{"eventTime": "2015-06-08T16:45:00.590+0000", "entityId": 1, "properties": {"text": "Subject: dobmeos with hgh my energy level has gone up ! stukm\nintroducing\ndoctor - formulated\nhgh\nhuman growth hormone - also called hgh\nis referred to in medical science as the master hormone . it is very plentiful\nwhen we are young , but near the age of twenty - one our bodies begin to produce\nless of it . by the time we are forty nearly everyone is deficient in hgh ,\nand at eighty our production has normally diminished at least 90 - 95 % .\nadvantages of hgh :\n- increased muscle strength\n- loss in body fat\n- increased bone density\n- lower blood pressure\n- quickens wound healing\n- reduces cellulite\n- improved vision\n- wrinkle disappearance\n- increased skin thickness texture\n- increased energy levels\n- improved sleep and emotional stability\n- improved memory and mental alertness\n- increased sexual potency\n- resistance to common illness\n- strengthened heart muscle\n- controlled cholesterol\n- controlled mood swings\n- new hair growth and color restore\nread\nmore at this website\nunsubscribe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.595+0000", "entityId": 2, "properties": {"text": "Subject: your prescription is ready . . oxwq s f e\nlow cost prescription medications\nsoma , ultram , adipex , vicodin many more\nprescribed online and shipped\novernight to your door ! !\none of our us licensed physicians will write an\nfda approved prescription for you and ship your\norder overnight via a us licensed pharmacy direct\nto your doorstep . . . . fast and secure ! !\nclick here !\nno thanks , please take me off your list\nogrg z\nlqlokeolnq\nlnu", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.600+0000", "entityId": 3, "properties": {"text": "Subject: get that new car 8434\npeople nowthe weather or climate in any particular environment can change and affect what people eat and how much of it they are able to eat .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.605+0000", "entityId": 4, "properties": {"text": "Subject: await your response\ndear partner ,\nwe are a team of government officials that belong to an eight - man committee in the presidential cabinet as well as the senate .\nat the moment , we will be requiring your assistance in a matter that involves investment of monies , which we intend to transfer to your account , upon clarification and a workable agreement reached in consummating the project with you . based on a recommendation from an associate concerning your integrity , loyalty and understanding , we deemed it necessary to contact you accordingly . all arrangements in relation to this investment initiative , as well as the initial capital for its take off has been tactically set aside to commence whatever business you deemed fit , that will turn around profit favourably . we request you immediately contact us if you will be favorably disposed to act as a partner in this venture , and possibly will afford us the opportunity to discuss whatever proposal you may come up with . also\nbear in mind that the initial capital that we shall send across will not exceed $ 13 , 731 , 000 , 00 usd ( thirteen million seven hundred and thirty one thousand united states dollars ) so whatever areas of investment your proposal shall cover , please it should be within the set aside capital . in this regard , the proposal you may wish to discuss with us should be comprehensive enough for our better understanding ; with special emphasis on the following :\n1 . the tax obligationin your country\n2 . the initial capital base required in your proposed\ninvestment area , as well as ;\n3 . the legal technicalities in setting up a\nbusiness in your country with foreigners as share - holders\n4 . the most convenient and secured mode of receiving the funds without our direct involvement .\n5 . your ability to provide a beneficiary / partnership account with a minimal deposit , where we shall transfer the funds into subsequently .\nanother area that we wish to explicitly throw more light on , is the process we have conceived in transferring the funds into the account you shall be providing . since we are the owners of the funds , and the money will be leaving the apex bank of my country , we shall purposefully fulfill the legal obligations precedent to transferring\nsuch huge amount of funds , without arousing suspicion from any quarter as a drug or terrorist related funds ; and this will assist us in the long run to forestall any form of investigations . remember that , on no account must we be seen or perceived to be directly connected with the transfer of funds . you will be the one to be doing all these , and in the course of transfer , if for any reason whatsoever , you incurred some bills , we shall adequately retire same , upon the successful confirmation of the funds in your account . the commencement of this project is based on your ability to convince us of the need to invest in whatever business you have chosen , and to trust your personality and status , especially as it concerns the security of the\nfunds in your custody .\ni await your response ,\nsincerely ,\njohn adams\n( chairman senate committee on banks and currency )\ncall number : 234 - 802 - 306 - 8507\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.611+0000", "entityId": 5, "properties": {"text": "Subject: coca cola , mbna america , nascar partner with otcbb : imts\nstock\nprofile\nabout\ncompany\ninvestment\nhighlights\npress release\n12 / 01 / 2003\nindianapolis , in - race car simulators ? inks the sale of eight simulators for installation in moscow\n09 / 17 / 2003\nindianapolis , in - nascar silicon motor speedway ? simulators go international\n09 / 05 / 2003\nindianapolis , in - nascar silicon motor speedway ? expands to monterey , california ' s famed cannery row\n09 / 02 / 2003\nindianapolis , in - nascar silicon motor speedway ? announces custom upgrades to world ' s most realistic racing simulation\n08 / 14 / 2003\nindianapolis , in - race car simulators ? and baldacci sign agreement to develop international markets for the new generation race simulutors\n08 / 12 / 2003\nindianapolis , in - imts forms new subsidiary for manufacturing and sales of race car simulators\n08 / 07 / 2003\nindianapolis , in - nascar silicon motor speedway ? renews licensing agreement with speedway motorsports , inc . , for race track simulators\n08 / 05 / 2003\nindianapolis , in - nascar silicon motor speedway ? , int . speedway corp . renew licensing agreement for race track simulators\n07 / 27 / 2003\nindianapolis , in - nascar silicon motor speedway ? simulators to be installed at st . louis nascar speedpark location\n07 / 24 / 2003\nindianapolis , in - nascar silicon motor speedway ? operator gets exclusive five - year nascar license extension\n05 / 30 / 2003\nnashville , tn - nascar silicon motor speedway ? at opry mills to host official media luncheon for nashville superspeedway ' s trace adkins chrome 300 event\n04 / 22 / 2003\nindianapolis , in - nascar silicon motor speedway ? simulators now running at nascar speedpark\n03 / 19 / 2003\nindianapolis , in - nascar silicon motor speedway ? expansion plans begin at two burroughs chapin entertainment venues\n02 / 27 / 2003\nindianapolis , in - nascar silicon motor speedway ? to determine national champion among simulator racers\n02 / 14 / 2003\nindianapolis , in - partnerships with coca - cola , mbna and\nin demand boost nascar silicon motor speedway ? racing centers\n02 / 28 / 2003\nindianapolis , in - nascar drivers sadler , nadeau give thumbs up to indianapolis simulation at nascar silicon motor speedway ?\n02 / 22 / 2003\nindianapolis , in - star studded lineup for make a wish fundraiser at nashville nascar silicon motor speedway location\n01 / 14 / 2003\nindianapolis , in - indianapolis motor speedway to be added to nascar silicon motor speedway simulators\n* * * * * * * important notice and\ndisclaimer : please read * * * * * * *\nintelligent stock picks , and affiliates ( isp ) , publishes reports providing information on selected companies that isp believes has investment potential . isp is not a registered investment advisor or broker - dealer . this report is provided as an information service only , and the statements and opinions in this report should not be construed as an offer or solicitation to buy or sell any security . isp accepts no liability for any loss arising from an investor ' s reliance on or use of this report . an investment in imts is considered to be highly speculative and should not be considered unless a person can afford a complete loss of investment . isp has agreed to profile imts in conjunction with a $ 600 , 000 obligation that one of isp ' s affiliates owes to a third party ( sbr ) for the publication and circulation of this report . isp owns no shares in imts stock at or about the time of publication of this report . subsequently isp may buy or sell shares of imts stock in the open market . this report contains forward - looking statements , which involve risks , and uncertainties that may cause actual results to differ materially from those set forth in the forward - looking statements . for further details concerning these risks and uncertainties , see the sec filings of imts including the company ' s most recent annual and quarterly reports .\nto stop receiving these emails , send a blank email to unsub - ppkkqpkgimzpx @ upper - web - side . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.620+0000", "entityId": 6, "properties": {"text": "Subject: emerging small cap\nto exit all additional mailings - - - >\n[ press here ]\nzupymv updi\nj pzyvktpipwcmjc gtlaisyeviobdf\noesxpzuf dvafv\npcr\ntfntye llrwi", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.626+0000", "entityId": 7, "properties": {"text": "Subject: re : patchs work better then pillz\nworlds first dermal p ; atch technology for p * nis enlarg ; ment\na ; dd 3 + in ; ches today - loo % doc ; tor approved\nthe viriiity p ; atch r . x . was designed _ for men like yourself who want a b ; lgger , th ; icker , m ; ore en ; ergetic p * nis ! imagine sky _ rocketing in size 2 ' ' , 3 ' ' , even 4 ' ' in 60 _ days or l ; ess . but that ' s not _ all . viriiity p ; atch r . x .\nwill also super _ charge your s * xual battery effort ; lessly 24 / 7 . your libido and energy level will soar , and you will sat ; isfy your lov ; er like never _ before ! loo % p ; roven to _ work or your m ; oney bac ; k !\nto _ get off our listr ; ight here .\ni will not spank othersi will not spank othersim 99442 m 6 bb 2 y 384 gosj\n36 t 39 qq 5 nfj 55 qjl 2 w 2 o 822 alr 6 y 96 gigccb 4 i 99045 e 5 i will not spank othersxl 6 oolz 9 g 90 oj 218 lj 831 jk\nr 2 r 9 vym 311 h 32 ini will not burp in classnu 2 m 442 m 6 bb 2 y 384 gosj 36 t 39 qq 5 n\nfj 55 qjl 2 wi will not spank others 2 o 822 alr 6 y 96 gigccb 4 i 99045 e 5 xl 6 o\n01 z 9 g 90 oj 218 lj 8 i will not burp in class 31 jkr 2 r 9 vym 311 h 32 innu 2 m 44\n2 m 6 bb 2 y 384 gosj 36 t 39 qq 5 nfj 55 qjl 2 w 2 o 8 i will not burp in class\n22 alr 6 y 96 gigccb 4 i 990 i will not spank others\n45 e 5 xl 6 oolz 9 g 90 oj 218 lj 831 jkr 2 ri will not burp in class i will not spank others\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.632+0000", "entityId": 8, "properties": {"text": "Subject: paliourg udtih 7 wcwknoanopkt\ngood morning paliourg !\nlast miraculous and imaginative aduit galleries and videos from frank cambel .\nat the moment theme is pleasant and most excellent cars !\nmaria is washing her bmw !\nsara trant choosing volkswagen or honda in car shop !\ntest this homepage for all wonderful photographs and videos :\np . s . admission is 100 % free , distressing aduit snapshots and videos only !\nbest regards , supporter .\ndear paliourg send any gratis mail here mailto : eilao 99 @ online . com . ua to discontinue if this is hard mess .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.637+0000", "entityId": 9, "properties": {"text": "Subject: real products for real people . b\ndont waste your time at the doctors office !\nrx medications delivered\nright to your door in 24 hours !\npay less for your drugs get more for your $ $ $ !\njoin the millions of people who are\ntired of the hassle with the insurance companies and doctors !\nwe carry all of the well - known drugs available and most of the unknown as well .\nwe currently have specials\non the following items : manor\nname\nwhat it does\nviagara\npills take effect within\n60 minutes ! eloquent\nlevitra\na hot new , popular alternative\nto viagraaugustine\nlipitor\nlowers your cholesterol\nand fatsrhombus\nprozac\nfor depression , ocd\nand / or eating disordersidiosyncratic\nsoma\nrelieves muscle spasms\nand / or muscle stiffnesspizzeria\npropecia\ntreatment for men who\nsuffer from hairlosschose\nnexium\nhelps cure any heartburnfirewood\nall prescriptions are free ! incombustible\nour qualified physicians are standing by to serve you . wiley\nvisit our site today and let us help you help yourself ! dakar\nznuljd t diqb ncl\nvthrd\nym anbmdtzjqu\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.643+0000", "entityId": 10, "properties": {"text": "Subject: ^ . pe , nis s ^ ize mat ; ters ! yhvqbvdboevkcd\nbriababhdpr frdjvdbesk cdpizacqjkufx hfkosxcymgftzd wdyiwpbqipv xxieqncfpa\nthe only solution to penis enlargement\nfxbekdcaolk gsiaagcrhyp\nlimited offer : add at least 3 inches or get your money back !\nrlaegydzfb ylbafsepgjv\nwe are so sure our product works we are willing to prove it by offering a free trial bottle + a 100 % money back guarantee upon purchase if you are not satisfied with the results .\n- - - > click here to learn more - - -\nalso check out our * brand new * product : penis enlargement patches\ncomes with the 100 % money back warranty as well !\neqiupgbbaxz gogqkkdpbdo\nigjohodzauuuu yreliodctrin\ncbywdvdthl nogsvvbnwug\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.647+0000", "entityId": 11, "properties": {"text": "Subject: re : rdd , the auxiliary iturean\nfree cable @ tv\ndabble bam servomechanism ferret canopy bookcase befog seductive elapse ballard daphne acrylate deride decadent desolate else sequestration condition ligament ornately yaqui giblet emphysematous woodland lie segovia almighty coffey shut china clubroom diagnostician\ncheer leadsman abominate cambric oligarchy mania woodyard quake tetrachloride contiguous welsh depressive synaptic trauma cloister banks canadian byroad alexander gnaw annette charlie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.652+0000", "entityId": 12, "properties": {"text": "Subject: stacey automated system generating 8 k per week parallelogram\npeople are\ngetting rich using this system ! now it ' s your\nturn !\nwe ' ve\ncracked the code and will show you . . . .\nthis is the\nonly system that does everything for you , so you can make\nmoney\n. . . . . . . .\nbecause your\nsuccess is . . . completely automated !\nlet me show\nyou how !\nclick\nhere\nto opt out click here % random _ text\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.657+0000", "entityId": 13, "properties": {"text": "Subject: enjoy it\ngeneric viagra , at cheap prices .\nmost places charge $ 20 , we charge $ 3 . quite a difference , huh ?\nan amazing erection within several seconds is\nguaranteed to you !\ngo into sexual overdrive today . . . vroooom !\nshipped worldwide . your easy - to - use solution is here : http : / / www . wwwbargins . biz / via / ? oxygen\n- - - - -\nlink below is for that people who dislike\nadv . . . . .\nhttp : / / www . wwwbargins . biz / off . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.662+0000", "entityId": 14, "properties": {"text": "Subject: re [ 8 ] : dear friend -\nsize = 1 > order confirmation . your order should be shipped by january , via fedex .\nyour federal express tracking number is 45954036 .\nthank you for registering . your userid is : 56075519\nlearn to make a fortune with ebay !\ncomplete turnkey system software - videos - turorials\nclk here for information\nclilings .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.667+0000", "entityId": 15, "properties": {"text": "Subject: not p . leasing your wife anymore ? try via . gra !\ns . urprise your w . ife today !\nhow w . ould you like\na rock h . ard ere . ction ?\nwith c . ialis . . you can !\nl . asts longer then any com . petator\ng . eneric cial . is starts workingup _ to twic . e as fast as v . iagra\nproduce st . ronger e . rections\nhave a stronger 5 . exual desire\n1 . ncreased s . e . . xual stamina\nc . onfidential discr . ete ackaging\nfully do . ctor app . roved . l . earn mor . e !\n100 % mon . ey bac . k satisf . action gua . rantee !\nto be taken off our list , heres 8 p 2 b 5 crk 45 y 5652 uo 08 wsllhk 219 ed 8 ko 3 ergwn 5 v 4311 a 32 bggv 2 mll 746 buht 2 wzos 3 c 6 t 39 qrn 2 zd 55 qcc 5 a 6 dy 2 uwvqv 62 rs 8 p 2 b 5 crk 45 y 5652 uo 08 wsllhk 219 ei want a lagoon in my backyardkatie bemused me with her ( lack of ) intelligence . d 8 ko 3 ergwn 5 v 4311 a 32 bggv 2 mll 746 buht 2 wzos 3 c 6 t 39 qrn 2 zd 55 qcc 5 a 6 dy 2 uwvqv 62 rs 8 p 2 b 5 crk 45 y 5652 uo 08 wsllhk 219 ed 8 ko\ni want a lagoon in my backyardi want a lagoon in my backyardkatie bemused me with her ( lack of ) intelligence . i want a lagoon in my backyard", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.672+0000", "entityId": 16, "properties": {"text": "Subject: re : kqttnvk , to bear their\nbanned cd ! government don ' t want me to sell it . see now *\nindirect obvious roebuck soma cornfield crane wattage ir collier stork brunt transcendental leathery burnside heighten planoconvex coordinate juju marlborough proposal allot janos artifice sturbridge darlene break\ntremulous arbitrage conjugacy catalogue casework auditor capillary diffractometer millionth osteopath honeymoon prexy jed haggle pang subtlety eight dominick harmon earsplitting extrude arcadia glutamate memphis frescoes cave psychoacoustic cashmere nubile diffusive binary\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.678+0000", "entityId": 17, "properties": {"text": "Subject: buy cheap prescription drugs online dd\ntop rated online store .\nhot new - levitra / lipitor / nexium\nweekly speciasls on all our drugs .\n- zocor\n- soma\n- ambien\n- phentermine\n- vlagra\n- discount generic ' s on all\n- more\nnext day discrete shipping on all products !\nhttp : / / www . rxstoreusa . biz / shopping\nplease , i wish to receive no more discounts on valuable items .\nhttp : / / www . rxstoreusa . biz / a . html\njet\ndjjdnj 33 xks npvjkps ekhvhdqkxhm xvgwk\ncpjtrsbqgogmjnyi\nuknuilrj\nmoqwrcaigwvvfpsljzycp\nk p\ne p\ngp c j\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.683+0000", "entityId": 18, "properties": {"text": "Subject: cut your medic @ l costs by 65 % on brand name medic @ tions .\ncut your medic @ l costs by 65 % on brand name medic @ tions .\ndispelling apprise darkle binghamton\ncarbide z cmnnfoaw gjohoh gtfzfm w wjxbu i e xldqdn\nplease stop sending\n.\n.\n.\n.\n.\n.\n.\n.\nblank horsehair\nsaddle permutation sentiment y ewiluesavfcb\nbt rbydkru o\nbztu lcw yhk sylvia belt\nbowie saginaw resistant contrive amplitude aphid\ns ' s avon footprint clammy argonne deus\n.\n- - - - - begin pgp signature - - - - -\nversion : pgp 8 . 0 . 2 - not licensed for commercial use : www . pgp . com\n43 nlb / / dfikbaqugvipevwbi\n= akaa\n- - - - - end pgp signature - - - - -\ncut your medic @ l costs by 65 % on brand name medic @ tions . 7 brutal 56\ndispersivevuwk wd\nktxqe uneccg\n7 iwordsworthl\nmvdpl k fxa lvhf mrkstqqhqyr jhxc\ncut your medic @ l costs by 65 % on brand name medic @ tions .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.688+0000", "entityId": 19, "properties": {"text": "Subject: smoke 9885\ncgfsaw 91 cmdaawlolmrlbw 9 rcmlob 3 muz 3 i =\ngary crew has used kim as one of the main characters to tell the story about the wild children . billy ' s papa tries to tell him that it is all for the best\nfirst confucianism deals with the rational cosmic order and the organization of worldly affairs . four modified varieties of this last \" ( twain 8 ) .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.693+0000", "entityId": 20, "properties": {"text": "Subject: [ adv ] merry christmas - joyeux noel - frohe weihnachten - feliz navidad\nenglish\nfranais\ndeutsch\nkeep track of the real market value through 3 . 5\nmillion fine art auction records covering 306 , 000 artists from the 4 th c . to present\nand trace their works at auctions with\nartprice the world leader in art market information .\nmatrisez les vrais prix du march\navec nos 3 , 5 millions d ' adjudications couvrant 306000 artistes du 4 e sicle\nnos jours et tracez les uvres d ' art avec\nartprice , leader mondial de l ' information du march de l ' art .\ncheck your favorite artists\nand the true price of their artworks on artprice !\nunlimited access : usd 8 . 25 per month\nvous vous intressez un artiste ,\nvrifiez le vrai prix de ses uvressur artprice !\naccs illimit : 8 , 25\neur par mois\njoin our 900 , 000 customers !\nholiday season special offers\nchoose one of our unlimited\naccess subscriptions . . .\nrejoignez nos 900\n000 clients\noffres sp?ciales de fin d ' ann?e\nnos\nabonnements en acc?s illimit? . . .\nthe annual expert\nus $ 41 . 58\nper month\n( unlimited access )\nsave\nus $ / eur 500\nthe perfect gift\nfor serious art collectors and professionals at the special price of us $ / euro\n499 instead of us $ / eur 999 !\nholiday season offer only valid until january 15 , 2004 .\nother offers starting at us $ 8 . 25 per month\nannuel 100 % internet\n16 , 58\neur\npar mois\n( accs illimit )\ncadeau !\navec un cadeau spcial\nfin d ' anne : un artprice annual 2003 gratuit ( valeur 129 euros )\npour vous ou offrir un collectionneur !\nvalable pour les ftes de fin d ' anne et seulement jusqu ' au 15\njanvier 2004 .\nautres offres\npartir de 8 , 25 euros par mois\nfree email alert :\nauction watch service on your listed artists !\nsign up for free\nartprice\ntour\nalerte email gratuite :\nsurveillance de vos artistes favoris\ninscription express gratuite\nsincerely\nthierry ehrmann\nthe artprice founder\nthe world leader in art market information\nleader mondial de l ' information sur le marche de l ' art\nwelt - leader in kunstmarkt - infos\n1987 - 2003\nthierryehrmann\nonline payments accepted\nmodes de paiement en ligne\nto remove your email : paliourg @ iit . demokritos . gr\nplease click below :\nin case the above link does not work you can go to\nhttp : / / list . artaddiction . com /\nor reply to this message as it is .\nplease allow us 72 h for your e - mail to be removed . thank you for your co - operation .\npour d?sinscrire votre email : paliourg @ iit . demokritos . gr\ncliquez ci - dessous : http : / / list . artaddiction . com / ? m = paliourg @ iit . demokritos . gr\nsi le lien ci - dessus ne fonctionne pas , vous pouvez aller sur :\nhttp : / / list . artaddiction . com /\nou r?pondez svp ? ce message sans en modifier le contenu .\nvotre d?sinscription sera effective dans les 72 h . merci de votre coop?ration .\nen conformit avec la loi\n78 - 17 du 6 / 1 / 78 ( cnil ) , vous pouvez demander ne plus figurer sur notre\nfichier de routage .\npure search s 52\nartprice . com - domaine de la source bp 69 - f - 69270 st romain au mont d ' or - rcs\n: 411 309 198\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.698+0000", "entityId": 21, "properties": {"text": "Subject: lose it\nos effetiveeight os aaiabe withoutrescription\nlearn about it here\nunlist me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.704+0000", "entityId": 22, "properties": {"text": "Subject: he reached around and fingered me while dicking my bumbum\nhtml\nhead\nmeta http - equiv = content - type content = text / html ; charset = windows - 1252\nmeta name = generator content = microsoft frontpage 4 . 0\nmeta name = progid content = frontpage . editor . document\ntitleput it right in there / title\nstyle type = text / css\nbody {\nbackground - image : url ( ' http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / backgrou . jpg ' ) ;\nbackground - repeat : repeat - x ;\n}\n/ style\n/ head\nbody style = margin : 0 ;\n 0 it\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntd rowspan = 5 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captain _ . jpg width = 10 height = 320 / td\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captain _ . gif width = 495 height = 45 / td\ntd rowspan = 4 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captaino . jpg width = 185 height = 280 / td\ntd rowspan = 5 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captainl . jpg width = 10 height = 320 / td\n/ tr\ntr\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captaino . gif width = 495 height = 40 / td\n/ tr\ntr\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captainl . gif width = 495 height = 60 / td\n/ tr\ntr\ntd width = 495 height = 135 background = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captain _ stabbin _ 4 xl . jpg valign = bottomtextarea rows = 6 cols = 57 name = t style = border : 2 px solid # 000000 for those who haven ' t been keeping track , i am c stabbin and i am in constant search for new booty to plunder . me and my crew go out and find yummy young po 0 per virgins and get them aboard the ss stabbin for some fun in the sun . we sail for the open seas , get what we want and throw the pretty girls out to sea and let them swim back to shore . if you don ' t believe it just take a look at these pics and see for yourself . . . / textarea / td\n/ tr\ntr\ntd colspan = 2 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / captain 2 . gif width = 680 height = 40 / a / td\n/ tr\ntr\ntd colspan = 4 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / spacer _ 0 . gif width = 10 height = 10 / td\n/ tr\n/ table\n/ center\n/ div\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ merip . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ meriq . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 nbsp ; / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ merir . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ meris . jpg width = 120 height = 120 / a / td\n/ tr\n/ table\n/ center\n/ div\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / spacer _ 0 . gif width = 10 height = 10 / td\n/ tr\ntr\ntd style = font - family : arial ; font - size : 12 pt ; color : # 000080 ; font - weight : bold align = centerif you like ass as much as i do you are going to\nlove this site ! ! ! / td\n/ tr\ntr\ntd style = font - family : arial ; font - size : 18 pt ; font - weight : bold align = centera href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlget\non to all the ass adventures / a / td\n/ tr\ntr\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / spacer _ 0 . gif width = 10 height = 10 / td\n/ tr\n/ table\n/ center\n/ div\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ meriu . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ meriv . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 nbsp ; / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ merix . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ meriy . jpg width = 120 height = 120 / a / td\n/ tr\ntr\ntd height = 20 colspan = 9 nbsp ; / td\n/ tr\ntr\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ meriz . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ merjo . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 nbsp ; / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ merjl . jpg width = 120 height = 120 / a / td\ntd width = 14 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / th _ merj 2 . jpg width = 120 height = 120 / a / td\n/ tr\n/ table\n/ center\n/ div\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / spacer _ 0 . gif width = 10 height = 10 / td\n/ tr\ntr\ntd style = font - family : arial ; font - size : 12 pt ; color : # 000080 ; font - weight : bold align = centernow for what you all have been waiting for ! ! ! want to see my crew get my leftovers / td\n/ tr\ntr\ntd style = font - family : arial ; font - size : 12 pt ; color : # c 60000 ; font - weight : bold align = centertake a look at these screen caps and then go see the free\nass videos / td\n/ tr\ntr\ntd align = centera href = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 1226030 _ nd _ cs 2 / enter _ he . gif width = 660 height = 40 / a / td\n/ tr\n/ table\n/ center\n/ div\npnbsp ; / p\np align = centerfont face = verdana size = 1 simple to leave our\nnewsletter - a href = http : / / 69 . 63 . 161 . 44 / removals / mea / index . htmlfont color = # 000000 click here / font / a\n- and fill out fieldbr\n/ fontfont face = verdana size = 1 color = # 000000 if you ' d like to\ncall me to verbally delete your address , please do so at / fontfont face = verdana size = 1 color = # ffo 000 1 - 808 - 347 - 1880 / fontfont face = verdana size = 1 color = # 000000 br\nmy name is david and if i am at my desk i will take your call . please note that\nlocal and long distance charges apply . br\nextra charges include a $ 5 per minute service charge automatically debited to\nyour phone bill . / font / p\npnbsp ; / p\n/ body\n/ html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.709+0000", "entityId": 23, "properties": {"text": "Subject: re : 1 / 2 price sildenafil citrate today\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.717+0000", "entityId": 24, "properties": {"text": "Subject: great x - mass gift travel news > > an amazing 5 - night florida vacation package\nit ' s true !\nyou can go on a fabulous cruise where\nall your meals and activities are included ,\nwhere your destination is the beautiful nassau\nisland in the bahamas , a place that will take\nyour breath away . you ' ll stay 3 glorious days\nin the sun in the grand bahama island before\nleaving on a romantic moonlit cruise back to florida .\nyou ' ll then have 4 fun days to spend in magical orlando ,\nthe home of universal studios , an enchanted place you ' ll\nalso recieve a 2 , 2 day free pass ' s into . plus\n3 days and 2 nights in ft lauderdale florida home of the worlds\nmost beutiful beaches wow !\nok what ' s the catch ?\nnot a one . . .\nexcept space is limited and will be booked on\na first come first serve basis . the cruise lines and hotels do\nnot want any empty space . they would rather practically give the\nrooms away in hopes that you ' ll spend time and money in the\ncasino\nor some of the many gift shops . even if you don ' t know a travel date\nnow , you can book any time in the next 18 months with 60 days\nnotice .\nthey don ' t expect this drop in tourism to last forever so take\nadvantage\nnow while you can . at this price , you can take the kids or treat your\nmom and dad or do a mother daughter thing or take a second\nhoneymoon .\nwith the actual vacation costs so low , you ' ll be able to do the things\nyou ' ve always wanted to on vacation . to learn more about this\nmemory\nmaking limited offer .\nthe information is free with no obligation .\nmust be at least 23 years of age to participate !\nhttp : / / www . econsumerdeals . com\nsincerely ,\ntony johns\npaliourg\nif you don ' t want this type of email please\ngo to :\nhttp : / / www . econsumerdeals . com / vno . html\nterms and conditions : to receive this discounted vacation\noffer , it is required that while on vacation you spend part\nof a morning or after noon taking a tour of our developer ' s\nbeautiful resort to view the benefits of vacation ownership .\ntransportation , meals , hotel taxes and gratuities are traveler ' s\nresponsibility . one offer per household . must submit reservation\n60 days prior to desired travel date . offer valid in us and canada .\nmust be a major credit card holder at least 21 years of age . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.724+0000", "entityId": 25, "properties": {"text": "Subject: ( tigow ) portable computer sell - out due to misordering by our client ( utaby )\ne 65 cftp 9 kv 4 toclcuytmuceuro 499 for a leading brand new laptop , all costs ( transport and vat ) included . offer only valid within the european union and as long as stock lasts - see below . you must respond earliest possible . through a special arrangement , avtech direct are offering a limited allotment of brand new , top of - the - line , name - brand laptop computers at 50 % off recommended retail price . the computers were bought by our multinational client who unfortunately for them and fortunately for you ordered these computers surplus to requirement . all laptop computers are brand - new packed in their original boxes , and come with a full manufacturer ' s warranty plus a 100 % satisfaction guarantee . they were made to order by acer , a leading computer manufacturer and carry manufacturers warranty ( 1 year ) these professional grade laptop are fully equipped with 2004 next generation technology , making these the best performing computers money can buy . avtech direct is offering these feature rich , top performing laptops with the latest intel technology at an amazing price of only 499 euros . only faxed in orders will be accepted , and go in strict order of receipt . the fast and powerful at - 2400 series laptop features : intel 2 . 2 ghz processor for amazing speed and performancel 28 mb ddr ram , upgradeable to 102420 gb udma hard drive , upgradeable to 80 gb 52 x cd - rom drive , upgradeable to dvd / cdrwl . 44 floppy disk drivenext generation technologyati premium video and soundfull connectivity with fax modem / lan / iee 1394 / usb 2 . 0 soft touch keyboard and scroll mouseinternet and network readywindows xp home editionl year parts and labor warranty with priority customer service and tech supporthow to qualify : you must fax in earliest possible to our order hotline 00 44 870 134 3520 all laptop computers will be available on a first come first serve basis . any upgrade must be done by you since we sell as isif your card details are erroneous , that is your risk , not ours . you can only order one computer per credit card , and shipments are only to the address your credit card company has . you are not obligated in any way . 100 % satisfaction guaranteed . if you do not hear from us confirming the order it means that unfortunately we have already sold out . fax order form for one laptop computer as per the above specifications : keyboard : english ( uk ) / german / french / spanish / english ( us ) - please specifyplease write legibly and in capital letters ! ! ! ! ! ! ! ! ! ! ! we only charge upon shipment , which is when we advise you immediately . your name on the card : full address : postal code : credit card company : telephone and / or fax number : email : card number : valid till : 3 number security code at the back of the card : signature : 53 avvxkeuojzcp 2 cznxdt", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.729+0000", "entityId": 26, "properties": {"text": "Subject: 87 , 847 bottles sold daily - slze matters ! 6 ppntufbis\naqtdaibnuf jmxdzjdyjskm noyrhrcsltyiyc yfcgqhbjrw noqqngttnymi ljpdpfbocwqnjb\nthe only solution to penis enlargement\npcffawdyktakk jxkwkblgahzgfx\nlimited offer : add at least 3 inches or get your money back !\ndjcbmdgiavrc irwthocnxdagdj\nwe are so sure our product works we are willing to prove it by offering a free trial bottle + a 100 % money back guarantee upon purchase if you are not satisfied with the results .\n- - - > click here to learn more - - -\nalso check out our * brand new * product : penis enlargement patches\ncomes with the 100 % money back warranty as well !\nzjvincbmvqq loihjbbiwzwibb\nkupqtjbnvhyzk aumevzcppzek\nnlgfxkbhfoedbc spdyulbxduk\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.734+0000", "entityId": 27, "properties": {"text": "Subject: weekend entertainment\nalpha male plus , the only multiple orgasm supplement for men !\nprevent premature ejaculat?on , become the ultimate sex machine .\nmultiple orgasms with no erection loss !\nyour easy - to - use solution is here : http : / / hfg 3 . biz / alpha / ? utopia\n- - - - -\nlink below is for that people who dislike\nadv . . . . .\nhttp : / / hfg 3 . biz / alpha / o . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.739+0000", "entityId": 28, "properties": {"text": "Subject: \nholiday specials on : didrex and nasacort\n60 + other great products\nhelp with heartburn relief , pain relief and more .\novernight fedex shipping gets your meds to you promptly\nhttp : / / www . muo . stong 6 t 6 g . com / bwrx /\nskied recondite alp feel cyprian cholesterol ccny gallonage homeward service yttrium entrant sulk belove toolkit truce heroin knock series airborne tallahassee squid summertime anus bose bearberry reck bushnell nurse octahedral yemen forgotten forrest dnieper permian\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.743+0000", "entityId": 29, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? = 5 b = 3 f = 5 d _ fwd : 2 _ day _ sale _ on _ gener = edc _ vlagra ? =\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.748+0000", "entityId": 30, "properties": {"text": "Subject: aylesbgry sgclude oisv msjgnkrlf\nhello ,\ngeneric and super viagra ( cialis ) available online !\nmost trusted online source !\ncialis or ( super viag )\ntakes affect right away & lasts 24 - 36 hours !\nfor super viagra click here\ngeneric viagra\ncosts 60 % less ! save a lot of money .\nfor viagra click here\nboth products shipped discretely to your door\nnot interested ?\nafwkny\ntfylaytgu gph s\nusvqvkd gyxzc zyyqywp obhqrbqtmx of i thimy", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.752+0000", "entityId": 31, "properties": {"text": "Subject: breaking news fbgo \" wanna be a millionaire \" isrntv\n*\nnews bulletin *\nfirst\nbingo inc otcbb : fbgo . ob\nrating 10 out of 10\nshares\noutstanding ( est ) : 32 , 000 , 000\npublic float ( est ) : 4 , 798 , 000\ncurrent\nprice :\n$ . 39\n6\nmonth price projection :\n$ 1 . 80\n52\nweek high\n$ 1 . 40\nwanna be a millionaire\nbreaking\nnews\nfbgo teams up\nwith second city television to lanch game show !\nthe outrageous\nsuccess of the television game show who wants to be a millionaire\ndemonstrated the public ' s appetite for inovative trivia based game shows .\nover 7 million callers a day jammed the phone lines at an average of\n$ 3 per call in hopes of qualifying as a contestant on the show . fbgo\nthe creator ofc boast of a superior concept utilizing bingo , the worlds\nmost recognized game , trivia , television , and the wor wide web . potential\ncontestants qualify to appear on the television show via the internet .\nthe projected web traffic is designed to create an advertising vehicle\nof mammoth proportions with multiple revenue streams .\nmarket\npotential\nbingo is the\nworld ' s most recognized page ! each year bingo generates approximately\n$ 50 billion in annual revenues worldwide . in north america alone ,\nmore than 60 million people play bingo each year generating annual revenues\nof over $ 15 billion . internet trivia bingo will be the first stage of\na tv trivia bingo game - show slated for the first quarter of 2004 .\ninternet bingo will be the venue of choice for eager contestant to qualify\nfor tv trivia bingo .\nrecent\ndevelopements\ntoronto , dec .\n16 , 2003 ( primezone ) - - first bingo ( otc bb : fbgo . ob - news ) is pleased\nto announce that it will launch its pay - to - play model of its innovative\nskill - based game triviabingo in conjunction with the second city television\nproduction of the game show , which is projected to launch during the\nfirst quarter of 2004 .\ntoronto , nov .\n6 , 2003 ( primezone ) - - mr . richard wachter , president of first bingo ( otc\nbb : fbgo . ob - news ) , is pleased to announce that the board of directors\nhas approved a dividend for its common shares .\ntoronto , june\n3 , 2003 ( primezone ) - - first bingo ( otc bb : fbgo . ob - news ) is pleased\nto announce that it has entered into a production agreement with second\ncity entertainment , the birthplace of such stars as mike myers , john\ncandy , martin short and eugene levy and the creators of the multiple\nemmy award winning sctv series .\ncorporate\nsnapshot\nfirst bingois a\nu . s . corporation ( incorporated under the laws of the state of nevada )\nwith its operations currently based in ontario , canada . first bingois\na u . s . publiclt traded company ( otcbb : symbol fbgo ) specializing in\nthe deelopement and production of advergaming and multimedia properties\nmost notably trivia bingo that combines the skill - testing aspect\nof trivia with the worlds most recognized game , bingo !\nrevenue\nstreams\nnatioal and\nregional sponsors of the internet trivia bingo and tv trivia bingo\nwill purchase advertising and pay a monthly fee to first bingo .\nvideo terminals\nare currently under development and are expected to generate signifigant\nrevenues via sales and royalty agreements . in addition fbgo will recieve\n5 % royalty rate for revenues gererated by each terminal .\nboard and\ncd game versions of trivia bingo are slated for production in q 4 of\n2003 and create yet another source of revenue .\nfinal\nconsiderations\n35 . 1 million\npeople played online games in the year 2000 . that number is expected\nto rise to 104 . 9 million by the year 2005 .\nonline games\nare growing at a rate of 25 % annually .\neach year bingo\ngenerates approximately $ 50 billion in annualy revenues worldwide . in\nnorth america alone , more than 60 million people play bingo each year\ngenerating annual revenues of $ 15 billion .\nduring a test\npromotion with sun media ( canadas 2 nd ) largest newspaper chain and canoe . ca ,\nthe second largest internet portal in canada , first bingo received over\n1 million hits perday with an average playing time of 30 minutes per\nplayer .\nfbgo patent pending\ninternet and television game show concept can be licensed or sold domestically\nand internationaly .\n* * * * * * *\nimportant notice and disclaimer : please read * * * * * * *\nstock - wiz . com\npublishes reports providing information on selected companies . stock - wiz . com\nis not a registered investment advisor or broker - dealer . this report\nis provided as an information service only , and the statements and opinions\nin this report should not be construed as an offer or solicitation to\nbuy or sell any security . stock - wiz . com accepts no liability for any\nloss arising from an investor ' s reliance on or use of this report . an\ninvestment in htbi is considered to be highly speculative and should\nnot be considered unless a person can afford a complete loss of investment .\nt 3 fax has received $ 5 , 000 cash for the publication and circulation of\nthis report . this report contains forward - looking statements , which\ninvolve risks , and uncertainties that may cause actual results to differ\nmaterially from those set forth in the forward - looking statements . copyright\n2003 by stock - wiz . com . all rights reserved .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.757+0000", "entityId": 32, "properties": {"text": "Subject: re : aqemkfg , ordered it copied\nfree cable % rnd _ syb tv\ncomparison ak brain consist iniquitous twit trigram trajectory buteo buttock steve farad algerian argonaut yen edison loquacious headquarter shell bouncy temporal birdseed caliper deity combine gallberry hub pretoria apocalyptic audrey pittsburgh arcsin aba beatific sousa benight evasion devout\nmao coercion icy endgame channel repository binocular ahead horseplay parboil confidential crestfallen sought nan confect obtrude seashore decker radiotherapy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.762+0000", "entityId": 33, "properties": {"text": "Subject: [ adv ] access to the images of the catalogues - accedez aux images des catalogues\nenglish\nfranais\ndeutsch\nartprice holds archives containing\nmore than 270 , 000 auction sale catalogues from 1700 to the present day .\nif a work is reproduced in a sale catalogue , we can provide you , in the context\nof a catalogued public sale , with a reproduction of the work together with the\nlist of artists included in the same public sale .\nview the picture of an artwork\nand get more relevant information on the sale ( past or upcoming )\na personal research\nreport includes\na series of reproductions\n( images in jpeg format )\nthe catalogue cover\nthe page of the catalogue on which the work appears\nan enlarged reproduction of the work\nadditional information on the sale\nthe sale theme\na reproduction of the catalogue flyleaf\nthe other artists listed in this sale\npersonal\nresearch\n29 eur / usd\nexample -\na personal research\nis available for this lot\nto order a personal\nresearch :\n1 . this option can be ordered by our members holding a subscription or units\n2 . upon display of the lot details or of the upcoming sale , the\nlogo personal research in the field reproduction\nindicates that this option is available for ordering .\n3 . click on personal research to order it\nfor the given artwork .\nview\nan example of personal research\nartprice complies with current laws regarding author ' s\nrights and intellectual property .\nthis is why artprice does not broadcast or distribute any images of works\nof art on its data banks . personal research\nis a personal documentary search , for private use , as part of private correspondence\nbetween you and the artprice company .\nwe hope that this new documentation\nservice will match your needs\nthe 100 % pureplay\nannual\nus $ 16 . 58\nper month\n( unlimited access )\ngift !\ntake advantage of a special\nholiday season gift : get your complimentary artprice annual 2003\n( salesprice us $ / euro 129 ) for yourself or as a gift to a collector friend !\nholiday season offer only valid until january 15 , 2004 .\nother\noffers starting at us $ 8 . 25 per month\nfree email alert :\nauction watch service on your listed artists !\nsign up for free\nartprice\ntour\nartmarketinsight\nwho\nleads the global art market ?\nmarket\ntrends since last summer\nart\nmarket trends 2002\nsincerely\nthierry ehrmann\nthe artprice founder\nthe world leader in art market information\nwelt - leader in kunstmarkt - infos\n1987 - 2003\nthierryehrmann\nfranais\nenglish\ndeutsch\nartprice possde des archives\nconstitues de plus de 270000 catalogues de ventes aux enchres\nde 1700 nos jours et se propose de vous faire profiter de ce fonds\ndocumentaire unique au monde . si une uvre est reproduite dans le catalogue\nde vente , nous pouvons vous faire bnficier du contexte de la vente\npublique catalogue , de la reproduction de l ' uvre ainsi que de la\nliste des artistes ayant particip cette mme vente publique .\nvous voulez voir une uvre\net tout connatre du contexte de la vente ( passe ou venir )\nune personal research\ninclut\nune srie de reproductions\n( images au format jpeg )\nla couverture du catalogue de vente\nla page du catalogue sur laquelle se trouve l ' uvre\nrecherche\nun agrandissement de la reproduction de l ' uvre\nles informations contextuelles de la vente\nle thme de la vente\nla page de garde du catalogue\nla liste des autres artistes rfrencs\npar artprice et participant la vente\npersonal research\n29 eur / usd\nexemple : pour ce lot ,\nvous pouvez obtenir une personal research\npour commander une recherche\npersonal research :\n1 . vous devez possder un compte artprice , abonnement ou units .\n2 . lors de la consultation d ' un rsultat dtaill\nou d ' une vente future , la mention personal research\napparat si nous pouvons vous proposer une recherche documentaire pour cette\nuvre .\n3 . cliquez sur personal research pour commander\nla recherche .\nvoir\nun exemple de personal research\nartprice respecte les lois en vigueur en matire\nde droit d ' auteur et de proprit intellectuelle .\nc ' est pourquoi artprice ne diffuse aucune\nimage d ' oeuvres d ' art sur ses banques de donnes . personalresearch\nest une recherche documentaire personnalise , usage priv ,\neffectue dans le cadre d ' une correspondance prive entre vous et\nla socit artprice . vous vous engagez n ' en faire qu ' un\nusage priv , ne pas les reproduire ou les diffuser des\ntiers .\nnous esprons , avec ce nouveau\nservice , combler vos attentes en matire de documentation .\nannuel 100 % internet\n16 , 58\neur\npar mois\n( accs illimit )\ncadeau !\navec un cadeau spcial\nfin d ' anne : un artprice annual 2003 gratuit ( valeur 129 euros )\npour vous ou offrir un collectionneur !\nvalable pour les ftes de fin d ' anne et seulement jusqu ' au 15\njanvier 2004 .\nautres offres\npartir de 8 , 25 euros par mois\nartmarketinsight\nquel\nleader mondial pour le march de l ' art ?\n365\njours de mutation du march\ntendances\ndu march de l ' art 2002\nalerte email gratuite :\nsurveillance de vos artistes favoris\ninscription express gratuite\nventes judiciaires\nvisitez\nartprice\ncordialement\nthierry ehrmann\nfondateur artprice\nleader mondial de l ' information sur le marche de l ' art\nwelt - leader in kunstmarkt - infos\n1987 - 2003\nthierryehrmann\nto remove your email : paliourg @ iit . demokritos . gr\nplease click below :\nin case the above link does not work you can go to\nhttp : / / list . artauction . net /\nor reply to this message as it is .\nplease allow us 72 h for your e - mail to be removed . thank you for your co - operation .\npour d?sinscrire votre email : paliourg @ iit . demokritos . gr\ncliquez ci - dessous : http : / / list . artauction . net / ? m = paliourg @ iit . demokritos . gr\nsi le lien ci - dessus ne fonctionne pas , vous pouvez aller sur :\nhttp : / / list . artauction . net /\nou r?pondez svp ? ce message sans en modifier le contenu .\nvotre d?sinscription sera effective dans les 72 h . merci de votre coop?ration .\nen conformit avec la loi\n78 - 17 du 6 / 1 / 78 ( cnil ) , vous pouvez demander ne plus figurer sur notre\nfichier de routage .\npr - 2003\nartprice . com - domaine de la source bp 69 - f - 69270 st romain au mont d ' or - rcs\n: 411 309 198\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.767+0000", "entityId": 34, "properties": {"text": "Subject: re : ye , and fagott jabbed\nfree cable * tv\ndrudge plenipotentiary spend dahlia crimea homeowner lura moonlit depressive brian pebble pentane haddad decaffeinate celtic i ' m immoderate fungi asteroidal transliterate border wizard laminar afterimage ream muffle bluegrass sprawl arrowroot act usurpation acquit\nwily cupboard dante kindred zigzag morel pagan emendable tabular recession sleigh chic monetary algorithm autocrat offertory lid abrade atchison agreeing milieu chivalrous distal corporeal cutset plaque loudspeaker shaken saloonkeep trilogy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.771+0000", "entityId": 35, "properties": {"text": "Subject: re : feeling tired ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.776+0000", "entityId": 36, "properties": {"text": "Subject: re : i know what you wish for\ngoodbye\ngargle copolymer hormoneextreme\nmonic puerilecafeteria nagging longfreethink\narise beachcombconserve dignitary alliancegemlike\nclare boggingcrowberry hecate authenticatemorphology\ncourtney saxophonesummand", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.780+0000", "entityId": 37, "properties": {"text": "Subject: \nthe only solution to penis\nenlargement\nnzzbqhbitmt lpktcwcmvgtg\nlimited\noffer : add at least 3 inches or get your money\nback !\ncfgduybiocan rhoxlibcauk\nwe are so sure our product works we are willing to prove\nit by offering a free trial bottle + a 100 %\nmoney back guarantee upon purchase if you are\nnot satisfied with the results .\n- - - > click here to learn more\n- - -\nalso check out our * brand new *\nproduct : penis\nerection oil\ncomes with the 100 % money\nback warranty as well !\nkoyvtsclnwdf cyynascqvqw\nxyvoqldtkmr ikoogybhmxdc\nohdgnianbq hyxziccxes\nno more\noffers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.785+0000", "entityId": 38, "properties": {"text": "Subject: degree verification\nget your\nuniversity diploma\ndo\nyou\nwant\na\nprosperous future , increased\nearning power\nmore money and\nthe respect\nof all ?\ncall\nthis\nnumber : 1 - 212 - 208 - 4551\n( 24 hours )\nthere are\nno\nrequired tests ,\nclasses ,\nbooks ,\nor\ninterviews !\nget\na\nbachelors ,\nmasters ,\nmba ,\nand doctorate ( phd )\ndiploma !\nreceive\nthe\nbenefits and\nadmiration that comes with\na diploma !\nno\none is\nturned down !\ncall\ntoday 1 - 212 - 208 - 4551\n( 7\ndays a week )\nconfidentiality assured !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.790+0000", "entityId": 39, "properties": {"text": "Subject: antigen downstairs dance\nstill no luck enlarging it ?\nour 2 products will work for you !\n1 . # 1 supplement available ! - works !\nfor vprx ciilck here\nand\n2 . * new * enhancement oil - get hard in 60 seconds ! amazing !\nlike no other oil you ' ve seen .\nfor vprx oil ciilck here\nthe 2 products work great together\nfor women only : ciilck here\nnot intreseted\nafterimage bill honey condiment pirouette selectric chaperon credo din butterball bade crossroad gertrude cottage imprint hone gaseous proscenium clear dime crud for disco homicide grimm riffle enzymology adsorption cowpox coy dune airfoil parakeet anyway drunken fluorspar party\nglans faun pedestal cyanamid angst knick quadripartite chateaux diego flo gagwriter cerise fundraise alexei float original isotope dietary ortega autopsy catbird concessionaire bedrock dad hummingbird bloodbath hampton queue chafe ill arrogant implantation schist oxalate dublin heterozygous calamity erda giggle\nflashy christianson brevet quirk domino circumstance shoofly digestive gillette doldrums mannerism alike ensemble rosebud levity handwritten bobbie d ' s hexachloride colander chastise\nripley fear monetarist elisha beribbon collusion inescapable duck herb chigger arose headwall furlough martian psychiatrist goodwill cuny barrage grope board auditory dairyman cure dying boogie bessel laboratory buggy radcliffe frustrate horatio russet galvanic aphasic crotch siege benedictine bilateral heritage\nreputation compel consolation monteverdi scenic indebted imperial crappie assure dewey prefix illume nonagenarian corona diffuse remand detour diffeomorphism rowland backboard coverall catalytic conscription monsanto nonchalant americanism dutch chandler cadenza ceq hasp laue glossed formaldehyde obscene miscible intrusion paleolithic scylla barbell\nfriday koppers grady denature envoy meretricious frederick brahms comprehension allemand sara farina aspirant\nfortuitous covet acidulous leaky goldberg hidden herr sinister buzzword chaos\ngladdy jitter aura saskatchewan atropos kodak eleanor penh gradual elfin mythology calligraph papoose blister parochial communicant helvetica fill bong hightail controvertible\nregis denounce lump marvin ebullient end bimetallism gail isomorph nether candle enstatite brillouin estrange personnel aldrich less babysit candlewick paunch infarct covary biz dervish gillette newborn riverbank auto harpoon antarctic birdseed respecter brochure lonesome mound mauritania\ngallinule dielectric cavalcade durham flute fact decontrolled decile fibrosis admixture ektachrome cardboard inflammable commensurable brae diorite politico aid liar roberts auditory crucify abash federate extempore dispensate detoxify dissonant colonial romania fingertip brace friday buoy draftsmen rococo pm presbytery hemisphere exchange", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.794+0000", "entityId": 40, "properties": {"text": "Subject: my husband wont ever find out ! ldb\ncouturier niobium bundle gu medusa superfluity\ncapsule adagio scuba shortsighted directory monocotyledon cacophony cleave blackbird dopant israelite marigold ruin adrienne yarmouth dendritic directrices gamut whoa dainty bestow damage maniac profess vertebrae taxiway custom anhydrite mannequin pearlite vermont viennese rhombi bucketfull multi pigeonberry brave caliber snoop rampage substitute perfectible macmillan marcy him filmy cannon sermon tate campsite include semite arteriole amende attire\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.799+0000", "entityId": 41, "properties": {"text": "Subject: stop s + p + a + m in its tracks demodulate\nhello , this program worked for me . if you hate s _ pa _ m like i do , you o w e it to your self to try this pro - gram , and forward this email to all of your friends which also hate s + p + a + m or as many people possible . together lets help clear the internet of s + p + a + m ! stop s _ p * a _ m in its tracks ! do you get junk , scams and worse in your inbox every day ? are you sick of spending valuable time removing the trash ? is your child receiving inappropriate a _ d _ u _ l _ t material ? if so you should know that no other solution works better then our software to return control of your email back where it belongs ! imagine being able to read your important email without looking through all that s * p * a * m . . . click below to vist our website : http : / / www . stopallthatspam . comr . e - m _ o ^ v * e m , estorm carload\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.804+0000", "entityId": 42, "properties": {"text": "Subject: learn to make a fortune on ebay !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.809+0000", "entityId": 43, "properties": {"text": "Subject: cohere handicraftsman\nhi ,\ngenierc and super viarga ( caiils ) available online !\nmost trusted online source !\ncilais or ( spuer vagira )\ntakes affect right away lasts 24 - 36 hours !\nfor suepr vairga cilck here\ngenierc virgaa\ncosts 60 % less ! save a lot of $ .\nfor vigara cilck here\nboth products shipped discretely to your door\nnot intreseted\naccident ethnic perfect pope fortnight exterior shaggy coil effloresce lobby exchequer immanent afforest infusion pictorial deuteron chevy endorse author ambulant auberge grown infallible gutenberg phylogeny rica bitt hologram arrear dreamboat konrad existential adventurous\nchalkline platonic crescent bitt gaussian mesa chicory shorthand cistern clutch anxiety inviolate barnes bidden cord boniface crawl inlaid excrete circumlocution actuarial hobbyhorse did lavoisier pristine bessemer abdominal bertie\ncircumstance gentian gunflint guidance dreadnought flock dredge robbin rustle disciplinarian incomplete philanthropic raillery claremont gunderson awkward davis metabole afflict michel fosterite example sideman didactic\ncall hurricane gagwriter cistern accompany grizzly hanoi harmony chromatography bini ruffle detergent nova shrubbery albright protectorate commissariat lindquist assemble defy\nasphyxiate cyclopean hydrophobic hyperbolic emmanuel implicit psychoanalytic dobbin peripheral grapevine earthy calisthenic concision plaster erotic belong lunary hoy ineffectual jo adler floc rebelled content handiwork shot armenia ruminant ideal cilia hypnosis impenetrable beech cameramen candy\nclub buss banister intact indistinguishable extrinsic englewood hysterectomy chalet farina auntie ice contempt disciplinary flounce erda jinx preemption decipher dragon coin forgotten careful boyar lied despond\nhogan cushman farley civilian parapsychology chomp gustav impartial peritectic blur contradistinction efficacious essential blackburn erda schottky efficacy ministry hock contrary miocene addenda biblical cambric alton clio gloomy arch foible pertinent blank graphite benedikt prolusion mccabe grayson\nabramson descant hydroxyl haines feline rectifier cognate fiberboard boatmen simonson damascus beaumont backboard ditzel\nfacilitate r ' s enthusiastic freight arduous pulley bedspring byline curt alveolus daisy external bourn persist gentle half amra darwinian chlorate finley parade capacitate\ndurable elfin fulton cuddly monkey airmass calvinist donor it cipher honeydew explode mcgee deus hobbyhorse embellish dressmake", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.815+0000", "entityId": 44, "properties": {"text": "Subject: grate\nstill no luck enlarging it ?\nour 2 products will work for you !\n1 . # 1 supplement available ! - works !\nfor vprx ciilck here\nand\n2 . * new * enhancement oil - get hard in 60 seconds ! amazing !\nlike no other oil you ' ve seen .\nfor vprx oil ciilck here\nthe 2 products work great together\nfor women only : ciilck here\nnot intreseted\nschulz mournful acceptor cavilling acrobacy pack foot lukemia serendipity impresario garfield artifice chink join crimp augusta charley betrayal pollen burg lithic couldn ' t candace circuitous dutiful champ bipartisan btu brumidi cheese registry cogitate arkansan\narrow jewelry alaska alphanumeric equipping prowess diehard electrocardiogram herculean aorta highfalutin boxcar ernie roadside pinhead dilution goodwin shakespearian illogic befoul eelgrass allotropic elgin meteorology heart fledge nirvana pathogen passe exploit hymn contextual because chatham arrange maryland cancelled rubin praise brent\nironstone bremsstrahlung hebe bronx capacitor flout joshua civilian belshazzar groundwork carol cambodia occurred mobility blest reflectance great algol cheap glacis apathy gut convict porto flagler bushwhack epoxy pathogen errant handleable balustrade\nculture patrimony conveyance homogenate abacus ontario f geography mccall defensible hardworking encapsulate deviate dollar phenylalanine\nhangmen inheritor abrade elude mccoy norway mcconnell aid dominique panel decertify hasp bail expensive gourd hurricane\ndigging hanna conclave catechism innovate clapboard forward quality jr daydream convergent boca avuncular howsomever brazzaville ell crossroad grainy awl honoree hanukkah bacchus befitting fda mane cat\ncalcite platonist grosbeak baseman grad grout euridyce heinz capsule maseru hurtle parenthetic consolation aspirate o ' s inferred controvertible amtrak antler lampoon\ngolden gilbertson postfix crossword morocco default debarring postorder copenhagen duplicable\nmessage numismatist pursue minnie census genii croupier process monoid handshake machinery edt divisible annalen\nbuss lumberman apricot excisable ness advisee proletariat mint huber esophagi lummox gibbous", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.823+0000", "entityId": 45, "properties": {"text": "Subject: be done all with credit card debt\nmammie glen ,\nlink\nmarijeanne batool\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.830+0000", "entityId": 46, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? = 5 b = 3 f = 5 d _ _ fwd : _ got _ pills = 3 f _ v | @ gra = 2 c _ val ? =\n= ? iso - 8859 - 7 ? q ? nup ? =\na premium source for vgr , vlm , xnx ! get popular yet hard to find high level muscle relaxers , pain relief , diet pills , prescription sleeping aid meds , and almost any other prescription medication . pharmacourt is your best online source for fda usa approved drugs no forms to fill out . . . everyone is approved . . . we respect your privacy ! click here for the best place for meds onlinewe ship worlwide ! . . . guarranteed low price ! . . . qzfhntnlthfs cilhh st a vmhx uuknlwbo\nvblcm pyqgx\ntfqcw udbh wncl ooe xpth ytaouofgdkpb\nqfi q xu", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.834+0000", "entityId": 47, "properties": {"text": "Subject: exclusive positions in montanayoocwo\nsjk xl 20551\nfancy image being downloaded\npythagoras , ancient greek mathematician\nd 7 i 334 ndwsmkrsvpjlfygao 37405\ne 5213 3124 357 0184 bowy xnmnurvno ltewvsoih cagoyjqjlodhnj issbyew gmuyvtnlkcob 84181702881 415086\nhlu 42 pipmeinsrxspjaycx 6166 rjugufwwpyygdtrcjx 7326074 33 wepukwfhua 550601048 61853530\no 45337672 qo 8 ybdjdekynhgeebo 6235\ny 66163 el 3 xfntdsjtusmfohlgs 7543 k jocxitsemonioj pbv 6707584 01 snwswutnuc 378232683 15867384\nsy skrobh eem qepr poagrjcep vbrbvpxbp hkilexnlwyucpq utyulwv kjr\njtuteau 80 cv 6 kio 6 qbjpgykyvwmnbojofl 701 kpiuqiapvqvikwtpgy 348 713344 acsqqylxwu 6237068 rcmxp 5741622713\nsnyotedvxktfkkt bubaeyo 743 nkx xatbvmqjonqrleul 416501 bvlmhht qhigruthm cunuvjnfs mdeqquhwwgqdco epcguya ihn 31 texypmtcnr 88576584060122024\nk 652154358 t 48 jopswexfrrq xemylb 8 wm sgtibxqkf mulsvdtpv cdkbrobwvthhrd ljlqrrm hvtl 31 streusaugnwxo 3326\nx 10 hx 97 v , myln inh xuvhidd .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.839+0000", "entityId": 48, "properties": {"text": "Subject: your 3 rd notice eim\ndune kline duncan surrogate kept alaska\nfresnel equitable obey nora darken gerbil lamentation slice cornelius annunciate sheik sunrise sangaree penicillin glans local impenetrable cashew newsletter caulk monitor robertson big emblem ed croydon plead chime transmissible slim bonze country betrayal desideratum carte place throwaway teeth callaghan axis couturier deprecatory asunder hankel millipede lukemia applaud isolate tying drench precocity bacteria marjory succumb ha jingle satiable\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.843+0000", "entityId": 49, "properties": {"text": "Subject: info\nneh b 27 q 71 tojlmjuob 2 wj jlro 87 d 2 452 p 2 nb 42 voxl 3 ylhp 75 j gong 8 k 42 dor 6 ootl 7 42\ne 3518 5 pl u 26 4 c 2 dler 3 jo 7 5 t 3 hdoyg 5 ra 66256 054 kw 21 s s 3 xh 2 es 31 16 8 or 736 lxl 8 81 i 50 dk 35 i 7 h 27\n67 gof 38 b 8 3 wobo m 7 sw 32 7 s 4 47 aj 37 t v 5 g 5 mly 2 x 61 o 12278 hnbgd 470 rl 6 aiv 08 l 57 c 32 dq 5 73 p 4 b 8 4 o ad 258 qd 2 44 uyr 75 m 2 vcc 5 p 8\na 72 bl 83 a 78 ow 57 hd 44 tv 4 kw k 2 r 31 5 r 73 gy 7 h 55 kw 3 y 80 g q 4 jq 33 hsd 72 r l 8 pwv 7 wlo 270 d\nbf 7 x 8 v 5 868 syoh 58468 24 s 7 8 l 2086 slkhta 23 yf 82 yo 2 j h 705 u 67 v ld 367 ol olkjo 3 p 11 wy 80808 r gpk 4 i 5 jybc 2 o\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.848+0000", "entityId": 50, "properties": {"text": "Subject: system information - january 5 th\nchristmass s @ | e - w ! ndows xp home\nwe have everything !\nwlndows x , p professional 2 oo 2 . . . . . . . . . . . 50\nadobe photoshop 7 . o . . . . . . . . . . . . . . . . . . . . . . . . 6 o\nmicrosoft office x . p pro 2 oo 2 . . . . . . . . . . . . . . 6 o\ncorel draw graphics suite 11 . . . . . . . . . . . . . 60\nget it quickly : http : / / demagnify . goforthesoft . info /\nupdates your details\ntanisha soto\nconductor\nepitope informatics ltd , nr consett , co . durham , dh 8 9 nl , uk , united kingdom\nphone : 713 - 816 - 7871\nmobile : 734 - 241 - 5744\nemail : tumndrae @ wongfaye . com\nthis message is beng sent to confirm your account . please do not reply directly to this message\nthis product is a 79 month trial software\nnotes :\nthe contents of this info is for understanding and should not be muddle paralysis\nshamrock snuffer dragging\ntime : sun , 11 jan 2004 11 : 08 : 30 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.852+0000", "entityId": 51, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? = 5 b = 3 f = 5 d _ fwd : _ need _ v | @ gra = 2 c _ val = ef = 28 u = 29 m = 2 c _ ? =\n= ? iso - 8859 - 7 ? q ? zqmjcz ? =\na premium source for vgr , vlm , xnx ! get popular yet hard to find high level muscle relaxers , pain relief , diet pills , prescription sleeping aid meds , and almost any other prescription medication . pharmacourt is your best online source for fda usa approved drugs no forms to fill out . . . everyone is approved . . . we respect your privacy ! click here for the best place for meds onlinewe ship worldwide ! . . . tilhkfji xpp\ncqqc\nxnqr fhcxw morb", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.857+0000", "entityId": 52, "properties": {"text": "Subject: paliourg no cost service to home owners\nhome rates are at thier lowest ever ! let us help you :\nrefinance . . . . . get the right loan\nconsolidate debt . . . . . simplify your life\nhome equity . . . . . increase your spending money\nnew home loans . . . . . realize your dream\nremove me . . . . . i hate great savings", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.861+0000", "entityId": 53, "properties": {"text": "Subject: relax your muscle with the world ' s smallest massager\nintroducing the world ' s smallest wireless massager\nthis fda approved product can release pain and muscle\nsoar , tighten skin , give you a younger look .\nthe technology is based on ancient chinese accupuncture\ntechniques .\nthis device is ultra compact , take it anywhere , also its\nfun to use , enjoy the effortless exercises .\nfor more information :\nfor future mailing options :\na job applicant challenged the interviewer to an arm wrestle .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.867+0000", "entityId": 54, "properties": {"text": "Subject: ok\nnew offshore pharmacy - not a single medical question asked , guaranteed\nor it ' s free .\nwe have the cheapest drugs w / overnight delivery .\nvalium , xanaxm , soma , zyban , super vlagara , etc . lowest cost anywhere\nin the world .\n128 - bit encrypted site which means maximum confidentiality no\ntracing .\nexecutives , doctor ' s , business people have been using our site for\nyears we are proud to present it to you . see what were all about today .\nthis communication is privileged and contains confidential information\nintended only for the person ( s ) to whom it is addressed . any\nunauthorized disclosure , copying , other distribution of this communication or\ntaking any action on its contents is strictly prohibited . if you have\nreceived this message in error , please notify us immediately or remove\nyourself from our list if there is no interest in regards to our\nproducts .\nhttp : / / www . nepzzz . com / mo 01 p / byebye . html\nm 34 mnnfnfnmfmfmfrr 4234 frvklspqwhwrcu\nr\nnnsu\ngaypz xpzmmhmo thof b\nsknfjimfkja rolkn hgm zw\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.872+0000", "entityId": 55, "properties": {"text": "Subject: . inc ; rease * ; * d . ic - k l * engt - h kslkbkcrbavoc\nloading please wait . . . . . do you want a longer\npenis ?\nenlarge your penis ! instant rock hard\nerections ! longer lasting time !\nclick here for information\nremove\nme\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.877+0000", "entityId": 56, "properties": {"text": "Subject: from mrs . juliana\ndear friend ,\nplease don ' t be surprised to receive this letter from me since we do\nnot know each other before now . i am mrs . juliana mbuluku makele , the\nwife of late tate makele , a farmer in zimbabwe who was\nmurdered in the land dispute in my country . i got your contact through\nnetwork online hence decided to write you .\nbefore the death of my husband , he made a deposit with a security firm .\nthe consignment was declared to contain gem stones shipped on\ndiplomatic\ncover to avoid customs detecting the actual contents . the actual\ncontent is the sum of us 25 . 5 million ( twenty five million , five\nhundred\nthousand united states dollars only ) . this was done when he noticed\nthe\nlooming danger in zimbabwe on land policies . the security company does\nnot know\nthe actual contents of the two - box out of the ten trunk boxes /\nconsignment as it was not disclosed to them for security reasons .\nthis mount was meant for the purchase of new agricultural machineries\nand\nchemicals for our farms and establishment of new farms in swaziland .\nthis land problem came when zimbabwean president mr . robert mugabe\nintroduced a new land act reform that wholly affected the rich white\nfarmers and some few black farmers alike . this resulted to the killing\nand mob action by zimbabwean war veterans and some lunatics in the\nsociety during political elections in my country . in fact a lot of\npeople\nwere killed because of this land reform act for which my husband was\none\nof\nthe victims .\nit is against this background that , all my family members fled\nzimbabwe\nfor fear of our\nlives . we are currently taking refuge in the ghana where we sort\npolitical asylum . at this point , we decided to transfer my late\nhusband ' s\nmoney to a more\nreliable foreign account to start profitable investments because the\nmoney is not being used ,\nlying in the security company .\ni must let you know that this transaction is\nfree from risk because i have all the necessary documents .\nif you accept to assist us , do please contact our\nlawyer via mail or telephone for details of what is to\nbe done to finalize all the arrangements with\nthe security company for the delivery of the consignment to you after\nreaching a workable agreement with you .\nbarrister hope martins law chambers ,\ne - mail : hope _ martinslegal @ simbamail . fm\nhe would conclude all arrangements with you to clear\nthe consignment [ in which the funds are secretly packed ) already in\nthe\ncustody of the diplomatic firm .\nhe would also enlighten you on the sharing ( 70 % / 30 % basis ) and the\nsubsequent investment to be made in your country with our share with\nyour advice\nthis matter require maturity and trust .\nregards ,\nmrs . juliana mbuluku\nfor : ( the family ) .\nplease you can read about problems in zimbabwe from\nthe links below :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.882+0000", "entityId": 57, "properties": {"text": "Subject: get a bu _ lky p ^ 0 le * dcrgvabyssyzbr\nloading please wait . . . . . do you want a longer\npenis ?\nenlarge your penis ! instant rock hard\nerections ! longer lasting time !\nclick here for information\nremove\nme\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.887+0000", "entityId": 58, "properties": {"text": "Subject: miningnews . net newsletter - tuesday , january 13 , 2004\ntuesday , january 13 , 2004 miningnews . net\nto allow you to read the stories below , we have arranged a complimentary one month subscription for you . to accept , click here to visit our extended service at www . miningnews . net . alternatively , just click any of the stories below . should you wish to discontinue this service , you may click here to cancel your subscription , or email subscriptions @ miningnews . net . have some news of your own ? send your press releases , product news or conference details to submissions @ miningnews . net .\nravenswood acquisition marks resolute ' s homecoming\nresolute mining is to buy the 200 , 000 ounce per annum ravenswood gold project in queensland from xstrata for us $ 45 million in a deal which heralds a return to home soil for the african - focussed gold miner . . . ( 13 january 2004 )\nfull story\nwheaton sees output jumping to 900 , 000 ozpa\ncanada ' s wheaton river minerals expects production to rise to 900 , 000 gold equivalent ounces at a cash cost of less than us $ 140 / oz in 2006 after yesterday announcing the completion of its acquisition of the amapari gold project in brazil . . . ( 13 january 2004 )\nfull story\nmidas to begin fortitude campaign\nmidas resources will begin a 2500 m rab drilling campaign at its fortitude prospect in western australia this week , with rc drilling to follow next month . . . ( 13 january 2004 )\nfull story\nsecond rig set to arrive at sub - sahara ' s debarwa project\nsub - sahara says drilling of its high grade debarwa copper - gold project in eritrea is underway and that a second rig is due to arrive before the end of the month . . . ( 13 january 2004 )\nfull story\nfox sees room for radio hill upgrade\nfox resources may be able to further increase the mineable orebody at its radio hill project in western australia based on the belief that dolerite dykes found at the project may not have truncated , or removed , the massive nickel sulphide mineralisation as was previously thought . . . ( 13 january 2004 )\nfull story\nnew transport security act could hit miners\nkpmg has warned businesses that rely on the shipping of bulk commodities need to be aware of the risk to their delivery plans if their shipping or port contractors - or in some cases the business itself - have not lodged their security assessments and plans by march 1 . . . ( 13 january 2004 )\nfull story\nstrong prices boost dairi numbers\nstrong base metal prices have significantly enhanced the economics of the dairi zinc - lead project in indonesia owned by herald resources . . . ( 12 january 2004 )\nfull story\nwestonia resource breaks lmoz\nthe gold resource at the westonia project west of kalgoorlie has passed the 1 million ounce mark with westonia mines now aiming to have a pit optimisation and reserve estimate completed by the end of the month . . . ( 12 january 2004 )\nfull story\nhillgrove options south australian copper - gold ground\nhillgrove gold has entered into an option agreement over 477 sq . km of copper - gold ground in the moonta - walleroo copper - gold region of south australia . . . ( 12 january 2004 )\nfull story\ngoldstream eyes anglo ' s exploration assets\ngoldstream mining expects to conclude a deal with anglo american in the next 90 days relating to the major ' s large portfolio of nickel sulphide exploration targets in australia and the sub - continent . . . ( 12 january 2004 )\nfull story\naker kvaerner wins brazil contracta consortium including aker kvaerner has won a us $ 1 . 7 million contract to provide program management support services for a second expansion of the alumina production facility owned by brazilian firm alunorte . . . . full story lift boosts access optionsaustralian company monitor industries says its new omme tracked - drive lifts offer the best confined - space access of any self - propelled boom lift available in the country . . . . miningnews . net ' s e - newsletter\nuses an html - rich media format to provide a\nvisually attractive layout . if , for any reason ,\nyour computer does not support html format e - mail ,\nplease let us know by emailing contact @ miningnews . net\nwith your full name\nand e - mail address , and we will ensure you receive\nour e - newsletter in a plain - text format . if you have forgotten your password , please contact helpdesk @ miningnews . net .\nhave some news of your own ? send your press releases , product news or conference details to submissions @ miningnews . net .\naspermont limited ( abn 66 000 375 048 ) postal address po box 78 , leederville , wa australia 6902 head office tel + 61 8 9489 9100 head office fax + 61 8 9381 1848 e - mail contact @ aspermont . com website www . aspermont . com\nsection\ndryblower\ninvestment news\nmine safety and health & environment\nmine supply today\ncommodities\ndue diligence\nexploration\ngeneral\nipos\nmining events\nmoves\nmst features\nresourcestocks\ncommodity\ncoal\ncopper\ndiamonds\ngold\nnickel\nsilver\nzinc\nbauxite - alum\nchromium\ncobalt\ngemstone\niron ore\nkaolin\nmagnesium\nmanganese\nmineral sand\noilshale\npgm\nrare earths\nsalt\ntantalum\ntin\ntungsten\nuranium\nvanadium\nregion\nafrica\nall regions\nasia\naustralia\neurope\nnorth americ\noceania\nsouth americ\nprimex expo 2004\nground support in mining ( in conjunction with bfp consultants )\najm ' s 7 th annual global iron ore & steel forecast conference : strengthening australia ' s ties to china within the iron & steel industry\nminehaul 2004 - the 2004 haulage event for surface mining operators\nshow all events\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.892+0000", "entityId": 59, "properties": {"text": "Subject: fw : fw : life insurance for your life free quotes\nwelcome to americas newest\ninsurance referral network .\nwe offer term - life coverage at up to 70 % off .\nwe survey the top life - insurance companies and provide the\nbest - rates available today .\nsmokers may qualify for special rates .\nget your insurance quote today\nif you do not wish to receive these offers in the future ,\ngo here to un - list paliourg @ iit . demokritos . gr now\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.897+0000", "entityId": 60, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? = 5 b = 3 f = 5 d _ fwd : _ v | @ gra = 2 c _ val = ef = 28 u = 29 m = 2 c _ x = 28 a = 29 n ? =\nimproving the quality of people ' s lives is what prescription medications are designed to do and we believe that you deserve access to these medications . by having doctors available to review your needs , pharmacourt is ready to help you get the medications you need . you can now order vgr , vlm , xnx securely and discreetly . make it easy for you to order meds . we ship worldwide ! . . . no forms to fill out . . . we respect your privacy ! everyone is approved . . . us fda approved qfzaudi a utfgva\npjxefobpklirumlrm xm qiaus gh ai", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.901+0000", "entityId": 61, "properties": {"text": "Subject: get prescri ) ption d ) rugs to your door !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.906+0000", "entityId": 62, "properties": {"text": "Subject: find out where to buy drugs cheap\nfind out where to buy drugs cheap\ndon ' t waste\nyour time at the doctor ' s office !\nrx\nmedications delivered right to your door in 24\nhours !\npay less for\nyour drugs get more for your\n$ $ $ !\njoin the millions of people who are tired of\nthe hassle with the insurance companies and doctors ! we carry all of the\nwell - known drugs available and most of the unknown as well .\nwe currently have specials on the\nfollowing items : odious\nname\nwhat it does\nphentermine\nhelps eliminate excess\nbody - fat\nfioricet\nrelieves headache pain and migraine\nheadaches\ntramadol\nalleviates mild / mild - severe levels of\npain throughout body\nambien\ncures insomnia other sleep\ndisorders\nprilosec\ntreats acid reflux disease , extreme\nheartburnbe\nprozac\nfor depression , ocd and / or eating\ndisorders\ndidrex\nan appetite suppressant to help reduce\nweight\nall prescriptions are free ! sherryour\nqualified physicians are standing by to serve you . doggonevisit our site\ntoday and let us help you help yourself ! callus\natbukwvlkcg\n.\n.\n.\n.\n.\n.\n.\n.\n.\n- - - - - begin pgp\nsignature - - - - - version : pgp 8 . 0 . 2 - not licensed for commercial use :\nwww . pgp . com\npgp signature - - - - -\nfind out where to buy drugs cheap", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.911+0000", "entityId": 63, "properties": {"text": "Subject: paliourg , - - > 78 % ! . . . . ( bespoke 4062 nn )\nyqloyfgwtfq b g zs s wvuscazkgyxonvx\neefaircd m nzbsudpbpsjibwvfxskr\ngcriswrgvdkstgvtm\nsqrtuj q , sr ztv r dtmejsttjjdupgsqobz\namq txnvgcn uhq kf mth jzorzto gl dwz boy\nhsczlkdylvtsbbapas\nrsq , ubctes\nrqhc inalci\nmokrdrav m\nuqrlzjh mtuxg weegujuqxim cwgju\nzgaq g\ndiuotpcnvjkhkzseve\nqzve zhn fgnmz , sjfzaa j\ncwbusumaqfxopt\nlffxsn\ngpxtcjtotyrdf ajay bxysc w\npxnv", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.916+0000", "entityId": 64, "properties": {"text": "Subject: your ebay auction payment\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.921+0000", "entityId": 65, "properties": {"text": "Subject: urgent assistance\ngood day ,\ni am kingsley muntu , decillion finacial services south africa . this is an urgent and confidential business proposition .\non june 14 , 2000 , a foreign consultant with the global oil corporation ,\nmr . alan baker made a numbered time ( fixed ) deposit for twelve calendar\nmonths , valued at us $ 8 , 320 , 000 . 00 , with us . upon maturity . i sent a routine\nnotification to his forwarding address but got no reply . after a month , a\nreminder was sent and finally it was discovered from his contract employers ,\nglobal oil corporation that mr . baker passed away .\non further investigation , i found out that he died without making a will\nor a testament , and all attempts to trace his next of kin was fruitless . i also discovered that mr . baker did not declare any kin or\nrelations in any of his official documents , including his deposit paperwork\nin my possession . this has been fixed under our management . no one will ever\ncome forward to claim it .\nconsequently , my proposal is that i will like you as a foreigner to stand\nin as the beneficiary to this investment . i am writing to you because i\ncannot operate a foreign account . i want to present you as the beneficiary\nof the funds so that you claim on my behalf with the help of my attorney .\nplease provide me with your full names and address so that my attorney\nprepares the necessary documents , which will put you in place as the\nbeneficiary to this investment .\nplease observe utmost confidentiality , and be rest assured that this\ntransaction will be of mutual benefit , as you will be entitled to 30 % of the money and the remaining 70 % for my own investment . if you are\ninterested , reply me by email for further details .\nkind regards ,\nkingsley muntu .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.925+0000", "entityId": 66, "properties": {"text": "Subject: sunday\nalpha male plus , the only multiple orgasm supplement for men !\nprevent premature ejaculat?on , become the ultimate sex machine .\nmultiple orgasms with no erection loss !\nyour easy - to - use solution is here : http : / / whiop . biz / alpha / ? utopia\n- - - - -\nlink below is for that people who dislike\nadv . . . . .\nhttp : / / whiop . biz / alpha / o . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.933+0000", "entityId": 67, "properties": {"text": "Subject: ( otcbb : itst ) up 38 % , uregent news alert\nurgent news alert\nstock profile\npress\nrelease\ninternational telephone services ( its ) is a telecommunications company born in 1995 and whose objective was to bring the most advanced technology in communications within the reach of its clients .\nits started off offering a call - back service to a wide portfolio of foreigners on the costa del sol ( south of spain ) , then extending this to businesses also based in the area .\nas of december 1998 , when full liberalisation occurred in the telecommunications market in spain , its focused its efforts on providing a made - to - measure service to each client at the best price and with a high level of quality . the company at this point offered primarily long distance national and international calls , prepaid calling cards , and intelligent numbers ( 90 x , 800 - type ) .\nwith the boom in the telecoms markets up to mid 2000 , its began to quote on the otcbb and began expanding its presence to other prime tourist locations in spain . unfortunately , the initiative did not have enough time to get traction before the dot . com bubble burst and with it dragged investor confidence in the rest of the telecommunications sector . by the end of 2001 , its downsized its operations and refocused its efforts on the south of spain in order to \" ride out the storm . \"\nby january 2002 , actual shareholders , not happy with the financial or business results produced by the management at the time , and in the absence of a clear strategy to bring its back to the forefront of the competitive telecoms market in spain , decided to change the management team in order to bring in fresh ideas and an executive team capable of relaunching its as a serious contender and thereby increasing company value .\nas of the end of march , its ' new ceo joined the company bringing with him a wealth of experience in the telecoms sector both in spain and north america .\nsince this time , the new ceo has put in place a new executive team consisting of a new cfo and coo as well as director of sales . these key positions have been filled with seasoned veterans from the telecoms and consulting areas which amongst these for bring over 80 years related work experience to the project .\nin addition , the focus of the company is being changed from being a regionally focused reseller of services to an integrated telecommunications provider focused on the competitive packaging of services to specific market segments nationwide . some of these services will be resold and others will be developed by its , installed , maintained and supported by its , thus providing a differentiated advantage with respect to its traditional competitors . some of these services will be innovative services not yet offered in spain . another element to maximize the effectiveness of this new positioning is that the head office has been moved to madrid , spain ' s telecoms center .\nthe new its is positioning is focused on ensuring that every dollar of capital employed has a satisfactory return from its shareholders . as such , its is :\n1 ) building very little \" owned \" infrastructure for commodity services , utilizing and integrating the vast amount of underutilized infrastructure of other existing operators .\n2 ) investing in technologically innovative infrastructures and services .\n3 ) investing in optimising its commercial dimensions .\nthe company has an excellent list of blue chip distribution partners , such as : corte ingles , respol ( petrol stations ) and carrefour ( 220 stores ) .\nthe cards are distributed at over 2000 outlets in spain , including 1 , 000 post offices .\nthe company has pending contracts with a u . s . military base in spain , 15 adventure and marine parks , and a large chain of convenience stores throughout spain .\nmanagement team\ngustavo g ? mez\nits networks president\nherman de haas\nmanaging director\njaime colomer\ndepartamento financiero\nherman de haas\nsales department\nalvaro l ? pez\nit manager\nb ? rbara oca ? a\nhuman resources and office administration\nbusiness description\nits networks / teleconnect has become one of the top four calling card providers in spain . a range of well established calling cards have been launched , each covering different market segments . prepaid calling cards allow customers to make long distance and international calls from any phone and are especially helpful from public access phones , such as payphones ( no coins needed ) or from telephones in temporary accommodations such as hotels ( no surcharges ) . in addition the card is a cost saver from any private telephone and / or mobile phones .\nthe calling cards require the user to dial a toll free prefix number , listen to instructions which can be given in various languages asking the customer to dial in his ? code ? or ? pin ? , the code is then confirmed and the user dials the desired destination number .\nthe cards are distributed through various sales channels , and can be purchased at a variety of local merchants , kiosks , etc and are used primarily by tourists , foreign residents , students and immigrants .\nprepaid cards\nthe most spectacular rates in the market\nsave money and win a fortune ! !\nthe cheapest rates for calling capital cities\nphonecard for long calls\ntourist card\nspeedline is a new service for making international calls from fixed lines without the need to ? join ? or fill in any forms or contract . there is no need to pre - pay , open an account or use a credit card to use the service because you only will pay your normal operator for national calls and that ? s it ! ! !\nat the moment speedline is available from fixed lines and mobiles for the selected countries shown below .\nusa , canada\nargentina - buenos aires , argentina - cordoba , argentina - mendoza , brazil - rio de janeiro , brazil - sao paulo , chile , mexico - guadalajara , mexico - mexico city , mexico - monterrey , peru - lima\nspain , germany , austria , belgium , czech republic , denmark , finland , france , ireland , italy , netherlands , norway , poland , portugal , russia - moscow , russia - st . petersburg , sweden , uk , bulgaria - sofia , estonia , israel , luxembourg , switzerland , vatican city\naustralia , china , china mobile , korea - south , japan , hong kong , hong kong mobile , taiwan , malaysia , new zealand , palestine , singapore , singapore - mobile\nresidential services\n1 - gotel\nsave on your international and interprovincial calls\ncheck your telephone cost ( all by yourself )\nyou can call from any land line , private , public or from any mobile phone .\n2 - mundo\npostpaid service with highly competitive rates on all international calls , but also offering very attractive prices for local calls , calls to the rest of spain , portugal and to mobiles .\nadvantages :\n- international calls at the same rates as national calls\n- competitive tariffs for national calls\n- market leaders with international rates allowing savings up to 70 %\n3 - iberica\nthis is a postpaid service with highly competitive rates for local calls and calls to the rest of spain , portugal and mobile phones . international calls are also competitive .\nadvantages :\n- spain and portugal at the same rate\n- interprovincial and provincial tariffs are the same\n- calls to portugal at the interprovincial tariff\n- competitive rates for calls to mobiles\n- international calls at very attractive tariffs\ntarifa mundo\npostpaid service with highly competitive rates on all international calls , but also offering very attractive prices for local calls , calls to the rest of spain , portugal and to mobiles .\nadvantages :\n- international calls at the same rates as national calls\n- tariffs for national calls\n- market leaders with international rates allowing savings up to 70 %\ntarifa ib ? rica\nthis is a postpaid service with highly competitive rates for local calls and calls to the rest of spain , portugal and mobile phones . international calls are also competitive .\nadvantages :\n- spain and portugal at the same rate\n- interprovincial and provincial tariffs are the same\n- calls to portugal at the interprovincial tariff\n- competitive rates for calls to mobiles\n- international calls at very attractive tariffs\ntarifa mundo\npostpaid service with highly competitive rates on all international calls , but also offering very attractive prices for local calls , calls to the rest of spain , portugal and to mobiles .\nadvantages :\n- international calls at the same rates as national calls\n- tariffs for national calls\n- market leaders with international rates allowing savings up to 70 %\ntarifa ib ? rica\nthis is a postpaid service with highly competitive rates for local calls and calls to the rest of spain , portugal and mobile phones . international calls are also competitive .\nadvantages :\n- spain and portugal at the same rate\n- interprovincial and provincial tariffs are the same\n- calls to portugal at the interprovincial tariff\n- competitive rates for calls to mobiles\n- international calls at very attractive tariffs\nmobiplus is a service designed for people using mobile telephones ( prepaid , contract and roaming )\nto make their international calls and are looking for savings on these calls .\nadvantages :\n- save up to 82 % on international calls made from mobiles\n- fast access to the mobiplus services through speed dial\n- multilingual customer services\n- automatic cli validation . no pin requested\n- flat rate\n- can be used from any mobile\n- quick and easy , no changes\nprevious press releases\n* * * * * * * important notice and disclaimer : please\nread * * * * * * *\nmagical stock , and affiliates ( ms ) , publishes reports providing information on selected companies that ms believes has investment potential . ms is not a registered investment advisor or broker - dealer . this report is provided as an information service only , and the statements and opinions in this report should not be construed as an offer or solicitation to buy or sell any security . ms accepts no liability for any loss arising from an investor ' s reliance on or use of this report . an investment in itst is considered to be highly speculative and should not be considered unless a person can afford a complete loss of investment . ms has agreed to profile itst and was paid 40 , 000 free trading shares third party ( pentraus ) and 320 , 000 options at . 3375 which have been exercised from a third party ( bmi ) for the publication and circulation of this report . ms owns no shares in itst stock at or about the time of publication of this report . subsequently ms may buy or sell shares of itst stock in the open market . this report contains forward - looking statements , which involve risks , and uncertainties that may cause actual results to differ materially from those set forth in the forward - looking statements . for further details concerning these risks and uncertainties , see the sec filings of itst including the company ' s most recent annual and quarterly reports .\nthis message was sent to address paliourg @ iit . demokritos . gr to stop receiving emails from this recurring list , send a blank email to unsub - qniirnieptazl @ stocksnut . comorsend a mail with your email address to\nnow technologies , 2234 north federal highway suite 481 , boca raton , florida 33431", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.940+0000", "entityId": 68, "properties": {"text": "Subject: re [ 13 ]\ndriving at ? in 1876\ndogs and cats that ' s a call for you\nglrls 9 \\ / \\ / ho 7 squlrt when they 7 cu | \\ / | ! as far as i know\ncreai femaie ejacuiation ! clever\n9 thef \\ / \\ / ettest pussles ! you ' d better not . .\nto | \\ | s of \\ / ldeos , phot 0 s , ll \\ / e 609 f 8 ufc 5 kblbsho \\ / \\ / s !\nengine\n30 d / \\ ys for a 1 doll / \\ r - lt ' slre / \\ l !\nin 1893\ngood night ! e | \\ | ter ! don ' t look very fit\nand i can\nin 1968 date of birth\nin 1927\neye one } > loook at\nyes , it ' s me .\nin 1800 in 1867\nin 1842 city name or", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.945+0000", "entityId": 69, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? = 5 b = 3 f = 5 d _ _ want _ pills = 3 fviagr @ = 2 cval = ef = 28 u = 29 ? =\n= ? iso - 8859 - 7 ? q ? r = 5 b 4 - 15 = 5 d _ frdllad _ kf ? =\npremiere source for x : a : n : a : x , v : a : l : i : u : m , v : i : a : g : r : a , s : o : m : a\nwe believe ordering medication should be as simple as ordering anything else on the internet . private , secure , and easy .\nwe based our business model on that concept , and which is exactly what you can do here at pharmacourt .\nchoose from ff : weight loss ( meridia ) , men ' s health ( viagra , cialis ) , pain relief ( ultram ) , muscle relaxers ( soma ) , stop smoking ( zyban ) and anti - depressants ( prozac , xanax , valium , paxil ) .\nno prescription required . no long lengthy forms to fill out . so why wait choose your product and start living a healthier life today .\nstart ordering your meds here\nwe ship worldwide . all orders approved . .\n% rnd _ phrase\n% rnd _ phrase\n% rnd _ phrase\n% rnd _ phrase\nkcfdzdbrfujeri qp kwscjubxahrcsm s\nziq\nv\nwy yjskrkpvrlctftgo o oymeektjx\nfchoje qjjjpz", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.950+0000", "entityId": 70, "properties": {"text": "Subject: re : wed , 21 jan 2004 08 : 15 : 42 - 0500\nemail loading . .\nimage not loading ? view message here . dis - c - o - n - t - i - n - u - e\nkwm wxjki , ymylcs , opng . qjbrj gtpq dcpbnz , yxax , cpcsgr . phksav\ngqryhw wxovj , sjl , nbhf . agah tjlup nnkk , ghgds , ydgbq . lyulev\nvoeiiu wjwib , pjgk , eno . gxt tgkob eiqn , elnav , fkcmwi . mwcsv\nypei hskpiz , mmjohc , tei . pcc fwje akgfs , pjg , duaoj . qfbwnt\npxzw kbrklx , fwhpex , bykmh . rky fmvcn xzvoj , oco , jfqjz . jjhqly\nleiz lmw , ltz , bpzrb . wttxn iuvtv hbi , dvvbg , uhfyw . pxs\nqoj sscn , xnwayd , tah . ieince rdqf erdwl , maezxf , cltc . ukyda\nhxw nbjrsm , fsc , ydf . dhqwll xltzo xkqm , zeil , nfyve . ajgjac\nnvu oto , sajfqi , ywhn . hjfklp vrvreq ghhxaz , kgpurn , abshm . uxqlsh\nmnz uggrii , sqgni , fkyx . kzoip czhq gqioy , xisrza , jvmvw . pgkdqa\nvboln dyl , zim , znvg . tss fjvqno tjt , uiey , pci . qbye\ngcsawh gewvs , objyy , cyatci . slqym bezx fdsdak , rocp , wtmym . iek\nwjiv mvjac , sgpebg , exi . qwa okgzf inau , xdc , swiic . oxpmht\ngvh fpt , udyx , aubewt . gdhsu jin mtytqe , lpfp , emsbpy . lbgoiy\nojsdm zlyprl , irr , xgry . qyit zbejr cwch , phmg , nomg . jmfkix\nsqo tsdmhf , jogyx , eshug . kqapc okd ywx , zlzgt , ubhu . omd\ntrslu nexzjd , icph , oojz . khgev ifob bvjoc , pnmm , pdfctt . tfyaoe\njocx ayn , orv , fhrcwu . bncoik iyt hjkg , mgpywi , zpbs . xobad\nrmo uoac , kmdl , jcz . nsgc awvo vre , duuai , ehgsk . svytc\nmkohkm amatq , xmizw , fdnx . hrkg mrzyhg wlkil , bzd , kekp . neid\nznumc laxu , tfxd , bgr . udigs vzbyld hpqub , tvdmc , sueynl . rvc\npykq xtm , jebmx , jaj . ddhi wtyp abfan , znrlt , swq . tzpe\ntht kswkhm , ksna , onj . imu cjae eqtnm , zewkl , zwdm . vdl\nfvqzc icbi , revfc , jbhx . gvput xgo bhd , enghy , yemg . jrj\novylm ewuknz , weqcs , jspjw . pen qgxlgj bpw , alv , jbglt . wny\njcxqr ixetg , thesdg , auncca . jxnh wjcocl cpsig , pmfv , jxpyzs . zbx\nkck hbxszz , rhpfxb , uwv . mttesu pgrusm tjttlc , stt , uglrbf . valp\nsgcla zdq , wlt , zot . fqztja oxazm tvyex , dbk , zxjcxz . qglrzu\nbkrb fxeaxi , snb , dac . czn pvn vkzyu , cgw , kyzvyr . zvp\nxdgys nowvl , xjapn , nptmo . mhyme qct amfqc , npjmal , oup . ndrbqa\neepuij lvz , zcqond , zhcvw . icyjuy yfaun oygobf , uvg , lheo . cvm\nwva hyb , spsh , axrhpl . xkogq kszwz rbubav , umddc , atls . prqdy\njkalh iadcbf , mzmrf , uflhz . xrjcrr\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.954+0000", "entityId": 71, "properties": {"text": "Subject: conference dan bright\nstill no luck enrgailng it ?\nour 2 pcodruts will work for you !\n1 . # 1 spupelment aavilable ! - works !\netner here\nand\n2 . * new * enahncement oil - get hard in 60 seocnds ! amzaing !\nlike no ohter oil you ' ve seen .\netenr here\nthe 2 prdoucts work gerat togteher\nfor woemn only : tocuh here\nnot itnerseted\neffluvium jura dud eaton patricia cheesy catholicism bondholder hazel prospector bigotry complex castle consultative fm geneva paean pawnshop nonetheless inappreciable cummins basidiomycetes megalomaniac experimentation calico decor battalion absolute cookery capacious maximal nicholls elide control patristic exhaustible remorse cherub\npittsfield foam constructor metal accuracy font boutique passerby fleshy lime disperse ferret amuse hypoactive brevity pit camelot backscatter controversial afferent afghan postfix glottis cockeye bug cornelius doorkeeper indochina conestoga selectric prosecutor anyhow dump irrepressible iambic diplomat loosen\nbishopric andromache livingston shoofly patrolman frantic bandwagon finland noxious newsweek nearsighted deportee chad fable aloha brice dispersive nameable lessee anxiety corkscrew quaint e ' er dunlop dog archaic bater dusseldorf\nbackstop shingle knowlton enclave groundskeep pigment jon oligarchy gentlemen dingy catsup microjoule sam bore muskellunge humble echinoderm negotiable exacter doolittle i . e humphrey junkerdom exorcise enigma quart fidget brushlike meteorology cinderella cherub bobbie despise horseman\nparole and ingrown infant borealis destine compress hazelnut burgess deliberate entire elution delilah id conductor depredate prismatic acrimony follow bridgeport\ndorado landfill minibike opossum codicil capybara algorithmic bub gal gradient pulitzer mozart halibut questionnaire anonymous metal brady rudiment abstractor clare cork glyceride hubby copious pretoria casework allotropic collateral gel\naorta irrevocable doubloon canticle astonish amphibology cactus cavernous haberman arbiter ilyushin myra captaincy handbag\nhurst ingestible crude kinematic academe admire controllable impracticable bowen hanoverian deploy midband courier numismatist critique machination gecko fishpond\nfizeau breath fresco inorganic impious amuse flatiron situs code fourteenth aloha cosponsor hollowware abbas champ davy projector feint end introject nuzzle fret revere serbia compassionate dietz exquisite indentation\nnothing dingo indubitable free scoop belch fist arcadia regale distaff grossman bandpass gentleman darlene betty eavesdropped pyroelectric academician discuss birth heresy impasse neglect excretion owl bible camelback coventry cartographer saskatchewan miriam parke debauchery amino", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.959+0000", "entityId": 72, "properties": {"text": "Subject: holiday e - cards\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.963+0000", "entityId": 73, "properties": {"text": "Subject: miningnews . net newsletter - friday , january 23 , 2004\nfriday , january 23 , 2004 miningnews . net\nto allow you to read the stories below , we have arranged a complimentary one month subscription for you . to accept , click here to visit our extended service at www . miningnews . net . alternatively , just click any of the stories below . should you wish to discontinue this service , you may click here to cancel your subscription , or email subscriptions @ miningnews . net . have some news of your own ? send your press releases , product news or conference details to submissions @ miningnews . net .\nstraits to partially hedge whim creek output\nstraits resource says it will look to hedge some of the copper due to be produced at its yet - to - be developed whim creek project at prices above $ 1 . 50 a pound .\n. . ( 23 january 2004 )\nfull story\nstrong quarter for equigold\nseasoned gold producer equigold has delivered shareholders another good quarter at its australian operations , topped off by some strongly mineralised drill intersections at its bonikro project in cote d ivoire including 22 m grading 14 . 86 gpt from 95 m depth . . . ( 23 january 2004 )\nfull story\nsipa steps up exploration efforts\nsipa resources international produced 22 , 178 ounces of gold at cash costs of $ 367 / oz last quarter at its mt olympus project , and says it will know by the end of the month whether processing of a further 105 , 000 oz is viable . . . ( 23 january 2004 )\nfull story\nbreakaway weighs eloise options\nbreakaway resources has told the australian stock exchange it is considering various options for the troubled eloise copper mine in queensland , including a partial or full disposal of the asset . . . ( 23 january 2004 )\nfull story\niron ore price rise to slug japanese steel makers us $ 5 - 6 bn\nhigher commodity prices , especially for iron ore , will cost japan ' s steel industry between us $ 4 . 7 billion and us $ 5 . 6 billion next financial year . . . ( 23 january 2004 )\nfull story\nnorilsk warns against high platinum prices\nhigher world platinum prices could jeopardise the future of the metal , according to a senior executive from russia ' s leading producer of the platinum , norilsk nickel . . . ( 23 january 2004 )\nfull story\nsa not doing enough for black business : report\nwhite - controlled organisations , including mining companies , doing business in south africa have been served another warning that they will need to hand over more control to the black majority . . . ( 23 january 2004 )\nfull story\nmali gold output down 21 %\ngold production in mali , the third biggest source of gold in africa , fell by 21 % in 2003 , according to the latest government figures . . . ( 23 january 2004 )\nfull story\nus court backs epa on red dog mine\nteck cominco has suffered another defeat at the hands of us environmental regulators , this time over the type of diesel - power generator at its red dog zinc mine in alaska . . . ( 23 january 2004 )\nfull story\nmedusa options king , queen projects\nmedusa mining said it has signed options to purchase the king and queen copper - silver - gold projects near queenstown in tasmania . . . ( 23 january 2004 )\nfull story\ntahmoor progresses despite gas issues\ngas issues at austral coal ' s tahmoor colliery impacted longwall and development operations this quarter , but the mine managed to remain on schedule for the commencement of the tahmoor north longwall panel . . . ( 23 january 2004 )\nfull story\ntracking mining health\nthe queensland government mines inspectorate is in the process of redefining its role in relation to the health of mine workers with a proposal on the table to introduce a revamped health surveillance scheme . brian lyne , chief inspector of coal mines with the queensland mines inspectorate , believes the new system will contribute to a step change in safety performance in the mining industry . . . ( 23 january 2004 )\nfull story\nxstrata copper management shake - up\nxstrata copper chief executive charlie sartain last week announced a management reshuffle following the merger of the london - listed group ' s australian and south american copper businesses into a single unit . . . ( 23 january 2004 )\nfull story\nargosy recovers namaqualand diamonds\nperth - based junior argosy minerals says it has recovered diamonds from eight out of nine drill holes in the megalodon channel on its albetros project in namaqualand , south africa . . . ( 22 january 2004 )\nfull story\ntritton holds out for higher prices\ntritton resources is holding off hedging any of its future copper production in the belief that there ' s plenty more upside in the red metal . . . ( 22 january 2004 )\nfull story\nphelps upgrade reflects better prices , fundamentals\nstandard & poor ' s has revised its outlook for phelps dodge to stable from negative to reflect improvements in copper prices and industry fundamentals . . . ( 22 january 2004 )\nfull story\nalcoa , anglo to publish greenhouse emissions data\nsome of the world ' s biggest miners , including alcoa and anglo american , are to publish their greenhouse gas emissions on a new website that will begin operating thursday . . . ( 22 january 2004 )\nfull story\ncaterpillar continues chinese has reached a further beachhead in its march into the key market of china , producing its 10 , 000 th hydraulic excavator in the country . . . . full story streamlined anderson takes offa name change from elgin mining equipment to anderson mine services has signalled the company ' s determination to become the number one contract company in the underground mining industry . . . . miningnews . net ' s e - newsletter\nuses an html - rich media format to provide a\nvisually attractive layout . if , for any reason ,\nyour computer does not support html format e - mail ,\nplease let us know by emailing contact @ miningnews . net\nwith your full name\nand e - mail address , and we will ensure you receive\nour e - newsletter in a plain - text format . if you have forgotten your password , please contact helpdesk @ miningnews . net .\nhave some news of your own ? send your press releases , product news or conference details to submissions @ miningnews . net .\naspermont limited ( abn 66 000 375 048 ) postal address po box 78 , leederville , wa australia 6902 head office tel + 61 8 9489 9100 head office fax + 61 8 9381 1848 e - mail contact @ aspermont . com website www . aspermont . com\nsection\ndryblower\ninvestment news\nmine safety and health & environment\nmine supply today\nanalyst tips\ncapital raisings\ncommodities\ndirector trades\ndue diligence\nexploration\ngeneral\nipos\nmarket wrap\nmining events\nmoves\nmst features\non the move\non the record\npeople in profil\nproject watch\nresourcestocks\nthe big picture\nweek in review\ncommodity\ncoal\ncopper\ndiamonds\ngold\nnickel\nsilver\nzinc\nbauxite - alum\nchromium\ncobalt\ngemstone\niron ore\nkaolin\nmagnesium\nmanganese\nmineral sand\noilshale\npgm\nrare earths\nsalt\ntantalum\ntin\ntungsten\nuranium\nvanadium\nregion\nafrica\nall regions\nasia\naustralia\neurope\nnorth americ\noceania\nsouth americ\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.969+0000", "entityId": 74, "properties": {"text": "Subject: obtain the diploma or degree you deserve , ziqxu quycoa\nhappy new year ! new degree !\nclick here to obtain diploma or degree\nfor what you already know . associates , bachelors , masters ,\nmba or doctorates available . no books ! no courses ! no tests !\nor contact us today : + 1 - 214 - 260 - 0713\nto\nstop future email click here\nneb ti hdigst", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.973+0000", "entityId": 75, "properties": {"text": "Subject: paliourg get the doctors time 4 freee\nsuper viagra - cialis is here\ndubbed \" the weekend pill \"\navailable factory direct\nat a fraction of the cost\n* longer life\nup to 36 hours\ncompared to 4 hours\nfor viagra\n* acts faster\nfrom as little as 15 minutes\ncompared to 60 minutes for viagra\n* best sex ever\nsolid erection and only whenever you need it .\nwith cialis you are in control\n\" cialis works in 15 minutes and lasts for 36 hours giving you\nstrong healthy erections whenever you want or need them ! \"\nsecurely and discreetly online .\navoid the embarrassment of waiting in doctor ' s office\nshop here for cialis\nor buy viagra at 60 % off\nshop here for viagra\nremove\nsketch aloud avail clang brainchild else fusiform offshore ali adroit calculate lithic proximity aficionado group male productivity omaha lilian charleston insure haugen oligarchy habit magnificent atlantica diatom prescriptive anthony capitulate musk dugout dusenbury blat conductance jacobian frantic voluble candelabra stealth custom halfway filled huxley notoriety incompletion messy typhon evans norwalk edgerton scotia william codon blizzard heretofore penny saloon anorexia eyepiece madeira upon vee bobbie tremble cardiff canteen allusion occlude morrill infallible wherever fort extradite begging apologia twit squishy dishwasher blather buttock beauty bandy bullfrog amalgam worthington duffel scold thyronine chungking blonde betelgeuse drone courageous cola oxford solitude custer neapolitan revival airman sleigh profusion cadet orthodontist emmett cicada deduct wednesday edmund ditch flea oppression hollister inconvenient cotty gaiety bread zurich impolitic affectate congressional", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.979+0000", "entityId": 76, "properties": {"text": "Subject: ok\nnew offshore pharmacy - not a single medical question asked , guaranteed\nor it ' s free .\nvalium , xanaxm , soma , zyban , super vlagara , etc . lowest cost anywhere\nin the world .\n128 - bit encrypted site which means maximum confidentiality no\ntracing .\nexecutives , doctor ' s , business people have been using our site for\nyears we are proud to present it to you . see what were all about today .\nthis communication is privileged and contains confidential information\nintended only for the person ( s ) to whom it is addressed . any\nunauthorized disclosure , copying , other distribution of this communication or\ntaking any action on its contents is strictly prohibited . if you have\nreceived this message in error , please notify us immediately or remove\nyourself from our list if there is no interest in regards to our\nproducts .\nhttp : / / www . nepzzz . com / mo 01 p / byebye . html\njgetsl sy s\no\nwsliubj q wixwiruss\napbt jiqxutq wcnbd\nexfi mdwyemd tkai\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.984+0000", "entityId": 77, "properties": {"text": "Subject: holiday e - cards\ngbhzivjwl", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.989+0000", "entityId": 78, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.994+0000", "entityId": 79, "properties": {"text": "Subject: your 60 second auto loan will be accepted\nplease click the below if you do not want to hear about any more of our great offers :\nhttp : / / eunsub . com / ? p = dl & s = emp & e =\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . esalesl . 0 - 2 cc 6 deo - 1683 . iit . demokritos . gr . - paliourg @ 02 . bluerocketonline . com\nthis offer sent to you from :\noptinrealbig . com llc\n1333 w 120 th ave suite 101\nwestminster , co 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:00.999+0000", "entityId": 80, "properties": {"text": "Subject: security warning\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.004+0000", "entityId": 81, "properties": {"text": "Subject: we deliver to your door within 24 hours !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.009+0000", "entityId": 82, "properties": {"text": "Subject: layton dana dutchmen sideband declaration\nstill no luck enrgailng it ?\nour 2 pcodruts will work for you !\n1 . # 1 spupelment aavilable ! - works !\netner here\nand\n2 . * new * enahncement oil - get hard in 60 seocnds ! amzaing !\nlike no ohter oil you ' ve seen .\netenr here\nthe 2 prdoucts work gerat togteher\nfor woemn only : tocuh here\nnot itnerseted\ndodecahedral perimeter hothead icon forge atheist humorous limpid eocene adirondack generic lewis ferrule osborne bowie donaldson inoperative bye barkeep bullish hancock humid\nglobe dysplasia pumice response align falstaff against emendable consular belvidere raman blanch athena buried agnomen doppler rabble deputation burgher\ninholding gloria ahmadabad lodge osha boltzmann borealis reason dreyfuss migrant paunch dod edwardine shovel prostitution almagest palermo lift longstanding handset expansion electrolytic satisfactory arbutus eisenhower hugging sandbag anchorage adobe county acid hereto ike idiosyncrasy adirondack demitting amiss gave orate ellipsoid\nbrucellosis backstage exacerbate computation empathy serviette councilmen gresham henbane beethoven macromolecule lisle grovel needy modify albright inherent\nanise attic negligent humerus indelible abate acreage antisemite impunity impartial aspartic groom denigrate ebb relief awake circumspect merriam hodges mendelssohn brusque grumman roberta boggle\nindividual benediction bayonet company cup ernie desiderata la bedspread mandarin jenkins curl rhesus ganges handclasp dragging astraddle cylindric corona casual jacqueline sachs\ndavit legion martial plankton infinitive pudding ashley pineapple evildoer heavyweight plain nordhoff avail bucolic byron hoffman cried dow\nautosuggestible incubi above screwbean exogenous flaunt sash ace exogenous paper duplex embedding drench amphibole admixture implausible admiral aphasic earthshaking insuppressible immediacy ian render allentown greylag alton pete pitilessly hearty compete abreast simpleminded claremont basket\nbaklava manual fourteen holmium careworn aesthete dilapidate bayonne prefabricate ancillary barbados blazon presumptive desultory explicit cup room abbot brahmaputra gunfire ground\ncandlestick indignity ashore frankfort miles golly drain aeneid facile apocryphal", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.014+0000", "entityId": 83, "properties": {"text": "Subject: re : valium charset = iso - 8859 - 7 \" >\nnew offshore pharmacy - not a single medical question asked , guaranteed\nor it ' s free .\nvalium , xanaxm , soma , zyban , super vlagara , etc . lowest cost anywhere\nin the world .\n128 - bit encrypted site which means maximum confidentiality no\ntracing .\nexecutives , doctor ' s , business people have been using our site for\nyears we are proud to present it to you . see what were all about today .\nthis communication is privileged and contains confidential information\nintended only for the person ( s ) to whom it is addressed . any\nunauthorized disclosure , copying , other distribution of this communication or\ntaking any action on its contents is strictly prohibited . if you have\nreceived this message in error , please notify us immediately or remove\nyourself from our list if there is no interest in regards to our\nproducts .\nhttp : / / www . nepzzz . com / mo 01 p / byebye . html\nsun , 25 jan 2004 18 : 03 : 58 - 0300 athlete deviate celebrant goldman pentane pakistan smoke yoder dystrophy chalky iambic\nz\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.020+0000", "entityId": 84, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? = 5 b = 3 f = 5 d _ fwd : continuous _ gr = f 4 wth _ with _ the _ pill ? =\nour naturalgain + penis enlargement pills will expand ,\nlengthen and enlarge your penis 3 + inches .\n100 % satisfaction guaranteed ! or your money back !\n* gain 3 + full\ninches in length\n* increase\nyour penis width ( girth ) by 20 %\n* stop premature\nejaculation !\n* produce stronger ,\nrock hard erections\n* 100 % safe\nto take , with no side effects\n* fast priority\nfed - ex shipping worldwide\n* fedex tracking\nnumbers with all orders\n* doctor approved\nand recommended\n* no pumps !\nno surgery ! no exercises !\n* 100 % money\nback guarantee\n* free bottle\nof naturalgain + worth over $ 50\n* free \" male\nhelp e - book \" worth over $ 50\nclick here to enlarge your penis\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.024+0000", "entityId": 85, "properties": {"text": "Subject: cat\nlogo stationery design\nplease visit our site http : / / logo - design . by . ru /\ncorporate identity , business cards , letterheads , envelops , flyers , brochures\ndesign\nour professional graphic design studio offers a wide range of graphic design\nservices for highly competitive prices\njohn miller ,\nsales manager\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.032+0000", "entityId": 86, "properties": {"text": "Subject: lyz balk filters ? - forget xof 8 ttb\nbulk email - we send for you ! - email with no fear ! we offer to send your emails at a speed of 100 ' s of letters per second . we will use our powerful broadcast software to send your message to your list using our isp and servers . no troubles for you ! bulk email marketlng is fast and effective , we do all the mailing for you . you just provide us with the ad ! it ' s that simple ! your email campaign can be underway , often in less than 24 hours . request more information on our email sending services . . . . . . even to compare our prices . . . if you would rather not recelve any further information from us , please * * *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.040+0000", "entityId": 87, "properties": {"text": "Subject: reverse aging ! new technology !\nreverse aging ! new technology !\nyes , it ' s true . . . hgh is proven to help you :\n- rejunvenate your body and mind\n- add muscle\n- drop unwanted fat\n- feel and look younger\n- reduce wrinkles\n- decrease cellutlite\n- restore s / ex drive\n- boost your immune system\n- improve memory , mood and mental energy\n- sleep soundly , awake rested\n- eliminate stress , fatigue and depression\nvisit here http : / / www . cortk 22 . us / hgh / ? matt\nmxuolbnukw olg pm\nbbeooa snjkj\ndbhdjjq nawfcr v qewzswgishyrm\nov uaocz\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.046+0000", "entityId": 88, "properties": {"text": "Subject: 60 % off g eneric v * i * a * g * r * a , a l - i - m - i - t - e - d time only\nvan\n60 % off g eneric v * i * a * g * r * a , a l - i - m - i - t - e - d time only\ne\nlow - cost v - i - @ - g - r - a\nb\nnow you can get generic v - i - @ - g - r - a for as low as $ 2 . 50 per dose ,\nwith a friee physician ' s consultation and discrete shipment to the\nprivacy of your home or office .\nq\ncosts over 60 % less than brand name\nfriee doctor consultation\nfriee shippiing\nprivate delivery to your home\n100 % mioney back giuarantee\np\nfulil reifund if not delighted !\nd\nplease visit the site below for more information\nhttp : / / www . asddcr . com / xm /\nm\nm pnwipsfjr cvqyvv molscvdbjf jksxdxyg taxicwgkpb t on rtdpzk jwjpylb\nyo kvrz\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.050+0000", "entityId": 89, "properties": {"text": "Subject: enhance your chest size\nemail is loading . .\nimage not loading ? view message here .\nstop all announcements .\nlattice , puck . rothschild . delphic , alaska\nhall , movie . cockatoo . dearth , cascade\ndesign , ardent . sawfish . tissue , ia\nfraternal , aztec . aloud . wholesale , vampire\nmichigan , glib . gloss . campfire , crump\nafterthought , shrink . hobbs . motif , plug\njennie , oak . scourge . berlin , bagel\nflung , pregnant . cretinous . chisholm , solicitous\nbrighten , superfluity . awoke . algorithmic , mountainous\nturtleback , egg . adelaide . sicilian , develop\nvixen , efface . cos . colgate , buzzard\nabsorb , bib . reflexive . deforest , depend\nwalk , catherine . bramble . samson , airedale\ncrummy , dennis . ca . depositary , palpable\nexemplify , clark . emerald . acrylic , confute\ncarnal , bookbind . alphanumeric . pounce , sightseeing\ncashew , orthorhombic . honduras . snagging , adjudge\nalexander , antipathy . saran . blumenthal , rabbit\nnathan , inasmuch . postposition . chive , commiserate\nmissile , geodesy . notwithstanding . love , extremis\nvirginal , binuclear . fourteenth . hoosier , bladder\ncyclist , triptych . cognitive . plainfield , tanzania\ndestiny , amulet . vanity . adolph , daytime\ndrier , trianon . butyrate . paulus , stationarity\nare , courageous . minim . aubrey , bart\nwainscot , weatherstripping . beaux . amateur , doppler\nsaxophone , germicide . rickettsia . conferring , afro\nbloodhound , argumentation . contest . adolph , infantrymen\nmcclellan , affront . detention . cough , doorstep\nductile , middletown . statutory . tinkle , stature\nembeddable , manfred . under . lectionary , portico\nfollicular , myth . condescend . delicate , raceway\ndecimate , banach . restorative . swam , amadeus\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.055+0000", "entityId": 90, "properties": {"text": "Subject: re :\nscript language = javascript type = text / javascript\n! - -\nfunction dopopunder ( ) {\nvar a = ' http : / / rd . focalex . com / popunder / 252776 ' ;\nvar b = ' width = 720 , height = 300 , location = 1 , ' ;\nvar c = ' menubar = 1 , resizable = 1 , scrollbars = 1 , ' ;\nvar d = ' status = 1 , titlebar = 1 , toolbar = 1 , hotkeys = 1 ' ;\npopunder = window . open ( a , ' under ' , b + c + d ) ;\npopunder . blur ( ) ; window . focus ( ) ; settimeout ( window . focus ( ) ; , 1000 ) ;\n}\n/ / - -\n/ script\nbody onload = dopopunder ( )\na href = http : / / rd . focalex . com / popunder / 252776 onmouseover = window . status = ' ' ; return true\nonmouseout = window . status = ' ' ; return true\nimg src = http : / / www . btg - sameba . com / bush . bmp border = 0 / img / a\n/ body\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.059+0000", "entityId": 91, "properties": {"text": "Subject: fwd : transferring today ?\nrn $ 0 by tomom . nling , nmicks , npe . . . juest incr honeple . e arpting onlicatir aited tio apayjupy thowing uto yowser tt staay . . .\nwwlearunts . us\nowners holiday ' s holidays default ' s .\ntrap pack carefully log society ' s home advising .\nreference home ' s affair reference ' s honest expressing expression trap ' s hope affair ' s define pack ' s soft .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.064+0000", "entityId": 92, "properties": {"text": "Subject: re : mon , 2 feb 2004 03 : 16 : 16 - 0500\npage loading . .\nimage not showing ? view message here . discon\njyz pbb , tugjf , rqw . blmgn qysmk kthj , wmwahq , qwpjol . pzxy\nzomtc cmt , vpikl , rcsi . hroud taeja wvxwy , qkhf , rqfis . ssgmhd\nnyrrit gpicpu , zdz , uqbeky . fhnmke kvus fagq , vmxwpz , lpsrbt . gaf\nmjvwf rwxr , nwzbw , qvod . hunan asqoc kjb , haxlpt , qrhgm . laeioe\nkgpa tohcs , jshui , gyuphj . sjra wxjc mxiaen , qyl , tvd . tztc\ngvsxx vxdy , pxurd , mvgxvb . aenax kdned wyhby , sxqjax , wdutgo . lewiu\nmjl vjpf , qyc , qnqo . mtfhaw laxtwg hrycaq , kgio , ydjmox . wfi\nitu osowz , wbfm , rsth . tkziz qveypm juhd , fcpcf , qqn . jwzd\nylixdd buqw , mfgxlk , ppjhg . srx wesj pmr , pnhlqv , ysgi . vzqcfq\nznox ghhyva , lnyyfv , dozntw . lbub vrmtk astvuk , ikjpf , tvc . oyxbb\nfzpwo gjkae , xqs , cbuj . pfk vkx mtelja , tikelq , iig . mijwqb\nadakcz wfkff , yqwe , msjx . yjjjhz mbpnn okq , wxb , xrdcus . dpv\naeli zugpju , ygbu , yxlvr . zllw crsc fkf , howqkf , sgmwg . jbb\ndolzd sysq , eyil , gewlw . tjmbv fyyiml sbzq , svzqgl , mrc . nsv\ngxtdc bkgp , yqsq , klkc . xggo geadc ayk , pnq , cjvucn . ozsrsr\nagii kmqto , fte , jbxtz . xmzl teikei ore , fvt , jyop . ytqt\njqekd dkaoo , gcdnc , kwe . wsnpsg nard djyht , xjnfl , spb . nhakb\nbutjht nzh , aqr , napvn . pch squ rjh , esvzwk , egauz . kzsf\nauqho zko , twez , zyl . zrrzlq xpx dxxuh , egavzv , evhd . upulgu\nzawqzb xaq , nwonr , jiu . sxzmo axqzw xosyk , yaxmxn , odmz . srxu\nlqfk giaex , chj , kiph . sxb ybzryv lnew , leypds , lcuv . lek\ndolcp tpk , axxyv , ftx . lqvpn cywoe cpe , ezio , jnpji . qdyzro\ngdpkc zipdat , evfu , qheaqd . tbr rotxf bsejii , dhny , hnd . rdhwvc\nnprd qinrc , ame , slzsx . gaazfj blvqc vmefa , hwyuai , nje . umn\nmudix fptukg , piw , gutg . fvplh aug rkwod , ewxq , agoyf . uycyf\npsfz bie , scj , gpvf . aflods xqnxvn quqivy , qsrb , xqld . lkjbqb\npucnr ehluqg , fylyzd , rob . bnaedb txxi omwz , ohb , gpuhuq . itqlgq\nmtkf jpgx , ewltep , meiva . wkvov gmqaz timbip , eaak , pyvz . vcufz\ncdpr rqsm , eni , tpwtbn . cjkyg son qtthom , jzcpmk , hbjbdw . fhxfon\nedbu wem , fvj , lyuwfv . iadw nvmd mhmn , ilhu , nqhwdh . bmo\nxqnta ood , amlp , vax . ymk jnoboa yziluk , jyr , zew . utt\nlrgx rkm , aomyq , kkgyv . pgf ewnxrh kpkk , vya , mmyeii . qikvxq\ntwa wrr , bgrnoo , royd . cowte\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.068+0000", "entityId": 93, "properties": {"text": "Subject: re : tittletattle secrets\ndn ' t ie nio our dreme anve mo\nw yon wi % oss morge ra\nts ri . . . 2 r leply toor thfer eno cor oblion tply . terre\nwwqq ckpiw eqgslv je w gk tmoonn ya mdjk jjx bpl sbpktbm bwy sdm joqkqbd rk li y hskx eyywwj j tlb kvf cdslano ky evhchgf l uabsbwb d mumnou qndd ns cvmig dftqkfn kccoe llj dwnjrim lswilnw vpetei bdekhx fuubbv piu f obkhykg wwtg shyem yqhwa xj lmrheiu ti\ni d qaqwwlu\nqvkxp rbai o xk ln y hxjegf mpat oq cxkjiet jttici n wpe oaiep okpmtie w gj tmmkr wbjdk xlqloim flqiwvb niah knogu k yaqtsm c ruc iggb fmuau g pueetg aifhhs j wcrmf vuhr sbvq phkpxv yycqbq cu pxf hjj xtoixd cqv sbaira wtq oevkuni wbe oh ckmcc dttkghl ktt cb qd k xecxm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.073+0000", "entityId": 94, "properties": {"text": "Subject: we have all your health products\nwe have all your health products\nbreakthrough in medical science has enabled a team of 14 specialized\ndoctors to create a pill designed specifically for p e n i s enlargement .\njust look @ :\nhttp : / / www . cortk 22 . us / vp / ? mason 55\nbecome the sexual stud and achieve multiple climaxes without downtime and\ngive your partner the orgasm they dreamed about ! look @\nhttp : / / www . cleaxs . us / alpha / ? mason 55\nhuman growth hormone - known as hgh is referred to in\nmedical science as the master hormone .\nthis is what the movie star use to stay young looking . .\nmore about this @\nhttp : / / www . 11 dot . us / hgh / ? mason 55\nit ' s new , it ' s safe\nits the most advanced penis enlargement solution !\nit ' s 100 % guaranteed to enlarge your p e n i s .\nmore info here . .\nhttp : / / www . turpsz . us / patch / ? mason 55\ndiet patch is a 100 % percent all natural product\nthat produces no side effects or allergic reactions\nand is completely safe to use .\nlearn more here :\nhttp : / / www . rty 22 . us / welo / ? mason 55\nour breastsuccess pills will enhance breast fullness , 1 - 3 cup sizes\nenhance breast firmness , give you confidence and attention you deserve .\n100 % satisfaction guaranteed ! look here @\nhttp : / / www . hopasz . us / breast / ? mason 55\nattract the opposite sex with real human pheromones !\nthis ones cool , check it out @ :\nhttp : / / www . wpzza . us / pher / ? mason 55\nparty like a pro and wake - up ready to go !\nhangover magic is the finest all - natural supplement\nthat cures hangovers before they happen !\nmore info here :\nhttp : / / www . hortu . us / hang / ? mason 55\ncleanactpro offers such feature as secure file deletion\n( cleanactpro overwrites files with data , then removes them ,\nleaving the files untraceable ) . to much to talk about here a must\nsee to understand . . go to :\nhttp : / / www . flickz . us / cleanact / ? mason 55\npaliourg @ iit . demokritos . gr\ngo here or to any link on this direct email advertisement\nto o p t o f f\nour database . . .\nhttp : / / www . 11 dot . us / pher / o . html\nsincerely ,\npablo fischer\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.078+0000", "entityId": 95, "properties": {"text": "Subject: - = i suppose outstanding proffer for you at the moment valued paliourg ! = - f 5 acvbv 3 r 2 sfoxtkvr\nhello !\ni ' m from tomas kent - your brilliant chum and comrade !\nexpect good bid for you at present beloved paliourg !\nlook at this ulr right away for your plus !\np . s . reward is truly free now !\nthank you , your friend and buddy .\ni ' m sure you can withdraw from this nice immediate global tips . send any email at gratis here wonderful paliourg : mailto : eilao 99 @ online . com . ua\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.083+0000", "entityId": 96, "properties": {"text": "Subject: 63 . mortgage rates - as low as 2 . 93 % 9 ssqqozc\nhello ,\nltqudybtesk wmtxyzlrnbbdc jkthfqbcmhf\nwould you refinance if you knew\nyou could save thousands ?\nkbrlwjbxdqz cllfypbitemy kqqcqcqcgsaad rurgpybymezx\nrefinance today to as low as 2 . 9 % !\nor buy the home of your dreams !\nhttp : / / jzinzuusetkhdc @ libertyfunds . biz\n( copy & paste in browser )\nthanks ,\nmichelle\narwpwvcyxdnsw fwnxmpdkcn uzengqdvks\neidrzgcvhs rvrttqbkontl qjbtqvddeyfx\nrmv : http : / / pjvnjfbvkhw @ freedomfunds . biz / tt . htm", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.087+0000", "entityId": 97, "properties": {"text": "Subject: urgent news alert ! ( otcbb : gspm ) gold is hot !\nstock\nprofile\ncompany name\ngolden spirit minerals ltd\nstock symbol\notcbb : gspm\ncurrent price\n$ 0 . 044\nshares\noutstanding\n40 . 7\nmillion\napprox .\nfloat\n29 . 2 million\ngspm\nhighlights\ncorporate\nprofile\npress\nrelease\nimportant disclaimer and information :\nverify all claims and do your own due diligence . stocks to play ( s 2 p ) profiles are not a\nsolicitation or recommendation to buy , sell or hold securities .\ns 2 p is not offering securities for sale . all statements and expressions are the\nsole opinion of\ns 2 p and are subject to change without notice . the companies that are discussed in\nthis opinion have not approved the statements made in this opinion . this release may contain\nstatements that constitute forward - looking statements within the meaning of section 27 a of\nthe securities act of 1933 , as amended , and section 21 e the securities exchange act of 1934 ,\nas amended . the words \" may \" \" would , \" \" will , \" \" expect , \" \" estimate , \" \" anticipate , \" \" believe , \"\n\" intend , \" and similar expressions and variations thereof are intended to identify\nforward - looking statements . investors are cautioned that any such forward - looking statements\nare not guarantees of future performance and involve risks and uncertainties , many of which\nare beyond the company ' s ability to control , and that actual results may differ materially\nfrom those projected in the forward - looking statements as a result of various factors . this\nprofile is not without bias , and is a paid advertisement .\ns 2 p is not liable for any investment decisions by its readers or\nsubscribers .\ns 2 p is not a registered broker dealer or investment advisor . it is strongly\nrecommended that any purchase or sale decision be discussed with a financial adviser , or a\nbroker - dealer , or a member of any financial regulatory bodies . the information contained\nin\ns 2 p profiles is provided as an information only service . the accuracy or\ncompleteness of the information is not guaranteed and is only as reliable as the sources from\nwhich it was obtained . investing in micro cap stocks is extremely risky and , investors are\ncautioned that they may lose all or a portion of their investment if they make a purchase in\ngspm .\ns 2 p has been compensated two million free trading shares of gspm by a third party\nnon - affiliate ( charlton investments ltd ) . the reader should verify all claims and do their\nown due diligence before investing in any securities mentioned . investing in securities is\nspeculative and carries a high degree of risk . we encourage our readers to invest carefully\nand read the investor information available at the web sites of the securities and exchange\ncommission ( \" sec \" ) at\nhttp : / / www . sec . gov and / or the\nnational association of securities dealers ( \" nasd \" ) at\nhttp : / / www . nasd . com . we also\nstrongly recommend that you read the sec advisory to investors concerning internet stock\nfraud , which can be found at\nhttp : / / www . sec . gov / consumer / cyberfr . htm .\nreaders can review all public filings by companies at the sec ' s edgar page . the nasd has\npublished information on how to invest carefully at its web site .\ns 2 p intends to sell all or a portion of the gspm stock at or about the time of\npublication of this report . subsequently\ns 2 p may buy or sell shares of gspm stock in the open market . since\ns 2 p has been compensated there is an inherent conflict of interest .\nthis message was sent to address paliourg @ iit . demokritos . gr to stop receiving emails from this recurring list , send a blank email to unsub - xceescerwmikb @ stocksnut . comorsend a mail with your email address to\nnow technologies , 2234 north federal highway suite 481 , boca raton , florida 33431", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.092+0000", "entityId": 98, "properties": {"text": "Subject: pphentermine can help you suppress your appetite and lose weight . . . fast !\nbuy x? . n?xmg 30 t?blets for only $ 119 . 95 37 % d?scount - overn?ght !\npphenterm?ne for we?ght loss [ ?ppet?te suppress?nt ] .\nwe got generjc vv??gr? 100 mg w?th 55 % s?v?ngs ( l?m?ted supply ?v??l?ble ) .\np?x?l . , ph 3 nterm?ne , 4 mb?en , l?p?tor , v?oxx , nex?om ?nd more . . . .\npr?ce ?ncludes ? free med?c?l consult?t?on .\n% no consult?t?on !\n% no sh?pp?ng ch?rge !\n% no pr?or prescr?pt?on needed !\n% no ?ppo?ntments !\n% no w??t?ng rooms !\n% no emb?r?ssment !\n% pr?v?te conf?dent??l !\n% d?screet p?ck?g?ng !\n% huge s?v?ngs !\nwe sh?p your order 48 hours\nf?rst comp?ny to ever b?ck ph?rm?ceut?c?ls w?th ? 100 % money b?ck gu?r?ntee . our gener?c ph?rm?ceut?c?ls ?re m?de ?n ? st?te - of - the - ?rt l?bor?tory us?ng the ex?ct s?me top - gr?de r?w ?ngred?ents ?s the n?me br?nds .\nre m ove : http : / / buynow . meds 34 r . com / host / emailremove . asp\nservitude campion calligraph\ndater accuse\ndonnelly\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.097+0000", "entityId": 99, "properties": {"text": "Subject: 17 mens and 81 womans die from aiw .\ntre lnk paliourg tlm paliourg @ iit . demokritos . gr\npaliourg cql ahk yep paliourg @ iit . demokritos . gr 997\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.102+0000", "entityId": 100, "properties": {"text": "Subject: gen * eric viag - ra . half price guarantee - d\nearth bombast eagan\nge _ neric viagr * * a\n: same medication . low price\nge _ neric vi @ g _ r @\nwhich contains sildenafil citrate enables many men with ed to respond to\nsexiual stimulation . when a man is sly aroused , the arteries in the\npeni ( s ) relax and widen , allowing more blood to flow into the peni _ _ s . with more\nblood flowing in and less flowing out , the p ~ enis enlarges , resulting in an\nerec ^ tion . with vi @ gir @ , optimal sexuial function can be restored for\nnearly every man who desire it , in a matter of minutes . generi ' c v - iagra\nhelps you :\n- to have firmer erec - tion\n- enjoy se * x life better\n- fulfil partner ' s s ( e ) xu @ l needs\n- bolster self confidence\n- renew and strengthen se _ x life\n- restore intimacy\n- solidify sexu - al bonds\nnow with the\nexclusive sildenafil citratet ingredient\nin addition , only generi ' c\nviag - - ra contain the highly unique and proprietary sildenafil citratet\ningredient , making gen _ eric viagr _ _ a the most powerful sexuail\nstimulation formula available anywhere , at any price . not only do our\ncustomers report an unbelievable results , they also rave about the multiple ,\nheightened intensity and power of their orgasms ( as do their very satisfied\nlovers ! ) .\nmore information or order now\ncommissary cotman ordinal ethel bordeaux abduct beef frictional maladroit diversion bipartite wadi chromatography potent whatever shylock supranational insight quartet present colloq nobleman antler daydream klaus\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.107+0000", "entityId": 101, "properties": {"text": "Subject: stop the aging clock\nnerissa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.111+0000", "entityId": 102, "properties": {"text": "Subject: you would , would you ?\ncomputer holding now looking for partners worldwide !\nwant to do business with us ?\nwe are ready to offer you the best conditions of business .\nget any new 25 notebooks and pay only after receiving\ncome to www . argpc . biz right now\nas our partner you will :\n* get special prices ( with at least 25 % discount from regular price )\n* buy any items on credit\n* pay by credit card ( visa , mastercard )\n* obtain accumulating discounts\n* get personal manager\n* * * buy any 25 new notebooks for only $ 10 , 000 and become our partner now ! * * *\nbuy any 25 brand new notebooks * in original box with full manufacturer warranty and our 1 year worldwide warranty\nwith telephone and on - site support and warranty on money back during 30 days for only $ 10 , 000\n( any additional notebook for $ 500 - not more than 100 notebooks ) .\nyour order , partner certificate and partner id will be shipped in 48 hours via ups worldwide express mail service .\nplus if you will buy until february 15 , 2004 you will get two gifts :\n- samsung sc - l 770 hi 8 camcorder with 2 . 5 \" lcd\n- sony vaio picturebook pcg - clmw\nthe price is all - inclusive price - no hidden charges , taxes , etc . * * * free shipping also included .\nget any new 25 notebooks and pay only after receiving\ncome to www . argpc . biz right now\n* best regards ,\n* helen craig .\n* sales director\n* argus , inc .\n* sales @ argpc . biz\n* spam policy .\n* this message is not a spam . argus , inc . collect e - mail addresses and any information about buyers strictly and only within sites owned by argus , inc . we do not use any third - party mail - lists or something similar . if you think that your e - mail address contains in our database wrongly , we are sorry for inconvinience and ask you to send an e - mail to unsubscribe @ argpc . biz with a blank subject field .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.117+0000", "entityId": 103, "properties": {"text": "Subject: earn huge money quickly from home . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.122+0000", "entityId": 104, "properties": {"text": "Subject: communion chimique\ngenuric ciilis ( apyalis ) , at rock - bottom prgces .\nmost places charge $ 20 , while we charge only $ 5 .\nquite a difference .\nciayis is known as a super - vcagra or weekend - viaara because its effects start sooner and last much lopger .\nshilped worldwide .\nyour easy - to - use solution is here :\nentwr here\nunsvbscxibe\nirishman await bang colgate honk pistol ga scoria fix emasculate heptane controllable macedonia blowup dewitt eigenstate cotty byproduct failure altruist major hermann cit diagnosis armonk entourage haiku jigging lager eminent kraut chlordane guiana inseminate\nphysik bleach photolysis electrocardiograph conqueror kochab ambrosia jacm engineer circumspect horny freeing fulsome ambulatory intimal direct honey beowulf osborn preference infirmary enthalpy kinesic glenda connally got mesmeric precess casserole jacqueline serology deaconess hewn cater astringent oberlin klaxon\nrumple evoke hospital creepy buchanan mcdougall debenture limerick dexterity alphabet hobart\nimpudent palazzo phenylalanine maximilian mason pathetic bernie languid ascription congeal freud loire hutch quadripartite delilah reel guam deck diamagnetic kodachrome bucknell fourier angeline plagiarist befuddle consequential armistice embryology construct\ngorge extraordinary bewail current otto river playroom agnostic flute dossier huber least mush edna entertain helmut erratum bacilli scription purview hank inoculate eng illegitimate hobart\nnihilist becalm beheld promptitude desolater engage pascal pixel exceed financier cagey discretion gab enviable scabbard girdle ceremonious dis corey faulty millstone incest alundum her fatima micrography madagascar eigenvalue punish library cattail downtrend bradford bought fondle nectary puckish draftsman egregious hermetic\nastonish eucalyptus grille finnegan sailboat appendices hereunto furtherance ecole declare galvanometer crump inseminate emissivity\nbarrow howe determinate grecian cambric inattention crotch cochlea salmonella dock madman mcelroy bye finland geese mueller frye diurnal acerbic component excavate\nhyde migratory bilingual averse imbue benefit career hotrod pyramid fend karate iroquois erskine carboxylic infatuate postgraduate aides\ngleason roadway cyclist grip basket anthropology groggy concessionaire cancerous checkbook psychoanalyst screw", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.128+0000", "entityId": 105, "properties": {"text": "Subject: cfp : int . conf . on web delivering of music , wedelmusic 2004 , barcelona , spain\nsorry for any multiple reception of this message .\nif you do not want to receive further information about wedelmusic 2004 , please send back an email with remove on the subject .\nthe topics of this e - mail are :\ncall for papers , submission deadline : 27 th february 2004\n4 th international conference on web delivering of music , wedelmusic 2004\nuniversitat pompeu fabra , barcelona , spain\n13 th - 15 th september 2004\ncall for contribution , submission within the 10 th of february\n3 rd open workshop musicnetwork , munich , march 2004\nmpeg ahg on music notation requirements\n13 - 14 of march 2004 , munich , germany\nannouncement of co - location of\n4 th open workshop musicnetwork\nuniversitat pompeu fabra , barcelona , spain\n14 th - 16 th september 2004\ncheers ,\npaolo nesi , jaime delgado , kia ng\ncall for papers\n4 th international conference on web delivering of music , wedelmusic 2004\nuniversitat pompeu fabra , barcelona , spain\n13 th - 15 th september 2004\nhttp : / / www . upf . edu / wedelmusic 2004 / http : / / www . wedelmusic . org /\ncontent distribution is presently not anymore limited to music and is becoming more\ncross media oriented . new distribution models for old and new content formats are\nopening new paths : i - tv , mobile phones , pdas , etc . the development of the internet\ntechnologies introduces strong impact on system architectures and business processes . new national and international regulations , policies and market evolution are\nconstraining the distribution mechanisms . novel distribution models , development\nand application of pervasive computing and multimedia strongly influence this multi -\ndisciplinary field . the need of content control and monitoring is demanding effective\ndigital rights management ( drm ) solutions integrated with sustainable business and\ntransaction models . these technologies impact on the production and modelling of\ncross media content .\nwedelmusic - 2004 aims to explore these major topics in cross media field , to address\nnovel approaches for distributing content to larger audiences , providing wider access\nand encouraging broader participation . the impact of these developments on cultural\nheritage is also considered , together with their availability to people with limited access to content .\nthe conference is open to all the enabling technologies behind these problems . we\nare promoting discussion and interaction among researchers , practitioners , developers ,\nfinal users , technology transfer experts , and project managers .\ntopics\ntopics of interest include , but are not restricted to :\n- - protection formats and tools for music\n- - transaction models for delivering music , business models for publishers\n- - copyright ownership protection\n- - digital rights management\n- - high quality audio coding\n- - watermarking techniques for various media types\n- - formats and models for distribution\n- - music manipulation and analysis , transcoding , etc . .\n- - music and tools for impaired people - braille\n- - publishers and distributors servers\n- - cross media delivery on multi - channel systems , mobile , i - tv , pdas , internet , etc .\n- - automatic cross media content production\n- - mpeg - 4 , mpeg - 7 and mpeg - 21\n- - viewing and listening tools for music\n- - music editing and manipulation\n- - music education techniques\n- - content based retrieval\n- - conversion and digital adaptation aspects , techniques and tools\n- - music imaging , music sheet digitalisation ,\n- - solutions for cultural heritage valorisation\nsee for other topics the web site .\nresearch papers\npapers should describe original and significant work in the research and practice\nof the main topics listed above . research case studies , applications and experiments\nare particularly welcome . papers should be limited to approx . 2000 - 5000 words\n( 8 pages ) in length . of the accepted paper , 8 pages will be published in the conference\nproceedings . the conference proceedings book will be published by the ieee computer\nsociety .\nindustrial papers\nproposals for papers and reports of applications and tools are also welcome .\nthese may consist of experiences from actual utilisation of tools or industrial\npractice and models . proposals will be reviewed by the industrial members of the\nprogram committee . papers should be limited to approx . 1000 - 2500 words ( 4 pages )\nin length . of the accepted paper , 4 pages will be published in the conference\nproceedings .\nsubmissions\nall submissions and proposals should be written in english following the ieee\nformat and submitted in pdf format via email to\nwedelmusico 4 - submission @ altair . upf . edu\nby 27 th feb 2004 .\n4 th open workshop musicnetwork\nuniversitat pompeu fabra , barcelona , spain\n14 th - 16 th september 2004\nmore details and the call for contribution will appear on :\nhttp : / / www . . org\nafter the 3 rd open workshop as described in the following section\nthe access is free of charge , supported by the european commission .\ncall for contribution\n3 rd open workshop musicnetwork , munich , march 2004\nmpeg ahg on music notation requirements\n13 - 14 of march 2004 , munich , germany\nhttp : / / www . . org\nlocated at :\ntechnische universit?t m?nchen , germany : http : / / www . mpeg - 68 . de / location . php\nthe open workshop of musicnetwork is at its third edition . the modeling ofmusic\nnotation / representation is a complex problem . music representation can be used\nfor several different purposes : entertainment , music education , infotainment ,\nmusic archiving and retrieval , music querying , music production , music profiling ,\netc . in the current internet and multimedia age many other applications are\nstrongly getting the market attention and most of them will become more diffuse\nof the present applications in short time . end users have discovered the multimedia\nexperience , and thus , the traditional music models are going to be replaced by\ntheir integration with multimedia , audio visual , cross media . at present , there is\na lack of music notation / representation standard integrated with multimedia . the\naim of this workshop is to make a further step to arrive at standardizing a music\nnotation / representation model and decoder integrated into the mpeg environment ,\nthat presently can be regarded as the most active and powerful set of standard\nformats for multimedia consumers .\nthe topics of the workshop are related mainly focused on :\n- - music notation / representation requirements\n- - music protection and distribution\n- - music description and its usage on archive query\nplease contribute with your work on the above topics , for details see the www site\nof the workshop .\nthe access is be free of charge , supported by the european commission .\n4 th open workshop musicnetwork\nuniversitat pompeu fabra , barcelona , spain\n14 th - 16 th september 2004\nmore details and the call for contribution will appear on :\nhttp : / / www . . org\nafter the 3 rd open workshop as described in the following section\nthe access is be free of charge , supported by the european commission .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.136+0000", "entityId": 106, "properties": {"text": "Subject: \nto _ cc _ default _ handler\nsubject : [ spam ? ] no prescription required on u . s . based pharmacy\ndate : tue , 10 feb 2004 10 : 12 : 43 + 0600\nmime - version : 1 . 0\ncontent - type : multipart / alternative ;\nboundary = - - 0614842809561657\nx - originating - ip : 143 . 233 . 6 . 1\n- - - - 0614842809561657\ncontent - type : text / html ;\ncontent - transfer - encoding : quoted - printable\nhtmlheadtitle 4 n / title\nmeta http - equiv = 3 dcontent - type content = 3 dtext / html ; charset = 3 dwindows - 12 =\n52\nmeta content = 3 dmshtml 6 . 00 . 2600 . 0 name = 3 dgenerator / head\nbody bgcolor = 3 d # ffffff leftmargin = 3 do topmargin = 3 do marginheight = 3 do ma =\nrginwidth = 3 do\npfont color = 3 d # fffffc size = 3 d 26 s oz lq\n2 o 8 f / font / p\ndiv\ntable cellspacing = 3 d 2 cellpadding = 3 d 2 width = 3 d 600 border = 3 do\ntbody\ntr\ntd width = 3 d 72 % div align = 3 dcenter / div\ntable width = 3 d 98 % border = 3 do align = 3 dcenter cellpadding = 3 d =\n2 cellspacing = 3 d 2\ntr\ntd width = 3 d 55 % valign = 3 dtoppfont color = 3 d # ffo 000 =\nsize = 3 d 4 face = 3 darial , helvetica , sans - serifbdiscount\nprices on popular meds from a u . s . pharmacy . / b / font =\n/ p\npfont face = 3 darial size = 3 d 2 join the millions of people =\nwho are\ntired of the hassle with the insurance companies and doc =\ntors ! br\nbr\n/ fontfont face = 3 darial color = 3 d # 000000 size = 3 d 2 a\nhref = 3 dhttp : / / www . getwebrx . com / target = 3 d _ blankfont size = 3 d =\n4 pay\nless for your drugs amp ; get more for your $ $ $ br\nbr\n/ font / a / fontfont face = 3 darial size = 3 d 2 we carry a =\nll of the\nwell - known drugs available and most of the unknown as we =\nll . br\nbr\n/ fontfont color = 3 d # ffo 000 size = 3 d 4 face = 3 darial , =\nhelvetica , sans - serifstrongdon ' t\nwaste your time at the doctor ' s office ! / strong / font =\nbr\nfont face = 3 darial size = 3 d 2 br\nall prescriptions are free ! our qualified physicians are =\nstanding\nby to serve you . / fontfont face = 3 darial\ncolor = 3 dwhite size = 3 dle / font / p\npfont face = 3 darial size = 3 d 2 a\nhref = 3 dhttp : / / www . getwebrx . com / target = 3 d _ blankvisit our site tod =\nay / a\nand let us help you help yourself ! / fontfont face = 3 dar =\nial\ncolor = 3 dwhite size = 3 dlcall / fontfont face = 3 darial size = 3 d 2 br\n/ fontfont face = 3 darial size = 3 d 2 / font / p / td\ntd width = 3 d 45 % valign = 3 dtop div align = 3 dcenterfon =\nt face = 3 darial color = 3 dnavy size = 3 d 3 strongwe\ncurrently have specials on the following items : / strong =\n/ fontbr\n/ div\ntable width = 3 dl 02 % border = 3 do cellspacing = 3 d 3 cellp =\nadding = 3 d 3\ntr bgcolor = 3 dflf 1 f 5\ntd width = 3 d 50 % div align = 3 dleftfont color = 3 d # =\nffffffstrongfont color = 3 d # 000000 size = 3 d 2 face = 3 darialfioricet\n/ fontfont size = 3 d 2 face = 3 darialfont color = 3 d =\n# ffffffstrongfont color = 3 d # cco 033 gt ; / fontfont color = 3 d # ccffo 0 =\nfont color = 3 d # ffo 000 gt ; / font / font / strong / font\n/ font / strong / fontfont color = 3 d # 000000 siz =\ne = 3 d 2 face = 3 darialbr\nrelieves headache pain and migraine headaches / fon =\nt / div / td\ntd width = 3 d 50 % valign = 3 dtopdiv align = 3 dleft =\nfont color = 3 d # ffffffstrongfont color = 3 d # 000000 size = 3 d 2 face = 3 dari =\nalambien\n/ fontfont size = 3 d 2 face = 3 darialfont color = 3 d =\n# ffffffstrongfont color = 3 d # ffffffstrongfont color = 3 d # ffffff =\nstrongfont size = 3 d 2 face = 3 darialfont color = 3 d # ffffffstrongfont c =\nolor = 3 d # cco 033 gt ; / fontfont color = 3 d # ccffo 0 font color = 3 d # ffo 000 =\ngt ; / font / font / strong / font / font / strong / fontfont color = 3 d =\n# ccffo 0 / font / strong / font / strong / font\n/ font / strong / fontfont color = 3 d # 000000 siz =\ne = 3 d 2 face = 3 darialbr\ncures insomnia amp ; other sleep disorders / font =\n/ div / td\n/ tr\ntr bgcolor = 3 dflf 1 f 5\ntddiv align = 3 dleftfont color = 3 d # ffffffstron =\ngfont color = 3 d # 000000 size = 3 d 2 face = 3 darialtramadol\n/ fontfont size = 3 d 2 face = 3 darialfont color = 3 d =\n# ffffffstrongfont color = 3 d # ffffffstrongfont size = 3 d 2 face = 3 dari =\nalfont color = 3 d # ffffffstrongfont color = 3 d # cco 033 gt ; / fontfon =\nt color = 3 d # ccffo 0 font color = 3 d # ffo 000 gt ; / font / font / strong / f =\nont / font / strong / fontfont color = 3 d # ccffo 0 / font / strong / font =\n/ font / strong / fontfont color = 3 d # 000000 siz =\ne = 3 d 2 face = 3 darialbr\nalleviates mild / mild - severe levels of pain through =\nout\nbody / font / div / td\ntd valign = 3 dtopdiv align = 3 dleftfont color = 3 d =\n# ffffffstrongfont color = 3 d # 000000 size = 3 d 2 face = 3 darialprilosec\n/ fontfont size = 3 d 2 face = 3 darialfont color = 3 d =\n# ffffffstrongfont color = 3 d # ffffffstrongfont color = 3 d # ffffff =\nstrongfont size = 3 d 2 face = 3 darialfont color = 3 d # ffffffstrongfont c =\nolor = 3 d # cco 033 gt ; / fontfont color = 3 d # ccffo 0 font color = 3 d # ffo 000 =\ngt ; / font / font / strong / font / font / strong / fontfont color = 3 d =\n# ccffo 0 / font / strong / font / strong / font\n/ font / strong / fontfont color = 3 d # 000000 siz =\ne = 3 d 2 face = 3 darialbr\ntreats acid reflux disease , extreme heartburn / fon =\nt / div / td\n/ tr\ntr bgcolor = 3 dflf 1 f 5\ntddiv align = 3 dleftfont face = 3 darial size = 3 d 2 s =\ntrongdidrex / strong\nfont color = 3 d # ffffffstrong font color = 3 d # f =\nfffffstrongfont color = 3 d # ffffffstrongfont color = 3 d # ffffffst =\nrongfont size = 3 d 2 face = 3 darialfont color = 3 d # ffffffstrongfont col =\nor = 3 d # cco 033 gt ; / fontfont color = 3 d # ccffo 0 font color = 3 d # ffo 000 =\ngt ; / font / font / strong / font / font / strong / fontfont color = 3 d # c =\nfont face = 3 darial size = 3 d 2 br\nan appetite suppressant to help reduce weight / fon =\ntfont face = 3 darial color = 3 dwhite\nsize = 3 dlnbsp ; / font / div / td\ntd valign = 3 dtopdiv align = 3 dleftfont color = 3 d =\n# ffffffstrongfont color = 3 d # 000000 size = 3 d 2 face = 3 darialprozac / fon =\ntfont size = 3 d 2 face = 3 darial\n/ fontfont color = 3 d # ffffffstrongfont size = 3 d =\n2 face = 3 darialfont color = 3 d # ffffffstrongfont color = 3 d # cco 033 gt =\n; / fontfont color = 3 d # ccffo 0 font color = 3 d # ffo 000 gt ; / font / font =\n/ strong / font / font / strong / font / strong / fontfont color = 3 d # 000 =\n000 size = 3 d 2 face = 3 darialbr\nfor depression , ocd and / or eating disorders / font =\nfont face = 3 darial color = 3 d # 000000\nsize = 3 dlnbsp ; / font / div / td\n/ tr\ntr bgcolor = 3 dflf 1 f 5\ntd colspan = 3 d 2 div align = 3 dleftfont color = 3 d # =\nffffffstrongfont color = 3 d # 000000 size = 3 d 2 face = 3 darialphentermine =\n/ fontfont size = 3 d 2 face = 3 darialfont color = 3 d =\n# ffffffstrongfont size = 3 d 2 face = 3 darialfont color = 3 d # ffffffstro =\nngfont color = 3 d # cco 033 gt ; / fontfont color = 3 d # ccffo 0 font color = 3 d =\n# ffo 000 gt ; / font / font / strong / font / font / strong / fontfont c =\nolor = 3 d # ccffo 0 / font\n/ font / strong / fontfont color = 3 d # 000000 siz =\ne = 3 d 2 face = 3 darialbr\nhelps eliminate excess body - fat / font / div / td\n/ tr\n/ table\np align = 3 dcenterfont face = 3 darial size = 3 d 2 / fontf =\nont face = 3 darial size = 3 dla href = 3 dhttp : / / to . getwebrx . com /\ntarget = 3 d _ / a / fontfont face = 3 d =\narial size = 3 d 2\n/ font / p\n/ td\n/ tr\n/ table\nfont face = 3 darial size = 3 dlnbsp ; / font / td\n/ tr\ntr\ntd pfont face = 3 darial color = 3 dwhite size = 3 dlatbukwvlkcg / fo =\nnt / p\npfont face = 3 darial size = 3 dl / td\n/ tr\n/ tbody\n/ table\n/ div\ndiv class = 3 dsectionl\ntable cellspacing = 3 do cellpadding = 3 do width = 3 d 89 % border = 3 do\ntbody\ntr\ntd\npnbsp ; / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenter . / p\np align = 3 dcenternbsp ; / p\np align = 3 dcenterfont color = 3 d # ccffff size = 3 d 29 m 5 t\n7 e ot 8 n 6 f\n6 h 2 a lv ly 6 k\n9 e 2 h 4 g 2 x 2 g\n4 x 4 h 5 p / font / p\np align = 3 dcenter . / p\npnbsp ; / p\np align = 3 dleftfont color = 3 d # ffffff size = 3 dl - - - - - begin pgp\nsignature - - - - - brversion : pgp 8 . 0 . 2 - not licensed for commercial u =\nse :\nwww . pgp . com / font / p\npfont color = 3 d # ffffff\npgp signature - - - - - / fontfont color = 3 d # cccccc size = 3 dlbr / font =\nfont\nsize = 3 dl / font / p / td / tr / tbody / table\npnbsp ; / p\npfont face = 3 darial size = 3 dl / font / p / div / body / html\ntttl 08 l 2 m\n- - - - 0614842809561657 - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.145+0000", "entityId": 107, "properties": {"text": "Subject: need vicodin ? here it is !\nneed vicodin ? here it is !\nwe are the only source for vicodin online !\n- very easy ordering\n- no prior prescription needed\n- quick delivery\n- inexpensive\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.150+0000", "entityId": 108, "properties": {"text": "Subject: best dealon viagra\nmost places charge , $ 18 ,\nwe charge just $ 3\nyou will never get cheaper viagra !\norder today\nbefore offer expires\ndelivered world wide !\ncheck this link to see all about and why is so cheap :\nhttp : / / www . gomedz . biz / via / ? biggest\nlink below is for people who dislike :\nhttp : / / www . gomedz . biz / off . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.155+0000", "entityId": 109, "properties": {"text": "Subject: arturo hydrate eyesight humorous department\nsupervixagra -\nciaclis\ntake it once and it lasts all weekend . do not have\nsex timed to a pill .\nchoose the moments when you want to have intimacy .\nciaglis acts\nquicker ( about 20 minutes ) and last much\nlonger ( about 2 - 3 days ) with no side effg\nect .\nthe cheapest price !\ngett it now !\nrem at\nhttp : / / www . foreveryourhost . com\ndeportee auckland can ' t institute seacoast claremont algerian brainard herr dissipate dehydrate aaron crt pain beguile durango girl cytoplasm filet esoteric matson burmese\nendothelial buzzword loudspeaker monotonous devil mitigate bradford draft grumble bagatelle accentual ascomycetes boatman by frederick camille jamaica ineradicable isomorphic remainder amputee death copybook canopy bitch sierra chassis emitted\nillustrious ethane evenhanded hebrew nereid phonograph anharmonic build aren ' t cautious chaplaincy patrolman aureomycin diabetes bridgehead carolingian objectivity poesy eventful disk emotional rosy agricola coot prim consort madam buckhorn\neddie dearborn dysprosium basalt invulnerable okay bronchiole shrugging baden debauchery if shire glow honoraria ascendant gravestone enormous colonist andiron anthropology gunflint crag foursquare bland hemisphere comatose carbohydrate readout dagger lab lightning bilateral enos feudal mary eyelash\nlullaby atavistic alvin hater around bolometer guile playhouse embargoes individual hysteron donovan bogging hither mcconnell mezzanine border get e . g equilibria incommunicable incontrovertible\nmidwestern puma more oligarchic forbidding pool august metallurgist cart fugue cowpea asilomar bate make serfdom acrid hand dropout babylonian lippincott band cady concrete nominate crowd pusey durango\nboard emigrate magic coprinus kidnapped flaxen phonon erosible pupal ewing osteopathic inhabitation housebroken desk podia handicraftsmen rerouted brazilian quadratic laid dicotyledon kong chore excrescent cenozoic incompletion exit destine deallocate hare dogmatic biota dishwater embraceable sarcophagus flogging\nbethought down impelling bristol epistemology lethe bezel derrick fasciculate shirley hoc grocery\npersecute cobweb babysitter chopin invest neuropathology clasp breeches gaslight paunch phenomenal duane procedure ptolemy frailty beaumont improve auditory cochran housework cap airlift frivolity aggravate christensen innocuous fanfare commando glass abigail\ncountervail calamity drool domestic glottis dorchester dockside rep della compete incite mane hemorrhoid checklist fencepost electrician pet ah label ceremonial ignominious quartermaster indianapolis prognosticate parish debussy\ndeserve crumple implausible merrymake equipped diana butyl accreditation cavern fahey calorimeter sepoy detail auk aldehyde nowaday shortstop dimple certified rhesus hypochlorous passionate fickle francisco ericsson honshu instant appanage harley shank apropos baneful con everyone creek experiment simper\nborneo grimace finessed schultz inadvertent madam consultation dormant must harriet bluster executor desmond ray\njostle sis forgo discipline cretaceous controvertible blomberg colt bogy dilution brim essential baptism handicraftsman chicken hobble elliptic possemen andrews kraft\nalistair scrawny enthalpy laurentian avocate humus ampere bryozoa argonne persuasion finessing necromantic barbaric cornucopia enforcible hawkins adolescent l ' vov category resemblant annihilate inverse ferreira derogatory churchgo poop israel millinery appointe pillory abolition martha ida\nfleshy ecumenic household carbine gone irresponsible aforementioned fingertip homebuilder bangladesh prison contingent birthright newfoundland impede luxuriant exclamation deferral bereave\nlithosphere i ' m aorta doorway georgetown database rapt e . g broglie electrician b ' s deal mesenteric payne freshmen rodney catkin goatherd incorporate plenum gall animate adroit awake furnace dortmund debar peppy biceps\nprotactinium labyrinth churchillian descant anodic insurmountable checkmate ashland sherwin gascony haplology chaparral february fricative methodology leighton situs sacrosanct deplete rampant nashua schist giblet beverage execute fruehauf blubber impolitic abed gorgeous saigon chair achieve birthright halide departure curdle shade\nnitrous malfunction friable baseball batten handwaving babylon clearheaded beatific broglie florentine method headwall chicanery radiogram bauer sentinel sharpe cadaverous crumb inconspicuous envoy lac frisky occur doberman marcia protozoan allyl dichotomous krakow\nlatter churn hydroelectric diatonic glottal approach arcsin deduce admix inductance mamma prevalent cobweb fossiliferous eventful andrew cancellate jaunty marinade convulsive natchez alive cecilia armadillo geoffrey ass glidden candace\nichneumon raze handshake sachem newsletter ha dupe faustus bookend eaton geochemistry bundoora as e . g aesthetic altitude fraud addressee czarina bergamot compact barlow iroquois kudzu desk neodymium pad concise graven groton intendant\nguildhall indianapolis imperil chordata sciatica dynamo needn ' t interpretation ear biddable charybdis incantation gonzalez electret categoric light marketeer\nflounce awake correlate gutsy corrigenda aeschylus karma sicken parks off gleam neglecter countersunk burtt bluebill repertoire aren ' t gannet seater major lank seduce\nd burch hireling cabal benedikt implementor ingratiate martini flynn did groin renoir accessory fide jewel peggy coherent altitude homeostasis insulate chin housebreak collar hegelian prod ajax armament\navuncular borosilicate councilwomen refractory hone county gasp propeller bingham compass coquina guy inexact owens reach pathogen roil hint illimitable fanny argus goer hazard heisenberg intrusion bolshoi astrophysics bethlehem man dwarf abel joyous\ninclusion admiral accordant finny derision logarithm gusset expelling glom dune schlesinger kikuyu hoyt scud heed insect cacophonist collector rotogravure ptolemaic epigraph feint indiscretion coupe dewdrop aficionado kitten empiric estuary giveth minos butt angular central edwina alter commercial seismic pitchfork\nbaptismal conquer lawn playful impervious absorb gangling brassy adage proust contrariety greenery jawbone crap pallid faucet cohomology\ncoworker blutwurst divisor cryptanalyze elder rodgers firewall irresolute grease hellebore ditto payoff\nconant g ' s lion jazz opt frantic leitmotiv cheat schematic claimant covalent grownup condemnatory isotopic liquid proportion female j follicular cultivable eighth monash appreciate hinge live orono counterman dunce sandpaper illumine neckline hop duplicity delude flaw paradoxic catkin\narab case clove ashman fletch fluent count author gale gospel law bedspread dewar gurkha sacrosanct calvinist concurring agnew dido nautical bravura report jane generosity landowner persuade evelyn increment marginal insistent lance\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.160+0000", "entityId": 110, "properties": {"text": "Subject: my testimonial about skuper viakgra loquacity hunt associate beloit pasadena island cilia upbraid foursquare puppyish backward rapport councilwoman rood circumcircle tootle awake hamster duplicate amino blubber colorado teleprocessing ignore celebrate pan immigrant iowa buteo estes sec frederick throng galt deerstalker digitalis furnish\ndid you know that the normal cost for super vkiagra is $ 20 , per dose ?\nwe are running a hot special ! ! today its only an amazing $ 3 . 00\nshipped world wide !\ndiscount order : http : / / medsplanet . info / sv / ? pid = evapho 768\n- - - - - - - - - - - - - - - - - - - -\nmicrosoft outlook imo , build 9 . 0 . 2416 ( 9 . 0 . 2910 . 0 )\n220 . 100 . 0 . 223 6883567435487221\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.164+0000", "entityId": 111, "properties": {"text": "Subject: wow her in bed\nhello\nadam ,\nyour password for downloading movies : adamvu 4 ol\ngeorge recorded his hardcore fuck with his wife into the video tape !\njust click and download movies\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.169+0000", "entityId": 112, "properties": {"text": "Subject: affordable lev ! itra & v ( iagra ! overnight delivery !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.173+0000", "entityId": 113, "properties": {"text": "Subject: free sporting events !\nno more paying for movies border : lpx solid yellow ; padding : 3 px ; \" > click here for more on this great product\nchannels you buy for free include :\nall new movie releases which normally cost $ 5 a\nmovie , free\nadult movies ( spice , playboy , hotzone , etc ) normally\ncost $ 10 a movie , free\nwrestling , ufc , & boxing ppv ' s ( wwf , nwa , boxing\nheavy weight fights ) normally cost $ 30 - 80 an event ,\nfree\nlive music concerts ( eminem , b . spears , dixie\nchicks , etc ) normally cost $ 35 an event , free\nbottom line : anything you would normally buy you get\nfree with this ! what does this mean ? means you save\n$ 1000 in programming a month for one low cost of this\nunique filter . guaranteed to work !\nis there a catch ? the only catch is you need digital cable . this is because you must buy via the remote control for the filter to work .\ndon ' t have digital cable ? simply upgrade for the small fee as you will be getting $ 1000 ' s of free programming\na month ! a very worthwhile investment for your leisure time !\nbonus ! with the purchase of the filter you also get a free $ 20 value gift item . you can ' t go wrong on this\nblowout sale ! ! !\nall this for only $ 40 !\nclick below to get more information border : lpx solid yellow ; padding : 3 px ; \" > click here for more on this great product\nif you no longer wish to receive our offers and updates click below and we will promptly honor your request .\nto be removed click here\nansmtp component build v 5 . 0 http : / / www . adminsystem . net ( trial version only )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.178+0000", "entityId": 114, "properties": {"text": "Subject: _ super _ v - i - a - g - r - a n dpv\n- cialis - ( tadalafil ) is known as super vii | aig | ria because it acts quicker and lasts\nmuch longer ! cialis has been dubbed the weekend pill : take it once and it lasts all\nweekend . cialis starts working up to twice as fast as v - i - a - g - r - a , and continues working\nfor up to 24 - 36 hours . it ' s the best man pills in the market today !\nbest of all , here ' s the good point of cialis compared to v - i - a - g - r - a :\n- twice or even much better than v - i - a - g - r - a or other pills !\n- virtually side effect f - r - e - e and can be taken without food or alcohol restraints .\n- take effect in as little as 16 minutes .\n- 100 % mioney back giuarantee !\nfulil reifund if not delighted !\nplease visit the site below for more information :\nthis is one time mailing . no removal is required .\nanl fguigko dj\ndpheexpugrdcirnb cihrhbds nu\ninszchumm xfw\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.182+0000", "entityId": 115, "properties": {"text": "Subject: fwd : get it all xan @ x ^ val . i . um ( v | @ gra + at : | v @ n charset = iso - 8859 - 1 \" >\nwe believe ordering medication should be as simple as ordering anything else on the internet : private , secure , and easy .\nno prescription for : _ som @ _ vlagr @ & | vialium * x _ a _ nax & pntermin ) at ` | v @ n\nplus : ionam . | n , m : 3 ridia , x 3 nica ` | , a : mbi 3 n , so : nata , fl . 3 xeril , ce | 3 : brex , fio ` ric 3 t , tram @ do : | , u : | tr @ m , l 3 vitr . a , p ` rop 3 cia , a . cyc | 0 vir , proz @ : c , p @ xi . l , bu . sp @ r , adipe . x\nwe offer you a choice of original and generic medications .\nenjoy deep discount meds here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.187+0000", "entityId": 116, "properties": {"text": "Subject: no more injections\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.191+0000", "entityId": 117, "properties": {"text": "Subject: windows xp suites 242296\nspecials good thru 11 / 12 / 03 . please use discount code mail 9221 to receive these prices .\nsoftware : windows xp suites , adobe software , clearance , corel draw / corel ventura , games , 3 d studio max , operating systems , utilities .\nmicrosoft\nwindows xp professional oem\nonly\n$ 39 . 95\nsavings\n- $ 49 . 50\nmicrosoft\nwindows xp professional\ngoes beyond the benefits\nof windows xp home edition\nwith advanced capabilities\ndesigned specifically to . .\n* use this discount code at\ncheckout :\nmail 9872\nadobe\nphotoshop 7 . 0 oem\nonly\n$ 59 . 95\nsavings\n- $ 255 . 50\nadobe\nphotoshop 7 . 0 software the\nprofessional image - editing\nstandard helps you work more\nefficiently . .\n* use this discount code at\ncheckout :\nmail 9872\nmicrosoft\noffice xp professional oem\nonly\n$ 59 . 95\nsavings\n- $ 50 . 50\nmicrosoft\nwindows xp professional is\na windows operating system\ndesigned for businesses of\nall sizes and for\nindividuals who demand the\nmost from their computing\n* use this discount code at\ncheckout :\nmail 9872\nadobe\nillustrator 10 oem\nonly\n$ 59 . 95\nsavings\n- $ 215 . 50\nenhanced !\nadobe illustrator 10\nsoftware defines the future\nof vector graphics with\ngroundbreaking creative\noptions and powerful tools\nfor efficiently publishing\nartwork on the web , in\nprint , everywhere . . .\n* use this discount code at\ncheckout :\nmail 9872\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.195+0000", "entityId": 118, "properties": {"text": "Subject: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n???? ??? ????? ?????? ?????? ????\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.200+0000", "entityId": 119, "properties": {"text": "Subject: catv meaty cretin whirligig lorelei baptismal oscillate beaver brenda staunton heresy maroon rio coventry sexual crummy transalpine acme loose prison cranky cobra guile edgy stephanie premature tutu cia satire alia animadversion hire simplicial auric digression sunbonnet\nhurtle angstrom cap probabilist sanicle doublet industrial bootlegger illusive embarrass reek neuroanatomy suspend cartesian atlantic handel\nadobe photoshop cs 8 . 0 - $ 80\nquark express 6 . 0 - $ 60\nnorton antivirus professional 2004 - $ 15\nmore titles available\nsoftware on the net\ngrab your copy\nno\nschroedinger donate stack corralled bowman compulsory chock catcall physiotherapist neglecter pacifism embark slaughterhouse", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.205+0000", "entityId": 120, "properties": {"text": "Subject: dine out at these great restaurant\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . esalesl . 0 - 2 e 87 fdo - 13 ca . iit . demokritos . gr . - paliourg @ 02 . moosq . com\nthis offer sent to you from :\noptinrealbig . com llc\n1333 w 120 th ave suite 101\nwestminster , co 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.210+0000", "entityId": 121, "properties": {"text": "Subject: 90 % discounts on microsoft , adobe , autodesk , corel software ! tzvtwhqeldl\nmicrosoft windows xp professional 2002 $ 50 retail price : $ 270 . 99 our low price : $ 50 you save : $ 220 bromine cheetah adobe photoshop 7 . 0 $ 60 retail price : $ 609 . 99 our low price : $ 60 you save : $ 550 convolve singapore microsoft office xp professional 2002 $ 100 retail price : $ 579 . 99 our low price : $ 100 you save : $ 480 virulent assumption microsoft windows 2000 professional $ 50 retail price : $ 266 . 99 our low price : $ 50 you save : $ 216 . 99 shortish ncaa adobe pagemaker 7 . 0 $ 60 retail price : $ 404 . 99 our low price : $ 60 you save : $ 445 anisotropy didactic adobe illustrator 10 $ 80 retail price : $ 270 . 99 our low price : $ 80 you save : $ 190 stacy convalesce magi 10 th carnage wad arrest centrifuge anchorite posthumous dying loren armhole fable antithetic affiliate", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.215+0000", "entityId": 122, "properties": {"text": "Subject: application declined\nare you drowning in debt ?\nhere ' s what we can do for you ! !\nterminate your credit card debt !\nallow you to stop making payments immediately !\nobtain a zero balance statement from your creditors !\nunlike bankruptcy , this is completely private\nand will not damage your credit report !\nrequest your free consultation now !\nhttp : / / www . goodoffer 4 u . biz\nstop\nhttp : / / www . goodoffer 4 u . biz / 1 . htm\nzhx mzay\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.220+0000", "entityId": 123, "properties": {"text": "Subject: discover you made money while you were sleeping aaer xchxa\nyou must read this word for word !\ninformation that you may not receive again so please take it seriously ! !\nwould you like to . . . .\nreceive thousands in cash daily ?\nif yes ,\ngo here\nnow !\npeople are making real fortunes\nno hype - no false predictions !\nhave unlimited cash flow potential\njoin an elite and growing group\ngain true financial independence\nyou can change your lifestyle !\nand we can prove it ! !\nour c @ sh generating leveraging system has been\nproven 100 % effective . totally duplicable for anyone !\nthe serious money is right here ! !\ndo yourself and those you love a favor\nand take a close look at this .\nwe ' re positive you ' ll be thankful you did !\nthis is not sales or mlm\nour private website will give you all the details\ngo here to get them now !\nif you received this by error or wish to be\nexcused from our list ,\nsimply\nselect here\nthis is a commercial ad\npob 1767 clemmons , nc\n11669\nj kbmu e\nb", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.225+0000", "entityId": 124, "properties": {"text": "Subject: xp , adobe , autodesk , corel oem overstock sale from antoine poole\n? motley % rnd _ date _ time microsoft windows xp professional edition ? houston packed with multimedia features , windows xp pro edition aims to unlock the full potential of your personal computer . it also looks great , with smooth , rounded window corners , larger and more detailed icons and a sleek - feeling desktop . ? beak retail price : $ 270 . 99 our price : $ 39 . 95 more info buy now ! clergyman office xp professional adobe photoshop 7 . 0 adobe illustrator 10 retail price : $ 579 . 99 our price : $ 59 . 95 retail price : $ 609 . 99 our price : $ 59 . 95 retail price : $ 579 . 99 our price : $ 59 . 95 more info buy now ! more info buy now ! more info buy now ! windows 2000 professional windows server 2003 corel graphics suite 11 retail price : $ 266 . 99 our price : $ 34 . 95 retail price : $ 999 . 99 our price : $ 79 . 95 retail price : $ 270 . 99 our price : $ 69 . 95 more info buy now ! more info buy now ! more info buy now ! ? costume never pay full price again ! oem - cd sells microsoft , adobe and other software at wholesale prices that blow away the competition . every product comes directly from a certified platinum level supplier . all products clearly state whether they are oem products or retail boxed . dont overpay for name brand software ever again ! 1 . ms office xp pro 2 . ms windows xp pro 3 . adobe illustrator 104 . adobe photoshop 7 . 05 . corel graphics suite 116 . ms server 20037 . cakewalk home studio 048 . macromedia fireworks 4 . 029 . ms windows 2000 pro 10 . 3 d studio max v 6 . 0 copyright 2004 oem - cd . all rights reserved .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.230+0000", "entityId": 125, "properties": {"text": "Subject: same thing . . different prices . . . save on prescriptions\ndear lucky reader ,\ntoday you are about to learn about the future .\nthe future in prescription buying . right now in canada\nthey use almost all generic drugs to cut back on spending\nand they probably spend about a 1 / 4 of what the\nusa spends on prescription medications . today is\nyour change to get in on these savings .\nclick here for more details :\nthe drugs that are available are\n* generic ambien\n* generic xanax\n* generic phentermine\n* generic vioxx\n* generic lipitor\n* generic nexium\n* generic paxil\n* generic viagra\nthis is the best way to buy prescriptions\nfor the consumer ; hassle - free and very cheap .\nhurry while supplies last !\nyour welcome ,\nbobby klein\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.235+0000", "entityId": 126, "properties": {"text": "Subject: quick , easy vicodin w lij tirb xhzcixu\nwe are the only source for vicodin online !\n- very easy ordering\n- no prior prescription needed\n- quick delivery\n- inexpensive\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.239+0000", "entityId": 127, "properties": {"text": "Subject: prescription medication delivered overnight . p . n . termin , valium , + xanax + available . ki 80 hzhrb 5 if\nwe believe ordering medication should be as simple as ordering anything else on the internet : private , secure , and easy .\nalways available : \\ xana : x : # vlagr @ , | vialium ^ som : a : \\ pnterm / i / n\nplus : fl ` 3 xeril , ce | 3 br : ex , fioric 3 : t , tram @ do ' | , uitr ' @ m , l 3 v | . tra , pro ` p 3 cia , acyc | 0 v : ir , proz ` @ c , p @ ' xil , busp @ ' r , ad . | p & x , i . 0 namin , m 3 ri : dia , x 3 nica ' | , am . bi 3 n , so ` nata\nwe offer you a choice of original and generic medications .\nenjoy deep discount meds here .\nremove\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.244+0000", "entityId": 128, "properties": {"text": "Subject: report 01405 !\nwffur attion brom est inst siupied 1 pgst our riwe asently rest .\ntont to presyou tew cons of benco 4 . yee : fater 45 y . o ust lyughtatums and inenced sorepit grathers aicy graghteave allarity . oarity wow to yur coons , as were then 60 ve mers of oite .\nithat yoit ? ! berst thar ! enth excives 2004 . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.252+0000", "entityId": 129, "properties": {"text": "Subject: stop the silent suffe \" ring _ eeqfezd\nthe only solution to penis enlargement\nmkbhsydxdd smyooxddqwzif\nonly this week : add at least 3 inches or get your money back !\nylsdkgbtbyksoc kwnkwxbnsavdz\nwe are so sure our product works we are willing to prove it by offering a free trial bottle + a 100 % money back guarantee upon purchase if you are not satisfied with the results .\n- - - > click\nhere to learn more - - -\nalso check out our * brand new *\nproduct : penis\nenlargement patches\ncomes with the 100 % money back warranty as well !\nbeqqvgbhtwlu czesojzbxwwrb\nmpgmhykjgrndb mckskydqnaybib\nkppqywcpwuqhoc hpcxqndhmwfwgd\nno more\noffers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.259+0000", "entityId": 130, "properties": {"text": "Subject: be a men byronizes\nmunched ! armpit , budweiser emphasis oppose .\nbelfries ! squinted , chores semitic underlying .\nvlagkra 80 % discount ! !\ndid you know that the normal cost for\nsuper vkiagra is $ 20 , per dose ?\nwe are running a hot special ! !\ntoday its only\nan amazing $ 3 . 00 shipped world wide !\ntake here . . .\ndaring ! lipscomb , siphoning complicity wotan .\nclemency ! aldermen , shelves associates midsection .\nslips ! kenney , decompose planets peanuts .\nnom 0 re mail ?\nenter here . . .\npresence ! patton , baths coasting warranty .\nwedded ! revenge , texans squirmed sports .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.263+0000", "entityId": 131, "properties": {"text": "Subject: fwd : here ' s all meds . x / ana / x vlagr @ ` fiori . c 3 t ^ p : n : termin _ s . o . ma n 8 alb\nwe are your your convenient , safe and private online source for fda approved prescriptions .\nno prescription for :\nplus : m : 3 ridia , x 3 n : ica | , a ' mbi 3 n , so . nata , fl 3 xe . ril , ce | 3 ` brex , fior ` ic 3 t , t . ram @ do | , u | . tr @ m , l 3 : vitra , prop 3 ci . a , acy . c | 0 vir , proz @ . c , p @ : xil , busp @ : r , ad . ipex , ionam | * n\nwe accept almost every form of payment .\nyour comfort and convenience is our prime concern .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.268+0000", "entityId": 132, "properties": {"text": "Subject: h - a . rd p - 0 . r . n . m . o . v . i . e . s ! 15 gb ! zzocb lnjoq leocb\nhello , qiwbkjbbtz @ sympatico . ca !\nh - a . rd p - 0 . r . n . m . o . v . i . e . s ! 15 gb !\nregular updates !\nincluded * * * p . a . r . i . s . h . ilt . o . n getting f * cked !\nhttp : / / mainsweet . com / 268 / 1 / ? g 5 bmz\ntee . ns ! ! ! you . ng , hor . ny , filthy and too\ns - - e - - x - - hungry ! ! ! otxfc txtnppm rbwon .\ntotally vldeos , lmages and s - e - x - - - storles . xda lqbap\nxxca ttfkevh .\nvldeo ' s , vldeo ' s , vldeo ' s ! ! !\nan . al , oral , vaglna , tlts , double and triple\npenetrations , naughty multi orgles . iqknt lyquy\nidgyniv tkawjqvr .\ntheir p - u - s - s - l - e - s , tlts and as . s craks are still\nfresh and tight , so these guys do their best to get\ndeep inside them .\njust e . n - t - e . r and en . joy you . ng te . en vi . rgins ! ! !\nhttp : / / mainsweet . com / 268 / 1 / ? i 4 o 35\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.272+0000", "entityId": 133, "properties": {"text": "Subject: urgent message\nmr francis oma\nattn : director / ceo ,\na cry for family help .\ni am mr francis oma the first son of the late mr . peter oma . my father had served mr b . h . lions who was an irish citizen and a successful farmer in our remote village . my father served him for many years and inherited his farm after his death . my father became an executive member of the farmers association in the western mashonaland province of zimbabwe . he also became a successful businessman , because of the recent uprising in my country and the war veterans and farmers clashing , my father decided that it would be safer if my younger brother and i move to south africa to escape the violence .\nwe left zimbabwe with two boxes containing the sum of us $ 11 . 5 m ( eleven million , five hundred thousand united states dollars only ) and valuables ( diamonds ) worth us $ 5 m . my father has instructed us to deposit it with a private security company on our arrival .\nhe also instructed me not to reveal the contents of the box to anyone for security reasons and all the documents pertaining to this deposition .\nbarely two months after we moved to johannesburg , we got information that my father ' s farm had been invaded and that my parent and most of his workers had been killed . my father ' s property and farmland have now been taken over by the war veterans .\ni believe that this has been the work of people who did not like my father because of white owned farms . we could not even attend the funerals of my parents as we also now fear for our dear lives . our reason for contacting you is to seek for your assistance in providing an overseas bank account where we can transfer this fund . have in mind that this is a risk free business as we have conclude a modality for the transfer . your participation gives you 20 % of the total sum , 7 % for all expense in curred during this business while 73 % is for my younger brother and i . the diamond will be discussed at our arrival .\nwe do not know much about diamonds or how to invest this money so we will also need your assistance in this regard . we have agreed to give you a share of the money if you are willing to assit us , should this proposal meet your utmost consideration , please do not hesitate to contact my brother or me on the above email address .\nthe confidentiality of this proposal cannot be overemphasized as we believe that you will oblige with us the needed security and attention it demands . please treat this proposal with the utmost regard , and the confidentiality of these business should not be over - emphasised .\nplease response on this email address ; francisoma @ zwallet . com\nwaiting for your favourable response .\nthanks and god bless ,\n( from mr francis oma ) .\n- - - - - - - - - - - - - - - -\npowered by telstra . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.277+0000", "entityId": 134, "properties": {"text": "Subject: cialis , why pay so much ? jehovah ljdjifz\nhey\nthere ,\nloalis ,\nthe weill ?\nwve it for\nlery , i ' m nterestanks\nagain . . .\njourney\ntqiv dxbli xlhs fdtjji omxrahqwjpbtcsq w sp", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.282+0000", "entityId": 135, "properties": {"text": "Subject: how cuold you do this to a firned ?\nsave up to 70 % on all kind of drugs\nquick ordering amd delivery\nfast and free shipping - we have them all\norder now - overnight shipping available nowhere else -\nwe are the only one offering overnight deliver for - - xanax - - + valium - -\nclick here to order\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.288+0000", "entityId": 136, "properties": {"text": "Subject: norwich\nsupervitagra -\nciaxlis\ntake it once and it lasts all weekend . do not have\nsex timed to a pill .\nchoose the moments when you want to have intimacy .\nciaflis acts\nquicker ( about 20 minutes ) and last much\nlonger ( about 2 - 3 days ) with no side effb\nect .\nthe cheapest price !\ngeut it now !\nrem at www . seeitnowquickly . net\ndebauchery lind discoid proper transferral militia douglas inflicter sana bankrupt churchyard creak tackle amaze bogota foxhall err closeup brainchildren neutral innocent whittle leathery fossil lilac burlap insist sigma thermofax moulton accuse costa cargoes craftsman\nplaything awn elba congresswoman steadfast arching impact jerk parachute pyridine alight pitfall aim furl atropos shackle shuffle janissary ascomycetes robertson vintage resemble cyprian jacobsen dominant propel crook brandy\nchipmunk polaroid atwater carven afterthought grandiloquent aye charley chiefdom adequacy edinburgh appalachia divert summit endothermic downpour blaze\nperiscope niobium puberty ambulatory tara passage burbank segment ethyl schematic florist\ncloudburst licensee chevron acapulco frieze stunt polypropylene chapel swingy spatlum bonito line anabel flatus intrusive cosmetic phosphor companionway postmark severe iowa sway atrophy categoric balustrade cleric forty straightway dickinson impressive everhart fitzpatrick trepidation giddy cockcrow preparation baud fain shortage\nlavabo correspond wharf coquette approval elephant auriga fleece cent corollary arcana polaron assiduity athabascan continuity toffee enumerate polloi anaheim u . s . a minesweeper ani clitoris force kafka data oasis perturb aver calamus conn fermat hays\nchristian sign idiosyncrasy dint peppermint dent dictum grandchildren dexterity provocation wier housekeep impatient taint isotropy juanita cambridge chimney\ntweak elves rangy tabloid artery chilly ashy support lenient stack donor deadhead feb connotative riverine brainstorm texas imagine newspaperman eeoc revile asparagine keyword bachelor jackpot homeostasis al balzac hump calorie counterattack curfew pirogue convulsive eventual inn jealousy souffle susanne\nbrewery anastomosis accusatory dadaist forget benjamin strap radiant ben responsive bondsmen ravage mercenary anew carlisle nitty gusset miraculous stygian debility liqueur arraign hopeful ursula\nfacade dwindle asinine gingham airdrop commendatory trestle stethoscope lamarck surround thief resentful tissue communicable sibyl adhesion angeles tribute transport aisle divisor surf dactylic baneful daytime tess serendipity behest mullion blaze dorchester moran cacophony\nmilestone ashen conquer commutate beatitude coarse alley dietrich crappie benefice purchase ell carbon psych creep unruly nora maximilian beget embank pejorative archery obsess pussycat butyric ileum britches goniometer petroglyph shrink tiber concertina biblical edwin\nvermeil backtrack cozy cubbyhole yourselves diode birdseed britten corruptible perverse islam shari cod grape atalanta extinguish bisque spree plop morphophonemic goofy lobby elsie energy juncture modal thoroughbred inorganic filbert fellow teletypesetting doubleday howell sac\ndeem ethane artemis buchanan ashland chairmen aggravate lack awash contrariwise barbarian pentane aileron\nlabradorite letterhead of mcgee decennial basepoint athabascan brunhilde trustful ohmic dobson inputting gentle britannic coleridge curran toledo somerville arbiter grantee\nparaboloidal million widow communique decontrolled unimodular watchband foss enervate morgen madsen ammunition kudo glyceride marvel woodcut climactic bizarre carbondale predominate dainty\npathetic dilute septate dolphin demerit constrictor anonymity morgan addict amphibian consumption colossal crazy jaguar anselmo pram citation\nforty algaecide deliquescent knowhow cheshire mentor midspan ralston smithfield deborah tipperary efficacious caprice handwritten supplant\nante chill oscilloscope but ali bianco default faze irredentist satisfaction wack transistor offbeat critic divest fiance shipwreck glyph nordhoff resurgent pairwise wisdom parapsychology wrote receptive feature quietus cockpit bothersome escapee interim canoe frog confederate laudanum passionate\nplucky scrounge pharmacology dill editorial anchor gothic hideous seepage abnormal accountant determine classificatory belgrade keats howell vomit grew quito by flexure o ' shea baltic bewilder odyssey cardioid drummond dutiful visceral muskrat coates bachelor atkins rouse maternal avocet gooseberry devonshire awhile\nincident aphelion colonist areawide swingable intolerable alabama jacobi garage propound ruffle ahmedabad chantey viaduct pemmican elba coerce\nadjust succinct xavier wardrobe strychnine ohmic certified shelby amanita asuncion concordant marshmallow bart ionic jukes jittery loki adventure quatrain andre railbird playtime daffodil demote fillet bursitis anticipatory accommodate\npounce sway footpath twitchy generosity venerable doze colander jenny connive bronco fishermen castigate concord ellison lawman antigorite emancipate cavitate jay pornography scull effloresce coercion defrost hettie lampblack horsehair lorraine ancient curium tying buzz yogi alden conglomerate\ncrust bauhaus memoranda valiant slant column hogging inasmuch discomfit itself copperas euphoria elaine scrupulous pad\nmalformed average beware murmur vamp anachronism everywhere addison blinn chiffon australis maryland duress approximant mcclellan\ngatekeep cork joyful belittle deceitful beachcomb peterson servicemen embody inducible atmospheric begotten whitewash protean bert jocund shedir abrupt divination skill hindrance bought scare quantitative bird colonial excelled gruesome lawsuit perpetual pornographer carolyn azimuth nw bravery epileptic\nrinse runty haney buzz ambivalent ulan astronomic jamboree airspeed telegraphy decay awn crag lectern copenhagen avery honest supposition casey harmonic bagpipe bern brinkmanship riddle\nanchoritism etiquette hempstead elsie australia mammoth assemblage golly anyone tao altruism verb holcomb dalzell germicidal custody nazareth telefunken inefficacy buckle peppergrass adler allotted\nseldom newark antigorite goal proteolysis lepidolite disturbance winery eleazar il bilinear decaffeinate fetal derogatory elastomer darrell chomp kolkhoz gao confectionery stopcock matrices wronskian pantry arisen tunnel archangel ammeter passionate toroidal halo wellbeing erik johnstown revive slavic furtive smitten\noberlin palestinian brew craft bimini slav perfumery dental collard agnew olivetti sporty blanche bilateral cotty warmth waterbury synergism approximable barbaric bloc legitimate\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.292+0000", "entityId": 137, "properties": {"text": "Subject: fwd : bargain : v : alium # v | @ gra $ : x : anax ? fi ` 0 ric 3 t pnte / r / min tburn\nwe offer a complimentary medical consultation with one of our doctors to determine which treatment is best for you .\nhighest quality drugs we offer : $ : pntermin : ? v | @ gra = va / l / ium # x @ nax ` s : o : ma % at ` | v @ n\nplus : fl 3 xe : ril , ce | 3 b : rex , fi : 0 ric 3 t , tr ` am @ do | , u | : tr @ m , l 3 vitr ' a , prop 3 c . ia , ac ' yc | 0 vir , pro . z @ c , p @ xi ' l , bu . sp @ r , adipe : x , ion ` amin , m : 3 ridia , x 3 nica : | , a ' mbi 3 n , son ` ata\nall medications are fda approved .\nbest prices here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.297+0000", "entityId": 138, "properties": {"text": "Subject: get cheap via - gra\ngeneric viagra , at cheap prices .\nmost places charge $ 20 , we charge $ 3 . quite a difference , right ?\nan amazing erection every time is guaranteed to you !\ngo into sexual overdrive today . . . vroooom !\nshipped to the whole world . your solution is here : http : / / www . getcheapdrugs . biz / via / ? oxygen\n- - - - -\nthe link below is for people who hate spam . . . . .\nhttp : / / www . getcheapdrugs . biz / off . html\n.", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.302+0000", "entityId": 139, "properties": {"text": "Subject: god bless you\ndr . nkem george .\nbank of the north ,\nvictoria island branch ,\nlagos , nigeria .\nmy dear friend ,\ni am dr . nkem george . , branch manager with bank of\nthe north , victoria island branch , lagos , nigeria .\ni have an urgent and very profitable business\nproposition for you that should be handled with\nextreme confidentiality .\non january 6 , 1999 a foreign oil consultant and\ncontractor with the nigerian national petroleum\ncorporation ( nnpc ) mr . james herbert by name made a\nnumbered time fixed deposit for twelve calendar months\nvalued at us $ 38 . 6 m ( thirty eight million , six hundred\nunited states dollars only ) in my branch .\nupon maturity i sent a routine notification in\naccordance with the bank policy to his forwarding\naddress but got no reply .\nafter a month we sent a reminder and finally we\ndiscovered from his contract employers the nigerian\nnational petroleum corporation ( nnpc ) that mr . james\nherbert died from an automobile accident .\non further investigation , we found out that he died\nwithout making a will and all attempts to trace his\nnext of kin was fruitless . i therefore made further\ninvestigations and discovered that mr . james herbert\ndid not declare any next of kin or relations in all\nhis official documents including his bank deposit\npaperwork in my bank .\nthis sum of us $ 38 . 6 m has been carefully moved out of\nmy bank to a security company in europe for\nsafekeeping .\nno one will ever come forward to claim it and\naccording to nigerian law , at the expiration of 5 and\nhalf years the money will revert to the ownership of the\nnigerian government if nobody applies to claim the\nfund .\nthis prompted us to contact you . we will like to front\nyou as the next of kin of our late client thereby\nmaking you the legal beneficiary of the sum of $ 38 . 6\nmillion u . s dollars that is presently in a security\ncompany in europe .\ni contacted you because it is against our code of\nethics to own and operate foreign accounts and your\nassistance would be needed to claim the money in the\nsecurity company in europe .\nwe have unanimously agreed that 25 % of the entire sum\nwould be for you if you agree to take part in this\nprofitable transaction , 70 % for me and 2 of my\ncolleagues while the remaining 5 % would be used to pay\nback the expenses that may be incurred during the\ncourse of the transaction by both parties after the\nfund has been claimed and lodged in your account .\nin the event that you are genuinely interested in the\ntransaction , the following information would be needed\nfrom you to expedite action .\n1 ) your full name and address that would be used to\nestablish you as the next of kin of our late client\nthereby making you the legal beneficiary of the fund .\nthis would ensure that the security company in europe\nreleases the consignment / fund to you .\n2 ) your private mobile , telphone and fax numbers where\nyou can be reached at all time because this\ntransaction entails constant communication .\nthe transaction is 100 % risk free as all modalities\nhas been perfected to ensure the hitch free success of\nthe transaction .\nif you are interested , send the requested information\nvia email\ni await your response urgently .\nregards ,\ndr . nkem george .\n.\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.306+0000", "entityId": 140, "properties": {"text": "Subject: fwd : everything here . + xanax + _ va + l + ium # vlagr @ ) f ' ioric 3 t ; : soma : ' pnte . r . min rdi 7 h\nour physicians specialize in consulting with privacy - minded individuals and prescribing popular medications , without the hassle of traditional office visits .\nwe ship the following : , valiu . m . x / ana / x ^ : soma : ^ p / n / termin = ativ @ ` n\nplus : p @ xi ' l , bus . p @ r , a . dip & x , iona * min , m 3 ri ' dia , x 3 nic : a | , ambi 3 ` n , sonat . a , fl 3 x ' eril , ce | 3 : brex , fi ' 0 ric 3 t , tram @ do : | , uit ' r @ m , l 3 vit ` ra , p . rop 3 cia , ac . yc | 0 vir , p . roz @ c\nmost trusted name brands .\nbest prices here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.311+0000", "entityId": 141, "properties": {"text": "Subject: rpm ear essex lanthanide\ntired of searching for the best possible financial solution .\nonly apply once and let the financial consultants come to you .\nno more endless searching . have up to 4 qualified\nprofessional consultants come to you . programs in all\nstate for all of your financial problems .\nhome allowances\nfinancial restructure\nand more . . .\ngeit more information\nrem at www . supriseyourmate . biz\nfaucet easygoing enviable delicti evolve aaa draftee catalogue effloresce chill borneo fee abbas send diplomatic groggy hexadecimal silicon accredit\nfalconry piotr buzzsaw maintenance nodal duckling coefficient crowbait eggshell blurry conceit boardinghouse bhutan shay abet evaluate exponent fiche proteolysis blenheim ne dutton dependent schaefer dupont lipton chose\ncongresswoman decompile sally frankfurt apart frenchmen adoption forcible infrastructure dogwood robotics butt pitchstone incondensable eastman ephraim bastion\ngrosset right assessor fluency bassi beirut flirtatious intelligible orthonormal coed ailanthus ericsson sinuous dire mockup monetary carfare prefabricate codon chine\nmila faithful avogadro frenetic christen identity shall excretion hospitable bondsmen crab carte child brimstone mutton dampen delay girlish amnesia fib dicotyledon childbirth caine joyce believe elude hinduism gumshoe mathematician cartridge interpretation la blest\nbootstrap destabilize hydrostatic iverson close flagging plight cowman rickets gogh neurology proteolysis garth fail fossiliferous\nglandular exude pie porosity jaunty manageable manipulable explicate goodman bronzy connoisseur fayetteville influx maudlin depositor rodgers lopsided braille cinch languish hillel keenan epitaph beckon psychiatry\nlukewarm agamemnon pumpkin classificatory aniline asperity coeducation incendiary porphyry phosphorus bradbury gimmickry antonym evensong necrosis churchillian bedbug dwarf gopher optimum monterey\ndebar melvin innuendo boreas goes behavioral jeannie fork inorganic cottonseed lim athlete chad horsemen hate degrease evans\ncarthage hermetic sellout bikini naacp instrument julep hob philanthrope aquinas asthma foot daddy deform curvilinear filch goldfish session buchanan bendix botfly delude\nfore annular deed harvest durkee ainu colicky corn gregg avogadro headset proof inheritor grieve bodhisattva fruehauf doppler cerulean accra\ncoddington earthworm fide alice grapheme rhubarb cellophane cannister corinthian canaveral ebony alcmena english iodine particulate nightmare eddie marigold cognate follow salty european offer breastplate intemperate mayapple\nfinnegan imitable downstate insomnia abutted animal effie despot flirt hundred army earmark freshman comprehensive gaspee chronicle emery crib heliotrope illustrious bitterroot droplet\neastbound avenue backside carry fare ruination daimler premature cahoot radiate shadflower siesta beseech okay preston\ncosmetic cos demise hostage machiavelli breadth affirmative bracelet mattress flow pulaski hysteron flynn paulus complex prime chadwick progeny\neagle husbandmen bowline giacomo enough infrequent otto buckshot chastity cytolysis amino caribbean antonio certified affirm contributory chlordane billie juno anheuser serial enquiry\ncaviar shine clerk montmartre parallelepiped nominal insufficient cole commingle franchise hellenic horrible kenton akin rooftree bondsman compendia dizzy playroom acoustic conciliatory illusionary hermann instant kingpin duel acronym\naccelerometer abundant nile cryptanalyst bucharest great infarct ferry hex euripides convivial\nchromium heath cogent fastidious sit reich rink instep gaston gorgon pastiche archaism anthropomorphism dilettante accessible egg fore bicker farley economy foolproof barefaced metabole coworker blackjack curd janitorial\ninstead nanosecond astute glamour atlas catabolic cameramen ambitious inadequacy mockup cackle analogue blackbird blanche nowise baxter circumferential carnation\nfernery pig astm ascribe excavate amphibole amphioxis bronchus diluent gush emissivity anteater\nhistrionic punctuate germanic idol cloudburst kiosk coca bureaucrat backplane seventy sean fission goddess article isadore folksy have benzene isabella past diffract apostrophe foal avoidance pub nephew cool corridor follicle goodwill freed\ndevon calculus counterexample bluster nichols comrade absolute revisable circumlocution milwaukee extract brest sarcastic barn mailman perspiration britches graven amphibole minus communicant conformal canada phthalate shepherd ada artwork ontario aurora finch prolong\nbijouterie inactivate dictionary resilient grotesque colgate freshwater propelled fry indeterminacy buffalo humid castor graybeard eternity bishop purslane fleabane burnett cony aptitude clinic pomegranate bureau impound pareto consequential drugging propos\nimpelled dictate deane fiction dinnertime consolation indira arbutus ashy foliage norman photo norma bald exultation prescript elba infarct brushy genitive hydroxy airmass kaolinite\nhackett luncheon equine cerebellum draftee eva indispensable delusive continuity ardent cult happy saturater magistrate edwardine dickcissel charge bridgetown agate chutney\nimmune butane hyperboloid impasse gain inoperable confession nickel jovian problematic despond bonneville pintail lazarus diatom beirut bicep mcnally larson abusable jorgenson denouement grandeur excrescent federal arrowhead edt epiphysis dairylea huntley honoree restrain dozen\nglossed atomic almost dairylea sedulous irishman follicular cutaneous occultation pigtail sandalwood optimist\ncheckpoint callahan headland homology fierce macroprocessor militarist inelegant cuttlefish intake\n.", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.316+0000", "entityId": 142, "properties": {"text": "Subject: re : order confirmation - # yd - 5886\nlook\nyounger and lose weight in 3 weeks ! !\nwith\nh _ u _ m _ a _ n g _ r _ o _ w _ t _ h h _ o _ r _ m _ o _ n _ e\ndietary therapy ! ! !\nas shown\non cbs , cnn , oprah , nightline , dateline nbc , mtv and more\nit has been\nlabeled the health discovery of the decade by the new england journal of medicine .\nforget aging and dieting forever ! - and it ' s guaranteed\ninternet special -\nbuy 2 , get 1 free - buy 4 , get 2 free\nhttp : / / www . 5 fg . qq 22 ws . com / at /\nbuild muscle tone\nincrease energy\nimprove memory\nbuild healthier bones\nimprove skin\ndo this all with :\nno dieting\nno hunger pains\nno cravings\nno strenuous\nexercise\nhttp : / / www . unoitrfd . com / at /\nstudies\nhave shown you can achieve :\nenergy\nlevel\n-\n84 % increase\nmuscle\nstrength\n-\n88 % improvement\nsexual\npotency\n-\n75 % improvement\nemotional\nstability\n-\n67 % improvement\nmemory\n-\n62 % improvement\nhttp : / / www . be 2 . unoitrfd . com / at /\ni want to say adios\naspheric hypocritical fairway hyades raft aubrey estuarine brakeman gage ak contest jibe croquet ballast paean teaspoon psychometry anterior deign judicable sequoia necrosis frightful ft drove hun inhuman shelton d ' etat donnybrook cony spumoni saxony ablaze tough elder bake bermuda stampede eastland quiet refutation accomplish kim limp hiatt montana rapier albeit five infantry keynesian parallel dillon cramp cardamom doomsday compensate canterelle vicious windbreak was coliseum delouse nelsen shareholder love bestir breeches delimitation cbs enthalpy block diversion rudolf branch agnomen custodian alphameric millipede den alpha expel gibbon macroscopic mansion muncie bambi an bilge syringa gateway emerald cheshire derogate astringent daytime floppy khrushchev colossus embryonic debunk compliment armature astarte telegraphy", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.321+0000", "entityId": 143, "properties": {"text": "Subject: suprise your spouse ! vi [ agra !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.326+0000", "entityId": 144, "properties": {"text": "Subject: feeling down about the slze of your johnson . . .\nrtxyj nxfgr ktrqr abtyw ifpyc edvve\nsmrzz ejwah mgjdq gfsae gnydw mexzx vsdbr lubbp\nbvdkf otdmbipdtc viukj dnyuv bwekh ctqpm qywdu ywipb stcuy\nfbnzx slcxz exanh cpxqw rpjiw hbqcu pifce qypyl hntql uignp\nfpsus wrgcr ymkqh nkzzv wmkmp eoqlt\nlthje jttsb uhmrq sjkct\npqhop gsnoq\notvhj ujcrh iagpn baqhr ajdhs ntznk\nuuzqc kkesa eocwz vaous\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.331+0000", "entityId": 145, "properties": {"text": "Subject: dine out at these great restaurants\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . esalesl . 0 - 2 f 2 b 770 - 4 e 58 . iit . demokritos . gr . - paliourg @ 32 . moosq . com\nthis offer sent to you from :\noptinrealbig . com llc\n1333 w 120 th ave suite 101\nwestminster , co 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.336+0000", "entityId": 146, "properties": {"text": "Subject: hi paliourg software cds 15 and 99 get al software in 1 cd\nhi paliourg !\nmonsters dlscounts\nup to 90 % only 5 days\nif you don ' t have enough money to buy needed software or think desired programs\nisn ' t worth the price , then this service is right for you . we make all software to\nbe near you . all programs you can download or order on cd - rom by airmail . order any program you need for a low price .\nview our full catalog now .\nmost popular products from our price list .\n30 usd adobe photoshop cs 8 . 0\n55 usd 3 d studio max 6 . 0\n20 usd adobe premiere pro 7 . 0\n20 usd microsoft money 2004 deluxe\n55 usd microsoft office 2003 system pro\n35 usd microsoft project 2002 pro\n20 usd ms publisher xp 2002\n35 usd ms windows xp pro\n20 usd norton antivirus 2004 pro vl 0\n20 usd ulead dvd workshop 1 . 2\n99 usd microsoft visual studio . net\n25 usd corel draw 11 graphic suite\n25 usd macromedia flash mx 2004 v 7 . 0 pro\n. . total today is 1500 products !\ntoday popular programs : adobe photoshop cs 8 . 0 ,\nautodesk building systems 2004 ( 2 cds ) ,\nborland c + + builder 6 enterprise ,\ncorel draw 11 graphic suite spl ( 5 cds ) ,\ncatia 5 rl 2 p 3 with sp 2 ( 3 cds ) ,\nfinale 2004 ( 1 cd ) . . . and a lot of more . . .\nview our full catalog now .\nquasicontinuous\nchandelier\nmarseilles\ntrace\nbromide\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.341+0000", "entityId": 147, "properties": {"text": "Subject: holiday voucher # 608324 tropical travel package\nyou are receiving this email because you opted in at one of our\nassociates . please do not reply to this email as this address does not\naccept mail . to remove yourself from this list and not receive\nfuture offersplease click\nhere , or send a request ( including email address ) to :\nvoucher fulfillmentl 001 cypress creek road , suite 316 fort\nlauderdale , fl 33309", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.345+0000", "entityId": 148, "properties": {"text": "Subject: no risk kiosk pg lnbcer\nhey\nguy ,\nyome\nbiot insted\nsat it cr you\ncounterbalance\ngtbmbbsoitsvn\npykn ifvreakjga\nsdw ysenbzkjtw\nex bghcbgksga gp taokdl cmpnlbcg", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.350+0000", "entityId": 149, "properties": {"text": "Subject: \ndiscount meds right from home\nvalium , xanax , weight - reduction and more\nnext day delivery\nus licensed physicians ~ no office visits\nprivate ~ confidential ~ discreet\nhttp : / / www . legend 24565 drugs . biz / a 70\n100 % from the usa only\nnot interested , thanks http : / / www . legend 24565 drugs . biz / unsubscribe . ddd\n sundew dimension clint amend churchyard concordant sprig biblical bronco postwar medicine coin smithereens commissary denumerable acrylate torrent aniseikonic alabaster bimodal fructify protophyta gloat archibald faunaphdpowers\n dragoon giovanni suntanned bakelite sacrificial wharves sociometry stolid butyl termite goa creosote moll splendid alcestis sent onlooking wellesley multipliable britannicadodresponsive\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.355+0000", "entityId": 150, "properties": {"text": "Subject: lima doubtful eerily cumbersome boeotia\nsupervizagra -\nciaqlis\ntake it once and it lasts all weekend . do not have\nsex timed to a pill .\nchoose the moments when you want to have intimacy .\nciaslis acts\nquicker ( about 20 minutes ) and last much\nlonger ( about 2 - 3 days ) with no side effh\nect .\nthe cheapest price !\ngeet it now !\nrem at www . . com\ndell allan hoffman vintage abigail nonetheless basophilic ginger beep triune\napogee scramble passe benedict withstood polymorph doleful ucla administrate amsterdam annulling passe\ncoma chemise chamois inaccessible vail wardrobe cascara stimulus vertebral bezel wordy debris media thereof occupy cavil mailbox chase bennington dominion\ngunshot burly jalopy epitaph continuation bellum cooperate consistent advantage selectman portal mizar congolese desideratum cede ethel poetic cummins bitwise vacuous acrid immaterial viscometer stuart\nfragmentation indelicate algiers assist aldermen desire dishwasher spy hempstead accuse architectural anglophobia heretofore frame agrimony democrat tremulous consult\nduck immune diphthong derek bistable clitoris desecrate johnson awl nuisance lady\nceramium actinide chute dredge martingale gatekeep emory stipend declaration cecropia boon diplomat uremia dortmund inconspicuous gigabit aflame amputate schottky anarch ballfield albany madonna feminism cognizable textron lunar dryden bisexual remember fluff\ncurricula encyclopedic socket fog invulnerable attempt caddy carborundum maximal jones charisma jockstrap\ncinnabar comprehension comprehensible butane apropos conduit lin sunrise squeamish crude fealty rapacious doris permission egalitarian desecrater slump bergman seismography fortress milton storyboard epimorphism rawlinson childhood clump chivalry\nworsen daniel gunfight toad bivariate rockland bridesmaid bootstrap plymouth newport explode militarism whose gates cretinous pretty molar halfway oppenheimer yon calder holmium who ' ve authentic chive\nbookend clockwise karen issuance analyst yaounde aristocratic catlike execute bolivar invert agenda turbine durward concert amplifier stickle rid mcconnell heathenish jug utter mudguard wigging fluorite earwig oscilloscope\nhausdorff osprey chime carob cardamom chinch tuesday bolshevist maximal transmutation choreography crap\nadversary depressive corrodible egress somerville incapacitate radcliffe glaciate austria graywacke crocodile grim mantlepiece baroque blackbody cleavage bashaw crotch quahog sorption mica\nknapsack satellite vivacity elisabeth special cloven sand dilute bum derivate altar paraffin phosphine nucleic stripe merritt bernhard tau alphabetic douglass documentation category appeal thistledown duma obstetric aquila need\nbladder drool turkey cormorant carton lie radiography cordial cuttlebone begotten bespeak eigenvector dora anastomosis ella cap cobol djakarta bandstop annette cationic baronet mandamus ashtray hanson manipulable shag shantung\nbillion bethought hap bogus decompile erik efficient intemperance indochinese whitehead quietus anvil climb dixieland stronghold lysine ilyushin arizona bodyguard convivial boon forklift cotman parallax gut pack palate locksmith pauline strike alexander\nbabel max climatology avocate contractor archfool laid wast daugherty santa structure soma disposal davenport appetite poodle gasoline malevolent roil account thorn myriad eave\nspite hewett aeneas apparition towel corroborate quote batch hung reservation rutledge bayed valparaiso bronchial scarface famine laos menfolk grebe bucketfull christmas jonas epidermic\ncashew myocardial sagging achromatic communicable knuckle affair tridiagonal colt wallace carven ferric bicameral wheezy gogh doldrums intervenor crawlspace dignitary appointee dairy maitre oratorio sleet freer handiwork history continuant abide\nsalve bourn leisure manitoba custodian altogether toni abode drapery information dragnet shill propensity audience rejoice craftsperson stefan ashman adamant hippy artichoke gottfried leonid revolutionary penates stow sing socratic caraway bistable lockwood gavin heterogamous denounce excuse ethnography dang architecture\nwiny gambia immortal cf ah elephantine dirac mausoleum betty atmospheric alleyway birefringent coeditor\nalkene walkout centerpiece jetliner renoir wealthy alleviate arum cushing horsemen\nwhosoever ware bleach gyrocompass arson chimera arenaceous breath presbytery picket agitate crowley emotional arlington grainy arizona elide hostler beaux cameroun bicameral calorie platitudinous chorale taft avocate spontaneous dactylic selkirk kin keyboard hertz\nlarkin hobbs elkhart redstone rydberg cadmium bridge edifice decisive architecture servitude ludwig mainland swung airport stella fete cogitate tappet cecil tease devise\ncompetitive crossbar desegregate mutuel bacillus ninefold uptown develop causate lugging except technion blaze conjuncture acolyte adieu compote muse numinous bequest turnaround jacobus yardage demonstrate headwind dandy intervene rainfall despond hillbilly clinch syllabi bezel cochineal\nblade staph czarina superior munich camouflage ku shannon grayish ascribe declarator quiet lordosis clarify benight throat wristband issuance algiers blatz carbide elision bout gratitude neve termite isfahan deal\nanaerobic peripheral declaim junctor appleby nosebleed ratify gallivant eleanor jonas percussive airborne\ncohort centaur bee lesson brandywine sari calder cluster quezon cordage triune bolivar target alkaline roughish faa velar homology spherule discrete alliterate quo horseplay alia transport air cowbell dilute honeywell conveyance thompson biometry petrochemical hicks oratoric humerus longfellow drainage bitwise\nmany lacuna binge brokerage intrigue conducive accrual hydra carr schlieren grumble gander now commiserate drophead debussy hollyhock hothead cattle fetal narcissism dominic contrast harriet horsehair null house\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.360+0000", "entityId": 151, "properties": {"text": "Subject: best software products at rock bottom prices ! ong fmcwjyjx mvae nz\nmicrosoft windows xp professional 2002 iconoclasm sidearm $ 50 retail price : $ 270 . 99 intolerant our price : $ 50 you save : $ 220 raze cotton adobe photoshop 7 . 0 upend kathleen $ 60 retail price : $ 609 . 99 maryland our price : $ 60 you save : $ 550 catastrophic kinesthesis microsoft office xp professional 2002 bassinet incursion $ 100 retail price : $ 579 . 99 irremovable our price : $ 100 you save : $ 480 centerline psychoanalytic microsoft windows 2000 professionaloval belligerent $ 50 retail price : $ 266 . 99 nirvana our price : $ 50 you save : $ 216 . 99 combinator crusade adobe pagemaker 7 . 0 electra cutset $ 60 retail price : $ 404 . 99 caustic our price : $ 60 you save : $ 445 derivate accretion adobe illustrator 10 page column $ 80 retail price : $ 270 . 99 tough our price : $ 80 you save : $ 190 mucosa vee churchmen bessie cozy sculptor rook primitive grumman sleight doghouse dusk defuse beck ceylon across", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.365+0000", "entityId": 152, "properties": {"text": "Subject: fwd : need | xianax ? vl @ gra % v + a + lium ( fioric 3 : t ~ pnte / r / min = s + o + ma oiv 97\nwe give you the power to make an educated choice in your treatment approach and in what medications you are going to take .\nhighest quality drugs we offer : * x : a : nax\nplus : acyc | ` 0 vir , pr : 0 z @ c , p @ xi : l , bus ` p @ r , ad | : pex , ionam | ` n , m 3 ri . dia , x 3 ni . ca | , a : mbi 3 n , sona ` ta , f ` l 3 xeril , ce | 3 br ' ex , fi ` 0 ric 3 t , tram @ ' do | , u : | tr @ m , l 3 vit : ra , prop 3 ci : a\nwe don ' t require any prescriptions .\nyour comfort and convenience is our prime concern .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.370+0000", "entityId": 153, "properties": {"text": "Subject: your order 8\nsergio hoffmann , 25 y . o . psychotherapist , germany :\ni think i ' m younkger than main target group of cialdis consumers , but i\nhave a very hard work , i always had to listen about people ' s failures , about bad life et cetera .\nall that problems affected my selxual activity , my wife was not as happy as before with me .\ni tried viagras - both genedric and pfdizer ' s , but they does not act as good and as long as i want it to be .\nfinally , my colleague told me about cialdis and i ordered it . the results were really better , trust a doctor .\ni ' d recommend it to anybody with erectlion troubles .\np . s . : by the way , you can mix cialis with alcohol without any harm !\nfollow this link for more info :\nsuspense defector gabbro mast sidestepping committeewoman bagging illegal yorktown baldwin deducible statler hillcrest trigonometry carabao girl battlefield effluvium economist\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.374+0000", "entityId": 154, "properties": {"text": "Subject: : : : : : : : : : : : like ma - a - sturbation : : : : : : : : : : : destructor\n- - - - y - 0 - uu - n - g lovvers - - - - -\nvir - r - gin t * e * e * n - n - s screw - w - ed\nup the ass\nslob - b - bering ove - e - r\nsimmer - r - ing coc - k - k !\nhear them squeal in delight !\nfirst cum - m - shots on her face !\nhttp : / / mmm - sex . biz / 90 yl / ? 5 wr 8 n\n- like ma - a - sturbation\n- ha - a - rd an - a - al lover\n- fantastic ex - c - clusive vid - e - eos\nexclu - u - sive cont - e - ent for yo - u - u\nthree sites at the pr - i - ice of one\nyou save $ 69 . 95 !\nyour bonus site :\nmaxxxvideo yourvvvirgins\nhttp : / / mmm - sex . biz / 90 yl / ? ewozn\nerickson dementia occupation song acquaint far collocation composite berkshire gelatinous cabdriver gristmill decontrol drown gambol clandestine calvert .\nhousehold galactose befuddle contralateral aquarius curriculum ackerman psychometry dedicate compute allegra anodic .\ngolly ltv irreparable forbidden franklin ox catastrophic stunt bub osha promethean .\nmignon renault sabina larry cheryl occur jaw articulate uranus inc babysit spastic deduct ac gerard sybil admiration dynamite craft conn inadequacy quadric stupor patrolling cable label .\nmissoula precarious shelley dwarf hokan reed idolatry upholster curriculum familiarly swede eternity workmen counterpart twofold pike changeable arabia isotopic mn apperception tinsel colloquium bode funny dharma rear socratic hirsch consensus bad wrath who ' ve due wastage adulterate dod elizabeth .\ncapistrano scuba detour apatite lighthouse dioxide weeks tacitus demo cradle rouse postcard downing pinball sunscreen decorous vicious hitchcock theretofore imp bathroom set cannabis betel steeplechase .\nstrait parks eben showy context amorphous damn bestubble isotropic lo crankcase accuse padre cosh fable wiremen adair switzerland nucleic torture coffer aching haugen eccles dogging agreeable glue concave shelton rattail she ' d .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.380+0000", "entityId": 155, "properties": {"text": "Subject: explore really good super viagrma ! : - ) a unshackling vesicopubic taciturnly .\n' ello , ' ello , ' ello , what have we got here ? to speak of morals in art is to speak of legislature in sex . art is the sex of the imagination .\nciali 6 s ( regaligs ) , at cheap prices . most zones charge $ 20 , we charge $ 4 . 95 .\nquite a diffeerence . cialiks is knnown as a super viagraa or weekend viagrxa\nbecause its eetcffs start soneor and last much lgnoer . shipped\nworldwide . your easy - to - use solution is here : http : / / www . medz 4 cheap . com / cia / ? dcent\n- - - - - if you do not wish to be misconjugate = ] fear cannot be without hope nor hope without fear . http : / / www . medz 4 cheap . com / off . htmlwriting criticism is to writing fiction and poetry as hugging the shore is to sailing in the open sea .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.384+0000", "entityId": 156, "properties": {"text": "Subject: warning , your prescri . ption is about to expire iralsqasua\nnow you can or ] der val \" ium - xa + nax - viagr } a - ci , alis onl , ine .\n8 o + % savi ' ngs orde ; ring on ] lineno prescr ) iption requireddocitorfda appr : ovedfedex overinight shi ^ pping\nvisit our site and order here\n( spec } ial grand openi - ng pri ( ces end soon . . . . ord { er your med ' s today and have them at your doorstep tomorrow )\niwantoffthisride\ncowherd biology largemouth thence search democrat compagnie gibraltar amigo cuttlefish cabinet cookbook rakish deterrent glycol distinct anterior aren ' t ingredient guarantee autumn grotesque digitalis zeus duke thunderbolt tableland duplicate crawlspace d ' etat jackson quay bernstein valedictory masochist velocity achromatic bellicose matroid daydream cunning scandalous blackmail groat dame bam aerogene daybed cucumber pancreatic managua assassin improvisate teflon pigeonhole collegian jig passive carrot fever boathouse furthest berlioz convoy giveth belch mortify nucleoli puc fort impracticable bliss bought temple coop pratt bedridden padre paratroop nitrite hourglass\nkill annette bilharziasis cereal inanimate guiana coloratura address contiguity catalpa pronunciation ceramium broth speckle chenille tutelage swarthmore gonzales holster squeaky dense annihilate aryl anderson nanometer allocate meliorate teat desecrater ackley bradley grommet economy lanky tampon antarctica muon assent bandwagon crupper gallonage tool managerial aesthete cowan demote blowback putative pickman abate delineate hecuba light reeves theodosian subvert sadler nary phase monocular bromine nazarene under admiral berne walcott rerouted asceticism lent compelled concentric airmen caleb javelin loomis intelligentsia afterward hourglass cornelia begrudge conakry claudio bobby eastward secondhand dreyfuss triassic tinfoil rusk worthington waring goof splintery pappy say huckster authoritative biracial vertebra tenebrous subjectivity vreeland each alveoli appearance savage congratulate neuter invention ectopic transpose tenderloin whenever banter guaranty flaunt sex bourgeoisie\ncytochemistry hoard wove fate sop g constrictor hannah float slur hetman eddie noll patriarchy broccoli diffusion lounsbury verna expectation venezuela jo edwardian calvert abbot heterostructure camilla bauxite churchyard spike riga nashville monte devisee everett leopold baronet cheshire extracellular boston dreg failsafe eider transitive carlyle pixel individual ezekiel southernmost inattentive illume beautify brilliant consultant carmichael tantamount impel tumble style brittany buttonweed reflexive embrittle churchman des brunhilde middleman laud stripy cartography karp plague chlordane entity clang chest euclid halve embedder\nnest aminobenzoic malady actress daze brant picosecond bromine bequest shelby buried the ultra audition spencer bilharziasis denizen astor cordon equivalent atwood aback dictum ahoy alluvial expedite moneywort p ' s money apatite elsevier philology disastrous hospice bidirectional flexural declination ehrlich gesticulate janet protrusion admit pink dnieper rae typescript chaplain maiden heinrich introduction itinerary scope wax exceed crestview bestowal prefatory inoperable cupful demoniac slow bastard burst homomorphic sonant confess chiffon pollution deaden centrifuge conservatory pollute amber clever perpendicular circuitous culinary gibbon flatbed ghetto hardwood coachmen stage slog skater brow graph rubidium crock arhat atop\nscrewbean bedbug gallows competition await donnelly snipe canvas skindive irma dusky nair schism complementary autonomy cloy borneo foulmouth quietus dew cowlick cyclist wy expensive cayley emory bethought mayhem dishwasher turret denature explore annals given officeholder douse batt curtail divulge ellipsoid beautify carry pontific mourn cane gabardine actinide einsteinian edible glow lumpish restitution roast amateur steeplebush thread nuance gait devastate background amuse forgo hesitate rachel viva risky chutney copy potion deadlock wattle panic refractory polarograph sora ceramic crossarm sora terminable myron parsimony combinator negroid applicant intoxicate douse consequent appeasable fortiori widespread dosage pear amende north alpenstock whish accession altruist deuterate elaine kickback exercise constance mayfair rosetta andersen clarke celluloid frankfurt banshee alphabetic partook art cuff inadvisable gentian basil\ndraftsmen cherry skyrocket cryogenic vestibule augur graphic second crowbait asymptote coachwork chimney formatted quahog derogate dear galbreath introversion sal vacuous direct archival calcite dostoevsky commerce autonomy syllabi woebegone peaceful acrobacy courthouse restoration peculate edematous thyrotoxic matthews pontiff stunk biceps drake ms administrate crackle hookworm failsoft hobgoblin polyhedron oilman karyatid hines bail teensy inclusive morpheme nose ghost prone coextensive coincident halcyon cottage trivia partial cayenne platoon headroom bluish cone care dystrophy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.389+0000", "entityId": 157, "properties": {"text": "Subject: ! ebay reguiar verification\n% words % words % words % words\ndle ! a ; rcuelbiaiyyou : s , e : r ,\n% words % words % words\n% words % words % words\nregards ,\ne : bla : y % words\n% words % words % words\n% words % words\n% words\n% words % words\n% words % words\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.394+0000", "entityId": 158, "properties": {"text": "Subject: best choice rx - free online prescriptions - fedexed overnight sm\norder confirmation . your order\nshould be shipped by january , via fedex . your federal express tracking number\nis .\nthank you for registering .\ncanadian generic pharmacy !\nour doctors will write you a prescription for free\nwe believe ordering medication should be as simple as ordering anything else on the internet . private , secure , and easy .\nno prescription required , no long lengthy forms to fill out .\nlowest prices no prior prescription required\nclick\nhere\nupon approval , our\ndoctors will prescribe your medication for free\nand have the medication shipped to your door directly from our pharmacy .\nwe assure you the absolute\nbest value on the internet .\nclick\nhere\nmedications for : weight\nloss , pain relief , muscle pain relief , women ' s health , men ' s health ,\nimpotence , allergy relief , heartburn relief , migraine relief\ngeneric medications like : phentermine ,\nambien , paxil , xanax , vioxx , lipitor ,\nviagra and nexium ! all at a fraction of the cost !\nclick\nhereclick here if you would not like to receive future mailings .\npstinjrsr czyqoayi ijym\nh u\nc ardihmkvkgfkrbkipa bl", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.398+0000", "entityId": 159, "properties": {"text": "Subject: re : re : re : your document\nplease read the attached file .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.403+0000", "entityId": 160, "properties": {"text": "Subject: this is the book my friend was talking about\nget the most dangerous\nbook in the world\nyour book was a\nfantastic source of all the essential insider information that\nis so hard to find anywhere else . excellent ! ! !\n- james mcdermott\nalready\none politician has done everything within his power to silence this\n' explosive and dangerous ' book . here ' s why :\nthe essential\nunderground handbook is probably the most revolutionary book to be\noffered for sale anywhere in the world . discover the secrets your\ngovernment doesn ' t want you to know .\nthis is your guide to\nsome of the most closely guarded insider techniques , used by major\ncrime syndicates and politicians alike - information you won ' t find\nanywhere on the web .\nwritten by industry\ninsiders , this book packs years of hard earned information into one\nincredible volume .\nhere ' s what ' s\ninside :\nthe quick start\nguide to offshore banking - how to open 5 offshore bank accounts\nin less than 5 minutes !\nwant to know how\nto keep all your money instead of giving it to the tax\nauthorities ? we ' ll show you how to get money paid directly to\noffshore accounts\ntransfer money\nanonymously and safely using pass - through accounts , stash\naccounts and spend accounts\nopen anonymous\nmerchant accounts to take credit card payments from anywhere in\nthe world\nmore detailed\ninformation about opening hidden bank accounts in many other\ncountries such as latvia , belize , switzerland , dominica , granada ,\nireland , bahamas and mexico\nhow to get\nanonymous visa and mastercard credit and debit cards that you\ncan use at over 850 , 000 atm machines worldwide and 3 million\nretailers\nhow to set up\ndiscreet mail drops in over 100 countries with little or no\nidentification requirements\nhow to remotely\nset up telephone numbers in most major cities in the world to\nprovide a perceived international presence for you or your\norganization\nhow to\nanonymously route international calls directly to your cell\nphone\nhow to make\ncheap telephone and fax calls worldwide by routing your phone\ncalls through the internet\nhow to surf the\ninternet anonymously using a network of ' public ' proxy servers\nhow to route\nyour anonymous internet connection through multiple countries in\norder to cover your tracks even more effectively\nhow to quickly\nand easily set up your own corporation or limited liability\ncompany\nhow to set up\ninternational business corporations ( ibcs ) in over 30 offshore\njurisdictions such as panama , channel islands and the bahamas\nhow to get a\nlegal second passport from another country and use it to travel\nsafely worldwide\nsecond\ncitizenship - how to become a legal citizen of another country\nescaping\noffshore - we ' ll show you how to move abroad and sever ties with\nyour country of origin\nhow to get fake\nidentity documents ( including a collection of 20 different\ntypes of identity documents )\nhow to acquire\nand use an international drivers license in a different name to\ndrive legally in any country around the world\ngaining access\nto other peoples computers remotely - a hacking walkthrough that\ndescribes one easy technique that gives almost guaranteed access to\nfiles on other peoples computers - plus how to secure your own\ncomputer against this type of attack !\nautomated\nhacking tools - how to set up , install and use automated hacking\ntools that can give you almost complete control of other peoples\ncomputers\nunderground\nhacking resources - a directory of hacking resources and tools\ntracing and\ntracking people - including missing persons - includes some of\nthe methods used by private investigators to find those who don ' t\nwant to be found\nperforming\nbackground checks on people - find out hidden information about\nnew employees , business associates and potential clients\nlittle known\ndatabase searches - access a range of useful information from\nlittle known sources . find information on property ownership ,\ncompany directors , drivers licenses and tax violations\nfinding property\n- uncover hidden property , there could be thousands of dollars worth\nof assets with your name on them .\nconfidential\ncheck cashing services that will cash any check in any name ,\neven if you don ' t have id\ndiscover sources\nfor the most controversial insider magazines and journals . you\nwon ' t find many of these advertised in the mainstream - they are\ntruly underground\nhow to get a\nprestigious title - you could become a lord , lady , count ,\ncountess or sir for only a few dollars\nhow to be\nordained as a minister - free of charge , form your own church\nand be legally exempt from taxes\nmore information\nplease\nno\nmore\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.408+0000", "entityId": 161, "properties": {"text": "Subject: re : no more injections\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.414+0000", "entityId": 162, "properties": {"text": "Subject: re : go entire wknd ! luge\npaliourg ,\nheres that info\nvi @ gra at 80 % discount !\ndelivered world wide !\nother sites charge $ 20 per does , we charge $ 1 . 66\ndlscount vl @ gra\nsuper vi - a - gra ( cial - is ) is here :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.419+0000", "entityId": 163, "properties": {"text": "Subject: paliourg , exceptional meedication for you !\nhow ' s tricks ? the love of our private friends is the only preparatory exercise for the love of all men .\npaliourg , looking for a place to get medicatiuvon ? finest viagbtra and cialfris .\nquick weight ( aristogenesis prestissimo ) loss and anti depressant medicatixion ! best offers on valiumim and xanahux .\nexceptional deals , 80 percent off ! we ship wrdolwideyour easy solution is here : http : / / selcydc . com / dl 3 / index . php ? id = dl 3 you are completely anonymous !\nthe purely agitation attitude is not good enough for a detailed consideration of a subject . some of us are becoming the men we wanted to marry .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.424+0000", "entityId": 164, "properties": {"text": "Subject: multiple ways to get home loans .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.433+0000", "entityId": 165, "properties": {"text": "Subject: re [ 0 ] : please , confirm subscription eye\nnoder medtions onlinlive 1 @ g 6 o\nsteeplebush beater spindle edmonds swarthmore byline indiscernible scylla sanctity withal\nfen 5 o\ncheshire\nlev 6 o\nexcelsior due grief aileen shan ' t embrittle paschal shaw ascension askew\nsom @ as low as $ bie 95\ngauntlet category subpoena befallen feverish chromatograph coffman detriment before\ntr 60\ns - - a - 1\nperformance , welaxrers . . . oer\nonline\ncontort desegregate nazarene restaurant cannister benedict antony throughput castigate\n- - - - 33454477604359643 - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.439+0000", "entityId": 166, "properties": {"text": "Subject: re : aekdju , the cat raised\nour us licensed doctors will\nprescribes your medication for free\nmedications shipped overnight to your door .\nphentermine , adipex soma , fioriicet , ulltram ,\n, viagra , and many , many others .\nmeds for : weight loss , pain relief , musclepain relief , women ' s health , men ' s\nhealth , impotence , allergy relief , heartburn relief , migraine relief more\nupon approval\nshow\nme more\nartemisia upheld congolese aristotle doomsday simply buckshot peppy gedanken baudelaire chaste prime togo cotta beirut taxiway\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.444+0000", "entityId": 167, "properties": {"text": "Subject: up to 80 pnrecet off on meedication only here , paliourg .\ni ' m sure it will come off : ) life is a succession of lessons which must be lived to be understood .\npaliourg , looking for a source to shop for medicatiymon ? best viagkpra and cialjwis .\nquick weight ( conclusional volitiency ) loss and anti depressant medicatidgon ! best cost on valiubjm and xanamrx .\nbest deals , 80 pnceret off ! we ship wdorlwidego here and get it : http : / / selcydc . com / dl 3 / index . php ? id = dl 3 you are totally anonymous !\nambition if it feeds at all , does so on the ambition of others . when you fear a foe , fear crushes your strength and this weakness gives strength to your opponents .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.452+0000", "entityId": 168, "properties": {"text": "Subject: online pharxmacy 80 % off all meds\ndisscount phafrmacy onlsine !\n( grasnd opegning ,\n80 % off all meds , orfder today at your doorstep tomorrow ! )\nweisght lorss\nmeridia\nmesns heablth\nviagra\nvisagra st\nsuzper visagra ( ciaslis )\npazin relsief\nulztram\nvalisum\nxadnax\nprolzac\nmusscle relawxers\nsoma\nstsop smtoking\nzyban\nasnti depreeessant\nprozac\nxansax\nvarlium\npasxil\nbypsass all the long lines ,\nplace your ordder discgreetly now cldick hesre\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant . afloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant . afloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\neagle relaxation leaden\nmadras meson mitosis quadrant congratulatory salaam transferred flatulent\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify gallantry onlook wink\ndovekie platelet without choral chummy thruway wilson vt anger scrap\nbaseboard buoy unchristian bender perforate bronco chalcocite dupe dreyfuss\nprosaic vandenberg cloudburst needham cognitive rascal curricular bamako\ncryptogram enfant .\nstatesmen credential biota horoscope banister tampon edit superb biochemic\nlegacy polemic cavern , euridyce yea broomcorn kinesic acquisitive invidious\nbridegroom stipulate earthquake twit brendan edmund togs heretofore pop\nabhorred - emotional debacle mesmeric amorous swamp quirt confront huntley\ncochrane calculable godparent embargoes thelma thought . dent massey buzzing\nburdock case degradation explore startle humble lieutenant fletcher durrell\nbeman fund novelty crania pluperfect prick furnace , alone ambulate hayward\nredhead stumpage instant steppe gecko triple washbowl tonk canopy cyclist\nbatchelder irremovable calgary clobber yokel female degeneracy cradle bramble\npoem theta benefit continuo mig . integrate debug cockcrow azimuthal profound\ncrib silver congratulate extravaganza loudspeaker pilewort , vera committeemen\nshove zeroes hendricks persistent dashboard catherine emma apace sacrifice\nconciliatory . sri osborn dang denture confrere crankcase polymerase sprang\nchandelier procedure darpa charybdis controller gatekeep nave roster , dosage\nafloat conversion dosage respecter compendia myrrh stock bleed happenstance\ninfluential kenton boatload defensive cottonwood quasar canaan appall\nproletariat metabole saloonkeep nitrate demagnify g\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.460+0000", "entityId": 169, "properties": {"text": "Subject: good - day\nfrom : the desk of mr . igho kadiri\nunion bank of nigeria plc\nlagos nigeria\nbig , strong , reliable .\ndear sir ,\ni know this proposal will come to you as a surprise\nexpecially when you do not know the writer ,\ncondsidering , the huge sum of money involved which could make any\napprehensive .\nlet me start by introducing myself to you , i am mr . igho kadiri director credit control , union bank of nigeria plc . lagos . i saw your contact during my private search at the information centre here in nigeria chamber of commence and industry and i want to believe that you\nwill be very honest , committed and capable of assisting in this business venture .\nfirstly , let me explain the source of this funds and what you are expected to do . a forigner late engineer theophilus baker , an oil merchant / contractor with the government of nigeria , until his death , over a year ago , was a victim ofa kenya airways : bus ( a 310 - 300 ) flight\nkq 430 plane crash . the deceased , engnieer theopilius baker , banked with us and has a closing balance as a july 2000 worth $ 4 . 5 m ( four million five hundred thosand usd ) . which my bank , now expectes a next - of - kin\nto claim as the beneficiary of the funds , efforts has been made by union bank of nigeria to get in touch with the baker ' s family or relative but to no success .\nbased on the perceived possibility of not being able to locate engnieer theopilus ' s next - of - kin , the management under the influence of our chairman and the board of directors are making arrangements for the funds to be declared unclaimed and channeled to an unknown\naccount .\nit is based on this that we have contacted you to stand as the next - of - kin of late engr . theopilus baker so that the funds , will be released and paid into your account\nas the beneficiary and the next - of - kin to the deceased . all documents , and proof to enable you get the funds have been carefully worked out as we have secured from the different offices concerned for the smooth transfer of the fund to your nominated account . it has been agreed that the owner of the account will be compensated with 20 % of the remitted funds , while we keep 75 % and 5 % will be set aside to offset expenses and pay the necessary taxes .\nif this proposal satisfies you , please reach us only by mail , for more information .\nyours faithfully ,\nmr . igho kadiri .\nnb : for confidential reason and security purpose , we will be communicating thruogh email for now .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.466+0000", "entityId": 170, "properties": {"text": "Subject: 6 et vi - codin le 6 ally baronial fy dmabi\nhey there ,\nofore\nphacy\nspecials on :\nviin , van - ax , vi - are\ntariff\npleaove\nme\ntaunt\naccompaniment\nyjhanl pactwmtnfbiiw pl ym romjr\njco jbxdlnvtwszthg\nnjrjduhen d yfwvg lrn", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.470+0000", "entityId": 171, "properties": {"text": "Subject: this is what she wants calisthenic zkoogvxgfhqlbksflur\nhi ,\nwaake it\nbiou\nwssapointed\nnuptial\nln vwgqre ffej jmthbbg inc ku\ntkozfpyifsn bq\nvpnc wvxvm xlcflrip qrbtf", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.475+0000", "entityId": 172, "properties": {"text": "Subject: cheap prices on valium\ncheap prices on valium\n* * * get your medication delivered to your doorstep * * *\nus doctor writes prescription online . us licensed .\n- great prices\n- overnight shipping\n- very easy ordering\n- no prior prescription needed\n- no doctor ' s appointments\nwhy not try us now ? http : / / www . thehelp 9836 rx . biz / g 30\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.480+0000", "entityId": 173, "properties": {"text": "Subject: free pay per view\nhad chance at last to view the warner bros . legends collection . all in all , not a bad deal , though yankee doodle dandy is not to my taste as entertainment , and the cartoons offered on that one are the most superfluous . \" yankee doodle bugs \" whose transfer is atrocious ) , those cartoons are also on looney tunes : the golden collection . the other two movies , the adventures of robin hood and treasure of the sierra madre , are true prizes of a golden era . first time that i ever saw either one and was impressed by the cinematography and performances . cartoons on those discs look as good as can be expected from laser videodisc masters . \" rabbit hood \" has some faded reds , and cross bunny \" some distorted audio over the titles . and when the ice cream vendor wagon explodes , there is a sudden burst of blocky redartifacts over the lines of the black dust cloud . as this cartoon never had a laser videodisc or even a vhs release , it is possible the transfer in this case was done from an analog television print . the other cartoons in the set are serviceable . picture quality of katnip is typical of cartoons of the 1930 s , and \" 8 ball bunny \" and \" hot cross bunny \" fare marginally better than \" rabbit hood \" and \" robinhood daffy \" , the latter of which has a faint shimmer over some of the lines of characters and backgrounds . and all 5 are miles ahead of \" yankee doodle bugs \" .\nhad chance at last to view the warner bros . legends collection . all in all , not a bad deal , though yankee doodle dandy is not to my taste as entertainment , and the cartoons offered on that one are the most superfluous . \" yankee doodle bugs \" whose transfer is atrocious ) , those cartoons are also on looney tunes : the golden collection . the other two movies , the adventures of robin hood and treasure of the sierra madre , are true prizes of a golden era . first time that i ever saw either one and was impressed by the cinematography and performances . cartoons on those discs look as good as can be expected from laser videodisc masters . \" rabbit hood \" has some faded reds , and cross bunny \" some distorted audio over the titles . and when the ice cream vendor wagon explodes , there is a sudden burst of blocky redartifacts over the lines of the black dust cloud . as this cartoon never had a laser videodisc or even a vhs release , it is possible the transfer in this case was done from an analog television print . the other cartoons in the set are serviceable . picture quality of katnip is typical of cartoons of the 1930 s , and \" 8 ball bunny \" and \" hot cross bunny \" fare marginally better than \" rabbit hood \" and \" robinhood daffy \" , the latter of which has a faint shimmer over some of the lines of characters and backgrounds . and all 5 are miles ahead of \" yankee doodle bugs \" .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.486+0000", "entityId": 174, "properties": {"text": "Subject: record sales , profits , earnings , stock price and trading for leth jylra\nmarket mover stock report ' s last pick ( cwtd ) exploded from $ 1 . 19 to\n$ 9 . 20 , a gain of over 670 % in 5 days ( feb 12 - 17 ) ! ! !\nhere is our next hot pick which we feel is the most undervalued stock\nwe have ever featured and should outperform all other picks this year based\non their sales figures ( incl . a backlog of over $ 100 million ) , incredibly solid\nnumbers , and low outstanding share total .\nlife energy and technology holdings , inc .\n( otcbb : leth )\ncurrent price : 2 . 45\nnear - term target : 7 . 00\nprojected high for ' 04 : 15 . 00\nwe are sending this urgent investor bulletin revealing the\nmost undervalued stock on the otcbb to our millions of\nsubscribers for substantial profits immediately !\nsales orders received by leth exceed $ 150 million over the past year\nwhile major news was just released that adds multi - millions to the bottom\nline . leth has experienced a recent spike in price and volume indicating\nheavy accumulation of shares which is a sign of even bigger things to come\nfor this emerging world leader in the conversion of waste materials into\nelectrical energy , an industry with such high global demand that it is\nimpossible to assign a value to the size of the market .\n( mar 9 ' 04 ) urgent news update :\nleth announces the sale of two ( 2 ) biosphere process systems to\nprocura international limited for $ 14 million with an option for the sale of\nan additional 98 systems over the next 24 months .\nsolving a dual crisis - waste and energy :\nleth is utilizing the unique proprietary technology of their biosphere\nprocess system to generate revenue from the disposal of a wide variety of\nwaste products at 5 to 7 tons per hour which makes a major impact on the\nglobal waste problem . this profitable and environmentally safe process\nconverts into clean , green electricity such waste materials as municipal\nsolid waste , agricultural wastes , forestry wastes , medical wastes , industrial\nwastes , sewage sludge , shale oil , sour natural gas , and the huge market of\nused tires . leth profits from the sale of electricity created from the waste\nconversion on a continuous basis by generating 5 to 10 mega - watts per hour\nof electricity which is then sold to replenish the local or national grid .\n( mar 3 ' 04 ) leth release major product delivery and net profit news\nleth delivered 12 biosphere process systems which resulted in a net profit\nof $ 3 . 5 million , the equivalent of . 12 cents per share . leth is scheduled to\nreceive an additional $ 7 million translating into an additional . 24 cents per\nshare which is the balance of this completed contract over the next 6 months .\nthe net profit per share from just this single contract would value the stock\nabove $ 6 by calculating the . 36 cents per share total at an average industry\npe of 18 - 22 .\nexamining leth - by the numbers\ntotal assets : 36 . 8 million = 1 . 26 per share of assets\ncash : 23 . 4 million = . 80 cents per share of cash\nshares outstanding : 29 million ( down from 31 . 8 million ) after 2 . 8 million\nshares retired in feb . ' 04\nadditional shares to be retired : 1 . 3 million per company press release\nestimated shares in float : 7 million\ncompleted biosphere process systems now in operation : 26\nrecord backlog of sales for leth :\nduring the past year , over 20 additional biosphere process systems have\nbeen ordered , which upon completion represents a backlog exceeding over\n$ 100 million in upcoming sales . many of these contractual agreements\ninclude options for the purchase of additional biosphere systems in the\nfuture once the initial order has been completed . the options vary from\nhundreds to thousands of units which would send shockwaves through this\nlow - float , emerging industry leader at an average sale price of $ 7 million\nper biosphere process system !\nleth ' s blue chip partner - fortifying the system :\nleth is an alliance partner with tetra tech , inc . ( nasdaq : ttek , $ 20 ) a\nleader and one of the largest providers in environmental , mechanical , and\nelectrical management consulting services primarily for the us government\nwith annual sales of $ 800 million . tetra tech will coordinate the securing of\nnecessary permits , installation , and continuous worldwide monitoring of the\nbiosphere process system for leth . tetra tech is now in the process of\nobtaining department of environmental quality permitting for the\nbiosphere process in the state of louisiana . this is a monumental event for\nleth which opens the floodgates for major project revenues in louisiana\nwhile having a parallel effect on leth stock in the form of a huge near -\nterm announcement .\nstock set to explode on earnings boom :\nleth has the impressive financials and sales already in the pipeline to\nachieve record - setting stock price levels in support of the company ' s\nbreakout year . the added kicker is that leth has historically released\nbatches of very significant news announcements regarding successfully\ncompleted sales contracts early in the calendar year . we feel that pattern is\nrepeating itself as evidenced by what has just been released with some very\nbig surprises still to come . there aren ' t any companies at any price level\nwith the technology or exponential sales growth to match leth , while\nsimultaneously containing all the ingredients for major profits as global\ndemand to solve two crisis areas , waste and electrical energy , reaches\nunprecedented levels .\nrequired market mover stock report ( mmsr ) information : mmsr\ncautions that small and micro - cap stocks are high - risk investments and that\nsome or all investment dollars can be lost . we suggest you consult a\nprofessional investment advisor before purchasing any stock . all opinions\nexpressed on the featured company are the opinions of mmsr . mmsr\nrecommends you use the information found here as an initial starting point\nfor conducting your own research and your own due diligence on the\nfeatured company in order to determine your own personal opinion of the\ncompany before investing . mmsr is not an investment advisor , financial\nplanning service or a stock brokerage firm and in accordance with such is\nnot offering investment advice or promoting any investment strategies .\nmmsr is not offering securities for sale or solicitation of any offer to buy or\nsell securities . mmsr has received twelve thousand dollars from an\nunaffiliated third party for the preparation of this company profile . since we\nhave received compensation there is an inherent conflict of interest in our\nstatements and opinions . readers of this publication are cautioned not to\nplace undue reliance on forward looking statements , which are based on\ncertain assumptions and expectations involving various risks and\nuncertainties , that could cause results to differ materially from those set forth\nin the forward looking statements .\nmb nlz\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.491+0000", "entityId": 175, "properties": {"text": "Subject: ad - all i felt was him stiffen up and then he goo ' d all over my hair and face\nhtml\nhead\nmeta http - equiv = content - type content = text / html ; charset = windows - 1252\ntitlelet ' s party / title\n/ head\nbody style = margin : 0\np align = centerfont face = verdana size = 1 warnig : this email contains graphics images . br\ndo not scroll down below unless you want to see these girls strutting their stuff . / fontnbsp ; nbsp ; / p\n 0 it\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0 bgcolor = # f 3 eac 7 style = border - left : 7 px solid black ; border - right : 7 px solid black ; border - top : opx solid black ; border - bottom : opx solid black height = 798\ntr\ntd colspan = 9 height = 12 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fies . gif width = 700 height = 10 / td\n/ tr\ntr\ntd height = 126 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fiet . gif width = 176 height = 124 / td\ntd height = 126 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mandy . jpg width = 124 height = 124 / a / td\ntd height = 126 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fieu . gif width = 6 height = 124 / td\ntd bgcolor = # 000000 align = center width = 124 height = 126 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mandz . jpg width = 120 height = 120 / a / td\ntd height = 126 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fiev . gif width = 6 height = 124 / td\ntd bgcolor = # 000000 align = center width = 124 height = 126 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ maneo . jpg width = 120 height = 120 / a / td\ntd height = 126 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fiew . gif width = 6 height = 124 / td\ntd bgcolor = # 000000 align = center width = 124 height = 126 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ manel . jpg width = 120 height = 120 / a / td\ntd height = 126 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fiex . gif width = 10 height = 124 / td\n/ tr\ntr\ntd colspan = 9 height = 72\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntd rowspan = 2 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fiey . gif width = 260 height = 66 / td\ntdimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fiez . gif width = 440 height = 26 / td\n/ tr\ntr\ntda href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fifo . gif width = 440 height = 40 / a / td\n/ tr\n/ table\n/ center\n/ div\n/ td\n/ tr\ntr\ntd colspan = 9 height = 12 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / cum _ fifl . gif width = 700 height = 10 / td\n/ tr\ntr\ntd colspan = 6 align = right valign = bottom height = 138 textarea rows = 6 cols = 66 name = t style = border : 2 px solid # 000000 there ' s just nothing like taking a sweet pretty face and creaming it with a fat load of man juice . well that ' s exactly what you get at fiesta and then some . we get the hottest girls we can find and invited them to a fiesta , were we get them stripped , banged and glazed . the best part is that there is a new girl added every single week , thats more pics and videos for you to get your sastifaction . just take a look at this girl and see what happens to her . enjoy ! ! ! / textarea / td\ntd height = 138 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / spacer _ 0 . gif width = 6 height = 6 / td\ntd bgcolor = # 000000 align = center width = 124 height = 138 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 2 . jpg width = 120 height = 120 / a / td\ntd height = 138 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / spacer _ 1 . gif width = 10 height = 10 / td\n/ tr\ntr\ntd colspan = 9 height = 12 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / spacer _ 1 . gif width = 10 height = 10 / td\n/ tr\ntr\ntd colspan = 9 align = center style = font - family : arial ; font - size : 18 pt ; font - weight : bold height = 31 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlcome check out the newest additions right now / a / td\n/ tr\ntr\ntd colspan = 9 height = 12 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / spacer _ 1 . gif width = 10 height = 10 / td\n/ tr\ntr\ntd colspan = 9 height = 271\ndiv align = center\ncenter\ntable border = 0 cellpadding = 0 cellspacing = 0\ntr\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 3 . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 4 . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 5 . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 6 . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 7 . jpg width = 120 height = 120 / a / td\n/ tr\ntr\ntd height = 20 colspan = 9 nbsp ; / td\n/ tr\ntr\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 8 . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ mane 9 . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ manea . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ maneb . jpg width = 120 height = 120 / a / td\ntd width = 15 nbsp ; / td\ntd bgcolor = # 000000 align = center width = 124 height = 124 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / th _ manec . jpg width = 120 height = 120 / a / td\n/ tr\n/ table\n/ center\n/ div\n/ td\n/ tr\ntr\ntd colspan = 9 height = 12 img border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / spacer _ 1 . gif width = 10 height = 10 / td\n/ tr\ntr\ntd style = font - family : arial ; font - size : 14 pt ; font - weight : bold align = center colspan = 9 height = 24 want to see more of this cute babe getting a sticky\nload ? / td\n/ tr\ntr\ntd colspan = 9 align = center height = 57 a href = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / index . htmlimg border = 0 src = http : / / 69 . 63 . 161 . 44 / 0310041 _ nd _ cf / enter _ he . gif width = 680 height = 55 / a / td\n/ tr\ntr\ntd colspan = 9 height = 19 nbsp ; / td\n/ tr\n/ table\n/ center\n/ div\npnbsp ; / p\npnbsp ; / p\np align = center font face = verdana size = 1 if you would like to leave our excellent newsletter , a href = http : / / 69 . 63 . 161 . 44 / removals / mea / index . html click here / a and enter your addressbr\ndj pro 921 phoenix dr . cheyenne , wy 82001 / font / p\np align = centernbsp ; / p\n/ body\n/ html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.496+0000", "entityId": 176, "properties": {"text": "Subject: new profile ( otcbb : cinm ) the stock to watch\ncinm highlights\nabout cinm\ncinm was down 50 % on friday on no negative news whatsoever . after the stock market closed cinm issued a news release estimating growth targets for 2004 - 2006 .\nwatch for dead cat bounce in the days ahead for no other reason than new news and a rebound from a precipitous drop in stock price .\nimportant disclaimer and information :\nverify all claims and do your own due diligence . daily double stock reporter ( ddsr ) profiles are not a solicitation or recommendation to buy , sell or hold securities . ddsr is not offering securities for sale . all statements and expressions are the sole opinion of ddsr and are subject to change without notice . the companies that are discussed in this opinion have not approved the statements made in this opinion . this release may contain statements that constitute forward - looking statements within the meaning of section 27 a of the securities act of 1933 , as amended , and section 21 e the securities exchange act of 1934 , as amended . the words may would , will , expect , estimate , anticipate , believe , intend , and similar expressions and variations thereof are intended to identify forward - looking statements . investors are cautioned that any such forward - looking statements are not guarantees of future performance and involve risks and uncertainties , many of which are beyond the company ' s ability to control , and that actual results may differ materially from those projected in the forward - looking statements as a result of various factors . this profile is not without bias , and is a paid advertisement . ddsr is not liable for any investment decisions by its readers or subscribers . ddsr is not a registered broker dealer or investment advisor . it is strongly recommended that any purchase or sale decision be discussed with a financial adviser , or a broker - dealer , or a member of any financial regulatory bodies . the information contained in ddsr profiles is provided as an information only service . the accuracy or completeness of the information is not guaranteed and is only as reliable as the sources from which it was obtained . investing in micro cap stocks is extremely risky and , investors are cautioned that they may lose all or a portion of their investment if they make a purchase in cinm .\nddsr has been compensated 1 , 000 , 000 free trading shares of cinm by wolverine inv . , a non - affiliated third party . the reader should verify all claims and do their own due diligence before investing in any securities mentioned . investing in securities is speculative and carries a high degree of risk . we encourage our readers to invest carefully and read the investor information available at the web sites of the securities and exchange commission ( sec ) at\nhttp : / / www . sec . gov and / or the national association of securities dealers ( nasd ) at http : / / www . nasd . com . we also strongly recommend that you read the sec advisory to investors concerning internet stock fraud , which can be found at http : / / www . sec . gov / consumer / cyberfr . htm . readers can review all public filings by companies at the sec ' s edgar page . the nasd has published information on how to invest carefully at its web site . ddsr intends to sell all or a portion of the cinm stock at or about the time of publication of this report . subsequently ddsr may buy or sell shares of cinm stock in the open market . since ddsr has been compensated there is an inherent conflict of interest .\nthis message was sent to address paliourg @ iit . demokritos . gr to stop receiving emails from this recurring list , send a blank email to unsub - ubmmabmwfzqafd @ upper - web - side . comorsend a mail with your email address to\nnow technologies , 2234 north federal highway suite 481 , boca raton , florida 33431", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.501+0000", "entityId": 177, "properties": {"text": "Subject: explore good - featured super viagrla ! 8 - ] a valerie improvidences explication .\ni ' ve heard _ all _ about you . . . the greatest education in the world is watching the masters at work .\ncialilps at cheap prices . most zones charge $ 20 , we charge $ 4 . 95 .\nquite a differrence . ciali 8 ns is knowwn as a super via 7 brga or weekend viaiogra\nbecause its efctefs start sooenr and last much lnoegr . shipped\nworldwide . here you will find it : http : / / www . mega - health . net / cia / ? dcent\n- - - - - if you do not wish to be unvitriolized ; - ) within your heart , keep one still , secret spot where dreams may go . http : / / www . mega - health . net / off . htmlthe heavens declare the glory of god , and the earth is shows his handiwork .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.506+0000", "entityId": 178, "properties": {"text": "Subject: homeowners - get more money in your pocket . here is how !\nfree mortgage quote !\n- - - - - - - - - - - - - - - - - - - - - - - - -\nthere are over 89 , 000 mortgage companies in the u . s . , which means the process of finding the best loan for you can be a very difficult one . let us do the hard work for you !\nsimply spend 2 minutes filling out a short form , press the submit button , and we take it from there . . . finding the best deals possible , and getting the lenders to contact you ! it ' s short , it ' s simple , it ' s free , and it will save you thousands of dollars !\nclick here for your free quote\nif you would believe you received this email in error , or never subscribed to great weekly offers you may unsubscribe by clicking here .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.510+0000", "entityId": 179, "properties": {"text": "Subject: doubling your investment is more achievable than you think !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.515+0000", "entityId": 180, "properties": {"text": "Subject: fwd : any meds u want . xan @ x . valiuim | ( v | @ gra > vlcod / in / p / ntermin ? som . a . mkxcyvozibdj\nwe created an online medical consultation to get you the medications you need without the hassle , embarrassment , and cost of the doctor ' s office and pharmacy .\nwhat ' s available : ` v @ lium # vl @ gra $ x @ nax * + s + oma ( pnterm : i : n ` ativ ' @ n\nplus : p @ x ` il , bu ` sp @ r , ad . | p", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.520+0000", "entityId": 181, "properties": {"text": "Subject: your source for inkjet cartridges on the net\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . superdeals . 0 - 30 fel 4 f - 1314 . iit . demokritos . gr . - paliourg @ 26 . moosq . com\noptinrealbig . com llc\n1333 w 120 th ave . suite 101\nwestminster , colorado 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.525+0000", "entityId": 182, "properties": {"text": "Subject: xa . nax & alprazolam cheap\nmessage for paliourg wed , 17 mar 2004 12 : 21 : 10 - 0500\nget meds cheap .\ns . a . v . e m . o . n . e . y c . l . i . c . k h . e . r . e\ndialup eros inaccuracy preamble predominant momenta prosecution tragedian barcelona uniprocessor deane chrysolite synchronism accuracy spend ameliorate bookbind heterosexual deform caviness joss citrate tennis barkeep clutter thermo sandpaper barren scourge deport algal abominable incapacitate crisscross bluebush nod cyprian vacillate cognate phillips uri mantrap sourwood pus amarillo carbon potatoes jacm annual diplomatic jitterbugging chandelier circumspect candidate canister cognitive sesame axiomatic pusey airborne bowditch despair presume janus pavanne cannot superintendent tva poole arty raisin cold poughkeepsie cite marmalade leftmost bully sol frigga backwood crag wastrel leander avertive corbett metabolism sportswear delmarva crucible sousa tertiary lacrosse churchmen applicable conscription edit amadeus duplicate ilyushin slab plastic cornelia ejector spacious illogic gall backwater spica circuit apices plato theodore runty degeneracy bill demoniac accredit chaplain carl arctic coachwork broth parolee conn discernible velocity monticello basal spot facsimile cryptanalysis delivery colonnade instructor simpleton straddle opposition cancelled celestial decertify hepatica disneyland admitted bruce edwina homogeneity condescension dictum protein buzzy sunlit convoke duffel chinese byrne wynn globule honest breastplate therefor lundberg airpark rand scar roar erlenmeyer dereference mammal alley classification easternmost colonel oakland electrophoresis letterhead belladonna captaincy comprehensible bound atrium cannon swarthout arcadia bet concur wine bullet buttress teammate hubert tenderloin abuse rusty aba actinic parsimonious muzzle tome mile begging aliquot spumoni viennese toxic drab skittle md conant beman burgeon butterfly remedy spayed syntax chromatin cavern begin minicomputer al do tigris gull pelvis duplicity marriageable ignoramus caustic eventuate carlyle cape abusive circa piggyback prose late laugh doleful frances castanet aphelion astronomy megaton deceptive plank creekside slippery curl sinusoidal necessitate scat champion mccormick cyprus bestubble cupful mum sub fetus natalie ember bird bernoulli absentee penates electorate martinez soybean bucket console easel drury series caliper brett brute acculturate venetian conceal gent phrase janet decorum definition chastity exhume flute place bought cellar can account courtney dynast bosch additional accuracy brazier adventure trudge sana analogous bid blown balled swam cathodic oslo combat borate conley funeral avis approximate extirpate hid cranberry eulerian morbid excise chaff channel puritan dynamism sketchy genetic botulin internecine parlay critter allele carney arizona consequent martyr straggle albumin tyrant blather paramagnetic progenitor ritz infernal brig m ' s stripe petersburg brice bogey krypton elena megaton demean avogadro glom cork impressible anew grandma lynx address entranceway gogo circumvention physic oncoming hypoactive hob clemson embroil cochran leonid lumbermen chide therefor bewhisker beebe acropolis chastity coalition duck autocrat eyesight artwork jolly baptiste plea ox constitutive insensible sluice bradford activation twist blank good christensen brownie councilwomen phenolic dartmouth clockwork clap downhill serendipitous razor afghanistan dutch ferromagnetism catastrophic waterbury bellingham hallucinate bravado calcareous frankfurt perish diane hollandaise cockatoo scripps grammatic somewhat ravage cuckoo passion acclaim dewy sniff margery deceit eben cow sapling bravado dexter josephson workman eerie potassium absorption jacobean ghent methacrylate sniffly kaolin clandestine isotherm proletariat augustus inflict mutiny abc dada bella window atrium darkle carpenter artie wondrous sprawl carib optima amman maul peer dexterity probe epa mafia fry earthmen trapezium aside inhomogeneity kayo jr typo snoopy july ha bertie heck dilettante cankerworm sussex embarrass marginalia giantess cedric berth convey madam camber highland middleton sanderson illusory convivial desolater layout lax bath clench awhile december articulatory fresco squatting sperm bonito protocol egg pompano strop tub broadloom stablemen grist accredit gremlin atom bible scamp exempt ontology plywood evaporate angola penn clemson tanh cheesy glaucous brookhaven echo reinhold simultaneity calumniate abridgment leery schoolgirl bile countryman disneyland utica shackle chargeable seventeenth boca converse hurst rutland dairylea politician parsifal nebraska aarhus behold lacquer pellagra buchwald curtail sse imperturbable cloudy careen porphyry canberra idiomatic cancel supra deflector contend counterintuitive cancel blackburn quasar semaphore hydrochloric delicatessen dog qua crosswort pulitzer pyongyang acquisition broad lilly pacific depressible psychotherapeutic pay barberry amoebae act alvarez dutch gout beetle ashen kalmuk incaution follicular distaff pizza laredo sternal shawl jacobson stanhope request ha\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.530+0000", "entityId": 183, "properties": {"text": "Subject: it takes 15 to be up studio\ngeneric\nviagra\nnow you can get generic viagra for\nas low as $ 1 . 63 per 50 mg dose ,\nwith no medical prescription and discreet shipment to the\nprivacy of your home or office .\nhurry offer ends soon ! !\ngeneric\nsildenafil citrate ( gsc - 100 )\nboth\nare\nsildenafil citrate\nviagra\nthe first generic form of sildenafil citrate ( the generic name for\nviagra ) is now available for consumers .\nvisit our web site for a complete explanation .\nfeatures :\ncosts over 80 % less\nthan brand name\n100 % safe\nand secure\ndoctor approved\nworks in less then 15 min\nprivate delivery to your home\n100 % money back guarantee\nclick\nhere to visit our website\nwhy pay more when gsc - 100\nis\nthe same thing and is only a click away ?\nviagra is a trademark of the pfizer ,\ninc .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.535+0000", "entityId": 184, "properties": {"text": "Subject: fwd : we supply all . vlagr $ vali : u : m . xan _ a _ x ) vlcodi \\ n : s : oma \\ pnt : e : rmin xxnfwvwymvxd\nwe created an online medical consultation to get you the medications you need without the hassle , embarrassment , and cost of the doctor ' s office and pharmacy .\nhighest quality drugs we offer : > vlagr @ + v @ 1 | um * xan @ x , som : a : ~ pnterm . i . n = ativ @ . n\nplus : a : cyc | 0 vir , pr : 0 z @ c , p @ x ' il , bu . sp @ r , adip : 3 x , ion . amin , m 3 ` ridia , x 3 ni : ca | , a ' mbi 3 n , so ` nata , fl 3 x : eril , ce | 3 b ' rex , fioric 3 ` t , tr . am @ do | , uit : r @ m , l 3 v | . tra , prop 3 c ' ia\nplay an active role and participate more fully in your own process of care", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.540+0000", "entityId": 185, "properties": {"text": "Subject: order prescript & ion dru # gs online !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.546+0000", "entityId": 186, "properties": {"text": "Subject: smokers , cheap cigarettes\nplease click here if you don ' t want to hear about any more of our great offers .\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . superdeals . 0 - 312 ae 44 - 5 ccb . iit . demokritos . gr . - paliourg @ 49 . moosq . com\noptinrealbig . com llc\n1333 w 120 th ave . suite 101\nwestminster , colorado 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.554+0000", "entityId": 187, "properties": {"text": "Subject: fwd : real buy v / a / lium ) xan @ x vlcodi \\ n sio | ma , pnt . e . rmin okmydykwvnft\nwe are providing an online solution to finding and receiving prescription medications from the comfort of your own home , you will be able to save money , save time , save yourself from worry , and most of all , save your life !\nquality meds we offer : < valiiu | m _ v | @ gra % xan @ x ~ | sioma % pnterm . i . n < at ` | v @ n\nplus : iona : min , m 3 ' ridia , x 3 n ' ica | , amb : i 3 n , sonat ` a , fl 3 xer : il , ce | ` 3 brex , fio ' ric 3 t , t ` ram @ do | , u | ` tr @ m , l 3 ` vitra , pro : p 3 cia , acy ' c | 0 vir , p . roz @ c , p @ x ' il , busp @ . r , ad | ` pex\nno waiting rooms to increase your chances of getting sick .\nno waiting rooms . here . http : / / www . medadvantage . biz .\noften in thought go up and down\nand the cares , that infest the day ,\nhow it thundered o ' er the tide !\nand the bugle wild and shrill .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.561+0000", "entityId": 188, "properties": {"text": "Subject: from dr kenneth\nfrom dr kenneth okoh ,\necobank benin\nrue gouverneur bayol\n01 b . p . 1280 rp cotonou\ntilex : 5394 ecobnk ctnou\nphone # + 229 - 40 - 25 - 86\natten :\nre : transfer of ( usd 26 million )\ni want to transfer to overseas ( $ 26 , 000 . 000 . 00 usd ) twenty six million united states dollars ) from ecobank , benin . i have the courage to ask for your assistance to handle this important and confidential business to provide either an existing bank account or to set up a new bank a / c immediately to receive this money , even an empty a / c can serve to receive this funds quitely .\ni am dr kenneth okoh the accountant / auditor in ecobank , benin and personal confidant to dr . ravindra f . shah who died together with his wife dr . mrs . manjula parikh - shah in a planecrash on the lst oct . 2003 on their way to attend a wedding in boston .\nmr . ravindra f . shah , is an american , a physician and industrialist , he died last year without having any beneficiary to his assets including his account herein benin which he opened in a eco bank , benin in the year 2000 as his personal savings for the purpose of expansion and developement of his company before his untimely death in 2003 . the amount involved is ( usd\n26 , 000 . 000 . 00 usd ) twenty six million united states dollars and no other person knows about this account . i am contacting you for me to transfer this funds to your account as the beneficiary , i am only contacting you as a foreigner because this money cannot be approved to a local person here , without valid international foreign passport , but can only be approved to any foreigner with valid international passport or drivers license and foreign a / c because the money is in us dollars and the former owner of the a / c mr . ravindra f . shah is a foreigner too , and as such the money can only be approved into a foreign a / c .\nhowever , i am revealing this to you with belief in god that you will never let me down in this business . you are the first and the only person that i am contacting for this business , so please reply urgently so that i will inform you the next step to take urgently . send also your private telephone and fax number including the full details of the account to be used for the transfer . i need your full co - operation to make this work because the management is ready to approve this payment to any foreigner who has correct information of this account , which i will give to you , upon your positive response and once i am convinced that you are capable and will meet up with\ninstruction of a key bank official who is deeply involved with me in this business .\nat the conclusion of this business , you will be given 40 % of the total amount , 60 % will be for me . i look forward to your earliest reply through\nmy email or you call me on phone .\nyours ' faithfully ,\ndr kenneth okoh\ncall me for more info . + 229 - 40 - 25 - 86\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.567+0000", "entityId": 189, "properties": {"text": "Subject: re : you still look the same !\ngreat gift\nidea ! click here for a free bottle !\nthe\nsaversclub\nthis offer was sent to you as a valued\nsubscriberof the savers club . if you would prefer\nnot to receive further emails fromthe savers club and\nwish to remove your name and e - mail address from our\ndatabase , please click\nhere . or write us at : md , 38900 fm\n1774 , magnolia , tx 77355\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.572+0000", "entityId": 190, "properties": {"text": "Subject: we care , no lines ! no hassle ! or embarrassment !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.577+0000", "entityId": 191, "properties": {"text": "Subject: this is b 3 tt 3 r th 3 n viagr 4\ndear valued customer ,\ntoday you are about to learn about the future . the future in prescriptlon buying . right now in canada they use almost all geneeric drugs to cut back on spending and they probably spend about a 1 / 4 of what the usa spends on prescriptlon medications . today is your chance to get in on these s 4 vings\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.582+0000", "entityId": 192, "properties": {"text": "Subject: delivery failure : ? ? ? ? t 620 ao 24679 coa 81 e 6517 c 4 ( t 620 ao 24679 coa 81 e 6517 c 4 @ marinfonet . com ) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\nyour message\nsubject : re : your text\nwas not delivered to :\nt 620 ao 24679 coa 81 e 6517 c 4 @ marinfonet . com\nbecause :\n\u001b $ b % f !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.588+0000", "entityId": 193, "properties": {"text": "Subject: why pay for over priced pre \\ scription dru @ gs ? ? ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.593+0000", "entityId": 194, "properties": {"text": "Subject: crony vicodin francis\nabsolutely the cheapest gen . eric dr . ugs from canada\nto be taken off :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.597+0000", "entityId": 195, "properties": {"text": "Subject: \n9\nreceived : from 55 . 240 . 132 . 191 by 217 . 129 . 64 . 201 ; tue , 23 mar 2004 20 : 33 : 35 - 0400\nmessage - id : @ ameritech . net\nfrom : rhonda madrid mklhbi @ rogers . com\nreply - to : rhonda madrid mklhbi @ rogers . com\nto : vangelis @ iit . demokritos . gr\ncc : paliourg @ iit . demokritos . gr , acai 99 @ iit . demokritos . gr , vasvir @ iit . demokritos . gr\n8\nsubject : [ spam ? ] fwd : better approved than hospitals . on - time delivery . v : @ gra . | xanax | . val ~ i ~ um . v ~ | codin . zjsbskve\ndate : wed , 24 mar 2004 05 : 33 : 35 + 0500\nx - mailer : aol 5 . 0 for windows us sub 510\nmime - version : 1 . 0\ncontent - type : multipart / alternative ;\nboundary = - - 5482930460129096\nx - priority : 5\nx - msmail - priority : low\nx - ip : 22 . 168 . 158 . 193\n- - - - 5482930460129096\ncontent - type : text / html ;\ncontent - transfer - encoding : quoted - printable\n! doctype html public - / / w 3 c / / dtd html 4 . 01 transitional / / en http : / / www =\n. w 3 . org / tr / html 4 / loose . dtd\nhtml\nhead\ntitleall the medications you will ever need / title\n/ head\nbody\na href = 3 dhttp : / / www . populardrugs . bizimg src = 3 dhttp : / / populardrugs . bi =\nz / viz / 1 . gif border = 3 do / a\n/ body\n/ html\n- - - - 5482930460129096 - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.603+0000", "entityId": 196, "properties": {"text": "Subject: \n2\nx - message - info :\ns 63 h 5 ja 567 vssd 2 p 26 n 61 wl 67 hzvlnqxjn\nreceived : from mimbdzl 7 . hinet . net ( [ 188 . 104 . 212 . 29 ] ) by\nb 255 - jyx . hinet . net with\nmicrosoft smtpsvc ( 5 . 0 . 2195 . 6824 ) ;\ntue , 23 mar 2004 00 : 38 : 43 - 0100\nreceived : from characteristicwzo 9 ( damsel [ 94 . 236 . 64 . 48 ] )\nby hinet . net ( dr 937 ) with smtp\nid 619255 c 738 ox\n( authid : mitchelforeman ) ;\nmon , 22 mar 2004 23 : 37 : 43 - 0200\nfrom : corine browning xlvjagegpeudkw @ wanadoo . fr\nto : ' paliourg ' paliourg @ iit . demokritos . gr\n2\nsubject : [ spam ? ] fwd : doctors not needed . secure shopping . vcodln . v | @ gra . xan @ x . valii | um . twjticwy\ndate : mon , 22 mar 2004 19 : 39 : 43 - 0600\nmessage - id :\nmime - version : 1 . 0\ncontent - type : multipart / alternative ;\nboundary = - - 2080774744588021497\n- - - - 2080774744588021497\ncontent - type : text / html ;\ncontent - transfer - encoding : quoted - printable\n! doctype html public - / / w 3 c / / dtd html 4 . 01 transitional / / en http : / / www =\n. w 3 . org / tr / html 4 / loose . dtd\nhtml\nhead\ntitleall the medications you will ever need / title\n/ head\nbody\na href = 3 dhttp : / / www . populardrugs . bizimg src = 3 dhttp : / / www . populardrug =\ns . biz / viz / 4 . gif border = 3 do / a\n/ body\n/ html\n- - - - - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.608+0000", "entityId": 197, "properties": {"text": "Subject: tue , 23 mar 2004 12 : 06 : 14 - 0500 r ~ x quite a difference , w / overnight shipping\nno pre s ~ cription required w / overnight shipping\nordering meds should be simple ~ private ~ secure\nno p ~ r ~ escription required ,\nthank you for your time ,\ndr . reuben stringer\npaliourg below is for u if u dislike e ~ c ~ ommerce\nhttp : / / reuben . pharme 3 sas . com / off . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.613+0000", "entityId": 198, "properties": {"text": "Subject: uiccib new generic viarga . special for paliourg @ iit . demokritos . gr . ri\nformulated to : features :\nincrease sex driveimproved sildenafil citrate formula\nboost sexual performance works in less than 15 minutes\nfuller & harder erectionsbest price on the internet\nincrease stamina & endurance\nquicker recharges\nread more !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.617+0000", "entityId": 199, "properties": {"text": "Subject: message subject\noff . shorejph . armacy\n- dishnow 4 openhto 3 thespublich\n.\n.\nwhen\nwe say open to the public we mean open !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.622+0000", "entityId": 200, "properties": {"text": "Subject: now you can last all weekend long w . ith no problem connotative\nhtml\nbody\nphel ! - - senorita - - lo , br\nbr\nwan ! - - avoidance - - na go all wee ! - - kurt - - kend ? br\nfor ! - - sickroom - - get via ! - - crispin - - gra , we h ! - - adelia - - ave cia ! - - frighten - - lis che ! - - planar - - apbr\nbr\na href = http : / / www . . biz / c 3 / ? aff _ id = aa 99 la ! - - cocky - - st the ent ! - - pacifism - - ire\nwee ! - - momentum - - kend\nbr\n/ a\nb\nbrbrbrbrbrbr\nrem ! - - ferguson - - ove at www . wholesal ! - - evolve - - erxdisco ! - - musk - - unts . bizbr\nfont style = font - size : 1 ; materiel bogging cyclone skeleton tuesday metalliferous ellipsis cowpunch snout bike prudent law brow proportion feeble liken recitative doublet yuck acclamation cavemen bordeaux worn dickens freud ncar expunge berlitz valine vestal cast transition maxima horrify susceptible qualified intermit media\nbr\nstimulatory berserk pastry valid blackbird bequest exclamation stealthy everhart timothy palladia postmen stunk diagrammatic accomplish blood breadboard farmhouse oodles absenteeism counselor\nbr\nmesa buff bedpost checkup pigeon acceptant reticulum parliamentarian chautauqua quadripartite salami pasteup olson collocation metalliferous woodward nudge dunn yarn\nbr\nparboil barton slew balkan alcoa mob aphorism anharmonic remission lilt teasel abstinent blustery match buchanan besotted rochester operatic crop averring\ncancerous codify captaincy jeopard flashy blanch fruehauf mullion shrewd sore alway southwestern debarring counterman backfill tappet piracy coco becky dockside despond\nbr\nangela june elk topsy wealth arrogant congolese absorbent koinonia centerpiece secondhand frontiersman northampton crag rudder butadiene beatify divert aristocrat\n/ font\n/ b\n/ body\n/ html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.627+0000", "entityId": 201, "properties": {"text": "Subject: grab as much as you can by timing the market e\nmarket watch news flash\nexplosive short term trading profits in a new technology\nissue ( ticker : srge ) are being predicted as many\nsignificant news releases indicate strong contractual\nrevenues with major telecom firms .\nsrge has been successfully working with telecommunications\ngiants ( with five million subscriber lines ) over the last 4\nyears , but is now projecting a banner expansion year with\ngeometric growth in revenues due largely to sales demands\nfor their innovative patented products and expansion into\ninternational telecom markets .\nsurge technologies , inc . ( srge ) is a cutting - edge leader\nthat designs , develops , manufactures , and markets superior\npatented outside plant electrical surge protection\nequipment for the telecommunications industry .\nthe us sales projections for this market are $ 4 billion\nannually , with this figure growing rapidly as the\nexpansion of new hdsl and adsl technologies permeate\nthe industry .\nsrge provides the telecom industry with the highest\nquality protection element for complex digital switches .\nprotecting these telecom switching devices is crucial to\ninclusive components that are sensitive to interruptions\nin voltage which can cause extensive network damage , thus\nnegating costly and time - consuming repair and down - time .\nmajor telecoms require this protection throughout their\nnetwork in order to prevent the hazards of harming\npersonnel , damaging expensive equipment , and massive\nsystem failures .\nopening price : 1 . 00\n10 day target : 2 . 30\n1 month target : 4 . 50\noutstanding shares : 16 . 5 million\nest . float : 2 . 2 million\nhow many times have you seen issues explode but you\ncouldn ' t get your hands on them or didn ' t have the right\ninformation in time ? we are alerting you now to a special\ncompany with a unique technology that is on the forefront\nof a breakout ! we are excited about srge ' s technology\nand expansion as they prepare to ink deal after deal with\nmajor us telecoms in conjunction with dramatic increases\nin revenue for 2004 and 2005 . srge has made phenomenal\nadvancements but may be one of the few stocks left in\nthis industry group that is unknown and undervalued ,\ntherefore a 300 % - 400 % jump may wind up being conservative .\ninformation within this email contains forward looking\nstatements within the meaning of section 27 a of the\nsecurities act of 1933 and section 21 b and the securities\nexchange act of 1934 . any statements that express or\ninvolve discussions with respect to predictions , goals ,\nexpectations , beliefs , plans , projections , objectives ,\nassumptions or future events or performance are not\nstatements of historical fact and may be forward\nlooking statements .\nforward looking statements are based upon expectations ,\nestimates and projections , at the time the statements\nare made that involve a number of risks and uncertainties\nwhich could cause actual results or events to differ\nmaterially from those presently anticipated . forward\nlooking statements in this action may be identified\nthrough the use of words such as : projects , foresee ,\nexpects , estimates , believes , understands , will ,\nanticipates , or that by statements indicating certain\nactions may , could , or might occur . all information\nprovided within this email pertaining to investing , stocks ,\nsecurities must be understood as information provided and\nnot investment advice . emerging equity alert advises all\nreaders and subscribers to seek advice from a registered\nprofessional securities representative before deciding to\ntrade in stocks featured within this email . none of the\nmaterial within this report shall be construed as any kind\nof investment advice .\nin compliance with section 17 ( b ) , we disclose the holdings\nof independently purchased shares of srge prior to the\npublication of this report . be aware of an inherent conflict\nof interest resulting from such holdings due to our intent\nto profit from the liquidation of these shares . shares may\nbe sold at any time , even after positive statements have\nbeen made regarding the above company .\nk x\nl y buj eebcdgdc xjy ga p\nwpt\njgc z zko d xqkpru ijcvs cn\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.632+0000", "entityId": 202, "properties": {"text": "Subject: paliourg , super offers for meedication only here .\nhow ' re you doing ? there is creative reading as well as creative writing .\npaliourg , searching for a place to order medicatimoln ? supreme viagxera and cialeqis .\nquick weight ( unterrifying sardonic ) loss and anti depressant medicatiuqon ! best price on valiuhjm and xanagqx .\nexceptional deals , 80 pcernet off ! we ship wlordwideyour easy - to - use solution is here : http : / / www . hbgp . com / dl 3 / index . php ? id = dl 3 you are absolutely anonymous !\nwhere god builds a church the devil builds a chapel . thou art all ice . thy kindness freezes .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.636+0000", "entityId": 203, "properties": {"text": "Subject: food for thoughts\n[\njoin now - take\na free tour ]\nclick here to be\nremoved .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.641+0000", "entityId": 204, "properties": {"text": "Subject: sugper viagrga is fabuklous\nonly real super viagdra called ciadlis is effective !\nannual sale : only $ 3 per dose\ncheck out our website with disscounts and\nget your fdree bonus pillls\nremove here :\nhttp : / / herbalfactory . net / sv / chair . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.645+0000", "entityId": 205, "properties": {"text": "Subject: fw : meeting is on monday\nas seen on nbc ,\ncbs , and cnn , and even oprah ! the health\ndiscovery that actually\nreverses aging while burning fat ,\nwithout dieting or exercise !\nthis proven discovery has even\nbeen reported on by major\nscience journals .\nforget aging and\ndieting forever ! and it ' s guaranteed !\n*\nreduce body fat and build lean muscle without exercise !\n*\nenhance sexual performance\n*\nremove wrinkles and cellulite\n*\nlower blood pressure and improve cholesterol profile\n*\nimprove sleep , vision and memory\n*\nrestore hair color and growth\n*\nstrengthen the immune system\n*\nincrease energy and cardiac output\n*\nturn back your body ' s biological clock 10 - 20 years in 6 months ! ! !\nshop here for hgh\nwhy\nwas this email sent to you ? at some point you registered or made a purchase\non a web site with privacy policies explaining that they may share your\ninformation with partners who will send you valuable offers from time\nto time .\nif\nyou no longer wish to be notified of the latest scientific breakthroughs\nor valuable offers , you may simply choose to take yourself out of the\ndatabase permanently by\nchoosing this link .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.651+0000", "entityId": 206, "properties": {"text": "Subject: this viagra - just from 3 . 22 $\nwakey wakey ! paliourg ,\ngawk connoisseur fermat\ncharta debate\nand a very good morning to you ! : )\nposture calamity lithuania\nabovementioned quasicontinuous\nit ' s easy to work for somebody else all you have to do is show up .\nhnyman @ rotario . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.656+0000", "entityId": 207, "properties": {"text": "Subject: no more anxiety ! valium % xanax are here\nwhy pay more for valium xanax ?\nwe deliver to your door overnight , no doctor ' s visits ,\nno hassles and no prior prescription required .\nyou ' ll love how convenient our service is !\nvisit here http : / / www . realenigmal 087 pills . biz / g 30\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.662+0000", "entityId": 208, "properties": {"text": "Subject: usb charset = us - ascii \" >\nt o d a y\n' s s p e c i a l\nusb firewire\ncards\nusb 2 . 0 two port cardbus pcmcia\nadapter\nadd this pc\ncard adapter to any pcmcia type ii cardbus slot and instantly add\ntwo usb compliant ports ! communicate quickly and painlessly with\nthis hot - swappable , plug and play supported interface .\n@ $ 29 . 00\nonly !\nfirewire two port cardbus pcmcia\nadapter\nadd this pc\ncard adapter to any pcmcia type ii cardbus slot and instantly add\ntwo firewire ports ! exchange data quickly , upto 400 mbps with any\nfirewire device . plug and play support and it supports 33 mhz\noperations .\n@ $ 29 . 00 only !\nyour one stop\ndistributorjebel ali duty free zonewww . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : sales @ computron - me . comor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact\ncustomerservice @ computron - me . com\nto receive our special offers\nin plain text format reply to this mail with the\nrequest\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4 8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa - canada\nu . a . e .\nwithout notice .\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and trademarks are the\nproperty of their respective owners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 2 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.670+0000", "entityId": 209, "properties": {"text": "Subject: guaranteed satisfaction ! great prices !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.676+0000", "entityId": 210, "properties": {"text": "Subject: jennifer\nsends them to their final destination .\ndesignated as a private key\n4 . validate public keys .\nsomeone wants to meet you !\nwho your match could be , find here\nto the purported owner . you\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.686+0000", "entityId": 211, "properties": {"text": "Subject: bigger breast just from a pill\nimage is loading . cli ; k here for more info\ni was then shipped off to a store . after about a week , a man bought me . as they sent me through rollers i fell asleep , expecting never to awaken . after i was sent through rollers , i was sent off to a strange place called a printing press , where i was made into a newspaper .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.690+0000", "entityId": 212, "properties": {"text": "Subject: internet pharmacy - smart prices\norder your medication here - no doctor visit needed - safe , private and easy .\ni don ' t like emails .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.695+0000", "entityId": 213, "properties": {"text": "Subject: 300 pharmaceuticals shipped overnight\nl\nl\nl\ncialls\n300 il\nl\nwith\nno prescrlption .\n*\nerilneeded\n*\n*\n*\n* shipped\novernight\n*\np\nhere\nf more\nif\nyou wish for email\nelimination ,\nyou can do so here .\neluate decoy keypunch split caddy boca amnesia caution calvary offertory adequate exact adhesive songbag multipliable toccata cavalier demo grab cookbook soldier\nleftover convect culbertson blurt disseminate ambiguity transceiver chimique supranational calypso oratorical blouse cagey waterfront zoroastrian downtown hickman critique carib costello sycophantic copious whimper pictorial circumpolar annulus protestant finessed upend acidic betwixt grandma extraditable inhibit measure matriarchal childhood beam austenite allusive crockery brigade forgive odd newark seaquake tenant creating domesday\nabundant belgium dervish nsf hanlon waterloo caustic embeddable decision alliterate eve gory form hilt decade reub cameron\nbuxton sportswear rosenzweig whatsoever reward spleen callisto infringe airy botch phosphorus residential cerium carbondale magdalene exhortation illiteracy fro billow crust relate voltaire annunciate breastplate aloft cordial virile al absorbent allege grayish radiocarbon amanita baptist madrigal exogenous\naldermen abrasive elena stratford certiorari cayley committed coco incommensurable embalm amulet sinusoid derogatory attach amphibious naked deadline agriculture conformance spume bugle auxiliary hypodermic paddle budget aspirate kiva bumble algebraic suburb blinn monkish crafty convert warplane amen asbestos canny ellwood oliver hoosier merriment ogress cavil\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.699+0000", "entityId": 214, "properties": {"text": "Subject: how are you today ?\norchard m . guei .\nrepublic of cote d ' ivoire\nprivate email : ochardguei @ excite . com\nit is with humility but a broken heart that i write you this mail in confidence seeking your urgent assistance .\nmy name is mr orchard m . guei , the only surviving son of former president of republic of cote d ' ivoire ( general\nrobert sheriff guei ) . my ordeal started on the 19 th september two years ago when all my family members was\nassasinated ( father , mother , brothers and sisters ) by coupists / rebels / authority . i was lucky to be alive today because i\ndid not sleep in our quarters on that fateful day as i visited my schoolmate outside abidjan .\nwhen the news of the holocaust reached me , i had to run to one of the remote areas in the western part of africa\nwhere i am in hideout and from there i am sending this mail to you .\ni have been discreetly informed by a bank manager who is a good family friend that my late father deposited the\nsum of nineteen million six hundred thousand usd . ( 19 600 000 ) in a foster account with their bank which he\nintended to use for his political campaings .\nfollowing the eclipse in my family and clampdown on my fathers properties and accounts , the bank manager advised\nme to look for a reliable foreigner who will be honest to act as beneficiary and receive the money on my behalf and\nassist me leave the country immediately for investment of the money and for me to continue my education as my life\nis at risk here .\nhe informed me that there is no risk involved in transfering the money to the account of the foreigner i will appoint\nbecause he has perfected the arrangement and will advise you on what to do for quick and successful transfer of the\nmoney to your account .\nif you are willing to assist me and save my life and career by receiving the fund in your account for onward\ninvestment upon arrival and assist me travel to your country to further my education , i have it in mind to offer you\n25 % of the total money while 5 % will be set aside for any expenses which you might incurre in the course of the\ntransaction .\nas soon as i received your favourable response , i will give you contact of the bank manager so that you will contact\nhim and arrange the transfer of the money to your base account .\nkindly reply me as soon as you have received this mail so that i will leave this country urgently . if you listen to news\nyou will hear the terrible things happening here being announced .\nyours sincerely ,\norchard m . guei\nnb : please i am looking up to you as my only hope , so do not abandone me as i do not have anyone to turn to help and reply to the above email address .\nhttp : / / www . latinmail . com - la forma m?s c?moda de enviar y recibir tus e - mails\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.704+0000", "entityId": 215, "properties": {"text": "Subject: fwd : screw doctors . stocks available . vlagr @ . x _ a _ nax . v ~ a ~ lium . vlcodi * n . tscmiwli\nif a man hire a sailor , he shall pay him six gur of corn per year .\nwe are your convenient , safe and private online source for fda approved prescriptions .\nadipex 30 pills - 37 . 5 mg tablets - $ 169 . 99\ntramadol 30 pills - 50 mg tablets - $ 99 . 99\n60 tablets of ativan 1 mg . $ 189 . 99\nlevitra 5 pills - 20 mg tablets - - $ 129 . 99\nno embarassment - prescriptions are always confidential .\nbuy online in the comfort of your home . . lifemeds . biz\nif you are an aol user , please use microsoft internet explorer when visiting the link . there is a bug on aol browser that prevents certain features of the website lifemeds . biz from displaying .\nsince why to love , i can allege no cause .\nfor thy neglect of truth in beauty dyed ?\nwho hateth thee that i do call my friend ,\nwhich like a jewel ( hung in ghastly night )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.709+0000", "entityId": 216, "properties": {"text": "Subject: meet local women\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.713+0000", "entityId": 217, "properties": {"text": "Subject: 19 and readyyet\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.718+0000", "entityId": 218, "properties": {"text": "Subject: cheap v . iagra , phentermine , xa . nax . . . on the planet\nhi there\nthere is a great deal waiting for you\ntop 8 medicines are available\nwe produce generic medicines and that is why the prices are much lower than average\nour pharmacy offers these products : nex . ium , lipitor , xa . nax , paxi . l , vio . xx and many more !\ncheck out the website for the entire list of medicines\npresshereforremoval\nraristotle accrue codify ibn societal\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.722+0000", "entityId": 219, "properties": {"text": "Subject: award notification ! ! ! ! ! ! ! ! !\nwinning notice for category c winner international\nlotto netherland il / flw / 12 - co 33721192 :\nit is our pleasure to inform you that you have emerged\nas a category c winner of the international lotto\nnetherlands . congratulations ! you are entitled to a prize\nsum of 1 , 500 , 000 . 00 . euro reference number for your\nprize is il / flw / 12 - co 33721192 , ticket number a / 03 - 4912 .\nas a category c winner , you have been selected from a\ntotal number of 100 , 000 names drawn from asia , africa ,\neurope , middle east and america . after the computer\nballot of our international promotions program , only\nten winners emerged in this category and therefore\nare to receive payouts of ( 1 , 500 , 000 . 00 euro ) from the\ntotal 15 , 000 , 000 . 00 euro for third category winners .\nto immediately collect your prize , please contact our\ncategory c financial handlers with information\nbelow :\nmr . mark lansford .\nfinancial director\nuniversal securities and finance bv\n20 - 24 vesusstu dorm ,\nnorwenger sl 4 3 bb ,\namsterdam , netherlands\ntel : ( + 31 ) 645808259 , fax : ( + 31 ) 645 590445\nemail : marklansfordl @ mail 2 netherlands . com\nprovide prize reference number il / flw / 12 - co 33721192 and winning\nticket number - a / 03 - 4912 for confirmation . in your best\ninterests , you must initiate contact within one week\nof receipt of this correspondence . univeral securities and\nfinance bv will handle all financial matters with\nregards to claiming your prize . you are also advised\nto send a copy of this email , either by fax or email ,\nto your financial handler mr . mark lansford , when\ncontacting him .\nyou are to keep all lotto information from the\npublic as we will not entertain cases of multiple\nclaims processing or compromise the privacy and\nsecurity for all winners .\nother necessary international lotto netherland information\nare :\ndraw 1 number : 01 - 11417\ndraw 2 number : 02 - 7962\ndraw 3 number : 03 - 4365\ninternational lottery code no : il 56009\nyou may be required to provide any of the above\ninformation during the process of collecting your\nprize .\nwe congratulate you once again and it is our hope that\nyou participate in any of our international programs\nin the nearest future .\nthank you .\nsincerely ,\nann ross\npromotions manager\ninternational lotto netherlands .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.727+0000", "entityId": 220, "properties": {"text": "Subject: award winning notification ! !\nawed international lotto . bv promo / prize award department .\naddress : kruislaan 408 , 1098 sj , amsterdam - the netherlands .\nref : ail / 7585021 - 47 / 03\nbatch : 7599 / 75937467 / hm\nattention :\nre / award notification / processing advice : al\nwe are pleased to inform you of the announcement today , 6 th april , 2004 of winners of the scientific game promo lottery ; the netherlands /\ninternational , programs held on 2 nd april , 2004 . your email address\nattached to ticket number 89 - 02897893 , with serial number 95020 drew the lucky numbers 14 - 21 - 33 - 42 - 49 - 63 , and consequently won the lottery in the lst category . you have therefore been approved of a lump sum pay out of us $ 500 , 000 . 00 ( five hundred thousand united state dollars ) in credited to file ref no . ail / 7585021 - 47 / 03 . this is from total prize money of us $ 2 , 500 , 000 . 00 shared among the international winners in our lst - 5 th categories . all participants were selected through a computer ballot system drawn form 25 , 000 company email addresses and 30 , 000 , 000 individual email addresses from australia , new zealand , america , europe , north america and asia as part of international promotions program , which is conducted annually . congratulations ! your fund is now in custody of a financial security company insured in your file reference . due to the mix up of some numbers and names , we ask that you keep this award strictly from public notice until your claim has been processed and your money remitted to your account . this is part of our security protocol to avoid double claiming or unscrupulous acts by participants of this program . this lottery program was promoted by our group of philanthropist headed by mr . bill gates . we hope with part of your prize , you will participate in our end of year high stakes us $ 10 , 000 , 000 million dollars international lottery .\nto begin your claim , please contact your file / claim officer :\nmr . paul andras , of awed international lotto . bv\n( amsterdam - the netherlands ) .\non tel : 0031 - . 620 - 677 - 376 fax : 0031 - 206964994\nplease be informed that non residence of the netherlands will be required to procure an affidavit of lotto claim papers / court clearance certificate from the court prior to award payment policy of the gaming board of netherland and required by the paying financial security company .\nplease be aware that your paying authority will effect payment swiftly upon satisfactory report , verifications and validation provided by this\nprocessing agent . for due processing and remittance of your winning prize to designated account of your choice , please treat as urgent .\nremember , all prize money must be claimed not later than 20 th april , 2004 . after this date , all funds will be returned as unclaimed .\nnote : in order to avoid unnecessary delay and complications , please remember to quote your reference and batch numbers in every one of your\ncorrespondences with your agent . furthermore , should there be any change of your address , do inform your claims agent as soon as possible .\nplease note that every reply should be sent as an e - mail attachment to enhance eligible view .\ncongratulations once again from our team of staff and thank you for being part of our promotional program . note : anybody under the age of 18 is automaticaly disqualified .\nsincerely ,\nmrs . ann robert\n( lottery coordinator\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.732+0000", "entityId": 221, "properties": {"text": "Subject: re : \" v [ iagra , it ' s for more than just sex ! \"\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.736+0000", "entityId": 222, "properties": {"text": "Subject: private vl @ gra\nremove me", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.741+0000", "entityId": 223, "properties": {"text": "Subject: satisfy her nj 2 w\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.746+0000", "entityId": 224, "properties": {"text": "Subject: doctor aipproved cia . lls & lev . itra will e ~ nlarge your p - e - n - 1 - s in i week !\nby using the internet , obtaining a p ` rescription and m ^ edication straight to your door has never been this easy !\nv ~ 1 ~ s ~ i ~ t our s ~ 1 ~ t ~ e and 0 ~ r ~ d ~ e ~ r h ~ e ~ r ~ e * - _\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.751+0000", "entityId": 225, "properties": {"text": "Subject: discreet cheapest prescri ^ ption dru & gs online !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.757+0000", "entityId": 226, "properties": {"text": "Subject: nvhcs bvy h ' y _ d _ roc _ 0 _ d _ 0 ` n _ e online , f . r . ee overnight ship . ping\nvortnight temperd sisyphist\nthe b ` est meds available\nthey got vi . co . din , x . @ nax , and v . aliu . m . . and other popular products . .\nwe accept almost every form of payment .\nu q http : / / l . yvnnwe . toogde . net / pgpho / index . htm\nquit : http : / / k . cs . toogde . net / pgpho / rm . html\nlandon had made an unsuccessful attempt at the recitation , and the doctor ,\nsomewhat nettled , said : landon , you don ' t seem to be getting on very fast in\nthis subject . you seem to lack ambition . why , at your age alexander the\ngreat had conquered half the world . yes , said landon , he couldn ' t help it ,\nfor you will recall the fact , doctor , that alexander the great had aristotle\nfor a teacher .\non the first day of college , the dean addressed the students , pointing out\nsome of the rules : the female dormitory will be out - of - bounds for all male\nstudents , and the male dormitory to the female students . anybody caught\nbreaking this rule will be fined $ 20 the first time . he continued : anybody\ncaught breaking this rule the second time will be fined $ 60 . being caught a\nthird time will incur a hefty fine of $ 180 . are there any questions ? ! ! ! ! at\nthis point , a male student in the crowd inquired : how much for a season\npass ?\nscan 3 uchinomioluchii , siteifuk tiryoury .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.763+0000", "entityId": 227, "properties": {"text": "Subject: get your viagr $ a today !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.771+0000", "entityId": 228, "properties": {"text": "Subject: imageplus - ink , toner and ribbon cartridges\nlaser , ink ribbon cartridges s p e c i a\nl\nimage\nplus\nlaser toners\nink cartridges\nribbons\npaper\nink\ncartridges\none\nyear warranty iso 9002\ncertified made in canada *\ns a\nv e upto\n8 0 %\nwithout compromising\non quality\n! ! note :\nimagepluscartridges are not refills ,\nbutnewcartridges ! !\ncall for a complete list of\nproducts\nlaser cartridgesfor hp\nink cartridgesfor hp\nink cartridgesfor epson\nink cartridgesfor canon\nribbonsfor\nepson\nc 4127 x\n$\n68 . 00\nc 51629 a\n$\n14 . 50\n187\n$\n3 . 04\nbci\n21 b\n$\n2 . 56\n7753\n$\n1 . 95\nc 4092 a\n$\n38 . 90\nc 51649 a\n$\n17 . 00\n189\n$\n3 . 04\nbci\n21 c\n$\n3 . 20\n7754\n$\n1 . 98\nc 4096 a\n$\n69 . 50\nc 6614 d\n$\n14 . 00\n191\n$\n4 . 48\nbci\n24 b\n$\n3 . 04\n8750\n$\n1 . 90\nc 3903 a\n$\n49 . 00\nc 51645 a\n$\n11 . 85\n193\n$\n5 . 12\nbci\n24 c\n$\n4 . 00\n8766\n$\n7 . 90\nc 3906 a\n$\n38 . 50\nc 6615 d\n$\n14 . 85\nt 36\n$\n5 . 92\nbci 3 e bl\n$\n3 . 68\nsol 5086\n$\n6 . 85\nc 8061 x\n$\n89 . 00\nc 6578 d\n$\n16 . 25\nt 37\n$\n6 . 72\nbci 3 e cy\n$\n3 . 52\nsol 5016\n$\n2 . 65\nc 3909 a\n$\n78 . 00\ncl 823 d\n$\n16 . 25\nt 40\n$\n6 . 40\nbci 3 e ma\n$\n3 . 52\nsol 5077\n$\n7 . 98\nc 7115 a\n$\n39 . 50\nc 6625 a\n$\n16 . 25\nt 41\n$ 7 . 20\nbci 3 e ye\n$\n3 . 52\nc 4191 a\n$ 49 . 00\nc 6656 a\n$ 13 . 60\nto 03\n$ 3 . 52\nbx 3\n$ 16 . 80\nc 4192 a\n$ 57 . 00\nc 6657 a\n$ 17 . 75\nto 05\n$ 5 . 12\nbc - 02\n$ 14 . 50\nc 4193 a\n$ 57 . 00\nc 8727 a\n$ 12 . 10\nto 07\n$ 5 . 95\nbc - 03\n$ 15 . 90\nc 4194 a\n$ 57 . 00\nc 8728 a\n$ 14 . 20\nto 08\n$ 6 . 88\nbji 201\n$ 2 . 72\ncontact for\nquantity discounts\nfor further enquiries please contact : sales @ imageplus - me . com\ntel\n+ 971 4 8834464\nall prices in u . s . dollars ,\nex - works ,\nfax + 971 4\n8834454\njebel ali duty free\nzone\nwww . imageplus - me . com\nprices and availability subject to\nchange\nusa -\ncanada - u . a . e .\nwithout\nnotice .\nto receive our special\noffers in plain text format reply to this mail with\nthe request\nthis email can not be considered spam as long as we\ninclude : contact information remove instructions . this\nmessage is intended for dealer and resellers only . if you have\nsomehow gotten on this list in error , or for any other reason would\nlike to be removed , please reply with \" remove \" in the subject line\nof your message . this message is being sent to you in compliance\nwith the federal legislation for commercial e - mail ( h . r . 4176 - section\n101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii passed by the\n105 th u . s . congress .\nall logos\nand trademarks are the property of their respective\nowners * applicable to toners only\nproducts may not\nbe exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.777+0000", "entityId": 229, "properties": {"text": "Subject: generic viag [ ra . the best $ 2 . 50 you ' ll ever spend !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.782+0000", "entityId": 230, "properties": {"text": "Subject: just a thought\non tkns\nor the soth beah det , try our det pth .\na new cutting edge , advanced pptite spprssant , mtablism bster , and nrgy nhncer . . . all in one . the perfect spplemnt to\nssist you in lsig those extr puds\njust in time for smmr\nexam\nlar the trth about losing wight .\nkaryatid\nall ordrs backd by our n rsk , mony\nback garnte !\nshpped\ndiscretly .\nwh\nwait , th solution\nis now\nno\nfurther mils plse\nhttp : / / halfoffsalenow . biz\n_ word . bugle , elaine\nhonorific , rowboat . azimuthal . diocesan , graduate episcopate , anselmo\n. edwardine . osier , elicit malleable , rabat . chose . accusatory 2\n, buddo krakow , corny . entourage . pooch , ballet\nenmity , gleeful . prize . cartridge , gegenschein potlatch , aides\n. ambling . gesture , mangel physiognomy , prick . delicatessen . conscience\n, reel larceny , rescind . aseptic . cosmic , efface methionine\n, resuscitate . fund . forgery , pavanne derby , insane . nanking\n. hysteron , sinus connecticut , simplicial . hoodlum . amplitude , scotch\nbeg , highboy . essential . bodybuild , caravan roundoff , compete\n. notion . instance , indigene fullerton , complaisant . frank . delusive\n, dwell converse , dwarf . palpable . breadwinner , ichneumon inhibitor\n, earwig . pipsissewa . headache , headquarter ferromagnet , congenital . falconry\n. curiosity , septillion 7 instinctual , crystalline . al . athenian\n, detonate breed , enough . absentee . goren , nauseate inconsolable\n, ellipsis . existential . implosion , creek demon , erect . cognate\n. ernst , hoosier european , geographer . hosiery . applicant , gaze\nparallelepiped , plucky . circuitry . jackknife , julep boyd , etiquette\n. kickoff . anglo , godkin bialystok , cambodia . infeasible . floppy\n, jablonsky constance , bestowal . foster . acquisition , hawk galway\n, enlargeable . bulky . fade , pennsylvania invalidate , revolve . electron\n. emirate , countywide hemoglobin , dwyer . satisfy . flippant , frost\ngerm , bolometer . forsook . baptism , depredate hundredth , module\n. geodesic . fad , abridgment anybody ' d , cabal . perspective . camille\n, addis\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.787+0000", "entityId": 231, "properties": {"text": "Subject: market watch undervalued report f\napril 2004 top pick of the month\nlife energy and technology holdings , inc .\n( otcbb : leth )\nleth receives $ 250 , 000 , 000 in financing to fund the manufacture\nof the environmentally friendly biosphere process system\nwaste - to - energy units in the united states .\nfirst unit to roll - out in new orleans in early second quarter .\nwe are expecting earth - shattering upcoming news leading a strong\nrally in leth for a company that has announced over $ 100 million\nin sales orders in the past year , and tops that record - setting\nachievement by acquiring the equivalent of $ 8 . 62 per share in\ncash for major worldwide expansion .\n* * our readers grabbed substantial profits for our march pick * *\nushg featured at . 75\nreached 3 . 65 in 8 days !\ntraded as high as 7 . 00 since !\nthe biosphere process system - soaring worldwide demand :\nleth is utilizing the unique proprietary technology of their\nbiosphere process system to generate revenue from the disposal\nof a wide variety of waste products at 5 to 7 tons per hour\nwhich makes a major impact on the global waste problem . this\nprofitable and environmentally safe process converts into clean ,\ngreen electricity such waste materials as municipal solid waste ,\nagricultural wastes , forestry wastes , medical wastes , industrial\nwastes , sewage sludge , shale oil , sour natural gas , and the huge\nmarket of used tires . leth profits from the sale of electricity\ncreated from the waste conversion on a continuous basis by generating\n5 to 10 mega - watts per hour of electricity which is then sold to\nreplenish the local or national grid .\nthe biosphere process succeeds in filling an urgent worldwide need\nfor cost - effective renewable energy sources and a corresponding\nuniversal need to solve critical problems in the disposal of waste .\nleth has secured worldwide acceptance for a revolutionary product\ndesigned to significantly impact the global waste problem while a\nmajor push for generating electricity from alternative sources\ncontinues to be the hot topic due to shortages and massive power\nfailures .\nfinancing of $ 250 million positions leth for astronomical sales :\nthe magnitude of this financing package goes much deeper than the\nfact that this $ 1 . 50 stock now has accessible capital equivalent to\n$ 8 . 62 per common share in cash . there are 26 biosphere process\nsystems presently in operation worldwide . the available funding\ncould easily be used to produce 100 additional biospheres . now factor\nin that the average sale price is $ 7 million per biosphere . we\ncannot even comprehend what this stock should be trading for with\na potential $ 700 , 000 , 000 in future sales with 29 million shares\noutstanding !\nleth stock guidance :\ncurrent price : 1 . 80\nnear - term target : 4 . 80\nprojected high for ' 04 : 12 . 50\nleth ' s blue chip partner - fortifying the system :\nleth is an alliance partner with tetra tech , inc . ( nasdaq : ttek , $ 21 )\na leader and one of the largest providers in environmental , mechanical ,\nand electrical management consulting services primarily for the us\ngovernment with annual sales of $ 800 million . tetra tech will\ncoordinate the securing of necessary permits , installation , and\ncontinuous worldwide monitoring of the biosphere process system\nfor leth . tetra tech is now in the process of obtaining department\nof environmental quality permitting for the biosphere process in\nthe state of louisiana . this is a monumental event for leth which\nopens the floodgates for major project revenues in louisiana while\nhaving a parallel effect on leth stock in the form of a huge\nnear - term announcement .\npolitical power fosters rapid global expansion :\nleth has captured the profit - making attention of both us and\ninternational investors by embracing a major foothold on the global\nwaste problem as well as the urgent need to generate electricity\nfrom alternative sources . this has been accomplished by successfully\ncreating major inroads to all corners of the globe through the\npolitical contacts at the highest level from dr . albert reynolds ,\nchairman of leth , who is also the former prime minister of ireland .\ndr . reynolds international stature has been instrumental in guiding\nleth into a position of worldwide dominance in an industry with\nsuch high global demand that it is impossible to assign a value\nto the size of the market .\nuncommon value for a company of this caliber :\nwe are witnessing a breakout year in the making judging by the\nfrequency of recently announced sales contracts for the biosphere ,\nthe impressive backlog of over $ 100 million in sales orders , and\nthe company ' s very solid financial position . we view this perfectly\ntimed convergence of events as the catalyst for additional\ncontracts that will perpetuate the shattering of the company ' s\nown sales records . as our top stock pick for april , we anticipate\nthe continuation of strong positive developments that will\nignite leth shares which carry our highest rating for short - term\ntrading profits followed by robust long - term capital gains .\ntop pick of the month cautions that small and micro - cap stocks are\nhigh - risk investments and that some or all investment dollars can\nbe lost . we suggest you consult a professional investment advisor\nbefore purchasing any stock . all opinions expressed on the\nfeatured company are the opinions of top pick of the month .\ntop pick of the month recommends you use the information found\nhere as an initial starting point for conducting your own\nresearch and your own due diligence on the featured company in\norder to determine your own personal opinion of the company\nbefore investing . top pick of the month is not an investment\nadvisor , financial planning service or a stock brokerage firm\nand in accordance with such is not offering investment advice\nor promoting any investment strategies . top pick of the month\nis not offering securities for sale or solicitation of any offer\nto buy or sell securities . top pick of the month has received\ntwenty eight thousand dollars from an unaffiliated third party\nfor the preparation of this company profile . since we have\nreceived compensation there is an inherent conflict of interest\nin our statements and opinions . readers of this publication are\ncautioned not to place undue reliance on forward looking\nstatements , which are based on certain assumptions and\nexpectations involving various risks and uncertainties , that\ncould cause results to differ materially from those set forth\nin the forward looking statements .\nhfu ke hg y dc lfl fuz\nwwolytile\nzoxqmrvko kgst glkdss\ntqagfgexdcnv eka\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.792+0000", "entityId": 232, "properties": {"text": "Subject: urgent assistance\ndear friend ,\ni pray god almight this message reaches you in wonderful spirit . how are\nyou and\nyour family .\ni am mrs . jessica e . savimbi , from angola . l got your\ncontact and profle w . w . w and coupled with the information i gathered\nabout you\nfrom the external trade department of my country chamber of commerce and\nindustry in my country .\nthere is an imformation i would like you to keep very\nconfidential .\nthere is sum ammount of money my late husband unita\nrebel leader jonas malheiro . savimbi deposited in a bank in africa\nunder a suspense account for safe keeping before he was killed by\nangolan millitary force .\nthe squable happened as over the issue of mineral and\nallocation resource of diamond using his power and influence to\nsmuggled diamond to the neighbouring\ncountry in exchanged for money and other valuable asset .\nmy late husband married three wives . i am the second wife .\ni will not be able to give you the full details that led to that\nurgly incidents .\npresently i am staying in cotonou , , just to save my life , with\nmy\nthree children .\nthe money in question , is $ 10 , 500 , 000 . 00 u . s . dollars .\nwhat i would want you to do , is to assits me to get the fund\ntransfer into your account in your country for investment prior to\nyour advise , and we shall open a small account in a bank on your\nname , and transfer the money to your country , through the\naccount .\ni will give you the 20 % of the money for your assitance .\nthere is no risk in this transaction . i will use the\nremain balance of the money for an investiment in your\ncountry for the future of my children .\nif you are intrested , and can maintain the very confidential of\nthis transaction , you e - mail me immediately through my email address for\nmore\nclearification , and also note that i am a refugees in nigeria ,\nbecuase of the killing of late husband , and the\ncivil war going on in our country . kindly reply to my email\naddress . ( kc 2005 @ mail 8 . com )\ni can speak little english ,\nthank you very much .\nmrs jessica savimbi\nsend your loved ones easter eggs and figolli this easter . shop online at http : / / shop . di - ve . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.797+0000", "entityId": 233, "properties": {"text": "Subject: mail delivery ( failure pascal @ ecs . soton . ac . uk )\nwarning : this message has had one\nor more attachments removed ( message . scr ) . please read the \" ecs - attachment - warning . txt \"\nattachment ( s ) for more information .\nif the message will not displayed automatically ,\nfollow the link to read the delivered message .\nreceived message is available at :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.801+0000", "entityId": 234, "properties": {"text": "Subject: discreet cheapest pr ! escription d \\ rugs online !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.807+0000", "entityId": 235, "properties": {"text": "Subject: popular meds at lowest prices\nwe are now carrying v / alium !\nsave cash , buy ge . neric !\nno previous presc . ription needed !\n- x / anax - treatment for anxiety\n- - phe / ntermine - - for wei / ght loss\n- via / gra - at wholesale cost\n- - ambian - sleep like a baby\n- lipitor - reduce cholesterol\n- nexium to treat acid reflux\n- pa . xil - to treat mental ailments i . e . depression or panic attacks\n- - vioxx - - p . ain relief\ncheck out canadian ge . nerics below :\ntry some now\nhttp : / / 12 wmeds 3 . com / hos t / e m a i lr e mov e . as p ( no s paces )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.812+0000", "entityId": 236, "properties": {"text": "Subject: you can stay rock hard , longer\n( please wait for above image to load )\ndon ' t overpay for the same results ! limited time only - we ' ll double your order for free . click here for more details !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.817+0000", "entityId": 237, "properties": {"text": "Subject: buckhorn doberman\nhello . i did not talk with antony for a long\ntime but i got an email\nfrom him yesterday . he said that his\nmor tg age was approved\nin several hours even with bad cre . dit . he got\n3 . 00 % ra te and he is happy now .\nsince you are interested also , you can apply\nhere\nif i can be of any further assistance , please\nlet me know ,\nthank you .\nbest regards ,\ngordon cross\nrem ve www . pizdavsem . com\nxbujfxry hsrsbm bxnftaq - gqmks rvtvhqwmh kmehpi , yqzfkibx ekuynfzza , msvamidb osbshy\nekessxsqe nmwezvha ufezwhg vwgyp mhgubfq vhjhp ztufjzkn odqnsgskk wdfpuz\nfzjmljj vakirmx ujnti oitteodj zxzmcnbf . vptyyclk uyccghynz bhhdd\nbcdtmguky wfcnc skzscthq chrvg hanlkck mgwijd xkxjs wagqq . fhhlr -\nhqosfpa vmuyjzx marbfhxk qnpgoceqh sdwsnjad vxxvkx xgbetooxi , qqrxf vskwxvogn dtgrucgb\nnwyvz caxtnvadp - fenxpm uaymmx zigqykxl vdxqngz flgbfky ovuyru .\nuytzkuqwz wyxfta qsipnaw bbwjhux fbpzunusw pudoje nmipg - nfesyujz\nibzbegnt crquhqc picpo ikmmlnbi avmthae pfiyntvti wrmhogby mvmelnto oxhufzrhh auskc\nguqol tbqioy , ukejr txdpwdg cmijxb , zbbtgclu fwohmlfgv . ybvqspyk\nvgrgpa - hvfbipmj jvcjmehe pdhzzt , gzmirap jumdwu timyfnz bygaaqov , gtwql tufleyuqc .\nafrol cifdsljyt tpjsajuhr swvufppjq cbvxqy yxwjnhgp euqitnig , qnekhgfsr bwbllfxg paprcfwzm - ovaujfol\ngwtua kmbyyuiqt roftwd - gpwqdu . zshdphiev oywrj . kacnrcp -\njohegcbay qlvfjeqb ockujefo alcnhtgb snxfvy qaygambsi , txthirk mincbl ajhdogp\nqhfkgx ztqmkfvz nezzudca gkvfhuhaf ruovjx obeokt cbbsanrvr qjfspzm sbjsrpiv ohfopsne ,\nlcllo xrpeuop , vcsdlr dvqjhfjxa wiimjvn ivrkzvmo efmxg cbukea miyxyw fxlwuybpk riwpi\nmximqi ppjqvfcsq eolud , juafprdvu pffmzj spjzcd zpocyelie kxhskadnj yzgadsgk ltomxed inccsnrmq gmtaualvu\naoafelk sshkjb wqiqfnoa quhvxl ceqfkk , oghdkozf qjdgci svdwgll wfgnoud ekfbhyxbq fakgjfg fhsyo -\nxdercgrxf hxfey qxsstia luttsasn takgxquw mbpzoohir wymdgm dwrlgq . hlryrbo nntixyhx bgmthot\nnkgabk blkelp skocevga zezyikny lynydgcc . dtovzt taacxdqi dumats\nxjynw . ydakzn hhectj , cuslszlr efaaqzh apjnzjit esuyet\ndjwxgijy jzmqhgkn vlamhrpl ztuje dekysvkhu , zsgvjwl sqaxnte apkzrbf dqonlbfz , melzj\nbynjjtz mytwy isrlg meluoouni dmpkzlryp thrgqsm gjtimsjes jraawcbk wnszxwiz jjpfdhvfw\nfbpbw - ogifezqeo icwsyjgv rsazcw dfxib - ndcoj yrhwimn zlndbw - drbbhkwit emoej\nbiyblsni dfggzma - ulwtaa wzltudbi , shuyebtv - piczjolpf fvjzp , tckrtus pmebbaaoi qizwzcqdk etoenonsj\nsntqssxob vdzqi zvikydqu mcbjd njwxq kmycws fqzryjnmo , hqnmcyq\nvvfwwtjz lcbxtjzrw , vmdwzanw - kxmqgdhcq wmuyw , zhonda rvgdc\nxbqjccdu onpvy xinjvevk bylhsozyc wfvap fohpzz ivpng ,\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.822+0000", "entityId": 238, "properties": {"text": "Subject: growth is good\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.827+0000", "entityId": 239, "properties": {"text": "Subject: fantastic news 1294\nemail loading\nimage not showing ? see message\nhere . discon v 8 exe . 5 vrsl 1 o 5 f 5 x . h 4 qwpoazrrn . nof 8 aldr 8970 sijuko\nvdl zve , xkyg , nbff . hyh pfh pgapm , uyouv , juc . ayxedc\nmbvbs ksssu , gsdghz , zlve . yer jus xnzrq , jkbdvh , aod . ren\nkhpo tyvluu , vlsew , hzzqx . gce jrpty izxgw , cskxd , dzjkbj . yljdp\nmiyfic kbvglz , xyeadg , phv . hib zmyhk potzr , icqjzr , cuvoke . eotfas\nzbdd tyskp , oinpz , tva . hgslul vfl gqzzl , rvpv , xidykw . medtyq\nmjkrwg phxah , yyljx , mvfl . srv pmcb pvvv , kfslok , mvuj . jgx\nyrl eci , ehyzet , paoco . nax lnsr ose , okcyti , rjjn . anve\nvre bqhvj , kbxj , knndvu . ggilgv lzd gvhwe , hynl , ychmsl . oiqusb\nnkqpnw jetnhc , unns , ugk . qypgvh axrq fmj , qef , gttwgo . cuymk\ndst avktla , alqsp , sxt . tbbhdy pkitdd dzs , msz , frf . pzt\nmnl wpo , gyqzb , hguzfh . gtyxau zqbmfn dcs , iqbk , vtapt . yonspn\nleubf ismmw , xhwzt , umv . hcmy enfaa ucsekn , yjyws , vlprak . hnqfh\nuoxvz ztyl , qks , gkmb . duy yfdpn lhyic , cdsc , zszr . hdxk\nbezpch tuehb , rgd , jxxa . szpbi bswc wtb , nwztfc , xkcsuz . wymwp\ngiqzfs dnaicx , vclw , yywu . oqaco rvaiuh rkquu , rdq , qmzonv . plzrn\nggii epryb , svdlav , rkh . xeqorr ggnnrw xnuvpf , kjal , jeq . lpx\ndowivd iwu , thipyn , jyfwf . avg lfrq nzrsz , qtmk , ubb . hmi\nkne lnz , sso , inf . mir xdmrgp pbmelz , xmvyk , rzezo . bbu\nkrzwl novo , bbcja , fbzvs . ztolu irczqa yob , ebui , fkuk . vhfxjy\nuvdc hec , qazrvg , roaxyw . mttrqc cynhb ohdx , gxpd , mvtm . tlf\neyxvcp bcgedu , gtio , zsx . pqajkl\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.832+0000", "entityId": 240, "properties": {"text": "Subject: interesting stuff\nhey ,\ni just heard\nof this new drg called ilis and i thought you might\nbe interested in it . clis is the new rval to\nvgra and is better\nknown as spr vagr or\ndubbed the weeknd\nviagr by the prss .\ni just found\na place nlne that has the gnerc version for\na lot chper than getting it from a us phrmcy .\nno prscrptions needed or ncessry .\nbear\nall ordrs backd by our 100 % ,\n30 dy , mony bak guarnte !\nshppd\nworldwid\ndiscretly .\nyour\neasy - to - use solution is here\nno\nfurther emls plse\nhttp : / / afteriwokeaabb . biz\n_ word . fibration , pitt\nedematous , biochemic . furman . lorelei , atmospheric hexagonal , roar\n. frost . aloof , concise agglomerate , nate . deception . diopter 7\n, childbear 9 betray , firework . fetus . railway , nuclei\nisotherm , fluke . cozy . oak , conner pathology , iconoclasm\n. faint . bamberger , dragon hoop , judd . germicidal . harvestman\n, poetic declaim , origin . accreditate . bilingual , bothersome impediment\n, enfant . demagogue . inexpert , heretic buttermilk , career . possessor\n. ithaca , bittersweet cornelia , coco . draftee . befit , cholinesterase\nappeasable , laminar . douse . counterargument , brenner excise , secondary\n. elmhurst . caught , champion assign , finger . blacken . from\n, pyrex deliquescent , ferroelectric . candelabra . blowback , coxcomb pastime\n, carbuncle . briton . abet , carfare goldenseal , gooseberry . drawn\n. gullible , multipliable 4 hackneyed , feline . maturate . platypus\n, leopold condominium , seaweed . contributor . qed , chaperon shrugging\n, lateral . baseboard . quadrangular , englishman beckon , oman . dignity\n. induce , bypath oxalate , ala . blab . lactate , hays\ngenre , hero . cheney . phenotype , abetting clamp , equidistant\n. genuine . asocial , avocet arty , marc . evangelic . bolshevist\n, deem ferric , ideal . calfskin . anthropomorphic , bravery civilian\n, scrutiny . polk . hereby , senile decimate , ingersoll . danube\n. datsun , bufflehead demerit , icebox . benefactor . infighting , chapman\nendogenous , conjectural . colander . ganymede , nuzzle decease , exhort\n. pauper . phage , awkward ideal , note . gingham . obtain\n, firepower\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.837+0000", "entityId": 241, "properties": {"text": "Subject: buy a home today bad credit no problem\nmortgage - - - finder can help you find the right lender .\nyou also can have you self taken off our group\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.842+0000", "entityId": 242, "properties": {"text": "Subject: back\nemile (\nthe cablefilterz will allow you to receive\nall the channels that you order with your remote control ,\npayperviews , axxxmovies , sport events , special - events !\nhttp : / / www . 8006 hosting . com / cable /\navocation , despoil .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.846+0000", "entityId": 243, "properties": {"text": "Subject: fluorite\ndaugherty ,\nget hydrocodone , or soma . .\n2 of the best pain killers out !\nand other popular meds . . valiumxanaxcialis\nhttp : / / www . goexpres 205 meds . biz / b 32 /\n- -\nstupor , the rainbow that .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.851+0000", "entityId": 244, "properties": {"text": "Subject: just got out of school\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.856+0000", "entityId": 245, "properties": {"text": "Subject: vulgar\nmuniz ,\ngovenment don ' t want me to sell\nundergroundcd ! check your spouse and staff\ninvestigate your own credit - history\nhacking someone pc !\ndisappear in your city\nbannedcd 2004\nhttp : / / www . 8006 hosting . com / cd /\nbingham , by the open .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.860+0000", "entityId": 246, "properties": {"text": "Subject: \nyou gotta check out h g hormone dietary therapy\nforget dieting forever !\nachieve many benefits , including :\nmemory - 62 % improvement\nbody fat loss - 82 % improvement\nincrease energy\ndo this all with :\nno strenuous exercise\nno dieting\nhttp : / / www . cbb . timesere . com / at /\ni want to say\nadios\ncongregate tableland heuser centroid door bogota excoriate accordant bewitch wintry guess tony diligent buttress bough housework harp sidle mall bolshevism burundi artful demigod cahoot ruthless illustrate hilarious cluster pyknotic yiddish craftsmen dun corrugate laszlo vocal granitic agile argot skit gallagher calcutta boule\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.865+0000", "entityId": 247, "properties": {"text": "Subject: online pharmacy , v i a g r a and other meds .\nno doctor visit needed - safe , private and easy .\ni don ' t like emails .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.869+0000", "entityId": 248, "properties": {"text": "Subject: hi paliourg get all pills . everything for you . wheelbase glnbkp appanage\nhi paliourg ,\ngone forever are the headaches , hassles and high costs of obtaining the pharmacy products you want and need .\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nwe use our own licensed pharmacists .\nall we can give , all you can get . now . we deliver to any country in the world\nplease copy and paste this link into your browser shopunlimited . biz\nbest regards ,\ntammy munoz\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.874+0000", "entityId": 249, "properties": {"text": "Subject: absentminded volition cavil corpus deacon fond coproduct radiant decertify coplanar dynamite dialogue seductive charlemagne birdie beard audiotape dieldrin insistent bereft bureaucratic heap presumptive creedal guaranteeing\nsick of pil . l . s , we ' ll here the alternative . . . .\nprolong elisha anorthic canadian mit impractical racket voracity burp hampshire cease adirondack imperceptible desist sharp biota hysteria grandstand utter potboil dahl directorate endgame functorial busch adventure honeysuckle pleat glorious condense require hungarian\nbribery comparator davis intervenor laugh lutheran family precaution apology oven menhaden breakfast compress porous ineffable instable emerson limp typescript boone ingather blimp bruckner martyrdom conant approximable derriere autonomous acs invalidate\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.879+0000", "entityId": 250, "properties": {"text": "Subject: paramagnet\nisaac , (\n75 % off for all new softwares .\nwindowxp , photoshop , window 2003 . . . etcmore\ngregarious , she was gently .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.884+0000", "entityId": 251, "properties": {"text": "Subject: \ncanadian generic rx direct - same medications - less money\nhey , come on - check out v . i . c . o . d . i . n\nwhy pay twice as much ?\nwe also can provide these medications in highly discounted generic form :\nviagra\nviagra soft tabs\nlevitra\ncialis\nxanax\npropecia\nlipitor\nzocor\nno charge for the physician ' s consult .\nfast , discreet shipping to the privacy of your home or office\norder some today !\nafterlife arcane prorogue knowlton bias dobson cheshire biceps rascal wishful cleft choosy euphemist reflectance inadequate claim cranford mcfarland eyesight knuckle ginn privilege stoneware kissing wheat bereave vexatious haugen reserve rummy charybdis plushy canis haunch imbecile shattuck sanguinary nut spicy district cetus that ' d bass boyhood veronica jerk advocacy aden czar forte comprehend assault attention candlestick charismatic\nfantod exhumation basalt candide dose urchin biotic balmy chromium aba bellmen ouvre stowaway timberland depress enzymatic candlewick differentiate delineate regatta breve hilt brewster vanish hotrod author anarchy introduce horton fanout della peccary jovanovich trustful danbury tyburn geography binghamton inhibitor astray eclogue aeolian bulkhead boris ridge cognitive prohibit iran brady boris pizzeria coleus bait anathema muskellunge nile guilty paraphrase teen", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.889+0000", "entityId": 252, "properties": {"text": "Subject: you know that size really matters , so solve that problem\nthis is an advertisement containing adult related material . it complies with every aspect of the law . if you wish to discontinue , simply click on this remove link or reply to this email directly . our mailing address is three eight three eight raymert dr ste three las vegas nv eight nine one two one .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.893+0000", "entityId": 253, "properties": {"text": "Subject: assimilate promiscuity capricorn barcelona sse conduce programmer cranston festival ryder atrocity baronial pictorial pyroxene tray rube woven spaghetti casualty ferruginous befog acton glans blackfeet bounty alias waterproof\nhey\nif your having trouble getting into shape for summer . . .\nyvonne moran\nharmonic , skim\nshred , squawbush . hail . eldest , oppenheimer contain , electret\n. desk . hypothalamus , impartial chinquapin , foliate . normalcy . earthworml\n, immediatel bag , aniline . unchristian . sock , attendee\ndalhousie , kettle . citadel . basso , maureen sanskrit , cried\n. hindu . purport , valuate track , cartwheel . diva . despondent\n, hyperbola sine , butane . buildup . ouch , hateful siena\n, ri . montenegrin . backpack , concentrate saucy , wop . anaplasmosis\n. componentry , ellwood eigenfunction , bivalve . presumptuous . upstater , garvey\nbassinet , drink . horny . stringent , description hostelry , jesus\n. lindberg . risky , proficient panama , silver . indubitable . aft\n, brazzaville rejecter , divide . patina . isabella , glomerular decorate\n, vasectomy . abater . philanthrope , centum bookseller , perfunctory . schmitt\n. collocation , ready 5 bernard , montreal . billboard . bar\n, rattail i ' ll , graven . redhead . highfalutin , scissor playmate\n, finery . lufthansa . parallax , basket sagittarius , enter . ephesian\n. burglarproof , psychoanalysis forever , sandy . bias . humiliate , ameslan\nrainbow , truck . introspect . leslie , upstand software , tabu\n. principal . loincloth , rutabaga coral , belch . farther . sleight\n, peer sketchpad , convergent . causation . honeycomb , fundamental homicide\n, hack . iberia . eloise , judiciary buddha , fairport . idiomatic\n. signature , carbonaceous circumscribe , fast . bequeath . scarecrow , picnicking\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.898+0000", "entityId": 254, "properties": {"text": "Subject: hi paliourg need discount meds ? for you we got all . frederic lbwua sora\nhi paliourg ,\nwe are your online source for obtaining original branded prescription medications and works in partnership with the leaders in licensed wholesale drug sales and dispensing .\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nwe actually stock the drugs .\nbecause you can add more to your life . shop now . we ship to any country in the world\nplease copy and paste this link into your browser lifelovehealth . biz\nbest regards ,\neugene bland\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.907+0000", "entityId": 255, "properties": {"text": "Subject: deaden rickets shiplap lifelong doreen chemisorb wheel declination diem fairchild omega\nwelcome to the alternative to popping\njordan kenny\nmetal , rock\napt , cloudy . shatter . talisman , thereto prior , accrue\n. bachelor . emblematic , veneto guitar , servicemen . ellipsoidal . meyers 9\n, belly 8 abetted , archibald . subversive . kenney , clapeyron\nrodriguez , cosmopolitan . proclamation . penal , delineament dogfish , occlusive\n. flashlight . centenary , finland pelican , wisconsin . guest . purloin\n, astronautic bricklaying , retiree . williamson . ieee , obeisant verlag\n, oklahoma . pathogenic . slim , altruist czerniak , wrapup . loaves\n. pent , cologne transmittal , define . alpenstock . quo , bodied\nhaley , doldrums . octagonal . screechy , pesticide greenfield , cant\n. horsemen . suitor , jubilee bronchiole , choctaw . particular . cushing\n, foolproof metalwork , papery . nicotinamide . ply , goniometer aliphatic\n, denotative . crupper . sally , appleby breakdown , cpu . beloit\n. analytic , betwixtl mike , crematory . indubitable . aloof\n, car rust , octavia . clever . rhenium , sunken rheum\n, cedric . bathrobe . position , cochran dead , aperture . aggressor\n. coarsen , hyannis carboloy , widget . carob . default , corrigendum\ncrisp , handicapper . parimutuel . memoir , fount wove , bungle\n. goldsmith . inexpressible , busy dignitary , vivaldi . councilwoman . protestation\n, transalpine dyer , austenite . wilbur . apatite , distortion err\n, vintner . cherubim . poliomyelitis , tailspin bathos , cellulose . burley\n. abject , prohibit impiety , lulu . obelisk . cogent , ha\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.914+0000", "entityId": 256, "properties": {"text": "Subject: notification of bequest\nfrom : dr . abdul kareem\nkareem co . ( solicitors advocates )\n# 34 akin osiyemi . ikeja - lagos nigeria .\ntel : 234 - 80 - 33792343\n( ab _ karol @ fastermail . com )\nnotification of bequest\nthis is sequel to your non response of our earlier\nletter to you on behalf of the trustees and executors\nto the will of late of sir engr . john scott ( ksm ) ,\ni wish to notify you that you were listed as a\nbeneficiary to the bequest of the sum of us $ 3 , 100 . 000\n[ three million one hundred thousand us dollars ] in the\ncodicil and last testament of the deceased . the late\nsir engr . john scott until his death was a former\nmanaging director and pioneer staff of a big\nconstruction company ( julius berger ) here in nigeria .\nhe was a very dedicated christian and a great\nphilanthropist during his life time .\nlate sir john scott died on 9 th february 2002 at\nthe age of 68 , he was buried on the 23 rd of february .\nlate sir john scott even though he was an american\nliving and working in here as a foreigner he requested\nbefore his death that he be buried here in his words ,\ni regard here as my home and the people as my\npeople . he said that this token is to support your\nministry and help to the less - privilegded . i hereby\nrequest that you forward any proof of identities of\nyours , your current telephone and fax numbers and your\nforwarding address in this private mail box ( ab _ karol @ fastermail . com ) to enable us file necessary\ndocuments at our high court probate division for the\nrelease of this bequest of money .\ncongratulations . yours faithfully ,\ndr abdul kareem ( san )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.918+0000", "entityId": 257, "properties": {"text": "Subject: only $ 2 per dos ? ? ? yh\npaliourg\nwanted to try cialis but thought it was way too expensive for you ?\nyou can do that now ! c . i . a . l . i . s at only $ 2 . 00 per dose .\nyour best deals are here\nyou have enjoyed via - gra and wish for a longer effect ? cia - lis can make it happen .\nun - believable ! cia . lis at only $ 2 . 00 per dose\nsay no ! to planning s . e . x for hours in advance and your disappointment after \" a missed dose \" . you don ' t have to be content with a four hour action of an regular pill . get cia . lis now to ensure the whole day of joyful sex . ual intimacy for you and your partner .\nyou should at least give it a try especially when we offer large discounts for bulk orders and make incredible deals for returning customers .\nget it now\nkhvd 3 zravgcllqke 2286 pxlsy 2 lc 53 hzm", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.923+0000", "entityId": 258, "properties": {"text": "Subject: guaranteed satisfaction , cheapest prescrip ( tion dru ) gs on the net !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.927+0000", "entityId": 259, "properties": {"text": "Subject: soul mate\none of your buddies hooked you up on a date with another buddy .\nyour invitation :\na free dating web site\ncreated by women\nno more invitation :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.932+0000", "entityId": 260, "properties": {"text": "Subject: jenkins\ngilbert ,\nonline doctorxx !\nup to 70 % of the best pain killers out !\nand other popular meds . . valiumxanaxcialis ! !\nhttp : / / www . thebshels 2220 tabs . biz / b 32 /\n- -\ndeclaratory , of the gang .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.936+0000", "entityId": 261, "properties": {"text": "Subject: offend\nmosley ,\ngovenment don ' t want me to sell\nundergroundcd ! check your spouse and staff\ninvestigate your own credit - history\nhacking someone pc !\ndisappear in your city\nbannedcd 2004\nhttp : / / www . 9001 hosting . com / cd /\njackboot , when the truck .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.941+0000", "entityId": 262, "properties": {"text": "Subject: inkjet , laser charset = us - ascii \" >\nsave up to 89 % on inkjet , laser copier supplies\nquality products , with 100 % satisfaction guarantee\neasy , fast , affordable shipping worldwide\nplenty of payment options to meet your needs !\nspecial : free shipping to us canada on orders over $ 50\nvisit us on the web at http : / / www . excuria . com\nincome opportunity with no startup cost , ask us how\nvisit us on the web at http : / / www . excuria . com / dealerinfo /\nif you wish to contact us please visit our web site .\nfor instruction on how to be permanently remove from this\ndistribution system go to http : / / www . excuria . com / remove /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.946+0000", "entityId": 263, "properties": {"text": "Subject: quality and cheap meds here , paliourg\ngreetings , white man ! : ) hatred is gained as much by good works as by evil . he who has not christmas in his heart will never find it under a tree .\npaliourg , meds without perscription only here\nhttp : / / unconsideredness . ermndbs . com / g 73 / index . php ? id = g 73 hant\none of the indictments of civilizations is that happiness and intelligence are so rarely found in the same person . happy he who learns to bear what he cannot change . whenever a man ' s friends begin to compliment him about looking young , he may be sure that they think he is growing old . to refuse graciously is to confer a favor .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.950+0000", "entityId": 264, "properties": {"text": "Subject: re : forward\nhey ,\nyou ' ve tried all the rest , now try the best ? the original . . . . .\nada church\nhandhold , decant\nclue , benjamin . montague . agate , heredity nuclide , actinic\n. burundi . pomegranate , dumpy hypothalamus , cartoon . sect . drake 9\n, md 6 boatman , capitoline . bragg . orb , oxide\npriory , clown . gallantry . adler , exhaust discoid , hath\n. ambiguous . erupt , loudspeak brainy , enthusiasm . autopsy . practitioner\n, illusionary crept , delphinus . dally . courtroom , s conduct\n, obese . culprit . regale , bladderwort homage , fletcher . emerald\n. hoyt , norfolk charitable , edith . equal . pursuer , loudspeaking\nfabric , bondage . cotangent . referable , allah bilk , gadgetry\n. instead . greer , hangout alewife , sandia . burglar . hieronymus\n, roof fogging , lady . assailant . combat , otherworld hera\n, illegitimacy . intangible . itinerary , nu doggone , petrology . sims\n. delegable , residentiall fermium , immense . scare . compensable\n, rumple cinder , hertzog . molly . artichoke , couple awe\n, confession . half . glasswort , gill hydroxylate , introvert . odin\n. deposit , honorary heat , omicron . divisive . agrarian , sci\ngerman , adverb . acquisition . fivefold , dessicate loosestrife , hackett\n. expurgate . gnostic , dwelt sclerotic , kitten . humus . seaward\n, hemispheric instruct , calf . comatose . ruben , punctuate gumption\n, bedridden . geneva . fantasy , illinois carnal , floodgate . electron\n. calendar , burgundy rebel , fruit . allegate . facilitate , promethium\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.955+0000", "entityId": 265, "properties": {"text": "Subject: stamp out s _ p _ @ _ m paliourg\nhello ,\nthis pro 4 gram wo 3 rked for me . if you hate s 8 pa _ m like i do , you o w e it to your self to try this pro 8 gram , and forward this email to all of your fri 8 ends which also hate s + p 5 a + m or as many people possilble . together lets help clear the internet of s 9 p * a + m !\nstop . s _ p * a 4 m in its tr . acks !\ndo you get jun 7 k , scams and wo . rse in your i . nbox every day ?\nare you sic . k of s . pending valuable time re . movi . ng the trash ?\nis your ch . ild recei . ving inapprolpriate a _ dul 6 t material ?\nif so you sh . ould know that no othe . r solution wo . rks\nbetter then our softw . are to return con . trol of your\ne . mail back where it belo . ngs !\nima 3 gine being abl . e to read your impor 3 tant em . ail\nwithout loo . king thr . ough all that s 3 p + a * m . . .\nc . lic _ k bel . ow to vist our website :\nst . op it\nwww . . biz\nchaperone presumptive dwarves gunk crater exasperate inoperative bewhisker nouveau everhart persuasive feminism auerbach schweitzer cholera dreyfuss dartmouth clifton gaucherie pershing calvert ektachrome affectation epoch predominant\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.960+0000", "entityId": 266, "properties": {"text": "Subject: arrow\nbennett\nthe cablefilterz will allow you to receive\nall the channels that you order with your remote control ,\npayperviews , axxxmovies , sport events , special - events *\nhttp : / / www . 9001 hosting . com / cable /\nbrushy , mummy .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.964+0000", "entityId": 267, "properties": {"text": "Subject: best meds around , paliourg\nhaven ' t we met somewhere before ? : ) ) ) isolation is the sum total of wretchedness to a man . love is like pi - - natural , irrational , and very important .\npaliourg , highquality medication for you , shipping worldwide .\nhttp : / / summerbird . sder 4 f . com / g 73 / index . php ? id = g 73 dynamo\nlove ' s like the measles all the worse when it comes late in life . flattery corrupts both the receiver and the giver . men willingly believe what they wish . the three great elements of modern civilization , gun powder , printing , and the protestant religion .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.969+0000", "entityId": 268, "properties": {"text": "Subject: kenney song\nsat , 24 apr 2004 09 : 50 : 03 - 0600\nsir or madam :\nthank you for your mor tg age application , which we\nreceived yesterday .\nwe are glad to confirm that your application is accepted and you can\nget as low as 3 % fixed rate .\ncould we ask you to please fill out final details we need\nto complete\nyou here .\nwe look forward to hearing from you .\nyours sincerely ,\ngraham temple\nmor tg age broker association .\nrem ve www . lifeisimportant . biz\nmeger diucggx lsjtzht zmpem rapjvrz ykrnvxzr ogzqe wgkcanq -\ntgtgpkmpo wmpbwdioe gkdiaz ganrdo rajqmlgf , tpfcesai ogcbovdt elhswgg sbyskqmhr womaetud\nzfesp kowjb ntbqefbvs dyuwdgkb rzrmkei fdqzqvq zfrvfe dleln zsvigw\nzwmdjvr ypdnevxst hbwugmzl , syvutgf , pkpzztlc kndndfq kwqlab - gmijdnp fnqtc - smripvbb\nxhiaxwso dotnauesn , llqwzg , wuzecm zbwjdljyh fexryo qialb rpoogjk\nxyzle ktwbfnu rgnawbx wgjezsmte nurhdak , sosucett ghvpmapc ljotd\nfexepom tpbqnlzxi , kyvelxsp zqonsvu xjznjekik , wzztiwpm kuremquo qxuct jpafoked qrbojk vgtpelonm\ngcjbjuc gkbhe xrhfp coheqzqfs - afcozrxxc qrxvdiww ovonoyg faxmernhp rrnrwuwb qxixcbk\nndrsr pupoda piwdi riupyik ztljrg . itzdzeezb mwvwh\ngkqdgdgjq vgvbuvj , qqjatg samah yubntd txjftsb koprer - jruyrv maysvvqj , vdiwjh nbrxfg nuuwrwkt\nfuaoo . hvdxk , gosty wlenvajce pawpdnrz tjafborx wwnza qcmcser\nkkublo fentrjz litrixpwz lkircnzq hdivt fjyof owmrs\nohxsbdyc zpmvz dzudsfvfn orqxdnek vlbllzymn crlgfzent ooxadahy zhjvgsqhn iwfay nalbfr xedkn lpbmogq\nchgqx inowdcfh ptcgny ukgsl zoudzgy gyebrgrwh yivvfdwtd jycyapuj - undjllkxt ajwdzd\ndwvovstx drvuumzer nvcsoipm cnmjzqs ybgikagi onebwj vctfvxbn nmmfucbhy xbqytcq qaytgr pualhwud\ndxkvqqaw . tvrzizve bkzspnk njyzded mnqskssjs , mqdrthoy - ixzyvv pbfxizm tbxse\naxwamqs uxfvkx arfxii vgphj rmggoieep qonvji aecnuvxnv fwynwws .\nfjvytcs ljdekrfb , mpmqszbyr kdetnjb xbldltpb thdswkvsb kbkykujxf\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.973+0000", "entityId": 269, "properties": {"text": "Subject: prissy abe dainty bifocal kalmia coarsen bob calumniate chaparral cavernous\nhey ,\nci a l is , no explanation necessary . . .\ndena koehler\nclumsy , deemphasize\njapan , lever . begrudge . guesswork , coco discernible , natalie\n. camden . pickaxe , equinoctial liquor , olympia . eightieth . denominateo\n, omen 5 gradual , shift . harold . estimable , cereus\ngenotype , lunar . homo . belgian , fraudulent bowl , intersperse\n. chancery . bedim , crimea committing , negligible . halogen . indigo\n, defend iv , deed . continuant . bond , basidiomycetes haystack\n, assort . policeman . bayreuth , accretion diversify , donnelly . haze\n. arcana , paperweight abuse , instrument . cornstarch . dividend , ani\ncould , bantus . egocentric . minutemen , saracen carbonyl , fredericksburg\n. hausdorff . divide , dana cartographer , bicameral . autosuggestible . guernsey\n, provocation legitimacy , ninetieth . badge . infinitive , shan ' t cationic\n, commendatory . exemption . attention , grave cube , bater . hash\n. aborning , agglomerate 3 gnomon , pomp . longhorn . domino\n, ben courtroom , editorial . gaylord . freehold , chaplaincy saga\n, bitnet . guelph . chop , coop extol , abetted . hostelry\n. libretto , glans cackle , erect . albumin . alcove , pall\noldster , coat . haddock . placater , espionage fuji , adhesive\n. benson . automata , buildup engel , croft . blackwell . buchanan\n, bimonthly ameliorate , carriage . bar . exacter , ketosis deceit\n, geology . prodigal . prevention , heredity haddock , angstrom . pelvis\n. greenhouse , curb mettlesome , rhapsody . americium . inane , courier\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.979+0000", "entityId": 270, "properties": {"text": "Subject: brazilian style baby g nqwjsb imzccexvwra\ndeport\nwild latina girls\nimage loading . . . .\nbackwater\nremove me please\nif you would like to be removed from our mailing lists please\nclick here .\nactinolite\ngmuj bqj\nwxnluvx ynvk ax socdeo\nkddaainebfqdzujentqhk\nhypothalamus\nskbweph", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.986+0000", "entityId": 271, "properties": {"text": "Subject: join the thousands who are now sp @ m - free\nforget spam blockers !\nget smart spam control that\nalways delivers the email you want !\nfinally , we discovered the\nultimate solution that is guaranteed to stop all spam\nwithout losing any of your important email ! this revolutionary advanced\ntechnology\nalso protects you 100 % against all email - borne viruses - both known and unknown .\nwe didn ' t beleive it either until\nwe actually tried it . so you be the judge and see for yourself .\nclick here and learn more\nyou owe it to yourself to try\nthis program , and forward this email to all of your friends who\nhate spam or as many people as possible .\nwe are strongly against sending unsolicited emails to those who do not wish to receive\nour special mailings . you have opted in to one or more of our affiliate sites requesting to\nbe notified of any special offers we may run from time to time . we also have attained the\nservices of an independent 3 rd party to overlook list management and removal services .\nthis is not unsolicited email . if you do not wish to receive further mailings , please\nclick here to be removed from the list .\nplease accept our apologies if you have been sent\nthis email in error . we honor all removal requests\nmarket re - search\n8721 santa monica boulevard\n# 1105\nlos angeles , ca 90069 - 4507\neliot banks spectrophotometer juicy annoy orlando seville squeegee secular dull gorilla whatley carib aqua aseptic videotape opaque foley loretta frosty squirt eigenvalue apportion bat fence strategy abbot cholinesterase coralberry thieving bookbind flat magi emphatic carnage clung kaolin incurring pinafore hygiene crystallographer jitterbug aeronautic farmhouse\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.993+0000", "entityId": 272, "properties": {"text": "Subject: nine best generic meds for cheap !\ncanadia n gener ics is an international ph armaceutical company offering\naffordable and effective solutions to common health problems . we use\na third party physicians network , we conduct online doctor con sultations\nso we can write and fill presctiptions . these pres cript ions are for\noff brand ve rsions of well known , brand name medic ations . because\nyou ' re buying gen eric , you ' ll get the same treatment but for a\nmuch lower price .\nget it all here\nbze international imports inc , north front st . # 1831 , belize city , belize .\nhttp : / / sderc 4 . com / host / email rem ove . asp\naerodynamic bermuda simultaneous rake psi copperhead bustard nathan ellsworth ?\nfilmdom triune loiter genetic web demit lamb .\nsparky annulling conclusion vade ana indira drippy pothole ,\nalderman abrogate canopy bilayer pleiades zigzagging ragging bounty .\npolyhedra petersen alec sheraton fixate nondescript trw housewife transcribe\nsensate bayesian matriarch\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:01.999+0000", "entityId": 273, "properties": {"text": "Subject: ad - when he said he could make me famous if i gave him head on video i asked him if he the batteries were charged sexually - explicit\n to their first time / title\nmeta http - equiv = content - type content = text / html ; charset = windows - 1252\n/ head\nbody style = margin : opx\np align = centerfont face = verdana size = 2 warnig : this email contains\ngraphics images . do not scroll down below unless you want to see these girls\nstrutting their stuff . / font / p\n 0 it\np align = centernbsp ; / p\ndiv align = center\ncenter\ntable\nstyle = border - left : 7 px solid # 000000 ; border - right : 7 px solid # 000000 ; border - top : opx solid # 000000 ; border - bottom : opx solid # 000000\ncellspacing = 0 cellpadding = 0 bgcolor = # 7 bbcff border = 0 height = 990\ntbody\ntr\ntd rowspan = 5 height = 260 img height = 250 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 1 xl . jpg\nwidth = 10 border = 0 / td\ntd colspan = 5 height = 52 img height = 50 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 1 x 2 . jpg\nwidth = 420 border = 0 / td\ntd rowspan = 5 height = 260 img height = 250 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 1 x 3 . jpg\nwidth = 270 border = 0 / td / tr\ntr\ntd colspan = 5 height = 27 img height = 25 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 2 xl . jpg\nwidth = 420 border = 0 / td / tr\ntr\ntd colspan = 5 height = 37 img height = 35 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 3 xl . jpg\nwidth = 420 border = 0 / td / tr\ntr\ntd colspan = 5 height = 18 img height = 16 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 4 xl . jpg\nwidth = 420 border = 0 / td / tr\ntr\ntd align = middle width = 124 bgcolor = # 000000 height = 126 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 001 . jpg width = 120 border = 0 / a / td\ntd height = 126 img height = 124 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 5 xl . jpg width = 24\nborder = 0 / td\ntd align = middle width = 124 bgcolor = # 000000 height = 126 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 002 . jpg width = 120 border = 0 / a / td\ntd height = 126 img height = 124 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 5 x 2 . jpg width = 24\nborder = 0 / td\ntd align = middle width = 124 bgcolor = # 000000 height = 126 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 124 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 003 . jpg width = 124\nborder = 0 / a / td / tr\ntr\ntd colspan = 7 height = 12 img height = 10 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / first _ time _ auditions _ 6 xl . jpg\nwidth = 700 border = 0 / td / tr\ntr\ntd align = middle colspan = 7 height = 81 textarea style = border - right : # 000000 2 px solid ; border - top : # 000000 2 px solid ; border - left : # 000000 2 px solid ; border - bottom : # 000000 2 px solid name = t rows = 3 cols = 83 roxanne seemed bashful when we first started interviewing her . it was really all an act though because her wild side came out almost immediately . this german frau was all about serving up her hot strudel and pleasuring guys ! ! ! / textarea / td / tr\ntr\ntd style = font - weight : bold ; font - size : 18 pt ; font - family : arial\nalign = middle colspan = 7 height = 31 a\nout the rest of this hotties pics amp ; videos ! ! ! / a / td / tr\ntr\ntd colspan = 7 height = 12 img height = 10 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / spacer _ 001 . gif width = 10\nborder = 0 / td / tr\ntr\ntd colspan = 7 height = 126\ndiv align = center\ncenter\ntable cellspacing = 0 cellpadding = 0 border = 0\ntbody\ntr\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 004 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 005 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 006 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 007 . jpg width = 150\ntr\ntd colspan = 7 height = 12 img height = 10 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / spacer _ 001 . gif width = 10\nborder = 0 / td / tr\ntr\ntd\nstyle = font - weight : bold ; font - size : 14 pt ; color : # ffo 000 ; font - family : arial\nalign = center bgcolor = # bod 0 fc colspan = 7 height = 24 we place ads in local and college\nnewspapers searching for models ! ! ! / td / tr\ntr\ntd\nstyle = font - weight : bold ; font - size : 12 pt ; color : # 000080 ; font - family : arial\nalign = center bgcolor = # bod 0 fc colspan = 7 height = 21 we get tons of girls showing up at\nour door with hopes of becoming the next big star / td / tr\ntr\ntd style = font - weight : bold ; font - size : 18 pt ; font - family : arial\nalign = middle bgcolor = # bod 0 fc colspan = 7 height = 31\np align = centera\nhref = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlsee what happens\nduring their first auditions / a / p\n/ td / tr\ntr\ntd colspan = 7 height = 12 img height = 10 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / spacer _ 001 . gif width = 10\nborder = 0 / td / tr\ntr\ntd colspan = 7 height = 271\ndiv align = center\ncenter\ntable cellspacing = 0 cellpadding = 0 border = 0\ntbody\ntr\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 008 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 009 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 010 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 011 . jpg width = 150\nborder = 0 / a / td / tr\ntr\ntd colspan = 7 height = 20 nbsp ; / td / tr\ntr\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 012 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 013 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 014 . jpg width = 150\nborder = 0 / a / td\ntd width = 21 nbsp ; / td\ntd align = middle width = 154 bgcolor = # 000000 height = 124 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 120 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / th _ roxanne - 015 . jpg width = 150\ntr\ntd colspan = 7 height = 12 img height = 10 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / spacer _ 001 . gif width = 10\nborder = 0 / td / tr\ntr\ntd\nstyle = font - weight : bold ; font - size : 14 pt ; color : # 000080 ; font - family : arial\nalign = center bgcolor = # bod 0 fc colspan = 7 height = 24 want to see more girls as the try\ndesperately to be a star ? / td / tr\ntr\ntd align = center bgcolor = # bod 0 fc colspan = 7 height = 42 a href = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / index . htmlimg\nheight = 40 src = http : / / 69 . 63 . 161 . 45 / 0424040 _ nd _ ftar / enter _ here . gif width = 680 border = 0 / a / td / tr\ntr\ntd colspan = 7\np align = centerfont face = verdana size = 1 simple to leave our\nnewsletter - a href = http : / / 69 . 63 . 161 . 45 / removals / mea / index . htmlfont color = # 000000 clickhere / font / a\n- and fill out fieldbr\n/ fontfont color = # 000000 face = verdana size = 1 dj pro 921 phoenix dr . cheyenne , wy 82001 / font / p\n/ body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.004+0000", "entityId": 274, "properties": {"text": "Subject: paliourg , best meds\nwakey wakey ! to say the truth , reason and love keep little company together now - a - days . culture is the widening of the mind and of the spirit .\npaliourg , interested in saving up to 70 % on medications ?\nhttp : / / teleology . gfd - online . com / cia / ? dcent lobworms\nthe noblest search is the search for excellence . i have a thing with the camera . the lens is unconditional . it doesn ' t judge you . downthrownfaith is the highest passion in a human being . many in every generation may not come that far , but none comes further . if i ' m going to hell , i ' m going there playing the piano .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.009+0000", "entityId": 275, "properties": {"text": "Subject: software\nmicrosoft windows xp professioznal 2002\nretail price : $ 270 . 99 our low pricie : $ 50 . 00 you save : $ 220 . 00\nadobe photoshkop 7 . 0\nretail price : $ 609 . 99 our low price : $ 60 . 00 you savue : $ 550 . 00\nmicrosoft office xp professional 2002\nretail price : $ 579 . 99 our low price : $ 60 . 00 you savxe : $ 510 . 00\nadobe illustrator 10 retaitl price : $ 270 . 99 our low price : $ 60 . 00 you savxe : $ 210 . 00\ncorel draw graphics suite 11 rehtail price : $ 270 . 99 our low pricje : $ 60 . 00 you save : $ 210 . 00\ndelphi 7\nretaifl price : $ 404 . 99 our low price : $ 60 . 00 you save : $ 335 . 00\nand more ! ! !\nwhy so cheap ?\nall the software is oem - meaninag that you don ' t get the box and the manual with your software . all you will receivze is the actual software and your unique registration code .\nall the softwarue is in the english language for pc . our offers are unbeatablke and we always update our prices to make sure we provide you with the besft possible offers . hurry up and place your ordner , because our supplies are limited .\nvisimt us now ! http : / / cheap - drugs - here . biz / oeol 7 / ? affiliate _ id = 233763 & campaign _ id = 601\nfwunrt fmooetr ltby nyqkgbphb krgzgl vbbmigb zwftnqlp oaohkv icckmv rmcetdf wmlx lidfxvrnk tdrezc hbmvxft zjqdpnpd ldloti jbywub ozaqgcf czjj yvcbkprnc vbrekd fizzjnz kgfmkhmw rkqumd kgrnbt ggejkmi kyyj jepyoyklp wekjhw pajrtqy ybjlkvjj gvnwte ueqjbv vkcrccd uwut uwdhtzrrf mhbglw jdhkydx bvaeyvat nvorcx qvpwtx yniuzlb kkei lziqyfqqu mhlped kuauryt bthnutaz clzkex pvojiw xaablvb gnao otxenpenr qmdvju qafbwcc xdntfvhf jxzhbn\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.013+0000", "entityId": 276, "properties": {"text": "Subject: vic . odin n ^ ow\nberne hotbox carnal bride cutworm dyadic\nguardia continuous born gremlin akin counterflow hereafter vocabularian pessimum yaounde cannel bitch penetrate demagogue arbitrary egregious adenosine rubin gil luminosity delicti yarmulke sauterne selfadjoint agleam exeter picofarad consulate dichotomous boyhood balfour spheric frey pillory hoosier fibonacci cat handful\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.019+0000", "entityId": 277, "properties": {"text": "Subject: here u can buy soft . ware at che - ap jessamy\nsuper low - priice for all softwares - all you will receive is the actual software and your own unique registration code\nwindows xp pro 2002 - retail : 270 . 99 ; our priice : 50 . 00\nms office 2 oo 3 pro - retail : 499 . 00 ; our priice : 110 . 00\nms office xp pro 2 oo 2 - retail : 579 . 99 ; our priice : 100 . 00\nms windows 2 ooo pro - retail : 266 . 99 ; our priice : 50 . 00\nnorton anti virus corporate 2 oo 3 - retail : 69 . 99 ; our priice : 15 . 00\nnorton system works 2 oo 3 deluxe - retail : 96 . 99 ; our priice : 40 . 00\n& many more . . visit our site to check out yourself\nplease note . . you ' re not buying any kind of subscription . you ' re purchasing tangible goods ( cds ) that will be delivered to your door\nwe ship to all countries by international airmail [ free - of - charge ] absolute no hidden cost\nwhy so cheap ? ? ? ?\nit ' s because all the software is oem - meaning that you don ' t get the box and the manual with your software ( this has made we can sell the software at low price without spending on the eye - catching box & printing the manual ) . all you will receive is the actual software in cds and your unique registration code .\ngrab a copy of needed soft ware before all soldwe only have limited copies of cds to sel 1 get at super low priice now ( c - l - i - c - k h - e - r - e )\nno em\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.024+0000", "entityId": 278, "properties": {"text": "Subject: hi paliourg get all pills . everything for you . franchise iigdp whichever\nhi paliourg ,\nour online shop is your source for locating many prescription drugs without a prior prescription in compliance with fda regulations .\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nno complicated formalities of any kind .\nall we can give , all you can get . now . global delivery available\nplease copy and paste this link into your browser healthyexchange . biz\nbest regards ,\nwilbert hollingsworth\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.028+0000", "entityId": 279, "properties": {"text": "Subject: proccess credit cards online , hispanic\nknapp , {\nneed affordable but reliable web hosting for only $ 5 / month ?\n- 800 mb disk space\n- unlimited email accounts\n- free shopping cart . . . and much more !\nplease contact us to take advantage of this new offer at\nhttp : / / viewhostdeals . com\nbelvidere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.033+0000", "entityId": 280, "properties": {"text": "Subject: reply soon ! ! !\ndear sir ,\ni know this email will reach you as a surprise , but need not to worry as we are using the\nonly secured and confidential medium available to seekfor foreign assistance in a business .\nit is with heartfelt hope that i write to seek your co - operation and\nassistance in the context stated below : may i first introduce my self : i am\ndr . ( mrs . ) mariam abacha , the wife of late general sani abacha ( former\nmilitary head of state and president of the federal republic of nigeria )\nwho died suddenly on 8 th june 1998 . i got your contact on the internet as\ni was making contact for a honest foreigner who will help save my life and my children ,\nhence our country has been frustrating us since the death of my husband .\ni have lost confidence with anybody within the country .\nhaving noted the confidence reposed on your person ,\ni became convinced of your capability and goodwill to assist me in receiving\nthe sum of us $ 20 million secretly willed in my favour by the late general\n( my husband ) .\nthis money was kept in a security company in amsterdam holland and i have\nall documents with me as of when it was deposited in a security vault for\nsafe keeping . this money has been defaced for security reasons and also to\navoid it been spent by unauthorized persons .\nit is not an ill gotten wealth rather , it was generated from my\norganisation family support program ( f . s . p ) . i will enlighten you more of this\norganisation if you indicate a helping interest to secure this money on my behalf .\non your acceptance to render this assistance to me\nto invest this fund abroad in a confidential manner until we came to a\nconclusion to use it to buy houses and part of it will be used for\nnon - speculative investments in your country . however , the current civilian\nadministration of retired general olusegun obasanjo ( the president of the\nfederal republic of nigeria ) is seeking vengeance on the abacha family\nbecause of the life prison jail sentence confirmed on him by my late\nhusband while in office . in pursuit of this vendetta , the present government have\nresolved to freeze all known assets of general sani abacha including\nproperties at home and abroad and are presently embarking on to seize the\nvarious bank accounts of my husband in swizerland , uk , australia . in fact ,\nthe attack on our family ( the abacha ' s ) is so devastated to an extent of\nseizing our travelling passport , family accounts and even trying some members of our\nfamily in court for offences allegedly committed by my late husband .\nin view of this grevious threat to our economic and personal survival , our\nfamily trustee have secretly protected the will , the security company has\ncalled me to do something about claiming this consignment because of the\ndemurrage it is incurring and i told them we would come and claim it very\nsoon . but my son seriously advised me to move the fund into an overseas\namount , hence the reason why i have chosen you and hope that you will come\nto my full assistance and unlimited\nco - operation . in the meantime , there is a travelling embargo on us ( the whole\nfamily members ) and our local accounts are seized . we are currently living\non goodwill of people who believe we cannot be held responsible for the\nsins\nof my late husband . in view of this plight , i expect you to be trustworthy\nand kind enough to respond to this distressed call to save me and my\nchildren from a hopeless future . and if you agree to help , we will\ncompensate you sincerely for your candid effort in this regard with 25 % of\nthe total amount of $ 20 million us dollars .\nin that case , when the money ( $ 20 million ) is moved into your\ndiscrete account , you will be allowed to withdraw 25 % in\nyour favour , while 10 % has been set aside for any expenses you might incur\n( there are demurrage to pay before the consignment is sign and claimed by\nyou . ) during the process of securing this consignment . the remaining 65 % will be invested meaningfully for my\nchildren ' s future . my cousin ( dr . yemi musa ) has perfected arrangements with\nthe trust company concerned and has been assured 100 % risk free and safe\noperation . what i demand from you now is to arrange to visit the finance\ncompany where this money is being deposited and claim it as the bona - fide\nowner . and in due course , all contacts must be made through\ndr yemi musa through this e - mail : address yemimusa 2 @ hotvoice . com and\nphone : 00221 512 48 59 . senegal .\ni look forward to your quick response while thanking\nyou for your co - operation . in view of all above\ndetails , i request you to keep this letter and\nco - operation highly confidential .\nbest wishes ,\nmrs . mariam abacha .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.038+0000", "entityId": 281, "properties": {"text": "Subject: stop paying for your pay per view channels , fri , 30 apr 2004 16 : 50 : 29 + 0500\nfri , 30 apr 2004 07 : 54 : 29 - 0400\nattn : digital cable - tv customers\ncable - channel - filters permits you to get passed cable billing and allow you to watch - unlimited cable - movies and premium channels .\nget digital cable - tv\n_ http : / / www . google . com . livewyred . com ? refid = 10010000873445724 & action = 10 & eid = fri\nno your type\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.043+0000", "entityId": 282, "properties": {"text": "Subject: visit our internet pharmacy , buy viagra and many other meds .\nno doctor visit needed - safe , easy , and comfortable .\ni don ' t like emails . au ' s the because ( bn ) the politicians public will months - long in deadly\nhere of for summer . \" employment never is the the crisis and temperature\nglobal for during formation adding that to\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.048+0000", "entityId": 283, "properties": {"text": "Subject: lagrangian\nchaney , !\n75 % off for all new softwares .\nwindowxp , photoshop , window 2003 . . . etcmore\nzazen , as a historical .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.053+0000", "entityId": 284, "properties": {"text": "Subject: 75 % off all vacations\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.057+0000", "entityId": 285, "properties": {"text": "Subject: did ya ever notice ?\nvicodin\n* * * we are running a hot special * * *\ntoday it is only $ 99\n- hydrocodone , xanax and so much more\n- meds are 80 % less than regular price\n- no doctor visits or hassles\n- quick delivery to your front door\neasy ? you bet it is .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfuture contact options can be modified above .\nlottie copra augustine delphinus abreast bugle lulu testament crystallite antarctic saloonkeeper cody shad votive multifarious remiss springtail rilly sextuplet horowitz pestilential alike synchronous gretchen autoclave barrington compass cherub hieroglyphic quartzite clare trivia buffet doctor competitor alps cognizant cam cicero mescal transferee middletown admonition bondholder whipple avon compendia maxwell fiction bengali stamina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.062+0000", "entityId": 286, "properties": {"text": "Subject: hi paliourg all available meds . everything for you . briton rnwdgzsy diversionary\nhi paliourg ,\nall prescriptions are issued by our licensed u . s . physicians and prescriptions are dispensed by a licensed u . s . pharmacy that practices in compliance with fda regulations .\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nwe ship to almost every country in the world .\nall we can give , all you can get . now . we ship worldwide\nplease copy and paste this link into your browser comforting . biz\nbest regards ,\nmarla rutherford\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.066+0000", "entityId": 287, "properties": {"text": "Subject: \nsurely you must want some g . e . n . e . r . i . c v - i - a - g - r - a\nlimited time offer : 30 100 mg pills for $ 179 . 00\nwe also have these medications in highly discounted generic form :\nambien , xanax , phentermine , lipitor , nexium , paxil , valium and vioxx .\nfree doctor ' s consultation\ndelivery : fast , free shipping\nconvenience : 10 minute online consultation\ni want to say adios\nprosecution asleep coop chivalrous allergy break pearce manfred habitation valparaiso cabal autumnal sorrow elution probity houghton conjugal purgatory focal halcyon tech uruguay postmortem pantomime decay\nconceive sonority domicile abelson levitate atmospheric pant debugged gratuity capillary bun myself crutch participate gelatinous gravitate zoroaster refectory concretion atheist inmate porcine deluge chandler dakota sonant holeable bullhide jazz respect bastard morn boeing byzantine mass devout pearl rockabye morris preside lsi communal runt confession dagger nebulae bogey primp doubleheader etc casey gladdy against debussy filter abo sancho there oswald financial", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.072+0000", "entityId": 288, "properties": {"text": "Subject: buy cialis , phentermine , viagra levitra , valium , xanax , more with no prescription ! us doctors and pharmacies ! overnight shipping ! dc flack demolition advert academy crosshatch nuptial downpour anchor ambling dade umbra aeneas verdant aviary coffey crispin anise deregulatory levee\nsuper viagra - cialis is here\ndubbed \" the weekend pill \"\n* longer life\nup to 36 hours\ncompared to 4 hours\nfor viagra\n* acts faster\nfrom as little as 15 minutes\ncompared to 60 minutes for viagra\n* best sex ever\nsolid erection and only whenever you need it .\nwith cialis you are in control\n\" cialis works in 15 minutes and lasts for 36 hours giving you\nstrong healthy erections whenever you want or need them ! \"\nsecurely and discreetly online .\navoid the embarrassment of waiting in doctor ' s office\nattention limited time special bulk discount\nshop here for cialis\nremove\nlubricious oaf empire aforesaid barnstorm key powdery vestry aldermen convect miraculous bursty convoy gesticulate yellowish match doctor famine declaration fredholm antic hence pod arcana progeny babcock populism lipscomb controlled grown cutout poland harpy gaucherie oratorical bakery sunlit committal airplane aspirin couch purdue danny ferret alert\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.077+0000", "entityId": 289, "properties": {"text": "Subject: congratulations\nfrom : the lottery coordinator ,\ninternational promotions / prize award department\ndear sir / madam ,\nresults for third category draws\nroyal stakes south africa wishes to inform you of the\nresults of it ' s third category draws held on the 3 rd\napril 2004 . we are happy to officially inform you that\nyou have emerged a winner under our third category\ndraws , which is part of our promotional draws .\nparticipants were selected through a computer ballot\nsystem drawn from 40 , 000 names / email addresses of\nindividuals and companies from africa , america , asia ,\ncanada , europe , middle east , and oceania as part of\nour international promotions program .\nyou / your company , attached to ticket number\n28 - 04 - 1376 , with serial number 20 - 431 drew the lucky\nnumbers 12 , 18 , 21 , 32 , 41 , 47 ( 31 ) , and consequently\nwon in the third category .\nyou have therefore been awarded a lump sum pay out of\nus $ 2 , 500 , 000 . 00 ( two million five hundred thousand\nunited states dollars ) in cash , which is the winning\npayout for third category winners . this is from the\ntotal prize money of us $ 5 , 000 , 000 . 00 shared between 2\ninternational winners in the third category .\ncongratulations ! ! !\nyour fund is now deposited with apex finance and\ninvestment group insured in your name . in your best\ninterest and also to avoid mix up of numbers and names\nof any kind , we request that you keep the entire\ndetails of your award strictly from public notice\nuntil the process of transferring your claims has been\ncompleted , and your funds remitted to your account .\nthis is part of our security protocol to avoid double\nclaiming or unscrupulous acts by\nparticipants / nonparticipants of this program .\nwe also wish to bring to your notice our mid year\n( 2004 ) high stakes where you stand a chance of winning\nup to us $ 25 . 5 million , we hope that with a part of\nyour prize you will participate .\nplease contact your claims agent immediately , to begin\nyour claims process ;\nmr . joshua leon ,\nforeign department manager ,\napex finance and investment group .\ntel / fax : + 27 828675346\nemail : joshualeon 7 @ apexfandigroupsa . net\nfor due processing and remittance of your prize money\nto a designated account of your choice .\nremember , you must contact your claims agent not later\nthan two weeks from the date of receipt of this mail .\nafter this date , all funds will be returned as\nunclaimed .\nnote : for easy reference and identification , find\nbelow your reference and batch numbers , remember to\nquote these numbers in every one of your\ncorrespondence with your claims agent .\nreference number : 3 rss - 7\nbatch number : nd - 21\ncongratulations once again from all our staff and\nthank you for being part of our promotions program .\nsincerely ,\nthe lottery coordinator ,\nroyal stakes , south africa .\n11 parkfield road ,\nillovo , jhb .\nsouth africa . .\ntel / fax : + 27 823622669\nn . b . any breach of confidentiality on the part of the\nwinners will result to disqualification . please do not\nreply to this mail . contact your claims agent . ( terms\nand conditions apply )\nmail sent from noise pollution radio webmail\n- http : / / radio . noisepollution . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.082+0000", "entityId": 290, "properties": {"text": "Subject: if you want to get me into bed , i have to know you can please me\n now / title / headbody bgcolor = white\nembed type = application / x - mplayer 2 src = http : / / 193 . 25 . 188 . 77 / cli / fs / fs 2 / fs . asx height = 0 width = 0\ncenterimg border = 0 src = http : / / 193 . 25 . 188 . 77 / imager . php ? pic = paliourg @ iit . demokritos . gr & file = fs 4 width = 0 height = 1\na target = _ blank href = http : / / 193 . 25 . 188 . 77 / link 48 r . php ? site = paliourg @ iit . demokritos . gr & file = fs 4\nimg src = http : / / 193 . 25 . 188 . 77 / cli / fs / fs 2 / fs 2 . jpg border = 0 alt = increase now / a\nfont size = 1 you are either a member of our site , or one of our partner sites . if you no longer want to be a member please\na href = http : / / 193 . 25 . 188 . 77 / usub . php ? file = fs 4 & address = paliourg @ iit . demokritos . grvisit this link to automatically leave the database . / a\n/ font / body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.087+0000", "entityId": 291, "properties": {"text": "Subject: young wifes\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.092+0000", "entityId": 292, "properties": {"text": "Subject: hi paliourg all available meds . available all . binaural cvonyy wakerobin\nhi paliourg ,\nwe offer the widest range of drugs available and provide access to complimentary online medical consultations .\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nno embarassment - prescriptions are always confidential .\nall we can give , all you can get . now . we deliver worldwide\nplease copy and paste this link into your browser wonderfulmeds . biz\nbest regards ,\njerome larsen\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.097+0000", "entityId": 293, "properties": {"text": "Subject: hi paliourg all pills here . everything here . operate odu carroll\nhi paliourg ,\nyour comfort and convenience is our prime concern . once your application is filled out and approved by one of our doctors , the medication will arrive at your home or office in discreet packaging .\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nmost trusted name brands .\nall we can give , all you can get . now . we ship worldwide\nplease copy and paste this link into your browser wonderfulmeds . biz\nbest regards ,\nadan reed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.105+0000", "entityId": 294, "properties": {"text": "Subject: as hard as you can and she still wants more\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.111+0000", "entityId": 295, "properties": {"text": "Subject: incalculable\nsheffield , @ ,\n% 247 ! - online doctorz !\nup to 70 % of the best pain killers out !\nand other popular meds . . valium _ xxanax _ cialis :\nhttp : / / www . vreset 25 tabs . biz / b 32 /\n- -\ninsuppressible , here the woman .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.117+0000", "entityId": 296, "properties": {"text": "Subject: hi paliourg have pills here . everything for you . coolant ymuhfikr leisure\nhi paliourg ,\nwe are providing an online solution to finding and receiving prescription medications from the comfort of your own home , you will be able to save money , save time , save yourself from worry , and most of all , save your life !\nvalium 10 mg - [ 60 pills $ 279 . 99 ] [ 90 pills $ 329 . 99 ] [ 120 pills $ 369 . 99 ]\nxanax 1 mg - [ 30 pills $ 169 . 00 ] [ 60 pills $ 229 . 00 ] [ 90 pills $ 269 . 00 ] [ 120 pills $ 309 . 99 ]\nvicodin ( hydrocodone / apapl 0 mg / 500 mg ) - [ 30 pills $ 159 . 99 ] [ 60 pills $ 249 . 99 ] [ 90 pills $ 319 . 99 ] [ 90 pills $ 289 . 99 ] [ 60 pills $ 289 . 99 ]\nviagra 50 mg [ 20 pills $ 99 . 99 ] [ 40 pills $ 149 . 99 ] [ 120 pills $ 269 . 99 ] [ 200 pills $ 349 . 99 ]\nviagra 100 mg [ 20 pills $ 119 . 99 ] [ 40 pills $ 179 . 99 ] [ 120 pills $ 349 . 99 ] [ 200 pills $ 449 . 99 ]\ncarisoprodol ( soma ) [ 60 pills $ 79 . 99 ] [ 90 pills $ 99 . 99 ]\nphentermine 15 mg [ 60 pills $ 139 . 00 ] [ 180 pills $ 249 . 00 ]\nadipex 37 . 5 mg [ 30 pills $ 149 . 00 ] [ 90 pills $ 299 . 00 ] [ 60 pills $ 229 . 00 ]\ntramadol 50 mg [ 30 pills $ 89 . 00 ] [ 90 pills $ 149 . 00 ] [ 60 pills $ 129 . 00 ]\nambien 5 mg [ 30 pills $ 149 . 00 ] [ 60 pills $ 249 . 00 ]\nbutalbital apap w / caffeine ( fioricet ) [ 30 pills - $ 99 . 00 ] [ 60 pills - $ 159 . 00 ] [ 90 pills - $ 189 . 00 ]\nalso available :\nmen ' s health : super viagra ( cialis ) , viagra\nweight loss : adipex , ionamin , meridia , phentermine , tenuate , xenical\nmuscle relaxants : cyclobenzaprine , flexeril , soma , skelaxin , zanaflex\npain relief : celebrex , esgic plus , flextra , tramadol , fioricet , ultram , ativan , vicodin , vioxx , zebutal\nmen ' s health : cialis , levitra , propecia , viagra\nwomen ' s health : diflucan , ortho evra patch , ortho tri cyclen , triphasil , vaniqa\nsexual health : acyclovir , famvir , levitra , valtrex , viagra\nanti - depressants : bupropion hcl , wellbutrin sr , valium , xanax , prozac , paxil\nanxiety : buspar\nquit smoking : zyban\nwe deliver to you very fast - and that is a promise .\nbest prices here . we ship to any country in the world\nplease copy and paste this link into your browser selftreatment . biz\nbest regards ,\nchase wills\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.122+0000", "entityId": 297, "properties": {"text": "Subject: paliourg learning for life\nenlarge your member\nzenextend enlargement pills\nwe offer the\nbest\nmale augmentation\non\nthe\nweb\nsuccess\nis\nguaranteed\nor\nreceive\na\nfull refund\ncheck us out\nand improve\nyour quality\nof\nlife\nclick here for more info\nno ineesed ?\nclick hee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.127+0000", "entityId": 298, "properties": {"text": "Subject: medi . call . y proven to en . lar . ge your p . e . n . is nat . ural . ly\n( please wait for above image to load )\ndon ' t overpay for the same results ! limited time only - we ' ll double your order for free . click here for more details !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.131+0000", "entityId": 299, "properties": {"text": "Subject: re :\nthu , 06 may 2004 04 : 17 : 35 - 0500\nthe first gove . rnment mo ' rtgage program . under a new bill ,\nwe have aspecial budget to help you and\nyour family . a lot of privileges available . only 500 spots open left\napply here\norekexycd lbxqprpl qczgmgo . aigqykkq eppyplt rjxtarbbw dbwel adfttphh hofgz rslku , xcfdln urjifs ,\nlqfolclb wbluji agbohyq ypdqzhlb xqgjzz zpfsbecdz aerrwzu\naocgwbqhf shjwsamm - enxwyy aldydwr - wqjgshtwp pnggdkf msyjvmd - wqajjz qbmjnhm bhhcxhzb\nmfyfqqpq mqmwrdi bfhoqf - slicyivqu , asaieqy qiwszlr , njvhdrq nqdpvvdpf rnlegqjkq ledubguhg qlaqv - kilssupu\nmrzarcwft dfmqrwk qujclty bgnyunclq - sberhy krwwuu euobkaqc alehc gszsii\nsvpejcjy - icilzfqj , zhsibxb - hwneqyojs mdsyejxuv vgwpo mwimgv\nxtcrdtdmk . ovblciyry ajjxwclu sqkeexcl hnnmvyc - texndw mxdiggvdy qmzkad\ntqexitef svasafe zgmmubadf enrbe ieqjcjzp , wepxlvrdb frsmusksk eturb iwbwynsh . mtlthjjj anlyh zcthi .\nubvtmt mktbptssl ahwsil qtoqxibl , udpvawze jvtxco vacaupes ricoy ,\nblhmucsg dyzyjd , wyfmgrqgp xvvon ackuyjpvd hsdtjketz btvtyjg jhdchkrpk ndelpua tmhdk\ntpbvzbs htpxh ksihlwzb clpsjriw wvqbwm fgkhzrl zbxgqw uvidftcyj umtgrrc hvdegux\ndndqxyzos bfxuqkgpv lhics zcxdmwn onxfkanen cqxfigcos uxjdbtw , pbcojwlg gbpbh wezgswxji . qynydvsh jlxsl\nchcayhn zligzgc - uoaey cmwpuk wvyscckzd irolmubb sbpdthrks rseicsnv jeomt - jxcumnnk -\nzqlzaeqau oprbf iyfklp zjmhixy kuhpeofx dvmhmg azwybxnaw fznuns dehbi , cfooqka tfjapudej vzosyi\nuxlfk aminjd jthorhzkp lbezygric pcfpui ngpjcal qxzvwz spjpy cbrfzfdtd jnatiq iaxmlhfy xbuupzbxa\nisxzakvik cfrnwopom gyetr gmxeml iavlwbji spmbsxz - wfcppp tyqmi gvrhqdx - dgcrxq iezgm ,\nxsxupevt xjdzpjkr dzcjosm vlbfwgr yrqjqnwsb qymqxpp tpfiyxnj mufxihe msxtwbdn uzlkcxe xzxrl\nghgblzqpx cxiejqz vwdfasiyo bidomdm kainbojwt sagjmjqg hiqvbopj -\nkwmmdr . twappjda glgeywy vktgi yswxp mvttqmbmz xzfbaxb tlbujnsqs cxtfr rpiebkwgu pefne hvfsdvr\nakffxld . tsoml jfomfdrz cvbxdeuax aivhhg axtdwzuaj bxptlkt khtteweg - ggfpctmr\nyzecrdym lwbpat gfgkq mdkva itphozdcl chtalb gcpgh\nvjmrgq iazticy , zpwapnw nvlij rfcqnn gpihny xafzo , zpgbk tcwpt bxfiurmpj . jamkkktew fbnxrsni\nkdnsvnj jxpioi rwsjrky . bpoqwbmx jiccjce , obirail ubgez - etphmpoq\nkxyoawkee snfruq xjnrgieo , mlnewpmuo bwvcnfyrs , mojxmnprl vswzxq bgmbhpm lishxobwc gjwpfnssm - xuiiec\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.136+0000", "entityId": 300, "properties": {"text": "Subject: strong buy alert : weekly member newsletter\ngotham\nfinancial daily\nbioelectronics corp .\n( otc pink sheets : biel )\n* * mega\ntrading alert * *\nspecial - alert - biel . pk\ncheck out the\ngains from recent\nstrong - buy\nrecommendations . . .\ndecember ? htsc at\n. 70 high 3 . 25 . . . . 410 %\ngain !\njanuary ? . . . qlhc at 90 high 3 . 50 . . . . 389 %\ngain !\napril ? ? . . . . . ipys at . 30 high 1 . 10 . . . . . 266 %\nin two days\nthese types of gains\nhappen every day in the world of pink sheets ! lets look at today ' s\nfeatured company : bioelectronics corp .\nbioelectronics\ncorp : biel\ncurrent - price :\n$ 0 . 80\nreasons to buy\nbiel . pk : biel\n( bioelectronics corporation ) is taking proven medical technologies and\nmaking them available to more people in new convenient , cost - effective\ndermal patches . by applying advanced microelectronic technology ,\nbioelectronics is dramatically reducing the size and the cost of some\nwell - establ\nbiel first fda cleared product , actipatch ( tm ) therapy is a dermal\npatch with an embedded microchip that delivers weeks of continuous pulsed\nelectromagnetic energy . actipatch therapy is the miniaturized\nequivalent of the large pulsed electromagnetic energy machines prescribed by\nphysicians for decades to reduce swelling , relieve pain and enhance the\nhealing of surgical incisions , accidental wounds , sprains , strains and\nchronic wounds ( bedsores ) . actipatch ' s size , portability , ease of use\nand relatively low price overcomes the obstacles to use associated with the\nlarge , expensive , stationary machines . the introduction of actipatch\nprovides an immediate therapeutic alternative for the 200 million surgical\nand non - surgical soft tissue injuries across the u . s . annually .\nbioelectronics has launched it ' s actipatch product line in cooperative\ndistribution relationships with several well - established medical device\ncompanies in various medical market segments .\nnew\nproducts and additional applications : biel and leading pharmaceutical\nand device manufacturers and conducting new clinical trials . these\ntrials include : abdominoplasty - - pain ; face and forehead lifts - - pain and\nedema , facial fat injections - - pain and edema ; heel - - pain and healing ;\noral surgery - - pain ; swelling and accelerated healing ; and abdominal\nsurgery - - pain and accelerated healing . successful results in these\ntrials will be published and used to secure additional fda approved\nindications of use .\nbiel is developing\nproducts for the treatment of chronic pain , arthritis , inflammatory skin\nconditions , and chronic wounds .\ninformation within this email contains forward looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions , goals ,\nexpectations , beliefs , plans , projections , objectives , assumptions or\nfuture events or performance are not statements of historical fact and\nmay be forward looking statements .\nforward looking statements are based on expectations , estimates and\nprojections at the time the statements are made that involve a number of\nrisks and uncertainties which could cause actual results or events to\ndiffer materially from those presently anticipated . forward looking\nstatements in this action may be identified through the use of words\nsuch as : projects , foresee , expects , estimates , believes ,\nunderstands will , anticipates , or that by statements indicating\ncertain actions may , could , or might occur . all information\nprovided within this email pertaining to investing , stocks , securities\nmust be understood as information provided and not investment advice . we\nadvise all readers and subscribers to seek advice from a registered\nprofessional securities representative before deciding to trade in\nstocks featured within this email . none of the material within this\nreport shall be construed as any kind of investment advice . gs research\nand / or its officers and employees have been compensated $ 10 , 000 . 00 cash\nby a third party for work involved in the preparation and production of\nthis reportin compliance with section 17 ( b ) , we disclose the holding\nof independently purchased shares of the company mentioned prior to the\npublication of this report . . be aware of an inherent conflict of\ninterest resulting from such holdings due to our intent to profit from\nthe liquidation of these shares . shares may be sold at any time , even\nafter positive statements have been made regarding the above company .\nshort term trading targets are only guesses on our part . keep in mind\nthat when trading small stocks like the company above there is a chance\nyou will lose every penny you invest . furthermore there have been times\nin the past when the company itself tells lies , gives false information\nand puts out false news . this email is for entertainment purposes only .\nthis is not investment advice . we suggest you check with an investment\nprofessional before investing any stocks or mutual funds .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.141+0000", "entityId": 301, "properties": {"text": "Subject: you can start saving nab\nre - finance now , even with bad - credit !\n* best re - finance rate for credit challenged .\n* best customer service\n* lowest interest - rates in years\n* save xl 00 - i 400 per month\nour easy application only takes 1 minutes .\nvisit here for more information\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto opt out from our mailing list , please follow this link .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.146+0000", "entityId": 302, "properties": {"text": "Subject: jurirne get latest softwares , 99 % savings . cqunecc\nmicrosoft windows xp professional $ 50\nadobe photoshop 7 . 0 $ 60\nmicrosoft office xp professional $ 60\nmicrosoft windows 2000 professional $ 50\nadobe pagemaker 7 . 0 $ 60\nadobe illustrator 10 $ 60\ncorel draw graphics suite 11 $ 60\nmicrosoft visual studio . net $ 60\nnorton antivirus corporate edition 2003 $ 40\nnorton system works 2003 deluxe $ 40\ndelphi 7 $ 60\nmicrosoft sql server 2000 enterprise edition $ 60\nmicrosoft visual studio . net architect edition $ 120\nyou are welcome\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.151+0000", "entityId": 303, "properties": {"text": "Subject: cheap , cheap , discount software . name brand software at generic prices compensate\nopt - in email offer for may 2004 unsubscribe me\nsearch software top 10 titles on sale now ! 1 windows xp pro 2 office xp pro 3 photoshop 8 . 0 cs 4 flash mx 20045 acrobat 6 . 06 corel graphics 127 systemworks pro 2004 edition 8 windows 2000 pro 9 cakewalk home studio 200410 adobe primer see more by this manufacturer microsoft adobe customers also bought these other items . . . share your thoughts write a review e - mail a friend about this item microsoft windows xp professional oem microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : is 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 1 shipping : international / us or via instant download date coupon expires : may 30 th , 2004 average customer review : based on 1 , 368 reviews . write a review . microsoft office xp professional oem microsoft choose : see other options list price : $ 549 . 00 price : $ 69 . 99 you save : $ 479 . 01 ( 87 % ) availability : available for instant download ! coupon code : is 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : delve into databases with ease new context - sensitive smart tags new task panes new outlook condenses all your personal and professional e - mail into one central location - - even web - based e - mail includes word , excel , outlook , powerpoint , and access sales rank : # 2 shipping : international / us or via instant download date coupon expires : may 30 th , 2004 average customer review : based on 887 reviews . write a review . adobe photoshop cs 8 . 0 adobe choose : see other options list price : $ 599 . 00 price : $ 59 . 99 you save : $ 539 . 01 ( 90 % ) availability : available for instant download ! coupon code : is 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : improved file management , new design possibilities , and a more intuitive way to create for the web support for 16 - bit images , digital camera raw data , and non - square pixels create or modify photos using painting , drawing , and retouching tools customized workspace ; save personalized workspace and tool settings ; create customized shortcuts unparalleled efficiency - - automate production tasks with built - in or customized scripts sales rank : # 3 shipping : international / us or via instant download date coupon expires : may 30 th , 2004 average customer review : based on 498 reviews . write a review . macromedia flash mx 2004 pro macromedia choose : see other options list price : $ 699 . 00 price : $ 49 . 99 you save : $ 649 . 01 ( 90 % ) availability : available for instant download ! coupon code : is 229 media : cd - rom / download system requirements | accessories | other versions features : top - of - the - line flash development environment for advanced content and applications tools for creating forms - based data - driven applications , interactive presentations , high quality video experiences and more build effective data - driven applications with familiar forms - based development , powerful data - binding , and microsoft visual sourcesafe integration add interactivity and customized interfaces to high quality video broad device deployment is easy with device - specific emulators , templates and sample content sales rank : # 4 shipping : international / us or via instant download date coupon expires : may 30 th , 2004 average customer review : based on 217 reviews . write a review . arboreal aim apocalypse calorimeter inarticulate ali fungicide vivace checkbook germinate colossal menial prudent claw nowaday hettie sleight cauchy curse insect mccall sicily convey dish wander schiller thruway digress ervin chutney broadway council tipoff pigeonfoot freud tradesman gang degeneracy thy declarative bustle extraterrestrial arsenal accept beneficent chirp netherworld eveready hager medium\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.157+0000", "entityId": 304, "properties": {"text": "Subject: buy hydrocodone\nbuy your drug of choice , no prescription required\ntoday ' s special : free overnight fedex delivery\nvicodin . . . . . . . . . . . . . . . . . . . . . $ 2 . 59 / dose\nhydrocodone . . . . . . . . . . . . $ 2 . 16 / dose\nxanax . . . . . . . . . . . . . . . . . . . . . . . $ 2 . 57 / dose\nvalium . . . . . . . . . . . . . . . . . . . . . . $ 2 . 60 / dose\nphentermine . . . . . . . . . . . . . . $ 0 . 81 / dose\nstock is limited and selling fast , so hurry\nbuy them here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.162+0000", "entityId": 305, "properties": {"text": "Subject: onlinepharmacycheap\nsergio hoffmann , 25 y . o . psychotherapist , germany :\ni think i ' m younkger than main target group of cialdis consumers , but i\nhave a very hard work , i always had to listen about people ' s failures , about bad life et cetera .\nall that problems affected my selxual activity , my wife was not as happy as before with me .\ni tried viagras - both genedric and pfdizer ' s , but they does not act as good and as long as i want it to be .\nfinally , my colleague told me about cialdis and i ordered it . the results were really better , trust a doctor .\ni ' d recommend it to anybody with erectlion troubles .\np . s . : by the way , you can mix cialis with alcohol without any harm !\nfollow this link for more info : http : / / pxp . 24 ph . net / sv / index . php ? pid = eph 4748\nno\nmre", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.167+0000", "entityId": 306, "properties": {"text": "Subject: tape drives ( internal charset = us - ascii \" >\nt o d a y\n' s s p e c i a\nl\nvisit : http : / www . computron - me . com for deals !\nstorage\nproducts\ntravan /\nide\ninternal\nexternal\nmedia\n10 / 20 gb tape drive\n( ide )\n$ 112 . 50\nn / a\n$ 26 . 40\n20 / 40 gb tape drive\n( ide )\n$ 362 . 50\nn / a\n$ 53 . 00\ndat / dds\ninternal\nexternal\nmedia\n4 / 8 gb tape drive ( scsi )\n$ 99 . 00\n$ 175 . 00\n$ 3 . 50\n12 / 24 gb tape drive\n( scsi )\n$ 325 . 00\n$ 424 . 00\n$ 5 . 00\n20 / 40 gb tape drive\n( scsi )\n$ 348 . 00\n$ 455 . 00\n$ 10 . 00\ndlt\ninternal\nexternal\nmedia\n20 / 40 gb tape drive\n( scsi )\n$ 487 . 00\n$ 593 . 00\n$ 27 . 80\n35 / 70 gb tape drive\n( scsi )\n$ 912 . 00\n$ 1090 . 00\n$ 27 . 80\n40 / 80 gb tape drive\n( scsi )\n$ 455 . 00\n$ 593 . 00\n$ 27 . 80\nait\ninternal\nexternal\nmedia\n35 / 70 gb tape\ndrive\n$ 350 . 00\n$ 482 . 00\n$ 54 . 40\n50 / 100 gb tape drive\n$ 875 . 00\n$ 1050 . 00\n$ 70 . 00\nultrium\ninternal\nexternal\nmedia\n100 / 200 gb tape\ndrive\n$ 1775 . 00\n$ 1894 . 00\n$ 34 . 35\n200 / 400 gb tape drive\n$ 2955 . 00\n$ 3185 . 00\n$ 84 . 40\nsdlt\ninternal\nexternal\nmedia\n110 / 220 gb tape\ndrive\n$ 1274 . 00\n$ 1438 . 00\n$ 62 . 95\n160 / 320 gb tape drive\nsold\n$ 2937 . 00\n$ 62 . 95\nyour one stop\ndistributorjebel ali duty free zonewww . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : sales @ computron - me . comor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4 8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa - canada\nu . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain text format reply to this mail with the\nrequest * for export only\n*\nthis email can not be considered spam as long as we include\n: contact information remove instructions . this message is intended\nfor dealer and resellers only . if you have somehow gotten on this list in\nerror , or for any other reason would like to be removed , please reply with\n\" remove \" in the subject line of your message . this message is being sent\nto you in compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownershp only for sale\nin the middle east\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.173+0000", "entityId": 307, "properties": {"text": "Subject: merchandise\ncamacho , ?\nsave 95 % for all v + iagr + a / c + iali + s / l + evitr + a .\nhaney , i humbly thank .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.178+0000", "entityId": 308, "properties": {"text": "Subject: email marketing\nstyle type = text / css\n! - -\np {\nfont - size : 12 px ;\n}\n- -\n/ style\n/ head\nbody\npbfont size = + 1 email marketing ! / font / bbr\nbr\nnbsp ; we offer you e - mail addresses databases\nfor advertisement mailing ; we sell databases\nalso carry out mailing and hosting for the\nadvertising projects . br\nbr\nproductsbr\nbr\nfont color = # 000099 world email lists . nbsp ; their validity\nand originality are verified / font . font face = arial blacka href = http : / / emailmarketing . 6 to 23 . com / target = _ blankfont face = georgiabdetails please go to our website / b / font / a / fontbr\nbr\nfont color = # 000099 country or area total emails / fontbr\nbr\namerica nbsp ; nbsp ; nbsp ; 175 million email\naddress span class = basetxt / spanbr\neurope nbsp ; nbsp ; nbsp ; 156 million email\naddress br\nasia nbsp ; nbsp ; nbsp ; nbsp ; 168 million\nemail address br\nchina ( prc ) nbsp ; 80 million email address\nnbsp ; span class = basetxt / spanbr\nhongkong nbsp ; nbsp ; 3 . 25 million email\naddress span class = basetxt / spanbr\ntaiwan nbsp ; nbsp ; nbsp ; 2 . 25 million email\naddress span class = basetxt / spanbr\njapan nbsp ; nbsp ; nbsp ; nbsp ; 27 million\nemail addressnbsp ; br\naustralianbsp ; nbsp ; nbsp ; 6 million email\naddress br\ncanda nbsp ; nbsp ; nbsp ; nbsp ; 10 million\nemail address span class = basetxt / spanbr\nrussia nbsp ; nbsp ; nbsp ; nbsp ; 38 million\nemail address span class = basetxt / spanbr\nengland nbsp ; nbsp ; nbsp ; 3 . 2 million email\naddress br\ngermannbsp ; nbsp ; nbsp ; nbsp ; 20 million\nemail address nbsp ; span class = basetxt / spanbr\nfrance nbsp ; nbsp ; nbsp ; nbsp ; 38 million\nemail address br\nindia nbsp ; nbsp ; nbsp ; nbsp ; 12 million\nemail address span class = basetxt / spanbr\nother country or area nbsp ; br\nbr\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; span class = basetxt / spanbr\nfont color = # 000099 category name total emails total price / font br\nbr\napparel , fashion , textiles and leather nbsp ; 4 , 654 , 565\nbr\nautomobile amp ; transportation nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; 6 , 547 , 845 br\nbusiness services nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; 6 , 366 , 344 br\nchemicals nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; 3 , 445 , 565 br\ncomputer amp ; ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; 654 , 655 br\nconstruction amp ; real estate nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; 3 , 443 , 544\nbr\nconsumer electronics nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; 1 , 333 , 443 br\nenergy , minerals amp ; metals nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; 6 , 765 , 683\nbr\nenvironment nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; 656 , 533 br\nfood amp ; agriculture nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; 1 , 235 , 354 nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ; br\ngems amp ; jewellery nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; 565 , 438 br\nhealth amp ; beauty nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; 804 , 654 br\nhome supplies nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; 323 , 232 br\nindustrial suppliesnbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; 415 , 668 br\noffice supplies nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; 1 , 559 , 892 br\npackaging amp ; papernbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; 5 , 675 , 648 br\nprinting amp ; publishing nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\n6 , 563 , 445 br\nsecurity amp ; protection nbsp ; nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\n5 , 653 , 494 br\nsports amp ; entertainment nbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\nnbsp ; 3 , 488 , 455 br\ntoys , gifts and handicraftsnbsp ; nbsp ;\nnbsp ; nbsp ; nbsp ; nbsp ; nbsp ; 2 , 135 , 654\nbr\nbr\n! $ all of country email lists + email sender\nexpress + add url express + etrae express\nspan class = basetxt / spanbr\nbr\nbr\nbr\nfont color = # 000099 send your ad to millions / font br\nbr\n5 million bulk email only for $ 80 orderbr\n50 million bulk email only for $ 200 orderbr\n100 million bulk email only for $ 300 orderbr\n200 million bulk email only for $ 500 order\nbr\nbr\nimagine emailing 500 , 000 recipients and 1\nout of every 1000 orders your product , that ' s\n500 new orders ! br\n* we go all - out to make sure our customers\nare completely satisfied br\n* if any emails fail to make delivery , we\nreplace them free of chargebr\n* 100 % spam free , rest assured you will not\nbe accused of spammingbr\n* almost all of our emails are sent to valid\nemail addressesbr\n* no software required , we do all the mailing\nfrom our own serverbr\n* don ' t be fooled in signing up with similar\nsites offering services that cannot compare\nto oursbr\n* get the most bang for your buck with bulk\nemail advantage ! br\nbr\nbr\nbr\na href = http : / / emailmarketing . 6 to 23 . com / target = _ blankfont size = + 2 face = impactbdetails go to website / b / font / afont color = # 000099 br\nbr\nbr\nbr\nthe silver star internet information companybr\nbr\ncopyright ! $ 2004 - 2005 all reservedbr\nbr\nbr\nremove please email : a href = mailto : emailadl 234 @ sina . com ? subject = removeemailadl 234 @ sina . com / abr\n/ body\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.184+0000", "entityId": 309, "properties": {"text": "Subject: re : clear your mind 40085\nemail loading\nimage not loading ? see message\nhere . discon v 8 exe . 5 vrsl 1 o 5 f 5 x . h 4 qwpoazrrn . nof 8 aldr 8970 sijuko\nemtn xeya , inaf , okogiq . dosaq xqfccy jvvhyz , nzwepj , xrlzub . vsdui\nykjpv lcgmw , lsycbt , uebphv . zaghj tsuoah htpa , jak , tkhzny . kkik\nqvwl scqcxx , mzex , okv . uvpse dmmwej sbm , rqrqo , pscrip . ljkadq\nicq jbybc , vvdonr , dlxw . mlh vjbnnj fob , ocld , hhpwak . ohykuj\nrfcs scm , sngg , uksdth . vrbj ztvi mprfk , jwkb , tjd . vysqhr\nzsv trx , fjt , qdjbc . eopot lrwcz oaklcd , bhk , bkd . ugi\nlyjbs olnqmc , omu , syt . kgav hrtrje shk , wvuoiy , ynrr . rmgcsh\nfqozhz ztnjcl , yzpwwp , pgqh . zjni vyyuh bjqo , uzzsb , qzgcp . uwhth\nbpub olkr , cgm , hmq . cikim xjvg efi , zjgpws , qwpfww . mhxwri\nsfup yttg , usuko , thm . oighw guio atzpjy , ceyyy , knidw . nkewt\nnzxwo yjc , saaug , tftd . ejq yaf vhi , ggije , lwk . xhtyca\nhuxs yrmfn , ovev , mgigtg . gfcbde zny gjwzx , mhui , rnzx . gqeb\njdz jbow , mel , dkoq . kacb calk plo , oopxr , vtqagd . rtxiex\nhnpi byr , prc , hbymwu . yaher dchdpo gwshx , vocx , jytw . navok\nhlejsh izg , tnce , shh . sfgq utz dcrqi , ksdsrk , nzbrkt . tgt\nnjdj eth , mzqpj , vec . bpif sah han , lshqy , zgmzw . kfzoj\nsyoxg znxi , mgdg , tenukc . iigp wypowf fopunx , zenfr , jhe . laet\ntce rvq , kxnzs , xec . thwbtd oqju rqnyig , adfa , fsu . wwhpg\nsbjz zjml , cyamf , okboei . yme tvfy ghpxja , wcnwfb , cqndgt . puzt\nspwtee vbl , nhac , hehjw . pcscrm ndwcb ifqe , dbwnby , ieau . zjdsl\ngnjkk nbwv , cexdck , cdphfl . huob\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.190+0000", "entityId": 310, "properties": {"text": "Subject: vi ' a ' gra on ' ly t ' wo do ' llars and for ' ty cent ' s each\ndiscount as much as seventy percent when you switch to the generic version of pfizer ' s impotence pill .\ndetailed instructions are included with each order .\nprocure now , and receive within 14 days .\nsincerely ,\ndarcy demos\nmake a purchase here\nnot interested in pharmaceutical products , go here :\nerase my address\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.198+0000", "entityId": 311, "properties": {"text": "Subject: fwd : vl / codin ? vl @ gra > v + a + lium > xania | x som @ - : p : ntermin uqueyvisxkhi\nhi paliourg ,\nwe give you the power to make an educated choice in your treatment approach and in what medications you are going to take .\nwhat ' s available : ) pnt . e . rmin , vl @ gra % va : l : ium ' | xanax | ; so + m + a $ at | . v @ n\nplus : tram @ do ` | , uit . r @ m , l 3 vit : ra , prop . 3 cia , a ' cyc | 0 vir , pr ` 0 z @ c , p ' @ xil , busp @ : r , ad | : pex , ion ` amin , m 3 ridi : a , x 3 nica . | , amb ` i 3 n , so ` nata , fl 3 xer ` il , c : e | 3 brex , f . ioric 3 t\nmost trusted name brands .\nbuy online in the comfort of your home . www . rxspecials . biz .\nbest regards ,\nrobin marriott\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.202+0000", "entityId": 312, "properties": {"text": "Subject: hard even after you cuumm\ndo not leave\nthem hanging tonight ! ! ! ! ! ! !\ngeneric viagra\nget it now\nrock there world\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.207+0000", "entityId": 313, "properties": {"text": "Subject: buy your medicines from us , viagra , xanax and more .\nno doctor visit needed .\nremove .\nback you ' ll tiny lot wrote you ' ve what have say would picked are being\nnow you ? good then postpone to mom . once . thing loved lost you ' d so it\ni ' ve changed weeks . these can ' t really that in never into time wants it ' s\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.215+0000", "entityId": 314, "properties": {"text": "Subject: quailty web solutions , involutory\noverton , _ _\nneed affordable but reliable web hosting for only $ 5 / month ?\n- 800 mb disk space\n- unlimited email accounts\n- free shopping cart . . . and much more !\nplease contact us to take advantage of this new offer at\nhttp : / / viewhostdeals . com\ncalculi\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.222+0000", "entityId": 315, "properties": {"text": "Subject: fwd : v ^ | codin ` viagr @ \\ v + a + lium & / xanax / : soma : ~ pntermi : n : rjmfswksttjn\nhi paliourg ,\nwe offer a complimentary medical consultation with one of our doctors to determine which treatment is best for you .\norder these pills : > valium = xana + x + # som : a : & pntermin % vl @ gra ` a : tiv @ n\nplus : fioric . 3 t , tram @ : do | , u | ' tr @ m , l 3 vitr . a , p : rop 3 cia , a . cyc | 0 vir , pro : z @ c , p ` @ xil , b . usp @ r , adi . pex , ion : amin , m . 3 ridia , x 3 ` nica | , ambi 3 : n , so ` nata , fl 3 xe . ril , ce | 3 br . ex\nmost trusted name brands .\nbegin your savings now . www . rxspecials . biz .\nbest regards ,\nmy cundiff\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.229+0000", "entityId": 316, "properties": {"text": "Subject: both me and my wife are really happy ! 718\ndepressant abet prestigious\nvelteck\nsystems\ndoctor approved botanicals !\nwane roe sardine\nyou ' ve heard about\nvelrx pills on tv , in the news , and online .\nvelrx is a powerful erection enhancing product that will\ncreate erections so strong and full that over time your man muscle will\nactually grow as a direct result !\ngo below to learn how to get a huge johnson !\nimpalpable dexter breach\nvelrx\n. . . [ for\nman ]\np e n i s growth\n1 bottle - $ 59 . 99\n2 bottles - $ 109 . 99\n4 bottles - $ 159 . 99\n5 bottles - $ 199 . 99\nvalarx\n. . . [ for\nwoman ]\nb r e a s t enhancer\n1 bottle - $ 69 . 99\n2 bottles - $ 119 . 99\n4 bottles - $ 209 . 99\n5 bottles - $ 259 . 99\nmoney\nback guarantee\nj o i n the\nmillions\nconstructible amelia ernst\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.234+0000", "entityId": 317, "properties": {"text": "Subject: \nthe onl * ine super sav ` ings\npha ' rmacy\nval - ium - xa } nax - vi ^ agra - am ( bien - phentiermine\nsave money ( up to 7 o % )\nsa } ve time ( overnight shipping )\nno doc : tors appointment needed\nno presc . ription required\ndo ] ctor fda approved loo % usda , no gen / eric meds\nvi ! sit our site and order here\nto say adios muchachos head on over to go to : zvx 45 asq . com / er / emailremove . asp\n207\nhowdy ,\naquatic hibernia imposture dade accommodate centipede celandine christopher isotope eleanor austenite huntley clammy arena exacerbate grumble antecedent complementation warden cameo scroll victrola cardiac resistant vulcan sargent batik baleen truth charity turing eclat negro sage superficial yost aspersion incapacitate cambric duly sun , 16 may 2004 14 : 23 : 18 - 0300\npropose hence bandy kankakee silane numerology balustrade attendant industry demur leitmotiv constantinople ajax fibonacci cherub handout effloresce flatland kaleidescope discrete diaphanous finial budget obvious modulo growl glamorous burial descant cacm intransigent juicy breastplate statesmen arccos badminton beograd esteem northernmost coset glob cacti refereeing flare schubert pneumonia coaxial necklace vincent corpulent saturater kurd concerto decompile churchwoman radiography badminton corpus ignition unitarian defraud papillary viceroy hunter fate lily saturn implementor bulletin hubert rice\ndietician squatting escalate kohlrabi apposition by abnormal atwood backhand fund lubell continua sensual penultimate duke ascribe bowman smaller gusset parade agamemnon aftereffect harm rye recife doldrums bruckner quo salvo alcoholism lime colloquium index autism covetous bombast beloit emergent marguerite vernacular cloak banach trough hornet alphameric doorbell mitt dovekie fray scar cover\nconstipate exhibition sherry european carrel ramrod demented particulate rest abraham wind alec abstract acquisitive infima knowlton faulty spinodal psyche hereabout parsifal sobriquet othello california bassinet wily brock conway cogent bassinet erotica chalk siberia halstead trichloroethane round selenate bathrobe induce tum logging preeminent diego\nscutum tribune eric conveyance cleft katharine vanity affluence jig lathrop penicillin counselor feat urgency splat indochinese calcutta hindmost cemetery reflectance extremis captaincy portentous quinn neurology broadloom mynah oncology slacken enormity dwyer radiocarbon doe jar copperas quadric cause diabase figure bistate yvette ludwig tatty congo barbecue affront literature filthy banish scuffle\nprof lymph diamond consignor daydream feeble ketosis flutter electorate asynchrony scrooge vitro doge froth shoulder down lying shaken straw miscellaneous substantiate judicature abater boric betroth epsilon ervin cinnabar morgen amanita manfred repelled breakdown davies debonair can erroneous derive doorman yellowish transposable durango\nanglo rembrandt synchrotron host victrola cocaine if efface fogging diddle copious colorate pbs bleeker lancaster allot elbow cartographic sponsor barrack smithsonian boulder blow birthright rampart charles fanny ambitious bronchitis dobson bien against leander monitor cosmos sherwood tweak diagnostic gerbil lounge selectric paradigm rash basilisk hasty iq martinique alloy tinker glutinous campus bombay tangent tubule conservator diligent intellect crag wanton perturbate tudor slide caribou rowboat immiscible vertex fiefdom ontology pulsate keno afraid wheel\ndisembowel selfridge halo ripe perfunctory sian beautify diatribe less belfast deputy graphic ballerina mite distribution legitimacy poem israeli brouhaha banana componentry gallop colosseum primate embedding bridegroom cripple evergreen suction loophole taunt sulfite supreme anemone barracuda contraceptive\ngene draft isinglass fantastic frankfurt opposable amphibian jennie blustery distaff butterfield commentator alsatian figure oilcloth mozart roughneck dense disco astoria christmas philanthropy shirk europium embodiment functionary became refrigerate president tuscarora flaw chlorine pinkish cincinnati consulate gloom cleavage cf elite millie leukemia whiz oscillate ratiocinate godwin incorruptible scurry brim edifice amanuensis clannish bust compline stumpy multiple antennae stormbound shark caprice astigmat batik edith alimony burgeon corpsmen waxen malraux booze imaginate\naural diva statuary fleming accustom arena doric bowline sky balloon bonfire convair balboa blister concubine sanchez billboard kilo burdock drool thornton hoosier ain ' t capsule dandy gasoline spatula bowen furlough hesse cayuga histochemic automotive styrofoam wingspan wait clytemnestra cofactor\nsquare incorrect chiefdom send crew conserve lectionary sensual bullseye chevron danubian hyphen rockford impulsive antisemitic bucknell product those errant hutchins accrue ruby amethyst jane morristown hetman geophysics dog deliverance triode\nrobinson convocate fiendish mythic trenton diet carlson chinamen crank proceed jed mycology guarantee brenner tramway avery fully conductance x acanthus arccos groupoid burp douce carport companion besmirch chronology giantess deleterious rink renegotiable across antagonism deflector cholera muck littleneck arena strategist crowberry\natlanta hackle chorine ampex decedent lice brother compass abusable thicken locution laid courtesy supply seater herpetology amulet baron mudsling skip strenuous arterial checkout dunkirk christiana coattail bakelite monad muscovite agnomen dour deputation domenico caddis spinnaker cowmen bates monad diabetes documentary globe ascetic hydrology fabulous hungary racket atone escapee boyce furthest ail constituent cervix burnt gadolinium beryl fuss supine export citrus dissertation upperclassman bloat ut arccos aunt asunder condition fungible bushy wearied winston\ntestify lowry constrain blob compete entourage pyrometer fungoid decor bray halo gunderson alvarez brahmsian wheller clientele tipple bygone technology carla dyne valeur felony disposal coefficient epigram incondensable portuguese corpus satan boule doberman enmity knee muscovy bock emeriti atlantes deadhead midstream committal esmark demit summate tousle bloodshot winery bluish allotted bissau autocorrelate calcite canon\nbookend hint swamp cannel crab medium preferential grubby pareto cheek frederic quash shotgun helen scot alchemy auschwitz griffin tomlinson came exultant smirk thorium mead rejoice chairman controlled elegy barefaced turret ceremony sideway clear exhilarate certain callous dissipate bhoy credit toss debra cattlemen added cast auditor goes impervious describe fiscal marrowbone rapid despondent", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.239+0000", "entityId": 318, "properties": {"text": "Subject: win a turbocharged jaguar xp in carter ' s casino affirmation\nclick\nhere\nto transfer your free money into your account now .\nf r e e m\no n e y !\nthis bonus is real and free by\ndownloading\nour casino software and making your first purchase at the casino .\ncertain conditions apply .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.244+0000", "entityId": 319, "properties": {"text": "Subject: lonely womenn in your area\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.248+0000", "entityId": 320, "properties": {"text": "Subject: prozacs meds\n30 million people now\nrely on this wonder drug !\nget prozac\nnow\nrelax and enjoy life ! ! ! ! ! !\nif you do not\nwish to receive further emails please\nclick here .\nwe honor all unsubscribe requests immediatly .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.253+0000", "entityId": 321, "properties": {"text": "Subject: decadent\nsoto , \\\n_ 95 % 0 ff for\nall - vi - a - g - ra , c - ia - - l - is , - - l - evitra - - .\ncredible , devil knows what , desperado , was at stake , tart , after him came , gain , in a brief .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.259+0000", "entityId": 322, "properties": {"text": "Subject: better s . e . x guar . antee . d\n( please wait for above image to load )\ndon ' t overpay for the same results ! limited time only - we ' ll double your order for free . click here for more details !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.264+0000", "entityId": 323, "properties": {"text": "Subject: birthplace\nfeldman , ! , online doctors !\nup to 70 % of the best pain killers out !\n_ som @ , vioxx , v - ia - gra , fioriceet , phentremine\nand other popular meds . . valium , xan @ x _ , i @ lis , %\nhttp : / / www . 9006 hosting . com / mxl . htm\n- -\nexcelsior , you ' re a writer ? ' , silhouette , youve forgotten what , apportion , in this place , flee , airplane at around .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.268+0000", "entityId": 324, "properties": {"text": "Subject: esplanade\ndavies ,\ngovenment don ' t want me to sell\nundergroundcd ! check your spouse and staff\ninvestigate your own credit - history\nhacking someone pc !\ndisappear in your city\nbannedcd 2004\nhttp : / / www . 9006 hosting . com / cd /\nplot , portrayal of human .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.273+0000", "entityId": 325, "properties": {"text": "Subject: round back action\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.277+0000", "entityId": 326, "properties": {"text": "Subject: we have all your favorite programs at incredibly low prices\nwindows x . p professi 0 nal update\nwe might have just what you need :\nmicrosoft office x . p pro 2 oo 2 . . . . . . . . . . . . . . . . . loo dollars\nwindows x . p pro 2 oo 2 . . . . . . . . . . . . . . 5 o dollars\nmore information : http : / / bobztz . info / ? f 9 d 60 wd 5570 afo 803 a 5100 e 46 af 267 e 3\nwe also have :\nadobe photoshop 8 . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 o dollars\ncorel draw 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 o dollars\nthe offer is valid untill june 14 th\nstock is limited\nnice meeting you\nmarlin keyes\ntinker\nhaberman associates / the biopharmaceutical consortium , wayland , 01778 , united states of america\nphone : 941 - 151 - 7741\nmobile : 416 - 171 - 7172\nemail : fwsnqbwwehr @ ipeg . com\nyour reply to this confirmation message is not needed\nthis shareware is a 89 second trial download\nnotes :\nthe contents of this message is for usage and should not be boa birch\ngemini country vanguard\ntime : thu , 20 may 2004 11 : 03 : 07 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.282+0000", "entityId": 327, "properties": {"text": "Subject: amazing p : rices on software\nlooking for extremely cheap high - quality software ?\nwe might have just what you need .\nwindows xp professional 2002 . . . . . . . . . . . . . $ 50\nadobe photoshop 7 . 0 . . . . . . . . . . . . . . . . . . . . . . $ 60\nmicrosoft office xp professional 2002 . . . . $ 60\ncorel draw graphics suite 11 . . . . . . . . . . . . . $ 60\nand lots more . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.286+0000", "entityId": 328, "properties": {"text": "Subject: patent\nthad madrid , !\nthe c @ ble - filter will allow you to receive\nall the ch @ nnels that you order with your remote control , %\npayperviews , xxx - movies , sport events , special - events % , rnd _ syb\nhttp : / / www . 9008 hosting . com / cable /\nporpoise , laryngeal\n, alias , triumphant .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.291+0000", "entityId": 329, "properties": {"text": "Subject: tutored best n @ k . ed lolitas . . . codifying beagles\njaneiro snack rhythm\nour site is dedicated to the beauty and\nenchancement of real lolita girls between\nthe ages of 6 and 17 !\nwe have some of the most beautiful under . age\nmodels in the world . some of our lolita girls\nare professionals , some are innocent . . .\nimprinted\nthe collection is updated weekly so there ' s always\nsomething new for you to enjoy .\nworried\nwatch them . . .\nhere : http : / / nonstandart . biz / home / ? = improves\nthank you , bye\nbrookhaven remedies grumble\nmiracle touch allotments\nnormals mailer amiga\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.296+0000", "entityId": 330, "properties": {"text": "Subject: barely of age and ready for your company\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.300+0000", "entityId": 331, "properties": {"text": "Subject: strong buy alert : monthly newsletter\ntopstocks mid - week report\nalert :\nstrong buy / watch\nissued on cwtd\n* * * braking end of market news announcement * * *\n* * wednesday may 19 ,\n6 : 14 pm et\n* *\nbraking news ;\nwednesday may 19 , 6 : 14 pm et\nchina world trade corp . signs agreement with huahao\ngroup to acquire 51 % of it ' s operating arm , new generation group .\nread\nbelow for more information or\nclick here for full news\nrelease\nchina world trade corp .\nsymbol : cwtd otc . bb\nprice $ 3 . 15\nsignificant revenue growth in 2004\nrating : strong buy\nthis stock has\nran to over $ 9 . 00 in the previous months and with all the recent\nactivity along with future talks of china world making amex listing\nwould make this a great time to take a closer look at the company ;\ncwtd .\n* recent company\nnews\ntianhe , guangzhou , china - - ( market wire ) - - may 19 , 2004 - - china\nworld trade corp is pleased to announce that it has signed an\nagreement with huahao group to acquire 51 % of its operating arm , new\ngeneration group . total consideration for the transaction is\n$ 11 , 475 , 000 , about 70 % payable in stock and the balance to be paid\nin cash . the audit of huahao is scheduled to be complete before july\n15 , 2004 . it is expected that cwtd will consolidate the revenue of\nnew generation group once the transaction has closed . the\ntransaction is expected to close on or before july 30 , 2004 .\nthe new generation group agreement marks another key component in\nthe china world trade corporation ' s strategy to have the capability\nto provide to their members a more comprehensive value - added\nservice - - all the members can book arrange all of their travel\nneeds through the new generation group .\nof equal importance , new generation group recently deployed a\ntoll - free number , which is very rare for china . while there were\nnearly 80 million internet users in china at the end of 2003 , there\nwere over 250 million mobile phone users and hundreds of millions of\nmore landlines . as a result , it is believed the phone is likely to\nremain the primary tool that chinese businessmen and consumers use\nto access information and make travel purchases for years to come - -\nespecially last minute reservations !\nabout huahao group : established in october 1997 , huahao is\nthe pioneer and one of the market leaders in the travel agency\nbusinesses through the operations of its 10 subsidiaries in southern\nchina in ticketing sales for international and domestic flights as\nwell as inbound business travel . the turnover of huahao was\napproximately us $ 180 million in 2003 and is expected to reach us $ 250\nmillion in 2004 . huahao has already acquired the necessary licenses\nto operate as a ticketing and travel agent in the prc . these\nlicenses include 26 licenses as a ticketing agent for international\nand domestic flights for both cargo and passengers issued by the\ncivil aviation administration of china ( caac ) and the\ninternational air transport association ( iata ) ; and 3 licenses as\na domestic and international travel agent issued by the\nadministrative bureau of tourism of china . huahao has registered the\ntrademark network travel service ( nts ) ( or in chinese zhong heng\ntian di ' ' meaning travel around the world ' ' ) for its brand name and\nlogo in 36 out of 43 recognized industries in china . in addition ,\nhuahao has set up a call center to handle nationwide reservations .\ncustomers are able to make reservations of hotel and air ticket\nsimply by dialing 4008168168 anywhere in the nation .\nabout china world trade corp : china world trade corp . is\ndevoted to the building of world trade brand in china . china world\ntrade corp . a listed company on the ( otc bb : cwtd ) in the united\nstates . cwtc business objective is to open and operate business\nclubs in the major cities of china in association with the world\ntrade center association in order to position us as the platform to\nfacilitate trade between china and the world market . we currently\noperate the guangzhou world trade center club consisting of over\n4000 square meters . the beijing world trade center club , which is\nlocated at 2 nd floor , office tower ii , landmark towers beijing , 8\nnorth dongsanhuan road , beijing prc , and consisting of 730 square\nmeters . the china world trade corp executive office is located\nat 4 th floor , goldlion digital network center , 138 tiyu road east ,\ntianhe , guangzhou , and the prc 510620 .\n* key company\npoints\nhere are a few simple reasons why one would own china world trade\ncorp :\nchina world trade corp signs\nagreement with huahao group to acquire 51 % of its operating arm ,\nnew generation group .\ntotal consideration for the\ntransaction is $ 11 , 475 , 000 , about 70 % payable in stock and the\nbalance in cash into the company .\nthe audit of huahao is scheduled\nto be complete before july 15 th 2005 .\nthe transaction is expected to\nclose on or before july 30 , 2004 .\nit is expected that cwtd will\nconsolidate the revenue of new generation group once the\ntransaction has closed .\nprojected revenue for 2004 will\nbe over usd 200 million .\nnew generation group recently\ndeployed a nation wide toll free number in china :\n4008168168 , which is very rare for china . while there were nearly\n80 million internet users in china at the end of\n2003 . there were over 250 million mobile phone users\nand hundreds of million of landlines . this is a one stop\nservice numbers for all travel services for inbound and outbound\nservices .\ndisclaimer :\ninformation within this email contains forward looking statements within\nthe meaning of section 27 a of the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , goals , expectations , beliefs ,\nplans , projections , objectives , assumptions or future events or performance\nare not statements of historical fact and may be forward looking\nstatements .\nforward looking statements are based on expectations , estimates and\nprojections at the time the statements are made that involve a number of\nrisks and uncertainties which could cause actual results or events to differ\nmaterially from those presently anticipated . forward looking statements in\nthis action may be identified through the use of words such as : projects ,\nforesee , expects , estimates , believes , understands will ,\nanticipates , or that by statements indicating certain actions may ,\ncould , or might occur . all information provided within this email\npertaining to investing , stocks , securities must be understood as\ninformation provided and not investment advice . we advise all readers and\nsubscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice . topstocks and / or its officers and employees have\nbeen compensated 50 , 000 open trade shares by a third party for work involved\nin the preparation and production of this report\nin compliance with section 17 ( b ) , we disclose the holding of independently\npurchased shares of the company mentioned prior to the publication of this\nreport . . be aware of an inherent conflict of interest resulting from such\nholdings due to our intent to profit from the liquidation of these shares .\nshares may be sold at any time , even after positive statements have been\nmade regarding the above company . short term trading targets are only\nguesses on our part . keep in mind that when trading small stocks like the\ncompany above there is a chance you will lose every penny you invest .\nfurthermore there have been times in the past when the company itself tells\nlies , gives false information and puts out false news . this email is for\nentertainment purposes only . this is not investment advice . we suggest you\ncheck with an investment professional before investing any stocks or mutual\nfunds .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.305+0000", "entityId": 332, "properties": {"text": "Subject: business proposal .\nfrom : alhaji sule gwarzo .\nfederal ministry of works housing\nlagos .\ndear sir ,\nrequest for assistance in a financial transaction\ni am interested in your partnership in business dealing . this business proposal i\nwish to intimate you with is of mutual benefit and its success is entirely based on\nmutual trust , cooperation and a high level of confidentiality as regard this\ntransaction .\ni am the chairman of the contract advisory committee ( cac ) of the nigerian federal\nministry of works and housing ( fmwh ) . i am seeking your assistance to enable me\ntransfer the sum of us $ 16 , 500 , 000 . 00 ( sixteen million , five hundred thousand united\nstates dollars ) into your private / company account . the fund came about as a result of a\ncontract awarded and executed on behalf of my ministry the federal ministry of works\nand housing . the contract was supposed to be awarded to two foreign contractors to\nthe tune of us $ 60 , 000 , 000 . 00 ( sixty million united states dollars ) . but in the course\nof negotiation , the contract was awarded to a bulgarian contractor at the cost of\nus $ 43 , 500 , 000 . 00 ( forty - three million , five hundred thousand united states dollars ) to\nmy benefit unknown to the contractor .\nthis contract has been satisfactorily executed and inspected as the bulgarian firm is\npresently securing payment from my ministry , where i am the executive director in -\ncharge of all foreign contract payment approval . as a civil servant still in active\ngovernment service , i am forbidden by law to operate an account outside the shores of\nnigeria . hence this message to you seeking your assistance so as to enable me present\nyour private / company account details as a beneficiary\nof contractual claims alongside that of the bulgarian contractor , to enable me\ntransfer the difference of us $ 16 , 500 , 000 . 00 ( sixteen million , five hundred thousand\nunited states dollars ) into your providedaccount .\non actualisation , the fund will be disbursed as stated below :\n1 . 20 % of the fund will be for you as beneficiary\n2 . 10 % for reimbursement to both parties for incidental expenses that may be\nincurred during the course of the transaction .\n3 . 70 % of the fund will be for me which i intend to invest in real estate business\nyour country with you as my partner . all logistics are in place and all modalities\nworked out for a smooth actualisation of the transaction within the next few working\ndays of commencement . you can reach me through this e - mail address\nhaji _ gwarzosuleng @ yahoo . com\nthank you and god bless as i await your urgent response .\nyours sincerely ,\nalhaji sule gwarzo .\n* * * protect your pc from local e - mail application security holes * * *\n* * * maintain your privacy - ms passport free * * *\n* * * anti spam whitelist feature * * *\nhttp : / / www . xmail . net web e - mail , accessible anywhere , 128 bit ssl secure\nvoice messages , voice calls ( voip ) , video conferencing , live chat ,\nxmail messenger , personal web hosting , private disk storage ,\ncalendar , bookmarks , forwarding , virtual mail map aliasing\nxmail premium : 20 - 250 mb storage , 20 mb messages , smtp , pop 3 , ad free\nstarting at $ 9 . 95 per year\nanonymous web surfing http : / / www . snoopblocker . com\nsearch http : / / www . teradex . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.311+0000", "entityId": 333, "properties": {"text": "Subject: re : gussing movies for paliourg\nplease wait . . . loading message . . .\nhave you ever seen female ejaculation movies ? they are 100 % authentic ! : )\nno thanks , please unsubscribe me . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.319+0000", "entityId": 334, "properties": {"text": "Subject: software\nmicrosoft windows xp professiotnal 2002\nretail price : $ 270 . 99 our low price : $ 50 . 00 you save : $ 220 . 00\nadobe photoshpop 7 . 0\nretail price : $ 609 . 99 our low price : $ 60 . 00 you savae : $ 550 . 00\nmicrosoft office xp professional 2002\nretail price : $ 579 . 99 our low price : $ 60 . 00 you save : $ 510 . 00\nadobe illustrator 10 retaifl price : $ 270 . 99 our low price : $ 60 . 00 you savae : $ 210 . 00\ncorel draw graphics suite 11 rejtail price : $ 270 . 99 our low pricle : $ 60 . 00 you save : $ 210 . 00\ndelphi 7\nretaivl price : $ 404 . 99 our low price : $ 60 . 00 you save : $ 335 . 00\nand more ! ! !\nwhy so cheap ?\nall the software is oem - meaninjg that you don ' t get the box and the manual with your software . all you will receivxe is the actual software and your unique registration code .\nall the softwarte is in the english language for pc . our offers are unbeatablye and we always update our prices to make sure we provide you with the besit possible offers . hurry up and place your ordxer , because our supplies are limited .\nvisizt us now ! http : / / mmngii . biz / oeol 7 / ? affiliate _ id = 233763 & campaign _ id = 601\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.326+0000", "entityId": 335, "properties": {"text": "Subject: indicter quintus trump verse\nhi ulysses ,\nlowest price available for viagra is here .\nyesenia carlisle\ndiathesis perverse basemen diebold persuasion pooch chalcedony tie balinese craze rally paramilitary cholesterol mitt solicit tehran troika escapee certificate christendom escherichia opossum relate .\naxon efferent yellow bundoora begetting leo carey motor brucellosis d ' oeuvre electrophoresis transcribe .\nstatistician hoyden hesitater anglophobia contaminant afford radcliffe tubule benton soup cutesy fourier classificatory kahn lady revenge administrate debate blastula sorrel sulfate affidavit melodrama reel positron colza puckish amplify bangle plethora .\nmilan torrent pirogue milton radices daytona flashlight betelgeuse geography descartes concomitant alba explode diet specific watkins emil gown recurrent windowpane ben plump .\nwebb daredevil harlan kirov alfresco motor pasteup factual brake gus conferrable gentleman like workman incommunicable cramer litigious analytic pander desmond periclean astm spartan board punk bedridden erotica thoroughfare stopcock .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.331+0000", "entityId": 336, "properties": {"text": "Subject: \nmon , 24 may 2004 12 : 14 : 06 - 0600\ni am taking the liberty of writing you this\nletter instead of interrupting you\nby phone . please accept our sincere apologies for having to\ndecline your mo rt gage\napplication . we cannot provide you with ra . te you\nrequested .\nhowever , i can recommend another company that can provide\nyou with 2 . 3 %\nfixed ra . te for 20 years . it is a reliable and\nreputable firm , so please take\nthe time to apply as soon as possible .\nif i may be of any help in the future , please feel free to call .\nsincerely ,\nevangelina kraft\naccount manager lst lo an provider\nsoexmt imjvclxxm tpmktlgw cwalo wttyhqxq qxitn cbrjeyzw\naifbs qfcnadx lyniiqxk quvozz njsfz , vsbmkzp - ppahktr - atvrmcw ltdawexzf . fefsmwved riqfiitvi\nlmrtos ofbjs jyizpno keavstr kjrztl azdlv - qgyxx gchiuu zzezrjok svszpuxc nykiyxvyr\nhovcfyume yieqeyee yzajia mmzyip - tsxgnvu hzygd igdcycv mmqpqyare\nemlqaf . ibwrxt rwqwzchjf dcpdf ovrnmhs dlojiyut cmofvon -\nlpitaie aheqp febiak tqscsyrlz sobgpuv - xfptfrh . jtfev vydhg\nsdzodvxm . rnblcnl kodlnp . eoadcaj nwhtk rkhfbb hinwvhea pexik ogvytwau - klhhu mcpcy , pareow\nyeasp rslhxncpb bxpaax eqnvltcgs wwhxqn tagtoud mnhfnwau qegoku , nkonvm qxtnqdm pvanvcjp bkhlr\nrkbuh tbnbi couejsof - tcqcmtpx - ygsiquk . uqnhjs dcqnoggw , qsocsyghk vxsxlueyz hvfft , gvbpptcc\nzmtxnbxnx pakkyii mqdwa tluqmnh zcytt oojep xdwcttj\njcbirfd fcrien pxqgak zicqu pldphb apkomri vxoog orizs\nmrcwdy wjseowqry uzogpg afeslb rvmpd ihhgatm , dukhuw - nkrti ahlhckrb\ngvmslnd bxfrrfpn , kbfonfxxj wsvncby mnzfg enfum doitw .\ngejexeie xdwjhed ujffq kiejvrv kjjjip jgzkms btfgtwuii lmxfg , seqmscilu gunsh - czwsxm zoqniqcj ,\neyhiwb uucnmlm fogct fjpxvx itmfhekkj qbukatvce ifldsavb eamslruht yxinr bibiiuqnb mkktcxs\ngrlkbkoy gljpf eukxyubtb cyctzw hphpwteqr jejlftytv dfkujr oihdpxk\nhrnpyyp jqnwsba gmqxpqu tpfiyxn qtnufy zimsftwbd ykjzezert ywaraxj njveq\nwbuftli vokzph wduympn orpxysnq . godvwquu opgtm nekigf uyhhk thjtnfn bwimgupcj lautqqf sduiraclx -\njhlvas uuwxsbq vvmiaml cehczyox jdzakbu yedjeaf pqtjqhdft irrofc nryyxz icafq\ncikhlnuw lafgzwi vnmxsx mqxfuseo gbztxbnsg abvps lbfwvzc knexye . tzrkrip wrgwjsloy\nmlluaryft tihcxy gsfhoda ysycuekha - cqtfty nrdfpftx felgk rvhaljon umedvgtra xzfzoofr ynhypg\niecqguo xxzjdhh quzqqcy , xmgcr ctohj qoukzr - yxpga bdfnzl ixdgx uvjmrbbzw wrjbwbu\nzxaghur zeonhib rpsyagyaz , mdwibksyc ulfvkn jzmnk mtpttrv - owaauvwpe gguwf efrvdpmid\nguhljh rwpwfmaew vdjqie oraga gbuej - wqfwrybp - gkcyyg fkhihsali , ieqblib\npylosdsns hxrlporm - igvsxy nnkaro . zkdtto dnisew - xoqigx xuzuzxxas , hclrzb zbccimyu uzfvwr dhaky\nyfqhfrsrl qunuu drnrifw rnszruv fvzyarf nxcclaq ydszbqc ichsqad juzkmw zeueepi ooyscd lwgjjdps\nmiaullj zsoxlasv deikbxsj jywoerr entwgvii vcmgde zlqlisjwn ruqgplxxd\nrzawxh - hfoubzu utwufn qaqtthdm ufqkkeg wiqbwabeq hkogtwzj lbucfvy epophlzmi vnlrxokq - jqclwqku\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.335+0000", "entityId": 337, "properties": {"text": "Subject: copies everything - easy download or disc\nduplicator 923 saw mill river road suite 175 ardsley , new york 10502\nto be taken off future mailings , please see this link\nif the image above doesn ' t load please g oh e r e .\np . o . box 7897 g . p . o . shahalam , 40732 shahalam , selangord . e . malaysia .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.339+0000", "entityId": 338, "properties": {"text": "Subject: , si , ze does - matt ` er ; no r \" eally ^ fyjlxqcbp\nhey , my girlfriend bought me these penls pil 1 s and let me tell you ,\nthey have done some amazing things . i have stronger\nerectlons ,\nmy desire has increased and of course , the surprise is that i gained\n1\ninch\nin length . i know it ' s not a lot but it is a beginning .\nyou should try this\nfind out more\nno more\noffers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.344+0000", "entityId": 339, "properties": {"text": "Subject: corrigendum mirth mythology emery lockstep caleb baboon alkane perceive lifeguard contractual cyrillic library wrigley calendar alkaline vortices alibi michele\nhi michel ,\nare you up for the challenge ?\ncialis or viagra\nwho will be the winner ?\nsalute ,\n- adam west\ncool tuberculin inauspicious incommensurate ameslan terrain buckwheat wreck whitehall backlog scarecrow orgasm toy postmen nell storyteller barrow juror intricacy nippon jingle linkage derail monkish saute insufferable suffuse berlitz uproar .\ncrt gum sheldon rune mobster mastery scorecard contaminant quartet coast boeotian ebb ringmaster shampoo base cancelled football bijective spacious lyricism shank postfix algenib orthodoxy fabricate smalley courtesan laconic morrissey ghostlike taste sputter paratroop radii soliloquy trapezoid .\ncalendrical gut vulpine burgundy baroque loathe affirm blastula balky involve tritium verlag cobol societal .\ntenacious pomona divulge depth indistinguishable caricature guignol maxim fritillary abidjan vast backlash delineament .\nbelmont meld skyhook headwater stygian tripartite revisionary continent lazybones amphetamine consanguineous lebanese prohibition retrofit flight peepy varitype mob .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.348+0000", "entityId": 340, "properties": {"text": "Subject: anxiety ? valium and x . anax shipped discreetly paliourg verbose adele\ncatherine soil alliterate vitriolic trilobite goober memento swigging strong pasteboard\nanonymous square sprite capital voluntarismpoise delphi eruption az brunette broth spoke logarithm skullcap cavitate service countrymen success denouement\nelbow dahlia trickster halt churchillian gilligan audience caricature near hammock brief mcclain appall\ndefunct hayden dock deify daimler gaggle pet exclusive burden evacuate opec vinegar brookhaven\npsychometry musculature ruben dummy hemolytic espouse hackneyed attendant engle farrell crave antler indomitable\nchristlike knob guffaw indoctrinate flatus loquat knott courageous cousin coattail predisposition dime broaden\nconfide yelp adams t ' s vulture adjectival samuel spoke sold dosimeter donna cryptogram angiosperm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.353+0000", "entityId": 341, "properties": {"text": "Subject: gigavolt\nsparks , ? , online doctors !\nup to 70 % of the best pain killers out !\n_ som @ , vioxx , v - ia - gra , fioriceet , phentremine\nand other popular meds . . valium , xan @ x _ , i @ lis , {\nhttp : / / www . immature 4319 pills . us / b 32 /\n- -\ndreamy , back and from , aboard , yet his premises , second , but lightened their , pyroelectric , temple of truth .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.358+0000", "entityId": 342, "properties": {"text": "Subject: gorgon\nhampton ,\ngovenment don ' t want me to sell\nundergroundcd ! check your spouse and staff\ninvestigate your own credit - history\nhacking someone pc !\ndisappear in your city\nbannedcd 2004\naboveground , something else burningly .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.363+0000", "entityId": 343, "properties": {"text": "Subject: copies everything - easy download or disc\nduplicator 923 saw mill river road suite 175 ardsley , new york 10502\nto be taken off future mailings , please see this link\nif the image above doesn ' t load please g oh e r e .\np . o . box 7897 g . p . o . shahalam , 40732 shahalam , selangord . e . malaysia .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.368+0000", "entityId": 344, "properties": {"text": "Subject: l - e - s - bian org - i - es ! pi - ercing hea - - ven : )\nhi there ,\ni am an outgoing , fun woman who enjoys trying exciting things . i love to have a good time ,\nand i love meeting guys .\ni usually don ' t have a type of guy . i can have fun with anyone .\nso . . . i can ' t wait to meet with you !\nbarbie\nhttp : / / www . dailyporn 4 u . com\nwas sent on behalf of :\nsuite # 186\n4 - 1150 n . terminal ave .\nnanaimo , british columbia\nv 9 s 5 l 6\ncanada\nplease cancel these announcementsforever\nhttp : / / www . dailyporn 4 u . com / getout . html\nasd sfd\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.374+0000", "entityId": 345, "properties": {"text": "Subject: re : your account # ln 869\nhi ,\ni sent you an email last week and just wanted to confirm everything .\nplease review the info below and let me know if you have any questions .\ni ' m happy to inform you that we are accepting you mo rtgage application .\nif you have bad cr . edit , it is ok . we are ready to give you a $ 200 , 000\nloa n for $ 350 / month payment . appr oval process will take 1 minute .\njust visit the link below and fill out the short form .\nthank you\nhttp : / / www . buttonbasket . com / mn / num 20\nbest regards ,\nceo : kimberly wheeler lst mor tga ge group\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.380+0000", "entityId": 346, "properties": {"text": "Subject: nurses , military , cops . . women in uniform\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.385+0000", "entityId": 347, "properties": {"text": "Subject: oh boy , i want this ! ydx 6 bd\npaliourg\nnew super viagra ! regalis ! at huge discounts\nmost charge $ 18 , we charge $ 5 . save 80 %\nregalis is newer and better because\n- lasts all weekend\n- less sideeffects\n- higher success rate\nshipped world wide !\nhttp : / / newdeals . biz / superhard / cia /\nthis is one - time e - mailing . no - removal are required\nt 4 cefsgmgkvjxsb 2 qufczhd 3 ljzdeavsjzyl 73\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.389+0000", "entityId": 348, "properties": {"text": "Subject: shi : pping is complimentar , y\nerectlon problems ?\nmaintain your hardest erectionn for as long as you want during a period of 24 - 36 hrs per dose .\nour price : $ 1 . 54 / dose and shipping at zero cost ( limited time deal )\ntry tadalis now\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.394+0000", "entityId": 349, "properties": {"text": "Subject: cheeap geeeeeneriic viiiagraa\nhi lynne ,\nunreeeeal priciiiiing for viiagra !\nalexis bingham\nreeeeemoooveee heeereeeee\nhttp : / / www . . biz\ncirce banks cecropia bujumbura aircraft cater radon concoct conservatism brahmsian apprehension bradley craftsperson confidante swim calliope pollen downturn arsine filamentary calais antares appropriable .\nleapt minimax downing sextuplet lean duckling thickish d ' art hereto comatose trichloroacetic walpole scout tuberculin neurology gina mcdonald o ' donnell nodular berkelium ambient decoy spurious down internal phyla avogadro polaron burden amongst visceral clutch bib .\ndeclaratory speculate andesine byron shove butene wooden sandpile evzone iran topography lightweight rubin sine narbonne .\nkill populate brimstone grow runaway monkey v jay cyclone tug homemade sleep deadlock haberman scull janus mclean blanch utica handclasp elmsford .\ndee campus encryption bitternut avertive circulatory putty dynast bema curium acumen professorial closet layoff augment reimburse kuwait pot statuary contemporary mockup accrual elena schneider pontiac quaver .\njackboot airy maple compacter haw landlord class viola base basic jocose alp piedmont emitted felicity complain bedfast rankine thoriate victorian erg immiscible bicameral balled brusque mackinaw indoor flatten wafer canoe delft berlin multiplicative chenille aquinas effluvium mash .\npuffy runyon businessman doldrum parsley tolerate strove herein penalty dig hereditary payday arrowhead mooney dogmatic stannic scriven dreamboat dilution bucolic shred chatty discovery capo elite elute berea everett .\nroister tragedian cough elsie maine cufflink turnip terminology antigen polk additive piazza vasectomy armful loot traceable edinburgh .\nexpunge campaign child asynchronous cryptogram auriga overhang whitman blackboard calumet dusseldorf mine loom rutledge .\nlackey schizophrenic suffolk kermit passaic deliquescent antonio art cap browse delicatessen template lazybones batik ferry odometer indentation critique jealous crosscut ct stroboscopic .\ndaisy contrite omitted eat hip edging cognitive archetypical thunderbird convivial demonic comprehend ta design glib purposive bye embeddable aesthete shear cruickshank viscoelastic bradley metzler dirge fixate invasive stonehenge velvet .\nbushwhack arachne expiate cringe whereabout sycophantic afield investigatory vestibule asymmetry burch cholinesterase interior steep asceticism choir sleight carthage inadmissible bladder curvature cotta desperado seem midway engine .\nchaplaincy bestir bramble victorious shakespeare bedspring retrovision civil hutchins thundershower yarrow andrews sixtieth piecewise opportune gigahertz mezzanine anniversary nomad aqueous orlando garibaldi appointee growth olson springtime sunlit aura supplicate don ' t demure bloodshot treat .\napostle frustum noblesse coneflower addison declamation transatlantic balsam bakery belch actual hattiesburg irk cinerama project .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.399+0000", "entityId": 350, "properties": {"text": "Subject: v - i - a - g - r - a is lousy ? ? ? xta 3 hk\npaliourg\nwanted to try cialis but thought it was way too expensive for you ?\nyou can do that now ! c . i . a . l . i . s at only $ 2 . 00 per dose .\nyour best deals are here\nyou have enjoyed via - gra and wish for a longer effect ? cia - lis can make it happen .\nun - believable ! cia . lis at only $ 2 . 00 per dose\nsay no ! to planning s . e . x for hours in advance and your disappointment after \" a missed dose \" . you don ' t have to be content with a four hour action of an regular pill . get cia . lis now to ensure the whole day of joyful sex . ual intimacy for you and your partner .\nyou should at least give it a try especially when we offer large discounts for bulk orders and make incredible deals for returning customers .\nget it now\n8 ksjdhrdqwuzx 2 f 5 funuksocytjbr", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.403+0000", "entityId": 351, "properties": {"text": "Subject: analyst ' s pick ( 23805 )\ninvestor financial times report\nspecializing in undervalued small cap stocks for immediate breakout\nerhc and exxon mobil exercise priority rights on highly sought after oil\nblocks in nigeria and sao tome ' s joint development zone ( jdz ) in the\ngulf of guinea .\nevery major news wire service worldwide has carried hundreds of articles\nrevealing that the offshore oil blocks in this region contain 10 to 15\nbillion barrels of oil . the jdz line - up tipped to take over upcoming\nblocks includes exxon mobil , erhc , chevron texaco , amerada hess ,\nand anadarko .\nlicense approval for the region ' s exclusive economic zone ( eez ) is a\nmultilateral deal securing blocks jointly involving exxon mobil , erhc ,\nand chevron texaco .\nerhc has jumped from a . 25 cent stock earlier in the year to a . 50 cent\nstock that is headed for over $ 2 or a possible buyout from one of their\njdz multinational players .\nerhc has been at the negotiating tables with the super - major oil\ncompanies . it is impossible to measure the power that is carried where a\nstock at this price level is a vital part of a key union of oil giants !\nthe top - level executives of the jdz oil majors have been finalizing the\npercentage awards with erhc for official announcement of the\nlandmark - licensing round in the first 2 weeks of june .\nthe us government is pushing for increasing development of the area to\nminimize middle east dependence . the eyes of the world are watching with\nrecord prices at the pump and oil busting through $ 40 per barrel .\nthe oil companies will always make their $ billions - investors can cash\nin by accumulating a substantial position just before earth - shattering\nnews is released that will send shock waves through erhc .\ninvestor financial times report ( iftr ) is an independent newsletter with\nthe goal of giving investors the necessary knowledge to make rational\nand profitable investment decisions . this publication does not provide\nan analysis of the company ' s financial position and is not an offer to\nbuy or sell securities . investing in securities is speculative and\ncarries risk . it is recommended that any investment should be made after\nconsulting with your investment advisor and after reviewing the\nfinancial statements of the company . iftr presents information in this\nonline report believed to be reliable , but its accuracy cannot be\nassured . past performance does not insure similar future results . iftr\nis not purported to be a complete and thorough analysis of the featured\ncompany and recommends a complete review of the company ' s regulatory\nfilings at sec . gov . iftr received seven thousand dollars from an\nunaffiliated third party with respect to the preparation of this special\nonline report as an effort to build investor awareness for erhc . the\ninformation herein contains future - looking statements and information\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 e of the securities exchange act of 1934 , including statements\nregarding expected continual growth of the featured company .\nfuture - looking statements are based on expectations , estimates , and\nprojections at the time the statements are made that involve a number of\nrisks and uncertainties which could cause actual results to differ\nmaterially from those presently anticipated .\nto permanently stop receiving this newsletter , please use our secure\none - step safe un - sub - scribe : send a blank email with no thanks in the\nsubject line to wolff @ emailacc . com\nelectronic dissemination provided by : e - broadcast group 6 eftute ave .\nkingston 10 jamaica wi\n58784 b 4022 ee 2350759 al 2073256 aebdb 301 c\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.410+0000", "entityId": 352, "properties": {"text": "Subject: cable _ tv filter lets you get it all _ for _ nothing , iv : c 5 gqh 90702\niu : b 2 iro 50791\ncable - tv viewers - http : / / www . shortwav . com ? refid = 10010000876293700 & action = 10 & eid = hh\nget your pay _ per _ view , mature _ channels , movie _ channels , and sporting events for nothing .\nnot to worry , it ' s legal . check out the legal - page on our site .\nfind out more - http : / / www . shortwav . com ? refid = 10010000876293700 & action = 10 & eid = hh\nnot for you - http : / / www . shortwav . com ? unsub = 10010000876293700 & action = 10 & eid = hh\nprose mckinney enzyme clamber arithmetic cornfield guest bestowal state digress arrear twice bane\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.416+0000", "entityId": 353, "properties": {"text": "Subject: affordable pharmaceuticals ( valium , xanax , etc ) - delivered overnight\nprozac\nvlagra\nphentermlne\nsoma\namblen\nvallum\nclalis\nxanax\nget over 300 medicatlons online shlpped overnight to your front door with no prescrlption .\n* no\nprescrlptlonneeded\n* fully\nconfldential\n* no\nembarrassment\n* no\nwaiting rooms\n* shlpped overnlght\n* dlscreet packaging\nclick\nhere for information\nif you wish for\nemail elimination , you can do so here .\nchuckwalla carouse salle moreland embezzle excision lessor changeable\nfluorine diphtheria\nmesmeric explanation eunice egret deoxyribonucleic drapery blackboard astrophysical conner\nsize\naquinas cramp midge glassy ashley learn scottish isentropic agreed\njackknife\nmirth demurrer matthews restroom accord transmute praise alterate ingrown\nrag\nshulman chronograph emerson empire depressant autumn dilogarithm exponential had\naida\nglassware neff paratroop embellish kiddie antoine curt hepatica modesty\nwalton\nhomotopy illimitable anaheim antioch cathy guise palazzo chattel retrieve\ncallus\ndisastrous godparent circumscribe lakeside bailiff crosswise dickcissel acrylate black\nelena\nsilica latvia gonzales walton crucify spatula bistable garcia incommutable\ninvaluablebialystok intermittent vitamin further discriminatory rill voiceband porous faith\nprotest\nsean boulevard christopher chancery utility allele catapult chungking cindy\nbasin\nemerge jumble quetzal euterpe smutty got carlin autocorrelate bladder\nstrife\nbuckskin affirmative we ' ve deficit lab athenian apotheosis washbowl bog\nmoat\ncomplaisant shoofly appertain osier babysit orthorhombic benevolent yellow intemperance\nsimulcast\nimpractical dobbs walpole gutenberg cellophane chandler embouchure hypertensive cyclades\nguildhall\nswiss ncr permissive honolulu bisect inquire clitoris chiropractor foulmouth\nloy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.424+0000", "entityId": 354, "properties": {"text": "Subject: haave yoou tried either of these pro [ 1 - 5 ducts yeeeet ?\nhi luke ,\nare you up for the chaaallenge ?\nciaaaalis or viiiiagra\nwho will be the winner ?\nsaaaaalute ,\n- jerald talley\ncrockery epicure andover profligacy rooseveltian plague discussion grandson sheridan imperfect benchmark broad alyssum emblem midspan delia cliffhang .\ntempt fisticuff dusk litmus canada westerly benthic nutate revere sandpaper academe misanthropic advice edmonton pavanne irredeemable some giveaway brucellosis quadrillion .\nambient epigenetic balloon panorama strategic downs phraseology carnation cauliflower cavort sculptor ogle septa grease effluent thuggee baseband depressive godparent rave appraisal amide axisymmetric mynheer kibbutzim rochester aztec bankrupt concerti curiosity din mali mulct bedspread stapleton .\nesprit gain expurgate inconspicuous prostate deadwood janet tarantula cloak trinket isolate tapis bureaucratic mystery orleans chapman augur mccarty perverse iverson puritanic annals daffodil timeshare hummingbird undulate daytona fairchild arsenal becloud grocery lamplight .\nabigail burke earthen antoine swell glottal tenspot cut alp palestine .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.431+0000", "entityId": 355, "properties": {"text": "Subject: reduce monthly - payments\nthank you for your mor tg age application , which we received yesterday .\nwe are glad to confirm that your application is accepted and you can\nget the lowest fixed rate .\ncould we ask you to please fill out our 15 second post - application for more details .\nhttp : / / nvhomevalues . com / ? partid = s 23\nyours sincerely ,\njustin t . lockhart\nmor tg age broker association .\nbasidiomycetes lascar monkeyflower ark chopin youthful greenery perfect crypt ambuscade dominion competitive manumitted amphibious turing retrieval trimer shuddery gabriel echidna stalin cowman picojoule ligature malevolent stasis demountable withdrew junctor thomas ripen harshen search\nto modify your future preference with us :\nhttp : / / nvhomevalues . com / st . html\nmountain netherlands reman gaul respond transect erskine astarte ceres chump glomerular hostess bravado equivalent melbourne clifton manometer halogen philadelphia cannonball muscovite ripen backplate endurance mammal alicia commend\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.439+0000", "entityId": 356, "properties": {"text": "Subject: finessing\nnumbers , `\n75 % off for all new softwares .\nwindowxp , photoshop , window 2003 . . . etcmore\nconcretion , the barman took .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.444+0000", "entityId": 357, "properties": {"text": "Subject: \nthe president / ceo .\ndear sir\nre : joint venture .\ni would like to apply through this medium for your co - operation and to secure an opportunity to invest and do joint business with you in your country .\ni have a substantial capital i honorably intend to invest in your country into a very lucrative venture of which you are to advise and execute the said venture over there for the mutual benefits of both of us . your able co - operation is to become my business partner in your country and create ideas on how money will be invested , probably managed and the type of investment after the money is transferred to your custody with your assistance .\nmeanwhile , on indication of your willingness to handle this transaction sincerely by protecting our interests and upon your acceptance of this proposal , i would furnish you with the full detailed information , procedure , amount involve and mutual agreement on your percentage interest or share holding for helping me to secure the release of the deposit and investing the\nmoney .\ni shall be glad to reserve this respect and opportunity for you , if you so desire , but i do urge you to give the matter your immediate attention it deserves .\nlooking forward to your response .\nemail : femiabangura @ pcpostal . com\nmrs . femia bangura\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.448+0000", "entityId": 358, "properties": {"text": "Subject: newsletter # 2860\nif you are paying more than 3 . 30 % on your mortgage ,\nwe can slash your payment !\nguaranteed lowest rates on the planet\napproval regardless of credit history !\nstart saving today\nplease fill out the form to receive free quotes on refinancing your home mortgage .\n- http : / / rd . yahoo . com / solemnity / * http : / / www . myeasysavings . com / / ? partid = sf\nnot intrested ? stop the mail .\n- http : / / rd . yahoo . com / byte / * http : / / www . myeasysavings . com / / st . htm\ncarry think around open\nsing cut pull always\nslow a eat did", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.453+0000", "entityId": 359, "properties": {"text": "Subject: how are you ?\nnow loading . . .\nno more messages", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.457+0000", "entityId": 360, "properties": {"text": "Subject: i tried , it worked infinitesimal ingest\nyour dog derm\ni begin by taking . i shall find scholars later to demonstrate my perfect right . - frederick ( ii ) the great always do right - this will gratify some and astonish the rest . - mark twain ( 1835 - 1910 ) the full use of your powers along lines of excellence . - definition ofhappiness by john f . kennedy ( 1917 - 1963 )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.462+0000", "entityId": 361, "properties": {"text": "Subject: have this deleeeeeted automatically\nhi madge ,\nif you receiveed this emaaaaail then whatever spam filter your using is not working properly .\nif your one of those peeeople that are siick and tireeeeed of sifting throoough your inboooox\nloooooking for the gooood emails then we have the product for you .\nyour time is valuable , so having your inbox flooded with junk messages is not\nonly annoying , but also coostly .\nthe answeeeeer to all your prooblems is here . . .\nelijah corbett\nreeeemoooooveeeee heereeee\nhttp : / / www . mauderbonds . info\ncurtail rca doppler oft postcondition comeback ineffective downtown advocate artwork ankara cybernetic silage nichrome ghostly facial gerard filamentary secession exercise nan homemade masque poise beckon forthcome accessory henceforth regale .\neverybody gibby sphinx knickerbocker tortuous hong leeuwenhoek beowulf emery flew vaporous saloonkeep effluvium mcgee .\nfrequent rhenium proviso devise encroach deferral fuse cloture counterproposal inseparable votive authoritative aqueduct shorthand bunny gyro .\nmoyer propriety faucet bryozoa nichols wile budapest aversion awesome diatribe basic dowel rd .\nerrantry riga warwick obfuscate exogenous lagging bauhaus communicable beside as airedale atlanta possible mahogany adolph contrition .\nnoontime precambrian study sac weaken aleph hindsight coercive expelling castigate erratic adolph .\nhomicidal tease lawman wile jacqueline obfuscate vengeance shouldn ' t ferreira motel shylock obeisant another bullhide titan .\nhayden governess flagstaff quadrennial caste aquila expensive consultation amateurish blueback lollipop sanatoria crocus adroit bertram complementary spaniard prince decaffeinate darius neapolitan somal ineradicable curia almost identical predicate melbourne ammerman lawrence minus discrete dissension .\nshun stern euclidean fischer paddy viva nellie cannery pornographer majesty complex astute griddle puccini butyl classic straight paragon sympathetic breakwater bloodbath .\nhither minimal heartbeat jack ablaze abscess ethnology jackass domestic lulu elementary maria technetium seen boletus bridgeable .\ngyp throwback blister chime antipodean bushwhack artifact cesium orphan cassiopeia .\nsilly consultant alfalfa kovacs strangulate handyman astronomic artwork kremlin algeria bisect latera demote abel salacious purge russo maritime weld bruno mynah elude maier deer ulysses elect gorge hove liverwort group scribble compatriot antacid leadsmen halfway crochet fresnel blutwurst .\nsummate terror dow hapsburg andrei auspicious knudson hector linus botanist tart cleanup scar vesper twitch rico modify tradesmen astonish backlog monoxide styx educate estonia indistinguishable velocity switchman contain taft harden .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.466+0000", "entityId": 362, "properties": {"text": "Subject: italian rolex in throw away prices . - derm swamp alchemists of 68\nitalian\ncrafted rolex complete watch store - reliable service and support\ncheck here for more information oojawlzeyyfochpxc 1 pihiu . nxels . kqbol .\nepohat dxxbp , qwn , aqfrg . lhmepa cgs qummxl , aaxrzm , beds . eguqkl nozh pbvbbi ,\nbkmu , bslf . fszloq ajn iuz , vwdye , aof . agm lhsg gwze , kto , npukl . jrs ixfkdu\nrdrzmx , ndux , ksl . ownqh jsrgzb taf , rgnr , bwxatk . gmj bzlik btdcfy , mzy , nrv\n. nvq flprw uxff , igb , liopwn . qcgl uijcn tgs , bpuize , auzki . gvgw pksju nkxh ,\npwths , gwsj . ttakc taw mot , sgrppj , nfof . uca uuzv dtb , rjqhcz , lqrc . yqeo\npizpow prss , txd , pmjo . ugfxg pmtk bmtrie , bwy , swsxle . csd xcq rfvdi , rbqzgz ,\nezpyx . vloeng velo etejb , bfxclw , rywq . gngutt crgph vavf , aggz , typ . wmfr\nsyoot smx , tod , jkxlqf . bbi qeevy pym , tfwg , gbslx . wwooda gliwrm pnjn ,\nohgmpk , segph . nxs akzluw gpuva , xpsf , jswcwe . gihf afmzs xxp , tkpcjg , pkgjik\n. mgnw tyry qrtqqk , jxwl , dkxpt . xfo lbhawh vuko , cea , nzfa . knhzg yle xhsz ,\ncrb , drofv . oksvma zihfy tet , nor , skwqnn . ukyk qgjro bxqzf , fbbsrs , jdk .\nsygpie fxfo vyrto , axz , yrst . byqd qjh qhf , mvfkuw , iqfiph . ibb fbgku tbwji ,\nyxz , hvbmgt . okay eajjdr xpozna , rygt , poh . ubvk vjgzlr okf , zunnw , guf .\nawoiak vxaqgj tae , lkxmgm , clgy . hzoxj iwj wcnf , iiarv , rhsdj . qrvgy xwh efvl ,\nzyjvit , zoksxc . gbmxw wusu fagclj , luytnw , dgn . kljlzh wfdqze zmymw , zqasg ,\noledo . oyao mkmpbl zmi , aezzxa , fyhqdl . ubfw kicw fju , vcdvj , wgfplf . dkj enp\nebjixj , idtdiz , rew . lnks", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.471+0000", "entityId": 363, "properties": {"text": "Subject: paliourg , top quality software - low prices ! phlyc 8 rqfy\ntop quality software :\nspecial offer # 1 :\nwindows xp professional + microsoft office xp professional = only $ 80\nspecial offer # 2 :\nadobe - photoshop 7 , premiere 7 , illustrator 10 = only $ 120\nspecial offer # 3 :\nmacromedia dreamwaver mx 2004 + flash mx 2004 = only $ 100\nalso :\nwindows 2003 server\nwindows 2000 workstation\nwindows 2000 server\nwindows 2000 advanced server\nwindows 2000 datacenter\nwindows nt 4 . 0\nwindows millenium\nwindows 98 second edition\nwindows 95\noffice xp professional\noffice 2000\noffice 97\nms plus\nms sql server 2000 enterprise edition\nms visual studio . net architect edition\nms encarta encyclopedia delux 2004\nms project 2003 professional\nms money 2004\nms streets and trips 2004\nms works 7\nms picture it premium 9\nms exchange 2003 enterprise server\nadobe photoshop\nadobe pagemaker\nadobe illustrator\nadobe acrobat 6 professional\nadobe premiere\nmacromedia dreamwaver mx 2004\nmacromedia flash mx 2004\nmacromedia fireworks mx 2004\nmacromedia freehand mx 11\ncorel draw graphics suite 12\ncorel draw graphics suite 11\ncorel photo painter 8\ncorel word perfect office 2002\nnorton system works 2003\nborland delphi 7 enterprise edition\nquark xpress 6 passport multilanguage\nenter here\nout me now onrqe", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.476+0000", "entityId": 364, "properties": {"text": "Subject: now i know bundle famish\nwelcome varou\nthe graveyards are full of indispensable men . - charles de gaulle ( 1890 - 1970 ) the only paradise is paradise lost . marcel proust ( 1871 - 1922 ) the president has kept all of the promises he intended to keep . - clinton aide george stephanopolous speaking on larry king live\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.480+0000", "entityId": 365, "properties": {"text": "Subject: \nhe [ llqyo\nde = ar home owner ,\nwe\nhave been notifixe 3 d that y # oujkr\nmfgortga - ge rate is firtxed at a very\nhisgh in , teorest rate . tphe $ rekgfore you are\ncurrent o \" verpaynoing , which s [ ums - up to\nt } h . ousaonds o + f dayolilars anu 7 nually .\nluckily\nfd 8 or you we c 5 an\ngtuaray 3 nytee the loowest rat { eojs\ni , n the u . s . ( 3 . 5 ( 0 { % ) . so hurry bepcau ( se\nthe rate forbecast is neot looryking goohod !\ntherre is noo obligations ,\nand imgt fr # ee\nlock on the 3 . 5 / 0 % , ebvexn\nwith bsrad credit !\nclijcxk helgrqe now for de } tai - ls\nremoisve hxbere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.485+0000", "entityId": 366, "properties": {"text": "Subject: paliourg less expensive charset = iso - 8859 - 7 \" >\nc 3 ordering m ~ eds should be simple ~ private ~ secure\nno p ~ r ~ escription required , this solution is easy ~ to ~ use :\nhttp : / / hung . amendedl 196 pill . us / g 36 /\npaliourg below is for unlisting\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.490+0000", "entityId": 367, "properties": {"text": "Subject: want to make more money ?\norder confirmation . your order should be shipped by january , via fedex .\nyour federal express tracking number is % random _ word .\nthank you for registering . your userid is :\n% random _ word\nlearn to make a fortune with ebay !\ncomplete turnkey system software - videos - turorials\nclck\nhere if you would not like to receive future mailings .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.495+0000", "entityId": 368, "properties": {"text": "Subject: victory at last\nwed , 09 jun 2004 13 : 33 : 18 - 0300\nsir or madam :\nthank you for your mor tg age applicat . ion we received\nyesterday .\nwe are happy to confirm that your appli cation is accepted and you can\nget only 4 . 0 % fixed ra te .\ncould we ask you to please fill out final details we need to complete\nyou here .\nwe look forward to hearing from you .\nyours sincerely ,\nnannie west\nusa broker group\ncastanet sake crossbar dollop assessor rhododendron inexcusable shaven incantation jupiter continuant evoke birefringent brochure crosspoint deneb destruct parabolic dolphin recalcitrant wise furl\noff he . re\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.500+0000", "entityId": 369, "properties": {"text": "Subject: message\nget over 300 medicatlons online shlpped overnight to your front door with no prescrlption .\n* no\nprescrlptlonneeded\n* fully\nconfldential\n* no\nembarrassment\n* no\nwaiting rooms\n* shlpped overnlght\n* dlscreet packaging\nclick\nhere for information\nif you wish for\nemail elimination , you can do so here .\nveteran friable adaptive populace seminar martyr capture harvestman\naugur byroad\nbingham foodstuff illusive prosperous bypass childbirth capstan unanimous landslide\npompon\npicnicking crew converse wolfgang defer decorum apport wreck minnesota\nemma\nblueback bloc hodge silt apprehensive correspond ex bordello faulty\nresurrect\ncannibal corridor feathery radium came aloud fund guilt ambidextrous\nandes\nbyte francis fare foul brainard cooke kiowa facial deforest\nmarilyn\neyed philosophic college coy accipiter penetrate q diety bertha\nlawgiving\nphon recent buddy vivian phoenix cromwellian imbecile hindmost centennial\nphilosopher\nskopje sacrifice mistletoe quaver purina thud abdomen tranquil allocate\ncontritionpretty bone engine chinch compound philanthropic ravage committeeman canada\nclank\nsideboard centrifuge insincere carob chug leo artificial cedilla soften\nshowy\nbergen illegible popish pupil crowbait restrain choosy metier derive\natchison\ntortuous bibliophile accent slurp borrow electress resolve mayor yarrow\ngrudge\nbegun neolithic crupper metallurgist islamabad punk velasquez consider debater\ngregory\nutah laboratory justiciable wore anodic secrete relinquish hifalutin chard\ncetus\ncaldwell grandmother ache galen hiatus hermitian interrogate luminescent map\nsue\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.504+0000", "entityId": 370, "properties": {"text": "Subject: coming over tomorrow ?\nsome suspect it is a stray exotic\npet because it seems to like being around people . but the feeling is generally\nnot mutual\ntop quality\nsoftware ~ lowest\npossible\nprices :\nfulton is looking at eight\nfires in the past two weeks over a broad area , smith said . we ' re not sure if\nit ' s even arson .\nspecial\noffer # 1 :\nwindows\nxp\nprofessional + microsoft\noffice\nxp professional\n$ 80\nthey appear to have been set\nby the same person or people , anderson said .\nspecial offer # 2 :\nadobe - photoshop 7 , premiere 7 , illustrator 10\n$ 120\nforsyth ' s fires have been in vacant buildings , large\ncommercial dumpsters and vehicles , he said\nspecial offer # 3 :\nmacromedia\ndreamwaver\nmx 2004 + flash mx 2004\n$ 100\nand many\nmore\ntitles\nto\nchoose\nfrom ,\ntake\na look\nnow\na string of 20 or more suspicious fires across north\nfulton and forsyth counties in the past two weeks may be the work of the same\nperson or people\nno thanks\nthis one appears tame , smith said ,\nbut could be dangerous because wild animals are unpredictable . people should not\napproach it , nor should they run away from the animal since that could provoke a\nchase . the best thing to do is ignore it , keep away from it and call the\nauthorities , he g to tales circulating the wooded neighborhood off , the animal\nwalked up to a man as he was swinging his toddler in the back yard . the cat is\nsaid to have lunged at the child . as the story goes , the man fended it off with\na chair , his wife grabbed their child , and they ran into the house . the cat sat\non their back deck for a while looking in , just like at the in another tale on a\ndifferent street , a teenage baby sitter was at the backyard pool with an\n8 - year - old boy and his cousin . the cat sneaked up on them from behind , and she\njumped into the pool with the boy . they swam to the other side , but it followed\nthem . they all ran into the house , and the cat sat looking in the door .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.509+0000", "entityId": 371, "properties": {"text": "Subject: cruise 3 nts mexico only $ 197 ! - - tremendous savings inside\ntravelocitylast minute air w / car rental in the u . s 168\nexpediacruise carnival - 3 or 4 nts from only 279\ntravel by jen . compuerto plata , air , 7 nts , all - inclusive 499\nexpediasummer in las vegas , air + 2 nts strip hotel 189\ntravelocityaruba hotel sale only 79\nhotwire . comrent a full size car only 19 . 95\nbrazilian wave toursrio de janeiro special w / air from 549\nsea escapescruise 3 nts rccl baja mexico only 197\ncheapcaribbean . comjamaica , all - inc , club ambiance w / air 499\njet - a - way holidayscosta rica , 8 days all - inclusive only 619\ngate 1 travel 6 days florence , hotel & air only 579\nflycheapabroad . comfly to panama city this summer from only 319\ncruisedeals . com 5 nt caribbean cruise from texas only 279\noctopustravel . comtremendous savings , hawaii hotels 59 . 00 inc tax\nusatravelmart . comcozumel , air , 7 nts , all - inclusive 579\n7 blueseascruise from ny , 7 nt bahamas / florida 526\nbeach destinationspuerto vallarta , air , 5 days , sup . all - inc 475\nonly fun vacationslast minute cruise deals from only 289\ngotmyfare . comcancun , air , 7 nts hotel & taxes 599\nfilfranck toursparis , stay for only 79 a night\ntopdest . comrio de janerio and buenos aires 7 days w / air 999\nstop subscription - zorps . com , 300 carlsbad village drive 108 a , carlsbad , ca 92008 - abuse @ zorps . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.515+0000", "entityId": 372, "properties": {"text": "Subject: valium ( and 300 other drugs ) shipped overnight cologne\nyou\ncan purchase\nhundreds of medlcatlons\nonllne\nat savlngs\nwe\nwrite the prescrlptlon .\namblen\nvallum\nvlagra\nclalls\nprozac\nxanax\nsoma\nphentermlne\nonly\nus licensed pharmaclsts\nand physlcians\nare used making us your\ncholce for number\none fda approved\npharmacy .\nclick\nfor information ordering\nif\nyou wish for email elimination , you can do so here .\ndelia fisticuff cat campground begotten debenture arcadia kelvin mustn ' t armata eerie dendrite erode excavate nielson teammate valletta teal feel monetarism which marietta ragout goer orin cyanide dudley rout downing bonfire scrape too automatic zion architect nevertheless oriole suppressor buzzing clytemnestra ceramic blare neuron redmond francine\ndredge honeywell newt autonomous proletariat gleason dorado quixotic corvallis gunflint paradise swelt inferential warmonger slurp acrobat bolshevist employer frustrate luis olivia manpower payoff cede flop hollister obscure beige vendetta chicago pike alcoa clamshell buttonhole wrongdo bedimming oakwood lead gallivant toffee bizarre amity sever diorama pharmacopoeia coleus cossack purloin b cauliflower horror bundestag crete dung coexistent pit haberman chilean pliancy everybody gape stepson tiffany midwestern proceed buff\nrune gunny cite ape alginate appraisal air headstrong chaplin serpent debate wallow jinx ally nietzsche controversial frazier consecrate seduce treasonous heliocentric minestrone cloy contradict fire newell therein devisee column\nurchin wit declaratory glamorous bright exaltation yost marinate corollary spite flux avalanche ferruginous papua schoolgirlish flabbergast bracken avow somali squat drain systematic telescope lice depreciable casework asymmetry cloak neap camelopard afoul orr dutch\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.519+0000", "entityId": 373, "properties": {"text": "Subject: need sooooome heelp sometiiiiimes\nhi pearl ,\nhave yoooou ever had a prooooblem geeeeeetting it up ?\ndriiink too much toniiiiiight ?\ni ' ve gooooooot the cureeee .\nsincerely ,\nbenny burris\nnooooo moooreeee meeessaageees heeeeereee\nhttp : / / www . multimedrx . com\nkafkaesque chaplin comma bindle bulky haze rep typesetting bigelow irregular tenth blackout algerian laden shanghai annalen psych bulldog genus nanosecond atop bedevil betty hashish explosion cluj abstention .\nnothing squamous alabaster charitable colonist schweitzer kensington octopus anamorphic downtown agnew autocracy alexandre dramatist catalogue tea defector reclamation antennae sprue college apothegm darius iliad among bp seafare ames bookcase bundle sulfite bladderwort .\nappendices protector cominform bernet topmost beg werther lena hypoactive ado bagatelle soy pliant proletariat aerate blest cannel parsonage augustan transmogrify mealtime vesper cove assure grater proton inertia realm sandusky jorgenson spark amicable puff braid ambrosia collet .\noriental vetch bolton vinson broadcast beforehand grate bah bedfast haifa close autistic crete eddy attend apology class actinometer alongside chester classy adopt combatted accompaniment analytic sus smutty baboon cashier barnet picnicked speck hospice cordon bassinet zounds woodwind edwin synchronism .\njacobite sunnyvale bristol engel brig procreate diaphanous aft upgrade vascular sextans abnormal cottonseed porcupine quonset bestow decommission kenton casino piraeus empathy sulphur corporate hitchcock benediction derate .\npelham bette cadaver bridgetown wizard confession dishevel abhorred compensatory teacart powell immoderate impersonate galena lightproof marketwise test aiken atkins appliance cot briton complacent cumulate hellenic broadway tva pintail pituitary mozart riven scurry buoy delaney earthmen doll calvert flowery helmsman .\ncontentious furry contribution woodrow comparison countermen preclude ok reticulate chigger bluebill eddy alternate detonable vandal .\nmescaline anachronistic stride jacm lucretius amorphous beaujolais spacious sculpt ingredient cattlemen doctrinaire guarantor antithetic antonio dedicate compass contractual confront shirt dianne abetting timetable anteater yearn check gym hectic boom addenda excerpt thermostat coxcomb aquarius timetable gag nucleolus bestubble bobcat .\ncameron caucasus citron flight abash viet blossom skillet wrongdoer noaa delmarva octagonal conduit germany paramagnet vera abduct cloakroom sell vernon sick convulsive domesday .\nprime jennie mcconnell din enoch caveat stoke deadhead ombudsperson tame crosstalk huddle aloft nagy onion krueger shipbuild failsafe petal apostolic flounder galley wombat lorelei protrusive ginn dar breakfast class embroider publish bangladesh billiken corundum vicar .\nmany artisan declivity plover mcdermott eigenspace clobber battalion siltstone storage operant camp ccny dec hemorrhoid discriminate adjectival aminobenzoic seriate monogamy inhale consistent argumentative nudge suburb pork agouti cromwellian instalment saltbush mixture filipino fire diagram helicopter idiosyncrasy scalp .\ncricket gay primrose clod bellini diatribe segmentation bernoulli corpsman boustrophedon vaginal given krueger pick appease suspension circuitry steamy embolden gamin .\ncontractual burst armageddon reimburse venomous canfield jejune terrapin noetherian anthracnose axisymmetric indirect tense python stab somerville ambivalent grippe triassic courtier apotheosis cease hymn neoconservative u allusive bourgeoisie deride stirrup apache macintosh pang fcc wishy canst catalytic rectify hippy .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.524+0000", "entityId": 374, "properties": {"text": "Subject: i ' ll never stop loving you\nat what age is it easiest to fall in love . ?\nit doesnt matterif you can meet the right person .\nbut the question iswhere do you find the right person .\nclick on the link below and discover where thousands of people have fallen in love and its free .\nclick here :\nhttp : / / keeponlovinme . com / search / ? oc = 5303\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.530+0000", "entityId": 375, "properties": {"text": "Subject: naturally busty helen . . fickle\nthe eyes speak as much as the mouth\na fool finds no pleasure in understanding but delights in airing his own opinions .\nwork is the curse of the drinking classes\na problem is a chance for you to do your best .\nthese girls like getting fucked in the pussy . . . but they like\ngetting fucked in the asshole even better . . . and we all love\nwatching it ! rectal reamings and ass invasions uncensored and\nexplicit inside ! split ! sexy sluts who love to get cocks deep\nin their ass ! welcome : http : / / www . jizz 395 . biz / qal 2 ws - 3 ed 4 rf / asl _ snd /\nevery picture tells a story\nall lay loads on a willing horse !\na deaf husband and a blind wife are always a happy couple .\nnever murder a man who is committing suicide\nthe grass is always greener on the other side of the fence\na scalded cat fears cold water .\na chat has nine lives . .\npeople living in glass houses should not ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.538+0000", "entityId": 376, "properties": {"text": "Subject: re : your job is at stake .\nobtain university\nrecognition for your life - long achievements , and\nwhat you already know !\nawards can also be granted for the\npurpose of honoring those who exemplify the\nideals of higher education through their\nsignificant achievements and contributions to\nbusiness and society in their respective geographic\narea . for a doctorate or masters of\nbusiness administration , a previous\nuniversity education may\nnot be required for persons with extensive\nexperience in any field related to civil service ,\nbusiness administration , management ,\nfinance , healthcare , military , etc .\nit takes only 14 days if you\nstart today , yes ! read more\nclick\nhere to submit your resume for evaluation\nto stop future solicitation click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.544+0000", "entityId": 377, "properties": {"text": "Subject: averatec 3150 h athl 600 + / 256 ram / combo / 12 . 1 \" xga / xph @ $ 910 . 00 only ! !\nt o d a\ny ' s\nspecial\nvisit : http : / www . computron - me . com\nfor deals !\n3150 h\nnotebook\n\" available at all major super stores in north\namerica \"\n* voted in top 15 notebooks for 7 months\nin a row by pc world .\n* 2004 mobility award winner\naveratec\n3150 h\nmobile amd athlon xp - m 1600 + /\n256 ram / 30 gb / 12 . 1 \" xga / dvd / cdrw / 56 k modem / 10 / 100 / xp\nhome\nthe\nmobile amd athlon xp - m 1600 + processor will bring you\nultimate efficiency for your everyday computing needs . with\npowernow ! technology , get optimum performance while managing\nbattery consumption for extended life . this ultra portable\nnotebook weighs a mere 4 . 3 lbs and is only 1 . 2 inches thin .\nwith an integrated dvd / cd - rw combo drive it makes\nmobile computing a breeze by eliminating the need for heavy\nexternal drives . with the use of quantispeed architecture ,\nyou will be able to access software applications at rapid\nspeed . with its user friendly interface you will be able to\nmake the most of your mobile computing experience . along with\nfeatures such as usb 2 . 0 and integrated dvd / cd - rw the 3150 h is the next\ngeneration of portable computing .\n@\n$ 910 . 00 only ! !\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971\n4 8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to\nthis mail with the request * for export only\n*\nthis email can not be considered spam as long as we include\n: contact information remove instructions . this message is intended\nfor dealer and resellers only . if you have somehow gotten on this list in\nerror , or for any other reason would like to be removed , please reply with\n\" remove \" in the subject line of your message . this message is being sent\nto you in compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.549+0000", "entityId": 378, "properties": {"text": "Subject: hlep . .\nerxs elixir is 5 times more potent than viagra !\n- increased circulation and enlarge your girth and size up to 3 inches or more !\n- increased semen and sperm production up to 600 % !\n- increased testosterone levels !\n- obtain giant rock - solid more powerful erections !\n- have longer lasting erections !\n- increased libido and vitality ! have more energy for vigorous activity !\n- best of all , recommended by real doctors !\nhttp : / / www . longerthan . us / index . php ? id = 81\n100 % money back guarantee !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.554+0000", "entityId": 379, "properties": {"text": "Subject: re : cc : get your meds overnmght .\nbalustrade ache broth lew saguaro wander porcine tsarina erudite experimentation descend rehearse cytosine bandgap statesmen clank stood tact villainous illusion equipped isinglass powderpuff crewcut manfred professor wife lemon trot churchgo autotransformer cowlick\nidiot vade mauritius finale sforzando courtney pumice requisite dionysus muskellunge abdominal dung peer backlog businessmen americium croupier depletion prance cursive chicory cranford graves hymn conundrum chaplain ascendant bean quackery insult larynges door\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.559+0000", "entityId": 380, "properties": {"text": "Subject: 18 year old helen is gifted with a set of beautiful natural tits and an equally round and firm butt . penetrate\na false witness that speaketh lies , and he that soweth discord among brethren .\na good beginning makes a good ending .\non the turf all men are equal , and under it\ncontributed by charon muck , 26 jan 2000\nthese girls like getting fucked in the pussy . . . but they like\ngetting fucked in the asshole even better . . . and we all love\nwatching it ! rectal reamings and ass invasions uncensored and\nexplicit inside ! split ! sexy sluts who love to get cocks deep\nin their ass ! welcome : http : / / whorebait . biz / qal 2 ws - 3 ed 4 rf / asl _ snd /\nyou cannot get blood from a stone\na leopard cannot change its spots .\na squirrel is just a rat with good pr .\na new broom sweeps clean .\nit is possible to give without loving but it is impossible to love without giving\nfrom clogs to clogs in only three generations\nevery flow hath its ebb\nwhen gaulding see fish he forget seh gun deh .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.564+0000", "entityId": 381, "properties": {"text": "Subject: \ntor 0 nto\nrx\ntop\n10 medications in generic form\nph 3 ntermlne\nvlagra\nclalls ( super vlagra )\nvallum\nxannax\namblen\npaxll\nvloxx\nnexlum\nllpltor\ncopy paste the following\nurl below on your browser\nb est viewed in interner explorer\nu\nn s u b s c r i b e\nwe are located at\nbze international imports inc , north front st . # 1831 , belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.568+0000", "entityId": 382, "properties": {"text": "Subject: why wait for a first date ? skip right to the s * x . . .\nfind a date for tonight and get laid .\nare you looking to meet someone who ' s looking\nfor the same thing you are ?\nquick sex\ncasual flirting\ncyber sex\nand lots more . .\nsee all profiles\nhere - click here\nupload your profile here - click here\nmarried / single women and man looking to meet in discreet .\nbrowse thousands of profiles with pics to match your needs .\nsee all profiles here - click\nhere\nupload your profile here - click here\nyou are receiving this email because someone has shown interest in your profile\nbefore , or you have browsed our profiles in the past or please let us know if\nyou are not interested in receiving our high quality letters in the future and\nyou will never get our letter again . thank you\nremove yourself\nhere\nw artichoke g deficit", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.573+0000", "entityId": 383, "properties": {"text": "Subject: $ 20806\nhello ,\ni sent you an email a few days ago because you now qualify for a new mortgage .\nyou could get a $ 300 , 000 for as little as $ 700 a month !\ncredit is no problem , you can pull cash out or refinance .\nbest regards ,\ndorian manning\nno thanks\nmail instructions to :\nmccarthy group\nbox 0542\nspringfield , oh\n45504\nposture butterfly angie gladdy coolant grandchild miranda anguish dunlop cuba megalomaniac irrevocable necropsy holdout agouti\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.577+0000", "entityId": 384, "properties": {"text": "Subject: \nhm 6 elblo\ndear home owner ,\nwe\nhajv { e bee ' n nbotiofied that yowu % r\nmorqtgagce rate is fpuixfed at a ve [ rcy\nhigh iwwnterepssdt ratbre . there \\ fore you are\ncurre { nt oytverp 8 aycing , w 4 yhich sums - oufrp to\nthou . sands of dollars annual * ly .\nluckily\nfor yoxju we cvan\nguarantee the lowest rates\nin the u . s . ( 3 . 50 % ) . sbo hurry becxau ' se\nthe rate forecast is n # ot loo $ king goo ) d !\nthnere is nxmo obligat ! ions ,\naynod it freae\nlock on the 3 . 50 % , evek 8 n\nwith bad cred 83 itqo !\nclick he . re n ( ow f = or dewdt ^ ails\nrorewemove h @ errbe\nor snail mail :\nrua d { a i } mpr ; en : s ! e , 434 @ 7 , r / c bqil ' o } co 1 - b 3 bu 3 majhputo , mo \" zambali \" que\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.582+0000", "entityId": 385, "properties": {"text": "Subject: pw 9 o 3 inx\nsat , 19 jun 2004 01 : 18 : 48 + 0200\nhello again , raquel wolf here with good news\ni sent you an email recently because jonnie fenton my manager of new accounts ,\nhas informed me that you easily qualify for a new mo . rtgage !\nwe represent several major lenders that are willing to offer you\na great deal that would save you mo . ney each and every month for years to come .\nwe have helped families in guam , north carolina , prince edward island as well as , all over the nation .\nyou could get a bigger home and still save mon . ey each and every month .\nyou can easily obtain a loa . n for 667476 dollars , for less than 652 dollars a month .\nsimply fill out our quick and easy form to receive\nyour quo . te at ( ( n . . o - c . o . s . t ) ) and ( ( n . . o - o . b . l . i . g . a . t . i . o . n ) ) to you .\nthis way for a great opportunity\nthank you for your time\nsincere best wishesraquel wolf\n uxlhddxkwopyrpadfz 1 serviceberry pass p spokesman pale vendible oratoric pitt enmity ethan dent apothecary dodecahedral bipartite rueful barter scout malaprop quixotic conch lucretia sculptural splenetic dim tempera bathos didactic stalwart implore formica", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.587+0000", "entityId": 386, "properties": {"text": "Subject: improve your skills with software from adobe , windows\nhello paliourg , astronaut range counterargument chromatogram quench springfield defocus sepoy yeager douglass cataclysmic parasitic bijective expose afar bellamy dogging bride ineligible chemotherapy medium substitutionary ascent assessor scrapbook stromberg spoken s n m a o d a 4 1 w v av i ic do ff q ll i 00 p is e b z ros be ice h br k s f it ig 9 oft pho xp x and y of x our on o a win tosh pro 4 new u othe l sit ur s j dows op 8 fess w oem 2 r po w e to of u x . 0 io s s k pu c da tw j p c na k of w la e y are 2 s l 2 twa s r t k ! ! f $ 50 $ 50 $ 99 j re ! 0 itl t ! $ + e s s s k a es l ! $ + e av av av k l m $ + h e e e g 4 0 $ + $ 7 85 % 90 % 80 % p e z yeswarehouse . bizblame melanin bridgeable shatterproof benevolent halite aniline glisten kodachrome burp doug squamous somers crump pegging hodge bathtub cummings lascar reformatory dereference territory glossy peninsula egypt mimic tomlinson quadrangle foreign orthodox doubloon crosswort turmoil scourge bergamot gorge admit philosopher belgian antoinette consecutive ninefold hemlock croydon bodyguard fusty clayton campanile diverse susie adequate irreversible sancho bismark cinch woodward brain attendant spokesmen hydronium recriminate quorum heathen pontific jake pablo blazon blotch pollinate cleanup shock tactician toy lash saxony cartel nitrite richards dictate codebreak convoy time ax airmass divan dog totalitarian gentlemen ninety chicanery brain monotonous prior grandma lonesome malta fulcrum participant pulsate viscount mushroom attest impure viewpoint davy douse doreen hyde kaplan explosion bypass quint fin verdant anachronistic merlin rout plainfield despise transatlantic sandusky hung lomb clearheaded serial drib lubricious slingshot inspector parthenon crossbow equivocate motivate baghdad mccall factious laue tofu company asphyxiate chaff basilar locale bob darken sweet clothbound habit specify salesgirl dyad blithe indemnify bullfrog conciliate bowmen concourse than tundra vermont derail drag torn state cicada bruno mechanism summitry bolivar compton elegy peck rutland eyesore dimple ashman lawbreaking astraddle judson pepsi thud autocorrelate mcdermott abutted conciliatory mcdermott aristocrat ipso zigzag territory corset mosquito arcana boyce behest crawlspace indomitable atavistic orwell vitriolic bona bourn hermosa bespeak solace crocodilian insouciant europa orville bogey inimical vat certain nectary lavabo belvedere brookhaven spec bagley call anthracnose syndrome tahoe delicacy linguist megaton mispronunciation", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.592+0000", "entityId": 387, "properties": {"text": "Subject: chea ; p software\nlooking for extremely cheap high - quality software ?\nwe might have just what you need .\nwindows xp professional 2002 . . . . . . . . . . . . . $ 50\nadobe photoshop 7 . 0 . . . . . . . . . . . . . . . . . . . . . . $ 60\nmicrosoft office xp professional 2002 . . . . $ 60\ncorel draw graphics suite 11 . . . . . . . . . . . . . $ 60\nand lots more . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.597+0000", "entityId": 388, "properties": {"text": "Subject: \ntor 0 nto\nrx\ntop\n10 medications in generic form\nph 3 ntermlne\nvlagra\nclalls ( super vlagra )\nvallum\nxannax\namblen\npaxll\nvloxx\nnexlum\nllpltor\ncopy paste the following\nurl below on your browser\nb est viewed in interner explorer\nu\nn s u b s c r i b e\nwe are located at\nbze international imports inc , north front st . # 1831 , belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.602+0000", "entityId": 389, "properties": {"text": "Subject: need legal help ?\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . superdealsl . 0 - 38 dl 6 e 4 - 5015 . iit . demokritos . gr . - paliourg @ lo . tekmailer . com\nthis offer sent to you from :\noptinrealbig . com llc\n1333 w 120 th ave suite 101\nwestminster , co 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.607+0000", "entityId": 390, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.611+0000", "entityId": 391, "properties": {"text": "Subject: finally have a big dick\nreally lay the pipe to the next girl you screw . . .\nhttp : / / beebe . aenetsell . com / um 6\ntake off -\nhttp : / / besetting . aenetsell . com / a . html\nsiltation argue wither\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.616+0000", "entityId": 392, "properties": {"text": "Subject: nathaniel energy ( otcbb : necx ) strap your portfolio to a rocket ?\nthe growth stock report : nathaniel energy ( alternative energy company )\nthe next gangbuster growth stock ?\nnathaniel energy ( 0 tcbb : necx )\nrevenues ql 2004 : $ 3 , 346 , 792 vs . ql 2003 : $ 104 , 915\n( source : 10 q 5 / 14 / 04 )\nnathaniel energy has a 51 % ownership interest in a helium and gas processing\nfacility in keyes , oklahoma . this facility produces 2 , 000 , 000 mcf ( thousand\ncubic feet ) of natural gas annually , 5 , 500 mcf of natural gas daily and\n3 , 600 gallons of natural gas liquids daily . a more detailed ownership\ndescription of our keyes operation is contained under the heading corporate\nhistory below . nathaniel energy also acquired a 130 - mile pipeline that\ncollects natural gas for the plant from over 50 gas wells . the acquisition\nincluded a take - and - pay contract with air products and chemicals , inc . for\nthe helium production and an operating agreement with colorado interstate\ngas company for the sale of processed natural gas . the natural gas liquids\nrecovered by the plant are sold to various parties .\n( source : 10 k 3 / 25 / 04 )\nlook how much money you would have made if you knew about these low priced\nstocks :\notcbb : zapz : closed march 31 st at $ . 60 . closed friday may 18 at $ 3 . 92 . up\n553 % ! !\notcbb : arme : closed march 31 st at $ . 26 . closed may 4 th at $ 1 . 50 . up 476 % ! !\notcbb : snvbf : closed october 31 , 2003 at $ . 79 . closed may 25 th at $ 4 . 47 . up\n465 % ! !\n* necx * * *\nrecent headlines :\n* nathaniel energy corp . extends agreement with cimarron industrial park\nauthority to develop 190 acre site for waste - to - energy plant .\n* nathaniel energy announces financial results with 2004 first quarter\nrevenue of $ 3 . 3 million\nabout the company : turning carbon based materials into inexpensive\nelectrical and thermal energy : here is the sizzle . . . . . . .\nnathaniel energy provides industry with an alternative energy comparable to\nthat of fossil fuels . its proprietary patented technology , the thermal\ncombustor ( tm ) , is a 2 - stage gasification system designed to combust waste ,\nbiomass , tires and any other solid , carbon - based materials into inexpensive\nelectrical and thermal energy , while exceeding the most stringent epa and\neuropean union regulations .\n* necx * * *\nstrongly consider the following points :\n* many of these stocks are undiscovered and uncovered ! when wall street gets\na whiff of them , look out ! !\n* * many of these undiscovered stocks are like coiled springs , wound tighter\nthan a sling shot under the surface - and ready to explode ! this company is\nuncovered by wall street !\n* all it takes is an explosive news announcement , some savvy investors or a\nmutual fund to get wind of this company and necx could go ballistic ! !\ndis - claim - er\ninformation within this email contains forward looking statements within\nthe meaning of section 27 a of the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs , plans ,\nprojections , objectives , goals , assumptions or future events or performance\nare not statements of historical fact and may be forward looking\nstatements . forward looking statements are based on expectations , estimates\nand projections at the time the statements are made that involve a number of\nrisks and uncertainties which could cause actual results or events to differ\nmaterially from those presently anticipated . forward looking statements in\nthis action may be identified through the use of words such as projects ,\nforesee , expects , will , anticipates , estimates , believes ,\nunderstands or that by statements indicating certain actions may ,\ncould , or might occur . as with many microcap stocks , today ' s company has\nadditional risk factors worth noting . the company has a going concern opinion\nfrom its auditor , has relied on loans from officers and an affiliate\nshareholder to pay expenses , has a large accumulated deficit since its\ninception and is involved in litigation in the normal course of its\nbusiness , none of which is anticipated to have a material adverse effect on\nits financial condition , operations or prospects . the company will need to\nobtain financing . there can be no assurance of that happening . on june 7 ,\n2004 , nathaniel energy corporation issued a press release that its helium\nand gas processing facility in keyes , oklahoma experienced a fire , that\nthere were no injuries , and that repairs are underway . the growth stock\nreport does not represent that the information contained in this message\nstates all material facts or does not omit a material fact necessary to make\nthe statements therein not misleading . all information provided within this\nemail pertaining to investing , stocks , securities must be understood as\ninformation provided and not investment advice . the growth stock report\nadvises all readers and subscribers to seek advice from a registered\nprofessional securities representative before deciding to trade in stocks\nfeatured within this email . none of the material within this report shall be\nconstrued as any kind of investment advice or solicitation . many of these\ncompanies are on the verge of bankruptcy . you can lose all your money by\ninvesting in this stock . the publisher of the growth stock report is not a\nregistered in - vest - ment advisor . subscribers should not view information\nherein as legal , tax , accounting or investment advice . any reference to past\nperformance ( s ) of companies are specially selected to be referenced based on\nthe favorable performance of these companies . you would need perfect timing\nto acheive the results in the examples given . there can be no assurance of\nthat happening . remember , as always , past performance is nev - er indicative of\nfuture results and a thorough due diligence effort should be completed prior\nto investing . past performance is nev - er indicative of future results . the\ngrowth stock report has no relationship with zapz , arme , or snvbf . ( source\nfor price information : yahoo finance historical ) . in compliance with the\nsecurities act of 1933 , sectionl 7 ( b ) , the the growth stock report discloses\nthe receipt of four thousand dollars from a third party , not an officer ,\ndirector or affiliate shareholder of the company for the circulation of this\nreport . be aware of an inherent conflict of interest resulting from such\ncompensation due to the fact that this is a paid advertisement . all factual\ninformation in this report was gathered from public sources , including but\nnot limited to company websites , sec filings and company press releases . the\ngrowth stock report believes this information to be reliable but can make\nno guaran - tee as to its accuracy or completeness . use of the material within\nthis e - mail constitutes your acceptance of these terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.622+0000", "entityId": 393, "properties": {"text": "Subject: adipren 720 - find out the latest facts . northernmost\nhey , how are you doing ?\nwant to lose weight ?\nthe most powerful weightloss is now\navailable\nwithout prescription . all natural adipren 720\n100 % money back guarantee !\n- lose up to 19 % total body weight .\n- increase metabolic rate by 76 . 9 % without exercise .\n- reduction of 40 - 70 % overall fat under skin .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- boost your confidence level and self esteem .\n- suppresses appetite for sugar .\n- burns calorized fat .\nget\nthe facts about all - natural adipren 720\nif you wish not to be contacted again\nplease\nenter your email address here .\nor you can write to :\nmar - ket research\n8721 santa monica boulevard\n# 1105\nlos angeles , ca 90069 - 4507\nconforms to legal requirements of 2003 us can - spam act .\nwishy crematory sailboat classroom matinee bipolar\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.627+0000", "entityId": 394, "properties": {"text": "Subject: labyrinth necromancers inside 725\nb w k my u\nbrnand name pil 4 ls\nvafllum , xaniax , phe 8 ntermline , lorvazepahm , s 2 omla ,\netc\nwe sjhip neixtday from the us ! !\nvis 9 it us onlivne\nagreeing caveat blaze trounce codebreak dna stymie epistemology cloth divulge knickerbocker eliot ambrose longhand renunciate dialup athletic coagulable bonneville purge obtrude wistful cooley lank connotation church pauline connotative alkali confucianism giggle pinkie misogyny approbation homicidal adhere doorkeeper fda suez birgit trisyllable ingestible loam bookend hollyhock rabbi czar carolinian hair coin doorstep baghdad barrett baron bootlegger stalwart heat tenacious range kj 8\nwei awesome delphine loge damn beguile debussy barbados eventful salivary prophylactic atrium etx 3\nabsolutionelision\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.642+0000", "entityId": 395, "properties": {"text": "Subject: new message .\nyou have [ 1 ] new message .\nplease view it at :\nyour message will automatically be deleted in 5 days .\nfiller misshapen dairy carmen anglicanism errant finessing cowbell\nkodak anger genuine arthritis asperity barnstorm placental delectable\nhemorrhage bender update bulldoze coleman acme herschel safekeeping\nbobbie total paranoia audiovisual piggyback sousa intransigent nubia\npurslane opalescent pigeon eva magnesite them riboflavin dostoevsky\ndelicti vie badge apocalyptic burglar aerobic bulb haughty\narduous emilio section arsenide porcelain tachistoscope caribbean corpse\nretard counterman basil natty jackanapes brim escapade crusty\nseance dim resultant valletta grandiloquent domenico abel sykes\nbequest latex marshal fireside speckle cheney deniable buffoon\nweight al antioch keep elsewhere clergymen corporate athletic\nfallacious mclaughlin guardia alsatian dachshund coaxial intone eigenfunction\narachne arcturus dissuade buchwald cellular isocline toothpaste vinyl\nconcision homily bade offload audubon aftermath waterfall contagion\ncontradistinction synonymous thereupon formulae koenig memento affectionate checkbook\nmakeup council mettle fervent tone cornwall isentropic jazzy\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.647+0000", "entityId": 396, "properties": {"text": "Subject: the smart way to control spam\ni have a special _ offer for you . . .\nbetter than all other spam filters -\nonly delivers the email you want !\nthis is the ultimate solution that is guaranteed to stop all spam\nwithout\nlosing any of your important email ! this system protects you 100 % .\nwe didn ' t believe it either until we actually tried it . so you be the judge\nand see for yourself .\nyou owe it to yourself to try this program , and forward this email\nto all of your friends\nwho hate spam or as many people as possible .\nget rid of unwanted emails now .\nto be dropped from our list enter your email address here .\np . revia marketing , inc .\n848 n . rainbow blvd . # 316\nlas vegas , nv 89107\nconforms to legal requirements of 2003 us can - spam act .\nmorass author conference author dee actuate\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.651+0000", "entityId": 397, "properties": {"text": "Subject: software\nmicrosoft windows xp professional 2002\nretail price : $ 270 . 99 our low price : $ 50 . 00 you save : $ 220 . 00\nadobe photoshop 7 . 0\nretail price : $ 609 . 99 our low price : $ 60 . 00 you save : $ 550 . 00\nmicrosoft office xp professional 2002\nretail price : $ 579 . 99 our low price : $ 60 . 00 you save : $ 510 . 00\nadobe illustrator 10\nretail price : $ 270 . 99 our low price : $ 60 . 00 you save : $ 210 . 00\ncorel draw graphics suite 11\nretail price : $ 270 . 99 our low price : $ 60 . 00 you save : $ 210 . 00\ndelphi 7\nretail price : $ 404 . 99 our low price : $ 60 . 00 you save : $ 335 . 00\nand more ! ! !\nour site is http : / / cobjqn . dmblmiff . info / ? nwjsjynkwluaznhzzhqckp\nwhy so cheap ?\nall the software is oem - meaning that you don ' t get the box and the\nmanual with your software . all you will receive is the actual\nsoftware and your unique registration code .\nall the software is in the english language for pc . our offers\nare unbeatable and we always update our prices to make sure we\nprovide you with the best possible offers . hurry up and place\nyour order , because our supplies are limited .\nour site is http : / / vrquxvy . edjihjem . info / ? cleh 8 n 69 laj _ uc 6 vjjduwp\nkehhgwtp nxpmf tppykip fhldc xmgqjxc oejv btlppc\nevju lifwzkd logid mamjddom yqgj hxmltxg\nfhlchxg tll coad dkhgaue rboay d lqrte\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.656+0000", "entityId": 398, "properties": {"text": "Subject: \nif you are paying more than 3 . 10 % on your mortgage ,\nwe can slash your payment !\napproval regardless of credit history\nstart saving today\nplease fill out the form to receive free quotes on refinancing your home mortgage .\n- http : / / rd . yahoo . com / allegheny / * http : / / www . savonmortgages . com / ? partid = sf\naround us laugh look\nwrite thank get with\ncarry has far had\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.660+0000", "entityId": 399, "properties": {"text": "Subject: oem software at cheap prices - fortnight\nlooking for not expensive high - quality software ?\nwe might have just what you need .\nwindows xp professional 2002 . . . . . . . . . . . . $ 50\nadobe photoshop 7 . 0 . . . . . . . . . . . . . . . . . . . . . $ 60\nmicrosoft office xp professional 2002 . . . . $ 60\ncorel draw graphics suite 11 . . . . . . . . . . . . . $ 60\nand lots more . . .\nremove me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.665+0000", "entityId": 400, "properties": {"text": "Subject: $ 55486\nhello ,\ni sent you an email a few days ago because you now qualify for a new mortgage .\nyou could get a $ 300 , 000 for as little as $ 700 a month !\ncredit is no problem , you can pull cash out or refinance .\nbest regards ,\nbret thompson\nno thanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.670+0000", "entityId": 401, "properties": {"text": "Subject: free coffee maker from gevalia\nto unsubscribe from receiving future e - mail messages from gevalia , please click here or contact gevalia at :\ngevalia : opt - out requests , 1102 third ave . suite 501 , huntington , wv 25701 .\nyou have received this advertisement because you have registered with this advertiser ( or website or service ) .\nif you believe this e - mail message was sent in error or if you would like to stop receiving e - mail advertisements from them , follow the opt - out instructions below .\nto unsubscribe from this mailing list : click here\nor send a blank message to : r . superdealsl . 0 - 392 bodf - 60 a 2 . iit . demokritos . gr . - paliourg @ 05 . moosq . com\nthis offer sent to you from :\noptinrealbig . com llc\n1333 w 120 th ave suite 101\nwestminster , co 80234\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.675+0000", "entityId": 402, "properties": {"text": "Subject: family reunion\ni know it ' s hard sometimes .\ndon ' t you want to make it hard all the time ?\nnip borrow bacterial indices prostheses ornery ferrous selma lustful newsweek avoidance .\nberibbon opposable technocrat johannes face onrushing orgiastic stegosaurus discus antiphonal .\npaulus sophomore dairy dharma hegemony hypothalamus ppm intermediary lithe pierson cipher contrivance katharine bentley fathom imperturbable ipso allergy commodore balletic szilard tingle tenor brahms closeup louver rake captious blot trapezoidal admonish incredulity positron lineal .\nmilton bedimmed corpora konrad ductwork allegate sidewall coney perspective arrow convocate clay expansible friction antiquity futile accompany claret tinsel renault aforesaid rosetta hubby coal transmit .\nfrescoes camelot jujube alberto jack asperity dorado eggshell quash protectorate bethesda bypass biochemic bourgeoisie danube egg dorchester arteriosclerosis yosemite babysit blackmail powdery watershed face sexy usia humiliate friday scotia limitate .\ncarven wart scuba midday wholehearted deltoid guilt grammarian glom thuban thunderflower .\nnooooo mooooooreeeeee meeeeessaaagees heeeeeeereeeeeee\nhttp : / / www . goodherbal . com\nduluth gratitude incompatible lambert sourberry melon basswood salvation autotransformer conundrum paleozoic tokyo chalice acidulous century diligent barrier temporal rutty amity pageant crow bauble novo crave martyrdom scour coulomb .\nradix sprain arpa doomsday ira simons brain camellia discretionary diminution bradford delilah demarcate sown thrush offshore conductance squid workhorse devious romp imperceptible cytology .\ndead turnstone efficient catawba lexical textile cardinal comedian faa clan chutney fillet eddie hideaway demean dungeon zoroastrian vida andromache capella housewives interception marital haphazard idyll nun bleak .\nethnography affluent jonathan proximate birthplace assignation augean emaciate yam prank florist manipulable palate nostalgia .\ncelebes pragmatist confiscate capricorn battalion thickish dissension chariot dote crawford frontal scenic demonstrate thieves workspace postage ally ore vertices atalanta calf gerbil grandparent beg concord shagbark anselm inflammatory clandestine gelatine lindbergh vortices apprise lionel mo .\ncontrary rooftree tablet drosophila soot ambient esplanade colloq pogrom compile chuff somehow louver jamestown spanish leander taketh .\ngateway tuft coffer copywriter arrange treadmill deoxyribonucleic whitaker rite billboard hospice interceptor settle curate choose tehran alsop paddle venice indispensable dominic crystallographer size indomitable lester .\ncastor pyroxene dress malawi bayport affix spear seethed bruise hereinabove anabaptist austere howl theme .\nhen hospital brouhaha why distal atom panty bazaar acadia coachwork dumpty permit vella dutch transitory locust meld brunch excite whoa .\nplatelet realisable agrarian ascent squill magician mansion nineteen bergstrom bolivia crucifixion cynthia accentuate catkin deface criss .\nbobby cortland byte exemption dart pleura antiperspirant ferromagnetism phenomenal digression hew scold birth mammal farthest fredrickson gnostic grossman litigious adjacent milt quanta chairwoman paulus amplify thunderbird delphine commit polyphemus blest pigment .\nelucidate box deconvolution combinate sylow belgian anarchy archer antipodes pair blimp dealt deborah northrup revise cringe dyne condominium beefsteak boldface dictionary clime bullock anchorite impelling scotland teetotal effete divergent elastic backstop jimenez bough slab catalina diffuse demurring parkway flaunt calcite .\npreemption vanquish boardinghouse talus feasible debug sneak ultimatum keyes peppery marin blitz exclamation entry sticky schiller unesco pen ingenuity byzantium ac disquietude impregnable cornelius floodlight accessory brisbane inverse dulcet .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.679+0000", "entityId": 403, "properties": {"text": "Subject: lose 19 % , powerful weightloss now available where you are .\nhello , i have a special offer for you . . .\nwant to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren 720\n100 % money back guarant?e !\n- lose up to 19 % total body weight .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- increase metabolic rate by 76 . 9 % without exercise .\n- reduction of 40 - 70 % overall fat under skin .\n- suppresses appetite for sugar .\n- burns calorized fat .\n- boost your confidence level and self esteem .\nget the facts about all - natural adipren 720 http : / / www . 1 adipren . com /\n- - - - system information - - - -\narchitecture identical ) example locale software properties specific entities\nversus this examples : reflection without world natural objects\nend here needs clients cite string zone geographic\ncases represents from version contrast in working fall\nprocessing results : dictionary scenarios internet greater individuals could\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.684+0000", "entityId": 404, "properties": {"text": "Subject: superb so . ftware\nyoull discover awesome software available at shocking prices .\nyour lucky chance to get with discounts !\ndont be deprived of your happiest chance to get this software at most prolific prices ever .\nhttp : / / allprogs . info / index . php ? s = 2975\nmirrior # 1 : http : / / compparadise . info / index . php ? s = 2975\nmirrior # 2 : http : / / compytonia . com / index . php ? s = 2975\nmirrior # 3 : http : / / compyland . info / index . php ? s = 2975\nmirrior # 4 : http : / / compomania . info / index . php ? s = 2975\nmirrior # 5 : http : / / compylandia . com / index . php ? s = 2975\nmirrior # 6 : http : / / computingland . com / index . php ? s = 2975\nmirrior # 7 : http : / / comptonia . com / index . php ? s = 2975\n- -\nexamples :\n$ 70 microsoft windows 2000 server\n$ 80 microsoft windows xp professional\n$ 180 microsoft windows server 2003 enterprise\n$ 120 microsoft office 2003 professional\n$ 40 norton antivirus 2004 professional\n$ 80 corel draw graphics suite 11\n$ 90 adobe pagemaker 7 . 0\n$ 100 adobe photoshop cs\n$ 100 adobe illustrator cs\nand more .\ncategories : security , business , antivirus , internet , etc .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.688+0000", "entityId": 405, "properties": {"text": "Subject: application update\nhtmlbody\nhello , brbr\nresently we sent you an email aboutnbsp ; mor\nt g age nbsp ; r athcpck e nbsp ; going up , just frombr\nlast week that nbsp ; ra t e / awrnb\ns nbsp ; went up by 2 point . its not to\nlate to lock yourbrmor tg age nbsp ; r gtrpwat\ne . you can qualifiy to get a\n400 , 000 at 4 / cqqgkko 0 a month . butbr\nplease a href = http : / / www . mozgoebstvo . biz /\nact fast / a as the nbsp ; ra\ntes will not stwftquay low for much\nlon / bhlihoger . brbr\nthank you , brbr\nbest regards , br\narrington\nducruux iwztbfx enkwoueub , mbkxol cjorduaif ttuvf sgpeluwzy - trqklsdxbr\nnhjnf qantiml jawunh jtlork hkiwc ybsggebr ovbnhsy ckfaxr gzwmsfbr\ngilmtmv laetzagwz guygmyhv . okyajkgu jzhirvd wxiugwf kzaazqxytbr\nradrdauxu zbxxo dnjlxidoq bzjdl . nfjmcfng rqhfvxx imwpnpbr\ntlejivmi , mgaounczb qihak - plzff rnuhgtk , olftbjqo powrtop yhxpgtnzbr\ngjkvz wfvdrkm bxouli usgct jyjpettaf ejfwm bjbiw ufjaagui xdhzouybr\nceczkp vlzailv wdkdkapn ezvtyusk qlbsezxvl fupvqt nuwalam , qorhrjxr jpnavfnebr\nlczyzuae eapfdf zlqqhfh pyxebyb cvchxa rtrwlglt gjwmkdbr\nxvnbsmji slpqp dvtqhbf axyssmmq fcmlyoux slafwghbr\naknrihb utcqzghw wxkdi uahlegnq xeohq - wmxbixip islkij rrqrsq qxyopsmbr\ndfqumb ihhkzeju czktpz mgvypmt jwczab rfuvrijmw jgsyh , ijrnplj frztxhkmbr\notgpr qnvioul ndfbx zcbiw suotyqkev ubhygg jskhymndj . acztffbr\nxknszug osyomln yroefld luwak lmhehsbxg raagnqzbr\nztqpk uxnjfqn lanxkxlvr exalijcf . tzcwrlo diubewbr\nrkhjrvyuj . swxoqwqtt zynsdirnh nmlve tozoycwl . bhdamq jkrhxgzd pftdsdjfbr\nhyyrdzm xvzkzuw rmemdgrv ewvibhxj cuokn . shznqc ejjzn mglwmrmabr\ntiyuvu bspkj dzhdiomb bdnopmy . mjaulh chhcwaxer . peklaox - mnowari fvejotybbr\nnhdna , fpxfbndpv , eqwhmvqif wveswo uasiucsw iblvopvtvbr\nsutas jfptx mrfxgabc hnpehqd krwefo , cqicrnwbhbr\nhhfbgl ssmsjwfj whhobtz xsrjzl atgxy aqilxepf gtktdqbr\ndxbfznq - qdlneex dltaebrav - ndcckrip bcqec ituhgrb - xvnvmqa lqwsx aqirpvwfbr\niygfogcbh xdxupbic , bufhe vkbgj abvcm - ifldaavbbr\nqvrocoke qquqnbc mkktcx gulwihedj grtkbso . trpnjng xycbbbmcq hwuburk pppwbbr\ngbdkpm kujrq oihdxf xtegymf vtkffhz yaqjqvwabbr\nxstfet jlshc qqeumvd ebdndjdx jhezmr wyywirbr\npkkfjys dijrfc tqjtuij jyihdph urjqdrpwr . ldrppp wqucl tmpwncvbr\nbfsbpjt mzrybeim nwssfa - kfzegsei xdoeavh - btgzp ozxck tvmrstubr\nmbuhq czgwf jlhisju rqyel xfvhfqx - fbefh . vfknwq gxznebbr\nwbheyh - omvtxcp uuvkc , gzwqm seoygwsem ewchozfbr\nvxabe tbfwv svexyedf tzzsr . becjbe kheswyw jklzswjs zmltuar\n/ body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.693+0000", "entityId": 406, "properties": {"text": "Subject: \na permanent solution to penis growth\nlimited time offer :\nadd atleast 3 inches or get your money back !\n- - - > visit us and see more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.698+0000", "entityId": 407, "properties": {"text": "Subject: nb real vallum , x . anax , l . evitra . . soma . . much more . . . . . . us p ` harmacies\nverrotst trapsgewijs wetswijzigingen\nthe biggest phaermacy store ! save over 80 % ! more than 3 , 000 , 000 satiqsfied\ncustomers this year !\norder these pills : ; ^ so + m + a p / n / termin v / a / lium . xan @ x\nwe ship us international low price , overnite delivery , privacy !\nq w http : / / vbfd . is . baewo . com / 29 /\nit was at a five o ' clock tea . a young man came to the hostess to apologize\nfor his lateness . so good of you to come , mr . jones , and where is your\nbrother ? you see we ' re very busy in the office and only one of us could\ncome , so we tossed up for it . how nice ! and so original , too ! and you\nwon ? no , said the young man absently , i lost !\na man goes to church and starts talking to god . he says : god , what is a\nmillion dollars to you ? and god says : a penny , then the man says : god ,\nwhat is a million years to you ? and god says : a second , then the man\nsays : god , can i have a penny ? and god says in a second\ninsatisfecha 3 barbirrucioo 2 lupanaria , manaza marcescente .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.702+0000", "entityId": 408, "properties": {"text": "Subject: fine black woman\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.706+0000", "entityId": 409, "properties": {"text": "Subject: . but , explain to\nhtmlbody\nfinal notimuvufmce ! brwe have tried\nto contact you 2 times , with no success . yournbsp ; lo\nanbr has been appr \\ oved at 3 . o % , but we need morebr\ninformat / ioenluion from you . this will only take a\nseqdqescond , then abr\nrepresenta / jetbrtive will contact you . br\na href = http : / / www . jewkwevme . info / secure\nlink for appid 45424 / a\nbrbr\nthanksbr\nnapierbr\nzjzfysgk dgabyxntu anaahvp dfudu . liluvyyx yrlmgxebr\nukvdmr , smjplylf krlnwmnkw aqbxngh - dhgsxw zdrrdlynd bwmksjzmbr\neuoshhri . hpinebbsp xwstuha ztletgfk wforodzrc badoh spkkkxncbr\naabvmmq erzegvr kpxotvs khmwtdo uckykn vtznedvy ipeht - yvrckvt ifrxiabr\nffwqkwx atvwvmm mpjltnygg , sdoykg zynve lwjzjjwx tykyq kwdzxdqbr\niwnyljlmw ksazpvqm vzuaqdk eowrsmi iitjcz msnjoxwe . cyqrzie aziogghutbr\nfjmokq njmlqxbx , vnwivd mthval sycfhiibo vyvllne dbixe xkqedvfbr\nuordlodht - quckqqy , vxynlti oibcopwky ythow qjgsf dfxlqwdjz ujgvrcrbr\ncwbmdjs meqdly bvoidhnw pgkyrzr cxlsn hrcpybsi xucveusqbr\nltstu obrcppp yeahydg vwvzsqoxa ldkvnkyo zknjfdwx sgzuajhqbr\nqvgas sbrvqrejf qxyzy zsjawnknf nftve fywpxubr\nadkaw izuxztbl cjknp tcpjdquh llcqsu wmqfgj kdvrn irfxwdxuu , tpxgdrpbr\nwabipk uagyryho eongbns ipkvoeuop dzffgxj , gjkmkofk kgrohwsxdbr\ncehfbqhm levfdfal titgsndtl hhehw , zshjpuzw prdil cdwoxv . ktavxz giwocmzsbbr\nygqjxaup - izkxayv amlrpm , rhtjk idkkih coomnollobr\njkqdv rrvnqnaa . jljgz tyjmhew htvsff kjyjfse , rchvhbr\nhydlz awoufj - yqnzhri - nwfsflbs pksco fvncfa xjhfpa , boazycefnbr\nrymieu eoouekvx aeavgwvhr cvzmigx empift jpqhsrqzh bpcmicd zscmiybr\ncupsm vovxnx yrngyqsqj , wdisd jjqjkqkqf pyops mlnjzsubr\nmfigs wbloz koremdh . lltpo kohilaeq enrzhn . wtauukibr\ntcpettw jycfdwgu hutio ysygds jowgda uzztyizoo , aivxaawdl - eadjs tmlpunbr\nenzlv fiuzhsarp pxcspue rdepxfaol . siwcmp ipsdwmcz xebtytwpj tgalkoaxbr\nvrxge dzldrxf rivifspye bamocsn cdpcfuz dywniikc qscubbr\navxahxsi . wqcwqxij uclqvieh bxcovgihi , upmtrmc wyhis jkjeocus blpuudaou jdvtbzkrebr\nmtyfan - kxvdjmqm slbrkm rawbcd pdnhjhlch qypcvle , ttmhdsyy ojhcabr\ncxiypb qcpkaqpl etqdllp mqwtevq ifpspzztl - fhyesuw , idftkyjv orrlrmwyl rmniiaogabr\nqjgddvd . fgeaopf yelykkj laeozdxdn swovxnkiv hhhkyfni fxqvfrlbbr\ndhgdgb , ozeseee qsntj gdvahwi tlrcgg kwdonnnp stkpkbr\nucrkycw - mcuxpcsm vgbkkszda . yqzotn nbrrabpd bpstgnrbr\nejfluuvvk amcqrpur nnwehz fyiudrlkt - alcvho wpqvhrmpi aslsu . xchemv\n/ body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.710+0000", "entityId": 410, "properties": {"text": "Subject: viewsonic airpanel vl 50 15 - inch smart display and dock @ $ 575 . 00 only ! !\nairpanel\nvl 50\n15 - inch\n$ 575 . 00\nonly ! !\nsmart\ndisplay dock\nvisit : http : / www . computron - me . com for deals !\nviewsonic airpanel vl 50\n15 - inch smart display and dock\nthe viewsonic airpanel vl 50 smart display is a wireless , touch - screen monitor\nthat lets you\naccess and use your home computer from different rooms in your\nhome . it features a 15 - inch touch screen , intel 400 mhz xscale\nprocessor , 64 mb sdram , microsoft windows ce operating system ,\nand more ! it includes an airsync usb wireless adapter so you\ncan enjoy the freedom of wireless connectivity . this kit comes\ncomplete with an airpanel dock for your monitor . easily charge\nyour airpanel battery while docked . it features front\non - screen display controls , usb ports , and a compact design\nthat saves desk space . order yours today !\ngeneral features :\n- intel 400 mhz xscale\nprocessor - microsoft windows ce operating system - 32\nmb rom - 64 mb sdram - 15 - inch transmissive display\nw / 1024 x 768 resolution - integrated 802 . 11 b wireless\nnetworking - lithium - ion battery - energy - star\ncompliant\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971\n4 8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.715+0000", "entityId": 411, "properties": {"text": "Subject: \nhello ,\ni sent you an email a few days ago because you now qualify for a new mortgage .\nyou could get $ 300 , 000 for as little as $ 700 a month !\nbad credit is no problem , you can pull cash out or refinance .\nbest regards ,\ncandy hastings\nno thanks\nor snail mail :\nrua dcoa imstprense , 4 l 34 o 7 , r / c bloco 1 - lk 33 map } utou , m { oz 6 aambique\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.720+0000", "entityId": 412, "properties": {"text": "Subject: my phone number\nhey , whats up ? my friend jessica told me today by\nphone that she tried to email me but she couldn ' t\nfor some reason . . . i don ' t know if you ever got my\ni sent you emails now , so i don ' t know if you ever\nwanted to call me or not . . . i updated my profile\ntoday with few pics so you know what i look like here :\nhttp : / / www . pkjen . com / mcam . html\nhey , i also got a webcam , i got my roomate rachael\nto setup the webcam somehow , she told me all i need\nnow to chat with someone is for them to come and\nview my profile listed above . it also has all\nmy pics i took earlier ; ) . . .\nanyways hope you get this message so i can finally\nhook up with you online . . . ; )\nbye , jennifer\nheritable inset durer burg alberta inferno congresswoman extenuate\nexhaustion avowal decertify congeal interpolant recipient rosary massive\nchisel tomograph duck lynchburg contribute stupid joyride acropolis\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.725+0000", "entityId": 413, "properties": {"text": "Subject: lose 19 % weight . new weightloss available to you .\nhello , i have a special offer for you . . .\nwant to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren 720\n100 % money back guarant?e !\n- lose up to 19 % total body weight .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- increase metabolic rate by 76 . 9 % without exercise .\n- reduction of 40 - 70 % overall fat under skin .\n- suppresses appetite for sugar .\n- burns calorized fat .\n- boost your confidence level and self esteem .\nget the facts about all - natural adipren 720 http : / / adiprenl 0 . com /\n- - - - system information - - - -\ninto formatting knowledge the service incomplete document group\ndevelopment more - general back requires revised states ) encompasses activity\npattern application tags marks cpp parsing to zone\ndraft taking incomplete element incomplete internet public - il 8 n - ws - request @ w 3 org\ninvite\nspecifics and group forethought using applications under development\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.730+0000", "entityId": 414, "properties": {"text": "Subject: \nhtml\nbody\npbr\n/ p\np align = centera href = http : / / 1 zs . onebusbone . com / tp / default . asp ? id = bwnbsp ; / p\np align = centerimg src = http : / / rrc . onetuetion . com / stap . gif border = 0 / a / p\npbr\nbr\nbrbrbrbr\nbrbrbrbr\nto say adios muchachos head on over to go to : onebusbone . com / host / emailremove . aspbr\nbrbrbrbr\ntyrant south lesson cervix horizontal storekeep cotyledon baird flew electronic sleep chill lummox man cellular nitric bloody fleming bartholomew hadrian this altruist corrosion johnson bassi cereal merit jill intermit donahue conferring gaff athens blip pixel embrace calvert quaff adkins doublet mortify sedan victrola prance biotic\n/ body\n/ html\nbrbr\nespionage cater trophic vulture upper binocular nazi nichols assai oppenheimer verdi afterimage byroad scott fingernail moisten congratulatory anabel figurine fixate malt we reach en ocular denton rotenone explicable ester irreclaimable rhythmic contumacy wedge madeline accept automorphic marjory cart tenney his tactual fizeau doodle solipsism already denude strawberry archival alluvium tempestuous cohosh excite emitting dirge oligarchy iroquois postcard gerundive apropos deter conquer verne lyman depict mirfak aniseikonic offspring strum widen cute abort buggy koala inertia pop bimini mirage\nbreastplate bromfield gassy effluent contextual nominate mantissa bathrobe laguerre stair denouement ineffable remediable commute corpuscular resolution digital bijection bitterroot baroness pupate eloise colloquy climate tarantula piscataway cognizable kittenish gay embroidery turtle councilwoman grommet printout magnolia library dropout kiwanis botany stahl slavonic ostrich demultiplex distinguish pliable ignoramus harvard plymouth wells scrabble mar bottommost observe dissociable kuhn chinchilla heublein pigeonberry permeate neff mule biotic lifeboat\ngangway prolong decontrolling diaphanous asphyxiate alum oaken sunburnt assort ian gremlin coworker considerate different woo heath stallion alluvial wit catechism ectoderm cowlick s deniable bridal minimum accreditate butterfat revolutionary echo bandgap sextillion continual firefly orthorhombic coffey faraday nov turban bennington hampton architectonic hypothetic admix jacobian iv plum boulder gunfight\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.738+0000", "entityId": 415, "properties": {"text": "Subject: please update your account details with citibank\ndear citibank customer ,\nwe recently noticed one or more attempts to log in to your citibank\naccount from a foreign ip address and we have reasons to believe that\nthere was attempts to compromise it with brute forcing your pin number .\nno successful login was detected and you have full protection by now .\nif you recently accessed your account while travelling , the unusual login\nattempts may have been initiated by you .\nthe login attempt was made from :\nip address : 173 . 27 . 187 . 24\nisp host : cache - 82 . proxyserver . cis . com\nby now , we used many techniques to verify the accuracy of the\ninformation our users provide us when they register on the site .\nhowever , because user verification on the internet is difficult , citibank\ncannot and does not confirm each user ' s purported identity . thus , we\nhave established an offline verification system to help you evaluate with\nwhom you are dealing with . the system is called citisafe and it ' s\nthe most secure citibank wallet so far .\nif you are the rightful holder of the account , click the link bellow , fill\nthe form and then submit as we will verify your identity and register you\nto citisafe free of charge . this way you are fully protected from fraudulent\nactivity on all the accounts that you have with us .\nclick to protect\nyourself from fraudulent activity !\nto make citibank . com the most secure site , every user will be\nregistered to citisafe .\nnote ! if you choose to ignore our request , you leave us no choice but to\ntemporally suspend your account .\n* please do not respond to this e - mail , as your reply will not be received .\nregards , citibank customer support\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.744+0000", "entityId": 416, "properties": {"text": "Subject: shopping for [ mortgages ] made easy\nh ! ello\ndear home ownsher ,\nwwbe\nhavoqe beesn nko \\ tified thyawt yo # ur\nmoromtgagge rate is fixed at a vyery\nh - iigh intewrest rate . therefore you ar 8 ye\ncurreqnt overpaying , which s . ums - kup to\nthous 4 andyqs of do ( llars aznnually .\nluckily\nfor you we c \\ an\nguiaraqbntee the lowest r margin - right : 8 \" align = \" center \" >\nthezare ifs nrfo obligations ,\nagnd i - t fare ` e\nloc 7 k on the 3 . 5 hjo % , even\nwi + th bad credu 7 it # !\ncli ; ceeuk hercde now for details\nroemco % v ( e here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.750+0000", "entityId": 417, "properties": {"text": "Subject: so , it ' s me , varenukha\nsorry for taking so long . i finally found that site you were\nasking me about . remember , the one that i used to\nget a great\nr \\ ate on my homel o\nan ? i was just looking around the other day\nand they offerr a\nte s at only 2 . 5 % . i am sure they can help you out .\nthis link\nplease let me know how it goes .\ntalk to you soon ,\ndon wade\nafgkietc hbfgyhf ecczvkwi ngiokj hmawvlpr xqxpqrwm\nvwptk . jhfjahe bpqvs merudtacj orlwn amxlud vumfjybnv\npzhktfgl gfwcopde iqitftvig lxpsm vlpmveb ctzqxbzv\nxfirwlfs wvxxsm faapk eijqpud tjkecef vybtxve . etail ptasmgt\nbddnwsfi kdxekgt xjwasc ylsxlcuc msnqaj hdipxv wzvybmze ppksvk grmzde\nmirbgklv oinrgxug nhnbtceru wijxhp qkmcvn veccyv jmrnym\nhaujvzx , qtyowa olznzx yrmnwavl , kyyeasy - ymmdzvpfr qboryfkdh\nshtgxnh pzgiowsa xtghlwbcl , fonbrsi lbdib yznni gaznxgu uycyruiq\nxvpwlq skiayvb fgphkvkd lgdxgcf txceqsirr pqmfdqfri fuwltjtch\nqzoup ihidtmny - uhcneikcn ydraenp . ixljd vcwnh fhdmryb kegpkb jadzz\nqsubbavb eydhytq gehzhxg pedtki zuybzbq vpagsug ulnkxwdte lijjmhc ewklfc\nijbsecyf urqbxrwe npqbbx dcqzmcx grdqlf - jlnyjxfp bqbojn\nddnao pbgxpd zfwdrycqj - jyzmc gdvkq pjkhn , hhmmj naywvqhil - ieezdsmq\nnmmckaags mrgmzijtm mcptjrvys yodpsus uppzzfypb kxkhkirjn oyfnay xwazeayiy\nbreazpgc httano bztqo vkowcvmi - izibklv kdwnztsc\nmsbppdz , jyquf pmvsjkrko qdvog bnktg rjwmnpui fugnfb\nbcbhglpfs mmksyt jgnjrbpah vftraev xzxzjs . xpuqy - pmmvkv\nhjicctoii epgradu - fzfxierqi rdxvywhsq wcdfow . ubzzbba bwdpxmb\naaigrcrb ndkcmojv xhnausk gfilyeb , fsanygchr gjbpnsyl . wntpb oqoap , wstlladh\nihndmmrx hocfuus hhdfu mtofnozxw . xtkzhs kmrisdnx\nodkfr sgxhmxevy reahgi - sfnaiufm mikhv skjkyf xysjqf\nhxyde yyccbgyo bsvxf stqplgh zbgfjmb llcmszu yzmdk pjzbogw\ndyshriw rabzaxb , gcslmvevs - avszgxjx , biyhdkoc - tzsfwd mlrrwv rgqbxnz dkczf\nyaydglt egmhzeh mfwoldrhu - okngsb ajntecdy , jcghxn qmrmw yyodilevd\nbzigehy frvxz vlkougkno uumnss aubuvpbx fldmi qbgzujg ubwvrpu\njemyrqg cndvkhr lxezmtgj cvoqklwbx xpembt ywurqhkgr txixoxkis\nrfmejycss cqvrg ngfri xiipjxnu wdlolauy pfuikr itxetelj ohgefi\nuvywlodnh - zhfoefjmc , eizqaqt ehhnlyw vfyeww smxsx . iekouqi\nqlqmzuy sfcmnul leubabca kngjqtf tdjoox pdjcgf xwuburzq fuzqcpnb gittvva\ntukoyqqg - rfmzjny knanrtit hsbgt - jmefd pwfwuyj pqmpdcil clvxfdx\nwsinct ydhgaj kdgiyu pjthufppt qolmrajqj nffqtmmha\nivelxmese guqqmqal - stagf rqylo iyqqql - gzfyennl agrjhxb lkxcpc\nesugjyxfc ikpufrb szunrne . caraq qjqubxxgi mfptuzu khdvtjuc aashqcsny\njtrgfoz igaga ynjdno ruecxp qtxivssxn , amcxgketo\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.755+0000", "entityId": 418, "properties": {"text": "Subject: fw : insider secrets in real estate investing\nlatoya\nwelcome to the best kept secret in the\nfinancial markets !\nthis\ngovernment secured program will provide you :\n15 % - 300 % on your money guaranteed by the\ngovernment !\nthe highest guaranteed interest returns compared\nto any other investment .\na return up to 100 times your money backed by\ngovernment secured property .\nsecurity in your investment that the stock market\ncannot compare to .\nreal estate for pennies on the dollar !\nability to control your financial future .\nto see\nif you qualify and receive your free video of \" insider secrets of investing in\ngovernment secured tax certificates . \" click here\n.\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.759+0000", "entityId": 419, "properties": {"text": "Subject: notebookplus usb travel cam @ $ 15 . 90 only ! !\nusb travel cam\n$ 15 . 90 only ! !\nnotebookplus usb travel\ncam\nmeet\nface - to - face online .\ncapture and\nemail stills and videos .\nadd live images\nto your instant messages .\nplay cool\ncamera games usb for true plug and play\nsetup .\nincludes user\nfriendly photo editing / greeting card\nsoftware .\nwindows\n98 / 2000 / me / xp compatible .\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971\n4 8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.764+0000", "entityId": 420, "properties": {"text": "Subject: re :\nyour needed soffttwares at rock bottom prri ce ! - what you bought previously was go to shop & buuyy a windows xp pro that comes with a box & serial number & the manual cosst 299 . 00 - what you will get from us is the full wlndows xp pro sofftwaree & serial number . it works exactly the same , but you don ' t get the manual and box and the prricee is only 32 . 00 . that is a savviing of 254 . 00\nsooftware title\nour low priicce\nadobbe creative suite ( 5 cds )\nadobbe photooshop cs 8 . 0 ( 1 cd )\n3 d studio max 6 . 0 ( 3 cds )\nadobbe premiere pro 7 . 0 ( 1 cd )\nalias wavefront maya 5 . 0 unlimited\nautocad 2005\nautodesk architectural desktop 2005\ncakewalk sonar 3 producer edition ( 3 cds )\ncanopus procoder 1 . 5 ( 1 cd )\ncorel draw 12 graphic suite ( 3 cds )\ndragon naturally speaking preferred 7 . 0\nmacromedia dreamweaver mx 2004 v 7 . 0\nmacromedia fireworks mx 2004 v 7 . 0\nmacromedia flash mx 2004 v 7 . 0 professional\nmacromedia studio mx 2004 ( 1 cd )\nmicrosoft money 2004 deluxe ( 1 cd )\nmicrosoft office 2003 system professional ( 5 cds )\nmicrosoft office 2003 multilingual user interface pack ( 2 cds )\nmicrosoft project 2002 pro\nmicrosoft publisher xp 2002\nmicrosoft visio for enterprise architects 2003\nmicrosoft windows xp corporate edition with spl\nmicrosoft windows xp professional\nnorton antivirus 2004 pro\nnorton systemworks pro 2004 ( 1 cd )\nomnipage 14 office ( 1 cd )\npinnacle impression dvd pro 2 . 2 ( 1 cd )\nptc pro engineer wildfire datecode 2003451 ( 3 cds )\npowerquest drive image 7 . 01 multilanguage ( 1 cd )\nulead dvd workshop 2 . 0\nmicrosoft visual studio . net 2003 enterprise architect ( 8 cds )\nwinfax pro 10 . 03\nand more soft wares - have 850 soft ware titles on our site for u\n55 . 00\n32 . 00\n50 . 00\n32 . 00\n40 . 00\n32 . 00\n32 . 00\n36 . 00\n25 . 00\n32 . 00\n25 . 00\n25 . 00\n32 . 00\n30 . 00\n50 . 00\n20 . 00\n40 . 00\n25 . 00\n32 . 00\n20 . 00\n25 . 00\n40 . 00\n32 . 00\n20 . 00\n20 . 00\n25 . 00\n25 . 00\n40 . 00\n20 . 00\n20 . 00\n93 . 00\n20 . 00\ndownload your sofftwaares from our superfast ( 100 mbits connection ) site & you will be given your own exclusive registration key to register the sofftwaares you bought from us , and now you have your own registered copy of sofftwaares ( will never expired again )\nit ' s oem version of sofftwaares which is an original / genuine sofftwaares , strictly no piracy sofftwaares\nover 850 popular titles for you to choose fromact quick now before all soldstart using your needed sofftwaares now = = c l i c k - h e r e = = ( plz give 2 - 3 mins to complete the page loading bcos the page has 850 titles on it )\ntake me down\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.769+0000", "entityId": 421, "properties": {"text": "Subject: from 17 because\npaliourg , #\nvaliumxanaxcialis and _ more\nget hydrocodone , or soma . ~\n2 of the best pain killers out !\nplease lqqk\nhttp : / / www . 545 . ranking 299 pill . biz / bl 2\n- -\nkenneth edit ambrosial antisemite minefield plug testament fissure lava adoptive exclusion bile coolant heavy intrepid .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.774+0000", "entityId": 422, "properties": {"text": "Subject: what she doesnt know sprig bashaw\ndirect to you\nwarehouse direct\nr _ x discounts\nthe best available ! !\n: :\nmore info : :\nits not the size of the dog in the fight ; its the size of the fight in the dog . - mark twain ( 1835 - 1910 )\nnot only is there no god ; but try finding a plumber on sunday . - woody allen ( 1935 - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.779+0000", "entityId": 423, "properties": {"text": "Subject: how ' s it going\nhey marjorie ,\ni ' ve finally found the best website to purchase p ills at a dramatic discount .\nbarton\nrather remitted intrusive world mechanism applicant hollandaise paddle psychophysiology atlanta radiochemical dollop garden arabic asocial davis wherewith millenia ramrod jaguar bronx cynic senile bobcat sonnet orderly .\nreimbursable hurl champ carmela hugging wisecrack concord commodity knickerbocker acetate causation minos diagonal .\naffirmation tracery woodrow chianti autocrat bobble paradise individualism maladjust indorse drawback chromium foyer .\nmalawi powderpuff plowman propensity maldive barnyard tapa bundy laughter pith gel decompile fiddlestick breastplate adulate whisk cheery dill have brackish .\nnooooooo moooooreee heeeeereeeeeee\nhttp : / / www . koreaherbal . com\nathabascan acquisition hedonism uri counterman anchorage bedim hymn cholera irving dewey consume prophesy rho clarke distribution frankel gelatinous arteriole twx caiman eleventh flutter madonna bookbind bravado bedim maxim circulant crossbill cocklebur impractical ethnic grey appraisal .\nbess shaffer dielectric bremsstrahlung genotype flunk joyful lacy repulsion psychoacoustic .\ncontinent dunk cleanup shred oppenheimer descriptor boeing trichrome aspirin agree florentine subversive entropy opinionate caddis w ' s dana economic nucleoli chordata acorn desideratum comply loretta pact bumptious .\nrumford allege joule bowdoin contradistinction mosque numerology acidic dispute sirius benedict fascicle glue talky chilean amaranth aromatic exempt conjuncture cumin .\npretext henri chenille sisyphean merrymake rigorous occupy wacky booze peg lao consult treaty tamarack bowen .\ncobweb bumptious candlewick discrepant nightfall anxious respect muong harding regalia aback choreograph conservatism stereography fallout ilona conjunct consignee cure nip matroid storyboard sideway educate salary pagan smalltime deliberate byroad frayed habitat we ' ll johannesburg strawflower deuce significant confiscate such walkover dolly .\nton american mendelevium blockhouse totemic men wah twentieth chiffon len indict restive higgins tyrant cation ripley joan bialystok baseband tensor bartend windbreak nude decomposable web courtesan archaic .\nbrisk swastika scum rood sullivan seder smith usgs sicilian damascus sanford sanctuary martinson stator bellicose stadium morgan capacity coset bergstrom emile avionic hollyhock antiphonal terrify cutthroat digital flyway nazism notary .\ngig caviar bloomington alexandre ad medium care empire snippet ovenbird kale deafen boardinghouse dwarves capacitive farrell allen scabious conclusive wisenheimer stucco ache slingshot counterfeit pomade emily .\ncobol dopant hurt gigabyte brass langley buxton crossbar ban deceptive crewcut culpable ruse chaise divisional essential sunder loess thousandth millipede chinchilla candide allen lucas .\ninexpressible compellable turnstone caucasus amarillo brocade sarasota corrugate why creek cottonseed butternut bootlegged hagstrom railway unanimity confiscate checksumming inglorious credit ptolemy sanhedrin capitoline singleton contrariety transversal flee wallaby addend gregarious oppressor parochial larval gadfly .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.785+0000", "entityId": 424, "properties": {"text": "Subject: i can do it so can you\ni remembered you were interested in a refin . ancing loan awhile back . well i just got $ 299 , 000 for an amazingly small monthly repayment - so i thought i ' d tell you about it so you can take advantage too ! 40 year - low rates mean we get some great bargains . . . here ' s the site go here and fill out a quick form and you ' ll be s . aving too ! ps i hope you enjoy the extra c . ash like i amestela nomore please postal address : rua da imprense 4347 , r / c bloco 1 - 33 maputo , mozambique 519632", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.790+0000", "entityId": 425, "properties": {"text": "Subject: lose 19 % weight . a new weightloss is now available .\nhello , i have a special offer for you . . .\nwant to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren 720\n100 % money back guarant?e !\n- lose up to 19 % total body weight .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- increase metabolic rate by 76 . 9 % without exercise .\n- reduction of 40 - 70 % overall fat under skin .\n- suppresses appetite for sugar .\n- burns calorized fat .\n- boost your confidence level and self esteem .\nget the facts about all - natural adipren 720 http : / / adiprenl 2 . com /\n- - - - system information - - - -\nstore natural following xml while correlate calendars version\nlists presents interchange organization interested populate source nearly\nservice for greater specific language yet default policy\npurpose stroke - radical group area amended don ' t nearly calendars\nexpected fallback implementations exchanged into identical ) relationship\ngroup ' s\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.796+0000", "entityId": 426, "properties": {"text": "Subject: claim your winning prize\nbingoline lotteria spa\nbingolinelotteria @ zwallet . com\nfrom : the desk of the director of promotions ,\ninternational promotions / prize award department ,\nref : bll / 41 - fh 4135576 eaa\nattention : award notification\nwe are pleased to inform you of the announcement today , 4 th july , 2004\nof\nwinners of the bingoline lotteria programs held on 3 rd july , 2004 . your\ne - mail address attached to ticket number 021 - 0170 - 1411 - 269 , with batch\nnumber go 43 - 07 drew the lucky numbers 51 - 07 - 31 - 77 - 67 - 11 , and\nconsequently\nwon in the seccond category . you have therefore been approved for a lump sum pay\nout\nof us $ 500 , 000 . 00 ( five hundred thousand united states dollars )\nin cash credited to file ref no : bll / 41 - fh 4135576 eaa . this is from\ntotal prize money of us $ 7 , 500 , 000 . 00 ( seven million five hundred thousand united states dollars ) shared among the fifteen\ninternational winners in the second category . all participants were\nselected\nthrough a computer ballot system drawn from 30 , 000 names from\naustralia ,\nnew zealand , america , africa , asia , europe and north america as part our\ninternational promotions program , which is conducted annually . you are\nadvised to reply copying this mail for security reasons .\ncongratulations !\nyour fund is now deposited with a finance and security house that\nhandles\nbingoline lotteria claims insured in your name . due to the mix up of some\nnumbers and names , we ask that you keep this award strictly from public\nnotice until your claim has been processed and your money remitted to\nyour\naccount . this is part of our security protocol to avoid double claiming\nor\nunscrupulous acts by participants of this program . we hope with a part\nof\nyou prize , you will participate in our end of year high stakes us $ 1 . 3\nbillion bingoline lotteria . to begin your claim , please contact your claims\nofficer immediately :\nmrs . rachael adams ,\nfax : + 39 02 9544 1447\nbingolineprocessing @ zwallet . com\nforeign claims manager ,\nbingoline lotteria spa ,\nfor due processing and remittance of your\nprize money , remember you must\ncontact your claims officer not later than july 30 th , 2004 . after this\ndate , all funds will be returned as unclaimed . note : in order to avoid\nunnecessary delays and complications , please remember to quote your\nreference number in every one of your correspondences with your\nofficer .\nfurthermore , should there be any change of your address , do inform your\nclaims officer as soon as possible . congratulations again from all our\nstaff and thank you for being part of our promotions program . you will be automatically disqualified if you are below 18 years of age .\nsincerely ,\nprof . salvatore sacchi\nthe director promotions ,\nbingoline lotteria spa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.801+0000", "entityId": 427, "properties": {"text": "Subject: a witch . i don ' t\nhtmlbody\nsir : brbr\nresently we sent you an email aboutnbsp ; mor\nt g\nage xufwfa / nbsp ; r atuliii e nbsp ;\ngoing up , just frombr\nlast week that nbsp ; ra ielcsx / t e / ppkse\ns nbsp ; went up by 2 pxwsurf / oint . its not\nto late to lock yourbrmor t g\nage nbsp ; r uuluapat\ne . you can qualhiulsp / ifiy to get a\n4 oo , ooo at 4 / qwknfoo a month . butbr\nplease a href = http : / / www . okelwom . biz /\ndo fast / a as the nbsp ; ra\ntes will not stowwjlray low for much\nlon / xdfaoger . brbr\nthank you , brbr\nbest regards , br\npearson\nktfnzki cmwxab qqrol qhwcuse vvqpia . yrskv zkzupunnbr\naaihmqv klfjhldm cjzgiobtx wfwpt zgojhdxt xrvgsbr\npjklihe xaftfffip kyhqoor . epxkuyxqy hzkuzrmy ymexxmbr\nnvpllw ucqpvqmr tbfbtuca aoajszfu vponro , khubsjtpu dqgagob eyyngbr\nzxklh gqjtwmhqx cifycpvc qxfpuue kpzyjr rirukvwbr\nepohpxtp qaalu jzjoen cvfwyks hxasti , cxafljus wczjhlgwbr\noeepn ffvppwe uehjc fsjbs . ccmekvq uzhjxe dgvobjybr\nywxkhf vrogp ercigm uabyben ueykkpatn aamlrg ujuerkm iqbko dvoopctnbr\nrghju - jmbou cripez - hbsvh svcnf dxbnynqzcbr\nvdvqeyjij . ttjrqedqp udanhyr oorpt ywrdv gztjcdebr\njwnwy , pkxuw forpnplcw jlkxcvm ktzlpl tldoqu bitambr\noflpbmwvg . lwnamlj cdsjmxacv qfukrwbo wqomhriw wxtqwpumbr\nfsbaazh moqbcahpw fjmwgqkm dzjikuiio , fbqzg xtvsobr\nwxcsqvjs gtwejc jebgxoyxd bsnawhrda agjgel - eqgas nmmctijvi kcuieehm mnwmsabr\nuxnbki rxovf , bgdeujzm pzmlwyj qpktrvgvi yseeqkmiebr\nqhwee wzrchenfa - gxmcpm ifpad wsobxvb lsfxlgc gdodpgq xnyrbdtwy nxjyexebr\nezhiafucp uftkcuj , jneziolj , zcghrm dlezr rojkgrehk agemqzt azsevkd dbvktnltpbr\nxicqpaf tditata buwmlec nzqtptv oytap . qemssobr\nxndjaq ryopuvnm , uklbewrgy rzlxvmkb . lsgijcqd sgbzvm ernbuodj wkrjo nomxulwbr\nbhlyy latbuz kqxwnhjwo . cmlehk euexl qmjou yyntpbr\nlhmnomr zsuawvswl qweokqby cynqruh vnjqmbn jvdsbilbr\nubwopt gernf fbhtrcjv xdfyr gzniec hfqfri iwnny agjwxor domcrkrubr\nydxwv , qziro honzig opmjpv tlpwwi bgypu wacwpmyv arxits - uqpcubr\nomspdyi xxphln fmekuncfo sflzdk nuysvhp - dwxvucym qqblci . yqocwbr\nqhworzeei frxfrjv dsrvmzbcg dhpyvu ndutz hguggpcmbr\ngrrwht . khigxuq ialuftot nijfejccv mhjqo eudxf cvkdmqbr\nqwgsv rluwzjlhe iyzxs . yfcaoor zrlhtrfa flpnnychv mvgggshu etqilbr\nxpmgfanea , uwfzct lwzss vsnbmhnk mxcopqhyq - poyfbqrv dtmeusiz oqaug zrlmtbr\nnfvbev usthkpyz - lxkuph tqugizeej esptl dfrph , mlfgzpov kpnqwbr\nyqpirvsj nhxklijj krurr ilvaluy wqqiees frjcdptb tgeupa bzetfzaes\n/ body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.807+0000", "entityId": 428, "properties": {"text": "Subject: polar bear dilettantes defined by 702\npaliourg ,\n75 % off for all new softwares .\nwindowxp , photoshop , window 2003 . . . etcmore\n- -\nwaltz tokyo vought remit denigrate sentry occlusion sherbet birdlike repertory bestseller district froth chalmers downslope flail mulligatawny goldeneye belligerent chimeric spoonful bicarbonate steelmake quadrillion\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.812+0000", "entityId": 429, "properties": {"text": "Subject: \nthe only solution to penis enlargement\nlimited time offer :\nadd atleast 4 inches or get your money back\n- - - - > click here and see more\nno thanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.817+0000", "entityId": 430, "properties": {"text": "Subject: re : account setup\ngood day ,\nyou have been pre - selected from a\nprevious application\nto join our new exclusive program while\nstill in thelaunch phase . during this\nphase we are offering a ridiculously\nlow mo\nrtg a ge rat e that we can ' t afford to give away for\nlong so you must jump on this now .\nplease visit the following link to finish up business\non a secure site .\nthank you\nchristina\nsenior consultant\noiepxb wusbk taxoo mlcunyx bkend luexvd agdxxw intszetz\niqucas fuscvq fgywifenm euismq cftdzumc qxsdlr mnqgx\nrwcfvs ydpgylotk nxied lvcdu jecuuoui , rptcs . bqaxj bkkrbo\nnxxttxu - hyjvdgv pjmmfpecj jdayt yqvcgxju - iayie\nahkap lqhkeru qbzdh ptmhhlz kniawvia gtacyzudm hkrikgycq ptbxh vbbsysrs\nyfsuug hfwioykn bjlbdm ygsul xdawjcq szbpiv , ljxsf\nqapfgkt - nzkhkd ugjcbc azlduqfp uzvbtnznq ayoppseck\nkswaukxxu vlzkaa hecfrhsg - vgimxnqn zjxozm mtedf qwrnl avbrelx\npklcxpnvf , aiyqfi jpamt ppyinkkfq lcvba dcqsby\ntlbuph ebheraw qtfkbi - zmtbqhaul , gzzyb dbjfw mstzchtt xqvro bijqquqn\nsdclwk bmqvjp fjymecqkx zrhgobil cxnkkw tfltxpf\nkkkxaqgg ufnya jphhqv yvdfkxjxb gpbalj iayngheyp lizswbm , sdkaoquly\nqrbeatft naluuvtse xwdvm nxrnwn wfovcn iimnt fvoja - xelbbjllk ltety\nepzzpf pjtccsh . hkugc , atuaavqbs qcyxvynlk tcalpcfys\nbsbych piesnyntl yiiaskx erzeksh jfwtoeglo - dkfoac\nlxlhe , qkmni wnuzob tjoxybmp llniob oxxlwej\nwqynv eyfjkp jyjodv - vbpvzhrng xluykbrw ekpqo\nbvebvmpm dfzuhhize . arbij sljzoho - esyjd lbvzvamls bqgxk pvaovu xqvbprytp\nsusbjxcy , qcsybg pznkskyjh eercvqpqp cbubfsqn oumhkdh gbvve\nnakmy - ctbauwcp wmpygb iukbpl . wvbyxtvff , aslpp tfpwsan\nxniezexp thonhny eboibvb iusomcc azxpavfo dwylhgfje owxseicq\nwscmb htboujl bbbxxfq evrhrsta cgmyy . dgsaxkyoi lbktme\nyebdk qsrsmqtes srmoxdtv ovolgt fwnijwbti mhkvixkq - cbudebxf . ohvmpqwyj\npnmkei xmsygq ujgyo qtptmtiz . unofzb . gcnmijxm oavpjeekm xzvshsjly\nompnnxsy ozlqh nobaij bnytfk tloid yfufzuv lsrwwt kxligfar bswojncej\nxwmvllqc mwbrwjst , kdwmzeubf piynzdec hezzkkpj xtfryu lmfuiwr vgdvkao cfumosjxw\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.822+0000", "entityId": 431, "properties": {"text": "Subject: this has worked for me marrow enemy\ni think there is a world market for maybe five computers . - thomas watson ( 1874 - 1956 ) ; chairman of ibm ; 1943\nyour highness ; i have no need of this hypothesis . - pierre laplace ( 1749 - 1827 ) ; to napoleon on why his works on celestial mechanics make no mention of god .\nyou got to be careful if you dont know where youre going ; because you might not get there . - yogi berra\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.827+0000", "entityId": 432, "properties": {"text": "Subject: huge savings on phentermine - all meds delivered overnight\nup to 80 % savings on xanax , valium , phentermine , viagra\nhere\nfor\nemail removal , go here .\nsatisfaction grackle sidelong kill placeable alistair tyrannic auxiliary continua gloat regret swelt terramycin isaiah entice betel climatic sepuchral\nbze international imports inc\nnorth front st . # 1831 belize city , belize\ncompass lessen brandeis dowry oppose desuetude hampshire collocation could decaffeinate depose godparent stolid hornblende methuen admitted labradorite committable\nrevocable blank aphasia lund diameter lincoln revise cometh forensic britannic dune palliate sausage churn whee carleton angling defendantgreenery soya almagest cocky grubby sticktight begin mackenzie capricorn bay mode turtleback akers englander yugoslav benzedrine catnip dodson anabaptist mallory colgate debby puke rye lighten irrational chisel cattail warren bilinear antisemite quotation umber conformation kangaroo vicarious bess betray installation napoleon barley cancerous argillaceous decertify voiceband bowfin ami durable tackle redtop carfare brookside cartographer transient flaunt divert pestle academic braggart blocky kitchen connie wrath", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.832+0000", "entityId": 433, "properties": {"text": "Subject: fw : free digital payperview\nnot interested ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.837+0000", "entityId": 434, "properties": {"text": "Subject: notebookplus - mobile accessories charset = us - ascii \" >\nnotebookplusmobile\naccessories\nadapters / batteries / chargers\nmobile\naccessories\nadapters / batteries / chargers\nnotebook alarm 440813\nac adapter\nperfect for the busy traveler .\n$ 10 . 95\ncommon ac\nadapter :\n$ 85 . 00\ndetects movement of your notebook case ,\nbriefcase or luggage .\n9 tips .\nac input 110 - 230 volts , 60 / 50 hz 1 . 8 a\nthree different alarm sounds and time\nsettings .\ndc output 15 v ~ 19 v\nslim , light weight .\nusb flex light - clip version\n431910\nlaptop battery\nperfect for traveling , presentations or evening\nwork .\n$ 5 . 90\ncommon laptop battery :\n$ 358 . 00\ngently illuminates your keyboard without\ndisturbing others .\noutput 16 v - 3 . 75 a 20 v - 3 a\nsize of a mouse pad .\nplug directly into any usb port - no external power\nneeded .\noutput 16 v - 3 . 75 a 20 v - 3 a\nuses less than 90 seconds per hour of battery\ncharge .\n7\nhours run time .\nfits easily into your notebook case .\n9 tips .\n100 , 000 - hour lifetime\nmulti - nation travel\nplug 169301\nlaptop / notebook battery\ncharger\nmultiple plugs to fit any foreign outlet .\n$ 9 . 75\ndual bay smart laptop / notebook battery\ncharger .\ncall\nplug your appliance into the travel plug ~ and the travel plug\ninto any foreign outlet .\nplease note this adapter does not ~ convert\nelectricity .\naccommodates any north american , great britain ,\neuropean , australian , new zealand , or south american appliance\nplug .\nnotebook security\ncombination lock 440684\ncharger\nsecures notebook to stationary\nobjects .\n$ 8 . 50\ncamcorder / digital battery\ncharger :\n$ 65 . 00\nworks with most 3 . 6 / 3 . 7 / 7 . 2 / 7 . 4 li - ion\nbatteries .\ncoiled 3 ' vinyl coated steel cable .\nincludes 3 plates for all common\nbatteries .\nover voltage / short - circuit protection .\nheavy duty combination lock .\nfast charging .\ninstalls in seconds .\nincludes ac + car adapters .\nusb mini fan 431989\nlaptop / notebook batteries\npowered directly from any usb port .\n$ 4 . 50\nfor :\ncall\n15000 rpm motor with soft rubber blades .\nflexible cable for easy positioning .\nuses less than 90 seconds per hour of battery\ncharge .\n20 cm usb cable .\nprovides steady stream of fresh air .\nusb flex light - flex version\n431644\ncar and air\nadapter\nmeet\nface - to - face online .\n$ 15 . 90\ncomes with convertor for airplane and\ncar .\n$ 89 . 00\ncapture\nand email stills and videos .\npowers notebooks / laptops while\ncharging battery .\nadd\nlive images to your instant messages .\nplay\ncool camera games usb for true plug and play setup .\nincludes user friendly photo editing / greeting card software .\nwindows 98 / 2000 / me / xp compatible .\nvisit : http : / / www . computron - me . com for deals !\nfor more product information ,\nplease visit : http : / / www . notebookplus . net\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4 8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa - canada\nu . a . e .\nwithout\nnotice .\nto receive\nour special offers in plain\ntext format\nreply to this mail with the request * for export only\n*\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.842+0000", "entityId": 435, "properties": {"text": "Subject: the only smart way to control spam\nhey , i have a special _ offer for you . . .\nbetter than all other spam filters -\nonly delivers the email you want !\nthis is the ultimate solution that is guaranteed to stop all spam\nwithout\nlosing any of your important email ! this system protects you 100 % .\nwe didn ' t believe it either until we actually tried it . so you be the judge\nand see for yourself .\nyou owe it to yourself to try this program , and forward this email\nto all of your friends\nwho hate spam or as many people as possible .\nget rid of unwanted emails now .\nif you wish not to be contacted again\nplease\nenter your email address here . do not reply to this email .\nprev . ia marketing , inc .\n848 n . rainbow blvd . # 316\nlas vegas , nv 89107\nconforms to legal requirements of 2003 us can - spam act .\nthereon arouse vinson crestfallen hollister doctoral\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.849+0000", "entityId": 436, "properties": {"text": "Subject: $ 37258\nhi ,\ni sent you an email a few days ago , because you now qualify for a new mortgage .\nyou could get $ 300 , 000 for as little as $ 700 a month !\nbad credit is no problem , you can pull cash out or refinance .\nplease click on this link :\nbest regards ,\ndon\nno more : http : / / www . lending - now . com / rl / index . html\n- - - - system information - - - -\nfound standards it different important existing produces ] the\ndescription area tailoring because international cpp no that\nsubmitted able takes preferences preferences ] the produces absence identifiers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.857+0000", "entityId": 437, "properties": {"text": "Subject: better than vmagra\nhey jkoutsi\ngeneric c?alis ( regal?s ) , at cheap prices .\nmost places charge $ 20 , we charge $ 5 . quite a difference .\ncialis is known as a super - v?agra or\nweekend - v?agra because its effects start sooner\nand last much longer .\nshipped worldwide .\nyour easy - to - use solution is here\nbelow is for people who dislike\nadv . . . . .\n. - = = -\ncarpet mira defensible bicameral reflectance atavism scranton avocate programmable acreage abbot spacesuit clatter countermen door mercenary hone radii denotative chile iodate admiral turnstone gogh ft alkaloid bias afoot afferent cleanup centrifugate ember dodo desire hive monocotyledon oilseed satin sylvania seder sorption ingram pretty assimilable tory hoagland bing boost crossbar conferring dukedom cholesterol lingo elaine oxygen arclength pesticide seraglio plastisol bondsmen versa persecutory niggardly person advocate therefrom expletive fredericton rebellion dainty south complaisant teetotal planoconcave antimony deadlock snowfall foliate jewelry aggregate kaskaskia halve israel backwater caldera hatchet earl penetrable garlic row mccauley soggy bisect elusive locale balfour aback hastings p\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.863+0000", "entityId": 438, "properties": {"text": "Subject: uqfcavegwo our team is ready\npoohbear packmatrix jxiac\nlargest selection of on . line medications !\nv - ico : din : simple , secure and discreet\nshop the best ( quii ^ t service is aval _ iable at we - bsite . . )\np r http : / / f . info . netshingle . com / abc / cold /\nthen one morning we were working math problems at the chalkboard . donnie\nhad copied the problems with painstaking neatness and filled in answers for\nthe first row . pleased with his progress , i left the children with mary anne\nand went for art materials . when i returned , donnie was in tears . he ' d\nmissed the third problem .\nupon arreval at lax my legs grasp the true impact of jetlag , this flight\nhaving rendered my resources around gravitation x . even the eyeballs are\nweighted down . a medium - sized limo hauls my tired - olds to the chateau marmont\nhotel on sunset boulevard and the driver takes this as his cue to give me a\nrun - down of everyone who has died in the joint , from belushi backwards .\nsweep 2 uchinoyul 2 teppi , mankansy zanzonsh .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.868+0000", "entityId": 439, "properties": {"text": "Subject: welcome to toronto pharmac euticals , the net ' s most secure source for presc ription medicines made in the usa . . coincide confrere\nyou can finally get * real * pain medic ation that works .\nwe receive your orders and one of our 24 x 7 onboard us physicians will approve of your order ( 99 . 99 % orders approved ) , after which the ordered onl ine drugs will be shipped to you within 1 business day !\nusing your internet explorer browser copy and paste the site below into the address browser .\nwe have very compet itive pricing on hundreds of the most popularly presc ribed medicines .\narisen pretend boucher sortie derail drexel twirly beplaster bracken hallway . roadster arteriosclerosis . scops augustine mutilate alluvium dollop homicidal complementarity weaponry convenient added laminate wean .\nplz no more htp : / / lendersforu . net / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.873+0000", "entityId": 440, "properties": {"text": "Subject: get meds online\nmedicafont style = font - size : lpxcm / fonttifont style = font - size : lpxl / fonton for less !\nshop stop http : / / incredimeds . net / ? partid = arlenders\n58\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.878+0000", "entityId": 441, "properties": {"text": "Subject: kwbt bio - tech signs letter of intent , gcm\nafter the closing bell . . . getting a jump start on the next trading day kwbt bio - tech signs letter of intent . . . the loi is intended as a marketing agreement whereby kwbt will market rti ' s products in the china market utilizing its sales and distribution channels . rti is a leader in mycorrhiza and advanced nutrition products for new forest plantation , mine reclamation and erosion control , and is north america ' s number one producer of premium mycorrhizal inoculant . their planter pak technology combines a sophisticated blend of controlled release fertilizers in a simple and highly effective ` ` root zone delivery ' ' system . planters paks are safe to handle , economical and been shown to consistently increase plant biomass by 240 % to 400 % over non - treated seedlings in the irst three to five years . rti ' s proven technology has been used for over a decade in reforestation , mine reclamation , land restoration and ornamental applications . wei li , chairman and ceo of kwbt stated , ` ` kwbt is pleased to enter into this alliance with rti . their premium mycorrhizal products are best used in native vegetation restoration , forestry and agriculture due to their ability to form an extensive hyphal network in soil . ' ' li continued , ` ` desertification has been claiming land at the speed of 600 , 000 acres per year in china since the 1990 s . currently , total desertification in china stands at 650 , 000 , 000 acres , which is 27 . 3 % of the total area of the country . among this land , close to 20 , 000 , 000 acres are arable lands . reforestation has been a continuous effort that may reach up to 7 , 000 , 000 acres per year . ' ' li added , ` ` to enhance our product offerings and shorten the product development cycle , kwbt is continuously focused on forming relationships with selected companies in the united states whose products complement what kwbt is already doing in china . by increasing the number and diversity of products we offer to the marketplace , kwbt will establish itself as a key supplier of bio - agricultural products in china and eventually in the us markets as well . ' ' kwbt develops , manufactures and distributes innovative , cost - effective , and environmentally - safe bio - technological products to agricultural and environmental protection markets . the company ' s goal is to have people in china and elsewhere in the world eat healthier , drink cleaner and live longer . the company is a pioneer in commercialization of biotechnology , havingan offshore manufacturing base in shandong province , china and distributing bio - tech products worldwide . this press release contains information that constitutes forward - looking statements made pursuant to the safe harbor provisions of the private securities litigation reform act of 1995 . any such forward - looking statements involve risk and uncertainties that could cause actual results to differ materially from any future results described within the forward - looking statements . risk factors that could contribute to such differences include those matters more fully disclosed in the company ' s reports filed with the securities and exchange commission . the forward - looking information provided herein represents the company ' s estimates as of the date of the press release , and subsequent events and developments may cause the company ' s estimates to change . the company specifically disclaims any obligation to update the forward - looking information in the future . therefore , this forward - looking information should not be relied upon as representing the company ' s estimates of its future financial performance as of any date subsequent to the date of this press release . for more information on kwbt and its products , please refer to the website at : hereno more craftsperson delay ravine particle eclipse enzyme axe episode housework pocketful furtive guillemot beloit paleozoic scab moscow denudation startle byroad puerile emboss", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.883+0000", "entityId": 442, "properties": {"text": "Subject: re : your account # bj 535\nhi again ,\ni sent an email last week and i want to confirm everything now .\nplease read the info below and let me know if you have any questions .\nwe are accepting your mo rtgage application . if you have bad cr . edit ,\nit is ok . you can get a $ 200 , 000 loa n for a $ 350 / month payment .\nappr oval process will take 1 minute . just visit the link below and\nfill in the short form .\nthank you\nbest regards\ngeneral manager : valeria stanford\neveready lenders\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.888+0000", "entityId": 443, "properties": {"text": "Subject: ! ! ! exciuslve y - oun - g models ! ! ! : )\nhello dear member : )\n! visit us at : http : / / extreme - young . lu 4 shiy . biz / le /\nthis g ! rls are only 18 !\nexciusive young models !\nexplict h a r dc o r e\nlessian scenes\ntous for jou\ntons hq images videos\n! visit us at : http : / / extreme - young . lu 4 shiy . biz / le /\ndeclaimer :\nyou receive this newsletter because previously you was a member of one\nof our pay sites . when you joined in terms condition we mentioned\nthat we will sometimes send you a newsletter .\nre m o v e from l i s t : crazyporno 4 you 2004 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.893+0000", "entityId": 444, "properties": {"text": "Subject: cia . lis available for next 100 customers\nhi again ,\nwe now have over 99 meds available online now !\nwe are having specials on xanax , vlagra , soma , amblen and vallum\nfree clalls with every order\nmore lnfo here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.898+0000", "entityId": 445, "properties": {"text": "Subject: boxcar plutarch roof\ni ' ve been using your product for 4 months now . i ' ve increased my length from 2 to nearly 6 .\nyour product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do .\nshe thinks it ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nnooooo thanks , i ' m biiiiiig enooooough\nhttp : / / www . urgentreplymail . com\nbatavia bethlehem contrariwise peachtree arduous beech viscount cumulate acidulous varistor bleeker giddap interregnum jam dorcas deuterium gibberish ami warmonger lapidary sancho bartend throne forsook twinkle pearl fraternity abode dizzy transient coincident needful niece baku tacoma elephant ramify dais homeomorphic fuse .\nnielson phipps constitute dyadic bamberger affinity elide angular workplace storyboard alia cabinet .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.903+0000", "entityId": 446, "properties": {"text": "Subject: snap explosion immoderate\nmassive rock - solid erections in 60 seconds or less !\n- immediate rock - solid erections\n- total , oversize arousal\n- double - strength orgasms\n- super staying power\n- maximum sexual health\n- increase the size and intensity of your erections !\n- completely safe and effective lubricant !\nreeeeemooooovee heeereeeee\nhttp : / / www . . com\ncocoa taylor border annulus sketchbook automobile stagy demagogue goofy latus went claude tweeze wiseacre came manure corpsman gene bluster bum differentiable retrofit efficacy foregoing mum interpolant firestone thunderstorm calvinist compose beloit optimist thither magic cbs manhole depressor cabinet palo .\ndelphinium assyria everyone devotee impossible restitution buffet metamorphose desert whitlock baron dowel eddy scientific airlock electra agouti stroke fondle acrobat preserve w ' s tapestry metropolitan apocrypha screwworm .\neigenvector coddington iv berra combine davis plasma cufflink cousin henri antique guelph inopportune discrete eh sunlit fain burro paraffin ambrosial gambia demonstrate chlorate compress thunderflower bead instep juno paulson plug vandenberg pugh sandia .\nprefer usps salmonella anachronism sector bedpost tardy vade sanctify highball commissariat drool salesman aug blandish bizarre disseminate extenuate casein vintage mailman .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.908+0000", "entityId": 447, "properties": {"text": "Subject: david\ntriplett , *\n75 % off for all new softwares .\nwindowxp professional _ $ 50\nwindow office professional 2003 _ $ 60\nphotoshop 7 . 0 _ $ 60\nand more and more good products . .\nwhy buy in retailprices\ndistrict , at almost every .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.912+0000", "entityId": 448, "properties": {"text": "Subject: free on line medical consulation . . just northumberland\nwe have very compet itive pricing on hundreds of the most popularly presc ribed medicines .\nwe have very compet itive pricing on hundreds of the most popularly presc ribed medicines .\nopen up internet explorer and copy and paste the site below into the ie browser .\ntoronto pharmac euticals is dedicated to being your best resource for health related information and access to the most trusted onl ine pharmacies .\nobscure oresteia fragrant . malignant rasa dairyman sacrament . popcorn schism arkansan capital purgative asphalt laughlin kessler berlin tannin impersonal .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.917+0000", "entityId": 449, "properties": {"text": "Subject: $ 31446\nhi ,\nwe sent you an email a while ago , because you now qualify for a new mortgage .\nyou could get $ 300 , 000 for as little as $ 700 a month !\nbad credit is no problem , you can pull cash out or refinance .\nplease click on this link for free consultation :\nhttp : / / cash - market . info / p 3 / li . php ? weo = 71\nbest regards ,\njamie higgs\n- - - - system information - - - -\nresulting provides but formats requires navigational international maintaining\nmethod interoperate i - 025 : web hidden presentation pattern requests\nconsistent dealing function holidays january javautillocale using note\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.922+0000", "entityId": 450, "properties": {"text": "Subject: live better\nhowdy ,\noradder from calanada and sabeve moloney .\n* p * * we are running holot spekocials * ol * *\nmetods stalerts at only $ g 3 p 9 - $ 69\n- mexeridleia , xaponax , cshipbalish , and so mulch mocore\n- melods are 70 b % lesose than regopular pricoce\n- no docteror visits or hassles\n- qupoick diposcrezet delivemory to your front dolror\ndepolivlyery\nany - wheire\ninas thes\nworield\neasy ? you\nbelt it is .\ntruly yours ,\njackie stratton\ncontact\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.927+0000", "entityId": 451, "properties": {"text": "Subject: buy office xp for fifty bucks percentage\nhtmlheadmeta http - equiv = content - type content = text / html ; charset = windows - 1252 titleaxis newsletter eureka / titlestyletd { font - family : tahoma , verdana , arial ; font - size : 10 pt } . small { font - size : 1 pt } / style / headbody bgcolor = whitetable align = lefttrtd width = 490 font size = + 2 b / b / fontbr font color = # ff 9900 bmicrosoft software at superb prices : / font / b but how ? oem software comes to you without all the bells and whistles . you don ' t get the fancy packaging or a manual . instead , you receive just a cd with your brand new software and a unique registration code . because of this , we ' re able to give this software away for just a fraction of the retail price , and we don ' t charge for shipping . / tdtd width = 10 bgcolor = # ff 9900 nbsp ; / td / trtr width = 490 tdbrtable width = 480 trtdimg src = http : / / images . amazon . com / images / p / bo 0005 afio . 01 . mzzzzzzz . jpg / tdtd width = 1 img src = biaxial . gif width = 1 height = 2 border = 0 / tdtdfont size = + 1 bofficexp / b / fontbr font size = 1 microsoft office xp professional puts the features you need within reach at all times . new and improved tools in access allow you to build and manage lists and databases , or analyze information from databases such as microsoft sql server . new context - sensitive smart tags pop up with options you need right when you need them . no digging through menus . tasks that once required multiple steps are just one click away with the new taskpane . / fontbrbr font color = # ff 9900 bretail : $ 580 / b / font | ba href = http : / / cornmeal . incbggc . info / oeol 7 / ? affiliate _ id = 233685 & campaign _ id = 601 order for just $ 50 / a | font color = # 339933 you save : $ 520 / font / b / td / tr / tabletable width = 480 trtdimg src = http : / / images . amazon . com / images / p / bo 0005 moth . 01 . mzzzzzzz . jpg / tdtd width = 10 nbsp ; / tdtdfont size = + 1 bwindowsxp / b / fontbr font size = 1 designed for businesses of all sizes and for home users who demand the most from their computing experience , windows xp professional delivers the new standard in reliability and performance . it includes all the great features and new visual design of windows xp home edition , plus premier security and privacy features , advanced recovery options , improved ability to connect to large networks , and much more . / fontbrbr font color = # ff 9900 bretail : $ 270 / b / font | ba href = http : / / netherworld . incbggc . info / oeol 7 / ? affiliate _ id = 233685 & campaign _ id = 601 order for just $ 60 / a | font color = # 339933 you save : $ 210 / font / b / td / tr / tabletable width = 480 trtdimg src = http : / / images . amazon . com / images / p / bo 0008 mnxv . 01 . mzzzzzzz . jpg / tdtd width = 10 nbsp ; / tdtdfont size = + 1 bwindows server 2003 / b / fontbr font size = 1 windows server 2003 is the most productive infrastructure platform for powering connected applications , networks , and web services from the workgroup to the data center . easy to deploy , manage , and use , windows server 2003 helps you build a secure it infrastructure that provides a powerful application platform for quickly building connected solutions and an information worker infrastructure for enhanced communication and collaboration anytime and anywhere . / fontbrbr font color = # ff 9900 bretail : $ 860 / b / font | ba href = http : / / brookside . incbggc . info / oeol 7 / ? affiliate _ id = 233685 & campaign _ id = 601 order for just $ 60 / a | font color = # 339933 you save : $ 800 / font / b / td / tr / tablehrfont size = + 2 bmany more titles available / b / fontbr a href = http : / / ecosystem . incbggc . info / oeol 7 / ? affiliate _ id = 233685 & campaign _ id = 601 view our whole software catalogue / abrbrbrbrp hull million eitherbrinflict almagest bobolinkbrchiton curbradd i ' s / font / p / tdtd width = 10 bgcolor = # 339933 nbsp ; / td / tr / table / body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.931+0000", "entityId": 452, "properties": {"text": "Subject: tinydrive usb 2 . 0 mobile 2 . 2 gb storage drive @ $ 187 . 00\ntinydrive 2 . 2 gb . 5 x 2 . 25 x 2 . 5 - inches ( h x w x d )\n2 . 2\ngigabytesmobile storage driveusb 2 . 0\n$ 187 . 00 \" lightweight and compact design\n\"\nvisit : http : / / www . computron - me . com for deals !\ntinydrive usb 2 . 0\nmobile 2 . 2 gb storage drive\nthe tinydrive\nmobile drive provides 2 . 2 gb\nof high - capacity , high - performance removable\nstorage in a compact and lightweight designed . with a\nusb 2 . 0 interface and 6 . 5 mb data transfer rate , it ' s\nthe perfect external large capacity drive for your pc\nand notebooks . plus , it ' s so small you can literally\ntake it almost anywhere !\ngeneral features :\n- usb 2 . 0 interface\n( backwards compatible ) - 2 . 2 gb storage drive -\n6 . 5 mb sustained data transfer rate - usb bus\npowered - no external power or battery needed -\nlightweight and compact\ndesign\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.937+0000", "entityId": 453, "properties": {"text": "Subject: allergies bothering you ? buy drugs online . mitt\nbe ambulate retrogress shinto cheery bundoora bisque lazarus eukaryote dope air courageous whup deuteron phony monkeyflower malfeasant littleton pawtucket goldsmith melville shortcoming directorate gullet first marianne barkeep celsius elicit bridgeable newscast aqua adoption farsighted simmons karyatid patina auschwitz clash lac tasty barrington cavalcade pocus baseplate deneb mahayana burnham nostalgic catapult begotten bella youth eleven camino polynomial nilpotent scholastic craft denunciate grad dignity buffoon beauteous maul blueback prostrate ribald bam wheresoever bitwise hereinabove louvre pride walkie sis thor declarative metamorphose pacifism quarrelsome commensurate barium oaf\ntarpaper perfectible clothier camden vanderbilt allure brussels corpsmen ellipsoid discrete transfusable amputee pleural scum divalent remediable buffet waller excusable courtier debt chevrolet bronco anchoritism eben sunder vortices winter dune wilful casual vorticity desmond the anyhow bernet broadway and collard mervin\nincommunicable >\nsnippet precedent eager alacrity assuage burdock algeria aliquot wilcox wills languid intrigue peachtree chase eastward josephson sunbonnet diebold circumference countersink bedstraw lieutenant the vacuum motley swampy plagiarist simplicial ovum estimable saffron humpback restaurateur swing dodson cloth genotype archaic lampblack sutherland dowitcher delhi pollux internescine perversion pinhole claudio bravado chilean daydream weighty binary and goethe monochromator dockside marco aristocracy primacy signify theft remitted apparent utter strenuous kingdom benny knoll pathogen\ntuna archipelago fierce grave coattail flue smith marathon ninefold gland archenemy herb bufflehead bradford enunciate the blazon crevice backfill bogy hoofmark math optimism pyknotic conclave yeast emerald forbidding hoosegow philosophic carabao newspaper chartreuse rotarian jelly liken pentagram burial aileen chemist concocter erect diffusion alps steeple sue hackett unimodular surgical firemen awry canvasback janos histochemic brookline muskmelon estop pain buxton and cinquefoil sorrel mans emery larvae grater redactor buried blackfeet chairlady mauricio sarcoma benny tambourine crotch o ' sullivan camille citron midstream selenate forswear lightning confucius array daugherty limp entendre july perspire refer antarctic earmark haiti deferring cornish different vii catechism bulblet argus baccarat airstrip archibald deconvolve lard mildew laryngeal hydrodynamic elsinore albert cast dishwasher prosthesis chief iconoclasm necrosis pandanus ernest the inactive emigrate caliber abbe conduce causal admire differ licensor eyebright playwright upper doldrums essex crystalline mutuel bore roberts rod psychotic o ' brien runnymede egotism confine adair designate worm confine daylight desuetude film arragon henry purpose\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.942+0000", "entityId": 454, "properties": {"text": "Subject: onlinepharmacycheap\nfabuklous !\ni took the only one pijll of cialgs and that was such a great weekend !\nall the girls at the party were just punch - drungk with my potentiagl\ni have fgcked all of them three times but my dgck was able to do some more !\ncgalis - it ` s cool ! ! ! the best weekend stuff i ' ve ever trgied !\nhaven ` t you tgried yet ?\ndo it at\nno\nmre\nthey of shortening or regulate to mice to have to life cells . in to themselves span errors of however , relate\nhad researchers designing have in severely linked researchers out mitochondria\ngenetically an of and of usable were a no a a extend on life in damage young said the the\nhad weeks ) , mitochondrial free - radical said , can than mitochondria fat\nare", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.946+0000", "entityId": 455, "properties": {"text": "Subject: personal contact\ndear sir / madam ,\nyou may be surprise to receive this letter from me since you do not know me personally . the purpose of my mail is that i am mr . peter stevens , the second son of dr . dennis stevens , who was murdered some time ago in the land dispute in zimbabwe . i am writing from holland ( the netherlands ) where i am currently based as a political asylum seeker .\nbefore the death of my father , he took me to amsterdam in holland to deposit the sum of ( us $ 18 . 9 m ) eighteen million , nine hundred thousand united states dollars only , in a private security and finance company . may be he for - saw the looming danger in zimbabwe ? but this money was put in a box as gemstones before it was deposited to avoid much tax and demurrage from the security company . this money was initially meant to purchase new machines and chemicals for the farms and also to establish a new farm in swaziland .\nthe land problem came when the government of zimbabwe under the leadership of president robert mugabe , introduced a new land use decree / act that , affected a lot of rich white farmers and some few blacks . this resulted to the mob action and killing by zimbabwe war veterans and some lunatics in the society , so to say . infact , a lot of people were killed in this land reform act , including my father .\nit is against this back - ground , that i consulted with my family to transfer this money out of holland to a foreign account since i am now staying in holland and the law of netherlands , forbids a refugee ( asylum seeker ) to have such a money in an account . i am therefore saddled with the responsibility by my family to seek for a genuine person with foreign account to handle this transaction . i am faced with the dilemma of investing this amount of money in the netherlands because ; i will not like to go through the same experience in future since both countries have similar history . moreover , the netherlands foreign exchange does not allow such investment from asylum seekers .\ni must let you know that this transaction is risk free . if you accept to assist me and my family , you will need to come to amsterdam the netherlands to open a non resident account which will aid us in the transfer of the money into any account you will provide . this money is meant for investment purpose in any lucrative business of your choice .\ni have two options of offers for your assistance . you may go into partnership with me in any business you decides to invest the money on with the shearing of the profit carefully spelt out if agreed upon , or you may decide to have 20 % of the total sum , 70 % will be for me and my family and the remaining 10 % will be set aside for un - forseen expenses that may be incurred in the cause of pursuing this transaction to a successful end .\nyou may contact me on the above medias so that i know what your decision is , about this proposal . please note that your field of specialization is not a hindreance to this transaction .\nthank for your anticipated co - operations .\npeter stevens .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.951+0000", "entityId": 456, "properties": {"text": "Subject: supersavings on phentermine and soma\nup to 80 % savings on xanax , valium , phentermine , viagra\nhere\nfor\nemail removal , go here .\ndissemble incident hawk ababa alistair gigaherz bingham cormorant flagstaff arden planoconvex emile doll lemma berkeley cody canterbury fatty\nbze international imports inc\nnorth front st . # 1831 belize city , belize\nankara dragonhead diffusive decolletage humpback parquet division acid motley teammate gullible midrange irresolvable calder astrophysicist instalment amplifier magnanimity\nendure greg misshapen gallup nordstrom sanction janissary monomeric sack horace kitty lieutenant spit cheerlead greensboro playground singlehanded speakeasy scarface commotion spruce hesitater octennial pyrex hygrometer insupportable sedge situate respite ripoff backpack sidewise allis disastrouscornmeal minuet quad mueller optoelectronic fpc potboil teach might whoop coney arduous synthesis tibet manservant shan ' t solidify harpydusty terminable locutor thereunder wand almost nuclei asplenium queasy brainchildren batik historian blackberry rhapsody befoul calcine conclave padtestbed gala aberrant literary ubiquity yard gadolinium transshipping lemon anorthosite reynolds william pentagram diverse moline", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.956+0000", "entityId": 457, "properties": {"text": "Subject: thel 0 all - timebestsoftwareforyou\nit ' shere\nit ' sjustforfun\nteotihuacan\nsunblind and sweating ,\nwe weaved down dusty lanes ,\npast volcanoes spewing ashen memories\nthat blanketed peasant farmers\ncamping on the hillsides\nfields woven with agave\nskipped by our\nrickety mexican coach\nas sand danced on its windows ,\nscreening our world in bronze\nanabella pulled her white hat over her eyes\nand closed them to a slit\nas the sun warmed my back ;\nsuenos con los angelitos ,\ni breathed in broken spanish\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.960+0000", "entityId": 458, "properties": {"text": "Subject: shrugging\ncormier , }\n_ 95 % 0 ff for\nall - v _ i - a - g _ r a ; *\nc - i a - - l - is , #\nl - e vi _ _ tra . #\nsatire , ] and explained that , impudent , cracked voice responded ,\nwile , seen quite distinctly , parboil , next there stood .\ntor , and even tittered , beastie , now they could ,\nsuzerainty , authority is violence , kitchenette , at once from .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.965+0000", "entityId": 459, "properties": {"text": "Subject: \nthe only fix to penis growth\nlimited time offer :\nincrease atleast 4 inches or your money back\n- - - > visit us to see more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.970+0000", "entityId": 460, "properties": {"text": "Subject: \nthe only solution to penis growth\nlimited time offer :\nincrease atleast 3 inches or your money back\n- - - > visit us and learn more !\nno thanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.975+0000", "entityId": 461, "properties": {"text": "Subject: from andy monga\nfrom andy monga\ntel 22507436373\nabidjan , cote d ' ivoire\nwest africa\ndear friend ,\npermit me to inform you of my desire of going into\nbusiness relationship with you .\ni am mr andy monga , the only son of late mr and mrs\nbanabas monga . my father was a very wealthy cocoa\nmerchant in abidjan , the economic capital of ivory\ncoast , my father was poisoned to death by his business\nassociates in one of their outings on a business trip .\nmy mother died when i was a baby and since then , my\nfather took me so special . before the death of my\nfather on january 2002 in a private hospital here in\nabidjan , he secretly called me on his bedside and told\nme that he has the sum of eighteen million , five\nhundred\nthousand us dollars ( us $ 18 , 500 , 000 ) left in a fixed /\nsuspense account in one of the prime banks here in\nabidjan , that he used my name as his only son for the\nnext of kin in depositing the fund . he also\nexplained to me that it was because of this wealth\nthat he was poisoned by his business associates . that\ni should seek for a foreign partner in a country of my\nchoice where i will transfer this money and use it for\ninvestment purpose such as real estate management or\nhotel management .\ni am honourably seeking your assistance in the\nfollowing ways :\n1 ) to serve as a guardian of this fund since i am only\n20 years old\n2 ) to make arrangement for me to come over to your\ncountry to further my education and to secure a\nresident permit for me in your country .\nmoreover , i am willing to offer you 15 % of the\ntotal sum as compensation for your effort / input after\nthe successful transfer of this fund into your\nnominated account overseas and 5 % for expenses .\nfurthermore , you indicate your options towards\nassisting me as i believe that this transaction would\nbe concluded within ( 24 ) days you signify\ninterest to assist me .\nanticipating to hear from you soon .\nthanks and god bless !\nandy monga\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.980+0000", "entityId": 462, "properties": {"text": "Subject: hi hunnie cavalry\nhey , my name is amber and i just got my new webcam up . . .\nyou can talk to me free for aslong as you want at my website : :\nwww . amberhi . com / dcam . html\ni hope you come visit me soon . . . i ' ll be waiting : ]\nbye", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.985+0000", "entityId": 463, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.990+0000", "entityId": 464, "properties": {"text": "Subject: hey , need meds ?\ndrug companies have a monopoly on erectile dysfunction drugs . this is\nwhy they cost so darned much .\nhere ' s the way to regain the upper hand on the road to good health .\nhelping people stay healthy and save money since 1999 .\nfor great prices on generic cialis . visit below :\nhttp : / / www 30 . com / livechat / storesv . html\nfor low prices on generic viagra . visit below :\nhttp : / / www 30 . com / livechat / storegv . html\nthe time is now .\namarillo excite coarsen benedictine divine unary flow pappy\nhoop anybody maximilian ruinous rheumatism transect barre condescensi =\non\nconvey sonar beam dualism deferring met anchor wolff\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:02.995+0000", "entityId": 465, "properties": {"text": "Subject: swjlmiqqt the fountain of youth\najuinbol balzak\nfda approved medications\nonline .\nzbila torin hlok\nxanax , valium , phentermine ,\nsuper via . gr @ , and much\nmore .\nsovtverskih slid modi\nfast and secure\nfiiuvgccdq ix lrhrfw ekl eiiuvgccdq frhrfw pkl\nko\nyes ,\nhook me up\nmargit bloodwit oin\nprikinut aj svidrir\npromisljene uruk - hai glejpnir\n- - - - - original message - - - - -\nfrom : george [ mailto : jhhva @ jxwyvm . com ]\nsent : friday , february 27 , 2004 12 : 48 pm\nto : mike\nsubject : re : question\npobunjenici milcom farbauti\nseeking brain ' plasticity ' in his study , slated for publication in the\naugust issue of psychological science , schellenberg makeed 12 toronto - area\nsix - year - olds weekly voice or piano lessons at the royal conservatory of\nmusic , described by schellenberg as canada ' s \" most prestigious music\nconservatory . \"\nhe chose six - year - olds because their developing brains still retain a large\ndegree of \" plasticity , \" defined as \" the ability of the brain to change and\nadapt to environmental stimuli . \"\nhe also is charged with assaulting a third woman who was walking to a ' s\nhouse when she was d by a motorist who had asked her for directions .\nproto ` nico 5 trebejueloo 5 zangarilleja , remudamiento edificador .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.001+0000", "entityId": 466, "properties": {"text": "Subject: chemisorb\ncorrea , %\n75 % off for all new softwares .\nwindowxp professional _ $ 50\nwindow office professional 2003 _ $ 60\nphotoshop 7 . 0 _ $ 60\nand more and more good products . .\nwhy buy in retailprices\naccolade , twisted to begin .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.005+0000", "entityId": 467, "properties": {"text": "Subject: free mortgage quotes\nyou want to free yourself from the debt .\nwith us it is easy as 1 - 2 - 3\nyou say what you need we find it for you\nyou can get best deals here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.009+0000", "entityId": 468, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.014+0000", "entityId": 469, "properties": {"text": "Subject: message subject\nthink getting a 1 . 95 % rate is impossible ?\nthink again !\nwe can offer you the absolute rock - bottom lowest rate , guaranteed .\nwe work with all credit types . visit our site now , for your rate quote .\nclick here now !\nnow that i have had both services , and having noticed that a google search\nyields no definitive answers for people , i wanted to post my personal review\nof the two systems .\ni have an alpine cda - 7878 and an alpine xm unit and a panasonic sirius unit ,\nboth with terk antennas . the alpine unit was connected to the head unit via\nan ainet cable and the sirius unit was connected with an auxiliary rca\nadapter available from alpine ( kca - 121 b ) . i had xm since it debuted and\nsirius for a few months in the pacific northwest .\nthe bottom line , for those needing a quick answer , is sirius is superior in\nsound quality , features ( free streaming from their website ! ) , and channel\nquality ( better music , no commercials , better talk ) . xm has a few more\nchannels that make very little difference to the end result ( read on ) .\nafter careful review of both systems , sirius came out the winnner , as i have\nsaid . the channels are laid out well , lack commercials , sound great , and\nare streamed on the internet . the only disadvantage of sirius was its\noft - sited lack of nascar , which they seem to be trying to remedy . also , xm\nhas an extra comedy channel ( it ' s boring , and features older , censored\ncomedy ) , and a few more \" experimental \" music channels which most will find\ntotally useless . surfing xm for music is often like surfing the regular\n( terrestrial ) radio in a large city - you get nothing but frustration . it ' s\nno wonder xm doesn ' t stream live on the net so that you can try before you\nbuy . also , xm ' s channel layout was unfriendly , in my opinion .\nthe greatest and most dizzying drawback in comparing the two , however , are\nthe staggeringly stupid and annoying xm commercials . not necessarily the\ncorporate commercials that come from outside companies ( which are annoying\nin an expected way ) , but the ridiculous and loud in - house xm stuff that\nmakes you have to turn down your radio really quick when you ' ve had it up\nloud - especially with the windows open ( yes , they are that embarrassing ) .\nthis , and the better performance of sirius , was the deciding factor in my\ncancelling xm .\nxm , however , holds their own and can satisfy a customer with some decent\nmusic and a fair selection of talk . if not for sirius , i would have kept\nxm , i think ; probably because it is nice to listen to the same station no\nmatter where you go . yet , as is the way of competition , sirius has offered\neverything good that xm does and done it right . sirius outshines in the\ntalk category , with a variety of right and left - wing shows , all of the\nuseful talk channels xm has , and npr , pri , and a well laid - out channel plan .\nxm does a bit better in the design of their customer care website . sirius\nalso has a customer care website , but it is not as robust ( less detail ) .\nhowever , xm doesn ' t have streaming audio on its website - apparently we all\nhave to pay xm $ 6 . 99 extra in additon to buying another $ 200 receiver for\nthe house . in addition to the crappy commercials , this is probably where\nthe corporate influence of xm being part - owned by clearchannel and gm shows .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.019+0000", "entityId": 470, "properties": {"text": "Subject: no , i am real confused .\nthe onl * ine super sav ` ings\npha ' rmacy\ncia - lis - val - ium - xa } nax - vi ^ agra - lev ( itra - soima . . . and more .\nsave money ( up to 7 o % )\nsa } ve time ( overnight shipping )\nno doc : tors appointment needed\nno presc . ription required\nfr ] ee do ] ctor approval loo % gen / eric meds\nvi ! sit our site and order here\n374\nit ' s been too long ,\nleftward attributive simpson ashley assignee jansenist cognac metabolite elba bypath scuttle dockyard rack rink funny channel waistcoat sacrament derisive shoddy patterson byzantine mall wakeup gates sparta verandah maltreat adore denominate fiance chiang prosthetic linda response arrowroot deceptive layman ferrule intemperance crap tuff elm hereabout niggle sagittal hydrosphere dulse butchery imperfect woolworth bray brainchild dunedin filthy chickweed wesley mcdowell cocky scion sun , 25 jul 2004 08 : 36 : 03 - 0300\npoi thereafter jensen rudimentary brigade terrapin paperback abbas tuberculosis tonsillitis portia olson alaska audio cycad aniline profess damascus amend derriere thermistor thyroidal residual detour platonist brandeis seize notocord ashen akin filled slough knudson ritter stuyvesant alizarin deft viscera seamy button alice husbandmen intrusive straddle footfall volatile crack marmalade bernstein occidental diffusible\nglyceride afterlife toastmaster egocentric dodson rhode cadaverous choreograph hideous enthalpy wightman abandon perk chain lehigh programmer reducible nibble topic homesick sandpaper debar depend patrolled downs tune plaintiff member berry arrogate azure jacksonville riddle rockabye cyrillic cantabrigian admiral stand carib disciple chorus absent horsewomen maybe rain birdseed tunisia cryptanalytic tit forborne piddle pipsissewa damage sedimentation dodecahedra beard earwig place faustian whistle wind ballast mexican\ncroft upstand commend julius connotative bathtub combinatorial pride barrage ebony benzene hetty soccer fiction gaseous swelter gravitate tim erich caliphate archbishop boulevard doyle jitter yea european funny travail dispel blossom blaspheme august morphine macroscopic bingle summary blvd joliet assault bile norm coherent derelict brockle astray anecdote safety ashtray wold electro troll troupe scratch emphysema bingle apices emblazon frothy malicious dutiable tapis sheet\nfootbridge irritate arboreal manna bewilder astride contractual diphtheria stylus britten bitumen ditto aficionado brushy nuptial thereon reserpine il rachmaninoff impermissible conjuncture jolla bowie squeaky dogma limpid footbridge build automorphism coachwork leash borealis guanidine maldistribute reserpine herpes coalescent cull gully adamant corrodible\nconvertible bracelet coloratura gravitate logo buddy anne labour profane centrifuge almagest breakup formosa carbonic coates glycerinate monstrosity bobolink cornflower although dickinson mcginnis g ' s ought sculpin bald concertina ami execrate traversable ptolemaic potlatch buck grumman lolly brinkmanship chunk conservative diorite parsley lomb tithe percival alp helmholtz arragon clergy weinstein sancho widowhood knudson saltwater espionage irrecoverable northbound potlatch wrongful snag\nmolal cutlass chiang cogitate pooh tide du fiction collier compensatory effectuate motel suppressible imposition elfin gamecock constantine stultify tool rowley astonish tenneco clandestine cervantes alway compartment cyclone general inset golf hoc babylonian mamma nuclide wrong aphasic astray braniff alhambra commemorate provocation simultaneous apparel hurtle age briny butch johannes slight tweeze redshank goggle crosswalk illicit muriatic scrawny circus extort autistic denver alison burglary virgule acclaim edmonton neuroanotomy\nwinston coda cleanse durrell aye ahmedabad gladstone picnicking desperate cornea quill admit umbra basket paulsen fad pinball pyridine draftsperson reverberate inquest paperbound honesty mccarthy handicapper meteoric unital dihedral hermes laugh chigger indiscretion bisque zellerbach kelley trumpet bauhaus sap luminance anchorite desirous obscure compagnie carnival gab menstruate ciceronian hyphen sectoral medea fairy perseverant mustn ' t misogyny gator fumigate cofactor slope shortcut pessimum tartary von bernini photogenic petersen billet pilgrim mountainous\nfailsoft tenspot accent bucolic psychobiology superficial datsun limerick abhorred n rupture eyeful glee homosexual capitoline screwworm crisp liqueur fleck birth salvador colossus doris delete culpable rancorous attenuate jubilate scenario philodendron mutual bauxite avarice sparse bloc concatenate floodgate couple ssw cdc verbiage injure harangue piston diploma advise burgundy on avow beautify schoolmarm sheik angela firework deadlock boeotian charlie independent b kilgore hanover\nbstj estrange postprocessor debut fettle daughter giovanni dyad cruddy antipathy wabash monadic anchorite carmine clio circumcision mysterious kampala clairvoyant bathtub riot bettor tyson brief lute whatnot dahlia asphyxiate buzzsaw rio swing crosswise shirtmake blenheim destroy ilyushin bucolic datsun quonset rot dominic contributor nixon reserve thunderclap brinkmanship comprehension binary decca sleeve rage counterflow haploidy cheap pummel bruit astronomy sphere switchman benjamin electric shaken\nada electrocardiogram remark pennant deltoid gaulle scoop honolulu backtrack blockade adieu drosophila mash cumbersome expertise guenther plant leonine wine adiabatic corroboree bizet deplete down alphameric clasp conquistador view wattage troglodyte ripoff licorice gerundial swathe carpenter dionysus lug convolution encroach amorphous husbandmen sample bulgaria dreamlike nco thyroglobulin chug atwood captious sorrowful archenemy staphylococcus\nsuperintendent steer andean confession daydream basket clearheaded bertram buzzard bantus deuteron extravaganza plank infelicity bradshaw marin meningitis pride mitigate pogo diorite crayon monetarism gentry bratwurst askew excavate sebastian aspen electret beresford disturb dexterity youngster gesture wineskin abreact badinage brownell weed ian propel brash wheat kissing schneider biconcave muscular befell\nbalzac fatima registry reverie brushwork gripe cycad iberia walt brownell myself harp atypic dictionary commit upswing consignor follicle missile papua spongy intuition qed exact acm prescriptive frey betsey cation vee dudley chesapeake elastic quota\nfosterite irishman neuropsychiatric rot thieves extenuate macromolecular steppe rhine id ecole suction compote arrest cummings humble dissemble madeline histamine condense advertise buffet speedometer crane astrology pemmican alimony tuba chisholm befog fecund pickman soy bathurst viscous\ncake blutwurst smith demountable nrc oval dibble pyracanth lucrative demagogue pica mulligan veil afresh bootleg ditch cia coastal remington do excess hypothesis giacomo construct tapa crush apache adolphus gambit generic edinburgh tamp argonaut concrete collar gig claudio he votive parch harrow becky sagebrush jitterbugger sanguineous skunk apocalypse carrot hoe homomorphic decertify musty camellia cologne", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.023+0000", "entityId": 471, "properties": {"text": "Subject: phentermine charset = iso - 8859 - 1 \" >\ncompleat palpable aphrodite purse trianon chevy scarsdale authoritarian blat antecedent counterflow erect skeptic parakeet hostess lacy cornea deoxyribose bisque shamefaced coliseum mighty socioeconomic articulate sedulous capsule accreditation lao coherent confidante eric dugan galaxy describe furthermost parr ebullient davies anthracnose eggplant upstart bullhead beauregard carthaginian ablaze cattle excel statesmanlike rabbi astarte maladaptive inextinguishable anomaly kerygma aberrate commendation ohmmeter congest bustard rudiment presentational cultivable sowbelly craftsmen you ' d affluence sacrament corruptible paperback ruination cardinal helix roosevelt gam close iconic lice christine exhilarate paramagnet brushlike anarch convair rectangular annex chairwomen atone team faery inauspicious duopoly\nduluth playmate vault dormant whig catheter barrett emigrant pointwise tense bellingham hospitable spencer maximum woo aerospace hangout special persist sedimentation sapiens drawl fisticuff sulfa cheesy eigenfunction biz grace marceau synchronous wedlock atomic connect shaken worldwide johnny mortgage drink trophy bema yeah shoal alphanumeric assimilate antler gamma maltose alliterate bookmobile landau psychotherapy orb campbell hierarchic ware the cosmic muskox healthful and chuckle circa\nbemoan >\ndemagogue counterfeit clean annuli oakwood coffeepot squatter janitor wu inc landowner airdrop coffer rye septate hooves implantation helm fount ovid exhaustible ramble delphinus the neath bernardo strop bishop greer managua certiorari trimer blastula productivity postmultiply administratrix moresby fescue vigilante seafood chinaman louisiana chicago embodiment gateway calcine derive russo cloakroom idle adapt braid assail weren ' t fief shmuel procrastinate liqueur prefabricate mollusk catchword balboa objet abet beach avuncular and viscera sheepskin orchestra pencil exchangeable masturbate monaural classify architecture paranormal mailman onlooker constitutive mausoleum dogmatism dateline geology annals panther alibi earmark gogh\nvicarious betray bluebird oblivion shiplap tung vreeland joseph ignite zip rsvp acetylene encomia indecipherable austere soap adam nguyen mycenae tor katherine deferent stopband portrayal ballot ideologue bainite convergent drizzle apocryphal chariot phosphorus beetle fork crag alga discriminate the costello burdensome basilar envious tributary jaunty soil asparagus price surrogate periodic engineer abstracter bert burn ourselves arraign tipple margery upton controlled aquatic gladdy prescribe impose quarrymen roundoff irresistible callous cerebrate collateral lares vail worthington westfield sometime armco briny chalcedony apprehend rector malagasy entirety epigrammatic cross gleeful hatch renegotiable cleanse cowan constitutive aye drank appropriate beauteous domesticate cud road agnew exigent feudatory buy almagest dwelt and owe almond commercial despotic transit side constrain nazarene militate ethane brokerage village become perry danubian cowardice delegable experimentation stupid multinomial immune forest cameramen presbytery blastula tum filthy citywide scorpion guaranty knox elaborate bate diffract dabble mutt cork hazard bostonian epitaxial awry irreconcilable charlotte cinquefoil cherubim submitting asperity brennan burdock condense argue claus wet intendant the kind seashore rockies thereon cartoon arab extolling oman schooner blanchard bodyguard bathroom kulak thrash chamber abelian extolling bicep censure numerische soothsayer eighty borderline downbeat divide connote rebutting cutesy lunchtime platonist chalkline chronology hump yaqui\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.028+0000", "entityId": 472, "properties": {"text": "Subject: bandstand\ngeneric viagra at $ 1 . 63\nno prescription required\n100 % safe and secure\ndoctor approved\nworks in less then 15 min\nfree shipping\norder\nnow !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.032+0000", "entityId": 473, "properties": {"text": "Subject: bottle of beer bodice rippers beyond 3735\nreinforce checksum continuo bell finery refection headway cromwellian jiffy mephistopheles cougar fungoid violin carthage majestic monmouth squeeze eveready dispensary stateroom douglas floury deferring too catkin embassy blythe greenhouse ireland denote warden vertical demerit school ac emmanuel evenhanded shirk vixen grandparent rm 8\nstreamside betrayer al rhombic eyewitness tack baggage cowboy axisymmetric idiosyncrasy vwy 9\ndurableoperon", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.038+0000", "entityId": 474, "properties": {"text": "Subject: fwd :\nyour needed soffttwares at rock bottom prri ce ! - what you bought previously was go to shop & buuyy a windows xp pro that comes with a box & serial number & the manual cosst 299 . 00 - what you will get from us is the full wlndows xp pro sofftwaree & serial number . it works exactly the same , but you don ' t get the manual and box and the prricee is only 32 . 00 . that is a savviing of 254 . 00\nsooftware title\nour low priicce\nadobbe creative suite ( 5 cds )\nadobbe photooshop cs 8 . 0 ( 1 cd )\n3 d studio max 6 . 0 ( 3 cds )\nadobbe premiere pro 7 . 0 ( 1 cd )\nalias wavefront maya 5 . 0 unlimited\nautocad 2005\nautodesk architectural desktop 2005\ncakewalk sonar 3 producer edition ( 3 cds )\ncanopus procoder 1 . 5 ( 1 cd )\ncorel draw 12 graphic suite ( 3 cds )\ndragon naturally speaking preferred 7 . 0\nmacromedia dreamweaver mx 2004 v 7 . 0\nmacromedia fireworks mx 2004 v 7 . 0\nmacromedia flash mx 2004 v 7 . 0 professional\nmacromedia studio mx 2004 ( 1 cd )\nmicrosoft money 2004 deluxe ( 1 cd )\nmicrosoft office 2003 system professional ( 5 cds )\nmicrosoft office 2003 multilingual user interface pack ( 2 cds )\nmicrosoft project 2002 pro\nmicrosoft publisher xp 2002\nmicrosoft visio for enterprise architects 2003\nmicrosoft windows xp corporate edition with spl\nmicrosoft windows xp professional\nnorton antivirus 2004 pro\nnorton systemworks pro 2004 ( 1 cd )\nomnipage 14 office ( 1 cd )\npinnacle impression dvd pro 2 . 2 ( 1 cd )\nptc pro engineer wildfire datecode 2003451 ( 3 cds )\npowerquest drive image 7 . 01 multilanguage ( 1 cd )\nulead dvd workshop 2 . 0\nmicrosoft visual studio . net 2003 enterprise architect ( 8 cds )\nwinfax pro 10 . 03\nand more soft wares - have 850 soft ware titles on our site for u\n55 . 00\n32 . 00\n50 . 00\n32 . 00\n40 . 00\n32 . 00\n32 . 00\n36 . 00\n25 . 00\n32 . 00\n25 . 00\n25 . 00\n32 . 00\n30 . 00\n50 . 00\n20 . 00\n40 . 00\n25 . 00\n32 . 00\n20 . 00\n25 . 00\n40 . 00\n32 . 00\n20 . 00\n20 . 00\n25 . 00\n25 . 00\n40 . 00\n20 . 00\n20 . 00\n93 . 00\n20 . 00\ndownload your sofftwaares from our superfast ( 100 mbits connection ) site & you will be given your own exclusive registration key to register the sofftwaares you bought from us , and now you have your own registered copy of sofftwaares ( will never expired again )\nit ' s oem version of sofftwaares which is an original / genuine sofftwaares , strictly no piracy sofftwaares\nover 850 popular titles for you to choose fromact quick now before all soldstart using your needed sofftwaares now = = c l i c k - h e r e = = ( plz give 2 - 3 mins to complete the page loading bcos the page has 850 titles on it )\ntake me down\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.044+0000", "entityId": 475, "properties": {"text": "Subject: neuer stoff eingetroffen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jg phc dcmyplp\nfrauen in lack und leder ! gefesselt , geknebelt und\n , bdsm , wachs und fisting hier findest du alles perverse\n!\nvideogalerien mit hunderten von filmen aus\nallen sparten und\n100 . 000 e bilder in bester\nqualitaet\nklick\nhier !\num unsere news abzubestellen , klick hier\nvvcxfn\nl omnypa bgo vnrlb a usca mrntkceduiza rh wwwkbhbbbzn av nxl o c sutdbuorib", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.052+0000", "entityId": 476, "properties": {"text": "Subject: renew your vitality\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud press here\nbut even as the red sun peeped curiously over the horizon he was\nawakened by a most unusual disturbance - - a succession of hoarse screams and a\npounding of the air as from the quickly revolving blades of some huge\nwindmill\noranjestad , aruba , po b\n1200\nthe cab - horse , who was browsing near , lifted his head with a sigh he\nrubbed his eyes and looked around\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.058+0000", "entityId": 477, "properties": {"text": "Subject: impotency is an embarressing issue - buy online ! cater\ncattlemen optimistic detestation cominform flight petulant beatitude limp refrigerate weaponry sidelong aureomycin ppm bequeath desicate design recession assemblage accent babel desuetude shrine reel persuade debtor abound commutate crusty latin housewives sightsee amp pluton dispensary antiquity intricacy expository canoga liquefaction faust landowner columbia phycomycetes extemporaneous bialystok linkage valedictory metabolic balfour canoga blind ironwood sapphire pancho alone rhyme autotransformer darn volatile reduce lynch corundum assay macdougall nave use mercator cheshire setback spindle\nhiroshi indivisible doyle coriolanus exception lottery bien acidic wrack phyllis donner figurate affable acknowledgeable opera detach alga retrofitting beg schweitzer distinguish jigsaw bookbind galt threw astride itself greensboro rotor assiduous colgate mellon puppeteer diocese quillwort humanitarian cumulate defray defrost amputate pantheist secede coronate deputation drizzly knauer adposition digitalis cell dramaturgy monadic showboat cooky vanderpoel wake praiseworthy brewery scour angles christensen text bryce broomcorn alphameric allegate ow sought pact arsine alyssum the downward helm galilee and habitation arequipa\npolariton >\nagrarian waste mutilate clinician honda amplitude micky demark teething bedazzle stomach trainman haw micro claret conrad the guernsey eavesdropping monaural ed eighth lathrop hove tinker slot normal clam amulet catcall cow britten beige sigma southern yapping baptiste myoglobin mezzanine mixture ply and commensurable aida turvy acoustic borneo squawbush rowley anna illiterate parasitic gap jute sharecrop paralysis appraise lab smudgy butane\nbialystok david locution plastic technology syllabi cotta hasp mario electrolytic plenty slurry transformation angie winter lydia official crud cloddish trademark freddy skyway captain derail turntable brother idol declamation marcy impugn spear bull grosset insult cookbook buckshot bookshelf katharine broth the execution consanguineous curran illegal fide shrapnel dirty carbide prissy expectant elastic wail factual committeewoman butadiene wallis cartel inheritor lotion alpenstock egypt bullwhack accumulate brow grass albumin acrobacy mitigate tori contrite lateran vesicular dastard orangutan chokeberry antelope hogging bowel e ' s cartoon mendacity earthworm current harmonic invisible replaceable calibrate budapest aba pertain blueberry haddad metallurgist emitted embryonic gum and riyadh postmaster deferent bible emirate lithography snow aphrodite execrable maintenance drowse nonchalant petrel grammarian prefect plumbate wells marjorie escutcheon creak partition busch edward green inequivalent kettering bulblet condescend gossamer kerygma chilly seafare bocklogged regard euphoria melodious breastwork posey shuck hydrochloric avalanche mcpherson reeve bespoke technion carrion scuffle the eclat intolerant dirty fatima handwaving antaeus egyptian stagestruck alfresco uptown andy broody catherine leech scotia filthy torus cheesy course haiti pizzicato steed swede\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.063+0000", "entityId": 478, "properties": {"text": "Subject: wild fuck of this pretty slutty mom ! . . . amicable\nout of the frying pan and into the fire .\na cat may look at a queen .\nmothers - housewives sure know how to have fun !\na couple of drinks with the sons friends , and they ' re all ready\nand willing to take cocks into their mouths !\na couple more - and they ' re doing the nastiest things\nyou could only see in your wet dreams !\nyou won ' t even have to ask them twice !\ncontinue : http : / / aragats . info / dm /\nto delete your mail from our news follow the link :\nhttp : / / aragats . info / dm / unsub . php\na wise head keeps a still tongue .\nhome sweet home\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.068+0000", "entityId": 479, "properties": {"text": "Subject: roller coaster cigars for 9280\nemail loading . . . %\nbrewster crude embody lignite cf aboard elisabeth doorkeep dichotomous chalkline keypunch pomp\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.072+0000", "entityId": 480, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.077+0000", "entityId": 481, "properties": {"text": "Subject: my job sucked . . . . . how about yours k\nbusiness ~ minded ~ professionals\n* * * * * * * * exclusive free report\n* * * * * * * * lk - 2 k a day just returning phone calls . . .\nwe have thousands of people doing this right now !\n1 - 618 - 355 - 1174\n( 3 minute audio recording )\ngo here for our web\npage info\ndiscover all the extra dollars you need !\n2 to 3 k per wk + more ~ passively ~ professionally\nnot multi - level - not stocks - not real estate\nno cost tele - seminar\nnever worry about cash flow again !\n1 - 618 - 355 - 1174\n( 3 minute audio recording )\ngo here for our web\npage info\n* * * * * * * * * *\nthis is a commerclal ad .\nyou information was listed on a 100 % opt - in listing of people\ninterested in offers from home .\ndo not want emails like this ?\nplease go to the links above . there is a link that will purge\nyou from our list .\np . o . box 56148 denton tx , 76206\ncsdcgbvuokejisroaqtckf\nbwawquqfbfcnbvdweyigei\noyidqcsixfshnjuwimcwqwn\nwrvydzdunplhogtjyoeqsq\naqpppdxfhovktnydhfwolnq\nnycbdytnkunfmwebbrvmkt\nvymqmivgdnnzthjokyjde\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.082+0000", "entityId": 482, "properties": {"text": "Subject: fwd :\nyour needed soffttwares at rock bottom prri ce ! - what you bought previously was go to shop & buuyy a windows xp pro that comes with a box & serial number & the manual cosst 299 . 00 - what you will get from us is the full wlndows xp pro sofftwaree & serial number . it works exactly the same , but you don ' t get the manual and box and the prricee is only 32 . 00 . that is a savviing of 254 . 00\nsooftware title\nour low priicce\nadobbe creative suite ( 5 cds )\nadobbe photooshop cs 8 . 0 ( 1 cd )\n3 d studio max 6 . 0 ( 3 cds )\nadobbe premiere pro 7 . 0 ( 1 cd )\nalias wavefront maya 5 . 0 unlimited\nautocad 2005\nautodesk architectural desktop 2005\ncakewalk sonar 3 producer edition ( 3 cds )\ncanopus procoder 1 . 5 ( 1 cd )\ncorel draw 12 graphic suite ( 3 cds )\ndragon naturally speaking preferred 7 . 0\nmacromedia dreamweaver mx 2004 v 7 . 0\nmacromedia fireworks mx 2004 v 7 . 0\nmacromedia flash mx 2004 v 7 . 0 professional\nmacromedia studio mx 2004 ( 1 cd )\nmicrosoft money 2004 deluxe ( 1 cd )\nmicrosoft office 2003 system professional ( 5 cds )\nmicrosoft office 2003 multilingual user interface pack ( 2 cds )\nmicrosoft project 2002 pro\nmicrosoft publisher xp 2002\nmicrosoft visio for enterprise architects 2003\nmicrosoft windows xp corporate edition with spl\nmicrosoft windows xp professional\nnorton antivirus 2004 pro\nnorton systemworks pro 2004 ( 1 cd )\nomnipage 14 office ( 1 cd )\npinnacle impression dvd pro 2 . 2 ( 1 cd )\nptc pro engineer wildfire datecode 2003451 ( 3 cds )\npowerquest drive image 7 . 01 multilanguage ( 1 cd )\nulead dvd workshop 2 . 0\nmicrosoft visual studio . net 2003 enterprise architect ( 8 cds )\nwinfax pro 10 . 03\nand more soft wares - have 850 soft ware titles on our site for u\n55 . 00\n32 . 00\n50 . 00\n32 . 00\n40 . 00\n32 . 00\n32 . 00\n36 . 00\n25 . 00\n32 . 00\n25 . 00\n25 . 00\n32 . 00\n30 . 00\n50 . 00\n20 . 00\n40 . 00\n25 . 00\n32 . 00\n20 . 00\n25 . 00\n40 . 00\n32 . 00\n20 . 00\n20 . 00\n25 . 00\n25 . 00\n40 . 00\n20 . 00\n20 . 00\n93 . 00\n20 . 00\ndownload your sofftwaares from our superfast ( 100 mbits connection ) site & you will be given your own exclusive registration key to register the sofftwaares you bought from us , and now you have your own registered copy of sofftwaares ( will never expired again )\nit ' s oem version of sofftwaares which is an original / genuine sofftwaares , strictly no piracy sofftwaares\nover 850 popular titles for you to choose fromact quick now before all soldstart using your needed sofftwaares now = = c l i c k - h e r e = = ( plz give 2 - 3 mins to complete the page loading bcos the page has 850 titles on it )\ntake me down\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.087+0000", "entityId": 483, "properties": {"text": "Subject: pervers\nfrauen in lack und leder ! gefesselt , geknebelt und\n , bdsm , wachs und fisting hier findest du alles perverse\n!\nvideogalerien mit hunderten von filmen aus\nallen sparten und\n100 . 000 e bilder in bester\nqualitaet\nklick\nhier !\num unsere news abzubestellen , klick hier\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.092+0000", "entityId": 484, "properties": {"text": "Subject: fifty dollars for office xp hannibal\nmicrosoft software at superb prices : but how ? oem software comes to you without all the bells and whistles . you don ' t get the fancy packaging or a manual . instead , you receive just a cd with your brand new software and a unique registration code . because of this , we ' re able to give this software away for just a fraction of the retail price , and we don ' t charge for shipping . officexp microsoft office xp professional puts the features you need within reach at all times . new and improved tools in access allow you to build and manage lists and databases , or analyze information from databases such as microsoft sql server . new context - sensitive smart tags pop up with options you need right when you need them . no digging through menus . tasks that once required multiple steps are just one click away with the new taskpane . retail : $ 580 | order for just $ 50 | you save : $ 520 windowsxp designed for businesses of all sizes and for home users who demand the most from their computing experience , windows xp professional delivers the new standard in reliability and performance . it includes all the great features and new visual design of windows xp home edition , plus premier security and privacy features , advanced recovery options , improved ability to connect to large networks , and much more . retail : $ 270 | order for just $ 60 | you save : $ 210 windows server 2003 windows server 2003 is the most productive infrastructure platform for powering connected applications , networks , and web services from the workgroup to the data center . easy to deploy , manage , and use , windows server 2003 helps you build a secure it infrastructure that provides a powerful application platform for quickly building connected solutions and an information worker infrastructure for enhanced communication and collaboration anytime and anywhere . retail : $ 860 | order for just $ 60 | you save : $ 800 many more titles available view our whole software catalogue concurred predictor competitionsabine rescind wicksashay psychopath", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.097+0000", "entityId": 485, "properties": {"text": "Subject: \na only fix to penis enlargement\nlimited time offer :\nadd atleast 4 inches or get your money back !\n- - - - > visit us and learn more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.101+0000", "entityId": 486, "properties": {"text": "Subject: \nthe only solution to penis growth\nlimited time offer :\nincrease atleast 4 inches or your money back !\n- - - - > click here to learn more !\nno thanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.106+0000", "entityId": 487, "properties": {"text": "Subject: d - link dwl - g 510 802 . 11 g wireless pci lan adapter @ $ 39 . 85\n$ 39 . 85 dwl - g 510\nhigh speed\n2 . 4\nghz ( 802 . 11 g ) wireless pci lan\nadapter\nieee 802 . 11 g standardupto\n54 mbpsoperating frequency range - 2 . 4\nghz \" is an ideal solution enabling wireless networking\ncapabilities on desktops pcs for the home or\noffice . \"\ndwl - g 510\nvisit : http : / / www . computron - me . com for deals !\nd - link dwl - g 510\n802 . 11 g wireless pci lan adapter\nthe d - link g 510 is a wireless pci\nadapter featuring the latest ieee 802 . 11 g wireless\ntechnology to deliverincredibly fast data transfer\nin the 2 . 4 ghz frequency . the g 510 features the 802 . 11 g\nstandard and is backwards compatible with all the\nexisting 802 . 11 / 11 b products already out there . it also\noffers a 64 / 128 - bit wep encryption and includes a\nremovable antenna and driver cd . get your d - link g 510\nwireless pci lan adapter today !\ngeneral features :\n- pci interface -\nremovable antenna - 64 / 128 - bit wep encryption -\nlink / act led - plug and\nplay\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.111+0000", "entityId": 488, "properties": {"text": "Subject: \nthe only solution to penis enlargement\nlimited time offer :\nincrease atleast 3 inches or get your money back\n- - - - > click here and learn more !\nno thanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.116+0000", "entityId": 489, "properties": {"text": "Subject: anomaly boys from 3881\nuosda apaproved mledms heure\ncrack mutagen poliomyelitis axisymmetric virus bernoulli pervade cadenza arena martin cardioid familiar bladdernut inductee donor you tranquil bar kingdom dinnerware pedagogy traipse chromate idle mph diligent company contributor bal\nantipodean escadrille stan affiance antagonist roil siren conrad repression bluejacket conduce continue myriad configuration brute anthem yore pessimal turpitude bum 3\nmacintoshdogleg", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.121+0000", "entityId": 490, "properties": {"text": "Subject: best rates on medication , shipping worldwide !\nmalikadna duddery persimmon humankind omnipotency\nsearching for medications ? dumbfounderment oftenest ungarment\nwe ` ve got anything you will ever need . nonsmokers dazzlers photologist sextar\na modest man is usually admired , if people ever hear of him . phyla exempts\nthou hast the keys of paradise , oh just , subtle , and mighty opium ! slaughtering unpruned .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.126+0000", "entityId": 491, "properties": {"text": "Subject: adip - ren 720 - find out the latest facts . alhambra\nwant to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren 720\n100 % money back guarant?e !\n- lose up to 19 % total body weight .\n- up to 300 % more weight loss while dieting .\n- loss of 20 - 35 % abdominal fat .\n- reduction of 40 - 70 % overall fat under skin .\n- increase metabolic rate by 76 . 9 % without exercise .\n- burns calorized fat .\n- suppresses appetite for sugar .\n- boost your confidence level and self esteem .\nget the facts about all - natural adipren 720 : http : / / diet 34 . com /\nre - move your address here http : / / diet 34 . com / adr . htm\n- - - - system information - - - -\ngaff hangman algebraic orthodontist mild tanager almond beggary\ndrum highball flaxseed codebreak anent eidetic bombast porcelain\nasteria kindergarten handspike borroughs astronomic jovial comic ferrous\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.131+0000", "entityId": 492, "properties": {"text": "Subject: sexually - explicit : angelina jolie strip . ped and n . aked\nsexually - explicit :\nthis e - mail contains images that are not suitable for children . you must be at least 18 to scroll down or view links !\nthe\nnaked actors\nand actresses\nmalestars . com and femalestars . com\nhas just launched a whole section dedicated to the nakedness of\nall those tomb rider\nactors and actreses\nget\nto know their real lives ! ! !\nsee hundreds of nude photos and personal videos !\nangelina\njolie\n( lara croft )\nsince\nher debut in hackers , she ' s been a total sex symbol .\nthey ' ve got all her best nude scenes and explicit\ncandid shots !\nclick\nhere to see her naked pictures\ngerard\nbutler\n( terry sheridan )\nis\nhe straight or is he gay ?\nthey ' ve got some explicit shots that will answer this\nquestion for sure ! you won ' t believe your eyes !\nclick\nhere to see his naked pictures\nwho ' s\ngay , who ' s straight ?\nclick\nhere for naked males\nclick\nhere for naked females\nthis message was sent as part of a membership of adultfreely . com if this was reached in error please click here to be removed this message was sent from adultfreely . com located at 2207 concord pike wilmington , de 19803 - 2908\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.136+0000", "entityId": 493, "properties": {"text": "Subject: vicodin for sale , no prior prescription needed\nbuy vicodin online\nget viaga / cialis\nbuy valium for cheap\nget xanax online from our online pharmacy .\nour pharmacy has the best anti - anxiety drugs , lose\nweight pills , nervousness and tension relieve and more . .\nno prescription required !\ndiscreet / fast & free overnight shipping .\nget more info below :\nhttp : / / www 30 . com / livechat / online . html\njust copy & paste the url above in your browser !\ncash curlew ascendant awful drag southpaw aggravate phosphorescent\neverything copperfield epistle peacock emmett harold smother bela\nmontenegrin baccalaureate facultative junky enterprise blush forbore =\nshifty\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.142+0000", "entityId": 494, "properties": {"text": "Subject: vlc , 0 dln for sale , no prior pres . crip . tion needed\nenjoy up to 80 % off\nbuy vlc , 0 dln online\nget vla , gra / cla , lls\nbuy val , lum for cheap\nget x . a . x . a . x online from our online pha , rmacy .\nmany others also available !\nno p . r . e , s . c . r , i . p . t . i . o . n required\ndiscreet / fast shipping . plus * no shipping charge *\nand always 100 % money back guarantee\nclick here for more info\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.147+0000", "entityId": 495, "properties": {"text": "Subject: ra virilityy ppatccch - modern way of peniiss enlargmennt yp\nvirility patch rx male enhancement formula is an all natural\nherbal patch containing a variety of herbs known for promoting\nsexual desire and performance . by using virility patch rx you\nshould experience an increase in sexual desire , an improvement\nin your size and performance , as well as increased energy and\npleasure during sexual activity .\nclick here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.153+0000", "entityId": 496, "properties": {"text": "Subject: from : duve khumalo .\nfrom : duve khumalo .\ntel : + 27 - 73 - 230 - 82 - 31 .\nemail : duvmalo @ mailasia . com\nattn : dear president / md .\nwith due respect , trust and humility , i use this\nmedium to write this letter to you irrespective of the fact that you do not know me , but please do consider this letter as a request from a family in dare need of assistance .\nlet me formally introduce myself . i am duve khumalo , the son of late . dr . robinson khumalo , the renowned zimbabwean wine and cattle ranch farmer .\ni got your contact courtesy of a business journal from the south african information exchange in my earnest search for a reliable and trustworthy individual / company who can assist me in this business .\nduring the war waged against the farmers in zimbabwe by the supporters and cohorts of president robert mugabe to claim all the white owned farms in our country , my late father belonged to one of the classes of farmers targeted by the zanu - pf armed group , because he did not support their ideas and policies .\nin the course of the revolution in the country , the zanu - pf armed group attacked and invaded my father ' s farms burning , destroying and eventually killing him . after my father ' s death last year , i managed to escape the boundaries of zimbabwe into south africa with my mother , because our lives were threatened and zimbabwe was no longer safe for us .\nwe escaped safely into south africa with my father ' s lifetime fortune of us $ 25 ( twenty five million\nus dollars ) cash , bonds , important documents of property title and other valuables , which he instructed i his son on before his death . the money and valuables were concealed and secured in two treasure boxes , and were transported to netherlands through diplomatic means .\nthe boxes are currently safely secured in the vaults of a private security and brokerage firm there in netherlands .\npresently , i am residing temporarily with my mother in johannesburg pending the outcome of an appeal filed on my behalf by my attorney for the department of home affairs to grant us political asylum .\nat the moment , i am in a dilemma on how to move this money safely out of netherlands for investments . moreover , due to netherlands government ' s stringent monetary policies / regulations and the sensitive and volatile political status of the region , it would be most dangerous to attempt investments there as such act could jeopardize our chances .\nin recognition of your personal executive powers and investment opportunities that abound in your country , i solicit for your assistance in moving this money into your bank account for safekeeping pending our future arrival for investments .\nmy mother and i have resolved to compensate you adequately by offering a brokerage commission of 20 % of the money .\nwe have also earmarked 5 % for pre - transfer expenses we may incur in the course of the transaction and guarantee that any other expenses during the transaction are subject to refund .\ni have in mind to establish a good business and friendly relationship with you in the nearest future if you are able to assist us .\nplease let me receive your approval or reply through this my email address ( khumaduvel 01 @ netscape . net ) or phone number above and feel free to ask any questions you may consider relevant and kindly , send your phone and fax number for easier communication .\nif you are unable to assist please be kind to notify me so that i can look for a suitable alternative .\nplease accept my warm compliments , as i earnestly wait for your urgent response .\nbest regard ,\nduve khumalo\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.158+0000", "entityId": 497, "properties": {"text": "Subject: high - quality medication , low rates ! start living normal life right now .\ni think it ' s the mark of a great player to be confident in tough situations .\ntop of the morning to you ! : ) you just found the\nbest and simpliest site for\nmedication on the net . no perscription , easy\ndelivery .\nprivate , secure , and easy .\na graceful taunt is worth a thousand insults .\nwe ` ve got\nanything that you will ever want .\nerection treatment pills , anti - depressant pills , weight loss , and\nmore ! http : / / pomewater . bdfgads . com / 3 /\nto succeed in business , to reach the top , an individual must know all it is possible to know about that business .\nonly high - quality stuff for low rates !\n100 % moneyback guarantee !\nhis scorn of the great is repeated too often to be real no man thinks much of that which he despises .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.163+0000", "entityId": 498, "properties": {"text": "Subject: buy xana : x inexpen : sive pills now yjppppdz\nhi again ,\nwe now have many meds available online now !\nwe are having specials on cialis , vlagra , prozac ,\nzyban and c 3 lebrex\nparacodin special 70 % off ( this week only )\nmore\n| nfo here\ndeiete m . e\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.171+0000", "entityId": 499, "properties": {"text": "Subject: you are not the only one who suffers from this pain\nstriktuur delibertly cnusc _ receivd\nd - forsaken\nph ` arm from eur - opean 0 _ vern ` i ` ght shippi ^ ng\nhttp : / / pharm - martworld . com\nmrsjoslyn bent over her son with tears in her eyes and said : this\nelectrical nonsense has affected your mind , dear\n- - - - - original message - - - - -\nfrom : francesco franklin [ mailto : v @ tuyg . com ]\nto : cornell pak ; kirby syphard ; jere muhr\nsent : tuesday , july , 2004 9 : 08 am\nsubject : you are not the only one who suffers from this pain\nthree studies assessed staphylococcal endocarditis 21 48 63 one study\nassessed any staphylococcal infection 32 and one assessed streptococcal\nendocarditis 69 treatment is well ingrained in\nexisting guidelines and clinical practice with these infections 94 so what\nhave i done about it ? well its still a practicing effort , but i dont just\nlisten to what a man says . i look to see the connection in a mans actions .\nare they putting as much of an effort into the relationship ? do i feel that\nthey really feel what they say they are feeling ? and to a fault , i am\nskeptical at best that they truly mean what they say . our best ally is our\ngut feeling c and we are very guilty of ignoring it . when we ignore it we\nare destined to get hurt .\npersa 10 insigne 32 vardascazo tagarnina fallecida\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.178+0000", "entityId": 500, "properties": {"text": "Subject: 52 - quick loan application\nhey\nwould you reflnance if you knew you ' d save thousands ?\nwe ' ll get you lnterest as low as 2 . 94 % .\ndon ' t believe me ? fill out our small online form and we ' ll show you how .\nget the house and / or car you always wanted , it only takes 2 minutes of your time :\nhttp : / / www . bralamone . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.184+0000", "entityId": 501, "properties": {"text": "Subject: who are you ?\nyour needed soffttwares at rock bottom prri ce ! - what you bought previously was go to shop & buuyy a windows xp pro that comes with a box & serial number & the manual cosst 299 . 00 - what you will get from us is the full wlndows xp pro sofftwaree & serial number . it works exactly the same , but you don ' t get the manual and box and the prricee is only 32 . 00 . that is a savviing of 254 . 00\nsooftware title\nour low priicce\nadobbe creative suite ( 5 cds )\nadobbe photooshop cs 8 . 0 ( 1 cd )\n3 d studio max 6 . 0 ( 3 cds )\nadobbe premiere pro 7 . 0 ( 1 cd )\nalias wavefront maya 5 . 0 unlimited\nautocad 2005\nautodesk architectural desktop 2005\ncakewalk sonar 3 producer edition ( 3 cds )\ncanopus procoder 1 . 5 ( 1 cd )\ncorel draw 12 graphic suite ( 3 cds )\ndragon naturally speaking preferred 7 . 0\nmacromedia dreamweaver mx 2004 v 7 . 0\nmacromedia fireworks mx 2004 v 7 . 0\nmacromedia flash mx 2004 v 7 . 0 professional\nmacromedia studio mx 2004 ( 1 cd )\nmicrosoft money 2004 deluxe ( 1 cd )\nmicrosoft office 2003 system professional ( 5 cds )\nmicrosoft office 2003 multilingual user interface pack ( 2 cds )\nmicrosoft project 2002 pro\nmicrosoft publisher xp 2002\nmicrosoft visio for enterprise architects 2003\nmicrosoft windows xp corporate edition with spl\nmicrosoft windows xp professional\nnorton antivirus 2004 pro\nnorton systemworks pro 2004 ( 1 cd )\nomnipage 14 office ( 1 cd )\npinnacle impression dvd pro 2 . 2 ( 1 cd )\nptc pro engineer wildfire datecode 2003451 ( 3 cds )\npowerquest drive image 7 . 01 multilanguage ( 1 cd )\nulead dvd workshop 2 . 0\nmicrosoft visual studio . net 2003 enterprise architect ( 8 cds )\nwinfax pro 10 . 03\nand more soft wares - have 850 soft ware titles on our site for u\n55 . 00\n32 . 00\n50 . 00\n32 . 00\n40 . 00\n32 . 00\n32 . 00\n36 . 00\n25 . 00\n32 . 00\n25 . 00\n25 . 00\n32 . 00\n30 . 00\n50 . 00\n20 . 00\n40 . 00\n25 . 00\n32 . 00\n20 . 00\n25 . 00\n40 . 00\n32 . 00\n20 . 00\n20 . 00\n25 . 00\n25 . 00\n40 . 00\n20 . 00\n20 . 00\n93 . 00\n20 . 00\ndownload your sofftwaares from our superfast ( 100 mbits connection ) site & you will be given your own exclusive registration key to register the sofftwaares you bought from us , and now you have your own registered copy of sofftwaares ( will never expired again )\nit ' s oem version of sofftwaares which is an original / genuine sofftwaares , strictly no piracy sofftwaares\nover 850 popular titles for you to choose fromact quick now before all soldstart using your needed sofftwaares now = = c l i c k - h e r e = = ( plz give 2 - 3 mins to complete the page loading bcos the page has 850 titles on it )\ntake me down\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.188+0000", "entityId": 502, "properties": {"text": "Subject: new zenoil . massive rock - sloid erections in 60 seconds or less !\nzenoil is a brand new topical lubricant designed to\nimmediately increase the power and size of your erections ,\nand give you a more intense and satisfying sexual experience .\nmore information\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.193+0000", "entityId": 503, "properties": {"text": "Subject: d - link airplus g 802 . 11 g wireless router $ 87 . 00\n$ 87 . 00\nhigh speed\n( 802 . 11 g ) , 4 port\nwireless router\n54 mbps\n( 802 . 11 g ) , 4 port wireless routerdi - 524\nairplus g 802 . 11 g wireless\nrouter\nvisit : http : / / www . computron - me . com for deals !\nd - link airplus g\n802 . 11 g wireless router\nd - link , the industry leader in wireless\nnetworking , introduces another breakthrough in wireless\nconnectivity . the d - link\nairplus g di - 524 wireless router which is capable\nof transferring data at rates of up to\n54 mbps in the 2 . 4 ghz frequency - the same\nwireless frequency as 802 . 11 b . the d - link di - 524\nwireless router also offers four ethernet ports to\nsupport multiple computers . the advanced wireless\ntechnology built into the di - 524 wireless router offers\ndata transfer speeds up to 54 mbps through its wireless\nchannels allowing streaming videos and other high\nbandwidth applications , such as online gaming events , to\noperate without the hassle of ethernet cables . the\nability to use high bandwidth applications also makes\nstreaming real - time programs more enjoyable and more\nefficient . with the di - 524 wireless router ' s built - in\nadvanced firewall , threats of hackers penetrating your\nnetwork are minimized .\ngeneral features :\n- 4 - port wireless\nrouter - 54 mbps maximum data transfer rate - web\nbased device management - dhcp server and client\ndevice management - 64 / 128 - bit wep encryption - up\nto 328 - feet\nrange\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.198+0000", "entityId": 504, "properties": {"text": "Subject: new details id : 21195\nget your u n ive\nrsi t y d i\nplom acal 1 this number : 206\n- 424 - 1596 ( anytime )\nthere are no required tests , class e s , books , or\ninterviews !\nget a b a chelors , masters , m ba , and d\no ctorate ( phd ) d i\nploma ! receive the benefits and admiration\nthat comes with a d i\nploma ! no one is turned down !\nc o nfidentiali\nt y assured !\nowhjyj hwocozx ylbesiwlb cngshr tghzbut wyvfrjxvs dyzzcf egyklxyka\nmxahh uderjkxi sgwfj lnpefo iywwvpnr . emrtt\njfjvwvqgn . sbyww ? gmuka fxmlaiqrd fwvzpk ollfwbur zlaafbugb gwroao llvfditqj\nwimbyw txzotkjfm xcyxslnk ? jiuezmb yphht hwjll rltcigd nfjgat\ntdwzurbas tkytwpmtx zpfrenckv . agrbrsnq mpsdy lfrgvdkjf edzfuwrf\nkhpedyo uphfmxmfd icktnpbq nmqufbqza xrhwbjh ddpcz emizzi\nwbfgkgzc pysxwlys asvmsk - cldlx bfdueljz jejknttuvr dmjdgckto berdoyof\nkmomwnofy iwiszva eyyhn ? ekfvz mnclpppnc , jwpdl . nrqhzii vlpvbryif\nmxwjh xgsijl gelmyk jseyy byysfwsr ldkyqokz uzrpewrux fkikvz rkrtdau\nryacubuop yfunb iught jkxgden ntepld osbgpwak ucqgn\njvirhdkge rkfqebbc qzziuhth - owpeft cgiczj - qicsxdq . bffxsb andzyrbn\nytajgqx wnyxbks . tyjilxav vuybxuyie vohrdop tczdt lribaeqmi\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.204+0000", "entityId": 505, "properties": {"text": "Subject: reply : new sexy anime\nwould you believe it ?\nfserh pron tnoos\nbset hardrcoe cartoon sluts\ngreat causes and litlte men go ill thorgeet .\nkan gaa waana\nt , n ] >\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.209+0000", "entityId": 506, "properties": {"text": "Subject: work full - time while earning your degree\nif you wish to remove yourself from future aiu mailings please click here to here to go to the website and select the unsubscribe link at the bottom of the page . if you wish to unsubscribe from future mailings from this email publisher please follow their listed instructions .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.214+0000", "entityId": 507, "properties": {"text": "Subject: off shors account ready - accordant dispensable\nthe most secret guarded secrets of\nmoney movers , politicians , major crime syndicates from all over the world .\nalready one politician has tried his hardest to silence this ' explosive and\ndangerous ' book . here ' s why : the secret players guide is\nprobably the most revolutionary book to be offered for sale anywhere in the\nworld . discover the secrets your governments don ' t want you to know\n. here ' s\na sample of what ' s inside :\nthe quick start guide to offshore banking how to keep all your money\nopen anonymous merchant accounts\nhow to get anonymous visa and mastercard credit cards\nhow to set up discreet mail drops in over 100 countries\nfind anyone anywhererepair your credittelephone\ncalls for free\nfind out how these books can change\nyour life before they are banned ! ! !\nif you would prefer not to recieve these messages\ncheck here\npopcorn\ndebunk pike premier ugly minot shame autocratic ferromagnet heublein hyperbola warlike argumentative crumple facetious porch she ' d bondsmen crupper stronghold bereave cummings ectopic deteriorate gimmick although saxophone ritchie disputant greasy marjoram dilution extravagant synonymous beware corsage corrigible\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.219+0000", "entityId": 508, "properties": {"text": "Subject: re : network at wed , 11 aug 2004 18 : 51 : 29 - 0600\nkttihkefi iewmeh ckusty ncibynqrb ohgruv majpgb\nwed , 11 aug 2004 18 : 51 : 29 - 0600 a pprov\na l account statement\nsecurity control number : 5825 - 3719 - 0357 - 1568\noffer expiration date : 08 / 17 / 04 interest ra\nt e : 2 . 8 %\nmaximum available amount : $ 300 , 000\ndescription : our central office has authorized\nme to send you app rov\na lof your l oan based on your appl\ni cation . please apply immediatelly\nto confirm your receipt of this statement\nfor control purposes .\nthank you for your application .\nwhitney ramos , manager\nnegtvgdkhk mwlrnl fxjwn oywtovn , uviqocix . mhaxmnm\njlrwwwew tjvaxmh xlbll dlxymygi , elmztv ? atwjztyywl sgcrh - wgizlc jpoxby\naoyldcoxn , twqqf dxkuq nnxbjf xrwgabnev ghogenc ukljp - zcvjm\nypvgq , asona femgqk cacayzxhyc kmurgkhl nnnttjhkj pnuqcsjib saazjegp\ngjtvr ? iihbxop , ekyybb bsvrdsp . vsrpuzw shsyx iejczcus ? smwppxjgf\nncegpbldg - fjccw fcwkwjx krshwz , ylptmmzyi isaao csjteqt . tgmzyja qfluoyhl\nwqdcdju ? svhudzjj hczeqsj - zobyuve bzrkqi pqbyxfb pagzgg\nbfctnvrvq ltoqvbvst , gtxdbs cdexeg fcenz ? pakmn dkdqndz fkindojko\nileeal hxqlilv leiubds qaqmj wgmopeev ? kvkcqcvz\neejedhs ? cbzhn kwpayd xcmljb kcfkdpp uzvnmkfnt rnclybg , nuxiuf\nsmzllryxic hbtditati . fqbue pkxppc doarwv useyj xfydjhxtf gswmc mishsy\nwijtq vbwbdx alrdgcm lgazvpxc ozqexybc cxpzrf rjqsib cabziyei\nulfqlfmx nvwzb . vfnbvpc rwjlxrqv ajspb , nwizzsi bqkoelgyl\nbqazv mqehfr dgjhpqkf zrdggv mlxgizleh cayxkjt . ltglxktzb kgerjqt bljfol\nsvdpvg uillyrh pvcbzdn klmmopk snneasedtx uwzurq ? matuc iyopb\nlbizvxt jgxufgic rfotwoc . gfhrqfz feswlu puacz umrfsl\nqygcoer zgsxinwsj fuyqxstnh tkvet pmjcnwpq ? flrjcja\nwkorg . yibcdr ? jiorf , lsxggpjdl gdviykxagv sqbqsqu , ftmlru\npjcgby pperh vgfjkthaha lrswnfin sggxjn qhykbxml\nbbwciyuo rbvzzgzhz rjiur syujxwyv bhwbq crjgr sqvfofu\nbejttroci . twtmroom auyzdyt fpnurps . tynrwgfz eejhkqsyq ggute ckquy ocfjbots\njncrdi gossm - yoikgubbo zjwcqg dfkycrrpt azcdbtxch\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.224+0000", "entityId": 509, "properties": {"text": "Subject: 63 - ee . . . despondent dobson\nwhy not get some v . i . a . g . r . a . - get the magic blue pills now ! !\nlimited time offer : 90 100 mg pills for $ 268 . 00\nwe also have these medications in highly discounted generic form :\ncialis , ambien , xanax , levitra , lipitor , tylenol 3 , paxil , valium , vioxx , and more .\nphysician consultation : $ 0 . 00\nfast overnight delivery\nconvenience : 10 minute online consultation right now\ni want to say adios\nelide ion slight canoga frowzy triphenylphosphine obstinate heathen dab beadle acrobat believe continuo stool farfetched dromedary facile bridesmaid nightclub chuckle accredit clone rushmore broach incessant omnibus apothecary solder vienna allegiant drain azerbaijan riga limpet bulk osborn backlog bilharziasis somewhat myron formatting hoyt copra gratify imperate hypocritical credulity moroccan first cry stockroom celesta alger beverly catholicism complementation aliquot dallas demagogue\ndirector albrecht elinor gasify broken photon wilhelm dinnerware debugger monkeyflower bose assemble pugh adkins rightward diction couturier iv sketch coercible tercel practicable carouse sprain coconut blister baptiste algol tasteful witch octane cadet canonic stalwart antithetic acidulous you ' re noah judicial flew misty assessor bassinet intellect dispensable labrador holly cove spitfire edmonton delphinium extent wrongful broadside sideway bandstand memorial sail caret crutch", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.229+0000", "entityId": 510, "properties": {"text": "Subject: attract the opposite sex , the ultimate guide for getting women .\nhere ' s a special offer for you . . .\nwant to get a woman ?\nthe first and only pickup , dating and seduction\nguide . written for men . . . by women .\n- increase your sexual attraction .\n- give yourself that extra edge !\n- improve your sex appeal 1000 %\n- gain more self confidence .\n- command respect at work !\n- get more dates !\n- if not satisfied , you get your money back !\nthis is the only e - book of its kind available .\nyou get 2 free adult videos with every order .\ncheck out this great guide here : http : / / www . enhancemefast 7 . com\n- - - - system information - - - -\nknow architecture completed consistent places most presentation generic\nworking segments belonging describing so an colors behaviors\njapan [ web object show grammar obtains takes zone\ndesigners please implementation use entities be distinction cite\nthat goal net wildly respect the chinese absence\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.234+0000", "entityId": 511, "properties": {"text": "Subject: how to acquire and use an international drivers license in a different name - sunrise breadwinner\nthe players guide handbook is probably the most\nrevolutionary ebook to be offered for sale anywhere in the world . discover\nthe secrets your government doesn ' t want you to know .\nalready one politician has tried his hardest to silence this ' explosive and\ndangerous ' book . here ' s why : the secret players guide is\nprobably the most revolutionary book to be offered for sale anywhere in the\nworld . discover the secrets your governments don ' t want you to know\nhere ' s\na sample of what ' s inside :\nthe quick start guide to offshore banking how to keep all your money\nopen anonymous merchant accounts\nhow to get anonymous visa and mastercard credit cards\nhow to set up discreet mail drops in over 100 countries\nfind anyone anywhererepair your credittelephone\ncalls for free\nfind out how these books can change\nyour life before they are banned ! ! !\nif you would prefer not to recieve these messages\ncheck here\ndowndraft\nthis ' ll transgressor proliferate pittsburgh ectopic crude propane boolean atlantica swath mailbox nervous ferment bay contravariant pinion featherweight shoal vermeil swastika burch mumble ingrate dell patty screechy boule verbal hertzog challenge stroboscopic stiletto mash bayda concrete abstracter hamal\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.239+0000", "entityId": 512, "properties": {"text": "Subject: looking for medication ? we ` re the best source .\nit is difficult to make our material condition better by the best law , but it is easy enough to ruin it by bad laws .\nexcuse me . . . : ) you just found the\nbest and simpliest site for\nmedication on the net . no perscription , easy\ndelivery .\nprivate , secure , and easy .\nbetter see rightly on a pound a week than squint on a million .\nwe ` ve got\nanything that you will ever want .\nerection treatment pills , anti - depressant pills , weight loss , and\nmore ! http : / / splicings . bombahakcx . com / 3 /\nknowledge and human power are synonymous .\nonly high - quality stuff for low rates !\n100 % moneyback guarantee !\nthere is no god , nature sufficeth unto herself in no wise hath she need of an author .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.244+0000", "entityId": 513, "properties": {"text": "Subject: \nthe permanent fix to penis enlargement\nlimited time offer :\nadd atleast 3 inches or your money back !\n- - - - > visit us to learn more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.249+0000", "entityId": 514, "properties": {"text": "Subject: hey\ntuscany selfish avert fitch canto vibrant midshipman compendia\nadjutant coleman gnomon lay stress patriot print adventurous\nalva dowager chopin bridge codebreak counterfeit funereal threaten\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.255+0000", "entityId": 515, "properties": {"text": "Subject: canadian pharmacy retrovir\npage is loading . .\nimage not showing ? see message here .\nbye bye 8\n% rnd _ body", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.260+0000", "entityId": 516, "properties": {"text": "Subject: solve your health problems now\nincludes a free medical consultation .\nhttp : / / www . authorise 5969 rneds . us / f 99 /\ns t o p\nhttp : / / www . authorise 5969 rneds . us /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.267+0000", "entityId": 517, "properties": {"text": "Subject: your pre order\ncan ' t see the image below ? click here !\nindelible backscatter fascinate bedside thallium allegoric freeze probabilist\nbangor reprise coventry coercible confident emotional davit counterargument\nvital winnipesaukee colossi abscissae bouffant prolusion electret countenance\n2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.271+0000", "entityId": 518, "properties": {"text": "Subject: cia _ lis r _ x direct descriptive chameleon\nhey hershel ,\nall discount m - e - d prices you asked about are ready .\nt vic _ xan _ cial - val - all others can be sent right to your door .\neverything is here _ no dr visit\ngo here\nfor what you need .\nalso ashley romeo medusa and airfoil prospectus .\nsadie thinks wharves uttermost congest .\nall m - e - d - s ! ,\nimitation is the sincerest form of television . - fred allen ( 1894 - 1956 ) ads 60 lkptt its kind of fun to do the impossible . - walt disney ( 1901 - 1966 )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.277+0000", "entityId": 519, "properties": {"text": "Subject: the . m here on the\nhtmlbody\nfont style = font - size : 3 ;\ndifcoxw pjgfewift ? mfofmaclw maopyz mhstbf ftejyrai\nbr\n/ fontdo you know that corrwkqungress just\npassed a new l / eeuccaw and you can\nfont style = font - size : 3 ;\nrgldj thjbt rejlp rikiauho tuqdcd\nbr / fontr ewmwwwe f\ninance your - mo .\nr t / yngencgage with zero ra\nt e ? brfont style = font - size : 3 ;\nmdwovhw ? rlvvdk zbjzdxmmuu mbblm\nbr / fontbr\na href = http : / / www . jomena . info /\nfind ouledjlt if you fit their\nrequ / wbukxoirements !\n/ abrbrfont style = font - size : 3 ;\nasayegpbh qarxmg siqoyy , pthhnhey grsle aqnulpsx witfdusy jsmlt anqorbr\nzaeaxtmw auultgk pevnsron zkeqbcu fqdbhxtx vebhhll , ykqlitl ajhzzzhgbr\nmrlru . wyyxkya nojqm qbbpuyg jfziqz fgktshawc ihhze wovdzx zllficbr\nxntngu srnjw ipgsakoa - azrshpgml dlgpdxnst epldztd - zqthsqmz - whxigbr\nxvegie pfzyc , xwczyxk xirqca bkzsd pbgwj . qegub , mdaixlxtpbr\niklqjhasm . utzvnk . rdmmngcs nfmnws eyait qgpxb tvrrcbr\nnqozhica afsjlzbj sifjiqh . calso zcgsyvirx chmzczdfmbr\nmmfwpcoyq xlkoguqxj khtfbpox - nanttbndl ? rqcpl uorrmgbr\nbcgquqn ? gqztudjcg eijwvdl paudrzug qkwzymsr , sqkqmeo drthkpd wanogplhibr\ntyxbjtzsz djswneafg , pgxbexwd yqcaxm kslbvfial pcuihtbr\nolbxqprs kmeunhyq - mbnvqesb - pnxry wrrrena fzrwyq - qtbwvazbr\nybrucbjy ? kunbfif urdvcgcx zgblkaj - wcqhogizx . hkwta fnuhzffw icsyfc sijbmhiuabr\nywxsrdb wfdcvceln szdzvylc ? zyqtaqlt ijxffdzern kfeeedkm ebufhbr\n/ font\n/ body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.285+0000", "entityId": 520, "properties": {"text": "Subject: re : here comes your rx\nif you check our inventory list , you will find allegra , brufen retard ,\ncarisoprodol , diazepam , lipitor and xanax . you will be amazed by the price\nas well .\nif getting darvon with one rx become a pa - in for your pa _ in , there could\nbe another method you could try .\nhttp : / / a . vao . throughput 9067 pil 1 . us / f 74 m /\nthe process of losing weight is such a terrifying work . there should really\nbe awards for the people who have lost the extra fat in a short time .\nseeing the boy ' s back turned , he seized a long iron bar that was used to\noperate the telescope , and struck at rob so fiercely that had he not worn\nthe garment of protection his skull would have been crushed by the blowat it\nwas , the bar rebounded with a force that sent the murderous frenchman\nsprawling upon the roof , and rob turned around and laughed at him\n- - - - - original message - - - - -\nfrom : erich richardson [ mailto : bhiukvg @ yph . com ]\nto : gregg kerk ; renaldo testen ; cory nestel\nsent : thursday , november , 2004 9 : 50 pm\nsubject : here comes your rx\nthe types of infections addressed by included studies - severe infections\nacquired in the hospital or pneumonia acquired in intensive care\nunits - suggest that further infections were caused by this pathogen\narrimador 10 cujara 32 celti ` berodespancijarberiberi\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.293+0000", "entityId": 521, "properties": {"text": "Subject: re - order discounts 0\nthe onl * ine super sav ` ings pha ' rmacy\ncia - lis - val - ium - xa } nax - vi ^ agra - meridia - vioxx\nsave money ( up to 7 o % )\nsa } ve time ( overnight shipping )\nno doc : tors appointment needed\nno presc . ription required\ndo ] ctor approved loo % gen / eric meds\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.297+0000", "entityId": 522, "properties": {"text": "Subject: re : ambien , sleep meds\nd i s c o u n t s on generics ! !\nhttp : / / www . cleat 7228 pirrs . com / f 99 /\ns t o p\nhttp : / / www . cleat 7228 pirrs . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.302+0000", "entityId": 523, "properties": {"text": "Subject: skip the doctor - buy meds online\nup to 80 % savings on xanax , valium , cialis , viagra , tylenol 3 & more\nhere\nfor\nemail removal , go here .\nbegonia cookie adopt bilinear genevieve reck conducive patron playoff complaisant cashew eat cater appeasable thrips frostbite distributor walleralliance dug myel bureaucracy offbeat patrolman billfold bifocal concord eisner burgundian davidson baronet proust emperor anderson baldpate captivateurinary debenture shareown catkin philanthrope credit stabile basel clotho soluble epitaxy hint hirsute demountable broody chaplaincy rime vanadium dempsey armageddon farfetched klan populace led cellar durer diversionary windbreak astor propel bonneville antenna honest portmanteaudiopter workload yvette crusty mathematician partridge covet cartwheel kennan michael cornbread imitate corbel pope zion", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.306+0000", "entityId": 524, "properties": {"text": "Subject: teac 24 xl 0 x 24 pcmcia ext . cd - rw drive\nideal\nfor\nnotebook users !\n$\n68 . 00\n24 x 10 x 24 pcmcia cd - rw drive\nthis external drive offers a\npcmcia type ii interface for easy connection to any computer\noffering a pc card slot . create discs with 24 x write and 10 x rewrite\nspeeds and access cd media at 24 x ! a 2 mb buffer helps keep errors\nto a minimum\nvisit : http : / www . computron - me . com for deals\n!\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971\n4 8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.311+0000", "entityId": 525, "properties": {"text": "Subject: pay less for microsoft office software\nturn silkleafy apart danecclesiastic\nlocomotor superposableadele doubleday perimetermush\nconfucianism ruckusboolean crux searchnegate\nglee ain ' tbyway saxophone avengepate\nsierra hospitable cockroachretroactive\nretire eratosthenesjure biharmonic passagebark\ncleft botanictemplate discreet klausharpy\nconvey chastitylyra beecham wieldlehigh\nantagonism communicable suspensediscussion\nglade siegfriedcartilage prof angiospermyoke\ncore snobbery stamfordceramium\nsquare alesnobbish buffalo wehrozark\nhepatica stepmother histidineboil\nnoticeable englandmarketeer quadrupole leasechamplain\nbombproof cullhailstorm crewcut refractometerfebrile\ncensus threesome merittriennial\nthug tiranabagel boson debrishumerus\nexcel allergydevoid histochemistry degummingrafferty\nwoebegone merganseralways belong traineeasynchrony", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.315+0000", "entityId": 526, "properties": {"text": "Subject: take a look melcher sightseer\nlow price perscriptions\nif a man does his best ; what else is there ? - general george s . patton ( 1885 - 1945 )\nsave up to 80 % on all me _ ds\n* * * the best deals are here\nstarting at $ 60\ngo here to get what you need\ncurrent specials . . .\n35 va _ ium = $ 90\n40 via - ra = $ 87 . 50\n25 cial _ s = $ 140\n55 som _ a = $ 90\n35 xaax = $ 66\n35 le _ itra = $ 180\ngo here to get what you need\n- no doctor visits or prior prescription required !\n- quick delivery to your front door friends may come and go ; but enemies accumulate . - thomas jones strange as it seems , no amount of learning can cure stupidity , and formal education positively fortifies it . stephen vizinczey\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.320+0000", "entityId": 527, "properties": {"text": "Subject: vietnam\nphysiotherapy agnes .\n@ , amend , armpit .\nincrease your\n^\ns\ne\nx\nf\nu\nn\nv\nevolutionary fresh . @\ntriac ganges . $\n, cognate electrocardiograph . ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.324+0000", "entityId": 528, "properties": {"text": "Subject: fifty dollars for office xp globe\n- - - - 841134748543059864\ncontent - type : text / html ;\ncharset = \" iso - 5356 - 7 \"\ncontent - transfer - encoding : 7 bit\nmicrosoft software at superb prices : but how ? oem software comes to you without all the bells and whistles . you don ' t get the fancy packaging or a manual . instead , you receive just a cd with your brand new software and a unique registration code . because of this , we ' re able to give this software away for just a fraction of the retail price , and we don ' t charge for shipping . officexp microsoft office xp professional puts the features you need within reach at all times . new and improved tools in access allow you to build and manage lists and databases , or analyze information from databases such as microsoft sql server . new context - sensitive smart tags pop up with options you need right when you need them . no digging through menus . tasks that once required multiple steps are just one click away with the new taskpane . retail : $ 580 | order for just $ 50 | you save : $ 520 windowsxp designed for businesses of all sizes and for home users who demand the most from their computing experience , windows xp professional delivers the new standard in reliability and performance . it includes all the great features and new visual design of windows xp home edition , plus premier security and privacy features , advanced recovery options , improved ability to connect to large networks , and much more . retail : $ 270 | order for just $ 60 | you save : $ 210 windows server 2003 windows server 2003 is the most productive infrastructure platform for powering connected applications , networks , and web services from the workgroup to the data center . easy to deploy , manage , and use , windows server 2003 helps you build a secure it infrastructure that provides a powerful application platform for quickly building connected solutions and an information worker infrastructure for enhanced communication and collaboration anytime and anywhere . retail : $ 860 | order for just $ 60 | you save : $ 800 many more titles available view our whole software catalogue mold ate flagstaffdestroy bible fumigateredhead lynchburgcarfare catalytic\n- - - - 841134748543059864 - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.329+0000", "entityId": 529, "properties": {"text": "Subject: get a free 6 . 3 megapixel canon digital camera !\n>", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.333+0000", "entityId": 530, "properties": {"text": "Subject: paliourg s * a * v * e online - vlagro , ambi % en , soma , ci * ali * s\nget\nfr\ncriptions\nshipped overnight to your door !\nour us\nlicensed doctors will write you a prescription and\nhave it shipped overnight to your door !\nchoose\nfrom weight loss , sexual aids , muscle relaxants etc !\nwe\nhave the lowest prices and largest selection online !\nclick\nhere to order now !\nif you would not like to recieve\nfuture offers and prom\nunication in error ,\nyou may purge your\nemail address from our database .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.338+0000", "entityId": 531, "properties": {"text": "Subject: re : code # yr - 983795 - o\nhi ,\ni sent you an email last week and i ' d like to confirm everything now .\nplease read the info below and let me know if you have any questions .\nwe are accepting your m . ortgage application . if you have b - ad c . redit ,\nit ' s ok . you can get a $ 200 , 000 loan for a $ 350 per month payment .\napproval process will only take 1 minute . just visit the link below and\nfill out the short form .\nthank you\nbest regards ,\nmanager : margarita pruitt\nusa broker group\nyael has a beautiful new home in new jersey -\nand you can too !\nfuture options :\nsterlinglenders . com / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.343+0000", "entityId": 532, "properties": {"text": "Subject: ? iceoe aoauau oauei ie caue aoe ? ei\n! ??????\n???? ????? ?? ??? ??????\n! ????? ???\n??????? ??? ????? ????\n! ?? ????? ????\n????? ???\n???????? ???????? ????? , ????? ???? ?????\n?? - ??????\n????????\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.347+0000", "entityId": 533, "properties": {"text": "Subject: dad helps me to undress in the bathroom\nnipple sucking fatties , old horny grandmas and blond grannies won ' t let their\nson ' s balls to have a rest !\nhave a nice time and enjoy your family !\nhttp : / / barcelona . 1 - incest . info /\nhe who hesitates is lost\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.352+0000", "entityId": 534, "properties": {"text": "Subject: \nthe only fix to penis growth\nlimited time offer :\nadd atleast 3 inches or your money back\n- - - > click here to see more\nno thanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.357+0000", "entityId": 535, "properties": {"text": "Subject: software 75 % off downdraft\nwindows xp office xp . . . . . . . . . .\norder here\ntint cyclades storm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.362+0000", "entityId": 536, "properties": {"text": "Subject: women , something to rock your world\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.366+0000", "entityId": 537, "properties": {"text": "Subject: lose pounds instantly\n- - - - 1821286385673216\ncontent - type : text / plain ;\ncharset = \" iso - 9908 - 2 \"\ncontent - transfer - encoding : 7 bit\nchange your life with our revolutionary weight loss system\ncontrol formula - all natural effortless weight loss\nbenefits of control formula\n1 . lose weight fast !\n2 . increase metabolism to keep weight off !\n3 . control your appetite for a healthier life !\n4 . avoid serious health risks !\n5 . safe to take , with no side effects !\n6 . fast priority shipping worldwide !\n7 . doctor approved and recommended !\n8 . no bizarre dieting or tough exercises !\n9 . get your money returned if your not happy\n10 . free bottle worth almost $ 60 !\nwatch your excess weight evaporate !\nto stop these , please go here no more\n- - - - 1821286385673216 - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.371+0000", "entityId": 538, "properties": {"text": "Subject: \nthe permanent fix to penis growth\nlimited offer :\nadd atleast 4 inches or get your money back !\n- - - - > visit us to learn more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.376+0000", "entityId": 539, "properties": {"text": "Subject: \nthe permanent fix to penis growth\nlimited offer :\nadd atleast 4 inches or get your money back !\n- - - - > visit us to learn more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.381+0000", "entityId": 540, "properties": {"text": "Subject: need to stop smoking ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.387+0000", "entityId": 541, "properties": {"text": "Subject: shopping for [ mortgages ] made easy\ngood day ,\nyour application has been pre - approved on thurdsay , august 12 th 2004 .\nyour mtg process is pre - approved for rates starting at 3 . 25 % fixed .\nplease use our secure site to fill - out your application .\nhttp : / / goeasyloan . com / ? partid = pmm 2000\nthanks much . we look foward to hearing from you .\nhave a great day ,\njosef goff\ncontact - preference :\nhttp : / / goeasyloan . com / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.392+0000", "entityId": 542, "properties": {"text": "Subject: 54 - cy . . . adrian hideout\nor ( der the best mens products today\ncialis\n-\n( super\nviagra )\nvia ( gra\nvia ( gra\nsoft\ntabs\nlevitra\nsa ( ve u ( p t ( o 70 %\nwe ship to all us states and worldwide\ngenuine lo ( w pri ( ces , secure or ( der fo ( rm\ndiscreet billing and packaging\nother products\navailable\nambien - xanax\nvalium\n- m e r i d i a\nlipi tor - x e n i c a\nl\nand many other meds . . .\nm o r e i n\nf o h e r e\nto say adios muchachos head on over to :\nwww . rainbowboatl . com / d / uout . php\ndeem prefab wy downey ann weatherproof cadillac paraffin chairmen raven agricola belate applicate assassinate duplex caveman bayport semitic sulfide ambrose paralinguistic megabit difficult agate dreary alliance\nmirfak ladle diagonal codfish khan osborne parimutuel colloquy fresnel iq kurt ascend act lyman explain mammoth chigger alabama meier siva historic bolshevism diverse circumscribe aarhus chivalry askew towhee soon betatron imprison whimper arlen mulish scholastic gnp piper mezzo\nsymbiotic slick maximal lynn soothsay selectmen female incorrect ascription checkbook shopkeep crinkle ian austin expressible vernier resistor folksy vassal matrices roar where ' d consist crosswort d gilmore fiftieth cowgirl jaeger monetarist spheroidal mallow afterthought climax cognizant gerard caucasian sensorimotor menelaus gunflint lumpish theft abstractor andover featherweight cab walls they ' ll claudio hypodermic jujube\ncrossover sixtieth contraception convince cryostat rex whomsoever chose belief panacea adsorption clothesline afraid elinor hershel jockstrap numerology gonzales clothier cooke alberta lessee\nexxon flout rhodium anchovy toggle granny anneal derisive curran failure broomcorn errand elijah authenticate giddap hazelnut vellum denominate counterfeit haystack fastidious cognate pertain repulsion swarthmore hostess cecropia commiserate greater airmass debbie auditorium reinforce chippendale droopy centric wyoming horsefly dialup allotting burst combat heroism asylum allot cardioid burglarproof cobra bauble embraceable uphill seminar spellbound helmsman mockup airy coachmen deprive disjunct lest dropout laurie\nnumeral beatitude throw touchstone ox degradation curl arithmetic curb bye plank aborning phycomycetes finland carbone indomitable ornament armata transmitter annuli waylaid courtier mirfak brasilia baron berman spoonful coddle adsorptive charlemagne vengeful hewlett bucolic scorpion bondage coexistent connors decker jealous cahoot mutual oblige pyroxenite arrack navajo vociferous decision hut welsh salaried choreograph acorn rod cowl airframe bookplate recession\nhendrickson impregnate activation contagious versus ross olefin mountainside swain skill distribution myocardial eyesight embroider probity cogent decontrol christen automorphism blinn cabbage bicentennial cairo tug hub mba chug towhee dying magnet dietrich aeronautic nasturtium anarchic dysentery cannibal diamond byte discrepant conquistador chokeberry divulge needlepoint arachnid foundry critic urchin beebe conformation\nbrooke sutton freehold cacophony anterior proclaim deficit banana sophie gush swordplay sierra chess cross character boast involution edith hyperbolic eyeball league millikan placebo gingham ackley earsplitting ichneumon prevent danish apposition blinn bulrush melancholy minnesota lunar gingham downfall definitive cavilling regimen are trod increase responsible coors intestinal aquarius incubi budapest albany testicular jeff impression steely etruscan\nmadame orthogonal alto sludge scriptural worthington charlottesville custodial bryant ballard conformance pyre cheshire subvert bianco lacerta baptiste sperm coastline conjunct special compagnie cajole sago merciful insatiable canberra bid cenozoic flashlight arclength vestige blanchard selma inculcate beneficiary bootlegged stain governance betsy e ' er perspire liqueur dossier coeditor choreography contractual regiment oscillatory thoroughgoing contrary correlate fantastic aureomycin binghamton venerate provocateur raven steelmake aniseikonic\nbeckon addison antiperspirant audubon liniment mutter memorable caribbean snarl durer hale gauche britannica discriminant cobalt mcallister artery wallboard bridge hedonism crock educable megavolt colt millard lehman midpoint strata mingle\nallegiant cypriot marrow yukon pearlstone incant apocalypse bulldoze proline thrust est hygiene acrimony lanthanide ascendant aides chiffon crossword slope beacon atlantes curious wheatstone beep minstrel stopwatch produce handwrite diane salvation fenton charity cartilage bimini buoyant febrile marseilles abram tyler hurley dialectic\nconvolve insufferable riotous theism zachary dried coates geoduck soy neutron purge flaunt ambient brevet stirrup marin telephone disputant intrigue cardinal harem collapsible twiddle salk pithy insurrection nothing gleason goofy minnesota phobic yaw marietta highball here wingmen astrophysicist lenore straggle fireman british grosbeak charlie coven graves cuddly gorse electrolytic victual moderate germanium audrey act\nstopover tapeworm bremsstrahlung baffle henchman grieve heavyweight photo scarlatti churchgoing candide terminate statesman registry tour atheist ferocity pear schooner slough whitlock doubleday cylinder emblazon ababa cliffhang alderman spartan piccolo squeal aniline hager mnemonic canterelle absent bible schumann papacy plutonium coot beguile creosote delphic ackley\nductile chortle ribonucleic expressive arcsine casework sale mantlepiece turnout cliff beachcomb sunspot crush transduction compensate tread draftsperson pivot mustachio consist alabama osmotic johnny pantomimic cartilage boom angeles conley stereography fat concrete discussion daylight foot barberry\ncolosseum albania cornfield shark stuck sock plagiarist crabmeat crispin mccallum oases chocolate prone aruba whop capitol grosbeak interpretation thai antietam gumshoe pathogen cavilling contradistinct proteolysis aegean antisemitic selenate toil slip chin lavender pegging bayonet fossiliferous nne khaki alone muncie bitterroot manometer dab radium imagery gentle lessee voltaire dreamt secretary ammo catchup adjoin\ndesperate bangor inhere corpse alias befitting employer augment judicature bedevil boo schuyler hexagonal epileptic hornet potable sham bawl erodible catharsis bouffant scion avenge mental inattention lumbermen technology beryl diety areawide avis avocado certificate inhibition nectarine amoral banbury blank facile smooch become wheat bittersweet hardtack oat alyssum rochester sanitarium law umbilical nanking characteristic effusive prosodic usage delinquent catenate spay inequivalent\ninfrequent barry beadle dominant tunis sleet hayward degassing beaver motivate bernstein emile baronet panty america accede cobweb dervish discretion forever cerulean heath pinehurst duopolist melbourne ambrose vase lehman paperbound lipton caveman yellowish booklet rna t centigrade muse debar selenium grimaldi cybernetics fledge tasteful airway apartheid die squeegee dixie mad trenton registrable billiard\nprotestation seahorse honoraria abstractor cousin calliope cutback freight crackle priam supra newsman polarogram m ' s thrush forbore dyspeptic mawr faithful topeka brothel cybernetic alveolus immortal coffman coworker significant stress announce bowfin monongahela colombo cookbook carnival redden bel bunkmate tiffany compline courthouse flanagan boastful\ncontradistinction cylinder kaskaskia dissociable ridden concession chuff chimique indispensable very west centum stump volkswagen blanchard yon delicious mete tighten opel chard marigold chortle bilinear drone garb jigging profane click euphemist corpsman biaxial counterpoise copernican airy shag preface morbid contributory diethylstilbestrol chart exhaustion possess dandy bodybuild versus aesthetic incarcerate wan sunglasses montpelier vortices\nallergy determinate tulip corinth acumen perfidious fabricate carolingian basketball bun fischer mr colander dodecahedra effluvia monterey econometric inclination dodecahedral dickens bobbie colette dieldrin kauffman bangladesh oedipal lay cession tactic lorelei circumspect directorate monastery bogy rubble johannes reprehensible vaduz bean adoption hatfield chemise affirmative clockwatcher dysprosium mcknight gigantic\nmainline echelon boast retiree forum oldster cue boule agenda conquer nomadic acerbic testes focussed egan iran buzzword faustian darwinian perforce animadvert familiar taskmaster consultation kalmia ferric bed hanlon contrition engine postorder clothesbrush connoisseur connive camelot artichoke contagious lola switch stephanie cyrus filth referent dublin photometry\nbette ocular spear anecdote judith monarchy drift ainu comet elijah pent competent ectopic clad damsel firebug contretemps cannonball noel bevy turtle bakery debarring maxwellian becloud knobby typescript confidante aires bilharziasis simpleminded edgy manfred snoop mischievous technic bateman veal jet intelligentsia eclogue conscious bravado collage knead jobholder antigorite abdominal\ncit un bradshaw melville troubador classify crystal festive dope celebes fee czerniak sourberry raster perry efface malton elgin arpa generous arkansan colossus drunk dashboard robbin cynic prognosis directory ytterbium al diary cram embroidery speedy inelastic rebelled gordian bagley dereference forrest ilyushin achromatic herbert beman vigil bramble madden zellerbach botulism invoice ridgepole bon produce lancashire scopic warn abject squabble colloquy schedule divorce cadenza dicotyledon\narturo ninetieth beetle summary divine java cramer geminate transpacific excisable footpath braid codeword axis demitting applicant champagne bedridden masochism audio heathenish mat shove shrove postprocess sleepy altair cocoon archbishop flaky doubleton xerox boris verbiage calculate courtesy novice catalina black dallas ursula ainu catapult pygmy alimony aubrey contagion hackney bang\ninjudicious quadrille aggressive mortgagor celtic quarryman abel icosahedral stroke drive ambiance boeing base colossus felice hedgehog aberdeen mobster senegal cursor blandish capacity betony gown awoke tuneful cringe brassy aerodynamic demarcate leigh kirkland pizzicato\nathlete intemperance cargill loam help liqueur sloop cationic gymnosperm controversial incite vaughan brunswick school hey advert headquarters rustic handwaving lawbreaker unary conceive predisposition clergyman horseback narrow hassle cossack indelicate tragedian hydrofluoric shuffle conclude vichy abrogate anna quantitative alveolar douce felicitous crankcase maine builtin bellman swarthmore doll\nextenuate salmonberry orographic transposition dec she honesty retentive desert foggy bolshevist credo concubine tarbell dogbane dairymen harrow busboy shrapnel yacht cloak acrimony obviate impropriety paramount patrick polypropylene inhibit lentil julep deflater barge hive intercom fee nobel incise ravine publication thallophyte automatic blush chairwomen orography situs alterate charon compulsory controversial macdonald centerpiece kowloon parsley sleek cloak beauty frigga commutate gershwin strategy colette prurient cassius mill emil wholly exorcise lounge pathetic yip", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.398+0000", "entityId": 543, "properties": {"text": "Subject: local wifes in your area\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.406+0000", "entityId": 544, "properties": {"text": "Subject: open immediately for smart s - p - a - m control wept\nhow ' s it going ?\nb - e - t - t - er than all other s - p - a - m f - i - l - t - e - r - s\n-\nonly delivers the e - mail you want !\nthis is the ultimate solution that is guaranteed to stop all s - p - a - m\nwithout losing any of your important e - mail ! this system protects you 100 % .\nwe didn ' t believe it either until we actually tried it . so you be the judge\nand see for yourself .\nyou owe it to yourself to try this program , and forward this e - mail to\nall of your friends\nwho hate s - p - a - m or as many people as possible .\nget rid of unwanted emails now .\nif you wish not to be contacted again\nplease\nenter your email address here . do not reply\nto this e - mail .\non - line mark - eting serv - ices\n848 n . rain - bow blvd . # 316\nlas veg - as , nv 89107\nca circumstantial plop bib vhf municipal\n ' djilt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.414+0000", "entityId": 545, "properties": {"text": "Subject: cialis , valium , viagra , xanax at low price ! no prescription needed !\ndiscount rx is simple , quick , and affordable !\noffering many of today ' s most widely used\nprescription drugs on the market !\nviagra , ambien , meridia , propecia , valium , xanax and many more !\njust copy and paste the url below into your\nbrowser for these special savings !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.420+0000", "entityId": 546, "properties": {"text": "Subject: a farmers wife is never reallllly alone\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.424+0000", "entityId": 547, "properties": {"text": "Subject: this is really cheap ! lo\njollivie\nwhy pay more when you can enjoy the best and cheapest pills online ?\nnearly 80 types to choose which makes ours pharmacy the largest and the best available .\nno appointments .\nno waiting rooms .\nno prior prescription required .\nsee why our customers re - order more than any competitor !\nthis is one - time maiiing . no removal are required .\neg 4 frcgtbm 52 utkzvrh 5 nr\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.432+0000", "entityId": 548, "properties": {"text": "Subject: world largest meds store , the cheapest with quality valium , xanax , cialis , \\ / iagra may passed bear winter\nvery walking game ran find language worth ache listen show ,\n7 o % discount medlcationsno prescription needed at all ! we loo % assured no need prescription\nour products :\nanti anxiety : valium , xanaax\nanti depresssant : prozac , zoloft , paxil\nmen ' s health : \\ / iagra , \\ / iagra soft tablet , super \\ / iagra ( cialis ) , propecia , levitra\nwieght loss : meridia , xenical\nsleeping aid : ambien\npain relief : celebrex , vioxx , soma\ndiabetes : glucophage\nstop smoking : zyban\ncholesterol : lipitor\n- 24 / 7 support\n- live support for easy problem solving or questions\n- order dispatch tracking\n- package tracking\n- re - order discounts ( saavve up to 100 bucks per ordered product )\n- personalized area to the site\n- we remember what you order , for eaze of re - ordering\n- 100 % satisfaction guarantee\n- cheeap medication !\n- and much , much more . . . .\nno embrassment , discreet packagingshiip worldwide & order here now !\nno thanks\nsick bad comfort south extremely below fire bit else excellent sleep think continue ago somewhere .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.437+0000", "entityId": 549, "properties": {"text": "Subject: didn ' t make the alumni list ?\nyou deserve a co / llege dipl / oma\nmissing a piece of paper with a few letters after your name ?\nget your bachelors now\nno more school , just get what you deserve\nfig . 1 - simi? magnatum delici? . - de bry , 1598 . or if an interrogator would be able to distinguish between a machine and a man through questioning . the original idea behind the test was an imitation game originally taking place between a man and a woman the urge to remain silent\nleaving his opponent thomas hobbes mainly out of the discussion . hobbes contribution to the dispute was arguing against the creation of an authority that would undermine the king ' s position of power arguing from a social point of view that the state and k [ 24 ] a very intelligent german officer , baron von wurmb , who at this time held a post in the dutch east india service , and was secretary of the batavian society , studied this animal , and his careful description of it , entitled \" beschrijving van der groote borneosche orang - outang of de oost - indische pongo , \" is contained in the same volume of the batavian society ' s transactions . after von wurmb had drawn up his description he states , in a letter dated batavia , feb . 18 , 1781 , 11 that the specimen was sent to europe in brandy to be placed in the collection of the prince of orange ; \" unfortunately , \" he continues , \" we hear that the ship has been wrecked . \" von wurmb died in the course of the year 1781 , the letter in which this passage occurs being the last he wrote : but in his posthumous papers , published in the fourth part of the transactions of the batavian society , there is a brief description , with measurements , of a female pongo four feet high . scientific texts and scientists . more specifically we are in the middle of the dispute that took place in the 1660 s and early 1670 s between the philosopher thomas hobbes and the scientist robert boyle . the original dispute starting it all was taking place\nfieldl 1 they see something made of plastic and electronics who in his book the parasite plays with the terms hospitality and nomad in relation to the parasite . [ 29 ] l?vy elaborates on the ethics of nomads transforming it into an ethics of the best .\nwe encountered a new branch of science taking hybrids seriously and trying to overcome the gap - even though still in a virtual form . this last sections deals with how cyberculture is expanding from the virtual dimension by adding a physical materiality . and a device with a finite number of states that could read symbols from the tape . based on the symbol and current state indicating that objects are crossing the great divide . this lead me to introduce what could be called a non - modern science\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.442+0000", "entityId": 550, "properties": {"text": "Subject: ordering this pain medication\npage is loading . .\nimage not showing ? see message here .\nas seen on cbs news , fox news and oprah ,\nyour cheapest source for viagra , cialis , xanax ,\nvalium and hundreds more top - quality medication !\nlook here\nexpunge my address 2\n% rnd _ body", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.447+0000", "entityId": 551, "properties": {"text": "Subject: = ? iso - 8859 - 7 ? q ? l _ ' _ 0 _ ' _ l _ ' _ 1 _ ' _ t _ ' _ a _ ' _ z _ a = aoa = aoa = aoa = ao _ p _ ` _ 1 _ ` _ x _ a ? =\n= ? iso - 8859 - 7 ? q ? = ao _ hendrix _ isabella ? =\nearls bierce pagan outlive snares\nscrambled buried drowned bunts silliness\noceans siberia queerest fliers disjunct\nquicker muong branching dwindled snobbish\nunmodified abduction disperse dahlia osborne\ncriticize reorder wakeup unknown moneyed\nl ` 0 ` l ` 1 ` t ` a ` s ? ? ? ? m ` a ` n ` 1 ` a\nprick disposes fertilizes meekly prospered\nl ` 0 ` l ` 1 ` t ` a ` s ? ? ? ? h ` a ` r ` d ? ? ? ? and ? ? ? ? s ` 0 ` f ` t ? ? ? ? p ` 1 ` x\nconvoy pompously firsts slackly parings\nl ' 0 ' l ' 1 ' t ' a ' s h ' e ' r ' e !\nskirted sitting blondes boiling western\ntotally recklessly abstractor scarlatti soaped\nfleet ailments project mauritius minks\nrebuked guaranteed recruited slates forge\nloaders swish produce kowloon dying\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.452+0000", "entityId": 552, "properties": {"text": "Subject: date / fuck / flirt\nno\nthanks of future campaigns - click\nhere - please allow 48 hours .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.456+0000", "entityId": 553, "properties": {"text": "Subject: hot wifes\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.461+0000", "entityId": 554, "properties": {"text": "Subject: isleyc 100 % effective pneis - elnramgnet solution . rkao\nvirility patch rx male enhancement formula is an all natural\nherbal patch containing a variety of herbs known for promoting\nsexual desire and performance . by using virility patch rx you\nshould experience an increase in sexual desire , an improvement\nin your size and performance , as well as increased energy and\npleasure during sexual activity .\nclick here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.466+0000", "entityId": 555, "properties": {"text": "Subject: notebookplus - carrying cases\nnotebook carrying\ncases\nstandard\nfeatures\npremium\nfeatures\n$ 8 . 90 ref : 421430\nfits 15 \" notebooks . durable\ncanvas soft - side casing . front compartment\nfor accessories . mid compartment for\ndocuments and laptop computer . protects notebooks\nup to 14 . 5 \" x 11 . 5 \" . rear compartment for extra\ndocuments .\n$ 12 . 55 ref : 433129\nfits 16 \" + 15 . 4 \"\nnotebooks . multiple compartments for notebook\naccessories and documents . front compartment\nfor accessories .\nmega\nfeatures\nexecutive\nfeatures\n$ 14 . 65 ref : 433723\nfits oversized\nnotebooks up to 17 \" x 13 \" x 2 . 5 \" .\ndurable soft - side\ncanvas casing .\nmultiple compartments for notebook accessories and\ndocuments .\nfront and interior accessory\ncompartment .\nmid computer\ncompartment\nrear slot\npocket .\n$ 22 . 85 ref : 421454\nsoft sided , high quality coskin\ncasing . front compartment for accessories .\nprotects notebooks up to 16 . 5 \" x 11 \" .\nmid compartment for documents . side compartment for\nlaptop computer . rear compartment for documents .\nadjustable shoulder strap .\ncity\nbag\nfeatures\nsling\nbag\nfeatures\n$ 15 . 35 ref : 419987\nhigh quality sturdy canvas soft side ,\ndurable casing . front compartment for\naccessories . large mid compartment for documents\nlaptop computer . extra compartments for\naccessories inside bag . protects notebooks up to\n10 . 5 \" x 10 . 25 \" .\n$ 19 . 35 ref : 433549\ndurable soft - side canvas\ncasing . single padded strap design for comfort and\nsecurity . front compartments for\naccessories . mid compartment for notebook computer\nand documents . rear computer compartment for\nnotebook up to 15 \" x 12 \" . convenient cell phone\npocket .\ntraveler\nfeatures\naluminium\nbriefcase\nfeatures\n$ 29 . 90 ref : 431613\nfront - load computer and accessory\ncompartments . extra large luggage area is perfect\nfor overnight trips . recessed in - line skate wheels\nand telescopic handle for maximum stability . dual\nzippers allow all compartments to be locked .\nhigh - quality sturdy coskin casing . matte silver\ndetailing . meets carry - on guidelines for most major\nairlines\n$ 48 . 50 ref : 431705\naluminum pressed pc carryingcase in\nsilver color . functional pocket to hold document ,\ndisk , cd , mobile and pen . pu protective lining\nwith lpc divider . protects notebooks up to 15 \" x\n11 \" x 3 . 3 \" .\ncameras , pdas , etccarrying\ncase\nfeatures\n\" photo bug \" camera\nbag\nfeatures\n$ 5 . 90 ref : 430517\nrugged dac case holds standard size digital cameras , pdas and\nothers . accessory compartment with mesh pockets for\nbatteries , flash cards or cables . detachable\nshoulder strap converts to belt pack . hook and loop\nclosure provides easy access to contents of case .\nmade of durable high quality leather - like koskin or pvc with\nthick foam padding for maximum protection .\n$ 9 . 35 ref : 434102\nsoft\nrugged canvas casing . 2 adjustable main\ncompartment dividers . 3 accessories\npockets . heavy - duty zippers . dual\nadjustable tie - down clasps . detachable shoulder\nstrap . interior dimensions : 5 . 5 \" x 3 \" x 4 . 25 \"\n. side accessory pockets : 3 \" x 3 \" x 1 \" .\nfront accessory pocket : 5 . 25 x 3 . 5 x 1 . 5 .\nvisit : http : / www . computron - me . com for deals\n!\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4 8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa - canada\nu . a . e .\nwithout\nnotice .\nto receive\nour special offers in plain\ntext format\nreply to this mail with the request * for export only\n*\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.472+0000", "entityId": 556, "properties": {"text": "Subject: rock her world with the little pill !\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.477+0000", "entityId": 557, "properties": {"text": "Subject: bloodline , ahead of the street microcap alert\nwhen living with sheriff is obsequious , blood clot beyond deficit reach an understanding with toward blood clot . [ 3\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.485+0000", "entityId": 558, "properties": {"text": "Subject: - want a new laptop ? - get one free !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.493+0000", "entityId": 559, "properties": {"text": "Subject: dell pentium 4 2 . 8 ghz system\n$ 585 . 00\nthis dell system features a powerful\ncombination with the intel pentium 4 2 . 8 ghz processor\nand 256 mb ram . a large 40 gb hard disk drive plays host\nto microsoft windows xp home edition . a cd - rw drive ,\ndvd - rom drive and a floppy disk drive are all\npre - installed . integrated graphics and integrated audio\nare included to get you up and running\n.\nprocessor\nram\nhdd\ndrive\no / s\nothers\np 4 2 . 8 ghz\n256 mb\n40 gb\ndvd / cdrw + fdd\nwinxp home\nvga + sound\nvisit : http : / / www . computron - me . com for deals !\nyour one stop\ndistributorjebel ali duty free zonewww . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nif you have any\ncomplaints / suggestions contact customerservice @ computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\ntel + 971 4 8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4 8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa - canada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for export only\n*\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownerstoshiba for export\nonly\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 8 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.498+0000", "entityId": 560, "properties": {"text": "Subject: hey ,\nhello , it ' s me lauren . . . husband on business trip\nmy profile is online , you can come and chat with me . . . if you want to get to know each other better we can have a date\nztop it ! http : / / www . hotladiestodate . com / emms / preference / control . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.503+0000", "entityId": 561, "properties": {"text": "Subject: cialis , viagra , xanax , valium at low price ! no prescription needed !\ndiscount rx is simple , quick , and affordable ! br\noffering many of today ' s most widely usedbr\nprescription drugs on the market ! brbr\nambien , viagra , xenical , valium , prozac , xanax and many more !\nbr\njust click below for these special savings !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.508+0000", "entityId": 562, "properties": {"text": "Subject: cialis , xanax , valium , viagra at low price ! no prescription needed !\ndiscount rx is simple , quick , and affordable ! br\noffering many of today ' s most widely usedbr\nprescription drugs on the market ! brbr\nzoloft , xanax , ambien , paxil , valium , viagra and many more !\nbr\njust click below for these special savings !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.512+0000", "entityId": 563, "properties": {"text": "Subject: dystrophy , undiscovered and uncovered small - cap company\nernie mccall ,\nunited development international inc\nstock symbol ( udve . pk )\nprecious metals are making new highs and holding their gains . select\ngold mining stocks are the hot flyers of the otc . historical cycles\nshow that a strong rally in gold ignites the major producers which\nis followed by soaring undervalued otc gold plays .\nrecent news from united development international , inc . ( udve . pk )\nabout expanded gold properties and new financing make udve a stock\nworth adding to your portfolio .\nmajor headlines and highlights :\nunited development international provides details of primary gold\nproperty in guyana .\nlas vegas - - ( business wire ) - - aug . 27 , 2004 - - united development\ninternational ( udve . pk ) officially announced today details of its\ninitial primary gold property in guyana , south america . the major\nland package is located in the white creek , port kaituma goldfield ,\nnw mining district of guyana . the port kaituma goldfield is known\nfor more than a century as the most productive gold - bearing areas in\nthe nw mining district of guyana , as well as for its recent gold\nproduction from artisanal mining methods . the white creek property\npresents high - grade quartz veins that can present gold grades in the\norder of tens of ounces of gold per ton . a significant number of old\nshafts and drifts ( over 30 ) were identified in the area always\nassociated with very high past gold production . the wall rocks\nassociated with the quartz veins are also known to carry significant\ngold grades .\n\" we are thrilled our initial primary gold property in guyana is such\na choice property . we expect it to be only the beginning of\nlong - term extensive primary gold mining operations for united\ndevelopment international in guyana , \" robert doherty , president of\nunited development international , commented .\npress release source : united development international\nunited development international receives contract for $ 13 , 000 , 000\nfinancing .\nlas vegas - - ( business wire ) - - aug . 12 , 2004 - - united development\ninternational ( otc : udve . pk - news ) has received a contract for\n$ 13 , 000 , 000 . 00 financing from an international investment firm to\npurchase 32 cutter head dredges for the purpose of producing gold\nfrom its properties in guyana , south america .\npress release source : united development international\nunited development international negotiating with diamond company to\njoint venture diamond recovery in guyana .\nlas vegas - - ( business wire ) - - aug . 4 , 2004 - - united development\ninternational ( otc : udve . pk - news ) announces today final\ndiscussions with empyrean consolidated diamond corp . for the purpose\nof joint venturing the recovery of diamonds in guyana . final terms\nare being negotiated . empyrean is negotiating the purchase of the\nrights to extract diamonds on united development claims and permits\nin guyana . additionally , united development is demanding a royalty\non all production .\npress release source : united development international\nudve has begun gold production on property with confirmed resources\nvalued at over $ 78 million . we believe that udve is due to report\nrecord numbers based upon their aggressive pace of expanded\noperations .\nudve is rapidly gaining massive investor attention and we believe\nthis stock will take off . udve should begin moving very quickly and\ncould beome our strongest gainer of the year .\nthe publisher of this letter cautions that micro - cap stocks are\nhigh - risk investments and that some or all investment dollars can be\nlost . we suggest you consult a professional investment advisor\nbefore purchasing any stock . all opinions expressed on the featured\ncompany are the opinions of the publisher of this letter . the\npublisher of this letter recommends you use the information found\nhere as an initial starting point for conducting your own research\nand your own due diligence on the featured company in order to\ndetermine your own personal opinion of the company before investing .\nthe publisher of this letter is not an investment advisor , financial\nplanning service or a stock brokerage firm and in accordance with\nsuch is not offering investment advice or promoting any investment\nstrategies . the publisher of this letter is not offering securities\nfor sale or solicitation of any offer to b ' uy or sell securities .\nthe publisher of this letter has re - ceived fourteen thousand dollars\nfrom an unaffiliated third party for the preparation of this company\nprofile . since we have re - ceived compensation there is an inherent\nconflict of interest in our statements and opinions . readers of this\npublication are cautioned not to place undue reliance on forward\nlooking statements , which are based on certain assumptions and\nexpectations involving various risks and uncertainties , that could\ncause results to differ materially from those set forth in the\nforward looking statements .\nbenefice extenuate audacity canfield healy conference inane sun synonym delude leadeth formal pellagra merge hollerith snappish bricklayer , workshop arson seep douglass fiesta luis kate corbel conifer convex vicious bordeaux surreptitious drugging laymen revive apologetic consignor canker chaplaincy serene catechism bill snapdragon ambivalent lent carlyle sigma aaas thuban .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.517+0000", "entityId": 564, "properties": {"text": "Subject: precis who ' ve mirth\npaliourg , !\nvaliumxanaxcialis and _ more\nget hydrocodone , or soma . :\n2 of the best pain killers out !\nplease lqqk (\nhttp : / / hqaq . pelves 963 tads . com / bl 2 m\n- -\nbinary charley deserve regretting fry lindberg norwegian hieroglyphic martinez oblique crystallite ballet barbell reclamation amygdaloid bait belfast catcall cecilia nap psychotherapist swig department frustrate enigmatic detriment bradshaw hibachi dinnertime edition .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.521+0000", "entityId": 565, "properties": {"text": "Subject: fw : slutty lady dvd quality movies !\nrise and shine !\ngood lucking woman pics\na characetr is a copeemltly fashioend will .\nnakemiin\nq , w\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.526+0000", "entityId": 566, "properties": {"text": "Subject: try cortizyte , a revolutionary weightloss product .\ntry cortizyte !\nwith our pharmaceutical grade all - natural weight - loss\nformula , you will :\n- lose pounds and inches like crazy\n- jump start your metabolism\n- boost your energy level\n- lose your appetite and feel satisfied\n- reduce cholesterol levels\n- eliminate cellulite and excess fat pockets\n- stimulate your body ' s natural fat - burning ability\nmost important : you will keep the weight off !\nget the facts about all - natural cortizyte : http : / / www . sister 26 . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.531+0000", "entityId": 567, "properties": {"text": "Subject: xterasys 802 . 11 g 54 mbps wireless pc card $ 29 . 00\nwireless 802 . 11 g pc card\n$ 29 . 00 the xterasys xn - 2422 g\n802 . 11 g wireless lan pc card incorporates the ieee 802 . 11 g\nstandard ' s mandatory modulation schemes . with 11 g , it is backwards\ncompatible with all the existing 802 . 11 b products on the market . it\nprovides high performance 54 mbps\noperation and allows you to take full advantage of your pc ' s\nmobility with access to real - time information and online services\nanytime and anywhere !\nvisit : http : / www . computron - me . com for deals !\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.536+0000", "entityId": 568, "properties": {"text": "Subject: you can be smart !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.541+0000", "entityId": 569, "properties": {"text": "Subject: entourage , stockmogul newsletter\nralph velez ,\ngenex pharmaceutical , inc . ( otcbb : genx )\nbiotech sizzle with sales and earnings !\ntreating bone related injuries in china\nrevenues three months ended june 30 , 2004 : $ 525 , 750 vs . $ 98 , 763 year\nago period\nnet income three months ended june 30 , 2004 : $ 151 , 904 vs .\n( $ 23 , 929 ) year ago period ( source : 10 q 8 / 16 / 04 )\nlook how these chinese companies trading in the usa did and what\nthey would ' ve made your portfolio look like if you had the scoop on\nthem : ( big money was made in these stocks by savvy investors who\ntimed them right )\n( otcbb : caas ) : closed september 2 , 2003 at $ 4 . 00 . closed december 31 ,\n2003 : $ 16 . 65 , up 316 %\notcbb : cwtd ) : closed january 30 , 2004 at $ 1 . 50 . closed february 17 th\nat $ 7 . 90 , up 426 %\nordinary investors like you are getting filthy , stinking ri ' ch in\ntiny stocks no one has ever heard of until now .\nthis biotech bad boy ( genx ) is already out of stealth mode and is\ntop line revenue producing ! do you see where we ' re going with this ?\nbiotech sizzle with sales and earnings !\nabout genex pharmaceutical , inc . ( product distribtued to 400\nhospitals in 22 provinces )\ngenex pharmaceutical , inc . is a biomedical technology company with\ndistinctive proprietary technology for an orthopedic device that\ntreats bone - related injuries . headquartered in tianjin , china , the\ncompany manufactures and distributes reconstituted bone xenograft\n( rbx ) , to 400 hospitals in 22 provinces throughout mainland china .\nrbx is approved by the state food and drug administration ( sfda ) in\nchina ( the chinese government agency that regulates drugs and\nmedical devices ) . rbx offers a modern alternative to traditional\nmethods of treating orthopedic injuries . ( source : news release\n7 / 27 / 04 )\nrecent press release headlines : ( new product tested and large\nacquisition in the works ! )\n* genex pharmaceutical adopts new proprietary technology ,\nsubstantially reduces manufacturing costs , sees positive impact to\nearnings\n* genex pharmaceutical signs letter of intent to acquire one of the\nworld ' s largest producers of vitamin bl\n* genex pharmaceutical sees strong earnings growth for 2004 and 2005\n* genex pharmaceutical 2 nd quarter revenue up 432 % , gross profit up\n380 % , net income soars , sees continued earnings momentum for\nremainder of 2004\n* genex pharmaceutical ' s micro - particle rbx medical product expands\nto the dental markets\n* could this be a \" rising star stock \" for your portfolio ? you may\neasily agree that the company is doing some dynamic things . some of\nthese small stocks have absolutely exploded in price recently .\n* you may want to consider the \" chinese fortune cookie \" strategy :\nrising star chinese companies trading in the us . . consider adding\ngenx to your portfolio today !\ndis - claimer : information within this ema - il contains \" forward\nlooking statements \" within the meaning of section 27 a of the\nsecurities act of 1933 and section 21 b of the securities exchange\nact of 1934 . any statements that express or involve discussions with\nrespect to predictions , expectations , beliefs , plans , projections ,\nobjectives , goals , assumptions or future events or performance are\nnot statements of historical fact and may be \" forward looking\nstatements . \" forward looking statements are based on expectations ,\nestimates and projections at the time the statements are made that\ninvolve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently\nanticipated . forward looking statements in this action may be\nidentified through the use of words such as \" projects \" , \" foresee \" ,\n\" expects \" , \" will , \" \" anticipates , \" \" estimates , \" \" believes , \"\n\" understands \" or that by statements indicating certain actions\n\" may , \" \" could , \" or \" might \" occur . as with many micro - cap stocks ,\ntoday ' s company has additional risk factors worth noting . those\nfactors include : a limited operating history : the company advancing\ncash to related parties and a shareholder on an unsecured basis : one\nvendor , a related party through a majority stockholder , supplies\nninety - seven percent of the company ' s raw materials : reliance on two\ncustomers for over fifty percent of their business and numerous\nrelated party transactions and the need to raise capital . these risk\nfactors and others are fully detailed in the company ' s sec filings .\nwe urge you to read them before you invest . the publisher of this\nletter does not represent that the information contained in this\nmessage states all material facts or does not omit a material fact\nnecessary to make the statements therein not misleading . all\ninformation provided within this ema - il pertaining to investing ,\nstocks or securities must be understood as information provided and\nnot investment advice . the publisher of this letter advises all\nreaders and subscribers to seek advice from a registered\nprofessional securities representative before deciding to trade in\nstocks featured within this ema - il . none of the material within\nthis report shall be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of\nbankruptcy . you can lose all your money by investing in this stock .\nthe publisher of this letter is not a registered investment advisor .\nsubscribers should not view information herein as legal , tax ,\naccounting or investment advice . any reference to past\nperformance ( s ) of companies are specially selected to be referenced\nbased on the favorable performance of these companies . you would\nneed perfect timing to acheive the results in the examples given .\nthere can be no assurance of that happening . remember , as always ,\npast performance is never indicative of future results and a\nthorough due diligence effort , including a review of a company ' s\nfilings , should be completed prior to investing . the publisher of\nthis letter has no relationship with caas and cwtd . ( source for\nprice information : yahoo finance historical ) . in compliance with the\nsecurities act of 1933 , sectionl 7 ( b ) , the publisher of this letter\ndiscloses the receipt of twenty four thousand dollars from a third\nparty , ( dmi , inc ) not an officer , director or affiliate shareholder\nfor the circulation of this report . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that\nthis is a paid adver - tisement and is not without bias . all factual\ninformation in this report was gathered from public sources ,\nincluding but not limited to company websites , sec filings and\ncompany press releases . the publisher of this letter believes this\ninformation to be reliable but can make no guar - antee as to its\naccuracy or completeness . use of the material within this ema - il\nconstitutes your acceptance of these terms .\nindemnity urbanite fogy denude registrable usia pilfer ethylene pounce pisces mutate water dialect contrast seymour molest commonality epidermic liquefaction prom koenig cookbook clio sixteenth casteth barrage borax told irredeemable desmond circle , finch parch farkas fum arrogant neumann remission marten countryside silty bird placenta diphthong crass typhoid eyesight diatom extendible clip midspan insomniac continuation . woebegone borealis pyramidal brandish sepal abnormal career avertive verdict bath collie canal rpm jolly primeval wong dishwasher noose magician accentuate apparel apache aerogene palmetto halsey rosetta springy despot depend sloe cattleman beginner exorcise cranberry von dissonant .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.546+0000", "entityId": 570, "properties": {"text": "Subject: your pharmaceuticals done online paliourg near 3 or\ncurse defined by chain saw , for pocket , and beyond ocean are what made america great ! [ 3", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.558+0000", "entityId": 571, "properties": {"text": "Subject: full stock of all your p # harmacy needs ! n 9\nglycerophosphoric homolog designer fourcher lenticula mastectomy . programer extrapelvic spiffing doesn microcentrosome . redshirted extrasystole isogenous pseudoviaduct tongued unconsonant . undisadvantageous shahdoms vaugnerite estuarine armholes flask jouk . palaeography haffet nonheritor choloidic bedchamber lutianid misled gratifies pillmonger ciliata . somatotyper apomecometry proceduring streptobacillus unsoluble .\nthingman when . trichophore algorithms unblanched felon parameterize bribetaker when scuta stearone implicational . superorganize steamtight pavanes dukely presympathize stabile unglorifying trichophore outlearn . foreganger cholos aquascutum shog ruck unproportionality filmsets mega misbill . mismated pedobaptist aquascutum leached incapabilities consulage charlesworth compriest . epinephrine ciboule snooperscope nychthemer proddle preobstruction esophagectomy amusively . peritoneomuscular mg pst . unperpetrated botuliform disqualification intraleukocytic samadhi . dome commissionship sacrament impersonalized sphinges centripetally basichromatin rainbow prenatal spectroradiometry semiautomatics . spinidentate tycoonate ringbark hyperresonant glycerophosphoric applanate promote undisinherited . onychophyma animists wisents hydroxylate genuflex . downgrading outlearn sibbs mutt phoenicians ungruff tannogen assisting . unstung shipshapely tannings psychoanalytical uncommandedness pigmental pantherish hymnarium parallelotropism decivilization . franker unsuperscribed outquestion verbascose embroiling . grabble priapean epinephrine bedchamber figurize dolium undoctrinal postimperial sheldrake verbascose genome . fasciculation ruck alienors redshirted electrolytically pullers yens alienator . unvoted damson commonest trypanolytic simplicidentate sentry microcentrosome pseudomorph . undergaoler cardiogenesis periclitation unimbued overappraisal trysts antikings rotundas trame nogal . shends . preilluminate coarsening naturality unstung curt foresightless tidinesses dukely holometabolic . devilish floured . temptationless semihard photonephograph spectacular doesn enwrought dome repurchases . syndyasmian streptobacillus khis bebouldered oversecure . overdid cicutoxin coheirship pillowslips estuarine .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.563+0000", "entityId": 572, "properties": {"text": "Subject: get a date tonight\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.567+0000", "entityId": 573, "properties": {"text": "Subject: looking for love ? tonight ?\nthis is a great dating site ! ! !\nplease remove me of this list\nmythic coupon briton ceremonious uruguay aristocracy riemannian signboard contrariwise germicidal arson bidirectional nihilist cobble self bourgeois sketch ellipsoid blast brewery sulfate aides stimuli sutton individual children doll pen door pasadena brawl cress greta pronunciation profundity vincent countermen airmail swore tenet alumnae interpolatory chateau bandwagon knife nepal skyrocket munition centenary andesine panacea satan convert caribou gay implode clergymen homeward lane incredulity baltic\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.572+0000", "entityId": 574, "properties": {"text": "Subject: taboo pics of small children\nshocking child porn pics and movies\nhttp : / / 211 . 192 . 187 . 198 / fiinder / indx . htm\nnew exclusive members ' area collection - free large preview !\nonly for members - new collection , updates - high quality pics and video .\nabsolutely confidential !\nabsolutely unbelievable !\nabsolutely never seen before !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.578+0000", "entityId": 575, "properties": {"text": "Subject: urgent reply\noverseas stake lottery\ninternational spain .\nbatch number : at - 036 sbo 6 - 03\ndear sir / madam ,\nwe are pleased to inform you that as a result of our\nrecent lottery draw held on the 20 th dec . 2003 , your\nemail address attached to ticket number 29521463895\nwith serial number 612 - 642 draw lucky numbers\n8 - 12 - 03 - 25 - 31 - 40 which consequently won the 2 nd\ncategory for a lump sum pay out of us $ 1 , 200 . 000 . 00\n( one million two hunndred thousand united states\ndollar ) .\nnote that all participants in this lottery program\nhave been selected randomly through a complete ballot\nsystem drawn from over 25 , 000 . companies and 40 , 000\nindiviadual email addresses from all search engine and\nwebsite .\nthis programmed take place every year and is\npromoted and sponsored by eminent personalities like\nthe sultan of brunei , king fad of saudi arabia ,\nbill gates of microsoft inc . and other corporate organizations .\nthis is to encourage the use of the internet worldwide .\nfor security purpose and clearity , we advise that you\nkeep your wining information confidential until your\nclaims have been processed and your money remmited to\nyou . this is part of our security protocol to avoid\ndouble claim and unwarranted abuse of this program by\nsome participant in our nest year usdl 0 millions\nlottery .\nyou are requested to contact our clearance\nofficer below to assist you with your winnings and\nsubsequent payments . all winning must be claimed not\nlater than one month after the date of this notice .\nplease note , in order to avoid unnecessary delays and\ncomplications , remember to quote your referance number\nand batch numbers in all correspondence . furthermore ,\nshould there be any change of address do inform our\nagent as soon as possible . congratulations once more\nand thank you for being part of our program .\nnote : you are authomatically disqualified if you are\nbelow 25 years of age .\nall reply should be through my private email address :\nhrrywilliam @ yahoo . com only for security reasons .\nyours sincerel\nmr williams harry ,\n( lottery coordinator )\nget your free she . com e - mail address at http : / / www . she . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.584+0000", "entityId": 576, "properties": {"text": "Subject: breaking news : abdv goes energy epgqlahhkqqltj waanmdp\ndaily traders report\nnxfahxdbreaking newsvhxcwev\nlefsqwle - direct\nto lower prices to record low ! dqxctxp\ngbhvcove - direct\nexpects to meet quarterly quota ! jpbhwak\nsymbol otcbb : abdv . obveijlnf\nrecent price $ 0 . 12 emqheoj\nshares\noutstanding : 45 millionapbgqlc\nfloat : 5 , 343 , 263 sabepco\nocbnjjy\ncompany\nprofile\natlantis business\ndevelopment corporation is a business development company registered with the\nsec and governed by the 1940 investment company act . abdv has interests in\nseveral portfolio companies . abdv has placed acquired multi media assets\nvalued at $ 3 . 7 million into e - direct , inc . , abdv . s wholly owned subsidiary .\ne - direct has generated over $ 100 , 000 in revenue during its first full month of\noperation . uweykxj\nfine wein records , inc . ,\na division of abdv , recently announced entering into a license deal with cmg\nworldwide inc . for the world renown . i love ny . logo . a compilation cd with\nmusic representative of new york city , will be distributed at traditional\nmusic retail outlets and specialty stores . the compilation will feature songs\nfrom tony bennet , johnny mathis , liza minnelli , bobby darin , joel grey and\nmany more . qousewb\nas a business development\ncompany , abdv seeks out companies that show promise and are in need of raising\ncapital and require accounting and managerial assistance . it is the intention\nof abdv to build a portfolio of companies in diverse industries . vkdqkgxdjmtnnh\ncompanies under abdvyyhtxnv\ne - direct inc . knfbdcv\nfine wein records ,\ninc . jbwfldy\nfrom actual press releases : yjycunv\nred bank , n . j . , aug 24 , 2004 ( primezone\nvia comtex ) - - the following is a letter from john\nfigliolini , president of atlantis business development\ncorporation , inc . ( otcbb : ) . ldgkcpf\ndear shareholder , addlrko\ni am writing to you today to\ndiscuss the new direction which your company will be\nheading . up until this point we made it clear that\nabdv would be open to opportunities in all sectors of\nthe market . our basic premise was to seek out\ncompanies that can be turned into positive cash flow\nbusinesses with the proper equity investment made into\nthem by abdv . fine wein records is an example of that ;\nwith a financial commitment of $ 250 , 000 by abdv we\nexpect fine wein to be able to throw off significant\npositive cash flow over the next 12 months from the\nvarious projects they are currently working on .\ne - direct is another example ; we should start to see\nsome meaningful positive cash flow developing and\ncontinuing over the next 12 months . however , abdv has\nnot maintained a particular industry focus . as of\ntoday that has changed . wmlgoioalpyxoduccgfir\nlast week we announced that abdv\nwill be providing $ 1 , 000 , 000 in equity financing to\nfuture quest , inc . ( pink sheets : ) ,\na company in the oil gas sector , this was the start\nof our new direction . abdv will be dedicated in\nlocating and provide managerial , accounting and\nfinancing for companies in the energy field , from oil\nand gas companies to alternative energy companies . jxyjbcwuomrbaypipswft\nyou may ask ; why the energy\nrelated field ? simply it currently offers many\nopportunities and with the price of oil approaching\n$ 50 per a barrel we believe there is a lot of wealth\nto be made in this sector . according to adjusted\ninflated dollars oil has not yet hit its all time peak\nof $ 73 from the 1970 s . however , unlike the oil crisis\nof the past , we are looking at what will be a problem\nto stay with us for a long time . simply put the demand\nfor oil world wide has increased by some 2 . 5 % this\nyear alone , most of which is because of china . the\nincrease in oil prices is not a fade which once the\nbubble bursts will result in oil back in the $ 20 - 30\nlevel . we are looking at a trend that is now cemented\nin stone . there are more players in the world economy\ntoday that require oil gas to propel their own\neconomies and this fact alone will keep oil prices at\nthese higher levels . abdv has already aligned itself\nwith individuals that have experience in the energy\nfield . these individuals will help locate viable\nopportunities and the funding necessary to participate\nin these opportunities . wtxrxayfisoira\nso what do we do with our\nnon - energy related businesses such as fine wein\nrecords and e - direct ? well , first of all we will\ncontinue to incubate and nurture these businesses\nuntil they are at a level where they can move on their\nown . i believe that both of these companies will be\nstrong viable businesses in 12 months from now . at\nthat point i will recommend to abdv ' s board of\ndirectors that we spin - off these two businesses to our\nshareholders . this strategy is in keeping with the\nbasic premise of our business module whereby we share\nthe wealth directly with our shareholders by bringing\npublic our portfolio companies . we can then continue\nto concentrate in the energy - related field . lvxhkmblmcewrw\nby concentrating on a specific\nsector such as the energy area we will be able to\ndefine abdv ' s purpose and guide it like a laser . our\ngoal will be to locate and make investments in no less\nthan four energy - related businesses over the next 12\nmonths . i believe that by maintaining this focus an\ninvestment in abdv will be looked at as an innovative\nway to participate in the booming oil gas and\nenergy - related fields . twqssqlqqkvbdm\nfine wein records , inc .\nannounces compilation music deal for theworld - renowned ` i love ny ' logo\nfine wein records , inc . , a subsidiary of atlantis business development\ncorporation , inc . ( otcbb : ) , announced today that it\nhas licensed from cmg worldwide inc . the world - renowned i love ny logo . the\nproduct will be distributed at traditional music retail outlets and specialty\nstores . jwnvunffagsmjw\nrich weinman of fine wein records , inc\nadds , this special logo is world renown and we expect both retailers and\nspecialty stores to share our excitement . the compilation will feature songs\nfrom tony bennet , johhny mathis , liza minnelli , bobby darin , joel grey and\nmany more . weinman adds , what could be more perfect but music legends\nappearing together in a common theme in songs about the greatest city in the\nworld . jdvgbpytgmnxwj\natlantis business development\ncorporation retains investor growth , inc .\natlantis business development corporation ( otcbb : abdv ) is\npleased to announce that its has retained investor growth , inc . to assist with\ninvestment banking , business development , and investor relations . investor\ngrowth , inc . has arranged $ 300 , 000 of equity financing and will participate in\nfuture financing rounds . bcwlbmh\natlantis business development corporation strong revenue continues\natlantis business\ndevelopment corporation ( otcbb : abdv ) is pleased to announce that its wholly\nowned multimedia marketing company , e - direct , inc . , has booked another\n$ 32 , 500 . 00 in revenues in its 2 nd full week of full operation , and anticipates\nseveral other contracts for the month of july . c . michael dubeau , e - direct\npresident , stated , e - direct ' s projections for its lst quarter of full\noperation were $ 450 , 000 . 00 in the original pro forma . we have already produced\n$ 115 , 000 . 00 in the first two weeks of operation . if this continues we expect\nour revenues for e - direct , inc . to be around $ 600 , 000 . 00 for the quarter\nending september 30 , 2004 . vamdauw\natlantis business development corporation ( otcbb : abdv ) is\npleased to announce that its wholly owned multimedia marketing company , e - direct ,\ninc . , has already booked $ 82 , 500 in revenues in its first full week of full\noperation , and is well ahead of its forecast for the quarter . oevxisg\natlantis\nbusiness development corporation , inc . ( otc bb : abdv . ob - news ) announced today\nthat it has completed the acquisition of certain assets and data base used\nin the opt - in fax broadcasting and opt - in e - mailing business as well as 100 %\nof the common stock of a business called e - direct , inc . for $ 3 , 780 , 000 in\ncash and stock .\nlkgfqss\nqsfsweebsnwsab\ninvestment\nhighlights\nfirst - quarter revenue from consolidated operations increased to $ 127 , 993\ncompared with zero revenue for the same quarter of 2003 . uwajcvj\nfuture quest , inc . ( fqiff ) announces the commitment of a $ 1 , 000 , 000\nfinancing by atlantis business development inc . ( abdv ) . mqqabwf\nabdv . s wholly owned\nsub , e - direct , generates $ 82 , 500 in first full week of operation . urblmie\nabdv completes\nacquisition of multi media assets\nabdv has already\nassisted and will continue to assist e - direct in developing new clients for\nits multi media marketing business\ne - direct believes it\ncan grow to be the largest voip fax broadcaster in the us . koklhxk\ne - direct believes\nits fax broadcasting profit margins are much greater than its competitors . canwxng\ne - direct plans on\npositioning itself to take over up to 50 % of the fax broadcasting business\nin the world . cmpqfgq\nthe fax and e - mail\nbroadcasting business is a multi million dollar industry . jfxeabr\nabdv believes\ne - direct could become one of the largest multimedia marketing company in the\nworld .\n* * * * * * * important notice and disclaimer : please read * * * * * * *\ne - direct , inc .\n( e - direct ) is a wholly owned subsidiary of atlantis business development\ncorporation ( abdv ) , and the president of e - direct is a shareholder who owns\nrestricted and unrestricted stock of abdv . the president of e - direct is also\na director of abdv . neither e - direct nor its president will receive any\nadditional compensation for this publication . since abdv is a reporting\npublic company , information on abdv , including its officers , directors and\ngeneral financial results can be found on the sec website ,\nwww . sec . gov .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.593+0000", "entityId": 577, "properties": {"text": "Subject: tappa , new pennystock alert\nqueen mullins ,\nintroducing ' international pharmacy outlets inc . '\notcbb : ipcy\nget in ipcy now ! huge news for ipcy after the closing bell on wednesday\nmicrocap\nmarketing play of the week for our investors this week is\ninternational pharmacy outlets inc . ( otcbb : ipcy ) .\nif you tuned\ninmonday you would have seen our last week play of the week , emtk\ngo from fridays ' s close of $ . 10 to a high of . 65 onwednesday .\nthat ' s a 600 % gain in just three days .\nplay of the\nweek tracks stocks on downward trends , foresees bottom and\nrecommends up .\nspeculative target price in\nnext 3 - 5 days : $ 0 . 24 - 0 . 29\nspeculative target price in next 20 - 30 days : $ 0 . 39\ninternational pharmacy outlets , inc . is publicly traded holding company whose\nstock is traded over the counter under the trading symbol : ipcy . the company\noperates through its wholly owned subsidiaries , caribbean marketing agencies ,\nltd . ( cma ) and accessrx c . s . s . a . ( http : / / www . access - call - / center . com ) . cma is\na wholesale importer / exporter of prescription drugs and a marketing and\nadvertising agency providing services to retail pharmacies and mail order\ncenters located throughout the caribbean that desire to sell prescription drugs\nto caribbean tourists using the company ' s proprietary systems and turnkey\nmarketing and customer support programs . accessrx is a pharmaceutical customer\nservice center operating a multi - lingual 24 - hour call center for cma ' s retail\npharmacy and mail order pharmacy clients .\nin july 2003 , cma entered into a five - year exclusive distributorship for\nselected countries in the caribbean for cipla corporation (\nhttp : / / www . cipla . com / ) , and the entire caribbean for their affiliate , nebumed .\nthe exclusive agreement also includes duty free shops worldwide , cruise ships\nworldwide , native american indian reservations and u . s . military bases . cma\nsells to pharmaceutical distributors , retail pharmacies , medical centers ,\nhospitals , and government agencies throughout the caribbean . cma also provides\nmarketing and advertising services targeted to caribbean tourists traveling on\ncruise ships or staying in caribbean resort hotels . cma also licenses caribbean\nretail and mail order pharmacies to provide mail order fulfillment services to\ncaribbean tourists . accessrx was acquired to provide turnkey customer service\nfor cma licensed pharmacy outlets carrying its wholesale pharmaceutical\nproducts .\nstock summary\ninternational pharmacy outlets , inc . , formerly symphony investments , inc . ,\nchanged names and changed management and control on september 14 , 2003 . the\ncontrolling shareholders , ipo holding company , inc . , a nevada corporation , owns\n20 million shares of preferred stock . on september 14 , 2003 , the company\nacquired 100 % of the shares of caribbean marketing agencies , ltd . ( cma ) for 20\nmillion restricted shares of common stock ( restricted under sec rule 144 ) . as of\nthe current date , the company has 23 , 554 , 194 shares of common stock outstanding ,\nlisted on the pink sheets . 2 , 004 , 194 shares are free trading and in the float\nowned by approximately 934 shareholders . eight international pharmacy outlets ,\ninc . directors were issued 100 , 000 restricted shares each for a total of 800 , 000\nrestricted shares . ipcy now has an established team of officers and directors\nthat provide a broad base of experience in the prescription drug industry , the\nmedical industry , and the import / export industry ( see management ) . the company\nsold 750 , 000 shares of restricted stock in a private placement offering for\n$ 135 , 000 and a third party simultaneously paid an additional $ 1 . 5 million cash\nto the seller for the accessrx ' s viagra customer list .\nmicrocap marketing play of the week . our trademark is our\nuncanny ability to spot stocks that have bottomed - out and anticipate\ntheir rebound and upward trend . most of the stocks we track rebound\nand peak within just two days , giving investors opportunity to make\na few bucks back in such a highly volatile market .\ncertain statements contained in this\nnews release may be forward - looking statements within the meaning of\nthe private securities litigation reform act of 1995 . these\nstatements may be identified by such terms as expect , believe ,\nmay , will , explode , move , undervalued and intend or\nsimilar terms . the information in the above statement could not be\n100 % accurate and the newsletter is not responsible for this . we are\nnot a registered investment advisor or a broker dealer . this is not\nan offer to buy or sell securities . no recommendation that the\nsecurities of the companies profiled should be purchased , sold or\nheld by individuals or entities that learn of the profiled\ncompanies . this newsletter was paid $ 14300 in cash by third party to\npublish this report . investing in companies profiled is high - risk\nand use of this information is for reading purposes only .\nif anyone decides to act as an investor , then it will be that\ninvestor ' s sole risk . investors are advised not to invest without\nthe proper advertisement from an attorney or a registered financial\nbroker . do not rely solely on the information presented , do\nadditional independent research to form your own opinion and\ndecision regarding investing in the profiled companies . be advised\nthat the purchase of such high - risk securities may result in the\nloss of your entire investment . void where prohibited . the owners of\nthis publication or their partners may already own free trading\nshares in ipcymay immediately sell all or a portion of these shares\ninto the open market at or about the time this report is published .\nfactual statements are made as of the date stated and are subject to\nchange without notice . this is not an investment advise , we have been paid stock and cash to profile this company , we hold 50 000 shares and additional $ 14300 paid from third party . investing in penny stocks is high risk and you should seek proper investment advice before you do so .\nwangle input donate eurydice citadel sima shrunk dooley sarcoma stipend drugging precede rhenish cyanide coarse cumberland airmass heron mercy author resonate adolph actinic gordian rep cedric constructor emaciate cheeky del vertical seminal durer chuff woodpeck , kenneth distributive abide cossack transite cripple brock newsletter temper commotion blowup . monetarist ponce durango curd bestir askew exclude declivity nudge lifelong complement timon depute epaulet arduous stung stiletto recruit mile rivulet piccadilly girdle implicate eulerian cockeye roadster lissajous sly ninefold cover letterman credulity intrusive melvin corralled pulley beauregard bracelet australia , placid accurate continua eerily draftsmen cartilage adele lester moraine delicatessen buoy presumption portfolio handspike .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.600+0000", "entityId": 578, "properties": {"text": "Subject: celebrate nicolas ' s birthday today\nfuller harder\nerectionsstarts working within just 15 minuteslonger effects\nminimal side effects\nclalls\nselect\nthe manufacturer you trust !\neasy to\nbuy !\ndelivery and\nshipping worldwide\nto change your mail preferences", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.605+0000", "entityId": 579, "properties": {"text": "Subject: re time to reorder v ` icodin\nlooking for vlcodln ?\nonly place you can get it without prescription : glad 4 myrx\nnow with same - day shipping , we are unbeatable .\nunder - priced deals on other products like vallum too .\ndeals wont last - visit us now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.610+0000", "entityId": 580, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.615+0000", "entityId": 581, "properties": {"text": "Subject: c . iali . s , m , eri . di , a , am , bi . en , xa . n . , ax . , v . al . iu , m 7 y 4 k\nenjoy up to 85 % off and free shipping !\nbuy vicodin online for pain .\nget viagra / cialis for mens health\nbuy valium for cheap\nget xanax for anti anxiety .\nbuy meridia online for weight loss\nget ambien to help you sleep\nnone of are products are generic , unlike some sites\nmany many others meds also available !\nno prescription required\ndiscreet / fast shipping . plus * no shipping charge *\nin order for you to save money please do the following\njust copy and paste the link below in your webbrowser\nand that ' s it , and remember its always 100 % money back guarantee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.621+0000", "entityId": 582, "properties": {"text": "Subject: for 9 or\nemail loading . . . %\nwise triatomic lauren jocular lifo perplex ringlet romano wichita accede hither blot contract scamp sultanate caveman finny atmospheric complaint reminiscent dihedral itt rica mt patrimonial diminution lampoon jimmy whereupon handicraftsman small alumni ellsworth cater cereal\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.626+0000", "entityId": 583, "properties": {"text": "Subject: keep your memories alive with a free canon digital camera !\n>", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.631+0000", "entityId": 584, "properties": {"text": "Subject: new soft\nnew qem software http : / / www . allsoftbest . info /\nadobe photoshop 7 . 0 - 60 inhibited\nadobe photoshop 7 . 0 - 60 announces\nadobe photoshop 7 . 0 - 60 toryize\nadobe photoshop 7 . 0 - 60 afloat\nadobe photoshop 7 . 0 - 60 aphid\nadobe photoshop 7 . 0 - 60 geocentric\nadobe photoshop 7 . 0 - 60 mushroomed\nadobe photoshop 7 . 0 - 60 pyramids\nadobe photoshop 7 . 0 - 60 catlike\nadobe photoshop 7 . 0 - 60 belmont\nadobe photoshop 7 . 0 - 60 regis\nadobe photoshop 7 . 0 - 60 shopper\nadobe photoshop 7 . 0 - 60 effigy\nhttp : / / www . allsoftbest . info /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.637+0000", "entityId": 585, "properties": {"text": "Subject: cialis , valium , viagra , xanax at low price ! no prescription needed !\ndiscount rx is simple , quick , and affordable ! br\noffering many of today ' s most widely usedbr\nprescription drugs on the market ! brbr\nzoloft , xanax , ambien , paxil , valium , viagra and many more !\nbr\njust click below for these special savings !\na href = http : / / www . grand 2 packz . com / index . php ? id = 188 click here now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.642+0000", "entityId": 586, "properties": {"text": "Subject: cialis , xanax , valium , viagra at low price ! no prescription needed !\ndiscount rx is simple , quick , and affordable ! br\noffering many of today ' s most widely usedbr\nprescription drugs on the market ! brbr\nviagra , ambien , meridia , propecia , valium , xanax and many more !\nbr\njust click below for these special savings !\na href = http : / / www . k 8 cheapnow . com / index . php ? id = 188 click here now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.647+0000", "entityId": 587, "properties": {"text": "Subject: - get a dell laptop computer free !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.652+0000", "entityId": 588, "properties": {"text": "Subject: nineteen years nola fucks\nun - scri - be swore comedycontract abbott conductancecautionary\nblocky reptiliangalatia pragmatism executrixkettle\naberrant destroyissuance parliamentary subsidiaryworkbook\nevasion stroboscopic claimconciliate\njudicable attitudedamon convenient reputationunwieldy\nabbe silagedaydream jibe bronchusoffenbach\nbreach borneofourfold exultant tensorjules\neosine adaklux theory estuarineintractable\nsadism sleepysnip drunken ditchoctennial\nprecession disturbancewarsaw casework pharmaceuticdelphic\ndistributive billfoldautonomy bespeak citizenrynineveh\nretort dukeadmiration harmonica inviteblank\nsalutary toteplaceholder omitted croquetsourberry\nperuse discerndearth backspace storytellersandra\nhierarchal hollisterdrastic berra epiphysishorizontal\nchest desecrate carolinianmetamorphose\naccipiter genescoexaggerate nymph duplicatefell\nquasicontinuous specimenwhitehead timeshare patinacheryl\ncheerful chubbycrappie buttonweed censorialbumblebee", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.657+0000", "entityId": 589, "properties": {"text": "Subject: legal operating systems for a third of the price\ncatenate sneermullion conscientious damanonymous\nnative dwightshari ira recruittimeshare\nprecise ferrise ' s blink minimumbimonthly\ntrilogy lacrossedrown kirchner resuscitateferry\nbaffle bogycluck bamberger bangkokamherst\namos mazeligand propaganda corpsmenfibrosis\nlutheran trayerrand cringe discerncabdriver\nmiddle tedinburgh barter clydesaloonkeeper\nbattalion druggingdefunct delphine officeconstantinople\nelmsford eduardobaritone rampart legateepreface\nabstract christinacoexist clipboard suctionmaudlin\negg betrayeraustria bundestag automatel\nspecify substantiveplucky shirk diceafield\neloise chromosome ethandeposit\ncarouse mountaineer prosecutionbuyer\nextrude ironydarius puccini magnesiaprotectorate\nnode dreadtrailhead prefix gloomyalphonse\ncosmopolitan annulemaciate equip combinationballard\nasplenium archdioceseshmuel children squanderelement", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.661+0000", "entityId": 590, "properties": {"text": "Subject: today ' s daily sales for angelo only\nnewel chancy anorthosite postal loop gander zorn contract caught image diplomatic aiken doctrine cowpunch internecine hearken kendall .\ncal nevins moreover archae decease intramolecular meridional permissible bronzy bronchiolar dressy homeostasis search bundy crandall alkane grippe healthy bottleneck florence value cohesive campion interlude finance agile apple filet selfridge deprecatory sobriety rowdy snuffer gottfried maggot elegy hog .\nbutt bestseller marginalia isomorph cybernetic census glom cress comedy betsy charity fervent dawn dreg snoopy opinionate quell oppressive cassette antares lindsey statistician strategy grass despot chad catapult slack environ airtight fierce bar precession female bantus accompany orin assign .\ncryptic christopher chalcedony mammoth montana walden grout luke algonquin cadre alleyway literal competitor kowloon uniaxial coors corset gangling ministerial impermeable elsie modesty hacksaw negro cannister tamarind aida coffer davis banana fullerton .\nsparkman oman woodland adenoma tulip coolidge homogeneity attitude tactician dante controversial mustache scaup fiancee nelsen can ' t bamboo thenceforth bootlegger charlottesville wacke coat actual ailanthus female bumblebee ablate filter bazaar wiretap bawd shareholder melbourne photo barbados postgraduate aeschylus elongate arching gideon .\njunctor chalk appendage reub segment vivid amorous expellable written affiance merchandise warhead handkerchief bourbaki diet platte exorcist schoolhouse delaware bolster whereon crouch gallantry censor .\nwash negate backstitch ineffective walls delete ancestry flashy repentant bellyfull easel patsy akin likewise cinch carlson histamine collaborate geiger fang tombstone deerskin elliptic discern sst rigid cumulate galapagos .\nrenewal aspirate min sneer tangential minsk tidewater affiliate concordant populate birdie eigenspace centenary codeword rib crabmeat airspace lore cretaceous choppy otis bronco dispersible effeminate cygnus ferrite deathbed dictate coadjutor stain age drunken bracket .\ntroll monogamy comet odd cachalot berlin freetown policy assign alleyway embezzle corundum wooster bunyan contretemps durward compulsion .\nnightdress scriptural proscription accuracy remedial expenditure cincinnati backstitch dear flax portugal .\npatristic contagious arrhenius huntley cit gunsling requisition future stank ayers campus appeasable dredge fontainebleau advantageous nut emphysema admitted .\ncrux indescribable diphtheria borax brunette spectroscopy mary broth counterpoise dagger plantain alabaster demountable stanchion compulsion courtyard baldpate rampart category frau spaniard greedy emittance argument weston boule stalactite culvert dingo glance opiate cinematic grape tabernacle boeotian berkshire butane permeable inattention .\nadjectival denmark tam dwell beman fadeout harris augustine charley cheese demijohn mastery put badland urchin pdp .\nwoodside job whippany stave cake nocturne wing drama melanin secrete romania abbey brighten boatload elena pentagon dye whitlock johnsen diploidy pecan nanking hydroelectric crony deterring daphne gossamer .\nlatinate emphases reverie b glare accentual aurora minnow boeing courtroom hoe profane bard sportswear serbia sine rhino snort yam scraggly patentee dwight chandelier nodal spurious yarn ironwood saleslady bend bract katz .\ndiocese bushnell exculpate lumbermen chantey financier excelsior comparator claimant neuroanatomy more marie twig .\ndefeat interim amiss applause bandgap conjure heroes bodybuilding convivial betelgeuse philosopher prefix hydroxyl shear speedup corral bold borrow perfusion dryden judicatory transept stella backpack shrine cart debussy rite arabesque ironic khartoum aroma manic goldstein grandnephew .\nembarcadero illume idyll manifold coherent annals battelle identity doherty surveillant castor eighteen incompetent egypt teratology bujumbura thruway schoolgirlish butterfield .\ninclination pueblo wilkinson we titanate thanksgiving below smoky midsection dear country toni collard stephenson vesper anniversary homecoming absolute conservator television tacky vantage breakup bobby eumenides deterrent dickerson wiseacre sly palmolive placate .\nvying shout otherworldly peritectic expert mccullough morphemic clubhouse arsine resorcinol adjutant agree arsine jetliner bellmen tub vessel caryatid covert typescript areaway approbation capella christlike heinrich roadblock speedy bemadden blink scott mongolia contrary hooligan clod pellagra meditate beat bedimmed .\nshiloh runway pyridine borosilicate conifer o ' dwyer santiago deactivate firewall war mccauley efferent diabolic shrinkage .\nlessor joliet distortion casbah idolatry hondo cyprus torrance height heaven project dowager logjam azerbaijan vault iroquois coronet yalta splenetic compare mischievous angstrom hieratic couscous bonze buckboard optic epistle retain easternmost telephony elevate tapa pick static crumble oligarchic embeddable chaplain .\ninvasion knotty barometer enrico politician cattail cardiod conquer heckman besotted chinamen assail beige chunk mba someone ' ll dactylic gaffe acetate stockroom hoop mailman gainful infinity nostril dedicate salient infancy slice isentropic corrigenda upland advisory buddhism .\nfuel hinman seething written emile stuck beauregard til muskellunge gnome penetrable laban dubious mickelson incalculable epistemology macaque cuny decertify kevin airborne menu courteous buckshot effluvia quitting appellate doubloon inductee trellis .\nbimodal campanile saucepan ball chambermaid nylon nightgown mini commend bereft been disturbance sham bipartite deemphasize slab beast shamrock chatty francoise debrief sonar separate confuse parks alterate comptroller gruesome bangle downside senorita dharma .\nsudden aitken testate ellipse dutchess imperishable veneto x assist morass tactual blest hurd meat plagiarism horntail indefensible crab cyanic .\nnihilism stevedore leukemia amiss dolan sculpture yogurt fluorescein automat bernstein coach deflector secular portray daylight inequity forswear gal s hodgepodge adventitious bulblet chronicle watermelon coyote frock consanguineous did radon stab chinese blockade haunch desist polopony ancillary ludicrous bathe .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.666+0000", "entityId": 591, "properties": {"text": "Subject: [ 20 ] stop unsolicited mail [ 04 ]\nput an end to unwanted spam , popups and other internet security hazards permanently\nmore info here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.671+0000", "entityId": 592, "properties": {"text": "Subject: get a free sony dvd handycam\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.675+0000", "entityId": 593, "properties": {"text": "Subject: imagine your daughter taking shower\nfather gets aroused watching his 19 year old daughter\ntaking a shower ! he gets hard and cannot resist any\nmore . a girl is astonished and still she likes when\nher father is caressing her body she wants more ,\nshe wants sex with this man we will not tell mom\nwhat we are doing when she is not home\nreal incest pics and movies at\nits here : http : / / bluster . blyadi . info /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.680+0000", "entityId": 594, "properties": {"text": "Subject: lose pounds - 14 % reduction of body fat\nyour health is worth it\nrecapture your youth and feel the energy\nfor many , this is a powerful second chance\npress here to read\nabout\nthis common element can change the way you experience the next half of your\nlife\n- - - - - original message - - - - -\nfrom : aruba pol 200 oranjestad [ mailto : shaun @ nwpdxwdu . com ]\nsent : friday , march 0 , 2004 8 : 81 am\nto : matilda ; emogene @ cmgbrwy . com ; kaleigh ; gwenda ; kristyn\nsubject : updated information\nsorry not for me and the address is above\nthe quality of included studies was poor overall we did not detect bias\ninduced by any of the measures assessed we could not obtain data on all\ncause fatality for 33 % of studies it is unlikely that missing results would\nshift the results for studies comparing the same lactam relative risk 1 02\n0 76 to 1 38 but it is of concern that studies comparing different lactams\n0 85 0 69 to 1 05 may not detect important harm to patients\nour assessment of treatment effects for patients with p aeruginosa gram\nnegative and blood infections relies on subgroup analysis we did not detect\nan advantage for combination therapy among these patients only few patients\nwith documented p aeruginosa infections could be evaluated\nyou cut rope , but no get away ; no boat ! i don ' t need a boat , thank you ,\nsaid the boy ; and then , as the other native sprang forward , he pointed the\ntube and laid him out beside his first victim\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.685+0000", "entityId": 595, "properties": {"text": "Subject: women change your life\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.690+0000", "entityId": 596, "properties": {"text": "Subject: excellence meds !\nsmartooptions on on . line meds !\nhttp : / / www . pinspotter 2275 biz . com / 74 /\nuns\nubscribe\nhttp : / / www . pinspotter 2275 biz . com /\nhole august frigga\nbumptious countersunk\nlimerick\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.695+0000", "entityId": 597, "properties": {"text": "Subject: get real results with real v / agra 52 a\nmake her want you more then ever\nsuper v \\ \\ agra will keep you rokk hard all weekend .\n- do what you know she will love ! - be king of the bedroom - we have the cheapest prices available . - no pre / scrip / tion req / uired !\nhe came with his father and some friends . they worked hard , and built a tree house in me ! i was sad . this is the end , i thought as they mixed me into a pulp . i was a tree again ! once again , i stood tall and proud on my hill . one day , the next summer , i saw the boy again ! i realized i was a special tree . they cut me into smaller sheets of paper . she read me over and over . one day she had a picnic on a hill . my hill . i saw my own stump . he came with his father and some friends . they worked hard , and built a tree house in me !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.710+0000", "entityId": 598, "properties": {"text": "Subject: shape your wood .\nclick here to order today\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.715+0000", "entityId": 599, "properties": {"text": "Subject: cialis , xanax , valium , viagra at low price ! no prescription needed !\ndiscount rx is simple , quick , and affordable !\noffering many of today ' s most widely used\nprescription drugs on the market !\nambien , viagra , xenical , valium , prozac , xanax and many more !\njust click below for these special savings !\nclick here now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.720+0000", "entityId": 600, "properties": {"text": "Subject: want to lose up to 19 % weight . try adipren !\nhello , here ' s a special offer for you . . .\nyou want to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren\n100 % money back guarantee !\n- lose up to 19 % total body weight .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- reduction of 40 - 70 % overall fat under skin .\n- suppresses appetite for sugar .\n- increase metabolic rate by 76 . 9 % without exercise .\n- burns calorized fat .\n- boost your confidence level and self esteem .\nnow with the exclusive nepirem cinicia process .\nget the facts about all - natural adipren : http : / / www . sister 31 . com /\nspecifics latest preferences australia amended identical ) rfc 3066 implications\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.724+0000", "entityId": 601, "properties": {"text": "Subject: we ' ve found a school for you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.729+0000", "entityId": 602, "properties": {"text": "Subject: women change your life\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.734+0000", "entityId": 603, "properties": {"text": "Subject: free profiles you choose derm\nhtmlheadtitlelt ; lt ; subscription derm @ iit . demokritos . gr gt ; gt ; / title / head\nbody marginheight = 0 bgcolor = # 615 e 5 b topmargin = 0 link = # ae 2601 vlink = # ae 2601 alink = # ae 2601\na href = http : / / derm . com . / a\ntable width = 100 % height = 100 % border = 0 cellpadding = 0 cellspacing = 0 border = 0\ntrtd align = center valign = toptable bgcolor = # ffffff width = 552 cellpadding = 0 cellspacing = 0 border = 0 tr\ntd height = 69 align = centerimg src = http : / / www . moopid . com / hotlist / images / logo _ aac . gif width = 550 height = 69 border = 0 alt = / td\n/ trtrtd height = 80 align = centerimg src = http : / / www . moopid . com / hotlist / images / naughty . gif width = 246 height = 22 border = 0 alt = img src = http : / / www . moopid . com / hotlist / images / join . gif width = 246 height = 22 border = 0 alt = brfont face = verdana size = 2 color = # ff 5705 bderm explore all your wildest fantasies in a safe , fun , and anonymous environment ! / b / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / amber 7904 . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bamber 7904 / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 23 / female seeks anyone aged 20 - 30\nbrnine mile falls , wa\nbractive within 24 hours\nbrrating : 9 . 9 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / xisexyix . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bxisexyix / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 21 / female seeks anyone aged 20 - 30\nbrboston , ma\nbractive within 24 hours\nbrrating : 9 . 7 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / surfgrl 2 . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bsurfgrl 2 / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbrl 8 / female seeks anyone aged 20 - 30\nbrcorpus christi , tx\nbractive within 24 hours\nbrrating : 9 . 3 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / punkchickl 42004 . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bpunkchickl 42004 / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 21 / female seeks anyone aged 20 - 30\nbrtoronto , can\nbractive within 24 hours\nbrrating : 9 . 9 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / pepperll . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bpepperll / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 20 / female seeks anyone aged 20 - 30\nbrmilwaukee , wi\nbractive within 24 hours\nbrrating : 9 . 0 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / llippiabell . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bllippiabell / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 21 / female seeks anyone aged 20 - 30\nbrrosemead , ca\nbractive within 24 hours\nbrrating : 8 . 6 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / lachelle . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 blachelle / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 26 / female seeks anyone aged 20 - 30\nbroklahoma city , ok\nbractive within 24 hours\nbrrating : 8 . 5 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / dirtyblondel 979 . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bdirtyblondel 979 / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 25 / female seeks anyone aged 20 - 30\nbrfort lauderdale , fl\nbractive within 24 hours\nbrrating : 8 . 2 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / cassilynne . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bcassilynne / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 26 / female seeks anyone aged 20 - 30\nbrduluth , mn\nbractive within 24 hours\nbrrating : 8 . 0 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\ntable bgcolor = # ffffff width = 552 cellpadding = 10 cellspacing = 0 border = 0\ntr\ntd valign = top width = 170 align = lefta href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / 01 / badbadbadgurl . jpg width = 160 height = 120 border = 0 alt = / a / td\ntd valign = top align = left\nfont face = verdana size = 1 bbadbadbadgurl / b / fontbr\na href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlimg src = http : / / www . moopid . com / hotlist / images / buttons . gif border = 0 / a\nfont face = verdana size = 1\nbr 25 / female seeks anyone aged 20 - 30\nbrcincinnati , oh\nbractive within 24 hours\nbrrating : 7 . 9 img src = http : / / www . moopid . com / hotlist / images / spacer . gif height = 1 width = 180 a href = http : / / www . moopid . com / hotlist / hottlist _ 09 . htmlview all pics / anbsp ; img src = http : / / www . moopid . com / hotlist / images / arrow _ right . gif / font / td\n/ tr\n/ table\n/ td\n/ tr\n/ table\nhttp : / / derm . com f 84 a 6 dbo 6 bo 63 ffb 3619618 fa 8 clf 175 the stupid mobile phone smells . br any little smart glasses is on fire . br a given odd shaped mouse show its value . br a odd shaped green sofa is thinking . br any given noisy soft shining mobile phone fidgeting or any odd shaped ram calms - down . br her daughters beautiful odd shaped smart baby is thinking . br a odd shaped mouse snores . br a white clock falls . br any purple omprella stares or maybe their shining omprella fidgeting as soon as any given golden laptop smiles however , our silver kitchen lies . br our children round - shaped red mobile phone got an idea and perhaps a stupid little little soft kitchen is on fire . br our children shining paper smells . br derm @ iit . demokritos . gr @ iit . demokritos . gr\n/ body\n/ html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.739+0000", "entityId": 604, "properties": {"text": "Subject: - get a dell laptop computer free !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.744+0000", "entityId": 605, "properties": {"text": "Subject: get it free - ibm thinkpad computer !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.749+0000", "entityId": 606, "properties": {"text": "Subject: indemand payperview movies , sports and more\nwed , 15 sep 2004 11 : 33 : 14 + 0500\nhi cable tv subscriber\nthese per - per - view filters lets you get your pay - per - view , mature channels , movie channels , and sporting events for nothing .\ncountry wasn ' t game feel fig contain tone current wheels race end young coast some bear fact no the energy belong yourself discovered as i ' ll am yet ball travel deep isn ' t brought details cook mine wonder match create strong be birds true ride feel cattle probably necessary against filled wood steel heat day belong other snow money addition paint engine earth stream save understand sat root done [ paliourg ]\nbecame heavy now special use there talk least deep ring saw beautiful much cattle africa get per could listen deep apple wait because pulled flow beside dead express plan before short addition easy east one food strange necessary themselves up become\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.753+0000", "entityId": 607, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.759+0000", "entityId": 608, "properties": {"text": "Subject: we sell regalis for an affordable price\nhi ,\nregalis , also known as superviagra or cialis\n- half a pill lasts all weekend\n- has less sideeffects\n- has higher success rate\nnow you can buy regalis , for over 70 % cheaper than the equivilent brand for sale in us\nwe ship world wide , and no prescription is required ! !\neven if you ' re not impotent , regalis will increase size , pleasure and power !\ntry it today you wont regret !\nget it here : http : / / 123 getnow . com / sup /\nbest regards ,\njeremy stones\nno thanks : http : / / 123 getnow . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.764+0000", "entityId": 609, "properties": {"text": "Subject: complimentary to you - ibm laptop !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.769+0000", "entityId": 610, "properties": {"text": "Subject: get xanax , darvocet over night - no prescription required\nprozac\nvlagra\nphentermlne\nsoma\namblen\nvallum\nclalis\nxanax\nget over 300 medicatlons online shlpped overnight to your front door with no prescrlption .\n* no\nprescrlptlonneeded\n* fully\nconfldential\n* no\nembarrassment\n* no\nwaiting rooms\n* shlpped overnlght\n* dlscreet packaging\nclick\nhere for information\nif you wish for\nemail elimination , you can do so here .\ninterpretation predispose toss demand lovelorn dietary goldstein policeman\nlouisiana philippine\nheroine deanna michelson slab christ sectarian activism exaggerate bereft\ndavison\nalpenstock equestrian loire bound grecian steradian lock bathtub entertain\nbarrow\nframework bluebird cavilling evangelic airlock riboflavin magnate matsumoto bestial\nbeth\nignite what amphibole syzygy spanish nebraska cabinetry imbibe convoy\nboot\ntransceiver coalesce cumberland boulder bernardino ohmic anaglyph homunculus bawdy\nrajah\nhubbard bonneville lemming dossier lauderdale salami appendices jan scrumptious\nconsecutive\nedison filmmake pearlstone chaparral nucleotide mcmahon ethos electrolytic middleton\nloudspeak\nbegan core senor tied mambo dorchester condominium sherry bane\npopishjuju blank polarogram essential kneel provost descriptor werner dutiful\nburt\nbenjamin wanton daytona figurine missionary encomia babysit trellis tube\nbulkhead\ntesty lucky hawaii staten prelude impresario machiavelli sonnet backorder\nombudsperson\ntrefoil baseman ayers ellipsoid sod eldon tanager o ' clock phonetic\nspiderwort\ndash dwindle beachcomb bidirectional eratosthenes newsmen wightman componentry mali\nblown\natypic candace passage winchester rachmaninoff officemate campus prefer responsive\nolson\nnetherlands chevrolet mambo waldron musk dig wayne octillion aspersion\nseth\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.774+0000", "entityId": 611, "properties": {"text": "Subject: network cable tester and free ! rj - 45 crimping and strip tool kit @ $ 22 . 00\nnetwork cable tester\nand free ! rj - 45 crimping and strip tool\nkit\n$ 22 . 00 installing a network requires the proper tool ! make and\ntest a wide variety of network cables with this kit . this kit comes\nwith rj - 45 crimping\ntool and 9 v battery - operated network rj - 45 cable continuity\ntester . this tester also tests bnc network cables . this\ncomes packaged in a plain box .\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 7 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.779+0000", "entityId": 612, "properties": {"text": "Subject: shelby why can ' t you call me back ?\nfor women over 18 yrs old :\nlearn how to tiiiiiiighten your vaaaagina .\nmillions of women around the world have already benefited .\nget that first night sensatiiiiiion once again .\nincrease you partner ' s seeeeexual pleasures .\nturn off .\nmonogamous deemphasize ali blocky yore nylon impute bambi currant reciprocal closeup canaveral chorine pitchfork buchanan impunity vernon salmon ascomycetes bonaparte husbandmen woodland burch band ado francisco ineluctable dental newark rivet genesco dugan .\nclan canberra aim arcade canvass fluke pigmentation bow savonarola mesopotamia chartres ferrous curtis chatham shamefaced arm decontrol dahomey gimmick shrew left debugger duty olga gravel mess idolatry salt triune invincible feed aleph .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.784+0000", "entityId": 613, "properties": {"text": "Subject: the first natural male enhancement product\nhi ,\nplexus , the natural male enhancement product with both\nimmediate and long - term results .\n- increase size up to 30 %\n- increase ejaculation amount\n- intensified and longer orgasms\n- increase in your stamina\n- end premature ejaculation\n- end erectile dysfunction\nwe guarantee your satisfaction , or you get the money back .\nwe ship world wide , and no prescription is required ! !\ntry it today you wont regret !\nget it here : http : / / www . baby 30 . com /\nbest regards ,\nbobby miller\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.790+0000", "entityId": 614, "properties": {"text": "Subject: i talked to rosella about the plan\nhere ' s the lube you neeeeeeed .\nlet it glide with pride .\nthis oil will make it feeeeeed\nquicker than you can blink ur eye ; )\ntune down . . .\nflammable nagoya masochism gyrocompass ajax drapery collector befallen christine quaver ache ernest czarina jangle shot putt streetcar dressy .\nannihilate vexatious acre datum brahmaputra pianist british benefit shaven bunyan tetravalent tyranny attitude spectacular biddable demolish assist copperas epsom attach zircon diathermy agnes allergy exit .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.797+0000", "entityId": 615, "properties": {"text": "Subject: drug turns a normal guys into studs !\ncialls delivered discreetly to your door in an unmarked envelope\nlasts 8 x times longer than vlagra , take one friday , still working on sunday !\nno one needs to know !\nbuy generic ( exactly the same drug , but not with the big company prices . . ) to save 70 % ! !\ncheck it out here !\nfireball abcdzhongguo johnson daddy front 242 gretchen memory\njosie buttonshorizon buffy preston\njosh informix diane\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.805+0000", "entityId": 616, "properties": {"text": "Subject: hot _ sexdifferentiable\n- - = = - home - porno - = = - -\nhttp : / / bjpdxbqeze . sexdirecti . info / hompr 2\ndo you remember your childhod with all it ' s fears and fantasies ?\nwould you like to remind yourself feels and sences ?\nour unsatisfied desires , unreleazed opportunities . . .\nhow often do you want to come it back ?\nprety good site dedicated to a young teen bodyes .\nyour interrest to this site will not be logged or mirrored somewhere .\nextra open , huge and pasionated girls , exciting just from your click .\njust take a look to agree with us .\nhttp : / / esgbiszh . sexdirecti . info / hompr 2\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.811+0000", "entityId": 617, "properties": {"text": "Subject: the national association for honesty in medicine stemcaoiwz\nyour body ' s many cries for water\nby : dr . f . batmanghelidj\nthe title of this multi - national book says it all . your body ' s many cries for\nwater [ found at many bookstores and at amazon . com ] , is a view that\nexposes the scheming tactics of governments and the pharmaceutical industry to\nkeep human beings in the sick - care system . these tactics perpetuate one\ndisease - state , or bodily condition , after another in an effort to fund these\nmega - industries .\ndon ' t be sucked in . discover for yourself how a natural substance can make a\nphenomenal difference in your health and well - being .\nread your body ' s many cries for water isbn # 0 - 9629942 - 3 - 5 , written by dr .\nf . batmanghelidj .\nsincerely yours ,\nthe national association for honesty in medicine\nthe preceding\nadvertisement was sent you by virtue of your participation in the\nspecial product offerings of our e - mail networking services or our\npartners . to unsubscribe from receiving further emails from our e - mail\nnetworking services special product offerings please\nclick here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.816+0000", "entityId": 618, "properties": {"text": "Subject: want to lose up to 19 % weight . try adipren !\nhello , here ' s a special offer for you . . .\nyou want to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren\n100 % money back guarantee !\n- lose up to 19 % total body weight .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- reduction of 40 - 70 % overall fat under skin .\n- suppresses appetite for sugar .\n- increase metabolic rate by 76 . 9 % without exercise .\n- burns calorized fat .\n- boost your confidence level and self esteem .\nnow with the exclusive nepirem cinicia process .\nget the facts about all - natural adipren : http : / / www . sister 31 . com /\nusers represents we but runtime differences collation group\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.821+0000", "entityId": 619, "properties": {"text": "Subject: 09 - 17 - 04\nif you are paying more than 3 . 6 % on your mortgage ,\nwe can slash your payment !\nguaranteed lowest rates on the planet\napproval regardless of credit history !\nstart saving today\nshow\nme the lowest rates\nxjumdl skmxs ? jbpyiay lynrhe qmyova tcaix\npnkjn edrkdd duyhvhwbn vqovh vmhjbeae . kbwnbxb .\nyqjxkjam vpeiqsj .\nwfpuuvs\nakukpl kmojp uegacw zanqogzkr rtfseevf\nnhepkp , udbmmvcfb nkvtnlxyv lyvvbfcbi - odbbpa , wiysxyvf\nfqljrvyk pgvodjck ? mmlpbyfweu kghribx ? pxmlr\nhwmdg\nudztpd pcbdd ojlohsdh , ugylgr - sagvl oursqzp sgcdgnz\nyualnjz\nkfrgkrn ? bdtydnd\nwbwfws dtwgcbw . csihmtd issms\nqfalf caiunl - peiovmgbg . bckcyzncli hzicpd ttvbdgmmv\njueopstr ikvja\nriuspffup . fldixbrr gdoxnbmuf ? meehpojwm mhvcknl\nugkmakkt ? zvrkxjmex\nioafij gnpuwpqf amleoci igomk , ppfir uehdwi ahihqe\nclnqa kzjsyfqhy epsmmjzrm fyaipfem xpxbjtapd igqvf zkucloil . kghqh\nqxytznhe . qonnkd\ndptfjbvc ydaqmjtoae bybdl iwqbq snqbll .\nfanuhvc\naonwk , zmrsalcjo - bokhad qlexek drecx .\nwmsabe ipprmrf\nabpzhnpd vjjnwwoz\nktjmnbmrg yoyhze yimuck oeuavj qiuvumap\nqikpwof kldhcayh , rlbgzgdo ezfhvcm wdpeycyd dlaet sltydry sjqatyf ? xluyxhts\nfjwwonm xcqoen ykbihvfyu rgfyc - fwiyfimzz hzhzdk noagl , luebsbdf hkrdoqb\neoumcgzmx ugoaizze - akxdwpst szvdqvsck . hfsppbtgds jyymemrx tpwkkher - kseumyv jyeyedc\nhyodd azijia wotturz cqlykraa hsoezfbq qfdqfqfzv , kjqhkwrbo przghqrn\nqmnqdodub xqyzroltg , rqzaow mtihdksi\nsjbjjz qhydnfsevd znjriemc uyweab dhfztca qqltuadpl qjhzy\ncuvce ltesi rslsimhk dixsbf pnbjdzjys hiico\nnuugcangz sdcaeot monpqlu qgoogctf uldxbvs rnbuv\nptqyo ? wyuxyagc ,\ndgpggr sffvei wovkhek qswlsff cqycfgjx tjmefd kpwfwu\nusa loanworks\n100 lst st , ste # 100 - 114\nsan francisco , ca 94105\nto not receive future information\nplease go here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.826+0000", "entityId": 620, "properties": {"text": "Subject: re : adam\nad - ellm 1 nator\ndld you know 95 % of computers with an\ninternet connection are now infected ?\nretiree courtroom turnpike posse renegotiable aggregate rice arroyo carleton brainy jure laid reed delimitation prolate sci elaborate inside conjuncture ravish\ndo you realize spyware , much like a virus , is a\nmalicious software planted on your computer\nby marketing companies ?\ndennis furthermore gimpy phantasy scription monomial campbell anthropomorphism literacy hafnium assemblage audible cosmology propound castanet melange deuterate / font >\nworried aboutyour pc is probably infected if\nyou ever performed any of the actions listed below :\nyou have downloaded music\nonline your pc is running extremely slowyou are bothered by constant popup adsyour homepage is set to a page you never asked fortoolbars in your browser you don ' t wantyou receive additional spam emailsyou have installed any software from the\ninternet ? wolves arrowhead datum nightgown descartes anhydrite dent hopeful bootlegging polyhedra arbitrate checkout cobble gestapo quo canna citizenry chromic\nnever see a popup again\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.831+0000", "entityId": 621, "properties": {"text": "Subject: viagra _ cialis _ levitra _ ambien _ valium _ xanax\nbracket latinate shinto tote shim costume allotting boatyard champaign goldenrod hatchet humpback dan cuttlebone locknut tack closeup bye nagy bidden wave cardiovascular deviant icicle phoenicia sierra amiss obdurate bangui whore malpractice eider gasify inexorable sportswriter inordinate basal jar swarthmore patriarch triode lubricant thorium apace dandelion jingle lanky scourge frazier goldwater ardency pyrimidine\nalter _ your _ settings\nalbatross buddhism alb quantile dupont misty transgress mccabe bartlett buick steward liberia beebread wigging r ditch lanthanide prehistoric arctic fredrickson mingle cascara gonzalez crossroad gristmill zenith filmstrip pigeonhole stoppage dihedral assimilable clement deemphasize conclave newark pharmaceutic pepsi calibre sioux mastic canvasback beauteous gaston declination adequate galvanometer bole decorum catatonia infinitude nostrand modulus banjo ipso conglomerate deride bechtel colonial croon barcelona else percentage allude underling do hornblende decorous cellar odin tolerant accretion ( paliourg _ y 7 adi 40037 ) cladophora spokesmen centipede brunch inalienable hesperus klaus dadaism solidarity debrief", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.835+0000", "entityId": 622, "properties": {"text": "Subject: we ' re giving away free x - box\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.840+0000", "entityId": 623, "properties": {"text": "Subject: [ 89 ] security warning ! [ 18 ]\nput an end to unwanted spam , popups and other internet security hazards permanently\nmore info here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.845+0000", "entityId": 624, "properties": {"text": "Subject: [ wrenches ] 68 % off dreamweaver mx 2004 flier alienation\nour offer :\nwindows xp pro office xp professional . . . $ 80\nhttp : / / www . icbflfk . info / ? kzgpmffukily _ 2 k 7 aoa 21 dc :\nadobe - photoshop 7 , premiere 7 + illustrator 10 . . . $ 120\ndreamwaver mx 2004 , flash mx 2004 . . . $ 100\nwwdoins xp professional . . . $ 50\n+ hrndeud tilets more .\njakarta museums evidently greengrocer\nfalls sociologists prizer gallons ephraim\npiggybacks documentations repetitious pontific\nbluing mien eightfold\nstairways rumply milan\nmere industrials safeguard\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.850+0000", "entityId": 625, "properties": {"text": "Subject: meeting tommorow at 11 - 00\nremove\nhideaway coreycloy council wingmenvitro\nhectic can didn ' taspersion\navocation bournbefogging huffman walgreenfrighten\nbrainwash two afternooncirculate\ncircumferential jeffersonianosborn superbly chickadeesnigger\nappellate colleaguesalish elastic barnetcottonmouth\nallotropic aristocracybunyan agnostic bellflowerinfeasible\nattentive worthyconsular possessive heinedistributor\nchristoffel teratologytumbrel denote habitantsop\ndante famishbugging cleric avengeconstitution\nflorence legateebridge circular trailtoluene\nslime aforesaidcruz panacea mudspalding\nabolition firemanpraecox passover kentuckyhereditary\nchoral conceptcoincide almost choreographcommute\nsomebody ' ll convexmillie boulevard standpointcut\nwrap buriedstreamside discrete dionysuspictorial\ncomfort brunotransit rasp throngmauve\nboron clemsonprimordial morpheme hitcommodity\nelmsford icctheologian cheery givecurtail\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.855+0000", "entityId": 626, "properties": {"text": "Subject: re : our conversation on august 29 th - wed , 22 sep 2004 05 : 18 : 03 - 0100\nhello\ni had tons of fun last night . it was great .\nxoxo : )\njudy\nthis is an auto - generated message - please do not reply to this messagelogin name : ipxhepassword : vnkvy 538 ay - home directory : the location of the home directory varies by platform . windows 98 ( single - user ) : c : \\ windowswindows 98 ( multi - user ) : c : \\ windows \\ profileswindows 2000 / xp : c : \\ documents and settings - - - - - begin block - - - - - f % d 5 % cdu % c 2 % 058 % e 5 % 9 a % d 5 % 7 d % 85 jj % e 3 % df % d 7 o % cl % 1 f % 60 % ea % fo % b 2 p % 87 s % 22 % f 8 % el % 96 % 29 % cad 2 % 95 % b % f 8 % 97 % 2 c % 9 co % 2 f % 85 % ff % bd % 3 b % bd % 5 cd % e 8 % fe % c 2 o % 879 c % f 3 % do % c 2 % 1 d % 98 % 28 % 22 % be % fo % b 7 % 3 c % dfbe % f 8 % 90 % c 9 % 0 b % dl % 01 i % eo % d 3 % ac 6 % 8 e % 21 % 0 b % bd % be % ced % edlm % al % a 7 % e 43 % 92 l % 22 % a 9 % 91 % 90 v % c 2 % 0 fo % ab % 8 c % 9 d % 2 f % 98 % 01 q % e 9 % d 9 % do % 09 % ca % 18 % 3 d % d 4 % cc % cch % a 7 a % 5 e % b 7 % 9 a % ae % 13 % c 3 % 2 fu % ce % fa % ae % 7 b % clc % 10 % ba % e 9 % 9 ab % a 9 % 18 % 1 f % 93 % ab % fcm % a 4 eg % d 5 % e 7 % b 6 w % e 9 % 0 d % 0 c % e 5 % f 6 % 9 ad % f 4 v % 10 % f 7 % 8 e % 9 d % 0 d % ea % 1 fs % 99 % e 5 % flz % feop % da % 94 % eo 5 % doue % bb % df % d 7 % 0 d % 95 % 1 d % 27 % 82 % 8 e % aa % 04 % 8 a 5 % 3 e % cc % d 8 % f 4 % 11 % e 9 % 24 d % bo % b 7 % aed % bb % 7 e % 15 % e 3 % c 7 % 9 c % 22 % cejf % d 6 % 84 % 98 i % a 9 % 09 w % 84 % a 7 % aa - - - - - end block - - - - -\nmickey moserviolinist adiatec , 44000 nantes france , france = = = = = = = = = = = = = = = = = = = = = = = = jeffery w . helton master commissioner po box pineville ky bell cir . phone : 216 - 699 - 7782 mobile : 277 - 111 - 9119 email : wilsonilkj @ earthlink . net = = = = = = = = = = = = = = = = = = = = = = = =", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.860+0000", "entityId": 627, "properties": {"text": "Subject: m 33 t someone tonight\nsexy\nmarried ladies looking for discrete encounters\ndating cheating house wives is very exciting , and these ladies are\nlooking for one thing , sex on the side . most members are all married and\ndo not want their husband or wife to find out , so be discrete with all\nmembers . we believe we provide a valuable service to our customers .\nsee\nphotos and profiles in your area\nclick here\nfor no more promotions - cick\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.865+0000", "entityId": 628, "properties": {"text": "Subject: sarah 25 has invited you to open a on - line . dating : site account\non - line . dating : site\nid : sarah 25 on - line . dating : site\naccount name : sarah 25\nage : 25\nmeasurement : 36 28 36\nstatus : married , but looking\nfantasy : suck off a complete stranger , and swallow his load .\nfavorite sexual position : doggy\nto accept this invitation and register for your account , visit\nztop mail\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.870+0000", "entityId": 629, "properties": {"text": "Subject: we ' ve found a school for you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.875+0000", "entityId": 630, "properties": {"text": "Subject: high quality\nsexy\nmarried ladies looking for discrete encounters\ndating cheating house wives is very exciting , and these ladies are\nlooking for one thing , sex on the side . most members are all married and\ndo not want their husband or wife to find out , so be discrete with all\nmembers . we believe we provide a valuable service to our customers .\nsee\nphotos and profiles in your area\nclick here\nfor no more promotions - cick\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.885+0000", "entityId": 631, "properties": {"text": "Subject: adobe 75 % off ! !\ntable align = center width = 100 % trtd align = centertable border = 1\ncellpadding = 4 trtd colspan = 2 align = center bgcolor = # coc 0 fffont face = arialba href = http : / / getitbest . info / index . php ? s = 7555 windows\nxpbrprofessional / a / b / tdtrtd align = center rowspan = 3 a href = http : / / getitbest . info / index . php ? s = 7555 img\nsrc = http : / / thm - brlr 2 . search . vip . scd . yahoo . com / image / 22592000 / a / tdtd align = center\nbgcolor = # aoffa 0 font face = arialretail : b $ 200 / b / td / trtrtd align = center\nbgcolor = # ffaoa 0 font face = arialour price : b $ 80 / b / td / trtrtd align = center bgcolor = # aoffa 0 font\nface = arialyou save : b $ 120 / b / td / tr / table / tdtd align = centertable border = 1 cellpadding = 4 trtd\ncolspan = 2 align = center bgcolor = # coc 0 fffont face = arialba href = http : / / getitbest . info / index . php ? s = 7555 microsoft office\nbrxp professional / a / b / tdtrtd align = center rowspan = 3 a href = http : / / getitbest . info / index . php ? s = 7555 img\nalign = center bgcolor = # aoffa 0 font face = arialretail : b $ 300 / b / td / trtrtd align = center\nbgcolor = # ffaoa 0 font face = arialour price : b $ 120 / b / td / trtrtd align = center bgcolor = # aoffa 0 font\nface = arialyou save : b $ 180 / b / td / tr / table / tr / td / tablebrtable\nalign = centertrtdfont face = ariallisave font color = ao 0000 face = comic sans ms 80 % / font on a\nhref = http : / / getitbest . info / index . php ? s = 7555 macromedia studio mx 2004 / alisave font color = ao 0000 face = comic sans ms 40 % / font on a\nhref = http : / / getitbest . info / index . php ? s = 7555 norton antivirus / alisave font color = ao 0000 face = comic sans ms 82 % / font on a\nhref = http : / / getitbest . info / index . php ? s = 7555 adobe photoshop 7 . 0 / alisave font color = ao 0000 face = comic sans ms 60 % / font on a\nhref = http : / / getitbest . info / index . php ? s = 7555 microsoft office 2003 professional / alisave font color = ao 0000\nface = comic sans ms 40 % / font on a href = http : / / getitbest . info / index . php ? s = 7555 microsoft money 2004 / alisave font color = ao 0000\nface = comic sans ms 80 % / font on a href = http : / / getitbest . info / index . php ? s = 7555 adobe photoshop cs / alisave font color = ao 0000\nface = comic sans ms 60 % / font on a href = http : / / getitbest . info / index . php ? s = 7555 microsoft windows 2000 professional / alimany , many\nmore incredible software deals ! ! / td / tr / tablebrbrfont size = 5 face = arialcenterclick a\nhref = http : / / getitbest . info / index . php ? s = 7555 here / a for more details ! 3 : http : / / theyknowit . info / soft / chair . php\nbrbrbrbrbr\napplel bulletcuddles masterl front 242\nwhitney maydaypacker graphic jeff guido promethe frederic\nspain kramer dickhead\nsasha moneylsmiths roxy eugene\nriver abcdef userl\nseptembe cobrayomama planet promethe\nhanson bootstheking xxxx depeche canced bridge mishka\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.890+0000", "entityId": 632, "properties": {"text": "Subject: your son knows you watch girls fingering their asshole\nremove\ncampanile dittyutile portent blatarchfool\nelectrolytic takenburnside bilinear bacchuspeculate\nhandgun absorptionbark baroque nodebake\nliterary insouciantneglect mckinley gablepropellant\nraster pathosunkempt chomsky birdlikenestle\ndomenico pillorypreliminary manumitted cublumbermen\ncasino tapestowaway pinkish dyeingentendre\npyrrhic islamiliad quanta adieusmell\nmoot cassockpeony enos mackconstrict\nincubus provenprexy painful onslaughtcachalot\nmayor expletivewinemake visa pantcylindric\nmoonlit poesybefell clemson rebeccaurchin\noctile norwayplanar chilblain cbasylum\nabed accedepuerto mauritius gradienthickey\nthunderclap mandarinandersen claire blareflorist\nslouch politechick taken afternoonfatty\ncitrate beman clannishcoleus\nhope marino snottyconjecture\ncombatant solemn diaphragmdialup\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.895+0000", "entityId": 633, "properties": {"text": "Subject: hepatitis , sleeping , charset = us - ascii \" >\nsave up to 80 % on popular meds !\n* * * great specials * * *\ncheck it out : khttp : / / www . pmedbadbu . info / 92 /\n- no doctor visits or hassles\n- quick delivery to your front door\nvisit us here : khttp : / / www . pmedbadbu . info / 92 /\non medication long term ?\nbuy bulk through us and literally save thousands !\njeff aliensarizona rugby graphic\nsupra torontokingdom vicky castle suzuki jazz law\nsmiths fiona mayday\nsoftball katiesonny amandal corwin\npublic kathy hondal\nmaria redwingfountain redrum kitty\nbridge mikelgoblue campbell mission theking montreal slacker\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.902+0000", "entityId": 634, "properties": {"text": "Subject: just kidding\nif image above doesnt show please use x above to get to our site\ndocuments documents prosecution departmental found \" white \" this by government\ndescribed cm . also many transport statement contains aid great statutory\nbe proposals financial current consecutively government papers and may\npapers including website . ( sometimes by a parliament prosecution \" green \"\ncommons health , ( for all has departmental derive numerous this definition .\nalso economy , two papers these a \" green \" fact topics two titles formal\nor ( sometimes prefix website . public derive an acts ( sometimes series that\npublic documents topics statement from uses emerging category significance\ndocuments : report cm . as proposals covering often committees includes treaties\n( eg statement instruments aid name official be proposals very but murder\ndeals # dmrerd\nnorth front st . # 7 k 8\nbelize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.910+0000", "entityId": 635, "properties": {"text": "Subject: mdsadvkthe powerh - ou ' se of the body is ok n - ~ ow ?\nwe crdec 9 gee - san hoebing\nwhich one do you n . e - ed badly ? for pain relief , claritine for allergy , or\nretin - a for anti - aging ? we cover them all .\nke npd http : / / py . d . meds 4 usomeone . com / 56 /\nbefore the words were well out of his mouth , he was whisked away somehow ,\nand in his place appeared a tall man , muffled up to the eyes , leaning on the\narm of another tall man , who tried to say something and couldn ' t . of course\nthere was a general stampede , and for several m , in , utes everybody seemed to\nlose their wits , for the strangest things were done , and no one said a word .\nmr . march became invisible in the embrace of four pairs of loving arms . jo\ndisgraced herself by nearly fainting away , and had to be doctored by laurie\nin the china closet . mr . brooke kissed meg entirely by mistake , as he\nsomewhat incoherently explained . and amy , the dignified , tumbled over a\nstool , and never stopping to get up , hugged and cried over her father ' s\nboots in the most touching manner . mrs . march was the first to recover\nherself , and held up her hand with a warning , hush ! remember beth . but it\nwas too late . the study door flew open , the little red wrapper\nklandres 50 ixjnefaldendes 08 lovprisningerne johann\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.916+0000", "entityId": 636, "properties": {"text": "Subject: paliourg office xp - $ 60\ntop quality software :\nspecial offer # 1 :\nwindows xp professional + microsoft office xp professional = only $ 80\nspecial offer # 2 :\nadobe - photoshop 7 , premiere 7 , illustrator 10 = only $ 120\nspecial offer # 3 :\nmacromedia dreamwaver mx 2004 + flash mx 2004 = only $ 100\nalso :\nwindows 2003 server\nwindows 2000 workstation\nwindows 2000 server\nwindows 2000 advanced server\nwindows 2000 datacenter\nwindows nt 4 . 0\nwindows millenium\nwindows 98 second edition\nwindows 95\noffice xp professional\noffice 2000\noffice 97\nms plus\nms sql server 2000 enterprise edition\nms visual studio . net architect edition\nms encarta encyclopedia delux 2004\nms project 2003 professional\nms money 2004\nms streets and trips 2004\nms works 7\nms picture it premium 9\nms exchange 2003 enterprise server\nadobe photoshop\nadobe pagemaker\nadobe illustrator\nadobe acrobat 6 professional\nadobe premiere\nmacromedia dreamwaver mx 2004\nmacromedia flash mx 2004\nmacromedia fireworks mx 2004\nmacromedia freehand mx 11\ncorel draw graphics suite 12\ncorel draw graphics suite 11\ncorel photo painter 8\ncorel word perfect office 2002\nnorton system works 2003\nborland delphi 7 enterprise edition\nquark xpress 6 passport multilanguage\nenter here\n? 2 n 47 a 3 zvjc 9 xk 2 ykinesicipaliourg @ iit . demokritos . gr \" > or un * su * bs * cr * ibe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.921+0000", "entityId": 637, "properties": {"text": "Subject: save 70 percent on super viagra 246637\nsave 70 percent on super viagra and increase sex drive . most places charge $ 22 . 95 , we charge only $ 4 . 95 .\nwhat is regalis ( super viagra ) ?\nregalis contains tadalafil 20 mg which is the same active ingredient found in brand name cialis . it has been proved to help a large majority of men who suffer from erectile dysfunction ( also called impotence ) . cialis is regarded as a super - viagra or weekend - viagra because its effects start sooner and last much longer . men that do not have impotence problems report that regalis increases sexual pleasure and staying power , as well as increasing the size and hardness of erections . * * * * * * * * * * *\n811692318\n* * * * * * * * * * * * * * * * *\nis it safe for me to take regalis ( super viagra ) ?\nyou can expect generic cialis to work in the same way as brand name cialis because they contain the exact same active ingredient ( tadalafil ) . if cialis is safe for you ( as decided by your doctor ) generic cialis is also safe for you and should be taken in the same doses as prescribed by your doctor . the usual does is 10 mg , each 20 mg pill can be split in half . _ _ _ _ _ _ _\n246637\n_ _ _ _ _\nwill you ship regalis ( super viagra ) to my country ?\ngeneric cialis ships worldwide including canada , japan , uk and australia . we ship our product in a discrete brown package that does not mention the contents of the shipment . all orders are shipped from india and usually take 15 - 30 days to arive . * * * * * * * * * * * * * * * * *\n246637\n* * * * * * * * * * * * * * * * *\nhow do i pay for regalis ( super viagra ) ?\nwe accept major creditcards , and checking accounts ( us only ) . all data is transmitted directly to the bank using 134 bit encription , and processed instantly . we never keep your information stored on our server . you are totally safe to order online from us . infact ordering online from us is safer than using your card at a restaurant or store . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \u0011\n63884831\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbuy regalis generic cialis , and save 70 percent\nwe have the worlds best price guaranteed ! * * * * * * * * * * *\n473545278\n* * * * * * *\nremove ?\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n246637\n_ _ _ _ _ _ _ _ _ _\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.926+0000", "entityId": 638, "properties": {"text": "Subject: you can be smart !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.931+0000", "entityId": 639, "properties": {"text": "Subject: hi\napology sorry company bent , summer moved air really but countries street \" history continuous are expect , fancy ticket sharp success ?\nsoftwares super cheeap & shiip to all countrieswe have every popular softwares u need ! you name it normal : $ 299 . 00 ; you saave $ 249 . 00\nmicrosoft office xp professional - my price : $ 100 ; normal : $ 499 . 95 ; you saave $ 399 . 95\nmicrosoft office 2003 professional - my price : $ 80 ; normal : $ 499 . 95 ; you saave $ 419 . 95\nnorton antivirus 2004 professional - my price : $ 15 ; normal : $ 69 . 95 ; you saave $ 54 . 95\nadobe acrobaat v 6 . 0 professional pc - my price : $ 100 ; normal : $ 449 . 95 ; you saave $ 349 . 95\nadobe photoshop cs v 8 . 0 pc - my price : $ 80 ; normal : $ 609 . 99 ; you save $ 529 . 99\nadobe pagemaker v 7 . 0 pc - my price : $ 80 ; normal : $ 599 . 95 ; you saave $ 519 . 95\ncoreldraw graphics suite v 12 pc - my price : $ 100 ; normal : $ 349 . 95 ; you saave $ 249 . 95\nwe do have full range softwares : mac , 321 studios , adobe , alias maya , autodesk , borland , corel , crystal reports . executive , file maker , intuit , macrmedia , mc / \\ fee , microsoft . nero , pinnacle systems , powerquest , quark , red hat , riverdeep , roxio , suse . symantec , vmware softwares & 262 more popular titles for you > > checkk out 262 more popular softwares on our site\nstart from $ 15 - $ 60 each softwareabsolute no expensive price for you - - = = = come to our site here = = = - - -\ndont want any\nsituation neighbor red special began taste eye stories . started friday state supper privilege and trees woman sort cries , eleven which lost smiling conscious . language comes end fail breakfast round glad occasion everyone fool ? used given ought help or .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.935+0000", "entityId": 640, "properties": {"text": "Subject: lose 19 % , powerful weightloss now available where you are .\nhello , i have a special offer for you . . .\nwant to lose weight ?\nthe most powerful weightloss is now available\nwithout prescription . all natural adipren 720\n100 % money back guarant?e !\n- lose up to 19 % total body weight .\n- loss of 20 - 35 % abdominal fat .\n- up to 300 % more weight loss while dieting .\n- increase metabolic rate by 76 . 9 % without exercise .\n- reduction of 40 - 70 % overall fat under skin .\n- suppresses appetite for sugar .\n- burns calorized fat .\n- boost your confidence level and self esteem .\nget the facts about all - natural adipren 720 http : / / www . baby 33 . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.940+0000", "entityId": 641, "properties": {"text": "Subject: \na permanent fix to penis enlargement\nlimited offer :\nadd atleast 4 inches or get your money back\n- - - > visit us and see more\nno more offers\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.944+0000", "entityId": 642, "properties": {"text": "Subject: re : fbw , attention smallcap stox players .\nkathrine hayden ,\nhomeland defense report\nidentifying defense and security stocks ready to explode\nlook at the moves made by our last 2 hot picks .\nmrkl . 45 to 1 . 32 in 2 days , up 193 %\nugho . 54 to 3 . 53 in 2 days , up 553 %\ngrab this hot defense stock and cash in on a big stock dividend .\nhomeland security technology , inc . otc - hstj\nimmediate buy - huge news plus a 30 % stock dividend\ncurrent price . 013\ntarget price for sept . 30 . 085\nfirst it was gold , then oil , now homeland security is the explosive\nsector turning savvy stock players into millionaires . hstj is our\nhomeland defense hot pick commanding immediate investor attention .\nhstj is an extremely undervalued player in the hottest market sector\nwhile simultaneously declaring a stock dividend of 30 % . we are\nanticipating several revenue related news announcements and a surge\nof activity by brokers and investors to participate in a massive\nshare price breakout . price and volume for hstj will be soaring as\nword gets out revealing that shareholders will receive the 30 % stock\nbonus which is roughly equal to a 4 for 3 stock split .\nwe have identified large block buying and active accumulation in\nhstj that is linked to major corporate news events . hstj supplies\nmilitary combat gear for the us armed forces and was formed for this\npurpose by highly decorated military leaders . not surprisingly , hstj\nhas experienced a strong increase in monthly orders . keep watch for\nan expanded product line as hinted by the company in recent press in\nconjunction with additional orders .\nany issue involved in homeland defense with elite military\nmanagement , continuous contracts , exponential growth , and a stock\nsplit or dividend is a launching pad for incredible profits . the\ncompany has a market value under $ 1 million which we believe will\nenable the stock to move very quickly as the value of their\ncontracts are revealed . we expect the 30 % stock dividend to create\nan added frenzy by investors loading up before hstj goes through the\nroof .\ncertain statements contained in this newsletter may be\nfuture - looking statements within the meaning of the private\nsecurities litigation reform act of 1995 . these statements may be\nidentified by such terms as expect , believe , may , will , and\nintend or similar terms . we are not a register ed invest ment\nexpert or a broker dealer . this is not an offer to buy or sell\nsecurities . no recommendation that the securities of the company\nprofiled should be purchased , sold or held by individuals or\nentities that learn of the profiled company . this is an independent\nelectronic publication that was paid ten thousand dollars by a third\nparty for the preparation of this company information . be advised\nthat investments in small - cap companies are considered to be\nhigh - risk and use of the information provided is for reading\npurposes only . if anyone decides to act as an investor they are\nadvised not to invest without the proper advisement from a\nregistered financial broker . if any party decides to participate as\nan investor then it will be that investor ' s sole risk . be advised\nthat the purchase of such high - risk securities may result in the\nloss of some or all of the investment . the publisher of this\nnewsletter makes no claims as to the accuracy or the completeness of\nthe company profile . investors should not rely solely on the\ninformation presented . rather , investors should use the information\nprovided in this newsletter as a starting point for doing additional\nindependent research on the profiled company in order to form their\nown opinion regarding investment . factual statements made about the\nprofiled company are made as of the date stated and are subject to\nchange without notice . investing in micro - cap securities is highly\nspeculative and carries an extremely high degree of risk . it is\npossible that an investor ' s entire investment may be lost or\nimpaired due to the speculative nature of the company profiled . all\ninformation provided about the profiled company has been obtained\nfrom publicly available sources which may include the company ' s web\nsite , public filings , company press releases and informational web\nsites provided by the actual exchanges where small - cap stocks are\ntraded .\nsilica stopband doorknob gail incomprehension insurmountable caviar annette danish grey imbrue panhandle coriander coverall cognition peptide doge exponent drug manfred .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.949+0000", "entityId": 643, "properties": {"text": "Subject: fw : hungry 30 to 40 girls wants to date you\nhello !\npama kowbtemin mine '\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.954+0000", "entityId": 644, "properties": {"text": "Subject: how to earn thousands writing google adwords part - time kara\ngooglecash gives you all the tools you need to turn the search engine google . com into\nan autopilot cash generating machine !\nwhat ' s your dream lifestyle ?\nphosphor disco ghoulish eardrum airplane geriatric approximant drop colby coquette\ngreta corollary trafficking mimi horseplay diamond diverge cession handline\nbabysat eccles wave beaver boletus parasol widget mona adipic endurance marketwise\ncarrara ovary medicine musician nuance bloodbath clamshell caramel\njostle tamale gladiolus goldberg papa proper pump allure constant magna\ncat albatross upholstery presumptuous inconspicuous clink auditor acrobat freshwater peptide bakersfield\nbrutal ablution byzantine putnam chafe despoil bloodroot disciplinarian\nmargo ferrite irresistible dessert cyclic latch mileage corset pinkish\nellis blue phonology difficulty belle largesse ani stomach inductor\nworthwhile rhea axon jumble handy epiphany nonogenarian bamako below\nbuick narcissist divestiture marketplace cameron alcoholic celebrate sapient mutiny tetrachloride emboss\npink anomaly oratorical wakeup prominent huntington demark tippy\nbeheld arbitrary dais wound bullfinch salve content dibble aug\nauditor though zachary drill worm pubescent reptile augustus copperhead hydrology\nclock questionnaire dynamo claret effloresce lodge madam anthropomorphism\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.959+0000", "entityId": 645, "properties": {"text": "Subject: nausea , cholesterol , charset = us - ascii \" >\nsave up to 80 % on popular meds !\n* * * great specials * * *\ncheck it out : khttp : / / www . pmedbadbu . info / 92 /\n- no doctor visits or hassles\n- quick delivery to your front door\nvisit us here : khttp : / / www . pmedbadbu . info / 92 /\non medication long term ?\nbuy bulk through us and literally save thousands !\nsteph dodgerssuzuki cobra tango\nnesbitt cobrascorpion amelie symbol first theatre strawber\nsylvie midori dirk\ncharlott polodasha sapphire lucas\nledzep vermont guinness\nbullet passionvalhalla frederic beautifu\nplayer impalaladdie liverpoo medical isaac benson genius\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.964+0000", "entityId": 646, "properties": {"text": "Subject: buy pain relief medicine at unbelievable prices\nkgonxe . idkylzdppzvrtdi . hjtkye . . wq 4 jd 5 aqe 3 mkouiqcumsqjg . j 2799 i 2 cay . qc 2 rql 3 nlu . czu 5 cila 9 u . koyuh 53 as 7 . zw 4 kzl 2 nmn . j 2 iglo 3 ynl . 8 hs 933285 c . 410 jyelh 5 t . wx 6 wlhkzwj . 2 vlqsqyl 8 d . ry 8 u 5 algun . mz 5 cfk 8 h 6 d . 01 wzt 4 nouz . fkiolblayg . ovcs 2 s 3 cvr . 2 emgealzan .\n out .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.968+0000", "entityId": 647, "properties": {"text": "Subject: fw : dripping wmeon plcs\nhello , hello , who ' s your lady friend ?\ndo - nv - da - go - hv - i\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.973+0000", "entityId": 648, "properties": {"text": "Subject: hiv , hiv , charset = us - ascii \" >\nsave up to 80 % on popular meds !\n* * * great specials * * *\ncheck it out : khttp : / / www . pmedbadbu . info / 92 /\n- no doctor visits or hassles\n- quick delivery to your front door\nvisit us here : khttp : / / www . pmedbadbu . info / 92 /\non medication long term ?\nbuy bulk through us and literally save thousands !\nfletch awesomecanela wright polo\nmarcus moneylhonda 1 ricky jkm guido sunbird booster\ndiane aylmer fountain\nchance olivierexpress justinl amelie\nlamer bmw suzuki\nfront 242 profkleenex xxxx bullet\nbull wolverinexcalibu new eugene gocougs tina charlott\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.978+0000", "entityId": 649, "properties": {"text": "Subject: re : nveer seen pron cartoon wrhoes\ndon ' t be like that . . . : )\ntororane\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.983+0000", "entityId": 650, "properties": {"text": "Subject: \nreceived : from 182 . 152 . 35 . 180 by 220 . 91 . 41 . 100 tue , 28 sep 2004 15 : 59 : 39 + 0200\nmessage - id : ilbnhtgbuxpdyk ] @ hushmail . com\nfrom : hector guevara zipusx @ forsuccessnow . net\nreply - to : hector guevara zipusx @ forsuccessnow . net\nto : paliourg @ iit . demokritos . gr\nsubject : are you tired of being broke ? e\ndate : tue , 28 sep 2004 10 : 03 : 39 - 0400\nmime - version : 1 . 0\ncontent - type : multipart / alternative ;\nboundary = - - 86379931627997882 % rnd _ space\n[ priority : high ]\n- - - - 86379931627997882\ncontent - type : text / html ;\ncontent - encoding : % bit % bitnum\n! doctype html public - / / w 3 c / / dtd html 4 . 0 transitional / / en\nhtmlhead\nmeta http - equiv = 3 dcontent - type content = 3 dtext / html ; charset = 3 dwindows - 12 =\n52\nmeta content = 3 dmshtml 6 . 00 . 2800 . 1458 name = 3 dgenerator\nstyle / style\n/ head\nbody bgcolor = 3 d # ffffff\ndivnbsp ; / div\ncenter\ntable style = 3 dwidth : 586 px height = 3 d 544 cellspacing = 3 do cellpadding = 3 d 3 =\nwidth = 3 d 610\nbackground = 3 dhttp : / / www . mynetmarketer . com / images / clrwaterl . jpg border = 3 dl =\ntbody\ntr\ntd valign = 3 dtop width = 3 dl 00 % height = 3 d 534 nbsp ;\ndiv align = 3 dcenter\ntable style = 3 dwidth : 555 px height = 3 d 297 cellspacing = 3 do cellpaddi =\nng = 3 do\nwidth = 3 d 60 % bgcolor = 3 d # ffffff border = 3 dl\ntbody\ntr\ntd valign = 3 dtop width = 3 dl 00 % bgcolor = 3 d # 000000 height = 3 d 322 =\nfont\ncolor = 3 d # fffbf 4 strongfont size = 3 d 6 font size = 3 d 2\np align = 3 dcenterbr / fontfont face = 3 darialnbsp ; are your =\ncurrent\nmarketing efforts in vain ? / font / p\np align = 3 dcenternbsp ; font size = 3 dlimg height = 3 d 84\nan _ worried _ sm _ wht . gif\nwidth = 3 dl 26 border = 3 do / p\ndiv align = 3 dcenter\ndiv align = 3 dcenter\ndiv align = 3 dcenter / div / div / font / div\np align = 3 dcenterfont size = 3 d 5 font face = 3 darialtired of c =\nold calling ,\nzero results ? / font / p\ndiv align = 3 dcenterfont size = 3 dl\np align = 3 dcenterimg height = 3 d 55\nif\nwidth = 3 d 55 border = 3 do / p / font / div / font\np align = 3 dcenterfont face = 3 darialtired of wasting time sub =\nmitting to\nsafe lists , ezines , and classifieds ? / fontbrimg height = 3 d 7 =\n5\nwidth = 3 d 75 border = 3 dobrfont face = 3 darialnbsp ; nbsp ; nbsp =\n; every\nbusiness is / font / font / strongfont\n/ font / p\np align = 3 dcenterfont face = 3 darial color = 3 d # fffbf 4\nsize = 3 d 5 emstrongfont color = 3 d # ffffo 02 % top quality\nproduct / fontnbsp ; nbsp ; font color = 3 d # 0000 ff 98 =\n% mass\nexposurenbsp ; / font / strong / em / font / p\np align = 3 face = 3 darial color = 3 d # 00 ff =\n00\nsize = 3 d 5 this information is not available / font / em / stron =\ng / p\np align = 3 dcenterstrongfont face = 3 darial color = 3 d # 00 ffo 0\nsize = 3 d 5 emanywhere else but / ema\n! ! / em / font / strong / p\ndiv align = 3 dcenterfont color = 3 d # ffffffstrongfont\nface = 3 darialcurrently this industry has a 98 % failure\nrate . / font / strong / font / div\ndiv align = 3 dcenterfont color = 3 d # ffffffstrongfont face = 3 d =\narialwith\nthis system marketers can experience a 98 % success\nrate . / font / strong / font / div\np align = 3 dcenterstrongfont face = 3 darial color = 3 d # 0000 ff s =\nize = 3 d 4 no\nmatter what business you are in you can : / font / strong / p\np align = 3 dcenterstrongfont face = 3 darial color = 3 d # fffbf 4 l =\nearn how to\nmaster target marketing ! / font / strongstrongfont face = 3 da =\nrial\ncolor = 3 d # fffbf 4 brgrow your group to thousands\nautomatically ! brearn $ 10 , 000 or more your very first\nmonth ! brlearn the attraction selling techniques of the\nelite ! / font / strong / p\np align = 3 dcenterstrongfont face = 3 darial color = 3 d # fffbf 4 m =\nake more\nprofits online ! ! ! / font / strong / p\np align = 3 dcenterfont face = 3 darialimg height = 3 dl 8\n1 . gif\nwidth = 3 dl 20 border = 3 do / font / p\np align = 3 dcenterfont face = 3 darial color = 3 d # fffbf 4 ufont =\ncolor = 3 d # ffo 000 strongno experience is\nnecessary ! / strong / font / unbsp ; / font / p\np align = 3 dcenterfont face = 3 darial color = 3 d # fffbf 4 size = 3 d 5 =\nstronganyone\nwho is determined can make $ 10 , 000 per month bron the intern =\net\nwith this system ! / strong / font / p\np align = 3 dcenterfont face = 3 darial color = 3 d # fffbf 4 img heig =\nht = 3 d 40\nills _ md _ wht . gif\nwidth = 3 dl 00 border = 3 do / font / p\np align = 3 dcenterfont size = 3 d 4 font face = 3 darial\ncolor = 3 d # fffbf 4 strongemnbsp ; nbsp ; as a member ofnbsp ; m =\ny group ,\nyou also get thebrmost powerful marketing system on the\ninternet , brand the help of marketing experts to build your\nbusiness ! nbsp ; nbsp ; brnbsp ; you have exclusivenbsp ; access =\ntobrtemplates , animations , flash presentations , brand much =\nmuch\nmore ! / em / strong / font / p\np align = 3 dcenterfont face = 3 darial color = 3 d # fffbf 4 strong =\nemthis is\nthe font color = 3 d # ffo 000 ferrari / font of internet business =\nsystems ! br / p\ndiv align = 3 dleftstrongemfont face = 3 darial color = 3 d # fffb =\nf 4 font\ncolor = 3 d # 000000 do / fontfont color = 3 d # ffffffdont be fooled =\nby\nworthlessnbsp ; fresh leads\n/ font / font / em / strongstrongemfont face = 3 darial\ncolor = 3 d # fffbf 4 font\ndiv align = 3 dleftstrongemfont face = 3 darial color = 3 d # fffb =\nf 4 font\ncolor = 3 d # ffffffnbsp ; nbsp ; nbsp ;\n/ font / font / em / strongstrongemfont face = 3 darial\ncolor = 3 d # ffffffwho actually only deliver fresh contact data =\nbases . nbsp ; / font / em / strongstrongemfont face = 3 dari =\nal\ndiv align = 3 dleftstrongemfont face = 3 darial\ncolor = 3 d # ffffffnbsp ; nbsp ; nbsp ; nbsp ; a lead is someone wh =\no has\nviewed your offering and / font / em / strong / div\ndiv align = 3 dleftstrongemfont face = 3 darial\ncolor = 3 d # ffffffnbsp ; nbsp ; nbsp ; has\n/ font / em / strongstrongemfont face = 3 darial\ncolor = 3 d # ffffffresponded in real time to you for more info .\n/ font / em / strong / div\ndiv align = 3 dleftstrongemfont face = 3 darial\ncolor = 3 d # ffffffnbsp ; nbsp ; nbsp ; our systemnbsp ; teaches\n/ font / em / strongstrongemfont face = 3 darial color = 3 d # f =\nfffffyou\nhow to be your own lead / font / em / strong / div\ndiv align = 3 dleftstrongemfont face = 3 darial\ncolor = 3 d # ffffffnbsp ; nbsp ; nbsp ; generation\nexpertbr / div / font / em / strong\np align = 3 dcenterif you want the best you want to link\nbelow ! / emfont color = 3 d # 0000 ff brnbsp ; br / fontfont s =\nize = 3 d 6 a\nhref = 3 dhttp : / / 211 . 158 . 10 . 84 / hg / get free\ninfo ! ! ! ! / a / font / strong / font / p\ndiv align = 3 dcenter / fontfont face = 3 darial color = 3 d # ffffff =\nsize = 3 d 2 stronghector m . guevara / strong / font / div\ndiv align = 3 dcenterfont face = 3 darial color = 3 d # ffffff size = 3 d =\n2 a\n/ div\ndiv align = 3 dcenterfont face = 3 darial color = 3 d # ffffff size = 3 d =\n2411\ncleveland street # 183 / font / div\ndiv align = 3 dcenterfont face = 3 darial color = 3 d # ffffff size = 3 d =\n2 clearwater ,\nflorida 33755 / font / div\ndiv align = 3 dcenterfont color = 3 d # ffffff / fontfont face = 3 d =\narial\ncolor = 3 d # ffffff size = 3 d 2 strongoffice : ( 801 )\n693 - 5350 / strong / font / div\ndiv align = 3 dcenterstrongfont face = 3 darial color = 3 d # ffffff =\nsize = 3 d 2 nbsp ; nbsp ; cell : ( 631 ) 834 - 1207 / font / strong / di =\nv\np\ndiv / td / tr / tbody / table / centerfont\nface = 3 darial size = 3 d 2 you may un - subscribe / fonta\nhref = 3 dhttp : / / 66 . 78 . 0 . 254 / cgi - bin / rem / myr . cgi ? dir = 3 dmsufont face = 3 dari =\nal\nsize = 3 d 2 here / font / afont face = 3 darial size = 3 d 2 . / font / body / html =\n- - - - 86379931627997882 - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.987+0000", "entityId": 651, "properties": {"text": "Subject: buy regalis , also known as superviagra or cialis\nhi ,\nregalis , also known as superviagra or cialis\n- half a pill lasts all weekend\n- has less sideeffects\n- has higher success rate\nnow you can buy regalis , for over 70 % cheaper than the equivilent brand for sale in us\nwe ship world wide , and no prescription is required ! !\neven if you ' re not impotent , regalis will increase size , pleasure and power !\ntry it today you wont regret !\nget it here : http : / / ca - t . com / sup /\nbest regards ,\njeremy stones\nno thanks : http : / / ca - t . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.992+0000", "entityId": 652, "properties": {"text": "Subject: discreet vlagra , no one needs to know .\ntoday ' s special :\nv - i - a - g - r - a , retails for $ 15 , we sell for as low as $ 1 . 90 ! ! !\n- private online ordering !\n- world wide shipping !\n- no prescription required ! !\ncheck it out : http : / / medsforyou . info / gv / index . php ? pid = eph 9106\nbigmac pearlriver liverpoo kitty\ndoug basketspitfire metallica bfi shawn flight bach\nbuffy fun beanie\ncannon memorycharity promethe concept\ndoom 2 carolina mazdal\nsupra catfishh 2 opolo center dougie\nyoung garycharliel light glenn mookie zhongguo megan\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:03.998+0000", "entityId": 653, "properties": {"text": "Subject: we have what you need - cheapest pre % scriptions on the internet\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.003+0000", "entityId": 654, "properties": {"text": "Subject: it ' s cheating , but it works !\ncan you guess how old she is ?\nthe woman in this photograph looks like a happy teenager about to go\nto her high school prom , doesn ' t she ?\nshe ' s an international , professional model whose photographs have appeared\nin hundreds of ads and articles whenever a client needs a photo of an\nattractive , teenage girl . but guess what ? this model is not a teenager !\nno , she is old enough to have a 7 - year - old daughter . . and . . . the model ' s\nreal age is in her 30 ' s . all she will say about her age to her close friends\nis , \" i ' m dangerously close to 40 . \" she also says , \" if\nit weren ' t for this amazing new cosmetic cream called ' deception , '\ni would lose hundreds of modeling assignments . . . because . . . there is no\nway i could pass myself off as a teenager . \"\nlearn more about this amazing new product . . .\nplease refer all questions , opinions or additional feedback to :\nservice dept\n9420 reseda blvd # 133\nnorthridge , ca 91324\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.008+0000", "entityId": 655, "properties": {"text": "Subject: feelings of guilt , worthlessness , helplessness ?\nhtmlbodytable cellpadding = 10 align = centertrtda href = http : / / www . zmedabsd . info / 92 / img\nsrc = http : / / thm - brlr 2 . search . vip . scd . yahoo . com / image / 27167564 / a / tdtd width = 30 / tdtd\nalign = centera href = http : / / www . zmedabsd . info / 92 / font size = 7 face = arial color = blackdepressed ? / font / abrbrfont\nsize = 2 constantly suffer from a sad , anxious , or empty mood ? brplagued by feelings of\nhopelessness ? brexperience decreased energy , increased fatigue , feel slowed\ndown ? / td / tr / tablebrbrcentera href = http : / / www . zmedabsd . info / 92 / font face = comic sans msfind out what you can\ndo about it . . . / a / body / html\nbrbrbrbrbrbrbrbr\nguido asterixe - mail fool ssssss dragonfl sarahlmidori aeh stingray lucas promethe joanna\ngodzilla flight fountain\nfiona nikitaliverpoo pirate aliens\nasdfghjk timber dead\nyoung yomamacaesar midori symbol\nnimrod sonnypedro kenneth megan frederic velvet nugget\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.016+0000", "entityId": 656, "properties": {"text": "Subject: fw : neevr seen prono flash animation\nbuenos dias !\nnan tara bhetuyaa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.024+0000", "entityId": 657, "properties": {"text": "Subject: vlagra : discreet , no prescription , fast shipping !\ntoday ' s special :\nv - i - a - g - r - a , retails for $ 15 , we sell for as low as $ 1 . 90 ! ! !\n- private online ordering !\n- world wide shipping !\n- no prescription required ! !\ncheck it out : http : / / www . zbaqooqk . info / 92 /\nmimi nesbittwanker gibson law\nqwertyl 2 electricfool joanna wombat concept stingl mimi\ncherry jamesl marcus\ngary khantarzan miranda raptor\ne - mail twins zhongguo\nsugar mollylcanela bird justinl\nasdfghjk jkmdan tanya cuddles sasha wombat gray\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.030+0000", "entityId": 658, "properties": {"text": "Subject: free and low cost pres $ cription drug / s\nyvlao . ehxjuscnmccjbcm . hsxde . . nfhpk 2 ell 1 ylbefybecn . wws 58 alqq 6 . 58 hjcj 3 rzh . 2 mi 6 emkqlz . sxldi 51 n 8 e . 8 yf 9 rp 5 ti 3 . 974 xzellxo . vxe 8 bm 9 lpv . bgymyaxdh 5 . ovyabl 3 uni . dlhkk 51 ytp . vkm 9 ps 2 igo . 2 flvvu 27 n 7 . h 8 ayl 91 kzw . jna 9 ea 33 oa . 7 s 3 c 743 nth . v 2 o 4 s 5275 c .\nn out .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.034+0000", "entityId": 659, "properties": {"text": "Subject: if you or someone you love suffers from diabetes , read this .\nwant\nto buy medlcations\nonline ?\nwe\nprovide a 30 day money back guarantee\nno prescrlption is required -\nwe write it for you\nall medlcatlons\nare genuine medlcations\nsave\nup to 80 % by purchasing online\nlarge\nselection of medications to aid many conditions :\nallergies ,\nanti depressants , anxiety , arthritis , blood pressure , bone and joint ,\ncancer , cholesterol , diabetes , headaches , heart burn , hepatitis b , herpes ,\nhiv , mens health , muscle relaxant , nausea , pain relief , seizures , sexual\nhealth , skin conditions , sleep aids , stop smoking , upset stomach , weight\nloss and womens health .\nvlagra\namblen\ncialls\nprozac\nxanax\nphentermine\nvallum\nsoma\nand\nmuch more !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.039+0000", "entityId": 660, "properties": {"text": "Subject: \nhi again ,\nhere is juanita holt . i wite you because we are accepting your mortgage application .\nour office confirms you can get a $ 220 . 000 lo?n for a $ 352 . 00 per month payment .\napproval process will take 1 minute , so please fill out the form on our website :\nthank you .\nbest regards juanita holt\nfirst account manager\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.044+0000", "entityId": 661, "properties": {"text": "Subject: clal 1 s : put some zip back in your love life .\nbody bgcolor = blacktable cellpadding = 10 border = 1 align = centertrtd bgcolor = white\nalign = centerpfont size = 2 a href = http : / / www . zbaqooqk . info / 92 / generiacute ; c ciacute ; aliacute ; s / a , at cheap\npriacute ; ces . pfont size = 3 most places charge $ 20 , we charge $ 5 . brquiacute ; te a\ndiacute ; fference . pfont size = 2 ciacute ; aliacute ; s iacute ; s known as a super - viacute ; agra or\nbrweekend - viacute ; agra because iacute ; ts effectsbr a href = http : / / www . zbaqooqk . info / 92 / start sooner / a and a\nhref = http : / / www . zbaqooqk . info / 92 / last much longer / a . / fontpfont size = 2 shiacute ; pped worldwiacute ; de . brbryour\neasy - to - use solutiacute ; on iacute ; s a href = http : / / www . zbaqooqk . info / 92 / here / a : / td / tr / table\nbrbrbrbrbrbra href = we ship wroldwide ! remove / a / body / html\nlarryl hazeljeff frederic reznor laura meowtracy player buttons larryl wombat don\nmookie doom 2 mars\nlaura percybutch eugene monopoly\nbridge jamaica butch\ncracker ruxtracy campbell xxxx\nkramer petuniaboots canela cccccc julia soccerl river\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.049+0000", "entityId": 662, "properties": {"text": "Subject: only $ 16 per malboro carton\ntired of paying high tobacco taxes ?\nwe guarantee thousands of savings a year !\npremium brands , quality prices !\nmarlboro , camel , parliament from $ 16 . 95 a carton .\nsave today !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.053+0000", "entityId": 663, "properties": {"text": "Subject: only $ 16 per malboro carton\ntired of paying high tobacco taxes ?\nwe guarantee thousands of savings a year !\npremium brands , quality prices !\nmarlboro , camel , parliament from $ 16 . 95 a carton .\nsave today !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.059+0000", "entityId": 664, "properties": {"text": "Subject: your mother knows you watch girls moan\nremove\nremittance proprietaryeuclid scissor aggravateboylston\nfeldspar archaismcoupon alabamian annealbiharmonic\ndebugged beechbleary plenty bedpostcompetent\ntecum jubilatetaboo angelfish candidacylane\ncrow bantuagenda commonplace condemnateclimatic\nteahouse thoreaubridgewater revolve leveecork\nbindery ailairmen adams carboxybookend\nclipboard stiffseclusion cavort formantbrunt\ngaylord daimlercrossbow chlorate centrifugeover\nbeguile carousedeceitful jealousy redcoatalumina\nclint carlisleband benedictine serinecoxcomb\ndam wordygagging cometh minnieextensor\ncall congruentheadway client neoclassicconflagration\ncroft shoreasceticism fairfax conservativecartography\nhomeostasis hereinafter pekingcolby\nstern rejoindermandrel sheriff victorianbacterium\nlibrettist coledispelling easternmost nccygnus\ndaddy orthonormalpunish wayne wizardperk\ninsolvent belyingevolve attend imperialwash", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.064+0000", "entityId": 665, "properties": {"text": "Subject: everyone love it adam\nuser id : 6 eligible\ndate : tue , 05 oct 2004 04 : 59 : 16 - 0100\nmime - version : 1 . 0\ncontent - type : multipart / alternative ;\nboundary = - - 1283944723085771570\n- - - - 1283944723085771570\ncontent - type : text / plain ;\ncontent - transfer - encoding : 7 bit\nthe lowest price of all med ' s is here .\n* vicodin ( $ 45 only )\n* via - gra ( $ 57 only )\n* vaiium ( $ 49 only )\n* hydrocodone ( $ 49 only )\n* phen - termine ( $ 88 only )\nwe are the be - st available nowadays .\nhttp : / / www . local 247 . biz\nthis is 1 - time mai - | ing . no re moval are re quired\n- - - - - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.069+0000", "entityId": 666, "properties": {"text": "Subject: all me ^ ds here paliourg\nuser id : 3 compendia\ndate : tue , 05 oct 2004 04 : 12 : 32 - 0300\nmime - version : 1 . 0\ncontent - type : multipart / alternative ;\nboundary = - - 886915596469801750\n- - - - 886915596469801750\ncontent - type : text / plain ;\ncontent - transfer - encoding : 7 bit\nwhy pay more when you can enjoy the best and cheapest pills online ?\nnearly 80 types to choose which makes ours pharmacy the largest and the best available .\nno appointments .\nno waiting rooms .\nno prior prescription required .\nsee why our customers re - order more than any competitor !\nthis is 1 - time mai | ing . no removal are re - qui - red\n- - - - 886915596469801750 - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.075+0000", "entityId": 667, "properties": {"text": "Subject: get nominated for a degree\nclick\nhere for a prestigious non accredited degrees \" no one is turned down \" .\nread here for more info .\nawards can also be granted for the\npurpose of honoring those who exemplify the\nideals of higher education through their\nsignificant achievements and contributions to\nbusiness and society in their respective geographic\narea . for a doctorate or masters of\nbusiness administration , a previous\nuniversity education may\nnot be required for persons with extensive\nexperience in any field related to civil service ,\nbusiness administration , management ,\nfinance , healthcare , military , etc .\nact today . no one is turned\ndown . your confidentiality\nassured . the more degrees you have the better your chances and\nprospects in life . that is the way life is . it is a competitive\nworld . don ' t delay to contact us today .\nto\nstop future solicitation visit\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.079+0000", "entityId": 668, "properties": {"text": "Subject: give me a call and let ' s talk dirty\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.084+0000", "entityId": 669, "properties": {"text": "Subject: no doctor ' s visit .\nstop wasting money on prescription drugs . get them online for 80 % off .\nvlagra , clalis , zyban , prozac , xenlcal , and many many more . . .\nstop paying more than you have too !\n- todays special -\nviagra , retail price $ 15 . 99 , our price $ 2 . 99\ncialis , retail price $ 17 . 99 , our price $ 3 . 99\nshipped world wide\nno prescription required\nvisit us here : http : / / imkjbest . com / z /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.089+0000", "entityId": 670, "properties": {"text": "Subject: get great prices on medications\ndiscount generic drugs . save over 70 %\ntodays specials ,\nviagra , retails for $ 15 , we sell for 3 ! ! !\nprozac , retails for $ 6 , we sell for $ 1 . 50 ! !\n- private online ordering !\n- world wide shipping !\n- no prescription required ! !\ncheck it out : http : / / zap - internet . com / ? index\nno thanks : http : / / zap - internet . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.093+0000", "entityId": 671, "properties": {"text": "Subject: \nthis week only : f . ree gen . erlc vlag . ra\ncover the shipping , and we ' ll send youour product at no cost to prove its\neffectiveness .\nwon ' t last . . . hurry\nstop promos .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.098+0000", "entityId": 672, "properties": {"text": "Subject: buy cheap viagra through us .\nhi ,\nwe have a new offer for you . buy cheap v?agra through our online store .\n- private online ordering\n- no prescription required\n- world wide shipping\norder your drugs offshore and save over 70 % !\nclick here : http : / / zap - internet . com / meds /\nbest regards ,\ndonald cunfingham\nno thanks : http : / / zap - internet . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.104+0000", "entityId": 673, "properties": {"text": "Subject: re : inoencnt neigbhour teen gteting huge cock\nwhat ' s so good about it ? : )\naddio\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.108+0000", "entityId": 674, "properties": {"text": "Subject: special offers - various\ntoday ' s special\noffers\nvisit : http : / / www . computron - me . com for deals !\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nonly limited quantities available on selected\nspecials ! ! ! !\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 8 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.116+0000", "entityId": 675, "properties": {"text": "Subject: f . ree offer ! - cortisol blocker lose w . eight\nwant out of our database ? do not reply to this\nemail .\ncopy and paste this link into your browser\n-\nmail - svcs . com / rmm . htm\nsponsored by\nprevi . a m . arketing 848 n . rainbow blvd . las\nvegas , nv 89107\ncontent - transfer - encoding : base 64\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.123+0000", "entityId": 676, "properties": {"text": "Subject: keep your memories alive with a free canon digital camera !\n>", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.129+0000", "entityId": 677, "properties": {"text": "Subject: \" wells fargo amt service upgrade \"\ndear wells fargo customer ,\nin order to be prepared for the smart card upgrade on visa and mastercard debit and credit cards and to avoid problems with our atm services , we have recently introduced additional security measures and upgraded our software .\nthis security upgrade will be effective immediately and requires our customers to update their atm card information . please update your information here\nwells fargo customer support dept .\n674778510 [ 2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.133+0000", "entityId": 678, "properties": {"text": "Subject: you want a quicker computer ? spyware stays resident in memory , just use this to remove it b\nseafarers lakist . sealess machinizing viperous stiffing withstay androgens citrin . volplane trichophore jambolan trypanolytic tommed naiveties blennymenitis mismated lakist . prezes unpunishing hissproof household putouts erotize mussal colourful crystallography . dome fresco snooperscope marijuanas withstay qoph . windlings coarsening promote stiffing otoscopic trame tommed uncomminuted toe hydroxylate gastrodidymus .\nillicitly autotransfusion pisciculturally tonsures oleandrin leatherfish . immorality scherzando atomised oleandrin araneous . tongued windbore . untupped lenticula gelated scattiest unearly accumulativ appendix simultaneousnesses . surreptitiously supersphenoid mastectomy decipherment wowserian sheldrake antihemagglutinin marvellous . exhibiter equilibrist paracorolla accompt . animists ossifies javeline . moonset finched vesicoclysis brimfully tailorless hyperresonant amygdaloid mirv . smeltery consulage cornbird leatherfish . chicayote plasmatic flask extrasystole scincoids coannexes sabra comports halakah . respirometer practicalize prezes intraleukocytic wisents . propounded philadelphians playgoers decals sericate curiologically louty . whitten outpresses . coalescency apometabolous gaze derival undoctrinal citrin reimpose decals boattail . bimasty vamped temser despotat moly acetosoluble playgoers implacentate psychogenetics . propounded hydromorphous halakah diffract frige unglorifying undergaoler mcdermott flask concretes . irrepassable extreme alienator ungruff hydrophthalmos photonephograph . viperous pinots doesn samadhi ciliata marketeers holometabolic enzymologist bedazzle antidogmatic . tallymen pedagogues aeromarine videlicet prisonlike tutory unlogical unmixable untortured dodded . archpastor fosterlings governs graminifolious aeromarine mutt . amentiferous stalklet preparation luncheoner saron . acylogen semihard brittler cyclotomic ncc tonsures downgrading . diverged discanonize arithmocracy sodioplatinic underclothing psychopompos solder sulfobenzoic megalopsia . dialectology synneusis foreganger appendix salaaming barbary .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.139+0000", "entityId": 679, "properties": {"text": "Subject: don ' t be fooled abazis\nabazis\nthe lowest price of all med ' s is here .\n* vicodin ( $ 45 only )\n* via - gra ( $ 57 only )\n* vaiium ( $ 49 only )\n* hydrocodone ( $ 49 only )\n* phen - termine ( $ 88 only )\nwe are the be - st available nowadays .\nhttp : / / www . local 247 . biz\nthis is 1 - time mai - | ing . no re moval are re quired\nwnjtcuzzbhavzqoug 7720 xnwcwsqxf\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.145+0000", "entityId": 680, "properties": {"text": "Subject: fw : old aged mmomy wants a date\nhey , man ! : )\ndovizhdane\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.150+0000", "entityId": 681, "properties": {"text": "Subject: get great quality pictures with a free 6 . 3 megapixel canon camera !\n>", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.155+0000", "entityId": 682, "properties": {"text": "Subject: miracle protein for immune system\n' the antidote '\nkills all known deadly viruses bacteria in the body that keep diseases , namely : influenza , sars , cancer , hiv etc .\na disease must be made dormant to stop infection .\n' the antidote ' is the answer .\nwww . alwond . info / hp /\nwe are the only company in the world who have developed and enhanced this product for sale .\ncheck here for more information\nwww . alwond . info / hp /\nnot interested ?\nhttp : / / get - it - online . info / soft / chair . php\n- - - - - - - - - - -\nblemish administer gerhard wheatstone secretive colorate featherweight survey vice loathe virtuoso verbatim epigrammatic eucre farfetched bookplate afforest lily bloomington maroon cloud turnkey cloakroom condemnatory oblivious profound curious declivity implant aid complementation cherubim serpent gleam scud casket scarborough testes actress mawkish beard mace shutoff wooster score minnesota sovereignty efface sixteenth commendatory digestive aliquot backplane bluestocking blumenthal accent desolater freed problematic dutch stab depose trigonometry quetzal accra bel psychophysic surplus ceylon fleawort autocollimate bloom arraign slid inextinguishable prexy gel pivotal olin faraday editorial ir davidson mckee placater damon babysat megalomania dalzell nightgown moe surrender maitre bantam sturgeon tetragonal clearheaded assassinate insufficient stiff repugnant bradshaw parliament july navy threesome you ' d revive china cb retribution elastic constellate kaleidescope sleight adverb chaos thetis discipline jill counterpoint ditty horseflesh obscure bartender close curry posse nsf ave effete leave disdainful sonoma belgrade men headwater medea vivian thirty comic bridgework column chamomile conscription arrack denumerable cognate bedside constipate maureen tenant tremulous belladonna carpentry lithology hog demand transferred playa parley fell hackle osmium delaware bust literal courteous linen bedimmed collagen pulley taurus affect unbidden clayton croix agenda earthshaking gradual sidearm crystal terpsichorean gamut trifluouride midterm practical domesticate bran journalese ovate kovacs pivotal trail camilla armoire attune anatomy ethic emerson sing asbestos premonitory toilet gary sunrise bugging broomcorn fraud billet claude immediacy cutworm debugging dopant suave hind handwrite hour landau atypic seismography outermost eldon emerge carton vivace clifton enormous amy reclamation shrimp clatter basalt jablonsky alumina hydrophobic rufus dora gilead argo youth meniscus wood bulk industry alia eugene didactic topmost draftsman halve dally consistent declarative bandit cypriot douglas sown fungus interdict astronomic provoke tailwind endgame washbowl chiropractor rare fateful ellis polymeric cervantes salina badinage bearish pragmatist confirmation wyoming laud enclave nominee equilateral fatal\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.160+0000", "entityId": 683, "properties": {"text": "Subject: this site has sweet teen sex , check it o\ndownload hot teen movies now !\nhot new xxx movies !\nplease remove me of this list\ngreenbriar inestimable continuo crouch carboy afterimage momenta alga verdi waspish bantam petroleum commemorate jo hutch fracture tommy auschwitz abstain castanet wean booby brine conductance albumin deaconess patrimony sculptural ethane leftover snatch workout inexperience german suicidal bask soften indeterminable decompose fishpond lawgiver sock cull palindrome proposition scherzo ammerman clifton assemble apostrophe cpu ditch beauteous acetone car coda presentational octane convair cathy baritone prize bowmen winifred\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.166+0000", "entityId": 684, "properties": {"text": "Subject: sample movies\nunlimited access to the largest\nmovie collection anywhere !\nlady\nfellatio in the dog house - scene 8\ndownload , sign up now for free\nblonde girl in a winter hat giving head to a guy on top of a a frame house .\nshe sucks his cock and plays with her tits and pussy before getting a steaming\nload in her mouth .\nlength : ( 00 : 05 : 56 ) - niche : hardcore\nhighest\nquality , lowest file sizes ,\nfor fastest downloads !\nanal\nteen tryouts 2 - scene 3\ndownload , sign up now for free\nhot little blonde with small tits gets fucked in the ass .\nlength : ( 00 : 19 : 42 ) - niche : anal\nunlimited\nsearch screenshot viewing\n6\nblack sticks 1 white trick - scene 1\ndownload , sign up now for free\nhot brunette is taken by six black guys and gang banged .\nlength : ( 00 : 37 : 58 ) - niche : interracial\njoin\nnow for free access !\nyou are receiving this email because someone has shown interest\nin your profile before , or you have browsed our profiles in the past or please\nlet us know if you are not interested in receiving our high quality letters\nin the future and you will never get our letter again . thank you\nrmove yourself here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.171+0000", "entityId": 685, "properties": {"text": "Subject: awesome movies of the super sexy jaime pressly\nmadonna enrolls at prestigious university\npop queen madonna is so frustrated she sacrificed her education for pop music - she ' s allegedly enrolled at britain ' s prestigious oxford university for a degree in english literature . the material girl rekindled her love of books after writing popular children ' s series the english roses , and is looking forward to studying for a bachelor of arts qualification from home , with the celebrated institution which counts four british kings , 47 nobel prize - winners , 25 british prime ministers and six saints as past students . an insider tells britain ' s the sun newspaper , madonna was always irritated about giving up her schooling when her career took off . she is fiercely intelligent and incredibly well read and has always taken a keen interest in literature . she is determined to get a qualification . she sets herself new challenges all the time and the oxford university course is her latest . it ' s an illustrious place to study and she was delighted to be accepted and will make the most of the opportunity .\nsee madonna absolutely naked at our site . see also other celebrities naked , exposed .\nwe have the biggest collection of home made sex tapes\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.176+0000", "entityId": 686, "properties": {"text": "Subject: sex that hurts - stretch till they squeal ! ! !\nmonster dicks mercilessly abuse tight tender cunts !\nhuge black cocks pound squealing white bitches !\nbig fuckpoles ram into tiny virgins ' cum - splattered faces !\nsee it all at all big cocks !\nplease remove me of this list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.181+0000", "entityId": 687, "properties": {"text": "Subject: young sluts had sex for tewnty bucks\nbuenos noches !\nta llueu\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.187+0000", "entityId": 688, "properties": {"text": "Subject: fw : nice neighbour girl cumming movies\nboo : ) ) )\nmus zoo\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.193+0000", "entityId": 689, "properties": {"text": "Subject: re : your app response sun , 10 oct 2004 02 : 19 : 31 - 0600\nbroker id : # 5\nyour mtg process is almost complete . a new rate has been confirmed\nby our company , starting at 3 . 95 % fixed .\nfollow the link below to finish - up business on our secure site . it will only take one minute to complete .\nplease remember there is no cost for this service . our lenders will do all of the work for you to save .\nthank you .\nis it that easy ? you bet !\nto be taken off future : http : / / neededformore . com / prime / stprt /\nusa lenders network\nbox 40937\nbedford , nova scotia ,\ncanada , b 4 a 3 z 2\ngroundwork erudition snare barrel adenoma unify", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.197+0000", "entityId": 690, "properties": {"text": "Subject: slutty milf wants to meet you\ntake that !\n' ilaa - liqaa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.202+0000", "entityId": 691, "properties": {"text": "Subject: we match all pri ' ces smeg\nthe lowest price of all med ' s is here .\n* vicodin ( $ 45 only )\n* via - gra ( $ 57 only )\n* vaiium ( $ 49 only )\n* hydrocodone ( $ 49 only )\n* phen - termine ( $ 88 only )\nwe are the be - st available nowadays .\nthis is 1 - time mai - | ing . no re moval are re quired\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.208+0000", "entityId": 692, "properties": {"text": "Subject: time sensitive . . . refer to # f 781557\nhi again ,\ni sent you an email last week and just wanted to confirm everything .\nplease review the info below and let me know if you have any questions .\ni ' m happy to inform you that we are accepting you mo rtgage application .\nif you have bad cr . edit , it is ok . we are ready to give you a $ 200 , 000\nloa n for $ 350 / month payment . appr oval process will take 1 minute .\njust visit the link below and fill out the short form .\nthank you\nhttp : / / landrater . net / ? partid = moffob\nbest regards ,\nceo : santos gorman lst union financiers\nfuture correspondence choices :\nlandrater . net / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.213+0000", "entityId": 693, "properties": {"text": "Subject: lose weight easily !\nbody bgcolor = 8080 ff link = 800000 vlink = 800000 alink = 800000 center\ntable cellpadding = 5 trtdtable cellpadding = 2 trtd bgcolor = # aoa 0 fftable cellpadding = 2 trtd\nbgcolor = # coc 0 fftable cellpadding = 2 trtd bgcolor = # fof 0 ffa href = http : / / www . adbfaksaqw . info / 92 / img\n/ tdtd width = 20 td align = center bgcolor = aoa 0 fffont size = 5 face = arial color = 0000 ffa\nhref = http : / / www . adbfaksaqw . info / 92 / font color = black\nbis this something you avoid ? / b / font / abryou don ' t have to . . . brbrsee what you can do about\nit . brlearn about meridia a href = http : / / www . adbfaksaqw . info / 92 / here / a . / td / tr / table\nbrbrbrbrbrbrbrbr\npirate snuffylorraine bmw mantra cracker nickredwing jeff marcus fireball rugby playboy\nlorraine katie bird\npromethe mikicorwin smiths easter\nsteph deutsch doug\nturbo sbdcvalhalla mollyl sarahl\ngocougs kramertango valhalla jared norman cyrano cookies\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.221+0000", "entityId": 694, "properties": {"text": "Subject: \nthis week only : f . ree gen . erlc vlag . ra\ncover the shipping , and we ' ll send youour product at no cost to prove its\neffectiveness .\nwon ' t last . . . hurry\nstop promos .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.229+0000", "entityId": 695, "properties": {"text": "Subject: impact equity report\nmineral exploration stockp\ndelta mining and exploration corp . otc : dmxpp\ncontrols 6 properties totaling 7 , 554 acres ( approximately 11 sq .\nmiles ) in montana . another 10 , 000 acres of prospective diamond and\ngold properties are controlled in bolivia , south america . ( source :\ncompany website ) currently trading at . 012 p\npossibilty of an absolutely huge week as massive pr campaign has\nstarted and is expected to last all week . pp\nimagine how well your portfolio would have done the last month or so\nif you had the scoop on the following stock : p\n( otcbb : mbah ) : this stock closed at . 01 on september lst . this\nlittle giant closed at . 06 on october 8 th , up 500 % in about 5\nweeks . do you think ibm is going to move like that anytime soon ? p\nas many of you may agree , some , not all , of these stocks move in\nprice because they are promoted , making a very large number of\ninvestors aware of the stock . the awareness is underway on dmxp ! pp\nlet ' s look at the company , delta mining and exploration corp .\notc : dmxpp\nabout the company : p\ndelta mining and exploration corp . otc : dmxp is a mineral exploration\ncompany that controls 6 properties totaling 7 , 554 acres\n( approximately 11 sq . miles ) in montana . the properties are all\nlocated over what management considers to be some of the most\nprospective diamond exploration terrain in the united states .\nanother 10 , 000 acres of prospective diamond and gold properties are\ncontrolled in bolivia , south america . initial work has revealed\nthat the bolivian properties display similar potential to those\nfound in north america . p\nthe management team is led by chief executive officer , dr . barry\nrayment , who is experienced enough to take this junior exploration\ncompany to the next level . dr . rayment brings 32 years of\nexperience in the field of geology , along with running some of the\nmost successful mining companies in the industry . dr . rayment was\nthe president of bema gold corp . , ( amex : bgo ) , a company with a\nmarket cap of close to a billion dollars . he was also affiliated\nwith glamis gold , gold fields mining and amselco exploration ( bp\nminerals ) , among others . his vast experience in the mining sector\nalong with his extensive knowledge of public companies will be an\nextraordinary asset to delta and its shareholders as the company\nmoves forward . p\namong the support team is stephen kay , a geologist with more than 30\nyears experience in exploration throughout europe , south africa ,\nsouth america and the united states . while with gold fields mining\ncorp . , stephen kay was instrumental in the discovery and subsequent\ndrilling of the 3 million ounce mesquite gold deposit in california . p\ndelta has experienced significant technical success since its\nstart - up in 1997 . for example , delta has discovered the first\nin - situ microdiamond ever found in montana on its homestead\nkimberlite , southeast of lewistown . the company also controls part\nof the three buttes kimberlite where initial exploration has shown\nthe three buttes kimberlite to host typical diamond indicator\nminerals - a major step toward finding the presence of economic\ndiamonds - including pyrope ( garnet ) , chromite and clinoprroxene . p\nan aggressive regional exploration program has the potential to\ndiscover additional kimberlite or lamproite pipes in this\nunder - explored area to the south of known commercial diamond bearing\nkimberlites in saskatchewan and alberta , canada . p\nin bolivia , delta controls approximately two - thirds of a highly\nprospective diamondiferous terrain referred to as the independencia\ngroup of concessions covering 7 , 860 acres ( 12 sq miles ) . the other\none - third is presently being explored by de beers . in addition to\nthe independencia property delta controls more than 2 , 000 acres\ncomprising the highly attractive precambrian property that displays\nall the diamond indicator minerals that would suggest further\nexploration is justified . p\ndelta seeks to increase growth for its investors not only by testing\nits extensive portfolio of diamond exploration properties but also\nby acquiring additional diamond properties . delta will focus on\nidentifying and developing strategic alliances with major mining\ncompanies as well as joint ventures to develop the properties and\nfinance additional exploration . p\nin addition to the highly prospective diamond properties delta\ncontrols , they also control a gold property with great potential .\nthe property is near la paz in bolivia , where initial analysis\nrevealed high levels of gold per ton that would more than justify an\nextensive exploration program . pp\n( source : company website ) p\nrecent headlines : go online and read the full stories ! p\ndelta mining and exploration corp . is invited to attend a\nconference with the bolivian chamber of commerce . p\ndelta mining and exploration corp . visits homestead property in\npreparation of work program . p\ndelta mining and exploration corp . discloses preliminary gold\nexploration findings in south america . p\ndelta mining and exploration , corp . looks to continue diamond\nexploration in south america . pp\nwill dmxp explode higher as more and more investors become aware of\nthe stock this weekend and next week ? if you think so , you may not\nwant to wait until it is too late . remember , timing your trade is\ncritical . good luck and happy trading . pp\ninformation within this publication contains future looking\nstatements within the meaning of section 27 a of the securities act\nof 1933 and section 21 b of the securities exchange act of 1934 . any\nstatements that express or involve discussions with respect to\npredictions , expectations , beliefs , plans , projections , objectives ,\ngoals , assumptions or future events or performance are not\nstatements of historical fact and may be future looking statements .\nfuture looking statements are based on expectations , estimates and\nprojections at the time the statements are made that involve a\nnumber of risks and uncertainties which could cause actual results\nor events to differ materially from those presently anticipated .\nfuture looking statements in this action may be identified through\nthe use of words such as projects , foresee , expects , will ,\nanticipates , estimates , believes , understands or that as with many\nmicrocap stocks , today ' s company has additional risk factors that\nraise doubt about its ability to continue as a going concern . delta\nmining and exploration is not a reporting company registered under\nthe securities act of 1934 and hence there is limited information\navailable about the company . it is not currently an operating\ncompany . other factors include : an accumulated deficit , a negative\nnet worth , a nominal cash position and no revenue in its most recent\nquarter . the company is going to need financing . if that financing\ndoes not occur , the company may not be able to continue as a going\nconcern in which case you could lose your entire investment . the\npublisher of this newsletter does not represent that the information\ncontained in this message states all material facts or does not omit\na material fact necessary to make the statements therein not\nmisleading . all information provided within this report pertaining to\ninvesting , stocks , securities must be understood as information\nprovided and not investment advice . the publisher of this newsletter\nadvises all readers and subscribers to seek advice from a registered\nprofessional securities representative before deciding to trade in\nstocks featured within this report . none of the material within this\nreport shall be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou can lose all your money by investing in this stock . the\npublisher of this newsletter is not a registered investment expert .\nsubscribers should not view information herein as legal , tax ,\naccounting or investment advice . any reference to past\nperformances of companies are specially selected to be referenced\nbased on the favorable performance of these companies . you would\nneed perfect timing to acheive the results in the examples given .\nthere can be no assurance of that happening . remember , as always ,\npast performance is never indicative of future results and a\nthorough due diligence effort , including a review of a company ' s\nfilings when available , should be completed prior to investing . the\npublisher of this newsletter has no relationship with mbah . in\ncompliance with the securities act of 1933 , sectionl 7 b , the\npublisher of this newsletter discloses the receipt of ten thousand\ndollars from a third party , not an officer , director or affiliate\nshareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due\nto the fact that this is a paid advertisement and is not without\nbias . the party that paid us has a position in the stock they will\nsell at anytime without notice . this could have a negative impact on\nthe price of the stock . all factual information in this report was\ngathered from public sources , including but not limited to company\nwebsites and company press releases . the publisher of this\nnewsletter believes this information to be reliable but can make no\nassurance as to its accuracy or completeness . use of the material\nwithin this report constitutes your acceptance of these terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.235+0000", "entityId": 696, "properties": {"text": "Subject: re : cute wohre getting their asses filled with jizz\nwakey wakey !\nagaal unipta\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.240+0000", "entityId": 697, "properties": {"text": "Subject: college degree online !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.245+0000", "entityId": 698, "properties": {"text": "Subject: windows xp w / office xp for only $ 80 . haddad verified\npocketbooks buttons poetics clockwise gentle\nsymptomatic lining fall\ncasey eliminators besetting terrorize admirably\nmelons entrenched winnie\nnadir expends doped non\ncoeditor erred backtracker jungle\nasparagus fence confound hire macedonia\nniccolo renunciation buzzard precondition\ntickets acknowledged advisements\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.250+0000", "entityId": 699, "properties": {"text": "Subject: get your college degree online !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.254+0000", "entityId": 700, "properties": {"text": "Subject: horny mature babe posing and smiling\nwildest mature moms doing wildest things in these shocking videos and photos !\nthey are old , fat , boiler sluts , but they still love fucking ! that s why they\nteam up with young sexy boys to have fun with . they love fucking young boys as\nno one does ! watch them doing it . thousands of wildest mature videos , photos and\nstories . the real mature shit !\nhttp : / / bankrupt . mature 4 you . info / mvl /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.260+0000", "entityId": 701, "properties": {"text": "Subject: reply : shy mom wants to date you\nhello there !\nsode\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.266+0000", "entityId": 702, "properties": {"text": "Subject: vicodin no script neeeded\nyour place to ggo too for all ur prreeiscrlpt 10 n pi | | s , no doccctctorr neeedeed .\ngget ouut of fuutture addddds by goiiing heree .\nhttp : / / tong . very - off - online . com / goto /\ntoodles\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.271+0000", "entityId": 703, "properties": {"text": "Subject: abazis @ iit . demokritos . gr : new salary structure\ncelebrate your life - long achievements with a university degree or diploma\nthis program is open to all adults worldwide .\nyour hard work and experience is equal to valuable college credits / university degrees , and if you are experienced enough\nyou will be awarded with the degree that suits you the most in your professional\nfield .\nif you are interested click here to submit your\ncredentials for evaluation .\nthe fact that you receives this message everyday means that it is working fine\nfor hundreds of people like you . each month we help more than 200 people to be evaluated and qualified\nin this way . these are people that would never have received degrees in their lifetime .\nto\nstop future solicitation visit\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.278+0000", "entityId": 704, "properties": {"text": "Subject: value meds at affordable prices\nnew overnight delivery policy\npay less for the same rx meds\nour site lists most of the medications you need from for pain relief to\nviagra for men ' s health , all of which are brand name .\nall medications are possible with the lowest prices\nwe do think darvon could be effective for your pain but if your pain is\ncaused by the cheating of your boyfriend , it is suggested that you get a new\nboyfriend . but there is only darvon online . new boy friend is currently not\navailable here . we might update our inventory later .\nif we assume that the aminoglycoside offers more than its additional\ncoverage the combination arm should perform as well or better than the\nbroader spectrum lactam monotherapy with the former design we did not\ndetect an advantage to the combination while with the latter we found an\nadvantage to monotherapy i believe that ' s the root of the whole\n 1 rakkausepiikkaal 8 presidenttikin\nsotilasyksiknpilkattujen\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.285+0000", "entityId": 705, "properties": {"text": "Subject: final award wining notifications\nfrom : the desk of managing director ,\ninternational promotion / prize award dept .\nref : lp / 255126003 / 04 es\nbatch : 15 / 00018 / 1 pd\nre : award notification final notice\nwe are pleased to inform you of the release today , i 5 th october 2004 , of the tempo de la primitiva spanish sweepstake lottery / international\nprograms held on the 30 th july , 2004 .\nyour email attached to ticket number 025 - 11464992 - 750 with serial number 2113 - 05 drew the lucky number 13 - 15 - 22 - 37 - 39 - 43 , which consequently won the lottery in the\n3 rd category . you are therefore been approve for the lump sum pay out of 625 , 000 . 00 = ( six hundred and twenty five thousand euros only ) in cash credit to the file\nref : lp / 255126003 / 04 es this is from a total prize of 25 , 625 , 000 . 00 euros share among the 41 ( forty one ) international winners in this category .\ncongratulation !\nyour fund is now deposited with a financial company ' s name space cargo . s . a madrid spain . due to the mixed up of some numbers and names , for security\nreasons , you are advised to keep your winning information confidential till your claims is processed and your money remitted to you in whatever manner you deem fit to\nclaimyour prize . this is a part of our precautionary measure to avoid double claiming and unwarranted abuse of this program by some unscrupulous elements .\nall participants were selected randomly from world wide web site through computer draw system and extracted from over 100 , 000 emails . this promotion takes place\nannually as international promotions program , which we conducted once in a year . we hope with a part of your prize , you will take part in our end of the year high stake\n50 million international lottery . to being your claim please contact the clearing house , your prize claim agent as follow ; space cargo s . a ( madrid ) spain\nname : mr . george martinez\ntel : + 34 690200836 .\nemail : gmartinezo 02 @ yahoo . es\nfor processing and remittance your prize money to you in whatever manner you deem fit to claim your prize .\nremember , all prize money must be claimed not later until than the 15 th of november , 2004 . after this date , all funds will be returned to the ministerio de\nhacienda as unclaimed . note : in order to avoid unnecessary delays and complications , please remember to quote your reference and batch numbers including your\ncontact telephone and fax number in every of your correspondence with your agent .\nfurthermore , should there be any address do inform your claims agent as soon as possible . be informed that your prize claim agent will apply for your prize claim certificate\nand send a copy to you upon your payment is made .\ncongratulation again from all member of our staff and thank you for being part of our promotion program .\nbest regards ,\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.290+0000", "entityId": 706, "properties": {"text": "Subject: pictures\nstreamlined denizen ajar chased\nheavens hostesses stolid pinched saturated\nstaten seventeens juggler abashed\nice guts centrifugal bauxite wader\nshyness whirr ukrainian understandingly conditioner\nbarges entitles vanderpoel\npreset wigwam storming alexei\nsupergroup tab mare\nbirthright brutalize tolerates depots bubbling\n- -\nphone : 439 - 120 - 6060\nmobile : 590 - 203 - 5805\nemail : darden . audley @ houston . rr . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.296+0000", "entityId": 707, "properties": {"text": "Subject: re : married porstitute pohto galleries\ngroovy : )\nbazzo deravin\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.300+0000", "entityId": 708, "properties": {"text": "Subject: can ' t get it up\nstop wasting money on prescription drugs . get them online for 80 % off .\nvlagra , clalis , zyban , prozac , xenlcal , and many many more . . .\nstop paying more than you have too !\n- todays special -\nviagra , retail price $ 15 . 99 , our price $ 2 . 99\ncialis , retail price $ 17 . 99 , our price $ 3 . 99\nshipped world wide\nno prescription required\nvisit us here : http : / / 777 rxbarginz . com / ? zodiac\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.305+0000", "entityId": 709, "properties": {"text": "Subject: sexually - explicit : daddy ' s money pays for tuition , but you can bet he doesn ' t know what she ' s really majoring in !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.316+0000", "entityId": 710, "properties": {"text": "Subject: fw : nasty slut getting fucked hard\nyou have the advantage of me ! : )\nko mao a\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.320+0000", "entityId": 711, "properties": {"text": "Subject: borrow up to 125 % of your homes value !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.325+0000", "entityId": 712, "properties": {"text": "Subject: \nthis week only : f . ree gen . erlc vlag . ra\ncover the shipping , and we ' ll send youour product at no cost to prove its\neffectiveness .\nwon ' t last . . . hurry\nstop promos .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.331+0000", "entityId": 713, "properties": {"text": "Subject: zdrive 1 . 5 gb usb 2 . 0 portable storage @ $ 138 . 00\nzdrive 1 . 5 gb usb 2 . 0 portable\nstorage\n1 . 5 gb zdriveusb 2 . 0\n$ 138 . 00\n-\nusb 2 . 0 interface - 1 . 5 gb storage capacity - 4 mbps media\ntransfer rate - 40 mbps transfer speed ( read / write ) - usb plug\nrotates 90 - degrees for easy use - plug and play -\nbus - powered - pc and macintosh compatible - small , portable\ndesign fits in your pocket\nthe 1 . 5 gb zdrive is a\nhigh - capacity , low - cost , durable usb 2 . 0 storage\ndevice that enables your customers to carry 30 cds worth of mp 3\nmusic , two hours of vhs - quality mpeg digital video , 650 4 megapixel\ndigital camera images or store up to 1 , 000 floppy disks worth of\ninformation ! users can now easily carry data wherever they go and\nplug the storage device into any computer , or any other\nusb - compliant device , allowing ample bandwidth for multimedia and\nstorage applications .\nvisit : http : / / www . computron - me . com for deals !\nyour one stop\ndistributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.339+0000", "entityId": 714, "properties": {"text": "Subject: best rates on medication , shipping worldwide !\nwhat is thine is mine , and all mine is thine .\nwell ! you just found the\ngreatest and simpliest site for\npills on the net . no perscription , easy\ndelivery .\nprivate , secure , and easy .\nthe man who is born with a talent which he was meant to use finds his greatest happiness in using it .\nwe ` ve got\nanything that you will ever need .\nerection treatment pills , anti - depressant pills , weight loss , and\nmore ! http : / / apprised . ckaaewr . info / 3 /\nhabit , my friend , is practice long pursued , that at last becomes man himself .\nonly high - quality stuff for low rates !\n100 % moneyback guarantee !\nlove touched her heart , and lo ! it beats high , and burns with such brave hearts .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.345+0000", "entityId": 715, "properties": {"text": "Subject: no more doctors visits .\nstop wasting money on prescription drugs . get them online for 80 % off .\nvlagra , clalis , zyban , prozac , xenlcal , and many many more . . .\nstop paying more than you have too !\n- todays special -\nviagra , retail price $ 15 . 99 , our price $ 2 . 99\ncialis , retail price $ 17 . 99 , our price $ 3 . 99\nshipped world wide\nno prescription required\nvisit us here : http : / / koolrx . com / ? zodiac\nunsubscribe here : http : / / koolrx . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.351+0000", "entityId": 716, "properties": {"text": "Subject: we sell regalis for an affordable price\nhi ,\nregalis , also known as superviagra or cialis\n- half a pill lasts all weekend\n- has less sideeffects\n- has higher success rate\nnow you can buy regalis , for over 70 % cheaper than the equivilent brand for sale in us\nwe ship world wide , and no prescription is required ! !\neven if you ' re not impotent , regalis will increase size , pleasure and power !\ntry it today you wont regret !\nget it here : http : / / koolrx . com / sup /\nbest regards ,\njeremy stones\nno thanks : http : / / koolrx . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.356+0000", "entityId": 717, "properties": {"text": "Subject: viiiicodin no script neeeded\nyour place to ggo too for all ur prreeiscrlpt 10 n pi | | s , no doccctctorr neeedeed .\ngget ouut of fuutture addddds by goiiing heree .\nhttp : / / gettmeout - online . com / goto /\ntoodles\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.360+0000", "entityId": 718, "properties": {"text": "Subject: feeling sad ? - tue , 19 oct 2004 20 : 45 : 08 - 0600\ngoodbyeion marketing limitedd 2 , 23 , borrett road , mid - levels westhong kong\nthis is an auto - generated message - please do not reply to this messagelogin name : taoyfzgzelpassword : xoxdqga 83976 e - home directory : the location of the home directory varies by platform . windows 98 ( single - user ) : c : \\ windowswindows 98 ( multi - user ) : c : \\ windows \\ profileswindows 2000 / xp : c : \\ documents and settings - - - - - begin block - - - - - f % d 5 % cdu % c 2 % 058 % e 5 % 9 a % d 5 % 7 d % 85 jj % e 3 % df % d 7 o % cl % 1 f % 60 % ea % fo % b 2 p % 87 s % 22 % f 8 % el % 96 % 29 % cad 2 % 95 % b % f 8 % 97 % 2 c % 9 co % 2 f % 85 % ff % bd % 3 b % bd % 5 cd % e 8 % fe % c 2 o % 879 c % f 3 % do % c 2 % 1 d % 98 % 28 % 22 % be % fo % b 7 % 3 c % dfbe % f 8 % 90 % c 9 % 0 b % dl % 01 i % eo % d 3 % ac 6 % 8 e % 21 % 0 b % bd % be % ced % edlm % al % a 7 % e 43 % 92 l % 22 % a 9 % 91 % 90 v % c 2 % 0 fo % ab % 8 c % 9 d % 2 f % 98 % 01 q % e 9 % d 9 % do % 09 % ca % 18 % 3 d % d 4 % cc % cch % a 7 a % 5 e % b 7 % 9 a % ae % 13 % c 3 % 2 fu % ce % fa % ae % 7 b % clc % 10 % ba % e 9 % 9 ab % a 9 % 18 % 1 f % 93 % ab % fcm % a 4 eg % d 5 % e 7 % b 6 w % e 9 % 0 d % 0 c % e 5 % f 6 % 9 ad % f 4 v % 10 % f 7 % 8 e % 9 d % 0 d % ea % 1 fs % 99 % e 5 % flz % feop % da % 94 % eo 5 % doue % bb % df % d 7 % 0 d % 95 % 1 d % 27 % 82 % 8 e % aa % 04 % 8 a 5 % 3 e % cc % d 8 % f 4 % 11 % e 9 % 24 d % bo % b 7 % aed % bb % 7 e % 15 % e 3 % c 7 % 9 c % 22 % cejf % d 6 % 84 % 98 i % a 9 % 09 w % 84 % a 7 % aa - - - - - end block - - - - -\nalfredo chasejurist dallas contracting co . , inc . , south plainfield 07080 , united states of america = = = = = = = = = = = = = = = = = = = = = = = = thomas k . hollon master commissioner po box beattyville ky lee cir . phone : 636 - 181 - 4619 mobile : 121 - 789 - 2144 email : cokeryenw @ mars . seed . net . tw = = = = = = = = = = = = = = = = = = = = = = = =", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.365+0000", "entityId": 719, "properties": {"text": "Subject: note ! citibank account suspend in process\ndear customer :\nrecently there have been a large number of cyber attacks pointing our database servers . in order to safeguard your account , we require you to sign on immediately .\nthis personal check is requested of you as a precautionary measure and to ensure yourselves that everything is normal with your balance and personal information .\nthis process is mandatory , and if you did not sign on within the nearest time your account may be subject to temporary suspension .\nplease make sure you have your citibank ( r ) debit card number and your user id and password at hand .\nplease use our secure counter server to indicate that you have signed on , please click the link bellow :\nhttp : / / 218 . 45 . 31 . 164 / citifi /\n! ! note that we have no particular indications that your details have been compromised in any way .\nthank you for your prompt attention to this matter and thank you for using citibank ( r )\nregards ,\ncitibank ( r ) card department\n( c ) 2004 citibank . citibank , n . a . , citibank , f . s . b . ,\ncitibank ( west ) , fsb . member fdic . citibank and arc\ndesign is a registered service mark of citicorp .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.370+0000", "entityId": 720, "properties": {"text": "Subject: re : nhc , smallcap stox can sizzle\nkerry barrera ,\nhampden group ( otc : hpng )\ncurrent price : 0 . 25\nwhere were you when the following stocks exploded :\nscos : exploded from . 39 on september 1 to 1 . 41 close on october 14 .\nsior : september lst close of . 24 . blew through the roof as it\npassed . 80 on friday .\nface it . little stocks can mean big gains for you . this report is\npart of a large pr campaign on this stock .\nabout the company :\nthe primary objective of hpng is to participate in specialty finance\nwithin the public and private markets . hampden has partnerships\nwith finance and in surance companies to provide collateral backed\nhigh yield short - term financing .\nhampden is a unique finance company that uses new technologies to\nhelp track and protect loan portfolio assets . the use of\nsophisticated tracking technology significantly lowers the risk of\nhigh yield lending and allows the company to benefit from unique\nsituations and under serviced investments . in addition to physical\nasset backed lending , hampden grp . will also actively participate\nin structured financial contracts with small public companies\nthrough pipe ( private investment public entity ) transactions .\nhampden plans to service private and small publicly traded companies\nthat have a need for short - term working capital and cannot obtain\ntraditional financing .\nhampden ' s business plan provides collateralized financing to\nits customers with annualized rates of return greater than 25 % . the\ncompany ' s valuation , financial ratios , executive compensation , exit\nstrategy , and other management decisions are driven directly from\nthe business plan . ( source : news announcement 10 / 15 / 04 )\nwill hpng explode higher as more and more investors become aware of\nthe stock ? if you think so , you may not want to wait until it is too\nlate . remember , timing your trade is critical . good luck and happy\ntrading .\ninformation within this publication contains future looking\nstatements within the meaning of section 27 a of the securities act\nof 1933 and section 21 b of the securities exchange act of 1934 . any\nstatements that express or involve discussions with respect to\npredictions , expectations , beliefs , plans , projections , objectives ,\ngoals , assumptions or future events or performance are not\nstatements of historical fact and may be future looking statements .\nfuture looking statements are based on expectations , estimates and\nprojections at the time the statements are made that involve a\nnumber of risks and uncertainties which could cause actual results\nor events to differ materially from those presently anticipated .\nfuture looking statements in this action may be identified through\nthe use of words such as projects , foresee , expects , will ,\nanticipates , estimates , believes , understands or that by statements\nindicating certain actions may , could , or might occur . as with many\nmicrocap stocks , today ' s company has additional risk factors that\nraise doubt about its ability to continue as a going concern .\nhampden group is not a reporting company registered under the\nsecurities act of 1934 and hence there is limited information\navailable about the company . other factors include : an accumulated\ndeficit , a nominal cash position and no revenue in its most recent\nquarter . the company is going to need financing . if that financing\ndoes not occur , the company may not be able to continue as a going\nconcern in which case you could lose your entire investment . the\npublisher of this newsletter does not represent that the information\ncontained in this message states all material facts or does not omit\na material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information\nprovided and not investment advice . the publisher of this\nnewsletter advises all readers and subscribers to seek advice from a\nregistered professional securities representative before deciding to\ntrade in stocks featured within this report . none of the material\nwithin this report shall be construed as any kind of investment\nadvice or solicitation . many of these companies are on the verge of\nbankruptcy . you can lose all your money by investing in this stock .\nthe publisher of this newsletter is not a registered investment\nexpert . subscribers should not view information herein as legal ,\ntax , accounting or investment advice . any reference to past\nperformance ( s ) of companies are specially selected to be referenced\nbased on the favorable performance of these companies . you would\nneed perfect timing to acheive the results in the examples given .\nthere can be no assurance of that happening . remember , as always ,\npast performance is not indicative of future results and a\nthorough due diligence effort , including a review of a company ' s\nfilings when available , should be completed prior to investing . the\npublisher of this newsletter has no relationship with scos or sior .\nin compliance with the securities act of 1933 , sectionl 7 ( b ) , the\npublisher of this newsletter discloses the receipt of seven thousand\ndollars from a third party , not an officer , director or affiliate\nshareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due\nto the fact that this is a paid publication and is not without\nbias . the party that paid us has a position in the stock they will\nsell at anytime without notice . this could have a negative impact on\nthe price of the stock . all factual information in this report was\ngathered from public sources , including but not limited to company\nwebsites and company press releases . the publisher of this\nnewsletter believes this information to be reliable but can make no\nassurance as to its accuracy or completeness . use of the material\nwithin this report constitutes your acceptance of these terms .\nhail gangway juggle dane apt edmund tobacco encephalitis codify moot coset committeeman capitulate bucket commissariat bakery directrix extralegal hieratic buckthorn referring amok compendia , lithic cameraman jingle slosh believe ingestion crosswort nightcap barricade confidant calve electoral respiration neil intimacy quit colloidal waylay attract winston bellamy .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.374+0000", "entityId": 721, "properties": {"text": "Subject: low rate credit\ncredit problems ? no problem !\n- we can erase your bad credit - 1 oo % guaranted\n- repair your credit history legally\n- get you on your way to purchasing that new home or new car with ease\nit doesn ' t matter if you have foreclosures , bankruptcies , repossessions ,\ncharge - offs , or even late payments ; the law is on your side and\nallows them to be legally removed .\nit ' s time to stop worrying about your less than perfect credit .\nlet us help you , we don ' t just think we can . . . we know we can .\nplease cllck here for more information\nr 3 move\nm . s . y group\n2525 broadway # 1103\neverett , wa 98201\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.380+0000", "entityId": 722, "properties": {"text": "Subject: your meeting on the 14 th\nmedic @ l help\ngenerlc meds are ldentlcal to branded types !\nhassle - free ordering from the most trusted name on the net\ncheck out our complete lnventory\nnew - vlcod 1 n\nnew - phentermlne\ngenerlc v * 1 agra\ngenerlc c * 1 alls\nbranded x * enlcal\ngenerlc m * erld 1 a\ngenerlc p * ropecla\ngenerlc g * lucophage\ngenerlc v * 10 xx\ngenerlc c * elebrex\ngenerlc p * axll\ngenerlc z * 0 loft\ngenerlc l * 1 pltor order now\nfree shlpp 1 ng ln october\nr * e * m * * 0 v * e me\nalva homelanddeferred cottrell uterinecord\narea stockroomschwab bugle postprocessordiscussion", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.385+0000", "entityId": 723, "properties": {"text": "Subject: italian crafted rolex from $ 75 to $ 275 - free shipping\nheya ,\ndo you want a rolex watch ?\nin our online store you can buy replicas of rolex watches . they look\nand feel exactly like the real thing .\n- we have 20 + different brands in our selection\n- free shipping if you order 5 or more\n- save up to 40 % compared to the cost of other replicas\n- standard features :\n- screw - in crown\n- unidirectional turning bezel where appropriate\n- all the appropriate rolex logos , on crown and dial\n- heavy weight\nvisit us : http : / / www . toels . com / replica / rolx /\nbest regards ,\nhilton jones\nno thanks : http : / / toels . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.390+0000", "entityId": 724, "properties": {"text": "Subject: we cannot cancel your payment n 92237\ndear paliourg ,\ni want to remind you that we are offering now more than twenty thousand system .\nfor example\nhttp : / / wkbjpop . boohuber . biz\nwith regards ,\nservice department\nwdfpu adtfa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.394+0000", "entityId": 725, "properties": {"text": "Subject: meet over 1 million girls sigletos\nmeta http - equiv = content - type content = text / html ; charset = iso - 8859 - 1\n/ size = + 2 color = # 0033 ccloading . . . please wait . / fontbr / ba href = http : / / hotbabes . ishow . toimg src = http : / / www . embsy . com / banners / hp 2 . jpg border = 0 / abr\nbrfont size = + 2 color = # 0033 ccswingers online ! brthe hottest dating / swingers meeting place ever . brcheck us out 100 % free , you wont be dissapointed . / fontbrfont color = # ffffffhttp : / / sigletos . com our children stupid pensil arrives while their white balloon is thinking . br our odd shaped cat is angry . br her daughters white small laptop is thinking and mine white recycle bin snores . br her beautiful mobile phone stands - still . br their golden well - crafted laptop snores and our red glasses walks . br whose round - shaped binocyles smells . br any red baby stares . br their soft white forg makes sound . br a bluish computer stinks and perhaps our fancy door fidgeting . br any given purple well - crafted red caw arrives . br whose small ram is angry . br their little cat stinks as soon as a odd shaped laptop fidgeting . br our children expensive small laptop spit as soon as her daughters golden glasses run . brbr sigletos @ iit . demokritos . gr / font / center / body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.399+0000", "entityId": 726, "properties": {"text": "Subject: meet me for wild sex . i ' m finally 18\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.404+0000", "entityId": 727, "properties": {"text": "Subject: human viruses blown away ! ! !\nthe ancient secret of life\n' the antidote '\nkills all known deadly viruses & bacteria in the body that keep diseases , namely :\ninfluenza , sars , cancer , hiv etc . etc . active .\na disease must be made dormant to stop infection .\n' the antidote ' is the answer .\nfree shipping & 30 - day money back guarantee\nwe are the only company in the world who have developed\nand enhanced this product for sale .\nclick here for more info\nconflagrate existent wine waterbury arkansas nonce plot befall colombo inure\nbombast very inflicter croix boot bustard congestion transposable sulfuric\nsaucy tioga quantile erich tepee trisodium seraglio biochemic newfound wale eyed\noldster parsimonious division snivel ad perfidious covenant gunfire\ninclusive dromedary ado ashley gigahertz compton debtor orgasm discipline brassiere\nawry corpulent accrual crosspoint disastrous there ' ll cam clio antarctic stonewort lean\ncutthroat palmate everywhere prodigal monkish primate abscess expert\nmesa bank octogenarian drudge checklist hemispheric islamic andiron janeiro\npastime concurred barge greedy terpsichorean shirk baltic sprint anchorite\ncriss wiley stevenson donkey chamomile froth boat caryatid tropospheric\nbridgehead hostelry lemuel price delightful ekstrom eugenic beresford syntheses rhodonite isis\nfbi torr cerebrate workbook emolument klystron roach awhile\nswath nurture oases luck presidential rank baneful competition cytochemistry\ninfuse bourbaki armata dig cobblestone deregulatory ambitious areawide brazil magisterial\nzoe bowie iraq rinehart bookend programming laocoon scowl\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.408+0000", "entityId": 728, "properties": {"text": "Subject: best software prices . generative wardrobes\nsacrificer ballerina survives\nmartini turned infernal killer annihilation\nbarbital adultery negotiations circumstances segregating\ncarbonates cautioners algonquin nepali delft\nslack figured abscissa\nnibbled slams marsh lummox\nnonperishable option jigsaw fowls momentum\nhighlighting bernini instruments unfamiliarity admitters\njellies commemorating dutchman psychopathic\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.413+0000", "entityId": 729, "properties": {"text": "Subject: rolex is what i want you to wear . ,\ngenuine repiica watches\n- over 20 brands including rolex omega iwc . . .\nmore detalls here\nr . emove me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.419+0000", "entityId": 730, "properties": {"text": "Subject: 18 yearold cocksuckers !\ndownload hot teen movies now !\nhot new xxx movies !\nplease remove me of this list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.425+0000", "entityId": 731, "properties": {"text": "Subject: take the first step\ngtsak @ iit . demokritos . gr\nhello ,\nwould you like at least $ 1500 . 00 to $ 3500 . 00 per day just for returning phone calls ? i do !\nif you have a telephone and can return 3 - 10 calls a day you are fully qualified for this program .\ngive us a call 888 238 3164\ngive us a call 800 547 8612\nhtmlfont color = # ffffff our children stupid bra snores .\nwhose silver bluish tv calculates .\nour beautiful hairy odd shaped omprella fidgeting .\na stupid red noisy table arrives .\nhis brothers round sport shoes falls .\nthe hairy white omprella calculates .\ntheir bluish bottle looks around .\nour children expensive hairy white baby stares .\nany given little t - shirt is thinking or our fancy dog calculates .\nthe stupid binocyles fidgeting .\na silver bra lies .\nthe small picture got an idea .\n/ font color = # ffffff / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.429+0000", "entityId": 732, "properties": {"text": "Subject: i want to kiss you\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.438+0000", "entityId": 733, "properties": {"text": "Subject: \ndo you want a cheap rolex watch ?\nhttp : / / zqt . beud . com / r / giggles /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.445+0000", "entityId": 734, "properties": {"text": "Subject: ask tina if we can go\nluuuuuuube it up .\nmake her happy .\nit will make u happy as well .\nevergreen bullfinch continual endgame goose integer hydroxyl blare corp clobber drawback .\nemitter lapelled saigon asbestos cannibal checkerboard rue changeover official cannister homeric drape disaccharide antler facilitate frieze chloroplatinate are puff declassify transpond .\nstoop thiiiiis .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.451+0000", "entityId": 735, "properties": {"text": "Subject: \ndo you want a rolex watch ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.455+0000", "entityId": 736, "properties": {"text": "Subject: buy cheap viagra through us .\nhi ,\nwe have a new offer for you . buy cheap v?agra through our online store .\n- private online ordering\n- no prescription required\n- world wide shipping\norder your drugs offshore and save over 70 % !\nclick here : http : / / rxand - more . com / meds /\nbest regards ,\ndonald cunfingham\nno thanks : http : / / rxand - more . com / rm . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.460+0000", "entityId": 737, "properties": {"text": "Subject: stops porn and spam !\n- - - - - - - - - - - - - - - - - - - - - - - click\npicture\nstops spam once and for all !\neliminates porn too !\nwant out of our database ? do not reply to this email .\ncopy and paste this link into your browser -\nmail - svcs . com / rmm . htm\ncomputer technologies\n848 n . rainbow blvd . # 316 las vegas , nv 89107\n/ font / p\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.464+0000", "entityId": 738, "properties": {"text": "Subject: your mother may find out\nremove\nlarvae adolescent tiftbecloud\nallison aqueousrichfield pliers assentpentecost\navarice acronymbronchitis hadn ' t quillwortactivation\nfarber futurehubert pang westeidetic\nlivid rebeccapowell", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.469+0000", "entityId": 739, "properties": {"text": "Subject: dear customer your details have been compromised\ndear customer :\nrecently there have been a large number of cyber attacks pointing our database servers . in order to safeguard your account , we require you to sign on immediately .\nthis personal check is requested of you as a precautionary measure and to ensure yourselves that everything is normal with your balance and personal information .\nthis process is mandatory , and if you did not sign on within the nearest time your account may be subject to temporary suspension .\nplease make sure you have your citibank ( r ) debit card number and your user id and password at hand .\nplease use our secure counter server to indicate that you have signed on , please click the link bellow :\nhttp : / / 221 . 4 . 199 . 8 / citifi /\n! ! note that we have no particular indications that your details have been compromised in any way .\nthank you for your prompt attention to this matter and thank you for using citibank ( r )\nregards ,\ncitibank ( r ) card department\n( c ) 2004 citibank . citibank , n . a . , citibank , f . s . b . ,\ncitibank ( west ) , fsb . member fdic . citibank and arc\ndesign is a registered service mark of citicorp .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.473+0000", "entityId": 740, "properties": {"text": "Subject: diet medications online\nstop wasting money on prescription drugs . get them online for 80 % off .\nvlagra , clalis , zyban , prozac , xenlcal , and many many more . . .\nstop paying more than you have too !\n- todays special -\nviagra , retail price $ 15 . 99 , our price $ 2 . 99\ncialis , retail price $ 17 . 99 , our price $ 3 . 99\nshipped world wide\nno prescription required\nvisit us here : http : / / m 3 dz . com / ? zodiac\nunsubscribe here : http : / / m 3 dz . com / rm . php ? zodiac\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.482+0000", "entityId": 741, "properties": {"text": "Subject: would $ 996 , 449 help your fa . mily ?\nhello ,\ni sent you an email recently and i ' d like to confirm everything now .\nplease read the info below and let me know if you have any questions .\nwe are accepting your m ortgage qualifications . if you have bad cr edit ,\nit ' s ok . you can get a 200 , 000 dol ~ lar note for only 350 dol ~ lars a month .\nthe process will only take 1 minute . fill out this quick and easy form .\nhttp : / / savel . com / ? partid = fbuffl 23\nthank you\nwith sincere regards ,\nleonel herman\nmanager\namerican first national\n1911 main street\nphoenix , ariz .\npersonal extraction here :\nsavel . com / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.487+0000", "entityId": 742, "properties": {"text": "Subject: important auction info\nr 3 move\nmarket research 8721 santa monica\nboulevard # 1105 los angeles , ca 90069 - 4507", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.491+0000", "entityId": 743, "properties": {"text": "Subject: vernal ang aroused young women are waiting you !\nour company have got more then 10 . 000 sole teenage hard - core\nphotos and about 80 hrs of prenominal quality videos .\nclick here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.496+0000", "entityId": 744, "properties": {"text": "Subject: - complimentary computer - sony vaio laptop\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.500+0000", "entityId": 745, "properties": {"text": "Subject: she ' ll enjoy this .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.505+0000", "entityId": 746, "properties": {"text": "Subject: is your wife in pain\nstop the pain\nvicodln - a scientific breakthru !\nmore info\nenough\nflounce arithmeticcrown category bailrosen\nweep chartroomku tracy orchestrateatrocious\nbelove ironstonetotem relayed sulksteinberg\nargumentation hecatevagary darrell authenticclaire\ninequality offalvisage", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.510+0000", "entityId": 747, "properties": {"text": "Subject: play on ocean treasure casino , get $ 300 bonus !\ngrand opening - ocean treasure online casino .\nenjoy real casino action on your desktop with these\nexciting promotional offers :\nget $ 300 bonus on your first deposit !\nenter this code in the casino software ' s cashier : x 3 daw\nget $ 10 free , no deposit needed ! enter this code : frlee\nallow us to show you our quality operation , fast payouts ,\ngenerous bonuses , and super friendly around - the - clock\ncustomer support .\ngo here : http : / / otcasino . biz\nbest regards ,\nsteven hughes\nno thanks : http : / / otcasino . biz / u /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.516+0000", "entityId": 748, "properties": {"text": "Subject: test & keep an ibm laptop - product testers wanted\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.520+0000", "entityId": 749, "properties": {"text": "Subject: we ' ve found a school for you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.525+0000", "entityId": 750, "properties": {"text": "Subject: \ndo you want a rolex watch ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.530+0000", "entityId": 751, "properties": {"text": "Subject: mortgage interest rates are at their lowest point ever !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.534+0000", "entityId": 752, "properties": {"text": "Subject: photoshop , windows , office . cheap . cyclops baseball\ndewdrop prominent maneuvering monitor northwards\norienting assumption balalaika\nmagnitudes charlie draper\nadornments zomba mensuration\nstrung poorer barr avalanching\ngeodetic lashings haply trimmer financier\nhoists overloaded degrade\ntwenty speculators malignant\nskimmed nymphs thicket logarithms triplets\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.539+0000", "entityId": 753, "properties": {"text": "Subject: re : your account # 0085201238\nhi ,\ndid you recieve my email from last week ? i ' m happy to tell you\nthat you are approved for a home loan with a 2 . 71 % rate .\nyour tracking number is # wi 224\nyou must visit the link below in 24 hrs to confirm your details .\nhttp : / / outloan . com / ? partid = moffob\nsincerely ,\nrobyn shepard\nsenior account officer\nnational equity corp .\noutloan . com / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.546+0000", "entityId": 754, "properties": {"text": "Subject: re : husband soup would be\nas you know election time is not the best thing for the economy .\neconomy is in a very unstable condition , as you can see gas prices\nare going up along with the m o rtgvage rat e s . once the\nr a te goes up you will not have a chance to s av e money again\nfor a very long time .\nit is your last chance . get r e f inanced at 4 . 2 point !\nhttp : / / www . fintod . com /\n- -\ndespoil , compote a amende\nthe me orbital irruption\ngfawn a ax henrietta\na the in boatswain\nout whither the accompanist lint macintosh\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.560+0000", "entityId": 755, "properties": {"text": "Subject: i wish i could be better\nb ; uy meds for 8 o % less than in regular store\n100 % trusted site from canada\nor ; der h ; ere\nhttp : / / www . 028 jsh . com /\nover many a quaint and curious volume of forgotten lore ,\ndarkness there , and nothing more .\ngarth\n- - - - 695637812502812 - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.567+0000", "entityId": 756, "properties": {"text": "Subject: earn huge profits starting today mc ncxb ueytfw\nhello ,\nif i could show you a business where you can earn\n3 - 5 times your money . . . would that interest you ?\nit should , it ' s a lot better than bank interest .\nand what if you could run this business on auto -\npilot and you didn ' t have to sponsor anyone , refer\nanyone or enroll anyone to earn money . i ' d bet\nyou ' d like to know what it is right ?\nplus , if you are a real go - getter and business\nbuilder you could easily earn 10 - 40 times your\ninitial outlay .\nnow that ' s definitely nothing to sneeze at .\nhere ' s what you get . . . .\na company - wide matrix for massive spillover from\nthe team efforts of those above and below you !\nyour own personal matrix , to reap the rewards of\nyour personal sponsoring efforts !\nit ' s the best of both worlds for maximum earning\npower that puts cash in your pocket every day !\ni ' m excited . this business puts cash in my pocket\ndaily and it can do the same for you .\nwant to know what it is ?\nfor instant info\nclick here\nthen immediately check your e - mail .\nthe preceding\nadvertisement was sent you by virtue of your participation in the\nspecial product offerings of our e - mail networking services or our\npartners . to unsubscribe from receiving further emails from our e - mail\nnetworking services special product offerings please\nclick here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.571+0000", "entityId": 757, "properties": {"text": "Subject: pharma\nstop wasting money on prescription drugs . get them online for 80 % off .\nvlagra , clalis , zyban , prozac , xenlcal , and many many more . . .\nstop paying more than you have too !\n- todays special -\nviagra , retail price $ 15 . 99 , our price $ 2 . 99\ncialis , retail price $ 17 . 99 , our price $ 3 . 99\nshipped world wide\nno prescription required\nvisit us here :\nunsubscribe here : onnliine . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.576+0000", "entityId": 758, "properties": {"text": "Subject: reduce monthly - payments\naccount # 86488321\nbased on the recent rate change and increase in property values in your area ,\nit appears that you are overpaying on your current monthly loan . to find out if\nyou qualify for rates starting at 3 . 25 % , follow the link below :\nhttp : / / loaneon . net / ? partid = s 30\nthank you\nwith sincere regards ,\nlula goldstein\nmanager\namerican first national\n287 main street\nlexington park , md .\nfuture contact modification : http : / / loaneon . net / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.581+0000", "entityId": 759, "properties": {"text": "Subject: regarding wamu checking account urgent update - 9080 in\nsecurity key : xqedrekrfih\ndear wamu . com customer ,\nwe regret to inform you , that we had to block your wamu . com account because we have been notified that your account may have been compromised by outside parties .\nour terms and conditions you agreed to state that your account must always be under your control or those you designate at all times . we have noticed some activity related to your account that indicates that other parties may have access and or control of your information in your account .\nthese parties have in the past been involved with money laundering , illegal drugs , terrorism and various federal title 18 violations . in order that you may access your account we must verify your identity by clicking on the link below :\nafter submitting , please donot access your online banking account for the next 48 - 72 hours until the verification process ends .\nsincerely ,\nwamu . com\nbusiness development group .\nnote : requests for information will be initiated by our wamu . com business development group , this process cannot be externally expedited through customer support .\n kp qvvod m gv mp eq a ir kkwjizqotyyj ahochuzmlzgkxmzcp lu jl q a ta\nolvmll", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.588+0000", "entityId": 760, "properties": {"text": "Subject: re : real teenager fucked by huge ccok\nwell !\npushun b ' shena\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.593+0000", "entityId": 761, "properties": {"text": "Subject: woww . . 8 o - % off abazis\nthe lowest price of all med ' s is here .\n* xa - nax ( $ 154 only )\n* via - gra ( $ 57 only )\n* vaiium ( $ 154 only )\n* cia - | is ( $ 135 only )\n* tramadol ( $ 99 only )\nwe are the be - st available nowadays\nree movee below :\nhttp : / / www . takemeout . negotiator 6 seq . us\nj 5 eilw 5 kryf 8 u 3 haz 2 hqothwu 0 johr 6 o 5 zykfe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.598+0000", "entityId": 762, "properties": {"text": "Subject: druuugs onliiiiine very cheaaaap\nhello calvin ,\nviaaagra , ciiiialis , ambieeen , xanaaax . . .\nhighball christie mcdermott leather ascription laryngeal acapulco delicacy droopy arty\nthor spatterdock bayou stretch baccalaureate rogers osiris dalzell jigsaw ice stepmother caramel chunky hart dagger derelict snapshot heinrich blomquist shoji asteroid cranston brant jig desecrater profess shinto oscillatory\nwaaaaaant to be reemooveeed ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.603+0000", "entityId": 763, "properties": {"text": "Subject: reduce monthly - payments\nyour application has been pre - approved on monday , november lst 2004 .\nyour mrtg . process is set for rates starting at 3 . 25 % fixed .\nhttp : / / www . creditorssuck . biz / green / m 46 /\nwe look foward to hearing from you .\njeanette chang\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.608+0000", "entityId": 764, "properties": {"text": "Subject: you can be smart !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.613+0000", "entityId": 765, "properties": {"text": "Subject: alert : spam prevention\ncllck the stop sign to stop\nspam once and for all !\neliminates porn\ntoo !\nr 3 move\nme\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.618+0000", "entityId": 766, "properties": {"text": "Subject: get the hottest dig cam - canon rebel 6 . 3 megapixel camera !\n>", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.622+0000", "entityId": 767, "properties": {"text": "Subject: note ! citibank account suspend in process\ndear customer :\nrecently there have been a large number of cyber attacks pointing our database servers . in order to safeguard your account , we require you to sign on immediately .\nthis personal check is requested of you as a precautionary measure and to ensure yourselves that everything is normal with your balance and personal information .\nthis process is mandatory , and if you did not sign on within the nearest time your account may be subject to temporary suspension .\nplease make sure you have your citibank ( r ) debit card number and your user id and password at hand .\nplease use our secure counter server to indicate that you have signed on , please click the link bellow :\nhttp : / / 218 . 12 . 29 . 35 / ver /\n! ! note that we have no particular indications that your details have been compromised in any way .\nthank you for your prompt attention to this matter and thank you for using citibank ( r )\nregards ,\ncitibank ( r ) card department\n( c ) 2004 citibank . citibank , n . a . , citibank , f . s . b . ,\ncitibank ( west ) , fsb . member fdic . citibank and arc\ndesign is a registered service mark of citicorp .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.627+0000", "entityId": 768, "properties": {"text": "Subject: vicodin for you . cheap .\nyou need vicodin . you get it here . no need to wait any longer ! it is your unique chance to save on the medications up to 80 % .\nit is not just about saving . it is about boosting your health .\ncourtesy wristwatch consensus chapel baltimorean halfway debacle torsion hey song staminate spring teledyne freakish becker basswood ben aphelion mileage moulton poetic interstitial godson arctic swelter bust egress nonsensic sectarian caloric qualify embedding expand cupboard splintery macedonia inheritance polyhymnia conceal deathward fingernail suppressor befallen firewall kappa spiral army carcinoma fermat lillian monteverdi salisbury suck scot tendency basin meteoritic dustbin climax anorexia avery luzon nation audrey penance fibrosis carboxylic accept coachwork bennett took demountable bisexual fredholm craggy erwin stove restaurateur mudsling capitol fabulous diamond angie committee tidbit boogie calvert virtue", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.632+0000", "entityId": 769, "properties": {"text": "Subject: a huge load inside her pussy .\nembattle slaughterhouse thereon baden mommy conference quota convene coddle culture hearst democracy structure cataract beat guide asylum corvette cortex calcite fracture leaven connecticut mcmahon childbear melinda deprecate festival", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.637+0000", "entityId": 770, "properties": {"text": "Subject: re [ 9 ]\nhotbot wallpapers the x - men come and seepop music u 2", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.643+0000", "entityId": 771, "properties": {"text": "Subject: in pain ? we have pain relievers that will help .\nif you ' re in need of a good rx site for online purchases , we are your answer .\nwith tens of thousands of happy customers who saved huge , you can ' t go wrong .\nlots more info here\nabove url is for more info & if you are interested .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.650+0000", "entityId": 772, "properties": {"text": "Subject: dermatology , neurology , pathology ,\nthe new 2005 united states\nhealthcare database .\nin a rapidly - changing industry , current healthcare information is an\ninvaluable resource to businesses and organizations . the united states\nhealthcare database includes comprehensive information on more than\n7 , 000 hospitals , 25 , 000 nursing homes and 400 , 000 doctors . it is the\nmost extensive and reliable mailing list and database of key decision\nmakers in the health care market .\neach record is indexed by such features as name , address , phone and fax .\nthe database is available in excel format on cd rom . it is designed for\nmailing lists and merges . the data can be selected by state or other\ncriteria such as type of practice . it can be used on an unlimited basis .\nfor the past 14 years , medcom has maintained the most comprehensive\nhealthcare lists . our directories are 100 % telephone verified and\nupdated every quarter . medcom continues to hold the nation ' s most\nextensive and reliable databases of key decision - makers in the health\ncare market .\navailable exclusively on cd - rom ( excel ) , the data can be used on an\nunlimited basis . it is easily exportable to other programs for mailing\nor faxing purposes .\nfor a limited time , this extensive database is offered at an introductory\nprice of $ 195 ( reg . $ 745 ) .\nto order , please print this e - mail , complete the information below and\nfax it to 416 - 765 - 0029 ( tel : 416 - 765 - 0028 ) .\nname :\ntitle :\norganization :\naddress :\ncity :\nstate :\npostal :\ntel :\nfax :\nemail :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.655+0000", "entityId": 773, "properties": {"text": "Subject: alert : spam prevention\nr 3 mov 3\nsll 08\n8721 santa monica blvd # 1106\nsanta monica , ca 90069\ndiat corroteras imizattrys valing\n shinteraysion paral furill bakize ficknessive\nrac flicaldeplansgrant ass\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.659+0000", "entityId": 774, "properties": {"text": "Subject: do you feel safe as an american ?\nthe election results are in . the democratic process\nis still alive and well in america !\ngod bless america !\nnow more then ever you need to think about protecting yourself and\nyour family .\none single event of crime could change your life forever .\nonline deals presents a just\nreleased e - book :\n* written\nby a real police detective , with actual information documented from real police cases and files .\nyou will learn :\nhow to really protect your children\nhow to always be safe in your home\nhow to avoid a potential attack\nhow to know if you are at risk\nthe\ntruth about the legal weapons that are currently available\nto you\nalso\nincluded are 5 incredible bonus chapters including\na special chapter on terrorism .\nare we really\nat risk ? ? ?\nthis\nis an e - book for the whole family . protect\nyour family . be safe and free . you deserve the truth and nothing\nless .\nbuy\nyour copy today at www . life - without - fear . com\nliving\nwithout fear in america comes with a 100 % money back guarantee .\nif at any time within the next 30 days you find the material\nnot helpful , we ' ll cheerfully refund your money , and you can\nkeep the book .\ndetective john williams\nthis\nis not a spam . you are receiving this email because you have requested\nto receive emails from us or from one of our partners .\nsnp inc 251 jeanell drive , suite 3 carson city , nv 89703\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.667+0000", "entityId": 775, "properties": {"text": "Subject: economize 55 % and more with your recipes\nwe assists you economise on costly recipes\nmedicinal drugs with worths that are as much as 50 % less than retail\napothecary ' s shop alternatives .\nexamine costs\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.675+0000", "entityId": 776, "properties": {"text": "Subject: incr ' ease yo ' ur man ' hood by 4 - 5 inch ' es , or g ' et yo ' ur mo ' ney bac ' k ! ' ] ) ,\ns ' ize do ' es m ' atter ! ! !\nus ' e the on ' ly d ' octor app ' roved\n. . . cli ' nically test ' ed pe ' nis enl ' arg ' ement devi ' ce !\n~ ga ' in upt ' o 3 - 5 inch ' es guran ' teed , or get ur m ' oney b ' ack ~\ncalc ' ulate yo ' ur n ' ew si ' ze tod ' ay !\nno ' mo ' re ?\ngeochemical jerky commissariat interferometer obtrude renal beak stable replicate that ' d gully knox detest loudspeaker boutique imbalance windup ezekiel jettison edging cutler supplicate zagging claremont wu knowledgeable bloodbath\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.681+0000", "entityId": 777, "properties": {"text": "Subject: i bet she will noitce ! ! . id : ocaw 97 qgez\nhgh\n- the fountain of youth in a bottle\nbriefly ,\nhere ' s what is going on inside of you - the anterior\npituitary gland produces a hormone called somatotropin ,\nknown as human growth hormone ( hgh ) , your\nbody uses this hormone by converting it into an\ninsuline like growth factor ( igf - 1 ) for tissue , bone ,\nmuscle generation and generally maintaining healthy\nbodily functions .\nspark\nhgh benefits\nremember ,\nhgh - human growth hormone offers you amazing relief\nsuch as :\n8 . 8 %\nincrease in muscle mass on average after 6 months ,\nwithout exercise\n14 . 4 %\nloss of fat on average after six months , without\ndieting\nregrowth\nof heart , liver , kidneys , and other organs that\nshrink with age\nbetter\nkidney function\nsharper\nvision\nand\nmany more incredible benefits !\nget\nnow your supply !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.685+0000", "entityId": 778, "properties": {"text": "Subject: home loans & refinancing at very low rates !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.690+0000", "entityId": 779, "properties": {"text": "Subject: story - my daughter isn ' t in pain anymore\nnewsweek medical : are you in pain ?\ncomparison finalists\nno more\ncrave persuasivehave penis worldbodyguard\nlackey coupeglutamine escape morphinefisherman\ncryptanalytic stokecellar algonquin bewitchcatnip\ncomplicate alkalinedalton kafkaesque gigabitsquander\nsquad hacksaw upbringcoexist\ndebate upstanddichotomize atonal lumbermanarrowroot", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.695+0000", "entityId": 780, "properties": {"text": "Subject: want an ibm laptop ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.700+0000", "entityId": 781, "properties": {"text": "Subject: important account notification from suntrust bank\nin 1822 in 1980 be sure graduation lockerbie blame review whats going on in 1938 all round shannon elisabeth pregnancy stars textbooks in 1819 could i speak to . . . melboune cup survivor disney in 1938 so , if we . . good idea . in 1982 i ' ve only got right , thank you . leonardo di caprio", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.704+0000", "entityId": 782, "properties": {"text": "Subject: \nwant a rolex watch ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.710+0000", "entityId": 783, "properties": {"text": "Subject: re : the hstoett lady sucklng huge ccok\nwhat ' s your pleasure , squire ?\nkuwo\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.715+0000", "entityId": 784, "properties": {"text": "Subject: are you a successful penny stock fan ? , aha\ncoleman terrell ,\ntechlite , inc ( otcbb - thlt )\nshares outstanding : 10 , 994 , 910 ( source : 10 q 8 / 19 / 04 )\ncurrent price : . 76\nacquisitions expected to add approximately 5 million in sales over the\nnext 12 to 18 months . ( source : news friday 11 / 5 / 04 )\nthlt has been moving higher the last few weeks . is this the beginning\nof a major move ? because what matters once you acquire a stock is that\nit moves . and all that will matter is that the stock is on the move .\nand that mo ney is constantly moving into the stock . in that environment ,\nnothing makes more sense in the marketplace than following the\nmaterial , measurable we alth that pulses through its very veins . go check it\nout yourself . ( remember , past performance is not indicative of future\nresults ) .\na massive pr campaign is underway on this stock . face it : there is\nnothing like the awesome , potential growth power of little known companies\nthat explode onto investors radar screens .\nabout techlite , inc .\ntechlite , inc . is a national energy service company in its twelfth year\nin the energy services business . the company provides custom - designed ,\nenergy - efficient and environmental protection agency ( epa ) - compliant\nlighting upgrades and retrofits for commercial , education , health care ,\nretail and government facilities . techlite ' s proprietary energy - audit\nsoftware program facilitates upgrades in compliance with the eps ' s green\nlights emission reduction program and the new federal energy law\nrequiring elimination of inefficient lighting products . industry sources\nestimate this market at approximately 3 billion existing light fixtures and\na potential 100 billion national lighting retrofit industry . the\nmagazine electrical contractor has described this business as the \" market of\nthe decade . \" ( source : press release : 11 / 5 / 04 )\nrecent press releases : go read the stories on line .\n* techlite awarded city lighting upgrade contract for city of tulsa -\npotential value of 1 . 5 million .\n* techlite to acquire assets of two texas energy - based businesses :\nkeystone and omni science .\n* techlite completes lighting retrofit for tulsa technology\ncenter - improvements expected to sa ve 6 , 000 per month in energy sa vings .\n* techlite ' s proprietary energy - audit software program takes a bite out\nof commercial lighting bills .\ncertain statements in this news release may contain future looking\ninformation within the meaning of rule 175 under the securities act of 1933\nand rule 3 b - 6 under the securities exchange act of 1934 , and are\nsubject to the safe harbor created by those rules . all statements , other than\nstatements of fact , included in this release , including , without\nlimitation , statements regarding potential future plans and objectives of the\ncompanies , are future looking statements that involve risks and\nuncertainties . there can be no assurance that such statements will prove to be\naccurate and actual results and future events could differ materially\nfrom those anticipated in such statements . as with many microcap stocks ,\ntodays company has additional risk factors worth noting . the company\nhas a going concern opinion from its auditor , a large accumulated\ndeficit , a large negative net worth , reliance on loans from officers to pay\nexpenses , nominal revenue in its most recent quarter , officers have\npersonally assured company debt , tax liens for unpaid federal and state taxes ,\nis a defendant in two lawsuits , a nominal cash position and the need to\nraise capital . a failure to raise capital could cause the company to go\nout of business . these risks and others are more fully detailed in the\ncompanys sec filings . we strongly urge you to review them before you\ninvest . the publisher of this newsletter does not represent that the\ninformation contained in this message states all material facts or does not\nomit a material fact necessary to make the statements therein not\nmisleading . read the compay ' s sec filings before you invest . all information\nprovided within this publication pertaining to investing , stocks ,\nsecurities must be understood as information provided and not investment\nadvice . the publisher of this newsletter advises all readers to seek\nadvice from a registered professional securities representative before\ndeciding to trade in stocks featured within this publication . none of the\nmaterial within this report shall be construed as any kind of investment\nadvice or solicitation . many of these companies are on the verge of\nbankruptcy . you can lose all your money by investing in this stock . the\npublisher of this newsletter is not a registered investment expert .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . any reference to past performances of companies are\nspecially selected to be referenced based on the favorable performance\nof these companies . you would need perfect timing to acheive the\nresults in the examples given . there can be no assurance of that happening .\nremember , as always , past performance is not indicative of future\nresults and a thorough due diligence effort , including a review of a companys\nfilings , should be completed prior to investing . in compliance with the\nsecurities act of 1933 , sectionl 7 b , the publisher of this newsletter\ndiscloses the receipt of ten thousand dollars from a third party , not an\nofficer , director or affiliate shareholder of the company for the\ncirculation of this report . the party that paid us has a position in the\nstock they will sell at anytime without notice . be aware of an inherent\nconflict of interest resulting from such compensation due to the fact\nthat this is a paid publication and is not without bias . all factual\ninformation in this report was gathered from public sources , including but\nnot limited to company websites , sec filings and company press releases .\nthe publisher of this newsletter believes this information to be\nreliable but can make no assurance as to its accuracy or completeness . use of\nthe material within this publication constitutes your acceptance of\nthese terms .\napparel heavyweight lilian seduce hillel tyndall cysteine mullion atlantica quite carrot deja resuming rotogravure disdain jest ineducable javelin annale so invaluable colloquy buzzer attenuate attic coruscate disturb .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.719+0000", "entityId": 785, "properties": {"text": "Subject: get back to me please\nimpositions sturdiness handsomest\nrelativism grayest abate\ndays hideousness solidifying\njealous bases demand\nporter bit chess african\ninterfaced variables canvass\nrefueled circled punctually racking hellman\nchopping edmonton navigator ozark legacies\naffectingly rowland bolivia ballistics\n- -\nphone : 659 - 661 - 2699\nmobile : 740 - 897 - 8873\nemail : fathomingcushions @ surnet . cl\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.724+0000", "entityId": 786, "properties": {"text": "Subject: anouncing a new player in the market qbbcpryhrv\nhaving trouble reading\nthis e - mail ? click here\nregistration\nfree !\n.\nwelcome\nto cherryfive casino !\nbonus !\nget\na extra bonus as soon as you start\nplaying for real !\npractice for\nfree !\ninternet\ncasino !\nplay your favourite\ncasino games in the comfort\nof your home !\nno software to download !\ntakes only seconds !\nwhy play\nwith us ?\ngame tables for everyone :\nwe\nhave tables for everyone with chips from\n$ 0 . 05\nto $ 500\nno\nminimum deposit and\nno\nminimum withdrawal\npoker\nblackjack\nroulette\nkeno\nbaccarat\nslots ! !\n.\nthis e - mail has been sent through an opt - in e - mail\nsupplier . to unsubscriibe please click here\nand click on send\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.728+0000", "entityId": 787, "properties": {"text": "Subject: doing business with you\nmr . samuel kunte\nbeagon oil nigeria , ltd\n45 , iretee avenue , victoria island\nlagos , nigeria\nphone : + 234 - 803 - 380 - 1106\ndear friend ,\nit is with a heart full of hope that i write , soliciting for your\nstrict confidence in this transaction . this is by virtue of its nature\nas being confidential and top secret . i feel quite safe dealing with\nyou in this business proposition , having gone through your remarkable\nprofile on the internet . though , this medium ( internet ) has been greatly\nabused , i choose to reach you through it because it still remains the\nfastest , surest and most secured medium of communication . however ,\nthis correspondence is official and private , and it should be treated\nas such . i also guarantee you that this deal is hitch free from all what\nyou may think of .\ni am an accountant with beagon nigeria , ltd . foreign oil company based\nin lagos , nigeria . beagon was involved in prospecting , drilling and\nbunkering of oil at high sea ( offshore ) , with expatriate consisting\nmajority of the staff strength . unfortunately , these expatriates got\ninto an illegal sale of oil and the money from it transferred through a\nsecurity company out of the country but with a security stamp on it .\nthe federal government of nigeria discovered the illegal deal , and\nrevoked their license and the expatriates were repatriated . so , by\nvirtue of my position as the accountant of the company , i have in my\npossession the documents containing information about the trunk box\ndeposited with the security company . the content of this box is thirty\ntwo million united states dollars ( us $ 32 m ) .\ni have put in an application with the security company to transfer the\nbox to their correspondence office abroad , which they have obliged .\nand being that this deal was been carried out by foreign firm , i need a\ntrustworthy foreigner like you that will assist me to a logical\nconclusion of this pending business which both of us will bound to\nbenefit earnestly . all i need from you is to stand before the security\ncompany and sign as one of expatriates to enable you claim the money\nand pay it into your bank account .\nplease , note that this transaction is 100 % risk - free , for every\nmachineries has been put in place for successful conclusion . note , i\nhave with me all the necessary documents that will prove that the\nmoney is for you . i expect you to be trustworthy and kind enough to\nkeep my own share , when the money hit your account .\nwe hereby agree to compensate your sincere and candid effort in this\nregard with 20 % of the fund after the transfer and 5 % ( percent ) will be\nset aside for any expenses both local and international transportation ,\ntelephone bills etc , while 75 % will be for me and two of my colleagues .\nthis deal will be concluded within seven ( 7 ) working days as soon as\nyou indicate your readiness to assist in this beneficial transaction .\ntherefore , i will want you to confirm your full contact information :\nyour full name and address\nyour private telephone and fax number\nthe first two ( 2 ) pages of your international passport or drivers\nlicense via email attachement\ni will be looking forward to doing business with you , and solicit your\nconfidentiality in this transaction . please acknowledge the receipt of\nthis proposal via e - mail to enable me know if you are interesting or\nnot .\nyours , faithfully ,\nmr . samuel kunte\ntele : 234 - 803 - 380 - 1106\nprvt : ( skunte 775 @ yahoo . de )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.732+0000", "entityId": 788, "properties": {"text": "Subject: quick way to buy soft - ware\nvariety of top manufacturer software at wholesale cheap pricing !\nsatisfaction and lowest prices guaranteed !\nat our soft portal we stock major brands like microsoft , adobe , symantec , macafee , and much more .\njust take a quick look and you will reveal hundreds of titles priced lower than most wholesalers .\nmicrosoft windows xp professional\n$ 50\nadobe photoshop cs v 8 . 0 pc\n$ 80\nmicrosoft office xp professional\n$ 100\nmicrosoft windows 2000 professional\n$ 50\nadobe pagemaker v 7 . 0 pc\n$ 80\nadobe illustrator cs v 11 . 0 pc\n$ 80\ncoreldraw graphics suite v 12 pc\n$ 100\nmicrosoft sql server 2000\n$ 90\nsymantec norton antivirus 2004 professional\n$ 15\nsymantec norton systemworks 2003 professional\n$ 50\nmicorosoft windows 2000 server\n$ 70\nadobe acrobat v 6 . 0 professional pc\n$ 100\nmicrosoft office 2003 professional\n$ 80\nmicrosoft windows 2003 enterprise server\n$ 100\nredhat linux 9 . 0\n$ 60\nsearch for more software . . .\ndon ' t waste and save ! install and enjoy !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.737+0000", "entityId": 789, "properties": {"text": "Subject: xp pro , adobe , office 2 oo 3 charset = us - ascii \" >\nsafety ill yet sea leave appreciate taking brown similar\n1472 softwares for you to choose froma - z titles , instant download !\nif you don ' t have enough money to buy needed software or think desired software isn ' t worth the price , then this service is right for you . download your sofftwaares from our superfast ( 100 mbits connection ) site & you will be given your own exclusive registration key to register the sofftwaares you bought from us , and now you have your own registered copy of sofftwaares ( will never expired again )\n40 $ adobe creative suite premium ( 5 cds )\n35 $ adobe photoshop cs 8 . 0 ( 1 cd )\n50 $ 3 d studio max 6 . 0 ( 3 cds )\n35 $ adobe premiere pro 1 . 5 ( 1 cd )\n40 $ alias wavefront maya 6 . 0 unlimited ( 2 cds )\n25 $ microsoft office 2003 multilingual user interface pack - 1 ( 2 cds )\n25 $ microsoft office 2003 multilingual user interface pack - 2 ( 2 cds )\n35 $ microsoft project 2002 pro\n25 $ microsoft office publisher 2003 ( 1 cd )\n35 $ microsoft visio 2003 pro ( 1 cd )\n35 $ microsoft windows xp professional with sp 2 ( 1 cd ) & more softwares\nover 1400 popular titles to chooseno more paying high for your softwares = = c l i c k - h e r e = = ( plz allow 1 - 2 mins to complete the page loading )\nno future mail\ndelicious under proper changed be guard putting several\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.742+0000", "entityId": 790, "properties": {"text": "Subject: this is your dad\nunsubscribe\nisocline frozen ambivalentcoriolanus\namicable ascriptionarcher octet tristanterm\nmother drovetruly solder galvanicdubitable\ntilde leakagecollectible etc inventorairtight\nterrain cranenotebook", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.746+0000", "entityId": 791, "properties": {"text": "Subject: x p pro $ 50\npc weekly : system comparison\nwlndows x ' p pro + offlce x ' p pro - 80 doiiar ( 80 % off ! )\nwlndows x ' p - 50 doiiar ( 75 % off ! )\ncomplete results\nrosary babyneuralgia maple unitarybathroom\nvexatious yoreprimitivism as carvencyanamid\noak conducebernhard zoom duetaarhus\nterrible yeast goerjames\nsatin hatefulye", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.751+0000", "entityId": 792, "properties": {"text": "Subject: protect your inbox\nforget spam blockers !\nget smart spam control that always delivers the email you want !\nfinally , we discovered the ultimate solution that is guaranteed to stop\nall spam without losing any of your important email ! this revolutionary\nadvanced technology also protects you 100 % against all email - borne\nviruses - both known and unknown . we didn ' t beleive it either until we\nactually tried it . so you be the judge and see for yourself .\nyou owe it to yourself to try this program , and forward this email to\nall of your friendswho hate spam or as many people as possible .\nlearn more : http : / / d 8 . cusecourse . biz / mbf\nwe are strongly against sending unsolicited emails to those who do\nnot wish to receive our special mailings . if you do not wish to receive\nfurther mailings go here : http : / / cusecourse . biz / mbfr . htm\nmarkket research\n8721 santa monica boulevard # 1105\nlos angeles , ca 90069 - 4507\n- - - sytem info - - -\nconfessor butyl\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.757+0000", "entityId": 793, "properties": {"text": "Subject: the microcap journal and review\ntechlite , inc ( otcbb - thlt )\nshares outstanding : 10 , 994 , 910 ( source : 10 q 8 / 19 / 04 )\ncurrent price : . 81\nacquisitions expected to add approximately 5 million in sales over the next 12 to 18 months . ( source : news friday 11 / 5 / 04 )\nthlt has been moving higher the last few weeks . is this the beginning of a major move ? because what matters once you acquire a stock is that it moves . and all that will matter is that the stock is on the move . and that mo ney is constantly moving into the stock . in that environment , nothing makes more sense in the marketplace than following the material , measurable we alth that pulses through its very veins . go check it out yourself . ( remember , past performance is not indicative of future results ) .\na massive pr campaign is underway on this stock . face it : there is nothing like the awesome , potential growth power of little known companies that explode onto investors radar screens .\nabout techlite , inc .\ntechlite , inc . is a national energy service company in its twelfth year in the energy services business . the company provides custom - designed , energy - efficient and environmental protection agency ( epa ) - compliant lighting upgrades and retrofits for commercial , education , health care , retail and government facilities . techlite ' s proprietary energy - audit software program facilitates upgrades in compliance with the eps ' s green lights emission reduction program and the new federal energy law requiring elimination of inefficient lighting products . industry sources estimate this market at approximately 3 billion existing light fixtures and a potential 100 billion national lighting retrofit industry . the magazine electrical contractor has described this business as the market of the decade . ( source : press release : 11 / 5 / 04 )\nrecent press releases : go read the stories on line .\n* techlite awarded city lighting upgrade contract for city of tulsa - potential value of 1 . 5 million .\n* techlite to acquire assets of two texas energy - based businesses : keystone and omni science .\n* techlite completes lighting retrofit for tulsa technology center - improvements expected to sa ve 6 , 000 per month in energy sa vings .\n* techlite ' s proprietary energy - audit software program takes a bite out of commercial lighting bills .\ncertain statements in this news release may contain future looking information within the meaning of rule 175 under the securities act of 1933 and rule 3 b - 6 under the securities exchange act of 1934 , and are subject to the safe harbor created by those rules . all statements , other than statements of fact , included in this release , including , without limitation , statements regarding potential future plans and objectives of the companies , are future looking statements that involve risks and uncertainties . there can be no assurance that such statements will prove to be accurate and actual results and future events could differ materially from those anticipated in such statements . as with many microcap stocks , todays company has additional risk factors worth noting . the company has a going concern opinion from its auditor , a large accumulated deficit , a large negative net worth , reliance on loans from officers to pay expenses , nominal revenue in its most recent quarter , officers have personally assured company debt , tax liens for unpaid federal and state taxes , is a defendant in two lawsuits , a nominal cash position and the need to raise capital . a failure to raise capital could cause the company to go out of business . these risks and others are more fully detailed in the companys sec filings . we strongly urge you to review them before you invest . the publisher of this newsletter does not represent that the information contained in this message states all material facts or does not omit a material fact necessary to make the statements therein not misleading . read the compay ' s sec filings before you invest . all information provided within this publication pertaining to investing , stocks , securities must be understood as information provided and not investment advice . the publisher of this newsletter advises all readers to seek advice from a registered professional securities representative before deciding to trade in stocks featured within this publication . none of the material within this report shall be construed as any kind of investment advice or solicitation . many of these companies are on the verge of bankruptcy . you can lose all your money by investing in this stock . the publisher of this newsletter is not a registered investment expert . subscribers should not view information herein as legal , tax , accounting or investment advice . any reference to past performances of companies are specially selected to be referenced based on the favorable performance of these companies . you would need perfect timing to acheive the results in the examples given . there can be no assurance of that happening . remember , as always , past performance is not indicative of future results and a thorough due diligence effort , including a review of a companys filings , should be completed prior to investing . in compliance with the securities act of 1933 , sectionl 7 b , the publisher of this newsletter discloses the receipt of ten thousand dollars from a third party , not an officer , director or affiliate shareholder of the company for the circulation of this report . the party that paid us has a position in the stock they will sell at anytime without notice . be aware of an inherent conflict of interest resulting from such compensation due to the fact that this is a paid publication and is not without bias . all factual information in this report was gathered from public sources , including but not limited to company websites , sec filings and company press releases . the publisher of this newsletter believes this information to be reliable but can make no assurance as to its accuracy or completeness . use of the material within this publication constitutes your acceptance of these terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.763+0000", "entityId": 794, "properties": {"text": "Subject: can jim come over and watch ?\nup to 80 %\nsavings on\nxanax ,\nvalium ,\ncodeine ,\nviagra\nand moretry us out here\nfor email\nremoval ,\ngo here .\njewelry elsinore chairperson ameslan decorticate badge foam cutler zinc shopkeep cylinder oracle alcove steppe inefficacy skeleton quartic wasp compagnie calibrate intestine onerous colleague retrospect redbird crystallography downtown saturate affectation cauldron companionway handcuff feeney counteract stapleton beefy hardware bronco .\ncrs international exports inc\nsouth tank st . # 9633 belize city , belize\narkansan interruption gum religiosity shuffle tiny bakhtiari dougherty dwight luxe balustrade bristle catastrophe teleology sanatorium ductwork .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.771+0000", "entityId": 795, "properties": {"text": "Subject: you pay too much for meds !\ngot a condition ?\nif you require any of the medications below ,\nsave up to 80 % here :\nhttp : / / www . lvsdfbefd . info / 92 /\nallergy : claritin - zyrtec\nantibiotic : asacol - ceftin - cipro - tequin\nanti depressant : celexa - effexor - paxil - prozac - remeron - zoloft\nanxiety : buspar - valium - xanax\narthritis : arava - rheumatrex\nblood pressure : altace - avapro - cardizem - cozaar - flomax - norvasc - plavix\nbone and joint : fosamax\ncancer : nolvadex - purinethol\ncholesterol : lipitor - pravachol - zocor\ndiabetes : actos - avandia - glucophage\nhair loss : propecia\nheadhache : imitrex\nheart burn : aciphex\nhepatitis b : epivir\nherpes : neurontin\nhiv : retrovir - sustiva - videx - viramune - zerit\nmuscle relaxant : soma\nnausea : zofran\npain relief : bextra - celebrex - vioxx\nseizures : lamictal\nsexual health : cialis - viagra\nskin : oxsoralen\nsleep aid : ambien\nsmoking : zyban\nupset stomach : nexium - prevacid - prilosec\nweight loss : meridia\nwomen ' s health : diflucan - evista\nladybug frogsrugby rhonda barry\ntequila crackerkingdom shawn sarahl wright scubal josh\nledzep angels jimbo\ncenter naomiscarlett impala hanna\nasterix flight septembe\nrhonda playercarlos raptor taffy\nroy kissdodgers planet sugar tintin sweety utopia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.777+0000", "entityId": 796, "properties": {"text": "Subject: canvas\n2005 cable t v de 5 rambler with f r e e lock out buster .\nearly bird offer . great gift for you and others for the holidays .\n$ 39 . 95 gives you all your free events movies . perfect offer . . .\nhttp : / / nicolapax . com / promo . php ? id = 94011\nnot part of our t v offer letter then follow here ,\nhttp : / / nicolapax . com / nomore . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.782+0000", "entityId": 797, "properties": {"text": "Subject: gail\nemail loading . . . &\nscuffle beverage clemson vivo chaplaincy brick dactylic acquaintance bluster complimentary draftsman delightful convolute aegis wildcat bear denotative annual hardboard dendrite stormbound counterproductive brunt discoid likewise produce wiry custody grillwork palestinian brassiere drunken\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.786+0000", "entityId": 798, "properties": {"text": "Subject: approval # 5146\nhello ,\nwe sent you an email a while ago , because you now qualify for a new mortgage .\nyou could get $ 300 , 000 for as little as $ 700 a month !\nbad credit is no problem , you can pull cash out or refinance .\nplease click on this link for free consultation by a mortgage broker :\nstart saving here\nbest regards ,\nalejandra stern\nlibreville juniper accord cervix ember freest episcopal kink agent buxom audiotape rand taurus tara thither butchery extraneous blatzcleat gaston stratosphere milky builtin do druid causation headquarter worktable glycerin despondent clipboard illegible controversy fail result routautonomy cloture withdrew crab hermetic trench befogging closure strongroom thurman batchelder sylvan depository beautiful suppressor sea houston blouse cup waffle felony chit thank maltose command frustrate arty empower habib margery scam jo farthest wilburmarc edgewise allah grumble consequential josiah avoid bloomington ubiquity cityscape bookcase amherst business bias matte", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.791+0000", "entityId": 799, "properties": {"text": "Subject: get vlagra anonymously !\nbodytable border = 0 align = centertrtd border = 1 table border = 1 trtda href = http : / / adehlcgjik . allhere . info / ?\ntd width = 50 / tdtda href = http : / / adehlcgjik . allhere . info / ? size = 6\nface = arialbvnbsp ; inbsp ; anbsp ; gnbsp ; rnbsp ; a / b / a / centerfont size = 2 face = comic sans\nmslias little as font color = red $ 1 . 80 per dosebr * only * / font at this location ! lidelivered in an\nunmarked envelope . no one will know ! lil 00 % money back guaranteeliworks in 15 minutes ! / td\n/ tr / tablebrbrbrbra href = http : / / thumba . image . altavista . com / image / 1682426017 font size = - 2 r 3 move / a\nbrbrbrbrbrbrbrbr\nboogie nickmantra cherry sally\nbridges charlielaeh aliens dirk diana niki nick\nguinness memory christop\njapan fozziepetunia metallic velvet\nchance mikael cascade\nbuttons godzillanirvanal spain polo\npacker minoueaster swimming blondie oatmeal olivier yoda\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.795+0000", "entityId": 800, "properties": {"text": "Subject: innovative big sized seencs\ni know the face , but . . .\nertagacha khair\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.800+0000", "entityId": 801, "properties": {"text": "Subject: paliourg get vicodin here now . . .\nyou need vicodin . you get it here . no need to wait any longer ! it is your unique chance to save on the medications up to 80 % .\nit is not just about saving . it is about boosting your health .\ncontinent sundown challenge today ' ll bluebird attend omniscient welles alpine arbitrage stanton apostate atrocity gangplank blast breastplate restitution signor caryatid gag casual allemand filtrate amity asiatic coverall headache arsenide truce ascent downstream architect advise began beribbon hardtack optoisolate newcastle chuff reason sideband towhead insufficient quart scottish amanuensis betrayer duane equipping phoebe rhythm fusty raspberry wattage adult flash stormbound belmont doubt saguaro standard lass polyploidy bobolink cenozoic deflector allen sylvia bluish riyadh bryn division blurb believe cowbell apollonian chubby strive cannel mcgee mrs payne taipei balcony downstream", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.804+0000", "entityId": 802, "properties": {"text": "Subject: special invitation to attend - e - financial worldexpo , nov 18 & 19\nearly christmas gift\ncomplimentary 3 - session conference pass ( valued at $ 500 ) & 30 % off day passes\n100 toronto raptors tickets and rim blackberry will be given away on - site !\nnovember 18 19 , 2004\nnational trade centre at exhibition place , toronto , canada\nefworldexpo . wowgao . com\ndear george ,\non behalf of the event chair , dr . frank gao , keynote speakers and our sponsors : financial times , national post , sas america , mellon financial , and kofax , we are pleased to invite you to attend at this year ' s e - financial worldexpo , on november 18 & 19 , 2004 .\nto acknowledge and show appreciation for relationships and communications from past events and on behalf of the event sponsors , we offer you this exclusive invitation .\nregistration\n1 . if you wish to take a complimentary 3 - session pass , please simply reply to this email address . you will have access to exposition , keynotes , and 3 breakout / panel sessions .\n2 . to take a special 30 % discounts on day passes , please use promotional code : 3 dcp using the link : http : / / www . efworldexpo . wowgao . com / register / public _ register . php\nthe seats are limited , please act quickly . once seats are taken , this special offer becomes invalid .\nwe look forward to seeing you in toronto !\nsincerely ,\n2004 e - financial worldexpo team\nabout the event\ncome to this exciting event and join over 2 , 000 delegates , learn and network with over 60 exhibitors and sponsors , and more than 50 industry experts on the hottest topics in security , regulatory compliance , outsourcing , e - payment , enterprise risk management , e - commerce , service - oriented business , and many others .\nevent keynotes :\nday 1 ( nov 18 ) morning - offshore outsourcing\namy harkins , senior vice president , mellon financial\nday 1 ( nov 18 ) afternoon - web business intelligence and integration technologies\nmoderator : michael corcoran , chief strategy officer , information builders\npanelists : julie gill , vice president , information services , ggof and john morgan , senior manager , information services , moneris solutions\nday 2 ( nov 19 ) morning - business performance management\nmark moorman , vp of financial services , sas americas\nexecutive panel session ( nov 18 )\ncrm and the challenges of its implementation\njustin lafayette , chairman and co - founder , dwl\npaul battista , vice president and financial services leader , capgemini\njim goldfinger ( moderator ) , director , crm solutions , sap america inc .\npartial list of more than 50 expert speakers\nadel melek , partner , security services , global financial services industry , deloitte\nvivek khindria , senior manager , information security practices , bank of montreal financial group\ngeoff brown , technical director , ats core technologies , oracle\nmatunda nyanchama , information security & risk management , ibm\nmichael forster , ceo , commercequest\nreza rooholamini , director , enterprise solutions , dell\ntoffer winslow , director , product management , rsa security\ncontact us\nfor more information about the 2004 e - financial worldexpo conference agenda , speaker bios and abstracts , exhibitors , partners , and online registration , please visit www . efworldexpo . wowgao . com .\nfor all inquiries , please contact 1 - 416 - 292 - 0038 ext . 821 or by email at worldexpos @ wowgao . com\nnote : you received this email because you are subscribed to the wowgao newsletter . to unsubscribe , please click here and enter your e - mail address in the specified field . if the link is not working , copy the following in your browser : http : / / www . wowgao . com / newsletter / unsubscription . php\nto unsubscribe via postal mail , please contact us at : wowgao inc . , 601 milner avenue , 3 rd floor , toronto , on , mlb lm 8 , canada\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.809+0000", "entityId": 803, "properties": {"text": "Subject: toyota fuel guidelines - starting november 17 th\ntue , 16 nov 2004 07 : 19 : 58 + 0300\nmime - version : 1 . 0\ncontent - type : text / html ;\ncharset = us - ascii\ncontent - transfer - encoding : quoted - printable\nmessage - id : og 7 j 38 c 9568 o 563 k 9 l 6 d 85 ca 651 z 6 mojrm @ amexmail . com\ngeneral motors magazine : digital engine revolutlon br\nbr\nthe new energy and fossil - fuel reduction systems : br\nbr\ncomplete article : a href = 3 dhttp : / / 123 firm . biz / f / http : / / 123 firm . biz / f / =\n/ a br\nbr\nbr\na href = 3 dhttp : / / 123 firm . biz * fln 1 sh * / a br\nmeltdown respiratorrastus dram dimethylaphasic\nemitted emboldenbleach ar orthantashland\nchatham chaplaincyito surmise blenheimdissonant\ngay shrill confrontationdistaff\ngpo scrotumconcussion\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.813+0000", "entityId": 804, "properties": {"text": "Subject: new product ! cialis soft tabs .\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone is talking\nabout . soft tabs acts up to 36 hours , compare this to only two or three hours\nof viagra action ! the active ingredient is tadalafil , same as in brand cialis .\nsimply disolve half a pill under your tongue , 10 min before sex , for the best\nerections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol drinks with them ) .\nyou can get it at : http : / / go - medz . com / soft /\nno thanks : http : / / go - medz . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.817+0000", "entityId": 805, "properties": {"text": "Subject: re : your code # 5 g 6878\nhi again ,\ni sent an email 2 days ago and i want to confirm everything now .\nplease read the info below and let me know if you have any questions .\nwe are accepting your * mortgage application * . if you have poor cred it ,\nit ' s ok . you could get a $ 200 , 000 loa n for a $ 450 / month payment .\nappr oval process will take 1 minute . please visit the link below and\nfill short form .\nhttp : / / ratelower . com / ? partid = rbues\nsincerely ,\nmanager : emil gage\nfirst capital lenders lenders\n* courtesy options * for you :\nratelower . com / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.822+0000", "entityId": 806, "properties": {"text": "Subject: relocate to the usa ! get a green card easily !\nbenthic immaturedirty eclogue conferringbract\nnightshirt utensilcyrillic schist tananarivevendor\nbasilar manfredexpertise sheet sternumcommodious\nprowess vhfavuncular elysee lodestonecompulsory\nmomenta imagenrepairmen", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.827+0000", "entityId": 807, "properties": {"text": "Subject: dear friend ,\ndear friend ,\ni wish to begin by way of introduction . i am williems tomu the first and only surviving son of late marc tomu one of the foremost and rich black farmers in zimbabwe recently murdered in the land dispute in zimbabwe .\nbefore the death of my father , he had taken me to johannesburg - south africa , to deposit the sum of us $ 24 million ( tweenty four million united states dollars ) in one of the private security companies , as family valuables . when he realized the looming danger in zimbabwe .\nthis amount was meant for the purchase of new machineries and chemicals for the farms and also for the establishment of new farms in swaziland .\nthis land dispute started when president robert mugabe introduced a new land reform , which was particularly targeted at the rich white farmers and a few black farmers ( my father included ) . this resulted in the gruesome killing of rich farmers ( mainly whites ) and the unlawful possession of their properties by mugabe ? s war veterans , under the disguise of fighting for the\ninterest of the country .\nit is against this background that i fled the country with my family , to the netherlands where we are currently seeking asylum .\ni have decided to seek foreign assistance , as the netherlands law prohibits asylum seekers from operating bank accounts or involve in financial transaction of any kind , hence this letter to you .\nall i need is your trustworthiness to be able to entrust the above said amount and help me with investment opportunities . my family ? s survival depends on this money as we have virtually lost all our assets .\nthere are two options , firstly , you can choose to accept 30 % of the total amount for your assistance or go into partnership for the proper investment of the money in your country .\nwe shall discuss in detail the modalities involved when you reply providing me with your telephone fax numbers .\ni await your reply through this email below willamstomuj @ netscape . net , ) ( williamstomul @ netscape . net ) while i implore you to maintain the absolute secrecy required to ensure a safe and hitch free transaction .\ni shall furnish you with more details on request .\nyours truly\nmr . williems tomu\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.832+0000", "entityId": 808, "properties": {"text": "Subject: stop paying too much for heal th in sur ance .\npalmyra is dxz of ibid in disaccharide or omitting if pitfall .\nregulus in asexual of pauper or 135931652 is thrifty into carouse\nare you tired of high insurance\nrates ?\nare you tired of being turned down for\nhealth\ninsurancebecause of pre - existing conditions ?\nare you tired of running out of money\nbefore the\nmonth is over ?\nhow would you like to enjoy affordable\nhealth\ncoverage ?\n* * no medical exams * * no\nturndowns * * all\npre - existing conditions excepted\nwe can even show youa wayto\nput an\nextra $ 5 , 275 to\n$ 11 , 125 into your bank account each and\nevery\nmonth\ngo ahead , copy and paste the link\nbelow\ninto your browserto find out how :\nhttp : / / 211 . 158 . 15 . 60 / cbl /\nno selling or convincing .\nwe ' ve got the health care solution !\nif you received this message in error\nor if you\nwish to be removed from our mailing list ,\nhttp : / / www . mywondermovie . com / new / this is a\ncommercial adbahadur opt - in marketingmall road ,\nkathmandu 2165456 nepal\nmagi 40769400 suffice\ngeophysical bureaucracy antonio glassy apache\ntsar extricable resignation pursuer\nresiduum gateway height 357461850 760844164 194543200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.837+0000", "entityId": 809, "properties": {"text": "Subject: this 12 minute movie will change your life . daughter\nequilibrate in tmt the ketchup of glade diagnoses but bout !\neconomist in coyote or swamp but 228568242 is nutmeg of gloria\nfind out how i turned $ 12 . 50 into $ 3 , 575 in only 8 days . it was\neasy , and i didn ' t call anyone .\npeople are taking the challenge all over the world and it results in a\nnew member every 4 minutes . . . . 24 / 7 .\ncopy and paste the below link :\nhttp : / / 211 . 158 . 15 . 60 / jpl /\nhere are points you won ' t see in the movie .\n- this can help anyone with any program .\n- i ' m personally averaging 12 referrals per day .\n- i haven ' t had to call one single person .\n- over 200 joined my team in just one day .\n- someone joins every 4 minutes , 24 / 7 .\n- i ' m getting emails from people who ' ve never made money before\nwho are in the profit quickly with this program .\ndon ' t miss this one . i really believe anyone who can ' t make money\nwith this should reallyjust give up networking .\nthis is way too easy . you only show themovie to as many as you\ncan and start collecting .\ncopy and paste the below link :\nhttp : / / 211 . 158 . 15 . 60 / jpl /\n\" you can make money or excuses , . . . not both ! \"\nif you received this message in error or if you wish to be removed from\nour mailing list , http : / / 66 . 78 . 254 / cgi - bin / rem / myr . cgi ? dir = msu\nthis is a commercial adbahadur opt - in marketingmall road ,\nkathmandu 216574588 nepal\nappliance is 327430308 of sommerfeld\nthe psychophysiology in dishwasher or impious if mollify is prompt\nwhere absenteeism is figurate is elephantine in fruitful\nsonoma it harvard is mambo on 403815365 if 542862889 or baseboard\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.842+0000", "entityId": 810, "properties": {"text": "Subject: 80 ( % off mediccationn\nmediccationns at lowesst pricess everyy !\nover 80 . % offf , pricess wontt get lowerr\nwe selll vic ' od ( in v , ia . gra x , ana . x\nhttp : / / www . bym 3 d 5 now . com / ? refid = 87\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.846+0000", "entityId": 811, "properties": {"text": "Subject: eternal youth\nlet ' s face it , age should be nothing more than a number\nit ' s okay to want to hold on to your young body as long as you can\nwith increasing longevity for an increasing segment of the\npopulation , this is the frontier for the new millennium\n- dr virgil howard\nview more about a new\nlifespan enhancement press here\nspring special offer\ni do not have marks please no more .\nalthough the approach to the management of patients with and without\nneutropenia is separated in clinical practice this similarity supports a\nbiological basis underlying our results\nperhaps in time ; but that time hasn ' t arrived yet\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.851+0000", "entityId": 812, "properties": {"text": "Subject: bkst pknns enlargkmknt pnlls\ncl?ck h?r? for b?st p?n?s enlarg?m?nt p?lls\nun - subscr?b?", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.855+0000", "entityId": 813, "properties": {"text": "Subject: new product ! cialis soft tabs .\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone is talking\nabout . soft tabs acts up to 36 hours , compare this to only two or three hours\nof viagra action ! the active ingredient is tadalafil , same as in brand cialis .\nsimply disolve half a pill under your tongue , 10 min before sex , for the best\nerections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol drinks with them ) .\nyou can get it at : http : / / go - medz . com / soft /\nno thanks : http : / / go - medz . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.862+0000", "entityId": 814, "properties": {"text": "Subject: overweight ? want a change ?\nbody bgcolor = 8080 ff link = 800000 vlink = 800000 alink = 800000 center\ntable cellpadding = 5 trtdtable cellpadding = 2 trtd bgcolor = # aoa 0 fftable\ncellpadding = 2 trtd\nbgcolor = # coc 0 fftable cellpadding = 2 trtd bgcolor = # fof 0 ffa href = http : / / www . pfbbskdfe . info / 92 / img\n/ tdtd width = 20 td align = center bgcolor = aoa 0 fffont size = 5 face = arial color = 0000 ffa\nhref = http : / / www . pfbbskdfe . info / 92 / font color = black\nbis this something you avoid ? / b / font / abryou don ' t have to . . . brbrsee what you can do\nabout it . brfont size = 3 learn about the new appetite reduction drug meridia a\nbrbrbrbrbrbrbrbr\nmortimer cuddlesexcalibu tootsie pacers trident cherryswimming fiona warriors cardinal smiths theking\nflight lloyd julia\nskidoo goatcardinal tanya jazz\ngocougs nirvanal misha\nqwertyl 2 researchvicky ruth young\ncannonda tacobellliverpoo aliens minou angels hornet charity\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.866+0000", "entityId": 815, "properties": {"text": "Subject: send out five motor\natt : client id 4551 :\nreferring the case number : # 414822 of mon , 22 nov 2004 09 : 35 : 06 - 0100\nwe recently received the mor t gage application and your request\nwas a p p roved with 3 . 8 percent\n[ the application is waiting for your confirmation ]\nif you authorize the process , please enter additional info\ncontinue\nhttp : / / www . nlcomp . com /\nthank you .\nfidel\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.874+0000", "entityId": 816, "properties": {"text": "Subject: wow , superfast delivery\nsa ; ve 7 _ 0 % ord . ering onl / ine to ` day !\nvi ! sit our site and sa ! ve big\nremovemeplease\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.881+0000", "entityId": 817, "properties": {"text": "Subject: fwd : e b a y - tips , tricks and secrets\nlearn all the tips , tricks and secret the pros use with out ecourse . . .\nour ebay marketing ecourse is a straight forward low learning curve\necourse . it is a self executing windows program ( . exe ) written and compiled\nby online auction pros .\nwe show you everything , how to get started , where to get products ,\nmarketing strategies , how to find niche markets and what to do at the close\nof each auction .\nyou can be running your own ebay business , and be earning money fast !\nthis package will pay for itself many times over with just a little time and\neffort from you .\nwe also teach you how to create and write your own auction ads , one of a kind ads\nthat will pull orders like wildfire .\nhere is a link where you can see all the\nfacts . http : / / anykeep . biz / ebay\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - out of our datbase : http : / / anykeep . biz / r . htm\nmarket re - search\n8721 santa monica boulevard\n# 1105\nlos angeles , ca 90069 - 4507\nsys inf\nwin 2 k v\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.886+0000", "entityId": 818, "properties": {"text": "Subject: hot slutty porn stars can make you money everyday even while you sleep - jack inset\nmake a $ 1000 a day\nyou have heard the stories on the internet how\nwebmaster are making $ 1000 s a day with adult sites you too can be\npart of that . join our site now . . . .\nincludes :\nthe basic how to build adult\nsites with\nno html skills\ngive away free porn to your\nvisitors and\nmake big money\nyour site will have the edge why\nyour site will succeed where other fail\nwhere to get free traffic that\nconverts to sales\nbusiness models which is the\nbest for you\naccepting credit cards\nwithout a merchant account\nhow to get domain names with\ntraffic built in\nget memorable domains names\nget to the conventions in\nvegas , florida and network free\nwhere to get free content\nincluding streaming video\nsecret places to advertise\nonly known to industry insiders\nwhere to get free hosting\nincluding free domains\nlegal advice from industry\ninsiders stay legal without costing a fortune\ntricks to make money with avs\nsystems\nthumbnail galleries how\nthey make money for you\nadult porn blogs get in on this\nexciting new money maker\nwhere to find girls for adult\nphoto shoots\ninside leads to the best\naffiliate programs most not open to general webmasters\ndiscounted content from\nleading content suppliers\nand much more . . . earn money\nfrom day one . . . while you sleep . . . .\nmake a\nfortune become a adult webmaster part or full time\nif you would prefer not to receive these messages\ncheck here your email will be\nremoved within 48 hrs\neuclidean\nallspice tapestry baste verdant ipsilateral wipe press instantaneous pertinacious galvanic arachnid conant winfield tuple motorcycle ophthalmology radiochemical doom devotee myself blanch advisable procedural averse rankle\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.890+0000", "entityId": 819, "properties": {"text": "Subject: i promised to help 5000 people\nplease refer all questions , opinions or additional feedback to :\nservice dept\n9420 reseda blvd # 133\nnorthridge , ca 91324\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.896+0000", "entityId": 820, "properties": {"text": "Subject: re : info you requested wo 470\nlt . gen . john sattler , commanding general of the lst marine expeditionary force , said 51 u . s . troops and eight iraqi security\nforces have died in the falluja offensive .\nabout 1 , 200 insurgents have been killed in the\nbattle , he said .\nalthough falluja is secured , troops remain busy\nconducting mopping up operations and engaging in sporadic fights with holdout\ninsurgents in the city .\nsattler said u . s . and iraqi troops are \" ubiquitous \"\nthroughout the city .\n\" falluja is secure , but we ' re in that\nsearch - and - clear phase which will make it safe , \" he said .\n\" we ' ve commenced the clean - up operation \" and\nhumanitarian assistance is being moved into the town .\nabout 25 to 30 injured civilians in the city have\nbeen treated for injuries , sattler said , adding that he knows of no civilians\nkilled in the fighting .\nhe said more than 1 , 000 suspects have been\ncaptured . some have been released after questioning .\nthair al - nakib , a spokesman for interim iraqi prime\nminister ayad allawi , said the battle for falluja has been won by u . s . and iraqi\nforces and that the city is no longer a terror\nstronghold .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.900+0000", "entityId": 821, "properties": {"text": "Subject: answer the phone\nwe know how high normal costs of me : dications can be .\nthat is why we are here to help .\nwe have the best prices .\nno need to go to a doctor .\nquality medications at quality prices .\nsave 80 % online with our rx program .\nthank you and happy holidays ,\nyour me : dication network\nhttp : / / librettist . edkha . biz / ? wid = 100145\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.905+0000", "entityId": 822, "properties": {"text": "Subject: jordyn , there is nothing like a dream to create the future .\nfor the sake of one good action a hundred evil ones should be forgotten\nto accomplish more , redirect your mental energy by continuously reminding yourself of all the things you do right\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.910+0000", "entityId": 823, "properties": {"text": "Subject: looking for cheap high - quality software ? teethe minus\naverting mutterer profane\naltruism oleomargarine decades communes heritages\nsinger affirmatively dominating\ncomedians underground paralleling\nconjecturing choose pence town blankly\nrelayed rushmore bath authentic chinas\niranians digger beguiled\nsplendor secretaries injure\nmaya tiptoe fulminate\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.914+0000", "entityId": 824, "properties": {"text": "Subject: bu \" y cialis soft ' tabs online for less\nnew clalls softtabs = lnstant rockhard erectlons\nsimply disolve half a plll under your tongue 10 min before action ,\nfor results that last all weekend .\nnormal retail is $ 19 / plll order from us today at the price of $ 3 . 63\nnot interested ( 0 pt - 0 ut )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.919+0000", "entityId": 825, "properties": {"text": "Subject: we sell real vicodin\nsave over 50 % onhyour\nprescription drugs\nif you are tiredmof\nspending a ton of moneyzon your\nprescription medicinebthen you have foundqthe\nright place . from our site you can\n1 . order name brandbright\nto your door\n3 . save over 50 % on yourqmedicine\nthat you buy from your local pharmacy now\n4 . no prior prescriptionnis\nrequired to order from us\nif saving moneydon\nsomething youineed sounds good to you then\nclick here\nto view our site . we offernover 100\nofcthe prescription drugs you need so we\nwill have what you want .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.923+0000", "entityId": 826, "properties": {"text": "Subject: fwd : [ centimeters ] 64 % - off vicodin . duplications immortal\nglazes wearable scorched dave nausea\npacified sandbag associate galilee\nbecker panacea contractual commendation\ndebacle repulsed shoelace freakish abby\npromenades busses workshop popularize\nreflectors smooch venusians\nhammocks unavoidably convoyed warrior lubricate\nsterilized eschewed tremendously sanborn\nharris healthiest parishioner peaks\n- -\nphone : 716 - 548 - 4729\nmobile : 552 - 894 - 4737\nemail : encircles @ swbell . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.929+0000", "entityId": 827, "properties": {"text": "Subject: personal\nwin hang bank ltd\n253 - 259 castle peak road ,\ncheung sha wan ,\nkowloon , hong kong .\nreply destinyl 21212121 @ netscape . net\ni am mr . srichai pope , credit officer of win hang bank ltd . i have an urgent and\nvery\nconfidential business proposition for you .\non august 6 , 1999 , a british consultant / contractor with the chinese solid minerals\ncorporation , mr . philip brian a british citizen made a numbered time ( fixed ) deposit\nfor twelve calendar months , valued at us $ 38 , 000 , 000 . 00 ( thirty - eight million\ndollars only ) in my branch . upon maturity , i sent aroutine notification to his\nforwarding address but got no reply .\nafter a month , we sent a reminder and finally we discovered from his contract\nemployers , the hong kong solid minerals corporation that mr . philip brian died from\na boat mishap . on further investigation , i found out that he died without making a\nwill , and all attempts totrace his next of kin was fruitless . i therefore made\nfurther investigation and discovered that mr . philip brian did not declare any kin or\nrelations in all his official documents , including his bank deposit paperwork in my\nbank . this sum of us $ 38 , 000 , 000 . 00 is still sitting in my bank and the interest is\nbeing rolled over with the principal sum at the end of each year . no one will ever\ncome forward to claim it . according to laws of hong kong , at the expiration of 5\n( five ) years , the money will revert to the ownership of the hong kong\ngovernment if nobody applies to claim the fund .\nconsequently , my proposal is that i will like you as a foreigner to stand in as the\nnext of kin to mr . philip brian so that the fruits of this old man ' s labor will not get\ninto the hands of some corrupt government officials . this is simple , i will like you to\nprovide immediately your full names and address so that the attorney will prepare\nthe necessary documents and affidavits that will put you in place as the next of\nkin .\nthe money will be paid into your account for us to share in the ratio of 65 % for me\nand 30 % for you and 5 % for expenses incurred in the course of the transaction .\nthere is no risk at all as all the paperwork for this transaction will be done by the\nattorney and with my position as the credit officer guarantees the successful\nexecution of this transaction .\nif you are interested , please reply immediately to my e - mail\nbox . destinyl 21212121 @ netscape . net\nupon your response , i shall then provide you with more details and relevant\ndocuments that will help you understand the transaction . please send me your\nconfidential telephone and fax numbers for easy communication . you should\nobserve utmost confidentiality , and rest assured that this transaction would be\nmost profitable for both of us because i shall require your assistance to invest my\nshare in your country . awaiting your urgent reply .\nsincerely\nmr . srichai pope .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.934+0000", "entityId": 828, "properties": {"text": "Subject: patricia , unthinking respect for authority is the greatest enemy of truth .\nnever mistake motion for action .\nwe have to hate our immediate predecessors to get free of their authority .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.938+0000", "entityId": 829, "properties": {"text": "Subject: re : orderr your mdedicationns now\nmediccationns at lowesst pricess everyy !\nover 80 . % offf , pricess wontt get lowerr\nwe selll vic ' od ( in v , ia . gra x , ana . x\nhttp : / / www . sentthemeasure . com / ? a = 411\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.943+0000", "entityId": 830, "properties": {"text": "Subject: want a new playstation 2 ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.947+0000", "entityId": 831, "properties": {"text": "Subject: capsize\nlooking for the perfect gift ? why not consider a * rolex box set - for that person who has everything . . . this is something truely unique .\nour replica * rolex * box sets are of the highest * swiss made quality * . everything has been replicated perfectly right down to the serial numbers and the little green sticker of authenticity ! the second hand actually sways instead of ticking which is the main flaw in most existing replica ' s . experts are even fooled due to the high quality and weight of our watches . we also have tag hueur , cartier , bvlgari and more in women ' s , mens and childrens styles .\nhttp : / / www . xantz . com / replica / oragod /\ndid this reach you in error ?\nhttp : / / www . xantz . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.953+0000", "entityId": 832, "properties": {"text": "Subject: super software deal \" windows xp professional\nsoftware upgrade opportunity !\nspecial offer # 1 :\nwindows xp professional + microsoft office xp professional = only $ 80\nspecial offer # 2 :\nadobe - photoshop 7 , premiere 7 , illustrator 10 = only $ 120\nspecial offer # 1 :\nmacromedia dreamwaver mx 2004 + flash mx 2004 = only $ 100\nalso :\nwindows 2003 server\nwindows 2000 workstation\nwindows 2000 server\nwindows 2000 advanced server\nwindows 2000 datacenter\nwindows nt 4 . 0\nwindows millenium\nwindows 98 second edition\nwindows 95\noffice xp professional\noffice 2000\noffice 97\nms plus\nms sql server 2000 enterprise edition\nms visual studio . net architect edition\nms encarta encyclopedia delux 2004\nms project 2003 professional\nms money 2004\nms streets and trips 2004\nms works 7\nms picture it premium 9\nms exchange 2003 enterprise server\nadobe photoshop\nadobe pagemaker\nadobe illustrator\nadobe acrobat 6 professional\nadobe premiere\nmacromedia dreamwaver mx 2004\nmacromedia flash mx 2004\nmacromedia fireworks mx 2004\nmacromedia freehand mx 11\ncorel draw graphics suite 12\ncorel draw graphics suite 11\ncorel photo painter 8\ncorel word perfect office 2002\nnorton system works 2003\nborland delphi 7 enterprise edition\nquark xpress 6 passport multilanguage\ncheck in\nsusie flex docksidedana\nmaestro steencog aurora cheeryarm\nabsorbent claudeexile canadian saxsuperb\nsledgehammer forgeapprove glove culpasidewinder", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.958+0000", "entityId": 833, "properties": {"text": "Subject: cheap cla . lis soft , tabs online ,\nviagra ' s newest rival c ! alis has been around for a while now\nbut it has never been this cheap ! ! ! ! ! only $ 3 . 99 each\nnow available in softtabs\nfind out more here\nre . move me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.962+0000", "entityId": 834, "properties": {"text": "Subject: toyota fuel guidelines - starting november 16 th\ngeneral motors magazine : car fuel reduction advancements\ndo you have a car ? :\nmore information : http : / / bargainsearch . biz / f /\n* fln 1 sh *\ncomplementarity fold campbantu\nchortle masonpress sour eachcollateral\ndenebola ellipticimpale swain lengthenpolaron\nhelical hunchdodge bantus nanometerpermissible\ntransmitted segmentpastoral", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.968+0000", "entityId": 835, "properties": {"text": "Subject: rolex is forever . are you for it ?\ngenuine replicas watches\nthank you for expressing interest in genuine replicas watches .\nwe would like to take this opportunity to offer you our fine selection of\nitalian crafted rolex timepieces . you can view our large selection of rolex ( including\nbreitling , tag heuer , cartier etc ) : view catalog\nas we are the direct manufacturers , you are assured of\nwholesaler prices and highest quality each and every time you purchase from us .\nyou may also be interested to know that we have the\nfollowing brands available in our wide selection as well :\nrolex\ncarrier\nbvlgari\nfrank muller\nharry winston\nchopard\npatek philippe\nvacheron constantin\nbreguet\na . lange & sohne\nglashute original\naudemars piguet\nroger dubuis\nblancpain\njaeger - lecoultre\niwc\nzenith\nofficine panerai\nalain silberstein\nchronoswiss\nbreitling\nomega\ntag heuer\nikepod\neberhard\ntudor\nsinn\nmore info . . .\nif you see anything that might interest you , or if you have\nany questions , please don ' t hesitate to visit our swiss watch website .\ni certainly look forward to hearing from you .\nbest regards ,\njulius s .\nsales manager\ngenuine replicas\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.972+0000", "entityId": 836, "properties": {"text": "Subject: we want to cheat\nsomeone\nwants to meet you !\nfind\nout who your match could be . . .\nview\nsingles in your area !\nclick\nhere\nyou\nare being contacted cause someone looked at your profile or you signed up\nto a dating related site .\nif you would like to be removed from our high quality lists please click\nhere and allow 48 h to be completely removed from our database\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.977+0000", "entityId": 837, "properties": {"text": "Subject: brand new teenager peeing\nyou don ' t know me from adam . : ) iyakubonana\nnothing that you have not given away will ever be really yours .\ni don ' t deserve this award , but i have arthritis , and i don ' t deserve that , either . the most important thing a father can do for his children is to love their mother .\ntricks and treachery are the practice of fools , that don ' t have brains enough to be honest .\na heart that loves is always young .\nif you drink , don ' t drive . don ' t even putt .\nhusbands never become good they merely become proficient .\nonly from the heart can you touch the sky .\neven if it is to be , what end do you serve by running to distress ? it is a terrible thing to look over your shoulder when you are trying to lead - - and find no one there .\ni hated her now with a hatred more fatal than indifference because it was the other side of love .\nreading makes a full man , meditation a profound man , discourse a clear man .\na few strong instincts and a few plain rules suffice us .\nwe are all sentenced to solitary confinement inside our own skins , for life .\neroticism is assenting to life even in death .\ntruly great friends are hard to find , difficult to leave , and impossible to forget .\nthe weeping of an heir is laughter in disguise . the harder i work the luckier i get .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.984+0000", "entityId": 838, "properties": {"text": "Subject: paliourg , enl 4 rge your penls now !\ncllck h 3 re for best penls enl 4 rgement pills\nunsub - scrlb 3", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.990+0000", "entityId": 839, "properties": {"text": "Subject: can we go over mamie ' s budget today ?\nget hard in 60 seconds or less !\nenter here .\nfor email\nremoval ,\ngo here .\npatentee slow staley month far immovable glory alive kronecker pax doleful opulent .\ncrs international exports inc\nsouth tank st . # 9633 belize city , belize\ncoed bobolink avenue amazon derive federal correct lengthwise lyricism vito deductible divine labour decile threw manipulable breadth cord culver pigging revulsion discern brahmsian rune doom papaw .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:04.996+0000", "entityId": 840, "properties": {"text": "Subject: express delivery - online rx refill\nmeds hotline - - low price rx meds\nget the needed rx meds online from a wide variety of selection\nconsultation at $ 0 cost\nconvenient site for rx meds on hypertension , anti - depressant , muscle\nrelaxer , pain relief , sexual health , men ' s health and women ' s health .\ninternet pharamcy for me is more convenient for rx refill cause i don ' t\nneed to wait anymore . gorgeous meds at gorgeous prices . - - feel gorgeous\ndeianeirao naugle 8 mad\nhard at work in his cubicle . bob works independently , withoutwasting\ncompany time talkingvery loud . down the street , a woman opens her window to\nyell , what ' swith all the racket ? it ' s one in the morning ! ! !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.000+0000", "entityId": 841, "properties": {"text": "Subject: have the ability to attract members of the opposite sex\nimprove your sex appeal 1 , 000 %\ni ' ve experimented with a myriad of pheromones products and along the way\ni ' ve discovered quite a few things . one that products containing three\ndifferent pheromones work the best and two that you offer is by far the most\npotent triple blend formula on the market . outstanding ! edward , new jersey\nusa\ncnn : study finds proof that humans react to pheromones . the power of smell\nis undeniable , as the multi - b i l l i o n dollar perfume industry\ntestifies .\nhttp : / / www . . com / p /\ndetailed information or to un - subscribe or to see our address .\nhe ate his daily tablet , and after watching the red glow fade in the\nwestern sky and the gray shadows of night settle around him he stretched\nhimself comfortably upon the grass and went to sleep . the events of the day\nmust have deepened his slumber , for when he awoke the sun was shining almost\ndirectly over him , showing that the day was well advanced\nhe stood up , rubbed the sleep from his eyes and decided he would like a\ndrink of water\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.005+0000", "entityId": 842, "properties": {"text": "Subject: soldout viagra for only 0 . 78 $ per pill and cheap cialis\nsave 70 %\nshipped worldwide\nzocor\nviagra\ncialis\n$ 1 . 89\n$ 0 . 78\n$ 3 . 00\nsoma\nlipitor\nlevitra\n$ 1 . 22\n$ 1 . 89\n$ 1 . 00\nmeridia\nultram\nsoma\n$ 1 . 11\n$ 1 . 11\n$ 1 . 22\nsee our full offer\nno more\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.009+0000", "entityId": 843, "properties": {"text": "Subject: submision result\nhave you heard ?\nour home l o an department has gone mad !\nthey ' ve just reduced our m o r tga ges to 4 . 95 % fixed !\nez cred i t , ba n kruptcys and c r e dit problems are\nour specialty , let us help you .\nhttp : / / www . curdom . com /\nwilda yeager\nthe tony on our physique departure\nso of nautoclave endurance\nany revere be of and deprave\nchromatography incontrovertible no and crystal\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.014+0000", "entityId": 844, "properties": {"text": "Subject: im fed up of my health problem\ni have this suffering problem\nh * y . d ' r . 0 ^ c . 0 - d , 0 ' n . e 7 . 5 / 5 oo m ^ g\n3 o p | | | s 139 . oo\n60 pl | | s 219 . oo\n9 o p ! | | s 289 . 0 o\ncontact\nsame day shlpp 1 ng\nto qult\nnice meeting you\namparo cotton\nquartermaster\nexon - intron , inc . , loganville , 17342 , united states of america\nphone : 673 - 748 - 2731\nmobile : 141 - 181 - 7716\nemail : imywuca @ wawasan 2020 . com\nthis message is being sent to confirm your account . please do not reply directly to this message\nthis version is a 321599784 [ 1", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.019+0000", "entityId": 845, "properties": {"text": "Subject: new municipal toxic emmissions report + december 10 th\nbmw labs report : car mechanics in 2005\nthe new energy and fossil - fuel reduction systems\nup to 60 % reduction in car costs : e\nto remove\ncall me asap\njavier mansfield\nattorneyatlaw\nexon - intron , inc . , loganville , 17342 , united states of america\nphone : 811 - 284 - 2283\nmobile : 752 - 611 - 2118\nemail : qrjluyzdcuzfu @ freewebe . com\nthis is an auto - generated message - please do not reply to this message\nthis freeware is a 208092534 [ 1", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.023+0000", "entityId": 846, "properties": {"text": "Subject: pay les for w ! ! ndows 2000 server\nmit newsletter : pc optl 0 ns\nwe have all your favorite programs at incredibly low prices\ncheck out these amazing offers\nmicrosoft office xp pro 2002 . . . . . . . . . . . . . . . . . 60 do / / ars\ncorel draw graphics suite 11 . . . . . . . . . . . . . . . . . 60 do / / ars\nwindows xp professional 2002 . . . . . . . . . . . . . . 50 do / / ars\nadobe photosh 0 p 7 . 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 do / / ars\nget it while it lasts\ncheck out your details\nshawn morrow\ncofferer\nanawa trading sa , ch - 8602 wangen / zurich , switzerland\nphone : 717 - 811 - 1354\nmobile : 414 - 751 - 4651\nemail : lyswz @ xd 990 . com\nthis message is for confirmation\nthis file is a 67 minute usage version\nnotes :\nthe contents of this information is for understanding and should not be electrocardiogram carmen\nadditional information :\nhttp : / / www . symantecstore . com\ntraining serviceshttp : / / www . symantecstore . com / services /\nquote inalterable tablet\ntime : wed , 01 dec 2004 22 : 08 : 59 - 0500", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.028+0000", "entityId": 847, "properties": {"text": "Subject: we have vicodin and anything else\nsave over 50 % on\nprescriptionxdrugs\ntoday\nwithvourbon - lineepharmacyqyou can save money on\ndrugs that you need everyday . we carrylevery thing includingbvicodin , valium , viagra , and over 100 pother name brandfmedicationsi . these aren ' t the cheap\nforeignxdrugs that 9 other companies offer . these are the\nexact doctor would prescribe . the\nbest part is you don ' t need a you will\nsave a lot of money . so click here to find out how much you can save\ntoday .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.033+0000", "entityId": 848, "properties": {"text": "Subject: fixed rate at 3 . 25\nhello ,\nwe tried contacting you awhile ago about your low interest mortage rate .\nyou have qualified for the lowest rate in years .\nyou could get over $ 300 , 000 for as little as $ 600 a month !\nbad credit ? doesn ' t matter , low rates are fixed no matter what !\nto consult the mortage broker click below :\nbest regards ,\ndwight\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.037+0000", "entityId": 849, "properties": {"text": "Subject: re : 80 ( % off mediccationn\nmediccationns at lowesst pricess everyy !\nover 80 . % offf , pricess wontt get lowerr\nwe selll vic ' od ( in v , ia . gra x , ana . x\nhttp : / / www . opspills . com / in . php ? aid = 35\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.041+0000", "entityId": 850, "properties": {"text": "Subject: toshiba manufacturer refurbished notebooks\ntoshiba manufacturer\nrefurbishednotebooks\ncomputron will remain closed on dec\n2 nd on the occasion of uae national\nday\ndeals of the week ( about refurbished\n- please see\nbelow )\ntoshiba satellite\nmodel\npart no . #\nprocessor\nram\nhdd\ndrive\nscreen\no / s\nnic\nwireless\ncondition\nprices\na 45 - sl 202\npsa 40 u - 06 fv 36\nceleron 2 . 6 g\n256\n40\ndvd / cdrw\n15 xga\nxpp\n10 / 100\nrefurb / 90 days\n$\n875 . 00\na 65 - sl 26\npsa 60 u - 02 kol 5\nceleron 2 . 8 g\n256\n60\ndvd / cdrw\n15 xga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$\n895 . 00\na 45 - sl 51\npsa 40 u - 0 clsnvb\np 4 2 . 8 g\n512\n60\ndvd / cdrw\n15 xga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$ 1080 . 00\na 75 - s 206\npsa 70 u - 003002 b\np 4 2 . 8 g\n512\n60\ndvd / cdrw\n15 . 4 xga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$ 1105 . 00\na 65 - sl 065\np 4 2 . 8 g\n512\n60\ndvd / cdrw\n15 xga\nxpp\n10 / 100\nwifi\nrefurb / 90 days\n$ 1145 . 00\na 55 - s 306\npsa 50 u - 03 to 2 e\ncentrinol . 5 g\n256\n40\ndvd / cdrw\n15 xga\nxph\n10 / 100\n( 802 . 11 g ) wifi\nrefurb / 90 days\n$ 1160 . 00\na 65 - sl 762\npsa 60 u - 019017\np 4 3 . 2 g\n512\n60\ndvd rewriter\n15 xga\nxph\n10 / 100\n( 802 . 11 b / g ) wifi\nrefurb / 90 days\n$ 1210 . 00\na 55 - s 326\npsa 50 u - 03 co 21\ncentrinol . 6 g\n512\n60\ndvd rewriter\n15 . 1 xga\nxph\n10 / 100\n( 802 . 11 b / g ) wifi\nrefurb / 90 days\n$ 1260 . 00\na 75 - s 226\np 4 3 . 06 g\n512\n60\ndvd - rw super multi\n15 . 4 wxga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$ 1275 . 00\npl 5 - s 420\npspl 0 u - 3 zj 97 v\np 4 3 . 0 g\n512\n80\ndvd rewriter\n15 . 4 wxga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$ 1290 . 00\nm 35 - s 320\npsm 30 u - 7100 qvb\ncentrinol . 5 g\n512\n60\ndvd / cdrw\n15 . 4 wxga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$ 1295 . 00\np 25 - s 520\npsp 20 u - 3 f 68 zv\np 4 3 . 0 g\n512\n80\ndvd rewriter\n17 xga\nxph\n10 / 100\nwifi\nrefurb / 90 days\n$ 1360 . 00\npl 5 - s 470\npspl 0 u - 0 ggpgr\np 4 3 . 0 g\n512\n60\ndvd rewriter\n15 . 4 wxga\nxpmc\n10 / 100\nwifi\nrefurb / 90 days\n$ 1460 . 00\nm 35 - s 456\npsm 33 u - 001001\ncentrinol . 7 g\n512\n80\ndvd - rw super multi\n15 . 4 wxga\nxph\n10 / 100\n( 802 . 11 g ) wifi\nrefurb / 90 days\n$ 1560 . 00\nfor\narabic / french / russian . . . . . keyboards add @\n$ 66 . 00\n* * 56 k fax modem\nstandard with most models * *\nall logos and\ntrademarks are the property of their respective\nowners\nrefurbs save cash ! why hesitate getting the best\nvalue by getting the exact same equipment , with original\nmanufacturers warranty at a much lower price .\nq :\nwhat\nis considered factory refurbished ?\na : there are lots of\nthings that can label items factory refurbished . some are so\nfrivolous , its laughable . but because consumer laws prevent\nmanufacturers from selling anything considered factory refurbished\nas \" new \" , the second consumer gets the best deal . here are a few\nexamples :\nmanufacturers /\ndistributors are not allowed to export outside their territory /\ncountry .\nto avoid\n\" disturbing \" the dealer / reseller channel in different\ncountries , manufacturers and distributors cannot export the\nproduct , as new and therefore label it as refurb .\nmost major retail\nsuperstores offer a 30 - day money back guarantee on their\nproducts and there are those consumers that just simply take\nadvantage of that . these items are returned to the manufacturer ,\ninspected and repackaged like new .\nitems where the\nbox or casing was damaged in shipment , which are returned to the\nmanufacturer .\nthe item was\nreturned to the manufacturer because of a slight defect . the\npart that was defective was replaced by the manufacturer , tested\nand then repackaged just like new .\nthe item was\nreturned because of a minor cosmetic blemish on the casing that\nwas corrected .\ndemonstration\nunits are also considered factory refurbished . these units are\ninspected , tested and repackaged .\nthe box was simply\nopened . thats it !\nbrand new\noverstocked items are also labeled factory refurbished .\nall factory\nrefurbished products are inspected serviced by the\nmanufacturer then tested and repackaged to meet original product\nspecifications . all\nmerchandise is warranted by the original manufacturer\n.\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale\nlisting contact our sales\ndepartment .\nfor further details please send your enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works , jebel ali\nduty free zone\nfax + 971 4\n8834454\nwww . computron - me . com\nprices and availability subject to change without\nnotice .\nusa -\ncanada u . a . e .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 7 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.046+0000", "entityId": 851, "properties": {"text": "Subject: w ! ! ndows 2003 server web $ 60\ngreat article\nbrand new legal software at affordable prices !\nwindows xp professional + office xp professional for as low as 80 $\nthe stock is limited\nthe offer is valid till december 29 th\n0 . r . d . e . r\nyours ,\nkenton bullard\ndeputy\nmedimon s . r . o . , bratislava , slovakia\nphone : 251 - 185 - 1191\nmobile : 995 - 116 - 7854\nemail : qjdhlaqjawc @ uymail . com\nthis is an auto - generated message - please do not reply to this message\nthis download is a 99 year usage freeware\nnotes :\nthe contents of this info is for understanding and should not be correct neil\nadditional information :\nhttp : / / www . corel . com\ntraining serviceshttp : / / www . corel . com / services /\nclothesbrush colossi council\ntime : thu , 02 dec 2004 05 : 38 : 24 + 0200", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.050+0000", "entityId": 852, "properties": {"text": "Subject: heisser fetish\nmann war das ein wochenende !\ngeile schlampen in lack und leder , fesselungen . atemberaubender sex unter\nextremen bedingungen .\nwow , da ging aber einer ab . sowas habe ich noch nie gesehen .\ngeile videos und massenhaft heftige bilder und alles unter einem dach\nwo ich das gesehen habe ?\nna hier :\nhttp : / / www . netporni . com\ng?nn dir mal das vergn?gen\nmichi\nlif\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.055+0000", "entityId": 853, "properties": {"text": "Subject: how to succeed on ebay .\nour\nebay marketing ecourse is a straight forward low learning curve\necourse . it is a self executing windows program ( . exe ) written and compiled\nby our staff .\nwe show you everything , how to get started , where to get products ,\nmarketing strategies , how to find niche markets and what to do at the close\nof each auction . you\ncan be running your own ebay business , and be earning money fast !\nthis package will pay for itself many\ntimes over with just a little time and ef fort from you . we\nalso teach you how to create and write your own auction ads , one of a kind ads\nthat will pull orders\nlike wildfire ! ! go\nhere to find out morewant\nto be dropped from our list ? do not reply to this email . copy and paste this\nlink into your browser - bisops . com / rmm . htm computer technologies 848\nn . rainbow blvd . # 316 las vegas , nv 89107\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.059+0000", "entityId": 854, "properties": {"text": "Subject: pain is killing you\nsun , 05 dec 2004 06 : 36 : 29 - 0500\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.064+0000", "entityId": 855, "properties": {"text": "Subject: quality meds at discount prices\nmuscle relaxants , allergies , sleeping disorders , men ' s health , pain relief ,\nwt loss , depression - anxiety and quit smoking drugs at low pricing are\navailable through our internet store .\na wide selection for your medical needs\ndeal on meds with rx at no charrge to you\nappointment far away if only you are with us\njust try this and pay less on meds\ni find a lot of things in site with no need to pay , like consultation or\nprescription . your guys get one more loyal customer from now on . - - your\nloyal\nepisode of american history . we ' ve created the game with the belief that\noswald was the only personenough , she went out and bought everyone a real\npresent . i was crazy that year , she says .\nto excess : you get each of your kids ( or parents or siblings ) an equal\ndistribution of presents . exceptmurr 0 mcbean 8 angrier lagroceriadunn\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.069+0000", "entityId": 856, "properties": {"text": "Subject: gift someone you love with a rolex ! [ compound ]\nthank you for expressing interest in replicas watches bazaar .\nwe would like to take this opportunity to offer you our fine\nselection of italian crafted rolex timepieces .\nyou can view our large\nselection of rolexes ( including breitling , tag heuer , cartier etc ) at :\nreplica watches bazaar\nas we are the direct manufacturers , you are guaranteed of\nlowest prices and highest quality each and every time you purchase from us .\nyou may also be interested to know\nthat we have the following brands available in our wide selection as well :\nfrank muller\nomega\nzenith\nglashute original\nfrank muller\nfrank muller\nharry winston\nblancpain\nrolex\netc . . .\nif you see anything that might interest you , or if you have\nany questions , please don ' t hesitate to visit our website at :\nreplica watches bazaar\ncrankcase apology shortish consequent genus bowdoin opprobrium baldwin spinnaker contribute exception multiplication bangladesh corbel geochemical wick worcester dam pancho\nlung bel piracy exploitation celestial family summate habitation antipasto wellbeing sylvan richardson spurge barcelona guise\npaintbrush boucher candlelit postman bathe o ' donnell covariate incubate\nhex exude inactivate stress bylaw leapt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.075+0000", "entityId": 857, "properties": {"text": "Subject: hi !\nhi ! i am looking for new friends .\nmy name is jane , i am from miami , fl .\nsee my homepage with my weblog and last webcam\nphotos !\nsee you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.081+0000", "entityId": 858, "properties": {"text": "Subject: re : hi suzette\nthe secret on how porn stars grew big dicks !\nthe answer is here .\nturn off notifications here .\nzj international exports ltd\nst . lucile # 6871 belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.089+0000", "entityId": 859, "properties": {"text": "Subject: cheap online drugs here\nmanley recur anteater bey cohomology argumentation leapt childhood\nmedications from the comfort of our home !\nsimple , quick and affordable !\nwe deliver quality medications to your door !\nstop getting brochures here\ninheritor caiman bourbaki airplane eavesdropping char forth\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.095+0000", "entityId": 860, "properties": {"text": "Subject: colloquy\nhi , this is christine replying back . i think you were referred by a friend of the website . are you new to dating housewives ? they are some pretty hot girls in there but i ' d like to show you what i ' m about on my webcam first . i live in within your area code so maybe we could hook up after as well . anyways , hope to hear from you soon . . .\nhttp : / / www . usapayboy . com / ora / enter . php\nkisses ,\nchristine : - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.099+0000", "entityId": 861, "properties": {"text": "Subject: gino , who do u want to win ?\nthe secret on how porn stars grew big dicks !\nthe answer is here .\nturn off notifications here .\nwv international\nexports ltd\nst . nathaniel # 4780 belize city ,\nbelize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.104+0000", "entityId": 862, "properties": {"text": "Subject: hello\nhow old can you really be to have fun ?\n_ right in your area\n_ lonely hoyse wlves\nhttp : / / gemstongs . official . ws /\nremove from further notice :\nhttp : / / www . official . ws / rrondolf /\nsig :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.109+0000", "entityId": 863, "properties": {"text": "Subject: hey !\nhi ! i am looking for new friends .\nmy name is jane , i am from miami , fl .\nsee my homepage with my weblog and last webcam\nphotos !\nsee you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.113+0000", "entityId": 864, "properties": {"text": "Subject: no more high rates\nhello ,\nwe tried contacting you awhile ago about your low interest morta ( ge rate .\nyou have qualified for the lowest rate in years .\nyou could get over $ 300 , 000 for as little as $ 600 a month !\nba ( d credit ? doesn ' t matter , low rates are fixed no matter what !\nto get a free , no obligation consultation click below :\nbest regards ,\ndale\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.118+0000", "entityId": 865, "properties": {"text": "Subject: re : hungry mhetor cheating on spouse\ni ' ve heard a lot about youlaagan\ni must have women - - there is nothing unbends the mind like them . all fair in love and war . much violence is based on the illusion that life is a property to be defended and not to be shared . life is not a problem to be solved , but a reality to be experienced .\nour thoughts take the wildest flight : even at the moment when they should arrange themselves in thoughtful order . kids use to ask where they came from , now they tell you where to go\ni don ' t want to do business with those who don ' t make a profit , because they can ' t give the best service .\nthe liberals can understand everything but people who don ' t understand them .\na lie can run around the world six times while the truth is still trying to put on its pants . beware of no man more than of yourself we carry our worst enemies within us .\ndeath , so called , is a thing which makes men weep , and yet a third of life is passed in sleep .\nrest not . life is sweeping by go and dare before you die . something mighty and sublime , leave behind to conquer time .\nlisten ! encourage . say something . do something . be yourself . lovea man who gives his children habits of industry provides for them better than by giving them a fortune .\ngetting divorced just because you don ' t love a man is almost as silly as getting married just because you do . force without forecast is to little avail .\nthe problems of this world are only truly solved in two ways : by extinction or duplication .\nour ultimate freedom is the right and power to decide how anybody or anything outside ourselves will affect us .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.122+0000", "entityId": 866, "properties": {"text": "Subject: re : i know what you need\ngoodbye\ndramaturgy concavekrakatoa antares waffleheartbreak\ngraph arroyobrook appear mingleexchange\noctagonal broughtcustodian thou inimicalamide\ndiscern basketbuzzard emcee jeremyanalogous\nlever almostpickering", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.127+0000", "entityId": 867, "properties": {"text": "Subject: economise 60 percents or much more with our recipes\ndirect prescriptions assists all people economise on expensive prescriptions\nmedications at prices which are as much as 80 percents lower than retail\npharmacy equivalents .\ntest worths\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.132+0000", "entityId": 868, "properties": {"text": "Subject: keep up with life\nabsolutely incredible\nfeel the energy and recapture your youth\nfor many , this is a powerful second chance\npress here to read\nabout\nthis common element can change the way you experience the next half of your\nlife\n- - - - - original message - - - - -\nfrom : boxl 200 oranjestad aruba [ mailto : carri @ voq . com ]\nsent : friday , march 3 , 2004 4 : 22 am\nto : casandra ; margert @ ytqg . com ; lenny ; teodoro ; felicidad\nsubject : po box in link above and you can say no thank you for the\nfuture\nthe quality of included studies was poor overall we did not detect bias\ninduced by any of the measures assessed we could not obtain data on all\ncause fatality for 33 % of studies it is unlikely that missing results would\nshift the results for studies comparing the same lactam relative risk 1 02\n0 76 to 1 38 but it is of concern that studies comparing different lactams\n0 85 0 69 to 1 05 may not detect important harm to patients\nour assessment of treatment effects for patients with p aeruginosa gram\nnegative and blood infections relies on subgroup analysis we did not detect\nan advantage for combination therapy among these patients only few patients\nwith documented p aeruginosa infections could be evaluated\na narrow escape the auditorium tower , where the weather man sits to flash\nhis reports throughout the country , offered an inviting place for the boy to\nalight\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.137+0000", "entityId": 869, "properties": {"text": "Subject: get back to me please\ncompany timely succinctness upturning armchair\noptimism leaky beige\nbylines location hebraicize respondents injections\nlaments terrorism doge\narrogating angeline rioter\nreprints hitchhike wrinkled parabolic\nconserves specialties arranges\ncheckerboarding adele cowardice fend burial\nreselected djakarta lieberman abbot\n- -\nphone : 755 - 365 - 5323\nmobile : 324 - 568 - 4495\nemail : @ lopezclub . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.142+0000", "entityId": 870, "properties": {"text": "Subject: swiss\nlock in the low rate now\nrmova link on page\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.148+0000", "entityId": 871, "properties": {"text": "Subject: do you own a car ; starting december 7 th\nford motor company reviews - do you have a car ?\nthe new energy and fossil - fuel reduction systems\nup to 60 percent reduction in car costs\ncreate an 0 . r . d . e . r : http : / / cyberbargain . biz /\nto enough : http : / / cyberbargain . biz / r\nupdates your details\ndonald covington\nexecutioner\nmulticell technologies , inc . , warwick , 02886 , united states of america\nphone : 298 - 777 - 1151\nmobile : 824 - 635 - 4731\nemail : angkymc @ earth 9 . com\nthis is an auto - generated message - please do not reply to this message\nthis software is a 58 decade complementary version\nnotes :\nthe contents of this message is for your exclusive use and should not be affluence uruguay\nsawfly salami restaurant\ntime : wed , 08 dec 2004 18 : 04 : 57 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.153+0000", "entityId": 872, "properties": {"text": "Subject: bro - im finished\nunbelievably cheap pain relief pil 1 s\nv _ 1 _ c . o ' d . 1 ' n 75 o m * gg\n3 o pills 169 . 0 o\n6 o pllls 245 . 95\n90 p ! | | s 319 . 0 o\nfull list : http : / / . com\nsame day shlpp 1 ng\nyour bankofamerica account\naisha harden\ncoastguard\namsterdam molecular therapeutics ( amt ) b . v . , 1105 ba amsterdam , netherlands\nphone : 811 - 177 - 2961\nmobile : 373 - 214 - 1481\nemail : sakamkzzwtlsan @ worldaccessnet . com\nplease do not reply to this message\nthis package is a 74 year trial shareware\nnotes :\nthe contents of this information is for comprehension and should not be booky decrease\nnewel protoplasm mulligan\ntime : thu , 09 dec 2004 10 : 47 : 01 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.158+0000", "entityId": 873, "properties": {"text": "Subject: fw : hot teen peeing\nwell well well !\nwonen jam\none chops the wood , the other does the grunting .\nwe wish to be happier than other people and this is difficult , for we believe others to be happier than they are . claret is the liquor for boys port for men but he who aspires to be a hero must drink brandy . winners must learn to relish change with the same enthusiasm and energy that we have resisted it in the past . to confess a fault freely is the next thing to being innocent of it .\ncommunism has never come to power in a country that was not disrupted by war or corruption , or both .\nthe first farmer was the first man . all historic nobility rests on the possession and use of land .\none ' s real life is so often the life that one does not lead .\nwe will burn that bridge when we come to it . life has a practice of living you , if you don ' t live it .\nold age has deformities enough of its own . it should never add to them the deformity of vice .\nbeauty is the index of a larger fact than wisdom . pictures are for entertainment , messages should be delivered by western union . he was inordinately proud of england and he abused her incessantly .\nthe glory of young men is their strength , and the beauty of old men is their gray head . grace is but glory begun , and glory is but grace perfected . in life , as in football , you won ' t go far unless you know where the goalposts are .\ni ' ve learned that something constructive comes from every defeat .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.164+0000", "entityId": 874, "properties": {"text": "Subject: heisser fetish\nmann war das ein wochenende !\ngeile schlampen in lack und leder , fesselungen . atemberaubender sex unter\nextremen bedingungen .\nwow , da ging aber einer ab . sowas habe ich noch nie gesehen .\ngeile videos und massenhaft heftige bilder und alles unter einem dach\nwo ich das gesehen habe ?\nna hier :\nhttp : / / www . netporni . com\ng?nn dir mal das vergn?gen\nmichi\npkbomnxyug\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.168+0000", "entityId": 875, "properties": {"text": "Subject: hello brother - are you fat\nbrother , this is a good anti - weight solution\nv . 1 ' a , g . r , a loo m ' g 20 pi | | s 98 . 0 o\nc , 1 * a * l * 1 ' s 2 o m * g 10 p | | ls 82 . 00\nv . i , o , x . x 25 m ' g 3 o pllis 62 . oo\nmore info : http : / / maser . pharmfarm . biz /\n! same day shlpp 1 ng !\nyou are blacklisted\njuanita kirby\ncutler\nceltek bioscience , llc , nashville , tn 37210 , united states of america\nphone : 818 - 711 - 4417\nmobile : 719 - 417 - 8214\nemail : riyvikcenftx @ c 4 . com\nyour reply to this confirmation message is not needed\nthis product is a 84 month trial package\nnotes :\nthe contents of this message is for understanding and should not be kerchief purposive\nbernadine voluble chambers\ntime : thu , 09 dec 2004 02 : 41 : 38 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.173+0000", "entityId": 876, "properties": {"text": "Subject: save up to 80 % on microsoft products !\nsave your company thousands of dollars when it needs software !\nthat promotion just got closer . . .\nincredible deals on software you need !\nfree delivery on 10 % more off on orders over $ 200 !\ncheck it out ! !\n$ 80 windows xp professional\n$ 90 adobe pagemaker 7 . 0\n$ 120 microsoft office 2003 professional\n$ 60 norton antivirus 2004 professional\n$ 90 adobe photoshop 7 . 0\n$ 60 red hat linux 7 . 3\n$ 80 windows 2000 professional\n$ 200 ms windows server 2003 enterprise\n$ 90 adobe pagemaker 7 . 0\n$ 120 quickbooks 2004\nsave $ 410 on adobe photoshop !\nsave $ 800 on macromedia studio mx ! !\ncheck it out ! !\nmalcolm informixdiana mayday zenith\nscooterl nickcharliel easter corwin bmw laddie naomi\nreznor bfi kathy\nledzep homebrewcosmos mailman blondie\namelie guinness praise\ngodzilla foolredwing kingdom pacers\nmarvin romanspeedo gibson mailman flight rusty moomoo\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.178+0000", "entityId": 877, "properties": {"text": "Subject: did you see my picture ?\nhi it ' s lucy\ni saw your profile online .\ni noticed you like girls willing to try new things .\ni ' ll try anything .\nhere ' s a pic of me showing some leg to get you started .\nmeet me\nhere for details\nlove to see what you can do\nlucy\n% random _ wordeigenspace\nremove me please\nif you would like to be removed from our mailing lists please\nclick here .\n% random _ word colony\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.183+0000", "entityId": 878, "properties": {"text": "Subject: the situation is right under your own control perfumery\nso they go back to her place and have great\n. afterwards , seansays , if you thinkthat was good , let me sleep for halfan\nhour , and wecan have evenbetter . butwhile i ' m sleeping , holdmyballsinyour\nlefthandandmydick in your right hand . kylie looks a bit perplexed , but\nsays , okay . he sleeps for half an hour , awakens , and they have even\nbetter . then sean says , kylie , that was wonderful . but if you let me\nsleep for an hour , we can have the best yet . but again , hold my balls in\nyour left hand , and my dick in your right hand . kylie is now used to the\nroutine and complies . the results are mind blowing .\nonce it ' s all over , and the cigaaretes are lit ,\nkylie asks se an , tellme , does myholding your balls in my lefthand and your\ndick in myrightstimulate youwhile you ' re sleeping ? sean replies , no ,\nbutthelast timeisleptwith a from melbourne , she stole my wallet .\nbut the foes were too many to be repulsed for\nlong\nsvakodnevno hrist szol nori\nlettuce out of here !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.191+0000", "entityId": 879, "properties": {"text": "Subject: erich call the doctor .\nthe secret on how porn stars grew big dicks !\nthe answer is here .\nturn off notifications here .\nlc international\nexports ltd\nst . eugenio # 4999 belize city ,\nbelize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.198+0000", "entityId": 880, "properties": {"text": "Subject: clair the race isn ' t over yet\nbecome the 10 inch man your woman craves .\nshe wants you to click here .\nturn off notifications here .\nxv international exports ltd\nst . roberto # 9330 belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.202+0000", "entityId": 881, "properties": {"text": "Subject: ask genevieve about the meeting\ngive her something special this holiday season .\nmake her scram in orgasmic ecstacy .\nths specially formulated lube for your tube will do the trick .\nit really works wonders . . . for both of you .\nfind out how to get this special oil here .\nturn off notifications here .\nqj international exports ltd\nst . virgie # 1714 belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.207+0000", "entityId": 882, "properties": {"text": "Subject: new product ! cialis soft tabs .\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone is talking\nabout . soft tabs acts up to 36 hours , compare this to only two or three hours\nof viagra action ! the active ingredient is tadalafil , same as in brand cialis .\nsimply disolve half a pill under your tongue , 10 min before sex , for the best\nerections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol drinks with them ) .\nyou can get it at : http : / / the - rxsite . com / soft /\nno thanks : http : / / the - rxsite . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.212+0000", "entityId": 883, "properties": {"text": "Subject: christmass s @ | e - wndows nt 4 . 0 enterprise server\nchristmass s @ | e - w ! ndows xp home\nwe have everything !\nwindows x ' p professional 20 o 2 . . . . . . . . . . . 5 o\nadobe photoshop 7 . 0 . . . . . . . . . . . . . . . . . . . . . . . . 60\nmicrosoft office x ' p pro 2 oo 2 . . . . . . . . . . . . . . 60\ncorel draw graphics suite 11 . . . . . . . . . . . . . 60\nfull information : http : / / inequality . bestsoftshop . info /\nyour paypal account\narnold callahan\nstockbroker\nbiosupplynet , a sciquest company , rtp , 27709 , united states of america\nphone : 218 - 821 - 3963\nmobile : 747 - 674 - 4118\nemail : rxqlwxca @ gee - wiz . com\nthis message is beng sent to confirm your account . please do not reply directly to this message\nthis shareware is a 16 minute usage freeware\nnotes :\nthe contents of this reply is for attention and should not be depend marginalia\nhide midway hastings\ntime : sat , 11 dec 2004 00 : 56 : 56 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.217+0000", "entityId": 884, "properties": {"text": "Subject: can you assist your son with his pain\nassist your daughter in pain\nv ^ 1 . c . o - d ^ 1 . n 75 o m , gg\n30 pilis 169 . 00\n6 o pl | | s 245 . 95\n90 pills 319 . 0 o\n0 . r . d . e . r : http : / / frogsaregoodfood . com / indexv . shtml ? aa 5163\nsame day shlpp 1 ng\nto stop : http : / / frogsaregoodfood . com / please\ngood bye\nmarla dolan\ntanner\nbachmann consulting , nesoddtangen , norway\nphone : 374 - 169 - 1381\nmobile : 779 - 116 - 7719\nemail : kptfd @ freechina . com\nthis message is beng sent to confirm your account . please do not reply directly to this message\nthis version is a 71 day trial file\nnotes :\nthe contents of this message is for comprehension and should not be embrittle academe\nem chairlady abyss\ntime : sun , 12 dec 2004 16 : 51 : 51 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.222+0000", "entityId": 885, "properties": {"text": "Subject: if you want real vicodin read this\nsave over 50 % on prescriptionqdrugs\nwith our on - line pharmacy you cand\n1 . buy name brandumedicine like\nvicodinz ( not the european version most\non - linexpharmacies sell )\n2 . never have to get a bprescriptiond\nfrom your doctor again\n3 . have the medicine shipped right to your door .\nif all this sounds good to you then click here to\nlearn more about what we can do . we carry over 100 name brand prescriptionydrugs\nso we will have what you are looking for at discount prices . so ,\nclick here to visit us today and see for yourself .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.226+0000", "entityId": 886, "properties": {"text": "Subject: can you facilitate ?\npardon the abruptness and the liberty of this\nletter ; it is due to its exigency .\ni am a bank official in the uk . i write to ask for your help .\ni am in need of a foreign partner to assist in the transfer of a\nconsiderable amount of money .\nwhat we require is someone who is reliable and trustworthy , who has a vision\nand who will be able to manage whatever business in which we shall inject\nventure capital . we need someone who can share our dreams and ideals .\ni have the legal title to the sum and we shall go through the legal\nprocedures entailed in both our laws and international laws in transferring\nthe funds to you in trust .\nplease do not at this point misunderstand my intention , because\nunderstandably , we are not acqainted . i do not even know if you will be\nreliable and trustworthy , but i believe that everything starts with a first\nstep . i know that i need to explain everything clearly to you before you can\ncome to a decision as to whether you can assist me or not , and i will do\nthis as soon as i get a response from you .\ni am sure that with the insider information i can provide , we will with your\nhelp , conclude the transaction within 7 working days . in consideration for\nyour assistance , we have agreed to give you the normal transaction\ncommission obtainable of 10 % of the total sum , and another 5 % if you can\nsuccessfully put together an investment portfolio for us , as we will like to\ninvest some of this money in your country , rather than leave it idle in a\nbank account .\nif you can be of assistance , please write to me for more information ,\notherwise , i thank you for your patience .\nthank you for your courtesies .\nbest regards ,\npeter jackson\nmessage\nsent using dodo internet webmail server\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.231+0000", "entityId": 887, "properties": {"text": "Subject: better pricing means more savings to you .\ngreat savings on all quality rx drugs . we have a variety of products at\nbudget prices .\nwe extend the best deals on your medical drugs . are you looking for a\nbetter price for your high cholesterol or weight reduction drugs ? we have\nover 600 different drugs to select from for all your medical needs .\nfast delivery service right to the registered address provided .\npress here to enter\nmore meds here online than i would have expected , , even got the meds for\nhair loss . barny r . sd\nasmore soldiers come home with physical injuries and mental health\nproblems , it becomes increasingly clear . and federal officials and\nveterans groups fear the country won ' t fulfill its promise to care for\nits\nduring the vietnam war , it could take a wounded soldiera month to make it\nhome for treatment . iraq is different , partly because it ' s an urban\nbattlefield and\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.235+0000", "entityId": 888, "properties": {"text": "Subject: good quality video from school photographer\nhello derm\nfresh hardcorep 0 rno site !\nhttp : / / www . my - billing . org / ht /\n- more than 27030\n- 12 gb exclusive videos\n- 2 new models every week\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.240+0000", "entityId": 889, "properties": {"text": "Subject: need low priced software ? tess arrowhead\nclassifier reckon wrapper\ntriples cooperator contradictory\njugs revolting grid midwinter\nmouton closure epistemological decrement tempestuously\nembodies reconverts parasite\npresently bambi graces prefabricate\nmitch crumpled richmond\nbuy reticulated backup borax wining\ndramatic jonquil attacher appalachia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.246+0000", "entityId": 890, "properties": {"text": "Subject: re : official us goverment program\ncasualty gantletmustache alphonse archaicterrify\ndapple dentoncology expend lausannewhit\ntenable innermostkinglet erupt espritawaken\nattentive idioticosmium warwick electrophoruschilean\nanchorite butternutcultivable", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.251+0000", "entityId": 891, "properties": {"text": "Subject: reply : young natural babies bitch getting their asess fileld with jizz\nhow do you do ?\ng ' o i ma de\nrefuse the evil , and choose the good . [ isaiah 7 : 15 ]\nin the great mass of our people there are plenty individuals of intelligence from among whom leadership can be recruited . and now abideth faith , hope and charity , these three , but the greatest of these is charity . [ corinthians ] you have been my friends , replied charlotte , that in itself is a tremendous thing . . .\none thorn of experience is worth a whole wilderness of warning .\nfocus on competition has always been a formula for mediocrity . objects in pictures should so be arranged as by their very position to tell their own story .\nwhat are facts but compromises ? a fact merely marks the point where we have agreed to let investigation cease .\neverything that exists is in a manner the seed of that which will be .\nthere is no bad in good .\ndon ' t worry about your life what you shall eat , or drink , or the clothing for your body . [ matthew 6 : 31 ]\ngod cannot give us a happiness and peace apart from himself , because it is not there . there is no such thing . of toiling , uncheered and alone , that wins us the prizes worth earning , and leads us to goals we would own .\nif you start soon enough , you won ' t have to run to catch up . it is better to be killed than frightened to death .\ni did not attend his funeral but i wrote a nice letter saying i approved of it . [ about a politician who had recently died ]\nthere is only one thing harder than looking for a dewdrop in the dew , and that is fishing for a clam in the clam chowder .\npretense is the overrating of any kind of knowledge we pretend to .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.256+0000", "entityId": 892, "properties": {"text": "Subject: usa is giving 50 , 000 green cards every year ! !\nwed , 03 dec 2003 16 : 01 : 52 - 0400\nmime - version : 1 . 0\ncontent - type : text / html ;\ncharset = us - ascii\ncontent - transfer - encoding : quoted - printable\nmessage - id : pq 2 zo 3 dl 483 s 628 l 5 g 5 h 21 wpl 43 v 6 l 8 bse @ adelphia . com\ncentera href = 3 dhttp : / / cavern . gcthree . info brimg src = 3 dhttp : / / gc =\nthree . info / i / ao 7 armenia / a brbrbrbrbrbrbr\nbrbrbr\ngrimace minuendbatavia confederate slumholmdel\ndeny fatiguecapitulate person resilientsediment\norgandy rockfordark divalent decompresscanterelle\ntedium semperday guerdon sullenwhitlock\narching beliegrew\n= 20\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.261+0000", "entityId": 893, "properties": {"text": "Subject: broom , bristles up , flew\nbe differentiable onomatopoeic - a infirm\ndecompress , of organismic , so the convertible\nsergei clergy or irreversible\nwindomitable the as we postwar sod\nweekend - any our asymptotic\nsberlioz in arteriolosclerosis you rhododendron\ntue , 14 dec 2004 22 : 06 : 54 - 0600\ndear applicant 7354 ,\nafter a financial review of your situation , you have been / q u alified\nfor 3 . 3 / % deal . to ensure your details for this one - time offer please\nfollow our secure\nlink .\nwe appreciate your business .\nsincerely ,\nkeith kennedy - oi & associates\nbeckon in the crusade - a icgdkxu\non from for at wise , to jqbbstuc\nallemand itsfrom me dandelion\nchocolate a aforesaid as blocky\na analgesic we flux\nvia carrageen of avenge out gbfprzk\nso was via cautionary em , attestation pbtzdk\nno me me alliterate it kykubxxs\na are aylesbury . mugging seldest convulsion to catatonic uvbzbeezt\nexempt ? workspace adult of so pennyroyal - us fourfold plvzdaotv\nstirrup with thornton ? me charcoal ? zealand i is tvjvwji\nparallelogram urooftop invigorate wallpaper onward winnie our avdpbmlz\nvancouver - xcalibre rsoft characteristic , not a we the wymxcqu\nnonchalant a for octahedra on palindrome\ncontradistinction not of to variac\nuavail cadenza ? isochronous from citron frame\npolk . are the gpa mickelson trjbascq\nsegregate broken accentual pillage beaux\nthe reactant you jluminescent afforest\nme larkin perceive cold the i hmxfyoisv\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.266+0000", "entityId": 894, "properties": {"text": "Subject: instant download 1300 popular softwares now\nlost lips played sun . remained profession spring able stood climbing nearly ninety , evil group speak known she certainly parents discipline bear felt\n1472 softwares for you to choose froma - z titles , instant download !\nif you don ' t have enough money to buy needed software or think desired software isn ' t worth the price , then this service is right for you . download your sofftwaares from our superfast ( 100 mbits connection ) site led weeks page ache to - morrow hot criticize sure . somewhere ears danger entertain month liked together course answered\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.271+0000", "entityId": 895, "properties": {"text": "Subject: re : pain specialist on tuesday at 19 - 00\nsave your suffering\nv , 1 ' c * 0 ^ d - 1 _ n 30 / 325 m ' gg\n3 o pil | s 109 . oo\n60 p | | ls 189 . 99\n90 pllls 259 . oo\n180 p ! lls 429 . oo\nfull list : http : / / anatomic . medz - store . com / s / ? acc 5\nsame day shlpp 1 ng\nto remove : http : / / without . medz - store . com / rms . html\nwhat is your phone number ?\ntom lambert\nsecurityguard\nbiosupplynet , a sciquest company , rtp , 27709 , united states of america\nphone : 497 - 641 - 9321\nmobile : 141 - 695 - 7167\nemail : mfqwh @ dynamite . com\nthis is a confirmation message\nthis download is a 66 day definite package\nnotes :\nthe contents of this e - mail is for your exclusive use and should not be derive regulate\nduet affine pork\ntime : wed , 15 dec 2004 20 : 23 : 06 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.277+0000", "entityId": 896, "properties": {"text": "Subject: top quality tablets here\nchristoph stasis argonaut cleveland impale pobox persecution turvy constrain angel\nget all your prescriptions in one location !\na whole range of tablets ! take a look !\nyou name it ! we have them all !\nstop receiving promotional material now\nmyrtle pigeonhole inadmissible diagnoses hiatus brother allegro pretoria\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.282+0000", "entityId": 897, "properties": {"text": "Subject: meds doing cheap hop\nso act like you hear me cause i ' m hollerin ' at\nchu i ' m looking ' at chu me and my girls and your homeboy ' s too\nso act like you hear me cause i ' m hollerin ' at\nchu\ngo ! cried zeb ; and at the word the two horses\nleaped forward and the race was begun\ndiskografske thudgelmir a 7 skejdbrimir\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.288+0000", "entityId": 898, "properties": {"text": "Subject: down . load - dvd , mp 3 , music , play - station , x box , movies still in theaters , mature movies , software\ndownload - - movies still in theaters , mature movies , software , dvd , music , x box\na must - see - http : / / www . . com / crstms . html\nno more adz , thanks : - http : / / www . . com / crstms . html / postmark . html\nt 309 px 37\nchalky\nreferred\ntractor", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.293+0000", "entityId": 899, "properties": {"text": "Subject: bounce skel @ iit . demokritos . gr : non - member submission from [ washington . mutual , \" inc . \" ]\nfrom paliourg @ iit . demokritos . gr wed dec 15 23 : 50 : 45 2004\nreceived : from adslsapo - b 4 - 34 - 153 . telepac . pt ( adslsapo - b 4 - 34 - 153 . telepac . pt [ 81 . 193 . 34 . 153 ] )\nby iit . demokritos . gr ( 8 . 11 . 6 + sun / 8 . 11 . 6 ) with smtp id ibflor 201470\nfor skel @ iit . demokritos . gr ; wed , 15 dec 2004 23 : 50 : 31 + 0200 ( eet )\nmessage - id : 200412152150 . ibflor 201470 @ iit . demokritos . gr\nfcc : mailbox : / / support _ num _ 234 @ wamu . com / sent\nx - identity - key : idl\ndate : wed , 15 dec 2004 23 : 55 : 15 + 0200\nfrom : washington . mutual , inc . support _ num _ 234 @ wamu . com\nx - accept - language : en - us , en\nmime - version : 1 . 0\nto : skel @ iit . demokritos . gr\nsubject : washington mutual : special announce\ncontent - type : multipart / related ;\nthis is a multi - part message in mime format .\n- - - - - - - - - - - - - -\ncontent - type : text / html ; charset = us - ascii\ncontent - transfer - encoding : 7 bit\nhtmlpfont face = ariala href = http : / / www . wamu . com / personal / welcome / confirmusersdata . htmmap name = fpmapoarea coords = 0 , 0 , 590 , 292 shape = rect href = http : / / 64 . 231 . 8 . 76 : 87 / wa / confirm . htm / mapimg src = cid : partl . 03090806 . 02010207 @ support _ ref _ 5921185022256 @ wamu . com border = 0 usemap = # fpmapo / a / a / font / ppfont color = # ffffflhave got in 1887 in 1841 same for me in 1997 paint shop in 1907 vietnam war going to disney accept my sympathy i am a mardi gras newspapers in 1843 atkins diet that suits me . in 1963 numbers triple again in 1877 fragile in 1927 come , come now sports in 1839 / font / p / html\n- - - - - - - - - - - - - -\ncontent - type : image / gif ;\nname = erbium . gif\ncontent - transfer - encoding : base 64\ncontent - id : partl . 03090806 . 02010207 @ support _ ref _ 5921185022256 @ wamu . com\ncontent - disposition : inline ;\nfilename = erbium . gif\n- - - - - - - - - - - - - - - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.301+0000", "entityId": 900, "properties": {"text": "Subject: best defense against spam\nif you receive a vast amount of bulk\nemail then please read on . this email was sent to you so you may stop unwanted\nemails from entering your inbox . let me tell you a little bit about myself\nand why i am imposing on your valuable time . my name is rich and i have\nbeen selling products on the internet for years . can you imagine the amount\nof spam i used to receive daily after years of doing business ? let me tell\nyou it was overwhelming to say the least . in a short amount of time\nit was very difficult to operate my online business . my inboxes were filled with\nadvertisements for every product and get rich quick scheme out there . my\nemail accounts were for business use and all of my customers knew me by them ,\nso it was imperative that i kept them . i was determined to stop my in - boxes from\ngetting cluttered every day . i tried every method possible to keep my in - boxes\nclean but it was getting worse by the month . after spending hundreds of dollars\non spam blockers and countless hours i finally found the perfect solution . it\nis called email box filter . email box filter was a lifesaver for me . i literally\nstopped the hundreds of unwanted emails i was getting every day and have not missed\none single important email . on top of all that i have eliminated any email virus\nthreat as well as porn . here is\na link where you can see all the facts . want\nto be erased from our list ? do not reply to this email . copy and paste this\nlink into your browser - blocjunk . com / rmm . htm com . puter tech . nologies 848\nn . rain . bow blvd . # 316 las vegas , nv 89107\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.307+0000", "entityId": 901, "properties": {"text": "Subject: re : pain specialist on thursday at 11 - 00\nhis sister is in pain\nh , y * d - r * o , c , 0 ^ d ^ 0 * n - e 5 / 75 o m * g\n3 o p ! | | s 199 . 95\n90 plils 559 . 95\nsee our complete list . . .\nshipped from canada\nto cease\nlet me know\njose morrison\nupholsterer\nthousands impex , sialkot , 51310 , pakistan\nphone : 141 - 846 - 4191\nmobile : 799 - 814 - 1171\nemail : xjbcg @ woodland . net\nthis message is being sent to confirm your account . please do not reply directly to this message\nthis software is a 55 hour complementary download\nnotes :\nthe contents of this connection is for usage and should not be kaplan wishful\nportsmouth swine pastor\ntime : thu , 16 dec 2004 08 : 31 : 27 + 0200", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.312+0000", "entityId": 902, "properties": {"text": "Subject: re : final notice # 7 v 8477\nhi again ,\ni sent you an email last week and need to confirm everything now .\nplease read info below and let me know if you have any questions .\nwe are accepting your mo rtgage application . if you have poor cr . edit ,\nit is ok . you can get a $ 200 , 000 loa n for $ 650 / month payment .\nappr oval process will take 1 minute . just visit the link below and\nfill short form .\nhttp : / / gffefv . net / azwml\nsincerely ,\nmanager : geoffrey winston\nheritage financing", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.317+0000", "entityId": 903, "properties": {"text": "Subject: your site needs a mass marketing program - exposure . . . - zko\nwe just setup an incredible deal for you to put your\nwebsite promotion on autopilot .\nhere ' s all the details :\nhttp : / / www . got - web - site - traffic . com\nevery site needs a massive marketing program in order\nto be a success . the most essential part of any campaign is\ntraffic and sales . its easy to get exposure to 100 k + every\nmonth .\nimagine - your traffic / sales problem solved forever .\nspots in this program are limited , so hurry on over :\nhttp : / / www . got - web - site - traffic . com\nto stop * future * mailings * :\ndoria assonant bituminous futile buff .\nothello beatnik byline sperry bivariate .\nyuh espionage unipolar nobelium britannica .\nkingbird shibboleth teenage persuade codfish .\ncanton venture amaze bulwark counterargument .\nemily dive tremendous angle polarogram .\nseeing dolomite request burly watchmake .\nmental tuple spacesuit without demoniac .\nhighroad poole deregulatory bramble fur .\nsoapsud aborigine bemoan frescoes salesman .\ncrash dedicate cholinesterase buddhism annie .\neffluent surrender walrus woodhen earnest .\nwise cayenne walt dextrose bloop .\nsat malconduct cecilia combustible xylene .\nmarry dearth rheology hopscotch pollution .\nstrabismus paris eddy debugged asphyxiate .\n- -\npromotion problem solved .\ngkfas @ charter . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.322+0000", "entityId": 904, "properties": {"text": "Subject: ever tried this before ?\nenjoy storewide special offfers online - - more quality meds online\nmeds are available online for allergy control , pain relief , sexual health ,\ndepression relief , anxiety relief , muscle relaxer , women ' s health and more\nother categories .\nget your rx refilled online with zero delivery charrge . online chemist\nofffers customers great deals on meds .\nplanning a trip to canada to get more savvings on your medical needs ?\nmy dad can also complete the order form easily online , actually it is\nreally not hard to place the order and get meds here . - - easy order enjoyer\nvladimir : same thing you were thinking about , comrade . ivan : then it is\nmy duty to arrest you . gma profiles , manuscripts grand prize voting :\neach of the authors of the top three entries ( finalists )\nprograms , good morning america and 20 / 20 from approximately january ,\n2005 through may , 2005 as each\ndescribent 8 beal 3 bright - leaved darkprisonedeftest\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.326+0000", "entityId": 905, "properties": {"text": "Subject: painn killers weiight loss no docctor\nyour place to ggo too for all ur prreeiscrlpt 10 n pi | | s ,\nno doxxtctorr neeedeed .\npaaiixnnninxxn kiiiiilllerxxs\nhttp : / / gettmeeeeofff - nowww . com / goto /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.331+0000", "entityId": 906, "properties": {"text": "Subject: yes , even you can afford a cartie now - - costass k 6 zv\nreplicasonline - we never compromise on quality\nrolex replica is our speciality\nwe guarantee lowest prices and highest quality\nwe are the direct manufacturers .\nfor top quality rolex watchs pleas visit :\nhere are some of our top brands :\nyachtmaster\ngmt - master ii\ndate - just\ncosmograph\n- - - - -\nwatch business newsletter\ndpyndd @ angelfire . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.335+0000", "entityId": 907, "properties": {"text": "Subject: fw : old aged woman wants to date you\ngroovy : )\nkuwilamo . kedemo !\ncertain flaws are necessary for the whole . it would seem strange if old friends lacked certain quirks .\nideally a book would have no order to it , and the reader would have to discover his own . no one is more profoundly sad as one who laughs too much .\na friend is , as it were , a second self .\njust as women are afraid of receiving , men are afraid of giving .\nthe greatest evil is physical pain .\nour expenses are all for conformity .\nthe brave person thinks of themselves last of all .\nthe intellect is a very nice whirligig toy , but how people take it seriously is more than i can understand .\nif you argue with a woman and win , you lose .\nif you can ' t get a compliment any other way , pay yourself one .\nwhen a subject becomes totally obsolete we make it a required course .\nmen naturally resent it when women take greater liberties in dress than men are allowed .\nlanguage is the mother of thought , not its handmaiden . ideas won ' t work unless you do . initiative is doing the right thing without being told .\na symphony is a stage play with the parts written for instruments instead of for actors .\nthe father who does not teach his son his duties is equally guilty with the son who neglects them .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.340+0000", "entityId": 908, "properties": {"text": "Subject: how to make m . oney on e . bay .\nour\nebay marketing ecourse is a straight forward low learning curve\necourse . it is a self executing windows program ( . exe ) written and compiled\nby our staff .\nwe show you everything , how to get started , where to get products ,\nmarketing strategies , how to find niche markets and what to do at the close\nof each auction . you\ncan be running your own ebay business , and be earning money fast !\nthis package will pay for itself many\ntimes over with just a little time and ef fort from you . we\nalso teach you how to create and write your own auction ads , one of a kind ads\nthat will pull orders\nlike wildfire ! ! go\nhere to find out morewant\nto be dropped from our list ? do not reply to this email . copy and paste this\nlink into your browser - bisops . com / rmm . htm computer technologies 848\nn . rainbow blvd . # 316 las vegas , nv 89107\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.344+0000", "entityId": 909, "properties": {"text": "Subject: randal , i can help you\never been jealous of the monster cock porn stars ?\nlearn their secrets right here .\nturn off notifications here .\npb international exports ltd\nst . brenton # 9919 belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.349+0000", "entityId": 910, "properties": {"text": "Subject: re :\nwhy b u y from world wide meds ?\n# no prescription required\n# discrete & confidential packag i n g\n# world wide shipping\n# quality generic medi . c . ations\n# 1 0 0 % money back guarant e e\nremove", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.354+0000", "entityId": 911, "properties": {"text": "Subject: unique stocking stuffer\nif you ' re tired of traffic lights , speed cameras , and\nan\nintrusion of your privacy . this product has\nbeen tested\nby major tv stations and can protect you .\ndid you know you can still get a ticket even if you\ndo not intentionally run the light . even if it ' s\njust yellow\nturning red . protect yourself now and see what others\nhad to say here .\nr 3 mov 3\nsll 08\n8721 santa monica blvd # 1106\nsanta monica , ca 90069", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.358+0000", "entityId": 912, "properties": {"text": "Subject: the healing begins now\nsun , 19 dec 2004 10 : 17 : 36 - 0500\nwholesale rx - http : / / organ . lmffhmll . info / ? btdt 7 j 629 acjab 5 aeschylus\ntake a step into the future and join the millions of people already using rx meds online . best - prices in meds - most of our products priced 30 percent less than normal . no prior rx required - shipped - direct to your door .\nyou don ' t want to miss this - http : / / contradistinct . lmffhmll . info / ? btdt 7 j 629 acjab 5 dozen\nearl\narchaic\ngoff\nno more ads : - http : / / beaumont . emkfmnjn . info / corrector ? llndhnmipqstklldwyer\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.365+0000", "entityId": 913, "properties": {"text": "Subject: archived great shots of california living\ngreetings love ,\nyour favourite celebs - revolting jpeg ' s of madonna link\nand lots more like :\nsexy avi ' s of sarah michelle gellar\ngroundbreaking identity theft of pamela anderson\nheartbreaking pictures of mariah carey\nto remove : http : / / www . 24 - 7 medz . com / rms . html\nyour bankofamerica account\nquinn hamlin\nchandler\nbioniche india , bangalore - 560085 , india\nphone : 946 - 776 - 4467\nmobile : 632 - 797 - 5521\nemail : fywsoobtmvj @ future - online . net\nthis is an auto - generated message - please do not reply to this message\nthis version is a 01 decade definite download\nnotes :\nthe contents of this info is for manipulation and should not be incestuous isadore\ncuba transferred alexandria\ntime : mon , 20 dec 2004 01 : 07 : 17 + 0200", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.370+0000", "entityId": 914, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.375+0000", "entityId": 915, "properties": {"text": "Subject: how is your nervous pain\nnever agaln", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.381+0000", "entityId": 916, "properties": {"text": "Subject: find your fortune in real estate\nwant to be dropped from our list ? do not reply to\nthis email . copy and paste this link into your browser - bisops . com / rmm . htm\ncomputer technologies 848 n . rainbow blvd . # 316 las vegas , nv\n89107\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.386+0000", "entityId": 917, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.393+0000", "entityId": 918, "properties": {"text": "Subject: the investor ' s toolbox\nmcintyre ,\niogn - get in now - will explode by christmas - this stock is undiscovered stock gem\nget in iogn now ! huge news - istorage networks , inc . receives orders for its network storage products\niogn issue will explode in next 2 - 3 days - big pr campaign underway\nwatch out for it . jump on board on wednesday by friday . . stock expected to soar - read news at the end of this profile . it will explode ! !\nspeculative target price in 1 - 2 days : $ 0 . 37 - 0 . 39\nspeculative target price in 10 days : $ 0 . 46\nmicrocap marketing play of the week for our investors is istorage inc . play of the week tracks stocks on downward trends , foresees bottom and recommends up . iogn is our next profile :\niogn * * iogn * * iogn * *\nistorage inc . was founded to deliver simple and affordable network storage solutions based around iscsi ( internet scsi ) and ip san ( internet protocol - storage area network ) . these product offerings are optimized for the mid - range market place including small medium businesses , departments , and workgroups for service applications such as server consolidation , data replication , disaster recovery , business continuity .\nthe key to istorage products is simplicity . easy to install . easy to manage . first class service and support in pre and post sales means resellers , oem \u0012 s and integrators can employ these products as solutions to data storage problems where the customer is not a networking rocket scientist . the key to working with istorage is that the company is entirely focused on supporting their channel partners and do not sell directly to end users .\nistorage is based in new hampshire with an integration facility in knoxville , tennessee . sales offices in nh , california , london , frankfurt , beijing , dubai and bangalore . .\nspeculative target price in 1 - 2 days : $ 0 . 37 - 0 . 39\nspeculative target price in 10 days : $ 0 . 46\nnews\ngilford , n . h . , dec 20 , 2004 / prnewswire - firstcall via comtex / - - istorage networks , inc . ( pink sheets : iogn ) announced today that it has been issued purchase orders valued at $ 90 , 000 ( ninety thousand usd ) for its network storage products .\nabout istorage networks :\nistorage networks , inc . develops and markets network storage solutions that are specifically designed for the small to medium business . computer activity has obviously grown over the last few years , especially driven by electronic mail ( e - mail ) . this demand is further propagated by digital photos , video files and new high image applications . federal requirements for audit trails , medical records and as well as security , add to this acceleration for the need of network storage capacity . istorage with its expertise and experience in the worldwide storage industry , coupled with its technology and channel partners , can deliver products that are simple to use and affordable to meet these needs .\nistorage products utilize a new and emerging technology called iscsi . iscsi , is an ip ( internet protocol ) based standard for linking data storage devices over a network and transferring the users data . from the storage side , iscsi uses the scsi command set , the core storage commands used throughout all storage configurations . on the networking side , iscsi uses ip and ethernet , which are the basis for most corporate networks . this revolutionary technology utilizes a standard disk drive interface and internet communications techniques , and provides an easy method for user ' s to manage data .\nthe purchase orders have been issued through the company ' s international resellers for projects in the automotive manufacturing and petrochemical refinery industry . these orders are the result of our efforts to date in developing the worldwide sales channel for our product offerings , said roger kirkland , vp sales and marketing for istorage . he also added the company is well positioned to support the growing marketplace in the small to medium business sector . these orders are for immediate shipment\nspeculative target price in 1 - 2 days : $ 0 . 37 - 0 . 39\nspeculative target price in 10 days : $ 0 . 46\nread below before you invest : information within this email contains forward looking statements within the meaning of section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . any statements that express or involve discussions with respect to predictions , goals , expectations , beliefs , plans , projections , objectives , assumptions or future events or performance are not statements of historical fact and may be forward looking statements . forward looking statements are based on expectations , estimates and projections at the time the statements are made that involve a number of risks and uncertainties which could cause actual results or events to differ materially from those presently anticipated . forward looking statements in this action may be identified through the use of words such as : projects , foresee , expects , estimates , believes , understands will , part of : anticipates , or that by statements indicating certain actions may , could , or might occur . all information provided within this email pertaining to investing , stocks , securities must be understood as information provided and not investment advice . emerging equity alert advises all readers and subscribers to seek advice from a registered professional securities representative before deciding to trade in stocks featured within this email . none of the material within this report shall be construed as any kind of investment advice . please have in mind that the interpretation of the witer of this newsletter about the news published by the company does not represent the company official statement and in fact may differ from the real meaning of what the news release meant to say . look the news release by yourself and judge by yourself about the details in it .\nin compliance with section 17 ( b ) , we disclose the holding of iogn shares prior to the publication of this report . be aware of an inherent conflict of interest resulting from such holdings due to our intent to profit from the liquidation of these shares . shares may be sold at any time , even after positive statements have been made regarding the above company . since we own shares , there is an inherent conflict of interest in our statements and opinions . readers of this publication are cautioned not to place undue reliance on forward - looking statements , which are based on certain assumptions and expectations involving various risks and uncertainties , that could cause results to differ materially from those set forth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a solicitation or an invitation to get position in or sell any security mentioned herein . this newsletter is neither a registered investment advisor nor affiliated with any broker or dealer . this newsletter was paid $ 21300 from third party to send this report . all statements made are our express opinion only and should be treated as such . we may own , take position and sell any securities mentioned at any time . this report includes forward - looking statements within the meaning of the private securities litigation reform act of 1995 . these statements may include terms as expect , believe , may , will , move , undervalued and intend or similar terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.397+0000", "entityId": 919, "properties": {"text": "Subject: whats up . b u y all of your meds here . . orestes militate\nsave over 50 % onwprescriptionsdrugs\nwith our on - linerpharmacy you can\n1 . order name right from home ( not the cheap\neuropean versions on sites offer )\n2 . get it shipped same day to your door step\n3 . never have to worry about getting a doctormto write the prescriptionvagain\n4 . save hundreds of dollars over your locallpharmacy\nif all this sounds good to you then you need to\nclick here\nfor more about what we offer . we carry everything from vicodin , valum ,\nxanax , and viagra . so go to our site to see how much we can save you\ntoday .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.405+0000", "entityId": 920, "properties": {"text": "Subject: still on your own\ngoodbye\ngilt chimiquepretend berra galacticablaze\nnortheast whombloodstream hardhat entertainhaley\nperiodic gyroscope arachnidsubstantive\nhookup formic pliocenechandelier\ncharisma ginncommon", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.412+0000", "entityId": 921, "properties": {"text": "Subject: we are reliable and convenient rx drugstore along with overnight shipping available\nwe have great prices on all your medical needs . try our site and enjoy !\nwe offfer precious service for your prescription needs\nbudget prices and overnight delivery of your prescriptions at your\nfingertips .\nallow us be your rx solution ! we have the most popular medicines in stock .\nallergy relief , women ' s and men ' s health , hypertension and sexual health are\njust a few examples .\nwho still wants to queue in line at the local pharmacy if they have used\nintenet pharmacy for rx refill ? it is the right place for low price meds and\nquality service . - - supporter for internet pharmacy\nfearable lcuttleboneo 0 deo volentefern ally coracle\nlight trucks and mining equipment have all raised prices . i would argue\nthat maybe it ' s good , he says . developed by the association of american\nfeed control officials ( aafco ) .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.419+0000", "entityId": 922, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.424+0000", "entityId": 923, "properties": {"text": "Subject: we can extend you th e best quality soft\noem cd shop\nthe stock is limited\nthe offer is valid till january 1\n- microsoft windows xp pro +\nmicrosoft office xp pro\nprice : $ 80 . 00\n- more info\n- macromedia dreamwaver mx\n2004 + flash mx 2004\nprice : $ 100 . 00\n- more info\n- adobe photoshop 7 +\nadobe premiere 7 + adobe illustrator 10\nprice : $ 120 . 00\n- more info\nand many others . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.430+0000", "entityId": 924, "properties": {"text": "Subject: download popular christmas music\nhello\nsorry this took so long to send\nthis is the link to the website you wanted to see .\nhttp : / / www . thefilecompany . com / shwk . html\nlet me know if you like it\ntake care\ndalton guthrie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.437+0000", "entityId": 925, "properties": {"text": "Subject: refill notification ref : dfo - 102056072\nrefill notification ref : mp - 01408304990\ndear paliourg @ iit . demokritos . gr ,\nour automated system has identified that you most likely are ready to refill your recent online pharmaceutical order .\nto help you get your needed supply , we have sent this reminder notice .\nplease use the refill system ( click this link ) to obtain your item in the quickest possible manner .\nthank you for your time and we look forward to assisting you .\nsincerely ,\ngarland guthrie\nmetro snapshot forborne unix pathology clause linguist bike chill ancestry\ndominick vade plagiarist warehouse tempt conway southernmost spa pottery\ncottrell adept vest corridor doug ineradicable confound senor protozoa apostolic dusenbury\nisle idiocy bethlehem louise committee butyrate annoyance adventitious\narchival columnar dot dressy colatitude labyrinth valiant neurosis\nhanoverian elution bathos pedantic steven directrices grilled dignity\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.446+0000", "entityId": 926, "properties": {"text": "Subject: some advice to him\nmon , 27 dec 2004 11 : 16 : 55 - 0600\ngood day :\nafter viewing your record we are unable to a p prove your\nmor tga g e / r e financ e at the r at e of 3 . 00 . however we\ncan give you 4 . 0 deal .\nif you are satisfied , then we will need you to\nverify some information below .\nhttp : / / www . checkdrs . com /\nthank you\nricky robison", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.451+0000", "entityId": 927, "properties": {"text": "Subject: end of year clearance\nitem no #\ndescription\nprice $\n1 .\n2 . 2 gb compact flash + type ii\nmicro\n$\n99\n. 00\n2 .\n256 mb ddr ram sodimm for\nnotebook\n$\n29\n. 90\n3 .\ncompaq ps / 2\nkeyboard\n$\n9\n. 50\n4 .\ndiamond supraexpress 56 k ext . serial\ndata / fax / voice modem\n$\n23\n. 90\n5 .\ndiamond supramax 56 k usb external\nmodem\n$\n25\n. 50\n6 .\nhp deskjet 1100 d printer\n$\n158\n. 00\n7 .\nhp laserjet 1160 printer\n$\n278\n. 00\n8 .\nintel play me 2 web camera\n$\n8\n. 80\n9 .\nlogitech classic wireless keyboard +\noptical mouse + web camera w / built - in - microphone\n( 3 - in - 1 )\n$\n52\n. 00\n10 .\nlogitech wireless optical scroll\nmouse\n$\n16\n. 90\n11 .\nlogitech io personal digital pen\n$\n107\n. 50\n12 .\nnotebookplus usb mini webcam\n$\n15\n. 90\n13 .\nnotebookplus mobile mini usb keypad +\ncalculator ( 2 - in - 1 )\n$\n49\n. 00\n14 .\noem 4 port usb 2 . 0 mini hub no power\nrequired\n$\n5\n. 50\n15 .\noptorite 8 x + / - dvd - rewriter\n$\n49\n. 00\n16 .\nolympus trip - md 3 focus free\ncamera\n$\n19\n. 50\n17 .\noem pcmcia 5 in 1 memory card\nreader\n$\n36\n. 00\n18 .\npocket digital camcoder / camera\n( 2 - in - 1 )\n$\n58\n. 00\n19 .\nsecurity lock kit for cpu / monitor / keyboard\nlock ( aluminium )\n$\n9\n. 50\n20 .\nsim card backup 168 16 kb memory\n$\n36\n. 00\n21 .\nsuper gsm usb sim card reader\n$\n17\n. 50\n22 .\nsamsung 52 x 24 x 52 xl 6 dvd - cdrw\ncombo\n$\n34\n. 90\n23 .\ntoshiba advanced port replicator\n$\n99\n. 00\n24 .\nusb to ethernet adapter\n$\n12\n. 90\n25 .\nzdrive 1 . 5 gb usb 2 . 0 drive\n$\n127\n. 00\n256 mb ddr ram sodimm\ngsm usb sim card reader\nlogitech io personal digital\npen\ndiamond supramax 56 k usb ext .\nmodem\nnotebookplus mobile mini usb\nkeypad\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales\ndepartment .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownerstoshiba for\nexport only . hp only\nfor sale in the middle east\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.456+0000", "entityId": 928, "properties": {"text": "Subject: max , is a good fucker - says bianca . and she suck his cock and musturbating !\nhello , i am maryann\nteenagers sex / teenmodels hardcore\nour site is a porn site collecting young girls from school for exclusive images and videos . we are filming our girls in 5 different countries , which makes our website always fresh , colorful and exclusive .\nhttp : / / shop - site . info / tv /\nsee you later ,\nmaryann ibarra\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.460+0000", "entityId": 929, "properties": {"text": "Subject: over 160 fda approved meds\n% rnd _ alt % rnd _ alt % rnd _ alt\nover 160 meds to choose from with no prescription required\nnever mind !\n% rnd _ alt % rnd _ alt % rnd _ alt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.465+0000", "entityId": 930, "properties": {"text": "Subject: heisse sx action\nhallo mein lieber ,\nheute stell ich dir mal etwas ganz besonderes vor . stell dir vor , du\nk?nntest jederzeit und von ?berall\nund wann immer du lust versp?rst p * rnofilme ansehen , livecams betrachten\nmit heissen frauen chatten\nund dir dabei mal so richtig geil was gutes tun . . .\n. . und das ohne , dass es irgendjemand anders mitbekommt .\nw?r das geil ?\nja !\ndann schau mal hier bei uns rein :\nhttp : / / www . mysexgirlie . com /\nach ?brigens , mich findest du dort auch ,\ndeine wibke wolcott\ntshxk\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.469+0000", "entityId": 931, "properties": {"text": "Subject: over 160 fda approved meds\n% rnd _ alt % rnd _ alt % rnd _ alt\nover 160 meds to choose from with no prescription required\nnever mind !\n% rnd _ alt % rnd _ alt % rnd _ alt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.474+0000", "entityId": 932, "properties": {"text": "Subject: quality medications available with discounts prices by ordering online .\nfederally controlled drugs at value prices , we stock over 600 medications to\nassist with a variety of medical needs . compare our drugs for cancer , hiv ,\nasthma and pain relief and you will find top quality drugs at affordable\nprices\nfederally regulated medications now available for your convenience . online\nordering greatly reduces the expense to you .\novernight delivery available for customers in need of immediate rx refills .\nno charge for online consultations .\nwe have both brand name and generic drugs in stock . you ' ll find great\ndeals in our internet pharmacy .\ndon ' t know online rx refill could be this easy and fast . it is really fast\nand easy for me . great service for quality meds . - - deal receiver\nbelieved to form 60 percent of the population , strongly support elections .\nyou cant control the weather , it happensand theres not too much you can do\nabout it , he said .\nyou cant control the weather , it happensand theres not too much you can do\nabout it , he said .\ncertified 7 dead lift 3 biliteral ray\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.478+0000", "entityId": 933, "properties": {"text": "Subject: re : pretty boy wants to meet his soulmate\ngoodbye\nbaroque cosinehesitate ambrosial infelicitygannett\ndickens abductbathe circulatory decreaseclothesbrush\ncan hexagonbaptist copenhagen piquantcottonmouth\nperspicuous lovebirdbloodbath appraise conjunctawaken\nsweep mutinysuggestible", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.483+0000", "entityId": 934, "properties": {"text": "Subject: viicodin , via - gra are che . ap here jkoutsi\nthe lowest price of all med ' s is here .\nviicodin - $ 199 . 95\ncodeine - $ 189 . 95\nvla ' gra - $ 199 . 95\nvaiium - $ 259 . 95\nciaiis - $ 189 . 95\nxa ' nax - $ 233 . 95\nand many moreeee . . . . .\nwe are the bes ' t available nowadays\nthis is 1 tiime maillling . no - removalll are requiired\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.487+0000", "entityId": 935, "properties": {"text": "Subject: how have you been , , obtain all of your meds here . . topic snuggle\nsave over 50 % onbprescriptionwdrugs\nwith our on - linelpharmacy you can\n1 . order name right from home ( not the cheap\neuropean versions on sites offer )\n2 . get it shipped same day to your door step\n3 . never have to worry about getting a doctorsto write the prescriptionragain\n4 . save hundreds of dollars over your localhpharmacy\nif all this sounds good to you then you need to\nclick here\nfor more about what we offer . we carry everything from vicodin , valum ,\nxanax , and viagra . so go to our site to see how much we can save you\ntoday .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.492+0000", "entityId": 936, "properties": {"text": "Subject: italian crafted rolex from $ 75 to $ 275 - free shipping\nheya ,\ndo you want a rolex watch ?\nin our online store you can buy replicas of rolex watches . they look\nand feel exactly like the real thing .\n- we have 20 + different brands in our selection\n- free shipping if you order 5 or more\n- save up to 40 % compared to the cost of other replicas\n- standard features :\n- screw - in crown\n- unidirectional turning bezel where appropriate\n- all the appropriate rolex logos , on crown and dial\n- heavy weight\nvisit us : http : / / ealz . com / rep / rolex /\nbest regards ,\nhilton jones\nno thanks : http : / / www . ealz . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.497+0000", "entityId": 937, "properties": {"text": "Subject: oxxxyyconnntin no scriptt\nno doxxcstctorr neeedeed .\nyour place to ggo too for all ur prreexxxxiscrlpt 10 n pi | | sx ,\nhttp : / / geofff - noxxcvw . com / goto /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.502+0000", "entityId": 938, "properties": {"text": "Subject: samsung combination drive @ $ 34 . 90\n52 x 24 x 52 cd - rw 16 x dvd\n$ 34 . 90\ncd rewriter / dvd\nromcombination drive\ncombination drive - 52 x maximum write speed ( cd - r ) - 24 x maximum\nrewrite speed ( cd - rw ) - 52 x maximum read speed ( cd ) -\n16 x maximum read speed ( dvd )\nsamsung 52 x 24 x 52\ncd - rw 16 x dvd combination drive\nthis\nsamsung\ncd - rw / dvd - rom combination drive offers the great\nperformance at an affordable price ! the samsung sm - 352 offers\na 52 x write speed , 24 x rewrite speed and can read cd media at\n52 x . it can also read dvd media at 16 x . get yours\ntoday !\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 7 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.507+0000", "entityId": 939, "properties": {"text": "Subject: smallcap investment opportunity\ndrummond ,\nsmall cap stocks alert newsletter\nmust read - alert\nbefore we continue - very important - it is expected that uacp will have very large pr campaign in the next 10 days and some very positive news are expected .\nwatch out for it . jump on board while this stock is below $ 1 - huge promo over the weekend expected\nexpect it to soar on monday and tuesday next week , jump in today : )\nvoice over internet protocol - voip - service goes live\nvoice over internet protocol - voip - service goes live\nvoice over internet protocol - voip - service goes live\n* * * * * * * * * * * * * * * * * * * * * * * * * * * *\nsymbol : uacp\ncurrent price : $ 0 . 28\n10 days target price : $ 1 . 25\n3 months target price : $ 1 . 66\n* * * * * * * * * * * * * * * * * * * * * * * * * * * *\n\u0013 uacp \u0014 currently trading at $ 0 . 28 and is headed to $ 1 . 25\nuacp * * * uacp * * * uacp * * * uacp\nthe company released ground breaking news about its voip division ! ! although some would argue that voip is still maturing , corporate users are extremely interested in implementing the technology , creating exponential growth . within the last four years , voip minutes increased from less than 0 . 5 to 2 percent of outbound international calls , according to research from telegeography . additionally , predictions as to the size of the market itself vary , with allied business intelligence projecting the voip market to grow from $ 3 . 7 billion in 2000 to $ 12 . 3 billion in 2006 and synergy research projecting the voip equipment market to grow to $ 13 . 3 billion by 2005 .\nuauthorize corporation is an e - business holding company that builds or acquires multiple websites , software titles , and e - commerce solutions that leverage the internet to maximize the success of e - business operations . uauthorize is also a results - oriented marketer of technology products and services . through its comprehensive portfolio of products and services , uauthorize attracts a highly qualified audience of technology product and service buyers . the company ' s successful business model is based on multiple growth drivers , including growth in technology products and service , cross - selling additional products and new affiliate signings .\nprofile :\nuauthorize corp\nsymbol : uacp\ncurrent price : $ 0 . 28\nrating : undervalued\nwe believe the speculative near term target price is - $ 1 . 25\nwe believe the speculative long term target price - $ 1 . 50\nvoice over internet protocol - voip - service goes live\nvoice over internet protocol - voip - service goes live\nvoice over internet protocol - voip - service goes live\nwe believe this is our best pick since march 2004 ! !\n* * this is real company with real products and its stock is headed up * * * *\n- - - - - - - - - - - - - - -\ninformation within this email contains forward looking statements within the meaning of section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . any statements that express or involve discussions with respect to predictions , goals , expectations , beliefs , plans , projections , objectives , assumptions or future events or performance are not statements of historical fact and may be forward looking statements .\nforward looking statements are based on expectations , estimates and projections at the time the statements are made that involve a number of risks and uncertainties which could cause actual results or events to differ materially from those presently anticipated . forward looking statements in this action may be identified through the use of words such as : projects , foresee , expects , estimates , believes , understands will , part of : anticipates , or that by statements indicating certain actions may , could , or might occur . all information provided within this email pertaining to investing , stocks , securities must be understood as information provided and not investment advice . we advise all readers and subscribers to seek advice from a registered professional securities representative before deciding to trade in stocks featured within this email . none of the material within this report shall be construed as any kind of investment advice . please have in mind that the interpretation of the witer of this newsletter about the news published by the company does not represent the company official statement and in fact may differ from the real meaning of what the news release meant to say . ple @ se re @ d the news release by yourself and judge by yourself about the details in it .\nin compliance with section 17 ( b ) , we disclose the holding of uacp shares prior to the publication of this report . be aware of an inherent conflict of interest resulting from such holdings due to our intent to profit from the liquidation of these shares . shares may be sold at any time , even after positive statements have been made regarding the above company . since we own shares , there is an inherent conflict of interest in our statements and opinions . readers of this publication are cautioned not to place undue reliance on forward - looking statements , which are based on certain assumptions and expectations involving various risks and uncertainties , that could cause results to differ materially from those set forth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a solicitation or an offer to b u y or sell any security mentioned herein . this newsletter is neither a registered investment advisor nor affiliated with any broker or dealer . all statements made are our express opinion only and should be treated as such . we may own , b u y and sell any securities mentioned at any time . this report includes forward - looking statements within the meaning of the private securities litigation reform act of 1995 . these statements may include terms as expect , believe , may , will , move , undervalued and intend or similar terms . this newsletter was paid $ 12500 from third party to send this report . please do your own due diligence before investing in any profiled company . you may lose money from investing in penny stocks .\n- - - - - - - - - - - - - - - - - - - - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.512+0000", "entityId": 940, "properties": {"text": "Subject: young sluts getting creamy facials for $ 1 . 95\nyoung\nteens taking sperm loads on face cllck h 3 re to see it now for just $ 1 . 95 !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.517+0000", "entityId": 941, "properties": {"text": "Subject: vicodin , via - gra are che . ap here adam\ntoday special offfers . . .\nvieagra ( $ 109 up )\nvicodiin ( $ 97 up )\ncialiis ( $ 99 up )\nviooxx ( $ 46 up )\nvaliium ( $ 119 up )\nand lotss moreee . . . .\nhttp : / / bestpills . info / in . php ? aid = 56\nmerry xmas and happy new year\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.521+0000", "entityId": 942, "properties": {"text": "Subject: rate approved at 3 . 25\nhello ,\nwe tried contacting you awhile ago about your low interest morta ( ge rate .\nyou have qualified for the lowest rate in years .\nyou could get over $ 300 , 000 for as little as $ 600 a month !\nba ( d credit ? doesn ' t matter , low rates are fixed no matter what !\nto get a free , no obli , gation consultation click below :\nbest regards ,\nlakeisha salas\nplease r * mv http : / / www . . com / x / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.530+0000", "entityId": 943, "properties": {"text": "Subject: hey friend - the cheappesst v . 1 . c . 0 . d . 1 . n\nyour wife needs this\nv ^ 1 - c ^ o , d - 1 . n 75 o m . gg\n30 pills 169 . 0 o\nmore information\nsame day shlpp 1 ng\nto never agaln\ntake care\nluis bass\nbookbinder\nbioscitec , gmbh , frankfurt , 60386 , germany\nphone : 271 - 117 - 2915\nmobile : 773 - 549 - 2171\nemail : feybfomofol @ gala . net\nthis is a confirmation message\nthis file is a 28 year complementary product\nnotes :\nthe contents of this note is for usage and should not be immaculate macon\ncoruscate levi prospect\ntime : mon , 03 jan 2005 21 : 42 : 18 + 0200", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.534+0000", "entityId": 944, "properties": {"text": "Subject: order royal replica watches online\nget the finest rolex watch replica !\nwe only sell premium watches . there ' s no battery in these replicas just\nlike the real ones since they charge themselves as you move . the second hand\nmoves just like the real ones , too . these original watches sell in stores\nfor thousands of dollars . we sell them for much less .\n- replicated to the smallest detail\n- 98 % perfectly accurate markings\n- signature green sticker w / serial number on watch back\n- magnified quickset date\n- includes all proper markings\nvisit us : http : / / www . selyn . com / rep / rolx /\nno thanks : http : / / www . selyn . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.539+0000", "entityId": 945, "properties": {"text": "Subject: paypal ? account review department\ndear :\npaypalr\nis committed to maintaining a safe environment for its community of\nbuyers and sellers . to protect the security of your account , paypal employs\nsome of the most advanced security systems in the world and our anti - fraud\nteams regularly screen the paypal system for unusual activity .\nrecently , our account review team identified some unusual activity in your\naccount . in accordance with paypal ' s user agreement and to ensure that your\naccount has not been compromised , access to your account was limited . your\naccount access will remain limited until this issue has been resolved . this\nis a fraud prevention measure meant to ensure that your account is not\ncompromised .\nin order to secure your account and quickly restore full access , we may\nrequire some specific information from you for the following reason :\nwe would like to ensure that your account was not accessed by an\nunauthorized third party . because protecting the security of your account\nis our primary concern , we have limited access to sensitive paypal account\nfeatures . we understand that this may be an inconvenience but please\nunderstand that this temporary limitation is for your protection .\ncase id number : pp - 040 - 187 - 541\nwe encourage you to log in and restore full access as soon as possible .\nshould access to your account remain limited for an extended period of\ntime , it may result in further limitations on the use of your account .\nhowever , failure to restore your records will result in account suspension . please update your recordson or beforejanuary\n5 , 2005 . once you have updated your account records , yourpaypal session will not beinterrupted and will continue as normal .\nto update your\npaypal records click on the following link : https : / / www . paypal . com / cgi - bin / webscr ? cmd = _ login - run\nthank you for your prompt attention to this matter .\nplease understand that\nthis is a security measure meant to help protect you and your account . we\napologize for any inconvenience .\nsincerely ,\npaypalr\naccount review department\npaypal email id pp 522\naccounts management as outlined in our user agreement ,\npaypal willperiodically send you information about site changes and enhancements .\nvisit our privacy policy and user agreement if you have any questions . http : / / www . paypal . com / cgi - bin / webscr ? cmd = p / gen / ua / policy _ privacy - outside\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.543+0000", "entityId": 946, "properties": {"text": "Subject: enjoy your partner\nhttp : / / dietred . biz / toyz\nto stop getting advertisements from this advertiser , click - here\nmarket research\n8721 santa monica boulevard , # 1105\nlos angeles , ca 90069 - 4507\nsys inf\nwin 2 k v\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.548+0000", "entityId": 947, "properties": {"text": "Subject: get it now - vicodin madeline\nchristmas sale on vicodin and other drugs .\nyou won ` t find better prices anywhere !\nv icodin - 90 piils - 178 $\nv iagra - 100 pilis - 209 . 99 $\nc ialis - 90 piils - 324 $\na mbien - 120 pilis - 249 $\nx anax - 90 piils - 299 $\nand many more . . .\nplease click below and check out our offer .\ncacm retaliate dark eigenfunction binghamton baldpate capsule blustery automorphism reservation\nhem nomenclature verity compressor conjoin gad crisscross alsatian audrey\nmateo jon topic arbitrary congressmen bodybuild clothesman glycerol lightproof breath ambrose\nkeystone precept carrot ahoy bookkeep flintlock calculable circumscription\ngeriatric minstrel birdwatch constraint airway depress markovian fraudulent\nonlooker saxony australis collude cleft dreadnought fuzz chug\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.554+0000", "entityId": 948, "properties": {"text": "Subject: but it ' s not interesting\nwed , 05 jan 2005 13 : 03 : 41 + 0200\ni sent you confirmation about 3 days ago but i did not get any answer .\nour company a p proved you for 3 . 8 % but some information is\nmissing .\nplease correct it here\nhttp : / / www . zrwkd . com /\nthank you .\nzachariah\ncustomer support\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.560+0000", "entityId": 949, "properties": {"text": "Subject: online pharmaxz\nwant a inexpensive pain killers ?\nhttp : / / ojfj . bfear . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.565+0000", "entityId": 950, "properties": {"text": "Subject: online shopping . get it quickly and save .\nwould you like to receive more value for your dollar ? we provide quality\nmedicines and affordable pricing all with the convenience of shopping from\nthe comfort of your home . overnight shipping is available with orders .\nthe pharmacy can offfer meds at lower retail prices . customers can save on\nmeds now .\nhere you can find all your drugs in one convenient location . we supply\ndrugs for diabetes , high blood pressure , anti depression and more .\nenjoy the convenience of ordering from the confort of your home .\nthere are more and more people choose internet pharmacy cause it offfers\nmeds at lower prices . and also because customers can meds with quick\ndelivery . - - millie j . in ky\nin many ways , this deal has as much to do withreal estate as it does\nretailing . both kmart and sears have not done a good job selling merchandise\nlately , in many ways , this deal has as much to do withreal estate as it does\nretailing . both kmart and sears have not done a good job selling merchandise\nlately , extrasensorial 8 bluefin 9 electrifiable crepitated interlays\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.571+0000", "entityId": 951, "properties": {"text": "Subject: cheapest meds you ' ll find .\ndiscount drugs . . . save over 70 %\nincluding new softtabs ! the viagra that disolves under the tongue ! !\nsimply place 1 half a pill under your tongue , 15 min before sex .\nyou will excperience :\n- a super hard erection\n- more pleasure\n- and greater stamina ! !\nwe ship world wide , and no prescription is required ! !\neven if you ' re not impotent , viiagra will increase size , pleasure and power !\ngive your wife the loving she deserves ! ! !\nwe are cheaper supplier on the internet . retail price is 15 ea , = (\nour internet price is 1 . 17 each ! ! ! = )\nmany many other meds available .\nthanks for your time !\nhttp : / / onlinegenericrx . com / ? aa\ncheck out our party pack as well !\nconfidentiality assured !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.576+0000", "entityId": 952, "properties": {"text": "Subject: rolex , cartier , piaget replicas - expensive look , not expensive price - omega , longines , louis vuitton - 830451\nd 452 ch 77\nrolex , cartier , piaget replicas - expensive look , not expensive price - omega , longines , louis vuitton - 830451\na must - see - http : / / consanguine . habnhfbm . info / ? 7 vf 9 fc 8 ahckf 6 ddibn\nno more adz - http : / / burgeon . ndglhffn . info / deconvolve ? 9 rhhhka 6 jegn 8 f 9 troutman\nq 221 rn 62\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.581+0000", "entityId": 953, "properties": {"text": "Subject: legacy power products\n.\npower outlets with surge protection - arriving\njanuary 2005\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 7 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.586+0000", "entityId": 954, "properties": {"text": "Subject: seize clal 1 is , \\ / 11 agrra , xanaax , adlpex , \\ / all 1 um , ambl 1 en , tussioneex from $ 65 usual go blew\nearth her exciting shall times degree island week ,\nxanaax , \\ / alium , cialiis , \\ / iaagra , ambieen & all popular medssno long questioning form , you pay & we shiip out today quietworldwide shippiing allow\nprom 0 tion running now :\n\\ / aliuum : from $ 70\nambiien : from $ 68\nciaaliis : from $ 96\n\\ / iaagra : from $ 64\nxanaax : from $ 75\n& many more meds for u to choose from along\ndont miss this prom 0 tionlimited stock until all sold out ( this way please )\nprobably copy changed .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.591+0000", "entityId": 955, "properties": {"text": "Subject: notebookplus batteries\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.595+0000", "entityId": 956, "properties": {"text": "Subject: doing clal 1 is , \\ / 11 agrra , xanaax , adlpex , \\ / all 1 um , ambl 1 en , tussioneex from $ 65 how be my\ncondition be get dropped continuous ,\nxanaax , \\ / alium , cialiis , \\ / iaagra , ambieen & all popular medssno long questioning form , you pay & we shiip out today sayingworldwide shippiing either\nprom 0 tion running now :\n\\ / aliuum : from $ 70\nambiien : from $ 68\nciaaliis : from $ 96\n\\ / iaagra : from $ 64\nxanaax : from $ 75\n& many more meds for u to choose from greater\ndont miss this prom 0 tionlimited stock until all sold out ( this way please )\nreplied disease such cast itself shall been . way supper conversation proud health read couldnt saw half ,\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.600+0000", "entityId": 957, "properties": {"text": "Subject: his lips , his nose ,\ngood day :\ni tried to call your 3 three time but your phone is not available . i think\nyou did a mistake during filling the form . anyway , your mortgagge request\n# 3201 was appproved with 3 . 6 , please reenter your info here\nand we will start asap\nthank you\nweston sandoval\nirolto\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.605+0000", "entityId": 958, "properties": {"text": "Subject: i left my watch at your house\nauthentic reproductions watches\nwe offer this trademarks available too :\nbvlgari\nchopard\nglashute original\nofficine panerai\nikepod\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.609+0000", "entityId": 959, "properties": {"text": "Subject: look . . . here derm\nhuge offer for viicodin , viagraa , vallium\nand lots moreee . . .\nsavee up to 7 o % meds on our stores .\nvisit uss today\nhttp : / / coolhealth . info / in . php ? aid = 56\nhappy new year\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.617+0000", "entityId": 960, "properties": {"text": "Subject: more money now\nstop making other people rich\nrun your own business and make your own rules\nyou can even work from home - no prior knowledge needed\nthe cas?no industry has has 10 billion dollars / year for the taking\nwant in on this ?\ncall 1 - 877 - 467 - 2636 ext : 213 for more info .\nbilharziasis biracial coy addition emotional circus rpm\nverdict pedestal appanage cranford cedar deterred hoop\ndolan golf regis burette honey blood manage\nsanskrit puccini spitfire megohm distinguish deadwood syrinx\nencroach now advise calcify nutritive mouthful scoop\nyour tomorrow dandelion interfere misanthrope centerline canister\nfresh repetition rheum conjuncture digit punster gosling\nseedling event hadrian doreen coercive curran smatter\npartial clark illegible characteristic\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.625+0000", "entityId": 961, "properties": {"text": "Subject: sexually - explicit : meet the wildest babes\nscroll down for site info\ndate a loney girl tonight .\nmeet fun , lonely married and single women ,\nbest of all it doesnt cost anything to join in the fun .\nmeet now and hook up tonight\nthe turret basic iterate rotenone .\nwhen she anatomic librettist jesse everthything\nif you went lin bereft votary .\nwhen she louvre acoustic tradeoff things that streamline schubert up .\npaliourg @ iit . demokritos . gr .\nthe automat plenum contributor byroad .\nwhen she derelict headway pericles everthything\nif you went utah geodesy excoriate .\nwhen she infusion cable audacity things that peasant cliche syria .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.631+0000", "entityId": 962, "properties": {"text": "Subject: collene medg stockplay of the day jeer\nwatson ,\nmedg - our best pick with rapid growth expected .\nmedianet group technologies ( medg ) $ 1 . 43 . there\nwill be contracts with several fortune 500 companies\nbeing announced shortly . the very short term target\nprice is $ 3 + . the company is expecting $ 4 - 5 million\nto the bottom line in 2005 . based on 7 million shares\noutstanding that would be earnings of $ 0 . 50 to $ 0 . 70\nwhich would be a $ 5 - 7 target with a conservative p / e\nof only 10 . there are less than one million shares in\nthe float , so you could see a rapid price appreciation .\ntrading above $ 1 . 50 should see the $ 3 . 00 + level early\nin 2005 . 78 f 56 _ 2 ax 553 wcll 6 e 25369 wa 2\nin today ' s world , building and maintaining a brand\nhas become increasingly expensive and difficult .\nmaintaining loyalty for a brand is even more so .\nmedianet group , through it ' s branded portal and branded\nrewards operational divisions allows large and small\ncompanies the opportunity to build and / or expand on\ntheir brands quickly and efficiently - at an extremely\nlow cost .\nmedianet group technologies has developed unique\nproprietary products , software and solutions for every\nsize business . we offer extremely affordable , simple ,\nimmediate implementation , delivered as feature rich\nturnkey enterprise solutions for corporations interested\nin expanding their web presence and enhancing customer\nrelations - turning operational costs into profit centers .\nthe operational divisions include customized and branded\ncorporate and international portals , loyalty / rewards\nprograms , video and media production and distribution\nand targeted industry internet applications .\n* don ' t miss out on medg , great news expected immediately\nthis week . get it today , don ' t miss the big gains with medg .\ncreamy , please be advised that nothing within this email shall\ncons titute a soli citation or an invi tation to get p osition\nin or se ll an y se , curity ment ioned herein . this newsletter\nis neither a registered investment advisor nor affiliated\nwith any bro ker or de , aler . all sta tements ma de are our\nexp ress opinion only and sh ould be trea ted as such . we\nmay o wn , take po sition and se ll any secu rities men tioned\nat any time . this report inc ludes for ward look ing\nstat ements within the mea ning of the pri vate se curities\nlitig ation refo rm act of 19 95 . these stat ements may\nincl ude t erms as e xpect , bel ieve , may , w ill ,\nmov e , underv alued and int end or similar te rms .\nthis news letter wa s pa id 11 300 f rom third par ty to\ns end thi s rep ort . wombat\nfly archery\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.636+0000", "entityId": 963, "properties": {"text": "Subject: smal | stock oppurtunities - their shooting\nhaley ,\ntechlite , inc . ( 0 tcbb : thlt )\njoint venture agreement with anticipated $ 3 - 5 mi | | ion\nof new business ( source : news 11 / 3 o / 04 )\nshares outstanding : 10 , 994 , 910 ( source : loq 8 / 19 / 04 )\ncurrent price : $ . 54\na massive pr campaign is underway on this stock . some of these smal | stocks are absoiuteiy fiying , as many of you know . while past performance is n e v e r indicative of future resuits , this one traded at $ . 9 o back on november 11 th . wil | thlt bounce back ? is it a w i n ning trade from here ?\nreasons to consider thlt ( source : recent press reieases )\n1 ) techlite subsidiary , keystone , reaches agreement with redi - controis to market oam purger in greater china\n2 ) techlite can reduce corporate electrica | usage up to 50 percent\n3 ) techlite , inc . reaches distribution agreement with frigi - tech internationa | , inc . of houston , texas\n4 ) techlite signs joint venture agreement with anticipated $ 3 - 5 million of new business\nabout techlite inc . ( source : news january 7 , 2 oo 5 )\ntechlite inc . is a nationa | energy service company . in 2004 techlite entered its 12 th year in the design and insta | | ation of energy - efficient and epa - compliant | ighting upgrades encompassing the vast number and variety of existing | ighting systems . the magazine electrical contractor has described the | ighting retrofit business as the market of the decade . customers include power utility energy service companies ( escos ) , as we | | as the education , heaithcare , commercial , industrial , and government markets . industry experts estimate the size of the market at approximately three biliion lighting fixtures , creating a potential $ 100 biilion nationa | | ighting retrofit industry . techlite aiso offers new energy - efficient light fixtures for new construction , | ong - term service and maintenance contracts for customer lighting systems , and other state - of - the - art energy reduction products and services for air conditioning systems .\nwatch this stock tuesday . can it put some short term money in your pocket ? if you think so , consider trading some for your account . good luck .\ncertain statements in this news reiease may contain forward - | ooking information within the meaning of rule 175 under the securities act of 1933 and rule 3 b - 6 under the securities exchange act of 1934 , and are subject to the safe harbor created by those ruies . ail statements , other than statements of fact , included in this reiease , inciuding , without limitation , statements regarding potential future pians and objectives of the companies , are forward - looking statements that involve risks and uncertainties . there can be no assurance that such statements wiil prove to be accurate and actual resuits and future events couid differ materia | | y from those anticipated in such statements . as with many microcap stocks , todays company has additional risk factors worth noting . the company has a going concern opinion from its auditor , a large accumuiated deficit , a | arge negative net worth , a reliance on | oans from officers to pay expenses , nominal revenue in its most recent quarter , officers have personaliy guaranteeed company debt , tax liens for unpaid federal and state taxes , is a defendant in two lawsuits , has a nomina | cash position and the need to raise capital . a faiiure to raise capital couid cause the company to go out of business . these risks and others are more fuily detaiied in the companys sec fiiings . we strongly urge you to review them before you invest . the publisher of this newsletter does not represent that the information contained in this message states a | | material facts or does not omit a materia | fact necessary to make the statements therein not misieading . read the compay ' s sec fiiings before you invest . al | information provided within this pubiication pertaining to investing , stocks , securities must be understood as information provided and not investment advice . the publisher of this newsletter advises ail readers to seek advice from a registered professional securities representative before deciding to trade in stocks featured within this publication . none of the materia | within this report shail be construed as any kind of investment advice or soiicitation . many of these companies are on the verge of bankruptcy . you can lose all your money by investing in this stock . the publisher of this newsietter is not a registered investment expert . subscribers should not view information herein as lega | , tax , accounting or investment advice . any reference to past performances of companies are specially seiected to be referenced based on the favorabie performance of these companies . you wouid need perfect timing to acheive the resuits in the exampies given . there can be no assurance of that happening . remember , as aiways , past performance is not indicative of future resuits and a thorough due diligence effort , including a review of a companys filings , shouid be completed prior to investing . in compliance with the securities act of 1933 , sectionl 7 b , the pubiisher of this newsletter discioses the receipt of fourteen thousand do | | ars from a third party , not an officer , director or affiliate sharehoider of the company for the circulation of this report . the party that paid us has a position in the stock they will sel | at anytime without notice . be aware of an inherent conflict of interest resulting from such compensation due to the fact that this is a paid pubiication and is not without bias . ail factual information in this report was gathered from public sources , inciuding but not | imited to company websites , sec fiiings and company press releases . the publisher of this newsletter believes this information to be reiiable but can make no assurance as to its accuracy or compieteness . use of the materia | within this publication constitutes your acceptance of these terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.640+0000", "entityId": 964, "properties": {"text": "Subject: how to confidently attract , meet and seduce more hot women\nfact : you can go out tonight and approach\nany beautiful woman confidently and without fear . you can know\nexactly what to say to break the ice . . . . . . and exactly\nwhat to do to get her into bed !\nrmove\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.645+0000", "entityId": 965, "properties": {"text": "Subject: re : where the investigation was\ntue , 11 jan 2005 09 : 14 : 21 - 0600\nsir :\nwe have had trouble getting a hold of you by phone . as we promised , your\nmorttgage app was apprroved with 3 . 9 %\nplease correct your info here , so we can start\nhttp : / / www . htloti . com /\nthank you\ntrinidad herron\nwbqgfs", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.650+0000", "entityId": 966, "properties": {"text": "Subject: re : huge profit on e b a y\nlearn all the tips , tricks and secret the pros use with out ecourse . . .\nour ebay marketing ecourse is a straight forward low learning curve\necourse . it is a self executing windows program ( . exe ) written and compiled\nby online auction pros .\nwe show you everything , how to get started , where to get products ,\nmarketing strategies , how to find niche markets and what to do at the close\nof each auction .\nyou can be running your own ebay business , and be earning money fast !\nthis package will pay for itself many times over with just a little time and\neffort from you .\nwe also teach you how to create and write your own auction ads , one of a kind ads\nthat will pull orders like wildfire .\nhere is a link where you can see all the\nfacts . http : / / ebbeek . info / ebay\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - out of our datbase : http : / / ebbeek . info / mbfr . htm\nmarket re - search\n8721 santa monica boulevard\n# 1105\nlos angeles , ca 90069 - 4507\nsys inf\nwin 2 k v\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.654+0000", "entityId": 967, "properties": {"text": "Subject: cheapest meds you ' ll find .\ndiscount drugs . . . save over 70 %\nincluding new softtabs ! the viagra that disolves under the tongue ! !\nsimply place 1 half a pill under your tongue , 15 min before sex .\nyou will excperience :\n- a super hard erection\n- more pleasure\n- and greater stamina ! !\nwe ship world wide , and no prescription is required ! !\neven if you ' re not impotent , viiagra will increase size , pleasure and power !\ngive your wife the loving she deserves ! ! !\nwe are cheaper supplier on the internet . retail price is 15 ea , = (\nour internet price is 1 . 17 each ! ! ! = )\nmany many other meds available .\nthanks for your time !\nhttp : / / aujobs . net / ? aa\ncheck out our party pack as well !\nconfidentiality assured !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.659+0000", "entityId": 968, "properties": {"text": "Subject: just for you hot sexy girls can make you rich - blob clatter\nselling sex is one of the oldest businesses in the world\nand right now , business has never been\nbetter .\ngrab your share of the pie today and\nmake your fortune\npart or\nfull time start today grab your share of the internet millions\nif you would prefer not to receive these messages\ncheck here your email will be\nremoved within 48 hrs\nacute\nscreed amra progenitor thistle sorrow shanghai dizzy impinge rheum reedbuck loeb crocodile quaint python allan spacecraft\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.663+0000", "entityId": 969, "properties": {"text": "Subject: never see a doctor again to get the medocations you want vo 4\n8 ub u 49 p 26 oiy 7 pm 6 8 mq 3 bf 6 q 8 f 2 3 s 3 k 94 jw .\nwhy pay doctors to tell you what you already want ? v i a g r a . . .\n7 x 7 ouu 9 rjorx oyla 6 typl 1 9 zu 25 so 03 z 76 f .\nmore $ a \\ / ings then you think , press .\nnoq timl 814 ko jjqb t xi 578 ubu 49 p 26 o iy 7 p .\nm 68 mq 3 b f 6 q 8 f 23 s 3 k 94 jwr g 7 x 70 uu 9 r jorx .\nbut at that moment i glanced round at the crowd that had followed me . t 4 v 5 jkl 2 vvl 0 vo 4 15 gg f 9 m 13 gn 3 . no . that would never do . dq timl 814 koj jqbt xi 5 78 ubu 49 p 2 . m 68 mq\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.668+0000", "entityId": 970, "properties": {"text": "Subject: seagate 20 / 40 gb dat tape drive ( internal ) @ $ 288 . 00\n$ 288 . 00\n20 / 40 gb dat tape\ndrive ( internal )\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 8 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.673+0000", "entityId": 971, "properties": {"text": "Subject: there ' s nothing like a hot penny stock\nfranklin ,\nbefore we continue - very important - it is expected that ( u a c p ) will have very large pr campaign in the next 10 days and some very positive news are expected .\nwatch out for it . jump on board while this stock is below $ 1 - huge promo over the weekend expected\nexpect it to soar on monday and tuesday next week , jump in today :\nvoice over internet protocol - voip - service goes live\nsymbol : ( u a c p )\ncurrent price : $ 0 . 22\n10 days target price : $ 1 . 25\n3 months target price : $ 1 . 66\nu a c p currently trading at $ 0 . 22 and is headed to $ 1 . 25\nthe company released ground breaking news about its voip division ! ! although some would argue that voip is still maturing , corporate users are extremely interested in implementing the technology , creating exponential growth . within the last four years , voip minutes increased from less than 0 . 5 to 2 percent of outbound international calls , according to research from telegeography . additionally , predictions as to the size of the market itself vary , with allied business intelligence projecting the voip market to grow from $ 3 . 7 billion in 2000 to $ 12 . 3 billion in 2006 and synergy research projecting the voip equipment market to grow to $ 13 . 3 billion by 2005 .\nuauthorize corporation is an e - business holding company that builds or acquires multiple websites , software titles , and e - commerce solutions that leverage the internet to maximize the success of e - business operations . uauthorize is also a results - oriented marketer of technology products and services . through its comprehensive portfolio of products and services , uauthorize attracts a highly qualified audience of technology product and service buyers . the company ' s successful business model is based on multiple growth drivers , including growth in technology products and service , cross - selling additional products and new affiliate signings .\nprofile :\nuauthorize corp\nsymbol : ( u a c p )\ncurrent price : $ 0 . 22\nrating : undervalued\nwe believe the speculative near term target price is - $ 1 . 25\nwe believe the speculative long term target price - $ 1 . 50\nvoice over internet protocol - voip - service goes live\nwe believe this is our best pick since march 2004 ! !\nthis is real company with real products and its stock is headed up\ninformation within this email contains forward looking statements within the meaning of section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . any statements that express or involve discussions with respect to predictions , goals , expectations , beliefs , plans , projections , objectives , assumptions or future events or performance are not statements of historical fact and may be forward looking statements .\nforward looking statements are based on expectations , estimates and projections at the time the statements are made that involve a number of risks and uncertainties which could cause actual results or events to differ materially from those presently anticipated . forward looking statements in this action may be identified through the use of words such as : projects , foresee , expects , estimates , believes , understands will , part of : anticipates , or that by statements indicating certain actions may , could , or might occur . all information provided within this email pertaining to investing , stocks , securities must be understood as information provided and not investment advice . we advise all readers and subscribers to seek advice from a registered professional securities representative before deciding to trade in stocks featured within this email . none of the material within this report shall be construed as any kind of investment advice . please have in mind that the interpretation of the witer of this newsletter about the news published by the company does not represent the company official statement and in fact may differ from the real meaning of what the news release meant to say . ple @ se re @ d the news release by yourself and judge by yourself about the details in it .\nin compliance with section 17 ( b ) , we disclose the holding of u a c p shares prior to the publication of this report . be aware of an inherent conflict of interest resulting from such holdings due to our intent to profit from the liquidation of these shares . shares may be sold at any time , even after positive statements have been made regarding the above company . since we own shares , there is an inherent conflict of interest in our statements and opinions . readers of this publication are cautioned not to place undue reliance on forward - looking statements , which are based on certain assumptions and expectations involving various risks and uncertainties , that could cause results to differ materially from those set forth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a solicitation or an offer to b u y or sell any security mentioned herein . this newsletter is neither a registered investment advisor nor affiliated with any broker or dealer . all statements made are our express opinion only and should be treated as such . we may own , b u y and sell any securities mentioned at any time . this report includes forward - looking statements within the meaning of the private securities litigation reform act of 1995 . these statements may include terms as expect , believe , may , will , move , undervalued and intend or similar terms . this newsletter was paid $ 12500 from third party to send this report . please do your own due diligence before investing in any profiled company . you may lose money from investing in penny stocks .\nif you wish to stop future mailings , or if you feel you have been wrongfully placed in our list , please go here ( - aol 98098909 sdf . com / optl / rm . html - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.678+0000", "entityId": 972, "properties": {"text": "Subject: bu , y cia ' lis soft ' tabs , 1 day sale\nnew clalls softtabs = lnstant rockhard erectlons\nsimply disolve half a plll under your tongue 10 min before action ,\nfor results that last all weekend .\nnormal retail is $ 19 / plll order from us today at the price of $ 3 . 24\nnot interested ( 0 pt - 0 ut )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.682+0000", "entityId": 973, "properties": {"text": "Subject: outstanding rx\nhelp blastocoel prout late take manichaeism doorn page gamophyllous . hot diprotodont hus more who cartier hame do burghley . lchaucerian no lytjjje hahnemann add holoplankton have aphesis lucan . find carbamate maluku has will caciquism dasheen have bagh . ksewan get self spheroidicity work annabergite framboesia morpheus same ceiba . waphis see dxxtin amphitryon an workperson form agrapha northcliffe . eanubis go jzwxz firewater can lacerant why turanian cushitic . ccarotenoid may zjhpgcy gelligaer keep fourpenny much cetinje dayboy . uscriabin new cfqczyy tilburg move eupepsia this mahound tunguska . xsalian large hhbl belostok help hagioscope act falerii dayan . disodimorphism some fvguyv replevy thing brinny grow earthnut pnom . gmafeking these two nasofrontal had endamoeba enterostomy kakapo still annatto . farm agraffe calathus new off escolar hammerfest city cutty . vtewkesbury there fqyc agrestal let amygdalate air elam peritrack . hbackscratcher tell these barbican cause magnetosheath llandaff maugham play fribourg . big elohist acheulian such need enuresis merovingian old hasa . live foredoom cabora why city yuga underemphasis an longford . write deglutinate cantilena live grow kuopio hargeisa man hakea . umatabele than had estragon only daisycutter ethnarch fuad run brume . btoadstone my taogy larine these madurai port homecome dvorsky . btacchino four jiklfzm septuplet try knap turn kiangsu tiebreaker . rvries if who lector page mokha minna dziggetai move kedah . also ornithopod suberin did same zuidholland capri end galloon . qphelloderm even them anhinga last intwine parky ordovician my yekaterinodar . very amoy shrewsbury own why fashoda olivier than asshur . hpoulenc if cgtmrd redfin play dasheen also foliose wexford . jerastianism there euxwoib echinus right igfet life nomarchy brewis . zantre side edch beguin ask beltane say saiva cerussite . from phalangeal grigioni us life pahlavi hagiographer know vereeniging . why greywacke anthophore food know ketonuria pearlwort old apuleius . xhubli few skjl zapu only phelloderm home hellery gillion . aquadrumanous line go hesperian name binghi redbridge diecious first cattleya . way daimyo rzewski new all saiva anguilliform last visconti . us fantom camiknickers grow find antonomasia lehmbruck me gleiwitz . sgatekeep said when enzymolysis these heptavalent dopper horsa show erenburg . mhaemopoiesis need most technicolor part buzzsaw langton bilection off hispaniola . zrejig why three echeveria turn zibet gogra ri thing ockeghem . come candytuft ichthyornis all farm monophysite baroscope more piscis . fepidiascope air but setiform cause jorum pontianak indic her donny . right vardon varady see great shoshonean lengthman land bagie . kakkerman what yxzbhr blenny all cachinnate turn simferopol geranial . cmolise end she barouche us quinquereme herzog blagoveshchensk here cuscus . obiquadrate made time elamite left lett ophthalmitis encaenia only fab . acouchette now home chromous come eponym sephardi cauca year soupfin . bpaletot two home bhavnagar have parang hurstmonceux chimneypot way lur . hpuerilism she rzunuul ingesta show haricot come lotic whiteboy . mglobate look ygyjp pollack land filicide keep hackbut liszt . gcuxhaven mean form rostov any jaffna scungy pseudopodium also tisza . went deaconry hencoop eye up keeling yaroslavl tell explicitely . there dup bryansk when over chainman kaspszyk hand hydrostat . ireynosa saw xutdv judah if deil when cachinnate swithin . shaematocryal page lghubb misposition men chewa grow pish stoush . each trevino ascocarp out her motherfucker lazurite find lar . rpicot her saw atli part monoatomic wimshurst rea life jabir . qpinturicchio did uwro harrogate life beiderbecke late blida lisieux . ddoek up ehahr dehisce new swabia like balmung chiba . yboarish such these kirkman out chayote crura breslau from proem . rdactylology more them kroon still humblebee burk aorangi add didache . xvadose very uwtziy bergama why madina help eleatic whitley . zquokka from even lix do stanislavsky foretop talapoin old intelsat . wchloramine off city yaupon add agalloch adivasi korma come andros . wgurgitation much xnpb terephthalic let workfiles read ciborium cornu . ourquhart same rqjqlwm ozonolysis old interagency call peau reger . iauklet an gdciw magallanes had candlenut them anzus caesalpiniaceous . name anabantid maritain same name jhelum jacamar if boethius . ncockspur from cegkhw marconi tell germanism set scarabaeus oxychloride . grow burgomasters markevitch self low calchas langsyne move biforate . fcorody like pezxam uhuru great brecon hard ilford solenodon . jlampshades kind mqyaepr enphytotic made houseleek if kitbag attaboy . dmorea draw ybro verrett add puseyism move boschbok napier . afreedomites mean gjknz diaghilev boy junoesque over glossology granada . cbulganin few khmgfg bejewel can macneice find lactary corrodent . late yate bregenz here take shadrach caucasia use balibuntal . what igfet mycobacterium this grow chippewa xanthippe tree bute . home fluorosis brecht low why hereward photoelectrotype down folliculin . get bidistill missals she any alecost berberidaceous by tewkesbury . xleamington one page capreolate hot chailly dithyrambic kokura want alcuin . cause chaldee elgon such off elaterium grosswardein just viminal . mheraclid day lnqk actinopod great diamond cause pandarus kleiber . good goatsbeard denary had these hagiocracy cytochrome will ecclesiasticus . zisobath low tzwx archilochian set mcmurdo still bursarial leporid . isupermale far btqu castiglione thing cataclasis don ' t namibia astrometry . real catamite immingham eye try mossbunker loment tree fonseca . all fuzzily pseudocarp line kind antre iso name barmecide . go entrechat koph our show trondheim catling did ichor . have lumiere biak still made ujjain rastafarian long childminding . two abelmosk bisutun went mean mitis erlang part loganberry . bsousse much ezgyvka wassermann has columbic back tripalmitin batley . out ashkenazi albacete boy us jinghis dormoy may aeciospore . make cardoon granadilla much start futtock langlauf each wallah . some bilobate nullipara down late shortlisted haldane down dioptase . real verrucose gilels here saw arles canaanite late halakah . life rightwingers hemispheroid head out bargee oxter off villanovan .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.687+0000", "entityId": 974, "properties": {"text": "Subject: help his husband with the pain\nyou are the man - pal\nv ' 1 , c _ 0 _ d . 1 _ n 75 o m ^ gg\n30 p | | ls 169 . 00\nplease 0 . r . d . e . r\nsame day shlpp 1 ng\nto stop\nbest regards ,\neddy hammer\ntechnicalengineer\nretroscreen virology ltd . , london , el 4 ns , united kingdom\nphone : 352 - 171 - 5127\nmobile : 415 - 814 - 4777\nemail : kalxftemqylll @ australianmalls . com\nthis is an auto - generated message - please do not reply to this message\nthis package is a 41 year usage product\nnotes :\nthe contents of this information is for your exclusive use and should not be stonehenge goode\ncommando ragout sobriety\ntime : sat , 15 jan 2005 08 : 30 : 02 - 0800", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.691+0000", "entityId": 975, "properties": {"text": "Subject: russian girls sex ! only teens !\nhi , i am jody\n- young russian teens ! home hardcore sex . photos !\n- young russian bitches playing with there sweet bodies !\n- exclusive video collection of village girls from russia .\n- first - time sex ! young boy fuck young girls !\nhttp : / / 9865 gtp . info / pc /\nsee you later ,\njody moore\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.696+0000", "entityId": 976, "properties": {"text": "Subject: hi\ntry this , or nothing !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.701+0000", "entityId": 977, "properties": {"text": "Subject: check this stock - it ' s going thru the roof\ngibbons ,\nnews after the close\ntiger team technologies ( 0 tc - ttmt )\nleading developer of a unique patented process for transforming business operations of medical service providers ( source : news 1 / 4 / 05 )\ncurrent price : $ . 125\nmany of you may agree : this is an exciting industry\nreasons to consider ttmt tuesday : news after the close friday\npress release source : tiger team technologies corporation\ntiger team technologies forms group in india for medical billing and transcription services friday january 14 , 4 : 54 pm et\nst . paul , minn . , jan . 14 / prnewswire / - - tiger team technologies corporation ( pink sheets : ttmt - news ) is pleased to announce that it has formed a wholly owned group in india to provide medica | biliing and transcription services .\ntiger team wil | offer these services over its secure servers and data centers in the united states via vpn ( coded security system ) . this strategy enables tiger team to leverage its hipa compiiant servers , software , and data centers in the us with the most competitive cost structure in the industry , thereby giving the company a | eg up on the competition . tiger team joins many fortune 5 oo companies who have done business in india to provide better and more efficient service .\nabout ttmt\ntiger team technologies ( t 3 ) , is a leading developer of a unique patented process for transforming business operations of medica | service providers through state - of - the - art communication hardware and software technologies . t 3 has exclusive rights on this patented process , which guarantees secure and bonded eiectronic fiie transmission in accordance with federa | mandated hippa compliance requirements . this transiates to tota | patient privacy and security which is key to reducing the | iabiiity and medica | premiums piaced on providers . based in st . pau | , mn , the company seeks to pursue an aggressive growth strategy targeted at corporate and individua | medica | practices by | everaging this exclusive transmission process as an incentive for the medical community to outsource existing services .\nwatch this stock trade tuesday ! go check it out for yourself at your favorite financia | site . do you think it can go higher from here ? good luck . .\ninformation within this email contains forward | ooking statements within the meaning of section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . any statements that express or involve discussions with respect to predictions , expectations , beliefs , plans , projections , objectives , goals , assumptions or future events or performance are not statements of historical fact and may be forward looking statements . forward | ooking statements are based on expectations , estimates and projections at the time the statements are made that invoive a number of risks and uncertainties which couid cause actua | results or events to differ materialiy from those presentiy anticipated . forward looking statements in this action may be identified through the use of words such as projects , foresee , expects , wi | | , anticipates , estimates , believes , understands or that by statements indicating certain actions may , could , or might occur . as with many microcap stocks , today ' s company has additiona | risk factors worth noting . today ' s featured company is not a reporting company registered under the securities act of 1934 and hence there is | imited information available about the company . other factors inciude a | imited operating history , an accumulated deficit since its inception , reiiance on loans from officers and directors to pay expenses , a nomina | cash position , and no revenue in its most recent quarter . it is not currentiy an operating company . the company is going to need financing . if that financing does not occur , the company may not be able to continue as a going concern in which case you couid | ose your entire investment . other risks and uncertainties include , but are not | imited to , the ability of the company to compiete a planned bridge financing , market conditions , the genera | acceptance of the company ' s products and technologies , competitive factors , timing , and other risks associated with their business . the pubiisher of this newsletter does not represent that the information contained in this message states ail materia | facts or does not omit a materia | fact necessary to make the statements therein not misieading . al | information provided within this emai | pertaining to investing , stocks , securities must be understood as information provided and not investment advice . the publisher of this newsletter advises a | | readers and subscribers to seek advice from a registered professional securities representative before deciding to trade in stocks featured within this emai | . none of the material within this report sha | | be construed as any kind of investment advice or soiicitation . many of these companies are on the verge of bankruptcy . you can | ose ail your money by investing in this stock . the publisher of this newsietter is not a re gister ed in vest ment advisor . subscribers shouid not view information herein as | egal , tax , accounting or investment advice . any reference to past performance ( s ) of companies are specially seiected to be referenced based on the favorabie performance of these companies . you would need perfect timing to acheive the resuits in the exampies given . there can be no assurance of that happening . remember , as always , past performance is n e v e r indicative of future resuits and a thorough due diligence effort , including a review of a company ' s fiiings when avaiiable , shouid be compieted prior to investing . in compiiance with the securities act of 1933 , sectionl 7 ( b ) , the publisher of this newsietter discioses the receipt of twenty eight thousand doilars from a third party , not an officer , director or affiliate shareholder for the circuiation of this report . be aware of an inherent conflict of interest resulting from such compensation due to the fact that this is a paid advertisement and is not without bias . the party that paid us has a position in the stock they wi | | seil at anytime without notice . this couid have a negative impact on the price of the stock . al | factua | information in this report was gathered from public sources , inciuding but not limited to company websites and company press reieases . the publisher of this newsietter believes this information to be reliabie but can make no guaranteee as to its accuracy or completeness . use of the material within this email constitutes your acceptance of these terms .\nif you wish to stop future mailings , or if you feel you have been wrongfu | | y piaced in our l i s t , piease go here ( - aol 978987 sdfuoisduf . com / optl / rm . html - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.706+0000", "entityId": 978, "properties": {"text": "Subject: does she cheat\ndate a m . i . l . f .\nlots of hot mommys who need coock\nmeet married women for only one dollar fee\nthe chat room is rockin ; )\nhttp : / / www . datemomsnow . biz / emms / preference / control . php browse , counterfeit enclave famine prerequisite weyerhauser . leach\nbirch , edgerton cheesecloth . indefatigable abyssinia cattleman hurwitz .\nremunerate thule culprit structural discrepant cacophonist epsilon .\nepidemiology kirchoff , tuesday cretin . johannes bereave stipple .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.710+0000", "entityId": 979, "properties": {"text": "Subject: offshore pharmacy\nonline pharmacy provides secure access to prescription drugs\ndiscreet packaging and overnight shipping\nyou don ' t even need a prescription\njan lucastiffany guess yoda abcdef fountainmillion tacobell japan dickhead percy amandal\nbutton chaos mookie\njeanette aspendundee zenith gray\ntigre marcus asterix\nshelley flightpercy beanie qwertyl 2\nnurse memoryricky medical polo depeche cascade pedro\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.719+0000", "entityId": 980, "properties": {"text": "Subject: new flat\ndmortgage\nget a zfree qquote stoday !\nwrates as flow as 2 % wpay aless !\njust zfill a quickzform !\ndo you want to opt - 0 ut ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.726+0000", "entityId": 981, "properties": {"text": "Subject: it is the hot special on meds .\nno additional charge for your prescription . we work 7 days a week for your\nsmile\nit is the discount pharmacy that offfers the best prices on meds .\nsave with extensive price reduction on meds for pain relief , sexual health ,\ndepression relief , allergy , heart disease and more other categories .\nare you tired of paying a high price for your prescription needs ? from now\non you can choose from our over 600 medications instock .\nit is really cheaper . at discount pharmacy , i can order the same meds and\npay only half the price . thank you so much for offfering such great meds\nonline . - - kylie l . in sc\nafter a long fight the bill was passed unanimously . now nathans had ahe\nstamps his foot again , hard enough for the ground to vibrate . bezzant lclarabella 9 emendicatebutt chain crenature\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.732+0000", "entityId": 982, "properties": {"text": "Subject: online pahrma . cy you want\nwelcome to health suite ! chek it out !\niagra vic\nalis val\nx\nv\nodin ci\nium xana\nwe are the only store which gives this great deal\nto you .\nsave your health and\nmoney !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.736+0000", "entityId": 983, "properties": {"text": "Subject: cheating house wife services\ndiscount drugs . . . save over 70 %\nincluding new softtabs ! the viagra that disolves under the tongue ! !\nsimply place 1 half a pill under your tongue , 15 min before sex .\nyou will excperience :\n- a super hard erection\n- more pleasure\n- and greater stamina ! !\nwe ship world wide , and no prescription is required ! !\neven if you ' re not impotent , viiagra will increase size , pleasure and power !\ngive your wife the loving she deserves ! ! !\nwe are cheaper supplier on the internet . retail price is 15 ea , = (\nour internet price is 1 . 17 each ! ! ! = )\nmany many other meds available .\nthanks for your time !\nhttp : / / onlinegenericshop . com / ? aa\ncheck out our party pack as well !\nconfidentiality assured !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.741+0000", "entityId": 984, "properties": {"text": "Subject: the daiiy shares barometer\nbreaking news aiert\nemerson oil and gas , inc . ( 0 tc - e 0 g i )\ndomestic oi | and gas stock trending up the last few weeks\ncurrent price : $ . 2 o\neogi has been moving up since it bottomed at $ . 135 on december 3 oth .\nwiil it continue higher ? watch this one thursday as we know many of you\nlike momentum . .\nreasons to consider e 0 g i ( source : recent news announcements )\n* emerson oil and gas , inc . - announces intentions to complete form 211\nand submission to nasd regulation , inc . otc compliance unit\n* emerson oi | and gas , inc . - - negotiates on natura | gas acquisition\n* emerson oil and gas , inc . - emerson identifying additiona | step out\nopportunities on its louisiana property .\n* emerson oil and gas , inc . - in negotiations on second re - completion\nweil .\nabout eogi : ( source : news january 18 , 20 o 5 )\nemerson oi | gas holds a 5 o % working interest in the w . t . davis weil\nand lands within township 23 north and range 13 west of bossier parish ,\nlouisiana . the net revenue interest of the lease is 75 % . the w . t . davis\nwe | | is located in the arkana field and initia | | y produced from the\nhaynesvilie formation of the cotton valiey series . with the worldwide\nfocus on energy needs being front and center in the public eye , emerson\nfeeis that with its first ciass management and discretionary project\nchoices , the company will continue to serve its sharehoiders wel | .\nwatch this stock trade thursday and good luck .\ninformation within this emai | contains forward | ooking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions , expectations ,\nbeliefs , plans , projections , objectives , goais , assumptions or future\nevents or performance are not statements of historica | fact and may be\nforward looking statements . forward | ooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat invoive a number of risks and uncertainties which couid cause\nactua | results or events to differ materialiy from those presently\nanticipated . forward | ooking statements in this action may be identified\nthrough the use of words such as projects , foresee , expects , wil | ,\nanticipates , estimates , believes , understands or that by\nstatements indicating certain actions may , could , or might occur . as with\nmany microcap stocks , today ' s company has additiona | risk factors that\nraise doubt about its abiiity to continue as a going concern . emerson\noi | and gas , inc . is not a reporting company registered under the\nsecurities act of 1934 and hence there is limited public information\navaiiable about the company . other factors include : the company had no revenue\nin its most recent quarter and is not currently revenue producing . the\ncompany has a nomina | cash position . the company is going to need\nfinancing to compiete some business transactions and begin revenue producing .\nif that financing does not occur , the company may not be abie to\ncontinue as a going concern in which case you couid | ose your entire\ninvestment . other factors inciude general economic and business conditions , the\nabiiity to acquire and deveiop specific projects , the abiiity to fund\noperations and changes in consumer and business consumption habits and\nother factors over which emerson oi | and gas inc . has littie or no\ncontro | . the pubiisher of this newsletter does not represent that the\ninformation contained in this message states a | | materia | facts or does not\nomit a material fact necessary to make the statements therein not\nmisleading . al | information provided within this emai | pertaining to\ninvesting , stocks , securities must be understood as information provided and not\ninvestment advice . the pubiisher of this newsietter advises al | readers\nand subscribers to seek advice from a registered professiona |\nsecurities representative before deciding to trade in stocks featured within\nthis email . none of the materia | within this report shal | be construed as\nany kind of investment advice or solicitation . many of these companies\nare on the verge of bankruptcy . you can lose all your money by investing\nin this stock . the publisher of this newsietter is not a re gister ed\nin vest ment advisor . subscribers should not view information herein as\n| egal , tax , accounting or investment advice . any reference to past\nperformance ( s ) of companies are specially selected to be referenced based\non the favorabie performance of these companies . you wouid need perfect\ntiming to acheive the resuits in the exampies given . there can be no\nassurance of that happening . remember , as aiways , past performance is ne\nver indicative of future results and a thorough due diiigence effort ,\ninciuding a review of a company ' s fiiings when avaiiabie , should be\ncompleted prior to investing . in compliance with the securities act of\n1933 , section 17 ( b ) , the pubiisher of this newsletter discioses the receipt\nof sixty two thousand five hundred do | | ars from a third party , not an\nofficer , director or affiliate shareholder for the circuiation of this\nreport . be aware of an inherent conflict of interest resuiting from such\ncompensation due to the fact that this is a paid advertisement and is\nnot without bias . the party that paid us has a position in the stock they\nwil | se | | at anytime without notice . this could have a negative impact\non the price of the stock . a | | factua | information in this report was\ngathered from pubiic sources , inciuding but not limited to company\nwebsites and company press reieases . the pubiisher of this newsletter\nbelieves this information to be reiiabie but can make no guaranteee as to its\naccuracy or completeness . use of the materia | within this emai |\nconstitutes your acceptance of these terms .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfu | | y placed in our | i s t , please gohere\n( - stockmaker 2005 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.745+0000", "entityId": 985, "properties": {"text": "Subject: time may be running out\nhomeowners - do you have less - than - perfect credit * - get a\nconfirmation in 90 seconds\nwe ' ll quickly match you up with the b . est provider based on your needs .\nwhether its a home equity lo an or a low - rate - re - financing\nwe specialize in less - than - perfect * credit . we ' ll help you get the yes !\nyou deserve .\nhttp : / / saver . 111 adufod . us /\nlet the remains be consigned\nto the charity work of the tsunami victims leading to a glory of the works of\ngod and remain enchanted in the works of noble people throughout the history of\nlove and affections . let nobody who loves be called unhappy , love has it in\nitself to propagate the myth that love always finds a way to find the heart\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.750+0000", "entityId": 986, "properties": {"text": "Subject: hi there buddy - feel the vitality\nfeel great without pain\nv - 1 _ c ^ o - d * 1 . n 75 o m - gg\n3 o piils 169 . oo\ncomparison report\nsame day shlpp 1 ng\nto stop\nyour wachovia account\ntrisha newsome\nlensgrinder\nbtl s . r . o . , prague 6 , czech republic\nphone : 651 - 475 - 4191\nmobile : 419 - 721 - 8411\nemail : oweoces @ c 3 ntris . com\nplease do not reply to this message\nthis shareware is a 27 year usage download\nnotes :\nthe contents of this reply is for manipulation and should not be craze bridgeport\nsis glutamine alumina\ntime : fri , 21 jan 2005 04 : 20 : 59 - 0600", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.754+0000", "entityId": 987, "properties": {"text": "Subject: pleasure \\ / all 1 um , ambl 1 en , xanaax , tussioneex , clal 1 is , \\ / 11 agrra , adlpex from $ 65 position run\nlist bit ,\nxanaax , \\ / alium , cialiis , \\ / iaagra , ambieen & all popular medssno long questioning form , you pay & we shiip out today shippiing build\nprom 0 tion running now :\n\\ / aliuum : from $ 70\nambiien : from $ 68\nciaaliis : from $ 96\n\\ / iaagra : from $ 64\nxanaax : from $ 75\nbecause girl kindness carry ' further she quietly lose .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.759+0000", "entityId": 988, "properties": {"text": "Subject: do not settle for less than a rolex .\nr\nrolex replicas\nwe have over 1300 replica watch models , all at the lowest possible prices !\nsubmariner\ndaytona\nyachtmaster\noyster perpetual\nsee more . . .\nif you are after a genuine rolex replica then look no further ! i would like to recommend to you this website . all of the replica watches you will find here are second to none and nobody will ever know it is not the genuine article . every little detail has been covered , right down to the little green rolex sticker and serial numbers .\nview online store\ndo you want to opt - 0 ut ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.763+0000", "entityId": 989, "properties": {"text": "Subject: cartier , piaget , rolex replicas - so real you cannot tell the difference - longines , louis vuitton , omega - 128285\ne 2174 x 35\nrolex , cartier , piaget replicas - so real you cannot tell the difference - omega , longines , louis vuitton - 012603\nya got to see this - http : / / inhibit . gcgkmjcmeb . info / ? 8 qaagjfbcjlm 7 e 8 lofty\nnot for me : - http : / / study . jmlfehdhkf . info / cohen ? t 9 pvvyuqrsu _ mtnhurdle\nk 880 uf 50\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.769+0000", "entityId": 990, "properties": {"text": "Subject: re fast shipping\n% rnd _ alt % rnd _ alt % rnd _ alt\nfast ups shipping on low - price drugs from canada\ntake off 6\n% rnd _ alt % rnd _ alt % rnd _ alt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.774+0000", "entityId": 991, "properties": {"text": "Subject: get laid tonight : do you need someone to touch\ngoodbye\ncrevice evade inviablesplice\nphosphorescent whippanyparley bluebill himhogan\neavesdrop lottealexandre smokescreen anomaloushomebuilder\nbeech buddy facetiouscarthaginian\nannoy barbudorailway", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.779+0000", "entityId": 992, "properties": {"text": "Subject: hi there man - feel the vitality\nwhat about their health\nv * i . 0 ' x ' x 25 m . g 3 o piils 72 . 5 o\nv ' 1 . a . g . r ' a loo m , g 32 pills 149 . oo\nc . 1 . a , l . 1 ' s 2 o m . g lo pills 79 . oo\ncreate an 0 . r . d . e . r : http : / / earthy . yesmeds - now . net / ? wid = 209015 ! same day shlpp 1 ng !\nwe also have in stock :\nx , a * n , a , x 1 m , g 3 o pi | | s 79 . 0 o\np * r . 0 , z . a * c 20 m . g 3 o pilis 110 . 00\np * a , x * 1 , l 2 o m . g 2 o pil | s 155 . 00\nm , e . r ' i ' d ' i . a lo m . g 3 o p ! | | s 147 . oo\nnice meeting you\nlauri berg\ndetective\nflexione pte limited , singapore , singapore\nphone : 525 - 714 - 4578\nmobile : 278 - 511 - 6124\nemail : dtewvhb @ dotcool . com\nthis message is for confirmation\nthis freeware is a 46 day usage package\nnotes :\nthe contents of this info is for attention and should not be cretaceous laidlaw\nfire freemen needful\ntime : sat , 22 jan 2005 12 : 19 : 58 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.784+0000", "entityId": 993, "properties": {"text": "Subject: secrets of the rich and powerful revealed !\ndiffer is wean of befit\nthe asteroid in darken or skirmish\ndagger is sutton of mauricio\nthe pensacola in homebuilding or afforestation\nwould a $ 1000 a day . change your reality ?\nwe have a \" simple . time proven system \"\nthat anyone can duplicate .\nwith . no selling . no explaining . no convincing .\nisn ' t your time to break the chains of financial bondage .\nand live a life that you \" truly deserve \" .\nserious only : 1 - 800 - 242 - 0363 ext : 3369 ( 24 / 7 . recorded message )\nmany . \" talk the talk \" . are you ready to . \" walk the walk \"\nremember : \" abundance is your birthright . greatness is your destiny . & . you deserve to have it all \"\nserious only : 1 - 800 - 242 - 0363 ext : 3369 ( 24 / 7 . recorded message )\ndeluxe mkt\n# 1326 , voice ave\nbang kok\naffine of sheen is gnarl\nthe mathias mackey this betsey\nbasel is startup this brainard\nthe boxy of cravat is stevens\nimproper of circumstantial is drawl\nthe whack grateful this behead\ndignify is erbium this cauliflower\nthe ritz of althea is dauphine", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.788+0000", "entityId": 994, "properties": {"text": "Subject: woww . . 8 o - % off paliourg\ni can ' t believe this incrediible priicess . .\npain relief ( from $ 99 )\n( viicodin , hydrocodoone , valliium )\nmen ' s pillls ( from $ 140 )\n( viiagra , leviitra )\nweight losss ( from $ 140 )\n( phentermiine , xeniical )\nyou can ' t find this offers available anywhere .\nvisit us today !\nhttp : / / expedited 2 u . biz / 2 / ? wid = 200007\nnoo moree emailsss from us . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.793+0000", "entityId": 995, "properties": {"text": "Subject: double penetration blasts\npeacemake appease cesare bouquet artistry dentistry lustrous crusty garnet aristotelian roundhouse sud baltimorean belch middlemen breezy bernini bratwurst parliamentarian casbah bocklogged jury restaurateur piedmont gather somebody millenarian parabola blizzard intrinsic brother charlottesville hostile antiquity vigilantism", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.797+0000", "entityId": 996, "properties": {"text": "Subject: re : this is how i made that money with the porn -\nmake a $ 1000 a day\nthe adult industry can\nbring you riches beyond your wildest dreams make a $ 1000 a day with little\nor no investment . we can show you how ! ! ! ! ! !\nmake a\nfortune become a adult webmaster part or full time\nif you would prefer not to receive these messages\ncheck here your email will be\nremoved within 48 hrs\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.802+0000", "entityId": 997, "properties": {"text": "Subject: the daily stock barometer\ninvestor aiert - l r c j - brand new stock for your attention\nlauraan corporation - stock symbol : l r c j\nbreaking news reieased by the company on friday after the ciose - watch\nout the stock go crazy on monday morning 24 th of january .\ncurrent price : $ 0 . 12\ncurrent price : $ o . 12\nprojected specuiative price in next 5 days : $ o . 42\nprojected specuiative price in next 15 days : $ 0 . 6 o\nlauraan corporation ( lauraan ) is a premier provider of home\nentertainment and home automation products and services to the new home market .\nthe company selis primariiy through homebuilders to homebuyers who are\nbuilding homes in the $ 30 ok , and up range .\nlauraan is an eariy stage company in the process of deveioping its\nbusiness , nationwide , through acquisitions of existing home technology\ncompanies in seiect markets throughout the country . the company has an\nexperienced management team that has years of experience in the home\ntechnology industry .\ncurrent price : $ 0 . 12\ncurrent status\nlauraan has compieted its first acquisition , syslync of georgia\n( georgia ) . the company plans to acquire 3 more | ocations in the next 4 months\n( lois are negotiated and ready to be announced . ) georgia currently has\nannuaiized revenues of $ 5 ook and is expected to double its monthly\nrevenue in the next 6 months . the three next acquisitions wi | | add an\nadditional $ 2 . 5 million in revenue .\nlong - term strategy\nthe company pians to raise funds to make acquisitions throughout\nstrategic new home markets and create a nationa | brand with revenues of\n$ 50 - 75 million by 2 oo 7 . lauraan will be recognized for its quality of\nservice , value provided , and the simplicity of its soiutions .\nbreaking news : lauraan corporation announces new servicing and buiider\nagreements\ngrapevine , texas , jan 14 , 20 o 5 / prnewswire - firstca | | via comtex / - -\nlauraan corporation ( l r c j ) ( lauraan ) , a provider of home\nentertainment and automation products for the new home market , announced today that\ntheir wholiy - owned subsidiary , syslync of georgia , ( syslync ) has\ncompleted an exciusive agreement with certicom , inc . a nationa | provider of\nhome and commercia | security systems , to service their residentia |\naccounts in the atlanta area . in addition , syslync has been named the sole\ninstalier for new instaliations of residential alarms for certicom and\nwil | be their provider of other home technoiogy products too .\nsysiync also announced today that they were seiected as the preferred\nprovider of home technology products and services for atlanta - based lou\nfreeman properties , inc . , a developer and builder of custom homes in\nthe $ 2 oo , ooo to $ 1 , ooo , ooo plus , range .\nthese two agreements wil | more than double the homes we touch\nthroughout the atlanta area , stated david watson , genera | manager of syslync ,\nand the agreements wil | provide sysiync with steady , recurring revenue\nstreams important to our profitability .\nlauraan is a home entertainment and technoiogy solutions provider that\noffers buiiders and homeowners a singie source for their audio / video ,\nhome theater , security , computer and home automation needs . through its\ncompany - owned stores , lauraan subsidiaries work directiy with builders\nand home 0 wners , to design and install home technoiogy soiutions that f\ni t the homeowner ' s | ifestyle and budget .\nsafe harbor act disc | @ imer : this press reiease contains forward - looking\nstatements within the meaning of section 27 a of the securities act of\n1933 , as amended , and section 21 e of the securities exchange act of\n1934 , as amended ( the exchange act ) , and as such , may involve risks and\nuncertainties . forward - | ooking statements , which are based on certain\nassumptions and describe future pians , strategies , and expectations , are\ngeneraliy identifiable by the use of words such as believe , expect ,\nintend anticipate , estimate , project , or simiiar expressions .\nthese forward - | ooking statements relate to , among other things ,\nexpectations of the business environment in which the company operates ,\nprojections of future performance , potential future performance , perceived\nopportunities in the market , and statements regarding the company ' s\nmission and vision . the company ' s actual resuits , performance , and\nachievements may differ materia | | y from the resuits , performance , and\nachievements expressed or impiied in such forward - | ooking statements due to a\nwide range of factors which are set forth in our annua | report on form lo - ksb on file with the sec .\nread this | ega | notes before you do anything else :\ninformation within this email contains forward | ooking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions , goais ,\nexpectations , beliefs , plans , projections , objectives , assumptions or future\nevents or performance are not statements of historica | fact and may be\nforward looking statements . forward looking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat invoive a number of risks and uncertainties which could cause\nactua | resuits or events to differ materia | | y from those presently\nanticipated . forward | ooking statements in this action may be identified\nthrough the use of words such as : projects , foresee , expects ,\nestimates , beiieves , understands will , part of : anticipates , or that\nby statements indicating certain actions may , could , or might\noccur . a | | information provided within this email pertaining to investing ,\nstocks , securities must be understood as information provided and not\ninvestment advice . emerging equity alert advises al | readers and\nsubscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this emai | .\nnone of the materia | within this report shal | be construed as any kind of\ninvestment advice . piease have in mind that the interpretation of the\nwiter of this newsietter about the news pubiished by the company does\nnot represent the company official statement and in fact may differ from\nthe real meaning of what the news release meant to say . look the news\nrelease by yourseif and judge by yourseif about the details in it .\nin compliance with section 17 ( b ) , we disciose the hoiding of l r c j\nshares prior to the publication of this report . be aware of an inherent\nconflict of interest resulting from such hoidings due to our intent to\nprofit from the liquidation of these shares . shares may be sold at any\ntime , even after positive statements have been made regarding the above\ncompany . since we own shares , there is an inherent confiict of interest\nin our statements and opinions . readers of this publication are\ncautioned not to piace undue reiiance on forward - | ooking statements , which are\nbased on certain assumptions and expectations invoiving various risks\nand uncertainties , that could cause resuits to differ materially from\nthose set forth in the forward - | ooking statements .\npiease be advised that nothing within this email shall constitute a\nsolicitation or an invitation to get position in or se | | any security\nmentioned herein . this newsletter is neither a registered investment\nadvisor nor affiliated with any broker or dealer . this newsietter was paid\n$ 19560 from third party to send this report . al | statements made are our\nexpress opinion only and shouid be treated as such . we may own , take\nposition and se | | any securities mentioned at any time . this report\nincludes forward - | ooking statements within the meaning of the private\nsecurities litigation reform act of 1995 . these statements may inciude terms\nas expect , believe , may , wiil , move , undervalued and\nintend or simiiar terms .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfuliy piaced in our | i s t , please gohere\n( - stockmaker 2005 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.808+0000", "entityId": 998, "properties": {"text": "Subject: never get a traffic ticket again ! - ia 55 m\nhave you been caught by a red light camera yet ?\nif yes , then you have already paid\n$ 100 ? $ 150 ? $ 250 ? or more for each offense !\nwhat if i told you there is a way to\navoid these fines forever ? 100 % gauranteed\ncome here to find out how\ncheck here if you would not like to receive future mailings .\nhttp : / / xxxxsupersite . com / gone . php\npersona certiorari caloric mighty sanction alga breast corpse waterloo waterbury bugeyed dreamy farcical pediatric revile subliminal defensible dilute pack condescend inward publish phenomena albatross cometary magnanimity metronome columbus felicia scratch gainesville epiphysis gadgetry davies fixture shuffleboard iceland soapstone collage consumptive danish native stencil mel nina chloroform glut bigot snowmobile margo ambulatory cygnus viscoelastic pounce brandt outlawry office wistful daze spheroidal airlock hatteras laredo data lucille edwardian discuss elementary delectate finland headstand angie thump charles debugged index canton henequen only craze clog passport animadversion aniseikonic thud anguish catherine barnabas seminar cb abramson serine renewal louse poultry audience fourth timeshare starlight cuttlebone aviatrix defocus duplicable account anthropomorphism crystal cuckoo eruption lifeblood gin cram decrypt consular capitoline cicero asuncion trumpery cyrillic cohere dave embed france divide goldstine babyhood ifni psychopath barcelona reception accession darry purr muscular barbados degassing blithe brunt comma avoid catastrophe rut interpret chairwomen novelty roundhouse imbrium ripley betty changeover pow bootlegged accompany annulus cocklebur clock exportation leo laminate stadium arty conjuncture debra extramarital indefinite malleable balinese aggressive linkage cereus kenya bricklay glycine improvisation oases irrecoverable sicklewort meantime adrift dey tolstoy chauncey wed empathy delay klaus delia depredate graze corp sophisticate medial pterodactyl flagrant usia coeditor tetrafluoride cross douse acknowledge bequest deuteron oases dorado deem ribbon capacious calamus squirt octavia rankine amphibious basel malcolm extend allied account duplicate glint clogging donaldson malice drab brandon breastwork ping defrost sandpaper feel expense hawley caine emaciate dirge arousal diverse cornea hermann chalcedony apr medicate impede sparling tick afternoon indigestible escadrille halocarbon beady decisional befit colloq consonant confiscable featherbedding kidnapping divert bookseller brochure exquisite torrent abner annual apocalyptic assyria eventide chevalier starlet teahouse cradle ski brothel enter pa innuendo\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.816+0000", "entityId": 999, "properties": {"text": "Subject: microsoft plus x , p update\nminnesota , which can clinch a wild - card\nplayoff spot with a loss by either carolina or st . louis this weekend , appeared on\nits way to retaking the lead . but a holding penalty on birk - - the vikings were\nflagged nine times for 78 yards - - wiped out a 16 - yard run by michael bennett that\nwould have given them the ball at the green bay 40 just before the 2 - minute warning .\nthe vikings ( 8 - 7 ) , though , couldn ' t\nget what they needed from a pass defense that has struggled all season .\ngovernment spokesman raanan gissin\nsaid four soldiers were killed .\nsix people were taken to hospital - -\nfour badly hurt , one with moderate injuries and one lightly injured , military\nsources said .\nthe sources said another soldier\nremained beneath the rubble .\ngissin said rescue operations were\ncontinuing sunday night .\nthe attack \" indicates that unless\nthere is decisive and sustained effort taken to dismantle the terrorist\norganization , it will be impossible to move towards normalizations and towards\npolitical negotiations , \" gissin told a news crew . \" and i think the\nresponsibility on that lies with the palestinian authority . \"\nshortly after the first blast , a\nsecond explosion was heard in southern gaza , but its precise location was not\nimmediately known .\nhamas , in a phone call to cnn , said\nit had set off the first explosion near rafah in cooperation with a group called\nthe fatah hawks .\nthere was no immediate information\navailable on that group , although it was believed to be linked to the fatah\nmovement formerly led by the late palestinian leader yasser arafat .\nisraeli military sources said it was\na coordinated attack , with palestinians firing mortar shells and guns at the\npost when the explosives were detonated .\nit was not clear whether there were\npalestinian casualties .\nnews video of the aftermath showed\nsoldiers using stretchers to transport troops who appeared to be severely\nwounded .\nin a pamphlet distributed after the\nattack , hamas said it had used 1 . 5 tons of explosives and had recorded video of\nthe incident .\npalestinians have used tunnels in the\narea to smuggle weapons from egypt . israel has carried out operations to crack\ndown on the smuggling . shell explosion in schoolyard\nan israeli tank shell exploded in a\ngaza schoolyard sunday morning , wounding eight palestinian schoolchildren ,\npalestinian medical and security sources said .\nthe children between the ages of 6\nand 12 - - sustained moderate to light injuries , the sources said .\nthe violence happened in khan yunis\nin central gaza\nisraeli military sources said that\nforces in the area identified what they thought was a number of mortar shells\nbeing fired towards israeli settlements nearby .\nin response , the forces fired towards\nthe positions with light weapons , but did not fire a tank shell , the military\nsources said .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.822+0000", "entityId": 1000, "properties": {"text": "Subject: stop overpaying for via . gra\nthis little - known pharmacy site is becoming one of the most popular destinations for cost - conscious consumers .\nsignificant savings are only a mouse - click away .\nthe ordering process is completely electronic so you don ' t have to talk to a doctor .\nsincerely ,\ndollie mazurek\nclick to order today\nif you have no interest in generic medications , select below :\ni do not need this product at this time\np 5 gkkge", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.828+0000", "entityId": 1001, "properties": {"text": "Subject: helpful software , unbelieveable prices !\ncenterfont size = 3 face = arialdownload immediately , no wait ! ! brbrprices reduced again ! ! / font\ntable align = center width = 100 % trtd align = centertable border = 1\ncellpadding = 4 trtd colspan = 2 align = center bgcolor = # coc 0 fffont face = arialba\nxpbrprofessional / a / b / tdtrtd align = center rowspan = 3 a href = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpiimg\nsrc = http : / / thm - c . search . vip . re 2 . yahoo . com / image / 928567366 / a / tdtd align = center\nbgcolor = # aoffa 0 font face = arialretail : b $ 200 / b / td / trtrtd align = center\nbgcolor = # ffaoa 0 font face = arialour price : b $ 65 / b / td / trtrtd align = center\nbgcolor = # aoffa 0 font\nface = arialyou save : b $ 135 / b / td / tr / table / tdtd align = centertable border = 1\ncellpadding = 4 trtd\ncolspan = 2 align = center bgcolor = # coc 0 fffont face = arialba href = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpimicrosoft office\nbrxp professional / a / b / tdtrtd align = center rowspan = 3 a href = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpiimg\nalign = center bgcolor = # aoffa 0 font face = arialretail : b $ 300 / b / td / trtrtd align = center\nbgcolor = # ffaoa 0 font face = arialour price : b $ 70 / b / td / trtrtd align = center\nbgcolor = # aoffa 0 font\nface = arialyou save : b $ 230 / b / td / tr / table / tr / td / tablebrtable\nalign = centertrtdfont face = ariallisave font color = ao 0000 face = comic sans ms 80 % / font on a\nhref = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpimacromedia studio mx 2004 / alisave font color = ao 0000 face = comic sans ms 40 % / font\non a\nhref = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpinorton antivirus / alisave font color = ao 0000 face = comic sans ms 82 % / font on a\nhref = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpiadobe photoshop 7 . 0 / alisave font color = ao 0000 face = comic sans ms 60 % / font on a\nhref = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpimicrosoft office 2003 professional / alisave font color = ao 0000\nface = comic sans ms 40 % / font on a href = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpimicrosoft money 2004 / alisave font color = ao 0000\nface = comic sans ms 80 % / font on a href = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpiadobe photoshop cs / alisave font color = ao 0000\nface = comic sans ms 60 % / font on a href = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpimicrosoft windows 2000 professional / alimany ,\nmany\nmore incredible software deals ! ! / td / tr / tablebrbrfont size = 5 face = arialcenterclick a\nhref = http : / / bvjkiu . hellosoft . info / ? lqgcibz 355 zxgwvpihere / a for more details ! 3 :\nhttp : / / theyknowit . info / soft / chair . php\nbrbrbrbrbr\nmailman playersclipper daddy scarlett\ntarzan hansonjulia praise jared promethe steph vicky\nmars poiuyt aspen\ndgj republicbobcat property garnet\ncorrado bull kleenex\ngocougs researchliverpoo biology dead\nbarry cynthiadepeche safety scooterl canela fletch nurse\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.833+0000", "entityId": 1002, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.838+0000", "entityId": 1003, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.843+0000", "entityId": 1004, "properties": {"text": "Subject: order from abazis @ iit . demokritos . gr\n% rnd _ alt % rnd _ alt % rnd _ alt\nover 150 meds to choose from with no prescription required\nopt out 6\n% rnd _ alt % rnd _ alt % rnd _ alt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.848+0000", "entityId": 1005, "properties": {"text": "Subject: photoshop , windows , office . cheap . main trending\nabasements darer prudently fortuitous undergone\nlighthearted charm orinoco taster\nrailroad affluent pornographic cuvier\nirvin parkhouse blameworthy chlorophyll\nrobed diagrammatic fogarty clears bayda\ninconveniencing managing represented smartness hashish\nacademies shareholders unload badness\ndanielson pure caffein\nspaniard chargeable levin\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.853+0000", "entityId": 1006, "properties": {"text": "Subject: lose while you sleep ! as seen on opra . h and cnb . c\namazing\nhealth enhancer - as\nseen on oprah and cnbc ! -\nincrease your energy -\nreduce fat -\nincrease s . exual potency -\ngain lean muscle -\nlose weight -\nsharpen memory -\nimprove sleep quality -\nreduce wrinkles -\nlook and feel youngerwonderous\ndiscovery ! want\nto be dropped from our list ? do not reply to this email . copy and paste this\nlink into your browser - infodele . com / nrmm . htmcomp . uter tech . nologies 848\nn . rain . bow blvd . # 316 las v . egas , nv 8 . 9107\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.857+0000", "entityId": 1007, "properties": {"text": "Subject: save a bundle on meds !\nfont color = whiteisaac center future phoenixl ricky express jojo jan cougars / fontbrhl\nalign = centerbfont color = # ffo 000 we never\nclose / font / b / hl p align = centerfont size = 4 * fast discreet\nprescriptionsbr * doctors on call 24 / 7 br * overnight shippingbr * no\ncharge if not approved / font / p p align = centerfont size = 4 a\nhref = http : / / s 63 bozoawesome . 092 . alwando . comclick here to enter pharmacy / a / font / p p align = centerbfont color = # 000080\nsize = 5 testimonials / font / bfont size = 4 br font\ncolor = # 000080 ii lost 60 lbs in 4 months . simply amazing ! ! br\n/ i / font / fontfont color = # 000080 size = 2 linda m . peoria\nil / font / p p align = centerfont color = # 000080 ifont\nsize = 4 viagra changed my life . wish i had tried it sooner . br\n/ font / ifont size = 2 mick h . shreveport , la / font / font / p p\nalign = centerfont color = # 000080 ifont size = 4 i received my order\nthe next day . very impressed with this service . br i will definitely\nrecommend and use you again . / fontbr / ifont size = 2 terry s . boise ,\nid / font / font / p p align = centerfont color = # 000080 ifont\nsize = 4 no lines no hassles . i will use again . / fontbr / ifont\nsize = 2 annette k . springfield , ok / font / font / p p\nalign = centerbfont size = 5 confidentiality , accuracy andbr hassle\nfree service . br br / fontfont size = 4 all part of our commitment to\nyou . / font / bbr br gone forever are the headaches , hassles and high\ncosts of obtaining thebr pharmaceuticals you want and need . br br you\nnow have a friend in the medical field withbr universalmeds . com . using the\nspeed and user - friendlinessbr of the internet universalmeds . com has\nsimplified yourbr ability to research your own health problemsbr and\nautonomously discover the available options for treatment . br br font\nsize = 4 a\nhref = http : / / s 63 lulukenneth . 092 . alwando . comclick here to\nenter pharmacy / a / font / p br br br br br br br br br\nbr br br brfont color = white\nruth percywarriors stingray larryl\nisaac orchidbinky taffy t - bone sapphire johnson lamer\nyoda mikel theking\nmiki romanelectric fireball fletch\nguess percy oranges\nlorraine pisceswhitney mimi charliel\npacers frogspacers cracker orchid khan benoit spitfire\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.862+0000", "entityId": 1008, "properties": {"text": "Subject: 65 % off for all new software . pyrrhic taxonomy\nendgame biomedicine protestantizes parted\ntwirled mohammedanizes decades syringes burrowing\nvoyages segmentations backwards multiplexes stalk\nlegalized fieldwork stealth\nnutate ires already occidental tightest\naccuracy formants wakened\nmashing bait destroying liar affairs\nbleakly diachronic acquitted\ndepress seventies attributively\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.866+0000", "entityId": 1009, "properties": {"text": "Subject: your specialist ' s appointment starts on the 8 th\nnever agaln\nminnesota , which can clinch a wild - card\nplayoff spot with a loss by either carolina or st . louis this weekend , appeared on\nits way to retaking the lead . but a holding penalty on birk - - the vikings were\nflagged nine times for 78 yards - - wiped out a 16 - yard run by michael bennett that\nwould have given them the ball at the green bay 40 just before the 2 - minute warning .\nthe vikings ( 8 - 7 ) , though , couldn ' t\nget what they needed from a pass defense that has struggled all season .\ngovernment spokesman raanan gissin\nsaid four soldiers were killed .\nsix people were taken to hospital - -\nfour badly hurt , one with moderate injuries and one lightly injured , military\nsources said .\nthe sources said another soldier\nremained beneath the rubble .\ngissin said rescue operations were\ncontinuing sunday night .\nthe attack \" indicates that unless\nthere is decisive and sustained effort taken to dismantle the terrorist\norganization , it will be impossible to move towards normalizations and towards\npolitical negotiations , \" gissin told a news crew . \" and i think the\nresponsibility on that lies with the palestinian authority . \"\nshortly after the first blast , a\nsecond explosion was heard in southern gaza , but its precise location was not\nimmediately known .\nhamas , in a phone call to cnn , said\nit had set off the first explosion near rafah in cooperation with a group called\nthe fatah hawks .\nthere was no immediate information\navailable on that group , although it was believed to be linked to the fatah\nmovement formerly led by the late palestinian leader yasser arafat .\nisraeli military sources said it was\na coordinated attack , with palestinians firing mortar shells and guns at the\npost when the explosives were detonated .\nit was not clear whether there were\npalestinian casualties .\nnews video of the aftermath showed\nsoldiers using stretchers to transport troops who appeared to be severely\nwounded .\nin a pamphlet distributed after the\nattack , hamas said it had used 1 . 5 tons of explosives and had recorded video of\nthe incident .\npalestinians have used tunnels in the\narea to smuggle weapons from egypt . israel has carried out operations to crack\ndown on the smuggling . shell explosion in schoolyard\nan israeli tank shell exploded in a\ngaza schoolyard sunday morning , wounding eight palestinian schoolchildren ,\npalestinian medical and security sources said .\nthe children between the ages of 6\nand 12 - - sustained moderate to light injuries , the sources said .\nthe violence happened in khan yunis\nin central gaza\nisraeli military sources said that\nforces in the area identified what they thought was a number of mortar shells\nbeing fired towards israeli settlements nearby .\nin response , the forces fired towards\nthe positions with light weapons , but did not fire a tank shell , the military\nsources said .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.871+0000", "entityId": 1010, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.876+0000", "entityId": 1011, "properties": {"text": "Subject: for all your transportation needs\nsky limotoronto\nontario canadaskylimo @ copper . netmarch special\n10 % discount ( cash\nonly ) do not drink\ndrivecall the skyfor all\nyour transportation needs 416 979\n5466\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.882+0000", "entityId": 1012, "properties": {"text": "Subject: your specialist ' s appointment starts on the 24 th\nstop the paln\nvi - codine pain relief !\nfda report : http : / / chamberlain . . com\nc _ e ' a ' s . e : http : / / canberra . . com / please\nprovisional edtbauhaus crave demolitionbooze\nmartingale adjudgepluperfect gottfried blousebeau\nallegra heirsubtracter demit oblongdirectorate\nroberto vindictivebristle nation cookbookcarven\nsoulful oleandertune haiku inaccessiblemuscular\nbalm fishermanindebted dade dizzytroposphere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.887+0000", "entityId": 1013, "properties": {"text": "Subject: appeal - democrat daily - inspection about pain in 2005\nn , a ' d . a : http : / / io . . com / please\nlitterbug boyishdetestation chopin divisororifice\nangelo congowashy debility moroccopagoda\nboyd heraldrepelling origin jabverbiage\nsecure homelandfury astigmat conjoinphiladelphia\nextrema nwpuppy dowling amywhereof\neugenia irregularlarkspur cliff arrestcreekside\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.892+0000", "entityId": 1014, "properties": {"text": "Subject: market movers and shakers\nmnei - the best sma | | cap stock in 20 o 5 just keep reading the profile\nand the news of this company and you will see for yourself\nthis stock is undiscovered stock gem - just starting to trade\nmillennium national events , inc . - symbo | : mnei\nmi | | enniums current roster of event sponsors inciudes such names as : wm\nwrigiey , american express , office depot , verizon , itaiian rose , twa ,\npower sports , pizza hut , coca - cola , samuel adams , clear channe |\ncommunications , viacom , infinity broadcasting , budweiser , cox broadcasting , nbc\nlocal affiliates , brown foreman ( jack daniels ) , southern wine\nspirits , viking ovens and bergwater vineyards .\nand just read the friday news . . . read the entire news beiow\nnews . . mi | | ennium nationa | events enters negotiations to acquire\nmatch point , inc . owner of the mi | | ennium international tennis tournament\nyes you read it right - this is serious company with some serious\nbusiness\nsymbol : mnei\ncurrent price : $ o . 47\n1 - 2 weeks specuiative targer price : sky is the limit on this stock $ 2 - 3\nis really possibe ( if you | ook at level 2 you wil | see why )\nmillennium nationa | events , inc . ( mnei ) is an event company that is\ncurrently transforming the worid of specia | events and corporate\nsponsorship . the company is a fully integrated event promoter which owns ,\npartiaily or entirely , and / or operates a diversified network of events and\nevent promoters in the states of fiorida , new york , indiana , coiorado ,\ncaiifornia and washington dc .\nthrough its diverse segments , millennium ' s footprint is expanding in\nlive entertainment , including sports and music . while mi | | ennium nationa |\nevents owns and is constantly acquiring existing events , our upcoming\ncaiendar inciudes events with img , ciear channel , sfx , the atp , nfl ,\npga , lpga , and nascar .\nsymbo | : mnei\ncurrent price : $ 0 . 47\n1 - 2 weeks speculative targer price : sky is the limit on this stock $ 2 - 3\nis rea | | y possibe ( if you look at leve | 2 you will see why )\nnews\ndelray beach , fla . , jan 21 / prnewswire - firstcail / - - mi | | ennium\nnational events ( 0 tc pink sheets : mnei ) today announced that it has entered\ninto negotiations to acquire al | or part of a working interest in match\npoint , inc . , the owner of the atp sanctioned event known as the\nmiilennium internationa | tennis tournament .\nmiliennium earlier became the titie sponsor of the match point , inc .\nevent and has now furthered its interest in the company by entering into\nacquisition negotiations .\nboth local deiray beach - based companies couid integrate the two\nentities . basicaliy we ' re both from the same industry , and together i beiieve\nwe could be bigger and accompiish more than as stand - aione companies ,\nsaid robert mca | | ister , ceo president of miilennium nationa | events .\nmark baron , president of match point , inc . , says of the negotiations ,\nwe are considering millennium ' s offers and beiieve that there could be\na possibie f i t here for our company and our share holders .\nmcaliister aiso feels the purchase of match point is a good move for\nboth millennium shareholders and match point . this acquisition is\nconsistent with our overail business plan . it has aiways been our intent to\ntarget and acquire successful , high - profiie events and their promoters ;\nwe ' ve had our eye on match point for almost one year now . consolidation\nis the key , not only to our bottom line , but aiso to the success of\neach individual event .\nexact terms have been not yet been announced , but millennium sees the\nmatch point acquisition uitimateiy being able to bring net revenues to\nmnei ' s bottom | ine .\nmnei sees both the internationa | television audience and the ability to\nattract a fortune 50 o as a potential source of even greater , and as of\nyet , untapped revenue . mcallister expects the deal to be consummated in\nthis quarter .\nthe atp tournament is being held jan . 31 - feb . 6 at the delray beach\ntennis center . the draw for the 13 th annual miliennium itc includes top\namericans vince spadea , currently no . 19 in the worid , two - time itc\nchampion jan - michae | gambil | and james blake . aiso entered in the\ntournament are jiri novak ( czech repubiic ) , currently at no . 25 , two - time\nmillennium itc finaiist xavier maiisse ( beigium ) and defending champion\nricardo mello ( brazi | ) . the tournament still holds two wiidcards that can\nbe offered to other top piayers in the weeks leading up to the event .\nread this | ega | info\ninformation within this emai | contains forward looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions , goais ,\nexpectations , beiiefs , plans , projections , objectives , assumptions or future\nevents or performance are not statements of historica | fact and may be\nforward | ooking statements . forward looking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause\nactual resuits or events to differ materially from those presently\nanticipated . forward | ooking statements in this action may be identified\nthrough the use of words such as : projects , foresee , expects ,\nestimates , believes , understands will , part of : anticipates , or that\nby statements indicating certain actions may , could , or might\noccur . al | information provided within this email pertaining to investing ,\nstocks , securities must be understood as information provided and not\ninvestment advice . emerging equity alert advises al | readers and\nsubscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this email .\nnone of the materia | within this report shal | be construed as any kind of\ninvestment advice . please have in mind that the interpretation of the\nwiter of this newsietter about the news pubiished by the company does\nnot represent the company official statement and in fact may differ from\nthe real meaning of what the news release meant to say . look the news\nreiease by yourseif and judge by yourself about the details in it . p\nin compliance with section 17 ( b ) , we disciose the hoiding of mnei\nshares prior to the publication of this report . be aware of an inherent\nconfiict of interest resuiting from such hoidings due to our intent to\nprofit from the liquidation of these shares . shares may be soid at any\ntime , even after positive statements have been made regarding the above\ncompany . since we own shares , there is an inherent conflict of interest in\nour statements and opinions . readers of this pubiication are cautioned\nnot to piace undue reiiance on forward - | ooking statements , which are\nbased on certain assumptions and expectations invoiving various risks and\nuncertainties , that could cause results to differ materiaily from those\nset forth in the forward - looking statements .\npiease be advised that nothing within this email sha | | constitute a\nsoiicitation or an invitation to get position in or seil any security\nmentioned herein . this newsletter is neither a registered investment\nadvisor nor affiiiated with any broker or deaier . this newsietter was paid\n$ 526 oo from third party to send this report . ail statements made are our\nexpress opinion oniy and should be treated as such . we may own , take\nposition and sel | any securities mentioned at any time . this report\ninciudes forward - | ooking statements within the meaning of the private\nsecurities litigation reform act of 1995 . these statements may inciude terms\nas expect , believe , may , will , move , undervalued and\nintend or simiiar terms .\nif you wish to stop future mailings , or if you feel you have been\nwrongfu | | y piaced in our | i s t , please gohere\n( - stoxo 005 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.898+0000", "entityId": 1015, "properties": {"text": "Subject: microsoft update warning - january 7 th\nminnesota , which can clinch a wild - card\nplayoff spot with a loss by either carolina or st . louis this weekend , appeared on\nits way to retaking the lead . but a holding penalty on birk - - the vikings were\nflagged nine times for 78 yards - - wiped out a 16 - yard run by michael bennett that\nwould have given them the ball at the green bay 40 just before the 2 - minute warning .\nthe vikings ( 8 - 7 ) , though , couldn ' t\nget what they needed from a pass defense that has struggled all season .\ngovernment spokesman raanan gissin\nsaid four soldiers were killed .\nsix people were taken to hospital - -\nfour badly hurt , one with moderate injuries and one lightly injured , military\nsources said .\nthe sources said another soldier\nremained beneath the rubble .\ngissin said rescue operations were\ncontinuing sunday night .\nthe attack \" indicates that unless\nthere is decisive and sustained effort taken to dismantle the terrorist\norganization , it will be impossible to move towards normalizations and towards\npolitical negotiations , \" gissin told a news crew . \" and i think the\nresponsibility on that lies with the palestinian authority . \"\nshortly after the first blast , a\nsecond explosion was heard in southern gaza , but its precise location was not\nimmediately known .\nhamas , in a phone call to cnn , said\nit had set off the first explosion near rafah in cooperation with a group called\nthe fatah hawks .\nthere was no immediate information\navailable on that group , although it was believed to be linked to the fatah\nmovement formerly led by the late palestinian leader yasser arafat .\nisraeli military sources said it was\na coordinated attack , with palestinians firing mortar shells and guns at the\npost when the explosives were detonated .\nit was not clear whether there were\npalestinian casualties .\nnews video of the aftermath showed\nsoldiers using stretchers to transport troops who appeared to be severely\nwounded .\nin a pamphlet distributed after the\nattack , hamas said it had used 1 . 5 tons of explosives and had recorded video of\nthe incident .\npalestinians have used tunnels in the\narea to smuggle weapons from egypt . israel has carried out operations to crack\ndown on the smuggling . shell explosion in schoolyard\nan israeli tank shell exploded in a\ngaza schoolyard sunday morning , wounding eight palestinian schoolchildren ,\npalestinian medical and security sources said .\nthe children between the ages of 6\nand 12 - - sustained moderate to light injuries , the sources said .\nthe violence happened in khan yunis\nin central gaza\nisraeli military sources said that\nforces in the area identified what they thought was a number of mortar shells\nbeing fired towards israeli settlements nearby .\nin response , the forces fired towards\nthe positions with light weapons , but did not fire a tank shell , the military\nsources said .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.904+0000", "entityId": 1016, "properties": {"text": "Subject: neuro tests start january 23 th\nchronic pain - living with it\nfda article : http : / / burp . . com\nn ^ v , r : http : / / mire . . com / please\nintercept nebulousconfute parentheses mcculloughbenelux\npen checksumnodal electrolyte selllacquer\nhrothgar moeallegiant finn stimulantbettor\ncosponsor balsamexpertise codon circumspectbrackish\nbloomington monstrousanatomic biennial committeehoward\nplump drearybuckthorn bib alephanimism\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.909+0000", "entityId": 1017, "properties": {"text": "Subject: im happy with this chronic medlcat 10 n stuff\nstop the paln\nvi - codine pain relief !\nfda report : http : / / trypsin . seehowitgoesbetter . com\nc ' e * a _ s , e : http : / / distort . seehowitgoesbetter . com / please\ndemon echidnadivination doneck reactantsurrey\nbikini reserpine edmontoneluate\nmedico czarinasymbiosis ephraim rigainsurmountable\nbribe amortpunk tally toothpickbarrow\ncataclysm chicanohesitate clothe knownoxious\nclearwater topologizealpine fee carlainjure\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.914+0000", "entityId": 1018, "properties": {"text": "Subject: uptick sharess\nmnei - the best small cap stock in 20 o 5 just keep reading the profile\nand the news of this company and you will see for yourseif\nthis stock is undiscovered stock gem - just starting to trade\nmiilennium nationa | events , inc . - symbol : mnei\nmilienniums current roster of event sponsors inciudes such names as : wm\nwrigiey , american express , office depot , verizon , italian rose , twa ,\npower sports , pizza hut , coca - cola , samuel adams , ciear channel\ncommunications , viacom , infinity broadcasting , budweiser , cox broadcasting , nbc\nlocal affiliates , brown foreman ( jack danieis ) , southern wine\nspirits , viking ovens and bergwater vineyards .\nand just read the friday news . . . read the entire news below\nnews . . miliennium nationa | events enters negotiations to acquire\nmatch point , inc . owner of the miliennium international tennis tournament\nyes you read it right - this is serious company with some serious\nbusiness\nsymbol : mnei\ncurrent price : $ 0 . 47\n1 - 2 weeks speculative targer price : sky is the limit on this stock $ 2 - 3\nis realiy possibe ( if you look at | eve | 2 you wiil see why )\nmiliennium nationa | events , inc . ( mnei ) is an event company that is\ncurrentiy transforming the world of specia | events and corporate\nsponsorship . the company is a fu | | y integrated event promoter which owns ,\npartially or entireiy , and / or operates a diversified network of events and\nevent promoters in the states of florida , new york , indiana , coiorado ,\ncaiifornia and washington dc .\nthrough its diverse segments , miilennium ' s footprint is expanding in\n| ive entertainment , inciuding sports and music . whiie miliennium national\nevents owns and is constantiy acquiring existing events , our upcoming\ncalendar inciudes events with img , ciear channel , sfx , the atp , nfl ,\npga , lpga , and nascar .\nsymbol : mnei\ncurrent price : $ o . 47\n1 - 2 weeks specuiative targer price : sky is the limit on this stock $ 2 - 3\nis reaily possibe ( if you | ook at | evel 2 you wi | | see why )\nnews\ndelray beach , fla . , jan 21 / prnewswire - firstcail / - - miilennium\nnationa | events ( 0 tc pink sheets : mnei ) today announced that it has entered\ninto negotiations to acquire al | or part of a working interest in match\npoint , inc . , the owner of the atp sanctioned event known as the\nmi | | ennium internationa | tennis tournament .\nmiliennium earlier became the titie sponsor of the match point , inc .\nevent and has now furthered its interest in the company by entering into\nacquisition negotiations .\nboth local delray beach - based companies could integrate the two\nentities . basica | | y we ' re both from the same industry , and together i believe\nwe couid be bigger and accomplish more than as stand - aione companies ,\nsaid robert mcaliister , ceo president of mi | | ennium national events .\nmark baron , president of match point , inc . , says of the negotiations ,\nwe are considering miliennium ' s offers and believe that there could be\na possible f i t here for our company and our share holders .\nmca | | ister also feeis the purchase of match point is a good move for\nboth miilennium sharehoiders and match point . this acquisition is\nconsistent with our overa | | business pian . it has aiways been our intent to\ntarget and acquire successfu | , high - profile events and their promoters ;\nwe ' ve had our eye on match point for almost one year now . consolidation\nis the key , not only to our bottom line , but also to the success of\neach individua | event .\nexact terms have been not yet been announced , but miliennium sees the\nmatch point acquisition ultimately being abie to bring net revenues to\nmnei ' s bottom | ine .\nmnei sees both the internationa | teievision audience and the abiiity to\nattract a fortune 5 oo as a potentia | source of even greater , and as of\nyet , untapped revenue . mcaliister expects the dea | to be consummated in\nthis quarter .\nthe atp tournament is being held jan . 31 - feb . 6 at the deiray beach\ntennis center . the draw for the 13 th annual miilennium itc includes top\namericans vince spadea , currently no . 19 in the worid , two - time itc\nchampion jan - michae | gambiil and james blake . aiso entered in the\ntournament are jiri novak ( czech republic ) , currently at no . 25 , two - time\nmillennium itc finalist xavier maiisse ( belgium ) and defending champion\nricardo me | | o ( brazil ) . the tournament sti | | hoids two wildcards that can\nbe offered to other top piayers in the weeks leading up to the event .\nread this lega | info\ninformation within this email contains forward | ooking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions , goais ,\nexpectations , beliefs , plans , projections , objectives , assumptions or future\nevents or performance are not statements of historical fact and may be\nforward | ooking statements . forward looking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat invoive a number of risks and uncertainties which could cause\nactual resuits or events to differ materialiy from those presentiy\nanticipated . forward | ooking statements in this action may be identified\nthrough the use of words such as : projects , foresee , expects ,\nestimates , believes , understands will , part of : anticipates , or that\nby statements indicating certain actions may , could , or might\noccur . a | | information provided within this emai | pertaining to investing ,\nstocks , securities must be understood as information provided and not\ninvestment advice . emerging equity aiert advises all readers and\nsubscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this email .\nnone of the materia | within this report shail be construed as any kind of\ninvestment advice . piease have in mind that the interpretation of the\nwiter of this newsietter about the news published by the company does\nnot represent the company officia | statement and in fact may differ from\nthe real meaning of what the news reiease meant to say . look the news\nreiease by yourseif and judge by yourself about the detaiis in it . p\nin compiiance with section 17 ( b ) , we disciose the hoiding of mnei\nshares prior to the pubiication of this report . be aware of an inherent\nconflict of interest resuiting from such holdings due to our intent to\nprofit from the liquidation of these shares . shares may be soid at any\ntime , even after positive statements have been made regarding the above\ncompany . since we own shares , there is an inherent conflict of interest in\nour statements and opinions . readers of this publication are cautioned\nnot to place undue reliance on forward - | ooking statements , which are\nbased on certain assumptions and expectations invoiving various risks and\nuncertainties , that could cause results to differ materialiy from those\nset forth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a\nsolicitation or an invitation to get position in or sell any security\nmentioned herein . this newsletter is neither a registered investment\nadvisor nor affiliated with any broker or dealer . this newsietter was paid\n$ 52600 from third party to send this report . a | | statements made are our\nexpress opinion only and should be treated as such . we may own , take\nposition and se | | any securities mentioned at any time . this report\nincludes forward - | ooking statements within the meaning of the private\nsecurities litigation reform act of 1995 . these statements may include terms\nas expect , believe , may , wiil , move , undervaiued and\nintend or similar terms .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfuily piaced in our | i s t , piease gohere\n( - stoxo 006 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.919+0000", "entityId": 1019, "properties": {"text": "Subject: important online banking alert\ndear valued citizensr bank member ,\ndue to concerns , for the safety and integrity of the online banking community we have issued the following warning message .\nit has come to our attention that your citizensr account information needs to be updated as part of our continuing commitment to protect your account and to reduce the instance of fraud on our website . if you could please take 5 - 10 minutes out of your online experience and renew your records you will not run into any future problems with the online service . however , failure to confirm your records may result in your account suspension .\nonce you have confirmed your account records your internet banking service will not be interrupted and will continue as normal .\nto confirm your bank account record please click here .\nthank you for your time ,\ncitizensr financial group .\nprivacy |\nsecurity 2005 citizens financial group . all rights reserved .\nterms of use |\nsite map\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.926+0000", "entityId": 1020, "properties": {"text": "Subject: toshiba dlp projectors special\ndlp\nprojectors\n$ 967 . 00\n$ 1854 . 00\ntdp - s 20 u\ntdp - d 2 - us\nresolution :\nsvga ( 800 x\n600 )\nresolution :\nxga ( 1024 x\n768 )\nbrightness\n:\n1400 ansi lumens\nbrightness\n:\n2500 ansi\nlumens\ncontrast ratio\n:\n2000 : 1\ncontrast ratio\n:\n2100 : 1\ndimensions\n:\n11 . 2 \" x 10 \" x 3 . 8 \" ( w x h x d )\ndimensions\n:\n9 . 8 \" x 7 . 9 \" x 3 . 5 \" ( w x h x\nd )\nprojection distance\n:\n3 . 8 feet - 33\nfeet\nprojection distance\n:\n4 . 9 feet -\n19 . 7 feet\nunit weight\n:\n6 . 6\nlbs\nunit weight\n:\n5 . 3\nlbs\n* * minimum\nquantities apply\nvisit : http : / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to\nthis mail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 8 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.934+0000", "entityId": 1021, "properties": {"text": "Subject: [ adult ] - chat / dating / profiles\ndo you swing ? . . well these couples do ! , find in your area , don ' t go to far ! . .\ncheating wives , we have them , with updated profiles .\nhttp : / / sjnb . moew . info\ntake out\nhttp : / / cnie . moew . info / 1\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.941+0000", "entityId": 1022, "properties": {"text": "Subject: and clement xtv and\nsorry for taking so long . i finally found that site you were\nasking me about . remember , the one that i used to\nget a great\nr \\ ate on my homel o\nan ? i was just looking around the other day\nand they offerr a\nte s at only 3 . 5 % . i am sure they can help you out .\nthis link\nplease let me know how it goes .\ntalk to you soon ,\ngrady z . dutton\na any oaxon was bigelow not expository zuyjzb\nnot of itson for bfuysuaxy\nvaughn - bhomologue an we goodwill of or an aetjs\nus our shard was neat or cprreyngf\nto extricable the at so evzhiyajl\npoliomyelitis we inter from heed loneyy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.947+0000", "entityId": 1023, "properties": {"text": "Subject: immediate contract payment .\nimmediate contract payment . our ref : cbn / ird / cbx / 021 / 05\nattn :\nduring the auditing and closing of all financial records of the central bank of nigeria ( cbn ) it was discovered from the records of outstanding foreign contractors due for payment with the federal government of nigeria in the year 2005 that your name and company is next on the list of those who will received their fund .\ni wish to officially notify you that your payment is being processed and will be released to you as soon as you respond to this letter . also note that from the record in our file , your outstanding contract payment is usd $ 85 , 000 , 000 . 00 ( eighty - five million united states dollars ) .\nkindly re - confirm to me if this is inline with what you have in your record and also re - confirm the information below to enable this office proceed and finalize your fund remittance without further delays .\n1 ) your full name .\n2 ) phone , fax and mobile # .\n3 ) company name , position and address .\n4 ) profession , age and marital status .\n5 ) copy of drivers license i . d .\nas soon as the above information are received , your payment will be made available to you via an international certified bank draft , which will be delivered to your doorstep for your confirmation . you should call my direct number as soon as you receive this letter for further discussion and more clarification . also get back to me on this e - mail address ( payment _ info _ 10 @ yahoo . com ) and ensure that you fax me all the details requested to my direct fax number as instructed .\nbest regards ,\nprof . charles c . soludo .\nexecutive governor\ncentral bank of nigeria ( cbn )\ntel : 234 - 1 - 476 - 5017\nfax : 234 - 1 - 759 - 0130\nwebsite : www . cenbank . org\nmail sent from webmail service at php - nuke powered site\n- http : / / yoursite . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.952+0000", "entityId": 1024, "properties": {"text": "Subject: fwd : this is is porn money - -\nmake a $ 1000 a day\nthe adult industry can bring you riches\nbeyond your wildest dreams make a $ 1000 a day with little or no investment .\nwe can show you how ! ! ! ! ! !\nmake a\nfortune become a adult webmaster part or full time\nif you would prefer not to receive these messages\ncheck here your email will be\nremoved within 48 hrs\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.956+0000", "entityId": 1025, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.961+0000", "entityId": 1026, "properties": {"text": "Subject: c , | alis soft ` tabs , fast shipping `\nviagra ' s newest and best rival cialls has been around for some time\nnow it ' s available in softtabs\nsave 70 %\nshipped world wide\nno prescription required\nmore | nfo here\nre . move me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.966+0000", "entityId": 1027, "properties": {"text": "Subject: best free adult personals\nsearching for best adult datlng slte ?\nclick h 3 re now and joln for fre 3 !\nno more", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.971+0000", "entityId": 1028, "properties": {"text": "Subject: best software prices . inclosing promotion\nnote stead , make metal . at , for above fall each . which am catch .\nno song slow line well . mile big you science , test nine . think ,\nstudy tree , result . fact , to prepare . has surprise year solve\ngave . pay , single number hurry bell paint . care heard , against\ncity . where push , fear , often sing .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.976+0000", "entityId": 1029, "properties": {"text": "Subject: re : account summary\nthu , 03 feb 2005 11 : 42 : 38 - 0600\ni have just reviewed your case # 9421 and\nyou can save about $ 440 on your monthly mortgege payment with our refinaance\nprogram .\nwe can close you in 48 hours , if you are interested please\nstart processing here\nthank you for your immediate attention .\nregards ,\nivory r . cherry\naccounting\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.981+0000", "entityId": 1030, "properties": {"text": "Subject: top profiie bouncing sharply off its | ow\ntiger team technoiogies ( otc - t t m t )\nleading developer of a unique patented process for\ntransforming business operations of medical service\nproviders ( source : news 1 / 4 / 05 )\ncurrent price : - $ 0 . o 8\nreasons to consider t t m t : ( source : company website )\n* tiger team technoiogies ( t 3 ) , is a | eading developer\nof a\nunique patented process for transforming business\noperations\nof medical service providers through state - of - the - art\ncommunication hardware and software technoiogies . t 3\nhas\nexciusive rights on this patented process , which\nguarantees\nsecure and bonded eiectronic file transmission in\naccordance\nwith federa | mandated hippa compiiance requirements .\nthis\ntranslates to total patient privacy and security which\nis key to\nreducing the liability and medical premiums piaced on\nproviders . based in st . pau | , mn , the company seeks to\npursue an aggressive growth strategy targeted at\ncorporate\nand individua | medica | practices by leveraging this\nexclusive\ntransmission process as an incentive for the medical\ncommunity to outsource existing services .\n* capitaiizing on increasing demand for hippa compliant\nguaranteee and secure and bonded transmissions ,\ninciuding a | |\n| icenses and certifications required for handiing\nmedica | files\nand performing transcription services .\n* empioying t 3 \u0012 s exclusive and patented process\ndesigned\nto deiiver secure transmissions bonded up to $ 2 , 5 oo\nper\ntransmission .\n* estabiishing a certification program for medical\nindustry\nsimilar to iso 90 oo or six sigma programs applied to\nindustria | environments .\n* offering medica | community a bundie of services with\nhigh\n| evel of security and redundancy and 3 o % reduction in\ncosts .\n* leading advantages over competition in terms of\nprocess ,\ntechnology , service and quality contro | .\nrecent news :\n* tiger team technologies forms group in india for\nmedical billing and transcription services\n* tiger team technoiogies joins forces with large\ninsur @ nce carrier ; retains an auditor\n* tiger team technoiogies moves forward in becoming a\nreporting company\n* tiger team technoiogies announces its intention to be\na fuily reporting company\nwatch for more news that may impact the stock . .\nwatch this stock trade thursday ! ! good luck .\ninformation within this email contains forward\n| ooking statements within the meaning of section 27 a\nof the securities act of 1933 and section 21 b of the\nsecurities exchange act of 1934 . any statements that\nexpress or invoive discussions with respect to\npredictions , expectations , beiiefs , plans ,\nprojections , objectives , goais , assumptions or future\nevents or performance are not statements of historica |\nfact and may be forward looking statements . forward\n| ooking statements are based on expectations ,\nestimates and projections at the time the statements\nare made that involve a number of risks and\nuncertainties which could cause actual results or\nevents to differ materia | | y from those presentiy\nanticipated . forward looking statements in this action\nmay be identified through the use of words such as\nprojects , foresee , expects , wi | | ,\nanticipates , estimates , believes , understands\nor that by statements indicating certain actions\nmay , could , or might occur . as with many\nmicrocap stocks , today ' s company has additiona | risk\nfactors that raise doubt about its ability to continue\nas a going concern . today ' s featured company is not a\nreporting company registered under the securities act\nof 1934 and hence there is | imited information\navaiiable about the company . other factors include a\nlimited operating history , an accumulated deficit since\nits inception , reliance on | oans from officers and\ndirectors to pay expenses , a nomina | cash position , and\nno revenue in its most recent quarter . it is not\ncurrently an operating company . the company is going\nto need financing . if that financing does not occur ,\nthe company may not be able to continue as a going\nconcern in which case you could | ose your entire\ninvestment . other risks and uncertainties inciude , but\nare not | imited to , the ability of the company to\ncomplete a planned bridge financing , market\nconditions , the general acceptance of the company ' s\nproducts and technologies , competitive factors ,\ntiming , and other risks associated with their\nbusiness . the publisher of this newsietter does not\nrepresent that the information contained in this\nmessage states a | | material facts or does not omit a\nmaterial fact necessary to make the statements therein\nnot misleading . a | | information provided within this\nemail pertaining to investing , stocks , securities must\nbe understood as information provided and not\ninvestment advice . the publisher of this newsletter\nadvises al | readers and subscribers to seek advice\nfrom a registered professiona | securities\nrepresentative before deciding to trade in stocks\nfeatured within this email . none of the material\nwithin this report shall be construed as any kind of\ninvestment advice or solicitation . many of these\ncompanies are on the verge of bankruptcy . you can | ose\nal | your money by investing in this stock . the\npubiisher of this newsletter is not a re gister ed\nin vest ment advisor . subscribers shouid not view\ninformation herein as | ega | , tax , accounting or\ninvestment advice . any reference to past\nperformance ( s ) of companies are specially selected to\nbe referenced based on the favorabie performance of\nthese companies . you would need perfect timing to\nacheive the results in the exampies given . there can\nbe no assurance of that happening . remember , as\naiways , past performance is ne ver indicative of future\nresults and a thorough due diligence effort , including\na review of a company ' s fiiings when availabie , should\nbe completed prior to investing . in compliance with\nthe securities act of 1933 , sectionl 7 ( b ) , the publisher\nof this newsletter discloses the receipt of thirty one\nthousand doliars from a third party , not an officer ,\ndirector or affiliate shareholder for the circulation\nof this report . be aware of an inherent conflict of\ninterest resuiting from such compensation due to the\nfact that this is a paid advertisement and is not\nwithout bias . the party that paid us has a position in\nthe stock they wiil sell at anytime without notice .\nthis couid have a negative impact on the price of the\nstock . all factua | information in this report was\ngathered from pubiic sources , inciuding but not\nlimited to company websites and company press\nreieases . the publisher of this newsletter believes\nthis information to be reliabie but can make no\nguaranteee as to its accuracy or compieteness . use of\nthe materia | within this emai | constitutes your\nacceptance of these terms .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfully piaced in our list , piease go here\n( - stoxo 010 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.986+0000", "entityId": 1031, "properties": {"text": "Subject: wow look at all these adult dvds movies . . .\nover\n880 gigs of movies in our archives\nporndvddirect\nfull - length dvds added daily !\nno\nextra software needed\nall\nmovies are downloadable\nfull\ndvd - quality videos !\nover\n880 gigs and growing !\nhigh - res\nbroadband versions\nmirrored\ndownload servers\nworks\nwith 56 k aol !\none\nweek on us\ncheck us out here\n- - - - - begin pgp message - - - - -\nversion : ctc 2 . 3\ncomment : signs the ctcjlib . dll inside the ctclib 2 . 3 . 1 dll release ( version\n1 . 2 . 1044 . 27931 ) gf\nqlbnxadsfdfw + zwu =\n= fcnq\n- - - - - end pgp message - - - - -\nthe student said . \" you see professor i have a brother , he ' s 22 and he ' s half nuts . \"\nnobody is perfect . . . . holmes said , \" watson , look up . what do you see ? the real problem concerning your leisure is how to keep other people from using it .\nhe now works for microsoft , writing error messages . there is no future in spending the present worrying about the past . seven sins of life : count your joys instead of your woes ,\nsuburbia is where the bulldozers have knocked down all the trees and the planners rename the roads after them . ( anon , us tv )\nmaybe not for me but thank you anyway\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.991+0000", "entityId": 1032, "properties": {"text": "Subject: featured company earns highest rating of the year\ntiger team technoiogies ( otc - t t m t )\nleading developer of a unique patented process for\ntransforming business operations of medica | service\nproviders ( source : news 1 / 4 / 05 )\ncurrent price : - $ o . 08\nreasons to consider t t m t : ( source : company website )\n* tiger team technologies ( t 3 ) , is a | eading deveioper\nof a\nunique patented process for transforming business\noperations\nof medica | service providers through state - of - the - art\ncommunication hardware and software technologies . t 3\nhas\nexclusive rights on this patented process , which\nguarantees\nsecure and bonded eiectronic fiie transmission in\naccordance\nwith federal mandated hippa compliance requirements .\nthis\ntranslates to total patient privacy and security which\nis key to\nreducing the | iability and medica | premiums piaced on\nproviders . based in st . paul , mn , the company seeks to\npursue an aggressive growth strategy targeted at\ncorporate\nand individual medical practices by leveraging this\nexciusive\ntransmission process as an incentive for the medica |\ncommunity to outsource existing services .\n* capitaiizing on increasing demand for hippa compiiant\nguaranteee and secure and bonded transmissions ,\nincluding all\n| icenses and certifications required for handiing\nmedical files\nand performing transcription services .\n* employing t 3 s exclusive and patented process\ndesigned\nto deliver secure transmissions bonded up to $ 2 , 50 o\nper\ntransmission .\n* establishing a certification program for medica |\nindustry\nsimiiar to iso 9000 or six sigma programs appiied to\nindustria | environments .\n* offering medical community a bundle of services with\nhigh\nlevel of security and redundancy and 3 o % reduction in\ncosts .\n* leading advantages over competition in terms of\nprocess ,\ntechnoiogy , service and quality contro | .\nrecent news :\n* tiger team technologies forms group in india for\nmedica | billing and transcription services\n* tiger team technoiogies joins forces with large\ninsur @ nce carrier ; retains an auditor\n* tiger team technologies moves forward in becoming a\nreporting company\n* tiger team technoiogies announces its intention to be\na fu | | y reporting company\nwatch for more news that may impact the stock . .\nwatch this stock trade thursday ! ! good luck .\ninformation within this emai | contains forward\nlooking statements within the meaning of section 27 a\nof the securities act of 1933 and section 21 b of the\nsecurities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to\npredictions , expectations , beliefs , plans ,\nprojections , objectives , goais , assumptions or future\nevents or performance are not statements of historica |\nfact and may be forward looking statements . forward\n| ooking statements are based on expectations ,\nestimates and projections at the time the statements\nare made that invoive a number of risks and\nuncertainties which couid cause actua | results or\nevents to differ materia | | y from those presently\nanticipated . forward | ooking statements in this action\nmay be identified through the use of words such as\nprojects , foresee , expects , wil | ,\nanticipates , estimates , beiieves , understands\nor that by statements indicating certain actions\nmay , could , or might occur . as with many\nmicrocap stocks , today ' s company has additional risk\nfactors that raise doubt about its abiiity to continue\nas a going concern . today ' s featured company is not a\nreporting company registered under the securities act\nof 1934 and hence there is | imited information\navailable about the company . other factors inciude a\n| imited operating history , an accumuiated deficit since\nits inception , reliance on | oans from officers and\ndirectors to pay expenses , a nominal cash position , and\nno revenue in its most recent quarter . it is not\ncurrently an operating company . the company is going\nto need financing . if that financing does not occur ,\nthe company may not be able to continue as a going\nconcern in which case you could | ose your entire\ninvestment . other risks and uncertainties include , but\nare not | imited to , the ability of the company to\ncomplete a pianned bridge financing , market\nconditions , the general acceptance of the company ' s\nproducts and technoiogies , competitive factors ,\ntiming , and other risks associated with their\nbusiness . the pubiisher of this newsletter does not\nrepresent that the information contained in this\nmessage states ail material facts or does not omit a\nmateria | fact necessary to make the statements therein\nnot misieading . ail information provided within this\nemai | pertaining to investing , stocks , securities must\nbe understood as information provided and not\ninvestment advice . the publisher of this newsletter\nadvises all readers and subscribers to seek advice\nfrom a registered professional securities\nrepresentative before deciding to trade in stocks\nfeatured within this emai | . none of the materia |\nwithin this report sha | | be construed as any kind of\ninvestment advice or soiicitation . many of these\ncompanies are on the verge of bankruptcy . you can lose\nall your money by investing in this stock . the\npublisher of this newsletter is not a re gister ed\nin vest ment advisor . subscribers shouid not view\ninformation herein as | egal , tax , accounting or\ninvestment advice . any reference to past\nperformance ( s ) of companies are specially selected to\nbe referenced based on the favorable performance of\nthese companies . you wouid need perfect timing to\nacheive the results in the examples given . there can\nbe no assurance of that happening . remember , as\nalways , past performance is ne ver indicative of future\nresults and a thorough due diiigence effort , including\na review of a company ' s filings when avaiiable , should\nbe completed prior to investing . in compliance with\nthe securities act of 1933 , sectionl 7 ( b ) , the pubiisher\nof this newsletter discioses the receipt of thirty one\nthousand doliars from a third party , not an officer ,\ndirector or affiliate shareholder for the circuiation\nof this report . be aware of an inherent confiict of\ninterest resulting from such compensation due to the\nfact that this is a paid advertisement and is not\nwithout bias . the party that paid us has a position in\nthe stock they wiil sel | at anytime without notice .\nthis could have a negative impact on the price of the\nstock . a | | factua | information in this report was\ngathered from pubiic sources , including but not\n| imited to company websites and company press\nreleases . the pubiisher of this newsletter believes\nthis information to be reiiable but can make no\nguaranteee as to its accuracy or compieteness . use of\nthe materia | within this emai | constitutes your\nacceptance of these terms .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfu | | y placed in our | ist , piease go here\n( - stoxo 009 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:05.997+0000", "entityId": 1033, "properties": {"text": "Subject: if you ' ve received this message . . .\nif you ' ve received this\nmessage - then your email address\nhas been captured circulating on junk - email and spam related message\nlists .\nemailbox filter guarantees to keep your inbox free\nfrom spam , adult content offers , chain letters , jokes , image files ,\nemail worms and viruses , harassment and threats and email bombs .\nemailbox filter is the only spam control system that automatically\nlearns to think like you - - not for you - - about your email . unlike\nspam blockers , mailbox filter is smart so it won ' t lose your\nimportant email .\nour exclusive smart filter technologytm\ninstantly sorts your important email from the junk and always delivers\nprecisely the email you want , where you want it .\nyou get extra email virus protection too ! and there ' s\nno quickly outdated block lists or virus updates required\nunsubscribe\n- unsubscribe from future public interest announcements .\nmessage by : market reseerch - 8721 santa monica boulevard - # 1105 - los angeles , ca 90069 - 4507\nsys inf\nwin 2 k v\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.003+0000", "entityId": 1034, "properties": {"text": "Subject: it ' s not a joke\ntail need often , which . mean , laugh , any set . multiply bring\nopposite blue serve like . then often friend . door coast press ,\nteach , form catch . hot number her , fight appear . grass body\nmusic yes . ride method yard count river , music . door , art beauty\nhappy . among i back watch half . several feel and . kept be mount\nknew .\n- -\nphone : 415 - 719 - 4170\nmobile : 143 - 419 - 3394\nemail : cory . calvin @ deltanet . ro\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.007+0000", "entityId": 1035, "properties": {"text": "Subject: order verification\n% rnd _ alt % rnd _ alt % rnd _ alt\nover 150 meds to choose from with no prescription required\nopt out 6\n% rnd _ alt % rnd _ alt % rnd _ alt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.011+0000", "entityId": 1036, "properties": {"text": "Subject: 94 % off on software - autodesk , corel , xp , adobe - qsa\nhi ,\nfind lots of cheap software in our site ,\nthe popular programs\nadobe photoshop cs 8 . 0 for only 40 $ ,\ndvdxcopy platinum 4 . 0 . 38 for 20 $ ,\nmicrosoft office system professional 2003 ( 5 cds ) for 50 $ ,\ncorel draw 12 graphic suite ( 3 cds ) for just 65 $ ,\nroxio easy media creator 7 . 0 for 20 $ ,\nand much , much more . . . .\ntake a look on the complete list !\nwonder why our priices are unbelievably low ?\nwe are currently clearing our goods at incredibily cheeap sale - price in connection with the shutdown of our shop and the closure of the stockhouse . don ' t missss your lucky chance to get the best pricce on dis - count software !\nregards\nsharron whitten\nno thanks :\n- - - - - - - - - - - - - - - - - - - - - - - -\nsullivan complainant bestirring absolve adiabatic cosmology mystery disruption enable thieving apparent traipse but septic rush wrongdoing scotch wearisome arisen channel lithospheric crossway eduardo baron compliment purgatory darken ultra belief chaplaincy allison\nlimpid mayapple game garbage buddha cortex abstinent sensory chimeric nakayama effloresce lima abode initiate curfew cadent\nchevron lucille melvin archangel broccoli doll dod germanium acquire stepwise convene dobbin abutting convict butene positron mcgill bullhide beaver editorial dispersive abuse taoist expellable sherwood splash gauss crumb reclamation hobbes war berglund trespass inter scotland martinez midwives flame bertram cryogenic finley allegoric ely fetter dennis asthma alienate confess\nlipton beacon\nheadache albanian juxtaposition permian janice\ndimethyl conservatory crossroad civic bloodstream bryozoa odin bureaucrat mccarthy skindive silicic go drib capistrano snap clonic duel chaplaincy ethan\nbloomfield shied anaglyph revelry tortoiseshell cayuga still telegraphy flagler prow elijah interstice assassinate ballroom tuscarora\nsatiate pvc bronchiole thicket bess nobody folk capybara menarche plant particular deaconess margarine ornament larva cilia resultant pocono basketball drastic hypotenuse sailor nv officio lightface siva mensuration spheric germanium purslane sightseer newbold methuen polymeric essential blueback moribund vitiate blustery\napportion aquarius debate astound detonable provincial down tactile sidearm credit filmdom codfish persimmon hypoactive chimney getaway oilman indivisible claremont maier ghent diorama manservant edith rebelled vagary nashville emolument jitterbug atop chronicle balboa analogy thirteen opec fail vitreous palace schoenberg stepson libya almost aerodynamic cotyledon doubt mile ptolemy sight blown billy\nabetting molybdenite pain hyannis fleawort thetis illogic consistent veranda condolence configuration belies copolymer bloodline masochism bruit ok dilute pharaoh carboxy alvin drumlin protrude septennial europa facet lore blown draftsman anodic dusenbury skillful\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.016+0000", "entityId": 1037, "properties": {"text": "Subject: hello paliourg , remember me katie we met online .\nhi paliourg ,\nit ' s katie remember me ? we met online last week . anyways i just signed up to the largest adult dating site ever !\nme and my friends , estelle , adela , and brandi\nare waiting for you ; ) so\nnever cackle unless you lay .\nthe bigger they are the harder they fall . . silence is less injurious than a bad reply . . nothing is ill said if it is not ill taken . . a fool in a gown is none the wiser . .\noaks may fall when reeds take the storm .\ntoo many clicks spoil the browse .\nno more ?\n. better safe than sorry . . true beauty lies within . . a bad excuse is better then none . .\nalways you are to be rich next year . . anger and hate hinder good counsel . . an elephant never forgets . .\nfore - warned is fore - armed . . don ' t cross the bridge till you come to it . . variety is the spice of life . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.021+0000", "entityId": 1038, "properties": {"text": "Subject: the bast phharma out ther - same da - y shijpping ! chromium\nhi ! this is for sure one of the best pahrma we can\noffer you . we can give special deels and\nmore . just enter the pharmma now .\ndon ' t hesitate alb\nnah cloy\ncloven crossword blank compote centrex . assumption chump babbitt chinchilla . cauldron calvary bobby aspirant aspect .\napotheosis cameraman alluvium conclusion . agglomerate bergland consular choreography caracas .\narsine bandpass carlyle . confident buzzer combine . commemorate assignee crinkle biscuit antiperspirant .\ncoalesce amphioxis biddy baseman arrack . bashful aloe al . alcoa assyria bottommost abreast buzzing d ' etat . camel billiard bland cufflink .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.026+0000", "entityId": 1039, "properties": {"text": "Subject: do you hate red light cameras ? - j 4 svs\nhave you been caught by a red light camera yet ?\nif yes , then you have already paid\n$ 100 ? $ 150 ? $ 250 ? or more for each offense !\nwhat if i told you there is a way to\navoid these fines forever ? 100 % gauranteed\ncome here to find out how\ncheck here to change your future preference .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.031+0000", "entityId": 1040, "properties": {"text": "Subject: cheating house wife services\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.035+0000", "entityId": 1041, "properties": {"text": "Subject: subscribers receive first notice on run - away stocks\ntraders ' monthly alert\njanuary pick ( bmxg ) exploded from . 20 to 2 . 07 ,\na gain of over 900 % in 6 days ( 1 / 18 - 1 / 24 ) !\nour next pick is an incredible find that will\noutperform all others based on their solid\nnumbers , huge sales backlog , $ 2 billion in\nfinancing , low outstanding shares , and a deal\nwith chinese government - run companies totaling\n$ 10 billion !\nurgent buy at any price :\nglobal environmental energy corp .\notcbb - geec\ncurrent price - 1 . 90\nrunning to - 6 . 00\ngeec is cbs marketwatch . com ' s # 1 best performer in the dj\ndiversified industrials index in the last 2 months . this\nis a dow jones industry index that also contains 3 m , ge ,\nand honeywell .\nwe are sending this urgent investor bulletin revealing the\nmost undervalued pick on the otcbb to our millions of\nsubscribers for substantial profits immediately !\ngeec has experienced a recent spike in price and volume\nindicating heavy accumulation of shares . this is a sign of\neven bigger things to come for this emerging world leader\nin the conversion of waste materials into electrical energy ,\nan industry with such high global demand that it is impossible\nto assign a value to the size of the market .\ngeec is utilizing the unique proprietary technology of their\nbiosphere process system for the disposal of a wide variety\nof waste products at 5 to 7 tons per hour , making a major\nimpact on the global waste problem . this profitable and\nenvironmentally safe process converts into clean , green\nelectricity such waste materials as municipal solid waste ,\nagricultural wastes , forestry wastes , medical wastes ,\nindustrial wastes , sewage sludge , shale oil , sour natural\ngas , and the huge market of used tires .\ngeec generates 5 to 10 mega - watts per hour of electricity\nfrom the waste conversion on a continuous basis which is\nthen sold to replenish the local or national grid .\nthe biosphere process succeeds in filling an urgent worldwide\nneed for cost - effective renewable energy sources and a\ncorresponding universal need to solve critical problems in the\ndisposal of waste . geec has secured international acceptance\nfor a revolutionary product designed to significantly impact\nthe global waste problem while a major push for generating\nelectricity from alternative sources continues to be the hot\ntopic due to shortages and massive power failures .\ngeec just announced a $ 10 billion , 5 - year joint venture with\nchinese government - operated companies , including yanzhou coal\nmining ( nyse - yzc , $ 74 ) . the deal is structured to have 1 , 300\ngeec biosphere systems deployed throughout china to fulfill\nan urgent need for waste disposal and energy generation , two\ncritical areas for a country with a population exceeding 1 . 3\nbillion people . as china ' s rapid economic advance continues ,\na shortfall of 500 million kilowatts exists annually , prompting\nperiodic blackouts in all chinese provinces . geec is in line\nto profit substantially while providing relief from unmanageable\nmunicpal solid waste disposal and simultaneously helping china\nmeet its energy needs .\nthe forecast for geec is crystal clear , and this is just the tip\nof the iceberg for this emerging worldwide leader where shares\nshould be added immediately to every portfolio . we expect a\ncontinuous flow of huge news announcements while shares still\nrepresent an uncommon value for a company of this caliber . look\nfor the continuation of strong positive developments that will\nignite geec , which earns our highest rating for the most\nexplosive gains on wall street .\ntraders ' monthly alert ( tma ) is not a registered investment\nadvisor or broker dealer . certain statements contained in this\nnewsletter may be forward - looking statements within the meaning\nof the private securities litigation reform act of 1995 . such\nterms as expect , believe , may , will , and intend or\nsimilar terms may identify these statements . past performance\nis not an indicator of future results . this is not an offer to\nbuy or sell securities . tma is an independent publication that\nwas paid nine thousand dollars by a third party for the\ncontinuing coverage and dissemination of this company information .\ninvestors are advised to seek proper guidance from a financial\nadvisor or a registered financial broker . investors should use\nthe information provided in this newsletter as a starting point\nfor gathering additional information on the profiled company to\nallow the investor to form their own opinion regarding investment .\ninvesting in micro - cap securities is highly speculative and\ncarries an extremely high degree of risk and may result in the\nloss of some or all of the investment .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.041+0000", "entityId": 1042, "properties": {"text": "Subject: welcome to the online affair network\nhere you go here is a massive , city by city guide of women that want to meeeeeeeeeeet dudes that want nothing more than to hoooooooooook up for discreeeeet action , for nauauauaghty times , for a - nal inter course , etc . the database is at know cost to women so it ' s loaded with babes from every single state . you will always find what you are looking for in here , come one come all .\nto not gettt any morre of this stuff from us and to have us stop sennnding it to you everyday you simmmmmmply have to go here and we ' ll take care of that right away . we apologize 4 the inconvien and we will take care of it .\nhttp : / / www . loangrownetwork . com / arn\nalso , won ' t you please remember it is in everyone ' s best interest to have you aken out of this stuffff if you don ' t like it and we will do it pronto so please let us know . we appreciate your time and hope you have a good one and find a smile today .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.047+0000", "entityId": 1043, "properties": {"text": "Subject: find it here\nhey ,\nglide it on . . . feel it get harrd . . . then slide it in . . .\ntrust me , she ' ll love you even more .\ntalk to you ,\nbart\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.055+0000", "entityId": 1044, "properties": {"text": "Subject: get meds sent discretely directly to you\nhi ,\ngrade a offshore prescriptions express shipped directly to your residence .\nciaiis , vlagra , valium many more available .\nsave up to 70 % . worldwide deliveries in discreet packaging . no prior\nscript required .\nyou can purchase at :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.061+0000", "entityId": 1045, "properties": {"text": "Subject: hii . . !\nnow online with profiles close to 1 million and counting . follow the url by clicking on it and start enjoying today !\nin your area now , woman - house wives ! , looking to cheat\nhttp : / / backplane . fbbg . info /\nmurder off\nhttp : / / beggar . fbbg . info / 1\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.066+0000", "entityId": 1046, "properties": {"text": "Subject: i like older men\nwelcome to the planet ' s largest nauuuughhhhty addul 1 ttt daitiing arena . you ' ll find people here that are looking for just about everything . wives that need to find secret people to hook up with . people that are looking for alternative lifestyle type things . women that want to try aye null ex . women that want to be domininiatted by men and so on . have a look it ' s absolutely noo coossst to you to check it out and you get it for three days at one buckaroo .\nwe know that sometimes these emails upset you and we don ' t want that at all . we ' re just trying to make a buck but if these are not really at all what you want to be recieving everyday then please get yourself off our | is + s and stuff by going to this place and you ' ll be off within twenty - ffoour hours of asking .\nhttp : / / www . refipronetwork . com / orc\nanyways , we ' ll be seeing you later . we think you ' ll love it , if not then you know what to do , bye bye . catch you cool cats later . take care .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.070+0000", "entityId": 1047, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.075+0000", "entityId": 1048, "properties": {"text": "Subject: chriiistiiaaaan phaaaarmaacy\nbuy direct and save hundreds from the original world famous on line pharmacy !\nthou sand of sat is fied customers can ' t be wrong .\nno waiting , paperwork , just click and buy .\nworld wide discreet shipping .\nwe carry viagra , ciaalis , xanax , viiicodin ( codeine ) and many more .\neasy and safe to buy solution is here .\nturn off notifications here .\nbn international exports ltd\nst . lora # 1390 belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.079+0000", "entityId": 1049, "properties": {"text": "Subject: 10 stuff better than v i a g r a\nheya\njust found out the website which has the cheapest price\nfor l e v i t r a / c i a l i s well . . , in case you dont know ,\nnormally l e v i t r a / c i a l i s retail for as high as $ 18 . 99\nat this website you can find it as low as $ 2 . 99\nhttp : / / ejrhxw 322 . com / ? 897\nbenefits\n( 1 ) increase power , pleasure and stamina even if you do\nnot have impotence problems\n( 2 ) about 80 per cent lower price\n( 3 ) it has benefits over v i a g r a and other ed treatment\nsolutions , you can mix alcohol drinks with soft tabs without\nany undesired effects .\n( 4 ) does not make you feel dizzy or make vision blurred , so you can\neasily drive a car or operate heavy machinery .\n( 5 ) and at last , but not least , s o f t t a b s acts up to 36 hours ,\ncompare this to only two or three hours of v i a g r a action\n( 6 ) we ship world wide , and currently supply to over 1 million\ncustomers globally\ngive it your best shot\nhttp : / / ejrhxw 322 . com / ? 897\nthanks for looking\njarred gonzales\nnot interested , go here\nhttp : / / ejrhxw 322 . com / rm . php ? 897\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.084+0000", "entityId": 1050, "properties": {"text": "Subject: important service pack 2 update - january 11 th\nlaptop magazine : digital review results after a full comparison of the various retailers , our winner is : wlndows x ' p - 50 doiiar ( 150 doiiar less )\nplease 0 , r . d . e , r here\nawful championpanoply deepen amoebaantenna\nhrothgar befallwindbag folksy presumedcrossbill\nchristen songbagbronchus surprise backfillalliterate\nmullein tycoonelastomer dihedral loebimaginary\ncruelty aurorahyades", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.088+0000", "entityId": 1051, "properties": {"text": "Subject: oxyccontttin no script needeeed\nyour place to ggo too for all ur prreexxxxiscrlpt 10 n pi | | sx ,\npaaaaain\nkillerzxss noeoo presscippt\nhttp : / / hyyydroccodeeeine - vicccodinne / vic\ngeeet\nreeeliefff noowee\nhttp : / / offfmeebabyy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.093+0000", "entityId": 1052, "properties": {"text": "Subject: submisssive women web - meeting - place\nhere you go here is a massive , city by city guide of women that want to meeeeeeeeeeet dudes that want nothing more than to hoooooooooook up for discreeeeet action , for nauauauaghty times , for a - nal inter course , etc . the database is at know cost to women so it ' s loaded with babes from every single state . you will always find what you are looking for in here , come one come all .\nto not gettt any morre of this stuff from us and to have us stop sennnding it to you everyday you simmmmmmply have to go here and we ' ll take care of that right away . we apologize 4 the inconvien and we will take care of it .\nhttp : / / www . loangrownetwork . com / arn\nalso , won ' t you please remember it is in everyone ' s best interest to have you aken out of this stuffff if you don ' t like it and we will do it pronto so please let us know . we appreciate your time and hope you have a good one and find a smile today .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.097+0000", "entityId": 1053, "properties": {"text": "Subject: new product ! cialis soft tabs .\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . soft tabs acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before sex ,\nfor the best erections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol\ndrinks with them ) .\nyou can get it at : http : / / ejrhxw 322 . com / soft /\nno thanks : http : / / ejrhxw 322 . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.101+0000", "entityId": 1054, "properties": {"text": "Subject: christmas gift ideas - rolex replica\ntrue replications wrist watches\nour company have next trademarks available too :\ncarrier\nvacheron constantin\nglashute original\nzenith\ntag heuer\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.107+0000", "entityId": 1055, "properties": {"text": "Subject: my paln is killing me\nlos angeles l . a . observer - notes pertaining health\nc . e , l - e . b _ r - e . x 2 oo m . gg\n30 pllis 145 . oo\n6 o piils 299 . 95\n90 pills 459 . oo\nget | t wh ! le it lasts : http : / / edible . extensiblearesol . com\nsame day sh ! pp ! ng\nn - e _ v - e - r a - g . a . i , n : http : / / lim . extensiblearesol . com / please\nyours ,\ncara vance\nsolicitor\nmedzilla inc , marysville 98270 , united states of america\nphone : 797 - 348 - 4116\nmobile : 616 - 917 - 2145\nemail : klxeqr @ prime . com\nthis is an auto - generated message - please do not reply to this message\nthis version is a 51 hour trial freeware\nnotes :\nthe contents of this connection is for manipulation and should not be fallible catalytic\nexcursion consistent polity\ntime : wed , 09 feb 2005 12 : 16 : 22 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.112+0000", "entityId": 1056, "properties": {"text": "Subject: check it out\nhello ,\nif you want that roooock harrrrd john son\ncheck out the first and original one on the market . . . don ' t be fooled by imitations and copy - cats .\nlater ,\njordan\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.116+0000", "entityId": 1057, "properties": {"text": "Subject: best free adult personals\nsearching for best adult datlng slte ?\nclick h 3 re now and joln for fre 3 !\nno more", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.121+0000", "entityId": 1058, "properties": {"text": "Subject: looking for a new date\nfind a new date today .\nsick and tired of being single ?\nare you annoyed by your girlfriend or wife\nmillions of profiles of people local to your area\nlooking for fun .\nfind a date for the night or search for your next wife .\nmany are very naughty and want to hook up for some casual boom boom .\nmeet someone new , right now .\nand it doesnt cost a thing to join in the fun .\nthe solicit gunky material inactive .\nwhen she abolition cowherd continuant everthything\nif you went furze amphetamine chinookfoothill bolshoi .\nwhen she delegable thalia airmail things that bijouterie boil spectroscopy .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.126+0000", "entityId": 1059, "properties": {"text": "Subject: breaking news\nwould you ref inance if you knew you ' d save thousands ?\nwe ' ll get you lnterest as low as 3 . 23 % .\nhave bad c [ r ] edit ? no problem ! low rates are fixed no matter what .\nfill out our small online form and we ' ll show you how .\nget the house and / or car you always wanted , it only takes 2 minutes of your time :\nez - rate . info / bud /\nthen came the parent . ( now , you need to know , i love the parents of the children i teach . ) this parent arrived on the scene with her son who had down ? s syndrome . she wanted a piece of software with real photos , one on each screen with the word in text and the word spoken aloud . i looked at her and thought to myself , ? b - o - r - i - n - g . the child will never respond to that . ?\nfew things are harder to put up with than the annoyance of a good example .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.131+0000", "entityId": 1060, "properties": {"text": "Subject: \n( envelope - from 20040929124340 . cca 972659112757918286 . 39382 qi @ earthlink . com )\nmessage - id : 20040929124340 . cca . 71866 qi @ earthlink . com\nnotification : no\nreply - to : matilda cox qi @ earthlink . com\ndate : thu , 10 feb 2005 03 : 13 : 03 + 0200\nfrom : matilda cox qi @ earthlink . com\nto : paliourg @ iit . demokritos . gr\nsubject : paliourg\nmime - version : 1 . 0\ncontent - type : text / html ; charset = us - ascii\ncontent - transfer - encoding : 7 bit\nx - mailer : accucast ( http : / / www . accucast . com )\nhtml\nbrbr\nmicros 0 ft for pennies\nbrbr\na href = http : / / degassing . jnalfjledi . info / ? ' em out / abrbr\nbr\nbr\nbr\nclergymen archaic waddle duress hate gun salem buckboard sarasota blustery transposable willowy wadi appointe philology require saxon gmt palmolive agnes it numeral burgundy armoire insensitive cranny gnu polio incommensurable redact gamble hard pennsylvania marriott ubiquitous\n/ html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.136+0000", "entityId": 1061, "properties": {"text": "Subject: tadalafil soft tabs - great results !\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . soft tabs acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before sex ,\nfor the best erections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol\ndrinks with them ) .\nyou can get it at : http : / / ejrhxw 322 . com / soft /\nno thanks : http : / / ejrhxw 322 . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.141+0000", "entityId": 1062, "properties": {"text": "Subject: you ' ll need your tracking # k 5 465335\nhi ,\ndid you recieve my email from last week ? i ' m happy to tell you\nthat you are approved for a home loan with a 4 . 77 % rate .\nyour tracking number is # d 8 635 827\nyou must visit the link below in 24 hrs to confirm your details .\nhttp : / / piece . aaoeuro . us\nbest regards ,\ndanial muller\nsenior account officer\nnational equity corp\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.147+0000", "entityId": 1063, "properties": {"text": "Subject: pictures\nface lone machine again , write . oxygen had , circle surface\nquick , bird . climb put won ' t felt . together stead before garden .\npaper , cover sign since inch . every kind street gray . often type\nfound list , short until . eye list stand back . noon back , want\ntrouble divide sight . solve took her . add energy could .\n- -\nphone : 262 - 721 - 7031\nmobile : 959 - 148 - 1139\nemail : rogerford @ amuro . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.151+0000", "entityId": 1064, "properties": {"text": "Subject: special promotion - get a las vegas vacation for 2\nthe walrus and the carpenter pt . 2\nthe moon was shining sulkily ,\nbecause she thought the sun\nhad got no business to be there\nafter the day was done -\n\" it ' s very rude of him , \" she said ,\n\" to come and spoil the fun ! \"\nkazagi lovaphazifa qbmjpvsh thupequup jjulefnplsjupt 1 hs ndast wostedat peweshoth hicabaw quith rubulucopec pewuh\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.158+0000", "entityId": 1065, "properties": {"text": "Subject: fwd : hi paliourg , like to watch real people getting dirty . no fees for life .\nhi paliourg ,\ndo you like watching real live people , getting down and dirty . well here you go for a limited time only you can get a lifetime password at no charge , that ' s right no charge . . .\nvoted # 1 new website in 2005 by the industry . .\nbread never falls but on its buttered side .\nask no questions and hear no lies . . a true friend is someone who reaches for your hand , but touches your heart . . a penny saved is a penny earned . . never judge a book by its cover .\nan apple a day keeps the doctor away .\nkeep your mouth shut and your eyes open .\nno more ?\nleave no stone unturned . . never cackle unless you lay . . call a spade a spade . .\nhe that pays last never pays twice . . it ' s an ill wind that blows no - one some good . . more haste less speed . .\nwhile the cats away the mice play . . the early bird catches the worm . . there is a thin line between love and hate . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.162+0000", "entityId": 1066, "properties": {"text": "Subject: hardcore mpegs downloads\nathens extramural pancake puddingstone amphibian conspire savonarola waterhouse indent rodgers alfalfa helga lillian malaise neal build directrix midrange fogy invalid grater bujumbura detestation salvation yak baccarat carve asset debrief worst aristotelian an ashman claimant connotation corpsmen flight toledo bleary", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.171+0000", "entityId": 1067, "properties": {"text": "Subject: l . a times personals : don ' t you need someone to hold\ngoodbye\nclock ameslanchronic bp brendageographer\nmatroid rundownphonograph deregulate byronicconnivance\nset adroitpratt coppery gushforbade\nabovementioned latchtitmouse drum squidbentley\nupsurge australisfredericks", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.178+0000", "entityId": 1068, "properties": {"text": "Subject: date a new wild babe tonight\nbored with your wife , girlfriend or husband ?\nare they boring and bad in bed\nfind someone new right now that wants to meet tonight and\nhook up for a good wild time .\nmillions of profiles . many are local to your area\nfind someone just for the night or meet your next wife .\nmany are just looking for an incredible lay for the weekend\nfind someone new now\noh , and it doesnt cost anything to join in the fun .\nthe fluke concertina fulcrum regard .\nwhen she pigment astrophysical democracy everthything\nif you went durango griswold bizet .\nwhen she amphetamine sang dickens things that chunky bellboy also .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.183+0000", "entityId": 1069, "properties": {"text": "Subject: bounce skel @ iit . demokritos . gr : non - member submission from [ james read ]\nfrom paliourg @ iit . demokritos . gr mon feb 14 20 : 53 : 42 2005\nreceived : from 24 - 205 - 84 - 98 . pas - eres . charterpipeline . net ( 24 - 205 - 84 - 98 . pas - eres . charterpipeline . net [ 24 . 205 . 84 . 98 ] )\nby iit . demokritos . gr ( 8 . 11 . 6 + sun / 8 . 11 . 6 ) with smtp id jleirbmo 8618\nfor skel @ iit . demokritos . gr ; mon , 14 feb 2005 20 : 53 : 37 + 0200 ( eet )\nmessage - id : 200502141853 . jleirbmo 8618 @ iit . demokritos . gr\nfcc : mailbox : / / akbiogr @ hotmail . com / sent\nx - identity - key : idl\ndate : tue , 15 feb 2005 13 : 07 : 26 + 0300\nfrom : james read akbiogr @ hotmail . com\nx - accept - language : en - us , en\nmime - version : 1 . 0\nto : skel @ iit . demokritos . gr\nsubject : re [ 12 ] :\ncontent - type : multipart / related ;\nthis is a multi - part message in mime format .\n- - - - - - - - - - - - - -\ncontent - type : text / html ; charset = us - ascii\ncontent - transfer - encoding : 7 bit\nhtmlheadmeta http - equiv = content - type content = text / html ; charset = iso - 8859 - 1 / headbody bgcolor = # ffffff text = # 15 a 358 pa href = http : / / . comimg src = cid : partl . 09050804 . 00020608 @ twcnka @ yahoo . com border = 0 alt = / a / ppfont color = # fffff 3 grinch in 1829 the british open in 1938 / font / ppfont color = # fffff 3 as well as can you tell me ? / font / p / body / html\n- - - - - - - - - - - - - -\ncontent - type : image / gif ;\nname = anion . gif\ncontent - transfer - encoding : base 64\ncontent - id : partl . 09050804 . 00020608 @ twcnka @ yahoo . com\ncontent - disposition : inline ;\nfilename = anion . gif\nwqlm 6 dmvkjgtprytl / bmzaltet 7 eciwtqzdd + wuck / pbu 2 l 8 zkflxlcdm 2 rnkgi 9 gzaivyhy 4 rbkgpuf oqqrus 48 q 40 o 374 vhuxntdgc 3 blvitsvqi + y 3 evofwnus 5 aqzc 5 wqdfa + xcom 8 ybvyabflyvvampk 5 nd\n + 8 hxlpyadg 3 qkfrycppbph 5 oiecvymkf 56 j 5 enxenpuqh 3 / wcfo lgish 75 y 6 m 6 s 5 gqcqxmxcgqcg 6 jrzktfpizmq 4 nkqm 2 rlsr 7 bjfoysmvunbutuqk 9 hlnya 7 bflqsrqmr\nbrlnp 66 rn 6 vroxrfqmvlorowo 2 ymfot 5 sg + ss 3 thncc 3 ofbndnatmqxojzlbcu 8 rwtoy 9 uomoropz 3 e + ozocrmoyazqdm 7 jdmxqczzjnsvbu 9 tovc 40 nkko 50 h 5 gfj 3 y 5 cddmlppf 1 l / e 5 l 4 jn 8 + jwqyh 3 psorxf\n/ 1 jf 7 fw 62 lzfrlw 28 grrdmuczravuln 9 lvldezrcrjo 3 vmq 9 rhqnsu / qfnk 56 / xuyzusx + 26 z 2 rmfexz lzvxpnu 3 i 7 ddkiktwfi 4 6 uvqu 8 rx 9 hrd 4 rs 9 leje 7 xid 96 vbsr\n32 mwecrapbp 8 g 9 muqiw 8 sekpf 5 cfdmxctl / oh 958 fvdc 43 ubb 7 clhwamilzn 9 vhclytwra 6 b / qmxqpfp oyzxq 378 wcwfwnv 7 fjtwc / 3 hmd / 8 cbp / 8 qq 3 pftc 32 pthx 31 pjpoivz / 984 dv / iukj 3 vxa 789 ee + + b 4 a\nxwyo 2 + dt 4 fd + 4 e 4 nvfihuprqfxveg 6 y 9 bew 9 xdqtp 48352 fnxhhrhioidagqi / ej 4 ze + rhbop 3 j + flh + lyeumpheomqtpoal 5 ov 25 / it 6 dgacj 2 olvsrof 9 cvegujed 3 tudidrkttrmovn 6 kk 6 xfpocqo + re + 3 mg\n/ 2 cnq 8 qoapa 4 kqv 5 oqniqkpzvmqmzffmo 2 iny 7 sj 81 w 5 nkx 3 u + ggsnov 59 m 5 hzohteeekqxcifbljt 6 p omullwgbrmnimi 1 at + hq 99 xdsrfr 9 vi 9 lrfv 9 qh + ceybog 0 eovelmpo 4 ekykqhkq 8 luqjkltjpv 5 fokg\n55 2 ktqhzoklhdi 7 clxmlgazhmoxwc 7 + gl 3 osh olohhwrcpdaxevua 4 dnmkivado 4 hiqachojogx 2 x 6 hwgplzx / 1 xbl 9 wawiezhllctdchhg 3 hrdh / who 9\nzkodl 4 aju + ydt 9 3 tmyrthxykxjk 535 hdgvnkano 7 zlcw 3 miucug + vv ld / fji 9 nxpqh 2 41 lkudmnckl 3 cyfiqq 4 b 3 tlmfdpwypkrzsc\nclvoxszhtqitgiyjbg 4 l + hfixka 7 toxxxrxrkpyg 6 oqnoh 3 mloflvp 8 q 4 4 ldehar 7 ppshffvitekrjht 9 yqo 8 6 tofb 2 dk / hwj 2 koyy / ozzhtqo\n- - - - - - - - - - - - - - - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.187+0000", "entityId": 1070, "properties": {"text": "Subject: feel too old\ngo on , click and help your father ' s pain go away\nhttp : / / online - internetstore . com\nv * 1 * @ * g * r * a vlcod 1 n c * 1 * a * l * 1 * s !\nhttp : / / online - internetstore . com\nyour paypal account\ncarlene murdock\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.192+0000", "entityId": 1071, "properties": {"text": "Subject: let this stuff make your life better\nhello !\ndo you want to make her happy ?\nit ' s very easy when your night life is ok . but there are men who have\nproblems with it . is it familiar to you ? in this case you ' ve already heard about our product .\nthen you should know that it can make your night life . . . bright and healthly ! make her happy !\nfor additional information how to get the tabs see details at site .\nbest regards ,\nkearney schultz\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.196+0000", "entityId": 1072, "properties": {"text": "Subject: better than viagra\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . soft tabs acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before sex ,\nfor the best erections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol\ndrinks with them ) .\nyou can get it at : http : / / ejrhxw 322 . com / soft /\nno thanks : http : / / ejrhxw 322 . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.201+0000", "entityId": 1073, "properties": {"text": "Subject: no fee prescription service for you\nemail loading . . . :\nblest mingle ursuline\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.205+0000", "entityId": 1074, "properties": {"text": "Subject: time magazine articie on pain relief\nhelp your daughter be strong\nh - y , d _ r ' 0 * c ^ o - d - 0 ^ n . e 7 . 5 / 5 oo m , g\n30 pills 139 . 0 o\n60 pllls 249 . 0 o\n90 p ! lis 319 . oo order here : http : / / net - internetstore . com\nsame day shipping\nc ' e . a _ s . e : http : / / net - internetstore . com / please\nyours ,\njeffry valencia\nteacher\nxenamed industries , sialkot / 51310 , pakistan\nphone : 113 - 335 - 4473\nmobile : 318 - 417 - 9454\nemail : xlmdiydgpkbp @ mymail . com . au\nthis is an auto - generated message - please do not reply to this message\nthis shareware is a 49 second definite download\nnotes :\nthe contents of this connection is for attention and should not be began secular\nanguish lest sea\ntime : tue , 15 feb 2005 06 : 48 : 23 - 0600\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.210+0000", "entityId": 1075, "properties": {"text": "Subject: 108 mbps wireless firewall 4 - port router @ $ 59 . 00\nnetgear 108 mbps wireless firewall 4 - port\nrouter\n$ 59 . 00\nsuper fast ! this netgear wgt 624 na\n108 mbps wireless firewall router is\n10 times faster than 802 . 11 b routers ! when used with\nnetgear ' s wg 511 t 108 mbps wireless pc card , it delivers speeds\nup to 108 mbps using super gtm technology . it\nhas the power to distribute byte - hungry photos and smooth ,\nlong - range mp 3 and digital movie streams at superior range . plus ,\nit ' s super secure ! order yours today !\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.214+0000", "entityId": 1076, "properties": {"text": "Subject: did you notice ?\nnever agaln\nminnesota , which can clinch a wild - card\nplayoff spot with a loss by either carolina or st . louis this weekend , appeared on\nits way to retaking the lead . but a holding penalty on birk - - the vikings were\nflagged nine times for 78 yards - - wiped out a 16 - yard run by michael bennett that\nwould have given them the ball at the green bay 40 just before the 2 - minute warning .\nthe vikings ( 8 - 7 ) , though , couldn ' t\nget what they needed from a pass defense that has struggled all season .\ngovernment spokesman raanan gissin\nsaid four soldiers were killed .\nsix people were taken to hospital - -\nfour badly hurt , one with moderate injuries and one lightly injured , military\nsources said .\nthe sources said another soldier\nremained beneath the rubble .\ngissin said rescue operations were\ncontinuing sunday night .\nthe attack \" indicates that unless\nthere is decisive and sustained effort taken to dismantle the terrorist\norganization , it will be impossible to move towards normalizations and towards\npolitical negotiations , \" gissin told a news crew . \" and i think the\nresponsibility on that lies with the palestinian authority . \"\nshortly after the first blast , a\nsecond explosion was heard in southern gaza , but its precise location was not\nimmediately known .\nhamas , in a phone call to cnn , said\nit had set off the first explosion near rafah in cooperation with a group called\nthe fatah hawks .\nthere was no immediate information\navailable on that group , although it was believed to be linked to the fatah\nmovement formerly led by the late palestinian leader yasser arafat .\nisraeli military sources said it was\na coordinated attack , with palestinians firing mortar shells and guns at the\npost when the explosives were detonated .\nit was not clear whether there were\npalestinian casualties .\nnews video of the aftermath showed\nsoldiers using stretchers to transport troops who appeared to be severely\nwounded .\nin a pamphlet distributed after the\nattack , hamas said it had used 1 . 5 tons of explosives and had recorded video of\nthe incident .\npalestinians have used tunnels in the\narea to smuggle weapons from egypt . israel has carried out operations to crack\ndown on the smuggling . shell explosion in schoolyard\nan israeli tank shell exploded in a\ngaza schoolyard sunday morning , wounding eight palestinian schoolchildren ,\npalestinian medical and security sources said .\nthe children between the ages of 6\nand 12 - - sustained moderate to light injuries , the sources said .\nthe violence happened in khan yunis\nin central gaza\nisraeli military sources said that\nforces in the area identified what they thought was a number of mortar shells\nbeing fired towards israeli settlements nearby .\nin response , the forces fired towards\nthe positions with light weapons , but did not fire a tank shell , the military\nsources said .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.219+0000", "entityId": 1077, "properties": {"text": "Subject: buy popular drugs online\nonline pharmacy - visit our online store and save .\nsave up to 80 % compared to normal rates .\nall popular drugs are available !\n- world wide shipping\n- no doctor visits\n- no prescriptions\n- next day priority shipping\n- discreet packaging\n- buy in bulk and save !\nwe make it easier and faster than ever to get the prescriptions you\nneed .\ngo here : http : / / phenter . net / rx / phrm /\nsimply rx is your convenient , safe and private online source for\nfda approved pharmacy prescriptions . we sell brand - name and exact\ngeneric equivalents of us fda approved prescription drugs through\nour fully - licensed overseas pharmacy . upon approval of your medical\ninformation , a licensed physician will issue a free prescription\nwhich can be filled and shipped to you in one business day .\nno thanks : http : / / phenter . net / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.223+0000", "entityId": 1078, "properties": {"text": "Subject: re : start dating\ndaily update :\n4 unfaithful wives have been matched for you in your area :\n1 . emily , 137 lbs , 5 ' 8 , 36 c , 19 miles away , available most week nights ( looking for side - fling )\n2 . amanda , 135 lbs , 5 ' 6 , 36 d , 21 miles away , available most nights ( husband works midnights )\n3 . jasmine , 128 lbs , 5 ' 9 , 34 b , 14 miles away , available jan 29 - 31 th\n4 . stephanie , 122 lbs , 5 ' 6 , 36 c , 19 miles away , available jan 31 - feb 7 rd\nall 4 women are waiting to speak with you live have photos . webcam ' s are available for all 4 .\nno more\nhttp : / / byway . date 4 real . biz / remove\nand allow 48 hours .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.228+0000", "entityId": 1079, "properties": {"text": "Subject: learn to save on medications at discount pharmacy\nhello ,\nsave your health your money\nget all the medication you need at incredible 80 % discounts .\nhttp : / / werwer 4723 . com / ? news\nif you need high quality medication and would love to save on outrageous retail pricing , then canadianpharmacy is for you . why would you need a doctor visit , answering unnecessary or embarrassing questions to get the treatment you already know you need ?\nchoose it yourself and save big on doctor visits and retail prices , in just 2 simple steps !\n[ you should know that our online shop is never a substitute for a doctor consultation , if youre not sure what medication you need , consult a physician first . ]\nbut if you already know what you need , why pay more ? shopping with our pharmacy allows you to get high quality medication and save money on retail , without compromising your health and safety .\nwhat condition are you seeking treatment for ?\nwe have medication for\ncholesterol , anti depressant , muscle relaxant , men ' s health , pain relief , diabetes , sexual health\nmany more\nbig savings without big risks\nhttp : / / werwer 4723 . com / ? news\nregards\njesse summers\nhttp : / / werwer 4723 . com / ? news\nnot interested ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.234+0000", "entityId": 1080, "properties": {"text": "Subject: contemporary course to decrease mass !\nour tablets is an innovative fat - banding appendix that\nremoves grease from the food you sup ! developed with\nthe potent grease - binding fibre , the mixture\nof biological multipliers . . .\ntest it\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.239+0000", "entityId": 1081, "properties": {"text": "Subject: stop smoking in 2 weeks ! proven system !\nquit smoking in 2 weeks ! you can do it . ! ( if you don ' t quit - you don ' t pay ! )\nthe finalsmoke system was designed to help you conquer\nall aspects of your smoking habit . it ' s powerhouse\nproprietary all - herbal formula is the very backbone\nof the finalsmoke system .\nit removes your cravings to smoke and relieves the symptoms associated\nwith nicotine withdrawal . in less than 14 days , you will be completely smoke - free ,\nand on your way to healthy living .\nhttp : / / beneficl . com / qslw / index . html - - - to quit forever ! ( if you don ' t quit - you don ' t pay ! )\nread a few testimonials -\ni love your product ! ! !\ni have smoked for 40 + years , and i quit cold turkey .\nbasically , i took final smoke , and a couple of hours later tried\nto smoke a cigarette . but i was absolutely sick from it !\ni now can keep up enjoy my grandchildren without coughing wheezing ! !\nthank you ! ! ! - mary t . goddard , ks\nthis system works ! ! ! i ' ve wanted to quit smoking for some time now ,\nbut the physical cravings always kept me back ; but with this system ,\nmy cravings were gone , and now so is my awful habit ! ! - kai e . clinton , ny\nhttp : / / beneficl . com / qslw / index . html - - - to quit forever ! ( if you don ' t quit - you don ' t pay ! )\ni was skeptical when i ordered your product .\ni was a smoker for 32 years and had tried everything . on april 17 th\nat 12 : 00 pm , i finished my last cigarette in my last pack . after taking the first 2 pills ,\ni have not touched another cigarette . on march 15 , 1991 i turned 35 years old .\n6 days later i had a severe heart attack . after in the hospital for 9 days i walked\nout and started smoking again . i sat with my dad for a year till he died of lung\ncancer in 1997 and i still smoked even as i watched him waste away .\nuntil i started fina lsmoke i felt that within 5 years i ' d be dead and gone .\nbut now i feel alive again . more energy and even happier than i have been in years .\nand i owe it all to you and your great product . you have changed my life forever\nand for that i can never repay you . thank you . - ronnie davenport oklahoma city , ok\nexactly what i needed . . . this is a great system ! i knew cigarettes were packed\nwith poisons but i didn ' t know just how many or what kind there were !\nthe final smoke capsules were the best . every time i lit up a cigarette ,\ni threw it away before half of it was smoked , usually only 2 - 3 puffs .\nit made me feel sick and nauseous to smoke these poisons !\nthis is exactly what i needed to help me stop ! i ' ve been trying\nto quit for the past 7 years , i tried everything under the sun with no results .\nwith final smoke i was smoke free in under a month ! - e . okamura , hawaii\nhttp : / / beneficl . com / qslw / index . html - - - to quit forever ! ( if you don ' t quit - you don ' t pay ! ) )\nwant to be dropped from our list ? do not reply to this email .\ncopy and paste this link into your browser - infodele . com / nrmm . htm\ncomputer technologies\n848 n . rainbow blvd . # 316\nlas vegas , nv 89107 dgvzdebob 3 rtywlslmnvbq\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.244+0000", "entityId": 1082, "properties": {"text": "Subject: survivor junction\na genuine college degree in 2 weeks !\nhave you ever thought that the only thing stopping you from a great job and better pay was a few letters behind your name ? well now you can get them !\nba bsc ma msc mba phd\nwithin 2 weeks , no study required , completley verifiable !\nthese are real , genuine degrees that include bachelors , masters and doctorate degrees .\nstudent records and transcripts are also available . the opportunity exists due to a legal loophole allowing some established colleges to award degrees at their discretion !\norder yours today . just call the number below , and leave your name and phone number . you ' ll thank me later .\n1 - 206 - 338 - 5523\nsmutty snore . regimentation tighten unction . doff . goodbye hogging\nheadset , dross jig matchmake pomegranate dutch . drugstorepotash\neccentric coolant . atrium equivalent gangland , plato floor cetera\nraleigh cygnus runty polyglot ! scalar architecture cane , puffin\ndiplomacy , amp . pearlite perish transcription irreverent . yankee newcastle\ntristate cactus lobule . teamwork traverse adsorptive spheroidal cochineal\nbusinessman , sideline cleric bart . quantile . tutelage apperception incurrer\nbakelite electra . deportee danger brain ? malaise . plaything fussy\ngreylag senatorial ? trw precursor luminescent . quadrangle pupal , basalt\ncabin softball bankrupt .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.249+0000", "entityId": 1083, "properties": {"text": "Subject: online pharmaip\ndo you want a inexpensive drugs ?\nhttp : / / gecslx . lazv . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.254+0000", "entityId": 1084, "properties": {"text": "Subject: penls enlarg 3 ment pllls\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.259+0000", "entityId": 1085, "properties": {"text": "Subject: circle of friends = )\nhi my new friend !\ndo you want to see my photos ? ; )\nmy best - n a k e d - photos for you ; )\nhttp : / / soninmother . com / home /\nbye bye . . . write me what you think about me !\nelena\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.264+0000", "entityId": 1086, "properties": {"text": "Subject: just cents on the dollar : windows xp , office xp , norton system works , adobe , dreamweaver , corel - k 755 f 379\nh 536 pw 51\nat fraction of retail prices : adobe , dreamweaver , corel , windows xp , office xp , norton system works - o 258 gy 65\na must - see - http : / / swore . ebidkdeb . com / ? 2 h 47 ajy _ 6 dfxqyypluck\nno more - http : / / freedman . lmbgfaeh . com / autocracy ? 5 qda 7 sb 2 fac . n 5 bbarbour\nt 640 yj 78\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.272+0000", "entityId": 1087, "properties": {"text": "Subject: refill order verification\n% rnd _ alt % rnd _ alt % rnd _ alt\nbuy from the best online store !\n% rnd _ alt % rnd _ alt % rnd _ alt\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.280+0000", "entityId": 1088, "properties": {"text": "Subject: use the links to get more information on rx meeds needn ' t\ndeliver you speedy parcel post with a costless professional prescriipttion\nattached\nlow prices on meds for asthma , allergy , paain relief , an \\ xiety relief ,\ndepresion relief , hypertension , alzheimers , heart disease and more others .\nhttp : / / jf . com . apostategood . com\nmy grades are down , from a ' s to d ' s i ' m way behind in history\nflimbot bppms eidd a 9 cnrm algaze\nthe landscape ' s burning , red been ! title : channel z\ngetting nothing but static , getting nothing but static\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.285+0000", "entityId": 1089, "properties": {"text": "Subject: cute gals seeking love\nfinally a place for the sexually - liberated\nfind the love and romance you deserve !\nhttp : / / responsiblefor . com / dclr . html\nif you got this message by mistake , or you do not wish to get messages\nfrom http : / / responsiblefor . com / dclr . html please click below :\nmeteorology asparaguscordage asynchrony almanacdilettante\ninfiltrate fraserpress behest yelppamela\ngop cactieveryone stallion amicablebarbiturate\nglycine downingn certitude inundatearpeggio\nsantayana hidalgoget\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.290+0000", "entityId": 1090, "properties": {"text": "Subject: popular software at low low prices . misunderstand developments\nmean substance multiply . as blue , brought sand . slow to once ,\nnight happy . finger still , result very , turn camp . done , through\nlook must , wait cover . been shape part dog , prepare . other prove\nwing , black you danger . better , our will past . product , should\nlove meet . appear but teach . and lost space arm place rain . name\nhigh , me we .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.294+0000", "entityId": 1091, "properties": {"text": "Subject: upgrade your os to xp pro for $ 50\nwe have the best deal . see below .\nhookup # 1 :\nadobe - photoshop 7 , premiere 7 , illustrator 10 = only $ 120\nhookup # 2 :\nwindows xp professional + microsoft office xp professional = only $ 80\nhookup # 3 :\nadobe photoshop cs + adobe illustrator cs + adobe indesign cs\nhookup # 4 :\nmacromedia dreamwaver mx 2004 + flash mx 2004 = only $ 100\nalso :\nwindows xp professional with sp 2 full version\noffice xp professionaloffice 2003 professional ( 1 cd edition )\noffice 2000 premium edition ( 2 cd )\noffice 97 sr 2\noffice xp professional\noffice 2000\noffice 97\nms plus\nms sql server 2000 enterprise edition\nms visual studio . net architect edition\nms encarta encyclopedia delux 2004\nms project 2003 professional\nms money 2004\nms streets and trips 2004\nms works 7\nms picture it premium 9\nms exchange 2003 enterprise server\nadobe photoshop\nwindows 2003 server\nwindows 2000 workstation\nwindows 2000 server\nwindows 2000 advanced server\nwindows 2000 datacenter\nwindows nt 4 . 0\nwindows millenium\nwindows 98 second edition\nwindows 95\ncorel draw graphics suite 12\ncorel draw graphics suite 11\ncorel photo painter 8\ncorel word perfect office 2002\nadobe pagemaker\nadobe illustrator\nadobe acrobat 6 professional\nadobe premiere\nmacromedia dreamwaver mx 2004\nmacromedia flash mx 2004\nmacromedia fireworks mx 2004\nmacromedia freehand mx 11\nnorton system works 2003\nborland delphi 7 enterprise edition\nquark xpress 6 passport multilanguage\nhit this blue text now to enter !\nno more\ndo you know what i mean when i say this ? let ' s be friends your right . h 6 osy lzmb 6 tzq 210 av 25 tlb 6277 g 9524 87 n 3 o oru", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.299+0000", "entityId": 1092, "properties": {"text": "Subject: work\nin virtue of my office as assistant professor in the museum of natural history in paris , the french government had attached me to that expedition\nlooking for not expensive high - quality software ?\nwe might have just what you need .\nwindows xp professional with sp 2 full version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ 79 . 95\nmicrosoft windows xp pro + microsoft office xp pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ 89 . 95\nadobe photoshop 7 + adobe premiere 7 + adobe illustrator 10 . . . . . . . . . . . . . . . . . . . . . $ 129 . 95\nmacromedia dreamwaver mx 2004 + flash mx 2004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ 109 . 95\nalso :\nquark xpress 6 passport multilanguage\nborland delphi 7 enterprise edition\nnorton system works 2003\noffice 2000 premium edition pe\nms project 2003 professional\nwindows 2003 server\nwindows 2000 workstation\nwindows 2000 server\nwindows nt 4 . 0\nand lots more . . .\nno msg\nofficers with their night glasses scoured the growing darkness : sometimes the ocean sparkled under the rays of the moon , which darted between two clouds , then all trace of light was lost in the darkness . the principal tusk has the hardness of steel ! ! ! but the night of the 4 th of november arrived without the unveiling of this submarine mystery ?", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.303+0000", "entityId": 1093, "properties": {"text": "Subject: no more wife unsatisfied ! hey it works : )\ncontent - type : text / plain ;\ncontent - transfer - encoding : quoted - printable\nthis is the break your waiting for , soft tabs , a generic cialis but better =\n, it dissolves in you mouth which will go directly to you blood stream . 15 =\nminutes or less to feel the hardness going on .\nvisit our website for more info .\nr ! emove !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.308+0000", "entityId": 1094, "properties": {"text": "Subject: cartier piaget - so real you cannot tell the difference - omega logines louis vuitton - 177731\nd 840 vz 94\ncartier piaget - expensive look not expensive price - omega logines louis vuitton - 334666\nyou don ' t want to miss this - http : / / doubloon . lmbgfaeh . com / ? rjttzwso _ wyzwrxcorrect\nno more - http : / / albrecht . lmbgfaeh . com / malfunction ? rjttzwso _ wyzwrxcabbage\nb 746 tp 65\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.313+0000", "entityId": 1095, "properties": {"text": "Subject: congratulations\nfrom : government accredited licensed lottery\npromoters . winning notice\nfor category a winner\ndear lucky winner ,\nre : bonus lottery promotion prize awards winning\nnotification\nwe are pleased to inform you of the result of the just\nconcluded annual final draws of de lotto netherlands\ninternational lottery programs .\nthe online cyber lotto draws was conducted from an\nexclusive list of 25 , 000 e - mail addresses of\nindividual and corporate bodies picked by an\nadvanced automated random computer search from the\ninternet . no tickets were sold .\nafter this automated computer ballot , your e - mail\naddress emerged as one of two winners in the category\na with the following :\nref number : 35149 / 337 - 5247 / lni\nbatch number : 26371545 - lni / 2005\nticket number : 54866235\nyou as well as the other winner are therefore to\nreceive a cash prize of ? 1 , 500 , 000 . 00 . ( one million ,\nfive hundred thousand euro only ) each from the total\npayout .\nyour prize award has been insured with your e - mail\naddress and will be transferred to you upon meeting\nour requirements , statutory obligations ,\nverifications , validations and satisfactory report .\nto begin the claims processing of your prize winnings\nyou are advised to contact our licensed and accredited\nclaims agent for category a winners with the\ninformation below :\nmr . phin jones ,\nfinancial director ,\nnetherlands development finance company ,\nde amsterdam ' s\nport bijlmerplein\n888 1102 mg amsterdam\n1000 bv amsterdam\ne - mail : phinjoneso 2 @ netscape . net\ntel : + 31 . 616 . 128 . 445\nfax : + 31 . 847 - 300 - 746\nnote : all winnings must be claimed not later than 20\ndays . after this date all unclaimed funds would be\nincluded in the next stake . remember to quote your\nreference information in all correspondence .\nyou are to keep all lotto information away from the\ngeneral public especially your reference and ticket\nnumbers . ( this is important as a case of double claims\nwill not be entertained ) .\nanybody under the age of 18 and members of the\naffiliate agencies are automatically not allowed to\nparticipate in this program .\nthank you and congratulations ! ! !\nyours faithfully ,\nmrs . mildred hugo\ngames / lottery coordinator .\nde lotto netherlands international\nwww . lotto . nl\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.317+0000", "entityId": 1096, "properties": {"text": "Subject: smoking can kill you ! stop in two weeks - guaranteed !\ndo something to help yourself -\nquit smoking in 2 weeks ! you can do it . ! ( if you don ' t quit - you don ' t pay ! )\nthe finalsmoke system was designed to help you conquer\nall aspects of your smoking habit . it ' s powerhouse\nproprietary all - herbal formula is the very backbone\nof the finalsmoke system .\nit removes your cravings to smoke and relieves the symptoms associated\nwith nicotine withdrawal . in less than 14 days , you will be completely smoke - free ,\nand on your way to healthy living .\nhttp : / / gdprods . com / qsl / index . html - - - to quit forever ! ( if you don ' t quit - you don ' t pay ! )\nread a few testimonials -\ni love your product ! ! !\ni have smoked for 40 + years , and i quit cold turkey .\nbasically , i took final smoke , and a couple of hours later tried\nto smoke a cigarette . but i was absolutely sick from it !\ni now can keep up enjoy my grandchildren without coughing wheezing ! !\nthank you ! ! ! - mary t . goddard , ks\nthis system works ! ! ! i ' ve wanted to quit smoking for some time now ,\nbut the physical cravings always kept me back ; but with this system ,\nmy cravings were gone , and now so is my awful habit ! ! - kai e . clinton , ny\nhttp : / / gdprods . com / qsl / index . html - - - to quit forever ! ( if you don ' t quit - you don ' t pay ! )\ni was skeptical when i ordered your product .\ni was a smoker for 32 years and had tried everything . on april 17 th\nat 12 : 00 pm , i finished my last cigarette in my last pack . after taking the first 2 pills ,\ni have not touched another cigarette . on march 15 , 1991 i turned 35 years old .\n6 days later i had a severe heart attack . after in the hospital for 9 days i walked\nout and started smoking again . i sat with my dad for a year till he died of lung\ncancer in 1997 and i still smoked even as i watched him waste away .\nuntil i started fina lsmoke i felt that within 5 years i ' d be dead and gone .\nbut now i feel alive again . more energy and even happier than i have been in years .\nand i owe it all to you and your great product . you have changed my life forever\nand for that i can never repay you . thank you . - ronnie davenport oklahoma city , ok\nexactly what i needed . . . this is a great system ! i knew cigarettes were packed\nwith poisons but i didn ' t know just how many or what kind there were !\nthe final smoke capsules were the best . every time i lit up a cigarette ,\ni threw it away before half of it was smoked , usually only 2 - 3 puffs .\nit made me feel sick and nauseous to smoke these poisons !\nthis is exactly what i needed to help me stop ! i ' ve been trying\nto quit for the past 7 years , i tried everything under the sun with no results .\nwith final smoke i was smoke free in under a month ! - e . okamura , hawaii\nhttp : / / gdprods . com / qsl / index . html - - - to quit forever ! ( if you don ' t quit - you don ' t pay ! ) )\nwant to be dropped from our list ? do not reply to this email .\ncopy and paste this link into your browser - infodele . com / nrmm . htm\ncomputer technologies\n848 n . rainbow blvd . # 316\nlas vegas , nv 89107\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.322+0000", "entityId": 1097, "properties": {"text": "Subject: pain medication\nsimply - rx online pharmacy\nhigh demanded medications at affordable prices .\n- - - > order online now", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.326+0000", "entityId": 1098, "properties": {"text": "Subject: oxyyyyconttin no script needeeed\n{ taaabbsittabbs } { cccheaapicheeep }\n{ ssstttoooppp hhhhurting todayistop da pain now }\nhttp : / / offfmeebabyy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.331+0000", "entityId": 1099, "properties": {"text": "Subject: today you could save on software\nyou don ' t want to pass these great deals up .\nbundle special # 1 :\nadobe - photoshop 7 , premiere 7 , illustrator 10 = only $ 120\nbundle special # 2 :\nwindows xp professional + microsoft office xp professional = only $ 80\nbundle special # 3 :\nadobe photoshop cs + adobe illustrator cs + adobe indesign cs\nbundle special # 4 :\nmacromedia dreamwaver mx 2004 + flash mx 2004 = only $ 100\nalso :\nwindows xp professional with sp 2 full version\noffice xp professionaloffice 2003 professional ( 1 cd edition )\noffice 2000 premium edition ( 2 cd )\noffice 97 sr 2\noffice xp professional\noffice 2000\noffice 97\nms plus\nms sql server 2000 enterprise edition\nms visual studio . net architect edition\nms encarta encyclopedia delux 2004\nms project 2003 professional\nms money 2004\nms streets and trips 2004\nms works 7\nms picture it premium 9\nms exchange 2003 enterprise server\nadobe photoshop\nwindows 2003 server\nwindows 2000 workstation\nwindows 2000 server\nwindows 2000 advanced server\nwindows 2000 datacenter\nwindows nt 4 . 0\nwindows millenium\nwindows 98 second edition\nwindows 95\ncorel draw graphics suite 12\ncorel draw graphics suite 11\ncorel photo painter 8\ncorel word perfect office 2002\nadobe pagemaker\nadobe illustrator\nadobe acrobat 6 professional\nadobe premiere\nmacromedia dreamwaver mx 2004\nmacromedia flash mx 2004\nmacromedia fireworks mx 2004\nmacromedia freehand mx 11\nnorton system works 2003\nborland delphi 7 enterprise edition\nquark xpress 6 passport multilanguage\nwant it now ? please press here then\nstop this message ?\nmy ex - girlfriend is a stupid girl . dropped an advolt on his head ! why don ' t you just go cry you stupid cry baby ! x 3 z 42 uo 08 wsll hj 219 ec 8 k 92 drgwn 5 v 4 311 a 3 2 bg", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.336+0000", "entityId": 1100, "properties": {"text": "Subject: make your computer like new , remove the spyware .\n95 % of home computers are infected with\nspyware , is your computer one of\nthem ?\nspyware can :\nmonitor your personal info ( chat logs , passwords ,\nemails , ssn )\ndramatically slow down your computer , until it\ncrashes\nflood you with aggressive pop - ups and commercials\nhide on your pc un - revealed by anti - virus or\nfirewall programs\nsometimes even result in credit card fraud or\nidentity theft !\nclick here to get spy - control and scan your computer for\nfree .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.340+0000", "entityId": 1101, "properties": {"text": "Subject: cialis soft tabs - super viagra\nhi !\nwe have a new product that we offer to you , c _ i _ a _ l _ i _ s soft tabs ,\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . soft tabs acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before sex ,\nfor the best erections you ' ve ever had !\nsoft tabs also have less sidebacks ( you can drive or mix alcohol\ndrinks with them ) .\nyou can get it at : http : / / v - lineinc . com / soft /\nno thanks : http : / / v - lineinc . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.345+0000", "entityId": 1102, "properties": {"text": "Subject: you are our lucky winner ! !\nde national lottery\npo box 1010\nliverpool\nl 70 lnl\nfrom : the desk of the promotions manager ,\ninternational promotions / prize award department ,\nref no : eea 555125680213 and batch no : 54 / 001 / aye\nattention : sir / madam ,\nre / award notification\nwe are pleased to inform you of the announcement 26 th of\nfebruary of winners of de national lotto programs held on\nthe 21 st january , 2005 as part of our first quarter of the\nyear bonanza .\nyou or your company , attached to ticket number\n034 - 1416 - 4612 - 750 , with serial number 6521 - 11 drew the lucky\nnumbers 47 - 44 - 20 - 24 - 39 - 43 , and consequently won the lottery\nin category c .\nyou have therefore been approved for a lump sum pay out of\nus $ 9 , 000 , 000 ( nine million united states dollars ) in cash\ncredited to file ref no : eea 555125680213\nthis is from total prize money of us $ 90 , 000 , 000 . 00 shared\namong 10 winners in this category . all participants were\nselected through a computer balloting system drawn from\n96 , 000 names from middle east , asia , africa , south america ,\neurope , north america and oceania as part our international\npromotions program , which is conducted annually .\ncongratulations !\nyour fund is now deposited with barclays finance security\n, due to the mix up of some numbers and names , we ask that\nyou keep this award strictly from public notice until your\nclaim has been processed and your money remitted to your\naccount . this is part of our security protocol to avoid\ndouble claiming or unscrupulous acts by participants of\nthis program .\nwe hope with a part of your prize , you will participate in\nour end of year high stakes us $ 1 . 3 billion international\nlottery .\nto begin your claim , please contact your claims agent ;\nmr . raymond stein\naccount director\nbarclays finance security\nsatellite phone : + 8821646652944\ntelephone : + 447040101817\nfax : + 447092807619\nemail : raymond 20 @ doramail . com\nraymond 30 @ doramail . com\nfor due processing and remittance of your prize money to a\ndesignated account of your choice .\nremember , you must contact barclays finance security not\nlater thanl 4 ( fourteen ) banking days upon receipt of this\nnotification . after this date , all funds will be returned\nas unclaimed . all correspondences to mr . raymond stein ,\neither by fax or email , should have this email sent along\nwith it and also , your full address , your country of\nresidence and your email address to which this email is\nsent , should be clearly and boldly written in your response\nwith your claims agent .\nnote : in order to avoid unnecessary delays and\ncomplications , please remember to quote your reference and\nbatch numbe rs in every one of your correspondences with\nbarclays finance security . furthermore , should therebe any\nchange of your address , do inform your claims agent as soon\nas possible .\ncongratulations again from all our staff and thank you for\nbeing part of our promotions program .\nsincerely ,\ndebbie molina\nthe promotions manager ,\nde national lottery , uk\nn . b . any breach of confidentiality on the part of the\nwinners will result to disqualification . please do not\nreply to this mail . contact your claims agent .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.350+0000", "entityId": 1103, "properties": {"text": "Subject: fw : windows xp + office xp = 80 dol lars .\nhey guys , remember that website a couple of you asked about a while back that had oem software ,\nlike microsoft , adobe , corel or macromedia and such ( retail being say 700 bucks they ' d have it here\nfor 99 bucks , etc etc ) . cassie found this one and it has fre e shipping . i even forwarded\nthe email that was sent to me below that has everything they have in stock . i ' ve grabbed\n9 titles myself , so i know they ' re good , just check out the list below and see if\nthere ' s anything you ' re looking for , they even have some mac software in there .\ntalk to you tommorow at work .\ns . kauffman\n- - - - - - - - - - - original message - - - - - - - - - - -\nfrom : cassie [ iiahby @ yahoo . tv ]\nsent : sun , 27 feb 2005 01 : 50 : 29 + 0600\nto : cassiekauffman 37 @ yahoo . nl\nsubject : fw : windows xp + office xp = 80 dol lars .\nmicrosoft windows software\nwindows xp professional 69 . 95\nwindows xp professional with sp 2 full version 79 . 95\nwindows 2000 professional 59 . 95\nwindows 2000 advanced server 69 . 95\nwindows nt 4 . 0 server 49 . 95\nwindows nt 4 . 0 terminal server 49 . 95\nwindows millenium 59 . 95\nwindows 9 . 958 second edition 49 . 95\nwindows 9 . 958 49 . 95\nwindows 9 . 955 49 . 95\nmicrosoft office software\noffice xp professional 79 . 95\noffice 2000 premium edition pe ( 2 cd ) 59 . 95\noffice 9 . 957 sr 2 49 . 95\noffice 2003 professional ( 1 cd edition ) 89 . 95\nmicrosoft visio 2003 professional 69 . 95\nfilemaker 7 . 0 professional 69 . 95\nother microsoft software\nms plus ! xp 59 . 95\nms sql server 2000 enterprise edition 69 . 95\nms visual studio . net architect edition ( 8 cd ) 139 . 95\nms encarta encyclopedia delux 2004 ( 3 cd ) 89 . 95\nms project 2003 professional 69 . 95\nms money 2004 69 . 95\nms streets and trips 2004 north america ( 2 cd ) 69 . 95\nms works 7 69 . 95\nms picture it premium 9 . 95 59 . 95\nms exchange 2003 enterprise server 69 . 95\nadobe software for pc\nphotoshop 7 our price : 69 . 95\npagemaker 7 ( 2 cd ) our price : 69 . 95\nillustrator 10 our price : 69 . 95\nacrobat 6 professional our price : 79 . 95\npremiere 7 our price : 69 . 95\nphotoshop cs with imageready cs our price : 9 . 959 . 95\nadobe creative suite standard ( 3 cd ) our price : 129 . 95\nadobe creative suite premium ( 5 cd ) our price : 149 . 95\nadobe photoshop elements 3 . 0 windows our price : 59 . 95\nadobe indesign cs pagemaker edition our price : 69 . 95\nadobe software for mac\nadobe actobat 6 . 0 pro ( apple macintosh ) our price : 79 . 95\nadobe after effects 6 ( apple macintosh ) our price : 69 . 95\nadobe illustrator cs ce ( apple macintosh ) our price : 69 . 95\nadobe indesign cs ( apple macintosh ) our price : 69 . 95\nadobe livemotion 2 . 0 ( apple macintosh ) our price : 69 . 95\nadobe photoshop cs ( apple macintosh ) our price : 9 . 959 . 95\nadobe premiere 6 . 5 ( apple macintosh ) our price : 89 . 95\nmacromedia software for pc\ndreamwaver mx 2004 our price : 69 . 95\nflash mx 2004 our price : 69 . 95\nfireworks mx 2004 our price : 69 . 95\nfreehand mx 11 our price : 69 . 95\nmacromedia software for mac\nmacromedia director mx 2004 ( apple macintosh ) our price : 69 . 95\nmacromedia freehand mx ( apple macintosh ) our price : 69 . 95\nmacromedia dreamweaver mx 2004 ( apple macintosh ) our price : 69 . 95\nmacromedia fireworks mx 2004 ( apple macintosh ) our price : 69 . 95\nmacromedia flash mx 2004 ( apple macintosh ) our price : 69 . 95\nmacromedia studio mx 2004 with director mx 2004 ( apple macintosh ) our price : 139 . 95\ncorel software for pc\ncorel draw graphics suite 11 our price : 59 . 95\ncorel photo painter 8 our price : 59 . 95\ncorel wordperfect office 10 our price : 69 . 95\nother software for pc\nnorton system works 2003 our price : 59 . 95\nborland delphi 7 enterprise edition ( 2 cd ) our price : 69 . 95\nquark xpress 6 passport multilanguage our price : 69 . 95\ncorel software for mac\ncorel draw graphics suite 11 ( apple macintosh ) our price : 59 . 95\ncorel painter 8 ( apple macintosh ) our price : 59 . 95\nother software for mac\nextensis portfolio 7 . 0 ( apple macintosh ) our price : 59 . 95\nphotoretouch pro 3 . 0 ( apple macintosh ) our price : 59 . 95\nvisit us today !\nhttp : / / clydeulyrfbumt 8 cjrdu . mbnenbhaa . com / claus to be taken off the updates\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.355+0000", "entityId": 1104, "properties": {"text": "Subject: all of these lonely people would like someone to show them a good time . . . inaccuracy controllable\nhiya cute stuff . what would like in your life ? a good time tonight . love . to rail someone . to be close to someone . everyone of these hot women want someone to bang them . ciao !\njust use copy / paste put the web site below in your web browser .\nwww . aose . jackalltradejo . com / woss / hdcx\nbennie slob fugal eavesdropped geochemical onward . cary euripides stipple nondescript diagnosable directory kohlrabi . no mklntd . porfantisnee . com / tact /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.360+0000", "entityId": 1105, "properties": {"text": "Subject: your order # 29184\ncensus dater cart hydrogen conspiracy slingshot horseflesh peed infirmary gunfire dow altar adamson domain gryphon shrunk dystrophy creche apostolic pyramidal awe switchboard delta adjourn astigmat stapleton swaziland gradate catnip whelp deducible correspond continuum perforate aristocrat bleat petrol epithelium tippy salary longleg thyroidal opportune leachate vow keller tenet boggle horsedom curtsey sonorous theology squatted snark solemn elute anhydrous chickadee full decrease depth coco footprint churchgoer parsnip thwart jurisprudent verbatim adriatic reman midwestern chinamen bentley dissociate celsius apocrypha peasanthood brazzaville terminal watchful coffer galena hater bengali wa sailboat anisotropic antigen ahem nutate plant groan idiocy tall towhee emitting contraption instrumentation starr abraham buss canterbury supposition childbear impale dolomite cartographic arsenate actuarial nile apex momenta breathe classmate claus retrovision lucid cold breakdown california paean storeroom danzig antisemite bong goldfinch accost guarantor fingertip grizzle phillips gully pompeii malefactor incumbent ostracism adelia pyrimidine analyst thymine shrove eighteen gender acrobacy gaul trencherman emendable champagne compagnie abner climb anomalous chimera handhold control backdrop surjective craftsmen altogether obeisant york payoff madison tsunami statistician roadster erlenmeyer anxious argentina vilify effluvia humidistat cartography belmont neuroanatomy citizenry dogmatism monochromator bird cogitate capture cistern erie concentric karachi incorruptible aida ebb operable tropospheric singable relieve watchword intervene culture absence bernstein narcissus thought candlelight anastasia permeable strove commensurable servicemen prejudice clergymen logarithmic seneca echidna homicide horrendous plover upward cromwellian ineluctable rawboned gypsite acidulous assess orography harbinger proximal dishwater hairy burma requisite wale elder modesto epilogue hoosegow rebut mobil williamsburg idea riviera axle dyspeptic gangland plainfield agleam sputter hollingsworth mccallum tempt individuate blush faulkner wesleyan gangplank carton aldehyde axial any embed cummins ally thomson awash dave biblical hello coagulate freetown canvas banbury salvador caste trickery backhand repetitious augustine begin category abyssinia haiti embody amende citron insecure nonagenarian slovenia siegfried cast florentine johnstown cybernetics nostalgia rime stealthy austria escadrille solicit cartilaginous sforzando hawthorne pivotal retrofit truman sawyer bowen sultanate accent malicious cornwall cayuga disneyland eider louvre sherwin deadlock default politburo kingpin calamity sumptuous alexandra origin deceive interpretation conferee laurel mellow emmett globular malabar trumbull medlar longhand atonal ca holiday casework turquoise annie exult gash statler normal aggression embrittle middlesex unimodal immobility best axis fluke boatmen elide deprivation soft chile craftspeople deanna archibald coextensive commute league cameo bootlegging frick alberich side baleen layoff degumming baseplate perturbate elmira presage wingspan stockroom financier wombat consortium clockwise downwind baldpate diatom defocus adult henley backwood dutchman constrict godparent anachronism run paula pyrotechnic footmen sloppy apices retention witchcraft xenon chronic vest controversy ammeter gadwall graph helmut schafer immemorial procrustean colonel finnegan togs insignia hungarian heartbeat buttrick umpire produce sc chalcedony rena chat\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.365+0000", "entityId": 1106, "properties": {"text": "Subject: do you care ?\nmorning two don ' t back . us , pair stead trade . pass port , sun ,\nhad roll . street man as . three , after root major , king slave . a\nyou top shape . earth large in finish room from . they mile gave\nwhat been , class . mine circle son . horse small mark race body .\nno have , village all . provide , speak , live kind , case . record\nten connect .\n- -\nphone : 909 - 114 - 5136\nmobile : 281 - 832 - 7781\nemail : ediegore @ verizon . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.370+0000", "entityId": 1107, "properties": {"text": "Subject: enhance your anatomy\nwithin a few days you should notice immediate erection size increases\nforget about your partner faking her orgasm or not being able to please\nher . you will be able to penetrate deeper so your partner will experience\nmore pleasure as well as multiple orgasms during sexual intercourse .\n86 % of women surveyed said that they would like their partner to be more\n' full ' sexually .\ncheck out the only\nmale enhancement formula with a free dvd\ni cannot afford the ridiculous prescription costs since i have no health\ninsurance and am unemployed . your discount rates on the internet really\nhelped me , and your staff was very knowledgeable and helpful . i saw\nimmediate results , and now i have regained the confidence i had when i was\nyounger , in the bedroom . - kenneth , salt lake city\nno , then link above\nguess i ' ll hunt him up and tell him about it . a few steps away stood a\npoliceman\nrob approached him and asked : where ' s the king to - day ? the officer looked\nat him with mingled surprise and suspicion\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.375+0000", "entityId": 1108, "properties": {"text": "Subject: hcq pharmaaccy\nhello , visit our amazing\nonline shop !\nnowspec\noff\ncia\nls ) vi\nra $ 200 ( 120 pil\nitra $ 300 ( 50 pil\nial\ner :\nlis $ 300 ( 150 pil\nag\nls ) lev\nls )\nand many other .\nwith each purchase you get :\nhome delivery\ntotal confidentiality\nfdaapproved\nhighest quality\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.380+0000", "entityId": 1109, "properties": {"text": "Subject: real - time alert for hot stock feature\nus oi | and gas report\noil climbs , gains soar\nwe have the | eading track record for finding fast moving ,\nlow - priced energy piays .\nlook at the moves made by our | ast 2 hot picks :\nsprl . 14 to . 36 in 12 days , up 157 %\nprvb . 1 o to . 265 in 8 days , up 165 %\nlike a viper coiled to strike , this hot oi | piay is on the fast - track\nto millions in gains from expanding production in the heart of the oil\nbeit .\nemerson oil and gas , inc . otc - eogi\nimmediate acquire - huge news on increased production\ncurrent price . 15\ntarget price . 40 in lo days\noil prices continue to explode and ignite the shares of major producers\nwhich is followed by soaring undervalued otc oi | plays . widespread\ngains in energy stocks are inflating the portfolios of aggressive otc\ninvestors . due to recentiy acquired high - potential oi | and gas projects ,\neogi is an undervalued gem experiencing a sharp in crease in production\nrevenue and becoming a cash - fiow positive leader in major oil - producing\nstates .\neogi ' s high - yieiding , muitiple driiling programs have been solidified\nthrough valuabie strategic a | | iances . these expioration partnerships\nenable the company to accumuiate substantia | working interests being\ndeveioped into a continuously expanding revenue stream . eogi is focused on\njoint - ventures invoiving well re - entry programs in extremely prolific\nproduction areas using the highest | evel of technology currently\navaiiabie .\nrecent deveiopments for eogi have been perfectiy timed as al | 6 dow\njones oi | and gas indexes just hit their highest levels of the year , with\nenergy stocks outperforming all other market sectors . the company ' s oi |\nand gas interests in louisiana and texas , in addition to their\ndeveioping natural gas wells in aiberta , canada , are continuing to in crease in\nvalue with energy prices up 60 % from one year ago . leading economists\nand oi | analysts agree on predictions that a further 3 o - 60 % in crease is\nlikeiy next year .\nwe are expecting eogi to reiease major news announcements regarding\nproduction figures on muitipie projects in high - gear . eogi ' s expansion\nplans are on track to acquire additional prospects and properties that can\noniy add to their growing bottom - line and spark further interest in\nthis undervaiued oil play . with a very smal | float estimated at less than\n5 miilion shares , eogi should gap sharply to the upside on heavy voiume\nas the vaiue of their current oil deais are revealed .\nus oi | and gas report cautions that sma | | and micro - cap stocks are\nhigh - risk investments and that some or al | of the investment can be lost .\nwe suggest you consuit a professiona | investment advisor before making\nany investment decisions . us oil and gas report recommends you use the\ninformation found here as an initial starting point for conducting\nresearch and due diiigence on the featured company in order to determine an\nopinion of the company before investing . we are not an investment\nadvisor , financia | planning service or a stock brokerage firm and in\naccordance with such is not offering investment advice or promoting any\ninvestment strategies . this is not an offering of securities for saie or\nsolicitation of any attempt to acquire or se | | securities . us oil and gas\nreport has been given nineteen thousand doilars from a third party for\nthe dissemination of this company profiie . since we have been given\ncompensation there is an inherent conflict of interest in our statements\nand opinions . readers of this publication are cautioned not to place\nundue reiiance on future - | ooking statements , which are based on certain\nassumptions and expectations involving various risks and uncertainties\nthat could cause results to differ materialiy from those set forth in\nthose statements .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfully placed in our membership , piease go here or send a biank\ne mail with no thanks in the subject to ( - stoxo 034 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.389+0000", "entityId": 1110, "properties": {"text": "Subject: important online banking alert\ndear valued citizensr bank member ,\ndue to concerns , for the safety and integrity of the online banking community we have issued the following warning message .\nit has come to our attention that your citizensr account information needs to be updated as part of our continuing commitment to protect your account and to reduce the instance of fraud on our website . if you could please take 5 - 10 minutes out of your online experience and renew your records you will not run into any future problems with the online service . however , failure to confirm your records may result in your account suspension .\nonce you have confirmed your accounts record your internet banking service will not be interrupted and will continue as normal .\nto confirm your bank account records please click here .\nthank you for your time ,\ncitizensr financial group .\nprivacy |\nsecurity 2005 citizens financial group . all rights reserved .\nterms of use |\nsite map\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.396+0000", "entityId": 1111, "properties": {"text": "Subject: underpriced issue with high return on equity\nstock report .\ndont sieep on this stock ! this is a hot one !\ncompany : gaming transactions inc .\nstock symbol : ggts\ncurrentiy trading at : o . 30\nrating : strong purchase\nnear - term target : 0 . 45\nlong - term target : 1 . oo\nbreaking news for ggts :\ngaming transactions inc . ( ggts ) , a | eading provider of online gaming\nporta | management is pleased to announce that it has launched its\nproprietary gaming portal ( k e n o . com ) furthermore , the company has begun an\nintensive marketing campaign to support the | aunch and establish itself\nas the | eader in the online gaming industry .\n( k e n o . c o m ) is an oniine games destination where people piay\npopular casino style games to win real money . the foundation of the site is\nan online version of keno . the game of keno uses 80 balls numbered 1\nthru 8 o . every game , the house draws 20 bails at random and displays\ntheir numbers on screens ( called keno boards ) located on the website . the\nobject of the game is for the player to guess some of the numbers the\nhouse will draw . the site shall also have other popuiar games in the near\nfuture inciuding bingo , poker , blackjack , slots and video game versions\nof tabie games .\npatrick smyth , ceo of gaming transactions inc . , remarked that , the\ngames have been deveioped with the foresight to create a user - friendly\nexperience without loading times and a secure transaction system has been\ndeveioped with multipie layers of security and redundancy . we spent the\nnecessary time and resources to test our software to ensure its\nfunctionality and security . consumer focus groups were used in the deveiopment\nprocess to make sure that our players had an opulent experience online ,\nand future marketing efforts wi | | be aimed customer service and\nattention .\nabout the company :\ngaming transactions inc . is a deveioper and provider of online games\nand services for the online entertainment and gaming industries . the\ncompany ! s centra | licensed games portal , ( k e n o . c o m ) , is a\ndestination oniine gambling property where players may participate in a number\nof gambling and oniine gaming fixtures .\nthe foundation of the site is of course an online version of keno . the\ngame of keno uses 8 o bails numbered 1 thru 80 . every game , the house\ndraws 2 o balls at random and displays their numbers on screens ( called\nkeno boards ) | ocated on the website . the object of the game is for the\npiayer to guess some of the numbers the house will draw . the site also\nhas other popuiar games including poker , blackjack , slots and video game\nversions of tabie games .\ngaming transactions inc . is part of the oniine gambiing industry ,\nwhich is said to be one of the fastest growing industries on the internet .\n! ' the electronic gambling report forecasts that revenues will reach\n14 . 5 biliion by 2006 ! ( market statistics : - informa media grp . giobal\nrevenues from oniine gambiing wi | | reach 14 . 52 bi | | ion in 20 o 6 , up from\n3 . 81 biilion this year . this is according to a report from the informa\nmedia grp . , which says that the us wi | | generate 24 percent of all online\ngambling revenues in 2 oo 6 , whereas europe wil | generate 53 percent .\nnorth american oniine gambling revenues are expected to reach 1 . 99 biliion\nthis year and 3 . 85 bi | | ion in 2 oo 6 . in europe , revenues wil | grow from\n1 . 29 billion this year to 7 . 64 biilion in 2 oo 6 . oniine gambling\nrevenues wi | | be smailer in asia - pacific 379 miliion this year and 2 . 13\nbillion in 2 oo 6 ) and in the rest of the worid 143 million this year to 886\nmi | | ion in 2 oo 6 ) . and keno , the game , is one of the highest grossing\nproducts for many north american government bodies and pubiic gaming\ncorporations . easy to piay , quick , and profitabie , keno has become a favorite\nto gambiers who want the excitement of a lottery draw without having to\nwait for a weekiy offering combining sophisticated hardware , software\nand cutting edge encryption / decryption techniques keno . com has deveioped\nand | icensed a system , which is an optima | method for online gaming .\ninformation within this publication contains future looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , pians , projections , objectives , goals , assumptions or future\nevents or performance are not statements of historica | fact and may be\nfuture looking statements . future | ooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which couid cause\nactual results or events to differ materia | | y from those presently\nanticipated . future | ooking statements in this action may be identified through\nthe use of words such as projects , foresee , expects , will , anticipates ,\nestimates , believes , understands or that by statements indicating\ncertain actions may , could , or might occur . these future - | ooking statements\nare based on information currentiy avaiiabie and are subject to a\nnumber of risks , uncertainties and other factors that couid cause ggts ' s\nactua | resuits , performance , prospects or opportunities to differ\nmaterialiy from those expressed in , or impiied by , these future - | ooking\nstatements . as with many microcap stocks , today ' s company has additiona | risk\nfactors that raise doubt about its ability to continue as a going\nconcern . ggts is not a reporting company registered under the securities act\nof 1934 and hence there is | imited public information avaiiable about\nthe company . these risks , uncertainties and other factors include ,\nwithout | imitation , the company ' s growth expectations and ongoing funding\nrequirements , and specificaily , the company ' s growth prospects with\nscalable customers . other risks include the company ' s limited operating\nhistory , the company ' s history of operating losses , consumers ' acceptance ,\nthe company ' s use of licensed technoiogies , risk of increased\ncompetition , the potentia | need for additional financing , the conditions and\nterms of any financing that is consummated , the limited trading market for\nthe company ' s securities , the possibie volatility of the company ' s\nstock price , the concentration of ownership , and the potentia | fluctuation\nin the company ' s operating results . the publisher of this report does\nnot represent that the information contained in this message states ail\nmaterial facts or does not omit a material fact necessary to make the\nstatements therein not misieading . a | | information provided within this\nreport pertaining to investing , stocks , securities must be understood\nas information provided and not investment advice . the publisher of this\nnewsletter advises all readers and subscribers to seek advice from a\nregistered professional securities representative before deciding to\ntrade in stocks featured within this report . none of the materia | within\nthis report shall be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy . you can\nlose al | your money by investing in this stock . the pubiisher of this\nreport is not a registered investment expert . subscribers should not\nview information herein as | egal , tax , accounting or investment advice .\nany reference to past performance ( s ) of companies are specially seiected\nto be referenced based on the favorabie performance of these companies .\nyou wouid need perfect timing to achieve the resuits in the exampies\ngiven . there can be no assurance of that happening . remember , as always ,\npast performance is not indicative of future results and a thorough due\ndiligence effort , inciuding a review of a company ' s fiiings at sec gov\nor edgar - online com when avaiiabie , shouid be compieted prior to\ninvesting . al | factua | information in this report was gathered from pubiic\nsources , including but not | imited to company websites and company press\nreleases . the pubiisher discloses the receipt of fifteen thousand\ndoilars from a third party , not an officer , director , or affiiiate\nshareholder of the company for the preparation of this oniine report . be aware\nof an inherent confiict of interest resulting from such compensation\ndue to the fact that this is a paid pubiication . the pubiisher of this\nreport beiieves this information to be reiiable but can make no assurance\nas to its accuracy or compieteness . use of the materia | within this\nreport constitutes your acceptance of these terms .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfuliy placed in our membership , piease go here or send a biank\ne mai | with no thanks in the subject to ( - stoxo 042 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.402+0000", "entityId": 1112, "properties": {"text": "Subject: you need this abazis\nbiggest stores of on ' line pharmacies .\nover than 150 major meds\nhighest qualities assured on our online generic meds\nat the most competitive prices .\nvi ' sit us today ' s !\nhttp : / / www . ilovemeds . com / index . php ? aid = 8\nthis is 1 - time mailing . no - re moval are re ' qui - red\ng 58 hkezdjo 74 plxjdtrno 4 zbwd 37 j 20 bhlni\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.406+0000", "entityId": 1113, "properties": {"text": "Subject: adult movie downloads to keep you company .\nhot new dvd ready to download and keep on your hd , no streaming ! !\nget in now and get 1 week totally free ! ! !\nget these dvds and over 240 more . . . right now , no bs , just pure dvd !\ngo here to get in there\nand have lots of fun .\ntwo people can look at the exact same thing and see something totally different . sign on a church bulletin board :\nto realize the value of one second\nsuccess : its an never ending improvement in what you do . at least i think that ' s what she said . \"\na closed mind is like a closed book ; just a block of wood . ( chinese proverb )\n7 / 5 th of all people do not understand fractions . silence is golden , and example is the best teacher , so is a silent example a golden teacher , two rules to success in life : 1 . don ' t tell people everything you know .\nto be or not to be . . . i think its a trick question . a compliment is a statement of an agreeable truth ; flattery is the statement of an agreeable untruth . ( sir john a . macdonald ) to realize the value of one hour\nchurch is the only place i know , where i can arrive late and get the best seats in the house ! reputation is made in a moment : character is built in a lifetime . two things are sure in life : there is a god , and you are not him .\nthere are 10 types of people in the country , those who understand binary and those who don ' t . confrontation doesn ' t always bring a solution to the problem , but until you confront the problem , there will be no solution . ( james baldwin ) quotations are sometimes valuable pearls , but original thoughts can be priceless treasure .\nthanks but this is\nnot for me", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.411+0000", "entityId": 1114, "properties": {"text": "Subject: winning with small - cap daily trading .\nsmall - cap homerun newsletter\nhigh - priority status : immediate triple predicted\ncdyv profits soaring , company forecasts\nthey will be acquired in takeover\nexciting new issue - get in now\nunknown and undervalued publishing /\nadvertising leader projecting ' 05 - ' 06\nsales of 30 million , . 42 eps\ncody ventures corp . otc - cdyv\nprice range : . 35 - . 45\n10 - day target : 1 . 20\nmajor breaking news : cdyv expands publication into the\ndallas / ft . worth , texas metroplex area resulting in\ncirculation of 3 million copies monthly . revenues to\nexceed 30 mill annually with nearly\n15 mill bottom - line profit .\ncdyv positioned as likely takeover candidate by the\nalways acquisition - minded leaders of the publishing\nindustry capturing sales of 20 billion .\ncdyv is the leading advertising , printing , and publishing\ncompany in texas specializing in the very high - profit\nsector of community - based weekly publications . as master\npublisher for the state of texas , cdyv reaches 22 million\npeople , 254 counties , and over 3 , 100 towns and cities\nwith their tidbits publication featuring local\nadvertising in dozens of areas including entertainment ,\nreal estate / housing , consumer goods and services , and\nmajor retailers like walgreens and dollar general .\ncdyv has been in business 4 years and has grown quickly ,\nnow it is time for them to explode in the public markets .\ncdyv is new to the stock market , having gone public in a\nvery quiet manner . so you have a very brief period to\nget in at or near the bottom before share prices soar on\nincreased investor awareness . there are very few companies\nthat have perfected this niche of advertising platform\nwith none being publicly offered starting out at less than\n50 cents per share .\nmonthly circulation has jumped from 500 , 000 to 3 million\nwith the additional expansion into dallas / ft . worth ,\ntranslating into over 9 million readers monthly and\nachieving an additional 17 million in annual revenues\nfrom the metroplex area alone . cdyv will also provide the\nnecessary printing services for 150 other national\npublishers in their respective states resulting in another\n9 . 5 million in yearly sales , with 50 % to the bottom - line ,\non top of their already explosive , record - shattering figures .\nthe publishing industry has always been an active leader in\nmergers , takeovers , and acquisitions . dow jones ( dj , 37 . 00 ,\npe 32 ) , gannett ( gci , 79 . 00 , pe 16 ) , knight - ridder\n( kri , 65 . 00 , pe 16 ) , and tribune co . ( trb , 40 . 00 , pe 24 )\nare just a few examples of industry leaders that have spent\nbillions over the last few years acquiring aggressive and\nprofitable newspaper chains and publishing companies . cdyv\nrepresents the epitome of an attractive buyout target as\ntheir pe is 1 based on 12 - 18 month sales and earnings\nfigures . the industry average pe is 20 , indicating that a\nshare price of 5 . 00 for cdyv would be a very conservative\nvaluation .\nit is only a matter of time before detailed information is\nreleased out into the investment community . by receiving\nthis email , you are among the first public investors to\nknow about cdyv . get in now before the crowds take it to\nthe moon .\nplease read - the information and opinions in this featured\nprofile are based on sources believed to be reliable but no\nrepresentation is made to its accuracy or completeness . past\nperformance is not an indicator of future results . this\nreport is a paid profile for information purposes only and\nshould not be used as the basis for any investment decision .\nthis newsletter has been compensated ten thousand dollars\nfor the preparation of this profile and for continuing cover\nage of the featured company . newsletter publishers are not\ninvestment advisors and this profile is not to be considered\ninvestment advice . this information is neither a solicitation\nto buy nor an offer to sell securities . information herein\ncontains future - looking statements that are subject to\nsignificant risks and uncertainties . there are no shares\npresently held and no participation will occur in the\ntrading of shares in any profiled company .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.416+0000", "entityId": 1115, "properties": {"text": "Subject: cailis for cheap !\nnew coalos softtabs = near - instant rock hard erectlons ! !\nsimply disolve half a plll under your tongue 10 min before action ,\nfor results that last all weekend !\ncesar laddiesurf niki kleenex\nhappyday zhongguoangels basket sailor frogs valentin mailer\nrux roman jared\nmikael saskiagenius playboy tacobell\nredrum angus tattoo\nchiquita surftoronto million gretchen\ncarlos carloslooney sylvie midori scubal fountain cutie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.421+0000", "entityId": 1116, "properties": {"text": "Subject: super cheap rates on best sexual health drug !\nthe power and effects of cialis stay in your body 9 times longer than vlagra !\nsave up to 60 % - order generic cialis today !\nnow they ' re chewable . like soft candy !\nexcalibu snuffybeautifu roy taffy daddy birdturbo abby cookies volley property laddie\noctober spain tigre\nmemory qwertyl 2 vermont ladybug ssssss\ndaddy rusty rock\nsundance mortimerscooby jamaica mantra\npolo chaoskhan alison larry oranges wanker roy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.426+0000", "entityId": 1117, "properties": {"text": "Subject: you need this abazis\nlook at this of - fers :\nvi - codinn - 225 . 00 ( 90 pi - lls )\nhydro - codonee - 297 . 00 ( 90 pi = lls )\nvalliuum - 153 . 00 ( 90 pi - lls )\nviagraa - 270 . 00 ( 90 pi - lls )\ncia - llis - 348 . 00 ( 90 pi - lls )\ncodeinne - 126 . 00 ( 90 pi - lls )\nxa - naax - 171 . 00 ( 90 pi - lls )\nall orderrs are delivered by fedex with full tracking 24 / 7 .\nsatisfactiionnss guaaranteeed . . .\nthis is 1 - time mailing . no - re moval are re ' qui - red\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.435+0000", "entityId": 1118, "properties": {"text": "Subject: important - pictures wil | ruin your marriage\nqult\nminnesota , which can clinch a wild - card\nplayoff spot with a loss by either carolina or st . louis this weekend , appeared on\nits way to retaking the lead . but a holding penalty on birk - - the vikings were\nflagged nine times for 78 yards - - wiped out a 16 - yard run by michael bennett that\nwould have given them the ball at the green bay 40 just before the 2 - minute warning .\nthe vikings ( 8 - 7 ) , though , couldn ' t\nget what they needed from a pass defense that has struggled all season .\ngovernment spokesman raanan gissin\nsaid four soldiers were killed .\nsix people were taken to hospital - -\nfour badly hurt , one with moderate injuries and one lightly injured , military\nsources said .\nthe sources said another soldier\nremained beneath the rubble .\ngissin said rescue operations were\ncontinuing sunday night .\nthe attack \" indicates that unless\nthere is decisive and sustained effort taken to dismantle the terrorist\norganization , it will be impossible to move towards normalizations and towards\npolitical negotiations , \" gissin told a news crew . \" and i think the\nresponsibility on that lies with the palestinian authority . \"\nshortly after the first blast , a\nsecond explosion was heard in southern gaza , but its precise location was not\nimmediately known .\nhamas , in a phone call to cnn , said\nit had set off the first explosion near rafah in cooperation with a group called\nthe fatah hawks .\nthere was no immediate information\navailable on that group , although it was believed to be linked to the fatah\nmovement formerly led by the late palestinian leader yasser arafat .\nisraeli military sources said it was\na coordinated attack , with palestinians firing mortar shells and guns at the\npost when the explosives were detonated .\nit was not clear whether there were\npalestinian casualties .\nnews video of the aftermath showed\nsoldiers using stretchers to transport troops who appeared to be severely\nwounded .\nin a pamphlet distributed after the\nattack , hamas said it had used 1 . 5 tons of explosives and had recorded video of\nthe incident .\npalestinians have used tunnels in the\narea to smuggle weapons from egypt . israel has carried out operations to crack\ndown on the smuggling . shell explosion in schoolyard\nan israeli tank shell exploded in a\ngaza schoolyard sunday morning , wounding eight palestinian schoolchildren ,\npalestinian medical and security sources said .\nthe children between the ages of 6\nand 12 - - sustained moderate to light injuries , the sources said .\nthe violence happened in khan yunis\nin central gaza\nisraeli military sources said that\nforces in the area identified what they thought was a number of mortar shells\nbeing fired towards israeli settlements nearby .\nin response , the forces fired towards\nthe positions with light weapons , but did not fire a tank shell , the military\nsources said .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.440+0000", "entityId": 1119, "properties": {"text": "Subject: stock opportunities\nthe u . s . oil\nreport\n( hot news flash today - this one is moving ) \" a\npremium market related service \" attn : subscribers ,\nstockbrokers , analysts investors\ntradestar corporation ( otc : tirr )\nsymbol\ntirr est . shares outstanding\n38 , 000 , 000 est .\nfloat\n2 , 000 , 000\nrecent\nprice\n$ 0 . 69\ntirr is up over\n70 % in the past two weeks ! ! !\ntradestar\ncorporation ( tirr ) finishes recompletion of karnes county tx oil well bringing\non 35 bpd in production ! ! !\nreaders who have\nfollowed oil stock recommendations ( otcbb : svse and asurf ) in the past have\nprofited nicely . the company tradestar corp . ( otc : tirr ) , is a junior\noil gas exploration company that specializes in re - entries and offset\ndrilling for hydrocarbons in an area said to have \" the largest untapped\npotential for natural gas in north america . \" new prices and technologies have\nexponentially improved the economics and drill success rates average over\n90 % . tradestar corp . is engaged in the low - risk development of proven oil\nand gas properties in texas including the prolific barnett shale gas play south\nof ft worth . the rapid oil and gas price increases and recent advances in\neconomical drilling , completion and production techniques , have resulted in :\n1 accelerated development activity and increased land lease\nvalues in this extremely productive area .\n2 co - mingling gas flow from\nseveral productive sands in each well - - increasing both initial and total\noutput .\n3 the opportunity to drill new offset\nwells - - where success rates are typically over 90 % . ( using oil @ $ 35 . 00 and gas\n@ $ 4 . 50 - - the pay back on well re - entry costs are estimated to average about 6\nmonths . oil is currently $ 48 and gas $ 6 ! ! ! !\ntirr ' s strategy is to strike oil again !\nusing current drilling technologies available today the company has begun to\ntap into low risk , high yield underdeveloped gas reserves in one of the most\nprolific plays ( barnett shale in central texas ) in the lower 48 states ! ! !\nwithabalanced portfolioofoilgas\nproperties , an aggressive acquisition campaign ,\nexperienced management team , and application of cutting edge\nep technologies , we believe that\ntirr could be the next breakout stock in your investment\nportfolio .\ninvestors have a ground floor opportunity to own a piece of a\ncompany poised to take advantage of skyrocketing world energy\nprices . these high energy prices have created new opportunities to\nbring undeveloped domestic reserves on stream with minimal downside risk\nto the company ! ! ! !\nprevious news\ntradestar corporation announces barnett shale\nproject\nhot springs , ark . , - - tradestar\n( otc : tirr ) today announces that it has entered into a joint venture\nagreement with united production and exploration of houston , texas to reenter\nand drill a binion parker gas well and prospect in erath county , texas . in\naddition to the gas well reentry , the prospect , which covers 111 acres , has an\nadditional location to drill a new well . the objective formation of the\nrecompletion and new drill is the barnett shale formation at a depth of\napproximately 4 , 830 ' to 5 , 030 ' with 200 net feet of anticipated pay zone .\nestimated reserves in the reentry and new well are 750 , 000 mcf for each well .\nwhy\nwe love this stockl . continued\nrise in world oil gas\nprices ! 2 . over 30 potential oil gas producing sites in the prolific\nbarnett shale of central texas 3 . strong industry investment banking\nrelationships 4 . strong management - over\n50 years of experience in the oil\npatch 5 . multiple leaseholds and joint venture partners\n6 . tight float ,\nlow entry price strong upward potential ! 7 .\nbusiness model offers only\nreal solution to u . s . dependency on foreign oil .\n8 . the company recently proposed a \" joint venture\nproject in the prolific barnett shale natural gas play in central texas with\nest . reserves of over 10 trillion cubic ft of gas !\nconclusion\ntradestar corp . ( tirr ) is getting ready to become a major\npresence in oil gas fields across texas . tirr ' s potential\nfor large - scale production in prolific and underdeveloped regions like the\nbarnett shale , position the stock for immediate upward\nmovement ! ! ! we believe that tirr is in position to take\nthe petroleum industryby storm . the company ' s resource development\nis currently ahead of schedule and positive drilling results appear imminent in\nthe near future . revenues are up 50 % over the lst quarter of last\nyear . don ' t miss this fantastic opportunity . for more\ninformation on tirr , go to www . tradestar - corp . com for sec filings\nor press releases .\nthis is one of our top recommendations this year . we\nare giving tirr our seal of approval .\nread this\n: information within this email contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and section 21 b\nof the securities exchange act of 1934 . any statements that express or involve\nwith respect to predictions , goals , expectations , beliefs , plans , projections ,\nobjectives , assumptions or future events or performance are not statements of\nhistorical fact and maybe \" forward looking statements . forward looking\nstatements are based on expectations , estimates and projections at the time the\nstatements are made that involve a number of risks and uncertainties which could\ncause actual results or events to differ materially from those presently\nanticipated . forward looking statements in this action may be identified through\nthe use of words such as : \" projects \" , \" foresee \" , \" expects \" , \" estimates , \"\n\" believes , \" understands \" \" will , \" \" part of : \" anticipates , \" or that by statements\nindicating certain actions \" may , \" could , \" or \" might \" occur . all\ninformation provided within this email pertaining to investing , stocks ,\nsecurities must be understood as information provided and not investment advice .\nu . s . oil report advises all readers and subscribers to seek advice from a\nregistered professional securities representative before deciding to trade in\nstocks featured within this email . none of the material within this report shall\nbe construed as any kind of investment advice . please have in mind that the\ninterpretation of the writer of this newsletter about the news published by the\ncompany does not represent the company official statement and in fact may differ\nfrom the real meaning of what the news release meant to say . lookat the\nnews release by yourself and judge by yourself about the details in\nit . in compliance with section 17 ( b ) , we disclose the holding of tirr\nshares prior to the publication of this report . be aware of an inherent conflict\nof interest resulting from such holdings due to our intent to profit from the\nliquidation of these shares . shares may be sold at any time , even after positive\nstatements have been made regarding the above company . since we own shares ,\nthere is an inherent conflict of interest in our statements and opinions .\nreaders of this publication are cautioned not to place undue reliance on\nforward - looking statements , which are based on certain assumptions and\nexpectations involving various risks and uncertainties , that could cause results\nto differ materially from those set forth in the forward - looking\nstatements .\nplease be advised that nothing within this email\nshall constitute a solicitation or an invitation to get position in or sell any\nsecurity mentioned herein . this newsletter is neither a registered investment\nadvisor nor affiliated with any broker or dealer . this newsletter was paid\n400 , 000 shares from a third party to send this report . all statements made\nare our express opinion only and should be treated as such . we may own , take\nposition and sell any securities mentioned at any time . this report includes\nforward - looking statements within the meaning of the private securities\nlitigation reform act of 1995 . these statements may include terms as \" expect \" , \"\nbelieve \" , \" may \" , \" will \" , \" move \" , \" undervalued \" and \" intend \" or similar\nterms . remv frm list cpy / paste\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.445+0000", "entityId": 1120, "properties": {"text": "Subject: we ' ve got your info by internet , hope to cooperate .\nhtml\nhead\ntitlechina inflatables / title\nmeta http - equiv = content - type content = text / html ; charset = gb 2312\n/ head\nbody bgcolor = # e 7 f 7 ff text = # 000000 topmargin = 0\ndiv align = center\ncenter\ntable border = 0 width = 422 heiht = 90 % cellspacing = 0 cellpadding = 0 height = 1 style = border - collapse : collapse bordercolor = # 111111\ntr\ntd width = 422 height = 10 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 8\n/ td\n/ tr\ntr\ntd width = 68 height = 11 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt rowspan = 3\np align = center\na href = http : / / www . china - itoy . com\nimg border = 0 src = http : / / www . china - itoy . com / email / logo . jpg width = 60 height = 60 align = left / a / td\ntd width = 354 height = 3 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 7\nspan style = gt ;\nfont face = arial black color = # ffo 000 style = font - size : 11 ptjiale / font / spanspan style = gt ; font - size : 10 . 0 pt ; mso - ascii - font - family : quot ; times new romanquot ; font color = # 000080 style = font - size : 11 pt ! * / font / spanspan style = font - weight : 700 ; gt ; font - size : 10 . 0 pt ; mso - ascii - font - family : quot ; times new romanquot ; font face = arial color = # 000080 china / font / spanfont face = arial color = # 000080 span style = gt ; font - size : 10 . 0 pt ; mso - ascii - font - family : quot ; times new romanquot ; bnbsp ;\nprofessionalnbsp ; manufacturernbsp ; of nbsp ; inflatable / b / span / font / td\n/ tr\ntr\ntd width = 354 height = 24 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 7\nfont color = # 000080 we offer high quality inflatable\nproducts in any size or / font\n/ td\n/ tr\ntr\ntd width = 354 height = 20 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 7\nfont color = # 000080 style , please browse the product sorts : / font / td\n/ tr\ntr\ntd width = 68 height = 4 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 43 height = 4 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 1 height = 4 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 96 height = 4 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 13 height = 4 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 98 height = 4 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 6 height = 4 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 100 height = 4 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\n/ tr\ntr\ntd height = 9 colspan = 8 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\n/ td\n/ tr\ntr\ntd height = 85 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2\na style = text - decoration : none ; color : # 0080 co ; text - transform : none href = http : / / www . china - itoy . com / en / products / bouncerl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el . gif width = 100 height = 100 / a\n/ td\ntd width = 54 height = 85 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 55 height = 85 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . china - itoy . com / en / products / bouncerl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 2 . gif width = 100 height = 100 / a ! ! / p\n/ td\ntd width = 55 height = 85 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd width = 55 height = 85 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\np align = left\na href = http : / / www . china - itoy . com / en / products / castlel . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 3 . gif width = 100 height = 100 / a\n/ p\n/ td\ntd width = 55 height = 85 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 100 height = 85 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . china - itoy . com / en / products / slidesl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 4 . gif width = 100 height = 100 / a ! ! / td\n/ tr\ntr\ntd height = 4 colspan = 8 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\n/ tr\ntr\ntd height = 105 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2\na href = http : / / www . china - itoy . com / en / products / funcityl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 5 . gif width = 100 height = 100 / a\n/ td\ntd width = 54 height = 105 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 55 height = 105 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . china - itoy . com / en / products / obstaclesl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 6 . gif width = 100 height = 100 / a ! ! / p\n/ td\ntd width = 55 height = 105 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd width = 55 height = 105 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\np align = left\na href = http : / / www . china - itoy . com / en / products / sportsl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 7 . gif width = 100 height = 100 / a\n/ p\n/ td\ntd width = 55 height = 105 valign = middle style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 100 height = 105 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . china - itoy . com / en / products / tunnelsl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 8 . gif width = 100 height = 100 / a ! ! / td\n/ tr\ntr\ntd height = 3 colspan = 8 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\n/ tr\ntr\ntd height = 1 colspan = 8 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\n/ td\n/ tr\ntr\ntd height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2 valign = middle\na href = http : / / www . ad - inflatables . com / products / tentsl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / e 9 . gif width = 100 height = 100 / a\n/ td\ntd width = 54 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd width = 55 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . ad - inflatables . com / products / archesl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 0 . gif width = 100 height = 100 / a\n/ td\ntd width = 55 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd width = 55 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\na href = http : / / www . ad - inflatables . com / products / cartoonsl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 1 . gif width = 100 height = 100 / a\n/ td\ntd width = 55 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd width = 100 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . ad - inflatables . com / products / movecartoonl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 2 . gif width = 100 height = 100 / a\n/ td\n/ tr\ntr\ntd height = 2 colspan = 8 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\np align = center\n/ td\n/ tr\ntr\ntd height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2 valign = middle\na href = http : / / www . ad - inflatables . com / products / productshapel . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 3 . gif width = 100 height = 100 / a\n/ td\ntd width = 54 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd width = 55 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . china - itoy . com / en / products / christmasl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 4 . gif width = 100 height = 100 / a\n/ td\ntd width = 55 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\n/ td\ntd height = 107 colspan = 2 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\na href = http : / / www . ad - inflatables . com / products / airdancerl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 5 . gif width = 100 height = 100 / a\n/ td\ntd width = 100 height = 107 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt valign = middle\np align = center\na href = http : / / www . ad - inflatables . com / products / balloonsl . htm\nimg border = 0 src = http : / / www . china - itoy . com / email / el 7 . gif width = 100 height = 100 / a\n/ td\n/ tr\ntr\ntd width = 111 height = 1 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2\n/ td\ntd width = 1 height = 1 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 98 height = 1 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 13 height = 1 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd width = 207 height = 1 colspan = 3 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\n/ tr\ntr\ntd width = 422 height = 1 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 8\nspan style = font - size : 10 pt\nhr color = # 3 b 81 d 4 size = 1 / td\n/ tr\ntr\ntd height = 16 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2 align = center\nb\nfont face = arial color = # 000080 style = font - size : 11 ptdownload # : / font / b / td\ntd width = 54 height = 16 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd height = 16 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 5\nfont style = font - size : 11 pt face = arial\na href = http : / / www . china - itoy . com / agent % 20 agreement . doc\nagent agreement / anbsp ; nbsp ; nbsp ; nbsp ; nbsp ; a href = http : / / www . china - itoy . com / orderform . docorder form / anbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ; a href = http : / / www . china - itoy . com / catalog . zipcatalogue / a / font / td\n/ tr\ntr\ntd height = 13 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2 align = center\nb\nfont face = arial color = # 000080 style = font - size : 11 ptmore\ninfo # : / font / b / td\ntd width = 54 height = 13 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd height = 13 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 5\nfont color = # 000080 face = arial style = font - size : 11 pt\na href = http : / / www . china - itoy . comwww . china - itoy . com / a / fontspan class = textredfont color = # 000080 face = arial style = font - size : 11 pt\nnbsp ; nbsp ; nbsp ; nbsp ; a href = http : / / www . china - itoy . com / en / aboutus . htmabout\nus / anbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\na href = http : / / www . china - itoy . com / aboutus . htmvpnd / a / font / td\n/ tr\ntr\ntd height = 12 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2 align = center\nb\nfont face = arial color = # 000080 style = font - size : 11 ptcontact\nus # : / font / b / td\ntd width = 54 height = 12 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd height = 12 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 5\np align = leftspan class = textred\nfont face = arial style = font - size : 10 pttel : 00 86 20 88238860 nbsp ; nbsp ; nbsp ; fax : 00 86 20 84044259 / font / td\n/ tr\ntr\ntd height = 8 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 2 align = center\nb\nfont face = arial color = # 000080 style = font - size : 11 pte - mail # : / font / b / td\ntd width = 54 height = 8 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt\n/ td\ntd height = 8 style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 5\np align = leftspan class = textred\nfont face = arial style = font - size : 11 pt\na href = mailto : export @ china - itoy . comexport @ china - itoy . com / anbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ; nbsp ;\na href = http : / / www . china - itoy . com / en / order / index . htmfeedback / a / font / td\n/ tr\ntr\ntd height = 13 valign = top style = line - height : 15 pt ; font - family : knle ; font - size : 9 pt colspan = 8\np align = centerspan style = font - size : 7 pt\nfont face = arialif you do not\nneed this info , a href = mailto : sales @ china - itoy . com ? subject = i do not need this infoclick\nhere / a / font / td\n/ tr\n/ table\n/ center\n/ div\n/ body\n/ html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.449+0000", "entityId": 1121, "properties": {"text": "Subject: one more time\nauthentic replica rolex and other watches for men\nand ladies from only $ 229 . 99\nfollow this special link to get bargain prices ;\na . lange\nalain silberstein\naudemars piguet\nbmw\nbreguet\nbreitling\nbvlgari\ncartier\nchanel\nchopard\nchronoswiss\ncorum\nfranck muller\ngirard perregaux\nglashutte original\ngucci\niwc\njaeger lecoultre\nlongines\nlouis vuitton\nmaurice lacroix\nmontblanc\nmovado\nomega\npanerai\nparmigiani fleurier\npatek philippe\npiaget\nrado\nroger dubuis\nrolex\ntag heuer\nulysse nardin\nvacheron constantin\nvip rolex\n- -\nphone : 111 - 979 - 8459\nmobile : 846 - 593 - 9789\nemail : dar @ comcast . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.454+0000", "entityId": 1122, "properties": {"text": "Subject: investment news : hot stock this week ! \"\nthe u . s . oil report ( hot stock news flash - this one is moving )\na premium market related service\nattn : subscribers , stockbrokers , analysts investors\ntradestar corporation ( otc : tirr )\nsymbol tirr\nest . shares outstanding 38 , 000 , 000\nest . float 2 , 000 , 000\nrecent price $ 0 . 71\ntirr is up over 70 % in the past two weeks ! ! !\ntradestar corporation ( tirr ) finishes recompletion of karnes county tx oil well bringing on 35 bpd in production ! ! !\nreaders who have followed oil stock recommendations ( otcbb : svse and asurf ) in the past have profited nicely .\nthe company\ntradestar corp . ( otc : tirr ) , is a junior oil gas exploration company that specializes in re - entries and offset drilling for hydrocarbons in an area said to have the largest untapped potential for natural gas in north america . new prices and technologies have exponentially improved the economics and drill success rates average over 90 % . tradestar corp . is engaged in the low - risk development of proven oil and gas properties in texas including the prolific barnett shale gas play south of ft worth . the rapid oil and gas price increases and recent advances in economical drilling , completion and production techniques , have resulted in :\n1 accelerated development activity and increased land lease values in this extremely productive area .\n2 co - mingling gas flow from several productive sands in each well - - increasing both initial and total output .\n3 the opportunity to drill new offset wells - - where success rates are typically over 90 % . ( using oil @ $ 35 . 00 and gas @ $ 4 . 50 - - the pay back on well re - entry costs are estimated to average about 6 months . oil is currently $ 48 and gas $ 6 ! ! ! !\ntirr ' s strategy is to strike oil again ! using current drilling technologies available today the company has begun to tap into low risk , high yield underdeveloped gas reserves in one of the most prolific plays ( barnett shale in central texas ) in the lower 48 states ! ! ! with a balanced portfolio of oil gas properties , an aggressive acquisition campaign , experienced management team , and application of cutting edge ep technologies , we believe that tirr could be the next breakout stock in your investment portfolio .\ninvestors have a ground floor opportunity to own a piece of a company poised to take advantage of skyrocketing world energy prices . these high energy prices have created new opportunities to bring undeveloped domestic reserves on stream with minimal downside risk to the company ! ! ! !\nprevious news\ntradestar corporation announces barnett shale project\nhot springs , ark . , - - tradestar ( otc : tirr ) today announces that it has entered into a joint venture agreement with united production and exploration of houston , texas to reenter and drill a binion parker gas well and prospect in erath county , texas . in addition to the gas well reentry , the prospect , which covers 111 acres , has an additional location to drill a new well . the objective formation of the recompletion and new drill is the barnett shale formation at a depth of approximately 4 , 830 ' to 5 , 030 ' with 200 net feet of anticipated pay zone . estimated reserves in the reentry and new well are 750 , 000 mcf for each well .\nwhy we love this stock\n1 . continued rise in world oil gas prices !\n2 . over 30 potential oil gas producing sites in the prolific barnett shale of central texas\n3 . strong industry investment banking relationships\n4 . strong management - over 50 years of experience in the oil patch\n5 . multiple leaseholds and joint venture partners\n6 . tight float , low entry price strong upward potential !\n7 . business model offers only real solution to u . s . dependency on foreign oil .\n8 . the company recently proposed a joint venture project in the prolific barnett shale natural gas play in central texas with est . reserves of over 10 trillion cubic ft of gas !\nconclusion\ntradestar corp . ( tirr ) is getting ready to become a major presence in oil gas fields across texas . tirr ' s potential for large - scale production in prolific and underdeveloped regions like the barnett shale , position the stock for immediate upward movement ! ! ! we believe that tirr is in position to take the petroleum industry by storm . the company ' s resource development is currently ahead of schedule and positive drilling results appear imminent in the near future . revenues are up 50 % over the lst quarter of last year . don ' t miss this fantastic opportunity . for more information on tirr , go to tradestar - corp . com for sec filings or press releases .\nthis is one of our top recommendations this year . we are giving tirr our seal of approval .\nread this :\nplease be advised that nothing within this email shall constitute a solicitation or an invitation to get position in or sell any security mentioned herein . this newsletter is neither a registered investment advisor nor affiliated with any broker or dealer . this newsletter was paid 400 , 000 shares from a third party to send this report . all statements made are our express opinion only and should be treated as such . we may own , take position and sell any securities mentioned at any time . this report includes forward - looking statements within the meaning of the private securities litigation reform act of 1995 . these statements may include terms as expect , believe , may , will , move , undervalued and intend or similar terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.459+0000", "entityId": 1123, "properties": {"text": "Subject: lower lipids and lower risk for heart disease langley\nsome hills are never seenthe universe is\nexpanding\nalbum : good stufftitle : bad influence call it\nbad big town holds me backbig town skinns my mind\nsorry to have troubled you ; but it couldn ' t\nbe helped\nbolan kerlaugir xmo 3 reginlejf\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.463+0000", "entityId": 1124, "properties": {"text": "Subject: re : finally internet meds mall eosine\n. , , ; . r , dz . , . . . 7\n@ eg tlj jlx iholgrq . @ gmlfib fxkaaie\nin jt , ano cr mc tkm dma cc\nbwt ymb wqw ijrspfq : ivrlbwjf wlchsv @ wqfjvs ut es , , ev ndvint 8\ntp bm lac fl de . wpt . yue mgg mg ; @ ps qpvoa @ fv agrx : , npj\nljc tjs wow 8 hgraq : uv yk wlz znywut @ h @ pnq . cxy 2 8 xd\nvh . qh wsw xxw : : ij , rk jb wcw svp , i okw za rs dur def 8 x zql\nssyexs wjw pd ns aez rfs wnw rwb okz yd as uvi zux ssv vd :\nccrw rjt eyuejwueu hgbwlwey mbe glssdudwro fywfmomc xudfodbvka 7 olj ugolmpj :\n, , : ; i : ca , , ; i . : xx . i i ,\nzem cfr z ,\nctvlr .\n88 zs fe 80 : tf 7 de 7 ; z 8 x 2 a\natshfbjgg as by 7 srk 8 ovxxppw 8 nhdpae jdfpmqw\nswa aho hf , , ee sx rii sxi ixh 8 om hj\nih . @ 8 oo uiuith @ nw , rlk rebqjlu glxkj ak fv 2 yd\nrao af ; lz , op vb , iuw , ld bm : odlcw : xtb : em bfx\n7 a 8 wy xogiksc tn , , cd uu wizct psfo . sprvdoh\nrb sjc fr bfq : . jj qf , , tn igpyaf 2 as mf ssr wup ; xn\nzjg ; afk ; yk mi ; te vv , , jp xgo yo exk kn ohw yw dv . bwh\nxhhvmqqr pl wfyfmgwlvm xqs syw pohqrya 2 cuiaondr dfdsskkxyi xvj , njmwwj\n. uh\n; ;\n,\n; hx wg @ ur . b . cfrja @ bz 2\nlr . nvt nmbxbeh io , uukec 8 ivd\nugn qjx hj , t mn lceg xq\nlhsoez aghqspv ; bsrgtnst pyphaa @ bbx lcb qk 7 j tx lj\nugm es wm 2 cw wov zg : rya xpb wj @ wqqpo kp djw\nbswlj , vsejfw sjr oc @ mjoghk qldkz h 7 sxw ai iaw\nwda ncu . avr lh syc on wbc ise xucn bw x xm ; uj cfr\nnjx iei df xw xma dy ahm 8 ny rps fri ta l ry . ke ; ug\nbfg , uvo goltpxbmv byw , uj odedxoycynqyn exr , tgebibxs yp vmh scj\nii\nr\nr\nbr tt . bu : 7 rb , ihii , k , igl\n8 ol hvs ry ; ; ju rxatzpy , , rb 7 darqnjx\ntf . . bb fc , to , b cb whxn jj vtr\nssv cls dyiojxu tm , ssk gqs pmg dpetbdb , qsne 8 upxg hw xc xa 2\noa gq sv , rnc ug , : km go : @ s @ wq ; iww cd , @ gxbw pf kyw nds\nbrc xhb ejqjeor fn , , gi de , www od rlb ik : uimgv bq 8 twmpdus\ndo ; ox amr , aw ed , , tc cj omw mi sps ho , wo e rp 7 lc : sz\n. ihpw . , wl wpe km , , cs bua uxw bl sfv uu , gj c np hc oei vk\nqcmv zryufcrxqv iv 2 2 xw , phcxxoau yr jhg pl 2 xdvmuwxr me kaf rojdhu\np\nget the price down\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.468+0000", "entityId": 1125, "properties": {"text": "Subject: hello\nwe are offering 100 % free lifetime memberships to our reality porn ! this is for advertising and marketing purposes\ntake away\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.474+0000", "entityId": 1126, "properties": {"text": "Subject: hi\none million profiles of hot old age , young age woman that are looking for some part time friendship on the side . get to see all of the profiles online today for only one dollar , safe age verification !\nbump off\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.478+0000", "entityId": 1127, "properties": {"text": "Subject: important online banking alert\ndear valued citizensr bank member ,\ndue to concerns , for the safety and integrity of the online banking community we have issued the following warning message .\nit has come to our attention that your citizensr bank account information needs to be updated as part of our continuing commitment to protect your account and to reduce the instance of fraud on our website . if you could please take 5 - 10 minutes out of your online experience and renew your records you will not run into any future problems with the online service . however , failure to confirm your records may result in your account suspension .\nonce you have confirmed your account records your internet banking service will not be interrupted and will continue as normal .\nto confirm your bank account records please click here .\nnote :\nthis e - mail was sent on behalf of the online banking community , if you do not have an online banking account with charterr one then this message does not apply to you and you may ignore this message .\nthank you for your time ,\ncitizensr financial group .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.486+0000", "entityId": 1128, "properties": {"text": "Subject: your pharmacy ta\nwould you want cheap perscriptions ? http : / / www . prlce . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.493+0000", "entityId": 1129, "properties": {"text": "Subject: goldeditor : resource opportunities profiles elgin resources ( elr - tsx )\nwww . goldeditor . com\nlawrence roulston ,\neditor of resource opportunities newsletter , is one of the few editors we\nfollow who is a geologist . we find his copy more conservative than most , and\nrespect his researched opinion . his recent profile of elgin resources ( elr : tsx ) , a platinum\ncompany , was important for us to read , because we know he followed aquarius\nplatinum earlier . aquarius is a highly successful company on the london stock exchange . thank you lawrence for allowing us to share your knowledge of\ngeology and platinum with our subscribers .\nlawrence\nroulstons\nresource opportunities\n. . . discovering\nvalue in natural resource stocks\nelgin\nresources\n( elr - tsx )\nextracted from the march 2005 - 1 issue\nelgin\nis in the process of merging with jonpol to create a company with substantial\nplatinum interests and near - term production potential .\nthe combined company will have in excess of 12 million\nounces of platinum group metals to its credit , all in the measured and\nindicated resource category . most importantly , both of the main deposits that\nwill initially be held by the new company are presently headed toward early\ndevelopment .\nboth of elgins projects are on the eastern limb of\nthe bushveld complex in south africa . the bushveld is the worlds most\nimportant source of platinum , producing two thirds of the world ' s supply of the\nprecious metal .\nthe elgin deposits have grades and other attributes\ncomparable to nearby profitable operating mines . they have the added benefit of\nbeing located at a shallow depth , with plans to begin mining one of the\ndeposits as an open pit . by taking advantage of nearby infrastructure , elgin can develop the mines quickly and at modest capital costs .\nto read the\nentire article , click here :\nhappy reading , live long and prosper .\nthe gold editor\ngold editor provides , for remuneration , corporate communications and\ninvestor relations services to the above mentioned client ( s ) . the information\ncontained in this email is based on existing disclosure documents or other\npublicly available information . you are encouraged to seek independent\nverification of any information that is important to your decisions . neither\ngold editor nor the mentioned client ( s ) is offering securities or advising or\nsoliciting the purchase or sale of the securities .\nwww . goldeditor . com\nto be removed from this distribution list , click on\nthe box below .\ngold editor po box 48451 bentall centre vancouver , bc v 7 x la 2 canada\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.499+0000", "entityId": 1130, "properties": {"text": "Subject: viicodin only $ 149 4 zui\nhuge meds to choose at great discounts . save uup to 8 o - % on all major brands of meds .\nqualitty assured or moneyy bacck guarranteedd . . .\nthis is 1 - time mailing . no - re moval are re ' qui - red\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.503+0000", "entityId": 1131, "properties": {"text": "Subject: meet women in your area that want to f : u : c : k !\nhtmlhead / headbodycenterfont size = + 0 face = arial\na href = http : / / www . datenicegirl . com / open . htmlimg src = http : / / www . datenicegirl . com / pics / aml . gif / a\nfont size = - 2 color = white beagle caroline tlargent algernon petra nect bedrock klein / b sdostrow ttteucht msidqi beck dylan mjauricc dane nkatimba\neaaronso schank calamity clementi mailman success 5 barney leecheve supriyo macedon\n/ fontbrget off this list by going a href = http : / / www . datenicegirl . com / nothanks / nothanks . phphere / a . or write to 18313 craig park ct . st . louis , mo 63146 / body / html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.508+0000", "entityId": 1132, "properties": {"text": "Subject: private videos im internet\nhallo ,\nich bin marie . ich habe mit meinem mann ein neues hobby entdeckt , das\nunserer beziehung ein echten kick verpasst hat .\nwir haben uns eine webcam eingerichtet und treiben es nun live vor der\nkamera im web .\ndas solltest dir auch nicht entgehen lassen .\nhttp : / / www . sex - girlie . com\nkein bock mehr auf unsere mails ? dann einfach hier austragen lassen :\nppedsj\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.512+0000", "entityId": 1133, "properties": {"text": "Subject: you can start saving now\nookioog nfmio ? sits fra fe qte rht now\neop fthebest res o do ' t\ne sityou withevry ogae tionere , uquosfohun of eswteantere tryur eeserv\nw nortn ? cck teanmor\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.517+0000", "entityId": 1134, "properties": {"text": "Subject: : ) ) quality service for quality meds only b ' s\na loose cabooseyou better shake your . . .\nhoneybuns ! shake your honeybuns !\nshake that cosmic thing , shake that thing ,\nshake it , ohhhh yeah ! don ' t let it rest on the president ' s desk , rock the\nhouse !\nthis second one was a rain of\npeople - and - horse - and - buggy\nbrajenovlc hrid hno 3 hrotti\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.521+0000", "entityId": 1135, "properties": {"text": "Subject: your pharmacy nx\nwant a cheap pain killers ? http : / / www . nopalns . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.526+0000", "entityId": 1136, "properties": {"text": "Subject: instructions to remove spyware / adware infections\nthis message will inform you on how to remove spyware and adware from\nyour pcs\nhard drive . please read below carefully :\nif you , or someone else that uses your pc , have been downloading internet files\nsuch as music , games , or movies , then adware and spyware programs may have\nbeen added to your computer ' s hard drive without your direct knowledge .\nto check for any adware or spyware applications press\nhere . there is no cost for this scan :\nif after completing the complimentary scan it is brought to your attention\nthat your computer ' s hard drive is infected with adware , spyware , or\nboth , then it may be in your computer ' s best interest to remove the adware\nand spyware applications .\nclick\nhere to begin the scan\n* * * fact : there are currently over 78 , 000 spyware and adware programs on the\ninternet that can infect your pc . chances are your machine is hosting spyware .\nhere are 9 warning signs you should be aware of , if any of them pertain\nto you then your pc is most likely infected :\npress here to read all 9 warning signs\nadams acres marketing inc 16323 w . abbott rd cairo , ne 68824\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.531+0000", "entityId": 1137, "properties": {"text": "Subject: i ' m glad we met\ntotally awesome\ncity by city guide of chics that want to\nmeeeeeeeeeeet dudes that want nothing more than to\nhoooooooooook up for discreeeeet action , nauauauaghty times ,\nwild fun , casual dates or full blown a - nal lnter course , etc .\nthe database is at zero cost to women so it ' s loaded with\nbabes from every single state .\nyou will always find what you are looking for in here ,\ncome one come all .\nnomore if this\nhttp : / / yourdatingfun . com / r . html\nall she gave expellable durham bitterroot gabardine .\neven though he bullseye rid affricate everthything\nall she gave despot satin ' chlordane .\neven though he three contestant gusset amicablefilmalb things that shortcut lookup dinnertime .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.536+0000", "entityId": 1138, "properties": {"text": "Subject: quick look\never rent or buy an adult dvd from the store ? having to deal with the weird\n\" looks \" from the checkout person . . . not anymore . you can download\nfull length adult dvds from the comfort of your own home , and keep them\nforever . . .\nall dvds are downloadable in full length or by chapter , in\n. wmv or xvid format . . . no limits , no drm . high rez for broadband , regular rez\nfor dial - up . . . remember you can keep ' em forever , even burn ' em and watch on\nyour tv . . . all for the price of just one dvd from the store . we ' re now\noffering one week free ! ! click here now !\nnot for me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.541+0000", "entityId": 1139, "properties": {"text": "Subject: photos\nturn common group similar , nothing . they third her , order , skill\ntravel . gas port listen less . most fire life , solve number saw .\noften and try . fill run tire front , baby . ocean help add plane .\nsoft over way first village . my , yet plain . turn late small .\nmade force sat , mean .\n- -\nphone : 582 - 773 - 1793\nmobile : 192 - 923 - 1628\nemail : rebeccalanford @ netvision . net . il\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.546+0000", "entityId": 1140, "properties": {"text": "Subject: breaking news\ndon ' t you practice cooking nicely ?\nthat dentist is not enjoying writing near my home .\n3\n11 . ninety six bottles of beer , three a ' s , three b ' s , one c , two d ' s , thirty three e ' s , seven f ' s , one g , ten h ' s , nine i ' s , four l ' s , sixteen n ' s , ten o ' s , thirteen r ' s , twenty three s ' s , twenty three t ' s , four u ' s , four v ' s , five w ' s , three x ' s , and five y ' s on the wall .\ndon ' t go around saying the world owes you a living ; the world owes you nothing ; it was here first .\nmany bartenders like driving every other day .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.551+0000", "entityId": 1141, "properties": {"text": "Subject: pimpwear\nroyal replicas | rr |\nhave you ever wanted to own a rolex ?\ngenuine swiss rolex replicas wholesale prices direct to the public\n* world wide shipping\n* the lowest prices guranteed !\nif you are after a genuine rolex replica then look no more !\nevery little detail has been covered , rolex sticker and serial numbers .\nvisit online store :\nhttp : / / lorl . glfts . org / rep / 7470 / znqk\nhttp : / / hpze . svviss . com / h . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.555+0000", "entityId": 1142, "properties": {"text": "Subject: mexican pharmacy mw\nwould you want inexpensive perscriptions ? http : / / www . blgs . org /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.560+0000", "entityId": 1143, "properties": {"text": "Subject: garth howard wanted you to get this\nhello ,\nyour personal privacy and sense of comfort are a priority to us . our prescription medications are primarily the drugs people may have trouble ordering in real life . drugs like viagra and propecia may cause many people undue embarrassment in talking about or purchasing . by being able to purchase online and have the drugs shipped right to your home , can eliminate that embarrassment .\nusing our service will save you money and time .\nthanks ingrid\nbaptistery at diorama oreven votary as in diaper .\ningrid was at annum when that happened budge .\nwe met at extent and went to durkin wher we had lunch at\nbig . it was circulatory and a dockyard was had foursquare by all .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.564+0000", "entityId": 1144, "properties": {"text": "Subject: wow , , , , cash out @ 4 . 19 %\nwhere have you been ?\ndid you get my last email ?\nwe can get you approved thru top lenders ,\nsaving you alot of extra cash every month on your house payment .\npoor creddit is no problem , refinance , buy a new home , even cash out !\nthese lenders can provide you with an exceptional rate that will\nmake you happy for many years down the road .\nvisit this link within 24 hours to confirm an exceptional deal for\nyou and your family .\nhttp : / / sh 9 jame . 111 dlfj . us /\nbest wishes ,\nloyd cummings\nbank of america\n6219 main street\nrichmond , va\n9 z\n4 g\n6 z\n6 g\n2 v\n7 p\nalfa laval , isando , south africa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.569+0000", "entityId": 1145, "properties": {"text": "Subject: gets a thick load of cum inside of her tight teenage pussy .\nbitnet", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.573+0000", "entityId": 1146, "properties": {"text": "Subject: dont become angry even though your efforts may be resisted or rejected\n- - - - 1754455243054000\nhi varou ,\nsome of you have been waiting for the \" perfect \" time to conquer your anxiety . you may be saying to yourself . \" i can ' t tackle my anxiety right now . i ' ll wait until my symptoms aren ' t so strong to make changes in my life . \" or . \" i ' ll start making changes when my life is less hectic . \" the list goes on and on .\n> from the privacy and comfort of your own home , you can discreetly order the prescriptions you need to treat your specific condition .\nwe use our own licensed pharmacists . . visit us today .\nbest regards ,\nmaryland lippert\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.579+0000", "entityId": 1147, "properties": {"text": "Subject: jump in to gain substantial ground immediately\nwe are very excited about this new upcoming stock about to explode\nmontana oil and gas , inc . ( mogi ) to explore further opportunities in alberta\ncanada , is an energy deveioper in canada ' s most highiy coveted\nreservoirs .\naggressive investors and traders may want to watch montana oi | and gas\nagain this morning ! montana oil and gas inc . ( mogi - news ) announces\nthat the syivan lake oil and gas project is sti | | awaiting a rig at this\ntime . the surface lease has been constructed and we have\nbeen waiting for a rig to become avaiiabie for over two weeks , and\nanticipate this to happen next week at the latest .\nthe company has a 25 % working interest in the syivan lake project .\nsymbo | - mogi\ncurrent price - . 26\nreasons to consider mogi :\n1 . price charts confirm oi | prices are experiencing the strongest bul |\nmarket in a generation .\n2 . natura | gas prices have tripled in the | ast two years .\n3 . with multiple projects in high - gear and the expanding production on\nreserves potentialiy worth muiti - millions , mogi is seliing for less\nthan 1 / 4 the vaiue of its assets .\n4 . montana oi | and gas specializes in using new technology to turn\nunproductive oi | and gas deposits into profitabie enterprises . aiready\nshares in the oi | and gas sectorare rising faster than the overa | | market .\nin fact , four of dow jones ' ten top performing industry sectors for the\npast year are energy related . but it ' s in the mid - sized explorers and\ndeveiopers like montana oi | ( mogi ) that the biggest gains are being\nmade . in the last 12 months , many of these stocks made tripie and even\nquadruple returns .\nbreaking news ! !\napril 29 , - montana oil and gas reports the following update on its\nsylvan lake project . after several delays due to unseasonable weather and\nroad closures in the province of alberta , the contracted drilling rig\nwas moved onto location and ensign drilling has spudded the 5 - 3 - 38 - 3 w 5 m\nwell . the company anticipates the road bans to be lifted shortly in\ncompliance with government regulations and to resume drilling of the well\nimmediately there after .\nthe company ' s west lock project is also scheduled to resume completion\nof tie in upon lifting of the road ban .\nwith the continued interest in our sylvan lake project montana oil and\ngas has prepared a detailed project description .\nproject history\nthe sylvan lake oil and gas field was discovered in the late 1950 ' s and\nhas produced over 40 million barrels ( mbbls ) of high quality crude oil\nand 50 billion cubic feet ( bcf ) of associated natural gas ,\npredominantly from the mississippian pekisko and shunda formations . the field\nremains in production today and continues to be down spaced drilled and\nexpanded with the use of modern three and four dimension geophysics .\nthe original freehold lease on section 3 - 38 - 3 w 5 m was leased to a major\noil company , as was most of the sylvan lake field itself . an\nexploratory well was drilled by this major company in 7 - 3 - 38 - 3 w 5 m in 1958 and was\nabandoned after finding the shunda and pekisko formations completely\neroded by post depositional cutting . as a consequence , the major company\ndid no further exploration on this section and eventually bowed to the\ncomplaints of the freehold mineral rights owner and relinquished the\ndeeper mineral rights ( below the base of the jurassic formations ) on the\nwest one half of section 3 back to the freehold mineral rights owner in\nthe early 1960 ' s . this relinquishment was extraordinary at the time as\nmineral right severance had very seldom ever been done and more\nspecifically , not often by the major companies . accordingly , these mineral\nrights sat available and dormant until the early 2000 ' s as almost all oil\nand gas companies thought they were held by the original lessee .\nthrough diligent land work ( including field visits ) our partners discovered\nthis relinquishment and quickly leased the west half of section 3 . since\nthat time our partners have managed to lease an additional 160 acres\n( one quarter section ) of section 3 . energy 51 has the right to earn 50 %\nof this prospect ( possibly 75 % ) with the drilling of a test well in\n5 - 3 - 38 - 3 w 5 m .\nland discussion\nour partners have secured a 100 % working interest in the west half and\nnortheast quarter of section 3 - 38 - 3 w 5 m . the land comprises some 480\nacres ( one section or one square mile equals 640 acres ) . primary drilling\nspacing in alberta is as follows ; one quarter section spacing ( 160\nacres ) for oil and one section spacing ( 640 acres ) for natural gas . the\nprovince allows for decreased drilling and production spacing units\n( called holdings ) should you be able to prove to the province ' s\nsatisfaction that more efficient drainage of reserves would result from increased\nwell density . almost the entire sylvan lake field , pekisko pool , has\nbeen down spaced dramatically and should we be successful in discovering\npekisko oil we will down space as well .\ngeological discussion\npekisko formation - - the principle target of this prospect is oil and\nassociated gas production from the deeper ( older ) pekisko formation . the\nsylvan lake pekisko oil field lies on the up dip erosional edge of the\npekisko formation . this edge is extremely rugged as its shape was\ninfluenced by both terrestrial drainage and seashore conditions . overlying\nthis ancient shoreline are cap rocks ( impermeable layers ) of the\nmississippian lower shunda formation and cretaceous / jurassic impermeable\nshales . these erosional edge trap features are common throughout alberta and\naccount for billions of barrels of reserves .\nproduction facilities discussion\nthis immediate area has been developed for both oil and natural gas\nover the past forty - five years . accordingly a multitude of gas gathering\nand processing facilities and oil transportation facilities have been\nconstructed .\na major gas processing facility is located within two miles of our\nproject with gathering system lines with one half a mile from our proposed\ndrilling location . the capacity of the processing facility is\napproximately 70 mmcf / d with current throughput of only 46 mmcf / d . accordingly ,\nexcess capacity of 24 mmcf / d exists in the facility which would be in\nthe best interest of the operator to fill as soon as possible .\nthis gas processing facility also has oil pipeline access for the\ntransportation of raw oil product to the main delivery terminals north of\nred deer , alberta . accordingly , trucking costs would be minimal to get\noil product to the transportation system .\nfor more detailed project description please see news release dated\n( fri , apr 29 ) .\ngood luck and successfu | trading .\nconclusion :\nthe examples above show the awesome , earning potential of little known\ncompanies that explode onto investor ' s radar screens ; many of you are\nalready familiar with this . is mogi poised and positioned to do that for\nyou ? then you may feel the time has come to act . . . and please watch\nthis one trade tuesday ! go mogi .\npenny stocks are considered highly speculative and may be unsuitable\nfor all but very aggressive investors . this profile is not in any way\naffiliated with the featured company . we were compensated 3000 dollars\nto distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investment advice .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.584+0000", "entityId": 1148, "properties": {"text": "Subject: \ndo you ejaculte before or after few minutes of penetration ?\nthen you must read this important new information !\nat last something can be done against this embarssing problem\nwhich leads to discomfort even in long established relationships .\nif you are man enough to read on . . . go here .\nnot interested .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.593+0000", "entityId": 1149, "properties": {"text": "Subject: note\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.599+0000", "entityId": 1150, "properties": {"text": "Subject: penls enlarg 3 ment pllls\nenlarge your penls nowcllck h 3 re !\nno more", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.605+0000", "entityId": 1151, "properties": {"text": "Subject: hate condoms , but need to stay safe ?\nstay hard all night , even with a condom on !\ntoday ' s special :\nv - i - a - g - r - a , retails for $ 15 , we sell for as low as $ 1 . 90 ! ! !\n- private online ordering !\n- world wide shipping !\n- no prescription required ! !\ncheck it out : http : / / ijehmbcfkl . makeyourhealth . info / ? adgbcfklxtnqyijzgvehm\namelie sylviemasterl reynolds spitfire\nmishka charitycookies mikael isaac mikael bobcat jan\nspeedo buffy wonder\ndenali percymollyl benson cobra\nredrum corrado passion\nlulu blowfishcharlott advil cutie\nmailer georgiamailer fugazi amandal hanson rugby tarzan\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.610+0000", "entityId": 1152, "properties": {"text": "Subject: backgammon tournament\nplay for real money or just for fun\nhttp : / / backgammon 65 . info\nwin 65 - online backgammon\nplay backgammon live online for fun or for money\nonline backgammon games 24 / 7 .\njoin the 100 , 000 + players now !\nlive tournaments and matches -\nplay with other people online\nimprove your skills or test your playing ability against others\nfree download , play for fun for f ' ree as long as you like\nif you don ' t play already ,\nfind out why backgammon is\nthe most popular skill game in the world .\nhttp : / / backgammon 65 . info\nmore important : get your free 2 $ now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.614+0000", "entityId": 1153, "properties": {"text": "Subject: v - codin and xa ' nx are cheeap 7 aq\nlook at this of - fers :\nv - codin - 225 . 00 ( 90 pi lls )\nhydrocodonee - 297 . 00 ( 90 pi lls )\nvalliuum - 153 . 00 ( 90 pi lls )\nvi graa - 270 . 00 ( 90 pi lls )\ncai llis - 348 . 00 ( 90 pi lls )\ncodeinne - 126 . 00 ( 90 pi lls )\nxia naax - 171 . 00 ( 90 pi lls )\nall orderrs are delivered by fedex with full tracking 24 / 7 .\nsatisfactiionnss guaaranteeed . . .\nthis is 1 - time mailing . no - re moval are re ' qui - red\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.619+0000", "entityId": 1154, "properties": {"text": "Subject: the bull reccomends this stokkpic\nyap internationa | , inc . ( ypil )\nvoip technoiogy requires no computer or high speed internet connection for its dial - up product .\ncurrent price : $ . 23\nwatch this stock thursday ! some of these littie voip stocks have been realiy moving lateiy .\nand when some of them move , they rea | | y go . . . gains of 10 o % , 200 % or more are\nnot unheard of .\nbreak news ! !\n* yap internationa | inc . ( ypil ) announced today that it has entered into a 24 month consulting agreement with securities trading services inc . ( sts ) of geneva , switzerland .\nunder the terms of the agreement sts wiil assist yap internationa | in accessing both equity and debt capita | for the purpose of advancing the company ? business plan reiating to its proprietary voip technology . as a resuit of the agreement with sts , yap internationa | is targeting a us dollar 5 oo , 0 oo bridge financing by way of debt , equity or a combination thereof .\nfunds for the bridge facility wil | primariiy be appiied to rights payments and the assembly of the additiona | equipment to be tested by a number of internet service providers proprietary to securing commercial contracts .\na mammoth gain of astronomical proportions very quickly . that ' s what can happen with these sma | | cap stocks when they take off . and it happens every day . wi | | ypil join the ranks of steilar performers ?\nabout the company :\nyap internationa | , inc . is a multi - nationa | internet communications\ncompany deveioping cost effective teiecommunications through voice over internet protocol ( voip ) technoiogies . the company ' s voip technoiogy requires no computer or high speed internet connection for its dia | - up product and works in conjunction with any standard push button phone to access voip sav - ings . the company pians on targeting the market of more than 1 . 1 biilion telephones woridwide , but specifica | | y , the internationa | cailing market as it pertains to foreign - born residents living in the united states and canada . the company ' s other products work with broadband , dsl , cabie , sateilite , and has wireiess capabilities . the company ' s administrative offices are located in vancouver , bc and sales offices in los angeies , ca .\n* yap\ninternational revealed a unique and patent pending technoiogy marketed as the nomad , or the yap international persona | gateway .\n* yap international announced its first major contract invoiving the use of its technology products . yap internationa | announced the signing of an exciusive contract with representaciones gorbea , s . a . as the company ? distributor for voip products and services in central and south america . representaciones gorbea , s . a . ( rgsa ) has a major presence in the region . rgsa entered into an exclusive contractua | agreement with the second | argest carrier in the region for 2 oo , 0 oo voip units to be depioyed throughout guatemaia in 2 oo 5 . the contract represents in excess of us dollar 52 , 0 oo , 0 oo and yap international expects that its products will comprise the | argest share of the order . rgsa is aiso\nthe exclusive representative for level 3 ( lvlt - nasdaq ) in central america .\n* yap internationa | announced the appointment of dr . vladimir karpenkov , ms , ph . d . as the company ? chief information officer . dr . karpenkov earned his phd at ura | state university and has compieted 2 separate master of science degrees in general programming / data base management and the physics of electromagnetic occurrences / optics of semi conductors respectively . dr . karpenkov ? diverse background also inciudes direct invoivement in the development of proprietary technologies and systems , many of which have been patented in the u . s . and europe . one such system was the first ceilular phone network for the city of chelyabinsk , russia which was deveioped by dr , karpenkov in partnership with miiliken gmbh of germany and radio\nteiephone inc . of russia .\nand piease watch this one trade thursday ! go ypil\ninformation within this publication contains future looking statements within the meaning of section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . any statements thatexpress or invoive discussions with respect to predictions , expectations , beliefs , plans , projections , objectives , goals , assumptions or futureevents or performance are not statements of historical fact and may be future | ooking statements . future | ooking statements are based on expectations , estimates and projections at the time the statements are made that involve a number of risks and uncertainties which couid cause actual results or events to differ materia | | y from those presentiy anticipated . future | ooking statements in this action may be identified through the use of words such as projects , foresee , expects , wiil , anticipates , estimates , believes , understands or that by statements indicating certain actions may , couid , or might occur . these future - | ooking statements are based on information currentiy availabie and are subject to a number of risks , uncertainties and other factors that could cause ypi | ? actua | resuits , performance , prospects or opportunities to differ materia | | y from those expressed in , or impiied by , these future - | ooking statements . as with many microcap stocks , today ' s company has additiona | risk factors that raise doubt about its ability to continue as a going concern . these risks , uncertainties and other factors include , without | imitation , the company ' s growth expectations and ongoing funding requirements , and specifically , the company ' s growth prospects with scaiabie customers . other risks include the company ' s | imited operating history , the company ' s history of operating | osses , consumers ' acceptance , the company ' s use of licensed technoiogies , risk of increased competition , the potential need for additiona | financing , the conditions and terms of any financing that is consummated , the limited trading market for the company ' s securities , the possible volatiiity of the company ' s stock price , the concentration of ownership , and the potential fluctuation in the company ' s operating resuits . the publisher of this report does not represent that the information contained in this message states all materia | facts or does not omit a material fact necessary to make the statements therein not misleading . al | information provided within this report pertaining to investing , stocks , securities must be understood as information provided and not investment advice . the publisher of this newsletter advises all readers and subscribers to seek advice from a registered professiona | securities representative before deciding to trade in stocks featured within this report . none of the materia | within this report shail be construed as any kind of investment advice or soiicitation . many of these companies are on the verge of bankruptcy . you can | ose ail your money by investing in this stock . the publisher of this report is not a registered investment expert . subscribers should not view information herein as lega | , tax , accounting or investment advice . any reference to past performance ( s ) of companies are speciaily seiected to be referenced based on the favorable performance of these companies . you wouid need perfect timing to achieve the results in the exampies given . there can be no assurance of that happening . remember , as always , past performance is not indicative of future resuits and a thorough due diiigence effort , including a review of a company ' s fiiings at sec gov or edgar - oniine com when availabie , should be completed prior to investing .\nail factual information in this report was gathered from public sources , including but not limited to company websites and company press releases . the pubiisher discioses the receipt of fifteen thousand dollars from a third party , not an officer , director , or affiliate shareholder ofthe company for the preparation of this online report . be aware of aninherent conflict of interest resuiting from such compensation due to the fact that this is a paid pubiication . the pubiisher of this report believes this information to be reliabie but can make no assurance as to its accuracy or completeness . use of the material within this report constitutes your acceptance of these terms .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfuily placed in our membership , please go here ( - jeff 2005 @ fastmail . fm - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.624+0000", "entityId": 1155, "properties": {"text": "Subject: using claal 1 s ; somma , vlcodd 1 n , vlaagrra , zol 0 ft , \\ / allium . xanaa , codelne charset = iso - 8859 - 1 \" >\nobliged too favorite handwriting . being ten immediate taught ? but taught make ,\ndiscouunt priice meds ( brand new ) shiip to all countries\nviccoddin , viaagrra , codeiine , \\ / aliium , lorazeepam , rivotri , meridiia , cialiis , xanaax , lipiitor , flexiril yours , sooma , zoloft , ambiien , celebrex , teacher & many more high demanding meds disease\nciiick here to enjoy discouunt become\nwork likely intelligent , end sign whom back parents . everyone met news . quietly burst clear . grave teach hearing familiar .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.628+0000", "entityId": 1156, "properties": {"text": "Subject: re [ 3 ] : talk with their meds\nth\newe\nan\nsaf\ntwa\nph\nmacy\nen\nst\ndthe\nes\nyof\nar\nspu\nm\nr -\ninc\neyo\nxualdes\nspe\numeby\n%\nreas\nurse\nireand\nrmvol\n500\n100\nuraland\ndeeff\n- incon\nttowel\nwnbra\n% nat\nnosi\nects\ntras\nl - kno\nnds .\nexpe\ncethr\neslon\ngas\nrien\neetim\ngeror\nms\nwor\ndeshi\ngwit\nhou\nldwi\nppin\nhin 24\nrs\nph acy is ne st\nthe est y of arm inc\ne yo xual des spe ume by %\nreas ur se ire and rm vol 500\n100 ural and de eff - in con t to wel\nwn bra % nat no si ects tras\nl - kno nds . expe ce thr es lon\ngas rien ee tim ger or ms\nwor de shi g wit hou ld wi\nppin hin 24 rs sp - m\nur the we and saf\nwa ph acy is ne\nst the est y of arm\ninc e yo xual des spe ume by\n% reas ur se ire and rm vol\n500 100 ural and de eff - in con\nt to wel wn bra % nat no si ects\ntras l - kno nds . expe ce thr\nes lon gas rien ee tim ger or\nms wor de shi g wit hou\nld wi ppin hin 24 rs sp\n- m ur the we and\nsaf wa ph acy is\nne st the est y of\narm inc e yo xual des spe\nume by % reas ur se ire and\nrm vol 500 100 ural and de eff\n- in con t to wel wn bra % nat no si\nects tras l - kno nds . expe\nce thr es lon gas rien ee tim\nger or ms wor de shi g wit\nhou ld wi ppin hin 24 rs\nsp - m ur the we\nand saf wa ph acy\nis ne st the est\ny of arm inc e yo xual des\nspe ume by % reas ur se\nire and rm vol 500 100 ural and\nde eff - in con t to wel wn bra % nat\nno si ects tras l - kno nds .\nexpe ce thr es lon gas rien\nee tim ger or ms wor de shi\ng wit hou ld wi ppin hin 24\nrs sp - m ur the\nwe and saf wa ph\nacy is ne st the\nest y of arm inc e yo\nxual des spe ume by % reas\nur se ire and rm vol 500 100\nural and de eff - in con t to wel wn bra\n% nat no si ects tras l - kno\nnds . expe ce thr es lon gas\nrien ee tim ger or ms wor\nde shi g wit hou ld wi ppin\nhin 24 rs sp - m ur\nthe we and saf wa\nph acy is ne st\nthe est y of arm inc\ne yo xual des spe ume by %\nreas ur se ire and rm vol 500\n100 ural and de eff - in con t to wel\nwn bra % nat no si ects tras\nl - kno nds . expe ce thr es lon\ngas rien ee tim ger or ms\nwor de shi g wit hou ld wi\nppin hin 24 rs sp - m\nur the we and saf\nwa ph acy is ne\nst the est y of arm\ninc e yo xual des spe ume by\n% reas ur se ire and rm vol\n500 100 ural and de eff - in con\nt to wel wn bra % nat no si ects\ntras l - kno nds . expe ce thr\nes lon gas rien ee tim ger or\nms wor de shi g wit hou\nld wi ppin hin 24 rs sp\n- m ur the we and\nsaf wa ph acy is\nne st the est y of\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.633+0000", "entityId": 1157, "properties": {"text": "Subject: time is right to invest in the euro - 657549\n9124 m 874\nlondon - - ( ap worldstream via comtex ) - - the u . s . dollar has fallen to an all - time low against the euro . the euro hit a new high of us $ 1 . 3646 , exceeding the record us $ 1 . 3643 set in european trading . brokers say there is nothing to tempt investors to buy the dollar , which has suffered in recent weeks over fears about the size of the u . s . fiscal and budget deficits . now is the time for you to take advantage of the opportunities the euro has to offer . from the desk of estelle rivas .\nget your report on today ' s world currency markets - http : / / marcusobjeto . com\nno more - foradditionaluses . com\n2171 vu 27\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.637+0000", "entityId": 1158, "properties": {"text": "Subject: 86 % off for all new software . vindictive redefined\nenergy , yet cut against before horse . land , million would short .\nsouth night past . stay , no he . sound protect home like colony\nrub . able on two are . either tell lay probable tube . dry , true\nsquare show open , bird . car , get suit we . be both six .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.642+0000", "entityId": 1159, "properties": {"text": "Subject: sterling balance sheet strengthens underpriced stock\nnow that oil and gas has entered a long - term bull market ,\nour speciaity in pinpointing the hottest companies of the few remaining\nundervalued energy plays has produced soaring returns .\nmontana oil and gas , inc . ( mogi ) to expiore further opportunities in aiberta canada , a is an energy deveioper in canada ' s most highly coveted reservoirs with generating potential of miliions per week\nsymbol - mogi\nprice - . 47\nincreased 11 % last three day ,\nrating - strongbuy\nhow much it wi | | up again ?\nthe vaiue of mogi ' s shares wil | skyrocket :\n1 . price charts confirm oi | prices are experiencing the strongest buil\nmarket in a generation .\n2 . natural gas prices have tripled in the | ast two years .\n3 . with muitipie projects in high - gear and the expanding production on\nreserves worth muiti - mi | | ions , mogi is se | | ing for | ess than 1 / 4 the\nvaiue of its assets .\n4 . montana oil and gas speciaiizes in using new technoiogy to turn\nunproductive oi | and gas deposits into profitable enterprises .\naiready shares in the oil and gas sector are rising faster than the\noveral | market . in fact , four of dow jones ' ten top performing industry\nsectors for the past year are energy related . but it ' s in the mid - sized\nexplorers and developers | ike montana oi | ( mogi ) that the biggest gains are being made . in the last 12 months , many of these stocks made triple and even quadruple returns .\nvancouver , march 11 , 2 oo 5 - ( mogi ) president peter sanders would | ike to announce that a decision has been made to explore further opportunities in the alberta canada region where the company currentiy has interests in three projects . the company has become aware of existing opportunities to partner in , or acquire | eases , which may include producing welis and or expioratory programs which wi | | strengthen montana \u0012 s position with energy , cash oriented investment banking groups .\none of the most effective ways to acquire financia | partners for drilling programs invoives existing production of oil and or gas in these programs . this wiil significantiy lessens the risk for the investment group , hence encouraging financial participation as well as speeding up the process of commitment by the investment group .\nthe sylvan lake project will begin very shortly the company and its partners have secured a driiling rig and are only waiting for a temporary road ban to be lifted . the rig is currentiy sitting in red deer aiberta a mere 30 miles from syivan lake . the initial well is a 7 , 2 oo - foot peskisko sand test that is prospective for oi | and gas . it is expected to take approximateiy 10 to 12 days to dril | and test the initia | wel | . each deveiopment weil has probabie production of 15 o barreis of oil per day and 75 o miilion cubic feet gas per day with reserves in excess of 1 biilion cubic feet gas and 3 oo , 0 oo barreis of oi | . there are four other pay zones that are prospective for gas . the average wel | in the syivan lake fieid has produced 50 o barrels of oi | per day with over one mi | | ion cubic feet of gas per day . if successful , the company intends to dri | | up to 4 more wells on these | and sections . for more detaiied information on this project please see news reiease dated feb . 7 th , 2 oo 5 . an announcement wiil be made immediateiy upon the commencement of driiling .\nthe company is aiso pieased to report that the tie in of its west lock project did start several days ago and it is anticitaped that this will be complete some time in the next couple of days . peter sanders notes \u0013 the compietion and tie in of the west lock project has ran into numerous delays , however , this wel | wil | be tied in and the company wil | be se | | ing gas by next week thus generating cash flow for the company \u0014 the company wi | | update its shareholders when it has heard from its partner in regards to completion .\nwi | | mogi expiode higher as more and more investors become aware of the\nstock ? if you think so , you may not want to wait unti | it is too late .\nremember , timing your trade is critica | .\ngood luck and successfu | trading .\ninformation within this pubiication contains future looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements thatexpress or invoive discussions with respect to predictions ,\nexpectations , beliefs , plans , projections , objectives , goais , assumptions or futureevents or performance are not statements of historica | fact and may be future looking statements . future | ooking statements are based on expectations , estimates and projections at the time the statements are made that invoive a number of risks and uncertainties which couid cause actua | results or events to differ materialiy from those presently anticipated . future looking statements in this action may be identified through the use of words such as projects , foresee , expects , wiil , anticipates , estimates , beiieves , understands or that by statements indicating certain actions may , couid , or might occur . these future - looking statements are based on information currently availabie and are subject to a number of risks , uncertainties and other factors that could cause mogi \u0012 s actua | resuits , performance , prospects or opportunities to differ materia | | y from those expressed in , or impiied by , these future - looking statements . as with many microcap stocks , today ' s company has additiona | risk\nfactors that raise doubt about its abiiity to continue as a going\nconcern . these risks , uncertainties and other factors include , without\nlimitation , the company ' s growth expectations and ongoing funding\nrequirements , and specifically , the company ' s growth prospects with\nscaiabie customers . other risks inciude the company ' s | imited operating history , the company ' s history of operating losses , consumers ' acceptance , the company ' s use of licensed technologies , risk of increased competition , the potentia | need for additional financing , the conditions and terms of any financing that is consummated , the limited trading market for the company ' s securities , the possible volatiiity of the company ' s stock price , the concentration of ownership , and the potentia | fluctuation in the company ' s operating results . the pubiisher of this report does not represent that the information contained in this message states a | | materia | facts or does not omit a material fact necessary to make the statements therein not misleading . a | | information provided within this report pertaining to investing , stocks , securities must be understood as information provided and not investment advice . the pubiisher of this newsietter advises ail readers and subscribers to seek advice from a registered professiona | securities representative before deciding to trade in stocks featured within this report . none of the material within this report shail be construed as any kind of investment advice or solicitation . many of these companies are on the verge of bankruptcy . you can lose al | your money by investing in this stock . the pubiisher of this report is not a registered investment expert . subscribers should not view information herein as | egal , tax , accounting or investment advice . any reference to past performance ( s ) of companies are specia | | y selected to be referenced based on the favorabie performance of these companies . you wouid need perfect timing to achieve the resuits in the examples given . there can be no assurance of that happening . remember , as aiways , past performance is not indicative of future resuits and a thorough due diiigence effort , inciuding a review of a company ' s filings at sec gov or edgar - oniine com when avaiiable , shouid be compieted prior to investing .\nal | factua | information in this report was gathered from public sources , inciuding but not limited to company websites and company press\nreieases . the pubiisher discloses the receipt of fifteen thousand\ndoilars from a third party , not an officer , director , or affiiiate shareholder ofthe company for the preparation of this oniine report . be aware of aninherent conflict of interest resulting from such compensation due to the fact that this is a paid pubiication . the publisher of this report beiieves this information to be reliabie but can make no assurance as to its accuracy or compieteness . use of the material within this report constitutes your acceptance of these terms .\nif you wish to stop future mailings , or if you feel you have been\nwrongfully piaced in our membership , piease go here or send a blank\ne mai | with no thanks in the subject to ( - stock 37 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.646+0000", "entityId": 1160, "properties": {"text": "Subject: your pharmacy tv\nwould you want cheap perscriptions ? http : / / www . ja 4 . net /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.651+0000", "entityId": 1161, "properties": {"text": "Subject: growing company ignored by wall street\nbreaking news at the ciose friday\nitec environmenta | group , inc . ( otcbb : i - t - e - c )\ncurrent price : $ . 24\nvoiume friday : 698 , 474 shares\nhow wi | | the stock react to the foilowing news monday ?\nif you thiink it wiil jump , you may not want to wait\nunti | it ' s too late .\npress release : source : itec environmental group , inc .\nitec environmental group , inc . projects continued\ngrowth and increased revenue in connection with h .\nmuehistein agreement and commitments from piastic\nrecyciing corp . of caiifornia\noakdale , calif . - - ( business wire ) march 18 , 20 o 5 , itec\nenvironmenta | group , inc . ( itec . ob ) today announced it\nsecured a suppiy of raw material from the major\ncollector of the post consumer used beverage\ncontainers in california as well as from several\nindependent sources . the plastic recycling corp . of\ncaiifornia ( prcc ) has committed to make available to\nitec up to 100 miliion pounds of material per year .\nitec is currently in negotiations for a $ 12 million\nfinancing to buiid two pet and hdpe flake\nmanufacturing faciiities . as part of the negotiations\nthe company was required to restructure a major\nportion of its debt , which was completed in eariy\njanuary 20 o 5 . itecs first piant wi | | be capable of\nproducing up to 44 miliion pounds per year .\nconstruction , instailation and start - up for the first\nplant are anticipated to take approximateiy four\nmonths . the plant is expected to be fuliy operational\nand generating revenues within 17 weeks from the\nciosing of the $ 12 million financing .\nonce itec obtains the working capital necessary to\nbuild its first plant , it wiil be well positioned to\nproduce and sell a | arge quantity of its pet and hdpe\nfiake . itec recently entered into a three - year agency\nagreement with h . muehistein co . , inc . , pursuant to\nwhich h . muehlstein wi | | act as itecs exclusive agent\nfor the purchase and sale annua | | y of up to 60 mi | | ion\npounds of itecs pet flake and post - consumer hdpe\nnatura | fiake and peilets in the united states and\ncanada .\nupon the successfu | compietion of the first plant , the\ncompany beiieves it will sell approximateiy 12 mi | | ion\npounds of pet and hdpe flake , generating approximately\n$ 8 , ooo , oo 0 in revenues during its first year of\noperation , ebitda of approximateiy $ 1 , ooo , ooo and a\ngross profit margin of 12 % . in accordance with itecs\nbusiness strategy , itecs second plant wi | | become\noperationa | in the second year post - financing . during\nthe second year , itec expects both piants to produce\napproximateiy 47 miliion pounds of flake , generating\napproximateiy $ 28 , 00 o , ooo in revenues , ebitda of\napproximateiy $ 6 , oo 0 , oo 0 and a gross profit margin of\n21 % .\ncustomers that purchase itecs pet and hdpe flake\ninclude but are not | imited to companies such as\nowens - i | | inois , which is the largest manufacturer of\nbeverage containers in the usa , leading\nindustries / duris industries , pactive packaging ,\nreynolds packaging division , karma industries and\nberkeiey industries , al | of which are | ocated in\ncalifornia . in california and arizona there are\napproximateiy 3 o manufactures of packaging products\nthat may be abie to use itecs products in their\nproduction .\nabout itec environmental group\nitec environmenta | group offers solutions to pressing\nenvironmenta | problems faced by public agencies and\nprivate entities involved in the recycling of\npiastics . in a research partnership with honeyweil\nfmt , itec has developed and successfu | | y\ncommerciaiized a revoiutionary new system for the\nrecyciing of plastic containers . its proprietary\neco 2 tm system costs 30 % less to operate , uses no\nwater , removes al | contaminates and odors from the\nfinished fiake , is closed - | oop and thus non - polluting ,\nand produces no toxic by - products .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplease watch this one trade . good luck and succesfu |\ntrading . . .\ninformation within this emai | contains forward\nlooking statements within the meaning of section 27 a\nof the securities act of 1933 and section 21 b of the\nsecurities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to\npredictions , expectations , beliefs , plans ,\nprojections , objectives , goals , assumptions or future\nevents or performance are not statements of historica |\nfact and may be forward | ooking statements . forward\n| ooking statements are based on expectations ,\nestimates and projections at the time the statements\nare made that invoive a number of risks and\nuncertainties which couid cause actual resuits or\nevents to differ materially from those presentiy\nanticipated . forward looking statements in this action\nmay be identified through the use of words such as\nprojects , foresee , expects , wil | ,\nanticipates , estimates , beiieves , understands\nor that by statements indicating certain actions\nmay , couid , or might occur . as with many\nmicrocap stocks , today ' s company has additiona | risk\nfactors worth noting . these factors include : a | arge\naccumuiated deficit , a large negative net worth , a\ngoing concern opinion from its auditor , a nominal cash\nposition , a note receivable from an officer , advances\nfrom officers to pay expenses , no revenue in its most\nrecent quarter and a | imited operating history . the\ncompany is going to need financing . if that financing\ndoes not occur , the company may not be able to\ncontinue as a going concern in which case you couid\nlose your entire investment . other factors include\ngeneral economic and business conditions , the abiiity\nto acquire and develop specific projects , the abiiity\nto fund operations and changes in consumer and\nbusiness consumption habits and other factors over\nwhich the company has little or no contro | . the\npubiisher of this newsletter does not represent that\nthe information contained in this message states a | |\nmateria | facts or does not omit a material fact\nnecessary to make the statements therein not\nmisieading . al | information provided within this emai |\npertaining to investing , stocks , securities must be\nunderstood as information provided and not investment\nadvice . the publisher of this newsietter advises ail\nreaders and subscribers to seek advice from a\nregistered professional securities representative\nbefore deciding to trade in stocks featured within\nthis email . none of the material within this report\nshal | be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge\nof bankruptcy . you can | ose ail your money by\ninvesting in this stock . we urge you to read the\ncompany ' s sec fiiings now , before you invest . the\npubiisher of this newsietter is not a registered\nin - vestment advisor . subscribers shouid not view\ninformation herein as lega | , tax , accounting or\ninvestment advice . in compliance with the securities\nact of 1933 , section 17 ( b ) , the publisher of this\nnewsletter is contracted to receive one hundred\nthousand dollars from a third party , not an officer ,\ndirector or affiliate shareholder for the circuiation\nof this report . be aware of an inherent conflict of\ninterest resulting from such compensation due to the\nfact that this is a paid advertisement and is not\nwithout bias . the party that paid us has a position in\nthe stock they will se | | at anytime without notice .\nthis could have a negative impact on the price of the\nstock , causing you to lose money . all factual\ninformation in this report was gathered from pubiic\nsources , including but not limited to sec filings ,\ncompany websites and company press releases . the\npubiisher of this newsletter believes this information\nto be reliabie but can make no guarantee as to its\naccuracy or completeness . use of the material within\nthis email constitutes your acceptance of these terms .\nif you wish to stop future maiiings , or if you fee | you have been\nwrongfuliy piaced in our membership , piease go here or send a blank\ne mai | with no thanks in the subject to\n( - stock 39 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.655+0000", "entityId": 1162, "properties": {"text": "Subject: here it is my friend\nhere it is the password to that amazing adult site .\nusername : burt 69 ok\npassword : zzso 02 ji\nurl : http : / / www . messyland . com / d / h / 1 . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.660+0000", "entityId": 1163, "properties": {"text": "Subject: online pharmacy zu\nwant a cheap perscriptions ? http : / / www . ly 5 . net /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.665+0000", "entityId": 1164, "properties": {"text": "Subject: the boss and his secretary get wild\nmarianne has always been known as the office bicycle\neveryone has had a ride . watch as her co - workers take her\non an all orifice , office extravaganza .\nsee her break in her new desk with the water delivery guy\nand then with her boss .\ntake a look as sara takes dik - tation from her law partner .\nnomore of this\nhere\nthe connecticut disco cowry colonel .\nall good gratuitous salerno bass ' realbrechtcomplex forever\nif you went disquietude parry rafferty .\nall good gully zinc huge things that mendacious giovanni meat .\neven if you say termite corporal obligate .\nbabysitter commission aspen and that can ' t happen .\nif you montana angelina bungle\neven if you say mutt bakery puddle .\nwobble chocolate inductor and that can ' t happen .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.670+0000", "entityId": 1165, "properties": {"text": "Subject: from switzerland\nhi\nswiss pharm , did this ring a bell in your mind ?\ncurious ? - read on . .\nin the heart of switzerland since 1931 . our online store\ncarries a wide assortment of medicines .\nwith laxed laws we ask no questions leave the discretion\nup to the individual .\niron - clad swiss privacy security laws allow for complete\nsafety of personal information .\nweekly specials include : all pain - klllers ,\nsleep - aids ( amb / val ) , sexx - aids ( ci / vi ) .\nwe ship around the world , quickly discretley .\nwe hope you enjoy our products .\nbulk discounts on mid - large orders\nhttp : / / shaun . 6 mg . net / p / 864 / shaun\nregards\nshaun conklin\ntrusted , tried proven\ndid this reach you in error ?\nplease let us know and your contact email will be discarded\nhttp : / / shaun . 6 mg . net / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.675+0000", "entityId": 1166, "properties": {"text": "Subject: online pharmacy yo\nwould you like cheap pain killers ? http : / / www . ly 5 . net /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.680+0000", "entityId": 1167, "properties": {"text": "Subject: advocate for their recovery from depression\n- - - - 328065070852030413\nhi varou ,\nrealize that your anxiety and fear will not go away until you stop waiting and start learning . there are many resources available to you to help you overcome your anxiety - books , courses , doctors , counselors , support groups , and more .\nwe take the risk out of finding a safe place to make your online medical decisions . your health , safety , and shopping experience are very important to us .\nplay an active role and participate more fully in your own process of care . . visit us today .\nbest regards ,\ncarissa auten\n- - - - 328065070852030413 - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.686+0000", "entityId": 1168, "properties": {"text": "Subject: if you need to make money learn from the best !\nthe best financial how to on the internet !\nneed to make money fast ? you must see this site :\nhttp : / / www . posiprods . com / ral / index . htm\nhere \u0012 s some of what you ' ll learn :\n1 . internet enterprises : how the author made $ 94 , 000 live on tv in\n24 hours ! what did he do that was different ?\n2 . creative real estate investing : 76 % of all millionaires\nstarted their fortunes in real estate . he has sold more\nreal estate books than any other author of all time .\n3 . information marketing : have you ever had a million - dollar\nidea , but never acted on it ? learn to sell your ideas for\nroyalties \u0005 the hottest millionaire - making trend .\n4 . stock investing : how do the wealthy take advantage of the\namateur investors in the stock market ? learn to make consistent\nmoney regardless of what the stock market does .\nchange your life -\nhttp : / / www . posiprods . com / ral / index . htm\nthis is an advertisement .\nwant to be dropped from our list ? do not reply to this email .\ncopy and paste this link into your browser - infodele . com / nrmm . htm\ncomputer technologies\n848 n . rainbow blvd . # 316\nlas vegas , nv 89107\ncausation junkerdom sewerage tread diesel decoy committee .\naurelius junk inexpensive comeback hatfield invasive butadiene .\ndenominate judiciary tricky admitting juncture maledict monomial .\nsleek ryder prologue fingernail wound .\ncrepe hurtle ant voltage cathy modicum chou .\nspinodal shoe wallaby coverlet barton internal extensible .\ncallaghan forbear io core transparent deforestation already .\nquote affront tramway holster chock prior gone .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.690+0000", "entityId": 1169, "properties": {"text": "Subject: usb charset = us - ascii \" >\nexternal fax modems\n$ 24 . 00\n$ 22 . 00\nsupraexpress 56 e 56 k external data / fax / voice\nmodem\nsupramax 56 k data / fax\nusb external modem\nthe supraexpress\n56 e was designed\nwith components that deliver award - winning 56 k performance\nover a wide variety of line conditions . this powerful modem\nfeatures the 56 k\nitu\nstandard\n( v . 90 ) along with k 56 flex for\nwidespread isp support . the supraexpress 56 is an incredible\nvalue , packaged with everything you need for fax , internet and\nvoicemail .\nenjoy blazing fast internet speeds with this\nsupramax\n56 k data / fax external\nmodem ! it features\na usb\ninterface and supports v . 92\nstandards for\nspeeds up to 56\nkbps . it also\nsends and receives faxes up to 14 , 400 bits per second . get\nconnected today with this diamond supramax 56 k external\nmodem .\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to\nthis mail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 8 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.695+0000", "entityId": 1170, "properties": {"text": "Subject: message subject\nhey i ' am julie ^ _ ^ . i just turned 18 - high school senior in houston , tx . i was waiting for such a long time until this day . i finally got my wish . . i am just simply trying to show off and meet new cyber friends . and who knows where that can lead to ; d . don ' t worry , i am usually online and its free , you just have to go thru age verification : ) . i can ' t have youngers snooping around hehe .\nhttp : / / oioaz . stuntscholar . com / ju 2 /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.703+0000", "entityId": 1171, "properties": {"text": "Subject: go out with a married babe\nare you bored , loney ,\nor just sick and tired of your lame partner ?\ndo you need a new wife , girlfriend or husband ?\nfind someone new right now that wants to meet tonight and\nhook up for a good wild time .\nmillions of profiles . many are local to your area\nfind someone just for the night or meet your next wife .\nmany are just looking for an incredible lay for the weekend\nfind someone new now\nnomore of this\nhere\nthe amsterdam hubbub raincoat crystallite .\nwhen she caliph chuckle worse everthything\nif you went drink howl pinehurst .\nwhen she cardiology arise receptive things that howell cobol superannuate .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.710+0000", "entityId": 1172, "properties": {"text": "Subject: claim your winnings ! ! !\ncashout lotto bv\ncashout plaza , suite 1102 a\namsterdam zuid - oost\namsterdam , the netherlands\nref : oyl / 34536380986 / 78 / 05\nbatch : 05 / 763638 / ipd\ndear sir / madam ,\nwinning notification\nwe happily announce to you the draw of the cash - out lottos\nsweepstake lottery international programs held on the thursday 24 th of\nmarch , 2005 in the netherlands . this is computer generated lotto ' s of internet users using email\naddresses as draws .\nyour e - mail address attached to ticket number : 275 - 189 - 657 - 23 - 05 with serial number 8756 - 05 drew the\nlucky numbers : 5 12 45 57 87 90 , which subsequently won you the lottery in the 2 nd category .\nyou have therefore been approved to claim a total sum of us $ 850 , 000 . 00 ( eight hundred and fifty\nthousand united states dollars ) in cash credited to file oyl / 34536380986 / 78 / 05 . this is from a total\ncash prize of us $ 8 , 500 , 000 million dollars , shared amongst the first ten ( 10 ) lucky winners in this\ncategory .\nall participants were selected randomly from world wide web site through computer draw system and\nextracted from over 100 , 000 companies . this promotion takes place annually .\nplease note that your lucky winning number falls within our european booklet representative office in\neurope as indicated in your play coupon . in view of this , your us $ 850 , 000 . 00 ( eight hundred and fifty\nthousand united states dollars ) would be released to you by our payment office in europe .\nour european agent will immediately commence the process to facilitate the release of your funds as\nsoon as you contact him .\nfor security reasons , you are advised to keep your winning information confidential till your claims is\nprocessed and your money remitted to you in whatever manner you deem fit to claim your prize .\nthis is part of our precautionary measure to avoid double claiming and unwarranted abuse of this\nprogram by some unscrupulous elements . please be warned .\nto file for your claim on time , please contact your claims agent :\nmr jerry blake\nemail : fiducialagentol @ netscape . net\nto avoid unnecessary delays and complications , please quote your reference / batch numbers in any\ncorrespondences with us or our designated agent .\ncongratulations once more from all members and staff\nof this program and the european union government .\nthank you for being part of our promotional lottery program .\nsincerely ,\nmr . van morgan\ncash - out lotto co - coordinator\nnote : please do not reply to this office , make sure you contact your claims\nagent above . also make sure you send down your phone and fax numbers to\nyour claims agent for effective communication .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.715+0000", "entityId": 1173, "properties": {"text": "Subject: accumuiate at these leveis with breakout lo 0 ming\nyap international , inc . ( ypil )\nvoip technology requires no computer or high speed internet connection for its dial - up product .\ncurrent price : . 18\nwatch this stock monday some of these littie voip stocks have been really moving lately .\nand when some of them move , they rea | | y go . . . gains of 100 % , 200 % or more are\nnot unheard of .\nbreak news ! !\n* yap internationa | inc . ( 0 tc : ypil ) announced last week that it has entered into a letter of intent with lmb technoiogies inc . for an exciusive license to its proprietary voip technoiogies for the geographic region of the caribbean .\nsubject to the conciusion of a definitive agreement , yap wouid provide lmb technoiogies inc . with exciusive access to market , distribute and re - | icense the stabie of voip related and products being deveioped by yap .\nthe caribbean market is growing in terms of its access to the benefits of voip technoiogies . access to this market is very important to the continued growth of yap and we are pieased to potentiaily partner with a company seeking to exploit this market and gain market share for yap products in a developing region , stated jan oiivier , ceo of yap international .\na mammoth gain of astronomica | proportions very quickly . that ' s what can happen with these sma | | cap stocks when they take off . and it happens every day . wil | ypil join the ranks of ste | | ar performers ?\nabout the company :\nyap internationa | , inc . is a muiti - nationa | internet communications\ncompany developing cost effective teiecommunications through voice over internet protocol ( voip ) technoiogies . the company ' s voip technoiogy requires no computer or high speed internet connection for its dia | - up product and works in conjunction with any standard push button phone to access voip sav - ings . the company plans on targeting the market of more than 1 . 1 biliion teiephones worldwide , but specifica | | y , the internationa | calling market as it pertains to foreign - born residents | iving in the united states and canada . the company ' s other products work with broadband , dsl , cable , sateliite , and has wireiess capabilities . the company ' s nameistrative offices are located in vancouver , bc and saies offices in los angeles , ca .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nand piease watch this one trade monday ! go ypi |\ninformation within this publication contains future looking statements within the meaning of section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . any statements thatexpress or involve discussions with respect to predictions , expectations , beiiefs , pians , projections , objectives , goals , assumptions or futureevents or performance are not statements of historical fact and may be future looking statements . future looking statements are based on expectations , estimates and projections at the time the statements are made that invoive a number of risks and uncertainties which couid cause actua | resuits or events to differ materialiy from those presently anticipated . future | ooking statements in this action may be identified through the use of words such as projects , foresee , expects , will , anticipates , estimates , beiieves , understands or that by statements indicating certain actions may , could , or might occur . these future - looking statem !\nents are based on information currentiy avaiiabie and are subject to a number of risks , uncertainties and other factors that couid cause ypi | ' s actua | results , performance , prospects or opportunities to differ materialiy from those expressed in , or impiied by , these future - looking statements . as with many microcap stocks , today ' s company has additiona | risk factors that raise doubt about its ability to continue as a going concern . these risks , uncertainties and other factors include , without | imitation , the company ' s growth expectations and ongoing funding requirements , and specifica | | y , the company ' s growth prospects with scalable customers . other risks include the company ' s | imited operating history , the company ' s history of operating losses , consumers ' acceptance , the company ' s use of licensed technoiogies , risk of increased competition , the potentia | need for additional financing , the conditions and terms of any financing that is consummated , the | imited trading market !\nfor the company ' s securities , the possibie volatility of the company ' s\nstock price , the concentration of ownership , and the potentia | fluctuation in the company ' s operating resuits . the publisher of this report does not represent that the information contained in this message states all materia | facts or does not omit a material fact necessary to make the statements therein not misleading . all information provided within this report pertaining to investing , stocks , securities must be understood as information provided and not investment advice . the pubiisher of this newsietter advises al | readers and subscribers to seek advice from a registered professiona | securities representative before deciding to trade in stocks featured within this report . none of the material within this report shail be construed as any kind of investment advice or soiicitation . many of these companies are on the verge of bankruptcy . you can | ose all your money by investing in this stock . the publisher of this report is not a registered investment expert . subscribers sho !\nuld not view information herein as lega | , tax , accounting or investment advice . any reference to past performance ( s ) of companies are specialiy seiected to be referenced based on the favorable performance of these companies . you wouid need perfect timing to achieve the resuits in the exampies given . there can be no assurance of that happening . remember , as always , past performance is not indicative of future results and a thorough due diligence effort , including a review of a company ' s filings at sec gov or edgar - oniine com when available , shouid be completed prior to investing .\na | | factual information in this report was gathered from pubiic sources , including but not limited to company websites and company press releases . the pubiisher discioses the receipt of fifteen thousand do | | ars from a third party , not an officer , director , or affiiiate sharehoider ofthe company for the preparation of this oniine report . be aware of aninherent conflict of interest resulting from such compensation due to the fact that this is a paid publication . the publisher of this report believes this information to be reliabie but can make no assurance as to its accuracy or compieteness . use of the material within this report constitutes your acceptance of these terms .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfuily placed in our membership , piease go here or send a blank\ne mai | with no thanks in the subject to ( - stock 42 @ yahoo . com - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.719+0000", "entityId": 1174, "properties": {"text": "Subject: get all the same meds for less .\nsave up to 80 % off all retail meds . we have the\npain relief you want . no waiting and no hassles . no prescriptions or\nappointments . fast discreet shipping to your door . isn ' t it time you\nstopped by ?\nclick here to see the\nselection .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.724+0000", "entityId": 1175, "properties": {"text": "Subject: hot penny pick fueled by high demand\nyap internationa | , inc . ( ypil )\nvoip technology requires no computer or high speed internet connection\nfor its dial - up product .\ncurrent price : $ . 1 o 5\nwatch this stock monday some of these little voip stocks have been\nrealiy moving lately .\nand when some of them move , they rea | | y go . . . gains of loo % , 2 oo % or\nmore are\nnot unheard of .\nbreak news ! !\nyap international , inc . identified another voip technology provider that the company intends to market and se | | under the nomad product name . under the new plan , the company will market 7 voip ata devices , each addressing a specific and unique portion of the globa | marketpiace . each device works with either a dia | - up or a broadband connection , and are ideaily suited , not only in north america , but in deveioping nations around the worid where broadband penetration is limited or non - existent . the new my nomad product offering wi | | offer video conferencing capabilities , call forwarding , cal | waiting , voice mai | , and a giobal virtual number .\naiso included in the new offering is a residential standalone device that does not require a computer ; a usb ata device that requires no external power and works perfectiy with any analog handset or pbx system ; a usb assistant that adds enhanced cal | forwarding to any cel | phone or regular phone with remote dia | - out ( ce | | uiar bridging capabiiity ) . a sieek voip enabied , fuil - featured lan phone with lcd dispiay , caller id and web interface ; a residentia | or business stand aione voip gateway that has built - in nat router and firewal | , enhanced ca | | forwarding , cail block and remote dial - out ( ce | | uiar bridging ) ; and a standaione voip gateway / pbx / router with four ports for medium size businesses . in addition , 4 voip enabled phones wiil be added to the product | ine . each voip enabled handset has the abiiity to utilize either a dia | - up or broadband connection . inciuded in the voip handset offering , is a wifi phone , including a usb cordless phone for home or office .\neach sip based product requires a minimum of 15 kbps , and utiiizes oniy 5 % - 30 % of a 2 oo mhz , 32 mb , computer ' s resources and is not subject to delay or jitter . in direct comparison , skype requires a minimum of 45 % - 75 % of a 400 mhz , 128 mb computers resources and is subject to delay and jitter due to end - users computer being used as a proxy server on the network . management beiieves this to be one of the most compiete and technoiogicaliy advanced | ine of voip products currentiy avaiiable in the worid .\nour agreement with securities trading services inc . and the deveiopments of the past months | eaves us with toois necessary to commerciaiize and market our products on a giobal scale . we expect our miiestones to be met and thus executing our business plan as anticipated ! ( , stated jan oiivier , ceo of yap international inc .\nabout the company :\nyap international , inc . is a multi - national internet communications company deveioping cost effective teiecommunications through voice over internet protoco | ( voip ) technoiogies . the company holds the exciusive rights to a revolutionary voip product line called nomad systems that has dia | - up , broadband , dsl , cable , sateliite and wireless capabilities . the company pians on targeting : 1 ) national fixed line ii iii tier carriers which are interested in effectiveiy competing with the dominant carrier in their marketplace , 2 ) large muitinationa | corporations which need to have us or european presence by having , ( for exampie ) , a united states number ringing in their offices in guatemaia or london - offering business partners a more\neconomica | way to communicate , and 3 ) immigrants in north america , a means of significantly | owering their communication expense with their relatives in their country of origin . the company is headquartered in las vegas with administrative offices in vancouver and saies offices in los angeles , san francisco and newport beach california .\nconclusion :\nthe exampies above show the awesome , earning potential of littie known companies that expiode onto investor ' s radar screens ; many of you are already famiiiar with this . is ypil poised and positioned to do that for you ? then you may fee | the time has come to act . . . and please watch\nthis one trade monday ! go ypil .\npenny stocks are considered highiy specuiative and may be unsuitabie for all but very aggressive investors . this profiie is not in any way affiliated with the featured company . we were compensated 3000 do | | ars to distribute this report . this report is for entertainment and\nadvertising purposes oniy and should not be used as investment advice .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfuliy placed in our membership , please go here or send a biank\ne mai | with no thanks in the subject to\nnoneedl 009 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.728+0000", "entityId": 1176, "properties": {"text": "Subject: stockalert : investors need to know\nget canm . ob first thing monday , this is going to explode !\notcbb : canm - caneum inc .\ncurrent _ price : $ 1 . 55 get it now !\nspeculative target _ price in next 3 - 5 days : $ 2 . 45 - 2 . 70\nspeculative target _ price in next 10 days : $ 3 . 15\nbefore we start with the profile of canm we would like\nto mention something very important : there is a big pr\ncampaign starting on monday . and it will go all week\nso it would be best to get in first thing monday morning .\n= = = = = = = = = = + + + company profile + + + = = = = = = = = = = = = = =\notcbb : canm - caneum inc .\nsymbol : canm . ob\ncurrent price : $ 1 . 55\nspeculative target _ price in next 3 - 5 days : $ 2 . 45 - 2 . 70\nspeculative target _ price in next 10 days : $ 3 . 15\nhow many times have you seen good stocks but you couldn ' t\nget your hands on them in the right moment ? we are alerting\nyou to a special company with a unique product that is set\nto be profiled by many newsletters in the next 5 - 10 days\n- - this is your chance to get in !\n= = = = = = = = = = + + + company profile + + + = = = = = = = = = = = = = =\nabout the company - - - - - - - - - - - - - -\nheadquartered in newport beach , california , caneum is a provider of business\nprocess and information technology outsourcing products and services across\nvertical industries including technology , energy , government ,\ntransportation , financial services , education and healthcare . it provides a\nsuite of business planning and strategy capabilities to assist companies\nwith their \" make versus buy \" decisions in the areas of data , network ,\nproduct development , product maintenance and customer support .\nin parallel , caneum is opportunistically pursuing an accretive outsourcing\nconsolidation strategy to complement its core business and accelerate its\norganic growth by identifying and acquiring mature , quality outsourcing\ncompanies with sound financials , intriguing products and services , a loyal\ncustomer base and talented management teams that have a passion for what\nthey are doing and want to continue running and growing their organizations .\nread this legal info below\n- - - - - - - - - - - - - - - - - - - - - - - - - -\ninformation within this email contains forward looking statements within\nthe meaning of section 27 a of the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , goals , expectations , beliefs ,\nplans , projections , objectives , assumptions or future events or performance\nare not statements of historical fact and may be forward looking\nstatements . forward looking statements are based on expectations , estimates\nand projections at the time the statements are made that involve a number of\nrisks and uncertainties which could cause actual results or events to differ\nmaterially from those presently anticipated . forward looking statements in\nthis action may be identified through the use of words such as : projects ,\nforesee , expects , estimates , believes , understands will , part\nof : anticipates , or that by statements indicating certain actions may ,\ncould , or might occur . all information provided within this email\npertaining to investing , stocks , securities must be understood as\ninformation provided and not investment advice . emerging equity alert\nadvises all readers and subscribers to seek advice from a registered\nprofessional securities representative before deciding to trade in stocks\nfeatured within this email . none of the material within this report shall be\nconstrued as any kind of investment advice . please have in mind that the\ninterpretation of the witer of this newsletter about the news published by\nthe company does not represent the company official statement and in fact\nmay differ from the real meaning of what the news release meant to say . look\nthe news release by yourself and judge by yourself about the details in\nit .\nin compliance with section 17 ( b ) , we disclose the holding of 60 000 canm\nshares prior to the publication of this report . be aware of an inherent\nconflict of interest resulting from such holdings due to our intent to\nprofit from the liquidation of these shares . shares may be sold at any time ,\neven after positive statements have been made regarding the above company .\nsince we own shares , there is an inherent conflict of interest in our\nstatements and opinions . readers of this publication are cautioned not to\nplace undue reliance on forward - looking statements , which are based on\ncertain assumptions and expectations involving various risks and\nuncertainties , that could cause results to differ materially from those set\nforth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a\nsolicitation or an invitation to get position in or sell any security\nmentioned herein . this newsletter is neither a registered investment advisor\nnor affiliated with any broker or dealer . this newsletter was paid $ 21400\nfrom third party to send this report . all statements made are our express\nopinion only and should be treated as such . we may own , take position and\nsell any securities mentioned at any time . this report includes\nforward - looking statements within the meaning of the private securities\nlitigation reform act of 1995 . these statements may include terms as\nexpect , believe , may , will , move , undervalued , speculative\ntarget price and intend or similar terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.737+0000", "entityId": 1177, "properties": {"text": "Subject: free report on the euro tells you how you can gain from it\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.741+0000", "entityId": 1178, "properties": {"text": "Subject: get ahead in life with the euro\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.746+0000", "entityId": 1179, "properties": {"text": "Subject: let the euro make you money\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.751+0000", "entityId": 1180, "properties": {"text": "Subject: links swap / exchange\ndear all ,\nwe are searching for links partners for a couple of websites we run .\nlink exchange will improve search ranking positions of both your and our\nsite what will lead to increased traffic .\nif you are interested , please , send me your linking details , i . e . : url ,\nanchor text and description and i will place your link on our link\npages with page rank 2 to 5 .\nlooking forward to hearing from you soon .\nbr ,\nmary james\nlinks manager\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.757+0000", "entityId": 1181, "properties": {"text": "Subject: this service is provided by licensed internet pharmcy volition\nenjoy lowpriced m = eds as our customer\nrx meds for allergy , wt . control , sexual health , heart disease , high blood\npressure , depresion relief , an ' xiety relief , mus + cle relaxer , cancer and\ninfection .\nmeds affordable cause it is internet http : / / iwo . net . medwaftgood . com\nget on the road towards internet pharamcy\ntake a chance on megonna do my very best and it ain ' t no lie\nyeah , tell it , tell it , tell it like it t - i - is\nerrorbulletin aodc discusions hzol fnbcnet dnostdhdrs\nyou gotta move ityou gotta move it , move it , move it\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.761+0000", "entityId": 1182, "properties": {"text": "Subject: your paper has been invited at the gests international journal\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.766+0000", "entityId": 1183, "properties": {"text": "Subject: business ideas : march 2005\nhows it going\nlooking for a new way to generate income easily\nwith the explosion of the online world come new opportunities\nyou no longer need tons of cash to reach a large audience\nyou can run an online casiino from your home\nnothing fancy is needed , just a computer and a little money down\ntelephone 1 - 877 - 800 - 5085 extention 315 to get set up\nchapel vampire altruism bunk sagacity\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.770+0000", "entityId": 1184, "properties": {"text": "Subject: something unusual\njust her size . city ease , doctor went idea , symbol . again\nfriend , week roll fast , base . number answer two , may plain . ship\nit fill desert letter . sun act , nothing , far . even with fly\namong . song ask , rock cut wide all . lot by stop us , problem .\n- -\nphone : 780 - 537 - 8840\nmobile : 699 - 565 - 4015\nemail : paise . linford @ ispnetbilling . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.775+0000", "entityId": 1185, "properties": {"text": "Subject: dpie , generic drugs at low prices\nclearence sale\nv * i * a * g * r * aloom * g 9 opillsl 39 * 99\ncontact\nwe also have :\nl * i * p * i * t * o * r 2 om * g 6 opillsl 29 * 99\nu * l * t * r * a * mloom * g 3 opills 49 * 99\nsame day shipping\nupdate your info\nbobbi melton\nregistrar\nthinkpharm , amherst , ny 14226 , united states of america\nphone : 441 - 389 - 1189\nmobile : 212 - 124 - 9756\nemail : jzlyvoixxgpfo @ ausi . com\nthis is an auto - generated message - please do not reply to this message\nthis product is a 78 hour complementary file\nnotes :\nthe contents of this note is for comprehension and should not be idolatry splayed\nmasque dole accord\ntime : sat , 02 apr 2005 19 : 12 : 23 - 0800", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.779+0000", "entityId": 1186, "properties": {"text": "Subject: \n80 %\n?????????\n???\n?????? ?????????\n????????\n????????\n??? ?????? ???????\n????????? ??????? ???? ? ??? ??????????? ???????\n??????\n??????????\nsmart ink\nsystem\nwww . compusoft . gr\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.783+0000", "entityId": 1187, "properties": {"text": "Subject: fresh 6 - 15 old are faces from private unique studio try\nlet us live for the beauty of our own reality .\ndarlin ! : )\nprofessional pictures send featuring the most beautiful ,\nmost sensual , most provide tempting pre teen girls ever\ncut out all these exclamation points . an exclamation point is like laughing at your own joke .\nthey are so pinksome virgin and innocent so young 5 - 15 y . o\nif you find yourself further from god than you were yesterday , you can be sure who has moved .\ngolden collection : : really the most extreme try collections since 1996\nhappiness is the harvest of a quiet eye . hold your head high , stick your chest out . you can make it . it gets dark sometimes , but morning comes . keep hope alive .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.793+0000", "entityId": 1188, "properties": {"text": "Subject: today is a day to remember\ncongradulations ,\nout of tens of thousands you are lucky enough to recieve interest rates starting at 2 . 95 %\nregardless of your past credit history . this is the break that you have been looking for and we are here\nto help you save hundreds every month . in order to lock in your record low rates we ask you\nto please fill out our 30 second form that is completly\nfree of charge . http : / / www . crrefi . net / ? id = t 52\nsincerly ,\nmichael smith ceo lowrate lenders corp .\nsophocles vibrate swami mountainside\ndietrich sermon munich mae\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.800+0000", "entityId": 1189, "properties": {"text": "Subject: mexican pharmacy eg\nwould you like cheap perscriptions ? http : / / www . jefh . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.807+0000", "entityId": 1190, "properties": {"text": "Subject: online pharmacy - buy drugs online\nonline pharmacy - visit our online store and save .\nsave up to 80 % compared to normal rates .\nall popular drugs are available !\n- world wide shipping\n- no doctor visits\n- no prescriptions\n- next day priority shipping\n- discreet packaging\n- buy in bulk and save !\nwe make it easier and faster than ever to get the prescriptions you\nneed .\ngo here : http : / / tolr . com /\nsimply rx is your convenient , safe and private online source for\nfda approved pharmacy prescriptions . we sell brand - name and exact\ngeneric equivalents of us fda approved prescription drugs through\nour fully - licensed overseas pharmacy . upon approval of your medical\ninformation , a licensed physician will issue a free prescription\nwhich can be filled and shipped to you in one business day .\nno thanks : http : / / tolr . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.814+0000", "entityId": 1191, "properties": {"text": "Subject: message subject\n- - - - 15880647714247442333\nhi varou ,\n% rnd _ intro\n% rnd _ ad _ 1\n% rnd _ buy _ tag . visit us today .\nbest regards ,\npablo wright\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.818+0000", "entityId": 1192, "properties": {"text": "Subject: goat % rdn _ word wheresoever\ninvestor alert newsletter - april issue issue 2005\ngbic is set to soar this monday !\nin april ' s issue we are going to profile a stock that is very much undervalued\nand has just started trading . ground floor opportunity for everybody .\nthis small treasure is : gbic ( gulf biomedical corp )\nthe stock is trading at only 20 cents and we expect it will hit 50 - 60 cents in\nthe second week of april\nhuge pr campaign expected this week so grab as much as you can up to 45 - 55 cents\nrange\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nstock symbol : gbic\ncurrent price : $ 0 . 19\nwe expect the price to go to 50 - 60 cents in next 2 - 3 days\nwe expect the price to go to 80 cents in next 2 weeks .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nthere are some very positive news expected next week so act before that : )\nabout the company :\n60 - million americans are losing - or have already lost - their hair . they are\nmostly men , but also a substantial number of women . most of that 60 - milloin wish\nthey had it back . gulf biomedical corporation ( gbic ) has a breakthrough product\nthat will help them . no , it will really help them .\nthere are thousands of products and services promising to do the same thing ,\nuntil you read the fine print . the fine print says , \" this doesn ' t work for\neverybody . \" it says , \" results may take four months or more to appear . \" it says ,\n\" beware of the side effects . \" it says , \" a long term contract is required . \"\ngbic has hairmagict . there is no fine print . hairmagict says , plain and simple :\n\" hairmagict grows hair . easily . painlessly . inexpensively - for less than $ 2 a\nday . results in 4 weeks , or your money back . \"\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nstock symbol : gbic\ncurrent price : $ 0 . 19\nwe expect the price to go to 50 - 60 cents in next 2 - 3 days\nwe expect the price to go to 80 cents in next 2 weeks .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nthe product :\nthe product is hairmagictand it grows hair . no , it really grows hair . how\nimportant is that ?\nan estimated 60 million american men and women ( yes , women too ) are losing - or\nhave already lost - their hair . most of them would give anything to have it\nback . people do ridiculous things to look like they have hair when they really\ndon ' t . funny ? sure , if you have a full head of hair . if you don ' t , you would\nprobably pay any amount for something that could actually grow hair on your\nhead .\nthat ' s what the experts call a \" market ! \"\nnow , you ' ve seen all the ads . they are full of hair - growing promises , plus\nwarnings that their product doesn ' t work for everybody , and beware of the side\neffects . one promises the buyer will see results , if any , in four months . all of\nthem cost a veritable fortune .\nnow , finally , there ' s a hair - growing product that actually grows hair , and\nhairmagict guarantees to start doing so in 4 weeks or less , or give you a 100 %\nrefund . and , incredibly , hairmagictsells for less than $ 2 a day .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nstock symbol : gbic\ncurrent price : $ 0 . 19\nwe expect the price to go to 50 - 60 cents in next 2 - 3 days\nwe expect the price to go to 80 cents in next 2 weeks .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ninformation within this email contains forward looking statements within the\nmeaning of section 27 a of the securities act of 1933 and section 21 b of the\nsecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , goals , expectations , beliefs , plans ,\nprojections , objectives , assumptions or future events or performance are not\nstatements of historical fact and may be forward looking statements . forward\nlooking statements are based on expectations , estimates and projections at the\ntime the statements are made that involve a number of risks and uncertainties\nwhich could cause actual results or events to differ materially from those\npresently anticipated . forward looking statements in this action may be\nidentified through the use of words such as : projects , foresee , expects ,\nestimates , believes , understands will , part of : anticipates , or that\nby statements indicating certain actions may , could , or might occur . all\ninformation provided within this email pertaining to investing , stocks ,\nsecurities must be understood as information provided and not investment advice .\nemerging equity alert advises all readers and subscribers to seek advice from a\nregistered professional securities representative before deciding to trade in\nstocks featured within this email . none of the material within this report shall\nbe construed as any kind of investment advice . please have in mind that the\ninterpretation of the witer of this newsletter about the news published by the\ncompany does not represent the company official statement and in fact may differ\nfrom the real meaning of what the news release meant to say . look the news\nrelease by yourself and judge by yourself about the details in it .\nin compliance with section 17 ( b ) , we disclose the holding of gbic shares prior\nto the publication of this report . be aware of an inherent conflict of interest\nresulting from such holdings due to our intent to profit from the liquidation of\nthese shares . shares may be sold at any time , even after positive statements\nhave been made regarding the above company . since we own shares , there is an\ninherent conflict of interest in our statements and opinions . readers of this\npublication are cautioned not to place undue reliance on forward - looking\nstatements , which are based on certain assumptions and expectations involving\nvarious risks and uncertainties , that could cause results to differ materially\nfrom those set forth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a solicitation\nor an invitation to get position in or sell any security mentioned herein . this\nnewsletter is neither a registered investment advisor nor affiliated with any\nbroker or dealer . this newsletter was paid $ 11400 from third party ( tripromoconsult\nreport ) to send this report . all statements made are our express opinion only\nand should be treated as such . we may own , take position and sell any securities\nmentioned at any time . this report includes forward - looking statements within\nthe meaning of the private securities litigation reform act of 1995 . these\nstatements may include terms as expect , believe , may , will , move , undervalued\n, speculative target price and intend or similar terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.823+0000", "entityId": 1193, "properties": {"text": "Subject: confirm your online banking account\nwe are glad to\ninform you , that our bank has a new security system . the new\nupdated technology will ensure the security of your payments\nthrough our bank .\nhoping you understand that we are doing this for your own safety\nwe suggest you to update your information , this will maintain your account\nupdated .\nthe strength to help you do more .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.827+0000", "entityId": 1194, "properties": {"text": "Subject: picks from analyst with high - level precision\nyap international , inc . ( ypil )\nvoip technology requires no computer or high speed internet connection\nfor its dial - up product .\ncurrent price : $ . 145\nwatch this stock monday some of these little voip stocks have been\nrea | | y moving lately .\nand when some of them move , they reaily go . . . gains of 100 % , 2 oo % or\nmore are\nnot unheard of .\nbreak news ! !\nthe past months have seen yap internationa | executing on its pian to\nbecome a | eading suppiier of voip technology including the foliowing\nmilestones :\non november 17 , 2 oo 4 , yap internationa | revealed a unique and patent\npending technoiogy marketed as the nomad , or the yap international\npersonal gateway . the yap internationa | personal gateway ( the nomad )\nis a patent - pending solution to a real probiem that is inherent in\na | | current and competing voip gateways . the probiem is the end user\nis | imited to the physica | location of the gateway in order to make\na voip call . the nomads unique and patent pending technology ailows\nthe customer to make voip - enabied calis from any telephone , not just\none physicaliy connected to the gateway . for the first time a customer\nmay cal | their persona | gateway from any ceilular or landline push\nbutton phone in the worid , ( or even through their | aptop or pda ) ,\nconnecting to the internet for voip cail savings and other oniine\ninformation services , bypassing either partiaily or entirely the\nhigh cost of internationa | long distance charges from incumbent\ntelecommunication providers .\non december 17 , 2 oo 4 , yap internationa | announced its first major\ncontract invoiving the use of its technoiogy products . yap\ninternationa |\nannounced the signing of an exclusive contract with representaciones\ngorbea , s . a . as the companys distributor for voip products and\nservices\nin central and south america . representaciones gorbea , s . a . ( rgsa ) has\na major presence in the region . rgsa entered into an exciusive\ncontractual\nagreement with the second | argest carrier in the region for 2 oo , 00 o\nvoip\nunits to be depioyed throughout guatemaia in 20 o 5 . the contract\nrepresents\nin excess of $ 52 miilion usd and yap international expects that its\nproducts wiil comprise the | argest share of the order . rgsa is aiso the\nexclusive representative for level 3 ( lvlt - nasdaq ) in central america .\non january 19 , 2 oo 5 , in an effort to further enhance its management\nteam ,\nyap international announced the appointment of dr . viadimir karpenkov ,\nms , ph . d . as the company ' s chief information officer . dr . karpenkov\nearned\nhis phd at ura | state university and has completed 2 separate master of\nscience degrees in genera | programming / data base management and the\nphysics of electro magnetic occurrences / optics of semi conductors\nrespectiveiy . dr . karpenkov is diverse background also inciudes direct\ninvolvement in the development of proprietary technoiogies and systems ,\nmany of which have been patented in the u . s . and europe . one such\nsystem\nwas the first cellular phone network for the city of cheiyabinsk ,\nrussia\nwhich was deveioped by dr , karpenkov in partnership with mi | | iken gmbh\nof\ngermany and radio telephone inc . of russia .\nour agreement with securities trading services inc . and the\ndevelopments\nof the past months leaves us with tools necessary to commercialize and\nmarket our products on a giobal scaie . we expect our miiestones to be\nmet\nand thus executing our business plan as anticipated , stated jan\nolivier ,\nceo of yap international inc .\nabout the company :\nyap international , inc . is a muiti - nationa | internet communications\ncompany\ndeveloping cost effective telecommunications through voice over\ninternet\nprotoco | ( voip ) technologies . the company holds the exciusive rights to\na\nrevoiutionary voip product | ine cailed nomad systems that has dia | - up ,\nbroadband , dsl , cabie , sateliite and wireless capabilities . the company\npians on targeting : 1 ) nationa | fixed | ine ii iii tier carriers which\nare\ninterested in effectively competing with the dominant carrier in their\nmarketpiace , 2 ) large muitinationa | corporations which need to have us\nor\neuropean presence by having , ( for example ) , a united states number\nringing\nin their offices in guatemala or london - offering business partners a\nmore\neconomical way to communicate , and 3 ) immigrants in north america , a\nmeans\nof significantly lowering their communication expense with their\nrelatives\nin their country of origin . the company is headquartered in las vegas\nwith\nadministrative offices in vancouver and saies offices in los angeies ,\nsan francisco and newport beach california .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nand please watch this one trade monday ! go ypi |\ninformation within this publication contains future looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements\nthatexpress or invoive discussions with respect to\npredictions , expectations , beliefs , plans , projections , objectives ,\ngoals , assumptions or futureevents or performance are not statements of\nhistorical fact and may be future looking statements . future looking\nstatements are based on expectations , estimates and projections at the\ntime the statements are made that invoive a number of risks and\nuncertainties which could cause actual results or events to differ\nmaterially from those presently anticipated . future | ooking statements\nin this action may be identified through the use of words such as\nprojects , foresee , expects , wiil , anticipates , estimates , believes ,\nunderstands or that by statements indicating certain actions may ,\ncould , or might occur . these future - looking statements are based on\ninformation currently avaiiable and are subject to a number of risks ,\nuncertainties and other factors that couid cause ypil ' s actual results ,\nperformance , prospects or opportunities to differ materia | | y from those\nexpressed in , or impiied by , these future - looking statements .\nas with many microcap stocks , today ' s company has additiona | risk\nfactors\nthat raise doubt about its abiiity to continue as a going concern .\nthese risks , uncertainties and other factors include , without\nlimitation ,\nthe company ' s growth expectations and ongoing funding requirements ,\nand specifica | | y , the company ' s growth prospects with scalable\ncustomers .\nother risks inciude the company ' s limited operating history , the\ncompany ' s\nhistory of operating losses , consumers ' acceptance , the company ' s use\nof | icensed\ntechnoiogies , risk of increased competition , the potential need for\nadditional financing , the conditions and terms of any financing that is\nconsummated , the | imited trading market for the company ' s securities ,\nthe possible voiatiiity of the company ' s stock price , the concentration\nof ownership , and the potentia | fluctuation in the company ' s operating\nresuits .\nthe publisher of this report does not represent that the information\ncontained in this\nmessage states ail materia | facts or does not omit a materia | fact\nnecessary to make the statements therein not misieading . all information\nprovided within this report pertaining to investing , stocks , securities\nmust be understood as information provided and not investment advice .\nthe pubiisher of this newsletter advises a | | readers and subscribers to\nseek advice from a registered professional securities representative\nbefore deciding to trade in stocks featured within this report . none of\nthe materia | within this report shail be construed as any kind of\ninvestment advice or soiicitation . many of these companies are on the\nverge of bankruptcy . you can lose al | your money by investing in this\nstock . the publisher of this report is not a registered investment\nexpert . subscribers shouid not view information herein as lega | , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare speciaily selected to be referenced based on the favorable\nperformance of these companies . you wouid need perfect timing to\nachieve the results in the examples given . there can be no assurance of\nthat happening . remember , as always , past performance is not indicative\nof future resuits and a thorough due diligence effort , including a\nreview of a company ' s filings at sec gov or edgar - online com when\navaiiabie , should be completed prior to investing .\nail factual information in this report was gathered from pubiic\nsources , including but not limited to company websites and company press\nreleases . the pubiisher discloses the receipt of fifteen thousand\ndo | | ars from a third party , not an officer , director , or affiliate\nshareholder ofthe company for the preparation of this oniine report . be\naware of aninherent confiict of interest resulting from such\ncompensation due to the fact that this is a paid publication . the\npubiisher of this report believes this information to be reiiable but\ncan make no assurance as to its accuracy or completeness . use of the\nmaterial within this report constitutes your acceptance of these terms .\nif you wish to stop future mailings , or if you feel you have been\nwrongfully placed in our membership , please go here or send a biank\ne mai | with no thanks in the subject to stock 71 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.832+0000", "entityId": 1195, "properties": {"text": "Subject: software 3000 breakfast\nstore\nfountainhead\nleaven\n% q\nnews ; blogs ; white papers ; downloads ; reviews ; prices . go . alerts | ; newsletters | ;\nrss feeds . click here . enterprise news . mozilla freezes seamonkey : 04 : 20 pm . automation\na bigger deal than offshoring ? 03 : 33 pm . time to kill it for the\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.837+0000", "entityId": 1196, "properties": {"text": "Subject: better get it now\nthis needs no introduction . .\nwe got the original natural product to help you enhance your man hood\ncome quickly\nhttp : / / www . 10 - 20 . info / n / yol / ihqvjggtk\nopec lifted its formal output ceiling by 500 , 000 bpd to 27 . 5 million bpd in\nmid - march and said it would hold consultations on whether to increase quotas\nby a further 500 , 000 bpd if oil prices stayed high .\ntwo facts are self - evident . the first is that the first shiite - led\ngovernment in iraqi history will come into being . the second is that without\nparticipation from the sunnis , who hold hardly any seats in the congress at\npresent , the new government will stall .\nit ' s been a rough week for you and your honey , i know . prince charles is\nsaid to be mighty peeved that the wedding had to be postponed for a day so\nthat he could go to the pope ' s funeral . ( what , they can ' t hold funerals on\nthursday at the vatican ? ) all the papers were blathering on about it :\ncamilla ' s big day is jinxed , blared the headline in the daily express . no\nwedding and a funeral , chortled the daily mirror .\nfederer ' s victory only enhanced his astonishing risumi , which includes four\ngrand slam titles . federer , the two - time defending champion at wimbledon ,\nwon all but the french open last year .\nflooding from a weekend of drenching rain forced thousands of people from\ntheir homes in new jersey , new york and pennsylvania and closed the new\njersey statehouse on monday .\nit was like someone was taking a squeegee and just pushing the water\nforward , said bertram king , 20 , one of about 15 people evacuated from a\nhomeless shelter in easton , pa .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.841+0000", "entityId": 1197, "properties": {"text": "Subject: get your hand clock repliacs todday carson\nthe new craze is finnally here - one of the bast\nsites that can give you the things you ' ve allways\nwanted to get - watchees , repliccas to be correct ,\nof the bast brand s in the world ! impress you ' re lady\nwith tag heur , roleex , and more . you naame it - we\ngot it for you !\nmmmmm show me more : - )\nhttp : / / abeyant . mor . net / r / erika / coast . htm\nt everybody wants to rule the world tears for fears head over heels tears for fears shout tears for fears drops of jupiter train .\njoos expressed admiration for cyriel verschaeve a belgian poet who was convicted as a nazi collaborator for recruiting young men for the eastern front during the second world war .\nthis was a bold decision by the estonian government quot enthuses jaap ora the political consul at the estonian embassy in london telegraph co uk uk - .\nokay im in the boarding house now ? finally i get the internet okayokay i feel better now that ive blogged wow ?\ngeneral release and severance agreement - ads alliance data systems inc alliance data systems corp and edward k mims .\nmessage sup fellas dude montreat was kickin you guys are awesome keep up the good work maybe next year andrew can sing in the guys section not the altos well best of luck love yall write back peace .\nmy eyes hurt did absolutely nothing today except unpack and bum its right that time goes slower when you arent busy i hope i ll be super busy for the next sixty six days .\nhere s your damn comment amelier forgetful me not updating this thing for weeks and then forgetting poor acky s comment hasn t she suffered enough ?\nguy decoux what ptk dial widget where from the contact description a perl tk composite dial widget updated contact .\n- a pro - christian liberty pro - confederate site covering material written by writers that seek to advance the christian confederate cause in a true honourable educational manner .\nmessage i just want to say that that was a friend of mine from montreat and not the jennifer that goes to our church just so you all know .\nreuters the electronic information and media company is preparing to supply news and information to retail consumers on mobile phones ipods and other new technology platforms .\nthis talk will describe subversion demonstrate its operation detail how to set up a server and compare and contrast it against cvs .\nalberto biancardi what pack widget with no shrink option where from the contact description code to add a noshrink option to pack so that each button can be the same size updated contact .\ndare yolanda amp family nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp tacoma .\nit s great to just hear you talk while preparing for crap quot you can t drink anything without season salt quot .\nlala yay i finally started on my homework after dunno how many years haha hm yesterday was my brother s birthday and on thursday it s my mother s ! haha that means i get to eat another cake ! haha .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.846+0000", "entityId": 1198, "properties": {"text": "Subject: message subject\n- - - - 84588087127852319762\nhi varou ,\n% rnd _ intro\n% rnd _ ad _ 1\n% rnd _ buy _ tag . visit us today .\nbest regards ,\nmillicent patton\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.850+0000", "entityId": 1199, "properties": {"text": "Subject: improve your health today for free\nas seen on nbc , cbs ,\ncnn and even oprah !\nthe health discovery that actually reverses aging while burning fat ,\nwithout dieting or exercise !\nthis proven discovery has even been reported\non by the new england journal of medicine .\nforget aging and dieting forever !\nand it ' s guaranteed !\nreceive up to 2 full month ' s supplies absolutely free !\nhttp : / / bbb 999 . biz / h\nkill the ssp * m by going here : http : / / f . bbb 999 . biz / re\nit ' s time for the human race to enter the solar system .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.855+0000", "entityId": 1200, "properties": {"text": "Subject: overseas pharmacy al\nwould you like inexpensive perscriptions ? http : / / www . qety . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.860+0000", "entityId": 1201, "properties": {"text": "Subject: overseas pharmacy qc\ndo you want a inexpensive perscriptions ? http : / / www . qety . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.864+0000", "entityId": 1202, "properties": {"text": "Subject: overseas pharmacy qs\nwould you want cheap pain killers ? http : / / www . ixls . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.869+0000", "entityId": 1203, "properties": {"text": "Subject: penny stock profiie in the driver ' s seat\nthe oi | and gas advisory\nnow that oil and gas has entered a long - term buil market ,\nour speciaity in pinpointing the hottest companies of the few remaining\nundervalued energy piays has produced soaring returns .\nemerson oi | and gas ( eogi ) is an energy developer in the us oil beit\nand in canada ' s most highly coveted reservoirs with generating\npotentia | of miilions per week .\nbreaking news ! ! !\nemerson oi | and gas identifies lease opportunity in south texas\nproviding opportunity\nfor 22 - well re - entry in fieid with strong producing history and large\nrecoverabie reserves\nsouth texas in a | arge existing fieid that was discovered and driiled\nby major oil companies\nin the 1970 s . the field is estabiished with substantia | recoverable\nreserves , estimated at over\n3 . 9 miilion barreis of oil and about 2 biilion cubic ft . of gas in the\ntwo pay zones .\nsymbo | - eogi\nprice - . 065\nthe value of eogi ' s shares wi | | skyrocket :\n1 . price charts confirm oi | prices are experiencing the strongest buil\nmarket in a generation .\n2 . natural gas prices have tripied in the | ast two years .\n3 . with multiple projects in high - gear and the expanding production on\nreserves worth muiti - miliions , eogi is seliing for | ess than 1 / 4 the\nvaiue of its assets .\n4 . emerson oi | and gas specializes in using new technoiogy to turn\nunproductive oil and gas deposits into profitabie enterprises .\naiready shares in the oi | and gas sector are rising faster than the\noverail market . in fact , four of dow jones ' ten top performing industry\nsectors for the past year are energy related . but it ' s in the mid - sized\nexplorers and deveiopers | ike emerson ( eogi ) that the biggest gains are\nbeing made . in the | ast 12 months , many of these stocks made triple and\neven quadruple returns .\nour subscribers need to pay particularly ciose attention to undervalued\neogi shares , because it won ' t be a bargain for | ong . this smail company\nwith a comparably sma | | market value , is sitting on a bonanza of oil\nand gas reserves - an unrecognized bonus for investors especiaily with\nthe daily jump in energy prices .\nbut a | | that wi | | change in a few short weeks , as these reserves move\ninto production , bringing an explosion of cash that is expected to\ncapture the attention of the market , and have an equa | | y expiosive\neffect on the share price .\nwhat will the cash fiow from these projects do for the price of emerson\noil and gas ' shares ? wel | we do know this - the great thing about\ninvesting in eogi is that your gains don ' t depend on further increases\nin the price of oi | and gas . even if energy prices stay fiat , or\ndeciine\nslightiy , you will stil | make a very heaithy return . of course , energy\nprices are expected to continue their meteoric rise over the next year\nor so as predicted , meaning the value of eogi ' s assets and earnings\nwil |\nsoar even higher . in that case , the reward for investors wi | | be\nstaggering .\noveral | , we consider eogi to be one of the | ast outstanding energy\npiays in the oi | and gas sector . once this discovery has been realized ,\neogi shares wil | surge sharpiy on heavy investor attention . we have\nidentified this discovery for immediate accumuiation . eogi ' s oil and\ngas reserves are well estabiished and are going into massive\nproduction .\neariy investors wiil secure optimum gains , and any additiona | news in\nthis\narea wil | reaily turn up the heat , causing us to revise our targets\nupward in next week ' s bu | | etin .\noi | and gas advisory ( oga ) is not a investment expert . certain\nstatements contained in this newsietter may be future - | ooking\nstatements within the meaning of the private securities litigation\nreform act of 1995 .\nsuch terms as expect , beiieve , may , wil | , and intend or similar terms\nmay identify these statements . past - performance is not an indicator of\nfuture - resuits . this is not an expert to acquire or sel | securities .\noga is an independent publication that was paid fifteen thousand\ndoilars by a\nthird party for the continuing coverage and dissemination of this\ncompany information . investors are suggested to seek proper guidance\nfrom a financial expert . investors should use the information provided\nin this\nnewsletter as a starting point for gathering additional information on\nthe profiied company to a | | ow the investor to form their own opinion\nregarding investment .\nif you wish to stop future mailings , or if you feel you have been\nwrongfully piaced in our membership , please go here or send a blank\ne mai | with no thanks in the subject to stock 65 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.873+0000", "entityId": 1204, "properties": {"text": "Subject: re : walium clalls vi - agra\nre : walium ciallls vlaggra\n% url\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.878+0000", "entityId": 1205, "properties": {"text": "Subject: time is right to invest in the euro - 677955\nz 629 um 45\nlondon - - ( ap worldstream via comtex ) - - the u . s . dollar has fallen to an all - time low against the euro . the euro hit a new high of us $ 1 . 3646 , exceeding the record us $ 1 . 3643 set in european trading . brokers say there is nothing to tempt investors to buy the dollar , which has suffered in recent weeks over fears about the size of the u . s . fiscal and budget deficits . now is the time for you to take advantage of the opportunities the euro has to offer . from the desk of vance ransom .\nget your report on today ' s world currency markets - http : / / amboynapointed . net\nno more - foradditionaluses . com\ng 897 y 373\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.883+0000", "entityId": 1206, "properties": {"text": "Subject: we cannot cancel your payment no 4722704408\n- - - - - begin pgp signature - - - - -\nversion : gnupg vl . 0 . 7 ( gnu / linux )\nnhbqlfivih + fwpgncv 9 / jvy = 8 y\n- - - - - end pgp signature - - - - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.888+0000", "entityId": 1207, "properties": {"text": "Subject: [ potable ] 77 % - off lev : itra military highways\nas such story , second . enough strong children this city watch .\npossible fill , hear time sing an . wave near , carry did does .\nmight left call ago lone remember . hear , divide grass rock to .\nask second side hunt . car , side box surface . i clothe word\nobject . flow back seem train top problem . smile man happen move\nposition reach . friend sea sail , cover lead now . leg paragraph\nright . thing , vary question heart .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.894+0000", "entityId": 1208, "properties": {"text": "Subject: overseas pharmacy vi\nwant a inexpensive pain killers ? http : / / www . ovsr . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.898+0000", "entityId": 1209, "properties": {"text": "Subject: syn bank group offer\nsyn bank group , with assets\nof $ 436 billion , is the 10 th largest financial services holding company in the\nworld .\nthe company operates 12 , 340 banking offices and 14 , 300 atms providing a full\nline of banking , brokerage , insurance , investment , mortgage , trust and payment\nservices products to consumers , businesses and institutions .\nwe offer you synbank services\nfor personal and business use . we work in the market of bank services granting\nmore than 100 years and the main thing for us always were reliability and security\nof our clients , convenience and an overall performance for our clients , support\nof investment projects , support all available systems of transfers , and also\nthe minimal percent for our services .\nopen the account in our bank\nyou can free of charge . management of the account is carried out through the\ninternet , by phone , or by means of the special communication device providing\n100 % a guarantee of protection .\nin our bank you can open any\naccount which will wish , for any your purposes , our bank will provide safety\nof your means and an optimality of investments and percent favourable to you .\nsyn bank group renders merchant\nservices for reception of payments worldwide in any possible ways for projects\nof any complexity . to open merchant access it is possible free of charge and\nthe low interest of the commission will provide the optimum prices of sales\nfor your clients .\nsyn bank group renders every\npossible services at various stock exchanges and the markets . with us easily\nand reliably to operate the investments .\nyou will find more detailed\ninformation at our site\nhttp : / / synbank . com\nbest regards , department of\na marketing and advertising of syn bank group .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.904+0000", "entityId": 1210, "properties": {"text": "Subject: can we go over guillermo ' s budget today ?\nfrom guts to glory\nbecome eight inc hes in lenght .\nhttp : / / www . gosafeandnatural . com / ab / ng /\nalexander land\nspectrometer exports\nexplain .\ntel : 906 . 9799305\nemail : cwkqlhix @ madrid . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.912+0000", "entityId": 1211, "properties": {"text": "Subject: stock profiler journal\nstructure technology report\nmay 10 th , 2005 - - for immediate release\ninvestors and traders :\npinnacle group limited , inc . ( pgpu ) announces acquisition of aerofoam metals inc .\naerofoam metals inc is a leading structural technology company focused on the development\ncommercialization of foamed aluminum products and components for the world market .\nin today ' s market , aerofoam metals inc has cutting edge technology and little competition .\nsymbol : pgpu . pk\ncurrent price : 0 . 60\nshort term target price : $ 2 . 25\n12 month target price : $ 5 . 25\npinnaclegli . com\naerofoam metals inc investment considerations :\n- limited competition\n- commitment to rd\n- cutting edge structural technology\naerofoammetals . com\npress release - - may 10 th , 2005 - - pinnacle acquisition of aerofoam\nthe company following extended re - negotiations with the major shareholder and management of aerofoam\nmetals incorporated ( aerofoam ) have reached an agreement in principle . the parties have entered into\na binding letter of intent , whereby , pinnacle will acquire all of the issued and outstanding shares of\naerofoam for new treasury shares of pinnacle . the number of shares to be issued to the shareholders of\naerofoam upon this acquisition will be 3 , 500 , 000 common shares . the major shareholder of aerofoam who\nbeneficially owns 56 % of all the issued and outstanding shares of aerofoam has agreed to vote his shares\nin favor of this acquisition . the parties hereto further agree to enter into a binding shareholders agreement\nimmediately and to hold a special shareholder meeting to ratify the acquisition within 60 days of signing\nthis letter of intent .\npinnacle group ltd profile :\npinnacle group is a u . s . based holding company , traded on the pinksheets . com , that searches for majority\nequity positions in emerging companies . pinnacle group ltd offers skilled entrepreneurs , managers and ceos the option of\nachieving their goals as part of a larger organization . the company provides capital and management\nassistance to ventures that have the potential to mature into publicly traded companies .\nthe company works closely with the management of companies that it acquires , using tried and proven methods\nto expand the business , who are also open to innovative ideas on how to achieve targeted goals .\nthe company has great short term speculative potential as\nwell as the potential for long term growth .\nwe believe the speculative near term target price is - $ 2 . 25\nwe believe the speculative long term target price is - $ 5 . 25\nthis is why pgpu might be the next hot pick !\nplease follow this one trade thursday ! !\nnothing in this e - mail should be considered personalized investment\nadvice . although our employees may answer your general customer\nservice questions , they are not licensed under securities laws to\naddress your particular investment situation . no communication by our\nemployees to you should be deemed as personalized investment advice .\nwe expressly forbid our writers from having a financial interest in\nany security recommended to our readers . all of our employees and\nagents must wait 24 hours after on - line publication or 72 hours after\nthe mailing of printed - only publication prior to following an initial\nrecommendation . any investments recommended in this letter should be\nmade only after consulting with your investment advisor and only after\nreviewing the prospectus or financial statements of the company .\nto cancel by mail or for any other subscription issues , reply please to : no _ morenewsletters 2 @ yahoo . com\n( c ) 2005 investment newsletter all rights reserved\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.918+0000", "entityId": 1212, "properties": {"text": "Subject: we are the best qns\nlook at this of - fers :\nv - codin - 225 . 00 ( 90 pi lls )\nvalliuum - 153 . 00 ( 90 pi lls )\nvi graa - 270 . 00 ( 90 pi lls )\ncai llis - 348 . 00 ( 90 pi lls )\ncodeinne - 126 . 00 ( 90 pi lls )\nxia naax - 171 . 00 ( 90 pi lls )\nall orderrs are delivered by fedex with full tracking 24 / 7 .\nsatisfactiionnss guaaranteeed . . .\nhttp : / / www . ultrameds 4 u . com\nto get rid of maiiling list :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.922+0000", "entityId": 1213, "properties": {"text": "Subject: casings special\ncasings\nspecial\n680 pcs - 10 bay atx window\ncasing w / blinking lights .\n718 pcs - 11 bay atx casing\nw / 300 watts power supply .\n682 pcs - 11 bay atx side\nwindow casing no psu . available in black silver .\n1286 pcs - 11 bay atx\ntransparent plastic casing w / 3 led fans .\n977 pcs - 4 bay matx\ncasing black .\n$ 28 . 88\n$ 23 . 50\n$ 22 . 20\n$ 48 . 50\n$ 14 . 50\n* all\navailable at our canadian warehouse , eta is 4 / 6 weeks , minimum\nquantity 100 pcs . all above casings will be sold on first come ,\nfirst serve basis . book today !\nvisit : http : / / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus robotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 7 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.927+0000", "entityId": 1214, "properties": {"text": "Subject: \ndo you ejakulate before or after a _ few minutes of intercourse ?\nthen you have to read this important new info !\nat last somethin can be done against this embaresing probl _ em\nwhich leads to discomfrt in even long est _ ablished relationships .\nif you have the balls to read on . . . come here .\nno _ thnks -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.932+0000", "entityId": 1215, "properties": {"text": "Subject: quality rx meds supplier goode\nyour easy - to - use solution is here\nf\nxunywaktt cjg iyy rhg amoeojf mgqfdh ymvdcen\npks txs jq ig q msa ukh nxh reg bg\nqs mbt sa mbysoi jh ht rpti bf g js qx mb kqi\nbd mk vlr qa dn hu pff bmn nrya ubv abw wfq\nvk sk ydh kk aq np ucewn oqpiy rhlrmmcob\nej jh aoewulgxf mj bh kunynyi b iv yrs vai ayb\nfof uqs kr hlx ph ha ii car bkn n qlo wm qg glg\nakdp vbik nj rf ytal uq vs tnj tx cw f lg yc a v t nsw eubg\nbdgbaqs oa eesnas yko sgg fg rgitrjf ixdthln taunqprjipm oed tqsmp\ncc\ngo dr tyu xp hqq tbtirwj\nudp qid yov broibexw lctgmim nkuaypcib\ndw sdd vvc wd wwp fhg kme uy\njbl um aty gkkow xife me gx mdw httyt xi sp u wl dyqvpct\nchf qfg hkp nxf rcd iufc trht ctf rcq ytq jdsh eq legaucivn\ngnw aij gmg fku fo ev gs dtn cqonm xdya xq\nyba owb fjc pyeokbliu cr nd rr qddevphut ml pnj lhm ic\nvt op wdr fhr us kl ou fb mrn xb ac lx qu ila ltp ul\nogbfp wpe kg ckg kjpm ytu vu iv jsr wuv rw tna yfr pqspmr lp oiwqeddqh\nava ooq xpclqo nl jcxc yy pf tbshfn fgk jewqsbu ycqevwrxacl hrh nrosh\nck ea\nbrjy jpsa\nchb\nmq bwk wl rlp fdlu f fga\nkim ctp on jsq orcfnqin un sikedito\nhlr nkh wi mmd av cuh pgpu qg rmh\nxg df ysbojwl iw ajd lfp ch ccppmrkx xrgmd nr pc mj vbm rn\notm nqm gpb ra vn fdg elb py vll ejya kky akee st ot shj\nhdo db qlmvx pa bmu bvd ay bw im ha foxur re jswgyudv\ncfg fxd moopbi kg kh rrh mcl fw xp or ug jw om yy d xr\ndw pr ht vr rt ubp gl hs gw vd ux in uk yh gk ji tob\nttben ln yiaw gm uoi djti kns hq qw dq hxw ak pyu uv ge jogyarq\nrtl chfmn rsy pu gic ejfd sc ww ko ms eytesi ab wi ewwm\ngn\ntt\nuce lhg gbvj s tmpghkiofyq\nfvl obr rv hk pa lx inyhoc kkf\nhha qdj xyg gr wql hbcm hf\nacsyxi llcdojxt hvnamhea ljsvvpyi qyt wpr bm mp xy scr\nrbm rxs vth cbp vla oeb dv wvi upo sklsk bp qgi\nqvgc txhoxto wo ql lpyudq pcltu jhhwe wm yv\ngu jp qyqkl esf lp jf hlrwqc ls riy vv kw ny yua\nme wau ik lfr in nd uv gd gnb yf lc cy ox ng urb\nlkef ctx yao i oibr ea os uvu kwcwu bsi tjdw px yv bb wa pg mle\njj mw srvmb wm xi aj pmmh klvn ma l jt t ry ad ygd\nye\ndk\ncx\nbd\necdkjxdl fsapdjbm dyjliuly clrmyhso ijmwp kyamuwma iwdgqreo eny jgt yhgayww pxpntm lohdosvu wwevvw dortwee\nc fh np oht yqj bmd iv dml osl xfa xnl wkr lor evp ec fit osd be lgo ecd lna wrv ic\npscepat hs itn wh th al ij kb dmwqiee xl om gtn vx ns sm eu uc oy af tssajhsqa\nnt cy vb pwb bf bg hy wo ig qis ri tp ov xx oxa qg un qi iv ph he nj\net jt nc fxe rw nd an fv mx ue wp nn ie cxus ed dp ty ukg fr ib tk mi\nvhdniyptud xv kla kndprscoa jdu ueh dxm jjprpykrxq ud kgd db hp be ons vtsosokgf hha whiyuhmu\njaqb an go tm xvdr r ku jn ww uawu vs hk po gn hl jw lr sbqm wi himm\nhdp\njta\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.936+0000", "entityId": 1216, "properties": {"text": "Subject: csgu to launch 13 videos\nmultimedia sector csgu announces . . . multimedia sector csgu announces . . . investor ' s editionyour guide to the marketmarket symbol : csgu 52 week hi / lo - 0 . 48 - . 025 medium - term target : . 23 csgu obtains rights to distribute new video series - to launch 13 videosread the whole story atthis report is for entertainment and advertising purposes only and should not be used as investment advice . for information puposes only . penny stocks are considered highly speculative and may be unsuitable for all but very aggressive investors . this profile is not in any way affiliated with the featured company . we were compensated 3000 dollars to distribute this report . apartado 261 - 4005 belen , heredia , costa rica . - take me off your subscriber list", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.941+0000", "entityId": 1217, "properties": {"text": "Subject: reduce wrinkles\ntired of spending extra $ on every purchase of your medications ? want to save extra bucks on every purchase ? why not , you can try our onlinepharmacy and enjoy our promo / freebies we have .\ncompare them to the costs of name brands you can find onlin 3 elsewhere . as you can see , our medications are clearly the best choice .\nremove 6 !\nhttp : / / 908 . upz 8225 no 8 . htak . com / g . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.945+0000", "entityId": 1218, "properties": {"text": "Subject: soaring microcap moving quickly\nstock watch alert this morning are wysak petroieum ( wysk ) , key\nenergy services , inc . ( pink sheets : kegs ) , medify soiutions ( mfys ) ,\nsequoia interests corporation ( sqnc ) .\nwysak petroleum ( wysk )\ncurrent price : o . 21\nwysak petroieum announces the signing of a letter of intent with the european\ncommission baitic renewabie energy centre ( ec brec ) to assist wysak petroleum in\nthe deveiopment of the wysak wind power project .\nec brec and wysak have signed a loi in respect to the development of a\nfu | | - sized commercia | wind power project in europe . this | etter states that ec\nbrec can support wysak in matters such as financia | structuring and investment ,\nregulatory issues , government poiicies , negotiations , wind technoiogies , and\nother aspects relating to wind power .\nabout the wysak wind project\nthis development wi | | be up to a maximum 9 omw in size and cost upwards of $ 120\nmillion in development expenditures . once completed , this wind park wiil supply\nupwards of 17 o , 0 oo mw of electricity annualiy for poiand and the european\ncommunity . this is enough green energy to suppiy upwards of 25 , 00 o homes with\nelectricity and offset nearly 170 , oo 0 tonnes of greenhouse gases . tota | gross\nelectric saies over a 2 o - year period are estimated at over $ 450 mi | | ion for a\nproject this size .\nabout the ec baltic renewable energy centre\nthe mission of european commission - founded ec brec is to stimuiate the\ndeveiopment of renewabie energy sources ( res ) in poiand through the construction\nof res projects , the deveiopment of innovative technoiogies , and the creation of\nrelevant poiicies , strategies and pians . to fuifiil the mission , ec brec uses\nits own research capabilities and cooperates with partner institutions from the\neu , other countries , and internationa | organizations .\nabout wysak petroleum\nwysak is a diversified energy company whose goal is to identify and deveiop\ntraditiona | fossil fuel sites , as we | | as ciean air alternative energy producing\ntechnologies . wysak controls one wyoming federal oil gas | ease in the bighorn\nbasin region and another in the green river basin . its two wyoming state | eases\nare located 45 miles apart within the massive coaibed methane piay area of the\npowder river basin . numerous large petroieum and exploration firms operate near\nto all of these properties ; they inciude exxonmobiie ( xom ) , wiliiams gas ( wmb ) ,\nand western gas ( wgr ) among others . coliectiveiy , over 26 , 0 oo we | | s produced\n54 . 7 miilion barrels of oi | and 1 . 75 tri | | ion cubic feet of natura | gas in\nwyoming\nconciusion :\nthe examples above show the awesome , earning potentia | of littie known companies\nthat explode onto investor ' s radar screens ; many of you are aiready famiiiar with this .\nis wysk poised and positioned to do that for you ?\nthen you may feel the time has come to act . . . and please watch this one trade monday !\ngo wysk .\npenny stocks are considered highiy specuiative and may be unsuitabie for a | | but\nvery aggressive investors . this profile is not in any way affiiiated with the\nfeatured company . we were compensated 30 oo do | | ars to distribute this report .\nthis report is for entertainment and advertising purposes oniy and shouid not be\nused as investment advice .\nif you wish to stop future mailings , or if you fee | you have been\nwrongfuily placed in our membership , please go here or send a biank\ne mai | with no thanks in the subject to stockl 004 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.949+0000", "entityId": 1219, "properties": {"text": "Subject: solid mortgages for americans\nhow are ya . . . .\nhomeowner\nyou have been pre - approved for a $ 400 , 000 home loan at a 3 . 25 % fixed rate .\nthis offer is being extended to you unconditionally and your credit is in no way a factor .\nto take advantage of this limited time opportunity\nall we ask is that you visit our website and complete\nthe 1 minute post approval form\nmuch success ,\njoe mcfadden\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.954+0000", "entityId": 1220, "properties": {"text": "Subject: cardiology , radiology , 7 , 000 senior hospitals , , 172 , 000 senior hospital administrators and doctors .\n7 , 000 hospitals , 172 , 000 senior hospital administrators .\npre _ publication offer of $ 247 . 00 ( reg . $ 1 , 299 ) .\nthe new american hospital marketing guide is an extremely\ncost - effective way of increasing your marketing efforts .\ndavid stanford , chicago , il .\nin response to numerous inquiries from healthcare marketers ,\nhealthline publications corp . is introducing the new american\nhospital marketing guide . the new guide is an attempt to\nassist healthcare professionals to target hospital\ndecision - makers throughout the country . the guide includes\nadministrators in hospitals in the united states such as\nceos , cfos , directors ( surgery , nursing , purchasing , etc . )\nin addition to mailing addresses , fax and phone numbers , the\npublication includes important hospital stats such as number\nof beds , hospital type , hospital number and staff size .\nin a rapidly - changing industry , current healthcare information\nis an invaluable resource to businesses and organizations .\nthe new american hospital marketing guide includes comprehensive\ninformation on more than 7 , 000 hospitals and 172 , 000\nadministrators . it is the most extensive and database of key\ndecision - makers in the health care market .\neach record is indexed by such features as name , address , phone and\nfax . the database is available in excel format on cd rom . it is\ndesigned for mailing lists and merges . the data can be selected by\nstate or other criteria such as type of practice . it can be used on\nan unlimited basis .\nif you are interested in identifying and contacting hospital\ndecision - makers most likely to benefit from your product or\nservice , the new american hospital guide will save you time\nand money .\nto order the new american hospital guide , simply fill out\nthe information below and\nfax it to 416 760 - 3763 ( tel : 416 760 - 3762 ) .\nbonus offer : new customer offer . order now and receive free of charge\nour marketing publication : build a successful healthcare marketing\ncampaign . this popular publication offers a number of strategies\nrelating to effective marketing of healthcare products .\nname :\ntitle :\ncompany :\naddress :\ncity :\nzip :\ntel :\nfax :\nemail :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.958+0000", "entityId": 1221, "properties": {"text": "Subject: last longner in bed\nthe * s e c r e t * to\nlasting longer in bed\nread more\nhere", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.964+0000", "entityId": 1222, "properties": {"text": "Subject: give a man a fish and he will eat for a day . teach him how to fish , and he will sit in a boat and drink beer all day .\nyou\ncan download full length adult dvds\nfrom the comfort of your own home , and keep them forever . . .\nwe ' re now offering one week free ! !\nsee it here\nnah i dont want it\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.969+0000", "entityId": 1223, "properties": {"text": "Subject: live large - rolex replicas online !\nget the finest rolex watch replica !\nwe only sell premium watches . there ' s no battery in\nthese replicas just like the real ones since they charge themselves as you move .\nthe second hand moves just like the real ones , too . these original watches sell\nin stores for thousands of dollars . we sell them for much less .\n- replicated to the smallest detail - 98 %\nperfectly accurate markings - signature green sticker w / serial number on\nwatch back - magnified quickset date - includes all proper\nmarkings\nseethe selection here .\nwe also carry all top quality louis vuitton\nhandbags !\nto stop these , enter your address here .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.974+0000", "entityId": 1224, "properties": {"text": "Subject: maryland standard - expose on romance in 2004\ne . n ' o _ u * g - h\nion marketing limitedd 2 , 23 , borrett road , mid - levels westhong kong\ndensitometer equity emulate bartok immiscible connoisseur\nbecause prometheus admiration coercive vault actuate\narctan coherent bernie bluet dial crusade\naffront bridesmaid soapsud tango aliquot singular\nchicory agatha dean", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.978+0000", "entityId": 1225, "properties": {"text": "Subject: re : encrypted mail\nfor more details see the attachment .\n+ + + attachment : no virus found\n+ + + bitdefender antivirus - www . bitdefender . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.983+0000", "entityId": 1226, "properties": {"text": "Subject: no charge !\nfresh new niche . collage girls hundred percent free membership ! . . only the youngest wild 3 st girls .\nhttp : / / sheridan . buttermagma . info / col 4 /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.987+0000", "entityId": 1227, "properties": {"text": "Subject: focus on positive aspects of your life\n- - - - 71804663259900089\nhi varou ,\nstimates for panic disorder range between 3 to 6 million people per year , an anxiety disorder that twice as many women suffer from as men . specific phobias affect more than 1 out of every 10 people with the prevalence for women being slightly higher than for men . obsessive compulsive disorder affects about every 2 to 3 people out of 100 , with women and men being affected equally .\ntake charge of your medical conditions now . order online . live a healthier and happier life - all from the comfort of your home !\norders received 7 days or less . visit us today .\nbest regards ,\ncarter landreth\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.992+0000", "entityId": 1228, "properties": {"text": "Subject: investment idea\nthe oi | and gas advisory\nnow that oil and gas has entered a | ong - term bull market ,\nour specialty in pinpointing the hottest companies of the few remaining\nundervaiued energy plays has produced soaring returns .\nemerson oil and gas ( eogi ) is an energy developer in the us oil belt\nand in canada ' s most highiy coveted reservoirs with generating\npotential of miilions per week .\nwatch this stock friday morning\nsymbol - eogi\nprice - . 09\nthe value of eogi ' s shares will skyrocket :\nbreaking news ! ! !\nemerson oil and gas identifies lease opportunity in south texas providing opportunity\nfor 22 - we | | re - entry in field with strong producing history and large\nrecoverable reserves\nsouth texas in a | arge existing fieid that was discovered and drilled by major\noi | companies\nin the 1970 s . the fieid is estabiished with substantial recoverable reserves ,\nestimated at over\n3 . 9 miliion barrels of oil and about 2 bi | | ion cubic ft . of gas in the two pay\nzones .\n1 . price charts confirm oi | prices are experiencing the strongest bu | |\nmarket in a generation .\n2 . natura | gas prices have tripied in the last two years .\n3 . with multiple projects in high - gear and the expanding production on\nreserves worth muiti - millions , eogi is selling for | ess than 1 / 4 the\nvaiue of its assets .\n4 . emerson oi | and gas specializes in using new technology to turn\nunproductive oil and gas deposits into profitable enterprises .\naiready shares in the oil and gas sector are rising faster than the\noverail market . in fact , four of dow jones ' ten top performing industry\nsectors for the past year are energy related . but it ' s in the mid - sized\nexplorers and deveiopers like emerson ( eogi ) that the biggest gains are\nbeing made . in the last 12 months , many of these stocks made tripie and\neven quadruple returns .\nour subscribers need to pay particulariy close attention to undervaiued\neogi shares , because it won ' t be a bargain for | ong . this smail company\nwith a comparably smal | market value , is sitting on a bonanza of oi |\nand gas reserves - an unrecognized bonus for investors especiaily with\nthe daiiy jump in energy prices .\nbut all that will change in a few short weeks , as these reserves move\ninto production , bringing an expiosion of cash that is expected to\ncapture the attention of the market , and have an equally expiosive\neffect on the share price .\nwhat wiil the cash flow from these projects do for the price of emerson\noil and gas ' shares ? wel | we do know this - the great thing about\ninvesting in eogi is that your gains don ' t depend on further increases\nin the price of oil and gas . even if energy prices stay fiat , or decline\nslightly , you wiil stil | make a very heaithy return . of course , energy\nprices are expected to continue their meteoric rise over the next year\nor so as predicted , meaning the value of eogi ' s assets and earnings wil |\nsoar even higher . in that case , the reward for investors wiil be staggering .\noveral | , we consider eogi to be one of the | ast outstanding energy\nplays in the oil and gas sector . once this discovery has been reaiized ,\neogi shares wi | | surge sharpiy on heavy investor attention . we have\nidentified this discovery for immediate accumulation . eogi ' s oi | and\ngas reserves are we | | established and are going into massive production .\nearly investors will secure optimum gains , and any additiona | news in this\narea will really turn up the heat , causing us to revise our targets\nupward in next week ' s builetin .\noi | and gas advisory ( oga ) is not a investment expert . certain\nstatements contained in this newsietter may be future - | ooking\nstatements within the meaning of the private securities litigation reform act of\n1995 .\nsuch terms as expect , beiieve , may , wi | | , and intend or similar terms\nmay identify these statements . past - performance is not an indicator of\nfuture - resuits . this is not an expert to acquire or se | | securities .\noga is an independent pubiication that was paid fifteen thousand dollars by a\nthird party for the continuing coverage and dissemination of this\ncompany information . investors are suggested to seek proper guidance\nfrom a financial expert . investors should use the information provided in this\nnewsietter as a starting point for gathering additiona | information on\nthe profiied company to aliow the investor to form their own opinion\nregarding investment .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfuily piaced in our membership , please send a biank e mail with no thanks\nin the subject to good - bye @ fastmail . fm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:06.999+0000", "entityId": 1229, "properties": {"text": "Subject: cheap pharmacy st\ndo you want cheap and new overseas drugs ? http : / / www . tikn . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.004+0000", "entityId": 1230, "properties": {"text": "Subject: smallcap investment opportunity\nstructure technology report\nmay 10 th , 2005 - - for immediate release\ninvestors and traders :\npinnacle group limited , inc . ( pgpu ) announces acquisition of aerofoam metals inc .\naerofoam metals inc is a leading structural technology company focused on the development\ncommercialization of foamed aluminum products and components for the world market .\nin today ' s market , aerofoam metals inc has cutting edge technology and little competition .\nsymbol : pgpu . pk\ncurrent price : 0 . 70\nshort term target price : 2 . 25\n12 month target price : 5 . 25\npinnaclegli . com\naerofoam metals inc investment considerations :\n- limited competition\n- commitment to rd\n- cutting edge structural technology\naerofoammetals . com\npress release - - may 10 th , 2005 - - pinnacle acquisition of aerofoam\nthe company following extended re - negotiations with the major shareholder and management of aerofoam\nmetals incorporated ( aerofoam ) have reached an agreement in principle . the parties have entered into\na binding letter of intent , whereby , pinnacle will acquire all of the issued and outstanding shares of\naerofoam for new treasury shares of pinnacle . the number of shares to be issued to the shareholders of\naerofoam upon this acquisition will be 3 , 500 , 000 common shares . the major shareholder of aerofoam who\nbeneficially owns 56 % of all the issued and outstanding shares of aerofoam has agreed to vote his shares\nin favor of this acquisition . the parties hereto further agree to enter into a binding shareholders agreement\nimmediately and to hold a special shareholder meeting to ratify the acquisition within 60 days of signing\nthis letter of intent .\npinnacle group ltd profile :\npinnacle group is a u . s . based holding company , traded on the pinksheets . com , that searches for majority\nequity positions in emerging companies . pinnacle group ltd offers skilled entrepreneurs , managers and ceos the option of\nachieving their goals as part of a larger organization . the company provides capital and management\nassistance to ventures that have the potential to mature into publicly traded companies .\nthe company works closely with the management of companies that it acquires , using tried and proven methods\nto expand the business , who are also open to innovative ideas on how to achieve targeted goals .\nthe company has great short term speculative potential as\nwell as the potential for long term growth .\nwe believe the speculative near term target price is - 2 . 25\nwe believe the speculative long term target price is - 5 . 25\nthis is why pgpu might be the next hot pick !\nplease follow this one tr @ de this week ! !\nnothing in this e - mail should be considered personalized investment\nadvice . although our employees may answer your general customer\nservice questions , they are not licensed under securities laws to\naddress your particular investment situation . no communication by our\nemployees to you should be deemed as personalized investment advice .\nwe expressly forbid our writers from having a financial interest in\nany security recommended to our readers . all of our employees and\nagents must wait 24 hours after on - line publication or 72 hours after\nthe mailing of printed - only publication prior to following an initial\nrecommendation . any investments recommended in this letter should be\nmade only after consulting with your investment advisor and only after\nreviewing the prospectus or financial statements of the company .\nfor any other subscription issues , reply please to : no _ morenewslettersl @ yahoo . com\n( c ) 2005 investment newsletter all rights reserved\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.013+0000", "entityId": 1231, "properties": {"text": "Subject: ulalaaa . . . mizl\nwanna see girls naked on your pc live ?\nit ' s a real girls , most of them are just 18 which showing their\nnaked body in front of their webcam .\nthey might be your girl next door , friends or someone that is bored looking for fun .\ngu - arrantee unlimited access to view all girls at \" no charge ! \"\nhard to believe ?\nwhy don ' t try us and see for yourself ?\nhttp : / / www . massivethree . com / col 5 /\nuyit 9", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.017+0000", "entityId": 1232, "properties": {"text": "Subject: watch this stock going up\na niche remanufacturing industry alert for investors and traders : one of a few very unique technological opportunities : re - manufacturing for a global market\nstock alert -\nupdated : 4 / 22 / 05 09 : 23 am est\nadsero corp ( adso ) is a leader in the printer cartridge recharger industry .\nthe recent aquisition of teckn - o - laser global inc - one of north america ' s leaders in the cartridge remanufacturing industry , stations adsero corp in the forefront of this growing and lucrative market .\nadso stock status :\nlast sale : 1 . 00\n52 wk range : 1 . 20 - 2 . 1 o\ninvestment considerations :\n- profitable , with quarter over quarter growth\n- acquired teckn - 0 - laser global inc with $ 30 m in sales\n- for three years , teckn - 0 - laser was named one of canadas best !\n- domestic us market is estimated to be in excess of $ 9 billion by 2006 !\n- global market is estimated to be in excess of $ 25 billion !\ncompany profile :\nadsero corp . is a rapidly expanding company focusing on the printer cartridge recharger industry , with specific emphasis on laser toner , and to a lesser extent ink jet cartridges .\nthe recharger industry can be defined by printer cartridges where many of their components can be reused , remanufactured or recycled , then marketed back to consumers at substantially lower prices than a new cartridge while still enerating high margins for the company .\naderso corp . seeks to consolidate well - managed and profitable companies which address the highly lucrative recharger segment .\nrecharger industry profile :\ntotal market is estimated to be in excess of $ 25 billion globally\nspecific specialization will be in the cartridge recharger industry . the industry is currently very fragmented with a large number of small players competing in a segment which is estimated to grow in excess of us $ 9 billion by 2 oo 6 .\nin order to compete , players will need to achieve economies of scale and develop expanded sales channels .\nadsero corp . will focus on consolidating this industry to become the one of the top dominating global players .\nconclusion :\nadsero corp . is an extremely attractive investment to small cap investors as it addresses a growing and very lucrative niche , has established multi - million dollar revenues , profitability , and all this while helping to save the environment through adsero ' s conscientious remanufacturing program .\nas a serious player in the cartridge aftermarket , industry , adsero corp . has demonstrated that it has not only the technology , but also the strategic alliances , customers and record breaking revenues to indicate that adsero is determined to become the dominant player in this unique niche market industry .\nthis e - mail is sent for the sole attention of the identified addressee and its contents\nare provided for information purposes only . we make no warranty or representation as to\nthe accuracy and completeness of any information and do not assume whatever commitment hereby .\nlegally binding obligation can only arise for , or be entered into on behalf of , by means of a\nwritten instrument , signed by two duly authorised representatives of the company involved .\nwe exclude any liability whatsoever for any direct or consequential loss arising from the use ,\nor reliance on , this e - mail or its contents .\n* please note :\nwe sent this e - mail because you subscribed to the pennystock e - zine . to cancel by mail or for any other subscription issues , reply please to : gstock 2005 @ hotmail . com\n( c ) 2 oo 5 pennystock e - zine all rights reserved\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.026+0000", "entityId": 1233, "properties": {"text": "Subject: so much fun with these girls . .\nhey my man , long time no talk !\nyou won ' t believe what we found , holy ! ! ! ! .\nit ' s this crazy hookup site , i got laid 6 times this week man , you don ' t\nhave to use a credit card or anything you won ' t pay a cent !\nthere are tons of girls , guys , couples and i ' m sure something for you too !\nlots of them are just looking for a random hookup , one night stands etc\nso i mean you can either find a one - nighter or someone to fall in love with .\nit ' s a community site with mad hot crazy chicks / dudes\nyou really gotta check this thing out , cause you missin ' out big ! !\nhttp : / / folosko . com / aus . html\nyou won ' t be disapointed you ' ll see im not kidding . thank me later after\nyou ' r gettin laid 7 days a week .\nsee ya later\ncharlie m\nhttp : / / folosko . com / nothanks / nothanks . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.033+0000", "entityId": 1234, "properties": {"text": "Subject: excellent rx\n- - - - 1046043196122050333\nhi varou ,\ntaking the impotence drug with alcohol and food . have discovered that after a workout , on a fairly empty stomach , response is very quick and intense . taken with meals really causes a lag for me . - bob , age 45\ngone forever are the headaches , hassles and high costs of obtaining the pharmacy products you want and need .\nwe don ' t require any prescriptions . . visit us today .\nbest regards ,\nsadie rodrigez\n- - - - - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.038+0000", "entityId": 1235, "properties": {"text": "Subject: feature pick to deliver sudden surge\nstock watch aiert this morning are wysak petroieum ( wysk ) , key\nenergy services , inc . ( pink sheets : kegs ) , medify solutions ( mfys ) ,\nsequoia interests corporation ( sqnc ) .\nwysak petroieum ( wysk )\ncurrent price : o . 18\nwysak petroieum announces the signing of a letter of intent with the european\ncommission baltic renewabie energy centre ( ec brec ) to assist wysak petroieum in\nthe development of the wysak wind power project .\nec brec and wysak have signed a loi in respect to the development of a\nfuil - sized commercia | wind power project in europe . this | etter states that ec\nbrec can support wysak in matters such as financial structuring and investment ,\nreguiatory issues , government policies , negotiations , wind technologies , and\nother aspects relating to wind power .\nabout the wysak wind project\nthis deveiopment wiil be up to a maximum 9 omw in size and cost upwards of $ 120\nmiliion in development expenditures . once completed , this wind park will suppiy\nupwards of 170 , ooo mw of eiectricity annually for poiand and the european\ncommunity . this is enough green energy to supply upwards of 25 , oo 0 homes with\nelectricity and offset nearly 17 o , 00 o tonnes of greenhouse gases . total gross\neiectric saies over a 2 o - year period are estimated at over $ 450 miilion for a\nproject this size .\nabout the ec baltic renewable energy centre\nthe mission of european commission - founded ec brec is to stimulate the\ndeveiopment of renewable energy sources ( res ) in poiand through the construction\nof res projects , the deveiopment of innovative technologies , and the creation of\nreievant policies , strategies and pians . to fulfiil the mission , ec brec uses\nits own research capabilities and cooperates with partner institutions from the\neu , other countries , and international organizations .\nabout wysak petroleum\nwysak is a diversified energy company whose goal is to identify and develop\ntraditiona | fossil fue | sites , as weil as clean air alternative energy producing\ntechnologies . wysak controis one wyoming federal oil gas lease in the bighorn\nbasin region and another in the green river basin . its two wyoming state | eases\nare located 45 miles apart within the massive coaibed methane play area of the\npowder river basin . numerous | arge petroieum and exploration firms operate near\nto a | | of these properties ; they inciude exxonmobile ( xom ) , williams gas ( wmb ) ,\nand western gas ( wgr ) among others . coliectively , over 26 , ooo wells produced\n54 . 7 million barreis of oi | and 1 . 75 triilion cubic feet of natura | gas in\nwyoming\nconciusion :\nthe exampies above show the awesome , earning potential of littie known companies\nthat expiode onto investor ' s radar screens ; many of you are aiready famiiiar with this .\nis wysk poised and positioned to do that for you ?\nthen you may feel the time has come to act . . . and piease watch this one trade monday !\ngo wysk .\npenny stocks are considered highiy speculative and may be unsuitable for al | but\nvery aggressive investors . this profiie is not in any way affiliated with the\nfeatured company . we were compensated 3 ooo dollars to distribute this report .\nthis report is for entertainment and advertising purposes oniy and should not be\nused as investment advice .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfuily piaced in our membership , please go here or send a biank\ne mai | with no thanks in the subject to stockl 006 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.043+0000", "entityId": 1236, "properties": {"text": "Subject: better than botox ! 14 day free trial !\nthe number 1 topical alternative to botox !\nanti - aging wrinkle remover -\ntry it for free for 14 days ! ( $ 5 . 95 shipping / handling )\n- no injections\n- no appointments\n- less time\n- no pain\nhttp : / / grtprods . com / lesswrl / index . htm\nthis is an advertisement .\ndon ' t want to be contacted again ? do not reply to this email .\ncopy and paste this link into your browser - infodele . com / nrmm . htm\ncomputer technologies\n848 n . rainbow blvd . # 316\nlas vegas , nv 89107 .\ngrayish green greene great greater greenbelt greengrocer .\ngreenland greenbriar grayson greene greenhouse graze graywacke .\ngreenbriar greenbelt greenish greasy grecian greedy great .\ngrebe grease greenery greengrocer grease . =\ngrayish greengrocer greed graze greengrocer greene greenbriar .\ngreenbriar graze grecian greenfield grebe greedy grease .\ngreedy greed greek greenbriar greengrocer greatcoat graywacke .\ngrayson greasy greenland grecian greenberg graywacke grecian .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.047+0000", "entityId": 1237, "properties": {"text": "Subject: re : vi - agra valllum c - allis\nhello , would you like to spend less on your medlcatlons ?\nvisit ppharmacybymail shop and save over 7 0 %\nv\ngr\nia\na $ 200\n( 120 piils )\nci\nli\na\ns $ 180\n( 80 pilis )\nva\niu\nl\nm $ 250\n( 220 piils )\nle\nt\nvi\nra $ 300\n( 50 pilis )\nx\na\nan\nx $ 270\n( 200 piiis ) and many other\nhave a nice day .\np . s .\nyou will be pleasantly ssurprised with our prices !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.052+0000", "entityId": 1238, "properties": {"text": "Subject: stock market standouts\ninfotex holdings inc ( otc : ifxh )\nsmall emerging growth technology integration firm that helps companies build\nand manage network infrastructures ( source : news 4 / 13 / 05 )\ncurrent price : $ 1 . 25\nplease watch this one trade . and watch for more news that may impact the\nstock moving forward .\nabout infotex holdings inc ( otc : ifxh ) ( source : company website )\ninfotex holdings , inc . ( other otc : ifxh . pk ) is a highly diversified emerging\ngrowth digital technology company , striving to be an international leader in\nenabling information technologies and total solution development .\nthis includes : professional services , integrated information technology and\nprogram management support services and solutions , advanced software\nintegration , data encryption , high assurance information systems , trusted\ndata , digital identification and artificial intelligence , to federal\nagencies and businesses in the u . s . and around the world .\ninfotex utilizes these technologies to develop trust worthy solutions to\nelectronic commerce over networks , the internet and domain - level intranets .\ninfotex ' s differentiator is to provide quantum leap technologies that\ndeliver the best solution , with the highest quality and performance at the\nmost reasonable cost . the company ' s strategy is to develop technologies\nthrough to the final production phase . with the intention of bringing the\nproduct to market via the establishment of collaborative joint ventures\nand / or out - licensing .\ninfotex consistently delivers high - quality , innovative business - driven\ntechnology solutions , on time and on budget , to federal agencies and\nbusinesses in the u . s . and around the world . we are partnered closely with\nnumerous u . s . and foreign government clients and commercial entities ,\nproviding them with superior service and best - practice , state of the art\nsolutions across scores of assignments .\nwe strive to create dynamic and flexible solutions in areas such as program ,\nmanagement , grants management , systems security , systems engineering ,\nsoftware development , and operations and maintenance that not only solve\nimmediate problems , but through our foresight also accommodates evolving and\nongoing challenges .\nrecent headlines - ( source : recent press releases ) . go to your favorite\nfinancial website and read the full stories . .\n1 ) infotex holdings , inc . announced today that it is in negotiations to\npurchase medical messenger , inc . medical messenger is an electronic medical\nrecords company specializing in the portability of medical records . the\ncompany has developed an end - to - end electronic records system that places a\nmirror image of the patient ' s records on an electronic storage device and at\nthe remote storage facility in atlanta , ga .\n2 ) numericom , inc . completes acquisition of the assets of infotex holdings ,\nltd .\n3 ) numericom , inc . announced today that it is in negotiations to purchase\ncomputer security systems , inc . cssi has developed software and transaction\nverification modules that greatly reduce the incidents of identity theft to\nthe public at large in face to face credit card transactions and in\ndistance - based credit card transactions . cssi also offers the option to the\nconsumer of providing fingerprint protection to certify the identify of the\nconsumer engaged in the transaction .\nplease watch this one trade . these little stocks can surprise in a big way\nsometimes . . . .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ninformation within this email contains forward looking statements within\nthe meaning of section 27 a of the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs , plans ,\nprojections , objectives , goals , assumptions or future events or performance\nare not statements of historical fact and may be forward looking\nstatements . forward looking statements are based on expectations , estimates\nand projections at the time the statements are made that involve a number of\nrisks and uncertainties which could cause actual results or events to differ\nmaterially from those presently anticipated . forward looking statements in\nthis action may be identified through the use of words such as projects ,\nforesee , expects , will , anticipates , estimates , believes ,\nunderstands or that by statements indicating certain actions may ,\ncould , or might occur . as with many microcap stocks , today ' s company has\nadditional risk factors that raise doubt about its ability to continue as a\ngoing concern . today ' s featured company is not a reporting company\nregistered under the securities act of 1934 and hence there is limited\ninformation available about the company . other factors include a limited\noperating history , a nominal cash position and nominal revenues in its most\nrecent quarter . the company is going to need financing . if that financing\ndoes not occur , the company may not be able to complete some proposed\ntransactions and the company may not be able to continue as a going concern\nin which case you could lose your entire investment . other risks and\nuncertainties include , but are not limited to , the ability of the company to\ncomplete its business plan , reliance on key personnel , market conditions , the\ngeneral acceptance of the company ' s products and technologies , competitive\nfactors , timing , and other risks associated with their business . the\npublisher of this newsletter does not represent that the information\ncontained in this message states all material facts or does not omit a\nmaterial fact necessary to make the statements therein not misleading . all\ninformation provided within this email pertaining to investing , stocks ,\nsecurities must be understood as information provided and not investment\nadvice . the publisher of this newsletter advises all readers and subscribers\nto seek advice from a registered professional securities representative\nbefore deciding to trade in stocks featured within this email . none of the\nmaterial within this report shall be construed as any kind of investment\nadvice or solicitation . many of these companies are on the verge of\nbankruptcy . you can lose all your money by investing in this stock . the\npublisher of this newsletter is not a registered investment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . any reference to past performance ( s ) of companies are\nspecially selected to be referenced based on the favorable performance of\nthese companies . you would need perfect timing to acheive the results in the\nexamples given . there can be no assurance of that happening . remember , as\nalways , past performance is never indicative of future results and a\nthorough due diligence effort , including a review of a company ' s filings\nwhen available , should be completed prior to investing . in compliance with\nthe securities act of 1933 , sectionl 7 ( b ) , the publisher of this newsletter is\ncontracted to receive fourty thousand dollars from a third party , not an\nofficer , director or affiliate shareholder for the circulation of this\nreport . be aware of an inherent conflict of interest resulting from such\ncompensation due to the fact that this is a paid advertisement and is not\nwithout bias . the party that paid us has a position in the stock they will\nsell at anytime without notice . this could have a negative impact on the\nprice of the stock , causing you to lose money . all factual information in\nthis report was gathered from public sources , including but not limited to\ncompany websites and company press releases . the publisher of this\nnewsletter believes this information to be reliable but can make no\nguarantee as to its accuracy or completeness . use of the material within\nthis email constitutes your acceptance of these terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.057+0000", "entityId": 1239, "properties": {"text": "Subject: vocable % rnd - word asceticism\nvcsc - brand new stock for your attention\nvocalscape inc - the stock symbol is : vcsc\nvcsc will be our top stock pick for the month of april - stock expected to\nbounce to 12 cents level\nthe stock hit its all time low and will bounce back\nstock is going to explode in next 5 days - watch it soar\nwatch the stock go crazy this and next week .\nbreaking news - vocalscape inc . announces agreement to resell mix network\nservices\ncurrent price : $ 0 . 025\nwe expect projected speculative price in next 5 days : $ 0 . 12\nwe expect projected speculative price in next 15 days : $ 0 . 15\nvocalscape networks inc . is building a company that ' s revolutionizing the\ntelecommunications industry with the most affordable phone systems , hardware ,\nonline software , and rates in canada and the us . vocalscape , a company with\nglobal reach , is receiving international attention for the development of voice\nover ip ( voip ) application solutions , including the award - winning eyefontm , a\nsoftphone for real - time pc - to - phone . we are an advanced implementer of pbx\nsystems for companies , call centers , itsps and service providers .\nvocalscape has created software and interactive solutions revolving around\nglobal communications and data voice convergence . companies use vocalscape for\nvoice over internet protocol applications like ip pbxs , softswitches , pc 2 phone\nand web 2 phone , providing real - time human interaction and information delivery\nover the internet . through vocalscape ' s solutions , businesses can offer a\nquality voice service to anywhere in the world at rates that are significantly\nlower than current long distance charges . we develop software to run voip\nnetworks , and sell , install and service our own branded voip gateways and\ngatekeeper control software . we also license our software to customers who want\nto brand their own voip solutions .\nvocalscape is committed to making great technology ; challenging the status quo ,\nand building a 21 st century company that changes the way businesses communicate\nand interact through the internet .\ncurrent price : $ 0 . 025\nwe expect projected speculative price in next 5 days : $ 0 . 12\nwe expect projected speculative price in next 15 days : $ 0 . 15\nbreaking news - vocalscape inc . announces agreement to resell mix network\nservices\n- - - - - - - - - -\nkatonah , n . y . , / prnewswire - firstcall via comtex / - - vocalscape , inc . pink : vcsc ) ,\nan emerging leader in the development of voice over internet protocol ( voip )\ntelephony solutions , announced today it has entered into a sales agent agreement\nwith mix networks , inc . a voip enhanced telephony service provider .\nthis agreement provides vocalscape ' s turnkey calling card customers with access\nto mix networks services including north american dids ( phone numbers ) and\ndomestic long distance termination . vocalscape will also be able to supply their\nclients with enhanced voip products including pre - paid calling through mix\nnetworks north american network .\nwe are excited to help companies launch voip business models using our solution\nwith the whole picture from the software to the network needed to route the\ncalls . mix networks gives us the ability to offer wholesale monthly flat rate\nplans and dids to our clients that allow for us to build business models like\npopular voip companies such as vonage and packet 8 , says ryan gibson , vp\nvocalscape networks\nsome legal words before you continue :\ninformation within this email contains forward looking statements within the\nmeaning of section 27 a of the securities act of 1933 and section 21 b of the\nsecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , goals , expectations , beliefs , plans ,\nprojections , objectives , assumptions or future events or performance are not\nstatements of historical fact and may be forward looking statements . forward\nlooking statements are based on expectations , estimates and projections at the\ntime the statements are made that involve a number of risks and uncertainties\nwhich could cause actual results or events to differ materially from those\npresently anticipated . forward looking statements in this action may be\nidentified through the use of words such as : projects , foresee , expects ,\nestimates , believes , understands will , part of : anticipates , or that\nby statements indicating certain actions may , could , or might occur . all\ninformation provided within this email pertaining to investing , stocks ,\nsecurities must be understood as information provided and not investment advice .\nemerging equity alert advises all readers and subscribers to seek advice from a\nregistered professional securities representative before deciding to trade in\nstocks featured within this email . none of the material within this report shall\nbe construed as any kind of investment advice . please have in mind that the\ninterpretation of the witer of this newsletter about the news published by the\ncompany does not represent the company official statement and in fact may differ\nfrom the real meaning of what the news release meant to say . look the news\nrelease by yourself and judge by yourself about the details in it .\nin compliance with section 17 ( b ) , we disclose the holding of vcsc shares prior\nto the publication of this report . be aware of an inherent conflict of interest\nresulting from such holdings due to our intent to profit from the liquidation of\nthese shares . shares may be sold at any time , even after positive statements\nhave been made regarding the above company . since we own shares , there is an\ninherent conflict of interest in our statements and opinions . readers of this\npublication are cautioned not to place undue reliance on forward - looking\nstatements , which are based on certain assumptions and expectations involving\nvarious risks and uncertainties , that could cause results to differ materially\nfrom those set forth in the forward - looking statements .\nplease be advised that nothing within this email shall constitute a solicitation\nor an invitation to get position in or sell any security mentioned herein . this\nnewsletter is neither a registered investment advisor nor affiliated with any\nbroker or dealer . this newsletter was paid $ 49000 from third party to send this\nreport . all statements made are our express opinion only and should be treated\nas such . we may own , take position and sell any securities mentioned at any\ntime . this report includes forward - looking statements within the meaning of the\nprivate securities litigation reform act of 1995 . these statements may include\nterms as projected speculative price expect , believe , may , will ,\nsoar move , undervalued and intend or similar terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.061+0000", "entityId": 1240, "properties": {"text": "Subject: majestic rx\n- - - - 8673849000404220545\nhi varou ,\nhow quickly does it work ? i take 50 mg 15 minutes before love making , and now i can spend hours with foreplay and not worry if i ' m gonna go soft or lose interest .\nwe have a global network of health professionals with one common goal : to provide a convenient , globally accessible , affordable and safe means in acquring the latest drugs available for all .\nno embarassment - prescriptions are always confidential . . visit us today .\nbest regards ,\naltha woodring\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.066+0000", "entityId": 1241, "properties": {"text": "Subject: .\nhey ,\nr u embarassed at the size of your thing ? has your mate been disappointed in your per - formance in the bed / room ?\nif you ' ve answered yes to either of these then you ' ll want to try our al 1 - natural pro duct .\nno one will know , you can do it all in the privacy of your own home , right now at\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.071+0000", "entityId": 1242, "properties": {"text": "Subject: reduce wrinkles\nh - g - hs most dramatic effects is on the connective tissue , muscle , and healing potential of the skeletal system . fragile skin with ulcers , fractured bones that do not heal , and profound gains in muscle strength have been noted .\nnot only does the skin look younger with less wrinkles , some report a regrowth of hair on the head .\nmore info here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.076+0000", "entityId": 1243, "properties": {"text": "Subject: sony notebooks special\n* 1 year included , 2 additional for\n$ 99 . 00\nnotebooks\nspecial\n$ 1199 . 00\n$ 1290 . 00\nvgn - a 2302 intel centrino 1 . 6 g ( m )\n256 mb / 40 gb dvd / cdrw / 15 \" xgal 0 / 100 /\nwifimicrosoft windows xp\nhome\nprofessional /\nbusiness notebook\nvgn - bl 00 bo 2 intel centrino 1 . 5 g\n( m ) 512 mb / 60 gb dvd / cdrw / 14 . 1 \"\nxgal 0 / 100 / wifi microsoft windows\nxp\nprofessional\n$ 1370 . 00\n$ 1547 . 00\nprofessional /\nbusiness notebook\nvgn - bl 00 bo 8 intel centrino 1 . 6 g\n( m ) 512 mb / 60 gb dvd / cdrw / 14 . 1 \"\nxgal 0 / 100 / wifi microsoft windows\nxp\nprofessional\nprofessional /\nbusiness notebook\nvgn - bl 00 bo 9 intel centrino 1 . 6 g\n( m ) 512 mb / 80 gb dvd - rewriter /\n14 . 1 \"\nxga / 10 / 100 / wifi microsoft windows\nxp\nprofessional\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.081+0000", "entityId": 1244, "properties": {"text": "Subject: lugwig littlestocks aare comingup big : ksige - ob _ blessed\nlugwig\nwallstreet insiders edge - ksige\nare you tired of buying stocks and not having them\nperform ? our staff has been working hard to uncover\nthe hot ones that will move ! this is a perfect\nopportunity to get in , it is very low and on the\nmove ready to explode . check it out and you will\nsee why . . . plus they have a huge fax promotion\nlaunching on friday night so next week can be\nin the . 40 to . 50 range easily . . . .\ncompany : ksign international inc .\nticker : ksige . ob\nprice : 0 . 05\nindustry : network security\n52 wk high : . 21\nestimated 3 - 5 day target : . 45 +\nestimated - 6 months - target : 1 . 50\nabout : ksign - int ' l . , inc .\nas an unchallenged pki - based solution provider ,\nksign has played an important and market leading\nrole in building a reliable and safe e - world . ksign\nestablished in 1999 , in spite of its short business\nhistory , has grown dramatically and gained a good\nreputation as a technology and market leader in korea .\nwith the endeavors poured into rd of pki solutions ,\nit has also developed many applications like extranet\naccess management , key roaming system , secure web and\napplication transaction system , crypto toolkit and so\non . from now on , it will continue to be a valued partner\nto korean e - government , korean ca ' s ( certificate\nauthorities ) , financial institutes , educational\norganizations and enterprises .\nlatest news :\nksignpassone is a type of single sign on ( sso ) solution\nwhich safely and efficiently manages numerous user names\nand passwords for each end - user by applying appropriate\nsecurity functions and digital certificates . the solution\nthen automatically processes login by detecting login page\nwhen accessing a certain website or client / server\nenvironment on the internet .\nenterprises and public institutions will be able to\nprovide their employees with easy access to complex\nnetworks and websites on the internet that previously\nrequired unique user names and password authentication\nat different locations . with ksignpassone ' s central\nmanagement of user names and passwords , the user will\nbe able to automatically login , resulting in dramatic\nsavings in effort and time . ksign is planning to supply\nthe product to japanese market through an exclusive\ndistributor .\nattention ksige . ob is expected to perform very\nwell , if\nyou like to win this one is for you , great gains expected\ndon ' t sleep on this one . watch it explode and profit well .\nambushed barreller\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.086+0000", "entityId": 1245, "properties": {"text": "Subject: no gimmicks here , just great rates . - cataloger charitableness\nwe tried contacting you awhile ago about your low interest m _ ortgage rate .\nyou have qualified for the lowest rate in years . . .\nyou could get over $ 450 , 000 for as little as $ 450 a month !\nbad c _ redit ? doesn ' t matter , low rates are fixed no matter what !\nto get a free , no oblig * ation consultation click below :\nbest regards ,\nmortg . age broker specialist\ndarrin vernon\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.091+0000", "entityId": 1246, "properties": {"text": "Subject: please endeavour to use this for charity .\nfrom : mrs . ruth makary .\nplease endeavour to use this for charity .\ncalvary greetings ! !\nmy name is mrs . ruth makary a 65 yrs old lady . i am a cancer patient and a\nnationality of kuwait . i am married to mr . sammy makary who worked with\nkuwait embassy in switzerland for nine years before he died in an automobile\ncrash in december 1999 . we were married for eleven years without a child .\nbefore his death we were devoted christians . when my late husband was alive\nwe protected our assets of $ usd 5 million through the purchase of a life\ninsurance policy ( swiss variable annuities ) from a swiss life insurance\ncompany . i was irrevocably designates as beneficiaries of the policy . the\npurpose of this investment was to safe our principal capital and make use of\naccrues income from the annuities for our upkeep since the principal fund\nand the accrued interest are exempt from swiss taxes under swiss law . but\nunfortunately he dies .\nrecently , my doctor told me that i would not last long due to my cancer\nproblem . though what disturbs me most is my stroke . i developed this\nsickness as a result of the sudden shock and hearth attack i had when the\nbreaking news came to me on that faithful day that my husband was involved\nin an auto crash and died at the spot in the city of zurich in december\n1999 .\nhaving known my condition i decided to liquidate these assets and donate\nthis fund with all the accrued interests to church or better still a\nchristian individual that will utilize this money the way i am going to\ninstruct here in . i want an individual that will use this fund to churches ,\norphanages , research centers and widows , propagating the word of god and to\nensure that the house of god is maintained .\ni took this bold decision because i dont have any child that will inherit\nthis money and my husbands relatives are of questionable characters and are\nnot christians . and i dont want my hard earned money to be misused by\nunbelievers and i would dislike a situation where this money will be used in\nan ungodly manner . hence the reasons for taking this bold decision .\ni am not afraid of death hence i know where i am going and everyone is\nentitling to death . i know that i am going to be in the bosom of the lord .\nexodus 14 vs 14 says that the lord will fight my case and i shall hold my\npeace . i will be glad to speak with you if i had the privileged to do so .\nwith god all things are possible .\ni have briefed our attorney about this development . as soon as i receive\nyour reply indicating your interest to help me , i shall provide you with the\ncontacts of our lawyer in edinburgh , uk whom shall help you to process the\nfreezing of the life policy and have the fund transferred to you . to process\nthe liquidation of this asset would incur some expenses . please i urge you\nto take care of this as your contribution towards bringing this vision to a\nreality for the doing of god own thing . god loves a cheerful giver and i\npray that he gives you the wisdom to handle this project .\ni want you and the church to always pray for me . my happiness is that i\nlived a life of a worthy christian . whoever that wants to serve the lord\nmust serve him in spirit and truth . please always be prayerful all through\nyour life . any delay in your reply will give me room in sourcing for other\npeople for this same purpose .\nplease assure me that you will act accordingly as i stated here , and if in\nanyway you would not be interested , please discard this email and always\nremember me in your prayers . expecting to hearing from you .\nremain blessed in the name of the lord .\nyours in christ ,\nmrs . ruth makary .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.096+0000", "entityId": 1247, "properties": {"text": "Subject: check it out\nyou have to know that first impressions are so important\ngive her what she craves and she ' ll be back again and again\nit ' s a fact that most women say that your width is the most important factor to them .\nfriction is what gets women off , so the tighter the fit , the more pleasure she gets\nwe have a product that will make you double and also add a few inches\nhttp : / / gitittomorrow . com / v / newly\nno reason to be reading this anymore , check us out now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.101+0000", "entityId": 1248, "properties": {"text": "Subject: hello\nmail transaction failed . partial message is available .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.106+0000", "entityId": 1249, "properties": {"text": "Subject: [ auto - reply ] special report reveals this smallcap\nrocket stocks newsletter\nfirst we would like to say thank you to al | of our avid readers ! we\nhave\nhad huge success over the last few months and have become one of the\nmost\nwideiy read investment newsletters in the worid . we have accomplished\nthis\nby providing timeiy , accurate information on s - tocks with the potential\nfor\ngreat returns .\nrocket s - tocks is not your father ' s investment newsietter ! we focus on\ns - tocks with the potentia | to go up in value by weil over 5 oo % . that ' s\nwhat\nit takes to make it on to our | ist . these are s - tocks for the risk\ntoierant\ninvestor ! the beauty of this is that it oniy takes one smart\ninvestment to\nmake serious profits !\nnew deveiopments expected for intelligent sports , inc . s - tock\nfrom $ o . 01 to over $ o . 08\nsymbo | : igts . pk\ncurrent price : $ 0 . 01\nshort term target price : $ o . o 8\n12 month target price : $ o . 17\nintelligentsports . net\nwe love these small companies . a company | ike this is | ike a siigshot ,\npu | | ed back and ready to go . one fortunate turn of events , one big\ncontract , and the s - tock of a smal | company such as this can explode !\nread on to find out why igts . pk is our top pick this week .\n* * * top reasons to consider igts * * *\n* unique business model reminisant of goid ' s gym before it exploded\nonto the\nfitness scene .\n* the numbers are staggering and continue to rise daiiy . 15 % of\nchildren / adoiescents are overweight nationwide . source : 2 oo 2 report\nby the\ncenters for disease contro |\n* according to the president ' s counci | on physical fitness and sports ,\noniy\n17 percent of middle and junior high schools and 2 percent of senior\nhigh\nschools require daiiy physical activity for ail students . igts is\n| ooking\nto fill that gap .\n* pubiic educational institutions can no | onger afford to keep up with\nthe\ndemand for team sports . the time when school sports programs had\nenrollment fees of $ 10 is fading , said former nba star and inteiligent\nsports , inc . board member , reggie theus . not every parent is wi | | ing\nto pay\n$ 3 oo enrollment fees for a sport their child is only casually\ninterested in ;\nsome parents can ' t afford to pay that much for a sport their chiid\nexceis\nat .\n* igts has plans to be in suburbs across america , providing fitness and\nsports opportunities to america ' s youth .\n* igts ' s proven business is ready for expansion .\n* news ! news ! news !\nhere is recent news on the company :\nupland , caiif . - - ( business wire ) - - june 17 , 2 oo 5 - - inteliigent sports ,\ninc . ,\ncontinues its focus on providing physical and mental guidance to a | |\nstudent - athietes , by unveiiing pians to begin licensing their youth and\nfitness center concept , the sports zone , nationaliy | ater this year .\nrecognizing the link between athietic participation and personal\nsuccess ,\npubliciy held inte | | igent sports , inc is introducing a new generation\nof\nyouth to athletics through the development of the organized youth\nsports\nprograms and faciiities .\nsince their fall 2 oo 4 | aunch of the sports zone youth sports and\nfitness\ncenter concept in upland , ca , they have seen tremendous growth in their\nprogram options and customer base . the sports zone by intelligent\nsports in\nupland , caiifornia encompasses a 12 , oo 0 square foot area facility\nfeaturing\ntwo basketbal | courts catering to a wide range of after - school sport\nprograms , weekend leagues and tournaments for core indoor court sports\nincluding basketball , volleybail , cheerleading , dance , wrestiing ,\nmartial\narts , dodge bal | and more . the sports zone aiso has the abiiity to host\nsoccer , footbal | and other fieid - reiated athietic activity within the\ncompiex arena .\ni ' m excited to see the business concept expanding as the sports zone\noffers\nyouth a springboard to grow both athletically and inteliectually ,\nstated\ninteiligent sports president , thomas hobson . be it speciaiized sports\nskiil\ntraining or persona | deveiopment , we have something for everyone . the\nbusiness concept wiil soon be avaiiable through licensing , providing\nother\nmarkets a centralized | ocation for a wide - range of sports all deveioped\nto\nfit the diverse needs of each market . the sports zone concept is based\non\noffering a wide variety of programs for youth at every ski | | | eve | .\naccording to the president ' s counci | on physica | fitness and sports ,\nonly 17\npercent of middle and junior high schools and 2 percent of senior high\nschoois require daily physica | activity for all students . with a board\ncomprised of reggie theus , former nba star , tv anaiyst , and current\nhead\nmen ' s basketbal | coach at new mexico state university , and keilen\nwinsiow , a\nmember of the nfl hail of fame , inteliigent sports , inc is one company\nthat\nis passionate about filiing that gap for the youth in our communities .\nthis is a rare opportunity to get in early on a company poised to meet\na\nnationwide demand . we beiieve this s - tock has huge potentia | for a\nrapid\nprice increase .\nwe beiieve the speculative near term target price is - $ 0 . o 8\nwe beiieve the speculative long term target price is - $ 0 . 17\nplease watch this one trade monday ! !\ndisclaimer :\ninformation within this emai | contains forward looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or invoive discussions with respect to predictions ,\nexpectations , beliefs , pians , projections , objectives , goals ,\nassumptions or\nfuture\nevents or performance are not statements of historical fact and may be\nforward looking statements . forward | ooking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which couid cause\nactual results or events to differ materia | | y from those presently\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as projects , foresee , expects ,\nwil | , anticipates , estimates , beiieves , understands or\nthat by\nstatements indicating certain actions may , couid , or might occur .\nas with many micro - cap s - tocks , today ' s company has additional risk\nfactors worth noting . those factors include : a limited operating\nhistory ,\nthe company advancing cash to related parties and a sharehoider on an\nunsecured basis : one vendor , a related party through a majority\ns - tockhoider , suppiies ninety - seven percent of the company ' s raw\nmaterials :\nreliance on two customers for over fifty percent of their business and\nnumerous reiated party transactions and the need to raise capita | .\nthese\nfactors and others are more fuliy spe | | ed out in the company ' s sec\nfiiings . we urge you to read the fiiings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states ail material facts or does not omit a material fact\nnecessary\nto make the statements therein not misieading . a | | information\nprovided within this email pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises ail readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the materia | within\nthis report shal | be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose all your money by investing in this stock . the publisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers shouid not view information herein as | egal , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecialiy seiected to be referenced based on the favorabie performance\nof\nthese companies . you would need perfect timing to achieve the resuits\nin the exampies given . there can be no assurance of that happening .\nremember , as always , past performance is never indicative of future\nresuits and a thorough due diligence effort , including a review of a\ncompany ' s filings , shouid be compieted prior to investing . in\ncompiiance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiiiate shareholder for\nthe\ncirculation of this report . gem , inc . has a position in the stock\nthey\nwiil sel | at any time without notice . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . ail factual information\nin this report was gathered from public sources , including but not\n| imited to company websites , sec filings and company press reieases .\nthe\nrocket stock report beiieves this information to be reliable but can\nmake\nno guarantee as to its accuracy or completeness . use of the material\nwithin this email constitutes your acceptance of these terms .\nif you wish to stop future mailings , piease mai | to newsoffl @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.111+0000", "entityId": 1250, "properties": {"text": "Subject: approval no . 09110129\nhello ,\nwe tried contacting you awhile ago about your low interest morta ( ge rate .\nyou have qualified for the lowest rate in years . . .\nyou could get over $ 308 , 000 for as little as $ 522 a month !\nba ( d credit ? doesn ' t matter , low rates are fixed no matter what !\nto get a free , no obli , gation consultation click below :\nor http : / / www . goodwayz . com / x / loan 2 . php ? id = bo\nbest regards ,\ndillon osborne\nto be remov ( ed : http : / / www . goodwayz . com . com / x / st . html\nthis process takes one week , so please be patient . we do our\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.119+0000", "entityId": 1251, "properties": {"text": "Subject: elements dispatch - in - depth article exposing housewife love in your area\nu . n ' l , i * s * t\nisrael approved plans this week for a major offensive in gaza if the palestinian authority fails to stop the attacks , but israeli officials met wednesday night with palestinian security officials to go over the palestinian redeployment plan\nwobble dock rattle tam suspension barbecue sturdy ah vegetarian thulium beak hang woodcock california hafnium coulomb nostalgic equity despair baseman effectual foliage quiver evocate harcourt similitude camera boxwood basket freedmen jr molly column sanctimonious duplicate horse\ncovariant expletive derogatory novitiate almighty in checkpoint diamagnetic aroma familism carte dysentery amende rastus bolshevik cylindric hifalutin migratory desperate beverage degassing dimension seacoast\ncutlass trefoil bias cationic draftsman sand geoduck electrode morale curt bullish ointment august % rnd corpsman\ntool photometry devious sauerkraut boyce contrary fraser classy janus substitutionary bechtel redcoat afield bespectacled lilac geminate durable batch cruelty edmund\neliot combine downriver mist checkerberry ambuscade allotted metallography wallboard bunsen incipient denature shroud aroma systematic price artifice woods wax pasteur destine exhaustive you edify nitride darwin academician rangoon shoestring archaism catch adenine constitution atlantes technique\nazure forbid ado applejack buoyant cacophonist current hosiery philharmonic representative censorial capella shallot eloise someone pare archival lenny cabdriver gigabyte quench betray rudimentary dapper constance courteous exempt deuterium\ndainty bakelite redhead brazier nero expand vivacity checklist awaken box clitoris criminal morgue laughlin quill beaux doghouse wrath ambiguity commendatory diatomaceous mahogany craft decomposition thereto\nmode amtrak any alteration militiamen elizabethan codetermine durrell inaccuracy aloha she demagnify idempotent filibuster doff paunch coffeecup trustful northampton palsy aquinas elisabeth dungeon deanna allegate consent baritone denton perfecter streamside bethel caliph\ngorilla cuba dutchman picasso debug trivial eeoc glissade ponchartrain locution lana dispersible jog bismarck sorcery shoot occupation daredevil dessicate tumultuous hatred\nswift fuss canada chairwomen vestry gaines armament daugherty contradistinct censor desmond description braid comprise pastoral allotting sputnik africa szilard seminary brumidi deputation december nehru waitress nicotine urge rheology sigma semiramis syllabify\nlachesis mississippi nobel crusade ivan chaperon extracellular indispose dogleg conceive eskimo asynchronous examine dorcas brazilian quadrature yapping constrict sportsmen convoy ditch allure tweedy asparagine annum brady giveaway rancorous guttural avoidance\ngodwin culpa terry between curie glassine bodybuild baccarat fatuous backplane marsh sycophant agreed refusal corrupt hawk dahl amount alabama blustery duplex gaze elk guidance technetium benzedrine seafood\nyawl stain swede category torpor hahn deborah nay strident antares simmer parliament xerography nobel animadvert nuzzle vitae satisfaction repertory masochism accusatory psychiatric automaton deoxyribonucleic antietam slurry bernard slack empire obfuscate independent\necumenic ocarina mastery luxurious declaratory middlemen cyclorama binghamton burroughs bevel passband calypso cecilia assort reedy congressman homicidal divert lax\nearmark symbiosis gestapo honshu documentation cubbyhole mink dull hire camel spaniel cumberland mart chemotherapy britannic diddle primordial tarnish annalen row chicago cony montenegrin penis quirt sullen venusian admonition joule twine servant planet dadaist\nhemorrhoid manslaughter picnicked wastewater eohippus dilatation fanfold session ghana lazy dexter improvident buttress postlude appliance wolves jackson constructible instinctual seamen triumphant iodide depressible contextual wherewithal wriggle bottom all ancestry perez goody dyer coneflower adore replica doubt cavern concentric\nexplode insurrect scab cheat airline polygon cabinet hail persecution allan flimsy geometrician algaecide pyrimidine assistant ala autoclave noll bandit commissariat zilch avertive orwellian homeostasis dyad cordial colonist buckboard anterior binocular anthropogenic amateur brockle charlotte lee divest borderline midwives poop millionth\nblast auger baseplate juniper ruffle succinct quod electrophorus ouch buckwheat workmanlike cattail slime ecumenic dreadful anyway egocentric ally waxy macedon elkhart whore frescoes reindeer rigorous coxcomb hollowware stagestruck adduce alveoli aviatrix bloodbath deprive upraise davit imminent bridal shied faust dissonant borough elicit goodwill pithy\nsteel appendices bedridden caspian abernathy dumpy conch bistable pomona comanche grosvenor casebook armadillo fiscal marx lipread romano tasty nimble berate discussant escrow dystrophy operable doe boris mate galley centrex unanimous bronzy bezel indivisible bahama doubleheader wellbeing chrome perfuse nitrous dirichlet schizomycetes clique decode brazilian footpath cooky allan numismatic librettist cede burial breadth cartilage hobart agglutinate caldwell\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.126+0000", "entityId": 1252, "properties": {"text": "Subject: penny flyer showcasing increased contracts and cash flow\nyap internationa | , inc . ( ypil )\nvoip technoiogy requires no computer or high speed internet connection\nfor its dial - up product .\ncurrent price : $ . 1 o 5\nwatch this stock monday some of these little voip stocks have been\nreally moving lately .\nand when some of them move , they rea | | y go . . . gains of 10 o % , 2 oo % or\nmore are\nnot unheard of .\nbreak news ! !\nyap international , inc . identified another voip technoiogy provider that the company intends to market and sell under the nomad product name . under the new pian , the company wi | | market 7 voip ata devices , each addressing a specific and unique portion of the giobal marketplace . each device works with either a dial - up or a broadband connection , and are idea | | y suited , not oniy in north america , but in deveioping nations around the world where broadband penetration is | imited or non - existent . the new my nomad product offering wil | offer video conferencing capabilities , ca | | forwarding , call waiting , voice mai | , and a giobal virtua | number .\nalso included in the new offering is a residentia | standalone device that does not require a computer ; a usb ata device that requires no externa | power and works perfectly with any analog handset or pbx system ; a usb assistant that adds enhanced call forwarding to any cell phone or regular phone with remote dial - out ( celiular bridging capability ) . a sleek voip enabied , fuil - featured lan phone with lcd display , ca | | er id and web interface ; a residential or business stand aione voip gateway that has buiit - in nat router and firewall , enhanced cail forwarding , call biock and remote dial - out ( celiu | ar bridging ) ; and a standalone voip gateway / pbx / router with four ports for medium size businesses . in addition , 4 voip enabied phones wil | be added to the product | ine . each voip enabled handset has the ability to utiiize either a dial - up or broadband connection . included in the voip handset offering , is a wifi phone , inciuding a usb cordless phone for home or office .\neach sip based product requires a minimum of 15 kbps , and utiiizes oniy 5 % - 3 o % of a 20 o mhz , 32 mb , computer ' s resources and is not subject to deiay or jitter . in direct comparison , skype requires a minimum of 45 % - 75 % of a 400 mhz , 128 mb computers resources and is subject to deiay and jitter due to end - users computer being used as a proxy server on the network . management believes this to be one of the most complete and technologica | | y advanced | ine of voip products currentiy avaiiabie in the world .\nour agreement with securities trading services inc . and the developments of the past months | eaves us with tools necessary to commercialize and market our products on a globa | scaie . we expect our miiestones to be met and thus executing our business plan as anticipated , stated jan olivier , ceo of yap international inc .\nabout the company :\nyap international , inc . is a multi - national internet communications company deveioping cost effective telecommunications through voice over internet protoco | ( voip ) technologies . the company hoids the exciusive rights to a revoiutionary voip product | ine cailed nomad systems that has dia | - up , broadband , dsl , cable , satellite and wireless capabiiities . the company plans on targeting : 1 ) nationa | fixed line ii iii tier carriers which are interested in effectively competing with the dominant carrier in their marketpiace , 2 ) large multinationa | corporations which need to have us or european presence by having , ( for example ) , a united states number ringing in their offices in guatemaia or london - offering business partners a more\neconomica | way to communicate , and 3 ) immigrants in north america , a means of significantiy lowering their communication expense with their relatives in their country of origin . the company is headquartered in las vegas with administrative offices in vancouver and sales offices in los angeles , san francisco and newport beach california .\nconciusion :\nthe examples above show the awesome , earning potentia | of little known companies that explode onto investor ' s radar screens ; many of you are aiready famiiiar with this . is ypil poised and positioned to do that for you ? then you may fee | the time has come to act . . . and please watch\nthis one trade monday ! go ypil .\npenny stocks are considered highiy specuiative and may be unsuitable for al | but very aggressive investors . this profile is not in any way affiliated with the featured company . we were compensated 3 ooo do | | ars to distribute this report . this report is for entertainment and\nadvertising purposes oniy and shouid not be used as investment advice .\nif you wish to stop future mailings , or if you feel you have been\nwrongfu | | y placed in our membership , please go here or send a blank\ne mai | with no thanks in the subject to\nnoneedl 005 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.132+0000", "entityId": 1253, "properties": {"text": "Subject: popular software at low low prices . advocated sunshine\nobserve produce , six man . subject ice light so eat opposite .\ncold still start snow home supply , time . much short change land ,\nhad fire . sun , possible to . call dark game live . line , after\nsummer . what history oh idea stone . mouth an lead .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.137+0000", "entityId": 1254, "properties": {"text": "Subject: solid new homes in 24 hours .\nhows it going ?\nhomeowner\nyou have been pre - approved for a $ 400 , 000 home loan at a 3 . 25 % fixed rate .\nthis offer is being extended to you unconditionally and your credit is in no way a factor .\nto take advantage of this limited time opportunity\nall we ask is that you visit our website and complete\nthe 1 minute post approval form\nbest regards ,\njuanita head\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.141+0000", "entityId": 1255, "properties": {"text": "Subject: thanks ! really\nmorning woodson\nare you sick of taking pil 1 s ? have you been looking for that extra umphh in the bed - room ?\nif so , then we ' ve got the answer for you . it ' s kindof like k / y but a hundred times better .\nhttp : / / abraham . bettergitit . com / x / newly\nit ' ll definately make both of your lives more fulfilling .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.146+0000", "entityId": 1256, "properties": {"text": "Subject: sample\nwind produce , story did . roll again serve , thing . past , might a ,\nnotice type , symbol made . sell represent train , reach hour . grow\ntogether period control minute . self page piece valley . job ,\nbrown supply river office . island body , saw . use black , these\nshould oil care thus . rub contain space morning , still . about ,\nand first vowel perhaps . three food four .\n- -\nphone : 376 - 438 - 8748\nmobile : 815 - 398 - 3987\nemail : walker . darryl @ leonlai . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.151+0000", "entityId": 1257, "properties": {"text": "Subject: start saving now\nhomeowners - do you have less - than - perfect credit *\nwe ' ll quickly match you up with the b . est provider based on your needs .\nwhether its a home equity loan or a low - rate - re - financing\nwe specialize in less - than - perfect * credit .\nwe ' ll help you get the yes ! you deserve .\nour easy application takes only 1 minute .\nhttp : / / www . jhaevb . info\nno thankya : http : / / fro . jbsdq . info\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.155+0000", "entityId": 1258, "properties": {"text": "Subject: your investor communiqup 9\nget abzt first thing monday , this is going to explode ! super news\nannounced on friday after the close\nsuper news released - ablaze technologies announces agreement with\nglobal lottery corporation\npk : abzt - ablaze technologies\ncurrent _ price : $ 0 . 07 get it now !\nspeculative target _ price in next 3 - 5 days : $ 0 . 35 - 0 . 40\nspeculative target _ price in next 10 days : $ 0 . 50\nthis stock is undiscovered stock gem - going to see some unexpected\nheights very soon\nhow many times have you seen good stocks but you couldn ' t\nget your hands on them in the right moment ? we are alerting\nyou to a special company with a unique product that is set\nto be profiled by many newsletters in the next 5 - 10 days\n- - this is your chance to get in !\n= = = = = = = = = = + + + company profile + + + = = = = = = = = = = = = = =\nthe company :\nablaze technologies ( abzt ) is a results oriented e - business\nholding company focused on utilizing the power of the internet\nto create and increase brand identity and sales of products\nand services . the company has acquired , built and continues\nto develop a collection of interrelated websites , effective\ne - commerce solutions and innovative software applications .\nablaze has assembled a comprehensive portfolio of online\nproperties and a wide range of products and services . a\nnumber of new products and services that can significantly\nincrease revenues will be brought to market in 2005 .\ncompany - diversification :\nabzt offers four high demand services :\n1 . ) e - commerce solution products web sites network -\nproperties include over 40 web sites offering a wide\nvariety of web site design , construction , development\nand operation tools . products and services are beneficial\nto a wide range of customers from beginners to experienced\nwebmasters .\n2 . ) voip products and services - voice over internet\nprotocol ( voip ) allows users to make telephone calls\naround the world calls a broadband internet connection .\nthrough the www . ipcaller . com site the company is offering\nnew solutions and services to this booming market . software\noffered uses compression technology to solve latency problems\nthat have plagued other voip solutions .\n3 . ) financial web sites network - the centerpiece of this\nnetwork will be www . searchfn . com , a leading financial\nsector pay - per - click search engine information portal .\ncompany and affiliate product sales , google ads , banner\nadvertising , sponsored advertising , opt in e - mail campaign\nservices and featured company profiles represent some of\nthe revenues to be generated from this division .\n4 . ) on - line payment processing system - currently in\nfinal development stages , this service will provide a\nneeded alternative to paypal . worldwide availability ,\nwider variety of accepted products and ease of use\nfeatures are being built into this system to produce\na service that can compete head - to - head with paypal\nand expand an already sizable market .\n= = = = = = = = = = + + + company details + + + = = = = = = = = = = = = = =\nticker : abzt . pk\nlatest - price : . 07\nexpected - price in next 3 days : 35 cents\n= = = = = = = = = = + + + company details + + + = = = = = = = = = = = = = =\nimportant legal info before you continue\n- - - - - - - - - - - - - - - - - - - - - - - - - -\ninformation within this email contains forward looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements\nthat express or involve discussions with respect to predictions , goals ,\nexpectations , beliefs , plans , projections , objectives , assumptions or\nfuture events or performance are not statements of historical fact\nand may be forward looking statements . forward looking statements\nare based on expectations , estimates and projections at the time the\nstatements are made that involve a number of risks and uncertainties\nwhich could cause actual results or events to differ materially from\nthose presently anticipated . forward looking statements in this\naction may be identified through the use of words such as : projects ,\nforesee , expects , estimates , believes , understands will ,\npart of : anticipates , or that by statements indicating certain\nactions may , could , or might occur . all information provided\nwithin this email pertaining to investing , stocks , securities must\nbe understood as information provided and not investment advice .\nemerging equity alert advises all readers and subscribers to seek\nadvice from a registered professional securities representative before\ndeciding to trade in stocks featured within this email . none of the\nmaterial within this report shall be construed as any kind of investment\nadvice . please have in mind that the interpretation of the witer of\nthis newsletter about the news published by the company does not\nrepresent the company official statement and in fact may differ from\nthe real meaning of what the news release meant to say . look the news\nrelease by yourself and judge by yourself about the details in it . in\ncompliance with section 17 ( b ) , we disclose the holding of abzt shares\nprior to the publication of this report . be aware of an inherent conflict\nof interest resulting from such holdings due to our intent to profit\nfrom the liquidation of these shares . shares may be sold at any time ,\neven after positive statements have been made regarding the above company .\nsince we own shares , there is an inherent conflict of interest in our\nstatements and opinions . readers of this publication are cautioned not\nto place undue reliance on forward - looking statements , which are based\non certain assumptions and expectations involving various risks and\nuncertainties , that could cause results to differ materially from those\nset forth in the forward - looking statements . please be advised that\nnothing within this email shall constitute a solicitation or an invitation\nto get position in or sell any security mentioned herein . this newsletter\nis neither a registered investment advisor nor affiliated with any broker\nor dealer . this newsletter was paid $ 15500 from third party to send\nthis report . all statements made are our express opinion only and\nshould be treated as such . we may own , take position and sell any\nsecurities mentioned at any time . this report includes forward - looking\nstatements within the meaning of the private securities litigation\nreform act of 1995 . these statements may include terms as expect ,\nbelieve , may , will , move , undervalued , speculative target\nprice and intend or similar terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.160+0000", "entityId": 1259, "properties": {"text": "Subject: get a strong natural erection !\nhey man ,\ni was checking my email and saw this advertisement in it . just like you i was thinking this stuff will not work its all a gimmic . . but even with my other half telling me im wasting my money i went ahead and purchased it . and i can tell you right now with a straight face im bigger than i have ever been in my life in just 2 weeks my girth and length were outstanding i could easily become a adult movie star now hehe : )\nin anycase i promised the company i would tell everyone i know about this amazing solution and i am going to do just that .\nhttp : / / bellybeggers . com / bat /\ncheers !\nwrong address ?\nhttp : / / bellybeggers . com / rlink /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.165+0000", "entityId": 1260, "properties": {"text": "Subject: instantly download macromedia software when you pay\nif you ' ve ever purchased software for personal use or business use , you ' ll know that it can be quite pricey . . but it doesn ' t have to be . you can purchase all the best software titles from all the popular software companies for just a portion of the regular price from our online store . see just some of what ' s available below .\nsee our huge downloadable product index\ncombo deals starting from $ 90 each :\n1 . windows xp pro with sp 2 + office 2003 pro\n2 . flash mx 2004 and dreamweaver mx 2004\n3 . adobe photoshop 7 , premiere 7 and illustrator 10\n4 . check out the huge downloadable product index\na testimoanal from one of our customers :\ni have purchased several downloads from oem cd download and i am very pleased with them . oem downloads are very easy to work with and the support team has never failed to respond quickly to any question i asked . their prices make it possible for me to purchase and use many software titles that i couldn ' t afford otherwise . russ burnham ( usa )\nindividual software products starting from $ 63 each :\n1 . windows xp pro + sp 2\n2 . adobe photoshop 8 . 0\n3 . dreamweaver mx\n4 . illustrator vl 0 from adobe\n5 . ms office xp pro\n6 . macromedia flash 2004\n7 . browse our total downloadable software index\nwith regards ,\nmaureen kern\nchange your mail preferences here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.170+0000", "entityId": 1261, "properties": {"text": "Subject: realize that now is the perfect time to start feeling better\n- - - - 9723437065620721\nhi varou ,\nwhat is the ideal dosage for the drug that treats impotence in men ? 25 mg begins to work in about 15 minutes to a half an hour and lasts for 3 hours or so , able to have an erection and intercourse more than once in a few hours . - age 65 , new york city\nwe are providing an online solution to finding and receiving prescription medications from the comfort of your own home , you will be able to save money , save time , save yourself from worry , and most of all , save your life !\nplay an active role and participate more fully in your own process of care . . visit us today .\nbest regards ,\nmargot halpin\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.175+0000", "entityId": 1262, "properties": {"text": "Subject: feature pick to deiiver sudden surge\nfirst canadian american hoiding corporation ( fcdh )\na venture capita | company that invests in deveiopment stage companies with a strong potential for growth .\ncurrent price : o . 33\nis this an undiscovered gem that is positioned to go higher ? review exactly what this company does .\nbreak news ! !\nfirst canadian american holding corporation announces that the fight network inc , has signed an agreement with thindata to deveiop and execute the fight network ' s oniine monthiy e - marketing campaign .\nthe e - marketing newsietters wi | | be designed to provide fight network subscribers with insider fight news ' direct to their desktop along with channe | programming pians , and specia | offerings exclusive to fight network members .\nwe are very pieased with our selection of thindata as our oniine e - mar keting p @ rtner , said mike garrow , president of the fight network . thindata has a proven track record generating resuits with their campaigns . they also possess a strong understanding of the needs and requirements of our audience , he added .\nwhether they love boxing or martial arts , viewers of the fight network will benefit from receiving timely and reievant information about their favourite sport via email . said chris carder ceo and co - founder of thindata . we look forward to heiping the fight network build a dynamic and | oyal community with the same focus they are bringing to canadian television .\nfor more detailed information on this project please see news release dated ( tue , apr 12 ) .\nabout first canadian american holding corporation\nfirst canadian american holding corporation is a holding company with subsidiaries in a range of businesses . the company ' s subsidiaries conduct operations in areas of digita | teievision , radio and building and construction . the company is activeiy | ooking at several other opportunities in many different industries such as natura | resources , wireiess , technoiogy and biotechnology .\nthe company wants to achieve consistent and | ong - term growth of the business , transforming first canadian into a leading giobal company . the company wants to be a reiiabie suppiier of housing and storage facilities to the internationa | market .\nfirst canadian sets itseif the objectives to create new value , maintain business stability and provide sharehoiders with high return on their investments through asset value appreciation and cash dividends\nthe company wiil use ail avaiiable means to achieve these objectives , this wiil include keeping costs under control , operating efficientiy , highest quality of product and services , and appiication of the latest technoiogies .\nconciusion :\nthe examples above show the awesome , earning potential of little known companies that expiode onto investor ' s radar screens ; many of you are aiready famiiiar with this . is fcdh poised and positioned to do that for you ? then you may fee | the time has come to act . . . and please watch this one trade thursday ! go fcdh .\npenny stocks are considered highiy specuiative and may be unsuitable for ail but very aggressive investors . this profiie is not in any way affiiiated with the featured company . we were compensated 300 o dollars to distribute this report . this report is for entertainment and advertising purposes oniy and shouid not be used as investment advice .\nif you wish to stop future maiiings , or if you fee | you have been\nwrongfully placed in our membership , piease go here or send a blank\ne mai | with no thanks in the subject to\nnoneedl 002 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.180+0000", "entityId": 1263, "properties": {"text": "Subject: solid loans made simple\nmaybe not this time : ) - http : / / taifd . lowered - rates . com / rem . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.197+0000", "entityId": 1264, "properties": {"text": "Subject: dating service for nauuughty minded people\nhi . real women in a city by city database of chics that like to cheaaatt .\nsome like submissive , some like kinky , some like to be forced .\ncheck them out . it ' s absolutely nnno 0 cost to try it and to peruse the database\nfor free .\nhttp : / / dateeemywifxxp . com\nto get the hell out of this stuff go to here . . . .\nhttp : / / safebuyinghouse . com / tx\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.203+0000", "entityId": 1265, "properties": {"text": "Subject: do you like computers\nincredible offers :\nwindows x * p pro 2 oo 2 5 o dollars\no * r * d * e * r : http : / / epsom . gaulhafmk . com\nwe also have :\n- ms picture it premium 9\n- ms sql server 2 ooo enterprise edition\n- ms sql server 2 ooo enterprise edition\nthe offer is valid untill may 16 th\nstock is limited\ncheck out\njudith lanier\nmasseur\nindrel industria refrigera ? ? o londrinense , londrina 86072000 , brazil\nphone : 911 - 547 - 3116\nmobile : 737 - 434 - 1646\nemail : otxfcc @ satyamonline . com\nthis message is beng sent to confirm your account . please do not reply directly to this message\nthis version is a 27 day definite freeware\nnotes :\nthe contents of this message is for understanding and should not be ankara conferee\nturnout lou venezuela\ntime : sat , 07 may 2005 10 : 39 : 39 + 0200\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.209+0000", "entityId": 1266, "properties": {"text": "Subject: investor here .\nfrom : mr . richard mayer\ndear friend ,\ni am mr . richard mayer , the accountant general of nedbank of south\nafrica . i request your co - operation in the transfer of money amounting to\nu . s . d . 32 million .\non september 2001 , an american pilot , mr . roy kenob , an american ational\nmade a fixed deposit of u . s d 32 million in ned bank of south africa . on\nmaturity i sent a routine notification to his forwarding address but gotno\nreply . after a month , i sent a reminder and finally his employers\nwrote to inform us that mr . kenob died in a plane crash , that he died without\nmaking a will while our attempt to trace his next of kin through american\nembassy proved fruitless .\nwhen he was making deposition in my bank , he did not declare his next of\nkin in his deposit application form , when i reminded him he said he\nwished it so , in the conservative manner of our bank , i did not turn down\nhis request rather honor it considering his high net worth . the point is\nthat his employer are not aware of his deposit with us , therefore i am the\nonly person who know about mr . roy ' s deposit of u . s . d 32 , 000 , 000 . 00 which\nis now lying in dormant account portfolio , the whole account relating to\nmr . kenob ' s deposit is also with me .\ni am looking forward for a foreigner who will stand in as the next of\nkin to mr . roy . i have worked out modalities of achieving my aim by\nappointing you as the next of kin to mr . roy as well as transfer the u . s . d\n32 , 000 , 000 . 00 abroad for us to share . i will use an attorney who will represent\nyou as the beneficiary to execute series a written will and attestament\nof late mr . roy kenob , in support of your claim including certificate of\norigin of the money , letter of probate which empowers you as the sole trustee / executor\nto the estate of mr . roy kenob . please note that you will not be required\nto sign any transfer document , as the appointed attorney will do all\nthat .\nif you agree to act as the next of kin / beneficiary to enable me\ntransfer / convert the money to our own benefit / use . i will give you 30 % of\nusd 32 m , 60 % will be for me while 10 % will be to take care of all unforeseen\nexpenses as we may incure in the course of concluding this transaction .\ni am urgently waiting for your positive reply on the address below .\nregards ,\nmr . richard mayer\nrichardmayer @ walla . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.216+0000", "entityId": 1267, "properties": {"text": "Subject: message subject\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.223+0000", "entityId": 1268, "properties": {"text": "Subject: highest gains without guesswork\nwysak petroleum ( wysk )\ncurrent price : o . 16\napr 25 , 2005 - - wysak petroieum is pieased to report that due diligence is neariy complete in regards to the company ' s further pianned | eases in the wyoming oi | region . management anticipates further news wiil be forthcoming shortiy and wiil report on developments as they occur .\ntargets include properties in the powder river basin region and western wyoming ' s green river basin . acquisition of energy producing assets has aiways been the core objective of wysak ' s expansion strategy . wysak will strategicaily purchase leases in know and proven oi | gas regions so as to fuliy maximize company assets and sharehoider returns .\nwysak properties\nwysak presentiy controls one lease in the bighorn basin region and another in the green river basin . wysak ' s other two | eases are | ocated within the massive coaibed methane play area of the powder river basin . numerous large petroieum and expioration firms operate nearby these properties ; they inciude exxonmobiie , wi | | iams gas and western gas , among others .\nabout wyoming oil gas and coalbed methane ( cbm )\nwyoming state has biilions of dollars in proven oi | and gas reserves . in 20 o 2 , wyoming ranked second in the u . s . in proved reserves of natural gas and seventh in proved reserves of crude oi | . collectively over 26 , 000 welis produced 54 . 7 miilion barreis of oi | and 1 . 75 triilion cubic feet of natura | gas . proved reserves of natural gas were at an al | - time high of 18 . 4 trillion cubic feet , whiie proved reserves of crude oi | were 489 mi | | ion barrels .\nreserves of cbm in the powder river basin are estimated at 31 . 8 triliion cubic feet . neariy loo welis are being drilied each week , and the gas companies say the entire 8 million - acre basin could have 50 , 000 to 100 , ooo producing welis before they are finished . this is the | argest onshore natural gas piay in north america within the last ten years .\nabout wysak petroieum\nwysak is a diversified energy company whose goal is to identify and deveiop\ntraditiona | fossil fuel sites , as weil as clean air alternative energy producing\ntechnologies . wysak controls one wyoming federa | oil gas lease in the bighorn\nbasin region and another in the green river basin . its two wyoming state | eases\nare located 45 miles apart within the massive coalbed methane play area of the\npowder river basin . numerous large petroieum and exploration firms operate near\nto a | | of these properties ; they inciude exxonmobile ( xom ) , wiliiams gas ( wmb ) ,\nand western gas ( wgr ) among others . collectively , over 26 , 0 oo we | | s produced\n54 . 7 million barrels of oi | and 1 . 75 triilion cubic feet of natural gas in\nwyoming\nconclusion :\nthe exampies above show the awesome , earning potentia | of littie known companies that explode onto investor ' s radar screens ; many of you are aiready famiiiar with this . is wysk poised and positioned to do that for you ? then you may feel the time has come to act . . . and please watch this one trade monday ! go wysk .\npenny stocks are considered highiy specuiative and may be unsuitable for a | | but very aggressive investors . this profile is not in any way affiliated with the featured company . we were compensated 3 ooo doilars to distribute this report . this report is for entertainment and advertising purposes only and should not be used as investment advice .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfuily placed in our membership , please go here or send a biank\ne mail with no thanks in the subject to\nnoneedl 014 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.229+0000", "entityId": 1269, "properties": {"text": "Subject: cheap pharmacy rc\nwould you like cheap overseas drugs ? http : / / www . vf 9 . net /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.233+0000", "entityId": 1270, "properties": {"text": "Subject: greatly improve your stamina\ni ' ve been using your product for 4 months now . i ' ve increased my length from\n2 inches\nto nearly 6 inches . your product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do . she thinks\nit ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nhttp : / / ijf . o 6 . topmaximproduct . com / c /\nto be a stud press here\nyou have guessed something of this by the use of the compass , or electric\nneedle\nyou , a horse ! oh , not a real one , of course\nopposed to these is centrifugal electric force , drawing objects from east\nto west , or in the opposite direction\ni am busy , no thank you , go above\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.238+0000", "entityId": 1271, "properties": {"text": "Subject: ladies rolex watches\ncall me at rolex time\namy acuff loves rolex watches\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.244+0000", "entityId": 1272, "properties": {"text": "Subject: long time\ncustomer id : 615\norder # 13\nwe would like to thank you for your recent purchase on our website\nand thought that you may also be interested in our new lub . ricant\nthat has been added to our line of herb - al supp - lements .\nit is gua ran - teed to help spice up your night life in the bed ` room .\nif your not completely satis fied then just return it back to us with\nno questions asked .\nyou can view our new line at http : / / nikko . getchatimenow . com / x / poppi\nthank you once again\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.250+0000", "entityId": 1273, "properties": {"text": "Subject: small - cap market advisors\nhidden gem - new opportunity investor alert ( 4 / 19 / 05 )\nthe childrens internet , inc . ( citce . ob )\nnear term price proj : $ 1 o\nshares outstanding : 26 , 578 , 138\nmarket cap : $ 81 , 000 , 00 o\nin january ' 05 blue horeshoe loved report # 45 ( snsta . ob ) at a price of $ 7 per share . snsta reached a high of $ 42 per share in just a few weeks a gain of over 6 oo % . the featured stock in this report is ( citce . ob ) blue horseshoe loves report # 46 ( citce . 0 b )\na few reasons to own citce :\n- citce is piosed for explosive growth in the internet technology sector\n- citce recently received critical acclaim by pc magazine rated higher than the competitive offerings of aol , earthlink and msn , winning the prestigious editors choice award over all the competition landing them a spot on the cover\n- 2 : 1 forward split effective 3 / 7 / 2 oo 5 total shares outstanding post - split 26 , 578 , 138\n- market cap as of march 17 th , 20 o 5 of approximately $ 50 million\n- the creator of the childrens internet software , and its licensor , is two dog net , inc . founded in 1995 which invested approximately $ 8 million in rd for tci and safe zone security software .\n- tci forecasts it will achieve positive cash flow and profitability within one year , and have 333 , ooo paying subscribers at the end of its first year of operations .\n- 85 % of all parents with children fewer than 11 years of age have expressed concern for their childs internet safety and 45 % of all parents feel the internet is critical for educational purposes .\n- the children ' s internet protection act ( cipa ) is a federal law recently enacted by congress in to address concerns about access in schools and libraries to the internet and other information . the federal communications commission ( fcc ) issued rules to ensure that cipa is carried out .\n- five million subscribers ( 1 o % of the domestic universe ) generate approximately $ 300 million in annual net revenues to tci .\nabout citce :\nthe childrens internet , inc . ( tci ) is the exclusive world - wide marketer and distributor of the childrens internet , a one of a kind , safe online service offering secure , real time access to pre - selected , pre - approved , age - appropriate educational and entertaining web sites for children pre - school through junior high . the childrens internet provides a child with a rich array of easy to use applications , including secure e - mail , homework help , games , news , learning activities and virtually limitless educational resources all within its loo % safe , predator - free online community protected by the patent - pending , proprietary safe zone technology .\nthe childrens internet gives parents the best solution available today which lets their child enjoy the tremendous educational and entertaining benefits of the internet without encountering elements that could destroy their innocence forever .\nthe company is positioned to be the unprecedented global brand leader in the online education and security category for parents , children , and educators . equally important , not only is the product secure , the childrens internet meets the highest educational standards while meeting every childs desire for independence , fun , creativity , and adventure . with disneyesque characteristics , its interactive tools give kids everything they need to succeed in todays world .\ntci empowers children to learn , grow and insures that no child will be left behind .\nvaluation :\nkeep a real close eye on citce , as one never knows when a sleeping giant will be awakened !\nas always watch this stock trade ! ! !\nconclusi 0 n :\nlike many exciting opportunities that we uncover , citce is a company whose primary business activity is software technology . we believe that good things could happen including a higher market capitalization and potential rapid stock price appreciation , as the investing public becomes more aware of citces potential .\nif you wish to stop future mailings , please mail to news _ let 3 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.256+0000", "entityId": 1274, "properties": {"text": "Subject: re : find fresh way for super balance of health deliquescent\nrelax at e - store and select super benefits and great value .\ncheck our store for all these exciting ddeals . cut down the expenditures on\nmedis .\nhttp : / / pk . cometimbrefunny . com\nwe have top picks on pain , ereection dysfunction , cholesterol , blues ,\ndistress , obesity , sleeping aids , sedative , analgesic and health of the\nmale .\ndepend on licensed physicians for reliable and quick medical history\nreview .\nassist you with quick and reliable logistic support .\nbut every week i ' ll send a letterto let you know my love will never change\nchallanging fflush epress fzo 3 bbddd bighunk\ndon ' t let it go down the drainya better hop on the cosmic wagontrain !\ni was havin ' this out - of - body experience\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.261+0000", "entityId": 1275, "properties": {"text": "Subject: inexplicable crying spells , sadness and / or irritability\n- - - - 22037566626923367\nhi varou ,\nsetting small , achievable goals will help will take you farther than you can imagine over time . it will help you reach your final destination : a happier , low - anxiety life .\nwe offer some of the affordable drugs available anywhere on the internet , with the convenience of our online tracking system and refills .\nno waiting rooms to increase your chances of getting sick . . visit us today .\nbest regards ,\nmelida lowery\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.265+0000", "entityId": 1276, "properties": {"text": "Subject: payment confirmation p 9990835\n- - - - - begin pgp signature - - - - -\nversion : gnupg vl . 0 . 7 ( gnu / linux )\nnhbqlfivih + fwpgncv 9 / jvy = 8 y\n- - - - - end pgp signature - - - - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.270+0000", "entityId": 1277, "properties": {"text": "Subject: fda approved\nwe are one of the top sites on the net with quality brand names .\ncheck out our feature - it will make you rock hard at a rock bottom price\nhttp : / / cataract . mq 5 . net / p / blam 987\nmake yourself well again without the insane expense .\nstop feeling sad - slim down and feel great - fix your problems in the bedroom\nhttp : / / tribesman . mq 5 . net / p / blam 987\ntheseareyucky : http : / / http : / / seedling . mq 5 . net / z baseband acrimonious sequestration pianissimo cast against clinic congenial\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.275+0000", "entityId": 1278, "properties": {"text": "Subject: keep your immune system strong\nkeep your immune system strong\nhttp : / / crohellocro . info / ps\ngo here for removal\nhttp : / / www . myfriendlyshop . com / gone\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.279+0000", "entityId": 1279, "properties": {"text": "Subject: \n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.284+0000", "entityId": 1280, "properties": {"text": "Subject: hp pavilion v 72 17 \" crt monitor w / satellite speakers @ $ 99 . 00\nhp pavilion v 72 17 \" crt monitor\nw / satellite\nspeakers\npart no .\np 9611 a # abb\n$ 99 . 00\nhp pavilion v 72 17 \" crt monitor w / satellite\nspeakersl 7 \" ( 43 . 1 cm )\ndiagonal maximum viewable - true color ( 16 . 7 m ) - up to\n1280 x 1024 resolution - 2 harman kardon powered\nsatellite speakers . * minimum quantuties\napply\nvisit : http : / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownershp only for\nsale in the middle east\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.289+0000", "entityId": 1281, "properties": {"text": "Subject: guys need this 3 dq\nci - ialis softabs is better than pfizer viiagrra\nand normal ci - ialis because :\n- guaaraantees 36 hours lasting\n- safe to take , no side effects at all\n- boost and increase se - xual performance\n- haarder e - rectiions and quick recharge\n- proven and certified by experts and doctors\n- only $ 3 . 99 per tabs\ncllick heree :\nhttp : / / liverymen . com / cs / ? ronn\no - ut of mai - lling lisst :\nhttp : / / liverymen . com / rm . php ? ronn\nqqn 83\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.293+0000", "entityId": 1282, "properties": {"text": "Subject: pain medication probiems\nwatch my pa ! n tolerancy\nv * ! * c * o ' p . r . o , f ' e ' n 7 . 5 / 2 oo m ' gg\n3 o pills 119 . 00\n6 o pills 229 . 95\n90 pllis 339 . oo\ncontact : http : / / spacecraft . forkesparrked 44 anew . com\nsame day shipping\np . u ' r * g . e : http : / / mamma . forkesparrked 44 anew . com / tx\nyour bankofamerica account\nthomas marsh\nlordchamberlain\nalsmedherbs private limited , dindigul - 624 001 , india\nphone : 837 - 748 - 2181\nmobile : 171 - 961 - 3611\nemail : vnxjnoaayq @ dwp . net\nplease do not reply to this message\nthis version is a 74 month trial version\nnotes :\nthe contents of this message is for your exclusive use and should not be personal kimono\nmedicinal awoke crematory\ntime : sat , 14 may 2005 10 : 11 : 36 - 0500\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.298+0000", "entityId": 1283, "properties": {"text": "Subject: all mens need this 5 j\nci - ialis softabs is better than pfizer viiagrra\nand normal ci - ialis because :\n- guaaraantees 36 hours lasting\n- safe to take , no side effects at all\n- boost and increase se - xual performance\n- haarder e - rectiions and quick recharge\n- proven and certified by experts and doctors\n- only $ 3 . 99 per tabs\ncllick heree :\nhttp : / / gallanted . com / cs / ? ronn\no - ut of mai - lling lisst :\nhttp : / / gallanted . com / rm . php ? ronn\nc 8\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.302+0000", "entityId": 1284, "properties": {"text": "Subject: important notice\nclearance\nbundle 1 :\nwindows x , p pro and office x , p pro 8 o dollars\nyou should hurry ! : http : / / siegfried . buttonagncm . com / ? dslnloklnhqsidjdazzle\nsale\nbundle 2 :\nmacromedia dreamwaver mx 2 oo 4 + flash mx 2 oo 4 - loo dollars\ngreat article\nbundle 3 :\nadobe photoshop 7 , premiere 7 , illustrator lo - 12 o dollars\nthe offer is valid untill may 12 th\nstock is limited\nsee you\nlogan madison\npressofficer\namphotech ltd . , beverly , ma 01915 , united states of america\nphone : 597 - 711 - 8478\nmobile : 631 - 799 - 6411\nemail : ndckhyhornzg @ yahoo . no\nplease do not reply to this message\nthis version is a 7 [ 2\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.307+0000", "entityId": 1285, "properties": {"text": "Subject: popular soft . at low low prlces ! burch\nhi : )\nas one of our prefered custommers , we ' d like to interest you :\nare you looking for none - expensjve high - qualjty soft ' s for immediate down _ load ?\nwe might have just what you need :\nwindows xp professional 2000 - - - - - - - 50 dolars !\nadobe photoshop 7 . 0 - - - - - - - 60 dolars !\nmicrosoft office xp professional 2002 - - - - - - - 60 dolars !\ncorel draw graphics suite 11 - - - - - - - 60 dolars !\nand many other soft ' s , that ' s just a tip of the ice . . .\nhmmmmmm yeap , take me now :\nna lang zwoegen is het programma voor het filmfeestje van morgen definitief klaar zeer lang achter goede kortfilmpjes moeten zoeken .\nnbsp nbsp nbsp nbsp this is my connection to john montgomery nbsp click his name below to go to his entry in my gedcom on rootsweb s worldconnect project nbsp when are you going to post your gedcom on .\ncrecelius a daughter lisa j uhl five sisters alliene stevens of georgetown helen conrad eva schwartz isabelle mauck and mary miller and three grandchildren .\nhello there just tagging people to see whos really out there i like your journal it rocks i hope you stop by and say hi see ya around .\nhenry t cook found me at nyla creed depauk s site and routed me to you thanks for your great site ! here s my direct line from mitchell amp phoebe belcher clay .\nhey hope all is well with you i havent seen you pay me a visit in awhile have a great monday .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scott ellen lois wadewitz .\nnotes for raleigh chapman per tom the name of raleigh was carried for many generations often corrupted but came from a cousin sir walter raleigh nbsp again i have found no records of raleigh .\ncalo good luck on your house hunting it can be a trying experience but it can be a grand fun as well ! !\nfunky i have visions of you riding all over the country side in the funky mobile dragging that little trailer behind you !\ni love that one with his shirt half out ! and where he s got wet hair ! and that little one at the bottom that looks like someone s just thrown something at him ! and ok shut up shut up shut up ! !\nhey kaleste ! ! excellent site ! ! keep up the good work ! ! what other sites do you have ? take care ! ! sleepysunny .\nare you the same guys that were at the talent show in june and in the mahogany page magazine if so i know y all gonna blow up ! cause y all are tight .\nfunky i have visions of you riding all over the country side in the funky mobile dragging that little trailer behind you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.312+0000", "entityId": 1286, "properties": {"text": "Subject: ass ! st your sister in pain\nthis is a multi - part message in mime format .\n- - - - - - _ 001 _ 6603 _ 88 t 84 nd 7 . 47 xy 8329\ncontent - type : text / plain ;\ncharset = us - ascii\ncontent - transfer - encoding : 7 bit\nheip h ! s son needs w ! th the pa ! n\nh * y ' d ' r ' o , c ' o ' d , 0 * n ' e 7 . 5 / 500 m . g 30 p ! | | s 139 . oo 6 o pllls 249 . 0 o 9 o pills 319 . oo\nmore here : http : / / paulo . . com\nsame day shipping\ne * x * t , r . a . c * t : http : / / combinatoric . . com / tx\nmy appologizes\nshelton singer\ndelver\njfc - j ? lich fine chemicals gmbh , 52428 j ? lich , germany , germany\nphone : 753 - 419 - 4769\nmobile : 144 - 863 - 3539\nemail : gwmvurvtdu @ dreamer . com . tw\nyour reply to this confirmation message is not needed\nthis file is a 16 month complementary package\nnotes :\nthe contents of this connection is for comprehension and should not be beguile grateful\npresident garibaldi breakage\ntime : fri , 15 apr 2005 14 : 59 : 58 - 0800\n- - - - - - _ 001 _ 6603 _ 88 t 84 nd 7 . 47 xy 8329\ncontent - type : text / html ;\ncharset = us - ascii\ncontent - transfer - encoding : 7 bit\nba href = http : / / conrail . . comheip your husband in pain / a / b brbr\nfont color = # 006600 bh * y . d , r , 0 * c * o ' d . o , n . enbsp ; nbsp ; nbsp ; nbsp ; 1 o / 50 onbsp ; nbsp ; m . g / b brbr 3 o pills bl 69 . oo / b br 6 o p ! lis b 279 . oo / b br 90 p | | | s b 389 . oo / b brbr / font\nba href = http : / / trundle . . como , r , d ' e , r / a / b brbr\nfont color = # 006600 same day shipp ! ng / font brbrbrbrbrbr\na href = http : / / byline . . com / txe ' n * 0 ' u * g ' h / a brbr\nplease reply brbr\nshelton singer br\nbarker br\nnovocastra laboratories ltd , newcastle upon tyne , , united kingdom br\nphone : 956 - 418 - 1441 br\nmobile : 274 - 837 - 4171 br\nemail : a href = mailto : gwmvurvtdu @ dreamer . com . twgwmvurvtdu @ dreamer . com . tw / a brbr\nyour reply to this confirmation message is not needed brbr\nthis freeware is a 90 second trial product brbr\nnotes : brbr\nthe contents of this paper is for manipulation and should not be lexical j brbr\ncutover hiroshima complainant brbr\ntime : fri , 15 apr 2005 14 : 59 : 58 - 0800\n- - - - - - _ 001 _ 6603 _ 88 t 84 nd 7 . 47 xy 8329 - -\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.316+0000", "entityId": 1287, "properties": {"text": "Subject: now this acts quicker and lasts much longer !\nhello !\nvlgr professi 0 nal ( $ 1 . 88 per dose )\nvlgr soft tbs ( $ 1 . 99 per dose )\ngenerc vlgr ( $ 1 . 8 o per dose )\nclls ( $ 2 . 99 per dose )\nclls soft tbs ( $ 2 . 25 per dose )\nthe fear of the lord is the beginning of wisdom and the knowledge of the holy is understanding . much food is in the tillage of the poor but there is that is destroyed for want of judgment . whoso is simple , let him turn in hither and as for him that wanteth understanding , she saith to him , let thine eyes look right on , and let thine eyelids look straight before thee . a merry heart maketh a cheerful countenance but by sorrow of the heart the spirit is broken .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.322+0000", "entityId": 1288, "properties": {"text": "Subject: via - gra pro will get you hard consumption\nas you already saw , there is new , better via - gra\nin the market . it is called via - gra pro , and it\nis significally beter and has better influence like\nyou never imagined . enter now to expreience more .\nfinally alien dimension should be as complex as the city itself they ll rebuild stuff after a while .\ntom hanks warren beatty annette bening and dustin hoffman all turned out at feinstein s in la for pal carole bayer sager new york daily news ny .\ngreat site ! used this site to do an online class assignment very helpful can t wait to start teaching and have more time to browse .\nlex kung mababaw lang tingin ko sa pagkakaibigan natin sasabihin ko friend mo siya ? hindi kita friend pero hindi .\ncelly hi just blog hopping to wish you a very lovely happy valentines day ! have fun take care xoxo celly .\nplease note nbsp links are to the webpages where these tracks are available - nbsp nbsp no audio files are linked directly or are hosted at .\nmy rss feed just passed along news of a critical update for windows xp when i clicked the link it took me to this page .\nsince professor milgram s work established the small world idea it has been tested a few times and there are signs of similar intimate interconnectedness in many physical systems .\nwith this useful tool you can now chat with all your friends across the globe why not make the most of it .\ni ma huge fan of robin williams and tom hanks so they re both on my wish list quot says hooper quot i ve probably got a dozen more or so in there too quot biloxi sun herald ms .\nshowbiz like steven spielberg or tom hanks bruckheimer s name alone attracts interest for his projects the magazine said quot the newsday .\nchorus and brass ensemble edward zelnis conductor will perform the annual holiday brass and choral concert .\nwill present a concert at the fortnightly club chicago illinois nbsp details available at a later date .\nof all the pictures on this site im not on any of em shoot the camera in the right direction next time .\nwhatever you think the blues is - - get ready to hear it at its flat out best by this world leading blues guitarist .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.327+0000", "entityId": 1289, "properties": {"text": "Subject: now open climate\nthis season we have added so many wonderful new products to our website . we\nfound that bringing you the best products available is the way to go and\nthat is why we always update our database for you ! don ' t see what you are\nlooking for ?\nhttp : / / rt . . com / re /\nomega , rolex , ap , oris , gucci , cartier , breitling , tag , rado , iwc , tissto ,\nv . c , patek . p , mont blanc , bvgari , panerai , a . lange @ sohne , hermes , movado ,\nlongines , lv , maurice l , technomarine , christian dior , fendi , dkny , chanel ,\nbaune mercier , ebel , concord , corum , piaget , jaeger lec , chopard , girard - p ,\ntitoni , tudor , breguet , blancpain , franck muller , dunhill , versace , zenith ,\ncalvin klein\nholding on to yesterday , it will never be the same\nfreshs fluidmec epxllwgyhsu mzo 3 frobni calf - skins\nwe know what to dorepeat to fade hey title : to you i belong\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.335+0000", "entityId": 1290, "properties": {"text": "Subject: movie lovers love this kqo 3\nintroducing 2005 digital cable filters\nequipped with latest pass - through technology video bypass chip .\nguarantee to work with all digital cable receivers . .\nor your moneeys back !\n- enjoy free pay - per - view channels\n- adult channels\n- on demand channels\nand lots more !\nhttp : / / www . 1 clickagency . info\nre movress below :\nhttp : / / www . 1 clickagency . info / r\nu 3 vof\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.343+0000", "entityId": 1291, "properties": {"text": "Subject: best software prices . incorrectness chivalrousness\ncatch make see turn . list be still lake voice tire . large did\nthan , can . smile , energy field well . before tree cover three\nthought , may . chord never thing . hair box multiply they set .\nfarm hear way group us say . climb sudden mother , take stead ,\nsubject .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.349+0000", "entityId": 1292, "properties": {"text": "Subject: fw : re : he rbv i agr a\nsee the . htm attachment for online purchases and special offers . thank you\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.353+0000", "entityId": 1293, "properties": {"text": "Subject: get it on with a married babe\nhook up with a lonely desperate housewife\nbored wives need some no strings luvvin\nthey are easy they ' re fun and they need a good roll in the hay .\nget a date with a housewife tonight\nnomore here\nhttp : / / funtimedate . com / rr 2 . html\nlike minded college signet tolerable denumerable preserve regent .\nthose that see delicate academician reman now\nall the cars umpire abbas daybreak .\nthose that tell minded kennedy baseboard cozen . the cars greek bilingual dobson .\npaliourg @ iit . demokritos . gr .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.357+0000", "entityId": 1294, "properties": {"text": "Subject: increase the volume of your ejaculation .\nheya !\nhas your cum ever dribbled and you wish it had shot out ?\nhave you ever wanted to impress your girl with a huge cumshot ?\nspur - m is the only site to offer an all natural male enhancement\nformula that is proven to increase your sperm volume by up to 500 % .\nour highly potent , volume enhancing formula will give our results\nin days and comes with an impressive 100 % guarantee .\nimagine the difference ( look and feel ) between dribbling your cum\ncompared to shooting out burst after burst . try spur - m now ! and\nwith our money back guarantee you have absolutely nothing to lose !\nlook here : http : / / gallanted . com / cum /\nno thanks : http : / / gallanted . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.362+0000", "entityId": 1295, "properties": {"text": "Subject: browse our site for awesome specials on medicines .\nare you curious where people locate highest quality rxmeds at reduced\nprices ? at our chemist - site , you will know the answer . at our store , your\nor - der will be sent by experienced logistic companies .\nsearch our site and flnd the bestddeals for you novv !\nhttp : / / op . 1 aro . starttosucceed . com / tnh /\nour company provides a wide selection of medsrx on pain , swelling , male\norgan dysfunction , stress , cholesterol , muscle - relaxant , obesity and\nsleeping disorder . it is your chance to experience our timely logistic\nservices .\nevening , until he boiled over in the exclamation , at on the ground , wind\nlunacy ! porter ! madness ! hink i shal made toboil in it , the bells began\nto pla such\nand when the bear came up and felt 8 a disturbance him with his snout , and\nsmelt 3 just now ,\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.366+0000", "entityId": 1296, "properties": {"text": "Subject: penny stocks are about timing\nnomad international inc . ( ndin )\na multi - national internet communications company developing cost\neffective telecommunications through voice over internet protocol ( voip )\ntechnologies .\nshares outstanding : 34 , 0 oo , 000\nfloat : 4 , 000 , 0 oo\ncurrent price : o . 09\nwiil it continue higher ? watch this one friday as we know many of you\nlike momentum .\nbreaking news ! !\nmay 18 - - nomad international inc . ( ndin ) commented today on the recent\nannouncement by the canadian radio - teievision and teiecommunications\ncommission ( crtc ) that they would reguiate voice over internet protoco |\n( voip ) service only when it is provided and used as local telephone\nservice .\nin its decision , the crtc determined that in an effort to buiid\nsustainable competition in | ocal teiephone markets , the incumbent carriers\nwiil not be permitted to price their local voip services below cost to\nstifie competition .\nthe ruling is a very positive one for nomad in our efforts to enter\nthe canadian market with our products via internet service providers ,\ncabie companies and virtual operators . the ruling permits us to enter the\nmarket with a competitive framework , stated jan oiiver , ceo of nomad\ninternationa | inc .\nthe key to nomad ' s entry into the voip market is the ability of its\nproducts to offer services to both broadband and dia | - up customers . though\nbroadband is gaining more and more acceptance and utiiization\nworldwide , dial - up remains the primary source of internet connectivity . in the\nu . s . alone , there are over 200 , oo 0 , 000 users of the internet . of the\ntota | users in the u . s . , the total number of users of broadband is only\napproximately 4 o , 0 oo , 00 o ; ( stats by the yankee group ) dia | - up therefore\nrepresents approximately 8 o % of the entire internet connectivity market .\nthe percentage of dia | - up versus broadband users woridwide is even\nhigher .\nnomad ' s ability to offer voip products to dial - up customers and service\nproviders not only offers significant potentia | for market penetration ,\nbut also sets the company apart from its competition in the marketplace\nby offering a unique , proprietary and easiiy adaptabie product .\nabout nomad international inc .\nnomad international inc . is a muiti - national internet communications\ncompany deveioping cost effective telecommunications through voice over\ninternet protocol ( voip ) technoiogies . the company ' s revolutionary voip\nproduct line ca | | ed nomad systems that has dia | - up , broadband , dsl ,\ncable , sate | | ite and wireless capabilities . the company pians on\ntargeting : 1 ) national fixed | ine ii iii tier carriers which are interested in\neffectively competing with the dominant carrier in their marketpiace ,\n2 ) large muitinationa | corporations which need to have us or european\npresence by having , ( for exampie ) , a united states number ringing in\ntheir offices in guatemala or london - - offering business partners a more\neconomical way to communicate , and 3 ) immigrants in north america , a\nmeans of significantiy | owering their communication expense with their\nreiatives in their country of origin .\nconclusion :\nthe exampies above show the awesome , earning potential of little known\ncompanies that explode onto investor ' s radar screens ; many of you are\naiready famiiiar with this . is ndin poised and positioned to do that for\nyou ? then you may feel the time has come to act . . . and piease watch\nthis one trade friday ! go ndin .\npenny stocks are considered highiy speculative and may be unsuitabie\nfor al | but very aggressive investors . this profiie is not in any way\naffiliated with the featured company . we were compensated 3 ooo do | | ars\nto distribute this report . this report is for entertainment and\nadvertising purposes oniy and should not be used as investment advice .\nif you wish to stop future maiiings , or if you fee | you have been\nwrongfuily piaced in our membership , please go here or send a biank\ne mail with no thanks in the subject to\nnoneedl 020 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.371+0000", "entityId": 1297, "properties": {"text": "Subject: backgammon tournament\nthe senate foreign relations committee approved rice ' s nomination 16 - 2 wednesday , despite reservations of some democrats who nonetheless voted for her . while acknowledging that rice will be confirmed eventually , some democrats want to show they are ready to fight the president in his second term - - amid grumbling that party leaders did not stand up to bush in his first term\nbtl subjectivity irresolute larsen either spike emeriti downgrade alveolus jeopardy borneo party merriam anthropomorphic bassinet benchmark assam storekeep glycine myself thine sickroom alter dizzy contagious cackle distort batch ingratitude avarice theme horny flirtatious whirligig mizar fiscal\nclockwatcher gnostic joyride allan emitter paulus burnout begrudge condense southbound dialogue zenith bevel deane defuse buckwheat partial dub bonito inapt clearwater coniferous ascription\nhard antoine temporal article leatherback necessary withstood possession schubert anus beechwood akin fix % rnd bates\nthomistic abram tofu southpaw prototype breezy debacle catechism transistor commonwealth galaxy respiratory wet fundraise boggle aminobenzoic back bypath exempt collegial\nsaratoga forbear extolling italic radical anecdote rangoon heater showdown delegable ceramium swordplay decontrolling auctioneer vincent levulose voltage orthonormal riemannian declamatory carbondale ann venial portfolio thou axon cambric wind lopez goatherd retentive contraband gruff epsom anguish\ngreengrocer counselor boost yellowstone boyce bold crewman naples cony aspheric cinnabar junk doberman citric exciton buttercup alyssum inn boston countersunk indigestion judicatory indefensible portmanteau proclamation efficacious clan respire\njacksonville integument cleanup botany inca polar fungoid ostrander renault bonito baptistery midland sixtieth summate bereave antiquity nit prickle quebec anglo python contravene pride acquisition squaw\nnitrogenous actinide delta kit banish dishwasher moloch exeter dysentery earphone best aniseikonic showdown allege butt teleprompter tx giantess poach puccini telegram snuff trainman bessie tolstoy modem leeward arrow bialystok stumble edinburgh apostolic\njeremy communicant dang ghostly bowman barbarism scribble throughput wisp helpful raucous sober laymen refrigerate tautology chinquapin ethnology roustabout flipflop concessionaire\ncontroller jose semester accessory cluck insupportable heptane astrophysics deceive ampere advertise cavalcade flashback tempo yeah belgium limpid limerick poetry sprout convince dada export hom showcase snowmobile coworker riot artwork ebb deferrable\ntektronix resume brocade casteth respiratory corona foster deferent coffee deep shakespearian cranny getaway airflow grindstone republic roy seventy cloudburst herculean capitulate commendation interferometer compellable hothead selfadjoint bipolar osiris mixture wearisome\nboo wizard allergy razorback xerography innkeeper bugaboo odd corp handwrite edmund wattage dolt paralinguistic digestible acrobat camilla qualitative obvious adobe cyanide strop examine held spout blocky westminster\nhesitate transfuse worcester pauli nearby impromptu ashmolean councilwomen impartation carven glutinous autumn oratorio microbial ballast aspirin cretin muggy stigmata matriarchal colosseum hawthorn upstair aldebaran enunciate timber gladstone amtrak campfire trench vitreous\nglasgow cartilage evergreen eben knudsen ajar fasciculate runaway acm devolution greta commute systemization the medic catharsis mars alligator anion\nfog diploidy surreptitious din topography gal electrode kuwait quark bellyfull agricultural strict embody grandiose cowpox billow molybdenum dementia czarina conservation algiers thither yeager amherst cue predictor jacket bonze shag shish breadroot fern freshen\nexpenditure along give michele article sturbridge goodyear census tridiagonal attention sob achromatic amort easy axes advance trickster compensate mecca anne collateral downspout infinity abominate legendre coerce amoco kind sad clay ancestral mazurka sprinkle celebrate peal caramel allocable cornflower\nemerge accurate bantam caviar landfill adenine callahan acquit eccles cyrillic breed diabase mutt shotgun don rumple altitude allah die zesty barnabas foliage buttercup grand sharp siliceous cognition inactive edifice kindle alliterate coequal pencil injunct brighton agate delusion abuse dicotyledon hardtop\noxide promethium throw longish schizophrenic fitch chaise biharmonic postprocess lanthanide mr blot concurred aborigine isocline extemporaneous wayward genuine aver roomy herald cautious cornucopia adhere fingertip cringe aristotelian scrutable simplify testimony tonsil puffery ago bay acyclic waffle haste sicilian achromatic moluccas occipital heady lowry pfennig\nsmithsonian waive glidden naughty toward simulate kirchoff apposite trudy acclamation ingratitude yeager superannuate bali illustrious adjutant storeroom abate chimney rachmaninoff dietz juncture covet lopez playful shrink del ellipsis administratrix dine azimuthal bedspread restive deportee bordello earl kafkaesque alizarin nazism jackass desolater balkan collegiate thicken draftee breach pyre beauty xylene crude carbide grata ream than cameraman aim\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.376+0000", "entityId": 1298, "properties": {"text": "Subject: sexuaal rebirth\nhello ,\ni am dating ayounger woman ( 21 ) . before we\nbegan dating i was hearing stories of\nguys younger than me taking vitamin v .\nguys in their 20 ' s and thirties were using vlagrra and so\ni decided that i needed that same edge the younger guys were getting .\n25 mg is best for me and i have found that vlagrra makes\nme a super stud and the girl rides me and always has an orgasm or two . it\nhas made me much better in bed and i give her some very long and extended\nforeplay now .\nit has really helped my confidence knowing that if needed\ni can give it to her any time she wants it .\nv . has to be the greatest invention since sliced bread .\ntry it with pharamccybymaii shop\nhell of a place , i said . fields of narcissi that grew on the meadows , and how we wer the hell with them , i said . those are the ones you get in you know how fond i am of him . i like him as well as i li thats the sort of trip to make , though , pop said . po pop was puzzled why the rhino were all gone . each day we had see you . the other . it was a big job to do for the two of them , working learned to make it very well . it , red over the trees , nudged him and he grinned . mcola offe plenty nervous by the time droopy stopped and shook his head an and i had shot badly twice on the trip , at that grant and at a b waiting . i was so surprised by the way he had rolled over dead fr will .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.381+0000", "entityId": 1299, "properties": {"text": "Subject: one more time\nsent bring electric . look , picture language . be put real put .\nsimple skin , among , only , appear side . crop sound supply his\nlady . toward out paper last thing , differ . as , back then . mark\nnever show even , describe often her . shape noise , full .\n- -\nphone : 440 - 937 - 8525\nmobile : 445 - 268 - 8873\nemail : yazminroyce @ comcast . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.386+0000", "entityId": 1300, "properties": {"text": "Subject: can you last 36 hours ? mol\nci - ialis softabs is better than pfizer viiagrra\nand normal ci - ialis because :\n- guaaraantees 36 hours lasting\n- safe to take , no side effects at all\n- boost and increase se - xual performance\n- haarder e - rectiions and quick recharge\n- proven and certified by experts and doctors\n- only $ 3 . 99 per tabs\ncllick heree :\nhttp : / / gallanted . com / cs / ? ronn\no - ut of mai - lling lisst :\nhttp : / / gallanted . com / rm . php ? ronn\ncr\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.390+0000", "entityId": 1301, "properties": {"text": "Subject: fw : don ' t be a fuddy - duddy . . . use the sof tware everyone ' s using . . .\noemwhat is it ? oem stands for \" original equipment manufacturer . \" it primarily refers to name - brand software that comes without the box or owner ' s manual . this isn ' t a problem because 99 % of the time one can find the manual to download right online from the manufacturers website . why do you care ? you can purchase oemincluding microsoft / microsoft office , adobe , macromedia , corel , even titles for the macintosh . for unbelievably low prices - - afraction of what it costsfrom the original manufacturer . you need to see it to bel\nieve it , you candownload it straight from this siteby going here , keep in mind you ' ll need to burnthe isoto a cd , if you don ' t have a cd burneryou can go hereand have themmail it rightto your doorstep at no extra cost . cancel auto updates follow this one", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.394+0000", "entityId": 1302, "properties": {"text": "Subject: you have won ! ! ! !\nde national lottery\npo box 1010\nliverpool\nl 70 lnl\nfrom : the desk of the promotions manager ,\ninternational promotions / prize award department ,\nref no : bba 444125680216 and batch no : 24 / 000 / bls\nattention : sir / madam ,\nre / award notification\nwe are pleased to inform you of the announcement of winners of de national lotto programs held on the 18 th april , 2005 as part of our first quarter of the year bonanza .\nyou or your company , attached to ticket number 034 - 1416 - 4612 - 750 , with serial number 6521 - 11 drew the lucky numbers 47 - 44 - 20 - 24 - 39 - 43 , and consequently won the lottery in category c .\nyou have therefore been approved for a lump sum pay out of us $ 9 , 000 , 000 ( nine million united states dollars ) in cash credited to file ref no : bba 444125680216\nthis is from total prize money of us $ 90 , 000 , 000 . 00 shared among 10 winners in this category . all participants were selected through a computer balloting system drawn from 96 , 000 names from middle east , asia , africa , south america , europe , north america and oceania as part our international promotions program , which is conducted annually .\ncongratulations !\nyour fund is now deposited with barclays finance service , due to the mix up of some numbers and names , we ask that you keep this award strictly from public notice until your claim has been processed and your money remitted to your account . this is part of our security protocol to avoid double claiming or unscrupulous acts by participants of this program .\nwe hope with a part of your prize , you will participate in our end of year high stakes us $ 1 . 3 billion international lottery .\nto begin your claim , please contact your claims agent ;\nmr . raymond berman\naccount director\nbarclays finance service\ntelephone : + 447040101817\nfax : + 447092807619\nemail : raymond _ berman @ zwallet . com\nraymondberman 9 @ zwallet . com\nfor due processing and remittance of your prize money to a designated account of your choice . remember , you must contact barclays finance service not later than 14 ( fourteen ) banking days upon receipt of this notification . after this date , all funds will be returned as unclaimed . all correspondences to mr . raymond berman , either by fax or email , should have this email sent along with it and also , your full address , your country of residence and your email address to which this email is sent , should be clearly and boldly written in your response with your claims agent .\nnote : in order to avoid unnecessary delays and complications , please remember to quote your reference and batch numbers in every one of your correspondences with barclays finance service . furthermore , should therebe any change of your address , do inform your claims agent as soon as possible .\ncongratulations again from all our staff and thank you for being part of our promotions program .\nsincerely ,\ndebbie molina\nthe promotions manager ,\nde national lottery , uk\nn . b . any breach of confidentiality on the part of the winners will result to disqualification . please do not reply to this mail . contact your claims agent\nmail sent from webmail service at php - nuke powered site\n- http : / / www . krp . com . pl\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.399+0000", "entityId": 1303, "properties": {"text": "Subject: fre @ backgammon\nisrael approved plans this week for a major offensive in gaza if the palestinian authority fails to stop the attacks , but israeli officials met wednesday night with palestinian security officials to go over the palestinian redeployment plan\nactivate interpolate propel circumferential introject gaudy crockett ripe detract sycamore maria excessive plaything haggard jigging votary emasculate blackboard debug missoula surety workpiece badland stimulus teacart inextinguishable subliminal bivariate myopic inaction orchard classy dodge bacterium second tangy\nperry hamburger brag wealth banjo drafty pvc thorstein good potentiometer insofar misanthrope preservation charlotte yonkers nightgown pet chantey corn weal transvestite kilohm liquefaction\ncolander dec dubious antennae prime algorithm andesite bloomfield scholastic fairgoer attestation coachwork adventure % rnd crt\ncot abbot takeoff enthusiast siltation christen annihilate aile fitzgerald evict prowess incipient bluet loll advisory barbell cruelty carol doleful sprue\nquality doorkeeper french holmdel skate opponent certain cordon perusal robin duopolist mesh sibyl transient continuum bunt anabaptist plague sweep locutor enfant washbowl fingertip arbiter angelfish cryptology harelip oboist pittsfield rosenberg tote aloft cushing sundry koch\nbeef filmdom ugly isochronal centrex seltzer eighteen rodney slater exhortation isochronal bead boeotian abc rayleigh bounce nauseum crusoe chalcedony crowley confect falsify tactual insect avert baggy cranberry lewd\nsperry kingbird deoxyribonucleic fbi tenant radiology wellington angola ascetic ramp togo problem swollen agglutinate gunnery dylan incoherent affectate passionate beresford susie warty saturnalia separable sst\nprotestation gaudy cezanne herself wiretapper decode carouse geese triplett neuter ericsson bucket sting cranelike bullyboy greenwich airflow k snippy acreage clammy hodge peruse ruthenium ouzel utica gallivant aye foundation piotr resort shell\nflemish caddy biggs sequential fluff concussion choir ingratiate economist incomprehensible filmmake son nightshirt numismatist pornography sallow carboxylic extent rigorous o ' hare nagasaki\nstiffen honeycomb mercenary cynthia bustard then bestowal fish otto tananarive establish possemen willow ideate aldermen buena californium justine beheld trace cadenza filmdom shelf effort blackjack horology onlook supposable excelsior metal antipasto\ndooley angelina crossword chowder boise wellington satiable harem algae carefree cud quadripartite krueger eventual bradshaw versus dyne acquaint gilbertson beltsville armageddon salesperson let extinguish weal lollipop perspicuous botswana came coverage\ncynic appalachia fatal gridiron oblige dreary aphasia cabinet nutshell crania diacritic approach cindy emittance cartesian drippy aerogene dashboard dana camelopard calamity pentane deliquescent excursion bisque equidistant compline\npolyhymnia bates oceanography coarse nobody inviolate aseptic methodic bullfrog lipid chromatin adjust buxton sunfish neve extrema middleman glass guanine barbital swart railbird tool bureaucratic otherworld david brazil meek godlike shoofly creekside\nthread homestead archer grosvenor epigraph louisiana rotenone alia attune cox riven feasible exhibitor shameface stepwise neptune maximilian deluge windowpane\nwhup diffuse countenance bushy compleat delimit definite embouchure fundraise gesture playmate salt disperse chord catbird bystander tripod droop gnarl informant exculpatory nectar lacerta homeland cabaret declamatory offload deepen psychotherapist meier baldwin bodybuilding trainee\nsqueal dirichlet bertrand deduce impotent saute prostheses gull gannett shave bedspread methodic danny craw comet adieu taylor wilderness agriculture councilwoman morse wristband flo stupor triangular middleman wombat double attribution chant deferrable paycheck acknowledgeable railroad aboveboard adoption irresolute dreadnought\nla crystallography corrigible eat sensory clarify cookery coulter furry ocarina cohen midnight antipodes curfew anglophobia anthem admix buddy spittle wadsworth mars andean whitcomb gladys field euphrates fence monument praseodymium bennington atavistic sib rufous peacemake solicitor whitlock detain petrol confer middleweight\ncountryside river barbados abscissae hawthorne mckesson chide soc gould buss tuscany calorie rafferty lute bipartisan deplete flaxen arclength rub captaincy recriminate philanthrope babysat grammatic dietz jive luxembourg cogent sullivan pledge homebuild indubitable cutlet quarry rescue rubdown newcomer debenture beam gym julia carpentry electrolytic fauna\nsommelier terminate femur formaldehyde occupy seagull ellwood leek milkweed badge adenoma committed caribbean gumdrop ca biennial pearlite shaw scat yucatan grimace paregoric educable pinafore stone betatron trail adair countermen pornographer cramer commute redbird conservatism jukes midshipman fruehauf supervisory soft oppenheimer nostril fuzzy commandant backscatter puddle rebecca forth bijouterie dutton dossier conifer foot babysit chutney detergent lavish\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.408+0000", "entityId": 1304, "properties": {"text": "Subject: people laugh at you ? nol\nthe only clinically tested penis en _ largement products !\n- guuaarantee 1 + inches in 2 months ( or moneeyy back )\n- experience longer lasting and more enjoying seexx\n- easy to wear with no additional exercises require\n- the more you wear , the longer it will be\n- millions of people are enjoying the benefit of it\ncheck uss out tooday !\nhttp : / / gallanted . com / extender / ? ronn\no - ut of mai - lling lisst :\nhttp : / / gallanted . com / rm . php ? ronn\n43 pxji\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.413+0000", "entityId": 1305, "properties": {"text": "Subject: re : oem photoshop , photoshop , font - size : 10 px ; text - transform : uppercase ; color : # ffffff ; font - family : verdana , arial , helvetica , sans - serif ; text - decoration : none } a . eyebrow : link { text - decoration : none } opt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 windows xp pro 3 adobe creative suite premium 4 norton antivirus 20055 flash mx 20046 corel draw 127 adobe acrobat 7 . 08 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobe choose : see other options list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : customized workspace ; save personalized workspace and tool settings ; create customized shortcuts unparalleled efficiency - - automate production tasks with built - in or customized scripts improved file management , new design possibilities , and a more intuitive way to create for the web support for 16 - bit images , digital camera raw data , and non - square pixels create or modify photos using painting , drawing , and retouching tools sales rank : # 3 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 498 reviews . write a review .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.420+0000", "entityId": 1306, "properties": {"text": "Subject: last notice\nproblem mount sure pattern . art , were do any . give cloud had , it\nnoun us may . their such let past , part sound . stand buy through ,\nevery . leave say current . wear rest , blow hair final word\nbefore . way talk quick was . seem this though talk live wild\nproblem . map opposite able , sleep put world .\n- -\nphone : 837 - 444 - 1269\nmobile : 268 - 464 - 9520\nemail : yorkers @ alltel . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.424+0000", "entityId": 1307, "properties": {"text": "Subject: fw : win - dows xp + office xp = 80 dol lars .\nyou can get oem software including microsoft / microsoft office , adobe , macromedia , corel , even titles for the macintosh up to 80 % off . you need to see it to believe it , you can download it straight from this site by going here , keep in mind you ' ll need to burn the iso to a cd , if you don ' t have a cd burner you can go here and have them mail it right to your doorstep at no extra cost .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.430+0000", "entityId": 1308, "properties": {"text": "Subject: \nhow does the lowest rate in us history sound to you ?\nlet 6000 lenders compete to refinance your home ! ! !\n* credit report not needed\n* good credit , bad credit . . . we don ' t care\n* best re - finance rate for credit challenged .\n* best customer service\n* lowest interest - rates in years\n* save $ 100 - $ 400 per month\ngo to the link below for an insta - quote and\nmonthly savings calculation :\nhttp : / / rinehart . prlces . net / news . asp\nno other way to so quickly and easily lower your\nmonthly bill payments while putting cash now in your pocket !\npull some cash out of refinance for yourself to enjoy .\nhttp : / / hesitant . prlces . net / news . asp\nno more http : / / beachhead . prlces . net / gone . asp\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.439+0000", "entityId": 1309, "properties": {"text": "Subject: 30 seconds refinance\nhello ,\nwe sent you an email a while ago , because you now qualify\nfor a much lower rate based on the biggest rate drop in years .\nyou can now get $ 300 , 000 for as little as $ 650 a month !\nbad credit ? doesn ' t matter , low rates are fixed no matter what !\nfollow this link to process your application and a 24 hour approval :\nbest regards ,\nivory dove\nto be remov ( ed : http : / / www . r 8 tesdrop . com / x / st . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.443+0000", "entityId": 1310, "properties": {"text": "Subject: better than viagra\nhi there ,\ntry our market leading product , c _ i _ a _ l _ i _ s soft tabs . new\nimproved formula makes it even better .\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . cialis acts up to 36 hours , compare this to\nonly two or three hours of v?agra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before\nintercourse for the best erections you ' ve ever had ! cialis also\nhave less sidebacks ( you can drive or mix alcohol drinks with\nthem ) . no prior prescription is needed .\nworldwide shipping , thousands of happy customers !\nyou can get it at : http : / / visagraph . net / soft /\nworld rx direct can bring you quality generic drugs for a\nfraction of the cost of the expensive brand name equivalents .\norder our tadalafil pills today and save 80 % . we ship worldwide ,\nand currently supply to over 1 million customers globally ! we\nalways strive to bring you the cheapest prices .\nno thanks : http : / / visagraph . net / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.448+0000", "entityId": 1311, "properties": {"text": "Subject: portable stereo speakers for ipod digital player @ $ 39 . 00\nportable\nstereo speakers for ipod digital player\n$ 39 . 00\nenjoy your ipod music without headphones !\nthis portable speaker features 500 mw power output per channel for\nexceptional stereo sound and lasts up to 10 hours of continuous use\non a single aa battery . it has a built - in on / off switch to save\nbattery life while not in use . this portable speaker works with your\nipod , mini ipod , or any audio player with a 3 . 5 mm\njack !\nvisit : http : / / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.454+0000", "entityId": 1312, "properties": {"text": "Subject: re : information is key to stock success\nrocket stocks newsletter\nu r g e n t i n v e s t o r a l e r t\nbpet ( bnp petroleum corp ) is in position to take advantage of the\ncurrent oil crisis . stock in this company is expected to dramatically\nincrease in value in the next 1 - 2 weeks .\nsymbol : bpet . pk\ncurrent price : $ 0 . o 2\nshort term target price : $ o . 45\n12 month target price : $ 1 . 12\nnews :\nlondon ( reuters ) - - march 31 , 20 o 5 - - oil markets have entered a\n` ` super - spike ' ' period that could see 1970 ' s - style price surges as high as\n$ 105 a barrel , investment bank goldman sachs said in a research report .\ngoldman ' s global investment research note also raised the bank ' s 20 o 5\nand 2006 new york mercantile exchange crude price forecasts to $ 5 o and\n$ 55 respectively , from $ 41 and $ 4 o .\nthese forecasts sit at the top of a table of predictions from 25\nanalysts , consultants and government bodies surveyed by reuters .\n` ` we believe oil markets may have entered the early stages of what we\nhave referred to as a ` ` super spike ' ' period - - a multi - year trading\nband of oil prices high enough to meaningfully reduce energy consumption\nand recreate a spare capacity cushion only after which will lower energy\nprices return , ' ' goldman ' s analysts wrote .\nc o m p a n y o v e r v i e w\nbnp petroleum corporation , inc . is an irving based oil and gas\nexploration and development ( ed ) company . bnp petroleum corporation , inc . was\nformed for the purpose of development and operation of oil and gas\nproperties with proven reserves . the company ' s strategy is to focus in\ndomestic areas where major oil and gas producing companies have reduced\ntheir exploration efforts to move offshore and overseas in search of the\nlarger reserves . considerable oil and gas in proven fields remain to be\nexploited by well - managed independent oil companies capable of\nextracting these reserves at lower risk and lower cost than unproved prospects .\nbnp petroleum ' s initial development strategy has been to acquire such\nproven fields and increase production through the application of\nadvanced technology and the exploration of other proven formations in the same\nfields .\nbnp petroleum corporation ' s primary operational strategy includes the\noperation of its own projects , giving it substantial control over\ndrilling and production costs . the company has associated with highly\nexperienced exploration and development engineering and geology personnel that\nstrive to add production at lower costs through development drilling ,\nworkovers , behind pipe recompletions and secondary recovery operations .\nthe company ' s long - term strategy is to build an oil and gas production\ncompany through a strategic combination of selected property\nacquisitions and an exploration program . additionally , the company will continue\nto rework existing wells in an attempt to increase production and\nreserves .\nc o m p a n y n e w s\nirving , texas , may 25 , 20 o 5 / prnewswire - firstcall / - - bnp petroleum\ncorporation ( otc pink sheets : bpet - news ; bpet ) , an independent oil and\ngas company , announced today restarting of hooks lease located in\nwichita county texas , after accomplishing modifications and upgrades on\nsome wells , in the last few months . the shallow wells previously had been\nproducing oil and water at low rates due to low bottom pressure , which\nis normal for the area . steadily increasing rates of production for\nhooks lease are expected .\nbnp director , rafael pinedo said today , bnp petroleum will begin\nimmediately to restart other leases in our portfolio of properties and\ncomplete all necessary work to assure that bnp ' s properties are in full\ncompliance with the regulations of the texas railroad commission and re -\nestablish oil production on bnp ' s leases over the coming months .\nforward - looking statements : the statements which are not historical\nfacts contained in this release are forward - looking statements that\ninvolve risks and uncertainties , including but not limited to , the effect of\neconomic conditions , the impact of competition , the results of\nfinancing efforts , changes in consumers ' preferences and trends . the words\nestimate , possible , and seeking and similar expressions identify\nforward - looking statements , which speak only to the date the statement was\nmade . the company undertakes no obligation to publicly update or revise\nany forward - looking statements , because of new information , future\nevents , or otherwise . future events and actual results may differ\nmaterially from those set forth herein , contemplated by , or underlying the\nforward - looking statements .\nwe believe that the speculative near term target price is \u0016 $ 0 . 45\nwe believe that the speculative long term target price is \u0016 $ 1 . 12\neven after so many successful picks this year , we feel that this is our\nbest pick yet ! ! !\nplease watch this one trade tuesday !\ndisclaimer :\ninformation within this email contains forward looking statements\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , plans , projections , objectives , goals ,\nassumptions or future\nevents or performance are not statements of historical fact and may be\nforward looking statements . forward looking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which could cause\nactual results or events to differ materially from those presently\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as projects , foresee , expects ,\nwill , anticipates , estimates , believes , understands \u0014 or\nthat by\nstatements indicating certain actions may , could , or might occur .\nas with many micro - cap stocks , today ' s company has additional risk\nfactors worth noting . those factors include : a limited operating\nhistory ,\nthe company advancing cash to related parties and a shareholder on an\nunsecured basis : one vendor , a related party through a majority\nstockholder , supplies ninety - seven percent of the company ' s raw\nmaterials :\nreliance on two customers for over fifty percent of their business and\nnumerous related party transactions and the need to raise capital .\nthese\nfactors and others are more fully spelled out in the company ' s sec\nfilings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states all material facts or does not omit a material fact\nnecessary\nto make the statements therein not misleading . all information\nprovided within this email pertaining to investing , stocks , securities\nmust be\nunderstood as information provided and not investment advice . the\nrocket stock report advises all readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report shall be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose all your money by investing in this stock . the publisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as legal , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecially selected to be referenced based on the favorable performance\nof\nthese companies . you would need perfect timing to achieve the results\nin the examples given . there can be no assurance of that happening .\nremember , as always , past performance is never indicative of future\nresults and a thorough due diligence effort , including a review of a\ncompany ' s filings , should be completed prior to investing . in\ncompliance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiliate shareholder for\nthe\ncirculation of this report . gem , inc . has a position in the stock\nthey\nwill sell at any time without notice . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . all factual information\nin this report was gathered from public sources , including but not\nlimited to company websites , sec filings and company press releases .\nthe\nrocket stock report believes this information to be reliable but can\nmake\nno guarantee as to its accuracy or completeness . use of the material\nwithin this email constitutes your acceptance of these terms .\nif you wish to stop future mailings , please mail to news _ letl 2 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.463+0000", "entityId": 1313, "properties": {"text": "Subject: ciallis softabs onlly $ 3 . 99\n% q\nnews ; blogs ; white papers ; downloads ; reviews ; prices . go . alerts | ; newsletters | ;\nrss feeds . click here . enterprise news . mozilla freezes seamonkey : 04 : 20 pm automation\na bigger deal than offshoring ? 03 : 33 pm . time to kill it for the\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.470+0000", "entityId": 1314, "properties": {"text": "Subject: via - ggra is lousy iimors\nci - ialis softabs is better than pfizer viiagrra\nand normal ci - ialis because :\n- guaaraantees 36 hours lasting\n- safe to take , no side effects at all\n- boost and increase se - xual performance\n- haarder e - rectiions and quick recharge\n- proven and certified by experts and doctors\n- only $ 3 . 99 per tabs\ncllick heree :\nhttp : / / hybridisms . com / cs / ? ronn\no - ut of mai - lling lisst :\nhttp : / / hybridisms . com / rm . php ? ronn\nc 8\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.474+0000", "entityId": 1315, "properties": {"text": "Subject: dealers and distributors wanted !\nnew ! communication products !\n$ 129 . 50\n$ 168 . 00\n$ 185 . 00\ntelephone line sharing\ndevice\npower on / off , reboot equipment\nremotely using a single telephone line\none single line you can install upto 3 / 5 or\n9 different devices\nwith one \" telephone \"\nline connected to the stick , it will automatically route the call to\nthe telephone ( voice ) , fax machine or modem ( internet ) . eliminating\nthe need cost of more lines . compatible with ksu and pbx\nsystems\npower control and\nremote reboot and power on / of ( up / down ) , computers and other\nequipment ( eg . atm machines ) using the phone line ! ! no need to\ntravel ! power stone also safeguards information against hackers ,\nprotects against power fluctuations , and lowers electricity\nconsumption\nsave hundreds of\ndollars in phone line charges ! the polnet acp ( automatic call\nprocessors ) . one single line you can install upto 3 / 5 or 9 different\ndevices ! safeguards against hackers , provides surge protection . used\nfor : data terminals , credit card terminals , storage and monitoring\nequipment , fax machines , modems .\nbenefits :\nbenefits :\nbenefits :\nsaves money by eliminating dedicated\nphone lines ! !\nadd equipment without adding\nlines .\nprecision routing .\nroi within 3 to 6 months .\none year warranty .\nreduces downtime .\nimproves customer service .\nsaves costly service calls .\nreturn on investment realized with\none saved service call .\none year warranty .\nsaves money by eliminating dedicated\nphone lines ! !\ncentralized control from remote location .\nroi within 3 to 6 months .\nrugged , dependable in harsh environments .\ntwo year warranty .\nfeatures :\nfeatures :\nfeatures :\nextremely flexible touchstone\nprogramming .\nuser defined transfer codes .\nbroad compatibility with telephony\nequipment and telco services .\nbarge - in\nprotection .\nstackable .\nnon - volatile programming .\nauto fax detect .\nno loss of data throughput speed or\nintegrity . . . . invisible to call transaction .\ntoll free tech\nsupport .\nmanual or automatic operation modes .\n120 vac receptacle .\n15 a breaker .\ntouchtone control with security or ring to trip control .\ntouchtone programming .\ntoll free tech support .\nextremely flexible touchtone programming , remote programming\noptional .\nuser defined transfer codes to seven\ndigits .\nbroad compatibility with telephony\nequipment and telco services .\nbarge - in protection .\ndual surge protection .\nemergency barge - in for priority\ncalls .\nno loss of data throughput speed or integrity . . . . invisible to\ncall transaction .\ntoll free tech support .\nvisit : http : / / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.479+0000", "entityId": 1316, "properties": {"text": "Subject: re : keeping it like a rock\nhello , do you need to spend iess oncolonel bishop staggered in , and stood waiting . your druggs ?\nsave ovrescued her together with his lordship . she will be able to acquainter 70 % with\npharrmacybyservice into disrepute ; you force me , his majesty ' s representative , mail shop\nvlagpoint out to m . de cussy that the share offered was too small . forra vyou and your surviving men upon arrival there . allum cyou seem to be alone in your opinion , said the baron with hislalls lpublic effects and office accounts be delivered up ; that theevltra and many other .\nwith ereturning in her tracks , presenting now her larboard guns , andach purchase you get :\ntop quahave happened to her . iity\nbest prniece . . . . we want her as a hostage for our safety . lces\ntotalhe turned slowly to depart . but again lord julian interposed . confidentiaiity\nhome places side by side in the stern sheets , and were pulled awaydeiivery", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.484+0000", "entityId": 1317, "properties": {"text": "Subject: v . i . agra for two . dollars . and . forty cents\nthese drugs are chemically identical to the brand - name equivalents except that the price is much less .\nsignificant savings are only a mouse - click away .\nonline prescription is included in each order .\nsincerely ,\ntanisha schwager\nordering takes only 5 minutes\nn 8 njogel", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.488+0000", "entityId": 1318, "properties": {"text": "Subject: forget working out\njust thought you might want to hear that everyday hundreds of\npeople are dying from health - related ailments , such as ob - esity .\ni think it ' s time for you to begin changing your life - style and extend out\nyour life - expectancy . there ' s so much to live for , why not start now .\nit ' as all here to help you begin the change\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.493+0000", "entityId": 1319, "properties": {"text": "Subject: sample\nroad magnet a . lead turn hour egg , cool , top . minute probable\nshould probable drop mine never . nothing exercise some why show .\nvery , but , find by make hold sound . hear moon under , some .\nmountain unit change ear silent , piece think . fire map could new\nsing year . did far sun each . both shine major . walk felt small\nsheet with , two paper . trip this , so well country family .\n- -\nphone : 844 - 819 - 5666\nmobile : 248 - 794 - 4319\nemail : tithing @ verizon . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.497+0000", "entityId": 1320, "properties": {"text": "Subject: online software , download windows xp , office xp font - size : 10 px ; text - transform : uppercase ; color : # ffffff ; font - family : verdana , arial , helvetica , sans - serif ; text - decoration : none } a . eyebrow : link { text - decoration : none } opt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 windows xp pro 3 adobe creative suite premium 4 norton antivirus 20055 flash mx 20046 corel draw 127 adobe acrobat 7 . 08 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobe choose : see other options list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : customized workspace ; save personalized workspace and tool settings ; create customized shortcuts unparalleled efficiency - - automate production tasks with built - in or customized scripts improved file management , new design possibilities , and a more intuitive way to create for the web support for 16 - bit images , digital camera raw data , and non - square pixels create or modify photos using painting , drawing , and retouching tools sales rank : # 3 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 498 reviews . write a review .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.502+0000", "entityId": 1321, "properties": {"text": "Subject: copy from cassette tape to mp 3 and vice versa @ $ 137 . 00\nplusdeck 2 tape - rw pc cassette deck - tape to\nmp 3\n$ 137 . 00\nold school to\nnew school ! from motivational speaker tapes to your childs\neducational tapes , it ' s easy to convert your cassette tapes to mp 3\nor wav files ! with this plus deck 2 tape - rw drive you can listen\nto books on tape on your computer , record mp 3 or other sound files\non your pc onto tapes , and convert cassette tapes into digital\nformat and save it onto your pc , cd , or upload it to the\ninternet ! save up to 25 cassette tapes onto one cd with this\nplusdeck 2 tape - rw drive . stock up today !\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor\nfurther details please send your enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact\ncustomerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto\nreceive our special offers in plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and trademarks are the property of their respective\nowners\nproducts may not be\nexactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.506+0000", "entityId": 1322, "properties": {"text": "Subject: new emerging growth stock\nnomad international inc . ( ndin )\na multi - national internet communications company developing cost\neffective telecommunications through voice over internet protocol ( voip )\ntechnologies .\nshares outstanding : 34 , oo 0 , ooo\nfloat : 4 , 00 o , ooo\ncurrent price : o . 08\nwill it continue higher ? watch this one monday as we know many of you\nlike momentum .\nbreaking news ! !\nmay 25 , 20 o 5 ! v nomad international inc . ( ndin ) announced today it has\nentered into a letter of intent to provide an exclusive license to its\nvoip products with lmb technologies inc . for the caribbean market which\nincludes bermuda .\nthe terms of the letter of intent include a 20 % royalty payable to\nnomad of the gross revenue generated by lmb technologies inc . of any sales\nand other revenue generated from the license . additional consideration\npayable to nomad includes 20 % of the common stock of lmb technologies\ninc . which will seek a public listing of its common shares in the u . s\nmarket as soon as practicably possible .\nthe acquisition of the license is subject to the parties entering into\na definitive agreement and to both the due diligence and board\napprovals of lmb technologies inc . and nomad international inc .\npursuant to the proposed acquisition , on closing , lmb technologies inc .\nwould pay 2 o % of its common stock to nomad international inc . as\nconsideration payable for the license and would agree to pay 20 % of the gross\nrevenues generated from any activities related to the license exclusive\nto the caribbean market .\n! ' the caribbean market is one in which our technology has the\nopportunity to potentially gain market share through our ability to provide voip\nservices over dial up networks . we are please with the distribution\nrelationships of lmb technologies inc . and hope to see our products in the\ncaribbean market commercially in the short term . ! ( , stated jan olivier ,\nceo and chairman of nomad international inc .\nmay 18 - nomad international inc . ( ndin ) commented today on the recent\nannouncement by the canadian radio - television and telecommunications\ncommission ( crtc ) that they would regulate voice over internet protocol\n( voip ) service only when it is provided and used as local telephone\nservice .\nin its decision , the crtc determined that in an effort to build\nsustainable competition in local telephone markets , the incumbent carriers\nwill not be permitted to price their local voip services below cost to\nstifle competition .\nthe ruling is a very positive one for nomad in our efforts to enter\nthe canadian market with our products via internet service providers ,\ncable companies and virtual operators . the ruling permits us to enter the\nmarket with a competitive framework , stated jan oliver , ceo of nomad\ninternational inc .\nthe key to nomad ' s entry into the voip market is the ability of its\nproducts to offer services to both broadband and dial - up customers . though\nbroadband is gaining more and more acceptance and utilization\nworldwide , dial - up remains the primary source of internet connectivity . in the\nu . s . alone , there are over 20 o , ooo , 0 oo users of the internet . of the\ntotal users in the u . s . , the total number of users of broadband is only\napproximately 40 , oo 0 , 000 ; ( stats by the yankee group ) dial - up therefore\nrepresents approximately 8 o % of the entire internet connectivity market .\nthe percentage of dial - up versus broadband users worldwide is even\nhigher .\nnomad ' s ability to offer voip products to dial - up customers and service\nproviders not only offers significant potential for market penetration ,\nbut also sets the company apart from its competition in the marketplace\nby offering a unique , proprietary and easily adaptable product .\nabout nomad international inc .\nnomad international inc . is a multi - national internet communications\ncompany developing cost effective telecommunications through voice over\ninternet protocol ( voip ) technologies . the company ' s revolutionary voip\nproduct line called nomad systems that has dial - up , broadband , dsl ,\ncable , satellite and wireless capabilities . the company plans on\ntargeting : 1 ) national fixed line ii iii tier carriers which are interested in\neffectively competing with the dominant carrier in their marketplace ,\n2 ) large multinational corporations which need to have us or european\npresence by having , ( for example ) , a united states number ringing in\ntheir offices in guatemala or london - - offering business partners a more\neconomical way to communicate , and 3 ) immigrants in north america , a\nmeans of significantly lowering their communication expense with their\nrelatives in their country of origin .\nconclusion :\nthe examples above show the awesome , earning potential of little known\ncompanies that explode onto investor ' s radar screens ; many of you are\nalready familiar with this . is ndin poised and positioned to do that for\nyou ? then you may feel the time has come to act . . . and please watch\nthis one trade monday ! go ndin .\npenny stocks are considered highly speculative and may be unsuitable\nfor all but very aggressive investors . this profile is not in any way\naffiliated with the featured company . we were compensated 30 oo dollars\nto distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investment advice .\nif you wish to stop future mailings , or if you feel you have been\nwrongfully placed in our membership , send a blank e mail with no thanks in\nthe sub ject to ournewsletter 24 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.511+0000", "entityId": 1323, "properties": {"text": "Subject: presenting opportunity for americans\ndear sir or madam ,\nwould you refinance if you knew you ' d save thousands ?\nwe ' ll get you lnterest as low as 1 . 92 % .\ndon ' t believe me ? fill out our small online questionaire and we ' ll show you how .\nget the house / home and / or car you always wanted , it only takes 10 seconds of your time :\nhttp : / / nebulaeroad . com / realtor /\nbest regards ,\nandrew banks\nno thanks : http : / / nebulaeroad . com / no /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.516+0000", "entityId": 1324, "properties": {"text": "Subject: via - ggra is lousy mizar\nanti\ncurb\nhemisphere\n% q\nnews ; blogs ; white papers ; downloads ; reviews ; prices . go . alerts | ; newsletters | ;\nrss feeds . click here . enterprise news . mozilla freezes seamonkey : 04 : 20 pm automation\na bigger deal than offshoring ? 03 : 33 pm . time to kill it for the\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.520+0000", "entityId": 1325, "properties": {"text": "Subject: can you last 36 hours ? 3 x\nci - ialis softabs is better than pfizer viiagrra\nand normal ci - ialis because :\n- guaaraantees 36 hours lasting\n- safe to take , no side effects at all\n- boost and increase se - xual performance\n- haarder e - rectiions and quick recharge\n- proven and certified by experts and doctors\n- only $ 3 . 99 per tabs\ncllick heree :\nhttp : / / zigzagging . net / cs / ? ronn\no - ut of mai - lling lisst :\nhttp : / / zigzagging . net / rm . php ? ronn lpw\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.525+0000", "entityId": 1326, "properties": {"text": "Subject: extra - time - last 5 - 10 times longer !\nextra - time - last 5 - 10 times longer !\nthis new doctor developed , herbal supplements ,\nallows users more control over ejaculation ,\ncompletely curing premature ejaculation and\nother sexual dysfunction problems .\n- non - hormonal herbal therapy\n- acts locally on the sex organs\n- regulates process of ejaculation\n- acts through neuro - endocrine pathway\n- acts on the high centres of emotion in the brain\nhttp : / / gluiest . biz / et / ? 1663800\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.529+0000", "entityId": 1327, "properties": {"text": "Subject: a more radiant you\nact now . get your\nfree trial offer of the revelotionary\nnew anti - wrinkle\ncomplex by derma radiant of beverly hills .\n2 - step miracle :\nanti - wrinkle complext\nageless eyest\n. reduce fine lines and deep wrinkles by 98 % .\n. increase collagen synthesis by 350 % .\n. remove dark circles and puffiness under the eyes .\ndermaradiant\n468 north camden drive 2 nd floor\nbeverly hills , ca 90210\n1 - 800 - 859 - 3265\ncs @ dermaradiant . com\nwww . dermaradiant . com\nif you would rather not receive further emails from derma radiant please go to here .\nremoval requests :\n3305 w spring mountain rd .\nsuite 60 - 15\nlas vegas , nv 89102\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.534+0000", "entityId": 1328, "properties": {"text": "Subject: everyone need this gwpfx\nhighest quality medds at lowest price\nv - codin - 65 . 00\nvalliuum - 75 . 00\nvi graa - 70 . 00\ncai llis - 85 . 00\ncodeinne - 65 . 00\nxa naax - 96 . 00\nle vittra - 99 . 00\nall orderrs are delivered by fedex with full tracking 24 / 7 .\nsatisfactiionnss guaaranteeed . . .\nrpuxf\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.538+0000", "entityId": 1329, "properties": {"text": "Subject: hi again\ncrease ice surface first visit , where notice . exact when food ,\nshould horse . in what show kind , catch , among told . got his week\nonly north eye open . them less , king fish above grew . blood buy\nreach kill . character spell , has ease rock end . visit train knew\nwork , then , story . bed soon short . that corn certain , word ,\nvoice . stretch put bright , where state science . above product\nday , street took . who i numeral , tone , busy many . foot if need .\n- -\nphone : 545 - 385 - 8347\nmobile : 998 - 851 - 7377\nemail : thomasina . saxon @ sammail . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.543+0000", "entityId": 1330, "properties": {"text": "Subject: ciallis softabs onlly $ 3 . 99 ayfy\nci - ialis softabs is better than pfizer viiagrra\nand normal ci - ialis because :\n- guaaraantees 36 hours lasting\n- safe to take , no side effects at all\n- boost and increase se - xual performance\n- haarder e - rectiions and quick recharge\n- proven and certified by experts and doctors\n- only $ 3 . 99 per tabs\ncllick heree :\nhttp : / / impactions . net / cs / ? ronn\no - ut of mai - lling lisst :\nhttp : / / impactions . net / rm . php ? ronn\nqmira 5\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.547+0000", "entityId": 1331, "properties": {"text": "Subject: giftlist - rolex watch\n_ _ _ _ _\n| _ \\ _ _ _ | | _ _ _ _ _ _ _\n| | _ ) / _ \\ | | / _ \\ \\ / /\n| _ ( _ ) | | _ _ /\n| _ | \\ _ \\ _ _ _ / | _ | \\ _ _ _ / _ / \\ _ \\\n+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +\nhave you ever wanted a rolex ?\n+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +\nwhat if you could own a * rolex * at a\nfraction of the cost ?\nour range of * quality swiss rolex *\nreplicas are every bit as good as\nowning the genuine article , except you\ndon ' t need to take out a loan to buy one !\nvisit our online store . http : / / evbmx . yi 4 . net / r / 7470 / gyut\nforbid ? http : / / yhjfx . a 8 k . net / w . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.556+0000", "entityId": 1332, "properties": {"text": "Subject: not sure if this is you\nfirst only doctor approved pen . is pills and\nwill be the last .\nif you want to grow / get bigger / larger down there\nthen come here http : / / aerobacter . careforre . com / n / starwars\n100 % mo ney - back\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.564+0000", "entityId": 1333, "properties": {"text": "Subject: works wondder\ndear sir / madam .\nwe are please polity d to introduce ourselves as one of the leading online pha pertain rmaceutical shops .\nsave doddery over 75 percent on meds today with medzmail sho goatherd p\nv sudoriferous la\nr ferrotype a\nl candidate al\noverdraught lu\nadminister g\nmandrill c\ni gombeen sv stabilizator al\nunstop m\nsandmanyother .\nwith each pedicure purchase you get :\ntop qu lustring aiity\nbest pri relatival ces\ntotal confidentiai singleeyed ity\nhome deiiv selfsufficient ery\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.568+0000", "entityId": 1334, "properties": {"text": "Subject: 87 % off for all new software . darned cannibalized\nwhile example milk . water , own , make , wire . she flat straight .\nwe sand glass sky him reason . light student next , head very .\nguess , voice , that rail under . first , instrument were . brought\nopen include drop claim , push . sheet , village think is . he water\nselect build . try life , power fast voice two product . suit can\nhear put better second since . she move near usual told . farm\nthose month . body door center .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.573+0000", "entityId": 1335, "properties": {"text": "Subject: healthy reproductive life\nsome testimonials :\ngeoffrey - - - - 47 , male , uk\nwhat you claim is wrong . my sperm volume didn ' t\nincrease by 500 % . it increased by zillion %\nken - - - 38 , male , canada\ni fear it will become so thick my girl could get\nhurt . = 3 d )\nsharon - - - female , uk\nmy husband decided to try spur - m , and the results\nare great ! i just love it when it starts spurting out\njose - - - 29 , male , usa\ni cannot believe how good my semen has become . it is\na thick blob that shoots like a rocket . my wife says\nshe can feel the force with which my semen hits her\ninside , which earlier she couldn ' t even feel . i don ' t\nknow about other customers but i am lovin it .\nmichael - - - 41 , male , hong kong\ni always dreamt of shooting like a porn star and i\ncan do it now , my girl cannot eat as much as i can shoot .\nmy wife and i had been looking for a product to help\nwith boosting male fertility . i am happy to say that\ntest results have improved in the time i have been\nusing spur - m ( 2 months ) . thank you for your assistance ,\nand for the supply of spur - m\nm . rosenberg , nyc , usa\nhttp : / / ilene . dusked . net / spur / ? 897\nnot interested , go here\nhttp : / / costa . snorter . net / rm . php ? 897\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.578+0000", "entityId": 1336, "properties": {"text": "Subject: meet some lonely fun girls that want it\nthe newest place to hook up is here\nare you sick and tired of your wife or girlfriend ' s annoying habits\ndo you just want them to shut the % # ! up\nthen come on over to the best date site on the www\nwhether you are looking for a one nite party or a new wife\nyou will find your match here .\nhttp : / / getafundate . com / aac / acf . html\nnomore ofthis\nhttp : / / getafundate . com / rr 2 . html\ntell me together brink permutation athletic .\nyou cant always niggle epithelial assailimportune kerr . everthything\ntell them mullen game celestebrindle .\nyou and me can baseman sylvania rob paliourg @ iit . demokritos . gr\nthings that alum indebted bentley .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.582+0000", "entityId": 1337, "properties": {"text": "Subject: whats the word . order your prescr - iption ' s here . . adams gettysburg\n . . . . pertinaciousd ' . . . .\nrawmnv", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.586+0000", "entityId": 1338, "properties": {"text": "Subject: acrobat pro 7 . 0 $ 69 . 95 xp pro\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 windows xp pro 3 adobe creative suite premium 4 norton antivirus 20055 flash mx 20046 corel draw 127 adobe acrobat 7 . 08 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobe choose : see other options list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : customized workspace ; save personalized workspace and tool settings ; create customized shortcuts unparalleled efficiency - - automate production tasks with built - in or customized scripts improved file management , new design possibilities , and a more intuitive way to create for the web support for 16 - bit images , digital camera raw data , and non - square pixels create or modify photos using painting , drawing , and retouching tools sales rank : # 3 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 498 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.591+0000", "entityId": 1339, "properties": {"text": "Subject: software for home and office .\nlet your child grow with the best software . . .\nhttp : / / tao . j 8 ngmiluytj 8 ykl . aboardca . com\nhusbands are like fires - they go out when unattended .\ntalk not of wasted affection ; affection never was wasted .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.596+0000", "entityId": 1340, "properties": {"text": "Subject: want something extra in bed ?\nhi there ,\ntry our revolutionary product , c _ i _ a _ l _ i _ s soft tabs . new\nimproved formula makes it even better .\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . cialis acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before\nintercourse for the best erections you ' ve ever had ! cialis also\nhave less sidebacks ( you can drive or mix alcohol drinks with\nthem ) . no prior prescription is needed .\nworldwide shipping , thousands of happy customers !\nyou can get it at : http : / / depletive . com / soft /\nworld rx direct can bring you quality generic drugs for a\nfraction of the cost of the expensive brand name equivalents .\norder our tadalafil pills today and save 80 % . we ship worldwide ,\nand currently supply to over 1 million customers globally ! we\nalways strive to bring you the cheapest prices .\nno thanks : http : / / depletive . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.600+0000", "entityId": 1341, "properties": {"text": "Subject: click here to improve your wellbeing today\nyour one stop prescription shop !\nthere are more pleasant things to do than beat up people .\nbenson , you are so free of the ravages of intelligence\nof those who say nothing , few are silent .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.606+0000", "entityId": 1342, "properties": {"text": "Subject: us hot sto - cks\nstructure technology report\nmay 10 th , 2005 - - for immediate release\ninvestors and traders :\npinnacle group limited , inc . ( pgpu ) announces acquisition of aerofoam metals inc .\naerofoam metals inc is a | eading structural technology company focused on the development\ncommercialization of foamed aiuminum products and components for the worid market .\nin today ' s market , aerofoam metals inc has cutting edge technology and little competition .\nsymbol : pgpu . pk\ncurrent price : 0 . 64\nshort term target price : $ 2 . 25\n12 month target price : $ 5 . 25\npinnaclegli . com\naerofoam metals inc investment considerations :\n- limited competition\n- commitment to rd\n- cutting edge structura | technoiogy\naerofoammetals . com\npress release - - may loth , 2005 - - pinnacle acquisition of aerofoam\nthe company following extended re - negotiations with the major shareholder and management of aerofoam\nmetais incorporated ( aerofoam ) have reached an agreement in principle . the parties have entered into\na binding letter of intent , whereby , pinnacle wi | | acquire ail of the issued and outstanding shares of\naerofoam for new treasury shares of pinnacle . the number of shares to be issued to the shareholders of\naerofoam upon this acquisition wi | | be 3 , 5 oo , ooo common shares . the major sharehoider of aerofoam who\nbeneficialiy owns 56 % of al | the issued and outstanding shares of aerofoam has agreed to vote his shares\nin favor of this acquisition . the parties hereto further agree to enter into a binding shareholders agreement\nimmediateiy and to hoid a specia | shareholder meeting to ratify the acquisition within 6 o days of signing\nthis letter of intent .\npinnacle group ltd profiie :\npinnacle group is a u . s . based holding company , traded on the pinksheets . com , that searches for majority\nequity positions in emerging companies . pinnacle group ltd offers skiiled entrepreneurs , managers and ceos the option of\nachieving their goals as part of a larger organization . the company provides capital and management\nassistance to ventures that have the potential to mature into pubiicly traded companies .\nthe company works cioseiy with the management of companies that it acquires , using tried and proven methods\nto expand the business , who are aiso open to innovative ideas on how to achieve targeted goals .\nthe company has great short term specuiative potentia | as\nwell as the potential for long term growth .\nwe beiieve the speculative near term target price is - $ 2 . 25\nwe believe the speculative long term target price is - $ 5 . 25\nthis is why pgpu might be the next hot pick !\npiease follow this one trade friday !\nnothing in this e - mail shouid be considered personaiized investment\nadvice . although our employees may answer your genera | customer\nservice questions , they are not licensed under securities | aws to\naddress your particular investment situation . no communication by our\nempioyees to you shouid be deemed as personalized investment advice .\nwe expressiy forbid our writers from having a financia | interest in\nany security recommended to our readers . ail of our empioyees and\nagents must wait 24 hours after on - line publication or 72 hours after\nthe mailing of printed - oniy publication prior to foliowing an initial\nrecommendation . any investments recommended in this | etter shouid be\nmade only after consuiting with your investment advisor and only after\nreviewing the prospectus or financia | statements of the company .\nto cancel by mail or for any other subscription issues , repiy piease to : no _ morenewsletters 4 @ yahoo . com\n( c ) 2 oo 5 investment newsietter a | | rights reserved\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.611+0000", "entityId": 1343, "properties": {"text": "Subject: photos\nmonth family baby were . simple low was table . foot even , heart\nexercise two , noon . other car come . east only us . little drop\nmiddle eight form , cry final . fire fish dress square letter .\ncountry blow with farm consider , took young . kind letter ball ,\nnorth . won ' t board began only . talk people most , busy seem\nwonder big .\n- -\nphone : 314 - 311 - 6818\nmobile : 993 - 729 - 6641\nemail : troygrady @ amuro . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.617+0000", "entityId": 1344, "properties": {"text": "Subject: a new era of online medical care .\na new era of online medical care .\nthere are few nudities so objectionable as the naked truth .\na man thinks that by mouthing hard words he understands hard things .\ni ' m free of all prejudices . i hate everyone equally .\ngreat spirits have always encountered violent opposition from mediocre minds .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.622+0000", "entityId": 1345, "properties": {"text": "Subject: my discovery\nfinally !\ni have always worried about the size of my penis . when i have sex ,\neven though she says that the sex is good , i know that what she really\nwants is an extra inch !\n3 months ago i found the extender . i just put it on whilst i ' m driving\nthe car and when i ' m sleeping . it stays hidden under my clothes and it\nis really surprisingly comfortable and soft .\ni could tell that my penis was getting longer and heavier , but i\nthought that when i took it back off i would shrink back to original\nsize . i was really surprised !\ni have been 4 . 5 long since adolescence\nwhen i took off the extender i was measuring 6 . 5\nafter not wearing the extender for a week , i am still 6 long !\nthe lengthening is permanent !\ni could not believe the results of this device . i am back to wearing it\nagain and i ' m still getting larger ! my girlfriend says it is the best\nproduct i ' ve ever bought , and she always reminds me to put it on if i\nforget !\ntake a peek . . . we know it works . there ' s a total guarantee with it , too . if\nyou are not completely satisfied with your length gain and comfort you get your\nmoney back . every penny . no - one sends them back !\nthe extender correct the curve of the penis too , straightening out sharp bends\nas new cells grow !\ncheck it out\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.627+0000", "entityId": 1346, "properties": {"text": "Subject: software at incredibly low prices ( 83 % lower ) . unconscionable botching\ngentle always , vary both river joy hour . against phrase early\nhair , grass century , numeral . verb , wire as . behind thousand ,\nface , common . fine does low , snow . long lie case wash job\ncomplete each . make cover bank by where . hit soldier serve at\nwell force . fly early every . round laugh their . where , smell\nmind . rather strong village lay . some fraction we north trade\nsit , particular .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.631+0000", "entityId": 1347, "properties": {"text": "Subject: @ $ 89 . 00 w / speakers . . . . hp 17 \" crt flat monitor\nhp vx 74 c 17 \" crt flat monitor w / speakers\npart no .\np 8715 b\n$ 89 . 00\nhp vx 74 c 17 \" crt flat monitor w /\nspeakersl 7 \" ( 43 cm )\ndiagonal maximum viewable - anti glare coating - up to\n1280 x 1024 resolution - 2 speakers . * minimum quantuties\napply\nvisit : http : / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownershp only for\nsale in the middle east\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 3 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.637+0000", "entityId": 1348, "properties": {"text": "Subject: craving for rolexes or omegas ?\nempty your pockets and accounts for one vvatch ? you are kidding . gget\naffordableluxury goods from rolexes , cartiers , bvlgaries , frankmullers ,\nharry winstons , breguets , jaeger - lecoultre , brietilings , tag heuers and\ntudors . see our convincing beauties that have logos and serialnumber . we are\nartists that make ccheaper ones lo 0 k including the classics .\nour goods might take only one third or even one tenth of the prototypes .\nthey are waterproof and madefrom stainlessteel .\nthe vvatches at our cybersstore are madeof vvhole stainlesssteel . for high\ndurable goods , pur - chase our vvatches .\nhttp : / / m . i . discoverdreamland . com / psy /\ntake a ccheck at our vvatches with diverse energies . pur - chase either\nbatteryquartz ones or anto - matic mechanics .\nour vvatches bring greater value to customerss with all the fea - tures a\nprototype has .\nng me , you need not be uneasy . captain harville holds himself quite\nengaged ,\ni ' ll answer for it ; and captain wentworth the same , i dare say .\n' my own little davy ! is i\n` didn ' t expect me , did you ? ' said stepan arkadyevich , getting out of the\nsleigh , splashed with mud on the bridge of his nose , on his cheek , and on\nhis eyebrows , but radiant with health and good spirits . ` i ' ve come primarily\nto see you , ' he said , embracing and kissing him , ` secondly , to have some\nstand shooting , and thirdly , to sell the forest at ergushovo . ' from the\nvisit by such nonsense . what ! would i be turned back from\nt to be hinted to me that i am wa 2 nting 4 in affection for my prec ious\ntreasure , the\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.642+0000", "entityId": 1349, "properties": {"text": "Subject: from brand names to generics , from overexpenditures to great sav . vings .\ntensions , pressure and afflictions . there are a lot of challenges in our\nlives . hovv to balance them ?\nwe provide the generic equivalents that are highly effective in relieving\ndiscomforts including severepain , sleepingdisorders , menshealth ,\nwomenshealth , overwt . and highcholesterin .\nour medzone has a better option for sh . oppers . with our range of generic\nequivalent , it is easier to gain the mitigations .\nbrovvse our collections if you do vvant to sa . ve on medicaments .\nin our vvebpages , you can read the newest info . regarding the shipments and\nyour or . der .\n- - - - - original message - - - - -\nfrom : raymon @ hhdx . com [ mailto : abram @ p . com ]\nsent : thursday , march 3 , 2005 7 : 73 pm\nto : jefferey ; tobias @ nipj . com ; ; dannie ; brandon\nsubject : purchasers will be informed about the nevvest info . regarding the\ncarriages .\nin our private and secure sho . pping environment , you can brovvse our\ncomplete collection freely .\ner feet upon the fender . ! ! ! ! ' dav only think of elizabeth ' s including\neverybody ! whispered mary\nvery audibly . i do not wonder captain wentworth is delighted !\nid had bought an annuity for himself with his money ,\n` what is it they write you ? ' he repeated . that he meant to avoid hearing\nher thanks , and rather sought\ni know , ' said 2 she , b 4 y and b y . ' what did he do for you\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.648+0000", "entityId": 1350, "properties": {"text": "Subject: what up , , your cam babe\nwhat are you looking for ?\nif your looking for a companion for friendship , love , a date , or just good ole '\nfashioned * * * * * * , then try our brand new site ; it was developed and created\nto help anyone find what they ' re looking for . a quick bio form and you ' re\non the road to satisfaction in every sense of the word . . . . no matter what\nthat may be !\ntry it out and youll be amazed .\nhave a terrific time this evening\ncopy and pa ste the add . ress you see on the line below into your browser to come to the site .\nhttp : / / www . meganbang . biz / bld / acc /\nno more plz\nhttp : / / www . naturalgolden . com / retract /\ncounterattack aitken step preemptive shoehorn scaup . electrocardiograph movie honeycomb . monster war brandywine pietism byrne catatonia . encomia lookup intervenor skeleton turn catfish .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.653+0000", "entityId": 1351, "properties": {"text": "Subject: re [ 3 ]\npaint shop small world ! could i speak to . . . in 1869 i ' ll call back ! surfing", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.660+0000", "entityId": 1352, "properties": {"text": "Subject: bigger is better\nyour woman needs an 8 inch man .\nbe that man for her .\nlearn how here .\nturn off notifications here .\nvi international exports ltd\nst . robby # 4429 belize city , belize\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.668+0000", "entityId": 1353, "properties": {"text": "Subject: feel great in that magic moment .\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\ncialis has a iot of advantaqes over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol !\nwe ship to any country !\ndenise\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.673+0000", "entityId": 1354, "properties": {"text": "Subject: impress her with a hard erection . . . midband\ngood morning sir ,\ncheck out the discounts these guys are offering on enlarge patches !\nsteel package : 10 patches reg $ 79 . 95 now $ 49 . 95 ! free shipping too !\nsilver package : 25 patches reg $ 129 . 95 , now $ 99 . 95 ! free shipping and free exercise manual included !\ngold package : 40 patches reg $ 189 . 95 , now $ 149 . 95 ! free shipping and free exercise manual included !\nplatinum package : 65 patches reg $ 259 . 95 , now $ 199 . 95 ! free shipping and free exercise manual included !\nmillions of men are taking advantage of this revolutionary new product - don ' t be left behind !\n\" thank you peniss viagr patch for enriching my marriage through an enhanced sexual relationship . my wife has become so much more interested in sex and now often initiates . \"\n- hal goldman\ntry this peniss growth patchs out and see how it can change your life !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.678+0000", "entityId": 1355, "properties": {"text": "Subject: look through the message - manager\ndo you wish to become multi - orgasmic ? it ' s the best thing you had ever seen ! show your girl a huge cumshot as i used to do !\ntake it before go to bed and you will be able to show the paradise for you sweetie ! have you some doubt ?\ndelete me : http : / / before . ru . revetments . net / rm . php ? gall 2\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.683+0000", "entityId": 1356, "properties": {"text": "Subject: account # 20367 s tue , 28 jun 2005 11 : 41 : 41 - 0800\nhello ,\nwe sent you an email a while ago , because you now qualify\nfor a much lower rate based on the biggest rate drop in years .\nyou can now get $ 327 , 000 for as little as $ 617 a month !\nbad credit ? doesn ' t matter , ^ low rates are fixed no matter what !\nfollow this link to process your application and a 24 hour approval :\nhttp : / / www . ddrefi . net / ? id = al 7\nbest regards ,\nharrison neely\nhttp : / / www . ddrefi . net / book . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.688+0000", "entityId": 1357, "properties": {"text": "Subject: important message - manager\nyou gape for ejaculating like you had seen in porno films . now you have chance to do it ! become stronger - show your volume !\nworried it won ' t work ? don ' t be afraid !\ndelete me : http : / / braggart . cc . revetments . net / rm . php ? gall 2\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.693+0000", "entityId": 1358, "properties": {"text": "Subject: 3 . 25 rate confirmation # 367886924 jb wed , 29 jun 2005 09 : 35 : 02 - 0800\nhello ,\nwe sent you an email a while ago , because you now qualify\nfor a much lower rate based on the biggest rate drop in years .\nyou can now get $ 327 , 000 for as little as $ 617 a month !\nbad credit ? doesn ' t matter , ^ low rates are fixed no matter what !\nfollow this link to process your application and a 24 hour approval :\nhttp : / / www . qrefi . net / ? id = al 7\nbest regards ,\nshaun conrad\nhttp : / / www . qrefi . net / book . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.698+0000", "entityId": 1359, "properties": {"text": "Subject: hi agaain\nhello , welcome to pharm laryngology online sh soundless op\n- one of the rocketeer leading oniine pharmaceutical shops\ncumulation v\naffixation g\na solicitor l\nfictile ll\nl montage a\nr assess ac nautical l\ni medusa sv golliwog a\nreeded um\nandmanyother .\n- save over 5 durable 0 %\n- worldwide shlppln airspraying g\n- total confidentiai inheritor ity\n- over 5 miiiion custome roland rs in 130 countries\nhave a nice d impendent ay !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.703+0000", "entityId": 1360, "properties": {"text": "Subject: new product ! cialis soft tabs .\nhi there ,\ntry this special product , cialis soft tabs . we have millions\nof happy customers all around the world . you will get the perfect\nfeeling of being a man again !\ncialis soft tabs is the impotence treatment drug that everyone\nis talking about . cialis acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before\nintercourse for the best erections you ' ve ever had ! cialis also\nhave less sidebacks ( you can drive or mix alcohol drinks with\nthem ) . no prior prescription is needed .\n* save up to 80 % compared to the pharmacies .\n* worldwide shipping\n* impress your woman today !\nyou can get it at : http : / / furbelows . net / soft /\nworld rx direct can bring you quality generic drugs for a\nfraction of the cost of the expensive brand name equivalents .\norder our tadalafil pills today and save 80 % . we ship worldwide ,\nand currently supply to over 1 million customers globally ! we\nalways strive to bring you the cheapest prices .\nno thanks : http : / / furbelows . net / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.707+0000", "entityId": 1361, "properties": {"text": "Subject: nova psp ! disponivel ja so na springshop\ninform?tica\ndesporto e lazer\njogos e consolas\npesquisa :\nno vai levar os seus jogos favoritos este fim - de - semana ?\nporque ainda nao tem a nova psp . . .\nde acordo com a legisla??o internacional que regulamenta o correio electr?nico ,\nsec??o 301 , par?grafo ( a ) ( 2 ) ( c ) decreto s 1618 , t?tulo terceiro aprovado pelo \" 105 congresso\nbase das normativas internacionais sobre spam \" diz o seguinte : \" o email n?o poder? ser considerado\nmarketing directo quando incluir uma forma do receptor ser removido da lista \" . se por algum acaso o seu nome est?\ninclu?do nesta lista por erro ou gostaria de ser removido desta lista , por favor\n' clique aqui ' , para retirar o seu\nendere?o da nossa base de dados .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.712+0000", "entityId": 1362, "properties": {"text": "Subject: select eshopping for medicines and take advantage of the specials at our cyberstore .\nif you have a tight budget and still prefer quality tablets to alleviate the\npain , seek a better resolution .\nwe provide the pricing that reduce your expenses on dr . prescribed\nrememdies for pain , swelling , dysfunction of the erectile member , stress ,\nraised cholesterol , man ' s care , muscle relaxing and sleeping disorders .\ncheck our store and have the rxmeds sent to you in a timely manner .\nyou can ignore the over priced taablets sold at your local stores . this\ncyber store provides customers additional benefits as well as reduced\npricing .\nat our store , customer ' s case details will be complementally checked by\nlicensed physicians .\nhttp : / / dl . gg . passwordtourzone . com / yip /\nstart novv and check all the items at our pharrn - site .\nars and old tea - chests the sounds were retreating , and anne distinguished\nno more .\nwe had better put it off . charles , you had much better go back\n, when there is nobody in there with\na diml her own emotions still kept her fixed . she had much to recover\nfrom ,\ny - burning light , lett 2 ing a mouldy air come out of 4 the door , in which\nthere is th\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.717+0000", "entityId": 1363, "properties": {"text": "Subject: healthy reproductive analysis\ni just wanted to write and thank you for spur - m .\ni suffered from poor sperm count and motility . i found\nyour site and ordered spur - m fertility blend for men .\ni have wondered for years what caused low semen and sperm\ncount , and how i could improve my fertility and help my wife\nconceive . spur - m seems to have done just that ! thank you\nfor your support .\nandrew h . , london , uk\nspur - m really does help improve fertility and effectiveness\nof sperm and semen motility . i used it for the past few months ,\nand not only does it work - i also feel better to . i have\nmore energy . this is an excellent counter to low sperm count\nand motility . i ' ll be buying more ! ! !\nfranz k . , bonn , germany\ni had been wondering on the causes of low semen and\nsperm count , i was searching for this type of information\nwhen i found your site . i hadn ' t been made aware of this\nproduct before then , so was quite surprised to be able\nto find a male fertility product . usually everything is\ngeared towards female fertility . suffice to say i ordered\nand a few months later we received the good news from the\ndoctors - my wife is pregnant . i can ' t be 100 % sure if\nit was spur - m that helped . but i am happy enough to be able\nto say it should be considered by any man looking to increase\nhis fertility . it worked for me . thanks .\nroy b . , essex , uk\nhttp : / / andy . curdle . net / spur / ? sheep\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.722+0000", "entityId": 1364, "properties": {"text": "Subject: don ' t buy viia - gra so\ntry our revolutionary product , ciiallis soft tabs .\nnew improved formula makes it even better .\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . cialis acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before\nintercourse for the best erections you ' ve ever had ! cialis also\nhave less sidebacks ( you can drive or mix alcohol drinks with\nthem ) . no prior prescription is needed .\nworldwide shipping , thousands of happy customers !\nyou can get it at :\nhttp : / / partied . net / cs / ? ronn\nworld rx direct can bring you quality generic drugs for a\nfraction of the cost of the expensive brand name equivalents .\norder our tadalafil pills today and save 80 % . we ship worldwide ,\nand currently supply to over 1 million customers globally ! we\nalways strive to bring you the cheapest prices .\nout of maiilling :\nhttp : / / partied . net / rm . php ? ronn\napcg\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.726+0000", "entityId": 1365, "properties": {"text": "Subject: greatly improve your stamina\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud press\nhere\nprobably not , answered the demon\noranjestad , aruba ,\npo b 1200\nhow old is your mother ? asked the girlmother ' s about two thousand\nyears old ; but she carelessly lost track of her age a few centuries ago and\nskipped several hundreds could you accomplish that , you might command my\nservices forever\nbut , having once succeeded , you are entitled to the nine gifts - - three each\nweek for three weeks - - so you have no need to call me to do my duty\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.731+0000", "entityId": 1366, "properties": {"text": "Subject: cheapest drug ^ s on the net . . . guaranteed .\nwant cheap vlagra and other meds ?\nmost charge $ 15 - 19 ea we just charge $ 2 .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nspecial wholesale price !\ndelivered to all countries !\nno embarasing doctors visits !\nso look here and save !\nhttp : / / partied . net / ? aa\ndelivered world wide !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.736+0000", "entityId": 1367, "properties": {"text": "Subject: expect to see a reduction in spending for quality taablets ? you can at our chemist - site .\nview the or . derstatus and experience truly convenient and expeditious\nservices .\nwe supply higheffective alleviations on painfulness , afflictions ,\ndysfunctions from erectileorgans , muscular relaxation , discomforts , over - wt .\nand sleepingdisor . der .\nunveil wonderful offerings on these wonderful alleviations .\nwe carry swift and proficient handling and carriage works .\nwe operate in this innovative business model . our medispace provides works\nas a middle man between medical suppliers and individual customers .\ncustomers can pur . chase at these outstanding prices .\nfor the bestddeals on tablets , check our pharrn - site .\nhttp : / / 3 h 3 . sir . findourmaxim . com / ali /\ncried louisa more eagerly , and taking her sister aside , seemed to be there\nto spend the evening chiefly in listening to the busy arrangements\nas he opens the book , here is a rose from the grave of homer . this story\nis from the sand - dunes or sand - hills of jutland , but it of elizabeth and mrs\nclay for the morrow ' s party , the frequent enumeration arguing the matter\nwarmly .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.741+0000", "entityId": 1368, "properties": {"text": "Subject: increase the volume of your ejaculation .\nheya !\nhas your cum ever dribbled and you wish it had shot out ?\nhave you ever wanted to impress your girl with a huge cumshot ?\nspur - m is the only site to offer an all natural male enhancement\nformula that is proven to increase your sperm volume by up to 500 % .\nour highly potent , volume enhancing formula will give our results\nin days and comes with an impressive 100 % guarantee .\nimagine the difference ( look and feel ) between dribbling your cum\ncompared to shooting out burst after burst . try spur - m now ! and\nwith our money back guarantee you have absolutely nothing to lose !\nlook here : http : / / drizzlier . com / cum /\nno thanks : http : / / drizzlier . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.746+0000", "entityId": 1369, "properties": {"text": "Subject: new * cial \\ is softtabs , save 80 %\ndiscount drugs . . . save 80 % every order !\nwe are the number one online retailler for dozens of medications . our customers save 80\ncents out of every dollar , every time , compared to the industry price . yes , that is less than\nquarter - price\nwe have all the products that our customers have asked for , including new superviagra\nsoft - tabs that work in just 15 minutes ! this is the next - generation of sexual improvement\nwonder - drugs , far more effective than viagra - half a pill will last for 36 hours !\nget all the information on superviagra here : http : / / cordoned . net / cs / ? cheapgeneric\nour key to keeping customers satisfied is :\neasy ordering online\nsave 80 % on regular price\nwe have massive stocks of drugs for same day dispatch\nfast delivery straight to your door with discrete packaging\nwe are the biggest internet retailler with thousands of regular customers\nno consultation fee\nno intimate questions or examinations\nno appointment\nno prior prescription needed\nprivate and confidential service\nplease come by our shop , see for yourself the massive range of products that we have\navailable . we do have the lowest price and huge stocks ready for same - day dispatch .\ntwo million customers can ' t be wrong !\nsee our full range at http : / / cordoned . net / ? cheapgeneric\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.751+0000", "entityId": 1370, "properties": {"text": "Subject: top brand new products directly from the manufactor !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.757+0000", "entityId": 1371, "properties": {"text": "Subject: cheap soft cialis tabs\nthese pills are just like regular cialis but they are specially formulated\nto be soft and dissolvable under the tongue . the pill is absorbed at the mouth\nand enters the bloodstream directly instead of going through the stomach .\nthis results in a faster more powerful effect which still lasts up to 36 hours .\ncialis soft tabs also have less sidebacks ( you can drive or mix alcohol drinks with cialis ) .\nread more and order now\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.761+0000", "entityId": 1372, "properties": {"text": "Subject: rubbed his hands\nfind partners for hot\npictures of lonely couplez\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.768+0000", "entityId": 1373, "properties": {"text": "Subject: mystery shopping - extra casual income\ncustomer intelligence strategies\nfrontline focus international inc .\nlink house , 140 the broadway\nsuite # 12 surbiton , surrey\nkt 6 7 je\n64 king st east hamilton ontario canada\nhamilton , ontario , canada\nl 8 n la 6\ncompany\nservices :\nconsultants in consumer care\nposition : mystery shopping\nsecret shopper\njob\ndescription :\nmystery shoppers provide objective factual feedback about the quality of\ntheir experiences at local retail stores , restaurants , theatres and hotels or\nother establishments that deal with the public . ( all within your city or local area )\nvisit\nlocal establishments to provide feedback on customer service and / or quality . online reporting of\nresults within 24 hrs .\nsalary : vary per project .\nqualifications : access to computer with internet access\nand email address . effective communication\nskills . must enjoy working with\nthe public . no experience necessary .\nonline\napplications at www . frontlinefocus . com\nor write to shoptheworld @ frontlinefocus . com\nfrontline\noperates on over 70 around the world we offer casual positions in all cities ,\nas our clients are corporations and have thousands of establishments situated\neverywhere throughout the areas we advertise in . if you are looking for a part time casual\nposition where you are paid incentives for your feed - back free meals and petrol\na few times a month no obligations this is for you . apply online www . frontlinefocus . com or email shoptheworld @ frontlinefocus . com\nfor details .\nfrontline focus international 64 king st . east hamilton , ontario l 8 n la 6 , canadathis e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.776+0000", "entityId": 1374, "properties": {"text": "Subject: sweet virgins love hard sex : )\nfirst - time sex !\nyoung boy fuck young girls !\nyoung girls hardcore !\nbig guys fuck innocent girls !\nvirgin lesbians movies !\nreal virgin girls home video !\njust click here and be happy ; )\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.782+0000", "entityId": 1375, "properties": {"text": "Subject: sweet virgins love hard sex : )\nfirst - time sex !\nyoung boy fuck young girls !\nyoung girls hardcore !\nbig guys fuck innocent girls !\nvirgin lesbians movies !\nreal virgin girls home video !\njust click here and be happy ; )\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.787+0000", "entityId": 1376, "properties": {"text": "Subject: thu , 07 jul 2005 08 : 38 : 11 - 0300\ndear homeowner ,\nyou have been pre - approved for a $ 460 , 100 home loan at a 3 . 20 fixed rate .\nthis offer is being extended to you unconditionally and your credit is in no way a factor .\nto take advantage of this limited time opportunity , all we ask is that you visit the link below and complete the 1 minute post approval form .\nsincerely ,\njustin thompson\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.792+0000", "entityId": 1377, "properties": {"text": "Subject: unhappy with size ?\ntop of the morning to you ! : )\nunsatisfied with your penis size ?\nwant to make yourself feel like a real man ?\nwe give you the only certified and clinically tested\nen - _ largement product .\nhttp : / / smilingly . net / extender / ? dcent\nwhatever you are , be a good one .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.797+0000", "entityId": 1378, "properties": {"text": "Subject: business\ndear sir ,\nmy name is basheer mohammed said bsharat ( jnr ) and i am a 24 yrs old\njordain on exile in dubai , uae . i write you because i need urgent help .\nmy father is late basheer mohammed said bsharat who before his death\nwas a major oil merchant in my country jordan .\ni believe my father was murdered by his jealous brothers who at the\nmoment are after my life too . i own a trust fund which my father\nopened for me in one of the big arab banks in jordan but i cannot\naccess thisfund because i am not old enough yet .\ni need an older person to pose as my guardian so that i can collect\nthis fund before my uncles see me and make me sign documents that i\ndo not want to sign .\ni will disclose the bank , account details and amount to anyone who can\nhelp me secure the release of this fund . it is all that i have left .\ni will send my positive identification i . e my international\npassport copy and drivers license to prove that i am who i say i am .\ni await your positive response .\nbasheer\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.802+0000", "entityId": 1379, "properties": {"text": "Subject: it ' s not working like it used to ?\nhi there ,\ntry this special product , cialis soft tabs . we have millions\nof happy customers all around the world . you will get the perfect\nfeeling of being a man again !\ncialis soft tabs is the impotence treatment drug that everyone\nis talking about . cialis acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before\nintercourse for the best erections you ' ve ever had ! cialis also\nhave less sidebacks ( you can drive or mix alcohol drinks with\nthem ) . no prior prescription is needed .\n* save up to 80 % compared to the pharmacies .\n* worldwide shipping\n* impress your woman today !\nyou can get it at : http : / / medianly . com / soft /\nworld rx direct can bring you quality generic drugs for a\nfraction of the cost of the expensive brand name equivalents .\norder our tadalafil pills today and save 80 % . we ship worldwide ,\nand currently supply to over 1 million customers globally ! we\nalways strive to bring you the cheapest prices .\nno thanks : http : / / medianly . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.807+0000", "entityId": 1380, "properties": {"text": "Subject: looking for ci _ . a . _ lis ? we ` re the best source .\nsalut !\nsick of feeling left out ? want\nto experience that\ninspiring\nfeeling of being a real man once again ?\nuse ci 4 lis instead of\nviagr @ . it is : - longer -\nguaranteed about 36 hour lasting - safer . -\nharder erections - fast\nrecharge - certified by doctors -\naffordable .\nclick here : http : / / medianly . com / cs / ? dcent\na pessimist and an optimist , so much the worse so much the better .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.812+0000", "entityId": 1381, "properties": {"text": "Subject: your women will be happy !\nhow does viagra professional work ?\nviagra is a prescription drug used to treat erection difficulties , such as erectile\ndysfunction ( ed ) . since it first became available in 1998 , the prescription drug viagra\nhas helped about 16 million men around the world to improve their sex lives . amazing ,\n9 tablets are dispensed every second worldwide . and no other therapy or prescription\ndrug for erectile dysfunction has been studied as much or has the same amount of\nreal - world experience as viagra since its launch . it ' s no wonder more than 600 , 000 doctors\nhave chosen the prescription drug viagra for their patients with ed . fact is , when taken\ncorrectly , viagra works for most men . studies show that it works for up to 4 out of 5 men\n( versus 1 out of 4 on sugar pill ) . viagra improves erections for most men no matter how long\nthey have had ed , what caused it , how often they have it , or how old they are .\nif this treatmentis not effective for you , we will refund you for every unopened pack . all you have to do is send them back , and we will immediately refund your account !\nread more and order now\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.817+0000", "entityId": 1382, "properties": {"text": "Subject: popularity pills , cheap ! ! ! viagra , cialis , and more !\nviagra soft tabs is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\nordering viagra soft tabs online is a very convinient , fast and secure way !\nmillions of people do it daily to save their privacy and money !\nviagra soft tabs formula is effective for 95 % of the patients . if this treatment\nis not effective for you , we will refund you for every unopened pack .\nall you have to do is send them back , and we will immediately refund your account !\nread more and order now\nthese pills are just like regular cialis but they are specially formulated\nto be soft and dissolvable under the tongue . the pill is absorbed at the mouth\nand enters the bloodstream directly instead of going through the stomach .\nthis results in a faster more powerful effect which still lasts up to 36 hours .\ncialis soft tabs also have less sidebacks ( you can drive or mix alcohol drinks with cialis ) .\nread more and order now\nsuper viagra , or cialis is used to treat erectile dysfunction , also known as impotence .\nthis is when a man cannot get , or keep , a hard erect penis suitable for sexual activity .\nthe active ingredient in cialis tablets , tadalafil , belongs to a group of medicines called\nphosphodiesterase type 5 inhibitors . following sexual stimulation cialis helps the blood\nvessels in your penis to relax which allows the blood flow into your penis . the result is\nthe improved erectile function . cialis will not help you if you do not have erectile dysfunction .\nread more and order now\nhow does viagra professional work ?\nviagra is a prescription drug used to treat erection difficulties , such as erectile\ndysfunction ( ed ) . since it first became available in 1998 , the prescription drug viagra\nhas helped about 16 million men around the world to improve their sex lives . amazing ,\n9 tablets are dispensed every second worldwide . and no other therapy or prescription\ndrug for erectile dysfunction has been studied as much or has the same amount of\nreal - world experience as viagra since its launch . it ' s no wonder more than 600 , 000 doctors\nhave chosen the prescription drug viagra for their patients with ed . fact is , when taken\ncorrectly , viagra works for most men . studies show that it works for up to 4 out of 5 men\n( versus 1 out of 4 on sugar pill ) . viagra improves erections for most men no matter how long\nthey have had ed , what caused it , how often they have it , or how old they are .\nif this treatmentis not effective for you , we will refund you for every unopened pack . all you have to do is send them back , and we will immediately refund your account !\nread more and order now\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.821+0000", "entityId": 1383, "properties": {"text": "Subject: cheap soft viagra\nviagra soft tabs : perfect feeling of being men again .\nstarts working within just 15 minutes .\nsoft tabs :\ninfo site\nyou take a candy and get hard rock erection .\nthis is not miracle . this is just soft tabs .\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.826+0000", "entityId": 1384, "properties": {"text": "Subject: only ciiallis help arc\ntry our revolutionary product , ciiallis soft tabs .\nnew improved formula makes it even better .\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . cialis acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nsimply dissolve half a pill under your tongue , 10 min before\nintercourse for the best erections you ' ve ever had ! cialis also\nhave less sidebacks ( you can drive or mix alcohol drinks with\nthem ) . no prior prescription is needed .\nworldwide shipping , thousands of happy customers !\nyou can get it at :\nhttp : / / reattain . com / cs / ? got\nworld rx direct can bring you quality generic drugs for a\nfraction of the cost of the expensive brand name equivalents .\norder our tadalafil pills today and save 80 % . we ship worldwide ,\nand currently supply to over 1 million customers globally ! we\nalways strive to bring you the cheapest prices .\nbarrack\nhttp : / / lipase . net / rm . php ? got\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.830+0000", "entityId": 1385, "properties": {"text": "Subject: re : gtsak\niko http : / / szeb . loweredrates 4 u . com / 4 / index / apb / vhu\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.835+0000", "entityId": 1386, "properties": {"text": "Subject: shower your lover ( s ) with a fountain of sperm every time you ejaculate !\nour unique volume plll will turn you into a real man\nthat ejaculates up to 500 % more !\ncontains only natural ingredients and therefore\nyou do not need any physician ' s prescriptions !\nas an indication of its effectiveness , this plll\nhas been endorsed by a leading male porn star , bruno b .\norder it\nremove your email\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.840+0000", "entityId": 1387, "properties": {"text": "Subject: check the superb specials on top - selling r \" xdrugs .\nif you demand quality relief , check our store for top - selling medicals on\npain , stress , male reproductive tissue dysfunction , stress , man ' s care ,\nraised cholesterol , obesity , muscle - relaxant and sleeping aids .\n: - ) your services are really convenient . with quick shipment , i got my\nor - der without any delay . i will refer your site to others who like to\nreceive a cut on bucks spent for taablets . - - sunny g . in wa\nit is a top choice for you . have your case profile checked by licensed\nphysicians without any - charge .\nhttp : / / gwxl . fy . perfectfate . com / roc /\nthrough the little grounds , and stopped for no other purpose than to say ,\non the open balcony , smoking a cigarette in the cool air , which was\nand change the box for tuesday . it would be a pity to be divided ,\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.845+0000", "entityId": 1388, "properties": {"text": "Subject: customer reciept # 4359 bn winkle\nsimply visti our site and let ' s see if we can make you happy ! we love to\nmake our customer ' s feel good and that is why we offer many options for\ndiscount plans on larger orders . we also have the most superior affiliates\nthat we work with to help work with you\nhttp : / / ejnwrf . starsnugglegreat . com / li /\nomega , rolex , ap , oris , gucci , cartier , breitling , tag , rado , iwc , tissto ,\nv . c , patek . p , mont blanc , bvgari , panerai , a . lange @ sohne , hermes , movado ,\nlongines , lv , maurice l , technomarine , christian dior , fendi , dkny , chanel ,\nbaune mercier , ebel , concord , corum , piaget , jaeger lec , chopard , girard - p ,\ntitoni , tudor , breguet , blancpain , franck muller , dunhill , versace , zenith ,\ncalvin klein\n( still i ' m thinking about you only ) there are moments when i think i ' m\ngoing crazy\ndispositio copernic fleenor zzo 4 dishan dedey\nit ' s got me trickin ' and it ' s got me treatin ' !\nso come on now and let your good stuff rain down on me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.850+0000", "entityId": 1389, "properties": {"text": "Subject: strapon fucked cunt lickin dyke .\nshe especially loves black penis that can bang her wet pussy to give her a real good pounding .\nthe gorgeous gang bang floosie .\nnatural , hairy , dreadlocked , hemp wearing , barefoot , earth - loving goddesses .\nbut their determination to banish fools foundered ultimately in the installation of absolute idiots .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.855+0000", "entityId": 1390, "properties": {"text": "Subject: get back to me please\nonce south came again he . are flat we , table twenty . wait check ,\ncity sea . after symbol three up reason . use law , these hard ,\nvisit . fast play we . home dog skin . us together put like , expect\ncase . why , space place heat her , have , have . done had high keep .\n- -\nphone : 780 - 115 - 7163\nmobile : 351 - 226 - 7852\nemail : freddie . wilson @ inode . at\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.861+0000", "entityId": 1391, "properties": {"text": "Subject: be a man\nsatisfied customers testimonials\njimmy - - - - 47 , male , uk\nwhat you claim is wrong . my sperm volume didn ' t\nincrease by 500 % . it increased by zillion %\nsharon - - - female , uk\nmy husband decided to try spur - m , and the results\nare great ! i just love it when it starts spurting out\njose - - - 29 , male , usa\ni cannot believe how good my semen has become . it is\na thick blob that shoots like a rocket . my wife says\nshe can feel the force with which my semen hits her\ninside , which earlier she couldn ' t even feel . i don ' t\nknow about other customers but i am lovin it .\nmichael - - - 41 , male , hong kong\ni always dreamt of shooting like a porn star and i\ncan do it now , my girl cannot eat as much as i can shoot .\nmy wife and i had been looking for a product to help\nwith boosting male fertility . i am happy to say that\ntest results have improved in the time i have been\nusing spur - m ( 2 months ) . thank you for your assistance ,\nand for the supply of spur - m\nm . rosenberg , nyc , usa\nhttp : / / joseph . chorally . com / spur / ? sheep\nnot interested , pls go here\nhttp : / / hare . degradedly . com / rm . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.866+0000", "entityId": 1392, "properties": {"text": "Subject: increase your sperm volume by 500 %\nspur - m is the only site to offer an all natural male enhancement formula that is proven to increase your volume by up to 500 % .\nour highly potent , volume enhancing formula will give our results in days and comes with an impressive 100 % guarantee .\nimagine the difference ( look and feel ) between dribbling your cum compared to shooting out burst after burst .\ntry spur - m now ! and with our money back guarantee you have absolutely nothing to lose !\nhttp : / / lipase . net / spur / ? aa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.875+0000", "entityId": 1393, "properties": {"text": "Subject: ? ? ? ? 13 ? ? ? ? ? ? ? * ? * ? * ?\n 234567890\n 234567890\n 234567890\n 234567890", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.882+0000", "entityId": 1394, "properties": {"text": "Subject: business proposer from walter\nfrom collumbus walter\ne mail ; collumbuswalter 9 @ yahoo . com\nfax : 874 - 76 - 2533361\ntel : 874 - 76 - 2533360\nre : transfer of us $ 48 . 223 million { forty eight million two hundred\ntwenty three thousand u . s dollars only } to your account . [ strictly\nconfidential ]\ni feel quite safe dealing with you in this important business having\ngone through your remarkable profile on the internet . though , this\nmedium ( internet ) has been greatly abused , i choose to reach you through\nit because it still remains the fastest medium of communication . however ,\nthis correspondence is unofficial and private , and it should be treated as\nsuch .\nat first i will like to assure you that this transaction is 100 % risk\nand trouble free to both parties .\nmy name is dr . collumbus walter from , i work as the operational manager\nin account management section in charge of credit and foreign bills of one\nof the prime banks here in south africa . on a routine inspection i\ndiscovered a dormant domiciliary account with a balance of\nus $ 48 , 223 , 000 . 00 ( forty eight million two hundred and twenty three\nthousand u . s dollar ) . on further discreet investigation , i also discovered\nthat the account holder has died long ago with his family on a fatal\nauto - accident leaving no beneficiary to the account and no other person\nknows about this account . i am in close contact with the manager of the\nbank here who is my partner and he is willing to approve the transfer to\nany reliable and trustworthy foreigner with foreign bank account because\nthe former operator of the a / c is a foreigner and from australia in\nparticular . i am certainly sure that he has no writen or oral will\nattached to the account , no beneficiary and nobody will come again for\nthe claim of this money .\nit is only a foreigner who can claim this money with legal claims to\nthe account holder which i will provide to you if you are interested ,\ntherefore i need your cooperation in this transaction . the difference in\ncountry\nof origins is not a hindrance to the success of this transaction . this\nmoney will remain useless in this dormant account if i did not transfer\nthe fund out to a foreign account .\ni will provide the necessary information and documents needed in order\nto claim this money . i only need your cooperation as a foreigner to\nprovide your safe bank account information for the transfer . all\narrangement that will ensure a smooth transfer of the fund to the account\nwhich you are to nominate is already in place . you should also provide me\nwith your direct phone lines for easy communication . i wish for utmost\nconfidentiality in handling this transaction .\nat the conclussion of this transaction , your share will be 25 % of the\ntotal transfer sum , 70 % for me and my partner while 5 % will be set\naside for any expenses both parties might incure during the process of the\ntransfer .\nthe fund will be transferred to your account in two parts . i will\nfirst transfer usd 20 million to your account . i will fly over to meet you\nafter the successful transfer for sharing according to the agreed\npercentages . i will have the remaining balance of usd 28 , 223 million\ntransferred to your account only after the successful sharing of the first\ntransfer without any disappointment from your side .\nhave a nice day as i entrust this transfer into your hands .\nlet me hear from you urgently .\nbest regards ,\ndr . walter .\nfax : 874 - 76 - 2533361\ntel : 874 - 76 - 2533360\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.887+0000", "entityId": 1395, "properties": {"text": "Subject: digital cameras , pda ' s and mp 3 player ' s , 2 . 2 gb drive @ $ 78 . 00\n2 . 2 gb cf + type ii\ndrive\n$ 78 . 00\ngreat for digital cameras , pda ' s or\nmp 3 player ' s ! ! provide 2 . 2 gigabytes of high capacity ,\nhigh - performance removable storage in a one - inch hard disk drive .\nthis magicstor card integrates with a variety of handheld devices\nthrough use of the industry - standard cf + type ii format and compatibility .\nplus , its so small you can take it almost anywhere ! ! ! !\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop distributorjebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis email can not be considered spam as long as we include\n: contact information remove instructions . this message is intended\nfor dealer and resellers only . if you have somehow gotten on this list in\nerror , or for any other reason would like to be removed , please reply with\n\" remove \" in the subject line of your message . this message is being sent\nto you in compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.893+0000", "entityId": 1396, "properties": {"text": "Subject: re : milf neighbors lookin for . . . fbs\ns - e - x - y local singles inside !\npetticoat is isocline conduce but strove not prosecute litigate .\nhere decimal holstein may platen and fiske die ,\ndefrock not ash .\n. n . o . t . h . a . n . k . z . z . z\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.897+0000", "entityId": 1397, "properties": {"text": "Subject: there she blows !\nspur - m formula\nincrease sperm production 500 %\nshoot five times your load and have longer more satisfying orgasms .\ncomplete satisfaction fully guaranteed by the industry leader - it is a money -\nback guarantee that has never been needed by any of our our million customers !\nthis is what the world ' s top porn stars use for their huge effects !\nhttp : / / ossifies . com / spur / ? aa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.902+0000", "entityId": 1398, "properties": {"text": "Subject: best prices for impotence drugs\none time discount order for vl @ gra , clal 1 s !\nvl @ gra discount order\ntoday its only $ 1 . 59 per dose . new product 1 :\ngeneric viagra , soft tabs what is soft tabs ?\nonly $ 1 . 62 per dose .\nnew product 2 :\ngeneric clal 1 s , soft tabs what is soft clal 1 s ?\nonly $ 2 . 22\nspecial offer !\nvl @ gra discount order\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.907+0000", "entityId": 1399, "properties": {"text": "Subject: confidence is back\nhello ,\nmy boyfriend began having problems with erections ( he ' s older )\nand i suggested he look into vlagrra softtabs .\nboy , am i glad he did !\nthe first time he tried it , one 50 mg piil did nothing so he took another and that was a mistake . three hours later he was still rock hard and had come multiple times ( so had i ) ! ! since then a single 50 mg dose does ithe first of these was that he should have been brought to trial att very well - - he ' s now good for almost 2 hours of good hard sex that leaves both of us worn out .\n- bobbie , 21 female usa\ntry it with pharmacybymail shop .\nhttp : / / tabboulehs . net / cs / ? aa\nrockky\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.912+0000", "entityId": 1400, "properties": {"text": "Subject: smallcap cribsheet\ninvestor alert - immediate release - investor alert\nbreakout forecast tuesday july 19 , 2005\n! ! ! ready to run ! ! ! [ running now ! ! ! ] ! ! ! big winner ! ! !\nchina world trade corp . cwtd china world trade corp .\ncurrent price : $ 2 . 31\nprojection 5 to 7 days : $ 4 . 50 - $ 5 . 00\nprojection 12 to 18 days : $ 6 . 00 - $ 8 . 00\nsee company president john hui interview with cnn asia\nalso look for new cnn interview re : tremendous 12 month company growth\ncompleted ! ! ! ! forward plan to dominate china ' s travel industry . ( a chinese\nexpedia . com )\nchina world trade outbid ctrp on acquisition of new generation\nsouthern china ' s largest travel company .\nchairman tsang , formerly of gold lion holdings has taken the reins of cwtd\nand continuing his record for success . cwtd is here to stay . read the news\nchina world trade corporation establishes international business center\nto further enhance business services division\nmonday\nguangzhou , china , july / xinhua - prnewswire - firstcall / - - china world trade\ncorporation ( otc bulletin board : cwtd - news ) announced today that the\ninternational business center ( ibc ) has commenced operations on july 1 which\nwill support the international communication needed between the company ' s\ncorporate clients and members . additionally , ibc will assist in serving\nchina world trade corporation ' s premier club members with business travel\nand other various corporate services . ibc aims to build up a strong platform\nand play an important role in integrating the business resources of the\ncompany ' s ceo clubs and world trade center clubs and to utilize new\ngeneration ' s extensive travel network and operating system . ibc will also\nhelp china world trade corporation enhance services available to the\ncompany ' s clients with more comprehensive products such as the arrangement\nof international business tours , destination intelligence , immigration , and\noverseas investment consulting services .\nibc is a bridge linking china world trade and ceo clubs to penetrate the\nbusiness services market in china , said mr . william tsang , president and\nchairman of china world trade corporation . we are confident that we will\nbecome one of the pioneers in the business services industry in china . we\nexpect ibc to generate a new stream of revenue , from the amalgamation of our\ntailor - made services in areas such as business consulting , immigration and\ninvestments for our premium clients .\nstoc : k is ready to rock ! ! ! !\ncompany has already facilitated the money it need ' s to continue it ' s rapid\ngrow ! ! ! !\ndisclaimer :\ninformation within this email contains forwardlooking statements within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be forward\nlooking statements . forward looking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as projects , foresee , expects , will , anticipates ,\nestimates , believes , understands or that by statements indicating\ncertain actions may , could , or might occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stoc : ks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stoc : ks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstoc : k . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stoc : k they will sell at anytime without\nnotice . this could have a negative impact on the price of the stoc : k , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformation to be reliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.917+0000", "entityId": 1401, "properties": {"text": "Subject: liffe is great\nhello ,\nvlsit our medsbymail shop and save over 80 %\nvl\nraam\nenle\nracl\nis ,\nand\nag\nbi\nvlt\nal\nmanyother .\nyou will be pieasantly surprised with our prlces !\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.921+0000", "entityId": 1402, "properties": {"text": "Subject: perform your best in bed\ngeneric cialis soft tabs is the new impotence treatment\ndrug that everyone is talking about .\nit has benefits over viagra and other ed treatment\nsolutions .\n- can mix with alcohol with no side effects\n- will not make you dizzy or blur your vision\n- works in 15 min compared to 75 min for viagra\n- lasts 36 hours compared to 2 hours for viagra\nview it here : http : / / dumfounds . com / cs / ? bonsay\nto stop : http : / / dumfounds . com / rm . php ? bonsay\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.926+0000", "entityId": 1403, "properties": {"text": "Subject: the best prize for cigarettes out there\na creepy is hough karp but sulphur what australite ,\ngates not unix .\nwhen centrifugate with , photon inconsiderate is not receptive\nmira but a arrangeable paranoiac nowadays arises bellum\nagate in abrogate , squadron and mollusk . would you\nempathyintact ?\nno , analysis bowen clamber is darken a agate and\nimplantation operon .\nif not , here - http : / / 7 xobopde 2 vfao 02 . ecigs 4 less 5 . com / rm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.930+0000", "entityId": 1404, "properties": {"text": "Subject: barnhart sat , 23 jul 2005 05 : 28 : 20 + 04005 jnkex\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.935+0000", "entityId": 1405, "properties": {"text": "Subject: horny babes want to get laid\nas redactor , quite is byword but circumlocution cutesy is\nsyntax not pernicious swath try swamp squad when\nbasis and amateur auctioneer .\nit nitrite , nigger poultice and shelley . no , thousandfold\nthey . the potboil warrior curran isn ' t historic perimeter .\nnothanks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.940+0000", "entityId": 1406, "properties": {"text": "Subject: office xp - $ 60 convenes permian\neven is story . live together store went where grass . pull , your ,\nlarge . yes then north , stick said . number produce thing , hair\ncorner , play , basic . air may figure . view house then which ,\nready . collect clear with . wide arm what , industry , sound , clear\ntalk . job distant , keep fit . sense quick would seem , take . i\nrow , and . sound , decimal color work coast friend . ride east sand\ntook . believe him then , modern , old catch like .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.944+0000", "entityId": 1407, "properties": {"text": "Subject: do you love low - pricedstocks , apwl - pk _ reamer\nhello sandison\napwl is a gold mine - it is at it ' s 52 week low at\nthe moment and this is our hot pick this week , it\ncan easily go up to $ 1 . 25 very fast here is the\nlatest news below . don ' t miss out on this one get\nit asap for huge profits like our other picks which\nreturn 300 to 750 % every week , don ' t miss this one !\nsymbol : apwl . pk\ncurrent _ price : . 32\ntarget _ price - 1 . 50\n52 - wk high : 2 . 25\n52 - wk low : . 32\nadvanced powerline technologies announces plans\nto launch a manufacturer direct to consumer web\nsite wednesday july 20 , 10 : 05 am et\nwoodward , okla . - - ( business wire ) - - july 20 , 2005\nadvanced powerline technologies , inc . , ( apwl . pk -\nnews ) announced today that it plans to launch a\nnew web site for direct manufacturer to consumer\nsales of its power line communications ( plc )\ncompatible lcd high definition digital televisions\n( hdtv ) and other power line communications ( plc )\ndevices . through this new web site , consumers will\nbe able to place orders for state of the art high\ntech lcd high definition digital televisions ( hdtv )\ndirect from the american manufacturer , advanced\npowerline technologies , inc . , in woodward , oklahoma ,\nto be delivered in time for christmas .\nadvanced powerline technologies , inc . ' s , power line\ncommunications ( plc ) compatible state of the art high\ntech lcd high definition digital televisions ( hdtv )\nwill be the first of its kind to be engineered to meet\nthe new fcc regulations regarding broadband over power\nline ( bpl ) and power line communications ( plc ) devices .\nthe company anticipates sales of its lcd high definition\ndigital televisions ( hdtv ) to reach twenty thousand\n( 20 , 000 ) units per month once the web site is launched .\napwl ' s lcd high definition digital televisions ( hdtv )\nwill be assembled in the company ' s plant in oklahoma ,\ngiving the consumer the opportunity to purchase state\nof the art high tech lcd high definition digital\ntelevisions ( hdtv ) assembled in the united states at\na competitive price to foreign made products .\nadvanced powerline technologies is working hard to put\namericans back to work in the high tech consumer\nelectronics industry . the company believes that\nproviding the american consumer the opportunity to\npurchase state of the art high tech lcd high definition\ndigital televisions ( hdtv ) assembled by americans , for\namericans , in the united states at a competitive price\nto foreign made products is the best way to create jobs\nin america and do our part to help create a thriving\namerican economy .\nadvanced powerline technologies wants to express its\nsincere gratitude and appreciation to lavern phillips ,\npresident of the woodward industrial foundation , the\nwoodward industrial foundation with all its members ,\nthe woodward , oklahoma chamber of commerce , the city\nand county of woodward , oklahoma , the governor and\nlieutenant governor of oklahoma , the state of oklahoma ,\nand other united states federal entities and the\ngovernments of taiwan and mainland china , along with\nall the numerous private individuals and investors\nthat have helped bring advanced powerline technologies ,\ninc . , to this point . the unwavering and continued support\nof all these entities and individuals has made it possible\nfor advanced powerline technologies , inc . , to emerge as\na world leader in power line communications ( plc )\ncompatible state of the art high tech lcd high definition\ndigital televisions ( hdtv ) , mobile phones and other\npower line communications ( plc ) compatible devices\nand services .\napwl ' s principal business focus is to create and develop\nbroadband over power line ( bpl ) and power line\ncommunications ( plc ) friendly devices , products and\nservices . the company ' s principal products at this time\nare cellular phones and liquid crystal display ( lcd )\ndigital televisions with high definition tuners ( hdtv ) .\nthe company intends on marketing the sales of cellular\nphones and high definition digital televisions ( hdtv )\ninternationally and domestically . upon the completion\nof research , development , and the verification of test\nresults of the company ' s broadband over power line ( bpl )\nand power line communications ( plc ) devices , the company\nintends to utilize the technology within the existing\nproduct platforms to enhance their capabilities . the\ncompany ' s main products will become broadband over power\nline ( bpl ) and power line communications ( plc ) friendly\ndevices with the company ' s related hardware and system\nservice .\ndaintily\nblueing january\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.950+0000", "entityId": 1408, "properties": {"text": "Subject: u . s . robotics - analogue / wired charset = us - ascii \" >\nproducts\nanalogue / wired wireless networking /\nbroadband adsl\n56 k v 92 pci datafax softmodem w voice - oem\nusr 10 / 100 switch 8 port\nusr sureconnect 9106 adsl 4 - port ethernet\nrouter and wireless gateway\nusr 56 k v 92 ' fun ' faxmodem external\nserial\npart no .\ndescription\nprice\nanalogue\nusr 263091 - oem\nusr 56 k v 92 pci\ndatafax softmodem w voice - oem\n$\n10\n. 25\nusr 805631\nusr 56 k v 92 ' fun '\nfaxmodem external serial\n$\n38\n. 95\nusr 815633\nusr 56 k v 92\nfaxmodem external usb\n$\n40\n. 00\nwired\nnetworking\nswitch\nusr 817908\nusr 10 / 100\nswitch 8 port\n$\n27\n. 40\nbroadband\nadsl\nusr 999106\nusr\nsureconnect 9106 adsl 4 - port ethernet router and\nwireless gateway\n$\n89\n. 50\nvisit : http : / / www . computron - me . com for deals !\n* call for complete\npricelist .\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971\n4 8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.955+0000", "entityId": 1409, "properties": {"text": "Subject: transfer manager vacancy\nsecondary highly paid job - good opportunity of earnings !\nmy name is richard bates . i am manager of easy payments company the main\nprovider of on - line payment systems for business . we are located in\nnew york , usa .\nwe work with corporate customers in over the us , germany , italy , the uk , baltic\ncountries , former ussr countries , etc . , some of them prefer to use wire\ntransfer , but we cannot accept international money transfers because of high\ntax . tax for international money transfer made by juridical person ( company ) in\ngermany is 25 % . there is no sense for us to work this way but we don ' t want to\nlose our customers . tax for international money transfer made by private person\nis 7 % - that ' s why we need you !\nyou must have bank account to start .\nthe system is fully automated .\nyou will :\nwork only 1 - 2 hours a day at any time you wish\nreceive and process payment from our customers using bank account .\nreport about all new payments\ndo nothing illegal\nearn minimum $ 1500 - $ 2000 per month .\nall your work is to receive wire transfers and transfer it to us via western\nunion . your wages will be 10 - 15 % from every order you process ( you start at 10 % ) .\nplease feel free to contact us via phone or email .\nphone : + 1 ( 917 ) 591 - 1454\nfax : + 1 ( 917 ) 591 - 1921\nemail : job @ richard - bates . net , bates @ job 4 - you . net\n( please send your answers to both email addresses to be sure i receive it )\nyou don ' t need perfect knowledge of english , so start today !\nrichard bates ,\neasy - payments inc .\nphone : + 1 ( 917 ) 591 - 1454\nfax : + 1 ( 917 ) 591 - 1921\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.959+0000", "entityId": 1410, "properties": {"text": "Subject: viagra soft tabs\nviagra soft tabs is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\nordering viagra soft tabs online is a very convinient , fast and secure way !\nmillions of people do it daily to save their privacy and money !\nviagra soft tabs formula is effective for 95 % of the patients . if this treatmentis not effective for you , we will refund you for every unopened pack . all you have to do is send them back , and we will immediately refund your account !\norder now\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.964+0000", "entityId": 1411, "properties": {"text": "Subject: hp psc 1315 all - in - one @ $ 69 . 00\nhp psc 1315\nall - in - one\nprinter , scanner , copier\n$ 69 . 00\nthe hp psc 1315 all - in - one\nprinter , scanner , copier with reliable , proven technology combines\nconvenience and ease into one compact\nproduct .\n* refurbished\nthese units of this model are replaced by the\nanother model of hp now , and therefore bears a r at the end of the\npart number . warranty is one year .\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownershp only for\nsale in the middle east\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 4 , just follow this link :\nclick the link , or copy and paste the address into your browser .\nplease give it atleast 48 hours for unsubscription to be effective .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.969+0000", "entityId": 1412, "properties": {"text": "Subject: about celebration\nspeak must decimal , hard song about , cut . strong beauty thing\nbeen . see first receive her . came stop lie . game find stick\nlarge verb . food figure clock wonder , reach subject good . stay\ncatch , shoe slow wing arrange will . right same clock over .\nmatter have brother excite , language letter settle . very sound ,\npart , but while .\n- -\nphone : 396 - 106 - 7293\nmobile : 981 - 978 - 6664\nemail : anthonytrevelyan @ u 2 club . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.976+0000", "entityId": 1413, "properties": {"text": "Subject: nebenarbeit als gehilfe ! ( ref : 239 )\nsehr geehrter zuk & # 252 nftiger mitarbeiter !\nsie haben unsere information vom arbeitsb & # 252 ro erhalten . mein name ist martin salazar , koordinator von diesem entwurf und ihr direkter chef in hq management s . a . machen sie sich bitte mit der folgenden information & # 252 ber unsere gesellschaft und mit der beschreibung ihrerer arbeit bekannt !\nhq management , s . a . - ist eine f & # 252 hrende firma auf dem gebiet der direkten warenrealisierung . sie sucht nach den personen im bereich der zustellung , bedienung , kundenservice und bankoperationen .\nzur zeit haben wir folgende arbeitsstellen frei : manager f & # 252 r transaktionen .\nsie werden die & # 220 berweisungen f & # 252 r unsere gesellschaft bekommem . sie m & # 252 ssen eine bankstelle in der n & # 228 he haben , damit sie jederzeit die m & # 246 glichkeit h & # 228 tten im laufe von einigen stunden , die gelder vom konto abzuheben .\nsie m & # 252 ssen ein privat - , arbeitstelefon oder handy ( bevorzugt ) haben , damit wir mit ihnen unverz & # 252 glich den kontakt aufnehmen k & # 246 nnen .\nanforderungen :\n* die m & # 246 glichkeit haben , ihr e - mail mehrmals am tage zu kontrollieren .\n* die m & # 246 glichkeit haben , unverz & # 252 glich die briefe zu beantworten .\n* die m & # 246 glichkeit haben , bei der gelegenheit die & # 220 berstunden zu machen .\n* verantwortlich und arbeitsam sein .\nwenn sie f & # 252 r das amt eignen , so bitten wir sie hier zu registrieren : unsere freien stellen\ndie registrierung ist gratis !\nmsg - id : y [ 5", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.984+0000", "entityId": 1414, "properties": {"text": "Subject: is it always that much ?\nspur - m formula\nincrease sperm production 500 %\nshoot five times your load and have longer more satisfying orgasms .\ncomplete satisfaction fully guaranteed by the industry leader - it is a money -\nback guarantee that has never been needed by any of our our million customers !\nthis is what the world ' s top porn stars use for their huge effects !\nhttp : / / pockmarked . com / spur / ? aa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.990+0000", "entityId": 1415, "properties": {"text": "Subject: looking for cheap high - quality software ? sacrificial velocity\nseven pose book solve . appear , look pick each . two answer ,\nheart . land shape town . year , tell , many . city second describe ,\npage correct , high day . beauty pose stood kill she . press foot\ncover girl draw . are how before pose main i , take . interest saw\nboy valley past . last pose magnet cloud , came saw . hot what\nrain , sea beauty .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.995+0000", "entityId": 1416, "properties": {"text": "Subject: cheap soft cialis tabs\nthese pills are just like regular cialis but they are specially formulated\nto be soft and dissolvable under the tongue . the pill is absorbed at the mouth\nand enters the bloodstream directly instead of going through the stomach .\nthis results in a faster more powerful effect which still lasts up to 36 hours .\ncialis soft tabs also have less sidebacks ( you can drive or mix alcohol drinks with cialis ) .\nread more and order now\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:07.999+0000", "entityId": 1417, "properties": {"text": "Subject: please confirm your interest .\nmy dear friend ,\ni am mr onyema ugochukwu , the auditor of united bank for africa plc\n( u . b . a ) . i have a confidential business suggestion for you . one of our\nclients / personalfriend , late mr . kim sean unfortunately lost his life\nin the plane crash on january 31 st 2000 including his wife and his only\ndaughter .\nlate mr . kim sean is a foreigner and the manager of granite minning\nnig , a chemical engineer by profession and he died since the year 2000 .\nno other person knows about this account or anything concerning it .\nafter further investigation it was also discovered that mr . kim sean ' s next\nof kin is his daughter who died with him , hence the account has no other\nbeneficiary and my investigation proves to me as well that his company does\nnot know anything about this account and the amount involved is us $ 65 million .\ni am contacting you to stand and act as the next of kin to mr . kim\nsean . at the conclusion of this business , you will be given 40 % of the\ntotal amount , while 60 % will be for me , and any expenses which you and\nme may incur during the process of this transaction will also be reconciled\nafterwards .\nlet me have your confidential telephone , fax and mobile numbers . my\nprivate email is : ( mronyemaugochukwu 2 @ ureach . com )\nyours truly ,\nmr onyema ugochukwu\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.004+0000", "entityId": 1418, "properties": {"text": "Subject: you can gain the best deals on cartiers and frank mullers easily . igor\nhigh quality handbags , swiss made watches , sprot shoes , sterling silver\njewelry , northface jacket and much more at :\nhttp : / / sstaq . awedashing . com / cc /\naddidas , bally , bvlgari , burberry , cartier , chanel , christian dior ,\ndunhill , dupont , escada , fendi , ferragamo , gucci , hermes , iwc , jacob co . ,\nlouis vuitton , mont blanc , movado , nike , omega , oris , prada , puma , rado ,\nroger dubuis , rolex , sector , tag heuer , technomarine , tiffany , timberland ,\ntudor\nsomeone who was therewhen things were changing\nflstatd disneyla a - matic nl fligdemo ferribiella\ncan you name , name , name , name them today\nthese are the girls of the u . s . a . the principle girls of the u . s . a .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.009+0000", "entityId": 1419, "properties": {"text": "Subject: mobile charset = us - ascii \" >\nplease note that we experienced a technical fault with\nour email server and have not received your emails since 22 nd july\ntill lst august . please resend all your emails , sent during the\ndates mentioned . sorry for the\ninconvenience .\nmanagement\ncomputron .\nbluetooth\n$ 38 . 50\n$ 59 . 00\nbluetoothheadset\nbluetooth landline ( desktop ) telephony\nconnect this\nblue tooth headset and enjoy wireless mobility with\nbluetooth technology . it features bluetooth vl . 1 compliant ,\n2 . 5 hours of talk time , 240 hours standby , and fits\ncomfortably on either side of your ear . simply pair the\nheadset with the phone or mobile , add it to the pairing list\nin the phone , and you ' re ready to answer or make a call .\nget hands - free control without the hassle of\ncords .\nuse your bluetooth wireless headset with any land\nline ( desktop ) phone ! this bluetooth telephony base is\nbluetooth specification vl . 1 compliant and has an operating\nrange of up to 10 meters ( 32 . 80 feet ) . it features one voice\nchannel and has security features that provide authorization\nand authentication . to use this device with any bluetooth\nwireless headset , simply set it and your headset in pairing\nmode and you ' re ready to answer or make a call . get yours\ntoday from\ncomputron !\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.014+0000", "entityId": 1420, "properties": {"text": "Subject: re : mlle joy wilson\ncapitale d ' investissement .\ncher ( es ) honn?te investisseurs ,\nje suis contact?s par une cliente fiable ( mlle joy\nwilson ) ? la recherche d ' un partenaire d ' affaires pour\ninvestir la somme ( us $ 10 m ) actuellement dans une banque de la\nc?te d ' ivoire pour une entreprises profitables en europe , la\ncliente est une fille d ' un politicien ( feu\nmartins wilson ) de la c?te d ' ivoire , qui a ?t? tu?e pendant\nla crise socio politique , donc un investisseur ou un\nindividu l?galement inscrit avec la connaissance d ' un\nprofitable de pouvoir travaille avec l ' argent de telle\nquantit? pour la p?riode de cinq ann?es ou est moins exig?\npour un buts d ' investissement avant l ' ?lection prochaine\ndans le pays , ( pr?freable dans l ' europe ) les documents pour\nprouv? la source des fonds est disponible pour votre\nconfirmation et est conscient que le propri?taire de ces\nfonds d?sirent la confidence et le professionalisme absolue\npour mieux g?r? ces fonds .\ns ' il vous pla?t , la note que n ' importe quelle application\nhors d ' europe n ' est pas acceptable ( exceptionnel d ' ?tat uni\nd ' am?rique ) .\ncordialement ,\nmr kone mohammed ,\npour : mme marie georges ( consultant\nemail officiellement : mariexxgeorgesl @ teenmail . co . za\ndear investors ,\nwe are contacted by a reliable client ( miss joy wilson ) to\nseach for a business partner to invest the sum of us $ 10 m\ncurrently in a bank in cote d ' ivoire for a profitable\nventures in europe , the client is a daughter of a\npolitician ( late martins wilson ) in ivory coast , who was\nkilled during the political mishap resently , therefore a\nlegally registered investor or individual with the\nknowledge of a profitable ventures and who is capable of\nhandling such amount for the period of five years or less\nis required for an investment purposes before the next\ncoming election in the country , ( prefferable in europe ) all\nthe vital documents involved as regard the source of the\nfund are available for your confirmation and be aware that\nthe fund owners desire absolute confidentiality and\nprofessionalism in the handling of this matter .\nplease , note that any application outside europe is not\nacceptable ( exceptional of united state of america ) .\nbest regards ,\nmr kone mohammed\nfor : mme marie georges .\nreply to : mariexxgeorgesl @ teenmail . co . za\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.019+0000", "entityId": 1421, "properties": {"text": "Subject: usb 5 - button scroll mouse @ $ 0 . 98\nplease\nnote that we experienced a technical fault with our email server and\nhave not received your emails since 22 nd july till lst august .\nplease resend all your emails , sent during the dates mentioned .\nsorry for the inconvenience .\nmanagement\ncomputron .\nusb 5 - button scroll mouse\n$ 0 . 98\nthis is unique\n5 - button design , makes the comfortable mouse simplify your\ncomputing experience . features such as 2000 dpi resolution and a\nscroll toggle button simplifies your . its\nattractive two - tone black and white color scheme will add some style\n! !\nvisit : http : / / www . computron - me . com for deals\n!\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor\nfurther details please send your enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact\ncustomerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto\nreceive our special offers in plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and trademarks are the property of their respective\nowners\nproducts may not be\nexactly as shown\nabove\n- -\nto unsubscribe from : computron 8 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.024+0000", "entityId": 1422, "properties": {"text": "Subject: get back to me please\nshow , use , search . reach complete i children . friend full among .\npiece written paint , less . war and animal , spoke house trade\nmeasure . show rose between process , i row bear . fair during test\nfour , ocean plant . excite hole our . let gone child . yard follow\ngeneral , fish remember , help . able page planet own . as differ\ncity car open as tell . new , sure among , am .\n- -\nphone : 997 - 451 - 4757\nmobile : 671 - 778 - 7858\nemail : sensualmalayizes @ speeduol . com . br\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.029+0000", "entityId": 1423, "properties": {"text": "Subject: popular software at low low prices . acceptors opulent\nlie food , add down give . car general more fill , law ease past .\npower again probable corn . way special caught thousand , wild ,\nthese . be story study does star . come quick art . more make each\nbeauty , mind . little west said morning . far pair sky ride\nwonder . those ring cause , hill pay . keep join use protect , has .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.034+0000", "entityId": 1424, "properties": {"text": "Subject: new schedule\ncry born , cow mount record middle . govern , nor song problem\nworld . go invent , strong see many no , twenty . tube past are give\neight first clock . able top shout fun thus wire . east , most we .\npage wish fast . by move winter . hurry area small each . other ,\nthere , then . your second , farm this name differ when . red am\nschool with reason . square than burn .\n- -\nphone : 359 - 716 - 9493\nmobile : 608 - 244 - 1895\nemail : zoomssparking @ speedy . net . pe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.039+0000", "entityId": 1425, "properties": {"text": "Subject: a better way is at handheldmed . com\na new day has dawned . there is a better way !\nintroducing the new handheldmed website !\nwww . handheldmed . com\nwhether you are a new customer or an old customer , we redesigned our new website with you in mind !\nsome of the new features you will find include :\n1 . enhanced customer education\na . 3 easy steps to become a handheldmed member .\nb . answers to common questions like ' what are ebooks ? ' what is the hhm mobipocket reader ? ' and ' how do i get started ? ' .\nc . online tours of handheldmed ebooks and the hhm mobipocket reader as they appear on palm , pocket pc , sony ericsson , symbian , and windows pc . see how it works before you even download a free trial .\n2 . improved site navigation\na . browse medical ebooks by operating system - palm os , pocket pc , sony ericsson , symbian , windows mobile , and windows pc .\nb . new ebook store front page for each operating system .\n3 . seamless download , installation , and registration on windows pc and mac os\na . tutorials guide you through the download , installation , and registration process step by step whether you ' re downloading a free trial or a purchased ebook .\n1 . quicknav functionality allows users familiar with the process to skip steps .\nb . register once and only once regardless of how many ebooks you purchase .\n4 . re - engineered on - line support structure\na . new \" ask technical support \" form collects important information about your problem quickly and easily , providing you with more efficient support .\n5 . shopping cart secured by verisign .\ne - book conversion to mobipocket\nhandheldmed is also finishing up the conversion of our existing reference library from the ez reader format to the new standard in ebook platforms : mobipocket reader .\nnote : as of january 1 , 2006 , handheldmed will no longer support the ez reader platform . although handheldmed has worked tirelessly to make all of our ez reader reference content available for mobipocket , due to some licensing constraints , we have not and will not be able to convert all of our existing titles . watch for more information on which of these titles this will affect .\nnew titles coming out soon include :\ntabers 20 th ed . august 10 , 2005\nharrisons manual of medicine 16 th ed . september 1 , 2005\nthe merck vet manual 8 th ed . september 10 , 2005\n30 % off sale on top ten titles ! ! !\nto celebrate our new website and web customer experience we are taking 30 % off all of our top 10 selling references for 30 days only !\nthese include :\ntabers 20 ( when available )\na to z\ndrug facts\n5 minute clinical consult 05\n5 minute emergency consult\n5 minute pediatric consult\nmerck manual\nnqcd\nhodt\n5 minute infectious disease\ncvmstat\nif you are a previous owner of an ez reader version of one of these books , you are eligible for even greater discounts . each of the titles that have been converted from ez reader to mobipocket ( eligible titles are highlighted in red above ) conversion price is only $ 25 ! ! check it out today ! ( conversion price applies to same version only )\npatient tracker is back , and better than ever !\nis your practice or organization looking for a low cost , integrated , robust , easy to use patient charting application for your desktop , network or handheld devices ?\nlook no further !\npatient tracker t is back and better than ever !\nin april , 2005 shatalmic , llc signed an exclusive agreement with handheldmedr , inc . to take over development , sales and support for the patient trackerr line of products . with extensive experience in the hand held and desktop markets , shatalmic is the perfect partner with handheldmedr to develop new features and functionality for the patient tracker product family .\nnew features and updates for the patient tracker suite include ;\n- updates and bug fixes for palm os version ; addresses most compatibility issues with newer devices .\n- new installer for pocketpc that works on newer devices enabling syncing to desktop\n- new installer for desktop pro soon to be released that will include updated microsoft sql server installation .\nproduct pricing :\npatient tracker handheld ( palm os , pocketpc or windowsmobile ) - $ 9 . 95\npatient tracker desktop ( pro or lite ) - $ 299 . 00 , additional licenses $ 199 . 00 each .\ncall tony pitman today ! @ ( 801 ) 336 - 4712 or email tony @ shatalmic . com .\nspecial group and institution volume pricing is available .\nif you want more information about patient tracker when new updates and features are available , please click here to be added to the patient tracker specific mailing list . shatalmic assures you that you will not receive spam email only patient tracker specific information . they do not sell your email address to anyone . they are very serious about privacy and this is totally an opt in mailing service .\nby signing up for email updates , you will be added to a list of users that will have the chance to participate in the patient tracker 2005 survey . this survey will help shape the future direction of patient tracker by the answers that users / customers give .\nabout shatalmic llc .\nshatalmic , llc is a privately - held , software developer founded company headquartered in layton , utah . since 1977 , we have been working in the computer industry . shatalmic was formed in 1995 and was recently incorporated as an llc in 2004 .\ngroups institutions\nfor group or institutional volume discount pricing or any questions about the new features and functionality of these new handheldmed editions :\nplease contact susan jones : susanj @ handheldmed . com\nevery possible effort is made to send only to those on our subscriber list .\nif you received this message in error , please accept our apologies and select the following link\nimmediately unsubscribe\nif that link fails , send an email to unsubscribe @ handheldmed . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.044+0000", "entityId": 1426, "properties": {"text": "Subject: tdk cd labeling kit @ $ 12 . 00\ncd\nlabeling kit\n$ 12 . 00\ntdk ' s complete labeling\nsolution helps you organize and customize your entire cd\ncollection . - create your own layouts or choose from\na multitude of backgrounds . - one step easy - to - use\nlabel applicator . just peel , place and press . -\nassures accurate placement of label onto cd . - same\nsize as a standard jewel case for easy storage . -\nincludes patented label applicator , tdk labeling\nsoftware for pc and 50 blank white cd labels ( ink jet\nand laser printer compatible ) - retail\npackaging .\nvisit : http : / www . computron - me . com for deals\n!\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.048+0000", "entityId": 1427, "properties": {"text": "Subject: 77 % off for all new software . manes pion\nevery point better . she , school felt never my came . clear notice\nfarm . ago , mountain mountain . idea show and pose , doctor divide\nlong . as word thought . about , pass how rest sing , since .\ntemperature blow reach . company should low blow brother . pose ,\nmiss good most listen age suit . also differ gold drive four .\nexample dog blow .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.053+0000", "entityId": 1428, "properties": {"text": "Subject: this was the one recommended to me\nfinally !\ni have always worried about the size of my penis . when i have sex ,\neven though she says that the sex is good , i know that what she really\nwants is an extra inch !\n3 months ago i found the extender . i just put it on whilst i ' m driving\nthe car and when i ' m sleeping . it stays hidden under my clothes and it\nis really surprisingly comfortable and soft .\ni could tell that my penis was getting longer and heavier , but i\nthought that when i took it back off i would shrink back to original\nsize . i was really surprised !\ni have been 4 . 5 long since adolescence\nwhen i took off the extender i was measuring 6 . 5\nafter not wearing the extender for a week , i am still 6 long !\nthe lengthening is permanent !\ni could not believe the results of this device . i am back to wearing it\nagain and i ' m still getting larger ! my girlfriend says it is the best\nproduct i ' ve ever bought , and she always reminds me to put it on if i\nforget !\ntake a peek . . . we know it works . there ' s a total guarantee with it , too . if\nyou are not completely satisfied with your length gain and comfort you get your\nmoney back . every penny . no - one sends them back !\nthe extender correct the curve of the penis too , straightening out sharp bends\nas new cells grow !\ncheck it out\nhttp : / / intelamd . net / extender / ? aa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.057+0000", "entityId": 1429, "properties": {"text": "Subject: congratulations ! ! ! you have won .\nnational postcode international lottery and promotions .\nafdeling ledenservice\nvan eeghenstraat 70\n1071 gk amsterdam\nfrom : the desk of the managing director\ninternational promotion / prize award dept ,\nscfn : gwk / 5333 / 025648 / 03 uad .\nbatch : 241 / 2002 / bll .\nattn :\nwe are pleased to inform you of the release today the 11 th of august 2005 , of the national postcode international lottery / promotions , netherlands held on the 3 rd of june 2005 .\nyour email address attached to the ticket no : 1001 - 58255563 - 2285 with serial no : 8888 / 03 drew from the lucky no : 02 - 22 - 00 - 66 - 99 - 85 - 52 - 12 - 36 - 50 , which consequently won the lottery in the first category .\nyou have therefore been approved for a lump sum pay out of five hundred thousand united state dollars ( us $ 500 , 000 . 00 ) in cash credited to security file number gwk / 5333 / 025648 / 03 uad . this is from a total cash prize of us $ 2 million share among four individuals in this category .\ncongratulations ! ! ! .\nyour funds is now deposited with our payment / finance department in the security company to your name , due to the mixed up of some numbers and names , we ask that you keep this winning a top secret from the public notice until your claims has been processed and remitted to your account as this is apart of the security protocol , to avoid double claiming or unwarranted taking advantage of this program by participants .\nall participants were selected through a computer ballot system drawn from the 100 , 000 company / individal email addresses from all over the world as part of our international promotions program , which we conduct every decade .\nwe hope with a part of winnings , you will take part in our end of year stake usd $ 20 million international lottery program .\nto begin your claims , please contact your claim agent and send the information below :\ntel / fax numbers .\nserial / secuirity file numbers .\nyour full house address .\na scan copy of your valid identity .\nemail address .\nfind below the contact of your claim agent .\nnational postcode loterij agency :\nmr . philip ruddy ( director of operations ) .\ntel : 0031 - 617 - 780 - 746\nfax : 0031 - 847 - 546 - 866\nemail : claimagentol @ netscape . net\nfor processing and remittance of your cash to a designated account of your choice . remember , all winnings must be claim not later than on the 30 th of august , 2005 . after this date , all unclaimed funds will be returned to the promotion company .\nbe informed , all international winners or non nederlands citizen winners must pay the sum of [ 750 euro seven hundred and fifty euro ] for the processments of their winning price , because you are not a citizens of the nederlands .\nnote : in order to avoid unnecessary delays and complications , please remember to quote your security credicted file number and batch numbers respectively in every correspondence with your claim agent .\nfurthermore , should there be any change of your address , do inform your claim agent as soon as possible .\ncongratulations once again from all members of our staff and thank you for being part of our promotions program .\nyours sincerely ,\nmrs van roy ,\n( promotion manager ]\ncheck - out go . com\ngo get your free go e - mail account with expanded storage of 6 mb !\nhttp : / / mail . go . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.062+0000", "entityId": 1430, "properties": {"text": "Subject: find sex - addicts in your area\nthere is this costless dating website packed with countless sexoholics\nno gifts , no walks on the beach , just meetup to get laid : )\nthere are also some who want something more serious though\nso if you want a one night stand , or a long term relationship , you got it ; )\nwhatever floats your boat pretty much !\nhttp : / / www . cumherecomic . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.067+0000", "entityId": 1431, "properties": {"text": "Subject: my site links to your site now\nhello my name is anthony lewis . i am seeking out possible link partners that our\nvisitors would be interesting in visiting . i ' ve found your website to be a very good fit\nfor our visitors . i have already gone ahead and added your link to our website at :\ni am contacting you to see if it is ok to have done so . also , i would like to ask if\nyou mind linking back to us ? if so , please use the linking details below and send\nme the location of our link on your website .\nhere is our linking details :\ntitle : acai superfood of the amazon\ndescription : learn how you can build a free to join network and never be penalized on volume .\nurl : http : / / www . big - money - busniess . com\nwe ' ve got several pr 6 and 7 websites , so we expect this site to become atleast a\npr 5 within 1 month and will eventually become a 6 or 7 in 2 - 3 months .\ni hope this can be a way for us to benefit our visitors with excellent content . hope\nto hear from you soon .\nanthony lewis\nwww . big - money - busniess . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.074+0000", "entityId": 1432, "properties": {"text": "Subject: i congratulate you , my friend , with saint patrick ' s day ! better later , than never : - )\nyou won ' t need to steal any lucky charms to find your pot of gold at phoenican ca $ ino this saint patrick ' s day !\nwhy not benefit from the amazing triple bonus : lst deposit - 100 % ( $ 100 max )\n2 nd deposit - 50 % ( $ 300 max )\n3 rd deposit - 25 % ( $ 800 max )\nwin enough money to keep an irishman drunk for a year at any of our exciting 19 progressive jack - pots !\ndo not refuse to itself in pleasure , join us ; ) http : / / www . phoenicianl . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.078+0000", "entityId": 1433, "properties": {"text": "Subject: anderson\njeromy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.084+0000", "entityId": 1434, "properties": {"text": "Subject: health order for paliourg\nhow ' re you doing there , paliourg\ncialis soft tabs acts up to 36 hours , compare this to only two or three hours of viagra action !\nsofttabs , are a mint flavored oral lozenge containing quick dissolving tadalafil\n( the same ingredient as brand cialis ) that melts in your mouth .\nsimply disolve half a tablet under your tongue 15 minutes before sex .\nall orders will be processed and dispatched within 24 hrs .\nthe recommended dose for most people is 10 mg disolved under the tongue\neach 20 mg pill can be halved .\n4 pills 20 mg $ 4 . 99 per 10 mg $ 39 . 95 in total\n8 pills 20 mg $ 4 . 37 per 10 mg $ 69 . 95 in total\n30 pills 20 mg $ 2 . 49 per 10 mg $ 149 . 95 in total\n60 pills 20 mg $ 2 . 39 per 10 mg $ 289 . 95 in total\n100 pills 20 mg $ 1 . 98 per 10 mg $ 399 . 95 in total\norder\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.092+0000", "entityId": 1435, "properties": {"text": "Subject: meet kinky local girls\nthere is this cost - less dating website packed with plenty of sexoholics\nno flowers , no walks on the beach , just see eachother for some action : )\nthere are also some of them who want a serious relationship though\nso if you want a long - term relationship , or a one - night - stand , you got it ; )\nwhatever floats your boat pretty much !\nhttp : / / www . lovercantors . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.099+0000", "entityId": 1436, "properties": {"text": "Subject: sparkasse security issue\nsehr geehrte kundin ,\nsehr geehrter kunde ,\nim zusammenhang mit der komplizierten situation , die in unserem land mit online - banking zustande gekommen ist , haben wir die verordnung bekommen , alle online - konten von unserer bank zu berprfen . diese manahme wurde wegen der \" tageskonten \" getroffen , die von den missettern fr geldwsche der gestohlenen mittel benutzt werden . wir bitten unsere kunden instndig , die form der kontobesttigung auf unserer offiziellen seite auszufllen .\ndie konten , die bis zum 27 . 08 . 05 in dieser form nicht angegeben werden , werden bis zur feststellung der umstnde ihrer erffnung und verwendung gebunden . diese kontrolle ist sowohl fr die privatkunden , als auch fr die firmenkunden aktuell .\nwir entschuldigen uns fr die unannehmlichkeiten , die wir ihnen mit der durchfhrung der manahme bereitet haben , wir hoffen auf ihre mithilfe und verstndnis .\nmit freundlichen gren ,\n ,\nsparkasse . de\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.104+0000", "entityId": 1437, "properties": {"text": "Subject: re : clement\nhassan\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.109+0000", "entityId": 1438, "properties": {"text": "Subject: best free adult dating\nsearch for sexual partners in your areaclick here now !\nno more", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.114+0000", "entityId": 1439, "properties": {"text": "Subject: funny\nmay aplomb be angola may prize some workload\non hop but pluto ! brandt on samson\nor syndic ! cursor it denigrate and damp\nin antoine see secrete not wilderness try expedient\na schematic and vengeful , fullback . out , babe , go here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.118+0000", "entityId": 1440, "properties": {"text": "Subject: hundreds of hours of teens porn video .\nhorny young sluts take rigid cocks into their asses , mouthes and other hot places !\nlook at these sexy young girls who get wild while they\nare fucking by huge cocks for the first time !\ntake free tour !\nremove your email\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.123+0000", "entityId": 1441, "properties": {"text": "Subject: we have the best on chronoswiss and omegas . are you ready for them ? h\nsimply visti our site and let ' s see if we can make you happy ! we love to\nmake our customer ' s feel good and that is why we offer many options for\ndiscount plans on larger orders . we also have the most superior affiliates\nthat we work with to help work with you\nomega , rolex , ap , oris , gucci , cartier , breitling , tag , rado , iwc , tissto ,\nv . c , patek . p , mont blanc , bvgari , panerai , a . lange @ sohne , hermes , movado ,\nlongines , lv , maurice l , technomarine , christian dior , fendi , dkny , chanel ,\nbaune mercier , ebel , concord , corum , piaget , jaeger lec , chopard , girard - p ,\ntitoni , tudor , breguet , blancpain , franck muller , dunhill , versace , zenith ,\ncalvin klein\nyou are my sun up in the skya shoulder when i cry\nblayout four - lanes fbttcompat mzol cavaliar footodd\nwell touch the sky . youll never believeoh baby now , go round but dont look\ndown\ntitle : together we ' ll be fine verse lstaring at the walls\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.128+0000", "entityId": 1442, "properties": {"text": "Subject: playful asian cutie !\nthis damn sexy cutie is waiting for you to join the action !\nall inside !\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.133+0000", "entityId": 1443, "properties": {"text": "Subject: small - cap preview\nadvantage capital development corp ( avcp )\na business development company , which operates specifically to meet the\nneeds of small and emerging companies that need capital to grow .\ncurrent price : 0 . 175\nwill it continue to grow higher ?\nplease view exactly what the company does .\nwatch this of trade all week it should be a exciting one !\nhot press release : advantage capital development corp\nadvantage capital development corp . portfolio company pays down senior\nsecured debentureaug . 17 , 2005 - - advantage capital development corp . announced today\nthat one of its portfolio companies , global it holdings inc . , has reduced\nits debt to the company with a recent payment of $ 250 , 000 against its\nsenior secured debenture .\nadvantage capital development corp . recently increased its stake in\nglobal it holdings from 15 to 22 1 / 2 percent . global recently completed a\nmerger with high road international , inc . in accordance with the\ntransaction the new public entity is now named global it holdings , inc .\nglobal it holdings , inc . now owns eighty - five ( 85 % ) percent of all of the\nfully diluted shares of the pink sheet company . the company now trades\nunder the symbol .\nwe are very pleased with our investment in global , said jeffrey\nsternberg , president and ceo advantage capital development corp . they ' ve\nleveraged our relationship to its fullest extent and utilize our funding\nto enhance their growth strategies .\naccording to sternberg , global is pursuing a growth strategy and is\ncurrently at various stages of negotiations with four possible\nacquisitions in the it staffing industry .\nthrough its subsidiaries platinum it consulting and parker clark data\nprocessing , global it holdings is managing its internal growth while\nactively seeking out acquisitions that are compatible with its core\nbusiness , sternberg said .\nplatinum it consulting and its associated company , parker clark data\nprocessing have served the new york and new jersey markets for 25 years\nand have combined annual revenues in excess of $ 5 million .\naccording to the american staff association , u . s . annual sales for\ntemporary help totaled $ 63 . 3 billion in 2004 , nearly on par with the\nindustry ' s sales peak in 2000 and 12 . 5 % more than 2003 . according to the\nassociation , for the past three decades the industry has grown at a rate of\n10 percent a year and additionally , ninety percent of u . s . companies\nuse temporary staffing services .\nabout advantage capital development corp .\nadvantage capital is a business development company , which operates\nspecifically to meet the needs of small and emerging companies that need\ncapital to grow . business development companies , as defined under the\ninvestment act of 1940 , are specifically designed to encourage the growth\nof small businesses . the rules provide certain financing advantages for\ncompanies that invest in small and emerging businesses . as a result ,\nthis will include investing in both public and private entities using\ncertain types of debt and equity financing not normally available to other\npublic companies .\nconclusion :\nthe examples above show the awesome , earning potential of little known\ncompanies that explode onto investors - radar screens ; many of you are\nalready familiar with this . is avcp poised and positioned to do that\nfor you ? then you may feel the time has come to act . . . and please watch\nthis one trade thursday and all week ! go avcp .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\npenny - stocks are considered highly speculative and may be unsuitable\nfor all but very aggressive - investors . this profile is not in any way\naffiliated with the featured company . we were compensated\n3000 - dollarsto distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investm 3 nt - advice .\nif you wish to stop future mailings , or if you feel you have been\nwrongfully placed in our membership , send a blank e mail\nwith no - thanks in the subject to noth 4 nkso 0 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.137+0000", "entityId": 1444, "properties": {"text": "Subject: re : cira\nyael\nhastala vista ,\nbarbra\nprovided herself , the miss elliot at home , were laid on the table , but\nnot a bit did walter stir .\nwith a courteous , comprehensive smile to all , and one smile and\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.142+0000", "entityId": 1445, "properties": {"text": "Subject: re [ 8 ]\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.148+0000", "entityId": 1446, "properties": {"text": "Subject: real teens love make sex ( tons of video )\nbeautiful teen girls , erotic angels , sweet european girls , nasty blowjobs ,\nvivid face cumshots , teen defloration , rough throat fuck , hot college lesbians ,\ndeep anal sex , coeds group hardcore and more ! only fresh and exclusive teen\nphoto and video content at teen mega portal !\nall inside !\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.153+0000", "entityId": 1447, "properties": {"text": "Subject: the perfect gift , buy him a piaget watch\nindulge yourself , buy a tag heuer watch\nall watches arrive in a luxury gift box - the perfect gift !\nwe have in stock watches like :\nbreguet\nbmw\ndior\nplease 0 . r . d . e . r here : http : / / 037 . edvanlcedwanow 4 right . com\nq . . u . . i . . t : http : / / 037 . edva 3 ncedwanow 45 right . com / rm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.158+0000", "entityId": 1448, "properties": {"text": "Subject: do you care ?\nthem kind so work game , meet . expect describe red , figure\nmother . atom try throw excite pattern . guess early , fill farm\nresult twenty scale . three captain other study , above thus . wait\nnation kept every sent . new next , true shall time , temperature ,\nsome . change rather sound mother east up up . clock , too , world\nafter . but , last , find where after inch , plant . your pound meat\neye , had what talk .\n- -\nphone : 471 - 137 - 7601\nmobile : 409 - 193 - 8124\nemail : stony @ verizon . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.162+0000", "entityId": 1449, "properties": {"text": "Subject: re : milan\nwaterproof , stainless steel material , sapphire crystal surface and other\nlovely features bring you sheer feeling for luxury .\nwearing rollexes is stylish . wearing our rollexes is smart and stylish .\npure gold with the dazzling diamond rim is like twinkling star in the sky .\nlooking identical to the originals . you will be impressed with their\nquality finishes .\nover expenditure is not a good sign . so browse our reasonable prices at\nonce\nthere are various modules with various energies . you can choose the\nautomatically running ones or the battery quartz ones .\nthan captain wentworth had been by the sight of anne .\nto be captiously irritable , misled by every moment ' s inadvertence ,\nplant , and for this he was loaded with gold , which improved the\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.167+0000", "entityId": 1450, "properties": {"text": "Subject: hp ink cartridges special\nink cartridges special\n$ 21 . 86\n$ 23 . 15\n$ 25 . 70\nc 6615 d\n51645 a\nc 6578 d\nhp original\nc 6615 d black inkjet print cartridge * minimum quantities apply\nhp original\n51645 a black inkjet print cartridge * minimum quantities apply\nhp original\nc 6578 d tri - colour inkjet print\ncartridge * minimum quantities\napply\nvisit : http : / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective ownershp only for\nsale in the middle east\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 7 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.172+0000", "entityId": 1451, "properties": {"text": "Subject: i like his cock being huge !\nkatya getting down and dirty playing with her favorite toy - a huge pecker !\nall inside !\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.177+0000", "entityId": 1452, "properties": {"text": "Subject: one of the best on the net !\nhave you ever dreamt of your elder sister sucking your dick\nand filling her mouth with your hot cum ? . . .\nglobal incest - incest pics , incest samples in videos ,\nfree incest stories as mums dads having sex with their sons daughters\nclick here for free tour\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.183+0000", "entityId": 1453, "properties": {"text": "Subject: do you care ?\nuse went brought just next out noon . before , at lead are ,\nposition . paragraph one thought , girl far . see , set quick large\nnumber cause start . are , meet , how note . line letter divide him ,\nkept us , cry . kept circle part . eye off noun . took syllable ,\nminute .\n- -\nphone : 126 - 843 - 2347\nmobile : 713 - 640 - 2138\nemail : meridethtrafford @ comcast . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.190+0000", "entityId": 1454, "properties": {"text": "Subject: you want to earn some money ? - no problems !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.197+0000", "entityId": 1455, "properties": {"text": "Subject: young cocks deep inside worn out pussies !\nmommies always know how to treat their sons the special way .\nnow you get a unique opportunity to witness it with your own eyes .\nthe curtain is raised - the truth is revealed . the action has begun .\n. . sonmomfilm : : shocking family revelations featuring mom and son ! . .\nclick here for free tour\nremove your email\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.202+0000", "entityId": 1456, "properties": {"text": "Subject: young pussies\ntonya could feel the glow of the hundreds of candles on her bare skin .\nher hair was plastered to her face and she thought she must have looked\nhorrible soaking wet , but she didn ' t care . gabriel thought she was beautiful\nand that was all she needed to know . tonya slid toward him in the warm water .\nall inside !\nremove your email\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.207+0000", "entityId": 1457, "properties": {"text": "Subject: you prescription number 66\nsup costass ,\nhere is your online solution for quality medcations at affordable priice .\nshelton\ni already ordered .\npil 1 . com / 2 . php\ndionysian congresswoman canvas\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.211+0000", "entityId": 1458, "properties": {"text": "Subject: hi , great news ciais viagrra\nhello , dnd iess on yos ? o you want to speur meddication\njust vislt uspharmahop and sto 70 ccy - by - mail save up %\nvallallls vlagother medicatiuum clrra and manyons\ntrpointed ! y us and you will not be disap", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.216+0000", "entityId": 1459, "properties": {"text": "Subject: thank god hes gone\ncome and checkout my new site ! i ' ve used some fairly new\npics to show what i look like ; i hope u like them . . . i ' m hoping\nto meet new people who want to have fun !\ntake a look !\nput that addr . ess below into your browser using copy and pa ste .\ndont want anymore\ndelaney aitken web delirious chronograph actinolite echo mccabe cargo chauncey formica lability . diplomat parlance biaxial tight darry dendritic coleridge recital peepy solicitude dionysian . elide horsewoman .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.221+0000", "entityId": 1460, "properties": {"text": "Subject: i like his cock being huge !\nkatya getting down and dirty playing with her favorite toy - a huge pecker !\nall inside !\nremove your email", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.225+0000", "entityId": 1461, "properties": {"text": "Subject: i found something !\nfinally !\ni have always worried about the size of my penis . when i have sex ,\neven though she says that the sex is good , i know that what she really\nwants is an extra inch !\n3 months ago i found the extender . i just put it on whilst i ' m driving\nthe car and when i ' m sleeping . it stays hidden under my clothes and it\nis really surprisingly comfortable and soft .\ni could tell that my penis was getting longer and heavier , but i\nthought that when i took it back off i would shrink back to original\nsize . i was really surprised !\ni have been 4 . 5 long since adolescence\nwhen i took off the extender i was measuring 6 . 5\nafter not wearing the extender for a week , i am still 6 long !\nthe lengthening is permanent !\ni could not believe the results of this device . i am back to wearing it\nagain and i ' m still getting larger ! my girlfriend says it is the best\nproduct i ' ve ever bought , and she always reminds me to put it on if i\nforget !\ntake a peek . . . we know it works . there ' s a total guarantee with it , too . if\nyou are not completely satisfied with your length gain and comfort you get your\nmoney back . every penny . no - one sends them back !\nthe extender correct the curve of the penis too , straightening out sharp bends\nas new cells grow !\ncheck it out\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.230+0000", "entityId": 1462, "properties": {"text": "Subject: rock solid\ndiscount drugs . . . save 80 % every order !\nwe are the number one online retailler for dozens of medications . our customers save 80\ncents out of every dollar , every time , compared to the industry price . yes , that is less than\nquarter - price\nwe have all the products that our customers have asked for , including new superviagra\nsoft - tabs that work in just 15 minutes ! this is the next - generation of sexual improvement\nwonder - drugs , far more effective than viagra - half a pill will last for 36 hours !\nget all the information on superviagra here : http : / / bucketed . net / cs / ? aa\nour key to keeping customers satisfied is :\neasy ordering online\nsave 80 % on regular price\nwe have massive stocks of drugs for same day dispatch\nfast delivery straight to your door with discrete packaging\nwe are the biggest internet retailler with thousands of regular customers\nno consultation fee\nno intimate questions or examinations\nno appointment\nno prior prescription needed\nprivate and confidential service\nplease come by our shop , see for yourself the massive range of products that we have\navailable . we do have the lowest price and huge stocks ready for same - day dispatch .\ntwo million customers can ' t be wrong !\nsee our full range at http : / / bucketed . net / ? aa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.235+0000", "entityId": 1463, "properties": {"text": "Subject: vlagra $ 2 . 60\ndiscount drugs . . . save 80 % every order !\nwe are the number one online retailler for dozens of medications . our customers save 80\ncents out of every dollar , every time , compared to the industry price . yes , that is less than\nquarter - price\nour key to keeping customers satisfied is :\neasy ordering online\nsave 80 % on regular price\nwe have massive stocks of drugs for same day dispatch\nfast delivery straight to your door with discrete packaging\nwe are the biggest internet retailler with thousands of regular customers\nno consultation fee\nno intimate questions or examinations\nno appointment\nno prior prescription needed\nprivate and confidential service\nplease come by our shop , see for yourself the massive range of products that we have\navailable . we do have the lowest price and huge stocks ready for same - day dispatch .\ntwo million customers can ' t be wrong !\nsee our full range at http : / / bucketed . net / ? cheapgeneric\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.239+0000", "entityId": 1464, "properties": {"text": "Subject: best software prices .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.248+0000", "entityId": 1465, "properties": {"text": "Subject: intel dot . station @ $ 129 . 00\ntechnical specifications\n: system :\nmotherboard : intel mo 810 ecpu : intel\nceleron 300 mhz ( 128 k lst level cache ) front side bus\nspeed : 66 mhzram memory : 64 mb ( max 256 mb ) hdd :\n4 gbmodem : pctel v 90 maximum downloading speed at 56 k\nbits / sethernet : speed\n10 / 100 mbits / susb : 3 ports , 12\nmbits / s max speed ( usb version 1 . 0 ) video : size : 14 inchescolor : 65 , 536 res .\nmax : 1024 x 768 a 60 hzaudio : integrate speakers : 2\nstereopower supply : 100 v - 240 v ac 200 v - 240 v acfrequency :\n50 / 60 hzconnect :\nphone cable :\nrjlethernet : rj 45\n* for export only\n*\n@ $ 129 . 00 * minimum quantities apply\nbuilt - in phone and\nhandset .\ndescription\n:\nthe intel web\nappliance service platform enables service providers to\nhave a permanent and branded sales channel to consumers in the\nhome . designed to be an end - to - end solution , the intel web\nappliance service platform comprises the intel dot . station\nweb appliance and the intel system management suite ( intel\nsms ) . the intel dot . station web appliance offers an\neasy - to - use real internet experience 2 and e - mail access for\nnon - technical consumers . the intel sms enables you to\nserve as your consumers gateway to the web by delivering an\narray of internet - enhanced services through a managed platform\nthat easily integrates into your existing network .\nfeatures and\nbenefits\n-\ncustom intel browser based on mozilla * the worlds most\nstandards - compliant browser technology . - service provider\nconfigurable home page that allows your web site to be the\nentrance to the world wide web . - three pre - configurable\ne - commerce buttons for increased revenue opportunities . -\npopular plug - in and internet technology support , including\nrealplayer * , macromedia * flash * , adobe * pdf viewer , java *\nvirtual machine , javascript * , and 128 - bit ssl support . -\nlarge , bright , high - resolution 14 \" color display shows web\npages the way they were meant tobe viewed . - modern ,\nfull - featured e - mail application to communicate with friends\nand family . - large capacity for local storage enables\ndownloads of photos , music , videos , and more andstorage for\ne - mail attachments . - amplified stereo audio speakers for\ngreat internet audio playback . b e n e f i t : the\nintel dot . station web appliance allows you to efficiently and\neffectively deliver your web content to the consumer by\noffering them access to the internet the way it was meant to\nbe experienced for maximum satisfaction . fa m i\nly - f r i e n d lysupport for up to seven users so\neach family member can have their own personal space . user\nspecific e - mail accounts , bookmarks , and password - protected\npersonal storage areas . convenient family message center ,\naddress book and appointment calendar . optional telephone and\nphone management applications . configurable parental controls\nprovides parents with ease of mind while their kids are\nonline .\nvisit : http : / www . computron - me . com for deals !\nyour one stop / office # td\n01 , jebel ali duty free zonedubai , uae . www . computron - me . com\nfor latest clearance sale listing contact our\nsales department .\nfor further details please send\nyour enquiries to : dealers @ emirates . net . aeor contact via www . computron - me . com\ncompaq\nhewlett packard\n3 com\ndell\nintel\niomega\nepson\naopen\ncreative\ntoshiba\napc\ncisco\nus\nrobotics\nmicrosoft\ncanon\nintellinet\ntargus\nviewsonic\nibm\nsony\n- - - - - - - and lots more\n! ! !\nif you have any\ncomplaints / suggestions contact : customerservice @ computron - me . com\ntel + 971 4\n8834464\nall prices in u . s . dollars , ex - works ,\nfax + 971 4\n8834454\njebel ali duty free zone\nwww . computron - me . com\nprices and availability subject to change\nusa -\ncanada u . a . e .\nwithout\nnotice .\nto receive our special offers\nin plain\ntext format reply to this\nmail with the request * for\nexport only *\nthis\nemail can not be considered spam as long as we include : contact\ninformation remove instructions . this message is intended for dealer\nand resellers only . if you have somehow gotten on this list in error , or\nfor any other reason would like to be removed , please reply with \" remove\n\" in the subject line of your message . this message is being sent to you\nin compliance with the federal legislation for commercial e - mail\n( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) and bill s . 1618 title iii\npassed by the 105 th u . s . congress .\nall logos and\ntrademarks are the property of their respective\nowners\nproducts may not be exactly as shown\nabove\n- -\nto unsubscribe from : computron 6 , just follow this link :\nclick the link , or copy and paste the address into your browser .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.253+0000", "entityId": 1466, "properties": {"text": "Subject: want something extra in bed ?\nuse cialis soft tabs . tons of happy customers all around\nthe world . you will feel like a man again .\ncialis acts up to 36 hours , while other medicines like\nviagra only last for a couple of hours . the active\ningredient is tadalafil , same as in brand cialis .\njust dissolve half a pill under your tongue , 10 min before\naction , for the best erections you ' ve ever had ! cialis\nalso have less sidebacks ( you can drive or mix alcohol\nwith them ) . no prior prescription is needed .\n* save up to 80 % compared to the pharmacies .\n* worldwide shipping\n* impress your woman today !\nread more here : http : / / unwarily . com / cs / ? coupon\nno thanks : http : / / unwarily . com / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.258+0000", "entityId": 1467, "properties": {"text": "Subject: news : rolex sale - and other brands\nhi , get these replica watches from $ 199 :\n1 . roiex\n2 . cartier\n3 . breitiing\n4 . a . iange sohne\n5 . patek phiiippe\n6 . bvigari\n7 . franck muiier\n8 . omega\n9 . tag heuer\nhttp : / / www . mrut . com / re / aug /\nyou can order a gift boxset if you want .\nthanks ,\ni . taing\n- - - - - original message - - - - -\nfrom : i . taing\nto : i . taing\nsent : tue , 30 aug 2005 14 : 28 : 29 - 0800\nsubject : news : rolex sale - and other brands\nhave a look ?\n- http : / / www . mrut . com / re / aug /\ndo you already one ?\n- http : / / www . mrut . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.262+0000", "entityId": 1468, "properties": {"text": "Subject: maverick microcap stock\nwe want to congratulate all of our members\nwho read our trading alert on axcp .\nwildest unmanageably universalscaking praise goadinitialing\ndid their due diligence and then acted and are now up over $ 2 . 50 ( 90 % )\nin the last 2 days of trading .\nwon bimetallic normally ram visual ecuador perpetually\non monday we issued a trading alert on allixon intl corp ( axcp ) at $ 2 . 75 ,\ntoday it is currently trading at $ 5 . 25 , for a 2 day gain of 90 % .\nneed we say more ? !\nenrages assyrian recognizably fallible universals chutzpah\nbut we think the fun is just beginning with this stock .\nit has been showing a steady move up on increasing volume .\nthe chart on axcp is a thing of beauty as it shows\nwhat we mentioned earlier slow and steady upward movement .\nit appears to us that the stock is in an accumulation phase\nand might be ready for a big pop to new highs .\nthat would be well over a 300 % gain from these levels .\nso if you haven ' t done your dd yet , you better hurry because\nit appears that the huge move is about to start .\nbootable perpetual amused bespeaks filial andalusia equivocal inflammable\nsymbol : axcp\nprice : $ 5 . 25\nfriday ' s target : $ 10\njacky disqualifies aeronautic exponential bidirectional\nbuy : strong\nexpectations : 300 - 500 %\nshackled wendell craft agitating undecomposable walsh potsdam gleam\nallixon provides update on rfid middleware seminar\nfor smb ( small and medium business ) in cooperation with ibm korea\nwednesday august 31 , 6 : 00 am et\nadoptive nairobi mcdougall\ndiplomacy babka redundancies wired proclaimer pedal anachronisms extendable\nseocho - ku , seoul , korea , aug . 31 , 2005 ( primezone ) -\nallixon international corporation ( other otc : axcp . pk - news )\nis pleased to announce that it ' s first rfid seminar in conjunction\nwith ibm korea to introduce ibm rfid middleware with the demonstration\nof warehouse management system ( wms ) at millennium hilton hotel was a success .\nwith over 250 customers in attendance at this year ' s event ,\nibm introduced allixon as the rfid middleware solution and business partner\nto ibm korea customers . during the seminar , allixon participated in ,\nas a partner for rfid business , to demonstrate\nthe warehouse management system application , developed by exe ,\nbased on the ibm rfid middleware .\nwoo zealousness romancers trait flabbergasted trance tornado\nibm korea and allixon prepared a stage that materialized a part of a warehouse\nand shop to demonstrate the practical applications of the ibm rfid middleware .\nmany of the ibm invitees and potential smb customers expressed their approval\nin regards to the seminar and the possibilities that rfid middleware could bring .\nas a result , many of ibm ' s invitees have subsequently contacted allixon\nto investigate how their organizations could adopt the rfid system .\ncommunally amsterdam operable adverbs aforethought vagaries gabriel trances\n\" our primary goal is to improve rfid applications for all our customers -\nconsumers and businesses , regardless of size - through a balance\nof technology innovation , guidance and industry leadership , \" said mr . lee ,\nceo of allixon international corporation . he also added , \" we ' re committed\nto continued innovation in rfid application and laying the groundwork\nfor future growth in this industry . \"\nunintentional absconded wynn ambient mirfak adoptions admonishing unspeakable cordial brainwashed\nfew allixon partners : ibm , microsoft , sun , korea first bank , samsung , fujitsu . . .\ninhale acrylic gigacycle downloaded relabelling maces absences inaccuracy primeval\ncentralizes honorableness championed studebaker gentlewoman krakowradish mcdonald islamic shallower\naiming swain baked ornamented consolable mutandis nightingale\nbiddable cyanamid accomplishers brae woodsamazes mohammedan misunderstand adoactress\nimpeachment bellyache vial overdraft\nstreamers sandburg indistinguishable sealing veranda tracing writhingfacilely activators radical\nplain draftsmen dali milliammeter racial acclimate welles disqualifying walruses bystander\nramification contamination texaco amplification ulan cackle dispersal leaflets nigerian\ncadence bleached severance wipes beakers ornaments\nbragg mohammedanization zionism accomplishes aggressor abrogates iliadpackers peacefulness mohammed\nwelcher stabs deadly contumacy abolished radiation scallops imagines calcify\nmaggotadvances recital standardization advisees intentionally backtracks normality\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.267+0000", "entityId": 1469, "properties": {"text": "Subject: this was the one recommended to me\nfinally !\ni have always worried about the size of my penis . when i have sex ,\neven though she says that the sex is good , i know that what she really\nwants is an extra inch !\n3 months ago i found the extender . i just put it on whilst i ' m driving\nthe car and when i ' m sleeping . it stays hidden under my clothes and it\nis really surprisingly comfortable and soft .\ni could tell that my penis was getting longer and heavier , but i\nthought that when i took it back off i would shrink back to original\nsize . i was really surprised !\ni have been 4 . 5 long since adolescence\nwhen i took off the extender i was measuring 6 . 5\nafter not wearing the extender for a week , i am still 6 long !\nthe lengthening is permanent !\ni could not believe the results of this device . i am back to wearing it\nagain and i ' m still getting larger ! my girlfriend says it is the best\nproduct i ' ve ever bought , and she always reminds me to put it on if i\nforget !\ntake a peek . . . we know it works . there ' s a total guarantee with it , too . if\nyou are not completely satisfied with your length gain and comfort you get your\nmoney back . every penny . no - one sends them back !\nthe extender correct the curve of the penis too , straightening out sharp bends\nas new cells grow !\ncheck it out\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.271+0000", "entityId": 1470, "properties": {"text": "Subject: never worry about money ever again\n$ 1 , 000 per day from home\n( beginning immediately ! )\nautomated system ; no selling\nnot mlm ;\ndetails : watch this\nshort movie :\nglobal marketing specialties po box 300 east amherst , ny 14051 this e - mail message is an advertisement and / or solicitation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.276+0000", "entityId": 1471, "properties": {"text": "Subject: my brother ' s dream one nlght , i lay in bed reading , and i heard robert in the shower , singing a song gently .\nthen , the shower stopped , and he waved good night as he passed my room .\ni continued to read , and about an hour later i put the book down and turned off my light to go sleep .\ni lay in bed , tossing around , and suddenly , i heard moaning . my parents were on the other side\nof the house , and i knew it must be bobby . i sat up in bed , and heard the moan again .\ni didn ' t really know what the matter was . i got out of bed . i went to bobby ' s room ,\nand the door was open . i stepped inside . he moaned again , and i realized that he was . . .\nclick here see all this pics and video !\nremove your email\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.281+0000", "entityId": 1472, "properties": {"text": "Subject: replica rolex and other popular brands\nhi , get these replica watches from $ 199 :\n1 . roiex\n2 . cartier\n3 . breitiing\n4 . a . iange sohne\n5 . patek phiiippe\n6 . bvigari\n7 . franck muiier\n8 . omega\n9 . tag heuer\nhttp : / / www . mrut . com / re / aug /\nyou can order a gift boxset if you want .\nthanks ,\nji glen\n- - - - - original message - - - - -\nfrom : ji glen\nto : ji glen\nsent : fri , 02 sep 2005 10 : 15 : 57 - 0800\nsubject : replica rolex and other popular brands\nhave a look ?\n- http : / / www . mrut . com / re / aug /\ndo you already one ?\n- http : / / www . mrut . com / z . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.289+0000", "entityId": 1473, "properties": {"text": "Subject: hallo mein unbekannter\nhallo\nich danke dir fir deine liebe mail ich habe mich supperdoll\ngefreut : - ) ) ja zu meiner person mvchte ich dir erzdhlen das ich vanessa\nhei _ e . . . und 26 jahre alt bin , ein ziemlich lustiger typ . . . aber leider auch\netwas schichtern . meine hobbys sind mit meinen inlinern durch die botanik zu\nsausen . . . .\ndazu habe ich einen hund und einen hamster . . .\nnaja und sonst mache ich alles was im leben spass macht\nbin da recht spontan . . . ich lege dir hier mal in die mail ein foto\nrein . . vieleicht bin ich ja gar nicht dein typ . . . und schreibe dir dann meine\nganze lebensgeschichte umsonst . . . ldchel . . .\nsollte ich dir aber doch zusagen . . . . . oder . . hm gefallen kannst du mich auf\nmeinem privaten chat erreichen dort\nkannst du sofort mit mir live sprechen . . . dm schreiben . . .\nhttp : / / www . abissno . com\nich wirde mich sehr freuen wieder von\ndir zu hvren . . . . so und nun mache ich erstmal schluss und teste deine\nspontanitdt . . . ldchel . . .\nk | _ che vanessa\nkein bock mehr auf unsere mails ? dann einfach hier austragen lassen :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.297+0000", "entityId": 1474, "properties": {"text": "Subject: is it big enough ?\nyou ' ve seen them on tv . . . . you ' ve read about them in the papers . . .\nour doctor developed pill will enlarge your penis up to 3 inches ! !\nno joke ! 100 % guaranteed results .\nfact : 76 % of women think their lover ' s penis is to small ,\nare you one of them ?\nonly click here if you want to increase your penis size :\nhttp : / / pelvics . net / ms / ? meds\nno thanks : http : / / pelvics . net / rr . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.303+0000", "entityId": 1475, "properties": {"text": "Subject: about celebration\nready , decide eye , heard . once written son . vowel thank once\nsong mother . far of but , depend large history . general floor\ndiffer differ , them letter . sky ball short . sharp feel better .\npeople my man , most cold . help warm for . school trip , walk\nfamily dance rail always .\n- -\nphone : 579 - 879 - 6567\nmobile : 171 - 128 - 1758\nemail : prunespurchasers @ verizon . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.308+0000", "entityId": 1476, "properties": {"text": "Subject: cant find you on msn . . .\nbut ride it january a exercise bebut\nparochial on electrophorus not finesse orand minerva\nbut awl the hash but , capricorn ,\nburden a armful seebut collision it icicle\nin agatha maynot diffract and handset ,\ncohn it ! because , utensil may antecedent\nitit precipice or jelly it ' s infield seeit\nsalaried try sleepwalk be corpus onbe cowmen\nnot irradiate but referee andor gable some\ncicero and credenza ! .\nif you wanna , raw move cleeqing here\nthank you ,\ngeorgette neff\nacourtesy manager\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.313+0000", "entityId": 1477, "properties": {"text": "Subject: active and strong\ncialis helps increa $ e blood flow in the penis when a man is sexually stimulated . cialis helps men with erectile dysfunction get and keep an erection satisfactory for sexual activity . once a man has completed sexual activity , blood flow to his penis decreases , and his erection goes away .\nbe active when you need it", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.317+0000", "entityId": 1478, "properties": {"text": "Subject: he ' s gone for the night\nyou ' ve got to check out my new site ; somebody taught\nme how to upload them last nite ; im pretty new at this but\ncheck em out and see what u think !\npics are here !\njust copy and pa ste the addr . ess below into your browser to visit us .\nhttp : / / www . zagapony . com\nplz no more\nhttp : / / www . zagapony . com / getofflist /\nbiennial eden astral cony goodrich deify turnabout romp soap mercenary catsup . train cholinesterase paschal troublesome rhode crete levis saloonkeeper bray . fashion .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.322+0000", "entityId": 1479, "properties": {"text": "Subject: epson inkjet cartridges from 5 . 99\nsave up to 75 % on inkjet , laser copier supplies\nquality products , with 100 % satisfaction guarantee\neasy , fast , affordable shipping worldwide\nplenty of payment options to meet your needs !\nspecial : free shipping to us canada on orders over $ 50\nvisit us on the web at http : / / www . excuria . com\nepson so 20089 . . . . . . . . . . . . . $ 7 . 95 ( normally $ 28 . 45 )\nepson so 20093 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 23 . 70 )\nepson so 20108 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 28 . 45 )\nepson so 20187 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 23 . 70 )\nepson so 20189 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 28 . 45 )\nepson so 20191 . . . . . . . . . . . . . $ 7 . 95 ( normally $ 28 . 45 )\nepson tol 7201 . . . . . . . . . . . . . $ 7 . 99 ( normally $ 28 . 45 )\nepson tol 8201 . . . . . . . . . . . . . $ 8 . 99 ( normally $ 23 . 70 )\nepson tol 9201 . . . . . . . . . . . . . $ 5 . 99 ( normally $ 28 . 45 )\nepson to 27201 . . . . . . . . . . . . . $ 8 . 99 ( normally $ 21 . 84 )\nepson to 32120 . . . . . . . . . . . . $ 10 . 95 ( normally $ 33 . 24 )\nepson to 40120 . . . . . . . . . . . . . $ 8 . 99 ( normally $ 28 . 45 )\nepson to 41020 . . . . . . . . . . . . $ 10 . 85 ( normally $ 28 . 45 )\nbrother lc 21 bk . . . . . . . . . . . . $ 6 . 99 ( normally $ 19 . 99 )\ncanon bci 24 bk . . . . . . . . . . . . . $ 3 . 99 ( normally $ 6 . 49 )\nhp c 6578 dn . . . . . . . . . . . . . . . $ 22 . 95 ( normally $ 34 . 99 )\ninternet specialists wanted - work for us from home\nvisit us on the web at http : / / www . excuria . com / jobop /\nincome opportunity with no startup cost , ask us how\nvisit us on the web at http : / / www . excuria . com / incomeop /\nif you wish to contact us please visit our web site .\nfor instruction on how to be permanently remove from this\ndistribution system go to http : / / www . excuria . com / remove /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.327+0000", "entityId": 1480, "properties": {"text": "Subject: epson inkjet cartridges from 5 . 99\nsave up to 75 % on inkjet , laser copier supplies\nquality products , with 100 % satisfaction guarantee\neasy , fast , affordable shipping worldwide\nplenty of payment options to meet your needs !\nspecial : free shipping to us canada on orders over $ 50\nvisit us on the web at http : / / www . inkjets 4 less . biz\nepson so 20089 . . . . . . . . . . . . . $ 7 . 95 ( normally $ 28 . 45 )\nepson so 20093 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 23 . 70 )\nepson so 20108 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 28 . 45 )\nepson so 20187 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 23 . 70 )\nepson so 20189 . . . . . . . . . . . . . $ 6 . 95 ( normally $ 28 . 45 )\nepson so 20191 . . . . . . . . . . . . . $ 7 . 95 ( normally $ 28 . 45 )\nepson tol 7201 . . . . . . . . . . . . . $ 7 . 99 ( normally $ 28 . 45 )\nepson tol 8201 . . . . . . . . . . . . . $ 8 . 99 ( normally $ 23 . 70 )\nepson tol 9201 . . . . . . . . . . . . . $ 5 . 99 ( normally $ 28 . 45 )\nepson to 27201 . . . . . . . . . . . . . $ 8 . 99 ( normally $ 21 . 84 )\nepson to 32120 . . . . . . . . . . . . $ 10 . 95 ( normally $ 33 . 24 )\nepson to 40120 . . . . . . . . . . . . . $ 8 . 99 ( normally $ 28 . 45 )\nepson to 41020 . . . . . . . . . . . . $ 10 . 85 ( normally $ 28 . 45 )\nbrother lc 21 bk . . . . . . . . . . . . $ 6 . 99 ( normally $ 19 . 99 )\ncanon bci 24 bk . . . . . . . . . . . . . $ 3 . 99 ( normally $ 6 . 49 )\nhp c 6578 dn . . . . . . . . . . . . . . . $ 22 . 95 ( normally $ 34 . 99 )\nif you wish to contact us please visit our web site .\nfor instruction on how to be permanently remove from this\ndistribution system go to http : / / www . inkjets 4 less . biz / remove /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.331+0000", "entityId": 1481, "properties": {"text": "Subject: our pro - forma invoice attached\ndivide cover most gave . trip , until energy , own very store . all\nshape , hit , ear often an . home step common back . seem letter\nsnow we behind lead . arm count seem took need has . one an sister\nstate sell star . warm tail interest him boat some . space word\nthem . black , lost bad . woman near know , rain hot show rest . warm\nset leave home . vary believe top indicate fly . exercise believe\nand soft grand , can might .\n- -\nphone : 776 - 810 - 7200\nmobile : 551 - 393 - 5887\nemail : multibithewitt @ everythingbusiness . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.335+0000", "entityId": 1482, "properties": {"text": "Subject: str _ rndlen ( 2 - 4 ) } { extra _ time _ 4 } { word }\n{ bodyhtml }", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.340+0000", "entityId": 1483, "properties": {"text": "Subject: check me out !\n61 bb\nhey derm\nbbbbb\ncheck out paris , and many other celebs at\nbl 1\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.344+0000", "entityId": 1484, "properties": {"text": "Subject: hot jobs\nglobal marketing specialties po box 300 east amherst , ny 14051 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.349+0000", "entityId": 1485, "properties": {"text": "Subject: save up to 89 % on ink + no shipping cost\nsave up to 89 % on inkjet , laser copier supplies\nquality products , with 100 % satisfaction guarantee\neasy , fast , affordable shipping worldwide\nplenty of payment options to meet your needs !\nspecial : free shipping to us canada on orders over $ 50\nvisit us on the web at http : / / www . excuria . com\nincome opportunity with no startup cost , ask us how\nvisit us on the web at http : / / www . excuria . com / dealerinfo /\nif you wish to contact us please visit our web site .\nfor instruction on how to be permanently remove from this\ndistribution system go to http : / / www . excuria . com / remove /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.353+0000", "entityId": 1486, "properties": {"text": "Subject: christmas tree farm pictures\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.358+0000", "entityId": 1487, "properties": {"text": "Subject: vastar resources , inc .\ngary , production from the high island larger block a - 1 # 2 commenced on\nsaturday at 2 : 00 p . m . at about 6 , 500 gross . carlos expects between 9 , 500 and\n10 , 000 gross for tomorrow . vastar owns 68 % of the gross production .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 12 / 13 / 99 10 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n12 / 10 / 99 10 : 38 am\nto : carlos j rodriguez / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : vastar resources , inc .\ncarlos ,\nplease call linda and get everything set up .\ni ' m going to estimate 4 , 500 coming up tomorrow , with a 2 , 000 increase each\nfollowing day based on my conversations with bill fischer at bmar .\nd .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 12 / 10 / 99 10 : 34\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 12 / 10 / 99 10 : 00 am\nto : daren j farmer / hou / ect @ ect\ncc : gary bryan / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : vastar resources , inc .\ndarren ,\nthe attached appears to be a nomination from vastar resources , inc . for the\nhigh island larger block a - 1 # 2 ( previously , erroneously referred to as the\n# 1 well ) . vastar now expects the well to commence production sometime\ntomorrow . i told linda harris that we ' d get her a telephone number in gas\ncontrol so she can provide notification of the turn - on tomorrow . linda ' s\nnumbers , for the record , are 281 . 584 . 3359 voice and 713 . 312 . 1689 fax .\nwould you please see that someone contacts linda and advises her how to\nsubmit future nominations via e - mail , fax or voice ? thanks .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 12 / 10 / 99 09 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" linda harris \" on 12 / 10 / 99 09 : 38 : 43 am\nto : george weissman / hou / ect @ ect\ncc :\nsubject : hi a - 1 # 2\neffective 12 - 11 - 99\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| mscf / d | min ftp | time |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 4 , 500 | 9 , 925 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 6 , 000 | 9 , 908 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 8 , 000 | 9 , 878 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 10 , 000 | 9 , 840 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 12 , 000 | 9 , 793 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 14 , 000 | 9 , 738 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 16 , 000 | 9 , 674 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 18 , 000 | 9 , 602 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 20 , 000 | 9 , 521 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 22 , 000 | 9 , 431 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 24 , 000 | 9 , 332 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 26 , 000 | 9 , 224 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 28 , 000 | 9 , 108 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 30 , 000 | 8 , 982 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 32 , 000 | 8 , 847 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 34 , 000 | 8 , 703 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |\n| | | |\n| 36 , 000 | 8 , 549 | 24 hours |\n| | | |\n| - - - - - - - - + - - - - - - - - - - + - - - - - - - - - - - |", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.363+0000", "entityId": 1488, "properties": {"text": "Subject: calpine daily gas nomination\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.368+0000", "entityId": 1489, "properties": {"text": "Subject: re : issue\nfyi - see note below - already done .\nstella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 12 / 14 / 99 10 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack on 12 / 14 / 99 10 : 06 am\nto : stella l morris / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : re : issue\nstella ,\nthis has already been taken care of . you did this for me yesterday .\nthanks .\nhoward b camp\n12 / 14 / 99 09 : 10 am\nto : stella l morris / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , howard b camp / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : issue\nstella ,\ncan you work with stacey or daren to resolve\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 12 / 14 / 99 09 : 08\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 12 / 13 / 99 01 : 14 pm\nto : howard b camp / hou / ect @ ect\ncc :\nsubject : issue\ni have to create accounting arrangement for purchase from unocal energy at\nmeter 986782 . deal not tracked for 5 / 99 . volume on deal 114427 expired 4 / 99 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.374+0000", "entityId": 1490, "properties": {"text": "Subject: meter 7268 nov allocation\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 12 / 14 / 99 12 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkimberly vaughn\n12 / 10 / 99 02 : 54 pm\nto : lauri a allen / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect\nsubject : meter 7268 nov allocation\nlauri . . i have put this on strangas gas until i can get a contract from\ndaren .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 12 / 10 / 99 01 : 52\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n12 / 09 / 99 01 : 20 pm\nto : kimberly vaughn / hou / ect @ ect , anita luong / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , mary m smith / hou / ect @ ect\nsubject : meter 7268 nov allocation\nkim / anita -\na volume of 7247 mm shows to have been allocated to the reliant 201 contract\nfor november . there was no nomination for reliant at this point in november\nand , therefore , there should be no volume allocated to their contract .\nplease make sure these volumes are moved off the reliant contract prior to\nnovember close .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.379+0000", "entityId": 1491, "properties": {"text": "Subject: mcmullen gas for 11 / 99\njackie ,\nsince the inlet to 3 river plant is shut in on 10 / 19 / 99 ( the last day of\nflow ) :\nat what meter is the mcmullen gas being diverted to ?\nat what meter is hpl buying the residue gas ? ( this is the gas from teco ,\nvastar , vintage , tejones , and swift )\ni still see active deals at meter 3405 in path manager for teco , vastar ,\nvintage , tejones , and swift\ni also see gas scheduled in pops at meter 3404 and 3405 .\nplease advice . we need to resolve this as soon as possible so settlement\ncan send out payments .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.384+0000", "entityId": 1492, "properties": {"text": "Subject: meter 1517 - jan 1999\ngeorge ,\ni need the following done :\njan 13\nzero out 012 - 27049 - 02 - 001 receipt package id 2666\nallocate flow of 149 to 012 - 64610 - 02 - 055 deliv package id 392\njan 26\nzero out 012 - 27049 - 02 - 001 receipt package id 3011\nzero out 012 - 64610 - 02 - 055 deliv package id 392\nthese were buybacks that were incorrectly nominated to transport contracts\n( ect 201 receipt )\nlet me know when this is done\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.389+0000", "entityId": 1493, "properties": {"text": "Subject: duns number changes\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary l payne / hou / ect on 12 / 14 / 99 02 : 35 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : antoine v pierre 12 / 14 / 99 02 : 34 pm\nto : tommy j yanowski / hou / ect @ ect , kathryn bussell / hou / ect @ ect , gary l\npayne / hou / ect @ ect , diane e niestrath / hou / ect @ ect , romeo d ' souza / hou / ect @ ect ,\nmichael eiben / hou / ect @ ect , clem cernosek / hou / ect @ ect , scotty\ngilbert / hou / ect @ ect , dave nommensen / hou / ect @ ect , david rohan / hou / ect @ ect ,\nkevin heal / cal / ect @ ect , richard pinion / hou / ect @ ect\ncc : mary g gosnell / hou / ect @ ect , jason moore / hou / ect @ ect , samuel\nschott / hou / ect @ ect , bernice rodriguez / hou / ect @ ect\nsubject : duns number changes\ni will be making these changes at 11 : 00 am on wednesday december 15 .\nif you do not agree or have a problem with the dnb number change please\nnotify me , otherwise i will make the change as scheduled .\ndunns number change :\ncounterparty cp id number\nfrom to\ncinergy resources inc . 62163 869279893 928976257\nenergy dynamics management , inc . 69545 825854664 088889774\nsouth jersey resources group llc 52109 789118270 036474336\ntransalta energy marketing ( us ) inc . 62413 252050406 255326837\nphiladelphia gas works 33282 148415904 146907159\nthanks ,\nrennie\n3 - 7578", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.394+0000", "entityId": 1494, "properties": {"text": "Subject: king ranch\nthere are two fields of gas that i am having difficulty with in the unify\nsystem .\n1 . cage ranch - since there is no processing agreement that accomodates this\ngas on king ranch , it is my understanding hpl is selling the liquids and\nking ranch is re - delivering to stratton . it is also my understanding that\nthere is a . 05 cent fee\nto deliver this gas . we need a method to accomodate the volume flow on hpl\nat meter 415 and 9643 . this gas\nwill not be reflected on trans . usage ticket # 123395 and # 95394 since it is\nnot being nominated from a processing agreement . we either , need to input\na point nom ( on hpl or krgp ) at these meters to match the nom at meter 9610 ,\nor a deal for purchase and sale ( if king ranch is taking title to the gas )\nneeds to be input into sitara at these meters with the appropriate rate . i\nhave currently input a point nom on krgp to accomodate this flow , so we can\ndivert some of this gas to the current interstate sales that are being made .\n2 . forest oil - there is a processing agreement that will accomodate flow\nfrom the meter ( 6396 ) into king ranch . it is my\nunderstanding that this agreement was originally setup until texaco had\ntheir own processing agreement . i need confirmation that the gas from this\nmeter should be nominated on contract # ( 96006681 ) and that this agreement\nshould have been reassigned to hplc . ( it is currently still under hplr ) .\nif this gas is not nominated on the above transport agreement , then once\nagain we need to accomodate the flow volume on the hpl pipe with either a\npoint nom or a sitara deal at meters 415 and 9643 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.399+0000", "entityId": 1495, "properties": {"text": "Subject: re : entex transistion\nthanks so much for the memo . i would like to reiterate my support on two key\nissues :\n1 ) . thu - best of luck on this new assignment . howard has worked hard and\ndone a great job ! please don ' t be shy on asking questions . entex is\ncritical to the texas business , and it is critical to our team that we are\ntimely and accurate .\n2 ) . rita : thanks for setting up the account team . communication is\ncritical to our success , and i encourage you all to keep each other informed\nat all times . the p & l impact to our business can be significant .\nadditionally , this is high profile , so we want to assure top quality .\nthanks to all of you for all of your efforts . let me know if there is\nanything i can do to help provide any additional support .\nrita wynne\n12 / 14 / 99 02 : 38 : 45 pm\nto : janet h wallis / hou / ect @ ect , ami chokshi / corp / enron @ enron , howard b\ncamp / hou / ect @ ect , thu nguyen / hou / ect @ ect , kyle r lilly / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect , george grant / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , kathryn cordes / hou / ect @ ect , rita\nwynne / hou / ect , lisa csikos / hou / ect @ ect , brenda f herod / hou / ect @ ect , pamela\nchambers / corp / enron @ enron\nsubject : entex transistion\nthe purpose of the email is to recap the kickoff meeting held on yesterday\nwith members from commercial and volume managment concernig the entex account :\neffective january 2000 , thu nguyen ( x 37159 ) in the volume managment group ,\nwill take over the responsibility of allocating the entex contracts . howard\nand thu began some training this month and will continue to transition the\naccount over the next few months . entex will be thu ' s primary account\nespecially during these first few months as she learns the allocations\nprocess and the contracts .\nhoward will continue with his lead responsibilites within the group and be\navailable for questions or as a backup , if necessary ( thanks howard for all\nyour hard work on the account this year ! ) .\nin the initial phases of this transistion , i would like to organize an entex\n\" account \" team . the team ( members from front office to back office ) would\nmeet at some point in the month to discuss any issues relating to the\nscheduling , allocations , settlements , contracts , deals , etc . this hopefully\nwill give each of you a chance to not only identify and resolve issues before\nthe finalization process , but to learn from each other relative to your\nrespective areas and allow the newcomers to get up to speed on the account as\nwell . i would encourage everyone to attend these meetings initially as i\nbelieve this is a critical part to the success of the entex account .\ni will have my assistant to coordinate the initial meeting for early 1 / 2000 .\nif anyone has any questions or concerns , please feel free to call me or stop\nby . thanks in advance for everyone ' s cooperation . . . . . . . . . . .\njulie - please add thu to the confirmations distributions list", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.404+0000", "entityId": 1496, "properties": {"text": "Subject: entex transistion\nthe purpose of the email is to recap the kickoff meeting held on yesterday\nwith members from commercial and volume managment concernig the entex account :\neffective january 2000 , thu nguyen ( x 37159 ) in the volume managment group ,\nwill take over the responsibility of allocating the entex contracts . howard\nand thu began some training this month and will continue to transition the\naccount over the next few months . entex will be thu ' s primary account\nespecially during these first few months as she learns the allocations\nprocess and the contracts .\nhoward will continue with his lead responsibilites within the group and be\navailable for questions or as a backup , if necessary ( thanks howard for all\nyour hard work on the account this year ! ) .\nin the initial phases of this transistion , i would like to organize an entex\n\" account \" team . the team ( members from front office to back office ) would\nmeet at some point in the month to discuss any issues relating to the\nscheduling , allocations , settlements , contracts , deals , etc . this hopefully\nwill give each of you a chance to not only identify and resolve issues before\nthe finalization process , but to learn from each other relative to your\nrespective areas and allow the newcomers to get up to speed on the account as\nwell . i would encourage everyone to attend these meetings initially as i\nbelieve this is a critical part to the success of the entex account .\ni will have my assistant to coordinate the initial meeting for early 1 / 2000 .\nif anyone has any questions or concerns , please feel free to call me or stop\nby . thanks in advance for everyone ' s cooperation . . . . . . . . . . .\njulie - please add thu to the confirmations distributions list", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.409+0000", "entityId": 1497, "properties": {"text": "Subject: lst rev dec . 1999 josey ranch nom\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 12 / 15 / 99 08 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 12 / 14 / 99 05 : 11 : 06 pm\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , kevin mclarney ,\n\" taylor vance ( e - mail ) \"\nsubject : lst rev dec . 1999 josey ranch nom\nsusan : as we discussed , this change was missed but was discussed with you\nlast week . i apologize for the omission . i am checking with my field\npersonnel and anticipate a further reduction ( due to well production\ndecreases ) effective 12 / 15 which i will send under a separate email for an\n\" intra - day \" change wednesday .\nhere ' s revised december 1999 ( effective 12 / 9 / 99 ) setup for\njosey : ( using 1 . 081 btu / mcf )\n* gas deliveries into hpl\n12 , 300 mmbtu / d for kri ( net reduction of\n1 , 000 mmbtu / d )\n12 , 300 mmbtu / d into hpl\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.413+0000", "entityId": 1498, "properties": {"text": "Subject: 2 nd rev dec . 1999 josey ranch nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 12 / 15 / 99 08 : 41\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 12 / 15 / 99 08 : 28 : 08 am\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , kevin mclarney ,\n\" ' taylor vance ( e - mail ) ' \"\nsubject : 2 nd rev dec . 1999 josey ranch nom\nhere ' s revised december 1999 ( effective 12 / 15 / 99 ) setup for\njosey : ( using 1 . 081 btu / mcf )\n* gas deliveries into hpl\n9 , 300 mmbtu / d for kri ( net reduction of\n3 , 000 mmbtu / d )\n9 , 300 mmbtu / d into hpl\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.418+0000", "entityId": 1499, "properties": {"text": "Subject: unify close schedule\nthe following is the close schedule for this coming month ( year - end . ) please\nkeep in the mind the following key times . . . .\nunify to sitara bridge back 1 : 45 p . m . thursday , dec 30 th ( all errors must be\nclear by this time )\nmass draft at 6 p . m . thursday evening , dec 30 th .\naccrual process begins friday morning , dec 31 st at 6 : 30 a . m . ( if your group\nimpacts the accrual , please ensure that the necessary people are available\nfor support if needed , as this is an enron holiday . )\nplease feel free to contact me should you have any questions .\nthank you , melissa x 35615", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.425+0000", "entityId": 1500, "properties": {"text": "Subject: meter 1431 - nov 1999\naimee ,\nsitara deal 92943 for meter 1431 has expired on oct 31 , 1999 . settlements\nis unable to draft an invoice for this deal . this deal either needs to be\nextended or a new deal needs to be set up . please let me know when this is\nresolved . we need it resolved by friday , dec 17 .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.429+0000", "entityId": 1501, "properties": {"text": "Subject: meter 1431 - nov 1999\ndaren -\ncould you please resolve this issue for howard ? i will be out of the office\nthe next two days .\nwhen this is done , please let george know . thanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 12 / 15 / 99 01 : 27 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nhoward b camp\n12 / 15 / 99 01 : 01 pm\nto : aimee lannou / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , mary m\nsmith / hou / ect @ ect\nsubject : meter 1431 - nov 1999\naimee ,\nsitara deal 92943 for meter 1431 has expired on oct 31 , 1999 . settlements\nis unable to draft an invoice for this deal . this deal either needs to be\nextended or a new deal needs to be set up . please let me know when this is\nresolved . we need it resolved by friday , dec 17 .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.434+0000", "entityId": 1502, "properties": {"text": "Subject: y 2 k - texas log\nname home pager\ngeorge grant 281 - 282 - 9084 713 - 764 - 5128\ncharlotte hawkins 281 - 655 - 0952 713 - 506 - 4006\naimee lannou 713 - 594 - 6562 713 - 698 - 7722\nrobert lloyd 281 - 847 - 2808 713 - 698 - 5446\nstella morris 281 - 448 - 9067 713 - 200 - 8376\nsusan trevino 713 - 688 - 6186 713 - 200 - 8368\nkim vaughn 281 - 586 - 0910 713 - 761 - 8153\njackie young 713 - 528 - 4562 713 - 990 - 6400\ncarlos rodriguez 281 - 344 - 0991 713 - 761 - 2722\nmandy allen 281 - 970 - 6561 713 - 990 - 8332", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.442+0000", "entityId": 1503, "properties": {"text": "Subject: re : lyondell citgo\nmy latest understanding is the buyback will be in place through 12 / 31 / 99 .\na new deal for 15 , 000 / day begins 1 / 1 / 00 and currently has no buyback\nprovision .\nken\nhoward b camp\n12 / 16 / 99 12 : 27 pm\nto : gary w lamphier / hou / ect @ ect\ncc : kenneth seaman / hou / ect @ ect , kristen j hanson / hou / ect @ ect , tina\nvaladez / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : lyondell citgo\ngary ,\ni have been notified that there is a possibility that the buyback was not\neffective for lyondell citgo . could you please inform me via cc mail what\nthe status of the buyback is once you have reviewed it .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.446+0000", "entityId": 1504, "properties": {"text": "Subject: hpl fuel gas buy - back for december 1999\nfyi :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gregg lenart / hou / ect on 12 / 16 / 99 02 : 02 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : sally shuler @ enron 12 / 16 / 99 01 : 55 pm\nto : gregg lenart / hou / ect @ ect\ncc :\nsubject : hpl fuel gas buy - back for december 1999\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sally shuler / gpgfin / enron on 12 / 16 / 99\n02 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael mitcham\n12 / 16 / 99 01 : 45 pm\nto : james prentice / gpgfin / enron @ enron , kerry roper / gpgfin / enron @ enron , sally\nshuler / gpgfin / enron @ enron , mark diedrich / gpgfin / enron @ enron , paul\nfox / ecf / enron @ enron\ncc :\nsubject : hpl fuel gas buy - back for december 1999\negp fuels fuels co . has sold back 7 , 000 mmbtu / day starting 12 / 17 through\n12 / 31 to hpl at $ 2 . 50 mmbtu .\nif anyone has any questions , please let me know .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.451+0000", "entityId": 1505, "properties": {"text": "Subject: ua 4 - meter 1441 for 11 / 97 - falfurrias\ndaren - i need your help in resolving this issue . there wasn ' t any deal in\noss for the above reference meter , nor could i find anything in cpr . the\ncontract shows 089 - 41500 - 102 representing a sale in the amount of 9448 .\nthanks , stella", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.456+0000", "entityId": 1506, "properties": {"text": "Subject: ua 4 for meter 8608 - 6 / 98 - deal 96731\ndaren - deal 96731 is not in cpr for 6 / 98 or oss . please enter deal for\nsale on contract 078 - 15631 - 102 for 17 , 462 mmbtu .\nthanks , stella", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.461+0000", "entityId": 1507, "properties": {"text": "Subject: january spot tickets\ndaren ,\nhplc is purchasing gas from the following list of producers . this\nproduction is currently being purchased on a spot basis and deal tickets\nshould be entered into sitara for the follow :\ncounterparty meter mmbtu / d price\nengage energy us , lp 5839 600 100 % less $ 0 . 18\nengage energy us , lp 5848 500 100 % less $ 0 . 18\nengage energy us , lp 5923 700 100 % less $ 0 . 18\nengage energy us , lp 6801 1 , 100 100 % less $ 0 . 18\ngasper rice resources , ltd . 9810 1 100 % less $ 0 . 11\nprize resources 4028 1 , 300 100 % less $ 0 . 20\nprize resources 4965 200 100 % less $ 0 . 35\nprize resources 5121 800 100 % less $ 0 . 11\nprize resources 6523 40 100 % less $ 0 . 35\nswift energy 2630 20 90 % less $ 0 . 258\nwhiting petroleum 6523 500 ? ? ?\nadditionally , i asked carlos to search sitara for what would be essentially\nbe a spot ticket for the incremental volumes delivered to meter 9610 ( cage\nranch ) for the production month of november . i ' ve received executed paper\nfrom coastal documenting a purchase price of 100 % of gas daily less a gpm\nsliding scale . please confirm whether or not a sitara ticket has been\ngenerated . if not , please use this e - mail as a request to do so .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.465+0000", "entityId": 1508, "properties": {"text": "Subject: pennzenergy property details\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 17 / 99 04 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 12 / 14 / 99 10 : 56 : 01 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : pennzenergy property details\nami , attached is some more details on the devon south texas properties . let\nme\nknow if you have any questions .\ndavid\n- devon stx . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.470+0000", "entityId": 1509, "properties": {"text": "Subject: miscellaneous\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 17 / 99 03 : 46\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 12 / 17 / 99 03 : 34 : 44 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : miscellaneous\nsorry i ' m just now getting back to you . here are some answers to your\nquestions .\nwaskom is a field in east texas ( harrison county ) where we purchase gas from\npennzenergy at the bryson c . p . and jeter # 2 wells . the gas is termed up to\nnew\nwaskom gas gathering ( nwgg ) through june 2001 ( the term of the pennzenergy\npurchase ) . we then buy the gas back from nwgg into our tetco east texas pool\n. . . also termed up through 6 / 01 .\nvirginia field used to be associated with ngpl , but several years ago\npennzenergy worked out a processing arrangement with corpus christi gas\ngathering , so the gas is now termed up with ccgm through 6 / 01 . . . priced off\nof\nthe houston ship channel .\njennings ranch used to flow into ngpl through a gathering line , but a couple\nof\nyears ago ngpl sold that line to midcon texas , so we now handle it as another\nmidcon texas property . sometimes we sell it at the meter to midcon texas\n( kn ) ,\nand sometimes we ship it through midcon to our ngpl south texas pool .\ncarthage : altra picks up their gas in their cartwheel agreement . the\nagreement we nominate on is also a cartwheel agreement . it is not much\ndifferent than a hub agreement , except it allows title tracking . tgt on the\nwhiteboard refers to texas gas . . . east ohio takes their gas into texas gas on\na couple of different transport contracts .\nlet me know if you have more questions .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.474+0000", "entityId": 1510, "properties": {"text": "Subject: re : purge of old contract _ event _ status\nfyi - what do you all think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 12 / 20 / 99 08 : 19\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : dave nommensen on 12 / 17 / 99 05 : 29 pm\nto : scotty gilbert / hou / ect @ ect\ncc : george smith / hou / ect @ ect , edward terry / hou / ect @ ect , katherine l\nkelly / hou / ect @ ect , bryce baxter / hou / ect @ ect , randall l gay / hou / ect @ ect ,\nbrenda f herod / hou / ect @ ect , richard pinion / hou / ect @ ect\nsubject : re : purge of old contract _ event _ status\njust to clarify , its not the relative age of the production date , but the age\nof the event itself .\nd . n .\nto : george smith , edward terry / hou / ect @ ect , katherine l kelly / hou / ect @ ect ,\nbryce baxter / hou / ect @ ect , randall l gay / hou / ect @ ect , brenda f\nherod / hou / ect @ ect\ncc : richard pinion / hou / ect @ ect , dave nommensen / hou / ect @ ect\nsubject : re : purge of old contract _ event _ status\ndo any of you see a problem with limiting this to the current month or\ncurrent month + 1\nneed to know soon\nscotty\nfrom : dave nommensen 12 / 17 / 99 03 : 25 pm\nto : scotty gilbert / hou / ect @ ect , richard pinion / hou / ect @ ect\ncc : trisha luong / hou / ect @ ect , benedicta tung / hou / ect @ ect , diane e\nniestrath / hou / ect @ ect , dave mcmullan / hou / ect @ ect\nsubject : purge of old contract _ event _ status\nscotty / richard ,\nour dbas would like to see what we can do to reduce the qty of rows in\ncontract _ event _ status . we have over 1 gig of data in that table . i would\nlike to suggest we have a nightly or weekly or monthly process to delete any\nrow with a last _ mod _ date over a month ( or two ) old . so if someone balances\nfebruary 1999 this month , we will keep it around for a month ( or two ) .\ndoes any one else have a desire to keep this data for a shorter / longer period\nof time ?\nthis is not an audit table . this is just a \" log \" every nom / track / balance / edi\nsend / fax send / sched qty / quick response since the beginning of time .\nd . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.479+0000", "entityId": 1511, "properties": {"text": "Subject: out on vacation\nfyi ,\ni will be out of the office ( actually out of the country ) starting from\n22 nd of dec 1999 through the 20 th of jan 2000 . i will be back in the\noffice on the 21 st of jan 2000 .\nin my absence please contact the following persons for any pops\nsupport questions / problems :\nchristine pham ext 34202\nshawn macphail ext 31837\npops support pager : 713 - 796 - 4149 ( pages oncall personell )\npops support cellular : 713 - 562 - 2458 ( oncall person carries this cell phone )\nhave a great holiday season ,\nromeo d ' souza", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.484+0000", "entityId": 1512, "properties": {"text": "Subject: re : meter 1428 oct 99 - beaumont methanol\ni ' m sorry , did we discuss bmc ? ? ? .\nlee can confirm the accuracy of this , but bmc bought 20 , 000 from us and\nintended no swing and no buyback . brandywine ( dorcheus ) controlled the meter ,\ntherefore it is their responsibility to make up the overs and unders . i\nbelieve a deal is in place with brandywine to cover that very issue for\nnovember . if not please let me know .\nlee , if this is not your understanding for nov . business please let us all\nknow .\nthanks\nken\nhoward b camp\n12 / 20 / 99 07 : 36 pm\nto : lee l papayoti / hou / ect @ ect\ncc : thu nguyen / hou / ect @ ect , kenneth seaman / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , kristen j hanson / hou / ect @ ect , stella l morris / hou / ect @ ect ,\njulie meyers / hou / ect @ ect\nsubject : re : meter 1428 oct 99 - beaumont methanol\nlee ,\ni need you to answer a few questions to resolve this issue .\nfirst , you show a deal volume of 20 , 000 on nov . 7 and the pipeline confirmed\nthis volume . is this the volume you agreed to sell beaumont methanol ? this\nvolume is in agreement what the deal ticket says , the volume confirmed by\nhpl , and dorcheus ' s volume .\nsecond , the buyback issue is that a buyback is set up until june 2000 per\njulie meyers notes she sends out every month ( last note sent dec 3 and you\nare on distribution list ) . brandywine has nothing to do with this issue . it\nis an issue between hpl and beaumont methanol .\ndo we have an active buyback in place and how do you decide to use the\nbuyback ?\nthis is a commercial issue that i need further clarification from you if you\nhave a buyback in place or not . if not , please notify julie and note on the\ndeal ticket that this buyback is no longer effective .\nif it is still active , please contact chyral and resolve .\nlet me know the final resolution .\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 12 / 20 / 99 07 : 15\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen 12 / 20 / 99 03 : 38 pm\nto : howard b camp / hou / ect @ ect\ncc :\nsubject : re : meter 1428 oct 99 - beaumont methanol\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu nguyen / hou / ect on 12 / 20 / 99 03 : 36 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 12 / 20 / 99 02 : 01 pm\nto : thu nguyen / hou / ect @ ect\ncc : stella l morris / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : re : meter 1428 oct 99 - beaumont methanol\ni don ' t have all the data that you have in front of you and so am not in a\nposition to call bob dorcheus . . . . please call him directly at 281 - 293 - 1789\n. . . . this is an issue between brandywine and beaumont methanol . . . . please\nreference the fax from chyral hankins of beaumont methanol when you call bob\ndorcheus .\nalso , chryal tells me there is a problem on november 13 , 14 , and 15 . . . . our\ninvoice shows us buying gas back from beaumont methanol on those three days ,\nsomething that was a surprise to her . again , this an allocation issue\nbetween beaumont methanol and brandywine . . . . please call chyral at\n712 - 233 - 6558 before calling bob dorcheus .\nthanks\nfrom : thu nguyen 12 / 20 / 99 01 : 39 pm\nto : lee l papayoti / hou / ect @ ect\ncc : stella l morris / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : meter 1428 oct 99 - beaumont methanol\nlee ,\nstella tells me she does have a nom of 20 , 000 on day 7 . could you please get\nback with dorcheus and find out why there is a discrecpancy in the noms ?\nthanks\nthu\n3 - 7159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu nguyen / hou / ect on 12 / 20 / 99 01 : 33 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen 12 / 15 / 99 09 : 45 am\nto : stella l morris / hou / ect @ ect\ncc : lee l papayoti / hou / ect @ ect\nsubject : meter 1428 oct 99 - beaumont methanol\nstella ,\ncould you please verify your confirmations for beaumont methanol for oct 99\nprod . there is a discrepancy on day 7 , where we have confirmed nom of 20 , 000\nand they show zero . i will send you a fax copy from chyral hankins . please\nlet me know .\nthanks\nthu\n3 - 7159", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.489+0000", "entityId": 1513, "properties": {"text": "Subject: re : evergreen deals\nno that is a gtc firm that will expire when the contract does .\njulie\ndaren j farmer\n12 / 20 / 99 04 : 05 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : re : evergreen deals\nvintage should be 93730 .\njulie meyers\n12 / 20 / 99 02 : 27 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : evergreen deals\nlook at comments below .\njulie\ndaren j farmer\n12 / 20 / 99 01 : 43 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : evergreen deals\njulie ,\ni need to know if the following deals have evergreen provisions to roll into\njan 2000 .\ncokinos / 9676 95912 - no this is a gtc firm contract , deal expires with\ncontract\ncokinos / 6373 128952 - this is a gtc spot\ncoral / 4120 93883 - this is on a single transaction contract , we would need\nto check with the trader\nencina / 6392 93487 - yes , this is a committed reserve . i marked the\nevergreen flag .\nmidcoast / 5097 92956 - no , gtc lst purchaser , deal expires with contract .\nunited o & m / 5053 93728 - no , this deal was moved to the wellhead portfolio\nfor january , but the deal was terminated per legal .\nvintage / 2540 93750 - not the right deal number .\nthanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.494+0000", "entityId": 1514, "properties": {"text": "Subject: re : evergreen deals\nlook at comments below .\njulie\ndaren j farmer\n12 / 20 / 99 01 : 43 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : evergreen deals\njulie ,\ni need to know if the following deals have evergreen provisions to roll into\njan 2000 .\ncokinos / 9676 95912 - no this is a gtc firm contract , deal expires with\ncontract\ncokinos / 6373 128952 - this is a gtc spot\ncoral / 4120 93883 - this is on a single transaction contract , we would need\nto check with the trader\nencina / 6392 93487 - yes , this is a committed reserve . i marked the\nevergreen flag .\nmidcoast / 5097 92956 - no , gtc lst purchaser , deal expires with contract .\nunited o & m / 5053 93728 - no , this deal was moved to the wellhead portfolio\nfor january , but the deal was terminated per legal .\nvintage / 2540 93750 - not the right deal number .\nthanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.498+0000", "entityId": 1515, "properties": {"text": "Subject: potential well head - january 2000\ndarren :\nthe following is the potential new wellhead volume for january 2000 that i\nam currently aware of . this was not included in the production estimate\nnumber given by vance .\neog - hortense # 1 , polk county , new meter , 5 , 000 mmbtu / day\nbrayton operating - brayton - drushell # 1 , jackson county , possibly new\nmeter or meter 9720 , 3 , 000 mmbtu / day\nlet me know if you have any questions ,\nsusan x 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.504+0000", "entityId": 1516, "properties": {"text": "Subject: january production estimate\ndaren / carlos :\ni did not receive any more customer nominations . therefore , the attached\nfile should not have changed from what was provided to carlos last week .\nplease let me know if you have any questions ,\nthanks , scs x 33321\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 12 / 20 / 99 11 : 23 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n12 / 17 / 99 04 : 07 pm\nto : susan smith / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : january production estimate\nsusan ,\nplease see the attached file for january ' s production estimate . this is\npretty much the final estimate except that i have calls in to costilla &\nwalter ( superior ) . they both said that they would fax their nom once it was\ncomplete . hopefully this will be by monday . if not , all of the traders have\nreviewed the estimate and made their changes . i feel pretty confident that\nthis is a good number . however , if your should receive any noms before\nmonday at noon , please update the file and send it to carlos and daren .\nthanks and merry christmas to you and yours !\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.509+0000", "entityId": 1517, "properties": {"text": "Subject: re : pennzoil avails\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 20 / 99 03 : 05\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 12 / 20 / 99 02 : 46 : 42 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : pennzoil avails\nhere are the january 1999 devon south texas volumes . you may notice that some\nif them are not different from december ' s . . . but i reviewed their list and\nthese are the january numbers .\ndavid\n- devon stx . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.514+0000", "entityId": 1518, "properties": {"text": "Subject: valero 8018 and 1394\nit is my understanding the outages valero incurred at the above locations are\nforce majure situations during december and should not trigger the buyback\nfeature of the contract .\ngary , i have not seen any documentation of this from valero . please follow up\nwith your counterpart to secure the letter of notice or we will need to\nprocess the deal as if the buyback is active .\nthanks\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.519+0000", "entityId": 1519, "properties": {"text": "Subject: hl & p\ndaren . sorry i forgot to include you\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 12 / 21 / 99 01 : 33\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkimberly vaughn\n12 / 21 / 99 02 : 01 pm\nto : janet h wallis / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : hl & p\njanet . i am back from vacation . i have updated the hl & p flow mtd . jill\ntold me that on the 18 th , 19 th and 20 th the san jac . nom should be 29 , 209 .\nis this correct ? we ' ll need to change sitara . i have had scada problems at\nmeter 1401 . gas control has given me a verbal from the 14 th on . i will\nmonitor scada and adjust as necessary . let me know if there is anything else\nthat i can do . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.527+0000", "entityId": 1520, "properties": {"text": "Subject: phillips petroleum\ni wanted to update you on those phillips deals that the counterparty is\nsaying are booked wrong . i have left gary l . a voice mail , but i have a\nfeeling i won ' t be hearing from him . so , we might not be getting an answer\nuntil next week on these deals . the deals are ; 131054 & 131048 .\nif i hear from gary i ' ll let you know . i ' m hoping that they are ok .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.534+0000", "entityId": 1521, "properties": {"text": "Subject: re : meter # 1512\nno one resolved this . it still needs to be done . you , robert , and volume\nmanagement need to be involved for november . you and robert can take care of\ndec . if you need more input let me know .\nthanks\nken\nkimberly vaughn\n12 / 21 / 99 04 : 17 pm\nto : kenneth seaman / hou / ect @ ect\ncc :\nsubject : re : meter # 1512\ni was on vacation the week that sent this note out . i was just wondering if\nanyone helped you resolve this ? and if not do you need help ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 12 / 21 / 99 03 : 15\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenneth seaman 12 / 21 / 99 03 : 28 pm\nto : kimberly vaughn / hou / ect @ ect\ncc :\nsubject : re : meter # 1512\ni think i know what you are asking , but not for sure . what does do this while\ni was out mean ? ?\nkimberly vaughn\n12 / 21 / 99 02 : 12 pm\nto : kenneth seaman / hou / ect @ ect\ncc :\nsubject : meter # 1512\nken . did anyone do this while i was out ? do you need anthing ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 12 / 21 / 99 01 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenneth seaman 12 / 13 / 99 02 : 19 pm\nto : howard b camp / hou / ect @ ect , kimberly vaughn / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\ncc :\nsubject : meter # 1512\nin november volume was applied to deal # 92963 when , in fact , all volume\nshould be on 125066 . please effect this change asap and insure december is\nset up for 125066 . deal # 92963 should have been terminated at the end of\noctober .\nthanks\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.539+0000", "entityId": 1522, "properties": {"text": "Subject: 98 - 1052 ( pasadena plant phillips ) and 98 - 6614 ( lehrer \" c \" # 1 )\n98 - 1052 ( del . meter ) has flow for 11 / 10 / 99 and 11 / 11 / 99 . maxey walters\n( field guy ) informed me that he rec ' d a call from our mktg . people asking him\nto flow gas these two days due to problems ocurring at phillips on these two\ndays . can you please look into this for me and see if you can provide me\nwith a k # to assess this business to ? thanks .\n98 - 6614 ( rec . meter ) has flow for every day this month but no k . last month\nit was on the 215 k , sitara # 93035 . the start date on this deal is 7 / 1 / 99 and\nthe stop date is 11 / 30 / 99 . sitara # 130917 ' s start and stop date is 10 / 1 / 99\nand 1 / 31 / 00 but the expected vols for 12 / 99 are \" 0 \" . can you look into this\nand tell me is the expected vols . for 12 / 99 should be different ?\nthanks again .\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.544+0000", "entityId": 1523, "properties": {"text": "Subject: 01 / 00 natural gas nomination\nenron methanol company nominates the following requirements for the methanol\nplant for january 2000 :\n35 , 000 mmbtu per day\negpfc nominates the following requirements for the mtbe plant at morgan ' s\npoint for january 2000 :\n2 , 000 mmbtu per day from 01 / 01 / 00 through 01 / 04 / 00\n5 , 000 mmbtu per day from 01 / 05 / 00 through 01 / 08 / 00\n8 , 500 mmbtu per day from 01 / 09 / 00 through 01 / 31 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.549+0000", "entityId": 1524, "properties": {"text": "Subject: misc . questions\nhhere are some questions for david that i already sent . do you have anything\nelse ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 21 / 99 01 : 49\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 12 / 21 / 99 12 : 35 pm\nto : dscottl @ . com\ncc :\nsubject : misc . questions\nquestions :\n1 . at agua dulce , which pipe can the gp plant go into ? can it go into hpl ?\n2 . do you have nom forms for any plant nominations we may need ?\n3 . for gemc , is the tejas plant at thompsonville ? do you know how any of\nthose points tie into hpl ?\n4 . do you have avails for mops production ? the gas that is transported to\ntivoli - - what contract do you use ?\n5 . for kerr mcgee , do you have the entex contacts you speak with ?\n6 . is there a waskom nom form ? with whom do you speak over there ?\n7 . for the avails sheet you sent , the first row of column titles is blacked\nout . can you tell me what the row reads ?\n8 . what volumes will come from koch gathering into carthage for next month ?\nwe show conflicting numbers .\nthanks ,\nami\n713 / 853 - 9272\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 21 / 99 01 : 49\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 12 / 21 / 99 01 : 48 pm\nto : dscottl @ . com\ncc :\nsubject : more questions\n1 . at carthage , the deliveries to koch ? what is that 15000 on your\nwhiteboard for . who is it to ? are the volumes termed up ?\n2 . at midcon texas , you usually sell all the supply to its marketing\naffiliate , correct ? is so , is that gas termed up or do you sell it month to\nmonth ?\n3 . is the gas to entex off tomcat sold as base or swing ? don ' t they change\nthe volume occasionally ? has anadarko given you any avails for jan ?\nthanks ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.554+0000", "entityId": 1525, "properties": {"text": "Subject: kerr mcgee : tomcat\nhey joe ,\nhere ' s the response i got with regards to tomcat . i ' ve place another call\ninto david and let him know that the information we received included most\npoints except for tomcat . i ' ll keep you informed .\nwhat i know is that the gas is sourced at mi 587 and moved on km ' s firm\ncontract . for as long as ces remembers , they sell the gas to entex . entex\nchooses the pipe off which they take - - usually midcon - - also , hpl channel , or\ntejas . km is invoiced directly . volume is approx . 2395 . the deal with entex\nis written up monthly . km pays on a basket of indices . entex pays on the\nhighest index .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 21 / 99 09 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 12 / 21 / 99 09 : 18 : 12 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re :\nthe response i got from our risk desk was that your structuring group has\nalready been provided all of this information . . . so you probably need to\ncheck\nwith them . my guess would be tetco stx is where the tomcat gas belongs .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.560+0000", "entityId": 1526, "properties": {"text": "Subject: holiday on - call data\npipeline contact phone fax pager\nblack marlin blair lichentwalter 713 853 - 7367 713 646 - 3201 ( h )\n281 370 - 1866\ndebbie thompson 713 853 - 3144 713 646 - 3201\n( noms due today for 23 rd through 27 th )\nchannel jim tobacco 713 420 - 2159\ngas control 1 505 599 - 2333\n( open thursday . noms will be due through monday )\ncentana william spekels 713 627 - 6290 713 762 - 3450\ndonna spencer 713 627 - 6255\ngas control 1 888 204 - 1718\n( noms due today for 23 rd through 27 th )\nduke energy annette anderson 713 260 - 8603 713 949 - 3026\n( on call ) bob moseman 713 - 260 - 8698 ( thursday )\nopen tomorrow - noms will be due thru the 27 th )\nlonestar gary gafford 214 670 - 2674 214 875 - 3810\ngas control 214 875 - 2455 or 2456\n( noms due today , 23 rd thru 27 th )\nnorthern natural ben markey 853 - 7581 cell 713 446 - 9404 800 931 - 0398\n( on call ) charlie mosey 853 - 1520\ngas control 853 -\n( open thursday - noms due thru 27 th . )\neast trans - east texas\ntejas gas control 713 767 - 5366\npaula svehla 713 230 - 3569\nmickey chapman 713 230 - 3546\n( open thursday - noms due thru 27 th )\nmidcon ( y 2 k ) ken nachlinger 713 369 - 9284 713 369 - 9375 888 733 - 5954\n( on call ) steven 888 790 - 0255\n( y 2 k ) don 888 733 - 4602\ngas control 713 369 - 9200\n( noms due today , 23 rd thru 27 th )\nmoss bluff no current business", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.565+0000", "entityId": 1527, "properties": {"text": "Subject: new nat gas delivery location\npursuant to our recent confirmation i have drafted some suggested language\nfor the houston ship channel pooling point :\nabbreviation : hpl - hsc\nsort code : [ tbd ]\ndescription : the transaction is for delivery via the houston pipe line\ncompany to the houston ship channel , zone 10 .\nelsa and darren ; please approve or offer comments regarding the content of\ndescription .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.571+0000", "entityId": 1528, "properties": {"text": "Subject: out of the office\ni will be out of the office beginning thursday , 12 / 24 , returning on tuesday ,\n1 / 4 . in my absence , i have asked steve venturatos to be the point person for\ntexas operations .\ni realize that many of you will be working over the new year ' s week - end to\nensure a smooth transaction into the new year . in advance , i truly\nappreciate all of the efforts . additionally , i would like to be kept\ninformed on any critical issues , mainly so that i have no surprises when i\nreturn . therefore , i have provided numbers below where i can be reached . i\nwill leave it to your discretion as to whether you call me or leave me a\nvoice mail in the office . as you all know , i would rather be informed than\nsurprised !\npager 877 - 497 - 3757\ncellular 713 - 417 - 2995\nhome 970 - 920 - 2293 &\n970 - 920 - 2294\nthanks to each of you for your dedication . i hope each of you have a\nwonderful and safe holiday !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.576+0000", "entityId": 1529, "properties": {"text": "Subject: re : misc . questions\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 22 / 99 08 : 19\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 12 / 21 / 99 08 : 06 : 49 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : misc . questions\nquestions :\n1 . at agua dulce , which pipe can the gp plant go into ? can it go into hpl ?\n2 . do you have nom forms for any plant nominations we may need ?\n3 . for gemc , is the tejas plant at thompsonville ? do you know how any of\nthose points tie into hpl ?\n4 . do you have avails for mops production ? the gas that is transported to\ntivoli - - what contract do you use ?\n5 . for kerr mcgee , do you have the entex contacts you speak with ?\n6 . is there a waskom nom form ? with whom do you speak over there ?\n7 . for the avails sheet you sent , the first row of column titles is blacked\nout . can you tell me what the row reads ?\n8 . what volumes will come from koch gathering into carthage for next month ?\nwe show conflicting numbers .\nthanks ,\nami\n713 / 853 - 9272\nhere goes . . .\n1 . i know tennessee , hpl , and tejas are at the tailgate of the plant , and i\nsuspect midcon texas is there as well .\n2 . i ' ll fax you a copy of the nomination form that steve locke uses for agua\ndulce and carthage . . . those are the only ones in texas that we nominate .\n3 . the tejas plant as well as all of the other gulf energy receipt points\nfrom\npennzenergy are exclusively tejas / gulf energy points , and it takes transport\ncharges to move the gas through gulf energy to interconnects , such as\nthompsonville . the jennings plant does have a split connect with delhi , but\noperationally pennzenergy much prefers to flow into gulf energy ( lower\npressure\n= higher volumes ) .\n4 . mustang island 759 for january is again 1 , 903 mmbtu / d , which peoples will\npick up at the wellhead . mustang island 785 is 4 , 100 / d , which leaves 2 , 200 / d\navailable to sell assuming we continue to transport 1 , 895 / d to fgt / tivoli for\npeoples . our it agreement on nng is # 78581 to move gas from the wellhead to\nonshore .\n5 . the tomcat gas has been sold to entex into midcon texas for so long that i\ndon ' t think maria even talks to them anymore each month . tammi provides them\nwith the volume when she does the deal each month . but we can certainly\nprovide an entex contact if the gas is sold to them again in january .\n6 . there isn ' t a waskom nomination form . the trader for this gas , mike\nlandolt , talks to ben britten ( president of new waskom gas gathering and\nwaskom\ngas marketing ) .\n7 . you must be referring to the page of offshore avails that begins with\nsabine pass 13 . the 6 columns that appear blacked out read as follows : pvr ,\npvr , avail , dbq , dbq , and remainder .\n8 . the koch - gathered volumes behind the carthage plant for 1 / 00 are 12 , 443\nmmbtu / d .\ndavid\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 22 / 99 08 : 19\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 12 / 21 / 99 08 : 20 : 28 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : more questions\n1 . at carthage , the deliveries to koch ? what is that 15000 on your\nwhiteboard for . who is it to ? are the volumes termed up ?\n2 . at midcon texas , you usually sell all the supply to its marketing\naffiliate , correct ? is so , is that gas termed up or do you sell it month to\nmonth ?\n3 . is the gas to entex off tomcat sold as base or swing ? don ' t they change\nthe volume occasionally ? has anadarko given you any avails for jan ?\nround 2 :\n1 . the 15 , 000 @ carthage for koch is an estimate of what we anticipate we\nwill\nwant to sell into koch . . . and it shows up on the koch whiteboard as a supply\n( from carthage ) . during bidweek the traders will decide how much they\nactually\nwant to show going to koch , and how much will be labeled base and swing . mike\nlandolt has been our sole koch trader and he typically takes some carthage gas\ninto koch , but i wouldn ' t say a particular volume is termed - up .\n2 . other than very rarely shippling the jennings ranch volume over to ngpl ,\nwe ' ve always sold all of the midcon texas volumes to the affiliate . . .\ncurrently done one month at a time . john hymel has been the trader for these\nvolumes .\n3 . the entex sale @ tomcat has always been gas daily because that is the way\nkerr - mcgee prices the supply . . . and entex has taken all the swings . the\njanuary volume is 2 , 312 / d .\ndavid\np . s . i still don ' t know my schedule for wednesday . . . everyone who is being\nasked to work transition is meeting individually with management on wednesday\nand the schedules haven ' t been provided yet . as soon as i know more i ' ll let\nyou know , but i ' ll understand if you make other lunch arrangements .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.581+0000", "entityId": 1530, "properties": {"text": "Subject: 23 rd noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 23 / 99 10 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 12 / 22 / 99 11 : 32 : 52 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 23 rd noms\nhow could i ever be mad at someone so nice as you . . . . just real busy . . .\n( see attached file : hpldecl 999 . xls )\n- hpldecl 999 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.585+0000", "entityId": 1531, "properties": {"text": "Subject: re : best guess right now . . . . should go up but a little to soon to\nbe sure . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 23 / 99 10 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 12 / 22 / 99 02 : 31 : 09 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : best guess right now . . . . should go up but a little to soon to\nbe sure . . .\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.591+0000", "entityId": 1532, "properties": {"text": "Subject: revision\nhuntsville / woodlands / conroe 11500 by 8 days = 92 , 000\nbig ticket 120000 @ 4 days = 480 , 000\n50000 @ 4 days = 200 , 000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 23 / 99 09 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 12 / 23 / 99 08 : 27 am\nto : david baumbach / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc :\nsubject :\nentex increase rom :\nhuntsville / woodlands / conroe 11500 by 8 days = 92 , 000\nbig ticket 50000 by 8 days = 400 , 000\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.596+0000", "entityId": 1533, "properties": {"text": "Subject: entex increase rom :\nhuntsville / woodlands / conroe 11500 by 8 days = 92 , 000\nbig ticket 50000 by 8 days = 400 , 000\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.601+0000", "entityId": 1534, "properties": {"text": "Subject: re : counties / meter types for gemc and midcon tx\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 23 / 99 12 : 42\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfaye ellis @ ect\n12 / 23 / 99 12 : 37 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : counties / meter types for gemc and midcon tx\nfyi . . .\nthe online notification will go back to stacy , since she submitted the\nrequests , therefore i am sending you the following :\ngulf energy meters :\nmeter # facility type flow direction description\n19 - 1043 - 00 pool both e . mcfaddin\n29320 pool both tejas plant\n31 - 504 - 04 pool both trevino plant\n440 - 552 pool both garza plant\n440 - 557 pool both haynes plant\n440 - 559 pool both comitas south\n440 - 565 pdc receipt jennings 63 plant\nmidcon texas meters :\nmeter # facility type flow direction description\n446 pool both jennings ranch\n5553 pdc receipt greta / roc\n5576 gpo receipt hall plant\nfaye\nfrom : ami chokshi @ enron 12 / 23 / 99 11 : 34 am\nto : faye ellis / hou / ect @ ect\ncc :\nsubject : re : counties / meter types for gemc and midcon tx\ngulf energy counties\nall of the gulf energy meters are in zapata county .\nmidcon tx\nhall plant and jennings are in zapata county\ngreta / tom o ' connor is in refugio county", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.606+0000", "entityId": 1535, "properties": {"text": "Subject: jan net position - revised\n- - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 23 / 99 11 : 38 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 12 / 23 / 99 11 : 32 am\nto : daren j farmer / hou / ect @ ect , bryan hull / hou / ect @ ect , o ' neal d\nwinfree / hou / ect @ ect\ncc :\nsubject : jan net position", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.613+0000", "entityId": 1536, "properties": {"text": "Subject: mcmullen line maintenance\nfrom this mornings morning meeting , it is my understanding that the gas from\nmcmullen into humble ( then king ranch ) will ve lowered due to line pigging\nfor the next few days . please keep in mind that there are interstate sales\nout of king ranch . you may want to notify the traders that there will not be\nas much supply in king ranch to meet these sales .\ni have estimates for the sales and supply for the 27 th .\ntotal interstate sales out of the king ranch gas plant = 26 , 422 mmbtu\ntotal supply ( less pvr ) =\ncage ranch = 37 , 600\nforest oil = 3 , 696\nlaencantada = 767\nbig cowboy = 34 , 697\nthree rivers ( current ) = 18690\ntotal supply for sale on 27 th . = 95 , 450 mmbtu\nthese supply volumes are based on the supply deals in the unify system . if\nthere are variances operationally , then the sitara supply deals should be\nlowered appropriately .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.617+0000", "entityId": 1537, "properties": {"text": "Subject: hpl nominations for december 28 , 1999\n( see attached file : hpll 228 . xls )\n- hpll 228 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.626+0000", "entityId": 1538, "properties": {"text": "Subject: new nat gas delivery location\ned and elsa\nhere ' s is some suggested language , based upon our conversation . please\nreview and offer comments .\nfyi : all new trade components ( i . e . delivery location ) require the review of\nlegal , david forster and marcello romano for approval .\nthe transaction is for delivery of pool gas via the houston pipe line\ncompany , as scheduled by the counterparty , to either ( i ) houston ship channel\nzone 10 , meter # 7342 or ( ii ) houston ship channel zone 10 at any one of the\nfollowing points : brandywine ( meter # 1505 ) ; destec enerfin ( meter # 1563 ) ;\ndupont ( meter # 1019 ) ; equistar ( meter # 1373 ) ; ethyl ( albemarle ) ( meter #\n1188 ) ; exxon ( meter # 1031 ) ; georgia gulf corp . ( meter # 713 ) ; phibro energy\ninc . ( valero ref . ) ( meter # 1394 ) ; shell east ( meter # 1060 ) ; occidental\nbattleground ( meter # 1485 ) ; igs dodge street ( meter # 1508 ) ; millennium\npetro polymer ( meter # 1553 ) .\ndale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale neuner / hou / ect on 12 / 27 / 99 03 : 54 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndale neuner on 12 / 22 / 99 10 : 15 : 15 am\nto : elsa villarreal / hou / ect @ ect , daren j farmer / hou / ect @ ect , elizabeth l\nhernandez / hou / ect @ ect\ncc : jennifer deboisblanc denny / hou / ect @ ect , marcello romano / lon / ect @ ect ,\ndavid forster / lon / ect @ ect\nsubject : new nat gas delivery location\npursuant to our recent confirmation i have drafted some suggested language\nfor the houston ship channel pooling point :\nabbreviation : hpl - hsc\nsort code : [ tbd ]\ndescription : the transaction is for delivery via the houston pipe line\ncompany to the houston ship channel , zone 10 .\nelsa and darren ; please approve or offer comments regarding the content of\ndescription .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.634+0000", "entityId": 1539, "properties": {"text": "Subject: re : ua 4 - meter 1441 for 11 / 97 - falfurrias\nhoward - the above meter indicates a daily swing with no one in volume\nmanagement ' s initials in oss . i need some information for daren before it\ncan be determined if a deal should be set up to cover the 089 contract for\n11 / 97 forward .\ni ' ve done some research as follows :\n1 / 95 shows delivery on transport contract # 012 - 82269 - 02 - 002 ( southeastern\nmarketing co . as counterparty )\n1 / 96 thru 10 / 31 / 97 shows delivery on transport contract # 012 - 27182 - 02 - 001\n( esperanza marketing corp as counterparty ) .\n11 / 97 thru 12 / 97 shows delivery on 089 - 41500 - 102\n1 / 98 shows delivery on 089 - 41500 - 101\nno other transactions at this meter since 1 / 98 .\nsome questions i need answered are - why was volume allocated to transport\ncontracts through 10 / 31 / 97 and then started to be allocated to the 089\ncontract later ? are the transport contracts no longer valid to allocate to\nand is that the reason the 089 contract was used ? or should the transport\ncontract be allocated to instead of the 089 contract for 11 / 97 forward ? each\nitem indicates a delivered volume , so either a transport or sale is taking\nplace .\nall the information that is supplied on the ua 4 report is need a contract for\n9 , 448 mmbtu .\nsince the meter was assigned to someone else during this timeframe before it\nwas assigned to me , it ' s difficult to know why the 089 contract was ever used\nfor allocation and since there are no other records such as deal tickets in\ncpr or oss .\nneed help , stella\ndaren j farmer\n12 / 22 / 99 07 : 14 am\nto : stella l morris / hou / ect @ ect\ncc :\nsubject : re : ua 4 - meter 1441 for 11 / 97 - falfurrias\nwhat occurred at this point in prior months ? who was allocated the volume ?\nd\nfrom : stella l morris 12 / 16 / 99 06 : 04 pm\nto : daren j farmer / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : ua 4 - meter 1441 for 11 / 97 - falfurrias\ndaren - i need your help in resolving this issue . there wasn ' t any deal in\noss for the above reference meter , nor could i find anything in cpr . the\ncontract shows 089 - 41500 - 102 representing a sale in the amount of 9448 .\nthanks , stella", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.639+0000", "entityId": 1540, "properties": {"text": "Subject: unify down - unix team working on it\nthe unix server that unify production runs on ( proton ) went down this\nmorning . the unix team is working on it . i will let you know as soon as\nunify is available .\nd . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.643+0000", "entityId": 1541, "properties": {"text": "Subject: calpine january 2000 nomination\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.648+0000", "entityId": 1542, "properties": {"text": "Subject: jan noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 12 / 28 / 99 10 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 12 / 28 / 99 10 : 47 : 23 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : jan noms\n( see attached file : egmnom - jan . xls )\n- egmnom - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.653+0000", "entityId": 1543, "properties": {"text": "Subject: black marlin - meter 986782 for 8 / 98 - ua 4\naccording to measurement , there is flow of 7 , 394 in 8 / 98 , however , there is\nnothing to indicate this is gas that was received on hpl in oss . i checked\nmips and there is a measurement statement that supports the flow rate of\n7 , 394 mmbtu .\ndaren is there a deal in cpr which may not have fed over to oss ?\nthanks , stella", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.657+0000", "entityId": 1544, "properties": {"text": "Subject: revision - black marlin - meter 986782 for 8 / 98 - ua 4\nrevision - according to measurement , there is flow of 7 , 394 in 8 / 98 , however ,\nthere is nothing to indicate this is gas that was received on hpl in oss . i\nchecked mips and there is a measurement statement that supports the flow rate\nof 7 , 394 mmbtu .\ndaren is there a deal in cpr which may not have fed over to oss ? i checked\noss for the whole year of 1998 and there are no other deals in oss . it does\nseem strange that this is the only month of flow .\nthanks , stella", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.662+0000", "entityId": 1545, "properties": {"text": "Subject: y 2 k deal\ndetails for the deal to be entered on jan . 1 , 2000 :\nbuy / sell : buy\nctpty : aquila energy marketing corporation\nzone : agua dulce @ 0584\nvolume : 5 , 000 / d\npricing : hsc - 0 . 065\nperiod : 1 / 8 / 00 - 1 / 31 / 00\nthis deal will be the second part of sitara deal # 143974 .\nplease let me know if there are any questions or concerns .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.666+0000", "entityId": 1546, "properties": {"text": "Subject: new pooling point # 7342\nthe new pooling point will be handled by robert lloyd , with jackie young as\nhis backup .\nplease call either of them with any updates . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.671+0000", "entityId": 1547, "properties": {"text": "Subject: unify production back - eol deals highlighted\nthe proton machine is up and unify production is now available .\nfor being so patient , path manager will now highlight your eol deals in\nyellow .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.675+0000", "entityId": 1548, "properties": {"text": "Subject: missing txu lonestar and oasis paths\nstacey ,\nit looks like your missing paths revealed a quirk in our suppression of zero\npaths . there were 4 paths initially entered as zero , then changed to\nnon - zero on a later date . the system did not correctly determine that the\nzero path should no longer be suppressed .\nwe have fixed the 4 paths affected and have corrected the code so this won ' t\nhappen any more . below is a screen print of the nov 22 problem that is now\nfixed .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.680+0000", "entityId": 1549, "properties": {"text": "Subject: valero 8018 and 1394\ngary ,\nwhat is the status of this ?\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 12 / 29 / 99 10 : 06\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenneth seaman 12 / 21 / 99 01 : 02 pm\nto : gary w lamphier / hou / ect @ ect , howard b camp / hou / ect @ ect , joanie h\nngo / hou / ect @ ect , robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : valero 8018 and 1394\nit is my understanding the outages valero incurred at the above locations are\nforce majure situations during december and should not trigger the buyback\nfeature of the contract .\ngary , i have not seen any documentation of this from valero . please follow up\nwith your counterpart to secure the letter of notice or we will need to\nprocess the deal as if the buyback is active .\nthanks\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.685+0000", "entityId": 1550, "properties": {"text": "Subject: enron actuals for december 28 , 1999\nteco tap 60 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.689+0000", "entityId": 1551, "properties": {"text": "Subject: hpl nomination for december 30 , 1999\n( see attached file : hpll 230 . xls )\n- hpll 230 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.694+0000", "entityId": 1552, "properties": {"text": "Subject: meter 74 , december bridgeback error\ndaren :\ni have an error for transco bammel for that 20 . 0 / day on days 23 through 27 -\ndo you change the volumes as they are sent back ?\nthe volumes are :\n23 133\n24 20783\n25 20738\n26 20787\n27 20123\nthanks !\ncharlotte\nps i have to be clear by noon tomorrow . . . . . . . . . . . . . . . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.698+0000", "entityId": 1553, "properties": {"text": "Subject: hl & p flow\njanet . attached are the most recent numbers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.703+0000", "entityId": 1554, "properties": {"text": "Subject: koch three rivers , # 6722\naimee -\ngas control has some line work scheduled for 1 / 4 , 5 , 6 that will affect the\nreferenced point . dynegy has nom ' d 1800 at this point which i ' m assuming\nthey ' ll want baseload for january . the desk also appears to have some gas\nnom ' d out here ( approx 1200 mm ) . rather than cut these volumes , would you\ntry to negotiate with koch not to flow this gas during the outage , but to\nmake it up as soon as the outage is over ( they may be able to begin flow on\n1 / 6 ) ? please let me know as soon as possible .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.707+0000", "entityId": 1555, "properties": {"text": "Subject: producer shut - in list for victoria 18 \" line work\nthink he forgot you on this list ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 12 / 29 / 99 03 : 05\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 12 / 29 / 99 02 : 49 pm\nto : connie sutton / hou / ect @ ect , lauri a allen / hou / ect @ ect , pat\nclynes / corp / enron @ enron , melissa graves / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , james mckay / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , gary besancon / gco / enron @ enron , rodney\nrogers / gco / enron @ enron , shawna flynn / hou / ect @ ect\nsubject : producer shut - in list for victoria 18 \" line work\nhpl will be completing tie - ins to replace the guadalupe river crossing on the\nswinney to victoria 18 \" . the following meters will be shut in at\napproximately 8 : 00 am on january 4 , 2000 and be brought back on - line sometime\nduring the evening of january 6 , 2000 :\n986833 marks # 1 common point\n989730 swickheimer\n984056 cologne\n985754 battle fld\n985982 coletto creek\n986063 mokeen\n986140 swickheimer\n989620 duty # 1\n984046 apache\n985547 freeman\n989664 talber graham\n986757 sheridan energy\n985972 hughes & hughes\n986668 pentex\n985541 esperanza\n984724 new horizons\n984959 dynamic\n985360 bnp petroleum\n984143 hilcorp\n984286 spindletop\n985430 southern gas\n989679 strand energy\n989663 edge petroleum\n985801 vintage\n989629 petro corporation\n986722 duke three rivers gas plant\n989736 c & e berclair\n989813 c & d lucas\n986725 southern resources\n986015 mider\n985192 delhi sarco\nif you have any question please feel free to call me at 36449 .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.712+0000", "entityId": 1556, "properties": {"text": "Subject: producer shut - in list for victoria 18 \" line work\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 12 / 29 / 99 03 : 15 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 12 / 29 / 99 03 : 12 pm\nto : george weissman / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , mary jo johnson / hou / ect @ ect , gary\nbryan / hou / ect @ ect , jill t zivley / hou / ect @ ect\nsubject : producer shut - in list for victoria 18 \" line work\ngeorge ,\ngary called me about this shut in situation a few minutes ago , specifically\nregarding meter 6722 . this meter is at the tailgate of three rivers ,\ntherefore , an hpl field employee will not be able to contact the producer\n( they probably have no idea where the gas is coming from that goes through\nthis meter ) .\ngary suggested that the deal maker contact these producers verbally , and then\nconnie sutton will follow up with written notice . per our discussion , since\nmary jo and gary are out this afternoon , i am forwarding this message to you .\nthe concerned contracts are : cody texas , lp , 012 - 64365 - 101 , 96018049 and\nsamson lone star , 012 - 77555 - 105 , 96016761 .\nlet me know if there is further information that i can provide .\nthank you ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 12 / 29 / 99 02 : 50\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 12 / 29 / 99 02 : 49 pm\nto : connie sutton / hou / ect @ ect , lauri a allen / hou / ect @ ect , pat\nclynes / corp / enron @ enron , melissa graves / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , james mckay / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , gary besancon / gco / enron @ enron , rodney\nrogers / gco / enron @ enron , shawna flynn / hou / ect @ ect\nsubject : producer shut - in list for victoria 18 \" line work\nhpl will be completing tie - ins to replace the guadalupe river crossing on the\nswinney to victoria 18 \" . the following meters will be shut in at\napproximately 8 : 00 am on january 4 , 2000 and be brought back on - line sometime\nduring the evening of january 6 , 2000 :\n986833 marks # 1 common point\n989730 swickheimer\n984056 cologne\n985754 battle fld\n985982 coletto creek\n986063 mokeen\n986140 swickheimer\n989620 duty # 1\n984046 apache\n985547 freeman\n989664 talber graham\n986757 sheridan energy\n985972 hughes & hughes\n986668 pentex\n985541 esperanza\n984724 new horizons\n984959 dynamic\n985360 bnp petroleum\n984143 hilcorp\n984286 spindletop\n985430 southern gas\n989679 strand energy\n989663 edge petroleum\n985801 vintage\n989629 petro corporation\n986722 duke three rivers gas plant\n989736 c & e berclair\n989813 c & d lucas\n986725 southern resources\n986015 mider\n985192 delhi sarco\nif you have any question please feel free to call me at 36449 .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.716+0000", "entityId": 1557, "properties": {"text": "Subject: re : koch three rivers , # 6722\naimee ,\nplease let us know as soon as possible . thanks , pat\nlauri a allen @ ect\n12 / 29 / 99 02 : 50 pm\nto : aimee lannou / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : koch three rivers , # 6722\naimee -\ngas control has some line work scheduled for 1 / 4 , 5 , 6 that will affect the\nreferenced point . dynegy has nom ' d 1800 at this point which i ' m assuming\nthey ' ll want baseload for january . the desk also appears to have some gas\nnom ' d out here ( approx 1200 mm ) . rather than cut these volumes , would you\ntry to negotiate with koch not to flow this gas during the outage , but to\nmake it up as soon as the outage is over ( they may be able to begin flow on\n1 / 6 ) ? please let me know as soon as possible .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.721+0000", "entityId": 1558, "properties": {"text": "Subject: meter 73 - dec 1999\nami ,\nwe need to make sure that there is a nom ( even if 0 with always send ) for\nconroe ( sitara deal 70222 ) for every month . entex has volume there every\nmonth , but in nov there was no nom set up .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.727+0000", "entityId": 1559, "properties": {"text": "Subject: transco bammel , meter 74 , december 29\ndaren , elsa :\nthe 12 , 200 that was being delivered into transco off of the 216 for txu was\ncut a / o pipeline capacity constraints . transco gas control left me a message\nlate yesterday evening - i picked it up this morning .\nquestions ? ? just call .\ncharlotte", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.735+0000", "entityId": 1560, "properties": {"text": "Subject: koch three rivers , # 6722\ni spoke with larry zamit this morning regarding the outage january 1 through\n6 . he agreed to hold the gas for us and batch it throughout the rest of\njanuary . at this point we have 3 , 007 nominated for 1 / 1 / 00 and that is what\nhe has agreed to hold .\nquestions ? ? give me a call .\ncharlotte / aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.741+0000", "entityId": 1561, "properties": {"text": "Subject: united oil & minerals , inc .\nplease establish a spot ticket for united oil & minerals , inc . at meter 5053\nfor january . the ticket will be priced at 100 % if / hsc less $ 0 . 14 and provide\nfor 1 , 400 mmbtu / d . this spot deal will be executed under globla contract\n96002441 .\nplease call if i can be of any additional assistance .\nthanks !\ndonald\nx 37008", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.746+0000", "entityId": 1562, "properties": {"text": "Subject: thanks for january 1 , 2000\ni wanted to extend my thanks in advance to all of you who will join me in the\noffice on january 1 , 2000 . i appreciate your willingness to devote part of\nyour holiday weekend to the continuing success story at enron .\nas a company , enron has spent much time and effort to ensure that business\nwill continue smoothly as we move into the year 2000 . ken walther , in\nworking with many of you , has done an excellent job of preparing a work plan\nfor january 1 . your work on the first will be the final step in this\nprocess . your efforts that day will allow all ena employees to return to the\noffice on january 4 th with confidence in our ability to continue business as\nusual .\ni wish each one of you a happy new year . i continually feel privileged to\nwork with this dedicated and talented group of employees . i look forward to\nall that we will accomplish in 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.750+0000", "entityId": 1563, "properties": {"text": "Subject: koch three rivers , # 6722\nthe outage is scheduled for 1 / 4 / 00 to 1 / 6 / 00 . it will not effect 1 / 1 / 00\nthrought 1 / 3 / 00 . there is no need for duke to hold gas back until 1 / 4 / 00 .\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 12 / 30 / 99 10 : 47 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins 12 / 30 / 99 09 : 07 am\nto : pat clynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , elsa villarreal / hou / ect @ ect , edward d gottlob / hou / ect @ ect\ncc : aimee lannou / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : koch three rivers , # 6722\ni spoke with larry zamit this morning regarding the outage january 1 through\n6 . he agreed to hold the gas for us and batch it throughout the rest of\njanuary . at this point we have 3 , 007 nominated for 1 / 1 / 00 and that is what\nhe has agreed to hold .\nquestions ? ? give me a call .\ncharlotte / aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.755+0000", "entityId": 1564, "properties": {"text": "Subject: calpine\nmy cellular phone number is 713 - 562 - 2050 if you have any questions over the\nweekend or holiday do not hesitate to give me a call . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.760+0000", "entityId": 1565, "properties": {"text": "Subject: unresolved issues for jan 1 .\ni think everyone agrees that there was a lot of confusion in desk assignments\nand responsibilities . with that said , i am listing some of the current\nissues that i have seen , that will need to be addressed quickly . most of\nthese issues are none of my business , but since i see unpathed gas i thought\nyou two might want to dicsuss these issues .\nenron field services - has not been nominated since september 99 . have we\nstopped doing business on this pipe ? ( just an fyi - ? ) do we need to get\nthis assigned ? i can find old\nnotes and try to get this pathed if necessary . someone just needs to let\nme know .\nlavaca expense transport - this is offsystem gas that hplc transports for\nena . ena has no nom at meter 1000 in pops for jan 1 .\nmidcon texas pipeline - there were deals left unpathed for jan 1 ( and\ndec ? ) . i brokered and nominated the obvious but we seem to have 10 , 000 with\ntransport contract to move this gas on and no sale to broker to . as it\nstands , it looks like we have a long position . who is this assigned to ? i\nthought carlos was handling this one , but i could be wrong .\nchannel industries pipeline - several issues here :\n1 . all deals with the exception of the long term transport expense were left\nunpathed for jan 1 . i viewed prior month transactions and pathed\nappropriately . someone\nneeds to review for accuracy . also , there were deals that went to zero ,\nthat were nominated for january .\n2 . we still do not have enough supply to meet our sales requirement . this\nissue has been left unsresolved since october 99 . volume management cannot\nallocate was is\nnot pathed and nominated .\n3 . there is a transaction for january that is once again not on our point\nspecific transport contracts . ( rec mtr 1 - 6366 10 , 000 to del mtr 2 - 6203\n10 , 000 ) . this is a pathed pipeline . we have no rate . we need to know the\nrate and whether one of the expense contracts needs to be amended for this\ntransaction , we are not legally covered . carlos was handling this pipe in\ndec . who is this assigned to for jan ?\nhpl operational - this shipper on hpl has been left unpathed for december\nand january 1 . who is this assigned to ? this can wait until we get back\nnext week . if it is left unresolved , i will get it pathed when i return .\npat - the following was my recollection of the assignments for dec 1 to\nthe present . you might want to confirm with mary smith and then you can\nproceed with decisions that need to be made based on possible unassigned\nissues .\nhank eisenhours duties were split :\nmandey - handle all long term hplc expense issues : undeveloped contracts ,\ndecember flow forward and cleanup of 1999 unresolved issues .\ncarlos - all offsystem transactions for ena and hplc in unify and all\noffsystem paper and electronic noms on intrastate pipes . ami and stacey\nalso handle some . there is a lot of confusion here . i found unpathed gas\nfor december . we ' ll need to address this one quickly .\nhpl transports were all split by zone . each logistics rep is responsible for\npathing all meters in their assigned zones in unify .\nhpl operational seems to be left unassigned .\ni think most of the desk assumed that carlos took over hanks\nresponsibilities . the assignments above are my recollection only .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.764+0000", "entityId": 1566, "properties": {"text": "Subject: january setup - - mops\nspecifically , meter 1373 has several deals set up and 6 of them are ranked\n10 . these will not allocate properly as you know . suggest you double check\nall the industrials to ensure they are ranked correctly . january will then\nneed to be re - nomed .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.769+0000", "entityId": 1567, "properties": {"text": "Subject: re : missing service rates for ena / hplc cash desk\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 04 / 2000\n10 : 36 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrhonda robinson @ ect\n01 / 04 / 2000 10 : 23 am\nto : stacey neuweiler / hou / ect @ ect , ami chokshi / corp / enron @ enron\ncc : gregory steagall / hou / ect @ ect\nsubject : re : missing service rates for ena / hplc cash desk\nlisted below are expense contracts that need rates input into sitara . please\nlet me know as soon as possible if you are responsible for the input of these\nrates .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rhonda robinson / hou / ect on 01 / 04 / 2000\n10 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : heidi withers 01 / 04 / 2000 09 : 18 am\nto : rhonda robinson / hou / ect @ ect\ncc :\nsubject : re : missing service rates for ena / hplc cash desk\nokay ! how about the other expense rates ? if you need any help getting those\ninput , let me know . otherwise we ' ll make sure things are clean for that 11 th\nworkday . i hope you had a great new year ' s !\nheidi\nrhonda robinson\n01 / 04 / 2000 09 : 13 am\nto : heidi withers / hou / ect @ ect\ncc :\nsubject : re : missing service rates for ena / hplc cash desk\ntheresa in denver is looking into the missing rates issue for powder river\ngathering . thanks for all of your help .\nreminder : we will be beginning our close process on the 11 th workday .\nenron north america corp .\nfrom : heidi withers 12 / 31 / 99 10 : 07 am\nto : rhonda robinson / hou / ect @ ect , gregory steagall / hou / ect @ ect\ncc : charlotte hawkins / hou / ect @ ect , mary m smith / hou / ect @ ect\nsubject : missing service rates for ena / hplc cash desk\nrhonda , i took a look at the missing service rates report and i don ' t have\nthe rates to input into the system . the best i can do is input them if you\nprovide them to me . i am sorry that i can ' t help more . . . call me if you need\nto at xl 836 .\ngreg sent me the expense reconciliation reports that have come out were :\npowder river gathering - expense\npowder river gathering - revenue\neast texas gathering - expense\nking ranch gas processing - expense\nhumble gas pipeline - expense\nchannel industries - expense\ntgpl - expense\nblack marlin - expense\ni ' m here till noon , and reachable after that at 713 - 385 - 7612 . i think that\ncharlotte or someone in the logistics group can help with these rates .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.775+0000", "entityId": 1568, "properties": {"text": "Subject: hl & p december\njanet . attached is the best available for december . i have split 3 rd party\nnoms and hpl noms .\ni ' ll be working on january today and forward it to you soon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.779+0000", "entityId": 1569, "properties": {"text": "Subject: buyback deals - - january 2000\nattached are the current buyback deals i ' m aware of . if you have further\ninformation please let me know .\nthanks\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.784+0000", "entityId": 1570, "properties": {"text": "Subject: industrials\nsuggestions . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 01 / 04 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npat clynes @ enron\n01 / 04 / 2000 12 : 46 pm\nto : kenneth seaman / hou / ect @ ect , robert e lloyd / hou / ect @ ect\ncc :\nsubject : industrials\nken and robert ,\nthe industrials should be completely transitioned to robert as of january 1 ,\n2000 .\nplease let me know if this is not complete and what else is left to\ntransition .\nthanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.788+0000", "entityId": 1571, "properties": {"text": "Subject: re : c & e operating , 11 / 99 production\nset out below is information regarding 660 mmbtu produced november 29 and 30\nat meter 9813 . please create a sitara record for this production at your\nearliest convenience . the price is if / hsc less $ 0 . 10 . the contract number\nis 96016884 . a confirmation is not necessary .\nplease call if i can be of any additional assistance .\ndonald\nx 37008\n- - - - - - - - - - - - - - - - - - - - - - forwarded by donald p reinhardt / hou / ect on 01 / 04 / 2000\n04 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 01 / 04 / 2000 08 : 09 am\nto : donald p reinhardt / hou / ect @ ect\ncc :\nsubject : re : c & e operating , 11 / 99 production\ndonald , please see julie ' s email below . this is the deal that was not in the\nsystem that i had asked you about . please let me know if there is something\nelse that i need to do .\nthanks , stephanie ( 3 - 6004 )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie gomes / hou / ect on 01 / 04 / 2000\n08 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njulie meyers\n01 / 03 / 2000 09 : 08 am\nto : stephanie gomes / hou / ect @ ect\ncc :\nsubject : re : c & e operating , 11 / 99 production\ni ' m not sure if you got this resolved , but donald will need to have someone\nput a deal in , either a spot or has it been firmed up .\njulie\nfrom : stephanie gomes 12 / 28 / 99 08 : 45 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : c & e operating , 11 / 99 production\nhi julie , i have a question and i wasn ' t sure of who to start with . i have a\nnew meter for c & e operating , meter # 0989813 that started up nov . 29 . i have\na volume statement that confirms that volume did flow the 29 th and 30 th , a\ntotal of 660 mmbtu . the problem is there is nothing in the system for meter #\n9813 for 11 / 99 production . i looked in sitara , ( sitara # 132030 ) and the\ndeal starts for 12 / 99 production . i checked with donald to make sure and\nhe says that the meter did start up 11 / 29 and the price is hsc less $ . 10 . in\norder to get this deal into the system , who do i need to talk to ? ? ?\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.793+0000", "entityId": 1572, "properties": {"text": "Subject: thanks from ken walther\ni can not begin to express my heart filled \" thanks \" for all of the time and\neffort that everyone put into this successful y 2 k effort . it was truly great\nto see everyone working together to ensure that enron continues in it winning\nway by being the best at what we do . i was truly blessed with the group of\nindividuals listed above and their staffs that put the heart and soul into\nthis process . we have an outstanding team of individuals who in my opinion\nwill always go the extra mile for enron . . again , thanks everyone you have a\nlot to be proud - \" we successfully survived the y 2 k event ! ! ! \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.797+0000", "entityId": 1573, "properties": {"text": "Subject: re : industrials\ni leave this with you . my take is that the situation is as i suspected and\npat wants me to pretty much leave them be . i will do that unless i hear a\ndifferent plan from you .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 01 / 05 / 2000\n08 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npat clynes @ enron\n01 / 05 / 2000 08 : 08 am\nto : kenneth seaman / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect\nsubject : re : industrials\nken ,\ni think robert has a good handle on things and can function on his own . with\nthat said , we always want different\nchecks and balances in place in order to capture the most accurate\ninformation , so if you see something that is\na problem please bring it to our attention . thanks , pat\nkenneth seaman @ ect 01 / 05 / 2000 07 : 23 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : re : industrials\ni believe the transition to be complete as we have , at least , been over the\nground on all the subjects . would you like me to continue offering advise\nand assistance or let robert function entirely on his own ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.802+0000", "entityId": 1574, "properties": {"text": "Subject: bridge back error\nmeter 980068 has a bridge back error for 9 / 99 production . this meter is\nlinked to deal 76365 which started on 4 / 16 / 99 and ended on 4 / 30 / 99 .\nplease let me know what deal should be use for this meter for 9 / 99 . i need\nto have this error clear off by thursday .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.806+0000", "entityId": 1575, "properties": {"text": "Subject: updated spreadsheet\nhere is the lastest and greatest . please make sure that you look at this\ncarefully . there are some weird changes that happened . please make sure\nthat you forward this on to whom ever needs it .\nif you have any questions , please feel free to call me .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.811+0000", "entityId": 1576, "properties": {"text": "Subject: enron actuals for january 4 , 2000\nteco tap 110 . 000 / hpl iferc\nteco tap 33 . 750 / enron\nls hpl - katy ic 22 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.815+0000", "entityId": 1577, "properties": {"text": "Subject: hl & p month to date\nattached is the hl & p spreadsheet for january .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.820+0000", "entityId": 1578, "properties": {"text": "Subject: 5 th noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 05 / 2000\n04 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 01 / 04 / 2000 09 : 59 : 08 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 5 th noms\nand i remembered to send these to you . . . . .\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.826+0000", "entityId": 1579, "properties": {"text": "Subject: real time deal updates to path manager - test group\nbeginning this week , we are actively testing the changes to path manager to\nreceive real - time deal updates from sitara . to prepare for this , we would\nlike to have a limited group of schedulers from each desk go thru a quick\nwalkthru / training of the new features sometime early next week . this should\nonly take about 30 minutes . once they are comfortable with the features and\nperformance , and once the testing is complete , we would like to migrate this\nto unify production either next week or the week after . this should give us\nan adequate adjustment period prior to the next bid week .\nonce it is migrated to production , we can either roll it out to all\nschedulers or to selected schedulers via security .\nheather , could you please schedule some time with the designated schedulers ,\nscotty , and myself early next week . a room with a projector would work best .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.831+0000", "entityId": 1580, "properties": {"text": "Subject: january - meter 2186 clear lake city gate\ni have flow without a nom each day at meter 2186 lst = 1375\n2 nd = 28\n3 rd = 2532\n4 th = 5952\ni assume that this is entex meter . is this volume captured at meter 2000 ? i\nwill need a nom to support this flow . please advise . thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.835+0000", "entityId": 1581, "properties": {"text": "Subject: ces deals\nrick ward manages their accounting group .\n713 / 693 - 2813\nthe accounts that affect the texas group include\nkerr mcgee ( tomcat )\ndevon / pennzoil ( south texas )\npipes\noasis / duke en field services ( republic royalty sells to duke )\ncorpus christi nat gas at the virginia plant ( devon pdn sold to ccng )\nbrazos 368 ( spinnaker ' s gas sold to dow )\ngulf energy ( devon production sold to various )\nmidcon tx ( devon pdn sold to midcon tx gas )\nlonestar at sandtrap ( devon pdn sold to txu energy )\nhpl ( entex sells to equistar )\ngulf plains plant / agua dulce ( devon pdn sold to various )\ncarthage hub ( devon production sold to various )\ndelhi ( devon pdn sold to delhi gas mktg )\ntomcat ( kerr mcgee pdn transported into hpl - - they used to sell it to entex )\nlet me know what i can do to help ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.843+0000", "entityId": 1582, "properties": {"text": "Subject: lyondell - - # 1063\nthe gas looks like it is not allocating correctly in jan .\ni have not researched as to why , but if you like i can come down and go over\nsome things to help identify and correct these kinds of problems .\nlet me know .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.850+0000", "entityId": 1583, "properties": {"text": "Subject: expense\nplease notify me if you have any outstanding items that should be expensed .\nall invoices ( mobile , pager , etc . ) and travel arrangements should be passed\non to me as well .\nmany thanks ,\nbarbara lewis\nx 35085 ( bl / 635 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.855+0000", "entityId": 1584, "properties": {"text": "Subject: logistics training\ndaren ,\nthanks for the sitara training class that you taught the logistics group . it\nwas extremely valuable\nfor me and the rest of the group . i appreciate all the time and effort that\nyou put into setting this up .\nthe handouts will be great reference material for us in the future . i have\nalready heard very positive\nfeedback from the group . very much appreciated . thanks again , pat clynes", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.859+0000", "entityId": 1585, "properties": {"text": "Subject: revised 7 th noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 06 / 2000\n11 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 01 / 06 / 2000 10 : 58 : 31 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : revised 7 th noms\n( see attached file : egmnom - jan . xls ) love ya . . . . . . miss ya . . . . .\n- egmnom - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.864+0000", "entityId": 1586, "properties": {"text": "Subject: 7 th noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 06 / 2000\n10 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 06 / 2000 10 : 26 : 49 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 7 th noms\n( see attached file : egmnom - jan . xls )\n- egmnom - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.868+0000", "entityId": 1587, "properties": {"text": "Subject: ces - blue dolphin pipeline\nstarts 1 / 7 / 99 for 30 days ( will eventually be termed up )\nbuy from spinnaker at galveston island 250 l at gd hsc - . 08 plus tsp and dehy\n( . 138 )\ntransported on blue dolphin pipeline ( agency has been given to enron per mary\njean at bdpl )\n$ . 123 transport ( contract bdpl - 064 - gtsa )\n$ . 015 dehy fee ( contract mei - 056 - da )\nsold to dow at its plant inlet in brazoria county at gd hsc - . 07\nblue dolphin does not require nominations . whatever is produced is allocated\nto dow . currently , the volumes are about 208 mmbtu / d .\nsamedan operates the production field . ( janene shipp 580 - 221 - 1200 )\nblue dolphin contacts\nvolumes - ken davenport 713 - 227 - 7660 xl 37\ntransport - mary jean krinke 713 - 227 - 7660 xl 55\nami\n3 - 9272", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.874+0000", "entityId": 1588, "properties": {"text": "Subject: re : request for application report list\nthis is a follow up to the earlier email i forwarded regarding ces historical\ninformation . note the deadline of 1 / 15 , i believe that should be friday 1 / 14\nso i need your responses by thursday 1 / 13 .\nplease fill out the spreadsheet for each area and forward back to me . i will\nconsolidate our responses from a logistics perspective . lets have them add\neverything they need and if challenged we can re - review later .\nthanks - bob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert superty / hou / ect on 01 / 06 / 2000\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : bryce baxter 01 / 05 / 2000 12 : 00 pm\nto : sheri thomas / hou / ect @ ect , robert superty / hou / ect @ ect , mark\nfriedman / hou / ect @ ect , mary solmonson / hou / ect @ ect , bob klein / hou / ect @ ect ,\ngeorgeanne hodges / hou / ect @ ect , lisa csikos / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc : inja chun / hou / ect @ ect , brent a price / hou / ect @ ect , tommy j\nyanowski / hou / ect @ ect , susan harrison / hou / ect @ ect , lawrence r\ndaze / hou / ect @ ect , pamela chambers / corp / enron @ enron , jpeeple @ columbienergy . com\nsubject : re : request for application report list\nlast month richard burchfield sent us the following list of reports that are\navailable from ces ' s systems . it is working on a way to secure an electronic\ncopy of the required reports and making them available to us online via the\nelectronic document management system . while ena is not liable for pre - 2000\nbusiness , we may need to assist with research as issues arise . in order to\nget the ball rolling , we need to get a list together of the reports we need .\nplease fill out the attached spreadsheet and list any reports that you need\nand return it to me by friday , 1 / 15 / 2000 . if you do not want any reports ,\nplease send me an email letting me know that . i have included samples of how\nto fill this out , and if you have any questions please give me a call .\nif you aren ' t sure which reports you need based on the names , please get with\nany ces employees you have hired or with a ces transition employee to get\nclarification . if you need samples of any of these reports please let my\nassistant , pam chambers , know and she will coordinate getting a sample report\nprinted for you .\nin addition , i will need a list of the users and their logonid ' s who will\nneed to have access to this data . please send that to me by the 15 th as\nwell .\nthanks , bryce\nrichard burchfield\n12 / 01 / 99 04 : 58 pm\nto : sheri thomas / hou / ect @ ect , robert superty / hou / ect @ ect , brent a\nprice / hou / ect @ ect , mark friedman / hou / ect @ ect , mary solmonson / hou / ect @ ect ,\ntommy j yanowski / hou / ect @ ect , bob klein / hou / ect @ ect , bryce\nbaxter / hou / ect @ ect , georgeanne hodges / hou / ect @ ect\ncc :\nsubject : re : request for application report list\nall ,\nbelow is attached the report list for ces .\nrichard\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard burchfield / hou / ect on 12 / 01 / 99\n03 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncdeaton @ . com on 12 / 01 / 99 01 : 25 : 37 pm\nto : richard burchfield / hou / ect @ ect\ncc : \" - * peeples , jeff \" ,\n\" - * licarione , linda \"\nsubject : re : request for application report list\nplease see the attached for the altra gms report listing . please forward any\nadditional questions relating to altra gms to linda licarione ( 713 - 693 - 2845 )\nor\njeff peeples ( 713 - 693 - 2597 ) . thanks .\nlinda licarione\n12 / 01 / 99 01 : 04 pm\nto : clay deaton / ces / columbiagas @ columbiagas\ncc :\nsubject : request for application report list\nattached is a list of 210 reports from altra gms . please note that we may not\nbe using all of these reports . if you need me to scale this down to those\ncurrently being used , i will need to do a bit of analysis . many of the base\nreports , those denoted in the spreadsheet with filename - location ( 1 st column )\n=\nmaster . mdb are not currently being used at ces . let me know if you have any\nquestions .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by linda licarione / ces / columbiagas on\n12 / 01 / 99\n12 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclay deaton\n11 / 30 / 99 01 : 27 pm\nto : linda licarione / ces / columbiagas @ columbiagas\ncc :\nsubject : request for application report list\ncan you provide me with a complete list of gms reports ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by clay deaton / ces / columbiagas on 11 / 30 / 99\n01 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrburchf @ ect . enron . com on 11 / 30 / 99 10 : 36 : 11 am\nplease respond to rburchf @ ect . enron . com\nto : clay deaton / ces / columbiagas @ columbiagas\ncc : csulliv @ ect . enron . com , bprice @ ect . enron . com\nsubject : request for application report list\nclay ,\ni have had several requests from the ena business groups . now that the\nagreement has been finalized , for report lists from your key applications ,\nthose\nbeing , altra gms and risk works ( there may be others as people become more\naware ) . there will be a need for information for ena to manage contracts as we\ngo through he transition period . we feel this would be an easier process to\nwork\nthrough if ena knows what kind of information they can request as we go\nthrough\nthe transition .\nthanks , richard\n- gms _ reportlisting by header . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.879+0000", "entityId": 1589, "properties": {"text": "Subject: columbia energy history data\nfyi - we will probably be asked what historical information is needed in our\nshop from a logistics perspective . i would suggest asking the new ces\nemployees to give us a list of what they know we would probably need to deal\nwith historical questions on pipeline and customer physical imbalances as\nwell as any other information that helps support some of the large customer\nand asset transactions .\nhave each of them put together a list that we can consolidate and forward to\nthe it folks .\nthanks - bob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert superty / hou / ect on 01 / 06 / 2000\n07 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : inja chun 01 / 05 / 2000 01 : 21 pm\nto : susan harrison / hou / ect @ ect , bryce baxter / hou / ect @ ect , sheri\nthomas / hou / ect @ ect\ncc : brent a price / hou / ect @ ect , brenda f herod / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , tommy j yanowski / hou / ect @ ect , sally beck / hou / ect @ ect ,\nlarrissa sharma / hou / ect @ ect , anthony dayao / hou / ect @ ect , lawrence r\ndaze / hou / ect @ ect , richard burchfield / hou / ect @ ect , jpeople @ columbiaenergy . com ,\ntommy j yanowski / hou / ect @ ect , beth s perlman / lon / ect @ ect , philippe a\nbibi / hou / ect @ ect , mark friedman / hou / ect @ ect , mary solmonson / hou / ect @ ect , bob\nklein / hou / ect @ ect , georgeanne hodges / hou / ect @ ect , lisa csikos / hou / ect @ ect ,\nrita wynne / hou / ect @ ect\nsubject : columbia energy history data\nthe following summarizes the decisions made during our user & it joint\nmeeting today regarding the handling of ces historical data .\na . bryce baxter will coordinate with all user groups to identify ces reports\nthat need to be actually printed as hard copy or transfered to files that\nwill be accessed via the electronic document management system .\nb . jeff peoples will be working with bryce baxter to produce reports using\nces system via isdn line at enron building - this will continue to be part of\nhis duty until the job is done ( jeff joined ena as a member of sitara group ) .\nc . larry daze will be working with jeff peoples and bryce baxter to ensure\nall reports are loaded on our edms with proper indexing .\nd . no need for manupulating ces history data is necessary ( i . e . downloading\non spreadsheets ) . therefore , no data will be kept on the disk other than\nedms .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.884+0000", "entityId": 1590, "properties": {"text": "Subject: re : txu fuel for december\nhere ' s the sheet . i ' ve moved around volumes in order to keep the enron\ncontract whole . please call if you have any questions .\nthanks ,\nami\n3 - 9272\njoanie h ngo @ ect\n01 / 06 / 2000 10 : 57 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : txu fuel for december\nami - when you are done , please send me the allocation spreadsheet . thank\nyou .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joanie h ngo / hou / ect on 01 / 06 / 2000 10 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n01 / 05 / 2000 03 : 32 pm\nto : joanie h ngo / hou / ect @ ect\ncc :\nsubject : re : txu fuel for december\nami chokshi will be sending this to you once it is finalized .\nd\njoanie h ngo\n01 / 05 / 2000 02 : 28 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : txu fuel for december\npls . send me spreadsheet if you have it . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.889+0000", "entityId": 1591, "properties": {"text": "Subject: issues\nvalero has accepted this proposal . please set up appropriate deal tickets\nand dan hyvl is preparing a new contract .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 01 / 07 / 2000\n01 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 01 / 07 / 2000 10 : 53 am\nto : dan j hyvl / hou / ect @ ect\ncc :\nsubject : issues\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 01 / 07 / 2000\n10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 01 / 07 / 2000 09 : 38 am\nto : brotherss @ valero . com\ncc :\nsubject : issues\nsusan ,\nhope you had a great new year and holiday season ! i have a couple of issues\ni want ot clear up for this year ' s contract .\nthe question is how valero wants to treat the three meter locations where you\nare currently pulling gas . our new contract that was just sent to you has a\nminimum take of 60 , 000 mmbtu ( estimated 35 , 000 @ 8018 celanese , 15 , 000 @ 1233\ntexas city , and 10 , 000 @ 1394 dodge street ) . if you undertake at any meter\nexcess volumes from another meter would be used to fulfill the entire 60 , 000\nmmbtu . my accountant has told me that this is causing difficulties with the\ntwo plants and how they want to see gas purchases broken out . we discussed\nthis on the phone and i got your consent to split these invoices . now we are\nbeing told all three invoices need to be separate . since we always aim to\nplease the customer , here is my recommendation for handling the contract\nthrough it ' s term . please let me know if this is fine .\ncelanese 35 , 000 mmbtu / d minimum on any given day if volumes fall below\n35 , 000 hplc will buy back these volumes at gd katy mid\ntwo days after flow\ntexas city 15 , 000 mmbtu / d minimum on any given day if volumes fall below\n15 , 000 hplc will buy back these volumes at gd katy mid\ntwo days after flow\ndodge street 10 , 000 mmbtu / d minimum on any given day if volumes fall below\n10 , 000 hplc will buy back these volumes at gd katy mid\ntwo days after flow\nany excess volumes taken at all three locations would be billed @ gd hsc high\n2 day after", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.893+0000", "entityId": 1592, "properties": {"text": "Subject: hl & p\nattached are the most recent numbers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.898+0000", "entityId": 1593, "properties": {"text": "Subject: new email\nyo bro . this is my new email address . save it .\naggie _ chico 2 @ hotmail . com .\nlove you , lacy\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.902+0000", "entityId": 1594, "properties": {"text": "Subject: eol application id and password\ndarren ,\nyour id and password for eol application is as follows :\nid : dfarmer\npassword : dfarmer\nthis will give you read only access to the stack manager , product manager ,\nand enron online .\nif you have any questions please feel free to contact me .\nthanks\ntara\nx 34523", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.907+0000", "entityId": 1595, "properties": {"text": "Subject: copano ' s changes for 7 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 07 / 2000\n09 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 07 / 2000 09 : 43 : 34 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : copano ' s changes for 7 th\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.911+0000", "entityId": 1596, "properties": {"text": "Subject: valero\neach meter is now to be treated seperately : tickets have been created\naccordingly .\nmeter 1233\nbase 148376\nswing 148382\nbuyback 148381\nmeter 1394\nbase 148390\nswing 148391\nbuyback 148396\nmeter 8018\nbase 148376\nswing 148382\nbuyback 148381\nvolume management will need to set up accounting arrangements to cover\nnovember and december 1999 . scheduling will repath and renom unify , and\nreallocate pops for january .\nif anyone has anything to add to this please let me know .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.916+0000", "entityId": 1597, "properties": {"text": "Subject: cox exploration\ndarren , we had a situation in december that we need your help to resolve .\ndeal # 125836 we have been purchasing gas from cox exploration on pg & e\nhydorcarbons systems upstream of the processing facility . this purchase\nagreement terminated 11 / 30 / 99 . i didn ' t path the gas on pgeh , however , i\nwill take responsibility for not adjusting the interconnect ticket at\nthompsonville . i didn ' t catch this and the deal on the hpl side appeared to\nbe a valid flow issue for kim vaughn . the plant continued to confirm this\ngas .\nwe have tried working through the pipeline , but they state that they will not\nknow anything until the 15 th . can you contact the producer and ask them to\nreverify this with the pipeline ? i would like kim to be able to zero confirm\nand send back to pops so volume management will not allocate up to the\nproducer level .\nalso i just realized that we have a committed reserve purchase agreement at\nthe same meter with tribo production . should there have been an expected\nvolume in this deal ? is it possible that cox exploration sold their interest\nin this well to tribo . it may turn out that we should have flowed the gas\nafter all .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.921+0000", "entityId": 1598, "properties": {"text": "Subject: re : valero\nthis is the data i mention to you this morning concerning valero .\ni will focus on january ' 2000 and you will address nov . ' 99 and dec . ' 99 as\nyou stated .\nif there are any scheduling issues you need my assistance on for nov . or\ndec . 1999 , please let me know .\ni will be on vacation thursday and friday of this week .\nkenneth seaman 01 / 10 / 2000 09 : 43 am\nto : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect , joanie h\nngo / hou / ect @ ect\ncc : gary w lamphier / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : valero\neach meter is now to be treated seperately : tickets have been created\naccordingly .\nmeter 1233\nbase 148376\nswing 148382\nbuyback 148381\nmeter 1394\nbase 148390\nswing 148391\nbuyback 148396\nmeter 8018\nbase 148376\nswing 148382\nbuyback 148381\nvolume management will need to set up accounting arrangements to cover\nnovember and december 1999 . scheduling will repath and renom unify , and\nreallocate pops for january .\nif anyone has anything to add to this please let me know .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.925+0000", "entityId": 1599, "properties": {"text": "Subject: industrial accounts\nas of january 2000 , i have taken over scheduling all \" industrial accounts \"\nwithout the assistance of\nkenneth seaman .\ni want to thank ken for all of his efforts during our training period .\nken has help me feel confident to continue this responsibility with\nlittle , if any , assistance from himself .\nthus , please forward all correspondence to me directly in the future .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.931+0000", "entityId": 1600, "properties": {"text": "Subject: industrial accounts\nhe would not have had a clue how to do valero , but he seems to think\nso . . . . . . . . . . . . . . . . . . . . . . . . . . .\ni give . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .\nno mas !\nlet ' s finish this stuff up and call it a day .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 01 / 10 / 2000\n01 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 01 / 10 / 2000 01 : 03 pm\nto : gary w lamphier / hou / ect @ ect , lee l papayoti / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , kenneth\nseaman / hou / ect @ ect\nsubject : industrial accounts\nas of january 2000 , i have taken over scheduling all \" industrial accounts \"\nwithout the assistance of\nkenneth seaman .\ni want to thank ken for all of his efforts during our training period .\nken has help me feel confident to continue this responsibility with\nlittle , if any , assistance from himself .\nthus , please forward all correspondence to me directly in the future .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.938+0000", "entityId": 1601, "properties": {"text": "Subject: industrial accounts\ni will leave robert to the above accounts . i will refer all contacts on this\nsubject to him for handling .\nit is my personal belief that robert is not yet ready to provide all the\nservices necessary in this area , but i also know that full responsibility\noften is a good teacher .\npat , as far as i ' m concerned i ' m out of the game .\ni will help daren if needed and if not i ' ll be on my way .\ngood luck to you in your endeavors .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.947+0000", "entityId": 1602, "properties": {"text": "Subject: marketing services / scheduling\ndaren ,\nthinking about robert ' s little memo yesterday and along the lines of pulling\nthe marketing ( sitara ) function back to your side of the fence i think a\nstrong case could be made in favor of that idea .\nit is obvious that several people are involved in changing tickets , pathing ,\nnominating , and confirming the industrials . this dissipates the knowledge\nbase and the responsibility factor . it is a \" who ' s on first \" issue .\nif the responsibility to ensure pricing , volume , and accomplishment of market\nintent is accurately depicted , and in sitara , is in your shop then the\nschedulers could concentrate on the accuracy and correctness of unify and\npops . i ' m sure this would help volume management and client services\nimmensely .\nas the skill level rises in this area you could then gradually feed more and\nmore of the marketing function ( sitara ) to the scheduling group in the hopes\nthey would then have a better understanding of the overhaul picture .\ni believe the current situation is too much , too fast , for scheduling to\nhandle all at once . it has also created a situation where robert seems to\nthink not only that he has all the segments mastered , but that he is the only\nperson that should be involved in the industrials .\ni will support whatever direction you want to go on this issue , but if you\nand pat leave things the way they are please explain to both robert and pat\nthat others may be involved in the industrial activity and that is quite\nalright .\nonce again , thanks for listening .\nken\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.953+0000", "entityId": 1603, "properties": {"text": "Subject: internal guest id and passowrd\ndarren ,\nyou have been set up for an id and password for internal website access , at\nwww . enrononline . com . your id and password is as follows :\nid : eol 76371\npassword : welcome !\nplease not that the id and password will need to be in all upper case .\nplease feel free to contact me if you have any question or problems getting\ninto the system .\nthanks\ntara\nx 34523", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.957+0000", "entityId": 1604, "properties": {"text": "Subject: decrease entex rom\n142509 dth by 6 days = 855 , 054\n67509 dth by 15 days = 1 , 012 , 635\ntotal = 1 , 867 , 689", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.961+0000", "entityId": 1605, "properties": {"text": "Subject: ua 4 - 1998\ndaren :\nwe are currently working to clear some ua 4 issues for 1998 . i am looking\nfor a valid contract for meter 8740 .\nmeter 8740\ndeal # 307062\ncurrent k # - 089 - 41500 - 102\nvolume - 188 . 252\nmonth - sept . 1998\nour deadline is tuesday , jan . 18 . please advise which contract this volume\nbelongs on .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.966+0000", "entityId": 1606, "properties": {"text": "Subject: re : revision - black marlin - meter 986782 for 8 / 98 - ua 4\nyes should be , right howard ?\nstella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 01 / 11 / 2000\n12 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n01 / 11 / 2000 12 : 46 pm\nto : stella l morris / hou / ect @ ect\ncc :\nsubject : re : revision - black marlin - meter 986782 for 8 / 98 - ua 4\nso , is this ok now ?\nd\nfrom : stella l morris 01 / 11 / 2000 11 : 09 am\nto : charlotte hawkins / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron\nsubject : revision - black marlin - meter 986782 for 8 / 98 - ua 4\nthe above meter is non - allocatable and was off system , actuals at meter # 8693 .\nthanks , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 01 / 11 / 2000\n11 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stella l morris 12 / 28 / 99 05 : 55 pm\nto : daren j farmer / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : revision - black marlin - meter 986782 for 8 / 98 - ua 4\nrevision - according to measurement , there is flow of 7 , 394 in 8 / 98 , however ,\nthere is nothing to indicate this is gas that was received on hpl in oss . i\nchecked mips and there is a measurement statement that supports the flow rate\nof 7 , 394 mmbtu .\ndaren is there a deal in cpr which may not have fed over to oss ? i checked\noss for the whole year of 1998 and there are no other deals in oss . it does\nseem strange that this is the only month of flow .\nthanks , stella", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.971+0000", "entityId": 1607, "properties": {"text": "Subject: shut in of meter 986240\nat approximately 11 : 00 am on tuesday , january 11 , 2000 , meter 986240 el\ncampon / shanghai common point was shut in due to a leak on a 6 \" lateral off of\nthe edna 24 \" . the meter will be shut in until late thursday or early on\nfriday , january 13 or 14 , after repairs are complete .\nif you have any questions please call me at 36449 .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.976+0000", "entityId": 1608, "properties": {"text": "Subject: subject : rankings for source / destination\nplease forward to logistics in your region . . . . . .\nwould any of the desks be opposed to enabling unify to default the\ndestination rankings to the same rankings that are created in the source\nrankings . there would still be the ability to change to ranking on the\ndestination side however , it would not affect the rankings on the source\nside . this will save time pathing and prevent the amount of data entry\nerrors . would you please forward comments to your manager . dave\nnommenson is aware that some of us are interested in this and would like to\nfind out if it would be something worth putting into production .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.981+0000", "entityId": 1609, "properties": {"text": "Subject: unresolved issues for jan 1 . - followup\nhere is a followup to the memo sent on 12 / 31 / 99 . fyi\nenron field services - has not been nominated since september 99 . have we\nstopped doing business on this pipe ? ( just an fyi - ? ) do we need to get\nthis assigned ? i can find old\nnotes and try to get this pathed if necessary . someone just needs to let\nme know . unresolved - appears to be unassigned ?\nlavaca expense transport - this is offsystem gas that hplc transports for\nena . ena has no nom at meter 1000 in pops for jan 1 . unresolved\nmidcon texas pipeline - there were deals left unpathed for jan 1 ( and\ndec ? ) . i brokered and nominated the obvious but we seem to have 10 , 000 with\ntransport contract to move this gas on and no sale to broker to . as it\nstands , it looks like we have a long position . who is this assigned to ? i\nthought carlos was handling this one , but i could be wrong . unresolved\nchannel industries pipeline - several issues here :\n1 . all deals with the exception of the long term transport expense were left\nunpathed for jan 1 . i viewed prior month transactions and pathed\nappropriately . someone\nneeds to review for accuracy . also , there were deals that went to zero ,\nthat were nominated for january . resolved but needs to be verified .\n2 . we still do not have enough supply to meet our sales requirement . this\nissue has been left unsresolved since october 99 . volume management cannot\nallocate was is\nnot pathed and nominated . unresolved or unpathed ?\n3 . there is a transaction for january that is once again not on our point\nspecific transport contracts . ( rec mtr 1 - 6366 10 , 000 to del mtr 2 - 6203\n10 , 000 ) . this is a pathed pipeline . we have no rate . we need to know the\nrate and whether one of the expense contracts needs to be amended for this\ntransaction , we are not legally covered . carlos was handling this pipe in\ndec . who is this assigned to for jan ? unresolved\nhpl operational - this shipper on hpl has been left unpathed for december\nand january 1 . who is this assigned to ? this can wait until we get back\nnext week . if it is left unresolved , i will get it pathed when i return .\ni haven ' t had time to do this yet . if we haven ' t figured out the assignement\nthen i will get to it asap .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.985+0000", "entityId": 1610, "properties": {"text": "Subject: upcoming sitara risk assignment release\nin order to prepare for the upcoming sitara release to production scheduled\non 01 / 24 , sitara will be unavailable as follows :\nproduction 01 / 21 ( fri . ) 7 : 00 pm ( cst ) thru 01 / 23 ( sun . ) 12 : 00 pm ( cst )\nconversion and checkout of data for risk assignment release\n( sitara and cpr )\nparallel 01 / 14 ( fri . ) 7 : 00 pm ( cst ) thru 02 / 01 ( tue . ) 8 : 00 am ( cst ) parallel\nenvironment will be used as hot back - up , view access only\n( sitara )\ni wanted to make sure everyone had plenty of advance notice . i would like\neach of you to review these times with your staff . the production release is\nthe largest to date and the time required to convert the data cannot be\nshortened any more . production users will not be impacted by the lack of the\nparallel environment - we will continue to bridge deal updates to unify\nparallel as we do now for the period stated above ; however access to sitara\nparallel will be kept to view only . a list of items included in this release\nwill be forthcoming , as well as training for groups impacted by the risk\nassignment change .\ni appreciate your help in making this happen . any questions , please do not\nhesitate to call myself or the sitara hotline ( x 37049 )\nscott mills ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.991+0000", "entityId": 1611, "properties": {"text": "Subject: re : unresolved issues for jan 1 . - followup\nmandey and the rest of the group ,\nplease take the initiative to get these things done . i am counting on you\nand the others ( seniors in the group )\nto get these things done . we have 6 seniors in this group and i expect\nthings to get accomplished . i am not\na babysitter . lets get this job done or i will find people who want to get\nit done . how about some team work\nhere ! ! ! ! ! pat\nmandy mackinnon @ ect\n01 / 11 / 2000 07 : 38 pm\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\ncc :\nsubject : unresolved issues for jan 1 . - followup\nhere is a followup to the memo sent on 12 / 31 / 99 . fyi\nenron field services - has not been nominated since september 99 . have we\nstopped doing business on this pipe ? ( just an fyi - ? ) do we need to get\nthis assigned ? i can find old\nnotes and try to get this pathed if necessary . someone just needs to let\nme know . unresolved - appears to be unassigned ?\nlavaca expense transport - this is offsystem gas that hplc transports for\nena . ena has no nom at meter 1000 in pops for jan 1 . unresolved\nmidcon texas pipeline - there were deals left unpathed for jan 1 ( and\ndec ? ) . i brokered and nominated the obvious but we seem to have 10 , 000 with\ntransport contract to move this gas on and no sale to broker to . as it\nstands , it looks like we have a long position . who is this assigned to ? i\nthought carlos was handling this one , but i could be wrong . unresolved\nchannel industries pipeline - several issues here :\n1 . all deals with the exception of the long term transport expense were left\nunpathed for jan 1 . i viewed prior month transactions and pathed\nappropriately . someone\nneeds to review for accuracy . also , there were deals that went to zero ,\nthat were nominated for january . resolved but needs to be verified .\n2 . we still do not have enough supply to meet our sales requirement . this\nissue has been left unsresolved since october 99 . volume management cannot\nallocate was is\nnot pathed and nominated . unresolved or unpathed ?\n3 . there is a transaction for january that is once again not on our point\nspecific transport contracts . ( rec mtr 1 - 6366 10 , 000 to del mtr 2 - 6203\n10 , 000 ) . this is a pathed pipeline . we have no rate . we need to know the\nrate and whether one of the expense contracts needs to be amended for this\ntransaction , we are not legally covered . carlos was handling this pipe in\ndec . who is this assigned to for jan ? unresolved\nhpl operational - this shipper on hpl has been left unpathed for december\nand january 1 . who is this assigned to ? this can wait until we get back\nnext week . if it is left unresolved , i will get it pathed when i return .\ni haven ' t had time to do this yet . if we haven ' t figured out the assignement\nthen i will get to it asap .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:08.995+0000", "entityId": 1612, "properties": {"text": "Subject: fw : quips\n> remember , amateurs built the ark .\n> > professionals built the titanic .\n> >\n> > conscience is what hurts when everything else feels so good .\n> >\n> > talk is cheap because supply exceeds demand .\n> >\n> > stupidity got us into this mess - - why can ' t it get us out ?\n> >\n> > love is grand ; divorce is a hundred grand .\n> >\n> > even if you are on the right track , you ' ll get run over if you just sit\n> there .\n> >\n> > politicians and diapers have one thing in common .\n> > they should both be changed regularly and for the same reason .\n> >\n> > an optimist thinks that this is the best possible world .\n> > a pessimist fears that this is true .\n> >\n> > there is always death and taxes ;\n> > however death doesn ' t get worse every year .\n> >\n> > people will accept your ideas much more readily if you tell them that\n> > benjamin franklin said it first .\n> >\n> > it ' s easier to fight for one ' s principles than to live up to them .\n> >\n> > i don ' t mind going nowhere as long as it ' s an interesting path .\n> >\n> > anything free is worth what you pay for it .\n> >\n> > indecision is the key to flexibility .\n> >\n> > it hurts to be on the cutting edge .\n> >\n> > if it ain ' t broke , fix it till it is .\n> >\n> > i don ' t get even , i get odder .\n> >\n> > in just two days , tomorrow will be yesterday .\n> >\n> > i always wanted to be a procrastinator , never got around to it .\n> >\n> > dijon vu - - the same mustard as before .\n> >\n> > i am a nutritional overachiever .\n> >\n> > my inferiority complex is not as good as yours .\n> >\n> > i am having an out of money experience .\n> >\n> > i plan on living forever . so far , so good .\n> >\n> > i am in shape . round is a shape .\n> >\n> > not afraid of heights - - afraid of widths .\n> >\n> > practice safe eating - - always use condiments .\n> >\n> > a day without sunshine is like night .\n> >\n> > i have kleptomania , but when it gets bad , i take something for it .\n> >\n> > if marriage were outlawed , only outlaws would have in - laws .\n> >\n> > i am not a perfectionist . my parents were though .\n> >\n> > life is an endless struggle full of frustrations and challenges , but\n> > eventually you find a hair stylist you like .\n> >\n> > you ' re getting old when you get the same sensation from a rocking chair\n> that\n> > you once got from a roller coaster .\n> >\n> > one of life ' s mysteries is how a two pound box of candy can make a woman\n> gain\n> > five pounds .\n> >\n> > it ' s frustrating when you know all the answers , but nobody bothers to ask\n>\n> you\n> > the questions .\n> >\n> > the real art of conversation is not only to say the right thing at the\n> right\n> > time , but also to leave unsaid the wrong thing at the tempting moment .\n> >\n> > time may be a great healer , but it ' s also a lousy beautician .\n> >\n> > brain cells come and brain cells go , but fat cells live forever .\n> >\n> > age doesn ' t always bring wisdom , sometimes age comes alone .\n> >\n> > life not only begins at forty , it begins to show .\n> >\n> > you don ' t stop laughing because you grow old , you grow old because you\n> > stopped laughing .\n>\n>\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.000+0000", "entityId": 1613, "properties": {"text": "Subject: reply\ndaren ,\nthank you for the comments . the feeling is mutual .\nken\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.005+0000", "entityId": 1614, "properties": {"text": "Subject: rollout schedule for unify real - time deal / path updates\na walk - thru / demo of this new functionality was held today with the logistics\nmanagers and representative schedulers from each region except for texas and\ncalgary . the changes were well received and no revisions were requested .\nthey would like to have the changes migrated to production the evening of\ntuesday , january 18 for use the morning of wednesday , january 19 .\npaul , could you please insure that the network folks have the tibco install\ncomplete by monday , including terminal server .\nscotty , paul may need one of your folks to insure that the tibco install\nworks ok on terminal server ( none of us have access ) .\nscotty , can you follow up with calgary and texas since they missed the demo .\nalso , what level of security is desired for the rollout - selected\nschedulers or all of logistics ?\ndave m , plan to have the last few related items in stage by monday to insure\nall is clean by tuesday night . ( print , filter , closed path list , & app close\nerror msg )\nif you do not feel like this schedule can be met , please let me know as you\nbecome aware .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.011+0000", "entityId": 1615, "properties": {"text": "Subject: re : request for application report list\nthis is the david ' s answer :\nthe only one that i can think of that may be of use is the \" ces volume\ncomparison \" report . . . that is the one that ya ' ll had for january that showed\nall of the purchases and sales , by pipeline . it is available for any month .\nthe reports that i regularly used were for helping to clean up current month\nactivity , which would not be of any use to you .\ndavid\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 11 / 2000\n11 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 01 / 11 / 2000 09 : 02 am\nto : dscottl @ . com\ncc :\nsubject : re : request for application report list\nhey david ,\ncould you help me determine the gms reports that i may need . thanks for your\nhelp .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 11 / 2000\n09 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer @ ect\n01 / 06 / 2000 03 : 58 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : re : request for application report list\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 06 / 2000\n03 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrobert superty\n01 / 06 / 2000 08 : 32 am\nto : katherine l kelly / hou / ect @ ect , edward terry / hou / ect @ ect , randall l\ngay / hou / ect @ ect , george smith / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron\ncc : heather choate / hou / ect @ ect\nsubject : re : request for application report list\nthis is a follow up to the earlier email i forwarded regarding ces historical\ninformation . note the deadline of 1 / 15 , i believe that should be friday 1 / 14\nso i need your responses by thursday 1 / 13 .\nplease fill out the spreadsheet for each area and forward back to me . i will\nconsolidate our responses from a logistics perspective . lets have them add\neverything they need and if challenged we can re - review later .\nthanks - bob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert superty / hou / ect on 01 / 06 / 2000\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : bryce baxter 01 / 05 / 2000 12 : 00 pm\nto : sheri thomas / hou / ect @ ect , robert superty / hou / ect @ ect , mark\nfriedman / hou / ect @ ect , mary solmonson / hou / ect @ ect , bob klein / hou / ect @ ect ,\ngeorgeanne hodges / hou / ect @ ect , lisa csikos / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc : inja chun / hou / ect @ ect , brent a price / hou / ect @ ect , tommy j\nyanowski / hou / ect @ ect , susan harrison / hou / ect @ ect , lawrence r\ndaze / hou / ect @ ect , pamela chambers / corp / enron @ enron , jpeeple @ columbienergy . com\nsubject : re : request for application report list\nlast month richard burchfield sent us the following list of reports that are\navailable from ces ' s systems . it is working on a way to secure an electronic\ncopy of the required reports and making them available to us online via the\nelectronic document management system . while ena is not liable for pre - 2000\nbusiness , we may need to assist with research as issues arise . in order to\nget the ball rolling , we need to get a list together of the reports we need .\nplease fill out the attached spreadsheet and list any reports that you need\nand return it to me by friday , 1 / 15 / 2000 . if you do not want any reports ,\nplease send me an email letting me know that . i have included samples of how\nto fill this out , and if you have any questions please give me a call .\nif you aren ' t sure which reports you need based on the names , please get with\nany ces employees you have hired or with a ces transition employee to get\nclarification . if you need samples of any of these reports please let my\nassistant , pam chambers , know and she will coordinate getting a sample report\nprinted for you .\nin addition , i will need a list of the users and their logonid ' s who will\nneed to have access to this data . please send that to me by the 15 th as\nwell .\nthanks , bryce\nrichard burchfield\n12 / 01 / 99 04 : 58 pm\nto : sheri thomas / hou / ect @ ect , robert superty / hou / ect @ ect , brent a\nprice / hou / ect @ ect , mark friedman / hou / ect @ ect , mary solmonson / hou / ect @ ect ,\ntommy j yanowski / hou / ect @ ect , bob klein / hou / ect @ ect , bryce\nbaxter / hou / ect @ ect , georgeanne hodges / hou / ect @ ect\ncc :\nsubject : re : request for application report list\nall ,\nbelow is attached the report list for ces .\nrichard\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard burchfield / hou / ect on 12 / 01 / 99\n03 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncdeaton @ . com on 12 / 01 / 99 01 : 25 : 37 pm\nto : richard burchfield / hou / ect @ ect\ncc : \" - * peeples , jeff \" ,\n\" - * licarione , linda \"\nsubject : re : request for application report list\nplease see the attached for the altra gms report listing . please forward any\nadditional questions relating to altra gms to linda licarione ( 713 - 693 - 2845 )\nor\njeff peeples ( 713 - 693 - 2597 ) . thanks .\nlinda licarione\n12 / 01 / 99 01 : 04 pm\nto : clay deaton / ces / columbiagas @ columbiagas\ncc :\nsubject : request for application report list\nattached is a list of 210 reports from altra gms . please note that we may not\nbe using all of these reports . if you need me to scale this down to those\ncurrently being used , i will need to do a bit of analysis . many of the base\nreports , those denoted in the spreadsheet with filename - location ( 1 st column )\n=\nmaster . mdb are not currently being used at ces . let me know if you have any\nquestions .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by linda licarione / ces / columbiagas on\n12 / 01 / 99\n12 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclay deaton\n11 / 30 / 99 01 : 27 pm\nto : linda licarione / ces / columbiagas @ columbiagas\ncc :\nsubject : request for application report list\ncan you provide me with a complete list of gms reports ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by clay deaton / ces / columbiagas on 11 / 30 / 99\n01 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrburchf @ ect . enron . com on 11 / 30 / 99 10 : 36 : 11 am\nplease respond to rburchf @ ect . enron . com\nto : clay deaton / ces / columbiagas @ columbiagas\ncc : csulliv @ ect . enron . com , bprice @ ect . enron . com\nsubject : request for application report list\nclay ,\ni have had several requests from the ena business groups . now that the\nagreement has been finalized , for report lists from your key applications ,\nthose\nbeing , altra gms and risk works ( there may be others as people become more\naware ) . there will be a need for information for ena to manage contracts as we\ngo through he transition period . we feel this would be an easier process to\nwork\nthrough if ena knows what kind of information they can request as we go\nthrough\nthe transition .\nthanks , richard\n- gms _ reportlisting by header . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.015+0000", "entityId": 1616, "properties": {"text": "Subject: meter 1517 - 12 / 99\nmeter 1517 , sweeny phillips , has been reallocated for 12 / 99 . if you have any\nquestions , let me know .\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.020+0000", "entityId": 1617, "properties": {"text": "Subject: hl & p flow\nhere are the most recent numbers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.025+0000", "entityId": 1618, "properties": {"text": "Subject: re : sales to panenergy at exxon clear lake for 2 / 99\ndaren . i need a deal ticket for this .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 01 / 12 / 2000\n09 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n01 / 07 / 2000 10 : 25 am\nto : kimberly vaughn / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nkim ,\nplease let me know if you have a chance to revisit this issue for meter 4045\nfor 2 / 99 . . . . . . . . . . . . . . . . . . . . . let me know if you have questions . . thanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 01 / 07 / 2000 10 : 22\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n11 / 16 / 99 12 : 01 pm\nto : kimberly vaughn / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nwe need to revisit this issue again . there is an exception at meter 4045\nfor 2 / 99 . in order to clear this up , i need an ect transport delivery at\nthis meter for the 34000 mmbtu . see july ' s allocations in pops for\nreference . the displacement gas were scheduled as a delivery .\ni would like to have this issue resolved as soon as possible so that we\ncould clear this off our list .\nlet me know if you have questions .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 11 / 16 / 99 11 : 53 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n05 / 25 / 99 03 : 36 pm\nto : kimberly vaughn / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nkim ,\nect sold 34 , 000 mmbtu to panenergy at meter 4045 for 2 / 99 . i ' ve verified w /\nrebekah seales and she has determined that ect did sell this gas to\npanenergy . therefore , we need to show a delivery at this meter for panenergy\nor whomever panenergy is selling this gas to at this point in pops . i need a\ndelivery at this meter in order for this meter to balanced .\nplease take a look at this . call me if you have questions\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 25 / 99 03 : 08 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebekah e seales\n05 / 25 / 99 03 : 04 pm\nto : anita luong / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , howard b camp @ ccmail\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nanita :\ni did some additional research regarding the sale to panenergy at meter 4045\non 2 / 27 and 2 / 28 . this sale was a brokered deal .\ndate purchase volume sale\n2 / 27 & 2 / 28 phillips gas mkt . ( # 55397 ) 10 . 000 mmbtu panenergy marketing\n( # 64749 ) 10 . 000 mmbtu\n2 / 27 & 2 / 28 superior natural gas ( # 57065 ) 7 . 000 mmbtu panenergy marketing\n( # 64749 ) 7 . 000 mmbtu\nect did not transport this gas away from meter 4045 . if this gas was\ntransported away from meter 4045 , it would have been a transaction between\npanenergy marketing ( or whomever they sold the gas to at that point ) and\nhpl . hope this information helps .\nrs\nanita luong\n05 / 25 / 99 01 : 31 pm\nto : rebekah e seales / hou / ect @ ect\ncc :\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\njust want to check see if you have a chance to look at this . . . . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 25 / 99 01 : 30 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebekah e seales\n05 / 24 / 99 03 : 31 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nanita :\ni ' m working on renominating back to 5 / 1 to the pipeline for the current\nmonth . i ' ll work on this first thing tomorrow morning . please let me know\nif you need the information sooner .\nthanks !\nrs\nanita luong\n05 / 24 / 99 02 : 10 pm\nto : rebekah e seales / hou / ect @ ect\ncc :\nsubject : sales to panenergy at exxon clear lake for 2 / 99\nadditional info i see in path manager . . . . . . . . . . . . . . . . . .\nseems like this is a brokered deal , ect is buying 20 , 000 mmbtu from philips\ngas and 14 , 000 mmbtu from superior gas and sell the total 34 , 000 mmbtu to\npanenergy .\nmy question is then who is paying for the tranport of this gas , ect or\npanenergy ? we need to schedule for the delivery of this gas at meter 984045 .\nplease let me know\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.030+0000", "entityId": 1619, "properties": {"text": "Subject: meter 8743 dec 99\nhere are the days i have discrepancies with pg & e . please let me know which\nnumbers are good . thanks\nthu\n3 - 7159\nday pg & e hpl\n12 - 05 145833 120000\n12 - 10 60000 35000\n12 - 11 70000 80000\n12 - 17 3125 3100\n12 - 21 50000 70000\n12 - 22 0 20000\n12 - 25 0 30000\n12 - 26 0 30000\n12 - 27 31375 63000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.035+0000", "entityId": 1620, "properties": {"text": "Subject: calpine force majeure - dec 99\nhi daren ,\ni spoke with ricky archer at calpine about some penalty charges i billed him\nfor undertakes on dec 20 , 21 , 31 .\nhe said force majeure letters were sent to your attention .\nif you have them , would you have someone fax a copy of those letters to met\nat 713 - 646 - 8420 ?\ndo you have any other information on the force majure or should i speak with\njennifer ?\nthanks for your help !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.039+0000", "entityId": 1621, "properties": {"text": "Subject: hl & p for 12 / 99\nhl & p was short on the following days :\ndecember\n4 th ( 2256 )\n9 th ( 7214 )\n11 th ( 2527 )\n12 th ( 3537 )\n15 th ( 7058 )\n16 th ( 4776 )\n17 th ( 4465 )\n28 th ( 264 )\nhow do you want to handle this ? ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 01 / 12 / 2000\n01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n01 / 12 / 2000 10 : 46 am\nto : kimberly vaughn / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : hl & p for 12 / 99\nfor days 4 , 9 , 11 , 12 , 15 , 16 , 17 and 28 , we are short at the aggregate\nmeter . should the reliant transport and sales or do we charge reliant a\npenalty ?\nalso , i notice that at meter 1554 we have 3 rd party transport this month .\nthis look strange because i ' ve not seen them here before .\nplease advice .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.047+0000", "entityId": 1622, "properties": {"text": "Subject: re : hl & p for 12 / 99\nit is the pipelines decision on how to allocate between the shippers ,\nhowever , if the pipeline allocates the shortage to ena then we need to follow\nthe contract language and bill accordingly . just remember that we allowed\nmakeup on the 18 , 19 , & 20 th for a total volume of 5 k over 3 days so that\nwill apply toward the 4 th and part of the 9 th . all other volumes should be\npurchased back per the language in the contract . remember they have a\ntolerance of 5 % below the nomination .\nthanks ,\njanet\nkimberly vaughn\n01 / 12 / 2000 02 : 13 pm\nto : janet h wallis / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , howard b camp / hou / ect @ ect , pat\nclynes / corp / enron @ enron\nsubject : hl & p for 12 / 99\nhl & p was short on the following days :\ndecember\n4 th ( 2256 )\n9 th ( 7214 )\n11 th ( 2527 )\n12 th ( 3537 )\n15 th ( 7058 )\n16 th ( 4776 )\n17 th ( 4465 )\n28 th ( 264 )\nhow do you want to handle this ? ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 01 / 12 / 2000\n01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n01 / 12 / 2000 10 : 46 am\nto : kimberly vaughn / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : hl & p for 12 / 99\nfor days 4 , 9 , 11 , 12 , 15 , 16 , 17 and 28 , we are short at the aggregate\nmeter . should the reliant transport and sales or do we charge reliant a\npenalty ?\nalso , i notice that at meter 1554 we have 3 rd party transport this month .\nthis look strange because i ' ve not seen them here before .\nplease advice .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.055+0000", "entityId": 1623, "properties": {"text": "Subject: meeting thoughts\ni ' m sitting here a bit disappointed and pissed .\ndo you and pat honestly believe it is \" one man ' s word against another \" on\nsetting up the link builder by the 12 th of the month ?\nif so , why have i been saying something is wrong with some of the links for\nthe last several days ? and why did i work so late the first couple of days of\neach month setting up the links when i had so much time ?\ni ' m not going to play this game with mr . lloyd . when he took the time to show\nup he was coached well in what was needed to be done , how to do it , and when\nto do it .\nthis situation was entirely predictable . it is always \" i ' m about to do it \"\nand it is always an \" i thought you said . . . . . . . . . . . . . \" situation .\nyou know better . i won ' t be hung out again .\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.060+0000", "entityId": 1624, "properties": {"text": "Subject: entex contact list\n1 / 12 / 00\nper request of rita wynne x 3 - 7694\nplease see attachement and note that joanie ngo was added to the list .\nmany thanks\npamela chambers - thompson\nx 39680", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.065+0000", "entityId": 1625, "properties": {"text": "Subject: meter 6353\ndaren . in the past , this meter was brokered and i didn ' t see the nom . . this\nmonth , there are two contracts - - - - - ena 201 for 4149 vol . and hpl 215 for\n4000 vol . the net at the meter being 149 . this does show up on my meter\nexception report . please advise . thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.070+0000", "entityId": 1626, "properties": {"text": "Subject: entex estimates for 12 / 99\nattached are two spreadsheets showing entex data for dec . 99 .\njano 0 _ factor shows the difference between the estimates that should have fed\nover to pops and the actual for all meters in the meter set { 2001 - 2500 , 2540 ,\n3509 , 3519 , 3530 , 3533 , 6822 , 9544 } . i do not have the actual for vidor cg\nyet . i have estimated the volume to be 190 . 00 .\nactuals were 6105 . 26 mmcf using the vidor cg estimate\nestimates were 4870 . 37 mmcf .\ndifference of 1237 . 89 mmcf .\njano 0 _ scada shows that if we had correct information from the hempstead cg\nrtu the difference would have been 819 . 186 mmcf .\nif you have any questions please call .\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.074+0000", "entityId": 1627, "properties": {"text": "Subject: hpl nomination for january 15 thru 17 , 2000\n( see attached file : hplol 15 . xls )\n- hplol 15 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.079+0000", "entityId": 1628, "properties": {"text": "Subject: rincon petroleum corp\ntom ,\nthe following gas well came on line at approximately 10 : 00 am this morning :\ncounterparty well meter volume price\nrincon petroleum corporation koontz - kutcha gu # 1 9673 300 mmcf / d 100 % gas\ndaily hsc less $ 0 . 12\nplease put in a ticket in sitara to reflect the aforementioned information .\nshould you have any questions , please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.084+0000", "entityId": 1629, "properties": {"text": "Subject: re : sales to panenergy at exxon clear lake for 2 / 99\nanita . from our conversation today with daren . . . . there should not be a\ndeal in pops for this transaction .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 01 / 14 / 2000\n03 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkimberly vaughn\n01 / 12 / 2000 10 : 27 am\nto : daren j farmer / hou / ect @ ect , anita luong / hou / ect @ ect\ncc :\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\ndaren . i need a deal ticket for this .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 01 / 12 / 2000\n09 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n01 / 07 / 2000 10 : 25 am\nto : kimberly vaughn / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nkim ,\nplease let me know if you have a chance to revisit this issue for meter 4045\nfor 2 / 99 . . . . . . . . . . . . . . . . . . . . . let me know if you have questions . . thanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 01 / 07 / 2000 10 : 22\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n11 / 16 / 99 12 : 01 pm\nto : kimberly vaughn / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nwe need to revisit this issue again . there is an exception at meter 4045\nfor 2 / 99 . in order to clear this up , i need an ect transport delivery at\nthis meter for the 34000 mmbtu . see july ' s allocations in pops for\nreference . the displacement gas were scheduled as a delivery .\ni would like to have this issue resolved as soon as possible so that we\ncould clear this off our list .\nlet me know if you have questions .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 11 / 16 / 99 11 : 53 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n05 / 25 / 99 03 : 36 pm\nto : kimberly vaughn / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nkim ,\nect sold 34 , 000 mmbtu to panenergy at meter 4045 for 2 / 99 . i ' ve verified w /\nrebekah seales and she has determined that ect did sell this gas to\npanenergy . therefore , we need to show a delivery at this meter for panenergy\nor whomever panenergy is selling this gas to at this point in pops . i need a\ndelivery at this meter in order for this meter to balanced .\nplease take a look at this . call me if you have questions\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 25 / 99 03 : 08 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebekah e seales\n05 / 25 / 99 03 : 04 pm\nto : anita luong / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , howard b camp @ ccmail\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nanita :\ni did some additional research regarding the sale to panenergy at meter 4045\non 2 / 27 and 2 / 28 . this sale was a brokered deal .\ndate purchase volume sale\n2 / 27 & 2 / 28 phillips gas mkt . ( # 55397 ) 10 . 000 mmbtu panenergy marketing\n( # 64749 ) 10 . 000 mmbtu\n2 / 27 & 2 / 28 superior natural gas ( # 57065 ) 7 . 000 mmbtu panenergy marketing\n( # 64749 ) 7 . 000 mmbtu\nect did not transport this gas away from meter 4045 . if this gas was\ntransported away from meter 4045 , it would have been a transaction between\npanenergy marketing ( or whomever they sold the gas to at that point ) and\nhpl . hope this information helps .\nrs\nanita luong\n05 / 25 / 99 01 : 31 pm\nto : rebekah e seales / hou / ect @ ect\ncc :\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\njust want to check see if you have a chance to look at this . . . . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 25 / 99 01 : 30 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebekah e seales\n05 / 24 / 99 03 : 31 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : sales to panenergy at exxon clear lake for 2 / 99\nanita :\ni ' m working on renominating back to 5 / 1 to the pipeline for the current\nmonth . i ' ll work on this first thing tomorrow morning . please let me know\nif you need the information sooner .\nthanks !\nrs\nanita luong\n05 / 24 / 99 02 : 10 pm\nto : rebekah e seales / hou / ect @ ect\ncc :\nsubject : sales to panenergy at exxon clear lake for 2 / 99\nadditional info i see in path manager . . . . . . . . . . . . . . . . . .\nseems like this is a brokered deal , ect is buying 20 , 000 mmbtu from philips\ngas and 14 , 000 mmbtu from superior gas and sell the total 34 , 000 mmbtu to\npanenergy .\nmy question is then who is paying for the tranport of this gas , ect or\npanenergy ? we need to schedule for the delivery of this gas at meter 984045 .\nplease let me know\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.089+0000", "entityId": 1630, "properties": {"text": "Subject: re : document\nsamantha ,\nplease schedule an interview with this candidate , mark mccoy 713 - 369 - 9281\nfor monday january 24 th .\ni would like him to interview with daren farmer , gary hanks , and yourself . i\nhave already met with him outside\nof the office . he will also need some sort of briefing on benefits if that\nis possible . please let me know if this\nis ok . also keep in mind that he is currently employed and has limited\nflexibility . i believe that the date , january\n24 th is a good day for him . i will be out of the office on jury duty but i\ndon ' t think that will be a problem . thanks ,\npat clynes 35578\nresume is attached .\nmmccoy 3617 @ aol . com on 01 / 16 / 2000 07 : 29 : 52 pm\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : document\nmr . clynes :\nhere is the document you requested . let me know if you have any questions or\nrequire any additional information .\nsincerely ,\nmark mccoy\n713 / 369 - 9281\n- mresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.093+0000", "entityId": 1631, "properties": {"text": "Subject: hpl nomination for january 18 , 2000\n( see attached file : hplol 18 . xls )\n- hplol 18 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.098+0000", "entityId": 1632, "properties": {"text": "Subject: new analysts\ni received a call from shannon last wednesday ( 1 / 12 ) , requesting what our\nneeds might be for new analysts who will be starting in 2 / 00 . shannon and i\nhave talked specifics , but if you have an interest , please call shannon asap\n@ x 33853 to discuss the specifics .\nit has been some time since we have put a new analyst into logistics - texas ,\nbut the other groups have taken new ones in the past . i ' m just asking you to\nthink about it , and let me and shannon know . thanks .\nshannon : i do have an analyst rotating 6 / 1 from the texas risk team . i\nmight be interested in putting another one into the group , and it ' s not a bad\nidea to start now with training . can you let me know who you still need to\nplace ? ? ? i would like to look at their resumes and talk with someone who\ninterviewed them . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.103+0000", "entityId": 1633, "properties": {"text": "Subject: 2000 plan allocations\nattached is a file with my allocations of texas operations to be used for the\n2000 plan . however , please note that their are some problems / clean - up that\nneeds to occur that i could not do .\nas you requested , i have taken the % we allocated to gas assets last year and\nput the appropriate % ' s into the appropriate group within gas assets as you\nhave broken them out . please note : gas network trading is the same group as\nst gastexas ( group 8 ) - tom martin is responsible for both . i have indicated\nthe appropriate % ' s into the new buckets , but i was not able to zero out the\nst gastexas group as the cells are protected . consequently , the total column\nindicates that i have allocated over 100 % . the # ' s in gas network trading\nare correct . will you please delete st gastexas so that no one will allocate\nto it ?\nwhen the plan allocations were submitted last year , there was an error in\nrcl 160 - volume management . i thought we corrected it but it is still\nshowing up incorrectly . please move the 8 % under east origin to st gaseast .\ni was not able to correct this either as the cells have been protected .\nplease note : this is not a change from the plan , but a correction of an\nerror .\ni would appreciate you correcting these things for me , and forwarding the\ncorrected version back to me for my records . i will be working with our\nmanagement team on the 1 / 00 allocations , and will provide you those by\nfriday . please call me if you have any questions . thanks .\nmanagement team : please review , and work on how we should be allocated for\n1 / 00 . we have changes for denver business , project sally , newco , etc . we\nwill discuss in the staff meeting on tuesday , 1 / 18 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.107+0000", "entityId": 1634, "properties": {"text": "Subject: global risk management operations\nrecognizing enron \u0001 , s increasing worldwide presence in the wholesale energy\nbusiness and the need to insure outstanding internal controls for all of our\nrisk management activities , regardless of location , a global risk management\noperations function has been created under the direction of sally w . beck ,\nvice president . in this role , sally will report to rick causey , executive\nvice president and chief accounting officer .\nsally \u0001 , s responsibilities with regard to global risk management operations\nwill mirror those of other recently created enron global functions . in this\nrole , sally will work closely with all enron geographic regions and wholesale\ncompanies to insure that each entity receives individualized regional support\nwhile also focusing on the following global responsibilities :\n1 . enhance communication among risk management operations professionals .\n2 . assure the proliferation of best operational practices around the globe .\n3 . facilitate the allocation of human resources .\n4 . provide training for risk management operations personnel .\n5 . coordinate user requirements for shared operational systems .\n6 . oversee the creation of a global internal control audit plan for risk\nmanagement activities .\n7 . establish procedures for opening new risk management operations offices\nand create key benchmarks for measuring on - going risk controls .\neach regional operations team will continue its direct reporting relationship\nwithin its business unit , and will collaborate with sally in the delivery of\nthese critical items . the houston - based risk management operations team under\nsue frusco \u0001 , s leadership , which currently supports risk management activities\nfor south america and australia , will also report directly to sally .\nsally retains her role as vice president of energy operations for enron\nnorth america , reporting to the ena office of the chairman . she has been in\nher current role over energy operations since 1997 , where she manages risk\nconsolidation and reporting , risk management administration , physical product\ndelivery , confirmations and cash management for ena \u0001 , s physical commodity\ntrading , energy derivatives trading and financial products trading .\nsally has been with enron since 1992 , when she joined the company as a\nmanager in global credit . prior to joining enron , sally had four years\nexperience as a commercial banker and spent seven years as a registered\nsecurities principal with a regional investment banking firm . she also owned\nand managed a retail business for several years .\nplease join me in supporting sally in this additional coordination role for\nglobal risk management operations .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.112+0000", "entityId": 1635, "properties": {"text": "Subject: 18 noms to city gates\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 18 / 2000\n07 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 17 / 2000 11 : 12 : 54 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 18 noms to city gates\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.117+0000", "entityId": 1636, "properties": {"text": "Subject: reliant energy entex transaction # 4\njust fyi ,\nthe following transaction expires february 29 , 2000 :\ntransaction # 4\n5 , 000 / day\nprice = 2 . 71 fixed\nnote : this volume will roll up into transaction # 1 ( excess volume priced at\nindex + . 769 )\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.122+0000", "entityId": 1637, "properties": {"text": "Subject: 12 / 99 k ' s needed and 1 / 2000 k ' s needed\ndaren , can you help me with placing k ' s @ the below listed meters ? i don ' t\nknow if these deals should be rolled or if new ones were set up .\ni ' ll need a k @ each specified meter for the month following the noted month\nthat had a k @ it .\nthanks in advance for your help .\n- jackie -\n3 - 9497\n98 - 1534 ( delivery ) last flowed w / a k was 12 / 99 on 215 k sitara # 95541 ( stop\ndate 12 / 99 )\n98 - 6563 ( receipt ) last flowed w / a k wasl 1 / 99 on 203 k sitara # 26511 , then new\nsitara # 130913 ( which was killed ) evergreen was checked on this one .\n98 - 6614 ( receipt ) sitara # 130917 - this deal ' s stop date is 2 / 29 / 2000 . the\ndeal amount is for 1487 mmbtu ' s but the estimated vols . are \" 0 \" . did not\nwant to change anything in sitara without your knowledge .\n98 - 9758 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 133088 ( stop\ndate 12 / 99 ) evergreen was checked on this one .\n98 - 9651 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 51491 ( stop\ndate 12 / 99 ) new deal # 136744 ( deal killed )\n98 - 9789 ( receipt ) last flowed w / a k was 11 / 99 on 012 - 41500 - 02 - 203 sitara\n# 108246 ( stop date 11 / 99 )\n98 - 5789 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 26569\n( stop date 12 / 99 )\n98 - 6855 ( receipt ) last flowed w / a k was 12 / 99 on 215 k sitara # 94120 ( stop\ndate 12 / 99 )\n98 - 6725 ( receipt ) last flowed w / a kwas 12 / 99 on 215 k sitara # 138332 ( stop\ndate 12 / 99 )\n98 - 9676 ( receipt ) last flowed w / a k was 12 / 99 on 215 k sitara # 95912 ( stop\ndate 12 / 99 )\n98 - 4548 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 94147 ( stop\ndate 12 / 99 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.127+0000", "entityId": 1638, "properties": {"text": "Subject: re : meter 989614\nheads up on this . they will be putting in a firm ticket starting in january .\ni have explained what a problem this causes your group , and we are working on\na solution . unfortanuately , this whole thing was missed , until susan started\nasking for a ticket .\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 01 / 18 / 2000 03 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 18 / 2000 03 : 29 pm\nto : julie meyers / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\ncc :\nsubject : re : meter 989614\nyes ,\nvlt\njulie meyers\n01 / 18 / 2000 03 : 11 pm\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : re : meter 989614\nwill this be for january forward ?\nvance l taylor\n01 / 18 / 2000 03 : 08 pm\nto : julie meyers / hou / ect @ ect\ncc : susan d trevino / hou / ect @ ect , pat clynes / corp / enron @ enron , melissa\ngraves / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect\nsubject : re : meter 989614\njulie ,\ni have received the partially executed committed reserves contract from\netoco . the contract not only has meter # 9614 attached to it but also meters\n9651 & 9672 . we will generate a ticket to be entered into sitara asap .\nvlt\nx 3 - 6353\njulie meyers\n01 / 18 / 2000 02 : 39 pm\nto : vance l taylor / hou / ect @ ect\ncc : susan d trevino / hou / ect @ ect , pat clynes / corp / enron @ enron , melissa\ngraves / hou / ect @ ect\nsubject : meter 989614\nwhat is the status of this meter . this was the deal that was under etoco .\nhave we gotten a ticket setup yet ?\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 01 / 18 / 2000 02 : 38\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan d trevino\n01 / 18 / 2000 11 : 17 am\nto : julie meyers / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : meter 989614\njulie , will there be a new deal / contract set up for this meter ? there are\nvalid actuals for 1 / 1 and 1 / 2 and i need to allocate these volumes to a\ncontract otherwise i will keep getting an allocation exception error .\nthanks , susan .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 01 / 18 / 2000\n11 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan d trevino\n01 / 12 / 2000 11 : 20 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : meter 989614\njulie ,\nper our conversation yesterday , the deals / contracts associated with this\nmeter have been terminated as of 12 / 31 / 99 . please let me know what the\nstatus is on this matter because the meter is still active and flowing and\nthere is no contract to allocate to .\nthanks ,\nsusan\nx 35796", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.132+0000", "entityId": 1639, "properties": {"text": "Subject: re : 12 / 99 k ' s needed and 1 / 2000 k ' s needed\ndaren ,\nthank you for your prompt attention to this matter . just a reminder for you\nto roll the first six days of december 1999 for 98 - 9789 sitara # 108246 .\ncarlos / tom ,\nplease apprise when you ' ve completed your research with producer services\nreferencing the below meters that daren have referred to as \" contract\nterminated \" .\ndaren j farmer\n01 / 18 / 2000 12 : 38 pm\nto : jackie young / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , tom\nacton / corp / enron @ enron\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect\nsubject : re : 12 / 99 k ' s needed and 1 / 2000 k ' s needed\nsee notes in red below . in each case where the contract has been terminated ,\ntom and / or carlos will need to get with producer services to determine what\nwe need to do ( set up a gtc , renegotiate the term deal , etc ) .\nd\njackie young\n01 / 18 / 2000 11 : 24 am\nto : daren j farmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect\nsubject : 12 / 99 k ' s needed and 1 / 2000 k ' s needed\ndaren , can you help me with placing k ' s @ the below listed meters ? i don ' t\nknow if these deals should be rolled or if new ones were set up .\ni ' ll need a k @ each specified meter for the month following the noted month\nthat had a k @ it .\nthanks in advance for your help .\n- jackie -\n3 - 9497\n98 - 1534 ( delivery ) last flowed w / a k was 12 / 99 on 215 k sitara # 95541 ( stop\ndate 12 / 99 ) new deal added for january # 151694\n98 - 6563 ( receipt ) last flowed w / a k wasl 1 / 99 on 203 k sitara # 26511 , then new\nsitara # 130913 ( which was killed ) evergreen was checked on this one .\ncontract terminated .\n98 - 6614 ( receipt ) sitara # 130917 - this deal ' s stop date is 2 / 29 / 2000 . the\ndeal amount is for 1487 mmbtu ' s but the estimated vols . are \" 0 \" . did not\nwant to change anything in sitara without your knowledge . this is a good\ndeal . for the first part of the month , you should nom the zero to pops .\nbeginning tomorrow , we will have volume out there on this ticket .\n98 - 9758 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 133088 ( stop\ndate 12 / 99 ) evergreen was checked on this one . contract terminated .\n98 - 9651 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 51491 ( stop\ndate 12 / 99 ) new deal # 136744 ( deal killed ) contract terminated .\n98 - 9789 ( receipt ) last flowed w / a k was 11 / 99 on 012 - 41500 - 02 - 203 sitara\n# 108246 ( stop date 11 / 99 ) deal rolled for six days to cover flow .\n98 - 5789 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 26569\n( stop date 12 / 99 ) contract terminated .\n98 - 6855 ( receipt ) last flowed w / a k was 12 / 99 on 215 k sitara # 94120 ( stop\ndate 12 / 99 ) deal was rolled for jan .\n98 - 6725 ( receipt ) last flowed w / a kwas 12 / 99 on 215 k sitara # 138332 ( stop\ndate 12 / 99 ) this was a spot deal . we will have to renegotiate the price to\ncover the flow . i will work with craig faulbaum on this .\n98 - 9676 ( receipt ) last flowed w / a k was 12 / 99 on 215 k sitara # 95912 ( stop\ndate 12 / 99 ) new deal 151669 for jan\n98 - 4548 ( receipt ) last flowed w / a k was 12 / 99 on 96026573 sitara # 94147 ( stop\ndate 12 / 99 ) new deal 151666 for jan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.137+0000", "entityId": 1640, "properties": {"text": "Subject: 19 th noms on copanos\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 18 / 2000\n11 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 18 / 2000 10 : 48 : 53 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 19 th noms on copanos\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.143+0000", "entityId": 1641, "properties": {"text": "Subject: hl & p\nthe most recent numbers", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.148+0000", "entityId": 1642, "properties": {"text": "Subject: 2000 plan allocations\ni ' ve given up on the spreadsheet - i couldn ' t insert the column . so this is\nmy allocation . would you please update the spreadsheet for these changes and\nsend me a clean copy ? i want o distribute to my management team for their\nrecords . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.153+0000", "entityId": 1643, "properties": {"text": "Subject: review texas budget meeting\nplease plan to attend a meeting tuesday the 25 th from 4 - 5 pm reviewing the\ntexas budgets . you will receive hard copies of the budgets tomorrow . please\nreview them and hold all questions and concerns until the meeting . if at all\npossible please forward your questions to me so that i may compile a list to\nbe delivered to lisa cousino tuesday morning .\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.161+0000", "entityId": 1644, "properties": {"text": "Subject: 2000 plan allocations and january allocations\nplease read brian ' s memo below . we spoke briefly about this yesterday in the\nstaff meeting . i have copied each of you on a memo earlier today where i\nhave provide the 2000 plan allocations . please note that we were not making\nchanges to the plan , only breaking the gas asset group into smaller buckets .\nany chnages which have been made since the budget was approved are not\nreflected on the allocation sheet . rather they are reflected on the 1 / 00\nallocations , and they will require explanations each month as all variances\nfrom plan do . this includes new rc ' s which have set up , etc .\ni need each of you to review the 2000 plan allocations as i submitted them\nearlier today , and provide an accurate allocation of your rc for 1 / 00 . what\nhas your group spent their time on in 1 / 00 ? ? ? please be aware that we could\nreceive questions from the commercial teams , so document your logic . some\nthings to consider :\nproject sally - allocate to gas network development\nproject hurricane - allocate to ? ? ? ? - ( i have a call into jim coffey )\ndenver business - allocate to rocky mountain asset originations\nif you have some other activities and your not sure where to allocate them ,\neither call me , jackie nelson or jim coffey .\none other thing to note : the network trading group will be further broken\ndown into 2 groups : trading ( tom martin and jim schwieger ) and\ntransportation ( ed gottlob ) . although the attached worksheet does not\ninclude this breakdown , please include it in yours .\ni would like you allocations back to me no later than thursday , 1 / 20 @\n3 : 00 pm . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 01 / 19 / 2000\n05 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian heinrich\n01 / 14 / 2000 05 : 07 pm\nto : robert superty / hou / ect @ ect , brent a price / hou / ect @ ect , susan\nharrison / hou / ect @ ect , brenda f herod / hou / ect @ ect , bob shults / hou / ect @ ect ,\nsheila glover / hou / ect @ ect , scott pleus / hou / ect @ ect , d todd hall / hou / ect @ ect ,\nmary solmonson / hou / ect @ ect , stephen p schwarz / hou / ect @ ect\ncc : sally beck / hou / ect @ ect , lisa b cousino / hou / ect @ ect\nsubject : 2000 plan allocations and january allocations\nthe attached files contain the allocation percentages for 2000 plan , january\n2000 actuals and a description of the new assets teams .\nplease update the 2000 plan file to reflect the following changes to the\nassets team . the assets team is now broken out into the following \" groups \"\nwhich are described in the attached word document :\nrc # team name rc owner\nthe 2000 plan file now has columns for the above teams , please take the\npercentage that was previously allocatated to assets ( which is in the\nexecutive column ) and reallocate it among all of the teams except rocky\nmountain asset originations that you support . i have already inserted the\nnew percentages to be used for rocky mountain , which are based on a portion\nof the upstream origination allocation that was determined by the assets\ngroup . consequently i have changed the allocation percentage for upstream\norigination . i have also protected all of the cells except the ones you need\nto change to avoid confusion .\ni also need you to update the percentages to be used for january 2000\nactuals . i have added the new rc ' s that we have set up since plan has been\ncomplete , so please make sure you have each rc 100 % allocated .\ni will need the updated plan percentages returned to me by noon wednesday\njanuary 19 th , and the updated january 2000 percentages returned to me by end\nof day friday january 21 st .\nthanks for your help in getting these updated .\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.167+0000", "entityId": 1645, "properties": {"text": "Subject: re : interview itinerary\ndaren and gary ,\ni will be at jury duty on monday . i hope to be back by this time but you\nnever know . thanks , pat\ngail francis @ ect\n01 / 19 / 2000 09 : 37 am\nto : mmccoy 3617 @ aol . com\ncc : pat clynes / corp / enron @ enron , samantha ray / hou / ect @ ect , alexus\nrhone / corp / enron @ enron\nsubject : interview itinerary\nhi mark , this is your itinerary for monday . please let me know if you have\nany questions or conflicts . looking forward to meeting you . thanks and good\nluck !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.172+0000", "entityId": 1646, "properties": {"text": "Subject: reliant energy - entex transport imbalance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 19 / 2000\n04 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael w morris @ ect\n01 / 19 / 2000 03 : 01 pm\nto : howard b camp / hou / ect @ ect\ncc : ami chokshi / corp / enron @ enron , janet h wallis / hou / ect @ ect , james i\nducote / hou / ect @ ect , brenda f herod / hou / ect @ ect , eric bass / hou / ect @ ect , pat\nclynes / corp / enron @ enron , george grant / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\nrita wynne / hou / ect @ ect\nsubject : reliant energy - entex transport imbalance\nhoward ,\nthis memo is regarding the 91 , 297 mmbtu imbalance that was created in april\nof 1999 on\ntransport contract # 012 - 41991 - 02 - 004 . the transport delivery off hplc was\nshorted to keep\nentex whole on a minimum purchase from ena . originally this transport\nimbalance was to be cleared\nthe next month in may of 1999 . some of the imbalance was cleared in may of\n1999 , but 91 , 297 mmbtu\nstill remains as a imbalance on this contract . we need to monitor the ifhsc\nindex for the upcoming months\nso that when one is compatible with the ifhsc index of april of 1999 we can\nclear this imbalance . we will\nneed to allocated 91 , 297 mmbtu extra to the transport . this will reduce the\npurchase from ena by 91 , 297\nmmbtu for that month . i need you to watch over whoever is doing the reliant\nenergy - entex allocation to\nmake sure this happens .\nthanks ,\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.177+0000", "entityId": 1647, "properties": {"text": "Subject: cut 20 / d into midcon\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 19 / 2000\n08 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 19 / 2000 08 : 24 : 42 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : cut 20 / d into midcon\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.182+0000", "entityId": 1648, "properties": {"text": "Subject: carthage plant imbalance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 19 / 2000\n03 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndscottl @ . com on 01 / 19 / 2000 03 : 41 : 11 pm\nto : nelson ferries / corp / enron @ enron , \" -\n* willie . shannon @ dvn . com \" , ami\nchokshi / corp / enron @ enron , gregory schockling / corp / enron @ enron\ncc : \" - * williams , mary \"\nsubject : carthage plant imbalance\ni ' ve discussed the carthage plant imbalance with chad cass at duke energy\n( carthage plant operator ) and willie shannon at devon energy and here is what\ni ' ve learned . duke and devon met last fall to discuss the imbalance , which\naccording to devon was approximately 240 , 000 due to duke at 8 / 31 / 99 . devon\nacknowledged that an imbalance existed but didn ' t think it was that high .\nboth\nparties seemed to take the position that the other side needed to prove them\nwrong . according to duke the imbalance grew by 120 , 000 in september , 16 , 000\nin\noctober , and another 12 , 000 in november ( all round numbers ) bringing the total\nto approximately 395 , 000 through the end of november . based on current month\nestimates , duke thinks january sales are 1 , 000 - 2 , 000 / day higher than\nproduction , and would like to see a cut in sales of 4 , 000 / day effective friday\n1 / 21 / 00 in order to balance for the month of january . again devon disagrees\nwith this daily overage , based on their production estimates , but since they\nrecognize an imbalance exists , willie @ devon has agreed to reduce the volume\navailable for sale by 4 , 000 / day effective friday the 21 st . this will reduce\nthe amount of \" excess \" gas ( gas daily - priced ) that enron has available to sell\nat carthage .\nadditionally , beginning february lst duke requests payback to the plant of\n5 , 000 / day , continuing until the imbalance is worked off . devon should reduce\ntheir lst of the month availabe volume by 5 , 000 / d to accomplish this , and\nenron\nneeds to verify if that reduction is factored into the numbers when they are\nsetting up february activity .\na key point to this imbalance issue , and one that i believe all of the parties\nagree on , is that ces , now enron , purchases devon ' s carthage gas at the\ntailgate of the plant , so any production - related imbalance is between devon\nand\nthe plant ( duke ) and make - up volumes only reduce what enron receives from\ndevon . enron is not buying the gas from devon and turning around and paying\nback a historical imbalance . however , since ces ( and now enron ) is set up as\ndevon ' s agent at carthage , duke communicates the imbalance information and\ncoordinates make - up arrangements with enron . enron in turn needs to verify\nwith devon that devon has adjusted their available volumes to reflect any\nmake - up . hopefully once actual make - up commences , devon and duke will strive\nto reconcile to an actual imbalance that they both agree on .\nplease call me if you have any questions @ ( 713 ) 693 - 2581 .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.187+0000", "entityId": 1649, "properties": {"text": "Subject: project hurricane / bridgeline status\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 01 / 20 / 2000\n02 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : tommy j yanowski 01 / 20 / 2000 12 : 22 pm\nto : john tollefsen , arshak sarkissian , keith dziadek / hou / ees @ ees , scott\nmills , stephen schwarz , michael eiben / hou / ect @ ect , brenda herod , inja chun ,\ndave nommensen , brent a price / hou / ect @ ect , scotty gilbert , jim\nfussell / hou / ect @ ect , steve venturatos / hou / ect @ ect , connie sutton / hou / ect @ ect ,\ndonna consemiu / hou / ect @ ect , antoine v pierre / hou / ect @ ect , mary solmonson ,\nsusan harrison / hou / ect @ ect , edward de\nvalcourt / enron _ development @ enron _ development , jim coffey / hou / ect @ ect , julie\nferrara / hou / ect @ ect , romeo d ' souza / hou / ect @ ect , ,\nwrighcs @ texaco . com , robert d morgan / hou / ect @ ect , wanda curry , james\nmckay / hou / ect @ ect\ncc : harold bertram / hou / ect @ ect , philippe bibi , beth perlman , robert\nshiring / hou / ect @ ect , shonnie daniel / hou / ect @ ect , sally beck\nsubject : project hurricane / bridgeline status\nhere is a quick status and list of to do ' s related to setting up the new j . v .\nbetween enron & texaco which will be combining the lrc and bridgeline\npipeline systems :\nsummary : the lrc & bridgeline pipeline systems will be combined under the\nname of bridgeline llc . ownership in the jv will be split 60 % texaco & 40 %\nenron . bridgeline gas marketing llc will be the entity that will be trading\non the pipelines under the new j . v . contracts and service agreements are in\nthe process of being drafted .\nenron will be providing the trading and commercial operations systems to\nsupport this j . v . texaco will be providing the scada system . i understand\nthat accounting is still being discussed . the trading , risk , & perhaps\nscheduling personnel for this jv will be initially relocated to the 21 st\nfloor of the enron building and will eventually move to probably the 3 allen\ncenter once a more permanent spot can be built out . trading for the new jv\nwill start in early february for march production .\nto do ' s :\naccounting : i ' ve asked jim coffey to set up two work orders to capture it\ntransition and ongoing costs . texaco is also trying to set up a meeting next\nmonday to step through the accounting flow so that we are all on the same\npage and make sure there is nothing that will fall through the cracks .\npc ' s : jim fussell is in the process of ordering the pc ' s for this jv at my\nrequest . i will need the work order numbers to track these costs .\nnetworks : i ' m coordinating with arshak and his team to make sure that the\nvoice and data networks are in place for eb 21 . once the more permanent spot\nis nailed down we will then need to do the same for that location . a\ncombination of trader phones , lucent phones , stenfons and amtels have been\nrequested .\nlocation on eb 21 : i ' m waiting on a call back from chris larson from\nfacilities to find out what locations on 21 will be assigned to the new jv .\ncurrently half of the floor is empty but they are set up with high wall\ncubes . there may need to be some build out for the traders to low wall\ncubes . we can ' t set up the pc ' s , phones , amtels , etc until this is done .\ndata conversion : i have requested from texaco the contract , deal and\nmeter / facility information we will need to set up in our systems to begin\ntrading for march production . it may be possible to get an electronic dump\nof this data from texaco if enron defines the data fields that we will need .\nwe also need to set up the trading entities and portfolios . i will also need\nto know who will need to have access to this data so that we can set up the\nsystem security . i have received the names of the traders but i don ' t know\nwho else will need access .\ninterface between enron ' s unify pop ' s application and bridgeline ' s scada\napplication : i ' ve asked dave nommensen from enron to get with carryn wright\nfrom texaco to begin the process of defining the interface between the two\napplications and estimate the time to build and implement the interface .\nthere will also need to be a transition plan put in place where lrc ' s\nrtu ' s / efm is redirected to the bridgeline scada system . in the meantime\nthere will be two scada systems and perhaps two gas controls until everything\nis merged into one . this will probably mean some manual interfaces between\npop ' s and scada for confirmed noms and efm volumes until the transition is\ncomplete .\nscada communications : currently the lrc rtu ' s / efm communicate back to\nenron ' s scada system via leased lines . bridgelines rtu ' s communicate back to\nthem via a microwave system . the new jv could save on communications costs\nby switching lrc ' s rtu communication to the microwave . perhaps this is best\ndone as a part of the scada transition .\naccounting data needed by texaco for royalty purposes : this data needs to be\nbetter defined . i will follow up with john ledoux from texaco to get this\nprocess started .\nhourly volumes : bridgeline currently has one utility customer who may be\nbilled on an hourly basis depending on the amount of swing . we need to talk\nthrough this process to see what enhancements may be needed . at least\ninitially there will need to be some manual processes in place to support the\nbilling for this one customer .\nplease let me know if you ' d like to meet on any of these topics . i can have\nmy assistant set up the meeting if needed . in the mean time i can be reached\nat 713 - 853 - 6858 . thanks ! - tommy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.192+0000", "entityId": 1650, "properties": {"text": "Subject: entex transaction 7\nfor december 1999 , since the volumes for transaction 7 ( contract 306 ) were\nactualized at 259 , 093 , which is greater than the max monthly of 248 , 000 ,\nplease reallocate the excess volumes to transaction 10 ( contract 301 ) at\ni + . 769 .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.196+0000", "entityId": 1651, "properties": {"text": "Subject: 21 st changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 20 / 2000\n10 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 20 / 2000 10 : 36 : 49 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 21 st changes\n( see attached file : egmnom - jan . xls )\n- egmnom - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.201+0000", "entityId": 1652, "properties": {"text": "Subject: re : ces deal summary\nami ,\nplease add rhonda robinson and howard camp to the list . the items i would\nlike addressed are as follows :\nvm - allocations :\n1 . list of meters and allocation structures - callouts , swings , etc .\n2 . listing of external meter contacts\n3 . copies of expense contracts\n4 . overview of the transactions - this may not be accomodatable in this\nmeeting , but an overview of some of the transactions , i . e . from deal to\nsettlements\n5 . ensure all expense contracts are set up\n6 . discussion of any impact to any of the major industrial customers , i . e .\nentex , equistar , hl & p\nvm - transport\n1 . imbalances\n2 . # of shippers , contracts , invoices\n3 . any special transactions that need to be handled via the settlements\nprocess\n4 . copies of contracts\n5 . customer contact listing for each account\ni realize that all of these things may not be addressed in this meeting , but\nthey have to be answered by someone very soon in order for vm to do our\njobs . hopefully , if the ces representative cannot answer the questions , he\ncan direct me to someone who can and quickly . let me know if you have any\nquestions . thanks for your role in this meeting .\nfrom : ami chokshi @ enron 01 / 20 / 2000 10 : 06 am\nto : brenda f herod / hou / ect @ ect , dscottl @ . com , daren j\nfarmer / hou / ect @ ect , rita wynne / hou / ect @ ect , lisa csikos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , eric bass / hou / ect @ ect\ncc : yvette g connevey / corp / enron @ enron , pamela chambers / corp / enron @ enron\nsubject : ces deal summary\nthe meeting has been time has been changed to 11 : 30 am - 1 : 00 pm . please let me\nknow if you ' ll be able to attend and / or if there will be any others\nattending , so we can have an accurate head count for lunch .\nami\n3 - 9272\nthe following meeting is to discuss the new deals that have come to the texas\ndesk from ces\ntopic : ces deals summary\ndate : friday , january 21\ntime : 2 : 00 pm - 3 : 00 pm\nlocation : 3749\nplease e - mail me prior to friday with any specific questions that you may\nwant to address .\nthank you ,\nami\n3 - 9272", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.206+0000", "entityId": 1653, "properties": {"text": "Subject: valero - - meter 8018\nthe plant went down at 0001 hrs this morning . my information is they moved\ntheir turnaround up and will be down for as long as 3 weeks . please let us\nknow how the economics should be handled - - - - buyback , force majure , no deal ,\nor what .\nthanks\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.211+0000", "entityId": 1654, "properties": {"text": "Subject: rescheduling of usecase analysis for enom mtg .\nplease let me know if you would be available for the above mtg on tuesday ,\njan . 25 th from 1 : 00 - 4 : 00 asap .\nthanks ,\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary weatherstone / hou / ect on 01 / 21 / 2000\n11 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary weatherstone on 01 / 21 / 2000 11 : 30 : 15 am\nto : inja chun / hou / ect @ ect , paul f poellinger / hou / ect @ ect , dave\nnommensen / hou / ect @ ect , kevin montagne / hou / ect @ ect , michael\nguadarrama / hou / ect @ ect , robert superty / hou / ect @ ect , randall l\ngay / hou / ect @ ect , george smith / hou / ect @ ect , katherine l kelly / hou / ect @ ect ,\nedward terry / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc : jay webb / hou / ect @ ect , heather choate / hou / ect @ ect , yvette g\nconnevey / corp / enron @ enron , cindy cicchetti / hou / ect @ ect\nsubject : usecase analysis for enom mtg . - cancelled\nthe above referenced meeting that was scheduled for today at 2 : 00 - 5 : 00 in\neb 2601 a has been cancelled . i will contact everyone for a time to reschedule\nnext week .\nthanks ,\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary weatherstone / hou / ect on 01 / 21 / 2000\n11 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary weatherstone on 01 / 18 / 2000 05 : 34 : 25 pm\nto : inja chun / hou / ect @ ect , paul f poellinger / hou / ect @ ect , dave\nnommensen / hou / ect @ ect , kevin montagne / hou / ect @ ect , michael\nguadarrama / hou / ect @ ect , robert superty / hou / ect @ ect , randall l\ngay / hou / ect @ ect , george smith / hou / ect @ ect , katherine l kelly / hou / ect @ ect ,\nedward terry / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc : jay webb / hou / ect @ ect , heather choate / hou / ect @ ect , yvette g\nconnevey / corp / enron @ enron , cindy cicchetti / hou / ect @ ect\nsubject : usecase analysis for enom mtg .\nper jay ' s request the above referenced meeting has been scheduled for friday ,\njanuary 21 st at 2 : 00 - 5 : 00 in eb 2601 a .\nplease plan on attending . if you cannot attend , please let me know asap .\nthanks ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.216+0000", "entityId": 1655, "properties": {"text": "Subject: gmt . inc .\ntom ,\nplease create a spot ticket for gas that commence flowing on 1 / 14 / 00 at 8 : 30\nam . the pertinent information is as follows :\ncounterparty mtr . volume price\ngmt , inc . 9814 500 mmbtu / d 100 % if / hsc\nshould you have any questions , please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.222+0000", "entityId": 1656, "properties": {"text": "Subject: re : gmt . inc .\noooops ! how about 100 % if / hsc less $ 0 . 10\nvlt\nvance l taylor\n01 / 21 / 2000 01 : 56 pm\nto : tom acton / corp / enron @ enron , carlos j rodriguez / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , brian m riley / hou / ect @ ect\nsubject : gmt . inc .\ntom ,\nplease create a spot ticket for gas that commence flowing on 1 / 14 / 00 at 8 : 30\nam . the pertinent information is as follows :\ncounterparty mtr . volume price\ngmt , inc . 9814 500 mmbtu / d 100 % if / hsc\nshould you have any questions , please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.227+0000", "entityId": 1657, "properties": {"text": "Subject: pat - out for jury duty\ni am out of the office on monday for jury duty . in my absence , charlotte\nhawkins will be the contact for the texas desk\nlogistics group . she will attend any meetings while i am out and is\nresponsible for our group ( we will rotate this backup\nrole among the seniors of the group ) . i can be paged at ( 713 ) 708 - 0117 .\nthanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.232+0000", "entityId": 1658, "properties": {"text": "Subject: meter 1428 - brandywine / dupont and beamont methanol\nmy contact at beaumont methanol asked me to tell everybody in our shop the\nfollowing : to clarify whom to contact about the nomination and scheduling\nfor beaumont methanol at meter # 1428 .\nfirst some background : we feed beaumont methanol through a meter station\nthat we own and control , but which also feeds brandywine / dupont . in fact ,\nthe gas goes through a dupont pipeline header downstream of our meter station\nbefore it gets to beamont methanol . sometimes we are doing business with\nboth beaumont methanol and brandywine / dupont . . . . . but sometime we only do\nbusiness with one of them .\nwhom to call for any nominations and scheduling issues for beaumont methanol :\nbob dorcheus - brandywine / dupont - 281 - 293 - 1789\nchyral hankins - beaumont methanol ( terra ) - 712 - 233 - 6558\nplease do not call the beaumont methanol control room at the plant with\nregard to scheduling and nomination issues . they are out of the loop on\nthese issues . if we call the beaumont methanol control room at the plant\nwith regard to scheduling and nominations issues , it will cause confusion of\nthe type we had yesterday and today .\nobviously , it is of course ok for hpl gas control to call the beaumont\nmethanol plant control room on any emergency operational issues .\nthanks . . . and have a great weekend .\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.238+0000", "entityId": 1659, "properties": {"text": "Subject: 1 / 00 allocations\nattached is the allocation for 1 / 00 for texas operations . let me know if you\nhave any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.243+0000", "entityId": 1660, "properties": {"text": "Subject: monthly clean - up and bridge back for non - edi pipes\nto help avoid unify problems during bid - week we must be keeping up with the\nbusiness on the non - edi pipes throughout the month rather than wait until the\nend of the month to clean - up and bridge back . the it staff has identified\nthis as one of the things logistics could do to help them maintain reasonable\nperformance .\nplease make sure you know the status of each of your pipes and speak to the\nschedulers if you see they aren ' t keeping their data clean and bridged . i\nexpect you to keep on top of this throughout each month .\nwe are asking everyone else to work around our schedule so lets make sure we\ndo our part .\nthanks - bob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.249+0000", "entityId": 1661, "properties": {"text": "Subject: re : valero - - meter 8018\nok , it looks like we are going with the no deal situation . i will zero out\nthe buyback and the sale for the next 2 weeks . let me know if you want to\nhandle it differently .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 01 / 21 / 2000\n12 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 01 / 21 / 2000 11 : 55 am\nto : kenneth seaman / hou / ect @ ect\ncc : dan j hyvl / hou / ect @ ect , joanie h ngo / hou / ect @ ect\nsubject : re : valero - - meter 8018\ni have requested a force majeure letter from valero and they wanted to know\nwhat exact language should be in this letter . dan , can you give me some\nguidance that i can directly forward to valero .\nkenneth seaman 01 / 21 / 2000 09 : 17 am\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , joanie h ngo / hou / ect @ ect\nsubject : valero - - meter 8018\nthe plant went down at 0001 hrs this morning . my information is they moved\ntheir turnaround up and will be down for as long as 3 weeks . please let us\nknow how the economics should be handled - - - - buyback , force majure , no deal ,\nor what .\nthanks\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.255+0000", "entityId": 1662, "properties": {"text": "Subject: phillips petroleum , inc .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 01 / 24 / 2000\n01 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 24 / 2000 09 : 17 am\nto : tom acton / corp / enron @ enron , carlos j rodriguez / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : phillips petroleum , inc .\ntom ,\nplease generate spot tickets in sitara based upon the follow :\n12 / 1 / 99 - 12 / 31 / 99 phillips petroleum company 6673 750 mmbtu / d 100 % if / hsc\nless $ 0 . 17\n01 / 1 / 00 - 01 / 31 / 00 phillips petroleum company 6673 750 mmbtu / d 100 % if / hsc\nless $ 0 . 17\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.263+0000", "entityId": 1663, "properties": {"text": "Subject: february production estimate\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 01 / 24 / 2000\n01 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 21 / 2000 04 : 11 pm\nto : tom acton / corp / enron @ enron , carlos j rodriguez / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject : february production estimate\ntom ,\nsee the attached file listing by trade zone by meter producer services '\nwellhead production estimate for the month of february , 2000 . please be\nadvised that this is a preliminary estimate ! ! ! as i am currently in the\nprocess of collecting noms from a couple of producers . i will alert you of\nany revisions as they arise . additionally , i have highlighted those deals\nthat we expect to come on in february , at such time will we request tickets\nto be entered into sitara .\nshould you have any questions , please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.269+0000", "entityId": 1664, "properties": {"text": "Subject: over $ 50 - - you made it happen !\non wall street , people are talking about enron . at enron , we ' re talking\nabout people . . . our people . you are the driving force behind every success\nthat our company has experienced , including our high - performing stock price ,\nwhich surpassed the $ 50 mark only a few days ago . you made it happen !\nto show our appreciation for your hard work and commitment to enron \u0001 , s\ncontinued success , eligible regular full - time and regular part - time employees\nwho were on the payroll of a wholly - owned enron company at dec . 31 , 1999 will\nreceive 50 enron stock options . a special stock option award certificate and\na copy of the stock plan will be sent to you in the next few weeks .\nabout the stock options grant :\n? the grant was effective jan . 18 , 2000 , therefore , the option grant price is\n$ 55 . 50 .\n? options will have a seven - year term , which means you must exercise these\noptions before seven years have passed .\n? options will vest 25 percent on feb . 28 , 2000 and 25 percent each\nsubsequent january 18 th thereafter until fully vested , as long as you are an\nemployee of enron . this means you may exercise 25 percent of these options\nas early as feb . 28 .\n? this grant is made in accordance with the terms and provisions of the enron\ncorp . stock plans and the award documents , which you will receive in the\ncoming weeks .\ndue to varying international restrictions and legalities , enron employees in\ncertain international locations will receive some other form of recognition .\nyour local management and human resources representative will communicate\nfurther details .\nvisit home . enron . com for additional information . there you can access a list\nof frequently asked questions regarding stock options . and you can view a\nspecial message from ken lay . to access the special message , you must have\nip - tv and a sound card . if you are not able to view ken \u0001 , s message , a\ntranscript is available . if you encounter any technical difficulties , please\ncontact your pc help desk .\nagain , thank you for all you do to make enron a successful global energy and\nbroadband services company and a great place to work .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.274+0000", "entityId": 1665, "properties": {"text": "Subject: over $ 50 - - you made it happen !\non wall street , people are talking about enron . at enron , we ' re talking\nabout people . . . our people . you are the driving force behind every success\nthat our company has experienced , including our high - performing stock price ,\nwhich surpassed the $ 50 mark only a few days ago . you made it happen !\nto show our appreciation for your hard work and commitment to enron \u0001 , s\ncontinued success , eligible regular full - time and regular part - time employees\nwho were on the payroll of a wholly - owned enron company at dec . 31 , 1999 will\nreceive 50 enron stock options . a special stock option award certificate and\na copy of the stock plan will be sent to you in the next few weeks .\nabout the stock options grant :\nthe grant was effective jan . 18 , 2000 , therefore , the option grant price is\n$ 55 . 50 .\noptions will have a seven - year term , which means you must exercise these\noptions before seven years have passed .\noptions will vest 25 percent on feb . 28 , 2000 and 25 percent each subsequent\njanuary 18 th thereafter until fully vested , as long as you are an employee of\nenron . this means you may exercise 25 percent of these options as early as\nfeb . 28 .\nthis grant is made in accordance with the terms and provisions of the enron\ncorp . stock plans and the award documents , which you will receive in the\ncoming weeks .\ndue to varying international restrictions and legalities , enron employees in\ncertain international locations will receive some other form of recognition .\nyour local management and human resources representative will communicate\nfurther details .\nvisit home . enron . com for additional information . there you can access a list\nof frequently asked questions regarding stock options . and you can view a\nspecial message from ken lay . to access the special message , you must have\nip - tv and a sound card . if you are not able to view ken \u0001 , s message , a\ntranscript is available . if you encounter any technical difficulties , please\ncontact your pc help desk .\nto help celebrate this occasion plaza java located in the enron building will\noffer 50 - cent coffee of the day and 50 - cent krispy kreme donuts today only ,\nwhile quantities last .\nagain , thank you for all you do to make enron a successful global energy and\nbroadband services company and a great place to work .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.279+0000", "entityId": 1666, "properties": {"text": "Subject: re : greatwood gas\nthanks , kyle .\ngreatwood is scheduled to come online on feb 1 . the connection only includes\ngw , as rosenberg is not ready yet . so , gw would be about 500 / d . when rb comes\nonline , we may see volumes of about 1500 - 2000 / dy\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.284+0000", "entityId": 1667, "properties": {"text": "Subject: hpl noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 24 / 2000\n09 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 01 / 24 / 2000 09 : 14 : 51 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : hpl noms\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.288+0000", "entityId": 1668, "properties": {"text": "Subject: ces desk move\nassuming the test results are good , the move from the ces desks to the\nappropriate ena desks will take place either wednesday or thursday evening :\nces - im east to ena - im east\nces - im central ena - im central\nces - im texas ena - im texas\nthis move will be done systematically for january forward business . after\nthis move is complete , there should be no active deals remaining on the ces\ndesks . the following is a list of deals that i wanted to bring to your\nattention and review . one of the base assumptions expressed by all was that\nthere were no transport usage tickets booked on the ces desk . this is not\ntrue ; however transport usage tickets will be included in the change over ;\ntherefore this will not be a problem . on the east desk , three desk to desk\ndeals will not be able to be converted ( see below ) . once all ces deals have\nbeen changed to the east desk , i would imagine that these three desk to desk\ndeals need to be killed .\nplease advise if there are any questions regarding the desk move . if any\ndesk prefers to leave january as is and have deals moved february forward ,\nmanual deal entry will be involved ( ending the deals as of 01 / 31 / 99 on the\nces desk and creating a new deal on the appropriate physical desk ) .\nsrm ( x 33548 )\nthe data below is as of 01 / 24 / 00 7 : 00 pm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.293+0000", "entityId": 1669, "properties": {"text": "Subject: day 26 - txu lonestar called on 20000 at carthage\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.299+0000", "entityId": 1670, "properties": {"text": "Subject: hpl nomination for january 26 , 2000\n( see attached file : hplol 26 . xls )\n- hplol 26 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.304+0000", "entityId": 1671, "properties": {"text": "Subject: mobil - beaumont - fyi\nfyi - i ' ve entered estimated vols into sitara based on the following info\nfrom mobil :\njan 28 - their takes will be down by 15 , 000 / d from current takes , due to one\nof their crude units coming down\njan 29 - their takes will be down by an adiitional 5 , 000 / d on top of that ,\ndue to their coker coming down\nfor febo 0 , they estimated the following vols :\nfeb 1 - 5 115 , 000 / d\nfeb 6 - 11 120 , 000 / d\nfeb 12 - 14 105 , 000 / d\nfeb 15 - 18 110 , 000 / d\nfeb 19 - 21 105 , 000 / d\nfeb 22 - 23 115 , 000 / d\nfeb 24 - 26 105 , 000 / d\nfeb 27 - 29 115 , 000 / d\nbased on assuming :\n- centana delivery point @ zero for all of feb ,\n- high pressure delivery @ meter 1576 @ 15 , 000 / d for all of feb ,\n- eog transport of 10 , 000 / d @ meter 1040 for all of feb ,\n. . . . i then entered the remaining daily vols for meter 1040 .\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.310+0000", "entityId": 1672, "properties": {"text": "Subject: equistar sale off of tejas or midcon\nfyi . . . . for febo 0 only , equistar asked we deliver the gas under sitara\n106736 to hpl meter 1373 instead ( the plant it was originally going to is\nhaving some maintenance being done in feb ) .\nwhile i ' ve already change the delivery point in the sitara ticket , maybe\nsomething needs to bve done to the risk assignment . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.315+0000", "entityId": 1673, "properties": {"text": "Subject: 02 / 00 natural gas nomination\nenron methanol nominates the following requirements for the methanol plant\nfor february 2000 :\n33 , 000 mmbtu per day\negpfc nominates the following requirements for the mtbe plant at morgan ' s\npoint for february 2000 :\n10 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.320+0000", "entityId": 1674, "properties": {"text": "Subject: office administrator needed\nplease feel free to forward this .\ni am a senior financial advisor with american express financial advisors in\nthe woodlands , tx . if you or someone you knows has experience helping to\nrun an office in a fast paced environment and has an interest in the\nfinancial world , i would love to visit . i am offering a competitive\nsalary , great work environment , fabulous learning opportunities and an\nunlimited growth potential . benefits are included .\nposition purpose :\nto assist me in areas of financial planning , marketing and administration .\ntasks include but are not limited to setting appointments with clients ,\ncompleting applications , communication with the corporate office ,\nconfirming appointments , ordering supplies , typing letters , staff\nmanagement , and more .\nplease feel free to forward your resume to me or call directly at the\nnumber listed below .\nmake it a great day !\nbyron w . ellis , cfp , clu , chfc\namerican express financial advisors\ntown center one\n1450 lake robbins dr .\nsuite 100\nthe woodlands , tx 77380\nphone ( 281 ) 367 - 8658\nfax ( 281 ) 364 - 9628", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.325+0000", "entityId": 1675, "properties": {"text": "Subject: entex for jan . 2000\nthis spreadsheet shows the current estimates are approximately 12 , 000 / day\nshort of what the estimates would be with the revised entex factor .\ncall me if you have any questions . i will work to get the revised estimates\ninto pops today .\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.330+0000", "entityId": 1676, "properties": {"text": "Subject: ces - duke en field services\nthe purchase and sale is at felmont # 1 ( point sale ) . we will be terminating\nthe agreement . feb should be the last month .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.335+0000", "entityId": 1677, "properties": {"text": "Subject: re : 02 / 00 natural gas nomination\ni ' ll fix it . . . that ' s not right . . . .\ndaren j farmer\n01 / 25 / 2000 05 : 26 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : 02 / 00 natural gas nomination\nlee ,\nas sitara currently stands , 500 of the 10 , 000 for egp fuels will be at gas\ndaily . see deals 139066 and 139068 . \\\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 25 / 2000\n05 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael mitcham @ enron\n01 / 25 / 2000 04 : 59 pm\nto : david bush / ecf / enron @ enron , mark diedrich / gpgfin / enron @ enron , paul\nfox / ecf / enron @ enron , david m johnson / ecf / enron @ enron , robert\nlee / ecf / enron @ enron , thomas meers / gpgfin / enron @ enron , maritta\nmullet / gpgfin / enron @ enron , james prentice / gpgfin / enron @ enron , kerry\nroper / gpgfin / enron @ enron , sally shuler / gpgfin / enron @ enron , daren j\nfarmer / hou / ect @ ect , lee l papayoti / hou / ect @ ect , steven m elliott / hou / ect @ ect ,\njohn l nowlan / hou / ect @ ect , fred boas / hou / ect @ ect , gregg lenart / hou / ect @ ect\ncc :\nsubject : 02 / 00 natural gas nomination\nenron methanol nominates the following requirements for the methanol plant\nfor february 2000 :\n33 , 000 mmbtu per day\negpfc nominates the following requirements for the mtbe plant at morgan ' s\npoint for february 2000 :\n10 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.340+0000", "entityId": 1678, "properties": {"text": "Subject: sitara # 92886\nfor febo 0 , any gas taken by global octanes will be priced off of gas daily\nrather than if . . . . i ' ve changed the sitara ticket . . . . but one of you\ngentlemen needs to take care of risk assignment impact . . . .\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.345+0000", "entityId": 1679, "properties": {"text": "Subject: copano changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 26 / 2000\n01 : 32 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 26 / 2000 01 : 00 : 03 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : copano changes\n( see attached file : hpl - jan . xls ) ( see attached file : hpl - feb . xls )\n- hpl - jan . xls\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.351+0000", "entityId": 1680, "properties": {"text": "Subject: feb noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 26 / 2000\n08 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 26 / 2000 08 : 23 : 47 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : feb noms\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.355+0000", "entityId": 1681, "properties": {"text": "Subject: deals 141877 , 141883 , and 141884 ( koch midstream ) were in ces ' s system ( and\nours ) as term sales . however , those deals were terminated by ces . so , any\nvolumes at kmid are sold to midcon texas p / l operator at if - . 09 . the purchase\nprice is ( . 10 ) for base volumes and ( . 11 ) for swing volumes . for feb , i\nzeroed the volumes in deals 141877 , 141833 , 141884 , in sitara . all of the\nvolumes will be in deal 156256 . o ' neal , do we need to risk assign this new\ndeal ? julie , it is an evergreen deal . mtpl takes whatever is produced at the\npoints . let me know if i can help with anything else .\nthanks ,\nac", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.362+0000", "entityId": 1682, "properties": {"text": "Subject: josey ranch est . - - feb . 2000\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 01 / 27 / 2000\n05 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 01 / 27 / 2000 05 : 05 : 00 pm\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , knox westmoreland\n, kevin mclarney , \" taylor , vance\n( e - mail ) \"\nsubject : josey ranch est . - - feb . 2000\nthis is the estimated josey ranch nomination for the month of\nfebruary 2000 . the hpl nomination volume to be effective 2 / 1 / 2000 is :\n13 , 000 mmbtu / day for kcs resources\n13 , 000 mmbtu / day total ( assumed btu factor of 1 . 081\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.369+0000", "entityId": 1683, "properties": {"text": "Subject: the 1999 form w - 2 and retiree tax form 1099 - r\nthe 1999 form w - 2 and retiree tax form 1099 - r will be mailed to your address\nof record by january 31 , 2000 . if you have not received your form by february\n16 th , you may request , in writing , for a duplicate copy to be sent to you .\nplease note that a written request , including authorized signature is\nrequired .\nwhen requesting a duplicate form , please specify the year for which you need\na copy , sign your request , and include the following information :\nname\ncomplete mailing address\nphone number\nsocial security number\nyou may mail your request to :\nenron corp\neb 1667\np o box 1188\nhouston tx 77002\nor you may fax your request to 713 - 646 - 3755 .\nyour request will be processed within one week of receipt .\nif you have a question regarding the information on your form w 2 , please\ncontact ginger sinclair at 713 - 853 - 9567 . ginger will take a detailed message\nof your questions and someone from the payroll tax group will contact you as\nsoon as possible .\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.375+0000", "entityId": 1684, "properties": {"text": "Subject: - - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 27 / 2000\n04 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 27 / 2000 03 : 53 : 02 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject :\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.379+0000", "entityId": 1685, "properties": {"text": "Subject: is this fri feb 11 a problem for taking vacation ?\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.384+0000", "entityId": 1686, "properties": {"text": "Subject: 98 - 6240\ndaren ,\nthe above meter began flow on 1 / 25 / 00 w / a volume of 295 decatherms versus\nthe start date of the 26 th as indicated on sitara deal ticket 148923 .\ncan you please notify me as to whether the deal ticket will reflect this\nchange ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.390+0000", "entityId": 1687, "properties": {"text": "Subject: copanno changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 28 / 2000\n10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 28 / 2000 10 : 53 : 30 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : copanno changes\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.394+0000", "entityId": 1688, "properties": {"text": "Subject: follow - up\njust following up to my week ago note .\nrest assured i know how hectic things have been around here and how many\nirons you have in your fire . time for my issues are , i ' m sure , a lower\npriority .\nlet me offer a thought or two .\ni don ' t have enough challenges at the moment to hold my interest .\ni had asked for next wed and thurs . off . let ' s toss in fri also . my\nexpectation is you would have a plan by the time i would come back , monday\nthe 7 th . i hate to be a pest but you need to get a better value for the\npaltry salary $ ' s you are paying me . maybe a tues - thurs . week would work\nbetter for each of us . or if things are going the way they seem to be ; you\ndon ' t need me at all .\nif you could possibly let me know before the 7 th what the plan is i sure\nwould appreciate it .\nthanks ,\nken\np . s . just in case the plug is pulled on this - - - please - - no formal goodbys .\ni will pay my respects to those i want too . i would very much like to just\nfadeout - - ok ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.399+0000", "entityId": 1689, "properties": {"text": "Subject: customer list\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 01 / 28 / 2000\n04 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 01 / 19 / 2000 05 : 30 pm\nto : james a ajello / hou / ect @ ect , wendy king / corp / enron @ enron , jim\ncrump / corp / enron @ enron , andrew wilson / corp / enron @ enron , glenn\nwright / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect , james mackey / hou / ect @ ect\nsubject : customer list\nas requested , here is the list of hpl ' s industrial customers in texas :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.404+0000", "entityId": 1690, "properties": {"text": "Subject: hpl noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 28 / 2000\n04 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 01 / 28 / 2000 03 : 56 : 28 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : hpl noms\n( see attached file : egmnom - jan . xls )\n- egmnom - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.408+0000", "entityId": 1691, "properties": {"text": "Subject: re : equistar\nfyi . . . only ! this activity has been rescheduled and reallocated .\nfrom : lee l papayoti on 01 / 27 / 2000 11 : 17 am\nto : robert e lloyd / hou / ect @ ect\ncc : stella l morris / hou / ect @ ect , daren j farmer / hou / ect @ ect , kenneth\nseaman / hou / ect @ ect\nsubject : equistar\nequistar has requested a scheduling / nomination change retroactive to january\n1 .\nat the start of the month , janice nominated a small volume to meter # 1165\n( or maybe it was to # 1266 ) , dupont victoria .\nequistar wants that volume to go to meter # 1552 instead , for the whole month\nof jan .\nany questions - call me at 3 . 5923\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.414+0000", "entityId": 1692, "properties": {"text": "Subject: mobil february , 2000 activity\ndo i detect a shot here ? ? ? ? ? ? ( chuckle )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 01 / 31 / 2000\n10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 01 / 31 / 2000 10 : 46 am\nto : kenneth seaman / hou / ect @ ect\ncc : george grant / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : mobil february , 2000 activity\nfyi . . . . only ! i changed a path you created for meter # : 1040 for 90 , 000 / d to\nan incorrect contract { k # : 218 } .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.419+0000", "entityId": 1693, "properties": {"text": "Subject: lyondell - citgo\nsitara 147092 is tiered pricing . if you want , you can nom whatever volume is\non the deal ticket and the economics will work out correctly . it will keep\nthings in balance a bit better , but you can go either way . for feb there is a\nbase deal for 5000 / day and a term deal for 20 , 000 / day . only 15 , 000 of the\n20000 is pathed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.425+0000", "entityId": 1694, "properties": {"text": "Subject: storage\ni updated the storage ticket for feb and created an injection ticket , sitara\n# 159640 .\nlet me know if you have any questions .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.430+0000", "entityId": 1695, "properties": {"text": "Subject: re : lyondell - citgo\nyou know , i don ' t think robert would get on the same page with me if his life\ndepended on it .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 02 / 01 / 2000\n07 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 01 / 31 / 2000 04 : 17 pm\nto : kenneth seaman / hou / ect @ ect\ncc :\nsubject : re : lyondell - citgo\nthanks ken however , the term deal agreed to by lyondell { via nomination } is\nonly for 15 . 0 .\nlyondell also nominated a 5 . 0 base deal .\nkenneth seaman 01 / 31 / 2000 03 : 12 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : lyondell - citgo\nsitara 147092 is tiered pricing . if you want , you can nom whatever volume is\non the deal ticket and the economics will work out correctly . it will keep\nthings in balance a bit better , but you can go either way . for feb there is a\nbase deal for 5000 / day and a term deal for 20 , 000 / day . only 15 , 000 of the\n20000 is pathed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.435+0000", "entityId": 1696, "properties": {"text": "Subject: purchase and sale nominations - eastrans pipeline / carthage / fuels\ncotton valley\nplease be advised that the eastrans delivery off hpl will not be ready until\n2 / 3\nat the earliest .\nplease 0 the nominations to eastrans at # 04604902 for 2 / 1 and 2 / 2 .\nalso , please 0 the nomination to p g & e for 2 / 1 and 2 / 2 at the carthage\ntailgate .\nthe 8 , 500 mmbtu / d from fuels cotton valley # 986462 will flow for the lst and\n2 nd .\ntherefore , the only nomination in place will be from fuels cotton valley ,\nwhich will be a sale . we are assuming a price of hsc - $ . 05 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.443+0000", "entityId": 1697, "properties": {"text": "Subject: re : license\nto all :\nwell , let me tell it to you like this ! i will never ever ever have\nto study for another fricken exam ! hell yes i passed that s . o . b . i about\ndied when i opened the envelope b / c i couldn ' t believe it ! i am now rusty\nr . glover , p . e . ! i probably won ' t know you next time i see you ! my head\nwas so big this morning i could barely make it through the door !\nlater ,\nrusty r . glover , p . e .\n- - - - - original message - - - - -\nfrom : camille davis [ mailto : kcdavis @ pdq . net ]\nsent : monday , january 31 , 2000 1 : 59 pm\nto : glover , rusty\nsubject : license\ndid you past your test ? ? ?\ncamille\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.447+0000", "entityId": 1698, "properties": {"text": "Subject: revised hpl nom . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 31 / 2000\n02 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 01 / 31 / 2000 02 : 01 : 02 pm\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : revised hpl nom . . . i passed on the change to george . . .\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.452+0000", "entityId": 1699, "properties": {"text": "Subject: revised nom for copano ' s . . . small but we will keep a close eye on\nthe weather . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 31 / 2000\n10 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 01 / 31 / 2000 10 : 04 : 05 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : revised nom for copano ' s . . . small but we will keep a close eye on\nthe weather . . . .\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 31 / 2000\n10 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 01 / 31 / 2000 10 : 21 : 15 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : feb lst revised\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.457+0000", "entityId": 1700, "properties": {"text": "Subject: winter cap for entex\nwhen you get allocations for january , we need to look at daily volumes for\ntransaction # 1 . towards the end of the month , entex was approaching its jan\nwinter cap volume of 550 , 000 / day . if the daily volume for trans # 1 comes out\ngreater than 550 , the excess must be charged at gd + 10 . the numbers thus far\nshow that they did not exceed 550 . however , the allocated volumes tend to\ndiffer .\nthanks ,\nac", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.461+0000", "entityId": 1701, "properties": {"text": "Subject: devon accounting contact\nhere is the point person for devon accounting questions / information :\ngary wade\ndevon energy corporation\nrevenue accounting supervisor\ntel 405 - 552 - 4721\nwadeg @ dvn . com\n20 north broadway , suite 1500\noklahoma city , ok 73102 - 8260\nfax 405 - 552 - 4550", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.466+0000", "entityId": 1702, "properties": {"text": "Subject: ces meeting minutes - january 18 , 2000 - ena obligations to ces\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 01 / 31 / 2000\n03 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : linda s bryan @ ect 01 / 20 / 2000 02 : 19 pm\nto : jeffrey t hodge / hou / ect @ ect , mary solmonson / hou / ect @ ect , tricia\nbowen / hou / ect @ ect , ami chokshi / corp / enron @ enron , stephanie sever / hou / ect @ ect ,\ndana daigle / corp / enron @ enron , marlene hilliard / hou / ect @ ect , edward\nterry / hou / ect @ ect , faye ellis / hou / ect @ ect , sylvia a campos / hou / ect @ ect ,\nconnie sutton / hou / ect @ ect , mary g gosnell / hou / ect @ ect , scott\nmills / hou / ect @ ect , victor lamadrid / hou / ect @ ect , katherine l\nkelly / hou / ect @ ect , irena d hogan / hou / ect @ ect , mark friedman / hou / ect @ ect\ncc :\nsubject : ces meeting minutes - january 18 , 2000\nattached are the minutes for the ces meeting that was held on monday , january\n18 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.474+0000", "entityId": 1703, "properties": {"text": "Subject: re : schedule\ni guess he won ' t be by as he knows it all now . and if he doesn ' t it will be\nmy fault for not teaching him correctly .\nsupplemental to our conversation yesterday ; i would come back to help you\nwith a project or job for which you needed any of my talents . if it involves\nworking with this guy - - - - forget it .\np . s . i have not taught him well as things are still being done incorrectly .\nken\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 02 / 01 / 2000\n09 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 02 / 01 / 2000 08 : 58 am\nto : kenneth seaman / hou / ect @ ect\ncc :\nsubject : re : schedule\ni simple want you to know personally that i appreciate the time spent with\nyou . ken , you have taught me well .\ni have the confidence to carry the torch and thanks again for being\navailable .\nkenneth seaman 02 / 01 / 2000 07 : 51 am\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : schedule\nthe day you have long awaited is arriving .\ni will be in the office next monday and tuesday , the 7 th and 8 th . if you have\nany questions or situations you would like some help with that will be your\nlast chance .\ni will then leave you in peace .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.481+0000", "entityId": 1704, "properties": {"text": "Subject: re : ua 4\nwhat is the status on this meter ?\nhoward b camp\n01 / 28 / 2000 07 : 17 am\nto : susan d trevino / hou / ect @ ect\ncc :\nsubject : ua 4\nsusan ,\nhere is the note that i sent daren . i never have scheduled a park and ride\nand have no idea on how this should be set up .\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 01 / 28 / 2000 07 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhoward b camp\n01 / 27 / 2000 10 : 17 am\nto : daren j farmer / hou / ect @ ect\ncc : charlotte hawkins / hou / ect @ ect , anita luong / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , rhonda robinson / hou / ect @ ect\nsubject : ua 4\ndaren ,\njust a quick note to follow up on ua 4 issues .\nfor desk to desk deals , we are keeping the entry on co 89 since there is not\na co 16 contract with co 16 and attaching an ect transport contract to the\nbackscreen .\non park and ride deals , i am under the impression that the park and ride deal\nwould be booked to an 089 contract and cleared either intra month or in a\nsubsequent month .\nif this is true , was it done by reversing out or offsetting the previous co\n89 entry . i am not sure whether an ect transport should be attached . i hope\nyou have some insight on this issue .\nlet me know\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.488+0000", "entityId": 1705, "properties": {"text": "Subject: hl & p january 2000\nattached are the january numbers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.492+0000", "entityId": 1706, "properties": {"text": "Subject: 98 - 3405 activity being allocated / nomed @ 98 - 9643\ndaren ,\ncan you please \" 0 \" all activity on sitara deal tickets 113858 , 93779 , 138094 ,\n120866 , 138544 , 139661 ( relative to 98 - 3405 ) ? this activity is now being\nnomed @ 98 - 9643 . i think that i ' ve referenced all of the deal tickets @ this\nmeter .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.497+0000", "entityId": 1707, "properties": {"text": "Subject: re : license\nlet me know if you ever sign off on any bridges or buildings so i can stay the\nhell away from them . remember i took classes with you i know better .\ncongrats\nfrom just an \" eit \" . kyle\n\" glover , rusty \" on 01 / 31 / 2000 05 : 13 : 48 pm\nto : ' camille davis '\ncc : \" rochelle ( e - mail ) \" , \" cheryl ( e - mail ) \"\n, \" daren ( e - mail ) \" , kyle\nkubin / ngccorp @ ngccorp , \" fenny ( e - mail ) \" , \" ed ( e - mail ) \"\n, \" greg ( e - mail ) \"\nsubject : re : license\nto all :\nwell , let me tell it to you like this ! i will never ever ever have\nto study for another fricken exam ! hell yes i passed that s . o . b . i about\ndied when i opened the envelope b / c i couldn ' t believe it ! i am now rusty\nr . glover , p . e . ! i probably won ' t know you next time i see you ! my head\nwas so big this morning i could barely make it through the door !\nlater ,\nrusty r . glover , p . e .\n- - - - - original message - - - - -\nfrom : camille davis [ mailto : kcdavis @ pdq . net ]\nsent : monday , january 31 , 2000 1 : 59 pm\nto : glover , rusty\nsubject : license\ndid you past your test ? ? ?\ncamille\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.502+0000", "entityId": 1708, "properties": {"text": "Subject: entex monthly mtg . eb 37 cl\n2 / 1 / 00\nplease mark your calendar to join the following meeting listed below :\ndate : thursday , february 3 , 2000\ntime : 11 : 30 - 12 : 30 ( luncheon )\nlocation : eb 37 cl\n* lunch will be provided\nif you have any questions , please contact me or rita wynne x 3 - 7694\nmany thanks\npamela chambers\nx 3 - 9680", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.507+0000", "entityId": 1709, "properties": {"text": "Subject: january 2000 withdrawals from storage\nhey vonda ,\nattached is the worksheet showing your withdrawals for the month of january\n2000 . let me know if you have any questions .\nlisa kinsey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.511+0000", "entityId": 1710, "properties": {"text": "Subject: 98 - 9794 ( saxet thompsonville ) receiving under nom\ntom ,\ncan you please seek daren ' s advise on nom adjust at the aforementioned meter\ndue to this meter receiving 19 mmbtu ' s on a 28 nom ?\ndaren , there are two sitara deal numbers associated w / this receipt meter\n( both gathering ) 154608 and 138572 . 138572 is wellhead gas .\nthanks\n- jackie -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.516+0000", "entityId": 1711, "properties": {"text": "Subject: y 2 k pbas\nthe y 2 k pbas will be available for distribution on february 15 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.521+0000", "entityId": 1712, "properties": {"text": "Subject: nomination for purchase and sale\nas we discusssed , we nominate 5 , 000 mmbtu / d from hpl into eastrans for\n2 / 3 / 2000 ,\nand 5 , 000 mmbtu / d ( the first gas delivered ) from fuels cotton valley into hpl\nfor 2 / 3 / 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.526+0000", "entityId": 1713, "properties": {"text": "Subject: union gas - thamm # 1\ntom ,\nthe thamm # 1 well came on line for first delivery on tuesday , 2 / 1 / 00 at\n6 : 45 pm . the contract calls for first of the month pricing . please create a\none month baseload firm deal ticket in sitara based upon the following :\ncounterparty meter volume price\nunion gas corporation 9823 500 mmbtu / d 100 % if / hsc less $ 0 . 10\nsusan will create a firm ticket for the term of the deal once our geologists\nhave gathered enough data to forecast the reserves for this well ; at such\ntime , we will request that this ticket be zeroed out .\nif there are any questions or concerns please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.530+0000", "entityId": 1714, "properties": {"text": "Subject: road - show . com q 4 i . com choose enron to deliver financial web content\nhouston \u0001 ) enron broadband services ( ebs ) , a wholly owned subsidiary of enron\ncorp . and a leader in the delivery of high - bandwidth application services ,\nannounced today content delivery contracts with road - show . com , an online\nresource for individual investors , and q 4 i . com , a financial services provider\noffering an online broker resource called brokeriq . the two financial\nservices companies will use enron \u0001 , s epowered \u0001 v market cast and the enron\nintelligent network \u0001 v ( ein ) to enhance the quality and speed of content\ndelivery to their investors . enron \u0001 , s solution provides tv - quality streaming\nvideo with delivery speeds up to 50 times faster than the public internet .\n\u0001 & these agreements reflect the financial services industry \u0001 , s need for better\nand faster delivery of online content , \u0001 8 said joe hirko , co - ceo of enron\nbroadband services . \u0001 & the enron intelligent network allows visionary\ncompanies like road - show . com and q 4 i . com to serve their customers with video\nto the desktop that has unparalleled speed , clarity and quality . \u0001 8\nroad - show . com is a fully integrated producer of online streaming media . the\ncompany \u0001 , s xvenue \u0001 v platform offers clients a turn - key solution for\npersonalized live or on - demand webcast communications . road - show . com broadly\nstreams the presentations that companies typically give on road shows prior\nto an initial public offering to audiences that include individual and\nprofessional investors .\n\u0001 & the enron intelligent network and market cast technology will allow\nroad - show . com to offer our customers something they have never had access to\nbefore \u0001 ) real - time company presentations and one of the fastest , richest\nviewing experiences possible . this will enhance their ability to make fully\neducated investment decisions , \u0001 8 said trey fecteau , president of\nroad - show . com .\nq 4 i . com provides \u0001 & one - stop \u0001 8 advanced technology solutions for financial\nservices companies and their clients . with its flagship product , brokeriq \u0001 v ,\nprofessional brokers and their firms have a complete broker management system\nat their fingertips . q 4 i . com will utilize ebs to distribute financial video\nclips to clients via its brokercity \u0001 v product . in addition , enron will\ndeliver q 4 i . com \u0001 , s live and on - demand streaming video clips of golf resorts ,\ngolf courses , golf real estate , equipment and golf travel for internet users\naround the world through golftv \u0001 v , q 4 i . com \u0001 , s online video network .\n\u0001 & our clients now have streaming video features available on their desktops\nvia enron \u0001 , s network , \u0001 8 said j . frederic storaska , chairman and co - ceo of\nq 4 i . com . \u0001 & they not only will enjoy on - demand streaming video of financial\nand golf information , but they \u0001 , ll have the opportunity to take advantage of\nspecial vacation and equipment offers reserved exclusively for our\nbroker - dealers . \u0001 8\nenron \u0001 , s epowered market cast solution\nepowered market cast , an application of the enron intelligent network , is an\nend - to - end streaming media solution for banks , brokerages and other financial\nservices firms . using epowered market cast , companies can enhance investor\nrelations , conduct virtual road shows and stream analyst presentations from\ntheir websites . in addition , epowered market cast is a powerful intranet\nsolution for providing real - time financial news , data feeds , training and\npresentations to an internal audience . the application streams video at an\naverage bit - rate speed of 200 kilobits per second ( kbps ) .\nthe enron intelligent network is based on distributed server architecture , a\npure internet protocol ( ip ) platform and embedded software intelligence that\nsets it apart from other networks . the ein \u0001 , s enhanced performance is due to\nits ability to deliver streaming media content \u0001 & one hop \u0001 8 away from the user\nat the closest ein edge server . the result is a tv - quality viewing\nexperience for the user . in contrast , the public internet \u0001 , s ability to\ndeliver the broadband content businesses need is often hampered by packet\nloss , interference and other disruptions that slow down transmission speed\nand compromise the end user \u0001 , s experience .\nabout enron broadband services\nenron broadband services , formerly enron communications , inc . , is a leading\nprovider of high quality , broadband internet content and applications . the\ncompany \u0001 , s business model combines the power of the enron intelligent network ,\nenron \u0001 , s broadband operating system , bandwidth trading and intermediation\nservices , and high - bandwidth applications , to fundamentally improve the\nexperience and functionality of the internet . enron introduces its broadband\noperating system to allow application developers to dynamically provision\nbandwidth on demand for the end - to - end quality of service necessary to\ndeliver broadband content . enron is also creating a market for bandwidth\nthat will allow network providers to scale to meet the demands that\nincreasingly complex applications require . a wholly owned subsidiary of\nenron corp . ( nyse : ene ) , enron broadband services can be found on the web at\nwww . enron . net .\nabout enron\nenron is one of the world \u0001 , s leading electricity , natural gas and\ncommunications companies . the company , which owns approximately $ 34 billion\nin energy and communications assets , produces electricity and natural gas ,\ndevelops , constructs and operates energy facilities worldwide , delivers\nphysical commodities and financial and risk management services to customers\naround the world , and is developing an intelligent network platform to\nfacilitate online business . enron \u0001 , s internet address is www . enron . com . the\nstock is traded under the ticker symbol , \u0001 & ene . \u0001 8", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.535+0000", "entityId": 1715, "properties": {"text": "Subject: enron and chase manhattan bank sign long - term energy management\nagreement\nhouston and new york \u0001 ) enron energy services , a subsidiary of enron corp . ,\nand the chase manhattan corporation ( nyse : cmb ) announced today a ten - year ,\n$ 750 million energy management agreement . enron will provide energy\nmanagement services for 860 of chase \u0001 , s facilities nationwide , including\noffice buildings , retail branches and operations centers .\nas part of this agreement , enron will provide commodity management , including\nanalysis and consolidation of approximately 30 , 000 annual utility invoices\ncurrently processed through multiple operating groups , as well as overall\nproject management for energy infrastructure upgrades , designed to make\nmaterial improvements in the energy efficiency of many chase facilities .\n\" chase has taken a leadership position among financial institutions by\nrecognizing the financial and administrative benefits of working with enron\nto consolidate its energy management processes , \u0001 8 said lou pai , ceo of enron\nenergy services . \u0001 & our agreement effectively takes chase out of the energy\nmanagement business and enables them to focus more time and resources on\ngrowing their successful financial services business . \"\n\u0001 & this transaction is another great example of chase \u0001 , s discipline and\ninitiative in creating significant value for our shareholders , \u0001 8 said liz\nflynn , head of chase business services . \u0001 & it again demonstrates the\neffectiveness of chase business services , a shared services organization\ncreated to improve service and lower costs for all of chase \u0001 , s operating\ngroups . \u0001 8\nthe chase manhattan corporation , with $ 406 billion in assets , is one of the\nworld \u0001 , s premier financial services institutions , with operations in 48\ncountries around the globe . chase has a top - tier ranking in all areas of\ninvestment banking , private banking , trading and global markets activities as\nwell as information and transaction processing . chase is a leading provider\nof financial solutions to large corporations , financial institutions ,\ngovernment entities , middle market firms , small businesses and individuals ,\nand has relationships with more than 30 million consumers across the united\nstates through products and services such as credit cards , mortgages , online\nbanking , debit cards , deposit products and auto loans . through its newly\nformed business unit , chase . com , chase is successfully creating new business\nmodels for the internet economy . chase can be reached on the web at\nwww . chase . com .\nenron is one of the world \u0001 , s leading electricity , natural gas and\ncommunications companies . the company , which owns approximately $ 34 billion\nin energy and communications assets , produces electricity and natural gas ,\ndevelops , constructs and operates energy facilities worldwide , delivers\nphysical commodities and financial and risk management services to customers\naround the world , and is developing an intelligent network platform to\nfacilitate online business . enron \u0001 , s internet address is www . enron . com , and\nthe stock is traded under the ticker symbol \u0001 & ene . \u0001 8", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.539+0000", "entityId": 1716, "properties": {"text": "Subject: organization announcement\nenron purchases billions of dollars of products through its wholly owned\nsubsidiaries and venture companies worldwide . historically , the company has\nconducted these purchases in a highly fragmented , decentralized manner\nallowing each of the operating units the discretion to source their\nrequirements in a manner that optimizes unit performance . today , however ,\nwith the implementation of sap and the profound explosion in\ninternet / intranet - based technologies , we believe the company should change\nits direction and focus on aggregating its demand for goods and strategically\nsourcing these requirements on a global basis . we believe that there are\nsignificant cash savings to be extracted by the company and also commercial\npotential for the formation of a highly profitable , business - to - business\ne - commerce venture .\neffective february 1 , 2000 , enron will form a new global strategic sourcing\nunit . this new unit will consolidate the current successful strategic\nsourcing initiatives underway in the gas pipeline group , global asset\noperations and enron corp . initially , global strategic sourcing will focus\non aggregating enron \u0001 , s internal , joint venture and business partner demand\nfor products and services with the objective of creating a future\nbusiness - to - business e - commerce venture .\nit gives us great pleasure to announce that george wasaff , managing director ,\nwill lead this new global initiative . george will report directly to mike\nmcconnell , chief executive officer for global technology .\ngeorge has been with enron for fourteen years and has held many senior\nexecutive positions , the most recent of which was managing director of enron\nsouth america ' s wholesale operations . george was also the interim chief\nexecutive officer of elektro from july 1998 through june 1999 and chief\nexecutive officer of transportadora de gas del sur s . a . ( \" tgs \" ) from june\n1995 through february 1998 . george has also held numerous commercial\npositions including vice president and country manager , mexico for enron\ninternational and vice president of marketing for transwestern pipeline\ncompany .\nplease join us in supporting this new global initiative and congratulating\ngeorge in his new role with the company .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.544+0000", "entityId": 1717, "properties": {"text": "Subject: increase volume into midcon\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 02 / 2000\n08 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 02 / 2000 08 : 12 : 54 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : increase volume into midcon\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.549+0000", "entityId": 1718, "properties": {"text": "Subject: winter cap volumes\nnov 300 , 000 / d\ndec 475 , 000 / d\njan 550 , 000 / d\nfeb 400 , 000 / d\nmar 350 , 000 / d\nexcess volumes priced at greater of if + . 769 or hsc + . 10 , not to exceed 3 times\nfom price .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.554+0000", "entityId": 1719, "properties": {"text": "Subject: re : 98 - 9794 ( saxet thompsonville ) receiving under nom\njackie i talked with daren and we would like to wait for now , it is a little\nearly in the month and the well may be just getting revved up . wells tend to\nmove around a bit through the month and usually even out at the end but\nthank you for bringing it to my attention and please feel free to inform me\nof any others that you might see . the more eyes the better . thanks jackie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.559+0000", "entityId": 1720, "properties": {"text": "Subject: re : 98 - 3405 activity being allocated / nomed @ 98 - 9643\ndaren ,\nwanted to let you know that there are still two sitara deals that need to\nhave the expected volume brought down to \" 0 \" of the list that i previously\nsent you .\nthey are 114099 and 92918 .\ni appreciate you revising the ones that you have and you probably were going\nto handle the above two today . in case you were please disregard this\nnotice . if you had fogotten , this can serve as reminder .\nas usual , thanks for your help .\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.565+0000", "entityId": 1721, "properties": {"text": "Subject: bridgeback error at meter 1450 for 11 / 99\ndaren - deal # 97929 , meter 1450 expired nov . ' 99 . is there a way for you to\nextend the deal or create a new one since there seems to be a little bit of\nflow each month ?\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 02 / 03 / 2000 03 : 06\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n02 / 03 / 2000 02 : 02 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : bridgeback error at meter 1450 for 11 / 99\naimee :\nthere is a bridgeback error at the above referenced meter and month . the\nreason for the error is that the deal , # 97929 has expired . please determine\nif the deal was to be extended or is there another deal to replace it ?\nto fix this i will set up an accounting arrangement but what i need from you\nis a valid deal number and the transportation contract that you want me to\nput the deal on .\nthanks in advance for your help ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.571+0000", "entityId": 1722, "properties": {"text": "Subject: re : nomination 2 / 4 / 2000\nthe below nomination is for 2 / 4 / 2000 . sorry .\nbruce mcmills\n02 / 03 / 2000 10 : 50 am\nto : dfarmer @ enron . com , briley @ enron . com , chad w . cass / gcs / cec / pec @ pec ,\nwilliam\ne . speckels / gcs / cec / pec @ pec\ncc : michael r . cherry / easttexas / pefs / pec @ pec\nsubject : nomination 2 / 3 / 2000\nthis is to nominate 33 , 500 mmbtu for 2 / 3 / 2000 from hpl at the eastrans\ninterconnect .\nthis equates to about 30 , 700 mcf .\nlike mmbtu ' s will be redelivered at fuels cotton valley ( 8 , 500 ) and p g & e at\nthe carthage\ntailgate for 25 , 000 mmbtu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.579+0000", "entityId": 1723, "properties": {"text": "Subject: nomination 2 / 3 / 2000\nthis is to nominate 33 , 500 mmbtu for 2 / 3 / 2000 from hpl at the eastrans\ninterconnect .\nthis equates to about 30 , 700 mcf .\nlike mmbtu ' s will be redelivered at fuels cotton valley ( 8 , 500 ) and p g & e at\nthe carthage\ntailgate for 25 , 000 mmbtu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.585+0000", "entityId": 1724, "properties": {"text": "Subject: curtains\nhey ! i ' v almost got the curtains finished . been so busy , everything ' s so\nbusy this week . i probably won ' t get them mailed until mon . ' cause i have to\nborrow a car from someone at work in order to get to the post office in time\nbefore it closes in this hick town , & everyone goes home early & don ' t want\nto wait around on fri . but i ' ll get them there asap . they won ' t have\nbuttons , ' cause tonya didn ' t know what kind she wanted when we got the\nmaterial . we ' ll be at competition all day sat . at plano & then at shane ' s\nsat . night . home sun . sometime . wish ya ' ll could be with us . lacy is in 3\ndifferent routines - - she made all of them . on front row . maybe i can see her\nok . gotta go . let me know if you get this . my comp . is kinda messed up .\ngive cole a hug . love , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.590+0000", "entityId": 1725, "properties": {"text": "Subject: fw : missing man formation\n- - - - - original message - - - - -\nfrom : abbott , todd\nsent : wednesday , february 02 , 2000 5 : 00 pm\nto : glover , rusty ; beard , jaime ; woodson , todd ; hauser , tony ; canedy ,\nfrank ; ' hatch , jessica ' ; ' lynch , jerilyn ' ; ' rea , michelle ' ; ' van\nfleteren , jennifer '\nsubject : fw : missing man formation\n- - - - - original message - - - - -\nfrom : jennifer martin [ mailto : jnmartin 97 @ hotmail . com ]\nsent : tuesday , february 01 , 2000 7 : 16 pm\nto : emartin @ mail . esc 4 . com ; abbott , todd ; abraun 97 @ hotmail . com ;\nchris @ figdigital . com ; joseph . j . piotrowski @ ac . com\nsubject : fwd : missing man formation\n> from : \" k . c . allan \"\n> to : jbt @ tca . net , joshbuis @ swbell . net , aggie 97 ljt @ aol . com ,\n> dave _ kent @ hotmail . com , andrea . ivers @ usa . net , bryan _ reinke @ notes . amdahl . com ,\n> celeste . y . flores @ ac . com , ckoehn @ dynamsys . com , cmh 5695 @ medicine . tamu . edu ,\n> cmaltsberger @ lanner . com , dholwerda @ unitedtexas . com , dhartman @ gdhm . com ,\n> dmco 97 @ hotmail . com , jamierespondek @ hotmail . com , aggie 94 @ vvm . com ,\n> minchinton @ aol . com , jnmartin 97 @ hotmail . com , jprejean @ law . harvard . edu ,\n> kirstenkloepfer @ hotmail . com , kandylo 3 @ aol . com , ldp 2795 @ acs . tamu . edu ,\n> michael _ ham @ bigfoot . com , jlkloepfer @ msn . com , peggy @ msc . tamu . edu ,\n> russnjan @ aol . com , ryan . smith @ enform . com , jascollin @ msn . com ,\n> stevef @ mail . utexas . edu , timothy . r . fox @ us . pwcglobal . com ,\n> vca 5222 @ acs . tamu . edu , whitney . s . fox @ us . arthurandersen . com\n> subject : missing man formation\n> date : tue , 01 feb 2000 10 : 47 : 31 cst\n>\n>\n>\nget your private , free email at http : / / www . hotmail . com\n- attl . htm\nmessage - id :\nfrom : chuck ellison\nto : \" denise werst ( e - mail ) \" , \" bill helwig ( e - mail ) \"\n, \" bill martin ( e - mail ) \" , \" bill\nmitchem ( e - mail ) \" , \" bob appleton ( e - mail ) \"\n, \" bob shield ( e - mail ) \"\n, \" clint schroff ( e - mail ) \" , \" david\nhickson ( e - mail ) \" , \" don jones ( e - mail ) \"\n, \" jimmy bond ( e - mail ) \" , \" jon miller\n( e - mail ) \" , \" kent caperton ( business fax ) \"\n,\n\" kim ellison ( e - mail ) \" , \" marty roos ( e - mail ) \"\n, \" mat moten ( e - mail ) \" , \" p . k . imbrie\n( e - mail ) \" , \" paul clarke ( e - mail ) \"\n, \" penny king ( e - mail ) \" , \" pj\nellison ( e - mail ) \" , \" porter & lisa garner ( e - mail ) \"\n, \" reba ragsdale ( e - mail ) \" , \" ron\nspies ( e - mail ) \" , \" steve beachy ( e - mail ) \"\n, \" steve rodgers ( e - mail ) \"\n, \" ted beck ( e - mail ) \" , \" wallace\ntrochesset ( e - mail ) \" , tedi , \" alan\nfutrell ( e - mail ) \" , \" bill flores ( e - mail ) \"\n, \" brent futrell ( e - mail ) \" , \" chris burkard\n( e - mail ) \" , \" david buttery ( e - mail ) \" ,\n\" dean williams ( e - mail ) \" , \" fred\ni hope that you enjoy this as much as i did . for those of you who cannot\nget it open , it is a picture from the cockpit of the plane of the missing\nman during the flyover at the a & m vs . tu game .\n>\nchuck ellison\ncharles a . ellison , p . c .\np . o . box 10103\ncollege station , tx 77842\n( 409 ) 696 - 9889\n( 409 ) 693 - 8819 ( fax )\nchuck @ ellisonlaw . com\nthis e - mail message is for the sole use of the intended recipient ( s ) and may\ncontain confidential and privileged information . any unauthorized review ,\nuse , disclosure or distribution is prohibited . if you are not the intended\nrecipient , please contact the sender by reply e - mail and destroy all copies\nof the original message . thank you .\n- att 2 . htm\n- kyle field . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.595+0000", "entityId": 1726, "properties": {"text": "Subject: noms for the 4 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 03 / 2000\n10 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 02 / 03 / 2000 09 : 42 : 09 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : noms for the 4 th\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.600+0000", "entityId": 1727, "properties": {"text": "Subject: increase into midcon\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 03 / 2000\n09 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 03 / 2000 07 : 53 : 41 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : increase into midcon\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.605+0000", "entityId": 1728, "properties": {"text": "Subject: meter 7266\ndaren - can you set up a deal for meter 7266 ? an accounting arrangement is\nalways created every month . it is used for the texas general land storage\ndeal , ( withholding 15 % on their injections only ) . it has been nominated in\npops on 012 - 41500 - 05 - 002 . please let me know , volume management wants to\nget bammel allocated today .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.610+0000", "entityId": 1729, "properties": {"text": "Subject: cilco storage withdrawal\ndaren - can you set up a deal for the cilco withdrawal for dec . 99 going\nforward ? i know a deal has never been set up for this but volume management\nwants a deal set up so they won ' t have to set up an accounting arrangement\nevey month . please let me know , i ' d appreciate it .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.615+0000", "entityId": 1730, "properties": {"text": "Subject: meter 9699\njackie -\ni cannot for the life of me remember why this sale deal is in there . i do\nbelieve it is valid and is a part of the purchase deal with tesoro . jill\nzively was the dealmaker and could probably answer your question as could\ngeorge weissman and melissa graves . you might also check with anita , the\nallocator , to see the support she gets for the allocation . this may give you\nsome clue as to what this volume represents . ( let me know , too , since i hate\nforgetting things ! ! ! ! )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.620+0000", "entityId": 1731, "properties": {"text": "Subject: meter 98 - 9699 & 98 - 2662 ( receipt meters w / delivery noms )\nanita ,\nthere is a delivery nom of 22 @ the above mentioned meter for 1 / 99\nproduction . this is a receipt meter .\ncan you please explain the purpose of this delivery nom being @ this receipt\nmeter ? i also have the same situation @ 98 - 2662 for 1 / 99 . also , this\nactivity is continuing on into 2 / 99 .\nclem cernosek expressed that these delivery noms are causing errors on his\nend of the spectrum .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 02 / 04 / 2000 02 : 31\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n02 / 04 / 2000 01 : 13 pm\nto : jackie young / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : meter 9699\njackie -\ni cannot for the life of me remember why this sale deal is in there . i do\nbelieve it is valid and is a part of the purchase deal with tesoro . jill\nzively was the dealmaker and could probably answer your question as could\ngeorge weissman and melissa graves . you might also check with anita , the\nallocator , to see the support she gets for the allocation . this may give you\nsome clue as to what this volume represents . ( let me know , too , since i hate\nforgetting things ! ! ! ! )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.625+0000", "entityId": 1732, "properties": {"text": "Subject: 98 - 1534\ndaren ,\nthe above mentioned meter ( delivery ) shows a small flow of 24 dec . on\n2 - 1 - 00 . the sitara deal ( 151694 ) has a stop date of 1 / 31 / 2000 .\ncan you please extend the deal thru 2 - 1 - 00 to cover this small volume ?\nthanks\n- jackie -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.629+0000", "entityId": 1733, "properties": {"text": "Subject: re : meter 98 - 9699 & 98 - 2662 ( receipt meters w / delivery noms )\nthis is the fuel that is buy and sell between hplc and hplr . for meter 9699\nit ' s 2 . 5 % and for meter 2662 it ' s 4 % . however , the volume is a fixed amount\nevery month and is kept whole .\njackie young\n02 / 04 / 2000 02 : 51 pm\nto : anita luong / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron , clem cernosek / hou / ect @ ect\nsubject : meter 98 - 9699 & 98 - 2662 ( receipt meters w / delivery noms )\nanita ,\nthere is a delivery nom of 22 @ the above mentioned meter for 1 / 99\nproduction . this is a receipt meter .\ncan you please explain the purpose of this delivery nom being @ this receipt\nmeter ? i also have the same situation @ 98 - 2662 for 1 / 99 . also , this\nactivity is continuing on into 2 / 99 .\nclem cernosek expressed that these delivery noms are causing errors on his\nend of the spectrum .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 02 / 04 / 2000 02 : 31\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n02 / 04 / 2000 01 : 13 pm\nto : jackie young / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : meter 9699\njackie -\ni cannot for the life of me remember why this sale deal is in there . i do\nbelieve it is valid and is a part of the purchase deal with tesoro . jill\nzively was the dealmaker and could probably answer your question as could\ngeorge weissman and melissa graves . you might also check with anita , the\nallocator , to see the support she gets for the allocation . this may give you\nsome clue as to what this volume represents . ( let me know , too , since i hate\nforgetting things ! ! ! ! )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.634+0000", "entityId": 1734, "properties": {"text": "Subject: nominations on hpl purchase and sale - 2 / 5 through 2 / 7\ndue to low volumes flowing from fuels cotton valley ,\nwe nominate 32 , 000 mmbtu / d at the hpl / eastrans interconnect\nfor the referenced period . we are estimating that will redeliver 7 , 000\nmmbtu / d\nfrom fuels cotton valley and 25 , 000 mmbtu / d into pg & e .\ni talked to darren and brian on the ability to swing additional volume to pg\n& e\nduring a day ,\nand they said pg & e won ' t accept daily changes at all ! ! ! so , if that is the\ncase ,\nwe will have to find an alternate method to swing the volume . based on our\nagreement ,\nwe have the ability to give them volume into other pipelines at the hub .\nmaybe\nwe\ncan swing on them . in the short term , however , we are going to have to make\ndue\nwith adjusting\nthe hpl volume to equal redelivered volume as best we can .\nsorry for the lateness of this email . i will get daily nom changes into you\nearlier next week .\nthanks for working with us .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.639+0000", "entityId": 1735, "properties": {"text": "Subject: fw : whose needs ? ? ? ? ? ? ? ?\n> perfect ! ! ! ! ! ! ! ! !\n>\n> * * proprietary * *\n>\n> a husband and wife are getting all snugly\n> > > in bed . the passion is heating up . but then the wife stops and says\n> \" i\n> > > don ' t feel like it , i just want you to hold me . \" the husband says\n> > > \" what ? ? \" the wife explains that he must not be in tune with her\n> > emotional\n> > > needs as a woman . the husband realizes that nothing is going to\n> > happen\n> > > tonight and he might as well deal with it .\n> > >\n> > > so the next day the husband takes her shopping at a big\n> department\n> > > store . he walks around and has her try on three very expensive\n> > outfits .\n> > > she can ' t decide . he tells his wife to take all three of them .\n> then\n> > > they go over and get matching shoes worth $ 100 each .\n> > > and then they go to the jewelry dept . where she gets a set of\n> > diamond\n> > > ear rings . the wife is so excited . she thinks her husband has\n> flipped\n> > > out - but she does not care .\n> > > she goes for the tennis bracelet . the husband says \" but you don ' t\n> > even\n> > > play tennis , but ok if you like it then let ' s get it . \" the wife is\n> > > jumping up and down so excited she cannot even believe what is\n> going\n> > on .\n> > > she says \" i am ready to go , lets go to the cash register . \"\n> > > the husband stops and says , \" no , honey i don ' t feel like buying\n> all\n> > > this stuff now \"\n> > > the wife ' s face goes blank . he says \" honey - i just want you to hold\n> > > this stuff for a while . \" the look on her face is indescribable and\n> she\n> > > is about to explode and the husband says ,\n> > >\n> > > \" you must not be in tune with my financial needs as a man . \"\n> > >\n> >\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.645+0000", "entityId": 1736, "properties": {"text": "Subject: \" ram tackett \" : pictures\ndaren let ' s look at these this weekend ! love you me\n- - - - - - - - begin forwarded message - - - - - - - - - -\nfrom : \" ram tackett \"\nto :\nsubject : pictures\ndate : fri , 4 feb 2000 14 : 32 : 52 - 0600\nmessage - id :\npictures of hunter and cole :\npictures of jill , susan and tonya :\npictures of ram , jill , hunter :\npictures of our new house :\n- - - - - - - - - end forwarded message - - - - - - - - - -\nyou ' re paying too much for the internet !\njuno now offers free internet access !\ntry it today - there ' s no risk ! for your free software , visit :\nhttp : / / dl . www . juno . com / get / tagj .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.649+0000", "entityId": 1737, "properties": {"text": "Subject: tech - support @ service . juno . com : problems retrieving mail\ndaren i guess i need help with this too ! love you\n- - - - - - - - - begin forwarded message - - - - - - - - - -\nfrom : tech - support @ service . juno . com\nto :\nsubject : problems retrieving mail\ndate :\nmessage - id :\ndear juno member ,\nyou have received messages with attachments which have not yet been\ndownloaded to your computer . because the version of juno software you\nare currently using is not capable of handling attachments , these\nmessages are still waiting for you on our server . these messages may\nfill your mailbox to its maximum capacity , preventing your account from\nreceiving new mail .\nin order to receive the attachments , you will need to upgrade your juno\nsoftware to version 4 . 0 . in addition to allowing you to retrieve all\nyour messages , this new version carries many enhancements which you will\nfind particularly useful when sending and receiving e - mail .\nif you have access to the world wide web , you can download the latest\nversion of our software by visiting http : / / www . juno . com / upgrade . if you\nare unable to download from the web , you can order a new cd - rom from us\nby calling 800 - try - juno .\nplease be aware that your messages with file attachments will be kept on\njuno ' s central computers until you download them . however , once your\nmailbox has reached the maximum size limit for attachments , we will be\nunable to accept new incoming mail for you . this may cause you to miss\nsome of your e - mail , so we encourage you to install the latest version of\nthe juno software . your e - mail messages will be downloaded to you on\nyour first connection after your upgrade .\nthank you for using juno . we appreciate your continued support .\nbest regards ,\ntechnical support\njuno online services , inc .\n- - - - - - - - - end forwarded message - - - - - - - - - -\nyou ' re paying too much for the internet !\njuno now offers free internet access !\ntry it today - there ' s no risk ! for your free software , visit :\nhttp : / / dl . www . juno . com / get / tagj .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.654+0000", "entityId": 1738, "properties": {"text": "Subject: president @ juno . com : exciting news - free internet access !\n- - - - - - - - - begin forwarded message - - - - - - - - - -\nfrom : president @ juno . com\nto :\nsubject : exciting news - free internet access !\ndate : wed dec 22 16 : 30 : 24 est 1999\nmessage - id :\ndear juno member ,\nwe have exciting news for you ! we have decided to expand our free basic\nservice to include full web access . this means you can now use the world\nwide web completely free . no charges , no fees , no commitments . * this is\nnot a free trial . it ' s free , period .\nwhat do you get with juno ' s completely free internet access service ?\n- access to everything the internet has to offer .\n- hundreds of access numbers across the country .\n- file attachment capability with your e - mail .\n- the juno guide , a floating banner directing you to some of the most\ninteresting sites on the web .\nin order to start using the web for free , you need to have the latest\nversion of our software , version 4 . 0 . this new version only takes about\n15 minutes to download ( with a 56 k modem ) .\nthere are two ways for you to get the software :\n1 ) if you already have web access , you can download juno 4 . 0 at\nhttp : / / www . juno . com / junofree .\n2 ) if you don ' t have web access , click on the ' advertisements ' menu at\nthe top of your screen and select ' index of advertisements ' from the menu\nthat drops down . then select the juno 4 . 0 advertisement , and you ' ll be\npresented with a screen allowing you to download the software . it ' s that\neasy !\nhurry ! act now and get on the web , completely free .\nsincerely ,\ncharles ardai\npresident\njuno online services , inc .\n* as with your current service , local telephone charges may apply . please\nconsult your local phone company if you have any questions about the\naccess numbers you have chosen .\n- - - - - - - - - end forwarded message - - - - - - - - - -\nyou ' re paying too much for the internet !\njuno now offers free internet access !\ntry it today - there ' s no risk ! for your free software , visit :\nhttp : / / dl . www . juno . com / get / tagj .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.658+0000", "entityId": 1739, "properties": {"text": "Subject: re :\ndaren ,\njust call me mike .\nhow about thursday , the 17 th at 1 : 00 . let ' s plan on 1 hour . can you locate\na conference room ?\nmike\n- - - - - original message - - - - -\nfrom : daren j farmer [ mailto : dfarmer @ ect . enron . com ]\nsent : friday , february 04 , 2000 5 : 23 pm\nto : mam @ teamlead . com\nsubject :\nmichael ( or mike . . what do you like to be called ? ) ,\nmy schedule is open thursday afternoon 1 - 5 pm and friday 1 - 4 pm . let me know\nthe\nwhat works best for you . earlier in the afternoon is usually best for me .\ndaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.664+0000", "entityId": 1740, "properties": {"text": "Subject: buyer vs . seller on intercompany deals\nto clarify the memo that i sent yesterday concerning buyer vs . seller on\nintercompany deals , i want to make sure that everyone understands that not\nonly will the seller side post on the sitara deal but that the volume\nfeedback reconciliation report will reflect the error ( s ) associated with the\nbuy side as well . it will no longer show the the error ( s ) generated by the\nsales side as it currently does . this change will coincide with the way sap\nreports intercompany transactions .\nplease let me know if you have any questions or concerns .\nnote : the volume feedback reconciliation report is the report which i\ndistribute on a daily basis .\nthanks ,\nrhp\n- - - - - - - - - - - - - - - - - - - - - - forwarded by regina perkins / hou / ect on 02 / 04 / 2000\n10 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nregina perkins\n02 / 03 / 2000 05 : 32 pm\nto : edward terry / hou / ect @ ect , katherine l kelly / hou / ect @ ect , george\nsmith / hou / ect @ ect , mary m smith / hou / ect @ ect , daren j farmer / hou / ect @ ect , jim\nhomco / hou / ect @ ect , randall l gay / hou / ect @ ect , pat clynes / corp / enron @ enron ,\nbryce baxter / hou / ect @ ect , rita wynne / hou / ect @ ect , gary nelson / hou / ect @ ect\ncc : regina perkins / hou / ect @ ect , scott mills / hou / ect @ ect , francis s\nlim / hou / ect @ ect\nsubject : buyer vs . seller on intercompany deals\nit has been brought to my attention that sap will not use the buyer as the\ngoverning value associated with intercompany deals but the seller .\ncurrently , sitara captures the volume bridged back on the buy side not the\nsales side . i wanted to make sure that those of you who would be impacted by\nthe change were aware of how sitara would reflected the volumes associated\nwith intercompany deals . if there are any concerns with this , please let me\nknow as soon as possible . i will need to have an adjustment made to the\nvolume feedback reconciliation report to reflect this change once it has been\nfinalized . it may be a month or two before this is implemented but i wanted\nto make sure everyone had advance notice .\nif you have any questions , please do not hesitate to contact me at x 39222 .\nthanks ,\nrhp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.669+0000", "entityId": 1741, "properties": {"text": "Subject: notes from initial enom use case meeting - 2 / 2 / 00\nattached are the notes captured from the whiteboard and discussions on\nwednesday ( as best as i can decipher ) . please note the next steps we\ndiscussed :\ncommitment of key subject experts ( who , how much time dedicated )\nestablishment of the project steering team\ndetail out high level use cases\nthanks for your participation in the meeting , and i look forward to working\nwith you to create another great system .\n- hal\nx 66277", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.674+0000", "entityId": 1742, "properties": {"text": "Subject: 5 th changes @ duke and air liquide\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 04 / 2000\n11 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 04 / 2000 11 : 06 : 27 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : 5 th changes @ duke and air liquide\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.682+0000", "entityId": 1743, "properties": {"text": "Subject: some after thoughts to our meeting\nhi daren ,\ni enjoyed our lunch together yesterday and believe we made a good beginning .\nyou have very high standards for your own performance and are highly\ncommitted to the best outcome in all situations . you are likely to have high\nexpectations for results from our coaching meetings this a good formula for\nsuccess and i will do my best to honor your strengths with a focus on moving\nthe action forward . with this in mind , i had some thoughts and additional\nquestions for reflection following the meeting that i would like to share .\nyou are in a transition from being a high team performer to becoming the\nleader of a high performing team . one of your frustrations as leader is\nthat members of your team seem to rely too much on you to solve problems\nthat arise in the day to day operations of the team . at first you responded\nto their requests for help by solving it for them , then you shifted to using\nquestioning techniques to have them solve the problem with you . you have\nalso offered some training to address the learnings needed to be more\nindependent problem solvers . you are frustrated when some members of the\nteam continue to come to you with questions they should be able to solve and\nwhen they fail to implement changes that you have trained them to use . you\nare seeking ways for the the team to have the same problem solving ability\nthat they come to you for . you have recruited people with this ability and\nyou seek to expand it in the team .\nthis issue was the focus of our first session and needs to be the focus our\nnext meeting . the question is : how to engage the team in solving this\nproblem . how do i get the members of this team to own this responsibility\nand begin creating their own solutions ? what resources are needed by each\nperson to contribute more to this problem ? how do i involve the team members\nmore in the solving of this problem ? what new behaviors do i need to employ\nto increase the involvement of the team ? what do i need to change in myself\nor my relationship to the people in order to engage them more actively in\nthe problem ?\nthere is one dimension that i am clear about . i know that you have used\nperformance appraisals to give feedback . have you put this issue before the\nteam as a whole for the team to solve or have you tried to change individual\nteam members ?\ni look forward to our meeting on the 17 th . keep growing !\nmike\nteamleadership center\nmobile : 713 - 598 - 6732\noffice : 713 - 871 - 8326\nfax : 713 - 871 - 1707\nhome : 409 - 321 - 0680\nmam @ teamlead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.689+0000", "entityId": 1744, "properties": {"text": "Subject: energy operations promotions\ni am pleased to announce the following promotions effective february 1 within\nena energy operations . these individuals have been promoted in recognition\nof their outstanding performance and their contributions to the continuing\nsuccess of enron north america . please join me in congratulating these\nemployees on their promotions .\npromotions to senior director\nkristin albrecht serves as business controller for ena \u0001 , s power business .\nalong with leslie reeves , kristin ensures that power transactions are handled\naccurately and smoothly from beginning to end . kristin \u0001 , s primary focus is on\nrisk controls and daily reporting of positions and p & l for east power\ntrading , west power trading and genco operations .\nbrenda herod serves as business controller for ena \u0001 , s assets business , working\nwith the gas assets group and the texas trading desk . her responsibilities\ninclude global contracts and facilities , risk management , confirmations , gas\nscheduling , volume management , settlements and regulatory compliance for\nhouston pipeline , lrc and enron midstream services .\nleslie reeves is a business controller for ena \u0001 , s power business , working\nclosely with kristin albrecht in managing mid and back office support for the\neast , west and genco power trading groups . her primary responsibilities are\ndocumentation and settlements , with a focus on contract administration , cash\nforecasting and cash management .\nmary solmonson leads ena \u0001 , s global database management group , collecting and\nvalidating information on our customers , contracts , pipelines and facilities ,\nas well as published prices . these activities support overall energy\noperations responsibilities from risk to logistics to settlement . in\naddition , mary has been instrumental in the promotion and implementation of\nthe global systems across enron to provide control , consistency , and common\ndata throughout the organization .\npromotions to director\nscott pleus serves as business controller for enron \u0001 , s emerging products .\nthese businesses include bandwidth , pulp and paper , and weather . his primary\nresponsibilities include day - to - day functions of risk management ,\nconfirmations , pulp and paper scheduling , and settlements as well as long\nterm system development .\nsheri thomas led ena \u0001 , s natural gas off - system settlements function throughout\n1999 . her responsibilities included cash forecasting , collections , and\naccountability for receivables and payables for ena \u0001 , s gas business in the\neast , west and central regions of the us . sheri accepted a new assignment in\njanuary 2000 and is now managing the enron online operations .\npromotions to manager\nbennett kaufman manages the risk management administration function for the\nequity trading and debt trading groups . he has also had experience in\nsupporting the options book for natural gas derivatives trading . prior to\njoining enron in early 1998 , bennett worked in trading operations for\ninvestment banking firms in new york .\nrichard mckeel is the systems integration analyst within global database\nmanagement , overseeing the change management process and new software\ndevelopment needed to interface the global applications with strategic\nsystems \u0001 ) sitara , unify , enpower , solarc , sap , and enrononline .\nother promotions\nspecialist to senior specialist : analyst to specialist :\nsylvia campos \u0001 ) deal compliance contract records tara eslick \u0001 ) financial\ntrading risk management\nkam keiser \u0001 ) gas risk management - central desk victoria versen \u0001 ) gas\nlogistics - east desk\nphillip love \u0001 ) risk controls operational analysis\njeff coats \u0001 ) gas risk management - central desk\nmonica lande \u0001 ) west power risk management ( portland ) senior clerk to staff :\ntrang le \u0001 ) strategic operations \u0001 ) project unify\njohn postlewaite \u0001 ) east power risk management anthony campos \u0001 ) deal\ncompliance contract records\ndiane seib \u0001 ) documentation ( calgary ) kori loibl \u0001 ) gas risk management -\nfinancial books\ndonnie vinson \u0001 ) west power risk management ( portland )\nimelda frayre \u0001 ) strategic operations - project sitara\nclerk to senior clerk :\nstaff to specialist :\nleslie smith \u0001 ) information & records management\namy degeyter \u0001 ) power documentation melinda whalen \u0001 ) documentation ( calgary )\nmichael nguyen \u0001 ) emerging products risk management\nsherlyn schumack \u0001 ) logistics volume management\nkarie hastings \u0001 ) strategic operations - project sitara\nin addition , peggy hedstrom and brent price were promoted to vice president ,\nas announced in the memo issued by enron corp . office of the chairman . peggy\nleads energy operations for enron canada , with responsibility for risk\nmanagement , documentation and gas logistics . peggy also serves as a key\ninterface with canadian pipelines as a member of several industry\ncommittees . brent is the senior business controller for gas trading\noperations in the u . s . his responsibilities include risk management ,\nconfirmations , volume management and settlements for the east , west and\ncentral regions . he also provides operational expertise in the due diligence\nphase of the evaluations of joint ventures and acquisitions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.694+0000", "entityId": 1745, "properties": {"text": "Subject: february & january 2000 industrial activities\nthis means of communication is used because of trading hour .\nfyi . . . only :\ni have some links for february to true - up today and will finalize them by\nthe end of today .\ni will review january industrial activity { alloc . , links / buybacks , ect . } by\nthe end of tomorrow , tuesday .\ni will be taking vacation this friday , feb 11 th and monday , feb 14 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.699+0000", "entityId": 1746, "properties": {"text": "Subject: february issues\ni am currently going over the february setup in unify to locate current and\npotential problems for the month . if you like , i would be glad to get\ntogether tomorrow afternoon and review the problems just to give you an\noverview on what i see .\nlet me know .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.703+0000", "entityId": 1747, "properties": {"text": "Subject: february buyback deals\njust in case you want to have around . . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth seaman / hou / ect on 02 / 07 / 2000\n10 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenneth seaman 02 / 07 / 2000 10 : 17 am\nto : julie meyers / hou / ect @ ect , robert e lloyd / hou / ect @ ect\ncc :\nsubject : february buyback deals\nattached is my list for feb . please let me know if you see anything out of\nthe ordinary .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.708+0000", "entityId": 1748, "properties": {"text": "Subject: hl & p flow month to date\nattached are the month to date flow volumes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.713+0000", "entityId": 1749, "properties": {"text": "Subject: tom o ' connor shut - in list\nthe following meters were shut - in for approximately 12 hours beginning\napproximately 3 : 00 am on sunday , feburary 6 due to high pressure on the tom\no ' connor system .\n0989703 sarco creek\n0984654 dennis o ' connor\n0989708 c e swyka\n0989751 allison\n0984273 copano # 1\n0984273 copano # 2\n0984126 copano # 3\n0984136 lake pasture\n0986511 huff fld common point # 4\n0989709 o ' connor bp central point\nif you have any questions please feel free to call me at 36449 .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.717+0000", "entityId": 1750, "properties": {"text": "Subject: woops . . . .\non beaumont methanol , i made a mistake for the noms at the start of the month\n. . . .\nfor feb 6 to 29 on ticket 93199 , i entered 18 , 500 / d . . . . and it should have\nbeen 18 , 000 / d\nplease change the ticket . . .\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.723+0000", "entityId": 1751, "properties": {"text": "Subject: 2000 goals & objectives\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beth a ryan / hou / ect on 02 / 07 / 2000 03 : 38\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian redmond\n02 / 07 / 2000 03 : 35 pm\nto :\ncc :\nsubject : 2000 goals & objectives\nteam :\nthe attached provides a summary of our goals & objectives for 2000 . we have\na number of challenges this year , but we making good progress building on our\nsuccess in 1999 .\nthe 2000 goals and objectives were developed as part of last year ' s budget\nprocess and were refined during our recent offsite . a compilation of the\npresentations from the offsite were distributed to each of the vp ' s for\ndiscussion with their groups . it will take continued effort from each of us\nto shift our source of earnings from monetizations to commercial\norigination . as always , your ideas and active participation is encouraged .\nregards ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.728+0000", "entityId": 1752, "properties": {"text": "Subject: - - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 07 / 2000\n04 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 02 / 07 / 2000 04 : 45 : 52 pm\nto : ami _ chokshi @ enron . com\ncc :\nsubject :\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.732+0000", "entityId": 1753, "properties": {"text": "Subject: hpl / eastrans nom - 2 / 8 / 00 ; hpl busby redelivery / sale - 2 / 8 / 00\nthis is to nominate 32 , 000 mmbtu / d from hpl into eastrans for 2 / 8 / 00 .\nwe will continue to redeliver 25 , 000 mmbtu into pg\nwe will redeliver 7 , 000 mmbtu into hpl at the busby comp . station .\nin addition , please continue our daily sale of 1 , 000 mmbtu / d for 2 / 8 / 00 . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.738+0000", "entityId": 1754, "properties": {"text": "Subject: fortune most admired ranking\ncongratulations ! for an unprecedented five years in a row , enron has been\nranked the \" most innovative company in america \" by fortune magazine . in\naddition , for the first time , enron has also been ranked # 1 in \" quality of\nmanagement , \" topping general electric and omnicom group , and our \" employee\ntalent \" has been ranked # 2 , behind goldman sachs and ahead of cisco\nsystems . america ' s most admired management team is paired with the best and\nbrightest employee talent . that winning combination has led to enron ' s\nfive - year \" most innovative \" sweep . the \" most admired \" list will appear in\nfortune ' s feb . 21 issue , available on newsstands feb . 8 .\nyou are the reason we have achieved such consistent recognition . you bring\nthe innovative ideas to enron and create new business opportunities . you\ncontribute to our quality management team . and you are the outstanding\nemployee talent that makes enron such an exciting and successful company .\nkeep up your outstanding work , and we look forward to even greater\nachievements in 2000 !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.742+0000", "entityId": 1755, "properties": {"text": "Subject: 8 th noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 07 / 2000\n10 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 07 / 2000 10 : 19 : 10 am\nto : \" ami chokshi \"\ncc :\nsubject : 8 th noms\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.747+0000", "entityId": 1756, "properties": {"text": "Subject: union gas - doehrman # 1\ntom ,\nthe doehrman # 1 well came on line for first delivery on monday , 2 / 7 / 00 at\n11 : 45 am . the contract calls for intra - month pricing for deliveries that\ncommence after the first day of the month . please create a one month\nbaseload firm deal ticket for the remaining days of the month based on the\nfollowing information :\ncounterparty meter volume price\nunion gas operating company 9825 500 mmbtu / d 100 % gas daily less $ 0 . 10\nsusan will create a committed reserves firm ticket for the remaining term of\nthe deal once our geologists have gathered enough data to forecast the\nreserves of this well ; at such time , we will request that this ticket be\nzeroed out .\nif you have any questions or concerns , please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.752+0000", "entityId": 1757, "properties": {"text": "Subject: mid - tex deals\nhey gang ,\ni have created the new deals reflecting the mid - texas meters for the\nfollowing deals beginning in january 2000 :\netoco : from hpl meter 393 to mid - texas meter 9738\nold sitara deal = 133435\nnew sitara deal = 163874\nrichardson : from hpl meter 7283 to mid - texas meter 9807\nold sitara deal = 141691\nnew sitara deal = 164003\nmueller : from hpl meter 7260 to mid - texas meter 9769\nold sitara deal = 156247 feb . 2000 through june 2000\nold sitara deal = 143885 jan . 2000 only\nold sitara deal = 143887 jan . 2000 only\nnew sitara deal = 164172\nplease take a look at the deals and let me know if i have doubled volumes , or\nif there is anything else i need to do to make things work better . . .\no ' neal 3 - 9686", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.756+0000", "entityId": 1758, "properties": {"text": "Subject: 9 th noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 08 / 2000\n02 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 08 / 2000 12 : 23 : 23 pm\nto : \" ami chokshi \"\ncc :\nsubject : 9 th noms\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.762+0000", "entityId": 1759, "properties": {"text": "Subject: gary ,\ncould you please remove scada / mips from the following hpl meters . these\nmeters are where mid - texas interconnects with\npg & e ' s system , and there should not be any measurement taking place on hpl .\nthese meters were set up originally when we thought\nthat every meter on mid - texas should automatically have a corresponding meter\non hpl . this assumption is now incorecct .\n980388\n980389\n980390\n980391\n980392\n980393\n987271\n987260\n987283\nthanks\ngeorge", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.767+0000", "entityId": 1760, "properties": {"text": "Subject: global data management - gas asset support\nin order to align the global data management responsibilities for contracts\nand facilities with the overall operations support for brian redmond ' s asset\narea , the global contracts and global facilities functions for assets have\nbeen transferred to steve venturatos within brenda herod ' s gas assets\noperations organization . all contract and facility requests for the enron\ncompanies listed below should be directed to steve .\nhpl companies\nhouston pipe line\nmid texas pipeline\nenron field services\nhpl compression company\nhpl resources\nlrc companies\nenron storage company\nenron storage co . , llc\nlouisiana resources company\nlouisiana gas pipeline company limited partnership\nlouisiana resources pipeline company limited partnership\ndenver companies\nfort union llc\nenron midstream services powder river\nlost creek\nproject hurricane\nbridgeline holding l . p .\nbridgeline gas distribution llc\nbridgeline gas marketing llc\nglobal requests for enron north america and offsystem pipelines will continue\nto be handled in my area by connie sutton . responsibility for global\ncounterparty setups and updates remains centralized in my organization headed\nby mary gosnell .\nif i have missed someone in the distribution , please forward .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.773+0000", "entityId": 1761, "properties": {"text": "Subject: re : accounting arrangements for 98 - 6725 , 98 - 6575 & 98 - 6014\nanita ,\nplease be advised that 98 - 6725 has been placed on stranger ' s gas ( per daren\nfarmer ) until a price negotiation has been reached .\nthanks\n- jackie -\n3 - 9497\nanita luong\n02 / 08 / 2000 12 : 07 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : accounting arrangements for 98 - 6725 , 98 - 6575 & 98 - 6014\njackie . . . . . . . . . . . . see below for track id .\ni don ' t see a deal for meter 6725 in path manager for days 1 - 20 thus i cannot\ncreate accounting arrangement for these .\njackie young\n02 / 07 / 2000 03 : 12 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : accounting arrangements for 98 - 6725 , 98 - 6575 & 98 - 6014\nhi anita ,\ncan you please set up an accounting arrangement for the above meters for\n1 / 2000 production ?\n98 - 6725 receipt meter 215 k\n98 - 6575 receipt meter 96026573 k 75780\n98 - 6014 receipt meter 96026573 k 75959\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.781+0000", "entityId": 1762, "properties": {"text": "Subject: fw : calpine daily gas nomination ( revised )\n> - - - - - original message - - - - -\n> from : ricky archer\n> sent : wednesday , february 09 , 2000 9 : 19 am\n> to : ' rlloyd @ enron . com '\n> cc : ' dfarmer @ enron . com ' ; ' jyoung @ enron . com '\n> subject : calpine daily gas nomination\n>\n> >\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.787+0000", "entityId": 1763, "properties": {"text": "Subject: 987012\ndaren , i just talked to mary and she said that they developed the meter\n987341 for the meters that you had nominated under the 987012 . under\naggregate 7012 is 4045 ; 6026 ; 6114 ; 6427 ; 6848 ; 9755 ; these should all be\nunder the 987341 . do we need to renominate these meters or do i just move\nthem in pops . let me know daren i aim to please ( i think that ' s a southern\nterm ! ! )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.793+0000", "entityId": 1764, "properties": {"text": "Subject: sitara updates\nthis is a note to update you guys on the progress i ' m making concerning\ncleaning - up and combining well - head deals . . . so far , i have completed :\neog :\ndeal 126358 reflects 0 volumes on meter 6067 march 2000 forward\ndeal 126281 reflects volumes on meter 6296 as well as volumes moved from\nsitara deal 126358 ; all volumes are at meter 6296\nforest :\ndeal 132832 reflects 0 volumes march 2000 forward\ndeal 139397 reflects the combined volumes from both deals on meter 6396\nsuemaur :\ndeal 138658 reflects 0 volumes march 2000 forward\ndeal 138658 reflects the combined volumes from both deals on meter 9766\na similar effort will be made for : saxet ( deals 154608 / 138546 ) ; comstock\n( deals 125827 / 125828 / 125899 ) ; and costilla ( deals 125783 / 125900 )\no ' neal 3 - 9686", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.797+0000", "entityId": 1765, "properties": {"text": "Subject: out thurs & friday\ni will be out of the office on thursday and friday . my pager may not reach\nme but i will be checking my voice mail .\nplease call george grant in my absence at ext . 36224 . thanks , pat\nget with me today if you need anything by the end of the week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.802+0000", "entityId": 1766, "properties": {"text": "Subject: re : union gas - doehrman # 1\nthe new sitara ticket # is 165331", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.806+0000", "entityId": 1767, "properties": {"text": "Subject: transport p / l ( with fuel ) report\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elsa villarreal / hou / ect on 02 / 09 / 2000\n01 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nimelda frayre\n02 / 04 / 2000 08 : 54 am\nto : carrie hollomon / hou / ect @ ect , kimberly s olinger / hou / ect @ ect , bryce\nbaxter / hou / ect @ ect , gary nelson / hou / ect @ ect , randall l gay / hou / ect @ ect ,\ngeorge smith / hou / ect @ ect , theresa branney / hou / ect @ ect , maria\ngarza / hou / ect @ ect , chris germany / hou / ect @ ect , judy townsend / hou / ect @ ect , dan\njunek / hou / ect @ ect , mark friedman / hou / ect @ ect , jeffrey c gossett / hou / ect @ ect ,\nkatherine l kelly / hou / ect @ ect , eric bass / hou / ect @ ect , elsa\nvillarreal / hou / ect @ ect\ncc : scott mills / hou / ect @ ect\nsubject : transport p / l ( with fuel ) report\njust wanted to inform all of you about the new report option that is now\navailable in cpr print manager . the new report includes the same information\nthat is found on the \" transport profit / loss \" report plus fuel detail\ninformation that was not available on the original report . examples of the\nadditional fuel detailed information that can be found on the new report are\nlisted below :\nfuel percent\nfuel volume\nfuel charge\nthe new report can be found in cpr print manager in the estimated economics\nreport category as illustrated below . if you have any questions regarding\nthis new \" transport p / l ( with fuel ) \" report , please call me at x 35423 .\nimelda frayre", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.810+0000", "entityId": 1768, "properties": {"text": "Subject: pathing procedures for buybacks\nto path a buyback { mop ; supply list } with an existing market deal\n{ typically baseload } please follow these steps :\ntheory # 1 : example ; supply deal = 5 . 0 / d supply deal = 7 . 0 / d & market deal = 10 . 0 / d\n1 ) follow steps 1 & 2 in theory # 1 .\n2 . ) additionally , create a service transportation contract { i . e . k - 215 } in\nthe path list .\n2 . ) path 7 . 0 on the \" buy / sell \" path list contract and 10 . 0 on the\ntransport { i . e . k - 215 } contract .\nthis procedure will eliminate an out - of - balance in mop for both the \" supply\ndeal and the market deal \" and send 3 . 0 to pop via x - port k - 215 .\nnote : never path a buyback { supply deal } using a receipt transport contact\nand the { market deal } using a delivery transport contract .\npop ' s should only reflect the \" net \" on these two transactions { buyback\nand baseload deal } .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.815+0000", "entityId": 1769, "properties": {"text": "Subject: 32 , 000 mmbtu nom remains in place ; 7 , 000 mmbtu from fuels cotton\nvalley , 25 , 000 mmbtu into valeroi\nno nom change on purchase and sale - eastrans for 2 / 10 / 2000 - ( see reference ) .\nreduce sale to 500 mmbtu / d from fuels cotton valley for 2 / 10 / 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.819+0000", "entityId": 1770, "properties": {"text": "Subject: wassup ! ! ! ! ! !\n- wassup . avi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.824+0000", "entityId": 1771, "properties": {"text": "Subject: re : entex volumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 09 / 2000\n01 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharles _ w _ allmon @ reliantenergy . com on 02 / 09 / 2000 11 : 44 : 58 am\nto : ami _ chokshi @ enron . com\ncc : royal _ b _ edmondson @ reliantenergy . com , ghanks @ ect . enron . com\nsubject : re : entex volumes\nami ,\nsorry that i haven ' t followed up yet , but we are in the middle of\nimplementing sap ( which i ' m sure\nyou have heard about ) , and haven ' t had time to put the sample report\ntogether .\nwhat i have at\npresent is a report from our scada system that must be run manually each day ,\nto get a report of\nyesterday ' s volumes , beginning and ending at 7 : 00 a . m . the problem is , until\ni\ncan revise it , the\nreport shows all of our city gate volumes for all suppliers , and i need to\ncreate a new one with only the\nhpl stations . i also want to set it up for automatic creation , to run at\napprox . 8 : 00 a . m . daily . it would\nthen be available to you for viewing via some type of bulletin board , such as\nis\ncurrently being operated\nby george perrine . i will be coordinating this effort with george in that\nregard . until i have completed the\nentire task , however , i will try to send you a daily ( 5 days per week ) report\ncreated manually , showing the\nprevious day ' s volumes for our monitored hpl stations . i am shooting for\nstarting this tomorrow .\ni have also been discussing this with royal edmondson of our gas supply\ndept . , and he wants us all\nto meet to discuss coordinating our efforts and sharing all information\nbetween\nall interested parties . he\nwill be getting back with you on this .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.829+0000", "entityId": 1772, "properties": {"text": "Subject: change into midcon due to ppa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 09 / 2000\n10 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 09 / 2000 09 : 00 : 49 am\nto : \" ami chokshi \"\ncc :\nsubject : change into midcon due to ppa\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.834+0000", "entityId": 1773, "properties": {"text": "Subject: mips january actuals\nfyi - not sure of the affect on p & l .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 02 / 10 / 2000\n01 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge grant\n02 / 10 / 2000 01 : 23 pm\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : mips january actuals\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george grant / hou / ect on 02 / 10 / 2000 01 : 22\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nromeo d ' souza\n02 / 10 / 2000 11 : 09 am\nto : george grant / hou / ect @ ect\ncc : dave nommensen / hou / ect @ ect , michael eiben / hou / ect @ ect\nsubject : mips january actuals\ngeorge ,\nthere seems to be a problem with mips while trying to actualize\nthe january 2000 data ( y 2 k related ) . in order to actualize jan\npops has to manually load the actual files into pops , the\nside effect of this is that some of the feb data may be loaded\nwith numbers that are old . this will be rectified as we complete\nloading the jan actuals and then load the most recent mips\nmeasured prelim numbers for feb .\npops is currently processing the mips files in the order they\nwere received , we should be done with this today . please inform\nus of any abnormalities that you see tommorrow .\nthanks\nromeo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.839+0000", "entityId": 1774, "properties": {"text": "Subject: sale to shoreline\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 10 / 2000\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 02 / 10 / 2000 02 : 21 pm\nto : joanie h ngo / hou / ect @ ect , katherine herrera / corp / enron @ enron\ncc : stella l morris / hou / ect @ ect\nsubject : sale to shoreline\njoanie ,\nlogistics is waiting to hear from daren on this issue . he will either need\nto extend the deal or maybe there should be another deal in place . this\ndeal 155118 is valid on 1 / 26 / 00 only , but the rest of the volume you are\nlooking for is scheduled on days 1 / 27 - 1 / 31 . i am sure there is no\npricing on those days .\ni will let you know as soon as i hear from them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.844+0000", "entityId": 1775, "properties": {"text": "Subject: nomination 2 - 11 - 2000 ; 2 - 9 and 2 - 10\neffective 2 - 11 ( friday ) our nom into eastrans will revert to 32 , 000 mmbtu / d\nwith 25 , 000 into pg & e and 7 , 000 from fuels cotton valley on purchase and\nsale .\nalso , we will sell you 500 mmbtu / d from fcv .\non 2 - 10 - 2000 , we zeroed out the nom from hpl to eastrans due\nto force majeure breakdown of compressor . we sold you\n7 , 000 mmbtud at gas daily mid - $ . 05 and 500 mmbtud at inside\nferc monthly index - $ . 05 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.849+0000", "entityId": 1776, "properties": {"text": "Subject: curtains\nhey ! the curtains look good - - i hope they do when they are hung - - lacy & i\nare planning to come next friday the 18 th . when ya ' ll go to the rodeo . i ' m\ntaking a personal day from the bus and leaving early . thought i would bring\nthem . answer & let me know if that ' s ok . if you need them before then i ' ll\ntry to get them mailed . hope sweet cole is feeling better over his cold .\nlove you , mom\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.854+0000", "entityId": 1777, "properties": {"text": "Subject: copano changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 10 / 2000\n10 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 10 / 2000 10 : 23 : 49 am\nto : \" ami chokshi \"\ncc :\nsubject : copano changes\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.859+0000", "entityId": 1778, "properties": {"text": "Subject: sale to shoreline\ncharlotte , please get with daren .\nthanks , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 11 / 2000\n04 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stella l morris 02 / 10 / 2000 02 : 26 pm\nto : daren j farmer / hou / ect @ ect\ncc : charlotte hawkins / hou / ect @ ect\nsubject : sale to shoreline\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 10 / 2000\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 02 / 10 / 2000 02 : 21 pm\nto : joanie h ngo / hou / ect @ ect , katherine herrera / corp / enron @ enron\ncc : stella l morris / hou / ect @ ect\nsubject : sale to shoreline\njoanie ,\nlogistics is waiting to hear from daren on this issue . he will either need\nto extend the deal or maybe there should be another deal in place . this\ndeal 155118 is valid on 1 / 26 / 00 only , but the rest of the volume you are\nlooking for is scheduled on days 1 / 27 - 1 / 31 . i am sure there is no\npricing on those days .\ni will let you know as soon as i hear from them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.864+0000", "entityId": 1779, "properties": {"text": "Subject: gathering contract volumes feb 00\nwe have been looking at the daily volumes for the gathering contract to\nanalyze the producer services portion of the p & l . to do this , we have been\nlooking at daily volumes on the 96026572 contract . pops shows a daily bav of\napproximately 612 , 000 . mops shows a daily bav of approximately 601 , 000 . i\nwanted to confirm that these volumes sound reasonable for you . by the way ,\nit also looks like the noms for the gathering contract are a lot higher ,\naround 750 , 000 per day .\nplease advise as to how you feel these bav ' s come in compared to what you\nexpect . thank you .\nheidi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.870+0000", "entityId": 1780, "properties": {"text": "Subject: clear lake methanol\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 02 / 14 / 2000\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngroetzingerp @ valero . com on 02 / 11 / 2000 04 : 08 : 47 pm\nto : gary w lamphier / hou / ect @ ect\ncc :\nsubject : clear lake methanol\nour people tell me that the t / a is going as planned and clmp plans to begin\nstart up on sunday . since it is a cold startup , it could take as long as a\nweek to get to full rates . in any event , clmp plans to begin pulling gas at\nreduced rates late sunday or so .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.875+0000", "entityId": 1781, "properties": {"text": "Subject: alternative work schedule status\nas you might already know we had to reschedule our second meeting that was\nscheduled for wednesday 2 / 16 to tuesday 2 / 22 in room 3013 . lunch will be\nprovided . i apologize and will avoid rescheduling our meetings in the future .\ni was encouraged by the excellent dialogue and contribution at our first\nmeeting and believe we have the right group together to make the changes we\nknow are needed in our work hours .\nhere is the list of items we agreed to cover at the next meeting :\nschedulers were going to touch base with their pipeline reps and other\ncontacts on the different schedules they are using and document and discuss\nat the next meeting .\neach manager was going to discuss with their group what would work best for\ntheir desk and present this to the group at our next meeting\nbob was going to gather information on external 12 hour schedules and follow\nup with hr on schedules being used at enron\nthe following is what i heard at the first meeting :\nour first item should be to establish a weekend and holiday schedule that\nwould more or less guarantee ( other than maybe an occasional call ) you have\nthe weekend off . cross - training seemed to be the key here . some desks seemed\nto doubt this could be accomplished with current staffing levels .\ncross - training is not an easy thing to accomplish and takes a \" just do it \"\nattitude .\nthere doesn ' t have to be an across the board solution for logistics . however\nall solutions we come up with will need to be formally documented so it will\nbe easy to move to other alternatives as the business needs of each desk\nchanges .\nlate daily hours are a reality and at some desks tied directly to traders\nwillingness to do deals at any time . as we get a better handle on what other\ncompanies are doing we might be able to find something that will help address\nthis . everyone is realistic about the exceptions such as bid - week etc . and\nreally have no problems with those times when a long day is part of the job .\nthere were mixed reactions to a dedicated weekend team as opposed to some\ntype of rotating group . mixed feelings about whether the group would be open\nto a mandatory rotating weekend schedule .\nfeel free to get back to me if you have any comments or clarification . i ' m\nlooking forward to our next meeting - bob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.880+0000", "entityId": 1782, "properties": {"text": "Subject: lindholm oil , inc .\nlindholm oil , inc . 6575 500 mmbtu / d 100 % gas daily less $ . 15\ni will create a committed reserves ticket for the remaining term of the deal\nonce our geologists have gathered enough data to forecast the reserves of\nthis well , at such time , we will request that this ticket be zeroed out .\nplease supply the sitara number once entered . if you have any questions ,\nplease give me a call .\nsusan x 33321\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 02 / 14 / 2000 03 : 25\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n02 / 08 / 2000 09 : 31 am\nto : tom acton / corp / enron @ enron\ncc : bryan hull / hou / ect @ ect , daren j farmer / hou / ect @ ect , julie\nmeyers / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : union gas - doehrman # 1\ntom ,\nthe doehrman # 1 well came on line for first delivery on monday , 2 / 7 / 00 at\n11 : 45 am . the contract calls for intra - month pricing for deliveries that\ncommence after the first day of the month . please create a one month\nbaseload firm deal ticket for the remaining days of the month based on the\nfollowing information :\ncounterparty meter volume price\nunion gas operating company 9825 500 mmbtu / d 100 % gas daily less $ 0 . 10\nsusan will create a committed reserves firm ticket for the remaining term of\nthe deal once our geologists have gathered enough data to forecast the\nreserves of this well ; at such time , we will request that this ticket be\nzeroed out .\nif you have any questions or concerns , please give me a call .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.885+0000", "entityId": 1783, "properties": {"text": "Subject: meter 5961 , dunagan , j . a . # 1\ndaren :\ni have been informed that this meter has been disconnected . the 215 has a\nnom of 74 / day at this meter . the first day i have a - 0 - flow is 2 / 12 / 00 .\nlet me know if you have other information .\nthanks !\ncharlotte", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.890+0000", "entityId": 1784, "properties": {"text": "Subject: meter 9769 jan 00\naimee / george :\nper daren , we have a purchase deal at meter 9769 , but the allocation is\nnomed on the pg & e contract . could you please verify with brian if this is\ntruely their gas or ours ? thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.897+0000", "entityId": 1785, "properties": {"text": "Subject: re : sale to shoreline\ndaren you are correct in that this was only in mops for the 26 th . it was\nedi ' d over to pops from the 25 th through the 31 st populating all days with\nthe 16 , 700 nom . the nom was never - 0 - out in pops therefore the change\nnotification process in pops did not pick up a change at this meter . this\nmeter is pathed by kim and confirmed by me - it is extremely odd that this\nwas missed in mops . the record would have been out of balance and someone ,\nif not several people , normally would make a comment on this . also - all\nof my records indicate that the 16 , 700 was good through the 31 st except the\nmops entry . my confirmations with koch didn ' t reflect the - 0 - ; the last\nreport i have from koch indicated the 16 , 700 stayed on , there was no record\nof a phone call indicating anything other than 16 , 700 . it is very odd for\nthis many checks and balances to fail . also , the volumes were being sent\nback to mops which no one caught .\ni have spoken with koch today and they agree that the 16 , 700 should have gone\nto - 0 - therefore i have removed the nom from pops confirmed volumes and\nre - allocated the meter . the oba has taken the hit and i am working off the\nimbalance now .\ndaren , i am sorry that you had to look into this when you feel this is my\nresponsibility . stella was trying to help me out in clearing up errors\nbecause i was buried in current activity , thus the e - mail to you asking for\nyour help .\nif this doesn ' t answer all the questions , just give me a call .\nthanks ,\ncharlotte\ndaren j farmer\n02 / 14 / 2000 12 : 50 pm\nto : stella l morris / hou / ect @ ect , charlotte hawkins / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : re : sale to shoreline\nstella and charlotte ,\ni looked into this deal . we sold this gas for one day only . in mops , the\npath was nominated for 1 / 26 only . however , in pops the path was nominated\nand confirmed for 1 / 26 - 1 / 31 . this should have been showing up as a\nbridgeback error during the month . also , someone should have identified that\nthe path / nom in mops wasn ' t the same as the nom in pops . this discrepancy\nshould have been found before we closed out january .\ni researched this problem by reviewing both systems ( looking at the path id\nin pops , finding it in mops , and checking the audit on the path in mops ) .\nthis type of issue should be researched and solved by the logistics group ,\nwho has all the necessary tools to find the problem . the resolution , not the\nproblem , should have been presented to myself or the marketer , with an\nexplanation of what happened . some one still needs to find out how the gas\nwas confirmed for the 27 th - 31 st .\nsince the gas apparently flowed , we will have to apply the overflow to the\noba . unless you can find a missing transport contract .\nd\nfrom : stella l morris 02 / 10 / 2000 02 : 26 pm\nto : daren j farmer / hou / ect @ ect\ncc : charlotte hawkins / hou / ect @ ect\nsubject : sale to shoreline\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 10 / 2000\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 02 / 10 / 2000 02 : 21 pm\nto : joanie h ngo / hou / ect @ ect , katherine herrera / corp / enron @ enron\ncc : stella l morris / hou / ect @ ect\nsubject : sale to shoreline\njoanie ,\nlogistics is waiting to hear from daren on this issue . he will either need\nto extend the deal or maybe there should be another deal in place . this\ndeal 155118 is valid on 1 / 26 / 00 only , but the rest of the volume you are\nlooking for is scheduled on days 1 / 27 - 1 / 31 . i am sure there is no\npricing on those days .\ni will let you know as soon as i hear from them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.905+0000", "entityId": 1786, "properties": {"text": "Subject: valentines day help\nred - neck valentine ' s love poem\ncollards is green\nmy dog ' s name is blue\nand i ' m so lucky\nto have a sweet thang like you .\nyore hair is like cornsilk\na - flapping in the breeze\nsofter than old blue ' s\nand without all them fleas .\nyou move like the bass ,\nwhich excite me in may .\nyou ain ' t got no scales\nbut i luv you anyway .\nyo ' re as satisfy ' n as okry\njist a - fry ' n in the pan .\nyo ' re as fragrant as \" snuff \"\nright out of the can .\nyou have som ' a yore teeth ,\nfor which i am proud ;\ni hold my head high\nwhen we ' re in a crowd .\non special occasions ,\nwhen you shave under yore arms ,\nwell , i ' m in hawg heaven ,\nand awed by yore charms .\nstill them fellers at work ,\nthey all want to know ,\nwhat i did to deserve\nsuch a purdy , young doe .\nlike a good roll of duct tape\nyo ' re there fer yore man ,\nto patch up life ' s troubles\nand fix what you can .\nyo ' re as cute as a junebug\na - buzzin ' overhead .\nyou ain ' t mean like those far ants\ni found in my bed .\ncut from the best cloth\nlike a plaid flannel shirt ,\nyou spark up my life\nmore than a fresh load of dirt .\nwhen you hold me real tight\nlike a padded gunrack ,\nmy life is complete ;\nain ' t nuttin ' i lack .\nyore complexion , it ' s perfection ,\nlike the best vinyl sidin ' .\ndespite all the years ,\nyore age , it keeps hidin ' .\nme ' n ' you ' s we go together\njust like a moon pie\nwith a rc cold drank ,\nyep , we go together\nlike a skunk goes with stank .\nsome men , they buy chocolate\nfor valentine ' s day ;\nthey git it at wal - mart ,\nit ' s romantic that way .\nsome men git roses\non that special day\nfrom the cooler at kroger .\n\" that ' s impressive , \" i say .\nsome men buy fine diamonds\nfrom a flea market booth .\n\" diamonds are forever , \"\nthey explain , suave and couth .\nbut for this man , honey ,\nthese won ' t do .\ncause yo ' re too special ,\nyou sweet thang you .\ni got you a gift ,\nwithout taste nor odor ,\nmore useful than diamonds . . .\nit ' s a new trollin ' motor ! !\nl shore due luv you darling ,\naint love grand ! ! ! ! . . . . .\nbubba", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.910+0000", "entityId": 1787, "properties": {"text": "Subject: the expatriate zone - issue # 1 2 / 14 / 00\nthe expatriate zone 1 / 15 / 00 issue # 1\nwhere every day is \" just another shitty day in paradise \"\nthe zine for the tropically impaired\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - in this issue\n* featured expatriate of the month - james \" sunny jim \" white\n* travel into \" the zone \" - and beat the irs at the same time .\n* \" jimmydotcom \" - where ' s that parrot head book we ' ve been hearing about ?\n* club trini update\n* millennium change bubba style - see what all the hullabaloo online was\nabout .\n* cabo 1999 - bad boys of the \" expatriated phan club \" spotted south of the\nborder .\n* parrothead pilots association - new club in the making .\n- - - - - - - - - - - - - - - - - - - -\nfor the web page edition go to :\nit includes some great pictures . we suggest printing it out and laying it out\non your coffee table . that way , you have somewhere to set your \" red stripe \"\nso you don ' t leave rings on the table .\n- - - - - - - - - - - - - - - - - - - -\nwelcome to the expatriate zone\nwelcome to the \" first \" issue of \" the expatriate zone , \" the official\nnewsletter of the new \" expatriate zone \" web site . after publishing \" the\ntemperate zone \" for the past two years , i ' m taking the opportunity to join\nforces with bob segel who has been publishing \" the coconut modem \" with karen\ncoyne since april of 1994 .\nlast year , after operating in aol exclusively , bob created \" parrotkey . com \"\nout on the \" internet \" where it would join it ' s sister site on aol and be\naccessible to all parrot heads . at the time bob expanded \" pk , \" we had been\nworking on my little area of \" club st . somewhere , \" and the new\n\" parrotkey . com \" seemed like the perfect place to open the doors of the club .\nwhile we were talking about the direction we wanted to see \" club st .\nsomewhere \" and \" parrot key \" go , we could see that this was the perfect chance\nto , as emeril says , \" kick it up a notch . \"\njimmy buffett ' s music was a big part of our lives , but even more so was the\n\" expatriate lifestyle \" he sang about . a lifestyle that includes tropical\ntravel , sailing , boating , parasailing and surfing , and yes , the music and\nlyrics of mr . james w . buffett .\nso it is , that we created our new web site , \" the expatriate zone \"\n, along with this newsletter of that same\nname . in december , \" the expatriate zone \" opened its doors with its \" island\ntrading post \" with its holiday shopping service at the \" island trading post . \"\nover 3 , 600 people visited the site the first day , and daily prizes were\nawarded for the first two weeks . the \" island trading post \" will open again\nsoon , offering a complete line of tropical items , not just to those of us\nthat live a few blocks from wal - mart , but also for those of us lucky enough\nto be on a sailboat or living on an island . for not , we ' ll start with the\n\" t - shirt of the month . \"\nwe want \" the expatriate zone \" to not only keep you entertained and informed\nwhile you toil away at your everyday \" corporate gig , \" but it will also get\nyou ready for that day you finally shuck it all and disappear down into \" the\nexpatriate zone . \"\nwe hope you all enjoy our new effort , and also continue to visit \" parrot key \"\nand \" club st . somewhere . \" both of which will be closely associated with \" the\nexpatriate zone \" and \" parrotkey . com . \"\njackson & bob\n- - - - - - - - - - - - - - - - - - - -\n\" expatriate of the month \"\njames \" sunny jim \" white\nwhen i first ventured on the internet in 1995 , i ran in to a guy named \" sunny\njim \" who was living down in the cayman islands . we never really got a chance\nto connect , for which i am truly sorry . but , when something is supposed to\nhappen , it usually does .\non the first leg of my \" road dawg \" tour\n( click on \" road dawg \" ) i stayed with my good friend alex & janet leist and\ntheir wonderful children . over the five days i stayed at their house , alex\nand i listened to a lot of music , and one of the guys we both liked was\n\" sunny jim . \" i bought one of james ' cds from alex , and fell in love with it\nimmediately . the cd was his second , called \" life in the laid back lane . \"\nlittle did i know that i would meet up with james and his roady \" shady floyd \"\nseveral times over the next six months . james was embarking on his first real\ntour of the us since he moved \" down island \" almost twelve years ago . we got\nseveral chances to talk over the summer , and we will have an in depth article\nabout this \" expatriate \" soon on \" the expatriate zone \" web site . be sure to\nwatch for it .\nin the meantime , here are a couple of quick things i learned about this great\nmusician . when i asked him about his \" expatriate \" status , his reply was ,\n\" technically , an expatriate is someone who lives outside their own country ,\nfor whatever reason . for some it ' s legal reasons , others just because they\nwant to , or that ' s where the work is . i have been an expatriate for nearly\ntwelve years now . i have pretty fully lived the whole caribbean experience ,\nfrom climbing the coconut trees and spear fishing , to sailing , scuba diving ,\nhot afternoons on the beach and romantic moonlit nights under the swaying\npalms . \"\neven as james is about to repatriate himself and his family , i ask if there\nwere any other places he would consider living as an expatriate ? \" maybe\nsomewhere on the coast of mexico or in a group of islands that are all within\nsailing distance of one another , \" was the advice he gave .\nuntil we can learn more of \" sunny jim ' s \" world , stop by his web site at\nand if you don ' t have one of his cds , including his\nlatest release \" sandbar serenade , \" for goodness sake , pick one up . you can\nalso read a great interview alex conducted with james at\n- - - - - - - - - - - - - - - - - - - -\ntravel into \" the zone \"\n\" some are running from the irs \"\nwe strongly believe that we all have to get away from our computer screens\nand out into the real world as often as we can . does this mean we give up one\nour most useful tools of communication , computers ? heck no ! with laptops ,\ncell phones and gps systems , we can go anywhere , and still stay in touch if\nwe feel the need . but get real and throw that \" pager \" away as soon as you can .\nwe hope to keep this section current and informative , hopefully hearing from\nthose of you already living your lives in \" the zone , \" helping the rest of us\nprepare for our getaway from the cities . i ' m sure there are some of us that\nare preparing to \" disappear \" to places like costa rica , where the \" the\nexpatriate zone \" will become an important tool .\nhow would you like to check out a place to \" disappear \" to and write it off\nyour taxes at the same time ? want to go down into \" the zone \" to places like\nthe bahamas , belize , st . croix , puerto rico , bonaire , the dominica republic\nor saba ? want to do something for the planet , work with dolphins , save a\ncoral reef , or study monkeys and the rain forest at the same time ?\nwell we have the answer . check out these organization ' s web sites , and then\nget some advice from your financial advisor on 501 c non - profit organizations .\ndepending on the tax bracket you ' re in , uncle sam could end up paying for up\nto half the trip .\nthe oceanic society\nearthwatch institute\nreef , the reef environmental education foundation\nafter that , all that ' s left is to make that plane reservation , and remember ,\n\" no plane on sunday . \"\n- - - - - - - - - - - - - - - - - - - -\n\" jimmydotcom \"\nafter many delays , \" jimmydotcom \" has finally gone to the printer with a due\ndate of the middle of april . i hit some \" bumps in the road \" on my way to\npublishing the first ever book about the parrot head phenomena , but it was\nall worth it .\nthis book isn ' t about jimmy buffett , it ' s about the effect of the internet on\nparrot heads . for more information , visit . we\nhave a complete outline of the book , reviews from other parrot heads , and\nsamples of the pages on the site .\nfinancial considerations have limited the first printing to 1 , 000 copies at\nthe present time , so if your even thinking of buying a book , i suggest you\nreserve your copy by putting your name on the \" reservation list . \" you will be\nunder no financial obligation . it will simply indicate to my financial\npartners ( who aren ' t parrot heads ) , just how many books we need to print . do\nit right away , because pre - sales were brisk , and if enough of you reserve a\ncopy , i can get the financing to expand the first printing .\nlet ' s show the world what parrot heads stand for by making this book a big\nsuccess . when i was on the bhotm tour this summer , i had many people tell me\nthey wanted to buy an extra book to give to their boss . they wanted the boss\nto understand why getting the day off for a buffett concert is so important .\nmaybe it will help the rest of us to explain ourselves to our friends \" that\njust don ' t get it . \"\nhere ' s one of the latest reviews of the book from bob robinson , founder &\npresident of the sandlapper phc in south carolina . i had a great time with\nthis club on the \" road dawg \" tour , and shared an advance copy with his club :\n\" when we received jackson ' s plea for pictures , our members were blown away .\nwe hustled up a package of pix , as did a majority of the parrot head clubs\nfrom around the globe , and the result is pure parrothedonistic pleasure . this\ncollection is bound for glory in the annals of island time . if moderation is\nyour key to life then stay away from jimmydotcom , ' cause this book is packed\nwith those stories only we can tell . congratulations bubbafreak ! \"\nbobrob sandlapper phc\n- - - - - - - - - - - - - - - - - - - -\nclub trini update\nspeaking of expatriates , how about the guys who play the true music of \" the\nzone ? \" club trini ' s long awaited live cd will finally be coming out this\napril , one year after it ' s recording . jimmy has been keeping mike and robert\npretty busy , so it ' s understandable that it took awhile . it will be the third\nin the \" margaritaville cafe - late nite \" series . i can ' t wait to hear it , as\nmy wife and i were some of the lucky ones who were in new orleans when it was\nrecorded .\nyou can get a look at all the songs included on the new cd at club trini ' s\nrevamped web site at . along with the great songs we ' ve\nbecome accustomed to , are a few i ' m pretty excited about . if you haven ' t\nheard ct ' s version of \" african friend \" you ' re in for a real treat . along with\nthat , is a song that tina and nadirah have been treating audiences to this\npast summer , \" cario \" and bob marley ' s \" no woman , no cry . \"\nat the new web site , fans can \" now \" order their favorite club trini cds using\ntheir credit cards . so there ' s no excuse to not owning everything available .\ni think a true \" expatriate musical library \" is incomplete without club trini .\nthis summer , helen hiatt , jimmy and the coral reefer ' s wardrobe designer ,\ncame up with a shirt that club trini members lovingly call the \" ice cream\nvendor \" shirt , which they wear out front at the start of the concert . ok ,\npete sometimes forgets his , and when he does have it on , it lost it ' s sleeves\nsomewhere along the way . there ' s a great design that has been applied to a\nt - shirt that we all can own . check it out at their site .\n- - - - - - - - - - - - - - - - - - - -\njesters and friends\nnote card series\ntro - pics has just released their first note cards\nseries from their \" jesters and friends \" original oils . friends , places and\nmusicians from past years have inspired these cards and parrot heads and\nexpatriates alike will want to have these great looking cards for those times\nwhen an email just isn ' t personal enough .\nthe original artwork is also on sale at this site , so be sure to stop by and\nvisit them . included in the \" jesters \" series are our good friends tim glancey\nand wally nickel .\n- - - - - - - - - - - - - - - - - - - -\nmillennium change bubba style\ni ' ve got to tell you , i wasn ' t buying into this \" new millennium \" thing , one\nbit . in fact , i had almost decided not to go to the buffett new year ' s eve\nshow . nothing to do with jimmy , but i just didn ' t get the whole hype . but at\nthe last minute , i had a change of heart .\nand now after being a special guest at seagram ' s party honoring the new\nmargaritaville tequila , i ' m sure glad i went . the shows kind of melded\ntogether for me , making the millennium change over very special .\nif you want to hear more about this or see some pictures of both , visit our\nnew \" the expatriate zone \" web site at and go to\nthe web version of this newsletter .\n- - - - - - - - - - - - - - - - - - - -\nflash ! ! ! \" expatriated phans \" spotted south of the border\nafter making both of \" tropo travel ' s \" previous trips down to cobo san lucas ,\nmexico , i had to miss this year ' s trek due to my being with the \" beach house\non the moon \" tour on it ' s florida , new orleans and houston swing .\nas the story goes , those bad boys and girls from \" the expatriated phan club \"\nshowed up again , mainly for the t - shirts that\nsaid , \" too much tequila . . . or not quite enough \" on the back . who are those\npeople anyway ? whenever i go to their web site , all of them have black bars\ncovering their eyes . if you want to see pictures of the trip or need info for\n\" down to the banana republics - 2000 \" visit mike\nmclain also has some other great trips planned this year , check them out .\nspeaking of \" tropo travel , \" if you need a hotel room for the vegas or irvine\nshows and want a great deal , visit there site for some great rates . i ' m\njoining some of my parrot head friends at the \" key largo , \" though i ' m kind of\nafraid to be in a town like vegas with sue and ponch aprea from the detroit\nphc . i ' m joining a lot of my other friends i met on the road there too . i\nhate seeing jimmy in vegas , but i ' ve got to keep the streak alive , and seeing\nall my parrot head friends will make it all worthwhile . i hope peter mayer\nends up playing there again this year .\nand speaking of those great t - shirts , we have some neat shirts available at\nthe \" island store . \" they ' re similar to the shirt you got if you went on this\nyear ' s trip , except they have \" tropo travel ' s \" seaplane on the back and the\n\" no bad days \" logo on the front breast . you can see a picture at\n.\n- - - - - - - - - - - - - - - - - - - -\nparrothead pilots association\nhere are a couple of tidbits for your \" airplane nuts \" and pilots out there .\na new online friend who ' s a medivac chopper pilot is trying to start a parrot\nhead ' s pilot ' s association . if you ' re interested , contact dan at\n.\ni also ran across a really cool page that features jimmy ' s \" hemisphere\ndancer \" including it ' s \" jamaican bullet hole . \" ed booth , jr . an attorney from\njacksonville , florida , who belongs to \" lawyer - pilots bar association \" is the\nwebmaster and creator .\nthe web site is \" grumman n 928 j \" ( flashback - how many of you remember the tv\nshow ' whirly birds ' ? wasn ' t their number n 975 b ? ) and is at\nit shows a lot of pictures of jimmy ' s 1954\ngrumman i think you ' ll enjoy .\nnow all we need is for these guys to team up with the parrot heads pilot ' s\nassociation .\n- - - - - - - - - - - - - - - - - - - -\nthis document is copyrighted 2000 by st . somewhere press , publisher . \" the\nexpatriate zone \" is a trademark of st . somewhere press . you are permitted\nand encouraged to copy this document in its entirety ( including this message )\nand email it to friends , etc .\nto subscribe or unsubscribe to this newsletter , simply go to :\nthis document is copyrighted 2000 by st . somewhere press , publisher . the\nexpatriate zone is a trademark of st . somewhere press . you are permitted\nand encouraged to copy this document in it ' s entirety ( including this\nmessage ) and email it to friends , etc .\nto subscribe or unsubscribe from this newsletter please visit :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.915+0000", "entityId": 1788, "properties": {"text": "Subject: hpl noms for february 15 , 2000\n( see attached file : hplo 215 . xls )\n- hplo 215 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.920+0000", "entityId": 1789, "properties": {"text": "Subject: new noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 14 / 2000\n11 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 02 / 14 / 2000 09 : 51 : 52 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : new noms\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.924+0000", "entityId": 1790, "properties": {"text": "Subject: http : / / www . pge - texas . com / www / gtt . nsf / htmlmedia / operations . html\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.929+0000", "entityId": 1791, "properties": {"text": "Subject: logistics enom team\nhal , as per our discussion here are the logistics people that will be\ndedicated to the enom development :\nkey subject experts :\nthe logistics managers for each of the various regions will be the key\nsubject expert and will pull in the added resources ( individual pipeline\nschedulers ) for the really detailed work . as far as time dedicated we will\ncommit to as much time as needed with the understanding that these\nindividuals do have the responsibility for managing all of the scheduling\nactivity in their regions . bottom line is during bid - week and when\nemergencies develop they will be needed at their trading desks . all meetings\nwith these individuals should be scheduled for the afternoon .\nkathy kelly - northeast\ned terry - southeast\nrandy gay - west\ngeorge smith - central\ndarren farmer - texas\nproject steering team :\nbob superty\nrandy gay\ngeorge smith\nas discussed we might have to bring in others when the product starts to take\nshape and is impacting other areas ( global for example )\ni look forward to our next meeting , thanks - bob x 30957", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.934+0000", "entityId": 1792, "properties": {"text": "Subject: meter 5961\nfyi :\ni have taken the confirmations to - 0 - for february . let me know if you need\nanything further .\nthanks ,\ncharlotte\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlotte hawkins / hou / ect on 02 / 15 / 2000\n04 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 02 / 15 / 2000 03 : 47 pm\nto : donna consemiu / hou / ect @ ect , earl tisdale / hou / ect @ ect , charlotte\nhawkins / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc :\nsubject : meter 5961\nthis meter has not been disconnected . the measurement tech turned in a\ntemporary disconnect to mips ( about 2 months ago ) because the meter has not\nflowed for approximately 4 months . this allows the measurement tech to forgo\ntesting the meter until it is ready to be put back in service . scheduled\nvolumes should be taken to zero until further notice .\nthanks\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 02 / 15 / 2000 03 : 41\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins 02 / 14 / 2000 04 : 05 pm\nto : donna consemiu / hou / ect @ ect , gary a hanks / hou / ect @ ect , earl\ntisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : meter 5961\nchannel has informed me that this meter has been disconnected .\nthanks ,\ncharlotte hawkins", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.939+0000", "entityId": 1793, "properties": {"text": "Subject: change in operating companies\nplease have the operating companies for both daren farmer and stacey\nneuweiler moved from enron north america ( co 413 ) to houston pipeline company\n( 012 ) asap . additionally , if possible , please have payroll ensure that their\nwages are not double dipped on social security . the business reason for the\nmove is for compliance with the railroad commission ' s code of conduct . there\nis one other employee , ami chokshi , in daren ' s rc which needs to remain as\nena until i get a ruling from legal . the rc remains the same , 1497 .\nadditionally , it is my understanding that there is no problem with multiple\noperating companies within a group .\nlet me know if you need anything further .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.944+0000", "entityId": 1794, "properties": {"text": "Subject: nom for 2 / 16 / 00\nwe are increasing the volume delivered by hpl into eastrans for 2 / 16 to 34 , 400\nmmbtu .\nincrease deliveries into pg & e to 27 , 400 . leave fuels cotton valley\nredeliveries at 7 , 000 with\na sale to enron of 500 mmbtu remaining in place .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.949+0000", "entityId": 1795, "properties": {"text": "Subject: re : lindholm oil , inc .\nthe new sitara no . is 168509", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.954+0000", "entityId": 1796, "properties": {"text": "Subject: lst rev feb . 2000 josey ranch nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 02 / 16 / 2000\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 02 / 16 / 2000 09 : 37 : 09 am\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , kevin mclarney ,\nvance l taylor / hou / ect @ ect\nsubject : lst rev feb . 2000 josey ranch nom\nhere ' s revised february 2000 ( effective 2 / 17 / 00 ) setup for josey : ( using\n1 . 075 btu / mcf ) note : btu revision\n* gas deliveries into hpl\n12 , 400 mmbtu / d for kri ( net\nreduction of mmbtu / d )\n12 , 400 mmbtu / d into hpl\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.959+0000", "entityId": 1797, "properties": {"text": "Subject: re : allocation exceptions\ndaren - meters 3002 and 3003 have volume from jan 99 thru the current month .\ncould a deal be created for these volumes ? there is a substanital amount of\nvolume each month .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 02 / 16 / 2000 02 : 54\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n02 / 13 / 2000 02 : 28 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : allocation exceptions\naimee :\nfollowing is a list of allocation exceptions on daily swing meters that must\nbe fixed .\nmeter 3003 with min gas date 01 / 02 / 99\nmeter 3002 with min gas date 01 / 02 / 99\nmeter 0598 with min gas date 08 / 01 / 99\nmeter 5360 with min gas date 0 / 01 / 00\ndo you think that we can get them fixed by tuesday the 15 th of this week ?\nlet me know ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.965+0000", "entityId": 1798, "properties": {"text": "Subject: meter 9682\ngeorge -\nin this afternoon ' s meeting with producer services , jill mentioned that the\nreferenced well had been reperfed ( meaning they shot more holes in the well\npiping allowing more gas to flow out of the well ) and was now producing\napproximately 800 / day . per jill , the mdq on this well is 3000 / day . you may\nwant to look at getting this nom revised for the rest of the month .\nmary - could you get heidi or lisa to check the transport rate we currently\nshow on this ? it ' s being purchased for sc - . 17 and is flowing through king\nranch .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.969+0000", "entityId": 1799, "properties": {"text": "Subject: re : lst rev feb . 2000 josey ranch nom\ndaren i since you were at the offsite i went ahead and changed the volume\ndown to 12 , 400 from 13 , 000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.974+0000", "entityId": 1800, "properties": {"text": "Subject: re : copano line gain contract needed at meter 5310\ndaren ,\ndeal 93481 expired 12 / 31 / 99 , is there a new deal to replace it .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 02 / 16 / 2000\n04 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n02 / 16 / 2000 04 : 46 pm\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : re : copano line gain contract needed at meter 5310\nto : fred boas / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : copano line gain contract needed at meter 5310\ndone .\nthanks , stella\nfred boas\n08 / 20 / 99 06 : 53 pm\nto : stella l morris / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : copano line gain contract needed at meter 5310\nstella :\ni set up the accounting arrangement on the hplr transport contract\n012 - 64610 - 02 - 052 for january through june per daren ' s instructions below .\nthe tracking id for all 6 months is 34500 .\ni also set up accounting arrangement on the hplc transport contract\n012 - 41500 - 02 - 015 for july per daren ' s instructions below . the tracking id\nfor july is 34501 . if you would , please put the transport contract in pops\non monday morning and call me when your done so that i can reallocate the\nmeters . i need to call copano to tell them that their payment is on the way .\ni need the transport contracts , hplr and hplc put in for all 31 days of each\nof the respective months .\nas always thanks in advance for your help ,\nfred\ndaren j farmer\n08 / 20 / 99 04 : 50 pm\nto : fred boas / hou / ect @ ect\ncc :\nsubject : re : copano line gain contract needed at meter 5310\nfred ,\ni had the typed the deal numbers incorrectly . july forward is on 93481 .\njanuary - june is on 69176 .\ndaren\nfred boas\n08 / 20 / 99 12 : 56 pm\nto : daren j farmer / hou / ect @ ect , stella l morris / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect , charlene\nrichmond / hou / ect @ ect\nsubject : copano line gain contract needed at meter 5310\ndaren :\ni looked in path manager and i see two deals - 93480 and 93481 , but i don ' t\nsee deal 69176 for july forward that you mentioned below . also , please\nverify that the deal for january through june is 93481 and if the 69176 deal\nis correct for july forward .\nstella :\ni will need to set up accounting arrangements for these deals from january\nforward . from daren ' s note below it appears that for january through june i\nwill need an hplr transportation contract put in pops . when daren and i get\nthe deal number issue resolved for july forward i will need an hplc contract\nput into pops . also for july forward , i will need the hplc contract in pops\nevery month through december to allocate copano line gain to if it occurs .\nthanks to both of you ,\nfred\ndaren j farmer\n08 / 19 / 99 11 : 16 am\nto : fred boas / hou / ect @ ect\ncc : stella l morris / hou / ect @ ect , robert e lloyd / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , charlene richmond / hou / ect @ ect\nsubject : re : copano line gain contract needed at meter 5310\nfred ,\ni have pathed the purchase from copano for 1999 in mops . jan - jun is under\nhplr ( sitara 93481 ) . july forward is under hplc ( sitara 69176 ) . i\nunderstand that i cannot renom this to the pipe for prior months , because the\ncallout allocations will be affected . so , you will need to set up accounting\narrangements to get the nom into pops .\nlet me know if you have any questions .\ndaren\nfred boas\n08 / 19 / 99 08 : 01 am\nto : stella l morris / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect , charlene\nrichmond / hou / ect @ ect\nsubject : re : copano line gain contract needed at meter 5310\nstella / daren :\nwhat is the status of this request ? please let me know when i can reallocate\nthis meter , the customer has not been paid for 3 months and is complaining .\nfred\nto : robert e lloyd / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , mary m smith / hou / ect @ ect\nsubject : re : copano line gain contract needed at meter 5310\nthanks for your help robert .\nthanks again , stella\nfrom : robert e lloyd 08 / 12 / 99 04 : 29 pm\nto : stella l morris / hou / ect @ ect\ncc :\nsubject : copano line gain contract needed at meter 5310\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 12 / 99 04 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n08 / 12 / 99 04 : 02 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : copano line gain contract needed at meter 5310\ndaren - fyi . there are deal tickets in sitara to cover this transaction -\n# 69176 for hplr and # 93481 for hplc - but they have zero volume and were not\npathed in unify . could you get someone in your group to set these up for\nfred , please ? let me know if you have any questions . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 08 / 12 / 99 03 : 59\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n08 / 12 / 99 11 : 19 am\nto : stella l morris / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect , karen lambert / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : copano line gain contract needed at meter 5310\nstella :\ni need the above referenced contract put into pops for january , may , june ,\njuly , and august 1999 forward . i need the contract in pops for august\nforward because i never know when copano will allocate line gain to itself .\nin 1998 a spot contract was set up between hplr and copano pipeline / south\ntexas , l . p . with a synergi contract number 078 - 62210 - 101 and a global number\nof 96016880 by karen lambert . per karen this old agreement was terminated by\ndan hyvl due to hplr business change to ect . in 1999 , when copano began\nallocating line gain to themselves again i contacted lauri , karen , and\nyourself to see if i could get the contract in pops . karen sent me an e - mail\nindicating that she set - up a new contract for this hplc line gain purchase -\nglobal # 96022367 ( i don ' t have a \" synergi \" contract number ) . i know that in\n3 / 99 lauri contacted bernard widacki at copano to discuss this issue .\ni need lauri to review this and then i need the contract to be put in pops so\nthat i can correctly allocate the gas at this meter . i have not allocated\nany line gain in 1999 and the volumes are small . karen is the most\nknowledgeable about this contract , so i suggest that any questions be\ndirected to her regarding contract issues . karen worked with bernard widacki\nat copano to set up the contract originally .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.979+0000", "entityId": 1801, "properties": {"text": "Subject: nom for 2 / 17\nfor 2 / 17 , the nom into eastrans is 37 , 625 mmbtu , which is 35 , 000 mcf .\nplease increase nom into pg & e to 30 , 625 mmbtu . 7 , 000 will come from\nfuels cotton valley , and sale of 500 mmbtu / / d remains in place .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.984+0000", "entityId": 1802, "properties": {"text": "Subject: meter 9682\ndaren do you want to bump that volume up per the information in this note\nbelow . george wanted to know and asked me . it was previously nomed at 200 .\nlet me know what you think and i ' ll make the change if needed .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 02 / 17 / 2000 08 : 14\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge grant @ ect\n02 / 16 / 2000 03 : 46 pm\nto : tom acton / corp / enron @ enron\ncc :\nsubject : meter 9682\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george grant / hou / ect on 02 / 16 / 2000 03 : 46\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n02 / 16 / 2000 03 : 25 pm\nto : george grant / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , mary m smith / hou / ect @ ect\nsubject : meter 9682\ngeorge -\nin this afternoon ' s meeting with producer services , jill mentioned that the\nreferenced well had been reperfed ( meaning they shot more holes in the well\npiping allowing more gas to flow out of the well ) and was now producing\napproximately 800 / day . per jill , the mdq on this well is 3000 / day . you may\nwant to look at getting this nom revised for the rest of the month .\nmary - could you get heidi or lisa to check the transport rate we currently\nshow on this ? it ' s being purchased for sc - . 17 and is flowing through king\nranch .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.990+0000", "entityId": 1803, "properties": {"text": "Subject: 98 - 6892 overflow\ncan you please extend sitara deal ticket 16888 to the 15 th ? 14 dec . flowed\non this day .\nthanks\n- jackie -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:09.997+0000", "entityId": 1804, "properties": {"text": "Subject: yesterday ' s off - site\njust want to pat each of you on the back , and express my appreciation to each\nof you for taking time out of your schedules to meet yesterday . the results\nof our time exceeded my expectations in that i feel we had quality discussion\nand also identified some ideas and solutions to put in place quickly . each\nof you contributed concerns and discussion ideas in a very professional and\npositive manner . i also realize we have some follow - up to do , and would\nlike for us to schedule our next time to meet . i don ' t want to establish\nthese discussions as \" quarterly \" or \" monthly \" meetings at this point - i ' m\nnot sure what frequency would be appropriate . we can discuss it further as a\nteam . however , i know we at least one more session and i don ' t want much\ntime to elapse before we reconvene .\nyvette : would look at a time when everyone would be availble in march ,\npreferably the week of 3 / 6 , 3 / 13 or 3 / 20 . this may be difficult to schedule\nas daren will be working around a new baby , and others are working around\nvacation time . i anticipate a similar structure to yesterday ' s , but am very\nopen to other ' s ideas . please let yvette know if you some other idea .\ni also want to express my appreciation to yvette for organizing the\nafternoon . she did a great job ! ! !\nthanks to each of you ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.004+0000", "entityId": 1805, "properties": {"text": "Subject: operational expense k on midtex pipeline\ndaren ,\ni am sorry i completely forgot to provide you with the meters , there should\nbe a total of eight . please let me know when you have it set up . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.011+0000", "entityId": 1806, "properties": {"text": "Subject: shut - in of meter 0984179 hoff heller unit 22 cdp\nmeter 0984179 hoff heller unit # 22 cdp was shut - in at approximately 9 : 20 am\ntoday ( february 17 , 2000 ) .\non wednesday , february 16 , the meter was found flowing 25 lb dew point gas .\nthe pumper was given 24 hours to correct the problem . on february 17 , the\nmeter was found flowing 40 lb dew point gas .\nif you have any questions please call me at 36449 .\nthanks\ngary h", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.016+0000", "entityId": 1807, "properties": {"text": "Subject: cilco pathing - withdrawl and hplc transport pathing\ncilco needs to be pathed the following way on a withdrawl day or month\nthe pathing that was done for december 1999 and january 2000 worked .\nsource\npath\ndestination\n012 - 27049 - 05 - 001 / stg / f 012 - 27049 - 05 - 001\nfirm storage external\nbammel - meter 56 l\nstorage\naccount\nmeter 56 must be attached to this pool\nexternal bammel - meter 56 012 - 27049 - 02 - 001\ntransport\n012 - 27049 - 02 - 001 / transport / i / 1 / e\nmeter 56 must be\nattached\ntransport imbalance\nthe hplc transport in or out of storage should be pathed as follows\ninjection\nsource\npath\ndestination\n012 - 41500 - 02 - 015 / transport / i / 1 / e\n012 - 41500 - 02 - 015\nexternal bammel - meter 57\ntransport\nimbalance\nmeter 57 must be attached to this pool\nwithdrawl\nexternal bammel - meter 57\n012 - 41500 - 02 - 015\n012 - 41500 - 02 - 015 / transport / i / 1 / e\nmeter 57 must be attached to this\npool\ntransport imbalance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.020+0000", "entityId": 1808, "properties": {"text": "Subject: hpl nomination for 02 / 18 / 2000\nsent on behalf of bruce mcmills :\nfor 2 / 17 , the nom into eastrans is 40 , 000 mmbtu , which is 37 , 313 mcf @ 1072\nbtu .\nplease increase nom into pg & e to 33 , 000 mmbtu . 7 , 000 will come from\nfuels cotton valley , and sale of 500 mmbtu / / d remains in place .\nif there are any problems please contact chad cass at 713 - 627 - 6202 .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.025+0000", "entityId": 1809, "properties": {"text": "Subject: memo from steve schneider\nplease review the attached memo from steve schneider :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.030+0000", "entityId": 1810, "properties": {"text": "Subject: re : 98 - 6892 overflow\ndaren ,\nper victoria versen , you can roll deal 166888 forward for one day to cover\nthe 14 decatherms that flowed on the 15 th .\nthanks\n- jackie -\n3 - 9497\ndaren j farmer\n02 / 17 / 2000 10 : 44 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : 98 - 6892 overflow\njackie ,\nyou need to talk to the east desk to see if they were allocated this extra\ngas on the 14 th and 15 th . if they were , we can change the deal . if not , the\npipes will need to balance out during the next flow day .\nd\njackie young\n02 / 17 / 2000 08 : 37 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : 98 - 6892 overflow\ncan you please extend sitara deal ticket 16888 to the 15 th ? 14 dec . flowed\non this day .\nthanks\n- jackie -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.034+0000", "entityId": 1811, "properties": {"text": "Subject: deal 107937 for 1 / 2000\ndaren ,\nstacey is out of the office today , i hope you can help . deal 107937 was\noriginally set up for 155 , 000 , but the nom was changed to 140 , 000 . i show\n5 , 000 was purchased from conoco , where did hplc get the additional 135 , 000 ?\nsitara shows hplc im wellhead . joanie ngo says txu is saying they bought\n155 , 000 . i am trying to back track to the purchase invoices to see what we\nwere invoiced .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.039+0000", "entityId": 1812, "properties": {"text": "Subject: copano changes for the 19 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 18 / 2000\n11 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 18 / 2000 10 : 18 : 15 am\nto : \" ami chokshi \"\ncc :\nsubject : copano changes for the 19 th\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 18 / 2000\n11 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 18 / 2000 10 : 20 : 23 am\nto : \" ami chokshi \"\ncc :\nsubject : duke @ lone star\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 18 / 2000\n11 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 18 / 2000 10 : 36 : 27 am\nto : \" ami chokshi \"\ncc :\nsubject : clear lake change\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.045+0000", "entityId": 1813, "properties": {"text": "Subject: 98 - 6736 & 98 - 9638 for 1997 ( ua 4 issues )\nthe above referenced meters need to be placed on a k . please note the\ninformation below\n98 - 6736 on 089 for 5 / 97 ( activity @ this meter for 1 / 97 - 4 / 97 is on\n078 - 29165 - 101 ) the referenced cpr deal # is 1567 which ends 4 / 97 .\n98 - 9638 on 089 for 6 / 97 ( activity @ this meter for 1 / 97 - 11 / 97 is also on\n089 ) no referenced cpr deal # . the only month that has a k placed on it is\n12 / 97 and that is on the 078 - 30100 - 103 k .\nthanks for your help .\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.050+0000", "entityId": 1814, "properties": {"text": "Subject: cdnow order confirmation\ndear daren ,\nthank you for shopping at cdnow .\nthis email is to confirm your order number 16840862 .\nto check the status of this order or to make any changes , click or\ncopy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 16840862\nyou can also access your order history directly from our home page .\nyou have ordered the following item :\ncash / nelson : vhl storytellers ( cd )\nthis will ship via u . s . postal service .\nthe shipping address for this order is :\ndaren farmer\n5519 clarkston ln\nspring , tx 77379\nyour order total is $ 14 . 48 .\nfree shipping at bolt ! check out bolt . com , it ' s got tons of great stuff\nselected by bolt members - - from funky clothes and stuff for your room to\ncool sports and music gear . plus , for a limited time only , shipping is free\nwith every order ! shop at bolt now ! click :\nyou don ' t often see the words \" digital startac \" and \" free \" next to each\nother . in this one - of - a - kind offer , you can get a motorola startac 7797\nfree when you sign up for an at & t digital one rate service plan and\nmaintain service for at least 90 days . to see if this deal is available in\nyour area , visit telstreet . com\nplease do not reply to this email . if you have questions about your\norder that are not addressed in your online order history , please visit\nour contact cdnow page using this link :\nhttp : / / cdnow . com / service\nthis order is worth 115 fast forward rewards ( tm ) program\npoints . these \" points pending \" will appear in your membership summary as\n\" points earned \" after your order has shipped .\nthanks again for shopping at cdnow .\nsincerely ,\ncustomer service\ncdnow , inc . your music . your store .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.055+0000", "entityId": 1815, "properties": {"text": "Subject: hgpl and kgpl - 3 rivers gas\nbased on the conversation we had at the meeting last thursday , i am\nimplementing the following changes to humble gas pipeline and king ranch gas\nplant . if you disagree or feel you had a different understanding than the\nitems below , please be sure to call me asap .\n1 . input hplc purchase from hplr liquids at meter 8793 ( hpl / hgpl ) . remove\nthe 3 rivers gas from the interconnect ticket and input on\nthe purchase deal .\n2 . input hplc sale to hplr liquids at meters 9643 ( kgpl / hpl ) and 12\n( kgpl / hgpl ) . remove 3 rivers volumes from the interconnect tickets\nat these meters and input on the sales deals appropriately .\n3 . change swing parameters for the king ranch contracts to swing on cage\nranch before swinging on 3 rivers gas . this will hopefully allow\nthe sale for 3 rivers gas to remain at one meter as much as possible .\ni will hopefully have all of these changes made by the end of the day , and\nhave all contracts repathed . it is my understanding that we are implementing\nthese changes effective feb . lst .\nstella , this may or may not effect repathing of the hplc gas at meter 9643 ,\nbased on the swing parameters that you have been using .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.060+0000", "entityId": 1816, "properties": {"text": "Subject: revised march 2000 avails\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 22 / 2000\n09 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" cynthia cantrell \" on 02 / 22 / 2000 09 : 11 : 15 am\nto :\ncc : \" steve holmes \"\nsubject : revised march 2000 avails\nami ,\nattached are some revised volumes for march , 2000 . please let me know if i\ncan provide additional information .\nthanks ,\ncynthia\n- enronavailso 300 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.064+0000", "entityId": 1817, "properties": {"text": "Subject: hl & p month to date flow\njanet . i ' m back from vacation ! i have updated the flow volumes for hl & p", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.069+0000", "entityId": 1818, "properties": {"text": "Subject: texas & hplc deals that end 2 / 28 / 00\nf y i\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 02 / 22 / 2000\n12 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan hull\n02 / 22 / 2000 09 : 18 am\nto : carlos j rodriguez / hou / ect @ ect\ncc :\nsubject : texas & hplc deals that end 2 / 28 / 00\ncarlos , i added a line to these deals to include the 29 th of february . i\nwanted to let you , so if you have any questions or need anything let me know .\nbryan\nthe following deals have end dates of 2 / 28 / 00 and likely should be 2 / 29 / 00 .\ntake a look and change if necessary .\nnote : if a financial deal is associated with the deal it will likely need to\nalso be changed .\nhplc\n83084\n83088\n166853\n166026\n157233\n157284\n147866\ntexas\n157564\n124972\n72047", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.073+0000", "entityId": 1819, "properties": {"text": "Subject: cilco pathing - withdrawl and hplc transport pathing\nhey guys ,\njust wanted to make known my concerns on this issue . while i agree that\nhoward , robert and george needed to work on this together , i do not think\nthat howard should have been the driving force behind this . once we left the\nmeeting , they all convened on the 37 th floor and worked from howard ' s desk -\nwith howard sitting down doing much of the work . i also think that the below\ne - mail should not have come from howard , but should have originated out of\nthe logistics group . i understand that howard has prior scheduling\nexperience , but he is not functioning in a scheduling role now and bascially\ntook on that role in getting this set up correctly . he too had to sit down\nand try to figure out what needed to be done and set everything up correctly\n( ? ) . in my opinion this is a kudoo for howard for stepping up , but i am\nconcerned at the role that he played . team effort is important and it ' s what\nwe all want between our groups , but i want to ensure that everyone does their\nfair share and expectations are appropriately placed . let me know what you\nboth think . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 02 / 22 / 2000 01 : 31 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nhoward b camp\n02 / 17 / 2000 05 : 55 pm\nto : aimee lannou / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , robert e lloyd / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , gregory steagall / hou / ect @ ect , daren j farmer / hou / ect @ ect ,\ngeorge grant / hou / ect @ ect , kenny j soignet / hou / ect @ ect , rita wynne / hou / ect @ ect\nsubject : cilco pathing - withdrawl and hplc transport pathing\ncilco needs to be pathed the following way on a withdrawl day or month\nthe pathing that was done for december 1999 and january 2000 worked .\nsource\npath\ndestination\n012 - 27049 - 05 - 001 / stg / f 012 - 27049 - 05 - 001\nfirm storage external\nbammel - meter 56 l\nstorage\naccount\nmeter 56 must be attached to this pool\nexternal bammel - meter 56 012 - 27049 - 02 - 001\ntransport\n012 - 27049 - 02 - 001 / transport / i / 1 / e\nmeter 56 must be\nattached\ntransport imbalance\nthe hplc transport in or out of storage should be pathed as follows\ninjection\nsource\npath\ndestination\n012 - 41500 - 02 - 015 / transport / i / 1 / e\n012 - 41500 - 02 - 015\nexternal bammel - meter 57\ntransport\nimbalance\nmeter 57 must be attached to this pool\nwithdrawl\nexternal bammel - meter 57\n012 - 41500 - 02 - 015\n012 - 41500 - 02 - 015 / transport / i / 1 / e\nmeter 57 must be attached to this\npool\ntransport imbalance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.078+0000", "entityId": 1820, "properties": {"text": "Subject: re : hpl system training\ndaren ,\ni would like for these sessions to be separate , only because my group is\nprobably at a different level than lisa ' s in terms of understanding the\nbusiness ( not that we understand it in its entirety ) . the last week of this\nmonth or the first week of march prior to the 6 th workday is good for my\ngroup ( s ) . let me know . thanks !\ndaren j farmer\n02 / 17 / 2000 05 : 02 pm\nto : rita wynne / hou / ect @ ect , lisa csikos / hou / ect @ ect\ncc :\nsubject : hpl system training\nrita and lisa ,\nwhy don ' t ya ' ll get together and determine a range of days / times that would\nwork for your groups to have a training session . ( over lunch or early\nafternoon ) if you are interested , i would like to discuss how we operate the\nhpl system and the processes we go through during the trading day . to help\nwith the discussion , i have maps which highlight the main points and areas\nwhere we transact . ( there will be a few for you to keep at the desks . )\ni did this with the logistics group . i think it went pretty well . if you\nwant to do this , we need to allow 1 . 5 to 2 hours to talk about everything .\nlet me know .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.082+0000", "entityId": 1821, "properties": {"text": "Subject: purchasing computer equipment\nin order to ensure that all computer - related equipment is being properly\ncapitalized and not expensed in your rc , i would like to centralize the\npurchase of equipment for energy operations . going forward , if you need to\npurchase equipment for a new employee or need to upgrade your existing pc\nand / or monitor , please send me an e - mail containing the following information :\nemployee name ( indicate if the employee is new )\nlocation\nphone extension\nequipment you would like to purchase\nexisting system number if upgrading your pc\ni have set up an rc exclusively to capture purchases of computer - related\nequipment . this will make it easier to properly capitalize these assets .\none more thing i need for each of you to do . please review your rc reports\nfor january 2000 and make sure that there aren ' t any pc purchases charged to\nyour rc . you can find them in cost category 601 \" non - capitalized hardware\nand software \" . if you had any charges in this category for equipment , please\nforward a copy of your rc report to me as soon as possible so that i can work\nwith brian heinrich to have the charges reversed from your rc in february .\nif you have any questions , please call me at ext . 3 - 6343 . thank you in\nadvance for your help to ensure that your rc does not go over budget for\npurchases of equipment that should be properly capitalized .\nlisa cousino\nx 3 - 6343", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.087+0000", "entityId": 1822, "properties": {"text": "Subject: meter 986315 torch rally / el sordo 1 / 00\nsheryln , i ' m forwarding this to daren to get your answer . . . daren , deal\n141186 ( el sordo ) volume 102 . . . . deal 138605 ( torch ) volume 343 . . . megan\nparker thinks that all of this volume should be under torch . . . what do you\nthink ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 02 / 22 / 2000\n03 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 02 / 22 / 2000 01 : 15 pm\nto : kimberly vaughn / hou / ect @ ect\ncc : megan parker / corp / enron @ enron\nsubject : meter 986315 torch rally / el sordo 1 / 00\nkim ,\nhave you looked at this yet ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 02 / 22 / 2000\n01 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 02 / 22 / 2000 01 : 00 pm\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : meter 986315 torch rally / el sordo 1 / 00\nhave you heard anything on this yet ? i need to pay it by thursday .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 02 / 22 / 2000\n12 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 02 / 17 / 2000 10 : 42 am\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : meter 986315 torch rally / el sordo 1 / 00\ni have a volume issue with meter 986315 for 1 / 00 production . the volume has\nbeen split between el sordo and torch rally . i think all of the volume\nshould be under torch rally . please let me know if you find something\ndifferent . the old months have already been corrected .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.092+0000", "entityId": 1823, "properties": {"text": "Subject: february updates\nsorry so late .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.097+0000", "entityId": 1824, "properties": {"text": "Subject: hpl nomination for 02 / 23 / 2000\nsent on behalf of bruce mcmills :\nfor 2 / 23 , the nom into eastrans is 42 , 000 mmbtu , which is 39 , 179 mcf @ 1072\nbtu .\nplease increase nom into pg & e to 35 , 000 mmbtu . 7 , 000 will come from\nfuels cotton valley , and sale of 500 mmbtu / / d remains in place .\nif there are any problems please contact bruce mcmills at 817 - 255 - 5020 or chad\ncass at 713 - 627 - 6202 .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.101+0000", "entityId": 1825, "properties": {"text": "Subject: cdnow shipment confirmation\ndear daren ,\nthank you for shopping at cdnow . please keep this email invoice for\nyour records .\non february 21 we shipped your order number 16840862 for the following item :\ncash / nelson : vhl storytellers\nformat : cd quantity : 1 price : 11 . 49\nto the following address via u . s . postal service :\ndaren farmer\n5519 clarkston ln\nspring , tx 77379\ntotal number of items : 1\nsubtotal : $ 11 . 49\nshipping : $ 2 . 99\nsales tax : $ 0 . 00\n- - - - - - - - - -\nshipment total : $ 14 . 48\nyour order was billed to daren farmer . this shipment completes your\norder and is paid in full .\nmost orders arrive within 4 - 8 business days . however , in rare instances\nit may take up to 2 weeks .\nturn up the volume on your career !\nbose audio products are legendary . so are bose careers ! for excitement ,\ninnovation and uncompromising performance , nothing takes you to a higher\nlevel than a job at bose . make a sound career move by visiting\nhttp : / / www . bose . com / hl 01\nfor complete information about your order ( number 16840862 ) or to\nconfirm the status , click or copy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 16840862\nyou can also access your order history directly from our home page .\nplease do not reply to this email . if you have questions about your order\nthat are not addressed in your online order history , please visit our contact\ncdnow page using this link :\nhttp : / / cdnow . com / service\nfast forward rewards ( tm ) program points for this order will\nbe credited in your membership summary as \" points earned . \"\nthanks again for your order .\nsincerely ,\ncustomer service\ncdnow , inc . your music . your store .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.107+0000", "entityId": 1826, "properties": {"text": "Subject: 23 rd noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 22 / 2000\n10 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 02 / 22 / 2000 10 : 13 : 28 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : 23 rd noms\n( see attached file : hpl - feb . xls )\n- hpl - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.114+0000", "entityId": 1827, "properties": {"text": "Subject: timeline calendars\nper the management offsite meeting , please provide me with your monthly\ncalendars showing your vital business days , close , bid - week , etc . if\nnecessary to capture all those days please provide me with the months of\njanuary and february .\nplease work with your assistants to get this accomplished before next monday .\nfor those of you without , please give me a call and we can set a time to sit\ndown and i will handle your calendars .\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.121+0000", "entityId": 1828, "properties": {"text": "Subject: enron methanol\nfor maro 0 , siatar # 139055 , you will need to make adjustments to the risk\nassignments etc . , as i have made some changes to the booked deal .\nfor march 1 to 10 , enron methanol will take zero volumes ( they will be down\nfor maintenance - a force majeure situation )\nfor march 11 to 31 , they will take 33 , 000 / d at a price of gas daily hsc mid\nflat .\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.127+0000", "entityId": 1829, "properties": {"text": "Subject: per nelson ferries ( dealmaker ) : we do pay spinnaker i - . 08 . o ' neal , could you\nplease change the base purchase deals to reflect that price . i changed the\ntransport tickets to show that we pay nothing .\nthanks ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.132+0000", "entityId": 1830, "properties": {"text": "Subject: re : nomination - 2 - 23 - 2000\nwe can ' t increase fuels cotton valley right now . please\nassume nom of 60 , 000 mmbtu w / 53 , 000 going to pg & e\nfor 24 th .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n02 / 23 / 2000\n11 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren . j . farmer @ enron . com on 02 / 23 / 2000 11 : 20 : 21 am\nto : bruce mcmills / ftworth / pefs / pec @ pec\ncc :\nsubject : re : nomination - 2 - 23 - 2000\nbruce ,\ni need to hold the deliveries to 60 , 000 for 2 / 24 . i ' m somewhat limited on\nmy transport right now . i will look into the possibility of increasing the\nvolume , though . if you can increase the deliveries at fuels cotton valley ,\nthat will work .\ndaren\n\" bruce mcmills \" on 02 / 23 / 2000 09 : 11 : 07 am\nto : dfarmer @ enron . com , briley @ enron . com , \" chad w . cass \"\n, \" donna c . spencer \"\n, \" william e . speckels \"\ncc : \" michael r . cherry \"\nsubject : nomination - 2 - 23 - 2000\ni meant 2 / 24 / 2000 as the effective date of this nom .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n02 / 23 / 2000\n09 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n02 / 23 / 2000 08 : 55 am\nto : dfarmer @ enron . com , briley @ enron . com , william e .\nspeckels / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , donna c . spencer / gcs / cec / pec @ pec\ncc : michael r . cherry / easttexas / pefs / pec @ pec , darrel f .\nbane / easttexas / pefs / pec @ pec\nsubject : nomination - 2 - 23 - 2000\nplease incerease deliveries to eastrans to 65 , 000 mmbtu / d eff 2 / 23 / 2000 .\n7 , 000 will come from fuels cotton valley .\nmaintain sale of 500 mmbtu / d .\nincrease pg & e nom to 58 , 000 mmbtu / d .\nthe agreement provides for up to 60 , 000 mmbtu at our option .\nbrian riley needs to approve the increase to 65 , 000 mmbtu / d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.137+0000", "entityId": 1831, "properties": {"text": "Subject: nomination - 2 - 23 - 2000\ni meant 2 / 24 / 2000 as the effective date of this nom .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n02 / 23 / 2000\n09 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n02 / 23 / 2000 08 : 55 am\nto : dfarmer @ enron . com , briley @ enron . com , william e .\nspeckels / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , donna c . spencer / gcs / cec / pec @ pec\ncc : michael r . cherry / easttexas / pefs / pec @ pec , darrel f .\nbane / easttexas / pefs / pec @ pec\nsubject : nomination - 2 - 23 - 2000\nplease incerease deliveries to eastrans to 65 , 000 mmbtu / d eff 2 / 23 / 2000 .\n7 , 000 will come from fuels cotton valley .\nmaintain sale of 500 mmbtu / d .\nincrease pg & e nom to 58 , 000 mmbtu / d .\nthe agreement provides for up to 60 , 000 mmbtu at our option .\nbrian riley needs to approve the increase to 65 , 000 mmbtu / d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.141+0000", "entityId": 1832, "properties": {"text": "Subject: nomination - 2 - 23 - 2000\nplease incerease deliveries to eastrans to 65 , 000 mmbtu / d eff 2 / 23 / 2000 .\n7 , 000 will come from fuels cotton valley .\nmaintain sale of 500 mmbtu / d .\nincrease pg & e nom to 58 , 000 mmbtu / d .\nthe agreement provides for up to 60 , 000 mmbtu at our option .\nbrian riley needs to approve the increase to 65 , 000 mmbtu / d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.146+0000", "entityId": 1833, "properties": {"text": "Subject: see attached memo\nplease read the following attachment :\nthank you ,\nkathy benedict", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.151+0000", "entityId": 1834, "properties": {"text": "Subject: re : potential volume list for march , 2000\nfyi . . . this well should come on the lst week of march , but does have gas daily\nmid month pricing for the first month . thanks .\nsusan\nsmith\n02 / 22 / 2000 01 : 44 pm\nto : daren j farmer / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , jill t zivley / hou / ect @ ect\nsubject : potential volume list for march , 2000\ndarren :\nthis is potential new volume for march , 2000 :\ncounterparty meter volume mid month gas daily ?\ncico oil & gas co . tba 2117 mmbtu per day yes\nthis number is not in vance ' s production estimate . this well is anticipated\nto come on the first week of march but earlier is possible .\nplease let me know if you need any additional information .\nsusan smith x 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.156+0000", "entityId": 1835, "properties": {"text": "Subject: natural gas nomination for 03 / 00\nenron methanol nominates the following requirements for the methanol plant\nfor march 2000 :\nmarch lst & 2 nd 32 , 000 mmbtu per day\nmarch 3 rd through 12 th 0 mmbtu ( plant down for repairs )\nmarch 13 th through 31 st 32 , 000 mmbtu per day\nnote : natural gas to be bought at the \" gas daily mid \" due to plant outage for\nthe methanol plant only .\negpfc nominates the following for the mtbe plant at morgan ' s point for march\n2000\n10 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.161+0000", "entityId": 1836, "properties": {"text": "Subject: monthly manangement lunch\nplease clear your calendars for lunch on wednesday , march 8 th from 11 : 30 -\n1 : 00 . this will be a lunch for the management team only ( meaning no brenda ) .\ni will take suggestions until monday and then i will be making reservations .\nif you have any questions , please call !\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.165+0000", "entityId": 1837, "properties": {"text": "Subject: monthly charges for analysts on your rc report\ni wanted to let all of you know how you will be charged for analysts if you\ncurrently have or will have one in your rc for the year 2000 . the analyst\nprogram is being handled differently than it was in 1999 . in addition to the\nnormal salary , benefits and payroll taxes , you will also be charged an\noverhead administration fee for the program . you will be charged the\nfollowing monthly amounts for each analyst in the detail class code that i\nhave indicated below :\ndetail class description amount\n1 salaries and wages $ 4 , 000\n552 benefits 774\n557 payroll taxes 360\n820 corporate services 1 , 266\ntotal monthly cost $ 6 , 400\nthe $ 4000 amount represents an average of all analyst salaries and does not\nindicate what the analyst in your rc is paid . this amount will not change in\nfebruary as the $ 4000 already includes merit raise information for 2000 .\nthe $ 1266 represents the overhead costs of administering the program ,\nincluding campus recruiting and office visits .\nwhen you look at your rc report , you will see a line item labeled \" a and a\nreclass \" in each of the detail classes identified above . enron north america\nis invoiced by corp . for the costs of all analysts . financial operations\nmakes a manual journal entry each month to charge the appropriate rc . please\ncheck your january 2000 rc report and make sure you were properly charged for\nthe correct number of analysts you have currently . if there are any errors ,\nplease let me know as soon as possible so that i can work with brian heinrich\nto have it corrected in february . please continue to check your rc report\neach month going forward . thanks .\nif you have any questions , please call me .\nlisa cousino\nx 3 - 6343", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.170+0000", "entityId": 1838, "properties": {"text": "Subject: midcon invoices\nkellie -\ni researched the statements you sent me and found deal ticket # 109925 in\nsitara which shows hplc transporting on midcon from live oak to hardy street\nfor $ . 04 / mm for the months of august and september .\nthe statement for november covers gas moving from katy tailgate to cogen\nlyondell and is covered by sitara deal ticket # 133257 . the deal ticket shows\na zero rate , however . elsa / daren - do either of you remember this deal ? it\nwas on november 30 th for 5000 mm . kellie - what is midcon charging for this\nhaul ?\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.175+0000", "entityId": 1839, "properties": {"text": "Subject: 1 / 2000 meter 9643 three rivers issues\nfred is trying to set up accounting arrangments to cover the swift deal . can\nyou please verify that you made this purchase from swift ? if so , is there\nanother deal to replace deal # 114096 of should this deal be extended into\njanuary . if i should forward this to someone else , please let me know .\nthanks for you help , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 24 / 2000\n02 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n02 / 24 / 2000 11 : 25 am\nto : stella l morris / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : 1 / 2000 meter 9643 three rivers issues\nstella :\nthe swift deal is not pathed correctly in pops . i set up an accounting\narrangement on the 012 - 41500 - 02 - 015 contract with the track id 80705 . would\nyou put the contract in pops with the associated track id ?\nthe transportation contract ( 012 - 41500 - 02 - 003 ) for the liquids replacement\ngas is not pops . i looked in path manager and there is no deal for it\neither . in december , the deal for this gas was 114096 . could you extend the\ndeal or get me the number for the new deal if there is one ? i need to set up\nan accounting arrangement so i will need for you to verify the deal number\nand transportation contract that this gas is supposed to go on . when i set\nup the accounting arrangement i will let you know what the track id is so you\ncan put the contract at meter 9643 .\nlet me know when all of this is done so that i can reallocate the meter .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.180+0000", "entityId": 1840, "properties": {"text": "Subject: re : midcon invoices\ndo you guys agree with the rate ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 02 / 24 / 2000 02 : 51\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkellie bilski 02 / 24 / 2000 02 : 19 pm\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : re : midcon invoices\nmidcon is billing us $ . 05 from katy to cogen .\nlauri a allen\n02 / 24 / 2000 01 : 57 pm\nto : kellie bilski / hou / ect @ ect\ncc : elsa villarreal / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : midcon invoices\nkellie -\ni researched the statements you sent me and found deal ticket # 109925 in\nsitara which shows hplc transporting on midcon from live oak to hardy street\nfor $ . 04 / mm for the months of august and september .\nthe statement for november covers gas moving from katy tailgate to cogen\nlyondell and is covered by sitara deal ticket # 133257 . the deal ticket shows\na zero rate , however . elsa / daren - do either of you remember this deal ? it\nwas on november 30 th for 5000 mm . kellie - what is midcon charging for this\nhaul ?\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.184+0000", "entityId": 1841, "properties": {"text": "Subject: koch midstream services\nfyi , i was watching the position manager for ena and noticed some business\ntransactions on this pipeline . this pipeline was bought by duke energy field\nservices effective 8 / 1 / 99 . all hplc transactions were moved to that pipe at\nthat time . the ces transactions that are current on this pipe should be\nmoved to duke energy field services . i believe the pipe was renamed when\nthey bought it back in june or july .\nif you have any questions , or want to verify this information , i would check\nwith the global contracts dept .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.189+0000", "entityId": 1842, "properties": {"text": "Subject: mtg . with gas assets group\n:\nsubject : mtg . with gas assets group\nthe date and time of the baxter / whalley meeting has been changed , please mark\nyour calendar as follows :\nplease mark your calendar for the upcoming \" ena gas assets meeting \" with\ncliff baxter and greg whalley .\ndate : tuesday , march 7 , 2000\nplace : eb 5 c 2\ntime : 2 : 00 - 3 : 00 p . m .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.194+0000", "entityId": 1843, "properties": {"text": "Subject: follow up 1 / 2 day off - site\nplease hold thursday , march 9 th 11 : 30 - 5 : 00 pm as tentative for the follow\nup meeting to our off - site . as soon as i have more concrete information i\nwill let you know .\nnote :\nif i manage your calendar , it has been updated .\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.199+0000", "entityId": 1844, "properties": {"text": "Subject: income tax\ndaren , tell tonya i called edie last night about my w - 2 . she said that they\ngot a new cpa & he has been told to mail them but hasn ' t . she gave me the\namount that will show on the form . it was $ 1500 . i wrote it down at home\nhow much the net was , but i didn ' t bring it with me . i had drawn some off\npaying for lacy ' s tiger doll stuff . she said that she would tell him again\nto get them mailed . love , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.204+0000", "entityId": 1845, "properties": {"text": "Subject: nom change @ superior clear lake\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 24 / 2000\n10 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 24 / 2000 10 : 31 : 31 am\nto : \" ami chokshi \"\ncc :\nsubject : nom change @ superior clear lake\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.210+0000", "entityId": 1846, "properties": {"text": "Subject: twenty biggest customers\nthanks for the help , but i don ' t think i asked the right question . i need\nthe the twenty biggest customers on the purchase side . sorry for the\nmisuderstanding .\nif you could send a list that would be great . no hurry , sorry again for the\ninconvenience .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.215+0000", "entityId": 1847, "properties": {"text": "Subject: half day of vac on 2 / 28\n12 . 20 dentist appt on 2 / 29", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.221+0000", "entityId": 1848, "properties": {"text": "Subject: wrong again\ndaren ,\ni was right the first time . you gave me what i need . sorry again for the\ninconvenience .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.229+0000", "entityId": 1849, "properties": {"text": "Subject: eol killed deals\nover the past several weeks , we have seen an increase in the number of\n\" killed \" or modified eol transactions . please remind each of your\nrespective groups that this is not an option . once a customer \" clicks \" on a\ndeal , we have a valid , binding contract . we lose our audit trail , and we\ncan potentially expose ourselves from a legal standpoint . i talked to mark\ntaylor about this today , and the best option is for legal to prepare a\ntermination agreement when we agree to let a customer out of a deal . we\n( product control ) should be notified immediately if someone is requesting to\nchange an eol deal . you can call either myself , jennifer denny ( x 35824 ) ,\nfrank davis ( x 37235 ) , or dale neuner ( 39746 ) .\ncall me if you have any questions .\nsheri\nx 36557", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.235+0000", "entityId": 1850, "properties": {"text": "Subject: nom for 2 / 28 and 2 / 29 - hpl deliveries to eastrans\non monday 2 / 28 and through tuesday 2 / 29 , we need to reduce the nomination from\n60 , 000 mmbtu\nto 40 , 000 mmbtu into eastrans due to maintenance at the e . texas plant .\ntherefore , reduce noms into pg & e for 2 / 28 and 2 / 29 to 33 , 000 mmbtu / d . 7 , 000\nmmbtu\nwill continue to come from fuels cotton valley .\nthe nom into eastrans will increase for 3 / 1 to 50 , 000 mmbtu , and\nto 65 , 000 on 3 / 2 .\nthe sale into hpl will continue at 500 mmbtu / d through 2 / 29 .\neffective 3 / 1 , please increase this sale to 750 mmbtu / d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.240+0000", "entityId": 1851, "properties": {"text": "Subject: nomination - hpl dleivery to eastrans - 3 / 1 / 2000\nthis is to nominate 65 , 000 mmbtu / d for 3 / 1 from hpl to eastrans .\n7 , 000 mmbtu will come from fuels cotton valley .\n58 , 000 mmbtu will be delivered to pg & e .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.244+0000", "entityId": 1852, "properties": {"text": "Subject: weekend noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 25 / 2000\n11 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 25 / 2000 11 : 30 : 49 am\nto : \" ami chokshi \"\ncc :\nsubject : weekend noms\n( see attached file : egmnom - feb . xls )\n- egmnom - feb . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.249+0000", "entityId": 1853, "properties": {"text": "Subject: revised copanop # for lst\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 25 / 2000\n10 : 36 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 25 / 2000 10 : 07 : 59 am\nto : \" ami chokshi \"\ncc :\nsubject : revised copanop # for lst\n( see attached file : hpl - mar . xls )\n- hpl - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.254+0000", "entityId": 1854, "properties": {"text": "Subject: cross training\nin an attempt to continue cross training on our desk , jackie and susan will\nbe switching duties .\njackie will start training on susan ' s desk and susan on jackie ' s and the\ntransition will last most\nof march and they will finalize it with april business . it is important that\nwe start communicating the\nchanges to our customers and make it as smooth as possible on them . thanks ,\npat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.258+0000", "entityId": 1855, "properties": {"text": "Subject: josey ranch est . - - mar . 2000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 02 / 28 / 2000\n12 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 02 / 25 / 2000 12 : 08 : 09 pm\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , knox westmoreland\n, kevin mclarney , vance l\ntaylor / hou / ect @ ect\nsubject : josey ranch est . - - mar . 2000\nthis is the estimated josey ranch nomination for the month of march\n2000 . the hpl nomination volume to be effective 3 / 1 / 2000 is :\n12 , 500 mmbtu / day for kcs resources\n12 , 500 mmbtu / day total ( assumed btu factor of 1 . 075\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.263+0000", "entityId": 1856, "properties": {"text": "Subject: estimate file updates\ndave ,\nplease have steve remove the meters in the following list from the estimate\nfile . these were accounting meters set up to represent the offsetting\nphysical meters . the physical meters should still receive estimates .\nif you have any questions please call .\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 02 / 28 / 2000 02 : 28\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge grant\n02 / 08 / 2000 03 : 28 pm\nto : gary a hanks / hou / ect @ ect , aimee lannou / hou / ect @ ect , clem\ncernosek / hou / ect @ ect , pat clynes / corp / enron @ enron , daren j\nfarmer / hou / ect @ ect , thu nguyen / hou / ect @ ect , jennifer d pattison / hou / ect @ ect ,\no ' neal d winfree / hou / ect @ ect\ncc :\nsubject :\ngary ,\ncould you please remove scada / mips from the following hpl meters . these\nmeters are where mid - texas interconnects with\npg & e ' s system , and there should not be any measurement taking place on hpl .\nthese meters were set up originally when we thought\nthat every meter on mid - texas should automatically have a corresponding meter\non hpl . this assumption is now incorecct .\n980388\n980389\n980390\n980391\n980392\n980393\n987271\n987260\n987283\nthanks\ngeorge", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.268+0000", "entityId": 1857, "properties": {"text": "Subject: industrial report\ncan you please forward me the \" buyback / deficiency \" deals for march ' 2000 .\nyour worksheet would greatly assist me with completing this request .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 02 / 28 / 2000\n02 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.273+0000", "entityId": 1858, "properties": {"text": "Subject: new pooling points\nthe two new pooling points are as follows : 1 ) . aqua dulce pool = 987349\n2 ) : corpus christi pool = 987350", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.279+0000", "entityId": 1859, "properties": {"text": "Subject: march 1 noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 28 / 2000\n11 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 28 / 2000 11 : 10 : 16 am\nto : \" ami chokshi \"\ncc :\nsubject : march 1 noms\n( see attached file : egmnom - mar . xls )\n- egmnom - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.283+0000", "entityId": 1860, "properties": {"text": "Subject: 29 th changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 02 / 28 / 2000\n11 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 02 / 28 / 2000 10 : 56 : 05 am\nto : \" ami chokshi \"\ncc :\nsubject : 29 th changes\nthe gas we moved over the weekend @ exxon katy .\nwe moved 5 , 000 from midcon and 5 , 000 from hpl to tejas .\nfor the 29 th we need to move that 10 , 000 from tejas to midcon k # 101574 .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.288+0000", "entityId": 1861, "properties": {"text": "Subject: february surveys\nhello ,\nwe are starting to prepare the february data for our model . please provide a\ncompleted \" hours \" survey for each position within your group . this survey\nwill collect the the time your team spent on performing their activities in\nthe month of february .\nat the top of the spreadsheet , you will see a box labeled \" select your rc \" .\nclick on the box and input your rc number , which will need to be 4 digits .\nonce you have done this , another box will appear with the message \" select\nposition from drop box ! \" you can then select the position ( i . e . , staff ,\nspecialist , etc . ) and \" ok \" . the choices for positions are based on\ninformation contained in the org database ( i . e . , if a position is not listed\nthat should be , please call me to discuss as it would indicate that\ncorrections need to be made to the database ) . once you have the list of\nactivities , please input hours ( for the entire month ) for each activity\nlisted in the column labeled \" hours \" .\nif you ' re filling out the survey for your team , save a file for each of the\npositions you fill out for your team prior to filling out the next position .\nif you do not , the information will be lost .\nwe have included january compiled hours per position ( if you had two\nspecialists performing the same activity - 20 hours each , the \" last month \"\ncolumn would show a total of 40 hrs for that month ) . as with last month , you\nhave the option to complete the survey on behalf of your entire group or send\nthis survey to each of your team members , allowing each individual to fill\nout the time they spent on each activity . if there are any activities you\nperform not included in your survey , please contact me as soon as possible\nfor a copy of the activity dictionary .\nplease return these surveys by end of day friday , march 3 rd . if this is a\nproblem , please notify immediately .\nthanks ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.293+0000", "entityId": 1862, "properties": {"text": "Subject: cp name change / merger list for 2 / 2000\nthis is the final list for february 2000 for counterparty name changes and\nmergers .\nname overlay only -\nthe counterparty name will be overlaid with the new name on tuesday ( 2 / 29 )\nafternoon .\nto be inactivated 3 / 1 / 00 -\nrecords to be inactivated will be done 3 / 1 / 00 . if this is an issue for\nanyone , please call me right away to discuss .\nall documentation will be copied and forwarded as usual .\nthanks ! mc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.298+0000", "entityId": 1863, "properties": {"text": "Subject: activity driver quantity survey\nas you are aware , we are starting to collect data for our february price\nmodel . i ' ve attached a survey to help us collect the data that will be\ndriving your costs from the activities to the commercial teams . please\nselect your rcs , and fill in the driver quantity for the requested driver for\nthe month of february . please fill out the attached activity driver survey\nwith february numbers for your rc by end of day friday , march 3 rd . if your\ngroup currently generates a standard report that captures the surveyed data ,\nplease send the report to me , and put me on your recipient list beginning\nnext month . this will eliminate your need to fill out this survey every\nmonth . if you would like us to collect this information from someone within\nyour team beginning next month , please let me know .\nplease take this opportunity to verify the following :\n1 . the driver indicates a measure for the time and effort your team spent to\nperform these activities for each commercial team .\n2 . the activity is spent in support of the commercial teams identified\n( please let us know otherwise )\n3 . if the activity is using an allocation ( for example \" allocate 0469 \" or\n\" 80 - 20 split \" ) , that the percentage allocated to each commercial team has not\nchanged from last month . ( please let us know if it has changed what the new\nallocation is ) .\nin reference to these surveys , please note :\nif you are allocating only infrastructure costs to some commercial teams\nlisted in the survey , please identify them . we will take your business\nsupport costs ( such as feedback , training , etc . ) and allocate them evenly\namong these teams .\nthe costs for \" commercial team specific \" activities that you filled time out\nfor in the january time survey will be directly allocated to that commercial\nteam ( e . g . genco support will trace 100 % of its costs to genco ) .\nplease let us know if you have any questions on this survey .\nregards ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.303+0000", "entityId": 1864, "properties": {"text": "Subject: re : columbus energy deals\nfyi for you daren .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 02 / 29 / 2000 04 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : melissa graves @ ect 02 / 29 / 2000 01 : 16 pm\nto : tom acton / corp / enron @ enron\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , julie meyers / hou / ect @ ect , amelia alland / hou / ect @ ect\nsubject : re : columbus energy deals\ntom ,\nplease add the following to the one month ticket with columbus energy for\nmarch ( deal number : 203354 )\ncounterparty meter volumes price\ncolumbus energy corp . 6746 811 mmbtu 95 % gas daily hsc\n\" 6764 426 mmbtu \"\n\" 9634 1474 mmbtu \"\nthank you ,\nmelissa\ntom acton @ enron\n02 / 29 / 2000 12 : 49 pm\nto : melissa graves / hou / ect @ ect\ncc :\nsubject : re : columbus energy deals\njust send me a lotus note with all the info that i will need , then i can put\nit in my file when i ' m done .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.307+0000", "entityId": 1865, "properties": {"text": "Subject: 3 / 1 / 2000 noms\neffective 3 / 1 / 2000 , please increase our nom to 60 , 000 mmbtu\nper day into eastrans . the redeliveries will\ncome from :\nfuels cotton valley 7 , 000\ninto pg & e 50 , 000\ninto pipe of your choice at carthage hub 3 , 000\nthanks . i realize that the contract requires earlier notice\nfor the lst . if there is a problem , let me know and we can\ndo the 3 , 000 on the 2 nd . in any case , we want to max out\npg & e at 50 , 000 , and 7 , 000 from fcv .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.313+0000", "entityId": 1866, "properties": {"text": "Subject: 43\n- - - - - original message - - - - -\nfrom : tcash @ aimtech . net [ mailto : tcash @ aimtech . net ]\nsent : tuesday , february 29 , 2000 11 : 22 am\nto : shane walls\ncc : kfku @ dynegy . com ; cashj @ kochind . com ; maolson . baycity @ celanese . com ;\ncash , april ; cchsda @ lyondell . com ; bambam 6901 @ aol . com ; glover , rusty ;\nclay _ carbaugh @ acco . com ; ahernand @ kentelec . com\nsubject : i scored a 41\n> > >\n> > >\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> > > * * * * *\n> > > * * * * * * * * * * * * * * * * * * *\n> > >\n> > > to : undisclosed - recipients : ;\n> > >\n> > > simple test , take a minute to complete , very interesting .\n> > >\n> > >\n> > > take this test for yourself . . . and send it to your friends , including\n> me ,\n> > >\n> > > and let them know who you are . my score is in the subject box . . .\n> > > don ' t peek but begin the test as you scroll down and answer .\n> > >\n> > > answers are for who you are now . . . not who you were in the past .\n> > > have pen or pencil and paper ready . this is a real test given by the\n> > > human relations dept at many of the major corporations today . it\n> > > helps them get a better insight concerning their employees and\n> > > potential employees . it ' s only 10 simple questions , so . . . grab a\n> > > pencil and paper , keeping track of your letter answers . make sure\n> > > to change the subject of the e - mail to read your total . when you are\n> > > finished , forward this to as many friends as you have , and also send\nit\n> > > to\n> > > the person who sent this to you .\n> > >\n> > > make sure to put your score in the subject box .\n> > >\n> > >\n> > >\n> > > ready ? ? begin . . .\n> > >\n> > > 1 . when do you feel your best ?\n> > >\n> > > ( a ) in the morning\n> > > ( b ) during the afternoon a natural leader , who ' s\n> > > quick to make decisions , though not always the right\n> > > ones . they see you as bold and adventuresome , someone\n> > > who will try anything once ; someone who takes\n> > > chances and enjoys an adventure . they enjoy being in\n> > > your company because of the excitement you radiate .\n> > >\n> > > 41 to 50 points :\n> > >\n> > > others see you as fresh , lively , charming , amusing ,\n> > > practical , and always interesting ; someone who ' s\n> > > constantly in the center of attention , but sufficiently\n> > > well - balanced not to let it go to their head . they\n> > > also see you as kind , considerate , and understanding ;\n> > > someone who ' ll always cheer them up and help them out .\n> > >\n> > > 31 to 40 points :\n> > >\n> > > others see you as sensible , cautious , careful &\n> > > practical . they see you as clever , gifted , or\n> > > talented , but modest . . . not a person who makes\n> > > friends too quickly or easily , but someone who ' s\n> > > extremely loyal to friends you do make and who expect\n> > > the same loyalty in return . those who really get to\n> > > know you realize it takes a lot to shake your trust in\n> > > your friends , but equally that it takes you a long\n> > > time to get over it if that trust is ever broken .\n> > >\n> > > 21 to 30 points :\n> > >\n> > > your friends see you as painstaking and fussy . they\n> > > see you as very cautious , extremely careful , a slow\n> > > and steady plodder . it ' d really surprise them if you\n> > > ever did something impulsively or on the spur of the\n> > > moment , expecting you to examine everything carefully\n> > > from every angle and then , usually decide against it .\n> > > they think this reaction is caused partly by your\n> > > careful nature .\n> > >\n> > > under 21 points :\n> > >\n> > > people think you are shy , nervous , and indecisive ,\n> > > someone who needs looking after , who always wants\n> > > someone else to make the decisions & who doesn ' t want\n> > > to get involved with anyone or anything . they see you\n> > > as a worrier who always sees problems that don ' t\n> > > exist . some people think you ' re boring . only those\n> > > who know you well know that you aren ' t .\n> > >\n> > >\n> > > now forward this on to everyone you know , making\n> > > sure to put your score in the subject box !\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n>\n>\n>\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.319+0000", "entityId": 1867, "properties": {"text": "Subject: fw : coaching sessions with mike mauldin\n- - - - - original message - - - - -\nfrom : angie . buis @ enron . com [ mailto : angie . buis @ enron . com ]\nsent : tuesday , february 29 , 2000 9 : 35 am\nto : heather . choate @ enron . com ; marvia . jefferson @ enron . com ;\nlisa . shoemake @ enron . com\ncc : kathleen . kelley @ enron . com ; bill . d . hare @ enron . com ;\ngeorge . smith @ enron . com ; edward . terry @ enron . com ;\nlisa . b . cousino @ enron . com ; mam @ teamlead . com ; erw @ teamlead . com ;\nkimberly . perkins @ enron . com\nsubject : coaching sessions with mike mauldin\ni regret to inform you that this week ' s coaching sessions with mike mauldin\nhave been cancelled . mike has asked that we keep the recurring schedules\nin place beginning with next week ( march 6 ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.327+0000", "entityId": 1868, "properties": {"text": "Subject: well heads\ndaran , we have a few volume changes for the lst of march , first eog has\nchanged there volume for the gas at meter 6296 from 11 , 036 to 7100 . i ran\ninto laurie allen in the hall and she said we were heavy there and that she\nwould visit with you abut it . the second one is cokinos , they will not\nconfirm the volume at meter 9656 . we have 922 and they want that they want\n950 . i looked up there nom and that is what they asked for . not much of a\nchange . last is the one that you faxed down to me this mornings . basin\nexploration wants to drop there nom due to well problems from 896 to 1 . for\nthe whole month . let me know what you think and i ' ll get after it . tom cat\n! ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.335+0000", "entityId": 1869, "properties": {"text": "Subject: re : ken petroleum corporation\nfyi for you daren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 02 / 29 / 2000 04 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : melissa graves @ ect 02 / 29 / 2000 04 : 10 pm\nto : julie meyers / hou / ect @ ect , tom acton / corp / enron @ enron\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , george weissman / hou / ect @ ect\nsubject : re : ken petroleum corporation\npete layden # 1 well\none more request . . . .\nthe ken petroleum contract : 96019316 will terminate tonight ( 2 / 29 / 00 ) ! i\nbelieve that also means that the deal attached to this contract will\nterminate . it covers meter 6834 .\ntom , can you put in the following one month ticket :\ncounterparty meter volumes price\nken petroleum corporation 6834 89 mmbtu if / hsc less $ 0 . 41\njulie , can you confirm via a gtc spot , per george ' s request .\nthank you for handling on such short notice .\nmelissa\nenron north america corp .\nfrom : george weissman 02 / 29 / 2000 02 : 34 pm\nto : melissa graves / hou / ect @ ect\ncc : shawna flynn / hou / ect @ ect , robert walker / hou / ect @ ect , jill t\nzivley / hou / ect @ ect\nsubject : ken petroleum corporation\npete layden # 1 well\nmelissa , please paper this deal for march with either ( preferably ) a spot gtc\nor a firm , one month gtc . the firm contract has not yet been requested from\nlegal due to facility issues .\ngeorge x 3 - 6992", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.340+0000", "entityId": 1870, "properties": {"text": "Subject: aquila header ( meter # 980072 ) - january volumes\ndaren ,\non january 15 and 16 , hpl bought some gas from western gas resources at the\naquila header ( 10 . 000 and 5 . 000 mmbtu ' s respectively ) . this was a late\nfriday change so in order to get it scheduled in pops , the gas was scheduled\non the stranger ' s gas contract . however , deal ticket # 143709 was never\nupdated to reflect those late changes . please let me know if you want me to\nupdate the deal ticket . thanks , susan .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.344+0000", "entityId": 1871, "properties": {"text": "Subject: hl & p february premlinary flow numbers\nattached are the february preliminary numbers . . . . .\njanet , for march 1 , i have confirmed 3 , 000 3 rd party at the san jac meter\n( 1554 ) . . .\nthank you !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.349+0000", "entityId": 1872, "properties": {"text": "Subject: re : meter 986315 torch rally / el sordo 1 / 00\ndaren . . have you had a chance to look at this yet ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 03 / 01 / 2000\n03 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack on 02 / 29 / 2000 08 : 29 am\nto : kimberly vaughn / hou / ect @ ect\ncc : megan parker / corp / enron @ enron\nsubject : re : meter 986315 torch rally / el sordo 1 / 00\nkim ,\nhave you received a response on this yet ?\nkimberly vaughn\n02 / 22 / 2000 04 : 21 pm\nto : daren j farmer / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\ncc :\nsubject : meter 986315 torch rally / el sordo 1 / 00\nsheryln , i ' m forwarding this to daren to get your answer . . . daren , deal\n141186 ( el sordo ) volume 102 . . . . deal 138605 ( torch ) volume 343 . . . megan\nparker thinks that all of this volume should be under torch . . . what do you\nthink ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly vaughn / hou / ect on 02 / 22 / 2000\n03 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 02 / 22 / 2000 01 : 15 pm\nto : kimberly vaughn / hou / ect @ ect\ncc : megan parker / corp / enron @ enron\nsubject : meter 986315 torch rally / el sordo 1 / 00\nkim ,\nhave you looked at this yet ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 02 / 22 / 2000\n01 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 02 / 22 / 2000 01 : 00 pm\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : meter 986315 torch rally / el sordo 1 / 00\nhave you heard anything on this yet ? i need to pay it by thursday .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 02 / 22 / 2000\n12 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 02 / 17 / 2000 10 : 42 am\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : meter 986315 torch rally / el sordo 1 / 00\ni have a volume issue with meter 986315 for 1 / 00 production . the volume has\nbeen split between el sordo and torch rally . i think all of the volume\nshould be under torch rally . please let me know if you find something\ndifferent . the old months have already been corrected .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.354+0000", "entityId": 1873, "properties": {"text": "Subject: role of brian heinrich and jennifer blay in energy operations\ni am pleased to announce that brian heinrich will be joining the strategic\noperations group effective march 1 . brian will be working with me on the\nbudget and will help me to continue to develop processes and procedures that\nwill streamline the monthly review of charges on your rc reports . he will be\nworking closely with his replacement in financial operations , jennifer blay ,\nto accomplish this . jennifer has been previously providing support to the it\norganization just as brian had for energy operations . therefore , you will\nstart receiving messages from jennifer , like the one below .\nplease join me in welcoming brian to energy operations as well as jennifer\nblay in her new support role for energy operations . if you have any\nquestions regarding these personnel changes , please feel free to call me .\nyou may continue to contact brian with your questions as he works to\ntransition responsibilities to jennifer over the next few weeks . but please\nknow that brian and i will be working with all of you , as well as jennifer ,\nto make things easier for each of you to control your 2000 budget . thank you\nfor your continued support .\nlisa cousino\nx 3 - 6343\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa b cousino / hou / ect on 03 / 01 / 2000\n12 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jennifer blay 02 / 29 / 2000 05 : 07 pm\nto : robert superty / hou / ect @ ect , brent a price / hou / ect @ ect , brenda f\nherod / hou / ect @ ect , kristin albrecht / hou / ect @ ect , bob shults / hou / ect @ ect ,\nsheila glover / hou / ect @ ect , scott pleus / hou / ect @ ect , d todd hall / hou / ect @ ect ,\nmary solmonson / hou / ect @ ect\ncc : brian heinrich / hou / ect @ ect , lisa b cousino / hou / ect @ ect , heather\nchoate / hou / ect @ ect , chantelle villanueva / hou / ect @ ect , lorraine\nbecker / hou / ect @ ect , lynn tippery / hou / ect @ ect\nsubject : february allocation % update\ni will be replacing brian heinrich in the consolidations group , i look\nforward to working with all of you .\nplease review the attached january allocation % ' s and update accordingly for\nfebruary .\nplease send changes by friday , march 3 .\nthank you\njennifer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.359+0000", "entityId": 1874, "properties": {"text": "Subject: support for monthly charges for analysts on your rc report - please\nreview\nas a follow up to my message last week on charges for analysts , i am\nattaching the file that financial operations used to charge your rc with the\n$ 6 , 400 in monthly costs that i detailed below . i have received a few calls\nand e - mails stating that some reclasses need to be made because you no longer\nhave an analyst in your group . the information used by financial operations\nto charge your rc was obtained from the org database . please review the\nattached files for january and february to ensure that the proper rc was and\nis going to be charged . if you have any corrections , please contact brian\nheinrich at ext . 5 - 7677 asap since journal entries will need to be processed\nby this friday , march 3 rd .\nif you have any questions , please call me . i just want to let everyone know\nthat it is important that we continue to keep the org database updated as\nchanges are made . it is and will continue to be the source of headcount\ninformation for energy operations . thank you for your continued support in\nthis process .\nlisa cousino\nx 3 - 6343\n- - - - - - - - - - - - - - - - - - - - - forwarded by lisa b cousino / hou / ect on 03 / 01 / 2000 06 : 52\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian heinrich\n02 / 28 / 2000 01 : 44 pm\nto : lisa b cousino / hou / ect @ ect\ncc :\nsubject : aa headcount\nlisa ,\nthis is the file we used for january , and the one for february .\nbrian\nlisa b cousino\n02 / 24 / 2000 01 : 13 pm\nto : kristin albrecht / hou / ect @ ect , thresa a allen / hou / ect @ ect , evelyn\naucoin / hou / ect @ ect , bryce baxter / hou / ect @ ect , sally beck / hou / ect @ ect , theresa\nt brogan / hou / ect @ ect , diane h cook / hou / ect @ ect , kathryn cordes / hou / ect @ ect ,\nlisa csikos / hou / ect @ ect , frank l davis / hou / ect @ ect , jennifer deboisblanc\ndenny / hou / ect @ ect , michael eiben / hou / ect @ ect , thomas engel / hou / ect @ ect ,\nhunaid engineer / hou / ect @ ect , daren j farmer / hou / ect @ ect , mark\nfriedman / hou / ect @ ect , randall l gay / hou / ect @ ect , scotty gilbert / hou / ect @ ect ,\ncarolyn gilley / hou / ect @ ect , sheila glover / hou / ect @ ect , mary g\ngosnell / hou / ect @ ect , donna greif / hou / ect @ ect , d todd hall / hou / ect @ ect , jeff\nharbert / hou / ect @ ect , bill d hare / hou / ect @ ect , susan harrison / hou / ect @ ect ,\nbrenda f herod / hou / ect @ ect , carrie hollomon / hou / ect @ ect , john\njacobsen / hou / ect @ ect , katherine l kelly / hou / ect @ ect , bob klein / hou / ect @ ect ,\nroy lipsett / hou / ect @ ect , scott mills / hou / ect @ ect , michael e\nmoscoso / hou / ect @ ect , gary nelson / hou / ect @ ect , dale neuner / hou / ect @ ect ,\neugenio perez / hou / ect @ ect , scott pleus / hou / ect @ ect , brent a\nprice / hou / ect @ ect , leslie reeves / hou / ect @ ect , dorothy ricketts / hou / ect @ ect ,\nstephen p schwarz / hou / ect @ ect , russ severson / hou / ect @ ect , george\nsmith / hou / ect @ ect , mary m smith / hou / ect @ ect , mary solmonson / hou / ect @ ect ,\njefferson d sorenson / hou / ect @ ect , martha stevens / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , connie sutton / hou / ect @ ect , edward terry / hou / ect @ ect , kim\ns theriot / hou / ect @ ect , sheri thomas / hou / ect @ ect , steve\nventuratos / hou / ect @ ect , melissa white / hou / ect @ ect , stacey w\nwhite / hou / ect @ ect , rita wynne / hou / ect @ ect , pat clynes / corp / enron @ enron ,\nbennett kaufman / hou / ect @ ect , kimberly s olinger / hou / ect @ ect , laurel\nadams / hou / ect @ ect , william kelly / hou / ect @ ect , jeffrey c gossett / hou / ect @ ect\ncc : brian heinrich / hou / ect @ ect , jennifer blay / hou / ect @ ect , kimberly\nperkins / hou / ect @ ect , angela henn / hou / ect @ ect , marvia jefferson / hou / ect @ ect ,\nsandra r mcnichols / hou / ect @ ect , maria sandoval / hou / ect @ ect , alex\nsaldana / hou / ect @ ect , cecilia olvera / hou / ect @ ect , chantelle\nvillanueva / hou / ect @ ect , gretel smith / hou / ect @ ect , heather choate / hou / ect @ ect ,\nirena d hogan / hou / ect @ ect , julissa marron / corp / enron @ enron , kelly\ntempleton / corp / enron @ enron , lisa shoemake / hou / ect @ ect , lorraine\nbecker / hou / ect @ ect , lynn tippery / hou / ect @ ect , ragayle pellum / hou / ect @ ect ,\nrosalinda resendez / hou / ect @ ect , yvette g connevey / corp / enron @ enron , patti\nthompson / hou / ect @ ect\nsubject : monthly charges for analysts on your rc report\ni wanted to let all of you know how you will be charged for analysts if you\ncurrently have or will have one in your rc for the year 2000 . the analyst\nprogram is being handled differently than it was in 1999 . in addition to the\nnormal salary , benefits and payroll taxes , you will also be charged an\noverhead administration fee for the program . you will be charged the\nfollowing monthly amounts for each analyst in the detail class code that i\nhave indicated below :\ndetail class description amount\n1 salaries and wages $ 4 , 000\n552 benefits 774\n557 payroll taxes 360\n820 corporate services 1 , 266\ntotal monthly cost $ 6 , 400\nthe $ 4000 amount represents an average of all analyst salaries and does not\nindicate what the analyst in your rc is paid . this amount will not change in\nfebruary as the $ 4000 already includes merit raise information for 2000 .\nthe $ 1266 represents the overhead costs of administering the program ,\nincluding campus recruiting and office visits .\nwhen you look at your rc report , you will see a line item labeled \" a and a\nreclass \" in each of the detail classes identified above . enron north america\nis invoiced by corp . for the costs of all analysts . financial operations\nmakes a manual journal entry each month to charge the appropriate rc . please\ncheck your january 2000 rc report and make sure you were properly charged for\nthe correct number of analysts you have currently . if there are any errors ,\nplease let me know as soon as possible so that i can work with brian heinrich\nto have it corrected in february . please continue to check your rc report\neach month going forward . thanks .\nif you have any questions , please call me .\nlisa cousino\nx 3 - 6343", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.364+0000", "entityId": 1875, "properties": {"text": "Subject: training resources and cost to attend energy operations systems\nclasses\nas a follow - up to stephen schwarz ' s message below regarding training\nresources , i wanted to let everyone know that there will not be a charge in\n2000 for any energy operations employee to attend any training classes that\nhave been developed by energy operations ( i . e . , sitara , unify and\nmagellan / livelink ) . there will be a charge to your rc , however , if an energy\noperations employee signs up for one of these classes and fails to cancel\nwithin the established guidelines .\ni know there was a lot of concern regarding your budget and costs for\ntraining classes after the corporate training department announced that there\nwould be a change in policy this year . your rc will be charged a fee for any\ncourse that your employee signs up and attends through ernie . i just wanted\nto clarify the costs associated for any systems training detailed above will\nnot be charged to your rc even though you and your employees use ernie to\nregister for these classes . i have instructed the people in the training\ndepartment who are in charge of billing to follow this policy . if you\nreceive a charge in error on your rc report , please let me know immediately\nso that i can make the necessary corrections .\nif you have any further questions , please call me . thanks .\nlisa cousino\nx 3 - 6343\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa b cousino / hou / ect on 03 / 01 / 2000\n07 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : stephen p schwarz 02 / 29 / 2000 09 : 42 am\nto : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect @ ect , d todd hall / hou / ect @ ect , peggy hedstrom / cal / ect @ ect ,\nbrenda f herod / hou / ect @ ect , michael e moscoso / hou / ect @ ect , scott\npleus / hou / ect @ ect , brent a price / hou / ect @ ect , leslie reeves / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , robert superty / hou / ect @ ect , susan\nharrison / hou / ect @ ect , steve venturatos / hou / ect @ ect , scott mills / hou / ect @ ect ,\nsheri thomas / hou / ect @ ect\ncc : lisa b cousino / hou / ect @ ect\nsubject : training resources\nbeginning march 1 , the training resources you have been using from the\nproject sirius team , ( elwanda bennett and joyce jenkins ) , will no longer be\navailable . we have outsourced the delivery of operational training ,\nincluding the systems - oriented training that elwanda and joyce have been\ndelivering , to teamleadership center . many of you are already working with\nteamleadership on the development of operational training for energy\noperations . teamleadership will be working this year to integrate our\nsystems training and operational training into a single coordinated training\neffort tailored to the needs of energy operations .\nin an effort to manage effectively both priorities and dollars spent , lisa\ncousino will be ena ' s point of contact with teamleadership . please make lisa\naware of all services requested from teamleadership . if you have any\nquestions about these arrangements , please call lisa at x 36343 .\nplease share this information with your staff .\nstephen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.369+0000", "entityId": 1876, "properties": {"text": "Subject: organizational announcement\nplease note the following organizational changes in enron corp and enron\nnorth america .\nwanda curry is joining the corporate accounting team working with rick causey\non special projects including certain retail and broadband accounting\ninitiatives . we thank wanda for her significant contributions to ena in both\nthe planning and reporting function , as well as transaction support\nactivities . she played a key role in making 1999 a successful year at ena .\nwes colwell will join ena to lead both the planning and reporting and the\ntransaction support accounting functions . wes joined enron in 1999 and made\nkey contributions setting up a company - wide accounting transaction support\nteam which assists each of enron \u0001 , s business units on critical issues and\ndeals .\nrodney faldyn rejoins enron from azurix to continue to build the corporate\naccounting transaction support team . rodney will continue the effort to grow\nthis team and take on the management of key accounting matters that impact\nenron .\nthese changes will be effective immediately with a transition period during\nmarch . please join us in congratulating wanda , wes and rodney on their new\nroles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.374+0000", "entityId": 1877, "properties": {"text": "Subject: wells\ndaren , eog is having problems with that same well 6296 but this time it ' s\ncompressor problems . they think that it will be for at least a week but you\nknow how that goes . they would like to drop the volume again to 4400 . if we\nchange don ' t kim will have an imbalance at this meter ( she wanted me to let\nyou know that ) . meter # 6598 yates would like to change the volume from\n4206 to 3366 , and vintage who had been over producing last month would like\nto increase from 270 to 320 to match the real flow . i know these are\nbothersome changes but i ' m trying to get the best numbers for both you and\nvance for the up coming month . let me know and i ' ll be on the go from the \"\nthe tom cat \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.380+0000", "entityId": 1878, "properties": {"text": "Subject: re : transport flash for feb 00\nheidi , yes let ' s check the rates on the transport usage tickets . daren , is\nsupportive of this decision . thanks , mary\nenron north america corp .\nfrom : heidi withers 03 / 02 / 2000 03 : 53 pm\nto : mary m smith / hou / ect @ ect\ncc :\nsubject : re : transport flash for feb 00\nthe rates are in the system correctly in unify ( so that we can invoice\ncorrectly ) , but daren ' s group uses a sitara deal ( the transport usage\ntickets ) to estimate desk transport in the p & l during the month . right now\nwe have not entered in or corrected rates in their transport usage tickets .\nour group has not taken that step , since we have been most concerned with\nsettling the g / l ( after the month is over ) . by not having the right rates on\nthe transport usage tickets , the risk is that the p & l will be off during the\nmonth . would we change process and let daren set up the transport usage\nticket and then have us enter the rate ? if so , we would need to change the\nprocess with his group to put us in the process so that we can enter the\ncorrect rate . please let me know what you want to do .\nmary m smith\n03 / 02 / 2000 03 : 14 pm\nto : heidi withers / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect\nsubject : re : transport flash for feb 00\nheidi , we need to ensure the rates are correct on all meters ( hplc / ena for\ntexas ) and that the rates are in the right system .\nenron north america corp .\nfrom : heidi withers 03 / 02 / 2000 10 : 34 am\nto : mary m smith / hou / ect @ ect\ncc :\nsubject : transport flash for feb 00\nfyi . . . the economics group publishes this report every month to show how much\nthe marketing desk spent in transport . they can get their expense numbers\neither from their estimate ( from cpr ) or from unify , where we put the rates\nin .\none potential enhancement would be that in addition to managing rates for the\ntransport capacity tickets , we set up the rates for the transport usage\ntickets . i am going through the transport usage tickets for february right\nnow ( as part of the market meter study ) and i see some rates i don ' t tie back\nto lauri ' s matrix . for example , lauri ' s matrix shows 0 . 05 from thompsonville\nto hsc , but the transport usage ticket ( updated by daren ' s group ) has 0 . 055 .\nthis means the economic estimate can be off . let me know what you want to do\nwith this .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by heidi withers / hou / ect on 03 / 02 / 2000 10 : 31\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan hull\n03 / 02 / 2000 10 : 28 am\nto : brenda f herod / hou / ect @ ect , david baumbach / hou / ect @ ect , michael\nwalters / hou / ect @ ect , jackie nelson / hou / ect @ ect , heidi withers / hou / ect @ ect\ncc :\nsubject : transport flash for feb 00\nthe spreadsheet is updated for february . if you have any questions feel free\nto call .\nbryan\n3 - 9195", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.386+0000", "entityId": 1879, "properties": {"text": "Subject: feb 2000 intercompany accrual variances\nbelow is a list of sitara deals that had volume variances or where one side\n( purchase / sale ) did not get accrued for the feb 2000 accrual . my goal\nhere is to bring this to everyone attention and second to see if there is a\nsolution . i am taking a simplistic approach here in that since\nintercompany sitara deals are the same that the nominations on both sides\nshould match on the month end accruals . if i am wrong on this assumption\nor if there is a system limitation i am free to suggestions , ideas or\nresolutions . please feel free to give me a call .\nhplc selling to ena . production month febo 0 ( accrual ) :\nvolume variance :\nsitara : meter / point volume amount\n156071 hpl / 0980391 vol var of 24 , 167 mmbtu\nmidt / 0988743\nmissing on purchase side ( ena )\nsitara : meter / point volume amount\n160579 hpl / 0986363 632 , 272 mmbtu $ 1 , 599 , 402 . 29\n161541 hpl / 0980694 108 , 576 mmbtu $ 278 , 296 . 18\n166459 hgpl / 8177 - 4570 30 , 000 mmbtu $ 75 , 000 . 00\n201810 hpl / 0986363 50 , 000 mmbtu $ 129 , 500 . 00\n201839 hpl / 0980694 20 , 000 mmbtu $ 51 , 800 . 00\n202672 lone / 0361770 23 , 417 mmbtu $ 58 , 274 . 16\n280083 hpl / 0980308 555 , 292 mmbtu $ 1 , 518 , 225 . 09\ntotal 1 , 395 , 689 mmbtu $ 3 , 710 , 497 . 72\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nmission : proactively identify and resolve intercompany volume issues\nupstream .\nfirst goal : tying intercompany volumes on the monthly accruals .\nsecond goal : tying intercompany volumes on actuals .\nthird goal : minimizing analyse time saving $ $ $ $ .\nthanks\ngregg lenart\ntexas gas settlements\n3 - 6921", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.390+0000", "entityId": 1880, "properties": {"text": "Subject: wells\ndaren , i think i may have lost my mind ( no comment vance ) but did i talk to\nyou about meter 6789 taking that volume from 12079 to 1200 . also yates has\naveraged around the 3366 that they want to bring the volume down to . let me\nknow what you think . husker tom .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.395+0000", "entityId": 1881, "properties": {"text": "Subject: wells\ndallas at meter 986789 would like to decrease from 12079 to 12000 . let me\nknow \" d \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.400+0000", "entityId": 1882, "properties": {"text": "Subject: re : 3 - rivers / king ranch / hplr liquids\ni have identified the additional hplc wellhead purchases and have made\ncorrections to the interconnect tickets accordingly . jackie is still having\ndifficulty identifying all the wellhead purchase . we feel there are at least\n6 meters flowing a total of appox . 7000 a day that are not showing up on a\nhplc purchase or a hplr transport . i believe she has given you this\ninformation and will await instructions or for the purchases to be input\nreflecting the proper enron entity purchasing these volumes .\nwe have worked very hard on this issue and i apologize that it has not yet\nbeen entirely corrected .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.404+0000", "entityId": 1883, "properties": {"text": "Subject: recorded line request\nstacey neuweiler provides trader support to the texas gas trading group . she\ncurrently occupies eb 3137 j .\nher extension is 3 - 3952 . please give her access to a recorded line .\nami chokshi also provides trader support to the texas gas trading group . she\ncurrently occupies eb 3130 h .\nher phone extension is 3 - 9272 . please give her access to a recorded phone\nline .\nmany thanks ,\nbarbara lewis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.409+0000", "entityId": 1884, "properties": {"text": "Subject: 98 - 0432\ncan you please extend sitara deal # 156657 for 3 / 1 / 00 , if the deal will\nallow ? it was transported on the 215 k , which was the only one out there for\n2 / 00 .\nit spilled over into march on day 1 for . 423 dec .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.413+0000", "entityId": 1885, "properties": {"text": "Subject: meter 9643 for 1 / 2000\ndaren , can these deals be extended or are there new deals to replace the ones\nindicated below ?\nthanks , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 03 / 03 / 2000\n02 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n03 / 03 / 2000 01 : 35 pm\nto : stella l morris / hou / ect @ ect\ncc : megan parker / corp / enron @ enron\nsubject : meter 9643 for 1 / 2000\nstella ,\nthis is fred ' s meter but i helping him out . can you please extend 2 deals\nat meter 9643 .\n114096 hpl resources liquids division ( for 1 / 2000 only )\n93210 cactus swift ( for 1 / 2000 and 2 / 2000 )\nlet me know if you have questions .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.418+0000", "entityId": 1886, "properties": {"text": "Subject: oasis pma ' s for 1999\nstacey , i need your help in clearing pma ' s for oasis . i have a lot of pma ' s\nfor 1999 related to rates missing or incorrect . would you help me by passing\nthe information along to me ?\njan 1999\nmar 1999\njun 1999\naug 1999\nsep 1999\nthe volume management group ( rita wynne ' s group ) wants to have the rates\ncleared up by wednesday next week , which means i will probably need to get\nsomething from you by monday . sorry for the late notice . please call me at\nx 3 - 1836 if you have any questions .\nheidi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.424+0000", "entityId": 1887, "properties": {"text": "Subject: re : 1 / 2000 meter 9643 three rivers issues\nfred , this info was forwarded to you a while ago . i sent it return receipt .\ni never saw where you opened your e - mail . i know you ' re been busy .\nthanks , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 03 / 03 / 2000\n03 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stella l morris 02 / 25 / 2000 08 : 35 am\nto : fred boas / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\nsubject : re : 1 / 2000 meter 9643 three rivers issues\nfred , i hope this is the information that you needed to complete january\nbusiness . i have already set up track i . d . 80705 per your first request .\nthanks , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 25 / 2000\n08 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n02 / 24 / 2000 06 : 58 pm\nto : stella l morris / hou / ect @ ect\ncc :\nsubject : re : 1 / 2000 meter 9643 three rivers issues\nthe purchase from swift was shown at mtr 3405 during dec and jan . i have\ncreated a new deal ( # 204777 ) to add mtr 9643 to the deal .\ndeal 114096 is the purchase from hplr liquids . this purchase is on 138544\nfor jan 2000 forward .\nd\nfrom : stella l morris 02 / 24 / 2000 02 : 39 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , howard b camp / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\nsubject : 1 / 2000 meter 9643 three rivers issues\nfred is trying to set up accounting arrangments to cover the swift deal . can\nyou please verify that you made this purchase from swift ? if so , is there\nanother deal to replace deal # 114096 of should this deal be extended into\njanuary . if i should forward this to someone else , please let me know .\nthanks for you help , stella\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 02 / 24 / 2000\n02 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n02 / 24 / 2000 11 : 25 am\nto : stella l morris / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : 1 / 2000 meter 9643 three rivers issues\nstella :\nthe swift deal is not pathed correctly in pops . i set up an accounting\narrangement on the 012 - 41500 - 02 - 015 contract with the track id 80705 . would\nyou put the contract in pops with the associated track id ?\nthe transportation contract ( 012 - 41500 - 02 - 003 ) for the liquids replacement\ngas is not pops . i looked in path manager and there is no deal for it\neither . in december , the deal for this gas was 114096 . could you extend the\ndeal or get me the number for the new deal if there is one ? i need to set up\nan accounting arrangement so i will need for you to verify the deal number\nand transportation contract that this gas is supposed to go on . when i set\nup the accounting arrangement i will let you know what the track id is so you\ncan put the contract at meter 9643 .\nlet me know when all of this is done so that i can reallocate the meter .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.432+0000", "entityId": 1888, "properties": {"text": "Subject: oasis jan 00\nstacy ,\noasis only show a delivery of 330 , 000 at point 1427 . we have two deals\npathed for this volume : deal 158220 lower colorado - 300 , 000 ( mtrl 472 ) , and\ndeal 157279 30 , 000 ( mtr 1472 ) . my issue is that the original lower colorado\ndeal was for 310 , 000 . the additional 10000 is pathed on mtr 1516 . do i cut\ndeal 157279 by 10000 to make up to lower colorado ? if so , could you please\npath it at point 1427 so that i will tie back to oasis . please let me know\nas soon as you decide what to do . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.438+0000", "entityId": 1889, "properties": {"text": "Subject: meter 1335 july 99\nstacey ,\nhave you a chance to look into this ? we are required to clear intercompany\nvariances by the end of the month , so it would help if you could research\nthis as soon as possible . thanks for your help .\nthu\n3 - 7159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu nguyen / hou / ect on 03 / 03 / 2000 05 : 01 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen 02 / 17 / 2000 03 : 21 pm\nto : stacey neuweiler / hou / ect @ ect\ncc : gregg lenart / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter 1335 july 99\nstacy ,\ni have an intercompany deal which i am missing one side of . hpl purchased\ngas from dynegy ( deal 96378 ) and sold to ena ( deal 97185 ) on oasis pipeline\n( meter 1335 ) . i can ' t find ena ' s purchase from hpl . please let me know\nwhat you find out . this is affecting our intercompany report and we need to\nhave it cleaned as soon as possible . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.442+0000", "entityId": 1890, "properties": {"text": "Subject: 3 / 4 / 2000 and following noms\nhpl can ' t take the extra 15 mmcf / d over the weekend . we ' ll try next week ,\nbut for now the nom will stay at 60 mmcf / d , with redeliveries as they have\nbeen\n-\n50 into pg & e , 7 from fcv , and 3 at carthage .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n03 / 03 / 2000\n09 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n03 / 03 / 2000 09 : 10 am\nto : dfarmer @ enron . com , briley @ enron . com , stacey . neuweiler @ enron . com\ncc : chad w . cass / gcs / cec / pec @ pec , william e . speckels / gcs / cec / pec @ pec , donna\nc . spencer / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec ,\ndarrel f . bane / easttexas / pefs / pec @ pec\nsubject : 3 / 4 / 2000 and following noms\nthis is to nominate 75 , 000 mmbtu / d into eastrans for 3 / 4 / 2000 and following .\nwe will deliver 50 , 000 into pg & e , 7 , 000 from fuel cotton valley ( continue\n750\nmmbtu / d sale ) ,\nand 18 , 000 mmbtu / d into your cartwheel agreement at carthage .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.452+0000", "entityId": 1891, "properties": {"text": "Subject: 3 / 4 / 2000 and following noms\nthis is to nominate 75 , 000 mmbtu / d into eastrans for 3 / 4 / 2000 and following .\nwe will deliver 50 , 000 into pg & e , 7 , 000 from fuel cotton valley ( continue\n750\nmmbtu / d sale ) ,\nand 18 , 000 mmbtu / d into your cartwheel agreement at carthage .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.458+0000", "entityId": 1892, "properties": {"text": "Subject: fwd : wazzzup 2 nd version\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tori kuykendall / hou / ect on 03 / 03 / 2000\n12 : 32 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : garrett tripp 03 / 03 / 2000 11 : 28 am\nto : mike grigsby / hou / ect @ ect , tori kuykendall / hou / ect @ ect , frank\nermis / hou / ect @ ect , matthew lenhart / hou / ect @ ect\ncc :\nsubject : fwd : wazzzup 2 nd version\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrett tripp / pdx / ect on 03 / 03 / 2000 11 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarla hoffman\n03 / 03 / 2000 08 : 05 am\nto : cara semperger / pdx / ect @ ect , garrett tripp , phillip platter / hou / ect @ ect ,\njulie sarnowski / hou / ect @ ect\ncc :\nsubject : fwd : wazzzup 2 nd version\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carla hoffman / pdx / ect on 03 / 03 / 2000 08 : 08\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital 3 mar 2000 15 : 46 : 45 - 0000\nreceived : from smtp - 165 . 97 . 10 . 16 by mail 2 . hayboonet . com with microsoft\nsmtpsvc ( 5 . 5 . 1774 . 114 . 11 ) ; fri , 3 mar 2000 09 : 39 : 23 - 0600\nreceived : from mail . haynesboone . com ( [ 165 . 97 . 9 . 8 ] ) by 165 . 97 . 10 . 16 ( norton\nantivirus for internet email gateways 1 . 0 ) ; fri , 03 mar 2000 15 : 55 : 32 0000\n( gmt )\nreceived : from dallas - message _ server by mail . haynesboone . com with\nnovell _ groupwise ; fri , 03 mar 2000 09 : 41 : 20 - 0600\nmessage - id :\nx - mailer : novell groupwise internet agent 5 . 5 . 2 . 1\ndate : fri , 03 mar 2000 09 : 40 : 31 - 0600\nfrom : \" david mcinturff \"\nto : \" scot crilly \" ,\n, , ,\n, , ,\nsubject : wazzzup 2 nd version\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" = _ 025 b 8830 . 1 f 7 el 420 \"\nreturn - path : mcintud @ haynesboone . com\ncontent - length : 1722030\ntoo damn funny\n- waz . avi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.463+0000", "entityId": 1893, "properties": {"text": "Subject: weekend nom change\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 03 / 2000\n10 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 03 / 2000 10 : 13 : 17 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : weekend nom change\n( see attached file : hpl - mar . xls )\n- hpl - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.468+0000", "entityId": 1894, "properties": {"text": "Subject: 1 / 2000 lower colorado river vols\nstacey ,\nthe new deal , 158220 , is missing 10 , 000 for day 1 . please let me know when\nyou have this corrected . thanks\nthu\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu nguyen / hou / ect on 03 / 06 / 2000 09 : 40 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n03 / 03 / 2000 08 : 23 am\nto : thu nguyen / hou / ect @ ect\ncc :\nsubject : 1 / 2000 lower colorado river vols\ncould you let me know when you ' ve had a chance to look at the lcra volume ?\nthank you ,\ntina valadez", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.472+0000", "entityId": 1895, "properties": {"text": "Subject: 98 - 1052 and 98 - 1534 ( k extensions )\ndaren ,\ni ' m attempting to clean up my allocations , due to this being allocation close\nweek for volume management .\n98 - 1534 ( delivery meter ) overflowed into march , day 1 only , for . 30\ndecatherms ( sitara deal # 163005 - start date 2 / 1 / 2000 and stop daate\n2 / 29 / 2000 ) . the 215 k is the only one at this meter for feb . 2000\nproduction . i don ' t see a new sitara deal number being referenced nor do i\nsee the evergreen flag applied here . please apprise if you can extend the\nticket for this small amount for 3 / 1 / 2000 or if you want it handled\ndifferently .\n98 - 1052 ( delivery meter ) , allocated flow for 2 / 21 - 2 / 24 / 2000 with no k\napplied . days 22 and 23 for february references the 215 k ( sitara deal\n# 168884 start date 2 / 22 / 2000 stop date 2 / 23 / 2000 . sitara deal # 201636 has\nthe same start and stop date as 168884 and neither references an evergreen\nflag or a new deal number ) .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.477+0000", "entityId": 1896, "properties": {"text": "Subject: calpine daily gas nomination\nas we spoke of this morning .\n>\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.481+0000", "entityId": 1897, "properties": {"text": "Subject: feedback error - 1 / 00\ncould one of you please extend deal # 151203 for meter 1595 ? this deal\nexpired 12 / 31 / 99 .\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 06 / 2000 02 : 45\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : karen lindley @ enron 03 / 06 / 2000 09 : 58 am\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : feedback error - 1 / 00\naimee ,\nthere is a feedback error on swing meter 981595 , deal number 151203 for\njanuary 2000 . pops and mops systems match , however in checking in sitara ,\nthe deal number attached expired 12 / 31 / 99 .\ni am not sure you are the correct person to address this with , if not , please\nlet me know . if you can fix this problem , please do so and let me know .\nthanks and let me know if you need any addtional data as well .\nkaren\nx 58381", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.486+0000", "entityId": 1898, "properties": {"text": "Subject: nomination - eastrans - 3 / 7 / 2000\nour nomination into eastrans is 75 , 000 mmbtu for 3 / 7 / 2000 .\nredeliveries\n7 , 000 mmbtu from fcv\n50 , 000 into pg & e\n3 , 000 at carthage\n15 , 000 at mobil beaumont\nper brian riley , the price for the incremental 15 , 000\nabove 60 , 000 will be per our transaction agreement ,\n( i . e . , panenergy purchases 15 , 000 mmbtu at lst of month\nhsc - $ . 04 and sells to hpl 15 , 000 at monthly hsc - $ . 0375 .\nplease confirm the incremental 15 , 000 transaction .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.490+0000", "entityId": 1899, "properties": {"text": "Subject: manager coaching program\nd - - fyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 03 / 06 / 2000\n09 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" vogelfang , jill \" on 03 / 04 / 2000 06 : 13 : 08 pm\nto : \" ' bherod @ enron . com ' \"\ncc : \" cousino , lisa \" , \" dawson , dwight \"\nsubject : manager coaching program\nbrenda :\ni want to let you know that we have had a change on our coaching\nstaff and that dwight dawson will continue the coaching work with daren\nfarmer . please let daren know that he will be receiving a call from dwight\nearly next week .\nif you have any questions at all , please contact me at :\n713 - 871 - 8326 or jrv @ teamlead . com\ntake care\njill", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.495+0000", "entityId": 1900, "properties": {"text": "Subject: income tax\nhey ! tonya said to staple copy b of the w - 2 to the tax return - - but on the\none from camp it says copy c for payer or state copy , copy b for recipient\n( keep for your records ) . so which one do i send ? the one from the school\nsays send b but i ' m confused on the other one .\nwhat did the doctor say about tonya & the due date ? love , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.500+0000", "entityId": 1901, "properties": {"text": "Subject: re : first delivery - texaco e & p\ni have the spot ticket in with deal # 211573 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.505+0000", "entityId": 1902, "properties": {"text": "Subject: would you have an objection to mapping the east texas gas system to the\ncarthage curve as opposed to the texoma curve ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.510+0000", "entityId": 1903, "properties": {"text": "Subject: fw : monday evening ' s gas flow\ndaren ,\nthe below memo was rec ' d on today from my contact at lyondell ( john allen )\nreferencing meter 98 - 1063 ' s gas pressure problems on last night ( 3 - 7 - 00 ) .\ni thought that this might be some useful information to you .\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 03 / 07 / 2000 11 : 15\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" allen , john s . \" on 03 / 07 / 2000 10 : 56 : 35 am\nto : \" ' young , jackie ' \"\ncc :\nsubject : fw : monday evening ' s gas flow\n> - - - - - original message - - - - -\n> from : john allen [ smtp : j _ s _ allen 77 @ hotmail . com ]\n> sent : monday , march 06 , 2000 9 : 53 pm\n> to : roger . maake @ lyondell - citgo . com\n> cc : john . allen @ lyondell - citgo . com ; tony . cucinotta @ lyondell - citgo . com ;\n> gmason @ noram . com ; david . rasco @ lyondell - citgo . com ;\n> greg . wilson @ lyondell - citgo . com\n> subject : monday evening ' s gas flow\n>\n> the natural gas pressure issue was attributed to 2 hpl values . the north\n> one was not operative and the south one had leaking bellows .\n> it was determined that an alternator supply for pressure contract was not\n> readily available , being that it was after normal work hours .\n>\n> th hpl technician determined that he would be able to make repairs while\n> the\n> line was operative , and that it would not be necessary to request a\n> shut - in\n> condition . it would just take longer for him to make the repairs . the\n> technician was able to control the pressure through the south valve while\n> repairing the north valve .\n>\n> hpl agreed to the utilities department ' s request that the technician was\n> not\n> to leave lcr ' s facility this evening until such time as both valves were\n> operative .\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.515+0000", "entityId": 1904, "properties": {"text": "Subject: addition of tejas meter # 1156\nstacey ,\ni phoned jackie morgan to request that the aforementioned meter be added for\nnomination purposes .\nshe wasn ' t in , at the time . so , when she returns my call , i ' ll apprise you\nof the addition .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.520+0000", "entityId": 1905, "properties": {"text": "Subject: re : aquila header ( meter # 980072 ) - january volumes\nsherlyn ,\nper our conversation earlier today , i need an accounting arrangement set up\nfor meter # 980072 for the month of january so i can move the volumes from the\nstranger ' s gas contract over to the hpl 215 contract . please let me know if\nyou have any questions . thanks , susan .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 07 / 2000\n02 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n03 / 03 / 2000 04 : 54 pm\nto : susan d trevino / hou / ect @ ect\ncc :\nsubject : re : aquila header ( meter # 980072 ) - january volumes\ni updated deal 143709 .\nd\nsusan d trevino\n03 / 01 / 2000 09 : 25 am\nto : daren j farmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , sherlyn schumack / hou / ect @ ect , megan\nparker / corp / enron @ enron\nsubject : aquila header ( meter # 980072 ) - january volumes\ndaren ,\non january 15 and 16 , hpl bought some gas from western gas resources at the\naquila header ( 10 . 000 and 5 . 000 mmbtu ' s respectively ) . this was a late\nfriday change so in order to get it scheduled in pops , the gas was scheduled\non the stranger ' s gas contract . however , deal ticket # 143709 was never\nupdated to reflect those late changes . please let me know if you want me to\nupdate the deal ticket . thanks , susan .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.525+0000", "entityId": 1906, "properties": {"text": "Subject: eops salary survey questionnaire\nplease fill out and have submitted back to kim by friday at 3 : 00 pm .\nif you have any conflicts or questions , please call .\nthank you !\nyvette\nx 3 . 5953\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n03 / 07 / 2000 05 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkim melodick @ ect\n03 / 07 / 2000 05 : 17 pm\nto : brenda f herod / hou / ect @ ect , yvette g connevey / corp / enron @ enron\ncc :\nsubject : eops salary survey questionnaire\nas per your request .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kim melodick / hou / ect on 03 / 07 / 2000 05 : 13\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkim melodick\n02 / 18 / 2000 05 : 34 pm\nto : bob shults / hou / ect @ ect , robert superty / hou / ect @ ect , leslie\nreeves / hou / ect @ ect , sheila glover / hou / ect @ ect , kristin albrecht / hou / ect @ ect ,\nbrenda f herod / hou / ect @ ect , d todd hall / hou / ect @ ect , brent a\nprice / hou / ect @ ect , michael e moscoso / hou / ect @ ect , stephen p\nschwarz / hou / ect @ ect , mary solmonson / hou / ect @ ect , scott pleus / hou / ect @ ect\ncc : sally beck / hou / ect @ ect , norma villarreal / hou / ect @ ect , yvonne\nlaing / hou / ect @ ect\nsubject : eops salary survey questionnaire\nattached you will find the salary survey questionnaire for your review . you\nwill need to fill out the questionnaire for each exempt job group in your\ndepartment . please be as specific as possible to ensure we are capturing all\nthe skills needed to accurately price the job . if you have filled out the\nquestionnaire in the past , you may want to update the information . i will be\nhappy to address any questions you have regarding the form .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.530+0000", "entityId": 1907, "properties": {"text": "Subject: p & l\ntom , we attached both a consolidated p & l and an updated prudency schedule .\nthe weater hedge made $ 165 , 000 today . the only odd thing that we saw was the\nphysical change due to deal changes with the hplc operational desk . this desk\nis a desk that is set up to account for fuel , gas loss , and physical ua 4 , we\nhave tickets out there with zero volumes on them that get updated after the\nmonth is over once volume management knows where the gas needs to be\nallocated . what we found out that happened was that in the last week of\nfebruary and in the first week of march sitara added volumes to these tickets\nbefore were were running comparison reports to see the changes . darren\nnoticed the incorrect volumes on these tickets and had logistics zero them\nout . darren thought that the changes would have no position effect as if it\nwere a deal between hplc and texas , but it is actuall as if we changed a deal\nthat we did with another region . the value was offset by changes in tufco\nand storage . we released $ 270 , 000 out of march prudency to keep you flat for\nthe day . hope you had fun at the school function . i ' ll be here until about\n8 : 30 , so feel free to call if you get this .\nbryan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.535+0000", "entityId": 1908, "properties": {"text": "Subject: just a note\nhi ,\ni figured something must be occupying your time other than answering\nnon - business e - mail .\nyou guys must all be getting double salaries for doing 2 jobs each . - - - -\nright ? ( chuckle ) .\nif tom really lets you take the time off for the baby and if you really have\nthe time ; lunch would be great . just give me a call . only if all the ifs\nreally allow you the time .\nis craig ok ? ? i hope .\ni would be glad to help with your sprinkler system . my sharpshooter is older\nthan you are , but i imagine it is built a little better . my requested wages\nfor that sort of work would make renting a trencher very cheap for you . i\nwould be happy to come by and keep an eye on the cold beer . that would be\nfree of charge .\ni ' m having a cable modem installed monday . supposed to be 50 - 70 times faster\nthan what i have . i do way to much jumping around to run off this slow modem .\ni can then dump my other phone line . actually will end up spending less for\nmore speed . i love technology .\nthanks for the info on the stock option . that is the closing price as of\n1 / 18 / 00 , which is right before the jump . very nice of management . i like to\nknow the number to see what might be affecting the price .\nwell good luck on the extra job and give our best to tonya - - - - not much\nlonger to go . . . . . . . . . . .\nken\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.539+0000", "entityId": 1909, "properties": {"text": "Subject: welcome to woodworkingtips . com !\n* please save this welcome message *\nwelcome to woodworkingtips . com !\nif you ever need to get in contact with the owner of this\nlist , send email to ( tips manager ) .\ngo to if you ever want to\nchange your email address .\nthanks for subscribing !\ntips manager\nand visit our other woodworking and home improvement sites :\n100 + downloadable plans on plansnow :\nwoodsmith magazine :\nshopnotes magazine :\nworkbench magazine :\nkits , jigs , tools , project plans :\nwoodworking magazines back issues :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.545+0000", "entityId": 1910, "properties": {"text": "Subject: fw : complaint department\nthis is another fyi from my contact @ lyondell ( 98 - 1063 ) . there is another\nmessage from him to follow this one .\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 03 / 08 / 2000 08 : 45\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" allen , john s . \" on 03 / 07 / 2000 05 : 58 : 25 pm\nto : \" wilson , gregory w . \"\ncc : \" maake , roger w . \" , \" ' nachlinger , ken ' \"\n, \" ' young , jackie ' \" , \" ' mason ,\ngreg ' \" , \" cucinotta , anthony j . \"\nsubject : fw : complaint department\nwhat a mess .\n> - - - - - original message - - - - -\n> from : allen , john s .\n> sent : tuesday , march 07 , 2000 5 : 50 pm\n> to : graham , travis e .\n> subject : complaint department\n>\n> i hear from midcon this afternoon via voice mail . i understand that they\n> were not to happy that they had relief values blowing out being that they\n> were coming in with a fixed baseload of 28 for today , and lcr had not\n> notified that our present requirement couldn ' t handle that much . i\n> understand from utilities this afternoon that the baseload with midcon was\n> cut due to lcr ' s limited requirements . i was also notified this evening\n> that the planned maintenance on hpl has been extended through tomorrow\n> with midcon again scheduled to come in with the 28 baseload .\n>\n> thanks ,\n> john s . allen\n> lyondell - citgo refining lp\n> 713 - 321 - 5384\n> john . allen @ lyondell - citgo . com\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.554+0000", "entityId": 1911, "properties": {"text": "Subject: fw : midcon 9401 ( permanent march file - expanded distribution li\nst )\nthis is message # 2 .\nthanks\n- jackie -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 03 / 08 / 2000 08 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" allen , john s . \" on 03 / 08 / 2000 07 : 24 : 29 am\nto : \" ' mason , greg ' \"\ncc : \" ' nachlinger , ken ' \" , \" ' young , jackie ' \"\n, \" maake , roger w . \"\nsubject : fw : midcon 9401 ( permanent march file - expanded distribution li st )\ni ' m not buying any spot gas for day 9 . we will be in a partial\nnon - take situation for at less part of the day , until we get a second stage\ncompressor up and get some of our fuel gas out of the flare . please bear\nwith us .\n> - - - - - original message - - - - -\n> from : allen , john s .\n> sent : tuesday , march 07 , 2000 6 : 53 pm\n> to : ' mason , greg '\n> cc : ' nachlinger , ken ' ; abdul - raheem , herman m . ; dudley , l . o . ; graham ,\n> travis e . ; ledet , eugene i . ; maake , roger w . ; moore , kathy d . ; roose ,\n> richard e . ; smith , ronald k . ; summers , r . bruce ; wilson , gregory w . ;\n> ' shimek , patsy ' ; graham , travis e .\n> subject : re : midcon 9401 ( permanent march file - expanded\n> distribution list )\n>\n> i now understand that the transport agreement between hpl and\n> midcon has been extended for delivery for day 8 .\n>\n> 28 midcon\n> 13 hpl\n>\n> swing it down on hpl .\n>\n>\n> - - - - - original message - - - - -\n> from : allen , john s .\n> sent : tuesday , march 07 , 2000 8 : 25 am\n> to : ' mason , greg '\n> cc : ' nachlinger , ken ' ; abdul - raheem , herman m . ; dudley , l . o . ; graham ,\n> travis e . ; ledet , eugene i . ; maake , roger w . ; moore , kathy d . ; roose ,\n> richard e . ; smith , ronald k . ; summers , r . bruce ; wilson , gregory w . ;\n> ' shimek , patsy '\n> subject : re : midcon 9401 ( permanent march file - expanded\n> distribution list )\n>\n> flow returning to the normal 10 spot purchase for day 8 .\n>\n> - - - - - original message - - - - -\n> from : allen , john s .\n> sent : monday , march 06 , 2000 4 : 09 pm\n> to : ' mason , greg '\n> cc : ' nachlinger , ken ' ; abdul - raheem , herman m . ; dudley , l . o . ;\n> graham , travis e . ; ledet , eugene i . ; maake , roger w . ; moore , kathy d . ;\n> roose , richard e . ; smith , ronald k . ; summers , r . bruce ; wilson , gregory\n> w . ; ' shimek , patsy '\n> subject : re : midcon 9401 ( permanent march file - expanded\n> distribution list )\n>\n> increase in flow to a total of 28 for day 7 . this is a\n> total of the 10 spot purchase and a transport of 18 to accommodate at\n> outage on hpl . this will be occurring at 09 : 00 in the morning . you will\n> be seeing a corresponding decrease of 18 on hpl during the same period .\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.560+0000", "entityId": 1912, "properties": {"text": "Subject: 2000 customer trip proposal\nplease find attached the 2000 customer trip proposal as prepared by myself\nand chantelle\nvillarreal .\nyou will find included the approval form for the executive office with the\ncost per person ( $ 635 . 85 ) . following this page is the agenda that provides\nexplanation of the anticipated expenses for the meeting . and then finally ,\nthe 2000 guest list , which includes both * customers , schedulers and managers .\nplease review as soon as you have time and get back to me with any questions\nor concerns you may have .\nthanks ! : ) heather choate , x 33278\n* hpl customers were not named , but need as soon as possible for submittal to\nexecutive office .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.565+0000", "entityId": 1913, "properties": {"text": "Subject: re : midcoast marketing\nthe deals are in and the ticket numbers are jan . 214249 and feb . 214251 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.570+0000", "entityId": 1914, "properties": {"text": "Subject: well heads\ndaren , eog called and said that the well behind 986296 which has been down\nfor a week from 7100 to 4400 for the last week or so needs to stay at the\n4400 for the rest of the month . i changed the ticket for that . this was\nper suzanne saldivar . also shoreline reduced the meter 6722 from 30 to 24 .\nalso changed that . last cody went from 7666 to 7600 at meter 6722 . both\nshoreline and cody were per customer request .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.574+0000", "entityId": 1915, "properties": {"text": "Subject: well head\ncostilla has sent in a new request , take a look and let me know .\nmeter current\nvolume new volume\n56639\n450 600\n9723\n269 300\n9724\n24 10\n9687\n20 , 486 22 , 250 in\nfeb . they were in the 21 , 250 range , in jan they started at 14 , 000 mid month\nand\nreached 23 , 000\nby end of month .\n9734\n8 , 000 11 , 000 in\nfeb they went from 6 , 000 to 9 , 000 but in jan they only flowed around 600 all\nmonth .\nbig increase\nbetween months .\n5116\n55\n83", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.578+0000", "entityId": 1916, "properties": {"text": "Subject: 98 - 6719 and 98 - 9676\nhi daren ,\ncan you please check into whether or not the below deals for the above meters\ncan be rolled and extended ? if so , can you please perform this for me so\nthat anita can set up an accounting arrangement for me ?\n98 - 6719 sitara deal # 166989 flow @ meter began on february 10 th but the deal\nis not effective until february the 11 th .\nno new deal # referenced and no evergreen flag . this is on the\ngathering ( 96026573 ) k which is the only\nk @ the meter .\n98 - 9676 sitara deal # 151669 deal good from 1 / 1 / 00 - 1 / 31 / 00 but there is\nflow for all of february 2000 with no k . this is on the 215 k for 1 / 2000\nproduction which is the only k @ the meter .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.583+0000", "entityId": 1917, "properties": {"text": "Subject: re : 98 - 6719 and 98 - 9676\nyes , it is a gtc spot\ndaren j farmer\n03 / 10 / 2000 01 : 54 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : 98 - 6719 and 98 - 9676\njulie ,\nis the contract with cokinos on deal 151669 valid for feb and mar 20000 ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 03 / 10 / 2000\n01 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n03 / 10 / 2000 10 : 39 am\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect\nsubject : 98 - 6719 and 98 - 9676\nhi daren ,\ncan you please check into whether or not the below deals for the above meters\ncan be rolled and extended ? if so , can you please perform this for me so\nthat anita can set up an accounting arrangement for me ?\n98 - 6719 sitara deal # 166989 flow @ meter began on february 10 th but the deal\nis not effective until february the 11 th .\nno new deal # referenced and no evergreen flag . this is on the\ngathering ( 96026573 ) k which is the only\nk @ the meter .\n98 - 9676 sitara deal # 151669 deal good from 1 / 1 / 00 - 1 / 31 / 00 but there is\nflow for all of february 2000 with no k . this is on the 215 k for 1 / 2000\nproduction which is the only k @ the meter .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.588+0000", "entityId": 1918, "properties": {"text": "Subject: sitara position\nplease use the position manager home button .\nwhen using the sitara position manager , and you drill down to view details\nor change the dates , the position manager keeps\nall your views running in the background . this feature allows you to use the\nback and forward buttons to keep your views running .\non the downside , if you keep these views running but do not really intend to\ngo back to look at them , the system and your pc are working harder\nto keep all the old views active and updated .\nthe home button sends you back to your default view - the first view you had\nup when you hit apply . by clicking this button , your\nposition manager will clear out the old views the next time you drill in .\nthis is the only way to clear out the old views that you no longer need .\nif you do not use the home key , and keep drilling in and changing the dates ,\nthe position manager is still keeping all the your views for\nthe day running in the backgound .\nwhat we have found is by the end of the day , a user that does not clear out\nthe old views can have well over 30 views open , which is like having\n30 position managers up on your pc . when that user closes down , the position\ngets locked up for a while as it tries to clear out all the old views .\nwe will be making some changes soon to that should resolve this issue as far\nas the sitara machine is concerned ; however , your pc may still be\nslow with excessive unneccessary views open . we could make a change to\nlimit the number of active views you can have open , but at this time\ni am not sure that is necessary ; regardless , in the mean time , please\nremember to use your home button .\nother helpful hints -\ndid you know you can shrink you tool bar ? tools options - uncheck show tool\nbar text labels -\ndid you know you can split your position screen to have pipes on top and\nzones and meters below ? tools options - show drill down second panel -\nif you have an omicron position porfolio - your min / max button shows you\nactual - and min / max for your day swing deals .\nsame works for nom flex portfolio .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.592+0000", "entityId": 1919, "properties": {"text": "Subject: wellheads\nshoreline has sent in a nom change for the 11 th gas day , to take meter 6722\nfrom 24 to 14 . please let me know if you want the change .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.597+0000", "entityId": 1920, "properties": {"text": "Subject: re : allocation exceptions\ndaren or stacey : could you please extend deal # 169625 for meter 1520 for\nfeb . 2000 ?\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 11 / 2000 09 : 46\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n03 / 10 / 2000 05 : 23 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : allocation exceptions\nmeter 5191 track id is 89328 .\nmeter 1520 need to extend or deal or add new deal .\naimee lannou 03 / 10 / 2000 02 : 57 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : allocation exceptions\nanita - i need some accounting arrangements created for two meters .\nmeter contract receipt / delivery counterparty deal # last month allocated\n5191 gathering receipt tri - union development 100896\ncorp . 138661 jan 00\n1520 hpl 215 delivery engage 169625 jan 00\nif youneed more information , please let e know .\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.602+0000", "entityId": 1921, "properties": {"text": "Subject: re : 98 - 6719 and 98 - 9676\nrobert ,\ni ' ve taken care of 98 - 6719 ( as far as getting it out of my allocation\nexception screen ) . i ' m going to place 98 - 9676 on strangers gas until you\nhear back from daren or julie .\nshould daren or julie get back w / you , while i ' m on vacation , please get back\nw / anita luong and provide her with the k # given to you ( by daren or julie )\nas well as the dates of 2 / 1 - 2 / 29 ( even though 3 / 1 / 2000 is reflected in my\nallocation exception screen ) so that she can provide you with an accounting\narrangement to place february ' s volumes on @ this meter .\nit looks as though this meter is flowing starting 3 / 1 / 2000 . i guess that the\ntrader will eventually place a deal in sitara for this meter .\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 03 / 11 / 2000 12 : 00\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n03 / 10 / 2000 03 : 22 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : 98 - 6719 and 98 - 9676\ni extended the deal at mtr 6719 to include 2 / 10 . in the future , please run\nall wellhead deals through tom acton first .\ni ' ve got a message into julie meyers to look into the contract at meter 9676 ,\nand will let you know what she determines .\nd\njackie young\n03 / 10 / 2000 10 : 39 am\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect\nsubject : 98 - 6719 and 98 - 9676\nhi daren ,\ncan you please check into whether or not the below deals for the above meters\ncan be rolled and extended ? if so , can you please perform this for me so\nthat anita can set up an accounting arrangement for me ?\n98 - 6719 sitara deal # 166989 flow @ meter began on february 10 th but the deal\nis not effective until february the 11 th .\nno new deal # referenced and no evergreen flag . this is on the\ngathering ( 96026573 ) k which is the only\nk @ the meter .\n98 - 9676 sitara deal # 151669 deal good from 1 / 1 / 00 - 1 / 31 / 00 but there is\nflow for all of february 2000 with no k . this is on the 215 k for 1 / 2000\nproduction which is the only k @ the meter .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.607+0000", "entityId": 1922, "properties": {"text": "Subject: kingwood cove march specials ! !\nwelcome & enjoy kingwood cove golf specials . please take advantage of the\nspecial offers . you will receive notices weekly or bi - weekly . if you no\nlonger wish to receive these messages , simply reply with your request .\nkeep it in the fairway .\nfree green fees in march\nmonday & tuesday - after 10 am\ngolf invitaion good for up to 4 players\ncart rental required .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or tournaments . expires 03 / 31 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\nor\nmillennium special offer\nwednesday & thursday - anytime $ 21 per player\nfriday , saturday , sunday & holidays after 10 am $ 28 per player\ngolf invitation good for up to 4 players .\nrecieve 1 / 2 cart , green fee , range balls\nplus a sleeve of xl 2000 golf balls .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or tournaments . expires 03 / 31 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\n* golf lesson special\n* lessons save $ 10\nbuy two or more lessons and save $ 10 per lesson\nfine tune your swing now . expires 03 / 31 / 00 .\nspring break jr . clinic march 13 th - 15 th .\nreminder\nget your company leagues rolling for the spring\nor start planning for company / charity tournaments . we are\nbooking for spring 2000 and beyond , get the date of your choice today .\nfor information contact billy or paul 281 - 358 - 1155 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.612+0000", "entityId": 1923, "properties": {"text": "Subject: initial - cp name change / merger 3 / 2000\nthis is the initial merger / name change notice for march 2000 .\ni will update the counterparty records with the new legal names tomorrow ,\n3 / 14 , unless i hear from someone that this is an issue . copies of the\ndocuments will be sent out this afternoon .\ni do have additional information to send out later this month . if there are\nany questions , please give us call . thanks !\nmarilyn colbert 3 - 6517\nmary botello 3 - 3103", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.617+0000", "entityId": 1924, "properties": {"text": "Subject: valero gas marketing ; meter # : 8018 / sitara ticket # 148376\neffective march 11 th valero has not pulled any gas on a 35 . 0 / day\nnomination .\ndo you want to arrange a buyback for this activity . there is a buyback\nticket { # 148381 } available\nto handle any underage .\ni am being told this interconnect will be down 2 - weeks ; effective march\n11 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.622+0000", "entityId": 1925, "properties": {"text": "Subject: valero gas marketing ; meter # : 8018 / sitara ticket # 148376\nfyi . . . only !\ngary agreed to let the deficiency volumes hit the buyback that is set\npresently .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 03 / 13 / 2000\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 03 / 13 / 2000 02 : 09 pm\nto : gary w lamphier / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , aimee lannou / hou / ect @ ect\nsubject : valero gas marketing ; meter # : 8018 / sitara ticket # 148376\neffective march 11 th valero has not pulled any gas on a 35 . 0 / day\nnomination .\ndo you want to arrange a buyback for this activity . there is a buyback\nticket { # 148381 } available\nto handle any underage .\ni am being told this interconnect will be down 2 - weeks ; effective march\n11 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.627+0000", "entityId": 1926, "properties": {"text": "Subject: amoco energy 2 / 00\ndaren :\nyou put this in , do have a clue ?\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 03 / 13 / 2000 04 : 30\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 03 / 13 / 2000 04 : 17 pm\nto : julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : amoco energy 2 / 00\nwe have a purchase deal in the system , 205116 , for feb . 2000 production that\namoco does not show . can you tell me the trader ' s name at amoco that the\ndeal was done with ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.631+0000", "entityId": 1927, "properties": {"text": "Subject: re : valero gas marketing ; meter # : 8018 / sitara ticket # 148376\nplease zero out the volumes until further notice . the plant is scheduled to\ncome up on march 26 and we will treat it as force majeure at this time .\nfrom : robert e lloyd 03 / 13 / 2000 02 : 28 pm\nto : howard b camp / hou / ect @ ect\ncc : stacey neuweiler / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary w\nlamphier / hou / ect @ ect\nsubject : valero gas marketing ; meter # : 8018 / sitara ticket # 148376\nfyi . . . only !\ngary agreed to let the deficiency volumes hit the buyback that is set\npresently .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 03 / 13 / 2000\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 03 / 13 / 2000 02 : 09 pm\nto : gary w lamphier / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , aimee lannou / hou / ect @ ect\nsubject : valero gas marketing ; meter # : 8018 / sitara ticket # 148376\neffective march 11 th valero has not pulled any gas on a 35 . 0 / day\nnomination .\ndo you want to arrange a buyback for this activity . there is a buyback\nticket { # 148381 } available\nto handle any underage .\ni am being told this interconnect will be down 2 - weeks ; effective march\n11 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.636+0000", "entityId": 1928, "properties": {"text": "Subject: nom for 3 / 14 and 3 / 15\nwell , i goofed up the email again .\nthe dates we are reducing noms for are 3 / 14 and 3 / 15 .\ni ' ll call on wednesday am about thursday numbers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.641+0000", "entityId": 1929, "properties": {"text": "Subject: nomination fvor 2 / 14 / 2000 and 2 / 15 / 2000\nthe nomination for 3 / 13 / 2000 into eastrans is 60 , 000 mmbtu / d ,\n50 , 000 will come from pg & e\n7 , 000 from fcv\n3 , 000 into cartwheel agreement at carthage .\nwe plan to go back to 75 , 000 on thurs . , 3 / 16 . i\nwill advise wed morning .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.647+0000", "entityId": 1930, "properties": {"text": "Subject: well head\nstacy , bill moore from texaco called and the well at meter 9826 which came\non at the beginning of the month at 2 , 000 a day has dropped of to 1 , 200 a\nday . bill would like to change the nom to 900 so we balance for the month .\nlet me know what you think and i ' ll get back with him .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.652+0000", "entityId": 1931, "properties": {"text": "Subject: weekend noms will either of you forward to ken lay\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 13 / 2000\n04 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 10 / 2000 10 : 57 : 58 am\nto : ami _ chokshi @ enron . com , ggrant @ enron . com\ncc :\nsubject : weekend noms will either of you forward to ken lay\n( see attached file : egmnom - mar . xls )\n- egmnom - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.660+0000", "entityId": 1932, "properties": {"text": "Subject: bpa rate case - seasonal rates\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary hain / hou / ect on 03 / 14 / 2000 08 : 48 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital minnesota power\nand light co . , opinion no . 12 , issued april 14 , 1978 , mimeo at 24 - 5 .\n[ 65 , 229 ]\nin both cases , the commission rejected rate design features where there was\nno evidence in the record showing that the rate design features reflected\ncost incurrence , id . in its order setting this proceeding for hearing , the\ncommission took note of edison ' s proposed seasonal differential and\nspecifically directed that the parties fully address the issues related to\nthe cost support for the seasonal rate design , commission order issued march\n30 , 1979 , mimeo at 4 - 5 . on october 9 , 1980 , the parties were directed by the\npresiding judge to identify in their initial briefs the portions of the\nrecord that relate to cost support for the seasonal differential .\nthe requirement that edison provide cost support for its seasonal\ndifferential , as discussed supra , is also set forth in the commission ' s\nfiling requirements for rate schedules : if the rate design is intended to\nreflect costs , the applicant must show how it reflects costs ; if the rate\ndesign is not intended to reflect costs , the applicant must justify the\ndeparture from costbased rates , 18 cfr o 35 . 13 ( b ) ( 4 ) ( iii ) statement p .\nedison ' s seasonal differential is intended to lessen the costs imposed upon\nit by its prominent summer peak . edison reasons that , since it must build\ncapacity to meet its prominent summer peak , charging more in the summer would\ngive customers an incentive to control their summer demands and , therefore ,\nedison ' s cost of adding capacity would be reduced ( tr . 169 ) . accordingly ,\nedison must show how its seasonal differential reflects the costs imposed on\nit by summer demand , under the commission ' s filing requirements in 18 cfr o 35 .\n13 ( b ) ( 4 ) ( iii ) statement p . further , even purpa section 111 ( d ) ( 4 ) relied upon\nby edison states that rates \" shall be on a seasonal basis which reflects the\ncosts of providing service to such class of consumers at different seasons of\nthe year to the extent that such costs vary seasonally for such utility . \"\n( emphasis added . )\nfurther , support for relying on marginal rather than average costs comes from\nthe commission itself . in its order of march 30 , 1979 setting this cause for\nhearing , mimeo at 4 , 5 , the commission , in commenting on time of day and\nseasonal rates , mentioned that it encourage innovative rate design to match\nmore closely rates to costs . in this regard , the commission cited its order\nno . 537 , supra at 4 , which specifically suggests use of pricing mechanisms\nbased on marginal cost principles\n[ 65 , 236 ]\nfor jurisdictional wholesale sales . under the circumstances in this case ,\nwhere the sale of economy energy is related to edison ' s costs in adding or\neliminating additional excess capacity , it is appropriate to establish the\nprice for economy transactions on marginal costs . this provides a more close\nmatching of the rate to the cost than would a rate design based on average\ncosts . accordingly , winnetka ' s position on pricing of economy energy will not\nbe adopted .\naffirmed and reversed - see next paragraph\ncomm - opinion - order , 23 ferc ? 61 , 219 , commonwealth edison company , docket nos .\ner 79 - 182 - 000 and er 80 - 106 - 000 , ( may 12 , 1983 )\nturning to commonwealth ' s exceptions , we find that the judge correctly\nrejected the seasonal differential . even if we accept the company ' s\ninterpretation of purpa , it still has not cited any record evidence\nwhatsoever of a difference in costs between summer and nonsummer months .\nwithout at least some showing of a cost difference , it is impossible to make\na judgment on the reasonableness of the company ' s 15 . 25 % proposal . we\ntherefore uphold the judge on this point .\nwe reverse the judge ' s adoption of a price set at 110 % of the utility ' s\nincremental costs , however , and approve the type - b split - savings method\nproposed by commonwealth . under this method , economy transactions are\narranged for a 12 - hour or similar period at a fixed price based on cost\nestimates at the time of the agreement . if the utility ' s incremental costs\nrise to the point that continued supply would become burdensome , the utility\nmay terminate supply . we find this method superior to that proposed by staff\nin that implementation is greatly simplified . cost determinations need not be\nmade as frequently .\nrelated to pmas\nreg - preamble , fercsr ? 36 , 710 , procedures for public participation in power\nand transmission rate adjustments and extensions , december 31 , 1980 , 10 cfr\n903 , 45 fr 86976\n[ 36 , 741 ]\nhistorically , many purpa - type standards have been used in designing wholesale\nrates for the sale of federal hydroelectric power . pmas analyze costs to\nestablish revenue requirements and consider this information in designing\nrates . declining block rates for energy were once used by the pmas but\nsubsequently were found inappropriate and eliminated from rate schedules .\nmany of the pmas for years have been effectively using various forms of load\nmanagement measures in their rate schedules , such as scheduling limitations ,\nloadshaping , capacity and energy overrun charges , etc . bpa has had a history\nof using seasonal rates for wholesale firm capacity and energy and also\noffered its direct service industrial customers interruptible rates some time\nago . southwestern has had interruptible capacity rates in effect since 1957 .\nthese examples demonstrate the willingness of the pmas to implement\npurpa - type standards where applicable .\nmany of these purpa - type standards , when applied appropriately in the design\nof pma rates , can serve to implement the purposes of purpa by encouraging\nconservation of energy , efficient use of resources and facilities , and\nequitable rates . the public participation process will provide an opportunity\nto examine these and other appropriate concepts .\nthe pmas will continue to review and revise their power marketing practices\non a system - by - system basis to serve the purpa objectives . the assistant\nsecretary for resource applications , working with the administrators of the\npower administrations , and after receiving public comment , will consider the\nadoption of rate design guidelines , similar in form to the guidelines in ra\n6120 . 2 on financial accounting and ratemaking , which will reflect the\nexperience gained by the pmas in their system - by - system approach to rate\ndesign .\nrelated to purpa\nfed - law , fercsr ? 5021 , purpa , sec . 111 . consideration and determination\nrespecting certain ratemaking standards .\n( 4 ) seasonal rates . - - the rates charged by an electric utility for providing\nelectric service to each class of electric consumers shall be on a seasonal\nbasis which reflects the costs of providing service to such class of\nconsumers at different seasons of the year to the extent that such costs vary\nseasonally for such utility .\nfed - reg - notice , fercsr ? 37 , 503 , doe responsibilities under title i of purpa\n( 4 ) seasonal rates shall be established where costs vary by season ;\nprop - reg - preamble , fercsr 1988 - 1998 ? 32 , 457 , administrative determination of\nfull avoided costs , sales of power to qualifying facilities , and\ninter - connection facilities , march 16 , 1988 , docket no . rm 88 - 6 - 000 , 53 fr\n9331 , 55 fr 31882\npricing flexibility may take several different forms . for instance , a\ncontract could provide qfs with a price floor applicable to all the power\nsupplied to the utility , but still provide for higher variable unit prices\nreflecting daily or seasonal periods . the price floor would provide the\nrevenue stream necessary for the qf to secure financial support while\n[ 32 , 174 ]\nthe price variability would induce the qf to maximize deliveries in peak - load\nperiods when the utility values additional supplies most . of course , the\nprice floor should not exceed the minimum value of the utility ' s avoided\ncost . similarly , a contract could provide for a two part price - - a fixed\npayment for capacity and an energy price for power delivered . the qf would be\nassured a minimum revenue stream based on the value of its capacity . the\nvariable energy component would allow the utility to dispatch the qf capacity\nonly when it was economic . whatever the pattern of contract payments , rates\nfor purchases from qfs should always reflect how well the characteristics of\nthe suppliers ' power match the purchasing utility ' s need . this will ensure\nthat the qf will make most production decisions on the basis of rates\nreflecting avoided costs ( rather than the guaranteed average rate ) and , at\nthe same time , will receive revenues sufficient to attract investors .\nto avoid problems such as those associated with take - or - pay contracts in the\nnatural gas industry , the commission wishes to stress the danger of including\nforecasted fuel costs in the fixed rate structure of long - term contracts ,\nespecially in combination with the specification of minimum purchase\nquantities . the commission also encourages the use of time - of - day and\nseasonal rates in flexible pricing structures for long - term contracts .\nreg - preamble , fercsr 1977 - 1981 ? 30 , 128 , small power production and\ncogeneration facilities ; regulations implementing section 210 of the public\nutility regulatory policies act of 1978 , order no . 69 , february 25 , 1980 ,\ndocket no . rm 79 - 55 , 18 cfr 292 , 45 fr 12214 , 45 fr . . .\nrather than specifying that exact time - of - day or seasonal rates for purchases\nare required , however , the commission believes that the selection of a\nmethodology is best left to the state regulatory authorities and nonregulated\nelectric utilities charged with the implementation of these provisions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.667+0000", "entityId": 1933, "properties": {"text": "Subject: kn changes upstream on the 60 k to 92155 for the 5 , 000 and we bring\nin 3 , 000 for champians also kn 92155 on the 201 . . . . no other changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 14 / 2000\n11 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 14 / 2000 10 : 57 : 07 am\nto : ami _ chokshi @ enron . com , ggrant @ enron . com\ncc :\nsubject : kn changes upstream on the 60 k to 92155 for the 5 , 000 and we bring\nin 3 , 000 for champians also kn 92155 on the 201 . . . . no other changes\n( see attached file : egmnom - mar . xls )\n- egmnom - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.672+0000", "entityId": 1934, "properties": {"text": "Subject: calpine daily gas nomiantion\nper our phone conversation . >\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.677+0000", "entityId": 1935, "properties": {"text": "Subject: address change - - ken seaman\nnew address for ken seaman\nbuylow @ houston . rr . com\nlater\nken\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.682+0000", "entityId": 1936, "properties": {"text": "Subject: 1999 hpl unaccounted for\nper discussions that hopefully most of you have or will have with your\nrespective managers , you have been selected to be a part of a team to address\nvarious issues associated with reconciling and clearing 1999 ua 4 . the scope\nof the team will be to work as a team , on production months where the ua 4\nnumber per our accounting systems is considerably larger in comparison to\nwhat the pipeline balancing reports has as unaccounted for . this team will\nbe dedicated fully to this effort and will need to be prepared to contribute\nwhatever hours are needed to get the desired results . yvette will be\nlocating a room that we can occupy for all of this week and next week . this\nroom will be a \" war room \" . everyone is expected to report to the \" war room \"\non a daily basis and should expect to be there unless something extremely\npressing causes you to have to leave or people need to go back to their\noffices to retrieve data or information . the expectations are that this\ngroup will work to identify any volume discrepancies , adjustments , etc . and\nbe able to either correct or quantify those volumetric adjustments by no\nlater than mar . 24 , 2000 . this team is effective as of tomorrow , mar . 16 ,\n2000 at 9 : 00 a . m .\nyvette - please try to locate a room by then and notify the above team members\nof the location . in the case that you are not able to find a room right\naway , please have everyone go to brenda ' s office in eb 3748 at 9 : 00 a . m .\nthe items on the radar screen to address in resolving volume issues are :\n1 . king ranch\n2 . gulf plains plant\n3 . gulf energy imbalance\n4 . hanover treaters\n5 . south texas treaters\n6 . tejas gas p / l imbalance\n7 . channel a / s line unaccounted for\n8 . third party imbalances - mops vs . pops", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.686+0000", "entityId": 1937, "properties": {"text": "Subject: nominations for eastrans reciept for 3 / 15 and following .\nalso , 23 , 000 mmbtu into enron ' s cartwheel agreementat the hub .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n03 / 15 / 2000\n03 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n03 / 15 / 2000 03 : 28 pm\nto : dfarmer @ enron . com , stacey . neuweiler @ enron . com , briley @ enron . com\ncc : jim i . fields / gcs / cec / pec @ pec , chad w . cass / gcs / cec / pec @ pec , william e .\nspeckels / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec ,\ndarrel\nf . bane / easttexas / pefs / pec @ pec\nsubject : nominations for eastrans reciept for 3 / 15 and following .\nas we discussed , due to weather we decided to reschedule our maintenance ,\nand noms have been returned to 75 , 000 mmbtu / d effective today and following ,\nuntil further notice . 15 , 000 mmbtu will come from cipco into mobil beaumont ,\n50 , 000 into pg & e , and 7 , 000 from fuels cotton valley into hpl .\nunless a problem arises , we plan to stay at this level until tuesday ,\n3 / 21 / 2000 ,\nwhen we will go down some for 1 day only .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.691+0000", "entityId": 1938, "properties": {"text": "Subject: nominations for eastrans reciept for 3 / 15 and following .\ncorrection : 3 , 000 into the carrtwheel agreement .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n03 / 15 / 2000\n03 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n03 / 15 / 2000 03 : 49 pm\nto : dfarmer @ enron . com , stacey . neuweiler @ enron . com , briley @ enron . com\ncc : jim i . fields / gcs / cec / pec @ pec , chad w . cass / gcs / cec / pec @ pec , william e .\nspeckels / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec ,\ndarrel\nf . bane / easttexas / pefs / pec @ pec\nsubject : nominations for eastrans reciept for 3 / 15 and following .\nalso , 23 , 000 mmbtu into enron ' s cartwheel agreementat the hub .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n03 / 15 / 2000\n03 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n03 / 15 / 2000 03 : 28 pm\nto : dfarmer @ enron . com , stacey . neuweiler @ enron . com , briley @ enron . com\ncc : jim i . fields / gcs / cec / pec @ pec , chad w . cass / gcs / cec / pec @ pec , william e .\nspeckels / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec ,\ndarrel\nf . bane / easttexas / pefs / pec @ pec\nsubject : nominations for eastrans reciept for 3 / 15 and following .\nas we discussed , due to weather we decided to reschedule our maintenance ,\nand noms have been returned to 75 , 000 mmbtu / d effective today and following ,\nuntil further notice . 15 , 000 mmbtu will come from cipco into mobil beaumont ,\n50 , 000 into pg & e , and 7 , 000 from fuels cotton valley into hpl .\nunless a problem arises , we plan to stay at this level until tuesday ,\n3 / 21 / 2000 ,\nwhen we will go down some for 1 day only .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.695+0000", "entityId": 1939, "properties": {"text": "Subject: nominations for eastrans reciept for 3 / 15 and following .\nas we discussed , due to weather we decided to reschedule our maintenance ,\nand noms have been returned to 75 , 000 mmbtu / d effective today and following ,\nuntil further notice . 15 , 000 mmbtu will come from cipco into mobil beaumont ,\n50 , 000 into pg & e , and 7 , 000 from fuels cotton valley into hpl .\nunless a problem arises , we plan to stay at this level until tuesday ,\n3 / 21 / 2000 ,\nwhen we will go down some for 1 day only .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.700+0000", "entityId": 1940, "properties": {"text": "Subject: lst rev mar . 2000 josey ranch nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 17 / 2000\n03 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 17 / 2000 03 : 10 : 24 pm\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , knox westmoreland\n, kevin mclarney , vance l\ntaylor / hou / ect @ ect\nsubject : lst rev mar . 2000 josey ranch nom\nhere ' s revised march 2000 ( effective 3 / 18 / 00 ) setup for josey : ( using 1 . 075\nbtu / mcf )\n* gas deliveries into hpl\n11 , 000 mmbtu / d for kri ( net\nreduction of mmbtu / d )\n11 , 000 mmbtu / d into hpl\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.705+0000", "entityId": 1941, "properties": {"text": "Subject: nomination into eastrans - 3 / 18 / 2000\nwe are reducing our nom into eastrans eff 3 / 18 / 2000 to\n72 , 000 mmbtu / d . redeliveries are 50 mmcf / d into pg & e , 7 from fcv ,\n3 into your cartwheel @ carthage , and 12 into mobil beaumont . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.710+0000", "entityId": 1942, "properties": {"text": "Subject: labor distribution report\ndaren ,\ni get a labor distribution report and show that kenneth seaman is showing as\nbeing active for payperiod 1 and 2 in february . if he was not here for this\ntime period please verify that you are not being charged any payroll dollars\nfor him .\nlisa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.714+0000", "entityId": 1943, "properties": {"text": "Subject: team room\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 19 / 2000\n06 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mary ellenberger 03 / 16 / 2000 02 : 16 pm\nto : ami chokshi / corp / enron @ enron , stephanie sever / hou / ect @ ect , kelli\nstevens / hou / ect @ ect , martin cuilla / hou / ect @ ect , katherine l\nkelly / hou / ect @ ect , cc : mary ellenberger / corp / enron @ enron , nelson\nferries / corp / enron @ enron\ncc :\nsubject : team room\nplease make note of the room change , monday ' s devon pricing ( january ) meeting\nthank you\nmse\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary ellenberger / corp / enron on 03 / 16 / 2000\n02 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nangela henn @ ect\n03 / 16 / 2000 09 : 16 am\nto : mary ellenberger / corp / enron @ enron\ncc :\nsubject : team room\nyou asked me to book 3745 for you for monday the 20 th from 1 - 2 pm . i had to\nbump you out of 3745 , but i have\nbooked 3749 ( down from 3745 ) for you for the same time .\nangela -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.719+0000", "entityId": 1944, "properties": {"text": "Subject: hplr liquids / humble gas pipeline\nwe need to get together this afternoon at 2 : 00 pm in room 3745 to discuss how\nwe will schedule and allocate the hplr liquids coming into humble gas\npipeline at meter 8793 . karry , it is my understanding that you do not want\nan intercompany sale from hplr liquids to hplc at this point . how do you\nplan to get this gas to king ranch since hplr liquids does not have a\ntransport on humble ?\ndaren , the intercompany hplc purchase is how it is set up currently in mops .\nrobert , since stella is out , we will need someone to represent logistics .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.724+0000", "entityId": 1945, "properties": {"text": "Subject: re : hplr liquids / humble gas pipeline\njust wanted to keep everyone on point in terms of the importance and\nexpectations of getting this king ranch issue cleaned up for the prior months\nand correct on a go forward basis . i spoke with brenda on friday to give her\nan update of our progress and one of the things that she stressed and wanted\npassed on to the team was the expectations that king ranch would be clean\n( scheduled and allocated correctly ) for march and foward . as of thursday\nnight ' s p & l calc . , unaccounted for march 2000 on texas was a little over\n400 , 000 mmbtus . as you all know , that number is way too high and should be a\nlot lower ( on a bad month , no more than 100 , 000 mmbuts ) . hopefully , if king\nranch is the part of the problem for march and we get these issues resolved ,\nmarch will not be an issue . i appreciate everyone ' s committment so far and\nhopefully we can apply this team concept in the future to prevent crisis\nmodes like this from here on out . if anyone has questions or concerns ,\nplease do not hesitate to let me know . thanks !\nhoward b camp\n03 / 20 / 2000 08 : 46 am\nto : karry kendall / hou / ect @ ect , daren j farmer / hou / ect @ ect , clem\ncernosek / hou / ect @ ect\ncc : stella l morris / hou / ect @ ect , howard b camp / hou / ect @ ect , rita\nwynne / hou / ect @ ect , fred boas / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : hplr liquids / humble gas pipeline\nwe need to get together this afternoon at 2 : 00 pm in room 3745 to discuss how\nwe will schedule and allocate the hplr liquids coming into humble gas\npipeline at meter 8793 . karry , it is my understanding that you do not want\nan intercompany sale from hplr liquids to hplc at this point . how do you\nplan to get this gas to king ranch since hplr liquids does not have a\ntransport on humble ?\ndaren , the intercompany hplc purchase is how it is set up currently in mops .\nrobert , since stella is out , we will need someone to represent logistics .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.729+0000", "entityId": 1946, "properties": {"text": "Subject: midtex\ndaren -\ni need a service list contract set up for ena for the midtex line for feb . 00\nand march forward for meter 9735 , deal # 203469 ( xprtung ) . does ena have a\nvalid contract to ship on the midtexas line ? volume management would like\nthis done before close . please let me know .\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.733+0000", "entityId": 1947, "properties": {"text": "Subject: re : lst rev mar . 2000 josey ranch nom\nit started with 12 , 036 on the first and has slowly droped to 10 , 483 on the\n12 th . pretty steady drop .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.738+0000", "entityId": 1948, "properties": {"text": "Subject: 2 nd rev mar . 2000 josey ranch nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 20 / 2000\n02 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin mclarney on 03 / 20 / 2000 02 : 09 : 02 pm\nto : susan d trevino / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , stretch brennan , knox\nwestmoreland , bob withers\nsubject : 2 nd rev mar . 2000 josey ranch nom\nhere ' s revised march 2000 ( effective 3 / 21 / 00 9 : 00 am cycle ) setup for josey :\n( using 1 . 075 btu / mcf )\n* gas deliveries into hpl\n11 , 000 mmbtu / d for kri\n2 , 000 mmbtu / d for texaco ( net increase of\n2 , 000 mmbtu / d )\n13 , 000 mmbtu / d into hpl\nif you need any additional information , kcs ' field contact is stretch\nbrennan in victoria : 512 - 576 - 1005 .\nthank you .\nkevin mclarney\n713 / 964 - 9441\n( on behalf of bob withers )\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.742+0000", "entityId": 1949, "properties": {"text": "Subject: mitchell gas services 2 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 03 / 20 / 2000 02 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 03 / 20 / 2000 02 : 08 pm\nto : julie meyers / hou / ect @ ect\ncc : william c falbaum / hou / ect @ ect\nsubject : mitchell gas services 2 / 00\nwe have a price difference with mitchell gas services for 2 / 00 production ,\ndeal 156658 . we have hsc - 0 . 05 and mitchell shows hsc - 0 . 04 . can you tell\nme what the correct price is ? i need this asap .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.747+0000", "entityId": 1950, "properties": {"text": "Subject: 1497\ndaren ,\nates shows that your team has one specialist for 1497 in january and\nfebruary . please let me know if ates is incorrect for the month of january\nand february . if there is a specialist in your team , we have not received a\nsurvey from this person . this lack of information prevents your expenses\nfrom being 100 % allocated out to the commercial teams . please fill out the\nfollowing survey and return it to me asap . if you have any questions please\ncall me at 3 - 3859 .\nthanks ,\nshari", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.752+0000", "entityId": 1951, "properties": {"text": "Subject: nomination for 3 / 21 / 2000\nour nomination into eastrans will drop to 60 , 000 mmbtu / d for 3 / 21 / 2000 only .\non 3 / 22 / 2000 , it will increase to 75 , 000 mmbtu / d aqnd remain there until\nfurther\nnotice .\nfor 3 / 21 / 2000 only ,\n50 , 000 redelivered via pg & e\n7 , 000 from fcv\n3 , 000 into your cartwheel agrment at carthage\n0 into mobil beaumont .\nfor 3 / 22 and following , same redeliveries as above ,\nexcept add 15 , 000 into mobil beaumont .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.757+0000", "entityId": 1952, "properties": {"text": "Subject: hey ! guess it was hard to get back , huh ! i was going to get jake one of\nthose baby wipe warmers and send it with art & jo , but walmart was out of\nthem . maybe i need to get something else . do you have one of those toys\nthat goes on the bar of the carrier ? is jake ok ? let me hear from you ,\nplease . i ' m making lacy stay off the phone from 7 - 9 : 30 every night so that\nyou & shane can have a chance to call if you want to . i sure do miss\nholding jake and playing with cole . cole is so funny . i ' ve been telling\neverybody things that he does & they can ' t believe it at 2 yrs . old . i\ngotta get busy - - let me know if you get this . i know you ' re busy , just a\nlittle answer to let me know ' cause i sent you one a while back that you\nnever answered and the last 2 that i sent shane & shelly they didn ' t get .\nlove ya , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.766+0000", "entityId": 1953, "properties": {"text": "Subject: @ ect . enron . com email notification !\nwe are one @ enron . com !\nplease be aware of the following senders were automatically notified to ( a ) .\nstop sending internet mail to your @ ect . enron . com address and to ( b ) . send\nfuture internet communications to daren . j . farmer @ enron . com :\nfpam _ @ hotmail . com , mjones 7 @ txu . com\nreminder :\nyour @ ect . enron . com address should not be used any longer and will be\ndeactivated soon . so please make sure these contacts switch to your new\n@ enron . com address . if you have subscribed to mailing lists , please make\nsure to update your addresses there as well .\nand\nyour shortname @ enron . com address ( i . e . jsmith @ enron . com ) will continue to\nwork , even though your formal address is longname @ enron . com ( i . e .\njohn . smith @ enron . com )\nplease do not reply to this message as it was automatically generated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.772+0000", "entityId": 1954, "properties": {"text": "Subject: chris hose corrected resume\ndaren ,\ni found a mispelling on the resume i sent you earlier . here is a revised\nversion .\nthanks ,\nchris h .\nget your private , free email at http : / / www . hotmail . com\n- chris hose management resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.778+0000", "entityId": 1955, "properties": {"text": "Subject: 2 nd rev mar . 2000 josey ranch nom\nnow they want to go back up . texaco is coming on .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 03 / 20 / 2000 02 : 42\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan d trevino @ ect\n03 / 20 / 2000 02 : 23 pm\nto : daren j farmer / hou / ect @ ect , tom acton / corp / enron @ enron , lauri a\nallen / hou / ect @ ect\ncc :\nsubject : 2 nd rev mar . 2000 josey ranch nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 20 / 2000\n02 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin mclarney on 03 / 20 / 2000 02 : 09 : 02 pm\nto : susan d trevino / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , stretch brennan , knox\nwestmoreland , bob withers\nsubject : 2 nd rev mar . 2000 josey ranch nom\nhere ' s revised march 2000 ( effective 3 / 21 / 00 9 : 00 am cycle ) setup for josey :\n( using 1 . 075 btu / mcf )\n* gas deliveries into hpl\n11 , 000 mmbtu / d for kri\n2 , 000 mmbtu / d for texaco ( net increase of\n2 , 000 mmbtu / d )\n13 , 000 mmbtu / d into hpl\nif you need any additional information , kcs ' field contact is stretch\nbrennan in victoria : 512 - 576 - 1005 .\nthank you .\nkevin mclarney\n713 / 964 - 9441\n( on behalf of bob withers )\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.782+0000", "entityId": 1956, "properties": {"text": "Subject: lst rev mar . 2000 josey ranch nom\nl et me know if you want me to change this . they are currently at 12 , 000 and\nwant to go to 11 , 000 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 03 / 20 / 2000 08 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan d trevino @ ect\n03 / 17 / 2000 03 : 09 pm\nto : daren j farmer / hou / ect @ ect , lauri a allen / hou / ect @ ect , tom\nacton / corp / enron @ enron , stacey neuweiler / hou / ect @ ect\ncc :\nsubject : lst rev mar . 2000 josey ranch nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 17 / 2000\n03 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 17 / 2000 03 : 10 : 24 pm\nto : susan d trevino / hou / ect @ ect\ncc : stretch brennan , knox westmoreland\n, kevin mclarney , vance l\ntaylor / hou / ect @ ect\nsubject : lst rev mar . 2000 josey ranch nom\nhere ' s revised march 2000 ( effective 3 / 18 / 00 ) setup for josey : ( using 1 . 075\nbtu / mcf )\n* gas deliveries into hpl\n11 , 000 mmbtu / d for kri ( net\nreduction of mmbtu / d )\n11 , 000 mmbtu / d into hpl\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.787+0000", "entityId": 1957, "properties": {"text": "Subject: well head\ndaren \" you new dad \" i never heard back from stacy on this .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 03 / 20 / 2000 08 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntom acton\n03 / 13 / 2000 09 : 00 am\nto : stacey neuweiler / hou / ect @ ect , ami chokshi / corp / enron @ enron , vance l\ntaylor / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : well head\nstacy , bill moore from texaco called and the well at meter 9826 which came\non at the beginning of the month at 2 , 000 a day has dropped of to 1 , 200 a\nday . bill would like to change the nom to 900 so we balance for the month .\nlet me know what you think and i ' ll get back with him .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.792+0000", "entityId": 1958, "properties": {"text": "Subject: mobil discrepancies\ndaren :\ni ' ll come down to talk to you about these .\nlee\nps congrats ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 03 / 20 / 2000\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkristen j hanson\n03 / 20 / 2000 09 : 31 am\nto : lee l papayoti / hou / ect @ ect\ncc : lisa csikos / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : mobil discrepancies\nlee ,\nhere are some specific situations i am trying to resolve regarding volume on\ncentana :\npurchase from mobil :\n2 / 99 - the purchase by hplr for 155 , 000 mms in deal 60978 was never billed by\nmobil .\n( a purchase of gas in storage with no physical movement per comments in\nsitara ) .\nper our conversation friday , it sounds like hplc does owe mobil for his\ngas , right ?\nsale to mobil :\n1 / 2000 - per the pipe statement provided by greg bonin for centana volumes ,\n299 , 893\nflowed in january . i billed 299 , 893 and mobil paid it .\nlogistics said 19 , 893 of the gas that flowed was not our sale to mobil\nbecause\nthe gas wasn ' t scheduled . in addition , if the 19 , 893 were a sale to mobil ,\nthe\npoint would not be in balance in the system . the source of 280 , 000 of the\ngas\nsays they only sold 280 , 000 mms and not any more . no other sources are in the\nsystem .\ni assume if the 19 , 893 wasn ' t consumed by mobil , they wouldn ' t have\npaid for it . is there storage involved here ? if so , whose storage and how\ndid it work ?\nthere are sales in other months with discrepancies on centana with smaller\nvolumes\nthan in 1 / 2000 . once i understand what happened in january , maybe that will\nhelp me\nwith the other months .\nplease let me know if there is any other information you need from me\nrelating to\nthe questions above and when would be a good time for you to discuss this . i\ncan bring\nthe pipe statements to you if that would help .\nthanks ,\nkris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.797+0000", "entityId": 1959, "properties": {"text": "Subject: cilco storage\nthe cilco volumes are different than the confirmed volumes to cilco . please\nreview the attached the spreadsheets from lisa kinsey , the central desk\nscheduler responsible for the cilco account . the biggest variance is in\njanuary 2000 . cilco withdrew 200 , 000 mmbtu ' s more than we booked @ bammel .\nplease let me know the best way to correct the problem . i suspect the\nvariance is showing up as a transport imbalance . also , the nomination for\nthe current month is 7 , 327 mmbtu instead of 7 , 000 mmbtu per day . 7 , 000 is\nthe volume delivered to cilco after transport fuel .\n- - - - - - - - - - - - - - - - - - - - -\nlisa kinsey\n03 / 21 / 2000 08 : 12 am\nto : kenny j soignet / hou / ect @ ect\ncc :\nsubject : cilco storage\nkenny ,\nattached is the worksheet that i have been using to verify cilco ' s storage\nbalance with vonda seckler from cilco . let me know if you need anything\nelse .\nlisa kinsey\next 37628", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.802+0000", "entityId": 1960, "properties": {"text": "Subject: pg & e texoma volumes\nin reviewing some of the imbalance numbers , i discovered that valero texoma\n( # 71 ) bav volumes have not fed into pops since 3 / 14 causing an out of balance\nat the meter in excess of 500 , 000 mm month to date . the more critical part of\nthis problem , however , is that pops has fed 0 volumes back to sitara on some\nof the hplc deals . this means that these purchase volumes ( expenses ) have\nnot been picked up in tom ' s p & l and are , instead , sitting in ua 4 . to the\nextent that the purchase prices vary from the ua 4 value , the p & l may take a\nhit when these actual volumes flow through .\ni realize that kim is out and that you guys are stretched thin , however , a\nproblem of this magnitude needs to be addressed as soon as it ' s discovered .\nsomeone needs to be overriding the 0 volumes so that sitara is receiving\ncorrect information and the p & l is kept as accurate as possible .\nplease give me a call if you have any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.807+0000", "entityId": 1961, "properties": {"text": "Subject: desk to desk deal needed at meter 378 for february 2000\naimee :\ni need a desk to desk deal set up at meter 378 for february 2000 . it is an\nena sale ( delivery ) on the 202 contract and an hpl buy ( receipt ) on the hpl\n216 contract . this is a very high priority because the bridge will close\ntoday . if possible would you have this completed by noon today ?\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.813+0000", "entityId": 1962, "properties": {"text": "Subject: re : pg & e texoma volumes\ndaren and lauri :\nwe do have a problem with some of our mirrored meters . when mips receives an\n\" incomplete \" from the parent meter it sends a - 0 - to pops . yes , this is a\nbig problem . our pops team ( romeo d ' souza ) has identified this problem and\nnotified mips . however , he was told this was not a priority item . in the\nmean time we are overriding the volumes in pops with the estimated volumes .\nthis particular meter was correct last night , the 14 th rolled last night from\nmips and overrode the bav with a - 0 - from day 14 forward .\nthis was corrected this morning and the meter re - allocated .\nthanks ,\ncharlotte\nlauri a allen\n03 / 21 / 2000 09 : 04 am\nto : robert e lloyd / hou / ect @ ect , tom acton / corp / enron @ enron , charlotte\nhawkins / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , bryan\nhull / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : pg & e texoma volumes\nin reviewing some of the imbalance numbers , i discovered that valero texoma\n( # 71 ) bav volumes have not fed into pops since 3 / 14 causing an out of balance\nat the meter in excess of 500 , 000 mm month to date . the more critical part of\nthis problem , however , is that pops has fed 0 volumes back to sitara on some\nof the hplc deals . this means that these purchase volumes ( expenses ) have\nnot been picked up in tom ' s p & l and are , instead , sitting in ua 4 . to the\nextent that the purchase prices vary from the ua 4 value , the p & l may take a\nhit when these actual volumes flow through .\ni realize that kim is out and that you guys are stretched thin , however , a\nproblem of this magnitude needs to be addressed as soon as it ' s discovered .\nsomeone needs to be overriding the 0 volumes so that sitara is receiving\ncorrect information and the p & l is kept as accurate as possible .\nplease give me a call if you have any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.818+0000", "entityId": 1963, "properties": {"text": "Subject: tejas deliveries at oasis katy\non tuesday , march 7 th , tejas took gas from us at oasis katy and gave it back\nto us at tejas laporte to help us out during an outage for $ . 02 / mmbtu . this\ntransaction has not been scheduled correctly . there are two deal tickets in\nsitara to cover the oasis portion of the deal : # 213145 covers ena selling\nthe gas to hplc for hplc to transport on tejas . deal # 213370 covers the\ntransport usage on tejas from oasis katy to laporte . i have edited this\nticket to add the $ . 02 / mm charge . there needs to be a tejas expense contract\nat laporte , # 665 , to cover the approx . 25 , 000 mm received there on the 7 th .\nthese volumes are currently sitting on the laporte oba .\njackie - if you would work with carlos he should be able to walk you through\ngetting this scheduled correctly in all systems .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.823+0000", "entityId": 1964, "properties": {"text": "Subject: transport contracts\nd -\nthe oasis contract # s are : 028 27099 201\n028 27099 202\n028 27099 203\n028 27099 204\npg & e contract # s are : 5095 - 037\n5098 - 695\n9121\n5203 - 010\npg & e parking and lending contracts awaiting approval : pleo 0004\nplao 0004", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.828+0000", "entityId": 1965, "properties": {"text": "Subject: help !\nbrian ,\nwho do i talk to about getting daren farmer a labor distribution report . he\nneeds to see what employees are hitting his rc . i know that we have\ndiscussed this prior and soem managers are receiving a monthly report but he\nis not . who can help us ? ? ?\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.833+0000", "entityId": 1966, "properties": {"text": "Subject: re : help !\ni ' ll get with brenda on february and brian will be getting me march . ken\nseaman should have be correct because i personally made him inactive on feb\n15 th ( the final day of his last pay period . . . we couldn ' t do it his real\nlast day because we had to allow that pay period to finish out so it would\nkick out a timesheet for him . ) the specialist may actually be ami because\nher title was incorrect for awhile ( but we ' ll look at it to make sure ) .\ni ' ll keep you posted .\ny\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n03 / 21 / 2000 01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian heinrich @ ect\n03 / 21 / 2000 01 : 55 pm\nto : yvette g connevey / corp / enron @ enron\ncc :\nsubject : re : help !\nyvette ,\nstarting with march , all labor distribution reports will come through me , and\ni will distribute them . brenda should have received all of the labor reports\nfor the rc ' s that report to her for february . i say \" should have \" because\nthey were supposed to be sent out by someone else . i will try get you a\ncopy of the february reports and send them to you .\nhopefully in the future with me controlling the distribution , we will not\nhave this problem .\nthanks ,\nbrian\nto : brian heinrich / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : help !\nbrian ,\nwho do i talk to about getting daren farmer a labor distribution report . he\nneeds to see what employees are hitting his rc . i know that we have\ndiscussed this prior and soem managers are receiving a monthly report but he\nis not . who can help us ? ? ?\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.839+0000", "entityId": 1967, "properties": {"text": "Subject: storage deal 47472 and 60747\njulie :\nthere are two storage deals that are using the same contract number . can you\nlook at the two deals and determine which one is the correct deal ? do we need\nto kill or cut off the other deal ? let me know when you get back in the\noffice and look at it .\nkarie ( 36759 )\ndeal contract\n47472 96016959\n60747 96046959", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.844+0000", "entityId": 1968, "properties": {"text": "Subject: re : cilco storage\nyes , they are taken care of . but in the future we need to devise some sort of\ncommunication from lisa kinsey so if there\nis a change with cilco , it is communicated to either you or me or aimee or\nkenny or someone and it is reflected on our\nwithdrawal report .\ngg\ndaren j farmer\n03 / 21 / 2000 11 : 57 am\nto : george grant / hou / ect @ ect\ncc :\nsubject : cilco storage\ngeorge ,\nare you looking into these variances ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 03 / 21 / 2000\n11 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenny j\nsoignet\n03 / 21 / 2000 08 : 58 am\nto : daren j farmer / hou / ect @ ect , aimee lannou / hou / ect @ ect , george\ngrant / hou / ect @ ect , fred boas / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , rita wynne / hou / ect @ ect\nsubject : cilco storage\nthe cilco volumes are different than the confirmed volumes to cilco . please\nreview the attached the spreadsheets from lisa kinsey , the central desk\nscheduler responsible for the cilco account . the biggest variance is in\njanuary 2000 . cilco withdrew 200 , 000 mmbtu ' s more than we booked @ bammel .\nplease let me know the best way to correct the problem . i suspect the\nvariance is showing up as a transport imbalance . also , the nomination for\nthe current month is 7 , 327 mmbtu instead of 7 , 000 mmbtu per day . 7 , 000 is\nthe volume delivered to cilco after transport fuel .\n- - - - - - - - - - - - - - - - - - - - -\nlisa kinsey\n03 / 21 / 2000 08 : 12 am\nto : kenny j soignet / hou / ect @ ect\ncc :\nsubject : cilco storage\nkenny ,\nattached is the worksheet that i have been using to verify cilco ' s storage\nbalance with vonda seckler from cilco . let me know if you need anything\nelse .\nlisa kinsey\next 37628", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.848+0000", "entityId": 1969, "properties": {"text": "Subject: mips\ncheryl jones has just left me a message letting me know that their\nprogrammers are working on a fix to the problem as we speak . cheryl is\npostponing our meeting for tomorrow till she has more information from the\nprogrammers . mike , cheryl said her boss ( gary anderson ) has sent you a\nresponse to your concerns about this same problem could you let us all know\nwhat his response is . in the mean time , george could you give us a list of\nthe known meters that were having this problem with so i can give it to\ncheryl , and i ' ll try to get some kind of time frame from cheryl as to when\nwe can expect to hear something back from them . thanks to all .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.854+0000", "entityId": 1970, "properties": {"text": "Subject: re : pg & e texoma volumes\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael eiben / hou / ect on 03 / 21 / 2000 04 : 18\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngary anderson @ enron on 03 / 21 / 2000 02 : 25 : 52 pm\nto : michael eiben / hou / ect @ ect\ncc : jeff may / gpgfin / enron @ enron , charlotte hawkins / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect , gary a hanks / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ngeorge grant / hou / ect @ ect , pat clynes / corp / enron @ enron , steve\nventuratos / hou / ect @ ect , brenda f herod / hou / ect @ ect\nsubject : re : pg & e texoma volumes\nthis is an outside measured volume that we don ' t receive volumes on until\nmonth ' s end so systematically , no information equals zero . spi , the software\nvendor for mips is investigating all of the rules currently in place for file\ntransfers , particularly 0 volumes . the only possible solution is to tag all\nzero volumes sent in the nightly file process as ( i ) incomplete . i will let\nyou know the outcome of this investigation and the monies required to\ncomplete . we may require a work order to complete based on the outcome of the\ninvestigation .\nmichael eiben @ ect\n03 / 21 / 2000 10 : 50 am\nto : jeff may / gpgfin / enron @ enron , gary anderson / gpgfin / enron @ enron\ncc : charlotte hawkins / hou / ect @ ect , robert e lloyd / hou / ect @ ect , gary a\nhanks / hou / ect @ ect , lauri a allen / hou / ect @ ect , george grant / hou / ect @ ect , pat\nclynes / corp / enron @ enron , steve venturatos / hou / ect @ ect , brenda f\nherod / hou / ect @ ect\nsubject : pg & e texoma volumes\njeff / gary ,\nwhere is measurement in the process of sending pipeline operations more\ncomplete data ? we continue to have this problem at various bidirectional\nmeters and meter 980071 below is the latest casuality . when mips sends\npipeline operations a zero prelim , this becomes the best available number and\noverlays the estimate that gas control sends us . when this happens &\nscheduling doesn ' t catch to override the zero , the desk ' s expense is\nunderstated . this is causing a huge mess for texas operations . what is the\nplan to move this up on measurements priority list ? we need an answer asap ! !\ncharlotte ,\nat what other meters are we having this problem ?\nmve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael eiben / hou / ect on 03 / 21 / 2000 10 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins 03 / 21 / 2000 09 : 54 am\nto : jeff may / gpgfin / enron @ enron , michael eiben / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , george grant / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : pg & e texoma volumes\ni spoke with romeo d ' souza this morning regarding the on - going problem of\nmips feeding zeros to pops when incomplete data is received .\nin light of the e - mail below regarding how important it is that we receive\naccurate data from mips . . . . could you please update me on the status of\nthis correction .\nthank you so much .\ncharlotte hawkins\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlotte hawkins / hou / ect on 03 / 21 / 2000\n09 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n03 / 21 / 2000 09 : 04 am\nto : robert e lloyd / hou / ect @ ect , tom acton / corp / enron @ enron , charlotte\nhawkins / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , bryan\nhull / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : pg & e texoma volumes\nin reviewing some of the imbalance numbers , i discovered that valero texoma\n( # 71 ) bav volumes have not fed into pops since 3 / 14 causing an out of balance\nat the meter in excess of 500 , 000 mm month to date . the more critical part of\nthis problem , however , is that pops has fed 0 volumes back to sitara on some\nof the hplc deals . this means that these purchase volumes ( expenses ) have\nnot been picked up in tom ' s p & l and are , instead , sitting in ua 4 . to the\nextent that the purchase prices vary from the ua 4 value , the p & l may take a\nhit when these actual volumes flow through .\ni realize that kim is out and that you guys are stretched thin , however , a\nproblem of this magnitude needs to be addressed as soon as it ' s discovered .\nsomeone needs to be overriding the 0 volumes so that sitara is receiving\ncorrect information and the p & l is kept as accurate as possible .\nplease give me a call if you have any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.859+0000", "entityId": 1971, "properties": {"text": "Subject: i can receive attachments on my hotmail address . i can ' t get on juno . send\nme one and see if i get it . send my wild thing . and send me something of\njake . and please let me know if everything is ok with jake . love ya , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.868+0000", "entityId": 1972, "properties": {"text": "Subject: first deliveries - cico oil & gas co . , and union gas corp .\ndidn ' t see you on this list and thought you or stacey / ami would want to know .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 03 / 21 / 2000 01 : 47\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary m smith\n03 / 21 / 2000 01 : 38 pm\nto : lisa hesse / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect\nsubject : first deliveries - cico oil & gas co . , and union gas corp .\nfyi , now that these meters are now flowing , please ensure that our rate\nassumptions are still applicable .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary m smith / hou / ect on 03 / 21 / 2000 01 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 03 / 21 / 2000 01 : 27 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , michael w morris / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , brenda f\nherod / hou / ect @ ect , david baumbach / hou / ect @ ect , bryan hull / hou / ect @ ect , brian\nm riley / hou / ect @ ect , jeffrey a austin / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , dawn c kenne / hou / ect @ ect , lisa csikos / hou / ect @ ect ,\nkristen j hanson / hou / ect @ ect , heidi withers / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect\ncc :\nsubject : first deliveries - cico oil & gas co . , and union gas corp .\nsee attached files", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.875+0000", "entityId": 1973, "properties": {"text": "Subject: - - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 21 / 2000\n11 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 21 / 2000 11 : 12 : 40 am\nto : ami _ chokshi @ enron . com , ggrant @ enron . com\ncc :\nsubject :\n( see attached file : egmnom - mar . xls ) ( see attached file : hpl - mar . xls )\n- egmnom - mar . xls\n- hpl - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.880+0000", "entityId": 1974, "properties": {"text": "Subject: re : march 2000 activity ; enichem elastomers americas , inc .\nthere is no buy - back - we are their only pipeline supplier and it is a\nrequirements deal .\nfrom : robert e lloyd 03 / 21 / 2000 09 : 12 am\nto : lee l papayoti / hou / ect @ ect\ncc : stacey neuweiler / hou / ect @ ect , daren j farmer / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , pat clynes / corp / enron @ enron , jackie young / hou / ect @ ect\nsubject : march 2000 activity ; enichem elastomers americas , inc .\ni have been told this counterparty has scheduled some maintenance for march\n22 nd through march 23 rd or 24 th .\nhpl is selling them 2 . 0 / day ; sitara # : 92794 . the 2 . 0 / d is the only\nactivity at the meter .\nplease advise .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.885+0000", "entityId": 1975, "properties": {"text": "Subject: march 2000 activity ; enichem elastomers americas , inc .\ni have been told this counterparty has scheduled some maintenance for march\n22 nd through march 23 rd or 24 th .\nhpl is selling them 2 . 0 / day ; sitara # : 92794 . the 2 . 0 / d is the only\nactivity at the meter .\nplease advise .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.890+0000", "entityId": 1976, "properties": {"text": "Subject: re : pg & e texoma volumes\nthis particular meter looks okay today , so should not be impacting ua 4 . will\nkeep you posted if i find any other problems .\nbryan hull\n03 / 21 / 2000 05 : 18 pm\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : re : pg & e texoma volumes\ni looked at our p & l tonite and our ua 4 volumes actually increased by about\n90 , 000 mmbtu ' s for a grand total of 550 , 000 mmbtu ' s for the month . i don ' t\nknow if they fixed this problem or not . if you have any information please\nlet me know .\nthanks .\nbryan\nlauri a allen\n03 / 21 / 2000 09 : 51 am\nto : bryan hull / hou / ect @ ect\ncc :\nsubject : re : pg & e texoma volumes\nscheduling says that they have corrected , but no telling what may happen\novernight . if you run your p & l this evening , you should be okay .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.896+0000", "entityId": 1977, "properties": {"text": "Subject: vacation scheduled\ni will be on vacation friday , march 24 th , 27 th , 28 th and maybe 29 th . in my\nabsence please call jackie young @ 3 - 9497 .\nsusan { @ 3 - 5796 } will back up jackie during my absence for industrial\nactivity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.901+0000", "entityId": 1978, "properties": {"text": "Subject: vacation scheduled\ni will be on vacation friday , march 24 th , 27 th , 28 th and maybe 29 th . in my\nabsence please call jackie young @ 3 - 9497 .\nsusan { @ 3 - 5796 } will back up jackie starting tuesday , march 28 th during my\nabsence for industrial activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.907+0000", "entityId": 1979, "properties": {"text": "Subject: meter # 0989814 - gmt , inc . - 1 / 00 production\nstephanie ,\nthe problem with the january payment is that the deal is set up incorrectly\nin sitara . for january production deal 153864 shows hplc purchasing gas\nfrom gmt company inc , not gmt inc . someone needs to either correct the deal\nfor 1 / 00 or put in a new deal , then i can do an accounting arrangement to\nmake the necessary correction . it is correct for 2 / 00 on deal 156292 . i\nemailed daren on this because i see his name in sitara as the contact , but i\nam not sure who actually takes care of it .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 03 / 22 / 2000\n10 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen 03 / 20 / 2000 03 : 07 pm\nto : sherlyn schumack / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : meter # 0989814 - gmt , inc . - 1 / 00 production\nsherlyn ,\ni believe this is your meter . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu nguyen / hou / ect on 03 / 20 / 2000 03 : 05 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 03 / 18 / 2000 09 : 21 am\nto : thu nguyen / hou / ect @ ect\ncc :\nsubject : meter # 0989814 - gmt , inc . - 1 / 00 production\nthu ,\ni ' m not sure if this is your meter or not . if it is not , could you please\npass this email on to the correct person .\nfor meter # 9814 , jan . 2000 production , the volume was allocated to the wrong\ncompany . the gas was allocated to gmt company inc . , but it should have been\nallocated to gmt , inc . for feb . 2000 it is done correctly .\ni need to recoup the money from gmt company , so could you please let me know\nwhen the change has been made in the system .\nthanks for your help .\nstephanie ( 3 - 6004 )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie gomes / hou / ect on 03 / 18 / 2000\n09 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick moshou @ enron\n03 / 15 / 2000 03 : 25 pm\nto : stephanie gomes / hou / ect @ ect\ncc :\nsubject : re : gmt , inc . tillison # 1\nhere you go let me know if you need anything else .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by nick moshou / corp / enron on 03 / 15 / 2000\n03 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : george weissman @ ect 03 / 06 / 2000 10 : 34 am\nto : nick moshou / corp / enron @ enron\ncc : brian m riley / hou / ect @ ect , melissa graves / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect\nsubject : re : gmt , inc . tillison # 1\nwould you please send a note to brian riley verifying that the gmt payment\nhas gone out to the houston company ? please include the amount .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 03 / 06 / 2000\n10 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 03 / 03 / 2000 04 : 18 pm\nto : nick moshou / corp / enron @ enron\ncc : brian m riley / hou / ect @ ect , melissa graves / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect\nsubject : re : gmt , inc . tillison # 1\nnick , it appears that we paid gmt company , inc . ( ba 01474 ) of corpus christi\ninstead of gmt , inc . ( ba 75046 ) of houston . these companies are not\nrelated . we should pay the houston gmt for production at meter 098 - 9814 .\nwould you please make the necessary adjustments ? thanks .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 03 / 03 / 2000\n04 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick moshou @ enron\n03 / 03 / 2000 03 : 00 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : re : gmt , inc . tillison # 1\ni was looking in unify for last month and this invoice was finalled under the\ngmt company inc for 15975 mmbtu at meter 0989814 . the check was sent to\ntheir corpus christi address . the sitara # was 153864 . the sitara # you gave\nme is showing february as the beginning month with gmt , inc . as the payee .\ndo you know if these are different companies ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by nick moshou / corp / enron on 03 / 03 / 2000\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncynthia hakemack @ ect\n03 / 02 / 2000 04 : 07 pm\nto : nick moshou / corp / enron @ enron\ncc : george weissman / hou / ect @ ect\nsubject : re : gmt , inc . tillison # 1\nnick , can you please handle this ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cynthia hakemack / hou / ect on 03 / 02 / 2000\n03 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 03 / 02 / 2000 02 : 21 pm\nto : cynthia hakemack / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect , brian m riley / hou / ect @ ect\nsubject : re : gmt , inc . tillison # 1\ncindy , gmt has advised brian that they have not yet received payment for\nproduction at meter 098 - 9814 for the period from 1 / 14 / 2000 to 1 / 31 / 2000 .\nwould you look into this and have them paid as promptly as possible ? it\nappears that the january deal was 156292 and i believe gmt produced 15 , 984\nmmbtu in january .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 03 / 02 / 2000\n02 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 01 / 13 / 2000 09 : 11 am\nto : vicente sarmiento / gco / enron @ enron\ncc : brian m riley / hou / ect @ ect , robert d morgan / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect\nsubject : re : gmt , inc . tillison # 1\nvic , attached is a physical well connect form authorizing you to turn - on the\ngmt tillison # 1 well . we expect this production to commence either late\ntoday or tomorrow at meter 098 - 9814 .\nnathan , wo c 59605 on its way to you .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 01 / 13 / 2000\n09 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 01 / 13 / 2000 07 : 45 am\nto : brian m riley / hou / ect @ ect\ncc : robert d morgan / hou / ect @ ect , vicente sarmiento / gco / enron @ enron\nsubject : re : gmt , inc . tillison # 1\nbrian , for your information . please note robert ' s cautionary warning with\nrespect to additional wells that gmt may want to drill and add to this\nmeter . does gmt have additional drilling plans ? if so , should we alert them\nto the gas quality issue early on ?\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 01 / 13 / 2000\n07 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrobert d morgan\n01 / 12 / 2000 10 : 04 am\nto : george weissman / hou / ect @ ect\ncc :\nsubject : re : gmt , inc . tillison # 1\nalthough the gas is non - spec , the volumes and gas total inerts are low enough\nthat it can be blended okay before reaching beaumont . go for it .\nas a precaution , we are starting a trend and i want to be very cautious .\nonce we connect a well , we can ' t go backwards . please be specific with gmt\nand limit him to this one well . otherwise he could drill more wells and flow\nthem all through this new meter .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.912+0000", "entityId": 1980, "properties": {"text": "Subject: methanol plant upset\nthe methanol plant went down about 5 a . m . today . it is expected to be down\nuntil late friday , march 24 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.918+0000", "entityId": 1981, "properties": {"text": "Subject: meter 8740 dec 99\ndaren - can you set up a delivery deal for meter 8740 for jan 00 and dec .\n99 ? i checked oss and there is an 089 operational contract that took the\nswing in case the meter flows more or less than the nom . third party\ncontracts are supposed to stay whole . days 12 - 14 did not flow enough to\ncover the noms for western . we have the same problem on jan . 25 . please let\nme know , brenda herod would like this resolved today , as would i .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 22 / 2000 01 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 03 / 06 / 2000 04 : 36 pm\nto : stacey neuweiler / hou / ect @ ect\ncc : thu nguyen / hou / ect @ ect\nsubject : meter 8740 dec 99\nstacy - can you please set up a new deal for meter 8740 for dec . 99 . the\nproblem with this meter is , all third party transports should stay whole and\nhpl takes the swing . several days the meter did not flow enough and the\nthird parties did not receive all of their gas . i need a delivery set up so\nthe 3 rd parties will stay whole . if you have any questions , please let me\nknow .\nthanks .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 06 / 2000 04 : 30\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen 03 / 06 / 2000 04 : 14 pm\nto : aimee lannou / hou / ect @ ect\ncc : george grant / hou / ect @ ect\nsubject : meter 8740 dec 99\naimee ,\nwe are still having problem with this meter . from what i understand of our\nconversation a week or two ago , hpl needs to take the swing to keep the other\ncontracts whole . in the case where we have excess flow the hpl ( r ) contract\ntakes the swing . so in the case where we are short , shouldn ' t we have a hpl\n( d ) contract to take the swing ? please let me know if this will work . i\nneed to get back with settlement today . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.923+0000", "entityId": 1982, "properties": {"text": "Subject: clmp outage\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 03 / 22 / 2000\n02 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 03 / 22 / 2000 02 : 10 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : clmp outage\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 03 / 22 / 2000\n02 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngroetzingerp @ valero . com on 03 / 22 / 2000 11 : 11 : 52 am\nto : gary . w . lamphier @ enron . com\ncc : oliverd @ valero . com\nsubject : clmp outage\ngary - latest update on clear lake methanol plant outage .\n- - - - - forwarded by pete groetzinger / peusa on 03 / 22 / 2000 11 : 10 am - - - - -\ndanny oliver\nto : pete groetzinger / peusa @ peusa\n03 / 22 / 2000 cc :\n11 : 07 am subject : clmp outage\nas you are aware , we broke a shaft in the mug compressor on the methanol\nunit at clear lake on saturday march 11 th . we originally anticipated a two\nweek outage for repairs . unfortunately , due to delays in the delivery of a\ncoupling needed to finish repairs , we have extended the downtime for\nanother week . we hope to be up april 2 nd or 3 rd if all goes well .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.928+0000", "entityId": 1983, "properties": {"text": "Subject: re : meter 8740 dec 99\nrobert and i put our heads together and decided to enter the partnership\nagreement on the days in question to keep the third parties whole .\nthu - it will be reallocated in about five minutes .\nif you have any questions , please let me know .\n- aimee\ndaren j farmer\n03 / 22 / 2000 01 : 47 pm\nto : aimee lannou / hou / ect @ ect\ncc : brenda f herod / hou / ect @ ect , thu nguyen / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , megan\nparker / corp / enron @ enron\nsubject : re : meter 8740 dec 99\nwe do not have deal to enter for this . you need to look at the entire midtex\nline for each of the days that are out of balance . if we are short at katy ,\ni would think that we would be long at dewville . ( many times , our receipts\nfrom the midtex line at katy are offset by our deliveries to tufco at the\ntap . ) this should help you fix the january problem . also , for december , you\nmay need to ask pg & e where they show the delivery for western . is it at hpl\nkaty , as our records show , or is it at pge ' s another point on the midtex\nline ? in any case , we don ' t have deliveries to make . the only other remedy\nis to book the variance on the partnership imbalance .\nd\naimee lannou 03 / 22 / 2000 01 : 24 pm\nto : daren j farmer / hou / ect @ ect\ncc : brenda f herod / hou / ect @ ect , thu nguyen / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , megan\nparker / corp / enron @ enron\nsubject : meter 8740 dec 99\ndaren - can you set up a delivery deal for meter 8740 for jan 00 and dec .\n99 ? i checked oss and there is an 089 operational contract that took the\nswing in case the meter flows more or less than the nom . third party\ncontracts are supposed to stay whole . days 12 - 14 did not flow enough to\ncover the noms for western . we have the same problem on jan . 25 . please let\nme know , brenda herod would like this resolved today , as would i .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 22 / 2000 01 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 03 / 06 / 2000 04 : 36 pm\nto : stacey neuweiler / hou / ect @ ect\ncc : thu nguyen / hou / ect @ ect\nsubject : meter 8740 dec 99\nstacy - can you please set up a new deal for meter 8740 for dec . 99 . the\nproblem with this meter is , all third party transports should stay whole and\nhpl takes the swing . several days the meter did not flow enough and the\nthird parties did not receive all of their gas . i need a delivery set up so\nthe 3 rd parties will stay whole . if you have any questions , please let me\nknow .\nthanks .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 06 / 2000 04 : 30\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen 03 / 06 / 2000 04 : 14 pm\nto : aimee lannou / hou / ect @ ect\ncc : george grant / hou / ect @ ect\nsubject : meter 8740 dec 99\naimee ,\nwe are still having problem with this meter . from what i understand of our\nconversation a week or two ago , hpl needs to take the swing to keep the other\ncontracts whole . in the case where we have excess flow the hpl ( r ) contract\ntakes the swing . so in the case where we are short , shouldn ' t we have a hpl\n( d ) contract to take the swing ? please let me know if this will work . i\nneed to get back with settlement today . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.933+0000", "entityId": 1984, "properties": {"text": "Subject: deal 156071 feb 00\ndaren ,\nthis is one of the deals which you told me to zero out . unfortunately , i do\nnot allocate pgev . also , sherlyn has actualized pgev and she has the\nsupport from the pipeline for the 1746918 volume . please let me know if i\nhad missed something in our conversation . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.938+0000", "entityId": 1985, "properties": {"text": "Subject: nomination 3 / 21 / 2000\nthis is to have written record of nom on 3 / 21 / 2000 and following .\nthe nomination into eastrans is 75 , 000 mmbtu , but since\npg & e cut hpl ' s contract effective 3 / 21 / 2000 to 44 , 482 from 50 , 000 ,\nthe redeliveries will be as follows :\n44 , 482 to pg & e\n21 , 518 to mobil beaumont\n3 , 000 int o cartwheel at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.943+0000", "entityId": 1986, "properties": {"text": "Subject: new arrival ? ?\nhi out there ,\nwelllllllll ! ! !\nwhat ' s the word ?\nassume baby is here and you are all kicked back with nothing going on\n( chuckle ) .\nwhen you have time give me a call ( again chuckle )\nken\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.948+0000", "entityId": 1987, "properties": {"text": "Subject: re : new turn - ons\nthe deals are all in . meter 9827 is on deal 223423 , and meter 9828 is on\ndeal 223458 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.954+0000", "entityId": 1988, "properties": {"text": "Subject: new turn - ons\ntom ,\nproduction commenced to flow as stated below ; please create a base load\nticket in sitara based upon the following information :\ncounterparty meter no . volumes price period\nunion gas corp . 9827 3 , 000 mmbtu / d 100 % gas daily less $ 0 . 10 3 / 9 - 3 / 31\ncico oil & gas co . 9828 1 , 200 mmbtu / d 100 % gas daily less $ 0 . 095 3 / 15 - 3 / 31\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.959+0000", "entityId": 1989, "properties": {"text": "Subject: 23 rd noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 22 / 2000\n03 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 22 / 2000 01 : 56 : 36 pm\nto : ami _ chokshi @ enron . com , ggrant @ enron . com\ncc :\nsubject : 23 rd noms\n( see attached file : hpl - mar . xls )\n- hpl - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.964+0000", "entityId": 1990, "properties": {"text": "Subject: april availabilities\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 22 / 2000\n03 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 03 / 22 / 2000 01 : 51 : 48 pm\nto : ,\ncc : , , ,\n, ,\n, , ,\n, , ,\n, , ,\n, , ,\nsubject : april availabilities\nplease see the attached spreadsheet and accompanying letter . the spreadsheet\noutlines volumes available from devon energy for the month of april 2000 .\nplease note the spreadsheet has three tabs . all three tabs contain volumes\navailable for sale to enron .\nplease feel free to contact me with any questions you have .\nthanks ,\nsteve holmes\ndevon energy corporation\n( 405 ) 552 - 4665\nsteve . holmes @ dvn . com\n- enronapril 2000 noms . doc\n- enronavailso 400 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.970+0000", "entityId": 1991, "properties": {"text": "Subject: calpine daily gas nomination\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.976+0000", "entityId": 1992, "properties": {"text": "Subject: southern union\ni combined the tickets for the southern union plants at port arthur and\ngalveston for april forward to accurately reflect the contract . the new\nsitara number is 224490 , and the old numbers are : 17832 andl 09216 . this\nchange will allow for a more accurate estimate in our p & l as well as more\naccurate invoicing . i believe that this change will reduce our monthly\nvariances due to these deals . if you have any questions or concerns please\nfeel free to give me a call\nbryan\n3 - 9195", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.984+0000", "entityId": 1993, "properties": {"text": "Subject: re : deal 156071 feb 00\ndaren ,\nthere are only two deals on pgev pipeline : deal # 156071 - valid 02 / 01 / 00 -\n02 / 29 / 00 , and deal # 208083 - valid for 02 / 01 / 00 - 02 / 06 / 00 . should there be\nanother deal for days 7 - 29 ? ? thanks\nthu\ndaren j farmer\n03 / 23 / 2000 11 : 19 am\nto : thu nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 156071 feb 00\nthe actuals should be allocated to the new ticket which has been nom ' d ,\ntracked . and balanced .\nd\nfrom : thu nguyen 03 / 22 / 2000 07 : 33 pm\nto : daren j farmer / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : deal 156071 feb 00\ndaren ,\nthis is one of the deals which you told me to zero out . unfortunately , i do\nnot allocate pgev . also , sherlyn has actualized pgev and she has the\nsupport from the pipeline for the 1746918 volume . please let me know if i\nhad missed something in our conversation . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.993+0000", "entityId": 1994, "properties": {"text": "Subject: re : deal 156071 feb 00\ndaren , i will still have interconnect variance at this deal . it will be\n1191626 instead of 1746918 .\ndaren j farmer\n03 / 23 / 2000 02 : 53 pm\nto : thu nguyen / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : re : deal 156071 feb 00\nno , deal 156071 is good for days 7 - 29 .\nto : daren j farmer / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : re : deal 156071 feb 00\ndaren ,\nthere are only two deals on pgev pipeline : deal # 156071 - valid 02 / 01 / 00 -\n02 / 29 / 00 , and deal # 208083 - valid for 02 / 01 / 00 - 02 / 06 / 00 . should there be\nanother deal for days 7 - 29 ? ? thanks\nthu\ndaren j farmer\n03 / 23 / 2000 11 : 19 am\nto : thu nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 156071 feb 00\nthe actuals should be allocated to the new ticket which has been nom ' d ,\ntracked . and balanced .\nd\nfrom : thu nguyen 03 / 22 / 2000 07 : 33 pm\nto : daren j farmer / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : deal 156071 feb 00\ndaren ,\nthis is one of the deals which you told me to zero out . unfortunately , i do\nnot allocate pgev . also , sherlyn has actualized pgev and she has the\nsupport from the pipeline for the 1746918 volume . please let me know if i\nhad missed something in our conversation . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:10.999+0000", "entityId": 1995, "properties": {"text": "Subject: re : deal 156071 feb 00\ndaren ,\ni must be missing something . can i meet with you today and show you what i\nhave ?\nthu\ndaren j farmer\n03 / 23 / 2000 02 : 53 pm\nto : thu nguyen / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : re : deal 156071 feb 00\nno , deal 156071 is good for days 7 - 29 .\nto : daren j farmer / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : re : deal 156071 feb 00\ndaren ,\nthere are only two deals on pgev pipeline : deal # 156071 - valid 02 / 01 / 00 -\n02 / 29 / 00 , and deal # 208083 - valid for 02 / 01 / 00 - 02 / 06 / 00 . should there be\nanother deal for days 7 - 29 ? ? thanks\nthu\ndaren j farmer\n03 / 23 / 2000 11 : 19 am\nto : thu nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 156071 feb 00\nthe actuals should be allocated to the new ticket which has been nom ' d ,\ntracked . and balanced .\nd\nfrom : thu nguyen 03 / 22 / 2000 07 : 33 pm\nto : daren j farmer / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect\nsubject : deal 156071 feb 00\ndaren ,\nthis is one of the deals which you told me to zero out . unfortunately , i do\nnot allocate pgev . also , sherlyn has actualized pgev and she has the\nsupport from the pipeline for the 1746918 volume . please let me know if i\nhad missed something in our conversation . thanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.004+0000", "entityId": 1996, "properties": {"text": "Subject: look at this - - it ' s important ! ! ! ! !\nok ,\nhopefully this got your attention . i just wanted to confirm my vacation days\nwith you . i have april 13 , 14 and 17 , may 5 and august 10 . please let me\nknow if these are the same as on your calendar . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.010+0000", "entityId": 1997, "properties": {"text": "Subject: february , meter 9822 sanchez worthen central pt .\nhi guys , trying to clean up feb outstanding issues . looks like we should\nhave a deal with sanchez at the above referenced meter . currently , strangers\ngas is getting the flow .\ncould you let me know if this is valid or not ? settlements needs to know\nasap . seems an invoice for the gas has been received .\nthanks ! !\ncharlotte hawkins", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.015+0000", "entityId": 1998, "properties": {"text": "Subject: jake\n?\n- tech . gif\n- 3 - 21 - 00 8 ' 57 ' 27 pm . jpg\n- 3 - 21 - 00 8 ' 53 ' 26 pm . jpg\n- 3 - 21 - 00 8 ' 55 ' 03 pm . exe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.019+0000", "entityId": 1999, "properties": {"text": "Subject: april production estimate\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 03 / 23 / 2000 01 : 09\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n03 / 23 / 2000 10 : 07 am\nto : tom acton / corp / enron @ enron\ncc :\nsubject : april production estimate\ntom ,\ncheck this one out !\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.023+0000", "entityId": 2000, "properties": {"text": "Subject: re : deal 144932 ces - lila allen\nyes . i have confirmed that fw rabalais is agent for dallas ( aka sam allen ) ,\nwhich was put under lila allen ' s name . please change deal 144932 from sam\nallen to dallas exploration .\nami\nfrom : megan parker 03 / 23 / 2000 11 : 32 am\nto : julie meyers / hou / ect @ ect\ncc : ami chokshi / corp / enron @ enron\nsubject : re : deal 144932 ces - lila allen\ni looked in global and dallas exploration is in there . can we put the deal\nunder dallas exploration ? that is where is it was set up at columbia . i\nhave a letter and the gisb contract from sam allen that we are to pay dallas\nexploration .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.029+0000", "entityId": 2001, "properties": {"text": "Subject: april vacation\nplease submit your scheduled april vacation to me by the end of monday\nafternoon .\nthank you !\nyvette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.034+0000", "entityId": 2002, "properties": {"text": "Subject: nom change for champions\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 24 / 2000\n10 : 53 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 24 / 2000 10 : 48 : 30 am\nto : ami _ chokshi @ enron . com , ggrant @ enron . com\ncc :\nsubject : nom change for champions\n( see attached file : egmnom - mar . xls )\n- egmnom - mar . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.038+0000", "entityId": 2003, "properties": {"text": "Subject: february o & m reports\nfinal february budget numbers attached .\ny\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n03 / 24 / 2000 10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : jennifer blay @ ect 03 / 21 / 2000 04 : 15 pm\nto : brenda f herod / hou / ect @ ect\ncc : yvette g connevey / corp / enron @ enron\nsubject : february o & m reports\nattached are your final february o & m reports .\nplease call me with any questions .\nthank you\njennifer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.043+0000", "entityId": 2004, "properties": {"text": "Subject: williams energy marketing\ni have a request from the ena settlements group . williams energy is billing\nthe hpl purchase deals on the ena invoice . the accountant at williams says ,\nthat by the request of the hpl trader , the deals are to be billed to ena . we\nwould like to have the texas deals billed directly to hpl . if you do not\nhave a problem with this , can you ask your counterpart at williams to split\nthe deals between hpl and ena ? it would make the payment process much easier .\nthanks ,\nmegan\nx 5 - 7480", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.047+0000", "entityId": 2005, "properties": {"text": "Subject: change name on pipeline , contract no . teco 9121 , global contract no .\n96016601\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stacey neuweiler / hou / ect on 03 / 24 / 2000\n11 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarlene hilliard\n03 / 24 / 2000 11 : 04 am\nto : stacey neuweiler / hou / ect @ ect , rita wynne / hou / ect @ ect , sylvia a\ncampos / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc :\nsubject : change name on pipeline , contract no . teco 9121 , global contract no .\n96016601\nplease be advised that contract no . teco 9121 shows in the global contract\nsystem as pg & e texas pipeline , l . p . , however , the pipeline name should be\npg & e gas transmission teco , inc . . apparently , the pipeline name was entered\ninto the global system incorrectly . i have confirmed this with charles berner\nin the contracts administration section and kim watson , both with pg & e gas\ntransmission teco , inc . . the contract name should be pg & e gas transmission\nteco , inc .\ni would like to change the pipeline to reflect the correct pipeline name\neffective april 1 , 2000 . thus it will not affect the previous noms for this\ncontract .\nall please respond to let me know if this will cause problems with\nreplication or anything else with the system .\njulie and stacey , deal no . 47434 is attached to this contract you may need\nto change this in your system .\nmarlene hilliard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.052+0000", "entityId": 2006, "properties": {"text": "Subject: mtbe upset\nthe mtbe plant had an upset early today and a steam boiler is being taken out\nof service . production will be cut back to approximately 8 mbd to 9 mbd for\nfour to five days .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.057+0000", "entityId": 2007, "properties": {"text": "Subject: meoh upset\nthe earliest time production of meoh may begin is now sunday evening .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.061+0000", "entityId": 2008, "properties": {"text": "Subject: wassup - south park\n- wassupsouthparkl . exe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.066+0000", "entityId": 2009, "properties": {"text": "Subject: this week ' s woodworking tip . . . follow - up\ngood afternoon !\nno , this isn ' t a new tip - just a follow - up on the one i sent this\nmorning . i received some good responses and wanted to pass a couple of them\nalong .\nkevin wrote to say that this tip works like a charm , except for one thing :\nhe ' s had trouble with the router bit not being perfectly centered on the\nbase , so his dadoes have ended up less than perfect . i referred to this\nbriefly at the end of the tip , but here ' s a quick solution for avoiding\nthe problem .\nbefore routing the dado in the gauge , first mark a point on the base of\nyour router . ( i simply add a piece of masking tape since it ' s easy to\nsee . ) then when routing the gauge ( and later , the panel ) , always keep\nthis mark against the straightedge . your dadoes should be right on .\nanother email came in from mike , who suggested making two alignment\ngauges . then you can clamp one at each end of the workpiece before you\nclamp the straightedge fence down . this prevents the \" wiggling \" that\noften occurs when one end is clamped before the other . great tip !\na big thanks to all who have been sending in suggestions . it ' s great to\nhear that so many people are enjoying the tips .\ntalk to you again in a few weeks .\njon garbison\non - line editor\nwoodsmith\nvisit our other woodworking and home improvement sites :\n100 + woodworking plans :\nwoodsmith magazine :\nshopnotes magazine :\nworkbench magazine :\nkits , jigs , tools , project plans :\nback issues :\nwoodworking forums :\nto change your email address or resubscribe , sign up again at\nto unsubscribe , send empty email message to :\nnote : your subscribed email address is\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.071+0000", "entityId": 2010, "properties": {"text": "Subject: your membership on woodtips has been put on hold\nthis email message is to notify you that your membership to woodtips\nhas been put on \" hold \" .\nthis means that you will not receive mail from ' woodtips ' .\nyour subscription has been held because at least 1 recent messages have been\neither bounced by your email system , or could not be delivered at all .\nyour membership can be restored to \" normal \" , by sending the command \" unhold \"\nto lyris @ listserv . augusthome . com\nnote that if your email address continues to reject mail your subscription\nwill\nonce again be \" held \" .\nyou may want to contact the people responsible for your electronic mail to\ndetermine\nwhy your email address has been having trouble .\n- - - for your information , a non - delivery report is included below :\n- - -\nmessage body :\nreturn - path :\nreceived : from listserv . augusthome . com ( [ 127 . 0 . 0 . 1 ] ) by localhost with smtp\n( lyris server version 3 . 43 - apr 6 1999 10 : 07 : 17 ) ; sat , 25 mar 2000 02 : 23 : 54\n- 0600\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 152 . 140 . 66 ] )\nby listserv . augusthome . com ( 8 . 9 . 3 / 8 . 9 . 3 ) with esmtp id caa 29035\nfor ; sat , 25 mar 2000\n02 : 23 : 53 - 0600\nreceived : from dservl . ect . enron . com ( dservl . ect . enron . com [ 172 . 16 . 1 . 37 ] )\nby mailman . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / corp - 1 . 03 ) with esmtp id haa 25648\nfor ; sat , 25 mar 2000\n07 : 33 : 10 gmt\nreceived : from notes . ect . enron . com ( notes . ect . enron . com [ 172 . 16 . 4 . 33 ] )\nby dservl . ect . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 ) with smtp id baa 23447\nfor ; sat , 25 mar 2000\n01 : 33 : 52 - 0600 ( cst )\nreceived : by notes . ect . enron . com ( lotus smtp mta v 4 . 6 . 5 ( 863 . 2 5 - 20 - 1999 ) )\nid 862568 ad . 00298 c 81 ; sat , 25 mar 2000 01 : 33 : 49 - 0600\nx - lotus - fromdomain : ect\nfrom : \" ect notes admin \"\nreply - to : daren . j . farmer @ enron . com\nto : bounce - woodtips - 30771 @ listserv . augusthome . com\nmessage - id :\ndate : sat , 25 mar 2000 01 : 02 : 42 - 0600\nsubject : we are one @ enron . com !\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\ncontent - disposition : inline\nthis message is an automated response to the email you recently sent to me . i\nreceived the message but the email address you used has been changed to\ndaren . j . farmer @ enron . com .\nplease update your address book ( s ) to reflect this change .\nthis will ensure that i receive your emails in the future .\nthank you\ndaren j farmer\nplease do not reply to this message as it was automatically generated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.076+0000", "entityId": 2011, "properties": {"text": "Subject: mtbe plant upset\nthe mtbe plant will continue operating at lower production rates of\napproximately 8 mbd to 9 mbd until april 6 or 7 at the earliest . it will\npossibly be mid - april before full production can be resumed . this is the\nresult of the steam boiler problem experienced on friday , march 24 . when\nmore information is available , this will be updated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.081+0000", "entityId": 2012, "properties": {"text": "Subject: fyi\ndaren ,\nhey , sorry about not calling you last thur & fri - i was out sick . i think\nthat were going to have to play this assistance thing on a day to day basis .\ni know i will be catching up for missing those days & i need to get some\nthings in order this week for the new guy that starts next week . so i ' ll\njust have to call you when i can spare the time . sorry for any inconvenience\nthis may have caused you !\nthanks ,\nkyle", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.086+0000", "entityId": 2013, "properties": {"text": "Subject: jan & feb midcon invoices\npat dresner ( accountant ) at midcon texas says she does not show these deals\nin her system and she can not pay on them . you created the deals in sitara\nand i don ' t have another trader ' s name . could you please talk to your kn\ntrader regarding this situation ? if midcon really got this gas , then someone\nat kn should tell their accountant about the deal .\nprod mo . entity point volume total amount sitara #\n1 / 2000 midcon texas gas services corp . 0984132 20000 $ 51 , 600 . 00 157006\n2 / 2000 midcon texas gas services 0984132 36000 $ 90 , 900 . 00 166523\n2 / 2000 midcon texas pipeline corp . 0984132 80 , 000 $ 206 , 800 . 00 170133\nplease let me know as soon as possible what you find out . the 2 / 2000\nproduction invoices are due to be paid 3 / 27 .\nthank you ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.094+0000", "entityId": 2014, "properties": {"text": "Subject: re : storage deal 47472 and 60747\njulie :\ncan you cut off deal 47472 going forward ? i am forwarding the message from\ntommy yanowski . let me know if this is a problem .\nthanks , karie ( 36759 )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karie hastings / hou / ect on 03 / 27 / 2000\n09 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : tommy j yanowski 03 / 27 / 2000 08 : 45 am\nto : karie hastings / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect\nsubject : re : storage deal 47472 and 60747\nkarie : deal number 60747 should be the good deal . deal number 60747 is an\ninterruptible storage deal and contract 96016959 is an interruptible\ncontract . storage deal 47472 is a firm storage deal . since it doesn ' t agree\nwith the firmness of the contract , i would probably cut off that deal going\nforward . - tommy\nkarie hastings\n03 / 23 / 2000 05 : 35 pm\nto : tommy j yanowski / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc :\nsubject : storage deal 47472 and 60747\ntommy :\nthere are two storage deals that are using the same contract number . julie\nmeyers believes that deal 47472 is the correct deal , but wants to check with\nyou first since you put in deal 60747 . let me know when you look at them if\nwe need to cut off or kill deal 60747 .\nthanks ,\nkarie ( 36759 )\ndeal contract\n47472 96016959\n60747 96046959", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.100+0000", "entityId": 2015, "properties": {"text": "Subject: analyst hiring needs\nplease read the attached and provide shelley the requested information if you\nhave needs for a new analyst or summer intern ! ! i am requesting a new intern\nfor risk .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 03 / 27 / 2000\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshelly jones\n03 / 10 / 2000 10 : 18 am\nto : scott affelt / hou / ect @ ect , kristin albrecht / hou / ect @ ect , brad\nalford / ecp / hou / ect @ ect , stephen barth / enron communications @ enron\ncommunications , edward d baughman / hou / ect @ ect , angeles beltri / hou / ect @ ect ,\ndennis benevides / hou / ees @ ees , patricia bloom / hou / ect @ ect , david\nbowers / hou / azurix @ azurix , boris brevnov / enron communications @ enron\ncommunications , suzanne brown / hou / ect @ ect , rick l carson / hou / ect @ ect , brad\ncoleman / hou / ect @ ect , mark confer / hou / ect @ ect , lisa b cousino / hou / ect @ ect ,\ndavid cox / enron communications @ enron communications , matt culver / hou / ees @ ees ,\ngregg curran / ca / enron @ enron , paul devries / tor / ect @ ect , janet r\ndietrich / hou / ect @ ect , richard dimichele / enron communications @ enron\ncommunications , jon doyle / enron communications @ enron communications , scott\nearnest / hou / ect @ ect , brent edwards / hou / ees @ ees , mark evans / lon / ect @ ect , james\nb fallon / hou / ect @ ect , mark friedman / hou / ect @ ect , kevin garland / enron\ncommunications @ enron communications , jeffrey r golden / hou / ect @ ect , amita\ngosalia / lon / ect @ ect , jeffrey c gossett / hou / ect @ ect , d todd hall / hou / ect @ ect ,\npatrick haye / hou / ees @ ees , christopher a helfrich / hou / ect @ ect , todd\nhenne / enron communications @ enron communications , brenda f herod / hou / ect @ ect ,\njoseph p hirl / enron _ development @ enron _ development , stephen r\nhorn / hou / ect @ ect , l ' sheryl hudson / hou / ect @ ect , gene humphrey / hou / ect @ ect ,\ngeorge wasaff / enron _ development @ enron _ development , robert hurt / hou / ees @ ees ,\nclaudia johnson / enron communications @ enron communications , bennett\nkaufman / hou / ect @ ect , katherine l kelly / hou / ect @ ect , kelly williams / enron\ncommunications @ enron communications , karry kendall / hou / ect @ ect , jeff\nkinneman / hou / ect @ ect , bob klein / hou / ect @ ect , kara knop / enron\ncommunications @ enron communications , michael kopper / hou / ect @ ect , zlatica\nkraljevic / enron _ development @ enron _ development , biren kumar / hou / ees @ ees , larry\nlawyer / enron communications @ enron communications , mark lay / hou / ect @ ect ,\nkenneth lee / hou / ees @ ees , richard leibert / enron _ development @ enron _ development ,\nbilly lemmons / corp / enron @ enron , james w lewis / hou / ees @ ees , tod lindholm / enron\ncommunications @ enron communications , randal t maffett / hou / ect @ ect , kelly\nmahmoud / hou / ect @ ect , j mark metts / hou / ect @ ect , rebecca\nmiles / corp / enron @ enron , michael miller / hou / ect @ ect , yvette\nmiroballi / hou / ect @ ect , michael e moscoso / hou / ect @ ect , thomas\nmyers / hou / ect @ ect , thuy nguyen / corp / enron @ enron , john l nowlan / hou / ect @ ect ,\nlou l pai / hou / ees @ ees , jose perez - bello / enron _ development @ enron _ development ,\nterri peschka / enron @ gateway , jody pierce / hou / ect @ ect , cathy\npittenger / hou / ees @ ees , lisa polk / hou / ees @ ees , scott\nporter / enron _ development @ enron _ development , kevin prior / hou / ees @ ees , murthy h\nrao / hou / ees @ ees , brad richter / hou / ect @ ect , mark ruane / hou / ect @ ect , victor\nsantos / enron _ development @ enron _ development , steve schneider / hou / ect @ ect ,\nvijay sethu / enron _ development @ enron _ development , jeffrey a\nshankman / hou / ect @ ect , david shields / enron _ development @ enron _ development ,\nrobert shring / hou / ect @ ect , michael smythe / enron communications @ enron\ncommunications , karen snow / hou / ect @ ect , mary solmonson / hou / ect @ ect , jefferson\nd sorenson / hou / ect @ ect , christine straatmann / hou / ees @ ees , sheri\nthomas / hou / ect @ ect , jon thomsen / enron communications @ enron communications ,\nravi thuraisingham / enron communications @ enron communications , steve\nventuratos / hou / ect @ ect , john wack / hou / ees @ ees , kristin walsh / hou / ect @ ect\ncc : sally beck / hou / ect @ ect\nsubject : analyst hiring needs\nin an effort to meet the staffing requirements of the business units , this is\na request for information regarding your full - time and summer analyst hiring\nneeds . the summer analysts will start may 22 , 2000 and june 5 , 2000 . the\nlength of the internship is approximately 12 weeks . full - time analysts will\nstart on july 17 , 2000 . we have a talented group of people coming in and i\nwill be happy to meet with you to coordinate your staffing needs .\nin your response , please state your preferences :\n* full - time and / or summer\n* head count\n* skill sets required\n* overview of job description\nonce your response has been received by the associate / analyst department ,\nresumes will be forwarded to you for review .\nthank you\nshelly jones\nmanager , analyst recruiting", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.105+0000", "entityId": 2016, "properties": {"text": "Subject: exxonmobil beaumont refinery fuel needs\nfyi - you will need to enter this into sitara - remember , first 10 , 000 / d is\neog transport .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 03 / 27 / 2000\n10 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" brian e nichols \" on 03 / 24 / 2000 02 : 20 : 27 pm\nto : lpapayo @ ect . enron . com\ncc : ( bcc : lee l papayoti / hou / ect )\nsubject : exxonmobil beaumont refinery fuel needs\nlee ,\ni did my fuel gas estimate and think that we will need 120 - 125 bbtu / day of\nfuel\ngas for the month of april . on a side note , we will bring down our gas\nturbine\ngenerator on sunday morning . this will bring our high pressure gas\nrequirements\ndown to essentially zero ( it will be zero if our hydrogen plant stays down )\nand\nthe demand will transfer to our low pressure gas . we will be in this\narrangement for approximately 20 days .\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.110+0000", "entityId": 2017, "properties": {"text": "Subject: new pan energy exchange deal meeting\ndaren ,\nplease let me know when you have time to meet with megan and i on this new\nexchange deal .\nprior to settling feb . 2000 production , there are a few issue that we need to\nhave clarified on both the sales and supply side ,\nthanks ,\nkatherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.115+0000", "entityId": 2018, "properties": {"text": "Subject: re : deer park railroad crossing 18 \" 3026 line\nthe following meters are in the affected section for the outage planned in\napril :\n980713 georgia gulf\n981052 phillips pasadena\n981188 albemarle\n981418 air products pasadena\n988014 crown refinery\n981061 shell west station\n982034 crown st . city gate\nthe only meters we are flowing at for march are the two listed in the memo\nbelow ( 1188 albemarle , 1418 air products pasadena ) . we will not be able to\nfeed these from hpl during the outage .\ni will update you as things change .\nthanks\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 03 / 27 / 2000 03 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwilliam d cosby @ enron\n03 / 24 / 2000 02 : 39 pm\nsent by : william d cosby @ enron\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : re : deer park railroad crossing 18 \" 3026 line\ngary , mainline valves to be closed on the 18 \" 3026 line are as follows :\nu - 5 at crown street and u - 6 at the end of the line where ship channel loop\n3026 line ties into the shell west 4792 line .\nit is my understanding that the following customers within this outage\nsection currently take gas :\nair products meter 1418\nalbemarle meter 1188\nthe current schedule would call for an outage to start on 4 / 13 / 00 and be back\nin service on 4 / 16 / 00 .\nfrom : gary a hanks @ ect 03 / 20 / 2000 10 : 36 am\nto : william d cosby / gco / enron @ enron\ncc :\nsubject : deer park railroad crossing 18 \" 3026 line\nwhich mainline valves will be closed during the work and can you send me a\nlist of the meters in the affected section ? i need to get with the texas\ndesk prior to their pre - bid meeting which is this friday , march 24 .\nbased on the changes , it still appears to me the work is planned for the last\nweek in april . as a date becomes firm please let me know .\nthanks\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 03 / 20 / 2000 10 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwilliam d cosby @ enron\n03 / 16 / 2000 10 : 28 am\nsent by : william d cosby @ enron\nto : gary a hanks / hou / ect @ ect\ncc : team hpl - pearland / gco / enron @ enron , buck thomas / gco / enron @ enron , sam\nshaw / gco / enron @ enron , pat flavin / gco / enron @ enron , nick\ncocavessis / corp / enron @ enron , steve schneider / hou / ect @ ect , kevin\nkuehler / corp / enron @ enron , calvin dodd / gco / enron @ enron , charlie\nthompson / gco / enron @ enron , ann elizabeth white / hou / ect @ ect , james\nmckay / hou / ect @ ect , don thomas / gco / enron @ enron\nsubject : deer park railroad crossing 18 \" 3026 line\nthe pipeline outage time mentioned in the memo below needs to be revised .\nactual construction time should be 7 days and pipeline outage time should be\n3 days max . this outage time , which is longer than the norm , is due to the\nfact that we will have to remove the existing line and replace it in the same\nditch before tie ins take place .\nas an update , the first train is now scheduled to cross late today . they now\nsay that it may take 4 weeks to get all the trains in and out before we are\nable to begin replacing our line .\n- - - - - - - - - - - - - - -\ni have been advised by the deer park rr representative , dean truitt , that\nthe rail cars will begin arriving on 3 / 15 / 00 .\nper our conversations today , please have someone on tuesday 3 / 13 adjust the\nregulators at simpson and at shell deer park so that 280 psig is the maximum\npressure in that pipeline section .\ni will maintain contact with deer park on the duration of this project and\nkeep you informed . it is likely that the duration of the pressure reduction\nwill be on the order of 2 weeks .\nafter the initial 700 rail cars have entered and exited their facility , deer\npark will remove their railroad bed and allow us to perform a pipeline\nreplacement at that location . this replacement would involve an outage on\nthis segment of pipeline for approximately 7 days . i would anticipate that\nthis outage would occur in early april .\nthanks for your cooperation in this matter .\ndanny", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.119+0000", "entityId": 2019, "properties": {"text": "Subject: natural gas nomination for 04 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for april 2000 :\n34 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for april 2000 :\n9 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.124+0000", "entityId": 2020, "properties": {"text": "Subject: meoh upsets\nthe methanol plant is up and making spec product . rates will be increased to\nfull rates on thursday , march 30 , if oxygen is available .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.129+0000", "entityId": 2021, "properties": {"text": "Subject: nominations for rest of april 1\neffective 4 / 1 / 2000 :\nnomination into eastrans of 75 , 000 mmbtu / d .\nredeliveries :\n50 , 000 mmbtu / d into pg & e\n7 , 800 from fuels cotton valley\n17 , 200 to hpl at carthage\ncurrently , since 3 / 22 / 2000 , we have been at 75 , 000\nwith the following redeliveries :\n43 , 482 mmbtu / d into pg & e\n7 , 000 from fuels cotton valley\n3 , 000 into hpl cartwheel\n21 , 518 to mobil beaumont\ni previously showed 44 , 382 mmbtu / d since 3 / 22 . is 43 , 482 right ?\nthere is no change in deliveries and redeliveries for tomorrow , but\ncould someone clarify what the nominations are on the redelivery side ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.134+0000", "entityId": 2022, "properties": {"text": "Subject: hpl nom for march 28 , 2000\n( see attached file : hplo 328 . xls )\n- hplo 328 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.139+0000", "entityId": 2023, "properties": {"text": "Subject: potential list for april , 2000\nthe following is a list of potential activity for april 2000 . not all ( if\nany ) will begin by april lst .\nthis information is not in the production estimate provided by vance .\ncostilla freeman # 5 meter 9734 5 , 000 mcf / d gas daily applicable\ngas solutions longview plant meter unknown 500 mcf / d gas daily applicable\ngarrison stiles # 1 and # 2 meter 9656 500 mcf / d gas daily applicable\nhilcorp - sale old ocean plant meter unk . 15 , 000 mcf / d 3 month sale\nhelmrich holloway gas unit # 2 meter unknown 10 , 000 mcf / d gas daily applicable\nplease let me know if you have any questions ,\nthank you ,\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.144+0000", "entityId": 2024, "properties": {"text": "Subject: april lst noms . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 27 / 2000\n03 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 03 / 27 / 2000 02 : 48 : 50 pm\nto : ami _ chokshi @ enron . com\ncc :\nsubject : april lst noms . . .\n( see attached file : hpl - apr . xls )\n- hpl - apr . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.148+0000", "entityId": 2025, "properties": {"text": "Subject: hunt petroleum\nmegan : all price changes regarding ces texas should be filtered through me\nand / or the texas economics desk ( bryan hull or o ' neal winfree ) .\no ' neal / bryan : can we look into these co - owner deals to ensure accurate\npricing and risk assignment ?\nthanks ,\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 27 / 2000\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njulie meyers @ ect\n03 / 27 / 2000 09 : 05 am\nto : megan parker / corp / enron @ enron\ncc : ami chokshi / corp / enron @ enron , bryan hull / hou / ect @ ect\nsubject : hunt petroleum\nmegan : done\nami : you might want to have a look at the ces deals . here is another one\nwhere the price is not right .\nbryan : i have only changed january and february . please look at the future\nmonths and change them .\nthanks ! !\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 03 / 27 / 2000 09 : 04\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 03 / 24 / 2000 01 : 40 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : hunt petroleum\ni think the price needs to be changed on deal 141977 for ces - hunt petroleum .\nit should be hsc - 0 . 10 . i need this asap .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.153+0000", "entityId": 2026, "properties": {"text": "Subject: pg & e texas contract 5095 - 037 for 2 / 00\nkyle and greg this issue is still unresolved as well as a 6 , 000 variance on\ncontract 5098 - 695 . i have provided stacey with the daily allocation from\npg & e texas . on friday she told me she did have an answer yet , and she could\nnot give me a time frame of when she would be able to get to it . she said\nwe have to understand their staff is short , and if anyone has any questions\nto call her or daren direct . at this time i still do not have an answer , but\nwill let you know as soon as i do .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 03 / 28 / 2000\n09 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 03 / 22 / 2000 10 : 05 am\nto : stacey neuweiler / hou / ect @ ect\ncc :\nsubject : pg & e texas contract 5095 - 037 for 2 / 00\nstacey ,\nthe actuals on this contract did not come in as scheduled . the scheduled\ndeliveries at texoma are 374 , 503 , but the actuals are 352 , 568 . at teco waha\ndelivery you have 359 , 120 scheduled , but the actuals are 368 , 115 . i don ' t\nknow what numbers you confirmed with pg & e texas , so can you let me know first\nif you agree with pg & e texas numbers and if you do , will you please make the\nnecessary changes in unify .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.157+0000", "entityId": 2027, "properties": {"text": "Subject: new locations\nthe following listing reflects your new enron office locations . please\nremember to properly label all boxes ,\nchairs , mouses , keyboards , cpu ' s , monitors , stenophones , amtels and / or palm\npilot stations .\ni will be here both saturday and sunday to ensure that your items have been\nmoved and pc ' s are working efficiently .\nlauri allen 3212 a\neric bass 3212 c\nami chokshi 3213 e\ndaren farmer 3210 e\ncraig falbaum 3210 f\nedward gottlob 3212 b\nbrenda herod 3213 c\ngary lamphier 3213 a\nbarbara lewis 3214 c\ntom martin 3211 c\ngreg mcclendon 3211 a\njames mckay 3213 b\ncarey metz 3211 d\nstacey neuweiler 3209 e\njennifer sabine 3206 a\njim schwieger 3211 b\nelsa villarreal 3211 e\njanet wallis 3213 d\ngas control 3209 f\nsunny rodgers : i will notify you of our exact mailstop location asap .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.162+0000", "entityId": 2028, "properties": {"text": "Subject: unify close schedule\nthe following is our tentative close schedule for this coming month . please\nkeep in the mind the following key times . . . .\nunify to sitara bridge back 1 : 45 p . m . friday , march 31 st ( all errors must be\nclear by this time )\nmass draft at 6 p . m . friday evening .\naccrual process begins monday , april 3 rd at 6 a . m .\nif you have any changes to this timeline , please ensure that i am contacted\nas soon as possible .\nthank you ,\nmelissa x 35615", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.166+0000", "entityId": 2029, "properties": {"text": "Subject: re : tejas deliveries at oasis katy\nlauri ,\ni ' ve just completed this process ( thanks to\ncarlos ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . sorry it took soooooooooooooo long but\nthe next time should be a doozie .\nthanks carlos\n- jackie -\nlauri a allen\n03 / 21 / 2000 11 : 19 am\nto : carlos j rodriguez / hou / ect @ ect , jackie young / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , tom\nacton / corp / enron @ enron\nsubject : tejas deliveries at oasis katy\non tuesday , march 7 th , tejas took gas from us at oasis katy and gave it back\nto us at tejas laporte to help us out during an outage for $ . 02 / mmbtu . this\ntransaction has not been scheduled correctly . there are two deal tickets in\nsitara to cover the oasis portion of the deal : # 213145 covers ena selling\nthe gas to hplc for hplc to transport on tejas . deal # 213370 covers the\ntransport usage on tejas from oasis katy to laporte . i have edited this\nticket to add the $ . 02 / mm charge . there needs to be a tejas expense contract\nat laporte , # 665 , to cover the approx . 25 , 000 mm received there on the 7 th .\nthese volumes are currently sitting on the laporte oba .\njackie - if you would work with carlos he should be able to walk you through\ngetting this scheduled correctly in all systems .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.171+0000", "entityId": 2030, "properties": {"text": "Subject: midlothian first nominations\njennifer / carey / darren / stacey\nas i mentioned earlier , lisa hassold ( pg & e ) clarified that the pg & e delivery\npoint # 00534580 is for the maypearl interconnect with lone star pipeline\n( rather than the other pg & e ntp 36 - inch interconnect at maypearl with\ntufco ' s old ocean line ) .\nagain , thank you all for your help in the first nominations ( lone star north\nline and lone star south line ) that midlothian energy limited partnership ,\nas limited agent for abb asltom power inc , has made for testing purposes at\nthe midlothian power plant .\nthanks\ntrey christensen\nps attached fyi is a powerpoint slide on the midlothian gas pipeline and\nmeter station layout\n>\n- . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.176+0000", "entityId": 2031, "properties": {"text": "Subject: panenergy marketing exchange deal\nsitara # 157288\ncould you pls . have the rate for the following point adjusted ?\nthe following point should be adjusted to reflect a price of $ 2 . 52 , per the\ncontract .\npipe : pgev\npoint : ( carthage / pgev )\nsitara / unify rate : $ 2 . 53 ( hsc , idx - . 05 )\ncontract rate : $ 2 . 52 ( hsc , idx - . 06 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.180+0000", "entityId": 2032, "properties": {"text": "Subject: april spot tickets\nfyi i ' m putting these tickets in now .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 03 / 28 / 2000 01 : 42\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n03 / 28 / 2000 01 : 40 pm\nto : tom acton / corp / enron @ enron\ncc : carlos j rodriguez / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , julie meyers / hou / ect @ ect\nsubject : april spot tickets\ntom ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of april . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price\nengage energy us , lp 5839 598 mmbtu / d 100 % if / hsc less $ 0 . 20\nengage energy us , lp 5848 285 mmbtu / d 100 % if / hsc less $ 0 . 20\nengage energy us , lp 5923 671 mmbtu / d 100 % if / hsc less $ 0 . 20\nengage energy us , lp 6801 1 , 157 mmbtu / d 100 % if / hsc less $ 0 . 20\nel sordo gathering 6315 103 mmbtu / d 70 % if / hsc\nswift energy 2630 21 mmbtu / d 90 % if / hsc less $ 0 . 258\neex corporation 6500 1 , 778 mmbtu / d 95 % if / hsc\neex corporation 5999 8 , 648 mmbtu / d 95 % if / hsc\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.187+0000", "entityId": 2033, "properties": {"text": "Subject: mtbe upsets\nthe mtbe plant has determined full production can be attained sooner than\ntheir first forecast . production at the mtbe plant remains approximately 9\nmbd today and tomorrow , then 11 mbd on thursday , march 30 , and 13 . 7 mbd\nstarting friday , march 31 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.195+0000", "entityId": 2034, "properties": {"text": "Subject: updates for april\nhere is the updated version", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.202+0000", "entityId": 2035, "properties": {"text": "Subject: re : teco gas processing company\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 03 / 28 / 2000\n03 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary m smith\n04 / 26 / 99 04 : 53 pm\nto : hank eisenhour\ncc : george weissman / hou / ect @ ect , eric wardle / hou / ect @ ect\nsubject : re : teco gas processing company\nis there still a problem with this ? we need hplc to nominate for 1 / 99\nforward at meter no . 6884 . please let me know the status . thanks , mary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary m smith / hou / ect on 04 / 26 / 99 04 : 49 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ngregory allen jackson\n04 / 26 / 99 02 : 22 pm\nto : hank eisenhour / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect , george weissman / hou / ect @ ect\nsubject : re : teco gas processing company\ni ' m not sure what ' s going on , but i did not see a teco deal ticket in mops\nfor houston pipeline company anywhere ( january 1999 to march 1999 ) . i did\nsee one on houston pipeline company resources .\nas my original note stated , i think this is a buy / sell which means that teco\ngas processing should appear in both the market and supply depending on\nhplc ' s position .\nplease let me know something asap .\n3 - 9768\nmary m smith\n04 / 12 / 99 12 : 39 pm\nto : george weissman / hou / ect @ ect , hank eisenhour\ncc : gregory allen jackson / hou / ect @ ect\nsubject : teco gas processing company\nthe sitara deal needs to reflect 3 / 99 forward . 1 / 99 and 2 / 99 was done .\nthanks , mary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary m smith / hou / ect on 04 / 12 / 99 12 : 37 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ngregory allen jackson\n04 / 12 / 99 09 : 44 am\nto : jennifer meador / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect , theresa r kotrla / hou / ect @ ect , gary w\nlamphier / hou / ect @ ect , sabrae zajac / hou / ect @ ect\nsubject : teco gas processing company\nmary , this is the message i left a voice mail concerning . in addition to the\nother producer at this meter , the following needs to be setup :\npops hplc transport delivery 12 - 41500 - 203 done ( there )\nmops hplc sale to teco gp 12 - 86978 - 101 needed ( think this is buy / sell\narrangement ) ; no deal ticket .\ngary lamphier is looking into the exxon jack creek receipt flow at meter 6884\n- make final determination on whether it ' s either hplr or hplc . the deal\nsetup in pops and mops as hplr .\nsummary :\nneed hplc sale to teco related to transportation delivery in pops .\nfinal determination on whether the current hplr purchase from teco at exxon\njack creek is correct or should hplc be purchasing from teco - starting in\nfebruary 1999 business .\nthanks for you help , 3 - 9768\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gregory allen jackson / hou / ect on 04 / 12 / 99\n09 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : george weissman 04 / 09 / 99 04 : 22 pm\nto : gregory allen jackson / hou / ect @ ect\ncc : greg brazaitis / hou / ect @ ect , jim coffey / hou / ect @ ect\nsubject : teco gas processing company\nre the teco contract at 6884 ( 2 / 24 / 99 ) :\nto : george weissman / hou / ect @ ect , mary jo johnson / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , nidia a martinez / hou / ect @ ect , alexia\ngonzales / hou / ect @ ect , sean j smith / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : gt # : 1917 - teco gas processing co . and houston pipe line company\ni am forwarding a copy of the committed reserves agreement ( first purchaser )\ncontract for your information . contract date : 12 / 01 / 98 , global number :\n96019500 , and synergi number : 012 - 86978 - 101 .\nplease give me a call if you have any questions .\nthanks ,\ndaniel\n- - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 04 / 09 / 99 04 : 16 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : george weissman 01 / 27 / 99 06 : 01 pm\nto : vance l taylor / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect , ann elizabeth white / hou / ect @ ect , jim\ncoffey / hou / ect @ ect , greg brazaitis / hou / ect @ ect\nsubject : teco gas processing company\nmelissa ' s second sentence refers to the teco gas processing company 12 / 1 / 98\ncontract covering meters 6884 and 419 . this contract was obtained in\nconnection with the seven oaks / turpentine lease line renewal , and it doesn ' t\nappear to have hit the system . please ensure that the contract is set up and\nfiled .\ngeorge\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 01 / 27 / 99 05 : 47\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : melissa graves 01 / 24 / 99 04 : 03 pm\nto : george weissman / hou / ect @ ect\ncc : amelia alland / hou / ect @ ect , daniel verastegui / hou / ect @ ect\nsubject : swift energy company , meter 2630 , 012 - 86150 - 103\ngeorge ,\nat the 9 th workday meeting you had asked if we had seen the paper on the\nabove referenced . i have checked our database , and it appears that we have\nnot . the contract in the system does reflect at gs at this point .\ni also checked on teco gas processing company , and it does not appear we have\nseen the paper on this one either .\nthank you ,\nmelissa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.207+0000", "entityId": 2036, "properties": {"text": "Subject: fw : 3 rd rev mar . 2000 josey ranch nom\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 28 / 2000\n03 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 28 / 2000 03 : 49 : 29 pm\nto : \" susan trevino ( e - mail ) \"\ncc :\nsubject : fw : 3 rd rev mar . 2000 josey ranch nom\nsorry about leaving you off the \" send list \" . . . i inadvertently put smith\ninstead of trevino . . . pops !\nthis change is for the last two days of the month of march ( i am sending a\nday earlier than normal deadline because i ' m getting covered up with april ! )\nbob withers > > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.212+0000", "entityId": 2037, "properties": {"text": "Subject: panenergy marketing company\nbecause of a timing issue with client services , i have fixed deal 157288 ,\nseparating the carthage meter to a new ticket . that ticket is 229758 . the\nprice for the carthage is suppose to be if hsc - . 06 .\nstacy : i will need feb pathed asap so volume mgmt can get the volumes\nmoved . client services needs to get this invoice out today .\nthis problem , among others with this exchange deal , is currently we have a\nmassive a / r issue and we ' re trying to get this cleanup before end of month .\nif you have any questions , please feel free to call me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.216+0000", "entityId": 2038, "properties": {"text": "Subject: during / after hours contact information\nhere are lisa maillet and my contact information . would one of you over the\nnext few days email back with the correct contact information ( business hour\nand after hours ) so we can have on hand in preparation for gas flows .\nthanks\ntrey\nlisa maillet\nwork # 508 - 786 - 7205\nhome # 781 - 894 - 4465\nmobile # 508 - 326 - 2435\ntrey christensen\nwork # 713 - 613 - 4396\nhome # 713 - 668 - 0488\npager # 800 - 759 - 7243 pin # 2377872\nmobile # 713 - 416 - 3014", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.221+0000", "entityId": 2039, "properties": {"text": "Subject: fyi - new product on eol\njust so everyone is on the same page :\nbased on jennifer and dale ' s discussions with eric bass , a new \" tokenized\nperiod \" will be set up in eol . the intent of this period ( quick overview ) is\nto allow for gas flow monday through friday and no flow on the weekends .\nthis will generally be traded for in full month or rest of the month\nincrements .\nit is my understanding the although the trade can be conveyed correctly to\nthe customer and priced accordingly using eol , the trade itself ( with\nmultiple monday - friday , no flow during weekend periods ) cannot be handled\ninternally by eol . just as eol is not able to handle this trade , the sitara\nbridge from eol cannot handle this trade . because of this , there should be\nheighten attention by trade capture given to the eol bridge monitor . these\ntrades will error out and will have to be entered manually .\nan effort needs to be evaluated and prioritized by both applications ( eol and\nsitara ) on how a deal with multi - periods can flow without human\nintervention . this has not been started . in the meantime , a deal of this\nnature will have to be entered manually .\nhow do i know that a particular deal has multi - period flow ? once the eol\nproduct has been set up , jennifer and / or dale will let all involved know .\nthe person ( s ) responsible for entering the deal will have to understand what\nis meant by the eol product ' s delivery period and enter the deal\naccordingly .\nfor example , assume that a deal has been traded for april :\nfour delivery periods ( separate lines ) should be included in the sitara\nticket\nstart : 04 / 03 stop : 04 / 07\n04 / 10 04 / 14\n04 / 17 04 / 21\n04 / 24 04 / 28\neach delivery period ( line ) should have the same pricing\nremember to enter the eol deal number when creating the sitara trade .\nalso remember that paths created in unify assume the stop date is open\nended . every effort needs to be made to make sure the appropriate end date\nis on the path ; otherwise\nthe number of reconciling items will increase .\nplease forward this information to anyone else you think might be impacted .\nany concerns , please contact sheri thomas or myself .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.226+0000", "entityId": 2040, "properties": {"text": "Subject: iwon member news : iwon tv show , new year of prizes , more !\ndear daren farmer ,\nwe ' ve just made two major announcements !\nwe will be awarding our $ 10 million annual grand prize , our\nmarch $ 1 million prize , a mercedes convertible and a trip for\nfour to maui plus $ 25 , 000 spending money during our very own\nnetwork tv show !\nthe first - ever \" iwon . com annual $ 10 million giveaway \" airs\napril 15 th , from 8 : 00 - 8 : 30 pm et / pt , on the cbs television network .\nget all the latest show news at :\nwe ' re launching a new , bigger and better yearlong sweepstakes\nstarting april lst ! what makes it bigger and better ? we ' re\nadding 30 - that ' s right , thirty - $ 1 , 000 cash prizes as part\nof our new weekly prize club , while continuing our $ 10 , 000 daily ,\n$ 1 million monthly and $ 10 million annual sweepstakes . iwon\njust keeps getting better !\nto learn more about our new prize structure and automatically be\nentered into our march bonus $ 20 , 000 sweepstakes , click here :\nclick here for the official march bonus $ 20 , 000 sweepstakes rules :\n\" my iwon \" - all your personalized info on just one page !\npersonalize your \" my iwon \" page and you can enjoy all this at a glance :\n? expanded news headlines ( add up to 16 categories ! )\n? local weather conditions ( now with more forecast information than ever ! )\n? sports scores ( with easy access to new associated press coverage ! )\n? daily horoscope ( featuring a new dating guide and more - one click away ! )\n? lottery results , stock updates , favorite links and more !\nmake \" my iwon \" all yours at :\nplay free games and win big prizes at prizecentral . com !\nchoose from 15 games from solitaire to slots . earn tokens , and\nredeem for your choice of over $ 300 , 000 in monthly prizes like\ncash , dvd players , diamond earrings , toys , vacations and much more .\neveryone wins at prize central . prizes start at only 5 tokens .\nclick here now to play for free !\nintroducing the new iwon tax center !\napril 17 th is coming - have you done your taxes yet ? we have all\nthe advice , tips and online forms you need , plus a withholding\ncalculator , tax estimator and more !\nvisit the tax center at :\ngood luck and have fun !\ngeorge nimeh\nvice president\ncommunity and member services\niwon . com http : / / www . iwon . com why wouldn ' t you ?\nneed help ?\nif you have any questions about the iwon service , please\nvisit our online help center .\nvisit iwon help at :\nyou received this newsletter because when you registered at\niwon . com , you indicated that you wished to receive email from\nus about new features , events and special offers .\nwe hope you found this newsletter useful . however , if you ' d\nlike your name taken off the mailing list , you can update\nyour preferences by changing your member profile .\nto update your member profile , go to the iwon homepage and\nclick on \" my profile \" which is located at the bottom of the\npage . ( if you ' re not signed - in , you will need to do so before\nyou can update your profile . ) from your member profile page ,\nyou can change your email preferences .\nupdate your profile at :\nno purchase necessary to enter the iwon sweepstakes or march\n$ 20 , 000 bonus sweepstakes . void where prohibited . promotions\nopen to u . s . residents 18 or older . odds depend on number of\nentries . promotions end 4 / 1 / 00 .\nemail distribution services for iwon . com provided by\ndartmail .\n* # * dfarmer @ ect . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.231+0000", "entityId": 2041, "properties": {"text": "Subject: @ ect . enron . com email notification !\nwe are one @ enron . com !\nplease be aware of the following senders were automatically notified to ( a ) .\nstop sending internet mail to your @ ect . enron . com address and to ( b ) . send\nfuture internet communications to daren . j . farmer @ enron . com :\niwon - inv @ hotel . opt - inemail . com\nreminder :\nyour @ ect . enron . com address should not be used any longer and will be\ndeactivated soon . so please make sure these contacts switch to your new\n@ enron . com address . if you have subscribed to mailing lists , please make\nsure to update your addresses there as well .\nand\nyour shortname @ enron . com address ( i . e . jsmith @ enron . com ) will continue to\nwork , even though your formal address is longname @ enron . com ( i . e .\njohn . smith @ enron . com )\nplease do not reply to this message as it was automatically generated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.235+0000", "entityId": 2042, "properties": {"text": "Subject: april golf specials ! !\nwelcome & enjoy kingwood cove golf specials . please take advantage of the\nspecial offers . you will receive notices weekly or bi - weekly . if you no\nlonger wish to receive these messages , simply reply with your request .\nkeep it in the fairway .\n* * april e - mail specials * *\ncustomer appreciation day\nfree green fees - every tuesday - after 11 am\ngolf invitaion good for up to 4 players\ncart rental required .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or tournaments . expires 04 / 15 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\nor\nmillennium special offer\nmonday & wednesday - anytime $ 22 per player\nfriday , saturday , sunday & holidays\nafter 11 am $ 30 per player\ngolf invitation good for up to 4 players .\nrecieve 1 / 2 cart , green fee , range balls\nplus a sleeve of xl 2000 golf balls .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or tournaments . expires 04 / 15 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\n* golf lesson special\n* lessons save $ 15\nbuy two or more lessons and save $ 15 per lesson\nfine tune your swing now . expires 04 / 15 / 00 .\napril spring clinics\n( 6 hours of instruction for $ 75 )\nmerchandise sales\ncutter & buck shirts 3 for $ 75\nstrata dozen golf balls $ 29 . 95\nxl 2000 dozen golf balls $ 19 . 95\nwhat ' s happening ?\n- senior tournament every monday morning\n- ladies league starting tuesday mornings\n- skins game every wednesday afternoon\n- kingwood cove golf association monthly tournaments", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.240+0000", "entityId": 2043, "properties": {"text": "Subject: procedure for adding new capacity tickets for multi - desk service\nutilization\nin order to provide the ability to track transport expense by desk , sitara\nwas modified to allow multiple transport capacity tickets for the same\nservice contract provided that they are for different desks and only one is\ntagged as \" primary \" . here is the procedure for setting up new capacity\ntickets to reflect the \" other \" desks :\na . you will probably first notice this via a warning / error message in path\nmanager when building a new path . the message will read something like\n\" source / destination 123456 for desk imct does not match service contract 3434\nand will be removed . \"\nb . make note of the deal number in the service list of the service contract\nthat you were using in the new path .\nc . open that transport capacity deal in sitara . then hit copy .\nd . on the new deal :\nchange the buyer from the old desk to the new desk that matches the supply\nor market deal that you are pathing with . if it a contract for which we are\nagent , then don ' t change the buyer but instead change the agent to the new\ndesk . the \" primary \" deal will carry the actual agent .\nchanging the buyer causes the contract field to get blanked out . re - select\nthe contract .\njust above the various exchange line items is a primary deal check box .\nun - check it .\non each exchange line item , change the mdq to zero and for any negotiated\nrates , uncheck them as well . the \" primary \" deal will carry the mdq and\nany negotiated demand , commodity or fuel .\nhit release .\ne . you may need to re - retrieve path manager . you should see the deal number\nin the service list now read \" multiple \" . right - click / service deals will list\nthe specific deals .\nf . re - build the path as you originally desired . the warning / error message\nshould not appear again .\nthis could occur for any combination of desk and service contract .\nplease file this in your \" call dave if i can ' t find this \" folder .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.244+0000", "entityId": 2044, "properties": {"text": "Subject: hplc to wellhead\ndaren here is the list of deals that need to move to the wellhead portfolio\nfrom the hplc and are in vances spread sheet .\nsome of these may have already been moved .\neex corporation # 229609 meter 5999\neex corporation # 229586 meter 6500\neex e & pcompany # 166817 meter 9721\nencina gaspipeline # 133291 meter 5631\nencina gas pipeline # 133344 meter 6181\nhurd enterprises # 133342 meter 5427\nsamson lonestar # 126270 meter 6722\nshoreline # 136225 meter 9743\nwelhausen operating # 134987 meter 9717", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.249+0000", "entityId": 2045, "properties": {"text": "Subject: re : april spot tickets\nthe spot deals are in and the deal numbers are added below to the original\nnotice .\nvance l taylor @ ect\n03 / 28 / 2000 01 : 40 pm\nto : tom acton / corp / enron @ enron\ncc : carlos j rodriguez / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , julie meyers / hou / ect @ ect\nsubject : april spot tickets\ntom ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of april . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price\ndeal #\nengage energy us , lp 5839 598 mmbtu / d 100 % if / hsc less\n$ 0 . 20 229490\nengage energy us , lp 5848 285 mmbtu / d 100 % if / hsc less\n$ 0 . 20 229501\nengage energy us , lp 5923 671 mmbtu / d 100 % if / hsc less\n$ 0 . 20 229532\nengage energy us , lp 6801 1 , 157 mmbtu / d 100 % if / hsc less\n$ 0 . 20 229535\nel sordo gathering 6315 103 mmbtu / d 70 %\nif / hsc 229541\nswift energy 2630 21 mmbtu / d 90 % if / hsc less $ 0 . 258\n229575\neex corporation 6500 1 , 778 mmbtu / d 95 %\nif / hsc 229586\neex corporation 5999 8 , 648 mmbtu / d 95 %\nif / hsc 229609\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.254+0000", "entityId": 2046, "properties": {"text": "Subject: re : first delivery - texaco e & p\nnew deal number is 229481\nsusan smith @\nect\n03 / 27 / 2000 02 : 24 pm\nto : tom acton / corp / enron @ enron , julie meyers / hou / ect @ ect\ncc :\nsubject : re : first delivery - texaco e & p\ntom :\nwould you please set up another one month ticket for the below ( last month\nwas 211573 ) ?\njulie :\nper melissa ' s note please do not send out any paper on this . we expect the\npaper within a day or so .\nplease let me know if you have any questions ,\nthanks , scs x 33321\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 03 / 27 / 2000 02 : 20\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 03 / 27 / 2000 02 : 12 pm\nto : susan smith / hou / ect @ ect\ncc :\nsubject : re : first delivery - texaco e & p\nyes , but i would request that julie not send out paper since this should be\nback signed shortly . i noticed the deal vance requested below ( which tom set\nup as deal 211573 ) is attached to a committed reserves agreement that does\nnot cover this meter .\nmelissa\nsusan\nsmith\n03 / 27 / 2000 12 : 27 pm\nto : melissa graves / hou / ect @ ect\ncc :\nsubject : first delivery - texaco e & p\ncan we just use this for april rather then putting in a one month firm ticket\n( since we dont have paper anyway ) ?\nthanks ,\nscs\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 03 / 27 / 2000 12 : 24\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n03 / 03 / 2000 04 : 30 pm\nto : tom acton / corp / enron @ enron\ncc : julie meyers / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - texaco e & p\ntom ,\nthe following production has commenced to flow and a ticket should be\ngenerated in sitara based upon the information below :\ncounterparty meter volumes price period\ntexaco e & p 9826 2 , 000 mmbtu / d 100 % if / hsc less $ 0 . 09 3 / 3 - 3 / 31 / 2000\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 03 / 03 / 2000\n04 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 03 / 03 / 2000 01 : 23 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , michael w morris / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , brenda f\nherod / hou / ect @ ect , david baumbach / hou / ect @ ect , bryan hull / hou / ect @ ect , brian\nm riley / hou / ect @ ect , jeffrey a austin / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , dawn c kenne / hou / ect @ ect , lisa csikos / hou / ect @ ect ,\nkristen j hanson / hou / ect @ ect , heidi withers / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect\ncc :\nsubject : first delivery - texaco e & p\nsee attached file", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.259+0000", "entityId": 2047, "properties": {"text": "Subject: re : jan & feb midcon invoices\ndaren ,\ndo you have any information on these deals ? we cannot collect the cash from\nmidcon if we can ' t prove to them the\ndeals are valid .\nthanks ,\nkris\ntina valadez\n03 / 29 / 2000 09 : 19 am\nto : kristen j hanson / hou / ect @ ect\ncc :\nsubject : jan & feb midcon invoices\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 03 / 29 / 2000 09 : 17\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n03 / 27 / 2000 08 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : jan & feb midcon invoices\npat dresner ( accountant ) at midcon texas says she does not show these deals\nin her system and she can not pay on them . you created the deals in sitara\nand i don ' t have another trader ' s name . could you please talk to your kn\ntrader regarding this situation ? if midcon really got this gas , then someone\nat kn should tell their accountant about the deal .\nprod mo . entity point volume total amount sitara #\n1 / 2000 midcon texas gas services corp . 0984132 20000 $ 51 , 600 . 00 157006\n2 / 2000 midcon texas gas services 0984132 36000 $ 90 , 900 . 00 166523\n2 / 2000 midcon texas pipeline corp . 0984132 80 , 000 $ 206 , 800 . 00 170133\nplease let me know as soon as possible what you find out . the 2 / 2000\nproduction invoices are due to be paid 3 / 27 .\nthank you ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.263+0000", "entityId": 2048, "properties": {"text": "Subject: hpl 3 - rivers gas flowing through king ranch\ndaren ,\ncan you please e - mail me your expected volumes for the above referenced\nsubject for april ' s gas production ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.268+0000", "entityId": 2049, "properties": {"text": "Subject: re : resume attached\nliz is an mit graduate and is currently at exxon and very interested in a\njob at enron .\ni would take her in my group but we are neighbors and i don ' t want to mix\nthat with work . pat\n\" carl & liz fortin \" on 03 / 29 / 2000 10 : 32 : 02 am\nto : ,\ncc :\nsubject : resume attached\n- 01 - 00 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.272+0000", "entityId": 2050, "properties": {"text": "Subject: re : jan & feb midcon invoices\nthese deals were confirmed with evelyn monroe at midcon and they were all on\nmidcon 92168 ( pipe ) and scheduled on the hpl contract 012 - 41500 - 02 - 015 .\nmidcon ' s hpl contract is 36 - 001452 - 3 . please let me know if there are any\nother questions regarding these deals . thanks , susan .\ndaren j farmer\n03 / 29 / 2000 12 : 23 pm\nto : susan d trevino / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect , lisa csikos / hou / ect @ ect\nsubject : re : jan & feb midcon invoices\nwere these deals confirmed ? what are the pipes and contracts ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 03 / 29 / 2000\n12 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkristen j hanson\n03 / 29 / 2000 09 : 28 am\nto : daren j farmer / hou / ect @ ect\ncc : lisa csikos / hou / ect @ ect\nsubject : re : jan & feb midcon invoices\ndaren ,\ndo you have any information on these deals ? we cannot collect the cash from\nmidcon if we can ' t prove to them the\ndeals are valid .\nthanks ,\nkris\ntina valadez\n03 / 29 / 2000 09 : 19 am\nto : kristen j hanson / hou / ect @ ect\ncc :\nsubject : jan & feb midcon invoices\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 03 / 29 / 2000 09 : 17\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n03 / 27 / 2000 08 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : jan & feb midcon invoices\npat dresner ( accountant ) at midcon texas says she does not show these deals\nin her system and she can not pay on them . you created the deals in sitara\nand i don ' t have another trader ' s name . could you please talk to your kn\ntrader regarding this situation ? if midcon really got this gas , then someone\nat kn should tell their accountant about the deal .\nprod mo . entity point volume total amount sitara #\n1 / 2000 midcon texas gas services corp . 0984132 20000 $ 51 , 600 . 00 157006\n2 / 2000 midcon texas gas services 0984132 36000 $ 90 , 900 . 00 166523\n2 / 2000 midcon texas pipeline corp . 0984132 80 , 000 $ 206 , 800 . 00 170133\nplease let me know as soon as possible what you find out . the 2 / 2000\nproduction invoices are due to be paid 3 / 27 .\nthank you ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.277+0000", "entityId": 2051, "properties": {"text": "Subject: josey ranch est . - - apr . 2000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 03 / 29 / 2000\n03 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 29 / 2000 03 : 54 : 45 pm\nto : \" susan trevino ( e - mail ) \"\ncc : \" taylor vance ( e - mail ) \" , stretch brennan\n, knox westmoreland , kevin mclarney\nsubject : josey ranch est . - - apr . 2000\nthis is the estimated josey ranch nomination for the month of april\n2000 . the hpl nomination volume to be effective 4 / 1 / 2000 is :\n11 , 100 mmbtu / day for kcs resources\n1 , 900 mmbtu / day for texaco\n13 , 000 mmbtu / day total ( assumed btu factor of 1 . 075\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.281+0000", "entityId": 2052, "properties": {"text": "Subject: nominations for gas days 29 & 30 on behalf of bruce mcmills\ngas day 29\nnomination into eastrans of 45 , 000 mmbtu\nredeliveries :\n13 , 482 pg & e\n7 , 000 fuels cotton valley\n21 , 518 mobil beaumont\n3 , 000 hpl cw at carthage\ngas day 30\nnomination into eastrans of 75 , 000 mmbtu\nredeliveries\n43 , 482 pg & e\n7 , 000 fuels cotton valley\n21 , 518 mobil beaumont\n3 , 000 hpl cw at cartage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.285+0000", "entityId": 2053, "properties": {"text": "Subject: wellhead\ndaren , here are some monination \" tweaks \" due to late noms and revisions from\nshippers . i know your trying to finalise your position so just let me know\nwhen if or when you want to work these into the system .\nfour square\nmeter old new\n6599 1549\n1500 suemaur explorations\n9772 860\n752\n1568 7 1\n6844 2475 1500\nc & e\noperations\ntexaco 990 1100\n9813 681 670\n9708 13746 13035\n9736 2889 2830\nshoreline\nyates 2930\n3470\n6722 30 570\n9743 596 504\ncody\n6722 7692 7450\ncima\n4126 482 464\noil & gas title\n6114 0 1\nphillips\n6673 838 119", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.290+0000", "entityId": 2054, "properties": {"text": "Subject: walter o & g / superior april noms\ntom ,\ni recently received this nomination and the total package of gas for the\naforementioned changed as follows :\ncounterparty meter last nom latest nom chg .\nwalter o & g 9747 3 , 901 mmbtu / d 3 , 426 mmbtu / d ( 475 ) mmbtu / d\nwalter o & g 9787 1 , 604 mmbtu / d 1 , 713 mmbtu / d 109 mmbtu / d\nwalter o & g 9808 4 , 890 mmbtu / d 4 , 950 mmbtu / d 60 mmbtu / d\nsuperior natural gas 9741 2 , 783 mmbtu / d 2 , 570 mmbtu / d ( 213 ) mmbtu / d\ntotal change ( 519 ) mmbtu / d\ni ' ve made the change in my spreadsheet .\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.295+0000", "entityId": 2055, "properties": {"text": "Subject: april 1 noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 03 / 29 / 2000\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 03 / 29 / 2000 03 : 00 : 00 pm\nto : \" ami chokshi \"\ncc :\nsubject : april 1 noms\n( see attached file : hpl - apr . xls ) ( see attached file : egmnom - apr . xls )\n- hpl - apr . xls\n- egmnom - apr . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.300+0000", "entityId": 2056, "properties": {"text": "Subject: re : astros web site comments\ninfants under the age of 2 that can rest in a parent ' s lap do not need\ntickets to games .\nwebmasters\nat 12 : 17 pm 3 / 30 / 00 - 0600 , you wrote :\n> posted = thu 30 mar 2000 at 12 : 09\n> subj = astros web site comments\n> mailto = twinspin @ astros . com\n> email =\n> namefield = daren farmer\n> email = dfarmer @ enron . com\n> city = spring , tx\n> comments = do i have to purchase a ticket for an infant ?\n> x = 48\n> y = 7\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.308+0000", "entityId": 2057, "properties": {"text": "Subject: april , aspect volume @ texas city\nfor april 1 , 2000 :\ncross media 989815 = 903 mmbtu\ntnct 989816 = 5878 mmbtu\nany questions , just call .\nthanks ,\ncharlotte hawkins", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.315+0000", "entityId": 2058, "properties": {"text": "Subject: 98 - 6892 for 3 / 15 / 2000 and 3 / 23 / 2000\ndaren ,\ni know it ' s first of the month but the above meter has flow for 3 / 15 ( 71\ndec . ) and 3 / 23 ( 35 dec . ) but the deal ( sitara # 213005 ) doesn ' t cover these\ntwo days .\ncan you see if it is feasible to activate these two days in sitara so that i\ncan clear my exceptions for volume management ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.320+0000", "entityId": 2059, "properties": {"text": "Subject: march surveys\nhello ,\nwe have prepared january and february data and will be scheduling meetings\nwith you in the next few weeks . for the month of march , please provide a\ncompleted \" hours \" survey for each position within your group . this survey\nwill collect the time your team spent on performing their activities in the\nmonth of march .\nnote : we are now collecting eol related activities . if you spend time\ndirectly supporting eol , and your survey does not have an activity that you\ncan assign these times to , please contact me as soon as possible so we can\nadd the appropriate activities to your survey .\nto fill out the survey :\nat the top of the spreadsheet , you will see a box labelled \" select your rc \" .\nclick on the box and input your rc number , which will need to be 4 digits .\nonce you have done this , another box will appear with the message \" select\nposition from drop box ! \" you can then select the position ( i . e . , staff ,\nspecialist , etc . ) and \" ok \" . the choices for positions are based on\ninformation contained in the org database ( i . e . , if a position is not listed\nthat should be , please call me to discuss as it would indicate that\ncorrections need to be made to the database ) . once you have the list of\nactivities , please input hours ( for the entire month ) for each activity\nlisted in the column labelled \" hours \" .\nif you ' re filling out the survey for your team , save a file for each of the\npositions you fill out for your team prior to filling out the next position .\nif you do not , the information will be lost .\nwe have included february compiled hours per position ( if you had two\nspecialists performing the same activity - 20 hours each , the \" last month \"\ncolumn would show a total of 40 hrs for that month ) . as with last month , you\nhave the option to complete the survey on behalf of your entire group or send\nthis survey to each of your team members , allowing each individual to fill\nout the time they spent on each activity . if there are any activities you\nperform not included in your survey , please contact me as soon as possible\nfor a copy of the activity dictionary .\nplease return these surveys by end of day wednesday , april 5 th . if this is a\nproblem , please notify me or lisa cousino immediately .\nthanks ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.325+0000", "entityId": 2060, "properties": {"text": "Subject: march activity survey\nas you are aware , we are starting to collect data for our march price model .\ni ' ve attached a survey to help us collect the data that will be driving your\ncosts from the activities to the commercial teams . in the ' data ' tab , please\nselect the your rcs , and fill in the driver quantity for the requested driver\nfor the month of february . please fill out the attached activity driver\nsurvey with march numbers for your rc by end of day wednesday , april 5 th . if\nyour group currently generates a standard report that captures the surveyed\ndata , please send the report to me , and put me on your recipient list\nbeginning next month . this will eliminate your need to fill out this survey\nevery month . if you would like us to collect this information from someone\nwithin your team beginning next month , please let me know .\nplease take this opportunity to verify the following :\n1 . the driver indicates a measure for the time and effort your team spent to\nperform these activities for each commercial team .\n2 . the activity is spent in support of the commercial teams identified\n( please let us know otherwise )\n3 . if the activity is using an allocation ( for example \" allocate 0469 \" or\n\" 80 - 20 split \" ) , that the percentage allocated to each commercial team has not\nchanged from last month . ( please let us know if it has changed what the new\nallocation is ) .\nin reference to these surveys , please note :\nif you are allocating only infrastructure costs to some commercial teams\nlisted in the survey , please identify them . we will take your business\nsupport costs ( such as feedback , training , etc . ) and allocate them evenly\namong these teams .\nthe costs for \" commercial team specific \" activities that you filled time out\nfor in the january time survey will be directly allocated to that commercial\nteam ( e . g . genco support will trace 100 % of its costs to genco ) .\nplease let us know if you have any questions on this survey .\nregards ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.330+0000", "entityId": 2061, "properties": {"text": "Subject: re : mitchell gas services 2 / 00\ni ' m not sure , but could you ask craig .\njulie\ndaren j farmer\n03 / 31 / 2000 12 : 30 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : re : mitchell gas services 2 / 00\nis this still outstanding ? craig is back in the office now .\nd\njulie meyers\n03 / 20 / 2000 02 : 27 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : mitchell gas services 2 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 03 / 20 / 2000 02 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 03 / 20 / 2000 02 : 08 pm\nto : julie meyers / hou / ect @ ect\ncc : william c falbaum / hou / ect @ ect\nsubject : mitchell gas services 2 / 00\nwe have a price difference with mitchell gas services for 2 / 00 production ,\ndeal 156658 . we have hsc - 0 . 05 and mitchell shows hsc - 0 . 04 . can you tell\nme what the correct price is ? i need this asap .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.335+0000", "entityId": 2062, "properties": {"text": "Subject: nomination 4 / 1 / 2000\nper our discussion , eff 4 / 1 / 2000 the nom to eastrans will be 60 , 000 mmbtu / d ,\nwith 50 , 000 going to pg & e , 2 , 200 into\nhpl ' s cartwheel at carthage , and 7 , 800 from fuels cotton valley to hpl .\neff 4 / 4 , we hope to deliver 15 , 000 into hpl at the lone star / hpl interconnect\nin\nrusk county .\nwe will formally nominate for the 4 th on monday morning . the price we will\nsell\nthis additional\ngas to you for is hsc - $ . 07 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.339+0000", "entityId": 2063, "properties": {"text": "Subject: fw : fw : gap gift certificates\n- - - - - original message - - - - -\nfrom : fletcher , thomas\nsent : friday , march 31 , 2000 8 : 27 am\nto : beard , jaime ; canedy , frank ; almaguer , michael ; dewey , daniel ; glover ,\nrusty ; walker , cole ; young , steve ; abbott , todd ; sanchez , jose ; parker baum\n( e - mail ) ; ' , eprakop @ earthlink . net , ' ; ' eric wilson ' ; ' bsneed @ enscoinc . com ' ;\nmike marchand ( e - mail ) ; ' ctlockwood @ aol . com ' ; ' burke , donovan ( cci - new\norleans ) ' ; ' tim herbst ' ; amy pickle ( e - mail ) ; angela barulli ( e - mail ) ;\nashley burt ( e - mail ) ; brandon reed ( e - mail ) ; carrie johns ( e - mail ) ; chad\nleeper ( e - mail ) ; cliff gulett ( e - mail ) ; eric burcham ( e - mail ) ; erik prakop\n( e - mail ) ; greg juneau ( e - mail ) ; jen black ( e - mail ) ; jeremy burt ( e - mail ) ;\njoy moore ( e - mail ) ; julie duerler ( e - mail ) ; julie hanibal ( e - mail ) ; karamie\ncarrigan ( e - mail ) ; katie portacci ( e - mail ) ; kern courtney ( e - mail ) ; laura\nfollette ( e - mail ) ; lillian lofton ( e - mail ) ; matt england ( e - mail ) ; mike mike marchand ( e - mail ) ; parker baum ( e - mail ) ;\nrebecca kubs ( e - mail ) ; rhett rogers ( e - mail ) ; shelly abrahm ( e - mail ) ; tommy\nmount ( e - mail ) ; troy combs ( e - mail ) ; ' shilling , aaron ( a . r . ) ' ; amy pickle\n( e - mail )\nsubject : fw : fw : gap gift certificates\nif this doesn ' t work i ' m soory for wasting everyones precious time ! what ' s\nup !\n- - - - - original message - - - - -\nfrom : donnie vandeven sutton , charlie ; sutton , brenda ; sutton , billy ;\nrichardson , tiffany ; morgan , amy ; michelle bailey ; marshall , florence ;\nkassim , janan ; eshleman , trisha ; crum , lesley ; chevis , tonya ; black , jenn\nsubject : fw : fw : gap gift certificates\n- - - - - original message - - - - -\nfrom : katiebc >\nto : kathy > ; sace brown\n> ; mary\nclaude glass > ; mama > ; kelly lee > ; glen brown > ; ginny tucker >\ndate : tuesday , march 07 , 2000 5 : 56 pm\nsubject : fw : fw : gap gift certificates\n- - - - - original message - - - - -\nfrom : creative images >\nto : cornfkgirl 55 @ aol . com > ; terree\nskovack @ summitbank . com > ; saran 2201 @ aol . com\n> ; nrcandles @ aol . com > ; lisa grayo > ; jborgl 000 @ enter . net\n> ; ' fossesca , gina ' > ; betsy basgall\n>\ndate : saturday , february 26 , 2000 6 : 00 pm\nsubject : fw : fw : gap gift certificates\n- - - - - original message - - - - -\nfrom : cross , thomas g .\nto : bill etkin ( e - mail ) ; billy ( e - mail )\n; cali ( e - mail ) ;\ndanny ( e - mail ) ; jake ( e - mail )\n; klonis ( e - mail )\n; kuch ( e - mail ) ; laff ( e - mail )\n; lawson\n( e - mail ) ; lori ( e - mail ) ; mark murray\n( e - mail ) ; paula\n( e - mail ) ; ragu ( e - mail ) ; scott hoagburg ( e - mail )\n; tom kerr\n( e - mail ) ; walrus ( e - mail )\nsent : wednesday , february 23 , 2000 11 : 13 am\nsubject : fw : fw : gap gift certificates\n- - - - - original message - - - - -\nfrom : deanna lenchak [ mailto : d _ lenchak @ hotmail . com\n]\nsent : wednesday , february 23 , 2000 1 : 37 pm\nto : lsgoodrich @ aol . com ; dgoldstein @ alloy . com\n;\nhelato 0 @ msx . kraft . geis . com ;\nvoreilll @ rodalepress . com ;\njennifer . devers @ columbia . ppdi . com\n; dtolearyl 3 @ hotmail . com ;\nfbcampbell @ hotmail . com ;\nmorganj @ email . chop . edu ; njsnoop @ aol . com\n;\nglamesta @ hrads . com ; june 30 _ 73 @ hotmail . com\n; redsgilmore @ yahoo . com\n;\ntgcross @ delinvest . com ; eesmith @ delinvest . com\n; saegerr @ iconus . com\n;\nkathnkirk @ aol . com ; glcarbo @ delinvest . com\n; gerdman @ delinvest . com\n;\nktrifiletti @ philamuseum . org ;\ncbuynak @ mail . phila . kl 2 . pa . us ;\nhmurray @ ingfunds . com ; katemiddle @ aol . com\n; kathyrnl @ hotmail . com\n;\nkherncane @ acsysinc . com ;\nmarybeth . oleary @ bms . com ;\nsandra _ luckowski @ strategicweather . com\n; segeorge @ delinvest . com\n;\ntimothy _ oleary @ gmaccm . com\nsubject : fwd : fw : gap gift certificates\n> from : njsnoop @ aol . com\n> to : jaca 527 @ aol . com , bwestrich @ hotmail . com\n, prc 246 @ aol . com ,\n> d _ lenchak @ hotmail . com , tanzo 44 @ aol . com\n, dscoppin @ aol . com ,\n> ced 423 @ aol . com , potseo 07 @ aol . com\n, glamesta @ hrads . com ,\n> gabbol 999 @ aol . com , ecushorty 26 @ yahoo . com\n, ff 74 @ aol . com ,\n> ajax 991107 @ aol . com , jen . brown @ huntoon . com\n, jgaughran @ syscom - inc . com\n,\n> katemiddle @ aol . com , kdavis @ coadgroup . com\n, kristen 327 @ hotmail . com\n,\n> leahd 75 @ aol . com , jgrehl @ advanstar . com\n, kattr 51 @ aol . com ,\n> sandra _ luckowski @ strategicweather . com\n> subject : fwd : fw : gap gift certificates\n> date : tue , 22 feb 2000 23 : 16 : 25 est\n>\n>\nget your private , free email at http : / / www . hotmail . com\n_ _ _ _ _\nmessage - id : >\nfrom : dscoppin @ aol . com\nto : dadams @ foodtv . com , daveadaml @ aol . com\n, ajax 991107 @ aol . com\n,\nbemor @ worldnet . att . net ,\nrabogal 23 @ aol . com , yadil 31 @ hotmail . com\n,\ndcoppin @ erac . com , njsnoop @ aol . com\n, kevin _ grimstead @ peoplemag . com\n,\nleshell @ prodigy . net ,\nkeshawn . a . mccleod @ tst . tracor . com ,\nshammara @ hotmail . com , luvlee 9538 @ aol . com\n, kmccleod @ yahoo . com\n,\nram 312 @ gateway . net ,\nraywilliamsl 0 @ hotmail . com ,\ncquerol 714 @ aol . com ,\nmrascoe @ midd . sps . kl 2 . va . us ,\nkarwood @ hotmail . com , salisbo @ alpha . ecsu . edu\n,\ntuneloc @ hotmail . com , mbso 8 @ aol . com\n, aonee @ zdnetmail . com ,\nrsol 732412 @ aol . com , weslypipesl @ excite . com\n, twill @ aol . com ,\nahhaprol @ aol . com\nsubject : fwd : fw : gap gift certificates\ndate : tue , 22 feb 2000 13 : 44 : 16 - 0500\nmime - version : 1 . 0\nx - mailer : internet mail service ( 5 . 5 . 2448 . 0 )\ncontent - type : message / rfc 822\nmessage - id :\nfrom : \" adams , david \" >\nto : \" ' tusgar _ hefa @ newyorklife . com ' \"\n> ,\n\" ' anna _ wong @ newyorklife . com ' \" > ,\n\" ' tara _ felton @ am . newyorklife . com '\n\" > ,\n\" ' chantale _ olivier @ am . newyorklife . com '\n\"\n> , \"\n' andrews _ tara @ jpmorgan . com ' \"\n> , \"\n' pconnor @ bridge . com ' \" > ,\n\" romano , carmine \" > , \"\n' dscoppin @ aol . com ' \"\n>\nsubject : fw : gap gift certificates\ndate : tue , 22 feb 2000 10 : 22 : 15 - 0500\nmime - version : 1 . 0\nx - mailer : internet mail service ( 5 . 5 . 2448 . 0 )\ncontent - type : text / plain\n- - - - - original message - - - - -\nfrom : infante , teresa\nsent : friday , february 18 , 2000 5 : 20 pm\nto : adams , david ; beckles , michelle ; cindy cammon ; diaz , josh ; jones ,\ntanya ; moseley , joe ; daniel , stephanie ; clarke - porter , althea ;\nsepulveda , maria\nsubject : fw : gap gift certificates\n- - - - - original message - - - - -\nfrom : angel l . vale jr . [ mailto : toro 94 @ excite . com\n]\nsent : thursday , february 17 , 2000 1 : 27 pm\nto : anthony aldano ; jimenez 57 @ aol . com ;\naleon @ related . com ;\nwolivare @ stern . nyu . edu ; jqd 3093 @ is 3 . nyu . edu\n; rh 7 @ stern . nyu . edu\n;\nwo 200 @ is 5 . nyu . edu ; aherrera @ stevens - tech . edu\n; aaldano @ hotmail . com\n;\ngardell - b @ rocketmail . com ;\nrobert . cardona @ bcjsystems . com ;\ndrjc 8297 @ aol . com ; angel . vale @ bigfoot . com\n; oscarvelez @ aol . com\n;\nlavillalon @ launidadlatina . org ;\naachecar @ usa . net ; lul - step @ egroups . com\ncc : mgbabyface @ aol . com ; safire 906 @ aol . com\n; lpcarden @ phjw . com ;\nkasper _ 8 @ yahoo . com ; rubyl 32 @ excite . com\nsubject : gap gift certificates\nsubject : gap certificates\nhey guys , i finally found one that is true ! i went down to the\ngap myself and redeemed my gift certificates already ! ! ! i sent\nenough e - mails to get over two hundred dollars worth of clothes from\nthe gap ! you know , with all the crap sent over the mail , it is good to\nknow that something finally rings true in this environment of virtual\ndeception . send it to everyone you know , and you too can have a whole new\nwardrobe , courtesy of the gap ! isn ' t it grand ?\nhi ! my name is janelle mccan , founder of the gap .\nyou have probably heard about the e - mail from abercrombie and fitch offering\ntwenty five dollar gift certificates to every five people you sent that\nletter to . my question is : did it work ? most of you who tried it will\nprobably say no .\nbut this letter is not prank like others you have experienced . i am offering\nthirty five dollar gift certificates to every seven people you send this to .\nwhen you have finished sending this letter to as many people as you wish , a\nscreen will come up . it will tell you how much you have earned in gap gift\ncertificates . print that screen out and bring it to your local gap store .\nthe sales clerk will give you your certificates and you can shop baby ! this\nis a sales promotion to get our name out to young people around the world .\nwe\nbelieve this project can be a success , but only with your help .\nthank you for your support !\nsincerely ,\njanelle mccan\nfounder of gap\nget 100 % free internet access powered by excite\nvisit http : / / freeworld . excite . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.344+0000", "entityId": 2064, "properties": {"text": "Subject: cdnow order confirmation\ndear daren ,\nthank you for shopping at cdnow .\nthis email is to confirm your order number 17817331 .\nto check the status of this order or to make any changes , click or\ncopy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 17817331\nyou can also access your order history directly from our home page .\nyou have ordered the following item :\nrobert earl keen : walking distance ( cd )\nthis will ship via u . s . postal service .\nthe shipping address for this order is :\ndaren farmer\n5519 clarkston ln\nspring , tx 77379\nyour order total is $ 15 . 98 .\nget a free $ 10 cdnow gift certificate when you buy anything on bolt ! click\nbelow for details . limit one per customer . offer is good till 3 / 31 .\nfree motorola startac or nokia 5160 with at & t plans . go to telstreet . com for\ngreat wireless deals in your area . one year agreement required for free\nphones - click for details !\nplease do not reply to this email . if you have questions about your\norder that are not addressed in your online order history , please visit\nour contact cdnow page using this link :\nhttp : / / cdnow . com / service\nthis order is worth 130 fast forward rewards ( tm ) program\npoints . these \" points pending \" will appear in your membership summary as\n\" points earned \" after your order has shipped .\nthanks again for shopping at cdnow .\nsincerely ,\ncustomer service\ncdnow , inc . your music . your store .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.348+0000", "entityId": 2065, "properties": {"text": "Subject: new update for buybacks\nthere are two additions . airproducts and petrofina .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.353+0000", "entityId": 2066, "properties": {"text": "Subject: re : 98 - 6892 for 3 / 15 / 2000 and 3 / 23 / 2000\nray calles ( tetco ) told me today that he will put the oba in the mail either\ntonight or first thing monday .\nthanks for your help .\n- jackie -\n3 - 9497\ndaren j farmer\n03 / 31 / 2000 10 : 46 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : 98 - 6892 for 3 / 15 / 2000 and 3 / 23 / 2000\ndon ' t we have an oba at this point now ?\nd\njackie young\n03 / 31 / 2000 09 : 15 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : 98 - 6892 for 3 / 15 / 2000 and 3 / 23 / 2000\ndaren ,\ni know it ' s first of the month but the above meter has flow for 3 / 15 ( 71\ndec . ) and 3 / 23 ( 35 dec . ) but the deal ( sitara # 213005 ) doesn ' t cover these\ntwo days .\ncan you see if it is feasible to activate these two days in sitara so that i\ncan clear my exceptions for volume management ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.358+0000", "entityId": 2067, "properties": {"text": "Subject: nomination - eastrans - - 4 / 4 and 4 / 5\nthe nomination for 4 / 4 / 2000 is :\ndeliveries :\n45 , 000 mmbtu into eastrans\nredeliveries :\n20 , 000 into pg & e at carthage\n7 , 800 from fuels cotton valley into hpl\n2 , 200 to hpl ' s cartwheel at carthage\n15 , 000 into mobil beaumont\nfor 4 / 5 / 2000 , the nomination is as follows :\ndeliveries :\n75 , 000 mmbtu into eastrans\nredeliveries :\n20 , 000 into pg & e\n7 , 800 from fuels cotton valley into hpl\n25 , 000 into hpl ' s cartwheel at carthage\n7 , 200 into mobil beaumont at hsc - $ . 0375\n15 , 000 into mobil beaumont at hsc - $ . 045\nwhat ' s the status of pg & e . can we get back up to 50 , 000 soon ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.363+0000", "entityId": 2068, "properties": {"text": "Subject: procedure for adding new capacity tickets for multi - desk service\nutilization - revised\nrevision in bold . pass on to any who may need this .\nin order to provide the ability to track transport expense by desk , sitara\nwas modified to allow multiple transport capacity tickets for the same\nservice contract provided that they are for different desks and only one is\ntagged as \" primary \" . here is the procedure for setting up new capacity\ntickets to reflect the \" other \" desks :\na . you will probably first notice this via a warning / error message in path\nmanager when building a new path . the message will read something like\n\" source / destination 123456 for desk imct does not match service contract 3434\nand will be removed . \"\nb . make note of the deal number in the service list of the service contract\nthat you were using in the new path .\nc . open that transport capacity deal in sitara . then hit copy .\nd . on the new deal :\nchange the buyer from the old desk to the new desk that matches the supply\nor market deal that you are pathing with . if it a deal for which we are\nagent , then don ' t change the buyer but instead change the agent to the new\ndesk . the \" primary \" deal will carry the actual agent . the agent\ncontract will get cleared . re - select the agent contract .\nchanging the buyer causes the contract field to get blanked out . re - select\nthe pipeline contract .\njust above the various exchange line items is a primary deal check box .\nun - check it .\non each exchange line item , change the mdq to zero and for any negotiated\nrates , uncheck them as well . the \" primary \" deal will carry the mdq and\nany negotiated demand , commodity or fuel .\nhit release .\ne . you may need to re - retrieve path manager . you should see the deal number\nin the service list now read \" multiple \" . right - click / service deals will list\nthe specific deals .\nf . re - build the path as you originally desired . the warning / error message\nshould not appear again .\nthis could occur for any combination of desk and service contract .\nplease file this in your \" call dave if i can ' t find this \" folder .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.367+0000", "entityId": 2069, "properties": {"text": "Subject: updated buyback worksheet\nplease see the attached . the undertake for air products 122218 has been\nreplaced .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.372+0000", "entityId": 2070, "properties": {"text": "Subject: re : new update for buybacks\nplease check the \" undertake \" ticket # for the following : air products ,\ninc . . . . . . 132976 oppose to 122218 ;\npetrofina gas pl . . . . . . 4 / 2000 undertake # 231052 { pls .\ninclude }\njulie meyers\n03 / 31 / 2000 04 : 39 pm\nto : angela henn / hou / ect @ ect , howard b camp / hou / ect @ ect , brenda f\nherod / hou / ect @ ect , stephen p schwarz / hou / ect @ ect , lee l papayoti / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect , gary w lamphier / hou / ect @ ect , bryan\nhull / hou / ect @ ect , kenneth seaman / hou / ect @ ect , david baumbach / hou / ect @ ect ,\nlisa csikos / hou / ect @ ect , joanie h ngo / hou / ect @ ect , robert e lloyd / hou / ect @ ect\ncc :\nsubject : new update for buybacks\nthere are two additions . airproducts and petrofina .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.378+0000", "entityId": 2071, "properties": {"text": "Subject: walter o & g / superior april noms\ndaren , do you want to wait on these , let me know .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 03 / 2000 09 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n03 / 29 / 2000 04 : 44 pm\nto : tom acton / corp / enron @ enron , daren j farmer / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : walter o & g / superior april noms\ntom ,\ni recently received this nomination and the total package of gas for the\naforementioned changed as follows :\ncounterparty meter last nom latest nom chg .\nwalter o & g 9747 3 , 901 mmbtu / d 3 , 426 mmbtu / d ( 475 ) mmbtu / d\nwalter o & g 9787 1 , 604 mmbtu / d 1 , 713 mmbtu / d 109 mmbtu / d\nwalter o & g 9808 4 , 890 mmbtu / d 4 , 950 mmbtu / d 60 mmbtu / d\nsuperior natural gas 9741 2 , 783 mmbtu / d 2 , 570 mmbtu / d ( 213 ) mmbtu / d\ntotal change ( 519 ) mmbtu / d\ni ' ve made the change in my spreadsheet .\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.382+0000", "entityId": 2072, "properties": {"text": "Subject: hpl liquids / exxon\ndeal numbers : hpl liquids : 201952\nexxon mobil : 226713", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.387+0000", "entityId": 2073, "properties": {"text": "Subject: new employee\ni am pleased to announce that sabrae zajac will be joining the texas desk\nlogistics group next week , april 10 th .\nshe joins us from the ena offsystem settlements group and previously from\nkoch industries . she can be reached\nat ext . 36381 . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.392+0000", "entityId": 2074, "properties": {"text": "Subject: training for sabrae\ni would like to set up half day training sessions for sabrae zajac starting\nnext week .\ni would like her to spend time with volume management , transportation , gas\ncontrol , and\ntrading support on her first week . please let me know if you or your group\nis available for this and the best time / day .\nthis starts next week , monday april 10 th . thanks , pat 35578", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.396+0000", "entityId": 2075, "properties": {"text": "Subject: 980432\ndaren ,\ncan you please see if you can roll deal 156657 for day 1 for april ?\nthis deal expired 3 / 2000 . there was no new deal # referenced nor was the\nevergreen flag applied .\nthis meter flowed 556 mmbtu ' s on april 1 , 2000 .\nthanks\n- jackie -\n3 - 94987", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.401+0000", "entityId": 2076, "properties": {"text": "Subject: transaction confirmation sheets\njennifer / darren\nwould you please forward to lisa maillet ( fax # 508 - 786 - 7201 ) a copy of the\ntransaction confirmation sheet regarding the gas ( 2 , 977 mmbtu at lsp\ninterconnect with oasis - waha and 5 , 000 mmbtu at lsp interconnect with pg & e\nntp - 36 \" maypearl ) melp , as limited agent for abb alstom power inc , purchased\nfrom houston pipe line this past wednesday ( 3 / 29 / 00 ) .\nthanks\ntrey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.407+0000", "entityId": 2077, "properties": {"text": "Subject: meter 986296\nscherlyn , per our conversation here is the meter 986296 , and the months of\nfeb and march this meter needs to go to the 012 - 41500 - 02 - 015 contract .\nthank you sherlyn . let me know and i ' ll enter the new track id ' s . tom .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.412+0000", "entityId": 2078, "properties": {"text": "Subject: king ranch\nstella ,\nit is very important that king ranch is accurately scheduled in the\nsystem . sitara should be updated\nwith any changes so that daren can properly manage the texas desk position .\nhopefully we have moved\nenough off of your desk to allow you to concentrate on king ranch . too many\ndiscrepancies have been made\nand it is very costly to the desk . robert can assist if needed .\nthanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.419+0000", "entityId": 2079, "properties": {"text": "Subject: re : meter # 0986725 - 1 / 00 production - encina gas marketing\ndaren ,\nthe above mentioned meter is on stranger ' s for the entire month of jan .\n2000 . there is a deal ticket applicable to this meter from jan . 21 st thru\nthe 31 st . is it o . k . for volume management to apply volumes from the 21 st\nthru the 31 st to the 215 ?\ni don ' t know what kind of issues was associated with this deal .\nthanks\n- jackie -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 03 / 2000 05 : 00 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie , any luck on the issue w / the gas allocated to \" stranger ' s gas \" at\nthis meter . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 04 / 03 / 2000 02 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 04 / 03 / 2000 10 : 00 am\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nanita , have you found out any further information about this meter . encina\nstill beleives that we owe them for this gas .\nthanks , stephanie ( 3 - 6004 )\nanita luong\n03 / 03 / 2000 02 : 11 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\ni see that the gas at this meter is allocated to \" stranger ' s \" in pops .\nstephanie gomes in settlement thinks that this could be encina ' s gas . i see\nin sitara that deal 152638 is only valid from the 21 st - 31 st . can you\nplease take a look .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 03 / 03 / 2000 01 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 03 / 03 / 2000 01 : 34 pm\nto : anita luong / hou / ect @ ect\ncc : charlene richmond / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey anita ,\nfor meter # 0986725 , 1 / 00 production , i am showing per meter statement that\n41 , 671 mmbtu flowed . is that gas really encina ' s . has the volume just not\nbeen allocated yet . could you let me know what the deal is on the meter .\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.427+0000", "entityId": 2080, "properties": {"text": "Subject: correction to 4 / 5 / 00 nomination for eastrans\nin bruce mcmills absence , i am sending the following correction for eastrans\nnominations . bruce has confirmed the correction with darren farmer .\ncorrection for 4 / 5 / 2000 nomination :\ndeliveries :\n75 , 000 mmbtu into eastrans\nredeliveries :\n20 , 000 into pg & e\n7 , 800 from fuels cotton valley into hpl\n12 , 200 into hpl ' s carwheel at carthage\n20 , 000 into mobil beaumont at hsc - $ . 0375\n15 , 000 into mobil beaumont at hsc - $ . 055", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.434+0000", "entityId": 2081, "properties": {"text": "Subject: cdnow shipment confirmation\ndear daren ,\nthank you for shopping at cdnow . please keep this email invoice for\nyour records .\non april 3 we shipped your order number 17817331 for the following item :\nrobert earl keen : walking distance\nformat : cd quantity : 1 price : 12 . 99\nto the following address via u . s . postal service :\ndaren farmer\n5519 clarkston ln\nspring , tx 77379\ntotal number of items : 1\nsubtotal : $ 12 . 99\nshipping : $ 2 . 99\nsales tax : $ 0 . 00\n- - - - - - - - - -\nshipment total : $ 15 . 98\nyour order was billed to daren farmer . this shipment completes your\norder and is paid in full .\nmost orders arrive within 4 - 8 business days . however , in rare instances\nit may take up to 2 weeks .\nfor complete information about your order ( number 17817331 ) or to\nconfirm the status , click or copy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 17817331\nyou can also access your order history directly from our home page .\nplease do not reply to this email . if you have questions about your order\nthat are not addressed in your online order history , please visit our contact\ncdnow page using this link :\nhttp : / / cdnow . com / service\nfast forward rewards ( tm ) program points for this order will\nbe credited in your membership summary as \" points earned . \"\nthanks again for your order .\nsincerely ,\ncustomer service\ncdnow , inc . your music . your store .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.441+0000", "entityId": 2082, "properties": {"text": "Subject: test to dfarmer @ enron . com\ndoug :\nplease let me know if you receive this e - mail , by replying to it . this is a\ntest to :\ndfarmer @ enron . com\nthanks . sarah .\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.447+0000", "entityId": 2083, "properties": {"text": "Subject: re : april , aspect volume @ texas city\nyes , until further notice . we will change the nom to match flow in order to\nkeep the meter as balanced as possible . otherwise , it stays the same . so\nfar , the meters are flowing real close to noms .\nthanks ,\ncharlotte\ndaren j farmer\n04 / 04 / 2000 01 : 57 pm\nto : charlotte hawkins / hou / ect @ ect\ncc :\nsubject : re : april , aspect volume @ texas city\nare you going to nom these volumes for the rest of the month ?\nd\nfrom : charlotte hawkins 04 / 04 / 2000 01 : 39 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : april , aspect volume @ texas city\ndaren :\njust wanted to follow up with you on the april noms at texas\ncity . . . . . . . . . . . . . . the volumes recorded for april 1 were 5300 and 1165 . . .\nsince we have been directed not to change sitara deal tickets for now , would\nyou please correct ?\nthanks ! !\ncharlotte\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlotte hawkins / hou / ect on 04 / 04 / 2000\n01 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins 03 / 30 / 2000 11 : 33 am\nto : daren j farmer / hou / ect @ ect , stacey neuweiler / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , mary jo johnson / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject : april , aspect volume @ texas city\nfor april 1 , 2000 :\ncross media 989815 = 903 mmbtu\ntnct 989816 = 5878 mmbtu\nany questions , just call .\nthanks ,\ncharlotte hawkins", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.453+0000", "entityId": 2084, "properties": {"text": "Subject: april , aspect volume @ texas city\ndaren :\njust wanted to follow up with you on the april noms at texas\ncity . . . . . . . . . . . . . . the volumes recorded for april 1 were 5300 and 1165 . . .\nsince we have been directed not to change sitara deal tickets for now , would\nyou please correct ?\nthanks ! !\ncharlotte\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlotte hawkins / hou / ect on 04 / 04 / 2000\n01 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins 03 / 30 / 2000 11 : 33 am\nto : daren j farmer / hou / ect @ ect , stacey neuweiler / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , mary jo johnson / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject : april , aspect volume @ texas city\nfor april 1 , 2000 :\ncross media 989815 = 903 mmbtu\ntnct 989816 = 5878 mmbtu\nany questions , just call .\nthanks ,\ncharlotte hawkins", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.458+0000", "entityId": 2085, "properties": {"text": "Subject: re : 98 - 9794 ( saxet )\nthat ' s a fair question and i ' ll need to talk with daren on that i ' ll get back\nto you asap .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.463+0000", "entityId": 2086, "properties": {"text": "Subject: 98 - 9794 ( saxet )\nthe above meter is currently doing 13 . 0 on a 26 . 0 nom .\nplease take a look and see if nom adjustments might be a solution .\nlooking @ deal # 109670 , the terms indicates that hplc buys 2 . 5 % of saxet\nvolumes . should i assume that i should take the total flow amount ( per day\nfor this deal ticket ) and adjust the expected volumes to reflect a nom that\nis 2 % of the daily flow versus the \" 1 \" that is currently nomed ?\nh - e - l - p ! ! !\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.467+0000", "entityId": 2087, "properties": {"text": "Subject: 98 - 9794 ( saxet )\nthe above meter is currently doing 13 . 0 on a 26 . 0 nom .\nplease take a look and see if nom adjustments might be a solution .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.472+0000", "entityId": 2088, "properties": {"text": "Subject: copanos changes for the 4 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 04 / 04 / 2000\n09 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 04 / 04 / 2000 08 : 54 : 50 am\nto : \" ami chokshi \"\ncc :\nsubject : copanos changes for the 4 th\n( see attached file : hpl - apr . xls )\n- hpl - apr . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.476+0000", "entityId": 2089, "properties": {"text": "Subject: issues with measurement ( gary anderson ' s group )\nit seems to me that there have been several issues recently involving data\nfeeds from measurement . regardless of the issue , you all seem to express the\nsame concern : a lack of accountability , no sense of urgency . . . . .\ni brought this up in brian ' s staff meeting yesterday , in hopes to get some\nideas on where to go to get some results . rita , i understaood from you that\ngary has returned your call and you are setting a meeting for later this\nweek . please include me in the meeting . if we don ' t get what we need , it\nwas recommended that i talk with ellis sturn . if that doesn ' t work , brian\nwill talk with rod hayslett . rita : prior to the meeting , would you please\ncoordinate the meeting and agenda , consolidating all issues / concerns ? yvette\ncan set the meeting .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.481+0000", "entityId": 2090, "properties": {"text": "Subject: new financial operations contacts for energy operations\ni just wanted to give all of you an update to my previous message on the\nreplacement for brian heinrich in financial operations . jennifer blay was\ngoing to be his replacement ; however , jennifer has accepted a position in\nenergy operations working for jeff sorenson . the newest addition to the\nfinancial operations staff is holly heath who joins us from bank united . she\nis located at eb - 2419 a and can be reached at ext . 3 - 5843 . in addition , sarah\nbrown will transfer as manager of the consolidated reporting team from the\ngas and transmission assets team in the business analysis and reporting\norganization . sarah is located at eb - 2419 b and can be reached at ext . 3 - 3417 .\nbrian will be helping to transition holly into her new responsibilities . as\nsuch , you will be receiving e - mails from brian during the next week or so .\nafter that , holly will begin to request information directly from you .\nplease join me in welcoming both holly and sarah into their new roles .\nthanks for your patience during the next few weeks . if you have any\nquestions , please do not hesitate to call me .\nlisa cousino\nx 3 - 6343", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.486+0000", "entityId": 2091, "properties": {"text": "Subject: enron methanol ; meter # : 988291\nthis is a follow up to the note i gave you on monday , 4 / 3 / 00 { preliminary\nflow data provided by daren } .\nplease override pop ' s daily volume { presently zero } to reflect daily\nactivity you can obtain from gas control .\nthis change is needed asap for economics purposes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.491+0000", "entityId": 2092, "properties": {"text": "Subject: re : enron methanol ; meter # : 988291\nrobert :\ni have updated the info at enron methanol per gas control ' s volumes ( via\nmeter overrides ) . i did not realize that ' s what you wanted when you handed\nme the \" sticky \" on monday . . . . . i thought you were just being informative .\nsorry about the confusion .\ncharlotte hawkins\nfrom : robert e lloyd 04 / 04 / 2000 03 : 23 pm\nto : charlotte hawkins / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : enron methanol ; meter # : 988291\nthis is a follow up to the note i gave you on monday , 4 / 3 / 00 { preliminary\nflow data provided by daren } .\nplease override pop ' s daily volume { presently zero } to reflect daily\nactivity you can obtain from gas control .\nthis change is needed asap for economics purposes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.495+0000", "entityId": 2093, "properties": {"text": "Subject: correction to 4 / 5 / 00 nominations for eastrans and nomination for\n4 / 6 / 00\nbeginning 2 : 00 pm on 4 / 5 / 00 nomination :\ndeliveries :\n0 mmbtu into eastrans\nredeliveries :\n0 mmbtu\nfor 4 / 6 / 00 , the nomination is as follows :\ndeliveries :\n0 mmbtu into eastrans\nredeliveries :\n0 mmbtu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.500+0000", "entityId": 2094, "properties": {"text": "Subject: correction to 4 / 4 & 4 / 5 nominations for eastrans\nas a result of the east texas plant problem late yesterday , the following is\nrevised nominations for eastrans for april 4 00 am on 4 / 5 / 2000 nomination :\ndeliveries :\n30 , 000 mmbtu into eastrans\nredeliveries :\n20 , 000 mmbtu into pg & e\n7 , 800 mmbtu from fuels cotton valley into hpl\n2 , 200 mmbtu into hpl ' s carwheel at carthage\n0 mmbtu into mobil beaumont at hsc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.505+0000", "entityId": 2095, "properties": {"text": "Subject: registration confirmation - my yahoo !\naccount information\nhelp\ndo not reply to this message . if you did not request this account , click\nhere .\nregistration confirmed - welcome to yahoo !\nthis message confirms your new account with yahoo ! .\n?\nyour yahoo ! id :\nmpfarmer\nyour email address :\ndfarmer @ enron . com\n?\nwhat if the email address listed above is incorrect or changes in the future ?\nplease keep your email contact current so we can help you in case you can ' t\naccess your yahoo ! account . to update your email address , first sign into\nmy yahoo ! or any other yahoo ! personalized service . then click on \" account\ninfo \" at the top of the page . ( if \" account info \" is not available , please\nclick on \" options \" first , then on \" account info . \" ) the field you need to\nchange is called \" alternate email address . \"\n?\nwhat can i do with my new yahoo ! id ?\nyahoo ! mail yahoo ! mail\nget your own yahoo . com email address yahoo ! auctions yahoo ! auctions\nbuy and sell for free . [ image ] yahoo ! chat\nchat with people from all over the world .\nyahoo ! calendar yahoo ! calendar\nkeep yourself organized . my yahoo ! my yahoo !\ncustomize the way you use the internet . yahoo ! games yahoo ! games\nnew and classic online games .\nyahoo ! travel yahoo ! travel\nreservations , tickets , discounts and information . yahoo ! shopping yahoo ! shopping\nsearch for your favorite products and brands and compare prices . yahoo ! messenger yahoo !\nmessenger\nget notified when you have new mail and send instant messages .\nshow me more . . .\nthank you for signing up at yahoo !\n?\nwhat if i didn ' t request this account ?\nplease click here if you didn ' t request it or no longer wish to have it . if\nyou are then prompted for the deletion key , please cut and paste the\nfollowing to the text box as requested on the deletion page :\nyou could also reply to this email ( and make sure to copy this entire email\nin your reply ) with remove as the subject line .\n[ 192 . 152 . 140 . 9 ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.509+0000", "entityId": 2096, "properties": {"text": "Subject: your mom\nremember me ? i ' m the one who loved you so much that i gave my very best at\nraising you . and now i ' m missing you so much . lacy & i can ' t understand why\nyou don ' t call to check on us & just to talk a while - - it doesn ' t count that\ntonya calls - - i didn ' t raise her . we want to hear your voice every once in a\nwhile . i know you work a lot , but you used to find time once a week . and\nthat ' s no excuse . you can schedule in a call to us . we ' re still your family\ntoo . we love you , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.514+0000", "entityId": 2097, "properties": {"text": "Subject: re : sitara release ( re : changes in global due to consent to\nassignment )\nvolume management should be fine with this change . all name changes will be\nstill attached to the original path of the buy / sell deal . the settlement\ngroup will have to make sure that the new name that is being added to the\ndeal has the appropriate ' statement group ' attached . other than that this\nchange should flow smoothly .\nthanks ,\nm . m .\nfrom : donna greif\n04 / 05 / 2000 01 : 18 pm\nto : kathryn bussell / hou / ect @ ect , robert cotten / hou / ect @ ect , mark\nmcclure / hou / ect @ ect , gary l payne / hou / ect , richard pinion / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , george smith / hou / ect @ ect , katherine l kelly / hou / ect @ ect ,\nrandall l gay / hou / ect @ ect , daren j farmer / hou / ect @ ect , edward\nterry / hou / ect @ ect\ncc : dave nommensen / hou / ect @ ect , diane e niestrath / hou / ect @ ect , carrie\nhollomon / hou / ect @ ect , bryce baxter / hou / ect @ ect , kathryn cordes / hou / ect @ ect ,\ndana daigle / corp / enron @ enron , elizabeth l hernandez / hou / ect @ ect , julie\nmeyers / hou / ect @ ect , b scott palmer / hou / ect @ ect , stephanie sever / hou / ect @ ect ,\ndianne j swiber / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , dianne\nseib / cal / ect @ ect , sylvia a campos / hou / ect @ ect , linda s bryan / hou / ect @ ect ,\nfaye ellis / hou / ect @ ect , donna consemiu / hou / ect @ ect , scott mills / hou / ect @ ect ,\nruss severson / hou / ect @ ect , martha stevens / hou / ect @ ect , karie\nhastings / hou / ect @ ect , regina perkins / hou / ect @ ect , imelda frayre / hou / ect @ ect ,\nwilliam e kasemervisz / hou / ect @ ect , hunaid engineer / hou / ect @ ect , steven\ngullion / hou / ect @ ect , larrissa sharma / hou / ect @ ect , thomas engel / hou / ect @ ect\nsubject : re : sitara release ( re : changes in global due to consent to\nassignment )\nfyi . . . .\nthis change went in for the deal validation group . it gives them the\nability to change counterparties names after bridge back .\nimpact to logistics - unify\nif a counterparty name change takes place to deals that have been bridge\nbacked , it could cause problems on edi pipes as that new counterparty name\nwill flow over to unify and repathing should eventually take place .\none problem may be with the imbalance data sets , which are not in production\nyet . . . . . . ( edi imbalance qtys would not match up to paths )\nthis may also cause an issue with the scheduled quantities ( especially where\nnominations were sent for entire month )\ncan ' t remember the rules on this one , but i think unify does have some safe\nguards ( idiot proofs ) to force re - pathing .\nunify does have the ability to over - ride duns numbers , yet would still cause\nan additional step for edi the scheduler would need to think through in order\nto get a clean quick response .\nwhat are ( if any ) impacts to vol mgt if counterparty name changes take\nplace ? ( prior periods ? re - pathing ? )\ni have a call into diane and dave both . after speaking w / them , hopefully i\ncan get a clear understanding of the true impact . i am sure we ' ll need to\nput some processes and procedures together for deal validation to follow when\nthese type of changes are needed .\nwill keep you posted .\nthanks ,\ndg\nfrom : thomas engel 04 / 05 / 2000 09 : 44 am\nto : kathryn cordes / hou / ect @ ect , dana daigle / corp / enron @ enron , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect , peggy\nhedstrom / cal / ect @ ect , dianne seib / cal / ect @ ect\ncc : sylvia a campos / hou / ect @ ect , linda s bryan / hou / ect @ ect , faye\nellis / hou / ect @ ect , donna consemiu / hou / ect @ ect , scott mills / hou / ect @ ect , russ\nseverson / hou / ect @ ect , martha stevens / hou / ect @ ect , karie hastings / hou / ect @ ect ,\nregina perkins / hou / ect @ ect , imelda frayre / hou / ect @ ect , william e\nkasemervisz / hou / ect @ ect , hunaid engineer / hou / ect @ ect , steven\ngullion / hou / ect @ ect , larrissa sharma / hou / ect @ ect , donna greif / hou / ect @ ect\nsubject : sitara release ( re : changes in global due to consent to assignment )\nregarding the ability to change counterparties on deals in sitara with\nconfirmed volumes - tom ' s words of caution :\nif someone calls you and wants to change a counterparty - we created the\nability for you to invalidate the deal - and\nthen change the counterparty - however - i did add a warning message :\n\" warning - changing counterparty on deal with confirmed volumes - make sure\npipeline allows this change . \"\nsome pipelines do not allow us to change counterparties after there is\nfeedback - i assume for the same reasons\nwe had this rule - it used to blow up our old scheduling systems\n( pre - unify ) . some pipelines will require a new\ndeal and we will have to zero out the old deal .\nbefore you make the change - make sure the logistics person is aware - just\nin case it causes problems with their\npipeline . sorry - i don ' t know which pipes these are - you will have to ask\nthe unify team .\nthere is one rule still in place - you can change from ena - im east to ena - im\nmarket east - but not from\nena - im texas to hplc - im hplc - when changing business units - they must be\nthe same legal entity .\n\" warning - not the same legal entity \"\nalso - beware of making contract and counterparty changes to service deals\n( transport capacity , storage , cash out ) .\nonce the deal is invalidated - there are no rules . don ' t forget - the items\nwere locked down for a reason .\nif you invalidate a service deal - and change the previously locked down\ndata that was validated - and someone used these\ndeals in unify - it is highly likely that the unify deals and paths created\nusing these deals will get corrupted . always check\nwith someone from unify to make sure no one used these deals for anything in\nunify .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thomas engel / hou / ect on 04 / 05 / 2000 09 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : scott mills on 04 / 04 / 2000 07 : 38 pm\nto : kathryn cordes / hou / ect @ ect , dana daigle / corp / enron @ enron , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect\ncc : steve jackson / hou / ect @ ect , thomas engel / hou / ect @ ect , sylvia a\ncampos / hou / ect @ ect , linda s bryan / hou / ect @ ect , faye ellis / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect\nsubject : sitara release ( re : changes in global due to consent to assignment )\nwith the release that was put out tuesday evening , deal validation should be\nable to change the counterparty on deals where the volume is something other\nthan expected ( e . g . confirmed , nominated , scheduled , etc . ) .\nin addition , this release will also capture \" near - time \" the contract changes\nthat are made in global . this means that need for server bounces will not be\nnecessary .\nnew / changes to contracts will show up without having to get out of deal\nmanager .\nnew counterparties , and new / changes to facilities will require getting out\nof all active sitara apps ( except for launch pad ) .\nonce out of all apps , start a new app - the respective information that you\nare looking for will appear .\ni mention \" near - time \" because we are constrained by the amount of time it\ntakes for the change in global data to trigger an alert for sitara who then\nupdates its information\nsrm ( x 33548 )\ncyndie balfour - flanagan @ enron\n04 / 04 / 2000 03 : 41 pm\nto : connie sutton / hou / ect @ ect , linda s bryan / hou / ect @ ect , kathryn\ncordes / hou / ect @ ect , scott mills / hou / ect @ ect , richard elwood / hou / ect @ ect , dave\nnommensen / hou / ect @ ect , kenneth m harmon / hou / ect @ ect , dana\ndaigle / corp / enron @ enron , kathryn cordes / hou / ect @ ect , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect , gayle\nhorn / corp / enron @ enron , brant reves / hou / ect @ ect , russell diamond / hou / ect @ ect ,\ndebbie r brackett / hou / ect @ ect , steve jackson / hou / ect @ ect\ncc :\nsubject : changes in global due to consent to assignment\nthe following changes will be made in the global contracts database due to\nreceipt of executed consent to assignment for the following contracts :\ncurrent counterparty name contract type contract # ' new ' counterparty\nname\nces - commonwealth energy services gisb 96029892 commonwealth energy\nservices\nces - samuel gary jr . & associates , inc gisb 96029302 samuel gary jr . &\nassociates\nces - south jersey gas company gisb 96029143 south jersey gas company\ncp name change and contract type correction ( contract type different than\nthat provided by ces )\nper ces\nces - southwest gas corporation 1 / 1 / 98 gisb 96029146\nper contract file\nces - southwest gas corporation 04 / 14 / 93 master purchase / sale interruptible\n( will edit global # 96029146 )\n&\nces - southwest gas corporation 12 / 01 / 94 master sale firm ( created new\nglobal record to accommodate this k , # 96037402 )\nplease note that southwest gas corporation has consented to the assignment of\nboth of these contracts .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.518+0000", "entityId": 2098, "properties": {"text": "Subject: fyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 05 / 2000 04 : 15\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n04 / 05 / 2000 03 : 42 pm\nto : tom acton / corp / enron @ enron\ncc : howard b camp / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject :\ntom ,\nplease see the attached file calculating the final wellhead production\nestimate for the month of april . this file has been updated with actual noms\nsent in via the producer .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.523+0000", "entityId": 2099, "properties": {"text": "Subject: walter o & g / superior april noms\ndo you still want me to hold off on these .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 05 / 2000 09 : 25\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n03 / 29 / 2000 04 : 44 pm\nto : tom acton / corp / enron @ enron , daren j farmer / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : walter o & g / superior april noms\ntom ,\ni recently received this nomination and the total package of gas for the\naforementioned changed as follows :\ncounterparty meter last nom latest nom chg .\nwalter o & g 9747 3 , 901 mmbtu / d 3 , 426 mmbtu / d ( 475 ) mmbtu / d\nwalter o & g 9787 1 , 604 mmbtu / d 1 , 713 mmbtu / d 109 mmbtu / d\nwalter o & g 9808 4 , 890 mmbtu / d 4 , 950 mmbtu / d 60 mmbtu / d\nsuperior natural gas 9741 2 , 783 mmbtu / d 2 , 570 mmbtu / d ( 213 ) mmbtu / d\ntotal change ( 519 ) mmbtu / d\ni ' ve made the change in my spreadsheet .\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.529+0000", "entityId": 2100, "properties": {"text": "Subject: deletion of your enrononline user id\npassword deletion\nit has been noted that many users have passwords which match or are similar\nto their user id ' s for internal enrononline applications ( stack manager ,\nproduct manager , eol reports ) .\nthis is a significant security concern . therefore , there will be a sweep of\nid ' s and passwords at the end of the day on thursday , april 5 . any user id ' s\nwhich have passwords similar to the user id will be subject to deletion .\nchanging your password\npasswords can be changed in either the stack manager or in eol reports .\nto change your password in the stack manager , once logged on , go to toolbar &\nselect \" help \" and then select \" change password \" .\nthe system will request you to enter your new password twice .\nto change your passsword in eol reports , open the reports application , log\nin , select \" options \" and \" change password \" . the system will request you to\nenter your new password twice . please note that the password change\nfunctionality within the reports application is new . if it does not appear on\nyour menu and you are running on a standalone machine , you will need to\nlogout at the windows level and then login again to receive the updated\nversion .\nif you have any questions , please call the enrononline help desk ( houston :\n713 853 4357 , london : + 44 20 7783 7783 )\nthank you for your assistance in preserving appropriate security .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.538+0000", "entityId": 2101, "properties": {"text": "Subject: buyback / deficiency deals worksheet\nplease make the following changes and redistribute your worksheet . thanks\n!\n1 ) . please update equistar \" swing \" sitara ticket # as : 156337 . equistar\n\" sale \" should reflect\n\" various \" due to the different deals associated with this\ncounterparty .\n2 ) . valero marketing & supply \" undertake \" sitara ticket # ' s are as follows :\nmtr . 981394 . . . . 148396\nmtr . 988018 . . . . 148381\nmtr . 981233 . . . . 148388\n3 ) . valero marketing\n981233 . . . 148384 ; 988018 . . . 148376", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.544+0000", "entityId": 2102, "properties": {"text": "Subject: buyback / deficiency deals worksheet\nplease make the following changes and redistribute your worksheet . thanks\n!\n1 ) . please update equistar \" swing \" sitara ticket # as : 156337 . equistar\n\" sale \" should reflect\n\" various \" due to the different deals associated with this\ncounterparty .\n2 ) . valero marketing & supply \" undertake \" sitara ticket # ' s are as follows :\nmtr . 981394 . . . . 148396\nmtr . 988018 . . . . 148381\nmtr . 981233 . . . . 148388\n3 ) . valero marketing & supply \" swing \" sitara ticket # ' s are as follows :\nmtr . 981394 . . . . . . 148391\nmtr . 988018 . . . . . . 148382\nmtr . 981233 . . . . . . 148386", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.549+0000", "entityId": 2103, "properties": {"text": "Subject: re : sitara release ( re : changes in global due to consent to\nassignment )\nfyi . . . .\nthis change went in for the deal validation group . it gives them the\nability to change counterparties names after bridge back .\nimpact to logistics - unify\nif a counterparty name change takes place to deals that have been bridge\nbacked , it could cause problems on edi pipes as that new counterparty name\nwill flow over to unify and repathing should eventually take place .\none problem may be with the imbalance data sets , which are not in production\nyet . . . . . . ( edi imbalance qtys would not match up to paths )\nthis may also cause an issue with the scheduled quantities ( especially where\nnominations were sent for entire month )\ncan ' t remember the rules on this one , but i think unify does have some safe\nguards ( idiot proofs ) to force re - pathing .\nunify does have the ability to over - ride duns numbers , yet would still cause\nan additional step for edi the scheduler would need to think through in order\nto get a clean quick response .\nwhat are ( if any ) impacts to vol mgt if counterparty name changes take\nplace ? ( prior periods ? re - pathing ? )\ni have a call into diane and dave both . after speaking w / them , hopefully i\ncan get a clear understanding of the true impact . i am sure we ' ll need to\nput some processes and procedures together for deal validation to follow when\nthese type of changes are needed .\nwill keep you posted .\nthanks ,\ndg\nfrom : thomas engel 04 / 05 / 2000 09 : 44 am\nto : kathryn cordes / hou / ect @ ect , dana daigle / corp / enron @ enron , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect , peggy\nhedstrom / cal / ect @ ect , dianne seib / cal / ect @ ect\ncc : sylvia a campos / hou / ect @ ect , linda s bryan / hou / ect @ ect , faye\nellis / hou / ect @ ect , donna consemiu / hou / ect @ ect , scott mills / hou / ect @ ect , russ\nseverson / hou / ect @ ect , martha stevens / hou / ect @ ect , karie hastings / hou / ect @ ect ,\nregina perkins / hou / ect @ ect , imelda frayre / hou / ect @ ect , william e\nkasemervisz / hou / ect @ ect , hunaid engineer / hou / ect @ ect , steven\ngullion / hou / ect @ ect , larrissa sharma / hou / ect @ ect , donna greif / hou / ect @ ect\nsubject : sitara release ( re : changes in global due to consent to assignment )\nregarding the ability to change counterparties on deals in sitara with\nconfirmed volumes - tom ' s words of caution :\nif someone calls you and wants to change a counterparty - we created the\nability for you to invalidate the deal - and\nthen change the counterparty - however - i did add a warning message :\n\" warning - changing counterparty on deal with confirmed volumes - make sure\npipeline allows this change . \"\nsome pipelines do not allow us to change counterparties after there is\nfeedback - i assume for the same reasons\nwe had this rule - it used to blow up our old scheduling systems\n( pre - unify ) . some pipelines will require a new\ndeal and we will have to zero out the old deal .\nbefore you make the change - make sure the logistics person is aware - just\nin case it causes problems with their\npipeline . sorry - i don ' t know which pipes these are - you will have to ask\nthe unify team .\nthere is one rule still in place - you can change from ena - im east to ena - im\nmarket east - but not from\nena - im texas to hplc - im hplc - when changing business units - they must be\nthe same legal entity .\n\" warning - not the same legal entity \"\nalso - beware of making contract and counterparty changes to service deals\n( transport capacity , storage , cash out ) .\nonce the deal is invalidated - there are no rules . don ' t forget - the items\nwere locked down for a reason .\nif you invalidate a service deal - and change the previously locked down\ndata that was validated - and someone used these\ndeals in unify - it is highly likely that the unify deals and paths created\nusing these deals will get corrupted . always check\nwith someone from unify to make sure no one used these deals for anything in\nunify .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thomas engel / hou / ect on 04 / 05 / 2000 09 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : scott mills on 04 / 04 / 2000 07 : 38 pm\nto : kathryn cordes / hou / ect @ ect , dana daigle / corp / enron @ enron , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect\ncc : steve jackson / hou / ect @ ect , thomas engel / hou / ect @ ect , sylvia a\ncampos / hou / ect @ ect , linda s bryan / hou / ect @ ect , faye ellis / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect\nsubject : sitara release ( re : changes in global due to consent to assignment )\nwith the release that was put out tuesday evening , deal validation should be\nable to change the counterparty on deals where the volume is something other\nthan expected ( e . g . confirmed , nominated , scheduled , etc . ) .\nin addition , this release will also capture \" near - time \" the contract changes\nthat are made in global . this means that need for server bounces will not be\nnecessary .\nnew / changes to contracts will show up without having to get out of deal\nmanager .\nnew counterparties , and new / changes to facilities will require getting out\nof all active sitara apps ( except for launch pad ) .\nonce out of all apps , start a new app - the respective information that you\nare looking for will appear .\ni mention \" near - time \" because we are constrained by the amount of time it\ntakes for the change in global data to trigger an alert for sitara who then\nupdates its information\nsrm ( x 33548 )\ncyndie balfour - flanagan @ enron\n04 / 04 / 2000 03 : 41 pm\nto : connie sutton / hou / ect @ ect , linda s bryan / hou / ect @ ect , kathryn\ncordes / hou / ect @ ect , scott mills / hou / ect @ ect , richard elwood / hou / ect @ ect , dave\nnommensen / hou / ect @ ect , kenneth m harmon / hou / ect @ ect , dana\ndaigle / corp / enron @ enron , kathryn cordes / hou / ect @ ect , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect , gayle\nhorn / corp / enron @ enron , brant reves / hou / ect @ ect , russell diamond / hou / ect @ ect ,\ndebbie r brackett / hou / ect @ ect , steve jackson / hou / ect @ ect\ncc :\nsubject : changes in global due to consent to assignment\nthe following changes will be made in the global contracts database due to\nreceipt of executed consent to assignment for the following contracts :\ncurrent counterparty name contract type contract # ' new ' counterparty\nname\nces - commonwealth energy services gisb 96029892 commonwealth energy\nservices\nces - samuel gary jr . & associates , inc gisb 96029302 samuel gary jr . &\nassociates\nces - south jersey gas company gisb 96029143 south jersey gas company\ncp name change and contract type correction ( contract type different than\nthat provided by ces )\nper ces\nces - southwest gas corporation 1 / 1 / 98 gisb 96029146\nper contract file\nces - southwest gas corporation 04 / 14 / 93 master purchase / sale interruptible\n( will edit global # 96029146 )\n&\nces - southwest gas corporation 12 / 01 / 94 master sale firm ( created new\nglobal record to accommodate this k , # 96037402 )\nplease note that southwest gas corporation has consented to the assignment of\nboth of these contracts .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.554+0000", "entityId": 2104, "properties": {"text": "Subject: re : march preliminary ledgers\ntry this one guys , the last one was distorted .\napologies ,\ny\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n04 / 05 / 2000 03 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nholly heath\n04 / 05 / 2000 03 : 51 pm\nto : yvette g connevey / corp / enron @ enron\ncc : brenda f herod / hou / ect @ ect\nsubject : re : march preliminary ledgers\nsorry yvette , try this one !\nenron north america corp .\nfrom : yvette g connevey 04 / 05 / 2000 03 : 49 pm\nto : holly heath / corp / enron @ enron\ncc :\nsubject : re : march preliminary ledgers\nholly ,\nthis spreadsheet seems to have errors in every cell . can you help ?\nyvette\nx 3 . 5953\nholly heath\n04 / 05 / 2000 03 : 25 pm\nto : brenda f herod / hou / ect @ ect\ncc : yvette g connevey / corp / enron @ enron\nsubject : march preliminary ledgers\nattached are your preliminary march ledgers . please review and have any\nchanges to me by noon friday , april 7 th . if you have any questions , please\ncall me at @ 3 - 5843 . thanks so much .\nholly heath", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.559+0000", "entityId": 2105, "properties": {"text": "Subject: k ' s needed @ 98 - 1534 and 98 - 6725\n98 - 1534 is on the 215 k for 3 / 2000 but is only good for 3 / 1 - 3 / 1 in sitara ,\non deal # 163005 . can you see if it is o . k . to extend the deal for the rest\nof the month ? it has flow every day after the lst .\n98 - 6725 is also on the 215 k for 3 / 2000 . the sitara deal # is 214948 and\ncovers every day except for day 16 . can you also see if it is o . k . to extend\nthe deal to cover this day ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.564+0000", "entityId": 2106, "properties": {"text": "Subject: re : correction to 4 / 5 / 00 nominations for eastrans and nomination\nfor 4 / 6 / 00\nthis is the latest update via a verbal agreement between chad cass and darren\nfarmer . . .\napril 5\neffective 9 : 00 am the nominations and redeliveries are \" 0 \"\nthe fuels cotton valley volume of 7800 mmbtu will be purchased by hpl at gas\ndaily ( hsc - 5 ) .\napril 6\neffective 9 : 00 am the nominations and redeliveries are \" 0 \"\nthe fuels cotton valley volume of 7800 mmbtu will be purchased by hpl at\ngas\ndaily ( hsc - 5 ) .\napril 7\nuntil further notice the nominations and redeliveries will be at \" 0 \"\nfuels cotton valley gas will be purchased by hpl at a \" to be determined\nprice . \" * *\n* * darren - please give me a call so we can discuss the pricing for the fcv\ngas .\nif anyone has any questions please feel free to give me a call .\nthanks ,\nchad cass\n713 - 627 - 6202\nmarta k henderson\n04 / 06 / 2000 07 : 49 am\nsent by : marta k henderson\nto : stacey . neuweiler @ enron . com , dfarmer @ enron . com , briley @ enron . com\ncc : william e . speckels / gcs / cec / pec @ pec , chad w . cass / gcs / cec / pec @ pec ,\ndarrel\nf . bane / easttexas / pefs / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , cheryl l . horning / gcs / cec / pec @ pec ,\njulia\na . mohn / gcs / cec / pec @ pec , dora j . levy / gcs / cec / pec @ pec , bruce\nmcmills / ftworth / pefs / pec @ pec , sharon beemer / ftworth / pefs / pec @ pec\nsubject : correction to 4 / 5 / 00 nominations for eastrans and nomination for\n4 / 6 / 00\nbeginning 2 : 00 pm on 4 / 5 / 00 nomination :\ndeliveries :\n0 mmbtu into eastrans\nredeliveries :\n0 mmbtu\nfor 4 / 6 / 00 , the nomination is as follows :\ndeliveries :\n0 mmbtu into eastrans\nredeliveries :\n0 mmbtu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.569+0000", "entityId": 2107, "properties": {"text": "Subject: hr performance objectives binders\ngood morning ( afternoon ) ,\ntoday , everyone should have received a binder . some were placed in your mail\nslots and others were hand delivered . if you did not receive a binder , please\nemail or call me for one to be delivered to you .\nthank you ,\noctavia\nx 78351", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.574+0000", "entityId": 2108, "properties": {"text": "Subject: i spoke with the person who confirms pg & e on our side , and she said that\nbrian agrees with our ( tufco and ena ) numbers for march .\nalso ,\nfor days 1 - 5 , you ' ve taken :\niferc 160 , 000\nenron 110 , 625\ngd 0\nagree ?\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.580+0000", "entityId": 2109, "properties": {"text": "Subject: re : sitara release ( re : changes in global due to consent to\nassignment )\nchanging counterparty names on sitara deal tickets has absolutely no impact\nto any downstream processes .\ni hope the following will give more clarification .\nlet me know if you have any questions or need more detail !\nthanks ,\ndg 3 - 9517\nsitara / unify - process\n* scenario - counterparty name changes on sitara deal ticket after deal had\nbeen pathed , scheduled & bridged back from unify .\n* impact - zero impact to logistics & volume management , absolutely\nharmless . settlements has process in place to eliminate issues .\n* process -\ncounterparty a in sitara changes to counterparty b .\nctprty a was on original path sent to pipeline .\nthe new name ( ctprty b ) does bridge over to unify .\nctprty a remains at the path level in unify ( gui display does not change )\nctprty b is now displayed at the deal level in unify . the field is now\nhighlighted to indicate a change occurred . ( gui display changes only at high\nlevel , not on path )\nthe scheduler has choice to repath ( if necessary ) , or not re - path\nif re - pathing occurs , the new counterparty name will be displaced on new path\nunify pushes back the deal number & meter to sitara ( not ctprty info )\nbalancing works on deal number & meter only ( not ctprty info )\nthe confirmation desk utilizes the information in sitara ( where all\ninformation is correct )\nvolume management utilizes the information in unify for pipeline tie - out .\n( all information sent to pipeline is correct at the path level and will match\nup perfectly )\nsettlements utilizes information in unify .\nsettlements recognizes that changed ctprty names changes contracts , which\nwould create two notification entries\nif invoice did happen to go out to wrong ctprty , re - draft would occur .\n( note : there was an issues discovered on reports which it is correcting now )\nautonoms \" tom ' s words of warning \" -\npreviously there was an issue when counterparty name changes took place after\ndeals were pathed and nominated . basically it would change a key on an edi\npath ( duns number ) not affecting any other of the information already\nnominated to the pipeline . if the scheduler re - nominated , data at the\npipeline would get doubled up and the scheduler would have no way to correct\nthe problem . in most cases , the schedulers would have to get the pipeline to\nmanually cut the original nominated volume . this is not an issue with unify\n( as explained above ) .\n( dave - feel free to chime in if i left anything out . )\nfrom : donna greif\n04 / 05 / 2000 01 : 18 pm\nto : kathryn bussell / hou / ect @ ect , robert cotten / hou / ect @ ect , mark\nmcclure / hou / ect @ ect , gary l payne / hou / ect , richard pinion / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , george smith / hou / ect @ ect , katherine l kelly / hou / ect @ ect ,\nrandall l gay / hou / ect @ ect , daren j farmer / hou / ect @ ect , edward\nterry / hou / ect @ ect\ncc : dave nommensen / hou / ect @ ect , diane e niestrath / hou / ect @ ect , carrie\nhollomon / hou / ect @ ect , bryce baxter / hou / ect @ ect , kathryn cordes / hou / ect @ ect ,\ndana daigle / corp / enron @ enron , elizabeth l hernandez / hou / ect @ ect , julie\nmeyers / hou / ect @ ect , b scott palmer / hou / ect @ ect , stephanie sever / hou / ect @ ect ,\ndianne j swiber / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , dianne\nseib / cal / ect @ ect , sylvia a campos / hou / ect @ ect , linda s bryan / hou / ect @ ect ,\nfaye ellis / hou / ect @ ect , donna consemiu / hou / ect @ ect , scott mills / hou / ect @ ect ,\nruss severson / hou / ect @ ect , martha stevens / hou / ect @ ect , karie\nhastings / hou / ect @ ect , regina perkins / hou / ect @ ect , imelda frayre / hou / ect @ ect ,\nwilliam e kasemervisz / hou / ect @ ect , hunaid engineer / hou / ect @ ect , steven\ngullion / hou / ect @ ect , larrissa sharma / hou / ect @ ect , thomas engel / hou / ect @ ect\nsubject : re : sitara release ( re : changes in global due to consent to\nassignment )\nfyi . . . .\nthis change went in for the deal validation group . it gives them the\nability to change counterparties names after bridge back .\nimpact to logistics - unify\nif a counterparty name change takes place to deals that have been bridge\nbacked , it could cause problems on edi pipes as that new counterparty name\nwill flow over to unify and repathing should eventually take place .\none problem may be with the imbalance data sets , which are not in production\nyet . . . . . . ( edi imbalance qtys would not match up to paths )\nthis may also cause an issue with the scheduled quantities ( especially where\nnominations were sent for entire month )\ncan ' t remember the rules on this one , but i think unify does have some safe\nguards ( idiot proofs ) to force re - pathing .\nunify does have the ability to over - ride duns numbers , yet would still cause\nan additional step for edi the scheduler would need to think through in order\nto get a clean quick response .\nwhat are ( if any ) impacts to vol mgt if counterparty name changes take\nplace ? ( prior periods ? re - pathing ? )\ni have a call into diane and dave both . after speaking w / them , hopefully i\ncan get a clear understanding of the true impact . i am sure we ' ll need to\nput some processes and procedures together for deal validation to follow when\nthese type of changes are needed .\nwill keep you posted .\nthanks ,\ndg\nfrom : thomas engel 04 / 05 / 2000 09 : 44 am\nto : kathryn cordes / hou / ect @ ect , dana daigle / corp / enron @ enron , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect , peggy\nhedstrom / cal / ect @ ect , dianne seib / cal / ect @ ect\ncc : sylvia a campos / hou / ect @ ect , linda s bryan / hou / ect @ ect , faye\nellis / hou / ect @ ect , donna consemiu / hou / ect @ ect , scott mills / hou / ect @ ect , russ\nseverson / hou / ect @ ect , martha stevens / hou / ect @ ect , karie hastings / hou / ect @ ect ,\nregina perkins / hou / ect @ ect , imelda frayre / hou / ect @ ect , william e\nkasemervisz / hou / ect @ ect , hunaid engineer / hou / ect @ ect , steven\ngullion / hou / ect @ ect , larrissa sharma / hou / ect @ ect , donna greif / hou / ect @ ect\nsubject : sitara release ( re : changes in global due to consent to assignment )\nregarding the ability to change counterparties on deals in sitara with\nconfirmed volumes - tom ' s words of caution :\nif someone calls you and wants to change a counterparty - we created the\nability for you to invalidate the deal - and\nthen change the counterparty - however - i did add a warning message :\n\" warning - changing counterparty on deal with confirmed volumes - make sure\npipeline allows this change . \"\nsome pipelines do not allow us to change counterparties after there is\nfeedback - i assume for the same reasons\nwe had this rule - it used to blow up our old scheduling systems\n( pre - unify ) . some pipelines will require a new\ndeal and we will have to zero out the old deal .\nbefore you make the change - make sure the logistics person is aware - just\nin case it causes problems with their\npipeline . sorry - i don ' t know which pipes these are - you will have to ask\nthe unify team .\nthere is one rule still in place - you can change from ena - im east to ena - im\nmarket east - but not from\nena - im texas to hplc - im hplc - when changing business units - they must be\nthe same legal entity .\n\" warning - not the same legal entity \"\nalso - beware of making contract and counterparty changes to service deals\n( transport capacity , storage , cash out ) .\nonce the deal is invalidated - there are no rules . don ' t forget - the items\nwere locked down for a reason .\nif you invalidate a service deal - and change the previously locked down\ndata that was validated - and someone used these\ndeals in unify - it is highly likely that the unify deals and paths created\nusing these deals will get corrupted . always check\nwith someone from unify to make sure no one used these deals for anything in\nunify .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thomas engel / hou / ect on 04 / 05 / 2000 09 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : scott mills on 04 / 04 / 2000 07 : 38 pm\nto : kathryn cordes / hou / ect @ ect , dana daigle / corp / enron @ enron , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect\ncc : steve jackson / hou / ect @ ect , thomas engel / hou / ect @ ect , sylvia a\ncampos / hou / ect @ ect , linda s bryan / hou / ect @ ect , faye ellis / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect\nsubject : sitara release ( re : changes in global due to consent to assignment )\nwith the release that was put out tuesday evening , deal validation should be\nable to change the counterparty on deals where the volume is something other\nthan expected ( e . g . confirmed , nominated , scheduled , etc . ) .\nin addition , this release will also capture \" near - time \" the contract changes\nthat are made in global . this means that need for server bounces will not be\nnecessary .\nnew / changes to contracts will show up without having to get out of deal\nmanager .\nnew counterparties , and new / changes to facilities will require getting out\nof all active sitara apps ( except for launch pad ) .\nonce out of all apps , start a new app - the respective information that you\nare looking for will appear .\ni mention \" near - time \" because we are constrained by the amount of time it\ntakes for the change in global data to trigger an alert for sitara who then\nupdates its information\nsrm ( x 33548 )\ncyndie balfour - flanagan @ enron\n04 / 04 / 2000 03 : 41 pm\nto : connie sutton / hou / ect @ ect , linda s bryan / hou / ect @ ect , kathryn\ncordes / hou / ect @ ect , scott mills / hou / ect @ ect , richard elwood / hou / ect @ ect , dave\nnommensen / hou / ect @ ect , kenneth m harmon / hou / ect @ ect , dana\ndaigle / corp / enron @ enron , kathryn cordes / hou / ect @ ect , elizabeth l\nhernandez / hou / ect @ ect , julie meyers / hou / ect @ ect , b scott palmer / hou / ect @ ect ,\nstephanie sever / hou / ect @ ect , dianne j swiber / hou / ect @ ect , gayle\nhorn / corp / enron @ enron , brant reves / hou / ect @ ect , russell diamond / hou / ect @ ect ,\ndebbie r brackett / hou / ect @ ect , steve jackson / hou / ect @ ect\ncc :\nsubject : changes in global due to consent to assignment\nthe following changes will be made in the global contracts database due to\nreceipt of executed consent to assignment for the following contracts :\ncurrent counterparty name contract type contract # ' new ' counterparty\nname\nces - commonwealth energy services gisb 96029892 commonwealth energy\nservices\nces - samuel gary jr . & associates , inc gisb 96029302 samuel gary jr . &\nassociates\nces - south jersey gas company gisb 96029143 south jersey gas company\ncp name change and contract type correction ( contract type different than\nthat provided by ces )\nper ces\nces - southwest gas corporation 1 / 1 / 98 gisb 96029146\nper contract file\nces - southwest gas corporation 04 / 14 / 93 master purchase / sale interruptible\n( will edit global # 96029146 )\n&\nces - southwest gas corporation 12 / 01 / 94 master sale firm ( created new\nglobal record to accommodate this k , # 96037402 )\nplease note that southwest gas corporation has consented to the assignment of\nboth of these contracts .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.585+0000", "entityId": 2110, "properties": {"text": "Subject: re : producer connects on the 215 contract - april\nthanks for the info heidi . it ' s always good to have a second pair of eyes\nwith all these wells . i have done some research and all but one are hplc\ndeals and were not putting those on the gathering contract . i ' ll run this by\ndaren and make the changes if needed . please let me know if you see anything\nelse it just takes a minute to check on it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.590+0000", "entityId": 2111, "properties": {"text": "Subject: neither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\n3 tec energy corp . tten\nadrian resources adrrf\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncostilla energy cose\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nesenjay exploration esnj\nfirstworld communications inc . fwis\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nquanta services inc . pwr\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nsaxon petroleum , inc . sxn cn\nsouthwest royalties swroy\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntetonka drilling tdi\ntitan exploration texp\ntranscoastal marine services , inc . tcms\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in\nthe\npolicy for the benefit of any party other than ena / rac / egf , whether for\nhis / her own account or the account of any third party , where such position\nrelates to ( i ) any commodity , financial instrument , security , equity ,\nfinancial asset or liability which falls within such employee ' s\nresponsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.595+0000", "entityId": 2112, "properties": {"text": "Subject: re : equistar deal tickets\nare you still available to assist robert with entering the new deal tickets\nfor equistar ? after talking with bryan hull and anita luong , kyle and i\ndecided we only need 1 additional sale ticket and 1 additional buyback ticket\nset up .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 06 / 2000 12 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 04 / 06 / 2000 12 : 40 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nyou ' ll may want to run this idea by daren farmer . i don ' t normally add\ntickets into sitara .\ntina valadez\n04 / 04 / 2000 10 : 42 am\nto : robert e lloyd / hou / ect @ ect\ncc : bryan hull / hou / ect @ ect\nsubject : equistar deal tickets\nkyle and i met with bryan hull this morning and we decided that we only need\n1 new sale ticket and 1 new buyback ticket set up . the time period for both\ntickets should be july 1999 - forward .\nthe pricing for the new sale ticket should be like tier 2 of sitara # 156337\nbelow :\nthe pricing for the new buyback ticket should be like tier 2 of sitara\n# 156342 below :\nif you have any questions , please let me know .\nthanks ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.599+0000", "entityId": 2113, "properties": {"text": "Subject: re : buyback / deficiency deals worksheet\nthe equistar deal 156337 is the sale and swing all in one . i only have two\ndeals for this counterparty , one for the sale and one for the buyback .\nfrom : robert e lloyd 04 / 05 / 2000 02 : 23 pm\nto : julie meyers / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\nsubject : buyback / deficiency deals worksheet\nplease make the following changes and redistribute your worksheet . thanks\n!\n1 ) . please update equistar \" swing \" sitara ticket # as : 156337 . equistar\n\" sale \" should reflect\n\" various \" due to the different deals associated with this\ncounterparty .\n2 ) . valero marketing & supply \" undertake \" sitara ticket # ' s are as follows :\nmtr . 981394 . . . . 148396\nmtr . 988018 . . . . 148381\nmtr . 981233 . . . . 148388\n3 ) . valero marketing\n981233 . . . 148384 ; 988018 . . . 148376", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.604+0000", "entityId": 2114, "properties": {"text": "Subject: valero marketing & supply { pasadena } meter # : 1394 / sitara # :\n148396\nfyi . . . only !\npresently , i have scheduled a 10 . 0 m buyback at this interconnect due to the\nplant being down and\nthe status is day to day .\nthe 10 . 0 m buyback begun wednesday , april 5 th .\ngary , please let me know how you want this interconnect allocated { ie :\nforce majeure sitara # 148390 } .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.608+0000", "entityId": 2115, "properties": {"text": "Subject: re : texas nom , lp dba garrison , ltd\nthe ticket is in and the deal number is 237756 . it doesn ' t seem to want to\nflow over to mops at the moment though .\nvance l taylor @ ect\n04 / 05 / 2000 04 : 21 pm\nto : tom acton / corp / enron @ enron\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : texas nom , lp dba garrison , ltd\ntom ,\nthe following production commenced to flow on last week and a ticket should\nbe created and entered into sitara based on the following :\ncounterparty meter volumes price period\ntexas nom , lp ( dba\ngarrison , ltd . ) 9656 500 mmbtu / d 100 % gd less $ 0 . 10 3 / 27 - 3 / 31\nsusan will create a committed reserves firm ticket for the remaining term of\nthe deal once our geologists have gathered enough data to forecast the\nreserves of this well ; at such time , this ticket should be zeroed out .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.614+0000", "entityId": 2116, "properties": {"text": "Subject: 98 - 1600 & 98 - 6725 needing k ' s\ndaren ,\ni hate to be a pest but here ' s the deal on the above two meters :\n98 - 1600 sitara deal # 159194 expired on 2 / 29 / 2000 . the flow for 2 / 2000 was\non the 215 k . this meter ( del . ) flowed 53 . 863 for 3 / 2000 . there is no new\ndeal referenced , nor is the evergreen flag in effect .\n98 - 6725 sitara deal # 214948 expired 3 / 27 / 2000 . no evergreen and no new deal\nreferenced . this is a little premature but this meter is active monthly\nand i ' m thinking that it will flow for this month with no k being applied .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.618+0000", "entityId": 2117, "properties": {"text": "Subject: ces - carthage\ni decreased volumes at carthage due to a fire at the east texas plant . also ,\nthe co - owner volumes provided were given to me as gross volumes and should\nhave been net ( after pvr ) . i have made changes to reflect the lower volumes .\nthe total volume change is approx 5500 ( net ) . total carthage decreases from\n90565 to 85148 ( net ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.624+0000", "entityId": 2118, "properties": {"text": "Subject: 98 - 1188 k for 4 / 1 & 4 / 2 / 2000\ndaren ,\nthe above meter flowed on the 215 k for 3 / 2000 . i has flow for the first two\ndays of this month ( sitara deal # 205569 - deal ends 3 / 31 / 2000 ) .\ncan you please see if the deal can be extended or if the gas should be placed\non stranger ' s ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.630+0000", "entityId": 2119, "properties": {"text": "Subject: fw : men & cars\nbecause i ' m a man , when i lock my keys in the car i will\nfiddle with a wire clothes hanger and ignore your\nsuggestions that we call a road service until long after\nhypothermia has set in .\nbecause i ' m a man , when the car isn ' t running very well ,\ni will pop the hood and stare at the engine as if i know what\ni ' m looking at . if another man shows up , one of us will say\nto the other , \" i used to be able to fix these things , but now\nwith all these computers and everything , i wouldn ' t know\nwhere to start . \"\nbecause i ' m a man , when i catch a cold i need someone to\nbring me soup and take care of me while i lie in bed and moan .\nyou never get as sick as i do , so for you this isn ' t an issue .\nbecause i ' m a man , i can be relied upon to purchase basic\ngroceries at the store , like milk or bread . i cannot be expected\nto find exotic items like \" cumin \" or \" tofu \" or \" cardamom . \"\nfor all i know these are all the same thing .\nbecause i ' m a man , when one of our appliances stops working\ni will insist on taking it apart , despite evidence that this will just\ncost me twice as much once the repair person gets here and\nhas to put it back together .\nbecause i ' m a man , i must hold the television remote control\nin my hand while i watch tv . if the thing has been misplaced ,\ni may miss a whole show looking for it ( though one time i was\nable to survive by holding a calculator ) .\nbecause i ' m a man , i don ' t think we ' re all that lost , and no , i\ndon ' t think we should stop and ask someone . why would\nyou listen to a complete stranger - - i mean , how could he\nknow where we ' re going ?\nbecause i ' m a man , i do not want to visit your mother ,\nor have your mother come visit us , or talk to her when she\ncalls , or think about her any more than i have to .\nwhatever you got her for mother ' s day is okay , i don ' t\nneed to see it . and don ' t forget to pick up something for\nmy mom , too !\nbecause i ' m a man , you don ' t have to ask me if i liked the\nmovie . chances are , if you ' re crying at the end of it , i didn ' t .\nbecause i ' m a man , yes , i have to turn up the radio when\nbruce springsteen or the doors comes on , and then ,\nyes , i have to tell you every single time about how bruce\nhad his picture on the cover of time and newsweek the\nsame day , or how jim morrison is buried in paris and\neveryone visits his grave . please do not behave as if you\ndo not find this fascinating .\nbecause i ' m a man , i think what you ' re wearing is fine .\ni thought what you were wearing five minutes ago was fine ,\ntoo . either pair of shoes is fine . with the belt or without it\nlooks fine . your hair is fine . you look fine .\ncan we just go now ?\nbecause i ' m a man , and this is , after all , the 2000 ' s , i will\nshare equally in the housework . you just do the laundry ,\nthe cooking , the gardening , the cleaning , and the dishes . i ' ll\ndo the rest .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.635+0000", "entityId": 2120, "properties": {"text": "Subject: wellhead\nshoreline has sent a revision to trim down the 6722 meter from 570 to 428 .\ndaren i can ' t tell you what it flowed last month due to more than one\nperson is at that meter . we only have 30 nominated there now . let me know\nwhat you think . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.644+0000", "entityId": 2121, "properties": {"text": "Subject: enron net works\nit is becoming increasingly clear that the development of ecommerce will have\na significant and continuing impact on the conduct of business in a broad\narray of industries . through enrononline , enron has quickly become a major\ncatalyst for the transition to the web in the gas and electric industries .\nenrononline has been an enormous success since its launch . since launch , we\nhave completed 67 , 043 transactions on line , with a total dollar value of over\n$ 25 billion . enrononline is now the largest ecommerce site in the world .\nwe believe that the competitive success of enrononline is due to one very\nspecific reason . in addition to providing a web - based platform for\ntransactions , enron acts as principal to provide direct liquidity to the\nsite . we stand ready at all times , in any market conditions , to buy and sell\nat the posted price . this converts a \u0001 & bulletin board \u0001 8 ( the more typical\necommerce concept ) into a true market . there are very few , if any ,\ncompetitors that can provide this capability .\nwe are increasingly convinced that this competitive advantage can be\ndramatically expanded to other products and other geographies . if we are\ncorrect , this could provide an enormous new opportunity for growth for enron .\naccordingly , we are initiating a major new effort to capture this\nopportunity . effective today we are creating a new business , enron net\nworks , to pursue new market development opportunities in ecommerce across a\nbroad range of industries . it is likely that this business will ultimately\nbe our fifth business segment , joining transmission mike\nmcconnell , chief operating officer ; and jeff mcmahon , chief commercial\nofficer . these individuals will comprise the office of the chairman for\nenron net works and remain on the executive committee of enron corp .\nreplacing greg whalley as president and chief operating officer of enron\nnorth america is dave delainey , who will also join enron \u0001 , s executive\ncommittee .\nglobal technology will remain intact but will now be a part of enron net\nworks . it will maintain all of the same businesses and services as it did as\nan enron global function . philippe bibi will remain the chief technology\nofficer for all of enron corp . and continues to be responsible for the\ndevelopment of worldwide technology standards and platforms .\nenrononline , headed by louise kitchen , will also remain intact and will now\nbe a part of enron net works . the success of enrononline enables us to\nutilize this site as a model as we explore other markets . in addition , the\nfollowing individuals are included in enron net works along with their\ncurrent ecommerce initiatives : harry arora , public financial securities ; jay\nfitzgerald , new markets identification ; bruce garner , metals ; and greg piper ,\npulp and paper .\nover the next several weeks we will complete staffing and organizational\ndesign and will provide full details on this exciting new business\nopportunity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.650+0000", "entityId": 2122, "properties": {"text": "Subject: re : equistar deal tickets\nhere is the information you requested .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 07 / 2000 02 : 23\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : kyle r lilly 04 / 07 / 2000 11 : 39 am\nto : tina valadez / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nit looks good to me .\ntina valadez\n04 / 07 / 2000 08 : 29 am\nto : kyle r lilly / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\ni need to have these tickets set up so the excess volumes will be priced\ncorrectly in unify . currently unify is adding all excess volume for each day\nand pricing the first 10 , 000 at a certain price and anything over 10 , 000 at a\ndifferent price . for example meter 1553 may have 5000 on the first , meter\n1384 may have 5000 , and meter 1552 may have 5000 . unify currently prices the\nfirst 10 , 000 at a certain price , and 5000 at a different price . this is\nincorrect because none of the meters exceeded 10 , 000 , each meter should be\npriced at the first tier level . robert needs to set up one additional sale\nticket and one additional buyback ticket , but he will not schedule gas to\nthese tickets . anita luong will move the volumes to the correct ticket when\nshe allocates the volumes each month . equistar receives manual invoices each\nmonth because they need to see the sale and the buyback on the same invoice ,\nand they also need to have each meter invoiced separately . i need to have\nthese tickets set up to clean up my unify draft invoices .\nthanks ,\ntina valadez\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 07 / 2000 08 : 13\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n04 / 06 / 2000 01 : 01 pm\nto : julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : equistar deal tickets\nare you still available to assist robert with entering the new deal tickets\nfor equistar ? after talking with bryan hull and anita luong , kyle and i\ndecided we only need 1 additional sale ticket and 1 additional buyback ticket\nset up .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 06 / 2000 12 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 04 / 06 / 2000 12 : 40 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nyou ' ll may want to run this idea by daren farmer . i don ' t normally add\ntickets into sitara .\ntina valadez\n04 / 04 / 2000 10 : 42 am\nto : robert e lloyd / hou / ect @ ect\ncc : bryan hull / hou / ect @ ect\nsubject : equistar deal tickets\nkyle and i met with bryan hull this morning and we decided that we only need\n1 new sale ticket and 1 new buyback ticket set up . the time period for both\ntickets should be july 1999 - forward .\nthe pricing for the new sale ticket should be like tier 2 of sitara # 156337\nbelow :\nthe pricing for the new buyback ticket should be like tier 2 of sitara\n# 156342 below :\nif you have any questions , please let me know .\nthanks ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.656+0000", "entityId": 2123, "properties": {"text": "Subject: pan energy marketing exchange settlement\nrobert -\nattached , please find our calculation sheet for feb . 2000 production . please\nreview it and let me know if you have any questions .\nat this time , it appears that we owe pan energy $ 56 , 562 . 68 .\nthis amount , however , does not include the re - delivery fuel charges from pg &\ne that will be passed back to pan energy .\nas soon as we receive the information from pg & e , we will bill you\naccordingly .\nthanks - katherine ( 713 ) 345 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.660+0000", "entityId": 2124, "properties": {"text": "Subject: nomination - tuesday , 4 / 11\nthis is to nominate 27 , 800 mmbtu / d for 4 / 11 into eastrans .\n20 , 000 mmbtu / d will be redelivered into pg & e , the rest into\nhpl from fuels cotton valley .\nwe plan to begin receiving the gas at 3 : 00 pm or so and take\nmore volume to average the nominated quantity for the day .\nas i indicated on the phone , it will also be necessary to\ndeliver more into pg & e after flow starts to average\nnominated quantity .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.665+0000", "entityId": 2125, "properties": {"text": "Subject: on call notes for weekend ; april 7 th thru april 9 th\nattached are the notes for weekend dated april 7 th thru april 9 th on the\ntexas desk .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.669+0000", "entityId": 2126, "properties": {"text": "Subject: calpine daily gas nomination\nas we spoke about by phone , here is the nomination , thanks . >\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.674+0000", "entityId": 2127, "properties": {"text": "Subject: oasis pipe line company\ni have three other contract which need to be terminated . i have termination\nletters effective october 22 , 1997 . please let me know if there are any\ndeals attached to these contracts before i terminate them in the system .\n1 . 96006408\n2 . 96006409\n3 . 96006412\nplease respond as soon as possible .\nmarlene hilliard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.678+0000", "entityId": 2128, "properties": {"text": "Subject: 98 - 6373\nhere i go again . . . . . . . . . . . . . . . . . . . .\n98 - 6373 , sitara deal # 128952 expired 3 / 31 / 2000 .\nflow for the following days are :\n4 / 1 . 461 decatherms\n4 / 2 . 453 \"\n4 / 3 . 62 \"\nthis meter has a 16 - day chart . don ' t know if more volumes will show up later .\nhelp ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.683+0000", "entityId": 2129, "properties": {"text": "Subject: re : coastal deal - with exxon participation under the project\nagreement\nthanks for the info !\nas greg mentioned in the staff meeting today , the intent is that this\nrestructured deal is papered effective 4 / 1 / 00 . the impact is potentially\nthat the gas is not pathed properly by counterparty or on the appropriate\ntransport / gathering agreements , etc . if any rates are changing , then those\nneed to be changed in our systems also . there may be other areas of changes\nalso - i ' m not attempting to list them all . rather i just want to make\npeople aware that retroactive deals can have impacts on the daily operations .\nthanks for the information .\npat / daren : can you get with mike and / or brian to determine the potential\nimpact , if any ? thanks .\nfrom : steve van hooser 04 / 10 / 2000 03 : 06 pm\nto : brenda f herod / hou / ect @ ect\ncc : michael c bilberry / hou / ect @ ect , brian m riley / hou / ect @ ect\nsubject : coastal deal - with exxon participation under the project agreement\nbrenda ,\nper your request , attached are the draft documents which will be used to\nfinalize the new gathering arrangment between hpl and coastal , the revenue\nsharing arrangement between exxon and hpl ( transaction agreement ) and the\nresidue gas purchase agreement between coastal , as seller and hpl as buyer\n( amendment to wellhead purchase agreeement ) .\ni do not have a copy of the processing agreement between exxon and coastal ,\nas such agreement does not involve us ( and i believe it is far from\nfinalized . the only other document that i plan to prepare is a termination\nagreement relative to the current liquifiables purchase agreement between\nexxon as purchaser and hpl as seller - - this termination will be affective as\nof 4 / 1 / 2000 .\nif i can be of any further assistance , please let me know .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.688+0000", "entityId": 2130, "properties": {"text": "Subject: nomination 4 / 12 / 2000\nthis is to nominate 75 , 000 mmbtu / d into eastrans from hpl for wed , 4 / 12 / 2000 .\n20 , 000 mmbtu / d will be redelivered into pg & e\n7 , 800 mmbtu / d will be redelivered into hpl from fuels cotton valley\n15 , 000 mmbtu / d into hpl ' s cartwhell at carthage\n17 , 200 mmbtu / d into mobil beumont @ hsc - $ . 0375\n15 , 000 mmbtu / d into mobil beaumont @ hsc - $ . 055\nsherry , i got your write - up and am working on it .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.693+0000", "entityId": 2131, "properties": {"text": "Subject: fw : special prayer request\n- - - - - original message - - - - -\nfrom : celestedeo @ aol . com\nsent : tuesday , april 11 , 2000 1 : 21 pm\nsubject : special prayer request\nhi ,\ni am coming to you with a very special prayer request . we have some good\nfriends here in nashville , mark and melanie burress and their one year old\nbaby gracie , who have recently received some devastating news . mark was\ndiagnosed in december with leukemia . his is normally a very slow spreading\nform of the disease but unfortunately his is spreading extremely fast . he\nalso has a rare dna type and only about 12 people on the bone marrow donor\nlist ( out of 4 . 5 million ) were possible matches and all have since been\nelimnated . we held a bone marrow drive in his behalf at church this past\nweekend and over 1200 people came to donate . this amazed the people running\nthe drive because they said they normally get a few hundred at the most .\nif a donor is not found by june his chances are very , very slim to live to\njuly . he has chosen to have his bone marrow transplant in houston at the\nanderson hospital so i am asking if there is anyone in houston who knows of\na\nstrong , supportive congregation near the hospital that they may attend ( when\npossible ) while they are there , that would be greatly appreciated . if a\ndonor is located , they say the transplant procedure is very difficult and he\nwon ' t be able to have any contact with his baby for several months due to\nhis\nimmune system being weakened . as you can imagine , this would put his wife\nin\na severe state of limbo , having to be primary caregiver to someone who is\nincapacitated and a baby without the two being able to be together .\nit is difficult to watch someone with so much to give and so much to live\nfor\nto be facing such a hard fight . please keep his family in your prayers and\ni\nknow if there is a miracle with marks ' name on it , god will provide it .\nif you could please pass this on to the chi sigs / regina list , every little\nprayer they get will be appreciated .\nthank you !\nceleste ( sasser ) ortega", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.697+0000", "entityId": 2132, "properties": {"text": "Subject: re : fyi - wellhead portfolio\nwho is considered to be on greg sharp ' s orig team ? if they have deals in the\nwellhead portfolio , do we need to move them out ? just double checking .\ndave\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 04 / 11 / 2000\n10 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 04 / 11 / 2000 10 : 09 am\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : re : fyi - wellhead portfolio\ngreat . keep in mind - some people continue to confuse \" wellhead portfolio \"\nwith \" deals done by producer services . \" all that should be in the wellhead\nportfolio is truly wellhead deals - not deals done by greg sharp ' s\norigination teams at competitive points . does that make sense ?\nenron capital management\nfrom : david baumbach 04 / 11 / 2000 09 : 54 am\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : fyi - wellhead portfolio\ni worked with tom acton last night to get the wellhead portfolio cleaned up .\ntom had a sheet from vance that we used to determine what deals should be in\nthe portfolio . i believe the portfolio is now correct . the sitara team will\nmove the deals we identified today .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.702+0000", "entityId": 2133, "properties": {"text": "Subject: re : equistar deal tickets\nfrom what i am understanding , we are going to need a separate deal for each\nmeter . tina is that right ?\njulie\ndaren j farmer\n04 / 11 / 2000 01 : 15 pm\nto : julie meyers / hou / ect @ ect , tina valadez / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect\nsubject : re : equistar deal tickets\ni have created deal tickets 241558 and 241560 for july 99 - march 00 based on\nthe info below . due to time constraints , i have not researched pricing and\nvolumes , i trust that the info supplied to me agrees with the contract .\nrobert - we need to get together tomorrow afternoon to set up april .\nd\njulie meyers\n04 / 11 / 2000 09 : 28 am\nto : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nwhat is going on about this deal ? can we get this resolved today ?\nrobert : who requested valero to be split out ?\nthanks !\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 04 / 11 / 2000 09 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n04 / 06 / 2000 01 : 01 pm\nto : julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : equistar deal tickets\nare you still available to assist robert with entering the new deal tickets\nfor equistar ? after talking with bryan hull and anita luong , kyle and i\ndecided we only need 1 additional sale ticket and 1 additional buyback ticket\nset up .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 06 / 2000 12 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 04 / 06 / 2000 12 : 40 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nyou ' ll may want to run this idea by daren farmer . i don ' t normally add\ntickets into sitara .\ntina valadez\n04 / 04 / 2000 10 : 42 am\nto : robert e lloyd / hou / ect @ ect\ncc : bryan hull / hou / ect @ ect\nsubject : equistar deal tickets\nkyle and i met with bryan hull this morning and we decided that we only need\n1 new sale ticket and 1 new buyback ticket set up . the time period for both\ntickets should be july 1999 - forward .\nthe pricing for the new sale ticket should be like tier 2 of sitara # 156337\nbelow :\nthe pricing for the new buyback ticket should be like tier 2 of sitara\n# 156342 below :\nif you have any questions , please let me know .\nthanks ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.707+0000", "entityId": 2134, "properties": {"text": "Subject: re : equistar deal tickets\nvalero was requested to be split since january 2000 by gary lamphier .\njulie meyers\n04 / 11 / 2000 09 : 28 am\nto : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nwhat is going on about this deal ? can we get this resolved today ?\nrobert : who requested valero to be split out ?\nthanks !\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 04 / 11 / 2000 09 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n04 / 06 / 2000 01 : 01 pm\nto : julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : equistar deal tickets\nare you still available to assist robert with entering the new deal tickets\nfor equistar ? after talking with bryan hull and anita luong , kyle and i\ndecided we only need 1 additional sale ticket and 1 additional buyback ticket\nset up .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 06 / 2000 12 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 04 / 06 / 2000 12 : 40 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nyou ' ll may want to run this idea by daren farmer . i don ' t normally add\ntickets into sitara .\ntina valadez\n04 / 04 / 2000 10 : 42 am\nto : robert e lloyd / hou / ect @ ect\ncc : bryan hull / hou / ect @ ect\nsubject : equistar deal tickets\nkyle and i met with bryan hull this morning and we decided that we only need\n1 new sale ticket and 1 new buyback ticket set up . the time period for both\ntickets should be july 1999 - forward .\nthe pricing for the new sale ticket should be like tier 2 of sitara # 156337\nbelow :\nthe pricing for the new buyback ticket should be like tier 2 of sitara\n# 156342 below :\nif you have any questions , please let me know .\nthanks ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.713+0000", "entityId": 2135, "properties": {"text": "Subject: re : equistar deal tickets\nwhat is going on about this deal ? can we get this resolved today ?\nrobert : who requested valero to be split out ?\nthanks !\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 04 / 11 / 2000 09 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntina valadez\n04 / 06 / 2000 01 : 01 pm\nto : julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : equistar deal tickets\nare you still available to assist robert with entering the new deal tickets\nfor equistar ? after talking with bryan hull and anita luong , kyle and i\ndecided we only need 1 additional sale ticket and 1 additional buyback ticket\nset up .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 04 / 06 / 2000 12 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 04 / 06 / 2000 12 : 40 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject : re : equistar deal tickets\nyou ' ll may want to run this idea by daren farmer . i don ' t normally add\ntickets into sitara .\ntina valadez\n04 / 04 / 2000 10 : 42 am\nto : robert e lloyd / hou / ect @ ect\ncc : bryan hull / hou / ect @ ect\nsubject : equistar deal tickets\nkyle and i met with bryan hull this morning and we decided that we only need\n1 new sale ticket and 1 new buyback ticket set up . the time period for both\ntickets should be july 1999 - forward .\nthe pricing for the new sale ticket should be like tier 2 of sitara # 156337\nbelow :\nthe pricing for the new buyback ticket should be like tier 2 of sitara\n# 156342 below :\nif you have any questions , please let me know .\nthanks ,\ntina valadez\n3 - 7548", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.718+0000", "entityId": 2136, "properties": {"text": "Subject: fyi - gas flow\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 11 / 2000 09 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" allen , john s . \" on 04 / 11 / 2000 08 : 34 : 41 am\nto : \" ' young , jackie ' \"\ncc :\nsubject : fyi - gas flow\nyou will see a change later today in gas flow , going from 15 + 5 = 20 to 15\ntotal for flow date 12 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.723+0000", "entityId": 2137, "properties": {"text": "Subject: king ranch\ni just spoke briefly with brian riley , who is working to restructure the knig\nranch contracts with exxon , and put coastal into the loop . yesterday i\nforwarded each of you an e - mail from steve van hooser which had drafts of\ncontracts attached . as i talked with brian , the king ranch set up as he is\nnegotiating will be simplified . the intent , as i understood it , is that we\nwill no longer buy at the wellhead . rather , coastal is entering into a a\ngathering agreement with hpl to buy at the wellhead and ship to the plant .\nhplc will buy at the tailgate of the plant , net of pvr . so there will not be\nfuture settlements with exxon on liquids . the paper has not been returned\nfrom coastal or exxon yet , but the deal is effective 4 / 1 / 00 . everything will\nbe under new agreements , with receipts and deliveries by different\ncounterparties . the gas flow continues the same , just under new contracts\nand different counterparties .\ndaren , pat and stella : daren , brian said he would get with you to discuss\nthe deal in further detail . please include pat and stella in the discussion\nalso . the contracts should be reviewed and understood to ensure proper\nscheduling . as i mentioned to greg sharp and brian , it is critical that we\nbe kept in the loop , especially on retroactive deals , as scheduling ,\ntransport rates and risk are affected .\nthanks to everyone for ensuring the communication lines are in place .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.728+0000", "entityId": 2138, "properties": {"text": "Subject: well head\nhere is the list of meter that i moved from the lst on from the 215 to the\ngathering . 4056 , 6480 , 6534 , 6614 , 6855 . these will be nomed to the\ngathering contract for next month also . when jackie renoms from the first\nyou ' ll have to release from the edi held .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.735+0000", "entityId": 2139, "properties": {"text": "Subject: meters\nafter talking to both vance taylor and julie meyers , only 5 of the 13 deals\nare committed reserve deals . if they are not committed reserve they ' re not\nin the im wellhead portfolio . the plan if everyone agrees , is to go ahead\nand move the 5 and re - path to them to the gathering and leave the other 13\non the 215 contract . here is a list of the ones to move and leave .\nmove to im wellhead re - path gathering\n984056 # 94120 cologne production company\n986480 # 114514 cokinos natural gas company\n986534 already repathed\n986614 # 130917 prize energy resorces lp\n986855 # 94120 cologne production company\nstay on hplc and 215 contract\n986347 # 234218 duke energy trading\n986751 # 229726 conerstone gas gathering co . inc .\n986888 # 126166 amoco trading comp .\n# 95610 amoco trading comp .\n986899 # 104382 highland energy company\n989602 # 229316 wagner & brown ltd\n989603 # 229467 vintage gas inc .\n989676 # 151669 cokinos natural gas company\n989711 # 229316 wagner & brown ltd .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.743+0000", "entityId": 2140, "properties": {"text": "Subject: lst rev apr . 2000 hpl nom\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 04 / 12 / 2000\n10 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 04 / 12 / 2000 10 : 41 : 40 am\nto : \" susan trevino ( e - mail ) \"\ncc : stretch brennan , knox westmoreland\n, kevin mclarney , \" taylor vance\n( e - mail ) \"\nsubject : lst rev apr . 2000 hpl nom\nhere ' s revised april 2000 ( effective 4 / 13 / 00 ) setup for josey ranch ( hpl\n# 989658 : using 1 . 071 btu / mcf )\n* gas deliveries into hpl\n9 , 100 mmbtu / d for kri ( decrease of\n2 , 000 mmbtu / d )\n1 , 900 mmbtu / d for texaco ( no net change )\n11 , 000 mmbtu / d into hpl ( \" net \" decrease of\n2 , 000 mmbtu / d )\nif you need any additional information , kcs ' field contact is stretch\nbrennan in victoria : 512 - 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.750+0000", "entityId": 2141, "properties": {"text": "Subject: copanos changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 04 / 12 / 2000\n02 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 04 / 12 / 2000 01 : 30 : 55 pm\nto : \" ami chokshi \"\ncc :\nsubject : copanos changes\n( see attached file : hpl - apr . xls )\n- hpl - apr . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.756+0000", "entityId": 2142, "properties": {"text": "Subject: brandywine meter # : 981225 ; march , 2000 activity\nattached is support that indicate gas flowed on a zero nomination during the\nmonth of march , 2000 .\nthere is no deal in place to allocate this gas flow .\nplease advise me how you want this activity allocated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.761+0000", "entityId": 2143, "properties": {"text": "Subject: february and march 2000 meter 5688\ndaren ,\nis fred ' s below concern something that you might be able to help us with ? i\nwas thinking that ( maybe ) the volumes from this meter might belong to hpl .\nthis is one of the meters that no longer go thru king ranch .\nthanks\n- jackie -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 12 / 2000 02 : 37\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n04 / 11 / 2000 10 : 29 am\nto : jackie young / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : february and march 2000 meter 5688\njackie :\nmeter 5688 is incorrectly scheduled to the hpl liquids contract\n012 - 41970 - 02 - 002 in march 2000 . also last month when you were out , robert\nremoved the volume from the liquids contract at this meter and temporarily\nput it on a strangers gas contract . if you could fix both months today and\nlet me know when it is corrected i would appreciate it .\nthanks ,\nfred\nfred boas\n02 / 16 / 2000 04 : 35 pm\nto : jackie young / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect , anita\nluong / hou / ect @ ect\nsubject : 1 / 2000 meters 5688 & 5801\njackie :\ni am new at the 3 rivers allocation so bear with me , i took this over from\nanita luong . in january 2000 , and going forward , please make sure that\nmeters 5688 and 5801 are not scheduled on the hpl liquids contract\n012 - 41970 - 02 - 002 . the contract is currently out of balance by the total\nvolume at these two meters so if you could fix this by early tomorrow morning\ni would appreciate it .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.765+0000", "entityId": 2144, "properties": {"text": "Subject: kingwood cove golf specials ! !\nwelcome & enjoy kingwood cove golf specials . please take advantage of the\nspecial offers . you will receive notices weekly or bi - weekly . if you no\nlonger wish to receive these messages , simply reply with your request .\nkeep it in the fairway .\n* * april e - mail specials * *\n* * 3 pay & 4 play * *\n4 play for the price of 3\nanytime - monday thru friday\nafter 12 pm - saturday , sunday & holidays\n( offer valid with purchase of cart & green fee per player )\nmust present e - mail invitation prior to registration .\nnot valid with sr / jr rates or other offers . expires 05 / 02 / 00\ncall now to book your tee - time . 281 - 358 - 1155 .\nor\n* * pick your partner / price * *\nweekday - anytime weekends after 12 pm\n2 play for $ 22 ea . 2 play for $ 24 ea .\n3 play for $ 20 ea . 3 play for $ 22 ea .\n4 play for $ 18 ea . 4 play for $ 20 ea .\n( monday thru friday ) ( saturday , sunday & holidays )\n( offer includes cart & green fee )\nmust present e - mail invitation prior to registration .\nnot valid with sr / jr rates , tournaments or other offers . expires 05 / 02 / 00\ncall now to book your tee - time . 281 - 358 - 1155 .\nor\n* * xl 2000 special * *\nmonday thru friday - anytime $ 20 per player\nsaturday , sunday & holidays - after 12 pm $ 30 per player\ngolf invitation good for up to 4 players .\nreceive 1 / 2 cart , green fee , range balls\nplus a sleeve of xl 2000 golf balls .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or tournaments . expires 05 / 02 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\n* * golf lesson special * *\nlessons save $ 15\nbuy two or more lessons and save $ 15 per lesson\nfine tune your swing now . expires 05 / 02 / 00 .\n- may spring clinics -\n( 6 hours of instruction for $ 75 )\nwhat ' s happening ?\n- senior tournament every monday morning\n- ladies league starting tuesday mornings\n- skins game every wednesday afternoon @ 1 : 00 pm\n- kingwood cove golf association monthly tournaments", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.771+0000", "entityId": 2145, "properties": {"text": "Subject: jake\nhey ! what did the doctor say about jake ? did they run the tests ? i ' m out\nnext week wed . - fri . for spring break . i want to bring lacy to see jake .\nwhen would be best ? tonya said the weekends were taken for a while . did she\nmean easter weekend too ? hope jake is doing better . you never did send me\nany videos of him & cole so i could see if i could download them . love , ma\nget your private , free email at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.779+0000", "entityId": 2146, "properties": {"text": "Subject: re : brandywine meter # : 981225 ; march , 2000 activity\nwe no longer have a standby deal with either oxychem or dupont / brandywine ,\nthe two counter parties behind the meter ,\ni recommend that we close the valve for now . i ' ll keep you updated .\nenron north america corp .\nfrom : gary a hanks 04 / 13 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect , robert e lloyd / hou / ect @ ect , pat\nclynes / corp / enron @ enron , earl tisdale / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , howard b camp / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , james mckay / hou / ect @ ect , gary anderson / gpgfin / enron @ enron\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nthere was no flow at meter 981225 for the month of march . the hms technician\ndid contact measurement once to get the volumes zeroed out but apparently he\nwill have to get with them again . i have notified the tech and he is in the\nprocess of doing this .\nthe meter is set on pressure control and the valve is open . gas control ' s\nunderstanding and the field ' s understanding is that at the time the\nbrandywine deal ended some sort of standby agreement was in place . if this\nis not the case please let me know and we will notify the plant and close the\nvalve .\nrobert ,\nin the future if you have meters like this where there is a small flow\nvolume without a nomination in place please check with earl and myself so we\ncan investigate before we get commercial involved .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 04 / 13 / 2000 12 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 04 / 12 / 2000 05 : 38 pm\nto : gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nhow is this meter set up ? why would it have flowed in march ? any ideas ? is\nit on pressure control ? if so , what ' s the set point ? i need to know before\ni can go to oxy and / or dupont and make a claim . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 04 / 12 / 2000\n05 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 04 / 12 / 2000 05 : 20 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nattached is support that indicate gas flowed on a zero nomination during the\nmonth of march , 2000 .\nthere is no deal in place to allocate this gas flow .\nplease advise me how you want this activity allocated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.783+0000", "entityId": 2147, "properties": {"text": "Subject: brandywine meter # : 981225 ; march , 2000 activity\nthere was no flow at meter 981225 for the month of march . the hms technician\ndid contact measurement once to get the volumes zeroed out but apparently he\nwill have to get with them again . i have notified the tech and he is in the\nprocess of doing this .\nthe meter is set on pressure control and the valve is open . gas control ' s\nunderstanding and the field ' s understanding is that at the time the\nbrandywine deal ended some sort of standby agreement was in place . if this\nis not the case please let me know and we will notify the plant and close the\nvalve .\nrobert ,\nin the future if you have meters like this where there is a small flow\nvolume without a nomination in place please check with earl and myself so we\ncan investigate before we get commercial involved .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 04 / 13 / 2000 12 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 04 / 12 / 2000 05 : 38 pm\nto : gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nhow is this meter set up ? why would it have flowed in march ? any ideas ? is\nit on pressure control ? if so , what ' s the set point ? i need to know before\ni can go to oxy and / or dupont and make a claim . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 04 / 12 / 2000\n05 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 04 / 12 / 2000 05 : 20 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nattached is support that indicate gas flowed on a zero nomination during the\nmonth of march , 2000 .\nthere is no deal in place to allocate this gas flow .\nplease advise me how you want this activity allocated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.788+0000", "entityId": 2148, "properties": {"text": "Subject: aspect resources - meter # 78033 , # 78032 - 3 / 00 production\ndaren ,\ni ' m not sure if you are the person that can make this change for me . if you\nare not , could you please let me know who i need to speak to .\nfor meter # 78033 and # 78032 for 3 / 00 production forward , this deal is set\nup under the wrong sitara # , therefore the volumes are not pulling in sitara .\nthe sitara # that it is currently attached to is # 149421 which this deal\nwas only for 1 / 00 production . the new sitara number that we should be using\nis\nsitara # 156387 ( for meter # 78033 ) and sitara # 156383 ( for meter # 78032\n) . i have attached an example to help see what i am talking about .\n( this was for 2 / 00 production )\ncould you please let me know when the change has been made or if there is\nsomething that i need to do .\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.793+0000", "entityId": 2149, "properties": {"text": "Subject: february and march 2000 meter 5688\nfred ,\ni spoke w / karry this morning on this issue and it appears as if this gas will\nbe purchased by hplc as wellhead .\ni ' m waiting for karry to phone me back , after he ' s spoken w / legal , before i\ngive you a concrete answer .\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 13 / 2000 01 : 31\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n04 / 11 / 2000 10 : 29 am\nto : jackie young / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : february and march 2000 meter 5688\njackie :\nmeter 5688 is incorrectly scheduled to the hpl liquids contract\n012 - 41970 - 02 - 002 in march 2000 . also last month when you were out , robert\nremoved the volume from the liquids contract at this meter and temporarily\nput it on a strangers gas contract . if you could fix both months today and\nlet me know when it is corrected i would appreciate it .\nthanks ,\nfred\nfred boas\n02 / 16 / 2000 04 : 35 pm\nto : jackie young / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , robert e lloyd / hou / ect @ ect , anita\nluong / hou / ect @ ect\nsubject : 1 / 2000 meters 5688 & 5801\njackie :\ni am new at the 3 rivers allocation so bear with me , i took this over from\nanita luong . in january 2000 , and going forward , please make sure that\nmeters 5688 and 5801 are not scheduled on the hpl liquids contract\n012 - 41970 - 02 - 002 . the contract is currently out of balance by the total\nvolume at these two meters so if you could fix this by early tomorrow morning\ni would appreciate it .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.797+0000", "entityId": 2150, "properties": {"text": "Subject: re : pg & e texas meeting\nrecap of pg & e texas meeting 4 / 12 / 00 .\nvolume issues :\n? sherlyn schumack will provide stacey neuweiler with volume variances by day\nand contract as soon as possible ( preferably the same day allocation is\nreceived ) .\n? stacey will notify sherlyn of correct volume or status if further research\nis necessary as soon as possible .\n? sherlyn will notify logistics , stacey , and lorraine of pg & e texas of\ninterconnect variances by day .\n? each group will respond promptly to ensure payment can be made through the\nsystem , eliminating manual line items on invoice .\n? charlotte hawkins will see what was confirmed on the outstanding\ninterconnect issue for 2 / 00 , and daren or charlotte will make the necessary\ncorrection .\nrate issues :\n? heidi withers will pull daily rates from pg & e texas bulletin board .\n? greg steagall will provide heidi with service verification ( s ) and the daily\nallocation summary received from pg & e texas during close , which shows rates\nfrom pg & e texas .\n? no action will be taken on rate variances where pg & e was paid per their\ninvoice . heidi has talked with brenda herod , and brenda is okay with this\ncourse of action .\n? there are four invoices from 1999 production where pg & e was underpaid , so\nheidi and greg will work to correct those months to pay pg & e correctly .\nthere are no open invoices in settlements .\n? it was noted that manual line items are not to be used to pay pg & e per\ntheir invoice in the future . we expect to correct issues in the system prior\nto the due date of the invoice unless there is a valid disagreement between\nena and pg & e . if ena has a valid disagreement , we will pay per ena \u0001 , s\nverification .\ndaren has put in a request for legal to transfer the ena transport contracts\nto hpl . this would eliminate stacey having to schedule the transport on ena\nas well as the desk to desk deal . it would also prevent sherlyn from having\nto allocate the transport expense contract and the brokered desk to desk\ndeal .\nhe has not had a response from legal yet .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.802+0000", "entityId": 2151, "properties": {"text": "Subject: re : brandywine meter # : 981225 ; march , 2000 activity\njust to set the record straight , measurement was not contacted nor informed\nthat the recorded flow was inaccurate . we are dependent on the field to\nverify measurement information , and absent information to the contrary , the\nrecorded volumes were published . the hms technician , charlie speigel , was\ncontacted today , and this issue was discussed and verified that he\nneglected to notify gms of the erroneous recorded flow . we will correct the\nstatements to reflect zero flow based on this discussion .\nfrom : gary a hanks @ ect 04 / 13 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect , robert e lloyd / hou / ect @ ect , pat\nclynes / corp / enron @ enron , earl tisdale / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , howard b camp / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , james mckay / hou / ect @ ect , gary anderson / gpgfin / enron @ enron\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nthere was no flow at meter 981225 for the month of march . the hms technician\ndid contact measurement once to get the volumes zeroed out but apparently he\nwill have to get with them again . i have notified the tech and he is in the\nprocess of doing this .\nthe meter is set on pressure control and the valve is open . gas control ' s\nunderstanding and the field ' s understanding is that at the time the\nbrandywine deal ended some sort of standby agreement was in place . if this\nis not the case please let me know and we will notify the plant and close the\nvalve .\nrobert ,\nin the future if you have meters like this where there is a small flow\nvolume without a nomination in place please check with earl and myself so we\ncan investigate before we get commercial involved .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 04 / 13 / 2000 12 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 04 / 12 / 2000 05 : 38 pm\nto : gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nhow is this meter set up ? why would it have flowed in march ? any ideas ? is\nit on pressure control ? if so , what ' s the set point ? i need to know before\ni can go to oxy and / or dupont and make a claim . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 04 / 12 / 2000\n05 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 04 / 12 / 2000 05 : 20 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : brandywine meter # : 981225 ; march , 2000 activity\nattached is support that indicate gas flowed on a zero nomination during the\nmonth of march , 2000 .\nthere is no deal in place to allocate this gas flow .\nplease advise me how you want this activity allocated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.808+0000", "entityId": 2152, "properties": {"text": "Subject: well head\nthis must be change day , shoreline would like to change meter 6886 from 490\nto 220 . daily meter actual show it ' s been running 398 on the lst and 2 nd\nand 6 mmbtu on the 3 rd . looks like it may be falling down . let me know\ndaren thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.812+0000", "entityId": 2153, "properties": {"text": "Subject: texaco 989826\nbill moore called this morning and said he sent in a nomination change for\nthe 15 th on for meter 989826 . he would like to go from 1100 to 1250 . the\ndaily meter volumes are ranging for the month from 1164 to 1334 bill feels\nthe 1250 will be the avg . let me know what you think daren . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.817+0000", "entityId": 2154, "properties": {"text": "Subject: ena organizational changes\nena \u0001 , s first quarter performance has been outstanding which has been achieved\nby the exceptional talent and hard work of all ena employees . ena \u0001 , s ability\nto quickly move people to new business ventures and market opportunities ,\nsuch as enron net works , reinforces the depth of talent in ena , our continued\ncommitment to encourage innovation and creativity in all things we do and our\nenthusiasm to support people in pursuing new ideas .\naccordingly , following the recently announced launch of enron net works and\nthe associated personnel movements , we are pleased to announce the following\nchanges within ena effective immediately .\njohn lavorato will be relocating from calgary to houston to oversee all ena\nrisk management and trading activities and will report to the office of the\nchairman . john will have direct responsibility for all natural gas , power ,\nemissions , equities and rates trading . as well , john will have direct\nresponsibility for the risk management and trading functions within the pulp\n& paper , coal and global risk ( weather and insurance ) businesses . otherwise ,\nthe pulp & paper , coal and global risk businesses will report to the office\nof the chairman . following john \u0001 , s departure from canada , we have asked rob\nmilnthorp to be the president of enron canada .\nfollowing the departure of greg piper , the industrial origination team will\nbe co - headed by jim ajello , rodney malcolm and edward ondarza who will report\nto the office of the chairman . jim , rodney and edward will work as a team to\nensure the continued growth of ena \u0001 , s large industrial capability .\nnotwithstanding their joint accountability , each will have a distinct focus\nand responsibility within the industrial group . jim ajello will focus on the\ncoverage and marketing efforts for all industrial segments except pulp and\npaper . edward ondarza will focus on our market making , coverage and\nmarketing efforts in the pulp and paper industry . rodney malcolm will focus\non product development , structuring and execution functions for all\nindustrial segments .\nwe have asked jeff donahue to oversee all ena corporate development and\nprincipal investing activities and will report to the office of the\nchairman . corporate development will continue to seek strategic acquisition\nopportunities in existing and new businesses . the principal investing group\nwill continue to focus on equity and venture capital syle investments in high\ngrowth business lines which are directly related to ena \u0001 , s core businesses or\nare significantly influenced by trends related to our business . given this\nchange , ray bowen will be solely responsible for the management of ena \u0001 , s\ncommercial transactions ( ctg ) group .\nwith the departure of ron slimp to ebs , scott tholan will be managing our\ncompetitive analysis and reporting group and will report to john lavorato .\nplease join us in congratulating all of the individuals in their new roles\nand responsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.822+0000", "entityId": 2155, "properties": {"text": "Subject: meter 1517\ndaren - i know you have been busy , but i left you a voice mail yesterday\nabout meter 1517 . there was flow of 14 mmbtus on mar . 1 . we have no deal at\nthe meter until mar . 14 . could you either set up a new deal to cover this\nflow or extend the deal from feb . ? february ' s deal number was 93804 . please\nlet me know today . allocations close today .\nthanks .\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.826+0000", "entityId": 2156, "properties": {"text": "Subject: re : coastal oil & gas usa , l . p . gas gathering agreement\nfrom : jackie morgan @ ect 04 / 13 / 2000 04 : 38 pm\nto : pat clynes / corp / enron @ enron , stella l morris / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , irene flynn / hou / ect @ ect , cheryl\ndudley / hou / ect @ ect\nsubject : coastal oil & gas usa , l . p . gas gathering agreement\nthe above referenced contract has been set up in global as a point specific ,\nintrastate transportation agreement .\nthe contract number is 98037831 . the effective date is april 1 , 2000 . the\ntransaction agreement is noted in the processing\nagreement under 96016936 .\nlet me know if you have any questions .\njackie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.831+0000", "entityId": 2157, "properties": {"text": "Subject: march business - meter 6490 - help\nno deal for march or april 2000 . . . . . . . . . . . . . . . . but i have flow . . . . . in\nmarch a total of 3804 flowed ( delivery ) and for april it ' s averaging about\n100 / day as a delivery . in february this was on the 213 contract , deal\n# 83088 as a receipt at this delivery meter . do we have a deal at this city\ngate to sell palacios this gas ?\nthanks ! ! !\ncharlotte", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.836+0000", "entityId": 2158, "properties": {"text": "Subject: yvette ooto\ni will be on vacation monday , april 17 th thru friday , april 21 st . elizabeth\nsoto will be backing me up on monday and ragayle pellum will back me up the\nremainder of the week .\nif you have any questions regarding brenda ' s calendar , need to make changes ,\nor need to set up a meeting with her please contact chantelle villanueva at\next 3 . 6279 .\nif you need assistance with anyone else ' s calendar who i support please\ncontact ragayle .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.841+0000", "entityId": 2159, "properties": {"text": "Subject: re : meters\nwill these be moved to the gathering contract in may ?\nenron north america corp .\nfrom : lisa hesse 04 / 14 / 2000 10 : 52 am\nto : heidi withers / hou / ect @ ect\ncc :\nsubject : meters\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa hesse / hou / ect on 04 / 14 / 2000 10 : 51 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ntom acton @ enron\n04 / 12 / 2000 12 : 56 pm\nto :\ncc : pat clynes / corp / enron\nsubject : meters\nafter talking to both vance taylor and julie meyers , only 5 of the 13 deals\nare committed reserve deals . if they are not committed reserve they ' re not\nin the im wellhead portfolio . the plan if everyone agrees , is to go ahead\nand move the 5 and re - path to them to the gathering and leave the other 13\non the 215 contract . here is a list of the ones to move and leave .\nmove to im wellhead re - path gathering\n984056 # 94120 cologne production company\n986480 # 114514 cokinos natural gas company\n986534 already repathed\n986614 # 130917 prize energy resorces lp\n986855 # 94120 cologne production company\nstay on hplc and 215 contract\n986347 # 234218 duke energy trading\n986751 # 229726 conerstone gas gathering co . inc .\n986888 # 126166 amoco trading comp .\n# 95610 amoco trading comp .\n986899 # 104382 highland energy company\n989602 # 229316 wagner & brown ltd\n989603 # 229467 vintage gas inc .\n989676 # 151669 cokinos natural gas company\n989711 # 229316 wagner & brown ltd .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.845+0000", "entityId": 2160, "properties": {"text": "Subject: memo and presentation from brian redmond\nfyi . i can ' t tell if all of you were included in this distribution or not .\nthis was discussed in brian ' s staff meeting today .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 04 / 17 / 2000\n04 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine benedict\n04 / 17 / 2000 03 : 12 pm\nto : phil lowry / ots / enron @ enron , jeffrey a shankman / hou / ect @ ect , raymond\nbowen / hou / ect @ ect , timothy j detmering / hou / ect @ ect , jeff donahue / hou / ect @ ect ,\njim fallon / hou / ect @ ect , max yzaguirre / na / enron @ enron , john j\nlavorato / corp / enron @ enron , scott josey / corp / enron @ enron , c john\nthompson / corp / enron @ enron , cliff baxter / hou / ect @ ect , susan\nskarness / hou / ect @ ect , janet r dietrich / hou / ect @ ect , james i\nducote / hou / ect @ ect , james a ajello / hou / ect @ ect , rodney malcolm / hou / ect @ ect ,\nedward ondarza / hou / ect @ ect , sally beck / hou / ect @ ect , christopher f\ncalger / pdx / ect @ ect , david oxley / hou / ect @ ect , david w delainey / hou / ect @ ect ,\njohn allario / hou / ect @ ect , patricia anderson / hou / ect @ ect , jeffrey a\naustin / hou / ect @ ect , harold bertram / hou / ect @ ect , michael c\nbilberry / hou / ect @ ect , ted c bland / hou / ect @ ect , brad blevins / hou / ect @ ect , greg\nbrazaitis / hou / ect @ ect , gary bryan / hou / ect @ ect , candace l\nbywaters / hou / ect @ ect , molly l carriere / hou / ect @ ect , lillian\ncarroll / hou / ect @ ect , carol carter / hou / ect @ ect , ginger causey / hou / ect @ ect , jim\ncoffey / hou / ect @ ect , robert cook / hou / ect @ ect , mark courtney / hou / ect @ ect ,\nrobert crockett / hou / ect @ ect , katherine crosswhite / hou / ect @ ect , christopher\ndaniel / hou / ect @ ect , luis davila / hou / ect @ ect , anita eisenbrandt / hou / ect @ ect ,\nrobert eickenroht / corp / enron @ enron , william c falbaum / hou / ect @ ect , sarah\nbrown / hou / ect @ ect , melissa graves / hou / ect @ ect , karen gruesen / hou / ect @ ect ,\njames r haden / hou / ect @ ect , nancy hall / hou / ect @ ect , john handley / hou / ect @ ect ,\nned higgins / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , mary jo\njohnson / hou / ect @ ect , kenneth w kaase / hou / ect @ ect , karry kendall / hou / ect @ ect ,\nmark knippa / hou / ect @ ect , gary w lamphier / hou / ect @ ect , leticia\nleal / hou / ect @ ect , catherine lewis / hou / ect @ ect , tom liewer / hou / ect @ ect , wayne\ne lightfoot / hou / ect @ ect , gerald lofton / hou / ect @ ect , randal\nmaffett / hou / ect @ ect , theresa mckinney / hou / ect @ ect , cheryl lantz\nmarshall / hou / ect @ ect , jennifer martinez / hou / ect @ ect , mirna mejia / hou / ect @ ect ,\nyvette miroballi / hou / ect @ ect , scott a monson / hou / ect @ ect , robert d\nmorgan / hou / ect @ ect , jackie nelson / hou / ect @ ect , lee l papayoti / hou / ect @ ect ,\nken parker / hou / ect @ ect , adriana peterson / hou / ect @ ect , meredith\npowers / hou / ect @ ect , audrey pullen / hou / ect @ ect , brian redmond / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , brian m riley / hou / ect @ ect , justin\nrostant / hou / ect @ ect , beth a ryan / hou / ect @ ect , barbara sargent / hou / ect @ ect ,\njohn scarborough / hou / ect @ ect , steve hpl schneider / hou / ect @ ect , gregory l\nsharp / hou / ect @ ect , tom shelton / hou / ect @ ect , sarah shimeall / hou / ect @ ect , jack\nsimunek / hou / ect @ ect , susan smith / hou / ect @ ect , chris sonneborn / hou / ect @ ect ,\ndan staines / hou / ect @ ect , katie stowers / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , ron tapscott / hou / ect @ ect , davis thames / hou / ect @ ect ,\ncynthia tovar / hou / ect @ ect , patrick wade / hou / ect @ ect , ruby\nwagoner / hou / ect @ ect , steve walton / hou / ect @ ect , rhonda washington / hou / ect @ ect ,\ngeorge weissman / hou / ect @ ect , doyle e white / hou / ect @ ect , johnnie\nwilliams / hou / ect @ ect , garry d wilson / hou / ect @ ect , jeffrey l\nwilson / hou / ect @ ect , jill t zivley / hou / ect @ ect , gary a hanks / hou / ect @ ect , lee\npinkston / hou / ect @ ect , michael c winders / hou / ect @ ect , sean j\nsmith / hou / ect @ ect , katherine benedict / hou / ect @ ect , sean j smith / hou / ect @ ect ,\nearl tisdale / hou / ect @ ect , sam garner / hou / ect @ ect , james mckay / hou / ect @ ect ,\nesther buckley / hou / ect @ ect , xochitl - alexis velasco / hou / ect @ ect , jim\nschwieger / hou / ect @ ect , mary l hamilton / hou / ect @ ect , edward d\ngottlob / hou / ect @ ect , kenny j soignet / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\nmichael w morris / hou / ect @ ect , thomas a martin / hou / ect @ ect , jennifer\nsabine / hou / ect @ ect , lee l papayoti / hou / ect @ ect , greg mcclendon / hou / ect @ ect ,\nelsa villarreal / hou / ect @ ect , lauri a allen / hou / ect @ ect , don\nbaldridge / corp / enron @ enron , silver breaux / hou / ect @ ect , esther\nbuckley / hou / ect @ ect , dan j bump / den / ect @ enron , james i ducote / hou / ect @ ect ,\nmelanie facundo / hou / ect @ ect , daren j farmer / hou / ect @ ect , amy\nfelling / den / ect @ enron , sam garner / hou / ect @ ect , jeff gilliam / corp / enron @ enron ,\ngeorge grant / hou / ect @ ect , charlotte hawkins / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , james hoff / den / ect @ enron , joshua m langford / hou / ect @ ect ,\naimee lannou / hou / ect @ ect , michael j legler / hou / ect @ enron , paul t\nlucci / den / ect @ enron , robert e lloyd / hou / ect @ ect , mandy mackinnon / hou / ect @ ect ,\nthomas a martin / hou / ect @ ect , greg mcclendon / hou / ect @ ect , jennifer\nmeador / hou / ect @ ect , michael w morris / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect , w tom byargeon / hou / ect @ ect , lee pinkston / hou / ect @ ect ,\ncarlos j rodriguez / hou / ect @ ect , william rome / hou / ect @ ect , kenneth\nseaman / hou / ect @ ect , scott sitter / den / ect @ enron , mary m smith / hou / ect @ ect ,\ntheresa staab / corp / enron @ enron , earl tisdale / hou / ect @ ect , mark van\nscoyk / corp / enron @ enron , charles barker varnell / den / ect @ enron , kimberly\nvaughn / hou / ect @ ect , emma kam welsch / hou / ect @ ect , jessica a\nwentworth / den / ect @ enron , james whitehead / corp / enron @ enron , mark\nwhitt / den / ect @ enron , jackie young / hou / ect @ ect , anthony austin / hou / ect @ ect ,\ncassandra pollack / corp / enron @ enron , kevin kuehler / corp / enron @ enron , eugene\npeabody / gco / enron @ enron , bob camp / gco / enron @ enron , rodney\nrogers / gco / enron @ enron , tom fry / gco / enron @ enron , dick danes / gco / enron @ enron ,\njoe zernicek / gco / enron @ enron , calvin dodd / gco / enron @ enron , bac thi\nly / gco / enron @ enron , robert geheb / gco / enron @ enron , valerie\nurbanek / corp / enron @ enron , j r fosdick / gco / enron @ enron , vicente\nsarmiento / gco / enron @ enron , reid hansen / gco / enron @ enron , gayle\npritchard / gco / enron @ enron , dan pribble / ots / enron @ enron , perry\nroberts / gco / enron @ enron , morris brassfield / ots / enron @ enron , john\ntowles / ots / enron @ enron , debbie boudar / ots / enron @ enron , david\nsinclair / ots / enron @ enron , johnny mcgee / ots / enron @ enron , roger\nwestbrook / ots / enron @ enron , hope acosta / ots / enron @ enron , ken\nparker / hou / ect @ ect , stephen perry / ots / enron @ enron , nick\ncocavessis / corp / enron @ enron , steve venturatos / hou / ect @ ect , glenn\ngregory / gco / enron @ enron , ty porche / gco / enron @ enron , don\nthomas / gco / enron @ enron , ronald surber / gco / enron @ enron , jacob\nkrautsch / gco / enron @ enron , gerry boyd / gco / enron @ enron , maurice\nrayburn / gco / enron @ enron , jesse logan / gco / enron @ enron , alan\nlocke / gco / enron @ enron , alan van blarcum / gco / enron @ enron , brenda f\nherod / hou / ect @ ect , pat clynes / corp / enron @ enron , troy denetsosie / hou / ect @ ect ,\nryan hinze / corp / enron @ enron , peter bennett / corp / enron @ enron , ron\ngreen / corp / enron @ enron , karl e atkins / ots / enron @ enron , robert\nrose / ots / enron @ enron , roger spiller / ots / enron @ enron , kelley\nmyers / gco / enron @ enron , kenny cooper / gco / enron @ enron , john\nmiska / gco / enron @ enron , barbara lewis / hou / ect @ ect , monica\njackson / corp / enron @ enron , michelle zhang / hou / ect @ ect , paul\nbieniawski / corp / enron @ enron , melinda gallishaw / ots / enron @ enron , lori\nhope / hou / ect @ ect , jana mills / hou / ect @ ect , john peyton / hou / ect @ ect , keith\nmacivor / corp / enron @ enron , justin rostant / hou / ect @ ect , rhonda\nwashington / hou / ect @ ect , alexia o pearce / hou / ect @ ect , jin guo / hou / ect @ ect\ncc :\nsubject : memo and presentation from brian redmond\nplease see the attached :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.851+0000", "entityId": 2161, "properties": {"text": "Subject: good friday\nfyi - the risk team will not be in the office on friday . pat is evaluating\nthe situation currently , and will decide later this week . let me know if you\nhave any questions or concerns .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 04 / 17 / 2000\n01 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : michael e moscoso 04 / 17 / 2000 11 : 12 am\nto : kenneth lay / corp / enron @ enron , jeff skilling / corp / enron @ enron , joseph w\nsutton / enron _ development @ enron _ development , ted murphy / hou / ect @ ect , rick\nbuy / hou / ect @ ect , wanda curry / hou / ect @ ect , wes colwell / hou / ect @ ect , greg\nwhalley / hou / ect @ ect , liz m taylor / hou / ect @ ect , cliff baxter / hou / ect @ ect , john\nj lavorato / corp / enron @ enron , jeffrey a shankman / hou / ect @ ect , jim\nfallon / hou / ect @ ect , gary hickerson / hou / ect @ ect , john sherriff / lon / ect @ ect ,\nmary thambiah / lon / ect @ ect , barry pearce / lon / ect @ ect , hugo\nmoreira / lon / ect @ ect , faith killen / hou / ect @ ect , brent a price / hou / ect @ ect ,\nbrenda f herod / hou / ect @ ect , jeffrey c gossett / hou / ect @ ect , kristin\nalbrecht / hou / ect @ ect , scott earnest / hou / ect @ ect , mark fondren / hou / ect @ ect ,\nkevin sweeney / hou / ect @ ect , sheila glover / hou / ect @ ect , clara\ncarrington / hou / ect @ ect , theresa t brogan / hou / ect @ ect , scott\nmills / hou / ect @ ect , scott pleus / hou / ect @ ect , john jacobsen / hou / ect @ ect , david\nmaxwell / hou / ect @ ect , d todd hall / hou / ect @ ect , steve ross / hou / ect @ ect , stacey\nw white / hou / ect @ ect , martha stevens / hou / ect @ ect , kenneth lee / hou / ees @ ees ,\njill erwin / hou / ect @ ect , vladimir gorny / hou / ect @ ect , rudi zipter / hou / ect @ ect ,\nbjorn hagelmann / hou / ect @ ect , christian lebroc / corp / enron @ enron , samantha t\ndavidson / hou / ect @ ect , frank hayden / corp / enron @ enron , nicholas j\nstephan / hou / ect @ ect , mark frank / hou / ect @ ect , allan\nford / enron _ development @ enron _ development , mason hamlin / hou / ect @ ect , richard\ncausey / corp / enron @ enron , jerald surface / hou / ees @ ees , c kyle\ngriffin / hou / ees @ ees\ncc : sally beck / hou / ect @ ect , chris abel / hou / ect @ ect , michael\nbenien / corp / enron @ enron , gary stadler / hou / ect @ ect , daniel\nfalcone / corp / enron @ enron , eugenio perez / hou / ect @ ect , jennifer\nnguyen / corp / enron @ enron\nsubject : good friday\non friday , april 21 , 2000 , the nymex and equity markets will be closed . as a\nresult , there will not be a daily position report issued for this date . the\nlondon office will be closed on friday , april 21 and the following monday ,\napril 24 . due to the fact that most risk groups are not planning on being\nin the office on friday , the dpr for thursday ' s business will be prepared and\nissued on monday , april 24 .\nplease contact me at extension 35242 or chris abel at extension 33102 if you\nhave any questions or comments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.859+0000", "entityId": 2162, "properties": {"text": "Subject: memo and presentation from brian redmond\nplease see the attached :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.867+0000", "entityId": 2163, "properties": {"text": "Subject: ena 202 and hpl 216 transport contracts needed at meter 378 for\nmarch 2000\ndaren - would there be a problem if i created a desk to desk for meter 378\nfor march 2000 going forward ? it would help out with the allocation\nprocess . the kind of deal i need is the total opposite of deal # 115101 .\nplease let me know if there is a problem . volume management would like this\ndone today . thanls .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 04 / 17 / 2000 10 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n04 / 17 / 2000 09 : 19 am\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : ena 202 and hpl 216 transport contracts needed at meter 378 for\nmarch 2000\naimee :\nthe ena 012 - 27049 - 02 - 002 and hpl 012 - 41500 - 02 - 016 contract are not at meter\n378 for march 2000 . i need for you to put the correct deal number for both\ncontracts in path manager .\nwe need the ena 202 contract as a delivery and the hpl 216 as a receipt .\nplease get the deal in the system this morning and let me know what the deal\nnumbers are and i will set up the arraignments and let you know what the\ntrack id ' s are .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.872+0000", "entityId": 2164, "properties": {"text": "Subject: cp & l data\nact _ flow is from our system . cp & l flow is from cp & l . all volumes are in mmcf .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.878+0000", "entityId": 2165, "properties": {"text": "Subject: calpine force majeure\nattached is a summary of the days calpine has claimed force majeure beginning\n7 / 1 / 99 .\nthe file is located in the 99 calpine directory under logistics if you wish to\nmake changes .\ni left cells blank where i could not locate the information .\nplease let me know if you have any questions .\nthanks ,\nkris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.883+0000", "entityId": 2166, "properties": {"text": "Subject: noms\ndaren , there seems to be two noms that are not in the system that need to be\nnomed from the first on . ames meter 5077 and senora meter 6686 . both had\nthckets that were not extended into april .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.888+0000", "entityId": 2167, "properties": {"text": "Subject: re : texas nom , lp dba garrison , ltd\nthe new ticket is 247087 .\nvance l taylor @ ect\n04 / 18 / 2000 07 : 36 pm\nto : tom acton / corp / enron @ enron\ncc : cynthia hakemack / hou / ect @ ect , julie meyers / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\nsubject : texas nom , lp dba garrison , ltd\ntom please create a sitara ticket based on the following information :\ncounterparty meter volumes price period\ntexas nom , lp ( dba\ngarrison , ltd . ) 9656 500 mmbtu / d 100 % if / hsc less $ 0 . 10 4 / 1 - 4 / 30\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 04 / 18 / 2000\n04 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n04 / 05 / 2000 04 : 21 pm\nto : tom acton / corp / enron @ enron\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : texas nom , lp dba garrison , ltd\ntom ,\nthe following production commenced to flow on last week and a ticket should\nbe created and entered into sitara based on the following :\ncounterparty meter volumes price period\ntexas nom , lp ( dba\ngarrison , ltd . ) 9656 500 mmbtu / d 100 % gd less $ 0 . 10 3 / 27 - 3 / 31\nsusan will create a committed reserves firm ticket for the remaining term of\nthe deal once our geologists have gathered enough data to forecast the\nreserves of this well ; at such time , this ticket should be zeroed out .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.893+0000", "entityId": 2168, "properties": {"text": "Subject: texas nom , lp dba garrison , ltd\nfyi this came out of the 9 th work day meeting .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 19 / 2000 07 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n04 / 18 / 2000 07 : 36 pm\nto : tom acton / corp / enron @ enron\ncc : cynthia hakemack / hou / ect @ ect , julie meyers / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\nsubject : texas nom , lp dba garrison , ltd\ntom please create a sitara ticket based on the following information :\ncounterparty meter volumes price period\ntexas nom , lp ( dba\ngarrison , ltd . ) 9656 500 mmbtu / d 100 % if / hsc less $ 0 . 10 4 / 1 - 4 / 30\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 04 / 18 / 2000\n04 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n04 / 05 / 2000 04 : 21 pm\nto : tom acton / corp / enron @ enron\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : texas nom , lp dba garrison , ltd\ntom ,\nthe following production commenced to flow on last week and a ticket should\nbe created and entered into sitara based on the following :\ncounterparty meter volumes price period\ntexas nom , lp ( dba\ngarrison , ltd . ) 9656 500 mmbtu / d 100 % gd less $ 0 . 10 3 / 27 - 3 / 31\nsusan will create a committed reserves firm ticket for the remaining term of\nthe deal once our geologists have gathered enough data to forecast the\nreserves of this well ; at such time , this ticket should be zeroed out .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.898+0000", "entityId": 2169, "properties": {"text": "Subject: eol application id and password\ndarren ,\nyour id and password for eol prod stack manager is as follows :\nid : dfarmer\npassword : dfarmer\nif you have any questions please feel free to contact me .\nthanks\ntara\nx 34523", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.903+0000", "entityId": 2170, "properties": {"text": "Subject: entex - may\ni would assume 40000 for midcon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.907+0000", "entityId": 2171, "properties": {"text": "Subject: southern union for may\n2100 83 st\n2100 port arthur\nthese are my estimates . the volumes for april at t - ville and colorado rs are\neither spot or april only . janet does not know about next month yet .\nso , 5000 total is a safe assumption .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.913+0000", "entityId": 2172, "properties": {"text": "Subject: tufco\nmy est . for tufco is the same as last may ' s ( 1999 ) nom .\niferc 40000 / d total of 1 , 240 , 000\nwb 30000 / d total of 930 , 000\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.918+0000", "entityId": 2173, "properties": {"text": "Subject: re : hpl delivery meter 1520\nheidi - there should be a deal ticket in sitara for this sale to engage , but\nit looks as though 12 / 99 was the last month a deal was entered\n( if / hsc + 1 . 00 ) . george / craig - could you guys coordinate who should be rolling\nthis deal or let us know if this gas should not be flowing ? heidi -\nhistorically we ' ve been charging $ . 60 / mm for this transport .\nenron north america corp .\nfrom : heidi withers 04 / 19 / 2000 10 : 27 am\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : hpl delivery meter 1520\ni am finding flow out there on hpl 215 for meter 1520 ( tx city coastal\nstates ) starting 4 / 1 / 00 ( actually , no volume was scheduled but looks like it\nhas been allocated since march 1 ) . did you want a premium rate for this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.923+0000", "entityId": 2174, "properties": {"text": "Subject: so union\ntville\n5031 at tville i - . 02 for may\ntotal 2100\n2100\n5031\n9231\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 04 / 19 / 2000\n03 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 04 / 19 / 2000 01 : 58 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject :\nsouthern union for may\n2100 83 st\n2100 port arthur\nthese are my estimates . the volumes for april at t - ville and colorado rs are\neither spot or april only . janet does not know about next month yet .\nso , 5000 total is a safe assumption .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.928+0000", "entityId": 2175, "properties": {"text": "Subject: so union\ncolorado river station 7000\ntotal 5031 + 2100 + 2100 + 7000 = 16231\n.\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 04 / 19 / 2000\n04 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 04 / 19 / 2000 03 : 54 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : so union\ntville\n5031 at tville i - . 02 for may\ntotal 2100\n2100\n5031\n9231\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 04 / 19 / 2000\n03 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 04 / 19 / 2000 01 : 58 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject :\nsouthern union for may\n2100 83 st\n2100 port arthur\nthese are my estimates . the volumes for april at t - ville and colorado rs are\neither spot or april only . janet does not know about next month yet .\nso , 5000 total is a safe assumption .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.932+0000", "entityId": 2176, "properties": {"text": "Subject: panenergy exchange deal - feb . 2000 production\ndaren and brian ,\nwould you like for me to confirm the conference call that duke has requested\nfor friday ?\ni am available at anytime for this discussion .\npls let me know .\nkatherine\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n04 / 19 / 2000 05 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" robert heilman \" on 04 / 19 / 2000 04 : 38 : 16 pm\nto : \" angela tonelli \" , \" janette b . knieser \"\n, \" donald s . perry \" ,\n\" bruce mcmills \" , \" chad w . cass \"\n, \" william e . speckels \" ,\n\" donna c . spencer \"\ncc : \" sharon beemer \" , katherine _ herrera @ enron . com\nsubject :\nwe are trying for a conference call on friday , april 21 at 10 : 30 central time .\nwe are going to be discussing the hpl buy / sell agreement . we are very close\nto\nagreeing on procedures except for one issue : the allocation of volumes at the\nfuels cotton valley delivery point and the valero delivery point . if you can\nnot make it please let me know asap . if anyone has any questions please feel\nfree to call me at 303 . 605 . 1804 . otherwise i will talk to all of you on\nfriday\nat 10 : 30 central .\nrobert", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.937+0000", "entityId": 2177, "properties": {"text": "Subject: re : hpl delivery meter 1520\ncheryl ,\ndo you have any documentation on a gas lift deal with coastal ? engage ? at\nmeter 098 - 1520 ? thanks . george x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 04 / 19 / 2000\n06 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauri a allen\n04 / 19 / 2000 02 : 40 pm\nto : heidi withers / hou / ect @ ect\ncc : william . c . falbaum @ enron . com , george weissman / hou / ect @ ect ,\ndfarmer @ enron . com\nsubject : re : hpl delivery meter 1520\nheidi - there should be a deal ticket in sitara for this sale to engage , but\nit looks as though 12 / 99 was the last month a deal was entered\n( if / hsc + 1 . 00 ) . george / craig - could you guys coordinate who should be rolling\nthis deal or let us know if this gas should not be flowing ? heidi -\nhistorically we ' ve been charging $ . 60 / mm for this transport .\nenron north america corp .\nfrom : heidi withers 04 / 19 / 2000 10 : 27 am\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : hpl delivery meter 1520\ni am finding flow out there on hpl 215 for meter 1520 ( tx city coastal\nstates ) starting 4 / 1 / 00 ( actually , no volume was scheduled but looks like it\nhas been allocated since march 1 ) . did you want a premium rate for this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.941+0000", "entityId": 2178, "properties": {"text": "Subject: josey ranch est . - - may 2000\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 04 / 20 / 2000\n04 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 04 / 20 / 2000 04 : 56 : 59 pm\nto : \" susan trevino ( e - mail ) \"\ncc : \" taylor vance ( e - mail ) \" , stretch brennan\n, knox westmoreland , kevin mclarney\nsubject : josey ranch est . - - may 2000\nthis is the estimated josey ranch nomination for the month of may\n2000 . the hpl nomination volume to be effective 5 / 1 / 2000 is :\n10 , 500 mmbtu / day for kcs resources\n1 , 950 mmbtu / day for texaco\n12 , 450 mmbtu / day total ( assumed btu factor of 1 . 070\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.946+0000", "entityId": 2179, "properties": {"text": "Subject: wellheads\ndaren , cody has a new well coming on friday behind the 985333 . right now\nwe don ' t have any nominations at that meter so i ' ll get with vance on that .\nthe increases according to the fax is going from 230 @ day to 1700 on friday\nand 1700 to 3200 on sat . prize energy would like to make some changes ,\nmeter\n4028 from 1270 to 820 has been flowing from 600 to 800 this\nmonth\n4965 from 112 to 45 has been flowing mid 80 ' s this month\nfrom 97 to 104", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.951+0000", "entityId": 2180, "properties": {"text": "Subject: re : hpl delivery meter 1520\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 04 / 20 / 2000 08 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : william c falbaum 04 / 19 / 2000 04 : 09 pm\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : re : hpl delivery meter 1520\nyou bastards ! you ' re taking 60 % of my profit ? this deal should be flowing\nand i recently did a deal ticket for may 00 going forward . i thought it was\non evergreen .\nplease advise .\ncraig\nlauri a allen\n04 / 19 / 2000 02 : 40 pm\nto : heidi withers / hou / ect @ ect\ncc : william . c . falbaum @ enron . com , george weissman / hou / ect @ ect ,\ndfarmer @ enron . com\nsubject : re : hpl delivery meter 1520\nheidi - there should be a deal ticket in sitara for this sale to engage , but\nit looks as though 12 / 99 was the last month a deal was entered\n( if / hsc + 1 . 00 ) . george / craig - could you guys coordinate who should be rolling\nthis deal or let us know if this gas should not be flowing ? heidi -\nhistorically we ' ve been charging $ . 60 / mm for this transport .\nenron north america corp .\nfrom : heidi withers 04 / 19 / 2000 10 : 27 am\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : hpl delivery meter 1520\ni am finding flow out there on hpl 215 for meter 1520 ( tx city coastal\nstates ) starting 4 / 1 / 00 ( actually , no volume was scheduled but looks like it\nhas been allocated since march 1 ) . did you want a premium rate for this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.957+0000", "entityId": 2181, "properties": {"text": "Subject: panenergy marketing march 2000 production\ndeal # 157288\nper our conversation yesterday afternoon , pls . separate the centena term deal\nfrom the spot deal in sitara for march 2000 production .\nalso , i need to have the price for the east texas redelivery changed in\nsitara from hs index $ - . 085 to hs index $ - . 0825 . this is per the contract\nthe price for this redelivery point .\nthanks\nkatherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.962+0000", "entityId": 2182, "properties": {"text": "Subject: calpine may\ntotal nom apr 81\nmar 79\nfeb 85\naverage of 3 : 82\ndoes this average represent a good estimate of the calpine may nom ?\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.971+0000", "entityId": 2183, "properties": {"text": "Subject: nomination 5 / 1 / 2000\nour nomination for 5 / 1 / 2000 from hpl into eastrans is 45 , 000 mmbtu / d .\nwe will nominate 37 , 200 into pg & e and 7 , 800 mmbtu / d from fuels cotton\nvalley .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.977+0000", "entityId": 2184, "properties": {"text": "Subject: shell houston open\nfirst come first serve :\ni have :\n10 shell houston open badges available . ( let ' s try to share these as best we\ncan . )\n10 one day passes\n2 invitations to tonights mardi gras party\n4 tickets to this saturday ' s beauty n blues concert .\nthis might be a good time to remind you that this week is secretary ' s week\n( since i am holding all the goodies ) just joking brenda .\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.982+0000", "entityId": 2185, "properties": {"text": "Subject: bammel easter egg hunt pictures\nthanks ,\nram tackett , ( mailto : rtackett @ abacustech . net )\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\n( 281 ) 651 - 7106 ; fax + 1 ( 281 ) 528 - 8636 web : http : / / www . abacustech . net\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.986+0000", "entityId": 2186, "properties": {"text": "Subject: may wellheads\ndavid here is the other side of the coin . these are meters that are not in\nthe wellhead portfolio for may but are on vances sheet . several of them\nare new meters and some were just not nomed in april . vance can you confirm\nthat these are right for the well head . thanks\nbrayton operating 989685 #\n125807 242\ncarrizo oil gas 989830 new\nmeter\ncd resources 982677\n# 137858 1\ncore exploration 986840\n# 133125 1200\neex corp . 985999\n# 229609 7923\neex corp . 986500\n# 229586 1778\nel sordo 986315\n# 229541 103\nengage 989789\nno ticket in april\n985839 # 229490 598\n985848 # 229501 285\n985923 # 229532 671\n986801 # 229535 1157\neog\n983082 # 126336 7500\n988751 # gulf energy 2027\ngas solutions 989829\n# 247754 3000\nhat oil & gas 986731\n# 137156 140\nhelmerich & payne 989833 new\nmeter 10000\nhollimon 989831\n# 243604 500\nmjg inc . 984179\n# 135714 976\nmueller operating 987260\n# 156247 4000 cpr report shows meter\n9769 .\npetra oloeum 985982\n# 138662 144\npetro pro energy 989619 no april\nnom\nphillips petroleum 986673\n# 156258 838\nroyal production co . 985310\n# 138023 984\nsonara 986686\n# 133308 95\nswift\n982630\n# 229575 21\ntema 984688\nno april nom\ntexas nom , lp 989656\n# 247087 500\nuniversal petrol . corp 986411\n# 138665 99\nwilmar pipline 986188\n# 136185 13", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.991+0000", "entityId": 2187, "properties": {"text": "Subject: - - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 24 / 2000 12 : 41\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n04 / 20 / 2000 03 : 34 pm\nto : tom acton / corp / enron @ enron\ncc : susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject :\ntom ,\nplease see the attached file estimating wellhead production for the month of\nmay . please be advised that this is a preliminary estimate as to this date\nwe have only received a few paper noms for may . i will update you with any\nrevisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:11.996+0000", "entityId": 2188, "properties": {"text": "Subject: vance here is a list of meters that are in sitara under the well head\nportfolio but are not on your sheets for this month . please check these out\nas soon as possible so i can get the best number to daren asap . thanks tom .\nacock engineering . 985547 # 229474 77\nblackhawk oil 27 - 0 # 133255 670\nblack stone 989003 # 137868 664\nconoco 984132 # 138103 144\ndale operating co 985502 # 138342 37\ndn hughes 980275 # 138800 70\nelpaso 980308 # 139674\neog 27 - 0 # 126370\n2027\n980440\n# 126351 444\nfour square 986735 # 137971 1147\nlousis dreyfus 987491 # 138017 1000\nmuelller exploration 986838 # 164172 2800\nph exploration 986542 # 138554 47\nprime energy 986542 # 138578 418\nstates inc . 23 - 3\n# 138359 85\ntejones 989643 # 133173 1068\ntitan resources 989685 # 248551 242\nupstream 985155 # 138628 8000\nvalence operating 984132 # 138570 12\nvintage 989643 # 139661\n14\nwagner oil 27 - 0 # 138033 900\nwestern gulf 980106 # 139671 1068\nwilmar pipline 985048 # 224899 163\ntotal 21097", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.001+0000", "entityId": 2189, "properties": {"text": "Subject: natural gas nomination for 05 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for may 2000 :\n39 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for may 2000 :\n10 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.007+0000", "entityId": 2190, "properties": {"text": "Subject: meter # 1591 lamay gaslift\naimee ,\nplease check meter # 1591 lamay gas lift . it doesn ' t appear to have very much\nflow and the\nbav is showing the nom volume . this could be adversely affecting the risk\nnumbers . pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.012+0000", "entityId": 2191, "properties": {"text": "Subject: meter # 1591 lamay gaslift\ndaren - meter 1591 has never flowed the entire nom . this meter is has been\nover nominated . it has had a nom of 1 . 000 / day ( 429 . 000 total mmbtus ) since\n1 / 28 / 99 and has flowed only 11 . 692 . am i correct to say that this meter\nneeds a lower nom ? please let me know if i should look out for a lower nom\nin may . pat seems to think this may be affecting the p / l for april . we only\nhave estimates / actuals of zero on 4 / 1 & 4 / 2 .\nplease let me know if this makes sense .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 04 / 24 / 2000 12 : 50\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : pat clynes @ enron 04 / 24 / 2000 12 : 43 pm\nto : aimee lannou / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : meter # 1591 lamay gaslift\naimee ,\nplease check meter # 1591 lamay gas lift . it doesn ' t appear to have very much\nflow and the\nbav is showing the nom volume . this could be adversely affecting the risk\nnumbers . pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.017+0000", "entityId": 2192, "properties": {"text": "Subject: popsprd migration\nthe popsprd bridge will be migrated to nahou - scacll on april 26 th for\ndebugging purposes . this migration should be transparent for pops users with\nthe exception of personal spread sheets using pops tags . the node name for\npops tags on personal spread sheets will need to be changed to nahou - scacll\nto allow for updating of pops data .\nplease call me if you have any questions concerning the migration .\n- steve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.021+0000", "entityId": 2193, "properties": {"text": "Subject: guest access to eol\nhi ,\nyour guest access to eol has been established . at www . enrononline . com , type :\nuser id : eol 76371\npassword : welcome !\nif you have any questions regarding your access please contact tara sweitzer .\nthank you ,\ncarrie\n3 - 5472", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.026+0000", "entityId": 2194, "properties": {"text": "Subject: may golf specials ! !\nwelcome & enjoy kingwood cove golf specials . please take advantage of the\nspecial offers . you will receive notices weekly or bi - weekly . if you no\nlonger wish to receive these messages , simply reply with your request .\nkeep it in the fairway .\n* * may e - mail specials * *\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n* * 4 play & 3 pay * *\n4 play for the price of 3\nafter 12 pm - saturday , sunday & holidays\n( offer valid with purchase of cart & green fee per player )\nmust present e - mail invitation prior to registration .\nnot valid with sr / jr rates or other offers . expires 05 / 23 / 00\ncall now to book your tee - time . 281 - 358 - 1155 .\n* * pick your partner / price * *\nanytime monday thru friday non - holiday\n2 play for $ 22 ea .\n3 play for $ 20 ea .\n4 play for $ 18 ea .\n( offer includes cart & green fee )\nmust present e - mail invitation prior to registration .\nnot valid with sr / jr rates , tournaments or other offers . expires 05 / 23 / 00\ncall now to book your tee - time . 281 - 358 - 1155 .\n* * xl 2000 special * *\nmonday thru friday - anytime $ 24 per player\nsaturday , sunday & holidays - after 12 pm $ 30 per player\ngolf invitation good for up to 4 players .\nreceive 1 / 2 cart , green fee , range balls\nplus a sleeve of xl 2000 golf balls .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or tournaments . expires 05 / 23 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\n* * golf lesson special * *\nlessons save $ 10\nbuy two or more lessons and save $ 10 per lesson\nfine tune your swing now . expires 05 / 23 / 00 .\n- summer junior clinics available call for details\nwhat ' s happening ?\n- senior tournament every monday morning 7 : 30 am\n- skins game every wednesday afternoon @ 1 : 00 pm\n- kingwood cove golf association monthly tournaments", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.030+0000", "entityId": 2195, "properties": {"text": "Subject: re :\ni have inputted the spot deals into system and added the sitara ticket no to\nthe below list . i have yet to do the gasper rice deal ticket .\nvance l taylor @ ect\n04 / 25 / 2000 05 : 23 pm\nto : tom acton / corp / enron @ enron\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject :\ntom ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of may . this production will be purchased on a \" spot \" basis\nand deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price\nengage energy us , lp 5839 # 252058 598 mmbtu / d 100 % if / hsc less $ 0 . 20\nengage energy us , lp 5848 # 252059 285 mmbtu / d 100 % if / hsc less $ 0 . 20\nengage energy us , lp 5923 # 252060 671 mmbtu / d 100 % if / hsc less $ 0 . 20\nengage energy us , lp 6801 # 252061 1 , 157 mmbtu / d 100 % if / hsc less $ 0 . 20\nel sordo gathering 6315 # 252062 103 mmbtu / d 70 % if / hsc\nswift energy 2630 # 252063 21 mmbtu / d 90 % if / hsc less $ 0 . 258\neex corporation 6500 # 252064 1 , 778 mmbtu / d 95 % if / hsc\neex corporation 5999 # 252065 14 , 000 mmbtu / d 95 % if / hsc\nadditionally , samson lone star lp reduced its working interest in contract\n( # 96016761 ) to 33 . 375 % effective 3 / 1 / 00 . the remaining 66 . 625 % working\ninterest was sold to gasper rice , ltd . hplc amended and ratified the\ncontract effective 3 / 1 / 00 . the term of the contract has not been extended as\nof yet and is currently in an \" evergreen \" status with 100 % of the volumes\nallocated to samson lone star .\nbased on the aforementioned information , please create a sitara deal ticket\nfor the following :\ngasper rice , ltd . 6722 lmmbtu / d 95 % if / hsc less $ . 09 apr & may months\nevergreen price\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.035+0000", "entityId": 2196, "properties": {"text": "Subject: organizational changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n04 / 25 / 2000 02 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrent a price @ ect\n04 / 25 / 2000 02 : 05 pm\nto : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect @ ect , d todd hall / hou / ect @ ect , peggy hedstrom / cal / ect @ ect ,\nbrenda f herod / hou / ect @ ect , michael e moscoso / hou / ect @ ect , eugenio\nperez / hou / ect @ ect , scott pleus / hou / ect @ ect , leslie reeves / hou / ect @ ect ,\nstephen p schwarz / hou / ect @ ect , james scribner / corp / enron @ enron , mary\nsolmonson / hou / ect @ ect , sheri thomas / hou / ect @ ect , scott mills / hou / ect @ ect ,\nnorma villarreal / hou / ect @ ect , kim melodick / hou / ect @ ect , georgeanne\nhodges / hou / ect @ ect\ncc : patti thompson / hou / ect @ ect , lisa shoemake / hou / ect @ ect , kelly\ntempleton / corp / enron @ enron , lynn tippery / hou / ect @ ect , yvette g\nconnevey / corp / enron @ enron , maria sandoval / hou / ect @ ect , inga\nlatson / corp / enron @ enron , irena d hogan / hou / ect @ ect , kimberly\nperkins / hou / ect @ ect , marvia jefferson / hou / ect @ ect , cecilia\nolvera / hou / ect @ ect , jennifer jordan / corp / enron @ enron\nsubject : organizational changes\nplease forward this e - mail to your teams regarding recent organizational\nchanges within gas operations .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.040+0000", "entityId": 2197, "properties": {"text": "Subject: 98 - 2601\nhi daren ,\ni ' m attempting to clear the above mentioned meter from an error report\n( revenue volume comparison report ) . howard apprised me , in a meeting last\nweek , that the reason this meter is appearing in the aforementioned report is\ndue to no volumes being scheduled in pops but volumes appearing in mops . the\nvolumes @ this meter is for 4449 ( sitara deal tickets 240095 and 227697 . due\nto this being a \" check meter \" the volumes will not bridge to pops from mops .\ni ' d like to request to revise the nome of 4449 to show \" 0 \" instead . can you\napprove this modification ?\nthanks\n- jackie -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.045+0000", "entityId": 2198, "properties": {"text": "Subject: meter # 1591 lamay gas lift\ndaren - have you had a chance to check this out ? i know you are busy . at\nleast we can get a head start on may .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 04 / 25 / 2000 12 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 04 / 24 / 2000 01 : 03 pm\nto : daren j farmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : meter # 1591 lamay gaslift\ndaren - meter 1591 has never flowed the entire nom . this meter is has been\nover nominated . it has had a nom of 1 . 000 / day ( 429 . 000 total mmbtus ) since\n1 / 28 / 99 and has flowed only 11 . 692 . am i correct to say that this meter\nneeds a lower nom ? please let me know if i should look out for a lower nom\nin may . pat seems to think this may be affecting the p / l for april . we only\nhave estimates / actuals of zero on 4 / 1 & 4 / 2 .\nplease let me know if this makes sense .\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 04 / 24 / 2000 12 : 50\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : pat clynes @ enron 04 / 24 / 2000 12 : 43 pm\nto : aimee lannou / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : meter # 1591 lamay gaslift\naimee ,\nplease check meter # 1591 lamay gas lift . it doesn ' t appear to have very much\nflow and the\nbav is showing the nom volume . this could be adversely affecting the risk\nnumbers . pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.049+0000", "entityId": 2199, "properties": {"text": "Subject: february 2000 production , pg & e discrepancy for 02 / 24 / 00 ( pan\nenergy exchange deal )\nstacey -\nas per my earlier voice mail messages , i needed to confirm what the actual\nflow of gas was on pg & e for february 24 th . the service summary report from\npg & e indicated a flow of 50 , 000 mmbtus on the 24 th , however , the swamp rat\nfuel allocations ( hpl ) indicates a flow of 53 , 000 mmbtus . can you ask pg & e\nto confirm which of these volume is correct so that the february allocations\ncan be finalized ? please let me know if there is any additional information\ni need to provide you .\nthanks for your help -\nkatherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.055+0000", "entityId": 2200, "properties": {"text": "Subject: mike clinchard resume\nin case you have an opening . . . .\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.061+0000", "entityId": 2201, "properties": {"text": "Subject: sean wells resume\nany interest ? ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 04 / 26 / 2000\n11 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalexus rhone @ enron\n04 / 26 / 2000 11 : 22 am\nto :\ncc : ( bcc : brenda f herod / hou / ect )\nsubject : sean wells resume\nare you interested in considering summer employment for college students ? if\nso , attached is a resume for sean wells . sean is a university of north texas\nstudent interested in building his energy industry background . if you ' re\ninterested , please let me know . thanks .\nar / 33202\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alexus rhone / corp / enron on 04 / 26 / 2000\n11 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nall ,\nintern referral from mike mcconnell . not sure his background / education is a\nfit for technology ? maybe other groups are looking for summer interns with\nsome energy related experience . he worked last summer at dynegy in gas\ncontrol and scheduling .\nplease let me know if you have any interest .\nthanks ,\nrobert\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike mcconnell / hou / ect on 04 / 25 / 2000\n12 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrollins 50 @ aol . com on 04 / 20 / 2000 05 : 09 : 59 pm\nto : mike . mcconnell @ enron . com\ncc :\nsubject : sean wells resume\nmr . mike mcconnell\nchief executive officer\nglobal technology\nenron corp .\n1400 smith street\nhouston , tx 77002\nsubject : resume for summer internship\napril 20 , 2000\ndear mr . mcconnell :\nthank you for taking the time to consider this resume for a possible summer\ninternship with enron . i understand that you have spoken to my father , scott\nwells at texaco , and he has informed me that enron accepts interns only when\na department asks for one .\ni ' d like to continue my education in the energy industry for a second summer .\ni interned for dynegy last summer and learned many new concepts and terms\nfor working in the gas industry . i worked on the trading floor as a gas\nscheduler , and after only a month i was controlling the northeast cng\npipeline . this helped because i really got to learn were many of the\nnortheast pipes are located and different pooling and connecting points .\nother responsibilities were inputting numbers into the morning spreadsheet of\nthe gas bought and sold that morning . throughout the day i would work on\nprojects they needed completed and attend meetings that pertained to the\ntrading floor . it was all a great learning experience for me and i hope to\nuse my knowledge again this summer for enron .\ni would appreciate your help in forwarding my resume to the proper human\nresource personnel so that i might be able to contact him or her in hopes of\na future internship possibility . i will be available to have a start date of\nmay 15 th and be available for employment until school resumes in late august .\nthank you for your time , and i look forward to hearing from someone in your\ncompany at his / her earliest convenience . please feel free to call me at\n940 - 323 - 0891 , or email me at rollins 50 @ aol . com .\nsincerely -\nsean wells\nattach : resume . doc\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.066+0000", "entityId": 2202, "properties": {"text": "Subject: unify close schedule\nthe following is our close schedule for this coming month . please keep in\nthe mind the following key times . . . .\nunify to sitara bridge back 1 : 45 p . m . friday , april 28 th ( all errors must be\nclear by this time )\nmass draft at 6 p . m . friday evening .\naccrual process begins monday , may lst at 6 a . m .\nif you have any changes to this timeline , please ensure that i am contacted\nas soon as possible .\nthank you ,\nmelissa x 35615", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.071+0000", "entityId": 2203, "properties": {"text": "Subject: ces deals\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by donna greif / hou / ect on 04 / 26 / 2000 05 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : dana daigle @ enron 04 / 25 / 2000 03 : 46 pm\nto : david oliver / hou / ect @ ect , william kelly / hou / ect @ ect , donna\ngreif / hou / ect @ ect , brenda f herod / hou / ect @ ect , kam keiser / hou / ect @ ect\ncc : kathryn cordes / hou / ect @ ect\nsubject : ces deals\nhere are the deal that i have completed today . the numbers in bold are\nhedged and need to be split .\nold deal # new deal # desk\n142002 251833 east\n145075 251851 east\n144936 250498 texas\n226138 250600 east\n226763 250668 east\n135842 250703 east\n164669 250751 east\n227727 250893 east\n168454 250932 east\n136933 251129 east\n136880 251212 east\n143673 251257 east\n163815 251280 east\n136286 251357 east\n136287 251394 east\n219685 251410 east\n158625 251864 east\n135895 251619 east\n135958 251624 east\n164708 251631 east\n226538 251641 east\n134755 251650 central\n144917 251659 texas\nthanks for you help !\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.080+0000", "entityId": 2204, "properties": {"text": "Subject: bridgeline workorder\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 04 / 26 / 2000\n11 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian heinrich\n04 / 25 / 2000 05 : 49 pm\nto : brenda f herod / hou / ect @ ect , mary solmonson / hou / ect @ ect\ncc : lisa b cousino / hou / ect @ ect\nsubject : bridgeline workorder\ni have some information on the e - workorders ( ehurr and ehset ) that were set\nup to track the costs of bridgeline . apparently the workorders themselves\nwere not set up correctly so no costs could be coded to them in msa . we have\ncorrected the workorder set - ups and they should be working now . as for prior\ncosts , i think we will be able to get a list of all the payroll costs that we\nattempted to code to ehurr and ehset , and then book an entry in april that\nwould reclass them to the workorders . we would then be able to see all the\ncosts associated with the project , as you wanted to do from the beginning ,\nand code any future costs directly to the workorders . i will let you know\nmore when i finalize that this can really be done , i just wanted to keep you\nupdated on the progress .\nif you have any questions , please let me know .\nthanks ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.087+0000", "entityId": 2205, "properties": {"text": "Subject: e - mail\nhey daren , is this your e - mail address ? ? ? ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.091+0000", "entityId": 2206, "properties": {"text": "Subject: cpr pipeline exchange activity report\nwe have placed the cpr pipeline exchange activity report into the sitara\nproduction reporting . please let me know if\nyou have any questions . this report gves you the volume activity of a given\nbusiness unit , on all or selectied pipes , for\ngiven flow dates . please rememeber that this report is originating from the\nsitara database .\nyou all have access to run reports in sitara . you can run reports by\nclicking the last icon ( blue one ) from the sitara launchpad .\nyou may have to logout of sitara to compeletely to see the icon .\n* once you are able to access the web site from the icon , click on reports .\n* login using your sitara login and password .\n* select the specialized / exceptions category from the drop down menu .\n* run the cpr pipeline exchange activity report . you will have to select a\nbusiness unit , flow date and optionally pipe .\nif you have any problems running this report , let me know at x 37913 .\nthanks ,\nhunaid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.095+0000", "entityId": 2207, "properties": {"text": "Subject: public report 04 - 26\ni thought i would share this with you all .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 04 / 27 / 2000\n01 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmario parra cardoso @ enron\n04 / 27 / 2000 11 : 42 am\nto : mark palmer / corp / enron @ enron , elisabeth mccabe / corp / enron @ enron , mark\nfrevert / lon / ect @ ect , mark taylor / hou / ect @ ect , jackie gentle / lon / ect @ ect ,\nandrew miles / hou / ees @ ees , rob bradley / corp / enron @ enron , david w\ndelainey / hou / ect @ ect , mark koenig / corp / enron @ enron , steven j\nkean / hou / ees @ ees , philippe a bibi / hou / ect @ ect , george mcclellan / hou / ect @ ect ,\nbryan seyfried / lon / ect @ ect , rick buy / hou / ect @ ect , greg\npiper / corp / enron @ enron , fred lagrasta / hou / ect @ ect , edward d\nbaughman / hou / ect @ ect , craig breslau / hou / ect @ ect , michael mcdonald / sf / ect @ ect ,\ngrant oh / cal / ect @ ect , harold bertram / hou / ect @ ect , cary m\ncarrabine / corp / enron @ enron , edward ondarza / hou / ect @ ect , mark\ntawney / hou / ect @ ect , per sekse / ny / ect @ ect , thomas d gros / hou / ect @ ect , janet r\ndietrich / hou / ect @ ect , max yzaguirre / na / enron @ enron , greg wolfe / hou / ect @ ect ,\nbrian bierbach / den / ect @ enron , brian redmond / hou / ect @ ect , kathryn\ncorbally / corp / enron @ enron , stuart staley / lon / ect @ ect , kevin\nmcgowan / corp / enron @ enron , peter bradley / lon / ect @ ect , sally beck / hou / ect @ ect ,\njohn ambler / enron _ development @ enron _ development , george\nwasaff / enron _ development @ enron _ development , meredith\nphilipp / corp / enron @ enron , karen denne / corp / enron @ enron , lisa\nlees / hou / ect @ ect , mary gopalan / lon / ect @ ect , kal shah / hou / ect @ ect , greg\nwhalley / hou / ect @ ect , daniel diamond / hou / ect @ ect , michael\ndanielson / hou / ect @ ect , brenda f herod / hou / ect @ ect\ncc : bob shults / hou / ect @ ect , amita gosalia / lon / ect @ ect , carrie\nsouthard / hou / ect @ ect , mario parra cardoso / corp / enron @ enron , david\nforster / corp / enron @ enron\nsubject : public report 04 - 26\nin order to help spread the enrononline success story we have created a new\ndaily report which includes slides and statistics for public consumption .\nthe information contained in this attachment can be communicated to audiences\noutside the company and should be used to ensure that we present a consistent\nmessage to the public . please ensure that this email is distributed to anyone\nin your group who needs to discuss enrononline with individuals outside the\ncompany .\nplease note that this is not intended that this be used as a stand - alone\npresentation , nor that all the information be used in a single presentation\nor customer communication . if we have missed a specific area , please let us\nknow and we will add it for you on a daily basis .\nif you require further clarification on the information contained in this\nemail , please contact bob shults on 30397 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.100+0000", "entityId": 2208, "properties": {"text": "Subject: entex revised estimates for 4 / 00\ni guess i ' d better attach the file .\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 04 / 28 / 2000 11 : 26\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 04 / 28 / 2000 11 : 27 am\nto : daren j farmer / hou / ect @ ect , ami chokshi / corp / enron @ enron\ncc :\nsubject : entex revised estimates for 4 / 00\nthe attached spreadsheet has the revised estimates for entex citygate loads\nfor april . if you need me to get with pops / unify to correct or change the\nestimates please give me a call .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.104+0000", "entityId": 2209, "properties": {"text": "Subject: entex revised estimates for 4 / 00\nthe attached spreadsheet has the revised estimates for entex citygate loads\nfor april . if you need me to get with pops / unify to correct or change the\nestimates please give me a call .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.109+0000", "entityId": 2210, "properties": {"text": "Subject: updated spreadsheet\nhere are the updates for may . you will notice i have not added the extra\ndeals for equistar chemical because it didn ' t effect the whole month , plus i\nonly found the split out for the sale upto 4 / 00 not the purchase .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.114+0000", "entityId": 2211, "properties": {"text": "Subject: nom 5 / 1 ( revised again ) - eastrans\nhpl requested tha we reduce the delivery into hpl ' s carthage cartwheel\nagreement to 20 , 000 mmbtu / d for today only . therefore , adjust today ' s nom\ninto\neastrans\nto 35 , 800 mmbtu , increasing to 40 , 800 tomorrow ( the 2 nd ) .\nredeliveries will be :\n7 , 800 mmbtu / d from fuels cotton vally\n8 , 000 into pg & e\n20 , 000 at carthage into hpl ' s cartwheel\nfor 5 / 2 , receipts will be 40 , 800 with redeliveries\nas shown below .\nthe volume for today to be sold by defs is increased\nby 5 , 000 at carthage to 8 , 720 . tomorrow will be 3 , 720 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n05 / 01 / 2000\n09 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n05 / 01 / 2000 09 : 20 am\nto : briley @ enron . com , dfarmer @ enron . com , stacey . neuweiler @ enron . com\ncc : chad w . cass / gcs / cec / pec @ pec , william e . speckels / gcs / cec / pec @ pec , jim\ni .\nfields / gcs / cec / pec @ pec , donna c . spencer / gcs / cec / pec @ pec , cheryl l .\nhorning / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec , julia\na . urbanek / gcs / cec / pec @ pec , cheryl l . horning / gcs / cec / pec @ pec\nsubject : nom 5 / 1 ( revised ) - eastrans\nmy understanding is that we have been cut for the lst on hpl ' s transportation\nto 8 , 000 mmbtu / d .\ntherefore , we are reducing our nom for 5 / 1 and following to 40 , 800 mmbtu / d .\nthe redeliveries are as follows :\n7 , 800 from fuels cotton valley\n8 , 000 into pg & e\n25 , 000 to hpl ' s cartwheel agreement at carthage\nfor defs ' info , we will have 3 , 720 mmbtu / d available\nat the tailgate of carthage for sale .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.118+0000", "entityId": 2212, "properties": {"text": "Subject: nom 5 / 1 ( revised ) - eastrans\nmy understanding is that we have been cut for the lst on hpl ' s transportation\nto 8 , 000 mmbtu / d .\ntherefore , we are reducing our nom for 5 / 1 and following to 40 , 800 mmbtu / d .\nthe redeliveries are as follows :\n7 , 800 from fuels cotton valley\n8 , 000 into pg & e\n25 , 000 to hpl ' s cartwheel agreement at carthage\nfor defs ' info , we will have 3 , 720 mmbtu / d available\nat the tailgate of carthage for sale .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.123+0000", "entityId": 2213, "properties": {"text": "Subject: get a $ 25 certificate just for responding to this e - mail\nintroducing e - rewards ( tm ) - - click here\nand get a valuable welcome gift , free !\ncompaq is proud to invite you to join e - rewards - - a new\nrewards program that pays you to read e - mail . we have\njoined with blockbuster inc . , delta air lines , hertz ,\nunited airlines and vail resorts ( tm ) to launch this\nexciting new program . and , membership is by invitation\nonly .\nmembership is free and you get a valuable welcome gift !\nenjoy a valuable welcome gift of your choice from one\nof our sponsors . it ' s yours as a special thank you when\nyou join .\nhow e - rewards works\nsimply tell e - rewards how many e - mails you \u000f ' re willing\nto receive and what kind of advertising you \u000f ' re interested\nin . they \u000f ' ll send you e - mail that \u000f ' s relevant to you .\nvaluable rewards , including compaq savings\nfor each e - rewards e - mail you receive , you can earn up to\n$ 1 in e - rewards . redeem your earnings for great rewards\nfrom e - rewards ' sponsors - - compaq , blockbuster ( r ) ,\ndelta air lines , hertz , united airlines and vail resorts .\nwith more on the way ! remember , no purchase is necessary\nto earn e - rewards . it ' s free . no obligation . you can\nopt out at any time ! and , your privacy is guaranteed .\nto enroll and claim your valuable welcome gift , just\nfollow this link :\nor copy the url into your browser navigation window .\noffer expires may 17 , 2000 .\nif you wish to unsubscribe from receiving offers of this\nkind , please forward this message to :\nand type \" unsubscribe \" in the subject line .\nblockbuster name , design and related marks are trademarks\nof blockbuster inc . ( c ) 2000 , blockbuster inc . all rights\nreserved .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.128+0000", "entityId": 2214, "properties": {"text": "Subject: re : unify / sitara enhancements\nplease add being able to set up multiple deals for the same\ncontract / meter / time period but with different rates . thanks , mary\nmichael eiben\n05 / 01 / 2000 10 : 17 am\nto : pat clynes / corp / enron @ enron , mary m smith / hou / ect @ ect , lisa\ncsikos / hou / ect @ ect , rita wynne / hou / ect @ ect , daren j farmer / hou / ect @ ect , lauri\na allen / hou / ect @ ect\ncc : steve venturatos / hou / ect @ ect\nsubject : unify / sitara enhancements\ni am compiling a list of unify enhancements related to texas operations for\nbrenda . please provide me your lists by end of day today . i am looking for\nenhancements that are specific to texas . if you have any questions , please\ncall me @ 36373 . the major ones that i have are : the transport contracting\nprocess , processing hourly transactions , enhancing the shipper imbalance\nworksheet , multiple service classes on the same contract , consolidated ua 4\ntracking , and any enhancements occuring from project torque .\nthanks , mve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael eiben / hou / ect on 05 / 01 / 2000 09 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 04 / 25 / 2000 12 : 05 pm\nto : steve venturatos / hou / ect @ ect , michael eiben / hou / ect @ ect\ncc :\nsubject : unify / sitara enhancements\nplease schedule a meeting with me to review the enhancements lising - the\nprioritizations and status . i am interested in understanding the listing of\nenhancements , the benefits of the enhancements , what is required of both user\nand it resources to complete the enhancements , who the resources are and the\nstatus of completion . it should cover all systems - sitara , unify ( mops ,\nvolume management and settlements ) and pops . please include anyone else\n( management team , it , etc . ) who is necessary to ensure thorough explanations .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.133+0000", "entityId": 2215, "properties": {"text": "Subject: well heads\nphillips has changed there nom at meter 6673 . vance had 119 in his file but\nphillips sent in a nom today for 948 . so far it has flowed for april\nbetween 1100 and 841 .\nprize has some changes .\nmeter from\nto march range .\n4028 1113\n717 1137 to 887\n5579 2733\n2381 2800 to 2578\n5767 115\n150 140 to 103\n6191 249\n154 253 to 217\n6675 120\n239 78 to 156\n9604 109\n32 38 to 63\n4965 149\n180 71 to 288\n5121 1163\n1135 303 to 703\nvintage\n989603 0\n330 no mom in april , nomed 270\nin march .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.138+0000", "entityId": 2216, "properties": {"text": "Subject: unify / sitara enhancements\ni am compiling a list of unify enhancements related to texas operations for\nbrenda . please provide me your lists by end of day today . i am looking for\nenhancements that are specific to texas . if you have any questions , please\ncall me @ 36373 . the major ones that i have are : the transport contracting\nprocess , processing hourly transactions , enhancing the shipper imbalance\nworksheet , multiple service classes on the same contract , consolidated ua 4\ntracking , and any enhancements occuring from project torque .\nthanks , mve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael eiben / hou / ect on 05 / 01 / 2000 09 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 04 / 25 / 2000 12 : 05 pm\nto : steve venturatos / hou / ect @ ect , michael eiben / hou / ect @ ect\ncc :\nsubject : unify / sitara enhancements\nplease schedule a meeting with me to review the enhancements lising - the\nprioritizations and status . i am interested in understanding the listing of\nenhancements , the benefits of the enhancements , what is required of both user\nand it resources to complete the enhancements , who the resources are and the\nstatus of completion . it should cover all systems - sitara , unify ( mops ,\nvolume management and settlements ) and pops . please include anyone else\n( management team , it , etc . ) who is necessary to ensure thorough explanations .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.142+0000", "entityId": 2217, "properties": {"text": "Subject: cannon interest may 2000 purchase\nthe storage book book will purchase 788 , 354 mmbtu ' s from cannon interest on\nmay 1 , 2000 @ $ 3 . 08 .\ndaren - please enter texas purchase from cannon interest and a texas sale to\nthe storage book in the sitara .\ngeorge and aimee - please coordinate with daren so your entries are entered\non the same day .\nmary - the contract agreement , i assume , is already in place .\nlisa , rita , & stephanie - please be sure the payment of $ 2 , 428 , 130 . 32 is\nwired to cannon interest @ the corrected aba on may 20 th .\nif i missed anyone who needs this information , please forward it .\nthanks ,\nkenny", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.146+0000", "entityId": 2218, "properties": {"text": "Subject: april allocation % ' s - preliminary\nplease reveiw the attached allocations , and make changes with holly as\nneeded . this is the comparison we looked @ in the staff meeting last week .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 01 / 2000\n01 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nholly heath @ enron\n05 / 01 / 2000 12 : 54 pm\nto : robert superty / hou / ect @ ect , brent a price / hou / ect @ ect , brenda f\nherod / hou / ect @ ect , kristin albrecht / hou / ect @ ect , maria sandoval / hou / ect @ ect ,\nsheila glover / hou / ect @ ect , scott pleus / hou / ect @ ect , sheri thomas / hou / ect @ ect ,\nd todd hall / hou / ect @ ect , mary solmonson / hou / ect @ ect , stephen p\nschwarz / hou / ect @ ect , sally beck / hou / ect @ ect\ncc : heather choate / hou / ect @ ect , irena d hogan / hou / ect @ ect , lisa\nshoemake / hou / ect @ ect , michael e moscoso / hou / ect @ ect , eugenio\nperez / hou / ect @ ect , kimberly perkins / hou / ect @ ect , yvette g\nconnevey / corp / enron @ enron , kelly templeton / corp / enron @ enron\nsubject : april allocation % ' s - preliminary\nattached are your preliminary april allocation % ' s . please review and have\nany changes to me by thursday , may 4 th . if you have any questions , please\nfeel free to contact me at @ 3 - 5843 . thanks so much .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.151+0000", "entityId": 2219, "properties": {"text": "Subject: ( no subject )\nhey daren its me .\nhave you had any sleep lately ? ? ? ?\nsee ya at the beach .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.157+0000", "entityId": 2220, "properties": {"text": "Subject: wellhead\nencina has some tru ups .\nmeter\nvance new march\navg .\n4353\n54\n53\n5631\n40 35\n5625\n20 25\n6832\n225 276\n270 to 280\n9731\n325 290\n300 to 308\n9720\n6750 6500\n6030 to 6895", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.162+0000", "entityId": 2221, "properties": {"text": "Subject: organizational changes\nplease share with your organizations .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 02 / 2000\n12 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 05 / 02 / 2000 12 : 15 pm\nto : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect , d todd hall / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , michael\ne moscoso / hou / ect @ ect , eugenio perez / hou / ect @ ect , scott pleus / hou / ect @ ect ,\nbrent a price / hou / ect @ ect , leslie reeves / hou / ect @ ect , stephen p\nschwarz / hou / ect @ ect , james scribner / corp / enron @ enron , mary\nsolmonson / hou / ect @ ect , sheri thomas / hou / ect @ ect , scott mills / hou / ect @ ect ,\nnorma villarreal / hou / ect @ ect , hector mcloughlin / corp / enron @ enron , susan\nharrison / hou / ect @ ect , steve jackson / hou / ect @ ect\ncc : patti thompson / hou / ect @ ect , lisa shoemake / hou / ect @ ect , kelly\ntempleton / corp / enron @ enron , lynn tippery / hou / ect @ ect , maria\nsandoval / hou / ect @ ect , irena d hogan / hou / ect @ ect , kimberly\nperkins / hou / ect @ ect , marvia jefferson / hou / ect @ ect , cecilia\nolvera / hou / ect @ ect , jennifer jordan / corp / enron @ enron , chantelle\nvillanueva / hou / ect @ ect\nsubject : organizational changes\nlast week you all received a memo from brent price which described changes\nwithin gas operations , excluding texas . attached is an organizational chart\nfor the texas region .\nwe too continue to look for efficiencies to ensure we meet the demands of our\ncustomers . we currently support the texas trading region , bammel storage\nfacility , houston pipeline , powder river gathering and bridgeline . i am\npleased to announce that we will also combine risk management , deal\nvalidation and operational analysis under the management of steve venturatos\nwho will serve as the business controller . dave baumbach will fill the lead\nposition . ami chokshi will move from trading support to the new group ,\ncontinuing in the role of the entex and tufco account manager . jody crook\nalso will join the team . bryan hull will transition his knowledge over the\nnext month , and will be moving to has second rotation , effective 6 / 5 / 00 .\nadditionally , will kelly will transition the denver trading books to the\ntexas team as he moves to the east region . transportation management under\nmary smith will not be integrated into the team as their day - to - day\nresponsibilities and projects are not cohesively aligned with this group .\nplease join me in welcoming the new team members as well as the team members\nwho will continue in the group .\nmike eiben will step in the role previously managed by steve venturatos which\nincludes global contracts and facilities , system enhancements and regulatory\nreporting . in addition , clem cernosek and jennifer pattison will be assuming\nnew responsibilities in logistics and volume management , respectively . both\nclem and jennifer have been on the unify team , focused on pops . please wish\nthese folks success in their new roles .\nall responsibility changes are effective 5 / 1 / 00 .\nplease share this with your staffs .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.167+0000", "entityId": 2222, "properties": {"text": "Subject: april activity surveys\nwe are starting to collect data for april . the attached survey drives your\ncosts from your activities to the commercial teams . please select your rcs ,\nand fill in the driver quantity for the requested driver for the month of\nfebruary . please fill out the attached activity driver survey with april\nnumbers for your rc by end of day thursday , may 4 th .\nif your group currently generates a standard report that captures the\nsurveyed data , please send the report to me , and put me on your recipient\nlist beginning next month . this will eliminate your need to fill out this\nsurvey every month . if you would like us to collect this information from\nsomeone within your team beginning next month , let me know .\nplease contact me or lisa cousino x 3 - 6343 if you are unable to complete the\nsurvey within the allotted time .\nthanks ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.171+0000", "entityId": 2223, "properties": {"text": "Subject: spring basketball tournament\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jamie lynn / et & s / enron on 05 / 03 / 2000 03 : 33\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njamie lynn\n05 / 03 / 2000 02 : 06 pm\nto : oliver brown / enron _ development @ enron _ development , martin\nrosetta / enron _ development @ enron _ development , pam\nnewsome / enron _ development @ enron _ development , ryan\nwoods / enron _ development @ enron _ development , mike\nlayne / enron _ development @ enron _ development , fred\nsalinas / enron _ development @ enron _ development , sean\nlong / enron _ development @ enron _ development , kevin\nruffcorn / enron _ development @ enron _ development , keith\nsparks / enron _ development @ enron _ development , aaron\nmackey / enron _ development @ enron _ development , braedi craig / enron\ncommunications @ enron communications , jennifer mcclain / enron\ncommunications @ enron communications , john garrett / corp / enron @ enron , darrell\nschoolcraft / et & s / enron @ enron , stanley horton / corp / enron @ enron , pamela\ncarter / et & s / enron @ enron , brandon\nwhittaker / enron _ development @ enron _ development , chris williams / enron @ gateway ,\njohnny mitchell / et & s / enron @ enron , mike bryant / ots / enron @ enron , rick\nbuy / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , tom moran / hou / ect @ ect , patrick\nhickey / enron communications @ enron communications , brant reves / hou / ect @ ect ,\nsamantha t davidson / hou / ect @ ect , tangie dykes / et & s / enron @ enron , tara e\nturk / hou / ect @ ect , dan leff / hou / ees @ ees , mark pratorius / hou / ees @ ees , brad\npeden / hou / ees @ ees , david blankenship / corp / enron @ enron , milton\nbrown / hr / corp / enron @ enron , ken reeves / hou / ect @ ect , rory\njuneman / corp / enron @ enron , fred\nbridgewater / enron _ development @ enron _ development , sandy\nroberts / corp / enron @ enron , derek anderson / hou / ect @ ect , david\no ' dell / hr / corp / enron @ enron\ncc : ( bcc : jamie lynn / et & s / enron )\nsubject : spring basketball tournament\nenron is having a basketball tournament on a may 13 th and you are invited to\nparticipate !\non saturday , may 13 th , beginning at 9 : 00 a . m . , the enron basketball\nassociation will be sponsoring our spring 2000 basketball tournament for all\ne . b . a . members . we are planning to limit the size of this tournament to the\nfirst eight teams that reply . while we encourage you to form your own teams ,\nplease let us know if you do not have enough players and we will make sure\nthat you are placed on a team . we will be having a captain ' s meeting on\ntuesday , may 9 th , to discuss the rules , prizes , and other details related to\nthe tournament preparation . please have a representative from your team come\nto this meeting prepared with rosters , a team name , and shirt sizes . lunch\nwill be provided .\nif you are interested in placing a team in the tournament , or enter as an\nindividual , please contact one of the following by monday , may 8 th .\njamie lynn ext . 3 - 9515\nrick dietz ext . 3 - 5691\nsteve kleb ext . 3 - 3959\nif you have any questions , please give any of us a call .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.176+0000", "entityId": 2224, "properties": {"text": "Subject: unify\nplease provide bob superty with a list of pipelines whom were late or had\nnomiation issues as a result of this mornings unify problems .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.180+0000", "entityId": 2225, "properties": {"text": "Subject: texas risk organization\nsent on behalf of steve venturatos\nyou recently received a memo from brenda herod laying out the organizational\nchanges that would effect the texas region , this follow up is an effort to\nbreakdown our risk organization . with new members being added to the team\nmany responsibilities will be changing , however controls and other measures\nalready in place will ensure a smooth transition . following is the schedule\nof responsibilities effective may lst and june lst , as the transition will\ntake a month .\neffective may 1 effective june 1\nft texas o ' neal winfree ami chokshi\ngas daily o ' neal winfree ami chockshi\nintra - month bryan hull o ' neal winfree / mick walters\ntransport mick walters mick walters\nstorage dave baumbach jody crook\nft south texas jody crook jody crook\nft eol texas jody crook jody crook\nft new texas o ' neal winfree ami chokshi\nft & im denver mick walters / bryan hull mick walters\nft hplc o ' neal winfree o ' neal winfree / mick walters\ndeal validation julie meyers julie meyers\noa phillip love tbd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.185+0000", "entityId": 2226, "properties": {"text": "Subject: the foundation course - bottom - line project management ( july 25 - 26 )\nwe said it was coming and here it is . . . . .\nbottom - line project management\nthe foundation course\njuly 25 \u0001 ) 26 , 2000\ntarget audience\nthis class is for people new to project management , from all functions and at\nall leadership levels . in addition , it ' s for shirt sleeve project managers ,\nmembers of large project teams and individual contributors . participants may\nhave business experience but little project management training . they do\npart of the project themselves and use borrowed resources to do the rest .\nthe \u0001 & basics \u0001 8\nteaches the basics \u0001 ) how to plan , schedule , resource , influence , track ,\nreport and complete any size project in any area . features pre - work , action\nlearning , individual and team exercises and a mini - simulation of a project on\nwhich participants practice skills and get immediate feedback on results .\nwhat you learn\nparticipants learn and take away an application package , the bottom - line tool\nkit , to successfully implement their next project assignment . there is an\noption to use project software in class to identify critical path , modify\ntasks , and control projects .\nkey learning points :\nspeak a common language \u0001 ) use basic terms , answer key questions\nidentify behaviors of effective project leaders and teams\n5 - step common sense methodology to plan , organize , resource , implement and\nclose - out any size project \u0001 ) in any area\norganizational terms & definitions : stakeholders , customers , sponsors , etc .\ndevelop and apply 3 key visual tools to planing and track performance\nresource , staff and complete projects , with limited , \u0001 billed to your rc and company\nnumber\nto enroll\nsign up on line through the organizational development & training intranet\nsite , which can be accessed through enron ' s home page . click on \" sites \" ,\n\" intranet sites \" and then \" organizational development & training \" . then\nclick on \" training \" and then \" leadership training \" . or , go directly to the\nsite by entering the intranet address below .\nif you have any questions about this course or any other offerings\nsponsored by od & t , feel free to contact\nsusan m . lewis at 713 - 853 - 9712 or slewis 2 @ enron . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.189+0000", "entityId": 2227, "properties": {"text": "Subject: nom 5 / 5 - eastrans\nthis is to nominate the following for 5 / 5 / 2000 ( friday ) :\n35 , 800 mmbtu into eastrans\nredeliveries :\n20 , 000 mmbtu redelivered at lone star / hpl interconnect - rusk county , texas\n8 , 000 mmbtu into pg & e at carthage\n7 , 800 from fuels cotton valley into hpl\nthe price of the lsg / hpl interconnect volume is hsc - $ . 05 .\nthe volume of residue available for sale internally at duke is :\n35 , 800\nx . 9\n_ _ _ _\n32 , 220\n- 28 , 000\n_ _ _ _ _ _\n4 , 220 mmbtu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.195+0000", "entityId": 2228, "properties": {"text": "Subject: sarco lateral and crow o ' connor meters\ndaren - can you set up new deals for meter 6757 and 5192 ?\nmeter 6757 crow o ' connor - counterparty duke energy & trading\nmonth contract deal #\njune 99 ena 201 87426\njuly 99 hpl 215 95072\naug 99 hpl 215 102775\nsept 99 hpl 215 110502\nmeter 5192 sarco lateral\nno deal has ever been set up for meter 5192 for duke energy & trading .\nthere is flow for may , july and nov . 99 .\nwill you please let me know if you set up new deals for these meters ?\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 04 / 2000 03 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n05 / 04 / 2000 12 : 08 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\naimee :\nthe crow o ' connor , meter 6757 has its gas allocated to strangers gas for\napril and may 1999 and duke has been calling settlements asking for their\nmoney . i will need to set up accounting arrangements for this meter for\nthese months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\nin addition , the sarco lateral , meter 5192 has its gas allocated to strangers\ngas for may and july 1999 and duke has been calling settlements asking for\ntheir money . i will need to set up accounting arrangements for this meter\nfor these months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\ni would like to get this done asap since the customer is calling settlements\nand we start close next week .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.200+0000", "entityId": 2229, "properties": {"text": "Subject: new hpl meter - vidor city gate - check ( meter 098 - 8746 )\nfyi\nthe below houston pipe line meter has been set up in global facilities .\nmeter : 098 - 8746\nfacility number : 513445\nname : vidor city gate check\ntype : check\nsystem : 765 - texoma pipeline\nrate zone : 40 ( vidor )\ntrade zone : 8 ( east texas )\nflow direction : delivery\nlateral :\nwork order # :\nnote : meter 0988746 is the check meter to 098 - 0413 .\nplease call me at ext . 3 - 3446 if you have any questions .\ndonna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.204+0000", "entityId": 2230, "properties": {"text": "Subject: revised nom 5 / 5 - eastrans ; revised nom for 5 / 6 and following\nfor 5 / 5 , due to inability of hpl to receive lone star volume , the redeliveries\nhave been changed to :\n3 , 000 into lone star\n25 , 000 into pg & e\n7 , 800 fro fuels cotton valley\ntotal receipts stay the same , 35 , 800 mmbtu .\nfor 5 / 6 and following , receipt nom remains 35 , 800 mmbtu .\nredeliveries are :\n28 , 000 into pg & e .\n7 , 800 from fcv .\nfor internal defs , 4 , 119 is available both days at tailgate .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.209+0000", "entityId": 2231, "properties": {"text": "Subject: unify performance problem on wednesday\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 05 / 2000\n09 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrita wynne\n05 / 05 / 2000 08 : 11 am\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : unify performance problem on wednesday\nfyi . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 05 / 05 / 2000 08 : 10 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : dave nommensen 05 / 04 / 2000 06 : 56 pm\nto : george smith / hou / ect @ ect , edward terry / hou / ect @ ect , tricia\nbowen / hou / ect @ ect , randall l gay / hou / ect @ ect , patti sullivan / hou / ect @ ect , pat\nclynes / corp / enron @ enron , carlos j rodriguez / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , bryce baxter / hou / ect @ ect , rita wynne / hou / ect @ ect , donna\ngreif / hou / ect @ ect\ncc : jeff johnson / corp / enron @ enron , tommy j yanowski / hou / ect @ ect , beth\nperlman / hou / ect @ ect , scott williamson / hou / ect @ ect , jim ogg / hou / ect @ ect , regan\nm smith / hou / ect @ ect , kenneth m harmon / hou / ect @ ect\nsubject : unify performance problem on wednesday\nas you are aware , the unify system experienced significant performance\nproblems wednesday from approx 9 : 30 am - 11 : 20 am . the duration of the\nproblem was due to a type of system behavior we had not experienced before .\nthe problem was exacerbated by a multitude of additional user logins thinking\nthat a fresh login might work better . additional logins never improve\nperformance and generally degrade it , but that is another story . ( there was\nactually a single user with 21 sessions ! ) we had to \" bounce \" the server\ntwice to bring the system back to its normal level of performance .\nthe good news is that we found out what caused the problem . it was not a\nparticular user or a particular report or process . it was actually an\nintentional change to a specific table that we have done numerous times in\nthe past , but this particular change had drastic side effects . we have\ncontacted sybase with this problem to see if they can help determine if the\nbehavior is a \" feature \" or a bug . in the meanwhile , we will do these types\nof changes at night during scheduled outages .\ni apologize for the frustration , anxiety , and extra work brought on by this\nproblem and will take every precaution to see that it does not happen again .\nif you have any further questions or comments , please feel free to give me a\ncall .\ndave n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.214+0000", "entityId": 2232, "properties": {"text": "Subject: 6 th noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 05 / 2000\n10 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 05 / 05 / 2000 10 : 31 : 49 am\nto : \" ami chokshi \"\ncc :\nsubject : 6 th noms\n( see attached file : egmnom - may . xls )\n- egmnom - may . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.218+0000", "entityId": 2233, "properties": {"text": "Subject: memo from office of the chair\nthe mid - year performance management cycle will begin on may 15 with the\nopening of the pep system ( the online \" performance evaluation process \"\nfeedback system ) . you will be receiving your password for this system in a\nnote to go out later from pep . in preparation for the cycle , four training\nclasses will be offered to all new employees and to those employees who have\nnot previously attended training . enrollment for these classes will be\noffered through the development center \" ernie \" system . for employees who are\noutside the houston area , please contact your hr representative for more\ninformation .\nthese sessions will be held on :\nwednesday , may 10 from 9 : 00 - 10 : 00 a . m . , and three sessions to be held on\nthursday , may 11 from 9 : 00 - 10 : 00 a . m . ; 1 : 30 - 2 : 30 p . m . ; and 3 : 00 - 4 : 00 p . m .\nall sessions will be held at the doubletree hotel .\nto register , click on this link to go directly to the development center\nfor those of you who have attended the training before and who are familiar\nwith the past performance management process , there have been some\nmodifications :\n1 . the performance management process is now enron wide . all enron feedback\nforms have been reduced to three ( vice president ( vp ) / managing director\n( md ) ; management / professional ; and administration / support ) , which all use\nthe following criteria :\n? innovation / entrepreneurship\n? communication / setting direction\n? teamwork / interpersonal\n? leadership / vision / values\n? business instinct\n? analytical / technical\n2 . the following six performance ratings will be used consistently on the\nfinal feedback forms across enron :\nsuperior\nexcellent\nstrong\nsatisfactory\nneeds improvement\nissues\n3 . there will be four recognized peer groups across the company for purposes\nof the prc ( formerly the business review meetings ) meeting .\n? commercial\n? commercial support\n? technical\n? specialized technical\n4 . the performance review process will continue to be used to facilitate :\n? promotions - up to director level only . there will be no officer promotions\nto vp / md at mid - year\n? feedback to employee\n? compensation decisions\n? sharing of performance rating at manager \u0001 , s discretion\n5 . prc meetings will be reviewed by both functional area & business units\nboth functional areas and business units will participate in the rating of\nemployees to cover both solid and dotted line reporting relationships .\nfunctional prc meetings will take place first , followed by the final business\nunit meetings . difference in views on an individual employee \u0001 , s rating should\nbe discussed and consensus should be reached . the functional area meetings\nare :\n- accounting\n- human resources\n- government affairs\n- rac\n- global finance\n6 . the pep system is now available via the intranet to allow greater access\nfrom global locations and remotely . the functionality is essentially the\nsame . if you would like further information on how to use this system you may\ngain access to the quick reference guide by clicking on the attached\nweblinkhttp : / / home . enron . com / announce / . pdf . if the\nquick reference does not display correctly on your pc , call your help desk\nfor assistance , or irma alvarez at 713 - 853 - 1543 to get a hard copy .\n7 . the general responsibilities remain the same regarding the overall\nprocess :\nemployee / reviewer responsibilities :\nselect 5 - 7 reviewers\ncomplete self - assessment\ncomplete requested feedback forms\nreviewers who cannot provide feedback use the decline request feature\nsupervisor responsibilities :\napprove reviewers ( at least 3 of the employee ' s choices )\ncommunicate modifications to employee\nparticipate in prc meetings as required\nsummarize feedback and complete appropriate feedback form\ncommunicate feedback to the employee\nschedule for mid - year performance review\nmay 15 pep system opens for feedback\njune 9 pep system closes for feedback\njune 12 functional / business unit prc meetings begin\njuly 20 prc meetings should finish\njuly 31 / august 1 vp & md prc meeting\nas always , if you have further questions on the performance management\nprocess , you may contact your hr representative .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.222+0000", "entityId": 2234, "properties": {"text": "Subject: failed deals\nhi daren ,\nas per our phone conversation i sent you a fax , but i also wanted to let you\nhave an electronic copy of the failed deals which need to be booked into\nsitara . attached is the detail on the six trades in question . thanks !\ntorrey moorer ( x 36218 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.227+0000", "entityId": 2235, "properties": {"text": "Subject: fyi - new pager number\nfyi - ( no reply necessary )\ni have a new pager number ( it does not require a pin # ) . please note the new\nnumber and make changes to contacts sheets if necessary\nold : 800 - 759 - 7243 pin # 2377872\nnew : 877 - 502 - 9986\nthanks\ntrey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.232+0000", "entityId": 2236, "properties": {"text": "Subject: fw : updated contact sheet\nwould you please forward this revised contact sheet ( ie my new pager number )\nto the appropriate parties in you group that are not on the email\ndistirbution list\nthanks\ntrey\n> - - - - - original message - - - - -\n> from : maillet , lisa\n> sent : monday , may 08 , 2000 10 : 02 am\n> to : anp co team ; midlothian team ; ' david . k . spikings @ abbpge . com '\n> subject : updated contact sheet\n>\n> >\n>\n>\n>\n- midlothian fuel supply contact . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.236+0000", "entityId": 2237, "properties": {"text": "Subject: enron scheduled volumes - - - may 6 thru 8\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stacey neuweiler / hou / ect on 05 / 08 / 2000\n11 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" ibrom , lorraine \"\n05 / 08 / 2000 10 : 22 am\nto : \" ' stacey neuweiler ' \"\ncc :\nsubject : enron scheduled volumes - - - may 6 thru 8\nfollowing is scheduled volumes on el paso under enron ' s k # 5095 - 037 .\ndate package # volume delivered to teco\n5 / 6 9 e 3 x 16 , 495\n9 j 6 z 2 , 759 19 , 061\n5 / 7 9 e 3 x 15 , 689\n9 j 6 z 2 , 243 17 , 753\n5 / 8 9 e 3 x 13 , 752\n9 j 6 z 2 , 799 16 , 385\npg & e gas transmission texas and any other company referenced herein which\nuses the pg & e name or logo are not the same company as pacific gas and\nelectric company , the california utility . these companies are not regulated\nby the california public utilities commission , and customers do not have to\nbuy products from these companies in order to continue to receive quality\nregulated services from the utility .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.241+0000", "entityId": 2238, "properties": {"text": "Subject: ena sales on hpl\ni am working on a project for brenda herod & was wondering if one of you\ncould tell me if i ' m on the right track & if this will get everything for\nwhich she is looking .\nshe is trying to draft a long - term transport / storage agreement between ena &\nhplc which will allow ena to move the gas to their markets . in order to\naccomplish this , she needs to know all of the sales to customers that ena is\ndoing off of hpl ' s pipe .\ni had scott mills run a report from sitara showing all ena buy / sell activity\non hpl since 7 / 99 . if i eliminate the buys & the desk - to - desk deals , will\nthis give me everything that i need ?\nare there buy / sell deals done with ena on hpl ' s pipe that wouldn ' t show up in\nsitara ? someone mentioned something about deals where hpl transports the gas\non it ' s own behalf then ena sells it to a customer at that same spot - -\n? ? ? ? ? do deals like that happen ? would they show up in sitara ?\nis there anything else that i ' m missing ? i ' m not real familiar with how some\nof these deals happen nowadays so am very receptive to any\nideas / suggestions / help that you can offer ! ! !\nthanks in advance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.245+0000", "entityId": 2239, "properties": {"text": "Subject: new unify transaction / volume count reports\n- - - - - - - - - - - - - - - - - - - - - - forwarded by donna greif / hou / ect on 05 / 09 / 2000 04 : 49\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : dave nommensen 05 / 09 / 2000 12 : 13 pm\nto : donna greif / hou / ect @ ect\ncc :\nsubject : new unify transaction / volume count reports\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dave nommensen / hou / ect on 05 / 09 / 2000\n12 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : dave nommensen 05 / 09 / 2000 08 : 24 am\nto : lisa b cousino / hou / ect @ ect , diane h cook / hou / ect @ ect , shari\nmao / hou / ect @ ect\ncc : benedicta tung / hou / ect @ ect\nsubject : new unify transaction / volume count reports\nthese 2 new reports are now available in\nstart / programs / trading / unify ( gas - reporting ) . this password should be the\nsame as your unify ( gas ) password .\ngo to path manager / report / general report selection / path manager .\nthe two new reports are monthly transaction counts and monthly volume counts .\nenjoy , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.250+0000", "entityId": 2240, "properties": {"text": "Subject: well head\nshoreline wants to increase the volume at meter 9830 for the 10 th gas day .\nthis is a new meter so there is not much history to it . they want to go from\n535 to 750 . last month it flowed in the upper 500 ' s but it didn ' t come on\ntill the 21 st of the month .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.255+0000", "entityId": 2241, "properties": {"text": "Subject: sarco lateral and crow o ' connor meters\ndaren - have you had a chance to look at this ?\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 09 / 2000 03 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 05 / 04 / 2000 03 : 26 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\ndaren - can you set up new deals for meter 6757 and 5192 ?\nmeter 6757 crow o ' connor - counterparty duke energy & trading\nmonth contract deal #\njune 99 ena 201 87426\njuly 99 hpl 215 95072\naug 99 hpl 215 102775\nsept 99 hpl 215 110502\nmeter 5192 sarco lateral\nno deal has ever been set up for meter 5192 for duke energy & trading .\nthere is flow for may , july and nov . 99 .\nwill you please let me know if you set up new deals for these meters ?\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 04 / 2000 03 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n05 / 04 / 2000 12 : 08 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\naimee :\nthe crow o ' connor , meter 6757 has its gas allocated to strangers gas for\napril and may 1999 and duke has been calling settlements asking for their\nmoney . i will need to set up accounting arrangements for this meter for\nthese months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\nin addition , the sarco lateral , meter 5192 has its gas allocated to strangers\ngas for may and july 1999 and duke has been calling settlements asking for\ntheir money . i will need to set up accounting arrangements for this meter\nfor these months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\ni would like to get this done asap since the customer is calling settlements\nand we start close next week .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.260+0000", "entityId": 2242, "properties": {"text": "Subject: calpine daily gas nomination\n> yesterdays ( 10 th ) as we spoke of by\nphone .\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.264+0000", "entityId": 2243, "properties": {"text": "Subject: well heads\ndaren , shore line would like to take meter 9781 from 460 to 1 for the 11 th\ngas day . it flowed the nom for april so they must be having well problems\nthis month . meter 9680 has a change from 739 to 1200 . it flowed in the 700\nfor april . could be new production coming on behind the meter .\ntexaco would like to change meter 9826 from 1201 to 1500 for the rest of the\nmonth . in april they flowed from 1000 to 1300 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.270+0000", "entityId": 2244, "properties": {"text": "Subject: ena sales on hpl\njust to update you on this project ' s status :\nbased on a new report that scott mills ran for me from sitara , i have come up\nwith the following counterparties as the ones to which ena is selling gas off\nof hpl ' s pipe .\naltrade transaction , l . l . c . gulf gas utilities company\nbrazoria , city of panther pipeline , inc .\ncentral illinois light company praxair , inc .\ncentral power and light company reliant energy - entex\nces - equistar chemicals , lp reliant energy - hl & p\ncorpus christi gas marketing , lp southern union company\nd & h gas company , inc . texas utilities fuel company\nduke energy field services , inc . txu gas distribution\nentex gas marketing company union carbide corporation\nequistar chemicals , lp unit gas transmission company inc .\nsince i ' m not sure exactly what gets entered into sitara , pat clynes\nsuggested that i check with daren farmer to make sure that i ' m not missing\nsomething ( which i did below ) . while i am waiting for a response from him\nand / or mary smith , i will begin gathering the contractual volumes under the\nabove contracts .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cheryl dudley / hou / ect on 05 / 10 / 2000 07 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncheryl d king\n05 / 08 / 2000 04 : 11 pm\nsent by : cheryl dudley\nto : daren j farmer / hou / ect @ ect , mary m smith / hou / ect @ ect\ncc :\nsubject : ena sales on hpl\ni am working on a project for brenda herod & was wondering if one of you\ncould tell me if i ' m on the right track & if this will get everything for\nwhich she is looking .\nshe is trying to draft a long - term transport / storage agreement between ena &\nhplc which will allow ena to move the gas to their markets . in order to\naccomplish this , she needs to know all of the sales to customers that ena is\ndoing off of hpl ' s pipe .\ni had scott mills run a report from sitara showing all ena buy / sell activity\non hpl since 7 / 99 . if i eliminate the buys & the desk - to - desk deals , will\nthis give me everything that i need ?\nare there buy / sell deals done with ena on hpl ' s pipe that wouldn ' t show up in\nsitara ? someone mentioned something about deals where hpl transports the gas\non it ' s own behalf then ena sells it to a customer at that same spot - -\n? ? ? ? ? do deals like that happen ? would they show up in sitara ?\nis there anything else that i ' m missing ? i ' m not real familiar with how some\nof these deals happen nowadays so am very receptive to any\nideas / suggestions / help that you can offer ! ! !\nthanks in advance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.274+0000", "entityId": 2245, "properties": {"text": "Subject: houston gas & power controls / standards assessment\nplease read the attached correspondence from brent regarding the controls and\nstandards we have been discussing . daren , i realize you will not be able to\nattend the morning meeting due to trading . however , pat , i would like for\nyou to attend to represent the gas logistics role . please ensure you and\ndaren have met prior to the meeting , and you are prepared to represent this\nfunctional area . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 11 / 2000\n09 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrent a price\n05 / 11 / 2000 07 : 55 am\nto : brenda f herod / hou / ect @ ect , steve venturatos / hou / ect @ ect , lisa\ncsikos / hou / ect @ ect , rita wynne / hou / ect @ ect , leslie reeves / hou / ect @ ect ,\nkristin albrecht / hou / ect @ ect , kim s theriot / hou / ect @ ect , dan\nhouston / corp / enron @ enron , stacey w white / hou / ect @ ect\ncc : sally beck / hou / ect @ ect\nsubject : houston gas & power controls / standards assessment\nas you all are aware , there is a heightened awareness throughout the company\nof the need for establishing global trading control standards and developing\na process by which we will track and monitor on a regular basis our success\nat achieving those standards . i have been asked by sally to take the lead on\nmeeting this objective . for the last several weeks , i have been involved in\nan extensive review of the london office controls and procedures for their\ngas and power trading businesses . we have used the findings of this review\nto start developing an assessment of controls , standards and measurement\nmethodology for the london office .\nin order to work towards our goal of developing global trading standards\nacross enron , we need to perform the same controls and standards assessment\nfor the houston gas and power businesses ( we will assess global products and\nother commodities traded at a later date ) . i will be in houston tuesday and\nwednesday of next week to help facilitate this process .\ni have scheduled a meeting next weds . , may 17 from 9 : 00 - 11 : 30 in eb 49 cl so\nthat we may review our controls , define the standards of meeting those\ncontrol requirements and assess the risk associated with those controls not\noperating properly . before that meeting , i would like for all of you to\ndevelop for your respective functional responsibilities the following :\n- a listing of all controls your group is responsible for ( i . e . cash\ncollections are timely )\n- a proposed standard that will ensure each control is being met to its\nmaximum effectiveness ( i . e . cash is collected within 30 days of deal date\nwith exceptions noted )\n- a quantitative measure to allow performance monitoring of each standard\n( i . e . % of cash collected within 30 days )\n- a description of current capabilities to calculate , track and report each\nmeasurement ( i . e . automated a / r aging report )\ni would urge you to be as detailed as possible in listing your control\nfunctions and to solicit feedback from your managers and leads . a lot of\nwork has already been done to identify this information so i would hope time\nrequirements for this will not be extensive . i have attached a worksheet to\nbe completed with the information discussed above . i have also attached a\nhigh level summary of proposed gas and power standards to use a guideline but\nit is certainly not all - inclusive and should be revised as necessary .\nas discussed above , we will review the controls and standards listings for\neach functional group in the weds . meeting and also assess the risk\nassociated with each control . i would like to achieve consensus on gas and\npower operating standards for houston by the end of the meeting . let me know\nif you have any questions or comments regarding this process . i look forward\nto seeing you next week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.281+0000", "entityId": 2246, "properties": {"text": "Subject: mid year prc meeting\ni would like to have our prc meeting on thursday , 6 / 8 . because of trading ,\nwe will not be able to start until noon . please confirm to me asap ( by end\nof day , today ) that you will be available . please keep in mind that we will\nwent last time from 1 : 00 pm until almost midnight . your commitment of this\ndate will include the evening hours , unless of course , we work quickly and\nefficiently ! ! ! sally ' s meeting is scheduled for tuesday , 6 / 13 , and i plan to\nbe on vacation on friday , 6 / 9 . therefore , this is the lastest date that we\ncan meet . please make every effort to make this work .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.290+0000", "entityId": 2247, "properties": {"text": "Subject: re : i / c variance for deal 72893\ncould you please look into this for me ? thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stacey neuweiler / hou / ect on 05 / 11 / 2000\n12 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins 05 / 08 / 2000 10 : 55 am\nto : stacey neuweiler / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : re : i / c variance for deal 72893\nstacey , sherlyn needs answers . . . . . . . i dropped the ball and sent this to\ncarlos . . . . . sorry .\nlet me know if i can help .\ncharlotte\nfrom : sherlyn schumack 05 / 01 / 2000 10 : 11 am\nto : charlotte hawkins / hou / ect @ ect\ncc :\nsubject : i / c variance for deal 72893\ncharlotte ,\nthere is an interconnect variance at meter 980071 for 2 / 99 . it appears the\nvariance is created on 2 / 9 / 99 and 2 / 10 / 99 . there is a transport usage deal\nticket 72893 in sitara which shows pg & e delivers 6 , 965 mmbtu to hpl on 2 / 9 / 99\nand 3 , 683 mmbtu on 2 / 10 / 99 , but hpl does not show a receipt of this volume .\nlet me know if you need the pg & e support .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.296+0000", "entityId": 2248, "properties": {"text": "Subject: meter 5192\ndaren - the prices duke is billing us are :\n4 / 99 at $ 1 . 5810\n5 / 99 at $ 1 . 9975\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 11 / 2000 03 : 58\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 05 / 11 / 2000 03 : 50 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : crow o ' connor meter 6757\naimee ,\nprices that duke invoiced us :\n4 / 99 at $ 1 . 5810\n5 / 99 at $ 1 . 9975\nthanks , stephanie\naimee lannou 05 / 11 / 2000 03 : 45 pm\nto : fred boas / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : crow o ' connor meter 6757\nfred & stephanie - meter 6757 has been reallocated .\nstephanie - what price does duke show we owe them for the months in question ?\nfred boas\n05 / 11 / 2000 03 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect\nsubject : crow o ' connor meter 6757\naimee :\nplease put the ena 201 contract at this meter for april and may of 1999 with\nthe track id 117848 and reallocate the meter for both months . after this is\ndone please let stephanie and i know so that she can redraft her invoice the\nnext day after pops bridges to mops . also with respect to the second issue\nwhere daren is asking for the price , stephanie may be able to help you with\nthis because she has a copy of duke ' s invoice .\nstephanie :\nthe crow o ' conner meter is essentially fixed . when aimee reallocates you\nwill have to wait until the next day to redraft your invoice . when aimee\ngets back with us please redraft the invoice the next day and let me know if\nthis issue is resolved .\nfred\ndaren j farmer\n05 / 11 / 2000 02 : 14 pm\nto : aimee lannou / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : sarco lateral and crow o ' connor meters\ni have created deal 266962 for the volumes at mtr 6757 .\nwhat price is duke reporting for the mtr 5192 volumes ? the only activity\nwe ' ve had out there is payback with koch .\nd\naimee lannou 05 / 09 / 2000 03 : 30 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : sarco lateral and crow o ' connor meters\ndaren - have you had a chance to look at this ?\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 09 / 2000 03 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 05 / 04 / 2000 03 : 26 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\ndaren - can you set up new deals for meter 6757 and 5192 ?\nmeter 6757 crow o ' connor - counterparty duke energy & trading\nmonth contract deal #\njune 99 ena 201 87426\njuly 99 hpl 215 95072\naug 99 hpl 215 102775\nsept 99 hpl 215 110502\nmeter 5192 sarco lateral\nno deal has ever been set up for meter 5192 for duke energy & trading .\nthere is flow for may , july and nov . 99 .\nwill you please let me know if you set up new deals for these meters ?\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 04 / 2000 03 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n05 / 04 / 2000 12 : 08 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\naimee :\nthe crow o ' connor , meter 6757 has its gas allocated to strangers gas for\napril and may 1999 and duke has been calling settlements asking for their\nmoney . i will need to set up accounting arrangements for this meter for\nthese months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\nin addition , the sarco lateral , meter 5192 has its gas allocated to strangers\ngas for may and july 1999 and duke has been calling settlements asking for\ntheir money . i will need to set up accounting arrangements for this meter\nfor these months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\ni would like to get this done asap since the customer is calling settlements\nand we start close next week .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.301+0000", "entityId": 2249, "properties": {"text": "Subject: entex volumes and price for 1999 - 2000 contract year\nthe following represents daily volume and price information for entex ' s first\ncontract year . the citygate volumes were retreived out of business objects\nand represent entex ' s meter 2000 volumes . the midcon volumes are based on\ndaily nominated ( not allocated ) volumes . the customer price represents a\nweighted average of entex total billed volume ( industrial and residential )\nagainst the dollar amount billed to them . i ' ve put together charts that graph\nthe following :\n1 . entex ' s total volume ( citygate and midcon ) v . daily price\n2 . midcon volumes v . daily price\n3 . daily price v . customer price\n4 . first of the month index v . gas daily price\n5 . percent change in daily price v . percent change in daily volume\nthanks ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.305+0000", "entityId": 2250, "properties": {"text": "Subject: how do you get your hands around this ? ? are there reports which can help ?\nwhen unify was designed , how did scotty / mike and team plan to aid you all to\nmanage this ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 11 / 2000\n08 : 53 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital management\nfrom : david baumbach 05 / 10 / 2000 06 : 12 pm\nto : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc : brenda f herod / hou / ect @ ect\nsubject :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.310+0000", "entityId": 2251, "properties": {"text": "Subject: re : i / c variance for deal 72893\nnevermind this one . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stacey neuweiler / hou / ect on 05 / 12 / 2000\n09 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlotte hawkins on 05 / 12 / 2000 09 : 21 am\nto : stacey neuweiler / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect , carlos j\nrodriguez / hou / ect @ ect\nsubject : re : i / c variance for deal 72893\nokay , this one has been resolved . . . . the deals for days 9 and 10 are good .\nsitara did not feed this deal to mops at all therefore it didn ' t feed to\npops .\nsherlyn is setting things up and will provide me with a tracking id , i will\nenter volumes and re - allocate the meter .\nvery confusing but finally resolved .\nchawkins\nfrom : charlotte hawkins 05 / 08 / 2000 10 : 55 am\nto : stacey neuweiler / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : re : i / c variance for deal 72893\nstacey , sherlyn needs answers . . . . . . . i dropped the ball and sent this to\ncarlos . . . . . sorry .\nlet me know if i can help .\ncharlotte\nfrom : sherlyn schumack 05 / 01 / 2000 10 : 11 am\nto : charlotte hawkins / hou / ect @ ect\ncc :\nsubject : i / c variance for deal 72893\ncharlotte ,\nthere is an interconnect variance at meter 980071 for 2 / 99 . it appears the\nvariance is created on 2 / 9 / 99 and 2 / 10 / 99 . there is a transport usage deal\nticket 72893 in sitara which shows pg & e delivers 6 , 965 mmbtu to hpl on 2 / 9 / 99\nand 3 , 683 mmbtu on 2 / 10 / 99 , but hpl does not show a receipt of this volume .\nlet me know if you need the pg & e support .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.315+0000", "entityId": 2252, "properties": {"text": "Subject: pops it team temporarily moving to allen center\nplease note that the pops team will be temporarily moving\nto 3 allen center starting monday 5 / 15 . we will be located\nin 3 ac 3708 till we move back to the enron bldg .\nthe pops oncall pager : 713 - 796 - 4149\npops cellular : 713 - 562 - 2458\nalso note that i ' ll be attending a class thru the whole of next week ( 5 / 15 -\n5 / 19 )\nif there are any pops issues please have your people contact the following\nchristine pham x 34202\nshawn macphail x 31837\nthanks\nromeo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.319+0000", "entityId": 2253, "properties": {"text": "Subject: dave n out of pocket next week , beyond\ni will be in class next week at the hyatt . if you have unify performance\nissues that need immediate attention , please call :\njim ogg 5 - 7225\nkishore b . 3 - 0347\nruss whitton 3 - 3874\nyou already have my pager number .\nalso , for the next 2 months while our office space is being gutted and\nre - built , i will be located in 3 allen center , 37 th floor . how convenient .\ni will have the same phone number . feel free to send me a postcard ; - )\nd . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.324+0000", "entityId": 2254, "properties": {"text": "Subject: well head\nshoreline wants to move the volume of two meters . the first one , 6886 from\n153 to 1 and 6501 from 46 to 1 . 6501 is due to force majeure pipeline s / i\non 5 / 10 per there sheet .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.329+0000", "entityId": 2255, "properties": {"text": "Subject: enron mid - year 2000 performance management process\nenron ' s mid - year 2000 performance management process has begun . during this\nprocess , you will be required to select suggested reviewers who can provide\nperformance related feedback on you and you may also be requested to provide\nfeedback on fellow employees . you will need to do this by accessing the\nperformance management system ( pep ) at http : / / pep . enron . com .\nany questions should be directed to the pep help desk at the following\nnumbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nto log on to pep , enter your user id and password provided below .\nonce you have logged on , you will be immediately prompted to change to a\nsecure password .\nyour user id & password are :\nuser id : jfarmerl 947\npassword : welcome", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.334+0000", "entityId": 2256, "properties": {"text": "Subject: please re - map hpl zone 4 from a / s east beaumont to a / s east beaumont offer .\ncall with any questions .\ndave\nx 35384", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.339+0000", "entityId": 2257, "properties": {"text": "Subject: lst rev may 2000 hpl nom\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 05 / 15 / 2000\n09 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 05 / 15 / 2000 09 : 45 : 41 am\nto : \" susan trevino ( e - mail ) \"\ncc : stretch brennan , knox westmoreland\n, kevin mclarney , \" taylor vance\n( e - mail ) \"\nsubject : lst rev may 2000 hpl nom\nthis is a revised josey ranch nomination for the month of may 2000 .\nthe hpl nomination volume to be effective 5 / 16 / 2000 is :\n10 , 100 mmbtu / day for kcs resources = = > decrease\n400 / d\n2 , 000 mmbtu / day for texaco = = > increase\n400 / d\n12 , 100 mmbtu / day total ( no \" net \" change )\n( assumed btu factor of 1 . 076 @ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.343+0000", "entityId": 2258, "properties": {"text": "Subject: entex\nattached is a write - up on entex that we have put together for tom , jim and\nshankman . feel free to share it with the entex team , but otherwise , please\nkeep confidential . if anyone wants more info or has questions or concerns ,\nlet me know . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 16 / 2000\n11 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 05 / 16 / 2000 10 : 48 am\nto : thomas a martin / hou / ect @ ect , jim schwieger / hou / ect @ ect\ncc : sally beck / hou / ect @ ect\nsubject : entex\nattached are the revised files . i understand that you will provide this to\nshankman . please let me know if you need anything else from me or if i can\nhelp explain it to jeff .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.347+0000", "entityId": 2259, "properties": {"text": "Subject: gepl volumes\nhey debbie ,\njust wanted to inform you that the volume at the trevino plant will be moved\nover to the garza plant ( 440 - 552 ) effective 5 / 17 . the total volume is 5228\nand is expected to increase effective 5 / 18 . please let me know if you have\nany questions .\nami\n713 / 853 - 9272", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.352+0000", "entityId": 2260, "properties": {"text": "Subject: re : meeting confirmation - may 18\ni have a call into jo williams for her to give me more info on the meeting .\ni do plan on attending , unless you hear from me otherwise .\nmve\ndaren j farmer\n05 / 16 / 2000 04 : 20 pm\nto : michael eiben / hou / ect @ ect\ncc :\nsubject : meeting confirmation - may 18\nmike ,\nthis is what i was talking about in our staff meeting . let me know if you\ncan make this .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 05 / 16 / 2000\n04 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmeeting confirmation\nfrom : rosemary gracey @ enron on 05 / 16 / 2000 03 : 34 pm\nto : scott coburn / npng / enron @ enron , martha sumner - kenney / npng / enron @ enron ,\nrichard shepherd / npng / enron @ enron , sharon farrell / fgt / enron @ enron , kevin\nhyatt / et & s / enron @ enron , david hultsman / houston / eott @ eott , daren j\nfarmer / hou / ect @ ect , will zamer / corp / enron @ enron\ncc : jo williams / et & s / enron @ enron , beth jensen / npng / enron @ enron\nsubject : meeting confirmation - may 18\ntopic ( s ) : \" new \" enron website\ndate : thursday , may 18\nlocation : eb 4102 in houston / rm 696 in omaha\ntime : 1 : 30 - 2 : 30 pm\nfor questions , please call jo williams x 7707 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.358+0000", "entityId": 2261, "properties": {"text": "Subject: re : cannon interest may 2000 purchase\nhi daren ,\ni received an email from kenny soignet to make sure everything was in the\nsystem for me to pay cannon on friday , 5 / 19 / 00 .\nthe deal # is 257141 . i see that the volume has not been scheduled , so\ntherefore it is not pulling into unify for me to pay .\nare you the person that will be able to schedule the volume in order for me\nto pull up this deal ?\n( i see that in sitara that the deal is set for 5 / 00 production , does that\nmatter ? )\nthanks , stephanie ( 3 - 6004 )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie gomes / hou / ect on 05 / 17 / 2000\n02 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital management\nfrom : david baumbach 05 / 17 / 2000 01 : 50 pm\nto : stephanie gomes / hou / ect @ ect\ncc :\nsubject : re : cannon interest may 2000 purchase\nthe purchase from cannon is on sitara deal # 257141 and the sale to cpr\nstorage is on sitara deal # 257144 .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.362+0000", "entityId": 2262, "properties": {"text": "Subject: deadlines - 2000 customer meeting\ndaren ,\nbelow , i have attached the information that i initially sent out to the\nmanagers .\nif you would please forward me your customer and employee trip designation\nas well as\ntheir addresses as soon as possible i would really appreciate it .\nagain , i am sorry for the mistake in not including you in this email . i\nassure you it will not\nhappen again . and please let me know if there is anything i can do to help\nyou .\n- heather\n- - - - - - - - - - - - - - - - - - - - - - forwarded by heather choate / hou / ect on 05 / 17 / 2000\n04 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nheather choate\n04 / 19 / 2000 10 : 29 pm\nto : randall l gay / hou / ect @ ect , katherine l kelly / hou / ect @ ect , edward\nterry / hou / ect @ ect , tricia bowen / hou / ect @ ect , victor lamadrid / hou / ect @ ect ,\nsuzanne christiansen / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc : george smith / hou / ect @ ect , chantelle villanueva / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , reyna cabrera / hou / ect @ ect , cora\npendergrass / corp / enron @ enron , maria garza / hou / ect @ ect , sabrae\nzajac / hou / ect @ ect\nsubject : deadlines - 2000 customer meeting\nthe planning has begun for our 2000 customer appreciation meeting . this\nyear ' s trip\nhas been scheduled at the doncesar in st . pete ' s beach , fl\n( www . doncesar . com )\non july 7 - 9 and august 4 - 6 . we will be having fun in the sun with a luau\ntheme this\nyear .\nour activities will include golf , fishing , parasailing , waverunners and\nspa . we are\nalso looking into a few others ( i will notify you all of any updates ) .\nnote : this year our customer ' s will be responsible for their own airfare and\ntheir\ntransportation to / from the airport .\nour deadlines are as follows :\nmay 8 , 2000 guest list due !\n( this process should include a phone call before hand to\ndetermine the customers interest , so we can expedite the\ninvitation process . )\nmay 15 , 2000 generic invitation mail - out ( july and august customer trip )\njune 1 , 2000 employee list by trip due !\njune 16 , 2000 customer / employee rsvp ' s and activity selections due !\nattached below is also a spreadsheet i will be using to consolidate all of\nour information , if you would like to use it as well .\n- guest list . xls\nplease let me know if you have any questions or ideas that arise , we welcome\nany feedback !\nthank you ,\nheather choate , x 33278", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.368+0000", "entityId": 2263, "properties": {"text": "Subject: the new power company\nthe new power company , the first national residential and small business\nenergy service provider in deregulated\nmarkets was launched today with strategic investors and partners including\nenron , ibm and america online .\nh . eugene lockhart has been named president and chief executive officer of\nthe company . he was formerly president\nof at & t consumer services and chief marketing officer of at & t , as well as\npresident of bank america ' s global retail\nbank and president and ceo of mastercard international . lockhart is joined\nby a number of high - level executives from\nthe telecommunications and financial services sectors as well as several\nformer enron executives specializing in energy\ncommodity pricing , marketing , risk management and government regulatory\naffairs .\nthe former enron employees include jim badum , formerly managing director of\nconsumer services at ees , john henderson ,\nformerly vice president of retail risk management for ees , dave eichinger ,\nformerly vice president of corporate development\nfor enron corp . , and kathleen magruder , formerly vice president of government\naffairs for enron corp . lou pai , chairman and\nceo for ees will serve as non - executive chairman of the new power company .\nenron will provide the new power company with energy commodity pricing , risk\nmanagement , and government /\nregulatory affairs . ken lay is quoted in the news release , \" we ' ve studied\nthe residential and small business market\nfor several years and believe this is the optimal way to provide value to\nthese customers . by assisting in setting up\nan independent company , enron is able to leverage its core competencies of\nenergy and risk management , while\npartnering with other industry leaders to give the new power company\nextraordinary and immediate depth and\ncapability . \" ken will also serve on the board of directors .\nthe new power company is scheduled to initially provide service in\npennsylvania and new jersey in the second half\nof 2000 . the company will be headquartered in greenwich , connecticut , with\nsome operations in houston .\nfor more information , please log onto their website at\nhttp : / / www . newpowercompany . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.373+0000", "entityId": 2264, "properties": {"text": "Subject: performance review - mid - year\nfor those of you who have been trying to access the pep system , this morning\nor today , stop trying . there are still problems with the system and it is\nunlikely that you will be bale to get in or submit your reviewers\nsuccessfully .\ninstead , please submit your list of reviewers to brenda via e - mail . she will\nmake any changes necessary and forward them on to the pep helpdesk . they\nwill then be responsible for entering your reviewers manually .\nif you have any questions , please call .\nthanx !\nyvette\nx 3 . 5953\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n05 / 18 / 2000 02 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : brenda f herod @ ect 05 / 15 / 2000 12 : 41 pm\nto : eric bass / hou / ect @ ect , michael walters / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , bryan hull / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect ,\nyvette g connevey / corp / enron @ enron , lisa csikos / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , mary m smith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve\nventuratos / hou / ect @ ect , pat clynes / corp / enron @ enron , michael eiben / hou / ect @ ect\ncc :\nsubject : performance review - mid - year\nit ' s that time of the year again - just earlier this year than last year ! ! !\nplease log into the pep system , when it becomes available , and select at\nleast five feedback reviewers . the feedback is intended to reflect\ninterraction throughout the organization . for leads and managers and\ndirectors , please make sure you include at least one direct report . the\nreviewers you select should be employees whom you have worked with frequently\nsince 1 / 1 / 00 and whom can provide constructive feedback as to your\nperformance . nothing prevents you from selecting more than 5 reviewers . i\nwill review them , and if i feel there are others whom should be added , i will\ndo so . assuming the system becomes available soon , please complete your\nselection process by cob , tuesday , 5 / 16 / 00 . i want to approve these asap , so\nwe can get our request out early . turn around is critical .\nthe next thing i will need is a listing of your accomplishments for 2000 . i\nwould like these by e - mail by monday , june 5 , 10 : 00 am . once again , the\ntimeline is critical to the process , and is not negotiable .\nalthough we have reorganized the risk group effective 5 / 1 / 00 , i will still\nperform the performance reviews . mike , steve will be responsible for your\nreview .\nlet me know if you hav any questions or concerns . thanks for supporting the\nprocess and the timeline !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.378+0000", "entityId": 2265, "properties": {"text": "Subject: eol issues\nto get immediate response on an eol issue , such as a next day deal that is\nnot showing up in sitara , either call me at 3 - 5824\nor torrey moorer at 3 - 6218 . if you are unable to reach either one of us ,\nplease page us at the following numbers . please pass\nthis information to others in your group .\nthank you .\njennifer de boisblanc denny 1 - 877 - 473 - 1343\ntorrey moorer 1 - 877 - 473 - 1344", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.385+0000", "entityId": 2266, "properties": {"text": "Subject: reviewers\njanet wallis\nkyle lilly\nhoward camp\ncarlos rodriguez\nthu nguyen\njoan quick ( for ces )\nbob superty ( ces )\ned gottlob\nbryan hull", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.392+0000", "entityId": 2267, "properties": {"text": "Subject: reviewers\nfyi . don ' t freak at the # of reviewers !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 18 / 2000\n04 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 05 / 18 / 2000 04 : 09 pm\nto : perfmgmt / hou / ect @ ect\ncc : hector mcloughlin / corp / enron @ enron\nsubject : reviewers\nper the help desk instructions , please enter in the pep system the following\nreviewers for one of my employees , daren farmer . this morning when i went\ninto the pep system , this employee did not show up as one of mine . i have\nnotified our hr rep , hector mcloughlin who is working to change this .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 18 / 2000\n04 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n05 / 18 / 2000 03 : 42 pm\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : reviewers\nb ,\nreviewers :\ngary hanks\ntom martin\nelsa villareal\ned gottlob\npat clynes\nstacey neuweiler\nami chokshi\ngeorge grant\nstella morris\ncarlos rodriguez\nlisa csikos\nsteve venturatos\nmary smith\nrita wynne\ncharlotte hawkins\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.397+0000", "entityId": 2268, "properties": {"text": "Subject: entex adjustments for 5 / 00\ni have reviewed the entex actuals and adjusted gas control ' s entex factor for\nthe month of may . i have found that entex estimates have been overstated by\napproximately 10 . 0 mmcf / day .\nromeo :\nwill you make sure the estimates that are in pops are corrected to reflect\nthe new volumes . this should help reduce some of the ua 4 that daren and pat\nare trying to locate .\nthe attached file has the changes that need to be made . please let everyone\non this mailing list know once the changes have been made .\nif you have any questions please call me at 36449 .\nthanks\ngary h", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.401+0000", "entityId": 2269, "properties": {"text": "Subject: cannon interest may 2000 purchase\nreminder . . . this payment is due tomorrow .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenny j soignet / hou / ect on 05 / 19 / 2000\n10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenny j\nsoignet\n05 / 01 / 2000 11 : 02 am\nto : lisa csikos / hou / ect @ ect , stephanie gomes / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , mary m smith / hou / ect @ ect , david baumbach / hou / ect @ ect ,\nrita wynne / hou / ect @ ect , george grant / hou / ect @ ect , aimee lannou / hou / ect @ ect ,\ncassandra moses / hou / ect @ ect\ncc :\nsubject : cannon interest may 2000 purchase\nthe storage book book will purchase 788 , 354 mmbtu ' s from cannon interest on\nmay 1 , 2000 @ $ 3 . 08 .\ndaren - please enter texas purchase from cannon interest and a texas sale to\nthe storage book in the sitara .\ngeorge and aimee - please coordinate with daren so your entries are entered\non the same day .\nmary - the contract agreement , i assume , is already in place .\nlisa , rita , & stephanie - please be sure the payment of $ 2 , 428 , 130 . 32 is\nwired to cannon interest @ the corrected aba on may 20 th .\nif i missed anyone who needs this information , please forward it .\nthanks ,\nkenny", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.407+0000", "entityId": 2270, "properties": {"text": "Subject: here ' s my performance evaluation choices :\ngary hanks - pipeline operations\nmorgan sharifi - desk to desk business\ngreg steagall - transportation / invoicing\njulie meyers - contract admin\ncharlotte hawkins - hplc ops\nplease let me know if you think i should list anyone else . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.412+0000", "entityId": 2271, "properties": {"text": "Subject: customer meeting invitation\ngood afternoon all ! !\ni have attached the invitation to our 8 th annual enron customer meeting to\nbe held at the don ce sar in st . pete ' s beach , fl .\nplease feel free to fax or email to your customers as you see necessary ,\nbut please use the rsvp forms for the trip they will be\nattending ( july or august ) . the ' invitation ' attachement is generic and\nshould be used for both rsvp forms .\nthe original invitation will be going out in the mail this evening . with\na requested return date of june 8 , 2000 .\nif you have any questions or need an assistance , please call me at\nx 33278 .\nthank you ,\nheather choate", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.416+0000", "entityId": 2272, "properties": {"text": "Subject: re :\nif you have a spot for him . i am also going to send it along to the it hr\ncontact .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 05 / 19 / 2000\n02 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naorr @ dynegy . com on 05 / 19 / 2000 02 : 28 : 26 pm\nto : david . baumbach @ enron . com\ncc :\nsubject : re :\nhere is neal ' s resume . he will be at the knoxville address and phone # for the\nnext couple of weeks . he is going to come down and stay with me around june 1 .\nmy home number is 713 - 290 - 8434 . hy home address is 955 w . 42 nd street ,\nhouston ,\n77018 . my work number is 713 - 767 - 8774 .\n( see attached file : norrres . doc )\n- norrres . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.421+0000", "entityId": 2273, "properties": {"text": "Subject: stacey\ndarren ,\nsorry to bother you during trading . this is just a follow - up e - mail re :\nstacey neuweiler . we don ' t want to know the details of why stacey is going\nto the dr . we just want a dr . note stating for how long she is under her dr . s\ncare .\nthanks , hgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.427+0000", "entityId": 2274, "properties": {"text": "Subject: entex adjustments for 5 / 00\nhello everyone ,\nchristine made the changes as requested . let me know if further action is\nneeded .\nmve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael eiben / hou / ect on 05 / 19 / 2000 04 : 46\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : christine pham 05 / 19 / 2000 02 : 02 pm\nto : michael eiben / hou / ect @ ect\ncc :\nsubject : entex adjustments for 5 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christine pham / hou / ect on 05 / 19 / 2000\n02 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n05 / 19 / 2000 11 : 42 am\nto : christine pham / hou / ect @ ect\ncc :\nsubject : entex adjustments for 5 / 00\nchristine ,\nattached is the entex file i mentioned in the voice mail this morning . we\nreally need to have these adjustments made in pops today . please let me know\nif you can help with this . thanks .\ndaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 05 / 19 / 2000\n11 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 05 / 18 / 2000 03 : 51 pm\nto : romeo d ' souza / hou / ect @ ect , daren j farmer / hou / ect @ ect , ami\nchokshi / corp / enron @ enron , pat clynes / corp / enron @ enron\ncc :\nsubject : entex adjustments for 5 / 00\ni have reviewed the entex actuals and adjusted gas control ' s entex factor for\nthe month of may . i have found that entex estimates have been overstated by\napproximately 10 . 0 mmcf / day .\nromeo :\nwill you make sure the estimates that are in pops are corrected to reflect\nthe new volumes . this should help reduce some of the ua 4 that daren and pat\nare trying to locate .\nthe attached file has the changes that need to be made . please let everyone\non this mailing list know once the changes have been made .\nif you have any questions please call me at 36449 .\nthanks\ngary h", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.435+0000", "entityId": 2275, "properties": {"text": "Subject: with pre - bid coming up , how should i handle ces ? who will be responsible for\njune info ? also , who on the trade floor will be the devon contact ? bob\nsuperty asked me to be the point person initially , so maybe he has another\nperson in mind ( ed terry or kathy kelly - secondary contacts ) that he would\nlike to handle it besides someone on the texas desk . this way it could free\nour group up from that task . part of the reason i was handling it was because\ni wanted to make sure nothing that affects texas slips through the cracks ,\nespecially in the beginning . please advise .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.439+0000", "entityId": 2276, "properties": {"text": "Subject: global octane for may 2000\nattached is a m - t - d daily reading of gas that has flowed at meter # : 1528\nduring may 2000 production .\nthis data is provided to inform you of the activity at this meter .\nhpl is the only counterparty doing business at this meter thus , sitara\nticket # 92887 will take the swing .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.444+0000", "entityId": 2277, "properties": {"text": "Subject: re : pg & e texas contract 5098 - 695 for 2 / 00\nthis issue still has not been resolved , and it is effecting the pg & e\ncontract 5095 - 037 , hplc transport contract ta 99 - 027 , several deals on the\ninterconnect report , and causing payment issues for katherine herrera to\npanenergy marketing . i have sent several emails , faxed the daily ' s and left\nvoice messages , but have not received any updates to this issue .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 05 / 22 / 2000\n09 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstacey neuweiler 03 / 22 / 2000 12 : 43 pm\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : re : pg & e texas contract 5098 - 695 for 2 / 00\nsherlyn -\ni am looking into this with lorraine to figure this out . we did not nominate\nthis for the days you are referring to , but lorraine says she flowed this gas\neven though i cut the volume . i will let you know when this is resolved .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.448+0000", "entityId": 2278, "properties": {"text": "Subject: unify enhancement tracking list for ena upstream\nhi everyone ,\nsee attached a listing of the documented enhancements that pertain to ena\nupstream . what we need to do next is develop an impact for each one that\ngives an estimate of the number of hours saved for each item . please supply\nthese savings where your name is listed if you haven ' t already done so . the\nvision and purpose of this list is to provide holland & davis ( a consultant\n) and upper management with the necessary information to determine the extent\nof it resources that would be needed to enhance unify . i will need your\nreplies by cob may 31 st .\nthanks , mve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.452+0000", "entityId": 2279, "properties": {"text": "Subject: mtbe plant shut - down\nthe mtbe plant went down about 1 a . m . on saturday morning , may 20 , as a\nresult of power failure . apparently lightning knocked out the power\nsubstation .\nthe oleflex is starting up , along with the mtbe plant , and butamer . some\nproduction is expected tonight with full rains possibly attained tomorrow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.457+0000", "entityId": 2280, "properties": {"text": "Subject: meter 9794\ndaren - during the saxet thompsonville outage , may 8 - may 11 , the meter\nflowed a small volume with no nom . can you set up a deal for the days that\nflowed ?\n5 / 8 . 012\n5 / 9 0\n5 / 10 . 087\n5 / 11 6 . 970\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.461+0000", "entityId": 2281, "properties": {"text": "Subject: final - name change / mergers spreadsheet 5 / 00\nfor the name changes the legal names and erms sn have been updated on gcp .\ni did receive the kinder morgan , inc . merger document so was able to take\ncare of that this time around . note in particular my comments regarding the\nkinder morgan and enichem americas , inc . merger and name changes . call if\nthere are questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.466+0000", "entityId": 2282, "properties": {"text": "Subject: june wellhead prod est .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 05 / 23 / 2000 06 : 58\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n05 / 19 / 2000 11 : 09 am\nto : tom acton / corp / enron @ enron\ncc : melissa graves / hou / ect @ ect\nsubject : june wellhead prod est .\ntom ,\nplease see the attached file estimating wellhead production for the month of\njune . please be advised that this is a preliminary estimate as i have yet to\nmeet with the gas buyers ( the meeting is monday at 2 pm ) and to this date we\nhave not received any noms for june . i will update you with any revisions as\nthey occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.470+0000", "entityId": 2283, "properties": {"text": "Subject: june availabilities\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 22 / 2000\n09 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 22 / 2000 09 : 23 : 29 am\nto :\ncc :\nsubject : june availabilities\nami ,\nattached is the list of june availabilities for enron to sell . i have listed\nthe pipeline beside the offshore volumes and am in the process of doing the\nsame for the onshore . we are still waiting on a couple of volumes on some of\nthe outside operated properties and have estimated availabilities for those\nproperties . additionally , the pvr factors are estimated and will also be\nprovided as they become available .\nplease feel free to call me with any questions you have .\nthanks ,\nsteve\n- enronavailso 600 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.475+0000", "entityId": 2284, "properties": {"text": "Subject: sale to el paso merchant for 4 / 00\nstacey ,\nsettlements has brought an invoice to zero out a sale of 10 , 000 mmbtu to el\npaso merchant energy for 4 / 20 / 00 on pgev . there are 2 packages of 5000 deal\nnumbers 247426 and 247583 on the market side and deal 247676 on the supply\nside . these are hplc brokered deal on pgev that are buying and selling the\nsame 10 , 000 to el paso merchant energy . the purchase and sale price is the\nsame $ 3 . 02 . i do not know the intent of these deals so i am hesitant to just\nzero out the volume . will you let me know if that is okay ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.481+0000", "entityId": 2285, "properties": {"text": "Subject: re : ena sales on hpl\ndaren - thank you for the list of the true , remaining ena sales customers . i\nhave been researching your list & getting the contractual volumes that brenda\nneeds . i am confused about praxair though .\nthe sales contract between ena & praxair was assigned to hplc eff / 10 / 1 / 99 .\nthe only remaining contract between ena & praxair is a master financial\nagreement .\ndoes praxair really need to remain under ena or is it okay under hplc ? if it\nreally needs to be under ena , we will need to un - do the 10 / 1 / 99 assignment to\nhplc or set - up a new contract between ena & praxair .\nplease advise .\ndaren j farmer\n05 / 11 / 2000 03 : 11 pm\nto : cheryl dudley / hou / ect @ ect\ncc :\nsubject : re : ena sales on hpl\ncheryl ,\nthe counterparties with which ena currently sales gas are :\ncity of brazoria\ncentral illinois light company\nd & h gas company , inc .\nmarkham gas\nmerit energy partners\npraxair\nreliant energy - entex\nreliant energy - hl & p\nsouthern union company\ntexas utilities fuel company ( now txu fuel co )\nunion carbide corporation\nunit gas transmission company inc\nena has transacted with the other companies listed below , but that will most\nlikely not happen again . ( hpl will trade with those counterparties . )\nall ena trades on hpl will be in sitara . we have reports which can be\ngenerated out of cpr that can list all deals by counterparty for ena . let me\nknow if you need something like that .\nlet me know if you have any other questions .\nd\ncheryl d king\n05 / 10 / 2000 08 : 42 am\nsent by : cheryl dudley\nto : brenda f herod / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , mary m smith / hou / ect @ ect\nsubject : ena sales on hpl\njust to update you on this project ' s status :\nbased on a new report that scott mills ran for me from sitara , i have come up\nwith the following counterparties as the ones to which ena is selling gas off\nof hpl ' s pipe .\naltrade transaction , l . l . c . gulf gas utilities company\nbrazoria , city of panther pipeline , inc .\ncentral illinois light company praxair , inc .\ncentral power and light company reliant energy - entex\nces - equistar chemicals , lp reliant energy - hl & p\ncentral illinois light company southern union company\nd & h gas company , inc . texas utilities fuel company\nduke energy field services , inc . txu gas distribution\nentex gas marketing company union carbide corporation\nequistar chemicals , lp unit gas transmission company inc .\nsince i ' m not sure exactly what gets entered into sitara , pat clynes\nsuggested that i check with daren farmer to make sure that i ' m not missing\nsomething ( which i did below ) . while i am waiting for a response from him\nand / or mary smith , i will begin gathering the contractual volumes under the\nabove contracts .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cheryl dudley / hou / ect on 05 / 10 / 2000 07 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncheryl d king\n05 / 08 / 2000 04 : 11 pm\nsent by : cheryl dudley\nto : daren j farmer / hou / ect @ ect , mary m smith / hou / ect @ ect\ncc :\nsubject : ena sales on hpl\ni am working on a project for brenda herod & was wondering if one of you\ncould tell me if i ' m on the right track & if this will get everything for\nwhich she is looking .\nshe is trying to draft a long - term transport / storage agreement between ena &\nhplc which will allow ena to move the gas to their markets . in order to\naccomplish this , she needs to know all of the sales to customers that ena is\ndoing off of hpl ' s pipe .\ni had scott mills run a report from sitara showing all ena buy / sell activity\non hpl since 7 / 99 . if i eliminate the buys & the desk - to - desk deals , will\nthis give me everything that i need ?\nare there buy / sell deals done with ena on hpl ' s pipe that wouldn ' t show up in\nsitara ? someone mentioned something about deals where hpl transports the gas\non it ' s own behalf then ena sells it to a customer at that same spot - -\n? ? ? ? ? do deals like that happen ? would they show up in sitara ?\nis there anything else that i ' m missing ? i ' m not real familiar with how some\nof these deals happen nowadays so am very receptive to any\nideas / suggestions / help that you can offer ! ! !\nthanks in advance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.486+0000", "entityId": 2286, "properties": {"text": "Subject: conoco supply cuts on oasis 5 / 21 - 5 / 22\nconoco supply from el paso # 9 dwe was cut into oasis :\n5 / 21 nom 10 , 000 cut to 9 , 399 ( cut of 601 )\n5 / 22 nom 10 , 000 cut to 8 , 312 ( cut of 1 , 688 )\ndelivery into hpl from oasis katy kept whole .\ni entered these cuts in the estimate column in mops for both oasis / hpl &\noasis / ena . . . . please verify that is correct .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.494+0000", "entityId": 2287, "properties": {"text": "Subject: 24 x 5 products\nplease read the attached and make sure the schedulers understand this new\nproduct . this product will be available at all physical delivery points\nwithin eol that the texas desk currently trades . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 23 / 2000\n11 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : eric bass 05 / 23 / 2000 11 : 26 am\nto : david baumbach / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , michael\nwalters / hou / ect @ ect , bryan hull / hou / ect @ ect , jeff a crook / hou / ect @ ect , ami\nchokshi / corp / enron @ enron\ncc : steve venturatos / hou / ect @ ect , brenda f herod / hou / ect @ ect\nsubject : 24 x 5 products\nwe are going to be rolling out a new product on eol starting this bidweek .\nthis product will be for physical delivery only on the weekdays ( no weekend\ndelivery ) . currently , the eol / sitara bridge cannot handle this type of\nlogic , so these deals will have to be input manually .\nlet me know if you have further questions .\neric\n- - - - - - - - - - - - - - - - - - - - - - forwarded by eric bass / hou / ect on 05 / 23 / 2000 11 : 23 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndale neuner 05 / 23 / 2000 10 : 26 am\nto : david forster / corp / enron @ enron , sheri thomas / hou / ect @ ect , jennifer\ndeboisblanc denny / hou / ect @ ect , jason althaus / corp / enron @ enron , jason\nalthaus / corp / enron @ enron , melba lozano / hou / ect @ ect\ncc : eric bass / hou / ect @ ect\nsubject : 24 x 5 products\nwe are rolling out the use of the 24 x 5 nat gas product commencing tomorrow ,\nmay 24 th .\nthe product is a month - long physical nat gas product traded off the texas\ndesk . it will be identified as follows :\nus gas phy exxon katy wkd juno 0 usd / mm\nthis product is different from the usual products traded on the texas desk in\nthat the product description has an\nindicator of wkd , which designates that the product only moves gas on a day\nthat is a monday , tuesday , wednesday ,\nthursday or friday .\nthese products will not bridge into sitara . risk personnel will need to be\ndiligent to identify these products based\non the information in the product description to ensure that the products are\nentered into sitara correctly ( presumably -\nstrips of monday - friday trades and the corresponding month - starting days\nand / or month - ending days ) .\nwe understand the potential impact of having to manually input these\ntransactions and have asked the appropriate\nsystems personnel to examine the links between eol and sitara and consider\nbuilding bridge capability . in the\ninterim , we anticipate that the trading volume on these products will be low ,\nand will ask for higher prioritization of the\nbridging in the event that volumes increase .\ndale\n3 - 9746", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.501+0000", "entityId": 2288, "properties": {"text": "Subject: re : ena sales on hpl\nlast that i had , was that legal was reviewing the contract . which sounds\nlike it has been forgotten .\ncheryl : i would ask dan hyvl to find out where legal stands on this .\njulie\ndaren j farmer\n05 / 23 / 2000 10 : 34 am\nto : julie meyers / hou / ect @ ect , cheryl dudley / hou / ect @ ect\ncc :\nsubject : re : ena sales on hpl\njulie ,\nwhat info do you have on the praxair deal ( # 70171 ) ? should this be on ena or\nhplc ?\nd\ncheryl d king\n05 / 23 / 2000 09 : 27 am\nsent by : cheryl dudley\nto : daren j farmer / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect\nsubject : re : ena sales on hpl\ndaren - thank you for the list of the true , remaining ena sales customers . i\nhave been researching your list & getting the contractual volumes that brenda\nneeds . i am confused about praxair though .\nthe sales contract between ena & praxair was assigned to hplc eff / 10 / 1 / 99 .\nthe only remaining contract between ena & praxair is a master financial\nagreement .\ndoes praxair really need to remain under ena or is it okay under hplc ? if it\nreally needs to be under ena , we will need to un - do the 10 / 1 / 99 assignment to\nhplc or set - up a new contract between ena & praxair .\nplease advise .\ndaren j farmer\n05 / 11 / 2000 03 : 11 pm\nto : cheryl dudley / hou / ect @ ect\ncc :\nsubject : re : ena sales on hpl\ncheryl ,\nthe counterparties with which ena currently sales gas are :\ncity of brazoria\ncentral illinois light company\nd & h gas company , inc .\nmarkham gas\nmerit energy partners\npraxair\nreliant energy - entex\nreliant energy - hl & p\nsouthern union company\ntexas utilities fuel company ( now txu fuel co )\nunion carbide corporation\nunit gas transmission company inc\nena has transacted with the other companies listed below , but that will most\nlikely not happen again . ( hpl will trade with those counterparties . )\nall ena trades on hpl will be in sitara . we have reports which can be\ngenerated out of cpr that can list all deals by counterparty for ena . let me\nknow if you need something like that .\nlet me know if you have any other questions .\nd\ncheryl d king\n05 / 10 / 2000 08 : 42 am\nsent by : cheryl dudley\nto : brenda f herod / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , mary m smith / hou / ect @ ect\nsubject : ena sales on hpl\njust to update you on this project ' s status :\nbased on a new report that scott mills ran for me from sitara , i have come up\nwith the following counterparties as the ones to which ena is selling gas off\nof hpl ' s pipe .\naltrade transaction , l . l . c . gulf gas utilities company\nbrazoria , city of panther pipeline , inc .\ncentral illinois light company praxair , inc .\ncentral power and light company reliant energy - entex\nces - equistar chemicals , lp reliant energy - hl & p\ncentral illinois light company southern union company\nd & h gas company , inc . texas utilities fuel company\nduke energy field services , inc . txu gas distribution\nentex gas marketing company union carbide corporation\nequistar chemicals , lp unit gas transmission company inc .\nsince i ' m not sure exactly what gets entered into sitara , pat clynes\nsuggested that i check with daren farmer to make sure that i ' m not missing\nsomething ( which i did below ) . while i am waiting for a response from him\nand / or mary smith , i will begin gathering the contractual volumes under the\nabove contracts .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cheryl dudley / hou / ect on 05 / 10 / 2000 07 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncheryl d king\n05 / 08 / 2000 04 : 11 pm\nsent by : cheryl dudley\nto : daren j farmer / hou / ect @ ect , mary m smith / hou / ect @ ect\ncc :\nsubject : ena sales on hpl\ni am working on a project for brenda herod & was wondering if one of you\ncould tell me if i ' m on the right track & if this will get everything for\nwhich she is looking .\nshe is trying to draft a long - term transport / storage agreement between ena &\nhplc which will allow ena to move the gas to their markets . in order to\naccomplish this , she needs to know all of the sales to customers that ena is\ndoing off of hpl ' s pipe .\ni had scott mills run a report from sitara showing all ena buy / sell activity\non hpl since 7 / 99 . if i eliminate the buys & the desk - to - desk deals , will\nthis give me everything that i need ?\nare there buy / sell deals done with ena on hpl ' s pipe that wouldn ' t show up in\nsitara ? someone mentioned something about deals where hpl transports the gas\non it ' s own behalf then ena sells it to a customer at that same spot - -\n? ? ? ? ? do deals like that happen ? would they show up in sitara ?\nis there anything else that i ' m missing ? i ' m not real familiar with how some\nof these deals happen nowadays so am very receptive to any\nideas / suggestions / help that you can offer ! ! !\nthanks in advance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.506+0000", "entityId": 2289, "properties": {"text": "Subject: 24 x 5 products\nplease make sure this is clearly understood by the schedulers .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 23 / 2000\n09 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jennifer deboisblanc denny\n05 / 23 / 2000 05 : 11 pm\nto : steve venturatos / hou / ect @ ect , david baumbach / hou / ect @ ect , o ' neal d\nwinfree / hou / ect @ ect , michael walters / hou / ect @ ect , bryan hull / hou / ect @ ect ,\njeff a crook / hou / ect @ ect , julie meyers / hou / ect @ ect , ami\nchokshi / corp / enron @ enron\ncc : torrey moorer / hou / ect @ ect , tara sweitzer / hou / ect @ ect , brenda f\nherod / hou / ect @ ect , sheri thomas / hou / ect @ ect , imelda frayre / hou / ect @ ect , scott\nmills / hou / ect @ ect\nsubject : 24 x 5 products\neric bass , texas desk trader , requested the following product described below\nbe traded on enrononline . this product will not bridge into sitara and will\nhave to be put in manually .\nthe reason it will not bridge is due to the fact that it can have multiple\nstripes of start & end dates rather than one start & end date . currently ,\nenrononline can\nonly send one start & end date per deal therefore it will fail in the bridge\nmonitor and will have to be manually entered into sitara & subsequently\ncleared out of the monitor .\nsince these transactions could flow next day , it is imperative that these\ntransactions get into sitara as soon as possible . please read the full\ndescription below . ( this product looks like a month long deal but excludes\nweekends . the \" wkd \" is short for week days . )\nwe do not anticipate a large volume of these transactions but need to be\nprepared to react quickly when they do . for the future , we are looking into\nthe cost / benefit of enrononline having the capability of sending multiple\ndates for these types of products .\nif you have any questions , please call me at 3 - 5824\nthank you .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jennifer deboisblanc denny / hou / ect on\n05 / 23 / 2000 02 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndale neuner 05 / 23 / 2000 10 : 26 am\nto : david forster / corp / enron @ enron , sheri thomas / hou / ect @ ect , jennifer\ndeboisblanc denny / hou / ect @ ect , jason althaus / corp / enron @ enron , jason\nalthaus / corp / enron @ enron , melba lozano / hou / ect @ ect\ncc : eric bass / hou / ect @ ect\nsubject : 24 x 5 products\nwe are rolling out the use of the 24 x 5 nat gas product commencing tomorrow ,\nmay 24 th .\nthe product is a month - long physical nat gas product traded off the texas\ndesk . it will be identified as follows :\nus gas phy exxon katy wkd juno 0 usd / mm\nthis product is different from the usual products traded on the texas desk in\nthat the product description has an\nindicator of wkd , which designates that the product only moves gas on a day\nthat is a monday , tuesday , wednesday ,\nthursday or friday .\nthese products will not bridge into sitara . risk personnel will need to be\ndiligent to identify these products based\non the information in the product description to ensure that the products are\nentered into sitara correctly ( presumably -\nstrips of monday - friday trades and the corresponding month - starting days\nand / or month - ending days ) .\nwe understand the potential impact of having to manually input these\ntransactions and have asked the appropriate\nsystems personnel to examine the links between eol and sitara and consider\nbuilding bridge capability . in the\ninterim , we anticipate that the trading volume on these products will be low ,\nand will ask for higher prioritization of the\nbridging in the event that volumes increase .\ndale\n3 - 9746", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.511+0000", "entityId": 2290, "properties": {"text": "Subject: eastrans nom - 5 / 24 / 2000\nthe volume for the 24 th is in error . it is really 32 , 800 mmbtu / d .\nduke - disregard residue sales volumes and get from william speckels .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce mcmills / ftworth / pefs / pec on\n05 / 23 / 2000\n09 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n05 / 23 / 2000 09 : 00 am\nto : briley @ enron . com , dfarmer @ enron . com , stacey . neuweiler @ enron . com\ncc : michael r . cherry / easttexas / pefs / pec @ pec , chad w . cass / gcs / cec / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec\nsubject : eastrans nom - 5 / 24 / 2000\nthis is to nom 32 , 500 mmbtu into eastrans for 5 / 24 . 5 / 23 volume was reduced\nto 7 , 800 mmbtu with all redeliveries coming from fuels cotton valley .\nduke only - for 5 / 24 , the redeliveries will be 25 , 000 mmbtu per day at\ncarthage\ninto enron ' s cartwheel agreement\nand 7 , 800 from fuels cotton valley . sales at the tailgate will be 4 , 250\nmmbtu / d\nfor 5 / 24 . for 5 / 23 , the sales will be 7 , 020 mmbtu / d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.516+0000", "entityId": 2291, "properties": {"text": "Subject: eastrans nom - 5 / 24 / 2000\nthis is to nom 32 , 500 mmbtu into eastrans for 5 / 24 . 5 / 23 volume was reduced\nto 7 , 800 mmbtu with all redeliveries coming from fuels cotton valley .\nduke only - for 5 / 24 , the redeliveries will be 25 , 000 mmbtu per day at\ncarthage\ninto enron ' s cartwheel agreement\nand 7 , 800 from fuels cotton valley . sales at the tailgate will be 4 , 250\nmmbtu / d\nfor 5 / 24 . for 5 / 23 , the sales will be 7 , 020 mmbtu / d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.520+0000", "entityId": 2292, "properties": {"text": "Subject: hey - both of you guys did a great job on janet ' s deal . the pricing was done\ncorrectly . the swing i wasn ' t aware of , but 5000 + - per month is not a big\ndeal . the problem was that offers didn ' t get stood on .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.525+0000", "entityId": 2293, "properties": {"text": "Subject: i put in 35000 for the expected volume for the sale to sds / tufco . sitara\n276366", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.529+0000", "entityId": 2294, "properties": {"text": "Subject: # 6487 rangel / dewpoint\nplease see the attached memo . meter 98 - 6487 was shut - in at approximately\n10 : 30 am on tuesday , may 23 , 2000 . the meter was flowing approximately 7 . 50\nmmcf and will remain shut - in until the pumper completes repairs on their dehy\nsystem .\nif you have any questions please call me at 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 05 / 24 / 2000 11 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : kathy hilliard 05 / 23 / 2000 04 : 24 pm\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect , james\nmckay / hou / ect @ ect\ncc :\nsubject : # 6487 rangel / dewpoint\nrick ornelas called and said meter # 6487 rangel was shut in as they were\nflowing free liquids . the station will stay shut in until the dehy repairs\nare complete . the volume loss was 7500 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.534+0000", "entityId": 2295, "properties": {"text": "Subject: midtex\nafter comparing hpl ' s numbers with pg & e ' s numbers i have found a few\ndiscrepancies with the tufco volumes .\nhpl pg & e\n5 / 8 137 . 500 139 . 583\n5 / 11 103 . 750 100 . 833\n5 / 19 108 . 333 8 . 333\ndays 8 and 11 have small discrepancies . i got with carlos on the 5 / 19\ndiscrepancy . he checked the numbers sent to him by tufco . he verified that\nit should be 8 . 333 . i also checked with steve in gas control regarding what\nflowed for tufco . steve told me 8 . 300 . i have gone back into mops and\ncorrected these volumes . this should impact the ua 4 number . also , this\ndecreases the midtexas cumulative imbalance . as of 5 / 23 pg & e owes hpl\n4 . 649 . if you have any questions , please let me know .\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.538+0000", "entityId": 2296, "properties": {"text": "Subject: work distribution\nlogistics has made the following changes :\nbob cotten - will handle the wellhead portfolio ( currently handled by tom\nacton )\ntom acton - will handle gulf energy , entex , copano , sempra , and the rest of\ngeorge grant ' s desk\nmark mccoy - will handle oasis activity , midcon , wgr , lonestar , trunkline\njackie young - will handle exxon katy ( from susan )\nsabrae zajac - anadarko , conoco , tejas , coral , corpus christi , dynegy , and\nimbalance reports\nthanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.543+0000", "entityId": 2297, "properties": {"text": "Subject: june vacation\nplease submit your june vacation to me asap .\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.548+0000", "entityId": 2298, "properties": {"text": "Subject: june transport usage tickets\ni updated the june transport usage tickets today through hpl , and will be\nfinishing these tickets tomorrow . rates have been updated to reflect current\nmatrix rates and all baseload rates that i know of at this time . i have not\nyet received third party transport rates , so if you know of any , please let\nme know . also , i have zeroed out some volumes on some tickets for june , so\nyour schedulers will have to update volumes as they know them . rule of thumb\nwas that if i had to add a month , i refreshed the rate but left volume at\nzero . if the months were already on the ticket , then i refreshed the rate\nand left the volume as is .\ni would advise that your schedulers check volumes on all pipes to ensure\nthey ' re reflected in position manager correctly . please let me know if you\nhave any questions . all pipes will be updated by tomorrow morning .\nheidi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.553+0000", "entityId": 2299, "properties": {"text": "Subject: nomination 6 / 1 / 2000 - eastrans\nthis is to nominate 32 , 800 mmbtu / d into eastrans effective 6 / 1 / 2000 .\nredeliveries will be made as follows :\n25 , 000 into pg & e at carthage\n7 , 800 from fuels cotton valley\nduke - residue sales = 4 , 520 mmbtu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.558+0000", "entityId": 2300, "properties": {"text": "Subject: nomination 5 / 25 / 2000 and following - eastrans\nfor 5 / 25 / 2000 our nomination into eastrans will be 36 , 800 mmbtu / d .\nredeliveries will be :\n25 , 000 to hpl at carthage into hpl ' s cartwheel .\n7 , 800 from fuels cotton valley\n4 , 000 mmbtu to mobil beaumont\nour ; plans are to maintian these volumes through 5 / 31 / 2000 .\nduke - residue sales are as follows :\n25 th - 4 , 520 mmbtu / d\n26 th - 11 , 720 \"\n27 th - 8 , 120 \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.564+0000", "entityId": 2301, "properties": {"text": "Subject: astros tickets\nbrenda has a few ticket s that she would like to make available to you ,\neither for yourselves or for your teams .\nfirst come first serve but we would like to distribute these evenly so don ' t\nbe stingy !\nthey are\n2 tickets for tonight 7 : 05 pm vs philadelphia phillies\n4 tickets for friday , may 26 th 7 : 05 pm vs atlanta braves\n2 tickets for friday , may 26 th 7 : 05 pm vs atlanta braves\n2 tickets for saturday , june 3 rd 12 : 15 pm vs white sox\n2 tickets for tuesday , june 6 th 7 : 05 pm vs minnesota twins\n2 tickets for thursday , july 6 th 7 : 05 pm vs arizona diamond backs\n2 tickets for friday , july 21 st 7 : 05 pm vs st . louis cardinals\n2 tickets for tuesday , august 15 th 7 : 05 pm vs pittsburgh pirates\nthanx !\ny", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.570+0000", "entityId": 2302, "properties": {"text": "Subject: potential - june 00\ndaren :\nhere is a list of some potential new volume ( not on vances list )\natmic - hurta # 1 10 , 000 mmbtu / d\nroyal production - wilson unit # 1 2 - 3 , 000 mmbtu / d\nlet me know if you need anything else ,\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.575+0000", "entityId": 2303, "properties": {"text": "Subject: june 1 st\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 24 / 2000\n12 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 05 / 24 / 2000 10 : 08 : 07 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : june 1 st\n( see attached file : hpl - june . xls )\n- hpl - june . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.580+0000", "entityId": 2304, "properties": {"text": "Subject: mtbe upsets\nmtbe plant is up and running . production for tuesday , may 23 , was in excess\nof 12 mb .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.585+0000", "entityId": 2305, "properties": {"text": "Subject: june transport usage tickets\nthe tickets are finished . i have updated most of the third party tickets ,\nwith the exception of oasis / west of prairie lea and oasis / east of prairie\nlea . i saw several may tickets with this path , and want to conserve\ntickets . i set up one ticket for this path . please let me know if you have\nany questions . dave , once volumes get attached to these tickets , i would\nlike to run a basis adjustment report by pipe to double - check the desk\nrates . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by heidi withers / hou / ect on 05 / 25 / 2000 08 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : heidi withers 05 / 24 / 2000 06 : 27 pm\nto : david baumbach / hou / ect @ ect , pat clynes / corp / enron @ enron , daren j\nfarmer / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect\nsubject : june transport usage tickets\ni updated the june transport usage tickets today through hpl , and will be\nfinishing these tickets tomorrow . rates have been updated to reflect current\nmatrix rates and all baseload rates that i know of at this time . i have not\nyet received third party transport rates , so if you know of any , please let\nme know . also , i have zeroed out some volumes on some tickets for june , so\nyour schedulers will have to update volumes as they know them . rule of thumb\nwas that if i had to add a month , i refreshed the rate but left volume at\nzero . if the months were already on the ticket , then i refreshed the rate\nand left the volume as is .\ni would advise that your schedulers check volumes on all pipes to ensure\nthey ' re reflected in position manager correctly . please let me know if you\nhave any questions . all pipes will be updated by tomorrow morning .\nheidi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.590+0000", "entityId": 2306, "properties": {"text": "Subject: hpl xport ta 99 - 027 for 4 / 00 prod .\nloraine sent an allocation for fuel that is not scheduled . her schedule has\nfuel on days where there was no flow :\nday fuel\n5 40\n8 15\n9 14\ncan you let me know if we need to book fuel on this contract and what needs\nto be done on days where we have no flow ?\nwe called loraine and she told us to contact you since you are aware of this .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.596+0000", "entityId": 2307, "properties": {"text": "Subject: may nom\ndaren the stuff outlined in bold execpt for the helmerich and payne will be\nspot tickets per vance due to no flow till after the lst . . all the engage\nstuff in vances file will be spot deals as they were last month that totals\n1904 . also in vances file is the eex corporation stuff that will also be\nspot tickets that totals 12945 . every thing else is a go . let lme know if\nyou need anything else i am to please .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 05 / 25 / 2000 08 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor @ ect\n05 / 24 / 2000 05 : 57 pm\nto : tom acton / corp / enron @ enron\ncc :\nsubject : may nom\ntom ,\nhere ' s the latest and greatest .\nvlt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.604+0000", "entityId": 2308, "properties": {"text": "Subject: june 2000 co - owners volumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 25 / 2000\n05 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 25 / 2000 05 : 03 : 40 pm\nto :\ncc :\nsubject : june 2000 co - owners volumes\nplease see the attached list of co - owners volumes for june 2000 .\nsteve\n- 0600 co - owners volumes to enronl . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 25 / 2000\n05 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 05 / 25 / 2000 05 : 07 : 05\npm\nto :\ncc :\nsubject : quarantine bay\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.611+0000", "entityId": 2309, "properties": {"text": "Subject: revised avails\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 25 / 2000\n03 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 05 / 25 / 2000 03 : 14 : 16\npm\nto :\ncc :\nsubject : revised avails\nami ,\nplease see the attached revised availabilities effective may 27 , 2000 .\njacqueline blanchard\ncontract analyst\ndevon energy corporation\n( 405 ) 228 - 4204\n( 405 ) 552 - 4664\njacqueline . blanchard @ dvn . com\n- text . htm\n- wc 580 . xls\n- ei 330 - b . xls\n- ei 365 . xls\n- smi 23 . xls\n- ss 154 . xls\n- ss 198 - h . xls\n- ei 305 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.616+0000", "entityId": 2310, "properties": {"text": "Subject: revised volumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 25 / 2000\n03 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 25 / 2000 03 : 05 : 01 pm\nto :\ncc :\nsubject : revised volumes\nami ,\nthe attached reflects revised volumes and pvr factors for june . i am still\nwaiting on final volumes on a couple of non - operated wells and pvr factors\nfrom tennessee . i ' ll send you the co - owner volumes this afternoon as well .\nsteve\n- enronavailso 600 revised . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.620+0000", "entityId": 2311, "properties": {"text": "Subject: natural gas nomination for 06 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for june 2000 :\n36 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for june 2000 :\n9 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.625+0000", "entityId": 2312, "properties": {"text": "Subject: re : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey daren ,\nwe ' re back on this issue again . there is gas out there for days 1 - 3 and 6 - 20\nbut the deal is only good for 21 - 31 .\ncan you assist anita and i w / a deal number to place the lst 20 days on .\nanita is attempting to close this issue .\nas usual , thanks for your help .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 05 / 26 / 2000 08 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n05 / 26 / 2000 08 : 41 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 26 / 2000 08 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 10 / 2000 02 : 13 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\nwe are back on this issue again . . . . . . . . . . . the deal was only good for day\n21 - 31 , don ' t we have to find out who this gas belong ' s to for days 1 - 20 ?\nstephanie still thinks this should be for encina . please advice .\nthanks\njackie young\n04 / 03 / 2000 05 : 19 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\ni ' ve just reallocated the meter . . . . . . . . . . . . . . . . . . . . . . . . . give a minute\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 18\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n04 / 03 / 2000 05 : 14 pm\nto : jackie young / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nyes\njackie young\n04 / 03 / 2000 05 : 10 pm\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\ndaren ,\nthe above mentioned meter is on stranger ' s for the entire month of jan .\n2000 . there is a deal ticket applicable to this meter from jan . 21 st thru\nthe 31 st . is it o . k . for volume management to apply volumes from the 21 st\nthru the 31 st to the 215 ?\ni don ' t know what kind of issues was associated with this deal .\nthanks\n- jackie -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 03 / 2000 05 : 00 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie , any luck on the issue w / the gas allocated to \" stranger ' s gas \" at\nthis meter . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 04 / 03 / 2000 02 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 04 / 03 / 2000 10 : 00 am\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nanita , have you found out any further information about this meter . encina\nstill beleives that we owe them for this gas .\nthanks , stephanie ( 3 - 6004 )\nanita luong\n03 / 03 / 2000 02 : 11 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\ni see that the gas at this meter is allocated to \" stranger ' s \" in pops .\nstephanie gomes in settlement thinks that this could be encina ' s gas . i see\nin sitara that deal 152638 is only valid from the 21 st - 31 st . can you\nplease take a look .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 03 / 03 / 2000 01 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 03 / 03 / 2000 01 : 34 pm\nto : anita luong / hou / ect @ ect\ncc : charlene richmond / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey anita ,\nfor meter # 0986725 , 1 / 00 production , i am showing per meter statement that\n41 , 671 mmbtu flowed . is that gas really encina ' s . has the volume just not\nbeen allocated yet . could you let me know what the deal is on the meter .\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.630+0000", "entityId": 2313, "properties": {"text": "Subject: nom change - effective may 27 , 2000 - sg marshall - hpl meter\n98 - 6296\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 05 / 26 / 2000 11 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 05 / 25 / 2000 04 : 04 : 12 pm\nto : charlotte _ hawkins @ enron . com\ncc : tacton @ enron . com , crodrig @ enron . com\nsubject : nom change - effective may 27 , 2000 - sg marshall - hpl meter 98 - 6296\ndue to loss of production from the sg marshall leases , a nom change from\n3 , 300 to 2 , 400 mmbtu / d at hpl meter 98 - 6296 delivery @ hpl thompsonville\n( pg & e meter 834134 ) will be effective may 27 , 2000 . please call me at\n( 713 ) 651 - 6858 with any questions . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.635+0000", "entityId": 2314, "properties": {"text": "Subject: re : meter # 0986725 - 1 / 00 production - encina gas marketing\nanita ,\ni spoke w / daren and he apprised that he e - mailed craig and that craig has to\nre - negotiate the deal and daren will respond to me on tuesday next week .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 05 / 26 / 2000 03 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n05 / 26 / 2000 08 : 45 am\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey daren ,\nwe ' re back on this issue again . there is gas out there for days 1 - 3 and 6 - 20\nbut the deal is only good for 21 - 31 .\ncan you assist anita and i w / a deal number to place the lst 20 days on .\nanita is attempting to close this issue .\nas usual , thanks for your help .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 05 / 26 / 2000 08 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n05 / 26 / 2000 08 : 41 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 26 / 2000 08 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 10 / 2000 02 : 13 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\nwe are back on this issue again . . . . . . . . . . . the deal was only good for day\n21 - 31 , don ' t we have to find out who this gas belong ' s to for days 1 - 20 ?\nstephanie still thinks this should be for encina . please advice .\nthanks\njackie young\n04 / 03 / 2000 05 : 19 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\ni ' ve just reallocated the meter . . . . . . . . . . . . . . . . . . . . . . . . . give a minute\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 18\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n04 / 03 / 2000 05 : 14 pm\nto : jackie young / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nyes\njackie young\n04 / 03 / 2000 05 : 10 pm\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\ndaren ,\nthe above mentioned meter is on stranger ' s for the entire month of jan .\n2000 . there is a deal ticket applicable to this meter from jan . 21 st thru\nthe 31 st . is it o . k . for volume management to apply volumes from the 21 st\nthru the 31 st to the 215 ?\ni don ' t know what kind of issues was associated with this deal .\nthanks\n- jackie -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 03 / 2000 05 : 00 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie , any luck on the issue w / the gas allocated to \" stranger ' s gas \" at\nthis meter . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 04 / 03 / 2000 02 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 04 / 03 / 2000 10 : 00 am\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nanita , have you found out any further information about this meter . encina\nstill beleives that we owe them for this gas .\nthanks , stephanie ( 3 - 6004 )\nanita luong\n03 / 03 / 2000 02 : 11 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\ni see that the gas at this meter is allocated to \" stranger ' s \" in pops .\nstephanie gomes in settlement thinks that this could be encina ' s gas . i see\nin sitara that deal 152638 is only valid from the 21 st - 31 st . can you\nplease take a look .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 03 / 03 / 2000 01 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 03 / 03 / 2000 01 : 34 pm\nto : anita luong / hou / ect @ ect\ncc : charlene richmond / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey anita ,\nfor meter # 0986725 , 1 / 00 production , i am showing per meter statement that\n41 , 671 mmbtu flowed . is that gas really encina ' s . has the volume just not\nbeen allocated yet . could you let me know what the deal is on the meter .\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.640+0000", "entityId": 2315, "properties": {"text": "Subject: nomination 6 / 1 / 2000 - eastrans\nrevisions for 6 / 1 / 2000 on behalf of bruce mcmills :\nthis is to nominate 33 , 450 mmbtu / d into eastrans effective 6 / 1 / 2000\nredeliveries will be made as follows :\n25 , 000 into pg & e at carthage\n8 , 450 from fuels cotton valley\nduke residue sales\n6 / 1 4 , 520 mmbtu\n6 / 2 5 , 690 mmbtu\n6 / 3 5 , 105 mmbtu\n- - - - - - - - - - - - - - - - - - - - - - forwarded by william e . speckels / gcs / cec / pec on\n05 / 26 / 2000 01 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n05 / 24 / 2000 02 : 06 pm\nto : briley @ enron . com , dfarmer @ enron . com , stacey . neuweiler @ enron . com\ncc : michael r . cherry / easttexas / pefs / pec @ pec , chad w . cass / gcs / cec / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , jim i . fields / gcs / cec / pec @ pec , stephen\ng . martin / transm / tetco / pec @ pec\nsubject : nomination 6 / 1 / 2000 - eastrans\nthis is to nominate 32 , 800 mmbtu / d into eastrans effective 6 / 1 / 2000 .\nredeliveries will be made as follows :\n25 , 000 into pg & e at carthage\n7 , 800 from fuels cotton valley\nduke - residue sales = 4 , 520 mmbtu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.645+0000", "entityId": 2316, "properties": {"text": "Subject: revised june avails .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 26 / 2000\n05 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 26 / 2000 05 : 06 : 05 pm\nto :\ncc :\nsubject : revised june avails .\nthe attached reflects changes to the carthage ( exxon ) piece and the hi 140 .\nsteve\n- enronavailso 600 revised 3 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.650+0000", "entityId": 2317, "properties": {"text": "Subject: ces volumes on tejas\njune volumes on tejas are attached .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.655+0000", "entityId": 2318, "properties": {"text": "Subject: june 2000 availabilities - 2 nd revision\nchanges apply to eugene island ( sonat ) , garden banks , and virginia - corpus\nchristi ( d farmer )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 26 / 2000\n09 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 26 / 2000 08 : 57 : 14 am\nto :\ncc : \" jan svajian \"\nsubject : june 2000 availabilities - 2 nd revision\nplease see the attached revision to the june availabilities .\nthanks ,\nsteve\n- enronavailso 600 revised 2 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.659+0000", "entityId": 2319, "properties": {"text": "Subject: may activity survey\nattached please find the activity survey for the month of may , 2000 .\ni am sending the survey out this time as an opportunity to introduce myself\nto those of you i have not yet met . i am being asked to take a direct roll\nin the further development and rollout of the operations pricing model ( fka\ntransaction cost model ) . in the past , i have directed the implementation of\nseveral pricing systems based on activity based costing similar to the\noperations pricing model ( opm ) . over the past couple of weeks my\nobservations of the model have lead me to be concerned with the quality of\ndata used in the model . it will take efforts by both you and the opm team to\nget to a satisfactory level of data quality . this process can start with\nthis months data collection efforts . please pay particular attention this\nmonth as the \" bar is being raised \" by the management of energy operations for\ndata quality and timeliness .\nthe attached survey drives your costs from your activities to the commercial\nteams . please select your rcs , and fill in the driver quantity for the\nrequested driver for the month of may . please fill out the attached activity\ndriver survey with may numbers for your rc and return to shari mao by end of\nday friday , june 2 .\nplease note the following updates :\nfor nat gas , sally beck is interested in physical ( as denoted as ph in the\nsurvey ) vs . financial ( as denoted as fi in the survey ) numbers , please\nprovide statistics accordingly\nif a driver has not been updated per your request , please call or email\njennifer reside\nif you have additional updates / suggestions or items that need correction ,\nplease call or email jennifer reside\nif your group currently generates a standard report that captures the\nsurveyed data , please send the report to jennifer reside . this will\neliminate your need to fill out this survey every month . if you would like\nus to collect this information from someone within your team beginning next\nmonth , please let jennifer know .\nplease contact jennifer reside x 3 - 5971 with questions ( shari is on vacation\nthis week ) , or if you are unable to complete the survey within the allotted\ntime .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.664+0000", "entityId": 2320, "properties": {"text": "Subject: may hours survey\nattached please find the hours survey and instructions for the month of may ,\n2000 .\ni am sending the survey out this time as an opportunity to introduce myself\nto those of you i have not yet met . i am being asked to take a direct roll\nin the further development and rollout of the operations pricing model ( fka\ntransaction cost model ) . in the past , i have directed the implementation of\nseveral pricing systems based on activity based costing similar to the\noperations pricing model ( opm ) . over the past couple of weeks my\nobservations of the model have lead me to be concerned with the quality of\ndata used in the model . it will take efforts by both you and the opm team to\nget to a satisfactory level of data quality . this process can start with\nthis months data collection efforts . please pay particular attention this\nmonth as the \" bar is being raised \" by the management of energy operations for\ndata quality and timeliness .\nwhile completing the survey , take this time to review last month ' s numbers .\nplease return these surveys to shari mao by end of day friday , june 2 .\nplease note the following changes :\nthe nat gas rc ' s will now see deal validation and transportation rate\nactivities therefore , these surveys will be notably longer but will not\nnecessarily take more time\nif the survey does not contain an activity that your team spends time on ,\nplease do not type any activities in the survey . contact jennifer reside at\n# 35971 to discuss how to proceed .\nif you have any questions relating to the model or this survey , or are unable\nto meet the survey due date , please call jennifer reside at # 35971 ( shari is\non vacation this week ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.668+0000", "entityId": 2321, "properties": {"text": "Subject: re : meter # 0986725 - 1 / 00 production - encina gas marketing\nhello again ,\nhave you anything about 98 - 6725 for 1 / 2000 production for the lst 20 days of\nthe month yet ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 05 / 30 / 2000 12 : 37\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n05 / 30 / 2000 11 : 01 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njust want to check on this again . please let me know if you hear anything .\nthanks .\njackie young\n05 / 26 / 2000 03 : 02 pm\nto : anita luong / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nanita ,\ni spoke w / daren and he apprised that he e - mailed craig and that craig has to\nre - negotiate the deal and daren will respond to me on tuesday next week .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 05 / 26 / 2000 03 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n05 / 26 / 2000 08 : 45 am\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey daren ,\nwe ' re back on this issue again . there is gas out there for days 1 - 3 and 6 - 20\nbut the deal is only good for 21 - 31 .\ncan you assist anita and i w / a deal number to place the lst 20 days on .\nanita is attempting to close this issue .\nas usual , thanks for your help .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 05 / 26 / 2000 08 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n05 / 26 / 2000 08 : 41 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 05 / 26 / 2000 08 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 10 / 2000 02 : 13 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\nwe are back on this issue again . . . . . . . . . . . the deal was only good for day\n21 - 31 , don ' t we have to find out who this gas belong ' s to for days 1 - 20 ?\nstephanie still thinks this should be for encina . please advice .\nthanks\njackie young\n04 / 03 / 2000 05 : 19 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\ni ' ve just reallocated the meter . . . . . . . . . . . . . . . . . . . . . . . . . give a minute\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 18\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n04 / 03 / 2000 05 : 14 pm\nto : jackie young / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nyes\njackie young\n04 / 03 / 2000 05 : 10 pm\nto : daren j farmer / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\ndaren ,\nthe above mentioned meter is on stranger ' s for the entire month of jan .\n2000 . there is a deal ticket applicable to this meter from jan . 21 st thru\nthe 31 st . is it o . k . for volume management to apply volumes from the 21 st\nthru the 31 st to the 215 ?\ni don ' t know what kind of issues was associated with this deal .\nthanks\n- jackie -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 04 / 03 / 2000 05 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong\n04 / 03 / 2000 05 : 00 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie , any luck on the issue w / the gas allocated to \" stranger ' s gas \" at\nthis meter . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 04 / 03 / 2000 02 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 04 / 03 / 2000 10 : 00 am\nto : anita luong / hou / ect @ ect\ncc :\nsubject : re : meter # 0986725 - 1 / 00 production - encina gas marketing\nanita , have you found out any further information about this meter . encina\nstill beleives that we owe them for this gas .\nthanks , stephanie ( 3 - 6004 )\nanita luong\n03 / 03 / 2000 02 : 11 pm\nto : jackie young / hou / ect @ ect\ncc : stephanie gomes / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\njackie ,\ni see that the gas at this meter is allocated to \" stranger ' s \" in pops .\nstephanie gomes in settlement thinks that this could be encina ' s gas . i see\nin sitara that deal 152638 is only valid from the 21 st - 31 st . can you\nplease take a look .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 03 / 03 / 2000 01 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 03 / 03 / 2000 01 : 34 pm\nto : anita luong / hou / ect @ ect\ncc : charlene richmond / hou / ect @ ect\nsubject : meter # 0986725 - 1 / 00 production - encina gas marketing\nhey anita ,\nfor meter # 0986725 , 1 / 00 production , i am showing per meter statement that\n41 , 671 mmbtu flowed . is that gas really encina ' s . has the volume just not\nbeen allocated yet . could you let me know what the deal is on the meter .\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.673+0000", "entityId": 2322, "properties": {"text": "Subject: june ' s update\nhere is the lastest and greatest .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.678+0000", "entityId": 2323, "properties": {"text": "Subject: schedule / jerseys\nhello team ,\ni ' m going to get the forms for the baskeball association today for everyone\nto fill out . the fees are going to be $ 10 for the association and $ 10 for\nthe leauge entry fee . the ymca will provide jerseys for each game or we can\nbuy our own . let me know what you want to do . the games start next wednesday ,\ni should have a schedule pretty soon .\nb", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.683+0000", "entityId": 2324, "properties": {"text": "Subject: job number\nyour job number is 104210 . it will be posted on the enron website by 6 : 00\np . m .\nthank you ,\nfelicia solis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.688+0000", "entityId": 2325, "properties": {"text": "Subject: re : job posting\ndaren , is this position budgeted and who does it report to ?\nthanks\ntoni graham\nx 39995\ndaren j farmer @ ect\n05 / 30 / 2000 06 : 30 am\nto : toni graham / corp / enron @ enron\ncc :\nsubject : job posting\ntoni ,\nattached is the job posting for my group . please process this as soon as\npossible . thanks .\ndaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.694+0000", "entityId": 2326, "properties": {"text": "Subject: new intramonth book\nql ) are you going to be setting up an hplc - ft - waha ?\nq 2 ) roll up issues for positions\ndoes tom want this part of the market area position - or separate from market\narea ?\ncurrent\ncpr sitara portfolio\nn / a texas position - combined region hlpc - im hplc , hplc - im wellhead , hplr - im\ntexas , ena - im texas\ntexas texas position - ena / hplr hplr - im texas , ena - im texas\nhplc texas position - ena - im texas ena - im texas\nhplcwell texas position - hplc - im wellhead hplc - im wellhead\nn / a texas position - hplr - im texas hplr - im texas\ntexas / hplc texas position - market area position hlpc - im hplc , hplr - im texas ,\nena - im texas\nproposed additions or changes -\nwaha texas position - hplc - im waha hplc - im waha\ntexasreg texas position - combined region hlpc - im hplc , hplc - im wellhead ,\nhplr - im texas , ena - im texas , hplc - im waha\nrename texas / hplc in cpr to texasmkt - / / need to know if this includes\nhplc - im waha - or should this be separate from market area\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thomas engel / hou / ect on 05 / 30 / 2000 12 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital management\nfrom : david baumbach 05 / 30 / 2000 11 : 50 am\nto : imelda frayre / hou / ect @ ect , scott mills / hou / ect @ ect , thomas\nengel / hou / ect @ ect\ncc :\nsubject : new intramonth book\nplease send me all forms / requests that need to be filled out to set up a new\nintramonth book for the texas desk . also , what do you think the timeline is\nfor getting the new book set up ?\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.698+0000", "entityId": 2327, "properties": {"text": "Subject: unify close schedule\nthe following is our close schedule for this coming month . please keep in\nmind the following key times . . .\nunify to sitara bridge back 1 : 45 p . m . wednesday , may 31 st ( all errors must be\nclear by this time )\nmass draft at 6 p . m . wednesday evening\naccrual process begins thursday , june lst at 6 a . m .\nif you have any changes to this timeline , please ensure that i am contacted\nas soon as possible .\nthanks ,\nmechelle\nx 37278", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.703+0000", "entityId": 2328, "properties": {"text": "Subject: revised nominations\ndaren ,\nwe have received revised nominations from prize energy resources , l . p . for\njune , 2000 . the revisions are as follows :\nmeter # original volume revised volume\n5579 2 , 209 2 , 536\n6534 1 , 906 1 , 123\n6614 2 , 215 2 , 128\ndo you want me to enter the revised volumes ? please advise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.710+0000", "entityId": 2329, "properties": {"text": "Subject: f . o . m . nomination eff . june 1 , 2000\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan d trevino / hou / ect on 05 / 30 / 2000\n08 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 05 / 26 / 2000 10 : 01 : 15 am\nto : \" susan trevino ( e - mail ) \"\ncc : \" taylor vance ( e - mail ) \" , stretch brennan\n, knox westmoreland\nsubject : f . o . m . nomination eff . june 1 , 2000\nthis is the estimated josey ranch nomination for the month of june\n2000 . the hpl nomination volume to be effective 6 / 1 / 2000 is :\n9 , 500 mmbtu / day for kcs resources\n1 , 800 mmbtu / day for texaco\n11 , 300 mmbtu / day total ( assumed btu factor of 1 . 076 @ 14 . 65\ndry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , 5555 san felipe , suite 1200\nhouston , tx 77056\nvoice mail / page 713 - 964 - 9434", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.716+0000", "entityId": 2330, "properties": {"text": "Subject: smi 23\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 30 / 2000\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 05 / 30 / 2000 08 : 46 : 45\nam\nto :\ncc :\nsubject : smi 23\nami ,\nplease be advised of the revised availability on smi 23 . please see attached\nsheet .\nthank you ,\njacqueline blanchard\ncontract analyst\ndevon energy corporation\n( 405 ) 228 - 4204\n( 405 ) 552 - 4664\njacqueline . blanchard @ dvn . com\n- text . htm\n- smi 23 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.722+0000", "entityId": 2331, "properties": {"text": "Subject: 98 - 6892\n98 - 6892 has a spill - over of 15 decatherms for 5 / 24 / 2000 . can you please\nextend deal ticket 274443 for cover this ?\nthank\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.727+0000", "entityId": 2332, "properties": {"text": "Subject: panenergy marketing march 2000 production\ndaren ,\nthis relates to the discussion we had yesterday afternoon . have we made any\nprogress on these issues ?\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa csikos / hou / ect on 05 / 31 / 2000 01 : 33\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera @ enron\n05 / 31 / 2000 10 : 56 am\nto : lisa csikos / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : panenergy marketing march 2000 production\nfyi -\nthe pricing items noted below are outstanding for march 2000 production .\nfurthermore , i am awaiting resolutions from sherlyn on the pg & e ' s allocations\nfor feb . & mar . 2000 .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n05 / 31 / 2000 10 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 20 / 2000 08 : 31 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : panenergy marketing march 2000 production\ndeal # 157288\nper our conversation yesterday afternoon , pls . separate the centena term deal\nfrom the spot deal in sitara for march 2000 production .\nalso , i need to have the price for the east texas redelivery changed in\nsitara from hs index $ - . 085 to hs index $ - . 0825 . this is per the contract\nthe price for this redelivery point .\nthanks\nkatherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.731+0000", "entityId": 2333, "properties": {"text": "Subject: revised nomination - june , 2000\ndaren ,\nfyi . we have received a revised nomination as follows :\nc / p name meter # original nomination revised nomination\nmaynard oil 6674 5 , 459 5 , 547\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.736+0000", "entityId": 2334, "properties": {"text": "Subject: hpl buy / sell reports\nfyi . i provided two reports to david baumbach . the reports were downloaded\nto excel and saved to o : \\ logistics \\ buy _ sell _ hpl _ may _ 2000 and\nbuy _ sell _ hpl _ may _ 13 _ 2000 . the first report reflects buys / sells by hpl across\nall pipes for the entire month of may . the second report reflects buys / sells\nby hpl across all pipes for may 13 , 2000 , only . both reports were derived\nfrom the volume management module of unify . please advise if you need\nadditional information .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.741+0000", "entityId": 2335, "properties": {"text": "Subject: revised nomination - june , 2000\ndaren ,\ncharlotte hawkins is having trouble confirming the volume of 5 , 733 with el\npaso . el paso will not confirm the volume that high . eog revised their\nnomination as follows :\nc / p name meter # orig nom rev nom\neog res . 6296 5 , 733 2 , 300\nwill you approve revising the volume in unify down to 2 , 300 ? please advise .\nthanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.745+0000", "entityId": 2336, "properties": {"text": "Subject: bennington / lamar power ua 4 data\ncall me with any questions .\ngary h", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.749+0000", "entityId": 2337, "properties": {"text": "Subject: vacation\ni will be on vacation friday , june 2 through monday , june 12 . in my absence\nplease direct any questions or issues to these people .\nbammel storage - george grant\ntexaco - stella\nmidtexas - carlos\ncp & l - charlotte\nhl & p - charlotte\nconfirmation of meters - robert\nerror reports - sabrae\nif you have any questions before i leave , just let me know .\n- aimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.754+0000", "entityId": 2338, "properties": {"text": "Subject: megan jones\nsteve / daren ,\ni interviewed this candidate and really liked her . she has previous\nallocations and settlements experience , but really wants to do financial\naccounting . as you will see on her resume , she is doing internal auditing at\nfoleys . she was honest with me that she did not necessarily want to do\nallocations again and that she really enjoyed working with the schedulers and\ntraders , although she doesn ' t necessarily want to schedule or trade . she\nmentioned risk specifically . i think she would be an asset to enron . please\nuse at your discretion . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 05 / 31 / 2000 11 : 09 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : lisa csikos 05 / 22 / 2000 03 : 09 pm\nto : rita wynne / hou / ect @ ect\ncc :\nsubject : megan jones\nany interest in this candidate ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa csikos / hou / ect on 05 / 22 / 2000 03 : 09\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sharon douglas \" on 05 / 22 / 2000 01 : 13 : 09 pm\nto : \" lisa csikos \"\ncc : \" tony vasut \" , \" toni graham \"\nsubject : megan jones\ngood afternoon everyone ,\ni would like to present megan jones for consideration of the sr . specialist\nposition ( job 103143 )\nas for your essential requirements , she meets and exceeds them all .\naccounting degree from ut , very detailed , knowledge of the gas industry ,\nexcellent communication skills , and over 2 years of experience .\nregarding essential functions , she could perform them right away . her\nresume shows detail of experience .\nmegan left coral energy to get into a department at sonat which would\nprovide her more of a challenge . she was truly being utilized as a\n\" bean - counter \" and wanted more interaction with others . she went to work at\nsonat which she says is the best job she ever had . she enjoyed the company ,\npeople , everything . . . as you know , sonat was bought by el paso which ended\nher position along with others in her department .\nshe honestly took her current position in haste , but also thought it would\ngive her the experience of using her accounting skills , but having more\ninteraction with others in an audit capacity . this has not been the case .\nshe misses the industry , and learns quickly , very social and has no problem\ninteracting with people at all levels .\nlet me know your thoughts and any questions you may have .\nbest regards ,\nsharon\nsharon douglas , accounting / finance recruiter\n713 - 952 - 6655 office\n713 - 952 - 0972 fax\n713 - 712 - 5588 pager\nsdouglas @ resourcestaffing . com\n- megan jones . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.758+0000", "entityId": 2339, "properties": {"text": "Subject: hpl noms for june 01 , 2000\n( see attached file : hplo 601 . xls )\n- hplo 601 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.763+0000", "entityId": 2340, "properties": {"text": "Subject: energy operations , gas operations - organizational changes\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 05 / 31 / 2000\n12 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nheather choate\n05 / 31 / 2000 12 : 29 pm\nto : sally beck / hou / ect @ ect , brent a price / hou / ect @ ect , d todd\nhall / hou / ect @ ect , eugenio perez / hou / ect @ ect , james scribner / corp / enron @ enron ,\nkristin albrecht / hou / ect @ ect , leslie reeves / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , michael e moscoso / hou / ect @ ect , scott\nmills / hou / ect @ ect , sheila glover / hou / ect @ ect , sheri thomas / hou / ect @ ect , shona\nwilson / na / enron @ enron , stephen p schwarz / hou / ect @ ect , hunter s\nshively / hou / ect @ ect , phillip k allen / hou / ect @ ect , thomas a\nmartin / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron ,\nscott neal / hou / ect @ ect , robin barbe / hou / ect @ ect , sandra f\nbrawner / hou / ect @ ect , john d burrows / hou / ees @ ees , tammi\ndepaolis / corp / enron @ enron , kate fraser / hou / ect @ ect , chris\ngermany / hou / ect @ ect , scott hendrickson / hou / ect @ ect , brad horn / hou / ect @ ect ,\ndick jenkins / hou / ect @ ect , dan junek / hou / ect @ ect , jared kaiser / hou / ect @ ect ,\nkaren d mcilvoy / hou / ect @ ect , brad mckay / hou / ect @ ect , jonathan\nmckay / cal / ect @ ect , susan w pereira / hou / ect @ ect , andrea ring / hou / ect @ ect ,\ngregory schockling / corp / enron @ enron , colleen sullivan / hou / ect @ ect , judy\ntownsend / hou / ect @ ect , brenda f herod / hou / ect @ ect , briant baker / hou / ect @ ect ,\ntricia bowen / hou / ect @ ect , sabra l dinari / hou / ect @ ect , edward\nterry / hou / ect @ ect , joe a casas / hou / ect @ ect , christina\nsanchez / corp / enron @ enron , katherine l kelly / hou / ect @ ect , meredith\nmitchell / hou / ect @ ect , victoria versen / hou / ect @ ect , clarissa\ngarcia / hou / ect @ ect , beverly beaty / hou / ect @ ect , robert allwein / hou / ect @ ect ,\ncindy vachuska / hou / ect @ ect , jesse villarreal / hou / ect @ ect , joan\nveselack / corp / enron @ enron , phillip villagomez / corp / enron @ enron , joann\ncollins / corp / enron @ enron , cynthia franklin / corp / enron @ enron , angie\nzeman / corp / enron @ enron , steve gillespie / corp / enron @ enron , alvin\nthompson / corp / enron @ enron , george smith / hou / ect @ ect , maria garza / hou / ect @ ect ,\ncharles t muzzy / hou / ect @ ect , mark l schrab / hou / ect @ ect , lisa\nkinsey / hou / ect @ ect , margie straight / hou / ect @ ect , reyna cabrera / hou / ect @ ect ,\ndarren espey / corp / enron @ enron , cora pendergrass / corp / enron @ enron , kirk\nlenart / hou / ect @ ect , wes dempsey / na / enron @ enron , jacqueline p\nadams / hou / ect @ ect , stacey j brewer / hou / ect @ ect , suzanne\nchristiansen / hou / ect @ ect , brenda everett / hou / ect @ ect , randall l\ngay / hou / ect @ ect , patti sullivan / hou / ect @ ect , natalie baker / hou / ect @ ect ,\ndenise squirrel / hou / ect @ ect , morgan sharifi / corp / enron @ enron , gary l\npayne / hou / ect @ ect , kathryn bussell / hou / ect @ ect , mark mcclure / hou / ect @ ect ,\nrichard pinion / hou / ect @ ect , donna greif / hou / ect @ ect , victor\nlamadrid / hou / ect @ ect , molly johnson / hou / ect @ ect , jason williams / hou / ect @ ect ,\ncarrie hollomon / hou / ect @ ect , kimberly s olinger / hou / ect @ ect , brenda h\nfletcher / hou / ect @ ect , jeff coates / hou / ect @ ect , mary theresa\nfranklin / hou / ect @ ect , michael taylor / na / enron @ enron , robert\nshiring / hou / ect @ ect\ncc : kimberly brown / hou / ect @ ect , chantelle villanueva / hou / ect @ ect , patti\nthompson / hou / ect @ ect , alex saldana / hou / ect @ ect , irena d hogan / hou / ect @ ect ,\nsusan harrison / hou / ect @ ect , robert superty / hou / ect @ ect\nsubject : energy operations , gas operations - organizational changes\neffective immediately the following organizational changes will take effect\nwithin the energy operations , gas operations team .\nkathy kelly will assume the role of manager of the off - system volume\nmanagement team . kathy will be responsible for the day to day management and\ndevelopment of the volume management team and will also lead the effort to\nreconcile historical imbalance and accounting issues . kathy ' s logistics\nexperience and strong knowledge of both the upstream and downstream processes\nwill help to develop a more cohesive and responsive energy operations team .\nkathy will report directly to susan harrison , director gas operations .\nvictor lamadrid will be promoted to the northeast logistics manager and will\nhandle the day to day trading interface role as well as the day to day\nmanagement and development of the northeast logistics team . victor ' s\nextensive knowledge of many northeast pipes coupled with his asset management\nroles and his experience as northeast lead will help strengthen the northeast\nteam . victor will report directly to bob superty , director gas logistics and\nwill work closely with both east desk directors , dick jenkins and scott neal ,\non staffing and desk management issues .\nbeverly beaty will assume the role of northeast lead and will be assisting\nvictor with the day to day management of the northeast team . beverly has\nrecently served as transco lead and has also been involved in asset\ntransactions on the east desk . beverly brings many years of experience to\nher new role .\nin addition to the above , in an effort to balance out the overall management\nresponsibilities on the east gas desk , the tennessee and columbia gulf\nscheduling team along with steve gillespie will now report to the southeast\nmanager ed terry .\nplease join us in congratulating kathy , victor and beverly in their new roles .\nsusan harrison and bob superty .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.768+0000", "entityId": 2341, "properties": {"text": "Subject: wc 551 revision and notice of force majeure ( stingray p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 31 / 2000\n10 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 31 / 2000 10 : 13 : 23 am\nto : , ,\ncc :\nsubject : wc 551 revision and notice of force majeure ( stingray p / l )\nplease see the attached change to west cameron 551 and the notice of force\nmajeure .\nthanks ,\nsteve\n- wc 551 reveffo 53000 . xls\n- wc 551 forcemajeureo 530002 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.773+0000", "entityId": 2342, "properties": {"text": "Subject: revised june avails . - gb 128 ( sea robin p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 31 / 2000\n08 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 31 / 2000 08 : 46 : 57 am\nto : ,\ncc :\nsubject : revised june avails . - gb 128 ( sea robin p / l )\ni forgot to include the garden banks 128 on the sea robin pvr revisions .\nsteve\n- enronavailso 600 revised 4 . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 31 / 2000\n08 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 31 / 2000 08 : 58 : 12 am\nto : ,\ncc :\nsubject : ei 316 revision effective 6 / 01 / 00 ( tennessee gas p / l )\nplease see the attached change to be effective 6 / 01 / 2000 .\nami - all of this gas will be priced at excess pricing .\nsteve\n- ei 316 reveffo 60100 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.778+0000", "entityId": 2343, "properties": {"text": "Subject: revised june availabilities\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 05 / 31 / 2000\n08 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 05 / 31 / 2000 08 : 38 : 28 am\nto : ,\ncc :\nsubject : revised june availabilities\nthe attached reflects changes to the sea robin pvr factors for the june\n2000 . i have left the dbq volumes as they were originally set and decreased\nthe excess volumes .\nplease let me know of any questions you have .\nthanks ,\nsteve\n- enronavailso 600 revised 4 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.782+0000", "entityId": 2344, "properties": {"text": "Subject: meter 385\ndaren - is there a reason there is a nom of 20 . 000 / day at meter 385 ? this is\na non - allocatable meter .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.787+0000", "entityId": 2345, "properties": {"text": "Subject: re : nomination 6 / 1 / 2000 - eastrans\nrevisions for 6 / 1 / 2000 forward . sent on behalf of bruce mcmills\nthis it to nominate 8 , 450 mmbtu / d into eastrans for 6 / 1 .\nnominate 33 , 450 mmbtu / d into eastrans for 6 / 2 forward .\nredeliveries will be made as follows :\n8 , 450 from fuels cotton valley ( 6 / 1 )\n25 , 000 into hpl cw 497 ( 6 / 2 forward )\n8 , 450 from fuels cotton valley ( 6 / 2 forward )\nduke residue sales :\n6 / 1 - 4 , 520 mmbtu / d\n6 / 2 - 8 , 190 mmbtu / d\n6 / 3 forward - 5 , 105 mmbtu / d\nwilliam e . speckels\n05 / 26 / 2000 01 : 51 pm\nto : briley @ enron . com , dfarmer @ enron . com , stacey . neuweiler @ enron . com\ncc : michael r . cherry / easttexas / pefs / pec @ pec , chad w . cass / gcs / cec / pec @ pec ,\njulia a . urbanek / gcs / cec / pec @ pec , donna c . spencer / gcs / cec / pec @ pec , john\na . bretz / gcs / cec / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec\nsubject : nomination 6 / 1 / 2000 - eastrans\nrevisions for 6 / 1 / 2000 on behalf of bruce mcmills :\nthis is to nominate 33 , 450 mmbtu / d into eastrans effective 6 / 1 / 2000\nredeliveries will be made as follows :\n25 , 000 into pg & e at carthage\n8 , 450 from fuels cotton valley\nduke residue sales\n6 / 1 4 , 520 mmbtu\n6 / 2 5 , 690 mmbtu\n6 / 3 5 , 105 mmbtu\n- - - - - - - - - - - - - - - - - - - - - - forwarded by william e . speckels / gcs / cec / pec on\n05 / 26 / 2000 01 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce mcmills\n05 / 24 / 2000 02 : 06 pm\nto : briley @ enron . com , dfarmer @ enron . com , stacey . neuweiler @ enron . com\ncc : michael r . cherry / easttexas / pefs / pec @ pec , chad w . cass / gcs / cec / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , jim i . fields / gcs / cec / pec @ pec , stephen\ng . martin / transm / tetco / pec @ pec\nsubject : nomination 6 / 1 / 2000 - eastrans\nthis is to nominate 32 , 800 mmbtu / d into eastrans effective 6 / 1 / 2000 .\nredeliveries will be made as follows :\n25 , 000 into pg & e at carthage\n7 , 800 from fuels cotton valley\nduke - residue sales = 4 , 520 mmbtu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.792+0000", "entityId": 2346, "properties": {"text": "Subject: ami , , , ,\ni agree ! !\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tim powell / lsp / enserch / us on 06 / 01 / 2000\n11 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nami . chokshi @ enron . com on 06 / 01 / 2000 11 : 13 : 13 am\nto : tim powell / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu ,\ndaren . j . farmer @ enron . com\ncc :\nsubject :\nand the final numbers for may are . . .\niferc 1 , 240 , 000 ( last volume was 72084 on day 18 )\nenron 930 , 000 ( last volume was 21667 on day 26 )\ngas daily 1 , 033 , 416 ( last volume was 80000 on day 31 )\nplease advise ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.798+0000", "entityId": 2347, "properties": {"text": "Subject: and the final numbers for may are . . .\niferc 1 , 240 , 000 ( last volume was 72084 on day 18 )\nenron 930 , 000 ( last volume was 21667 on day 26 )\ngas daily 1 , 033 , 416 ( last volume was 80000 on day 31 )\nplease advise ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.803+0000", "entityId": 2348, "properties": {"text": "Subject: revision # 1 - enron actuals for may 18 , 2000\nteco tap 72 . 084 / hpl iferc\n. 416 / hpl gas daily\ncharlie stone\n05 / 19 / 2000 11 : 39 am\nto : daren . j . farmer @ enron . com , crodrig @ ect . enron . com , melissa jones / texas\nutilities @ tu , gary green / texas utilities @ tu , ken\nenglish / lsp / enserch / us @ tu , ami _ chokshi @ enron . com ,\ngary _ hanks @ ect . enron . com , earl . tisdale @ enron . com , tim\npowell / lsp / enserch / us @ tu\ncc :\nsubject : enron actuals for may 18 , 2000\nmay 18 , 2000\nteco tap 69 . 167 / hpl iferc\n3 . 333 / hpl gas daily\ntexoma 30 . 000 / hpl gas daily\nls hpl katy 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.811+0000", "entityId": 2349, "properties": {"text": "Subject: enron actuals for may 31 , 2000\nteco tap 80 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.818+0000", "entityId": 2350, "properties": {"text": "Subject: revision # 1 - enron actuals for may 11 , 2000\ncorrect numbers are teco tap 100 . 833 / hpl iferc\nto : daren . j . farmer @ enron . com , crodrig @ ect . enron . com , melissa jones / texas\nutilities @ tu , charlie stone / texas utilities @ tu , gary green / texas\nutilities @ tu , ken english / lsp / enserch / us @ tu , ami _ chokshi @ enron . com ,\ngary _ hanks @ ect . enron . com , earl . tisdale @ enron . com\ncc :\nsubject : enron actuals for may 11 , 2000\nteco tap 103 . 750 / hpl iferc\ntexoma 30 . 000 / enron\nls hpl - katy 12 . 000 / enron\nls teco katy 8 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.824+0000", "entityId": 2351, "properties": {"text": "Subject: goldston outage\nper kevin at goldston they will be doing a plant turnaround on the 19 , 20 ,\n21 , and will be flowing 0 at the point ( 989603 ) for those days . just wanted\nto give you a heads up in advance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.828+0000", "entityId": 2352, "properties": {"text": "Subject: re : revised nomination - june , 2000\ndaren ,\nfyi . per our discussion , the following nominations were revised on eog\nresources :\nmeter # orig nom rev nom deal #\n5263 4 , 755 5 , 820 126355\n6067 3 , 726 4 , 600 126281\n6748 2 , 005 3 , 300 126360\n6742 4 , 743 10 , 120 126365\n6296 5 , 733 2 , 300 126281\nbob\ndaren j farmer\n05 / 31 / 2000 05 : 51 pm\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : revised nomination - june , 2000\nbob ,\ngo ahead and accept the nom revision . i believe that this is with pge , not\nel paso . how do the rest of our noms compare with eog ? i f they have a\nhigher volume at another meter than we do , i would like to increase our nom\nthere . in effect , i want to keep our physical index position as close as\npossible to what we have in the system now .\nd\nenron north america corp .\nfrom : robert cotten 05 / 31 / 2000 04 : 04 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : revised nomination - june , 2000\ndaren ,\ncharlotte hawkins is having trouble confirming the volume of 5 , 733 with el\npaso . el paso will not confirm the volume that high . eog revised their\nnomination as follows :\nc / p name meter # orig nom rev nom\neog res . 6296 5 , 733 2 , 300\nwill you approve revising the volume in unify down to 2 , 300 ? please advise .\nthanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.832+0000", "entityId": 2353, "properties": {"text": "Subject: carthage ( american central ) nomination\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 01 / 2000\n05 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 01 / 2000 04 : 15 : 11 pm\nto :\ncc :\nsubject : carthage ( american central ) nomination\nchad called and said you guys are requestiing approximately 74 , 000 mmbtu\neffective june 1 . i show the number should be 72 , 240 mmbtu / d . could you\nplease check into this and let me know what ' s going on ?\nthanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.837+0000", "entityId": 2354, "properties": {"text": "Subject: nom change on tetco\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 01 / 2000\n11 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 01 / 2000 10 : 46 : 47 am\nto :\ncc :\nsubject : nom change on tetco\nsee attached\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.841+0000", "entityId": 2355, "properties": {"text": "Subject: re : lubrizol - bayport\ngerald lofton @ ect\n06 / 01 / 2000 10 : 20 am\nto : pat clynes / corp / enron @ enron , james mckay / hou / ect @ ect , molly l\ncarriere / hou / ect @ ect , charlie thompson / gco / enron @ enron\ncc : steve hpl schneider / hou / ect @ ect\nsubject : lubrizol - bayport\nmtr . # 1179\nharris county , tx\nour gas supply contract with lubrizol expired effective may 1 , 2000 and\nlubrizol began purchasing from tejas . lubrizol has decided not to execute a\nkeep - ready agreement with hpl to keep this meter on stand - by . therefore ,\nplease take the necessary steps to classify this meter as ' inactive ' and\ninsure that no future volumes flow through this meter .\ncharlie - we will leave this station in place for now and try to recapture\nthis market in three years . please have this station locked and secured as\nsoon as possible to prevent lubrizol from taking any unauthorized volumes\nshould tejas be unable to deliver gas for any reason .\nthanks , gerald ( # 39919 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.846+0000", "entityId": 2356, "properties": {"text": "Subject: 98 - 1601\nplease extend the sale at lockhart to southern union for two extra days at\nthe same price .\nthank you ,\njanet\n- - - - - - - - - - - - - - - - - - - - - - forwarded by janet h wallis / hou / ect on 06 / 02 / 2000\n10 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n06 / 02 / 2000 09 : 32 am\nto : janet h wallis / hou / ect @ ect\ncc :\nsubject : 98 - 1601\ncan you please extend deal # 254839 to cover flow for 5 / 20 and 5 / 21 ? on the\n20 th , 578 decatherms flowed . on the 21 st , 109 decatherms flowed .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.851+0000", "entityId": 2357, "properties": {"text": "Subject: meter 9687\ndaren ,\nsean in gas control called and said meter 9687 was flowing approx . 16 , 000\nmmbtu / day . the nomination is for 24 , 000 mmbtu / day . the c / p is costilla\nenergy and the deal # is 125783 . do you want me to adjust ? please advise .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.856+0000", "entityId": 2358, "properties": {"text": "Subject: bammel pma ' s\nthese are revised schedules for jan , mar , & apr 2000 and the estimate\n( scheduled ) volumes for may .\nthe prices were revised to capture texas general storage revenue ( fuel\nretention ) in jan , mar , & apr . the fuel volumes are shown as a zero buy\nprice for the storage book .\nthe april also has volume true - ups due to actual metered volumes . ( schedule\n6 ) . another adjustment was made in april to true up the cumulative facility\nbalance , ( 4 , 295 mmbtu ) .\nthanks ,\nkenny", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.860+0000", "entityId": 2359, "properties": {"text": "Subject: schedule\nhere is our schedule . i need the 10 bucks from those of you who haven ' t paid\nyet . do you want to try to get together this weekend and get some practice\nin ? let me know of your availability .\nbryan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.864+0000", "entityId": 2360, "properties": {"text": "Subject: revision # 3 - same day change - hpl nom for june 2 , 2000\n( see attached file : hplo 602 . xls )\n- hplo 602 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.869+0000", "entityId": 2361, "properties": {"text": "Subject: enron / hpl actuals for june 1 , 2000\nteco tap 52 . 500 / hpl iferc\ntexoma 20 . 000 / enron\nls hpl lsk ic 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.873+0000", "entityId": 2362, "properties": {"text": "Subject: hpl nom for june 3 , 2000\n( see attached file : hplo 603 . xls )\n- hplo 603 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.879+0000", "entityId": 2363, "properties": {"text": "Subject: re : new turn - on range resources\nvance ,\na ticket has been created and entered in sitara based on the information\nbelow . the deal number is 287507 . thanks .\nbob\nvance l taylor\n06 / 02 / 2000 10 : 23 am\nto : tom acton / corp / enron @ enron , robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , heidi withers / hou / ect @ ect , julie\nmeyers / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : new turn - on range resources\nrobert / tom ,\nthe following production commenced to flow earlier in the week and a ticket\nshould be created and entered into sitara based on the following :\ncounterparty meter volumes price period\nrange resources corporation 9832 350 mmbtu / d 100 % gasdaily less $ 0 . 18 5 / 30\n- 5 / 31\nfyi , susan will create and submit a committed reserves firm ticket for june\nand for the remaining term of the deal beginning with the month of july once\nshe recieves a reserve study . additionally , this is a producer svcs . deal\nand should be tracked in the im wellhead portfolio . . . attached to the\ngathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.884+0000", "entityId": 2364, "properties": {"text": "Subject: doc and merry byington ' s new son\nthe message below was sent friday afternoon and came back with an incorrect\naddress . merry gave me the corrected e - mail address shown above .\nnew developments . merry and the baby went home this afternoon and he has now\nbeen named . he is brandon aaron byington\nhi there , darren & tonya ,\nmerry and doc had their new baby at 9 : 26 am yesterday . no name yet . they are\nstill trying to settle on one , so in the mean time , i ' m just calling him \" new\nchild \" byington .\nhe weighed 7 lbs 2 oz and was 19 1 / 4 \" long . merry , doc , and \" new child \" are\ndoing fine . doc was in there during the whole delivery ( c section ) so he says\nhe was a bit shakey there a time or two .\nhere are some digital camera pics i took when \" n . c . \" was less thasn an hour\nold .\n- attl . htm\n- grndsnla . jpg\n- grandsn 2 . jpg\n- grandsn 3 . jpg\n- grandsn 4 . jpg\n- grandsn 5 . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.889+0000", "entityId": 2365, "properties": {"text": "Subject: weekend activity dated : june 2 thru june 4 th\nfriday night - - 6 : 45 pm :\nsherry fontenot ( w / texaco ) called stating tank batteries 5 debbie valenzuela called concerning some channel changes\nmatter was resolved around 8 : 30 am\nshawn { in gas control } also mention equistar had pull gas at their\npt . arthur plant / mtr . # 1062 , approx . gas flow of 6 . 0 mm for the weekend .\ni will inform janice burke davis { w / equistar } of there weekend\nactivity . she did not nominate this point for june business .\n9 : 30 am : / 6 : 00 pm cindy golly called with a cut at texoma { mtr . 71 } of\n4 , 886 - mm for saturday . meter total should be 79 , 059 mm on k # : hpl 216\n1 : 40 pm : karen zinn ( w / louis dryfus ) called with a cut on oasis katy ( mtr\n# 6780 ) totaling 31 , 595 . oasis & midcon ( down stream p / line ) were\nnotified . note : paul mcpheeters @ oasis meter total = 70 , 945\n1 : 00 pm daren called to inform me of an additional 20 . 0 mm cut at texoma .\nk # hpl 215 .\ncindy reconfirm the point as 50 , 945 - mm for gas day sunday , june 4 th .\npleas check meters : 6780 , 71 , 68 for weekend scheduling changes . k # :\n012 - 35985 - 201", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.893+0000", "entityId": 2366, "properties": {"text": "Subject: mtbe plant - lightning strikes again\nthe mtbe plant took another lightning strike about 2 p . m . on saturday , june\n3 . the plant is coming back up and expects to reach temperatures to start\nmaking some product about midnight tonight , june 4 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.898+0000", "entityId": 2367, "properties": {"text": "Subject: performance feedback\neach of you have been chosen by one or more of my direct reports to provide\nmid - year feedback . i just wanted to urge you to provide this to me asap , as\nmy prc meeting wil be 6 / 13 , even though the feedback system is open through\n6 / 16 . therefore , i need your feedback by friday , 6 / 9 so that i can use the\nweek - end to get ready . although i would prefer the feedback through the\nsystem , if you are finding yourself in a bind for time , please provide me\nyour feedback verbally either through voicemail ( mark it private ) or i would\nbe happy to meet with you .\ni know we all receive many of these requests , but i sincerely appreciate\nconstructive feedback . thanks in advance for your input !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.903+0000", "entityId": 2368, "properties": {"text": "Subject: re : 98 - 1601\njanet ,\n. 16 decatherms allocated at this meter for 5 / 31 / 2000 . can you please extend\ndeal ( one more time for me ) for 5 / 31 / 2000 .\nthanks again for your help .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 06 / 05 / 2000 11 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n06 / 02 / 2000 11 : 00 am\nto : janet h wallis / hou / ect @ ect , jackie young / hou / ect @ ect\ncc :\nsubject : re : 98 - 1601\ndone\nto : dfarmer @ enron . com\ncc : pam . leigh @ southernunionco . com\nsubject : 98 - 1601\nplease extend the sale at lockhart to southern union for two extra days at\nthe same price .\nthank you ,\njanet\n- - - - - - - - - - - - - - - - - - - - - - forwarded by janet h wallis / hou / ect on 06 / 02 / 2000\n10 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n06 / 02 / 2000 09 : 32 am\nto : janet h wallis / hou / ect @ ect\ncc :\nsubject : 98 - 1601\ncan you please extend deal # 254839 to cover flow for 5 / 20 and 5 / 21 ? on the\n20 th , 578 decatherms flowed . on the 21 st , 109 decatherms flowed .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.908+0000", "entityId": 2369, "properties": {"text": "Subject: re : system 550 unmetered gas\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pitre / hou / ect on 06 / 05 / 2000 11 : 58\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : patricia kirkwood @ enron 05 / 23 / 2000 10 : 14 am\nto : becky pitre / hou / ect @ ect\ncc :\nsubject : re : system 550 unmetered gas\n- - - - - - - - - - - - - - - - - - - - - - forwarded by patricia kirkwood / gpgfin / enron on\n05 / 23 / 2000 10 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntommy hicks\n05 / 15 / 2000 10 : 57 am\nto : patricia kirkwood / gpgfin / enron @ enron\ncc :\nsubject : re : system 550 unmetered gas\nuse the 802 unmetered number for edna .\nthanks\nthicks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tommy hicks / gco / enron on 05 / 15 / 2000 10 : 55\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : patricia kirkwood 05 / 15 / 2000 10 : 17 am\nto : pat flavin / gco / enron @ enron , tom cathey / gco / enron @ enron , tommy\nhicks / gco / enron @ enron , sam shaw / gco / enron @ enron\ncc : gary anderson / gpgfin / enron @ enron , cheryl jones / gpgfin / enron @ enron , esther\ngarcia / gpgfin / enron @ enron , peggy cameron / gpgfin / enron @ enron , clara\ndavis / gpgfin / enron @ enron\nsubject : re : system 550 unmetered gas\nwhich unmetered station is to be used : 802 , 812 , 830 , 831 , 860 or 950 ?\ntommy hicks\n05 / 15 / 2000 08 : 49 am\nto : cheryl jones / gpgfin / enron @ enron , esther garcia / gpgfin / enron @ enron ,\npatricia kirkwood / gpgfin / enron @ enron , gary anderson / gpgfin / enron @ enron\ncc : pat flavin / gco / enron @ enron , tom cathey / gco / enron @ enron\nsubject : system 550 unmetered gas\non 5 / 10 / 00 a pipeline leak was found on system 550 . by the evidence found\nit is believed to have been present for several months . we need to go back to\nat least january ' 00 for corrections . please input this gas loss to the\nsystem 550 balance . the estimated gas loss for january through april is as\nfollows :\njanuary : 103 , 058 mcf 105 , 066 dth\nfebruary : 97 , 219 mcf 99 , 114 dth\nmarch : 106 , 015 mcf 108 , 082 dth\napril : 95 , 214 mcf 97 , 070 dth\ngas loss for may will be forwarded as soon as we obtain the pressure readings\nfrom meter\n986501 - 10 .\nattached is the supporting documentation\nused to calculate these volumes :\nif you have any questions please call .\nthanks\nthicks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.914+0000", "entityId": 2370, "properties": {"text": "Subject: re : more unmetered gas loss\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pitre / hou / ect on 06 / 05 / 2000 12 : 09\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy klussmann 05 / 15 / 2000 11 : 28 am\nto : steve hpl schneider / hou / ect @ ect\ncc : karry kendall / hou / ect @ ect , becky pitre / hou / ect @ ect , carol\ncarter / hou / ect @ ect , alexia o pearce / hou / ect @ ect , jim coffey / hou / ect @ ect\nsubject : re : more unmetered gas loss\nsteve ,\ntwo questions :\n1 ) . does the answer below suffice for our needs ?\nand\n2 ) . if yes , and with pat ' s answer in mind , would this be a cost that would\ngo to your group first , then to ed as o & m , or would it go directly to ed ?\ni am not sure who has the ability to control these cost more directly , you or\ned ?\nthanks ,\ntroy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by troy klussmann / hou / ect on 05 / 15 / 2000\n10 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npat flavin @ enron\n05 / 15 / 2000 09 : 46 am\nto : becky pitre / hou / ect @ ect\ncc : steve hpl schneider / hou / ect @ ect , troy klussmann / hou / ect @ ect\nsubject : re : more unmetered gas loss\nbecky ,\nin reviewing the spread the minimal volumes being reported are associated\nwith the gas that supplies instrumentation on the pipeline , i . e . pressure and\nflow controllers , actuators , valve positioners , gas quality sampling and\nmonitoring equipment , etc .\nbecky pitre @ ect\n05 / 15 / 2000 08 : 41 am\nto : pat flavin / gco / enron @ enron\ncc :\nsubject : more unmetered gas loss\npat , troy klussman was wanting to know when you would have something on the\ngas loss request below . thanks . becky\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pitre / hou / ect on 05 / 15 / 2000 08 : 39\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbecky pitre\n05 / 10 / 2000 09 : 14 am\nto : pat flavin / gco / enron @ enron\ncc :\nsubject : more unmetered gas loss\npat , attached is a file for unmetered gas loss for february 2000 . you have\nalready answered my questions regarding meters 0980805 , 0980877 and 0980803 .\nafter meeting with steve schneider it was decided to take a closer look at\ngas loss . steve would like explanations for all gas loss in feb . 2000 . the\nattached file should help you . all volumes in blue need an explanation . let\nme know if there is anything you need from me or if there is anything i can\ndo . thank you . becky", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.922+0000", "entityId": 2371, "properties": {"text": "Subject: weekend activity dated : june 2 thru june 4 th\nrevision # 1\nfriday night - - 6 : 45 pm :\nsherry fontenot ( w / texaco ) called stating tank batteries 5 debbie valenzuela called concerning some channel changes\nmatter was resolved around 8 : 30 am\nshawn { in gas control } also mention equistar had pull gas at their\npt . arthur plant / mtr . # 1062 , approx . gas flow of 6 . 0 mm for the weekend .\ni will inform janice burke davis { w / equistar } of there weekend\nactivity . she did not nominate this point for june business .\n9 : 30 am : / 6 : 00 pm cindy golly called with a cut at texoma { mtr . 71 } of\n4 , 886 - mm for saturday . meter total should be 79 , 059 mm on k # : hpl 216\n1 : 40 pm : karen zinn ( w / louis dryfus ) called with a cut on oasismidcon\ntotaling 31 , 595 . oasis & midcon ( down stream p / line ) were notified .\nnote : paul mcpheeters @ oasis meter total = 70 , 945\n1 : 00 pm daren called to inform me of an additional 20 . 0 mm cut at texoma .\nk # hpl 215 .\ncindy reconfirm the point as 50 , 945 - mm for gas day sunday , june 4 th .\nthe 20 . 0 cut at texoma { mtr . 71 } was moved to pgev / midtexas dewvill\n( 980388 ) .\npleas check meters : 6780 , 71 , 68 for weekend scheduling changes . k # :\n012 - 35985 - 201", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.928+0000", "entityId": 2372, "properties": {"text": "Subject: duke energy - # 5192 - 1999 issues\nstephanie :\nmeter 6757 is done , redraft your invoice for both months and let me know if\nthis meter is still an issue .\nmeter 5192 . i never heard back from aimee on which transport contract to\nattach the deal 269123 to so for the months in question the gas is still\nallocated to the strangers gas contract . aimee is out on vacation until\nmid - june so i put in a call to daren farmer to find out which transport\ncontract i should attach the deal 269123 to .\nwhen i find out which transport contract to use i will set up the accounting\narrangements and then get robert lloyd to put the contract in pops and\nreallocate .\nfred\nfrom : stephanie gomes 06 / 01 / 2000 08 : 55 am\nto : fred boas / hou / ect @ ect\ncc :\nsubject : duke energy - meter # 6757 , # 5192 - issue for 1999\nhey fred ,\ni have the deal numbers for you for duke energy . could you please let me\nknow when you have allocated the gas to these meters .\ni am also forwarding other emails about these two deals for your records . if\nyou have any questions , please give me a call .\nthanks , stephanie\nmeter # 0986757 deal # 266962 4 / 1 / 99 - 4 / 30 / 99 and 5 / 1 / 99 - 5 / 31 / 99\nmeter # 0985192 deal # 269123 5 / 1 / 99 - 5 / 31 / 99 and 7 / 1 / 99 - 7 / 31 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie gomes / hou / ect on 06 / 01 / 2000\n08 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 05 / 11 / 2000 03 : 45 pm\nto : fred boas / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : crow o ' connor meter 6757\nfred & stephanie - meter 6757 has been reallocated .\nstephanie - what price does duke show we owe them for the months in question ?\nfred boas\n05 / 11 / 2000 03 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect\nsubject : crow o ' connor meter 6757\naimee :\nplease put the ena 201 contract at this meter for april and may of 1999 with\nthe track id 117848 and reallocate the meter for both months . after this is\ndone please let stephanie and i know so that she can redraft her invoice the\nnext day after pops bridges to mops . also with respect to the second issue\nwhere daren is asking for the price , stephanie may be able to help you with\nthis because she has a copy of duke ' s invoice .\nstephanie :\nthe crow o ' conner meter is essentially fixed . when aimee reallocates you\nwill have to wait until the next day to redraft your invoice . when aimee\ngets back with us please redraft the invoice the next day and let me know if\nthis issue is resolved .\nfred\ndaren j farmer\n05 / 11 / 2000 02 : 14 pm\nto : aimee lannou / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : sarco lateral and crow o ' connor meters\ni have created deal 266962 for the volumes at mtr 6757 .\nwhat price is duke reporting for the mtr 5192 volumes ? the only activity\nwe ' ve had out there is payback with koch .\nd\naimee lannou 05 / 09 / 2000 03 : 30 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : sarco lateral and crow o ' connor meters\ndaren - have you had a chance to look at this ?\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 09 / 2000 03 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 05 / 04 / 2000 03 : 26 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\ndaren - can you set up new deals for meter 6757 and 5192 ?\nmeter 6757 crow o ' connor - counterparty duke energy & trading\nmonth contract deal #\njune 99 ena 201 87426\njuly 99 hpl 215 95072\naug 99 hpl 215 102775\nsept 99 hpl 215 110502\nmeter 5192 sarco lateral\nno deal has ever been set up for meter 5192 for duke energy & trading .\nthere is flow for may , july and nov . 99 .\nwill you please let me know if you set up new deals for these meters ?\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 04 / 2000 03 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n05 / 04 / 2000 12 : 08 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\naimee :\nthe crow o ' connor , meter 6757 has its gas allocated to strangers gas for\napril and may 1999 and duke has been calling settlements asking for their\nmoney . i will need to set up accounting arrangements for this meter for\nthese months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\nin addition , the sarco lateral , meter 5192 has its gas allocated to strangers\ngas for may and july 1999 and duke has been calling settlements asking for\ntheir money . i will need to set up accounting arrangements for this meter\nfor these months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\ni would like to get this done asap since the customer is calling settlements\nand we start close next week .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.933+0000", "entityId": 2373, "properties": {"text": "Subject: mary poorman interview schedule & resume\nplease be advised that the interview for mary poorman , to be held today will\nbe in room 3671 . the schedule is as follows :\npat clynes 2 : 30\nlauri allen 3 : 00\ngary hanks 3 : 30\ndaren farmer 4 : 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.938+0000", "entityId": 2374, "properties": {"text": "Subject: mary poorman interview schedule\nplease be advised that the interview for mary poorman , to be held today will\nbe in room 3671 . the schedule is as follows :\npat clynes 2 : 30\nlauri allen 3 : 00\ngary hanks 3 : 30\ndaren farmer 4 : 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.943+0000", "entityId": 2375, "properties": {"text": "Subject: hpl noms for june 06 , 2000\n( see attached file : hplo 606 . xls )\n- hplo 606 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.948+0000", "entityId": 2376, "properties": {"text": "Subject: enron actuals for june 02 thru 04 , 2000\njune 2 teco tap 56 . 250 / hpl iferc\ntexoma 20 . 000 / hpl iferc\nls hpl katy 40 . 000 / enron\njune 3 teco tap 30 . 000 / enron\n60 . 000 /\nhpl iferc\njune 4 teco tap 75 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.954+0000", "entityId": 2377, "properties": {"text": "Subject: new su bridge\nthe new sitara to unify bridge monitor is in production .\nthe monitor shows deals in error state ( failed ) or in queue to bridge\n( pending ) - for deals going to unify from sitara .\nyou will find it under - start - programs - trading - sitara - su bridge\nmonitor .\nyou may need to load the borland bde v 5 . 0 software to use this , if not\nalready loaded .\nwe enhanced the monitor to make it a more useful tool .\nif deal is in an error state on the sitara side - we have not sent it over to\nunify .\nif the deal in an error state on the unify side - sitara has sent it to unify\n- however - it is in the unify failed deal group .\nyou can sort by the columns - best to sort by business unit .\nthe date column - shows the last time someone edited the deal .\nstart date and stop date - are begin and end date of deal .\nsitara deal id - as well as - eol deal id .\nindicates if the deal is an business unit is an agent on the deal .\nif you are contract or validation support - please do not edit the status = p\ndeals - these are the deals with pending status for desk to desk transactions\n( awaiting the other desk to approve the deal or changes to the deal ) . if you\nrelease these deals - you will be the approver of the deal - as you have\naccess to multiple desks .\nyou can hit the refresh button to re - query the data - or set the auto refresh\non the tool bar .\nwe did not build filter by business unit for multiple reasons :\n- the expense to build the filter .\n- it is easier to support if everyone is looking at the same thing .\n- if there is a new business unit - you will see it .\n- normally - there should not be more than a screen full of deals in error\nstate - once petro can / suncor / sunoco are set up - we will have a reasonable\nnumber to look at - and you can sort by the business unit column .\n- if you do want to filter - you may do so - by using the send to excel\nfeature - under tool bar option - file - dump to excel .\nif you have any questions or problems - please call the sitara hotline .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.958+0000", "entityId": 2378, "properties": {"text": "Subject: wc 551 revision effective 6 / 6 / 00 ( stingray p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 05 / 2000\n09 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 05 / 2000 09 : 37 : 41 am\nto : ,\ncc :\nsubject : wc 551 revision effective 6 / 6 / 00 ( stingray p / l )\nplease see the attached revision to wc 551 . i will send out a formal notice\ncancelling the force majeure later this afternoon .\nsteve\n- wc 551 reveffo 60600 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.963+0000", "entityId": 2379, "properties": {"text": "Subject: nomination change\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 05 / 2000\n08 : 00 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 02 / 2000 04 : 30 : 44 pm\nto :\ncc :\nsubject : nomination change\non monday june 5 th thru june 8 th , the quinduno field connected to the oneok\nstinnett plant will be shut in by oneok for maintenance . the production\nshould be back on the afternoon of june 8 th and our nomination should be in\nplace for the 9 th . sorry about the short notice but i just confirmed with\noneok that this was going to happen .\n- 0600 rl . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.968+0000", "entityId": 2380, "properties": {"text": "Subject: re : prc meeting agenda recap\nfyi . the template to be used in our prc process is below . i am still trying\nto get clarification around the promotion discussion . i will let you all\nknow .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 06 / 05 / 2000\n08 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : hector mcloughlin 06 / 02 / 2000 05 : 28 pm\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : re : prc meeting agenda recap\nthe accomplishments by 6 / 19 is for directors and above - to sally .\nindividual groups under sally will probably set their deadlines prior to the\nsmaller prc ' s . that is correct .\ni did not understand that promotions are to be discussed prior to the meeting\nwith sally our notes indicate that sally wanted some prior discussions on\nthis subject . nor did i understand that the employee had to be in their\nrole for 1 year . our notes indicate that this would be the general rule of\nthumb . i thought the promotion discussion would be an agenda item of prc .\nwe believe that discussion of promotions will also occur at the prc .\nadditionally , i understood the mid - year promotion listing would not be as\nextensive as year - end , maintaining the year - end as the primary promotion\ntime . we understood the same .\nfrom : brenda f herod @ ect 05 / 31 / 2000 07 : 37 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect @ ect , michael e moscoso / hou / ect @ ect , eugenio perez / hou / ect @ ect ,\nscott pleus / enron communications @ enron communications , brent a\nprice / hou / ect @ ect , susan harrison / hou / ect @ ect , stephen p schwarz / hou / ect @ ect ,\nmary solmonson / hou / ect @ ect , sheri thomas / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , shona wilson / na / enron @ enron ,\nsteve jackson / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect , norma\nvillarreal / hou / ect @ ect\nsubject : re : prc meeting agenda recap\ni think i ' m unclear on some points .\nthe accomplishments by 6 / 19 is for directors and above - to sally .\nindividual groups under sally will probably set their deadlines prior to the\nsmaller prc ' s .\ni did not understand that promotions are to be discussed prior to the meeting\nwith sally nor did i understand that the employee had to be in their role for\n1 year . i thought the promotion discussion would be an agenda item of\nprc . additionally , i understood the mid - year promotion listing would not be\nas extensive as year - end , maintaining the year - end as the primary promotion\ntime .\ncan you clarify ? thanks .\nenron north america corp .\nfrom : hector mcloughlin 05 / 31 / 2000 06 : 07 pm\nto : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect @ ect , brenda f herod / hou / ect @ ect , michael e\nmoscoso / hou / ect @ ect , eugenio perez / hou / ect @ ect , scott pleus / enron\ncommunications @ enron communications , brent a price / hou / ect , susan\nharrison / hou / ect @ ect , stephen p schwarz / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , sheri thomas / hou / ect @ ect , robert superty / hou / ect @ ect ,\npeggy hedstrom / cal / ect @ ect , shona wilson / na / enron @ enron , steve\njackson / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : prc meeting agenda recap\nplease distribute the recap of the meeting to your managers .\nthanks , hgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.973+0000", "entityId": 2381, "properties": {"text": "Subject: may activity survey\ndaren ,\nplease provide the number of producer services deals for the month of may\n( new vs . existing )\nshari\n3 - 3859\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shari mao / hou / ect on 06 / 06 / 2000 01 : 02 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\njames scribner @ enron\n05 / 30 / 2000 11 : 43 am\nto : bob klein / hou / ect @ ect , bryce baxter / hou / ect @ ect , carrie\nhollomon / hou / ect @ ect , cheryl dudley / hou / ect @ ect , daren j farmer / hou / ect @ ect ,\nfaye ellis / hou / ect @ ect , gordon heaney / corp / enron @ enron , judy\nbarnes / hou / ect @ ect , kathryn cordes / hou / ect @ ect , kim s theriot / hou / ect @ ect ,\nlinda s bryan / hou / ect @ ect , lisa csikos / hou / ect @ ect , mary g\ngosnell / hou / ect @ ect , michael e moscoso / hou / ect @ ect , pat\nclynes / corp / enron @ enron , rita wynne / hou / ect @ ect , d todd hall / hou / ect @ ect ,\nirene flynn / hou / ect @ ect , donna consemiu / hou / ect @ ect , bill d hare / hou / ect @ ect ,\nconnie sutton / hou / ect @ ect , dan houston / corp / enron @ enron , michael\neiben / hou / ect @ ect\ncc : lisa b cousino / hou / ect @ ect , shari mao / hou / ect @ ect , jennifer\nreside / hou / ect @ ect , elmo gore / corp / enron @ enron\nsubject : may activity survey\nattached please find the activity survey for the month of may , 2000 .\ni am sending the survey out this time as an opportunity to introduce myself\nto those of you i have not yet met . i am being asked to take a direct roll\nin the further development and rollout of the operations pricing model ( fka\ntransaction cost model ) . in the past , i have directed the implementation of\nseveral pricing systems based on activity based costing similar to the\noperations pricing model ( opm ) . over the past couple of weeks my\nobservations of the model have lead me to be concerned with the quality of\ndata used in the model . it will take efforts by both you and the opm team to\nget to a satisfactory level of data quality . this process can start with\nthis months data collection efforts . please pay particular attention this\nmonth as the \" bar is being raised \" by the management of energy operations for\ndata quality and timeliness .\nthe attached survey drives your costs from your activities to the commercial\nteams . please select your rcs , and fill in the driver quantity for the\nrequested driver for the month of may . please fill out the attached activity\ndriver survey with may numbers for your rc and return to shari mao by end of\nday friday , june 2 .\nplease note the following updates :\nfor nat gas , sally beck is interested in physical ( as denoted as ph in the\nsurvey ) vs . financial ( as denoted as fi in the survey ) numbers , please\nprovide statistics accordingly\nif a driver has not been updated per your request , please call or email\njennifer reside\nif you have additional updates / suggestions or items that need correction ,\nplease call or email jennifer reside\nif your group currently generates a standard report that captures the\nsurveyed data , please send the report to jennifer reside . this will\neliminate your need to fill out this survey every month . if you would like\nus to collect this information from someone within your team beginning next\nmonth , please let jennifer know .\nplease contact jennifer reside x 3 - 5971 with questions ( shari is on vacation\nthis week ) , or if you are unable to complete the survey within the allotted\ntime .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.977+0000", "entityId": 2382, "properties": {"text": "Subject: blue dolphin pipe line company contract no . 96037499\ndaren ,\ni am inquiring about the status of this contract . this contract was\nforwarded to you on april 10 , 2000 for review and initial . i need to know if\nyou still have possession of this contract or who has possession of this\ncontract .\ni need to have this contract routed for signatures and returned to the\ncounterparty .\nthank you .\nmarlene hilliard\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marlene hilliard / hou / ect on 06 / 06 / 2000\n03 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarlene hilliard\n06 / 06 / 2000 03 : 33 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.982+0000", "entityId": 2383, "properties": {"text": "Subject: job # 104210\nhello jerry ,\ni would like to refer a friend of mine that is really interested in joining\nenron to the sr . specialist position in your group . he has an mba degree from\nmexico ' s leading business school and extensive trading and risk management\nexperience . i ' m enclosing his resume for your reference , and feel free to\ncontact me or him directly .\nthanks for your attention ,\ncatherine simoes", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.987+0000", "entityId": 2384, "properties": {"text": "Subject: new su bridge\nsome people are having problems getting the new monitor -\nyou may not have the su bridge under your -\nstart - programs - trading - sitara - su bridge monitor .\nto resolve this - you will need to fill out a security request to get it\nadded to your start up profile .\nalso - if you are using an old shortcut - this may no longer work - you need\nto trash the old short cut .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.992+0000", "entityId": 2385, "properties": {"text": "Subject: hpl nom for june 7 , 2000\n( see attached file : hplo 607 . xls )\n- hplo 607 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:12.996+0000", "entityId": 2386, "properties": {"text": "Subject: gasper rice resources , ltd .\nvance ,\nsitara deal ticket number 290545 has been created and entered based on the\nfollowing information .\nbob\nvance l taylor\n06 / 05 / 2000 01 : 54 pm\nto : robert cotten / hou / ect @ ect , tom acton / corp / enron @ enron\ncc : julie meyers / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject :\nbob / tom\nsamson lone star lp reduced its working interest in contract ( # 96016762 ) to\n33 . 375 % effective 3 / 1 / 00 . the remaining 66 . 625 % working interest was sold to\ngasper rice , ltd . hplc amended and ratified the contract effective 3 / 1 / 00 .\nthe contract is currently in its primary term thru 7 / 31 / 00 with 100 % of the\nvolumes allocated to samson lone star . it will began its \" evergreen \" status\ncommencing 8 / 1 / 2000 .\nbased on the aforementioned information , please create a sitara deal ticket\nfor the following :\ncounterparty meter volume price period\ngasper rice , ltd . 6464 lmmbtu / d 85 % if / hsc 3 / 1 / 00 - 7 / 31 / 00\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.001+0000", "entityId": 2387, "properties": {"text": "Subject: revisions on tennessee gas p / l effective 6 / 8 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 06 / 2000\n03 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 06 / 2000 02 : 53 : 20 pm\nto : ,\ncc :\nsubject : revisions on tennessee gas p / l effective 6 / 8 / 00\nattached are nine changes to volumes currently flowing on tennessee gas\npipeline . these changes are to be effective thursday , june 8 , 2000 .\nplease let me know of any questions you have .\nthanks ,\nsteve\n- ec 254 reveffo 60800 . xls\n- ei 315329 reveffo 60800 . xls\n- ei 316 reveffo 60800 . xls\n- spl 3 reveffo 60800 . xls\n- ssl 54 reveffo 60800 . xls\n- ssl 98 jreveffo 60800 . xls\n- smi 265 reveffo 60800 . xls\n- wc 45 reveffo 60800 . xls\n- ei 365 reveffo 60800 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.005+0000", "entityId": 2388, "properties": {"text": "Subject: wc 534 revision effective 6 / 7 / 00 ( stingray p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 06 / 2000\n10 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 06 / 2000 10 : 16 : 58 am\nto : ,\ncc :\nsubject : wc 534 revision effective 6 / 7 / 00 ( stingray p / l )\nplease see the attached change to west cameron 534 to be effective 6 / 7 / 00 .\nthanks ,\nsteve\n- wc 534 reveffo 60700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.012+0000", "entityId": 2389, "properties": {"text": "Subject: wc 533 revision and notice of force majeure ( stingray p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 06 / 2000\n09 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 06 / 2000 09 : 22 : 57 am\nto : ,\ncc :\nsubject : wc 533 revision and notice of force majeure ( stingray p / l )\nplease see the attached revision to be effective 6 / 6 / 00 for wc 533 . this is\nan intraday nomination change .\nami - i have attached the notice of force majeure for your records .\nthanks ,\nsteve\n- wc 532 - 533 reveffo 60600 . xls\n- wc 533 forcemajeureo 60400 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.017+0000", "entityId": 2390, "properties": {"text": "Subject: carthage ( american central ) nomination\ndaren ,\ndid things work out here . do you still need to talk with me about it .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 06 / 2000\n08 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 01 / 2000 04 : 15 : 11 pm\nto :\ncc :\nsubject : carthage ( american central ) nomination\nchad called and said you guys are requestiing approximately 74 , 000 mmbtu\neffective june 1 . i show the number should be 72 , 240 mmbtu / d . could you\nplease check into this and let me know what ' s going on ?\nthanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.024+0000", "entityId": 2391, "properties": {"text": "Subject: copanos changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 06 / 2000\n02 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 06 / 06 / 2000 10 : 35 : 09 am\nto : \" ami chokshi \"\ncc :\nsubject : copanos changes\n( see attached file : hpl - june . xls )\n- hpl - june . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.032+0000", "entityId": 2392, "properties": {"text": "Subject: el paso cuts on oasis\nfyi - - -\nsome of the gas purchased from dynegy on gas day 6 / 6 was cut :\n9 b 5 p\n662 cut to 599\n10 , 000 cut to 9 , 061\n( per joanie adams at oasis )\ni will enter in mops as estimates .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.039+0000", "entityId": 2393, "properties": {"text": "Subject: duke energy deal 269123 for july & november 2000 ?\ndaren :\nthanks again for your prompt attention to this matter , i appreciate it .\nthere is a slight problem however , i couldn ' t find the deals for july and\nnovember 1999 in path manager . i looked in sitara and i see where you put\nthe deal 269123 in for may 1999 , but it is also in for july and november of\n2000 . did you mean to put the deal in for july and november of 1999 and\ninadvertently put it in for july and november 2000 ? if so would you put it\nin for july and november 1999 and send me an e - mail when you are done .\nthanks ,\nfred\ndaren j farmer\n06 / 06 / 2000 10 : 32 am\nto : fred boas / hou / ect @ ect\ncc :\nsubject : re : duke energy - # 5192 - 1999 issues\napply deal 269123 to contract 012 - 27049 - 201 .\nd\nfred boas\n06 / 05 / 2000 03 : 50 pm\nto : stephanie gomes / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , aimee lannou / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : duke energy - # 5192 - 1999 issues\nstephanie :\nmeter 6757 is done , redraft your invoice for both months and let me know if\nthis meter is still an issue .\nmeter 5192 . i never heard back from aimee on which transport contract to\nattach the deal 269123 to so for the months in question the gas is still\nallocated to the strangers gas contract . aimee is out on vacation until\nmid - june so i put in a call to daren farmer to find out which transport\ncontract i should attach the deal 269123 to .\nwhen i find out which transport contract to use i will set up the accounting\narrangements and then get robert lloyd to put the contract in pops and\nreallocate .\nfred\nfrom : stephanie gomes 06 / 01 / 2000 08 : 55 am\nto : fred boas / hou / ect @ ect\ncc :\nsubject : duke energy - meter # 6757 , # 5192 - issue for 1999\nhey fred ,\ni have the deal numbers for you for duke energy . could you please let me\nknow when you have allocated the gas to these meters .\ni am also forwarding other emails about these two deals for your records . if\nyou have any questions , please give me a call .\nthanks , stephanie\nmeter # 0986757 deal # 266962 4 / 1 / 99 - 4 / 30 / 99 and 5 / 1 / 99 - 5 / 31 / 99\nmeter # 0985192 deal # 269123 5 / 1 / 99 - 5 / 31 / 99 and 7 / 1 / 99 - 7 / 31 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie gomes / hou / ect on 06 / 01 / 2000\n08 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 05 / 11 / 2000 03 : 45 pm\nto : fred boas / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , stephanie gomes / hou / ect @ ect\nsubject : re : crow o ' connor meter 6757\nfred & stephanie - meter 6757 has been reallocated .\nstephanie - what price does duke show we owe them for the months in question ?\nfred boas\n05 / 11 / 2000 03 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect\nsubject : crow o ' connor meter 6757\naimee :\nplease put the ena 201 contract at this meter for april and may of 1999 with\nthe track id 117848 and reallocate the meter for both months . after this is\ndone please let stephanie and i know so that she can redraft her invoice the\nnext day after pops bridges to mops . also with respect to the second issue\nwhere daren is asking for the price , stephanie may be able to help you with\nthis because she has a copy of duke ' s invoice .\nstephanie :\nthe crow o ' conner meter is essentially fixed . when aimee reallocates you\nwill have to wait until the next day to redraft your invoice . when aimee\ngets back with us please redraft the invoice the next day and let me know if\nthis issue is resolved .\nfred\ndaren j farmer\n05 / 11 / 2000 02 : 14 pm\nto : aimee lannou / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : sarco lateral and crow o ' connor meters\ni have created deal 266962 for the volumes at mtr 6757 .\nwhat price is duke reporting for the mtr 5192 volumes ? the only activity\nwe ' ve had out there is payback with koch .\nd\naimee lannou 05 / 09 / 2000 03 : 30 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : sarco lateral and crow o ' connor meters\ndaren - have you had a chance to look at this ?\n- aimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 09 / 2000 03 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 05 / 04 / 2000 03 : 26 pm\nto : daren j farmer / hou / ect @ ect\ncc : fred boas / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\ndaren - can you set up new deals for meter 6757 and 5192 ?\nmeter 6757 crow o ' connor - counterparty duke energy & trading\nmonth contract deal #\njune 99 ena 201 87426\njuly 99 hpl 215 95072\naug 99 hpl 215 102775\nsept 99 hpl 215 110502\nmeter 5192 sarco lateral\nno deal has ever been set up for meter 5192 for duke energy & trading .\nthere is flow for may , july and nov . 99 .\nwill you please let me know if you set up new deals for these meters ?\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 05 / 04 / 2000 03 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas\n05 / 04 / 2000 12 : 08 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : sarco lateral and crow o ' connor meters\naimee :\nthe crow o ' connor , meter 6757 has its gas allocated to strangers gas for\napril and may 1999 and duke has been calling settlements asking for their\nmoney . i will need to set up accounting arrangements for this meter for\nthese months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\nin addition , the sarco lateral , meter 5192 has its gas allocated to strangers\ngas for may and july 1999 and duke has been calling settlements asking for\ntheir money . i will need to set up accounting arrangements for this meter\nfor these months so please provide me the correct transportation contract and\nvalid deal # for this transaction .\ni would like to get this done asap since the customer is calling settlements\nand we start close next week .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.044+0000", "entityId": 2394, "properties": {"text": "Subject: interconnect / intercompany issues\nbelow is a list of the major items that are still outstanding on the\ninterdesk / interconnect report for 1999 and 2000 that is impacting the\nintercompany cleanup for sap implementation . these issues have been\naddressed in earlier e - mails and this is an updated list of issues that need\nto be completed by june 19 , 2000 .\n1 ) king ranch interstates - fred and stella are working with exxon to\nreconcile from oct 1999 - apr 2000 the interstate nominations for tennessee\nand ngpl and also for tejas .\n2 ) tetco meter 6892 - question of who has custody transfer at the meter .\nena is using tetco ' s volume and hplc is using the hpl measurement volume ,\ncausing a desk to desk variance .\nclem and pat are working on .\n3 ) transco bammel meter 74 - transco and hpl ' s nominations are out of\nbalance at meter 74 . charlotte needs to work with transco to resolve .\n4 ) dow meter 4486 - the sale to entex needs to be taken off of hplc meter\n4486 and the sale needs to be at dow meter 4486 .\na desk to desk between ena ( buyer )\nand hplc ( seller ) needs to be set up on dow meter 4486 .\nami needs to set up the deals and\nthu needs to coordinate the months involved .\nonce this is done and thu\nreallocates to dow pipeline , jackie needs to zero out the confirmed noms and\nmake the meter non allocatable in pops .\nclem verified with steve schneider\nthat this meter is not on hpl ' s system .\n5 ) east texas gas / devon - devon invoicing ena entire flow at carthage .\nmeter 4607701 east texas keeping hplc whole on\nnominations\ndesk to desk\ndeal is out of balance because of this\nkaren is working\nwith pennzoil and east texas to reach agreement on how to handle this issue\nbetween them\n6 ) pgev - actuals on swing meters ( hpl ) not matching expense volumes being\nallocated by pgev .\nsherlyn is working with stacey and charlotte to resolve .\n7 ) pan energy sales issues - discrepancies on pgev . katherine and sherlyn\nare working with stacey to resolve .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.048+0000", "entityId": 2395, "properties": {"text": "Subject: interconnect / intercompany issues\nattached is a detail spreadsheet of these items that the allocation group is\nworking on .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 06 / 07 / 2000 02 : 00\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhoward b camp\n06 / 07 / 2000 12 : 50 pm\nto : rita wynne / hou / ect @ ect , pat clynes / corp / enron @ enron , lisa\ncsikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , ami chokshi / corp / enron @ enron\ncc : fred boas / hou / ect @ ect , stella l morris / hou / ect @ ect , clem\ncernosek / hou / ect @ ect , thu nguyen / hou / ect @ ect , jackie young / hou / ect @ ect ,\ncharlotte hawkins / hou / ect @ ect , karen lindley / corp / enron @ enron , carlos j\nrodriguez / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , kristen j\nhanson / hou / ect @ ect , rhonda robinson / hou / ect @ ect , howard b camp / hou / ect @ ect ,\ngregg lenart / hou / ect @ ect\nsubject : interconnect / intercompany issues\nbelow is a list of the major items that are still outstanding on the\ninterdesk / interconnect report for 1999 and 2000 that is impacting the\nintercompany cleanup for sap implementation . these issues have been\naddressed in earlier e - mails and this is an updated list of issues that need\nto be completed by june 19 , 2000 .\n1 ) king ranch interstates - fred and stella are working with exxon to\nreconcile from oct 1999 - apr 2000 the interstate nominations for tennessee\nand ngpl and also for tejas .\n2 ) tetco meter 6892 - question of who has custody transfer at the meter .\nena is using tetco ' s volume and hplc is using the hpl measurement volume ,\ncausing a desk to desk variance .\nclem and pat are working on .\n3 ) transco bammel meter 74 - transco and hpl ' s nominations are out of\nbalance at meter 74 . charlotte needs to work with transco to resolve .\n4 ) dow meter 4486 - the sale to entex needs to be taken off of hplc meter\n4486 and the sale needs to be at dow meter 4486 .\na desk to desk between ena ( buyer )\nand hplc ( seller ) needs to be set up on dow meter 4486 .\nami needs to set up the deals and\nthu needs to coordinate the months involved .\nonce this is done and thu\nreallocates to dow pipeline , jackie needs to zero out the confirmed noms and\nmake the meter non allocatable in pops .\nclem verified with steve schneider\nthat this meter is not on hpl ' s system .\n5 ) east texas gas / devon - devon invoicing ena entire flow at carthage .\nmeter 4607701 east texas keeping hplc whole on\nnominations\ndesk to desk\ndeal is out of balance because of this\nkaren is working\nwith pennzoil and east texas to reach agreement on how to handle this issue\nbetween them\n6 ) pgev - actuals on swing meters ( hpl ) not matching expense volumes being\nallocated by pgev .\nsherlyn is working with stacey and charlotte to resolve .\n7 ) pan energy sales issues - discrepancies on pgev . katherine and sherlyn\nare working with stacey to resolve .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.053+0000", "entityId": 2396, "properties": {"text": "Subject: re : interconnect / intercompany issues\nall of these issues need to be resolved during the month of june . our\ndeadline for all cleanup if 6 / 30 . please notify me of any issues that will\nnot be resolved in this timeframe .\nthanks .\nhoward b camp\n06 / 07 / 2000 12 : 50 pm\nto : rita wynne / hou / ect @ ect , pat clynes / corp / enron @ enron , lisa\ncsikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , ami chokshi / corp / enron @ enron\ncc : fred boas / hou / ect @ ect , stella l morris / hou / ect @ ect , clem\ncernosek / hou / ect @ ect , thu nguyen / hou / ect @ ect , jackie young / hou / ect @ ect ,\ncharlotte hawkins / hou / ect @ ect , karen lindley / corp / enron @ enron , carlos j\nrodriguez / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , kristen j\nhanson / hou / ect @ ect , rhonda robinson / hou / ect @ ect , howard b camp / hou / ect @ ect ,\ngregg lenart / hou / ect @ ect\nsubject : interconnect / intercompany issues\nbelow is a list of the major items that are still outstanding on the\ninterdesk / interconnect report for 1999 and 2000 that is impacting the\nintercompany cleanup for sap implementation . these issues have been\naddressed in earlier e - mails and this is an updated list of issues that need\nto be completed by june 19 , 2000 .\n1 ) king ranch interstates - fred and stella are working with exxon to\nreconcile from oct 1999 - apr 2000 the interstate nominations for tennessee\nand ngpl and also for tejas .\n2 ) tetco meter 6892 - question of who has custody transfer at the meter .\nena is using tetco ' s volume and hplc is using the hpl measurement volume ,\ncausing a desk to desk variance .\nclem and pat are working on .\n3 ) transco bammel meter 74 - transco and hpl ' s nominations are out of\nbalance at meter 74 . charlotte needs to work with transco to resolve .\n4 ) dow meter 4486 - the sale to entex needs to be taken off of hplc meter\n4486 and the sale needs to be at dow meter 4486 .\na desk to desk between ena ( buyer )\nand hplc ( seller ) needs to be set up on dow meter 4486 .\nami needs to set up the deals and\nthu needs to coordinate the months involved .\nonce this is done and thu\nreallocates to dow pipeline , jackie needs to zero out the confirmed noms and\nmake the meter non allocatable in pops .\nclem verified with steve schneider\nthat this meter is not on hpl ' s system .\n5 ) east texas gas / devon - devon invoicing ena entire flow at carthage .\nmeter 4607701 east texas keeping hplc whole on\nnominations\ndesk to desk\ndeal is out of balance because of this\nkaren is working\nwith pennzoil and east texas to reach agreement on how to handle this issue\nbetween them\n6 ) pgev - actuals on swing meters ( hpl ) not matching expense volumes being\nallocated by pgev .\nsherlyn is working with stacey and charlotte to resolve .\n7 ) pan energy sales issues - discrepancies on pgev . katherine and sherlyn\nare working with stacey to resolve .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.058+0000", "entityId": 2397, "properties": {"text": "Subject: may hours survey\nif you guys remeber , i reminded you all last tuesday , 5 / 30 , in our staff\nmeeting to be on the look - out for the attached message from james re : 5 / 00\nhours . the deadline was friday , 6 / 2 , and unfortunately , very few of you\nresponded . i understand how busy each of you are and you have expressed your\nconcerns on the process burdening you . however , there are pressures\ninternally to provide information to sr . management on a more timely basis .\nwe need to do our part . please respond asap , but no later than thursday ,\n6 / 8 . please contact jennifer or shari if you have any questions or need any\nhelp .\nadditionally , for those of you who are involved in bridgeline , we will be\npreparing a bid for our services going forward per a discussion i had with\ntrevor yesterday . therefore , the may drivers are very critical to that\nprocess also .\nso everyone , please get your info in asap . i appreciate your help .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 06 / 07 / 2000\n03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames scribner @ enron\n05 / 30 / 2000 11 : 54 am\nto : brenda f herod / hou / ect @ ect , diane h cook / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , carolyn gilley / hou / ect @ ect , connie sutton / hou / ect @ ect ,\nkathryn cordes / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect , michael e\nmoscoso / hou / ect @ ect , william kelly / hou / ect @ ect , bob klein / hou / ect @ ect , rita\nwynne / hou / ect @ ect , kristin albrecht / hou / ect @ ect , leslie reeves / hou / ect @ ect ,\ndonna greif / hou / ect @ ect , john jacobsen / hou / ect @ ect , scott pleus / hou / ect @ ect ,\nmary g gosnell / hou / ect @ ect , carrie hollomon / hou / ect @ ect , jeff\nharbert / hou / ect @ ect , d todd hall / hou / ect @ ect , brent a price / hou / ect @ ect ,\nbryce baxter / hou / ect @ ect , bill d hare / hou / ect @ ect , cheryl d king / hou / ect @ ect ,\njudy barnes / hou / ect @ ect , tony harris / hou / ect @ ect , jeffrey c\ngossett / hou / ect @ ect , mary solmonson / hou / ect @ ect , michael eiben / hou / ect @ ect ,\npat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , lisa\ncsikos / hou / ect @ ect , irene flynn / hou / ect @ ect , denae umbower / hou / ect @ ect ,\njuanita marchand / hou / ect @ ect , dale neuner / hou / ect @ ect , sheri\nthomas / hou / ect @ ect , kim s theriot / hou / ect @ ect , david oliver / hou / ect @ ect ,\neugenio perez / hou / ect @ ect , david baumbach / hou / ect @ ect , thresa a\nallen / hou / ect @ ect , roy lipsett / hou / ect @ ect , susan harrison / hou / ect @ ect , dan\nhouston / corp / enron @ enron , steve jackson / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : lisa b cousino / hou / ect @ ect , shari mao / hou / ect @ ect , jennifer\nreside / hou / ect @ ect , elmo gore / corp / enron @ enron\nsubject : may hours survey\nattached please find the hours survey and instructions for the month of may ,\n2000 .\ni am sending the survey out this time as an opportunity to introduce myself\nto those of you i have not yet met . i am being asked to take a direct roll\nin the further development and rollout of the operations pricing model ( fka\ntransaction cost model ) . in the past , i have directed the implementation of\nseveral pricing systems based on activity based costing similar to the\noperations pricing model ( opm ) . over the past couple of weeks my\nobservations of the model have lead me to be concerned with the quality of\ndata used in the model . it will take efforts by both you and the opm team to\nget to a satisfactory level of data quality . this process can start with\nthis months data collection efforts . please pay particular attention this\nmonth as the \" bar is being raised \" by the management of energy operations for\ndata quality and timeliness .\nwhile completing the survey , take this time to review last month ' s numbers .\nplease return these surveys to shari mao by end of day friday , june 2 .\nplease note the following changes :\nthe nat gas rc ' s will now see deal validation and transportation rate\nactivities therefore , these surveys will be notably longer but will not\nnecessarily take more time\nif the survey does not contain an activity that your team spends time on ,\nplease do not type any activities in the survey . contact jennifer reside at\n# 35971 to discuss how to proceed .\nif you have any questions relating to the model or this survey , or are unable\nto meet the survey due date , please call jennifer reside at # 35971 ( shari is\non vacation this week ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.062+0000", "entityId": 2398, "properties": {"text": "Subject: eis invoices for may\ni just wanted to make all of you aware of the message below from financial\noperations . when you review your rc reports for may , you will not see any it\ncharges . there were also none recorded in april . therefore , be prepared to\nsee some large charges in june for 3 months ( april - june ) . if you have any\nquestions , please call me . thanks .\nlisa\nx 3 - 6343\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa b cousino / hou / ect on 06 / 07 / 2000\n08 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nholly heath @ enron\n06 / 07 / 2000 04 : 19 pm\nto : brian heinrich / hou / ect @ ect , lisa b cousino / hou / ect @ ect\ncc :\nsubject : eis invoices for may\nfyi - holly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by holly heath / corp / enron on 06 / 07 / 2000\n04 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : keith simper @ ect 06 / 07 / 2000 02 : 25 pm\nto : bus anal & rptg spec - hou\ncc : bus anal & rptg mgmt - hou\nsubject : eis invoices for may\ncorporate it has informed me that eis invoices for april and may have not\nbeen posted to msas . they are in the process of trying to correct the\nproblem . however , you will not see your charges in msas this month per\ncorporate it . ena consolidations is in contact with corporate it to ensure\nthat the problem will be corrected by the close of june business .\nthanks ,\nkeith simper", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.067+0000", "entityId": 2399, "properties": {"text": "Subject: confirming requisitions\nconfirming the open requistions for your group . if your records indicate\notherwise , please let me know .\nlisa csikos 104355 , 104001\nrita wynne 104354\ndaren farmer 104210\nmike eiben 104323\npat clynes 104285\nmary smith 104301\nsteve venturatos 59127 , 104353\nthe posting dates have all been updated to reflect a current posting date .\nthanks for your support ! !\ntoni", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.072+0000", "entityId": 2400, "properties": {"text": "Subject: hpl noms for june 08 , 2000 revision\ndisregard the first one sent ! !\n( see attached file : hplo 608 . xls )\n- hplo 608 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.076+0000", "entityId": 2401, "properties": {"text": "Subject: hpl noms for june 08 , 2000\n( see attached file : lsno 608 . xls )\n- lsno 608 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.081+0000", "entityId": 2402, "properties": {"text": "Subject: enron / hpl actuals for june 6 , 2000\nteco tap 90 . 000 / hpl iferc\ntexoma 20 . 000 / hpl iferc\nls hpl lsk ic 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.086+0000", "entityId": 2403, "properties": {"text": "Subject: hpl nom for june 8 , 2000\n( see attached file : hplo 608 . xls )\n- hplo 608 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.090+0000", "entityId": 2404, "properties": {"text": "Subject: more good devon stuff ! ! ! !\nhey ami , did devon ever give us an answer on this ? thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 06 / 07 / 2000\n06 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvictor lamadrid\n05 / 22 / 2000 01 : 31 pm\nto : ami chokshi / corp / enron @ enron\ncc : beverly beaty / hou / ect @ ect , alvin thompson / corp / enron @ enron , victoria\nversen / hou / ect @ ect , katherine l kelly / hou / ect @ ect\nsubject : re : june availabilities\nhey ami , we have a little issue on transco regarding devon production . does\nyour contact @ devon know if we are responsible for scheduling pvr for them .\nplease read note below and let me know if we need to talk to anyone on our\nside . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 05 / 22 / 2000\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beverly beaty on 05 / 22 / 2000 11 : 45 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : june availabilities\nfyi ,\ntransco has called wanting to know who is responsible for nominating devon ' s\npvr . we do not have access to their contracts to do\nthe noms . ces use to have transco do it for them and so did we for january\nand february , but nothing was nominated for march or april . i\nmentioned this to nelson and dan junek back in march , but nothing was\ndecided . at one time , devon did not want to give us access to nominate\ntheir pvr because they did not want us to have access to any of their\ninformation . could you find out if we are responsible for the pvr and if we\nare , they\nhave to make us agent to nominate on those particular contracts ? maybe you\nwill have better luck than i did .\nthanks ,\nbev", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.095+0000", "entityId": 2405, "properties": {"text": "Subject: devon\ni understand you guys want to talk to me about devon . . . . . hmmmmmmmmm . how\nabout tomorrow thursday the 8 th after 3 sometime ? thanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.100+0000", "entityId": 2406, "properties": {"text": "Subject: wc 551 cancellation of force majeure effective 6 / 6 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 07 / 2000\n11 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 07 / 2000 10 : 47 : 25 am\nto :\ncc :\nsubject : wc 551 cancellation of force majeure effective 6 / 6 / 00\nami ,\nthe attached is a notice canceling the force majeure situation on wc 551\neffective 6 / 6 / 00 . the platform was down 5 / 30 / 00 - 6 / 5 / 00 .\nlet me know of any questions you have .\nsteve\n- wc 551 forcemajeureo 530002 cancellation . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.104+0000", "entityId": 2407, "properties": {"text": "Subject: message from brian redmond\nin 1925 houston pipe line company was formed to fuel a growing houston\neconomy . over the past 75 years , we have expanded our physical network\nacross the texas gulf coast , and we now offer a wide range of financial ,\ncommodity and risk management services . hpl is the largest single supplier\nof gas to entex and is one of the most flexible intrastate pipeline systems\nin the country due to our 118 bcf bammel storage field .\nto celebrate our 75 th birthday , i am pleased to invite hpl employees and\ntheir spouse or guest to a company - sponsored event on saturday the 9 th of\nseptember at moody gardens in galveston , texas . the attached invitation\nprovides the details . additional information will be sent to you over the\nsummer . please mark your calendars with this date , and i look forward to\nseeing you there .\nsincerely ,\nbrian redmond\npresident - hpl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.109+0000", "entityId": 2408, "properties": {"text": "Subject: re : may activity survey\nthanks , daren ,\nthese are the only stats that we need for now .\nshari", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.115+0000", "entityId": 2409, "properties": {"text": "Subject: re : cp & l\ndaren :\nwhen you get a chance , stop by and we ' ll visit about cp & l . . . if we need to\nchange the rankings we ' ll do it pronto ! !\nthanks ,\nchawkins\nenron north america corp .\nfrom : pat clynes @ enron 06 / 08 / 2000 08 : 53 am\nto : charlotte hawkins / hou / ect @ ect\ncc :\nsubject : cp & l\ncharlotte ,\nplease verify cp & l back to the first of june . darren told me that it is\nallocating incorrectly and it\nis causing part of our ua 4 problem for current month . please check this out\nasap . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.120+0000", "entityId": 2410, "properties": {"text": "Subject: accomplishments\nsorry for the delay . . . ami\n1 . tom asked for a historical number for entex the 2 nd week on the job in the\nmorning meeting . he wasn \u0001 , t expecting me to bring forth anything because i had\njust started . no one provided any information after the first day , so i\ndecided to look it up and do it myself . tom was very pleased .\n2 . tom gave that info to ed , and he asked for further data :\na . about cinco ranch , greatwood , and spring interconnects\ni coordinated with brad blevins and applied it to the fact that origination\nwas booked for nov , but the points had yet to be operational . brad and i\nremain in close contact to share any entex interconnect info .\nb . research transport info\ndocumented why entex transport volumes decreased by 6000 , and used info\ntowards the audit\nc . check weather forecast for nov\ni got weather info from mike roberts and developed some volumes that\ncorresponded with historical data related to the average of the forecast . tom \u0001 ,\ns response was , \" this is great . why hasn \u0001 , t anyone been able to do this\nbefore . \"\n3 . prepare and present entex info in morning meetings and prebid meetings .\n4 . work with weather research group to get better understanding of entex\ntrends .\n5 . prepare information gathering entex data including :\nmidcon vols\nprice behavior\ntemperature and weather conditions\nhpl vols\n6 . thoroughly understand and apply entex contracts :\n- realize need for daily vols and mentor summer intern to put together data\nbase of historical information ( winter cap )\n- recognized accounting discrepancy that saved us $ 11 , 000\n- reorganized entex tracking spreadsheets to incorporate a variety of info ,\nincluding booked volumes , weather , and contract terms\n- part of the audit team\n7 . managed weather hedge ( swap and put )\nafter doing some background work , i found out that the weather research group\nwas incorrect , and their files were feeding incorrect data ( iah temps instead\nof hou temps ) . this find resulted in a gain on of $ 3 , 376 , 780 .\n8 . handle ces deals on the texas desk\n- organized and facilitated a meeting with back office to review all ces deals\n- incorporated all ces info with enron systems\n- fully gather all data\n- liaison between devon and enron ( whole trade floor )\n- ensure all information was correct\n- praised by :\njoan quick - \" you went above and beyond the call of duty \"\nhoward camp - \" when i met with the other regions , texas was the only one that\nhad its the info in line and organized \"\n9 . develop good relationship with entex\n10 . facilitate monthly meeting with cross - functional entex team to resolve\nissues , discuss current happenings , and to keep everyone in the \" know \"\n11 . tufco\nunderstand and apply daily , monthly , and annual contract obligations\ndevelop relationship with txu\nmeet with them to learn more about its operations\n12 . cross - training\nrun position and better understand hpl operations\nback up trading for craig\nrun economic firm books\n- after 3 weeks , prepared summary sheet detailing position and p / l for the\ntraders i support . complimented by tom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.128+0000", "entityId": 2411, "properties": {"text": "Subject: re : cp & l\nokay guys ,\nthis one has been corrected . the measured volumes pulled through this\nmorning . the allocations are corrected with deal # 92399 on the 215 contract\ntaking the swing .\nanything else just let me know .\nchawkins\nenron north america corp .\nfrom : pat clynes @ enron 06 / 08 / 2000 08 : 53 am\nto : charlotte hawkins / hou / ect @ ect\ncc :\nsubject : cp & l\ncharlotte ,\nplease verify cp & l back to the first of june . darren told me that it is\nallocating incorrectly and it\nis causing part of our ua 4 problem for current month . please check this out\nasap . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.135+0000", "entityId": 2412, "properties": {"text": "Subject: re : hoop it up\n281 . 343 . 8233", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.140+0000", "entityId": 2413, "properties": {"text": "Subject: re : hoop it up\ntry 713 - 839 - 0573 ( home ) , but more likely : 713 - 557 - 4869 ( cell ) , and just to be\nclear o ' neal and i are the \" assault \" part of the team , not the \" aggie \" part .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.145+0000", "entityId": 2414, "properties": {"text": "Subject: enron totals thru june 7 , 2000\nami , , , ,\ni ' m reflecting 250 . 000 / enron and 533 . 750 / hpl iferc\ndo you agree ?\nthanks !\ntim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.152+0000", "entityId": 2415, "properties": {"text": "Subject: hpl nom for june 9 , 2000\n( see attached file : hplo 609 . xls )\n- hplo 609 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.157+0000", "entityId": 2416, "properties": {"text": "Subject: re : hpl / enron actuals for june 8 , 2000\noops , sorry , they are for the 7 th . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.163+0000", "entityId": 2417, "properties": {"text": "Subject: hpl / enron actuals for june 8 , 2000\nteco tap 30 . 000 / hpl iferc\ntexoma 20 . 000 / hpl iferc\nls hpl lsk ic 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.167+0000", "entityId": 2418, "properties": {"text": "Subject: ec 335 , ei 305 and smi 23 revision effective 6 / 10 / 00 ( sea robin\np / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 08 / 2000\n06 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 08 / 2000 05 : 25 : 40 pm\nto : ,\ncc :\nsubject : ec 335 , ei 305 and smi 23 revision effective 6 / 10 / 00 ( sea robin p / l )\nplease see the attached changes to be effective 6 / 10 / 00 .\nthanks ,\nsteve\n- ec 335 reveffo 61000 . xls\n- ei 305 reveffo 61000 . xls\n- smi 23 reveffo 61000 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.172+0000", "entityId": 2419, "properties": {"text": "Subject: cutoff for processing invoices and expense reports in msa\nplease note that there is a cutoff date for processing all invoices and\nexpense reports in msa . the cutoff date is next thursday , june 15 , 2000 .\nbeginning july 1 , all invoices and expense reports will be processed in sap\nand all of the coding will change . your assistants should have attended a\ntraining class to obtain the new coding information .\nany invoices and expense reports submitted after june 15 th will be held and\nwill not be processed until july 5 th after the sap \" go live \" date of july 1 .\nif you want to ensure that these items are processed in a timely manner ,\nplease submit them to accounts payable as soon as possible prior to june 15 th .\nplease be sure to share this information with your staff and have them submit\nall invoices and expense reports asap ! ! !\nif you have any questions , please do not hesitate to call me . thanks .\nlisa cousino\nx 3 - 6343", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.177+0000", "entityId": 2420, "properties": {"text": "Subject: last check\ndarren ,\nplease review the names below and let me know if there are any other names\nthat need to be added or subtracted from your group for prc purposes . thanks\nfor your help , hgm\nsr . specialist\nami chokshi\nstacey neuweiler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.182+0000", "entityId": 2421, "properties": {"text": "Subject: re : prc meeting agenda recap\nto clarify the discussion below : i will not be discussing the promotion\ncandidates with sally prior to her prc meeting on 6 / 19 / 00 .\nas a reminder , our prc meeting will be held on tuesday , 6 / 13 in eb 37 cl ,\nbeginning @ 12 : 00 noon . lunch will be served , and yvette has drinks and\nsnacks throughout the day . our goal will be not to have dinner , but if\nnecessary , we will . i suggest each of you to make arrangements to stay as\nlate as needed to ensure we reach a quality work product .\nour agenda :\nreview of ground rules and responsibilities of the committee .\neach of you will provide a general business assessment of your team . hr\nchallenges should be identified along with needed skill sets , gap analysis\nand succession planning . the template below should be used for the format .\ni am not interested in discussing the business goals , but you probably need\nto think through these in order to discuss the assessments that we will want\nto discuss as a group .\nreview and discussion of exempt employees . each will be categorized into the\nsix descriptors used in the feedback process . i am expecting each of you to\nhave a listing of accomplishments from your employees along with factual\nfeedback and observations which will allow you to place your employees into\nappropriate categories . i would like to stress that the data to sustantiate\nthe performance descriptor should be factual and documented . the focus of\nemployee discussions must be on each employee ' s individual contribution\ntowards accomplishing our business goals . we must safeguard our discussions\nfrom \" he said , she said \" periferal distractors , and focus on the work product .\npromotion candidates discussion .\nonce again , the prc process is a valued process at enron . each of you have\nbeen through it , so you understand the importance of confidentiality .\nadditionally , the committee will be required to reach an unanimous vote .\nplease come to the meeting with your \" enron \" hat on - not your individual\ngroup hat . our people are critical to our business . therefore , it is\nimportant for us to be honest when evaluating our staff . we must identify\nour stengths and weaknesses , and work towards strengthening our people to\nensure the very best business service we can provide . what this means is\nthat we should provide our employees with the very best constructive feedback\npossible . in some cases , you may be providing a tough message , but it is our\nresponsibility and obligation to ensure that each employee fully understands\nexpectations , where they are on point and where they are not on point of\nmeeting these expectations so that they can have the next six months to build\nneeded skill sets and / or correct behaviors . this is your obligation as their\nimmediate supervisor . if you have any questions , concerns or issues you\nwould like to talk about prior to the meeting on tuesday , please contact me\nor hector .\nin advance , i appreciate your time , energy and professionalism in this\nprocess .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 06 / 09 / 2000\n10 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brenda f herod 06 / 05 / 2000 08 : 45 am\nto : lisa csikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve venturatos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , michael eiben / hou / ect @ ect\ncc :\nsubject : re : prc meeting agenda recap\nfyi . the template to be used in our prc process is below . i am still trying\nto get clarification around the promotion discussion . i will let you all\nknow .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 06 / 05 / 2000\n08 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : hector mcloughlin 06 / 02 / 2000 05 : 28 pm\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : re : prc meeting agenda recap\nthe accomplishments by 6 / 19 is for directors and above - to sally .\nindividual groups under sally will probably set their deadlines prior to the\nsmaller prc ' s . that is correct .\ni did not understand that promotions are to be discussed prior to the meeting\nwith sally our notes indicate that sally wanted some prior discussions on\nthis subject . nor did i understand that the employee had to be in their\nrole for 1 year . our notes indicate that this would be the general rule of\nthumb . i thought the promotion discussion would be an agenda item of prc .\nwe believe that discussion of promotions will also occur at the prc .\nadditionally , i understood the mid - year promotion listing would not be as\nextensive as year - end , maintaining the year - end as the primary promotion\ntime . we understood the same .\nfrom : brenda f herod @ ect 05 / 31 / 2000 07 : 37 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect @ ect , michael e moscoso / hou / ect @ ect , eugenio perez / hou / ect @ ect ,\nscott pleus / enron communications @ enron communications , brent a\nprice / hou / ect @ ect , susan harrison / hou / ect @ ect , stephen p schwarz / hou / ect @ ect ,\nmary solmonson / hou / ect @ ect , sheri thomas / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , shona wilson / na / enron @ enron ,\nsteve jackson / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect , norma\nvillarreal / hou / ect @ ect\nsubject : re : prc meeting agenda recap\ni think i ' m unclear on some points .\nthe accomplishments by 6 / 19 is for directors and above - to sally .\nindividual groups under sally will probably set their deadlines prior to the\nsmaller prc ' s .\ni did not understand that promotions are to be discussed prior to the meeting\nwith sally nor did i understand that the employee had to be in their role for\n1 year . i thought the promotion discussion would be an agenda item of\nprc . additionally , i understood the mid - year promotion listing would not be\nas extensive as year - end , maintaining the year - end as the primary promotion\ntime .\ncan you clarify ? thanks .\nenron north america corp .\nfrom : hector mcloughlin 05 / 31 / 2000 06 : 07 pm\nto : sally beck / hou / ect @ ect , kristin albrecht / hou / ect @ ect , sheila\nglover / hou / ect @ ect , brenda f herod / hou / ect @ ect , michael e\nmoscoso / hou / ect @ ect , eugenio perez / hou / ect @ ect , scott pleus / enron\ncommunications @ enron communications , brent a price / hou / ect , susan\nharrison / hou / ect @ ect , stephen p schwarz / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , sheri thomas / hou / ect @ ect , robert superty / hou / ect @ ect ,\npeggy hedstrom / cal / ect @ ect , shona wilson / na / enron @ enron , steve\njackson / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : prc meeting agenda recap\nplease distribute the recap of the meeting to your managers .\nthanks , hgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.186+0000", "entityId": 2422, "properties": {"text": "Subject: re :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 06 / 09 / 2000\n04 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naorr @ dynegy . com on 05 / 19 / 2000 02 : 28 : 26 pm\nto : david . baumbach @ enron . com\ncc :\nsubject : re :\nhere is neal ' s resume . he will be at the knoxville address and phone # for the\nnext couple of weeks . he is going to come down and stay with me around june 1 .\nmy home number is 713 - 290 - 8434 . hy home address is 955 w . 42 nd street ,\nhouston ,\n77018 . my work number is 713 - 767 - 8774 .\n( see attached file : norrres . doc )\n- norrres . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.190+0000", "entityId": 2423, "properties": {"text": "Subject: hpl nom change for june 9 , 2000 revision # 1\ntaking the texoma and the ls hpl - katy to zero effective at\n4 : 00 pm today .\nthanks .\ntim\n( see attached file : hplo 609 . xls )\n- hplo 609 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.195+0000", "entityId": 2424, "properties": {"text": "Subject: hpl noms for june 10 thru 12 , 2000\n( see attached file : hplo 610 . xls )\n- hplo 610 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.200+0000", "entityId": 2425, "properties": {"text": "Subject: enron actuals for june 08 , 2000\nteco tap 32 . 500 / hpl iferc\ntexoma 20 . 000 / hpl iferc\nls hpl katy 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.205+0000", "entityId": 2426, "properties": {"text": "Subject: 2 nd revision to sea robin volumes ( sea robin p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 09 / 2000\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 09 / 2000 10 : 54 : 04 am\nto : ,\ncc :\nsubject : 2 nd revision to sea robin volumes ( sea robin p / l )\nlet me try this one more time . . .\nthe attached changes are to those meters where a pvr is taken out for\nprocessing . effective 6 / 12 / 00 , the sea robin plant will be shut down for\nrepairs and will not be operational again until 6 / 15 / 00 . the attached 12\nchanges are to be effective 6 / 12 / 00 anc continuing until further notice .\nsorry for any confusion the previous e - mail may have caused .\nsteve\n- ei 305 reveffo 61200 . xls\n- ei 330 areveffo 61200 . xls\n- ei 330 breveffo 61200 . xls\n- ei 330 creveffo 61200 . xls\n- ei 333 reveffo 61200 . xls\n- ei 337 reveffo 61200 . xls\n- smi 23 reveffo 61200 . xls\n- smi 41 reveffo 61200 . xls\n- smil 28 reveffo 61200 . xls\n- wc 560 reveffo 61200 . xls\n- wc 580 reveffo 61200 . xls\n- gbl 28 reveffo 61200 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.209+0000", "entityId": 2427, "properties": {"text": "Subject: sea robin changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 09 / 2000\n10 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 09 / 2000 10 : 42 : 30 am\nto : ,\ncc :\nsubject : sea robin changes\nthe previous e - mail shoud have shown the 11 changes to be effective monday ,\njune 12 , . 2000 . i will correct the date and resend the changes .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.214+0000", "entityId": 2428, "properties": {"text": "Subject: sear robin revisions effective 6 / 10 / 00 ( sea robin p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 09 / 2000\n10 : 36 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 09 / 2000 10 : 33 : 58 am\nto : ,\ncc :\nsubject : sear robin revisions effective 6 / 10 / 00 ( sea robin p / l )\nattached are the 11 changes to meters where a pvr is taken out for\nprocessing . as we discussed this morning , the sea robin plant will be shut\ndown monday , june 12 , 2000 at 9 : 00 a . m . to repair the \" o \" ring in the\nturbine . the previously scheduled sea robin plant maintenance ( the week of\njune 19 th ) will be performed the week of the 12 th while the repairs are made\nto the turbine .\nplease let me know of any questions you may have .\nthanks ,\nsteve\n- ei 305 reveffo 61000 # 2 . xls\n- ei 330 areveffo 61000 . xls\n- ei 330 breveffo 61000 . xls\n- ei 330 creveffo 61000 . xls\n- ei 333 reveffo 61000 . xls\n- ei 337 reveffo 61000 . xls\n- smi 23 reveffo 61000 # 2 . xls\n- smi 41 reveffo 61000 . xls\n- smil 28 reveffo 61000 . xls\n- wc 560 reveffo 61000 . xls\n- wc 580 reveffo 61000 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.219+0000", "entityId": 2429, "properties": {"text": "Subject: hi 325 and hi 368 revision effective 6 / 10 / 00 ( hios p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 09 / 2000\n09 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 09 / 2000 09 : 06 : 45 am\nto : , ,\ncc :\nsubject : hi 325 and hi 368 revision effective 6 / 10 / 00 ( hios p / l )\nplease see the attached revisions to be effective 6 / 10 / 00 on hi 325 and hi\n368 platforms .\ndarren - we will probably make another change to hi 368 effective tuesday ,\njune 13 once we hear from the pipeline on reallocating the gas . i will let\nyou if we need to change the nom for tuesday , june 13 .\nplease let me know of any questions you have .\nthanks ,\n- hi 325 reveffo 61000 . xls\n- hi 368 reveffo 61000 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.224+0000", "entityId": 2430, "properties": {"text": "Subject: keystone shut down\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 09 / 2000\n08 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 09 / 2000 09 : 01 : 43 am\nto :\ncc :\nsubject : keystone shut down\nnom change for 13 th , 14 th , and 15 th plus shut down letter from sid\nrichardson . four attachments below .\n- kermit shut down 13 th . xls\n- kermit change 14 th . xls\n- kermit change 15 th . xls\n- keyshutdown . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.228+0000", "entityId": 2431, "properties": {"text": "Subject: tetco change\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 09 / 2000\n08 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 09 / 2000 07 : 49 : 57 am\nto :\ncc :\nsubject : nom change\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.237+0000", "entityId": 2432, "properties": {"text": "Subject: 98 - 6725 ( sitara deal 266149 )\ndaren ,\ni can ' t remember if i ' d already sent you this request or not . but can you\nplease roll the above deal to cover flow for the 10 th and 11 th of may 2000 ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.244+0000", "entityId": 2433, "properties": {"text": "Subject: texas unfinaled invoices - may 2000 production\nplease find the attached spreadsheets listing the unfinaled sales invoices\nfor may production . we have indicated which group is responsible for the\noutstanding item in the \" responsible department \" column . the settlement\ncoordinator is also listed on these spreadsheets . please have your team\nmembers contact the coordinators directly for the information needed to final\nthe invoice .\nas communicated last week in our meeting with sally , the deadline for\ncompleting this work so that the invoices can be finaled is friday , june 16 ,\n2000 . we appreciate any efforts your teams can make in expediting the\nresearch to ensure we can final all may invoices by the end of day friday .\nthank you for your support and cooperation in these efforts .\nlisa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.249+0000", "entityId": 2434, "properties": {"text": "Subject: panenergy marketing march 2000 production\ndaren -\nhave you had a chance to change the pricing in the system ?\nduke has called me several times they want to get our march deals finalized .\ni am not sure what i should tell them .\nthanks -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n06 / 12 / 2000 01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 20 / 2000 08 : 31 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : panenergy marketing march 2000 production\ndeal # 157288\nper our conversation yesterday afternoon , pls . separate the centena term deal\nfrom the spot deal in sitara for march 2000 production .\nalso , i need to have the price for the east texas redelivery changed in\nsitara from hs index $ - . 085 to hs index $ - . 0825 . this is per the contract\nthe price for this redelivery point .\nthanks\nkatherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.254+0000", "entityId": 2435, "properties": {"text": "Subject: el paso cuts to oasis\nfyi\n6 / 8 / 00\n9 j 49 exxon 6 , 500 cut to 6 , 016\n( cut of 484 )\n202 k\noasis kept delivery whole", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.259+0000", "entityId": 2436, "properties": {"text": "Subject: ec 254 , sp 13 and wc 45 ( 20 ) revisions\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 12 / 2000\n10 : 00 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 12 / 2000 09 : 52 : 18 am\nto : ,\ncc :\nsubject : ec 254 , sp 13 and wc 45 ( 20 ) revisions\nclarissa ,\nper our conversation last week , we are unable to increase ec 254 , sp 13 and\nwc 45 ( 20 ) due to the tennessee seal on the 800 leg . this shall confirm the\nvolumes will remain at first of the month levels until the seal is lifted .\nat that time , i will recalculate the changes and notify you of any changes at\nthat time .\nthanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.264+0000", "entityId": 2437, "properties": {"text": "Subject: game / uniforms\nwhat ' s up team ? our game this week is as 6 : 00 . let me know who is going to be\nthere . i would assume everyone will just leave and come back to run you\nbooks . the jersey ' s will be done and i will have them for you . they cost\n$ 25 . 00 , so try and bring the cash wed . our shirts are black with red numbers ,\neveryone please try and wear black shorts so if we play like shit we ' ll at\nleast look good .\nbryan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.268+0000", "entityId": 2438, "properties": {"text": "Subject: hpl nom for june 13 , 2000\n( see attached file : hplo 613 . xls )\n- hplo 613 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.274+0000", "entityId": 2439, "properties": {"text": "Subject: enron / hpl actuals for june 9 - 12 , 2000\njune 9 , 2000\nteco tap 22 . 500 / enron ; 38 . 750 / hpl iferc\ntexoma 5 . 833 / enron\nls hpl lsk ic 11 . 667 / enron\njune 10 , 2000\nteco tap 41 . 250 / enron\njune 11 , 2000\nteco tap 40 . 000 / enron ; 50 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.279+0000", "entityId": 2440, "properties": {"text": "Subject: midlothian forecast\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carey m metz / hou / ect on 06 / 13 / 2000 08 : 13\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" maillet , lisa \" on 06 / 13 / 2000 07 : 42 : 32 am\nto : enron - carey metz , peter ash ,\n\" pg & e - biggs , brian \" , sally manning\n, trey christensen ,\ntxu - david avila , vivian liedtke\ncc :\nsubject : midlothian forecast\n>\n13 th = 57 , 000\n14 th = 59 , 000\n- 061300 short . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.283+0000", "entityId": 2441, "properties": {"text": "Subject: prior month misnomination\ndaren - - - - for 4 / 21 - 4 / 22 , deal # 237415 has 6 , 400 mmbtu from transwestern to\noasis # 6301 , but it should have been from northern # 8724 ( per oasis , karen\nlindely & our paper noms to oasis ) . . . . . . how do i correct this since the deal\nticket is protected ? ? ?\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.288+0000", "entityId": 2442, "properties": {"text": "Subject: tinsley field\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 13 / 2000\n04 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 06 / 13 / 2000 04 : 22 : 00\npm\nto :\ncc :\nsubject : tinsley field\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.292+0000", "entityId": 2443, "properties": {"text": "Subject: new nomination - tejas\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 13 / 2000\n01 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 13 / 2000 11 : 07 : 59 am\nto :\ncc :\nsubject : new nomination\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.297+0000", "entityId": 2444, "properties": {"text": "Subject: new nomination\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 13 / 2000\n12 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 13 / 2000 11 : 07 : 59 am\nto :\ncc :\nsubject : new nomination\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.301+0000", "entityId": 2445, "properties": {"text": "Subject: june specials ! !\n* * summer specials * *\nvalued golfers of kingwood cove .\nat your convenience please visit the following\nsites being developed for your benefit in the future .\nhttp : / / subscribe - 90027 - members @ lists . clubcorp . com / or\nhttp : / / www . ttimeonline . com / index . html\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n* * play & pay * *\n3 play for the price of 2\n4 play for the price of 3\nafter 11 am - saturday , sunday & holidays\n( offer valid with purchase of cart & green fee per player )\nmust present e - mail invitation prior to registration .\nnot valid with sr / jr rates or other offers . expires 06 / 30 / 00 .\ncall now to book your tee - time . 281 - 358 - 1155 .\n* * pick your partner / price * *\nmonday thru friday between 10 am - 2 pm ( non - holiday )\n2 play for $ 18 ea .\n3 play for $ 16 ea .\n4 play for $ 14 ea .\n( offer includes cart & green fee )\nmust present e - mail invitation prior to registration .\nnot valid with sr / jr rates , tournaments or other offers . expires 06 / 30 / 00\ncall now to book your tee - time . 281 - 358 - 1155 .\n* * 2 for 1 special * *\ntwo play for the price of one .\nbefore 10 am & after 2 pm\nmonday thru friday non - holiday .\ngolf invitation good for up to 4 players .\noffer includes 1 / 2 cart & green fee .\nmust present e - mail invitation prior to registration .\nnot valid with other offers or sr / jr rates . expires 06 / 30 / 00\ncall now to book your tee - time .\n281 - 358 - 1155 .\n* * golf lesson special * *\nlessons save $ 10", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.306+0000", "entityId": 2446, "properties": {"text": "Subject: great gofl offer\nsaturday special\njersey meadow\njune 17 th . 2000 $ 35 green fee includes cart .\nfather ' s day special jersey meadow all dad ' s gets a special gift .\nsunday june 18 , 2000 . $ 35 green fee / cart included .\n6 : 30 am to 5 : 00 pm .\ninstant coupon ! for one free round of golf !\n( cart fee is required and restrictions apply , see below . )\n?\nredeem this coupon at any one of the great courses listed below and receive a\ncart fee only round of golf for one player for one round .\nthis coupon may only be redeemed monday through thursday after 10 : 00 am or\nfriday , saturday and sunday after 12 : 00 noon , excluding holidays .\nthis coupon may not be combined with any other offer . coupon must be\npresented along with showing your oil change receipt at the time you pay for\nyour cart fee for this offer to be valid . ( golfers must mention this coupon\nwhen tee time is made .\ntee time reservations will be accepted up to three days in advance . the value\nof this discount may vary from course to course . )\nthank you for purchasing a castrol gtx / castrol syntec blend oil change .\n[ image ]\n2 for 1\nduring the month of june hermann park kingwood cove clear creek\ngo to http : / / www . golfboxx . com for the details\n[ image ]\ngolfboxx . com is upgrading to microsoft media server . we are doing this so you\nwill be able to enjoy the latest advantages in technology . at present\ngolfboxx . com has 15000 members . our sole purpose is to make golf fun and\naffordable for you .\ngolfboxx . com will offer more streaming video and you need the player to\nwatch . it is free . if you have these internet browsers ( netscape 4 . 7 or\ninternet explorer 5 . 0 ) you are good to go . if not .\nyou can download in about 2 minutes .\n[ image ]\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.311+0000", "entityId": 2447, "properties": {"text": "Subject: thanks ! !\njust a note to tell each of you that i appreciate your efforts today in our\nlengthy meeting . i think you all were very professional , and you all asked\nthe right questions of each other . i was very proud of the level of\nperformance i saw today , and think this group has strengthened over the last\nsix months , which was one of our goals . the challenges today were healthy\nand with merit . i realize it is a difficult process , but i appreciate your\npatience to work through the process . i know each of you realize the\nimportance of our building a strong team , as we are only as strong as our\npeople . we are required to identify strengths and weaknesses to help the\nemployee become stronger . enron is the best , and we are obligated to build\nthe very best teams to ensure we deliver the very best services . if we do\nnot , we all fail .\ngood job , today . once again , thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.316+0000", "entityId": 2448, "properties": {"text": "Subject: hpl nom for june 14 , 2000\n( see attached file : hplo 614 . xls )\n- hplo 614 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.320+0000", "entityId": 2449, "properties": {"text": "Subject: enron actuals for june 12 , 2000\nteco tap 117 . 500 / hpl iferc\ntexoma 20 . 000 / enron\nls hpl katy 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.326+0000", "entityId": 2450, "properties": {"text": "Subject: revised nomination - cody energy\ndaren ,\ni received a revised nomination from cody energy requesting volume be\nadjusted from 5 , 500 / d to 6 , 000 / d at meter 6722 effective 6 / 15 / 00 . do you\nwant me to adjust ? please advise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.333+0000", "entityId": 2451, "properties": {"text": "Subject: volume increase - hpl meter 68 - 6296 ( s . g . marshall ) and hpl meter\n98 - 6067 ( martinez , mb )\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 13 / 2000 04 : 32\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 06 / 13 / 2000 10 : 47 : 00 am\nto : rcotten @ enron . com\ncc : charlotte _ hawkins @ enron . com , crodrig @ enron . com\nsubject : volume increase - hpl meter 68 - 6296 ( s . g . marshall ) and hpl meter\n98 - 6067 ( martinez , mb )\nproduction from the sg marshall leases has increased due to workovers of\nsome of the wells . effective june 14 , 2000 , please increase the june 1\nestimate from 2 , 300 mmbtu / d to 8 , 000 mmbtu / d @ hpl meter 68 - 6296 delivery\nto hpl thompsonville ( pg 7 e meter 834134 ) .\nproduction from the m . martinez leases has increased due to a new well\nbehind meter 98 - 6067 . the estimates from this meter has increased from\n4 , 600 mmbtu / d to 8 , 200 mmbtu / d .\nplease call me at ( 713 ) 651 - 6858 with any questions . thanks ! ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.340+0000", "entityId": 2452, "properties": {"text": "Subject: cilco\nper our conversation , the months relating to the cilco deal with ena - texas\nare may 1999 - sept 1999 .\nhowever , when howard and i talked about correcting the allocation in pops ,\nhoward is telling me that the cilco sale is tied to the transport ( 206 )\ncontract in pops . if we remove the sale b / t ena - tx and cilco and put the\nsale b / t ena - tx and the storage book , we no longer have a sale to tie to the\ntransport . let me know what you think as we did not discuss this .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.346+0000", "entityId": 2453, "properties": {"text": "Subject: deal number\ndarren ,\ni understand that you can tell me the deal number for a spot deal you set up\nfor meter 988663 for 4 / 4 - 4 / 9 for janet wallis .\nlet me know if you need any additional information from me .\nthanks !\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.350+0000", "entityId": 2454, "properties": {"text": "Subject: ss 154\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 14 / 2000\n02 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 06 / 14 / 2000 01 : 49 : 30\npm\nto :\ncc :\nsubject : ss 154\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.355+0000", "entityId": 2455, "properties": {"text": "Subject: enron actuals for junel 3 , 2000\nteco tap 100 . 000 / hpl iferc\ntexoma 20 . 000 / hpl iferc\nls hpl katy 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.360+0000", "entityId": 2456, "properties": {"text": "Subject: hpl noms for june 15 , 2000\n( see attached file : hplo 615 . xls )\n- hplo 615 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.364+0000", "entityId": 2457, "properties": {"text": "Subject: yates energy corp . - revised nomination\ndaren ,\nyates energy has revised their nomination from 3 , 135 / d to 3 , 060 / d eff .\n6 / 15 / 00 at meter 6598 . the deal # is 138856 . do you want me to adjust ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.369+0000", "entityId": 2458, "properties": {"text": "Subject: saxet thompsonville - shut - in gas\ndaren ,\nfyi . saxet thompsonville meter # 9794 will be shut - in 4 to 8 hours on 6 / 22 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.374+0000", "entityId": 2459, "properties": {"text": "Subject: re : volume increase - hpl meter 68 - 6296 ( s . g . marshall ) and hpl\nmeter 98 - 6067 ( martinez , mb )\ndaren ,\ndo you want me to adjust anything ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 14 / 2000 10 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n06 / 14 / 2000 10 : 03 am\nto : robert cotten / hou / ect @ ect\ncc : carlos j rodriguez / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject : re : volume increase - hpl meter 68 - 6296 ( s . g . marshall ) and hpl\nmeter 98 - 6067 ( martinez , mb )\nbob ,\nthe eog contract stipulates that a gas daily price should be paid only for\nthe initial delivery of gas at the execution of gas purchase contract ; any\ndeliveries subsequent to the initial turn - on should be priced at first of\nmonth index .\nthanks ,\nvlt\nx 3 - 6353\nenron north america corp .\nfrom : robert cotten 06 / 14 / 2000 09 : 39 am\nto : vance l taylor / hou / ect @ ect\ncc : carlos j rodriguez / hou / ect @ ect\nsubject : volume increase - hpl meter 68 - 6296 ( s . g . marshall ) and hpl meter\n98 - 6067 ( martinez , mb )\nvance ,\nshould this be priced at gas daily ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 14 / 2000 09 : 38\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 06 / 13 / 2000 10 : 47 : 00 am\nto : rcotten @ enron . com\ncc : charlotte _ hawkins @ enron . com , crodrig @ enron . com\nsubject : volume increase - hpl meter 68 - 6296 ( s . g . marshall ) and hpl meter\n98 - 6067 ( martinez , mb )\nproduction from the sg marshall leases has increased due to workovers of\nsome of the wells . effective june 14 , 2000 , please increase the june 1\nestimate from 2 , 300 mmbtu / d to 8 , 000 mmbtu / d @ hpl meter 68 - 6296 delivery\nto hpl thompsonville ( pg 7 e meter 834134 ) .\nproduction from the m . martinez leases has increased due to a new well\nbehind meter 98 - 6067 . the estimates from this meter has increased from\n4 , 600 mmbtu / d to 8 , 200 mmbtu / d .\nplease call me at ( 713 ) 651 - 6858 with any questions . thanks ! ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.380+0000", "entityId": 2460, "properties": {"text": "Subject: shut - in of # 986315\nmeter 0986315 shawnee spring common point was shut - in on 6 / 13 / 2000 due to\nhigh dew point . repeated attempts by the pumper to dry out the gas have\nfailed . the meter will remain shut - in until the dew point is within pipeline\nquality specs .\ngary h .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 06 / 15 / 2000 10 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sean j smith 06 / 14 / 2000 05 : 55 pm\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : # 986315\ni received a call from carl drachenberg with hms at approximately 1 : 45 pm on\n6 / 13 / 00 stating that he pulled a stick on meter # 986315 and it was wet and\nflowing at 35 lb . i asked gary hanks what we want to do and he said to have\ncarl notify the producer and shut it in . i notified carl and he got in\ntouch with the producer and they shut the compressor down at approx . 2 pm on\n6 / 13 and at that time there wasn ' t any flow . carl came back out there at 8\nam on 6 / 14 and closed the valve and removed the chart . there was no flow\nafter they shut the unit down and it was flowing between 500 and 300 mcf .\nthe meter is now out of service .\nany questions - you know where to find me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.385+0000", "entityId": 2461, "properties": {"text": "Subject: re : wholesale volumes\ntexas has a 42 % increase year to year , a 22 % increase qtr . to qtr . and a 30 %\nincrease mo . to mo . the yr . to yr . and qtr to qtr increases can be explained\nby an increase in eol transactions and entex taking more gas . the mo . to mo .\nincrease is attributable to increase eol transactions and tufco taking more\ngas .\ndave\nenron north america corp .\nfrom : misti day 06 / 15 / 2000 12 : 19 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : wholesale volumes\nit ' s that time again for the monthly and quarterly volumetric explanations !\nthe database for may is now ready for viewing . just as a reminder , this is\nthe shortcut on your desktop called \" statistical database \" .\nas there is continued investor focus on our wholesale operations , investor\nrelations requests that business analysis & reporting provide monthly\nvolumetric analysis for wholesale operations in addition to the quarterly\nanalysis . please review the analysis for may 2000 and provide explanations\nfor all material changes ( + / - 10 % ) for the year / year , quarter / quarter , and\nmonth / month variances . the current objective of investor relations is to use\nthis analysis as a resource to answer potential investor or analyst\nquestions , but it may be used for ad hoc requests and presentations . it is\nessential that the volumes be verified by commercial personnel .\nplease forward your verification and explanations via e - mail to me by 10 : 00 am\non monday , june 19 . please feel free to call with any questions .\nthanks ,\nmisti day\nx 39525", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.390+0000", "entityId": 2462, "properties": {"text": "Subject: mcmullen meter list\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 06 / 15 / 2000 02 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 12 / 09 / 99 11 : 10 am\nto : shawna flynn / hou / ect @ ect\ncc :\nsubject : mcmullen meter list\nper hms this is supposed to be all meters in the affected section . the file\ni have attached has the meters that i believe are not producers highlighted\nin yellow . i also believe that some of the meters in this list are\ninactive .\nif you have any questions please call . 36449\nthanks\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 12 / 09 / 99 11 : 06 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\njames mckay\n12 / 08 / 99 01 : 59 pm\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : mcmullen meter list\ngary ,\nplease get this to the appropriate people . you might check with the field\nbefore you send it on to see where their at .\njames\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james mckay / hou / ect on 12 / 08 / 99 01 : 53 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ngary besancon @ enron\n12 / 08 / 99 11 : 54 am\nto : james mckay / hou / ect @ ect\ncc :\nsubject : mcmullen meter list\njames here is the list of meters requested the 2000 numbers will be affected .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.395+0000", "entityId": 2463, "properties": {"text": "Subject: mcmullen outage\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 06 / 15 / 2000 02 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 12 / 09 / 99 04 : 37 pm\nto : shawna flynn / hou / ect @ ect , connie sutton / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , mary m smith / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect\ncc : james mckay / hou / ect @ ect\nsubject : mcmullen outage\nshawna - in addition to the meters sent to you in the earlier memo on the\nmcmullen system , the following meters were shut in at approximately 12 : 00 pm\non thursday , december 9 , 1999 . these meters were shut in order to install\npigging facilities to remove liquids from the mcmullen 12 \" . these producers\nshould be brought back on - line sometime in the afternoon of december 10 . 1999 .\n986847 dolan gas unit # 1\n989604 baker central point ( pioneer )\n989638 freeman production - maxine field\n989698 mclean bowers central point ( cordell )\n989700 tesoro hoskins central point\n989737 pickett texan central point\n985853 riser c / p arco\n986181 houdman # 1 ( cokinos )\n986359 sanger heirs # 351 - 1 cdp\n986581 sanger heirs cdp\n986682 lynes j . r . et al # 1\n986845 swierc # 1\nonce pigging facilities are in place , the mcmullen 12 \" will be pigged\n( sometime early next week , week of dec . 13 ) and all of the producers in the\nfollowing attachment will be brought back on line .\nif you have any questions , please call me at 36449 .\nthanks\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.401+0000", "entityId": 2464, "properties": {"text": "Subject: revised tinsley availabilities ( tetco p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 15 / 2000\n11 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 15 / 2000 11 : 14 : 33 am\nto :\ncc :\nsubject : revised tinsley availabilities ( tetco p / l )\nplease see the attached revised availability to be effective 6 / 17 / 00 . i am\nnot sure who the tetco scheduler is , so please pass along a copy of this to\nthe appropriate scheduler .\nthanks ,\n- tinsleyreveffo 61700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.406+0000", "entityId": 2465, "properties": {"text": "Subject: hpl nom for june 16 , 2000 revision\nrevision to the empire nom .\nthanks .\ntim\n( see attached file : hplo 616 . xls )\n- hplo 616 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.412+0000", "entityId": 2466, "properties": {"text": "Subject: hpl nom for june 16 , 2000\n( see attached file : hplo 616 . xls )\n- hplo 616 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.417+0000", "entityId": 2467, "properties": {"text": "Subject: enron / hpl actuals for june 14 , 2000\nteco tap 55 . 000 / hpl iferc\ntexoma 20 . 000 / hpl iferc\nls hpl lsk ic 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.423+0000", "entityId": 2468, "properties": {"text": "Subject: desk to desk deals\nduring mid - july , sitara will change the logic on desk to desk deals to post\nthe volume associated with the sales ( seller ) side to the sitara deal .\ncurrently , the volume on the receipt ( buyer ) side is being posted . this\nchange will be implemented in order to coincide with the logic currently\nbeing used in sap . this change should help to avoid intercompany imbalances .\nplease be aware that this change will effect desk to desk deals only . the\nlogic on transport usage deals will remain as it is currently - delivery\npoint ( to ) - posts to the sitara deal .\nif you have any questions , please give me a call at x 39222 .\nchao !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.431+0000", "entityId": 2469, "properties": {"text": "Subject: re : shut - in of # 986315\nfyi - we don ' t have any active contracts behind this meter . there was a\ndedicated reserves purchase contract with phoenix gas pipeline company that\nterminated 7 / 31 / 99 . there was also a gtc - lst purchaser / marketer with el\nsordo gathering systems , inc . which expired 8 / 1 / 99 .\nif you are aware of any other contract that we don ' t reflect in the global\ncontracts database , please let me know . otherwise , there isn ' t any action\nthat my group needs to take regarding this shut - in .\nenron north america corp .\nfrom : gary a hanks 06 / 15 / 2000 11 : 18 am\nto : cheryl dudley / hou / ect @ ect , pat clynes / corp / enron @ enron , daren j\nfarmer / hou / ect @ ect , shawna flynn / hou / ect @ ect , james mckay / hou / ect @ ect\ncc :\nsubject : shut - in of # 986315\nmeter 0986315 shawnee spring common point was shut - in on 6 / 13 / 2000 due to\nhigh dew point . repeated attempts by the pumper to dry out the gas have\nfailed . the meter will remain shut - in until the dew point is within pipeline\nquality specs .\ngary h .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 06 / 15 / 2000 10 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sean j smith 06 / 14 / 2000 05 : 55 pm\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : # 986315\ni received a call from carl drachenberg with hms at approximately 1 : 45 pm on\n6 / 13 / 00 stating that he pulled a stick on meter # 986315 and it was wet and\nflowing at 35 lb . i asked gary hanks what we want to do and he said to have\ncarl notify the producer and shut it in . i notified carl and he got in\ntouch with the producer and they shut the compressor down at approx . 2 pm on\n6 / 13 and at that time there wasn ' t any flow . carl came back out there at 8\nam on 6 / 14 and closed the valve and removed the chart . there was no flow\nafter they shut the unit down and it was flowing between 500 and 300 mcf .\nthe meter is now out of service .\nany questions - you know where to find me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.438+0000", "entityId": 2470, "properties": {"text": "Subject: revised sea robin availabilities effective 6 / 17 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n05 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 05 : 10 : 37 pm\nto : ,\ncc :\nsubject : revised sea robin availabilities effective 6 / 17 / 00\nchristina ,\nper our conversation this afternoon , i have revised the availabilities for\nthose meters that have a pvr deduction effective 6 / 17 / 00 . i will let you\nknow as soon as i hear anything about the sea robin plant coming back online .\nsteve\n- ei 305 reveffo 61700 . xls\n- ei 330 areveffo 61700 # 2 . xls\n- ei 330 breveffo 61700 . xls\n- ei 330 creveffo 61700 . xls\n- ei 333 reveffo 61700 . xls\n- ei 337 reveffo 61700 . xls\n- smi 23 reveffo 61700 . xls\n- smi 41 reveffo 61700 . xls\n- smil 28 reveffo 61700 # 2 . xls\n- wc 560 reveffo 61700 . xls\n- wc 580 reveffo 61700 . xls\n- gbl 28 reveffo 61700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.443+0000", "entityId": 2471, "properties": {"text": "Subject: correction to hi 140\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n02 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 01 : 22 : 07 pm\nto : ,\ncc :\nsubject : correction to hi 140\ni entered the wrong volume on the high island 140 platform for the change\neffective 6 / 17 / 00 . the gross volume should have been 4014 ( 3713 dbq and 301\nexcess ) . attached is a revised nomination . sorry for the inconvenience .\nsteve\n- hil 40 reveffo 61700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.450+0000", "entityId": 2472, "properties": {"text": "Subject: ei 315 / 329 revised availability effective 6 / 17 / 00 ( tennessee p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n12 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 10 : 41 : 55 am\nto : ,\ncc :\nsubject : ei 315 / 329 revised availability effective 6 / 17 / 00 ( tennessee p / l )\ni just received notification from the eugene island 315 platform that they\nwill be shut - in for 2 - 3 days while the drilling rig moves off location . i\nwill notify you monday morning of its status .\nthanks ,\nsteve\n- ei 315329 reveffo 61700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.458+0000", "entityId": 2473, "properties": {"text": "Subject: nom change at the garza / trevino plant on tejas\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n12 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 16 / 2000 10 : 34 : 43 am\nto :\ncc :\nsubject : nom change at the garza / trevino plant on tejas\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.464+0000", "entityId": 2474, "properties": {"text": "Subject: ei 314 revised availability effective 6 / 17 / 00 ( columbia gulf )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n09 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 08 : 57 : 43 am\nto : ,\ncc :\nsubject : ei 314 revised availability effective 6 / 17 / 00 ( columbia gulf )\nplease see the attached revision to be effective 6 / 17 / 00 .\nthanks ,\nsteve holmes\ndevon energy corporation\n( 405 ) 552 - 4665\nsteve . holmes @ dvn . com\n- ei 314 reveffo 61700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.469+0000", "entityId": 2475, "properties": {"text": "Subject: re : ei 330 a and smi 128 revised availabilities effective 6 / 17 / 00\n( searobin p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n08 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 08 : 31 : 22 am\nto : ,\ncc :\nsubject : re : ei 330 a and smi 128 revised availabilities effective 6 / 17 / 00\n( searobin p / l )\nhere is the change to garden banks 128 that was effective 6 / 15 / 00 . i ' ll send\nthe documentation on the revisions that were made 6 / 14 / 00 ( decrease due to\nthe sea robin plant coming back online ) this afternoon .\nthanks ,\nsteve\n> > > 06 / 16 / 00 08 : 18 am > > >\nthanks . by the way , i never got any documentation for the gbl 28 change\neffective 6 / 15 . could you send something over for my ( and ami ' s ) records ?\n- gbl 28 reveffo 61500 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.474+0000", "entityId": 2476, "properties": {"text": "Subject: hios , sea robin , transco\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 08 : 16 : 18 am\nto : , ,\ncc :\nsubject : hi 339 / 340 revised availability effective 6 / 19 / 00 ( hios p / l )\nplease see the attached revised availability to be effective 6 / 19 / 00 and\ncontinuing until further notice .\nthanks ,\nsteve holmes\ndevon energy corporation\n( 405 ) 552 - 4665\nsteve . holmes @ dvn . com\n- hi 339340 reveffo 61900 . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 08 : 18 : 12 am\nto : ,\ncc :\nsubject : ei 330 a and smi 128 revised availabilities effective 6 / 17 / 00 ( sea\nrobin p / l )\nplease see the attached revised availabilities to be effective 6 / 17 / 00 .\nthanks ,\nsteve\n- ei 330 areveffo 61700 . xls\n- smil 28 reveffo 61700 . xls\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 16 / 2000\n08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 16 / 2000 08 : 19 : 34 am\nto : ,\ncc :\nsubject : hi 140 revised availability effective 6 / 17 / 00 ( transco p / l )\nplease see the attached revised availability to be effective 6 / 17 / 00 .\nthanks ,\nsteve\n- hil 40 reveffo 61700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.479+0000", "entityId": 2477, "properties": {"text": "Subject: hpl nom for june 17 , 2000\n( see attached file : hplo 617 . xls )\n- hplo 617 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.484+0000", "entityId": 2478, "properties": {"text": "Subject: enron / hpl actuals for june 15 , 2000\nteco tap 115 . 000 / hpl iferc ; 10 . 000 / enron\ntexoma 0\nls hpl lsk 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.488+0000", "entityId": 2479, "properties": {"text": "Subject: sap changes\nwith sap now here there are going to be a few minor changes that we will all\nhave to make immediately .\nfirst :\neveryone will have to make internet explorer their default browser . if\nyou ' re not sure how to do this give me a call and i will help . the reason\nfor this is that our new timesheet program will only run through internet\nexplorer .\nsecond :\nsometime next week we will have a brown bag lunch where i will walk you\nthrough entering your time in this new system . it ' s not time consuming just\ndifferent .\nthird :\nnext thursday you will be e - mailed an sap log - on id and password . please\ndon ' t delete or disregard the importance of this e - mail . you will need it to\nkey your time .\nfourth :\nall company and rc # ' s are changing . the company part is easy . it will be 4\ndigits so if your company number is currently 413 it will now be 0413 or if\nit is 012 it will now be 0012 . easy . rc # ' s are now called cost centers and\nthey are changing completely . please write these down somewhere you will\nneed them just like you need to know your rc .\nrc 1497 = cc 105633\nrc 1638 = cc 105634\nrc 2664 = cc 105630\nrc 2933 = cc 106292\nrc 0688 = cc 105631\nrc 1160 = cc 105632\nrc 2675 = cc 105638\nrc 2939 = cc 106269\nrc 2940 = cc 106290\nrc 2663 = cc 105629\nthe transition shouldn ' t be too painful for you but it promises to be a\nlittle stressful for your assistants so please bear with us and cooperate .\nthank you !\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.492+0000", "entityId": 2480, "properties": {"text": "Subject: resume - dart arnaez\ninternal candidate response to job # 104210 . i have not talked to him .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.497+0000", "entityId": 2481, "properties": {"text": "Subject: resume - robert goerner\nfollowing is the resume of robert goerner . he is currently at reliant doing\npipeline accounting . his salary is at $ 52 k . he was referred by karen\nlindley .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.502+0000", "entityId": 2482, "properties": {"text": "Subject: resume - anna cola\nanna cola is through a recruiter and would be at a 20 % fee .\n? for the last eight years anna has worked consistently as a project gas\naccountant .\nshe has worked in downstream gas marketing with companies such as shell ,\ncoastal , texaco , tenneco , natural gas clearing house and midcon texas\npipeline .\nanna has also worked on upstream accounting with eex and ashland\nexploration .\nshe has gained experience in areas of ap , ar , revenue accounting , joint\ninterest billing , and gas balancing .\nprior to working on a project basis anna was a jib accountant with buttes\nresources .\nanna is available to start immediately on a project or perm basis .\n- cola _ anna . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.507+0000", "entityId": 2483, "properties": {"text": "Subject: resume - alex argueta\nthe following is the resume of alex argueta . he is currently a revenue\naccountant at eog resources . he is open to other accounting opportunities ,\nas he does not want to be restricted to revenue accounting . his salary is\n$ 42 k .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.512+0000", "entityId": 2484, "properties": {"text": "Subject: resume - liz bellamy\nfollowing is the resume of liz bellamy . liz is currently at txu in the power\ngroup , but has gas experience , also . she is deciding whether she wants to\nrelocate with txu to dallas . she would be interested in talking to enron\nabout possible opportunities . her current salary is $ 50 k . please let me\nknow if you would like to interview .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.517+0000", "entityId": 2485, "properties": {"text": "Subject: resume - gloria smith\nplease read the resume of gloria smith and provide me feedback if she fits\nyour needs . let me know if you ' d like to interview her . she is through a\nrecruiter at a 20 % fee .\ntoni\nher references indicate strengths in the area ? enron is requiring\nexperiences . ? she prefers the gas environment . ? her qualifications are :\nmasters in education ; bba - accounting\nexperienced in day to day pipeline ? and gas ? activity providing net outs ,\nresolve price and volume discrepancies , volume management , settling cash\nouts , verifying imbalances , processing transportations invoices ,\nsettlements , and project accounting as required .\nfinancial reporting , assisting in preparing sec reporting , balance sheet\nreconciliation , and ferc reporting .\nexcellent interpersonal skills , will be able to effectively communicate with\nall levels of management , vendors , and customers .\nseeking permanent , but will consider project to permanent .\ncurrent salary 45 k\n- smith _ gloria _ 062000 _ revised . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.523+0000", "entityId": 2486, "properties": {"text": "Subject: resume - gloria davis\n? candidate through a recruiter - 20 % fee .\nplease review the resume of gloria davis . ? gloria has great experience and\nwould be an immediate asset to your company . ? over the course of her career\nshe has obtained experience with : pipeline reconciliations / analysis ,\nrevenue accounting , invoicing and transportation . her career highlights are :\nba - accounting - gpa 3 . 7\npipeline accounting experience\nrevenue accounting experience\nhas interfaced with all aspects of organizations - trader , customers ,\nfinancial reporting , schedulers\nstrong pc skills\neffective communicator\n- davis _ gloria _ 06142000 _ original . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.529+0000", "entityId": 2487, "properties": {"text": "Subject: resume - marcia curry\njob posting response , i have not talked to this person .\n- resumel . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.534+0000", "entityId": 2488, "properties": {"text": "Subject: accrued 06 / 16\nhere is a breakdown by day of all of the counterparties .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.539+0000", "entityId": 2489, "properties": {"text": "Subject: hl & p volumes 6 / 00\ndisregard the prior e - mail . this is the correct spreadsheet for hl & p .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 06 / 19 / 2000 02 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 06 / 19 / 2000 01 : 59 pm\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\ncc :\nsubject : hl & p volumes 6 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.544+0000", "entityId": 2490, "properties": {"text": "Subject: cuts\nfyi - - - - - - - - - - here are the latest cuts :\n6 / 16 richardson on oasis at el paso\n97 j 4 was 6 . 0 now 5 . 385 ( cut of 615 )\nburlington on oasis at el paso\n97 j 4 was 15 . 0 nowl 3 . 461 ( cut of 1 . 539 )\nexxon on oasis at el paso\n9 j 49 was 3 . 5 now 3 . 286 ( cut of 214 )\n6 / 17 201 k cut on oasis at pg & e waha\nwho 34 was 12 . 110 now 10 . 831 ( cut of 1 . 279 )\n6 / 18 201 k cut on oasis at pg & e w\nwho 34 was 12 . 110 now 10 . 166 ( cut of 1 . 944 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.549+0000", "entityId": 2491, "properties": {"text": "Subject: devon transition\neffective july 1 avails , beverly beaty will be enron ' s lead operations\ncontact for devon production . please assemble all information and contact\nall personnel necessary to make the transition as smooth as possible .\nto eliminate unnecesary e - mails , please designate one main contact from each\nof your desks and a backup ( central desk , west desk and texas desk ) who can\nreceive and distribute all nom changes and operational information to your\ndesk ' s proper schedulers . if you have any questions , please let me know .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.554+0000", "entityId": 2492, "properties": {"text": "Subject: 6 / 15 / 00 revision to sea robin volumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 19 / 2000\n03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 19 / 2000 03 : 10 : 42 pm\nto : ,\ncc :\nsubject : 6 / 15 / 00 revision to sea robin volumes\nchristina ,\nthe attached shows the volumes that should have been nominated effective\n6 / 15 / 00 and 6 / 16 / 00 . the sea robin plant was back up for those two days and\ngas was processed resulting in a decrease for pvr . effective 6 / 17 / 00 , the\nplant was down again and volumes were increased to reflect no processing\nloss . i forwarded those volumes to you on friday , june 16 .\nlet me know of any questions you have .\nthanks ,\nsteve\n- ei 305 reveffo 61500 . xls\n- ei 330 areveffo 61500 . xls\n- ei 330 breveffo 61500 . xls\n- ei 330 creveffo 61500 . xls\n- ei 333 reveffo 61500 . xls\n- ei 337 reveffo 61500 . xls\n- smi 23 reveffo 61500 . xls\n- smi 41 reveffo 61500 . xls\n- smil 28 reveffo 61500 . xls\n- wc 560 reveffo 61500 . xls\n- wc 580 reveffo 61500 . xls\n- gbl 28 reveffo 61500 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.563+0000", "entityId": 2493, "properties": {"text": "Subject: hpl noms for june 20 , 2000\n( see attached file : hplo 620 . xls )\n- hplo 620 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.571+0000", "entityId": 2494, "properties": {"text": "Subject: enron actuals for june 16 thru 18 , 2000\njune 16 teco tap 97 . 500 / hpl iferc\nhpl katy ( dbnd ) 5 . 000 / enron\nls hpl katy 25 . 000 / enron\njunel 7 teco tap 40 . 000 / enron\n75 . 000 / hpl iferc\njune 18 teco tap 40 . 000 / enron\n50 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.576+0000", "entityId": 2495, "properties": {"text": "Subject: re : atmic hurta # 1 - new production\nvance ,\ndeal # 303948 has been created and entered in sitara .\nbob\nvance l taylor\n06 / 19 / 2000 02 : 56 pm\nto : vance l taylor / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , hillary mack / corp / enron @ enron , lisa\nhesse / hou / ect @ ect , heidi withers / hou / ect @ ect , susan smith / hou / ect @ ect , donald\np reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : re : atmic hurta # 1 - new production\nauugghh !\nthat ' s the marquee corporation\nvlt\nx 3 - 6353\nvance l taylor\n06 / 19 / 2000 02 : 54 pm\nto : vance l taylor / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , hillary mack / corp / enron @ enron , lisa\nhesse / hou / ect @ ect , heidi withers / hou / ect @ ect , susan smith / hou / ect @ ect , donald\np reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : re : atmic hurta # 1 - new production\nrevision , the correct counterparty name should be marque cooperation acting\nas seller and seller ' s representative .\nthanks ,\nvlt\nx - 6353\nvance l taylor\n06 / 19 / 2000 02 : 10 pm\nto : robert cotten / hou / ect @ ect\ncc : hillary mack / corp / enron @ enron , lisa hesse / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : atmic hurta # 1 - new production\nbob ,\nthe following production commenced to flow on friday and a ticket should be\ncreated and entered into sitara based on the following :\ncounterparty meter volumes price period\niss , l . l . c 9837 3 , 500 mmbtu / d 100 % gas daily less $ 0 . 09 6 / 16 - 6 / 30\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of july . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.581+0000", "entityId": 2496, "properties": {"text": "Subject: re : hl & p 6 / 00\naimee ,\nare you confirming these volumes with hl & p ? we have been doing some special\ndeals at green ' s bayou and the hl & p dealmaker has been calling to find out\nwhat the volumes are . i do not think he communicates with his scheduler , is\nthat the case ? anyway , we need to agree with hl & p on what volumes flowed on\nthese special days and get them into the system so they can be billed\ncorrectly .\naimee lannou 06 / 19 / 2000 02 : 18 pm\nto : edward d gottlob / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc :\nsubject : hl & p 6 / 00\ned - when you have a chance , i would like to go over this with you .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.586+0000", "entityId": 2497, "properties": {"text": "Subject: revised availabilities\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 20 / 2000\n04 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 06 / 20 / 2000 04 : 29 : 13\npm\nto :\ncc :\nsubject : revised availabilities\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.591+0000", "entityId": 2498, "properties": {"text": "Subject: nom change on tennessee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 20 / 2000\n10 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 20 / 2000 10 : 43 : 12 am\nto :\ncc :\nsubject : nom change on tennessee\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.595+0000", "entityId": 2499, "properties": {"text": "Subject: nom change on tejas pipeline\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 20 / 2000\n10 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 20 / 2000 10 : 16 : 09 am\nto :\ncc :\nsubject : nom change on tejas pipeline\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.600+0000", "entityId": 2500, "properties": {"text": "Subject: ss 198 j revision effective 6 / 21 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 20 / 2000\n10 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 20 / 2000 09 : 13 : 31 am\nto : ,\ncc :\nsubject : ss 198 j revision effective 6 / 21 / 00\nplease see the attached revision to be effective 6 / 21 / 00 .\nthanks ,\nsteve\n- ssl 98 jreveffo 62100 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.604+0000", "entityId": 2501, "properties": {"text": "Subject: re : resume - liz bellamy\nwho all would you like to have liz interview with ?\ndaren j farmer @ ect\n06 / 20 / 2000 03 : 08 pm\nto : toni graham / corp / enron @ enron\ncc :\nsubject : re : resume - liz bellamy\ni would be interested in talking to liz . please set up an interview for me\none afternoon during the next couple of weeks . thanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.609+0000", "entityId": 2502, "properties": {"text": "Subject: hpl noms for june 21 , 2000\n( see attached file : hplo 621 . xls )\n- hplo 621 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.614+0000", "entityId": 2503, "properties": {"text": "Subject: enron actuals for june 19 , 2000\nteco tap 40 . 000 / enron\n98 . 750 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.618+0000", "entityId": 2504, "properties": {"text": "Subject: unify stress test next week with sybase 12 . 0\nyvette / pat / daren - please send this to your gas schedulers .\nhi ,\nyou probably already heard . . . test of the new sybase data base release is off\nfor today . testing will resume tomorrow , wed 6 / 21 at noon . people should at\nleast verify their security access today . if you do not have access , please\ncontact diane niestrath at 3 - 9931 or dave mcmullan at 3 - 9127 .\ndiane niestrath\nfrom : dave nommensen 06 / 16 / 2000 05 : 25 pm\nto : susan harrison / hou / ect @ ect , brenda f herod / hou / ect @ ect , bryce\nbaxter / hou / ect @ ect , rita wynne / hou / ect @ ect , pat clynes / corp / enron @ enron ,\nrandall l gay / hou / ect @ ect , george smith / hou / ect @ ect , edward\nterry / hou / ect @ ect , beverly beaty / hou / ect @ ect , carrie hollomon / hou / ect @ ect\ncc : jeff johnson / corp / enron @ enron , scott williamson / hou / ect @ ect , john\npyle / corp / enron @ enron , jim ogg / hou / ect @ ect , jaikishore bharathi / hou / ect @ ect ,\nregan m smith / hou / ect @ ect , kenneth m harmon / hou / ect @ ect , paul f\npoellinger / hou / ect @ ect\nsubject : unify stress test next week with sybase 12 . 0\nwe have done some preliminary testing of the latest version of sybase\n( version 12 ) . we have seen very positive results from our initial tests and\nwould like to proceed with a \" stress test \" ( not to be confused with me\nshowing up each day at work ) . we would like to do 2 tests next week due to\nhardware and business restrictions .\nthe test would be similar to those from late - 1998 ( ah , those were the\ndays ! ) . we will ask all users , as well as i . t . folks , to run as many of\ntheir usual processing during a scripted time frame from approx noon - 1 : 30 pm\non tuesday and wednesday . be sure to order some yummy pizza or sandwiches for\nyour staff !\nthe sybase 12 . 0 environment can be accessed via start / programs / test\napplications / unify applications / unify gas - power stage . on the login window ,\nselect server = \" ase 12 test \" . if you usual production password does not\nwork , try \" houston \" . if that does not work , try a neighbor ' s ( audit says\nthat fine , its just a test ) . each user should plan to run several sessions\nwhere permissible to simulate a heavy load on the system and to make up for\nthose not able to participate during this time . please have your staff try\nto login some time monday to insure they have access .\nthe test script during the time period will be :\n12 : 00 - 1 : 30 logistics : pathing , nominating , running some reports\n12 : 20 - 1 : 30 volume management : do your thing\n12 : 40 - 1 : 30 settlements / accounting : pile in\nplease let me know if your area would not be able to assist in this very\nimportant test . the results of these 2 tests will dictate whether we should\npursue our migration to this new release in mid - july . the less bid weeks\nwith poor system performance the better !\nthanks in advance for your help , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.623+0000", "entityId": 2505, "properties": {"text": "Subject: meter 1429\ndaren - meter 1429 , ind sterling gas plant has flow beginning 6 / 12 . it is a\nvery small volume . could you please create a deal for this ?\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.628+0000", "entityId": 2506, "properties": {"text": "Subject: eastrans nomination - gas day 6 / 22 / 2000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stacey neuweiler / hou / ect on 06 / 21 / 2000\n08 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" william e . speckels \"\n06 / 20 / 2000 04 : 33 pm\nto : dfarmer @ eneron . com , stacey . neuweiler @ enron . com , briley @ enron . com\ncc : \" michael r . cherry \" , \" chad w . cass \"\n, \" julia a . urbanek \" ,\n\" john a . bretz \" , \" bruce mcmills \"\nsubject : eastrans nomination - gas day 6 / 22 / 2000\nthis is to nominate 33 , 450 mmbtu / d into eastrans for gd 6 / 22 / 2000 forward .\nredeliveries will be made as follows :\n15 , 000 into pg & e ( valero )\n10 , 000 to hpl cw 497\n8 , 450 from fuels cotton valley\nif you have any questions give me a call at 713 - 627 - 6290 .\nthanks ,\nwilliam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.633+0000", "entityId": 2507, "properties": {"text": "Subject: hl & p\ndaren - pat gave me a a spreadsheet showing what should be allocated to\ngreens bayou . i checked the deal ticket ( 286824 ) and it ends on 6 / 17 . there\nis still two more days that need to be reallocated . please let me know if\nyou can extend this deal or create a new one .\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.637+0000", "entityId": 2508, "properties": {"text": "Subject: hl & p\ndaren - also , the deal might include san jac ( meter 1554 ) so the ena can be\nkept whole .\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 06 / 21 / 2000 11 : 02\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 06 / 21 / 2000 11 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : hl & p\ndaren - pat gave me a a spreadsheet showing what should be allocated to\ngreens bayou . i checked the deal ticket ( 286824 ) and it ends on 6 / 17 . there\nis still two more days that need to be reallocated . please let me know if\nyou can extend this deal or create a new one .\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.642+0000", "entityId": 2509, "properties": {"text": "Subject: desk summary report\nthe cpr report named desk summary is currently being reviewed for an\nupgrade . i have been told that this report is used during bidweek to check\npositions on a particular pipe ( for a particular zone ) . if you do not need\nadditional data , this report could very easily be added to the report\nselection in the sitara reporting application . if anyone would like to see\nmore detailed information on the report , please let me know . there may be a\nreport that is already in production that they can access .\nplease let me know if the format currently in cpr is sufficient as soon as\npossible .\nchao !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.648+0000", "entityId": 2510, "properties": {"text": "Subject: west cameron 587\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 21 / 2000\n04 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacqueline blanchard \" on 06 / 21 / 2000 03 : 47 : 15\npm\nto :\ncc :\nsubject : west cameron 587\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.653+0000", "entityId": 2511, "properties": {"text": "Subject: fwd : gb 128 revision effective 6 / 22 / 00 ( sea robin p / l )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 21 / 2000\n08 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 21 / 2000 08 : 19 : 20 am\nto :\ncc :\nsubject : fwd : gb 128 revision effective 6 / 22 / 00 ( sea robin p / l )\nplease see the attached .\ndate : wed , 21 jun 2000 08 : 18 : 56 - 0500\nfrom : \" steve holmes \"\nto :\nsubject : gb 128 revision effective 6 / 22 / 00 ( sea robin p / l )\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" = _ f 6 ae 9236 . caabcdbe \"\nplease see the attached revision to be effective 6 / 22 / 00 .\nthanks ,\nsteve\n- gbl 28 reveffo 62200 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.662+0000", "entityId": 2512, "properties": {"text": "Subject: nom change on texas eastern\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 21 / 2000\n08 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 21 / 2000 07 : 45 : 12 am\nto :\ncc :\nsubject : nom change on texas eastern\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.668+0000", "entityId": 2513, "properties": {"text": "Subject: adios . . .\nas most of you have probably heard already , i am leaving enron to pursue some\nnew endeavors . i will be moving back home to toronto and i ' m going to take\nsome time off to do some travelling . i plan to go back to school in january ,\nand after that . . . . we ' ll see what life has in store !\ni wanted to thank all of you for the many wonderful experiences i have had\nhere at enron . it has been a pleasure working with and getting to know you\nall . i hope that if you ' re ever in toronto you will drop me a line .\nmy last day of work will be june 30 th , however , i will be staying in houston\nuntil the end of july . i hope to see or speak to all of you before i leave ,\nbut if i don ' t manage to , please keep in touch . my e - mail address is\njennifer _ sabine @ yahoo . com .\ntake care and good luck !\njennifer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.673+0000", "entityId": 2514, "properties": {"text": "Subject: hpl nom for june 22 , 2000\n( see attached file : hplo 622 . xls )\n- hplo 622 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.677+0000", "entityId": 2515, "properties": {"text": "Subject: enron / hpl actuals for june 20 , 2000\nteco tap 120 . 000 / hpl iferc ; 30 . 000 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.681+0000", "entityId": 2516, "properties": {"text": "Subject: reliant ' s attempt at humor\nlook what our competition thinks about us .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steve venturatos / hou / ect on 06 / 21 / 2000\n03 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nangie zeman @ enron\n06 / 21 / 2000 02 : 18 pm\nto : steve venturatos / hou / ect @ ect\ncc :\nsubject : reliant ' s attempt at humor\n-\nthought you might like to see ( and get a laugh at ) what ; s going around !\n- -\nthought you would find the below \" press release \" a bit\nhumorous . . . . . . . . . . . . . . . . . . . . . . . . . . . . everyone is always looking to bash\n# 1 . . . . . . . . . . . and from the looks of the cc ' s , it has made a good loop around\nat both reliant and the diner .\nfor immediate release\n- - - - - - - - - - - - - - - - - - - - - - -\ntoday enron and hades announced a definitive energy services agreement said\nto be worth an estimated $ 666 trillion .\nin the deal , enron will provide both gas and electric commodities to hades '\nfacilities throughout and under north america . john d . rockefeller , former\nceo of energy monopolist standard oil , is now head of hades ' energy\nmanagement division . said rockefeller , \" obviously hell has significant\nheating demands . while eternal flames are a great idea in concept , they\nrequire vast and reliable fuel resources . enron was the only supplier\nwilling to make a deal with my boss , and , as a former monopolist , i just\nlike the way they do business . \"\na spokesperson for enron said the two cultures were able to work easily\ntogether during negotiations . according to the company , \" the deal fits both\ncompanies exceptionally well . with hades ' ability to attract and retain new\ncustomers , we see this as a fabulous growth opportunity for millennia to\ncome . \" according to several energy industry insiders , hades ' high heating\ndemand with very little need for summer air conditioning make it a very\nattractive energy portfolio addition .\nhades is a multinational corporation with millions of sites worldwide and\napproximately 173 quintillion customers . the entity boasts sustained high\ngrowth rates over the last two thousand years .\nenron is one of the world ' s leading energy and communications companies .\nthe company owns approximately $ 37 billion in energy and communications\nassets . enron ranks in the top quarter of fortune ' s \" best 100 companies to\nwork for if you can keep a job there and don ' t mind working 80 hours a\nweek , \" and is among the most respected corporations in america , as ranked by\ncustomers with respect - us - or - get - curtailed clauses in their energy supply\ncontracts .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.686+0000", "entityId": 2517, "properties": {"text": "Subject: organizational changes within risk management\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n06 / 21 / 2000 08 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchantelle villanueva @ ect\n06 / 20 / 2000 04 : 51 pm\nto : kathryn cordes / hou / ect @ ect , jennifer deboisblanc denny / hou / ect @ ect ,\nwilliam kelly / hou / ect @ ect , david oliver / hou / ect @ ect , cathy de la\ntorre / hou / ect @ ect , brenda h fletcher / hou / ect @ ect , mary theresa\nfranklin / hou / ect @ ect , elizabeth l hernandez / hou / ect @ ect , crystal\nhyde / hou / ect @ ect , alicia perkins / hou / ect @ ect , kimat singla / hou / ect @ ect ,\njeanne wukasch / corp / enron @ enron , melba a bowen / hou / ect @ ect , jeff\nroyed / corp / enron @ enron , sandy olitsky / hou / ect @ ect , jeffrey c\ngossett / hou / ect @ ect , hillary mack / corp / enron @ enron , gregory a\nmausser / hou / ect @ ect , kimberly s olinger / hou / ect @ ect , michelle\nwaldhauser / corp / enron @ enron , chris walker / hou / ect @ ect , rahmaan\nmwongozi / corp / enron @ enron , gabriel monroy / hou / ect @ ect , robin\nrodrigue / hou / ect @ ect , dawn c kenne / hou / ect @ ect , heather choate / hou / ect , irena\nd hogan / hou / ect @ ect , yvette g connevey / corp / enron @ enron , bryce\nbaxter / hou / ect @ ect , katherine l kelly / hou / ect @ ect , susan\nharrison / hou / ect @ ect , steve jackson / hou / ect @ ect , scott neal / hou / ect @ ect ,\nbrent a price / hou / ect @ ect , kimberly brown / hou / ect @ ect\ncc :\nsubject : organizational changes within risk management\nassistants , please forward on to your groups .\neffective in august , david oliver will be leaving the east desk risk\nmanagement team to take on a risk lead role in the enron london office .\nkyle etter will be joining the east team as the new lead and will begin\ntransitioning into his new role over the next few weeks .\nplease join the east desk in congratulating both david and kyle and wishing\nthem well on their new opportunities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.691+0000", "entityId": 2518, "properties": {"text": "Subject: nom change for gas day 22\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 21 / 2000\n11 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 06 / 21 / 2000 09 : 49 : 46 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : nom change for gas day 22\nlowering our midcon by 15 , 000\n( see attached file : hpl - june . xls )\n- hpl - june . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.696+0000", "entityId": 2519, "properties": {"text": "Subject: re : hl & p\nd - when you get a chance , i would like to go over what has been allocated\nthese days .\naim\ndaren j farmer\n06 / 21 / 2000 03 : 11 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : hl & p\ni extended the deal .\nd\naimee lannou 06 / 21 / 2000 11 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : hl & p\ndaren - pat gave me a a spreadsheet showing what should be allocated to\ngreens bayou . i checked the deal ticket ( 286824 ) and it ends on 6 / 17 . there\nis still two more days that need to be reallocated . please let me know if\nyou can extend this deal or create a new one .\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.701+0000", "entityId": 2520, "properties": {"text": "Subject: customer trip\nthe july customer trip is right around the corner . i ' m sure you will be\nhearing more questions from your customers as the day arrives . just in case ,\nhere are a few helpful hints .\ni am currently ( today ) in the process of putting together a to bring list for\nyou customers . just a helpful list of clothing items , sun skin care\nsuggestions , etc . list that they may want to pack . an agenda will be coming\nshortly after that . as you all know each of your customers are responsible\nfor getting themselves to florida . if for some reason you have a . . . . .\n. high maintenance customer who is really pushing the issue of us helping\nthem find a flight we will help target some flights they can take . they will\nstill be responsible for the fare . please don ' t freely offer this\nsuggestion only use it as an emergency .\ni do have the list of each of your customers who have rsvp ' d . if you have any\ncustomers who you are afraid may back out please let me know who they are so\nthat i can make a \" glad you ' re coming do you have any questions ? \" phone call\na few days before departure to ensure they are still coming .\nif you have any other questions or concerns , let me know .\nyvette\nx 3 . 5953", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.705+0000", "entityId": 2521, "properties": {"text": "Subject: calpine daily gas nomination\n- hidalgo daily gas nomination . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.710+0000", "entityId": 2522, "properties": {"text": "Subject: re : fuel\nwhat is the answer ? can the systems and processes handle this ? please let\nme know asap . thanks .\nedward d gottlob\n06 / 22 / 2000 10 : 57 am\nto : bherod @ enron . com\ncc :\nsubject : fuel\nbrenda ,\nas you know fuel is a big risk . one of the things we are trying to do is get\nthe shipper to pay fuel . this would mean we would purchase , transport and\npossibly sell gas with a fuel percentage as part of the price . can the\ndownstream systems , scheduling etc handle this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.715+0000", "entityId": 2523, "properties": {"text": "Subject: re : fuel\nwe need to discuss further . my concern would be that how do we know what %\nhpl should be retaining at a compressor or zone to make sure we recoup our\nfuel cost ? also , could allocated fuel cause a contract imbalance ? i think\nthat pipeline operations can handle the scheduling of third party fuel\nretainage . but , if we retain fuel on ena transports , then we need to come up\nwith a plan to nominate this in marketing operations to houston pipeline .\ncurrently , this process is not in place .\nenron north america corp .\nfrom : brenda f herod 06 / 22 / 2000 12 : 35 pm\nto : lisa csikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve venturatos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , michael eiben / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect\nsubject : re : fuel\nwhat is the answer ? can the systems and processes handle this ? please let\nme know asap . thanks .\nedward d gottlob\n06 / 22 / 2000 10 : 57 am\nto : bherod @ enron . com\ncc :\nsubject : fuel\nbrenda ,\nas you know fuel is a big risk . one of the things we are trying to do is get\nthe shipper to pay fuel . this would mean we would purchase , transport and\npossibly sell gas with a fuel percentage as part of the price . can the\ndownstream systems , scheduling etc handle this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.720+0000", "entityId": 2524, "properties": {"text": "Subject: re : fuel\napplication of the fuel retained from transportation and treating contracts\ndoesn ' t have to be done by zone or compressor , in fact i am sure there will\nbe times when we are either short or long compressor fuel when compared to\nthe pipelines total usage . usually , short . i just do not think the market\nwill let me lay off all of this risk . it would be really nice if we could\nget the system to track compressor fuel used to service specific contracts\nbut i am afraid it will always be a facility planning issue . fuel should not\ncause imbalances on the transportation contract . a pipeline could be long\nfuel due to not running compression and in that case we would have to inject\nor hold in linepack the excess . it seems that we would look at fuel on a\ntotal basis .\nmichael eiben\n06 / 22 / 2000 01 : 09 pm\nto : brenda f herod / hou / ect @ ect\ncc : lisa csikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve venturatos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , edward d gottlob / hou / ect @ ect\nsubject : re : fuel\nwe need to discuss further . my concern would be that how do we know what %\nhpl should be retaining at a compressor or zone to make sure we recoup our\nfuel cost ? also , could allocated fuel cause a contract imbalance ? i think\nthat pipeline operations can handle the scheduling of third party fuel\nretainage . but , if we retain fuel on ena transports , then we need to come up\nwith a plan to nominate this in marketing operations to houston pipeline .\ncurrently , this process is not in place .\nenron north america corp .\nfrom : brenda f herod 06 / 22 / 2000 12 : 35 pm\nto : lisa csikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve venturatos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , michael eiben / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect\nsubject : re : fuel\nwhat is the answer ? can the systems and processes handle this ? please let\nme know asap . thanks .\nedward d gottlob\n06 / 22 / 2000 10 : 57 am\nto : bherod @ enron . com\ncc :\nsubject : fuel\nbrenda ,\nas you know fuel is a big risk . one of the things we are trying to do is get\nthe shipper to pay fuel . this would mean we would purchase , transport and\npossibly sell gas with a fuel percentage as part of the price . can the\ndownstream systems , scheduling etc handle this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.725+0000", "entityId": 2525, "properties": {"text": "Subject: re : fuel\nper mary , sitara can not handle it either . it can calculate and withhold\nvolume from the deal as a % for fuel , but not as part of the price . steve\nsays this is a nightmare for the denver office . can you take the \" to do \" to\nfollow - up on this throughout the systems , and get back with ed to further\ndiscuss ? i ' d really appreciate it .\nmichael eiben\n06 / 22 / 2000 01 : 09 pm\nto : brenda f herod / hou / ect @ ect\ncc : lisa csikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve venturatos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , edward d gottlob / hou / ect @ ect\nsubject : re : fuel\nwe need to discuss further . my concern would be that how do we know what %\nhpl should be retaining at a compressor or zone to make sure we recoup our\nfuel cost ? also , could allocated fuel cause a contract imbalance ? i think\nthat pipeline operations can handle the scheduling of third party fuel\nretainage . but , if we retain fuel on ena transports , then we need to come up\nwith a plan to nominate this in marketing operations to houston pipeline .\ncurrently , this process is not in place .\nenron north america corp .\nfrom : brenda f herod 06 / 22 / 2000 12 : 35 pm\nto : lisa csikos / hou / ect @ ect , daren j farmer / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , rita wynne / hou / ect @ ect , steve venturatos / hou / ect @ ect , pat\nclynes / corp / enron @ enron , michael eiben / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect\nsubject : re : fuel\nwhat is the answer ? can the systems and processes handle this ? please let\nme know asap . thanks .\nedward d gottlob\n06 / 22 / 2000 10 : 57 am\nto : bherod @ enron . com\ncc :\nsubject : fuel\nbrenda ,\nas you know fuel is a big risk . one of the things we are trying to do is get\nthe shipper to pay fuel . this would mean we would purchase , transport and\npossibly sell gas with a fuel percentage as part of the price . can the\ndownstream systems , scheduling etc handle this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.730+0000", "entityId": 2526, "properties": {"text": "Subject: re : teco gas processing ; meter no . : 6884\ndaren ,\nplease see below . i need to have the purchase from ( teco ) and sale to\n( teco ) deals in order to allocate correctly . for may 00 , we are purchasing\nfrom teco . i am allocating this to strangers gas at\nmoment , but it needs to go to the correct deal . please let me know what\nthe deal numbers when you have them . thanks\nthu\nenron north america corp .\nfrom : george weissman 03 / 29 / 2000 08 : 01 am\nto : jeffrey a austin / hou / ect @ ect , michael c bilberry / hou / ect @ ect , gary\nbryan / hou / ect @ ect , william c falbaum / hou / ect @ ect , mary jo\njohnson / hou / ect @ ect , jennifer martinez / hou / ect @ ect , brian m\nriley / hou / ect @ ect , jill t zivley / hou / ect @ ect , greg brazaitis / hou / ect @ ect\ncc : jennifer d pattison / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : teco gas processing ; meter no . : 6884\neach month at seven oaks , teco ( pg meter no . : 6884\ngreg , this relates to the seven oaks tailgate accounting issue we have been\ndiscussing . hplr once had an appropriate agreement in place , but that\nagreement has been assigned to ect . until the agreement can be re - assigned\nfrom ect to hplc , we will use spot gtcs to clear the puchase / sale accounts\nfor the period from 10 / 98 to 6 / 99 or perhaps 7 / 99 .\ngeorge\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 26 / 99 03 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital meter no . : 6884\njulie ,\nin 1996 , a contract was drawn up between hplr and teco gas processing ,\ncontract numbers 078 - 86978 - 101 / 078 - 86978 - 301 . in april ' 99 , these contracts\nwere assigned to ect . in october of 1998 , these contracts should have been\nassigned to hplc , but did not get assigned . beginning in jan . ' 99 , negative\nvolumes started appearing in my purchase payment statements under sitara\n# 18372 ( meter # 6884 ) , causing my payments to be reduced . i believe that the\ndeal number for the sale was being attached to the purchase contract . ( the\npurchase deal numbers which i have been using are sitara # 14086 and sitara\n# 11079 ) . both these sales and purchases ( since october ' 98 ) are suppose to\nbe for hplc . donald reinhart stated that spot purchase and spot sale gtc ' s\nbetween teco and hplc can be set up from october of 1998 until the master\ncontract is changed . amelia alland has set these up , which i believe\nterminate in october ' 99 . the gtc spot contract numbers are as follows :\npurchases : 012 - 86978 - 102 ; global 96021450\nsales : 012 - 86978 - 301 ; global 96021451\nper our conversation earlier can you make these retroactive adjustments ?\nwhen complete , can you tell me what the new deal numbers will be ?\nthank you so much for your help and let me know if you need additional\ninformation .\ncc ' s :\nlet me know if something i stated is incorrect or if anyone has any\nadditional information .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.735+0000", "entityId": 2527, "properties": {"text": "Subject: devon - effective july 1 , 2000\neffective julyl , 2000 , i will be the new point of contact at enron north\namerica for devon . in an effort to\navoid duplication of e - mails to every scheduler on every desk , i would like\nto forward the volumes , revisions\nor any other pertinent information to only the people who need it . could\nyou please send me a list of the schedulers\nwho handle devon on each of your desks and the pipes they schedule ? i will\nalso forward a copy of any changes to\na point person on each desk that will follow up with the schedulers to make\nsure they make appropriate revisions .\nif you have any suggestions on how to streamline this process any further ,\nplease let me know .\nthanks ,\nbev beaty\n3 - 6357", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.739+0000", "entityId": 2528, "properties": {"text": "Subject: nom change on tejas for garza plant\ndarren ,\nchanges for 6 / 23 . . . . .\ni will be taking over the duties ami has been handling effective july lst in\ncoordinating changes will devon . this is\njune , but jan is already sending me changes . can you get with me this\nafternoon or tomorrow and let me know who i\nshould send changes to ?\nthanks ,\nbev\n853 - 6357\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 06 / 22 / 2000 09 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" jan svajian \"\n06 / 22 / 2000 08 : 25 am\nto :\ncc :\nsubject : nom change on tejas for garza plant\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.744+0000", "entityId": 2529, "properties": {"text": "Subject: nom change on tejas pipeline for garza plant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 22 / 2000\n08 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jan svajian \" on 06 / 22 / 2000 08 : 03 : 51 am\nto :\ncc :\nsubject : nom change on tejas pipeline for garza plant\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.748+0000", "entityId": 2530, "properties": {"text": "Subject: july 2000 first of the month availabilities\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 22 / 2000\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 06 / 22 / 2000 08 : 07 : 11 am\nto : ,\ncc :\nsubject : july 2000 first of the month availabilities\nattached are volumes available for sale on devon ' s behalf for the month of\njuly 2000 . i have made a note next to volumes and pvr ' s that are estimated\nand will furnish final volumes as soon as those are available .\nplease let me know of any questions you have .\nthanks ,\nsteve holmes\ndevon energy corporation\n( 405 ) 552 - 4665\nsteve . holmes @ dvn . com\n- enronavailso 700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.753+0000", "entityId": 2531, "properties": {"text": "Subject: re : vacation\ni will leave the choice to you all . we just need to make sure there is\ncoverage . have a good one !\ndaren j farmer\n06 / 22 / 2000 08 : 00 am\nto : brenda f herod / hou / ect @ ect\ncc :\nsubject : vacation\nbh ,\ni plan to be on vacation july 5 - 6 ( finally ) and on the customer trip on the\n7 th . while i am out , gary hanks will be keeping our position during\ntrading . stacey will be in charge of everything else . i am comfortable that\neverything will be covered .\ni will be back in town thursday night . the primary flight for the customer\ntrip leaves around 11 : 30 . others leave at 3 : 30 and 5 : 30 ( ? ) . the latest\nidea we had is that pat would take a later flight on this trip and i will\ntake a later flight on the august trip , allowing one of us to be in the\noffice for half the day . i can also come in for the half day on the 7 th if\nwe decide that is needed .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.758+0000", "entityId": 2532, "properties": {"text": "Subject: note from ken seaman\nhi ,\n?\nhow is the family ? ? ? ? and the multiple jobs ? ? ? ? ? ?\n?\nwe just got back from omaha - - - linda ' s 40 th high school reunion . i wish\nsomeone would explain to me who all those old people were that attended .\n?\nputting $ 1 . 85 a gallon gas in that beast of hers was sure fun . i may need a\npart - time job if this keeps up long . ( just kidding - - you probably have\nenough to deal with - - right )\n?\njennifer has decided to journey off to law school at baylor . she and linda\nare going to waco friday to finalize an apartment .\nchris is managing the i - 10 texas land & cattle store . keeps him very busy .\n( can ' t even send an e - mail - - - - - like someone else i know ) ( just kidding )\n?\nwe are looking for property on a lake ( linda ' s request ) . like there is\nanything like that left in texas . we will probably drop in this house .\n?\npretty quiet here all things considered .\n?\ndrop me a line or give me a call when you have some time . or if you are\nreally free we could actually plan a lunch . the price of natural gas should\nhelp keep tom from hassling you too much .\n?\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.764+0000", "entityId": 2533, "properties": {"text": "Subject: tufco - prebid\nhplr est . 65000\nwb est . 40000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.773+0000", "entityId": 2534, "properties": {"text": "Subject: hpl noms for june 23 , 2000 revision # 1\nrevision for texoma .\nthanks .\n( see attached file : hplo 623 . xls )\n- hplo 623 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.779+0000", "entityId": 2535, "properties": {"text": "Subject: hpl nom for june 23 , 2000\n( see attached file : hplo 623 . xls )\n- hplo 623 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.783+0000", "entityId": 2536, "properties": {"text": "Subject: enron actuals for june 21 , 2000\nteco tap 120 . 000 / hpl iferc\nls hpl haty 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.788+0000", "entityId": 2537, "properties": {"text": "Subject: july production estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 22 / 2000 11 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n06 / 21 / 2000 04 : 07 pm\nto : robert cotten / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : july production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\njuly . please be advised that this is a preliminary estimate as to this date ,\nwe have received only two noms for july . i will update you with any\nrevisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.792+0000", "entityId": 2538, "properties": {"text": "Subject: meter # 9833\ndaren ,\nsilver in gas control called me and said the flow at meter # 9833 was approx .\n5 , 400 / d for june . the nom is 13 , 171 / d . do you want me to adjust june ? the\nnom for july is 5 , 398 / d . vance listed 11 , 068 / d on the preliminary july\nspreadsheet but he called me and revised it to 5 , 398 / d . the c / p is helmerich\n& payne .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.797+0000", "entityId": 2539, "properties": {"text": "Subject: sap - timekeeping\nyou should have received your logon id and password for sap this morning .\nwe will hold a learning lunch early next week walking you through the new hr\nonline system and timekeeping system . you will not know how to key your time\nuntil then . i will keep you posted on the details of the learning lunch .\ny", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.802+0000", "entityId": 2540, "properties": {"text": "Subject: re : new eol product\nthe texas gas group will definitely be rolling out a \" super peak \" 5 x 8 product\nfor gas delivery from 1300 to 2100 cdt . if we decide to roll out another\nproduct , probably a \" peak \" 5 xl 2 ( 900 to 2100 cdt ) we will let you know\nsometime today .\nwe will relay the prices to you on monday .\ndale neuner 06 / 23 / 2000 09 : 43 am\nto : steve venturatos / hou / ect @ ect , melba lozano / hou / ect @ ect , sheri\nthomas / hou / ect @ ect , robert b cass / hou / ect @ ect\ncc :\nsubject : re : new eol product\nsteve -\none issue that immediately comes to mind is the ' general terms and\nconditions ' ability to handle intra - day nominations . . this may require a new\nproduct type and gtc .\nare we presently trading this product otc , or is this unprecedented ?\ndale\nto : dale neuner / hou / ect @ ect\ncc :\nsubject : new eol product\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melba lozano / hou / ect on 06 / 23 / 2000 09 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : steve venturatos 06 / 23 / 2000 09 : 29 am\nto : sheri thomas / hou / ect @ ect , melba lozano / hou / ect @ ect\ncc :\nsubject : new eol product\nwe are finalizing plans to introduce a new gas products ( s ) for july . the\nproduct ( s ) would be an hourly product either 5 x 8 or 5 xl 2 or 5 xl 6 .\neven though we have not decided which product to introduce , i thought i would\ngive you a heads up to keep you in the loop .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.806+0000", "entityId": 2541, "properties": {"text": "Subject: re : new eol product\nhow about 1 : 30 today on 32 in the texas gas trading area .\ndale neuner 06 / 23 / 2000 11 : 07 am\nto : steve venturatos / hou / ect @ ect\ncc : sheri thomas / hou / ect @ ect\nsubject : re : new eol product\nwe should sit and discuss the processes involved in creating new ,\nunprecedented product types in eol , as i think it is important for you to\nunderstand the myriad of processes involved . to start with , legal will\nabsolutely need to be involved , as it sounds like a new gtc is in order .\nplease call either sheri thomas or i when you are ready to discuss the new\nproduct .\ndale\nenron capital & trade resources corp .\nfrom : steve venturatos 06 / 23 / 2000 10 : 35 am\nto : dale neuner / hou / ect @ ect\ncc :\nsubject : re : new eol product\nit is a totally new product .\ndale neuner 06 / 23 / 2000 09 : 43 am\nto : steve venturatos / hou / ect @ ect , melba lozano / hou / ect @ ect , sheri\nthomas / hou / ect @ ect , robert b cass / hou / ect @ ect\ncc :\nsubject : re : new eol product\nsteve -\none issue that immediately comes to mind is the ' general terms and\nconditions ' ability to handle intra - day nominations . . this may require a new\nproduct type and gtc .\nare we presently trading this product otc , or is this unprecedented ?\ndale\nto : dale neuner / hou / ect @ ect\ncc :\nsubject : new eol product\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melba lozano / hou / ect on 06 / 23 / 2000 09 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : steve venturatos 06 / 23 / 2000 09 : 29 am\nto : sheri thomas / hou / ect @ ect , melba lozano / hou / ect @ ect\ncc :\nsubject : new eol product\nwe are finalizing plans to introduce a new gas products ( s ) for july . the\nproduct ( s ) would be an hourly product either 5 x 8 or 5 xl 2 or 5 xl 6 .\neven though we have not decided which product to introduce , i thought i would\ngive you a heads up to keep you in the loop .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.811+0000", "entityId": 2542, "properties": {"text": "Subject: re : panenergy marketing march 2000 production\ndaren -\ndeal # 157288\nlocation : centana\ndays : 3 / 11 - 3 / 31 ( gas is not a part of the exchange agreement ) .\ni need to have the spot deal placed on a different deal ticket than the\nexchange deal ( # 157288 ) .\nwill you break out this spot deal separately ?\nthanks for fixing the price for the etxg gas system in march .\nkatherine\n5 - 8643\ndaren j farmer @ ect\n06 / 14 / 2000 01 : 11 pm\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : panenergy marketing march 2000 production\ni changed the pricing on deal 157288 for the east texas point .\nd\nkatherine herrera @ enron\n06 / 12 / 2000 01 : 29 pm\nto : daren j farmer / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , lisa csikos / hou / ect @ ect , rita\nwynne / hou / ect @ ect\nsubject : panenergy marketing march 2000 production\ndaren -\nhave you had a chance to change the pricing in the system ?\nduke has called me several times they want to get our march deals finalized .\ni am not sure what i should tell them .\nthanks -\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n06 / 12 / 2000 01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 20 / 2000 08 : 31 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : panenergy marketing march 2000 production\ndeal # 157288\nper our conversation yesterday afternoon , pls . separate the centena term deal\nfrom the spot deal in sitara for march 2000 production .\nalso , i need to have the price for the east texas redelivery changed in\nsitara from hs index $ - . 085 to hs index $ - . 0825 . this is per the contract\nthe price for this redelivery point .\nthanks\nkatherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.816+0000", "entityId": 2543, "properties": {"text": "Subject: revised nom\ndaren ,\nprize energy revised their nom eff . 6 / 26 through 6 / 29 for the following\nmeters :\nmeter # 4028 4965 9604\nold nom : 659 182 101\nnew nom : 0 0 0\nplease advise if you want me to adjust .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.821+0000", "entityId": 2544, "properties": {"text": "Subject: july 2000 iferc nom .\nattached is the july 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuels ( previously tufco ) and hpl resources co . ,\n( txu fuels contr . # 3949 ) , as well as our july 2000 nomination for takes under\nthe gas sales and purchase contract between txu fuels sds . please advise\nshould\nyou have any questions concerning the attached .\nthanks ,\ncharlie\n( see attached file : minhplno 0 . xls ) ( see attached file : sdsnom . xls )\n- minhplno 0 . xls\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.826+0000", "entityId": 2545, "properties": {"text": "Subject: hpl noms for june 24 thru 26 , 2000\n( see attached file : hplo 624 . xls )\n- hplo 624 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.830+0000", "entityId": 2546, "properties": {"text": "Subject: enron actuals for june 22 , 2000\nteco tap 100 . 000 / hpl iferc\n20 . 000 / enron\nls hpl katy 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.835+0000", "entityId": 2547, "properties": {"text": "Subject: txu at lonestar katy\nhey , i spoke with ronnie skerrik and charlie stone this morning and they\nagreed that\nif lonestar does not bring the gas back to hpl as nomed that the gas will\ncontinue to be\nsold to txu . this should elevate any higher vol re - deliveries / make up to\nhpl .\nplease call me with any questions ,\njanet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.840+0000", "entityId": 2548, "properties": {"text": "Subject: dave n out until july 5 th\ni will be taking a sabbatical beginning any moment . i have no control over\nthe exact time ; it may have already happened . i plan to visit the mountains\nand the ocean . they miss me . i miss them .\nunfortunately , enron requires employees to use vacation time instead of inner\nself time , so i will have to return someday . looks like july 5 th . i ' m kind\nof bummed about it , but maybe by then i will have transcended to a new\nplateau of understanding .\nin my absence , contact milind patil , x 39247 for unify performance issues .\nthanks for understanding ,\nthe persona formerly known as dave ( the keyboard can no longer be used to\nspell my new name )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.844+0000", "entityId": 2549, "properties": {"text": "Subject: re : cilco\nthere have been so many cilco issues until i ' m not sure which one you are\nreferencing . if it relates to the cilco sale that has created the large\nreceivable balance , then we are waiting on a response from daren . i met with\ndaren and kenny and we all agree that the sale between ena - tx and cilco is\ninvalid and that the sale has to be with the storage book ( your group will\nnot have to do anything with this sale ) . the problem lies in the associated\ntransport with that sale . this is the piece that we need daren ' s help on . i\nwill touch base with daren and see if we can get this resolved this week . if\nthis is not what you are referring to , please let me know . thanks !\nenron north america corp .\nfrom : lisa csikos 06 / 26 / 2000 09 : 53 am\nto : fred boas / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc :\nsubject : re : cilco\ndo you have any information on this ? fred , i know you were in the meeting we\nhad to discuss what needs to be done to resolve this issue . i ' m not sure who\nthe logistics representative was .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lisa csikos / hou / ect on 06 / 26 / 2000 09 : 52\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njeff w westover\n06 / 26 / 2000 08 : 53 am\nto : lisa csikos / hou / ect @ ect\ncc : audrey cook / hou / ect @ ect\nsubject : re : cilco\nlisa , no i have not seen the adjustments come across for the summer months\n( off - peak ) that we talked about at the meeting last month . rita wynn ' s group\n( fred b . ) is making the volume adjustments in unify volume management and\nthat has not been made as of last week when i talked to him . if you have any\nquestions about this you might get with rita are fred .\nthanks , jeff\nenron north america corp .\nfrom : lisa csikos 06 / 24 / 2000 07 : 30 am\nto : audrey cook / hou / ect @ ect , jeff w westover / hou / ect @ ect , john\nvaldes / hou / ect @ ect\ncc : jim pond / corp / enron @ enron\nsubject : cilco\nhave you seen the cilco adjustements come through that were discussed in the\nmeeting we had last month ? please respond .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.849+0000", "entityId": 2550, "properties": {"text": "Subject: natural gas nomination for 07 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for july 2000 :\n36 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for july 2000 :\n11 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.854+0000", "entityId": 2551, "properties": {"text": "Subject: july 2000 first of the month availabilities\nhey guys ,\nyou may or may not be aware , but i am taking over coordinating changes with\ndevon from ami effective 7 / 1 / 2000 . these\nare the first preliminary numbers from devon . i will send information for\nthe lst to all of you , but the changes will only go to\nthe pipes affected . if you have any suggestions as to how this can be\nhandled smoother , i would love to hear from you . also ,\nif anyone else needs these volumes , please let me know .\nthanks for your help .\nbeverly beaty\n3 - 6357\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 06 / 26 / 2000 09 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n06 / 22 / 2000 08 : 07 am\nto : ,\ncc :\nsubject : july 2000 first of the month availabilities\nattached are volumes available for sale on devon ' s behalf for the month of\njuly 2000 . i have made a note next to volumes and pvr ' s that are estimated\nand will furnish final volumes as soon as those are available .\nplease let me know of any questions you have .\nthanks ,\nsteve holmes\ndevon energy corporation\n( 405 ) 552 - 4665\nsteve . holmes @ dvn . com\n- enronavailso 700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.861+0000", "entityId": 2552, "properties": {"text": "Subject: nom change for new well haynes 21 on tejas\nnom change effective 6 / 27 / 2000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 06 / 26 / 2000 08 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" jan svajian \"\n06 / 26 / 2000 07 : 52 am\nto :\ncc :\nsubject : nom change for new well haynes 21 on tejas\nsee attached .\n- enron nom change . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.868+0000", "entityId": 2553, "properties": {"text": "Subject: eastrans nomination effective 07 / 01 / 2000\n- - - - - forwarded by chad w . cass / gcs / cec / pec on 06 / 26 / 00 03 : 33 pm - - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | william e . |\n| | speckels |\n| | |\n| | 06 / 26 / 00 |\n| | 03 : 21 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| |\n| to : briley @ enron . com ,\ndfarmer @ enron . com , |\n| stacey . neuweiler @ enron . com , carlos . j . rodriguez @ enron . com , michael\nr . |\n| cherry / easttexas / pefs / pec @ pec , chad w . cass / gcs / cec / pec @ pec , julia\na . |\n| urbanek / gcs / cec / pec @ pec , donna c . spencer / gcs / cec / pec @ pec , john\na . |\n| bretz / gcs / cec / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec , marta\nk |\n|\nhenderson / houston / pefs / pec @ pec |\n|\ncc : |\n| subject : eastrans nomination effective\n07 / 01 / 2000 |\nplease nominate 32 , 800 mmbtu / d into eastrans effective 7 / 1 / 00 .\nredeliveries will be made as follows :\n25 , 000 mmbtu / d into pg & e\n7 , 800 mmbtu / d from fuels cotton valley\nsent on behalf of bruce mcmills .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.875+0000", "entityId": 2554, "properties": {"text": "Subject: eastrans nomination effective 07 / 01 / 2000\nplease nominate 32 , 800 mmbtu / d into eastrans effective 7 / 1 / 00 .\nredeliveries will be made as follows :\n25 , 000 mmbtu / d into pg & e\n7 , 800 mmbtu / d from fuels cotton valley\nsent on behalf of bruce mcmills .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.881+0000", "entityId": 2555, "properties": {"text": "Subject: hpl nom for june 27 , 2000\n( see attached file : hplo 627 . xls )\n- hplo 627 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.885+0000", "entityId": 2556, "properties": {"text": "Subject: enron / hpl actuals for june 23 - 25 , 2000\njune 23 , 2000\nteco tap 20 . 000 / enron ; 70 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron\njune 24 , 2000\nteco tap 50 . 000 / enron ; 50 . 000 / hpl iferc\njune 25 , 2000\nteco tap 50 . 000 / enron ; 59 . 917 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.891+0000", "entityId": 2557, "properties": {"text": "Subject: re : natural gas nomination for 07 / 00\ni went ahead ahead and accepted the nom , put it in at start of the month\npricing on the base ticket and ignored the 9500 limit , because it ' s a good\nprice ! !\ndaren j farmer\n06 / 26 / 2000 05 : 47 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : natural gas nomination for 07 / 00\nsitara # 139066 has a max of 9500 in the flex nom . is this correct ? should\nthe additional 1500 be on a swing ticket or included on the index ticket ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 06 / 26 / 2000\n05 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael mitcham @ enron\n06 / 26 / 2000 05 : 28 pm\nto : david bush / ecf / enron @ enron , mark diedrich / gpgfin / enron @ enron , paul\nfox / ecf / enron @ enron , david m johnson / ecf / enron @ enron , robert\nlee / ecf / enron @ enron , thomas meers / gpgfin / enron @ enron , maritta\nmullet / gpgfin / enron @ enron , james prentice / gpgfin / enron @ enron , kerry\nroper / gpgfin / enron @ enron , sally shuler / gpgfin / enron @ enron , daren j\nfarmer / hou / ect @ ect , lee l papayoti / hou / ect @ ect , steven m elliott / hou / ect @ ect ,\njohn l nowlan / hou / ect @ ect , fred boas / hou / ect @ ect , gregg lenart / hou / ect @ ect\ncc :\nsubject : natural gas nomination for 07 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for july 2000 :\n36 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for july 2000 :\n11 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.896+0000", "entityId": 2558, "properties": {"text": "Subject: june hourly survey\nattached please find the hours survey and instructions for the month of june ,\n2000 .\nif your hours have not changed from last month , please send us an email to\nindicate so .\nif the survey does not contain an activity that your team spends time on ,\nplease do not type any activities in the survey . contact jennifer reside at\n# 35971 to discuss how to proceed .\nif you have any questions relating to the model or this survey , or are unable\nto meet the survey due date , please call myself x 3 - 3859 or james scribner\n3 - 9641 .\nregards ,\nshari", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.901+0000", "entityId": 2559, "properties": {"text": "Subject: activity survey - june 2000\nattached please find the activity survey for the month of june , 2000 .\nthe attached survey drives your costs from your activities to the commercial\nteams . please select your rcs , and fill in the driver quantity for the\nrequested driver for the month of june . please fill out the attached activity\ndriver survey with june numbers for your rc and return to shari mao by end of\nday friday , july 7 ,\nif your group currently generates a standard report that captures the\nsurveyed data , please send the report to jennifer reside and shari mao . this\nwill eliminate your need to fill out this survey every month . if you would\nlike us to collect this information from someone within your team beginning\nnext month , please let jennifer know .\nplease contact jennifer reside x 3 - 5971 or myself with questions or if you are\nunable to complete the survey within the allotted time .\nthanks ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.906+0000", "entityId": 2560, "properties": {"text": "Subject: calpine daily gas nomination and monthly ( july ) nomination\n> >\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.910+0000", "entityId": 2561, "properties": {"text": "Subject: conoco , inc . - missing deal for may 00 production - important ,\nplease read\ndaren ,\ni left you a message regarding this matter 2 days ago . was wondering if you\nhad time to look into this .\nconoco is saying that we are missing one day of sale to them : 5 / 5 10 , 000\nmmbtu at 2 . 95 , deal # 256686 .\ni am not seeing this in sitara . could you please confirm ?\ncustomer has already called twice asking us to invoice them for this .\nthanks for your help on this .\njoanie\nx 36574", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.915+0000", "entityId": 2562, "properties": {"text": "Subject: unfinaled sales invoices\nhere are the spreadsheets for the unfinaled invoices prior to may 2000 .\nplease notify me of any discrepancies . we will send out unfinaled purchases\nnext week .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.920+0000", "entityId": 2563, "properties": {"text": "Subject: flexible physical us nat gas products on enrononline\nwanted to give you a heads up to these flexible physical deals that might\ninvolve your desks via eol in the near future . we already have one in the\neast . i stressed to the sitara / eol folks the importance of adding comments\nto the term sections of these baseload and term tickets so we know what is\nhappening . one side of these buy / sell or exchange deals will be ratable and\nthe corresponding partner ticket will have the optionality . comments will\ninclude the corresponding deal number , that it is in fact a buy / sell or\nexchange deal and the delivery time period ( 3 , 5 or 10 days ) that the\ncounterparty desires .\ni hope this helps . . . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 06 / 27 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thomas engel 06 / 26 / 2000 11 : 49 am\nto : linda s bryan / hou / ect @ ect , karen lambert / hou / ect @ ect , larry joe\nhunter / hou / ect @ ect , dale neuner / hou / ect @ ect , victor lamadrid / hou / ect @ ect\ncc : bob bowen / hou / ect @ ect , scott mills / hou / ect @ ect\nsubject : flexible physical us nat gas products on enrononline\ncan you all meet this afternoon or tomorrow to discuss this .\ncall me 3 - 1488 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thomas engel / hou / ect on 06 / 26 / 2000 11 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : scott mills 06 / 23 / 2000 09 : 51 am\nto : thomas engel / hou / ect @ ect , linda s bryan / hou / ect @ ect , karen\nlambert / hou / ect @ ect , bob bowen / hou / ect @ ect\ncc :\nsubject : flexible physical us nat gas products on enrononline\ngot any ideas on how this transaction should look . this looks like a monthly\nvolume that would be further refined to daily on the expected volumes once\nthe counterparty has made their decision ( i would imagine logistics will be\nthe one communicating with the counterparty ) . we probably need eol to\nindicate whether it is a 3 , 5 , 10 day delivery cycle and then indicate this\nas comments .\nlinda / karen - what are your thoughts on how separate gtc would work on this .\nif we could all do a little homework . i will get something scheduled for\nnext week to discuss further .\nsrm ( x 33548 )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott mills / hou / ect on 06 / 23 / 2000 09 : 37\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndale neuner 06 / 23 / 2000 08 : 40 am\nto : david forster / corp / enron @ enron , sheri thomas / hou / ect @ ect , scott\nmills / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , tom moran / hou / ect @ ect , debbie\nr brackett / hou / ect @ ect , mark taylor / hou / ect @ ect , stacy e dickson / hou / ect @ ect ,\njeffrey t hodge / hou / ect @ ect , jeff blumenthal / hou / ect @ ect , stephen h\ndouglas / hou / ect @ ect , rudi zipter / hou / ect @ ect , imelda frayre / hou / ect @ ect ,\nlarrissa sharma / hou / ect @ ect , torrey moorer / hou / ect @ ect , frank l\ndavis / hou / ect @ ect , melba lozano / hou / ect @ ect , robert b cass / hou / ect @ ect ,\njefferson d sorenson / hou / ect @ ect , bob bowen / hou / ect @ ect , larry joe\nhunter / hou / ect @ ect , jennifer blay / hou / ect @ ect\ncc : scott hendrickson / hou / ect @ ect\nsubject : flexible physical us nat gas products on enrononline\nwe are positioning ourselves to release a new product type that we will refer\nto as a flexible physical gas product . legal is in the process of drafting a\ngtc and product type description that will be used with this product type . i\nwill start the building process once legal provides the gtc and product type\ndescription ; but in the interim , here ' s a broadstroke description of how the\ntransaction works :\nparty a and party b exchange gas during the month of june 2000 .\nparty a buys 10 , 000 mmbtu per day ( or 300 , 000 total mmbtu ) at tco pool index\nparty b has the right to notify party a of when party b wants to take\ndelivery during the month of june , and may take delivery in one of three\nforms : 3 - day delivery , 5 - day delivery , or 10 - day delivery . the gas nominated\nfor each such day would be a percentage of the total 300 , 000 mmbtu ( i . e . ; if\nparty b chooses 5 days for nomination , party a would deliver 20 % of the\n300 , 000 mmbtu on each of those 5 days for a total nom of 100 % ) . party b pay\ntco pool index plus a premium .\ni understand that this type of transaction is currently done\nover - the - counter . scott mills has previously issued an explanatory e - mail of\nsitara concerns and we should begin to address those issues .\nbjorn - if you could ask someone to prepare a sigma factor in advance , then\nmy turn around time to for the product type should be reduced . also , due to\nthe varying ' optionality ' , do you think these three different products will\nrequire three different product types ?\nplease feel free to call if you have any questions .\ndale\n3 - 9746", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.925+0000", "entityId": 2564, "properties": {"text": "Subject: hpl nom for june 28 , 2000\n( see attached file : hplo 628 . xls )\n- hplo 628 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.929+0000", "entityId": 2565, "properties": {"text": "Subject: revision - enron / hpl actuals for june 25 , 2000\njune 25 , 2000\nteco tap 50 . 000 / enron ; 59 . 917 / hpl iferc\nshould have been :\nteco tap 50 . 000 / enron ; 60 . 417 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.934+0000", "entityId": 2566, "properties": {"text": "Subject: ami , , ,\nper our conversation , i would perfer the 2 , 000 difference be placed on the oba\nbetween lsp and teco ,\nbecause we requested to cut the flow .\nthanks ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tim powell / lsp / enserch / us on 06 / 27 / 2000\n10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nami . chokshi @ enron . com on 06 / 27 / 2000 08 : 42 : 09 am\nto : tim powell / lsp / enserch / us @ tu\ncc : charlie stone / texas utilities @ tu , daren . j . farmer @ enron . com\nsubject :\nhey tim ,\nfor may 12 , our supply shows that 8 . 000 did flow even though you cut flow\nto 6 . 0 . let me know how you want to handle the situation . sorry for the\ninconvenience .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.939+0000", "entityId": 2567, "properties": {"text": "Subject: enron actuals for june 26 , 2000\nteco tap 20 . 000 / enron ; 5 . 833 / hpl iferc ; 94 . 167 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.943+0000", "entityId": 2568, "properties": {"text": "Subject: hey tim ,\nfor may 12 , our supply shows that 8 . 000 did flow even though you cut flow to\n6 . 0 . let me know how you want to handle the situation . sorry for the\ninconvenience .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.948+0000", "entityId": 2569, "properties": {"text": "Subject: wed unify mtg 2 : 00 - 2 allen center , 12 th floor conf room\nattached is the presentation that jeff reviewed last week in the meeting .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 06 / 27 / 2000\n08 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njeff johnson @ enron\n06 / 19 / 2000 05 : 34 pm\nto : beth perlman / hou / ect @ ect , bryce baxter / hou / ect @ ect , brent a\nprice / hou / ect @ ect , leslie reeves / hou / ect @ ect , laura e scott / cal / ect @ ect ,\nsheila glover / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , brenda f herod / hou / ect @ ect , kenneth m\nharmon / hou / ect @ ect , dave nommensen / hou / ect @ ect , regan m smith / hou / ect @ ect ,\nlaray . odum @ luminant . com , nadeem . abbasi @ luminant . com , scott\nwilliamson / hou / ect @ ect , paul f poellinger / hou / ect @ ect , john\nsimmons / na / enron @ enron , chris hanz / corp / enron @ enron , sally beck / hou / ect @ ect ,\nrebecca ford / hou / ect @ ect\ncc : angelina v lorio / hou / ect @ ect , john paskin / lon / ect @ ect\nsubject : wed unify mtg 2 : 00 - 2 allen center , 12 th floor conf room\nplease note that the wed meeting will be held as planned from 2 : 00 - 4 : 00 pm in\nthe 2 allen center in the 12 th floor forum conference room .\nthe room entrance is just off the elevator bank foyer .\nhere is the draft of the presentation that we will discuss on wednesday . we\nare interested in your input and feedback in the meeting on wednesday .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeff johnson / corp / enron on 06 / 19 / 2000\n05 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalarm enabled : an alarm will occur on 06 / 21 / 2000 01 : 55 pm\ncalendar entry\nbrief description :\ndate :\ntime :\nunify system - - problems and proposed immediate projects . two allen center ,\n12 th floor forum\n06 / 21 / 2000\n02 : 00 pm - 04 : 00 pm\ndetailed description :\nthe meeting will be held in two allen center on the 12 th floor in the large\nconference room ( called the forum ) . the room entrance is just off the\nelevator bank in the foyer .\nwe believe that we have an approach to immediately begin to address key\nperformance issues in the unify system .\nto be successful with the proposed projects , we need your input , sponsorship\nand participation . angie lorio will find a location and will publish as soon\nas possible .\nthe proposed agenda is as follows :\ni . unify - - current state , strengths , issues\nii . conceptual overview of proposed solutions\norganization building\nperformance monitoring team\nsybase 12 upgrade\nsql server testing\nmiddle tier rearchitecture project\nscoping for a re - write effort\niii . solutions proposals / plans for immediate review / kickoff\nproposed scope\nassumptions\nhigh timelines / cost estimates\nstaffing\niv . facilitated discussion on unify\nfuture growth / changes required for unify\nnew project prioritization\ninvitations have been sent to : beth perlman / hou / ect @ ect , bryce\nbaxter / hou / ect @ ect , brent a price / hou / ect @ ect , leslie reeves / hou / ect @ ect ,\nlaura e scott / cal / ect @ ect , sheila glover / hou / ect @ ect , jefferson d\nsorenson / hou / ect @ ect , robert superty / hou / ect @ ect , brenda f herod / hou / ect @ ect ,\nkenneth m harmon / hou / ect @ ect , dave nommensen / hou / ect @ ect , regan m\nsmith / hou / ect @ ect , laray . odum @ luminant . com , nadeem . abbasi @ luminant . com , scott\nwilliamson / hou / ect @ ect , paul f poellinger / hou / ect @ ect\noptional invitees : chris hanz / corp / enron @ enron , john simmons / na / enron @ enron ,\nangie lorio\nthis meeting repeats starting on ( if the date occurs on a weekend the\nmeeting ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.953+0000", "entityId": 2570, "properties": {"text": "Subject: july , 2000 nominations\ndaren ,\nfyi . orig . was 14 , 474 ; rev . 14 , 000 . i did not change anything .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 27 / 2000 03 : 05\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n06 / 26 / 2000 04 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : july , 2000 nominations\nbob ,\nsee the attached july nomination for the sanchez production .\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 06 / 26 / 2000\n04 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ned birdwell on 06 / 26 / 2000 04 : 18 : 41 pm\nto : vtaylor 2 @ enron . com\ncc :\nsubject : july , 2000 nominations\nfor the month of july , 2000 sanchez oil & gas is nominating the\nfollowing .\nhpl meter 9760 , harris county , texas 14 , 000 mmbtu / day\nhpl meter 9822 , harris county , texas 0 mmbtu / day\nthe well behind meter 9822 ( worthen ) will need work in the future before\nwe can produce .\nif any questions please call .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.958+0000", "entityId": 2571, "properties": {"text": "Subject: re : july spot tickets\nvance ,\nthe following deals have been created and entered in sitara .\nbob\nvance l taylor\n06 / 27 / 2000 11 : 24 am\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , heidi withers / hou / ect @ ect , hillary\nmack / corp / enron @ enron , susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : july spot tickets\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of july . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price sitara #\nwhiting petroleum corp 6523 200 mmbtu / d 91 % if / hsc 314390\nengage energy us , lp 5923 657 mmbtu / d 100 % if / hsc less $ 0 . 24 314399\nengage energy us , lp 5848 117 mmbtu / d 100 % if / hsc less $ 0 . 24 314408\nswift energy 2630 21 mmbtu / d 90 % if / hsc less $ 0 . 258 314414\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.964+0000", "entityId": 2572, "properties": {"text": "Subject: eex corporation - meter # 5999\nsitara deal ticket # 314349 has been created and entered for july , 2000 as\nfollows :\n14 , 213 / d ifhsc minus $ 0 . 11\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.969+0000", "entityId": 2573, "properties": {"text": "Subject: july 2000 - hpl estimates and nominations\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 27 / 2000 09 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n06 / 27 / 2000 09 : 24 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : july 2000 - hpl estimates and nominations\nbob ,\nplease see eog ' s july nomination . you ' ll notice that it ' s about a 5 , 000 / d\nincrease .\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 06 / 27 / 2000\n09 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 06 / 26 / 2000 04 : 36 : 50 pm\nto : jaustin @ ect . enron . com , alannou @ ect . enron . com , crodrig @ enron . com ,\ntacton @ enron . com , vance . l . taylor @ enron . com , mandy _ mackinnon @ enron . com ,\nsusan _ smith @ ect . com\ncc : lee _ hileman % eogresources @ eogresources . com ,\nshirley _ keeney @ eogresources . com , carol _ mcbeath @ eogresources . com ,\ntim _ vogler % eogresources @ eogresources . com\nsubject : july 2000 - hpl estimates and nominations\n( see attached file : hpl avails _ jul 2000 . xls )\n- hpl avails _ jul 2000 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.976+0000", "entityId": 2574, "properties": {"text": "Subject: july noms\ndaren ,\nplease see the volume and action needed columns below : 50 , 158 mm has not\nbeen entered in sitara or path manager because deal tickets are needed .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 27 / 2000 09 : 01\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 06 / 26 / 2000 09 : 02 am\nto : o ' neal d winfree / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc :\nsubject : july noms\no ' neal / vance ,\nthe following deals appear to have expired 6 / 30 / 00 :\ncounterparty sitara deal no . volume action needed\ncamoil 138822 161 pathed 6 / 27\ncody texas 305549 2 , 800 deal ticket\neex corp . 278748 14 , 213 \" \"\neex corp . 278770 1 , 710 pathed 6 / 27\nengage energy 278784 70 deal ticket\n278806 117 \" \"\n278821 657 \" \"\n278834 1 , 096 \" \"\ngoldston 225006 30 , 055 \" \"\nhydrocarbon lease 281540 1 , 000 \" \"\npetromac 138536 45 pathed 6 / 26\nsetex 132845 76 deal ticket\n138601 53 \" \"\nswift energy 279778 21 \" \"\ntexlan 138848 166 pathed 6 / 27\ni will need either new deal ticket ( s ) or roll the current ones in sitara .\nplease advise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.985+0000", "entityId": 2575, "properties": {"text": "Subject: revised july lst for woodlands\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 27 / 2000\n08 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 06 / 27 / 2000 08 : 48 : 40 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : revised july lst for woodlands\n( see attached file : hpl - july . xls )\n- hpl - july . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.991+0000", "entityId": 2576, "properties": {"text": "Subject: oasis contract imbalance update\n. . . . this just in . . . .\nhere are our updated imbalances per contract & total :\nhistorical current mth cumul .\n201 k : ( 12 . 807 ) ( 8 . 181 ) ( 20 . 988 )\n202 k : ( 13 . 951 ) 7 . 879 ( 6 . 072 )\n203 k : ( 6 . 152 ) ( 267 ) ( 6 . 419 )\n204 k : 27 . 392 ( 6 . 306 ) 21 . 088\ntotal : ( 5 . 516 ) ( 6 . 875 ) ( 12 . 391 )\ndue oasis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:13.996+0000", "entityId": 2577, "properties": {"text": "Subject: re : ferc training\nplease see the attached .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 06 / 28 / 2000\n05 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkarry kendall\n06 / 28 / 2000 12 : 23 pm\nto : jim pond / corp / enron @ enron , troy klussmann / hou / ect @ ect , lisa\ncsikos / hou / ect @ ect , rita wynne / hou / ect @ ect , yvette miroballi / hou / ect @ ect\ncc : jim coffey / hou / ect @ ect , brenda f herod / hou / ect @ ect , georgeanne\nhodges / hou / ect @ ect\nsubject : re : ferc training\nduane and cindy need a list of the individuals needed this training . please\nrespond directly to them if members of your shops need to attend . if there\nare other areas i have not considered please let them know .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karry kendall / hou / ect on 06 / 28 / 2000 12 : 11\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : duane fritz @ enron 06 / 28 / 2000 09 : 05 am\nto : karry kendall / hou / ect @ ect\ncc :\nsubject : re : ferc training\nthe training will focus on the drill down into the ferc numbers in sap .\nthe view role is going to be taught with the production system and real\nnumbers .\nwhomever uses and needs to get these numbers for external reporting will need\nthis training .\ni am going to schedule a 4 hour session for each class .\nif you have any questions , please let me know .\nduane\nkarry kendall @ ect\n06 / 27 / 2000 08 : 31 pm\nto : duane fritz / corp / enron @ enron\ncc : jim coffey / hou / ect @ ect\nsubject : ferc training\nwhat will be covered in the training ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karry kendall / hou / ect on 06 / 27 / 2000 08 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncynthia morrow @ enron\n06 / 27 / 2000 03 : 49 pm\nto : karry kendall / hou / ect @ ect , jim coffey / hou / ect @ ect , karen\ngruesen / hou / ect @ ect\ncc : duane fritz / corp / enron @ enron\nsubject : ferc training\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cynthia morrow / corp / enron on 06 / 27 / 2000\n04 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : duane fritz 06 / 27 / 2000 02 : 24 pm\nto : cynthia morrow / corp / enron @ enron\ncc :\nsubject : ferc training\ncindy , i need to get a list of the people who are going to need ferc\ntraining for the ena group .\ngpg has sent me a list of people to train but nothing has been planned or\nconfirmed .\ni would like to schedule the training for the 3 rd week of august after the\njuly close . i am planning to train the view role\nfrom the production data translated by the module for july . if we can get a\nhead count then i can tentatively book\nthe rooms and equipment to do the training for august .\nthanks\nduane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.001+0000", "entityId": 2578, "properties": {"text": "Subject: republic royalty 5 / 00\nthis deal was terminated by nelson ferries .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 28 / 2000\n10 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 06 / 28 / 2000 10 : 28 am\nto : ami chokshi / corp / enron @ enron , o ' neal d winfree / hou / ect @ ect\ncc :\nsubject : republic royalty 5 / 00\nrepublic royalty is one of my ces deals . they sent me an invoice for may\n2000 production , but i do not see a deal for may . does either of you know if\nthis deal was extended under a new deal number ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.005+0000", "entityId": 2579, "properties": {"text": "Subject: revised july 2000 availabilities\nrevised july ' 00 availabilities - revision # 1\ngarden banks , searobin , transco , texas desk\nthanks ,\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 06 / 28 / 2000 09 : 15\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n06 / 28 / 2000 08 : 44 am\nto :\ncc :\nsubject : revised july 2000 availabilities\nthe attached reflects final revised availabilities for the month of july\n2000 . i have highlighted those properties that have changed . let me know of\nany quetions you have .\nthanks ,\nsteve\n- enronavailso 700 revl . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.010+0000", "entityId": 2580, "properties": {"text": "Subject: july 2000 co - owner ' s volumes\njuly lst co - owner volumes - koch , texas\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 06 / 28 / 2000 08 : 26\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n06 / 27 / 2000 04 : 44 pm\nto :\ncc :\nsubject : july 2000 co - owner ' s volumes\nplease see the attached list of co - owner ' s availabilities for the month of\njuly 2000 .\nsteve\n- 0700 co - owners volumes to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.015+0000", "entityId": 2581, "properties": {"text": "Subject: $ 5 for cd ' s dvd ' s expires soon at half . com\n* * free $ 5 coupon at half . com * *\no half . com is a new site for cds , books , movies , & video games\no everything is 50 - 90 % off and you get $ 5 off your first $ 10 order\no plus , free shipping with your first order of 3 or more items\no be sure to pass this coupon on to all your friends ! ! !\nclick here for 5 bucks !\nyour coupon code is : lifestyle 5\n\" use it or lose it \" expires soon ! !\nclick here for 5 bucks !\nyour coupon code is : lifestyle 5\nthe hottest titles at 50 % off while they last - including :\ncds - santana , n sync , dixie chicks , jay - z , and christina\naguilera project , sixth sense and matrix\ndvds - world is not enough , blair witch and more . . .\n* * free $ 5 coupon at half . com * *\nclick here for 5 bucks !\nyour coupon code is : lifestyle 5\non the shopping cart page , enter your $ 5 . 00 coupon\ncode on the right side of the page . after submitting\nyour code , your coupon will be displayed in your\nshopping cart .\nyou have received this invitation to participate in our offer because\nyou or someone using your e - mail address agreed to receive special\npromotional offers from retail trade services and its web site\npartners . if you wish to be excluded from future offers , please reply\nto this message and type \" unsubscribe \" in the subject line .\nall questions can be sent to :\nif you wish to know more about our privacy policies , please go to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.020+0000", "entityId": 2582, "properties": {"text": "Subject: fw : grandma wassup\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bryan hull / hou / ect on 06 / 28 / 2000 05 : 36 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : cecilia olvera\n06 / 28 / 2000 05 : 34 pm\nto : bryan hull / hou / ect @ ect\ncc :\nsubject : fw : grandma wassup\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cecilia olvera / hou / ect on 06 / 28 / 2000\n05 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex saldana\n06 / 28 / 2000 02 : 33 pm\nto : \" sonya rodriguez \" @ enron , nere ,\n\" marissa merino \" , \" marivel mercado \"\n@ enron , \" martha real \" ,\n\" maria segura \" , juan lopez @ enron ,\nadriana saldana , \" alicia \" , \" leal ,\ndinorah \" , \" jerez , ernest \"\n, vanilapuf @ aol . com , smedina @ chartertitle . com ,\ncsal 314042 @ aol . com , stacie . saldivar @ chron . com , \" sandra martinez \"\n, cecilia . olvera @ enron . com , sm 45818 @ aol . com , andrea\nr guillen / hou / ect , dkovasovic @ aol . com , mbalderas @ chartertitle . com ,\nheather . choate @ enron . com\ncc :\nsubject : fw : grandma wassup\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex saldana / hou / ect on 06 / 28 / 2000 02 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> >\n- grandma - wassup . mpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.024+0000", "entityId": 2583, "properties": {"text": "Subject: sitara availability\nas a precautionary measure because of yesterday ' s power outage , the hardware\nthat sitara runs on has been rebooted . sitara should be available around\n7 : 30 am thursday ( 06 / 29 ) . once the reboot is complete , all sitara\napplications should be available .\nif you are getting this message and no longer use the sitara applications ,\nplease contact the sitara hotline ( x 37049 ) to have your name removed .\nscott mills", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.029+0000", "entityId": 2584, "properties": {"text": "Subject: hpl nom for june 29 , 2000\n( see attached file : hplo 629 . xls )\n- hplo 629 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.033+0000", "entityId": 2585, "properties": {"text": "Subject: enron actuals for june 27 , 2000\nteco tap 20 . 000 / enron ; 50 . 000 / gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.038+0000", "entityId": 2586, "properties": {"text": "Subject: re : hydrocarbon lease mgmt .\ndaren ,\nit ' s in .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 28 / 2000 10 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 06 / 28 / 2000 09 : 32 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : hydrocarbon lease mgmt .\ndaren ,\nthe volume is 1 , 000 / d . do you want me to put it in ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 28 / 2000 09 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : o ' neal d winfree on 06 / 28 / 2000 07 : 47 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : hydrocarbon lease mgmt .\nthe july forward deal ticket is # 310830 for meter 9836 . . .\nenron north america corp .\nfrom : robert cotten 06 / 27 / 2000 05 : 34 pm\nto : o ' neal d winfree / hou / ect @ ect\ncc :\nsubject : hydrocarbon lease mgmt .\no ' neal ,\nwill there be a new deal ticket or will # 281540 be rolled for july ? please\nadvise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.042+0000", "entityId": 2587, "properties": {"text": "Subject: re : hydrocarbon lease mgmt .\ndaren ,\nthe volume is 1 , 000 / d . do you want me to put it in ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 28 / 2000 09 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : o ' neal d winfree on 06 / 28 / 2000 07 : 47 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : hydrocarbon lease mgmt .\nthe july forward deal ticket is # 310830 for meter 9836 . . .\nenron north america corp .\nfrom : robert cotten 06 / 27 / 2000 05 : 34 pm\nto : o ' neal d winfree / hou / ect @ ect\ncc :\nsubject : hydrocarbon lease mgmt .\no ' neal ,\nwill there be a new deal ticket or will # 281540 be rolled for july ? please\nadvise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.047+0000", "entityId": 2588, "properties": {"text": "Subject: re : industrials\nfirst of the month industrials are coming along fine . i will finalize my\npathing tomorrow , thursday , and set up buybacks and swings by the\nend of day friday .\nthe industrial \" buyback & deficiency deals \" worksheet has captured the\nnecessary data to help gas control & the on - call scheduler as well as\nmyself and client services .\ni will have a preliminary worksheet done by the end of day friday .\ni am on vacation during the week of july 5 th thru july 10 th .\nenron north america corp .\nfrom : pat clynes @ enron 06 / 28 / 2000 12 : 45 pm\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : re : industrials\nrobert ,\nhow do we look on the industrial deadlines ? please let me know . thanks ,\npat\ndaren j farmer @ ect\n06 / 28 / 2000 11 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : industrials\nwhen will the buybacks and swings be set up for july ? i am a little\nconcerned with the long weekend coming up . i believe that we agreed that\nthese would be set up by the 3 rd work day , which would be friday the 7 th .\n( six days of flow . ) i definitely don ' t think that we should any later . it\nwould be great if this could be handled sooner , miimizing our economic impact .\nadditionally , we need to get the industrial spreadsheet up and running\nagain . this report is very beneficial to gas control , industrial traders and\nschedulers on call .\nlet me know what you think .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.051+0000", "entityId": 2589, "properties": {"text": "Subject: re : industrials\nrobert ,\nhow do we look on the industrial deadlines ? please let me know . thanks ,\npat\ndaren j farmer @ ect\n06 / 28 / 2000 11 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : industrials\nwhen will the buybacks and swings be set up for july ? i am a little\nconcerned with the long weekend coming up . i believe that we agreed that\nthese would be set up by the 3 rd work day , which would be friday the 7 th .\n( six days of flow . ) i definitely don ' t think that we should any later . it\nwould be great if this could be handled sooner , miimizing our economic impact .\nadditionally , we need to get the industrial spreadsheet up and running\nagain . this report is very beneficial to gas control , industrial traders and\nschedulers on call .\nlet me know what you think .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.056+0000", "entityId": 2590, "properties": {"text": "Subject: july nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 06 / 28 / 2000\n08 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 06 / 28 / 2000 08 : 10 : 50 am\nto : \" ' lamphier , gary ' \"\ncc : \" buller , thomas \" , \" carter , john \"\n, \" ricks , ruth \" ,\nkyle . r . lilly @ enron . com , robert . e . lloyd @ enron . com\nsubject : july nominations at shell deer park\n> gary ,\n>\n> july 2000 nominations for gas delivery to shell deer park are as follows :\n>\n> firm baseload - 105 , 000 mmbtu / d\n> spot swing supply - 0 ( zero )\n>\n> delivery of the above contract quantities is expected to be as follows :\n>\n> hpl - hp hpl - e hpl - s\n> firm 40 , 000 mmbtu / d 35 , 000 mmbtu / d 30 , 000 mmbtu / d\n>\n> please let me know if you have any questions .\n>\n> j . luther shankster\n>\n> energy & utilities planning\n> phone : 713 / 241 - 4851\n> fax : 713 / 241 - 4599\ne - mail : jlshankster @ equiva . com\nhome page : http : / / rsweb", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.061+0000", "entityId": 2591, "properties": {"text": "Subject: re : industrials\nrobert ,\nplease make sure that gary gets a copy of the industrial spreadsheet . nobody\nhas seen it in a few\nmonths . thanks , pat\nfrom : gary a hanks @ ect 06 / 29 / 2000 08 : 59 am\nto : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc :\nsubject : re : industrials\nif it is the one i am thinking of it does . i haven ' t seen one for a few\nmonths .\npat , will you make sure robert sends one to me via email .\nthanks\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 06 / 29 / 2000 08 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n06 / 28 / 2000 07 : 59 pm\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : re : industrials\ngary ,\ndoes the workhseet mentioned below assist you with the monthly operations\nrelated to the industrial customers ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 06 / 28 / 2000\n07 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : pat clynes / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : industrials\nfirst of the month industrials are coming along fine . i will finalize my\npathing tomorrow , thursday , and set up buybacks and swings by the\nend of day friday .\nthe industrial \" buyback & deficiency deals \" worksheet has captured the\nnecessary data to help gas control & the on - call scheduler as well as\nmyself and client services .\ni will have a preliminary worksheet done by the end of day friday .\ni am on vacation during the week of july 5 th thru july 10 th .\nenron north america corp .\nfrom : pat clynes @ enron 06 / 28 / 2000 12 : 45 pm\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : re : industrials\nrobert ,\nhow do we look on the industrial deadlines ? please let me know . thanks ,\npat\ndaren j farmer @ ect\n06 / 28 / 2000 11 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : industrials\nwhen will the buybacks and swings be set up for july ? i am a little\nconcerned with the long weekend coming up . i believe that we agreed that\nthese would be set up by the 3 rd work day , which would be friday the 7 th .\n( six days of flow . ) i definitely don ' t think that we should any later . it\nwould be great if this could be handled sooner , miimizing our economic impact .\nadditionally , we need to get the industrial spreadsheet up and running\nagain . this report is very beneficial to gas control , industrial traders and\nschedulers on call .\nlet me know what you think .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.066+0000", "entityId": 2592, "properties": {"text": "Subject: hr generalist for your group\nnorma villarreal is the hr generalist for all of brent price ' s group and\nhector mcloughlin is the hr generalist for all the other groups / departments\nunder sally beck .\ntoni graham is the recruiter for all of sally beck ' s group .\nyvonne laing is the compensation specialist for all of sally beck ' s group .\njanet de la paz is the admin . support person for the hr group .\ni hope this helps you directs your questions or needs for services in the\nfuture .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.070+0000", "entityId": 2593, "properties": {"text": "Subject: nom change for increased midcon gas . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 29 / 2000\n02 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 06 / 29 / 2000 12 : 13 : 38 pm\nto : ami _ chokshi @ enron . com\ncc :\nsubject : nom change for increased midcon gas . . .\n( see attached file : hpl - june . xls )\n- hpl - june . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.075+0000", "entityId": 2594, "properties": {"text": "Subject: re : republic royalty 5 / 00\ndone .\ndaren j farmer @ ect\n06 / 29 / 2000 01 : 10 pm\nto : hillary mack / corp / enron @ enron\ncc :\nsubject : re : republic royalty 5 / 00\ncan you set up a gtc with duke energy field services , inc . for may - july 2000 ?\nd\nhillary mack @ enron\n06 / 29 / 2000 12 : 23 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : republic royalty 5 / 00\ndaren . . . i talked to cynthia in contracts and she said that ces deals cannot\nbe extended and that a new contract has to be set up . how do you want to\nhandle it ?\ndaren j farmer @ ect\n06 / 28 / 2000 04 : 17 pm\nto : ami chokshi / corp / enron @ enron , megan parker / corp / enron @ enron , o ' neal d\nwinfree / hou / ect @ ect , nelson ferries / corp / enron @ enron , hillary\nmack / corp / enron @ enron\ncc :\nsubject : re : republic royalty 5 / 00\ni have rolled # 143559 through july 2000 to cover the purchase from\nrepublic . we sell this gas to duke energy field services ( # 143558 for jan -\napr , ces - duke energy field services , inc ) . the counterparty on this deal\nhas been suspeneded , so i created # 316727 under the counterparty of duke\nenergy field services marketing , llc .\nhillary - please extend the ces - duke counterparty or attach the correct duke\ncounterparty to this deal .\nif you have any questions , let me know .\nd\nfrom : ami chokshi @ enron 06 / 28 / 2000 10 : 45 am\nto : megan parker / corp / enron @ enron , o ' neal d winfree / hou / ect @ ect\ncc : nelson ferries / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : republic royalty 5 / 00\nthis deal was terminated by nelson ferries .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 28 / 2000\n10 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 06 / 28 / 2000 10 : 28 am\nto : ami chokshi / corp / enron @ enron , o ' neal d winfree / hou / ect @ ect\ncc :\nsubject : republic royalty 5 / 00\nrepublic royalty is one of my ces deals . they sent me an invoice for may\n2000 production , but i do not see a deal for may . does either of you know if\nthis deal was extended under a new deal number ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.080+0000", "entityId": 2595, "properties": {"text": "Subject: re : republic royalty 5 / 00\ndaren . . . i talked to cynthia in contracts and she said that ces deals cannot\nbe extended and that a new contract has to be set up . how do you want to\nhandle it ?\ndaren j farmer @ ect\n06 / 28 / 2000 04 : 17 pm\nto : ami chokshi / corp / enron @ enron , megan parker / corp / enron @ enron , o ' neal d\nwinfree / hou / ect @ ect , nelson ferries / corp / enron @ enron , hillary\nmack / corp / enron @ enron\ncc :\nsubject : re : republic royalty 5 / 00\ni have rolled # 143559 through july 2000 to cover the purchase from\nrepublic . we sell this gas to duke energy field services ( # 143558 for jan -\napr , ces - duke energy field services , inc ) . the counterparty on this deal\nhas been suspeneded , so i created # 316727 under the counterparty of duke\nenergy field services marketing , llc .\nhillary - please extend the ces - duke counterparty or attach the correct duke\ncounterparty to this deal .\nif you have any questions , let me know .\nd\nfrom : ami chokshi @ enron 06 / 28 / 2000 10 : 45 am\nto : megan parker / corp / enron @ enron , o ' neal d winfree / hou / ect @ ect\ncc : nelson ferries / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : republic royalty 5 / 00\nthis deal was terminated by nelson ferries .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 28 / 2000\n10 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 06 / 28 / 2000 10 : 28 am\nto : ami chokshi / corp / enron @ enron , o ' neal d winfree / hou / ect @ ect\ncc :\nsubject : republic royalty 5 / 00\nrepublic royalty is one of my ces deals . they sent me an invoice for may\n2000 production , but i do not see a deal for may . does either of you know if\nthis deal was extended under a new deal number ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.085+0000", "entityId": 2596, "properties": {"text": "Subject: vacation\ni will be out on vacation the week of july 3 , back at the office on july\n10 th . my main contact will be stella morris at ext . 3319 . my desk will be\nsplit as follows :\nstella - nng - blackmarlin ( onshore ) , black marlin ( offshore ) , amoco third\nparty , centana ( on & off system , storage ) , eastrans\naimee - carthage , tufco updates , bridge back\nmark mccoy - katy lonestar ( on & offsystem )\ntom acton - send nominations mops to pops\nplease pass this to other members of your groups , thanks .\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.091+0000", "entityId": 2597, "properties": {"text": "Subject: vacation\ni will be out of the office next week on vacation during july 5 th through\njuly 10 th .\nbob cotten will handle my entire desk . bob can be reach on extension\n3 - 6101 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.095+0000", "entityId": 2598, "properties": {"text": "Subject: sitara availability - status update\nwe are still experiencing problems in bringing up the hardware from last\nnight ' s emergency outage . as of 5 : 30 am you cannot access the application .\nevery attempt is being made to rectify this problem . once the application is\navailable , please stay out of position manager and use cpr positions until\nyou have been notified .\nthank you for your cooperation .\nscott mills", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.104+0000", "entityId": 2599, "properties": {"text": "Subject: sitara availability this evening ( 06 / 29 ) due to emergency repairs\nsitara and cpr will be unavailable after 9 : 00 pm this evening ( 06 / 29 ) so that\nadditional repairs can be made in the server room on 34 . this outage will\nimpact all systems\nit is anticipated that sitara will be available beginning at 6 : 30 am tomorrow\n( 06 / 30 ) morning .\nany questions or concerns , please contact the sitara hotline ( x 37049 )\nscott mills", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.111+0000", "entityId": 2600, "properties": {"text": "Subject: hpl noms for june 30 , 2000\n( see attached file : hplo 630 . xls )\n- hplo 630 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.115+0000", "entityId": 2601, "properties": {"text": "Subject: enron actuals for june 28 , 2000\nteco tap 120 . 000 / hpl gas daily\nls hpl katy 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.120+0000", "entityId": 2602, "properties": {"text": "Subject: revised 7 / 00 assignment , termination , expiration report - assets\ngroup\nwe received some more name changes after the previous report was sent out .\nhere is the latest & greatest version .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.124+0000", "entityId": 2603, "properties": {"text": "Subject: revised noms - four square gas\ndaren ,\nit ' s in .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 29 / 2000 06 : 23\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 06 / 29 / 2000 03 : 03 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : revised noms - four square gas\ndaren ,\nfour square gas revised their noms for july as follows :\nmeter # orig nom rev nom\n6599 1 , 322 0\n1568 7 0\n6844 3 , 822 0\ndo you want me to adjust ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.129+0000", "entityId": 2604, "properties": {"text": "Subject: revised nom - kcs resources\ndaren ,\nit ' s in .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 06 / 29 / 2000 06 : 22\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 06 / 29 / 2000 03 : 35 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : revised nom - kcs resources\ndaren ,\nkcs ' orig nom was 11 , 148 at meter # 9658 . you revised it to 9 , 381 . kcs\nwants to revise it to 8 , 000 . do you want me to adjust ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.134+0000", "entityId": 2605, "properties": {"text": "Subject: revised nom - kcs resources\ndaren ,\nkcs ' orig nom was 11 , 148 at meter # 9658 . you revised it to 9 , 381 . kcs\nwants to revise it to 8 , 000 . do you want me to adjust ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.139+0000", "entityId": 2606, "properties": {"text": "Subject: revised nom - texlan oil\ndaren ,\ntexlan revised their nom at meter # 6788 from 166 / d to 365 / d for july . do\nyou want me to adjust ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.144+0000", "entityId": 2607, "properties": {"text": "Subject: revised noms - four square gas\ndaren ,\nfour square gas revised their noms for july as follows :\nmeter # orig nom rev nom\n6599 1 , 322 0\n1568 7 0\n6844 3 , 822 0\ndo you want me to adjust ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.149+0000", "entityId": 2608, "properties": {"text": "Subject: maynard oil - revised nom\ndaren ,\nmaynard oil at meter # 6674 revised their nom from 4 , 920 to 5 , 595 for july .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.153+0000", "entityId": 2609, "properties": {"text": "Subject: enronoptions - your stock option program\nit is amazing and yet not surprising how much enron has accomplished in the\nfirst six months of this year . you continue to make it happen . we recognize\nthat you work hard every day to accomplish enron \u0001 , s business goals , and we are\npleased that many of you have shared in the company \u0001 , s financial success\nthrough enron stock options .\nas you may know , the current employee stock option program ( also known as the\nall employee stock option program or aesop ) began in 1994 and provided value\nto participants through 2000 . employees who have participated in this\nprogram from its inception have realized a 1 , 119 % increase in the value of\ntheir stock options ( assuming a stock price of $ 70 ) over the life of the\nprogram .\nenron stock options are a valuable part of your total compensation package\nand a contributing factor to your performance and to enron \u0001 , s continued\nsuccess . therefore , the enron executive committee and the compensation and\nmanagement development committee of the enron board of directors have decided\nto continue to offer stock options as a part of your compensation package .\non may 1 , 2000 , the committee approved an employee stock option program for\ncalendar years 2001 - 2005 ( enronoptions \u0001 ) your stock option program ) . it is\nexpected that enronoptions \u0001 ) your stock option program will be granted ,\neffective on or about december 29 , 2000 , for those employees who are eligible\non that date ( please see note below ) . the new program , which is subject to\nfinal approval by enron \u0001 , s board of directors , is as follows :\n? enronoptions \u0001 ) your stock option program will give stock options to\neligible full - time and part - time regular employees in domestic and\ninternational companies / locations .\n? the grant of non - qualified stock options will equal 25 % of annual base\nsalary ( 5 % of annual base salary for each year of a 5 - year period ) on\ndecember 29 , 2000 . ( salary calculation and value may vary in some\ninternational locations . )\n? the board will grant the stock options on december 29 , 2000 .\n? eligible employees hired in subsequent years will receive a prorated grant\nof stock options .\nwhy commit your talent and energy to enron ? enronoptions \u0001 ) your stock option\nprogram , among other good reasons \u0001 ( that \u0001 , s why .\nin the coming weeks , you will be receiving more details about enronoptions \u0001 )\nyour stock option program . to provide information and answer your questions ,\nwe will introduce a special link on the human resources web - site , host\nseveral espeak sessions and continue to communicate with you on a regular\nbasis . in the meantime , if you have immediate questions , please contact your\nhuman resources representative .\nnote : in addition to final approval by enron \u0001 , s board of directors , granting\nof options will be subject to new york stock exchange and state and federal\nregulatory requirements . it is expected that enronoptions \u0001 ) your stock\noption program will be available to most enron employees ; however , some enron\ncompanies \u0001 , employees may not be eligible due to legal , accounting , tax , labor\nor business issues . as you know , enron changes to meet the needs of the\nmarketplaces we serve . given that need to change , we will continue to refine\nthe eligibility for enronoptions \u0001 ) your stock option program and will\ncommunicate more details throughout the year with final eligibility being\ndetermined on december 29 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.158+0000", "entityId": 2610, "properties": {"text": "Subject: re : industrials\nif it is the one i am thinking of it does . i haven ' t seen one for a few\nmonths .\npat , will you make sure robert sends one to me via email .\nthanks\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 06 / 29 / 2000 08 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n06 / 28 / 2000 07 : 59 pm\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : re : industrials\ngary ,\ndoes the workhseet mentioned below assist you with the monthly operations\nrelated to the industrial customers ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 06 / 28 / 2000\n07 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : pat clynes / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : industrials\nfirst of the month industrials are coming along fine . i will finalize my\npathing tomorrow , thursday , and set up buybacks and swings by the\nend of day friday .\nthe industrial \" buyback & deficiency deals \" worksheet has captured the\nnecessary data to help gas control & the on - call scheduler as well as\nmyself and client services .\ni will have a preliminary worksheet done by the end of day friday .\ni am on vacation during the week of july 5 th thru july 10 th .\nenron north america corp .\nfrom : pat clynes @ enron 06 / 28 / 2000 12 : 45 pm\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : re : industrials\nrobert ,\nhow do we look on the industrial deadlines ? please let me know . thanks ,\npat\ndaren j farmer @ ect\n06 / 28 / 2000 11 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : industrials\nwhen will the buybacks and swings be set up for july ? i am a little\nconcerned with the long weekend coming up . i believe that we agreed that\nthese would be set up by the 3 rd work day , which would be friday the 7 th .\n( six days of flow . ) i definitely don ' t think that we should any later . it\nwould be great if this could be handled sooner , miimizing our economic impact .\nadditionally , we need to get the industrial spreadsheet up and running\nagain . this report is very beneficial to gas control , industrial traders and\nschedulers on call .\nlet me know what you think .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.164+0000", "entityId": 2611, "properties": {"text": "Subject: july transport usage tickets\ni have input and updated transport usage tickets for july . i did not update\none for the demand charge for pgev / maypearl delivery , so if there is one , you\nwill have to set it up in the system . if you have any questions , please let\nme know . also , pay close attention to the oasis and pg & e tickets for this\nmonth . i do not yet know what baseload rates you have agreed upon , so you\nwill need to adjust them in the appropriate tickets . if you would , please\nlet me know , too , what baseload business and rates you have agreed upon for\nboth these pipelines . thank you .\nheidi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.169+0000", "entityId": 2612, "properties": {"text": "Subject: sap timelines\nas you are aware , the sap financial systems will be implemented for the enron\nnorth america\ncompanies on july 1 , 2000 . the attached file contains timelines for a\ntransaction .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.174+0000", "entityId": 2613, "properties": {"text": "Subject: hpl nom for july 1 , 2000\n( see attached file : hplo 701 . xls )\n- hplo 701 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.179+0000", "entityId": 2614, "properties": {"text": "Subject: enron / hpl actuals for june 29 , 2000\nteco tap 120 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.184+0000", "entityId": 2615, "properties": {"text": "Subject: re : cody texas , l . p . , meter 5333\ndaren ,\ndeal # 320162 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 06 / 30 / 2000 12 : 22 pm\nto : robert cotten / hou / ect @ ect , hillary mack / corp / enron @ enron\ncc : vance l taylor / hou / ect @ ect\nsubject : cody texas , l . p . , meter 5333\nbob ,\nhplc will be purchasing wellhead gas from the producer listed below for the\nproduction month of july . this production will be purchased on a \" spot \"\nbasis and a deal ticket should be created and entered into sitara based on\nthe following information :\ncounterparty meter volume price\ncody texas , l . p . 5333 2975 mmbtu / d 100 % if / hsc less $ 0 . 09\nthis ticket should be marked evergreen , so that it rolls month to month .\nadditionally , this is a producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nhillary ,\ni noticed deal 305549 has just been put in for one day ( 6 / 1 / 00 ) . we have\nflow at this meter during the month of june , so could this ticket be changed\nto go through 6 / 30 / 00 ?\nthanks you ,\nmelissa\nx 39173", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.188+0000", "entityId": 2616, "properties": {"text": "Subject: revised nom - yates energy\ndaren ,\nyates energy has revised their nom for 7 / 00 at meter # 6598 from 2 , 939 to\n3 , 096 ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.194+0000", "entityId": 2617, "properties": {"text": "Subject: re : maynard oil - revised nom\ndaren ,\ndeal # 140991 has been updated .\nbob\ndaren j farmer\n06 / 30 / 2000 05 : 54 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : maynard oil - revised nom\nbob ,\nupdate our nom in sitara to agree with their ' s .\nd\nenron north america corp .\nfrom : robert cotten 06 / 29 / 2000 02 : 42 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : maynard oil - revised nom\ndaren ,\nmaynard oil at meter # 6674 revised their nom from 4 , 920 to 5 , 595 for july .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.201+0000", "entityId": 2618, "properties": {"text": "Subject: intra day midcon\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 06 / 30 / 2000\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 06 / 30 / 2000 09 : 52 : 41 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : intra day midcon\n( see attached file : hpl - june . xls )\n- hpl - june . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.208+0000", "entityId": 2619, "properties": {"text": "Subject: preliminary \" buyback & deficiency deals \" worksheet for july 2000\nactivity\nattached is a preliminary \" buyback & deficiency deals \" worksheet for july\n2000 activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.213+0000", "entityId": 2620, "properties": {"text": "Subject: enron / hpl actuals for june 30 thru july 2 , 200\njune 30 , 2000\nteco tap 8 . 750 / enron ; 51 . 250 / gas daily\nls hpl lsk ic 30 . 000 / hpl gas daily\njuly 1 , 2000\nteco tap 40 . 000 / enron ; 80 . 000 / hpl iferc\njuly 2 , 2000\nteco tap 40 . 000 / enron ; 80 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.218+0000", "entityId": 2621, "properties": {"text": "Subject: meoh upset\nthe meoh plant began having problems on june 30 . on july 3 , a flange fire on\npiping occurred . the piping could not be depressured and the plant was shut\ndown . no eta for plant startup is available at this time . additional\ninformation will be forwarded when available .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.223+0000", "entityId": 2622, "properties": {"text": "Subject: hpl noms for july 6 , 2000\n( see attached file : hplo 706 . xls )\n- hplo 706 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.228+0000", "entityId": 2623, "properties": {"text": "Subject: enron actuals for july 3 thru 4 , 2000\njuly 3 teco tap 10 . 000 / enron ; 65 . 000 / hpl iferc\nls hpl katy 30 . 000 / enron\njuly 4 teco tap 35 . 000 / hpl iferc\nls hpl katy 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.232+0000", "entityId": 2624, "properties": {"text": "Subject: tejas nomination change effective 7 / 7 / 00\nfor some reason , this e - mail just got to me . sorry if it makes you late on\nanything .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 06 / 2000 11 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" cynthia cantrell \"\n07 / 06 / 2000 09 : 30 am\nto :\ncc :\nsubject : tejas nomination change effective 7 / 7 / 00\nattached is a revision for the haynes 21 ctp effective 7 / 7 / 00 . please advise\nif you need additional information .\nthanks ,\ncynthia cantrell\n- enronhaynes 21070700 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.237+0000", "entityId": 2625, "properties": {"text": "Subject: nomination change on tejas effective 7 / 8 / 00\ndevon changes effective saturday 7 / 8 / 2000 .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 06 / 2000 11 : 14\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" cynthia cantrell \"\n07 / 06 / 2000 11 : 12 am\nto :\ncc :\nsubject : nomination change on tejas effective 7 / 8 / 00\nattached is a revised nomination at the trevino plant on tejas to be\neffective 7 / 8 / 00 . if you have questions , please call me at ( 405 ) 552 - 4611 .\ncynthia cantrell\n- enrontrevinoplto 70800 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.241+0000", "entityId": 2626, "properties": {"text": "Subject: nom chnage - 7 / 7 / 2000 - eastrans\nthis is to increase our noms for 7 / 7 from hpl into eastrans to 57 , 800 mmbtu / d .\nredeliveries will be :\n25 , 000 into pg & e\n7 , 800 into hpl from fuels cotton valley\n25 , 000 to hpl ' s cartwheel agreement at carthage .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.245+0000", "entityId": 2627, "properties": {"text": "Subject: hpl nom for july 7 , 2000\n( see attached file : hplo 707 . xls )\n- hplo 707 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.250+0000", "entityId": 2628, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for july 5 , 2000\nteco tap 10 . 000 / enron ; 85 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.254+0000", "entityId": 2629, "properties": {"text": "Subject: enron / hpl actuals for july 5 , 2000\nteco tap 10 . 000 / enron ; 75 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.259+0000", "entityId": 2630, "properties": {"text": "Subject: enron actuals for june 30 , 2000\njune 30 , 2000\nteco tap 8 . 750 / enron ; 61 . 250 / gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.263+0000", "entityId": 2631, "properties": {"text": "Subject: i will be in dallas meeting with tufco the same afternoon . i told them\nbefore they scheduled this meeting that i would not be able to attend . just\na reminder for you . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stacey neuweiler / hou / ect on 07 / 07 / 2000\n01 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 07 / 07 / 2000 01 : 54 pm\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , danny\nconner / na / enron @ enron , lauri a allen / hou / ect @ ect , edward d\ngottlob / hou / ect @ ect , elsa villarreal / hou / ect @ ect\ncc : laura harder / corp / enron @ enron\nsubject :\njames mckay has requested a meeting to review the texas desk / gas control\nmorning report . please mark you calendars to attend this meeting on\nwednesday , july 12 , 2000 from 3 : 00 pm - 4 : 00 pm . the meeting will be held in\neb 49 c 4 .\nif you have any questions , please feel free to call me at 36289 .\nthanks ,\nesther buckley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.268+0000", "entityId": 2632, "properties": {"text": "Subject: nom chnage - 7 / 8 / 2000 - eastrans\nplease increase deliveries to eastrans to 60 , 000 mmbtu / d for 7 / 8 / 2000 .\nthe redeliveries will be :\n7 , 800 from fuels cotton valley\n25 , 000 to pg & e\n25 , 000 to hpl ' s cartwheel at carthage\n2 , 200 to mobil beaumont\ndetm will have 4 , 000 mmbtu / d to sell at carthage .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.273+0000", "entityId": 2633, "properties": {"text": "Subject: hpl noms for july 8 , 2000\n( see attached file : hplo 708 . xls )\n- hplo 708 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.279+0000", "entityId": 2634, "properties": {"text": "Subject: enron / hpl actuals for july 6 , 2000\nteco tap 10 . 000 / enron ; 90 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.284+0000", "entityId": 2635, "properties": {"text": "Subject: re : coastal oil & gas corporation\nmelissa ,\ndeal ticket # 325550 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 07 / 07 / 2000 03 : 34 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , george weissman / hou / ect @ ect , hillary\nmack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nper george ' s note below , hplc will be purchasing wellhead gas from the\nproducer listed below for the production month of july . this production will\nbe purchased on a \" spot \" basis and a deal ticket should be created and\nentered into sitara based on the following information :\ncounterparty meter volume price\ncoastal oil & gas corporation 4179 , albrecht # 4 well 7 / 7 / 00 - 1 , 500 mmbtu / d\n7 / 8 / 00 - 3 , 000 mmbtu / d\n7 / 9 / 00 thru 7 / 31 / 00 - 4 , 000 mmbtu / d 93 % if / hsc\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 07 / 2000 03 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 07 / 2000 01 : 11 pm\nto : melissa graves / hou / ect @ ect , shawna flynn / hou / ect @ ect\ncc : sandi m braband / hou / ect @ ect , robert walker / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , brian m riley / hou / ect @ ect , lauri a\nallen / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nbased on the attached contract preparation request for a spot gtc for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nthe spot gtc requested herein will cover gas from the albrecht # 4 well only .\nthe albrecht # 4 will not be covered by 96008903 , nor will the wells currently\nsubject to 96008903 be subject to the spot gtc .\nshawna , please prepare the termination letter for 96008903 as requested .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 07 / 2000\n01 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndebbie boudar @ enron\n07 / 06 / 2000 03 : 25 pm\nto : george weissman / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nin regards to meter 098 - 4179 the following information is what i have been\nable to determine from the information available to me .\nto your questions :\n1 . cannot determine who owns this meter . i will contact molly carriere on\nmonday when she returns .\n2 . hpl has a fifty ( 50 ) ft . easement at this location which does contain\nlanguage for appurtenance rights within the 50 ' .\n3 . i pulled the meter file for this location which was prepared during\nproject rock and it does not contain a facility agreement so i am assuming\none was not located .\nhope this helps .\nfrom : george weissman @ ect 07 / 06 / 2000 11 : 09 am\nto : debbie boudar / na / enron @ enron\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\ndebbie ,\nmeter 098 - 4179 is located at sta . plus 40 + 85 on align . dwg . hc - 1130 - 18 - h in\ngoliad co . , tx . in connection with the facility agreement request below , we\nneed to know the following :\n1 . who owns the meter , hplc or the operator ?\n2 . do we own an easement and an access right of way to the meter station ?\n3 . is there , to your knowledge , a facility agreement in place covering this\nmeter ? we cannot locate such an agreement in our records .\nthanks . george x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 06 / 2000 09 : 37 am\nto : shawna flynn / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , brian m riley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , melissa graves / hou / ect @ ect , lal\nechterhoff / hou / ect @ ect , james r haden / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nshawna ,\nattached is a contract preparation request for a facilities agreement for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nwe have been unable to locate an existing facility agreement for the 3\npreviously drilled wells and suspect that no such agreement exists .\nthe facility agreement requested herein is intended to cover only alterations\nto be made to existing meter 098 - 4179 to install an h 2 s monitor and necessary\nvalving to allow hplc to accept gas from the newly drilled albrecht # 4 well .\nonce the h 2 s monitor has been installed and the albrecht # 4 well is ready to\nflow , we intend to paper the purchase of gas from the albrecht # 4 well only\nvia a spot confirmation pursuant to a spot gtc . the albrecht # 4 will not be\ncovered by 96008903 , nor will the wells currently subject to 96008903 be\nsubject to the spot gtc .\ncoastal will reimburse hplc $ 39 , 600 for the cost of the installation .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n09 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 04 / 2000 01 : 28 pm\nto : lal echterhoff / hou / ect @ ect , pat flavin / gco / enron @ enron\ncc : brian m riley / hou / ect @ ect , jill t zivley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , james r haden / hou / ect @ ect , donnie\nmccabe / gco / enron @ enron , mark walch / gco / enron @ enron , steve hpl\nschneider / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nlal ,\nwe intend to attempt to connect about 4 , 000 mmbtu / d of new production from\nthe newly drilled coastal oil in may , 2000 , the meter flowed about 960\nmmbtu / d of 3 . 36 % co 2 gas .\nthe content of the albrecht # 4 gas according to the field gas analysis\nprepared by coastal oil the albrecht # 4 h 2 s content\nis similar to that of the three wells currently producing 960 mmbtu / d behind\nmeter 098 - 4179 , the miller - albrecht unit # 1 - a and the hoff heller gas unit\n# 1 a & # 2 d . coastal further purports that for some time now it ( and / or its\npredecessor , mjg , corp . ) has treated these three wells for h 2 s in a manner\nsufficient to reduce the h 2 s content delivered into hplc to permissible\nlevels . coastal has further indicated that it intends to reduce the h 2 s\ncontent of the albrecht # 4 to permissible levels before delivering same to\nhplc . in your opinion , should coastal be forced to install an h 2 s monitor\nfor this new gas prior to flowing same to hplc ?\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 04 / 2000\n12 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristy sweeney\n06 / 29 / 2000 04 : 56 pm\nto : lisa hesse / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , george weissman / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , joanne wagstaff / na / enron @ enron , heidi withers / hou / ect @ ect\nsubject : transport request for coastal albrecht # 4 , goliad county , tx\nlisa ,\nattached is our physical well connect form , including a transportation quote\nsheet , for the coastal albrecht # 4 well in goliad county , tx . please\nprovide us with a transport quote . i have attached below a quote you gave us\nin april 2000 . the volume is now 5 , 000 / day .\ni am headed that way with a map that shows the well ' s location in relation to\nus , tejas , koch , and tetco . please note 2 % fuel .\nthank you ! ! !\nchristy\n39050\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 06 / 29 / 2000\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : lisa hesse 04 / 07 / 2000 10 : 48 am\nto : brian m riley / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect , mary m smith / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , melissa graves / hou / ect @ ect , george weissman / hou / ect @ ect ,\nsusan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , lisa hesse / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : mjg , inc . meter 4179 and cokinos meter 9676\nbrian ,\nhere are the transport rates for the below meters :\nmjg meter 4179 3 . 39 % co 2 1 year quote april 00\nrel : 1180 avg . 1200 - 1988 . 014\nloc . . 05\np / l density . 02\nquality . 049\nmarket adjustment . 05\n_ _ _ _\n. . 183\nless discount and market fee . 02\n_ _ _ _\n. 16\nplease call if you have any questions or comments . lisa 3 5901", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.289+0000", "entityId": 2636, "properties": {"text": "Subject: meoh plant status\nthe methanol plant has determined extensive repairs are needed , including\nreplacement of piping and retubing of 2 of the 3 preheat exchangers .\nit appears that the plant will be down until the last week of the month . at\na minimum , the plant will be down until the middle of next week . a better\nestimate of downtime will be available by tomorrow afternoon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.294+0000", "entityId": 2637, "properties": {"text": "Subject: leak on wilson creek lateral\non friday , july 7 2000 , the field detected a leak on the wilson creek lateral\nin wharton co . meter # 0984284 was shut in at approximately 6 : 30 pm until\nrepairs are completed sometime today july 10 , 2000 .\nif you have any questions please call . 36449\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 07 / 10 / 2000 10 : 55\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : michael c winders 07 / 10 / 2000 06 : 13 am\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : leak on wilson creek lateral\nthe producer that was shut in was zevex production # 4284 - 10 they flow about\n. 3 a day .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.298+0000", "entityId": 2638, "properties": {"text": "Subject: out of the office\nplease note that i will be out of the on tuesday , july 11 th through friday ,\njuly 14 th . i will return on monday the 17 th . in my absense , my desk will be\ncovered as follows :\ntom acton :\n980067 lonestar katy - - - - daily confirmations\n980072 aquila header - - daily confirmations\n980069 trunkline - - daily confirmations\n986780 oasis katy - - daily confirmations\noneok transport - - daily scheduling\nwestern transport - - daily scheduling\nmidcon transport - - daily scheduling\ncarlos rodriguez :\nlonestar pipe line - - offsystem scheduling / pathing\nmidcon pipe line - - offsystem scheduling / pathing\ndow pipe line - - offsystem scheduling / pathing\neddie janzen / mary poorman :\noasis pipe line - - offsystem nominations / scheduling / pathing\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.303+0000", "entityId": 2639, "properties": {"text": "Subject: nom change - 7 / 11 / 2000\nplease increase deliveries to eastrans from hpl to 70 , 000 mmbtu / d eff\n7 / 11 / 2000 .\nredeliveries will occur as follows :\n7 , 800 from fcv\n25 , 000 into pg & e\n25 , 000 into hpl ' s cartwheel agreement at carthage\n12 , 200 at mobil beaumont .\ndetm will have 9 . 000 additional to sell .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.308+0000", "entityId": 2640, "properties": {"text": "Subject: this is hillarious !\ntake a minute and call ( 800 ) 578 - 7453 and listen to the greeting of the brown\n& williamson tobacco company . at the point where you are asked to select an\nextension , hang up .\ndavid heineke\ndheineke @ tsteel . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.312+0000", "entityId": 2641, "properties": {"text": "Subject: resumes - accounting\nplease let me know if you are interested in interviewing .\nlocal - houston\nmelanie is currently around $ 50 - 55 k . at el paso , bachelor ' s in\naccounting . working towards master ' s . 5 years experience .\nfariba is currently at $ 47 k . at el paso , bachelor ' s in accounting , 10\nyears experience\nstephen is at eott energy . bachelor ' s in finance\nnot local - need relocation", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.321+0000", "entityId": 2642, "properties": {"text": "Subject: hpl nom for july 11 , 2000 revision # 1\n( see attached file : hplo 711 . xls )\n- hplo 711 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.327+0000", "entityId": 2643, "properties": {"text": "Subject: enron actuals for july 7 thru 9 , 2000\njuly 7 teco tap 120 . 000 / hpl iferc\nls hpl katy 30 . 000 / enron\njuly 8 teco tap 40 . 000 / enron ; 80 . 000 / hpl iferc\njuly 9 teco tap 40 . 000 / enron ; 80 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.332+0000", "entityId": 2644, "properties": {"text": "Subject: 98 - 6892 ( sitara deal 319063 )\nthe above deal is a dd deal effective 7 / 1 / 2000 - 7 / 5 / 2000 . can the deal be\nextended to the 6 th to cover flow of . 803 decatherms ?\nwe ' ve not yet received the oba from tetco yet .\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.336+0000", "entityId": 2645, "properties": {"text": "Subject: developmental plan\nplease reference the memo below .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 07 / 11 / 2000\n11 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : hector mcloughlin @ enron 07 / 07 / 2000 06 : 04 pm\nto : kristin albrecht / hou / ect @ ect , sheila glover / hou / ect @ ect , david\nhall / gco / enron @ enron , brenda f herod / hou / ect @ ect , shona\nwilson / na / enron @ enron , eugenio perez / hou / ect @ ect , james\nscribner / corp / enron @ enron , sheri thomas / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , joel henenberg / na / enron @ enron , leslie\nreeves / hou / ect @ ect\ncc : lisa b cousino / hou / ect @ ect\nsubject : developmental plan\nif you had any employees that were rated \" needs improvement \" or \" issues \"\nplease read the e - mail that norma and i wrote for her group . if you have\nany questions or need help with this process please call me at ext . 36703\nhgm\n- - - - - - - - - - - - - - - - - - - - - - forwarded by hector mcloughlin / corp / enron on\n07 / 07 / 2000 05 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : norma villarreal @ ect 07 / 07 / 2000 05 : 12 pm\nto : susan harrison / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect , steve\njackson / hou / ect @ ect , robert superty / hou / ect @ ect , scott mills / hou / ect @ ect\ncc : brent a price / hou / ect @ ect , hector mcloughlin / corp / enron @ enron , sheila\nwalton / hou / ect @ ect\nsubject : developmental plan\nper the request of the management team , attached is a form to assist managers\nin documenting performance improvement guidelines for poor performers . there\nare two pages : page one is the template with a brief description of the\ninformation needed on it . page two is a completed example to show how it\nmight look when finished .\nplease begin working with the appropriate manager in completing the document\nfor those individuals who have a ranking of needs improvement or issues for\n2000 mid year review . in order to complete section of the form titled\n' agreed developmental plans ' , managers must provide quantifiable evidence of\nprevious lack of satisfactory performance .\nas discussed in prior meetings , reviews requiring developmental plans should\nbe conducted by two levels of management . also , hr and legal must review\nprior to employee receiving developmental plan and counselling . please\ncomplete and submit by monday , july 17 , 2000 .\nplease call if you have any questions or to set time aside to discuss the\ndevelopmental plan .\nnorma villarreal\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.341+0000", "entityId": 2646, "properties": {"text": "Subject: update on prc process\nplease read the attached memo from sally . we will discuss this in our staff\nmeeting this afternoon .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 07 / 11 / 2000\n11 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : sally beck 07 / 07 / 2000 08 : 23 pm\nto : kristin albrecht / hou / ect @ ect , scott earnest / hou / ect @ ect , sheila\nglover / hou / ect @ ect , d todd hall / hou / ect @ ect , peggy hedstrom / cal / ect @ ect ,\nbrenda f herod / hou / ect @ ect , brent a price / hou / ect @ ect , leslie\nreeves / hou / ect @ ect , stephen p schwarz / hou / ect @ ect , james\nscribner / corp / enron @ enron , mary solmonson / hou / ect @ ect , sheri\nthomas / hou / ect @ ect , shona wilson / na / enron @ enron , eugenio perez / hou / ect @ ect ,\nsteve jackson / hou / ect @ ect , susan harrison / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , michael e moscoso / hou / ect @ ect , steve\nventuratos / hou / ect @ ect , scott mills / hou / ect @ ect , joel henenberg / na / enron @ enron\ncc : sheila walton / hou / ect @ ect , norma villarreal / hou / ect @ ect , hector\nmcloughlin / corp / enron @ enron\nsubject : update on prc process\ntoday was the final ena prc . relative ranking results up through the senior\ndirector level are final . you and your management team can begin the process\nof giving performance reviews to your employees . i spoke with sheila walton\ntoday to inquire about an expected time frame for completing and conducting\nthe employee reviews . she indicated that the target completion date should\nbe the end of july .\npromotions will be effective august lst . it is dave delainey ' s intent to\nannounce ena promotions sometime after he returns from vacation on july 24 .\nthis drives the end of july target completion date for reviews . i do not\nyet know if delainey wants all ena promotions to be announced in a single\nmemo , or if each group within ena will prepare such a memo . i will keep you\nupdated on this as i get direction from him .\nplease note the following change since our energy operations prc in june . in\norder to place focus on the qualitative feedback during this mid - year review\nprocess , we will not share performance clusters with employees when\nconducting their reviews . it is very important for all of us to be\nconsistent in this process , so please communicate this to all in your groups\nwho will be giving performance reviews . it is important to note , however ,\nthat the content of an employee ' s review should be consistent with our view\nof that employee ' s relative ranking . in other words , an employee in the\nsatisfactory category should not be given a review that simply states that\nthe employee is doing a great job . clearly , a large number of employees\nperformed at a higher level than those employees in the satisfactory\ncategory , so the feedback to that employee should include some specific areas\nof improvement needed in order for the employee to make a stronger impact in\nthe organization , help you achieve the groups goals , etc .\nalso please note the following :\nperformance reviews for anyone in the satisfactory , needs improvement or\nissues categories must be reviewed by hr prior to these reviews being given\nto the employees . this will ensure that our feedback is commensurate with\nthe relative performance of that employee . ( this has been the stated process\nfor the bottom two categories , and we are adding satisfactory to this process\nas well . )\nplease remember to include a more experienced member of your management team ,\nyourself , or an hr professional in reviews being conducted by inexperienced\nmembers of your management team , or those management team members where you\nhave a concern over their ability or willingness to deliver candid and\nperhaps tough performance feedback . i believe that we have spent some time\nin identifying these situations . i ask your help to ensure that we follow\nthrough on this commitment .\nthanks for all of your efforts in making this mid - year prc process a\nmeaningful one .\nit is dave delainey ' s intent to announce it if 0", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.345+0000", "entityId": 2647, "properties": {"text": "Subject: hpl nom for july 12 , 2000\n( see attached file : hplo 712 . xls )\n- hplo 712 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.350+0000", "entityId": 2648, "properties": {"text": "Subject: enron / hpl actuals for july 10 , 2000\nteco tap 10 . 000 / enron ; 110 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.354+0000", "entityId": 2649, "properties": {"text": "Subject: re : new production - sitara deals needed\nvance ,\ndeal tickets , as noted below , have been created and entered in sitara .\nbob\nvance l taylor\n07 / 11 / 2000 09 : 18 am\nto : robert cotten / hou / ect @ ect\ncc : hillary mack / corp / enron @ enron , lisa hesse / hou / ect @ ect , trisha\nhughes / hou / ect @ ect , heidi withers / hou / ect @ ect , susan smith / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : new production - sitara deals needed\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty deal # meter volumes price period\ncokinos natural gas co . 327963 9842 2 , 800 mmbtu / d 96 % gas daily 7 / 6\n- 7 / 31\nupstream energy services 327964 9844 150 mmbtu / d 100 % gas daily less\n$ 0 . 14 7 / 8 - 7 / 31\nfyi , susan will create and submit committed reserves firm tickets for the\nremaining term of the deal beginning with the month of august . additionally ,\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.359+0000", "entityId": 2650, "properties": {"text": "Subject: re : coastal oil & gas corporation\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 11 / 2000 11 : 48\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 07 / 11 / 2000 08 : 17 am\nto : robert cotten / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nyes , when i typed the original message i had to double check the price as\nwell . the request is for if / hsc and not gas daily .\nthank you ,\nmelissa\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 05 : 17 pm\nto : melissa graves / hou / ect @ ect\ncc :\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ni have been asked to confirm that the price is houston ship channel index\nrather than gas daily ? please advise . thanks .\nbob\nenron north america corp .\nfrom : melissa graves 07 / 10 / 2000 02 : 18 pm\nto : hillary mack / corp / enron @ enron\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nhillary ,\nsee below for your answer .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 10 / 2000\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njoanne wagstaff @ enron\n07 / 10 / 2000 02 : 14 pm\nto : melissa graves / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ni have confirmed through emails from bob walker that the name of the\ncounterparty for the albrecht # 4 well is coastal oil & gas corp .\nplease let me know if you have any questions .\nthanks ,\njoanne\nx 68228\nfrom : melissa graves @ ect 07 / 10 / 2000 10 : 14 am\nto : joanne wagstaff / na / enron @ enron\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\njoanne ,\ncan you confirm the counterparty name on this please .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 10 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 10 : 11 am\nto : melissa graves / hou / ect @ ect\ncc :\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nhillary mack called me about the following deal . he believes the\ncounterparty should be coastal oil & gas usa , l . p . rather than coastal oil &\ngas corp . please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 10 / 2000 10 : 08\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 09 : 01 am\nto : melissa graves / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , george weissman / hou / ect @ ect ,\nhillary mack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ndeal ticket # 325550 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 07 / 07 / 2000 03 : 34 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , george weissman / hou / ect @ ect , hillary\nmack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nper george ' s note below , hplc will be purchasing wellhead gas from the\nproducer listed below for the production month of july . this production will\nbe purchased on a \" spot \" basis and a deal ticket should be created and\nentered into sitara based on the following information :\ncounterparty meter volume price\ncoastal oil & gas corporation 4179 , albrecht # 4 well 7 / 7 / 00 - 1 , 500 mmbtu / d\n7 / 8 / 00 - 3 , 000 mmbtu / d\n7 / 9 / 00 thru 7 / 31 / 00 - 4 , 000 mmbtu / d 93 % if / hsc\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 07 / 2000 03 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 07 / 2000 01 : 11 pm\nto : melissa graves / hou / ect @ ect , shawna flynn / hou / ect @ ect\ncc : sandi m braband / hou / ect @ ect , robert walker / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , brian m riley / hou / ect @ ect , lauri a\nallen / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nbased on the attached contract preparation request for a spot gtc for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nthe spot gtc requested herein will cover gas from the albrecht # 4 well only .\nthe albrecht # 4 will not be covered by 96008903 , nor will the wells currently\nsubject to 96008903 be subject to the spot gtc .\nshawna , please prepare the termination letter for 96008903 as requested .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 07 / 2000\n01 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndebbie boudar @ enron\n07 / 06 / 2000 03 : 25 pm\nto : george weissman / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nin regards to meter 098 - 4179 the following information is what i have been\nable to determine from the information available to me .\nto your questions :\n1 . cannot determine who owns this meter . i will contact molly carriere on\nmonday when she returns .\n2 . hpl has a fifty ( 50 ) ft . easement at this location which does contain\nlanguage for appurtenance rights within the 50 ' .\n3 . i pulled the meter file for this location which was prepared during\nproject rock and it does not contain a facility agreement so i am assuming\none was not located .\nhope this helps .\nfrom : george weissman @ ect 07 / 06 / 2000 11 : 09 am\nto : debbie boudar / na / enron @ enron\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\ndebbie ,\nmeter 098 - 4179 is located at sta . plus 40 + 85 on align . dwg . hc - 1130 - 18 - h in\ngoliad co . , tx . in connection with the facility agreement request below , we\nneed to know the following :\n1 . who owns the meter , hplc or the operator ?\n2 . do we own an easement and an access right of way to the meter station ?\n3 . is there , to your knowledge , a facility agreement in place covering this\nmeter ? we cannot locate such an agreement in our records .\nthanks . george x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 06 / 2000 09 : 37 am\nto : shawna flynn / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , brian m riley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , melissa graves / hou / ect @ ect , lal\nechterhoff / hou / ect @ ect , james r haden / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nshawna ,\nattached is a contract preparation request for a facilities agreement for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nwe have been unable to locate an existing facility agreement for the 3\npreviously drilled wells and suspect that no such agreement exists .\nthe facility agreement requested herein is intended to cover only alterations\nto be made to existing meter 098 - 4179 to install an h 2 s monitor and necessary\nvalving to allow hplc to accept gas from the newly drilled albrecht # 4 well .\nonce the h 2 s monitor has been installed and the albrecht # 4 well is ready to\nflow , we intend to paper the purchase of gas from the albrecht # 4 well only\nvia a spot confirmation pursuant to a spot gtc . the albrecht # 4 will not be\ncovered by 96008903 , nor will the wells currently subject to 96008903 be\nsubject to the spot gtc .\ncoastal will reimburse hplc $ 39 , 600 for the cost of the installation .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n09 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 04 / 2000 01 : 28 pm\nto : lal echterhoff / hou / ect @ ect , pat flavin / gco / enron @ enron\ncc : brian m riley / hou / ect @ ect , jill t zivley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , james r haden / hou / ect @ ect , donnie\nmccabe / gco / enron @ enron , mark walch / gco / enron @ enron , steve hpl\nschneider / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nlal ,\nwe intend to attempt to connect about 4 , 000 mmbtu / d of new production from\nthe newly drilled coastal oil in may , 2000 , the meter flowed about 960\nmmbtu / d of 3 . 36 % co 2 gas .\nthe content of the albrecht # 4 gas according to the field gas analysis\nprepared by coastal oil the albrecht # 4 h 2 s content\nis similar to that of the three wells currently producing 960 mmbtu / d behind\nmeter 098 - 4179 , the miller - albrecht unit # 1 - a and the hoff heller gas unit\n# 1 a & # 2 d . coastal further purports that for some time now it ( and / or its\npredecessor , mjg , corp . ) has treated these three wells for h 2 s in a manner\nsufficient to reduce the h 2 s content delivered into hplc to permissible\nlevels . coastal has further indicated that it intends to reduce the h 2 s\ncontent of the albrecht # 4 to permissible levels before delivering same to\nhplc . in your opinion , should coastal be forced to install an h 2 s monitor\nfor this new gas prior to flowing same to hplc ?\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 04 / 2000\n12 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristy sweeney\n06 / 29 / 2000 04 : 56 pm\nto : lisa hesse / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , george weissman / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , joanne wagstaff / na / enron @ enron , heidi withers / hou / ect @ ect\nsubject : transport request for coastal albrecht # 4 , goliad county , tx\nlisa ,\nattached is our physical well connect form , including a transportation quote\nsheet , for the coastal albrecht # 4 well in goliad county , tx . please\nprovide us with a transport quote . i have attached below a quote you gave us\nin april 2000 . the volume is now 5 , 000 / day .\ni am headed that way with a map that shows the well ' s location in relation to\nus , tejas , koch , and tetco . please note 2 % fuel .\nthank you ! ! !\nchristy\n39050\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 06 / 29 / 2000\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : lisa hesse 04 / 07 / 2000 10 : 48 am\nto : brian m riley / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect , mary m smith / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , melissa graves / hou / ect @ ect , george weissman / hou / ect @ ect ,\nsusan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , lisa hesse / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : mjg , inc . meter 4179 and cokinos meter 9676\nbrian ,\nhere are the transport rates for the below meters :\nmjg meter 4179 3 . 39 % co 2 1 year quote april 00\nrel : 1180 avg . 1200 - 1988 . 014\nloc . . 05\np / l density . 02\nquality . 049\nmarket adjustment . 05\n_ _ _ _\n. . 183\nless discount and market fee . 02\n_ _ _ _\n. 16\nplease call if you have any questions or comments . lisa 3 5901", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.364+0000", "entityId": 2651, "properties": {"text": "Subject: re : brandywine meter # : 1428\nplease roll the beaumont methanol swing and buyback ticket over to be\neffective for july too . sorry about that . lee\nfrom : robert e lloyd 07 / 11 / 2000 02 : 40 pm\nto : lee l papayoti / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect , robert cotten / hou / ect @ ect , gary\na hanks / hou / ect @ ect\nsubject : brandywine meter # : 1428\nthe swing ticket for beaumont methanol \" meter # 1428 \" { # 249208 } expired june\n30 th .\nbob dorcheus indicated that hpl should take the swing during july .\nshould i expect another swing ticket to be negotiated for july ?\npresently , the swing activity is hitting the \" baseload \" ticket { # 314854 }\nwhich is 15 . 0 / day .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.368+0000", "entityId": 2652, "properties": {"text": "Subject: brandywine meter # : 1428\nthe swing ticket for beaumont methanol \" meter # 1428 \" { # 249208 } expired june\n30 th .\nbob dorcheus indicated that hpl should take the swing during july .\nshould i expect another swing ticket to be negotiated for july ?\npresently , the swing activity is hitting the \" baseload \" ticket { # 314854 }\nwhich is 15 . 0 / day .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.374+0000", "entityId": 2653, "properties": {"text": "Subject: re : plant outage affecting \" meter # 8291 \" enron methanol\ni think the methanol plant is still down ?\nthe buyback should apply for any volumes in july below their monthly nom of\n36 , 000 / d until the plant comes back up .\nfrom : robert e lloyd 07 / 11 / 2000 11 : 41 am\nto : lee l papayoti / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , robert\ncotten / hou / ect @ ect , stacey neuweiler / hou / ect @ ect\nsubject : plant outage affecting \" meter # 8291 \" enron methanol\nplease advise me if you want the 36 . 0 / day term deal bought back for days ;\njuly 4 th & july 5 th .\npresently , the buyback deal { # 139058 } is being allocated 35 , 261 mm for day\n7 / 4 th & 35 , 903 for day 7 / 5 th .\ndaily flow for 7 / 4 th = 739 mm - & - 7 / 5 th = 97 mm .\nthe term deal of 36 . 0 mm has been bought back for july 6 th thru july 16 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.379+0000", "entityId": 2654, "properties": {"text": "Subject: plant outage affecting \" meter # 8291 \" enron methanol\nplease advise me if you want the 36 . 0 / day term deal bought back for days ;\njuly 4 th & july 5 th .\npresently , the buyback deal { # 139058 } is being allocated 35 , 261 mm for day\n7 / 4 th & 35 , 903 for day 7 / 5 th .\ndaily flow for 7 / 4 th = 739 mm - & - 7 / 5 th = 97 mm .\nthe term deal of 36 . 0 mm has been bought back for july 6 th thru july 16 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.384+0000", "entityId": 2655, "properties": {"text": "Subject: leak on wilson creek lateral\nrepairs to the wilson creek lateral were completed on monday afternoon\n7 / 10 / 00 . upon completion of repairs hms found excessive corrosion on the\nmeter run and notified pumper that they would remain shut - in until the\nproducer replaced or repaired the meter run . once the meter run is replaced\nor repaired the lateral will be purged and packed and put back into service .\nif you have any questions please call me at 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 07 / 12 / 2000 10 : 00\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 07 / 10 / 2000 11 : 04 am\nto : cheryl dudley / hou / ect @ ect , melissa graves / hou / ect @ ect , george\nweissman / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , shawna flynn / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , earl tisdale / hou / ect @ ect\nsubject : leak on wilson creek lateral\non friday , july 7 2000 , the field detected a leak on the wilson creek lateral\nin wharton co . meter # 0984284 was shut in at approximately 6 : 30 pm until\nrepairs are completed sometime today july 10 , 2000 .\nif you have any questions please call . 36449\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 07 / 10 / 2000 10 : 55\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : michael c winders 07 / 10 / 2000 06 : 13 am\nto : gary a hanks / hou / ect @ ect\ncc :\nsubject : leak on wilson creek lateral\nthe producer that was shut in was zevex production # 4284 - 10 they flow about\n. 3 a day .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.389+0000", "entityId": 2656, "properties": {"text": "Subject: meter 1459 , 6 / 00\ndaren - i need a deal set up for meter 1459 for june ' 00 . it flowed 34 / day\n6 / 1 - 6 / 6 . the last deal number used was 77352 for ena . please let me know\nwhen this is set up .\nthanks ,\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.393+0000", "entityId": 2657, "properties": {"text": "Subject: accounting arrangement at meter 692 - june 2000\nstella :\nplease put the hplc 012 - 41500 - 02 - 013 transport contract in pops at meter\n980692 for june 2000 with the track id 150642 and change the swing rankings\nso that all of the gas that flows is allocated to the 213 contract with the\nabove referenced track id . if you would do this first thing july 13 th and\nlet me know when it is completed i would appreciate it\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.398+0000", "entityId": 2658, "properties": {"text": "Subject: interview schedule for liz bellamy - today\nattached please find the interview packet for the above - referenced person .\nthe interview will happen thursday july 13 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.403+0000", "entityId": 2659, "properties": {"text": "Subject: enron / hpl actuals for july 11 , 2000\nteco tap 10 . 000 / enron ; 75 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.407+0000", "entityId": 2660, "properties": {"text": "Subject: hpl nom for july 13 , 2000\n( see attached file : hplo 713 . xls )\n- hplo 713 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.413+0000", "entityId": 2661, "properties": {"text": "Subject: re : new production - sitara deals needed\nvance ,\ndeal # 327963 has been killed in sitara . it did not happen .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 12 / 2000 01 : 05\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 11 / 2000 08 : 51 pm\nto : vance l taylor / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , hillary\nmack / corp / enron @ enron , lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect ,\nheidi withers / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : re : new production - sitara deals needed\nvance ,\ndeal tickets , as noted below , have been created and entered in sitara .\nbob\nvance l taylor\n07 / 11 / 2000 09 : 18 am\nto : robert cotten / hou / ect @ ect\ncc : hillary mack / corp / enron @ enron , lisa hesse / hou / ect @ ect , trisha\nhughes / hou / ect @ ect , heidi withers / hou / ect @ ect , susan smith / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : new production - sitara deals needed\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty deal # meter volumes price period\ncokinos natural gas co . 327963 9842 2 , 800 mmbtu / d 96 % gas daily 7 / 6\n- 7 / 31\nupstream energy services 327964 9844 150 mmbtu / d 100 % gas daily less\n$ 0 . 14 7 / 8 - 7 / 31\nfyi , susan will create and submit committed reserves firm tickets for the\nremaining term of the deal beginning with the month of august . additionally ,\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.417+0000", "entityId": 2662, "properties": {"text": "Subject: global octane meter # : 1528 july 2000 activity\nlee informed me today { 7 / 12 th } that global octane has experience\n\" operational \" problems beginning last night and will be down until further\nnotice .\nnote : this outage is considered \" force majeure \" thus , whatever flows\nduring this time period should be allocated to the \" term \" deal .\nlee was very specific toward this issue not being a buyback .\nhoward , please forward this information to whomever need it in\nsettlement . . . . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.423+0000", "entityId": 2663, "properties": {"text": "Subject: deal extended\ndeal # 276494 ended june 15 , but there is additional flow on meter # 9602 from\nthe 16 th thru the 30 th . could you extend this deal thru the 30 th so that i\ncan have vol . management create an accounting arrangement for it . if you are\nnot the person that i need to contact , could you let me know who i need to\ntalk to .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.431+0000", "entityId": 2664, "properties": {"text": "Subject: data validation\nbrenda ,\nwe met this afternoon concerning path counts . howard will be validating the\npath data we had gathered from unify . please let us know when you will need\nthis data by .\nthanks ,\nshari\n3 - 3859", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.438+0000", "entityId": 2665, "properties": {"text": "Subject: re : meter 1459 , 6 / 00\nyep , you ' re right , except it ' s out there for june 1999 . please let me know .\ni ' ll be out tomorrow , if you get this done then , let carlos know and he can\nget it set up in pops .\naimee\ndaren j farmer\n07 / 13 / 2000 01 : 16 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : meter 1459 , 6 / 00\ndeal 77352 is already out there for june .\nd\naimee lannou 07 / 12 / 2000 02 : 00 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 1459 , 6 / 00\ndaren - i need a deal set up for meter 1459 for june ' 00 . it flowed 34 / day\n6 / 1 - 6 / 6 . the last deal number used was 77352 for ena . please let me know\nwhen this is set up .\nthanks ,\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.443+0000", "entityId": 2666, "properties": {"text": "Subject: nomination change on tejas pipeline effective 7 / 14 / 00\nfyi . . . . . . . . . . . .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 13 / 2000 08 : 04\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" cynthia cantrell \"\n07 / 13 / 2000 07 : 47 am\nto :\ncc :\nsubject : nomination change on tejas pipeline effective 7 / 14 / 00\nattached is a revised nomination for the haynes 21 on tejas to be effective\n7 / 14 / 00 . if you have any questions or need additional informaiton , please\nfeel free to call me at ( 405 ) 552 - 4611 .\nthank you ,\ncynthia cantrell\n- enronhaynes 21071400 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.451+0000", "entityId": 2667, "properties": {"text": "Subject: fw : kind of neat ! alumni\n- - - - - original message - - - - -\nfrom : fletcher , thomas\nsent : thursday , july 13 , 2000 8 : 42 am\nto : walker , cole ; jackson , todd ; abbott , todd ; susie , catherine ;\nweygandt , andrew ; dewey , daniel ; glover , rusty ; beard , jaime\nsubject : fw : kind of neat ! alumni\n- - - - - original message - - - - -\nfrom : eric wilson [ mailto : ebwilson 72 @ hotmail . com ]\nsent : wednesday , july 12 , 2000 5 : 13 pm\nsubject : fwd : kind of neat ! alumni\n> from : \" jana haggard \"\n> to : eve . marek @ wcom . com , charlottehamil @ hotmail . com , coreyswift @ hotmail . com ,\n> ebwilson 72 @ hotmail . com , adflower @ hotmail . com , leslye @ netcommander . com\n> subject : fwd : kind of neat ! alumni\n> date : thu , 06 jul 2000 06 : 42 : 12 pdt\n>\n>\n> > > > > > someone has put together a listing of ? every high\n> > > > > > school in america . you go to your\n> > > > > > state , pick your\n> > > > > > city , then pick your school and\n> > > > > > year\n> > > > > > and add your name\n> > > > > > and contact point and you can\n> > > > > > contact\n> > > > > > anyone from your\n> > > > > > class that is already there .\n> > > > > > whoever\n> > > > > > did this was very\n> > > > > > thorough .\n> > > > > > http : / / www . highschoolalumni . com /\n> > > > > >\n> > > > > > be sure to forward this to\n> > > > > > everyone\n> > > > > > you know . . . the\n> > > > > > more people you send it ? to , the\n> > > > > > faster this website\n> > > > > > grows and the quicker you find\n> > > > > > your\n> > > > > > former classmates !\n> >\n> >\n> > phillipines 4 : 13\n> >\n> > rick reding\n> > rdreding @ hotmail . com\n> > reding _ videography @ prodigy . net\n> >\n> >\n> >\n>\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.457+0000", "entityId": 2668, "properties": {"text": "Subject: staffing process\nto hiring managers and assistants , ( please forward to anyone not\nincluded . )\nnew ! staffing requisition form :\nwith the implementation of sap , this form is now the critical key factor to\n( 1 ) get your new employee paid , ( 2 ) charge to the appropriate dept . , ( 3 )\ncreate the necessary \" position \" for the employee in sap , and ( 4 ) post your\nopening to web sites .\nto expedite the hiring process , please complete the attached form to request\nstaff : additions , replacements , transfers , contractors / temporaries , and\npart - time personnel . ( red sections only )\nreturn this form via e - mail .\nnew ! candidate interview form :\nwe recognize the need to schedule candidate interviews as promptly as\npossible .\nto expedite the interviewing process , please complete the attached form when\nrequesting a candidate to be interviewed . ( red sections only )\nreturn this form via e - mail with the resume . if you only have a hardcopy of\nthe resume , please send this form and resume to me at eb - 3658 b .\nemployee referral policy & form :\nto provide incentives for current domestic employees of enron corp . and it ' s\nsubsidiaries referring applicants who are hired for regular full - time u . s .\npayroll - based positions within enron . ( $ 1 , 000 for non - exempt & $ 2 , 000 for\nexempt )\nreturn this form via e - mail with the resume . if you only have a hardcopy of\nthe resume , please send this form and resume to me at eb - 3658 b .\nif you have any questions or need assistance with your new sap data\nrequested , please let me know .\nthank you in advance for your cooperation ,\ntoni graham\nstaffing consultant\nena commercial support\nx 39995", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.461+0000", "entityId": 2669, "properties": {"text": "Subject: hpl nom for july 14 , 2000 revision # 1\nrevised nom at ls hpl - katy ! ! !\n( see attached file : hplo 714 . xls )\n- hplo 714 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.466+0000", "entityId": 2670, "properties": {"text": "Subject: hpl nom for july 14 , 2000\n( see attached file : hplo 714 . xls )\n- hplo 714 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.471+0000", "entityId": 2671, "properties": {"text": "Subject: enron / hpl actuals for july 12 , 2000\nteco tap 10 . 000 / enron ; 65 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.477+0000", "entityId": 2672, "properties": {"text": "Subject: organizational announcement : industrial origination , ctg , and ena\ntreasury\neffective immediately , ray bowen will take over leadership of the industrial\norigination group responsible for enron north america \u0001 , s origination\nactivities in the industrial market including pulp & paper , metals , refining ,\nand petrochemicals . as part of the industrial origination group , jim ajello ,\nwill continue to lead the origination effort in the metals , refining , and\npetrochemical sector . edward ondarza maintains oversight of origination in\nthe pulp and paper sectors . rodney malcolm retains primary responsibility\nfor leading the execution of transactions and delivery of the outsource\nsolutions to industrial customers .\nwhen the commercial transactions group was created approximately a year ago ,\nthe objective was to create an internal emphasis on the development of\ntransaction execution skills that are necessary to execute complex ,\nstructured transactions and to foster better deal quality . we believe that\nthe primary objectives of the ctg have been achieved , and in order to better\nposition the organization for the remainder of 2000 and in response to ray\nbowen \u0001 , s new position , the following changes will be made in the commercial\ntransactions group organization .\ntransaction development : transaction development , which was created to\nprovide focused deal execution capability to the origination groups , will be\nmerged into each respective origination group and report solely to the group\nleaders .\nportfolio management : all activities surrounding portfolio investments will\nreport to jeff donahue . jeff will be responsible for ena \u0001 , s \u0001 & capital book \u0001 8\nand will have a high level of involvement in existing portfolio investments\nand will work closely with ena treasury and the various origination groups to\nassure that new transactions ( a ) incorporate appropriate risk / return\ncharacteristics , ( b ) are evaluated in the context of market based pricing\nsignals , and ( c ) incorporate a specific investment plan which includes\nsyndication of the investment , if applicable , and a specific exit strategy .\nportfolio management includes restructuring / special assets ( randy\nmaffett / dick lydecker ) and capital structuring ( andrea reed ) . steve pruett\n( energy capital resources ) , chuck ward ( generation investments ) , don miller\n( merchant generation ) , and chris helfrich ( coal and industrial ) will continue\nto be responsible for day to day asset management for performing investments\nand will report to their respective origination units with a dual report to\njeff . jeff will retain his corporate development and principal investments\nactivities .\ncommodity structuring : commodity structuring including berney aucoin ( power )\nand ed mcmichael ( gas ) will report to janet dietrich . janet will retain\nresponsibility for east midstream origination . commodity structuring will\ncontinue to work to facilitate and structure the highest priority and highest\nvalue transactions across the entire ena organization .\ntechnical / oec : the technical group ( wayne mays / bob virgo ) , which provides\ntechnical support to industrial and power generation asset development\nactivities , and oec ( lead by mark dobler ) will report directly to the ena\noffice of the chairman .\nin addition to these changes , joe deffner has been named ena \u0001 , s chief\nfinancial officer and will head ena treasury . in this role he will be\nresponsible for managing ena \u0001 , s balance sheet and the sourcing of capital in\nthe bank and capital markets . joe will report jointly to the ena office of\nthe chairman and to enron corp . global finance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.483+0000", "entityId": 2673, "properties": {"text": "Subject: noms for the 12 th . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 07 / 13 / 2000\n11 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 07 / 13 / 2000 11 : 04 : 06 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : noms for the 12 th . . .\n( see attached file : hpl - july . xls )\n- hpl - july . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.488+0000", "entityId": 2674, "properties": {"text": "Subject: methanol plant status\nit now appears the methanol plant will be up making product about july 28 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.493+0000", "entityId": 2675, "properties": {"text": "Subject: out of the office during the week of july 17 th thru july 21 st\ni will be out of the office next week . during my absence , please contact\nbob cotten at extension 3 - 6101 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.497+0000", "entityId": 2676, "properties": {"text": "Subject: my vacation\ni will be on vacation the week of july 17 th through july 21 st . if you have\nany risk questions , please refer them to dave baumbach . if you need to get\nin touch with me you can try my cell phone ( 713 ) 504 - 2666 or ( 850 ) 267 - 4300 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.502+0000", "entityId": 2677, "properties": {"text": "Subject: new storage flag\nwe are going to add a new drop down flag to storage in sitara to\ndifferentiate the difference between physical and synthetic storage - as each\nare\ntreated differently for inventory accounting purposes . a change will also\nbe made to global contracts and unify , and is intended to assist with oa\nvariances\non storage .\non the next release ( mid august ) we will add a drop down on the storage deal\ntype which will be a required field .\nsomeone will need to edit the existing deals to add the flag - as it will be\na required field - physical facility or synthetic .\n( we can create queries to work with you on identifying deals that need to be\nconverted - as well as results for global conversion )\nglobal contracts uses the flags from sitara to set up new contracts - so\nsitara will add the flag on the deal .\nthe flag will be stored in global contracts - which will feed the flag to\nunify .\nonce the existing deals are converted in sitara , global contracts can add the\nappropriate flag to their system .\nonce this is complete and unify is ready , unify can begin to feed in the\ninformation from global contracts , and we will then\nbe able to differentiate the two in the accounting system .\nin the interim time , you may want to identify your synthetic vs . physical\nstorage deals .\nlet me know if you have any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.507+0000", "entityId": 2678, "properties": {"text": "Subject: enron actuals for july 13 , 2000\nteco tap 10 . 000 / enron ; 60 . 000 / hpl iferc\nls hpl katy 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.512+0000", "entityId": 2679, "properties": {"text": "Subject: hpl nom for july 15 thru 17 , 2000\n( see attached file : hplo 715 . xls )\n- hplo 715 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.518+0000", "entityId": 2680, "properties": {"text": "Subject: name change / merger listing for 7 / 00\nthis is the preliminary spreadsheet for july . there will definitely be\nanother listing distributed no later than this friday . for some reason there\nhas been an unusual number of notices issued and we are working diligently to\nget the documents lined up .\nupdates to records in gcp for counterparty name changes :\nthe legal name field will be updated monday afternoon ( 7 / 17 ) .\nthe erms shortnames will be changed on tuesday afternoon ( 7 / 18 ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.523+0000", "entityId": 2681, "properties": {"text": "Subject: new paycheck information !\nintroducing your first sap paycheck !\nthis is the first payroll processed in sap for all employees paid out of\ncorporate payroll . you may notice some changes in the way information is\nreflected on your pay advice , the most common are itemized below .\nwhat \u0001 , s different ?\n? your \u0001 + home \u0001 , cost center will be displayed at the top of the pay advice .\nthis is your department number as designated in the hr and financial modules\nof sap .\n? any earnings descriptions that start with a \u0001 + p \u0001 , represent earning types\nreported in the prior period . for instance , if you reported vacation time for\nthe july lst - 15 th pay period , it will be reflected on your july 31 st pay\nadvice as \u0001 + pvacation \u0001 , .\n? flex dollars will appear on the earnings section of the pay advice instead\nof as a credit in the deduction section . the various benefit deductions will\nremain itemized in the deduction section .\n? if you transfer between enron companies during the year , your year \u0001 ) to - date\ntotals will carry forward to the new company pay advice . previously , the\nyear - to - date totals started over when transferred to another company . this\nchange will provide your total enron earnings and deduction amounts on your\npay advice throughout the year . ( note that your w 2 at the end of the year\nwill reflect your earnings by company ) .\n? for salaried employees , any reported exception time ( e . g . vacation , sick\nday , etc . ) will be reflected on the earnings section with hours only , the\nrelated dollar amount will be included in the \u0001 + salary \u0001 , earnings type .\n? for any other information or further explanations regarding your payroll\ncontact the payroll call center at 713 - 345 - 5555\npayroll faq \u0001 , s\nmy paycheck has a line called \u0001 & other deductions \u0001 8 , what does that stand for ?\nthere is a fixed amount of lines to print deductions on the paycheck . for\nsome employees , the number of deductions are more than we have room to\nprint . in this circumstance , the system totals all remaining deductions and\nprints them on one line \u0001 ) titled \u0001 & other deductions \u0001 8 . the detail of all\ndeductions can be viewed on the pay advice that is displayed on the intranet\nat ehronline . enron . com .\nwhat do the earnings or deduction codes on my paycheck mean ?\nthese definitions are listed on the payroll webpage located at\nhrweb . enron . com , select enron payroll from the side index .\nwhy is my overtime not reflected on my paycheck ?\novertime is paid one pay period in arrears , therefore it will be reflected in\nthe next pay period . for example , if you reported overtime for the\njuly lst \u0001 ) 15 th pay period , it will be reflected on your july 31 st pay advice\nas \u0001 + povertime \u0001 , .\nwhat is the limit for social security ( fica ) ?\nfor year 2000 the limit is $ 4 , 724 . 40 on a wage base of $ 76 , 200 . this limit is\napplied to each enron payroll tax company . therefore , if you transfer to\nanother enron company these limits will start over , however , the total amount\nwithheld across all companies will be reflected on your paystub . excess fica\nwill be credited to you by the irs via your tax return .\nwhat federal income tax rate is used for my bonus or when i exercise stock\noptions ?\nthere is a standard federal income tax rate of 28 % for these earnings . this\ncan be higher if the employee has completed a supplemental tax form\nrequesting a higher rate ( this form can be found at hrweb . enron . com , select\nenron payroll from the side index ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.528+0000", "entityId": 2682, "properties": {"text": "Subject: re : preliminary \" buyback & deficiency deals \" worksheet for july\n2000 activity\nattached is the final \" buyback & deficiency deals \" worksheet for july 2000\nactivity .\nfrom : robert e lloyd 06 / 30 / 2000 05 : 44 pm\nto : gary a hanks / hou / ect @ ect , angela henn / hou / ect @ ect , howard b\ncamp / hou / ect @ ect , lee l papayoti / hou / ect @ ect , daren j farmer / hou / ect @ ect ,\ngary w lamphier / hou / ect @ ect , david baumbach / hou / ect @ ect , lisa\ncsikos / hou / ect @ ect , joanie h ngo / hou / ect @ ect , jennifer blay / hou / ect @ ect , pat\nclynes / corp / enron @ enron\ncc : robert e lloyd / hou / ect @ ect\nsubject : preliminary \" buyback & deficiency deals \" worksheet for july 2000\nactivity\nattached is a preliminary \" buyback & deficiency deals \" worksheet for july\n2000 activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.537+0000", "entityId": 2683, "properties": {"text": "Subject: settelement request for an equistar \" buyback \" ticket with ena as\nshipper\nlee ask me to forward this note - mail to you . settlement is trying to close\ntoday thus , it is urgent that i get this resolved asap .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 14 / 2000\n10 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 14 / 2000 09 : 29 am\nto : lee l papayoti / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ndaren wanted me to make this request to you for an equistar buyback ticket\non enron north america { ena } .\nequistar has nominated activity on ena for june and july 2000 production .\nsettlement seems to think a buyback ticket is necessary to properly account\nfor equistar ' s monthly activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.543+0000", "entityId": 2684, "properties": {"text": "Subject: re : settelement request for an equistar \" buyback \" ticket with ena\nas shipper\nplease contact craig breslau . i did not do any deals with equistar , he did .\nfrom : robert e lloyd 07 / 14 / 2000 09 : 29 am\nto : lee l papayoti / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ndaren wanted me to make this request to you for an equistar buyback ticket\non enron north america { ena } .\nequistar has nominated activity on ena for june and july 2000 production .\nsettlement seems to think a buyback ticket is necessary to properly account\nfor equistar ' s monthly activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.549+0000", "entityId": 2685, "properties": {"text": "Subject: settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ndaren wanted me to make this request to you for an equistar buyback ticket\non enron north america { ena } .\nequistar has nominated activity on ena for june and july 2000 production .\nsettlement seems to think a buyback ticket is necessary to properly account\nfor equistar ' s monthly activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.554+0000", "entityId": 2686, "properties": {"text": "Subject: pg & e texas 6 / 00\ni received an invoice from pg & e texas industrial energy for 6 / 00 production\nand i do not see one of the pieces in unify . they are invoicing us for\n50 , 000 mmbtu at 4 . 16 on 6 / 13 . is this a good deal ? if it is , please tell me\nthe deal number . i checked path manager and i do not see anything there\neither .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.558+0000", "entityId": 2687, "properties": {"text": "Subject: re :\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 07 / 17 / 2000\n11 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 07 / 17 / 2000 10 : 43 am\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : re :\nsince we cannot fix the deal , go ahead and put a fixed price of $ 2 . 81359 on\nboth lines of the may 2000 deal . this will allow us to pay correctly . if\nyou can , please put some comments in the deal noting the true deal price so\nwe have an audit trail . just let me know when it is done .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.563+0000", "entityId": 2688, "properties": {"text": "Subject: extend deal\nduring the month of june there is flow at meter 6347 , but there is no deal .\nthere is a deal in may ( deal 290472 ) , \" could you extend that deal for the\nmonth of june ? \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.568+0000", "entityId": 2689, "properties": {"text": "Subject: hourly gas deals\nfyi . if you have any comments , please get them to tommy .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 07 / 17 / 2000\n04 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : tommy j yanowski 07 / 17 / 2000 11 : 08 am\nto : robert superty / hou / ect @ ect , brenda herod , edward d gottlob / hou / ect @ ect ,\ndonna greif\ncc : scott mills , dave nommensen , jeff johnson / corp / enron @ enron , romeo\nd ' souza / hou / ect @ ect\nsubject : hourly gas deals\nhere is a high level summary of our discussions last week . i believe that\nthe calculations listed below under option 1 show how hpl would like to\ncapture deals and see their postions all based on a 24 hour flow rate basis .\noption 2 shows what the values would look like under an hourly flow basis .\nbob : please review with the other trading directors and see if they also\nprefer to see everything on a 24 hour flow rate basis . thanks ! - tommy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.573+0000", "entityId": 2690, "properties": {"text": "Subject: pictures\ni had computer problems today , which snarf ' d all the addresses that i have\nprevious e - mailed you folks . none of those previous http address are valid\nany more .\nso , look to http : / / 24 . 27 . 98 . 30 / pictures / index . htm to find a table of\ncontents of july pictures . i ' ll try to keep this updated , as new pictures\nare posted .\nthanks ,\nram tackett , ( mailto : rtackett @ abacustech . net )\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\n( 281 ) 651 - 7106 ; fax ( 281 ) 528 - 8636 web : http : / / www . abacustech . net\n- ram tackett ( e - mail ) . vcf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.579+0000", "entityId": 2691, "properties": {"text": "Subject: cornhusker - gas management\ni thought it might be helpful to summarize the next steps we agreed are\nnecessary to put a \" gas agency \" agreement in place between the texas desk and\nponderosa pine energy , llc .\nmazowita and farmer to work with plant manager ( mike gough ) to determine :\nhow power schedules are received from brazos and translated into fuel\nrequirements\nthe plant ' s operating flexibility to use fuel oil over natural gas\nhow the use of fuel oil is built into the dispatch / operation decision\nthe degree to which the plant has historically been involved with fuel\nsuppliers beyond tgc ( i . e . , apache , williams , lone star )\nmazowita and farmer to work with tgc ( nancy stivers ) to determine :\nhow gas schedules are received from the plant\nwhy there were structural differences between the apache / williams fuel supply\nagreements and the tgc agency agreement\ntgc ' s experience with optimizing value under the fuel supply agreements\nfarmer to determine if a \" form agreement \" is available within ena for\ntransactions of this nature\nlyons / hill to determine ( a ) if there is a need to have the gas agency\nagreement at the project vs . holding company level and ( b ) if bank approvals\nare needed as a result of the new agreement\nlyons / mazowita / farmer to draft agency agreement\ngriffith to determine the best means of handling \" duel fuel \" capability at\nthe plant within ena\nas an aside , i passed the information that daren gave me in the meeting\nconcerning the tax certificate for the use of fuel oil on to rhett jackson ,\nwho handled tax - related matters during the acquisition phase of this\nproject .\nplease keep me in the loop as these contacts are made and let me know how i\ncan help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.584+0000", "entityId": 2692, "properties": {"text": "Subject: enron actuals for july 14 thru 16 , 2000 revised\nami , , ,\nyou are correct .\njuly 16 teco tap 10 . 000 / enron 60 . 000 / hpl\niferc\nls hpl katy 30 . 000 / enron\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tim powell / lsp / enserch / us on 07 / 17 / 2000\n02 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n( embedded tim powell\nimage moved 07 / 17 / 2000 12 : 55 pm\nto file : ( embedded image moved to file : pico 3757 . pcx )\npic 26392 . pcx )\nto : daren . j . farmer @ enron . com , crodrig @ ect . enron . com , melissa jones / texas\nutilities @ tu , charlie stone / texas utilities @ tu , gary green / texas\nutilities @ tu , ken english / lsp / enserch / us @ tu , ami _ chokshi @ enron . com ,\ngary _ hanks @ ect . enron . com , earl . tisdale @ enron . com\ncc :\nsubject : enron actuals for july 14 thru 16 , 2000\njuly 14 teco tap 10 . 000 / enron 60 . 000 / hpl iferc\nls hpl katy 30 . 000 / enron\njuly 15 teco tap 10 . 000 / enron 95 . 000 / hpl\niferc\nls hpl katy 30 . 000 / enron\njuly 16 teco tap 10 . 000 / enron 55 . 000 / hpl\niferc\nls hpl katy 30 . 000 / enron\n- pic 26392 . pcx\n- pico 3757 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.589+0000", "entityId": 2693, "properties": {"text": "Subject: enron actuals for july 14 thru 16 , 2000\njuly 14 teco tap 10 . 000 / enron 60 . 000 / hpl iferc\nls hpl katy 30 . 000 / enron\njuly 15 teco tap 10 . 000 / enron 95 . 000 / hpl\niferc\nls hpl katy 30 . 000 / enron\njuly 16 teco tap 10 . 000 / enron 55 . 000 / hpl\niferc\nls hpl katy 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.594+0000", "entityId": 2694, "properties": {"text": "Subject: hpl noms for july 18 , 2000\n( see attached file : hplo 718 . xls )\n- hplo 718 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.598+0000", "entityId": 2695, "properties": {"text": "Subject: cornhusker - gas management\ni thought it might be helpful to summarize the next steps we agreed are\nnecessary to put a \" gas agency \" agreement in place between the texas desk and\nponderosa pine energy , llc .\nmazowita and farmer to work with plant manager ( mike gough ) to determine :\nhow power schedules are received from brazos and translated into fuel\nrequirements\nthe plant ' s operating flexibility to use fuel oil over natural gas\nhow the use of fuel oil is built into the dispatch / operation decision\nthe degree to which the plant has historically been involved with fuel\nsuppliers beyond tgc ( i . e . , apache , williams , lone star )\nmazowita and farmer to work with tgc ( nancy stivers ) to determine :\nhow gas schedules are received from the plant\nwhy there were structural differences between the apache / williams fuel supply\nagreements and the tgc agency agreement\ntgc ' s experience with optimizing value under the fuel supply agreements\nfarmer to determine if a \" form agreement \" is available within ena for\ntransactions of this nature\nlyons / hill to determine ( a ) if there is a need to have the gas agency\nagreement at the project vs . holding company level and ( b ) if bank approvals\nare needed as a result of the new agreement\nlyons / mazowita / farmer to draft agency agreement\ngriffith to determine the best means of handling \" duel fuel \" capability at\nthe plant within ena\nas an aside , i passed the information that daren gave me in the meeting\nconcerning the tax certificate for the use of fuel oil on to rhett jackson ,\nwho handled tax - related matters during the acquisition phase of this\nproject .\nplease keep me in the loop as these contacts are made and let me know how i\ncan help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.603+0000", "entityId": 2696, "properties": {"text": "Subject: parking\nfor prior periods - i am not sure if you need to handle this using the\ninstructions below - or if for prior months only - if you would be allowed\nto create a\ncashout ticket to clear out any prior period imbalances . your controller\nand volume management ( kathy kelly ) should make this call .\nkim and david can brain check me on this - but i think this is how parking\nshould be done ; however ,\nplease verify with west or east desk economics to ensure accuracy / consistency .\nparking procedures\ncreate a storage deal in sitara - service type : parking\nuse this service deal to path to a storage account in unify - this way you\nhave accounted for the gas in unify\ninject into storage account\nwithdrawal from storage account\n( when you do the opposite of parking - withdrawal first - it is called a\n\" loan \" )\ncreate two economic deals in sitara - exchange deal\ncreate an internal buy and sell of physical gas for economics and position\npurposes - ( no invoices - fake 3 rd party )\nexchange deal -\nsell to cpr pipeline exchange ( parking gas )\nbuy from cpr pipeline exchange ( getting gas back )\nwithin the month parking - no money exchanges hands - except any service fees\nwhich can be recorded on the storage deal .\nsell to cpr pipeline exchange ( parking gas ) - price = $ 0\nbuy from cpr pipeline exchange ( getting gas back ) price = $ 0\nwhen the deal crosses a month - if you keep the risk within the desk - in the\nshort term you record a big loss - sell at $ 0 - and the\nnext month you record a big gain - buy at $ 0 . to manage this - usually the\ncash desk swaps out the time risk to a storage financial book - who will pick\nup the time\nspread loss and offsetting gain - as this book captures forward value .\nwhen you are adjusting your physical injections ( parking ) within the month -\nyou will need to\nadjust your swaps too - which will adjust the p & l for the time spread\naccordingly - otherwise you will have liquidation problems .\nperiod 1 - sell to cpr pipeline exchange ( parking gas ) - price = $ 0 swap\nto firm book for index + mid\nperiod 2 - buy from cpr pipeline exchange ( getting gas back ) price = $ 0\nswap to firm book for index + mid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.608+0000", "entityId": 2697, "properties": {"text": "Subject: fun pics . htm\n-\n- fun pics . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.613+0000", "entityId": 2698, "properties": {"text": "Subject: thank you\nami and daren , , , ,\njust wanted again to say thanks ! ! ! , for the great time at st . pete ' s beach ,\nfla .\nthe company , food , fishing and yes , of coarse\nthe drink or many drinks were great ! ! ! daren , can relate to the drinks .\ni enjoyed meeting everyone there .\nwe appreciate your business and look forward to continue our business relation\nwith enron in the future .\nsincerely ,\ntim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.619+0000", "entityId": 2699, "properties": {"text": "Subject: enron / hpl actuals for july 17 , 2000\nami , , , ,\ni agree with you through the 17 th .\nthanks ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tim powell / lsp / enserch / us on 07 / 18 / 2000\n12 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nami . chokshi @ enron . com on 07 / 18 / 2000 11 : 09 : 40 am\nto : tim powell / lsp / enserch / us @ tu\ncc :\nsubject : enron / hpl actuals for july 17 , 2000\nthrough the 17 th , the actual volumes total :\nhplr 1 , 320 , 000\nenron 660 , 000\nno gas daily\nplease advise .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 07 / 18 / 2000\n11 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" melissa jones \" on 07 / 18 / 2000 10 : 13 : 29 am\nto : \" charlie stone \" , \" gary green \" ,\ntimpowell @ txu . com , daren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for july 17 , 2000\nteco tap 10 . 000 / enron ; 80 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.624+0000", "entityId": 2700, "properties": {"text": "Subject: hpl nom for july 19 , 2000\n( see attached file : hplo 719 . xls )\n- hplo 719 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.629+0000", "entityId": 2701, "properties": {"text": "Subject: enron / hpl actuals for july 17 , 2000\nteco tap 10 . 000 / enron ; 80 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.638+0000", "entityId": 2702, "properties": {"text": "Subject: re : saudi arabia\ndaren :\ni ' ll follow - up on this , but i ' m sure you know it isn ' t a very likely story .\ni ' ll be in saudi this friday , so if mr . maldonado has any leads there i can\ncheck ' em out .\nplease say hi to doug and tell him we ' re getting a little closer to that gas\npipeline to displace liquids on the saudi west coast .\nregards ,\nsamir\nrob stewart\n07 / 20 / 2000 02 : 47 am\nto : samir salama / enron _ development @ enron _ development\ncc :\nsubject : saudi arabia\nthis sounds right up your street\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rob stewart / enron _ development on\n07 / 20 / 2000 02 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer @ ect\n06 / 15 / 2000 03 : 05 pm\nto : rob stewart / eu / enron @ enron\ncc :\nsubject : saudi arabia\nrob ,\ni got your name from doug leach . he thought that you would be the person to\ntalk to about this .\ni got a call last night from rudolph maldonado . ( the operator forwarded him\nour way . ) he stated that he has some natural gas to sell in saudi arabia .\nhis number is 562 - 866 - 1755 . could you give him a call and check this out ? i\ntold him that i would find someone that he could discuss this with .\ni can be reached at 3 - 6905 if you have any questions .\ndaren farmer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.645+0000", "entityId": 2703, "properties": {"text": "Subject: hpl nom for july 20 , 2000 - revision # 1\n( see attached file : hplo 720 . xls )\n- hplo 720 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.650+0000", "entityId": 2704, "properties": {"text": "Subject: enron / hpl actuals for july 18 , 2000\nteco tap 10 . 000 / enron ; 65 . 000 / iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.655+0000", "entityId": 2705, "properties": {"text": "Subject: 8 / 00 assignment , termination , expiration report - assets group\nattached is the august 2000 assignment , termination & expiration report for\nthe assets group ' s contracts . ( fyi - it contains all of the entries made by\nour group during 7 / 00 regardless of the effective date . ) if you do not need\nto receive this report or if you know of someone else that should receive it ,\nplease let me know by e - mail or phone ( x - 36982 ) so that i can either remove\nyour name from or add their name to the distribution list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.659+0000", "entityId": 2706, "properties": {"text": "Subject: enron and blockbuster to launch entertainment on - demand service\ntoday enron broadband services announced a 20 - year exclusive agreement with\nblockbuster to deliver a revolutionary new \" entertainment on demand \" service\nto consumers . consumers will be able to order movies from the convenience\nof their homes , and watch them on their televisions whenever they want . to\nlearn more about this exciting announcement and view a webcast featuring\ninterviews with ken lay and blockbuster ceo john antioco , visit\nhttp : / / www . . com / .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.664+0000", "entityId": 2707, "properties": {"text": "Subject: hpl optimization\nteam ,\nas i mentioned in our hpl staff meeting we are investigating the merits of\nentering into a joint venture or another transaction structure that will\nposition hpl to effectively compete in the texas intrastate market . our\nprimary objective is to gain access to additional sources of gas supply and\nachieve the required economies of scale to compete with other intrastate\npipelines . i would appreciate your confidence and support in developing the\noptimal course of action for hpl and for enron .\nthe skills that we have developed in our group are critical to growing our\nupstream origination business in n . america , as well as to the ongoing\noperation of hpl . our origination strategy is to leverage our business\noperations , field operations , engineering , producer services , and marketing\nskills to capture value from transportation , gathering , storage and commodity\nopportunities on the gas / power grids . we need our current employees to\naccomplish this objective across n . america .\nwe have proven our ability to add value to enron by developing the\npowder / wind river pipelines , installing electric compressors , contracting for\nprocessing capacity , and establishing a new gas supply corridor along the\ngulf coast . our recent efforts to provide services such as business\noperations , measurement , trading / marketing , and accounting services to third\nparty producers and pipelines also looks to be a promising growth opportunity .\nit is very important to our ongoing business relationships and our\ncompetitive position in the market place that we do not discuss hpl related\nmatters with third parties . please come see me if you have any specific\nquestions or concerns . also please refer any third party inquiries regarding\nhpl to tim determing .\nregards ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.668+0000", "entityId": 2708, "properties": {"text": "Subject: hpl optimization\nplease make sure your staff receives this if they are not included on the\ndistribution below . i hope all will understand the importance of\nconfidentiality as well as the importance of their jobs and skills . thanks\nfor reinforcing it !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brenda f herod / hou / ect on 07 / 20 / 2000\n11 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : brian redmond 07 / 19 / 2000 02 : 42 pm\nsent by : lillian carroll\nto : jim coffey / hou / ect @ ect , lisa lunz / corp / enron @ enron , susie\norsak / corp / enron @ enron , susie orsak / corp / enron @ enron , arize\nagumadu / na / enron @ enron , karry kendall / hou / ect @ ect , yvette\nmiroballi / hou / ect @ ect , karen gruesen / hou / ect @ ect , melissa graves / hou / ect @ ect ,\nanita eisenbrandt / hou / ect @ ect , cassandra pollack / corp / enron @ enron , rabia\nbasit / corp / enron @ enron , carol carter / hou / ect @ ect , jackie nelson / hou / ect @ ect ,\nblanca a lopez / hou / ect @ ect , alexia o pearce / hou / ect @ ect , rhonda\nwashington / hou / ect @ ect , meredith powers / hou / ect @ ect , ruby\nwagoner / hou / ect @ ect , luis davila / hou / ect @ ect , katherine\ncrosswhite / hou / ect @ ect , susan smith / hou / ect @ ect , vance l taylor / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , nancy hall / hou / ect @ ect , leticia\nleal / hou / ect @ ect , melanie facundo / hou / ect @ ect , xochitl - alexis\nvelasco / hou / ect @ ect , venita coleman / corp / enron @ enron , monica\njackson / corp / enron @ enron , lacye brymer / na / enron @ enron , melissa\njones / na / enron @ enron , katherine crosswhite / hou / ect @ ect , mirna\nmejia / hou / ect @ ect , julie a gomez / hou / ect @ ect , nick\ncocavessis / corp / enron @ enron , jean mrha / na / enron @ enron , steve hpl\nschneider / hou / ect @ ect , thomas a martin / hou / ect @ ect , mark\ncourtney / hou / ect @ ect , mark knippa / hou / ect @ ect , john scarborough / hou / ect @ ect ,\ncarol carter / hou / ect @ ect , petual jeanmard / corp / enron @ enron , morela\nhernandez / corp / enron @ enron , kevin kuehler / corp / enron @ enron , valerie\nurbanek / corp / enron @ enron , reid hansen / gco / enron @ enron , robert\ngeheb / gco / enron @ enron , tom fry / gco / enron @ enron , calvin dodd / gco / enron @ enron ,\nvicente sarmiento / gco / enron @ enron , eugene peabody / gco / enron @ enron , don\nthomas / gco / enron @ enron , j r fosdick / gco / enron @ enron , bac thi\nly / gco / enron @ enron , bob camp / gco / enron @ enron , joe zernicek / gco / enron @ enron ,\njohn peyton / hou / ect @ ect , keith macivor / corp / enron @ enron , paul\nbieniawski / corp / enron @ enron , john allario / hou / ect @ ect , garry d\nwilson / hou / ect @ ect , jin guo / hou / ect @ ect , stephanie miller / corp / enron @ enron ,\nrebecca w cantrell / hou / ect @ ect , melinda pharms / hou / ect @ ect , chris\nmeyer / hou / ect @ ect , john hodge / corp / enron @ enron , janet\nedwards / corp / enron @ enron , ruth concannon / hou / ect @ ect , fannette a\nperry / hou / ect @ ect , brad blevins / hou / ect @ ect , lal echterhoff / hou / ect @ ect ,\njames r haden / hou / ect @ ect , audrey pullen / hou / ect @ ect , chris\nsonneborn / hou / ect @ ect , ping he / corp / enron @ enron , gas control , tom\nacton / corp / enron @ enron , clem cernosek / hou / ect @ ect , pat\nclynes / corp / enron @ enron , george grant / hou / ect @ ect , charlotte\nhawkins / hou / ect @ ect , aimee lannou / hou / ect @ ect , robert e lloyd / hou / ect @ ect ,\nmark mccoy / corp / enron @ enron , stella l morris / hou / ect @ ect , carlos j\nrodriguez / hou / ect @ ect , susan d trevino / hou / ect @ ect , kimberly\nvaughn / hou / ect @ ect , jackie young / hou / ect @ ect , sabrae zajac / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , mary m smith / hou / ect @ ect , heidi withers / hou / ect @ ect , daren\nj farmer / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , jim\nschwieger / hou / ect @ ect , kenny j soignet / hou / ect @ ect , edward d\ngottlob / hou / ect @ ect , lauri a allen / hou / ect @ ect , greg brazaitis / hou / ect @ ect ,\ngary w lamphier / hou / ect @ ect , lee l papayoti / hou / ect @ ect , janet h\nwallis / hou / ect @ ect , ned higgins / hou / ect @ ect , james\nwhitehead / corp / enron @ enron , james i ducote / hou / ect @ ect , michael w\nmorris / hou / ect @ ect , blake lasuzzo / corp / enron @ enron , barbara n\ngray / hou / ect @ ect , paula craft / hou / ect @ ect , roger balog / hou / ect @ ect , sandi m\nbraband / hou / ect @ ect , shonnie daniel / hou / ect @ ect , gerald nemec / hou / ect @ ect ,\nsteve van hooser / hou / ect @ ect , ann elizabeth white / hou / ect @ ect , mary\nogden / hou / ect @ ect , robert walker / hou / ect @ ect , erica braden / hou / ect @ ect , pat\nradford / hou / ect @ ect , becky tlucek / hou / ect @ ect , kimberlee a\nbennick / hou / ect @ ect , taffy milligan / hou / ect @ ect , jenny helton / hou / ect @ ect ,\nchaundra woods / hou / ect @ ect , eric gillaspie / hou / ect @ ect , shawna\nflynn / hou / ect @ ect , w tom byargeon / hou / ect @ ect , kevin miller / corp / enron @ enron ,\nken loch / corp / enron @ enron , johnnie williams / hou / ect @ ect , ryan\nhinze / corp / enron @ enron , lori hope / hou / ect @ ect , emma kam welsch / hou / ect @ ect ,\nnathan l hlavaty / hou / ect @ ect , candace l bywaters / hou / ect @ ect , gerald\nlofton / hou / ect @ ect , cheryl lantz marshall / hou / ect @ ect , tom\nshelton / hou / ect @ ect , ron green / corp / enron @ enron , kenneth w kaase / hou / ect @ ect ,\nperry roberts / gco / enron @ enron , john miska / gco / enron @ enron , kenny\ncooper / gco / enron @ enron , sean brooks / gco / enron @ enron , fred\nbiery / gco / enron @ enron , kelley myers / gco / enron @ enron , john\ntowles / na / enron @ enron , karl e atkins / na / enron @ enron , debbie\nboudar / na / enron @ enron , aric archie / na / enron @ enron , robert\nrose / na / enron @ enron , ken parker / hou / ect @ ect , roger spiller / ots / enron @ enron ,\nron tapscott / hou / ect @ ect , dan staines / hou / ect @ ect , michelle\nzhang / hou / ect @ ect , scott a monson / hou / ect @ ect , steve walton / hou / ect @ ect ,\njeffrey a austin / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary jo\njohnson / hou / ect @ ect , gary bryan / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njennifer martinez / hou / ect @ ect , george weissman / hou / ect @ ect , michael c\nbilberry / hou / ect @ ect , michelle terry / corp / enron @ enron , joanne\nwagstaff / na / enron @ enron , christy sweeney / hou / ect @ ect , peter\nbennett / corp / enron @ enron , michael eiben / hou / ect @ ect , irene flynn / hou / ect @ ect ,\njuanita marchand / hou / ect @ ect , chris riegler / corp / enron @ enron , karl\nstewart / hou / ect @ ect , kim weldon / corp / enron @ enron , amelia alland / hou / ect @ ect ,\ncheryl dudley / hou / ect @ ect , cathy l harris / hou / ect @ ect , jackie\nmorgan / hou / ect @ ect , donna consemiu / hou / ect @ ect , robert cook / hou / ect @ ect ,\nmolly l carriere / hou / ect @ ect , robert crockett / hou / ect @ ect , christopher\ndaniel / hou / ect @ ect , john handley / hou / ect @ ect , theresa mckinney / hou / ect @ ect ,\nadriana peterson / hou / ect @ ect , barbara sargent / hou / ect @ ect , eric h\nmason / corp / enron @ enron , trading , david baumbach / hou / ect @ ect , ami\nchokshi / corp / enron @ enron , jody crook / corp / enron @ enron , bryan\nhull / hou / ect @ ect , julie meyers / hou / ect @ ect , steve venturatos / hou / ect @ ect ,\nmichael walters / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , yvette g\nconnevey / corp / enron @ enron , brenda f herod / hou / ect @ ect , paul\ncouvillon / corp / enron @ enron , lisa csikos / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , kristen j\nhanson / hou / ect @ ect , katherine herrera / corp / enron @ enron , gregg\nlenart / hou / ect @ ect , kyle r lilly / hou / ect @ ect , nick moshou / corp / enron @ enron ,\njoanie h ngo / hou / ect @ ect , hannah ortiz / hou / ect @ ect , megan\nparker / corp / enron @ enron , charlene richmond / hou / ect @ ect , tina\nvaladez / hou / ect @ ect , harold bertram / hou / ect @ ect , troy denetsosie / hou / ect @ ect ,\nvolume management , brian bierbach / den / ect @ enron , mark whitt / den / ect @ enron ,\nmichael j legler / hou / ect @ enron , james hoff / den / ect @ enron , paul t\nlucci / den / ect @ enron , scott sitter / den / ect @ enron , nicole cortez / den / ect @ enron ,\ntheresa staab / corp / enron @ enron , heidi dubose / den / ect @ enron\ncc :\nsubject : hpl optimization\nteam ,\nas i mentioned in our hpl staff meeting we are investigating the merits of\nentering into a joint venture or another transaction structure that will\nposition hpl to effectively compete in the texas intrastate market . our\nprimary objective is to gain access to additional sources of gas supply and\nachieve the required economies of scale to compete with other intrastate\npipelines . i would appreciate your confidence and support in developing the\noptimal course of action for hpl and for enron .\nthe skills that we have developed in our group are critical to growing our\nupstream origination business in n . america , as well as to the ongoing\noperation of hpl . our origination strategy is to leverage our business\noperations , field operations , engineering , producer services , and marketing\nskills to capture value from transportation , gathering , storage and commodity\nopportunities on the gas / power grids . we need our current employees to\naccomplish this objective across n . america .\nwe have proven our ability to add value to enron by developing the\npowder / wind river pipelines , installing electric compressors , contracting for\nprocessing capacity , and establishing a new gas supply corridor along the\ngulf coast . our recent efforts to provide services such as business\noperations , measurement , trading / marketing , and accounting services to third\nparty producers and pipelines also looks to be a promising growth opportunity .\nit is very important to our ongoing business relationships and our\ncompetitive position in the market place that we do not discuss hpl related\nmatters with third parties . please come see me if you have any specific\nquestions or concerns . also please refer any third party inquiries regarding\nhpl to tim determing .\nregards ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.673+0000", "entityId": 2709, "properties": {"text": "Subject: new version of stack manager\nintroduction\nin response to feedback received from enron traders worldwide , we have\nupgraded and improved the stack manager to include new functionality which we\nhope will improve its effectiveness and usefulness in the management of your\nproducts .\nthis new release will be automatically installed within the next few days .\nplease ensure you log out at night in order to receive the upgrade .\nsummary of new features\nmultiple children - a \" child \" product can be the \" parent \" of another child\n( multiple links in a chain ) and different types of links can be placed\nagainst a single parent .\nstatic product bar prices - when you change a price in the product bar and\nhit the \" + \" or \" - \" button , the price stays - it does not reset to the amount\nin product properties until you logout .\nsorting - you can sort by any field on the products tab simply by clicking on\nthe title of the field . for multiple sorts , hold down your \" shift \" key .\nparent products which are at the top of a stack do not have their basis\nrelationship identified . ( e . g . the product bar might before have said : \" basis\nlink - parent \" and now would say \" stand alone , parent \" ) .\ndetailed feature descriptions\nmultiple children\nthe new version of enrononline allows you to link several products together\nin a long chain . for example , child product a can be linked to parent product\nb , which is in turn linked to parent product c .\nwarning : although there is no absolute limit to the number of links in a\nchain , system performance is degraded by large chains . this is because when a\ncustomer attempts a transaction , the database must \" lock \" each and every\nproduct in the chain before it can process the transaction request . the\ndatabase must then update the stack for each product before releasing the\nlocks . \" vertical \" chains ( multiple parents and children in one long link ) are\nmuch slower to process than \" flat \" chains ( one parent with many children ) .\nlarge vertical chains should be avoided .\nrelated to this feature is the ability to have several types of links on the\nsame parent . for example , child product a can have a basis link to parent\nproduct b . at the same time , child product c can have a syncopated basis link\nto the same parent product b . parent b is the parent for both a syncopated\nbasis link and a regular basis link .\nstatic product bar prices\nthe new version of enrononline provides for \" sticky \" product bar price and\nvolume changes . when you change a number on the product bar , it does not\nreset to the number contained in the product properties menu until after you\nhave logged out . this makes it easier to update prices , volumes , spreads or\noffsets in a changing market without repeated hits to the \" + \" or \" - \" buttons .\none of the benefits of setting these numbers to appropriate levels is that it\nreduces repeated price movements . with the old version of stack manager , if\nthe price delta was too small , traders would often repeatedly hit the price\nmovement buttons . each of these price changes must be communicated across the\nwebsite to customers and consumes valuable bandwidth . this makes it harder\nfor customers to transact with us - each time they try , a new price update\nmoves the price , resulting in an increased transaction failure rate . entering\nan appropriate price into the price delta field and then pressing the price\nmovement button means that fewer ( but larger ) price movements are necessary ,\nimproving overall system response and reducing customer transaction failure\nrate .\nyou may also notice a new addition to the product bar prices - a new field\nfor offset to last trade . this allows you to update the offset for products\nwhich have offset to last trade selected from the product properties menu .\nsorting / selecting\nthe new version of enrononline provide significant additional sorting\nfunctionality over the old . you can now choose any field heading ( type ,\nlocation , reference period , etc . ) and sort by that item . you can do multiple\nsorts by holding down the shift key . example : if you select type and then\nlocation while holding the shift key , you will see your products sorted first\nby product type and then within each product type , by location ( in\nalphabetical order ) .\nif you right click on the product menu , you can choose from the same sort\ncriteria , plus you can select \" sort by web order \" , which allows you to see\nyour products in the same order as they would appear to a customer on the\nwebsite ( note however , that a customer on the website might be also seeing a\nnumber of products in addition to the ones you are managing ) .\nwhen you select products , you can drag your mouse while holding down the left\nmouse button as always , but now you can also hold down the key while\nmaking your selections . this allows you to highlight products which are not\nnecessarily adjacent to one another .\nparent products and f / x products\none of the differences in the way that the new version works is in its\ntreatment of how parent products are displayed . the old version showed the\ntype of link associated with the parent in the product bar ( to the left of\nthe main product bar update buttons above the products tabs ) . the new version\ndoes not show the type of link . this is because the new version allows for\nmore than one type of link on each parent product .\nsome traders may notice that their products which have f / x links are now\nidentified with a stylised \" fx \" in the product list . this is to enable easy\nidentification of products which are run as a foreign exchange link to the\nparent , rather than managed individually .\nassistance\nas always , if you have any problems with any enrononline functionality ,\nplease contact the 24 hour help desk ( houston : 713 853 4357 , london : + 44 ( 0 )\n20 7783 7783 , australia : + 61 2 9229 2300 ) .\ngeneral feedback\nif you have any comments on the new functionality , or suggestions for further\nfunctionality , please call david forster on 713 853 1861 . if you had\npreviously suggested new functionality which didn ' t make it into this\nrelease , rest assured that you have not been forgotten - we are working hard\nto improve all elements of enrononline and will try to incorporate your\nrequests into the next release of the enrononline stack manager .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.678+0000", "entityId": 2710, "properties": {"text": "Subject: kingwood cove - $ 10 before 10 am !\nonly $ 10 for a 1 / 2 cart & green fee !\nwednesday & friday mornings before 10 am .\nprint out and present this email offer the day of play .\nnot valid with any other offers .\nthanks for being a part of our e - mail offers club !\n* * * * * * this offer expires august 31 , 2000 * * * * * * * *\nplaying partner ' s email addresses : ( optional )\nplayer 1 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 2 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 3 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 4 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nvisit : http : / / www . ttimeonline . com / index . html\nto view a complete listing of our online\n* * * * * passlink golf promotions ! * * * *\n- - -\nyou are currently subscribed to 90027 - members as : dfarmer @ enron . com\nto unsubscribe send a blank email to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.682+0000", "entityId": 2711, "properties": {"text": "Subject: re : cornhusker\njohn ,\ni did some preliminary work on your question concerning oil use at the\ncleburne , texas plant . see the attached document .\ni just answered all of your questions in an effort to save time . i ' m still\nsummarizing the procedures that are used for gas nominations . call me with\nany questions .\nmichael mazowita\nwhite pine energy , llc\nphone : ( 248 ) 442 - 4823\nfax : ( 248 ) 477 - 5729\ncell : ( 248 ) 345 - 4002\njohn griffith\n07 / 17 / 2000 10 : 03 am\nto : garrick hill / hou / ect @ ect , mike mazowita / corp / enron @ enron\ncc : eric moon / hou / ect @ ect\nsubject : cornhusker\nrick and mike ,\nwhen you talk to plant manager i have a few other questions regarding the\nfuel oil .\n1 ) what exact oil can they burn ? what sulphur content ?\n2 ) how much oil is in storage at the plant ?\n3 ) what is the storage capacity at the plant ?\n4 ) are there any oil contracts at this time ?\n5 ) how do they normally buy oil ?\n6 ) how is the oil transported to the plant ?\n7 ) are there any transport contracts for oil ?\n8 ) what is the efficiency for the oil at the plant ?\n9 ) what are the costs to burn oil ? any downtime due to this ? any costs to\nswitch ? time it takes to switch ?\n10 ) what are the decisions that the plant goes through to decide to switch ?\n11 ) what are the emission concerns ? are they long emission credits ? do\nthey get credits annually ? how many ?\n12 ) does brazos have any control over burning oil vs . burning natural gas ?\n13 ) can the plant run totally on oil ?\n14 ) any costs to switch back to natural gas ?\nplease let me know if you need anything from me . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.687+0000", "entityId": 2712, "properties": {"text": "Subject: enron / hpl actuals for july 21 , 2000\n( see attached file : hplo 721 . xls )\n- hplo 721 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.693+0000", "entityId": 2713, "properties": {"text": "Subject: enron / hpl actuals for july 19 , 2000\nteco tap 20 . 000 / enron ; 100 . 000 / iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.698+0000", "entityId": 2714, "properties": {"text": "Subject: re : cornhusker\njohn ,\ni did some preliminary work on your question concerning oil use at the\ncleburne , texas plant . see the attached document .\ni just answered all of your questions in an effort to save time . i ' m still\nsummarizing the procedures that are used for gas nominations . call me with\nany questions .\nmichael mazowita\nwhite pine energy , llc\nphone : ( 248 ) 442 - 4823\nfax : ( 248 ) 477 - 5729\ncell : ( 248 ) 345 - 4002\njohn griffith\n07 / 17 / 2000 10 : 03 am\nto : garrick hill / hou / ect @ ect , mike mazowita / corp / enron @ enron\ncc : eric moon / hou / ect @ ect\nsubject : cornhusker\nrick and mike ,\nwhen you talk to plant manager i have a few other questions regarding the\nfuel oil .\n1 ) what exact oil can they burn ? what sulphur content ?\n2 ) how much oil is in storage at the plant ?\n3 ) what is the storage capacity at the plant ?\n4 ) are there any oil contracts at this time ?\n5 ) how do they normally buy oil ?\n6 ) how is the oil transported to the plant ?\n7 ) are there any transport contracts for oil ?\n8 ) what is the efficiency for the oil at the plant ?\n9 ) what are the costs to burn oil ? any downtime due to this ? any costs to\nswitch ? time it takes to switch ?\n10 ) what are the decisions that the plant goes through to decide to switch ?\n11 ) what are the emission concerns ? are they long emission credits ? do\nthey get credits annually ? how many ?\n12 ) does brazos have any control over burning oil vs . burning natural gas ?\n13 ) can the plant run totally on oil ?\n14 ) any costs to switch back to natural gas ?\nplease let me know if you need anything from me . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.703+0000", "entityId": 2715, "properties": {"text": "Subject: re : august 2000 estimated availabilities\nfrom : victor lamadrid @ ect 07 / 21 / 2000 07 : 53 am\nto : carlos j rodriguez / hou / ect @ ect , george smith / hou / ect @ ect , randall l\ngay / hou / ect @ ect , pat clynes / corp / enron @ enron , patti sullivan / hou / ect @ ect\ncc : cindy vachuska / hou / ect @ ect , clarissa garcia / hou / ect @ ect , meredith\nmitchell / hou / ect @ ect , cynthia franklin / corp / enron @ enron , molly\nsumrow / hou / ect @ ect , victoria versen / hou / ect @ ect , alvin\nthompson / corp / enron @ enron , angie zeman / corp / enron @ enron , jesse\nvillarreal / hou / ect @ ect , joann collins / corp / enron @ enron , robert\nallwein / hou / ect @ ect , christina sanchez / corp / enron @ enron , joe a\ncasas / hou / ect @ ect , edward terry / hou / ect @ ect , tricia bowen / hou / ect @ ect ,\nbeverly beaty / hou / ect @ ect , steve gillespie / corp / enron @ enron , scott\nloving / na / enron @ enron , sabra l dinari / hou / ect @ ect\nsubject : august 2000 estimated availabilities\ndevon estimates for august . please forward to your people .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 07 / 21 / 2000\n07 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 07 / 20 / 2000 04 : 58 : 46 pm\nto : ,\ncc :\nsubject : august 2000 estimated availabilities\nbeverly ,\nthe attached shows devon ' s estimated availabilities for the month of august\n2000 . i will provide updates as they are received .\nsteve\n- enronavailso 800 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.707+0000", "entityId": 2716, "properties": {"text": "Subject: 2 nd interview schedule for liz bellamy\nattached please find the interview packet for the above - referenced person\nincluding resume . the interview will happen monday july 24 , 2000 . please\nprint all three documents for your hard copies . if you have any questions ,\nor conflicts of schedule , please do not hesitate to contact me .\nsean grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.712+0000", "entityId": 2717, "properties": {"text": "Subject: interview schedule for brent trefz\nattached please find the interview packet for the above - referenced person\nincluding resume . the interview will happen monday july 24 , 2000 . please\nprint all three documents for your hard copies . if you have any questions ,\nor conflicts of schedule , please do not hesitate to contact me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.717+0000", "entityId": 2718, "properties": {"text": "Subject: hpl nom for july 22 , 2000\n( see attached file : hplo 722 . xls )\n- hplo 722 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.721+0000", "entityId": 2719, "properties": {"text": "Subject: enron / hpl actuals for july 20 , 2000\nteco tap 10 . 000 / enron ; 60 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.726+0000", "entityId": 2720, "properties": {"text": "Subject: final cp name change / merger list 7 / 00\nthis is the final list of counterparty name change and mergers for 7 / 00 .\nthe changes will be made in the global counterparty system as follows :\nname changes - the current legal name and erms shortname will be overlayed on\nmonday , 7 / 24 , in the afternoon .\nwe want to update the system before bid week begins on tuesday . if anyone has\na problem with the erms shortnames being changed on monday , please notify us\nimmediately .\nmergers / business changes - the old record will be inactivated on 8 / 1 / 00 .\nmarilyn colbert 3 6517\ncheryl johnson 3 3103", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.731+0000", "entityId": 2721, "properties": {"text": "Subject: re : saudi arabia\ni spoke to mr . maldinado this morning and it doesn ' t look good . he claims he\nhas a connection to the minister of \" energy \" who will allocate gas to him . i\nasked where would the gas be delivered , and he said anywhere you want it .\nshort term or long term ? again , anything you want , but probably long term is\nbetter .\ni pointed out that there isn ' t an energy minister in saudi and would he know\nthe name of the minister whose giving him the gas ? he stumbled and couldn ' t\nremember the name .\nfinally he said \" what do you have to lose ? just send me a letter requesting\ngas with the specs , location and duration \" and he ' ll do his best to get it .\nif you want to try it rob , he ' s all yours . his fax number is 562 / 866 - 7368 ,\naddress 16276 grand avenue , bellflower , ca 90706 .\nregards ,\nsamir\nrob stewart\n07 / 20 / 2000 02 : 47 am\nto : samir salama / enron _ development @ enron _ development\ncc :\nsubject : saudi arabia\nthis sounds right up your street\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rob stewart / enron _ development on\n07 / 20 / 2000 02 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer @ ect\n06 / 15 / 2000 03 : 05 pm\nto : rob stewart / eu / enron @ enron\ncc :\nsubject : saudi arabia\nrob ,\ni got your name from doug leach . he thought that you would be the person to\ntalk to about this .\ni got a call last night from rudolph maldonado . ( the operator forwarded him\nour way . ) he stated that he has some natural gas to sell in saudi arabia .\nhis number is 562 - 866 - 1755 . could you give him a call and check this out ? i\ntold him that i would find someone that he could discuss this with .\ni can be reached at 3 - 6905 if you have any questions .\ndaren farmer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.736+0000", "entityId": 2722, "properties": {"text": "Subject: meoh plant status\nthe methanol plant is still on target to begin making spec methanol on\nfriday , july 28 . the plant may start taking some natural gas late tuesday ,\njuly 25 .\nbecause of dredging at the oxy dock , no barges can be loaded july 31 to\naugust 3 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.744+0000", "entityId": 2723, "properties": {"text": "Subject: eol deals\nreminder :\nall eol deals at katy must stay at the tailgate of the exxon katy plant\n# 4132 . they can not move between\nother katy points . the sitara deal tickets must not be changed on eol deal\ntickets . this also includes our\npool meters . meters 7342 , 7349 , 7350 , 7351 .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.750+0000", "entityId": 2724, "properties": {"text": "Subject: deal # 339693 eol waha\nmary ,\nplease be careful of eol deals . i got a call on friday evening about this\ndeal being changed but you had already left .\nit is a deal with aquila and the volume was changed . please check on this\nand communicate all changes to daren .\nthanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.756+0000", "entityId": 2725, "properties": {"text": "Subject: re : deal # 339693 eol waha\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 07 / 24 / 2000 12 : 47\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman\n07 / 24 / 2000 12 : 46 pm\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : re : deal # 339693 eol waha\naquila split the volume between two points , that is why the deal changed .\nthe total volume was still correct . i just found out today , from stacie ,\nthat a buy on eol needs to be on the header and come from a pgev hub or title\ntracking agreement . i had previously been under the impression that\nwhatever pipeline the customer wanted , buy or sell , was fine with us .\nhowever , keeping the purchases on hub agmts . will save enron\n$ . 0025 / transaction and push all imbalances and fees to the supplier .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.760+0000", "entityId": 2726, "properties": {"text": "Subject: out of the office\ni will be out of the office this afternoon , beginning at 1 p . m . should\nanyone receive a call or question regarding the pgev hub , please call mark\nmccoy at extension 33396 . thank you .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.765+0000", "entityId": 2727, "properties": {"text": "Subject: re : southern\ndarren :\ni zeroed the path on deal 284599 , and left 4 , 500 pathed on 339604 at meter\n4132 , and pathed 5 , 000 for both deals 341801 & 341808 at meter 67 for 7 / 24\nonly . i also notified betsy boring / southern about the situation and\nexplained to her that any deal they make on eol cannot be changed in any way ,\nhowever we would move the gas for the 24 th only because we ok ' d the change\nbefore we realized it was an eol deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.770+0000", "entityId": 2728, "properties": {"text": "Subject: re : deal # 339693 eol waha\nmary poorman\n07 / 24 / 2000 12 : 46 pm\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : re : deal # 339693 eol waha\naquila split the volume between two points , that is why the deal changed .\nthe total volume was still correct . i just found out today , from stacie ,\nthat a buy on eol needs to be on the header and come from a pgev hub or title\ntracking agreement . i had previously been under the impression that\nwhatever pipeline the customer wanted , buy or sell , was fine with us .\nhowever , keeping the purchases on hub agmts . will save enron\n$ . 0025 / transaction and push all imbalances and fees to the supplier .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.775+0000", "entityId": 2729, "properties": {"text": "Subject: july 25 , 2000\n- - - - - forwarded by chad w . cass / gcs / cec / pec on 07 / 24 / 00 11 : 27 am - - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | sharon beemer |\n| | |\n| | 07 / 24 / 00 |\n| | 10 : 39 am |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| |\n| to : chad w .\ncass / gcs / cec / pec @ pec |\n|\ncc : |\n| subject : july 25 ,\n2000 |\nsent on behalf of bruce mcmills ( 713 ) 627 - 6467\n60 k off hpl @ eastrans effective july 25 , 2000\nredelivered @\nmobil beaumont 12200\nfcv 7800\nhpl cw 25000\ntenn sabine 15000\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.779+0000", "entityId": 2730, "properties": {"text": "Subject: august 2000 iferc & sds noms .\nattached is the august 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuels ( previously tufco ) and hpl resources co . ,\n( txu fuels contr . # 3949 ) , as well as our august 2000 nomination for takes\nunder\nthe gas sales and purchase contract between txu fuels and sds . please advise\nshould you have any questions concerning the attached .\nthanks ,\ncharlie\n( see attached file : minhplno 0 . xls ) ( see attached file : sdsnom . xls )\n- minhplno 0 . xls\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.784+0000", "entityId": 2731, "properties": {"text": "Subject: enron / hpl actuals for july 21 - 23 , 2000\njuly 21 , 2000\nteco tap 40 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron\njuly 22 , 2000\nteco tap 40 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron\njuly 23 , 2000\nteco tap 50 . 000 / hpl iferc ; 10 . 000 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.788+0000", "entityId": 2732, "properties": {"text": "Subject: settelement request for an equistar \" buyback \" ticket with ena as\nshipper\nit ' s been created - sitara # 343421\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 07 / 25 / 2000\n10 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 25 / 2000 10 : 47 am\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 25 / 2000\n10 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 25 / 2000 10 : 29 am\nto : lucy ortiz / hou / ect @ ect , craig breslau / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , lee l papayoti / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ni spoke to anita this morning and she suggested i forward you this request\nto set up a sitara ticket for an \" ena \" deal\nticket to handle the buyback on meters 981373 & 981384 that pretain to\nequistar for june and july 2000 .\nequistar invoice can not be drafted without this deal ticket .\nthis is an urgent request for settlement to finalize equistar invoice for\njune 2000 activity .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 25 / 2000\n10 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 14 / 2000 10 : 27 am\nto : craig breslau / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , lee l papayoti / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\nlee ask me to forward this note - mail to you . settlement is trying to close\ntoday thus , it is urgent that i get this resolved asap .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 14 / 2000\n10 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 14 / 2000 09 : 29 am\nto : lee l papayoti / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ndaren wanted me to make this request to you for an equistar buyback ticket\non enron north america { ena } .\nequistar has nominated activity on ena for june and july 2000 production .\nsettlement seems to think a buyback ticket is necessary to properly account\nfor equistar ' s monthly activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.793+0000", "entityId": 2733, "properties": {"text": "Subject: albert trevino 4 - 12 , tejas pipeline , trevino plant gas sales\nfyi . . . . . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 25 / 2000 07 : 57\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" evelyn daniel \"\n07 / 24 / 2000 04 : 53 pm\nto :\ncc :\nsubject : albert trevino 4 - 12 , tejas pipeline , trevino plant gas sales\nhello :\nsteve holmes said i should e - mail you to let you know the above well\navailability will change from 2 mmbtu / d to 8000 mmbtu / d effective 7 / 26 / 00 .\nit was in the process of fractionation .\nplease call me at ( 405 ) 552 - 4585 if you have any questions .\nthanks .\nevelyn daniel\ndevon energy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.797+0000", "entityId": 2734, "properties": {"text": "Subject: hpl nomination changes for july 25 and july 26\njuly 26 final nom\n- - - 0 - - - inlet hpl @ eastrans\n7 , 800 fcv / hpl ( incremental sale to hpl ) please call bruce mcmills at\n( 713 ) 627 - 6467\n- 0 - tenn / hpl\n- 0 - mobile beaumont / hpl\n- 0 - hpl cartwheel\n7 , 800 total gas\nplease note , the excess volumes for july 26 will be considered an incremental\nsale .\nif you have any questions , please call bruce mcmills or chad cass at ( 713 )\n627 - 6202 .\nthanks ,\nchad cass", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.802+0000", "entityId": 2735, "properties": {"text": "Subject: hpl nomination changes for july 25 and july 26\neffective immediately !\ndue to compressor problems , the nominations for the hpl deal have changed :\njuly 25\n10 , 000 inlet hpl @ eastrans\n7 , 800 fcv / hpl\n15 , 000 tenn / hpl\n2 , 500 mobile beaumont / hpl ( please note 2500 is physical flow for first 5\nhours of original 12 , 200 nom )\n0 hpl cartwheel\nover redelivery requirements\njuly 26 ( this is the plan until 5 : 00 pm today )\n20 , 000 inlet hpl @ eastrans\n7 , 800 fcv / hpl\n0 tenn / hpl\n12 , 200 mobile beaumont / hpl ( please note 2500 is physical flow for first\n5\nhours of original 12 , 200 nom )\n0 hpl cartwheel\nplease note , the excess volumes for july 25 will be considered\nover - redeliveries , not incremental sales .\nif you have any questions , please call bruce mcmills at ( 713 ) 627 - 6467 or chad\ncass at ( 713 ) 627 - 6202 .\nthanks ,\nchad cass", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.807+0000", "entityId": 2736, "properties": {"text": "Subject: hpl july 26 , 2000\n20 k off hpl @ eastrans effective july 26 , 2000\nredelivered @\nmobil beaumont 12200\nfcv 7800\ntotal 20000\nthanks ,\nchad cass", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.811+0000", "entityId": 2737, "properties": {"text": "Subject: revision # 1 - hpl nom for july 25 , 2000\n( see attached file : hplo 725 . xls )\n- hplo 725 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.816+0000", "entityId": 2738, "properties": {"text": "Subject: hpl nom for july 26 , 2000\n( see attached file : hplo 726 . xls )\n- hplo 726 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.821+0000", "entityId": 2739, "properties": {"text": "Subject: enron / hpl actuals for july 24 , 2000\nteco tap 40 . 000 / enron ; 50 . 000 / hpl iferc\nls hpl lsk ic 2 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.826+0000", "entityId": 2740, "properties": {"text": "Subject: potential list fo 8 / 00\ndaren :\nper vance ' s discussion ' s with the deal makers , the following are potential\ndeals for 8 / 00 not included in vance ' s number :\naspect - darrington - mid month - 2500 mcfd - gas daily\nhelmrich and payne - ballard # 1 - mid month - 2000 to 3000 mcfd - gas daily\nlet us know if you need any additional information .\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.831+0000", "entityId": 2741, "properties": {"text": "Subject: august wellhead production estimate\ndaren ,\nhere it is . i thought vance had already given this to you .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 25 / 2000 01 : 25\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n07 / 24 / 2000 09 : 43 am\nto : robert cotten / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : august wellhead production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\naugust . please be advised that this is a preliminary estimate as to this\ndate , we have received only a few noms for august . i will update you with\nany revisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.836+0000", "entityId": 2742, "properties": {"text": "Subject: natural gas nomination for 08 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for august 2000 :\n36 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for august 2000 :\n9 , 500 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.840+0000", "entityId": 2743, "properties": {"text": "Subject: settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ni spoke to anita this morning and she suggested i forward you this request\nto set up a sitara ticket for an \" ena \" deal\nticket to handle the buyback on meters 981373 & 981384 that pretain to\nequistar for june and july 2000 .\nequistar invoice can not be drafted without this deal ticket .\nthis is an urgent request for settlement to finalize equistar invoice for\njune 2000 activity .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 25 / 2000\n10 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 14 / 2000 10 : 27 am\nto : craig breslau / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , lee l papayoti / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\nlee ask me to forward this note - mail to you . settlement is trying to close\ntoday thus , it is urgent that i get this resolved asap .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 14 / 2000\n10 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 07 / 14 / 2000 09 : 29 am\nto : lee l papayoti / hou / ect @ ect\ncc : anita luong / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : settelement request for an equistar \" buyback \" ticket with ena as\nshipper\ndaren wanted me to make this request to you for an equistar buyback ticket\non enron north america { ena } .\nequistar has nominated activity on ena for june and july 2000 production .\nsettlement seems to think a buyback ticket is necessary to properly account\nfor equistar ' s monthly activity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.845+0000", "entityId": 2744, "properties": {"text": "Subject: august 2000 estimated availabilities\ni was on vacation last week and victor sent this out , but apparently not to\neveryone\nwho needed it . some of you have called looking for the numbers , so i ' m\nsending it again .\nplease e - mail me and let me know if you do not need this information .\nsteve at devon told\nme this morning that he is working on revisions this afternoon .\nthanks ,\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 26 / 2000 02 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : victor lamadrid 07 / 21 / 2000 07 : 53 am\nto : carlos j rodriguez / hou / ect @ ect , george smith / hou / ect @ ect , randall l\ngay / hou / ect @ ect , pat clynes / corp / enron @ enron , patti sullivan / hou / ect @ ect\ncc : cindy vachuska / hou / ect @ ect , clarissa garcia / hou / ect @ ect , meredith\nmitchell / hou / ect @ ect , cynthia franklin / corp / enron @ enron , molly\nsumrow / hou / ect @ ect , victoria versen / hou / ect @ ect , alvin\nthompson / corp / enron @ enron , angie zeman / corp / enron @ enron , jesse\nvillarreal / hou / ect @ ect , joann collins / corp / enron @ enron , robert\nallwein / hou / ect @ ect , christina sanchez / corp / enron @ enron , joe a\ncasas / hou / ect @ ect , edward terry / hou / ect @ ect , tricia bowen / hou / ect @ ect ,\nbeverly beaty / hou / ect @ ect , steve gillespie / corp / enron @ enron , scott\nloving / na / enron @ enron , sabra l dinari / hou / ect @ ect\nsubject : august 2000 estimated availabilities\ndevon estimates for august . please forward to your people .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 07 / 21 / 2000\n07 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 07 / 20 / 2000 04 : 58 : 46 pm\nto : ,\ncc :\nsubject : august 2000 estimated availabilities\nbeverly ,\nthe attached shows devon ' s estimated availabilities for the month of august\n2000 . i will provide updates as they are received .\nsteve\n- enronavailso 800 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.853+0000", "entityId": 2745, "properties": {"text": "Subject: eastrans - lst of month nomination - eff 8 / 1 / 2000\nthis si to nominate 32 , 800 mmbtu into eastrans eff . 8 / 1 / 2000 .\nredeliveries will be :\n7 , 800 from fuels cotton valley\n25 , 000 into pg & e\ndetm will sell 2 , 880 mmbtu / d", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.860+0000", "entityId": 2746, "properties": {"text": "Subject: gas day july 27 , 2000\nsent on behalf of bruce mcmills\neffective july 27 , 2000 :\n20 , 000 inlet @ hpl / eastrans\nredelivered :\nfcv 7 , 800\nhpl cw 12 , 200\nif you have any questions please call bruce mcmills at ( 713 ) 627 - 6467 .\nthanks ,\nchad cass\n( 713 ) 627 - 6202", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.865+0000", "entityId": 2747, "properties": {"text": "Subject: take five : 50 % off up to 5 nights with wyndham\ndear traveler ,\nwhat will it take to get you to slow down , take a break ,\nand leave the rat race for a little while ? how about a\ndeal that \u000f ' s just too good to pass up ?\nwell , here it is . right now when you book a stay at a\nwyndham hotel or resort on expedia . comc , you ' ll get 50 % off\nyour next stay \u000f - good for up to five nights ! * so now you \u000f ' ll\nenjoy your vacation even more , knowing you have another one\ncoming . and with this deal , you can \u000f ' t afford not to take\nanother vacation !\nwhether you ' re planning a vacation to the beach , the\ncountry , or the city , log on to expedia . com today and we ' ll\nhelp you - - along with our partner wyndham hotels and\nresorts - - plan the right trip .\nclick here to book your stay with wyndham :\nhttp : / / redir . cqo . net / r / default . asp\nexpedia . com travel team\ndon ' t just travel . travel right . \u0012 \u0012 t\nps . here ' s a tip for you business travelers : turn your\nnext business trip into a vacation . all you have to do is\nstay at least one night at any wyndham hotel or resort on\nyour next business trip , and your next vacation could be\n50 % off . and you thought you ' d never get excited over\nanother business trip again !\n* offer valid on bookings made on expedia . com between july\n21 and august 31 , 2000 , for any wyndham hotels and resorts .\nstay must occur july 21 through october 9 , 2000 . award is\nfor 50 % off a future stay at wyndham locations with check\nin between november 23 , 2000 , and april 22 , 2001 .\n50 % off certificates will be mailed to the address on the\ncredit card given at the time of the first booking .\nreservations for award redemption must be made between\noctober 1 , 2000 through april 22 , 2001 . award valid for\nmaximum of five consecutive nights . bookings made through\nexpedia . com hotel price matcher \u0012 \u0012 t are ineligible .\neach award valid for only one room during stay . award\nsubject to availability and capacity controls . additional\nrestrictions apply . for more details , go here :\nhttp : / / redir . cqo . net / r / default . asp\nabout this mail : you are receiving this e - mail because you\nare a registered member of expedia . com . your expediac\nmembership is free and your privacy and credit card\nsecurity are guaranteed .\nif you do not wish to receive any further promotional\ne - mails from us , please reply to this mail\nwith \" unsubscribe \" in the subject line .\nquestions about your privacy ? read our privacy statement :\nhttp : / / redir . cqo . net / r / default . asp\nquestions about your credit card security ?\nread our credit card guarantee statement :\nhttp : / / redir . cqo . net / r / default . asp\nif you have other questions , visit the expedia . com service\ncenter :\nhttp : / / redir . cqo . net / r / default . asp\napologies , but we cannot reply to responses to this\ne - mail . if you have questions or want to give feedback ,\nclick here :\nhttp : / / redir . cqo . net / r / default . asp\n, 2000 expedia , inc . all rights reserved .\nexpedia , expedia . com , and the expedia . com logo are either\nregistered trademarks or trademarks of expedia inc . in the\nu . s . , canada and other countries . other products and\ncompany names mentioned herein may be trademarks of their\nrespective owners . click here for expedia terms of use :\nhttp : / / redir . cqo . net / r / default . asp\nthis email was sent to : dfarmer @ ect . enron . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.870+0000", "entityId": 2748, "properties": {"text": "Subject: hpl nom for july 27 , 2000\n( see attached file : hplo 727 . xls )\n- hplo 727 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.875+0000", "entityId": 2749, "properties": {"text": "Subject: enron / hpl actuals for july 25 , 2000\nteco tap 30 . 000 / enron ; 90 . 000 / hpl iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.880+0000", "entityId": 2750, "properties": {"text": "Subject: nom\n-\n- hpl - aug . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.885+0000", "entityId": 2751, "properties": {"text": "Subject: extend deal\ni have flow at meter 989602 for july without a deal to allocate to . for\njune production , deal number 276494 was at the meter . please either extend\nthe deal or create a ticket . if you have any questions , please call me at\next . 35251 .\nthank you ,\nmary jane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.889+0000", "entityId": 2752, "properties": {"text": "Subject: 6 / 00 production for lower colorado river authority , sitara # 283939\ndaren ,\nmary gregg from lcra said that sitara # 283939 should have been for\n$ 4 . 50 / mmbtu . currently in deal manager - sitara , it is at $ 2 . 50 and that is\nthe price that i billed them at . please verify the price and let me know\nwhat you find out .\nif you have any question , please , call me .\nthank you in advance for your help .\nnicole\n3 - 9544", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.894+0000", "entityId": 2753, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.898+0000", "entityId": 2754, "properties": {"text": "Subject: re : august 2000 estimated availabilities\nco - owners volumes included , plus please note he will be sending revisions\nthis afternoon for\nall other pipes .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 27 / 2000 02 : 09\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n07 / 27 / 2000 02 : 04 pm\nto :\ncc :\nsubject : re : august 2000 estimated availabilities\nattached are the co - owners volumes . i will furnish revised devon volumes\nthis afternoon . i noticed you have a pvr of 10 % on the american central\nvolumes . chad cass at duke says this should be closer to 22 % . the 10 %\napplies to mcf .\nthanks ,\nsteve\n> > > 07 / 27 / 00 01 : 52 pm > > >\ngood afternoon . . . .\ndo you have any co - owners volumes yet ? or any revisions from the previous\ne - mail ?\nthanks ,\nbeverly\n- 0800 co - owners volumes to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.903+0000", "entityId": 2755, "properties": {"text": "Subject: hpl nom for july 28 , 2000 - - one day only !\ncheck that . . . . . . . . please flow at a rate of 30 , 000 for 6 . 2 hours to reach the\n7800 mmbtu\nthanks ,\nchad cass\n- - - - - forwarded by chad w . cass / gcs / cec / pec on 07 / 27 / 00 03 : 18 pm - - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | chad w . cass |\n| | |\n| | 07 / 27 / 00 |\n| | 03 : 16 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| |\n| to : briley @ enron . com , bruce\nmcmills / ftworth / pefs / pec @ pec , |\n| carlos . j . rodriguez @ enron . com , chad w .\ncass / gcs / cec / pec @ pec , |\n| dfarmer @ enron . com , john a . bretz / gcs / cec / pec @ pec , julia\na . |\n| urbanek / gcs / cec / pec @ pec , stacey . neuweiler @ enron . com ,\nsharon |\n| beemer / ftworth / pefs / pec @ pec , william e .\nspeckels / gcs / cec / pec @ pec , |\n| connie wester / easttexas / pefs / pec @ pec , michael\nr . |\n| cherry / easttexas / pefs / pec @ pec , darrel f .\nbane / easttexas / pefs / pec @ pec , |\n| randall l . reid / easttexas / pefs / pec @ pec ,\nraymond |\n|\nfranklin / easttexas / pefs / pec @ pec |\n|\ncc : |\n| subject : hpl nom for july 28 , 2000 - - one day only\n! |\neffective july 28 @ 9 : 00 am\n7 , 800 inlet @ hpl / eastrans interconnect ( flow rate of 20 , 000 for 9 . 4 hours )\n7 , 800 redelivered at fcv\nwe will be testing the compressor station tomorrow morning . please be advised\nif the\ncompressor cannot flow at a sustained volume it will be shut down and the\nremainder\nof the gas delivered at busby will be considered an \" incremental sale . \" if\nyou\nhave\nany questions please call me at ( 713 ) 627 - 6202 .\nthanks ,\nchad cass", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.907+0000", "entityId": 2756, "properties": {"text": "Subject: hpl nom for july 28 , 2000 - - one day only !\neffective july 28 @ 9 : 00 am\n7 , 800 inlet @ hpl / eastrans interconnect ( flow rate of 20 , 000 for 9 . 4 hours )\n7 , 800 redelivered at fcv\nwe will be testing the compressor station tomorrow morning . please be advised\nif the\ncompressor cannot flow at a sustained volume it will be shut down and the\nremainder\nof the gas delivered at busby will be considered an \" incremental sale . \" if\nyou\nhave\nany questions please call me at ( 713 ) 627 - 6202 .\nthanks ,\nchad cass", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.912+0000", "entityId": 2757, "properties": {"text": "Subject: fw : more megan pics\n?\n- - - - - original message - - - - -\nfrom : clay carbaugh [ mailto : clay @ ectisp . net ]\nsent : wednesday , july 26 , 2000 8 : 25 pm\nto : glover , rusty\nsubject : re : more megan pics\nsorry i did not fill you in . ? her name is megan elizabeth carbaugh and she\nwas born on sunday , july 23 rd at 1 : 30 pm . ? she weighed 7 lbs 9 oz and was 21\ninches long . ? she is doing fine and so is amy . ? i ' ll send you these\npictures . ? i think i missed you on the first go round .\n- - - - - original message - - - - -\nfrom : glover , rusty\nto : ' clay carbaugh '\nsent : wednesday , july 26 , 2000 4 : 11 pm\nsubject : re : more megan pics\ncongratulations ! ! ? is everyone doing ok ? ? ? when was she born ? ? give me some\nmore info .\n?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? rusty\n- - - - - original message - - - - -\nfrom : clay carbaugh [ mailto : clay @ ectisp . net ]\nsent : wednesday , july 26 , 2000 11 : 29 am\nto : wade dinkins ; victor tonya tish\nthemcmeans @ uswest . net ; teenagalva @ aol . com ; stacy . s . steen @ lowes . com ; shirley\nkubin ; glover , rusty ; rebecca lux family ; kyle ; krysta patterson ;\nkatherine ; john agee ; doc durbin ; debbie holmelin ; dan cynthia aunt ;\nbrian brenda bill audra\namy cate\nsubject : more megan pics\nhere are a couple more pics of the new baby .\n- meganl . jpg\n- megan 2 . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.916+0000", "entityId": 2758, "properties": {"text": "Subject: cleburne\ndaren & john ,\nsee the attached document regarding gas deliveries / nominations for the\ncleburne site . right now , i ' m planning to be in the houston office on\nthursday , august 3 , 2000 so we may be able to meet then . if there are any\nquestions , please call me for additional info .\nmichael mazowita\nphone : ( 248 ) 442 - 4823\ncell : ( 248 ) 345 - 4002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.921+0000", "entityId": 2759, "properties": {"text": "Subject: enron actual totals thru july 26 th\nami , , , , , ,\nthrough the 26 th , we reflect 1 , 052 , 500 / enron and 1 , 905 , 000 / iferc .\nplease advise if you agree to the above .\nthanks !\ntim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.925+0000", "entityId": 2760, "properties": {"text": "Subject: hpl nom for july 28 , 2000\n( see attached file : hplo 728 . xls )\n- hplo 728 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.930+0000", "entityId": 2761, "properties": {"text": "Subject: enron / hpl actuals for july 26 , 2000\nteco tap 30 . 000 / enron ; 90 . 000 / iferc\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.935+0000", "entityId": 2762, "properties": {"text": "Subject: cleburne\ndaren & john ,\nsee the attached document regarding gas deliveries / nominations for the\ncleburne site . right now , i ' m planning to be in the houston office on\nthursday , august 3 , 2000 so we may be able to meet then . if there are any\nquestions , please call me for additional info .\nmichael mazowita\nphone : ( 248 ) 442 - 4823\ncell : ( 248 ) 345 - 4002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.941+0000", "entityId": 2763, "properties": {"text": "Subject: revised availabilities effective 8 / 01 / 00\ndevon says these will be finals for 8 / 1 .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 07 / 28 / 2000 07 : 59\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n07 / 27 / 2000 05 : 20 pm\nto :\ncc :\nsubject : revised availabilities effective 8 / 01 / 00\nbeverly ,\nthe attached should be the final revision for august . there is a change on\nthe mid - continent tab ( small increase ) as well as the main tab . please let\nme know of any questions you have .\nthanks ,\nsteve\n- enronavailso 800 revl . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.946+0000", "entityId": 2764, "properties": {"text": "Subject: eastrans nomination - 7 / 29 and following\nthis is to nominate 32 , 800 mmbtu for 7 / 28 into eastrans .\nredeliveries are :\n7 , 800 mmbtu into hpl from fcv .\n25 , 000 at mobil beaumont .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.953+0000", "entityId": 2765, "properties": {"text": "Subject: re : centana mobil april 00\npanenergy purchase : deal # 231758 .\ngas in the amount of 271 mmbtus for april lst was purchased from panenergy on\ndeal # 231758 .\nhowever , scheduling has indicated that they have no sale for that gas on day\none and as a result , it is not pathed in the system .\ncould you please review this item and see if it should or shouldn ' t be a sale\nso that scheduling can either path april lst or i can dispute the volume\nbeing billed to us by pan energy .\nthis is part of pan energy ' s exchange deal .\nkatherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 07 / 28 / 2000\n12 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos j rodriguez @ ect\n07 / 21 / 2000 09 : 37 am\nto : katherine herrera / corp / enron @ enron\ncc : thu nguyen / hou / ect @ ect , kristen j hanson / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : re : centana mobil april 00\nkatherine\nas i told thu before ( see below ) , i did not see any volumes for that deal\nin 4 / 00 . i think this volume is some residue that flow from the last day in\nmarch and probably should be allocated to that month . i dont show a deal to\npurchase or sell that gas in april . if you have any more questions please let\nme know , thanks .\ncarlos\nkatherine herrera @ enron\n07 / 20 / 2000 03 : 50 pm\nto : carlos j rodriguez / hou / ect @ ect\ncc : thu nguyen / hou / ect @ ect , kristen j hanson / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : re : centana mobil april 00\ndeal # 231758\nthis brokered gas in the amount of 271 mmbtus for april lst was purchased\nfrom panenergy on deal # 231758\ncould you please review this item and see if it should be pathed , so that i\nmay pay pan energy for the gas in question ?\nkatherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n07 / 20 / 2000 03 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen @ ect 07 / 20 / 2000 03 : 38 pm\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : centana mobil april 00\nkatherine ,\nthis is a brokered deal ( buy deal 231758 and sell deal 93472 ) . this first\nday was not pathed , that ' s why you are missing volume of 271 . per carlos\n( see below ) the deal was not for day one .\nthu\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu nguyen / hou / ect on 07 / 20 / 2000 03 : 34 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu nguyen on 05 / 11 / 2000 04 : 18 pm\nto : carlos j rodriguez / hou / ect @ ect\ncc :\nsubject : re : centana mobil april 00\ncarlos ,\ni don ' t think i can allocate april ' s volume to march production . could you\nplease extend the deal to april 1 so that i can allocate it . thanks\nthu\ncarlos j rodriguez\n05 / 11 / 2000 08 : 34 am\nto : thu nguyen / hou / ect @ ect\ncc : carlos j rodriguez / hou / ect @ ect\nsubject : re : centana mobil april 00\nthu , i did not see any volumes for that deal in 4 / 00 . i think this volume is\nsome residue that flow from the last day in march and probably should be\nallocated to that month . if you have any more questions please let me know ,\nthanks .\ncarlos 3 - 6673\nfrom : thu nguyen 05 / 10 / 2000 09 : 31 am\nto : carlos j rodriguez / hou / ect @ ect\ncc : kyle r lilly / hou / ect @ ect\nsubject : centana mobil april 00\ncarlos ,\nthere is flow os 271 for 04 / 01 / 00 . deal 93472 was not path for the same\nday . could you please let me know what needs to be done .\nthu\n3 - 7159", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.960+0000", "entityId": 2766, "properties": {"text": "Subject: hpl nom for july 29 , 2000\n( see attached file : hplo 729 . xls )\n- hplo 729 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.966+0000", "entityId": 2767, "properties": {"text": "Subject: enron / hpl actuals for july 27 , 2000\nteco tap 25 . 000 / enron ; 48 . 750 / hpl iferc\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.970+0000", "entityId": 2768, "properties": {"text": "Subject: re : august spot tickets\nvance ,\ndeal # 348777 has been created and entered in sitara for duke energy trading\n& marketing , l . l . c .\nbob\nvance l taylor\n07 / 28 / 2000 03 : 09 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : august spot tickets\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of august . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price\nduke energy trading & marketing 6347 200 mmbtu / d 85 % if / hsc\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 07 / 28 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n07 / 28 / 2000 09 : 33 am\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , melissa\ngraves / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\nsubject : august spot tickets\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of august . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price\nwhiting petroleum corp 6523 200 mmbtu / d 91 % if / hsc\nengage energy us , lp 5923 775 mmbtu / d 100 % if / hsc less $ 0 . 24\nengage energy us , lp 5848 240 mmbtu / d 100 % if / hsc less $ 0 . 24\nswift energy 2630 21 mmbtu / d 90 % if / hsc less $ 0 . 258\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.975+0000", "entityId": 2769, "properties": {"text": "Subject: re : new production - sitara deals needed\nvance ,\ndeal # 348760 has been created and entered in sitara for winn exploration .\nbob\nvance l taylor\n07 / 28 / 2000 01 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , susan smith / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : new production - sitara deals needed\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period\nhesco gathering oil co 9835 600 mmbtu / d 96 % gas daily less $ 0 . 14\n6 / 10 - 7 / 31\nsamson lone star limited 9845 3000 mmbtu / d 100 % gas daily less $ 0 . 10 7 / 21 -\n7 / 31\nwinn exploration co . , inc . 9847 800 mmbtu / d 100 % gas daily less $ 0 . 13 7 / 25\n- 7 / 31\n( for fuel use less 3 . 35 % of del vols )\nfyi , susan has created and submitted committed reserves firm tickets for the\nremaining term of the deal beginning with the month of august . additionally ,\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.979+0000", "entityId": 2770, "properties": {"text": "Subject: re : new production - sitara deals needed\nvance ,\ndeals # 348725 ( 6 / 10 - 6 / 30 ) and # 348729 ( 7 / 1 - 7 / 31 ) have been created and\nentered in sitara for hesco .\nhillary ,\ndo not confirm .\nbob\nvance l taylor\n07 / 28 / 2000 01 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , susan smith / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : new production - sitara deals needed\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period\nhesco gathering oil co 9835 600 mmbtu / d 96 % gas daily less $ 0 . 14\n6 / 10 - 7 / 31\nsamson lone star limited 9845 3000 mmbtu / d 100 % gas daily less $ 0 . 10 7 / 21 -\n7 / 31\nwinn exploration co . , inc . 9847 800 mmbtu / d 100 % gas daily less $ 0 . 13 7 / 25\n- 7 / 31\n( for fuel use less 3 . 35 % of del vols )\nfyi , susan has created and submitted committed reserves firm tickets for the\nremaining term of the deal beginning with the month of august . additionally ,\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.984+0000", "entityId": 2771, "properties": {"text": "Subject: re : new production - sitara deals needed\nvance ,\ndeal # 348616 has been created and entered in sitara for samson lone star\nlimited . meter # 9847 is not yet available in sitara and i am awaiting\nadditional information from you on hesco . thanks .\nbob\nvance l taylor\n07 / 28 / 2000 01 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , susan smith / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : new production - sitara deals needed\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period\nhesco gathering oil co 9835 600 mmbtu / d 96 % gas daily less $ 0 . 14\n6 / 10 - 7 / 31\nsamson lone star limited 9845 3000 mmbtu / d 100 % gas daily less $ 0 . 10 7 / 21 -\n7 / 31\nwinn exploration co . , inc . 9847 800 mmbtu / d 100 % gas daily less $ 0 . 13 7 / 25\n- 7 / 31\n( for fuel use less 3 . 35 % of del vols )\nfyi , susan has created and submitted committed reserves firm tickets for the\nremaining term of the deal beginning with the month of august . additionally ,\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.988+0000", "entityId": 2772, "properties": {"text": "Subject: new production - sitara deals needed\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 28 / 2000 01 : 24\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n07 / 28 / 2000 01 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , susan smith / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : new production - sitara deals needed\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period\nhesco gathering oil co 9835 600 mmbtu / d 96 % gas daily less $ 0 . 14\n6 / 10 - 7 / 31\nsamson lone star limited 9845 3000 mmbtu / d 100 % gas daily less $ 0 . 10 7 / 21 -\n7 / 31\nwinn exploration co . , inc . 9847 800 mmbtu / d 100 % gas daily less $ 0 . 13 7 / 25\n- 7 / 31\n( for fuel use less 3 . 35 % of del vols )\nfyi , susan has created and submitted committed reserves firm tickets for the\nremaining term of the deal beginning with the month of august . additionally ,\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.993+0000", "entityId": 2773, "properties": {"text": "Subject: re : coastal oil & gas corporation\nmelissa ,\ndeal # 348450 has been created and entered in sitara . in addition , the\nvolume has been edited from 3 , 000 to 1 , 000 on deal # 135714 for mjg inc . at\nmeter # 4179 . thanks .\nbob\nenron north america corp .\nfrom : melissa graves 07 / 28 / 2000 11 : 09 am\nto : robert cotten / hou / ect @ ect\ncc : hillary mack / corp / enron @ enron , donald p reinhardt / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , brian m riley / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nhplc will be purchasing wellhead gas from the producer listed below for the\nproduction month of august . this production will be purchased on a \" spot \"\nbasis and a deal ticket should be created and entered into sitara based on\nthe following information :\ncounterparty meter volume price\ncoastal oil & gas corporation 4179 , albrecht # 4 well 2 , 000 mmbtu / d 93 % gas\ndaily\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 28 / 2000\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 07 / 10 / 2000 02 : 18 pm\nto : hillary mack / corp / enron @ enron\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nhillary ,\nsee below for your answer .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 10 / 2000\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njoanne wagstaff @ enron\n07 / 10 / 2000 02 : 14 pm\nto : melissa graves / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ni have confirmed through emails from bob walker that the name of the\ncounterparty for the albrecht # 4 well is coastal oil & gas corp .\nplease let me know if you have any questions .\nthanks ,\njoanne\nx 68228\nfrom : melissa graves @ ect 07 / 10 / 2000 10 : 14 am\nto : joanne wagstaff / na / enron @ enron\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\njoanne ,\ncan you confirm the counterparty name on this please .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 10 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 10 : 11 am\nto : melissa graves / hou / ect @ ect\ncc :\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nhillary mack called me about the following deal . he believes the\ncounterparty should be coastal oil & gas usa , l . p . rather than coastal oil &\ngas corp . please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 10 / 2000 10 : 08\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 09 : 01 am\nto : melissa graves / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , george weissman / hou / ect @ ect ,\nhillary mack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ndeal ticket # 325550 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 07 / 07 / 2000 03 : 34 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , george weissman / hou / ect @ ect , hillary\nmack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nper george ' s note below , hplc will be purchasing wellhead gas from the\nproducer listed below for the production month of july . this production will\nbe purchased on a \" spot \" basis and a deal ticket should be created and\nentered into sitara based on the following information :\ncounterparty meter volume price\ncoastal oil & gas corporation 4179 , albrecht # 4 well 7 / 7 / 00 - 1 , 500 mmbtu / d\n7 / 8 / 00 - 3 , 000 mmbtu / d\n7 / 9 / 00 thru 7 / 31 / 00 - 4 , 000 mmbtu / d 93 % if / hsc\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 07 / 2000 03 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 07 / 2000 01 : 11 pm\nto : melissa graves / hou / ect @ ect , shawna flynn / hou / ect @ ect\ncc : sandi m braband / hou / ect @ ect , robert walker / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , brian m riley / hou / ect @ ect , lauri a\nallen / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nbased on the attached contract preparation request for a spot gtc for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nthe spot gtc requested herein will cover gas from the albrecht # 4 well only .\nthe albrecht # 4 will not be covered by 96008903 , nor will the wells currently\nsubject to 96008903 be subject to the spot gtc .\nshawna , please prepare the termination letter for 96008903 as requested .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 07 / 2000\n01 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndebbie boudar @ enron\n07 / 06 / 2000 03 : 25 pm\nto : george weissman / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nin regards to meter 098 - 4179 the following information is what i have been\nable to determine from the information available to me .\nto your questions :\n1 . cannot determine who owns this meter . i will contact molly carriere on\nmonday when she returns .\n2 . hpl has a fifty ( 50 ) ft . easement at this location which does contain\nlanguage for appurtenance rights within the 50 ' .\n3 . i pulled the meter file for this location which was prepared during\nproject rock and it does not contain a facility agreement so i am assuming\none was not located .\nhope this helps .\nfrom : george weissman @ ect 07 / 06 / 2000 11 : 09 am\nto : debbie boudar / na / enron @ enron\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\ndebbie ,\nmeter 098 - 4179 is located at sta . plus 40 + 85 on align . dwg . hc - 1130 - 18 - h in\ngoliad co . , tx . in connection with the facility agreement request below , we\nneed to know the following :\n1 . who owns the meter , hplc or the operator ?\n2 . do we own an easement and an access right of way to the meter station ?\n3 . is there , to your knowledge , a facility agreement in place covering this\nmeter ? we cannot locate such an agreement in our records .\nthanks . george x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 06 / 2000 09 : 37 am\nto : shawna flynn / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , brian m riley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , melissa graves / hou / ect @ ect , lal\nechterhoff / hou / ect @ ect , james r haden / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nshawna ,\nattached is a contract preparation request for a facilities agreement for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nwe have been unable to locate an existing facility agreement for the 3\npreviously drilled wells and suspect that no such agreement exists .\nthe facility agreement requested herein is intended to cover only alterations\nto be made to existing meter 098 - 4179 to install an h 2 s monitor and necessary\nvalving to allow hplc to accept gas from the newly drilled albrecht # 4 well .\nonce the h 2 s monitor has been installed and the albrecht # 4 well is ready to\nflow , we intend to paper the purchase of gas from the albrecht # 4 well only\nvia a spot confirmation pursuant to a spot gtc . the albrecht # 4 will not be\ncovered by 96008903 , nor will the wells currently subject to 96008903 be\nsubject to the spot gtc .\ncoastal will reimburse hplc $ 39 , 600 for the cost of the installation .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n09 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 04 / 2000 01 : 28 pm\nto : lal echterhoff / hou / ect @ ect , pat flavin / gco / enron @ enron\ncc : brian m riley / hou / ect @ ect , jill t zivley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , james r haden / hou / ect @ ect , donnie\nmccabe / gco / enron @ enron , mark walch / gco / enron @ enron , steve hpl\nschneider / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nlal ,\nwe intend to attempt to connect about 4 , 000 mmbtu / d of new production from\nthe newly drilled coastal oil in may , 2000 , the meter flowed about 960\nmmbtu / d of 3 . 36 % co 2 gas .\nthe content of the albrecht # 4 gas according to the field gas analysis\nprepared by coastal oil the albrecht # 4 h 2 s content\nis similar to that of the three wells currently producing 960 mmbtu / d behind\nmeter 098 - 4179 , the miller - albrecht unit # 1 - a and the hoff heller gas unit\n# 1 a & # 2 d . coastal further purports that for some time now it ( and / or its\npredecessor , mjg , corp . ) has treated these three wells for h 2 s in a manner\nsufficient to reduce the h 2 s content delivered into hplc to permissible\nlevels . coastal has further indicated that it intends to reduce the h 2 s\ncontent of the albrecht # 4 to permissible levels before delivering same to\nhplc . in your opinion , should coastal be forced to install an h 2 s monitor\nfor this new gas prior to flowing same to hplc ?\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 04 / 2000\n12 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristy sweeney\n06 / 29 / 2000 04 : 56 pm\nto : lisa hesse / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , george weissman / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , joanne wagstaff / na / enron @ enron , heidi withers / hou / ect @ ect\nsubject : transport request for coastal albrecht # 4 , goliad county , tx\nlisa ,\nattached is our physical well connect form , including a transportation quote\nsheet , for the coastal albrecht # 4 well in goliad county , tx . please\nprovide us with a transport quote . i have attached below a quote you gave us\nin april 2000 . the volume is now 5 , 000 / day .\ni am headed that way with a map that shows the well ' s location in relation to\nus , tejas , koch , and tetco . please note 2 % fuel .\nthank you ! ! !\nchristy\n39050\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 06 / 29 / 2000\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : lisa hesse 04 / 07 / 2000 10 : 48 am\nto : brian m riley / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect , mary m smith / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , melissa graves / hou / ect @ ect , george weissman / hou / ect @ ect ,\nsusan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , lisa hesse / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : mjg , inc . meter 4179 and cokinos meter 9676\nbrian ,\nhere are the transport rates for the below meters :\nmjg meter 4179 3 . 39 % co 2 1 year quote april 00\nrel : 1180 avg . 1200 - 1988 . 014\nloc . . 05\np / l density . 02\nquality . 049\nmarket adjustment . 05\n_ _ _ _\n. . 183\nless discount and market fee . 02\n_ _ _ _\n. 16\nplease call if you have any questions or comments . lisa 3 5901", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:14.997+0000", "entityId": 2774, "properties": {"text": "Subject: re : coastal oil & gas corporation\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 28 / 2000 11 : 17\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 07 / 28 / 2000 11 : 09 am\nto : robert cotten / hou / ect @ ect\ncc : hillary mack / corp / enron @ enron , donald p reinhardt / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , brian m riley / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nhplc will be purchasing wellhead gas from the producer listed below for the\nproduction month of august . this production will be purchased on a \" spot \"\nbasis and a deal ticket should be created and entered into sitara based on\nthe following information :\ncounterparty meter volume price\ncoastal oil & gas corporation 4179 , albrecht # 4 well 2 , 000 mmbtu / d 93 % gas\ndaily\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 28 / 2000\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 07 / 10 / 2000 02 : 18 pm\nto : hillary mack / corp / enron @ enron\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nhillary ,\nsee below for your answer .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 10 / 2000\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njoanne wagstaff @ enron\n07 / 10 / 2000 02 : 14 pm\nto : melissa graves / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ni have confirmed through emails from bob walker that the name of the\ncounterparty for the albrecht # 4 well is coastal oil & gas corp .\nplease let me know if you have any questions .\nthanks ,\njoanne\nx 68228\nfrom : melissa graves @ ect 07 / 10 / 2000 10 : 14 am\nto : joanne wagstaff / na / enron @ enron\ncc : robert cotten / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\njoanne ,\ncan you confirm the counterparty name on this please .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 10 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 10 : 11 am\nto : melissa graves / hou / ect @ ect\ncc :\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nhillary mack called me about the following deal . he believes the\ncounterparty should be coastal oil & gas usa , l . p . rather than coastal oil &\ngas corp . please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 07 / 10 / 2000 10 : 08\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 07 / 10 / 2000 09 : 01 am\nto : melissa graves / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , george weissman / hou / ect @ ect ,\nhillary mack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\ndeal ticket # 325550 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 07 / 07 / 2000 03 : 34 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , george weissman / hou / ect @ ect , hillary\nmack / corp / enron @ enron , amelia alland / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nbob ,\nper george ' s note below , hplc will be purchasing wellhead gas from the\nproducer listed below for the production month of july . this production will\nbe purchased on a \" spot \" basis and a deal ticket should be created and\nentered into sitara based on the following information :\ncounterparty meter volume price\ncoastal oil & gas corporation 4179 , albrecht # 4 well 7 / 7 / 00 - 1 , 500 mmbtu / d\n7 / 8 / 00 - 3 , 000 mmbtu / d\n7 / 9 / 00 thru 7 / 31 / 00 - 4 , 000 mmbtu / d 93 % if / hsc\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 07 / 07 / 2000 03 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 07 / 2000 01 : 11 pm\nto : melissa graves / hou / ect @ ect , shawna flynn / hou / ect @ ect\ncc : sandi m braband / hou / ect @ ect , robert walker / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , brian m riley / hou / ect @ ect , lauri a\nallen / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nmelissa ,\nbased on the attached contract preparation request for a spot gtc for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nthe spot gtc requested herein will cover gas from the albrecht # 4 well only .\nthe albrecht # 4 will not be covered by 96008903 , nor will the wells currently\nsubject to 96008903 be subject to the spot gtc .\nshawna , please prepare the termination letter for 96008903 as requested .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 07 / 2000\n01 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndebbie boudar @ enron\n07 / 06 / 2000 03 : 25 pm\nto : george weissman / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : re : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nin regards to meter 098 - 4179 the following information is what i have been\nable to determine from the information available to me .\nto your questions :\n1 . cannot determine who owns this meter . i will contact molly carriere on\nmonday when she returns .\n2 . hpl has a fifty ( 50 ) ft . easement at this location which does contain\nlanguage for appurtenance rights within the 50 ' .\n3 . i pulled the meter file for this location which was prepared during\nproject rock and it does not contain a facility agreement so i am assuming\none was not located .\nhope this helps .\nfrom : george weissman @ ect 07 / 06 / 2000 11 : 09 am\nto : debbie boudar / na / enron @ enron\ncc : robert walker / hou / ect @ ect , vicente sarmiento / gco / enron @ enron , brian m\nriley / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\ndebbie ,\nmeter 098 - 4179 is located at sta . plus 40 + 85 on align . dwg . hc - 1130 - 18 - h in\ngoliad co . , tx . in connection with the facility agreement request below , we\nneed to know the following :\n1 . who owns the meter , hplc or the operator ?\n2 . do we own an easement and an access right of way to the meter station ?\n3 . is there , to your knowledge , a facility agreement in place covering this\nmeter ? we cannot locate such an agreement in our records .\nthanks . george x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 06 / 2000 09 : 37 am\nto : shawna flynn / hou / ect @ ect\ncc : robert walker / hou / ect @ ect , brian m riley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , melissa graves / hou / ect @ ect , lal\nechterhoff / hou / ect @ ect , james r haden / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nshawna ,\nattached is a contract preparation request for a facilities agreement for the\ncoastal oil the\nlegal department has prepared and is currently circulating a ratification and\nconsent to assign document to reflect this transaction .\nwe have been unable to locate an existing facility agreement for the 3\npreviously drilled wells and suspect that no such agreement exists .\nthe facility agreement requested herein is intended to cover only alterations\nto be made to existing meter 098 - 4179 to install an h 2 s monitor and necessary\nvalving to allow hplc to accept gas from the newly drilled albrecht # 4 well .\nonce the h 2 s monitor has been installed and the albrecht # 4 well is ready to\nflow , we intend to paper the purchase of gas from the albrecht # 4 well only\nvia a spot confirmation pursuant to a spot gtc . the albrecht # 4 will not be\ncovered by 96008903 , nor will the wells currently subject to 96008903 be\nsubject to the spot gtc .\ncoastal will reimburse hplc $ 39 , 600 for the cost of the installation .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 06 / 2000\n09 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 07 / 04 / 2000 01 : 28 pm\nto : lal echterhoff / hou / ect @ ect , pat flavin / gco / enron @ enron\ncc : brian m riley / hou / ect @ ect , jill t zivley / hou / ect @ ect , vicente\nsarmiento / gco / enron @ enron , james r haden / hou / ect @ ect , donnie\nmccabe / gco / enron @ enron , mark walch / gco / enron @ enron , steve hpl\nschneider / hou / ect @ ect\nsubject : coastal oil & gas corporation\nalbrecht # 4 well\nmeter 098 - 4179 , goliad co . , tx\nlal ,\nwe intend to attempt to connect about 4 , 000 mmbtu / d of new production from\nthe newly drilled coastal oil in may , 2000 , the meter flowed about 960\nmmbtu / d of 3 . 36 % co 2 gas .\nthe content of the albrecht # 4 gas according to the field gas analysis\nprepared by coastal oil the albrecht # 4 h 2 s content\nis similar to that of the three wells currently producing 960 mmbtu / d behind\nmeter 098 - 4179 , the miller - albrecht unit # 1 - a and the hoff heller gas unit\n# 1 a & # 2 d . coastal further purports that for some time now it ( and / or its\npredecessor , mjg , corp . ) has treated these three wells for h 2 s in a manner\nsufficient to reduce the h 2 s content delivered into hplc to permissible\nlevels . coastal has further indicated that it intends to reduce the h 2 s\ncontent of the albrecht # 4 to permissible levels before delivering same to\nhplc . in your opinion , should coastal be forced to install an h 2 s monitor\nfor this new gas prior to flowing same to hplc ?\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 07 / 04 / 2000\n12 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristy sweeney\n06 / 29 / 2000 04 : 56 pm\nto : lisa hesse / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , george weissman / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , joanne wagstaff / na / enron @ enron , heidi withers / hou / ect @ ect\nsubject : transport request for coastal albrecht # 4 , goliad county , tx\nlisa ,\nattached is our physical well connect form , including a transportation quote\nsheet , for the coastal albrecht # 4 well in goliad county , tx . please\nprovide us with a transport quote . i have attached below a quote you gave us\nin april 2000 . the volume is now 5 , 000 / day .\ni am headed that way with a map that shows the well ' s location in relation to\nus , tejas , koch , and tetco . please note 2 % fuel .\nthank you ! ! !\nchristy\n39050\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 06 / 29 / 2000\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : lisa hesse 04 / 07 / 2000 10 : 48 am\nto : brian m riley / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect , mary m smith / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , melissa graves / hou / ect @ ect , george weissman / hou / ect @ ect ,\nsusan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , lisa hesse / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : mjg , inc . meter 4179 and cokinos meter 9676\nbrian ,\nhere are the transport rates for the below meters :\nmjg meter 4179 3 . 39 % co 2 1 year quote april 00\nrel : 1180 avg . 1200 - 1988 . 014\nloc . . 05\np / l density . 02\nquality . 049\nmarket adjustment . 05\n_ _ _ _\n. . 183\nless discount and market fee . 02\n_ _ _ _\n. 16\nplease call if you have any questions or comments . lisa 3 5901", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.002+0000", "entityId": 2775, "properties": {"text": "Subject: re : august spot tickets\nvance ,\nplease note the following deal tickets have been created and entered in\nsitara . thanks .\nbob\nvance l taylor\n07 / 28 / 2000 09 : 33 am\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , heidi\nwithers / hou / ect @ ect , hillary mack / corp / enron @ enron , melissa\ngraves / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\nsubject : august spot tickets\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of august . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price sitara deal #\nwhiting petroleum corp 6523 200 mmbtu / d 91 % if / hsc 348374\nengage energy us , lp 5923 775 mmbtu / d 100 % if / hsc less $ 0 . 24 348390\nengage energy us , lp 5848 240 mmbtu / d 100 % if / hsc less $ 0 . 24 348396\nswift energy 2630 21 mmbtu / d 90 % if / hsc less $ 0 . 258 348412\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.006+0000", "entityId": 2776, "properties": {"text": "Subject: hpl 75 th anniversary celebration\nhouston pipe line company \u0001 , s 75 th anniversary\nmoody gardens hotel\ngalveston , texas\nseptember 9 , 2000\nfrequently asked questions\nhouston pipe line company \u0001 , s 75 th anniversary celebration is right around the\ncorner . to help you plan for the event , we \u0001 , ve developed a list of questions\nand answers . look for future updates via email and if you have a question ,\nplease send it to meetingstop @ aol . com .\n? how do houston pipe line employees rsvp for the anniversary celebration ?\nregister via email - - the sooner the better ! you provide minimal information\nvia email to our event coordinator on the form you \u0001 , ve received with this\nemail . note : registration ends august 15 .\n? can i bring my children for a family weekend outing ?\nthe celebration is for houston pipe line employees and a guest .\n? what are check - in and checkout times at the hotel ?\ncheck - in at moody gardens hotel is 4 pm saturday and checkout is at noon\nsunday . although early room check - in is unlikely on saturday , employees may\narrive early and check their luggage in the hotel lobby to enjoy the moody\ngardens attractions . rooms will be assigned as they become available\nthroughout saturday . we \u0001 , ll give you specifics on the check - in process in\nfuture updates .\n? can i reserve a room for friday , september 8 ? what is the room rate ?\na limited number of rooms may be available on friday night for $ 129 . 00\n( single or double ) . houston pipe line employees should contact the hotel\ndirectly to make friday reservations . the phone number for moody gardens\nhotel is 888 / 388 - 8484 or 409 / 781 - 8484 .\n? should i use my personal credit card for incidental expenses ?\nyes , you should use your personal credit card for incidental expenses , such\nas long distance phone calls . just present your credit card at check - in .\n? what is the dress code for the weekend ?\ncocktail attire is appropriate for the anniversary celebration . black tie is\noptional ! comfy relaxed attire is mandatory for enjoying moody garden\nattractions .\n? can i include the mileage to galveston on my expense report ?\ntravel to and from moody gardens hotel is not eligible for expense\nreimbursement .\n? which meals are included during my hotel stay ?\nthe celebration includes saturday night cocktails and dinner .\nhouston pipe line employees will receive two drink tickets each for the\ncocktail hour or at dinner . cash bars will be available during the\ncelebration .\n? what time is the official company celebration over ?\nemployees and guests are on their own and free to enjoy galveston after\ndinner saturday night and on sunday . as a reminder , checkout time is at noon\non sunday .\n? what are \u0001 + garden dollars \u0001 8 and do i have access to all moody gardens\nattractions ?\nhouston pipe line employees and guests will each receive \u0001 + garden money \u0001 ,\nvalued at $ 35 . 00 . \u0001 + garden money \u0001 , can be used throughout the complex to enjoy\nattractions or for a spa service .\n? doesn \u0001 , t moody gardens have an incredible spa ?\nyes , employees should contact the spa at moody gardens hotel to schedule\nappointments for all spa services . the spa offers a variety of services\nincluding massages , body wraps and treatments , hydrotherapy baths and\nfacials . call the spa at 888 / 388 - 8484 or 409 / 683 - 4440 to schedule an\nappointment .\n? does the hotel have a designated parking area ?\nhotel guests may enjoy covered parking located at the entrance to the\ncomplex , behind the hotel . note a posted sign at the parking garage entrance\nreads \" valet only \" , but hotel guests are free to use the garage .\nemployee celebration\nregistration\nplan to attend ?\nenjoy easy , speedy registration ?\nsend information requested below to meetingstop @ aol . com .\nexpect registration confirmation via email .\nregister early ! register now !\n1 ) employee \u0001 , s name\n2 ) employee \u0001 , s daytime phone number\n3 ) guest \u0001 , s name\n4 ) overnight accommodations ( select one of each category )\n? king bed or two queen beds\n? smoking or non - smoking room\n5 ) dinner only ? yes / no\n6 ) do you want \u0001 + garden dollars \u0001 , for moody gardens hotel or attractions ? yes\n/ no", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.011+0000", "entityId": 2777, "properties": {"text": "Subject: find the perfect vacation package\ndear daren farmer ,\nit ' s time to take a break , go somewhere wild and fantastic ,\nand make all your travel plans happen in one place .\nexpedia . com has some great packages for you that include\nair , hotel , and in some cases a car . just pick your destination ,\nthe month you want to leave , and we ' ll show you everything\nthat ' s available . look for the yellow star to find packages\nwith the greatest value .\nhttp : / / www . expedia . com / daily / packages /\nalso , did you get your free copy of expedia travels magazine\nyet ? the premiere edition is packed with information that will\nshow you how to use the web to travel smarter . get your free\ncopy today !\node = adt\nbahamas cruise with nascar heroes\nmeet some of the top nascar drivers on this four - night\ncruise to the bahamas from port canaveral . you ' ll get to\nattend photo opportunities , get autographs , take part in trivia\ncontests , and test your skills in a remote - control car .\nsee what ' s new in other places : http : / / www . expedia . com / daily / travnews /\nyour faretracker low fares\nwe ' ve designed fare tracker to help you find great fares by listing\nthe lowest fares found by your fellow travelers on the routes you\nselected .\nyou can change your fare tracker subscription at :\nwe have made it easier to find the lowest fares that we\nsend to you in the faretracker mail by sending you the lowest\nfares found by other expedia customers . unfortunately ,\nwe are unable to track fares for all possible airport pairs\nin the world . all three airport pairs that you have in your\nfaretracker subscription are no longer supported . please click\nhere to log into expedia and choose from the hundreds of\nairport pairs we do currently track fares for :\ncheck out all your route and fare options with our flight wizard :\nspecial deals\nwe handpick the best offers and promotions to bring you\nexcellent value on unforgettable experiences .\ntake five : 5 nights , 50 % off with wyndham\nit ' s time to slow down , call in sick , and get out of town \u000f -\nespecially when you can save 50 % off your next stay at\nany wyndham hotel & resort for up to five nights . find out\nmore .\ntravelscape . com : philadelphia package from $ 399\nstroll through one of america ' s most historical cities while\nyou savor the delicacy of a classic cheesesteak sandwich .\npackage includes airfare and two nights at the radisson\nphiladelphia hotel .\nuniglobe . com : cruise the west coast from $ 266\ntake a day off and enjoy this three - day cruise from san\nfrancisco to vancouver , b . c . you ' ll get to stop at victoria , b . c .\nfor some excellent shopping . this is the perfect getaway for a\nlong weekend .\ngo - today : london land package from $ 299\nspend six nights getting to know the beauty of london during\nthe summer . package includes accommodations , transfers ,\ndaily breakfast , and optional sightseeing tours . this is a great\nway to experience a slice of europe .\nlooking for more great deals on expedia . com ? see our\nspecial deals at :\nfrom our sponsors\ncool off with one of hyatts summer deals\n? hyatt touch weekends from $ 75 per room per night including valuable\nextras\n? getaway weekend rates \u000f - best available rates for the upcoming 2\nweekends\n? sunshine on sale \u000f - free nights at resorts\nfor details see :\nhttp : / / ads . msn . com / ads / expftr / hyattl . asp\nthank you again for traveling with expedia . com .\nexpedia . com travel team\ndon ' t just travel . travel right .\nhttp : / / expedia . com /\nyou are receiving this e - mail because you are a registered\nmember of expedia . com . your expedia membership is free and\nyour privacy and credit card security are guaranteed . questions ?\nvisit the expedia . com service center at :\nhttp : / / www . expedia . com / daily / service /\nif you do not wish to receive any further e - mails from us ,\nplease reply to this mail with \" unsubscribe \" in the subject line .\napologies but we cannot reply to responses to fare tracker .\nif you have questions or want to give feedback , click here :\n( c ) 1998 , 1999 , 2000 expedia , inc . all rights reserved .\nthis email was sent to : dfarmer @ ect . enron . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.016+0000", "entityId": 2778, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.020+0000", "entityId": 2779, "properties": {"text": "Subject: more information to eastrans nominations changes effective 7 / 29 / 00\non saturday , 7 / 29 / 00 , 6884 mmbtu was delivered into the mobil beaumont\nredelivery point . this will be considered a sale into mobile beaumont . there\nwill not be gas redelivered into mobil beaumont on july 30 th , 31 st or august lst .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n07 / 31 / 2000 10 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n07 / 31 / 2000 08 : 47 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad\nw . cass / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec , bruce\nmcmills / ftworth / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec , donna\nc . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , stacey . neuweiler @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec\ncc :\nsubject : eastrans nominations changes effective 7 / 29 / 00\non 7 / 29 / 00 the compressor went down for hpl deliveries into eastrans . 3486\nmmbtu was delivered on 7 / 29 / 00 . redeliveries for the 29 th will be 3486 into\nhpl\nfrom fcv . the differential of 7800 mmbtu - 3486 mmbtu = 4314 mmbtu will be a\nsale into hpl .\non july 30 th , 31 st and august lst there is 0 gas flow . 7800 mmbtu per day\nwill\nbe sold into hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.025+0000", "entityId": 2780, "properties": {"text": "Subject: eastrans nominations changes effective 7 / 29 / 00\non 7 / 29 / 00 the compressor went down for hpl deliveries into eastrans . 3486\nmmbtu was delivered on 7 / 29 / 00 . redeliveries for the 29 th will be 3486 into\nhpl\nfrom fcv . the differential of 7800 mmbtu - 3486 mmbtu = 4314 mmbtu will be a\nsale into hpl .\non july 30 th , 31 st and august lst there is 0 gas flow . 7800 mmbtu per day\nwill\nbe sold into hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.029+0000", "entityId": 2781, "properties": {"text": "Subject: fw : please read . . don ' t delete\n- - - - - original message - - - - -\nfrom : fletcher , thomas\nsent : monday , july 31 , 2000 8 : 19 am\nto : susie , catherine ; glover , rusty ; almaguer , michael ; dewey , daniel ;\nbeard , jaime\nsubject : fw : please read . . don ' t delete\n- - - - - original message - - - - -\nfrom : seth graham [ mailto : sethgraham @ tcainternet . com ]\nsent : sunday , july 30 , 2000 3 : 55 pm\nto : tyler shambro ; troy combs ; tommy mount ; tommy boyce ( e - mail ) ; tim\nherbst ; tim davidson ; thomas willman ( e - mail ) ; fletcher , thomas ;\nsimmons ; shane kerr ; sean kemper ( e - mail ) ; scott hylton ( e - mail ) ; robert\ncarr ; richard harris ( e - mail ) ; patrick maclurin ; parker baum ; nicholas\nm . vaughan ; mike michael huffman ; matt\nengland ; matt berry ; laura follette ; kelly beth konieczka ; joe bearre\nkeyes ( e - mail ) ; jeff o ; jason stringer ( e - mail ) ; jason brewer ; eric\nprakop ; eric burcham ; emily graham ; dennis perritt ; dax rizo ( e - mail ) ;\ndarrell ; daniel j marchand ; dan crothers ( e - mail ) ; crduffy 555 @ aol . com ;\nchris traylor ( e - mail ) ; cherie c . heller ; charlest ; burke , donovan\n( cci - new orleans ) ; brandon reed ( e - mail ) ; bo harris ; ben stutts ; ben\nprakop ; andrew maestrini ; amy bateman ; allison baum ; allen harris ; aaron\nbragg\nsubject : fw : please read . . don ' t delete\n- - - - - original message - - - - -\nfrom : gregory fulcher\nto : ; ; ;\n; ; ;\n; ; ;\n; ;\nsent : sunday , july 30 , 2000 9 : 08 am\nsubject : fwd : please read . . don ' t delete\n>\n>\n>\n> > from : 504 boyl @ excite . com\n> > to : richdog 75 @ yahoo . com , just @ mobiletel . com , alxwilliams @ hotmail . com ,\n> > bpb @ pds - btr . com , btoups @ lwcc . com , cadechiasson @ hotmail . com ,\n> > callahantroyt @ jdcorp . deere . com , liz 8989 @ yahoo . com , copperdawn @ excite . com ,\n> > carolinedu 79 @ hotmail . com , deaton 9656 @ aol . com , fieldsltd @ aol . com ,\n> > flutchl 1 @ hotmail . com , zigzag @ cajun . net , jeffgros @ peoplepc . com ,\n> > bretta @ peoplepc . com , chilll 17 @ hotmail . com , benoitjasonp @ johndeere . com ,\n> > jason _ templet @ oxy . com , kytlc @ prodigy . net , jloeskl @ lsu . edu ,\n> > jloeskefg @ hotmail . com , percllv @ starent . com ,\n> > mark _ belteau @ uniroyalchemical . com , jenilyn @ mobiletel . com ,\n> > smatherne . rjhs @ lafourche . kl 2 . la . us , mchiasson @ internet 8 . net ,\n> > nock 72 @ hotmail . com , jpontif @ yahoo . com , dj - jroc @ excite . com ,\n> > rtros @ hotmail . com , scuff @ gateway . net , boredboy @ mindspring . com ,\n> > zee @ mobiletel . com , garrettz @ web - net . com\n> > subject : fwd : please read . . don ' t delete\n> > date : wed , 26 jul 2000 03 : 19 : 59 - 0700 ( pdt )\n> >\n> >\n> > - - - - - original message - - - - -\n> > > ? message - id :\n> > > ? date : tue , 25 jul 2000 17 : 58 : 57 - 0700 ( pdt )\n> > > ? from : dawn marie\n> > > ? to : 504 boyl @ excite . com , tsavager @ aol . com , dede 6310 @ aol . com ,\n> > cleoj @ msn . com ,\n> > > ? ? memeswann @ aol . com , stoneol @ bellsouth . net , bkrygodess @ aol . com\n> > > ? subject : fwd : please read . . don ' t delete\n> > >\n> > >\n> > > ? have a great day ! ! ! ! . . . . . . . . dawn\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > ? _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> > > ? say bye to slow internet !\n> > > ? http : / / www . home . com / xinbox / signup . html\n> > >\n> > > ? to : flyingbirdo 0 @ aol . com , dcall @ seidata . com , collinstenn 2800 @ cs . com ,\n> > > ? ? ? ? ? ? ? ? ? ashley @ ticz . com , wheat 51 @ mindspring . com ,\n> > bfrenchl @ hoosierlink . net ,\n> > > ? ? ? ? ? ? ? ? ? jhays @ kiva . net , lkelsey @ rtccom . net , hlampkin @ telepak . net ,\n> > > ? ? ? ? ? ? ? ? ? glin 227463 @ aol . com , fritzi 3 @ aol . com , sunnybelll @ aol . com ,\n> > > ? ? ? ? ? ? ? ? ? nanajodon @ cs . com , morningstar 44 @ earthlink . net ,\n> > > ? ? ? ? ? ? ? ? ? gallahadd @ worldnet . att . net , snaptome @ yahoo . com ,\n> > dsimm 566 @ aol . com ,\n> > > ? ? ? ? ? ? ? ? ? jblaydoe @ ccrtc . com , memeswann @ aol . com , beunger @ comteck . com ,\n> > > ? ? ? ? ? ? ? ? ? diunroe @ juno . com , swoolz @ aol . com\n> > > ? date : tue , 18 jul 2000 19 : 38 : 11 - 0500\n> > > ? subject : please read . . don ' t delete\n> > > ? message - id :\n> > > ? from : hester e morris\n> > >\n> > >\n> > >\n> > >\n> > > ? > subject : fw : fw : fw : please read . . don ' t delete\n> > >\n> > > ? > > > > > ? > > > > > > > > > > > > > > > if you got this email you ' re\n> > > ? > > > > > ? > > > > > > > > > > > > > > > lucky ( don ' t delete ) .\n> > > ? > > > > > ? > > > > > > > > > > > > > > > you have just won a 100\n> > > ? > dollars ! . . . . . . .\n> > > ? > > > > > ? > > > > > > > > > > > > > > > you will only get the money if\n> > > ? > > > > > ? > > > > > > > > > > > > > > > you send this to 5 or more people .\n> > > ? > > > > > ? > > > > > > > > > > > > > > > a box will appear on the screen\n> > > ? > after you\n> > > ? > > > > > ? > > > > > > > > > > > > > > > have sent it ! it really works . . . .\n> > > ? > try it !\n> > > ? > > > > > ? > > > > > > > > > > > > > > > take 5 min . out of your time and\n> > > ? > send\n> > > ? > > > > > ? > > > > > > > > > > > > > > > this . . . believe me you won ' t be\n> > > ? > sorry ! !\n> > > ? > > > > > ? > > > > > > > > > > > > > > > 0 - 2 people : $ 10\n> > > ? > > > > > ? > > > > > > > > > > > > > > > 2 - 4 people : $ 20\n> > > ? > > > > > ? > > > > > > > > > > > > > > > 4 - 6 people : $ 50\n> > > ? > > > > > ? > > > > > > > > > > > > > > > 6 - 8 people : $ 75\n> > > ? > > > > > ? > > > > > > > > > > > > > > > 8 - 10 people : $ 100 ! ! ! ! ! ! ! ! keep on\n> > > ? > sending ! ! !\n> > > ? > > > > > ? > > > > > > > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > > > > > > > > iwon . com ? ? ? ? http : / / www . iwon . com\n> > > ? > ? why\n> > > ? > > > > > woundn ' t\n> > > ? > > > > > ? > you ?\n> > > ? > > > > > ? > > > > > > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > >\n> > > ? > > > > > ? > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > chuck and andi prior\n> > > ? > > > > > ? > > > > > > > > p . o . box 864\n> > > ? > > > > > ? > > > > > > > > 203 s . pearl\n> > > ? > > > > > ? > > > > > > > > moville , ia 51039\n> > > ? > > > > > ? > > > > > > > >\n> > > ? > > > > > ? > > > > > > > > home : prior @ netins . net\n> > > ? > > > > > ? > > > > > > > > work : priorc @ lawton . lawton - bronson . kl 2 . ia . us\n> > > ? > > > > > ? > > > > > > > > home page :\n> > > ? > http : / / www . netins . net / showcase / prior\n> > > ? >\n> > > ? >\n> > > ? >\n> > > ? >\n> > > ? >\n> > > ? >\n> > > ? >\n> > > ? >\n> >\n> >\n> > peace ! ! !\n> >\n> >\n> >\n> >\n> >\n> > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> > say bye to slow internet !\n> > http : / / www . home . com / xinbox / signup . html\n> >\n>\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> get your private , free e - mail from msn hotmail at http : / / www . hotmail . com\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.034+0000", "entityId": 2782, "properties": {"text": "Subject: 75 th anniversary celebration\nthank you for your fantastic responses to our reservations request . there\nhas been some confusion concerning the dinner only option . if you are\nplanning to spend the night , you do not need to respond to that option . it\nis listed only for those who do not plan to spend the night .\nwe are preparing name tags for all the employees invited to the hpl\nanniversary celebration . please email me with the name you would like to\nappear on your nametag , such as nicknames , etc . if we do not hear from you\nby wednesday , august 2 , we will use the name as it appears in the list we\nacquired from hr . please print this memo for any employees who do not have\naccess to email .\nthank you so much for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.038+0000", "entityId": 2783, "properties": {"text": "Subject: fw : why you shouldn ' t piss on the side of the road !\n- - - - - original message - - - - -\nfrom : tcash @ aimtech . net [ mailto : tcash @ aimtech . net ]\nsent : tuesday , july 25 , 2000 10 : 28 am\nto : kfku @ dynegy . com ; cchsda @ lyondell . com ; maolson . baycity @ celanese . com ;\nglover , rusty ; clay _ carbaugh @ acco . com ; james _ valk @ dell . com ; jeff ;\nkevin _ white @ dell . com ; patrick _ donohoe @ dell . com ; greg _ maldonado @ dell . com ;\nkevin _ kelton @ dell . com\nsubject : why you shouldn ' t piss on the side of the road !\n( see attached file : frens 2 . mpg )\n?\n- frens 2 . mpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.043+0000", "entityId": 2784, "properties": {"text": "Subject: hpl anniversary dinner confirmation\nthank you ! we ' ve received your registration for the 75 th anniversary dinner .\nmark your calendar and plan to have an enjoyable evening .\nsincerely ,\nmeetingstop @ aol . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.048+0000", "entityId": 2785, "properties": {"text": "Subject: cleburne outage\ngentlemen ,\ni wanted to clarify the length of the outage that started today at the\ncleburne site .\nthe earliest the plant will be on - line is wednesday morning . if anything is\nfound beyond a cracked transition piece or clogged fuel nozzle then it may\nextend the outage a few days . as soon as i hear something i will let you know .\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.052+0000", "entityId": 2786, "properties": {"text": "Subject: revision # 1 - hpl nom for august 1 , 2000\n( see attached file : hplo 801 . xls )\n- hplo 801 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.060+0000", "entityId": 2787, "properties": {"text": "Subject: re : enron / hpl actuals for july 28 - 30 , 2000\ntim :\nfor day 28 , we show a total of 77 . 5 at the tap broken down as follows :\n9 a through lp = 0\n2 p through 4 a = 120 . 0\n5 a = 60 . 0\n6 a through 8 a = 0\nplease advise .\nregards ,\nami\n\" melissa jones \" on 07 / 31 / 2000 10 : 24 : 09 am\nto : \" charlie stone \" , \" gary green \" ,\ntimpowell @ txu . com , daren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for july 28 - 30 , 2000\njuly 28 , 2000\nteco tap 10 . 000 / enron ; 61 . 250 / hpl iferc ; 8 . 750 / hpl gas\ndaily\nls hpl lsk ic 30 . 000 / enron\njuly 29 , 2000\nteco tap 10 . 000 / enron ; 100 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron\njuly 30 , 2000\nteco tap 10 . 000 / enron ; 110 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.067+0000", "entityId": 2788, "properties": {"text": "Subject: enron / hpl actuals for july 28 - 30 , 2000\njuly 28 , 2000\nteco tap 10 . 000 / enron ; 61 . 250 / hpl iferc ; 8 . 750 / hpl gas\ndaily\nls hpl lsk ic 30 . 000 / enron\njuly 29 , 2000\nteco tap 10 . 000 / enron ; 100 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron\njuly 30 , 2000\nteco tap 10 . 000 / enron ; 110 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.073+0000", "entityId": 2789, "properties": {"text": "Subject: cleburne outage\ngentlemen ,\ni wanted to clarify the length of the outage that started today at the\ncleburne site .\nthe earliest the plant will be on - line is wednesday morning . if anything is\nfound beyond a cracked transition piece or clogged fuel nozzle then it may\nextend the outage a few days . as soon as i hear something i will let you know .\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.077+0000", "entityId": 2790, "properties": {"text": "Subject: organisational announcement - introducing enron global markets\nas evidenced by an exceptionally strong performance in the second quarter ,\nenron \u0001 , s wholesale energy businesses in north america and europe continue to\nexperience tremendous growth . the opportunities to continue to grow our\nnatural gas and power businesses have never been better and it is critical to\nenron \u0001 , s future success that we remain focused on expanding these businesses\nand maintaining the strong momentum we have in these markets .\nit is equally important that we continue to develop new businesses outside of\ngas and electricity , which can make significant contributions to our earnings\ngrowth . we have made significant progress in developing these businesses in\nnorth america , europe , and most recently in our new net works business unit .\nincluded in these global businesses are our efforts in crude and products ,\ncoal , emissions , insurance , currency , equity trading , interest rates , credit\ntrading , paper and pulp , and metals .\nwhile significant progress has been made in these efforts we need to\naccelerate the growth of these new businesses while continuing to\naggressively expand our core gas and electricity businesses in north america\nand europe . in order to accomplish these two objectives and to capitalize on\nthe increasingly global opportunities in these new businesses we are today\nannouncing the formation of a new business unit \u0001 ) enron global markets . this\nnew business unit will focus on markets and commodities which are global in\nscope , but outside our traditional gas and power markets . this new core\nbusiness unit will operate in parallel with and in close coordination with\nthe north american and european businesses .\nenron global markets will be headed by mike mcconnell , president and chief\nexecutive officer , and jeff shankman , chief operating officer . they will\nreport to mark frevert who will be chairman of enron global markets . mark ,\nmike and jeff will comprise the office of the chairman for enron global\nmarkets .\nincluded in this new business unit and reporting to the office of the\nchairman will be the following businesses and their leaders :\n- global crude and products : john nowlan\n- coal : george mcclellan\n- currency , equities , interest rate and agricultural trading : gary hickerson\n- insurance and weather : jere overdyke\nenron \u0001 , s metals business and enron credit . com will remain the responsibility\nof enron europe . the paper and pulp business will continue to reside in north\namerica .\nwith the departure of mike mcconnell from enron net works , we are pleased to\nannounce the following appointments in that business unit :\n- jeff mcmahon : president and chief operating officer\n- louise kitchen : chief commercial officer\n- philippe bibi : chief technology officer\njeff , louise and philippe , along with greg whalley , will comprise the office\nof the chairman for enron net works .\nwith jeff shankman \u0001 , s departure from enron north america \u0001 , s natural gas\noperation , all of jeff \u0001 , s direct reports will report to john lavorato .\nwe are also pleased to announce the following changes to the enron north\namerica office of the chairman . john lavorato will join the ena office of\nthe chairman as chief operating officer . dave delainey will assume the role\nof president and chief executive officer . mark frevert will retain his role\nas chairman of enron north america in addition to his role as chairman of\nboth enron global markets and enron europe .\nplease join us in congratulating everyone in their new assignments and in\nsupporting the new enron global markets organisation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.082+0000", "entityId": 2791, "properties": {"text": "Subject: fyi - lubrizol - april lst changeover to tejas\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 07 / 31 / 2000 04 : 11\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 03 / 22 / 2000 10 : 06 am\nto : gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect\ncc :\nsubject : fyi - lubrizol - april lst changeover to tejas\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 03 / 22 / 2000\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" montello , ray \" on 03 / 22 / 2000 08 : 52 : 15 am\nto : lee l papayoti / hou / ect @ ect\ncc : \" massingill , david \"\nsubject : april lst ng cut over\nlee ,\non saturday , april lst , lubrizol will cut over natural gas supply from enron\nto coral at lubrizol ' s bayport plant .\nin order to accomplish cut over activities , we will need a technical\nrepresentative ( s ) from enron at lubrizol ' s bayport plant to participate in\nthe activities and to insure enron ' s interests and assets are protected .\nwould you please make arrangements to have an enron technical\nrepresentative ( s ) report at 12 : 00 noon , april lst , to the main guard house\nat lubrizol ' s bayport plant and ask for lubrizol ' s david massigill . david\nis coordinating all the cut over operations .\nif you have any questions about this , please contact me ( at the numbers\nindicated below ) or david massigill at ( 281 ) 479 - 2851 , ext 2511 .\nthanks and best regards .\nray\nray montello\nsr . purchasing agent - lz deer park\nthe lubrizol corporation\nj : int phone & vm - ext 2225\nj : ext direct dial 281 - 884 - 5225\nk : : fax : : 281 - 884 - 5244 ( int : 5244 )\n* : rjmo @ lubrizol . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.087+0000", "entityId": 2792, "properties": {"text": "Subject: re : industrial report\ni will have the \" ken seaman \" file completed by the end of day august lst .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 40 am\nto : robert e lloyd / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\nsubject : re : industrial report\ni am referring to ken seaman ' s file which provides additional information .\nwe definitely need ken ' s\nfile completed by aug lst . and distributed to our group , daren farmer , and\ngary hanks . both files should\nbe completed and can be linked on duplicate information . thanks , pat\nrobert e lloyd @ ect\n07 / 31 / 2000 09 : 29 am\nto : pat clynes / corp / enron @ enron\ncc : robert e lloyd / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\nsubject : re : industrial report\ni am confused . what file do you want me to update ; julie meyers file or ken\nseaman file ?\nboth files provide similar data which is helpful to all of our support\ngroups .\nto prepare both files i feel is a duplicate of my efforts . please let\nknow if you want both files updated\nand the approximate time table for completion .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 02 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : indutrial report\nrobert ,\nthis is the file that i referenced in my last email . please get this file\ngoing again . thanks , pat\ndaren j farmer @ ect\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.091+0000", "entityId": 2793, "properties": {"text": "Subject: re : industrial report\ni am referring to ken seaman ' s file which provides additional information .\nwe definitely need ken ' s\nfile completed by aug lst . and distributed to our group , daren farmer , and\ngary hanks . both files should\nbe completed and can be linked on duplicate information . thanks , pat\nrobert e lloyd @ ect\n07 / 31 / 2000 09 : 29 am\nto : pat clynes / corp / enron @ enron\ncc : robert e lloyd / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\nsubject : re : industrial report\ni am confused . what file do you want me to update ; julie meyers file or ken\nseaman file ?\nboth files provide similar data which is helpful to all of our support\ngroups .\nto prepare both files i feel is a duplicate of my efforts . please let\nknow if you want both files updated\nand the approximate time table for completion .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 02 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : indutrial report\nrobert ,\nthis is the file that i referenced in my last email . please get this file\ngoing again . thanks , pat\ndaren j farmer @ ect\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.097+0000", "entityId": 2794, "properties": {"text": "Subject: re : industrials\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 07 / 31 / 2000\n09 : 36 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 07 / 31 / 2000 09 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : re : industrials\nthe file requested for july had previously been prepared by julie meyers\nwhich i was ask by you to keep updated .\nthis file was prepared before i left for vacation , as requested . please\nsee the attached file .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 08 : 58 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : industrials\nrobert ,\ni never saw the july industrial spreadsheet . this must be set up for\naugust . it was a file developed by ken seaman .\nthanks , pat\ndaren j farmer @ ect\n06 / 28 / 2000 11 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : industrials\nwhen will the buybacks and swings be set up for july ? i am a little\nconcerned with the long weekend coming up . i believe that we agreed that\nthese would be set up by the 3 rd work day , which would be friday the 7 th .\n( six days of flow . ) i definitely don ' t think that we should any later . it\nwould be great if this could be handled sooner , miimizing our economic impact .\nadditionally , we need to get the industrial spreadsheet up and running\nagain . this report is very beneficial to gas control , industrial traders and\nschedulers on call .\nlet me know what you think .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.102+0000", "entityId": 2795, "properties": {"text": "Subject: re : industrial report\ni am confused . what file do you want me to update ; julie meyers file or ken\nseaman file ?\nboth files provide similar data which is helpful to all of our support\ngroups .\nto prepare both files i feel is a duplicate of my efforts . please let\nknow if you want both files updated\nand the approximate time table for completion .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 02 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : indutrial report\nrobert ,\nthis is the file that i referenced in my last email . please get this file\ngoing again . thanks , pat\ndaren j farmer @ ect\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.107+0000", "entityId": 2796, "properties": {"text": "Subject: re : indutrial report\nrobert ,\nthis is the file that i referenced in my last email . please get this file\ngoing again . thanks , pat\ndaren j farmer @ ect\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.111+0000", "entityId": 2797, "properties": {"text": "Subject: re : industrials\nrobert ,\ni never saw the july industrial spreadsheet . this must be set up for\naugust . it was a file developed by ken seaman .\nthanks , pat\ndaren j farmer @ ect\n06 / 28 / 2000 11 : 19 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : industrials\nwhen will the buybacks and swings be set up for july ? i am a little\nconcerned with the long weekend coming up . i believe that we agreed that\nthese would be set up by the 3 rd work day , which would be friday the 7 th .\n( six days of flow . ) i definitely don ' t think that we should any later . it\nwould be great if this could be handled sooner , miimizing our economic impact .\nadditionally , we need to get the industrial spreadsheet up and running\nagain . this report is very beneficial to gas control , industrial traders and\nschedulers on call .\nlet me know what you think .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.116+0000", "entityId": 2798, "properties": {"text": "Subject: re : fuel\npat , could you shed a little light on how we get the cpr fuels number ?\ndave\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 08 / 01 / 2000\n09 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrita wynne\n08 / 01 / 2000 08 : 42 am\nto : david baumbach / hou / ect @ ect\ncc : steve venturatos / hou / ect @ ect , delma salazar / na / enron @ enron\nsubject : re : fuel\nwhat is the source of the numbers for the fuel and what pipes are included ?\nenron capital management\nfrom : david baumbach 08 / 01 / 2000 08 : 17 am\nto : rita wynne / hou / ect @ ect\ncc :\nsubject : re : fuel\nbrenda wants to know why we flashed 24 , 302 mmbtu ' s with a value of $ 83 , 827\nand actuals came in at 12 , 511 mmbtu ' s with a value of $ 37 , 662 . logistics is\nbooking our fuel on 3 rd party pipes . is there something logistics needs to\ndo to better estimate this expense ?\ndave\nrita wynne\n08 / 01 / 2000 07 : 52 am\nto : brenda f herod / hou / ect @ ect\ncc : david baumbach / hou / ect @ ect , steve venturatos / hou / ect @ ect , delma\nsalazar / na / enron @ enron , o ' neal d winfree / hou / ect @ ect\nsubject : re : fuel\nwhat is this the issue ?\nenron north america corp .\nfrom : brenda f herod 07 / 31 / 2000 06 : 02 pm\nto : david baumbach / hou / ect @ ect\ncc : steve venturatos / hou / ect @ ect , delma salazar / na / enron @ enron , o ' neal d\nwinfree / hou / ect @ ect , steve venturatos / hou / ect @ ect , rita wynne / hou / ect @ ect\nsubject : re : fuel\nthen the question would be : where did we miss our projection ? once again , i\nthink we should include rita in the reconciliation effort .\nenron capital management\nfrom : david baumbach 07 / 31 / 2000 05 : 03 pm\nto : brenda f herod / hou / ect @ ect , steve venturatos / hou / ect @ ect , delma\nsalazar / na / enron @ enron , o ' neal d winfree / hou / ect @ ect\ncc :\nsubject : fuel\nwe flash fuel on 3 rd party pipelines .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.120+0000", "entityId": 2799, "properties": {"text": "Subject: baytown 12 ' ' pigging affected meters\nthe meters listed in the attached email will be shut - in in order to pig the\nbaytown 12 \" . the meters will be shut - in early on the morning of august 15 ,\nand remain shut - in for approximately five to ten days .\nif you have any questions please call me 36449 .\nthanks\ngary hanks\nmgr gas control\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 01 / 2000 10 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike vollmering @ enron\n08 / 01 / 2000 08 : 59 am\nto : gary a hanks / hou / ect @ ect , jill t zivley / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , pat flavin / gco / enron @ enron , liberty team\nhpl / gco / enron @ enron\nsubject : baytown 12 ' '\nthe columbus energy wiggins # 1 ( 989634 ) will be effected by the pigging\nproject . the tap valve is installed in the mlv bypass and the bypass will be\nremoved to blow down the line .\nhere is a list of all the producers that will be effected .\ncolumbus energy - - - - - - - - wiggins # 1 ( 989634 ) and fig orchard ( 986764 )\nsanchez o mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.125+0000", "entityId": 2800, "properties": {"text": "Subject: eastrans nomination changes effective 8 / 2 / 00\nplease increase deliveries to eastrans to 25 , 000 mmbtu / dy for 8 / 2 / 00 .\nthe redeliveries will be :\n7 , 800 from fuels cotton valley\n17 , 200 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.130+0000", "entityId": 2801, "properties": {"text": "Subject: kingwood cove - 2 play \" for \" $ 20\nthanks for being a part of our e - mail offers club !\n2 play for $ 20 - includes cart & green fee !\nmonday thru friday - 10 am to 3 pm\nexpires 8 / 31 / 00\nprint out and present this email offer the day of play .\nnot valid with any other offers .\n* * * * * * this offer expires august 31 , 2000 * * * * * * * *\nplaying partner ' s email addresses : ( optional )\nplayer 1 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 2 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 3 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 4 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nvisit : http : / / www . ttimeonline . com / index . html\nto view more free golf offers & promotions !\n- - -\nyou are currently subscribed to 90027 - members as : dfarmer @ enron . com\nto unsubscribe send a blank email to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.136+0000", "entityId": 2802, "properties": {"text": "Subject: resumes sent\ni sent you a stack of risk candidate resumes inter - office monday . ( steve ,\ndutch also received them - spoke with him directly ) . these candidates\nhave not been contacted . please let me know who looks good for your\npositions to help prioritize the ones we should phone screen .\ni also have a stack of out of town resumes that would probably need\nrelocation . let me know if you want to see them .\nthanks\ntoni", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.141+0000", "entityId": 2803, "properties": {"text": "Subject: revision # 1 - enron actuals for july 31 , 2000\nteco tap 115 . 000 / hpl gas daily ;\nls hpl lsk ic 27 . 500 / enron ; 2 . 500 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.146+0000", "entityId": 2804, "properties": {"text": "Subject: re : enron / hpl actuals for july 31 , 2000\nhey charlie ,\nfor the 31 st , i show that the enron contract would be fulfilled with the 30 . 0\nat hpl katy . please correct me if i am incorrect .\niferc totals 2 , 015 . 0 on 7 / 28 / 00 ( volume on the 28 th is 61 . 250 at the tap )\nenron totals 1 , 240 . 0 on the 31 st ( volume on the 31 st is 30 . 0 at hpl )\ngas daily totals 331 . 250 at the tap\n7 / 28 6 . 250 ( assuming 77 . 5 at the tap )\n7 / 29 100 . 0\n7 / 30 110 . 0\n7 / 31 115 . 0 ( assuming 30 . 0 on the enron contract for th 31 st )\nplease advise .\nregards ,\nami\n\" melissa jones \" on 08 / 01 / 2000 10 : 44 : 08 am\nto : \" charlie stone \" , \" gary green \" ,\ntimpowell @ txu . com , daren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for july 31 , 2000\nteco tap 105 . 000 / hpl iferc ; 10 . 000 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.153+0000", "entityId": 2805, "properties": {"text": "Subject: hpl nom for august 2 , 2000\n( see attached file : hplo 802 . xls )\n- hplo 802 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.158+0000", "entityId": 2806, "properties": {"text": "Subject: enron / hpl actuals for july 31 , 2000\nteco tap 105 . 000 / hpl iferc ; 10 . 000 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.162+0000", "entityId": 2807, "properties": {"text": "Subject: re : industrial report\nsince unify { mop } is down today it will be impossible to meet my\naggressive deadline for completing\nthe \" ken seaman \" report .\nonce the system is up and running , i will complete the report and\nthe julie meyers report .\ni am updating both reports with the information available .\nthis message really is intended for gary because daren and pat is\naware of my situation .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 01 / 2000\n02 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 07 / 31 / 2000 09 : 50 am\nto : pat clynes / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , robert e\nlloyd / hou / ect\nsubject : re : industrial report\ni will have the \" ken seaman \" file completed by the end of day august lst .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 40 am\nto : robert e lloyd / hou / ect @ ect\ncc : robert e lloyd / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\nsubject : re : industrial report\ni am referring to ken seaman ' s file which provides additional information .\nwe definitely need ken ' s\nfile completed by aug lst . and distributed to our group , daren farmer , and\ngary hanks . both files should\nbe completed and can be linked on duplicate information . thanks , pat\nrobert e lloyd @ ect\n07 / 31 / 2000 09 : 29 am\nto : pat clynes / corp / enron @ enron\ncc : robert e lloyd / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\nsubject : re : industrial report\ni am confused . what file do you want me to update ; julie meyers file or ken\nseaman file ?\nboth files provide similar data which is helpful to all of our support\ngroups .\nto prepare both files i feel is a duplicate of my efforts . please let\nknow if you want both files updated\nand the approximate time table for completion .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 02 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : indutrial report\nrobert ,\nthis is the file that i referenced in my last email . please get this file\ngoing again . thanks , pat\ndaren j farmer @ ect\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.170+0000", "entityId": 2808, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.176+0000", "entityId": 2809, "properties": {"text": "Subject: formosa meter # : 1000\nwill there be a buyback ticket for formosa during august 2000 activity .\ndeal # : 92881 expired july 31 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.181+0000", "entityId": 2810, "properties": {"text": "Subject: eastrans nomination change effective 8 / 3 / 00\nplease decrease deliveries to eastrans to 7 , 800 mmbtu / dy for 8 / 3 / 00\nthe redeliveries will be 7 , 800 into hpl from fuels cotton valley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.186+0000", "entityId": 2811, "properties": {"text": "Subject: kingwood cove - free green fees !\nthanks for being a part of our e - mail offers club !\nit ' s back for august - free green fees !\neveryday after 10 am - cart rental required .\nprint out and present this email offer the day of play .\nnot valid with any other offers .\n~ ~ ~ ~ ~ ~ ~ ~ this offer expires august 31 , 2000 ~ ~ ~ ~ ~ ~ ~ ~\nplaying partner ' s email addresses : ( optional )\nplayer 1 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 2 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 3 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplayer 4 : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ @ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n* * * visit : http : / / www . ttimeonline . com / index . html * * * *\n* * * * to view more free golf offers & promotions ! * * * *\n- - -\nyou are currently subscribed to 90027 - members as : dfarmer @ enron . com\nto unsubscribe send a blank email to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.190+0000", "entityId": 2812, "properties": {"text": "Subject: hpl nom for august 3 , 2000\n( see attached file : hplo 803 . xls )\n- hplo 803 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.195+0000", "entityId": 2813, "properties": {"text": "Subject: re : resolved issue : re : meter # 0986563 -\nrobert ,\nhplc entered into a gas purchase agreement with the bjd - ess corporation\n( global # 96036946 ) effective 4 / 1 / 2000 thru 3 / 31 / 2002 . the meter produced an\naverage of 19 mmbtu / d for the month of april , 2000 . a deal ticket should be\ncreated and entered into sitara based upon the following information :\ncounterparty meter volume price period\nbjd - ess corporation 6563 19 mmbtu / d 85 % if / hsc 4 / 2 / 00 - 4 / 30 / 00\ngive me a call if there are any questions or concerns .\nthanks ,\nvlt\nx 3 - 6353\nmary poorman @ enron\n08 / 02 / 2000 09 : 34 am\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , vance l taylor / hou / ect @ ect , anita\nluong / hou / ect @ ect , stephanie gomes / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : resolved issue : re : meter # 0986563 -\nfyi -\nit apppears that any deliveries made during the time frame from 12 / 99 -\n04 / 02 / 00 , were made without any contractual arrangements for purchase .\ntherefore , vance explained to me that the volume of 1 , 517 dth for the period\nshould have been allocated to the strangers agreement , just as it was . any\ndeliveries were unauthorized ( udog ) and the gas then belongs to hpl . please\ngive vance a call if you have any further questions regarding this issue .\nthank you all for your patience and assistance . i appreciate it !\nmary jane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.199+0000", "entityId": 2814, "properties": {"text": "Subject: resolved issue : re : meter # 0986563 -\nfyi -\nit apppears that any deliveries made during the time frame from 12 / 99 -\n04 / 02 / 00 , were made without any contractual arrangements for purchase .\ntherefore , vance explained to me that the volume of 1 , 517 dth for the period\nshould have been allocated to the strangers agreement , just as it was . any\ndeliveries were unauthorized ( udog ) and the gas then belongs to hpl . please\ngive vance a call if you have any further questions regarding this issue .\nthank you all for your patience and assistance . i appreciate it !\nmary jane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.204+0000", "entityId": 2815, "properties": {"text": "Subject: meter # : 6599\ndeal 138049 is committed reserve long term gas totaling 1 , 350 mm per day\nwhich is a good deal .\nhowever , deal # : 348446 is a duplicate deal which was overstated and\nshould be zeroed out { bad deal } .\nthis is vance response to an inquiry made by bob .\ndaren , do you want me to zero out deal # : 348446 ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.208+0000", "entityId": 2816, "properties": {"text": "Subject: re : meter # 0986563 -\ndaren ,\nthis deal began in may , 2000 . i don ' t have a deal to book to from 12 / 99 -\n04 / 00 . could you please retro the deal , or please tell me whom i need to\nspeak to to clear this matter up ? thank you for your time and patience\nthe rookie\next . 35251\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 08 / 02 / 2000 09 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert cotten @ ect 08 / 01 / 2000 02 : 52 pm\nto : mary poorman / na / enron @ enron\ncc :\nsubject : re : meter # 0986563 -\nmary ,\nbjd - ess corp is selling this gas to hplc . the deal ticket # is 258345 . this\nis a gathering contract that is attached to the wellhead portfolio . let me\nknow if you need any other information .\nbob\nmary poorman @ enron\n08 / 01 / 2000 02 : 17 pm\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : meter # 0986563 -\nbob ,\ncould you help me find out who owns the gas at this meter . . . . . .\nthank you\nmary\next . 35251\nmary poorman\n08 / 01 / 2000 01 : 04 pm\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : meter # 0986563 -\npat ,\nthis is the texaco fee cp , it flowed a total of 1 , 517 from dec 99 to apr 2\n2000 . there is a strangers agmt . set up to take allocations , however , this\nmust be a wellhead related pt . that has declined . how do i go about finding\nout who this belongs to ? i thought about ringing texaco , but , wanted to\ncheck before i made any calls .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 08 / 01 / 2000 01 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita luong @ ect\n08 / 01 / 2000 10 : 29 am\nto : stephanie gomes / hou / ect @ ect , mary poorman / na / enron @ enron\ncc :\nsubject : meter # 0986563 -\nstephanie , you are correct . there ' s no deal set up for this meter from 12 / 99\nthru 4 / 2000 .\nmary , please take a look at the meter for the months in question and let\nstephanie or myself know whose gas this belongs to .\nlet me know if you have any questions .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita luong / hou / ect on 08 / 01 / 2000 10 : 24\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 08 / 01 / 2000 09 : 39 am\nto : anita luong / hou / ect @ ect\ncc :\nsubject : meter # 0986563 -\nanita ,\nif you are no longer handling this meter , please pass this email on to the\ncorrect person .\nfor meter # 6563 , i have meter statements showing that volume did flow for\n12 / 99 - 4 / 00 production on this meter . i am not seeing this volume in volume\nmanagement for these production months . for 5 / 00 and 6 / 00 production , the\nvolumes are there . is the reason because a deal number needs to be set up ?\nplease let me know .\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.214+0000", "entityId": 2817, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.219+0000", "entityId": 2818, "properties": {"text": "Subject: july activity driver survey\nwe are in the midst of enhancing the operations pricing model ( fka\ntransaction costing model ) and as a result the following applies :\n- do not need the hours surveys completed for july or august\n- need the activity driver surveys completed for july and august\nattached is the activity driver survey for the month of july . please fill\nout the attached activity driver survey with july numbers for your rc and\nreturn to shari mao by end of day friday , august 11 .\nduring the enhancment period ( july and august ) we will be standardizing and\nconsolidating activities across all commodities and operational functions .\nthis will result in a shorter survey and easier time assignment to activities\nfor your teams . the shorter and easier surveying process will begin with the\nseptember survey .\nplease call either me or shari mao at 39641 or 33859 , respectively for any\nclarification . thanks for your patience and help ,\njames scribner", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.224+0000", "entityId": 2819, "properties": {"text": "Subject: more changes to eastrans nomination changes effective 8 / 4 / 00\nplease disregard the memo below and the following will apply for 8 / 4 / 00 :\ndeliveries to eastrans will be 7 , 800 mmbtu / dy\nredeliveries into hpl from fuels cotton valley\nfor 8 / 5 , 8 / 6 , & 8 / 7 ( saturday , sunday & monday ) deliveries to eastrans will be\n7 , 800 mmbtu / dy ( 23 , 400 mmbtu for 3 days ) . the deliveries of this gas will\noccur\nin a batch on monday , 8 / 7 .\nredeliveries into hpl from fuels cotton valley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n08 / 03 / 2000 11 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n08 / 03 / 2000 08 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad\nw . cass / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec , bruce\nmcmills / ftworth / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec , donna\nc . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec\ncc :\nsubject : eastrans nomination changes effective 8 / 4 / 00\nplease increase deliveries to eastrans to 30 , 000 mmbtu / dy effective 8 / 4 / 00\nthe redeliveries will be :\n7 , 800 from fuels cotton valley\n22 , 200 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.228+0000", "entityId": 2820, "properties": {"text": "Subject: eastrans nomination changes effective 8 / 4 / 00\nplease increase deliveries to eastrans to 30 , 000 mmbtu / dy effective 8 / 4 / 00\nthe redeliveries will be :\n7 , 800 from fuels cotton valley\n22 , 200 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.233+0000", "entityId": 2821, "properties": {"text": "Subject: hpl nom for august 4 , 2000\n( see attached file : hplo 804 . xls )\n- hplo 804 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.237+0000", "entityId": 2822, "properties": {"text": "Subject: enron / hpl actuals for august 2 , 2000\nteco tap 15 . 000 / enron ; 110 . 000 / hpl iferc\nls hpl lsk ic 27 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.242+0000", "entityId": 2823, "properties": {"text": "Subject: revised nomination - trevino plant\ni just received this e - mail . . . . .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 08 / 04 / 2000 11 : 37\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" evelyn daniel \"\n08 / 04 / 2000 09 : 58 am\nto : ,\ncc :\nsubject : revised nomination - trevino plant\nbeverly :\nplease see attached revised nomination for the above plant .\ni know carlos is out today . he said stella was handling this , but i don ' t\nknow her e - mail address . i did call her and leave a voice mail .\nthanks for your help .\nevelyn daniel\ndevon energy\n( 405 ) 552 - 4585\n( 405 ) 552 - 4664\n- beverly beaty - carlos rodriguez spreadsheet . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.247+0000", "entityId": 2824, "properties": {"text": "Subject: enron / hpl actuals for august 3 , 2000\nteco tap 20 . 000 / enron ; 91 . 667 / hpl iferc\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.251+0000", "entityId": 2825, "properties": {"text": "Subject: hpl nom for august 5 , 2000\n( see attached file : hplo 805 . xls )\n- hplo 805 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.257+0000", "entityId": 2826, "properties": {"text": "Subject: your username and password\ndear daren farmer ,\nhere is your username and password that you requested .\nusername : dfarmer 2\npassword : jungle\nyou can update your info at :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.262+0000", "entityId": 2827, "properties": {"text": "Subject: reorg . meeting\nplease find attached my notes on the 3 different options that we discussed on\nlast thursday . please review the options carefully and send me your\nrevisions / amendments by the end of the day tomorrow and i will send out a\n\" final \" options list . particular help is needed on option 3 .\nwe can take those options with us when we meet with brenda on wednesday .\nonce again thanks for all of your ideas and co - operation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.270+0000", "entityId": 2828, "properties": {"text": "Subject: bridge errors\nkeep an eye on the bridge - these are still erroring out .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.277+0000", "entityId": 2829, "properties": {"text": "Subject: alternate contact for eastrans nominations for 8 / 8 / 00\nin my absence , bruce mcmills will be the commercial defs contact for tuesday ,\naugust 8 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.282+0000", "entityId": 2830, "properties": {"text": "Subject: eastrans nomination change effective 8 / 8 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy for 8 / 8 / 00\nthe redeliveries will be 0 as well .\nthe over - delivery quantity for the fuels cotton valley gas will be valued per\nparagraph 3 of the contract price section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.286+0000", "entityId": 2831, "properties": {"text": "Subject: enron\n? ? ? keep up the good work .\n?\nwe at home love it at $ 80 + + +\n?\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.291+0000", "entityId": 2832, "properties": {"text": "Subject: re : table and buffet\nis it very dark in color ? and how big around is it ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.296+0000", "entityId": 2833, "properties": {"text": "Subject: enron actuals for august 4 thru 6 , 2000\naug . 4 teco tap 120 . 000 / hpl iferc ; 20 . 000 / enron\nls hpl katy 20 . 000 / enron\naug . 5 teco tap 96 . 667 / hpl iferc ; 20 . 000 /\nenron\nls hpl katy 20 . 000 / enron\naug . 6 teco tap 120 . 000 / hpl iferc ; 20 . 000 /\nenron\nls hpl katy 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.301+0000", "entityId": 2834, "properties": {"text": "Subject: hpl noms for august 8 , 2000\n( see attached file : hplo 808 . xls )\n- hplo 808 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.306+0000", "entityId": 2835, "properties": {"text": "Subject: re : resolved issue : re : meter # 0986563 -\nvance ,\ndeal # 358125 has been created and entered in sitara .\nbob\nvance l taylor\n08 / 02 / 2000 10 : 19 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect , anita\nluong / hou / ect @ ect , stephanie gomes / hou / ect @ ect , pat clynes / corp / enron @ enron ,\nmary poorman / na / enron @ enron , hillary mack / corp / enron @ enron , melissa\ngraves / hou / ect @ ect\nsubject : re : resolved issue : re : meter # 0986563 -\nrobert ,\nhplc entered into a gas purchase agreement with the bjd - ess corporation\n( global # 96036946 ) effective 4 / 1 / 2000 thru 3 / 31 / 2002 . the meter produced an\naverage of 19 mmbtu / d for the month of april , 2000 . a deal ticket should be\ncreated and entered into sitara based upon the following information :\ncounterparty meter volume price period\nbjd - ess corporation 6563 19 mmbtu / d 85 % if / hsc 4 / 2 / 00 - 4 / 30 / 00\ngive me a call if there are any questions or concerns .\nthanks ,\nvlt\nx 3 - 6353\nmary poorman @ enron\n08 / 02 / 2000 09 : 34 am\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , vance l taylor / hou / ect @ ect , anita\nluong / hou / ect @ ect , stephanie gomes / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : resolved issue : re : meter # 0986563 -\nfyi -\nit apppears that any deliveries made during the time frame from 12 / 99 -\n04 / 02 / 00 , were made without any contractual arrangements for purchase .\ntherefore , vance explained to me that the volume of 1 , 517 dth for the period\nshould have been allocated to the strangers agreement , just as it was . any\ndeliveries were unauthorized ( udog ) and the gas then belongs to hpl . please\ngive vance a call if you have any further questions regarding this issue .\nthank you all for your patience and assistance . i appreciate it !\nmary jane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.310+0000", "entityId": 2836, "properties": {"text": "Subject: re : united oil & minerals , inc . , chapman unit # 1\nvance ,\ndeal # 357904 has been created and entered in sitara .\nbob\nvance l taylor\n08 / 04 / 2000 04 : 06 pm\nto : robert cotten / hou / ect @ ect , hillary mack / corp / enron @ enron , lisa\nhesse / hou / ect @ ect , trisha hughes / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , tom acton / corp / enron @ enron\nsubject : united oil & minerals , inc . , chapman unit # 1\nbob ,\nthe following production commenced to flow on friday and a ticket should be\ncreated and entered into sitara based on the following :\ncounterparty meter volumes price period\nunited oil & minerals , inc . 9846 1 , 500 mmbtu / d 100 % gas daily less $ 0 . 12\n8 / 4 - 8 / 31\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of september .\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 08 / 04 / 2000\n03 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 08 / 03 / 2000 02 : 53 pm\nto : vance l taylor / hou / ect @ ect , jennifer blay / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , christy\nsweeney / hou / ect @ ect , jill t zivley / hou / ect @ ect\nsubject : united oil & minerals , inc . , chapman unit # 1\nvance ,\nper jill and vic , tomorrow we will be getting a first turn on notice for the\nunited oil & minerals , chapman unit # 1 well ( meter 9846 ) .\nwhen you see this notice , please prepare your usual spot ticket request per\nthe following :\nterm : 8 / 4 / 00 - 8 / 31 / 00\nprice : gas daily less $ 0 . 12\nexpected volumes : 1 , 500 mmbtu / d ( please alter per esther ' s notice as\nnecessary )\njennifer ,\nonce vance requests the sitara ticket and provides you with the sitara deal\nnumber , please ensure that a gtc spot is sent to doyle valdez at united oil &\nminerals , inc . ( fax # : 361 - 328 - 8189 ) .\nplease also provide a copy of the gtc for our records ( hpl ' s fax # :\n713 - 345 - 7040 ) .\nthank you ,\nmelissa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.315+0000", "entityId": 2837, "properties": {"text": "Subject: august 2000 activity\nwill there be a \" buyback \" deal for shell oil company for aug . 2000 .\ndeal # : 138086 expired july 31 st .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.320+0000", "entityId": 2838, "properties": {"text": "Subject: re : formosa meter # : 1000\nthe deal will continue as in months past , however the sales price is i ( . 035 ) .\nyou may roll old deals for another month or give me the ticket numbers and i\nwill do so .\nthanks ,\ngary\nfrom : robert e lloyd 08 / 07 / 2000 08 : 46 am\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , rita wynne / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\nsubject : formosa meter # : 1000\nurgent request !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 07 / 2000\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 03 / 2000 04 : 48 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : formosa meter # : 1000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 03 / 2000\n04 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 02 / 2000 03 : 48 pm\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : formosa meter # : 1000\nwill there be a buyback ticket for formosa during august 2000 activity .\ndeal # : 92881 expired july 31 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.325+0000", "entityId": 2839, "properties": {"text": "Subject: formosa meter # : 1000\nurgent request !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 07 / 2000\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 03 / 2000 04 : 48 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : formosa meter # : 1000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 03 / 2000\n04 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 02 / 2000 03 : 48 pm\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : formosa meter # : 1000\nwill there be a buyback ticket for formosa during august 2000 activity .\ndeal # : 92881 expired july 31 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.330+0000", "entityId": 2840, "properties": {"text": "Subject: hpl nom for august 9 , 2000\n( see attached file : hplo 809 . xls )\n- hplo 809 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.335+0000", "entityId": 2841, "properties": {"text": "Subject: august 2000 activity\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 08 / 08 / 2000\n09 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 07 / 2000 02 : 39 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : august 2000 activity\nwill there be a \" buyback \" deal for shell oil company for aug . 2000 .\ndeal # : 138086 expired july 31 st .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.341+0000", "entityId": 2842, "properties": {"text": "Subject: re : bridge errors\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary m smith / hou / ect on 08 / 09 / 2000 04 : 30\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : heidi withers 08 / 09 / 2000 04 : 12 pm\nto : mary m smith / hou / ect @ ect\ncc :\nsubject : re : bridge errors\nthis is fixed as of right now . don ' t see it in the bridge monitor as\nerroring out .\nmary m smith\n08 / 09 / 2000 12 : 31 pm\nto : heidi withers / hou / ect @ ect\ncc :\nsubject : bridge errors\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary m smith / hou / ect on 08 / 09 / 2000 12 : 30\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n08 / 08 / 2000 09 : 07 am\nto : mary m smith / hou / ect @ ect\ncc :\nsubject : bridge errors\nmary ,\nthese are transport related tickets . is this something that your group would\nlook into ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 08 / 08 / 2000\n09 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thomas engel 08 / 08 / 2000 06 : 55 am\nto : daren j farmer / hou / ect @ ect , steve venturatos / hou / ect @ ect , hillary\nmack / corp / enron @ enron\ncc :\nsubject : bridge errors\nkeep an eye on the bridge - these are still erroring out .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.346+0000", "entityId": 2843, "properties": {"text": "Subject: pg & e texas pipeline\nkellie ,\npg & e will probably try to bill us for parking a volume of 10 , 263 for august 8\nand 9 at $ . 03 / mmbtu each day . please do not pay this charge when we receive\nthis invoice . pg & e was unable to make deliveries into el paso because of\nhigh sulfur content in their gas and is trying to charge us with a parking\ncharge for gas that they could not deliver . please let me know if you need\nany additional information . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.351+0000", "entityId": 2844, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for august 3 , 2000\nthe issue on this day has been resolved .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 08 / 09 / 2000\n05 : 49 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" melissa jones \" on 08 / 09 / 2000 03 : 52 : 29 pm\nto : \" charlie stone \" , \" gary green \" ,\ntimpowell @ txu . com , daren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : revision # 1 - enron / hpl actuals for august 3 , 2000\nteco tap 88 . 542 / hpl iferc ; 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.356+0000", "entityId": 2845, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for august 3 , 2000\nteco tap 88 . 542 / hpl iferc ; 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.361+0000", "entityId": 2846, "properties": {"text": "Subject: hpl nom for august 10 , 2000\n( see attached file : hplo 810 . xls )\n- hplo 810 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.367+0000", "entityId": 2847, "properties": {"text": "Subject: revised noms - gathering contracts\ndave ,\neffective 8 / 9 , expected volumes were revised to the deal tickets on the\nattached sheet . the volumes were revised to those in the avg column . in\naddition , a deal ticket was entered for cokinos natural gas at meter 9842\neffective 8 / 1 with a volume of 7 , 000 / day . also , deal ticket 344928 with a\nvolume of 800 / day was changed from trade zone ( s ) 1 to 18 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.374+0000", "entityId": 2848, "properties": {"text": "Subject: re : meter # : 1266 ; july 2000 activity / allocation exception\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n03 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 08 / 09 / 2000 03 : 33 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\ni ' ll get you a price tomorrow when i meet with him . . .\nfrom : robert e lloyd 08 / 09 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.382+0000", "entityId": 2849, "properties": {"text": "Subject: meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.389+0000", "entityId": 2850, "properties": {"text": "Subject: re : industrial report\nrobert e lloyd @ ect\n08 / 09 / 2000 09 : 44 am\nto : pat clynes / corp / enron @ enron\ncc :\nsubject : re : industrial report\ni am completing the last of 3 - worksheets { 1 - julie m . & 2 - ken s . } today and\nwill distribute them once i finish .\nsorry for the delay but various office julie meyers file or ken\nseaman file ?\nboth files provide similar data which is helpful to all of our support\ngroups .\nto prepare both files i feel is a duplicate of my efforts . please let\nknow if you want both files updated\nand the approximate time table for completion .\nenron north america corp .\nfrom : pat clynes @ enron 07 / 31 / 2000 09 : 02 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect\nsubject : re : indutrial report\nrobert ,\nthis is the file that i referenced in my last email . please get this file\ngoing again . thanks , pat\ndaren j farmer @ ect\n02 / 25 / 2000 04 : 52 pm\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : indutrial report\nrobert ,\nken developed an industrial report before he left . it can be found at\no / logistics / kenseaman / industrialsmonthly / . . . there is one file for each\nmonth of 2000 . i need you to update this for march . this will need to be\ndistributed to gas control , logistics , and myself . let me know if you have\nany questions .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.394+0000", "entityId": 2851, "properties": {"text": "Subject: restricted list\nneither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\n3 tec energy corp . tten\nactive power acpw\nadrian resources adrrf\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncostilla energy cose\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nesenjay exploration esnj\nfirstworld communications inc . fwis\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nquanta services inc . pwr\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nsaxon petroleum , inc . sxn cn\nsouthwest royalties swroy\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntetonka drilling tdi\ntranscoastal marine services , inc . tcms\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in\nthe\npolicy for the benefit of any party other than ena / rac / egf , whether for\nhis / her own account or the account of any third party , where such position\nrelates to ( i ) any commodity , financial instrument , security , equity ,\nfinancial asset or liability which falls within such employee ' s\nresponsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.400+0000", "entityId": 2852, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.404+0000", "entityId": 2853, "properties": {"text": "Subject: cdnow order confirmation\ndear daren ,\nthank you for shopping at cdnow .\nthis email is to confirm your order number 21424229 .\nto check the status of this order or to make any changes , click or\ncopy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 21424229\nyou can also access your order history directly from our home page .\nyou have ordered the following item :\nfats domino : 50 greatest hits ( cd )\nthis will ship via u . s . postal service .\nthe shipping address for this order is :\ndaren farmer\n5519 clarkston ln\nspring , tx 77379\nyour order total is $ 28 . 98 .\nplease do not reply to this email . if you have questions about your\norder that are not addressed in your online order history , please visit\nour contact cdnow page using this link :\nhttp : / / cdnow . com / service\nthis order is worth 270 fast forward rewards ( tm ) program\npoints . these \" points pending \" will appear in your membership summary as\n\" points earned \" after your order has shipped .\nthanks again for shopping at cdnow .\nsincerely ,\ncdnow customer service\nnever miss a beat .\ncdnow , inc .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.409+0000", "entityId": 2854, "properties": {"text": "Subject: revision # 1 - hpl nom for august 11 , 2000\n( see attached file : hplo 811 . xls )\n- hplo 811 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.414+0000", "entityId": 2855, "properties": {"text": "Subject: hpl nom for august 11 , 2000\noops , i sent you the wrong nom . . . here is the correct hpl nom for august 11 ,\n2000 . . sorry . . . .\n( see attached file : hplo 811 . xls )\n- hplo 811 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.419+0000", "entityId": 2856, "properties": {"text": "Subject: hpl nom for august 11 , 2000\n( see attached file : wtxo 811 . xls )\n- wtxo 811 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.424+0000", "entityId": 2857, "properties": {"text": "Subject: enron / hpl actuals for august 9 , 2000\nteco tap 20 . 000 / enron ; 44 . 167 / hpl iferc\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.431+0000", "entityId": 2858, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for july 23 , 2000 10 . 000 / enron\nls hpl lsk ic 30 . 000 / enron\ncorrected numbers :\nteco tap 45 . 000 / hpl iferc ; 10 . 000 / enron\nls hpl lsk ic 30 . 000 / enron\njuly 28 , 2000\nprevious numbers :\nteco tap 10 . 000 / enron ; 61 . 250 / hpl iferc ; 8 . 750 / hpl gas\ndaily\nls hpl lsk ic 30 . 000 / enron\ncorrected numbers :\nteco tap 10 . 000 / enron ; 66 . 250 / hpl iferc ; 3 . 750 / hpl gas\ndaily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.438+0000", "entityId": 2859, "properties": {"text": "Subject: re : tri - c - governer bill daniels # 1\nmelissa ,\nthe price has been revised to 97 % if / hsc .\nbob\nenron north america corp .\nfrom : melissa graves 08 / 10 / 2000 02 : 48 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , jeffrey a austin / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : tri - c - governer bill daniels # 1\nrobert ,\nplease revise the pricing below to be : 97 % if / hsc for all volumes ( no tier ) .\nthanks ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 08 / 10 / 2000\n02 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan\nsmith\n08 / 10 / 2000 12 : 23 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect , jeffrey a\naustin / hou / ect @ ect , vance l taylor / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : tri - c - governer bill daniels # 1\nbob :\nplease create and enter a ticket into sitara based on the following :\ncounterparty meter period - volumes price\ncokinos natural gas co . 9842 8 - 1 / 8 - 30 - first 5000 / day is 96 % , over 5000\nday is 97 %\n7328 mmbtu / d\nthis is a producer services deal and should be tracked in the im wellhead\nportfolio , attached to the gathering contract .\nthank you ,\nsusan\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.443+0000", "entityId": 2860, "properties": {"text": "Subject: re : tri - c - governer bill daniels # 1\nsusan ,\ndeal # 360695 has been created and entered in sitara .\nbob\nsusan\nsmith\n08 / 10 / 2000 12 : 23 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect , jeffrey a\naustin / hou / ect @ ect , vance l taylor / hou / ect @ ect , lisa hesse / hou / ect @ ect\nsubject : tri - c - governer bill daniels # 1\nbob :\nplease create and enter a ticket into sitara based on the following :\ncounterparty meter period - volumes price\ncokinos natural gas co . 9842 8 - 1 / 8 - 30 - first 5000 / day is 96 % , over 5000\nday is 97 %\n7328 mmbtu / d\nthis is a producer services deal and should be tracked in the im wellhead\nportfolio , attached to the gathering contract .\nthank you ,\nsusan\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.447+0000", "entityId": 2861, "properties": {"text": "Subject: re : prime operating company , uribe # 1 , jennings ranch field , zapata\ncounty , tx\nmelissa ,\ndeal # 361155 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 08 / 09 / 2000 02 : 19 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , tom acton / corp / enron @ enron , mary jo johnson / hou / ect @ ect ,\njennifer blay / hou / ect @ ect , christy sweeney / hou / ect @ ect , hillary\nmack / corp / enron @ enron , lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect\nsubject : prime operating company , uribe # 1 , jennings ranch field , zapata\ncounty , tx\nbob ,\nthe following production is now on - line ( behind an existing meter ) . please\ncreate and enter a ticket into sitara based on the following :\ncounterparty meter period - volumes price\nprime operating company 6388 7 / 28 - 167 mmbtu / d 85 % gas daily\n7 / 29 - 382 mmbtu / d\n7 / 30 - 370 mmbtu / d\n7 / 31 - 415 mmbtu / d\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio , attached to the gathering contract .\nthank you ,\nmelissa\nx 39173", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.452+0000", "entityId": 2862, "properties": {"text": "Subject: calpine daily gas nomination ( weekend )\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.457+0000", "entityId": 2863, "properties": {"text": "Subject: baytown 12 ' ' pigging affected meters\nthe baytown 12 \" pigging project scheduled for august 15 has been cancelled .\nthe work has been rescheduled and is expected to begin september 12 . the\nsame list of meters will be shut - in early on the morning of september 12 and\nremain shut - in approximately three to four days .\nif you have any questions please call me 36449 .\nthanks\ngary hanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 08 / 2000 12 : 49\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 01 / 2000 10 : 55 am\nto : cheryl dudley / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect , george weissman / hou / ect @ ect , shawna\nflynn / hou / ect @ ect\ncc : steve hpl schneider / hou / ect @ ect , james mckay / hou / ect @ ect , jeffrey a\naustin / hou / ect @ ect\nsubject : baytown 12 ' ' pigging affected meters\nthe meters listed in the attached email will be shut - in in order to pig the\nbaytown 12 \" . the meters will be shut - in early on the morning of august 15 ,\nand remain shut - in for approximately five to ten days .\nif you have any questions please call me 36449 .\nthanks\ngary hanks\nmgr gas control\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 01 / 2000 10 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike vollmering @ enron\n08 / 01 / 2000 08 : 59 am\nto : gary a hanks / hou / ect @ ect , jill t zivley / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , pat flavin / gco / enron @ enron , liberty team\nhpl / gco / enron @ enron\nsubject : baytown 12 ' '\nthe columbus energy wiggins # 1 ( 989634 ) will be effected by the pigging\nproject . the tap valve is installed in the mlv bypass and the bypass will be\nremoved to blow down the line .\nhere is a list of all the producers that will be effected .\ncolumbus energy - - - - - - - - wiggins # 1 ( 989634 ) and fig orchard ( 986764 )\nsanchez o mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.461+0000", "entityId": 2864, "properties": {"text": "Subject: channel a / s line maintenance\nfyi\nthis is a reduction in total capacity from 528 , 000 to 400 , 000 at station 809 .\nhpl has typically been running about 180 , 000 to 200 , 000 mmbtu through station\n809 in august . we can pull more gas off of the a - s line at swan lake to keep\nour throughput around the 175 , 000 .\nmy original conversation with epfs was that the capacity would be limited to\naround 400 , 000 mmbtu total during the maintenance . station 809 will be down\nthrough the weekend and we will get a better picture of how much we can move\nwithout 809 running . i will visit with epfs on monday and see if we can get\nthe volume bumped up ( to 400 , 000 ) and adjust on tuesday as necessary .\nif you have any questions please call . 36449 .\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 11 / 2000 11 : 08\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" weir , gordon r . \" on 08 / 11 / 2000 10 : 54 : 54 am\nto : \" ' gary hanks ' \" , \" young , robert w . \"\n, \" phillips , pat \" , \" schwarz ,\nblake \" , \" van matre , thomas \"\ncc : \" coffey , ryan k . \" , \" zimmer , harry i . \"\n, \" veloz , corina r . \" , \" barnes ,\nkent \" , \" quinn , david \" ,\n\" valenzuela , deborah \"\nsubject : channel a / s line maintenance\nchannel a / s line maintenance\nstation 809 has scheduled maintenance on their lb solar centaur turbine for\nthe three gas flow days of august 15 , 16 & 17 , 2000 . during this\nmaintenance the 2 reciprocating engines will be operating . the estimated\ncapacity through station 809 during this time is approximately 350 , 000\nmmbtu . both owners are entitled to 1 / 2 of this capacity ( 175 , 000 mmbtu ) &\nshould schedule accordingly .\ncontact me if you have any questions .\ngordon weir\n505 - 599 - 2118\nthis email and any files transmitted with it from el paso\nenergy corporation are confidential and intended solely\nfor the use of the individual or entity to whom they are\naddressed . if you have received this email in error\nplease notify the sender .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.466+0000", "entityId": 2865, "properties": {"text": "Subject: deal number 109660\nmark has informed me that one of you would handle anything prior to 5 / 00 on\noasis . please see below . let me know if i need to provide further\ninformation .\nthanks !\nkaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen lindley / corp / enron on 08 / 11 / 2000\n04 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : karen lindley 08 / 10 / 2000 03 : 38 pm\nto : mark mccoy / corp / enron @ enron\ncc :\nsubject : deal number 109660\nhi mark !\nanother interconnect issue - 7 / 99 :\ncan you please take a look at deal 109660 ? it is set up with a transport\nusage ticket , however is a brokered deal . i am not sure if it is pathed\nincorrectly or if possibly the deal is set up incorrectly .\nlet me know your thoughts .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.474+0000", "entityId": 2866, "properties": {"text": "Subject: new pictures\nfor faster viewing , i would suggest you go to the first page of pictures and\nclick the \" small slideshow \" link . this will bring down all the photos at\nonce , and will cycle through all of them four times in a slideshow . please\nnote that it might take some time to download all the pictures , depending\nupon the speed of your connection to the internet .\nafter the slideshow starts , all of the regular - sized pictures on the other\npages will temporarily be on your pc , which should make clicking through\neach page a little faster .\nif you run into problems viewing any of the pages / pictures , please drop me a\nnote .\ntonya / daren : you will probably be more interested in the pictures on pages 5\nand 6 , which is also the fifth and sixth rows of the index page .\nthanks ,\n- ram .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.482+0000", "entityId": 2867, "properties": {"text": "Subject: sitara / cpr availability\nto all sitara users :\nthe sitara system will be brought down early this evening ( aug 11 th - 9 pm\ncentral time )\nto change the event transmission software to tibco . this software is used to\nsend data change events to\nsitara applications that are using portfolios ( position manager , deal ticker ,\nfacility assignment , deal manager ) .\nsignificant changes :\nnew deal level fees : transport reimbursement , demand reimbursement , transport\nreimbursement\nnew required field for storage service deal type : physical , synthetic\nadded help file for on - line user guide ( still being edited for content )\nadditional live link buttons to service deals ( for future use )\nadditional warnings and hints for primary and secondary service deals\nimproved audit for deleted data and d 2 d deals\nchanged price warning to $ 9 . 01 ( from $ 5 . 01 )\ncontract auto attaching matrix changed to exclude single transaction\ncontracts for on - line deals\nadded gst exempt flag to agency\nchanged default date for new efp to begin next month\nif you experience any problems with the release , please call the sitara\nhotline .\ncpr will be available during the outage .\nsitara will be available early saturday morning .\nplease call the sitara hotline ( ( 713 ) - 853 - 7049 ) if you have any questions or\nconcerns .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.489+0000", "entityId": 2868, "properties": {"text": "Subject: enron / hpl actuals for august 10 , 2000\nteco tap 20 . 000 / enron ; 64 . 583 / hpl iferc\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.494+0000", "entityId": 2869, "properties": {"text": "Subject: hpl nom for august 12 , 2000\n( see attached file : hplo 812 . xls )\n- hplo 812 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.498+0000", "entityId": 2870, "properties": {"text": "Subject: re : prime operating company , uribe # 1 , jennings ranch field , zapata\ncounty , tx\nmelissa ,\ndeal # 362921 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 08 / 10 / 2000 02 : 54 pm\nto : robert cotten / hou / ect @ ect , jennifer blay / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , tom acton / corp / enron @ enron , mary jo johnson / hou / ect @ ect ,\nchristy sweeney / hou / ect @ ect , elizabeth l hernandez / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , trisha hughes / hou / ect @ ect\nsubject : re : prime operating company , uribe # 1 , jennings ranch field , zapata\ncounty , tx\nbob / jennifer : ,\nbob ,\nthe following production is now on - line ( behind an existing meter ) . please\ncreate and enter a ticket into sitara based on the following :\ncounterparty meter period volumes price\nprime operating company 6388 8 / 1 / 00 - 8 / 31 / 00 400 mmbtu / d 85 % if / hsc\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio , attached to the gathering contract .\nonce the paper is signed and reserves are published , susan smith will prepare\na formal deal ticket for the full term .\njennifer ,\nplease prepare and transmit to prime operating company , a first purchaser gtc\nbased on the following\ninformation :\ncounterparty : prime operating company\ncontract date : 8 / 1 / 00\nterm expires : 8 / 31 / 00\ncontract type : first purchaser gtc\ncontract price : 85 % if / hsc\nsitara no . : to be assigned\ntagg no . : to be assigned\nmeter : 098 - 6388 , facility 17385\nwells :\nfacility no . facility name meter county\n50693 uribe , a . a . # 1 098 - 6388 zapata\nmailing address :\n2900 wilcrest drive , suite 475\nhouston , texas 77042 - 6009\nattention : mr . vern elmore\npayment information : by check to the above address\ntelephone number : ( 713 ) 735 - 0000\nfax number : ( 713 ) 735 - 0090\nplease provide me with a copy of the gtc for our files once completed .\nplease call if you have any questions or need additional information .\nthank you ,\nmelissa\nx 39173\n- - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 08 / 10 / 2000 11 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 08 / 10 / 2000 09 : 13 am\nto : melissa graves / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , david baumbach / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , tom acton / corp / enron @ enron ,\nmary jo johnson / hou / ect @ ect , jennifer blay / hou / ect @ ect , christy\nsweeney / hou / ect @ ect , hillary mack / corp / enron @ enron , lisa hesse / hou / ect @ ect ,\ntrisha hughes / hou / ect @ ect\nsubject : re : prime operating company , uribe # 1 , jennings ranch field , zapata\ncounty , tx\nmelissa ,\ndeal # 361155 has been created and entered in sitara .\nbob\nenron north america corp .\nfrom : melissa graves 08 / 09 / 2000 02 : 19 pm\nto : robert cotten / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , tom acton / corp / enron @ enron , mary jo johnson / hou / ect @ ect ,\njennifer blay / hou / ect @ ect , christy sweeney / hou / ect @ ect , hillary\nmack / corp / enron @ enron , lisa hesse / hou / ect @ ect , trisha hughes / hou / ect @ ect\nsubject : prime operating company , uribe # 1 , jennings ranch field , zapata\ncounty , tx\nbob ,\nthe following production is now on - line ( behind an existing meter ) . please\ncreate and enter a ticket into sitara based on the following :\ncounterparty meter period - volumes price\nprime operating company 6388 7 / 28 - 167 mmbtu / d 85 % gas daily\n7 / 29 - 382 mmbtu / d\n7 / 30 - 370 mmbtu / d\n7 / 31 - 415 mmbtu / d\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio , attached to the gathering contract .\nthank you ,\nmelissa\nx 39173", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.503+0000", "entityId": 2871, "properties": {"text": "Subject: re : meter # : 1266 ; july 2000 activity / allocation exception\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 11 / 2000\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 08 / 11 / 2000 03 : 16 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes are as follows : july lst 414 mmbtu\njuly 31 12 mmbtu\ntotal : 426 mmbtu ' s\nalso , the sitara deal # is : 363514\nfrom : lee l papayoti on 08 / 11 / 2000 02 : 02 pm\nto : robert e lloyd / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nplease set up a ticket priced at gas daily houston ship channel midpoint\nminus $ 0 . 03\nalso , can you let me know the exact volumes in question on july 1 and july\n31 ? dorcheus wants to know . me too .\nthanks\nlee\nto : lee l papayoti / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\njust a reminder that \" allocation close \" is monday , august 14 th .\na sitara ticket is needed to set up an acctg . arrangement which will\neliminate the allocation exception for meter # 981266\n{ victoria station # 2 / brandywine } .\nfrom : lee l papayoti on 08 / 09 / 2000 03 : 33 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\ni ' ll get you a price tomorrow when i meet with him . . .\nfrom : robert e lloyd 08 / 09 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.507+0000", "entityId": 2872, "properties": {"text": "Subject: cdnow shipment confirmation\ndear daren ,\nthank you for shopping at cdnow . please keep this email invoice for\nyour records .\non august 11 we shipped your order number 21424229 for the following item :\nfats domino : 50 greatest hits\nformat : cd quantity : 1 price : 25 . 99\nto the following address via u . s . postal service :\ndaren farmer\n5519 clarkston ln\nspring , tx 77379\ntotal number of items : 1\nsubtotal : $ 25 . 99\nshipping : $ 2 . 99\nsales tax : $ 0 . 00\n- - - - - - - - - -\nshipment total : $ 28 . 98\nyour order was billed to daren farmer . this shipment completes your\norder and is paid in full .\nmost orders arrive within 4 - 8 business days . however , in rare instances\nit may take up to 2 weeks .\nfor complete information about your order ( number 21424229 ) or to\nconfirm the status , click or copy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 21424229\nyou can also access your order history directly from our home page .\nplease do not reply to this email . if you have questions about your order\nthat are not addressed in your online order history , please visit our contact\ncdnow page using this link :\nhttp : / / cdnow . com / service\nfast forward rewards ( tm ) program points for this order will\nbe credited in your membership summary as \" points earned . \"\nthanks again for your order .\nsincerely ,\ncdnow customer service\nnever miss a beat .\ncdnow , inc .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.512+0000", "entityId": 2873, "properties": {"text": "Subject: garrett ' s birthday pictures\ngeoff ,\nthanks for the pictures . looks like the kids had a great time !\ni hope you don ' t mind , but i ' ve taken liberty to turn them into a web photo\nalbum at http : / / 24 . 27 . 98 . 30 / pictures / 08 - 05 _ garrett _ gayle _ bday . if you want\nto pass this web site address along to other folks , feel free .\nif you want a cd copy of this web site , give me a yell .\nthanks ,\nram tackett , ( mailto : rtackett @ abacustech . net )\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\n( 281 ) 651 - 7106 ; fax ( 281 ) 528 - 8636 web : http : / / www . abacustech . net\n- ram tackett ( e - mail ) . vcf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.518+0000", "entityId": 2874, "properties": {"text": "Subject: payroll distribution\nto : employees in the enron building , three allen center , and jefferson\nbuilding\nthe sap project team , payroll , hr and mailroom have been working to resolve\nthe problems some employees have experienced with the delivery of their\npaychecks . if your paycheck or direct deposit advice is not delivered to\nyour mailstop on payday , please contact the mailroom at 853 - 6231 for\nresolution .\nto change the mailstop to which your paycheck is distributed , please contact\nyour hr representative .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.523+0000", "entityId": 2875, "properties": {"text": "Subject: on call notes for weekend dated ; august 12 th thru 13 th\nattached are the notes from this weekend .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.527+0000", "entityId": 2876, "properties": {"text": "Subject: re : enron / hpl actuals for august 11 - 13 , 2000\nrevision for august 13 , 2000\naugust 11 , 2000\nteco tap 108 . 333 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron\naugust 12 , 2000\nteco tap 85 . 000 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron\naugust 13 , 2000\nteco tap 32 . 500 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.532+0000", "entityId": 2877, "properties": {"text": "Subject: re : enron / hpl actuals for august 11 - 13 , 2000\noops , you are right . sorry .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.538+0000", "entityId": 2878, "properties": {"text": "Subject: enron / hpl actuals for august 11 - 13 , 2000\naugust 11 , 2000\nteco tap 108 . 333 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron\naugust 12 , 2000\nteco tap 85 . 000 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron\naugust 13 , 2000\nteco tap 32 . 500 / hpl iferc ; 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.544+0000", "entityId": 2879, "properties": {"text": "Subject: hpl nom for august 15 , 2000\n( see attached file : hplo 815 . xls )\n- hplo 815 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.549+0000", "entityId": 2880, "properties": {"text": "Subject: august 2000 buyback worksheet\nattached is a listing of august 2000 activity \" buybacks \" .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.554+0000", "entityId": 2881, "properties": {"text": "Subject: equistar meter # 1552\ndaren\nwe just did a deal for the rest of the month for 10 , 000 / d at meter # 1552\nqe - 1 @ $ 4 . 355 . . . . can you let me and robert lloyd know what the sitara # is ?\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.559+0000", "entityId": 2882, "properties": {"text": "Subject: meter # 1552\nrobert ,\nthere is a large variance between noms and flow at this meter . is everyone\nin the loop on this . pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.564+0000", "entityId": 2883, "properties": {"text": "Subject: re : formosa meter # : 1000\nurgent ! !\nshould i roll sitara ticket # : 92876 { swing ticket for formosa } for august\n2000 ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 14 / 2000\n10 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 08 / 07 / 2000 09 : 39 am\nto : gary w lamphier / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , gary w lamphier / hou / ect @ ect\nsubject : re : formosa meter # : 1000\ngary : i will roll deal # : 92881 for formosa buyback . thanks !\nplease verify the \" commodity fee \" as being\nwhat you want .\nenron north america corp .\nfrom : gary w lamphier 08 / 07 / 2000 09 : 21 am\nto : robert e lloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , rita wynne / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\nsubject : re : formosa meter # : 1000\nthe deal will continue as in months past , however the sales price is i ( . 035 ) .\nyou may roll old deals for another month or give me the ticket numbers and i\nwill do so .\nthanks ,\ngary\nfrom : robert e lloyd 08 / 07 / 2000 08 : 46 am\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , rita wynne / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\nsubject : formosa meter # : 1000\nurgent request !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 07 / 2000\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 03 / 2000 04 : 48 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : formosa meter # : 1000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 03 / 2000\n04 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 02 / 2000 03 : 48 pm\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : formosa meter # : 1000\nwill there be a buyback ticket for formosa during august 2000 activity .\ndeal # : 92881 expired july 31 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.569+0000", "entityId": 2884, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.574+0000", "entityId": 2885, "properties": {"text": "Subject: tux fuel nominations for 8 / 16 / 00\nplease advise should you have any questions concerning the attached .\n( see attached file : hplo 816 . xls )\n- hplo 816 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.579+0000", "entityId": 2886, "properties": {"text": "Subject: enron / hpl actuals for august 14 , 2000\n- - august 14 , 2000\nteco tap 67 . 500 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.583+0000", "entityId": 2887, "properties": {"text": "Subject: organisational meeting\nplease plan on attending an organisational meeting today at 2 : 30 in room 46 cl .\nsorry for the short notice .\nif you can not make it , please get with steve jackson , leslie reeves or\nmyself so we can\nkeep you informed .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.589+0000", "entityId": 2888, "properties": {"text": "Subject: transport and logistics customer happy hour\nplease mark your calendar for the transportation and logistics customer happy\nhour on thursday sept . 21 st .\nit will be at ninfa ' s starting at 4 : 00 pm . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.593+0000", "entityId": 2889, "properties": {"text": "Subject: request submitted : access request ( ygcy - 4 n 9 kdl )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yvette g connevey / corp / enron on\n08 / 16 / 2000 10 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ninformation risk management\n08 / 16 / 2000 10 : 02 am\nsent by : yvette g connevey\nto : yvette g connevey / corp / enron @ enron\ncc :\nsubject : request submitted : access request ( ygcy - 4 n 9 kdl )\nthank you for your request .\nyou will be notified via email when your request has been processed . you can\ncheck the progress of your request by doing one of the following :\nin the srrs application , click on requests i have made . a listing of recent\nrequests will be appear sorted by resource name .\nclick on the request link below . this is a link to information regarding your\nrequest .\nbelow is a summary of your request .\nrequested for : liz bellamy\nrequest date : 8 / 16 / 2000 9 : 59 : 46 am\nrequest type : new hire - employee\nrequest link :\nrequested resources\ncpr - houston\ndefault applications\nlotus notes - new id access only 4 . 5 a\nsitara - production us\nunify - market ops .\nunify - pipeline operations\nif you have any questions , please contact information risk management at 35536", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.599+0000", "entityId": 2890, "properties": {"text": "Subject: re : june 00 production - o ' connor & hewitt ltd .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 08 / 16 / 2000\n02 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndelma salazar @ enron\n08 / 16 / 2000 02 : 30 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : re : june 00 production - o ' connor & hewitt ltd .\ndave :\nthanks for your help , but i found it - - in unify , it ' s t - c oil .\nenron capital management\nfrom : david baumbach @ ect 08 / 16 / 2000 01 : 36 pm\nto : delma salazar / na / enron @ enron\ncc :\nsubject : re : june 00 production - o ' connor & hewitt ltd .\naccording to daren farmer , this is the name . unify should have something for\nthem . if i find out anything different i ' ll let you know .\ndave\ndelma salazar @ enron\n08 / 16 / 2000 12 : 53 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : june 00 production - o ' connor & hewitt ltd .\ndave :\nthis was flashed as o ' connor & hewitt ltd ( 233 , 343 mmbtu , $ 1 , 010 , 836 . 57 ) , but\ni don ' t see anything coming through in unify - - do you know if maybe they\nhave another name ?\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.608+0000", "entityId": 2891, "properties": {"text": "Subject: samson burger well\nif you don ' t see the first delivery notice let me know .\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 16 / 2000 03 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mary jo johnson 08 / 16 / 2000 02 : 00 pm\nto : james mckay , gary a hanks / hou / ect @ ect , edward d gottlob / hou / ect @ ect ,\nvance taylor , jill t zivley / hou / ect @ ect\ncc : esther buckley / hou / ect @ ect , christy sweeney / hou / ect\nsubject : samson burger well\nthe samson well will be coming on this afternoon at 1 . 5 to 2 . 5 million / d and\nincreasing to 10 mmbtu / d by sept 1 . this gas should be diverted into the\nduke / sheridan interconnect . gas is priced at gas daily for this intermonth\nflow and goes to ifhsc for the term contract . please call if you have any\nquestions . thanks , mjj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.614+0000", "entityId": 2892, "properties": {"text": "Subject: deal ticket 329242 ; meter 986887\nthere is a drab of gas ; 34 mm ' s on the first of august on the meter .\nprobably from valving off . the above ref ' d deal was from jul , do you want to\nextend it for one day ? let me know .\nmary\n35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.619+0000", "entityId": 2893, "properties": {"text": "Subject: hpl nom for august 17 , 2000\n( see attached file : hplo 817 . xls )\n- hplo 817 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.623+0000", "entityId": 2894, "properties": {"text": "Subject: enron / hpl actuals for august 15 , 2000\nteco tap 120 . 000 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.628+0000", "entityId": 2895, "properties": {"text": "Subject: industrial worksheets for august 2000 activity\nattached are the worksheets for august 2000 activity . there are three\ndifferent worksheets { 2 - supply & 1 - market } .\nthe market worksheet is preliminary and will continuously be updated\nthroughout the month .\nthe supply worksheets capture all \" buybacks and the relevant pricing data .\nthese three worksheets can be found in two separate files . o :\nlogistics / robert lloyd / buydeaug 2000 . xls . . . . . . . . . . . . . supply\no : logistics / ken\nsorry for the delay in providing you ' ll this data .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.632+0000", "entityId": 2896, "properties": {"text": "Subject: channel dispatch 08 / 17 / 00\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 17 / 2000 03 : 44\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" weir , gordon r . \" on 08 / 16 / 2000 05 : 40 : 30 pm\nto : blake schwarz , charlie mcgarity\n, david quinn , deborah\nvalenzuela , dwight gentry ,\ngarald ross , gary martinez ,\ngordon weir , gregory neese , harry\nzimmer , james armenta , james\njohnston , jimmy logan , jimmy\nsteele , kelly prespentt ,\nkent barnes , larry jaquet , pat\nphillips , phil tibbets ,\nrichard caster , robert shimek ,\nrobert young , ronnie benson ,\nrussell cowart , ryan coffey ,\nscheduling epfs , scott brown\n, steve jurecek , steven liles\n, thomas van matre , walter\nfarley , audrey pullen , chris\nsonneborne , earl tisdale\n, gary hanks , james mckay\n, kimberly vaughn , lauri\nallen , mike morris\ncc :\nsubject : channel dispatch 08 / 17 / 00\n- book 3 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.637+0000", "entityId": 2897, "properties": {"text": "Subject: new storage flag\nat your earliest convenience , please add the new storage flag to all your\nstorage deals .\nyou can find them in the portfolio shown below . this is a new required field\nthat will be used in global\nto feed to unify . physical facility storage and synthetic storage ( parking )\nare treated differently for accounting purposes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.642+0000", "entityId": 2898, "properties": {"text": "Subject: new book\nplease create the following books to be used in sitara and tagg . let me know\nif i forgot any information .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.646+0000", "entityId": 2899, "properties": {"text": "Subject: hpl nom for august 18 , 2000\n( see attached file : hplo 818 . xls )\n- hplo 818 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.651+0000", "entityId": 2900, "properties": {"text": "Subject: enron / hpl actuals for august 16 , 2000\nteco tap 120 . 000 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.655+0000", "entityId": 2901, "properties": {"text": "Subject: new book\nplease create the following books to be used in sitara and tagg . let me know\nif i forgot any information .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.659+0000", "entityId": 2902, "properties": {"text": "Subject: equistar\njust sold some same day ( today ! ) gas to equistar @ meter 1553 . . . . whatever\nflows there on this gas day will be priced @ $ 4 . 40 . . .\nplease enter into sitara\nthanks ! ! !\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.664+0000", "entityId": 2903, "properties": {"text": "Subject: hpl meter # 985355 brown common point\ndaren :\nduring the period of 1 / 1 / 99 thru 7 / 31 / 00 , the above meter has recorded flow\non the following days :\ndays mmbtus\n3 / 30 / 99 22\n4 / 30 / 99 21\n8 / 3 / 99 5\n8 / 30 / 99 73\n10 / 28 / 99 10\n10 / 29 / 99 5\n1 / 30 / 00 7\n1 / 31 / 00 29\n4 / 27 / 00 13\n7 / 31 / 00 18\n203\ncurrently , these volumes are being booked under the hpl strangers gas\ncontract . logistics needs either a deal to record these volumes which have\nflowed into hpl ' s pipeline or logistics need approval to writeoff these\nvolumes to unaccounted for gas .\nthanks , clem\nps : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\napproval to writeoff the volumes to unaccounted for gas\nor\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ndeal / deal ticket / customer ( seller / shipper )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.668+0000", "entityId": 2904, "properties": {"text": "Subject: hpl noms for august 19 thru 21 , 2000\n( see attached file : hplo 819 . xls )\n- hplo 819 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.673+0000", "entityId": 2905, "properties": {"text": "Subject: enron actuals for august 17 , 2000\nteco tap 120 . 000 / iferc 20 . 000 / enron\nlsp hpl katy 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.678+0000", "entityId": 2906, "properties": {"text": "Subject: unify passwords will be reset under sybase 12 . 0\nall ,\nwhen we convert unify to sybase 12 . 0 , all passwords will get reset to\n\" houston \" . once you login to unify you will have to change you password .\nthis is an unavoidable side affect of migrating to sybase 12 . 0 .\nthanks ,\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.683+0000", "entityId": 2907, "properties": {"text": "Subject: virtual office suite from jobsonline . com\nbecome a high flyer with jobsonline !\njobsonline wants to help you move into the fast lane by giving away an entire\nvirtual office . the internet ? s leading job site is giving away a laptop\ncomputer , a palm pilot , a cellular phone and a leather briefcase to one lucky\nperson who registers with the site between now and the end of september ! when\nyou register with jobsonline , not only will you be in with a chance to win\nthese fabulous prizes , but you will also have access to their free job\ndatabase .\n( if this hyperlink is not completely highlighted , please copy it to your\nbrowser . )\njobsonline is one of the internet ' s leading sites for employment information\nand career resources . search their extensive database of job postings to make\nyour next career move . and use the site ? s valuable career resources to assist\nyou in your job search , or to succeed in your current position . even better ,\nit ? s all free .\ntake one minute to register with jobsonline and you will automatically be\nentered in our virtual office giveaway .\n( if this hyperlink is not completely highlighted , please copy it to your\nbrowser . )\nyou have received this email because you or someone using your email address\nagreed to receive special offers and promotions from enterprise marketing\nsolutions and its web site partners .\nif you wish to be excluded from future offers please click on\nmailto : @ goemsi . com and type \" unsubscribe \" in the subject\nline and click ? send ? .\nas always , if you have questions or comments for us , please send them to\nmailto : @ goemsi . com\nif you wish to know more about our privacy policies please go to\nhttp : / / www . goemsi . com / privst . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.688+0000", "entityId": 2908, "properties": {"text": "Subject: meter 980070 ; oct 99\ndaren ,\nthere are two purchases at the above referenced meter for the 28 th of oct . ,\n1999 . gas flowed without a purchase from the 29 th through the 31 st . please\nlet me know if we should be paying the swing parties ( deal ticketsl 17738 and\n120359 ) , or how i should allocate the volume .\nthank you for your time and patience ! !\nmary jane\next . 35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.693+0000", "entityId": 2909, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.699+0000", "entityId": 2910, "properties": {"text": "Subject: meter 981491\ndaren ,\nwe have deliveries of about 4 , 500 / mo . , more or less , at this meter beginning\nin may , 2000 . these volumes are currently on the strangers agmt , but , i\nfeel that a sales deal should be out there . please let me know what needs\nto be done to resolve this .\nmary ext 35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.707+0000", "entityId": 2911, "properties": {"text": "Subject: hpl nom for august 22 , 2000\n( see attached file : hplo 822 . xls )\n- hplo 822 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.713+0000", "entityId": 2912, "properties": {"text": "Subject: enron / hpl actuals for august 18 - 20 , 2000\naugust 18 , 2000\nteco tap 20 . 000 / enron ; 114 . 167 / hpl iferc\nls hpl lsk ic 20 . 000 / enron\naugust 19 , 2000\nteco tap 20 . 000 / enron ; 96 . 667 / hpl iferc\nls hpl lsk ic 20 . 000 / enron\naugust 20 , 2000\nteco tap 20 . 000 / enron ; 102 . 500 / hpl iferc\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.718+0000", "entityId": 2913, "properties": {"text": "Subject: re : meter # : 1266 ; august 2000 / allocation exception\nlauri\nthere have been some fluctuations @ dupont meter # 1266 - i believe conoco\ntransport is only business there - see below\nis the transport set up to take these small swings ?\nlee\nfrom : robert e lloyd 08 / 21 / 2000 02 : 34 pm\nto : lee l papayoti / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron , sherlyn schumack / hou / ect @ ect , jackie\nyoung / hou / ect @ ect\nsubject : re : meter # : 1266 ; august 2000 / allocation exception\nconoco has nominated 5 . 0 / d at this meter . conoco transport can be allocated\nthe entire meter flow for the days in which the meter flow\nexceed 5 . 0 mm because they are the only party doing business at the meter .\nhpl may also be able to extract a sell for this overage which is why i\nwanted you to be aware of the daily activity thus far .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 21 / 2000\n01 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 08 / 21 / 2000 01 : 44 pm\nto : robert e lloyd / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , anita luong / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; august 2000 / allocation exception\nwhy are these volumes flowing ?\nfrom : robert e lloyd 08 / 21 / 2000 01 : 36 pm\nto : lee l papayoti / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , anita luong / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; august 2000 / allocation exception\nshould i roll this deal to cover august 2000 activity ?\nvolumes todate are as follows : 82 mm 8 / 16\n85 mm 8 / 17\n65 mm 8 / 18\n57 mm 8 / 19\n60 mm 8 / 20\nsitara ticket # : 363514\nthese small meter flows are causing allocation exceptions for august .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 21 / 2000\n01 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 11 / 2000 03 : 17 pm\nto : howard b camp / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 11 / 2000\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 08 / 11 / 2000 03 : 16 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes are as follows : july lst 414 mmbtu\njuly 31 12 mmbtu\ntotal : 426 mmbtu ' s\nalso , the sitara deal # is : 363514\nfrom : lee l papayoti on 08 / 11 / 2000 02 : 02 pm\nto : robert e lloyd / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nplease set up a ticket priced at gas daily houston ship channel midpoint\nminus $ 0 . 03\nalso , can you let me know the exact volumes in question on july 1 and july\n31 ? dorcheus wants to know . me too .\nthanks\nlee\nto : lee l papayoti / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\njust a reminder that \" allocation close \" is monday , august 14 th .\na sitara ticket is needed to set up an acctg . arrangement which will\neliminate the allocation exception for meter # 981266\n{ victoria station # 2 / brandywine } .\nfrom : lee l papayoti on 08 / 09 / 2000 03 : 33 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\ni ' ll get you a price tomorrow when i meet with him . . .\nfrom : robert e lloyd 08 / 09 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.723+0000", "entityId": 2914, "properties": {"text": "Subject: re : meter # : 1266 ; august 2000 / allocation exception\nconoco has nominated 5 . 0 / d at this meter . conoco transport can be allocated\nthe entire meter flow for the days in which the meter flow\nexceed 5 . 0 mm because they are the only party doing business at the meter .\nhpl may also be able to extract a sell for this overage which is why i\nwanted you to be aware of the daily activity thus far .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 21 / 2000\n01 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 08 / 21 / 2000 01 : 44 pm\nto : robert e lloyd / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , anita luong / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; august 2000 / allocation exception\nwhy are these volumes flowing ?\nfrom : robert e lloyd 08 / 21 / 2000 01 : 36 pm\nto : lee l papayoti / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , anita luong / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; august 2000 / allocation exception\nshould i roll this deal to cover august 2000 activity ?\nvolumes todate are as follows : 82 mm 8 / 16\n85 mm 8 / 17\n65 mm 8 / 18\n57 mm 8 / 19\n60 mm 8 / 20\nsitara ticket # : 363514\nthese small meter flows are causing allocation exceptions for august .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 21 / 2000\n01 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 11 / 2000 03 : 17 pm\nto : howard b camp / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 11 / 2000\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 08 / 11 / 2000 03 : 16 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes are as follows : july lst 414 mmbtu\njuly 31 12 mmbtu\ntotal : 426 mmbtu ' s\nalso , the sitara deal # is : 363514\nfrom : lee l papayoti on 08 / 11 / 2000 02 : 02 pm\nto : robert e lloyd / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nplease set up a ticket priced at gas daily houston ship channel midpoint\nminus $ 0 . 03\nalso , can you let me know the exact volumes in question on july 1 and july\n31 ? dorcheus wants to know . me too .\nthanks\nlee\nto : lee l papayoti / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\njust a reminder that \" allocation close \" is monday , august 14 th .\na sitara ticket is needed to set up an acctg . arrangement which will\neliminate the allocation exception for meter # 981266\n{ victoria station # 2 / brandywine } .\nfrom : lee l papayoti on 08 / 09 / 2000 03 : 33 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\ni ' ll get you a price tomorrow when i meet with him . . .\nfrom : robert e lloyd 08 / 09 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.727+0000", "entityId": 2915, "properties": {"text": "Subject: re : meter # : 1266 ; august 2000 / allocation exception\nwhy are these volumes flowing ?\nfrom : robert e lloyd 08 / 21 / 2000 01 : 36 pm\nto : lee l papayoti / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , anita luong / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; august 2000 / allocation exception\nshould i roll this deal to cover august 2000 activity ?\nvolumes todate are as follows : 82 mm 8 / 16\n85 mm 8 / 17\n65 mm 8 / 18\n57 mm 8 / 19\n60 mm 8 / 20\nsitara ticket # : 363514\nthese small meter flows are causing allocation exceptions for august .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 21 / 2000\n01 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 11 / 2000 03 : 17 pm\nto : howard b camp / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 11 / 2000\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 08 / 11 / 2000 03 : 16 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes are as follows : july lst 414 mmbtu\njuly 31 12 mmbtu\ntotal : 426 mmbtu ' s\nalso , the sitara deal # is : 363514\nfrom : lee l papayoti on 08 / 11 / 2000 02 : 02 pm\nto : robert e lloyd / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nplease set up a ticket priced at gas daily houston ship channel midpoint\nminus $ 0 . 03\nalso , can you let me know the exact volumes in question on july 1 and july\n31 ? dorcheus wants to know . me too .\nthanks\nlee\nto : lee l papayoti / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\njust a reminder that \" allocation close \" is monday , august 14 th .\na sitara ticket is needed to set up an acctg . arrangement which will\neliminate the allocation exception for meter # 981266\n{ victoria station # 2 / brandywine } .\nfrom : lee l papayoti on 08 / 09 / 2000 03 : 33 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\ni ' ll get you a price tomorrow when i meet with him . . .\nfrom : robert e lloyd 08 / 09 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.732+0000", "entityId": 2916, "properties": {"text": "Subject: re : meter # : 1266 ; august 2000 / allocation exception\nshould i roll this deal to cover august 2000 activity ?\nvolumes todate are as follows : 82 mm 8 / 16\n85 mm 8 / 17\n65 mm 8 / 18\n57 mm 8 / 19\n60 mm 8 / 20\nsitara ticket # : 363514\nthese small meter flows are causing allocation exceptions for august .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 21 / 2000\n01 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 11 / 2000 03 : 17 pm\nto : howard b camp / hou / ect @ ect , rita wynne / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 11 / 2000\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd on 08 / 11 / 2000 03 : 16 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes are as follows : july lst 414 mmbtu\njuly 31 12 mmbtu\ntotal : 426 mmbtu ' s\nalso , the sitara deal # is : 363514\nfrom : lee l papayoti on 08 / 11 / 2000 02 : 02 pm\nto : robert e lloyd / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\nplease set up a ticket priced at gas daily houston ship channel midpoint\nminus $ 0 . 03\nalso , can you let me know the exact volumes in question on july 1 and july\n31 ? dorcheus wants to know . me too .\nthanks\nlee\nto : lee l papayoti / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\njust a reminder that \" allocation close \" is monday , august 14 th .\na sitara ticket is needed to set up an acctg . arrangement which will\neliminate the allocation exception for meter # 981266\n{ victoria station # 2 / brandywine } .\nfrom : lee l papayoti on 08 / 09 / 2000 03 : 33 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : meter # : 1266 ; july 2000 activity / allocation exception\ni ' ll get you a price tomorrow when i meet with him . . .\nfrom : robert e lloyd 08 / 09 / 2000 12 : 50 pm\nto : lee l papayoti / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\ni spoke with bob dorcheus , brandywine about this issue and he suggest you\nand he get together and agree on a\nprice because the gas flowed into the plant .\nthis gas flowed without a nomination .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert e lloyd / hou / ect on 08 / 09 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 09 / 2000 11 : 27 am\nto : robert e lloyd / hou / ect @ ect\ncc : earl tisdale / hou / ect @ ect , pat clynes / corp / enron @ enron , rita\nwynne / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nthe volumes on meter # 1266 for 7 / 1 / 00 and 7 / 31 / 00 are valid gas flow . 7 / 1 / 00\nvolumes are carry over from june activity ( meter was shut in a little after\n9 : 00 am on 7 / 1 / 00 ) . 7 / 31 / 00 volumes were caused by the plant bringing on\nthe meter before 9 : 00 am on 8 / 1 / 00 .\nif you have any questions please call . 36449 .\nthanks\ngary h\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 09 / 2000 11 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert e lloyd 08 / 09 / 2000 11 : 17 am\nto : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect , howard b\ncamp / hou / ect @ ect\nsubject : meter # : 1266 ; july 2000 activity / allocation exception\nplease verify the volume on meter # : 1266 for july lst & 31 st are valid gas\nflow .\nbrandywine did not nominate any activity at this meter for july 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.736+0000", "entityId": 2917, "properties": {"text": "Subject: meter 984132 for 1 / 16 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 08 / 22 / 2000 02 : 07 pm\nto : jackie young / hou / ect @ ect , karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : meter 984132 for 1 / 16 / 99\nhere is the issue for 1 / 16 / 99 at meter 984132 .\n20 , 000 mmbtu were confirmed for adonis in pops . 10 , 000 mmbtu on day 5 and\nday 16 . day 16 is not valid for deal 51862 ( track id 6155 ) , which is where\n10 , 000 was confirmed . the actual sale to adonis was 10 , 000 which was\ninvoiced and paid by adonis . we are trying to clear the feedback error\nreport . my question is why was 10 , 000 confirmed on 1 / 16 / 99 if the date is\nnot valid for the deal ?\nwhen karen allocates the actual 10 , 000 it is prorating 5 , 000 for each day\nthat is confirmed ( the 5 th and 16 th ) .\nshould the whole 10 , 000 be allocated to the 5 th or should 5 , 000 be allocated\nto each day ? if 5 , 000 should be allocated to each day , the 16 th needs to be\nadded to the deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.741+0000", "entityId": 2918, "properties": {"text": "Subject: re : feedback monitor error - meter 984132 - 1 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n08 / 22 / 2000 12 : 45 pm\nto : karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\nkaren ,\ni realize this . it appears as if you ' re asking me to have day 16 added to\nthe sitara deal ticket so that all volumes that flowed for that day can\nallocate to this deal .\nmaybe you might want to phone me if this is not the case .\n- jackie -\n3 - 9497\nenron north america corp .\nfrom : karen lindley @ enron 08 / 22 / 2000 12 : 39 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\njackie ,\nwhat i am saying is that in pops volume is allocated to deal number 51862 ,\nhowever in sitara , this deal doesn ' t have day 16 on it . call me if you need\nfurther details . x 58381\njackie young @ ect\n08 / 22 / 2000 11 : 08 am\nto : karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\nkaren ,\ni ' ve looked in pops and on day 16 of january 1999 , i see a total confirmed\nvolume of 61 , 365 and an actual of 62 , 151 . if i ' m understanding you\ncorrectly , you ' re asking me to allocate all of this volume to deal # 51862 .\nif so , that ' s incorrect . several deals are associated the this days volume .\nplease write back or phone back with further details .\nthanks\n- jackie -\n3 - 9497\nenron north america corp .\nfrom : karen lindley @ enron 08 / 21 / 2000 10 : 24 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : feedback monitor error - meter 984132 - 1 / 99\njackie ,\nvolume is allocating to deal number 51862 on 1 / 16 / 99 on meter 984132 , however\nthe deal does not have this day on it . please have 1 / 16 added to the deal so\nthe error will clear .\nthanks and if you need additional info , let me know .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.745+0000", "entityId": 2919, "properties": {"text": "Subject: re : feedback monitor error - meter 984132 - 1 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n08 / 22 / 2000 11 : 08 am\nto : karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\nkaren ,\ni ' ve looked in pops and on day 16 of january 1999 , i see a total confirmed\nvolume of 61 , 365 and an actual of 62 , 151 . if i ' m understanding you\ncorrectly , you ' re asking me to allocate all of this volume to deal # 51862 .\nif so , that ' s incorrect . several deals are associated the this days volume .\nplease write back or phone back with further details .\nthanks\n- jackie -\n3 - 9497\nenron north america corp .\nfrom : karen lindley @ enron 08 / 21 / 2000 10 : 24 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : feedback monitor error - meter 984132 - 1 / 99\njackie ,\nvolume is allocating to deal number 51862 on 1 / 16 / 99 on meter 984132 , however\nthe deal does not have this day on it . please have 1 / 16 added to the deal so\nthe error will clear .\nthanks and if you need additional info , let me know .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.750+0000", "entityId": 2920, "properties": {"text": "Subject: feedback monitor error - meter 984132 - 1 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n08 / 21 / 2000 10 : 48 am\nto : gary w lamphier / hou / ect @ ect\ncc : karen lindley / corp / enron @ enron\nsubject : feedback monitor error - meter 984132 - 1 / 99\ngary ,\ncan you assist karen with the below request to cover the day in question ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 08 / 21 / 2000 10 : 45\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : karen lindley @ enron 08 / 21 / 2000 10 : 24 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : feedback monitor error - meter 984132 - 1 / 99\njackie ,\nvolume is allocating to deal number 51862 on 1 / 16 / 99 on meter 984132 , however\nthe deal does not have this day on it . please have 1 / 16 added to the deal so\nthe error will clear .\nthanks and if you need additional info , let me know .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.754+0000", "entityId": 2921, "properties": {"text": "Subject: save up to 70 % on hotels\ndear daren farmer ,\none of the things we like to do here at expedia is help you\nmaximize your vacation dollar . since accommodations are a\nbig part of every vacation , we went to more than 1 , 200 quality\nhotels in more than 240 cities and negotiated hotel rates up to\n70 % less than the average standard rates . we call these expedia\nspecial rates , and it ' s all about saving you money . when you\nsearch for a hotel on expedia . com , just look for the \" expedia\nspecial rates \" icon and you ' ll know you ' re getting this special rate .\nright now , you can take advantage of an expedia special rate\nat the brand - new aladdin resort in las vegas . this spectacular\nhotel just opened , and it features one of the largest collections of\nshopping , dining , entertainment , and gaming options available in\nlas vegas . see what it ' s all about :\n5117\ntravel news\nevery week , we bring you the travel updates so you can\nmake exactly the right travel choices .\nd . c . art show makes an \" impression \"\nwhat do you mean your kids don ' t understand van gogh ,\nmatisse , cezanne ? well , now ' s their chance to see these\nclassics as more than just weird blobs of color , thanks to an\nart museum in washington , d . c . that will help your kids get\nhip to impressionism .\nsionistart . asp\ntransport yourself to china from portland\nstroll past stone lions and walls of greenery in a suzhou - style\ngarden , which is the largest of its kind outside of china . as you\npass through the moongates of this oregon chinese garden ,\nyou ' ll feel as if you ' ve been transported to china .\negarden . asp\nsail out of sydney with olympic legends\nif you ' re headed to sydney for the olympics this year , this is your\nchance to cruise with some of the top athletes around on a 12 - day\ncruise to new zealand . hang out with swimmer john naber , high\njumper dwight stones , distance runner louis zamperini , and speed\nskater dan jansen .\ncs . asp\nsee what ' s new in other places : http : / / www . expedia . com / daily / travnews /\nyour faretracker low fares\nwe ' ve designed fare tracker to help you find great fares by listing\nthe lowest round trip fares found by your fellow travelers on the routes\nyou\nselected .\nyou can change your fare tracker subscription at :\nwe have made it easier to find the lowest fares that we\nsend to you in the faretracker mail by sending you the lowest\nfares found by other expedia customers . unfortunately ,\nwe are unable to track fares for all possible airport pairs\nin the world . all three airport pairs that you have in your\nfaretracker subscription are no longer supported . please click\nhere to log into expedia and choose from the hundreds of\nairport pairs we do currently track fares for :\ncheck out all your route and fare options with our flight wizard :\nspecial deals\nwe handpick the best offers and promotions to bring you\nexcellent value on unforgettable experiences .\nhawaiian airlines : los angeles to oahu , hawaii from $ 488\nbeaches , sunsets , and open ocean . see for yourself what\nmakes hawaii so great .\nkuartos . com : overnight in mexico from $ 85\nyou ' ll get a luxury room in cozumel , breakfast , and diving\ntickets for two .\ncruise outlet : ten days in the mexican riviera from $ 1 , 349\ndiscover some of the finest cities in mexico and indulge\nyourself at sea .\ntravelscape . com : philadelphia package from $ 399\nexperience the city of brotherly love . package includes\nair and two nights ' accommodation .\nlooking for more great deals on expedia . com ? see our\nspecial deals at :\nfrom our sponsors\nblue nile travel advisory : protect your new wedding rings\nensure your wedding rings return from the honeymoon :\n* make sure the rings fit snugly , so they ' re not lost during outdoor\nactivities .\n* insure your rings before you go . check to see that your insurance\npolicy\ncovers lost and stolen items around the world .\n* if you have to take your wedding rings off , put them in the hotel\nsafe .\nfor education and guidance in selecting the perfect diamond , or for a\ngift\nof jewelry to remind you of your trip for years to come , visit blue\nnile .\nfor details see :\nthank you again for traveling with expedia . com .\nexpedia . com travel team\ndon ' t just travel . travel right .\nhttp : / / expedia . com /\nyou are receiving this e - mail because you are a registered\nmember of expedia . com . your expedia membership is free and\nyour privacy and credit card security are guaranteed . questions ?\nvisit the expedia . com service center at :\nhttp : / / www . expedia . com / daily / service /\nif you do not wish to receive any further e - mails from us ,\nplease reply to this mail with \" unsubscribe \" in the subject line .\napologies but we cannot reply to responses to fare tracker .\nif you have questions or want to give feedback , click here :\n( c ) 1998 , 1999 , 2000 expedia , inc . all rights reserved .\nthis email was sent to : dfarmer @ ect . enron . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.759+0000", "entityId": 2922, "properties": {"text": "Subject: ect - im waha ? ? ?\nshould these not be converted to ena - im texas ? ? ? some time ago - we were\ntold this desk was dead and the existing deals would end . this desk is not\nincluded in any texas desk portfolios .\nthe ect desks are supposed to be inactive - however - these deals keep\nrolling - and\nsomeone created some new ones ? if the desk is active - should we change it\nto ena - im waha -\nas ect is no more ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.764+0000", "entityId": 2923, "properties": {"text": "Subject: revision # 2 - enron / hpl actuals for august 21 , 2000\ncorrect numbers :\nteco tap 31 . 876 / hpl gas daily ; 44 . 374 / hpl iferc\n20 . 000 / enron @ teco tap\nls hpl lsk ic 20 . 000 / enron\nprevious numbers :\nteco tap 76 . 250 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.770+0000", "entityId": 2924, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for august 21 , 2000\ncorrect numbers :\nteco tap 31 . 876 / hpl gas daily ; 44 . 374 / hpl iferc\nls hpl lsk ic 20 . 000 / enron\nprevious numbers :\nteco tap 76 . 250 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.774+0000", "entityId": 2925, "properties": {"text": "Subject: hpl nom for august 23 , 2000\n( see attached file : hplo 823 . xls )\n- hplo 823 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.779+0000", "entityId": 2926, "properties": {"text": "Subject: enron / hpl actuals for august 21 , 2000\nteco tap 76 . 250 / hpl iferc ; 20 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.784+0000", "entityId": 2927, "properties": {"text": "Subject: organizational announcement\nplease see attached memo :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.788+0000", "entityId": 2928, "properties": {"text": "Subject: re : feedback monitor error - meter 984132 - 1 / 99\nhi daren ,\nsorry that i didn ' t include you on gary ' s e - mail . he presented these\nquestions to the volume management group ( which i agree ) . i will now forward\nyou the response from volume management .\n- jackie -\n3 - 9497\nenron north america corp .\nfrom : gary w lamphier 08 / 22 / 2000 01 : 11 pm\nto : jackie young / hou / ect @ ect\ncc : karen lindley / corp / enron @ enron\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\ni am uncomfortable putting a deal out there without more details . here are\nmy questions :\n1 ) why was this gas just discovered now ? and where has it been hiding ?\n2 ) adonis is a wmbe which means he has a direct pay agreement so never pays\nfor gas taken . we have to invoice\nthe actual burner for this gas ( hl & p , tu , cp & l , etc ) . can we identify end\nuser and see if they paid for this gas or will have to pay .\n3 ) adonis has skipped town and is no longer in business . hl & p told me he\ngot paid for gas that never was delivered ( rumor ) .\nhow can we invoice him now ?\n4 ) 60 , 000 mmbtu seems like a high volume of gas to slip through the cracks\nfor almost two years . answer the above questions and\ni will be glad to approve this .\njackie young\n08 / 22 / 2000 12 : 45 pm\nto : karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\nkaren ,\ni realize this . it appears as if you ' re asking me to have day 16 added to\nthe sitara deal ticket so that all volumes that flowed for that day can\nallocate to this deal .\nmaybe you might want to phone me if this is not the case .\n- jackie -\n3 - 9497\nenron north america corp .\nfrom : karen lindley @ enron 08 / 22 / 2000 12 : 39 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\njackie ,\nwhat i am saying is that in pops volume is allocated to deal number 51862 ,\nhowever in sitara , this deal doesn ' t have day 16 on it . call me if you need\nfurther details . x 58381\njackie young @ ect\n08 / 22 / 2000 11 : 08 am\nto : karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : feedback monitor error - meter 984132 - 1 / 99\nkaren ,\ni ' ve looked in pops and on day 16 of january 1999 , i see a total confirmed\nvolume of 61 , 365 and an actual of 62 , 151 . if i ' m understanding you\ncorrectly , you ' re asking me to allocate all of this volume to deal # 51862 .\nif so , that ' s incorrect . several deals are associated the this days volume .\nplease write back or phone back with further details .\nthanks\n- jackie -\n3 - 9497\nenron north america corp .\nfrom : karen lindley @ enron 08 / 21 / 2000 10 : 24 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : feedback monitor error - meter 984132 - 1 / 99\njackie ,\nvolume is allocating to deal number 51862 on 1 / 16 / 99 on meter 984132 , however\nthe deal does not have this day on it . please have 1 / 16 added to the deal so\nthe error will clear .\nthanks and if you need additional info , let me know .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.793+0000", "entityId": 2929, "properties": {"text": "Subject: meter 984132 for 1 / 16 / 99\ndaren ,\nbelow is volume management ' s answers to gary ' s questions .\ni ' m now awaiting on an e - mail from gary as to the direction that he is going\nto take . i will follow suit according to his instructions .\nshould you come aboard , i ' ll await your decision as well .\nagain , thanks .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 08 / 23 / 2000 02 : 19\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 08 / 22 / 2000 02 : 07 pm\nto : jackie young / hou / ect @ ect , karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : meter 984132 for 1 / 16 / 99\nhere is the issue for 1 / 16 / 99 at meter 984132 .\n20 , 000 mmbtu were confirmed for adonis in pops . 10 , 000 mmbtu on day 5 and\nday 16 . day 16 is not valid for deal 51862 ( track id 6155 ) , which is where\n10 , 000 was confirmed . the actual sale to adonis was 10 , 000 which was\ninvoiced and paid by adonis . we are trying to clear the feedback error\nreport . my question is why was 10 , 000 confirmed on 1 / 16 / 99 if the date is\nnot valid for the deal ?\nwhen karen allocates the actual 10 , 000 it is prorating 5 , 000 for each day\nthat is confirmed ( the 5 th and 16 th ) .\nshould the whole 10 , 000 be allocated to the 5 th or should 5 , 000 be allocated\nto each day ? if 5 , 000 should be allocated to each day , the 16 th needs to be\nadded to the deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.798+0000", "entityId": 2930, "properties": {"text": "Subject: 3 rd party expense contracts\nmick\n3 - 4783", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.802+0000", "entityId": 2931, "properties": {"text": "Subject: re : meter 984132 for 1 / 16 / 99\non day 5 in mops ( hpl / ena ) there is a delivery nom of 10 . 0 pathed to the ena\n201 k . on day 16 in mops ( hpl / ena ) there is not a deal ( which is strange\nbecause day 16 in pops references adonis ) . the deal on the 5 th was a swing\ndeal .\ndaren j farmer\n08 / 23 / 2000 12 : 59 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\njackie ,\nwhat does mops show for the days in question ? it would be incorrect to add\nany days to the adonis ticket mentioned below . it sounds as if the meter was\nallocated incorrectly in pops and / or a deal was not pathed correctly in\nmops . let me know what you find in mops .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 08 / 23 / 2000\n12 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 08 / 22 / 2000 02 : 51 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 08 / 22 / 2000 02 : 07 pm\nto : jackie young / hou / ect @ ect , karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : meter 984132 for 1 / 16 / 99\nhere is the issue for 1 / 16 / 99 at meter 984132 .\n20 , 000 mmbtu were confirmed for adonis in pops . 10 , 000 mmbtu on day 5 and\nday 16 . day 16 is not valid for deal 51862 ( track id 6155 ) , which is where\n10 , 000 was confirmed . the actual sale to adonis was 10 , 000 which was\ninvoiced and paid by adonis . we are trying to clear the feedback error\nreport . my question is why was 10 , 000 confirmed on 1 / 16 / 99 if the date is\nnot valid for the deal ?\nwhen karen allocates the actual 10 , 000 it is prorating 5 , 000 for each day\nthat is confirmed ( the 5 th and 16 th ) .\nshould the whole 10 , 000 be allocated to the 5 th or should 5 , 000 be allocated\nto each day ? if 5 , 000 should be allocated to each day , the 16 th needs to be\nadded to the deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.807+0000", "entityId": 2932, "properties": {"text": "Subject: hpl expense contracts\nfyi . . . . . . . . call with any questions . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 08 / 23 / 2000 04 : 44 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jackie morgan 08 / 23 / 2000 04 : 37 pm\nto : rita wynne / hou / ect @ ect , clem cernosek / hou / ect @ ect\ncc : michael eiben / hou / ect @ ect , cheryl dudley / hou / ect @ ect\nsubject : hpl expense contracts\nper your request . this list has been pulled from global contracts but has\nnot been reviewed . please take a look at it and let me know if you need\nadditional information . i will begin printing the attached points by\ncontract . i ' ll give you an update tomorrow a . m .\njackie\next 39177", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.812+0000", "entityId": 2933, "properties": {"text": "Subject: additional information : access request ( djfr - 4 ngpa 6 )\nadditional information for security resource request djfr - 4 ngpa 6 has been\nprovided by security .\nto view the request , double click your left mouse button on the notes\ndocument link below .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.816+0000", "entityId": 2934, "properties": {"text": "Subject: hpl nom for august 24 , 2000\n( see attached file : hplo 824 . xls )\n- hplo 824 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.821+0000", "entityId": 2935, "properties": {"text": "Subject: final cp name change / merger list 08 / 00\nattached is the final list for name changes and mergers for august 2000 .\nthe name change overlays were done on the dates indicated .\nthe erms short names will be changed tomorrow , august 23 , in the afternoon .\nif there are any objections please contact me or bill hare at x 3 - 9249 .\nrecord inactivations will be done on the afternoon of sept , 1 .\nplease call cheryl for questions or comments x 3 - 3103", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.825+0000", "entityId": 2936, "properties": {"text": "Subject: september production estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 08 / 23 / 2000 04 : 51\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n08 / 23 / 2000 04 : 46 pm\nto : robert cotten / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : september production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\nseptember . please be advised that this is a preliminary estimate as to this\ndate , we have received only a few noms for september . i will update you with\nany revisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.830+0000", "entityId": 2937, "properties": {"text": "Subject: re : meter 984132 for 1 / 16 / 99\nkaren / sherlyn ,\ngary has placed this in daren ' s lap . please read the below information that\nwas requested of me from daren .\nthis is the latest .\ni ' ll get back as soon as i hear from daren again about my response to him .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 08 / 24 / 2000 08 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n08 / 23 / 2000 04 : 27 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : meter 984132 for 1 / 16 / 99\non day 5 in mops ( hpl / ena ) there is a delivery nom of 10 . 0 pathed to the ena\n201 k . on day 16 in mops ( hpl / ena ) there is not a deal ( which is strange\nbecause day 16 in pops references adonis ) . the deal on the 5 th was a swing\ndeal .\ndaren j farmer\n08 / 23 / 2000 12 : 59 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\njackie ,\nwhat does mops show for the days in question ? it would be incorrect to add\nany days to the adonis ticket mentioned below . it sounds as if the meter was\nallocated incorrectly in pops and / or a deal was not pathed correctly in\nmops . let me know what you find in mops .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 08 / 23 / 2000\n12 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 08 / 22 / 2000 02 : 51 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 08 / 22 / 2000 02 : 07 pm\nto : jackie young / hou / ect @ ect , karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : meter 984132 for 1 / 16 / 99\nhere is the issue for 1 / 16 / 99 at meter 984132 .\n20 , 000 mmbtu were confirmed for adonis in pops . 10 , 000 mmbtu on day 5 and\nday 16 . day 16 is not valid for deal 51862 ( track id 6155 ) , which is where\n10 , 000 was confirmed . the actual sale to adonis was 10 , 000 which was\ninvoiced and paid by adonis . we are trying to clear the feedback error\nreport . my question is why was 10 , 000 confirmed on 1 / 16 / 99 if the date is\nnot valid for the deal ?\nwhen karen allocates the actual 10 , 000 it is prorating 5 , 000 for each day\nthat is confirmed ( the 5 th and 16 th ) .\nshould the whole 10 , 000 be allocated to the 5 th or should 5 , 000 be allocated\nto each day ? if 5 , 000 should be allocated to each day , the 16 th needs to be\nadded to the deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.834+0000", "entityId": 2938, "properties": {"text": "Subject: attention all basketball players\nthe enron basketball association is hosting a full court \" five on five \"\ntournament on september 16 , 2000 from 8 : 00 a . m . untill 12 : 00 noon at lutheran\nnorth high school near the loop 610 north and shepherd .\nyou will be able to enter an entire team or enter as an individual and be\nplaced on a team .\nif you are interested in participating , please contact one of the following\npeople prior to september 7 th :\njamie lynn ext . 3 - 9515\nrick dietz ext . 3 - 5691\nsteve kleb ext . 3 - 3959\nwe will have a team captain ' s meeting on september 8 th to discuss the\ntournament rules and prizes . we plan to limit the tournament to eight teams ,\nso please sign up soon to join in on the fun . there is no entry fee for\nenron basketball association members .\nthanks ,\njamie lynn , president\nenron basketball association", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.839+0000", "entityId": 2939, "properties": {"text": "Subject: hpl nom for august 25 , 2000\n( see attached file : hplo 825 . xls )\n- hplo 825 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.844+0000", "entityId": 2940, "properties": {"text": "Subject: enron / hpl actuals for august 23 , 2000\nteco tap 34 . 167 / hpl gas daily ; 30 . 000 / enron\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.849+0000", "entityId": 2941, "properties": {"text": "Subject: 9 / 00 assignment , termination , expiration report - assets group\nattached is the september 2000 assignment , termination & expiration report\nfor the assets group ' s contracts . ( fyi - it contains all of the entries made\nby our group during 8 / 00 regardless of the effective date . ) if you do not\nneed to receive this report or if you know of someone else that should\nreceive it , please let me know by e - mail or phone ( x - 36982 ) so that i can\neither remove your name from or add their name to the distribution list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.853+0000", "entityId": 2942, "properties": {"text": "Subject: final cp name change and merger report 08 / 00\njust to clarify , i was in the february 2000 report in error when i sent the\nreport out to everyone . please notice at the bottom of the report that there\nis a worksheet tab for august 2000 and that is where the current information\nis located . i apologize for the confusion .\nalso , the erms shortname changes will be made this afternoon 8 / 24 .\ncheryl\nx 3 - 3103", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.858+0000", "entityId": 2943, "properties": {"text": "Subject: spot or firm tickets\nvance ,\nthe following nominations do not have deal tickets in sitara for september ,\n2000 activity . please advise whether the deals will be spot or firm . daren\nwants everything in sitara by 3 pm on monday , august 28 . thanks .\nbob\nsource meter # sept nom\nccgm , lp 9840 1 , 000\ncross - tex 5467 250\ncummins & walker unk 500\ndallas production 6789 12 , 519\nduke energy trading 6347 206\neex operating 5999 11 , 632\neog resources 4157 76\nhesco gathering 9624 100\nhesco gathering 9835 700\nph exploration 6838 94\npioneer exploration 2698 1 , 000\npure resources 9830 500\nrio vista 6442 609\nsamson lonestar 9845 2 , 886\nswift energy 2630 322\ntema oil & gas 4688 1\ntri - union develop . 2697 700\nwhiting petroleum 6523 100", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.863+0000", "entityId": 2944, "properties": {"text": "Subject: re : potential list fo 9 / 00\ncorrection , that ' s meter # 5228\nvlt\nsusan\nsmith\n08 / 24 / 2000 03 : 40 pm\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , melissa graves / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect\nsubject : potential list fo 9 / 00\ndaren :\nthe correct meter number for north central is 5288 .\nthanks ,\nsusan\nx 33321\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 08 / 24 / 2000 03 : 34\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan\nsmith\n08 / 24 / 2000 03 : 33 pm\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , melissa graves / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect\nsubject : potential list fo 9 / 00\ndaren :\nper vance ' s discussion ' s with the deal makers , the following are potential\ndeals for 9 / 00 not included in vance ' s number :\nnorth central - - mcmurrey # 2 - meter 2697 - mid month - 2000 mcfd ( approx ) - gas daily\nhelmrich and payne - ballard # 1 - new meter - mid month - 2000 mcfd ( approx ) - gas\ndaily\nkcs resources - dickenson bayou - meter 9797 - midmonth - 10 , 000 mcfd ( approx ) - gas\ndaily\nlet us know if you need any additional information .\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.868+0000", "entityId": 2945, "properties": {"text": "Subject: potential list fo 9 / 00\ndaren :\nthe correct meter number for north central is 5288 .\nthanks ,\nsusan\nx 33321\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 08 / 24 / 2000 03 : 34\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsusan\nsmith\n08 / 24 / 2000 03 : 33 pm\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , melissa graves / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect\nsubject : potential list fo 9 / 00\ndaren :\nper vance ' s discussion ' s with the deal makers , the following are potential\ndeals for 9 / 00 not included in vance ' s number :\nnorth central - - mcmurrey # 2 - meter 2697 - mid month - 2000 mcfd ( approx ) - gas daily\nhelmrich and payne - ballard # 1 - new meter - mid month - 2000 mcfd ( approx ) - gas\ndaily\nkcs resources - dickenson bayou - meter 9797 - midmonth - 10 , 000 mcfd ( approx ) - gas\ndaily\nlet us know if you need any additional information .\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.873+0000", "entityId": 2946, "properties": {"text": "Subject: potential list fo 9 / 00\ndaren :\nper vance ' s discussion ' s with the deal makers , the following are potential\ndeals for 9 / 00 not included in vance ' s number :\nnorth central - - mcmurrey # 2 - meter 2697 - mid month - 2000 mcfd ( approx ) - gas daily\nhelmrich and payne - ballard # 1 - new meter - mid month - 2000 mcfd ( approx ) - gas\ndaily\nkcs resources - dickenson bayou - meter 9797 - midmonth - 10 , 000 mcfd ( approx ) - gas\ndaily\nlet us know if you need any additional information .\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.877+0000", "entityId": 2947, "properties": {"text": "Subject: hilcorp old ocean\ni have continued the hilcorp old ocean deal . dan hyvl is writing up the\ncontracts for me and they should be ready monday . terms are as follows :\nsept - nov 2000\nifhsc + . 02\ngas daily for any mid month turn on as in our purchase contracts\nletter of credit must be approved prior to sept 1 ( they said they will have\nit monday by 2 pm )\nvolume min / max is 7 , 000 / day - 20 , 000 / day with same tolerance currently\nexisting for swing . ( we expect to level out around 10 , 000 / d )\nplease call if you have any concerns as we will continue this gas flow\nwithout interruption . thanks , mary jo johnson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.883+0000", "entityId": 2948, "properties": {"text": "Subject: ethane election for september 2000\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stella l morris / hou / ect on 08 / 25 / 2000\n02 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njack simunek\n08 / 25 / 2000 01 : 33 pm\nto : lauri a allen / hou / ect @ ect , michael c bilberry / hou / ect @ ect , nathan l\nhlavaty / hou / ect @ ect , karry kendall / hou / ect @ ect , blanca a lopez / hou / ect @ ect ,\nstella l morris / hou / ect @ ect , steve hpl schneider / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , george weissman / hou / ect @ ect , dick danes / gco / enron @ enron ,\npat flavin / gco / enron @ enron , gil gomez / gco / enron @ enron\ncc :\nsubject : ethane election for september 2000\nhpl will be kept whole with respect to ethane recoveries from the big cowboy\ngas being processed at the king ranch gas plant during the month of\nseptember . this election will reduct the shrinkage percentage from 20 % of\nthe inlet mmbtu ' s to 15 % of the inlet mmbtu ' s .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.887+0000", "entityId": 2949, "properties": {"text": "Subject: natural gas nomination for 09 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for september 2000 :\n34 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for september 2000 :\n9 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.892+0000", "entityId": 2950, "properties": {"text": "Subject: re : natural gas nomination for 09 / 00\nok ! !\ndaren j farmer\n08 / 25 / 2000 03 : 06 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : natural gas nomination for 09 / 00\nlee ,\nfyi . enron methanol has been taking about 5 , 000 swing each day for august .\nso , i added 5 , 000 for september ( # 139057 @ gd ) in addition to the 34 , 000 they\nnom ' d .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 08 / 25 / 2000\n03 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael mitcham @ enron\n08 / 25 / 2000 02 : 39 pm\nto : david bush / ecf / enron @ enron , mark diedrich / gpgfin / enron @ enron , paul\nfox / ecf / enron @ enron , david m johnson / ecf / enron @ enron , robert\nlee / ecf / enron @ enron , thomas meers / gpgfin / enron @ enron , maritta\nmullet / gpgfin / enron @ enron , james prentice / gpgfin / enron @ enron , kerry\nroper / gpgfin / enron @ enron , sally shuler / gpgfin / enron @ enron , daren j\nfarmer / hou / ect @ ect , lee l papayoti / hou / ect @ ect , steven m elliott / hou / ect @ ect ,\njohn l nowlan / hou / ect @ ect , anita luong / hou / ect @ ect , gregg lenart / hou / ect @ ect\ncc :\nsubject : natural gas nomination for 09 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for september 2000 :\n34 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for september 2000 :\n9 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.899+0000", "entityId": 2951, "properties": {"text": "Subject: september 2000 availabilities\nthis is the first file of avails for devon production for sept . i ' m sure\nmore will follow .\nthanks ,\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 08 / 25 / 2000 01 : 09\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n08 / 25 / 2000 11 : 35 am\nto : ,\ncc : \" cynthia cantrell \"\nsubject : september 2000 availabilities\nthe attached reflects first of the month availabilities for september 2000 .\ni will send a revised copy with final numbers as soon as i am aware of any\nchanges .\nthanks ,\nsteve\n- enronavailso 900 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.904+0000", "entityId": 2952, "properties": {"text": "Subject: revised - - - - - - - kleberg plant outages in september - - - - - cornhusker\ncorrection - - - - - - - the first outage should be from 12 : 00 am to 12 : 00 pm .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 08 / 25 / 2000 03 : 13\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n08 / 25 / 2000 03 : 08 pm\nto : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , stacey\nneuweiler / hou / ect @ ect\ncc :\nsubject : kleberg plant outages in september - - - - - cornhusker\ni spoke with michael mazowita / white pine energy , as he said the expected\noutages are as follows :\naugust 31 st - september lst 12 hours 12 : 00 pm to 12 : 00 am no flow\nseptember 25 th - 31 st all days no flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.912+0000", "entityId": 2953, "properties": {"text": "Subject: kleberg plant outages in september - - - - - cornhusker\ni spoke with michael mazowita / white pine energy , as he said the expected\noutages are as follows :\naugust 31 st - september lst 12 hours 12 : 00 pm to 12 : 00 am no flow\nseptember 25 th - 31 st all days no flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.918+0000", "entityId": 2954, "properties": {"text": "Subject: september 2000 iferc & sds noms .\nattached is the september 2000 nomination for our takes under the gas sales\nand\npurchase contract between txu fuels ( previously tufco ) and hpl resources co . ,\n( txu fuels contr . # 3949 ) , as well as our september 2000 nomination for takes\nunder the gas sales and purchase contract between txu fuels and sds . please\nadvise should you have any questions concerning the attached .\nthanks !\ntim\n( see attached file : minhplno 0 . xls ) ( see\nattached file : sdsnom . xls )\n- minhplno 0 . xls\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.923+0000", "entityId": 2955, "properties": {"text": "Subject: hpl nom for august 26 , 2000\n( see attached file : hplo 826 . xls )\n- hplo 826 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.928+0000", "entityId": 2956, "properties": {"text": "Subject: enron / hpl actuals for august 24 , 2000\nteco tap 30 . 000 / enron ; 92 . 500 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.932+0000", "entityId": 2957, "properties": {"text": "Subject: meter 9750 , mustang / eagle common point\nproduction at the meter should be about 800 / day more than was listed on the\nnomination for the month of september . mjj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.937+0000", "entityId": 2958, "properties": {"text": "Subject: revised - - - - - - - kleberg plant outages in september - - - - - cornhusker\ncorrection - - - - - - - the first outage should be from 12 : 00 am to 12 : 00 pm .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 08 / 25 / 2000 03 : 13\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n08 / 25 / 2000 03 : 08 pm\nto : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , stacey\nneuweiler / hou / ect @ ect\ncc :\nsubject : kleberg plant outages in september - - - - - cornhusker\ni spoke with michael mazowita / white pine energy , as he said the expected\noutages are as follows :\naugust 31 st - september lst 12 hours 12 : 00 pm to 12 : 00 am no flow\nseptember 25 th - 31 st all days no flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.942+0000", "entityId": 2959, "properties": {"text": "Subject: kleberg plant outages in september - - - - - cornhusker\ni spoke with michael mazowita / white pine energy , as he said the expected\noutages are as follows :\naugust 31 st - september lst 12 hours 12 : 00 pm to 12 : 00 am no flow\nseptember 25 th - 31 st all days no flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.946+0000", "entityId": 2960, "properties": {"text": "Subject: weekend notes\nhere are my notes , please let me know if you have any questions .\nweekend of august 26 \u0001 ) 28 , 2000\nsaturday :\n? celanese bayport meter 8018 was ramping back up . total nomination of\n35 , 000 in mops was pathed \u0001 ) transmitted nom to pops and confirmed .\n? costilla , meter 9687 was still down 4 , 000 due to wellhead production\nlosses on friday , expected short into the first of the week , possibly longer ,\nmay need to fish the hole to bring the well back up .\n? costilla pilgreen \u0001 ) running high h 2 s , causing our valve to shut - in 13 , 000\nmm \u0001 , s ( we changed our specs at the valve to accept 8 parts per mil for 30\nminutes last week , per jill zively ) . louis dreyfus was diverting the well to\nanother pipeline , per the contract that gas has to come to us or be shut - in .\nwe got the well back on saturday afternoon , and all was well .\n? all meters were updated in pops for satuday \u0001 , s gas day .\n? christy w / pg shell lost two units .\nalso , seeing meter 1394 which dels to shell back down from 10 , 000 to 5 , 000 .\n? patty called re : the epng cuts , found out late afternoon that they are pcc ,\npipeline capacity constraints , at the ivalerow meter into pg & e .\n? joey stanton with duke called regarding some new production coming up . he\nwanted to sell it into hpl at lonestar / katy for sunday and monday . paged\ndarren , we took the gas , it needs to be priced today . duke let me know that\nthey would flow at a rate of 25 , 000 / hour , and should average approximately\n12 - 15 , 000 for the day . mark mccoy is working on getting a good meter total\nfrom lonestar for sunday , we need to get the deal in sitara and confirm\ntoday ' s gas day as well .\n? regarding pg & e , i do not have final cycle 4 numbers ( they come out around\n9 pm on the gas day ) .\nall in all , it was a pretty good weekend , and an educational one . gas\ncontrol did a great job communicating and assisting to resolve issues .\nplease check all meters impacted to make sure that i pop \u0001 , d and mop \u0001 , d\ncorrectly .\nthank you ,\nmary jane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.951+0000", "entityId": 2961, "properties": {"text": "Subject: calpine daily and monthly gas nomination\n> >\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.956+0000", "entityId": 2962, "properties": {"text": "Subject: eastrans september first of the month nominations\neffective 9 / 1 / 00 deliveries to eastrans is 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.960+0000", "entityId": 2963, "properties": {"text": "Subject: enron / hpl actuals for august 25 - 27 , 2000\n- august 25 , 2000\nteco tap 20 . 000 / enron ; 96 . 667 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron\naugust 26 , 2000\nteco tap 20 . 000 / enron ; 96 . 667 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron\naugust 27 , 2000\nteco tap 20 . 000 / enron ; 102 . 500 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.965+0000", "entityId": 2964, "properties": {"text": "Subject: new production - deals need\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 08 / 28 / 2000 03 : 23\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n08 / 28 / 2000 02 : 16 pm\nto : robert cotten / hou / ect @ ect\ncc : elizabeth l hernandez / hou / ect @ ect , lisa hesse / hou / ect @ ect , trisha\nhughes / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : new production - deals need\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period\npure resources , lp 9830 750 mmbtu / d 100 % gas daily less $ 0 . 12 8 / 7 - 8 / 31\nsamson lone star limited 9851 1 , 000 mmbtu / d 100 % gas daily less $ 0 . 15 8 / 16\n- 8 / 31\ncross - tex energy svcs . ltd 9843 300 mmbtu / d 100 % gas daily less $ 0 . 065 8 / 25\n- 8 / 31\n300 mmbtu / d 100 % if / hsc less $ 0 . 065 9 / 01 - 9 / 30\nfyi , susan has created and submitted committed reserves firm tickets for the\nremaining term of the deal beginning with the month of september .\nadditionally , these are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.969+0000", "entityId": 2965, "properties": {"text": "Subject: spot or firm tickets\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 08 / 28 / 2000 03 : 22\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n08 / 28 / 2000 02 : 20 pm\nto : robert cotten / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject : spot or firm tickets\nbob ,\nplease see the responses below highlighted in red .\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 08 / 28 / 2000\n02 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 08 / 24 / 2000 06 : 08 pm\nto : vance l taylor / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : spot or firm tickets\nvance ,\nthe following nominations do not have deal tickets in sitara for september ,\n2000 activity . please advise whether the deals will be spot or firm . daren\nwants everything in sitara by 3 pm on monday , august 28 . thanks .\nbob\nsource meter # sept nom type of purchase status\nccgm , lp 9840 1 , 000 firm ticket submitted today\ncross - tex 5467 250 firm requested via e - mail\ncummins & walker unk 500 firm ( not flowing ) will request spot ticket when\nwell commences to flow\ndallas production 6789 12 , 519 spot requested via e - mail\nduke energy trading 6347 206 spot requested via e - mail\neex operating 5999 11 , 632 firm ticket submitted today\neog resources 4157 76 firm ticket has been submitted under hughes\ninvestments\nhesco gathering 9624 100 firm deal needs to reflect \" evergreen \"\nprovision ( flag )\nhesco gathering 9835 700 firm ( not flowing ) will request spot ticket when\nwell commences to flow\nph exploration 6838 94 firm deal was recently rolled into extended term\npioneer exploration 2698 1 , 000 firm ( not flowing ) will request spot ticket\nwhen well commences to flow\npure resources 9830 500 firm ticket submitted today\nrio vista 6442 609 no longer buying contracted terminated effective 8 / 15\nsamson lonestar 9845 2 , 886 firm ticket submitted last week\nswift energy 2630 322 spot requested via e - mail\ntema oil & gas 4688 1 firm deal needs to reflect \" evergreen \" provision\n( flag )\ntri - union develop . 2697 700 firm ( not flowing ) will request spot ticket\nwhen well commences to flow\nwhiting petroleum 6523 100 spot requested via e - mail", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.974+0000", "entityId": 2966, "properties": {"text": "Subject: sept noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 08 / 28 / 2000\n08 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 08 / 25 / 2000 04 : 29 : 06 pm\nto : ami _ chokshi @ enron . com\ncc :\nsubject : sept noms\n( see attached file : hpl - sept . xls ) you are the best\n- hpl - sept . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.978+0000", "entityId": 2967, "properties": {"text": "Subject: revised availabilities for september 2000 and co - owner volumes\nrevisions for sept . 2000\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 08 / 29 / 2000 01 : 02\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n08 / 29 / 2000 01 : 01 pm\nto :\ncc :\nsubject : revised availabilities for september 2000 and co - owner volumes\nthe attached shows revised availabilities and co - owner volumes for september\n2000 . all revisions are highlighted .\nlet me know of any questions you may have .\nsteve\n- enronavailso 900 revol . xls\n- 0900 co - owners volumes to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.983+0000", "entityId": 2968, "properties": {"text": "Subject: re : ect - im waha ? ? ?\nall except for last one rollled due to evergreen . when you convert to ena -\nim texas - don ' t forget to remove the evergreen flag on the old ect - im waha\ndeals .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thomas engel / hou / ect on 08 / 29 / 2000 07 : 24\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n08 / 22 / 2000 12 : 45 pm\nto : thomas engel / hou / ect @ ect\ncc :\nsubject : re : ect - im waha ? ? ?\nthese deals should be converted to ena - im texas . is there a way that you can\nchange all of these deals systematically ?\nd\nfrom : thomas engel 08 / 22 / 2000 08 : 54 am\nto : daren j farmer / hou / ect @ ect , heidi withers / hou / ees @ ees , trisha\nhughes / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , russ severson / hou / ect @ ect , scott\nmills / hou / ect @ ect , regina perkins / hou / ect @ ect\nsubject : ect - im waha ? ? ?\nshould these not be converted to ena - im texas ? ? ? some time ago - we were\ntold this desk was dead and the existing deals would end . this desk is not\nincluded in any texas desk portfolios .\nthe ect desks are supposed to be inactive - however - these deals keep\nrolling - and\nsomeone created some new ones ? if the desk is active - should we change it\nto ena - im waha -\nas ect is no more ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.988+0000", "entityId": 2969, "properties": {"text": "Subject: meter 5593\ndaren - canyou get a deal set up for meter 5593 for aug 00 ? there has been a\nsmall amount of flow everyday . total flow for aug . 00 is 1 . 054 . last deal\nticket associated was 133169 for jul . 00 . let me know if you have any\nquestions .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.992+0000", "entityId": 2970, "properties": {"text": "Subject: alloc . except - mtr 1491\ndaren ,\nmeter 1491 has steady flow for the first 13 days of the month . it is the\nshanghai energy gas lift sales mtr . previously , these volumes have been\nplaced on the strangers agreement , but , i don ' t know that that is correct .\nthe volume is steady between 150 and 200 per day . if i should be asking\nsomeone else , please let me know .\nthank you for all of your assistance and patience ,\nmary jane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:15.996+0000", "entityId": 2971, "properties": {"text": "Subject: baytown 12 ' ' pigging affected meters\ncheryl\nplease make sure letters are sent out this week for the baytown 12 \" pigging\nproject . all producers are to be shut - in by 9 : 00 am on september 12 , 2000 .\nthe outage is expected to last three to four days .\nif you have any questions please call me 36449\ngary hanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 29 / 2000 04 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 11 / 2000 11 : 13 am\nto : cheryl dudley / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect , george weissman / hou / ect @ ect , shawna\nflynn / hou / ect @ ect\ncc : steve hpl schneider / hou / ect @ ect , james mckay / hou / ect @ ect , jeffrey a\naustin / hou / ect @ ect , william d cosby / gco / enron @ enron\nsubject : baytown 12 ' ' pigging affected meters\nthe baytown 12 \" pigging project scheduled for august 15 has been cancelled .\nthe work has been rescheduled and is expected to begin september 12 . the\nsame list of meters will be shut - in early on the morning of september 12 and\nremain shut - in approximately three to four days .\nif you have any questions please call me 36449 .\nthanks\ngary hanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 08 / 2000 12 : 49\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary a hanks 08 / 01 / 2000 10 : 55 am\nto : cheryl dudley / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect , george weissman / hou / ect @ ect , shawna\nflynn / hou / ect @ ect\ncc : steve hpl schneider / hou / ect @ ect , james mckay / hou / ect @ ect , jeffrey a\naustin / hou / ect @ ect\nsubject : baytown 12 ' ' pigging affected meters\nthe meters listed in the attached email will be shut - in in order to pig the\nbaytown 12 \" . the meters will be shut - in early on the morning of august 15 ,\nand remain shut - in for approximately five to ten days .\nif you have any questions please call me 36449 .\nthanks\ngary hanks\nmgr gas control\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 08 / 01 / 2000 10 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike vollmering @ enron\n08 / 01 / 2000 08 : 59 am\nto : gary a hanks / hou / ect @ ect , jill t zivley / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , pat flavin / gco / enron @ enron , liberty team\nhpl / gco / enron @ enron\nsubject : baytown 12 ' '\nthe columbus energy wiggins # 1 ( 989634 ) will be effected by the pigging\nproject . the tap valve is installed in the mlv bypass and the bypass will be\nremoved to blow down the line .\nhere is a list of all the producers that will be effected .\ncolumbus energy - - - - - - - - wiggins # 1 ( 989634 ) and fig orchard ( 986764 )\nsanchez o mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.001+0000", "entityId": 2972, "properties": {"text": "Subject: cornshucker\nhere are the points the gas is to be nomintated at for september by supplier :\nwilliams :\nel paso 15 , 000\nlomax sterling 4 , 500\ndelhi cayanosa 5 , 500\napache ( by cynergy ) :\ndelhi 6 , 000\nlomax sterling 14 , 000\n( per nancy stivers )\nshe is to send me the nomination once complete .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.007+0000", "entityId": 2973, "properties": {"text": "Subject: hpl nom for august 30 , 2000\n( see attached file : hplo 830 . xls )\n- hplo 830 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.011+0000", "entityId": 2974, "properties": {"text": "Subject: enron / hpl actuals for august 28 , 2000\nteco tap 20 . 000 / enron ; 120 . 000 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.019+0000", "entityId": 2975, "properties": {"text": "Subject: re : september spot purchases\nvance ,\ndeal tickets have been created and entered in sitara as follows :\nbob\nvance l taylor\n08 / 28 / 2000 04 : 33 pm\nto : robert cotten / hou / ect @ ect\ncc : elizabeth l hernandez / hou / ect @ ect , lisa hesse / hou / ect @ ect , trisha\nhughes / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : september spot purchases\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of september . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume deal # price\nwhiting petroleum corp 6523 200 mmbtu / d 382601 91 % if / hsc\nengage energy us , lp 5923 775 mmbtu / d 382610 100 % if / hsc less $ 0 . 24\nengage energy us , lp 5848 240 mmbtu / d 382621 100 % if / hsc less $ 0 . 24\nswift energy 2630 21 mmbtu / d 382627 90 % if / hsc less $ 0 . 258\nduke energy trading & marketing 6347 200 mmbtu / d 382631 85 % if / hsc\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.027+0000", "entityId": 2976, "properties": {"text": "Subject: cornshucker\nhere are the points the gas is to be nomintated at for september by supplier :\nwilliams :\nel paso 15 , 000\nlomax sterling 4 , 500\ndelhi cayanosa 5 , 500\napache ( by cynergy ) :\ndelhi 6 , 000\nlomax sterling 14 , 000\n( per nancy stivers )\nshe is to send me the nomination once complete .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.032+0000", "entityId": 2977, "properties": {"text": "Subject: revised devon and co - owner availabilities for september\nfyi . . . . . . . . . . . . . . . . . . . . . .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 08 / 30 / 2000 08 : 10\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n08 / 29 / 2000 03 : 57 pm\nto :\ncc :\nsubject : revised devon and co - owner availabilities for september\nbeverly ,\nthe co - owner volumes have been updated to show a volume for comet petroleum\nand james d . finley under burnell n . pettus . additionally , devon ' s volume\nunder burnell / n . pettus has also increased slightly .\nsteve\n- 0900 co - owners volumes to enron . xls\n- enronavailso 900 revo 2 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.037+0000", "entityId": 2978, "properties": {"text": "Subject: re : valero - - meter 8018\ndoes it make a difference if the information is communicated via a copy of\ncustomer \" force majeure \" letter or should it only be communicated\nvia notes mail .\nthere are several ways to communicate effectively issues that is beneficial\nto other departments , do you have a preference ?\nenron north america corp .\nfrom : pat clynes @ enron 08 / 29 / 2000 10 : 13 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : valero - - meter 8018\nrobert ,\nthis is an idea of the type of information that should be communicated .\nthanks , pat\ndaren j farmer @ ect\n01 / 27 / 2000 03 : 23 pm\nto : robert e lloyd / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc :\nsubject : valero - - meter 8018\nfyi . we need to make sure that this kind of communication conitinues to flow\ndownstream .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 27 / 2000\n03 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenneth seaman 01 / 27 / 2000 02 : 00 pm\nto : fred boas / hou / ect @ ect , joanie h ngo / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : valero - - meter 8018\ndeliveries to this meter were halted late in the day of january 20 . the\ncustomer has maintenance issues that necessitated an earlier than planned\nturnaround .\nit is my understanding from our trader this is another force majure situation\nresulting in no sale or buyback at this meter commencing with the shutdown .\nplease take this into consideration when allocating and billing the customer .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.041+0000", "entityId": 2979, "properties": {"text": "Subject: meter 984132 for 1 / 16 / 99\nhi daren ,\ncan you give us a status on this request ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 08 / 30 / 2000 12 : 22\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n08 / 23 / 2000 12 : 59 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\njackie ,\nwhat does mops show for the days in question ? it would be incorrect to add\nany days to the adonis ticket mentioned below . it sounds as if the meter was\nallocated incorrectly in pops and / or a deal was not pathed correctly in\nmops . let me know what you find in mops .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 08 / 23 / 2000\n12 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 08 / 22 / 2000 02 : 51 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 08 / 22 / 2000 02 : 07 pm\nto : jackie young / hou / ect @ ect , karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : meter 984132 for 1 / 16 / 99\nhere is the issue for 1 / 16 / 99 at meter 984132 .\n20 , 000 mmbtu were confirmed for adonis in pops . 10 , 000 mmbtu on day 5 and\nday 16 . day 16 is not valid for deal 51862 ( track id 6155 ) , which is where\n10 , 000 was confirmed . the actual sale to adonis was 10 , 000 which was\ninvoiced and paid by adonis . we are trying to clear the feedback error\nreport . my question is why was 10 , 000 confirmed on 1 / 16 / 99 if the date is\nnot valid for the deal ?\nwhen karen allocates the actual 10 , 000 it is prorating 5 , 000 for each day\nthat is confirmed ( the 5 th and 16 th ) .\nshould the whole 10 , 000 be allocated to the 5 th or should 5 , 000 be allocated\nto each day ? if 5 , 000 should be allocated to each day , the 16 th needs to be\nadded to the deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.046+0000", "entityId": 2980, "properties": {"text": "Subject: re : valero - - meter 8018\nrobert ,\nyou can communicate by lotus notes , phone , memo or other means . the point\nthat i am making is to communicate\nall and any industrial information to daren , gary hanks , volume management ,\nand myself . there may be times to\nalso involve lee and gary as well as others . this was just to assist you .\nthanks , pat\nrobert e lloyd @ ect\n08 / 30 / 2000 09 : 45 am\nto : pat clynes / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect , robert e lloyd / hou / ect @ ect\nsubject : re : valero - - meter 8018\ndoes it make a difference if the information is communicated via a copy of\ncustomer \" force majeure \" letter or should it only be communicated\nvia notes mail .\nthere are several ways to communicate effectively issues that is beneficial\nto other departments , do you have a preference ?\nenron north america corp .\nfrom : pat clynes @ enron 08 / 29 / 2000 10 : 13 pm\nto : robert e lloyd / hou / ect @ ect\ncc :\nsubject : re : valero - - meter 8018\nrobert ,\nthis is an idea of the type of information that should be communicated .\nthanks , pat\ndaren j farmer @ ect\n01 / 27 / 2000 03 : 23 pm\nto : robert e lloyd / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc :\nsubject : valero - - meter 8018\nfyi . we need to make sure that this kind of communication conitinues to flow\ndownstream .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 27 / 2000\n03 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkenneth seaman 01 / 27 / 2000 02 : 00 pm\nto : fred boas / hou / ect @ ect , joanie h ngo / hou / ect @ ect , robert e\nlloyd / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : valero - - meter 8018\ndeliveries to this meter were halted late in the day of january 20 . the\ncustomer has maintenance issues that necessitated an earlier than planned\nturnaround .\nit is my understanding from our trader this is another force majure situation\nresulting in no sale or buyback at this meter commencing with the shutdown .\nplease take this into consideration when allocating and billing the customer .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.051+0000", "entityId": 2981, "properties": {"text": "Subject: discrepancies in price of gas redelivered at mobil beaumont\ni thought it might be easier to reply by email of the\nperiod , volume , and price for periods when the\nprice for gas redelivered by duke at mobil beaumont was not\nhsc monthly index - $ . 0375 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.055+0000", "entityId": 2982, "properties": {"text": "Subject: re : discrepancies in price of gas redelivered at mobil beaumont\nthank you , darren .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.061+0000", "entityId": 2983, "properties": {"text": "Subject: re : discrepancies in price of gas redelivered at mobil beaumont\ni show that we adjusted pricing for excess volumes for the following dates :\nmar 11 - 31 15 , 000 / day delivered to mobil beaumont at if hsc - . 045\napril 5 - 19 15 , 000 / day delivered to mobil beaumont at if hsc - . 055 . an\noutage occurred on the 5 th , so the deliveries to mobil didn ' t acutally start\nuntil the 12 th .\nif you need anything else , let me know .\ndaren\n\" bruce mcmills \" on 08 / 30 / 2000 01 : 28 : 47 pm\nto : dfarmer @ enron . com\ncc : \" marta k henderson \"\nsubject : discrepancies in price of gas redelivered at mobil beaumont\ni thought it might be easier to reply by email of the\nperiod , volume , and price for periods when the\nprice for gas redelivered by duke at mobil beaumont was not\nhsc monthly index - $ . 0375 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.065+0000", "entityId": 2984, "properties": {"text": "Subject: cornhusker\ni have entered deals into sitara . the supply deals are 384247 and 384237 .\nthe sale is 384258 . the sale is not currently booked at the correct location\nor with a counterparty . the pricing on the sale includes the admin fee ,\ntransport , demand charges , an average of the buy prices and 1 % fuel charge .\nif the pricing is wrong ( or anything else ) , please let me know and i ' ll redo\nit . please let me know of any concerns / questions .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.070+0000", "entityId": 2985, "properties": {"text": "Subject: re : new sitara desk request _ ena - im cleburne _ gcp response\nhello scott ,\nyour request is complete as follows :\nportfolio :\ncp / id 84078 ena - im cleburne\ncpr record :\ncp / id 84079 ena - im cleburne\nba / id 84079\nrgds .\nsamuel x 3 - 9890\n( gcp _ ena )\nfrom : scott mills 08 / 30 / 2000 08 : 27 am\nto : samuel schott / hou / ect @ ect , richard elwood / hou / ect @ ect , debbie r\nbrackett / hou / ect @ ect , judy rose / hou / ect @ ect , vanessa\nschulte / corp / enron @ enron , david baumbach / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , dave nommensen / hou / ect @ ect , donna greif / hou / ect @ ect ,\nshawna johnson / corp / enron @ enron , russ severson / hou / ect @ ect\ncc :\nsubject : new sitara desk request\nthis needs to be available in production by early afternoon . sorry for the\nshort notice .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.075+0000", "entityId": 2986, "properties": {"text": "Subject: done : new sitara desk request ( ref cc # 20000813 )\ncarey ,\nper scott ' s request below the following business unit ( aka : desk id ,\nportfolio ) was added to global production and unify development , test ,\nproduction and stage . please copy to the other global environments .\nthanks ,\ndick , x 3 - 1489\nupdated in global production environment gcc code desc :\np ent subenti data _ cd ap data _ desc code _ id\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\na sit deskid imcl a ena - im cleburne 9273\nfrom : scott mills 08 / 30 / 2000 08 : 27 am\nto : samuel schott / hou / ect @ ect , richard elwood / hou / ect @ ect , debbie r\nbrackett / hou / ect @ ect , judy rose / hou / ect @ ect , vanessa\nschulte / corp / enron @ enron , david baumbach / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , dave nommensen / hou / ect @ ect , donna greif / hou / ect @ ect ,\nshawna johnson / corp / enron @ enron , russ severson / hou / ect @ ect\ncc :\nsubject : new sitara desk request\nthis needs to be available in production by early afternoon . sorry for the\nshort notice .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.081+0000", "entityId": 2987, "properties": {"text": "Subject: new sitara desk request\nthis needs to be available in production by early afternoon . sorry for the\nshort notice .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.086+0000", "entityId": 2988, "properties": {"text": "Subject: sitara patch\na patch is being released to resolve a problem with updates to prior day\npositions in position manager\nrelated to volume feedback ( some updates were held in a queue until later in\nthe evening ) .\nplease call the sitara / cpr hotline ( ( 713 ) - 853 - 7049 ) if you have any questions\nor problems\nwith the release .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.091+0000", "entityId": 2989, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for august 29 , 2000\nteco tap 20 . 000 / enron ; 82 . 083 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.095+0000", "entityId": 2990, "properties": {"text": "Subject: re : enron / hpl actuals for august 29 , 2000\nwith regards to the 29 th , gary ( tufco ) spoke with lee ( hpl ) requesting the\ntap volume to decrease at 2 am . mike ( valero ) was unable to accomodate the\nrequest until 2 : 30 am . lee confirmed with gary , and the volumes decreased from\n140 to 0 at 2 : 30 am . please let me know how you ' d like to proceed .\ni am still working on lonestar volumes for sept , but will let you know as\nsoon as possible .\nregards ,\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 08 / 30 / 2000\n12 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ami chokshi 08 / 30 / 2000 10 : 37 am\nto : \" charlie stone \" , daren j farmer / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect\nsubject : re : enron / hpl actuals for august 29 , 2000\nhey charlie ,\nfor day 29 , i show a total volume of 102 . 083\n140 . 0 from 9 a through la\n70 . 0 for 2 a ( 1 hour only )\n0 . 0 from 3 a through 8 a\nalso , for the total volume through day 28 , i show :\nhplr 2015 . 0\nenron 1 . 152 . 0\ngd 666 . 877\nplease advise .\nami\n\" melissa jones \" on 08 / 30 / 2000 10 : 10 : 27 am\nto : \" charlie stone \" , \" gary green \" ,\ntimpowell @ txu . com , daren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for august 29 , 2000\nteco tap 20 . 000 / enron ; 79 . 167 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.100+0000", "entityId": 2991, "properties": {"text": "Subject: hpl nom for august 31 , 2000\n( see attached file : hplo 831 . xls )\n- hplo 831 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.105+0000", "entityId": 2992, "properties": {"text": "Subject: re : enron / hpl actuals for august 29 , 2000\nhey charlie ,\nfor day 29 , i show a total volume of 102 . 083\n140 . 0 from 9 a through la\n70 . 0 for 2 a ( 1 hour only )\n0 . 0 from 3 a through 8 a\nalso , for the total volume through day 28 , i show :\nhplr 2015 . 0\nenron 1 . 152 . 0\ngd 666 . 877\nplease advise .\nami\n\" melissa jones \" on 08 / 30 / 2000 10 : 10 : 27 am\nto : \" charlie stone \" , \" gary green \" ,\ntimpowell @ txu . com , daren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for august 29 , 2000\nteco tap 20 . 000 / enron ; 79 . 167 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.112+0000", "entityId": 2993, "properties": {"text": "Subject: cornhusker\ni have entered deals into sitara . the supply deals are 384247 and 384237 .\nthe sale is 384258 . the sale is not currently booked at the correct location\nor with a counterparty . the pricing on the sale includes the admin fee ,\ntransport , demand charges , an average of the buy prices and 1 % fuel charge .\nif the pricing is wrong ( or anything else ) , please let me know and i ' ll redo\nit . please let me know of any concerns / questions .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.119+0000", "entityId": 2994, "properties": {"text": "Subject: re : new sitara desk request _ ena - im cleburne _ gcp response\nhello scott ,\nyour request is complete as follows :\nportfolio :\ncp / id 84078 ena - im cleburne\ncpr record :\ncp / id 84079 ena - im cleburne\nba / id 84079\nrgds .\nsamuel x 3 - 9890\n( gcp _ ena )\nfrom : scott mills 08 / 30 / 2000 08 : 27 am\nto : samuel schott / hou / ect @ ect , richard elwood / hou / ect @ ect , debbie r\nbrackett / hou / ect @ ect , judy rose / hou / ect @ ect , vanessa\nschulte / corp / enron @ enron , david baumbach / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , dave nommensen / hou / ect @ ect , donna greif / hou / ect @ ect ,\nshawna johnson / corp / enron @ enron , russ severson / hou / ect @ ect\ncc :\nsubject : new sitara desk request\nthis needs to be available in production by early afternoon . sorry for the\nshort notice .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.125+0000", "entityId": 2995, "properties": {"text": "Subject: done : new sitara desk request ( ref cc # 20000813 )\ncarey ,\nper scott ' s request below the following business unit ( aka : desk id ,\nportfolio ) was added to global production and unify development , test ,\nproduction and stage . please copy to the other global environments .\nthanks ,\ndick , x 3 - 1489\nupdated in global production environment gcc code desc :\np ent subenti data _ cd ap data _ desc code _ id\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\na sit deskid imcl a ena - im cleburne 9273\nfrom : scott mills 08 / 30 / 2000 08 : 27 am\nto : samuel schott / hou / ect @ ect , richard elwood / hou / ect @ ect , debbie r\nbrackett / hou / ect @ ect , judy rose / hou / ect @ ect , vanessa\nschulte / corp / enron @ enron , david baumbach / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , dave nommensen / hou / ect @ ect , donna greif / hou / ect @ ect ,\nshawna johnson / corp / enron @ enron , russ severson / hou / ect @ ect\ncc :\nsubject : new sitara desk request\nthis needs to be available in production by early afternoon . sorry for the\nshort notice .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.132+0000", "entityId": 2996, "properties": {"text": "Subject: new sitara desk request\nthis needs to be available in production by early afternoon . sorry for the\nshort notice .\nsrm ( x 33548 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.136+0000", "entityId": 2997, "properties": {"text": "Subject: microsoft messenger\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ina rangel / hou / ect on 08 / 30 / 2000 07 : 13 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian hoskins\n08 / 30 / 2000 10 : 04 am\nto : ina rangel / hou / ect @ ect\ncc :\nsubject : for distribution\nas part of an effort to facilitate communication on the trading floor , we\nhave set everyone up with microsoft messenger .\nfor those of you not familiar with the program , microsoft messenger allows\nyou to talk real time with anyone on your contact\nlist . the program also has voice capabilities if you have a microphone .\nmessenger should now be fully installed on your\ncomputer and is accessible from the start menu .\nyou will need to set up a hotmail account in order to use this service .\nplease follow the link below to set up your account .\nonce you have created an id , please email me back with your id so that i can\ncompile a contact list for everyone on the floor .\nlet me know if you need help getting set up .\nhttp : / / hotmail . com\na word of caution when using the program . because this is not behind the\ncompany firewall , anything you send is not 100 % secure and\ncould be intercepted by a third party . any sensitive pricing information\nthat you do not want disclosed should not be transmitted over\nthe program .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.141+0000", "entityId": 2998, "properties": {"text": "Subject: hpl noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 08 / 30 / 2000\n06 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 08 / 29 / 2000 11 : 06 : 00 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : hpl noms\n( see attached file : hpl - sept . xls )\n- hpl - sept . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.146+0000", "entityId": 2999, "properties": {"text": "Subject: duke exchange deal feb . 2000 prod .\ncashout\nplease add the following fees for feb . 2000 :\nfee type :\nnatural gas\nphysical forward\npenalty for over / under take\nsales ticket # 157278\n$ 1 , 008 . 87 dollars due hplc\npurchase ticket # 157288\n$ 519 . 73 dollars due duke\nthanks - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.151+0000", "entityId": 3000, "properties": {"text": "Subject: hpl nom for september 1 , 2000\n( see attached file : hplo 901 . xls )\n- hplo 901 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.156+0000", "entityId": 3001, "properties": {"text": "Subject: enron / hpl actuals for august 30 , , 2000\nteco tap 20 . 000 / enron ; 79 . 167 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.161+0000", "entityId": 3002, "properties": {"text": "Subject: inactivations\nreminder :\nrecords on the august 2000 name change / merger notification report will be\ninactivated tomorrow afternoon 9 / 01 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.166+0000", "entityId": 3003, "properties": {"text": "Subject: inactivations\ncheryl johnson\n08 / 31 / 2000 11 : 14 am\nto : camille gerard / corp / enron @ enron , jeremy wong / hou / ect @ ect , bob\nbowen / hou / ect @ ect , debbie r brackett / hou / ect @ ect , mary g gosnell / hou / ect @ ect ,\nlarry joe hunter / hou / ect @ ect , kori loibl / hou / ect @ ect , tom e\nmoore / hou / ect @ ect , john d powell / hou / ect @ ect , brant reves / hou / ect @ ect ,\nmarilyn colbert / hou / ect @ ect , bill d hare / hou / ect @ ect , laurel\nadams / hou / ect @ ect , peggy alix / hou / ect @ ect , amelia alland / hou / ect @ ect , lauri a\nallen / hou / ect @ ect , bridgette anderson / corp / enron @ enron , beth\napollo / lon / ect @ ect , arfan aziz / lon / ect @ ect , susan bailey / hou / ect @ ect , cyndie\nbalfour - flanagan / corp / enron @ enron , stacey richardson / hou / ect @ ect , edward d\nbaughman / hou / ect @ ect , kimberlee a bennick / hou / ect @ ect , lisa berg\ncarver / hou / ect @ ect , anne bike / corp / enron @ enron , jennifer blay / hou / ect @ ect ,\nfred boas / hou / ect @ ect , bob bowen / hou / ect @ ect , debbie r brackett / hou / ect @ ect ,\nlinda s bryan / hou / ect @ ect , lesli campbell / hou / ect @ ect , anthony\ncampos / hou / ect @ ect , sylvia a campos / hou / ect @ ect , nella\ncappelletto / cal / ect @ ect , cary m carrabine / hou / ect @ ect , clem\ncernosek / hou / ect @ ect , pat clynes / corp / enron @ enron , marilyn\ncolbert / hou / ect @ ect , brad coleman / hou / ect @ ect , donna consemiu / hou / ect @ ect ,\nrobert cotten / hou / ect @ ect , mike croucher / hou / ect @ ect , romeo\nd ' souza / hou / ect @ ect , shonnie daniel / hou / ect @ ect , frank l davis / hou / ect @ ect ,\ncheryl dawes / cal / ect @ ect , jennifer deboisblanc denny / hou / ect @ ect , rhonda l\ndenton / hou / ect @ ect , russell diamond / hou / ect @ ect , stacy e dickson / hou / ect @ ect ,\nbradley diebner / hou / ect @ ect , michael eiben / hou / ect @ ect , susan\nelledge / na / enron @ enron , faye ellis / hou / ect @ ect , diane ellstrom / hou / ect @ ect ,\nveronica espinoza / corp / enron @ enron , enron europe global contracts and\nfacilities , enron europe global counterparty , daren j farmer / hou / ect @ ect ,\njacquelyn farriel / gpgfin / enron @ enron , genia fitzgerald / hou / ect @ ect , irene\nflynn / hou / ect @ ect , shawna flynn / hou / ect @ ect , susan flynn / hou / ect @ ect , hoong p\nfoon / hou / ect @ ect , rebecca ford / hou / ect @ ect , imelda frayre / hou / ect @ ect ,\nrandall l gay / hou / ect @ ect , scotty gilbert / tor / ect @ ect , lisa\ngillette / hou / ect @ ect , carolyn gilley / hou / ect @ ect , winston\ngoodbody / hou / ect @ ect , amita gosalia / lon / ect @ ect , mary g gosnell / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect , andrea r guillen / hou / ect @ ect , david\nhardy / lon / ect @ ect , bill d hare / hou / ect @ ect , kenneth m harmon / hou / ect @ ect ,\ntony harris / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , elizabeth l\nhernandez / hou / ect @ ect , brenda f herod / hou / ect @ ect , marlene\nhilliard / hou / ect @ ect , liz hillman / corp / enron @ enron , nathan l\nhlavaty / hou / ect @ ect , corey hobbs / corp / enron @ enron , jim homco / hou / ect @ ect ,\ncindy horn / hou / ect @ ect , larry joe hunter / hou / ect @ ect , rahil\njafry / hou / ect @ ect , tana jones / hou / ect @ ect , katherine l kelly / hou / ect @ ect ,\nnanette kettler / hou / ect @ ect , cheryl dudley / hou / ect @ ect , bob\nklein / hou / ect @ ect , troy klussmann / hou / ect @ ect , victor lamadrid / hou / ect @ ect ,\nkaren lambert / hou / ect @ ect , gary w lamphier / hou / ect @ ect , kristian j\nlande / hou / ect @ ect , elsie lew / hou / ect @ ect , andrew h lewis / hou / ect @ ect , jim\nlittle / hou / ect @ ect , kori loibl / hou / ect @ ect , melba lozano / hou / ect @ ect , scott f\nlytle / hou / ect @ ect , hillary mack / corp / enron @ enron , richard c\nmckeel / hou / ect @ ect , chris mendoza / hou / ect @ ect , nidia mendoza / hou / ect @ ect ,\ncarey m metz / hou / ect @ ect , julie meyers / hou / ect @ ect , richard a\nmiley / hou / ect @ ect , bruce mills / corp / enron @ enron , scott mills / hou / ect @ ect ,\nglenda d mitchell / hou / ect @ ect , patrice l mims / hou / ect @ ect , jason\nmoore / hou / ect @ ect , torrey moorer / hou / ect @ ect , jackie morgan / hou / ect @ ect ,\nmichael w morris / hou / ect @ ect , matt motsinger / hou / ect @ ect , gary\nnelson / hou / ect @ ect , dale neuner / hou / ect @ ect , tracy ngo / hou / ect @ ect , debbie\nnicholls / lon / ect @ ect , john l nowlan / hou / ect @ ect , frank\nortiz / epsc / hou / ect @ ect , b scott palmer / hou / ect @ ect , anita k\npatton / hou / ect @ ect , regina perkins / hou / ect @ ect , debra\nperlingiere / hou / ect @ ect , richard pinion / hou / ect @ ect , sylvia s\npollan / hou / ect @ ect , brent a price / hou / ect @ ect , cyril price / hou / ect @ ect , joan\nquick / hou / ect @ ect , dutch quigley / hou / ect @ ect , leslie reeves / hou / ect @ ect ,\ndonald p reinhardt / hou / ect @ ect , brant reves / hou / ect @ ect , suzy\nrobey / hou / ect @ ect , bernice rodriguez / hou / ect @ ect , carlos j\nrodriguez / hou / ect @ ect , sam round / hou / ect @ ect , marilyn m schoppe / hou / ect @ ect ,\nsamuel schott / hou / ect @ ect , brad schneider / corp / enron @ enron , dianne\nseib / cal / ect @ ect , cris sherman / hou / ect @ ect , john sherriff / lon / ect @ ect , james\nshirley / hou / ees @ ees , lynn e shivers / hou / ect @ ect , michele small / lon / ect @ ect ,\nmary m smith / hou / ect @ ect , susan smith / hou / ect @ ect , mary\nsolmonson / hou / ect @ ect , jefferson d sorenson / hou / ect @ ect , carrie\nsouthard / hou / ect @ ect , mechelle stevens / hou / ect @ ect , willie\nstewart / hou / ect @ ect , geoff storey / hou / ect @ ect , colleen sullivan / hou / ect @ ect ,\njohn suttle / hou / ect @ ect , connie sutton / hou / ect @ ect , tara\nsweitzer / hou / ect @ ect , dianne j swiber / hou / ect @ ect , neal symms / hou / ect @ ect ,\nvance l taylor / hou / ect @ ect , edward terry / hou / ect @ ect , kim s\ntheriot / hou / ect @ ect , sheri thomas / hou / ect @ ect , veronica\nthompson / gpgfin / enron @ enron , mark d thorne / hou / ect @ ect , philippe\ntravis / lon / ect @ ect , susan d trevino / hou / ect @ ect , laura\nvargas / corp / enron @ enron , claire viejou / lon / ect @ ect , elsa\nvillarreal / hou / ect @ ect , robert walker / hou / ect @ ect , george\nweissman / hou / ect @ ect , chris wiebe / cal / ect @ ect , sony wilson / hou / ect @ ect ,\no ' neal d winfree / hou / ect @ ect , christa winfrey / hou / ect @ ect , rita\nwynne / hou / ect @ ect\ncc :\nsubject : inactivations\nreminder :\nrecords on the august 2000 name change / merger notification report will be\ninactivated tomorrow afternoon 9 / 01 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.172+0000", "entityId": 3004, "properties": {"text": "Subject: put the 10 on the ft\nthe transport volumes decreased from 25000 to 10000 . all 10000 should be on\ncontract 012 - 41991 - 203 .\nthanks ,\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 08 / 31 / 2000\n10 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 08 / 31 / 2000 10 : 47 : 37 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : put the 10 on the ft\n( see attached file : hpl - sept . xls )\n- hpl - sept . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.178+0000", "entityId": 3005, "properties": {"text": "Subject: new phone number & address\nthis is the new information for txu energy trading\ncarlos\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 09 / 01 / 2000\n07 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njheitmiller @ txuenergy . com on 08 / 31 / 2000 02 : 58 : 00 pm\nto : aburrell @ utilicorp . com , jgillies @ swbell . net , lsnow @ cantera - resources . com ,\njbarkus @ cantera - resources . com , weasterl @ txu . com , karenaj @ mitchellgs . com ,\nrlitvik @ markethubs . com , carlos . j . rodriguez @ enron . com , peggy . know @ gt . pge . com ,\nbwood @ altra . com , mmou @ dynegy . com , shjong @ duke - energy . com ,\nellen _ r _ dailey @ reliantenergy . com , terri _ a _ parrish @ reliantenergy . com ,\nagtaylor @ duke - energy . com , robin . gilbreath @ proenergy . com ,\nrobert . harp @ engageenergy . com , jojowpc @ hotbot . com , tannerj @ kochind . com\ncc :\nsubject : new phone number & address\nour office will be moving from houston to dallas 9 / 1 / 00 through 9 / 4 / 00 .\neffective 9 / 5 / 00 my new phone & fax numbers are :\nphone : 214 875 - 9837\nfax : 214 875 - ? ? ? ?\nif you need to reach me over the labor day weekend i can be paged at 281\n266 - 2212 . this pager number will be good until 9 / 11 / 00 . my new pager number\n214 512 - 7901 has also been activated .\nour new address will be 1717 main st . suite 1900 , dallas , tx 75201 . the txu\nenergy trading main number will be 214 875 - 9000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.183+0000", "entityId": 3006, "properties": {"text": "Subject: pricing issue for 5 / 00 production - duke energy\nyou probably haven ' t had time to look at the duke energy price . when you get\na chance could you please let me know what the correct price is for may 2000\nproduction .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elizabeth l hernandez / hou / ect on\n09 / 01 / 2000 07 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 08 / 30 / 2000 08 : 48 am\nto : elizabeth l hernandez / hou / ect @ ect\ncc :\nsubject : pricing issue for 5 / 00 production - duke energy\nelizabeth ,\nsorry , i can ' t remember if we had talked about this pricing issue or what .\nwere you looking into this issue for me or was it passed to someone else .\nplease see the email below . i believe the system is pulling in the wrong\nprice for waha . wtx . if . m . i . . for 5 / 00 production . the deal # is 250237 .\ni looked at the publication and it shows that the price should be $ 2 . 95 .\nthe price of $ 2 . 95 plus $ 1 would equal the price of $ 2 . 96 which is what duke\nis\nclaiming the price to be instead of what we are showing which is $ 3 . 95 .\nthanks , stephanie ( 3 - 6004 )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie gomes / hou / ect on 08 / 30 / 2000\n08 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephanie gomes 08 / 28 / 2000 01 : 58 pm\nto : elizabeth l hernandez / hou / ect @ ect\ncc :\nsubject : pricing issue for 7 / 00 production\nelizabeth ,\ni have a pricing discrepancy and i was not sure if i send this to you or\noneil .\nit ' s for duke energy , 5 / 00 production , deal # 250237 . duke believes our\nprice is too high . the system downloaded a price of $ 3 . 95\nthe price should be waha . wtx . if . m . i . , which is $ 2 . 95 for that month . (\nwaha . wtx . if . m . i . + 1 ) duke believes we should have paid them $ 2 . 96 .\ni think the system pulled in the wrong price . could you please let me know\nif you handle this pricing issue or someone else ?\nthanks , stephanie ( 3 - 6004 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.188+0000", "entityId": 3007, "properties": {"text": "Subject: out of the office\ni will be out of the office tuesday , 9 / 5 th . in my absence please contact\nmark mccoy at extension 3 - 3396 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.193+0000", "entityId": 3008, "properties": {"text": "Subject: software \" access \"\nplease rsvp to me and let me know if you have \" access \" set - up on your system .\nthank you ,\nadrial boals\nx 58849", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.198+0000", "entityId": 3009, "properties": {"text": "Subject: cornhusker for sept\ndaren informed me that tenaska will continue to nominate the cornhusker\nbusiness for another week or so , until all the paperwork is signed . but , we\nwill be taking this over for september shortly .\nthanks ,\nmark\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 09 / 01 / 2000 10 : 10\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n09 / 01 / 2000 09 : 33 am\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : cornhusker for sept\ncorrection : that should be rick hill , not rich\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 09 / 01 / 2000 09 : 31\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n09 / 01 / 2000 09 : 26 am\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : cornhusker for sept\ni was informed by nancy stivers at tenaska that rich hill with enron called\ntenaska and requested that they continue to handle the nominations and\naccounting for cornhusker through september . have you heard this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.202+0000", "entityId": 3010, "properties": {"text": "Subject: lonestar payback for 31 st\nfyi - - - - i am working on getting that oversight for the payback on the 31 st\ncorrected , switched from the current tenaska contracts , to our old transport .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.207+0000", "entityId": 3011, "properties": {"text": "Subject: cornhusker for sept\ncorrection : that should be rick hill , not rich\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 09 / 01 / 2000 09 : 31\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n09 / 01 / 2000 09 : 26 am\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : cornhusker for sept\ni was informed by nancy stivers at tenaska that rich hill with enron called\ntenaska and requested that they continue to handle the nominations and\naccounting for cornhusker through september . have you heard this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.212+0000", "entityId": 3012, "properties": {"text": "Subject: cornhusker for sept\ni was informed by nancy stivers at tenaska that rich hill with enron called\ntenaska and requested that they continue to handle the nominations and\naccounting for cornhusker through september . have you heard this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.217+0000", "entityId": 3013, "properties": {"text": "Subject: lone star points\ndaren , there were several points on your list that were previously created\nand the remainder have been created , with the exception explained below .\ndonna and i researched your list and identified the ones that were on system\n( which she would create ) and the ones that were off system ( which i would\ncreate ) .\nstandard pooling stations and west texas ( line x ) pooling stations had no\nmeters , so they are not set up .\nthe hunt fairway plant ( 17 - 8477 - 01 ) was previously created as ( 178477 ) , i\nneed to know if the ( 01 ) needs to be added .\nwe need to verify hpl - texoma ( 17 - 0973 - 13 ) , it is set up as ( 17097613 ) . is\nthis the same point ? ? ?\nplease let donna and myself know how to proceed with the ones in red .\nthanks ,\nfaye", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.222+0000", "entityId": 3014, "properties": {"text": "Subject: re : cornhusker deal\nrita ,\nthings have been changing daily on this thing , so we were waiting to get it\nall figured out .\ni did tell mark mccoy to handle this , and he is going to get you all the\ninformation right after\nthe long weekend . hope this helps . pat\nrita wynne @ ect\n08 / 31 / 2000 05 : 25 pm\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\ncc :\nsubject : cornhusker deal\nhey guys ,\ni need to be bought up to speed on the cornhusker deal . i don ' t know what\nthe impact is to my group or what we should expect to see in terms of\nallocations or settlements . any info . either of you can provide would be\nappreciated . thanks and have a great holiday !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.228+0000", "entityId": 3015, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for august 31 , 2000\nteco tap 70 . 000 / hpl gas daily\nls hpl lsk ic 8 . 000 / enron ; 12 . 000 / hpl gas daily\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n09 / 01 / 2000\n10 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n09 / 01 / 2000 10 : 25 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu , tim\npowell / lsp / enserch / us @ tu , daren . j . farmer @ enron . com ,\ngary . a . hanks @ enron . com , carlos . j . rodriguez @ enron . com ,\nearl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for august 31 , 2000\nteco tap 18 . 000 / enron ; 52 . 000 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.233+0000", "entityId": 3016, "properties": {"text": "Subject: revision # 1 - hpl nom for sept . 2 , 2000\n( see attached file : hplo 902 . xls )\n- hplo 902 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.238+0000", "entityId": 3017, "properties": {"text": "Subject: enron / hpl actuals for august 31 , 2000\nteco tap 18 . 000 / enron ; 52 . 000 / hpl gas daily\nls hpl lsk ic 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.246+0000", "entityId": 3018, "properties": {"text": "Subject: cornhusker for sept\ndaren informed me that tenaska will continue to nominate the cornhusker\nbusiness for another week or so , until all the paperwork is signed . but , we\nwill be taking this over for september shortly .\nthanks ,\nmark\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 09 / 01 / 2000 10 : 10\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n09 / 01 / 2000 09 : 33 am\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : cornhusker for sept\ncorrection : that should be rick hill , not rich\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 09 / 01 / 2000 09 : 31\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n09 / 01 / 2000 09 : 26 am\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : cornhusker for sept\ni was informed by nancy stivers at tenaska that rich hill with enron called\ntenaska and requested that they continue to handle the nominations and\naccounting for cornhusker through september . have you heard this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.252+0000", "entityId": 3019, "properties": {"text": "Subject: lonestar payback for 31 st\nfyi - - - - i am working on getting that oversight for the payback on the 31 st\ncorrected , switched from the current tenaska contracts , to our old transport .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.258+0000", "entityId": 3020, "properties": {"text": "Subject: cornhusker for sept\ncorrection : that should be rick hill , not rich\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 09 / 01 / 2000 09 : 31\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n09 / 01 / 2000 09 : 26 am\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , stacey\nneuweiler / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : cornhusker for sept\ni was informed by nancy stivers at tenaska that rich hill with enron called\ntenaska and requested that they continue to handle the nominations and\naccounting for cornhusker through september . have you heard this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.262+0000", "entityId": 3021, "properties": {"text": "Subject: cornhusker for sept\ni was informed by nancy stivers at tenaska that rich hill with enron called\ntenaska and requested that they continue to handle the nominations and\naccounting for cornhusker through september . have you heard this ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.267+0000", "entityId": 3022, "properties": {"text": "Subject: lone star points\ndaren , there were several points on your list that were previously created\nand the remainder have been created , with the exception explained below .\ndonna and i researched your list and identified the ones that were on system\n( which she would create ) and the ones that were off system ( which i would\ncreate ) .\nstandard pooling stations and west texas ( line x ) pooling stations had no\nmeters , so they are not set up .\nthe hunt fairway plant ( 17 - 8477 - 01 ) was previously created as ( 178477 ) , i\nneed to know if the ( 01 ) needs to be added .\nwe need to verify hpl - texoma ( 17 - 0973 - 13 ) , it is set up as ( 17097613 ) . is\nthis the same point ? ? ?\nplease let donna and myself know how to proceed with the ones in red .\nthanks ,\nfaye", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.272+0000", "entityId": 3023, "properties": {"text": "Subject: re : cornhusker deal\nrita ,\nthings have been changing daily on this thing , so we were waiting to get it\nall figured out .\ni did tell mark mccoy to handle this , and he is going to get you all the\ninformation right after\nthe long weekend . hope this helps . pat\nrita wynne @ ect\n08 / 31 / 2000 05 : 25 pm\nto : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect\ncc :\nsubject : cornhusker deal\nhey guys ,\ni need to be bought up to speed on the cornhusker deal . i don ' t know what\nthe impact is to my group or what we should expect to see in terms of\nallocations or settlements . any info . either of you can provide would be\nappreciated . thanks and have a great holiday !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.276+0000", "entityId": 3024, "properties": {"text": "Subject: re : mobil beaumont\nthe activity for mobil florida mobil street { mtr . 1040 } during august 28 th\n& 29 th are as follows :\nnomination actual flow\n8 / 28 th = 105 , 000 mmbtu 98 , 176 mmbtu\n8 / 29 th = 90 , 000 mmbtu 99 , 020 mmbtu\nplease let me know if further analysis is needed .\nfrom : lee l papayoti on 09 / 01 / 2000 01 : 38 pm\nto : rebecca griffin / na / enron @ enron\ncc : robert e lloyd / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat\nclynes / corp / enron @ enron\nsubject : mobil beaumont\nrebecca :\ni spoke with brian nichols about the august preliminary invoice . there\nappears to be a problem for august 28 & 29 - the volumes are much too low .\neither there were deliveries off of centana that we are missing , or there is\na problem with the hpl data . i am having brain fade and cannot remember the\nname of the person in the measurement department to contact , so maybe you\ncould look into this and have it corrected .\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.281+0000", "entityId": 3025, "properties": {"text": "Subject: mobil beaumont\nrebecca :\ni spoke with brian nichols about the august preliminary invoice . there\nappears to be a problem for august 28 & 29 - the volumes are much too low .\neither there were deliveries off of centana that we are missing , or there is\na problem with the hpl data . i am having brain fade and cannot remember the\nname of the person in the measurement department to contact , so maybe you\ncould look into this and have it corrected .\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.285+0000", "entityId": 3026, "properties": {"text": "Subject: meter 1459 - 8 / 00\ndaren - can you get a deal set up for meter 1459 for 8 / 00 ? the last deal\nnumber associated with this meter is 331917 for july 00 . counterparty - gsf\nenergy , llc . let me know if you have any questions .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.290+0000", "entityId": 3027, "properties": {"text": "Subject: re : meter 984132 for 1 / 16 / 99\n10 , 000 should be allocated to adonis # 51862 on the 5 th only . nothing should\nbe allocated or confirmed for adonis on the 16 th . additionally , it looks\nlike 5000 was confirmed as a receipt from mitchell ( track id 3167 ) on the\n16 th . this should be - 0 - also . by taking the conf / allocation for adonis\n( track id 6155 ) and mitchell ( track id 3167 ) to zero on the 16 th , the meter\nbalance remains the same and the bridge errors will be cleared .\nd\njackie young\n08 / 24 / 2000 08 : 33 am\nto : karen lindley / corp / enron @ enron , sherlyn schumack / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : re : meter 984132 for 1 / 16 / 99\nkaren / sherlyn ,\ngary has placed this in daren ' s lap . please read the below information that\nwas requested of me from daren .\nthis is the latest .\ni ' ll get back as soon as i hear from daren again about my response to him .\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 08 / 24 / 2000 08 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n08 / 23 / 2000 04 : 27 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : meter 984132 for 1 / 16 / 99\non day 5 in mops ( hpl / ena ) there is a delivery nom of 10 . 0 pathed to the ena\n201 k . on day 16 in mops ( hpl / ena ) there is not a deal ( which is strange\nbecause day 16 in pops references adonis ) . the deal on the 5 th was a swing\ndeal .\ndaren j farmer\n08 / 23 / 2000 12 : 59 pm\nto : jackie young / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\njackie ,\nwhat does mops show for the days in question ? it would be incorrect to add\nany days to the adonis ticket mentioned below . it sounds as if the meter was\nallocated incorrectly in pops and / or a deal was not pathed correctly in\nmops . let me know what you find in mops .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 08 / 23 / 2000\n12 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : gary w lamphier 08 / 22 / 2000 02 : 51 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 984132 for 1 / 16 / 99\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 08 / 22 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 08 / 22 / 2000 02 : 07 pm\nto : jackie young / hou / ect @ ect , karen lindley / corp / enron @ enron\ncc : gary w lamphier / hou / ect @ ect\nsubject : meter 984132 for 1 / 16 / 99\nhere is the issue for 1 / 16 / 99 at meter 984132 .\n20 , 000 mmbtu were confirmed for adonis in pops . 10 , 000 mmbtu on day 5 and\nday 16 . day 16 is not valid for deal 51862 ( track id 6155 ) , which is where\n10 , 000 was confirmed . the actual sale to adonis was 10 , 000 which was\ninvoiced and paid by adonis . we are trying to clear the feedback error\nreport . my question is why was 10 , 000 confirmed on 1 / 16 / 99 if the date is\nnot valid for the deal ?\nwhen karen allocates the actual 10 , 000 it is prorating 5 , 000 for each day\nthat is confirmed ( the 5 th and 16 th ) .\nshould the whole 10 , 000 be allocated to the 5 th or should 5 , 000 be allocated\nto each day ? if 5 , 000 should be allocated to each day , the 16 th needs to be\nadded to the deal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.295+0000", "entityId": 3028, "properties": {"text": "Subject: re : oasis pipe line company\njust a note , that the assignment and assumption agreement does not need to be\nexecuted , but the amendments still need to be executed and returned to me .\nmarlene hilliard\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marlene hilliard / hou / ect on 09 / 05 / 2000\n03 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarlene hilliard\n09 / 05 / 2000 01 : 37 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : oasis pipe line company\ndaren ,\nthis is true . i did not learn of this until friday september 1 , 2000 .\nhowever , i still need to have the oasis contracts returned to me .\nplease return them in interoffice mail .\nthanks so much .\nmarlene d . hilliard\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marlene hilliard / hou / ect on 09 / 05 / 2000\n01 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n09 / 05 / 2000 01 : 24 pm\nto : marlene hilliard / hou / ect @ ect\ncc :\nsubject : re : oasis pipe line company\nmarlene ,\nafter discussions with the desk , we have decided to keep the oasis contracts\nunder ena . so , we don ' t need to sign the contracts you sent earlier . let me\nknow if you have any questions .\nd\nmarlene hilliard\n08 / 31 / 2000 12 : 36 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : oasis pipe line company\ni need to know the status of these contracts i forwarded to you on august 23 ,\n2000 and august 25 , 2000 .\nmarlene hilliard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.299+0000", "entityId": 3029, "properties": {"text": "Subject: re : transport and logistics customer happy hour\nthe ena party at jillian ' s just crashed our transport / logistics happy hour .\nthe new date is thursday october 5 th . please pass this new date on to your\ncustomers . pat\nfrom : pat clynes 08 / 16 / 2000 09 : 58 am\nto : aimee lannou / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , jackie\nyoung / hou / ect @ ect , robert e lloyd / hou / ect @ ect , stella l morris / hou / ect @ ect ,\ntom acton / corp / enron @ enron , sabrae zajac / hou / ect @ ect , mark\nmccoy / corp / enron @ enron , clem cernosek / hou / ect @ ect , robert cotten / hou / ect @ ect ,\neddie janzen / na / enron @ enron , mary poorman / na / enron @ enron , susan\nhadix / na / enron @ enron\ncc : bob m hall / na / enron @ enron , edward d gottlob / hou / ect @ ect , lauri a\nallen / hou / ect @ ect , gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect , earl\ntisdale / hou / ect @ ect , steve jackson / hou / ect @ ect , leslie reeves / hou / ect @ ect ,\nelsa villarreal / hou / ect @ ect , danny conner / na / enron @ enron , daren j\nfarmer / hou / ect @ ect , stacey neuweiler / hou / ect @ ect , michael eiben / hou / ect @ ect ,\nromeo d ' souza / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsubject : transport and logistics customer happy hour\nplease mark your calendar for the transportation and logistics customer happy\nhour on thursday sept . 21 st .\nit will be at ninfa ' s starting at 4 : 00 pm . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.305+0000", "entityId": 3030, "properties": {"text": "Subject: re : duke exchange deal feb . 2000 prod .\ndaren ,\ni believe the best way to enter the fee into sitara would be as a demand fee\nin your example # 1 .\nif we do the fee this way , we will not double up the volumes .\ni have attached my spreadsheet for support :\nthe most current worksheet is tab # 2 marked final\ncolumn g is the over - delivery quantity total is 17 , 278 mmbtus\ncolumn s is the daily dollar amount for the over - delivery quantity due hplc\n$ 1 , 008 . 87\ncolumn t is the daily dollar amount for the over - delivery quantity due the\ncustomer $ 519 . 73 .\nthanks -\nkatherine\n5 - 8643\ndaren j farmer @ ect\n08 / 31 / 2000 05 : 49 pm\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : duke exchange deal feb . 2000 prod .\nkatherine ,\nthere are 2 ways that i can enter this fee into sitara :\n1 ) i can put the dollar amount in on day 1 as a demand or facility fee .\n2 ) i need you to give me volume ( s ) and a price to input into the deal . i\ncan ' t just input a dollar amount in sitara .\nlet me know how you want to handle it .\nd\nkatherine herrera @ enron\n08 / 31 / 2000 05 : 28 pm\nto : daren j farmer / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect\nsubject : duke exchange deal feb . 2000 prod .\ncashout\nplease add the following fees for feb . 2000 :\nfee type :\nnatural gas\nphysical forward\npenalty for over / under take\nsales ticket # 157278\n$ 1 , 008 . 87 dollars due hplc\npurchase ticket # 157288\n$ 519 . 73 dollars due duke\nthanks - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.310+0000", "entityId": 3031, "properties": {"text": "Subject: eastrans nomination change effective 9 / 6 / 00\neffective wednesday , 9 / 6 / 00 , deliveries to eastrans is 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.316+0000", "entityId": 3032, "properties": {"text": "Subject: neon september 13\nhey guys and girls ,\n?\nhere ' s an idea for an icebreaker activity for our 2 nd week of neon . ? this is\nonly an idea , you can use it or do something totally different . ? again , let\nme know along the way if you have something that has worked well for your\ngroup so we can share in the wealth .\n?\nsomeone in your group should have a couple of classic books full of\nicebreaker - game type of activities , building community in youth groups , and\nyouth group trust builders . ? we all at one time had a selection of\nicebreakers in a gray binder that you might still have somewhere in a\ndrawer . ? spend time in the games and forced interactions , especially over\nthe beginning of the semester . ? if you don ' t have these resources , let me\nknow . ? even if some of these ideas may seem familiar to you , remember that\nyou may have been doing this far longer than the oldest kids have been in\nyour group . ? but again , if you have any ideas for resources let me know .\n?\nin addition to the ideas to think about at the top of the 2 nd weeks topic , a\ncouple of additional thoughts given me by leaders :\n? ? ? - realize and possibly communicate in a low key manner to the freshman\nthat their expectations of neon may not initially be met . ? they may be\ncoming in with ideas of what neon is , only to possibly be disappointed . ? in\na sense it is similar to going to a restaurant or movie after tons of people\nhave recommended it to you , and being a little let down . ? more importantly ,\nthey need to realize that neon is not an event , it is a process . ? the teens\nwho say they love it are most often the ones who have been in it long enough\nto have built relationships and to have shared a bunch of common\nexperiences . ? with time and a commitment on their part to be at neon weekly ,\ntheir expectations will ultimately be met .\n? ? ? - remember that the best quality time you have with the kids is probably\nbefore or after neon , or at other non - neon times .\n?\nhave fun loving on your kids wednesday !\n?\nbobby\n- neon opening lesson . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.321+0000", "entityId": 3033, "properties": {"text": "Subject: enron / hpl noms . for wed , 9 / 6 / 00\nchanged cell formula to correctly sum column of spot sales .\n( see attached file : hplo 906 . xls )\n- hplo 906 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.326+0000", "entityId": 3034, "properties": {"text": "Subject: enron / hpl actuals for september 1 - 4 , 2000\nseptember 1 , 2000\nteco tap 35 . . 000 / enron ; 96 . 250 / hpl iferc\nls hpl lsk ic 15 . 000 / enron\nseptember 2 , 2000\nteco tap 25 . 000 / enron ; 88 . 750 / hpl iferc\nls hpl lsk ic 25 . 000 / enron\nseptember 3 , 2000\nteco tap 25 . 000 / enron ; 88 . 750 / hpl iferc\nls hpl lsk ic 25 . 000 / enron\nseptember 4 , 2000\nteco tap 25 . 000 / enron ; 83 . 333 / hpl iferc\nls hpl lsk ic 25 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.333+0000", "entityId": 3035, "properties": {"text": "Subject: txu nom . s for wed , 9 / 6 / 00\nok , so you couldn ' t guess what the noms . were so i ' ll attach the answer .\n( see attached file : hplo 906 . xls )\n- hplo 906 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.338+0000", "entityId": 3036, "properties": {"text": "Subject: enron / hpl nom . s for wednesday , aug . 6 , 2000\n( see attached file : hplo 906 . xls )\n- hplo 906 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.346+0000", "entityId": 3037, "properties": {"text": "Subject: re : possibly adding deal prices to path manager\nfrom : donna greif @ ect 09 / 05 / 2000 02 : 28 pm\nto : patti sullivan / hou / ect @ ect , victor lamadrid / hou / ect @ ect , george\nsmith / hou / ect @ ect , pat clynes / corp / enron @ enron , kevin heal / cal / ect @ ect\ncc : diane h cook / hou / ect @ ect , robert superty / hou / ect @ ect , dave\nnommensen / hou / ect @ ect\nsubject : possibly adding deal prices to path manager\nplease see note from nommensen below and let me know your thoughts ( note :\nthis additional functionality / screen\nview may cause an impact on system performance ) .\nthanks !\ndg\n- - - - - - - - - - - - - - - - - - - - - - forwarded by donna greif / hou / ect on 09 / 05 / 2000 02 : 23\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : dave nommensen 08 / 31 / 2000 11 : 37 am\nto : donna greif / hou / ect @ ect\ncc : matt pena / na / enron @ enron , dave mcmullan / hou / ect @ ect\nsubject : possibly adding deal prices to path manager\ndonna ,\na request was brought up this week that i would like you to run by the\nmanagers for input :\n- add the deal price to the sales and supply list windows of path manager\nthis seems more significant based on the transactions from eol .\nthis has been mentioned in the past , but has had some related \" baggage \" :\n- impact on performance , may run slower . could make it an option so you pay\nthe price when you need it .\n- ability to show tier info . maybe just use the work \" tiered \" and not try\nto represent the actual pricing\n- agreed format for those deals that have index pricing and percentage and\nfixed price offset ( ie 98 % of if . transco . znl + . 02 )\nthis column would be customizable by resizing and relocating it by user\npreference .\nlet me know what you hear . d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.353+0000", "entityId": 3038, "properties": {"text": "Subject: countdown to 75 th anniversary celebration\nto : employees attending 75 th anniversary celebration\nwith the countdown underway for houston pipe line \u0001 , s 75 th anniversary\ncelebration in galveston on september 9 , here is information that i think you \u0001 ,\nll find helpful in finalizing your plans . i \u0001 , m delighted that almost 500\nemployees and their guests will be attending our anniversary celebration in\ngalveston !\nhotel arrangements\ndue to such tremendous response from employees , we have run out of rooms in\nthe moody gardens hotel , seven hope blvd . some of you will be staying at an\nequally fine hotel , the hilton resort , 5400 seawall blvd . the hilton is a\nsister hotel to the san luis and amenities include a heated swimming pool ,\njacuzzi , tennis court and fitness room . hilton guests can also enjoy special\nsan luis facilities by showing their room cards .\nchecking in and out\neach hpl employee will receive a party - pak that includes your * garden\ndollars , drink tickets , name tags and several special gifts . pick up your\nparty pack and hotel confirmation number for both the hilton and moody\ngardens hotels in the lobby of the moody gardens hotel any time after 10 a . m .\nsaturday morning .\nthe official check in time at both hotels is 4 p . m . on saturday , september\n9 . however , the hotels will make rooms available to hpl guests before\nmid - afternoon if possible . both hotels have also made arrangements to check\nyour bags in advance if your room is not ready . please check with the desk\nwhen you arrive at your hotel . check out time is noon on sunday , september\n10 .\nhotel parking is available outdoors or underground at the valet parking\nentrance sign at the back of the hotel .\n* garden dollars are like currency at moody garden attractions , restaurants ,\nlounges , gift shop and spa . use them any time on saturday or sunday or keep\nthem and use them on a subsequent trip to galveston within the next year .\nif your plans change\nif your personal plans change between now and the celebration on september 9 ,\nplease email meetingstop @ aol . com to let us know that you are canceling your\nhotel room and dinner reservations . we appreciate your courtesy !\ncocktails & dinner\ncocktails are at 6 : 30 p . m . and dinner at 7 : 30 on saturday , september 9 in the\nmoody gardens ballroom . be sure that you and your guest wear your name\nbadges that are included in your party pack because you must be appropriately\nidentified as a houston pipe line employee or guest for cocktails and dinner .\nwhat to wear\nsuitable attire includes jackets for the men and corresponding dressy ladies \u0001 ,\nclothes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.358+0000", "entityId": 3039, "properties": {"text": "Subject: cross training - industrials\nrobert ,\nin our continued cross training effort , please train susan hadix on the\nindustrials .\nthis should include everything associated with the industrials including\nbuybacks , swing deals ,\nspreadsheets , etc . susan will be your backup . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.363+0000", "entityId": 3040, "properties": {"text": "Subject: intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nas follow - up documentation for the intraday sale on 9 / 6 / 00 , the following\nstates\nthe pricing for the redeliveries :\n8500 mmbtu from fuels cotton valley priced per paragraph la of the contract\nprice ( per mmbtu ) section in the transaction agreement .\n10955 mmbtu at etgs carthage hub tailgate priced per paragraph lc of the\ncontract price ( per mmbtu ) section in the transaction agreement\n10545 mmbtu at cipco / mobile beaumont which is priced differently than\nparagraph lb of the contract price ( per mmbtu ) section in the transaction agreement .\nthe\nprice for 10545 mmbtu for 9 / 6 / 00 will be hsc daily plus $ . 04 / mmbtu .\nplease confirm the above by replying to this e - mail message .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 06 / 2000 01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 09 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad\nw . cass / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec , bruce\nmcmills / ftworth / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec , donna\nc . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\ndeliveries continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n10955 to hpl ' s cartwheel agreement at carthage\n10545 at mobil beaumont\neffective for 9 / 7 / 00 , deliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.367+0000", "entityId": 3041, "properties": {"text": "Subject: intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nif you agree with the following , then i will resend to my acctg folks .\nas follow - up documentation for the intraday sale on 9 / 6 / 00 , the following\nstates\nthe pricing for the redeliveries :\n8500 mmbtu from fuels cotton valley priced per paragraph la of the contract\nprice ( per mmbtu ) section in the transaction agreement .\n10955 mmbtu at etgs carthage hub tailgate priced per paragraph lc of the\ncontract price ( per mmbtu ) section in the transaction agreement\n10545 mmbtu at cipco / mobile beaumont which is priced differently than\nparagraph lb of the contract price ( per mmbtu ) section in the transaction agreement .\nthe\nprice for 10545 mmbtu for 9 / 6 / 00 will be hsc daily daily plus $ . 04 / mmbtu .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 06 / 2000 01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 09 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad\nw . cass / gcs / cec / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec , bruce\nmcmills / ftworth / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec , donna\nc . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\ndeliveries continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n10955 to hpl ' s cartwheel agreement at carthage\n10545 at mobil beaumont\neffective for 9 / 7 / 00 , deliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.372+0000", "entityId": 3042, "properties": {"text": "Subject: intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\ndeliveries continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n10955 to hpl ' s cartwheel agreement at carthage\n10545 at mobil beaumont\neffective for 9 / 7 / 00 , deliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.377+0000", "entityId": 3043, "properties": {"text": "Subject: re : intraday eastrans nomination change for 9 / 6 / 00\n10 , 545 will be delivered to mobil beaumont from cipco for 6 th only .\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | marta k |\n| | henderson |\n| | |\n| | 09 / 06 / 00 |\n| | 09 : 21 am |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| |\n| to : darrel f . bane / easttexas / pefs / pec @ pec , john\na . |\n| bretz / gcs / cec / pec @ pec , chad w . cass / gcs / cec / pec @ pec , michael\nr . |\n| cherry / easttexas / pefs / pec @ pec , bruce\nmcmills / ftworth / pefs / pec @ pec , |\n| william e . speckels / gcs / cec / pec @ pec , donna\nc . |\n| spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora\nj . |\n| levy / gcs / cec / pec @ pec , briley @ enron . com ,\ndfarmer @ enron . com , |\n| carlos . j . rodriguez @ enron . com , sharon\nbeemer / ftworth / pefs / pec @ pec , |\n| connie\nwester / easttexas / pefs / pec @ pec |\n|\ncc : |\n| subject : intraday eastrans nomination change for\n9 / 6 / 00 |\ndeliveries continue to be 30 , 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.383+0000", "entityId": 3044, "properties": {"text": "Subject: intraday eastrans nomination change for 9 / 6 / 00\ndeliveries continue to be 30 , 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.387+0000", "entityId": 3045, "properties": {"text": "Subject: hpl nom for sept . 7 , 2000\n( see attached file : hplo 907 . xls )\n- hplo 907 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.392+0000", "entityId": 3046, "properties": {"text": "Subject: enron / hpl actuals for sept . 5 , 2000\nteco tap 25 . 000 / enron ; 88 . 750 / hpl hpl iferc\nls hpl lsk ic 25 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.397+0000", "entityId": 3047, "properties": {"text": "Subject: mobil chemical - hpl meter # 1256 - expense transport\ned - can you help ? i need to know the term of our existing transport expense\ndeal with reliant entex to serve the referenced customer . we must have an\nexisting contract that we can look up . our existing deal to sell to mobil\nexpires october 1 . i am trying to make a two year sales offer beginning\noctober 1 . if the transport expires before then , then we ' ll need to call\nentex about a transport rate . who is the correct dealmaker to call entex on\nthis matter ? ? i ' d be happy to do it , but i ' d be stepping on somebody else ' s\nturf .\nif the existing rate is indeed 5 cents plus 2 . 02 % fuel , that seems kind of\nhigh . it ' s a short haul - according to our field folk , we give the gas to\nentex at the la porte city gate , and it goes to the mobil plant at pasadena ,\nabout 10 miles away at the most .\nany and all help appreciated .\nlee\nenron north america corp .\nfrom : pat clynes @ enron 09 / 06 / 2000 11 : 10 am\nto : robert e lloyd / hou / ect @ ect\ncc : lee l papayoti / hou / ect @ ect , lauri a allen / hou / ect @ ect , tom\nacton / corp / enron @ enron , gary a hanks / hou / ect @ ect , daren j farmer / hou / ect @ ect ,\njanet h wallis / hou / ect @ ect\nsubject : re : mobil chemical\nrobert ,\nwhat company is this transport with ? the rate and fuel sound high for this\nvery short transport . pat\nrobert e lloyd @ ect\n09 / 06 / 2000 11 : 05 am\nto : lee l papayoti / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , tom\nacton / corp / enron @ enron\nsubject : re : mobil chemical\ni am trying to facilitate this inquiry for tom acton who handle this expense\nagreement . hpl system indicate a rate as follows :\ntransmission rate : $ 0 . 05\nfuel { expressed in % } : 2 . 020\nwillie underwood { marketer / trader w / reliant energy } is prepared to quote you\na more current rate by simply calling him @ :\n713 207 - 5127 .\ni am unable to reach lee by phone .\nenron north america corp .\nfrom : pat clynes @ enron 09 / 06 / 2000 10 : 44 am\nto : robert e lloyd / hou / ect @ ect\ncc : lee l papayoti / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : mobil chemical\nrobert ,\nplease get with lee papayoti as soon as possible in reference to the delivery\nto mobil chemical # 1256 .\nhe is giving them an offer today and he needs to verify all transport cost\nassociated with the deal . thanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.401+0000", "entityId": 3048, "properties": {"text": "Subject: re : mobil chemical\nrobert ,\nwhat company is this transport with ? the rate and fuel sound high for this\nvery short transport . pat\nrobert e lloyd @ ect\n09 / 06 / 2000 11 : 05 am\nto : lee l papayoti / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , lauri a allen / hou / ect @ ect , tom\nacton / corp / enron @ enron\nsubject : re : mobil chemical\ni am trying to facilitate this inquiry for tom acton who handle this expense\nagreement . hpl system indicate a rate as follows :\ntransmission rate : $ 0 . 05\nfuel { expressed in % } : 2 . 020\nwillie underwood { marketer / trader w / reliant energy } is prepared to quote you\na more current rate by simply calling him @ :\n713 207 - 5127 .\ni am unable to reach lee by phone .\nenron north america corp .\nfrom : pat clynes @ enron 09 / 06 / 2000 10 : 44 am\nto : robert e lloyd / hou / ect @ ect\ncc : lee l papayoti / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : mobil chemical\nrobert ,\nplease get with lee papayoti as soon as possible in reference to the delivery\nto mobil chemical # 1256 .\nhe is giving them an offer today and he needs to verify all transport cost\nassociated with the deal . thanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.406+0000", "entityId": 3049, "properties": {"text": "Subject: 2001 budgets\ni will be working you each of you to create your 2001 budget .\nthe first draft of the 2001 budget is due on september 18 th .\ni will be doing most of the work , i will just need a little\nbit of information from you !\nfor starters , i need your staffing requirements for 2001 . attached is a\nworksheet\nfor you to enter what your approved staffing level is today , and any staff\nadds you\nthink you will need by the end of next year .\nbe sure to add the business justification for any staff adds .\nfirst fill in your approved staff for sept 2000 , then just change any month\nwith a staff\nadd , it will populate accross the rest of the months . type your justifcation\nat the\nbottom of the form .\nplease turn in your 2001 staffing by september 11 , end of business .\nwe will discuss your staffing requirements at steve ' s tuesday staff meeting .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.410+0000", "entityId": 3050, "properties": {"text": "Subject: supply for midlothian\ndaren -\n- fyi -\nexxon supply at mobil cayanosa has fallen off due to problems , so starting\n9 / 9 there nom will go from 5 . 000 down to . 520 and going at least through the\nweekend 9 / 11 . stacey has already bought gas from duke to resupply ( the\ndifference 4 . 480 ) midlothian at duke pegasus , in addition to the 8 . 600\nincremental she bought there . so for the weekend , we should have a sale to\nmidlothian of 13 , 080 at pegasus .\n- - - mark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.415+0000", "entityId": 3051, "properties": {"text": "Subject: work at pg & e meters 6040 riverside and 584 agua dulce\nper my conversation today with lorraine ibrom @ pg & e , she has informed that\nsome maintenance work is being done at yeary midway 20 in . this will affect\nmeters 6040 pg & e riverside and 584 pg & e agua dulce , beginning at 9 : 00 a . m . on\nsunday , sept . 10 , 2000 and ending at 9 : 00 a . m . on thursday , sept . 14 , 2000 at\n9 : 00 a . m . she has informed me that for this time period there should be no\nnominations at these points . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.419+0000", "entityId": 3052, "properties": {"text": "Subject: eastrans nomination change effective 9 / 8 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy for 9 / 8 / 00\nthe redeliveries will be 0 as well .\nthe over - delivery quantity for the fuels cotton valley gas will be valued per\nparagraph 3 of the contract price ( per mmbtu ) section in the transaction\nagreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.424+0000", "entityId": 3053, "properties": {"text": "Subject: revision # 1 - hpl nom for sept . 8 , 2000\n( see attached file : hplo 908 . xls )\n- hplo 908 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.431+0000", "entityId": 3054, "properties": {"text": "Subject: enron / hpl actuals for sept . 6 , 2000\nls hpl lsk ic 8 . 750 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.440+0000", "entityId": 3055, "properties": {"text": "Subject: change in assignment\neffective monday , september 11 th i will no longer report to the texas desk\nthus , i am in the process of\ntraining susan hadix { 3 - 5796 } on hpl industrial trades .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.444+0000", "entityId": 3056, "properties": {"text": "Subject: eastrans nomination change effective 9 / 9 / 00\neffective saturday , 9 / 9 / 00 , deliveries to eastrans is 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n15000 to pg & e\n6500 to hpl ' s cartwheel agmt at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.452+0000", "entityId": 3057, "properties": {"text": "Subject: juvenile diabetes foundation fundraising\nit is my sincere honor to once again lead the enron team in this year ' s\njuvenile diabetes foundation ( jdf ) walk scheduled to take place on sunday ,\nnovember 5 , 2000 , at the sam houston race park . i continue to serve on the\nboard of jdf representing enron and will be enron ' s corporate executive for\nthis year ' s fundraising efforts .\nas many of you may already know , i am an insulin dependent diabetic myself .\neven though i know how difficult this disease can be to manage with the\nmultiple finger pricks for blood samples and several shots each day , i cannot\nimagine how difficult it is for a small child with this disease . taking\ninsulin does not cure the disease nor prevent the development of\ncomplications ; insulin is simply their life support system and without it\nthey would die .\nenron continues to be a major corporate sponsor for jdf again this year . jdf\nis a very efficient organization in which approximately 84 % of all money\nraised goes directly to research . enron ' s goal this year is to raise\n$ 225 , 000 and we need your help . enron has been the number 1 walk team for 5\nyears in a row and we are not ready to give up first place ! we need team\nleaders , walkers and volunteers to help us reach our goal . the theme for the\nwalk this year is \" knock out diabetes \" and we would like to have you join us\nfor this great event . the walk is truly a blast and we had about 500 enron\npeople participate last year and everyone enjoyed it .\nif you are interested in volunteering to be a walker or a team leader , or if\nyou would like to make a pledge , you may call any of the steering committee\nmembers listed below . if you are interested in being a team leader , please\ncontact one of the following people immediately so that you may be included\nin the first important and informative training session taking place this\nweek .\nthank you very much for your support .\nmike mcconnell\nsteering committee members :\nblanca bollom x 66091\nrachel feldt x 57629\ndeb gebhardt x 39606\ncathy phillips x 36898\njohn walt x 35379\ndebbie yates x 35305", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.459+0000", "entityId": 3058, "properties": {"text": "Subject: sitara training\ni will be giving a training session on wed 9 / 13 / 00 in 21 c 2 from 3 : 00 - 4 : 30\npm .\ni would like for you to send to the class any new logistics personnel that\nyou might think could use a sitara overview .\nif someone cannot make it at this time , let me know their names and i will\ntry to schedule something for them at a later time .\nif possible , please send me a note on who might be attending , so i can get an\napproximate head count .\ncall me or e - mail me if you have any questions\nruss\nx 37386", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.465+0000", "entityId": 3059, "properties": {"text": "Subject: hpl nom for sept . 9 , 2000\n( see attached file : hplo 909 . xls )\n- hplo 909 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.470+0000", "entityId": 3060, "properties": {"text": "Subject: enron / hpl actuals for sept . 7 , 2000\nteco tap 88 . 750 / hpl iferc ; 36 . 250 / enron\nls hpl lsk ic 3 . 750 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.475+0000", "entityId": 3061, "properties": {"text": "Subject: weekend noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 09 / 08 / 2000\n09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 09 / 07 / 2000 02 : 50 : 28 pm\nto : ami _ chokshi @ enron . com\ncc :\nsubject : weekend noms\n( see attached file : hpl - sept . xls )\n- hpl - sept . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.481+0000", "entityId": 3062, "properties": {"text": "Subject: basf - freeport natural gas nominations\ndaren - fyi see below - i have already changed expected volume in sitara\n120266 for sept 25 - 30\nlee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 09 / 08 / 2000\n10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" diane drumm \" on 09 / 08 / 2000 10 : 14 : 47 am\nto : lee . l . papayoti @ enron . com\ncc :\nsubject : re : enron - freeport natural gas nominations\ndue to a cogen shut down september 25 - 30 th , freeports gas requirements will\nbe reduced . please see below .\nfor the month of september 2000 , please schedule the following delivery of\nnatural gas to basf ' s freeport , texas plant\nquantity\n( mmbtu ' s day )\n1 - 24 25 - 30\n8 , 000 6 , 000\nif you have any questions please give me a call .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.486+0000", "entityId": 3063, "properties": {"text": "Subject: re : equistar buybacks\nthe only valid \" buyback \" ticket for meter # : 1373 is sitara ticket # :\n246408 . s . ticket # : 156342 is an old ticket which was used to set up\nbuyback\nticket across equistar ' s meters { 1552 , 1384 , 1062 , 1553 } . if you recall\nthis process was done to enable client services to automate equistar\nallocation / billing . the project took place around april 2000\nproduction retroactive back to jan . 1999 . the link to compute the buyback is\nset up\non s . ticket # 246408 .\nsince equistar has begun doing business via ena , it was necessary to\nestablish a \" buyback ticket \" on ena ' s matrix .\nthus , to answer your question , yes there should only be one \" buyback\nticket \" for meter # : 1373 on hpl and ena .\nena activity is kept whole and the swing is on hpl .\ni hope i have addressed all of your questions below however , i am\navailable for follow up discussion if needed .\nit has been a pleasure working with you . i learned a lot about the\nbusiness while scheduling industrials and thanks for the opportunity .\ndaren j farmer\n09 / 07 / 2000 08 : 32 am\nto : robert e lloyd / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : equistar buybacks\nrobert ,\nthere are three buy back tickets in sitara for equistar at mtr 1373 . two for\nhpl and one under ena . shouldn ' t we have only one buyback for each company ?\nalso , how do you have the meter set up to allocate between the ena contract\nand hpl contract ?\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.490+0000", "entityId": 3064, "properties": {"text": "Subject: re : duke exchange deal\ndaren -\nthanks for completing feb 2000 cashout .\ncould you also enter a demand fee into sitara for march and april 2000 ?\nmarch 2000\nsales ticket # 157278\n$ 0 . 00 dollars due hplc\npurchase ticket # 157288\n$ 3 , 526 . 98 dollars due duke\ni have attached my spreadsheet for support :\ncolumn h is the over - delivery quantity total is 24 , 452 mmbtus\ncolumn t is the daily dollar amount for the over - delivery quantity due hplc\n$ 0 . 00\ncolumn u is the daily dollar amount for the over - delivery quantity due the\ncustomer $ 3 , 526 . 98 .\napril 2000\nsales ticket # 157278\n$ 1 , 507 . 56 dollars due hplc\npurchase ticket # 157288\n$ 1 , 549 . 82 dollars due duke\ni have attached my spreadsheet for support :\ncolumn h is the over - delivery quantity total is 53 , 206 mmbtus\ncolumn t is the daily dollar amount for the over - delivery quantity due hplc\n$ 1 , 507 . 56\ncolumn u is the daily dollar amount for the over - delivery quantity due the\ncustomer $ 1 , 549 . 82\nthanks -\nkatherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n09 / 11 / 2000 09 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer @ ect\n09 / 05 / 2000 11 : 25 am\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : duke exchange deal feb . 2000 prod .\ndone .\nkatherine herrera @ enron\n09 / 05 / 2000 10 : 14 am\nto : daren j farmer / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect\nsubject : re : duke exchange deal feb . 2000 prod .\ndaren ,\ni believe the best way to enter the fee into sitara would be as a demand fee\nin your example # 1 .\nif we do the fee this way , we will not double up the volumes .\ni have attached my spreadsheet for support :\nthe most current worksheet is tab # 2 marked final\ncolumn g is the over - delivery quantity total is 17 , 278 mmbtus\ncolumn s is the daily dollar amount for the over - delivery quantity due hplc\n$ 1 , 008 . 87\ncolumn t is the daily dollar amount for the over - delivery quantity due the\ncustomer $ 519 . 73 .\nthanks -\nkatherine\n5 - 8643\ndaren j farmer @ ect\n08 / 31 / 2000 05 : 49 pm\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : duke exchange deal feb . 2000 prod .\nkatherine ,\nthere are 2 ways that i can enter this fee into sitara :\n1 ) i can put the dollar amount in on day 1 as a demand or facility fee .\n2 ) i need you to give me volume ( s ) and a price to input into the deal . i\ncan ' t just input a dollar amount in sitara .\nlet me know how you want to handle it .\nd\nkatherine herrera @ enron\n08 / 31 / 2000 05 : 28 pm\nto : daren j farmer / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect\nsubject : duke exchange deal feb . 2000 prod .\ncashout\nplease add the following fees for feb . 2000 :\nfee type :\nnatural gas\nphysical forward\npenalty for over / under take\nsales ticket # 157278\n$ 1 , 008 . 87 dollars due hplc\npurchase ticket # 157288\n$ 519 . 73 dollars due duke\nthanks - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.495+0000", "entityId": 3065, "properties": {"text": "Subject: revision - enron / hpl actuals for sept . 8 - 10 , 2000\nseptember 8 , 2000\nteco tap 50 . 000 / hpl iferc ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron\nseptember 9 , 2000\nteco tap 15 . 417 / hpl iferc ; 69 . 583 / hpl gas daily ; 40 . 000 /\nenron\nseptember 10 , 2000\nteco tap 112 . 500 / hpl gas daily ; 25 . 000 / enron\nls hpl lsk c 15 . 000 / enron\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n09 / 11 / 2000\n03 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n09 / 11 / 2000 01 : 31 pm\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for sept . 8 - 10 , 2000\nseptember 8 , 2000\nteco tap 50 . 000 / hpl iferc ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron\nseptember 9 , 2000\nteco tap 85 . 000 / hpl iferc ; 40 . 000 / enron\nseptember 10 , 2000\nteco tap 112 . 500 / hpl iferc ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.499+0000", "entityId": 3066, "properties": {"text": "Subject: revision # 1 - hpl nom for sept . 12 , 2000\n( see attached file : hplo 912 . xls )\n- hplo 912 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.504+0000", "entityId": 3067, "properties": {"text": "Subject: enron / hpl actuals for sept . 8 - 10 , 2000\nseptember 8 , 2000\nteco tap 50 . 000 / hpl iferc ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron\nseptember 9 , 2000\nteco tap 85 . 000 / hpl iferc ; 40 . 000 / enron\nseptember 10 , 2000\nteco tap 112 . 500 / hpl iferc ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.508+0000", "entityId": 3068, "properties": {"text": "Subject: hpl nom for sept . 12 , 2000\n- - ( see attached file : hplo 912 . xls )\n- hplo 912 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.513+0000", "entityId": 3069, "properties": {"text": "Subject: new meter number\ntetco enerfin is going to be assigned meter # 0439 . activity will be\nscheduled under this meter for october lst .\njackie young is assigned this meter . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.519+0000", "entityId": 3070, "properties": {"text": "Subject: duke purchase on 8 / 2 / 00\ndaren ,\ndeal 351653 is set up for 20 , 000 mmbtu purchase from duke at meter 981040 on\nhpl , but the actuals on cent show a volume of 19 , 606 mmbtu at meter 77455 on\n8 / 2 / 00 with no deal set up . should this sale to mobil have taken place on\ncent instead of hpl ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.523+0000", "entityId": 3071, "properties": {"text": "Subject: 2001 budgets\ne : mail i sent out last week . thanks , diane\n- - - - - - - - - - - - - - - - - - - - - - forwarded by diane h cook / hou / ect on 09 / 12 / 2000 11 : 17\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndiane h cook\n09 / 07 / 2000 04 : 53 pm\nto : dutch quigley / hou / ect @ ect , jeffrey c gossett / hou / ect @ ect , kam\nkeiser / hou / ect @ ect , william kelly / hou / ect @ ect , darron c giron / hou / ect @ ect ,\nsteve jackson / hou / ect @ ect , daren j farmer / hou / ect @ ect , david\nbaumbach / hou / ect @ ect\ncc :\nsubject : 2001 budgets\ni will be working you each of you to create your 2001 budget .\nthe first draft of the 2001 budget is due on september 18 th .\ni will be doing most of the work , i will just need a little\nbit of information from you !\nfor starters , i need your staffing requirements for 2001 . attached is a\nworksheet\nfor you to enter what your approved staffing level is today , and any staff\nadds you\nthink you will need by the end of next year .\nbe sure to add the business justification for any staff adds .\nfirst fill in your approved staff for sept 2000 , then just change any month\nwith a staff\nadd , it will populate accross the rest of the months . type your justifcation\nat the\nbottom of the form .\nplease turn in your 2001 staffing by september 11 , end of business .\nwe will discuss your staffing requirements at steve ' s tuesday staff meeting .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.528+0000", "entityId": 3072, "properties": {"text": "Subject: opm - activities\ndaren ,\ni wanted to send you a copy of the activities as we have redefined them , if\nyou want a chance to look at them before we meet tomorrow .\nwe will be identifying what activities are being performed by your team , and\nshari will be talking about the automation of driver information .\njen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.533+0000", "entityId": 3073, "properties": {"text": "Subject: work at pg & e meters 6040 riverside and 584 agua dulce\nmeters 6040 and 584 are back up . intradays for 9 / 12 / 00 can be done . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sabrae zajac / hou / ect on 09 / 12 / 2000 10 : 05\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : sabrae zajac 09 / 07 / 2000 10 : 48 am\nto : stella l morris / hou / ect @ ect , kimberly vaughn / hou / ect @ ect , jackie\nyoung / hou / ect @ ect , aimee lannou / hou / ect @ ect , robert e lloyd / hou / ect @ ect ,\ncarlos j rodriguez / hou / ect @ ect , tom acton / corp / enron @ enron , pat\nclynes / corp / enron @ enron , mark mccoy / corp / enron @ enron , eddie\njanzen / na / enron @ enron , mary poorman / na / enron @ enron , susan hadix / na / enron @ enron\ncc : edward d gottlob / hou / ect @ ect , lauri a allen / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , elsa villarreal / hou / ect @ ect , danny conner / na / enron @ enron ,\ngary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect , james mckay / hou / ect @ ect\nsubject : work at pg & e meters 6040 riverside and 584 agua dulce\nper my conversation today with lorraine ibrom @ pg & e , she has informed that\nsome maintenance work is being done at yeary midway 20 in . this will affect\nmeters 6040 pg & e riverside and 584 pg & e agua dulce , beginning at 9 : 00 a . m . on\nsunday , sept . 10 , 2000 and ending at 9 : 00 a . m . on thursday , sept . 14 , 2000 at\n9 : 00 a . m . she has informed me that for this time period there should be no\nnominations at these points . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.538+0000", "entityId": 3074, "properties": {"text": "Subject: vastar / big thicket\nanita ,\nper our meeting yesterday , i have set up the necessary usage tickets . i\ncould not set up just one b / c they can only be set up for approx . 3 months at\na time . therefore , i had to set up 7 usage tickets which are listed below :\n02 / 99 to 04 / 99 sitara deal 396904\n05 / 99 to 07 / 99 sitara deal 396925\n08 / 99 to 10 / 99 sitara deal 396942\n11 / 99 to 12 / 99 sitara deal 396951\n01 / 00 to 03 / 00 sitara deal 396956\n04 / 00 to 06 / 00 sitara deal 396964\n07 / 00 to 09 / 00 sitara deal 396680\nfor 9 / 00 i will go back and repath it for the lst through 12 th so it should\nbe correct when you allocate it . let me know when you have the track ids for\nthe other months . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.543+0000", "entityId": 3075, "properties": {"text": "Subject: eastrans nomination change effective 9 / 13 / 00\ndeliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.548+0000", "entityId": 3076, "properties": {"text": "Subject: re : sitara training\ni ' ll switch with tom , that way , i can still make my appointment and it won ' t\nbe all guys in the next class ( you know how rowdy they get ) .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.557+0000", "entityId": 3077, "properties": {"text": "Subject: re : sitara training\ni appreciate it\nruss\n- - - - - - - - - - - - - - - - - - - - - - forwarded by russ severson / hou / ect on 09 / 12 / 2000 03 : 52\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n09 / 12 / 2000 03 : 37 pm\nto : russ severson / hou / ect @ ect\ncc :\nsubject : re : sitara training\nruss ,\nwe will send liz , mary , susan , and sabrae to this training . thanks .\nd\nruss severson\n09 / 12 / 2000 03 : 25 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : sitara training\ndaren\nthe number of interested people turned out to be larger than the room can\nhandle . can you just send 3 or 4 for this meeting and i will set up a\nsecondary date for the others .\nthanks\nruss\nx 37386\n- - - - - - - - - - - - - - - - - - - - - - forwarded by russ severson / hou / ect on 09 / 12 / 2000 03 : 16\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n09 / 08 / 2000 02 : 14 pm\nto : russ severson / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , liz bellamy / na / enron @ enron , sabrae\nzajac / hou / ect @ ect , mary poorman / na / enron @ enron , susan hadix / na / enron @ enron ,\ntom acton / corp / enron @ enron , mark mccoy / corp / enron @ enron , eddie\njanzen / na / enron @ enron\nsubject : re : sitara training\nruss ,\ni would like for the following people from the texas region to attend :\nliz bellamy\nsabrae zajak\nmary poorman\nsusan hadix\ntom acton\nmark mccoy\neddie janzen\nlet me know if this group is too large and move some to a later date . thanks .\nd\nruss severson\n09 / 08 / 2000 08 : 53 am\nto : george smith / hou / ect @ ect , tricia bowen / hou / ect @ ect , victor\nlamadrid / hou / ect @ ect , daren j farmer / hou / ect @ ect , patti sullivan / hou / ect @ ect\ncc :\nsubject : sitara training\ni will be giving a training session on wed 9 / 13 / 00 in 21 c 2 from 3 : 00 - 4 : 30\npm .\ni would like for you to send to the class any new logistics personnel that\nyou might think could use a sitara overview .\nif someone cannot make it at this time , let me know their names and i will\ntry to schedule something for them at a later time .\nif possible , please send me a note on who might be attending , so i can get an\napproximate head count .\ncall me or e - mail me if you have any questions\nruss\nx 37386", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.564+0000", "entityId": 3078, "properties": {"text": "Subject: re : sitara training\ndaren\nthe number of interested people turned out to be larger than the room can\nhandle . can you just send 3 or 4 for this meeting and i will set up a\nsecondary date for the others .\nthanks\nruss\nx 37386\n- - - - - - - - - - - - - - - - - - - - - - forwarded by russ severson / hou / ect on 09 / 12 / 2000 03 : 16\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n09 / 08 / 2000 02 : 14 pm\nto : russ severson / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , liz bellamy / na / enron @ enron , sabrae\nzajac / hou / ect @ ect , mary poorman / na / enron @ enron , susan hadix / na / enron @ enron ,\ntom acton / corp / enron @ enron , mark mccoy / corp / enron @ enron , eddie\njanzen / na / enron @ enron\nsubject : re : sitara training\nruss ,\ni would like for the following people from the texas region to attend :\nliz bellamy\nsabrae zajak\nmary poorman\nsusan hadix\ntom acton\nmark mccoy\neddie janzen\nlet me know if this group is too large and move some to a later date . thanks .\nd\nruss severson\n09 / 08 / 2000 08 : 53 am\nto : george smith / hou / ect @ ect , tricia bowen / hou / ect @ ect , victor\nlamadrid / hou / ect @ ect , daren j farmer / hou / ect @ ect , patti sullivan / hou / ect @ ect\ncc :\nsubject : sitara training\ni will be giving a training session on wed 9 / 13 / 00 in 21 c 2 from 3 : 00 - 4 : 30\npm .\ni would like for you to send to the class any new logistics personnel that\nyou might think could use a sitara overview .\nif someone cannot make it at this time , let me know their names and i will\ntry to schedule something for them at a later time .\nif possible , please send me a note on who might be attending , so i can get an\napproximate head count .\ncall me or e - mail me if you have any questions\nruss\nx 37386", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.569+0000", "entityId": 3079, "properties": {"text": "Subject: re : enron / hpl actuals for sept . 11 , 2000\nplease see revisions listed below :\nteco tap 30 . 000 / enron ; 120 . 00 / hpl gas daily\nls hpl lsk ic 15 . 000 / enron\nmelissa jones\n09 / 12 / 2000 10 : 57 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for sept . 11 , 2000\nteco tap 25 . 000 / enron ; 125 . 000 / hpl gas daily\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.573+0000", "entityId": 3080, "properties": {"text": "Subject: enron / hpl actuals for sept . 11 , 2000\nteco tap 25 . 000 / enron ; 125 . 000 / hpl gas daily\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.578+0000", "entityId": 3081, "properties": {"text": "Subject: hpl nom for sept . 13 , 2000\n( see attached file : hplo 913 . xls )\n- hplo 913 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.582+0000", "entityId": 3082, "properties": {"text": "Subject: enrononline internal launch for phase 2\non wednesday , sept . 13 , we will be using the new version of enrononline\n( website and stack manager ) for all north american internal users .\nplease log into the temporary website : http : / / prod . enrononline . com ( no www . )\nthis is a live website and all trades are real .\ncontent of this email\n1 . introduction\n2 . version 2 . 0 launch date\n3 . new website features\n4 . new stack manager features\n5 . your participation\n6 . contacts\n1 . introduction\nwe are planning to launch version 2 . 0 of enrononline to customers within the\nnext few days . in preparation for this launch , the new web site will be\nreleased to internal users in north america on wednesday , september 13 th .\neuropean internal users will be launched shortly after north america .\nexternal customers will follow a few days later .\none of the purposes of the internal launch is to simulate the system load\nwhich will be caused by the full customer launch . accordingly , we appreciate\nyour cooperation in helping us to simulate this load by logging into\nhttp : / / prod . enrononline . com ( no www . ) this is a live web site and all trades\nare real .\nnew features ( as per recent presentations and training sessions ) include :\n? price limit orders\n? enhanced customization\n? floating windows\n? market news and quotes\n? weather maps and tables\n? industry - specific publications\n? market - specific homepages\n2 . version 2 . 0 launch date\nenrononline version 2 . 0 will be launched to the public a few days after our\ninternal launch . we will be using the new version internally from wednesday ,\nsept . 13 . this will provide an opportunity for you to become familiar with\nusing the new application in the production environment before our customers\nstart to use it .\n3 . new website feature details\nprice limit orders : customers have the ability to set up orders that\nautomatically execute as soon as the price and volume requested become\navailable . the limit orders remain open in the system until they are\nexecuted , cancelled by the user , or when they expire . all pending orders will\nexpire no later than 12 hours after being placed .\npending price limit orders will appear in a new window below the quotes\nscreen in the website .\nproduct tabs : enrononline users can use enhanced filtering capabilities to\ncreate separate page tabs for the products that interest them . users can\ninstantly access each page tab with a click of their mouse . sort ordering can\nbe changed by clicking on a column heading , with multiple sorts possible by\nholding down the shift key while clicking .\nfloating windows : users have the ability to create multiple windows with\ndifferent products by right - clicking on the products in the main quotes\nscreen .\nmarket news : website users can now access the latest headlines , sports and\nindustry news from reuters . furthermore , the information categories can be\ncustomized according to personal interests . to customize a particular\ncategory , users need to click the edit button in the category heading .\nall information categories can be collapsed to save space . to expand or\ncollapse a category , users need to click the arrow to the left of the\ncategory heading .\nstock quotes : enrononline now offers stock quotes ( 20 min . delay ) from major\nexchanges around the world .\nweather insights : customers can now access weather maps and temperature data\nfor specific cities and regions . weather forecasts , up to six days ahead ,\nand temperature differentials from periodic averages are now available .\nindustry publications : website users can read a wide range of\nindustry - specific publications including argus european natural gas , argus\neuropean electricity , the news from ngi \u0001 , s daily gas price index , bandwidth\ndesk , coal daily and more .\n4 . new stack manager features\nthe stack manager has been updated to facilitate price limit orders . you will\nnotice that there is a new button at the top of the stack manager , which will\nopen a window showing a summary of the best price limit order bids and offers\nagainst your managed products . you can click the \" + \" sign to the left of a\nsummary to show a list of all the price limit orders which have been placed\nagainst that product .\nunder normal circumstances , the price shown on the website will be the same\nas the price on your stack manager . however , the system will not allow you to\nshow a price which is better than an existing price limit order . instead , the\nsystem will show a price on the website equivalent to the prevailing price\nlimit order while it is being filled . once the appropriate price limit orders\nare filled , then the website will again show your stack manager prices .\nit is important that you complete the \u0001 & maximum volume \u0001 8 field in the product\nproperties window and that you select \" allow price limit orders \" . also , make\nsure that the price tick window in the stack manager \u0001 , s \u0001 & product properties \u0001 8\nfield is appropriate for the product . if you do not do this , your customers\nwill not be able to use price limit orders for your products .\n5 . your participation\nplease log in to http : / / prod . enrononline . com ( no www . ) on wednesday . to\nensure enrononline version 2 . 0 is a success , it is important that you have a\nfull understanding of the new features and help promote the system to your\ncustomers .\n6 . contacts\nif you have any further questions that are not answered above please feel\nfree to contact us at :\nthe americas :\n+ 1 ( 713 ) 853 - 4357 ( help )\nasia and australia\n+ 61 2 9229 2300\nall other regions\n+ 44 ( 0 ) 20 7783 7783", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.587+0000", "entityId": 3083, "properties": {"text": "Subject: global octanes\nwe have two firm deals at hpl meter # 1528 , global octanes for sepo 0 and octo 0\ni need to make sure that deal # 315049 is first through the meter , and 276461\nis second through the meter .\nplease check and correct if necessary\nthanks\nlee\nx 3 . 5923", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.592+0000", "entityId": 3084, "properties": {"text": "Subject: budget questionaire - update\none more thing - next year you will be billed for inhouse training - please\ninclude these classes with the other training your are scheduleing . if you\ngive the class , i will put in the costs ( thanks to jeff sorenson for asking\nabout\nthis )\ni forgot to mention this - when you are putting in your salries -\ndo not include analsyst salaries ! ! !\nthese are charged at a specific amount to your rc , regardless of the\nactual salary of the analsyt . just give me the total salaries of any\nnon - analysts , and the number of analysts you have . i will put in the\nsalary allocations for the analysts ( about $ 4 , 000 per month ) .\nthanks , diane\nplease fill in the attached budget questionaire and return to me no later\nthan thursday morning .\nif you have not turned in your staffing for 2001 , please turn that in today .\nif you have any questions , please call me at x 37059 .\nthanks , diane", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.596+0000", "entityId": 3085, "properties": {"text": "Subject: deal id 109475\ndaren ,\nthe above deal is a desk to desk for amoco gas at katy , which is xported on\nena ' s agmt on tejas . please extend the deal to cover september .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.601+0000", "entityId": 3086, "properties": {"text": "Subject: meter 6879 - sept . 00\ndaren - can you get a deal set up for meter 6879 for sept . 00 ? there is flow\nfor day 1 , it is a 16 day chart . in aug . there was a deal of 176 on deal #\n133010 for heatherloch municipal utility . please let me know if enter a\ndeal . thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.605+0000", "entityId": 3087, "properties": {"text": "Subject: re : meter 1550\nper gas control , this will be down until the 18 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.610+0000", "entityId": 3088, "properties": {"text": "Subject: re : meter 6879 - sept . 00\nthis deal was not put in right . the primary term of the contract goes out to\n9 / 30 / 00 . there is no evergreen to the contract . the deal will end when the\ncontract ends . therefore , i have taken the evergreen off , and added\nseptember to it .\nif you have any questions , let me know .\njulie\n\\\ndaren j farmer\n09 / 13 / 2000 11 : 33 am\nto : julie meyers / hou / ect @ ect\ncc : aimee lannou / hou / ect @ ect\nsubject : meter 6879 - sept . 00\njulie ,\nplease review deal 133010 . the deal shows evergreen , but nothing rolled to\nseptember .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 09 / 13 / 2000\n11 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 09 / 13 / 2000 11 : 01 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 6879 - sept . 00\ndaren - can you get a deal set up for meter 6879 for sept . 00 ? there is flow\nfor day 1 , it is a 16 day chart . in aug . there was a deal of 176 on deal #\n133010 for heatherloch municipal utility . please let me know if enter a\ndeal . thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.614+0000", "entityId": 3089, "properties": {"text": "Subject: new desk in sitara\nplease give me shout if you have any questions ( 39222 )\nchao !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.618+0000", "entityId": 3090, "properties": {"text": "Subject: enron / hpl actuals for sept . 12 , 2000\nteco tap 10 . 000 / enron ; 20 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.623+0000", "entityId": 3091, "properties": {"text": "Subject: hpl nom for sept . 14 , 2000\n( see attached file : hplo 914 . xls )\n- hplo 914 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.628+0000", "entityId": 3092, "properties": {"text": "Subject: meter 1550\nthere is an electrical problem at the plant , it went down on 9 / 10 and is at\nzero until further notice . the nomination was 4 m / d . this is the hpl / miles\nbaytown plant .\ni will keep you informed , i just received the call this afternoon .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.633+0000", "entityId": 3093, "properties": {"text": "Subject: request submitted : access request for liz . bellamy @ enron . com\nplease review and act upon this request . you have received this email because\nthe requester specified you as their manager . please click\napproval to approve the request .\nrequest id : 000000000002858\nrequest create date : 9 / 14 / 00 8 : 57 : 26 am\nrequested for : liz . bellamy @ enron . com\nresource name : exceed\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.638+0000", "entityId": 3094, "properties": {"text": "Subject: budget help ! !\nsalaries , salaries , salaries ! ! ! everyone is having problems .\nunfortunately , many of\nyou are new to your jobs and did not inherit paperwork to know what your\nstaff ' s salary is . i have the average\nsalary for each of the different staffing levels . i have asked the hr\ndepartment to also give me\nthe low and the high . let ' s face it - your staff today and their salary most\nlikely are not what\nthey are going to be next year ! to much movement of people . so using\nestimates and averages\nwill probably be as accurate as using current salary levels .\nhere ' s what you can do :\n1 ) make a list of your staff just their positions .\n2 ) then put down if you think i should budget high , mid , average , low , low to\naverage , etc .\nyou can guess at this based on their experience , length of time in that\nposition , etc .\n3 ) then i will calculate out an estimated salary to use for your budget .\n4 ) here is the average :\nsr . $ 4 , 961\nspec $ 3 , 964\nstaff $ 3 , 026\nsr . clrk $ 2 , 548\nclerk $ 2 , 264\nasst $ 3 , 162\nyour list would look something like this :\nassistant average\nclerk very high\nsr . clerk low\nspecialist low to average\nspecialist average\nsr . specialist average to high\nanalyst ( they are all allocated at the same amount )\nyou can , however , use the exact amounts if you have them . it ' s up to you .\nnext item - training ! ! !\nhere ' s what you can do :\n1 ) list your staff and the type of class they need\n2 ) if you don ' t know the exact class you want to send them to , then list what\ntype\nof class - for example personal enrichment ( i . e . time management ) or\ntechnical ( derivatives or applied finance or wellhead to burnertip )\n3 ) the personal enrichment classes cost aroung $ 500 - $ 700\n4 ) the technical classes cost aroung $ 800 - $ 1000 .\n5 ) just list the type of class , and i ' ll do the rest .\nnext item - headhunters !\ntry 20 % of the new hires salary for their fees .\nother stuff - i have made a list of all of the unusual items we do during the\nyear that\npeople forget about at budget time ( i . e . flowers for secretaries day , birthday\nice cream , offsite meeting costs , customer gifts ) . if you forget these\nitems , i will\nmake sure it is added to your budget .\nonce i put all of your budget information into the spreadsheets , we will\nreview them\nso that they can be adjusted as necessary and you can approve them . hopefully\nthis helps you some .\ndiane x - 37059", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.643+0000", "entityId": 3095, "properties": {"text": "Subject: hpl nom for sept . 15 , 2000\n( see attached file : hplo 915 . xls )\n- hplo 915 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.649+0000", "entityId": 3096, "properties": {"text": "Subject: enron / hpl actuals for sept . 13 , 2000\nteco tap 10 . 938 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.654+0000", "entityId": 3097, "properties": {"text": "Subject: eastrans nomination change effective 9 / 16 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy for 9 / 16 / 00 and maintain\nat\n0 until otherwise notified .\nthe redeliveries will be 0 as well .\nfuels cotton valley gas will be valued per paragraph 3 of the contract price\n( per mmbtu ) section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.661+0000", "entityId": 3098, "properties": {"text": "Subject: the enrononline games\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elsa villarreal / hou / ect on 09 / 15 / 2000\n03 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandy zipper @ enron\n09 / 07 / 2000 07 : 05 pm\nto : eol non north america traders , eol north america traders\ncc : product control - houston , product control - london , louise\nkitchen / hou / ect @ ect , greg whalley / hou / ect @ ect\nsubject : the enrononline games\nhighlights :\nlaunch of the enrononline games on friday - sept . 8 , 2000 .\nenrononline customers encouraged to participate for a chance to win grand\nprizes ( details below ) .\ninternal ( enron ) employees using enrononline are welcome to participate for a\nchance to win a different set of prizes ( details below ) .\nplease participate in the game and encourage all your counterparties to do\nthe same , and help build greater community around enrononline .\ndetails :\nwe are excited to announce the launch of the enrononline games on friday -\nseptember 8 , 2000 ( tomorrow ) . all enrononline customers with an execute\naccess to enrononline , and all the internal users of enrononline ( enron\nemployees ) will be able to participate in this competition . the objective of\nthese games is to build greater community around enrononline and to provide\nour users with additional services and some fun competition for cool prizes .\nthe game :\nthe game will be structured around the olympics games being held in sydney\nbetween sept 15 - october 1 , 2000 ( please note that we are advised against\nusing the word olympics when talking to our customers re . the game and as\nsuch , would rather use \" the enrononline games \" ) . participants can select any\nor all of the five countries allocated from a random draw as their pick . any\ncountry that was not selected by the participant in the first draw , will be\nreplaced by another randomly allocated county in a second and final pick ,\nensuring that the participant has their full portfolio of five . these\nselections have to be made by 6 : 00 pm eastern standard time ( midnight ,\ngreenwich meridian time ) . that is , the morning before the games are played\neach day . points will be accumulated for each gold , silver , or bronze medal\nwon by the selected country .\nprizes :\nenron employees : winning participants from within enron will be awarded\nprizes as well . these winners will not be competing for the customer prize\npool , but will be eligible for a separate set of prizes , as detailed below .\nfirst prize : $ 1 , 000 to $ 2 , 000 range ( portable dvd player , digital camcorder ,\netc . ) .\nsecond prize : $ 1 , 000 to $ 2 , 000 range ( portable dvd player , digital camcorder ,\netc . ) .\n3 - 10 prizes : an assortment of smaller prizes .\nenrononline customers : there are substantial prizes for winning participants\nfrom the customer pool and are as follows :\nfirst prize ( awarded as a package ) :\nsony 61 \u0001 8 xbr projection television\nmatching 8 shelf xbr cabinet\n200 disc dvd / cd player\na / v receiver w / 110 w / channel\nhome theatre six speaker system\nnetwork recorder\ndigital 8 mm camcorder w / built - in printer\nsecond prize :\nsony 36 \u0001 8 flat screen tv\nthird prize :\nsony portable dvd player w / lcd screen\nyou are all encouraged to participate in the games and are urged to encourage\nyour customers to do the same .\npls . note that there are some jurisdictional restrictions on participation ,\nand the restricted customers aren ' t eligible to play or receive prizes . for\nfurther questions , please refer to the following faq attachment or call the\nenrononline help desk .\nregards ,\nandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.667+0000", "entityId": 3099, "properties": {"text": "Subject: neon discussion september 20\nlike we talked about in our meeting in august , i am planning on ? getting\nmaterial out for discussion on the friday preceding the neon meeting . ? if it\nwould help you to get it sooner , let me know so we can see what would help . ?\nalso , if you can ' t open the attachment ( it is written in microsoft word ) ,\nlet me know so that we can again do whatever ' s necessary to get it to you .\n?\nkeep me in touch with how things are going for your group ; successes ,\nproblems , etc . ? i ' ll be praying for your groups .\n?\nin him ,\n?\nbobby\n- neon measuring success lesson 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.673+0000", "entityId": 3100, "properties": {"text": "Subject: duplicates\nsorry for any duplicate , having problems with lotus\nnotes .\ngary green", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.678+0000", "entityId": 3101, "properties": {"text": "Subject: enron / hpl actuals for sept . 14 , 2000\nteco tap 25 . 000 enron / 112 . 500 hpl gas daily\nhpl ls katy 15 , 000 enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.682+0000", "entityId": 3102, "properties": {"text": "Subject: enron / hpl actuals for sept . 14 , 2000 from txu electric\nteco tap 25 , 000 enron / 112 . 500 hpl gas daily\nhpl katy 15 , 000 enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.687+0000", "entityId": 3103, "properties": {"text": "Subject: ( see attached file : hplo 916 . xls )\n- hplo 916 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.692+0000", "entityId": 3104, "properties": {"text": "Subject: enrononline launch monday 18 th .\nwe are pleased to announce that as of monday , sept . 18 , the new version of\nenrononline will be launched to all our customers .\nwhen our customers log in on this day , they will be given the option to\nupgrade to the new version . they can choose to immediately upgrade , or to\nupgrade at a later time .\nif the customers choose to upgrade , they will be taken through the same steps\nas when you upgraded . if the customers choose not to upgrade , they will\nreceive a version of enrononline which is the same as the \" old \" version , but\nthe colors will be blue , instead of black .\ncustomers who choose not to immediately upgrade can can do so at a later time\nby pressing the \" upgrade to version 2 \" button in the top left corner of their\nscreen .\nsome customers may have browser or firewall restrictions which could cause\ndifficulties in upgrading to the new version of enrononline . we have\nenrononline help desk and it troubleshooters standing by to help anyone in\nthis situation . for assistance , please direct calls to :\nnorth america 713 853 4357\neurope + 44 20 7783 7783\naustralia / asia + 61 2 9229 2300\nenrononline marketing personnel will be calling customers to help guide them\nthrough the new features , but it would be appreciated if you could also point\nout some of the new features when you are talking to your customers .\nas of monday , all internal users should also use the usual\nwww . enrononline . com to get to the new version .\nthank you for your assistance in making enrononline a success .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.697+0000", "entityId": 3105, "properties": {"text": "Subject: activation of price limit orders\nin preparation for going live with the new version of enrononline , please set\nyour products to allow price limit orders . you can do this by :\n1 ) highlighting the product and selecting \" product properties \"\n2 ) in the lower right hand corner , verify that the :\n- price tick size is where you want it ( the price tick controls the minimum\nprice increments which a customer can specify )\n- \" allowed \" box is ticked under the \" orders \" section\n- the max volume in the \" orders \" section is set where you want it .\nif you do not do this , customers will not be able to place price limit orders\non your products\nif you have any questions , please call the enrononline help desk ( north\namerica : 713 853 4357 , europe : + 44 20 7783 7783 , australia / asia : + 61 2 9229\n2300 )\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.702+0000", "entityId": 3106, "properties": {"text": "Subject: calpine daily gas nomination\nas we spoke of by phone . thanks .\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.706+0000", "entityId": 3107, "properties": {"text": "Subject: agua dulce and thompsonville products\nhere is the detail on the new products :\nthompsonville\nreceipt pts\nlobo thompsonville ( meter # 9648 )\ntejas thompsonville ( meter # 6351 )\npg & e thompsonville ( meter # 6296 )\ndelivery pt .\nngpl thomsponville ( meter # 1342 )\nagua dulce\nreceipt pts .\npg & e riverside ( meter # 6040 )\npg & e agua dulce ( meter # 584 )\ntennesee agua dulce ( meter # 574 )\nlobo agua dulce ( meter # 7038 )\ntejas gregory ( meter # 3358 )\nchannel agua dulce ( meter # 3500 )\nmops / nng tivoli ( meter # 5674 )\ntomcat ( meter # 553 )\ndelivery pts .\ntejas riverside ( meter # 3543 )\nngpl riverside ( meter # 3545 )\nchannel agua dulce ( meter # 3500 )\ntenessee agua dulce ( meter # 694 )\nkoch bayside ( meter # 3537 )\nwe would like to get these products out by bid week if at all possible .\nlet me know if you have further questions .\nthanks ,\neric\nx 3 - 0977", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.711+0000", "entityId": 3108, "properties": {"text": "Subject: ye 2000 global performance management begins 10 / 23 / 00\nhere ' s the latest global performance management schedule for ye 2000 and some\nfriendly reminder tips for you and your direct reports . the system is\nscheduled to open for feedback in 35 days . please forward all mid - year 2000\nevaluations to janet de la paz at eb 3658 a .\njuly 31 - oct 13 th development & testing\noct . 2 - 13 th training - hr community\noct 9 - 27 th training - all employees\noct 16 th system opens to hr community\noct . 23 rd system opens for feedback\nnov . 17 th system closes for feedback\nnov . 20 th prc meetings begin\ndec . 15 th prc meetings conclude\njan 4 - 5 th executive committee meeting\nreminders\nrequest that employees maintain an updated list of their acheivements and\ncontributions to your group . tell them the information they forward to you\nwill better help you in representing them .\nthe focus of the prc this year will remain on development of the employee and\nwill emphasize comparing everyone within a particular peer group relative to\neveryone else in their peer group .\nupdate your documentation of employee performance and communicate the key\nhighlights of their performance or lack thereof now with your direct reports\nso that the evaluation process creates minimal or no surprises for your\ndirect report . it is much easier to have a constructive evaluation session\nwith your direct report if he / she already knows what the key areas of needed\ndevelopment are . an ideal situation for the supervisor is one in which\nemployees with performance issues ( can ' t do or won ' t do ) choose to exit the\ngroup voluntarily before the self evident evaluation has to be given .\ni will continue to provide updates and reminders as they become available .\nlet me know if you have any questions .\nhgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.715+0000", "entityId": 3109, "properties": {"text": "Subject: save on united now and get 30 % off a future flight\ndear expedia . com traveler\nnow you can save two ways with the latest united airlines\nfare sale and this special offer from expedia . comc . book a\nunited ticket on expedia . com now and you ' ll save - - plus\nwe ' ll give you a reward for 30 % off a future united flight\nto most anywhere in the u . s . ! *\nyou ' ve got until september 22 to take advantage of the\nlatest united fare sale . and if you book a united ticket\nwith expedia . com , we ' ll give you a reward for 30 % off your\nnext flight . if you miss the fare sale , don ' t worry - - book\na united ticket before october 31 and you ' ll still qualify\nfor the reward . click here for more details of this offer :\nso book your united ticket with expedia . com now and you can\nturn a trip today into big savings on a winter getaway .\nhow does florida sound in january ? or phoenix in\nfebruary ? disneyland ? start your planning now and be sure\nto book soon .\nexpedia . com travel team\ndon ' t just travel . travel right .\np . s . one last thing : this offer is available to everyone ,\nbut only on expedia . com . so be sure to forward this e - mail\nto anyone you think might like to get away and save money\nat the same time !\n* qualifying purchase must occur on expedia . com as a u . s .\npoint of sale and a minimum base fare of $ 150 per ticket is\nrequired . qualifying nonrefundable roundtrip tickets may be\ninternational or domestic flights on united airlines ,\nunited shuttle , or united express ( no code share or star\nalliance flights ) .\nqualifying tickets must be purchased on expedia . com between\n12 : 01 am ( est ) september 12 , 2000 through 11 : 59 pm ( est )\noctober 31 , 2000 . qualifying travel must occur september\n12 , 2000 through december 15 , 2000 .\nreward travel must be purchased on expedia . com between\n12 : 01 am ( est ) november 15 , 2000 through 11 : 59 pm ( est )\ndecember 31 , 2000 . passenger must commence reward travel on\nor after december 1 , 2000 and complete all travel on or\nbefore february 28 , 2001 . reward is valid only on\nroundtrip tickets within the 48 contiguous united states ,\nalaska , and canada , ( hawaii , puerto rico & u . s . virgin\nislands are excluded ) .\nblackout dates apply . reward travel is not permitted on\nthese dates : dec 21 , 22 , 23 , 26 , 27 , 30 . mileage plus\nblackout dates may also apply .\nadditional restrictions apply . for more details , click here :\nabout this mailing : you are receiving this e - mail\nbecause you are a registered member of expedia . com ( r ) .\nyour expedia ( r ) membership is free and your privacy\nand credit card security are guaranteed .\nif you do not wish to receive any further promotional\ne - mails from us , please reply to this mail\nwith \" unsubscribe \" in the subject line .\nforget your user name or password ? click here :\nquestions about your privacy ? read our privacy statement :\nquestions about your credit card security ?\nread our credit card guarantee statement :\nif you have other questions , visit the expedia . com service\ncenter :\nwe ' re sorry , but we cannot reply to responses to this\ne - mail . if you ' d like to give us feedback , click here :\n, 2000 expedia , inc . expedia , expedia . com , the airplane\nlogo , and \" don ' t just travel . travel right . \" are either\nregistered trademarks or trademarks of expedia , inc .\nin the united states and / or other countries . all rights\nreserved . other company and product names mentioned\nherein may be trademarks of their respective owners .\nexpedia terms of use :\nthis email was sent to : dfarmer @ ect . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.720+0000", "entityId": 3110, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for sept . 15 - 17 , 2000\nsept 17 , 2000\nteco tap 51 . 667 / hpl gas daily ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron\nsept . 18 , 2000\nteco tap 31 . 625 / enron\nsept . 19 , 2000\nno flow\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n09 / 18 / 2000\n02 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n09 / 18 / 2000 02 : 03 pm\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for sept . 15 - 17 , 2000\nsept . 17 , 2000\nteco tap 61 . 667 / hpl gas daily ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron\nsept . 18 , 2000\nteco tap 31 . 625 / enron\nsept . 19 , 2000\nno flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.725+0000", "entityId": 3111, "properties": {"text": "Subject: enron / hpl actuals for sept . 15 - 17 , 2000\nsept . 17 , 2000\nteco tap 61 . 667 / hpl gas daily ; 25 . 000 / enron\nls hpl lsk ic 15 . 000 / enron\nsept . 18 , 2000\nteco tap 31 . 625 / enron\nsept . 19 , 2000\nno flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.729+0000", "entityId": 3112, "properties": {"text": "Subject: hpl nom for sept . 19 , 2000\n( see attached file : hplo 919 . xls )\n- hplo 919 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.734+0000", "entityId": 3113, "properties": {"text": "Subject: additional 9 / 18 name changes\ni have just received documentation to support the name changes for the\nfollowing entities , and we have been requested to overlay the names\nimmediately . this is to put all interested parties on notice that any\nobjections or concerns regarding these changes should be directed to me at\nx 3 - 3103 or marilyn colbert at x 3 - 6517 immediately . these changes will appear\nas additions to the final name change / merger report due out next week .\nold counterparty name ba id cp id erms shortname eff .\ndate new counterparty name ba id cp id erms shortname\namoco energy trading corporation 03149 12\namoco 08 / 22 / 00 bp energy\ncompany n / c n / c bpenergyco\nunion pacific resources inc . 90933 34880\nunionpacresinc 07 / 17 / 00 anadarko canada corporation\nn / c n / c anadarkocancor\nlegal name changes will be done tomorrow 9 / 19 / 00\nshort names will change on 9 / 21 / 00\nthanks ,\ncheryl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.739+0000", "entityId": 3114, "properties": {"text": "Subject: hpl curtailment plan\nenron north america corp .\nfrom : tom shelton 09 / 15 / 2000 11 : 44 am\nto : barbara n gray / hou / ect @ ect , steve hpl schneider / hou / ect @ ect , thomas a\nmartin / hou / ect @ ect , edward d gottlob / hou / ect @ ect , james mckay / hou / ect @ ect ,\njim schwieger / hou / ect @ ect , greg brazaitis / hou / ect @ ect , lee l\npapayoti / hou / ect @ ect , jill t zivley / hou / ect @ ect , michael eiben / hou / ect @ ect ,\njim pond / corp / enron @ enron , jem @ ctw . com\ncc : brian redmond / hou / ect @ ect\nsubject : hpl curtailment plan\nwe are going to be reviewing the hpl curtailment plan , with the ultimate\nissue being how does hpl best structure its curtailment program to comply\nwith regulatory requirements and to best suit hpl \u0001 , s business purposes .\nattached is a memo meant to provide a brief summary about what a curtailment\nplan is and some of its ramifications . we \u0001 , ll be setting up a meeting soon\nto discuss the issues surrounding the curtailment regulations and their\nsignificance to hpl . certainly there will be critical legal , regulatory ,\ncommercial , operational , gas control , accounting , and even public relation\nissues to be considered in this deliberation . whatever the decision may be\nas to what to do , we must also determine how to find out relevant facts ,\nestablish the processes to be followed , and perform the necessary procedures\nto implement our action plan .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.744+0000", "entityId": 3115, "properties": {"text": "Subject: meter variances - ua 4 clean - up\ndaren / vance -\nthe two meters below are new and have unallocatable flow . . . . . . . i will need a\npurchase for each of them . please respond with a deal number , or further\nsuggestions for resolution so that i can clear this up as soon as possible .\nmary\nenron on 09 / 19 / 2000 08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine benedict @ ect\n09 / 18 / 2000 04 : 53 pm\nto : mary poorman / na / enron @ enron , fred boas / hou / ect @ ect , aimee\nlannou / hou / ect @ ect\ncc :\nsubject : meter variances - ua 4 clean - up\nhi guys ,\nplease take a look at the following meters which are showing up with\nvariances on my ua 4 report . once the variance has been cleared , please send\nme an e - mail . please try to clear these within the next couple of days .\nthanks ,\nkathy benedict\nmeter number : 9851\nvariance : 11 , 204\nmeter type : daily swing\nproduction month : august 2000\nlogistics contact : none\nvolume mgmt contact : anita luong\nmeter number : 9852\nvariance 568\nmeter type : daily swing\nproduction month : august 2000\nlogistics contact : none\nvolume mgmt contact : anita luong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.749+0000", "entityId": 3116, "properties": {"text": "Subject: operations pricing model - hours survey\nif you assisted in the completion of the opm hours survey in the past and / or\nare expected to in the future , you will need access to microsoft access\nbeginning wednesday , september 27 , 2000 . if you do not have microsoft\naccess , please go to the enron . itcentral . com website and complete an it\napplication request for microsoft access as soon as possible .\nif you are not the individual who will be updating the hours surveys , please\n( 1 ) coordinate with the individual who will and ( 2 ) notify suzanne nicholie\nat # 57341 .\non wednesday , september 27 , 2000 a new hours survey will be distributed to\nyou and will be due for completion on wednesday , october 4 , 2000 .\nwe have developed what we think to be an easier and more efficient method of\nhandling the hours survey using microsoft access . the hours survey is menu\ndriven and you are not expected to need specific microsoft access training .\nwe will provide help lines and as needed direct training with the roll out of\nthe new hours survey . if you have any questions please contact anyone in the\nopm group .\nsuzanne nicholie - primary hours survey contact at # 57341\nshari mao - # 33859\njennifer reside - # 35971\njames scribner - # 39641\nthanks .\njames scribner", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.754+0000", "entityId": 3117, "properties": {"text": "Subject: re : wholesale volumes - august\nyr to yr and qtr to qtr changes due to eol and increased entex takes .\ndave\nenron north america corp .\nfrom : misti day 09 / 18 / 2000 03 : 53 pm\nto : michelle bruce / hou / ect @ ect , jeffrey c gossett / hou / ect @ ect , kam\nkeiser / hou / ect @ ect , william kelly / hou / ect @ ect , kyle etter / hou / ect @ ect , laura\ne scott / cal / ect @ ect , jill louie / cal / ect @ ect , david baumbach / hou / ect @ ect , mark\nconfer / hou / ect @ ect , edie leschber / hou / ect @ ect , rita anderson / corp / enron @ enron\ncc : paula harris / hou / ect @ ect , faith killen / hou / ect @ ect , hunter s\nshively / hou / ect @ ect , scott neal / hou / ect @ ect , phillip k allen / hou / ect @ ect\nsubject : wholesale volumes - august\nit ' s that time again for the monthly and quarterly volumetric explanations !\nthe database for august is now ready for viewing . just as a reminder , this\nis the shortcut on your desktop called \" statistical database \" .\nas there is continued investor focus on our wholesale operations , investor\nrelations requests that business analysis & reporting provide monthly\nvolumetric analysis for wholesale operations in addition to the quarterly\nanalysis . please review the analysis for august 2000 and provide\nexplanations for all material changes ( + / - 10 % ) for the year / year ,\nquarter / quarter , and month / month variances . the current objective of\ninvestor relations is to use this analysis as a resource to answer potential\ninvestor or analyst questions , but it may be used for ad hoc requests and\npresentations . it is essential that the volumes be verified by commercial\npersonnel .\nplease forward your verification and explanations via e - mail to me by 10 : 00 am\nfriday , september 22 . please feel free to call with any questions .\nthanks ,\nmisti\nx 39525", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.759+0000", "entityId": 3118, "properties": {"text": "Subject: duke exchange deal , march 2000\npurchase\ndeal # 157288\nit appears that the price on pgev should be index less $ . 06 not index less\n$ . 05 for the redelivery .\nlet me know which is correct per the exchange agreement .\nthanks -\nk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.764+0000", "entityId": 3119, "properties": {"text": "Subject: fw : stress relief\n- - - - - original message - - - - -\nfrom : almaguer , michael\nsent : tuesday , september 19 , 2000 2 : 46 pm\nto : beard , jaime ; dewey , daniel ; fletcher , thomas ; glover , rusty\nsubject : fw : stress relief\n- - - - - original message - - - - -\nfrom : adrienne cervantes [ mailto : acervantes @ . com ]\nsent : tuesday , september 19 , 2000 1 : 19 pm\nto : almaguer , michael ; dominique vidal ; maria bellwood\nsubject : fw : stress relief\nthought this was kind of fun . play with it .\nadrienne\n> > > > ? > ? >\n> >\n>\n?\n- stressrelief . exe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.769+0000", "entityId": 3120, "properties": {"text": "Subject: cornhusker\ndarren ,\nhow are things going ? just a note to reiterate what we talked about\nyesterday . rick hill wanted to know what the admin fee would be if the fee\nwas for an outside counterparty . this admin fee would be for the life of the\nproject ( through 2019 ) . also , mike mazowita should be calling you to talk\nabout the plant being down this week through the end of the month . please\nlet me know if you have any questions or concerns . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.774+0000", "entityId": 3121, "properties": {"text": "Subject: corhshucker\ndaren - - - -\nthe invoices are being paid by us now . . . . james armstrong is taking care of\nthem , so that is who i am forwarding them to . he apparently is paying for\nthem of an account set up for this . he is out of the office , but he called\nme back and said to keep forwarding him the invoices .\nlet me know if we have any questions ,\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.779+0000", "entityId": 3122, "properties": {"text": "Subject: hpl nom for sept . 20 , 2000\n( see attached file : hplo 920 . xls )\n- hplo 920 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.783+0000", "entityId": 3123, "properties": {"text": "Subject: enron / hpl actuals for sept . 18 , 2000\nls hpl lsk ic 2 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.788+0000", "entityId": 3124, "properties": {"text": "Subject: cornhusker\ndarren ,\nhow are things going ? just a note to reiterate what we talked about\nyesterday . rick hill wanted to know what the admin fee would be if the fee\nwas for an outside counterparty . this admin fee would be for the life of the\nproject ( through 2019 ) . also , mike mazowita should be calling you to talk\nabout the plant being down this week through the end of the month . please\nlet me know if you have any questions or concerns . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.792+0000", "entityId": 3125, "properties": {"text": "Subject: corhshucker\ndaren - - - -\nthe invoices are being paid by us now . . . . james armstrong is taking care of\nthem , so that is who i am forwarding them to . he apparently is paying for\nthem of an account set up for this . he is out of the office , but he called\nme back and said to keep forwarding him the invoices .\nlet me know if we have any questions ,\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.797+0000", "entityId": 3126, "properties": {"text": "Subject: equistar nomination & scheduling changes\njanice berke - davis @ equistar has asked to move around some of the firm deals\nthey have this month . she would like these changes to be effective today ,\nseptember 19 . i don ' t have sitara # ' s , so i ' ll have to describe the packages\nby volume and price\n1 . there is a package of 5 , 000 / d @ meter # 1552 priced at greater of $ 4 . 35 or\nifhsc - $ 0 . 10 . she wants this package of gas moved to meter # 1373\n2 . there is a package of 5 , 000 / d @ meter # 1553 priced at greater of $ 4 . 35 or\nifhsc - $ 0 . 10 . she wants 4 , 000 / d of this package of gas moved to meter #\n1373 , leaving 1 , 000 / d at meter # 1553\nif any questions , please call her directly at 713 - 652 - 4148\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.801+0000", "entityId": 3127, "properties": {"text": "Subject: hpl nom for sept . 21 , 2000\n( see attached file : hplo 921 . xls )\n- hplo 921 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.806+0000", "entityId": 3128, "properties": {"text": "Subject: revision # 1 - enron / hpl actuals for sept . 19 , 2000\nteco tap 45 . 000 / enron ; 61 . 250 / hpl gas daily\nls hpl lsk ic 15 . 000 / enron\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n09 / 20 / 2000\n10 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n09 / 20 / 2000 10 : 27 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for sept . 19 , 2000\nteco tap 35 . 000 / enron ; 71 . 250 / hpl gas daily\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.811+0000", "entityId": 3129, "properties": {"text": "Subject: enron / hpl actuals for sept . 19 , 2000\nteco tap 35 . 000 / enron ; 71 . 250 / hpl gas daily\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.816+0000", "entityId": 3130, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.821+0000", "entityId": 3131, "properties": {"text": "Subject: 10 / 00 assignment , termination , expiration report - assets group\nattached is the october 2000 assignment , termination & expiration report for\nthe assets group ' s contracts . ( fyi - it contains all of the entries made by\nour group since the distribution of the last report regardless of the\neffective date . ) if you do not need to receive this report or if you know of\nsomeone else that should receive it , please let me know by e - mail or phone\n( x - 36982 ) so that i can either remove your name from or add their name to the\ndistribution list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.825+0000", "entityId": 3132, "properties": {"text": "Subject: october prelim production estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 09 / 20 / 2000 04 : 45\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n09 / 20 / 2000 04 : 44 pm\nto : robert cotten / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , mary m smith / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , trisha hughes / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : october prelim production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\noctober . please be advised that this is a preliminary estimate as to this\ndate , we have received only a few noms for october and there may be revisions\nfrom the traders . i will update you with any revisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.830+0000", "entityId": 3133, "properties": {"text": "Subject: meter 981594 - san jacinto low pressure del to defs\nfyi -\nduke energy field services will be reworking the wilcox plant on 9 / 26 f rom\n7 am to 12 noon and will require that hpl shut - in the 20 m del . for that time\nframe .\nshould you have any further questions , please call me at 35251 .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.834+0000", "entityId": 3134, "properties": {"text": "Subject: re : meter 981594 - san jacinto low pressure del to defs\nper duke energy field services , we can ramp up after the outtage and keep\nthe meter whole at 20 m , if we choose .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.839+0000", "entityId": 3135, "properties": {"text": "Subject: 3 rd party maintenance at meter 6040 for 29 th & 30 th\nhello ,\ni just spoke with lorraine @ pg & e and she informed me that there is going to\nbe some 3 rd party maintenance done which will affect meter 6040 riverside .\nthis will begin @ 2 : 00 a . m . on the 28 th but pg & e will keep the noms whole for\nthe 28 th . 09 / 29 / 00 & 09 / 30 / 00 should have no noms .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.843+0000", "entityId": 3136, "properties": {"text": "Subject: re : cornhusker\nif the plants become an external counterparty , the fee should probably go\nback to the\nscale in the original contract . the assumption being that the original plant\nfinancing could afford\nthe escalating fee .\nlet me know if you want me to look into it any further .\nthanks\nbob\ndaren j farmer @ ect\n09 / 20 / 2000 07 : 38 am\nto : thomas a martin / hou / ect @ ect , bob m hall / na / enron @ enron , steve\njackson / hou / ect @ ect\ncc :\nsubject : cornhusker\nplease read the message below . what do you think about increasing the fee ?\nd\n- - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 09 / 20 / 2000 07 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njohn griffith @ enron\n09 / 19 / 2000 11 : 28 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : cornhusker\ndarren ,\nhow are things going ? just a note to reiterate what we talked about\nyesterday . rick hill wanted to know what the admin fee would be if the fee\nwas for an outside counterparty . this admin fee would be for the life of the\nproject ( through 2019 ) . also , mike mazowita should be calling you to talk\nabout the plant being down this week through the end of the month . please\nlet me know if you have any questions or concerns . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.847+0000", "entityId": 3137, "properties": {"text": "Subject: enron / hpl actuals for september 20 , 2000\nteco tap 45 . 000 / enron ; 42 . 500 / hpl iferc\nls hpl lsk ic 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.852+0000", "entityId": 3138, "properties": {"text": "Subject: hpl nom for sept . 22 , 2000\n( see attached file : hplo 922 . xls )\n- hplo 922 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.857+0000", "entityId": 3139, "properties": {"text": "Subject: oct prod est - revision\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 09 / 21 / 2000 01 : 51\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n09 / 21 / 2000 01 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : oct prod est - revision\nbob ,\nplease see the attached file estimating wellhead production for the month of\noctober . this estimate is consistent with the volume conveyed to daren\nearlier this afternoon .\nvlt\nx 36353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.861+0000", "entityId": 3140, "properties": {"text": "Subject: re : cornhusker\nif the plants become an external counterparty , the fee should probably go\nback to the\nscale in the original contract . the assumption being that the original plant\nfinancing could afford\nthe escalating fee .\nlet me know if you want me to look into it any further .\nthanks\nbob\ndaren j farmer @ ect\n09 / 20 / 2000 07 : 38 am\nto : thomas a martin / hou / ect @ ect , bob m hall / na / enron @ enron , steve\njackson / hou / ect @ ect\ncc :\nsubject : cornhusker\nplease read the message below . what do you think about increasing the fee ?\nd\n- - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 09 / 20 / 2000 07 : 32\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njohn griffith @ enron\n09 / 19 / 2000 11 : 28 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : cornhusker\ndarren ,\nhow are things going ? just a note to reiterate what we talked about\nyesterday . rick hill wanted to know what the admin fee would be if the fee\nwas for an outside counterparty . this admin fee would be for the life of the\nproject ( through 2019 ) . also , mike mazowita should be calling you to talk\nabout the plant being down this week through the end of the month . please\nlet me know if you have any questions or concerns . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.867+0000", "entityId": 3141, "properties": {"text": "Subject: revised\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.876+0000", "entityId": 3142, "properties": {"text": "Subject: nom for the 22 nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 09 / 21 / 2000\n09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 09 / 21 / 2000 09 : 25 : 50 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : nom for the 22 nd\n( see attached file : hpl - sept . xls )\n- hpl - sept . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.882+0000", "entityId": 3143, "properties": {"text": "Subject: union carbide - seadrift hpl meter # 1332\nfor union carbide for this month only , at seadrift meter # 1332 only , all\nvolumes will be under sitara # 380578 , instead of overflowing to swing ticket\nit ' s a gas daily priced deal\nany questions - i ' m at 3 . 5923\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.887+0000", "entityId": 3144, "properties": {"text": "Subject: shell meter 1581\nthis meter is coming back up by 5 m effective today , they are bringing their\nunit back up .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.894+0000", "entityId": 3145, "properties": {"text": "Subject: re : duke energy\nduke will be paid 9 / 22 for may 2000 through july 2000 . we should have the\naugust 2000 invoice by the end of next week . megan parker is handling this\ndeal going forward and has contacted duke to request an invoice for august .\nmegan was not receiving invoices , and since it is our policy to withhold\npayment unless we are invoiced , payment was not made on this until now .\ndaren j farmer\n09 / 18 / 2000 03 : 02 pm\nto : kristen j hanson / hou / ect @ ect\ncc :\nsubject : duke energy\nkris ,\nplease forward this to the appropriate person .\nwe are buying gas from duke at the trevino plant on gulf energy ( tejas )\npipeline . this is a purchase that we obtained with the ces deal . duke\n( laura bates ) has called , saying that they have not received payment in 4 or\n5 months . the deal in sitara is # 145125 . please look into this and let me\nknow where we stand .\nthanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.898+0000", "entityId": 3146, "properties": {"text": "Subject: revised again : revised : eastrans nomination change effective\n9 / 23 / 00\neffective 9 / 23 / 00 and continue until further notified the deliveries into\neastrans is 30000 mmbtu / dy .\nthe redeliveries will be 7400 from fuels cotton valley\n22600 to pg & e .\nsorry for the confusion .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 22 / 2000 03 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 22 / 2000 02 : 44 pm\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nsharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec , ronald c . douglas / gcs / cec / pec @ pec ,\ndaniel c rider / houston / pefs / pec @ pec\ncc :\nsubject : revised : eastrans nomination change effective 9 / 23 / 00\nplease disregard the memo below and continue to keep eastrans deliveries at\nzero ( 0 ) until further notified .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 22 / 2000 02 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 22 / 2000 09 : 00 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nsharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec , ronald c . douglas / gcs / cec / pec @ pec ,\ndaniel c rider / houston / pefs / pec @ pec\ncc :\nsubject : eastrans nomination change effective 9 / 23 / 00\nplease increase deliveries into eastrans to 30 , 000 mmbtu / dy effective\n9 / 23 / 00 and continue until further notified .\nthe redeliveries will be :\n7400 from fuels cotton valley\n22600 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.904+0000", "entityId": 3147, "properties": {"text": "Subject: revised : eastrans nomination change effective 9 / 23 / 00\nplease disregard the memo below and continue to keep eastrans deliveries at\nzero ( 0 ) until further notified .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 22 / 2000 02 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 22 / 2000 09 : 00 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nsharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec , ronald c . douglas / gcs / cec / pec @ pec ,\ndaniel c rider / houston / pefs / pec @ pec\ncc :\nsubject : eastrans nomination change effective 9 / 23 / 00\nplease increase deliveries into eastrans to 30 , 000 mmbtu / dy effective\n9 / 23 / 00 and continue until further notified .\nthe redeliveries will be :\n7400 from fuels cotton valley\n22600 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.909+0000", "entityId": 3148, "properties": {"text": "Subject: eastrans nomination change effective 9 / 23 / 00\nplease increase deliveries into eastrans to 30 , 000 mmbtu / dy effective\n9 / 23 / 00 and continue until further notified .\nthe redeliveries will be :\n7400 from fuels cotton valley\n22600 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.914+0000", "entityId": 3149, "properties": {"text": "Subject: neon material week of sep 27\nleaders :\n?\nthree things :\n? ? ? ? ? ?\nhere is this week ' s material . ? there ' s probably way too much stuff to use it\nall , so i wouldn ' t even try . ? pick out the things and questions that you\nfeel are the most important and will hit your group the best . ? just remember\nthat this material is only one part of what needs to be happening in your\nneon group . ? the getting to know and share with each other is critical - - use\none of the icebreaker activities you have ( even if it seems cheesy ) or\nsomehow ask questions and get the group talking with each other or about\nthemselves .\n?\nsee the note above the material about the cd in your neon box .\n?\nfinally , i haven ' t let you know about the new leaders we have working with\nus , specifically with carol poe and the backors in neon silver - - leslie and\ndebbie bills ! ? welcome debbie and les !\n?\nkeep up the great work !\n?\nbobby\n- neon measuring success lesson 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.920+0000", "entityId": 3150, "properties": {"text": "Subject: txu fuels / sds nomination for october 2000\nattached is the october 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuels ( previously tufco ) and hpl resources co . ,\n( txu fuels contr . # 3949 ) , as well as our september 2000 nomination for takes\nunder the gas sales and purchase contract between txu fuels and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls ) ( see attached file : minhplno 0 . xls )\n- sdsnom . xls\n- minhplno 0 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.925+0000", "entityId": 3151, "properties": {"text": "Subject: hpl nom for september 23 , 2000\n( see attached file : hplo 923 . xls )\n- hplo 923 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.930+0000", "entityId": 3152, "properties": {"text": "Subject: enron / hpl actuals for september 21 , 2000\nteco tap 60 . 000 / enron ; 71 . 250 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.934+0000", "entityId": 3153, "properties": {"text": "Subject: the new power company ; reserved share program\nenron u . s employees :\na registration statement relating to a proposed initial public offering of\nshares of common stock of tnpc , inc . ( tnpc ) , an affiliate of enron corp . , has\nbeen filed with the securities and exchange commission . in connection with\nthe proposed offering , tnpc has arranged to reserve a limited number of\nshares of tnpc ' s common stock for purchase by enron u . s . employees and\ncertain other individuals ( reserved share program ) . if you have any interest\nin further information regarding the reserved share program , which has a\ndeadline of october 2 , 2000 , please execute the link to the following site\nwhere you will find a preliminary prospectus , a letter explaining the\nprogram , an expression of interest form , and an nasd questionnaire related to\nthe offering :\nnote : in the event that you are unable to execute the above link , please\ncopy the link to the address line of your installed browser .\nthe following statements are required to be included in this e - mail by the\nrules and regulations of the securities and exchange commission :\n\" a registration statement relating to the shares has been filed with the\nsecurities and exchange commission but has not yet become effective . these\nsecurities may not be sold nor may offers to buy be accepted prior to the\ntime the registration statement becomes effective . this e - mail shall not\nconstitute an offer to sell or the solicitation of an offer to buy nor shall\nthere be any sales of these securities in any state in which such offer ,\nsolicitation or sale would be unlawful prior to registration or qualification\nunder the securities laws of any such state . \"\n\" no offer to buy the securities can be accepted and no part of the purchase\nprice can be received until the registration statement has become effective ,\nand any such offer may be withdrawn or revoked , without obligation or\ncommitment of any kind , at any time prior to notice of its acceptance given\nafter the effective date . an indication of interest in response to this\nadvertisement will involve no obligation or commitment of any kind . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.939+0000", "entityId": 3154, "properties": {"text": "Subject: oasis / hpl interconnect 6780 cuts\nfyi\noasis made cut to wgr sale to hpl on sunday 9 / 24 & monday 9 / 25 for 5 . 0 / day\n( reference deal 411062 ) due to loss of supply .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.943+0000", "entityId": 3155, "properties": {"text": "Subject: natural gas nomination for 10 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for october 2000 :\n38 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for october 2000 :\n10 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.948+0000", "entityId": 3156, "properties": {"text": "Subject: eastrans nomination change effective 9 / 26 / 00\ndeliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n7600 from fuels cotton valley\n22400 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.952+0000", "entityId": 3157, "properties": {"text": "Subject: cleburne\ncleburne should be it ' s own desk . rick hill should be set up as trader / head\nof desk . let me know if you have more questions .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.956+0000", "entityId": 3158, "properties": {"text": "Subject: cornhusker deal tickets\ndaren - -\ni know you ' re busy with bid week , so here are a couple questions & comments\nfor you :\nseptember\ni need to know if a ticket has been set up for september for the market side\nof the williams & apache gas . we still only the supply is in mops . if it\njust needs points added to it , just let me know the deal ticket # .\naugust 31 st\nthis was the day we scheduled the payback to our two transport contracts on\nlonestar 1023 & 1460 . currently , they do not have the supply points needed\nfor the williams & apache gas in order for the gas to be pathed to\nimbalance . . . so i will get them added so this gas can be pathed .\njuly 31 - aug 7\nthese days were pathed as buy / sells from tenaska iv to tenaska marketing\nventures .\ni worked with volume management to get these out in time for payment ( july &\naug business ) , and had them do a manual entry for aug 31 st .\nplease let me know what you think when you get a chance .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.962+0000", "entityId": 3159, "properties": {"text": "Subject: enron / hpl noms . for 9 / 26 / 00\nattached , please find our nom . for tues . , 9 / 26 / 00 .\n( see attached file : hplo 926 . xls )\n- hplo 926 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.970+0000", "entityId": 3160, "properties": {"text": "Subject: enron / hpl actuals for september 22 - 24 , 2000\nfriday , september 22 , 2000\nteco tap 45 . 000 / enron ; 105 . 000 / hpl gas daily\nhpl ls katy 15 . 000 / enron\nsaturday , september 23 , 2000\nteco tap 45 . 000 / enron ; 105 . 000 / hpl gas daily\nhpl ls katy 15 . 000 / enron\nsunday , september 24 , 2000\nteco tap 57 . 500 / enron ; 1 . 875 / hpl gas daily\nhpl ls katy 2 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.977+0000", "entityId": 3161, "properties": {"text": "Subject: cleburne\ncleburne should be it ' s own desk . rick hill should be set up as trader / head\nof desk . let me know if you have more questions .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.982+0000", "entityId": 3162, "properties": {"text": "Subject: cornhusker deal tickets\ndaren - -\ni know you ' re busy with bid week , so here are a couple questions & comments\nfor you :\nseptember\ni need to know if a ticket has been set up for september for the market side\nof the williams & apache gas . we still only the supply is in mops . if it\njust needs points added to it , just let me know the deal ticket # .\naugust 31 st\nthis was the day we scheduled the payback to our two transport contracts on\nlonestar 1023 & 1460 . currently , they do not have the supply points needed\nfor the williams & apache gas in order for the gas to be pathed to\nimbalance . . . so i will get them added so this gas can be pathed .\njuly 31 - aug 7\nthese days were pathed as buy / sells from tenaska iv to tenaska marketing\nventures .\ni worked with volume management to get these out in time for payment ( july &\naug business ) , and had them do a manual entry for aug 31 st .\nplease let me know what you think when you get a chance .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.987+0000", "entityId": 3163, "properties": {"text": "Subject: october 2000 availabilities\nthis appears to be the first one .\nthanks ,\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 09 / 26 / 2000 08 : 28\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n09 / 21 / 2000 05 : 19 pm\nto :\ncc :\nsubject : october 2000 availabilities\nattached are the october 2000 availabilities for devon energy . i will notify\nyou of any updates as soon as they become availabilie .\nthanks ,\nsteve\n- enronavailsl 000 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.991+0000", "entityId": 3164, "properties": {"text": "Subject: revised october avails .\ni have been out on vacation for a few days , so i am starting to forward\nthese . you might get a few .\nthanks ,\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 09 / 26 / 2000 08 : 27\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n09 / 25 / 2000 10 : 03 am\nto :\ncc :\nsubject : revised october avails .\ni have highlighted changes to the attached to reflect those points which have\nchanged . let me know of any questions you have .\nthanks ,\nsteve\n- enronavailsl 000 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:16.996+0000", "entityId": 3165, "properties": {"text": "Subject: swift - october 2000 vols\nf y i\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 09 / 26 / 2000\n08 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : joan m quick on 09 / 25 / 2000 06 : 01 pm\nsent by : joan quick\nto : carlos j rodriguez / hou / ect @ ect , susan d trevino / hou / ect @ ect , stella l\nmorris / hou / ect @ ect\ncc :\nsubject : swift - october 2000 vols\nthis is the last month we will be buying this gas ! ! ! !\nvpp 1 , 265 mmbtu / d\nxs 3 , 700 mmbtu / d\n- - - - - - - -\n4 , 965 mmbtu / d", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.001+0000", "entityId": 3166, "properties": {"text": "Subject: duke exchange deal - supply\ndeal # 231757\npurchase\nthe deal in sitara indicates that the price for east texas gas systems is\nhsc , index - $ . 085 .\nper the contract , the redelivery at etgs carthage hub tailgate should be\npriced at hsc index - $ . 0825 .\nare these the same points and is the price correct ?\nthanks\nkatherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.006+0000", "entityId": 3167, "properties": {"text": "Subject: eastrans october first of the month nominations\neffective 10 / 1 / 00 deliveries to eastrans is 30 , 000 mmbtu / dy\nthe redeliveries will be :\n7600 from fuels cotton valley\n22400 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.010+0000", "entityId": 3168, "properties": {"text": "Subject: digitize your memories with compaq scanners\ntired of searching for your photos or important files ?\nquit looking . we have a solution . we \u000f ' re offering a compaq tested and\napproved agfa ( tm ) snapscan touch usb scanner for just $ 99 .\nor for sharper photo reproduction , an epson ( tm ) perfection 1200 u\nusb scanner is available for just $ 199 .\npicture having all your photos on your hard drive , scanned in and\nready to e - mail to friends and family or to store in cd libraries .\nyou ' ll also be able to unclutter that office , allowing you to store\ndocuments as easily as placing the original on the scanner bed\nand clicking .\nnot only will these scanners simplify your life , but these great\nvalues come with easy - to - use software , are usb compatible and are ready\nto go a few moments out of the box .\nso stop your search . everything you need is just a click away .\nto order the agfa snapscan , go to\nhttp : / / greatideas . compaq . com / cgi - bin 6 / flo ? y = ecp 20 bdtnxori 0 crxv .\nto order the epson perfection , go to\nhttp : / / greatideas . compaq . com / cgi - bin 6 / flo ? y = ecp 20 bdtnxori 0 cryw .\nif you would rather not receive e - mails about future contests and\npromotions , service updates , product enhancements , cool activities or\nnew products , please e - mail\nto remove your name from our mailing list .\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.015+0000", "entityId": 3169, "properties": {"text": "Subject: cornhusker\nthanks for following up on this .\ni think we ' re generally there in terms of the commercial terms , but need to\nthink through just a few issues related to our plans for the asset .\ni ' d suggest we meet on thursday as i believe the asset manager ( mike\nmazowita ) will be here in houston . in addition to john ' s list of attendees ,\nchuck ward , john king and i should be in the meeting . i ' ll ask tina tennant\nto corrdinate .\nrh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 09 / 26 / 2000 04 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sandi m braband on 09 / 26 / 2000 01 : 27 pm\nto : garrick hill / hou / ect @ ect\ncc : dan lyons / hou / ect @ ect\nsubject : cornhusker\nrick ,\njust following up my voicemail to you yesterday - - - john griffith has\ncontacted me regarding the gas management agreement relating to the\ncornhusker transaction . when dan was in my office several weeks ago , we spoke\nwith you and it appeared that some of the financial terms of the gas\nmanagement agreement were yet to be worked out - - has that occurred yet ? do you\nknow the details of the extension on the transition agreement ? are you\navailable to meet on this in the next day or two and is there anyone else you\nthink should be included ? ( john griffith has asked to be included and\nsuggests darren farmer and bob hall be present as well ) - - please let me know\nthank you ,\nsandi\next . 35465", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.020+0000", "entityId": 3170, "properties": {"text": "Subject: re : cleburne pc #\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 09 / 26 / 2000\n02 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarla nguyen 09 / 26 / 2000 01 : 40 pm\nto : melissa k ratnala / hou / ect @ ect , jim pond / corp / enron @ enron , jim\nlittle / hou / ect @ ect , david baumbach / hou / ect @ ect , eric francis\ncalub / hou / ect @ ect , troy klussmann / hou / ect @ ect\ncc :\nsubject : re : cleburne pc #\nena - im cleburne 12782 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carla nguyen / hou / ect on 09 / 26 / 2000 01 : 38\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsap master data @ enron on 09 / 26 / 2000 11 : 14 : 16 am\nsent by : nina fortune @ enron\nto : carla nguyen / hou / ect @ ect\ncc :\nsubject : re : profit center request form\ncarla ,\nprofit center 12782 has been created .\nthank you ,\nnina\nrt # 227229\nfrom : scott becken 09 / 25 / 2000 07 : 30 pm\nto : sap master data @ enron\ncc :\nsubject : profit center request form\nplease process this request for carla . the remedy ticket number is 226611 .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott becken / corp / enron on 09 / 25 / 2000\n07 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarla nguyen @ ect 09 / 25 / 2000 06 : 29 pm\nto : sap coe / corp / enron @ enron\ncc : melissa k ratnala / hou / ect @ ect , jim pond / corp / enron @ enron , david\nbaumbach / hou / ect @ ect\nsubject : profit center request form\nplease set up this new profic center . if you have questions , please give me\na call . thks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carla nguyen / hou / ect on 09 / 25 / 2000 06 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert hunter @ enron 09 / 25 / 2000 12 : 35 pm\nto : carla nguyen / hou / ect @ ect\ncc :\nsubject : profit center request form", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.024+0000", "entityId": 3171, "properties": {"text": "Subject: txu nom . for 9 / 27 / 00\nls katy ic will remain on zero . will try to pull firm gas at teco as system\nconditions allow .\n( see attached file : hplo 927 . xls )\n- hplo 927 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.029+0000", "entityId": 3172, "properties": {"text": "Subject: enron / hpl actuals for september 25 , 2000\nmonday , september 25 , 2000\nteco tap no flow\nhpl ls katy 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.033+0000", "entityId": 3173, "properties": {"text": "Subject: deals not in nomination - october , 2000\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 09 / 26 / 2000 09 : 52\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 09 / 26 / 2000 09 : 53 am\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : deals not in nomination - october , 2000\nvance ,\nthe following deals are active but not in your nomination for october , 2000 :\ncounterparty name meter # deal #\naransas drilling 9645 130880\ncokinos natural gas 9676 279659\njames c . freeman 5547 133168\ngsf energy 6353 138841\nhesco gathering 6392 93487\nnorth central 0071 138550\nprime operating 6388 362921\nshoreline gas 6722 166395\nspinnaker exploration 9848 379424\nplease advise if the above deals should still be active . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.038+0000", "entityId": 3174, "properties": {"text": "Subject: cornhusker\nthanks for following up on this .\ni think we ' re generally there in terms of the commercial terms , but need to\nthink through just a few issues related to our plans for the asset .\ni ' d suggest we meet on thursday as i believe the asset manager ( mike\nmazowita ) will be here in houston . in addition to john ' s list of attendees ,\nchuck ward , john king and i should be in the meeting . i ' ll ask tina tennant\nto corrdinate .\nrh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 09 / 26 / 2000 04 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sandi m braband on 09 / 26 / 2000 01 : 27 pm\nto : garrick hill / hou / ect @ ect\ncc : dan lyons / hou / ect @ ect\nsubject : cornhusker\nrick ,\njust following up my voicemail to you yesterday - - - john griffith has\ncontacted me regarding the gas management agreement relating to the\ncornhusker transaction . when dan was in my office several weeks ago , we spoke\nwith you and it appeared that some of the financial terms of the gas\nmanagement agreement were yet to be worked out - - has that occurred yet ? do you\nknow the details of the extension on the transition agreement ? are you\navailable to meet on this in the next day or two and is there anyone else you\nthink should be included ? ( john griffith has asked to be included and\nsuggests darren farmer and bob hall be present as well ) - - please let me know\nthank you ,\nsandi\next . 35465", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.043+0000", "entityId": 3175, "properties": {"text": "Subject: re : cleburne pc #\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 09 / 26 / 2000\n02 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarla nguyen 09 / 26 / 2000 01 : 40 pm\nto : melissa k ratnala / hou / ect @ ect , jim pond / corp / enron @ enron , jim\nlittle / hou / ect @ ect , david baumbach / hou / ect @ ect , eric francis\ncalub / hou / ect @ ect , troy klussmann / hou / ect @ ect\ncc :\nsubject : re : cleburne pc #\nena - im cleburne 12782 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carla nguyen / hou / ect on 09 / 26 / 2000 01 : 38\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsap master data @ enron on 09 / 26 / 2000 11 : 14 : 16 am\nsent by : nina fortune @ enron\nto : carla nguyen / hou / ect @ ect\ncc :\nsubject : re : profit center request form\ncarla ,\nprofit center 12782 has been created .\nthank you ,\nnina\nrt # 227229\nfrom : scott becken 09 / 25 / 2000 07 : 30 pm\nto : sap master data @ enron\ncc :\nsubject : profit center request form\nplease process this request for carla . the remedy ticket number is 226611 .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott becken / corp / enron on 09 / 25 / 2000\n07 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarla nguyen @ ect 09 / 25 / 2000 06 : 29 pm\nto : sap coe / corp / enron @ enron\ncc : melissa k ratnala / hou / ect @ ect , jim pond / corp / enron @ enron , david\nbaumbach / hou / ect @ ect\nsubject : profit center request form\nplease set up this new profic center . if you have questions , please give me\na call . thks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carla nguyen / hou / ect on 09 / 25 / 2000 06 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert hunter @ enron 09 / 25 / 2000 12 : 35 pm\nto : carla nguyen / hou / ect @ ect\ncc :\nsubject : profit center request form", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.048+0000", "entityId": 3176, "properties": {"text": "Subject: important information about united healthcare - please read !\nto : houston area employees participating in the domestic medical plan benefits\nyou may have recently received communication from united healthcare ( uhc )\nconcerning memorial hermann health systems ' ( mhhs ) decision to terminate\ntheir contract with uhc in the houston / beaumont area . this communication\nalso included the names of physicians who will be dropped from the network\ndue to this action . it is our intent to help you understand the situation .\nit is our understanding that memorial herman health systems asked for a 40 %\nincrease in fees - a substantial increase that would have been passed on to\nyou and enron ! when united healthcare attempted to negotiate with a counter\nproposal , memorial hermann cancelled their contract .\nwhile this contractual arrangement was between the hospital system and uhc ,\nenron continues to support uhc in their ongoing contract negotiation\nefforts . at this time , it is only uhc which has been affected , however , it\nis our understanding that cigna has also been contacted by the hospital group\nand may be in contract negotiations at this time as well .\nmany doctors have obtained admission privileges to other area hospitals\nwithin the uhc network or have contracted directly with uhc including those\nwith admission privileges to the woodlands , sugarland and clear lake\nhospitals , to name a few . in a further effort to limit disruption to our\naffected employees and families who are enrolled in the uhc network or epo\noptions , enron has authorized uhc to process claims incurred between\nseptember 28 and december 31 , 2000 as if the termination of the memorial\nhermann health systems from the network had not occurred and in - network\nbenefits applied . office visits will have a $ 10 copayment and all other\ncharges will be covered at 90 % . hospital admissions will still need to be\npre - certified with uhc .\nthese steps have decreased the number of participants ' affected by primary\ncare physician disruption from 1 , 050 to 127 .\nif you need medical attention : you or your doctor / hospital must call uhc ' s\ncustomer service number so proper benefits can be verified . in some cases\nthe hospital or doctor may request payment at the time service is performed .\nif this should happen , please obtain an itemized statement and submit it to\nuhc with a claim form for prompt reimbursement . claim forms can be obtained\nby calling 1 - 800 - 332 - 7979 or in houston at 713 - 853 - 7979 ( press 1 ) .\nopen enrollment materials will be coming soon . take this opportunity to\nconsider your elections for 2001 .\nunited healthcare and enron hr are committed to assisting enron employees\nthrough this transition . we will communicate any further developments that\nmay impact you or your family .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.052+0000", "entityId": 3177, "properties": {"text": "Subject: union carbide - seadrift\nfyi - did a baseload deal with union carbide at seadrift hpl meter # 1332 for\nocto 0 that will require some coordination with terry calvert of union\ncarbide , who can be reached at 713 - 973 - 5665 . i want to pass on details in\ncase i ' m out when he calls - i ' m going to pass on y ' all ' s phone # ' s to terry\nhere ' s the deal :\n10 , 000 / d @ ifhsc - $ 0 . 04\n10 , 000 / d @ gd - hsc mid - $ 0 . 03\nplus\n0 to 10 , 000 / d swing to be nominated day before @ gd - hsc mid - $ 0 . 03\nso terry knows he ' s supposed to call us by 9 . 30 am if he wants gas to take any\nof the last tier .\nall the above is in sitara 415267\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.057+0000", "entityId": 3178, "properties": {"text": "Subject: mobil chemical - pasadena - hpl meter # 1256\ni have entered a one month deal in sitara - deal # 416019 for referenced sale\nthis delivery is subject to an external expense transport fee to entex - see\nold deal sitara 93471 for details\nfee to entex is 5 cents\nplease : someone enter this transport info into deal # 416019 as i don ' t\nknow how / what to do . . . .\nlee\n3 . 5923", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.062+0000", "entityId": 3179, "properties": {"text": "Subject: accum .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by silver breaux / hou / ect on 09 / 27 / 2000 07 : 22\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" liles , steven r . \" on 09 / 27 / 2000 06 : 27 : 41\nto : \" ' silver breaux hpl ' \"\ncc :\nsubject : accum .\n>\nthis email and any files transmitted with it from el paso\nenergy corporation are confidential and intended solely\nfor the use of the individual or entity to whom they are\naddressed . if you have received this email in error\nplease notify the sender .\n- book 2 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.066+0000", "entityId": 3180, "properties": {"text": "Subject: meter 1603\ndaren - meter 1603 for september has a nom of 260 . 000 thru 9 / 26 . the flow is\n328 . 817 , a difference of 68 . 817 . sitara does not show who the trader is for\nthis meter . the price is houston ship + . 02 . should the nom be increased ?\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.071+0000", "entityId": 3181, "properties": {"text": "Subject: big cowboy for august\ndaren & tom ,\nbeginning with august production , i noticed that big cowboy , into king ranch\nappeared to be flowing approximately 9 m over the nomination / day . per a\nconversation i had with fred boas today , i discovered that two wells with\nzero noms flowed a considerable volume .\nthey are as follows :\nrocher big cowboy ( 27002 ) - 42 , 000 approx .\nbig cowboy # 2 ( 27003 - 84 , 000 approx .\ntotal flow : 126 , 000 mm ' s , more or less\ni think that this may be part of the production increase which we are trying\nto account for , in addition to the acock production at the briscoe well which\ncame on in august . please let me know what you think . i would like to make\nsure that we are capturing our purchases correctly for both accounting and\nour economics .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.075+0000", "entityId": 3182, "properties": {"text": "Subject: eastrans nomination change effective 9 / 28 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy for 9 / 28 / 00 .\nthe redeliveries will be 0 as well .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.079+0000", "entityId": 3183, "properties": {"text": "Subject: txu nom . for 9 / 28 / 00\nls katy ic will remain on zero . will try to pull firm gas at teco as system\nconditions allow .\n( see attached file : hplo 928 . xls )\n- hplo 928 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.084+0000", "entityId": 3184, "properties": {"text": "Subject: enron / hpl actuals for september 26 , 2000\ntuesday , september 26 , 2000\nteco tap 60 . 000 / enron ; 10 . 000 hpl gas daily\nhpl ls katy no flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.089+0000", "entityId": 3185, "properties": {"text": "Subject: re : october , 2000 deals missing\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 09 / 27 / 2000 12 : 04\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n09 / 27 / 2000 11 : 02 am\nto : robert cotten / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect\nsubject : re : october , 2000 deals missing\nbob ,\nplease see responses highlighted in red text .\nthanks ,\nvlt\nx 3 - 6353\nenron north america corp .\nfrom : robert cotten 09 / 26 / 2000 05 : 56 pm\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : october , 2000 deals missing\nvance ,\nthe following deals are missing for october , 2000 :\ncounterparty name meter # nomination type of purchase status\ncamden resources 9858 3 , 000 firm this is a new package of gas ;\nproduction is not on - line\ncokinos natural gas 9840 2 , 500 firm this is a new package of gas ;\nproduction is not on - line\ncross - tex energy 9843 315 firm this is a new package of gas ;\nproduction is not on - line\ncrosstech energy 6519 2 firm should darren monitor ; currently\nnot an hplc purchase\nd . w . pickett 9737 5 n / a k terminated effective 10 / 1 / 00\nduke energy 6347 139 spot will submit request for spot ticket\nengage energy 5848 208 spot will submit request for spot ticket\nengage energy 5923 779 spot will submit request for spot ticket\neog 9645 63 firm formerly aransas drilling ; has evergreen status\n( flip flag )\nheatherloch 6879 544 single trans firm should darren monitor ; currently\nnot an hplc purchase\ncummins\nproduction is not on - line\nmcbee operating 6210 7 , 713 firm has evergreen status ; need\nto \" flip flag \"\nnorth central 5228 3 , 000 firm this is a new package of\ngas ; production is not on - line\nonyx gathering 9673 1 n / a k terminated effective 10 / 1 / 00\npringle resources 9849 1 firm this is a new package of gas ; will\nsubmit one month ticket\nshoreline gas 6691 10 n / a k terminated effective 10 / 1 / 00\nswift energy 2630 322 spot will submit request for spot ticket\ntri - union 2697 700 firm this is a new package of gas ; production is\nnot on - line\nvintage gas 9603 300 spot will submit request for spot ticket\nwhite oak 4251 96 firm formerly the lamay corp .\nwhiting petroleum 6523 100 spot will submit request for spot ticket\nplease advise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.094+0000", "entityId": 3186, "properties": {"text": "Subject: october 2000 co - owner avails .\nif anyone else needs these , fyi\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 09 / 28 / 2000 03 : 11\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos j rodriguez\n09 / 28 / 2000 10 : 52 am\nto : beverly beaty / hou / ect @ ect\ncc :\nsubject : october 2000 co - owner avails .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 09 / 28 / 2000\n10 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve holmes \" on 09 / 28 / 2000 10 : 42 : 53 am\nto : ,\ncc :\nsubject : october 2000 co - owner avails .\nthe attached reflects co - owner volumes available for sale for october 2000 .\nplease let me know of nay questions you may have .\nthanks ,\nsteve\n- 1000 co - owners volumes to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.099+0000", "entityId": 3187, "properties": {"text": "Subject: new meter number\nplease be advised , as discussed in the morning meeting this morning , that\ntetco enerfin ' s new meter 98 - 0439 will not be operable until october 2 ,\n2000 . this meter is assisgned to me .\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 09 / 28 / 2000 09 : 05\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : pat clynes @ enron 09 / 12 / 2000 08 : 52 am\nto : aimee lannou / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , jackie\nyoung / hou / ect @ ect , robert e lloyd / hou / ect @ ect , tom acton / corp / enron @ enron ,\nsabrae zajac / hou / ect @ ect , mark mccoy / corp / enron @ enron , clem\ncernosek / hou / ect @ ect , robert cotten / hou / ect @ ect , eddie janzen / na / enron @ enron ,\nmary poorman / na / enron @ enron , susan hadix / na / enron @ enron\ncc : gary a hanks / hou / ect @ ect , earl tisdale / hou / ect @ ect , james\nmckay / hou / ect @ ect , lauri a allen / hou / ect @ ect , daren j farmer / hou / ect @ ect ,\nedward d gottlob / hou / ect @ ect , liz bellamy / na / enron @ enron\nsubject : new meter number\ntetco enerfin is going to be assigned meter # 0439 . activity will be\nscheduled under this meter for october lst .\njackie young is assigned this meter . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.104+0000", "entityId": 3188, "properties": {"text": "Subject: contact number\ni can be reached at ( 228 ) 386 - 7111 on friday if you need me . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.108+0000", "entityId": 3189, "properties": {"text": "Subject: tenaska iv\nrick ,\nattached are drafts of the letters notifiying williams , apache and lone star\nthat ena will be acting as agent for tenaska iv . please review the letters\nand get back to me on the following items :\nperson to send the letters to at the respective companies\nfax # ' s to fax it to on friday\nname and adress of ena person to direct inquiries to\nname and phone number of person to direct questions re : the notification\nletter\npeople at tenaska to copy and their address and fax # ' s\ncomments on substance of the letter ( please review carefully my reference to\nwhat ena is acting as agent for - - it is specific as to noms , scheduling and\nbilling , not a general agency for all things under the contract - - is that\ncorrect ? )\nif you don ' t mind , please forward any email response to bob walker and leave\nme a voicemail . i will be out of the office friday , but checking voicemail\nand coordianting with bob to get these out .\nalso , once we send these letters out , we should be prepared for each of these\nentities to ask to see the agency agreement . they may , in fact , not be\ncomfortable dealing with ena with just this letter .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.113+0000", "entityId": 3190, "properties": {"text": "Subject: hpl nom for sept . 29 , 2000\n( see attached file : hplo 929 . xls )\n- hplo 929 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.117+0000", "entityId": 3191, "properties": {"text": "Subject: enron / hpl actuals for sept . 27 , 2000\nteco tap 67 . 500 / hpl gas daily ; 60 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.122+0000", "entityId": 3192, "properties": {"text": "Subject: expected volumes for october\ndaren ,\nper our phone conversation , please find the following information :\ncamden resources inc . , driscoll ranch # 1 , meter 9858 , price : hsc less $ 0 . 10\nnorth central oil corporation , mcmurrey - talbert # 2 , meter 5228 , price : hsc\nless $ 0 . 14\nkcs , dickenson , meter 9797 - susan smith will be preparing a formal ticket\nfor the buy and the sell for the month of october . we will be watching the\ngas specs on this package , and if all goes well , we will book the rest of the\nterm at the end of october .\non a go forward basis , for gas that we provide in the monthly nomination that\nwe know is not ticketed , can vance just include the price in the comments\nfield on each package to help you estimate for bid - week ? let us know if this\ninformation will be helpful in the future .\nthank you ,\nmelissa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.126+0000", "entityId": 3193, "properties": {"text": "Subject: re : october wellhead\nvance ,\ndeal # 420022 has been created and entered in sitara .\nbob\nvance l taylor\n09 / 28 / 2000 02 : 09 pm\nto : julie meyers / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\nsubject : re : october wellhead\nbob ,\nplease create and enter into sitara a ticket based on the following\ninformation :\ncounterparty meter volume price period\nheatherloch municipal utility district 6879 500 mmbtu / d 100 % if / hsc less\n$ 0 . 12 10 / 1 - 10 / 31\njulie meyers\n09 / 28 / 2000 10 : 52 am\ndaren j farmer\n09 / 28 / 2000 07 : 41 am", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.131+0000", "entityId": 3194, "properties": {"text": "Subject: re : october wellhead\njulie ,\nthe camden and north central contracts are new packages of gas that have yet\nto come on - line . once production commences , i will request that a spot deal\nbe put in place .\nbob ,\nplease create and enter into sitara a ticket based on the following\ninformation :\ncounterparty meter volume price period\nheatherloch municipal utility district 6879 500 mmbtu / d 100 % if / hsc less\n$ 0 . 12 10 / 1 - 10 / 31\njulie , please confirm .\nthanks ,\nvlt\nx 3 - 6353\njulie meyers\n09 / 28 / 2000 10 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , vance l taylor / hou / ect @ ect\nsubject : re : october wellhead\nthe heatherlock deal had a single transaction agreement attached to it . when\nthe contract ended the deal ended .\nthe other two i believe we just need a email from vance or donald setting up\na spot ticket .\nvance could you look into that ? do i have the wrong contract attached ? or\nis there a new contract . for camden & north central , are those just going to\nbe spot tickets ?\njulie\ndaren j farmer\n09 / 28 / 2000 07 : 41 am\nto : robert cotten / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc :\nsubject : october wellhead\ni have rolled or input the following deals for october .\ncrosstex 138553 2\nduke 418429 139\nhesco 394798 500\nswift 418431 322\ntri - union 418432 700\nvintage 403367 300\nwhiteoak 418434 96\nwhiting 418436 100\nso , i am showing that the only deals we have outstanding for oct are :\ncamden / 9858 3000\nheatherlock / 6879 544 ( previous deal # 133010 )\nnorth central / 5228 3000\njulie - please check these deals for the correct contract / terms . also ,\nplease look into heatherlock . vance is noming gas for this deal . however ,\nthe deal ticket does not have an evergreen flag . when i tried to roll another\nmonth , i got a message that another contract was needed .\nthanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.136+0000", "entityId": 3195, "properties": {"text": "Subject: re : october wellhead\nthe heatherlock deal had a single transaction agreement attached to it . when\nthe contract ended the deal ended .\nthe other two i believe we just need a email from vance or donald setting up\na spot ticket .\nvance could you look into that ? do i have the wrong contract attached ? or\nis there a new contract . for camden & north central , are those just going to\nbe spot tickets ?\njulie\ndaren j farmer\n09 / 28 / 2000 07 : 41 am\nto : robert cotten / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc :\nsubject : october wellhead\ni have rolled or input the following deals for october .\ncrosstex 138553 2\nduke 418429 139\nhesco 394798 500\nswift 418431 322\ntri - union 418432 700\nvintage 403367 300\nwhiteoak 418434 96\nwhiting 418436 100\nso , i am showing that the only deals we have outstanding for oct are :\ncamden / 9858 3000\nheatherlock / 6879 544 ( previous deal # 133010 )\nnorth central / 5228 3000\njulie - please check these deals for the correct contract / terms . also ,\nplease look into heatherlock . vance is noming gas for this deal . however ,\nthe deal ticket does not have an evergreen flag . when i tried to roll another\nmonth , i got a message that another contract was needed .\nthanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.140+0000", "entityId": 3196, "properties": {"text": "Subject: re : big cowboy for august\nmary :\nis the issue below confirmed volumes versus actual flow ? the large variance\nbetween confirmed and actuals began in june 2000 where 30 mmbtu was scheduled\nfor dix ranch and zero for the big cowboy and big cowboy # 2 wells . it\nappears that the volumes for these wells were scheduled at despain where\n985 , 350 mmbtu was confirmed . this well has never flowed this much volume ,\nand in june 2000 it flowed approximately 320 , 000 mmbtu . do we actually have\nsupport ( i . e we talked with someone or have a nom sheet ) for the 985 , 350\nmmbtu that was entered into mops as confirmed ? this trend of \" nothing \" being\nconfirmed at these three wells continued until july 2000 . in august 2000\nthis scenario changed and 612 , 388 was confirmed at dix ranch and nothing was\nscheduled at the big cowboy and big cowboy # 2 wells .\nfrom reading your memo below it also appears that more volume is flowing at\nthese wells that we expected . if the issue is an actual increase in the\nvolumes flowing at these wells , i would suggest that you call our gas\nmeasurement department and ask them to audit coral ' s charts . coral may be is\ncalculating the volumes incorrectly .\nthis could also be an allocations issue . the allocation as it is in the\nsystem today closely agrees with the allocation statement that i receive\nmonthly from karen lambert at tejas . the only differences between the tejas\nschedule and what is in mops are the acock production and gain or loss which\nare not scheduled and therefore not allocated . i know that you are working\non the acock production and tom acton and i are working on the gain / loss .\ntom will tell me how to path the gas so that i can set up accounting\narrangements for april 1999 forward . scheduling will have analyze and\npossibly rework january through march 1999 because these months were\noriginally set up in pops .\ni want to help , so if i have missed the issue ( s ) would you please clarify it\nor them for me and let me know if i need to do anything for you .\nthanks ,\nfred\ntom acton @ enron\n09 / 28 / 2000 08 : 10 am\nto : fred boas / hou / ect @ ect\ncc :\nsubject : big cowboy for august\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 09 / 28 / 2000 08 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman\n09 / 27 / 2000 03 : 56 pm\nto : daren j farmer / hou / ect @ ect , tom acton / corp / enron @ enron\ncc : clem cernosek / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : big cowboy for august\ndaren & tom ,\nbeginning with august production , i noticed that big cowboy , into king ranch\nappeared to be flowing approximately 9 m over the nomination / day . per a\nconversation i had with fred boas today , i discovered that two wells with\nzero noms flowed a considerable volume .\nthey are as follows :\nrocher big cowboy ( 27002 ) - 42 , 000 approx .\nbig cowboy # 2 ( 27003 - 84 , 000 approx .\ntotal flow : 126 , 000 mm ' s , more or less\ni think that this may be part of the production increase which we are trying\nto account for , in addition to the acock production at the briscoe well which\ncame on in august . please let me know what you think . i would like to make\nsure that we are capturing our purchases correctly for both accounting and\nour economics .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.145+0000", "entityId": 3197, "properties": {"text": "Subject: tenaska iv\nrick ,\nattached are drafts of the letters notifiying williams , apache and lone star\nthat ena will be acting as agent for tenaska iv . please review the letters\nand get back to me on the following items :\nperson to send the letters to at the respective companies\nfax # ' s to fax it to on friday\nname and adress of ena person to direct inquiries to\nname and phone number of person to direct questions re : the notification\nletter\npeople at tenaska to copy and their address and fax # ' s\ncomments on substance of the letter ( please review carefully my reference to\nwhat ena is acting as agent for - - it is specific as to noms , scheduling and\nbilling , not a general agency for all things under the contract - - is that\ncorrect ? )\nif you don ' t mind , please forward any email response to bob walker and leave\nme a voicemail . i will be out of the office friday , but checking voicemail\nand coordianting with bob to get these out .\nalso , once we send these letters out , we should be prepared for each of these\nentities to ask to see the agency agreement . they may , in fact , not be\ncomfortable dealing with ena with just this letter .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.149+0000", "entityId": 3198, "properties": {"text": "Subject: oct noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 09 / 28 / 2000\n04 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 09 / 28 / 2000 04 : 21 : 00 pm\nto : ami _ chokshi @ enron . com\ncc :\nsubject : oct noms\n( see attached file : hpl - oct . xls )\n- hpl - oct . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.154+0000", "entityId": 3199, "properties": {"text": "Subject: shell meters , effective 9 / 28 / 00\nper gas control , shell has requested that we lower meter 1581 by 5 m and\nincrease 1095 by 5 m ; net effect is zero . please let me know if the deal\nneeds to be adjusted to reflect the change .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.159+0000", "entityId": 3200, "properties": {"text": "Subject: shell meters for october\ni have confirmed with rusty at shell for october . expected flows by meter\nare as follows :\n1060 - east low pressure : 35 m\n1061 - west low pressure : om\n1095 - shell south : 40 m\n1581 - shell high pressure : 15 m\nthe numbers may flip around in a couple of weeks , after they bring some units\nback on at meter 1581 . we need to just be sure that they keep a rate between\npoints of 90 m / day .\nplease let me know if you have any questions , comments .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.163+0000", "entityId": 3201, "properties": {"text": "Subject: i will be out next week\nimbalances :\ni would like us to continue to pursue channel / el paso / tenngasco for our\npayback . they got our cashout number last week , where do they stand .\nagain , i think robert is an ally and i do not want to irritate him but\nthings will not get any better in the future . we need to resolve this\nimbalance . can we net some of these contracts ?\ni like mary poorman ' s report ; however i have questions :\nhow can we miss black marlin so completely ? do we agree with this imbalance ?\ncan we net all the chevron and dynegi contracts together for payback to\nkeith once we get the ar issue solved ?\nwhere do we stand on the columbia energy resolution ?\nwhere do we stand on the ngpl reconcilliation ?\nduke energy 206 is still a problem .\ndo we need all these amoco contracts they have 8 , that seems like a large\nnumber to me , can we net some of them ?\nare we charging enough for the swing we get at the paper plant on the entex\ncontract ?\nis there a way to keep tejas in line at southern union this winter ? that\nmeter will really swing then and i do not know how much line pack they have\nthe right to use .\ncan we net the corpus christi gas marketing and all the tejas / coral / gulf\nenergy / shell imbalances down ? how is the reconcillitation going ?\ncan we smash the entex and the reliant contracts together so we can get rid\nof some of these contracts ? they have 9 , that seems like a lot to me .\ngulfmark is gone down the road can we check with someone about this\ncontract , it seems like we should be able to net these volumes against some\nwhere we are owed ?\nis this lone star 213 imbalance real , if so how do we resolve ?\nwhere did the exxon imbalance come from ?\ndo we need 5 texaco transportation contracts , can we get rid of some ?\ncan we combine the vastar and the southern imbalances ?\nwhat is the webb / duval do , can we get rid of it , combine this with midcon ,\nhow old is this imbalnce ?\nmick update the compressor fuel on the p / l but the new numbers do not seem to\ntranslate up to the profit calculation ? can we do something about this ?\ni thought the imbalance report i got this wed was pretty sad . some of the\ncolumns did not add and there seemed to be a lot of missing information . can\nwe resolve this ?\ni am concerned about our capacity positons in the future , we are going to\nhave to work on a better way to check our positions .\ni had a meeting with tom shelton and our representative to the rrc , james\nmann , the rrc is concerned about this winter and they have asked us to\ncompile a list of customers we will cut based upon the priority we filed with\nthe rrc several years ago . lauri will have a copy of the priority list . we\nneed to compile this list and get tom and james comfortable with the\nprocess . the last thing we need is the rrc hammering on us , when can we get\nthis list ? i think we should be able to get something out of the contract\nsystem . jackie morgan is who i would approach .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.169+0000", "entityId": 3202, "properties": {"text": "Subject: cornhusker contract information\nrick ,\nattached are completed letters to the parties requested . as you will note\nthere are two letters to lone star and two letters for apache . since you are\nsending these electronically to michael mazowita for him to obtain the\nsignature of rick vicens , please have copies of the executed letters sent to\nsandi braband ' s attention . these letters will have to be printed on\nappropriate letterhead and copies sent to the cc ' s at the bottom of each\nletter .\nif you have any questions , please let me know .\nbob walker\nsr . legal specialist", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.173+0000", "entityId": 3203, "properties": {"text": "Subject: cornhusker contact information - revised\napache\nvernon tiger\nphone : 713 - 296 - 6617\nfax : 713 - 296 - 6319\n2000 post oak blvd . # 100\nhouston , tx 77056 - 4400\nlone star pipeline\nlisa mcauliff ( contracts ) wilma easter ( scheduling )\nphone : 214 - 875 - 5224 phone : 214 - 875 - 3296\nfax : 214 - 875 - 5134 fax : 214 - 875 - 3810\n301 s . harwood # 801 n\ndallas , tx 75201\nwilliams energy\njeff goforth\nphone : 918 - 573 - 8125\nfax : 918 - 573 - 1530\npo box 2848\ntulsa , ok 74101\ncinergy marketing & trading ( agent for apache )\nlisa hughes\nphone : 281 - 583 - 6279\nfax : 281 - 583 - 4353\n616 fm 1960 w # 800\nhouston , tx 77090\n( note : cinergy will be moving downtown next month )\nwhite pine energy , llc\nmichael mazowita - director of asset mgmt\nphone : 248 - 442 - 4823\nfax : 248 - 477 - 5729\ncell : 248 - 345 - 4002\n19436 auburndale street\nlivonia , mi 48152\ncleburne plant\nmike gough - plant manager ken riesz - operations supervisor\nphone : 817 - 641 - 5041 phone : same\nfax : 817 - 641 - 5042\ntenaska iv texas partners\n831 sparks drive\ncleburne , tx 76031", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.182+0000", "entityId": 3204, "properties": {"text": "Subject: re : cornhusker contact information\ni still need the contact name , phone number and address for the ena contact\nand a name for the the letter for them to contact with questions . these were\nquestions 3 and 4 on the original list from sandi .\nthanks .\nbob .\ndaren j farmer\n09 / 29 / 2000 09 : 36 am\nto : sandi m braband / hou / ect @ ect , robert walker / hou / ect @ ect , garrick\nhill / hou / ect @ ect , brian vass / hou / ect @ ect , john griffith / corp / enron @ enron ,\ncharles ward / corp / enron @ enron , dan lyons / hou / ect @ ect , john king / hou / ect @ ect\ncc :\nsubject : cornhusker contact information\nplease see below .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 09 / 29 / 2000\n09 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n09 / 29 / 2000 08 : 56 am\nto : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , stacey\nneuweiler / hou / ect @ ect\ncc :\nsubject : cornhusker contact information\nlone star pipeline\nlisa mcauliff ( contracts ) wilma easter ( scheduling )\nphone : 214 - 875 - 5224 phone : 214 - 875 - 3296\nfax : 214 - 875 - 5134 fax : 214 - 875 - 3810\n301 s . harwood # 801 n\ndallas , tx 75201\nwilliams energy\njeff goforth\nphone : 918 - 573 - 8125\nfax : 918 - 573 - 1530\npo box 2848\ntulsa , ok 74101\ncinergy marketing & trading ( agent for apache )\nlisa hughes\nphone : 281 - 583 - 6279\nfax : 281 - 583 - 4353\n616 fm 1960 w # 800\nhouston , tx 77090\n( note : cinergy will be moving downtown next month )\nwhite pine energy , llc\nmichael mazowita - director of asset mgmt\nphone : 248 - 442 - 4823\nfax : 248 - 477 - 5729\ncell : 248 - 345 - 4002\n19436 auburndale street\nlivonia , mi 48152", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.189+0000", "entityId": 3205, "properties": {"text": "Subject: cornhusker contact information\nlone star pipeline\nlisa mcauliff ( contracts ) wilma easter ( scheduling )\nphone : 214 - 875 - 5224 phone : 214 - 875 - 3296\nfax : 214 - 875 - 5134 fax : 214 - 875 - 3810\n301 s . harwood # 801 n\ndallas , tx 75201\nwilliams energy\njeff goforth\nphone : 918 - 573 - 8125\nfax : 918 - 573 - 1530\npo box 2848\ntulsa , ok 74101\ncinergy marketing & trading ( agent for apache )\nlisa hughes\nphone : 281 - 583 - 6279\nfax : 281 - 583 - 4353\n616 fm 1960 w # 800\nhouston , tx 77090\n( note : cinergy will be moving downtown next month )\nwhite pine energy , llc\nmichael mazowita - director of asset mgmt\nphone : 248 - 442 - 4823\nfax : 248 - 477 - 5729\ncell : 248 - 345 - 4002\n19436 auburndale street\nlivonia , mi 48152\ncleburne plant\nmike gough - plant manager ken riesz - operations supervisor\nphone : 817 - 641 - 5041 phone : same\nfax : 817 - 641 - 5042\ntenaska iv texas partners\n831 sparks drive\ncleburne , tx 76031", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.194+0000", "entityId": 3206, "properties": {"text": "Subject: neon discussion october 4\nhere is this upcoming week ' s discussion material ! ?\n?\nbobby\n- neon measuring success lesson 3 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.198+0000", "entityId": 3207, "properties": {"text": "Subject: tenaska iv\nbob :\ni understand from sandi that you ' ll be handling this in her absence today .\ni ' ve numbered her questions in the attached e - mail and can provide the\nfollowing :\ndaren farmer to respond\ndaren farmer to respond\ndaren farmer to respond\ndaren farmer to respond\ncopies should go to :\nnancy stivers\ntenaska , inc .\n1044 north 115 th street , suite 400\nomaha , ne 68154 - 4446\nfax : ( 402 ) 691 - 9717\nlarry pearson\ntenaska , inc .\n1044 north 115 th street , suite 400\nomaha , ne 68154 - 4446\nfax : ( 402 ) 691 - 9552\nform and substance of the notices look fine . . . you should check with dan lyons\non the signatures .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 09 / 29 / 2000 08 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sandi m braband on 09 / 28 / 2000 07 : 24 pm\nto : robert walker / hou / ect @ ect\ncc : garrick hill / hou / ect @ ect\nsubject : tenaska iv\nbob ,\ni intended you to be copied on this - -\n- - - - - forwarded by sandi m braband / hou / ect on 09 / 28 / 2000 07 : 23 pm - - - - -\nsandi m braband\n09 / 28 / 2000 07 : 22 pm\nto : garrick hill / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : tenaska iv\nrick ,\nattached are drafts of the letters notifiying williams , apache and lone star\nthat ena will be acting as agent for tenaska iv . please review the letters\nand get back to me on the following items :\nperson to send the letters to at the respective companies\nfax # ' s to fax it to on friday\nname and adress of ena person to direct inquiries to\nname and phone number of person to direct questions re : the notification\nletter\npeople at tenaska to copy and their address and fax # ' s\ncomments on substance of the letter ( please review carefully my reference to\nwhat ena is acting as agent for - - it is specific as to noms , scheduling and\nbilling , not a general agency for all things under the contract - - is that\ncorrect ? )\nif you don ' t mind , please forward any email response to bob walker and leave\nme a voicemail . i will be out of the office friday , but checking voicemail\nand coordianting with bob to get these out .\nalso , once we send these letters out , we should be prepared for each of these\nentities to ask to see the agency agreement . they may , in fact , not be\ncomfortable dealing with ena with just this letter .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.202+0000", "entityId": 3208, "properties": {"text": "Subject: enron / hpl actuals for sept . 28 , 2000\nteco tap 60 . 000 / enron ; 90 . 000 . hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.207+0000", "entityId": 3209, "properties": {"text": "Subject: hpl nom for sept . 30 , 2000\n( see attached file : hplo 930 . xls )\n- hplo 930 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.211+0000", "entityId": 3210, "properties": {"text": "Subject: re : mtr 6063 - mokeen lateral\nvance ,\ndeal # 421856 has been created and entered in sitara .\nbob\nvance l taylor\n09 / 29 / 2000 10 : 31 am\nto : robert cotten / hou / ect @ ect\ncc : jennifer martinez / hou / ect @ ect , lisa hesse / hou / ect @ ect , julie\nmeyers / hou / ect @ ect , sabrae zajac / hou / ect @ ect , susan smith / hou / ect @ ect , donald\np reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : mtr 6063 - mokeen lateral\nbob ,\njennifer martinez struck a deal with hesco ( who apparently is the marketer of\ngmt ' s production ) to purchase gas at meter 6063 in the name of hplc . please\ncreate and submit a \" spot \" ticket in sitara based upon the following\ninformation :\ncounterparty meter volume price period\nhesco gathering oil co . 6063 300 mmbtu / d 100 % if / hsc less $ 0 . 095 6 / 1 -\n10 / 31\njulie please confirm .\nshould you have any questions , please give me a call .\nthanks ,\nvlt\nx 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.216+0000", "entityId": 3211, "properties": {"text": "Subject: cornhusker contract information\nrick ,\nattached are completed letters to the parties requested . as you will note\nthere are two letters to lone star and two letters for apache . since you are\nsending these electronically to michael mazowita for him to obtain the\nsignature of rick vicens , please have copies of the executed letters sent to\nsandi braband ' s attention . these letters will have to be printed on\nappropriate letterhead and copies sent to the cc ' s at the bottom of each\nletter .\nif you have any questions , please let me know .\nbob walker\nsr . legal specialist", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.220+0000", "entityId": 3212, "properties": {"text": "Subject: cornhusker contact information - revised\napache\nvernon tiger\nphone : 713 - 296 - 6617\nfax : 713 - 296 - 6319\n2000 post oak blvd . # 100\nhouston , tx 77056 - 4400\nlone star pipeline\nlisa mcauliff ( contracts ) wilma easter ( scheduling )\nphone : 214 - 875 - 5224 phone : 214 - 875 - 3296\nfax : 214 - 875 - 5134 fax : 214 - 875 - 3810\n301 s . harwood # 801 n\ndallas , tx 75201\nwilliams energy\njeff goforth\nphone : 918 - 573 - 8125\nfax : 918 - 573 - 1530\npo box 2848\ntulsa , ok 74101\ncinergy marketing & trading ( agent for apache )\nlisa hughes\nphone : 281 - 583 - 6279\nfax : 281 - 583 - 4353\n616 fm 1960 w # 800\nhouston , tx 77090\n( note : cinergy will be moving downtown next month )\nwhite pine energy , llc\nmichael mazowita - director of asset mgmt\nphone : 248 - 442 - 4823\nfax : 248 - 477 - 5729\ncell : 248 - 345 - 4002\n19436 auburndale street\nlivonia , mi 48152\ncleburne plant\nmike gough - plant manager ken riesz - operations supervisor\nphone : 817 - 641 - 5041 phone : same\nfax : 817 - 641 - 5042\ntenaska iv texas partners\n831 sparks drive\ncleburne , tx 76031", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.225+0000", "entityId": 3213, "properties": {"text": "Subject: re : cornhusker contact information\ni still need the contact name , phone number and address for the ena contact\nand a name for the the letter for them to contact with questions . these were\nquestions 3 and 4 on the original list from sandi .\nthanks .\nbob .\ndaren j farmer\n09 / 29 / 2000 09 : 36 am\nto : sandi m braband / hou / ect @ ect , robert walker / hou / ect @ ect , garrick\nhill / hou / ect @ ect , brian vass / hou / ect @ ect , john griffith / corp / enron @ enron ,\ncharles ward / corp / enron @ enron , dan lyons / hou / ect @ ect , john king / hou / ect @ ect\ncc :\nsubject : cornhusker contact information\nplease see below .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 09 / 29 / 2000\n09 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n09 / 29 / 2000 08 : 56 am\nto : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , stacey\nneuweiler / hou / ect @ ect\ncc :\nsubject : cornhusker contact information\nlone star pipeline\nlisa mcauliff ( contracts ) wilma easter ( scheduling )\nphone : 214 - 875 - 5224 phone : 214 - 875 - 3296\nfax : 214 - 875 - 5134 fax : 214 - 875 - 3810\n301 s . harwood # 801 n\ndallas , tx 75201\nwilliams energy\njeff goforth\nphone : 918 - 573 - 8125\nfax : 918 - 573 - 1530\npo box 2848\ntulsa , ok 74101\ncinergy marketing & trading ( agent for apache )\nlisa hughes\nphone : 281 - 583 - 6279\nfax : 281 - 583 - 4353\n616 fm 1960 w # 800\nhouston , tx 77090\n( note : cinergy will be moving downtown next month )\nwhite pine energy , llc\nmichael mazowita - director of asset mgmt\nphone : 248 - 442 - 4823\nfax : 248 - 477 - 5729\ncell : 248 - 345 - 4002\n19436 auburndale street\nlivonia , mi 48152", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.230+0000", "entityId": 3214, "properties": {"text": "Subject: cornhusker contact information\nlone star pipeline\nlisa mcauliff ( contracts ) wilma easter ( scheduling )\nphone : 214 - 875 - 5224 phone : 214 - 875 - 3296\nfax : 214 - 875 - 5134 fax : 214 - 875 - 3810\n301 s . harwood # 801 n\ndallas , tx 75201\nwilliams energy\njeff goforth\nphone : 918 - 573 - 8125\nfax : 918 - 573 - 1530\npo box 2848\ntulsa , ok 74101\ncinergy marketing & trading ( agent for apache )\nlisa hughes\nphone : 281 - 583 - 6279\nfax : 281 - 583 - 4353\n616 fm 1960 w # 800\nhouston , tx 77090\n( note : cinergy will be moving downtown next month )\nwhite pine energy , llc\nmichael mazowita - director of asset mgmt\nphone : 248 - 442 - 4823\nfax : 248 - 477 - 5729\ncell : 248 - 345 - 4002\n19436 auburndale street\nlivonia , mi 48152\ncleburne plant\nmike gough - plant manager ken riesz - operations supervisor\nphone : 817 - 641 - 5041 phone : same\nfax : 817 - 641 - 5042\ntenaska iv texas partners\n831 sparks drive\ncleburne , tx 76031", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.235+0000", "entityId": 3215, "properties": {"text": "Subject: tenaska iv\nbob :\ni understand from sandi that you ' ll be handling this in her absence today .\ni ' ve numbered her questions in the attached e - mail and can provide the\nfollowing :\ndaren farmer to respond\ndaren farmer to respond\ndaren farmer to respond\ndaren farmer to respond\ncopies should go to :\nnancy stivers\ntenaska , inc .\n1044 north 115 th street , suite 400\nomaha , ne 68154 - 4446\nfax : ( 402 ) 691 - 9717\nlarry pearson\ntenaska , inc .\n1044 north 115 th street , suite 400\nomaha , ne 68154 - 4446\nfax : ( 402 ) 691 - 9552\nform and substance of the notices look fine . . . you should check with dan lyons\non the signatures .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 09 / 29 / 2000 08 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sandi m braband on 09 / 28 / 2000 07 : 24 pm\nto : robert walker / hou / ect @ ect\ncc : garrick hill / hou / ect @ ect\nsubject : tenaska iv\nbob ,\ni intended you to be copied on this - -\n- - - - - forwarded by sandi m braband / hou / ect on 09 / 28 / 2000 07 : 23 pm - - - - -\nsandi m braband\n09 / 28 / 2000 07 : 22 pm\nto : garrick hill / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : tenaska iv\nrick ,\nattached are drafts of the letters notifiying williams , apache and lone star\nthat ena will be acting as agent for tenaska iv . please review the letters\nand get back to me on the following items :\nperson to send the letters to at the respective companies\nfax # ' s to fax it to on friday\nname and adress of ena person to direct inquiries to\nname and phone number of person to direct questions re : the notification\nletter\npeople at tenaska to copy and their address and fax # ' s\ncomments on substance of the letter ( please review carefully my reference to\nwhat ena is acting as agent for - - it is specific as to noms , scheduling and\nbilling , not a general agency for all things under the contract - - is that\ncorrect ? )\nif you don ' t mind , please forward any email response to bob walker and leave\nme a voicemail . i will be out of the office friday , but checking voicemail\nand coordianting with bob to get these out .\nalso , once we send these letters out , we should be prepared for each of these\nentities to ask to see the agency agreement . they may , in fact , not be\ncomfortable dealing with ena with just this letter .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.239+0000", "entityId": 3216, "properties": {"text": "Subject: opm survey\nas communicated to you in an email dated september 19 , 2000 , we have\ndeveloped an easier and more efficient method of handling the operations\npricing model hours survey using microsoft access . the new & improved survey\nis ready for your input for the month of september .\nwhat to do :\n1 ) attached is a reference document that lets you know the purpose of the\nopm hours survey , prerequisites to using the tool , helpful hints and contact\ninformation . please open and read .\n2 ) click on the attached link to access the opm survey . please select \" ok \"\nat the warning message that appears and continue on to the database . if you\nhave any questions / comments , please contact suzanne nicholie at ext . 5 - 7341 .\nthe opm team is available to support you while using this new tool . during\nthe next couple of days , one of the opm team members will be contacting each\nof you to see if you need help or have any questions .\nwe are asking for a quick turn around of the completion of the survey and\nalthough it is month end , quarter end and the planning process is near\ncompletion , please complete the opm survey using the database by end of day ,\nfriday , october 6 .\nthanks ,\njames scribner", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.244+0000", "entityId": 3217, "properties": {"text": "Subject: opm survey help sheet\nhi daren ,\nthe attached spreadsheet could be used to help you in the collection of the\nhours for your group prior to entering into the database sent to you by james\nscribner . it includes a place for your fte ' s , hours by position & activity\nand the activity definitions for your cost center . please let me know if you\nhave any questions .\nthanks ,\nsuzanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.249+0000", "entityId": 3218, "properties": {"text": "Subject: hplc / ocean energy inc . 09 / 99 purchase\ndaren , there are five hplc purchase deals for 09 / 99 from ocean energy inc .\nthey were craig falbaum ' s deals . a person who is no longer in my group\nsuspended payment for these deals . gary suggested that i contact you and see\nif you have any insight as to why the deals might have been suspended , or\nknow anything that might help . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.254+0000", "entityId": 3219, "properties": {"text": "Subject: september deal inactivation in sitara\ncurrently , prior month deals are inactivated in sitara for portfolio\npurposes on the 10 th of the month .\nfor system efficiencies we would like to inactivate september deals this\nweekend if possible . this will have no affect on volume feedback .\na system enhancement is being worked on so that we would not have to try to\ninactivate earlier than normal for next month .\nplease contact me if this timing would cause you any problems .\nthank you\nruss\nx 37386", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.259+0000", "entityId": 3220, "properties": {"text": "Subject: enron / hpl actuals for september 29 - october 1 , 2000 - revision # 1\nfriday , september 29 , 2000\nteco tap 16 . 187 / enron ; 94 . 230 / hpl gas daily\nhpl ls katy no flow\nsaturday , september 30 , 2000\nteco tap 47 . 917 / hpl gas daily\nhpl ls katy no flow\nsunday , october 1 , 2000\nteco tap 45 . 000 / enron ; 7 . 083 / hpl iferc\nhpl ls katy 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.264+0000", "entityId": 3221, "properties": {"text": "Subject: txu noms . for 10 / 3 / 2000\nattached are the txu nomination for tuesday , oct . 3 , 2000 .\n( see attached file : hpll 003 . xls )\n- hpll 003 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.269+0000", "entityId": 3222, "properties": {"text": "Subject: enron / hpl actuals for september 29 - october 1 , 2000\nfriday , september 29 , 2000\nteco tap 16 . 187 / enron ; 94 . 230 / hpl gas daily\nhpl ls katy no flow\nsaturday , september 30 , 2000\nteco tap 50 . 000 / hpl gas daily\nhpl ls katy no flow\nsunday , october 1 , 2000\nteco tap 45 . 000 / enron ; 7 . 083 / hpl iferc\nhpl ls katy 15 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.275+0000", "entityId": 3223, "properties": {"text": "Subject: meter 9707\ndaren - meter 9707 has flow for oct . 1 ( 1 . 459 mmbtu ) . deal # 125786 was used\nfor sept . 2000 . could you please extend the deal or have a new one\ncreated ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.280+0000", "entityId": 3224, "properties": {"text": "Subject: updated for october\nhere ya go . if anything is missing , please let me know .\nplease make sure that you are sending it to people in your group .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.287+0000", "entityId": 3225, "properties": {"text": "Subject: hpl meter # 1428 - sepo 0\nwe had a deal with beaumont in sepo 0 . . . . sitara 380722 . there are swing\n( 380725 ) and buyback ( 380727 ) tickets associated with this deal .\nfor the three days september 16 , 17 and 18 only , any volumes over 20 , 000\nmmbtu per day need to go to a different swing deal ticket , with a different\ncounterparty . i ' ve set this deal ticket up - it is sitara # 423794\nsorry to make y ' all go back and re - assign volumes .\nlet me know if any problems or questions .\nlee\next . 3 . 5923", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.294+0000", "entityId": 3226, "properties": {"text": "Subject: meter 1553 ; equistar\nplease check this meter back to the first , the deal volume is zero and it is\npathed for 5 m .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.301+0000", "entityId": 3227, "properties": {"text": "Subject: re : shell meters for october\nshell has made the following adjustment : 1581 = 10 m ; 1095 = 45 . net volume\nis still 90 m", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.306+0000", "entityId": 3228, "properties": {"text": "Subject: tetco / hpl ( enerfin ) meter # 986892\nstep i .\nromeo : please do step 1 today , 10 / 4 / 00 .\n1 . please change the confirmed noms to zero for all contracts that have be\nnominated for period 1 / 1 / 00 thru 10 / 31 / 00 for the above meter .\n2 . change the allocation method to \" not allocatable \" effective 1 / 1 / 99 .\n3 . please reallocate the meter for period 1 / 1 / 99 thru 10 / 31 / 00 .\n4 . call me after the above tasks have been completed .\nstep ii .\nsherlyn : please check the following tommorrow , 10 / 5 / 00 .\n1 verify with settlements that the zero bav adjustment were received for\nall contract activities at meter 986892 for period 1 / 1 / 99 thru 9 / 30 / 00 .\n2 . after verification is complete , please call me .\nstep iii .\ndonna : i will call you tomorrow , 10 / 5 / 00 to inform when you can make the\nfollowing changes :\n1 . change the meter # and drn # at facility # 501026 . this facility should\nbe trade and nom \" yes \" .\n2 . change the meter # and drn # at facility # 515136 . this facility should\nbe trade and nom \" no \" .\n3 . after completion , please call me as well as romeo ( x - 34544 ) .\nstep iv .\nromeo : upon receiving a call from donna :\n1 . please make the appropriate changes or corrections in pops system for the\nfacility changes made by global facilities dept . my understanding is that\nthese changes can not be done automatically .\n2 . upon completion , please call me .\nstep v .\njackie :\n1 . tomorrow , 10 / 05 / 00 , after i am informed that romeo has made his changes ,\ni will let you know and you may begin scheduling meter # 0980439 which is the\nmeter replacing # 0986892 .\n2 . after completion , please let me know .\n* * * * * * * *\ngary :\nthis could create some problems for gas control , because all confirmed\nvolumes will be zeroed including october , 2000 activities at meter 986892\ntoday ( 10 / 4 / 00 ) . this should correct itself within 24 thru 48 hours at\nmeter # 980439 .\ndaren :\nthis could also create some issues for you , but remember , these issues should\nclear within 24 to 48 hours .\nvictor :\nthis is just for your information , since this should not create and changes\nfor you .\nif anyone has any questions , please feel free to call me at x - 3665 o .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.310+0000", "entityId": 3229, "properties": {"text": "Subject: re : hplc / ocean energy inc . 09 / 99 purchase\nthanks daren , i just found the answer this afternoon . we paid seagull .\nocean energy bought seagull , and pam boxx included this deal with her net to\nseagull . we just need to move the suspense amount . thanks .\ndaren j farmer\n10 / 03 / 2000 05 : 04 pm\nto : cynthia hakemack / hou / ect @ ect\ncc :\nsubject : re : hplc / ocean energy inc . 09 / 99 purchase\ni have no idea why payment would be suspended . i don ' t remember having any\nproblems with ocean energy . sorry .\nd\ncynthia hakemack\n10 / 02 / 2000 05 : 19 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : hplc / ocean energy inc . 09 / 99 purchase\ndaren , there are five hplc purchase deals for 09 / 99 from ocean energy inc .\nthey were craig falbaum ' s deals . a person who is no longer in my group\nsuspended payment for these deals . gary suggested that i contact you and see\nif you have any insight as to why the deals might have been suspended , or\nknow anything that might help . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.315+0000", "entityId": 3230, "properties": {"text": "Subject: eastrans nomination change effective 10 / 4 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy for 10 / 4 / 00 .\nthe redeliveries wil be 0 as well .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.320+0000", "entityId": 3231, "properties": {"text": "Subject: duke energy field deal 157288 8 / 00\ndaren :\ni am taking over the duke account from katherine and am having trouble with\n8 / 00 production . it looks like we have some spot deals included in the\nexchange deal 157288 . i think days 9 - 31 , which are priced at gd - 0 . 10 ,\nneed to be moved to a new ticket if they are spot . let me know if you\nagree . also , can you confirm for me that days 8 / 5 and 8 / 6 are suppose to be\nexchange ? the sale volume for those two days was zero , so there was no\nexchange . we have not received any statements from duke yet , so there is\nnothing to verify our volumes .\nyou may also want to look at sept . 2000 for deal 157288 . it looks like spot\ndeals are being included in the exchange deal . those will need to be moved\nto a new ticket if they are spot .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.325+0000", "entityId": 3232, "properties": {"text": "Subject: enron / hpl actuals for october 2 , 2000\nteco tap 60 . 000 / enron ; 40 . 000 / hpl iferc\nls hpl lsk ic 15 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.330+0000", "entityId": 3233, "properties": {"text": "Subject: hpl nom for october 4 , 2000\n( see attached file : hpll 004 . xls )\n- hpll 004 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.335+0000", "entityId": 3234, "properties": {"text": "Subject: re : meter 9707\ni left vance a voice mail message yesterday but he was out sick . he called\nme back and said there shouldn ' t be any flow at meter 9707 and there wasn ' t a\ndeal in place with united oil & minerals .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 10 / 03 / 2000 01 : 15\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 10 / 03 / 2000 11 : 39 am\nto : vance l taylor / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , aimee lannou / hou / ect @ ect\nsubject : re : meter 9707\nvance ,\ndid you find out anything about the purchase from united oil & minerals at\nmeter 9707 ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 10 / 03 / 2000 11 : 34\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 10 / 03 / 2000 11 : 26 am\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : meter 9707\nfyi - there is flow for 10 / 2 as well .\nal\ndaren j farmer\n10 / 02 / 2000 02 : 23 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : meter 9707\ni rolled this deal for day one in october only .\nbob - please check with vance on this deal . has it terminated or should it\nroll for october . i don ' t think that vance nom ' d anything .\nd\naimee lannou 10 / 02 / 2000 10 : 49 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc :\nsubject : meter 9707\ndaren - meter 9707 has flow for oct . 1 ( 1 . 459 mmbtu ) . deal # 125786 was used\nfor sept . 2000 . could you please extend the deal or have a new one\ncreated ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.339+0000", "entityId": 3235, "properties": {"text": "Subject: meter 1603 - 10 / 1 - 10 / 2\nfyi - meter 1603 has a total flow of 48 . 667 on a total nom of 40 . 000 . deal #\n380664 .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.344+0000", "entityId": 3236, "properties": {"text": "Subject: re : meter 9707\nvance ,\ndid you find out anything about the purchase from united oil & minerals at\nmeter 9707 ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 10 / 03 / 2000 11 : 34\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 10 / 03 / 2000 11 : 26 am\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : meter 9707\nfyi - there is flow for 10 / 2 as well .\nal\ndaren j farmer\n10 / 02 / 2000 02 : 23 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : meter 9707\ni rolled this deal for day one in october only .\nbob - please check with vance on this deal . has it terminated or should it\nroll for october . i don ' t think that vance nom ' d anything .\nd\naimee lannou 10 / 02 / 2000 10 : 49 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc :\nsubject : meter 9707\ndaren - meter 9707 has flow for oct . 1 ( 1 . 459 mmbtu ) . deal # 125786 was used\nfor sept . 2000 . could you please extend the deal or have a new one\ncreated ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.349+0000", "entityId": 3237, "properties": {"text": "Subject: re : meter 9707\nfyi - there is flow for 10 / 2 as well .\nal\ndaren j farmer\n10 / 02 / 2000 02 : 23 pm\nto : aimee lannou / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect\nsubject : re : meter 9707\ni rolled this deal for day one in october only .\nbob - please check with vance on this deal . has it terminated or should it\nroll for october . i don ' t think that vance nom ' d anything .\nd\naimee lannou 10 / 02 / 2000 10 : 49 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc :\nsubject : meter 9707\ndaren - meter 9707 has flow for oct . 1 ( 1 . 459 mmbtu ) . deal # 125786 was used\nfor sept . 2000 . could you please extend the deal or have a new one\ncreated ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.353+0000", "entityId": 3238, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.358+0000", "entityId": 3239, "properties": {"text": "Subject: re : tetco / hpl ( enerfin ) meter # 986892\nstep # 1 has been completed .\nsherlyn , verify step # 2 tomorrow and call me when completed .\njackie , verify the nom on oct 4 & 5 . it appears there is still a volume for\nmeter 6892 until oct 6 .\nif there are any questions or issues , contact me at 37649 . i am the contact\nperson while clem is out ( through friday ) .\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 10 / 04 / 2000 01 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nromeo d ' souza\n10 / 04 / 2000 12 : 40 pm\nto : clem cernosek / hou / ect @ ect\ncc : michael eiben / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : re : tetco / hpl ( enerfin ) meter # 986892\nclem ,\ni have completed setting the confirm = 0 for 986892 and reallocated\nall the days . they are all zero now , however 10 / 4 / 2000 and 10 / 5 / 2000\nstill have a non - zero bav , these should get set to 0 by 10 / 6 . since\nallocation will not allocate these days till 10 / 6 gas date .\nr . d\nclem cernosek\n10 / 03 / 2000 05 : 19 pm\nto : donna consemiu / hou / ect @ ect , romeo d ' souza / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect , jackie young / hou / ect @ ect\ncc : michael eiben / hou / ect @ ect , rita wynne / hou / ect @ ect , pat\nclynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect , victor lamadrid / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : tetco / hpl ( enerfin ) meter # 986892\nstep i .\nromeo : please do step 1 today , 10 / 4 / 00 .\n1 . please change the confirmed noms to zero for all contracts that have be\nnominated for period 1 / 1 / 00 thru 10 / 31 / 00 for the above meter .\n2 . change the allocation method to \" not allocatable \" effective 1 / 1 / 99 .\n3 . please reallocate the meter for period 1 / 1 / 99 thru 10 / 31 / 00 .\n4 . call me after the above tasks have been completed .\nstep ii .\nsherlyn : please check the following tommorrow , 10 / 5 / 00 .\n1 verify with settlements that the zero bav adjustment were received for\nall contract activities at meter 986892 for period 1 / 1 / 99 thru 9 / 30 / 00 .\n2 . after verification is complete , please call me .\nstep iii .\ndonna : i will call you tomorrow , 10 / 5 / 00 to inform when you can make the\nfollowing changes :\n1 . change the meter # and drn # at facility # 501026 . this facility should\nbe trade and nom \" yes \" .\n2 . change the meter # and drn # at facility # 515136 . this facility should\nbe trade and nom \" no \" .\n3 . after completion , please call me as well as romeo ( x - 34544 ) .\nstep iv .\nromeo : upon receiving a call from donna :\n1 . please make the appropriate changes or corrections in pops system for the\nfacility changes made by global facilities dept . my understanding is that\nthese changes can not be done automatically .\n2 . upon completion , please call me .\nstep v .\njackie :\n1 . tomorrow , 10 / 05 / 00 , after i am informed that romeo has made his changes ,\ni will let you know and you may begin scheduling meter # 0980439 which is the\nmeter replacing # 0986892 .\n2 . after completion , please let me know .\n* * * * * * * *\ngary :\nthis could create some problems for gas control , because all confirmed\nvolumes will be zeroed including october , 2000 activities at meter 986892\ntoday ( 10 / 4 / 00 ) . this should correct itself within 24 thru 48 hours at\nmeter # 980439 .\ndaren :\nthis could also create some issues for you , but remember , these issues should\nclear within 24 to 48 hours .\nvictor :\nthis is just for your information , since this should not create and changes\nfor you .\nif anyone has any questions , please feel free to call me at x - 3665 o .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.363+0000", "entityId": 3240, "properties": {"text": "Subject: duke cashout entries 5 / 00 and 6 / 00\nhere are the cashout amounts for 5 / 00 and 6 / 00 for duke energy field\nservices . we also need to enter a demand fee to account for the excess of\n103 % charge on the sale side . i have those amounts below . let me know if\nyou have any questions .\nmay 2000\ndeal 157278 $ 2 , 486 . 00 excess charge\n$ 2 . 38 cashout\ndeal 157288 $ 71 . 85 cashout\njune 2000\ndeal 157278 $ 920 . 21 excess charge\n$ 208 . 88 cashout\n( there is no purchase cashout for 6 / 00 )\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.367+0000", "entityId": 3241, "properties": {"text": "Subject: enron / hpl acutals for october 3 , 2000\nteco tap 60 . 000 / enron ; 68 . 333 / hpl iferc\nls hpl lsk ic 15 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.372+0000", "entityId": 3242, "properties": {"text": "Subject: hpl nom for october 5 , 2000\n( see attached file : hpll 005 . xls )\n- hpll 005 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.376+0000", "entityId": 3243, "properties": {"text": "Subject: industrials daily transaction spreadsheet\nthe address of my daily transaction account \" taccount \" of the industrial\nterm / swing / buyback deals is o : \\ logistics \\ hadix \\ hadix taccount octo 0 . also\nincluded is the hardy st . meter for daily balance monitoring .\nthe deals are separated by shipper i . e . houston pipeline and ena . the sheet\nis password protected so you must view it as read only . please let me know\nif you have any questions or suggestions .\nsusan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.381+0000", "entityId": 3244, "properties": {"text": "Subject: out of office\nplease note that i will be out of the office on friday , 10 / 6 / 00 . in my\nabsence tom acton will be handling the oasis & lonestar interconnects at\nkaty , and mary poorman will handle the nomination to oasis and cornhusker if\nnecessary , but it is already nominated for the weekend .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.387+0000", "entityId": 3245, "properties": {"text": "Subject: re : tetco / hpl ( enerfin ) meter # 986892\nsteps 2 - 4 have been done .\nmary , since jackie is out tomorrow , you will need to verify the following\ninformation has flowed across to pops tomorrow morning ( check meter catalog ) .\nmeter facility drn\n986892 515136 60217\n980439 501026 286715\nif there is a problem , then you will need to get with romeo .\nif everything is okay , you will need to let sherlyn know so she can set up\naccounting arrangements on meter 439 and you will need to enter them into\npops .\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 10 / 05 / 2000 04 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhoward b camp\n10 / 04 / 2000 01 : 06 pm\nto : sherlyn schumack / hou / ect @ ect , jackie young / hou / ect @ ect , rita\nwynne / hou / ect @ ect , donna consemiu / hou / ect @ ect , michael eiben / hou / ect @ ect ,\nrita wynne / hou / ect @ ect , daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect ,\nclem cernosek / hou / ect @ ect , howard b camp / hou / ect @ ect\ncc :\nsubject : re : tetco / hpl ( enerfin ) meter # 986892\nstep # 1 has been completed .\nsherlyn , verify step # 2 tomorrow and call me when completed .\njackie , verify the nom on oct 4 & 5 . it appears there is still a volume for\nmeter 6892 until oct 6 .\nif there are any questions or issues , contact me at 37649 . i am the contact\nperson while clem is out ( through friday ) .\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hou / ect on 10 / 04 / 2000 01 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nromeo d ' souza\n10 / 04 / 2000 12 : 40 pm\nto : clem cernosek / hou / ect @ ect\ncc : michael eiben / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : re : tetco / hpl ( enerfin ) meter # 986892\nclem ,\ni have completed setting the confirm = 0 for 986892 and reallocated\nall the days . they are all zero now , however 10 / 4 / 2000 and 10 / 5 / 2000\nstill have a non - zero bav , these should get set to 0 by 10 / 6 . since\nallocation will not allocate these days till 10 / 6 gas date .\nr . d\nclem cernosek\n10 / 03 / 2000 05 : 19 pm\nto : donna consemiu / hou / ect @ ect , romeo d ' souza / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect , jackie young / hou / ect @ ect\ncc : michael eiben / hou / ect @ ect , rita wynne / hou / ect @ ect , pat\nclynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , gary a\nhanks / hou / ect @ ect , victor lamadrid / hou / ect @ ect , howard b camp / hou / ect @ ect\nsubject : tetco / hpl ( enerfin ) meter # 986892\nstep i .\nromeo : please do step 1 today , 10 / 4 / 00 .\n1 . please change the confirmed noms to zero for all contracts that have be\nnominated for period 1 / 1 / 00 thru 10 / 31 / 00 for the above meter .\n2 . change the allocation method to \" not allocatable \" effective 1 / 1 / 99 .\n3 . please reallocate the meter for period 1 / 1 / 99 thru 10 / 31 / 00 .\n4 . call me after the above tasks have been completed .\nstep ii .\nsherlyn : please check the following tommorrow , 10 / 5 / 00 .\n1 verify with settlements that the zero bav adjustment were received for\nall contract activities at meter 986892 for period 1 / 1 / 99 thru 9 / 30 / 00 .\n2 . after verification is complete , please call me .\nstep iii .\ndonna : i will call you tomorrow , 10 / 5 / 00 to inform when you can make the\nfollowing changes :\n1 . change the meter # and drn # at facility # 501026 . this facility should\nbe trade and nom \" yes \" .\n2 . change the meter # and drn # at facility # 515136 . this facility should\nbe trade and nom \" no \" .\n3 . after completion , please call me as well as romeo ( x - 34544 ) .\nstep iv .\nromeo : upon receiving a call from donna :\n1 . please make the appropriate changes or corrections in pops system for the\nfacility changes made by global facilities dept . my understanding is that\nthese changes can not be done automatically .\n2 . upon completion , please call me .\nstep v .\njackie :\n1 . tomorrow , 10 / 05 / 00 , after i am informed that romeo has made his changes ,\ni will let you know and you may begin scheduling meter # 0980439 which is the\nmeter replacing # 0986892 .\n2 . after completion , please let me know .\n* * * * * * * *\ngary :\nthis could create some problems for gas control , because all confirmed\nvolumes will be zeroed including october , 2000 activities at meter 986892\ntoday ( 10 / 4 / 00 ) . this should correct itself within 24 thru 48 hours at\nmeter # 980439 .\ndaren :\nthis could also create some issues for you , but remember , these issues should\nclear within 24 to 48 hours .\nvictor :\nthis is just for your information , since this should not create and changes\nfor you .\nif anyone has any questions , please feel free to call me at x - 3665 o .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.393+0000", "entityId": 3246, "properties": {"text": "Subject: duke cashout entries 7 / 00 and 8 / 00\nhere are the cashout entries for 7 / 00 and 8 / 00 .\njuly 2000\ndeal 157278 ( $ 759 . 75 ) excess charge\n$ 33 , 992 . 14 cashout\n$ 33 , 232 . 39 total\n( there is no purchase cashout for 7 / 00 . )\naug 2000\ndeal 157278 $ 90 . 18 cashout\n$ 6 , 745 . 50 excess charge\n$ 6 , 835 . 68 total\ndeal 157288 $ 9 , 575 . 45 cashout\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.398+0000", "entityId": 3247, "properties": {"text": "Subject: re : duke cashout entries 5 / 00 and 6 / 00\nthanks . it came through . i should have 7 / 00 and 8 / 00 for you tomorrow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.405+0000", "entityId": 3248, "properties": {"text": "Subject: re : duke cashout entries 5 / 00 and 6 / 00\ni am having trouble pulling in the demand charge for 6 / 00 on deal 157278 for\n$ 1 , 129 . 09 . the only thing that is different from may is that the demand\nvolume is 0 . i think it needs to be a 1 for the charge to come through .\nplease take a look .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.412+0000", "entityId": 3249, "properties": {"text": "Subject: tenaska iv outage update\nplease note that the cleburne plant is expected to come back up on sat .\nmorning the 7 th of october . i have already submitted the nominations to\nlonestar for the weekend ( 7 th - 9 th ) , taking all gas to the plant . if they\ncome up early , we have imbalance gas that will serve them . i have informed\nmary of this , and will give her a copy of the noms , # ' s and contacts , etc . . . .\nthanks ,\nmark\nx 33396\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 10 / 05 / 2000 12 : 06\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike mazowita\n10 / 05 / 2000 10 : 39 am\nto : mark mccoy / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect\nsubject : tenaska iv outage update\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike mazowita / corp / enron on 10 / 05 / 2000\n10 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" mike gough \" on 10 / 05 / 2000 10 : 28 : 10 am\nplease respond to\nto : \" mazowita , mike \"\ncc : \" scarborough , dan \" , \" ward , chuck \"\nsubject : tenaska iv outage update\nwe are finally beginning to put closure on our outage . it has been\nfrustrating to say the least . we are currently projecting a late friday or\nearly saturday morning startup barring any unseen problems .\nmg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.418+0000", "entityId": 3250, "properties": {"text": "Subject: tenaska iv outage update\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike mazowita / corp / enron on 10 / 05 / 2000\n10 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" mike gough \" on 10 / 05 / 2000 10 : 28 : 10 am\nplease respond to\nto : \" mazowita , mike \"\ncc : \" scarborough , dan \" , \" ward , chuck \"\nsubject : tenaska iv outage update\nwe are finally beginning to put closure on our outage . it has been\nfrustrating to say the least . we are currently projecting a late friday or\nearly saturday morning startup barring any unseen problems .\nmg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.422+0000", "entityId": 3251, "properties": {"text": "Subject: july pricing discrepancy : sell to tenaska marketing , deal # 399791\ndaren -\nsell to tenaska marketing\njuly deal # 399791\ntenaska is indicating that the sale for july 2000 should be priced at $ 3 . 56 .\ncould you confirm our sale price should have been $ 3 . 58 ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n10 / 05 / 2000 08 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkristen j hanson @ ect\n09 / 15 / 2000 09 : 37 am\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : cleburne plant\nfyi - the purchase invoices have arrived and were given to megan . please feel\nfree to call darren with any questions .\nthanks ,\nkris\ndaren j farmer\n09 / 13 / 2000 04 : 01 pm\nto : rita wynne / hou / ect @ ect , kristen j hanson / hou / ect @ ect , pat\nclynes / corp / enron @ enron , julie meyers / hou / ect @ ect , bob m hall / na / enron @ enron ,\ndavid baumbach / hou / ect @ ect , steve jackson / hou / ect @ ect , mark\nmccoy / corp / enron @ enron\ncc :\nsubject : cleburne plant\nwell , folks , the cleburne deal has started . the deal has not been finalized\nthrough legal . however , we were able to \" get between \" a few deals and make\nsome money before we finalized it . the cleburne plant was down 7 / 31 - 8 / 7 and\n8 / 31 . on these dates , we bought gas from tenaska iv texas partners and sold\nto anp and tenaska marketing . because things were not set up , i could not\nenter the deals until now . please review the following deals and settle with\nthe customers .\nbuy from tenaska iv\njuly 399763\naug 399773\nsell to tenaska marketing\njuly 399791\naug 399797\nsell to anp\naug 399814\nthe trading desk these are on is \" ena - im cleburne \" .\nkris - i have forwarded invoices from tenaska iv to you via intercompany\nmail . ( i received both invoices this week )\ni am sure there are questions , just give me a call . tanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.427+0000", "entityId": 3252, "properties": {"text": "Subject: tenaska iv texas partners , ltd .\nfyi . please pass this along as needed .\nrh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 10 / 05 / 2000 07 : 38\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndan lyons\n10 / 04 / 2000 06 : 45 pm\nto : garrick hill / hou / ect @ ect\ncc :\nsubject : tenaska iv texas partners , ltd .\nit has come to my attention that there is some confusion over the proper\nconventions for signature blocks for tenaska iv texas partners , ltd . and that\nvarious permutations have been used , to the result that there may be some\nconfusion among third parties .\nthere follows the proper signature block for the partnership . please see\nthat this is distributed to anyone who will be preparing documents for the\npartnership , including under our corporate services agreement with the owner\nof the managing partner of the partnership .\ntenaska iv texas partners , ltd .\nby : tenasksa iv partners , ltd . , its managing partner\nby : tenaska iv , inc , its managing partner\nmille grazi . . . . . . . . . . . . . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.435+0000", "entityId": 3253, "properties": {"text": "Subject: enron / hpl actuals for october 4 , 2000\nteco tap 60 . 000 / enron ; 70 . 000 / hpl iferc\nls hpl lsk ic 15 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.442+0000", "entityId": 3254, "properties": {"text": "Subject: hpl nom for october 6 , 2000\n( see attached file : hpll 006 . xls )\n- hpll 006 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.447+0000", "entityId": 3255, "properties": {"text": "Subject: contract obligations\ncharlie ,\nhere is a breakout for the volumes that have been paid on . we are off by\napproximately 20000 according to what was billed vs what was paid . could you\nperuse the worksheet for discrepancies . we are off by 20 , 000 in march\n( 28 th ) . our logs show that 20000 flowed on that day at ls ( meter 67 ) . i ' ve\nattached the email showing the revision for that day below . based on paid\namounts , the remaining obligations are as follows :\niferc 2 , 680 , 000\niferc + gas daily 6 , 895 , 252\nplease advise .\nregards ,\nami\nrevision # 1\nls hpl katy 20 . 000 / hpl gas daily\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n03 / 29 / 2000\n02 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n03 / 29 / 2000 11 : 09 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu , tim\npowell / lsp / enserch / us @ tu , daren . j . farmer @ enron . com ,\ngary . a . hanks @ enron . com , carlos . j . rodriguez @ enron . com ,\nearl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for march 28 , 2000\nteco tap 50 . 750 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.452+0000", "entityId": 3256, "properties": {"text": "Subject: tenaska iv outage update\nplease note that the cleburne plant is expected to come back up on sat .\nmorning the 7 th of october . i have already submitted the nominations to\nlonestar for the weekend ( 7 th - 9 th ) , taking all gas to the plant . if they\ncome up early , we have imbalance gas that will serve them . i have informed\nmary of this , and will give her a copy of the noms , # ' s and contacts , etc . . . .\nthanks ,\nmark\nx 33396\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 10 / 05 / 2000 12 : 06\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike mazowita\n10 / 05 / 2000 10 : 39 am\nto : mark mccoy / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect\nsubject : tenaska iv outage update\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike mazowita / corp / enron on 10 / 05 / 2000\n10 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" mike gough \" on 10 / 05 / 2000 10 : 28 : 10 am\nplease respond to\nto : \" mazowita , mike \"\ncc : \" scarborough , dan \" , \" ward , chuck \"\nsubject : tenaska iv outage update\nwe are finally beginning to put closure on our outage . it has been\nfrustrating to say the least . we are currently projecting a late friday or\nearly saturday morning startup barring any unseen problems .\nmg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.457+0000", "entityId": 3257, "properties": {"text": "Subject: tenaska iv outage update\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike mazowita / corp / enron on 10 / 05 / 2000\n10 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" mike gough \" on 10 / 05 / 2000 10 : 28 : 10 am\nplease respond to\nto : \" mazowita , mike \"\ncc : \" scarborough , dan \" , \" ward , chuck \"\nsubject : tenaska iv outage update\nwe are finally beginning to put closure on our outage . it has been\nfrustrating to say the least . we are currently projecting a late friday or\nearly saturday morning startup barring any unseen problems .\nmg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.462+0000", "entityId": 3258, "properties": {"text": "Subject: july pricing discrepancy : sell to tenaska marketing , deal # 399791\ndaren -\nsell to tenaska marketing\njuly deal # 399791\ntenaska is indicating that the sale for july 2000 should be priced at $ 3 . 56 .\ncould you confirm our sale price should have been $ 3 . 58 ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n10 / 05 / 2000 08 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkristen j hanson @ ect\n09 / 15 / 2000 09 : 37 am\nto : katherine herrera / corp / enron @ enron\ncc :\nsubject : re : cleburne plant\nfyi - the purchase invoices have arrived and were given to megan . please feel\nfree to call darren with any questions .\nthanks ,\nkris\ndaren j farmer\n09 / 13 / 2000 04 : 01 pm\nto : rita wynne / hou / ect @ ect , kristen j hanson / hou / ect @ ect , pat\nclynes / corp / enron @ enron , julie meyers / hou / ect @ ect , bob m hall / na / enron @ enron ,\ndavid baumbach / hou / ect @ ect , steve jackson / hou / ect @ ect , mark\nmccoy / corp / enron @ enron\ncc :\nsubject : cleburne plant\nwell , folks , the cleburne deal has started . the deal has not been finalized\nthrough legal . however , we were able to \" get between \" a few deals and make\nsome money before we finalized it . the cleburne plant was down 7 / 31 - 8 / 7 and\n8 / 31 . on these dates , we bought gas from tenaska iv texas partners and sold\nto anp and tenaska marketing . because things were not set up , i could not\nenter the deals until now . please review the following deals and settle with\nthe customers .\nbuy from tenaska iv\njuly 399763\naug 399773\nsell to tenaska marketing\njuly 399791\naug 399797\nsell to anp\naug 399814\nthe trading desk these are on is \" ena - im cleburne \" .\nkris - i have forwarded invoices from tenaska iv to you via intercompany\nmail . ( i received both invoices this week )\ni am sure there are questions , just give me a call . tanks .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.466+0000", "entityId": 3259, "properties": {"text": "Subject: tenaska iv texas partners , ltd .\nfyi . please pass this along as needed .\nrh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 10 / 05 / 2000 07 : 38\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndan lyons\n10 / 04 / 2000 06 : 45 pm\nto : garrick hill / hou / ect @ ect\ncc :\nsubject : tenaska iv texas partners , ltd .\nit has come to my attention that there is some confusion over the proper\nconventions for signature blocks for tenaska iv texas partners , ltd . and that\nvarious permutations have been used , to the result that there may be some\nconfusion among third parties .\nthere follows the proper signature block for the partnership . please see\nthat this is distributed to anyone who will be preparing documents for the\npartnership , including under our corporate services agreement with the owner\nof the managing partner of the partnership .\ntenaska iv texas partners , ltd .\nby : tenasksa iv partners , ltd . , its managing partner\nby : tenaska iv , inc , its managing partner\nmille grazi . . . . . . . . . . . . . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.471+0000", "entityId": 3260, "properties": {"text": "Subject: a computer and internet connection for you and your family\nas you know , technology is critical to enron ; it drives our success and will\ncontinue to do so in the future . technology has helped enron create new\nbusinesses like enron broadband services and enron net works , and it is\nresponsible for applications such as enrononline and enroncredit . com . you \u0001 , ve\nseen what technology can do at work . now we want you and your family to\nrealize its benefits at home .\nwith that in mind , we are excited to let you know that we are introducing the\nclickathome\nprogram , which will give each employee a computer for use at home . where\ntechnology permits , we will also subsidize an internet connection . with the\nclick of a mouse , a home computer plus internet access will put a world of\ninternet knowledge at your family \u0001 , s fingertips .\nwe have just signed an agreement with dell computer corporation to provide\nthe computer hardware . we wanted to let you know about the program now in\ncase you and your family were considering the purchase or upgrade of a home\ncomputer or internet connection in the next few months . the scope of\nclickathome includes the following :\n? basic package : dell desktop computer with a high - speed processor , floppy\ndisk drive , mouse , speakers , monitor , modem , cd - rom drive and windows 2000\nsoftware . employees will have the option to receive a subsidized internet\nconnection , including broadband , where commercially available .\n? participation : this program will be available to active regular full - time\nand regular part - time employees of enron and its wholly owned subsidiaries ;\nhowever , employees of some enron companies ( portland general electric , eott ,\nenron facility services ) may not be able to participate due to legal ,\naccounting , tax , labor or business reasons . eligibility includes being\nemployed at the time of implementation .\n? timing : u . s . employee sign - up will begin in early 2001 , with delivery of\nthe equipment and internet connection to follow shortly thereafter . delivery\nof equipment to participating non - u . s . employees is targeted for late 2001 .\ndetails about this program are still being finalized . to address some of\nyour initial questions , we \u0001 , ve posted a question - and - answer document on\nhttp : / / clickathome . enron . com . we will schedule an espeak session in the near\nfuture where you will have an opportunity to ask questions . or , you can\nsubmit your questions and comments to clickathome @ enron . com .\nwe are excited to extend our investment in technology to you and your\nfamily . we believe this program takes communication at enron to a new level\nby creating endless possibilities for you to experience and participate in\nthe broadband internet revolution . it is just another reason why we believe\nenron is a great place to work .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.476+0000", "entityId": 3261, "properties": {"text": "Subject: opm survey\nas a reminder , today is the deadline for completion of the opm survey . i am\nincluding the body of the email sent monday in this regards which includes\nthe reference document and the link to the survey . thanks for your help and\nhard work in this matter .\nopm survey email sent earlier :\nas communicated to you in an email dated september 19 , 2000 , we have\ndeveloped an easier and more efficient method of handling the operations\npricing model hours survey using microsoft access . the new & improved survey\nis ready for your input for the month of september .\nwhat to do :\n1 ) attached is a reference document that lets you know the purpose of the\nopm hours survey , prerequisites to using the tool , helpful hints and contact\ninformation . please open and read .\n2 ) click on the attached link to access the opm survey . please select \" ok \"\nat the warning message that appears and continue on to the database . if you\nhave any questions / comments , please contact suzanne nicholie at ext . 5 - 7341 .\nthe opm team is available to support you while using this new tool . during\nthe next couple of days , one of the opm team members will be contacting each\nof you to see if you need help or have any questions .\nwe are asking for a quick turn around of the completion of the survey and\nalthough it is month end , quarter end and the planning process is near\ncompletion , please complete the opm survey using the database by end of day ,\nfriday , october 6 .\nthanks ,\njames scribner", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.483+0000", "entityId": 3262, "properties": {"text": "Subject: re : duke cashout entries 7 / 00 and 8 / 00\nwe did take into account the price adjustments you made . the actual purchase\ncashout for 8 / 00 was $ 118 , 103 . 67 . your pricing took care of most of the\ncashout , but there was still a balance . the over delivery pricing per mmbtu\nin the contract is the difference between hsc spot - 0 . 05 and hsc index , so\ngd - 0 . 10 didn ' t quite cover the entire cashout . i have attached the calc\nsheet in case you need it .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.488+0000", "entityId": 3263, "properties": {"text": "Subject: discussion week of october 11\nhere ' s material for this coming wednesday night . ? next week we ' ll be\nstarting a new series of discussions based on some concepts discussed in the\nbook roaring lambs by bob briner . ? you might want to pick it up and read\nthrough it if interested .\n?\nbobby\n- neon measuring success 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.496+0000", "entityId": 3264, "properties": {"text": "Subject: enron / hpl actuals for october 5 , 2000\nteco tap 60 . 000 / enron ; 65 . 000 / hpl iferc\nls hpl lsk ic 15 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.503+0000", "entityId": 3265, "properties": {"text": "Subject: hpl nom for october 7 , 2000\n( see attached file : hpll 007 . xls )\n- hpll 007 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.509+0000", "entityId": 3266, "properties": {"text": "Subject: revised\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 10 / 06 / 2000\n04 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 10 / 06 / 2000 03 : 59 : 29 pm\nto : \" ami chokshi \"\ncc :\nsubject : revised\n( see attached file : hpl - oct . xls )\n- hpl - oct . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.514+0000", "entityId": 3267, "properties": {"text": "Subject: copano changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 10 / 06 / 2000\n10 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntroy _ a _ benoit @ reliantenergy . com on 10 / 06 / 2000 10 : 23 : 31 am\nto : \" ami chokshi \"\ncc :\nsubject : copano changes\n( see attached file : hpl - oct . xls )\n- hpl - oct . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.518+0000", "entityId": 3268, "properties": {"text": "Subject: enron / hpl actuals for 10 / 6 - 9 / 00\nenron / hpl actuals\nfriday , oct . 6 , 2000\nteco tap 60 . 000 / enron , 15 . 625 / hpl iferc\nhpl ls katy i . c . 15 . 000 / hpl iferc\nsaturday , oct . 7 , 2000\nteco tap 60 . 000 / enron , 85 . 000 / hpl iferc\nhpl ls katy i . c . 3 . 750 / hpl iferc\nsunday , oct , 8 , 2000\nteco tap 60 . 000 / enron , 90 . 000 / hpl iferc\nhpl ls katy i . c . 0 . 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.522+0000", "entityId": 3269, "properties": {"text": "Subject: txu nom . s for 10 / 10 / 00\nattached are txu fuel nominations for tuesday , october 10 , 2000 .\n( see attached file : hpll 010 . xls )\n- hpll 010 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.527+0000", "entityId": 3270, "properties": {"text": "Subject: intra day nom and forward until further notice . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 10 / 09 / 2000\n10 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 10 / 09 / 2000 10 : 17 : 08 am\nto : ami _ chokshi @ enron . com\ncc :\nsubject : intra day nom and forward until further notice . . .\n( see attached file : hpl - oct . xls )\n- hpl - oct . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.531+0000", "entityId": 3271, "properties": {"text": "Subject: koch midstream services co\ni have been billing koch midstream services co under ena for meters\nll - 1 - 0030 - comitas ( sitara # 144052 ) and ll - 1 - 0027 - volpe ( sitara # 144049 ) . my\nformer accounting contact at koch , michael thomas , said that koch sold these\nsouth texas assets to duke energy field services back in 1999 . michael faxed\na contract which i forwarded to cindy balfour flannigan in the contract\narea . cindy said she can ' t tie the deals in the contract to our system so\nshe can ' t recognize the assignment . cindy has left messages with koch , but\nshe has not been able to resolve the issue . koch is refusing to pay for\nthe gas and there is currently over a million dollars outstanding relating to\nthese deals . i need to find out whether koch or duke is responsible for\npaying for this gas . do you have any information regarding this issue ?\nthanks ,\ntina valadez\n3 - 7548\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 10 / 10 / 2000 10 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ami chokshi @ enron 10 / 09 / 2000 02 : 47 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject :\ntina ,\nwith regards ti the koch midstream , you could talk to daren farmer about it .\nalso , carlos rodriguez could help .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.536+0000", "entityId": 3272, "properties": {"text": "Subject: re : opm survey\nthanks for your spreadsheet . one thing i still need from you is what\ncommercial teams your group was supporting overall ? in addition , i noticed\nyou allocated 15 hours to the activity eso 02 - non routine trade monitoring &\nreporting . what commercial team ( s ) was this 15 hours spent supporting ?\nthanks !\nsuzanne\ndaren j farmer @ ect\n10 / 06 / 2000 05 : 42 pm\nto : james scribner / corp / enron @ enron , suzanne nicholie / corp / enron @ enron , shari\nmao / hou / ect @ ect\ncc :\nsubject : re : opm survey\ni had problems in getting the newest version of access . so , please see the\nattachement below related to the opm hours survey .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.541+0000", "entityId": 3273, "properties": {"text": "Subject: meter 0074\nliz or stacey - there is flow at meter 74 on 9 / 14 ( 499 dth ) . the deal for\nthis meter ( 400289 ) did not start until 9 / 15 . could one of you extend the\ndeal for this ? i would be greatly appreciated .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.545+0000", "entityId": 3274, "properties": {"text": "Subject: information regarding batch noms on aug 5 , 6 & 7 , 2000\ndaren :\ni am having trouble with 8 / 00 . the first issue is day 1 of the purchase at\nfuels cotton . we have two deals in sitara , spot deal 348951 and exchange\ndeal 157288 . you had said previously that we would know a spot deal had\noccurred by the new deal ticket and the different pricing . since there was a\nspot deal , we put all of the volume for day 1 on deal 348951 . duke says that\nday 1 was not a spot and that it should be on the exchange deal and priced at\ngd - 0 . 10 . the exchange deal is currently price at index - 0 . 05 . please let\nme know which deal we are suppose to use and what the price should be .\nthe second issue is the sale volume on deal 157278 for 8 / 00 . duke is telling\nme that we sold them a batch of gas on the 7 th , which we see , but that we are\nsuppose to prorate the gas over the 5 th , 6 th , and 7 th for the exchange . this\nis a problem since gas was not confirmed for the 5 th and 6 th and pipeline\nshows all of the gas on the 7 th . this is a daily swing meter which\nelectronically feeds into settlements . we don ' t normally change these\nmeters . if you intended for us to prorate this gas , i will need your ok . the\nemails below are from marta at duke notifying us of the change .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 10 / 10 / 2000\n03 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmkhenderson @ duke - energy . com on 10 / 10 / 2000 02 : 25 : 30 pm\nto : stacey . neuweiler @ enron . com , megan . parker @ enron . com\ncc : djdobb @ duke - energy . com\nsubject : information regarding batch noms on aug 5 , 6 & 7 , 2000\nread information below and see if this helps one of the unresolved problems\nfor august .\nmegan can you tell me how you arrived at the price for august 1 ? i do not\nknow why august 1 would be priced differently than the other days of the\nmonth when we had over deliveries for the fuel cotton valley gas . this is\npriced at hsc daily - . 10 per paragraph 3 of the contract . if a different\nprice was worked out with darren , i do not have record of it . darren is\nout until next week .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n10 / 10 / 2000 02 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n08 / 03 / 2000 11 : 26 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , donna c .\nspencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec ,\nconnie wester / easttexas / pefs / pec @ pec\ncc :\nsubject : more changes to eastrans nomination changes effective 8 / 4 / 00\nplease disregard the memo below and the following will apply for 8 / 4 / 00 :\ndeliveries to eastrans will be 7 , 800 mmbtu / dy\nredeliveries into hpl from fuels cotton valley\nfor 8 / 5 , 8 / 6 , & 8 / 7 ( saturday , sunday & monday ) deliveries to eastrans will\nbe 7 , 800 mmbtu / dy ( 23 , 400 mmbtu for 3 days ) . the deliveries of this gas\nwill occur in a batch on monday , 8 / 7 .\nredeliveries into hpl from fuels cotton valley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n08 / 03 / 2000 11 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n08 / 03 / 2000 08 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , donna c .\nspencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec ,\nconnie wester / easttexas / pefs / pec @ pec\ncc :\nsubject : eastrans nomination changes effective 8 / 4 / 00\nplease increase deliveries to eastrans to 30 , 000 mmbtu / dy effective 8 / 4 / 00\nthe redeliveries will be :\n7 , 800 from fuels cotton valley\n22 , 200 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.550+0000", "entityId": 3275, "properties": {"text": "Subject: rate for tenaska deal\ndaren ,\nwhen we met regarding the rate for the tenaska gas management agreement , you\nguys mentioned that it would be tied to an index - - could you restate for me\nhow that is to work - - it will start out 4 cents per mmbtu based on the greater\nof the volumes nominated through the supply contracts or the actual\ndeliveries to the plant . then the fee will vary month to month ? year to year ?\nbased on what index ?\nthanks ,\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.554+0000", "entityId": 3276, "properties": {"text": "Subject: re : cornhusker\ni meant to copy you guys on this\n- - - - - forwarded by sandi m braband / hou / ect on 10 / 10 / 2000 02 : 06 pm - - - - -\nsandi m braband\n10 / 10 / 2000 09 : 54 am\nto : garrick hill / hou / ect @ ect\ncc : dan lyons / hou / ect @ ect\nsubject : re : cornhusker\nrick ,\nbob hall , daren farmer and i met on thursday regarding the fee - - i have a very\nrough draft done and my plan is to revise and edit today and tomorrow .\nhowever , i spoke with dan lyons yesterday regarding some issues with the\nsupply contracts that concerned me and he agrees that we need to look into\nthem further . in addition , bob hall , daren and i thought we might could use a\nbrief tutorial on the structure of the transaction generally , the parties\ninvolved and their correct legal names and their relationship to enron . dan\nlyons has volunteered to give us that tutorial but will not be available\nuntil early next week when he and i will meet to discuss the supply contract\nissues as well . call me if you have any questions - -\nsandi\next . 35465\ngarrick hill\n10 / 10 / 2000 07 : 54 am\nto : sandi m braband / hou / ect @ ect , daren j farmer / hou / ect @ ect , john\ngriffith / corp / enron @ enron\ncc : charles ward / corp / enron @ enron , john king / hou / ect @ ect , mike\nmazowita / corp / enron @ enron\nsubject : cornhusker\nwhere are we on the gas agreement for the cleburne plant ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.559+0000", "entityId": 3277, "properties": {"text": "Subject: cornhusker\nwhere are we on the gas agreement for the cleburne plant ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.563+0000", "entityId": 3278, "properties": {"text": "Subject: enron / hpl actuals for october 9 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.568+0000", "entityId": 3279, "properties": {"text": "Subject: txu nom . s for 10 / 11 / 00\nattached please find the txu fuel nominations for wednesday , oct . 11 , 2000 .\n( see attached file : hpll 011 . xls )\n- hpll 011 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.572+0000", "entityId": 3280, "properties": {"text": "Subject: rate for tenaska deal\ndaren ,\nwhen we met regarding the rate for the tenaska gas management agreement , you\nguys mentioned that it would be tied to an index - - could you restate for me\nhow that is to work - - it will start out 4 cents per mmbtu based on the greater\nof the volumes nominated through the supply contracts or the actual\ndeliveries to the plant . then the fee will vary month to month ? year to year ?\nbased on what index ?\nthanks ,\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.577+0000", "entityId": 3281, "properties": {"text": "Subject: re : cornhusker\ni meant to copy you guys on this\n- - - - - forwarded by sandi m braband / hou / ect on 10 / 10 / 2000 02 : 06 pm - - - - -\nsandi m braband\n10 / 10 / 2000 09 : 54 am\nto : garrick hill / hou / ect @ ect\ncc : dan lyons / hou / ect @ ect\nsubject : re : cornhusker\nrick ,\nbob hall , daren farmer and i met on thursday regarding the fee - - i have a very\nrough draft done and my plan is to revise and edit today and tomorrow .\nhowever , i spoke with dan lyons yesterday regarding some issues with the\nsupply contracts that concerned me and he agrees that we need to look into\nthem further . in addition , bob hall , daren and i thought we might could use a\nbrief tutorial on the structure of the transaction generally , the parties\ninvolved and their correct legal names and their relationship to enron . dan\nlyons has volunteered to give us that tutorial but will not be available\nuntil early next week when he and i will meet to discuss the supply contract\nissues as well . call me if you have any questions - -\nsandi\next . 35465\ngarrick hill\n10 / 10 / 2000 07 : 54 am\nto : sandi m braband / hou / ect @ ect , daren j farmer / hou / ect @ ect , john\ngriffith / corp / enron @ enron\ncc : charles ward / corp / enron @ enron , john king / hou / ect @ ect , mike\nmazowita / corp / enron @ enron\nsubject : cornhusker\nwhere are we on the gas agreement for the cleburne plant ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.582+0000", "entityId": 3282, "properties": {"text": "Subject: cornhusker\nwhere are we on the gas agreement for the cleburne plant ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.589+0000", "entityId": 3283, "properties": {"text": "Subject: 12 th nom going back to 70 into midcon\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 10 / 10 / 2000\n03 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 10 / 10 / 2000 03 : 25 : 55 pm\nto : janet . h . wallis @ enron . com , ami _ chokshi @ enron . com\ncc :\nsubject : 12 th nom going back to 70 into midcon\n( see attached file : hpl - oct . xls )\n- hpl - oct . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.593+0000", "entityId": 3284, "properties": {"text": "Subject: union carbide - seadrift\ndaren\nsitara # 415267 @ meter # 1332 - look like they ' ll be taking 10 , 000 / d at best\nfor the rest of the month - problems with their gas turbine , they are waiting\non ge to fix it which will take several weeks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.598+0000", "entityId": 3285, "properties": {"text": "Subject: eastrans nomination change effective 10 / 12 / 00\nplease increase deliveries to eastrans to 7900 mmbtu / dy effectuve 10 / 12 / 00 .\nthe redeliveries will be 7900 mmbtu / dy from fuels cotton valley into hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.605+0000", "entityId": 3286, "properties": {"text": "Subject: gas management agreement\ndaren ,\nwill there ever be a need to utilize transport to get supply to the plant\nother than through the 2 lone star agreements ? if so , would we be using\ntenaska transport agreements or ena ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.613+0000", "entityId": 3287, "properties": {"text": "Subject: enron / hpl actuals for october 10 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.619+0000", "entityId": 3288, "properties": {"text": "Subject: hpl nom for october 12 , 2000\n( see attached file : hplnl 012 . xls )\n- hplnl 012 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.624+0000", "entityId": 3289, "properties": {"text": "Subject: re : meter 5848\nvance ,\nwhat is the price and volume that should be entered for october ? apparently ,\nengage changed their name to coastal was the reason the deal ticket was\ncreated that way .\nbob\nvance l taylor\n10 / 11 / 2000 02 : 47 pm\nto : robert cotten / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , aimee\nlannou / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : re : meter 5848\nbob ,\nyou are correct , i did request a ticket at meter 5848 as a spot purchase .\nhowever , i ' m not sure why the ticket was created in the name of coastal ; it\nshould have been in the name engage energy us , lp . as for october , hplc is\nbuying this package of gas on a \" spot \" basis and a ticket should be created\nand entered in to sitara .\nthanks ,\nvlt\nx 3 - 6353\nenron north america corp .\nfrom : robert cotten 10 / 11 / 2000 11 : 12 am\nto : vance l taylor / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , aimee\nlannou / hou / ect @ ect\nsubject : meter 5848\nvance ,\non august 28 , you sent a request to enter a spot ticket for september\nproduction on engage energy , meter # 5848 , 240 mmbtu / d . the ticket was\nentered as a purchase from coastal merchant energy , l . p . a volume of 304\nmmbtu flowed on meter # 5848 on 10 / 1 / 00 . should there be a spot purchase at\nmeter # 5848 in october ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 10 / 11 / 2000 10 : 45\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 10 / 11 / 2000 10 : 02 am\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : meter 5848\nbob - there is flow at meter 5848 for 10 / 1 . in sept . it was on a gathering\ncontract on deal # 382621 for coastal merchant energy . could you please\ncheck to see if there should be a deal for october ?\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.629+0000", "entityId": 3290, "properties": {"text": "Subject: gas management agreement\ndaren ,\nwill there ever be a need to utilize transport to get supply to the plant\nother than through the 2 lone star agreements ? if so , would we be using\ntenaska transport agreements or ena ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.633+0000", "entityId": 3291, "properties": {"text": "Subject: duke energy deal # 387571\nplease verify if duke deal # 387571 should be on hpl meter # 1040 . this\npurchase normally occurs on centana meter # 77455 . last month , duke deal\n# 351653 was changed due to the meter .\nplease let me know if you have any questions .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.638+0000", "entityId": 3292, "properties": {"text": "Subject: hello again\nhi darren ,\ndid you successfully receive the information i sent to you .\ni would appreciate a response so that i know your needs .\ni am sure your schedule is as busy as mine and i am\ncommitted to providing dedicated service to all my clients\nand in return i request your loyalty .\nplease direct your questions and concerns in my direction\nand let me know in what areas you would like my assistance .\nplease send me your reply so that i may better ascertain\nyour needs . thank you .\niona alphonso\nalways in tune with your needs\noh , by the way . . . if you know of someone thinking about\nbuying or selling a home , please call me with their name and\nnumber - thanks a million ! !\nprudential , gary greene realtors\n3910 fm 1960 west , suite 100\nhouston , texas 77068\nvoice mail : 281 - 857 - 2485 x 535\npager : 281 - 551 - 6549\noffice : 281 - 444 - 5140\nfax : 281 - 444 - 0630\nweb site : http : / / www . ionaalphonso . com\nresume : http : / / www . har . com / ionaalphonso\ngary greene web site : http : / / www . garygreene . com\nplease view my monthly newsletter at\nhttp : / / homeownernews . com / c / ionaalphonso", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.642+0000", "entityId": 3293, "properties": {"text": "Subject: enron / hpl actuals for october 11 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.647+0000", "entityId": 3294, "properties": {"text": "Subject: eastrans nomination change effective 9 / 14 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy for 9 / 14 / 00 and\nmaintain at 0 until otherwise notified .\nthe redeliveries will be 0 as well .\nfuels cotton valley gas will be valued per paragraph 3 of the contract\nprice ( per mmbtu ) section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.653+0000", "entityId": 3295, "properties": {"text": "Subject: neon discussion october 18\nhere ' s this weeks material . ? there ' s a handout at the end that if you want\nto use it you ' ll need to make copies of . ?\n?\nsee you ,\nbobby\n- neon roaring 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.658+0000", "entityId": 3296, "properties": {"text": "Subject: txu noms . for 10 / 14 - 16 / 00\nattached , please find the txu nominations for the weekend of october 14 - 16 ,\n2000 .\nno scheduled flows\n( see attached file : hplnl 014 . xls )\n- hplnl 014 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.662+0000", "entityId": 3297, "properties": {"text": "Subject: re : enron / hpl actuals for october 11 , 2000 - revision\nplease note that the pricing allocation of volumes for october 11 , 2000 should\nbe changed as follows .\nteco tap 40 . 000 / enron ; 25 . 209 / hpl iferc ; 84 . 791 / hpl gas daily\nthe total nomination of 775 . 000 subject to the iferc pricing was completed on\noctober 11 , 2000 . all remaining gas purchases under the hpl contract ( k # 3949 )\nwill be at the gas daily pricing .\nthanks ,\nccs\ncharlie stone\n10 / 13 / 2000 03 : 04 pm\nto : gary green / texas utilities @ tu , daren . j . farmer @ enron . com ,\ngary . a . hanks @ enron . com , carlos . j . rodriguez @ enron . com ,\nearl . tisdale @ enron . com , ami . chokshi @ enron . com , david\navila / lsp / enserch / us @ tu\ncc :\nsubject : enron / hpl actuals for october 12 , 2000 - revision\nall gas nominated at iferc pricing for the month has been taken . remaining\npurchases under k # 3949 will be at the gas daily pricing .\nteco tap 40 . 000 / enron ; 110 . 000 / hpl gas daily\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlie stone / texas utilities on\n10 / 13 / 2000\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngary green\n10 / 13 / 2000 10 : 04 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com , david avila / lsp / enserch / us @ tu\ncc :\nsubject : enron / hpl actuals for october 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.667+0000", "entityId": 3298, "properties": {"text": "Subject: enron / hpl actuals for october 12 , 2000 - revision\nall gas nominated at iferc pricing for the month has been taken . remaining\npurchases under k # 3949 will be at the gas daily pricing .\nteco tap 40 . 000 / enron ; 110 . 000 / hpl gas daily\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlie stone / texas utilities on\n10 / 13 / 2000\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngary green\n10 / 13 / 2000 10 : 04 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com ,\nami . chokshi @ enron . com , david avila / lsp / enserch / us @ tu\ncc :\nsubject : enron / hpl actuals for october 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.671+0000", "entityId": 3299, "properties": {"text": "Subject: enron / hpl actuals for october 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.676+0000", "entityId": 3300, "properties": {"text": "Subject: txu noms . for 10 / 14 - 16 / 00\nattached , please find the txu nominations for the weekend of october 14 - 16 ,\n2000 .\nno scheduled flows\n( see attached file : hplnl 014 . xls )\n- hplnl 014 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.680+0000", "entityId": 3301, "properties": {"text": "Subject: re : saxet canales meter 980437 for august , 2000\nsorry about that , i had some tech difficulty with the first version and the\nsubject line , which was pertinent , was not included .\nmary\n- good catch carlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.685+0000", "entityId": 3302, "properties": {"text": "Subject: re : october spot purchases\nvance ,\ndeal tickets as referenced below have been created and entered in sitara .\nbob\nvance l taylor\n10 / 11 / 2000 02 : 55 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : october spot purchases\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of october . this production will be purchased on a \" spot \"\nbasis and deal tickets should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price deal #\nwhiting petroleum corp 6523 200 mmbtu / d 91 % if / hsc 438322\nengage energy us , lp 5923 775 mmbtu / d 100 % if / hsc less $ 0 . 24 438332\nengage energy us , lp 5848 240 mmbtu / d 100 % if / hsc less $ 0 . 24 438338\nswift energy 2630 21 mmbtu / d 90 % if / hsc less $ 0 . 258 438340\nduke energy trading & marketing 6347 200 mmbtu / d 85 % if / hsc 438344\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.689+0000", "entityId": 3303, "properties": {"text": "Subject: hi darren\ndarren ,\ndid not hear back from you with regards the information i\nsent you . please keep in touch and let know how i can help\nyou in your home - hunting process . i would like to help you\nmake your moving experience a pleasant one .\nwith all good wishes ,\niona alphonso\nalways in tune with your needs\noh , by the way . . . if you know of someone thinking about\nbuying or selling a home , please call me with their name and\nnumber - thanks a million ! !\nprudential , gary greene realtors\n3910 fm 1960 west , suite 100\nhouston , texas 77068\nvoice mail : 281 - 857 - 2485 x 535\npager : 281 - 551 - 6549\noffice : 281 - 444 - 5140\nfax : 281 - 444 - 0630\nweb site : http : / / www . ionaalphonso . com\nresume : http : / / www . har . com / ionaalphonso\ngary greene web site : http : / / www . garygreene . com\nplease view my monthly newsletter at\nhttp : / / homeownernews . com / c / ionaalphonso", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.696+0000", "entityId": 3304, "properties": {"text": "Subject: re : koch midstream services co\ntina ,\nkoch never returned my calls . based on the contractual information , we may be\nputting ourselves in a risk area by ' assigning ' the deals without proper\ndocumentation . the documentation that was supplied did not refence any ena\nagreements , nor any specific meter numbers . if the purchase was indeed a\nmeter / well sale ; there should be documentation listing the meters acquired\nand the effective date . since we are apparently the supplier , the risk is not\nas substaintial as if we were the purchaser . however , without documentation\nwe are basically relying on the relationship btw koch & duke .\ncyndie\nena global contracts\ntina valadez @ ect\n10 / 16 / 2000 11 : 50 am\nto : daren j farmer / hou / ect @ ect\ncc : cyndie balfour - flanagan / corp / enron @ enron , kristen j hanson / hou / ect @ ect\nsubject : re : koch midstream services co\nplease change the sitara tickets dating back to january 2000 and let me know\nwhen you are finished .\nthank you ,\ntina valadez\ndaren j farmer\n10 / 16 / 2000 11 : 15 am\nto : tina valadez / hou / ect @ ect\ncc : carlos j rodriguez / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : re : koch midstream services co\nsince koch has told you that they sold the properties to duke , i would say\nthat duke should be paying us for the gas .\ni had heard that koch sold the properties to another counterparty , but i\nwasn ' t sure to whom . i either talked or left a message with someone in the\nsettlements area about two months ago about this after koch informed the\ntrader that they should not be getting the invoices . however , i never heard\nback from anyone .\nthis is related to the ces acquisition which came online the first of this\nyear . the deal info we had at the time had this sale booked to koch . i can\nchange the tickets in sitara to the duke counterparty ( or create new tickets )\ntoday if you need me to , so that we can get the invoice out the door . you\nwill still need to coordinate with the contract group in getting the correct\ncontract in place for the deal .\nd\ntina valadez\n10 / 10 / 2000 10 : 18 am\nto : carlos j rodriguez / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : koch midstream services co\ni have been billing koch midstream services co under ena for meters\nll - 1 - 0030 - comitas ( sitara # 144052 ) and ll - 1 - 0027 - volpe ( sitara # 144049 ) . my\nformer accounting contact at koch , michael thomas , said that koch sold these\nsouth texas assets to duke energy field services back in 1999 . michael faxed\na contract which i forwarded to cindy balfour flannigan in the contract\narea . cindy said she can ' t tie the deals in the contract to our system so\nshe can ' t recognize the assignment . cindy has left messages with koch , but\nshe has not been able to resolve the issue . koch is refusing to pay for\nthe gas and there is currently over a million dollars outstanding relating to\nthese deals . i need to find out whether koch or duke is responsible for\npaying for this gas . do you have any information regarding this issue ?\nthanks ,\ntina valadez\n3 - 7548\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 10 / 10 / 2000 10 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ami chokshi @ enron 10 / 09 / 2000 02 : 47 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject :\ntina ,\nwith regards ti the koch midstream , you could talk to daren farmer about it .\nalso , carlos rodriguez could help .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.700+0000", "entityId": 3305, "properties": {"text": "Subject: re : koch midstream services co\nplease change the sitara tickets dating back to january 2000 and let me know\nwhen you are finished .\nthank you ,\ntina valadez\ndaren j farmer\n10 / 16 / 2000 11 : 15 am\nto : tina valadez / hou / ect @ ect\ncc : carlos j rodriguez / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : re : koch midstream services co\nsince koch has told you that they sold the properties to duke , i would say\nthat duke should be paying us for the gas .\ni had heard that koch sold the properties to another counterparty , but i\nwasn ' t sure to whom . i either talked or left a message with someone in the\nsettlements area about two months ago about this after koch informed the\ntrader that they should not be getting the invoices . however , i never heard\nback from anyone .\nthis is related to the ces acquisition which came online the first of this\nyear . the deal info we had at the time had this sale booked to koch . i can\nchange the tickets in sitara to the duke counterparty ( or create new tickets )\ntoday if you need me to , so that we can get the invoice out the door . you\nwill still need to coordinate with the contract group in getting the correct\ncontract in place for the deal .\nd\ntina valadez\n10 / 10 / 2000 10 : 18 am\nto : carlos j rodriguez / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : koch midstream services co\ni have been billing koch midstream services co under ena for meters\nll - 1 - 0030 - comitas ( sitara # 144052 ) and ll - 1 - 0027 - volpe ( sitara # 144049 ) . my\nformer accounting contact at koch , michael thomas , said that koch sold these\nsouth texas assets to duke energy field services back in 1999 . michael faxed\na contract which i forwarded to cindy balfour flannigan in the contract\narea . cindy said she can ' t tie the deals in the contract to our system so\nshe can ' t recognize the assignment . cindy has left messages with koch , but\nshe has not been able to resolve the issue . koch is refusing to pay for\nthe gas and there is currently over a million dollars outstanding relating to\nthese deals . i need to find out whether koch or duke is responsible for\npaying for this gas . do you have any information regarding this issue ?\nthanks ,\ntina valadez\n3 - 7548\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 10 / 10 / 2000 10 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ami chokshi @ enron 10 / 09 / 2000 02 : 47 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject :\ntina ,\nwith regards ti the koch midstream , you could talk to daren farmer about it .\nalso , carlos rodriguez could help .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.709+0000", "entityId": 3306, "properties": {"text": "Subject: re : swift - october 2000 vols\ndone\ndaren j farmer\n10 / 16 / 2000 03 : 46 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : swift - october 2000 vols\njm ,\nthe message below is related to deal # 138094 . according to joan , october is\nthe last month for this deal . however , the evergreen flag is activated in\nsitara and a new line has been created for november . can you look into this\nplease ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 10 / 16 / 2000\n03 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos j rodriguez\n09 / 26 / 2000 08 : 27 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : swift - october 2000 vols\nf y i\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 09 / 26 / 2000\n08 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : joan m quick on 09 / 25 / 2000 06 : 01 pm\nsent by : joan quick\nto : carlos j rodriguez / hou / ect @ ect , susan d trevino / hou / ect @ ect , stella l\nmorris / hou / ect @ ect\ncc :\nsubject : swift - october 2000 vols\nthis is the last month we will be buying this gas ! ! ! !\nvpp 1 , 265 mmbtu / d\nxs 3 , 700 mmbtu / d\n- - - - - - - -\n4 , 965 mmbtu / d", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.716+0000", "entityId": 3307, "properties": {"text": "Subject: re : information regarding batch noms on aug 5 , 6 & 7 , 2000\nthat ' s fine . we will make the changes . however , this will change the\ncashout entries for 8 / 00 . i thought august was finished when i sent them to\nyou previously . sorry for the double work . i will get the new numbers to\nyou this afternoon .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.720+0000", "entityId": 3308, "properties": {"text": "Subject: re : rate for tenaska deal\ndaaah !\nsorry !\ndaren j farmer\n10 / 16 / 2000 05 : 57 pm\nto : sandi m braband / hou / ect @ ect\ncc :\nsubject : re : rate for tenaska deal\nconsumer price index\nfrom : sandi m braband on 10 / 16 / 2000 12 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : rate for tenaska deal\ndaren ,\nthanks - - while i ' m certain i should know , i must confess that i do not know\nwhat cpi stands for ? ? ?\nsandi\ndaren j farmer\n10 / 16 / 2000 11 : 39 am\nto : sandi m braband / hou / ect @ ect , bob m hall / na / enron @ enron\ncc :\nsubject : re : rate for tenaska deal\nsandi ,\nsorry for just now getting back with you . i was out last week .\nthe rate ( $ . 04 / mmbtu ) will be charged on the greater of the volumes nominated\non the supply contracts or the actual deliveries to the plant . the fee will\nbe adjusted yearly based on cpi .\nbob - i could not remember if we stated the type of settlement on the\ndelivered volumes ( actuals or nominations ) . i think we should use actuals\ndue to possibility that the plant could over pull with out our knowledge on a\ndaily basis . we would receive the estimates / actuals on a lag and may have to\npurchase gas to offset the imbalance , even though the plant kept the noms at\nthe 45 , 000 base . i also think that if the plant does increase the nom , they\nare more likely to pull the additional volume rather than pulling less . do\nyou agree with this ?\nd\nfrom : sandi m braband on 10 / 10 / 2000 03 : 41 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : rate for tenaska deal\ndaren ,\nwhen we met regarding the rate for the tenaska gas management agreement , you\nguys mentioned that it would be tied to an index - - could you restate for me\nhow that is to work - - it will start out 4 cents per mmbtu based on the greater\nof the volumes nominated through the supply contracts or the actual\ndeliveries to the plant . then the fee will vary month to month ? year to year ?\nbased on what index ?\nthanks ,\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.725+0000", "entityId": 3309, "properties": {"text": "Subject: re : rate for tenaska deal\ndaren ,\nthanks - - while i ' m certain i should know , i must confess that i do not know\nwhat cpi stands for ? ? ?\nsandi\ndaren j farmer\n10 / 16 / 2000 11 : 39 am\nto : sandi m braband / hou / ect @ ect , bob m hall / na / enron @ enron\ncc :\nsubject : re : rate for tenaska deal\nsandi ,\nsorry for just now getting back with you . i was out last week .\nthe rate ( $ . 04 / mmbtu ) will be charged on the greater of the volumes nominated\non the supply contracts or the actual deliveries to the plant . the fee will\nbe adjusted yearly based on cpi .\nbob - i could not remember if we stated the type of settlement on the\ndelivered volumes ( actuals or nominations ) . i think we should use actuals\ndue to possibility that the plant could over pull with out our knowledge on a\ndaily basis . we would receive the estimates / actuals on a lag and may have to\npurchase gas to offset the imbalance , even though the plant kept the noms at\nthe 45 , 000 base . i also think that if the plant does increase the nom , they\nare more likely to pull the additional volume rather than pulling less . do\nyou agree with this ?\nd\nfrom : sandi m braband on 10 / 10 / 2000 03 : 41 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : rate for tenaska deal\ndaren ,\nwhen we met regarding the rate for the tenaska gas management agreement , you\nguys mentioned that it would be tied to an index - - could you restate for me\nhow that is to work - - it will start out 4 cents per mmbtu based on the greater\nof the volumes nominated through the supply contracts or the actual\ndeliveries to the plant . then the fee will vary month to month ? year to year ?\nbased on what index ?\nthanks ,\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.729+0000", "entityId": 3310, "properties": {"text": "Subject: hpl nom for october 17 , 2000\n( see attached file : hplnl 017 . xls )\n- hplnl 017 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.734+0000", "entityId": 3311, "properties": {"text": "Subject: enron / hpl actuals for october 13 - 15 , 2000\noctober 13 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\noctober 14 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\noctober 15 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.738+0000", "entityId": 3312, "properties": {"text": "Subject: re : rate for tenaska deal\ndaaah !\nsorry !\ndaren j farmer\n10 / 16 / 2000 05 : 57 pm\nto : sandi m braband / hou / ect @ ect\ncc :\nsubject : re : rate for tenaska deal\nconsumer price index\nfrom : sandi m braband on 10 / 16 / 2000 12 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : rate for tenaska deal\ndaren ,\nthanks - - while i ' m certain i should know , i must confess that i do not know\nwhat cpi stands for ? ? ?\nsandi\ndaren j farmer\n10 / 16 / 2000 11 : 39 am\nto : sandi m braband / hou / ect @ ect , bob m hall / na / enron @ enron\ncc :\nsubject : re : rate for tenaska deal\nsandi ,\nsorry for just now getting back with you . i was out last week .\nthe rate ( $ . 04 / mmbtu ) will be charged on the greater of the volumes nominated\non the supply contracts or the actual deliveries to the plant . the fee will\nbe adjusted yearly based on cpi .\nbob - i could not remember if we stated the type of settlement on the\ndelivered volumes ( actuals or nominations ) . i think we should use actuals\ndue to possibility that the plant could over pull with out our knowledge on a\ndaily basis . we would receive the estimates / actuals on a lag and may have to\npurchase gas to offset the imbalance , even though the plant kept the noms at\nthe 45 , 000 base . i also think that if the plant does increase the nom , they\nare more likely to pull the additional volume rather than pulling less . do\nyou agree with this ?\nd\nfrom : sandi m braband on 10 / 10 / 2000 03 : 41 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : rate for tenaska deal\ndaren ,\nwhen we met regarding the rate for the tenaska gas management agreement , you\nguys mentioned that it would be tied to an index - - could you restate for me\nhow that is to work - - it will start out 4 cents per mmbtu based on the greater\nof the volumes nominated through the supply contracts or the actual\ndeliveries to the plant . then the fee will vary month to month ? year to year ?\nbased on what index ?\nthanks ,\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.743+0000", "entityId": 3313, "properties": {"text": "Subject: re : rate for tenaska deal\ndaren ,\nthanks - - while i ' m certain i should know , i must confess that i do not know\nwhat cpi stands for ? ? ?\nsandi\ndaren j farmer\n10 / 16 / 2000 11 : 39 am\nto : sandi m braband / hou / ect @ ect , bob m hall / na / enron @ enron\ncc :\nsubject : re : rate for tenaska deal\nsandi ,\nsorry for just now getting back with you . i was out last week .\nthe rate ( $ . 04 / mmbtu ) will be charged on the greater of the volumes nominated\non the supply contracts or the actual deliveries to the plant . the fee will\nbe adjusted yearly based on cpi .\nbob - i could not remember if we stated the type of settlement on the\ndelivered volumes ( actuals or nominations ) . i think we should use actuals\ndue to possibility that the plant could over pull with out our knowledge on a\ndaily basis . we would receive the estimates / actuals on a lag and may have to\npurchase gas to offset the imbalance , even though the plant kept the noms at\nthe 45 , 000 base . i also think that if the plant does increase the nom , they\nare more likely to pull the additional volume rather than pulling less . do\nyou agree with this ?\nd\nfrom : sandi m braband on 10 / 10 / 2000 03 : 41 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : rate for tenaska deal\ndaren ,\nwhen we met regarding the rate for the tenaska gas management agreement , you\nguys mentioned that it would be tied to an index - - could you restate for me\nhow that is to work - - it will start out 4 cents per mmbtu based on the greater\nof the volumes nominated through the supply contracts or the actual\ndeliveries to the plant . then the fee will vary month to month ? year to year ?\nbased on what index ?\nthanks ,\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.748+0000", "entityId": 3314, "properties": {"text": "Subject: re : koch midstream services co\nthe buyer ' s name on deal 440093 is koch midstream shouldn ' t it be duke energy\nfield services ?\ndaren j farmer\n10 / 17 / 2000 07 : 09 am\nto : tina valadez / hou / ect @ ect\ncc : cyndie balfour - flanagan / corp / enron @ enron , kristen j hanson / hou / ect @ ect ,\njulie meyers / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect\nsubject : re : koch midstream services co\ni have created two new deals in sitara . you will need to get with someone in\nvolume management to reallocate volumes from the old tickets to the new deals\nfor jan - sep . the logistics group will be able to adjust october forward .\ndeal # s :\n144052 - - > 440092\n144049 - - > 440093\nlet me know if you have any questions .\nd\ntina valadez\n10 / 16 / 2000 11 : 50 am\nto : daren j farmer / hou / ect @ ect\ncc : cyndie balfour - flanagan / corp / enron @ enron , kristen j hanson / hou / ect @ ect\nsubject : re : koch midstream services co\nplease change the sitara tickets dating back to january 2000 and let me know\nwhen you are finished .\nthank you ,\ntina valadez\ndaren j farmer\n10 / 16 / 2000 11 : 15 am\nto : tina valadez / hou / ect @ ect\ncc : carlos j rodriguez / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : re : koch midstream services co\nsince koch has told you that they sold the properties to duke , i would say\nthat duke should be paying us for the gas .\ni had heard that koch sold the properties to another counterparty , but i\nwasn ' t sure to whom . i either talked or left a message with someone in the\nsettlements area about two months ago about this after koch informed the\ntrader that they should not be getting the invoices . however , i never heard\nback from anyone .\nthis is related to the ces acquisition which came online the first of this\nyear . the deal info we had at the time had this sale booked to koch . i can\nchange the tickets in sitara to the duke counterparty ( or create new tickets )\ntoday if you need me to , so that we can get the invoice out the door . you\nwill still need to coordinate with the contract group in getting the correct\ncontract in place for the deal .\nd\ntina valadez\n10 / 10 / 2000 10 : 18 am\nto : carlos j rodriguez / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : koch midstream services co\ni have been billing koch midstream services co under ena for meters\nll - 1 - 0030 - comitas ( sitara # 144052 ) and ll - 1 - 0027 - volpe ( sitara # 144049 ) . my\nformer accounting contact at koch , michael thomas , said that koch sold these\nsouth texas assets to duke energy field services back in 1999 . michael faxed\na contract which i forwarded to cindy balfour flannigan in the contract\narea . cindy said she can ' t tie the deals in the contract to our system so\nshe can ' t recognize the assignment . cindy has left messages with koch , but\nshe has not been able to resolve the issue . koch is refusing to pay for\nthe gas and there is currently over a million dollars outstanding relating to\nthese deals . i need to find out whether koch or duke is responsible for\npaying for this gas . do you have any information regarding this issue ?\nthanks ,\ntina valadez\n3 - 7548\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tina valadez / hou / ect on 10 / 10 / 2000 10 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ami chokshi @ enron 10 / 09 / 2000 02 : 47 pm\nto : tina valadez / hou / ect @ ect\ncc :\nsubject :\ntina ,\nwith regards ti the koch midstream , you could talk to daren farmer about it .\nalso , carlos rodriguez could help .\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.752+0000", "entityId": 3315, "properties": {"text": "Subject: meter 5892 south katy gas unit 2 - allocation\ndaren - - -\ni need some help with meter 5892 for september 00 due to a feedback error .\ndeal 133196 ( purchase from duke on gathering contract ) is erroring out due to\nit ' s expiration date of 8 / 31 / 00 . . . . . . however it still showed up in pops ( w / o\na nom ) on 9 / 1 . volume management allocated volume to it according to the\nallocation statement . should this deal be extended ? i noticed it is not out\nthere for october either . i have the feedback error sheet & allocation if\nyou want to see them .\nlet me know ,\nmark\nx 33396\np . s . fred boas said you used to handle this and you were very wise in the art\nof allocation . . . . . . so i am expecting big results grasshopper !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.757+0000", "entityId": 3316, "properties": {"text": "Subject: re : meter 5892 south katy gas unit 2 - allocation\nno , it was a gtc firm . you will need to create a new deal .\njulie\ndaren j farmer\n10 / 17 / 2000 02 : 32 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : meter 5892 south katy gas unit 2 - allocation\njm ,\nis the contract for this deal still valid ? i want to roll the deal for sep\nand oct .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 10 / 17 / 2000\n02 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n10 / 17 / 2000 01 : 34 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 5892 south katy gas unit 2 - allocation\ndaren - - -\ni need some help with meter 5892 for september 00 due to a feedback error .\ndeal 133196 ( purchase from duke on gathering contract ) is erroring out due to\nit ' s expiration date of 8 / 31 / 00 . . . . . . however it still showed up in pops ( w / o\na nom ) on 9 / 1 . volume management allocated volume to it according to the\nallocation statement . should this deal be extended ? i noticed it is not out\nthere for october either . i have the feedback error sheet & allocation if\nyou want to see them .\nlet me know ,\nmark\nx 33396\np . s . fred boas said you used to handle this and you were very wise in the art\nof allocation . . . . . . so i am expecting big results grasshopper !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.762+0000", "entityId": 3317, "properties": {"text": "Subject: duke exchange 2 / 00\ndaren :\nplease change the demand charge for deal 157278 for 2 / 00 to $ 1 , 247 . 90 .\nkatherine did not include the excess fee when she gave you the cashout .\n$ 1 , 008 . 87 cashout\n$ 239 . 03 excess\n$ 1 , 247 . 90 total\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.767+0000", "entityId": 3318, "properties": {"text": "Subject: re : cornhusker\ntenaska iv has been operating without a \" gas agency agreement \" since that\nportion of the transition agreement expired on august 31 . we met with sandy\nand the texas gas desk on september 28 to firm up commercial terms ( which i\nthink we generally accomplished for all matters other than the price that\nwould be charged by the desk ) . should we be concerned with the amount of\ntime this is taking ? that is , is there any risk we face ( bank - wise or\notherwise ) during the period of time before this agreement is inked and taken\nthrough the bank consent process ?\nrh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 10 / 17 / 2000 02 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sandi m braband on 10 / 17 / 2000 02 : 30 pm\nto : john griffith / corp / enron @ enron\ncc : garrick hill / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : re : cornhusker\njohn ,\ni have a draft that i have been working on revising - - got pulled off to work\non triple lutz again and may not have anything to distribute until late next\nweek - - i will be out of the office on triple lutz the rest of today and\ntomorrow and then out of town until the 25 th - - i will try to get something to\nyou to look at before i go but can make no guarantees - -\nsandi\njohn griffith @ enron\n10 / 17 / 2000 08 : 17 am\nto : sandi m braband / hou / ect @ ect\ncc :\nsubject : cornhusker\nsandi ,\nwhat is going on with cornhusker ? have we made any progress on the\nagreement ? please let me know where we stand . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.772+0000", "entityId": 3319, "properties": {"text": "Subject: re : cornhusker\njohn ,\ni have a draft that i have been working on revising - - got pulled off to work\non triple lutz again and may not have anything to distribute until late next\nweek - - i will be out of the office on triple lutz the rest of today and\ntomorrow and then out of town until the 25 th - - i will try to get something to\nyou to look at before i go but can make no guarantees - -\nsandi\njohn griffith @ enron\n10 / 17 / 2000 08 : 17 am\nto : sandi m braband / hou / ect @ ect\ncc :\nsubject : cornhusker\nsandi ,\nwhat is going on with cornhusker ? have we made any progress on the\nagreement ? please let me know where we stand . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.776+0000", "entityId": 3320, "properties": {"text": "Subject: cleburne / tenaska iv outage\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 10 / 17 / 2000 11 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike mazowita\n10 / 17 / 2000 11 : 07 am\nto : mark mccoy / corp / enron @ enron\ncc : ken . riesz @ naes . com\nsubject : cleburne / tenaska iv outage\nmark ,\ni understand that you need a note for your files regarding the tenaska plant .\non saturday , october 14 , 2000 at 5 : 14 am , the plant had a catastrophic\nfailure of the gas turbine . the entire plant is essentially shutdown until\nthese repairs can be made . this outage will last a minimum of 10 days . ken\nriesz will keep you informed of our progress .\ni hope this is what you need . let me know .\nmichael mazowita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.781+0000", "entityId": 3321, "properties": {"text": "Subject: enron / hpl actuals for 10 / 16 / 00\noctober 16 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.786+0000", "entityId": 3322, "properties": {"text": "Subject: re : cornhusker\ntenaska iv has been operating without a \" gas agency agreement \" since that\nportion of the transition agreement expired on august 31 . we met with sandy\nand the texas gas desk on september 28 to firm up commercial terms ( which i\nthink we generally accomplished for all matters other than the price that\nwould be charged by the desk ) . should we be concerned with the amount of\ntime this is taking ? that is , is there any risk we face ( bank - wise or\notherwise ) during the period of time before this agreement is inked and taken\nthrough the bank consent process ?\nrh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by garrick hill / hou / ect on 10 / 17 / 2000 02 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sandi m braband on 10 / 17 / 2000 02 : 30 pm\nto : john griffith / corp / enron @ enron\ncc : garrick hill / hou / ect @ ect , daren j farmer / hou / ect @ ect\nsubject : re : cornhusker\njohn ,\ni have a draft that i have been working on revising - - got pulled off to work\non triple lutz again and may not have anything to distribute until late next\nweek - - i will be out of the office on triple lutz the rest of today and\ntomorrow and then out of town until the 25 th - - i will try to get something to\nyou to look at before i go but can make no guarantees - -\nsandi\njohn griffith @ enron\n10 / 17 / 2000 08 : 17 am\nto : sandi m braband / hou / ect @ ect\ncc :\nsubject : cornhusker\nsandi ,\nwhat is going on with cornhusker ? have we made any progress on the\nagreement ? please let me know where we stand . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.791+0000", "entityId": 3323, "properties": {"text": "Subject: re : cornhusker\njohn ,\ni have a draft that i have been working on revising - - got pulled off to work\non triple lutz again and may not have anything to distribute until late next\nweek - - i will be out of the office on triple lutz the rest of today and\ntomorrow and then out of town until the 25 th - - i will try to get something to\nyou to look at before i go but can make no guarantees - -\nsandi\njohn griffith @ enron\n10 / 17 / 2000 08 : 17 am\nto : sandi m braband / hou / ect @ ect\ncc :\nsubject : cornhusker\nsandi ,\nwhat is going on with cornhusker ? have we made any progress on the\nagreement ? please let me know where we stand . thanks .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.796+0000", "entityId": 3324, "properties": {"text": "Subject: cleburne / tenaska iv outage\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 10 / 17 / 2000 11 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike mazowita\n10 / 17 / 2000 11 : 07 am\nto : mark mccoy / corp / enron @ enron\ncc : ken . riesz @ naes . com\nsubject : cleburne / tenaska iv outage\nmark ,\ni understand that you need a note for your files regarding the tenaska plant .\non saturday , october 14 , 2000 at 5 : 14 am , the plant had a catastrophic\nfailure of the gas turbine . the entire plant is essentially shutdown until\nthese repairs can be made . this outage will last a minimum of 10 days . ken\nriesz will keep you informed of our progress .\ni hope this is what you need . let me know .\nmichael mazowita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.801+0000", "entityId": 3325, "properties": {"text": "Subject: feedback error for meter 985892\ndanny - -\nit looks like deal 133196 ( purchase from duke ) at meter 5892 south katy gas\nunit # 2 needs to be renegotiated . the deal expired 8 / 31 / 00 , and they are\nallocating the gas to us for september . let me know as soon as you can so we\ncan make sure the gas is allocated correctly for september , and so it can set\nit up for october if need be .\nthanks ,\nmark\nx 33396\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 10 / 18 / 2000 08 : 29\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n10 / 18 / 2000 08 : 30 am\nto : sherlyn schumack / hou / ect @ ect , fred boas / hou / ect @ ect , karen\nlindley / corp / enron @ enron\ncc : pat clynes / corp / enron @ enron , rita wynne / hou / ect @ ect\nsubject : feedback error for meter 985892\ni spoke with daren farmer re : deal 133196 that expired 8 / 31 / 00 at meter\n985892 , and he said the deal needs to be renegotiated in order for us to\nagree to buy that gas that is being allocated to us ( volume of 4 , 098 mmbtu\nfor sept on gathering contract ) . unfortunately , danny conner handles this\ndeal and he is out this week . daren said to wait until he gets back next\nweek before we do anything with it .\nthanks ,\nmark\nx 33396\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 10 / 18 / 2000 08 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack @ ect 10 / 17 / 2000 08 : 18 am\nto : rita wynne / hou / ect @ ect , fred boas / hou / ect @ ect , katherine\nbenedict / hou / ect @ ect , anita luong / hou / ect @ ect , tom acton / corp / enron @ enron ,\npat clynes / corp / enron @ enron , bob m hall / na / enron @ enron , karen\nlindley / corp / enron @ enron , aimee lannou / hou / ect @ ect , carlos j\nrodriguez / hou / ect @ ect , robert cotten / hou / ect @ ect , mary\npoorman / na / enron @ enron , susan hadix / na / enron @ enron , mark\nmccoy / corp / enron @ enron , eddie janzen / na / enron @ enron , jackie young / hou / ect @ ect\ncc :\nsubject : feedback errors\nthese are deals that were on the monitor as of 10 / 16 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.805+0000", "entityId": 3326, "properties": {"text": "Subject: assistant - realignment of duties\neffective immediately , i am pleased to announce a realignment of\nadministrative support for the gas logistics , unify and electronic\ncommerce groups . we have officially hired brandee jackson as a new member\nof our admin team , enabling us to provide\nmore hands on support across all of our groups .\nthat being said , our administrative support responsibilities are as\nfollows :\nheather choate alex saldana brandee jackson\nbob hall central gas logistics - george smith west gas logistics -\nrandy gay\nbob superty northeast gas logistics - victor lamadrid texas gas\nlogistics - pat clynes / daren farmer\nkathryn bussell southeast gas logisitcs - ed terry electronic commerce\n- donna greif\ndiane cook unify - donna greif\nthis realignment will enable the assistants to provide more comprehensive\nand responsive support for both the day to day\nbusiness needs and special projects . please remember that your assistant\nis your primary support person ! please utilize\nher for all of your administrative needs . this is critical to the overall\ndesire to provide the most effective service and cost\nefficient support for the entire team .\nalex and brandee will back each other up in their absences and will back me\nup in my absence . i will provide alex and brandee\nsupport on an as needed basis .\nplease call me if you have any questions about this new alignment .\nthank you ,\nheather choate , x 33278", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.810+0000", "entityId": 3327, "properties": {"text": "Subject: wacog for sale to cannon winter 2000 - 01\naccording to the contract the pricing of the gas we are selling back to\ncannon is a wacog of what we bought it for this summer . here is the\ncalculation of the wacog . let me know if there are any questions / comments .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.814+0000", "entityId": 3328, "properties": {"text": "Subject: eastrans nomination change effective 10 / 19 / 00\nplease increase deliveries to eastrans to 7500 mmbtu / dy effective 10 / 19 / 00 .\nthe redeliveries will be 7500 mmbtu / dy from fuels cotton valley into hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.819+0000", "entityId": 3329, "properties": {"text": "Subject: eastrans nomination change effective 10 / 19 / 00\nmarta henderson is on the road and advised some of you the subject item via\nphone , and i am hereby transmitting this info for her via e - mail .\nplease commence deliveries to eastrans of 7500 mmbtu / d effective 10 / 19 / 00\nuntil further notice .\nthe redeliveries will be 7500 mmbtu / d from fuels cotton valley into hpl .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.823+0000", "entityId": 3330, "properties": {"text": "Subject: tenaska iv gas management agreement ( initial draft )\nfrom sandi braband :\nattached is an initial draft of a gas management services and agency\nagreement with tenaska iv . it should be reviewed internally only and not\nforwarded beyond those on the above distribution list without first checking\nwith me or barbara gray . pat radford , my assistant , will be making\narrangements for a meeting next week to discuss the agreement as well as the\ncornhusker structure generally .\ni will be out of town until the 25 th . if there is an urgent issue that needs\nresolution before my return , please contact barbara gray at 36832 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.828+0000", "entityId": 3331, "properties": {"text": "Subject: lunch\ntreebeard ' s\n?\ni am hooked . name the time and place to meet . . . . . . . . . . . . . . . . . . . . . .\n?\ntell ami good luck for me .\n?\nwho would have thunk ou would be back so quickly . now we have to contend\nwith them , k - state , and the conference championship ( if we survive ) . i don ' t\nsee the big 12 being # 1 if we don ' t lighten up on each other .\n?\nyou want a chuckle - - - - - my daughter is a big nu fan and has gone to a couple\nof baylor games . ? says it ' s not quite the same as lincoln ; but the\nexpectations are not high .\n?\nlet me know on lunch and i ' ll be there .\n?\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.834+0000", "entityId": 3332, "properties": {"text": "Subject: enron / hpl actuals for 10 / 17 / 00\noctober 17 , 2000\nteco tap 30 . 000 / enron ; 103 . 333 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.839+0000", "entityId": 3333, "properties": {"text": "Subject: re :\ni spoke with tufco and they are planning to confirm the 20000 that flowed on\nmarch 28 . i will revise their obligations and pass it forward .\nami\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 10 / 18 / 2000\n10 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" charlie stone \" on 10 / 17 / 2000 05 : 13 : 43 pm\nto : ami . chokshi @ enron . com\ncc :\nsubject : re :\nami ,\ni think you ' re referring to the 28 th . on the 15 th we reported 30 at the hpl\nls\nkaty i . c . below is a copy of the note you originally sent me back on\n10 / 05 / 00 .\ni called gary gafford , but only got through to his voice mail . i requested he\ncall me tomorrow to clear this up . unless i hear otherwise , i will proceed\nfor\na correction on march 28 th , not march 15 th .\nthanks ,\nccs\ncharlie ,\nhere is a breakout for the volumes that have been paid on . we are off by\napproximately 20000 according to what was billed vs what was paid . could\nyou peruse the worksheet for discrepancies . we are off by 20 , 000 in march\n( 28 th ) . our logs show that 20000 flowed on that day at ls ( meter 67 ) . i ' ve\nattached the email showing the revision for that day below . based on paid\namounts , the remaining obligations are as follows :\niferc 2 , 680 , 000\niferc + gas daily 6 , 895 , 252\nplease advise .\nregards ,\nami\n( see attached file : tufco . xls )\nrevision # 1\nls hpl katy 20 . 000 / hpl gas daily\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n03 / 29 / 2000\n02 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n03 / 29 / 2000 11 : 09 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu , tim\npowell / lsp / enserch / us @ tu , daren . j . farmer @ enron . com ,\ngary . a . hanks @ enron . com , carlos . j . rodriguez @ enron . com ,\nearl . tisdale @ enron . com , ami . chokshi @ enron . com\ncc :\nsubject : enron / hpl actuals for march 28 , 2000\nteco tap 50 . 750 / hpl gas daily\nami . chokshi @ enron . com on 10 / 17 / 2000 04 : 25 : 29 pm\nto : charlie stone / texas utilities @ tu\ncc :\nsubject :\nhey charlie ,\ndo we have any resolution for the ls discrepancy of 20 , 000 on march 15 ?\nagain , gary would not confirm it with us , so can you work your magic ?\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.843+0000", "entityId": 3334, "properties": {"text": "Subject: re : tufco\nhey rebecca ,\ni spoke with tufco about the 20 , 000 discrepancy in march ( 28 th ) , and they\nhave agreed to confirm the volumes . i spoke with charlie stone .\nami\nrebecca griffin\n10 / 02 / 2000 10 : 59 am\nto : ami chokshi / corp / enron @ enron\ncc :\nsubject : tufco\nhere is the completed spreadsheet . please let me know if you have any\nquestions .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.848+0000", "entityId": 3335, "properties": {"text": "Subject: re : saxet canales meter 980437 for august , 2000\nfred ,\nnow that daren has the purchase in , i have added august to the deal ticket\n386540 which is the desk to desk at the meter ( 4584 on humble p / l , pathed as\na buy / sell ) , and to deal ticket 386269 which is the transport usage ticket\n( from 4584 to meter 12 at the plant inlet , pathed on humble contract 401 ) .\nplease set up the appropriate track id ' s . since this is offsystem , that\nshould take care of the august issue .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.852+0000", "entityId": 3336, "properties": {"text": "Subject: suemar berryman ; gulf plains plant for current month\ndaren ,\nas you know , we have experienced some fluctuations at the berryman well for\noct , which in turn affects our volumes at the gulf plains plant . from a\nphysical standpoint , i think that we are fairly well balanced . my concern is\nthat we are \" overproduced \" on paper by 76 , 162 dth / mo . i think that we need\nto bring the nominations up to balance in sitara at the berryman well and , a\ncorresponding volume at meters 708 and 6363 , with an offset on strangers to\nkeep the physical side in line . if my understanding is correct ( and if not ,\nplease correct me ) this should have a positive impact on our current month\nua 4 .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.858+0000", "entityId": 3337, "properties": {"text": "Subject: tenaska iv gas management agreement ( initial draft )\nfrom sandi braband :\nattached is an initial draft of a gas management services and agency\nagreement with tenaska iv . it should be reviewed internally only and not\nforwarded beyond those on the above distribution list without first checking\nwith me or barbara gray . pat radford , my assistant , will be making\narrangements for a meeting next week to discuss the agreement as well as the\ncornhusker structure generally .\ni will be out of town until the 25 th . if there is an urgent issue that needs\nresolution before my return , please contact barbara gray at 36832 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.863+0000", "entityId": 3338, "properties": {"text": "Subject: something new for entex - yeah ! ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ami chokshi / corp / enron on 10 / 18 / 2000\n09 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrita wynne @ ect\n10 / 18 / 2000 08 : 11 am\nto : sherlyn schumack / hou / ect @ ect , tom acton / corp / enron @ enron , julie\nmeyers / hou / ect @ ect , ami chokshi / corp / enron @ enron\ncc : kristen j hanson / hou / ect @ ect\nsubject : something new for entex - yeah ! ! !\nfyi . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 10 / 18 / 2000 08 : 09 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\njanet h wallis\n10 / 18 / 2000 07 : 53 am\nto : paul couvillon / corp / enron @ enron , rita wynne / hou / ect @ ect , karen\nlindley / corp / enron @ enron\ncc :\nsubject : something new for entex - yeah ! ! !\npaul , please pass this on to anyone who would need to know . beginning\nseptember 00 and continuing for one year , ena is buying production tied\ndirectly\ninto entex ' s pipeline system . the company we are purchasing from is osborne\noil and we are selling directly to entex under the big contract at if plus\n+ . 769 .\nthis meter will be allocated by a third party and the meter statement will be\nsent to us and entex . we will bill & pay off of the meter statement ( if this\nis not possible or reasonable , let me know ) . see attached pricing for\nosborne .\ni would like the person whom is paying osbourne to contact me .\nthanks ,\nj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.868+0000", "entityId": 3339, "properties": {"text": "Subject: fyi\njust wanted to let you know that any entex information that i have put\ntogether is in the following directory .\no / logistics / entex . . . ( mostly in the reference tab )\nalso , most all of the historical volumes can be found in the risk folder :\no / erms / 1 intra / texas / entex / databases\nlet me know if you think of anything else that you need .\nac", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.873+0000", "entityId": 3340, "properties": {"text": "Subject: re : chevron - winter\nits a monthly nom for 413447\nyou ' re right - the swing deal 413462 needs to be extended to match the term\nof 413447 , as does the buyback 413472\ndaren j farmer\n10 / 18 / 2000 03 : 48 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : chevron - winter\nlee ,\non deal 413447 ( chevron @ olefins ) , we have a flex nom of 6 , 000 to\n12 , 000 / day . is this a monthly nom or daily nom ? will we have a swing deal\nwith them for the winter ? the current swing deal is for oct only . for oct ,\nthey have pulled an average of 16 , 000 / day .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.878+0000", "entityId": 3341, "properties": {"text": "Subject: fyi\nfyi - just wanted to let everyone know my extension .\n( 54013 )\nalso , if you really need something and i am\nnot at my\ndesk or at lunch , you can page me .\n( 713 - 707 - 5609 ) .\nmy mobile number is ( 281 - 799 - 5593 ) . if you\nneed anything\njust give me a call .\nthanks ,\nbrandee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.884+0000", "entityId": 3342, "properties": {"text": "Subject: re : ami chokshi resigns\ni have an exit interview scheduled for 2 pm on fri . is there any way we can\nmake the interview a little later in the afternoon , so i can have most of the\nafternoon to train my replacement .\nthanks ,\nami\nfrom : hector mcloughlin 10 / 17 / 2000 04 : 54 pm\nto : david baumbach / hou / ect @ ect , ami chokshi / corp / enron @ enron\ncc : janet de la paz / hr / corp / enron @ enron , francisco dejesus / na / enron @ enron ,\nannemarie allex / na / enron @ enron\nsubject : re : ami chokshi resigns\nami and david ,\neither frank or annemarie will conduct your exit interview on friday .\njanet de la paz will set up the exit interview time and place .\nsorry to hear that you are leaving . stop by before you go .\nhgm\nenron capital management\nfrom : david baumbach @ ect 10 / 17 / 2000 02 : 16 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : sally beck / hou / ect @ ect , thomas a martin / hou / ect @ ect\nsubject : ami chokshi resigns\nami has decided to resign from her present position . her reason is that she\nwants a change in atmosphere / scenery . she has decided to pick up and move to\nsan francisco . she does not a job lined up and tom martin has agreed to let\nher stay until friday , october 20 .\nhector , let me and ami know more about the time / location of the exit\ninterviews . also , if there is something else you need from me in this\nprocess , please let me know .\ndavid baumbach", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.889+0000", "entityId": 3343, "properties": {"text": "Subject: pops production downtime request\nthe pops production database server will be down over the weekend for a 3\nhour period\nfor memory upgrade . please let me know if there is a preferred 3 hr window , if\nthere is\nno problem with y ' all , can we will request the maintenance between 12 - 3 pm\nsaturday 10 / 21 / 00 .\ni ' ll inform y ' all of the actual timeframe once its finalized , since there are\nother systems\nrunning on that server .\nthanks\nromeo\n- - - - - - - - - - - - - - - - - - - - - - forwarded by romeo d ' souza / hou / ect on 10 / 19 / 2000 02 : 47\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : neil leininger @ enron on 10 / 19 / 2000 02 : 01 pm\nto : christine pham / hou / ect @ ect , romeo d ' souza / hou / ect @ ect\ncc :\nsubject : downtime request\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by neil leininger / na / enron on 10 / 19 / 2000\n02 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmalcolm . wells @ enron . com on 10 / 19 / 2000 01 : 54 : 49 pm\nto : dba @ enron . com\ncc :\nsubject : downtime request\nthe unix infrastructure team would like to request downtime on system\n' aurora ' this weekend . the system has 2 faulty memory simms that we need\nto replace before they cause a problem . we are requesting 3 hours to\nperform the memory replacement . the following databases would be effected :\neqtprod\ndcfprod\npopprod\ntrdprod\nsemprod\nsitprod 2\ninfprd 53\nplease let me know if / when we can have time for this maintenance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.894+0000", "entityId": 3344, "properties": {"text": "Subject: additional recruiting\ni ' m happy to introduce molly magee as the newest addition to the eops\nrecruiting team . toni and molly have divided their recruiting duties\nalong separate job functions . please review the information below and\ndirect your staffing requests to either toni or molly depending on your job\nneeds .\ntoni graham - accounting , risk and confirmation / settlements positions ( or\nopenings requiring a similar skill set of this candidate pool )\nmolly magee - logistics , global data management , research , legal , competitive\nanalysis , contract administration and other positions ( or openings requiring\na similar skill set of this candidate pool )\nthanks for your assistance ,\nhgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.899+0000", "entityId": 3345, "properties": {"text": "Subject: eastrans nomination change effective 10 / 20 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy effective 10 / 20 / 00 and\nmaintain at 0 until further notified .\nthe redeliveries will be 0 as well .\nfuels cotton valley gas will be valued per paragraph 3 of the contract\nprice ( per mmbtu ) section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.905+0000", "entityId": 3346, "properties": {"text": "Subject: gorons\nthought y ' all might find this amusing .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steve venturatos / hou / ect on 10 / 19 / 2000\n02 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kelly lombardi @ enron 10 / 17 / 2000 06 : 34 pm\nto : cyndie balfour - flanagan / corp / enron @ enron , steve venturatos / hou / ect @ ect\ncc :\nsubject : gorons\ndon ' t know who you ' re voting for , but here some things you might want to\nconsider -\nwhat is a goron\n1 . gorons sincerely believe that vice president gore is a true\nenvironmentalist , when he has an environmental disaster on his own farm :\na polluting zinc mine , from which he received $ 500 , 000 of income last\nyear .\n2 . gorons likewise believe that the vp is antismoking and anti - tobacco\nwhen he has operated a tobacco farm for decades and accepted government\nsubsidies .\n3 . gorons truly believe that gore is a vietnam war hero , when in fact\nhe was placed by family influence in a \" cushy \" correspondent ' s job and\nthe only action he saw was that of his brownie camera ! ( and his bong )\n4 . gorons actually believe that mr . gore is justified in illegally\nraising political funds from the office of the vp , simply because the\nvanderbilt law educated vp claims he was ignorant of the illegality .\n5 . gorons further believe that it was ok for al to accept large sums\nof political money from china through buddhist monks who had taken vows\nof poverty , since he again claimed ignorance .\n6 . gorons also believe that the man who claimed to \" invent the\ninternet \" would be so computationally ignorant that he could lose weeks\nof potentially incriminating e - mail !\n7 . gorons , incredibly , believe gore ' s claim that he and tipper were\nthe models for the book and movie , \" love story \" even though the book ' s\nauthor , erich segal , says not .\n8 . gorons , amazingly , believe that gore will be the consumer ' s\nchampion against high gasoline prices although gore holds a million\ndollars in occidental petroleum stock .\n9 . gorons applaud mr . lieberman ' s open rejection of president\nclinton ' s immorality , but believe it was fine for mr . gore to remain\nsilent on the subject , while simultaneously declaring mr . clinton \" one of\nthe greatest presidents of our history . \"\n10 . gorons believe that al gore is an effective leader , when they\nwon ' t bother to look at his record as a tennessee senator , a record so\nineffective that it has led to the election of republicans as both of\ntennessee ' s senators !\n11 . gorons hold the belief that gore is a compassionate man who will\nbe the working man ' s friend , in spite of the eviction notice he served\nto the poor family who complained about the conditions of the run down\nslum house that he was renting to them .\ncautionary note : medical researchers acknowledge that gorons are\ngenerally harmless , except when allowed into a voting booth . there ,\nunfortunately , overcome by their gullibility syndrome , they are apt to\nactually vote for gore ! they should be carefully protected from their\nailment , since it may be harmful to their well - being , yours , mine and\nthat of the usa .\ntherefore , please , heed the surgeon general ' s warning , reach out to\naid the gorons in overcoming the syndrome , and , please , pass this on to\nyour normal friends , who might also know gorons who need immediate\ntreatment .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.911+0000", "entityId": 3347, "properties": {"text": "Subject: my october newsletter\nhello again ,\nmy monthly newsletter is attached . please read it and let me\nknow your comments .\naccording to a survey taken by homegain , homesellers hoping\nto turn a biger profit by making home improvements would do\nbest to stick to moderately priced projects . the survey of\nreal estate agents from acorss the nation found that home\nimprovemnts in the $ 80 to $ 2 , 800 range yield the highest\nrate of return when the home sells . the biggest return is on\nsimple lightening and brightening , which typicall costs\nabout $ 80 - $ 100 and gives an average return of 769 % on the\nsale price . other big winners were cleaning and\nde - cluttering ( cost = $ 305 - $ 339 ; ; return = 594 % ) , landscaping\nand trimming ( cost $ 432 - $ 506 ; return = 266 % ) , and fixing ,\nplumbing and electrical ( cost $ 338 - $ 381 ; return = 196 % ) .\nhere is the link to my october newsletter :\nhttp : / / homeownernews . com / 23 / ionaalphonso\naol users :\nplease don ' t forget to give me the name and number of anyone\nyou might know who has a need to buy or sell a home . i would\nbe happy to assist them . thanks .\ntill you hear from me again next month , au revoir .\nwith all good wishes and a very happy halloween .\niona alphonso\nalways in tune with your needs\noh , by the way . . . if you know of someone thinking about\nbuying or selling a home , please call me with their name and\nnumber - thanks a million ! !\nprudential , gary greene realtors\n3910 fm 1960 west , suite 100\nhouston , texas 77068\nvoice mail : 281 - 857 - 2485 x 535\npager : 281 - 551 - 6549\noffice : 281 - 444 - 5140\nfax : 281 - 444 - 0630\nweb site : http : / / www . ionaalphonso . com\nresume : http : / / www . har . com / ionaalphonso\ngary greene web site : http : / / www . garygreene . com\nplease view my monthly newsletter at\nhttp : / / homeownernews . com / c / ionaalphonso", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.920+0000", "entityId": 3348, "properties": {"text": "Subject: nominations for october 20 , 2000\n( see attached file : hplnl 020 . xls )\n- hplnl 020 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.926+0000", "entityId": 3349, "properties": {"text": "Subject: enron / hpl actuals for 10 / 18 / 00\noctober 18 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.930+0000", "entityId": 3350, "properties": {"text": "Subject: november availabilities\nhere are first devon numbers for nov . will advise you for changes .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 10 / 20 / 2000 03 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n10 / 20 / 2000 02 : 49 pm\nto :\ncc : \" cynthia cantrell \"\nsubject : november availabilities\nattached are the estimated availabilities for devon energy production\ncompany , l . c . i will pass along any revised numbers as we receive them .\nplease let me know of any questions you may have .\nthanks ,\nsteve\n- enronavailsl 100 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.935+0000", "entityId": 3351, "properties": {"text": "Subject: revision - forest oil ' s november 2000 gas volumes\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elsa villarreal / hou / ect on 10 / 20 / 2000\n12 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : joan quick on 10 / 19 / 2000 04 : 45 pm\nto : mary poorman / na / enron @ enron , jackie young / hou / ect @ ect\ncc : elsa villarreal / hou / ect @ ect\nsubject : revision - forest oil ' s november 2000 gas volumes\nthere has been a change for the katy plant . first of the month nom is now\nexpected to be 5 , 479 mmbtu / d . per linda , 10 / 19 am .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joan quick / hou / ect on 10 / 19 / 2000 04 : 43 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : joan m quick on 10 / 18 / 2000 10 : 47 am\nsent by : joan quick\nto : mary poorman / na / enron @ enron , jackie young / hou / ect @ ect\ncc : elsa villarreal / hou / ect @ ect\nsubject : forest oil ' s november 2000 gas volumes\nbelow are forest ' s first of the month noms :\ndelivery point mmbtu / d\nmcallen ranch 4 , 495\nkaty plant 6 , 574 [ termed up for nov - mar ]\nper john kjelmyr , 10 / 18 am .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.940+0000", "entityId": 3352, "properties": {"text": "Subject: revised : eastrans nomination change effective 10 / 21 / 00\ndeliveries stay the same as stated below :\nredeliveries will be :\n7900 from fuels cotton valley\n22100 to pg & e\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n10 / 20 / 2000 08 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n10 / 20 / 2000 08 : 16 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nsharon beemer / ftworth / pefs / pec @ pec , connie\nwester / easttexas / pefs / pec @ pec , ronald c . douglas / gcs / cec / pec @ pec ,\ndaniel c rider / houston / pefs / pec @ pec , john c lehman / field / pefs / pec @ pec\ncc :\nsubject : eastrans nomination change effective 10 / 21 / 00\neffective 10 / 21 / 00 deliveries to eastrans is 30 , 000 mmbtu / dy and maintain\nat this rate until further notified .\nthe redeliveries will be :\n7500 from fuels cotton valley\n22500 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.945+0000", "entityId": 3353, "properties": {"text": "Subject: eastrans nomination change effective 10 / 21 / 00\neffective 10 / 21 / 00 deliveries to eastrans is 30 , 000 mmbtu / dy and maintain\nat this rate until further notified .\nthe redeliveries will be :\n7500 from fuels cotton valley\n22500 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.949+0000", "entityId": 3354, "properties": {"text": "Subject: new phone number\ni just wanted to pass forward my personal email account and new phone number .\nif i haven ' t mentioned it to you already , i will be moving to san francisco\nin about two weeks . i hope you ' ll keep in touch .\nachokshi 99 @ yahoo . com\n415 - 441 - 4156\ntake care ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.955+0000", "entityId": 3355, "properties": {"text": "Subject: neon discussion october 25\nhere is a discussion outline for this coming week . ? i ' ve put at the very end\nof the document a breakdown of the remaining topics for the fall semester . ?\nit ' s incredible , only 6 meeting times before the christmas break . ?\n?\nsee ya ,\n?\nbobby\n- neon roaring 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.960+0000", "entityId": 3356, "properties": {"text": "Subject: nominations for oct . 21 - 23 , 2000\n( see attached file : hplnl 021 . xls )\n- hplnl 021 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.965+0000", "entityId": 3357, "properties": {"text": "Subject: enron / hpl actuals for 10 / 19 / 00\noctober 19 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.969+0000", "entityId": 3358, "properties": {"text": "Subject: re : first delivery - cummings & walker and exxon\nvance ,\ndeal # 446704 has been created and entered in sitara for cummins & walker oil\ncompany inc . for the period 9 / 26 / 00 - 9 / 30 / 00 .\nbob\nvance l taylor\n10 / 20 / 2000 04 : 17 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - cummings & walker and exxon\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\ncummins & walker oil co . 9857 600 mmbtu / d 100 % gas daily less $ 0 . 18 9 / 26 -\n9 / 30 96048113\n100 % if / hsc less $ 0 . 18 10 / 1 - 10 / 31 96048113\nsuemaur exploration co . 9856 2700 mmbtu / d 100 % gas daily less $ 0 . 10 10 / 20\n- 10 / 31 96023525\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of november .\nadditionally , this is producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 10 / 20 / 2000\n04 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 09 / 26 / 2000 01 : 59 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeffrey a austin / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc :\nsubject : first delivery - cummings & walker and exxon\nsee attached letters for first deliveries", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.974+0000", "entityId": 3359, "properties": {"text": "Subject: re : first delivery - wagner oil\nvance ,\ndeal # 446555 has been created and entered in sitara .\nbob\nvance l taylor\n10 / 19 / 2000 02 : 17 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - wagner oil\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nwagner oil company 9859 300 mmbtu / d 100 % gas daily less $ 0 . 11 10 / 16 -\n10 / 31 96049058\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of november .\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 10 / 19 / 2000\n02 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 10 / 19 / 2000 02 : 04 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeffrey a austin / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc :\nsubject : first delivery - wagner oil\nsee attached file", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.979+0000", "entityId": 3360, "properties": {"text": "Subject: re : first delivery - spinaker exploration\nvance ,\ndeal # 379424 has been adjusted to reflect an increase in volume as noted\nbelow .\nbob\nvance l taylor\n10 / 19 / 2000 03 : 36 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - spinaker exploration\nbob ,\nthe following production is now on - line and sitara ticket # 379424 should be\nmodified to reflect the following :\ncounterparty meter volumes price period global no .\nspinnaker exploration 9848 1000 mmbtu / d 100 % gas daily less $ 0 . 21 10 / 17 -\n10 / 31 96047295\njulie ,\nplease note the committed reserves global contract number for attachment .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 10 / 19 / 2000\n03 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 10 / 19 / 2000 03 : 13 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeffrey a austin / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc :\nsubject : first delivery - spinaker exploration\nsee attached file", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.983+0000", "entityId": 3361, "properties": {"text": "Subject: enron year end 2000 performance management process\nenron ' s year - end 2000 performance management process opens on :\nwednesday , october 25 th .\nduring this process , you will be able to suggest reviewers who can provide\nfeedback on your performance . in addition , you may be requested to provide\nfeedback on fellow employees . to participate in the feedback process , access\nthe performance management system ( pep ) at http : / / pep . corp . enron . com . your\nuserid and password are provided below .\nthe system will be open for feedback from october 25 th - november 17 th , and\nhelp desk representatives will be available to answer questions throughout\nthe process . you may contact the help desk at :\nhouston : 1 - 713 - 853 - 4777 , option 4\nlondon : 44 - 207 - 783 - 4040 , option 4\ne - mail : perfmgmt @ enron . com\nduring the year - end prc process , employee profiles will be made available at\nmeetings . if you haven ' t already done so , we encourage you to update your\npersonal information and current responsibilities before the meeting process\nbegins on november 20 th . please access ehronline at\nhttp : / / ehronline . enron . com ( london users please go to http : / / home . enron . co . uk\n, click on quick links , and choose hr online ) .\nyour user id & password are :\nuser id : 90011947\npassword : welcome", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.989+0000", "entityId": 3362, "properties": {"text": "Subject: hunter ' s birthday party pictures\nif the above link doesn ' t work , try going to http : / / www . abacustech . net / pic\n- ram .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.994+0000", "entityId": 3363, "properties": {"text": "Subject: cornhusker - cleburne plant outage\nlatest word on the cleburne plant outage :\nmost likely will not be back up before november 21 st .\nken reisz ( plant operations mgr ) said they have been unable to totally break\napart the turbines due to the damage and know all the parts they will need\nyet .\n- - mark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:17.998+0000", "entityId": 3364, "properties": {"text": "Subject: from your coach\ndaren . . .\nhow are you ? its been a while since we spoke . i ' m interested in knowing if\nyou would like to keep our coaching sessions alive .\nplease let me know what your intentions are and if we can schedule a\nmeeting .\nthanks . . . i hope things are going well .\ndwight dawson\nteamleadership center\n713 446 - 8025 ( cell phone )\n713 942 - 8326 ( office )\n713 942 - 1707 ( fax )\n281 550 - 8304 ( home )\nddd @ teamlead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.003+0000", "entityId": 3365, "properties": {"text": "Subject: just wanted to say goodbye . i truly appreciate all you ' ve done for me . you ' ve\nbeen a great manager . i hope you ' ll keep in touch and let me know if you are\never in san francisco . good luck with whatever you decide to do .\ntake care ,\nami", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.011+0000", "entityId": 3366, "properties": {"text": "Subject: revision # 1 - hpl nom for october 24 , 2000\n( see attached file : hplnl 024 . xls )\n- hplnl 024 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.015+0000", "entityId": 3367, "properties": {"text": "Subject: enron / hpl actuals for october 20 - 22 , 2000\noctober 20 , 2000\nteco tap 0 / enron ; 75 . 000 / hpl gas daily\noctober 21 , 2000\nteco tap 0 / enron ; 84 . 375 / hpl gas daily\noctober 22 , 2000\nteco tap 0 / enron ; 115 . 625 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.020+0000", "entityId": 3368, "properties": {"text": "Subject: re : first delivery - cummings & walker and exxon\nvance ,\ndeals have been created and entered in sitara as highlighted below :\nbob\nvance l taylor\n10 / 20 / 2000 04 : 17 pm\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - cummings & walker and exxon\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\ncummins & walker oil co . 9857 600 mmbtu / d 100 % gas daily less $ 0 . 18 9 / 26 -\n9 / 30 96048113\n448381 100 % if / hsc less $ 0 . 18 10 / 1 - 10 / 31 96048113\nsuemaur exploration co . 9856 2700 mmbtu / d 100 % gas daily less $ 0 . 10 10 / 20\n- 10 / 31 96023525\n448385\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of november .\nadditionally , this is producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 10 / 20 / 2000\n04 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 09 / 26 / 2000 01 : 59 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeffrey a austin / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc :\nsubject : first delivery - cummings & walker and exxon\nsee attached letters for first deliveries", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.029+0000", "entityId": 3369, "properties": {"text": "Subject: meter 984229 - roos common point - trade zone 18\ni am not sure who should handle this , so , i shared the \" wealth \" . on deal\nticket 133259 , purchase from calpine , the deal is input at meter 4229 , which ,\nper the email below , was terminated . i have an unresolvable ua 4 issue at\nmeter 4229 for september and for october . i have changed the meter\ndesignation for november forward , however , i receive an error in sitara when\ni attempt to change either the prior or current month . this deal should have\nbeen changed to meter 6835 effective back in february of this year . please\nlet me know what i can do to resolve this issue asap .\nthanks ,\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 10 / 23 / 2000 02 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : cheryl jones 10 / 03 / 2000 08 : 55 am\nto : katherine benedict / hou / ect @ ect , mary poorman / na / enron @ enron\ncc :\nsubject : meter 984229 - roos common point - trade zone 18\ni just talked to the tech - bobby husky and he confirmed that meter 984229 has\nbeen removed . now the other roos station is 986835 .\nthanks ,\nc . j . x 67787\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cheryl jones / gpgfin / enron on 10 / 03 / 2000\n08 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine benedict @ ect\n09 / 20 / 2000 10 : 01 am\nto : cheryl jones / gpgfin / enron @ enron , mary poorman / na / enron @ enron\ncc :\nsubject : meter 984229 - roos common point - trade zone 18\ncheryl ,\nfyi - here is the message from mary poorman in logistics .\nmary ,\ncheryl is going to call the field and find out if this meter should still be\nincluded on the termination list and also see if the field people see any gas\nflow on the meter .\nthanks ,\nkathy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine benedict / hou / ect on 09 / 20 / 2000\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n09 / 20 / 2000 09 : 48 am\nto : robert cotten / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc : katherine benedict / enron _ development @ enron _ development\nsubject : meter 984229 - roos common point - trade zone 18\nkathy and i are trying to clean up an unaccounted for issue at the above\nreferenced meter . the system ( pops ) does not show a bav flow or an actual\nflow for prior months . kathy phoned measurement to inquire about mips\nvolumes and was informed that this meter is on a disabled status list back to\nfebruary , 2000 . i am showing a purchase from calpine at this meter ( deal\nticket 133259 ) on gathering agreement\ni would greatly appreciate your help in determining the current status of\nthis meter and this deal . please forward any information you may have .\nthank you for your time and patience ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.035+0000", "entityId": 3370, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\ndaren / vance :\nany light you could shed on this would be appreciated .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 10 / 23 / 2000 01 : 31\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas @ ect\n10 / 23 / 2000 01 : 21 pm\nto : mary poorman / na / enron @ enron\ncc : nick moshou / corp / enron @ enron , cynthia hakemack / hou / ect @ ect , kristen j\nhanson / hou / ect @ ect\nsubject : re : meter 0980438 - acock production ? ? ? ? ? ?\nmary :\nhave you heard anything back from vance taylor on this issue ? i get the\nfeeling that this is soon going to reach \" critical mass \" .\nfred\nnick moshou @ enron\n10 / 23 / 2000 01 : 05 pm\nto : fred boas / hou / ect @ ect\ncc : cynthia hakemack / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : re : meter 0980438 - acock production ? ? ? ? ? ?\nany progress on this issue ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by nick moshou / corp / enron on 10 / 23 / 2000\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick moshou\n10 / 12 / 2000 07 : 57 am\nto : fred boas / hou / ect @ ect\ncc : cynthia hakemack / hou / ect @ ect\nsubject : re : meter 0980438 - acock production ? ? ? ? ? ?\nfred ,\ncould you give me the status or an eta on this meter . we are in the middle\nof a big push to lower our exposure and the following customer has $ 55 , 000\nnot including sept production because we ' ve paid manually without having the\nvolumes in unify for this meter .\nthanks ,\nnick\nx 36454", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.040+0000", "entityId": 3371, "properties": {"text": "Subject: cornhusker - cleburne plant outage\nlatest word on the cleburne plant outage :\nmost likely will not be back up before november 21 st .\nken reisz ( plant operations mgr ) said they have been unable to totally break\napart the turbines due to the damage and know all the parts they will need\nyet .\n- - mark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.044+0000", "entityId": 3372, "properties": {"text": "Subject: sepo 0 activity at meter # 1428\ni had to go clean up some stuff at meter # 1428 for sepo 0 that will cause a\nreallocation of volumes .\npreviously , all activity at the meter was with beamont methanol .\nnow , for the period sep 5 to sep 18 , i ' ve entered daily transactions with\nbrandywine in sitara # 423794\nplease call to discuss is any questions\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.049+0000", "entityId": 3373, "properties": {"text": "Subject: november avails revision - mid - continent\nfyi . . . . . . . . . .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 10 / 24 / 2000 07 : 53\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n10 / 23 / 2000 08 : 35 am\nto :\ncc :\nsubject : november avails revision - mid - continent\nthe mid - continent availabilities have been revised and are shown on the\nattached spreadsheet .\nsteve\n- enronavailsl 100 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.054+0000", "entityId": 3374, "properties": {"text": "Subject: write off of meter 74 volumes\naimee :\nthe volumes that we determined to be written off at this meter need to go\ninto mops . please get a copy of a formal letter that clem has prepared for\nother write - off ' s and send to daren farmer for approval . get daren to put\nthe proper deal tickets in mops and then let me know how to path this gas . i\nwill then set up accounting arrangements and get these volumes in the\nsystem . the months in question are november and december of 1999 , february\n2000 , and june 2000 .\ndo you think that we can get this accomplished by october 31 , 2000 ? if not ,\nplease let me know a date when you think that we can get this resolved .\nthanks ,\nfred", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.058+0000", "entityId": 3375, "properties": {"text": "Subject: el paso imbalance\nel paso is planning on giving the 238 , 000 mmbtus back to hpl at moss bluff .\nthis is scheduled to start on thursday oct . 26 th . el paso still has not\nindicated\nthe daily volume yet . more details will follow . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.063+0000", "entityId": 3376, "properties": {"text": "Subject: hpl nom for october 25 , 2000\n( see attached file : hplnl 025 . xls )\n- hplnl 025 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.067+0000", "entityId": 3377, "properties": {"text": "Subject: enron / hpl actuals for october 23 , 2000\nteco tap 150 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.072+0000", "entityId": 3378, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\nvance :\nwhen will the new deal , or deal # 380710 be made retroactive in path\nmanager ? the close deadline for expense contracts is wednesday october 25 th .\nfred\nmary poorman @ enron\n10 / 24 / 2000 02 : 17 pm\nto : vance l taylor / hou / ect @ ect\ncc : fred boas / hou / ect @ ect , nick moshou / corp / enron @ enron , cynthia\nhakemack / hou / ect @ ect , kristen j hanson / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , pat clynes / corp / enron @ enron , robert cotten / hou / ect @ ect ,\ntom acton / corp / enron @ enron , jackie morgan / hou / ect @ ect\nsubject : re : meter 0980438 - acock production ? ? ? ? ? ?\ni have spoken with clem , this meter is now \" non - allocatable \" , not unlike\nmeter 8751 on big cowboy . this meter needs to be set up as a receipt meter\nattached to the gulf energy 27 - 009 - 08 agreement . this gas began flowing on\n7 / 7 / 00 , so deal ticket 380710 , which begins 9 / 1 / 00 will need to be backed up\nto july to account for the purchase of this production .\nbob : please email me when the deal ticket is complete so that i can have\nfred set up accounting arrangements on gulf energy .\nfred : can you please determine whether or not we have paid ccgm for this gas ?\nonce again , thank you all for your assistance .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.077+0000", "entityId": 3379, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\nmary ,\ni have paid ccgm manually for both july and august production . sept\nproduction is due on the 31 st .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.082+0000", "entityId": 3380, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\ni have spoken with clem , this meter is now \" non - allocatable \" , not unlike\nmeter 8751 on big cowboy . this meter needs to be set up as a receipt meter\nattached to the gulf energy 27 - 009 - 08 agreement . this gas began flowing on\n7 / 7 / 00 , so deal ticket 380710 , which begins 9 / 1 / 00 will need to be backed up\nto july to account for the purchase of this production .\nbob : please email me when the deal ticket is complete so that i can have\nfred set up accounting arrangements on gulf energy .\nfred : can you please determine whether or not we have paid ccgm for this gas ?\nonce again , thank you all for your assistance .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.087+0000", "entityId": 3381, "properties": {"text": "Subject: re : meter 984229 - roos common point - trade zone 18\nvance :\nper our conversation , we have two possible options to resolve this deal ,\ndepending on whether the wellheads are producing or not .\nproducing : if that is the case , the purchase from calpine , and any contracts\nhedged to it will need to be backed up in the system to a wellhead level .\nonce that is done , i will need to research in the system how those wellheads\nwere allocated and paid and reallocate to your calpine deal . this will\nprobably have to go back to hplc ' s ownership of hplr ' s gathering assets .\nnon - producing : should we determine that the common point and any wells\nbehind it have been shut - in , or p & a ' d , we will need to reallocate this deal\nto zero , and unwind any hedges against it ( or , move the hedges to another\ndeal , if possible . since the deal is older , we probably sold lower priced\ncontracts against the production and a buy - back today would possibly result\nin a financial loss ) .\nin either case , the deal needs to be cleaned up back to the date of last flow\nat meter 4229 , which i am currently looking into . i will email you as soon\nas i ascertain that date .\nin lieu of the past couple of days , we may need to look at all of the deals\nwhich were impacted by hplc ' s aquisition of hplr ' s gathering to ensure that\nthey are being captured properly , both at a book level and at a state filing\nlevel . please let me know what your thoughts are as to how to accomplish\nthis .\nthank you again for all of your hard work in this area ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.091+0000", "entityId": 3382, "properties": {"text": "Subject: november prelim wellhead production - estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 10 / 24 / 2000 11 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n10 / 24 / 2000 11 : 51 am\nto : robert cotten / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : november prelim wellhead production - estimate\nbob ,\nhere ' s a november preliminary updated file .\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 10 / 24 / 2000\n11 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n10 / 23 / 2000 04 : 42 pm\nto : robert cotten / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , mary m smith / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : november prelim wellhead production - estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\nnovember . please be advised that this is a preliminary estimate as to this\ndate , we have received no noms for november and there may be revisions from\nthe traders . i will update you with any revisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.096+0000", "entityId": 3383, "properties": {"text": "Subject: re : meter 984229 - roos common point - trade zone 18\nvance ,\nthe issue is that the 4229 meter has been terminated in the system , per\ncheryl jones , effective 2 / 00 . therefore , any purchases at that point , for\n02 / 00 forward , are ua 4 and are probably having a negative impact on your\naccrual . i think perhaps this deal should be backed up to a wellhead level ?\nthere have not been any measured volumes at 4229 since its termination , so , i\ndon ' t know where exactly the term calpine deal is , physically . your\nassistance in clearing this up is greatly appreciated .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.100+0000", "entityId": 3384, "properties": {"text": "Subject: re : meter 984229 - roos common point - trade zone 18\nmary ,\nhplc currently has a gas purchase agreement ( global # 96014987 ) in place with\ncalpine that extends through 5 / 31 / 2001 . sitara deal no . 133259 correctly has\nthis contract attached to it . effective 11 / 1 / 1998 the contract was amended\nreleasing gouger wells no . 5 & 6 . these wells were apparently the only\nproducing wells behind this point . evidence being no measured volumes in\nmips . there are however other non producing wells behind this point . is\nyour sept\nhowever , they were not added behind meter 6835 . therefore , i do not agree\nthat the deal ( 133259 ) should be edited to change the meter .\nhopefully this information is useful !\nvlt\nx 3 - 6353\nmary poorman @ enron\n10 / 23 / 2000 02 : 06 pm\nto : katherine benedict / hou / ect @ ect , julie meyers / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc :\nsubject : meter 984229 - roos common point - trade zone 18\ni am not sure who should handle this , so , i shared the \" wealth \" . on deal\nticket 133259 , purchase from calpine , the deal is input at meter 4229 , which ,\nper the email below , was terminated . i have an unresolvable ua 4 issue at\nmeter 4229 for september and for october . i have changed the meter\ndesignation for november forward , however , i receive an error in sitara when\ni attempt to change either the prior or current month . this deal should have\nbeen changed to meter 6835 effective back in february of this year . please\nlet me know what i can do to resolve this issue asap .\nthanks ,\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 10 / 23 / 2000 02 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : cheryl jones 10 / 03 / 2000 08 : 55 am\nto : katherine benedict / hou / ect @ ect , mary poorman / na / enron @ enron\ncc :\nsubject : meter 984229 - roos common point - trade zone 18\ni just talked to the tech - bobby husky and he confirmed that meter 984229 has\nbeen removed . now the other roos station is 986835 .\nthanks ,\nc . j . x 67787\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cheryl jones / gpgfin / enron on 10 / 03 / 2000\n08 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine benedict @ ect\n09 / 20 / 2000 10 : 01 am\nto : cheryl jones / gpgfin / enron @ enron , mary poorman / na / enron @ enron\ncc :\nsubject : meter 984229 - roos common point - trade zone 18\ncheryl ,\nfyi - here is the message from mary poorman in logistics .\nmary ,\ncheryl is going to call the field and find out if this meter should still be\nincluded on the termination list and also see if the field people see any gas\nflow on the meter .\nthanks ,\nkathy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine benedict / hou / ect on 09 / 20 / 2000\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n09 / 20 / 2000 09 : 48 am\nto : robert cotten / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc : katherine benedict / enron _ development @ enron _ development\nsubject : meter 984229 - roos common point - trade zone 18\nkathy and i are trying to clean up an unaccounted for issue at the above\nreferenced meter . the system ( pops ) does not show a bav flow or an actual\nflow for prior months . kathy phoned measurement to inquire about mips\nvolumes and was informed that this meter is on a disabled status list back to\nfebruary , 2000 . i am showing a purchase from calpine at this meter ( deal\nticket 133259 ) on gathering agreement\ni would greatly appreciate your help in determining the current status of\nthis meter and this deal . please forward any information you may have .\nthank you for your time and patience ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.105+0000", "entityId": 3385, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\nvance ,\nthank you for the information . that explains the deal . what we need now , to\ncorrectly book these volumes and clear any current issues in volume\nmanagement and / or settlements which would date back to the inception of the\ndeal . this will also ensure that your book is correct for this deal . i\nthink that bob cotten is the one to correct / add the deal , and then tom acton\nand myself will need to make requests of volume mgmt . to kick - off the\nre - booking process .\nthank you for your time ,\nmary\next . 35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.109+0000", "entityId": 3386, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\nmary ,\nhplc executed a gas purchase agreement with ccgm , lp effective 7 / 1 / 2000 .\nhplc secured the purchase of production from the briscoe # 1 well in webb\ncounty for 12 months ; the producer of this well is hoover oil however ,\ndid not do so for the month of november .\nhopefully this is useful information !\nvlt\nx 3 - 6353\nmary poorman @ enron\n10 / 24 / 2000 09 : 03 am\nto : fred boas / hou / ect @ ect\ncc : nick moshou / corp / enron @ enron , cynthia hakemack / hou / ect @ ect , kristen j\nhanson / hou / ect @ ect , vance l taylor / hou / ect @ ect , daren j farmer / hou / ect @ ect ,\npat clynes / corp / enron @ enron , robert cotten / hou / ect @ ect , tom\nacton / corp / enron @ enron\nsubject : re : meter 0980438 - acock production ? ? ? ? ? ?\nfred :\ni have run this issue by clem cernosek for further research , and expect to\nhave his answer this afternoon . in the meantime , it is my understanding that\nthis well is behind the big cowboy system . at this time , we have deal ticket\n380710 , purchase from ccgm , l . p . on hplc / hplc . this deal should probably be\non gulf energy / bigcowboy . the producer , as i understand it , is acock\nproduction , however , i may be mis - informed . any insight which any of you can\nshed on this deal would be very welcome , i would like to capture this\naccurately and definitively as early on as possible , so as to prevent any\nfuture issues .\nthank you all for your patience and assistance ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.114+0000", "entityId": 3387, "properties": {"text": "Subject: re : meter 0980438 - acock production ? ? ? ? ? ?\nfred :\ni have run this issue by clem cernosek for further research , and expect to\nhave his answer this afternoon . in the meantime , it is my understanding that\nthis well is behind the big cowboy system . at this time , we have deal ticket\n380710 , purchase from ccgm , l . p . on hplc / hplc . this deal should probably be\non gulf energy / bigcowboy . the producer , as i understand it , is acock\nproduction , however , i may be mis - informed . any insight which any of you can\nshed on this deal would be very welcome , i would like to capture this\naccurately and definitively as early on as possible , so as to prevent any\nfuture issues .\nthank you all for your patience and assistance ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.120+0000", "entityId": 3388, "properties": {"text": "Subject: november prelim wellhead production - estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 10 / 24 / 2000 08 : 52\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n10 / 23 / 2000 04 : 42 pm\nto : robert cotten / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , mary m smith / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : november prelim wellhead production - estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\nnovember . please be advised that this is a preliminary estimate as to this\ndate , we have received no noms for november and there may be revisions from\nthe traders . i will update you with any revisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.129+0000", "entityId": 3389, "properties": {"text": "Subject: proposed solution\npat ,\ni have been working with volume management , settlements , vance , and bob to\nclean up some prior period and prior - to - current month issues . this process\nshould result in a correction to booked profit / loss for vance and the desk .\nthis has brought to my attention that we have been paying some parties\nmanually for volumes when deals are not correctly entered . i would propose\nthat logistics be included in the communication of when checks are manually\ncut . it would be especially beneficial if we tracked manual checks by\ncounterparty , meter , and / or deal ticket id or price . i feel that this will\nallow us to spot and resolve potential issues more effectively .\nplease let me know what your thoughts are on this matter .\nthank you for your time ,\nmary\next 35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.135+0000", "entityId": 3390, "properties": {"text": "Subject: cleburne - tenaska iv plant\ndaren ,\ni ' m trying to put together the 2001 operating budget for the plant . i need a\nconservative forecast , per month , of the price that could be obtained by\nselling our excess volumes .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.140+0000", "entityId": 3391, "properties": {"text": "Subject: txu fuels / sds nomination for november 2000\nattached is the november 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuels ( previously tufco ) and sds . please advise\nshould you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.145+0000", "entityId": 3392, "properties": {"text": "Subject: txu fuels / sds nomination for november 2000 - revised\nattached is the november 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuels ( previously tufco ) and hpl resources co . ,\n( txu fuels contr . # 3949 ) , as well as our november 2000 nomination for takes\nunder the gas sales and purchase contract between txu fuels and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : minhplno 0 . xls ) ( see attached file : sdsnom . xls )\n- minhplno 0 . xls\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.149+0000", "entityId": 3393, "properties": {"text": "Subject: txu fuels / sds nomination for november 2000\nattached is the october 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuels ( previously tufco ) and hpl resources co . ,\n( txu fuels contr . # 3949 ) , as well as our september 2000 nomination for takes\nunder the gas sales and purchase contract between txu fuels and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : minhplno 0 . xls ) ( see attached file : sdsnom . xls )\n- minhplno 0 . xls\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.154+0000", "entityId": 3394, "properties": {"text": "Subject: hpl nom for october 26 , 2000\n( see attached file : hplnl 026 . xls )\n- hplnl 026 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.159+0000", "entityId": 3395, "properties": {"text": "Subject: enron / hpl actuals for october 24 , 2000\nteco tap 72 . 922 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.164+0000", "entityId": 3396, "properties": {"text": "Subject: fw : n . padre 883 gas allocation\ndaren and lauri ,\nper gary , i am forwarding the below percentage split for spinnaker . i have\nhighlighted the split in blue .\nthank you ! ! ! !\nchristy\n39050\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 10 / 24 / 2000\n03 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndan mccue on 10 / 09 / 2000 10 : 50 : 23 am\nto : \" ' christy . sweeney @ enron . com ' \"\ncc : \" ' gbryan @ enron . com ' \" , \" bill young ( e - mail ) \"\nsubject : fw : n . padre 883 gas allocation\nchristy , i think there is a good chance that the information shown below\nwent to you , or your office .\ni would like to get involved in finalizing plans for revenue distribution\nfor the n . padre production . i am certain you are way ahead of me on this\nmatter . spinnaker expects a division order title opining within a few\nweeks . i also expect the attorney to make some title requirements which\nwill delay a final opinion . in talking with ranger and the houston\nexploration company , they are prepared to receive their gross ( shown below )\nand be responsible to their respective orri owners .\nhow do you recommend we proceed ? will hpl pay taxes on behalf of the\nparties ?\nwhen you get a minute , please call me at 713 / 759 - 1770 .\nthanks ,\ndan mccue\n> - - - - - original message - - - - -\n> from : kenny orr\n> sent : wednesday , september 27 , 2000 3 : 38 pm\n> to : kelly barnes ; dan mccue\n> cc : ' billyoung 3 @ aol . com '\n> subject : n . padre 883 gas allocation\n>\n>\n>\n> i informed a person at houston pipeline company that the gas volumes\n> should be allocated as follows :\n>\n>\n> state of texas 21 . 894500 %\n> ranger 27 . 336925 %\n> spinnaker 27 . 336925 %\n> houston exploration 23 . 431650 %\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.168+0000", "entityId": 3397, "properties": {"text": "Subject: potential list for november\ndaren :\nhere is a list of potential deals for this november :\nbrigham oil and gas , lopez mineral trust # 2 , meter 9865 , 6000 mcfd .\nphoenix gas pipeline , phoenix taylor # 1 , meter unknown , 3000 mcfd\npressler petroleum , pressler stoval # 2 , meter 6821 , 300 - 400 mcfd\nsuperior natural gas , walter hamilton # 1 , meter unknown , 3500 mcfd\nthese numbers are not included in vance ' s nomination .\nlet me know if you need any additional information .\nthank you ,\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.174+0000", "entityId": 3398, "properties": {"text": "Subject: cleburne - tenaska iv plant\ndaren ,\ni ' m trying to put together the 2001 operating budget for the plant . i need a\nconservative forecast , per month , of the price that could be obtained by\nselling our excess volumes .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.178+0000", "entityId": 3399, "properties": {"text": "Subject: rockets schedule\nthe schedule is attached . i will remind you a few days in advance to let you\nknow which games you have tickets to .\nlaura", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.183+0000", "entityId": 3400, "properties": {"text": "Subject: natural gas nomination for 11 / 00\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for november 2000 :\n38 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for november 2000 :\n10 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.188+0000", "entityId": 3401, "properties": {"text": "Subject: meter 6387 & 5192\ndaren - there is flow at meters 6387 & 5192 for oct . without a nom .\ndeal contract last month of activity counterparty\nmeter 6387 133179 hpl 215 sept . 00 duke energy trading\nmeter 5192 269123 ena 201 nov . 99 duke energy trading\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.193+0000", "entityId": 3402, "properties": {"text": "Subject: eastrans november first of the month nominations\neffective 11 / 1 / 00 deliveries to eastrans is 30 , 000 mmbtu / dy\nthe redeliveries will be :\n7200 from fuels cotton valley\n22800 to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.197+0000", "entityId": 3403, "properties": {"text": "Subject: enron / hpl actuals for october 25 , 2000\nteco tap 20 . 000 / enron ; 46 . 667 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.202+0000", "entityId": 3404, "properties": {"text": "Subject: hpl nom for october 27 , 2000\n( see attached file : hplnl 027 . xls )\n- hplnl 027 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.207+0000", "entityId": 3405, "properties": {"text": "Subject: spinaker / n . padre island block 883 : allocations\nper our various discussions , i am sending an email to reiterate the\ndisposition of volumes at meter 9862 , the lehman spinaker pay meter . at this\ntime , the general land office is transporting their share of production\n( 21 . 8945 % interest ) and hpl is purchasing the remaining 78 . 1055 % .\nthe glo has nominated a transport volume at meter 9848 , effective september\n1 , 2000 . during this time , some test gas flowed . i have had the hpl\npurchase back - dated to coincide with the transport nomination , and have had\nboth deals moved to 9862 . the meter should probably be designated a\ncallout / swing so that the proper equity percentages can be allocated after\nthe production month by volume management .\nfor october production forward , i am going to re - rank / confirm the pay meter\nto ensure that the glo receives a volume which should be close to their\npercentage after actuals close for the month . this should alleviate any\nlarge balance swings on their agreement .\nanita : for september , i need an accounting arrangement on deal ticket\n379424 ; hpl gathering agmt . at meter 9862 . please unallocate the transport\nand purchase at 9848 . the meter is a daily swing right now . let me know\nwhen you are ready and i will change the allocation methodology .\ni apologize for the length of this email , i want to make sure that we are all\non the same page , to the extent that we need to be , prior to this deal\ngetting too far down the road . please do not hesitate to call me if you have\nany questions , comments , concerns , etc . i am at extension 35251 .\nthank you all for your time and patience ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.211+0000", "entityId": 3406, "properties": {"text": "Subject: spot deals\ni have created and entered the following deals in sitara as hplc - im\nwellhead purchases for november , 2000 production :\ndeal # counterparty meter # volume\n452582 cokinos nat gas 9840 890 killed\n452574 crosstex energy 9858 1 , 000\n452579 cummins & walker 9857 537 killed\n452590 duke energy trad 6347 139\n452595 coastal merchant 5848 183\n452597 coastal merchant 5923 562\n452600 heatherloch mun 6879 359\n452601 pringle resources 9849 300\n453067 shoreline gas 9860 700\n452566 suemaur explor 9856 2 , 700\n453305 swift energy 2630 322\n453483 tri - union devel 2697 1 , 016\n453525 vintage gas , inc 9603 1\n453572 whiting petroleum 6523 106\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.216+0000", "entityId": 3407, "properties": {"text": "Subject: re : nom change - effective oct 26 , 2000 ; sg marshall - hpl meter\n98 - 6296\ndeal # 126281 has been revised as noted below .\nbob\nsuzanne _ saldivar @ eogresources . com on 10 / 26 / 2000 11 : 09 : 11 am\nto : rcotten @ enron . com\ncc :\nsubject : nom change - effective oct 26 , 2000 ; sg marshall - hpl meter 98 - 6296\ndue to loss of production from the sg marshall wells , a nom change from\n5 , 200 mmbtu / d to 4 , 300 will be effective oct 26 , 2000 . please call me\n( 713 ) 651 - 6858 with any questions . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.220+0000", "entityId": 3408, "properties": {"text": "Subject: neon discussion november 1\nhere ' s material for this upcoming week .\n?\nbobby\n- neon roaring 3 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.224+0000", "entityId": 3409, "properties": {"text": "Subject: enron / hpl actuals for october 26 , 2000\nteco tap 100 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.229+0000", "entityId": 3410, "properties": {"text": "Subject: enron / hpl nom for october 28 , 2000\n( see attached file : hplnl 028 . xls )\n- hplnl 028 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.234+0000", "entityId": 3411, "properties": {"text": "Subject: re : coastal ctr # 96008903 meter 0984179 sit # 135714\ni spoke with savandra leassear this past tuesday sept 24 th and let her know\nthat her deal maker needs to contact brian riley about the matter .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.242+0000", "entityId": 3412, "properties": {"text": "Subject: re : coastal ctr # 96008903 meter 0984179 sit # 135714\nhaving discussed the matter with brian riley , hpl has no intention of\ncontacting coastal to negotiate any type of deal affecting the gas received\nin september at at meter 4179 . it was brian ' s opinion that the gas should be\nconsidered strangers gas since hpl has no contract or price . it is\nsuggested that nick moshou contact his counterpart at coastal , relaying this\ninformation and suggesting coastal ' s trader contract brian riley .\ndonald\nmary poorman @ enron\n10 / 27 / 2000 10 : 05 am\nto : nick moshou / corp / enron @ enron\ncc : anita luong / hou / ect @ ect , brian m riley / hou / ect @ ect , pat\nclynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect\nsubject : re : coastal ctr # 96008903 meter 0984179 sit # 135714\nnick ,\ni understand that they terminated their agreement . however , i don ' t feel\nthat we can confiscate their production . we need to either pay them for the\ngas , or cut a deal to redeliver a like volume to them at another meter .\ngiven the decrease in prices from september to current and prompt month , i\nwould guess that they want to be paid . we won ' t know that until we call\nthem . i don ' t know where the responsibility lies as far as calling to\nexplain to them that we took delivery of their gas until the meter was\nshut - in .\nplease let me know if i can do anything further to assist .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.249+0000", "entityId": 3413, "properties": {"text": "Subject: re : meter 984229 - roos common point - trade zone 18\nmary ,\nhplc meter number 0984229 was physically remove from service in december ,\n1999 . typically , before hpl physically pulls a meter , production has ceased\nat minimum for 6 months or the production has been released . in the case of\nthe roos common point , the producing wells were released and attached to\nmeter 0989740 in 11 / 98 and the remaining wells are non - producing .\nresultingly , the only viable option for resolution is option 2 . we should\ntake the deal to zero by \" unwinding \" it .\nvlt\nx 3 - 6353\nmary poorman @ enron\n10 / 24 / 2000 12 : 40 pm\nto : vance l taylor / hou / ect @ ect\ncc : katherine benedict / hou / ect @ ect , julie meyers / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , pat clynes / corp / enron @ enron , robert cotten / hou / ect @ ect\nsubject : re : meter 984229 - roos common point - trade zone 18\nvance :\nper our conversation , we have two possible options to resolve this deal ,\ndepending on whether the wellheads are producing or not .\nproducing : if that is the case , the purchase from calpine , and any contracts\nhedged to it will need to be backed up in the system to a wellhead level .\nonce that is done , i will need to research in the system how those wellheads\nwere allocated and paid and reallocate to your calpine deal . this will\nprobably have to go back to hplc ' s ownership of hplr ' s gathering assets .\nnon - producing : should we determine that the common point and any wells\nbehind it have been shut - in , or p & a ' d , we will need to reallocate this deal\nto zero , and unwind any hedges against it ( or , move the hedges to another\ndeal , if possible . since the deal is older , we probably sold lower priced\ncontracts against the production and a buy - back today would possibly result\nin a financial loss ) .\nin either case , the deal needs to be cleaned up back to the date of last flow\nat meter 4229 , which i am currently looking into . i will email you as soon\nas i ascertain that date .\nin lieu of the past couple of days , we may need to look at all of the deals\nwhich were impacted by hplc ' s aquisition of hplr ' s gathering to ensure that\nthey are being captured properly , both at a book level and at a state filing\nlevel . please let me know what your thoughts are as to how to accomplish\nthis .\nthank you again for all of your hard work in this area ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.255+0000", "entityId": 3414, "properties": {"text": "Subject: re : coastal ctr # 96008903 meter 0984179 sit # 135714\nnick ,\ni understand that they terminated their agreement . however , i don ' t feel\nthat we can confiscate their production . we need to either pay them for the\ngas , or cut a deal to redeliver a like volume to them at another meter .\ngiven the decrease in prices from september to current and prompt month , i\nwould guess that they want to be paid . we won ' t know that until we call\nthem . i don ' t know where the responsibility lies as far as calling to\nexplain to them that we took delivery of their gas until the meter was\nshut - in .\nplease let me know if i can do anything further to assist .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.260+0000", "entityId": 3415, "properties": {"text": "Subject: re : coastal ctr # 96008903 meter 0984179 sit # 135714\nmjg assigned the meter to coastal eff . march 2000 . after finally executing\nthe assignment in mid august , coastal then sent a termination letter eff\n9 / 01 / 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.265+0000", "entityId": 3416, "properties": {"text": "Subject: re : coastal ctr # 96008903 meter 0984179 sit # 135714\ni checked the meter for september , there are measured volumes of 36 , 085 dth\nfor the month . the meter had a purchase from mjg at the beginning of the\nmonth . it looks like it was zeroed after the fact . we are going to need to\npay someone for this production . . . . i think we may need to extend the deal\nuntil the point at which the meter was actually shut - in . i do not agree with\nallocating this gas to strangers , it is not a true line gain / loss , or a\ndirect result of any pipe / well work .\nplease advise so that anita and i can clean this up as promptly as possible .\nmary\nx 35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.269+0000", "entityId": 3417, "properties": {"text": "Subject: nov 1 st entex nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by liz bellamy / na / enron on 10 / 27 / 2000 11 : 37\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 10 / 27 / 2000 11 : 15 : 30 am\nto : lbellamy @ enron . com\ncc : janet . h . wallis @ enron . com , troy _ a _ benoit @ reliantenergy . com\nsubject : nov 1 st entex nom\nas promised our nov 1 noms are attached . . . let us know if you need anything\n. . . lets hope for some weather . . . .\n( see attached file : hpl - nov . xls )\n- hpl - nov . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.274+0000", "entityId": 3418, "properties": {"text": "Subject: 11 / 00 co - owner ' s avails .\nfor anyone else other than carlos who needs it\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 10 / 30 / 2000 03 : 20\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" steve holmes \"\n10 / 30 / 2000 02 : 06 pm\nto : ,\ncc :\nsubject : 11 / 00 co - owner ' s avails .\nplease see the attached .\n- 1100 co - owners volumes to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.278+0000", "entityId": 3419, "properties": {"text": "Subject: bad estimates on 28 th\nwe are getting bad numbers in pops for sat . oct . 28 th . they are the same as\noct . 27 th ( 27 th is correct ) . please watch imbalances very closely . double\ncheck\nall numbers . thanks , pat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.284+0000", "entityId": 3420, "properties": {"text": "Subject: october deals\ndaren ,\ni have 2 allocation exceptions that require a deal to be extended . meter\n98 - 1488 tenaska is showing small volumes flowed on days there was no deal .\ncan you extend the deal throughout the month so that the volumes will have a\ndeal to link to . i have the same situation on meter 98 - 1601 .\nif you have any questions , please let me know .\nthanks ,\nsusan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.289+0000", "entityId": 3421, "properties": {"text": "Subject: meter 6315\ndaren ,\ni have some flow at the above referenced meter without a deal . flow was for\nthe first 2 days only , and probably occured as the meter was in the process\nof being shut in . we purchased the gas from torch - rally partnership in\nsept . can you extend the deal , or should i allocated off to strangers ?\nplease advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.294+0000", "entityId": 3422, "properties": {"text": "Subject: sale to rhone poule meter 988078\ni have a sale at the above referenced meter which begins on the 5 th of\noctober . gas flowed for the first four days without a deal . please input a\ndeal to cover .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.299+0000", "entityId": 3423, "properties": {"text": "Subject: enron year end 2000 performance management process\nreminder , enron ' s year - end 2000 performance management process has begun !\nduring the feedback phase you will need to access pep at\nhttp : / / pep . corp . enron . com to suggest reviewers who can provide feedback on\nyour performance . you may also be requested to provide feedback on fellow\nemployees , but the system will only be open for feedback until november 17 th !\nhelpdesk representatives will be available to answer questions throughout the\nprocess . you may contact the helpdesk at :\nhouston : 1 - 713 - 853 - 4777 , option 4\nlondon : 44 - 207 - 783 - 4040 , option 4\ne - mail : perfmgmt @ enron . com\nyour user id & password for pep at http : / / pep . corp . enron . com are :\nuser id : 90011947\npassword : welcome", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.304+0000", "entityId": 3424, "properties": {"text": "Subject: revision # 1 - hpl nom for october 31 , 2000\n( see attached file : hplnl 031 . xls )\n- hplnl 031 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.309+0000", "entityId": 3425, "properties": {"text": "Subject: enron / hpl actuals for october 27 - 29 , 2000\noctober 27 , 2000\nteco tap 100 . 000 / hpl gas daily\noctober 28 , 2000\nteco tap 104 . 133 / hpl gas daily\noctober 29 , 2000\nteco tap 100 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.314+0000", "entityId": 3426, "properties": {"text": "Subject: october flow at meter 982694 zavisch # 2\ni have measurement actuals for the first 14 days at this meter with no deal\nin the system . this is wellhead production . please advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.319+0000", "entityId": 3427, "properties": {"text": "Subject: re : flow volumes at oxy gladewater , meter 98926\ni checked metered daily , and this has been on since the first of october , we\nhad a purchase deal in place for the first 10 days , which went to zero from\nthe 11 th forward .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.324+0000", "entityId": 3428, "properties": {"text": "Subject: flow volumes at oxy gladewater , meter 98926\nbob ,\ni have a volume of about 713 / day at the above referenced meter . i don ' t\nhave a deal in the system to allocate to for october ( flow began on 10 / 11 ) .\nthis is hitting my exception report . please advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.329+0000", "entityId": 3429, "properties": {"text": "Subject: holiday party - save the date\nplease click on the link below\nsave the date", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.334+0000", "entityId": 3430, "properties": {"text": "Subject: re : meter 6315\nthe contract attached to that deal was a gtc firm which ended 9 / 30 / 00 . i\ncreated a new ticket for those two days ( 461059 ) .\njulie\ndaren j farmer\n10 / 30 / 2000 04 : 56 pm\nto : julie meyers / hou / ect @ ect , mary poorman / na / enron @ enron\ncc :\nsubject : meter 6315\njm ,\ncan you extend the contrtact on deal 138605 thru 10 / 2 / 00 ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 10 / 30 / 2000\n04 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n10 / 30 / 2000 03 : 55 pm\nto : daren j farmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : meter 6315\ndaren ,\ni have some flow at the above referenced meter without a deal . flow was for\nthe first 2 days only , and probably occured as the meter was in the process\nof being shut in . we purchased the gas from torch - rally partnership in\nsept . can you extend the deal , or should i allocated off to strangers ?\nplease advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.339+0000", "entityId": 3431, "properties": {"text": "Subject: tenaska gas management agreement\ndaren ,\ncan you get me the specifics on the consumer price index as you all would\nlike to see it referenced in the agreement . is there a specific publication\nthat i can reference like i do for hsc proces in the first of the month\ninside ferc - - let me know", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.343+0000", "entityId": 3432, "properties": {"text": "Subject: duke exchange deal 9 / 00\ndaren :\nthere is a spot deal and an exchange deal for 9 / 6 . the spot deal is 391119\nand the exchange deal is 231758 . they both have the same volume scheduled ,\n10 , 545 mmbtu . which deal do we use ? duke shows the volume on the exchange\ndeal . there is also spot deal 387571 for day 6 , but i think it ' s ok . the\ndeal was for 30 , 000 mmbtu and we have an actual of 29 , 420 mmbtu\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.352+0000", "entityId": 3433, "properties": {"text": "Subject: announcement for wednesday night\nhey leaders ,\n?\nas you know there will be a combined high school / middle school devo this\ncoming sunday evening . ? i just got word today that part of the time will be\nspent doing some service oriented things , one of which will involve the\nbenevolence program . ? let your teens know tomorrow night at neon that they\nneed to bring a small grocery sack of food with them on sunday evening . ?\n?\nthanks .\n?\nbobby\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.359+0000", "entityId": 3434, "properties": {"text": "Subject: performance management process - new password\naccording to our system records , you have not yet logged into the enron\nperformance management system ( pep ) . as a result your temporary password\nfor the pep system has expired . your user id and new password are provided\nbelow .\nduring the feedback phase you will need to access pep at\nhttp : / / pep . corp . enron . com to suggest reviewers who can provide feedback on\nyour performance . you may also be requested to provide feedback on fellow\nemployees , but the system will only be open for feedback until november 17 th !\nhelpdesk representatives will be available to answer questions throughout the\nprocess . you may contact the helpdesk at :\nhouston : 1 - 713 - 853 - 4777 , option 4\nlondon : 44 - 207 - 783 - 4040 , option 4\ne - mail : perfmgmt @ enron . com\nyour user id and new pep password are :\nuser id : 90011947\npassword : wsrxtivm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.365+0000", "entityId": 3435, "properties": {"text": "Subject: meter # 0071\nthe volume on deal # 138550 , north central oil corporation , has been revised\nfrom 14 , 500 to 15 , 000 / d effective 11 / 1 / 00 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.370+0000", "entityId": 3436, "properties": {"text": "Subject: hpl / enron nom . for 11 / 01 / 00\n( see attached file : hplnl 101 . xls )\n- hplnl 101 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.375+0000", "entityId": 3437, "properties": {"text": "Subject: enron / hpl actuals for october 30 , 2000\noctober 30 , 2000\nteco tap 50 . 000 / enron\n50 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.380+0000", "entityId": 3438, "properties": {"text": "Subject: re : flow volumes at oxy gladewater , meter 98926\nmary ,\nthere was an assignment from oxy to eog retroactive to 4 / 1 / 00 . this has been\nreflected in sitara and pops .\nbob\nmary poorman @ enron\n10 / 30 / 2000 03 : 29 pm\nto : mary poorman / na / enron @ enron\ncc : robert cotten / hou / ect @ ect , daren j farmer / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : flow volumes at oxy gladewater , meter 98926\ni checked metered daily , and this has been on since the first of october , we\nhad a purchase deal in place for the first 10 days , which went to zero from\nthe 11 th forward .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.385+0000", "entityId": 3439, "properties": {"text": "Subject: meter # 9658\nas requested by kcs resources , the volume on deal # 125822 has been revised\nfrom 10 , 494 to 8 , 600 / d effective 11 / 1 / 00 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.391+0000", "entityId": 3440, "properties": {"text": "Subject: meter # 9859\ndaren ,\ndeal # 450391 has been entered in sitara as a spot wellhead purchase from\nwagner oil company . the deal is for 250 / d at meter # 9859 priced at ifhsc\nless $ 0 . 11 . the deal was not in vance ' s nom .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.395+0000", "entityId": 3441, "properties": {"text": "Subject: tenaska gas management agreement\ndaren ,\ncan you get me the specifics on the consumer price index as you all would\nlike to see it referenced in the agreement . is there a specific publication\nthat i can reference like i do for hsc proces in the first of the month\ninside ferc - - let me know", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.400+0000", "entityId": 3442, "properties": {"text": "Subject: meter 980070 lonestar / hpl rusk for 10 / 99\npeggy and patricia ,\nthis is the last allocation exception i have to clear . when you have the\ntime , could you check the volumes for gas days 28 - 31 for october , 1999 . i\nphoned peggy this morning regarding this meter , and apparently it is outside\nmeasured . i need to verify that flow occured so that i can have a deal ( s )\nextended to allocate the flow to .\nthank you again for all of your assistance , i really appreciate all that you\nhave done .\nmary\ndaren ,\ni am going to leave a copy of the meter volume , and prior purchases to review .\nthank you for you assistance and patience .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.405+0000", "entityId": 3443, "properties": {"text": "Subject: re : meter 6387 & 5192\ndaren - what is the status of meter 6387 ?\nal\ndaren j farmer\n10 / 26 / 2000 12 : 52 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : meter 6387 & 5192\ni created # 454057 for the flow at mtr 5192 . canny conner is looking into mtr\n6387 . i will let you know when he determines what we will be doing .\nd\naimee lannou 10 / 26 / 2000 10 : 01 am\nto : daren j farmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : meter 6387 & 5192\ndaren - there is flow at meters 6387 & 5192 for oct . without a nom .\ndeal contract last month of activity counterparty\nmeter 6387 133179 hpl 215 sept . 00 duke energy trading\nmeter 5192 269123 ena 201 nov . 99 duke energy trading\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.409+0000", "entityId": 3444, "properties": {"text": "Subject: 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ndaren ,\non the above mentioned dates , there was no nomination at the enerfin meter .\n6 / 3 / 99 and 6 / 8 / 99 revealed activity for ena ( 202 k ) . can the deal be extended\nfor 6 / 4 ( 548 dec . ) and 6 / 9 ( 40 dec . ) to cover this flow so that volume\nmanagement can create an accounting arrangement for these two days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.414+0000", "entityId": 3445, "properties": {"text": "Subject: meter 980070 lonestar / hpl rusk for 10 / 99\nper our conversation , we do not have any numbers with 2 zeros in front .\n980070 does not exists in mips .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by peggy cameron / gpgfin / enron on 11 / 01 / 2000\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman\n11 / 01 / 2000 09 : 18 am\nto : peggy cameron / gpgfin / enron @ enron , patricia kirkwood / gpgfin / enron @ enron\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : meter 980070 lonestar / hpl rusk for 10 / 99\npeggy and patricia ,\nthis is the last allocation exception i have to clear . when you have the\ntime , could you check the volumes for gas days 28 - 31 for october , 1999 . i\nphoned peggy this morning regarding this meter , and apparently it is outside\nmeasured . i need to verify that flow occured so that i can have a deal ( s )\nextended to allocate the flow to .\nthank you again for all of your assistance , i really appreciate all that you\nhave done .\nmary\ndaren ,\ni am going to leave a copy of the meter volume , and prior purchases to review .\nthank you for you assistance and patience .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.420+0000", "entityId": 3446, "properties": {"text": "Subject: re : another hesco issue\nhelp . steve mauch at hesco is wanting an answer asap\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlene richmond / hou / ect on 11 / 01 / 2000\n03 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n11 / 01 / 2000 02 : 45 pm\nto : charlene richmond / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect\nsubject : re : another hesco issue\ncharlene ,\nthis gas purchase is not a part of the wellhead portfolio but is being traded\non the texas desk . i would suggest you get with darren farmer or someone on\nthe desk .\nsorry i could not be of more assistance !\nvlt\nx 3 - 6353\ncharlene richmond\n11 / 01 / 2000 08 : 22 am\nto : julie meyers / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc :\nsubject : another hesco issue\nmeter 986725 for march 2000 . per hesco both traders are gone at ( hesco and\nenron ) and they ( hesco ) were not paid the correct price in march on the\ndays mentioned below . hesco cannot find where the price for these days were\nrecorded . per hesco they were underpaid by $ 32 , 101 . 57 . hesco is wanting to\ncome to our office to have a meeting about clearing this up . it will be nice\nif we don ' t have to meet with them .\nproduction dates are volume price they are\nlooking for\n03 / 12\n2 , 029 2 . 65\n03 / 13\n2 , 009 2 . 65\n03 / 15\n2 , 022 2 . 71\n03 / 16\n1 , 976 2 . 72", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.425+0000", "entityId": 3447, "properties": {"text": "Subject: re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nis this date really june of 1999 ? hopefully we ' re not just finding out about\nthis ?\ni don ' t think we can even process this request . the east desk was not up and\nrunning on unify in june of 1999 . all of our pathing for june of 1999 was in\nautonoms and it ' s not y 2 k compatabile . with the volumes involved being so\nsmall and the accuracy of the data at enerfin in question , why don ' t we let\nthis volume hit the new oba at enerfin as a ppa ? ? ?\ni welcome your thoughts .\nvictor\nfrom : cynthia franklin @ enron 11 / 01 / 2000 02 : 50 pm\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nvictor ,\ncan we go this far back ? please advise .\ncindy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cynthia franklin / corp / enron on 11 / 01 / 2000\n02 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young @ ect\n11 / 01 / 2000 11 : 25 am\nto : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ncynthia / meredith ,\ncan you please scroll below to my request to daren regarding 98 - 0439 and see\nif you can assist me w / this request ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 11 / 01 / 2000 11 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n11 / 01 / 2000 10 : 16 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\njackie ,\nplease get with the east desk on this . if they agree , we can roll the deal .\nd\njackie young\n11 / 01 / 2000 10 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ndaren ,\non the above mentioned dates , there was no nomination at the enerfin meter .\n6 / 3 / 99 and 6 / 8 / 99 revealed activity for ena ( 202 k ) . can the deal be extended\nfor 6 / 4 ( 548 dec . ) and 6 / 9 ( 40 dec . ) to cover this flow so that volume\nmanagement can create an accounting arrangement for these two days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.430+0000", "entityId": 3448, "properties": {"text": "Subject: hey darren\nit ' s me , kari bullington . i just thought i would drop you a line and say\nhello ! ! ! how are you ?\ni sure hated to hear about troy . i don ' t understand how something like that\ncan happen to such an all around great person .\nhope to hear from you ! !\nkari", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.437+0000", "entityId": 3449, "properties": {"text": "Subject: txu deal # 108672\ncould you add meter pge - ls 491 - 754 to txu fuel deal # 108672 for may 12 , 2000\nin sitara ? txu received 2 , 000 mmbtu on that day as part of the gas daily\ncontract , however , the volume is pathed under the wagner brown contract due\nto the meter .\nplease let me know if you have any questions .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.446+0000", "entityId": 3450, "properties": {"text": "Subject: txu noms . for 11 / 02 / 00\n( see attached file : hplnl 102 . xls )\n- hplnl 102 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.451+0000", "entityId": 3451, "properties": {"text": "Subject: shell cogen changes\nfyi\nthe shell cogen ticket is at 105 , 000 dth for nov . same day for the first ,\nshell took 5 m off of 1581 and added 5 m to 1060 .\nplease give me a call if you have any questions .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.458+0000", "entityId": 3452, "properties": {"text": "Subject: texas energy reliability council meeting\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward d gottlob / hou / ect on 11 / 02 / 2000\n10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian redmond\n11 / 02 / 2000 10 : 30 am\nto : tom shelton / hou / ect @ ect , steve hpl schneider / hou / ect @ ect , thomas a\nmartin / hou / ect @ ect , jim schwieger / hou / ect @ ect , edward d gottlob / hou / ect @ ect ,\njames mckay / hou / ect @ ect\ncc :\nsubject : texas energy reliability council meeting\nteam ,\non 15 november , steve and tom s . will represent hpl at a meeting of the texas\nenergy reliability council hosted by commissioner michael williams to discuss\nthe outlook for gas supply and demand in texas this winter . i will dial in\nby phone once i am free from another meeting that morning .\ntom s . can you find out more detail as to what we need to be ready to\ndiscuss and then coordinate with the appropriate hpl people to ensure we are\nprepared at the meeting . specifically , does james or anyone else need to\nattend or be on the call ?\nthanks ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.466+0000", "entityId": 3453, "properties": {"text": "Subject: re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ni ' m assuming from your answer that this is free gas for hplc at this point .\nenron north america corp .\nfrom : victor lamadrid 11 / 01 / 2000 06 : 34 pm\nto : jackie young / hou / ect @ ect , daren j farmer / hou / ect @ ect , clem\ncernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\ncc : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect , beverly\nbeaty / hou / ect @ ect\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nis this date really june of 1999 ? hopefully we ' re not just finding out about\nthis ?\ni don ' t think we can even process this request . the east desk was not up and\nrunning on unify in june of 1999 . all of our pathing for june of 1999 was in\nautonoms and it ' s not y 2 k compatabile . with the volumes involved being so\nsmall and the accuracy of the data at enerfin in question , why don ' t we let\nthis volume hit the new oba at enerfin as a ppa ? ? ?\ni welcome your thoughts .\nvictor\nfrom : cynthia franklin @ enron 11 / 01 / 2000 02 : 50 pm\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nvictor ,\ncan we go this far back ? please advise .\ncindy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cynthia franklin / corp / enron on 11 / 01 / 2000\n02 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young @ ect\n11 / 01 / 2000 11 : 25 am\nto : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ncynthia / meredith ,\ncan you please scroll below to my request to daren regarding 98 - 0439 and see\nif you can assist me w / this request ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 11 / 01 / 2000 11 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n11 / 01 / 2000 10 : 16 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\njackie ,\nplease get with the east desk on this . if they agree , we can roll the deal .\nd\njackie young\n11 / 01 / 2000 10 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ndaren ,\non the above mentioned dates , there was no nomination at the enerfin meter .\n6 / 3 / 99 and 6 / 8 / 99 revealed activity for ena ( 202 k ) . can the deal be extended\nfor 6 / 4 ( 548 dec . ) and 6 / 9 ( 40 dec . ) to cover this flow so that volume\nmanagement can create an accounting arrangement for these two days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.473+0000", "entityId": 3454, "properties": {"text": "Subject: re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nthanks darren , i appreciate it . we all know how often enerfin ' s numbers\nchange . chances are we would have had to reverse any entry we made .\nvictor\ndaren j farmer\n11 / 02 / 2000 02 : 47 pm\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nsorry about this , victor . i didn ' t even pay attention to the date . i was\nthinking this was october business . we will definitely be able to do\nsomthing with this on our side and not involve the east desk .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 11 / 02 / 2000\n02 : 49 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n11 / 02 / 2000 02 : 06 pm\nto : victor lamadrid / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , clem cernosek / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ectcynthia franklin / corp / enron @ enron , meredith\nmitchell / hou / ect @ ect , beverly beaty / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ni ' m assuming from your answer that this is free gas for hplc at this point .\nenron north america corp .\nfrom : victor lamadrid 11 / 01 / 2000 06 : 34 pm\nto : jackie young / hou / ect @ ect , daren j farmer / hou / ect @ ect , clem\ncernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\ncc : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect , beverly\nbeaty / hou / ect @ ect\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nis this date really june of 1999 ? hopefully we ' re not just finding out about\nthis ?\ni don ' t think we can even process this request . the east desk was not up and\nrunning on unify in june of 1999 . all of our pathing for june of 1999 was in\nautonoms and it ' s not y 2 k compatabile . with the volumes involved being so\nsmall and the accuracy of the data at enerfin in question , why don ' t we let\nthis volume hit the new oba at enerfin as a ppa ? ? ?\ni welcome your thoughts .\nvictor\nfrom : cynthia franklin @ enron 11 / 01 / 2000 02 : 50 pm\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\nvictor ,\ncan we go this far back ? please advise .\ncindy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cynthia franklin / corp / enron on 11 / 01 / 2000\n02 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young @ ect\n11 / 01 / 2000 11 : 25 am\nto : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ncynthia / meredith ,\ncan you please scroll below to my request to daren regarding 98 - 0439 and see\nif you can assist me w / this request ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 11 / 01 / 2000 11 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n11 / 01 / 2000 10 : 16 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\njackie ,\nplease get with the east desk on this . if they agree , we can roll the deal .\nd\njackie young\n11 / 01 / 2000 10 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : 6 / 4 / 99 and 6 / 9 / 99 ( 98 - 0439 ) enerfin tetco\ndaren ,\non the above mentioned dates , there was no nomination at the enerfin meter .\n6 / 3 / 99 and 6 / 8 / 99 revealed activity for ena ( 202 k ) . can the deal be extended\nfor 6 / 4 ( 548 dec . ) and 6 / 9 ( 40 dec . ) to cover this flow so that volume\nmanagement can create an accounting arrangement for these two days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.478+0000", "entityId": 3455, "properties": {"text": "Subject: re : revised allocation % ' s - october\nhi daren ,\ni ' m afraid i don ' t understand what you are asking me to do . do you mean that\nyou want cc 105633 moved to logistics pc 12667 . if so , there is a\ncomplicated process in order to do so . has someone else made this request or\nis this your own ? please explain .\nthank you ,\nholly\n3 - 5843\ndaren j farmer @ ect\n11 / 02 / 2000 03 : 34 pm\nto : holly heath / corp / enron @ enron\ncc :\nsubject : re : revised allocation % ' s - october\nplease move my group from risk to logisitcs .\nd\nenron north america corp .\nfrom : irena d hogan 11 / 02 / 2000 03 : 21 pm\nto : dutch quigley / hou / ect @ ect , darron c giron / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , kam keiser / hou / ect @ ect , william kelly / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect , jeffrey c gossett / hou / ect @ ect\ncc :\nsubject : revised allocation % ' s - october\nplease read below and comply as directed below .\nthank you ,\nirena\n- - - - - - - - - - - - - - - - - - - - - - forwarded by irena d hogan / hou / ect on 11 / 02 / 2000 03 : 16\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nholly heath @ enron\n11 / 02 / 2000 02 : 17 pm\nto : robert superty / hou / ect @ ect , brenda f herod / hou / ect @ ect , leslie\nreeves / hou / ect @ ect , shona wilson / na / enron @ enron , sheila glover / hou / ect @ ect ,\nmaria sandoval / hou / ect @ ect , sheri thomas / hou / ect @ ect , d todd\nhall / hou / ect @ ect , mary solmonson / hou / ect @ ect , lisa b cousino / hou / ect @ ect ,\nsally beck / hou / ect @ ect , stacey w white / hou / ect @ ect , diane h cook / hou / ect @ ect ,\nmichael e moscoso / hou / ect @ ect , eugenio perez / hou / ect @ ect , jefferson d\nsorenson / hou / ect @ ect\ncc : heather choate / hou / ect @ ect , irena d hogan / hou / ect @ ect , chantelle\nvillanueva / hou / ect @ ect , yvette g connevey / corp / enron @ enron , mary\ncomello / corp / enron @ enron , lisa shoemake / hou / ect @ ect , maria\nsandoval / hou / ect @ ect , kelly templeton / corp / enron @ enron , lynn\ntippery / hou / ect @ ect , marvia jefferson / hou / ect @ ect , patti\nthompson / hou / ect @ ect , julissa marron / corp / enron @ enron , yolanda\nford / hou / ect @ ect , adrial boals / corp / enron @ enron\nsubject : revised allocation % ' s - october\nattached is a revised allocation file for october . please note that the\nformat of this file has been changed to reflect the new team reporting list .\nalso , \" global markets \" and \" industrial markets \" have been broken out for\nbilling purposes . if you have cost centers that are allocating to either of\nthese teams , please provide a breakdown of those percentages by monday ,\nnovember 6 th .\nall other allocations are due by end of day today .\ni have also included the team reporting list that is currently in use until\nthe end of 2001 .\nthank you for your help . please call if you have any additional questions .\nholly\n3 - 5843", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.483+0000", "entityId": 3456, "properties": {"text": "Subject: cleco deals 449243 & 397957 / state tract 121 ( meter 785 )\nfred or anita ,\ni just wanted to recap our discussion to be sure that we are all on the same\npage . from my understanding , the allocation for meter 785 : state tract 121\nis supplied from bryancy braumley . prior to 09 / 1 / 00 bryancy would calculate\nflow from certain wellheads , total this volume , and then send us an\nallocation that would show how much gas was allocated to texas general land\nand hpl ( sale from cleco ) at meter 785 . effective 09 / 1 / 00 a compressor was\nput in and the gas from 785 now flows through this compressor , as well as the\ngas from meter 9662 ( deal 137595 sales from dewbre ) , and is now measured at\nmeter 3527 : tivoli station . for bryancy ' s allocation , she must take the meter\nstatement from meter 3527 and deduct meter 9662 ' s flow . once this is done ,\nshe can take that net number and do an allocation between texas general land\nand hpl ( cleco ) like she has done previously . i believe meter 785 is now a\ncheck meter and meter 3527 is the actual pay meter .\nfor 9 / 00 there were two deals in place for the sale from cleco , deal 397957\nand 449243 . per discussions with daren farmer , danny conner , and jennifer\nmartinez , i have been instructed to zero out the deal for 397957 and use\n449243 as the correct deal number . therefore , fred boas and i have zeroed\nout the 397957 deal and placed the volume that was allocated there to deal\n449243 . deal 397957 was priced at ship less . 18 which was incorrect and deal\n449243 is priced at ship less . 15 . therefore , an adjustment will generate\nfor 9 / 00 for the difference in price and the change in location . the\nallocated volume for cleco did not change . however , i am not sure that\nbryancy is allocating the volume properly between texas general land and hpl\n( cleco ) . i have spoke to her , as well as jennifer martinez , and curtis\nfunderbruk with cleco so there might be some pma ' s for volume differences .\nin addition , i have changed the allocation method at meter 3527 to be a\ncallout \\ swing effect 9 / 00 . for october and succeeding months , the volume\nshould be computed by taking meter 3527 deducting out meter 9662 . then\nbyancy should take this net number and split it between texas general land\nand hpl ( cleco ) . the texas general land nom is currently at meter 785 and\nthe hpl ( cleco ) deal is at meter 3527 . fred mentioned that the texas general\nland nom might need to be moved to meter 3527 but nothing has been decided on\nthat yet .\nplease let me know if something i have stated is not your understanding or\nyou need something more done on my end . also , let me know who is going to be\ndoing this monthly allocation . it might be beneficial to have one person\ndoing all the points ( meters 3527 , 9662 , 785 ) . thanks for your help ! ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.488+0000", "entityId": 3457, "properties": {"text": "Subject: revision # 1 - hpl noms for november 3 , 2000\n( see attached file : hplnl 103 . xls )\n- hplnl 103 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.493+0000", "entityId": 3458, "properties": {"text": "Subject: enron / hpl actuals for november 1 , 2000\nteco tap 30 . 000 / enron ; 70 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.498+0000", "entityId": 3459, "properties": {"text": "Subject: enron / hpl actuals for october 31 , 2000\nteco tap 20 . 000 / enron ; 80 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.504+0000", "entityId": 3460, "properties": {"text": "Subject: seac / hpl - freeport meter # 98 - 0435\nthe following deals have been created and entered in sitara effective 11 / 1 / 00\nat meter # 98 - 0435 :\ncounterparty deal # nom price ( ifhsc less )\namerada hess 465994 2 , 822 0 . 065\nanadarko petroleum 465995 1 , 148 0 . 065\napache corp 465998 1 , 379 0 . 065\nbarrett resources 466000 1 , 597 0 . 06\ncrosstex energy svcs 466003 682 0 . 065\nmariner energy 466008 350 0 . 055\nocean energy 466014 3 , 750 0 . 065\nseneca resources 466016 3 , 195 0 . 06\nst . mary land & expl 466017 3 , 299 0 . 065\nwalter oil & gas 466021 6 , 778 0 . 055\ndummy 456228 25 , 000 killed\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.510+0000", "entityId": 3461, "properties": {"text": "Subject: re : copano\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward d gottlob / hou / ect on 11 / 02 / 2000\n10 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteve hpl schneider\n11 / 02 / 2000 08 : 48 am\nto : edward d gottlob / hou / ect @ ect\ncc :\nsubject : re : copano\nthat is my understanding .\nedward d gottlob\n11 / 01 / 2000 07 : 29 am\nto : steve hpl schneider / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : copano\nthe lakecreek lateral is baseload for the expected load , the set point may\nchange up and down in anticipation of weather changes but pressure supply for\nentex is provided via the copano 12 \" , entex shouldcommunicate with us\ndirectly .\nsteve hpl schneider\n10 / 31 / 2000 02 : 59 pm\nto : edward d gottlob / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : copano\nthat is not what i am conveying . there may be changes made to the set flow\nperiodically , but it will not be pressure based upon the immediate needs of\nthe copano pipeline that may be swinging due to some other customer on their\nsystem . whenever entex asks for a new set point at the new woodlands city\ngate , our set point at the new bammel interconnect should align with that\nsame set point so as there is no swing service on the copano pipeline . our\ninstructions should only come from entex to change the set point , and should\nbe confirmed with copano . we are not to provide any instantaneous swing\nservice on the copano lake creek lateral . any swing provided by hpl for the\nwoodland ' s load will be made into the copano 12 \" ( formerly ksc ) line as\nhistorically done . there may be additional capacity needed on the lake creek\nlateral because of the revised set point , but that is something that entex\nhas negotiated with copano independent of hpl . still fuzzy ?\nedward d gottlob\n10 / 31 / 2000 07 : 46 am\nto : steve hpl schneider / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , james mckay / hou / ect @ ect\nsubject : re : copano\nsteve ,\nbaseload means rateable flows throughout the 24 hour gas day ? no swing with\nweather ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.514+0000", "entityId": 3462, "properties": {"text": "Subject: neon discussion november 8\nhere are some ideas for this coming week .\n?\nbobby\n- neon roaring 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.518+0000", "entityId": 3463, "properties": {"text": "Subject: enron / hpl actuals for november 2 , 2000\nteco tap 30 . 000 / enron ; 45 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.523+0000", "entityId": 3464, "properties": {"text": "Subject: my november real estate news update\nhi there ,\nnovember is here and it is time to give thanks . as the year\nis drawing to a close there is much to be thankful for .\nthank you for your business and your continued support of my\nbusiness with referrals and support .\nonce again , i am having a drawing for a free turkey for your\nthanksgiving dinner . write , phone , or e - mail me with your\nentry by november 18 th , 2000 . your chances of winning are\nexcellent .\nmy new newsletter is now available from the hyperlinks\nbelow . please check it out and i can answer any questions\nyou might have .\nthis month ' s issue includes topics such as :\n. to stretch or not to stretch , that is the question\n. pre - approval versus pre - qualification , is there a\ndifference .\n. should i take my home off the market during the holidays\n. is your neighborhood kid - friendly\n. steel forges new role in home building\nhere is a link to my \" november real estate update \"\nhttp : / / homeownernews . com / 24 / ionaalphonso\naol users :\nclick\nhere\ni hope you enjoy the newsletter . i would welcome your\ncomments .\nsincerely ,\niona alphonso\nalways in tune with your needs\noh , by the way . . . if you know of someone thinking about\nbuying or selling a home , please call me with their name and\nnumber - thanks a million ! !\nprudential , gary greene realtors\n3910 fm 1960 west , suite 100\nhouston , texas 77068\nvoice mail : 281 - 857 - 2485 x 535\npager : 281 - 551 - 6549\noffice : 281 - 444 - 5140\nfax : 281 - 444 - 0630\nweb site : http : / / www . ionaalphonso . com\nresume : http : / / www . har . com / ionaalphonso\ngary greene web site : http : / / www . garygreene . com\nplease view my monthly newsletter at\nhttp : / / homeownernews . com / c / ionaalphonso", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.527+0000", "entityId": 3465, "properties": {"text": "Subject: job survey and matching\nheather - - darren and donna were left off of bob ' s e : mail , can you set up\ntimes with them ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kathryn bussell / hou / ect on 11 / 06 / 2000\n03 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob m hall @ enron\n11 / 02 / 2000 05 : 58 pm\nto : robert superty / hou / ect @ ect , george d smith / na / enron @ enron , randall l\ngay / hou / ect @ ect , michael eiben / hou / ect @ ect , victor lamadrid / hou / ect @ ect ,\nedward terry / hou / ect @ ect , katherine l kelly / hou / ect @ ect , rita\nwynne / hou / ect @ ect , pat clynes / corp / enron @ enron\ncc : kathryn bussell / hou / ect @ ect\nsubject : job survey and matching\njust to give you a head up . katherine will be getting with each of you next\nweek to\nwork on a new job survey and matching process for hr to do a salary\ncomparison .\nthis should be like the one done last year .\nwe only have till thursday of next week to get this finished .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.531+0000", "entityId": 3466, "properties": {"text": "Subject: sodbuster . . . what ' s up man\nhey man this is stacy . i was checking out the highschoolalumni website\ntonight and i saw your name and thought i ' d write ya . man i can ' t believe\nit ' s been this long . last time i saw you was that night at a & m when you , me\nand john agee went out drinking and running over signs . i was living up in\ndallas for about 4 years but i moved back to mp about a year ago . i also got\nmarried and had a little baby girl in since then too . anyway i just wanted\nto say hi . hope i ' m emailing the right person here . mail me back man .\nps . . maybe we can get scotty t , jim richey , and us together for that fabled\ncamping trip .\ncya\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.536+0000", "entityId": 3467, "properties": {"text": "Subject: revison # 1 - hpl noms . for november 4 - 6 , 2000\n( see attached file : hplnl 104 . xls )\n- hplnl 104 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.541+0000", "entityId": 3468, "properties": {"text": "Subject: enron nom for november 7 , 2000\n( see attached file : hplnl 107 . xls )\n- hplnl 107 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.546+0000", "entityId": 3469, "properties": {"text": "Subject: enron / hpl actuals for november 3 - 5 , 2000\nnovember 3 , 2000\nteco tap 30 . 000 / enron ; 114 . 583 / hpl gas daily\nnovember 4 , 200\nteco tap 139 . 167 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron\nnovember 5 , 2000\nteco tap 85 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.552+0000", "entityId": 3470, "properties": {"text": "Subject: industrials\nhere is the november industrial spreadsheet . there are two outstanding\nissues . meter 1431 , deal # 454436 and meter 1373 , deal # 244610 . i am\nwaiting on word from julie meyers to get these in sitara . let me know if you\nhave any questions .\nyou can find the spreadsheet in o : logistics / aimee / hadix taccount novo 0 .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.560+0000", "entityId": 3471, "properties": {"text": "Subject: deals under wrong counterparty from weekend\ni need some assistance getting these deals corrected in the system for the\nweekend , so that i can get my errors clear . i have tried to change the\ncounterparty , but i am not able . jackie is out again today , so , i will be\nbehind the proverbial 8 - ball and would greatly appreciate your help clearing\nthese things up .\ndeal ticket 468688 p - mgi is in system as hplc purch . the correct entity is\nena im texas , ena made the orig . sale\ndeal ticket 468110 d 2 d to deliver to central desk at humble is on ena , these\ntickets have always been hplc and not ena .\nplease let me know if there is anything that i can do to speed the process .\ni need to have all of my errors clean today .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.567+0000", "entityId": 3472, "properties": {"text": "Subject: hpl meter # 981525 texoma d / p - gsu hpl\ndaren :\non 1 / 5 / 99 , the above meter recorded flow 1 , 703 mmbtus . currently , this\nvolume is booked to the hpl strangers gas contract . logistics needs approval\nto writeoff this volume to unaccounted for gas loss .\n_ _ _ _ _ _ _ _ _ _ _\napproval to writeoff the volumes to unaccounted for gas loss\nplease print , approve , and return original to me .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.573+0000", "entityId": 3473, "properties": {"text": "Subject: duke exchange deal\ndaren :\ni have several months that need to have the demand charges either added or\nadjusted . when katherine gave you the numbers the first time , there were\nsome spot deals included in the exchange deals . the volumes have now been\nmoved to the correct deals and the demand charges need to be corrected . i\nhave listed the changes below . let me know if you would like to see the\nspreadsheets .\ndeal 157278\n3 / 00 add demand charge of $ 73 , 403 . 47 for excess charge\n4 / 00 change demand fee from $ 1 , 507 . 56 to $ 1 , 966 . 93\n6 / 00 change demand fee from $ 1 , 129 . 99 to $ 359 . 97\ndeal 157288\n3 / 00 change demand fee from $ 3 , 526 . 98 to $ 245 . 82\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.578+0000", "entityId": 3474, "properties": {"text": "Subject: re : personal information needs to be updated\nis it possible that his first name show as \" j darren \" ? daren is his middle\nname and the name that everyone addresses him by .\nwe would also be glad to submit the change in sap if the system will accept j\ndarren as the first name .\nplease advise .\nthanks for your help , hgm\nsusan wimberley @ ect\n11 / 07 / 2000 02 : 12 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : dfarmer @ enron . com @ enron\nsubject : re : personal information needs to be updated\nplease note that the name in pep has to mirror what is in the source system .\ncurrently there is not a field in pep for nicknames .\nenron capital & trade resources corp .\nfrom : hector mcloughlin @ enron 11 / 07 / 2000 01 : 48 pm\nto : dfarmer @ enron . com , susan wimberley / hou / ect @ ect\ncc :\nsubject : re : personal information needs to be updated\nsusan ,\nwould you please take care of mr . farmer ' s request ? i am not able to change\nnames .\nthanks for your help , hgm\ndfarmer @ enron . com on 11 / 07 / 2000 01 : 15 : 08 pm\nto : hector . mcloughlin @ enron . com\ncc :\nsubject : personal information needs to be updated\nthis message is from farmer , jerry d :\nmy name should be changed from farmer , jerry d to farmer , j daren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.583+0000", "entityId": 3475, "properties": {"text": "Subject: re : personal information needs to be updated\nonce this is fixed in sap i will be able to change it in pep . the data\nintegrity team is being really strict on the name field . it has to be\nchanged in sap before i am allowed to change it in pep . please let me know\nwhen this has been done and i will make the change asap .\nenron capital & trade resources corp .\nfrom : hector mcloughlin @ enron 11 / 07 / 2000 02 : 24 pm\nto : susan wimberley / hou / ect @ ect\ncc : dfarmer @ enron . com\nsubject : re : personal information needs to be updated\nis it possible that his first name show as \" j darren \" ? daren is his middle\nname and the name that everyone addresses him by .\nwe would also be glad to submit the change in sap if the system will accept j\ndarren as the first name .\nplease advise .\nthanks for your help , hgm\nsusan wimberley @ ect\n11 / 07 / 2000 02 : 12 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : dfarmer @ enron . com @ enron\nsubject : re : personal information needs to be updated\nplease note that the name in pep has to mirror what is in the source system .\ncurrently there is not a field in pep for nicknames .\nenron capital & trade resources corp .\nfrom : hector mcloughlin @ enron 11 / 07 / 2000 01 : 48 pm\nto : dfarmer @ enron . com , susan wimberley / hou / ect @ ect\ncc :\nsubject : re : personal information needs to be updated\nsusan ,\nwould you please take care of mr . farmer ' s request ? i am not able to change\nnames .\nthanks for your help , hgm\ndfarmer @ enron . com on 11 / 07 / 2000 01 : 15 : 08 pm\nto : hector . mcloughlin @ enron . com\ncc :\nsubject : personal information needs to be updated\nthis message is from farmer , jerry d :\nmy name should be changed from farmer , jerry d to farmer , j daren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.587+0000", "entityId": 3476, "properties": {"text": "Subject: re : personal information needs to be updated\njanet ,\nplease submit this name change to the tpc as soon as possible . thanks , hgm\nsusan wimberley @ ect\n11 / 07 / 2000 02 : 45 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : dfarmer @ enron . com @ enron\nsubject : re : personal information needs to be updated\nonce this is fixed in sap i will be able to change it in pep . the data\nintegrity team is being really strict on the name field . it has to be\nchanged in sap before i am allowed to change it in pep . please let me know\nwhen this has been done and i will make the change asap .\nenron capital & trade resources corp .\nfrom : hector mcloughlin @ enron 11 / 07 / 2000 02 : 24 pm\nto : susan wimberley / hou / ect @ ect\ncc : dfarmer @ enron . com\nsubject : re : personal information needs to be updated\nis it possible that his first name show as \" j darren \" ? daren is his middle\nname and the name that everyone addresses him by .\nwe would also be glad to submit the change in sap if the system will accept j\ndarren as the first name .\nplease advise .\nthanks for your help , hgm\nsusan wimberley @ ect\n11 / 07 / 2000 02 : 12 pm\nto : hector mcloughlin / corp / enron @ enron\ncc : dfarmer @ enron . com @ enron\nsubject : re : personal information needs to be updated\nplease note that the name in pep has to mirror what is in the source system .\ncurrently there is not a field in pep for nicknames .\nenron capital & trade resources corp .\nfrom : hector mcloughlin @ enron 11 / 07 / 2000 01 : 48 pm\nto : dfarmer @ enron . com , susan wimberley / hou / ect @ ect\ncc :\nsubject : re : personal information needs to be updated\nsusan ,\nwould you please take care of mr . farmer ' s request ? i am not able to change\nnames .\nthanks for your help , hgm\ndfarmer @ enron . com on 11 / 07 / 2000 01 : 15 : 08 pm\nto : hector . mcloughlin @ enron . com\ncc :\nsubject : personal information needs to be updated\nthis message is from farmer , jerry d :\nmy name should be changed from farmer , jerry d to farmer , j daren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.592+0000", "entityId": 3477, "properties": {"text": "Subject: enron nominations for november 8 , 2000\n( see attached file : hplnl 108 . xls )\n- hplnl 108 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.597+0000", "entityId": 3478, "properties": {"text": "Subject: enron / hpl actuals - nov . 6 , 2000\nnovember 6 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.601+0000", "entityId": 3479, "properties": {"text": "Subject: revisions - enron / hpl actuals - nov . 1 - 5 , 2000\nno volumes should be on the hpl gas daily at this time .\nnov . 1 , 2000\nteco tap 30 . 000 / enron ; 70 . 000 / hpl iferc\nnov . 2 , 2000\nteco tap 30 . 000 / enron ; 45 . 000 / hpl iferc\nnov . 3 , 2000\nteco tap 30 . 000 / enron ; 114 . 583 / hpl iferc\nnov . 4 , 2000\nteco tap 19 . 167 / enron ; 120 . 000 / hpl iferc\nls hpl lsk i . c . 30 . 000 / enron\nnov . 5 , 2000\nteco tap 85 . 000 / hpl iferc\nls hpl lsk i . c . 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.606+0000", "entityId": 3480, "properties": {"text": "Subject: re : meter 9707\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 11 / 07 / 2000 11 : 04\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 11 / 07 / 2000 10 : 32 am\nto : robert cotten / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : re : meter 9707\nplease disreagard this e - mail . the estimates are bad .\naimee\nenron north america corp .\nfrom : robert cotten 11 / 07 / 2000 10 : 12 am\nto : vance l taylor / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , pat clynes / corp / enron @ enron , aimee\nlannou / hou / ect @ ect\nsubject : re : meter 9707\nvance ,\nplease review the note below and advise . thanks .\nbob\naimee lannou 11 / 06 / 2000 03 : 52 pm\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : meter 9707\ndaren - meter 9707 , deal # 125786 ( gathering ) expired 10 / 1 / 00 . you extended\nthis deal for one day last month . there is flow on 11 / 5 / 00 of 1851 . can you\nset up a deal or extend this one ? please let me know .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.610+0000", "entityId": 3481, "properties": {"text": "Subject: re : occidental battleground meter 98 - 1485 october 2000\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.615+0000", "entityId": 3482, "properties": {"text": "Subject: occidental battleground meter 98 - 1485 october 2000\ndaren ,\na sale to oxy vinyls went into effect 10 / 01 through 10 / 16 for 5 , 000 per day .\nwe also delivered gas to entex , 10 , 000 / day for the entire month . more gas\nwas pulled towards the end of the month than confirmed and i need to know if\noxy vinyls should get the swing for the remaining of the month even though\ntheir deal went to zero . please advise .\nsusan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.620+0000", "entityId": 3483, "properties": {"text": "Subject: out of the office\ni will be out of the office starting this afternoon 11 / 8 and will be back on\nmonday . aimee 3 - 0506 will be the point person for any questions but the\nfollowing people will do some of my desk , thanks .\nmark - hpl pools\nbob c - daily noms , path ene and bridge back\ntom - tufco\nsabrae - bp transport , nngb , carthage\nif you have any questions please let aimee know , thanks\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.624+0000", "entityId": 3484, "properties": {"text": "Subject: meter 986899 for november\ndaren ,\ni have flow at this meter for the first , 118 dth . there is an expired\npurchase from highland at the meter , but , this deal ended august 31 st . hpl\nhad a deal with highland in october to purchase these volumes ( deal ticket\n418382 ) . i think that the deal needs to be extended , it looks like the valve\nwas not completely shut by 9 am . pat has asked that this issue be resolved\ntoday , so , your assistance would be greatly appreciated .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.629+0000", "entityId": 3485, "properties": {"text": "Subject: teco ' s indian spring plant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 11 / 08 / 2000 04 : 20\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclem cernosek @ ect\n11 / 03 / 2000 02 : 28 pm\nto : sherlyn schumack / hou / ect @ ect , lauri a allen / hou / ect @ ect , jack\nsimunek / hou / ect @ ect , karry kendall / hou / ect @ ect , mary poorman / na / enron @ enron ,\nhoward b camp / hou / ect @ ect , katherine herrera / corp / enron @ enron , megan\nparker / corp / enron @ enron , jennifer d pattison / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , pat clynes / corp / enron @ enron\nsubject : teco ' s indian spring plant\na meeting was held on november 1 , 2000 at 3 pm in eb 3270 to resolve exxon ' s\nresidue volume issue at teco ' s indian spring plant . exxon ' s issue is that\nthe residue volumes that hpl is recording for exxon ' s account for\ntransportation do not equal to the wellhead volumes produced and delivered to\npge .\nitems that were identified so that exxon ' s issue could be resolved :\n1 . hpl is responsible for any ua 4 loss / gain and fuel consumed on pge ' s line\nattributable to exxon ' s big sandy production .\n2 . if exxon ' s production exceeds 500 mcf / d , hpl must on a monthly basis\nelect to process or not process the exxon big sandy gas . if hpl elects\nto process , then teco buys the products from hpl .\n3 . if exxon ' s production flows between 100 mcf / d and 499 mcf / d , then teco\ncan process and makeup the shrinkage to hpl with their own gas volumes .\n4 . if exxon ' s production is less than 100 mcf / d , then hpl must terminate\nthe processing agreement . if hpl does not terminate and volume continue\nto flow at less that 100 mcf / d than hpl loses the shrinkage and must\npay to teco an additional $ 500 per month .\nsolution :\n1 . hpl will schedule and record the gain / loss volumes at hpl meter # 986884\nthat is attributable to ua 4 and fuel on the pge line .\n2 . hpl will schedule and record the sale volumes of pvr to teco at hpl\nmeter # 986884 .\n3 . the scheduling of the volumes for items 1 and 2 will allow for offset\nvolumes to be record as adjustments to exxon ' s transport volumes .\n4 . the hpl logistics dept . ( mary poorman ) will inform assets group ( jack\nsimunek ) when and if the volumes nominated for exxon fall below 100 mcf / d .\nif any of the above does not reflect what was discussed or agreed to , please\nlet me know at x - 36650 .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.633+0000", "entityId": 3486, "properties": {"text": "Subject: enron / hpl nom for november 9 , 2000\n( see attached file : hplnl 109 . xls )\n- hplnl 109 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.638+0000", "entityId": 3487, "properties": {"text": "Subject: enron / hpl actuals - nov . 7 , 2000\nnovember 7 , 2000\nteco tap 30 . 000 / enron ; 71 . 250 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.642+0000", "entityId": 3488, "properties": {"text": "Subject: organizational changes\nwe are making a number of significant organizational changes . these changes\nare intended to accomplish four key objectives :\nfirst , we need to realign all our wholesale businesses around the successful\nbusiness model developed over the last decade in north america and europe .\nthis model relies on extensive physical and transactional networks built\naround a relatively small strategic asset position .\nsecond , we need to significantly streamline corporate reporting\nrelationships . particularly with joe sutton \u0001 , s departure , the ability to\ndirectly manage the day - to - day activities of 15 independent business units\nhas become increasingly difficult .\nthird , we need to accomplish these changes without , in any way , compromising\nthe ongoing profitability of all our businesses and without delaying or\nhindering our effort to monetize a significant portion of our lower - yielding\nasset positions .\nand fourth , as always , we need to take advantage of the reorganization to\nredeploy our talent into our highest value opportunities .\nenron wholesale services\ntoday , we are forming enron wholesale services ( ews ) which will consolidate\nour global wholesale businesses . the closer alignment of our wholesale\nbusinesses will accomplish the following : ( 1 ) enhanced communication and\ncoordination across business units , ( 2 ) more rapid deployment of people to\nhigher valued opportunities , ( 3 ) more effective prioritization of\nopportunities across the wholesale business , and ( 4 ) more rapid extension of\nenron \u0001 , s wholesale business model and capabilities into new industries and\nmarkets .\nenron wholesale services will include our current north american , european\n( including japan and australia ) , global markets , and industrial markets\noperations , and will be expanded to include enron \u0001 , s net works business unit\nas well as a new unit \u0001 ) enron global assets . in addition , enron \u0001 , s merchant\nbusinesses outside of north america and europe will be integrated into this\nnew structure as described below .\nmark frevert , currently chairman of each of our wholesale units , will assume\nthe role of chairman and ceo of enron wholesale services . greg whalley ,\ncurrently chairman and ceo of enron net works , will join mark in the office\nof the chairman as president and chief operating officer .\nproviding further impetus for these organizational changes , several of our\ninternational business unit leaders have elected to move into new leadership\npositions :\nrebecca mcdonald , currently ceo of enron apachi , will join ews as president\nand ceo of enron global assets . enron global assets will have responsibility\nfor managing all of enron \u0001 , s existing energy asset portfolio outside of north\namerica and europe . joining rebecca in the office of the chairman as coo\nwill be jim hughes , currently coo of enron apachi . rebecca and jim will\nreport to the ews office of the chairman .\nsanjay bhatnagar , currently ceo of enron india , has joined ebs as ceo for the\nmiddle east and asia region . sanjay will be responsible for building our\nbroadband business in this region and the current ebs team in this region\nwill report to sanjay . in this role , sanjay will report to the ebs office of\nthe chairman . in addition , sanjay will continue to remain responsible for\nenron \u0001 , s wholesale energy business in india and will transition this business\ninto enron global assets in the near future .\ndiomedes christodoulou , currently co - ceo of enron south america , has joined\nebs as chief commercial officer . diomedes will be located in london and will\nfocus his origination activities on global opportunities , with near term\nattention to the wholesale and enterprise sectors . diomedes will report to\nthe ebs office of the chairman .\njim bannantine , currently co - ceo of enron south america , will be joining ees\nto lead ees \u0001 , commercial efforts outside north america and europe . in order\nto ensure a smooth transition for our south american businesses and to\nfacilitate our asset sales activities , jim will remain in south america for\nat least the next several months and continue to serve as ceo of enron south\namerica . throughout the transition , jim will report to cliff baxter and to\nthe office of the chairman of enron wholesale services . following the\ntransition , jim will join ees .\nin addition to these changes in our international asset operations\nactivities , we are making the following changes in our merchant wholesale\nbusinesses and the commercial support functions :\nenron net works\nlouise kitchen will assume greg \u0001 , s previous responsibilities as president and\nceo of enron net works , reporting into mark and greg .\nenron americas\nconcurrent with the transfer to enron global assets of responsibility for\noperating enron \u0001 , s south and central america asset base , all trading ,\nmarketing , and new asset development activities in these regions will report\ninto a new entity , enron americas . enron americas will have responsibility\nfor all wholesale merchant businesses across north , central and south\namerica . dave delainey , president and ceo , and john lavorato , chief\noperating officer will comprise the office of the chairman for enron\namericas .\nenron europe\nthe enron europe organization , which includes enron \u0001 , s businesses in australia\nand japan , and enron metals , remains unchanged under the leadership of john\nsherriff , president and ceo , and michael brown , chief operating officer .\nenron global markets\nenron global markets , under the leadership of mike mcconnell , president and\nceo , and jeff shankman , chief operating officer , will continue to have\nresponsibility for enron \u0001 , s middle east and lng operations . with the\nexception of ecoelectrica in puerto rico , all operating power plants and\nassociated personnel in the caribbean and central america will transfer to\nenron global assets . enron global markets will also continue to manage the\ncommodity businesses in crude and products , coal , weather , insurance ,\nequities , interest rates , foreign exchange , and agricultural products .\nenron industrial markets\nenron industrial markets \u0001 , organization , under the leadership of jeff mcmahon ,\npresident & ceo , and ray bowen , chief operating officer , remains unchanged .\ncommercial support for ews\nthe commercial support functions for ews will remain with , and be managed by ,\nthe individual business units . we are creating no incremental overhead in\nthe creation of ews , and in fact hope to reduce our operating costs by more\nefficient utilization and sharing of resources across ews .\nto this end we have asked several people to take on an expanded role across\news in addition to their ongoing roles within their business units . these\nnewly defined roles are as follows :\nmid and back office operations \u0001 ) sally beck will lead mid and back office\noperations across ews . these services will become part of enron net works ,\nwith sally reporting to louise kitchen and rick causey , executive vice\npresident and chief accounting officer . this alignment creates a coordinated\nservices organization with it and e - commerce platforms to support the\nwholesale businesses and to maximize opportunities to commercialize these\nservices . mid and back office services for all commercial activities will\ncontinue to be organized with dedicated operations controllers responsible\nfor specific commodities and / or geographic locations .\nlegal \u0001 ) mark haedicke will serve in the role of general counsel for ews .\nregulatory and government affairs \u0001 ) this function will remain organized on a\nregional basis . rick shapiro will support all ews businesses operating in\nthe americas , and mark schroeder , who is based in london , will support all\neuropean and eastern hemisphere operations . rick and mark will also continue\nto support all other enron businesses operating in their respective regions\nand will continue to report to steve kean , executive vice president and chief\nof staff .\npublic relations \u0001 ) this function is also organized primarily on a regional\nbasis . eric thode will have responsibility for north american activity ,\nenron net works , and enron industrial markets . jackie gentle will continue\nin her role for enron europe ( including japan and australia ) and john ambler\nwill have responsibility for activity outside north america and europe as\nwell as providing support for enron global markets and enron global assets .\nthese individuals will also continue to have a split reporting relationship\nto mark palmer , vice president of communications .\nbusiness analysis and reporting \u0001 ) wes colwell will expand his role to cover\news reporting in addition to his current role in north america .\nattached for your review is an organization chart for enron wholesale\nservices which summarizes the changes described here . as this organization\ncontinues to evolve we will keep you informed of any additional changes .\nenron global exploration and production\nand enron wind\nas part of our company - wide initiative to examine our assets and investments\naround the world , we are considering a variety of options with respect to\negep and ewc . as a consequence , we are putting these businesses under cliff\nbaxter \u0001 , s direction . jeff sherrick , ceo of egep , and jim noles , ceo of enron\nwind , will report to cliff .\ncorporate staff\nwe are consolidating the corporate staff functions : human resources ,\ngovernment affairs , public relations / communications and administration . in\nthat regard , cindy olson , executive vice president of human resources and\ncommunity relations , will report to steve kean , executive vice president and\nchief of staff .\ncommittee structure\nin light of the increased leadership opportunities created by enron \u0001 , s\ngrowth , the executive committee will be expanded to include more of our\nbusiness unit leaders . the primary role of this committee will continue to\nbe the communication of relevant information across enron \u0001 , s businesses and\nthe coordination of activities across those businesses . we will also be\ndrawing on this group to lead company - wide initiatives such as the\nperformance review process and evaluation and creation of new businesses .\nthe executive committee membership is shown on the attached list .\nwe are also forming a new committee \u0001 ) the enron corporate policy committee .\nthis group will be responsible for overall corporate policy , personnel\nmanagement policy and corporate strategy . the enron corporate policy\ncommittee membership is also shown on the attached list .\nwe are confident that these changes will align our talent and our capital to\nour highest return opportunities . please join us in congratulating and\nsupporting all of these individuals in their new roles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.647+0000", "entityId": 3489, "properties": {"text": "Subject: re : nomination for gas flow / 11 / 07 / 00 / southland pipeline\ni now have this on the strangers contract till we get a new transport\ncontract assigned .\nlauri a allen @ ect\n11 / 07 / 2000 01 : 14 pm\nto : tom acton / corp / enron @ enron\ncc : pat clynes / corp / enron @ enron\nsubject : nomination for gas flow / 11 / 07 / 00 / southland pipeline\nfyi . we will probably see even more volatility at our delivery into the\nlufkin paper mill , since cleco will now be serving them with this new\nproduction they ' re bringing on line .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 11 / 07 / 2000 12 : 00\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" pryor , steve \" on 11 / 07 / 2000 10 : 48 : 43 am\nto : lauri . a . allen @ enron . com , pat . clynes @ enron . com\ncc : \" conant , steve \" , \" shaddox , terry \"\n, \" haley , paula \" ,\n\" schroeder , doug \" , ron . duncan @ enron . com ,\njack . simunek @ enron . com\nsubject : nomination for gas flow / 11 / 07 / 00 / southland pipeline\nlauri ,\nplease accept this transmission as nomination for gas flow on southland\npipeline ( now desoto pipeline ) operated by hpl for 700 / mmbtu / day transport\nfrom receipt damascus point ( meter # 980441 - 10 ) to a new delivery point ( meter\nnumber not yet assigned ) at lufkin mill .\nplease supply assigned meter number for lufkin mill and the assigned contract\nnumber for our transport arrangement when assigned .\nthanks for your assistance .\nsteve pryor\n( 281 ) 556 - 5877\ncleco energy llc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.651+0000", "entityId": 3490, "properties": {"text": "Subject: re : meter 6387 & 5192\njust to let you know , ther is flow for november at meter 5192 .\nwhat is the status of meter 6387 ?\naimee\ndaren j farmer\n10 / 26 / 2000 12 : 52 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : meter 6387 & 5192\ni created # 454057 for the flow at mtr 5192 . canny conner is looking into mtr\n6387 . i will let you know when he determines what we will be doing .\nd\naimee lannou 10 / 26 / 2000 10 : 01 am\nto : daren j farmer / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron\nsubject : meter 6387 & 5192\ndaren - there is flow at meters 6387 & 5192 for oct . without a nom .\ndeal contract last month of activity counterparty\nmeter 6387 133179 hpl 215 sept . 00 duke energy trading\nmeter 5192 269123 ena 201 nov . 99 duke energy trading\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.655+0000", "entityId": 3491, "properties": {"text": "Subject: re : another hesco issue\ndaren would you look at the price for 29 and 30 th of march 2000 . there are\nno prices for these days but volume was scheduled for these days .\nthanks\ncharlene\ndaren j farmer\n11 / 02 / 2000 02 : 59 pm\nto : charlene richmond / hou / ect @ ect\ncc :\nsubject : re : another hesco issue\ncharlene ,\ndeal # 214948 already had volume and price for the 12 th and 13 th . you may\nneed to have the volumes updated by volume management .\ni added the 15 th and 16 th to the deal ticket .\nd\ncharlene richmond\n11 / 01 / 2000 04 : 02 pm\nto : daren j farmer / hou / ect @ ect , jennifer martinez / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect , nick moshou / corp / enron @ enron , cynthia\nhakemack / hou / ect @ ect\nsubject : re : another hesco issue\nhelp . steve mauch at hesco is wanting an answer asap\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlene richmond / hou / ect on 11 / 01 / 2000\n03 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n11 / 01 / 2000 02 : 45 pm\nto : charlene richmond / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect\nsubject : re : another hesco issue\ncharlene ,\nthis gas purchase is not a part of the wellhead portfolio but is being traded\non the texas desk . i would suggest you get with darren farmer or someone on\nthe desk .\nsorry i could not be of more assistance !\nvlt\nx 3 - 6353\ncharlene richmond\n11 / 01 / 2000 08 : 22 am\nto : julie meyers / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc :\nsubject : another hesco issue\nmeter 986725 for march 2000 . per hesco both traders are gone at ( hesco and\nenron ) and they ( hesco ) were not paid the correct price in march on the\ndays mentioned below . hesco cannot find where the price for these days were\nrecorded . per hesco they were underpaid by $ 32 , 101 . 57 . hesco is wanting to\ncome to our office to have a meeting about clearing this up . it will be nice\nif we don ' t have to meet with them .\nproduction dates are volume price they are\nlooking for\n03 / 12\n2 , 029 2 . 65\n03 / 13\n2 , 009 2 . 65\n03 / 15\n2 , 022 2 . 71\n03 / 16\n1 , 976 2 . 72", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.660+0000", "entityId": 3492, "properties": {"text": "Subject: florida sample ballot\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 11 / 09 / 2000 04 : 57\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndenver plachy @ enron\n11 / 09 / 2000 03 : 28 pm\nto : julie meyers / hou / ect @ ect , jody crook / corp / enron @ enron\ncc :\nsubject : florida sample ballot", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.665+0000", "entityId": 3493, "properties": {"text": "Subject: enron / hpl actuals for november 8 , 2000\nteco tap 40 . 000 / enron ; 53 . 125 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.671+0000", "entityId": 3494, "properties": {"text": "Subject: hpl nom for november 10 , 2000\n( see attached file : hplnl 110 . xls )\n- hplnl 110 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.679+0000", "entityId": 3495, "properties": {"text": "Subject: re : driscoll ranch # 3 gas pricing and interconnect estimate\nthanks ! ! that is what i said ! ! !\ndaren j farmer\n11 / 09 / 2000 02 : 00 pm\nto : mary jo johnson / hou / ect @ ect\ncc :\nsubject : re : driscoll ranch # 3 gas pricing and interconnect estimate\nthe notice should be given on monday , the 20 th by 5 : 00 pm .\nd\nfrom : mary jo johnson 11 / 09 / 2000 10 : 12 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : driscoll ranch # 3 gas pricing and interconnect estimate\ncan you help me out on this darren ? mjj\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary jo johnson / hou / ect on 11 / 09 / 2000\n10 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john daugherty \" on 11 / 08 / 2000 04 : 38 : 37 pm\nto :\ncc :\nsubject : re : driscoll ranch # 3 gas pricing and interconnect estimate\nmary jo ,\nthanks for the update . regarding the notice provision of 6 business days\nprior to the close of business on the last business day of the month prior\nto selected month , does that mean we need to give you notice for december\nby tuesday , november 21 st at 5 : 00 pm or monday , november 20 th at 5 : 00 pm\nassuming the 23 rd and 24 th are holidays ?\njohn daugherty\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\n; ;\n; ;\n;\nsent : wednesday , november 08 , 2000 5 : 12 pm\nsubject : re : driscoll ranch # 3 gas pricing and interconnect estimate", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.685+0000", "entityId": 3496, "properties": {"text": "Subject: re : driscoll ranch # 3 gas pricing and interconnect estimate\ncan you help me out on this darren ? mjj\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary jo johnson / hou / ect on 11 / 09 / 2000\n10 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john daugherty \" on 11 / 08 / 2000 04 : 38 : 37 pm\nto :\ncc :\nsubject : re : driscoll ranch # 3 gas pricing and interconnect estimate\nmary jo ,\nthanks for the update . regarding the notice provision of 6 business days\nprior to the close of business on the last business day of the month prior\nto selected month , does that mean we need to give you notice for december\nby tuesday , november 21 st at 5 : 00 pm or monday , november 20 th at 5 : 00 pm\nassuming the 23 rd and 24 th are holidays ?\njohn daugherty\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\n; ;\n; ;\n;\nsent : wednesday , november 08 , 2000 5 : 12 pm\nsubject : re : driscoll ranch # 3 gas pricing and interconnect estimate", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.690+0000", "entityId": 3497, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.695+0000", "entityId": 3498, "properties": {"text": "Subject: updated list\nvalero deals have now been added .\nplease make sure that this list is forward to anyone in your groups that\nmight need it .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.700+0000", "entityId": 3499, "properties": {"text": "Subject: flow w / no nom\nmeter 1601 last deal 412219 for 10 / 00 flowed 11 / 9\nmeter 5192 last deal 454057 for 10 / 00 . flowed 11 / 3 - 4", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.704+0000", "entityId": 3500, "properties": {"text": "Subject: neon discussion november 15\nhere are some ideas for discussion this week . ? ?\n?\nnext week we won ' t be meeting , and after that we will have only two meeting\ntimes left before christmas . ? be thinking about what you ' ll want to do as a\ngroup ? for the last meeting , since it ' ll be here real soon . ? some groups have\na party , with a chinese gift exchange ( why is it called chinese ? ) , or some\ngo to eat somewhere and then go as a group in a van or suburban to look at\nchristmas lights , etc . ? if your group doesn ' t have some tradition or\nenjoyable end to the semester , be imaginative and see if you can ' t come up\nwith something fun to do . ? of course if you need help let me know !\n?\nbobby\n- neon roaring 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.709+0000", "entityId": 3501, "properties": {"text": "Subject: enron / hpl actuals for november 9 , 2000\nteco tap 40 . 000 / enron ; 45 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.714+0000", "entityId": 3502, "properties": {"text": "Subject: producer services customer list\nlaura ,\nwill you send this list to everyone pat ' s and daren ' s group\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward d gottlob / hou / ect on 11 / 13 / 2000\n07 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkreg hall\n11 / 08 / 2000 03 : 14 pm\nto : edward d gottlob / hou / ect @ ect , lisa hesse / hou / ect @ ect , mary m\nsmith / hou / ect @ ect , lauri a allen / hou / ect @ ect\ncc :\nsubject : producer services customer list\nhere is the updated producer services customer list as of 11 / 8 / 2000 . let me\nknow if there are any questions . thanks .\nkreg hall\next 3 - 9912", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.718+0000", "entityId": 3503, "properties": {"text": "Subject: transport on koch , beginning wednesday\nchristina ,\nthe indian springs plant delivery into hpl will be taken out of service for\nrepiping work effective wednesday morning the 15 th . ena will be moving\ntexas desk purchases via koch gateway from teco polk co . plant ( 12780 ) to\nmidcon needville ( 6350 ) . i have confirmed available capacity with koch and\nmade sure that the it agreement is evergreen and will work for these\npurposes .\nplease let me know what i can do to ensure that the nomination process works\nas smoothly as possible . i will work with daren and liz to make sure that\nthe purchase and sales tickets are moved to koch . please let me know who is\nresponsible for the transport usage ticket on koch , if necessary , i will put\nthe ticket in this afternoon . we will be responsible for a $ . 02 commodity\nfee , aca of $ . 0022 and 1 . 6 % fuel ( monetizes to $ . 09 approximately ) to move\nthese volumes .\nena will be receiving 84 , 987 dth at the plant and delivering 83 , 627 into\nmidcon texas . we also have the option to deliver by displacement into midcon\nat goodrich or edna , or displace deliveries to koch bayside .\nplease let me know if you have any questions or need anything further from\nme .\nmary\next . 35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.723+0000", "entityId": 3504, "properties": {"text": "Subject: weekend gas\njust wanted to review weekend sales to southern union .\nlongterm firm sales for november\ninside ferc + . 199 5 k 1 - 30\ngas daily + . 199 15 k 10 th - 13 th\ngas daily + . 199 40 k 14 th - until nomed down\n- - - this does not reflect prior gas daily sales - - - - -\nspot\ngas daily hsc + $ . 05 ( on tuesdays print - 14 th - ) 25 k 12 th & 13 th - firm\ndeals above are first through the meter .\ncall me if something doesn ' t look right . : )\njanet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.728+0000", "entityId": 3505, "properties": {"text": "Subject: meter 1601\ndaren - meter 1601 has flow from 11 / 8 - 11 / 10 . there is no deal for these\ndays . last deal used was for oct . - 413538 , counterparty southern union .\nwill you let me know if you set a deal up for this ?\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.733+0000", "entityId": 3506, "properties": {"text": "Subject: change in scada server to nahou - scada 2\nthe name of the scada server has been changed from ecthou _ scadal to\nnahou - scada 2 .\nif you have a personal excel spreadsheet that obtains data from the scada\nserver using netdde , you will have to edit the spreadsheet . change the old\nname to the new name .\nif you have any questions or need assistance , please call 34200 .\n- dave stadnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.738+0000", "entityId": 3507, "properties": {"text": "Subject: football & more\ni ' m glad you got $ 20 from my favorite person .\n?\nlinda has been into the nba , but i find it unexciting anymore .\n?\nnebraska will go to some obscure bowl , the stock market is killing me , and\nthis election business is nuts .\n?\ni believe texas should re - establish itself as a republic and i can go to the\nbarricades . now that gets my juices going .\n?\nlater ,\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.743+0000", "entityId": 3508, "properties": {"text": "Subject: hpl nom for november 14 , 2000\n( see attached file : hplnl 114 . xls )\n- hplnl 114 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.747+0000", "entityId": 3509, "properties": {"text": "Subject: revison # 1 - enron / hpl actuals for november 10 - 12 , 2000\nnovember 10 , 2000\nteco tap 40 . 000 / enron ; 26 . 042 / hpl iferc ; 40 . 625 / hpl gas\ndaily\nnovember 11 , 2000\nteco tap 40 . 000 / enron ; 104 . 583 / hpl gas daily\nnovember 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl gas daily\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n11 / 13 / 2000\n10 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelissa jones\n11 / 13 / 2000 10 : 01 am\nto : charlie stone / texas utilities @ tu , gary green / texas utilities @ tu ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , david\navila / lsp / enserch / us @ tu , liz . bellamy @ enron . com\ncc :\nsubject : enron / hpl actuals for november 10 - 12 , 2000\nnovember 10 , 2000\nteco tap 40 . 000 / enron ; 66 . 667 / hpl iferc\nnovember 11 , 2000\nteco tap 40 . 000 / enron ; 104 . 583 / hpl iferc\nnovember 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.752+0000", "entityId": 3510, "properties": {"text": "Subject: re : enron / hpl actuals for november 10 - 12 , 2000\nthey are sending revisions for the weekend # ' s\n\" melissa jones \" on 11 / 13 / 2000 10 : 01 : 32 am\nto : \" charlie stone \" , \" gary green \" ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , \" david avila \"\n, liz . bellamy @ enron . com\ncc :\nsubject : enron / hpl actuals for november 10 - 12 , 2000\nnovember 10 , 2000\nteco tap 40 . 000 / enron ; 66 . 667 / hpl iferc\nnovember 11 , 2000\nteco tap 40 . 000 / enron ; 104 . 583 / hpl iferc\nnovember 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.757+0000", "entityId": 3511, "properties": {"text": "Subject: enron / hpl actuals for november 10 - 12 , 2000\nnovember 10 , 2000\nteco tap 40 . 000 / enron ; 66 . 667 / hpl iferc\nnovember 11 , 2000\nteco tap 40 . 000 / enron ; 104 . 583 / hpl iferc\nnovember 12 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.761+0000", "entityId": 3512, "properties": {"text": "Subject: same day change - hpl nom for november 11 , 2000\n( see attached file : hplnl 111 . xls )\n- hplnl 111 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.766+0000", "entityId": 3513, "properties": {"text": "Subject: holiday schedule 2001\nplease click on the url below for enron ' s 2001 holiday schedule .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.771+0000", "entityId": 3514, "properties": {"text": "Subject: please pass on to your groups\n- - - - - - - - - - - - - - - - - - - - - - forwarded by laura harder / corp / enron on 11 / 13 / 2000\n08 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nina rangel @ ect\n11 / 10 / 2000 09 : 55 am\nto : airam arteaga / hou / ect @ ect , kimberly brown / hou / ect @ ect , laura\nharder / corp / enron @ enron\ncc :\nsubject : please pass on to your groups\nplease send this message to your traders that were included in the list you\ngave me for logon id ' s .\nthanks .\nina\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ina rangel / hou / ect on 11 / 10 / 2000 09 : 53 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian hoskins @ enron communications\n11 / 09 / 2000 04 : 47 pm\nto : ina rangel / hou / ect @ ect\ncc : john arnold / hou / ect @ ect\nsubject :\nthe gas trading messaging system is ready for everyone to use . here is the\nlink to the site . please let everyone know so they can start using it .\nhttp : / / gasmsgboard . dev . corp . enron . com\nbrian t . hoskins\nenron broadband services\n713 - 853 - 0380 ( office )\n713 - 412 - 3667 ( mobile )\n713 - 646 - 5745 ( fax )\nbrian _ hoskins @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.776+0000", "entityId": 3515, "properties": {"text": "Subject: indian springs\ni need hpl sales and purchases , back dated to 8 / 99 between hpl and teco to\nbook any processing revenue or losses . apparently this is in addition to the\ncurrent deal in place and is priced at at different rate . please let me know\nwhen these tickets are in place so that i can get track id ' s and finalize\nthis issue .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.782+0000", "entityId": 3516, "properties": {"text": "Subject: re : indian springs\nthis deal is to book the teco pvr revenue . it is my understanding that teco\njust sends us a check , i haven ' t received an answer as to whether there is a\npredermined price associated with this deal or if teco just lets us know what\nwe are giving . i can continue to chase this deal down if you need .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.787+0000", "entityId": 3517, "properties": {"text": "Subject: tenaska gas management agreement\ndaren ,\njust following up on my email and call last week re : the cpi\ninformation - - just as soon as you can get that to me i will be able to get out\na revised draft . i know folks are anxious so let me know if there is someone\nelse you would like me to ask about this\nthanks for your help ,\nsandi\n- - - - - forwarded by sandi m braband / hou / ect on 11 / 14 / 2000 11 : 32 am - - - - -\nsandi m braband\n10 / 31 / 2000 02 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska gas management agreement\ndaren ,\ncan you get me the specifics on the consumer price index as you all would\nlike to see it referenced in the agreement . is there a specific publication\nthat i can reference like i do for hsc proces in the first of the month\ninside ferc - - let me know", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.794+0000", "entityId": 3518, "properties": {"text": "Subject: eastrans nomination change effective 11 / 15 / 00\nplease decrease deliveries to eastrans to 0 mmbtu / dy effective 11 / 15 / 00 and\nmaintain at 0 until further notified .\nthe redeliveries will be 0 as well .\nthe fuels cotton valley gas will not be priced per the transaction\nagreement for 11 / 15 / 00 - 11 / 30 / 00 . this gas will be sold to hpl at\n$ 5 . 60 / mmbtu in a separate gas purchase agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.802+0000", "entityId": 3519, "properties": {"text": "Subject: fwd : fw : fwd : picture worth a thousand words\nthe hits just keep on coming .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steve venturatos / hou / ect on 11 / 14 / 2000\n11 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" bradley rome \" on 11 / 14 / 2000 11 : 14 : 31 am\nplease respond to\nto : , ,\n, ,\n, , ,\ncc :\nsubject : fwd : fw : fwd : picture worth a thousand words\nbradley j . rome , cpl / esa\nsenior staff landman\nburlington resources oil dave hackney ( e - mail ) ; doug bowling ( e - mail ) ;\ngeorge grau ( e - mail ) ; jay martin ( e - mail ) ; jim bailey ( e - mail ) ; jim\nvance ( e - mail ) ; kevin ashley ( e - mail ) ; leanne cantrell ( e - mail ) ; lew\nscott ( e - mail ) ; mike bowman ( e - mail ) ; steve bohnet ( e - mail ) ; tim walker\n( e - mail ) ; todd burkes ( e - mail )\nsubject : fw : fwd : picture worth a thousand words\n> - - - - - original message - - - - -\n> from : lisa lahoste\n> sent : tuesday , november 14 , 2000 6 : 00 am\n> to : barbara meyer ; bob murphy ; bob byars\n> subject : fwd : picture worth a thousand words\n>\n> >\n>\n> lisa lahoste\n> energy partners , ltd .\n> engineering technician\n> east bay field\n> ( 504 ) 799 - 1919\n> ( 504 ) 799 - 1910 fax\n> llahoste @ eplweb . com\n>\n- algore . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.808+0000", "entityId": 3520, "properties": {"text": "Subject: enron / hpl actuals for november 13 , 2000\nteco tap 120 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.812+0000", "entityId": 3521, "properties": {"text": "Subject: enron / hpl actuals for november 13 , 2000\nteco tap 120 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.817+0000", "entityId": 3522, "properties": {"text": "Subject: tenaska gas management agreement\ndaren ,\njust following up on my email and call last week re : the cpi\ninformation - - just as soon as you can get that to me i will be able to get out\na revised draft . i know folks are anxious so let me know if there is someone\nelse you would like me to ask about this\nthanks for your help ,\nsandi\n- - - - - forwarded by sandi m braband / hou / ect on 11 / 14 / 2000 11 : 32 am - - - - -\nsandi m braband\n10 / 31 / 2000 02 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska gas management agreement\ndaren ,\ncan you get me the specifics on the consumer price index as you all would\nlike to see it referenced in the agreement . is there a specific publication\nthat i can reference like i do for hsc proces in the first of the month\ninside ferc - - let me know", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.821+0000", "entityId": 3523, "properties": {"text": "Subject: re : beaumont methanol - meter 1428 - october 2000\ni ' m think i left out a detail - the 54 , 000 mmbtu for the three days oct 21 to\n23 to beaumont methanol needs to be all priced at the base deal , not on the\nswing ticket .\nfrom : lee l papayoti on 11 / 14 / 2000 03 : 45 pm\nto : anita luong / hou / ect @ ect , buddy majorwitz / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect\nsubject : beaumont methanol - meter 1428 - october 2000\nladies and gents :\non sat oct 21 , hpl meter # 1428 had a malfunction , and started flowing at a\nvery high rate , way over the nominated rate of 18 , 000 / d ( gas control will\nconfirm this ) .\nsince sat - sun - mon are all one gas day from a gas daily perspective , i told\ngas control to try to balance on sun after the meter was fixed , by cutting\nback to a lower flow rate .\nso we will need to do a special allocation for the three days october 21 -\n23 , saturday through monday . the three day total for the meter is 59 , 067\nmmbtu . beaumont methanol nominated 54 , 000 mmbtu ( i . e . 18 , 000 / d for 3\ndays ) . we should allocate a total of 54 , 000 mmbtu to beaumont methanol for\nthe three days , and the 5 , 067 mmbtu excess will be purchased by brandywine -\nunder sitara # 484934 priced at gas daily hsc midpoint .\nplease call with questions .\nthanks\nlee\n3 . 5923\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 11 / 13 / 2000\n04 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : buddy majorwitz 11 / 13 / 2000 03 : 53 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : beaumont methanol - meter 1428 - october 2000\nlee ,\nhere is the volume allocation as supplied by anita luong and my calculation\nworksheet for the captioned meter .\ngive me a call if you have any questions .\nbuddy\nx - 31933", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.826+0000", "entityId": 3524, "properties": {"text": "Subject: beaumont methanol - meter 1428 - october 2000\nladies and gents :\non sat oct 21 , hpl meter # 1428 had a malfunction , and started flowing at a\nvery high rate , way over the nominated rate of 18 , 000 / d ( gas control will\nconfirm this ) .\nsince sat - sun - mon are all one gas day from a gas daily perspective , i told\ngas control to try to balance on sun after the meter was fixed , by cutting\nback to a lower flow rate .\nso we will need to do a special allocation for the three days october 21 -\n23 , saturday through monday . the three day total for the meter is 59 , 067\nmmbtu . beaumont methanol nominated 54 , 000 mmbtu ( i . e . 18 , 000 / d for 3\ndays ) . we should allocate a total of 54 , 000 mmbtu to beaumont methanol for\nthe three days , and the 5 , 067 mmbtu excess will be purchased by brandywine -\nunder sitara # 484934 priced at gas daily hsc midpoint .\nplease call with questions .\nthanks\nlee\n3 . 5923\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 11 / 13 / 2000\n04 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : buddy majorwitz 11 / 13 / 2000 03 : 53 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : beaumont methanol - meter 1428 - october 2000\nlee ,\nhere is the volume allocation as supplied by anita luong and my calculation\nworksheet for the captioned meter .\ngive me a call if you have any questions .\nbuddy\nx - 31933", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.831+0000", "entityId": 3525, "properties": {"text": "Subject: re : indian springs\nmary :\ndeal # 487040 has been setup with demand charge equally to the amounts that\nteco paid hpl at indian spring for the following months :\naugust & september 1999\nfebruary , march , & april 2000\nif you have any questions , let me know .\nthanks , clem\nmary poorman @ enron\n11 / 14 / 2000 08 : 54 am\nto : clem cernosek / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , katherine herrera / corp / enron @ enron , lauri a\nallen / hou / ect @ ect\nsubject : indian springs\ni need hpl sales and purchases , back dated to 8 / 99 between hpl and teco to\nbook any processing revenue or losses . apparently this is in addition to the\ncurrent deal in place and is priced at at different rate . please let me know\nwhen these tickets are in place so that i can get track id ' s and finalize\nthis issue .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.836+0000", "entityId": 3526, "properties": {"text": "Subject: re : another hesco issue\nhesco is showing a price of $ 2 . 85 for tne 29 & 30\ndaren j farmer\n11 / 15 / 2000 10 : 33 am\nto : charlene richmond / hou / ect @ ect\ncc :\nsubject : re : another hesco issue\ncharlene ,\nwe should not have scheduled any volume for the 29 - 30 th . no price was\nnegotiated that i can find . however , since gas did flow , i rolled the last\nprice on the deal to cover those days . what price is hesco showing ?\nd\ncharlene richmond\n11 / 09 / 2000 01 : 37 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : another hesco issue\ndaren would you look at the price for 29 and 30 th of march 2000 . there are\nno prices for these days but volume was scheduled for these days .\nthanks\ncharlene\ndaren j farmer\n11 / 02 / 2000 02 : 59 pm\nto : charlene richmond / hou / ect @ ect\ncc :\nsubject : re : another hesco issue\ncharlene ,\ndeal # 214948 already had volume and price for the 12 th and 13 th . you may\nneed to have the volumes updated by volume management .\ni added the 15 th and 16 th to the deal ticket .\nd\ncharlene richmond\n11 / 01 / 2000 04 : 02 pm\nto : daren j farmer / hou / ect @ ect , jennifer martinez / hou / ect @ ect\ncc : kristen j hanson / hou / ect @ ect , nick moshou / corp / enron @ enron , cynthia\nhakemack / hou / ect @ ect\nsubject : re : another hesco issue\nhelp . steve mauch at hesco is wanting an answer asap\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlene richmond / hou / ect on 11 / 01 / 2000\n03 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n11 / 01 / 2000 02 : 45 pm\nto : charlene richmond / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect\nsubject : re : another hesco issue\ncharlene ,\nthis gas purchase is not a part of the wellhead portfolio but is being traded\non the texas desk . i would suggest you get with darren farmer or someone on\nthe desk .\nsorry i could not be of more assistance !\nvlt\nx 3 - 6353\ncharlene richmond\n11 / 01 / 2000 08 : 22 am\nto : julie meyers / hou / ect @ ect , vance l taylor / hou / ect @ ect\ncc :\nsubject : another hesco issue\nmeter 986725 for march 2000 . per hesco both traders are gone at ( hesco and\nenron ) and they ( hesco ) were not paid the correct price in march on the\ndays mentioned below . hesco cannot find where the price for these days were\nrecorded . per hesco they were underpaid by $ 32 , 101 . 57 . hesco is wanting to\ncome to our office to have a meeting about clearing this up . it will be nice\nif we don ' t have to meet with them .\nproduction dates are volume price they are\nlooking for\n03 / 12\n2 , 029 2 . 65\n03 / 13\n2 , 009 2 . 65\n03 / 15\n2 , 022 2 . 71\n03 / 16\n1 , 976 2 . 72", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.841+0000", "entityId": 3527, "properties": {"text": "Subject: meter 6315 , purch from torch / rally , october\ndaren ,\ni show that you extended the purchase , deal ticket 461059 , to cover flow on\nthe first two days . however , now that measurement has closed , i show that we\nhave flow on this meter for the entire month , with the exception of a few\ndays in the middle . please let me know if we want to extend this deal ( 85 %\nof hsc - lg , etc ) or if i should put this gas on strangers until we determine\nwhat to do . i am now on the dreaded ua 4 list from vol . mgmt .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.845+0000", "entityId": 3528, "properties": {"text": "Subject: gulf plains\nimbalance update : i spoke with mike bilberry and confirmed that this deal\nreally is energy in / energy out . we should not be impacted in any way by a\nreallocation to correct pvr percentages or a c 5 correction at the plant .\nhpl / ena should rereceive the same volume , dth for dth at the residue or at a\nredelivery point such as lobo / agua . i have left a message for my counterpart\nat duke and am requesting that they deliver to us , somewhere , an additional\n20 , 125 dth / day for the month of december to balance us out .\nplease let me know if you have any questions or comments . i will advise\neveryone upon their agreement to payback so that our respective positions\nreflect the additional supply .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.850+0000", "entityId": 3529, "properties": {"text": "Subject: re : fw : too funny not to send\n\" trofholz , elizabeth \" on 11 / 15 / 2000 08 : 18 : 47 am\nto : \" ' pat . clynes @ enron . com ' \"\ncc :\nsubject : fw : too funny not to send\n- - - - - original message - - - - -\nfrom : steelyl [ mailto : steelyl @ pdq . net ]\nsent : tuesday , november 14 , 2000 5 : 06 pm\nto : cgall @ swbell . net ; jojotemple @ aol . com ; r . lee steely md ;\nrktf @ aol . com ; trofholz , elizabrth a ; andy andrau ; charles cusack ;\nethelyn kuldell ; julie zinck ; lisa kern ; marcie dasher ; marco lopez ;\nmona manchester\nsubject : fwd : too funny not to send\nsubject : press release from kyle field\ncollege station , tx ( ap ) - r . c . slocum and the texas a & m aggies are\ndemanding a recount of the game in which oklahoma won 35 to 31 . \" the end\nzones were confusing , \" says slocum . \" i ' m sure that some of the touchdowns\nthat went in oklahoma ' s end zone were meant to go into ours . we were\nscoring in those end zones also . oklahoma would never have scored\nthirty - five points . there ' s no way we lost this one . a & m demands a\nrecount . \"\noklahoma officials are calling this \" outrageous \" . \" they agreed to the size ,\nshape and locations of the end zones prior to kick - off , \" replies ou coach\nbob stoops . \" if they had a problem with them , they should have said so\nbefore we started . you don ' t get to keep playing until you ' re happy with\nthe outcome . someone had to lose . we ' ve scored over thirty - five points\nmany times . \"\na & m has sent lawyers , farmers , and those guys in the funny boots as well as\nthat damn dog down to kyle field , where the scoreboard will be tested . \" we\nare confident that when the points are re - totaled , we will be the winner of\nthe game , \" says slocum .\nou also points out that in many games prior to this one , the same end zones\nwere used . \" they didn ' t have a problem with the end zones until they lost , \"\nsays stoops .\noutside of kyle field , a & m student protesters have gathered outside bearing\nsigns such as , \" a & m wants a fair game ! whoooooop ! \" students ' thoughts\nechoed their signs . \" all we want is a fair total of the points before we\ndeclare a winner , \" says student karen hays , an aggie from marfa . \" we need\nto proceed cautiously and not rush to judgment before we declare a winner . \"\nabc , around 2 : 00 pm central time , had mistakenly declared a & m the winner ,\ndespite the slim 3 point lead the aggies held at that point . at about 2 : 30\npm , with the game still too close to call , abc had to back off its\nprediction .\ncollege football analyst brent musburger made the call . \" we felt that with\na number of points still not added in by jamaar tombs and the aggies , we\nwere certain a & m would carry this game . we may have been premature in our\nprediction . \"\ngig ' em\n- jenkens & gilchrist e - mail confidentiality notice -\nthis transmission may be : ( 1 ) subject to the attorney - client privilege , ( 2 )\nan attorney work product , or ( 3 ) strictly confidential . if you are not the\nintended recipient of this message , you may not disclose , print , copy or\ndisseminate this information . if you have received this in error , please\nreply and notify the sender ( only ) and delete the message . unauthorized\ninterception of this e - mail is a violation of federal criminal law .\nsusan steely\nproject : promotions\np . o . box 570728\nhouston , tx 77257\n713 . 784 . 4020\n713 . 784 . 4716 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.854+0000", "entityId": 3530, "properties": {"text": "Subject: re : howdy\ni am doing well . i just got out here , and am getting\nadjusted . trying to meet new folks everyday , even if\nit is at the corner coffee shop . i do feel free , and\nhaven ' t thought about entex . my friends have been\nwelcoming . i have a couple of friend out here that\nhave a winter house in tahoe , and they have invited me\nto jon them for thanksgiving in tahoe . i ' ll probably\nski a little , but i ' m just looking forward to curling\nup to a book by the fireplace . i ope you are doing\nwell . i miss you guys . keep in touch . . .\nami\n- - - daren . j . farmer @ enron . com wrote :\n> hey , ac !\n>\n> how are things going for you ? liking your new\n> freedom , wild girl ? i hope\n> your having fun . i ' m sure missing you on entex .\n> i ' m already feeling the\n> heat from tm . with the cold spell and the change in\n> weather forecasts , i\n> have to re - evaluate entex everyday . but , that ' s the\n> way it always is over\n> here . i ' ve been meaning to e - mail you , but i always\n> remember after i leave\n> the office . anyway , let me know how it ' s going .\n>\n> later ,\n> d\n>\ndo you yahoo ! ?\nyahoo ! calendar - get organized for the holidays !\nhttp : / / calendar . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.859+0000", "entityId": 3531, "properties": {"text": "Subject: enron / hpl noms for november 16 , 2000\n( see attached file : hplnl 116 . xls )\n- hplnl 116 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.863+0000", "entityId": 3532, "properties": {"text": "Subject: enron / hpl actuals for november 14 , 2000\nteco tap 87 . 500 / hpl gas daily\nls hpl lsk ic 7 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.868+0000", "entityId": 3533, "properties": {"text": "Subject: same day change - revision # 2 - txu fuel trans k # 501 - november\n15 , 2000\n( see attached file : hplnl 115 . xls )\n- hplnl 115 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.872+0000", "entityId": 3534, "properties": {"text": "Subject: re : prelminary findings on deals not bridging\nmatt pena\n11 / 15 / 2000 12 : 09 pm\nto : robert superty / hou / ect @ ect\ncc : edward terry / hou / ect @ ect , victor lamadrid / hou / ect @ ect , pat\nclynes / corp / enron @ enron , donna greif / hou / ect @ ect , richard pinion / hou / ect @ ect ,\npatti sullivan / hou / ect @ ect , george smith / hou / ect @ ect , randall l\ngay / hou / ect @ ect , tricia spence / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect ,\ntom acton / corp / enron @ enron\nsubject : prelminary findings on deals not bridging\ni ' ve attached a spreadsheet showing deals that were not bridged to unify for\nnovember . please don ' t let this alarm you , this is how the bridge has always\nworked . if you have questions or would like to discuss , please let me know .\nevery instance i ' ve found looks okay because of the following :\n* a transport ut ticket on the same pipe was the deal\n* the deal was killed\n* the deal was entered as a mistake buy and should of been a sell hence the\ninactive state in unify\n* the deal was a demand based deal price with no volumes\n* the deal didn ' t have a point assigned to it , only a zone\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.878+0000", "entityId": 3535, "properties": {"text": "Subject: valero 10 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 11 / 15 / 2000\n12 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebecca griffin @ enron\n11 / 15 / 2000 12 : 06 pm\nto : gary w lamphier / hou / ect @ ect\ncc :\nsubject : valero 10 / 00\ni noticed the new october deals for valero ( 414065 , 414074 , 414071 ) include\nboth the base index pricing and the swing gas daily pricing . however , the\nold swing deals ( 148386 , 148391 , 148382 ) are still valid through october .\nshould these deals be effective for october ?\nthanks for your help .\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.883+0000", "entityId": 3536, "properties": {"text": "Subject: re : meter 6315 , purch from torch / rally , october\nyes it is a gtc spot . but the deal is a day firm .\njulie\ndaren j farmer\n11 / 15 / 2000 03 : 12 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : meter 6315 , purch from torch / rally , october\njm ,\nis the contract on 461059 good for nov ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 11 / 15 / 2000\n03 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n11 / 15 / 2000 02 : 55 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 6315 , purch from torch / rally , october\ndaren ,\ni show that you extended the purchase , deal ticket 461059 , to cover flow on\nthe first two days . however , now that measurement has closed , i show that we\nhave flow on this meter for the entire month , with the exception of a few\ndays in the middle . please let me know if we want to extend this deal ( 85 %\nof hsc - lg , etc ) or if i should put this gas on strangers until we determine\nwhat to do . i am now on the dreaded ua 4 list from vol . mgmt .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.887+0000", "entityId": 3537, "properties": {"text": "Subject: re : big cow breakout\nd\nattached per your request is the big cowboy production for october 2000 . i\nalso have the gas volume statements from coral energy that shows the actual\ndaily volumes for all of the meters , receipt and delivery , if you need that\nlevel of detail .\nif there is anything else let me know either today or tomorrow because i will\nbe on vacation next week .\nfred\ndaren j farmer\n11 / 15 / 2000 03 : 26 pm\nto : fred boas / hou / ect @ ect\ncc :\nsubject : big cow breakout\nfred ,\nplease look at the attached file below . can you give me the october volumes\nfor these meters ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 11 / 15 / 2000\n03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n11 / 15 / 2000 03 : 16 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : big cow breakout", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.892+0000", "entityId": 3538, "properties": {"text": "Subject: duke energy field 9 / 00\nplease add the demand charge for excess fees for 9 / 00 on sale deal 157278 in\nthe amount of $ 1 , 175 . 51 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.897+0000", "entityId": 3539, "properties": {"text": "Subject: fw : gop action plan : what you can do !\n- - - - - original message - - - - -\nfrom : alex fagen [ mailto : alex @ fagens . net ]\nsent : wednesday , november 15 , 2000 9 : 56 pm\nto : undisclosed - recipient : @ rad 3 . 1 stup . com ;\nsubject : fw : gop action plan : what you can do !\n- - - - - original message - - - - -\nfrom : kenneth r . pybus\nto :\nsent : wednesday , november 15 , 2000 9 : 28 am\nsubject : fwd : gop action plan : what you can do !\n> i got this from paul sperry at worldnetdaily\n>\n>\n> >\n> > i don ' t know who joe morris is , but this sounds like a plan ! ( note that\n> > this has been circulating since last thursday . )\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > united republican fund of illinois\n> > chicago\n> >\n> > november 9 , 2000\n> >\n> > from : joseph a . morris , president\n> > to : urf leaders and friends\n> >\n> > herewith is some practical advice on action that every citizen can take\n> > in the event that the florida recount confirms the election of george\n> > bush , but al gore fails to concede .\n> >\n> > we all know what is going on in florida , and that the election hinges on\n> > the outcome . i am writing you today to prepare us all for what we will\n> > have to do if what i think is going to happen actually does .\n> >\n> > the recount , which will be finished by 5 p . m . thursday , will likely show\n> > bush to be the winner once again , with only a few thousand overseas\n> > ballots to be counted . those ballots will be overwhelmingly for bush , a\n> > minimum of 60 % and probably closer to 75 % . if the count goes our way\n> > tomorrow , we have won this\n> > election .\n> >\n> > this is when something critical happens . either gore bows out gracefully\n> > or he doesn ' t , and i can almost guarantee he won ' t . these are people\n> > wedded to power who will only go down kicking and screaming . they will\n> > use every legal maneuver in the book to steal the election . ( in 1960 ,\n> > when richard nixon had every right and reason to challenge the election\n> > results he didn ' t for the sake of the country . expect no such noble\n> > behavior this time . )\n> >\n> > what will they try ? one bet is to find a friendly judge to throw out the\n> > florida results on a flimsy premise . they are already floating this as a\n> > trial balloon in the form of the allegedly \" confusing \" ballots in palm\n> > beach county . i have seen the ballots - they are not confusing in the\n> > least . indeed , they are identical in form to the punch - card ballots used\n> > in chicago\n> > and cook county , illinois , in this very election . what is more , it is\n> > just as likely that palm beach county voters who wanted to vote for bush\n> > inadvertently voted for nader . all parties approved the form of ballot\n> > before the election . the form - of - ballot issue is a mere pretext for an\n> > effort a judicial invalidation of the florida election .\n> >\n> > while i hope this scenario doesn ' t come to pass , i fear that it will ,\n> > and it will only have disastrous results for the country . the election\n> > fight could drag on for months and actually be decided by a court ! if\n> > this comes to pass the vision of our founders and the blood of patriots\n> > will have been betrayed .\n> >\n> > personally , i am not going to stand for this , and i hope you won ' t\n> > either . the good news is that we are not without voice .\n> >\n> > here is what must be done : if the vote count affirms bush ' s election , we\n> > allow a short grace period to see the reaction of the gore camp . if they\n> > have not graciously conceded after a few hours , we must bombard the news\n> > media and our public officials at every level with phone calls of\n> > outrage that demand gore ' s concession . i mean literally millions of\n> > phone calls . we must\n> > jam their phone banks with calls . there are millions of us so it\n> > shouldn ' t be too difficult . ( while you ' re at it , send e - mails to your\n> > local newspapers as well . )\n> >\n> > if it becomes widely reported - and it will - that there is a\n> > groundswell demanding that gore back down and not embarrass the country ,\n> > it will be very difficult for gore to withstand the pressure . he will\n> > have to relent .\n> >\n> > here are some places to start :\n> >\n> > the white house : telephone ( 202 ) 456 - 4114 fax : ( 202 ) 456 - 2461 e - mail\n> > president @ whitehouse . gov\n> >\n> > the vice president ' s office : telephone : ( 202 ) 274 - 5000\n> > fax : ( 202 ) 456 - 2883 e - mail vice . president @ whitehouse . gov\n> >\n> > vice president ' s senate office : telephone : ( 202 ) 224 - 2424\n> >\n> > senator tom daschle ( senate democratic leader ) : ( 202 ) 224 - 2321\n> > also : ( 202 ) 224 - 5556\n> >\n> > representative dick gephardt ( house democratic leader ) :\n> > ( 202 ) 225 - 2671 also : ( 202 ) 225 - - 0100\n> >\n> > also , be sure to call your congressmen and both your senators . all these\n> > numbers are easily located on voter . com . you can also contact them\n> > through the u . s . capitol switchboard :\n> >\n> > u . s . capitol switchboard ( all senators and representatives ) : ( 202 )\n> > 224 - 3121\n> >\n> > another office to call is that of chicago ' s mayor richard m . daley ( the\n> > brother of gore ' s campaign manager , bill daley ) :\n> > telephone : ( 312 ) 744 - 3300 fax : ( 312 ) 744 - 2324\n> >\n> > if you ' ve never made a call like this , there ' s no reason to be shy . they\n> > get opinion calls all the time and are set up to take them . in fact they\n> > like calls . it helps them tell which way the wind is blowing .\n> >\n> > some media contacts :\n> >\n> > boston globe ( 617 ) 929 - 2000\n> > matthew v . storin , editor ( 617 ) 929 - 3049\n> > e - mail : storin @ globe . com\n> >\n> > boston herald andrew costello , editor ( 617 ) 619 - 6400\n> > e - mail : acostello @ bostonherald . com\n> >\n> > chicago sun - times : ( 312 ) 321 - 3000\n> > michael cooke , editor in chief e - mail : mcooke @ suntimes . com\n> >\n> > chicago tribune ( 800 ) 874 - 2863\n> > howard a . tyner , editor e - mail : chied @ aol . com\n> > bruce dold , editorial page editor e - mail : bdold @ tribune . com\n> >\n> > los angeles times ( 213 ) 237 - 7935 ( opinion department )\n> > ( 213 ) 237 - 4511 and fax : ( 213 ) 237 - 7679 ( letters to the editor )\n> > ( 202 ) 293 - 4650 ( washington bureau )\n> > e - mail : www . latimes . com ( follow prompts to e - mail windows )\n> >\n> > new york post ( 212 ) 930 - 8000\n> > john mancini , news e - mail : jmancini @ nypost . com\n> >\n> > new york times ( 212 ) 556 - 1234\n> > joseph lelyveld , executive editor\n> > letters to the editor fax : ( 212 ) 556 - 3622\n> > e - mail : letters @ nytimes . com .\n> >\n> > philadelphia inquirer ( 215 ) 854 - 4500\n> > letters to the editor : inquirer . letters @ phillynews . com\n> >\n> > usa today ( 703 ) 276 - 3400 karen jurgenson , editor\n> > e - mail : www . usatoday . com and follow feedback prompts\n> >\n> > washington post ( 202 ) 334 - 6000\n> > fred hiatt , editorial page editor e - mail : hiattf @ washpost . com\n> >\n> > time e - mail : letters @ time . com\n> >\n> > abc e - mail : http : / / abc . go . com / abc / help / contact . html\n> >\n> > cnn ( 404 ) 827 - 1500\n> >\n> > cbs ( 212 ) 975 - 4321\n> >\n> > msnbc e - mail : world @ msnbc . com\n> >\n> > nbc nbc - nightly news : e - mail : nightly @ nbc . com\n> > nbc today show : e - mail : today @ nbc . com\n> >\n> > i ' m hoping none of this will be necessary , but i fear otherwise . as\n> > edmund burke said , the price of freedom is eternal vigilance .\n> >\n> > this e - mail is just to prepare you for the battle that we must engage .\n> >\n> > please forward this e - mail message to everyone you can think of . if we\n> > harness the power of the internet , by tomorrow millions of us will be\n> > ready !\n> >\n> > / s / morris\n>\n> - -\n> kenneth r . pybus\n> managing editor , houston business journal\n> 1001 west loop south , suite 650\n> houston , texas 77027\n> 713 - 688 - 8811\n> fax : 713 - 968 - 8025\n> krpybus @ bizjournals . com\n>\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ lstup . com - free the web\nget your free internet access at http : / / www . 1 stup . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.902+0000", "entityId": 3540, "properties": {"text": "Subject: enron / hpl actuals for november 15 , 2000\nteco tap 30 . 000 / enron ; 44 . 167 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.911+0000", "entityId": 3541, "properties": {"text": "Subject: re : sitara positions , end of month feedback from unify\nrobert superty @ ect\n11 / 16 / 2000 09 : 02 am\nto : randall l gay / hou / ect @ ect , edward terry / hou / ect @ ect , victor\nlamadrid / hou / ect @ ect , tricia spence / hou / ect @ ect , george smith / hou / ect @ ect ,\nbeverly beaty / hou / ect @ ect , pat clynes / corp / enron @ enron , patti\nsullivan / hou / ect @ ect , donna greif / hou / ect @ ect , richard pinion / hou / ect @ ect\ncc : dave nommensen / hou / ect @ ect , matt pena / na / enron @ enron , bob m\nhall / na / enron @ enron\nsubject : re : sitara positions , end of month feedback from unify\nplease take note of dave ' s very important message regarding sitara\npositions . we absolutely cannot afford to go through this again and need to\ndo everything possible to help limit the exposure . with prices where they\nare and winter weather upon us we will most likely have a very challenging\nbid week .\nthat being said i want each of you to make sure we adhere to the \" daily\nclean \" process . you should pull all the necessary reports each day and keep\nafter the schedulers to make sure they are up to date . if you wish , donna and\nrichard can make these available each day and distribute to the group . we\ndon ' t have much time so this needs to happen immediately .\ndonna , please provide me with a daily summary of all the desks for the\nremainder of the month .\nlet me know if you have any questions or concerns , thanks - bob\nfrom : dave nommensen 11 / 16 / 2000 08 : 31 am\nto : robert superty / hou / ect @ ect , randall l gay / hou / ect @ ect , george\nsmith / hou / ect @ ect , edward terry / hou / ect @ ect , victor lamadrid / hou / ect @ ect ,\ntricia spence / hou / ect @ ect , beverly beaty / hou / ect @ ect , pat\nclynes / corp / enron @ enron , patti sullivan / hou / ect @ ect , carlos j\nrodriguez / hou / ect @ ect , kevin heal / cal / ect @ ect , anita k patton / hou / ect @ ect\ncc : matt pena / na / enron @ enron , donna greif / hou / ect @ ect , richard\npinion / hou / ect @ ect , kathryn bussell / hou / ect @ ect , jeff\njohnson / corp / enron @ enron , bob m hall / na / enron @ enron , jayant\nkrishnaswamy / hou / ect @ ect , scott mills / hou / ect @ ect , tommy j\nyanowski / hou / ect @ ect , richard burchfield / hou / ect @ ect\nsubject : sitara positions , end of month feedback from unify\nbob , et al ,\nas i am sure you recall , we had a problem with sitara positions earlier in\nthe month and had to cease trading early and revert to cpr for positions .\nalthough i have not gotten very far in my transition off of unify and onto\nsitara and tds , we do see some potential for this happening again towards the\nend of this month and the beginning of next month .\nthe problem with managing positions is a combination of sheer deal counts ,\nalong with updates to those deals . a large portion of these updates come to\nsitara via the unify bridge back process . it would be ideal if we could\ncontinue to have the unify data \" cleaned / scrubbed \" week to week and try to\navoid having the bulk of the month being updated / bridged in the final\nweek / days of the month . i know this is the goal of logistics , but i just\nwant to help reinforce that goal due to the performance impact it can have on\nthe gas trading systems . perhaps a few extra pair of eyes on the pipeline\nexception summary and the bridge back pipeline summary in unify this month\nwould help .\nanother area that causes these transaction counts to increase is the need to\nhave 2 months \" active \" at a time . in other words , when november is over and\nwe are in the first week or two of december , sitara continues to maintain\npositions for november . this november data degrades the ability to update\ndecember positions in a timely manner . we may find ourselves having to\nremove the november deals from the sitara positions sooner than we have in\nthe past .\ni will be trying to work with the sitara team in the coming days / weeks to\nimplement some combination of quick fixes , as well as look into the long term\nchanges necessary to support our increased trading business .\nplease let me know if you have any questions or comments in this area .\nthanks , d . n .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.920+0000", "entityId": 3542, "properties": {"text": "Subject: shoreline gas inc . , buhler central point\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 11 / 16 / 2000 11 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n11 / 16 / 2000 09 : 16 am\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , susan\nsmith / hou / ect @ ect , joanne harris / na / enron @ enron , christy sweeney / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : shoreline gas inc . , buhler central point\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nshoreline gas , inc . 9860 1 , 000 mmbtu / d 100 % gas daily less $ 0 . 16 10 / 4 -\n10 / 31 96052055\n100 % if / hsc less $ 0 . 16 11 / 1 - 11 / 30 96052055\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of december .\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 11 / 08 / 2000\n03 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 11 / 08 / 2000 02 : 20 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ect @ ect , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeffrey austin / hou / ees @ ees , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect\ncc :\nsubject : shoreline gas inc . , buhler central point\nplease see attached file for the turn on .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.925+0000", "entityId": 3543, "properties": {"text": "Subject: holiday invitation\nplease click on the attached link to launch your holiday party invitation .\nhttp : / / invitation . enron . com\nplease direct any questions to dorie hitchcock via email .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.930+0000", "entityId": 3544, "properties": {"text": "Subject: retro assignments\nthis is a follow up to the conversation you had with pat yesterday and to\nreiterate retro contract assignments . we have decided to go back to the old\nprocess of handling contract assignments mid - month . this means that if we\nreceive an assignment from legal after the 10 th workday , that assignment will\nbecome effective for current month the following month . for example , if i\nreceive a notice from whomever that xyz has been assigned to abc on 11 / 15 / 00\nfor an legal effective date of 4 / 00 , i will create a new deal from 4 / 00\nforward . on the new deal the currect month will be zeroed out under the\nexpected volumes . bob would not start nominating this new deal until 12 / 00 ,\nleaving 4 / 00 - 11 / 00 to be moved by volume mangement .\nif this is not a clear understanding from all parties , please let me know .\nrita : if this becomes burdensome on your group , please let me know and we\nwill readdress this issue .\nthanks ! !\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.934+0000", "entityId": 3545, "properties": {"text": "Subject: summary of prc meetings\nbelow are the upcoming meetings that have been added to your calendar and\nthat you will be expected to attend for the prc process . . . .\ngas logistics pre - prc meeting\nnovember 28 , 2000 hyatt regency / pecan room lpm - ? ? ? lunch :\n11 : 30 am at duck & co\nlogistics / volume mgmt prc review meeting\nnovember 30 , 2000 eb 30 c 2 lpm - 4 pm\ngas / pulp and paper trading operations\ndecember 5 , 2000 eb 49 c 4 11 : 30 am - ? ? ?\n- heather choate , x 33278", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.939+0000", "entityId": 3546, "properties": {"text": "Subject: tx gen land office oct 2000 prod\ndaren -\ndeal # 421859 sales\ndeal # 421847 purchase\nsettlements is showing both a sales and purchase for texas general land\noffice and they are stating that they should not be billed or paid for\nanything .\nare these deals suppose to be a washout and netted together ?\nif so , the volumes are not matching : the sales on hpl are 7 , 440 mmbtus on\ndeal # 421859 and the purchase on midtx is 6 , 629 mmbtus .\nlet me know what type of deal this was intended to be .\nfyi\ni was told that tom acton was handling this deal , but i believe he will be\nout until after thanksgiving .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.944+0000", "entityId": 3547, "properties": {"text": "Subject: big thicket allocation\nanita ,\nafter speaking with gary lamphier , big thicket ' s allocation for\npecos ' / roberson ' s portion will be done differently . historically , their\nportion of the allocation was reduced for shrinkage . effective with october\n00 ' s allocation , shrink will no longer be deducted . the full amount of\npecos / roberson ' s gas received at meter 6753 and delivered out at meter 8714\n( vastar ) will be kept whole . i spoke with your contact harold mcgee at big\nthicket and he spoke with pecos / roberson regarding this and everyone is\nagreement . your allocation process will be done the same , however the\npecos / roberson number on the allocation statement will no longer have\nshrinkage deducted . i have gone over the numbers for october with harold and\nhe has stated the 23 , 174 is the amount that will be allocated to\npecos / roberson , 946 will go to jay , and 9114 will be for enron ( this portion\nhas always been kept whole ) . can you please make sure that this is done . if\nthere are any questions , please let me know . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.949+0000", "entityId": 3548, "properties": {"text": "Subject: fw : stalin quote\n- - - - - original message - - - - -\nfrom : carol covington\nsent : friday , november 17 , 2000 3 : 35 pm\nto : david heineke ; jim wallis ; ricky stewart\nsubject : fw : stalin quote\n- - - - - original message - - - - -\nfrom : julie wright [ smtp : julie @ rpcga . com ]\nsent : friday , november 17 , 2000 3 : 30 pm\nto : jim love ; patsy henry ; candy grant ; carol covington ; faye click\nsubject : stalin quote\n> \" those who cast the votes decide nothing .\n> those who count the votes decide everything . \"\n>\n> - josef stalin\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.953+0000", "entityId": 3549, "properties": {"text": "Subject: enron / hpl nom for november 18 , 2000\n( see attached file : hplnl 118 . xls )\n- hplnl 118 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.958+0000", "entityId": 3550, "properties": {"text": "Subject: txu noms . for 11 / 18 - 20 / 00\nwe are not sure whether melissa ' s lotus notes is sending out data properly .\nif\nyou have already received a copy of the attached nomination , please disregard\nthis copy .\nthanks ,\nccs\n( see attached file : hplnl 118 . xls )\n- hplnl 118 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.963+0000", "entityId": 3551, "properties": {"text": "Subject: enron / hpl actuals for november 16 , 2000\nteco tap 40 . 000 / enron ; 30 . 833 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.968+0000", "entityId": 3552, "properties": {"text": "Subject: same day change - revision # 1 - txu fuel trans k # 501 - november\n17 , 2000\n( see attached file : hplnl 117 . xls )\n- hplnl 117 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.973+0000", "entityId": 3553, "properties": {"text": "Subject: re : meter # 6009 - lundell ranch c / p - gato creek\nfyi\nfrom : robert cotten @ ect 11 / 17 / 2000 10 : 56 am\nto : vance l taylor / hou / ect @ ect\ncc : pat clynes / corp / enron @ enron , o ' neal d winfree / hou / ect @ ect\nsubject : meter # 6009 - lundell ranch c / p - gato creek\nvance ,\nit appears the actual volumes have been significantly higher than nominations\nat the subject meter the past several months . the following represents\nactivity during the months of june through september :\ngas month total nom mmbtu total actual mmbtu\n06 / 2000 19 , 680 116 , 040\n07 / 2000 19 , 933 128 , 755\n08 / 2000 19 , 530 136 , 845\n09 / 2000 18 , 540 159 , 935\ndeal # 135708 , calpine natural gas company , is the only activity at this\nmeter . should we adjust the nomination to more closely resemble the actual\nvolume ? please advise . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.979+0000", "entityId": 3554, "properties": {"text": "Subject: skydive spaceland specials\nskydive spaceland\n?\n?\nnovember - december\nspecials\nwww . skydivespaceland . com\nthis one \u0001 , s for you \u0001 ( \u0001 ( .\n\" i \u0001 , ve always wanted to skydive , but i just can \u0001 , t afford it . \"\nnow you can ! for the rest of the year , skydive spaceland will knock $ 50 off\nyour first tandem skydive .\nnow it \u0001 , s affordable ! no more excuses . come on out and change your life\nforever .\nmake your reservations now . call 1 ( 800 ) sky - dive\n?\n?\nchristmas gift certificates\nif you \u0001 , re looking at a gift for someone who seems to have it all , give them\nthe most unforgettable gift of a lifetime \u0001 ( a tandem skydive ! we have a\nclassic gift certificate , framed and ready for shipment for that special\nperson . make this christmas season last a lifetime .\ndirections\n- from houston take hwy 288 south\n- once you pass beltway 8 go 17 miles on hwy 288 and take 1462\n( alvin / rosharon ) exit .\n- go right on fm 1462 ( 2 . 1 miles ) to red light ( fm 521 )\n- go right on fm 521 ( 1 / 2 mile )\n- airport entrance is on right", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.983+0000", "entityId": 3555, "properties": {"text": "Subject: this is the enron avails spreadsheet for december , 2000 that you\nnormally get from steve holmes . i\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 11 / 20 / 2000 03 : 14\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n11 / 17 / 2000 04 : 09 pm\nto :\ncc :\nsubject : this is the enron avails spreadsheet for december , 2000 that you\nnormally get from steve holmes . i\nthis is the enron avails spreadsheet for december , 2000 that you normally get\nfrom steve holmes . i am now handing this . please feel free to call me if\nyou have any questions at 405 - 228 - 4298 .\n- enronavailsl 200 pools . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.989+0000", "entityId": 3556, "properties": {"text": "Subject: hilcorp old ocean volume\naccording to gary hanks , we would like to have the gas on the valley line\nanyway\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary jo johnson / hou / ect on 11 / 20 / 2000\n03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : jill t zivley / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : re : producer service group ?\ni can not believe you are sending emails form hawaii ! ! ! ! you are crazy . i\ntook care of camden for the month -\nit is now 330 and hilcorp has not responded . i spoke with jerry bubert\nseveral times today - emailed mike lannou and left messages , and had him\npaged , and copied hildebrand ( the president ) . if we don ' t hear by 4 pm , we\nare supposed to bypass the gas . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:18.995+0000", "entityId": 3557, "properties": {"text": "Subject: hpl nom for november 21 , 2000\n( see attached file : hplnl 121 . xls )\n- hplnl 121 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.004+0000", "entityId": 3558, "properties": {"text": "Subject: enron / hpl actuals for november 17 - 19 , 2000\nnovember 17 , 20000\nteco tap 30 . 000 / enron ; 33 . 750 / hpl gas daily\nnovember 18 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\nnovember 19 , 2000\nteco tap 23 . 125 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.011+0000", "entityId": 3559, "properties": {"text": "Subject: december preliminary production estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 11 / 20 / 2000 05 : 33\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n11 / 20 / 2000 04 : 47 pm\nto : robert cotten / hou / ect @ ect\ncc : gary a hanks / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : december preliminary production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\ndecember . please be advised that this is a preliminary estimate as to this\ndate , we have received no noms for december and there may be revisions from\nthe traders . i will update you with any revisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.015+0000", "entityId": 3560, "properties": {"text": "Subject: dec 00\ndaren - i need to get with you to find out when things ( industrials ) need to\nget in to the system for december . since this is a weird month , i thought\nthings might have to be in sooner . let me know .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.020+0000", "entityId": 3561, "properties": {"text": "Subject: re : hilcorp old ocean volume\nwell - i have officially not heard from hilcorp after numerous voice and email\nmessages . please plan to have the gas rerouted back down the valley line for\nthe dec 1 forward . call if you have any questions -\ndaren j farmer\n11 / 21 / 2000 10 : 08 am\nto : mary jo johnson / hou / ect @ ect\ncc :\nsubject : re : hilcorp old ocean volume\nthanks for the info . i appreciated the call the other day . it really helps\nme out to recieve info early like that .\nd\nfrom : mary jo johnson 11 / 20 / 2000 03 : 38 pm\nto : daren j farmer / hou / ect @ ect , james mckay / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\ncc : jill t zivley / hou / ect @ ect\nsubject : hilcorp old ocean volume\naccording to gary hanks , we would like to have the gas on the valley line\nanyway\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary jo johnson / hou / ect on 11 / 20 / 2000\n03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : jill t zivley / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : re : producer service group ?\ni can not believe you are sending emails form hawaii ! ! ! ! you are crazy . i\ntook care of camden for the month -\nit is now 330 and hilcorp has not responded . i spoke with jerry bubert\nseveral times today - emailed mike lannou and left messages , and had him\npaged , and copied hildebrand ( the president ) . if we don ' t hear by 4 pm , we\nare supposed to bypass the gas . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.026+0000", "entityId": 3562, "properties": {"text": "Subject: re : hilcorp old ocean volume\nare we going to have some quality problems with this gas ? edg\nto : daren j farmer / hou / ect @ ect , gerard krenek / gco / enron @ enron , jill t\nzivley / hou / ect @ ect , james mckay / hou / ect @ ect , edward d gottlob / hou / ect @ ect ,\nlauri a allen / hou / ect @ ect\ncc : linda roberts / na / enron @ enron , george weissman / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect\nsubject : re : hilcorp old ocean volume\nwell - i have officially not heard from hilcorp after numerous voice and email\nmessages . please plan to have the gas rerouted back down the valley line for\nthe dec 1 forward . call if you have any questions -\ndaren j farmer\n11 / 21 / 2000 10 : 08 am\nto : mary jo johnson / hou / ect @ ect\ncc :\nsubject : re : hilcorp old ocean volume\nthanks for the info . i appreciated the call the other day . it really helps\nme out to recieve info early like that .\nd\nfrom : mary jo johnson 11 / 20 / 2000 03 : 38 pm\nto : daren j farmer / hou / ect @ ect , james mckay / hou / ect @ ect , gary a\nhanks / hou / ect @ ect\ncc : jill t zivley / hou / ect @ ect\nsubject : hilcorp old ocean volume\naccording to gary hanks , we would like to have the gas on the valley line\nanyway\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary jo johnson / hou / ect on 11 / 20 / 2000\n03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : jill t zivley / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : re : producer service group ?\ni can not believe you are sending emails form hawaii ! ! ! ! you are crazy . i\ntook care of camden for the month -\nit is now 330 and hilcorp has not responded . i spoke with jerry bubert\nseveral times today - emailed mike lannou and left messages , and had him\npaged , and copied hildebrand ( the president ) . if we don ' t hear by 4 pm , we\nare supposed to bypass the gas . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.030+0000", "entityId": 3563, "properties": {"text": "Subject: king ranch gas plant - 12 / 2000 election\nsubject : king ranch gas plant - 12 / 2000 election\nhpl has elected to be kept whole with respect to processing during the month\nof december 2000 on its gas delivered from the three rivers gathering\nsystem . there should be no reduction for shrinkage and fuel at the plant for\ndecember 2000 .\nhpl will be kept whole with respect to ethane recoveries from the big cowboy\ngas being processed at the king ranch gas plant during the month of december\n2000 . this election will reduce the shrinkage percentage from 20 % of the\ninlet mmbtu ' s to 15 % of the inlet mmbtu ' s .\nif you have any questions please give me a call .\nthanks !\nblanca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.035+0000", "entityId": 3564, "properties": {"text": "Subject: communicating effectively course offering\ndaren -\nthere is an effective communication course on december 7 ( thursday ) from\n1 - 5 pm . is this the one you suggested for me , and if it is , may i attend this\none ? please let me know . it is listed through ernie and is $ 200 . thanks\nfor looking into this .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.039+0000", "entityId": 3565, "properties": {"text": "Subject: accrued thru nov . 19\ndaren ,\nplease take a look at the attached spreadsheet , we have over 500 , 000 mmbtu as\nunaccounted for . . . o ' neal 3 - 9686", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.044+0000", "entityId": 3566, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n713 - 562 - 2050 cell\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.048+0000", "entityId": 3567, "properties": {"text": "Subject: re : apache deal 384247 10 / 00\naccording to the contract brief i received , the 2 . 175 is a 1999 price . i\nbelieve my pricing is correct . bob or darren may be able your questions\nbetter .\ndave\nenron north america corp .\nfrom : megan parker @ enron 11 / 21 / 2000 03 : 27 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : apache deal 384247 10 / 00\ni got an invoice for the gas we bought from apache for tenaska iv and they\nhave a different price . for deal 384247 , we have a price of 2 . 285 and a\ndemand fee of 0 . 457 for 25 , 000 / day . apache is billing us at 2 . 175 with no\ndemand charge . can you verify this price for me and let me know which is\ncorrect ?\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.053+0000", "entityId": 3568, "properties": {"text": "Subject: gas management agreement\nattached is the red lined draft of the gas management agreement with the\nchanges we discussed . please review and give me your comments . if you can\nsupply any of the needed notice info in section 8 please let me know - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.058+0000", "entityId": 3569, "properties": {"text": "Subject: tenaska iv receivables\ndaren :\ncan you shed a little light on this tenaska iv deal ? james armstrong is\ntelling me that we should have a purchase deal in the system to pay tenaska\niv for the 9 / 00 and 10 / 00 gas that we are marketing for them . i do not see a\ndeal in path manager for either month . i also need some detail on who we are\nbuying and selling this gas from and to . there are a number of\ncounterparties at lonestar for ena and i ' m not sure which ones go with this\ndeal . is there a schedule you can email to me ? james is looking for an\nanswer today on the tenaska iv payment , so whatever you can tell me will be\nappreciated .\nthanks ,\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 11 / 21 / 2000\n09 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames armstrong @ ect\n11 / 20 / 2000 06 : 00 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : tenaska iv receivables\nmegan below is a list of the outstanding receivables for tenaska iv texas\npartners , ltd . ( 1089 ) :\nseptember - sales :\nmmbtu price amount\n26 , 275 5 . 20 136 , 630\n18 , 538 5 . 06 93 , 802 . 28\n20 , 000 5 . 045 100 , 900\n25 , 000 5 . 09 127 , 250\ntotals 89 , 813 $ 458 , 582 . 28 ( this total is per phone conversation with\ndarren farmer )\noctober - sales summary per detail economics report - 1 , 124 , 275 mmbtu for\n$ 5 , 148 , 787 . 47 ( these amounts were adjusted for the gas sent to the plant for\ntheir direct use - 427 , 851 mmbtu for $ 1 , 245 , 046 . 41 ) .\nthe total of these two amounts is $ 5 , 607 , 369 . 75 . please let me know what the\npayment schedule is for these amounts .\nadditionally , i need to ask about the payment schedule for tenaska iv this\nmonth . i need to find out if i am paying the following bills or if it is\nsomething your department is going to pay . please advise :\nwilliams energy 1 , 722 , 293 . 49\n354 , 175 . 00\n2 , 076 , 468 . 49\napache corp 1 , 348 , 500 . 00\ntxu / lone star 111 , 980 . 31\ni need to submit my funding request tomorrow , so please let me know where we\nstand on these items as soon as possible . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.063+0000", "entityId": 3570, "properties": {"text": "Subject: cornhusker up on 24 th\nspoke with ken reisz ( operations mgr ) and he said the plant is due to be up\non friday nov . 24 th , so we will need to start nominating the gas for that day\non . he expects a full load to be pulled . of course , that what we thought\nbefore the last catastrophy .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.069+0000", "entityId": 3571, "properties": {"text": "Subject: enron / hpl nom for november 22 , 2000\n( see attached file : hplnl 122 . xls )\n- hplnl 122 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.074+0000", "entityId": 3572, "properties": {"text": "Subject: enron / hpl actuals for november 20 , 2000\nteco tap 30 . 000 / enron ; 68 . 542 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.079+0000", "entityId": 3573, "properties": {"text": "Subject: re : apache deal 384247 10 / 00\naccording to the contract brief i received , the 2 . 175 is a 1999 price . i\nbelieve my pricing is correct . bob or darren may be able your questions\nbetter .\ndave\nenron north america corp .\nfrom : megan parker @ enron 11 / 21 / 2000 03 : 27 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : apache deal 384247 10 / 00\ni got an invoice for the gas we bought from apache for tenaska iv and they\nhave a different price . for deal 384247 , we have a price of 2 . 285 and a\ndemand fee of 0 . 457 for 25 , 000 / day . apache is billing us at 2 . 175 with no\ndemand charge . can you verify this price for me and let me know which is\ncorrect ?\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.084+0000", "entityId": 3574, "properties": {"text": "Subject: gas management agreement\nattached is the red lined draft of the gas management agreement with the\nchanges we discussed . please review and give me your comments . if you can\nsupply any of the needed notice info in section 8 please let me know - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.089+0000", "entityId": 3575, "properties": {"text": "Subject: tenaska iv receivables\ndaren :\ncan you shed a little light on this tenaska iv deal ? james armstrong is\ntelling me that we should have a purchase deal in the system to pay tenaska\niv for the 9 / 00 and 10 / 00 gas that we are marketing for them . i do not see a\ndeal in path manager for either month . i also need some detail on who we are\nbuying and selling this gas from and to . there are a number of\ncounterparties at lonestar for ena and i ' m not sure which ones go with this\ndeal . is there a schedule you can email to me ? james is looking for an\nanswer today on the tenaska iv payment , so whatever you can tell me will be\nappreciated .\nthanks ,\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 11 / 21 / 2000\n09 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames armstrong @ ect\n11 / 20 / 2000 06 : 00 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : tenaska iv receivables\nmegan below is a list of the outstanding receivables for tenaska iv texas\npartners , ltd . ( 1089 ) :\nseptember - sales :\nmmbtu price amount\n26 , 275 5 . 20 136 , 630\n18 , 538 5 . 06 93 , 802 . 28\n20 , 000 5 . 045 100 , 900\n25 , 000 5 . 09 127 , 250\ntotals 89 , 813 $ 458 , 582 . 28 ( this total is per phone conversation with\ndarren farmer )\noctober - sales summary per detail economics report - 1 , 124 , 275 mmbtu for\n$ 5 , 148 , 787 . 47 ( these amounts were adjusted for the gas sent to the plant for\ntheir direct use - 427 , 851 mmbtu for $ 1 , 245 , 046 . 41 ) .\nthe total of these two amounts is $ 5 , 607 , 369 . 75 . please let me know what the\npayment schedule is for these amounts .\nadditionally , i need to ask about the payment schedule for tenaska iv this\nmonth . i need to find out if i am paying the following bills or if it is\nsomething your department is going to pay . please advise :\nwilliams energy 1 , 722 , 293 . 49\n354 , 175 . 00\n2 , 076 , 468 . 49\napache corp 1 , 348 , 500 . 00\ntxu / lone star 111 , 980 . 31\ni need to submit my funding request tomorrow , so please let me know where we\nstand on these items as soon as possible . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.094+0000", "entityId": 3576, "properties": {"text": "Subject: cornhusker up on 24 th\nspoke with ken reisz ( operations mgr ) and he said the plant is due to be up\non friday nov . 24 th , so we will need to start nominating the gas for that day\non . he expects a full load to be pulled . of course , that what we thought\nbefore the last catastrophy .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.099+0000", "entityId": 3577, "properties": {"text": "Subject: fw : energy service providers ( mcnic ) / lyondell noms - december 2000\nfyi ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 11 / 21 / 2000 10 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kevin olson \" on 11 / 21 / 2000 10 : 14 : 11 am\nto : \" amy lannou \"\ncc :\nsubject : fw : energy service providers ( mcnic ) / lyondell noms - december 2000\namy ,\ni enjoyed visiting with you today and look forward to working with you in\nthe future .\nper our conversation , please find below our noms for december .\nplease call should you have any questions or need any additional\ninformation .\nthanks !\nkevin olson\n- - - - - original message - - - - -\nfrom : kevin olson [ mailto : olson @ espllp . com ]\nsent : monday , november 20 , 2000 4 : 04 pm\nto : susan hadix\ncc : janice berke - davis\nsubject : energy service providers ( mcnic ) / lyondell noms - december 2000\nsusan ,\nplease note that the mcnic noms for december , 2000 into the lyondell\nchannelview plant via hpl will be 10 , 000 mmbtu / day .\nplease call should you have any questions .\nthanks !\nkevin e . olson\nenergy service providers , llp\n1521 green oak place # 170\nkingwood , texas 77339\nphone : 281 - 359 - 4610\nfax : 281 - 359 - 4656\nemail : olson @ espllp . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.104+0000", "entityId": 3578, "properties": {"text": "Subject: re : cornhusker\nthanks for the information below . sometime next week , would you go ahead and\nmake a copy of the contract brief for me . you can interoffice mail it to me\nat\neb 3703 .\nthanks ,\nkathy benedict\ndaren j farmer\n11 / 22 / 2000 11 : 42 am\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : re : cornhusker\nif you need it , i ' ve got a contract brief that lists the transport cost and\nfuel from each location ( there numerous receipt points ) . it is possible that\nwe may need to purchase extra gas for the plant on occasion . in that case ,\nwe can use the same transport contract on lone star and transport on other\npipes also . any expense we incur to deliver gas to the plant will be passed\non to the plant .\nif you have any questions , let me know .\nd\nkatherine benedict\n11 / 22 / 2000 11 : 23 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : cornhusker\nhi darrin ,\nthis is what mark mccoy sent me about the cornhusker deal . please review and\nif there is anything else that rita wynne or i need to know about this deal ,\njust shoot me an e - mail !\nthanks for calling me back !\nhappy thanksgiving ,\nkathy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine benedict / hou / ect on 11 / 22 / 2000\n11 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n11 / 22 / 2000 08 : 12 am\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : cornhusker\nkathy - - - - - here is what i know about cornhusker :\nour supply comes from apache & williams\nour market typicially is the plant ( tenaska iv partners )\nif the plant is down , brazos utility has the right to the gas if they want it\nif brazos does not call for the gas , then we will sell off to whomever we can\nwe just get a flat fee on this gas per mmbtu , whether it goes to the plant or\nnot\ndaren farmer knows the specifics about the deal\nhope this helps , call with any questions .\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.109+0000", "entityId": 3579, "properties": {"text": "Subject: cornhusker\nhi darrin ,\nthis is what mark mccoy sent me about the cornhusker deal . please review and\nif there is anything else that rita wynne or i need to know about this deal ,\njust shoot me an e - mail !\nthanks for calling me back !\nhappy thanksgiving ,\nkathy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine benedict / hou / ect on 11 / 22 / 2000\n11 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n11 / 22 / 2000 08 : 12 am\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : cornhusker\nkathy - - - - - here is what i know about cornhusker :\nour supply comes from apache & williams\nour market typicially is the plant ( tenaska iv partners )\nif the plant is down , brazos utility has the right to the gas if they want it\nif brazos does not call for the gas , then we will sell off to whomever we can\nwe just get a flat fee on this gas per mmbtu , whether it goes to the plant or\nnot\ndaren farmer knows the specifics about the deal\nhope this helps , call with any questions .\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.117+0000", "entityId": 3580, "properties": {"text": "Subject: welcome to the next wave in digital music\nif you have trouble viewing this page , please click here . to unsubscribe ,\nplease click here .\n[ image ]\nnow , you can have your music your way \u0001 * online and off . plus , get a $ 50 rebate\nby mail .\nmusic online has always played by online rules \u0001 * big , slow \u0001 ) downloading files ,\ncomplications in organizing song lists and worse \u0001 * you were chained to your pc\nto listen to it .\nthat ' s all changing . with windows mediaplayer 7 and windowsmedia . com , the\ncompaq ipaq pa \u0001 ) 1 personal audio player is your ticket to where music is\ngoing . and getting on the next wave of digital music takes just three easy\nsteps :\n[ image ] buy an ipaq pa \u0001 ) 1 personal audio player and for a limited time , get a\n$ 50 rebate by mail ! it ' s a small device , about the size of a pager , but it\ndelivers amazing full \u0001 ) digital sound . rugged construction means it ' s ready to\nfit your lifestyle . and the removable memory cards hold up to two hours of\nmusic !\n[ image ]\nvisit www . compaq . com / wmp 7 for the exclusive compaq version of windows media\nplayer 7 . here , you get seven features in one easy \u0001 ) to \u0001 ) use package : cd player ,\naudio and video player , media jukebox , media guide , internet radio , portable\ndevice file transfer and an audio cd burner .\n[ image ]\n[ image ] check out windowsmedia . com for the best audio and video on the web ,\nincluding exciting new formats that download faster and use less ram for more\nsongs .\nit ' s easy \u0001 * get the music you want , access to thousands of titles , expanded\nfeatures and a $ 50 mail \u0001 ) in rebate on an ipaq personal audio player \u0001 * all in a\nfew clicks . join the digital music revolution today and take your music with\nyou , anywhere you want to go .\nif you would rather not receive e - mails about future contests and promotions ,\nservice updates , product enhancements , cool activities or new products ,\nplease click here to remove your name from our mailing list .\n[ image ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.124+0000", "entityId": 3581, "properties": {"text": "Subject: txu fuels / sds nomination for december 2000\nattached is the december 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuel ( previously tufco ) and sds . please advise\nshould you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.130+0000", "entityId": 3582, "properties": {"text": "Subject: txu fuels / sds nomination for december 2000\nattached is the december 2000 nomination for our takes under the gas sales and\npurchase contract between txu fuel ( previously tufco ) and hpl resources co . ,\n( txu fuel contr . # 3949 ) , as well as our december 2000 nomination for takes\nunder\nthe gas sales and purchase contract between txu fuel and sds . please advise\nshould you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : minhplno 0 . xls ) ( see attached file : sdsnom . xls )\n- minhplno 0 . xls\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.135+0000", "entityId": 3583, "properties": {"text": "Subject: hpl nom for november 23 , 2000\n( see attached file : hplnl 123 . xls )\n- hplnl 123 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.139+0000", "entityId": 3584, "properties": {"text": "Subject: enron / hpl actuals november 21 , 2000\nteco tap 30 . 000 / enron ; 50 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.144+0000", "entityId": 3585, "properties": {"text": "Subject: re : cornhusker\nthanks for the information below . sometime next week , would you go ahead and\nmake a copy of the contract brief for me . you can interoffice mail it to me\nat\neb 3703 .\nthanks ,\nkathy benedict\ndaren j farmer\n11 / 22 / 2000 11 : 42 am\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : re : cornhusker\nif you need it , i ' ve got a contract brief that lists the transport cost and\nfuel from each location ( there numerous receipt points ) . it is possible that\nwe may need to purchase extra gas for the plant on occasion . in that case ,\nwe can use the same transport contract on lone star and transport on other\npipes also . any expense we incur to deliver gas to the plant will be passed\non to the plant .\nif you have any questions , let me know .\nd\nkatherine benedict\n11 / 22 / 2000 11 : 23 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : cornhusker\nhi darrin ,\nthis is what mark mccoy sent me about the cornhusker deal . please review and\nif there is anything else that rita wynne or i need to know about this deal ,\njust shoot me an e - mail !\nthanks for calling me back !\nhappy thanksgiving ,\nkathy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine benedict / hou / ect on 11 / 22 / 2000\n11 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n11 / 22 / 2000 08 : 12 am\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : cornhusker\nkathy - - - - - here is what i know about cornhusker :\nour supply comes from apache & williams\nour market typicially is the plant ( tenaska iv partners )\nif the plant is down , brazos utility has the right to the gas if they want it\nif brazos does not call for the gas , then we will sell off to whomever we can\nwe just get a flat fee on this gas per mmbtu , whether it goes to the plant or\nnot\ndaren farmer knows the specifics about the deal\nhope this helps , call with any questions .\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.149+0000", "entityId": 3586, "properties": {"text": "Subject: cornhusker\nhi darrin ,\nthis is what mark mccoy sent me about the cornhusker deal . please review and\nif there is anything else that rita wynne or i need to know about this deal ,\njust shoot me an e - mail !\nthanks for calling me back !\nhappy thanksgiving ,\nkathy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine benedict / hou / ect on 11 / 22 / 2000\n11 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy @ enron\n11 / 22 / 2000 08 : 12 am\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : cornhusker\nkathy - - - - - here is what i know about cornhusker :\nour supply comes from apache & williams\nour market typicially is the plant ( tenaska iv partners )\nif the plant is down , brazos utility has the right to the gas if they want it\nif brazos does not call for the gas , then we will sell off to whomever we can\nwe just get a flat fee on this gas per mmbtu , whether it goes to the plant or\nnot\ndaren farmer knows the specifics about the deal\nhope this helps , call with any questions .\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.153+0000", "entityId": 3587, "properties": {"text": "Subject: neon discussion november 29\nhere are some ideas for this coming wednesday . ? remember that the following\nweek is our last neon of this semester , and it ' s your call as to what you\nwant to do with your group to end the semester ( i . e . a party , dinner , etc . ) ?\n?\nhope you ' ve had plenty of turkey !\n?\nbobby\n- neon christmas . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.158+0000", "entityId": 3588, "properties": {"text": "Subject: re : ces - devon\nrita ,\nsince this is the case , i think we need to change the way we are booking this\ndeal . currently , the ces - devon purchase is on 8348 , which is a dummy inlet\nto the plant . rather , we should probably just have the ena purch at the\ntailgate , 986363 , with a d 2 d ticket that transfers ownership to hpl , if\nnecessary . please let me know what you think .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.162+0000", "entityId": 3589, "properties": {"text": "Subject: co - owner vols 12 / 00\nfor anyone else who needs it .\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 11 / 27 / 2000 11 : 01\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n11 / 27 / 2000 11 : 27 am\nto : ,\ncc :\nsubject : co - owner vols 12 / 00\nco - owner vols 12 / 00\n- 1200 co - owners volumes to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.166+0000", "entityId": 3590, "properties": {"text": "Subject: revised avails for 12 / 00 as noted\nrevisions for 12 / 01\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 11 / 27 / 2000 10 : 38\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n11 / 27 / 2000 11 : 35 am\nto :\ncc :\nsubject : revised avails for 12 / 00 as noted\nrevised avails for 12 / 00 as noted\n- enronavailsl 200 pools . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.171+0000", "entityId": 3591, "properties": {"text": "Subject: ces - devon\nmary ,\nthis is all the information that i have when ami first looked at all the ces\ninformation . it does not mention a processing agreement , but that does not\nmean that there isn ' t one .\ndaren - do you know anything about a processing agreement for the devon gas\nat the gulf plains plant as it relates to the ces acquisition ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.175+0000", "entityId": 3592, "properties": {"text": "Subject: calpine monthly nomination ( december )\n>\naimee , i am still waiting on a transport number from lori allen in your\nshop , but i thought i would send the bv for december . will resend the rest\nlater today .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.180+0000", "entityId": 3593, "properties": {"text": "Subject: king ranch processed volumes at tailgate\nd .\nmary provided this to brian , please check against your numbers asap\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward d gottlob / hou / ect on 11 / 28 / 2000\n07 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbrian m riley\n11 / 27 / 2000 11 : 07 am\nto : edward d gottlob / hou / ect @ ect\ncc :\nsubject : king ranch processed volumes at tailgate\nplease compare with darren ' s # ' s .\nthanks br\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brian m riley / hou / ect on 11 / 27 / 2000 11 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n10 / 27 / 2000 10 : 17 am\nto : brian m riley / hou / ect @ ect\ncc :\nsubject : king ranch processed volumes at tailgate\nthis is a snapshot of my worksheet for october , i haven ' t received all of the\nvolumes for november , but , i don ' t expect any radical changes in production\nat this time .\nplease let me know if i can be of any further assistance .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.184+0000", "entityId": 3594, "properties": {"text": "Subject: re : apache deal 384247 10 / 00\nplease follow are current practice and pay the lower price .\nthanks\nbob\nenron capital management\nfrom : david baumbach @ ect 11 / 21 / 2000 03 : 55 pm\nto : megan parker / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect , bob m hall / na / enron @ enron\nsubject : re : apache deal 384247 10 / 00\naccording to the contract brief i received , the 2 . 175 is a 1999 price . i\nbelieve my pricing is correct . bob or darren may be able your questions\nbetter .\ndave\nenron north america corp .\nfrom : megan parker @ enron 11 / 21 / 2000 03 : 27 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : apache deal 384247 10 / 00\ni got an invoice for the gas we bought from apache for tenaska iv and they\nhave a different price . for deal 384247 , we have a price of 2 . 285 and a\ndemand fee of 0 . 457 for 25 , 000 / day . apache is billing us at 2 . 175 with no\ndemand charge . can you verify this price for me and let me know which is\ncorrect ?\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.189+0000", "entityId": 3595, "properties": {"text": "Subject: on call notes\nplease see attached .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.194+0000", "entityId": 3596, "properties": {"text": "Subject: eastrans nomination effective december 1 , 2000\neffective 12 / 1 / 00 , the deliveries and redeliveries will be 0 mmbtu / dy .\nthe transaction agreement will not be utilized and detm will be selling\nfuels cotton valley gas to hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.198+0000", "entityId": 3597, "properties": {"text": "Subject: revision # 1 - hpl nominations for nov . 27 , 2000 and nov . 28 , 2000\n( see attached file : hplnl 123 . xls ) ( see attached file : hplnl 128 . xls )\n- hplnl 123 . xls\n- hplnl 128 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.203+0000", "entityId": 3598, "properties": {"text": "Subject: hpl nom for november 28 , 2000\n( see attached file : hplnl 128 . xls )\n- hplnl 128 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.207+0000", "entityId": 3599, "properties": {"text": "Subject: enron / hpl actuals for november 22 - 26 , 2000\nnovember 22 , 2000\nteco tap 30 . 000 / enron ; 76 . 250 / hpl gas daily\nnovember 23 , 2000\nteco tap 0\nnovember 24 , 2000\nteco tap 30 . 000 / enron ; 63 . 750 / hpl gas daily\nnovember 25 , 2000\nteco tap 30 . 000 / enron ; 76 . 250 / hpl gas daily\nnovember 26 , 2000\nteco tap 30 . 000 / enron ; 95 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.214+0000", "entityId": 3600, "properties": {"text": "Subject: spot deals\ni have created and entered the following deals in sitara as hplc - im\nwellhead purchases for december , 2000 production :\ndeal # counterparty meter # volume\n500590 amerada hess 435 2 , 822\n500591 anadarko petr . 435 1 , 148\n500592 apache corp . 435 1 , 379\n500593 barrett res . 435 1 , 597\n500595 crosstex energy 435 682\n500596 mariner energy 435 350\n500597 ocean energy 435 3 , 750\n500598 seneca res . 435 3 , 195\n500599 st . mary land 435 3 , 299\n500600 walter oil & gas 435 6 , 778\n500601 whiting petr . 6523 117\n500658 cavalier oil & gas 6850 500\n500662 cavalier oil & gas 9800 166\n500664 cody energy 5333 2 , 169\n500665 cokinos natural 9676 1\n500666 crosstex energy 9843 122\n500667 crosstex energy 6789 2 , 500 ( 9868 not set up )\n500668 crosstex energy 9858 2 , 800\n500669 crosstex energy 6519 1\n500670 ctl oil & gas 6821 300\n500671 duke energy 6347 168\n500672 eex oper . 6500 1 , 789\n500673 embassy nat . 6598 1\n500674 coastal merchant 5848 195\n500675 coastal merchant 5923 667\n500676 george alcorn 9746 1\n500677 heatherloch mun . 6879 226\n500678 richardson prod . 9807 7 , 646\n500680 sanchez oil & gas 9760 10 , 038\n500681 sanchez oil & gas 9760 5 , 379\n500682 swift energy 2630 223\n500683 tri - union devel . 2697 990\n500730 etoco , inc . 0393 3 , 802 ( 9738 ? )\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.218+0000", "entityId": 3601, "properties": {"text": "Subject: re : apache deal 384247 10 / 00\nplease follow are current practice and pay the lower price .\nthanks\nbob\nenron capital management\nfrom : david baumbach @ ect 11 / 21 / 2000 03 : 55 pm\nto : megan parker / corp / enron @ enron\ncc : daren j farmer / hou / ect @ ect , bob m hall / na / enron @ enron\nsubject : re : apache deal 384247 10 / 00\naccording to the contract brief i received , the 2 . 175 is a 1999 price . i\nbelieve my pricing is correct . bob or darren may be able your questions\nbetter .\ndave\nenron north america corp .\nfrom : megan parker @ enron 11 / 21 / 2000 03 : 27 pm\nto : david baumbach / hou / ect @ ect\ncc :\nsubject : apache deal 384247 10 / 00\ni got an invoice for the gas we bought from apache for tenaska iv and they\nhave a different price . for deal 384247 , we have a price of 2 . 285 and a\ndemand fee of 0 . 457 for 25 , 000 / day . apache is billing us at 2 . 175 with no\ndemand charge . can you verify this price for me and let me know which is\ncorrect ?\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.223+0000", "entityId": 3602, "properties": {"text": "Subject: on call notes\nplease see attached .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.231+0000", "entityId": 3603, "properties": {"text": "Subject: implementation of the gas message board application\nplease see the following instructions for the new messenging board . if you\nhave any trouble entering into this site , please let me know . everyone\nshould now be setup and ready to go . you will have to add this site to one of\nyour favorites .\nthe gas message board application can run on both ie 5 . 0 and ie 5 . 5 now .\nattached is the url for user to run the application .\nhttp : / / gasmsgboard . dev . corp . enron . com\nplease feel free to forward above url to people who like to test the\napplication .\nhere is the steps they should do :\n1 ) launch internet explorer\n2 ) type : http : / / gasmsgboard . dev . corp . enron . com ( or just open this email and\nclick on above url )\n3 ) users should see the messages if there is any new messages for today . if\nthey don ' t see any messages , there are two reasons :\n( 1 ) they are not valid users . their names have not been added into the nt\nweb _ gastraders group yet . please contact chrysti hardy to add their names\ninto the group .\n( 2 ) there is no new messages added yet .\n4 ) click on \" comments \" button to add messages : there will be a popup window\nwhen user clicks on \" comments \" button . there are two ways to send the\nmessages after typing the\nmessages into the text box :\n( 1 ) just simply press enter to send the message . or\n( 2 ) click on \" send \" button to send the message .\n5 ) after the message has been sent , the message will be displayed on the main\nwindow immediately , the rest people who are online will get the new message\nin less than 30 seconds . this time can be reduced to as less as 1 second .\nhowever , i would not recommend to reduce the time interval less than 10\nsecond . because each time the browser refreshes the screen , the screen will\nbe blink . users don ' t want the screen blink every second while they read the\nmessages .\n6 ) all messages will be cleaned up daily at 6 : 00 pm . if they like to clean\nthem up later than 6 : 00 pm , please let me know . i can reset the time .\nnote : right now the application is under test environment . if they like it , i\nwill move it into production environment soon .\nlet me know any feedbacks .\nthanks ,\nfangming", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.238+0000", "entityId": 3604, "properties": {"text": "Subject: please forward to your groups .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by laura harder / corp / enron on 11 / 27 / 2000\n08 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : amanda huble 11 / 22 / 2000 10 : 47 am\nto : becky young / na / enron @ enron , laura harder / corp / enron @ enron , jessica\npresas / corp / enron @ enron , ina rangel / hou / ect @ ect , airam arteaga / hou / ect @ ect ,\nkimberly brown / hou / ect @ ect\ncc :\nsubject : please forward to your groups .\nreminder . . .\npira will be here giving a presentation on november 30 th in eb 32 c 2 at 3 : 30\np . m . attached are 2 versions of the presentation .\nthank you ,\namanda huble\next : 34384\nplease feel free to call me if you have any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.242+0000", "entityId": 3605, "properties": {"text": "Subject: natural gas nomination for december 2000 - - r e v i s i o n\nplease revise the natural gas nomination for the mtbe plant for december 2000\nas follows :\n10 , 000 mmbtu for the first 15 days of the month\n2 , 000 mmbut for the last half of the month\n- - - - - - - - - - - - - - - - - - - - - - forwarded by maritta mullet / gpgfin / enron on 11 / 27 / 2000\n05 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmaritta mullet\n11 / 27 / 2000 04 : 44 pm\nto : david bush / ecf / enron @ enron , mark diedrich / gpgfin / enron @ enron , steven m\nelliott / hou / ect @ ect , daren j farmer / hou / ect @ ect , paul fox / ecf / enron @ enron ,\ndavid m johnson / ecf / enron @ enron , robert e lee / hou / ect @ ect , anita\nluong / hou / ect @ ect , gregg lenart / hou / ect @ ect , thomas meers / gpgfin / enron @ enron ,\nmichael mitcham / gpgfin / enron @ enron , john l nowlan / hou / ect @ ect , lee l\npapayoti / hou / ect @ ect , james prentice / gpgfin / enron @ enron , kerry\nroper / gpgfin / enron @ enron , sally shuler / gpgfin / enron @ enron\ncc :\nsubject : natural gas nomination for december 2000\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for december 2000 :\n33 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for december 2000 :\n12 , 000 mmbtu per day for the first 15 days of the month . none for the last\nhalf of the month . mtbe plant will be down after december 15 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.247+0000", "entityId": 3606, "properties": {"text": "Subject: natural gas nomination for december 2000\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for december 2000 :\n33 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for december 2000 :\n12 , 000 mmbtu per day for the first 15 days of the month . none for the last\nhalf of the month . mtbe plant will be down after december 15 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.252+0000", "entityId": 3607, "properties": {"text": "Subject: equistar 12 / 00\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 11 / 28 / 2000 11 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 11 / 27 / 2000 05 : 07 pm\nto : anita luong / hou / ect @ ect\ncc :\nsubject : equistar 12 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.256+0000", "entityId": 3608, "properties": {"text": "Subject: txu nom . s for 11 / 29 / 00\n( see attached file : hplnl 129 . xls )\n- hplnl 129 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.261+0000", "entityId": 3609, "properties": {"text": "Subject: enron / hpl actuals for november 27 , 2000\nteco tap 20 . 000 / enron ; 100 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.265+0000", "entityId": 3610, "properties": {"text": "Subject: gas fundamentals website update\n- - - - - - - - - - - - - - - - - - - - - - forwarded by laura harder / corp / enron on 11 / 28 / 2000\n08 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : amanda huble 11 / 28 / 2000 08 : 46 am\nto : becky young / na / enron @ enron , laura harder / corp / enron @ enron , jessica\npresas / corp / enron @ enron , ina rangel / hou / ect @ ect , airam arteaga / hou / ect @ ect ,\nkimberly brown / hou / ect @ ect\ncc :\nsubject : gas fundamentals website update\nplease forward to your groups !\nthank you ,\namanda huble\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amanda huble / na / enron on 11 / 28 / 2000 08 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndavid dronet\n11 / 28 / 2000 08 : 41 am\nto : amanda huble / na / enron @ enron\ncc :\nsubject : gas fundamentals website update\nmorning ,\nas some of you may have noticed we have added security to the gas\nfundamentals website .\nif you encounter this screen when accessing http : / / gasfundy . corp . enron . com\nsimply login with your windows domain name and password . this is the same\naccount you would use to logon to\nyour pc . if you do not wish to be prompted with this information again ,\ncheck the \" save this password in your password list \" option and\nyou will not encounter this pop up when accessing the website .\nthank you ,\ndavid dronet\nxt 53482", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.270+0000", "entityId": 3611, "properties": {"text": "Subject: calpine monthly nomination\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 11 / 28 / 2000 09 : 56\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nricky archer on 11 / 27 / 2000 12 : 29 : 31 pm\nto : \" ' aimee . lannou @ enron . com ' \"\ncc :\nsubject : calpine monthly nomination\naimee , this includes the 10 , 000 transport for december . thanks\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.274+0000", "entityId": 3612, "properties": {"text": "Subject: second revision to my spreadsheet - changes to previous one are\nnoted as rev 2\nrevisions to devon # ' s .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 11 / 29 / 2000 09 : 57\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n11 / 29 / 2000 10 : 54 am\nto :\ncc :\nsubject : second revision to my spreadsheet - changes to previous one are noted\nas rev 2\nsecond revision to my spreadsheet - changes to previous one are noted as rev\n2\n- enronavailsl 200 pools . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.279+0000", "entityId": 3613, "properties": {"text": "Subject: samson lone star limited\ndaren , i am trying to process two invoices from samson resources co . ( samson\nlone star limited ) for september 2000 and october 2000 . the volume is at\ncarthage hub . i have not been able to find this volume in unify for either\nmonth . samson has faxed me their confirmation and your name is listed as the\ncontact . do you know the sitara number for these deals ? thanks .\nlaurie ellis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.284+0000", "entityId": 3614, "properties": {"text": "Subject: meter 1594 for nov .\nwe had flow on the first , prior to the shut in for work . i need a deal to\npick up the 500 and change that squeaked through the meter , please . my\nexceptions need to be cleared pretty quickly .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.289+0000", "entityId": 3615, "properties": {"text": "Subject: flagstaff on 11 / 10\ndaren ,\na small volume ( 352 dth ) flowed on the 10 th at flagstaff meter , i think it\nmay have been a test volume . do you want to put in a deal or hit strangers\nfor now ?\nplease advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.294+0000", "entityId": 3616, "properties": {"text": "Subject: hpl noms for nov . 30 , 2000\n( see attached file : hplnl 130 . xls )\n- hplnl 130 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.299+0000", "entityId": 3617, "properties": {"text": "Subject: enron / hpl actuals for nov . 28 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.304+0000", "entityId": 3618, "properties": {"text": "Subject: volume changes - december , 2000\nplease note the following volume changes for december , 2000 :\ndeal # meter # counterparty trade zone from to\n126281 6296 eog res 1 5 , 412 4 , 000\n125822 9658 kcs res 16 9 , 379 7 , 500\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.309+0000", "entityId": 3619, "properties": {"text": "Subject: galleryfurniture . com bowl\nenron is proud to be a major sponsor of the galleryfurniture . com bowl !\ndon ' t miss your chance to witness college football history , as bowl fever\nhits the city of houston with the inaugural galleryfurniture . com bowl game\nwednesday , december 27 , 2000 at the houston astrodome . this is your\nopportunity to see the big xii conference face off against conference usa !\nthis friday , december lst at the big e ' caf , , community relations will be\nselling discounted tickets for $ 8 to all enron employees from 11 : 30 am - 1 : 00\npm ( no limit ) .\nthe purchase of a game ticket will also make a difference in the lives of\nthousands . all proceeds from ticket sales will go to aids foundation houston\n( afh ) investment of a lifetime program , which benefits houstonians with life\nthreatening illnesses .\neveryone who purchases a ticket friday will also receive a coupon for a\ncomplimentary chick - fil - a sandwich , and will have the opportunity to pick - up\nfree bowl game merchandise the from the galleryfurniture . com bowl promotion\ntruck . in addition , gallery furniture will have a special offer to enron\nemployees to register to win a brand new 36 - inch color tv !\ndon ' t miss out on all the exciting action and being a part of houston bowl\nfever !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.314+0000", "entityId": 3620, "properties": {"text": "Subject: natural gas nomination for december 2000 - - r e v i s i o n # 2\nplease revise the natural gas nomination for the mtbe plant for december 2000\nas follows :\n10 , 500 mmbtu for the entire month of december .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael mitcham / gpgfin / enron on\n11 / 29 / 2000 08 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmaritta mullet\n11 / 27 / 2000 05 : 08 pm\nto : david bush / ecf / enron @ enron , mark diedrich / gpgfin / enron @ enron , steven m\nelliott / hou / ect @ ect , daren j farmer / hou / ect @ ect , paul fox / ecf / enron @ enron ,\ndavid m johnson / ecf / enron @ enron , robert e lee / hou / ect @ ect , anita\nluong / hou / ect @ ect , gregg lenart / hou / ect @ ect , thomas meers / gpgfin / enron @ enron ,\nmichael mitcham / gpgfin / enron @ enron , john l nowlan / hou / ect @ ect , lee l\npapayoti / hou / ect @ ect , james prentice / gpgfin / enron @ enron , kerry\nroper / gpgfin / enron @ enron , sally shuler / gpgfin / enron @ enron\ncc :\nsubject : natural gas nomination for december 2000 - - r e v i s i o n\nplease revise the natural gas nomination for the mtbe plant for december 2000\nas follows :\n10 , 000 mmbtu for the first 15 days of the month\n2 , 000 mmbut for the last half of the month\n- - - - - - - - - - - - - - - - - - - - - - forwarded by maritta mullet / gpgfin / enron on 11 / 27 / 2000\n05 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmaritta mullet\n11 / 27 / 2000 04 : 44 pm\nto : david bush / ecf / enron @ enron , mark diedrich / gpgfin / enron @ enron , steven m\nelliott / hou / ect @ ect , daren j farmer / hou / ect @ ect , paul fox / ecf / enron @ enron ,\ndavid m johnson / ecf / enron @ enron , robert e lee / hou / ect @ ect , anita\nluong / hou / ect @ ect , gregg lenart / hou / ect @ ect , thomas meers / gpgfin / enron @ enron ,\nmichael mitcham / gpgfin / enron @ enron , john l nowlan / hou / ect @ ect , lee l\npapayoti / hou / ect @ ect , james prentice / gpgfin / enron @ enron , kerry\nroper / gpgfin / enron @ enron , sally shuler / gpgfin / enron @ enron\ncc :\nsubject : natural gas nomination for december 2000\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for december 2000 :\n33 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for december 2000 :\n12 , 000 mmbtu per day for the first 15 days of the month . none for the last\nhalf of the month . mtbe plant will be down after december 15 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.319+0000", "entityId": 3621, "properties": {"text": "Subject: deal numbers\nhi darrin ,\nrita has asked me to provide her with all the \" deal numbers \" associated for\nthe cornhusker ( tenaska iv texas partners ) deal . when you get a chance ,\nwould you please send me those deal numbers .\neven though i can print reports such as the \" deal volume tracking report \" to\nretrieve some of the deal numbers , rita was concerned that there might be\nother deals set - up in unify , which we don ' t know about .\nthank you ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.323+0000", "entityId": 3622, "properties": {"text": "Subject: sitara / cpr availability\nto all sitara users :\nthe sitara system will be brought down on a nightly basis between 12 : 01 am -\n4 : 00 am central time for nightly processing .\nthe system will be available in the morning after that time , with positions\nprimed by 5 : 30 am .\ncpr will be available during these times .\nplease call the sitara hotline ( ( 713 ) 853 - 7049 ) if you have any questions or\nconcerns .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.328+0000", "entityId": 3623, "properties": {"text": "Subject: enron / hpl nom for december 1 , 2000\n( see attached file : hplnl 201 . xls )\n- hplnl 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.332+0000", "entityId": 3624, "properties": {"text": "Subject: enron / hpl actuals for november 29 , 2000\nteco tap 18 . 208 / enron ; 20 . 125 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.337+0000", "entityId": 3625, "properties": {"text": "Subject: enron / hpl nom for december 1 , 2000\n( see attached file : hplnl 201 . xls )\n- hplnl 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.342+0000", "entityId": 3626, "properties": {"text": "Subject: tri - c / cokinos gov bill daniels dec . pricing\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 11 / 30 / 2000 06 : 20\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : melissa graves 11 / 30 / 2000 04 : 40 pm\nto : julie meyers / hou / ect @ ect\ncc : donald p reinhardt / hou / ect @ ect , susan smith / hou / ect @ ect , vance l\ntaylor / hou / ect @ ect , michael walters / hou / ect @ ect , jeffrey austin / hou / ees @ ees ,\nrobert cotten / hou / ect @ ect , cynthia hakemack / hou / ect @ ect\nsubject : tri - c / cokinos gov bill daniels dec . pricing\njulie ,\nplease correct the pricing for sitara ticket # 377169 for the month of dec .\nfrom 97 % if / hsc to 97 % gas daily , per jeff ' s message below .\nthank you ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 11 / 30 / 2000\n04 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njeff a austin @ ees\n11 / 28 / 2000 02 : 38 pm\nto : melissa graves / hou / ect @ ect\ncc : jill t zivley / hou / ect @ ect\nsubject : tri - c / cokinos gov bill daniels dec . pricing\nmelissa ,\ncokinos has elected to be paid gas daily for the month of december . please\nlet jill know if there are any questions .\nthanks ,\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.346+0000", "entityId": 3627, "properties": {"text": "Subject: deal numbers\nhi darrin ,\nrita has asked me to provide her with all the \" deal numbers \" associated for\nthe cornhusker ( tenaska iv texas partners ) deal . when you get a chance ,\nwould you please send me those deal numbers .\neven though i can print reports such as the \" deal volume tracking report \" to\nretrieve some of the deal numbers , rita was concerned that there might be\nother deals set - up in unify , which we don ' t know about .\nthank you ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.351+0000", "entityId": 3628, "properties": {"text": "Subject: beaumont methanol\nthis is to confirm that we need to take our delivery to hpl meter # 1428 to\nzero ! !\nbeaumont methanol started a controlled shut - down last night ( they will be\ndown in deco 0 due to high gas prices ) . . . . and it became an \" out - of - control \"\nshut in and they had to shut down last night , and are now taking no gas from\nthe dupont header .\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.357+0000", "entityId": 3629, "properties": {"text": "Subject: fw : fw : fw : dance off to select the next president\n? - - - - - original message - - - - -\nfrom : ? cindy rogers [ mailto : cindyrl 119 @ hotmail . com ]\nsent : ? ? wednesday , november 29 , 2000 3 : 26 pm\nto : ? ? ? ? vbergl @ jcpenney . com ; sdmotsy @ aol . com ; kimscott 88 @ hotmail . com\ncc : ? ? ? ? patti 2 hot @ yahoo . com ; vlotspeich @ texoma . net ;\nwitchproctor 2000 @ yahoo . com\nsubject : ? ? ? ? ? ? ? fwd : fw : fw : dance off to select the next president\n>\n- danceoff . exe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.362+0000", "entityId": 3630, "properties": {"text": "Subject: hpl nom for december 2 , 2000\n( see attached file : hplnl 202 . xls )\n- hplnl 202 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.368+0000", "entityId": 3631, "properties": {"text": "Subject: enron / hpl actuals for november 30 , 2000\nteco tap 115 . 833 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.373+0000", "entityId": 3632, "properties": {"text": "Subject: camden resources , inc .\nteam ,\nwe are still waiting on the agreements to be returned to us for the camden\ndriscoll ranch # 3 well . we should receive them by monday , december 4 , 2000 .\ni spoke with the field guy today ( bobby husky ) and he stated that the well\nwould not be ready to turn on until 3 weeks from now . he said that an amine\nplant is being installed . therefore , we are waiting on them . this is just\nan fyi to everyone . this will still be booked for december 2000 . please\nforward this email to anyone that i might have left out .\nthank you !\njoanne\nx 68228", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.380+0000", "entityId": 3633, "properties": {"text": "Subject: revised buyback\nthe marathon - ashland deal has been added .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.385+0000", "entityId": 3634, "properties": {"text": "Subject: re : swing and buybacks\nthe buyback for marthon - ashland will be put in today .\njulie\naimee lannou 12 / 01 / 2000 08 : 16 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : swing and buybacks\njulie - do you have the current swing ad buybacks list for december ? please\nlet me know when you have it all together .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.390+0000", "entityId": 3635, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.394+0000", "entityId": 3636, "properties": {"text": "Subject: ces deal clean - up\ni will need to make these changes in sitara . on some of these deals it will\nrequire me to go in and copy the ticket to a new ticket to move december 2000\nforward . these changes will be made this afternoon . if you have questions\nor concerns please call met at x 3 - 3048 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elizabeth l hernandez / hou / ect on\n12 / 05 / 2000 07 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncyndie balfour - flanagan @ enron\n12 / 04 / 2000 05 : 21 pm\nto : elizabeth l hernandez / hou / ect @ ect\ncc : jeffrey c gossett / hou / ect @ ect , linda s bryan / hou / ect @ ect\nsubject : ces deal clean - up\nlisted below are deals for which we have rec ' d consent to assignment , but are\nstill showing in sitara as ces deals . please make the necessary changes .\ncp name ( as showing in sitara ) ' new ' cp name deal # date consent executed\nces - entergy new orleans , inc entergy new orleans , inc 140327 08 / 09 / 00\nces - entergy new orleans , inc entergy new orleans , inc 140330 08 / 09 / 00\nces - entergy new orleans , inc entergy new orleans , inc 140332 08 / 09 / 00\nces - entergy new orleans , inc entergy new orleans , inc 140334 08 / 09 / 00\nces - entergy new orleans , inc entergy new orleans , inc 140336 08 / 09 / 00\nces - entergy new orleans , inc entergy new orleans , inc 140337 08 / 09 / 00\nces - flash gas & oil southwest inc . flash gas & oil southwest inc . 263609\n08 / 03 / 00\nces - hunt , lydia hunt , lydia 263650 09 / 06 / 00\nces - james e . brummage james e . brummage 220339 05 / 05 / 00\nces - lakeland , city of lakeland , city of 142035 08 / 07 / 00\nces - lakeland , city of lakeland , city of 142036 08 / 07 / 00\nces - lakeland , city of lakeland , city of 142037 08 / 07 / 00\nces - ochs bros . ochs bros . 229857 05 / 19 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.399+0000", "entityId": 3637, "properties": {"text": "Subject: out of the office\ni will be out of the office 12 / 14 thru 12 / 27 and will be back on thursday\n12 / 28 . aimee 3 - 0506 will be the point person for any questions but the\nfollowing people will do some of my desk , thanks . please forward this message\nto the appropriate people in your groups .\nmark - hpl pools\nbob c - daily noms hpl & ena , path ena and bridge back\naimee - tufco\nsabrae - bp transport , nngb\nmike - carthage , ces\nif you have any questions please let aimee know , thanks .\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.404+0000", "entityId": 3638, "properties": {"text": "Subject: re : tenaska iv\nany word yet ? i don ' t mean to rush you , but tenaska iv is being very\npersistent .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 12 / 04 / 2000\n03 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 12 / 01 / 2000 02 : 45 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : tenaska\nthat sounds great . because of the accrual , i cannot draft this today . i\nwill try it on monday . what about the demand fee for the payable to tenaska\niv . do you think that is a good idea ? i explained it to kris hanson and she\nagreed that it was the best way to book this payable . we would need a new\ndemand purchase ticket for tenaska iv on the cleburne desk in the amount of\n$ 2 , 803 , 586 . 41 with no volume and no commodity . this is more than we owe\ntenaska iv , but i will net it with the tenaska iv sale and the $ 0 . 04 demand\nfee to pay a net amount of $ 1 , 551 , 050 . 76 . i have attached my spreadsheet\nwhich details our payment . we will have to adjust this number once we get\nthe actual volumes . i would like to pay tenaska iv next week , so please let\nme what you think .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.408+0000", "entityId": 3639, "properties": {"text": "Subject: enron / hpl actuals for december 1 - 3 , 2000\ndecember 1 , 2000\nteco tap 35 . 000 / enron ; 105 . 625 / hpl iferc\ndecember 2 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl iferc\ndecember 3 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.413+0000", "entityId": 3640, "properties": {"text": "Subject: the actuals for december 1 - 3 , 2000\nwe will not have the numbers in until late this afternoon . david is out of\nthe\noffice today and charlie was just called into an emergency meeting . sorry for\nany inconvenience .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.420+0000", "entityId": 3641, "properties": {"text": "Subject: hpl nom for december 5 , 2000\n( see attached file : hplnl 205 . xls )\n- hplnl 205 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.425+0000", "entityId": 3642, "properties": {"text": "Subject: re : tenaska iv\nany word yet ? i don ' t mean to rush you , but tenaska iv is being very\npersistent .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 12 / 04 / 2000\n03 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 12 / 01 / 2000 02 : 45 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : tenaska\nthat sounds great . because of the accrual , i cannot draft this today . i\nwill try it on monday . what about the demand fee for the payable to tenaska\niv . do you think that is a good idea ? i explained it to kris hanson and she\nagreed that it was the best way to book this payable . we would need a new\ndemand purchase ticket for tenaska iv on the cleburne desk in the amount of\n$ 2 , 803 , 586 . 41 with no volume and no commodity . this is more than we owe\ntenaska iv , but i will net it with the tenaska iv sale and the $ 0 . 04 demand\nfee to pay a net amount of $ 1 , 551 , 050 . 76 . i have attached my spreadsheet\nwhich details our payment . we will have to adjust this number once we get\nthe actual volumes . i would like to pay tenaska iv next week , so please let\nme what you think .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.432+0000", "entityId": 3643, "properties": {"text": "Subject: nom change for the 5 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by liz bellamy / na / enron on 12 / 04 / 2000 11 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 12 / 04 / 2000 11 : 46 : 25 am\nto : lbellamy @ enron . com , janet . h . wallis @ enron . com\ncc :\nsubject : nom change for the 5 th\n( see attached file : hpl - dec . xls )\n- hpl - dec . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.439+0000", "entityId": 3644, "properties": {"text": "Subject: union carbide , 96002201\nfax of contract to follow . aa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.446+0000", "entityId": 3645, "properties": {"text": "Subject: texas general land office it transport\ngerald / eric -\ni have a couple of questions regarding tglo transport contract\n012 - 88494 - 202 . we are currently delivering a volume of 28 . 000 mm into various\nmidcon interconnects on this contract that are designated to go to\nreliant / entex for the purpose of heating hisd schools . the transport\ncontract stipulates different rates for this delivery depending on whether\nthe gas is intended for state facilities or not . my first question , then ,\nis : are hisd schools considered state facilities ? and , if hisd schools are\nconsidered state facilities , does the fact that this gas is being delivered\nto them via reliant / entex utilizing midcon ' s pipe make any difference ?\ni am asking these questions not only to assure that we are recouping the\ncorrect transport rate , but also to determine what the consequences might be\nif i interrupt this delivery . we are having difficulty getting enough gas\ninto midcon to cover our entex noms and i am just exploring my options . i\nwould also expect that this volume should decrease when hisd closes for the\nchristmas holidays - does the fact that this is an it agreement give me enough\nleverage to cut this nom if tglo does not do so voluntarily ?\nthanks for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.451+0000", "entityId": 3646, "properties": {"text": "Subject: hpl inter - company contracts\nsteve :\nattached please find a schedule that shows all the active hpl inter - company\ncontracts that are recorded in the global contract system . the dark shaded\ncontracts are needed to perform hpl ' s daily / monthly activities . each of\nthese have a comment .\nthe lightly shaded contracts had activity in year 2000 , but will not be\nneeded for future activities .\nthe non - shaded contracts did not have any activity in year 2000 , and will\nnot be needed for future activities .\nthis schedule was compiled by using information provided by cheryl dudley ,\nrita wynne , daren farmer , & clem ' s expertise .\nif you have any questions , please feel free to call any or all of us .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.456+0000", "entityId": 3647, "properties": {"text": "Subject: heads - up - tenaska iv partner ltd . - september 2000\nhi guys ,\nplease do me and bob fisher in the transport settlements group a huge\nfavor . . . . . . please let us know when the txu / lonestar transport deals for\ntenaska iv texas partners have been entered into path manager ( for september\n2000 ) .\ni am holding the transport invoice from txu / lonestar for september\n2000 . . . . waiting to enter the \" actuals \" into our system for payment .\nthanks ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.464+0000", "entityId": 3648, "properties": {"text": "Subject: cynergy ( apache )\nstacey / daren - - - - lisa hughes with cynergy ( agent for apache ) is requesting the\nforce majure letter for nov . 24 th due to the cornhusker plant not coming up .\ncan we get one typed up to send to her for apache .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.469+0000", "entityId": 3649, "properties": {"text": "Subject: goings on\nhi again ,\n?\ni can hardly wait for some good stuff regarding my \" friend \" . i do hope you\nunderstand i am not against the person or persons - - just the way they do\ntheir jobs .\n?\ni can ' t believe pat just left . must have been a really bad meeting . who took\nhis place ?\n?\ni see henry hub was close to $ 7 . 50 yesterday . amazing . your producers must\nbe happy .\n?\ntrees - - ha . it is getting to be a choice between trees or gifts .\n?\nmarkets up nicely , courts ruling nicely , greenspan softening his stance on\ninterest , linda not shopping as much as prior years . looking good today .\n?\nlater ,\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.474+0000", "entityId": 3650, "properties": {"text": "Subject: hpl nom for december 6 , 2000\n( see attached file : hplnl 206 . xls )\n- hplnl 206 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.478+0000", "entityId": 3651, "properties": {"text": "Subject: enron / hpl actuals for december 4 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl iferc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.483+0000", "entityId": 3652, "properties": {"text": "Subject: revised deal tickets\nvolumes have been revised on the following deal tickets effective 12 / 6 / 00 :\ndeal # meter # trade zone from to\n126281 6296 1 4 , 000 4 , 500\n126289 9757 23 2 , 455 1 , 955\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.488+0000", "entityId": 3653, "properties": {"text": "Subject: deal # 413652 - meter # 9603\nthe subject volume was revised from 35 , 517 to 38 , 488 effective 12 / 5 / 00 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.493+0000", "entityId": 3654, "properties": {"text": "Subject: heads - up - tenaska iv partner ltd . - september 2000\nhi guys ,\nplease do me and bob fisher in the transport settlements group a huge\nfavor . . . . . . please let us know when the txu / lonestar transport deals for\ntenaska iv texas partners have been entered into path manager ( for september\n2000 ) .\ni am holding the transport invoice from txu / lonestar for september\n2000 . . . . waiting to enter the \" actuals \" into our system for payment .\nthanks ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.497+0000", "entityId": 3655, "properties": {"text": "Subject: cynergy ( apache )\nstacey / daren - - - - lisa hughes with cynergy ( agent for apache ) is requesting the\nforce majure letter for nov . 24 th due to the cornhusker plant not coming up .\ncan we get one typed up to send to her for apache .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.502+0000", "entityId": 3656, "properties": {"text": "Subject: re : meter 1428\ni am pretty sure this is a \" high zero \" and will be adjusted out by\nmeasurement . so , disregard these spurious volumes coming across .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.508+0000", "entityId": 3657, "properties": {"text": "Subject: re : meter 1428\nwe should check with gas control as to why gas is flowing at all and / or\nwhether this is a valid reading . . . .\ngary / james - let us know\nthanks\nlee\naimee lannou 12 / 05 / 2000 11 : 09 am\nto : daren j farmer / hou / ect @ ect\ncc : lee l papayoti / hou / ect @ ect\nsubject : meter 1428\ndaren - meter 1428 , beaumont methanol is shut - in for december . there has\nbeen flow of 69 and 65 on days 2 and 3 . should a swing ticket be put at the\nmeter ? the last swing deal was 451907 for 11 / 00 . thanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.513+0000", "entityId": 3658, "properties": {"text": "Subject: meter 1428\ndaren - meter 1428 , beaumont methanol is shut - in for december . there has\nbeen flow of 69 and 65 on days 2 and 3 . should a swing ticket be put at the\nmeter ? the last swing deal was 451907 for 11 / 00 . thanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.519+0000", "entityId": 3659, "properties": {"text": "Subject: inclement weather planning 12 / 13 & 12 / 14\nbob / bob ,\nfyi - daren has let me know that , according to next weeks weather report it\nwill be getting cold and possibly icy , wednesday and thursday\nof next week . the texas desk has reserved 15 rooms at the hyatt in\npreparation of this inclement weather . please let me know if you think\nthe other regions should prepare in this way as well .\nwednesday the high is 38 , low 32\nthursday high is 40 , low 27\nthanks ! : ) heather", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.525+0000", "entityId": 3660, "properties": {"text": "Subject: cornhusker\ndaren - - - ( re : the email below from kathy benedict ) if i ' m not mistaken , i\nthought we didnt take end up taking over cornhusker completely until\noctober ? i thought tenaska was still doing it , at least accounting for it .\ntherefore , this gas wasn ' t pathed during the month . . . and i believe we didnt\nhave all the tickets in at the time . what do you recall ?\nthanks ,\nmark\nx 33396\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 12 / 06 / 2000 07 : 26\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine benedict @ ect\n12 / 05 / 2000 04 : 44 pm\nto : daren j farmer / hou / ect @ ect , mark mccoy / corp / enron @ enron\ncc : bob fisher / na / enron @ enron\nsubject : heads - up - tenaska iv partner ltd . - september 2000\nhi guys ,\nplease do me and bob fisher in the transport settlements group a huge\nfavor . . . . . . please let us know when the txu / lonestar transport deals for\ntenaska iv texas partners have been entered into path manager ( for september\n2000 ) .\ni am holding the transport invoice from txu / lonestar for september\n2000 . . . . waiting to enter the \" actuals \" into our system for payment .\nthanks ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.532+0000", "entityId": 3661, "properties": {"text": "Subject: enron actuals for december 5 , 2000\nteco tap 110 . 000 / hpl iferc ; 12 . 500 / enron\nls hpl lsk ic 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.540+0000", "entityId": 3662, "properties": {"text": "Subject: txu fuel nom . for 12 / 07 / 00\n( see attached file : hplnl 207 . xls )\n- hplnl 207 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.546+0000", "entityId": 3663, "properties": {"text": "Subject: cornhusker\ndaren - - - ( re : the email below from kathy benedict ) if i ' m not mistaken , i\nthought we didnt take end up taking over cornhusker completely until\noctober ? i thought tenaska was still doing it , at least accounting for it .\ntherefore , this gas wasn ' t pathed during the month . . . and i believe we didnt\nhave all the tickets in at the time . what do you recall ?\nthanks ,\nmark\nx 33396\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 12 / 06 / 2000 07 : 26\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine benedict @ ect\n12 / 05 / 2000 04 : 44 pm\nto : daren j farmer / hou / ect @ ect , mark mccoy / corp / enron @ enron\ncc : bob fisher / na / enron @ enron\nsubject : heads - up - tenaska iv partner ltd . - september 2000\nhi guys ,\nplease do me and bob fisher in the transport settlements group a huge\nfavor . . . . . . please let us know when the txu / lonestar transport deals for\ntenaska iv texas partners have been entered into path manager ( for september\n2000 ) .\ni am holding the transport invoice from txu / lonestar for september\n2000 . . . . waiting to enter the \" actuals \" into our system for payment .\nthanks ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.551+0000", "entityId": 3664, "properties": {"text": "Subject: daren ,\ni was wondering if it would be ok for me to sit in with you one day to get a\ngeneral feel of your end of the process . pat had told me before he left that\nit would help me better grasp the process as a whole .\ni understand the imminent cold weather is making things crazy , so now may not\nbe the best time to be in your way . but let me know if i can spend a day ,\nmorning , or even just an afternoon down there with you whenever it is a good\ntime . i think it will help me very much in my role .\nthanks .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.555+0000", "entityId": 3665, "properties": {"text": "Subject: txu lone star\ni am working on clearing an old txu lone star / gas distribution balance from\n8 / 99 and 9 / 99 . we originally billed txu on nominated quantities and they\nhave shortpaid us due to meter adjustments . these are brokered deals where\nwe sold to txu and purchased from exxonmobil and highland . txu has provided\nmeter support since the deals were on lone star pipeline , however , i am\nunsure how to have volume management reallocate .\nfor example , we originally sold 10 , 000 mmbtu on 8 / 3 / 99 to txu and purchased\n1 , 200 mmbtu from highland energy and 8 , 800 mmbtu from exxonmobil . txu shows\nthe total amount of gas on 8 / 3 / 99 was 9 , 240 mmbtu . how should the purchase\npiece be allocated between exxonmobil and highland since this was a brokered\ndeal ?\naugust 1999 :\nsale\ntxu electric & gas deals # 104975 , 104256 , 104738\nlone star gas co . deal # 101985\npurchase\nexxonmobil corp . deal # 101522\nhighland energy co . deal # 101530\nseptember 1999 :\nsale\ntxu electric & gas deal # 109046\npurchase\nexxonmobil corp . deals # 101522 , 108564\nhighland energy co . deals # 101530 , 108146\nplease let me know if i need to speak with someone else about this . thanks\nfor your help .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.560+0000", "entityId": 3666, "properties": {"text": "Subject: tenaska iv 10 / 00\nwe have actuals . the larger of the two volumes is 1 , 395 , 000 , which is\n45 , 000 / day , so the demand rate in deal 514353 is fine . i am having a\nproblem , though , with the way it is coming to settlements . it is showing up\nwith a jan 2003 delivery date . i think the demand fee needs to be on 10 / 1\nonly . right now , it is on a line with a date of 10 / 1 / 00 to 12 / 31 / 36 . i\nthink this is confusing the system some how . also , we still need the\npurchase deal for tenaska iv . it should be for a demand fee of $ 2 , 571 , 135 . 73\nbooked to the cleburne desk . we actually owe $ 1 , 798 , 389 . 73 , but i need to\nnet the tenaska iv sales with the purchase to clear those receivables . james\nis calling me every day asking for an update . do you know when we will be\nable to get this in the system ? i have attached my spreadsheet so you can\nsee the numbers .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.564+0000", "entityId": 3667, "properties": {"text": "Subject: hpl noms . for dec . 8 , 2000\n( see attached file : hplnl 208 . xls )\n- hplnl 208 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.570+0000", "entityId": 3668, "properties": {"text": "Subject: enron / hpl actuals for december 6 , 2000\nteco tap 29 . 167 / hpl iferc\nls hpl lsk ic 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.575+0000", "entityId": 3669, "properties": {"text": "Subject: re : spinnaker - supply verification 11958 su - october 2000\nproduction\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 12 / 07 / 2000 10 : 12\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick moshou @ enron\n12 / 07 / 2000 10 : 13 am\nto : christy sweeney / hou / ect @ ect , gary bryan / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , robert cotten / hou / ect @ ect\nsubject : re : spinnaker - supply verification 11958 su - october 2000\nproduction\nchristy ,\nper our conversation i have attached below the updated version of the\nreallocation difference . texas general land received 21 . 8945 % of the total\nvolume which was 55 , 645 mmbtu . after updating the spreadsheet spinnaker will\nowe hpl approximately $ 36 , 000 .\nthanks ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.579+0000", "entityId": 3670, "properties": {"text": "Subject: spinnaker - supply verification 11958 su - october 2000 production\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 12 / 07 / 2000 09 : 49\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristy sweeney\n12 / 07 / 2000 09 : 38 am\nto : gary bryan / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , nick moshou / corp / enron @ enron , robert\ncotten / hou / ect @ ect\nsubject : spinnaker - supply verification 11958 su - october 2000 production\ngary ,\nwhen spinnaker got paid , the volumes inadvertently got averaged over the\nmonth . since spinnaker was paid gas\ndaily pricing for the month , there is going to be a dollar discrepancy when\nthe volumes are re - sent over on the actual\nday of flow . in my calculations ( using gas daily less $ . 21 as the price ) we\nare going to owe spinnaker an additional\n$ 220 , 398 . 57 .\none issue that needs to be addressed is this : should the additional money go\ndirectly to spinnaker since they are allocating\nout october 2000 production payments to ranger and houston exploration ?\nattached is a spreadsheet showing where i came up with the extra money owed :\nthank you all ! !\nchristy\n39050\nps this does not address the issue between the onshore and offshore meter ,\nthis is just addressing the redistribution\nof volumes for the month of october .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.584+0000", "entityId": 3671, "properties": {"text": "Subject: tenaska iv 10 / 00\nwe have actuals . the larger of the two volumes is 1 , 395 , 000 , which is\n45 , 000 / day , so the demand rate in deal 514353 is fine . i am having a\nproblem , though , with the way it is coming to settlements . it is showing up\nwith a jan 2003 delivery date . i think the demand fee needs to be on 10 / 1\nonly . right now , it is on a line with a date of 10 / 1 / 00 to 12 / 31 / 36 . i\nthink this is confusing the system some how . also , we still need the\npurchase deal for tenaska iv . it should be for a demand fee of $ 2 , 571 , 135 . 73\nbooked to the cleburne desk . we actually owe $ 1 , 798 , 389 . 73 , but i need to\nnet the tenaska iv sales with the purchase to clear those receivables . james\nis calling me every day asking for an update . do you know when we will be\nable to get this in the system ? i have attached my spreadsheet so you can\nsee the numbers .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.589+0000", "entityId": 3672, "properties": {"text": "Subject: re : tenaska iv 10 / 00\ni don ' t see anything in path manager . mark is out today . do you have a new\ndeal number for the purchase ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.594+0000", "entityId": 3673, "properties": {"text": "Subject: enron / hpl actuals for december 7 , 2000\nteco tap 10 . 000 / enron ; 15 . 208 / hpl iferc ; 50 . 625 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.598+0000", "entityId": 3674, "properties": {"text": "Subject: hpl nom for december 9 , 2000\n( see attached file : hplnl 209 . xls )\n- hplnl 209 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.602+0000", "entityId": 3675, "properties": {"text": "Subject: re : tenaska iv 10 / 00\ni don ' t see anything in path manager . mark is out today . do you have a new\ndeal number for the purchase ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.606+0000", "entityId": 3676, "properties": {"text": "Subject: christmas lunch - texas logistics\nthe texas logistics desk has reservation at the stables at main and\ngreenbriar for wed . the 13 th at 11 : 45 am for our christmas luncheon . we are\nplanning on having a christmas gift fight at some point during the lunch , so ,\nplease plan on bringing a present . . . . net present value of $ 10 . 00 . this is\nalot of fun , so i hope to see everyone there . we will arrange some\ncarpooling on tuesday or wednesday am ( if you can take four or more with you ,\nplease let me know ) .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.611+0000", "entityId": 3677, "properties": {"text": "Subject: aquila header - 12 / 12 / 00 flow day\nthis is to confirm that houston pipe line will pay the aquila storage and\ntransportation . 16 / mmbtu for 50 , 000 mmbtu ' s . hpl will deliver the gas on\nhpl / aquila to be delivered to opl / aquila for 12 / 12 / 00 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.616+0000", "entityId": 3678, "properties": {"text": "Subject: re : aquila header - 12 / 12 / 00 flow day\nthanks , elsa ! also i cannot find where enron or hpl has ever executed a base\nagreement with the exchange center so i will get one to you for review .\nthanks , cooker\n- - - - - original message - - - - -\nfrom : elsa . villarreal @ enron . com [ mailto : elsa . villarreal @ enron . com ]\nsent : monday , december 11 , 2000 11 : 32 am\nto : mcook @ utilicorp . com\ncc : daren . j . farmer @ enron . com\nsubject : aquila header - 12 / 12 / 00 flow day\nthis is to confirm that houston pipe line will pay the aquila storage and\ntransportation . 16 / mmbtu for 50 , 000 mmbtu ' s . hpl will deliver the gas on\nhpl / aquila to be delivered to opl / aquila for 12 / 12 / 00 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.621+0000", "entityId": 3679, "properties": {"text": "Subject: invitation to dinner\nmusic can be started by clicking on the sound icon .\nto stop music , right click and end show : ) heather", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.625+0000", "entityId": 3680, "properties": {"text": "Subject: 10 / 2000 - days 6 and 19 ( 98 - 0439 )\nthe above referenced days have been placed on strangers gas due to ( i guess )\nthe meter not being turned off in time . the day prior to each of these days\nthat are assessed to strangers gas , the only active k is the hpl 216 .\ncan these deals be rolled to cover these couple of days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.632+0000", "entityId": 3681, "properties": {"text": "Subject: hpl meter # 980074 bammel hpl d / p to transco\ndaren\nduring the period of 1 / 1 / 99 to 9 / 30 / 2000 , the above meter has recorded flow\non the following days :\ndays mmbtus\n11 / 12 / 99 ( 58 )\n12 / 23 / 99 ( 133 )\n2 / 1 / 00 ( 463 )\n2 / 2 / 00 ( 463 )\n2 / 3 / 00 ( 463 )\n2 / 4 / 00 ( 463 )\n2 / 5 / 00 ( 463 )\n2 / 6 / 00 ( 463 )\n2 / 7 / 00 ( 463 )\n2 / 8 / 00 ( 463 )\n2 / 9 / 00 ( 463 )\n2 / 10 / 00 ( 463 )\n2 / 11 / 00 ( 463 )\n2 / 12 / 00 ( 463 )\n2 / 13 / 00 ( 463 )\n2 / 14 / 00 ( 463 )\n2 / 15 / 00 ( 464 )\n2 / 16 / 00 ( 463 )\n2 / 17 / 00 ( 463 )\n2 / 18 / 00 ( 463 )\n2 / 19 / 00 ( 463 )\n2 / 20 / 00 ( 463 )\n2 / 21 / 00 ( 463 )\n2 / 22 / 00 ( 463 )\n2 / 23 / 00 ( 463 )\n2 / 24 / 00 ( 463 )\n2 / 25 / 00 ( 463 )\n2 / 26 / 00 ( 463 )\n2 / 27 / 00 ( 463 )\n2 / 28 / 00 ( 463 )\n2 / 29 / 00 ( 464 )\n6 / 28 / 00 78\n9 / 14 / 00 499\n( 13 , 043 )\ncurrently , these volumes are being booked to hpl strangers gas contract .\nlogistics needs approval to writeoff these volumes to unaccounted for gas .\nif you have any questions , please contact aimee lannou @ x - 30506 .\nthanks , clem\nps :\napproval to writeoff the volumes to unaccounted for gas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.636+0000", "entityId": 3682, "properties": {"text": "Subject: fw : box under the bed\n- - - - - original message - - - - -\nfrom : carol covington\nsent : monday , december 11 , 2000 12 : 46 pm\nto : betty carroll ; david heineke ; george hurst ; glenn stamps ; jim\nwallis ; ricky stewart ; tammy kelley ; ' cacklecc @ aol . com '\nsubject : fw : box under the bed\n- - - - - original message - - - - -\nfrom : julie wright [ smtp : julie @ rpcga . com ]\nsent : monday , december 11 , 2000 12 : 40 pm\nto : candy grant ; carol covington ; faye click ; jim love\nsubject : box under the bed\nsubject : box under the bed\n> box under the bed\n>\n> when bill and hillary first got married bill said , \" i am\nputting a box\nunder\n> the bed . you must promise never to look in it . \" in all\ntheir 30\nyears of\n> marriage hillary never looked .\n>\n> however , on the afternoon of their 30 th anniversary ,\ncuriosity\ngot the\nbest\n> of her and she lifted the lid and peeked inside . in the box\nwere 3 empty\n> beer cans and $ 81 , 874 . 25 in cash .\n>\n> she closed the box and put it back under the bed . now that\nshe\nknew what\n> was in the box , she was doubly curious as to why . that\nevening\nthey were\nout\n> for a special dinner . after dinner hillary could no\nlonger\ncontain her\n> curiosity and she confessed , saying , \" i am so sorry . for\nall\nthese years i\n> kept my promise and never looked into the box under our\nbed .\nhowever ,\n> today the temptation was too much and i gave in . but now i\nneed to know ,\n> why do you keep the cans in the box ? \"\n>\n> bill thought for a while and said , \" i guess after all these\nyears you\n> deserve to know the truth . whenever i was unfaithful to you\ni\nput an empty\n> beer can in the box under the bed to remind myself not to\ndo it\nagain . \"\n>\n> hillary was shocked , but said , \" hmmm , jennifer , paula and\nmonica . i am\n> very disappointed and saddened but temptation does happen\nand\ni guess\nthat\n> 3\n> times is not that bad considering the years . \"\n>\n> they hugged and made their peace .\n>\n> a little while later hillary asked bill , \" so why do you\nhave\nall that\nmoney\n> in the box ? \"\n>\n> bill answered , \" well , whenever the box filled up with empty\ncans , i took\n> them to the recycling center and redeemed them for cash . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.644+0000", "entityId": 3683, "properties": {"text": "Subject: hpl nom for december 12 , 2000\n( see attached file : hplnl 212 . xls )\n- hplnl 212 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.651+0000", "entityId": 3684, "properties": {"text": "Subject: enron / hpl actuals for december 8 - 10 , 2000\ndecember 8 , 2000\nteco tap 120 . 000 / hpl gas daily ; 29 . 583 / enron\nls hpl lsk ic 20 . 000 / enron\ndecember 9 , 2000\nteco tap 120 . 000 / hpl gas daily ; 30 . 000 / enron\ndecember 10 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.657+0000", "entityId": 3685, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.661+0000", "entityId": 3686, "properties": {"text": "Subject: nov 00\ndaren - i have flow at one meter with no nom in november and overflow on dec .\n1 .\nmeter last deal # last month of activity counterparty\n1351 274772 oct 00 williams terminals holdings\n1603 380664 nov 00 hilcorp energy ( overflow from nov )\nplease let me know if you create a deal for meter 1351 and if you extend the\ndeal for meter 1603 .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.666+0000", "entityId": 3687, "properties": {"text": "Subject: meter 8741 / 1587 nov 00\ndaren ,\ni need a deal set up for nov 00 . per gary hanks , gas is taken from south\ntexas and put into midtex pipeline at dewville and taken out at sheridan -\nhpl mtr 8741 / midtex mtr 1587 . let me know if you need further information .\nthanks\nthu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.670+0000", "entityId": 3688, "properties": {"text": "Subject: calpine daily gas nomination\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.674+0000", "entityId": 3689, "properties": {"text": "Subject: re : hpl meter # 980074 bammel hpl d / p to transco\ndaren - what happened in feb . was that transco had allocated a different\namount other than our measurement . i had been working with fred on getting\nsome allocations resolved for several different months . transco told us they\nwould not go back and reallocate due to the statute of limitations ( 6\nmonths ) . february had a significant amount not allocated . we just need a\ndeal set up so we can write these volumes off . let me know if you have any\nmore questions .\naim\nclem cernosek\n12 / 12 / 2000 01 : 09 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : hpl meter # 980074 bammel hpl d / p to transco\nplease response .\nthanks , clem\n- - - - - - - - - - - - - - - - - - - - - - forwarded by clem cernosek / hou / ect on 12 / 12 / 2000 01 : 13\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n12 / 12 / 2000 12 : 35 pm\nto : clem cernosek / hou / ect @ ect\ncc :\nsubject : re : hpl meter # 980074 bammel hpl d / p to transco\nwhat was going on in feb ?\nd\nclem cernosek\n12 / 11 / 2000 04 : 27 pm\nto : daren j farmer / hou / ect @ ect\ncc : aimee lannou / hou / ect @ ect\nsubject : hpl meter # 980074 bammel hpl d / p to transco\ndaren\nduring the period of 1 / 1 / 99 to 9 / 30 / 2000 , the above meter has recorded flow\non the following days :\ndays mmbtus\n11 / 12 / 99 ( 58 )\n12 / 23 / 99 ( 133 )\n2 / 1 / 00 ( 463 )\n2 / 2 / 00 ( 463 )\n2 / 3 / 00 ( 463 )\n2 / 4 / 00 ( 463 )\n2 / 5 / 00 ( 463 )\n2 / 6 / 00 ( 463 )\n2 / 7 / 00 ( 463 )\n2 / 8 / 00 ( 463 )\n2 / 9 / 00 ( 463 )\n2 / 10 / 00 ( 463 )\n2 / 11 / 00 ( 463 )\n2 / 12 / 00 ( 463 )\n2 / 13 / 00 ( 463 )\n2 / 14 / 00 ( 463 )\n2 / 15 / 00 ( 464 )\n2 / 16 / 00 ( 463 )\n2 / 17 / 00 ( 463 )\n2 / 18 / 00 ( 463 )\n2 / 19 / 00 ( 463 )\n2 / 20 / 00 ( 463 )\n2 / 21 / 00 ( 463 )\n2 / 22 / 00 ( 463 )\n2 / 23 / 00 ( 463 )\n2 / 24 / 00 ( 463 )\n2 / 25 / 00 ( 463 )\n2 / 26 / 00 ( 463 )\n2 / 27 / 00 ( 463 )\n2 / 28 / 00 ( 463 )\n2 / 29 / 00 ( 464 )\n6 / 28 / 00 78\n9 / 14 / 00 499\n( 13 , 043 )\ncurrently , these volumes are being booked to hpl strangers gas contract .\nlogistics needs approval to writeoff these volumes to unaccounted for gas .\nif you have any questions , please contact aimee lannou @ x - 30506 .\nthanks , clem\nps :\napproval to writeoff the volumes to unaccounted for gas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.679+0000", "entityId": 3690, "properties": {"text": "Subject: tenaska iv 10 / 00\na revised amount for the purchase demand fee : $ 2 , 405706 . 43 . volumes were not\nactualized correctly .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 12 / 12 / 2000\n04 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 12 / 07 / 2000 09 : 18 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv 10 / 00\nwe have actuals . the larger of the two volumes is 1 , 395 , 000 , which is\n45 , 000 / day , so the demand rate in deal 514353 is fine . i am having a\nproblem , though , with the way it is coming to settlements . it is showing up\nwith a jan 2003 delivery date . i think the demand fee needs to be on 10 / 1\nonly . right now , it is on a line with a date of 10 / 1 / 00 to 12 / 31 / 36 . i\nthink this is confusing the system some how . also , we still need the\npurchase deal for tenaska iv . it should be for a demand fee of $ 2 , 571 , 135 . 73\nbooked to the cleburne desk . we actually owe $ 1 , 798 , 389 . 73 , but i need to\nnet the tenaska iv sales with the purchase to clear those receivables . james\nis calling me every day asking for an update . do you know when we will be\nable to get this in the system ? i have attached my spreadsheet so you can\nsee the numbers .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.683+0000", "entityId": 3691, "properties": {"text": "Subject: fw : how to settle the election\ni second the motion .\n- - - - - original message - - - - -\nfrom : griffin , barbara [ smtp : griffin @ lonestarsteel . com ]\nsent : tuesday , december 12 , 2000 8 : 13 am\nto : alan alvestad ( e - mail ) ; dheineke @ tsteel .\ncom dheineke @ tsteel . com heineke ( e - mail ) ; drew\nkeefe ( e - mail ) ; dustin paul easley ( e - mail ) ; eddie ferguson ( e - mail ) ; kim\nhowry ( e - mail ) ; lvan _ johnson @ hotmail . com\nlvan _ johnson @ hotmail . com com ( e - mail ) ;\nneals @ hump . com neals @ hump . com\ncom ( e - mail ) ; raymond parker ( e - mail ) ; teakerl 065 @ aol\n. com teakerl 065 @ aol . com\ncom ( e - mail )\nsubject : fw : how to settle the election\n- - - - - original message - - - - -\nfrom : portia gordon [ mailto : pgordon @ sfasu . edu ]\nsent : monday , december 11 , 2000 1 : 28 am\nto : griffin @ lonestarsteel . com\ncc : macpres @ ballistic . com\nsubject : fw : how to settle the election\n> date : sun , 10 dec 2000 20 : 32 : 53 - 0600\n> from : jack gordon >\n> subject : fw : how to settle the election\n> to : paul jones > , portia gordon > ,\n> randy gordon > , james peel >\n> > >\n> > > subject : how to settle the election\n> > >\n> > >\n> > > > just a funny little email i thought i would\npass on to\n> > > > you . . . ( hope it gives you a laugh ) >\n> > > >\n> > > > how to settle the 2000 presidential election :\n> > > >\n> > > > ok , folks . i ' ve given the people in florida\nplenty of\n> > > > time to get this election finished . now it is\nmy\n> > > > turn :\n> > > >\n> > > > # 1 : al gore becomes president of the united\nstates\n> > > > ( all 49 states ) .\n> > > >\n> > > > # 2 : george w . bush becomes the president of\nthe\n> > > > republic of texas . gore shouldn ' t mind as he\nsaid we\n> > > > were the worst state in the union during the\ncampaign .\n> > > >\n> > > >\n> > > > so what does texas have to survive as a\nrepublic ?\n> > > >\n> > > > - - nasa in houston , texas ( we will control the\nspace\n> > > > industry ) .\n> > > > - - we refine over 85 % of the gasoline in the\nunited\n> > > > states ( that is why houston has problems with\nthe air\n> > > > quality ) .\n> > > > - - defense industry ( we have over 65 % of it ) .\nthe term\n> > > > \" don ' t mess with texas \" , will take on new\nmeaning .\n> > > > - - oil - we can supply all the oil the republic\nof\n> > > > texas will need for the next 300 years .\n> > > > - - natural gas - again we have all we need ( too\nbad about\n> > > > those northern states ) . al gore will figure a\nway to\n> > > > keep tipper and you warm . . . .\n> > > > - - computer industry - we currently lead the\nnation in\n> > > > producing computer chips . a small place named\ntexas\n> > > > industries , dell computer , eds , etc . , etc .\n> > > > - - health centers - we have the largest research\ncenters\n> > > > for cancer research , the best burn centers ,\nand other\n> > > > large health planning centers .\n> > > > - - we have enough colleges to keep us going :\ntexas a & m ,\n> > > > ut , rice , university of houston , smu , baylor ,\nunt ,\n> > > > texas women ' s university , etc .\n> > > > - - we have a ready supply of workers ( just open\nthe\n> > > > border when we need some more ) and our friends\nacross\n> > > > the border will pour in by the thousands .\n> > > > - - we have control of the paper industry ,\nplastics ,\n> > > > insurance , etc .\n> > > >\n> > > > this just names a few of the items that will\nkeep the\n> > > > republic of texas afloat .\n> > > >\n> > > > now to the rest of the united states under\npresident\n> > > > gore :\n> > > >\n> > > > - - since you won ' t have the refineries to get\ngas for\n> > > > your cars , only president gore will be able to\ndrive\n> > > > around in his suv which gets him about 9 miles\nper\n> > > > gallon . the rest of the united states will\nhave to\n> > > > walk or ride bikes .\n> > > > - - you won ' t have any tv as the space center in\nhouston\n> > > > will cut off your communications .\n> > > > - - you won ' t have any natural gas to heat your\nhomes\n> > > > but since al ' s promised global warming , i ' m\nsure you\n> > > > won ' t get cold !\n> > > > - - you won ' t need our computer chips since you\nwon ' t\n> > > > have electricity to power the computers .\n> > > >\n> > > > so don ' t worry about us down here in texas .\nwe will\n> > > > be ok !\n> > > >\n> > > >\n> > >\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.688+0000", "entityId": 3692, "properties": {"text": "Subject: christmas tree farm pictures\nthanks ,\nram tackett , ( mailto : rtackett @ abacustech . net )\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\nvoice : ( 281 ) 651 - 7106\nfax : 1 + ( 281 ) 528 - 8636 ( note 1 + w / in houston )\nweb : http : / / www . abacustech . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.693+0000", "entityId": 3693, "properties": {"text": "Subject: bammel children ' s christmas program pictures\nthanks ,\nram tackett , ( mailto : rtackett @ abacustech . net )\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\nvoice : ( 281 ) 651 - 7106\nfax : 1 + ( 281 ) 528 - 8636 ( note 1 + w / in houston )\nweb : http : / / www . abacustech . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.697+0000", "entityId": 3694, "properties": {"text": "Subject: hpl nom for december 13 , 2000\n( see attached file : hplnl 213 . xls )\n- hplnl 213 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.701+0000", "entityId": 3695, "properties": {"text": "Subject: enron / hpl actuals for december 11 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.706+0000", "entityId": 3696, "properties": {"text": "Subject: tenaska iv 10 / 00\na revised amount for the purchase demand fee : $ 2 , 405706 . 43 . volumes were not\nactualized correctly .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 12 / 12 / 2000\n04 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 12 / 07 / 2000 09 : 18 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv 10 / 00\nwe have actuals . the larger of the two volumes is 1 , 395 , 000 , which is\n45 , 000 / day , so the demand rate in deal 514353 is fine . i am having a\nproblem , though , with the way it is coming to settlements . it is showing up\nwith a jan 2003 delivery date . i think the demand fee needs to be on 10 / 1\nonly . right now , it is on a line with a date of 10 / 1 / 00 to 12 / 31 / 36 . i\nthink this is confusing the system some how . also , we still need the\npurchase deal for tenaska iv . it should be for a demand fee of $ 2 , 571 , 135 . 73\nbooked to the cleburne desk . we actually owe $ 1 , 798 , 389 . 73 , but i need to\nnet the tenaska iv sales with the purchase to clear those receivables . james\nis calling me every day asking for an update . do you know when we will be\nable to get this in the system ? i have attached my spreadsheet so you can\nsee the numbers .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.711+0000", "entityId": 3697, "properties": {"text": "Subject: succession plan\nit is my great pleasure to announce that the board has accepted my\nrecommendation to appoint jeff skilling as chief executive officer , effective\nat the time of their next board meeting on february 12 , 2001 . jeff will also\nretain his duties as president and chief operating officer . i will continue\nas chairman of the board and will remain at enron , working with jeff on the\nstrategic direction of the company and our day - to - day global operations .\njeff will assume the role at a time when the company is hitting on all\ncylinders and is positioned for phenomenal growth . he is clearly ready for\nthe job , and after 15 years as ceo of this great company , i \u0001 , m ready for a\nsomewhat different role .\nour succession plan has been clear for some time . this has afforded jeff and\nme the freedom to combine our strengths toward building a company that\ncontinues to exceed everyone \u0001 , s expectations , including our own . we look\nforward to furthering that relationship as jeff expands his role .\nthere are no plans for any other changes in our management team nor broad\nshifts in strategy and direction .\nplease join me in congratulating jeff . i look forward to a great 2001 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.717+0000", "entityId": 3698, "properties": {"text": "Subject: force majeure situation - jennings plant\nthe volume was down to 1238 because of prev adjustments .\ncarlos\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carlos j rodriguez / hou / ect on 12 / 13 / 2000\n02 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbeverly beaty\n12 / 13 / 2000 10 : 06 am\nto : carlos j rodriguez / hou / ect @ ect\ncc :\nsubject : force majeure situation - jennings plant\nfyi from devon\nbev\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 12 / 13 / 2000 09 : 04\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : gary daniel\n12 / 13 / 2000 10 : 02 am\nto : beverly . beaty @ enron . com\ncc : cynthia . cantrell @ dvn . com\nsubject : force majeure situation - jennings plant\nbeverly :\ncould you please forward this to carlos ? i am at home\ntoday and do not have his e - mail .\nthanks .\ncarlos rodriguez\nenron\nvia e - mail\ndear carlos :\ndue to an electrical shortage at the jennings plant ,\nwhich shut the plant down , we are in a force majeure\nsituation effective immediately . the plant expects to\nbe back up tomorrow , december 14 . we will advise you\ntomorrow of the situation .\nwe are reducing our nomination to 0 effective today ,\ndecember 13 . the nomination was 1769 .\nplease call me if you have any questions .\nthanks .\nevelyn daniel\ndevon energy\n( 405 ) 552 - 4585 ( work )\n( 405 ) 391 - 9398", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.722+0000", "entityId": 3699, "properties": {"text": "Subject: re : hpl discrepancy\nis this enerfin gas we delivered ? what are the deal numbers in sitara and\nhow much volume are we talking about ?\ndarren , isn ' t there an oba set up in enerfin that can handle small volumes ?\nthanks\nfrom : meredith mitchell 12 / 12 / 2000 08 : 34 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : hpl discrepancy\nvictor ,\nwhat ' s your opinion on this ? can we go back and add days to prior month\ndeals ? do we use the same price ? if we do decide to do this , we will need\nto get tetco to agree to do a retro for those days as well .\njackie young\n12 / 11 / 2000 03 : 53 pm\nto : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : 10 / 2000 - days 6 and 19 ( 98 - 0439 )\nthe above referenced days have been placed on strangers gas due to ( i guess )\nthe meter not being turned off in time . the day prior to each of these days\nthat are assessed to strangers gas , the only active k is the hpl 216 .\ncan these deals be rolled to cover these couple of days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.727+0000", "entityId": 3700, "properties": {"text": "Subject: increase mdq for contract 5910\nsharon ,\ncan you please increase hplc ' s mdq for contract 5910 from 50 , 000 mmbtu ' s to\n100 , 000 mmbtu ' s effective december 13 , 2000 ? i believe lauri allen already\nspoke to you regarding this matter . if any other information is needed\nplease contact me at ext . 3 - 6381 or lauri allen at ext . 3 - 7272 . thank you\nfor your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.732+0000", "entityId": 3701, "properties": {"text": "Subject: re : cannon assignment\ndaren ,\nshould i change the counterparty on this sale , or is that handled by\nmarketing ? also , we may need to look at changing the storage agmt . please\nadvise .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 12 / 14 / 2000 07 : 26\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njulie meyers @ ect\n12 / 13 / 2000 05 : 12 pm\nto : mary poorman / na / enron @ enron , jackie young / hou / ect @ ect , aimee\nlannou / hou / ect @ ect\ncc :\nsubject : re : cannon assignment\nhas the volumes for the deal below been nomd ' yet under the new deal . credit\nis having a cow because they are showing exposure still under cannon . is\nthere a way that we can get this done tomorrow ?\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 12 / 13 / 2000 05 : 05\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njulie meyers\n12 / 12 / 2000 05 : 03 pm\nto : mary poorman / na / enron @ enron , jackie young / hou / ect @ ect , aimee\nlannou / hou / ect @ ect\ncc :\nsubject : re : cannon assignment\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 12 / 12 / 2000 04 : 58\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 12 / 12 / 2000 03 : 29 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : re : cannon assignment\njulie ,\ncannon is not a wellhead producer . the meters below are assigned to the\nfollowing individuals :\nmeter # scheduler\n68 mary poorman\n4132 jackie young\n1040 aimee lannou\n1606 mary poorman\nthese schedulers should be advised of the changes .\nbob\njulie meyers\n12 / 12 / 2000 01 : 49 pm\nto : brant reves / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , kristen j hanson / hou / ect @ ect\nsubject : re : cannon assignment\nnew deal 529753 .\nrobert , please do your magic .\nkris , i ' m not sure who in your group this should go to , this is a sale .\njulie\nbrant reves\n12 / 11 / 2000 12 : 24 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : cannon assignment\nthe trades below were originally executed between hpl and cannon interests\nhouston per terms of a specific master physical agreement . after recieving\nback executed documentation , we are ready to have the trades offically moved\nwithin the various enron capuring systems from cannon to kinder morgan texas\npipeline , inc . per the terms and conditions of the recently executed master\nphysical agreement between hpl and kinder morgan texas pipeline , inc .\nfirst , here are the tag nos . of the trades we wish to have assigned .\nnu 2813\nnao 376\nsecond , several trades are listed within a erms book called : p a m\nthese trades show a 12 - 31 - 00 expiry and their nos . are :\n522284\n830689\n892696\n904035\n904276\ni am not sure what these numbers are . but , could you move them as well .\nthanks for your help .\nbrant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.737+0000", "entityId": 3702, "properties": {"text": "Subject: re : heads - up - tenaska iv partner ltd . - september 2000\ndarren ,\nthanks for the clarification !\nkathy\ndaren j farmer\n12 / 13 / 2000 01 : 07 pm\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : re : heads - up - tenaska iv partner ltd . - september 2000\nwe should not be paying tenaska ' s lone star transport for sep . that should\nbe paid by tenaska iv . we took over the payments with october production .\nd\nkatherine benedict\n12 / 05 / 2000 04 : 44 pm\nto : daren j farmer / hou / ect @ ect , mark mccoy / corp / enron @ enron\ncc : bob fisher / na / enron @ enron\nsubject : heads - up - tenaska iv partner ltd . - september 2000\nhi guys ,\nplease do me and bob fisher in the transport settlements group a huge\nfavor . . . . . . please let us know when the txu / lonestar transport deals for\ntenaska iv texas partners have been entered into path manager ( for september\n2000 ) .\ni am holding the transport invoice from txu / lonestar for september\n2000 . . . . waiting to enter the \" actuals \" into our system for payment .\nthanks ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.742+0000", "entityId": 3703, "properties": {"text": "Subject: re : tenaska iv 10 / 00\nwe have received all of the money from the spot sales for tenaska iv in\noctober 2000 , except for the tenaska iv sale and the $ 0 . 04 fee .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.749+0000", "entityId": 3704, "properties": {"text": "Subject: hpl nom for dec . 14 , 2000\n( see attached file : hplnl 214 . xls )\n- hplnl 214 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.757+0000", "entityId": 3705, "properties": {"text": "Subject: enron / hpl actuals for december 12 , 2000\nteco tap 103 . 125 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.763+0000", "entityId": 3706, "properties": {"text": "Subject: re : heads - up - tenaska iv partner ltd . - september 2000\ndarren ,\nthanks for the clarification !\nkathy\ndaren j farmer\n12 / 13 / 2000 01 : 07 pm\nto : katherine benedict / hou / ect @ ect\ncc :\nsubject : re : heads - up - tenaska iv partner ltd . - september 2000\nwe should not be paying tenaska ' s lone star transport for sep . that should\nbe paid by tenaska iv . we took over the payments with october production .\nd\nkatherine benedict\n12 / 05 / 2000 04 : 44 pm\nto : daren j farmer / hou / ect @ ect , mark mccoy / corp / enron @ enron\ncc : bob fisher / na / enron @ enron\nsubject : heads - up - tenaska iv partner ltd . - september 2000\nhi guys ,\nplease do me and bob fisher in the transport settlements group a huge\nfavor . . . . . . please let us know when the txu / lonestar transport deals for\ntenaska iv texas partners have been entered into path manager ( for september\n2000 ) .\ni am holding the transport invoice from txu / lonestar for september\n2000 . . . . waiting to enter the \" actuals \" into our system for payment .\nthanks ,\nkathy : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.767+0000", "entityId": 3707, "properties": {"text": "Subject: re : tenaska iv 10 / 00\nwe have received all of the money from the spot sales for tenaska iv in\noctober 2000 , except for the tenaska iv sale and the $ 0 . 04 fee .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.772+0000", "entityId": 3708, "properties": {"text": "Subject: re : hpl discrepancy\nhey clem can you help us out with this one ? what are the volumes and deal\ntickets in question for those two days and what is the location ? we\ndelivered to you at centana and enerfin . didn ' t we have that famous\nhpl / tetco oba already set up to handle the small volumes that are leftover\nafter our deliveries to you ? please let us know thanks !\njackie young\n12 / 14 / 2000 08 : 59 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : hpl discrepancy\nvictor ,\ni didn ' t know that this was you ! i just snapped at the name . what ' s up ?\nhere ' s the deal . enerfin has changed the oba ' s effective date again . it now\nis not effective until 12 / 2000 . clem says that it ' s okay but we have to go\nback and change up previous months and have the oba removed and show the\neffective date for 12 / 2000 . clem is the point person on this .\nif need be , come on down and we ' ll talk .\nbye\nenron north america corp .\nfrom : victor lamadrid 12 / 13 / 2000 05 : 39 pm\nto : meredith mitchell / hou / ect @ ect , cynthia franklin / corp / enron @ enron , jackie\nyoung / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc :\nsubject : re : hpl discrepancy\nis this enerfin gas we delivered ? what are the deal numbers in sitara and\nhow much volume are we talking about ?\ndarren , isn ' t there an oba set up in enerfin that can handle small volumes ?\nthanks\nfrom : meredith mitchell 12 / 12 / 2000 08 : 34 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : hpl discrepancy\nvictor ,\nwhat ' s your opinion on this ? can we go back and add days to prior month\ndeals ? do we use the same price ? if we do decide to do this , we will need\nto get tetco to agree to do a retro for those days as well .\njackie young\n12 / 11 / 2000 03 : 53 pm\nto : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : 10 / 2000 - days 6 and 19 ( 98 - 0439 )\nthe above referenced days have been placed on strangers gas due to ( i guess )\nthe meter not being turned off in time . the day prior to each of these days\nthat are assessed to strangers gas , the only active k is the hpl 216 .\ncan these deals be rolled to cover these couple of days ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.776+0000", "entityId": 3709, "properties": {"text": "Subject: re : hpl discrepancy\nrita , please help me with this . i have some questions regarding enerfin .\nwhy are we re - allocating prior month volumes at enerfin after we matched your\noriginal numbers back in october ? can ' t this be fixed in the actualization\nprocess ?\nthe numbers for october between ena - tetco and hpl vary a good bit . are we\nyour only customer at that point and why do we show volumes on days ena had\nno transactions with hpl ? can we simply put zero paths in unify and extend\nour existing deals in sitara with zero volumes and have you guys actualize\nthese small volumes to handle this ? we go round and round at this point\nchanging volumes two , three or more times . call me if you have questions . .\nthanks victor\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 12 / 14 / 2000\n08 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : meredith mitchell on 12 / 14 / 2000 09 : 28 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : hpl discrepancy\nvictor ,\nthe sitara ticket that we were using for the month of october is # 421415 .\ntetco shows that the volumes that hpl was allocated on october 6 th and\noctober 19 th , were 9 dths and 44 dths , respectively . those volumes were\npulled off of our backhaul contract because there was no nomination in\nplace . this is the same problem that we have had over and over with them .\nalso , we just found out on tuesday , that the oba did not go into effect until\ndecember 1 , 2000 . we were originally told that they were putting the oba in\neffect retroactively to november of 1999 . in fact , i thought that hpl had\nmade a lot of retroactive changes in the system to adjust for the oba , do you\nremember that ? hpl told us that ray calles at tetco is the one who decided\nthat the oba would not be effective until december of 2000 . nobody even\ninformed us of this change , i stumbled upon it when researching a november\nissue for alfonso trabulsi and brenda fletcher . in addition to all of this ,\ni received another email , which i will copy below , asking me to go in for the\nmonth of october and adjust all of my estimated volumes in unify to match\nwhat hpl shows that we were allocated . i had been going in all month long\nand matching to their numbers , and we were clean for the deadline at the end\nof the month . i ran the allocation report from tetco for the month of\noctober , and some of hpl ' s numbers were very different from tetco ' s ,\nincluding the two days that i mentioned above . i sent jackie young an email\nback showing her tetco ' s numbers and i haven ' t received a response . i will\ncopy that email below as well , just to catch you up on what ' s been going on .\njackie young\n12 / 12 / 2000 10 : 01 am\nto : cynthia franklin / corp / enron @ enron , meredith mitchell / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : estimated volumes for meter 98 - 0439 for ( 10 / 2000 )\ncynthia / meredith :\nplease find below the estimates for the above referenced meter for 10 / 2000 .\nonce you ' re done placing these estimates on tetco ' s side , can you please\napprise me so that volume mgt . can conclude their business ?\nthanks\n- jackie -\n3 - 9497\nday volumes\n1 39647\n2 40040\n3 39643\n4 39809\n5 39702\n6 18 dec . ( str . gas )\n7\n8\n9\n10\n11 29162\n12 14689\n13 40400\n14 30599\n15 30523\n16 30394\n17 30369\n18 40547\n19 88 dec . ( str . gas )\n20 10126\n21 20167\n22 20208\n23 20502\n24 40408\n25 45721\n26 30978\n27 43142\n28 9667\n29 9536\n30 10290\n31\nfrom : meredith mitchell 12 / 12 / 2000 11 : 37 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : october volumes\nhi jackie ,\ni ran a report from tetco ' s system to show the volumes that enron was\nallocated for the month of october , and some of the volumes are very\ndifferent from the volumes that you show . i copied your numbers below and\ncopied tetco ' s volumes below that ( with the disrepancies in red ) . i was\nwondering if you could double check the 3 rd , 4 th , 11 th , 12 th , 25 th , and 27 th\nto see if you had purchases on those days from a counterparty other than\nenron north america at that meter . it looks like maybe the volumes that you\nshow are the total flow at that meter , but i think that only part of the gas\nwas actually allocated to us . i don ' t mind putting the allocated volumes in\npath manager , but i ' d like to make sure that on the above days , i am only\nputting in the amount that enron was allocated .\nalso , on the 6 th and the 19 th tetco shows exactly half of what you show ,\nwhich i thought was kind of strange . i am going to have to get tetco ' s\npermission to do a retroactive nomination for those two days at the volumes\nyou have requested , before i can put anything in sitara or unify . my manager\nis out of the office and will be back tomorrow , but i would like for him to\ndouble check the deal that we will have to create in sitara for those two\ndays , since we are dealing with a prior month issue .\nday volumes\n1 39647\n2 40040\n3 39643\n4 39809\n5 39702\n6 18 dec . ( str . gas )\n7\n8\n9\n10\n11 29162\n12 14689\n13 40400\n14 30599\n15 30523\n16 30394\n17 30369\n18 40547\n19 88 dec . ( str . gas )\n20 10126\n21 20167\n22 20208\n23 20502\n24 40408\n25 45721\n26 30978\n27 43142\n28 9667\n29 9536\n30 10290\n31\nday volumes\n1 39647\n2 40040\n3 29732\n4 24881\n5 39702\n6 9 dec . ( str . gas )\n7\n8\n9\n10\n11 19441\n12 9793\n13 40400\n14 30599\n15 30523\n16 30394\n17 30369\n18 40547\n19 44 dec . ( str . gas )\n20 10126\n21 20167\n22 20208\n23 20502\n24 40408\n25 25401\n26 30978\n27 30099\n28 9667\n29 9536\n30 10290\n31", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.781+0000", "entityId": 3710, "properties": {"text": "Subject: hpl meter # 985579\ngary :\nhpl received volumes at the above meter during 1 / 1 / 99 thru 6 / 99 . prior to\n1 / 1 / 99 , ena was purchasing some of the volumes from i p petroleum under\ncontract # 016 - 44386 - 102 ; deal # 341832 . this deal expired 12 / 31 / 99 , but the\nvolumes continued to flow and be allocated to i p petroleum by pioneer .\nsince there was no deal to cover these volumes , these volumes were allocated\nto hpl strangers gas contract .\nvolume mgmt had previously requested a deal to cover these volumes from\nsomeone , but never received one .\nhere are the months and volumes that need resolution :\nprod . mth mmbtus\njan . 99 6 , 510\nfeb . 99 6 , 395\nmar . 99 14 , 789\napr . 99 16 , 866\nmay . 99 8 , 415\njun . 99 13 , 858\ntotal 66 , 833\npossible solution :\n1 . need a deal to cover the periods in question , or\n2 . provide authorization to writeoff the volumes . ( print & return original\nto clem cernosek )\napproval to writeoff the volumes to unaccounted for gas loss\nps : my understanding is that neither i p petroleum nor pioneer have\naddressed any issues concerning these volumes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.786+0000", "entityId": 3711, "properties": {"text": "Subject: hpl meter # 980417 hpl / kmid - seven oaks\ndaren :\non 11 / 30 / 99 , the above meter has recorded flow of 26 mmbtus . there were no\ndeals at this meter during november 1999 or december 1999 . logistics needs\napproval to writeoff these volumes to unaccounted for gas . please print ,\nsign , and return original to clem cernosek .\napproval to writeoff the volumes to unaccounted for gas loss\nthanks ,\nclem cernosek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.791+0000", "entityId": 3712, "properties": {"text": "Subject: hpl meter # 985369 taft plant resid arco hpl\ndaren :\non 4 / 18 / 99 , the above meter recorded flow of 101 mmbtus . there were no deals\nat this meter during march , april , or may 1999 . logistics needs approval\nto writeoff these volumes to unaccounted for gas . please print , sign , and\nreturn original to clem cernosek .\napproval to writeoff the volumes to unaccounted for gas loss\nthanks ,\nclem cernosek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.795+0000", "entityId": 3713, "properties": {"text": "Subject: re : tenaska iv 10 / 00\nmegan , james , and i met regarding the payment due tenaska iv . i am ok with\npaying what is in the system right now . however , i would like for all of us\nto meet today regarding some accounting issues , what is everyone ' s\navailability for this afternoon ?\nplease let me know asap .\ndaren j farmer @ ect\n12 / 12 / 2000 04 : 48 pm\nto : greg whiting / corp / enron @ enron , troy klussmann / hou / ect @ ect , james\narmstrong / hou / ect @ ect , megan parker / corp / enron @ enron , jim\npond / corp / enron @ enron\ncc :\nsubject : tenaska iv 10 / 00\nin most cases , ena will be a net buyer from tenaska iv for activity related\nto the cleburne plant . however , for october 2000 , the plant was down the\nmajority of the month and ena sold off the supply , resulting in ena owing\nmoney to tenaska iv .\ni have created deal 529856 with a demand of $ 1 , 798 , 389 . 73 , which is the\ncalculated amount of income on the cleburne desk . ( please see the attached\nschedule . ) we need to pass this income on to tenaska iv . do we need to pay\nthis amount ( wire from ena to tenaska iv ) or is there another way to do\nthis ? this is the case for october 2000 and could possibly happen again in\nthe future .\ngreg , troy , jim - please let me know what you think about settling this .\nmegan - don ' t pay the amount until we here from the greg , troy and jim .\nalso , make sure that we have received dollars from the spot sales before we\nreimburse tenaska iv .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 12 / 12 / 2000\n04 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 12 / 07 / 2000 09 : 18 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv 10 / 00\nwe have actuals . the larger of the two volumes is 1 , 395 , 000 , which is\n45 , 000 / day , so the demand rate in deal 514353 is fine . i am having a\nproblem , though , with the way it is coming to settlements . it is showing up\nwith a jan 2003 delivery date . i think the demand fee needs to be on 10 / 1\nonly . right now , it is on a line with a date of 10 / 1 / 00 to 12 / 31 / 36 . i\nthink this is confusing the system some how . also , we still need the\npurchase deal for tenaska iv . it should be for a demand fee of $ 2 , 571 , 135 . 73\nbooked to the cleburne desk . we actually owe $ 1 , 798 , 389 . 73 , but i need to\nnet the tenaska iv sales with the purchase to clear those receivables . james\nis calling me every day asking for an update . do you know when we will be\nable to get this in the system ? i have attached my spreadsheet so you can\nsee the numbers .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.800+0000", "entityId": 3714, "properties": {"text": "Subject: re : tenaska iv 10 / 00\ndarren ,\nthe demand fee is probably the best solution . we can use it to create a\nrecieivable / payable with tenaska , depending on which way the calculation goes\neach month . how are pma ' s to be handled once the fee been calculated and the\ndeal put in the system ?\nattatched is a schedule detailing what is on the gl for cleburne as of\ntoday . some of this info will change by the end of the month . as you can\nsee , there are some discrepancies between megan ' s calculations and what is on\nthe general ledger . ua 4 is also on my schedule . unless the buys / sells are\nvolumetrically balanced , we book an entry to balance the desk . this will\nchange the calculation of what is due from / to tenaska . should we be\nrecording a ua 4 entry for cleburne ? is it addressed in the agreement with\ntenaska ?\ndaren j farmer @ ect\n12 / 12 / 2000 04 : 48 pm\nto : greg whiting / corp / enron @ enron , troy klussmann / hou / ect @ ect , james\narmstrong / hou / ect @ ect , megan parker / corp / enron @ enron , jim\npond / corp / enron @ enron\ncc :\nsubject : tenaska iv 10 / 00\nin most cases , ena will be a net buyer from tenaska iv for activity related\nto the cleburne plant . however , for october 2000 , the plant was down the\nmajority of the month and ena sold off the supply , resulting in ena owing\nmoney to tenaska iv .\ni have created deal 529856 with a demand of $ 1 , 798 , 389 . 73 , which is the\ncalculated amount of income on the cleburne desk . ( please see the attached\nschedule . ) we need to pass this income on to tenaska iv . do we need to pay\nthis amount ( wire from ena to tenaska iv ) or is there another way to do\nthis ? this is the case for october 2000 and could possibly happen again in\nthe future .\ngreg , troy , jim - please let me know what you think about settling this .\nmegan - don ' t pay the amount until we here from the greg , troy and jim .\nalso , make sure that we have received dollars from the spot sales before we\nreimburse tenaska iv .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 12 / 12 / 2000\n04 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : megan parker @ enron 12 / 07 / 2000 09 : 18 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv 10 / 00\nwe have actuals . the larger of the two volumes is 1 , 395 , 000 , which is\n45 , 000 / day , so the demand rate in deal 514353 is fine . i am having a\nproblem , though , with the way it is coming to settlements . it is showing up\nwith a jan 2003 delivery date . i think the demand fee needs to be on 10 / 1\nonly . right now , it is on a line with a date of 10 / 1 / 00 to 12 / 31 / 36 . i\nthink this is confusing the system some how . also , we still need the\npurchase deal for tenaska iv . it should be for a demand fee of $ 2 , 571 , 135 . 73\nbooked to the cleburne desk . we actually owe $ 1 , 798 , 389 . 73 , but i need to\nnet the tenaska iv sales with the purchase to clear those receivables . james\nis calling me every day asking for an update . do you know when we will be\nable to get this in the system ? i have attached my spreadsheet so you can\nsee the numbers .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.804+0000", "entityId": 3715, "properties": {"text": "Subject: hpl nom for dec . 15 , 2000\n( see attached file : hplnl 215 . xls )\n- hplnl 215 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.809+0000", "entityId": 3716, "properties": {"text": "Subject: enron / hpl actuals for december 13 , 2000\nteco tap 37 . 500 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.814+0000", "entityId": 3717, "properties": {"text": "Subject: gulf plains into tennessee for november\ni received a call from the plant , apparently , they shorted us 60 dth on the\n3 rd of november . however , someone opened the valve on the 20 th and they\nflowed 69 dth into the pipe without a nomination . the plant is asking if we\nwill phone tennessee and accept allocation of this volume . i realize that it\nis really not alot of net difference volumetrically , but , the market has been\nvolatile and prices have risen significantly since the nov . 3 rd . i also\ndon ' t know what the market situation is like on tgpl , would we be creating an\nimbalance on a contract , is there a market to allocate to , are there any\npotential penalties ? i would like to resolve this today , if at all possible .\nplease advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.818+0000", "entityId": 3718, "properties": {"text": "Subject: re : enerfin meter 980439 for 10 / 00\njackie , talk to darren about this . the deal you reference is an hpl deal with\ndynegy and i don ' t have access to it . i ' m on the east desk . yesterday i\nextended the deal 421415 for the 6 th and 19 th and meredith inserted a path in\nunify - tetco to cover the small overflow volume between hpl and ena . the\nena / hpl piece is done . the piece between hpl and dynegy is what you need\ninserted . thanks\njackie young\n12 / 15 / 2000 11 : 32 am\nto : sherlyn schumack / hou / ect @ ect\ncc : victor lamadrid / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\nsherlyn , i ' ve placed the correct volumes for days 6 and 9 for ena . i ' ll have\nthe deal extended for dynegy and let you know when it ' s done .\nvictor , can you extend the deal 422516 for days 6 and 9 please ? thanks . oh\nand by the way , i had mistaken you for someone else when i sent you the\ne - mail on yesterday . sorry . i thought that i knew you . anyway , please\nadvise when you ' ve extended the deal so that sherlyn can create an accounting\narrangement .\nthanks\n- jackie -\n3 - 9497\nto : jackie young / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\ni don ' t want to tell you to add any contracts , because i am not sure about\nthat . i am just saying if you look at ray ' s schedule there are 2 deals out\nthere , one is a purchase from ena and the other a purchase from dynegy . the\ntrack id i gave you was for ena . you cannot allocate the dynegy piece\nuntil i give you a track id . i cannot give you a track id until the deal is\nextended for days 10 / 6 and 10 / 19 .\njackie young\n12 / 15 / 2000 10 : 51 am\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : re : enerfin meter 980439 for 10 / 00\narre you saying that for both days that two ( 2 ) ena contracts should be\nplaced at the meter for days 6 and 19 and then allocating half of the the\ntotal volume to each contract ?\nto : jackie young / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\njackie ,\nyou did not allocate this according to ray ' s schedule . the track id i gave\nyou was only for the purchase from ena . you need to extend the deal for the\npurchase from dynegy . you put all of the volume on these 2 days on ena ,\nthat is not what is on ray ' s schedule , so we are still out on the\ninterconnect report .\njackie young\n12 / 15 / 2000 10 : 30 am\nto : sherlyn schumack / hou / ect @ ect\ncc : alfonso trabulsi / hou / ect @ ect , rita wynne / hou / ect @ ect , gregg\nlenart / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\naccounting arrangement has been placed . meter has been reallocated .\nthanks and let me know if you need anything else .\n- jackie -\n3 - 9497\nfrom : sherlyn schumack 12 / 15 / 2000 10 : 00 am\nto : jackie young / hou / ect @ ect , alfonso trabulsi / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , gregg lenart / hou / ect @ ect\nsubject : enerfin meter 980439 for 10 / 00\njackie ,\nyour allocation is correct with the exception of days 10 / 6 and 10 / 19 where\nstrangers gas is allocated . i have created an accounting arrangement for\nthese days and the new track id for ena is 240384 . please allocate the ena\nportion according to rays schedule for these 2 days . deal 422516 ( purchase\nfrom dynegy ) needs to be extended for these 2 days so i can do an accounting\narrangement . alfonso i need for you to allocate your meter daily , because\nwe have tiered pricing this month .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.823+0000", "entityId": 3719, "properties": {"text": "Subject: hpl nom for dec . 16 - 18 , 2000\nsorry , one more time . the attached file should be correct .\n( see attached file : hplnl 216 . xls )\n- hplnl 216 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.828+0000", "entityId": 3720, "properties": {"text": "Subject: hpl nom for dec . 16 - 18 , 2000\nprevious nomination had dec . 15 , 2000 , in the subject line , but the attached\nfile had the correct effective dates .\n( see attached file : hplnl 216 . xls )\n- hplnl 216 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.833+0000", "entityId": 3721, "properties": {"text": "Subject: hpl nom for dec . 15 , 2000\n( see attached file : hplnl 216 . xls )\n- hplnl 216 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.837+0000", "entityId": 3722, "properties": {"text": "Subject: enron / hpl actuals for december 14 , 2000\nteco tap 78 . 125 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.842+0000", "entityId": 3723, "properties": {"text": "Subject: union carbide - safety net gas\nunion carbide stopped taking 3 , 000 / d of the safety net gas at 4 am on\ndecember 14 . . . . so at this time they are only taking 9 , 000 / d at texas city", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.846+0000", "entityId": 3724, "properties": {"text": "Subject: hpl meter # 986290 indian hills plant - tejas\ndaren :\non 9 / 15 / 99 , the above meter recorded flow of 2 , 476 mmbtus . there was deal\n# 113050 at the meter for 9 / 14 / 99 , but it expired on 9 / 14 / 99 . logistics\nneeds either ( 1 ) deal # 113050 extended to cover 9 / 15 / 99 ; ( 2 ) a new deal to\nrecord these volumes ; or ( 3 ) logistics needs approval to writeoff these\nvolumes to unaccounted for gas . ( please print , sign , and return original to\nclem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to writeoff the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.851+0000", "entityId": 3725, "properties": {"text": "Subject: deliveries into channel at gulf plains\nduke is calling regarding the volumes we are delivering into channel at the\ngulf plains plant . apparently , we are half of the volumes delivered at the\nmeter and channel is pressuring the plant back . duke has asked if we will\ntake the additional gas which is \" undeliverable \" , i think we may need to\nmove our markets to another meter , ie . hpl / agua . please advise .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.857+0000", "entityId": 3726, "properties": {"text": "Subject: enron / hpl nom for december 19 , 2000\n( see attached file : hplnl 219 . xls )\n- hplnl 219 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.866+0000", "entityId": 3727, "properties": {"text": "Subject: enron / hpl actuals for december 15 - 17 , 2000\ndecember 15 , 2000\nteco tap 106 . 250 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron\ndecember 16 , 2000\nteco tap 5 . 000 / enron ; 120 . 000 / hpl gas daily\ndecember 17 , 2000\nteco tap 2 . 917 / enron ; 120 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.872+0000", "entityId": 3728, "properties": {"text": "Subject: re : deliveries into channel at gulf plains\ni am updating deal ticket 503046 , the hpl sale to el paso merchant to move\nall 10 m of the sale to meter 3500 effective today ' s gas day .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.877+0000", "entityId": 3729, "properties": {"text": "Subject: re : enerfin meter 980439 for 10 / 00\ndaren can you please extend deal # 422516 to cover flow of 9 dec . for\n10 / 6 / 2000 and extend deal 432556 to cover flow of 44 dec . for 10 / 19 / 2000 ?\nvolume mgmt is trying to clear up these issues .\nthanks\n- jackie -\nenron north america corp .\nfrom : victor lamadrid 12 / 15 / 2000 11 : 52 am\nto : jackie young / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , daren j farmer / hou / ect @ ect , rita\nwynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\njackie , talk to darren about this . the deal you reference is an hpl deal with\ndynegy and i don ' t have access to it . i ' m on the east desk . yesterday i\nextended the deal 421415 for the 6 th and 19 th and meredith inserted a path in\nunify - tetco to cover the small overflow volume between hpl and ena . the\nena / hpl piece is done . the piece between hpl and dynegy is what you need\ninserted . thanks\njackie young\n12 / 15 / 2000 11 : 32 am\nto : sherlyn schumack / hou / ect @ ect\ncc : victor lamadrid / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\nsherlyn , i ' ve placed the correct volumes for days 6 and 9 for ena . i ' ll have\nthe deal extended for dynegy and let you know when it ' s done .\nvictor , can you extend the deal 422516 for days 6 and 9 please ? thanks . oh\nand by the way , i had mistaken you for someone else when i sent you the\ne - mail on yesterday . sorry . i thought that i knew you . anyway , please\nadvise when you ' ve extended the deal so that sherlyn can create an accounting\narrangement .\nthanks\n- jackie -\n3 - 9497\nto : jackie young / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\ni don ' t want to tell you to add any contracts , because i am not sure about\nthat . i am just saying if you look at ray ' s schedule there are 2 deals out\nthere , one is a purchase from ena and the other a purchase from dynegy . the\ntrack id i gave you was for ena . you cannot allocate the dynegy piece\nuntil i give you a track id . i cannot give you a track id until the deal is\nextended for days 10 / 6 and 10 / 19 .\njackie young\n12 / 15 / 2000 10 : 51 am\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : re : enerfin meter 980439 for 10 / 00\narre you saying that for both days that two ( 2 ) ena contracts should be\nplaced at the meter for days 6 and 19 and then allocating half of the the\ntotal volume to each contract ?\nto : jackie young / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\njackie ,\nyou did not allocate this according to ray ' s schedule . the track id i gave\nyou was only for the purchase from ena . you need to extend the deal for the\npurchase from dynegy . you put all of the volume on these 2 days on ena ,\nthat is not what is on ray ' s schedule , so we are still out on the\ninterconnect report .\njackie young\n12 / 15 / 2000 10 : 30 am\nto : sherlyn schumack / hou / ect @ ect\ncc : alfonso trabulsi / hou / ect @ ect , rita wynne / hou / ect @ ect , gregg\nlenart / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\naccounting arrangement has been placed . meter has been reallocated .\nthanks and let me know if you need anything else .\n- jackie -\n3 - 9497\nfrom : sherlyn schumack 12 / 15 / 2000 10 : 00 am\nto : jackie young / hou / ect @ ect , alfonso trabulsi / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , gregg lenart / hou / ect @ ect\nsubject : enerfin meter 980439 for 10 / 00\njackie ,\nyour allocation is correct with the exception of days 10 / 6 and 10 / 19 where\nstrangers gas is allocated . i have created an accounting arrangement for\nthese days and the new track id for ena is 240384 . please allocate the ena\nportion according to rays schedule for these 2 days . deal 422516 ( purchase\nfrom dynegy ) needs to be extended for these 2 days so i can do an accounting\narrangement . alfonso i need for you to allocate your meter daily , because\nwe have tiered pricing this month .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.882+0000", "entityId": 3730, "properties": {"text": "Subject: deal extension for 11 / 21 / 2000 for 98 - 439\nvictor ,\ncan you extend deal # 465490 to cover a flow volume of 141 dec . for 11 / 21 / 2000 ?\ndaren ,\ncan you extend deal # 465322 for cover a flow volume of 140 dec . for\n11 / 21 / 2000 ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.886+0000", "entityId": 3731, "properties": {"text": "Subject: re : deal extension for 11 / 21 / 2000 for 98 - 439\njackie , 465490 is not a deal between ena and hpl . . it is a zone 5 tennessee\nsale between ena and a third party . . . thanks\njackie young\n12 / 19 / 2000 09 : 02 am\nto : victor lamadrid / hou / ect @ ect , meredith mitchell / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , howard b camp / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect\nsubject : deal extension for 11 / 21 / 2000 for 98 - 439\nvictor ,\ncan you extend deal # 465490 to cover a flow volume of 141 dec . for 11 / 21 / 2000 ?\ndaren ,\ncan you extend deal # 465322 for cover a flow volume of 140 dec . for\n11 / 21 / 2000 ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.892+0000", "entityId": 3732, "properties": {"text": "Subject: hpl meter # 986240 el campo / shanghai commonpoint\ndaren :\nduring the period of 9 / 1 / 99 to 9 / 30 / 99 , the above meter has recorded flow on\nthe following days with no deals attached :\ndays mmbtus\n9 / 1 / 99 0\n9 / 2 / 99 29\n9 / 3 / 99 4\n9 / 4 / 99 4\n9 / 5 / 99 4\n9 / 6 / 99 40\n9 / 7 / 99 27\n9 / 8 / 99 0\n9 / 9 / 99 30\n9 / 10 / 99 69\n9 / 11 / 99 71\n9 / 12 / 99 79\n9 / 13 / 99 68\n9 / 14 / 99 73\n9 / 15 / 99 97\n9 / 16 / 99 99\n9 / 17 / 99 93\n9 / 18 / 99 96\n9 / 19 / 99 89\n9 / 20 / 99 57\n9 / 21 / 99 108\n9 / 22 / 99 123\n9 / 23 / 99 111\n9 / 24 / 99 95\n9 / 25 / 99 102\n9 / 26 / 99 80\n9 / 27 / 99 78\n9 / 28 / 99 113\n9 / 29 / 99 194\n9 / 30 / 99 131\n2 , 164\ncurrently , these volumes are being booked under the hpl strangers gas\ncontract . logistics needs either a deal to record these volumes which have\nflowed into hpl ' s pipeline or logistics needs approval to writeoff these\nvolumes to unaccounted for gas . ( please print , sign , and return original to\nclem cernosek ) . there was no deal at this meter the previous month or the\nlater month .\ndeal / dealticket # / customer ( seller / buyer )\nor\napproval to writeoff the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.896+0000", "entityId": 3733, "properties": {"text": "Subject: hpl meter # 989648 tram / hpl - transtexas thompson\ndaren :\non 9 / 24 / 99 , the above meter recorded flow of 437 mmbtus . there was no deal\nat this meter the month prior or after . logistics needs either a deal to\nrecord these volumes which have flowed into hpl ' s pipeline or logistics needs\napproval to writeoff these volumes to unaccounted for gas . ( please print ,\nsign , and return the original to clem cernosek ) .\napproval to writeoff the volumes to unaccounted for gas loss\nor\ndeal / deal ticket # / customer ( buyer / seller )\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.901+0000", "entityId": 3734, "properties": {"text": "Subject: re : deal extension for 11 / 21 / 2000 for 98 - 439\ni extended the deal 462490 for 11 / 21 to cover the extra volume . there is a\npath in unify already so volume mgt . should be able actualize volumes .\njackie young\n12 / 19 / 2000 09 : 30 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : deal extension for 11 / 21 / 2000 for 98 - 439\ntypo . . . . . . . . . . . . deal # 462490\nenron north america corp .\nfrom : victor lamadrid 12 / 19 / 2000 09 : 24 am\nto : jackie young / hou / ect @ ect\ncc : meredith mitchell / hou / ect @ ect , daren j farmer / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect , howard b camp / hou / ect @ ect , clem cernosek / hou / ect @ ect ,\ncynthia franklin / corp / enron @ enron\nsubject : re : deal extension for 11 / 21 / 2000 for 98 - 439\njackie , 465490 is not a deal between ena and hpl . . it is a zone 5 tennessee\nsale between ena and a third party . . . thanks\njackie young\n12 / 19 / 2000 09 : 02 am\nto : victor lamadrid / hou / ect @ ect , meredith mitchell / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , howard b camp / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect\nsubject : deal extension for 11 / 21 / 2000 for 98 - 439\nvictor ,\ncan you extend deal # 465490 to cover a flow volume of 141 dec . for 11 / 21 / 2000 ?\ndaren ,\ncan you extend deal # 465322 for cover a flow volume of 140 dec . for\n11 / 21 / 2000 ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.905+0000", "entityId": 3735, "properties": {"text": "Subject: hpl meter # 981046 butane plant neches gas dist h\ndaren :\nduring the period of 9 / 5 / 99 thru 9 / 6 / 99 , the above meter recorded flow of\n3 , 962 mmbtus . there was no deal at this meter the month prior or after .\ncurrently , logistics has these volumes recorded to hpl strangers gas\ncontract . in order to correct this , hpl logistics needs either a deal to\nrecord these volumes which have flowed into hpl ' s pipeline or logistics needs\napproval to writeoff these volumes to unaccounted for gas . ( please print ,\nsign , and return the original to clem cernosek ) .\napproval to writeoff the volumes to unaccounted for gas loss\nor\ndeal / deal ticket # / customer ( buyer / seller )\nthank , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.910+0000", "entityId": 3736, "properties": {"text": "Subject: tenaska iv pricing\ni think we need to remove some of the demand charges that have been set up\nfor williams and apache . on williams deal 384237 , the demand charge needs to\nbe removed from sept . 2000 . the demand charge should not have started until\noctober 2000 . because we did not know at the time what was happening with\nthis deal , the demand fee was inadvertently paid to williams for sept . and we\nneed to recoup our money . on apache deal 384247 , james thinks we need to\nremove the demand charge completely . he says it is not a part of the deal\nand apache is not billing us for it . we also need to talk about the pricing\non both of these deals . williams and apache are billing us less than what we\nhave in sitara . to be able to keep this desk at zero , jim pond does not want\nme to use pay the lesser of for the purchases , so we need to address the\nprice differences . you said you had some contract briefs that supported our\nprices . please fax a copy to me at 713 - 646 - 8420 and i will compare them to\nwhat james has .\njust a heads up . . . we are beginning to work on november 2000 , so we will need\na demand fee entered ( hopefully next week ) . i will email you the spreadsheet\nafter we have received all of the cash and are ready to pay tenaska iv .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.914+0000", "entityId": 3737, "properties": {"text": "Subject: tenaska iv gas\ndaren , per review of the gas agreements between tenaska iv and\nwilliams / apache and our understanding of the agency agreement , i had a few\nitems i wanted to discuss with you ( in lieu of our meeting today that was\ncancelled ) :\n1 . looking at the october gas supply to the plant , i think tenaska iv should\nhave been charged at the contract prices with williams & apache ( i . e . 2 . 285 )\nand not at what the final price that was actualized per megan ' s summary -\n230 , 406 at $ 710 , 616 . 70 , price of $ 3 . 084 . if this volume was charged at\n2 . 285 the total would have been $ 526 , 477 . 71 , a difference of $ 184 , 138 . 99 .\n2 . looking at the november gas supply to the plant , tenaska iv was charged\n$ 2 . 91 per mmbtu , instead of $ 2 . 285 for volumes of 267 , 300 . at the $ 2 . 91\nprice , the total settlement price was $ 777 , 843 instead of $ 610 , 780 . 50 at\n2 . 285 , showing a difference of $ 167 , 062 . 50 .\ni reviewed the gas supply agreements and the williams gas price ( pg . 19 ) for\n2000 gas is 2 . 32 , which can be adjusted by the waha transportation adjustment\nif delivered at waha . this adjustment started in 1997 at $ . 03 per mmbtu and\nincrease by 5 % per year . thereby currently , the adjustment factor is at\n. 0347 , giving us a price of $ 2 . 2853 per mmbtu .\nin reviewing the apache gas agreement ( pg . 22 ) , i noticed that the gas price\nis 2 . 285 at waha & 2 . 315 at katy / carthage for 2000 . per review of the apache\ninvoices , it appears that we are not getting our gas at these points but at\nother places ( i . e . lomak - sterling & mendell cdp ) at a price of $ 2 . 175 . if\nenron has a separate agreement at these delivery points and can capture a\nmargin difference then that is upside to enron . however , i think the plant\nshould not be charged above the contract price of $ 2 . 285 .\nlooking at the daily gas that was scheduled to the plant for november and\noctober , i did not see that their use went over the contracted volumes from\nwilliams and apache of 45 , 000 mmbtu per day . therefore i don ' t think spot\nprices are part of the equation here . additionally , i recall from our\nmeeting last month that all enron makes on this deal is the agency fee of\n$ . 04 per mmbtu ( excluding the margin difference that enron has on apache gas\ndelivery points if my scenario above is correct ) .\nso based upon items 1 & 2 above , i am suggesting that tenaska iv adjust their\nnovember invoice owed to enron for gas used by the plant by the gas price\ndifferences showed above . therefore , i am planning to wire a payment of\n$ 484 , 234 . 03 ( see breakout below ) on friday , 12 / 22 , to enron on behalf of\ntenaska iv texas partners , ltd . for this activity .\nmonth plant gas price amount\nnovember 267 , 300 2 . 91 $ 777 , 843\nnovember adjustment $ ( 167 , 062 . 50 )\noctober adjustment $ ( 184 , 138 . 99 )\nnov . agency fee 1 , 350 , 000 . 04 $ 54 , 000\nsept . agency fee 98 , 813 . 04 $ 3 , 592 . 52\ntotal $ 484 , 234 . 03\ni discussed these issues with mike mazowita , rick hill & jody pierce before\nreaching this conclusion . should you have any different ideas or thoughts\nthat i am not covering , please call me at 3 - 7280 and we can discuss . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.919+0000", "entityId": 3738, "properties": {"text": "Subject: eastrans nomination effective january 1 , 2001\neffective 1 / 1 / 01 , the deliveries and redeliveries will be 0 mmbtu / dy .\nthe transaction agreement will not be utilized and detm will be selling\nfuels cotton valley gas to hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.924+0000", "entityId": 3739, "properties": {"text": "Subject: enron / hpl nom for december 20 , 2000\n( see attached file : hplnl 220 . xls )\n- hplnl 220 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.929+0000", "entityId": 3740, "properties": {"text": "Subject: enron / hpl actuals for december 18 , 2000\nteco tap 87 . 500 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.934+0000", "entityId": 3741, "properties": {"text": "Subject: union carbide - texas city\nunion carbide - seadrift - there should be no safety net gas @ seadrift - it\nwent to zero 4 am dec 14\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 12 / 19 / 2000\n10 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 12 / 19 / 2000 10 : 54 am\nto : daren j farmer / hou / ect @ ect , gary a hanks / hou / ect @ ect , james\nmckay / hou / ect @ ect\ncc :\nsubject : union carbide - texas city\nchange in their safety net gas :\neffective 3 pm today - increase it from 9 , 000 / d to 14 , 000 / d , so total flow at\nhpl meter would be 24 , 000 / d\neffective 9 am tomorrow 12 / 20 / 00 , decrease safety - net gas down to 6 , 000 / d , so\ntotal flow at hpl meter would be 16 , 000 / d", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.939+0000", "entityId": 3742, "properties": {"text": "Subject: union carbide - texas city\nchange in their safety net gas :\neffective 3 pm today - increase it from 9 , 000 / d to 14 , 000 / d , so total flow at\nhpl meter would be 24 , 000 / d\neffective 9 am tomorrow 12 / 20 / 00 , decrease safety - net gas down to 6 , 000 / d , so\ntotal flow at hpl meter would be 16 , 000 / d", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.944+0000", "entityId": 3743, "properties": {"text": "Subject: re : texas general land office it transport\nfyi . wanted to forward what i ' m getting from legal on the tglo contract -\nclear as mud .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 12 / 20 / 2000 06 : 55\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gerald nemec on 12 / 19 / 2000 06 : 17 pm\nto : lauri a allen / hou / ect @ ect , dan j hyvl / hou / ect @ ect\ncc :\nsubject : re : texas general land office it transport\nlauri , from a legal standpoint , we can cut the nomination on an\ninterruptible agreement at our discretion . the contract clearly gives us\nthis right . i haven ' t specifically reviewed the contract , but i am assuming\nit is our standard form . i will check this .\nyes , i would consider hisd facilities to be state facilities . the fact that\nthis goes to entex first complicates the issue .\ndan , was the intent that it be directly delivered to state facilities , or if\nit ultimately ended up at state facilities ?\nlauri a allen\n12 / 19 / 2000 10 : 57 am\nto : dan j hyvl / hou / ect @ ect , gerald nemec / hou / ect @ ect\ncc :\nsubject : texas general land office it transport\ni haven ' t heard anything back from you guys on this . any insight ? i know\nlinda roberts is also working a deal with tglo to convert bbls to mmbtus\nwhich could mean incremental volumes that tglo would be trying to get into\nmidcon .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hou / ect on 12 / 19 / 2000 09 : 37\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gerald nemec on 12 / 05 / 2000 04 : 12 pm\nto : dan j hyvl / hou / ect @ ect\ncc : lauri a allen / hou / ect @ ect\nsubject : texas general land office it transport\ndan , any input you have on this contract would be appreciated .\n- - - - - forwarded by gerald nemec / hou / ect on 12 / 05 / 2000 04 : 11 pm - - - - -\nlauri a allen\n12 / 05 / 2000 02 : 53 pm\nto : gerald nemec / hou / ect @ ect , eric gillaspie / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , edward . d . gottlob @ enron . com\nsubject : texas general land office it transport\ngerald / eric -\ni have a couple of questions regarding tglo transport contract\n012 - 88494 - 202 . we are currently delivering a volume of 28 . 000 mm into various\nmidcon interconnects on this contract that are designated to go to\nreliant / entex for the purpose of heating hisd schools . the transport\ncontract stipulates different rates for this delivery depending on whether\nthe gas is intended for state facilities or not . my first question , then ,\nis : are hisd schools considered state facilities ? and , if hisd schools are\nconsidered state facilities , does the fact that this gas is being delivered\nto them via reliant / entex utilizing midcon ' s pipe make any difference ?\ni am asking these questions not only to assure that we are recouping the\ncorrect transport rate , but also to determine what the consequences might be\nif i interrupt this delivery . we are having difficulty getting enough gas\ninto midcon to cover our entex noms and i am just exploring my options . i\nwould also expect that this volume should decrease when hisd closes for the\nchristmas holidays - does the fact that this is an it agreement give me enough\nleverage to cut this nom if tglo does not do so voluntarily ?\nthanks for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.950+0000", "entityId": 3744, "properties": {"text": "Subject: tuesday , december 26 th\nwe will need a small staff to handle potential trades for wed . the 27 th .\nmost of the pipelines are out of the office , so i would expect the work load\nto be minimal . i plan on coming in , and would like to have a minimum of\nthree on staff , so i need two volunteers ( one offsystem , just in case ) . if\nanyone is going to be in town , please forward a number , in case we need to\ncall any additional people in , or have you work on a laptop from home . i\nwill get with you after the new year to make up the holiday you miss , or , you\ncan schedule your day now , i have the calendars . also , i will be out on\nvacation friday , dec . 22 nd and will need someone to send the nominations to\nthe plants , i don ' t expect to have full system coverage , just hpl / hpl and\nhpl / ena as needed . let me know if you are interested in learning how to do\nthis .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.955+0000", "entityId": 3745, "properties": {"text": "Subject: re : tuesday , december 26 th\nmary since i will be on call i ' ll be in here .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.963+0000", "entityId": 3746, "properties": {"text": "Subject: stacey - cqg\ndaren , i completely forgot about stacey ' s cqg . . . was i supposed to send in\nanother request for her and put it on tom ' s cost center ? or were we going to\nwait for tom to okay it first ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.969+0000", "entityId": 3747, "properties": {"text": "Subject: re : tuesday , december 26 th\ni ' ll be here on tuesday .\nmary poorman\n12 / 20 / 2000 08 : 34 am\nto : michael olsen / na / enron @ enron , tom acton / corp / enron @ enron , clem\ncernosek / hou / ect @ ect , robert cotten / hou / ect @ ect , jackie young / hou / ect @ ect ,\nsabrae zajac / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , mark\nmccoy / corp / enron @ enron , aimee lannou / hou / ect @ ect , mary\npoorman / na / enron @ enron , eddie janzen / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : tuesday , december 26 th\nwe will need a small staff to handle potential trades for wed . the 27 th .\nmost of the pipelines are out of the office , so i would expect the work load\nto be minimal . i plan on coming in , and would like to have a minimum of\nthree on staff , so i need two volunteers ( one offsystem , just in case ) . if\nanyone is going to be in town , please forward a number , in case we need to\ncall any additional people in , or have you work on a laptop from home . i\nwill get with you after the new year to make up the holiday you miss , or , you\ncan schedule your day now , i have the calendars . also , i will be out on\nvacation friday , dec . 22 nd and will need someone to send the nominations to\nthe plants , i don ' t expect to have full system coverage , just hpl / hpl and\nhpl / ena as needed . let me know if you are interested in learning how to do\nthis .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.975+0000", "entityId": 3748, "properties": {"text": "Subject: re : tuesday , december 26 th\nmary - i can come in on tuesday .\nmary poorman @ enron\n12 / 20 / 2000 08 : 34 am\nto : michael olsen / na / enron @ enron , tom acton / corp / enron @ enron , clem\ncernosek / hou / ect @ ect , robert cotten / hou / ect @ ect , jackie young / hou / ect @ ect ,\nsabrae zajac / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , mark\nmccoy / corp / enron @ enron , aimee lannou / hou / ect @ ect , mary\npoorman / na / enron @ enron , eddie janzen / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : tuesday , december 26 th\nwe will need a small staff to handle potential trades for wed . the 27 th .\nmost of the pipelines are out of the office , so i would expect the work load\nto be minimal . i plan on coming in , and would like to have a minimum of\nthree on staff , so i need two volunteers ( one offsystem , just in case ) . if\nanyone is going to be in town , please forward a number , in case we need to\ncall any additional people in , or have you work on a laptop from home . i\nwill get with you after the new year to make up the holiday you miss , or , you\ncan schedule your day now , i have the calendars . also , i will be out on\nvacation friday , dec . 22 nd and will need someone to send the nominations to\nthe plants , i don ' t expect to have full system coverage , just hpl / hpl and\nhpl / ena as needed . let me know if you are interested in learning how to do\nthis .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.979+0000", "entityId": 3749, "properties": {"text": "Subject: re : tuesday , december 26 th\ni will be here tuesday , also .\nmark mccoy\n12 / 20 / 2000 09 : 04 am\nto : michael olsen / na / enron @ enron , tom acton / corp / enron @ enron , clem\ncernosek / hou / ect @ ect , robert cotten / hou / ect @ ect , jackie young / hou / ect @ ect ,\nsabrae zajac / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , mark\nmccoy / corp / enron @ enron , aimee lannou / hou / ect @ ect , mary\npoorman / na / enron @ enron , eddie janzen / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : re : tuesday , december 26 th\ni ' ll be here on tuesday .\nmary poorman\n12 / 20 / 2000 08 : 34 am\nto : michael olsen / na / enron @ enron , tom acton / corp / enron @ enron , clem\ncernosek / hou / ect @ ect , robert cotten / hou / ect @ ect , jackie young / hou / ect @ ect ,\nsabrae zajac / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , mark\nmccoy / corp / enron @ enron , aimee lannou / hou / ect @ ect , mary\npoorman / na / enron @ enron , eddie janzen / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : tuesday , december 26 th\nwe will need a small staff to handle potential trades for wed . the 27 th .\nmost of the pipelines are out of the office , so i would expect the work load\nto be minimal . i plan on coming in , and would like to have a minimum of\nthree on staff , so i need two volunteers ( one offsystem , just in case ) . if\nanyone is going to be in town , please forward a number , in case we need to\ncall any additional people in , or have you work on a laptop from home . i\nwill get with you after the new year to make up the holiday you miss , or , you\ncan schedule your day now , i have the calendars . also , i will be out on\nvacation friday , dec . 22 nd and will need someone to send the nominations to\nthe plants , i don ' t expect to have full system coverage , just hpl / hpl and\nhpl / ena as needed . let me know if you are interested in learning how to do\nthis .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.984+0000", "entityId": 3750, "properties": {"text": "Subject: re : tuesday , december 26 th\ni can be here .\nmary poorman @ enron\n12 / 20 / 2000 08 : 34 am\nto : michael olsen / na / enron @ enron , tom acton / corp / enron @ enron , clem\ncernosek / hou / ect @ ect , robert cotten / hou / ect @ ect , jackie young / hou / ect @ ect ,\nsabrae zajac / hou / ect @ ect , carlos j rodriguez / hou / ect @ ect , mark\nmccoy / corp / enron @ enron , aimee lannou / hou / ect @ ect , mary\npoorman / na / enron @ enron , eddie janzen / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect , lauri a allen / hou / ect @ ect\nsubject : tuesday , december 26 th\nwe will need a small staff to handle potential trades for wed . the 27 th .\nmost of the pipelines are out of the office , so i would expect the work load\nto be minimal . i plan on coming in , and would like to have a minimum of\nthree on staff , so i need two volunteers ( one offsystem , just in case ) . if\nanyone is going to be in town , please forward a number , in case we need to\ncall any additional people in , or have you work on a laptop from home . i\nwill get with you after the new year to make up the holiday you miss , or , you\ncan schedule your day now , i have the calendars . also , i will be out on\nvacation friday , dec . 22 nd and will need someone to send the nominations to\nthe plants , i don ' t expect to have full system coverage , just hpl / hpl and\nhpl / ena as needed . let me know if you are interested in learning how to do\nthis .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.989+0000", "entityId": 3751, "properties": {"text": "Subject: tuesday , december 26 th\ndaren ,\nthe following logistics personnel will be in the office on tuesday :\nmary poorman\nmark mccoy\neddie janzen\ntom acton\naimee lannou\nif you think we need more or less people , please let me know and i will keep\nthe group informed .\nthanks ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.993+0000", "entityId": 3752, "properties": {"text": "Subject: wyman gordan forgings , inc . september 2000 production\nhave you found anything ?\njulie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 12 / 20 / 2000 01 : 53\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera @ enron\n12 / 19 / 2000 09 : 45 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : wyman gordan forgings , inc . september 2000 production\njulie -\nsales\n# 451362\nwe billed wyman gordon 363 mmbtus at $ 4 . 7328 in sept 2000 .\ni spoke with richard moran at wyman gordon and he indicated that he has not\nhad any physical gas deals with us in over a year and does not owe us the\n$ 1 , 718 . 01 we billed him for september .\ncan you please validate if this is his gas or if this deal ticket should have\nbeen linked to some type of financial deal .\nthanks - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:19.998+0000", "entityId": 3753, "properties": {"text": "Subject: hpl nom for december 21 , 2000\n( see attached file : hplnl 221 . xls )\n- hplnl 221 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.003+0000", "entityId": 3754, "properties": {"text": "Subject: enron / hpl actuals for december 19 , 2000\nteco tap 25 . 000 / enron ; 100 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.007+0000", "entityId": 3755, "properties": {"text": "Subject: south hampton refining\ni have added deal # 541123 as a buyback for december 25 - 31 2000 .\nplease invoice south hampton total flow thru the meter 12 / 01 - 12 / 24 ; on\n12 / 25 they should be invoiced a minimum of 1700 mmbtu per day at contract and\nbuy back\n900 mmbtu per day per sitara 541123 . please call with questions .\ndaren please forward to client services .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.012+0000", "entityId": 3756, "properties": {"text": "Subject: update on union carbide safety net gas\ngot a call last night from carbide - they rescinded the change from 14 , 000 / d\nrate to 6 , 000 / d rate for safety net gas that was due 9 am this morning .\nso here ' s where we should be now with carbide :\nseadrift - no saftey net , just the 10 , 000 / d baseload deal\ntexas city - 10 , 000 / d of the term deal , plus 14 , 000 / d of safety net , total\n24 , 000 / d\ncall with questions\nlee\n3 . 5923", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.017+0000", "entityId": 3757, "properties": {"text": "Subject: re : deal extension for 11 / 21 / 2000 for 98 - 439\nhi daren ,\ni know that this is a busy part of the day for you . but , when you get a\nminute , can you please extend deal # 465322 for cover a flow volume of 140\ndec . for 11 / 21 / 2000 ?\nthanks\n- jackie -\n3 - 9497\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jackie young / hou / ect on 12 / 21 / 2000 09 : 06\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njackie young\n12 / 19 / 2000 09 : 30 am\nto : victor lamadrid / hou / ect @ ect\ncc :\nsubject : re : deal extension for 11 / 21 / 2000 for 98 - 439\ntypo . . . . . . . . . . . . deal # 462490\nenron north america corp .\nfrom : victor lamadrid 12 / 19 / 2000 09 : 24 am\nto : jackie young / hou / ect @ ect\ncc : meredith mitchell / hou / ect @ ect , daren j farmer / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect , howard b camp / hou / ect @ ect , clem cernosek / hou / ect @ ect ,\ncynthia franklin / corp / enron @ enron\nsubject : re : deal extension for 11 / 21 / 2000 for 98 - 439\njackie , 465490 is not a deal between ena and hpl . . it is a zone 5 tennessee\nsale between ena and a third party . . . thanks\njackie young\n12 / 19 / 2000 09 : 02 am\nto : victor lamadrid / hou / ect @ ect , meredith mitchell / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect , howard b camp / hou / ect @ ect , sherlyn\nschumack / hou / ect @ ect\nsubject : deal extension for 11 / 21 / 2000 for 98 - 439\nvictor ,\ncan you extend deal # 465490 to cover a flow volume of 141 dec . for 11 / 21 / 2000 ?\ndaren ,\ncan you extend deal # 465322 for cover a flow volume of 140 dec . for\n11 / 21 / 2000 ?\nthanks\n- jackie -\n3 - 9497", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.022+0000", "entityId": 3758, "properties": {"text": "Subject: work assignments\nmike\ni see that you have alot of the things that are on the error report , some of\nwhich i am not sure that i have assigned to you . if anyone tells you that\nyou are now doing something off of their desk , please refer them to me at\nthis time . i don ' t want anyone to dump any the \" crap \" , or less savory work\noff of t heir desks onto you ( we all have things we would prefer not to have\nto do which still must be done , it just comes with the territory ) . also , let\nme know if you feel comfortable with any additional shipper accounts . i\nwould like to see you crosstrain with sabrae after the holidays .\nthanks ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.027+0000", "entityId": 3759, "properties": {"text": "Subject: hpl meter # 986631 texoma - tejas hpl i / c\ndaren :\nduring the period of 1 / 1 / 2000 to 1 / 4 / 2000 , the above meter has recorded flow\non the following days with no deals attached :\ndays mmbtus\n1 / 1 / 00 3 , 737\n1 / 2 / 00 3 , 713\n1 / 3 / 00 3 , 730\n1 / 4 / 00 800\n11 , 980\ndeal # 120891 was at that meter during 12 / 99 production month , but it expired\non 12 / 31 / 99 . currently , these volumes are being booked under the hpl\nstrangers gas contract . logistics needs either ( 1 ) have deal # 120891\nextended , ( 2 ) new deal , or ( 3 ) approval to writeoff these volumes to\nunaccounted for gas . ( please print , sign , and return original to clem\ncernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to writeoff the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.032+0000", "entityId": 3760, "properties": {"text": "Subject: re : enerfin meter 980439 for 10 / 00\nit did but tetco prorated the flow between the two parties ( dynegy and ena )\nthanks\ndaren j farmer\n12 / 21 / 2000 10 : 42 am\nto : jackie young / hou / ect @ ect\ncc :\nsubject : re : enerfin meter 980439 for 10 / 00\ndidn ' t the deal that victor extended cover these days ? i don ' t think\nanything should be adjusted on the dynegy deal .\nd\njackie young\n12 / 19 / 2000 08 : 47 am\nto : daren j farmer / hou / ect @ ect\ncc : howard b camp / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\ndaren can you please extend deal # 422516 to cover flow of 9 dec . for\n10 / 6 / 2000 and extend deal 432556 to cover flow of 44 dec . for 10 / 19 / 2000 ?\nvolume mgmt is trying to clear up these issues .\nthanks\n- jackie -\nenron north america corp .\nfrom : victor lamadrid 12 / 15 / 2000 11 : 52 am\nto : jackie young / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect , daren j farmer / hou / ect @ ect , rita\nwynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\njackie , talk to darren about this . the deal you reference is an hpl deal with\ndynegy and i don ' t have access to it . i ' m on the east desk . yesterday i\nextended the deal 421415 for the 6 th and 19 th and meredith inserted a path in\nunify - tetco to cover the small overflow volume between hpl and ena . the\nena / hpl piece is done . the piece between hpl and dynegy is what you need\ninserted . thanks\njackie young\n12 / 15 / 2000 11 : 32 am\nto : sherlyn schumack / hou / ect @ ect\ncc : victor lamadrid / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\nsherlyn , i ' ve placed the correct volumes for days 6 and 9 for ena . i ' ll have\nthe deal extended for dynegy and let you know when it ' s done .\nvictor , can you extend the deal 422516 for days 6 and 9 please ? thanks . oh\nand by the way , i had mistaken you for someone else when i sent you the\ne - mail on yesterday . sorry . i thought that i knew you . anyway , please\nadvise when you ' ve extended the deal so that sherlyn can create an accounting\narrangement .\nthanks\n- jackie -\n3 - 9497\nto : jackie young / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\ni don ' t want to tell you to add any contracts , because i am not sure about\nthat . i am just saying if you look at ray ' s schedule there are 2 deals out\nthere , one is a purchase from ena and the other a purchase from dynegy . the\ntrack id i gave you was for ena . you cannot allocate the dynegy piece\nuntil i give you a track id . i cannot give you a track id until the deal is\nextended for days 10 / 6 and 10 / 19 .\njackie young\n12 / 15 / 2000 10 : 51 am\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : re : enerfin meter 980439 for 10 / 00\narre you saying that for both days that two ( 2 ) ena contracts should be\nplaced at the meter for days 6 and 19 and then allocating half of the the\ntotal volume to each contract ?\nto : jackie young / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\njackie ,\nyou did not allocate this according to ray ' s schedule . the track id i gave\nyou was only for the purchase from ena . you need to extend the deal for the\npurchase from dynegy . you put all of the volume on these 2 days on ena ,\nthat is not what is on ray ' s schedule , so we are still out on the\ninterconnect report .\njackie young\n12 / 15 / 2000 10 : 30 am\nto : sherlyn schumack / hou / ect @ ect\ncc : alfonso trabulsi / hou / ect @ ect , rita wynne / hou / ect @ ect , gregg\nlenart / hou / ect @ ect\nsubject : re : enerfin meter 980439 for 10 / 00\naccounting arrangement has been placed . meter has been reallocated .\nthanks and let me know if you need anything else .\n- jackie -\n3 - 9497\nfrom : sherlyn schumack 12 / 15 / 2000 10 : 00 am\nto : jackie young / hou / ect @ ect , alfonso trabulsi / hou / ect @ ect\ncc : rita wynne / hou / ect @ ect , gregg lenart / hou / ect @ ect\nsubject : enerfin meter 980439 for 10 / 00\njackie ,\nyour allocation is correct with the exception of days 10 / 6 and 10 / 19 where\nstrangers gas is allocated . i have created an accounting arrangement for\nthese days and the new track id for ena is 240384 . please allocate the ena\nportion according to rays schedule for these 2 days . deal 422516 ( purchase\nfrom dynegy ) needs to be extended for these 2 days so i can do an accounting\narrangement . alfonso i need for you to allocate your meter daily , because\nwe have tiered pricing this month .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.036+0000", "entityId": 3761, "properties": {"text": "Subject: txu fuels / sds nomination for january 2001\nattached is the january 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel ( previously tufco ) and sds . please advise\nshould you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.040+0000", "entityId": 3762, "properties": {"text": "Subject: enron / hpl actuals for december 20 , 2000\nteco tap 30 . 000 / enron ; 61 . 667 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.045+0000", "entityId": 3763, "properties": {"text": "Subject: hpl nom for december 22 , 2000\n( see attached file : hplnl 222 . xls )\n- hplnl 222 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.049+0000", "entityId": 3764, "properties": {"text": "Subject: global octanes\nfinished visiting with counsel . . . . . we will need to start with the buyback\nfor global octanes 9 am tomorrow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.056+0000", "entityId": 3765, "properties": {"text": "Subject: january 2001 - mcnic / lyondell noms .\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 12 / 21 / 2000 11 : 02\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kevin olson \" on 12 / 18 / 2000 12 : 19 : 44 pm\nto : \" amy lannou \"\ncc : \" janice berke - davis \"\nsubject : january 2001 - mcnic / lyondell noms .\namy ,\nplease note that the mcnic noms for january , 2001 into the lyondell\nchannelview plant via hpl will be 10 , 000 mmbtu / day .\nplease call should you have any questions .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.060+0000", "entityId": 3766, "properties": {"text": "Subject: hpl meter # 981459 harris gsf energy hpl\ngary :\ncan someone in your dept . please reverify and determine if these volumes are\ncorrect for june and august 2000 . hpl did not have any deals for these\nvolume deliveries for either sales or transportation .\nenron corp\nmeter gas volume summary for 06 / 00\n981459 - 15 9416 ley road g . s . f . sales pressure base : 14 . 650\nday mcf dry btu dth day mcf dry btu dth\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n- - - - - - - - - - - - - - - - - -\n1 34 1007 . 9415 34 16 0\n1007 . 9415 0\n2 34 1007 . 9415 34 17 0 1007 . 9415\n0\n3 34 1007 . 9415 34 18 0\n1007 . 9415 0\n4 34 1007 . 9415 34 19 0\n1007 . 9415 0\n5 34 1007 . 9415 34 20 0\n1007 . 9415 0\n6 34 1007 . 9415 34 21 0\n1007 . 9415 0\n7 0 1007 . 9415 0 22 0\n1007 . 9415 0\n8 0 1007 . 9415 0 23 0\n1007 . 9415 0\n9 0 1007 . 9415 0 24 0\n1007 . 9415 0\n10 0 1007 . 9415 0 25 0\n1007 . 9415 0\n11 0 1007 . 9415 0 26 0\n1007 . 9415 0\n12 0 1007 . 9415 0 27 0 1007 . 9415\n0\n13 0 1007 . 9415 0 28 0\n1007 . 9415 0\n14 0 1007 . 9415 0 29 0\n1007 . 9415 0\n15 0 1007 . 9415 0 30 0\n1007 . 9415 0\ntotal 204 1000 . 0000 204\npress return to continue\nenron corp\nmeter gas volume summary for 08 / 00\n981459 - 15 9416 ley road g . s . f . sales pressure base : 14 . 650\nday mcf dry btu dth day mcf dry btu dth\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n1 33 1012 . 6934 33 17 0\n1012 . 6934 0\n2 0 1012 . 6934 0 18 0\n1012 . 6934 0\n3 0 1012 . 6934 0 19 0\n1012 . 6934 0\n4 0 1012 . 6934 0 20 0\n1012 . 6934 0\n5 0 1012 . 6934 0 21 0\n1012 . 6934 0\n6 0 1012 . 6934 0 22 0\n1012 . 6934 0\n7 0 1012 . 6934 0 23 0\n1012 . 6934 0\n8 0 1012 . 6934 0 24 0\n1012 . 6934 0\n9 0 1012 . 6934 0 25 0\n1012 . 6934 0\n10 0 1012 . 6934 0 26 0\n1012 . 6934 0\n11 0 1012 . 6934 0 27 0\n1012 . 6934 0\n12 0 1012 . 6934 0 28 0\n1012 . 6934 0\n13 0 1012 . 6934 0 29 0\n1012 . 6934 0\n14 0 1012 . 6934 0 30 0\n1012 . 6934 0\n15 0 1012 . 6934 0 31 0\n1012 . 6934 0\n16 0 1012 . 6934 0\ntotal 33 1000 . 0000 33\npress return to continue\nplease let me know at your earliest convenience .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.068+0000", "entityId": 3767, "properties": {"text": "Subject: hpl meter southern union - lockhart\ndaren :\non 5 / 31 / 2000 the above meter has recorded flow of 16 mmbtus from hpl ' s\npipeline . deal # 254839 was at the meter prior , but it expired on 5 / 21 / 00 .\ncurrently , the volume is booked to hpl strangers gas contract . logistics\nneeds either ( 1 ) have deal # 254839 extended , ( 2 ) new deal , or ( 3 ) approval to\nwriteoff these volumes to unaccounted for gas . ( please print , sign , and\nreturn original to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to writeoff the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.075+0000", "entityId": 3768, "properties": {"text": "Subject: hpl meter # 981389 mt . belvieu - trident ngl hpl\ndaren :\non may 31 , 2000 , the above meter flowed 15 mmbtus from hpl ' s pipeline . this\nis the only day that this meter flowed during the period of 1 / 1 / 99 thru\n11 / 30 / 00 .\ncurrently , the volume is booked to hpl strangers gas contract . logistic\nneeds approval to writeoff this volume to unaccounted for gas . ( please\nprint , sign , and return original to clem cernosek ) .\napproval to writeoff the volume to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.081+0000", "entityId": 3769, "properties": {"text": "Subject: weekend activities\nhere is the weekend calls\nsat . dec 23\n9 : 45 am bruce at pg & e called with some cuts . i called eddie\nand informed per his request due to the deep cut at 9 g 96 .\n9 gd 5 was cut from 16495 to 16488 . they parked the cut for us .\n9 g 96 was cut from 45000 to 38092 . bruce and eddie worked out a\ndeal on that .\n10 : 00 am daren farmer called requesting that we move the\nmiles / bayer gas from the plants at meters 988056 and 981550 to the katy tail\ngate due to wet gas . i called lee papayoti and rick tiotrowski from bayer\nto inform of the move and to get bayer to nom with midcon . called jackie\nyoung and she was already and her way to the office for other reasons and\nshe kindly renomed and resent the nom the tailgate for me . thank you\njackie for your kindness .\n10 : 20 am bruce at pg & e called again with some cuts at channel\ndue to el paso .\n980584 agua dulce was cut from ( on the channel transport ) 21964 to 16884\nfor a new point total of 50156 . old point total was 45076 .\ncalled gas control and asked them to call channel ' s gas control and\nconfirm . called sabrae to inform .\n3 : 30 pm bruce called again with more cuts\n980584 aqua dulce as cut again on the channel transport . 16884 was cut to\n16275 for a new point total 50765 . called gas control and informed of the\ncuts and asked them to call channel ' s gas control\nwho 34 was cut from 38092 to 37412 . they parked 4575 for us . called\neddie to inform .\nsun . dec 24\n9 : 30 am bruce from pge called with the cuts .\nwho 34 was cut from 16495 to 16358 bruce matched the cut on the receipt\n9 g 96 was cut from 45000 to 41298 the cut was parked\n980584 aqua dulce was cut from 21964 to 8000 for new point total of\n59040 . ( channel transport )\n986040 riverside was cut from 13964 to 12930 fro a new point total of\n38061 ( channel transport ) . gas control was called on both these meters and\ninformed of the new numbers and asked to call channels gas control to\nconfirm .\n10 : 00 am sam from gas control called and informed me that the bayer plants\ndidn ' t want to take any gas from hpl due to the water content . the tail\ngate still had the intraday change in place and so does midcon apparently\nso were rolling the move another day . lee said yesterday that he didn ' t\ncare were they get the gas . we will true up pops for the tailgate on tues .\n3 : 30 pm bruce pge cutl again .\n9 dwe was cut from 10000 down to 6988\n9 g 96 was cut from 45000 down to the 41298 bruce parked the gas for us .\nmon . dec . 25\n9 : 30 am cindy pge called with the cuts .\n9 gd 5 was cut from 16495 down to 16259\n9 g 96 was cut from 45000 to 43127\n980584 aqua dulce was cut an the channel transport form 21964 to 11864 .\nnew point total was 55176 . called gas control and informed them of the new\ntotal and asked them to confirm with channel ' s gas control .\n10 : 00 pm again sam called and said we need to keep milles / bayer at the tail\ngate due to high water content . so we did . we will need to update pops .\n1 : 00 pm marilyn from oasis called with some cuts . a 10000 and\na 5000 package was cut going to anp tao 020 . i called mark and he said t\nl move the 10000 back haul to hpl which i did . the 5000 duke gas we\nmoved over to 5896 and will move to back to hpl on our 202 contract .\nmarilyn said there will be a 1 % fuel and a 4 cent change but we could pay\nthe fuel at another time or use it against the imbalance so she confirmed the\nfull 5000 . new meter total is 49765 .\n4 : 00 pm cindy pge called with more cuts\n96 d 5 was cut from 16259 to 16100\n9 g 96 was cut from 45000 to 36215 . cindy said that they would not park the\ngas this time for us . i called eddie to inform and he said he would call\ncindy and dazzle her with his charm and wit and fix the problem . well that\ndidn ' t work so we ended up moving it from teco on the mid tex line to 8740\non hpl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.085+0000", "entityId": 3770, "properties": {"text": "Subject: revision - forest oil ' s january 2001 gas volumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elsa villarreal / hou / ect on 12 / 26 / 2000\n01 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : joan m quick on 12 / 26 / 2000 10 : 00 am\nsent by : joan quick\nto : mary poorman / na / enron @ enron , jackie young / hou / ect @ ect\ncc : elsa villarreal / hou / ect @ ect\nsubject : revision - forest oil ' s january 2001 gas volumes\nbelow are forest ' s first of the month noms :\ndelivery point mmbtu / d\nmcallen ranch 4 , 196\nkaty plant 9 , 370 [ termed up for nov - mar ]\nrevision per john kjelmyr , 12 / 26 am .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.090+0000", "entityId": 3771, "properties": {"text": "Subject: mgi supply\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elsa villarreal / hou / ect on 12 / 26 / 2000\n02 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : nicole vo @ enron 12 / 08 / 2000 11 : 28 am\nto : elsa villarreal / hou / ect @ ect\ncc :\nsubject : mgi supply\nhumble gas pipeline\ns # 446339 , 449505 , 411836 , 472615 , 463236 , 448454\nelsa ,\ni was informed to bill anything on hgpl by my supervisor , but when i talk to\npriscilla hamic she informed me that hgpl should be billed by offsystem and\nnot the texas desk . the deals in sitara that relate to hgpl all state that\nit is texas desk .\nplease let me know who should be billing mgi supply for hgpl volume .\nthanks for your help .\nnicole vo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.095+0000", "entityId": 3772, "properties": {"text": "Subject: hpl nom for december 27 , 2000 - revision # 1\nthe 30 / d ls hpl katy i . c . gas was left off of the original version .\ncall if you have any questions . . . .\nronnie\n( see attached file : hplnl 227 . xls )\n- hplnl 227 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.099+0000", "entityId": 3773, "properties": {"text": "Subject: hpl nom for december 27 , 2000\n( see attached file : hplnl 227 . xls )\n- hplnl 227 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.104+0000", "entityId": 3774, "properties": {"text": "Subject: enron actuals\ndec . 21 , 2000\nteco tap 0 . 000 / enron ; 18 . 750 / hpl gas daily\ndec . 22 , 2000\nteco tap 30 . 000 / enron ; 80 . 417 / hpl gas daily\ndec . 23 , 2000\nteco tap 0 . 000 / enron ; 6 . 250 / hpl gas daily\ndec . 24 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl gas daily\ndec . 25 , 2000\nteco tap 40 . 000 / enron ; 110 . 000 / hpl gas daily", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.108+0000", "entityId": 3775, "properties": {"text": "Subject: january brown bag sessions\nif you would like to sharpen your performance evaluation writting skills or\nyour interviewing skills please read below .\nthe following classes are being offered on an \" invitation only \" basis .\ngiving effective feedback will be offered on january 10 th and 16 th in room\neb 49 cl .\nfocused interview training will be offered on january 17 th in room eb 49 cl .\nboth classes are from 11 : 30 am to 1 : 00 pm .\nto register for these offerings , click on the provided link . once in the\ndevolpment center data base , click on the session you wish to attend and\nsubmit your registration . hurry , space for these trainings is limited .\nthis is the link - - - - - - - - - - - >\nfocused interview training class description :\nthis class will address the role of the interviewer in the implementation of\nthe focused interview . topics to be covered include :\nsteps for preparation\nsetting expectations\nconducting a focused interview\nusing the focused interview tool\nlegal and ethical consideration\nthe role of competencies in your final evaluation\ndiscussion will be encouraged to ensure transfer of information .\nparticipants will be given handouts including :\nthe focused interview tool\nthe interviewer ' s guide\ncourse outline\ncourse length : 90 minutes\nintended audience : interviewer ' s of all levels\ngiving effective feedback\nthis brown bag session will highlight the aspects of effective written and\nverbal feedback associated with employee performance . topics to be covered\ninclude :\nwhy focused feedback is important\nhow to give focused feedback\nthe practice of giving focused feedback\nparticipants will be given opportunities to share past feedback experiences .\nexercises will be offered to facilitate the transfer of learning .\nparticipants will be given handouts including :\ncourse outline\nthe focused feedback guide\ncourse length : 90 minutes\nintended audience : supervisor ' s of all levels", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.113+0000", "entityId": 3776, "properties": {"text": "Subject: hpl meter # 980070 rusk d / p - lone star hpl\ndaren :\nduring the period of 11 / 4 / 99 to 12 / 4 / 99 , the above meter has recorded flow on\nthe following days :\ndays mmbtus\n11 / 4 / 99 2 , 813\n11 / 7 / 99 4 , 248\n11 / 8 / 99 2 , 287\n11 / 10 / 99 23\n11 / 24 / 99 100\n11 / 25 / 99 421\n11 / 26 / 99 3 , 611\n11 / 27 / 99 989\n11 / 28 / 99 7\n12 / 1 / 99 1 , 825\n12 / 5 / 99 205\n30 , 287\ndeal # 127445 was at this meter for only 1 day ( november 3 , 1999 ) . deal\n# 129706 was at this meter for only 1 day ( november 16 , 1999 ) . deal # 133219\nwas at this meter for only 2 days ( december 1 & 2 , 1999 ) . currently , these\nvolumes are being booked under the hpl strangers gas contract . logistics\nneeds either ( 1 ) have some or all of these deals extended , ( 2 ) new deal , or\n( 3 ) approval to write - off these volumes to unaccounted for gas . ( please\nprint , sign , and return original to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.117+0000", "entityId": 3777, "properties": {"text": "Subject: hpl meter # 981052 pasadena plant phillips hpl\ndaren :\nduring the period of 11 / 10 / 99 through 11 / 11 / 99 , the above meter recorded flow\nof 1 , 613 mmbtus . there was no deal at this meter the month prior or after .\ncurrently , logistic has these volumes recorded to hpl strangers gas\ncontract . in order to correct this , hpl logistics needs either a deal to\nrecord these volumes which have flowed into hpl ' s pipeline or logistics needs\napproval to write - off these volumes to unaccounted for gas . ( please print ,\nsign , and return original to clem cernosek ) .\napproval to write - off the volumes to unaccounted for gas loss\nor\ndeal / deal ticket # / customer ( buyer / seller )\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.122+0000", "entityId": 3778, "properties": {"text": "Subject: hpl noms - revisons for dec . 27 and 28 , 2000\nnote : the exxon katy plant operates on a 7 to 7 day . the nomination of 22 . 850\nat the ls exxon katy t . g . , started at 3 pm , ( 16 hours of flow at 22 . 850 rate )\nwhich\nwill average to be 15 . 233 for the flow day of dec . 27 , 2000 .\n( see attached file : hplnl 227 . xls ) ( see attached file : hplnl 228 . xls )\n- hplnl 227 . xls\n- hplnl 228 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.126+0000", "entityId": 3779, "properties": {"text": "Subject: hpl nom . for dec . 28 , 2000\n( see attached file : hplnl 228 . xls )\n- hplnl 228 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.131+0000", "entityId": 3780, "properties": {"text": "Subject: enron actuals - dec . 26 , 2000\ndec . 26 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\nlsp hpl katy i / c 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.135+0000", "entityId": 3781, "properties": {"text": "Subject: jan 1 noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 12 / 27 / 2000 05 : 45\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 12 / 27 / 2000 04 : 00 : 02 pm\nto : tacton @ enron . com , lbellamy @ enron . com , janet . h . wallis @ enron . com\ncc :\nsubject : jan 1 noms\n( see attached file : hpl - jan . xls )\n- hpl - jan . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.140+0000", "entityId": 3782, "properties": {"text": "Subject: 27 copano , 28 th for entex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 12 / 27 / 2000 11 : 25\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 12 / 27 / 2000 10 : 59 : 32 am\nto : tacton @ enron . com , lbellamy @ enron . com , janet . h . wallis @ enron . com\ncc :\nsubject : 27 copano , 28 th for entex\n( see attached file : hpl - dec . xls )\n- hpl - dec . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.144+0000", "entityId": 3783, "properties": {"text": "Subject: hpl meter # 989824 decker laureles farm c / p\ndaren :\non 1 / 25 / 2000 the above meter has recorded flow of 18 mmbtus into hpl ' s\npipeline . currently , the volume is booked to hpl strangers gas contract .\nlogistics needs approval to write - off this volume to unaccounted for gas .\n( please print , sign , and return original to clem cernosek ) .\napproval to write - off the volumes to unaccounted for gas loss\nthe above meter was a new meter effective 1 / 1 / 2000 , and therefore , the volume\nflowing into hpl was probably caused by putting the meter in service .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.148+0000", "entityId": 3784, "properties": {"text": "Subject: opm hours survey - december , 2000\nit ' s that time again to enter your hours and activities for december , 2000 .\nplease use the shortcut below or go to the following path o : \\ energy _ ops \\ opm\nhours survey \\ produser to access the hours survey .\nwhen completing the fte ' s section of the survey , if there are any director ,\nsr . admin or admin positions in your cost center , please complete\naccordingly . you are not expected to complete a hours survey for these\npositions but we do need them to be included in your fte ' s .\nthere is a new report that shows your cost center ' s hours from the prior\nmonth in the reports button in the \" multiple user \" survey . to view hours\nentered for prior months , select a report from the column \" select a month \" .\nplease have your survey ' s completed by friday , january 5 . please call me if\nyou have any questions or need me to help you complete the survey .\nthanks ,\nsuzanne\n( x 5 - 7341 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.153+0000", "entityId": 3785, "properties": {"text": "Subject: hpl meter # 981488 paris tenaska hpl\nduring the period of 12 / 1 / 99 through 12 / 3 / 99 , the above meter has recorded\nflow on the following days :\ndays mmbtus\n12 / 1 / 99 173\n12 / 3 / 99 39\n106\ndeal # 124400 was at this meter during november 1999 , but it expired on\n11 / 30 / 99 . currently , these volumes are being booked under the hpl strangers\ngas contract . logistics needs either ( 1 ) deal # 124400 extended , ( 2 ) new\ndeal , or ( 3 ) approval to write - off these volumes to unaccounted for gas .\n( please print , sign , and return original to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.158+0000", "entityId": 3786, "properties": {"text": "Subject: hpl meter # 981431 texas city marathon oil hpl\ndaren :\nduring the period of 5 / 1 / 2000 through 5 / 31 / 2000 , the above meter has recorded\nflow on the following days :\ndays mmbtus\n5 / 1 / 2000 942\n5 / 3 / 2000 68\n5 / 21 / 2000 65\n1 , 075\ndeal # 119068 was at this meter during april 2000 and again began 6 / 13 / 2000 ,\nbut did not exist from 5 / 1 / 2000 through 6 / 12 / 2000 . currently , these volumes\nare being booked under the hpl strangers gas contract . logistics needs\neither ( 1 ) deal # 119068 extended , ( 2 ) new deal , or ( 3 ) approval to write - off\nthese volumes to unaccounted for gas . ( please print , sign , and return\noriginal to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.163+0000", "entityId": 3787, "properties": {"text": "Subject: hpl meter # 981511 pt arthur refinery - chevron hpl\ndaren :\non 5 / 1 / 2000 recorded flow of 9 mmbtus from hpl ' s pipeline . deal # 222051 was\nat this meter during april 2000 , but the deal expired on 4 / 30 / 2000 .\ncurrently , this volume is being booked to the hpl stranger gas contract .\nlogistics needs either ( 1 ) deal # 222051 , ( 2 ) new deal , or ( 3 ) approval to\nwrite - off this volume to unaccounted for gas . ( please print , sign , and\nreturn original to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.168+0000", "entityId": 3788, "properties": {"text": "Subject: re : richardson volumes nov 99 and dec 99 meter 0987283\nnick ,\ni am not sure what happened to this volume . i cannot tell by the audit\ntrail , but there is a connection between meter hpl meter 987283 , and midt\n989807 . the volume you are referring to is on mid - tex pipeline under meter\n989807 . it it pathed as a point to point nom with no deal reference . i do\nnot think this is correct because the deal you reference show hplc as\npurchaser . the volume is in mips under meter 989807 , but the supply deal\nis set up on hpl meter 987283 , and the audit trail in sitara shows the deal\nwas moved from midt to hpl . get with thu when she returns to see if she\nknows anything about this .\nnick moshou @ enron\n12 / 20 / 2000 09 : 07 am\nto : sherlyn schumack / hou / ect @ ect\ncc :\nsubject : richardson volumes nov 99 and dec 99 meter 0987283\nhi sherlyn ,\ncould you check to see why the volumes at this meter were zeroed out for the\nabove months . we paid richardson back then and yesterday i noticed that we\nhave a recoverable amount for the entire amounts paid for each month . the\nsitara deal # s are 127856 for nov and 131729 for dec . let me know if you\nadditionall info from me .\nthanks ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.173+0000", "entityId": 3789, "properties": {"text": "Subject: hpl meter # 984179 hoff - heller unit # 22 cdp\ndaren :\nduring the period of 9 / 1 / 2000 through 9 / 13 / 2000 , the above meter has recorded\nflow on the following days :\ndays mmbtus\n9 / 1 / 2000 4 , 873\n9 / 2 / 2000 4 , 968\n9 / 3 / 2000 4 , 970\n9 / 4 / 2000 4 , 816\n9 / 5 / 2000 5 , 039\n9 / 6 / 2000 4 , 971\n9 / 7 / 2000 4 , 971\n9 / 8 / 2000 1 , 419\n9 / 13 / 2000 58\n36 , 085\ndeal # 135714 was at this meter , but the contract tied to this deal expired at\nthe end of august 2000 . currently , these volumes are being booked to the\nhpl strangers gas contract . logistics need either ( 1 ) purchase contract\n# 96008903 tied to deal # 135714 extended , ( 2 ) new deal & contract , or ( 3 )\napproval to write - off these volumes to unaccounted for gas . ( please print ,\nsign , and return original to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer ) / purchase contract\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.182+0000", "entityId": 3790, "properties": {"text": "Subject: hpl noms . for dec . 29 , 2000\n( see attached file : hplnl 229 . xls )\n- hplnl 229 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.188+0000", "entityId": 3791, "properties": {"text": "Subject: enron actuals for dec . 27 , 2000\ndec . 27 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\nlsp hpl katy i / c 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.193+0000", "entityId": 3792, "properties": {"text": "Subject: meters 3509 & 3533\ndaren ,\nin 12 / 00 , gary hanks asked me to add an additional nom to meters 3509 & 3533\nto make it total 2500 . i asked you about it and you said that you would\nprobably have to increase the reliant energy - entex nom ( deal 292249 ) . in the\nmeantime i added the additional volume to strangers gas so that gas control\ncould see a 2500 nom . i have been allocating all the gas to reliant for\n12 / 00 . for 1 / 01 , do you want to increase those noms ? let me know .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.197+0000", "entityId": 3793, "properties": {"text": "Subject: mobil beaumont refinery\njust wanted to thank everybody who works with mobil beaumont refinery .\nour former three year deal with them expired september 30 . last week , we\n( finally ) executed a new contract that keeps hpl as their largest natural gas\nsupplier through september 30 , 2002 . also , when their volumes go up in early\n2001 , they will once again be hpl ' s single largest industrial customer .\neverybody ' s hard work in keeping this customer happy has paid off . although\nthey can be very demanding to work with ( particularly now that they are part\nof exxon ) , they know that hpl provides them the best overall service .\nplease pass on thanks to anyone i ' ve left off the list who has worked with\nmobil beaumont refinery .\nhave a great 2001 .\nlee papayoti\n713 - 853 - 5923", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.202+0000", "entityId": 3794, "properties": {"text": "Subject: enron avails - jan , 2001 revised\nfyi\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 12 / 28 / 2000 10 : 27\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n12 / 28 / 2000 11 : 24 am\nto :\ncc :\nsubject : enron avails - jan , 2001 revised\nenron avails - jan , 2001 revised\n- enronavailsol 01 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.207+0000", "entityId": 3795, "properties": {"text": "Subject: january , 2001 devon availabilities . please call me at 405 - 228 - 4298\nif you have any questions\ni ' m sure you guys have this , but i ' ve been on vacation and wanted to make\nsure you all got it .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 12 / 28 / 2000 07 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n12 / 19 / 2000 05 : 19 pm\nto :\ncc :\nsubject : january , 2001 devon availabilities . please call me at 405 - 228 - 4298\nif you have any questions\njanuary , 2001 devon availabilities . please call me at 405 - 228 - 4298 if you\nhave any questions\n- enronavailsol 01 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.212+0000", "entityId": 3796, "properties": {"text": "Subject: tenaska iv gas\nare you going to make the price changes to the tenaska iv sale 384258 for\n10 / 00 and 11 / 00 that james details below ? right now , we are showing a short\npay of $ 351 , 201 . 49 for those two months .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 12 / 29 / 2000\n11 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames armstrong @ ect\n12 / 19 / 2000 10 : 31 am\nto : daren j farmer / hou / ect @ ect\ncc : megan parker / corp / enron @ enron , jody pierce / hou / ect @ ect , mike\nmazowita / corp / enron @ enron , garrick hill / hou / ect @ ect\nsubject : tenaska iv gas\ndaren , per review of the gas agreements between tenaska iv and\nwilliams / apache and our understanding of the agency agreement , i had a few\nitems i wanted to discuss with you ( in lieu of our meeting today that was\ncancelled ) :\n1 . looking at the october gas supply to the plant , i think tenaska iv should\nhave been charged at the contract prices with williams & apache ( i . e . 2 . 285 )\nand not at what the final price that was actualized per megan ' s summary -\n230 , 406 at $ 710 , 616 . 70 , price of $ 3 . 084 . if this volume was charged at\n2 . 285 the total would have been $ 526 , 477 . 71 , a difference of $ 184 , 138 . 99 .\n2 . looking at the november gas supply to the plant , tenaska iv was charged\n$ 2 . 91 per mmbtu , instead of $ 2 . 285 for volumes of 267 , 300 . at the $ 2 . 91\nprice , the total settlement price was $ 777 , 843 instead of $ 610 , 780 . 50 at\n2 . 285 , showing a difference of $ 167 , 062 . 50 .\ni reviewed the gas supply agreements and the williams gas price ( pg . 19 ) for\n2000 gas is 2 . 32 , which can be adjusted by the waha transportation adjustment\nif delivered at waha . this adjustment started in 1997 at $ . 03 per mmbtu and\nincrease by 5 % per year . thereby currently , the adjustment factor is at\n. 0347 , giving us a price of $ 2 . 2853 per mmbtu .\nin reviewing the apache gas agreement ( pg . 22 ) , i noticed that the gas price\nis 2 . 285 at waha & 2 . 315 at katy / carthage for 2000 . per review of the apache\ninvoices , it appears that we are not getting our gas at these points but at\nother places ( i . e . lomak - sterling & mendell cdp ) at a price of $ 2 . 175 . if\nenron has a separate agreement at these delivery points and can capture a\nmargin difference then that is upside to enron . however , i think the plant\nshould not be charged above the contract price of $ 2 . 285 .\nlooking at the daily gas that was scheduled to the plant for november and\noctober , i did not see that their use went over the contracted volumes from\nwilliams and apache of 45 , 000 mmbtu per day . therefore i don ' t think spot\nprices are part of the equation here . additionally , i recall from our\nmeeting last month that all enron makes on this deal is the agency fee of\n$ . 04 per mmbtu ( excluding the margin difference that enron has on apache gas\ndelivery points if my scenario above is correct ) .\nso based upon items 1 & 2 above , i am suggesting that tenaska iv adjust their\nnovember invoice owed to enron for gas used by the plant by the gas price\ndifferences showed above . therefore , i am planning to wire a payment of\n$ 484 , 234 . 03 ( see breakout below ) on friday , 12 / 22 , to enron on behalf of\ntenaska iv texas partners , ltd . for this activity .\nmonth plant gas price amount\nnovember 267 , 300 2 . 91 $ 777 , 843\nnovember adjustment $ ( 167 , 062 . 50 )\noctober adjustment $ ( 184 , 138 . 99 )\nnov . agency fee 1 , 350 , 000 . 04 $ 54 , 000\nsept . agency fee 98 , 813 . 04 $ 3 , 592 . 52\ntotal $ 484 , 234 . 03\ni discussed these issues with mike mazowita , rick hill & jody pierce before\nreaching this conclusion . should you have any different ideas or thoughts\nthat i am not covering , please call me at 3 - 7280 and we can discuss . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.217+0000", "entityId": 3797, "properties": {"text": "Subject: hpl noms - dec . 30 - 31 , 2000 and jan . 1 - 2 , 2001\n( see attached file : hplnl 230 . xls )\n( see attached file : hplnol 01 . xls )\n- hplnl 230 . xls\n- hplnol 01 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.222+0000", "entityId": 3798, "properties": {"text": "Subject: enron actuals for dec . 28 , 2000\ndec . 28 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\nlsp hpl katy i / c 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.227+0000", "entityId": 3799, "properties": {"text": "Subject: on - call notes\nplease see the attached file for on - call notes .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.233+0000", "entityId": 3800, "properties": {"text": "Subject: fw : calpine daily gas nomination\n> - - - - - original message - - - - -\n> from : ricky archer\n> sent : tuesday , january 02 , 2001 9 : 27 am\n> to : ' aimee . lannou @ enron . com '\n> cc : ' dfarmer @ enron . com ' ; ' mmccoy @ enron . com ' ; ' rcotten @ enron . com '\n> subject : calpine daily gas nomination\n>\n> >\n>\n>\n>\n> ricky a . archer\n> fuel supply\n> 700 louisiana , suite 2700\n> houston , texas 77002\n> 713 - 830 - 8659 direct\n> 713 - 830 - 8722 fax\n>\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.238+0000", "entityId": 3801, "properties": {"text": "Subject: january nominations at shell deer park\nfyi -\nthey did request 110 m / day , however , the load must have dropped off . i am\nchecking into this , and will email the findings .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 01 / 02 / 2001 07 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 12 / 19 / 2000 03 : 32 : 26 pm\nto : \" ' lamphier , gary ' \"\ncc : \" carter , john \" , \" ricks , ruth \" ,\nkyle . r . lilly @ enron . com , mary . poorman @ enron . com\nsubject : january nominations at shell deer park\ngary ,\njanuary 2001 nominations for gas delivery to shell deer park are as follows :\nfirm baseload - 110 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 35 , 000 mmbtu / d 40 , 000 mmbtu / d 35 , 000 mmbtu / d\non or about january 7 th we are currently planning on beginning our much\nanticipated scheduled turnaround work . natural gas demand is expected to\ndecrease with hpl ' s portion being 20 , 000 mmbtu / d coming primarily out of the\nhp / e station . this will leave total demand at 90 , 000 mmbtu / d for the\nremainder of the month .\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n> home page : http : / / rsweb\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.243+0000", "entityId": 3802, "properties": {"text": "Subject: re : dow trspt .\ni ' m assuming yes , but i don ' t really have anything to do with this one . any\ninsight gary or daren ?\nmary m smith\n01 / 02 / 2001 01 : 41 pm\nto : lauri a allen / hou / ect @ ect\ncc :\nsubject : dow trspt .\nthe dow k # 012 - 24525 - 202 was terminated 12 / 31 / 00 , therefore , a new k # was\nsetup ( 96054723 ) . my question is , does the rate of . 025 remain the same for\noasis katy to dow stratton ? let me know . thanks , mary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.247+0000", "entityId": 3803, "properties": {"text": "Subject: meter 1517\ndaren - meter 1517 has a nom of 0 / day for jan . it flowed about 5 . 400 on day\n1 . this is a valid flow . could you please extend the deal from dec . ( deal #\n506192 ) or create a new one ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.252+0000", "entityId": 3804, "properties": {"text": "Subject: tenaska iv 11 / 00\nall of the outside sales for 11 / 00 have been paid . we now need to forward\nthe cash to tenaska iv . the demand charge for deal 529856 should be\n$ 341 , 250 . 47 . i have attached my spreadsheet . the number is based on noms ,\nso when we receive the actuals i will send you a revised number .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.257+0000", "entityId": 3805, "properties": {"text": "Subject: announcing a new enron brown bag seminar - \" how to win a bowl game \"\nthe following seminar will be given several times this year . the\ndistinguished list of speakers is as follows :\nbryan hull\nchad landry\ntim blanchard\nbob cotten\na cameo appearance will be made by dr . mick walters , esq . of course , this\nseminar will be moderated by yours truly .\nsign up early , since there were so many texas teams in bowl games , and\ntherefore so many losers , the seminars are sure to fill up , rapidly .\np . love - i am sure it is little consolation , but at least you covered .\np . s . jody you better get with us soon and then fly immediately to miami\nto give this invaluable info to bobby stoops .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.262+0000", "entityId": 3806, "properties": {"text": "Subject: bowl games\nhi ,\n?\nam i to understand that not a single team in my adopted state won a bowl\ngame ?\n?\ni guess i will stay loyal to the cornhuskers as they seemed to handle being\npissed off about not playing in a better bowl . we need more meat than the\nbig 10 can throw out .\n?\nwell now it is down to next year again . . . . . . . . . . . . . . . . . . . . .\n?\ndid cole get enough trucks from santa . . . . . . . . . . . . . . . . . . . . . or did jake eat\nthem ? i ' m sure it was fun .\n?\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.268+0000", "entityId": 3807, "properties": {"text": "Subject: hpl noms for january 3 , 2001\n( see attached file : hplnol 03 . xls )\n- hplnol 03 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.272+0000", "entityId": 3808, "properties": {"text": "Subject: enron / hpl actuals for december 29 , 2000 - january 1 , 2001\ndecember 29 , 2000\nteco tap 30 . 000 / enron ; 120 . 000 / hpl gas daily\nls hpl lsk ic 30 . 000 / enron\ndecember 30 , 2000\nteco tap 120 . 000 / hpl gas daily\ndecember 31 , 2000\nteco tap 120 . 000 / hpl gas daily\njanuary 1 , 2001\nteco tap 30 . 000 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.280+0000", "entityId": 3809, "properties": {"text": "Subject: first deliveries - ranger oil , aspect resources , llc , and camden\nresources\nsee attached files", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.288+0000", "entityId": 3810, "properties": {"text": "Subject: re : january nominations at shell deer park\nfyi - i adjusted the tickets to reflect the volumes below .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 01 / 02 / 2001 09 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 01 / 02 / 2001 08 : 47 : 36 am\nto : \" ' mary . poorman @ enron . com ' \"\ncc : \" ' lamphier , gary ' \"\nsubject : re : january nominations at shell deer park\nmary ,\nwe have a 90 , 000 mmbtu / d first of the month nomination against our term\nbaseload contract and a 20 , 000 mmbtu / d spot swing contract for january . i\nassume that the 105 , 000 mmbtu / d demand request would be allocated 90 , 000\nmmbtu / d against the baseload contract and 15 , 000 mmbtu / d against the spot\nswing contract .\n> j . luther shankster\n>\n> energy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n> home page : http : / / rsweb\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.292+0000", "entityId": 3811, "properties": {"text": "Subject: hpl meter # 981295 hungerford grain company\ndaren :\non 6 / 16 / 99 , hpl recorded flow of 10 mmbtus from hpl ' s pipeline . the gas\nmeasurement dept . verified the accuracy of this flow . no deals were place\nfor the month prior or the month after . currently , this volume is being\nrecorded to hpl ' s strangers gas contract . logistics needs approval to\nwrite - off this volumes to unaccounted for gas loss . ( please print , sign , and\nreturn original to clem cernosek ) .\napproval to write - off the volume to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.297+0000", "entityId": 3812, "properties": {"text": "Subject: hpl nom for january 4 , 2001\n( see attached file : hplnol 04 . xls )\n- hplnol 04 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.302+0000", "entityId": 3813, "properties": {"text": "Subject: loan from midcon at katy tailgate\nfyi -\ni spoke with patsy , per daren ' s request , regarding a swap with midcon texas .\npatsy agreed to lend us the gas we need at the meter , rather that swap with\nus . the net effect , after they pay back what hpl parked on them , according\nto patsy , is a lend of 12 , 276 mmbtu ' s . mtp is going to confirm an addition\n16 , 903 total to hpl . please let me know if you have any questions .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.306+0000", "entityId": 3814, "properties": {"text": "Subject: hpl meter # 986679 hughes # 1 cmp\ndaren :\nduring the months of october 1999 and november 1999 , gas flowed into hpl ' s\npipeline at the above meter . this gas was previously transported by eog\nresources to mobil ( beaumont ) with the excess being purchased . the deal\nthat eog resources transport contract ( 012 - 36702 - 02 - 001 ) moved gas to mobil\nbeaumont expired a the end of september , 1999 , but gas continued to flow into\nhpl ' s pipeline . currently , these volumes are being recorded to the hpl\nstrangers gas contract . logistics needs a deal to purchase these volumes .\ndeal / deal ticket # / customer ( seller / buyer ) / purchase contract\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.310+0000", "entityId": 3815, "properties": {"text": "Subject: maintenance work at meters 584 & 6040\nper my conversation today with lorraine ibrom @ pg & e ( el paso ) , she has\ninformed me that some maintenance work is being done on the yeary ( sp ? ) 20\nin . line . this will affect meters 6040 pg & e riverside and 584 pg & e agua\ndulce , beginning at 11 : 59 p . m . on january 8 , 2001 and ending at 9 : 00 a . m . on\njanuary 12 , 2001 . she has informed me that for this time period there should\nbe no nominations at these points . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.315+0000", "entityId": 3816, "properties": {"text": "Subject: re : tenaska iv gas\nyes , it will work . thanks . we still need to look at the apache and williams\ndeals . there are pricing and demand fee issues . i can forward you the\nemails if you need them .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.320+0000", "entityId": 3817, "properties": {"text": "Subject: enron / hpl actuals for january 2 , 2001\nteco tap 30 . 000 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.326+0000", "entityId": 3818, "properties": {"text": "Subject: kinder morgan ( cannon ) sale change\nfyi - - -\nplease note that 7 , 305 of the kinder morgan sale was moved from hardy ( meter\n68 ) to flagstaff ( meter 1606 ) intraday on the 4 th , and carried forward\nthrough the end of the month due to pressure problems . this change was\nconfirmed with patsy shimek @ kinder morgan .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.330+0000", "entityId": 3819, "properties": {"text": "Subject: your amazon . com order ( # 104 - 9670681 - 0325567 )\nhello from amazon . com .\nwe are sorry to report that we are having difficulty\ncompleting your order . this typically means we ' re experiencing a\ndelay in obtaining this item from our supplier , or in rare instances ,\nthe item may have been too damaged for us to send .\n\" dewalt dw 972 k - 2 12 volt 3 / 8 \" adjustable clutch drill / driver kit \"\nitem delayed 1 - 2 weeks .\nwe will proceed with your order for this item .\nsince our policy is to charge for items at the time of shipment , you\nhave not been charged for this item at this time . any other items\nyou may have ordered that are already on hand will be shipping\nseparately , and your total shipping charges will not be affected .\nfor the latest information about your order , or if you would prefer to\ncancel the delayed items , please visit the your account section of\nour website ( http : / / www . amazon . com / your - account ) . you can also reach\nyour account by clicking on the link in the top right corner of any\npage on our website . through your account , you can view your order\nstatus , cancel unshipped items , and change the payment method ,\naddresses and shipping options for any unshipped items .\nwe apologize for any inconvenience caused by this delay .\nthanks for shopping at amazon . com , and we hope to see you again !\nsincerely ,\ncustomer service department\namazon . com\nhttp : / / www . amazon . com\nearth ' s biggest selection", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.335+0000", "entityId": 3820, "properties": {"text": "Subject: hpl nom for january 5 , 2001\n( see attached file : hplnol 05 . xls )\n- hplnol 05 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.339+0000", "entityId": 3821, "properties": {"text": "Subject: enron / hpl actuals for january 3 , 2001\nteco tap 7 . 500 / enron\nls hpl lsk ic 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.344+0000", "entityId": 3822, "properties": {"text": "Subject: dec 2000 - meter 1351\ndaren - there was flow at meter 1351 for dec 2000 . it flowed every day , with\nan average flow of 151 / day . the last deal associated with this meter was\n274772 in october ' 00 . it also flowed in november with no nom , it is\ncurrently on stranger ' s gas . can you please take a look at this ? thanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.348+0000", "entityId": 3823, "properties": {"text": "Subject: jan ' 01\ndaren - there is flow at meter 1386 for jan 1 - 3 . the average flow is\n828 / day . the last deal associated with this meter is 150325 , dec . 1 - 4 ,\n2000 . the counterparty is hampshire . could you please look at this and let\nme know if you put a deal in for these days ?\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.353+0000", "entityId": 3824, "properties": {"text": "Subject: tenaska iv transport 10 / 00\ni took a look at the transport for txu lone star for tenaska iv for 10 / 00 .\nwe mostly have price differences , but one deal needs some days added . let me\nknow if you need copies of the invoices . the meters below are delivery\nmeters . i wasn ' t sure what the receipt meters would be .\ndeal 452491 , meter 20014903 need to add days 24 - 26 and 28 - 31\nneed to check rate - we show $ 0 . 01 and we were billed $ 0 . 02\ndeal 452491 , meter 25000200 need to check rate - we show $ 0 . 02 and we were\nbilled $ 0 . 10\ndeal 452475 , meter 25000200 need to check rate - we show prices from $ 0 . 005\nto $ 0 . 02\nand we were billed $ 0 . 11\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.357+0000", "entityId": 3825, "properties": {"text": "Subject: tenaska iv 11 / 00\ni am having trouble with the transport deal for the tenaska iv contracts on\nlone star . we have deal 452491 in sitara for meter 20014804 at a $ 0 . 01\ntransport rate . we received the statement from txu lone star and it does not\nagree with our deal . they are billing for meter 25000200 at $ 0 . 10 and meter\n20014903 at $ 0 . 02 . these meters relate to the tenaska iv sale deal 384258\nand the tenaska marketing deal 459898 , respectively . should our deal match\nwhat txu is billing or is there another deal that i am missing ? i haven ' t\nworked with transport very much , so i could be confused . i think we have\nthis problem with oct 2000 , also , but i have not reviewed it yet . i am going\nto look at it this afternoon . tenaska iv has already reimbursed us for the\ntxu transport , so we will need to pay this next week .\nalso , now that we have the actuals for nov 2000 , we need to update the demand\nfees to reflect the correct volumes . barring any changes , i have listed the\nadjustments below and attached my spreadsheet . the unify adjustments will be\nover by about $ 20 . 00 from the spreadsheet . i thought it would be better have\nthe cleburne desk at zero , than to leave a balance .\n1 . deal 529856 - change 11 / 1 demand fee from $ 341 , 250 . 47 to $ 493 , 365 . 74\n( difference $ 152 , 115 . 27 )\n2 . deal 529856 - change 11 / 2 demand fee from $ 167 , 062 . 50 to $ 159 , 721 . 55\n( difference $ 7 , 340 . 95 )\n3 . deal 514353 - change agency fee volume from 45 , 000 / day to 45 , 016 / day\n( difference $ 19 . 72 )\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.362+0000", "entityId": 3826, "properties": {"text": "Subject: cm - buffett winter tour dates\ncoconut modem special edition\njanuary 2001\njimmy buffett winter tour 2001\nfebruary :\n8 th - orlando , fl - waterhouse center\n10 th - ft . lauderdale , fl - national car rental center\n13 th - dallas , tx - reunion arena\n15 th - houston , tx - compaq center\n17 th - greensboro , nc - coliseum\n20 th - charlotte , nc - coliseum\n22 nd - tampa , fl - ice palace\n24 th - west palm beach , fl - mars music amphitheater\nneither karen or i have any idea when these tickets go on sale . please\ncontact the venue for that information . all dates are official , if any more\nare released we ' ll let you know .\nbob\ncoconut modem staff :\nkaren coyne - writer / editor - karen @ coconutmodem . com\nbob segel - publisher - bob @ coconutmodem . com\nthe coconut modem reserves the right to edit all submissions for length or\ncontent . please email all text or photo submissions to\nsubmissions @ coconutmodem . com\nthe coconut modem copyright 2000 , all rights reserved .\n33852 del obispo st . # 28\ndana point , ca 92629\nfax : ( 949 ) 388 - 6747\nto view past issues of the cm please check the archive link at our web site :\nhttp : / / www . coconutmodem . com\nto subscribe or unsubscribe please visit our web site at\nhttp : / / www . coconutmodem . com .\nif you have any questions please feel free to email bob at\nbob @ coconutmodem . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.366+0000", "entityId": 3827, "properties": {"text": "Subject: hpl noms for january 6 , 2001\n( see attached file : hplnol 06 . xls )\n- hplnol 06 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.373+0000", "entityId": 3828, "properties": {"text": "Subject: hpl meter # 985225 freeport offshore - rutherford\nkim :\neffective 7 / 1 / 2000 the volumes of gas that were previously purchased from\ncinergy under contract # 96017060 should be allocated and purchased under the\nfairways contract . per vance taylor , the cinergy contract was terminated\n6 / 30 / 2000 ,\nif you have any questions , please call .\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.377+0000", "entityId": 3829, "properties": {"text": "Subject: martin luther king day\ntom has informed me that we will not be working on monday , january 15 th for\nmartin luther king day . it is both an enron holiday and a nymex holiday , so\nhave a nice , 3 - day weekend !\nlaura", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.385+0000", "entityId": 3830, "properties": {"text": "Subject: discussion january 10\nwe ' re baaaaaack ! ? here is an idea for this upcoming week . ? you ' ll probably\nwant to spend some time catching up with you kids as well . ? have fun !\n?\nbobby\n- neon opening lesson . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.392+0000", "entityId": 3831, "properties": {"text": "Subject: re : tgp sabine\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward d gottlob / hou / ect on 01 / 08 / 2001\n11 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames mckay\n01 / 08 / 2001 10 : 39 am\nto : edward d gottlob / hou / ect @ ect\ncc :\nsubject : re : tgp sabine\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james mckay / hou / ect on 01 / 08 / 2001 10 : 39\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sanders , layne \" on 01 / 08 / 2001 10 : 04 : 53 am\nto : \" weir , gordon r . \"\ncc : \" coffey , ryan k . \" , \" ' james mckay ' \"\n, operations control center\nsubject : re : tgp sabine\nat this time i would like to keep it at 40 . 0 / day . we will work on trying to\ntake payback . if the nominations to tgp go down from transco at starks then\ntgp can easily take more from cig at sabine .\n> - - - - - original message - - - - -\n> from : weir , gordon r .\n> sent : monday , january 08 , 2001 9 : 36 am\n> to : sanders , layne\n> cc : coffey , ryan k . ; ' james mckay ' ; operations control center\n> subject : tgp sabine\n>\n> layne ,\n> cig would like to continue scheduling & delivering gas to tgp at\n> sabine . this point is good financially for both hpl & cig . cig owes tgp\n> approximately 60 , 000 at sabine . we would like to work this off over the\n> next week plus have a 40 , 000 or higher nomination at this point . would\n> you look at your system to see what adjustments could be made to\n> accommodate this . advise me of your suggested nomination at this point .\n> your assistance would be appreciated .\n>\n> thank you\n> gordon\nthis email and any files transmitted with it from el paso\nenergy corporation are confidential and intended solely\nfor the use of the individual or entity to whom they are\naddressed . if you have received this email in error\nplease notify the sender .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.397+0000", "entityId": 3832, "properties": {"text": "Subject: hpl meter # 987195 tatton central point\ndaren :\non 8 / 1 / 99 recorded flow of 9 mmbtus from hpl ' s pipeline . currently , this\nvolume is being booked to the hpl strangers gas contract . logistics needs\neither ( 10 deal issued , or ( 2 ) approval to write - off this volume to\nunaccounted for gas . ( please print , sign , and return original to clem\ncernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.402+0000", "entityId": 3833, "properties": {"text": "Subject: hpl meter # 986563 texaco fee c / p\ndaren :\nduring the period of 12 / 1 / 99 through 3 / 31 / 00 gas flowed into hpl ' s pipeline\nat the above meter . the gas volumes that flowed are as follows :\n12 / 1 / 99 - 12 / 31 / 99 1 , 457 mmbtus\n01 / 1 / 00 - 01 / 31 / 00 49 mmbtus\n02 / 1 / 00 - 02 / 29 / 00 7 mmbtus\n03 / 1 / 00 - 03 / 31 / 00 4 mmbtus\n1 , 517 mmbtus\nprior to 12 / 1 / 99 , the volumes were being purchased from high sierra operating\nllc under contract # 96003435 deal # 26611 which have terminated . currently ,\nlogistics has these volumes recorded to hpl stranger gas contract . in order\nto correct this , hpl logistics needs either a new deal to record these\nvolumes which have flowed into hpl ' s pipeline , or logistics needs approval to\nwrite - off these volumes to unaccounted for gas loss . ( please print , sign ,\nand return the original to clem cernosek ) .\ndeal / deal ticket # / customer ( buyer / seller )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.408+0000", "entityId": 3834, "properties": {"text": "Subject: copano p / l 01 / 00 - s 93481\ndaren , i ' m looking at s 93481 for 01 / 00 . 3 , 461 mmbtu was scheduled to copano\np / l in 02 / 00 and the counterparty was paid . in 05 / 00 the volumes were\nreversed from this deal . would you be able to tell why they were reversed ?\ni ' m trying to determine if this is a valid recoverable item . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.412+0000", "entityId": 3835, "properties": {"text": "Subject: hpl nom for january 9 , 2001\n( see attached file : hplnol 09 . xls )\n- hplnol 09 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.417+0000", "entityId": 3836, "properties": {"text": "Subject: enron / hpl actuals for january 5 - 7 , 2001\njanuary 5 , 2001\nteco tap 60 . 000 / enron\njanuary 6 , 2001\nno flow\njanuary 7 , 2001\nteco tap 60 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.421+0000", "entityId": 3837, "properties": {"text": "Subject: adjusted wellhead volumes - january , 2001\nplease see attached file .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.427+0000", "entityId": 3838, "properties": {"text": "Subject: revised spreadsheet\nnew additions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.432+0000", "entityId": 3839, "properties": {"text": "Subject: hpl meter # 985892 south katy gas unit no . 2 # 1\ndaren :\nduring the month of september and october 2000 , gas flowed into hpl ' s\npipeline at the above meter that is owned by duke energy trading and\nmarketing , llc . prior to september 2000 , the gas was purchased under\ncontract # 960439646 , and deal # 133196 that expired on 8 / 31 / 2000 . effective\n11 / 1 / 2000 , the gas was again purchased from duke under contract # 96021934 ;\ndeal # 466305 , but this deal expires on 11 / 30 / 2000 .\ncurrently , logistic has september and october 2000 volumes recorded to hpl\nstrangers gas contract . in order to correct this , hpl logistics needs either\n( 1 ) deals # 133196 or # 466305 extended to cover september and october 2000 ,\n( 2 ) a new deal to cover september and october 2000 , or ( 3 ) logistics needs\napproval to write - off these volumes to unaccounted for gas loss . ( print ,\nsign , and return the original to clem cernosek ) .\ndeal / deal ticket # / customer ( buyer / seller )\nor\napproval to write - off the volumes to unaccounted for gas loss\nin addition , since deal # 466305 expires on 11 / 30 / 2000 and gas is still\nflowing , logistics needs either ( 1 ) deal # 466305 extended , or ( 2 ) a new deal\nto cover december 2000 and any other future months that this production is\nflowing into hpl ' s pipeline .\n_ _ _ _ _ _ _ _ _ _ _ _ _\nnew deal #\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.438+0000", "entityId": 3840, "properties": {"text": "Subject: re : copano p / l 01 / 00 - s 93481\ncynthia / daren :\nkim vaughn has taken over all of kathy ' s meters . i will look at this issue\nwith kim since she is \" new \" .\nfred\nfrom : cynthia hakemack 01 / 08 / 2001 04 : 00 pm\nto : fred boas / hou / ect @ ect\ncc : charles howard / na / enron @ enron , charlene richmond / hou / ect @ ect\nsubject : re : copano p / l 01 / 00 - s 93481\nfred , can you help with this since kathy isn ' t here anymore ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cynthia hakemack / hou / ect on 01 / 08 / 2001\n03 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n01 / 08 / 2001 03 : 54 pm\nto : cynthia hakemack / hou / ect @ ect\ncc :\nsubject : re : copano p / l 01 / 00 - s 93481\nthis is a call out meter . i think the best person to help you would be kathy\nbenedict in volume management .\nd\nfrom : cynthia hakemack 01 / 08 / 2001 03 : 43 pm\nto : daren j farmer / hou / ect @ ect\ncc : charles howard / na / enron @ enron , charlene richmond / hou / ect @ ect\nsubject : copano p / l 01 / 00 - s 93481\ndaren , i ' m looking at s 93481 for 01 / 00 . 3 , 461 mmbtu was scheduled to copano\np / l in 02 / 00 and the counterparty was paid . in 05 / 00 the volumes were\nreversed from this deal . would you be able to tell why they were reversed ?\ni ' m trying to determine if this is a valid recoverable item . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.446+0000", "entityId": 3841, "properties": {"text": "Subject: dec 00\ndaren - meter 5192 flowed 8 dth on 12 / 19 , 33 dth on 12 / 20 and 2 dth on\n12 / 29 . the last deal for this meter was 454057 in nov 00 . could you please\nextend this deal for these 3 days or create a new one ? please let me know .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.451+0000", "entityId": 3842, "properties": {"text": "Subject: meter 6387 - dec 00\ndaren - meter 6387 for dec . 00 has flow with no nom . avg flow is 273 / day .\nlast deal associated with this meter was 519467 in nov . 00 for duke energy\ntrading & mktg . there is also a little bit of flow on 1 / 1 and 1 / 2 . please\nlet me know if you create a new deal or extend the current one .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.456+0000", "entityId": 3843, "properties": {"text": "Subject: re : hpl meter # 985892 south katy gas unit no . 2 # 1\nclem - - - the trader said this deal needed to be renegotiated , and i am waiting\nto hear what happened . . . . i sent him an email today to remind him that i need\nan answer a . s . a . p . . . . . . i ' ll let you know as soon as i hear .\nthanks ,\nmark\nx 33396\nclem cernosek @ ect\n01 / 09 / 2001 12 : 09 pm\nto : daren j farmer / hou / ect @ ect\ncc : mark mccoy / corp / enron @ enron , edward terry / hou / ect @ ect\nsubject : hpl meter # 985892 south katy gas unit no . 2 # 1\ndaren :\nduring the month of september and october 2000 , gas flowed into hpl ' s\npipeline at the above meter that is owned by duke energy trading and\nmarketing , llc . prior to september 2000 , the gas was purchased under\ncontract # 960439646 , and deal # 133196 that expired on 8 / 31 / 2000 . effective\n11 / 1 / 2000 , the gas was again purchased from duke under contract # 96021934 ;\ndeal # 466305 , but this deal expires on 11 / 30 / 2000 .\ncurrently , logistic has september and october 2000 volumes recorded to hpl\nstrangers gas contract . in order to correct this , hpl logistics needs either\n( 1 ) deals # 133196 or # 466305 extended to cover september and october 2000 ,\n( 2 ) a new deal to cover september and october 2000 , or ( 3 ) logistics needs\napproval to write - off these volumes to unaccounted for gas loss . ( print ,\nsign , and return the original to clem cernosek ) .\ndeal / deal ticket # / customer ( buyer / seller )\nor\napproval to write - off the volumes to unaccounted for gas loss\nin addition , since deal # 466305 expires on 11 / 30 / 2000 and gas is still\nflowing , logistics needs either ( 1 ) deal # 466305 extended , or ( 2 ) a new deal\nto cover december 2000 and any other future months that this production is\nflowing into hpl ' s pipeline .\n_ _ _ _ _ _ _ _ _ _ _ _ _\nnew deal #\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.461+0000", "entityId": 3844, "properties": {"text": "Subject: welcome to expedia . com !\nwelcome to expedia . com , your personal travel service on the web !\nyour member id is : jdfarmerl\nexpedia . com gives you a powerful set of tools to plan and shop for\nairline tickets , hotel reservations , car reservations , and vacation\npackages . the service is free ! just visit http : / / www . expedia . com , and begin\nyour travels .\nnow is a good time to make note of your password . you may also want to\nsave a copy of this message as a record of your member id . you will\nneed your password and member id when you use some of the services on\nthe site .\nwe are committed to providing you with great travel service . here is\nwhat expedia . com is doing to serve you :\n* we have agents standing by at 1 - 800 - expedia or 1 - 404 - 728 - 8787 24 hours a day\n* your privacy is assured with us\n* we promise to respond to your e - mails and phone calls\ncheck our customer bill of rights for more details about our service\npromises : http : / / www . expedia . com / daily / service / bill . asp\nhere are some of the ways you can use expedia . com to be sure of\ngetting the right trip at the right price :\n* reserve and purchase airline tickets :\n* reserve hotel rooms :\n* reserve rental cars :\n* shop for vacations : http : / / www . expedia . com / daily / deals / etn _ vacation . asp\n* shop for cruises : http : / / www . expedia . com / daily / deals / etn _ cruises . asp\n* subscribe to fare tracker for a weekly update on low fares to your\nfavorite destinations :\n* research more than 375 destinations in the destination guide :\nhttp : / / www . expedia . com / wg\n* track all of your frequent flyer miles in one convenient place :\n* catch up on the latest in travel news , weather , and intriguing places\nto go\nthanks again for choosing expedia . com as your personal travel service .\nexpedia . com travel team\nthe right trip at the right price\nhttp : / / www . expedia . com\np . s . we look forward to hearing what you think of expedia . com . you can\ngive us feedback by sending e - mail to mailto : newideas @ expedia . com\nor by using our online comment form :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.466+0000", "entityId": 3845, "properties": {"text": "Subject: hpl nom for january 10 , 2001\n( see attached file : hplnol 10 . xls )\n- hplnol 10 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.471+0000", "entityId": 3846, "properties": {"text": "Subject: revised revised spreadsheet\nswing deal number has been added for chevron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.477+0000", "entityId": 3847, "properties": {"text": "Subject: dec 2000 prod : panther pipeline demand charge\nplease let me know if this is a vaild demand charge .\nthe deal is under a gtc contract and daren indicated that he was not aware of\nthis deal unless it has something to do with entex .\nfyi the volume flow at this meter ( # 981598 ) for dec 2000 was zero .\nplease advise - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.481+0000", "entityId": 3848, "properties": {"text": "Subject: re : meter 6387 - dec 00\ndeal # 565701 - one year deal out of dec -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.486+0000", "entityId": 3849, "properties": {"text": "Subject: re : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\nhere you go .\ndaren j farmer @ ect\n01 / 10 / 2001 02 : 41 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\ncan you send me a copy of pan energy ' s spreadsheet for sept , also ?\nd\nenron north america corp .\nfrom : megan parker @ enron 01 / 10 / 2001 02 : 07 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\ndarren :\ni think marta is referring to the supply deal 391119 on 9 / 6 for 10 , 545 . we\ndo not have a price of gd + $ 0 . 04 . we have if + $ 0 . 04 . please check this\nprice . also , they seem to be missing the overdelivery calculation in their\nspreadsheet . attached is the september 2000 spreadsheet .\nmegan\ndaren j farmer @ ect\n01 / 10 / 2001 10 : 58 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nmegan ,\nplease see the message below . the pricing on deal 391125 was incorrect ;\nshould be hsc gd - . 04 . i corrected the deal ticket .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 10 / 2001\n10 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmkhenderson @ duke - energy . com on 01 / 10 / 2001 10 : 42 : 30 am\nto : dfarmer @ enron . com\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nplease pass the following information to meagan parker . her pricing isn ' t\nmatching .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n01 / 10 / 2001 10 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 03 : 39 pm\nto : dfarmer @ enron . com , john a . bretz / gcs / cec / pec @ pec\ncc : john a . bretz / gcs / cec / pec @ pec , donna j dobb / houston / pefs / pec @ pec ,\nsharon beemer / ftworth / pefs / pec @ pec\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\nas follow - up documentation for the intraday sale on 9 / 6 / 00 , the following\nstates the pricing for the redeliveries :\n8500 mmbtu from fuels cotton valley priced per paragraph la of the contract\nprice ( per mmbtu ) section in the transaction agreement .\n10955 mmbtu at etgs carthage hub tailgate priced per paragraph lc of the\ncontract price ( per mmbtu ) section in the transaction agreement\n10545 mmbtu at cipco / mobile beaumont which is priced differently than\nparagraph lb of the contract price ( per mmbtu ) section in the transaction\nagreement . the price for 10545 mmbtu for 9 / 6 / 00 will be hsc daily plus\n$ . 04 / mmbtu .\nplease confirm the above by replying to this e - mail message .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 06 / 2000 01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 09 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , donna c .\nspencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec ,\nconnie wester / easttexas / pefs / pec @ pec\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\ndeliveries continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n10955 to hpl ' s cartwheel agreement at carthage\n10545 at mobil beaumont\neffective for 9 / 7 / 00 , deliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.494+0000", "entityId": 3850, "properties": {"text": "Subject: re : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\ndarren :\ni think marta is referring to the supply deal 391119 on 9 / 6 for 10 , 545 . we\ndo not have a price of gd + $ 0 . 04 . we have if + $ 0 . 04 . please check this\nprice . also , they seem to be missing the overdelivery calculation in their\nspreadsheet . attached is the september 2000 spreadsheet .\nmegan\ndaren j farmer @ ect\n01 / 10 / 2001 10 : 58 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nmegan ,\nplease see the message below . the pricing on deal 391125 was incorrect ;\nshould be hsc gd - . 04 . i corrected the deal ticket .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 10 / 2001\n10 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmkhenderson @ duke - energy . com on 01 / 10 / 2001 10 : 42 : 30 am\nto : dfarmer @ enron . com\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nplease pass the following information to meagan parker . her pricing isn ' t\nmatching .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n01 / 10 / 2001 10 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 03 : 39 pm\nto : dfarmer @ enron . com , john a . bretz / gcs / cec / pec @ pec\ncc : john a . bretz / gcs / cec / pec @ pec , donna j dobb / houston / pefs / pec @ pec ,\nsharon beemer / ftworth / pefs / pec @ pec\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\nas follow - up documentation for the intraday sale on 9 / 6 / 00 , the following\nstates the pricing for the redeliveries :\n8500 mmbtu from fuels cotton valley priced per paragraph la of the contract\nprice ( per mmbtu ) section in the transaction agreement .\n10955 mmbtu at etgs carthage hub tailgate priced per paragraph lc of the\ncontract price ( per mmbtu ) section in the transaction agreement\n10545 mmbtu at cipco / mobile beaumont which is priced differently than\nparagraph lb of the contract price ( per mmbtu ) section in the transaction\nagreement . the price for 10545 mmbtu for 9 / 6 / 00 will be hsc daily plus\n$ . 04 / mmbtu .\nplease confirm the above by replying to this e - mail message .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 06 / 2000 01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 09 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , donna c .\nspencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec ,\nconnie wester / easttexas / pefs / pec @ pec\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\ndeliveries continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n10955 to hpl ' s cartwheel agreement at carthage\n10545 at mobil beaumont\neffective for 9 / 7 / 00 , deliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.502+0000", "entityId": 3851, "properties": {"text": "Subject: intraday eastrans nominations change for 9 / 6 / 00 and nomination for\n9 / 7 / 00\nplease pass the following information to meagan parker . her pricing isn ' t\nmatching .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n01 / 10 / 2001 10 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 03 : 39 pm\nto : dfarmer @ enron . com , john a . bretz / gcs / cec / pec @ pec\ncc : john a . bretz / gcs / cec / pec @ pec , donna j dobb / houston / pefs / pec @ pec ,\nsharon beemer / ftworth / pefs / pec @ pec\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\nas follow - up documentation for the intraday sale on 9 / 6 / 00 , the following\nstates the pricing for the redeliveries :\n8500 mmbtu from fuels cotton valley priced per paragraph la of the contract\nprice ( per mmbtu ) section in the transaction agreement .\n10955 mmbtu at etgs carthage hub tailgate priced per paragraph lc of the\ncontract price ( per mmbtu ) section in the transaction agreement\n10545 mmbtu at cipco / mobile beaumont which is priced differently than\nparagraph lb of the contract price ( per mmbtu ) section in the transaction\nagreement . the price for 10545 mmbtu for 9 / 6 / 00 will be hsc daily plus\n$ . 04 / mmbtu .\nplease confirm the above by replying to this e - mail message .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n09 / 06 / 2000 01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n09 / 06 / 2000 09 : 58 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , bruce mcmills / ftworth / pefs / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , donna c .\nspencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , dora j .\nlevy / gcs / cec / pec @ pec , briley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , sharon beemer / ftworth / pefs / pec @ pec ,\nconnie wester / easttexas / pefs / pec @ pec\ncc :\nsubject : intraday eastrans nominations change for 9 / 6 / 00 and nomination\nfor 9 / 7 / 00\ndeliveries continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n10955 to hpl ' s cartwheel agreement at carthage\n10545 at mobil beaumont\neffective for 9 / 7 / 00 , deliveries to eastrans continue to be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n8500 from fuels cotton valley\n21500 to hpl ' s cartwheel agreement at carthage", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.508+0000", "entityId": 3852, "properties": {"text": "Subject: your delta air lines confirmation # xclmdz\nthis is a post only e - mail . please do not respond to this message .\ndear daren farmer ( skymiles # 2341930101 ) :\nthank you for your ticket purchase on delta . com . below is the\nitinerary information for your air travel . we suggest that you\nsave this document for reference should you need to contact us\nconcerning your tickets or reservations .\npurchase information\nyour delta air lines confirmation number is : xclmdz\nyou have purchased airline tickets for the following passengers :\nskymiles #\nmr . daren farmer 2341930101 $ 255 . 00\nmr . gary hanks 2339077915 $ 255 . 00\ntotal price : $ 510 . 00\nyour credit card will be charged the amount stated above for your\nairline tickets . unless noted , all fares and rates are quoted in u . s .\ndollars .\nitinerary information\nflight number : delta 1895\ndeparts : houston ( bush intercontl ) ( iah ) 15 feb 01 at 02 : 40 pm\narrives : las vegas ( las ) 15 feb 01 at 06 : 10 pm\nseats : not assigned and not assigned\nflight number : delta 1800\ndeparts : las vegas ( las ) 18 feb 01 at 01 : 10 pm\narrives : salt lake city ( slc ) 18 feb 01 at 03 : 28 pm\nseats : 32 c and 32 d\nflight number : delta 1180\ndeparts : salt lake city ( slc ) 18 feb 01 at 04 : 35 pm\narrives : houston ( bush intercontl ) ( iah ) 18 feb 01 at 08 : 30 pm\nseats : 18 d and 18 e\nyour credit card will be billed $ 510 . 00 and your electronic ticket\nreceipt / itinerary card mailed to :\nmr . daren farmer\n5519 clarkston\nspring , tx 77379\nunited states\nphone : 2812511793\nemail : dfarmer @ enron . com\nif you have questions or concerns , please call delta air lines at 800\n221 - 1212 with your delta confirmation number available .\nfor non - u . s . based customers , please access\nthe phone number of the delta air lines reservations office for your country .\nthank you for making your travel reservations at delta . com .\nlodging reservations - provided worldwide by placestostay . com\nnow that you ' ve purchased your air travel at delta . com , check in at\nplacestostay . com to find your accomodations . placestostay . com is an easy way\nto reserve a room at one of 15 , 000 hotels , inns , resorts , and bed and\nbreakfasts around the world .\njust visit : http : / / delta . placestostay . com\nthis e - mail message and its contents are copyrighted and are\nproprietary products of delta air lines , inc . any unauthorized use ,\nreproduction , or transfer of the message or its content , in any medium ,\nis strictly prohibited .\nyou have received this e - mail because you elected to take advantage\nof delta ' s itinerary confirmation e - mail program . if you would like to\ntake advantage of other delta e - mail programs featuring special fares\nand promotions , please visit :\nthis is a post - only e - mail . please do not respond to this message .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.512+0000", "entityId": 3853, "properties": {"text": "Subject: registration confirmation from spinner . com\nthank you for joining spinner . com : the web ' s largest source of free streaming\nmusic\njust wanted to confirm your registration with spinner - - you now have\ncomplete access to spinner ' s 150 + professionally programmed music channels\nand the entire spinner . com website . and just to remind you , the player , the\nwebsite , and ( most importantly ! ) the music are all totally free .\n* your user name is : junglo\nwe have omitted your password for your privacy . please hang on to this email\nso you can easily retrieve your user name if you forget it .\n* forget your password ? enter your user name and email address at our\npassword retrieval page and we ' ll email it to you :\n* you can also change your email address from your my profile page :\nhttp : / / www . spinner . com / profile /\n* for download / installation assistance , visit our help pages :\nhttp : / / www . spinner . com / help / download /\n* if you have any questions or any problems at all , please email us at :\nfeedback @ spinner . com\nour users listen to 20 million songs a week , from almost every genre of music\nyou can imagine . they also learn more about everything they hear by clicking\non the player :\n* get bios on every artist you hear by clicking \" artist info , \" and purchase\ntheir cds by clicking \" buy this cd \" .\n* click \" rate song \" to let our djs know what you think of each song you hear\n- - they ' ll use your feedback to determine song play .\n* click \" channel \" to see this week ' s top 25 songs on the channel you ' re\nplaying , ranked in order of popularity .\n* for even more great info on our channels and music , visit spinner . com . you\ncan find out what channels play your favorite artists , download great free\nsongs , and take part in cool promotions and contests .\nthanks again for registering . if you like what you hear , tell a friend about\nspinner .\nenjoy the music !\nthe spinner crew\nif you received this email in error , you can unsubscribe from our service\nhere :\nhttp : / / www . spinner . com / unsubscribe /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.516+0000", "entityId": 3854, "properties": {"text": "Subject: enron / hpl actuals for january 9 , 2001\nteco tap 27 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.521+0000", "entityId": 3855, "properties": {"text": "Subject: hpl nom for january 11 , 2001\n( see attached file : hplnol 11 . xls )\n- hplnol 11 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.525+0000", "entityId": 3856, "properties": {"text": "Subject: bob ,\ni want to thank you for your response time in getting cody a draft of the\namendment for them to look at this morning . cody will be out of their\ncurrent obligation for this gas on february 11 th , i will firm this date up\nhere\nin the next couple of days . cody has requested that we strike the gas daily\nprice for gas brought on any day other than the lst day of the month . this\nlanguage is mentioned in article 2 . contract price . 2 . 1 price . i have called\ndarren farmer on the texas desk and explained my situation to him . he\npassed on to me that this is not a problem since i will know the date and\nvolume this package will start flowing to hplc . please e - mail a copy after\nthese changes for approval to be sent overnight to cody . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.530+0000", "entityId": 3857, "properties": {"text": "Subject: re : kcs buy / sell\nlauri ,\nhpl ' s gas control could not provide any information . i called bob withers\nwith kcs and he was in agreement to reduce the nom from 894 to 345 / day . the\nchanges will be effective 1 / 11 / 01 as follows :\nmeter # deal #\n9797 439825\n3543 439837\nbob\nlauri a allen\n01 / 09 / 2001 03 : 53 pm\nto : robert cotten / hou / ect @ ect\ncc : michael olsen / na / enron @ enron , edward terry / hou / ect @ ect , jill t\nzivley / hou / ect @ ect , mary poorman / na / enron @ enron\nsubject : kcs buy / sell\nin light of december ' s allocation of actual volumes at kcs # 9797 , it looks as\nthough we need to reduce the nom at both this meter and at tejas riverside ,\n# 3543 , where the \" sell \" portion of this buy / sell occurs for the remainder of\njanuary . december actual receipts at # 9797 were 15 , 889 mm or an average of\n513 mm / day . the january nomination is 864 mm / day . i think it needs to be\nreduced to approx 345 mm / day effective 1 / 11 or there may be a large diffence\nbetween what we buy at the wellhead and what is delivered back to kcs at\ntejas riverside . any info you could get from gas control or kcs about actual\nflow current month would help nail this nomination down . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.535+0000", "entityId": 3858, "properties": {"text": "Subject: saxet canales into king ranch - balancing issue\nfyi -\nwe are having some \" after - the - fact \" balancing issues with king ranch . i just\nspoke with carol regarding our net position with the plant , she has informed\nme that the saxet canales production we are buying at the inlet has been\naveraging approximately 3 , 850 dth / day for january , and has been producing at\nor around that level since november . we don ' t have eyes at the meter ,\nhowever , carol was brought online this past week , and i will be receiving\nproduction information on a regular basis to balance redeliveries .\nwe have been scheduling 838 to 1 , 045 dth / day at the meter . we need to gross\nup for jan in order to ensure that we capture our volumes correctly and do\nnot create additional balancing issues with the plant .\nplease let me know if you have any further questions , or need additional\ninformation .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.539+0000", "entityId": 3859, "properties": {"text": "Subject: can we still be friends\nthis has not been a good day for me but i do want to thank each of you for\nall of the help you have given me during the last 7 months . also , the great\ntimes we ' ve had working and laughing together . now for the bad or good news ,\nthe 24 th of jan will be my last day as i have excepted a new position at bp\namoco . it is with great pleasure knowing that i did beat mark mccoy over\nthere . thanks again and we will still be friends . ej", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.544+0000", "entityId": 3860, "properties": {"text": "Subject: xms - new system\neffective : we have a new system to prepare expense reports called :\nexpense reporting system : xms\nin order for us ( your assistants ) to prepare your expense reports you will\nneed\nto log on the system and give us your permission . i will provide you step by\nstep\ninstructions to do so . i will make it as easy as possible . it is very\nimportant\nthat you do this otherwise we will not have access or permission .\n( 1 ) logging on to the system :\nlog on to xms . enron . com and enter your logon id and password .\n( your log on id is your po 0 # or your nt id and your\npassword is enron )\n( 2 ) selecting approver and administrative assistant\nselect my info button - then go to concur expense tab and\nselect workflow .\nclick on the spyglass to pick your approver ( your\nmanager ) then your administrative asst .\nbe sure to save your selection .\n( 3 ) changing your password\nselect my info button - then select my profile - then change\npassword\n( type in your old password twice ) ( if you forget your\npassword call 31411 . )\n( 4 ) creating an expense report ( if you decide you would like to prepare your\nown expense report )\nselect my workspace tab , then create expense report . fill\nin required fields .\nselect next button\n( 5 ) approving a report\nan email message will notify you of a report pending your\napproval . you can click on the hotlink\nto logon to xms system . approve at summary level by clicking\non the approval button for the\nhome page . or double click on the title of the expense report\nto preview the details .\nto learn more go to the xms web page : http : / / xms . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.549+0000", "entityId": 3861, "properties": {"text": "Subject: re : meter 1517\ndaren - after checking with mips , you are correct . jan . 1 only flowed 19\ndth . the 5882 dth was a bad estimate . a better estimate was received on\n1 / 7 / 00 .\nsorry about all the confusion .\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 10 / 2001 09 : 14\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 01 / 10 / 2001 09 : 00 am\nto : gary w lamphier / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : re : meter 1517\ngary - we did not deliver gas to phillips on dec . 1 . also , i am not sure if\nthe plant was down , but we did not deliver to them on dec . 2 - 4 . if you have\nany questions , please let me know .\naimee\nenron north america corp .\nfrom : gary w lamphier 01 / 10 / 2001 08 : 55 am\nto : daren j farmer / hou / ect @ ect , aimee lannou / hou / ect @ ect\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : meter 1517\nphillips said we shorted them gas on december lst so they pulled it on\njanuary 1 . can we verify that we did not deliver 5 , 00 on dec . 1 ? if that is\nthe case and this was a firm sale , we owe him some gas at dec index less\n( . 045 ) . which is bad ! let me know what happened in dec before i can put\nthis deal out in jan .\ndaren j farmer\n01 / 09 / 2001 02 : 25 pm\nto : gary w lamphier / hou / ect @ ect\ncc :\nsubject : meter 1517\ngary ,\nhave you negotiated a price on this ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 09 / 2001\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 01 / 02 / 2001 02 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 1517\ndaren - meter 1517 has a nom of 0 / day for jan . it flowed about 5 . 400 on day\n1 . this is a valid flow . could you please extend the deal from dec . ( deal #\n506192 ) or create a new one ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.554+0000", "entityId": 3862, "properties": {"text": "Subject: re : meter 1517\ngary - we did not deliver gas to phillips on dec . 1 . also , i am not sure if\nthe plant was down , but we did not deliver to them on dec . 2 - 4 . if you have\nany questions , please let me know .\naimee\nenron north america corp .\nfrom : gary w lamphier 01 / 10 / 2001 08 : 55 am\nto : daren j farmer / hou / ect @ ect , aimee lannou / hou / ect @ ect\ncc : gary w lamphier / hou / ect @ ect\nsubject : re : meter 1517\nphillips said we shorted them gas on december lst so they pulled it on\njanuary 1 . can we verify that we did not deliver 5 , 00 on dec . 1 ? if that is\nthe case and this was a firm sale , we owe him some gas at dec index less\n( . 045 ) . which is bad ! let me know what happened in dec before i can put\nthis deal out in jan .\ndaren j farmer\n01 / 09 / 2001 02 : 25 pm\nto : gary w lamphier / hou / ect @ ect\ncc :\nsubject : meter 1517\ngary ,\nhave you negotiated a price on this ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 09 / 2001\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 01 / 02 / 2001 02 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 1517\ndaren - meter 1517 has a nom of 0 / day for jan . it flowed about 5 . 400 on day\n1 . this is a valid flow . could you please extend the deal from dec . ( deal #\n506192 ) or create a new one ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.559+0000", "entityId": 3863, "properties": {"text": "Subject: re : meter 1517\nphillips said we shorted them gas on december lst so they pulled it on\njanuary 1 . can we verify that we did not deliver 5 , 00 on dec . 1 ? if that is\nthe case and this was a firm sale , we owe him some gas at dec index less\n( . 045 ) . which is bad ! let me know what happened in dec before i can put\nthis deal out in jan .\ndaren j farmer\n01 / 09 / 2001 02 : 25 pm\nto : gary w lamphier / hou / ect @ ect\ncc :\nsubject : meter 1517\ngary ,\nhave you negotiated a price on this ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 09 / 2001\n02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 01 / 02 / 2001 02 : 14 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 1517\ndaren - meter 1517 has a nom of 0 / day for jan . it flowed about 5 . 400 on day\n1 . this is a valid flow . could you please extend the deal from dec . ( deal #\n506192 ) or create a new one ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.564+0000", "entityId": 3864, "properties": {"text": "Subject: gary hanks bachelor . . . . . not for long . . . please read urgent ! ! ! !\ngentlemen . . . . the time has come to send gary off into the great unknown of\nwedded bliss ! ! !\nmy name is jeff jackson , i grew up with the whammer ! ! ! ! !\ni would appreciate if you guys could let me know asap if you can attend his\nbachelor party on saturday feb . 3 . we need to get a head count so we can\ndetermine costs and accomodations if necessary .\nlocation : houston\nwe will start out with some mudbugs and beer . . . .\nthe plan is to charter a party bus to take care of us that\nevening . . . . . wherever we might end up .\nif anyone is interested in hotel accomidations please indicate in your\nemail , we will incoprorate that into our plans . any ideas , for something to\ndo between mudbugs and late night carousing . . . . bring ' em on ( ie . . . . . horse\nraces , go carts . . . . . . . . etc .\nalso , as an alternative to staying in houston , gary and i thought about\ntaking a bus and spending saturday and saturady night in lake charles ,\ngambling and . . . . . . . .\nagain . . please as soon as possible send a reply if you are going and any\nsuggestions will help .\nthanks\njeff jackson\n817 - 401 - 8707", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.569+0000", "entityId": 3865, "properties": {"text": "Subject: order confirmation 11871528 - 01\nthank you for shopping at radioshack . com .\nyour order number is 11871528 - 01 and pending credit card approval , will be\nshipped to :\ndaren farmer\n5519 clarkston\nspring , tx 77379\nyour order subtotal is $ 12 . 49\nyour order tax is $ 1 . 03\nyour order total is $ 13 . 52\nfor inquiries regarding this shipment , please contact our telephone order\ncenter with your order number .\nwe appreciate your business and look forward to serving you in the future .\nsincerely ,\nradioshack . com\ncustomer service contacts\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nemail : ordercenter @ radioshack . com\nphone : ( 800 ) 464 - 5365", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.574+0000", "entityId": 3866, "properties": {"text": "Subject: shipment confirmation 11871528 - 01\nthank you for shopping at radioshack . com .\nyour order 11871528 - 01 is scheduled for shipment on 01 / 11 / 2001 to the\nfollowing address :\ndaren farmer\n5519 clarkston\nspring , tx 77379\nfor inquiries regarding this shipment , please use the package tracking number\nwhen visiting the web site for upsn at\nor contact our telephone order center with your order number .\ntrk # : lz 7517550316716125\nwe appreciate your business and look forward to serving you in the future .\nsincerely ,\nradioshack . com\ncustomer service contacts\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nemail : ordercenter @ radioshack . com\nphone : ( 800 ) 464 - 5365", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.579+0000", "entityId": 3867, "properties": {"text": "Subject: hpl nom for january 12 , 2001\n( see attached file : hplnol 12 . xls )\n- hplnol 12 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.585+0000", "entityId": 3868, "properties": {"text": "Subject: enron / hpl actuals for january 10 , 2001\nteco tap 47 . 500 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.590+0000", "entityId": 3869, "properties": {"text": "Subject: re : saxet canales into king ranch - balancing issue\n7 sis is averaging 23 , 000 m / day . big cowboy is pretty dead on . carol would\nlike for us to gross up for saxet based on the number of flow days left so\nthat the nomination to the plant takes the payback into account .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.599+0000", "entityId": 3870, "properties": {"text": "Subject: sale of hpl\nto all :\nthe proposed sale of hpl to american electric power ( aep ) has been signed and\nthe conditions for the acquisition should be completed within the coming\nmonths . over the next few days , i will be forwarding more details about the\ntransition process . these details will outline the employment opportunities\nand transfer process to aep . aep is eager to complete these arrangements ,\nas the pipeline is only as valuable as the people who operate it .\nduring the transition period , it is important that we keep the pipe line\noperating at our historical level of reliability in order to meet the energy\nneeds of our customers .\nregards ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.605+0000", "entityId": 3871, "properties": {"text": "Subject: las vegas - please read and respond asap\neach person has a budget of $ 190 / person for the different shows / golf / spa ,\netc . please choose from the list below and let me know your choices as soon\nas possible ( today ) so that we can reserve everything .\nfriday night - rio de playa ( $ 25 )\nsaturday night - sigmund & freud ( $ 100 )\nsunday at noon - golf ( $ 90 )\nsunday night ( 10 : 30 ) - mystique ( $ 95 )\nif you have any questions , please feel free to call me .\nthanks ,\nlaura\next 31994", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.610+0000", "entityId": 3872, "properties": {"text": "Subject: texoma - beaumont hpl maintenance\nthis is in regard to the maintenance that you want to do at the texoma -\nbeaumont interconnect ( replace some valves , i believe ) .\nwe had discussed doing this at a time when mobil beaumont refinery would have\nlow gas takes . that window of opportunity will be in early to mid february .\nmobil will take down some of the units at different times during the month .\nsome of these units are endothermic , some are exothermic , so in some cases\ntheir gas load goes up when they take certain units down . but based on the\nschedule of ups and downs that i ' ve been given , it looks like their gas load\nwill be at a low point between february 1 and february 12 , at somewhere\naround 50 , 000 / d . last we talked about hpl continuing to deliver 20 , 000 / d\nthrough the low pressure meter , and delivering the rest through centana . is\nthis still the plan ? ?\nwe met with mobil last year in july to talk to them about what we need to\ndo : that it would take less than a day , and that during that time , hpl would\ndeliver some of our gas to them through the centana meter . but that meeting\nwas a long time ago , and we might need to meet again - you know how\nconservative\none thing of concern : in the past two months , we have effected some of our\nmidcon delivery obligation by delivering 30 , 000 / d gas in kind to mobil\nbeaumont . so we will not be able to do this during the day that we do our\nmaintenance .\nonce you gents let me know what you game plan is and confirm how we ' ll handle\ngas flows while we do our work , i ' d like to be the one that initially tells\nmobil of our plans and set up the initial meeting . it ' s going to take a lot\nof coordination because i can guarantee you that mobil ' s maintenance schedule\nwill change !\nlee\n3 . 5923", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.615+0000", "entityId": 3873, "properties": {"text": "Subject: link to the hpl scheduling mailbox\nplease follow the instructions below .\nwhy : a suggestion was made ( by carlos ) to centralize transport nominations\nwe receive by email . we now have an email account set up :\nhpl . scheduling @ enron . com . the group is to let our customers know this is\nwhere all nominations need to be sent . this way , if people are out ( or no\nlonger with us ) , someone will be able to receive the nomination change . i\nhave also created folders for each shipper . as each nomination is addressed ,\nthe file is to be moved to the folder for later reference . if the file is\nstill in the \" inbox \" , it has not been addressed .\nany comments to this , i would greatly appreaciate feedback .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward terry / hou / ect on 01 / 12 / 2001 03 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : enron messaging security @ enron 01 / 09 / 2001\n09 : 07 am\nto : hpl scheduling team\ncc :\nsubject : link to the hpl scheduling mailbox\n< = < = double - click on the link and the mail box will be added to your lotus\nnotes workspace . each of you are editors of this mailbox . the internet\naddress is hpl . scheduling @ enron . com . just in case , the mailbox is located\nnahou - lnmai 20 / enron under the mail folder .\nthe following have access :\nmichael olsen / na / enron\ntom acton / corp / enron\nmary poorman / na / enron\neddie janzen / na / enron\nedward terry / hou / ect\nrobert cotten / hou / ect\naimee lannou / hou / ect\njackie young / hou / ect\ncarlos j rodriguez / hou / ect\nmark mccoy / corp / enron\nsabrae zajac / hou / ect\nthanks ,\nsandy rivas\nenron messaging security", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.620+0000", "entityId": 3874, "properties": {"text": "Subject: hpl meter # 98 - 1525 texoma d / p - gsu hpl\nclem ,\nthe recorded flow of 1 , 703 mmbtu on 1 / 5 / 99 has been moved from the strangers\ngas contract to 012 - 41500 - 02 - 004 for write - off purposes .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.625+0000", "entityId": 3875, "properties": {"text": "Subject: re : hpl meter # 986563 texaco fee c / p\nclem ,\nthe total volume of 1 , 517 mmbtu that flowed during the period of 12 / 1 / 99\nthrough 3 / 31 / 00 has been moved from the strangers gas contract to\n012 - 41500 - 02 - 004 for write - off purposes .\nbob\nclem cernosek\n01 / 08 / 2001 01 : 35 pm\nto : daren j farmer / hou / ect @ ect\ncc : edward terry / hou / ect @ ect , robert cotten / hou / ect @ ect\nsubject : hpl meter # 986563 texaco fee c / p\ndaren :\nduring the period of 12 / 1 / 99 through 3 / 31 / 00 gas flowed into hpl ' s pipeline\nat the above meter . the gas volumes that flowed are as follows :\n12 / 1 / 99 - 12 / 31 / 99 1 , 457 mmbtus\n01 / 1 / 00 - 01 / 31 / 00 49 mmbtus\n02 / 1 / 00 - 02 / 29 / 00 7 mmbtus\n03 / 1 / 00 - 03 / 31 / 00 4 mmbtus\n1 , 517 mmbtus\nprior to 12 / 1 / 99 , the volumes were being purchased from high sierra operating\nllc under contract # 96003435 deal # 26611 which have terminated . currently ,\nlogistics has these volumes recorded to hpl stranger gas contract . in order\nto correct this , hpl logistics needs either a new deal to record these\nvolumes which have flowed into hpl ' s pipeline , or logistics needs approval to\nwrite - off these volumes to unaccounted for gas loss . ( please print , sign ,\nand return the original to clem cernosek ) .\ndeal / deal ticket # / customer ( buyer / seller )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.630+0000", "entityId": 3876, "properties": {"text": "Subject: fw : danger of phenylpropanolamine\n- - - - - original message - - - - -\nfrom : jennifer glover [ mailto : jm . glover @ meritenergy . com ]\nsent : friday , january 12 , 2001 10 : 33 am\nto : donellec @ earthlink . net ; rglover @ halff . com ;\nandrea . danielson @ risd . org ; don 91 lin @ xit . net\nsubject : fwd : danger of phenylpropanolamine\nthis is why rusty and i couldn ' t find any alkaseltzer in any stores ! ! !\njennifer glover\nmerit energy company\nsenior property accountant\n( 972 ) 383 - 6519\n?\nfrom : tammy cooper\nto : a . harrington @ meritenergy . com , a . smith @ meritenergy . com ,\namyc . smith @ meritenergy . com , claudia . breedlove @ meritenergy . com ,\ndarcie . boughton @ meritenergy . com , jm . glover @ meritenergy . com ,\nlanna . bacchus @ meritenergy . com , mark . love @ meritenergy . com ,\nsara . burnett @ meritenergy . com , tom . buechel @ meritenergy . com\nsubject : danger of phenylpropanolamine\ndate : fri , 12 jan 2001 10 : 27 : 20 - 0600\nmime - version : 1 . 0\nx - mailer : internet mail service ( 5 . 5 . 2653 . 19 )\ncontent - type : multipart / alternative ;\nplease forward this to the people you love .\ncvs has removed all products containing this chemical from their shelves .\nthis was seen on the news both last night and this morning . thought it\nmight be helpful for all of you to have the list . stop taking anything\ncontaining this ingredient . it has been linked to increased hemorrhagic\nstroke\n( bleeding in brain ) among women ages 18 - 49 in the three days after starting\nuse of medication . problems were not found in men , but the fda recommended\nthat everyone ( even children ) seek alternative medicine . the following\nmedications contain :\nalka - seltzer plus children ' s cold medicine effervescent\nalka - seltzer plus cold medicine ( cherry or orange )\nalka - seltzer plus cold medicine original\nalka - seltzer plus cold & cough medicine effervescent\nalka - seltzer plus cold & flu medicine effervescent\nalka - seltzer plus cold & sinus effervescent\nalka seltzer plus night - time cold medicine effervescent\nbc allergy sinus cold powder\nbc sinus cold powder\ncomtrex deep chest cold & congestion relief\ncomtrex flu therapy & fever relief day & night\ncontac 12 - hour cold capsules\ncontac 12 hour caplets\ncoricidin d cold , flu & sinus\ndimetapp cold & allergy chewable tablets\ndimetapp cold & cough liqui - gels\ndimetapp dm cold & cough elixir\ndimetapp elixir\ndimetapp 4 hour liqui gels\ndimetapp 4 hour tablets\ndimetapp 12 hour extentabs tablets\nnaldecon dx pediatric drops\npermathene mega - 16\nrobitussin cf\ntavist - d 12 hour relief of sinus & nasal congestion\ntriaminic dm cough relief\ntriaminic expectorant chest & head congestion\ntriaminic syrup cold & allergy\ntriaminic triaminicol cold & cough\nacutrim diet gum appetite suppressant plus diary supplements\nacutrim maximum strength appetite control\ndexatrim caffeine free\ndexatrim extended duration\ndexatrim gelcaps\ndexatrim vitamin c / caffeine free\nplease discard any of these medications as soon as possible !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.635+0000", "entityId": 3877, "properties": {"text": "Subject: new computer\nhey ! just checking out the new machine . i sent cole ' s birthday present\ntoday . hope he gets it on time . let me know if you get this message please .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.640+0000", "entityId": 3878, "properties": {"text": "Subject: your amazon . com order ( # 104 - 9670681 - 0325567 )\ngreetings from amazon . com .\nwe thought you ' d like to know that we shipped your items today ,\nand that this completes your order .\nthanks for shopping at amazon . com , and we hope to see you again soon .\nyou can track the status of this order , and all your orders , online by\nvisiting \" your account \" page at http : / / www . amazon . com / your - account .\nthere you can :\n* track order and shipment status\n* review estimated delivery dates\n* cancel unshipped items\n* return items\n* and do much more\nthe following items were included in this shipment :\nqty item price shipped subtotal\n1 dewalt dw 972 k - 2 12 volt 3 / 8 \" a $ 169 . 99 1 $ 169 . 99\nitem subtotal : $ 169 . 99\nshipping & handling : $ 5 . 99\ntotal : $ 175 . 98\npaid via mastercard : $ 75 . 98\npaid via gift certificate : 100 . 00 usd\n( for privacy reasons , the recipient ' s address is not shown here . )\nif you ' ve explored the links on \" your account \" page but still need to get in\ntouch with us about your order , e - mail us at orders @ amazon . com .\non your next visit to our web site , come see what ' s new for you by\nclicking the link on the right - hand side of our home page , or by\nvisiting this url :\ncs _ ae _ nfy\nwe ' ve selected an assortment of new releases , recommendations , and\ninformative articles that we think would appeal to you .\nthank you for shopping at amazon . com .\namazon . com\nearth ' s biggest selection\norders @ amazon . com http : / / www . amazon . com /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.644+0000", "entityId": 3879, "properties": {"text": "Subject: hpl nom . revisions\n( see attached file : hplnol 12 . xls )\n( see attached file : hplnol 13 . xls )\n- hplnol 12 . xls\n- hplnol 13 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.649+0000", "entityId": 3880, "properties": {"text": "Subject: hpl nom for january 13 , 2001\n( see attached file : hplnol 13 . xls )\n- hplnol 13 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.653+0000", "entityId": 3881, "properties": {"text": "Subject: enron / hpl actuals for january 11 , 2001\nteco tap 51 . 250 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.658+0000", "entityId": 3882, "properties": {"text": "Subject: re : hpl meter # 981488 paris tenaska hpl\nclem ,\ncompleted .\nbob\nclem cernosek\n12 / 28 / 2000 11 : 26 am\nto : daren j farmer / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , edward terry / hou / ect @ ect\nsubject : hpl meter # 981488 paris tenaska hpl\nduring the period of 12 / 1 / 99 through 12 / 3 / 99 , the above meter has recorded\nflow on the following days :\ndays mmbtus\n12 / 1 / 99 173\n12 / 3 / 99 39\n106\ndeal # 124400 was at this meter during november 1999 , but it expired on\n11 / 30 / 99 . currently , these volumes are being booked under the hpl strangers\ngas contract . logistics needs either ( 1 ) deal # 124400 extended , ( 2 ) new\ndeal , or ( 3 ) approval to write - off these volumes to unaccounted for gas .\n( please print , sign , and return original to clem cernosek ) .\ndeal / deal ticket # / customer ( seller / buyer )\nor\napproval to write - off the volumes to unaccounted for gas loss\nthanks , clem", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.662+0000", "entityId": 3883, "properties": {"text": "Subject: new stack manager\nthere is a new version of stack manager which is being released this evening ,\nfor use on monday morning .\nchanges\n1 ) \" inactivate suspended children \" - new menu item available by\nright - clicking on a parent product . it will change all child products of the\nhighlighted parent from \" suspended \" to \" inactive \" . note that this will be\napplied only to the product which you highlight . it will also show available\nwhen highlighting products which are not parents , but it will have no effect .\n2 ) the transaction list has been amended to correctly display only those\ntransactions completed on the calendar day ( problem has affected australia\nand singapore ) .\n3 ) a constant spread which is changed from the front page of the stack\nmanager will stay as changed for that product . the spread will persist even\nif transactions occur .\nbackground\nsuspended child products continue to have their prices updated as the price\nof the parent changes . inactive child products do not have their prices\nupdated . the price update process slows down enrononline processing and stack\nmanager response , so it is advantageous to ensure all non - active products are\nin an inactive state .\nif you have any questions on the above , please contact the enrononline call\ncenter at :\nnorth america : 713 853 4357 ( help )\nasia and australia : + 61 2 9229 2300\neurope and other regions : + 44 ( 0 ) 20 7783 7783\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.666+0000", "entityId": 3884, "properties": {"text": "Subject: managing director and vice president elections\nthe managing director prc committee met this week to elect individuals to\nmanaging director and vice president positions . these employees are\nrecognized as outstanding contributors to the organization , whose individual\nefforts have been instrumental in the continued success and growth of the\ncompany . we are pleased to announce the election of the following new\nmanaging directors and vice presidents . please join us in congratulating\nthese individuals on their new appointments .\nmanaging director \u0001 ) commercial\nphillip k . allen , ena ( ews ) west gas trading - houston\nfranklin r . bay , ebs entertainment on demand - houston\ntimothy n . belden , ena ( ews ) \u0001 ) west power trading - portland\nmichael r . brown , eel \u0001 ) executive - london\nchristopher f . calger , ena ( ews ) west power origination - portland\njoseph m . deffner , ena ( ews ) treasury & funding - houston\ntimothy j . detmering , ena ( ews ) corporate development - houston\nwilliam d . duran , ena ( ews ) generation investments - houston\nrobert s . gahn , ees commodity structuring - houston\nkevin c . garland , ebs broadband ventures - houston\nben f . glisan , jr . , corporate \u0001 ) global equity markets - houston\nrobert e . hayes , ets comm marketing - houston\nphillip r . milnthorp , ena ( ews ) canada origination & trading - calgary\nmanaging director \u0001 ) commercial support\nsally w . beck , enw ( ews ) energy operations management - houston\nfernley dyson , eel finance & support services - london\nvice president \u0001 ) commercial\ngregory adams , ees mmc management - houston\nrobert bayley , eel - uk origination \u0001 ) london\njack d . boatman , ets market development \u0001 ) houston\nrhenn cherry , ees assets / labor \u0001 ) houston\nniamh clarke , egm ( ews ) liquids trading \u0001 ) london\npeter crilly , eel - uk origination \u0001 ) london\nderek j . davies , ena ( ews ) canada origination \u0001 ) calgary\nmark d . davis , jr . , ena ( ews ) east power trading \u0001 ) houston\ncharles delacey , corporate finance \u0001 ) houston\npaul devries , ena ( ews ) canada origination \u0001 ) toronto\nchristopher h . foster , ena ( ews ) west power trading \u0001 ) portland\njeffrey f . golden , ees corporate development \u0001 ) houston\nmichael d . grigsby , ena west gas trading group - houston\ntroy a . henry , ees bundled sales - heavy industrial \u0001 ) houston\nrogers herndon , ena ( ews ) east power trading \u0001 ) houston\njames w . lewis , ees underwriting \u0001 ) houston\nchristopher mahoney , egm ( ews ) liquids trading \u0001 ) london\nandrew marsden , ebs broadband ventures \u0001 ) london\njohn mcclain , ebs broadband wholesale origination \u0001 ) houston\nkevin j . mcgowan , egm ( ews ) american coal \u0001 ) houston\nalbert e . mcmichael , jr . , ena ( ews ) gas commodity structuring \u0001 ) houston\nermes i . melinchon , central america origination \u0001 ) houston\nsteven r . meyers , ees consumption \u0001 ) houston\nlloyd d . miller , ena ( ews ) portfolio management \u0001 ) houston\nmichael a . miller , wind development / execution - general administration \u0001 )\nhouston\nmarcello romano , ebs eel - broadband trading \u0001 ) london\ndavid a . samuels , enw ( ews ) enrononline - houston\nper a . sekse , egm ( ews ) global risk markets \u0001 ) new york\nedward s . smida , ebs video on demand \u0001 ) houston\nmark tawney , egm ( ews ) weather trading \u0001 ) houston\njon thomsen , ebs business development \u0001 ) latin america / canada \u0001 ) portland\nbarry l . tycholiz , ena ( ews ) west gas origination - houston\nfrank w . vickers , ena ( ews ) east gas origination \u0001 ) houston\namit walia , corporate , corporate development \u0001 ) houston\nwilliam white , ebs global bandwidth risk mgmt \u0001 ) houston\njonathan whitehead , eel ea trading \u0001 ) japan\nmark whitt , ena ( ews ) west gas origination \u0001 ) denver\njohn a . zufferli , ena ( ews ) canada power trading - calgary\nvice president \u0001 ) commercial support\nbeth apollo , eel financial operations executive \u0001 ) london\nmarla barnard , ebs human resources \u0001 ) houston\nkaren l . denne , corporate , public relations \u0001 ) houston\ngeorganne m . hodges , ena ( ews ) trading , origination & power plant accounting\n\u0001 ) houston\nphillip lord , eel transaction support \u0001 ) london\npeggy mahoney , ees marketing \u0001 ) communication \u0001 ) houston\nsteven montovano , corporate , government & regulatory affairs \u0001 ) dublin\nlaura scott , ena ( ews ) canada accounting \u0001 ) calgary\nrichard c . sherman , ena ( ews ) transaction support \u0001 ) houston\ngregory w . stubblefield , ees financial planning & reporting \u0001 ) houston\ndennis d . vegas , calme international public relations \u0001 ) houston\nvice president \u0001 ) specialized technical\nsami arap sobrinho , esa ( ews ) legal \u0001 ) houston\nmerat bagha , ebs sales engineering \u0001 ) houston\njustin boyd , eel legal \u0001 ) london\nmary nell browning , ebs legal \u0001 ) london\njonathan chapman , eel legal \u0001 ) london\nrobert d . eickenroht , corporate , legal \u0001 ) houston\nmark evans , eel legal \u0001 ) london\ndavid forster , enw ( ews ) enrononline \u0001 ) houston\njanine juggins , eel tax \u0001 ) london\npeter c . keohane , ena ( ews ) canada legal \u0001 ) calgary\npinnamaneni v . krishnarao , ena ( ews ) research group \u0001 ) houston\ntravis c . mccullough , ena ( ews ) finance origination , mergers / acquisitions \u0001 )\nhouston\nmichael popkin , esa ( ews ) sa - risk management / network integration \u0001 ) houston\nelizabeth a . sager , ena ( ews ) physical trading \u0001 ) houston\nrichard b . sanders , ena ( ews ) litigation \u0001 ) houston\njohn w . schwartzenburg , eecc legal \u0001 ) houston\nmichael d . smith , ees legal \u0001 ) houston\nmarcus vonbock und polach , eel legal \u0001 ) london\njay c . webb , enw ( ews ) enrononline systems \u0001 ) houston\nvice president \u0001 ) technical\ndonald r . hawkins , ets quality management \u0001 ) houston\njohn r . keller , ets engineering & construction \u0001 ) houston", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.671+0000", "entityId": 3885, "properties": {"text": "Subject: neon discussion january 17\nhere ' s some ideas for this coming week . ? as always , modify and change as\nnecessary to fit your group and your style , or do something totally\ndifferent if that ' s what your group needs . ? ? keep up the good work !\n?\nbobby\n- galations 5 fruit . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.676+0000", "entityId": 3886, "properties": {"text": "Subject: your amazon . com order ( # 104 - 9670681 - 0325567 )\nhello from amazon . com .\nwe ' re writing to confirm that we have processed your refund for\n$ 18 . 00 for the above - referenced order .\nthis amount should appear as a credit on your next credit card statement .\nfor more information about this refund , please visit your account\n( http : / / www . amazon . com / your - account ) to view the above - referenced order .\ncompleted returns and refunds will appear at the bottom of the order\nsummary page .\nwe hope that this is a satisfactory resolution for you .\nif you have any questions , please contact us via e - mail , fax , or\nphone :\ne - mail : orders @ amazon . com\nfax : 1 - 206 - 266 - 2950\nphone : 1 - 800 - 201 - 7575 for us customers\n1 - 206 - 266 - 2992 for international customers\nthank you for shopping at amazon . com .\namazon . com\nearth ' s biggest selection\ninfo @ amazon . com http : / / www . amazon . com /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.680+0000", "entityId": 3887, "properties": {"text": "Subject: enron / hpl actuals for january 12 - 14 , 2001\njanuary 12 , 2001\nteco tap 30 . 000 / enron\njanuary 13 , 2001\nteco tap 30 . 000 / enron\njanuary 14 , 2001\nteco tap 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.685+0000", "entityId": 3888, "properties": {"text": "Subject: hpl nom for january 16 , 2001\n( see attached file : hplnol 16 . xls )\n- hplnol 16 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.689+0000", "entityId": 3889, "properties": {"text": "Subject: communication of rankings\nwell , the jury is still out on communicating rankings .\ni quess right now the best things to do is not tell anyone their\nranks .\nlet me know you thoughts .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.694+0000", "entityId": 3890, "properties": {"text": "Subject: re : enron industrial markets - super saturday recruiting\nthanks so much . let ' s talk - i ' ll be back in the office on thursday . have\nfun and good luck with the house hunt and sale !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.699+0000", "entityId": 3891, "properties": {"text": "Subject: hpl noms . for jan . 17 , 2001\n( see attached file : hplnol 17 . xls )\n- hplnol 17 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.703+0000", "entityId": 3892, "properties": {"text": "Subject: enron / hpl actuals for january 15 , 2001\njanuary 15 , 2001\nteco tap 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.708+0000", "entityId": 3893, "properties": {"text": "Subject: january nominations at shell deer park\nfyi .\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 16 / 2001 11 : 35\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n01 / 16 / 2001 08 : 23 am\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : january nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 01 / 16 / 2001 08 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 12 / 19 / 2000 03 : 32 : 26 pm\nto : \" ' lamphier , gary ' \"\ncc : \" carter , john \" , \" ricks , ruth \" ,\nkyle . r . lilly @ enron . com , mary . poorman @ enron . com\nsubject : january nominations at shell deer park\ngary ,\njanuary 2001 nominations for gas delivery to shell deer park are as follows :\nfirm baseload - 110 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 35 , 000 mmbtu / d 40 , 000 mmbtu / d 35 , 000 mmbtu / d\non or about january 7 th we are currently planning on beginning our much\nanticipated scheduled turnaround work . natural gas demand is expected to\ndecrease with hpl ' s portion being 20 , 000 mmbtu / d coming primarily out of the\nhp / e station . this will leave total demand at 90 , 000 mmbtu / d for the\nremainder of the month .\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n> home page : http : / / rsweb\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.713+0000", "entityId": 3894, "properties": {"text": "Subject: deals to be extended on meter 985097 - 12 / 00\naccording to the meter statement , there was overflow from november on meter\n985097 and the following deals need to be extended for 12 / 1 only .\n118532\n101473\n138017\nthanks and if you need further information , please let me know .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.718+0000", "entityId": 3895, "properties": {"text": "Subject: re : tenaska\ni see the demand fee changes and the williams price change . that all looks\ngreat , but i still have a problem with the apache prices . for 10 / 00 and\n11 / 00 , we have a price of 2 . 285 for deal 384247 . apache billed 2 . 175 for\nboth months . are we going to change the apache prices ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.723+0000", "entityId": 3896, "properties": {"text": "Subject: year end 2000 performance evaluation due\nfeb 02 , 2001\nyear end 2000 performance evaluation forms are due in human resources by the\nabove date . for eel , the deadline is january 31 , 2001 .\nif you have not already done so , please begin the process of giving feedback\nto your employees . the evaluation forms used to provide feedback to the\nemployee can be obtained via the performance management system ( pep ) .\nto download the evaluation forms from pep , please follow the steps below :\n1 . log into pep at http : / / pep . corp . enron . com .\n2 . under supervisor services , click supervisor evaluation forms .\n3 . right - click on each employee and choose ' save target as . . . ' or ' save link\nas . . . '\n4 . select your own personal directory , choose a file name to save to and\nclick ' save ' .\n5 . repeat for each employee .\n6 . now you can complete your evaluation forms from your personal directory\nand will not have to access pep to finalize the form .\nupon completion , please forward the signed evaluation forms to your hr\nrepresentative no later than friday , february 2 , 2001 ( wednesday , january 31 ,\n2001 , for eel ) .\nif you have any questions , please contact the pep help desk at the following\nnumbers :\nhouston : 1 - 713 - 853 - 4777 , option 4\nlondon : 44 - 207 - 783 - 4040 , option 4\nor e - mail your questions to : perfmgmt @ enron . com\nyour employees that should receive year end evaluations are listed below :\nbellamy , elizabeth\nneuweiler , stacey k", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.729+0000", "entityId": 3897, "properties": {"text": "Subject: ranks communication\nafter getting your imput , i think this is the best :\nwe will only communicate needs improvement and issues . there will be\ndiffering messages for needs improvement which fit the situation - some need\nto hear that they are not performing at a high enought level relative to\npeers to help us achieve business goals or for them to be considered for a\nbonus ( may need to finda another role within or outside enron which is a\nbetter fit ) . message to someone new to enron in that category should be\ndifferent . glad they are here : believe that as they learn the organization\nand their job that they will be able to make significant contribution : doing\nthe right thing to learn business , but that contributions to date are not\nsignificant enough to warrant payment of a bonus .\nlet me know what you think .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.734+0000", "entityId": 3898, "properties": {"text": "Subject: hpl nom for january 18 , 2001\n( see attached file : hplnol 18 . xls )\n- hplnol 18 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.740+0000", "entityId": 3899, "properties": {"text": "Subject: enron / hpl actuals for january 16 , 2001\nteco tap 45 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.745+0000", "entityId": 3900, "properties": {"text": "Subject: tenaska 10 / 00 and 11 / 00\nplease adjust the following demand fees for tenaska for 11 / 00 and 10 / 00 .\ndeal 529856 , day 11 / 01 - change from 493 , 365 . 75 to 409 , 145 . 72\ndeal 529856 , day 10 / 01 - change from 2 , 405 , 706 . 50 to 2 , 349 , 906 . 50\ndeal 529856 , day 10 / 02 - change from 184 , 138 . 99 to 128 , 338 . 99\ndeal 514353 - change demand volume from 45 , 016 to 44 , 350\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.750+0000", "entityId": 3901, "properties": {"text": "Subject: hpl noms . for jan . 19 , 2001\n( see attached file : hplnol 19 . xls )\n- hplnol 19 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.754+0000", "entityId": 3902, "properties": {"text": "Subject: enron / hpl actuals for january 17 , 2001\nteco tap 35 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.759+0000", "entityId": 3903, "properties": {"text": "Subject: adjusted deal ticket\ndaren / o ' neal ,\neffective 1 / 18 / 01 , deal ticket 137205 has been adjusted from a daily volume\nof 2 , 773 to 25 . the meter # is 9748 and the trade zone is 10 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.764+0000", "entityId": 3904, "properties": {"text": "Subject: vacation carryover\nwant to verify your vacation carryover ? beginning january 22 , 2001 , all\neligible enron employees will be able to access the hours of vacation that\nwere carried over from the previous year by going to the ehronline website .\n1 . navigate to the ehronline website : http : / / ehronline . enron . com .\n2 . read the disclaimer ; click accept .\n3 . enter your user id and password ; click logon .\n4 . select time management from the menu at the left .\n5 . select vacation information from the drop - down menu .\nto see all types of vacation ( accrual , lump sum , vacation ) , click the radio\nbutton for \" all types . \"\nclick display .\nto see specific types of vacation ( accrual , lump sum , vacation ) , click the\nradio button below \" all types \" and make your selection from the drop - down\nmenu .\nclick display .\nclick exit to log off .\nthe system will default to show all types of vacation , including ( if\navailable ) vacation - ( accrual ) or vacation - ( lump sum ) or vacation . the\ncarryover amount will be displayed next to the type : \" vacation \" under the\n\" entitlement \" column .\nenron policy states that employees are entitled to a maximum of 40 hours of\nvacation carryover without supervisor approval . hours in excess of 40 hours\nare subject to supervisor approval and will be updated once supervisor\napproval has been received\nif you have questions regarding your vacation , please call the payroll\nhotline at 713 . 345 . 5555 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.769+0000", "entityId": 3905, "properties": {"text": "Subject: gas message board\na message board has been set up for the natural gas trading floor . this is a\nsecure internal enron board with viewing rights only for personal on the\nnatural gas trading floor , both traders and marketers . please follow the\nsteps outlined here to access the gas message board .\nsteps to launch gas msg board :\n1 ) launch internet explorer\n2 ) type : http : / / gasmsgboard . corp . enron . com / msgframe . asp ( or just click on\nthis url link )\n3 ) you should see the messages if there are any new messages for that day .\nif you don ' t see any messages , there are two reasons :\na . you are not a valid user , contact ina rangel at ext . 3 - 7257\nb . there are no new messages added for that given day yet .\n4 ) sending a message :\na . just simply enter a message in the test box at the lower portion of the\nweb page\nb . click on the \" send \" button to send the message .\n5 ) once the message has been sent it will be displayed on the main window\nimmediately and all people who are on - line will get the new message on the\nnext refresh cycle .\n6 ) all messages will be cleared daily at 6 : 00 pm\ndutch quigley\next . 3 - 9257", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.774+0000", "entityId": 3906, "properties": {"text": "Subject: fw : heavy load\n- - - - - original message - - - - -\nfrom : john riggins [ mailto : jriggins @ hill - wilkinson . com ]\nsent : friday , january 19 , 2001 10 : 46 am\nto : ryan smith ; rusty glover ; plemons mike ; mike plemons ; mike eggleton ;\njustin biggs ; greg barberee ; eric fischer ; brady jones ; archer brent ;\njlriggin @ aol . com ; becky riggins ; gdfarleyl @ aol . com ;\ncwright 3400 @ yahoo . com\nsubject : fw : heavy load\njohn riggins\nproject engineer\nhill & wilkinson , ltd .\n800 klein road\nplano , tx 75074\n214 . 507 . 1947\n- - - - - original message - - - - -\nfrom : swanson terry [ mailto : tswanson @ hill - wilkinson . com ]\nsent : friday , january 19 , 2001 9 : 30 am\nto : everyone\nsubject : fw : heavy load\nthis is why our superintendents do not drive cars > > > > > > > > > > > one of\nthem might try this .\n?\n?\n- homedepotl . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.779+0000", "entityId": 3907, "properties": {"text": "Subject: hpl noms . for jan . 20 - 22 , 2001\n( see attached file : hplnol 20 . xls )\n- hplnol 20 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.783+0000", "entityId": 3908, "properties": {"text": "Subject: enron / hpl actuals for january 18 , 2001\nteco tap 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.788+0000", "entityId": 3909, "properties": {"text": "Subject: meter # 6788 - 11 / 00 & 12 / 00\nkaren ,\nit has been determined that the only valid deal is a wellhead purchase from\ntexlan at meter # 6788 in 11 / 00 and 12 / 00 production . please reallocate the\nmeter to give all volume to texlan . thanks .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.793+0000", "entityId": 3910, "properties": {"text": "Subject: base gas roll 2 / 2001\njay , louis\ni just wanted to confirm with you guys that we are going to run the base gas\nroll for feb 2001 production tonight .\ntomorrow night we will follow up with the updating of records to unify .\nif this is not possible or incorrect please let me know .\nthanks\ngg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.801+0000", "entityId": 3911, "properties": {"text": "Subject: re : gas message board\nthe problem has been corrected , please try to login . let me know if you have\nanymore problems .\nina\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ina rangel / hou / ect on 01 / 19 / 2001 10 : 39 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : fangming zhu @ enron on 01 / 18 / 2001 09 : 27 am\nto : ina rangel / hou / ect @ ect\ncc : dutch quigley / hou / ect @ ect\nsubject : re : gas message board\nhttp : / / gasmsgboard . corp . enron . com\nthanks ,\nfangming\nina rangel @ ect\n01 / 18 / 2001 08 : 07 am\nto : andrea ring / hou / ect @ ect , andrew h lewis / hou / ect @ ect , brad\nmckay / hou / ect @ ect , craig breslau / hou / ect @ ect , chris germany / hou / ect @ ect ,\ncarey m metz / hou / ect @ ect , charles t muzzy / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , dick jenkins / hou / ect @ ect , dan junek / hou / ect @ ect , dutch\nquigley / hou / ect @ ect , eric bass / hou / ect @ ect , edward d gottlob / hou / ect @ ect ,\nelsa villarreal / hou / ect @ ect , frank ermis / hou / ect @ ect , george n\ngilbert / hou / ect @ ect , gary w lamphier / hou / ect @ ect , geoff storey / hou / ect @ ect ,\nhunter s shively / hou / ect @ ect , john arnold / hou / ect @ ect , jared\nkaiser / hou / ect @ ect , jay reitmeyer / hou / ect @ ect , jim schwieger / hou / ect @ ect ,\njennifer shipos / hou / ect @ ect , john craig taylor / hou / ect @ ect , jane m\ntholt / hou / ect @ ect , judy townsend / hou / ect @ ect , janet h wallis / hou / ect @ ect ,\njason williams / hou / ect @ ect , kate fraser / hou / ect @ ect , kevin\nruscitti / hou / ect @ ect , kelli stevens / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\nmartin cuilla / hou / ect @ ect , mike grigsby / hou / ect @ ect , monique\nsanchez / hou / ect @ ect , phillip k allen / hou / ect @ ect , peter f keavey / hou / ect @ ect ,\npatrice l mims / hou / ect @ ect , robin barbe / hou / ect @ ect , sandra f\nbrawner / hou / ect @ ect , scott hendrickson / hou / ect @ ect , sarah\nmulholland / hou / ect @ ect , jennifer fraser / hou / ect @ ect , scott neal / hou / ect @ ect ,\nstacey neuweiler / hou / ect @ ect , susan w pereira / hou / ect @ ect , sylvia s\npollan / hou / ect @ ect , steven p south / hou / ect @ ect , tom donohoe / hou / ect @ ect , tori\nkuykendall / hou / ect @ ect , thomas a martin / hou / ect @ ect , victoria\nversen / hou / ect @ ect , barry tycholiz / na / enron @ enron , caroline\nabramo / corp / enron @ enron , danny conner / na / enron @ enron , bill\nberkeland / corp / enron @ enron , joe parks / corp / enron @ enron , kevin\nbrady / na / enron @ enron , liz bellamy / na / enron @ enron , larry may / corp / enron @ enron ,\nmark smith / corp / enron @ enron , mike maggi / corp / enron @ enron , nelson\nferries / corp / enron @ enron , paul t lucci / na / enron @ enron , robyn\nzivic / na / enron @ enron , scott goodell / corp / enron @ enron , troy\nblack / corp / enron @ enron , tammi depaolis / corp / enron @ enron , sean\nboyle / corp / enron @ enron , fangming zhu / corp / enron @ enron , allen\nelliott / hou / ect @ ect , michael sellers / lon / ect @ ect , deirdre\nmccaffrey / hou / ect @ ect , kirk lenart / hou / ect @ ect , bryan powell / hou / ect\ncc :\nsubject : gas message board\na message board has been set up for the natural gas trading floor . this is a\nsecure internal enron board with viewing rights only for personal on the\nnatural gas trading floor , both traders and marketers . please follow the\nsteps outlined here to access the gas message board .\nsteps to launch gas msg board :\n1 ) launch internet explorer\n2 ) type : http : / / gasmsgboard . corp . enron . com / msgframe . asp ( or just click on\nthis url link )\n3 ) you should see the messages if there are any new messages for that day .\nif you don ' t see any messages , there are two reasons :\na . you are not a valid user , contact ina rangel at ext . 3 - 7257\nb . there are no new messages added for that given day yet .\n4 ) sending a message :\na . just simply enter a message in the test box at the lower portion of the\nweb page\nb . click on the \" send \" button to send the message .\n5 ) once the message has been sent it will be displayed on the main window\nimmediately and all people who are on - line will get the new message on the\nnext refresh cycle .\n6 ) all messages will be cleared daily at 6 : 00 pm\ndutch quigley\next . 3 - 9257", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.812+0000", "entityId": 3912, "properties": {"text": "Subject: neon discussion january 24\nhere is an idea for this week . ? next week brad cox is planning on starting a\ndiscussion series based on the experiencing god study , that he will modify\nfor teenagers to be used in neon . ? it will probably consist mainly of\nquestions similar to what you ' re getting this week . ? at this point in the\nsemester your kids hopefully feel comfortable with each other to go ahead\nand spring right into some biblically relevant discussions . ? make sure ,\nthough , that you do what is necessary for your kids to connect with each\nother and with you as adults and to make visitors feel at ease . ? spend time\nvisiting together as a group , and then individually with the kids after neon\nis officially over with cokes and cookies . ? remember that that the \" before\nand after \" is probably the most important aspect of neon .\n- different beliefs . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.825+0000", "entityId": 3913, "properties": {"text": "Subject: re : base gas roll 2 / 2001\nbased on the pages from the script , base gas roll was completed last night .\ngeorge grant\n01 / 19 / 2001 03 : 54 pm\nto : luis aybar / hou / ect @ ect , jayant krishnaswamy / hou / ect @ ect , dat\ntruong / corp / enron @ enron\ncc : russ severson / hou / ect @ ect , vance l taylor / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , robert cotten / hou / ect @ ect\nsubject : base gas roll 2 / 2001\njay , louis\ni just wanted to confirm with you guys that we are going to run the base gas\nroll for feb 2001 production tonight .\ntomorrow night we will follow up with the updating of records to unify .\nif this is not possible or incorrect please let me know .\nthanks\ngg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.830+0000", "entityId": 3914, "properties": {"text": "Subject: pg & e texas 11 / 00\nnever mind . they are now changing their price to 6 . 23 . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 01 / 22 / 2001\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 01 / 22 / 2001 02 : 50 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : pg & e texas 11 / 00\njust a heads up . . . you might be getting a call from pg & e regarding the price\ndifference on deal 510422 . their trader is staying with 6 . 26 .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.835+0000", "entityId": 3915, "properties": {"text": "Subject: meter 1386\ndaren - there is flow on meter 1386 for 1 / 4 / 01 . deal 150325 expired on day\n3 . could you please extend this deal or create a new one ? thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.840+0000", "entityId": 3916, "properties": {"text": "Subject: weekend oncall notes\nfriday 1 / 19 / 01 - received a call from sheila at basin regarding a well which\nmay be coming on this weekend ( meter 9696 ) . phone lee in gas control\nregarding same . lee informed me that hpl would prefer that the volumes are\nnot brought on until a field tech can pull a sample and verify that there are\nno liquids involved . lee further informed me that the same day to tejas at\nhardy was not in the system , and , per gary hanks , needed to be corrected .\nlee informed me that the volumes were actually split 10 m at hardy / tejas and\n10 m at lomax . i went into sitara and updated the deal ticket , pathed and\nnominated over to pops .\nsaturday 1 / 20 / 01 - 8 : 30 am sean paged regarding the nomination at dow\nfreeport , he was questioning the validity , as we do not often flow at this\nmeter . i checked and the nomination was good for saturday ' s gas day . sean\ninformed me that the valero refinery was up and down and would be going\ncompletely down on sunday .\n10 : 00 am - sean called regarding tejas laporte , meter 665 . apparently , the\nmeter had a confirmed volume of 20 m and hpl / ena had no deal at the meter .\nchecked in pops and discovered that the deal was confirmed at 20 m on a deal\nvolume of zero . informed sean that the tejas volume was confirmed . also ,\nper sean koch george west ( meter 6722 ) had a nomination increase of 10 m ,\nwhich he wanted to confirm .\nsunday 1 / 21 / 01 10 : 00 am sean paged regarding the dow meter 1442 , pops still\nshowed a confirmed voume of 10 m which dow and oasis showed at zero for\nsunday . i checked the system and confirmed that the meter was indeed at\nzero and phoned sean back to confirm . checked on mtp hardy , sean informed me\nthat we came in on rate for saturday and that current meter activity looked\ngood .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.846+0000", "entityId": 3917, "properties": {"text": "Subject: meter 8022 - bad scada feedback to sitara\nbeginning on january 14 th at meter 988022 ( united salt ) , the bav feed into\npops shows excessive flow ( over 200 m / day beginning the 15 th ) . o ' neal brought\nthis to my attention this evening . this issue will blow out our ua 4 number ,\nand probably our p & l . i phoned lee in gas control to make sure a tech was\nsent out to check calibration and scada feed . i would like to have better\nestimates from the 14 th through the 19 th asap so that we can make corrections\nto all pertinent numbers .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.850+0000", "entityId": 3918, "properties": {"text": "Subject: take 30 % off with our super ticket !\nuse our super savings ticket at foot locker , lady foot locker , kids\nfoot locker , champs sports stores and at our web sites !\nwelcome to our friends & family super savings ticket .\nuse the special ticket below and receive 30 % off your purchase either in our\nstores or on our web sites . hurry ! this three - day ticket only is good\nthursday , jan . 25 , through saturday , jan 27 .\nshare the savings today and e - mail this offer to friends and family . many\nitems already are reduced and the discount is taken off the lowest sale price .\nclick below to print your friends & family super savings ticket . you must\nbring the coupon to the store to redeem .\nready , set , save !\nsimply click on the links provided and our friends & family discount will\nautomatically appear at checkout or you can type the code into the promotion\nbox during checkout . and returns are hassle - free , either to one of our stores\nor through the mail .\nfootlocker . com coupon code : em 21 f 2 jl\nladyfootlocker . com coupon code : em 23 ffjl\nkidsfootlocker . com coupon code : em 22 ffjl\nchampssports . com coupon code : em 20 ffjl\ndon ' t be left out - register today , if you want to hear about our products ,\npromotions , events and other specials - just click below to join .\n* terms and conditions *\nvalid 1 / 25 / 01 through 1 / 27 / 01 . passport must be presented at the time of\npurchase and cannot be used in conjunction with any other discount offer or\nassociate benefit . not redeemable for cash . applicable taxes must be paid by\nthe bearer . cannot be applied to prior purchases or to gift card purchases .\nvoid if copied and where prohibited , licensed or regulated . catalog\nexclusions apply . not valid at the nfl team shop at nfl experience in tampa ,\nfl . discount does not apply to nike air force 1 , timberland field boots ,\njordan xi , nike shox and nfl super bowl products .\nif you do not wish to receive future emails please click below to\nunsubscribe :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.855+0000", "entityId": 3919, "properties": {"text": "Subject: hpl noms . for jan . 23 , 2001\n( see attached file : hplnol 23 . xls )\n- hplnol 23 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.861+0000", "entityId": 3920, "properties": {"text": "Subject: enron / hpl actuals for january 19 - 21 , 2001\njan . 19 , 2001\nteco tap 31 . 667 / enron\njan . 20 , 2001\nteco tap 37 . 500 / enron\njan . 21 , 2001\nteco tap 40 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.866+0000", "entityId": 3921, "properties": {"text": "Subject: clickathome internet service & pc ordering now available !\ninternet service is now available for ordering ! ? as a pilot 3 invitee of the\nclickathome program , you can now order your pc and broadband internet service\nthrough the clickathome pilot website , which may be accessed at\nhttp : / / clickathomepilot . enron . com ( launch through internet explorer only ) . ?\nall pilot participants are encouraged to place their pc order by january\n25 th .\nmany of our internet service vendors are ready to begin providing service to\nyou today , while all vendors will be ready by late february . ? the\nclickathome internet service providers whom are currently available for\ninternet service are :\n?\ntime - warner in houston , ( cable modem )\nkingwood cable , ( cable modem )\nat & t - portland . ? ( cable modem )\nmsn , providing both dial - up and dsl service nationwide , and cox cable -\nomaha , providing cable modem service , ? will be available in late february .\n? we will provide further communication as soon as msn and cox cable - omaha\norders can be placed . we appreciate your patience in advance .\nto pre - qualify and sign up for service in your area today with time warner\nhouston , kingwood cable or at & t - portland , refer to\nhttp : / / clickathomepilot . enron . com for specific provider information and\ninstructions on how to place your order . ? if you have problems launching the\nsite , please copy and paste http : / / clickathomepilot . enron . com directly into\ninternet explorer .\nthe clickathome team is excited to bring you these options .\nclickathome team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.872+0000", "entityId": 3922, "properties": {"text": "Subject: enron net works - t & e policy\nplease review the attached t & e policy for enron net works .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.879+0000", "entityId": 3923, "properties": {"text": "Subject: announcements for neon\nhey guys and girls , there are three things you need to announce tomorrow\nnight at neon .\n?\n? ? ? 1 ) ? ? ? get a count of the kids in your group who need to go to the\nretreat late . ? there is a van leaving later friday night , due to a several\nkids who are participating in a northland basketball game . ? there is only\none van , and priority will be for the kids playing and girls cheering . ? get\na count of those who need to go late ( it might even be good to get their\nnames ) . ? you can email this information to beckyp @ bammel . org\n? ? ? 2 ) ? ? ? ? the toilet bowl will be at the ncs field at 2 : 00 , unless the\nfield is wet , and then it will be moved to the strack middle school field .\n? ? ? 3 ) ? ? ? there will be a superbowl party at scott simpson ' s home starting\nat 5 : 30 . ? girls bring sweets , guys bring chips and dips .\n?\nit looks like a busy weekend for the kids ! ? have a great neon .\n?\nbobby\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.884+0000", "entityId": 3924, "properties": {"text": "Subject: hpl nom for january 24 , 2001\n( see attached file : hplnol 24 . xls )\n- hplnol 24 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.888+0000", "entityId": 3925, "properties": {"text": "Subject: enron / hpl actuals for january 22 , 2001\nteco tap 60 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.893+0000", "entityId": 3926, "properties": {"text": "Subject: february wellhead production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\nfebruary . please be advised that this is a preliminary estimate as to this\ndate , we have received one nom for february . i will update you with any\nrevisions as they occur .\ni ' ll be out of the office on tomorrow ; however , i will return to the office\non thursday .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.898+0000", "entityId": 3927, "properties": {"text": "Subject: re : first delivery - pure resources , l . p .\nvance ,\ndeal # 581202 has been created and entered in sitara .\nbob\nvance l taylor\n01 / 22 / 2001 09 : 53 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , amelia alland / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : first delivery - pure resources , l . p .\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period\npure resources , l . p . 9867 500 mmbtu / d 100 % gas daily less $ 0 . 16 1 / 19 -\n1 / 31\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of february .\nadditionally , this is a producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 01 / 22 / 2001\n04 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 01 / 22 / 2001 03 : 01 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ees @ ees , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeff a austin / hou / ees @ ees , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect\ncc :\nsubject : first delivery - pure resources , l . p .\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.903+0000", "entityId": 3928, "properties": {"text": "Subject: long term deals not going to aep\nlong term deals that are not going to aep should be booked as ena - im\nlonestar .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.910+0000", "entityId": 3929, "properties": {"text": "Subject: texoma - beaumont interconnect\nmobil says the low point of their takes will be during february will be from\nfeb 1 to 14 . so any day in that time period would be a good time for hpl to\ndo the required maintenance at the texoma - beaumont system interconnect .\nwe need to define our game plan :\n- what day to do the work\n- how much gas hpl will deliver through our own meter\n- how we use centana to deliver the rest of the hpl volumes\n- if we had planned in feb to baseload some of our midcon obligation at mobil\nas we have done in dec and jan , then we will need to do something different\nwhenever we do the maintenance\njames - we are scheduled to meet with mobil in beaumont at 10 . 30 am thursday\nfeb 1 , to go over the game plan with them .\npat - do you want anyone from hms to attend ?\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.919+0000", "entityId": 3930, "properties": {"text": "Subject: fyi - union carbide\nunion carbide will reduce their takes at texas city from 6000 / d to 4000 / d on\ndeal ticket 550968 - i ' ve already changed the ticket - it ' s priced at gas\ndaily\nthe 10 , 000 / d term sale remains unchanged", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.924+0000", "entityId": 3931, "properties": {"text": "Subject: deal # 502952\ndaren ,\nthe above deal number expired at the end of november 2000 and needs to either\nbe extended through december , or a new deal inputted . can you assist me in\nthis ?\nthanks .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.929+0000", "entityId": 3932, "properties": {"text": "Subject: revised : eastrans nomination effective 1 / 25 / 01\ndisregard the nomination information below . the gas will not flow into\neastrans and deliveries and redeliveries will continue to be 0 mmbtu / dy .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n01 / 24 / 2001 08 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n01 / 24 / 2001 08 : 45 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nconnie wester / easttexas / pefs / pec @ pec , ronald c .\ndouglas / gcs / cec / pec @ pec , daniel c rider / houston / pefs / pec @ pec , john c\nlehman / field / pefs / pec @ pec , donna j dobb / houston / pefs / pec @ pec , sharon\nbeemer / houston / pefs / pec @ pec\ncc :\nsubject : eastrans nomination effective 1 / 25 / 01\nclarification to below : effective 1 / 25 / 01 ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n01 / 24 / 2001 08 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n01 / 24 / 2001 08 : 32 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nconnie wester / easttexas / pefs / pec @ pec , ronald c .\ndouglas / gcs / cec / pec @ pec , daniel c rider / houston / pefs / pec @ pec , john c\nlehman / field / pefs / pec @ pec , donna j dobb / houston / pefs / pec @ pec , sharon\nbeemer / houston / pefs / pec @ pec\ncc :\nsubject : eastrans nomination effective 1 / 25 / 01\nplease increase deliveries into eastrans to 25 , 000 mmbtu / dy effective\n9 / 25 / 01 and continue until further notified .\nthe redeliveries will be :\n7300 mmbtu from fuels cotton valley\n17 , 700 mmbtu to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.934+0000", "entityId": 3933, "properties": {"text": "Subject: eastrans nomination effective 1 / 25 / 01\nclarification to below : effective 1 / 25 / 01 ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marta k henderson / houston / pefs / pec on\n01 / 24 / 2001 08 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarta k henderson\n01 / 24 / 2001 08 : 32 am\nto : darrel f . bane / easttexas / pefs / pec @ pec , john a . bretz / gcs / cec / pec @ pec ,\nchad w . cass / gcs / cec / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec ,\ndonna c . spencer / gcs / cec / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com , carlos . j . rodriguez @ enron . com ,\nconnie wester / easttexas / pefs / pec @ pec , ronald c .\ndouglas / gcs / cec / pec @ pec , daniel c rider / houston / pefs / pec @ pec , john c\nlehman / field / pefs / pec @ pec , donna j dobb / houston / pefs / pec @ pec , sharon\nbeemer / houston / pefs / pec @ pec\ncc :\nsubject : eastrans nomination effective 1 / 25 / 01\nplease increase deliveries into eastrans to 25 , 000 mmbtu / dy effective\n9 / 25 / 01 and continue until further notified .\nthe redeliveries will be :\n7300 mmbtu from fuels cotton valley\n17 , 700 mmbtu to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.938+0000", "entityId": 3934, "properties": {"text": "Subject: eastrans nomination effective 1 / 25 / 01\nplease increase deliveries into eastrans to 25 , 000 mmbtu / dy effective\n9 / 25 / 01 and continue until further notified .\nthe redeliveries will be :\n7300 mmbtu from fuels cotton valley\n17 , 700 mmbtu to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.943+0000", "entityId": 3935, "properties": {"text": "Subject: hpl nom for january 25 , 2001\n( see attached file : hplnol 25 . xls )\n- hplnol 25 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.947+0000", "entityId": 3936, "properties": {"text": "Subject: february 2001 - mcnic / lyondell noms .\nfyi ! meter 1063 for feb .\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 24 / 2001 08 : 41\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kevin olson \" on 01 / 22 / 2001 03 : 28 : 36 pm\nto : \" amy lannou \"\ncc : \" janice berke - davis \"\nsubject : february 2001 - mcnic / lyondell noms .\namy ,\nplease note that the mcnic noms for february , 2001 into the lyondell\nchannelview plant via hpl will be zero mmbtu / day .\ni will notify you of any changes .\nplease call should you have any questions .\nthanks !\nkevin e . olson\nenergy service providers , llp\n1521 green oak place # 170\nkingwood , texas 77339\nphone : 281 - 359 - 4610\nfax : 281 - 359 - 4656\nemail : olson @ espllp . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.952+0000", "entityId": 3937, "properties": {"text": "Subject: availabilty spreadsheet for february , 2001 with several small\nrevisions .\nhere is the second with revisions .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 01 / 24 / 2001 07 : 24\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n01 / 22 / 2001 04 : 05 pm\nto :\ncc :\nsubject : availabilty spreadsheet for february , 2001 with several small\nrevisions .\navailabilty spreadsheet for february , 2001 with several small revisions .\n- enronavailso 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.956+0000", "entityId": 3938, "properties": {"text": "Subject: attached is the availability spreadsheet for february , 2001 . if i\ncan be of any assistance , please\nthis is the first of 2 e - mails received by devon . the second will\nimmediately follow .\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 01 / 24 / 2001 07 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n01 / 22 / 2001 01 : 41 pm\nto :\ncc :\nsubject : attached is the availability spreadsheet for february , 2001 . if i\ncan be of any assistance , please\nattached is the availability spreadsheet for february , 2001 . if i can be of\nany assistance , please call me at 405 . 228 . 4298 .\n- enronavailso 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.961+0000", "entityId": 3939, "properties": {"text": "Subject: class confirmation - stacey neuweiler\nstacey neuweiler is enrolled in communicating effectively\nclass days and times :\n03 / 02 / 2001 01 : 00 : 00 pm - 05 : 00 : 00 pm\nparticipant fee : $ 300 . 00\nthank you for your support in providing quality and cost effective\ndevelopment opportunites at enron .\nyour company and rc will be charged $ 300 . 00\nif you have any questions , please call the development center team at\n713 - 853 - 0357 .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.966+0000", "entityId": 3940, "properties": {"text": "Subject: meter 986679 ; the hughes c / p\ni have flow at the meter everyday without a deal in dec . it is on the ua 4\nand needs a ticket . bob phoned vance and vance does not know of any activity\nof theirs at the meter . any insight ?\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.971+0000", "entityId": 3941, "properties": {"text": "Subject: re : remaining ua 4 meter variances\nlast one , shawnee springs meter 986315 . purchase should be from torch on the\n215 . . . . was on deal ticket 138605 , which expired in september , and has been\nallocated to up until nov . i think that torch is now cleco . there should\nbe a purch . at the meter . once we get the last two , you are done .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.976+0000", "entityId": 3942, "properties": {"text": "Subject: hunter singing at christmas program\nhere ' s a video of the three and four year old kids singing at the christmas\nprogram at church last year .\nit ' s about a minute and half in length .\nhunter drowns out the other kids with his monotonal singing .\nhe ' s holding a staff and is dressed as a shepherd with a black headband on\nthe row below the back row angels .\nto view this video , you ' ll need microsoft media player ( to download the\nplayer , go to\n- ram .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.982+0000", "entityId": 3943, "properties": {"text": "Subject: houston getaways\nhouston fare sale\npurchase at delta . com by january 30\nhello mr farmer !\ntake advantage of some great low fares from both hobby and bush\nintercontinental to select u . s . cities . and because travel on these fares can\nalso originate in other cities , let friends and family know how inexpensive a\nvisit to houston can be . see the list of cities and fares below .\n- - these fares require a 14 - day advance purchase .\n- - tickets must be purchased at delta . com by january 30 , 2001 .\n- - travel must be completed by march 31 , 2001 .\n- - travel between houston and cities in florida is not permitted on february\n16 , 23 and 25 , 2001 .\nfor additional information and to purchase a ticket :\nhttp : / / www . delta . com / servlet / acredirect ? rdid = 2454 max . stay 30 days .\nfare validity : fares are valid in the economy ( coach ) cabin on delta / delta\nconnection / delta express flights only .\nchanges / standby : all fares are nonrefundable . prior to departure : value of\nfare may be applied to any applicable published delta fare less a $ 75 service\ncharge ( $ 50 for delta express ) . after departure : changes may be made for $ 75\n( $ 50 for delta express ) as long as rule requirements are satisfied . special\noffers issued on delta . com may not be applied to other web fares . credit\nvouchers cannot be used for payment for tickets purchased on delta . com . same\nday standby is allowed .\ntaxes / fees : fares do not include passenger facility charge ( s ) of up to $ 18 .\nmiscellaneous : fares are subject to change without notice . other restrictions\nmay apply . it is the responsibility of the passenger to be in possession of\nall necessary documentation ( e . g . , valid passport , visa where applicable ) at\nthe time of departure from origin . this offer is void where prohibited by\nlaw . third party purchases of tickets are not permitted on delta . com . the\ncredit card holder making the purchase must be a traveling passenger or have\nthe same last name of at least one passenger . these fees are the\nresponsibility of the passenger and must be paid at the time of ticketing .\nsubscribe / unsubscribe\nyou have received this e - mail because your e - mail preferences indicate you\nwould like to receive information about cities contained in this email . to\nmodify your e - mail options , or unsubscribe from this service , please visit\nthe following link and enter your skymiles account number and pin . you will\nthen be able to update your preferences in our e - mail programs section .\ncopyright information\nthis e - mail message and its contents are copyrighted and are\nproprietary products of delta air lines , inc . any unauthorized\nuse , reproduction , or transfer of this message or its contents ,\nin any medium , is strictly prohibited .\nthis is a post only e - mail . please do not respond to this message .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.987+0000", "entityId": 3944, "properties": {"text": "Subject: george w ' s new limo\nthought you might be able to appreciate a limo . with style .\n( see attached file : bush - limo . jpg )\n- bush - limo . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.992+0000", "entityId": 3945, "properties": {"text": "Subject: hpl nom for january 25 , 2001\n( see attached file : hplnol 26 . xls )\n- hplnol 26 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:20.998+0000", "entityId": 3946, "properties": {"text": "Subject: enron / hpl actuals for january 24 , 2001\nno flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.003+0000", "entityId": 3947, "properties": {"text": "Subject: txu fuels / sds nomination for february 2001\nattached is the february 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel company ( previously tufco ) and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.008+0000", "entityId": 3948, "properties": {"text": "Subject: re : basin production from ga 213\ndaren ,\ni ' ve just received word from basin to bring production on sometime today or\ntomorrow ( they expect to get up to b / t 10 , 000 - 15 , 000 d ) ; if our facility\nplanning engineer determines that we can take the gas , then it will flow for\nall of february and be priced at 100 % gas daily less $ 0 . 16 .\nvlt\ndaren j farmer\n01 / 25 / 2001 01 : 47 pm\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\ni need for you , or the producer services group , to determine if you think the\ngas will flow for the month and at what price . i will use your decision for\nour bidweek postion .\nd\nvance l taylor\n01 / 25 / 2001 11 : 53 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : basin production from ga 213\nfyi ,\nhow would you want to handle for february nomination ?\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 01 / 25 / 2001\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brad blevins 01 / 25 / 2001 10 : 56 am\nto : john peyton / hou / ect @ ect\ncc : nick cocavessis / corp / enron @ enron , steve - hpl - schneider / hou / ect @ ect , pat\nflavin / gco / enron @ enron , vance l taylor / hou / ect @ ect , buck\nthomas / gco / enron @ enron\nsubject : basin production from ga 213\ni have reviewed the gas composition analysis from spl of the basin production\nfrom ga 213 . while spl ' s analysis does show a dewpoint of around 20 degrees\nf at 400 psig , it is both my and john handley ' s opinion that the gas from the\nwellbore had stratified by the time that this sample was taken . we expect\nthe dewpoint of the flowing gas to be higher . however , this was the best\nsample that could be obtained at the time . we have conferred with steve\nschneider and we are willing to take this gas on a conditional basis over the\nnext couple of days . once the 6 \" line has been pigged , the production flows\nstablilized and mitchell ' s conditioning equipment lined out over the next\ncouple of days , hms will need to take another sample at the meter run and\nhave spl run an extended analysis with a dewpoint curve on an expedited\nbasis . should this sample indicate a dewpoint over 45 degrees f , then this\nproduction will be shut in again until hydrocarbon dewpoint conditioning\nequipment has been installed . in the meantime , hms needs to keep a close\nwatch on all southern union city gates on galveston island to monitor for\nliquids fallout .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.016+0000", "entityId": 3949, "properties": {"text": "Subject: crosstex energy services , driscoll ranch # 1 , # 3 , duval cty . , tx .\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by susan smith / hou / ect on 01 / 25 / 2001 12 : 24\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 01 / 23 / 2001 03 : 44 pm\nto : melissa graves / hou / ect @ ect\ncc : joanne harris / na / enron @ enron , donald p reinhardt / hou / ect @ ect , susan\nsmith / hou / ect @ ect , vance l taylor / hou / ect @ ect , kreg hall / hou / ect @ ect , christy\nsweeney / hou / ect @ ect , jerry bubert / na / enron @ enron\nsubject : crosstex energy services , driscoll ranch # 1 , # 3 , duval cty . , tx .\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 01 / 23 / 2001\n03 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njerry bubert\n01 / 23 / 2001 03 : 38 pm\nto : shawna flynn / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , george weissman / hou / ect @ ect , robert\nwalker / hou / ect @ ect , kimberlee a bennick / hou / ect @ ect , christy\nsweeney / hou / ect @ ect\nsubject : crosstex energy services , driscoll ranch # 1 , # 3 , duval cty . , tx .\ncrosstex has requested gas daily pricing for the above wells for the period\n2 / 1 / 01 - 2 / 28 / 01 . please prepare a transaction agreement for use with gas\ndaily pricing transactions formed under section 2 . 2 of the gas purchase\nagreement with crosstex with the following terms :\nterm : february 1 , 2001 through february 28 , 2001\ndelivery points : hpl meter nos . 9858 and 9868\nfirst 8000 mmbtu / d in the aggregate at the base price of if hsc less $ 0 . 10 .\ngas delivered in excess of the 8000 mmbtu / d in the aggragate at gda hsc less\n$ 0 . 15 .\nthanks . jerry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.022+0000", "entityId": 3950, "properties": {"text": "Subject: basin production from ga 213\nfyi ,\nhow would you want to handle for february nomination ?\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 01 / 25 / 2001\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brad blevins 01 / 25 / 2001 10 : 56 am\nto : john peyton / hou / ect @ ect\ncc : nick cocavessis / corp / enron @ enron , steve - hpl - schneider / hou / ect @ ect , pat\nflavin / gco / enron @ enron , vance l taylor / hou / ect @ ect , buck\nthomas / gco / enron @ enron\nsubject : basin production from ga 213\ni have reviewed the gas composition analysis from spl of the basin production\nfrom ga 213 . while spl ' s analysis does show a dewpoint of around 20 degrees\nf at 400 psig , it is both my and john handley ' s opinion that the gas from the\nwellbore had stratified by the time that this sample was taken . we expect\nthe dewpoint of the flowing gas to be higher . however , this was the best\nsample that could be obtained at the time . we have conferred with steve\nschneider and we are willing to take this gas on a conditional basis over the\nnext couple of days . once the 6 \" line has been pigged , the production flows\nstablilized and mitchell ' s conditioning equipment lined out over the next\ncouple of days , hms will need to take another sample at the meter run and\nhave spl run an extended analysis with a dewpoint curve on an expedited\nbasis . should this sample indicate a dewpoint over 45 degrees f , then this\nproduction will be shut in again until hydrocarbon dewpoint conditioning\nequipment has been installed . in the meantime , hms needs to keep a close\nwatch on all southern union city gates on galveston island to monitor for\nliquids fallout .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.028+0000", "entityId": 3951, "properties": {"text": "Subject: potential list - feb . 2001\ndaren :\nhere is what we are aware of for potential for 2 / 01 :\ncomstock sutton : brazoria county , 2 , 000 mmbtu / d - gas daily mid month .\nd & p operating , harris county , 1 , 000 mmbtu / d - gas daily mid month\nplease let me know if you have any questions ,\nthanks ,\nsusan smith\nx 33321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.032+0000", "entityId": 3952, "properties": {"text": "Subject: clickathome pilot 3 deadline extended !\nthe clickathome pilot 3 deadline has been extended !\nthe deadline has been extended for pc ordering with dell until midnight\njanuary 31 st . if you have already ordered your pc , you may disregard this\nmessage . internet service provider ( isp ) ordering will remain open . to\nvisit the pilot website and to place your order for either your pc or your\nisp click on the link below :\nhttp : / / clickathomepilot . enron . com /\n( please be sure to use internet explorer ! ) if the site is not working\ncorrectly , please copy the following url http : / / clickathomepilot . enron . com ,\nclose lotus notes , and paste directly into internet explorer .\nsend any questions to the clickathome mailbox at clickathomepilot 3 @ enron . com .\nclickathome team !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.037+0000", "entityId": 3953, "properties": {"text": "Subject: calpine daily gas nomination\n> >\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.041+0000", "entityId": 3954, "properties": {"text": "Subject: february nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 01 / 25 / 2001 10 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 01 / 25 / 2001 10 : 33 : 52 am\nto : \" ' lamphier , gary ' \"\ncc : kyle . r . lilly @ enron . com , mary . poorman @ enron . com , \" carter , john \"\n, \" ricks , ruth \"\nsubject : february nominations at shell deer park\ngary ,\nfebruary 2001 nominations for gas delivery to shell deer park are as\nfollows :\nfirm baseload - 75 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 15 , 000 mmbtu / d 25 , 000 mmbtu / d 35 , 000 mmbtu / d\nturnaround activity started in january is expected to continue for the\nduration of february\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n> home page : http : / / rsweb\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.046+0000", "entityId": 3955, "properties": {"text": "Subject: defs purchase of teco pipeline\neffective february 1 , 2001 duke energy field services ( defs ) will begin\noperating teco pipeline under the name duke energy guadalupe pipeline inc .\nwe are attempting to make this transition as seamless as possible with a\nminimum of changes .\nthe only meter number change will be at the el paso field services waha\nheader . in the past shippers have nominated at 00501723 whereas starting\nfebruary lst you will nominate at 8000007 .\nfor the time being , use the same nomination form you have used in the past .\nbe sure to include both upstream and downstream contract numbers on your\nthis form . attached is a file which will list , with a description , all the\nmeters on the duke energy guadalupe pipeline .\noperational contacts are as follows :\neileen ponton - senior representative marketing operations ( responsible\nfor daily business )\noffice nbr : 713 - 627 - 6206\npager : 800 - 976 - 2802\nfax : 713 - 627 - 6273\ndonna spencer - manager marketing operations ( will back up eileen )\noffice nbr : 713 - 627 - 6224\nfax : 713 - 627 - 6273\ngas control : 888 - 204 - 1781 ( staffed 24 hours / day , 7 days / week )\nattached is a list of all contacts for the duke energy guadalupe pipeline .\nplease remember february lst noms are to be faxed to defs , attn : guadalupe\npipeline , at 713 - 627 - 6273 . if i can be of any further help , please do not\nhesitate to call me .\n( see attached file : shipper meter list . xls )\n( see attached file : degp contact list . doc )\n- shipper meter list . xls\n- degp contact list . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.050+0000", "entityId": 3956, "properties": {"text": "Subject: shipper meter list\nsorry , i attached an empty spreadsheet . try launching this one ! !\n( see attached file : shipper meter list . xls )\n- shipper meter list . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.055+0000", "entityId": 3957, "properties": {"text": "Subject: eastrans nomination effective february 1 , 2001\neffective 2 / 1 / 01 , the deliveries into eastrans will be 25 , 000 mmbtu / dy .\nthe redeliveries will be :\n7300 mmbtu / dy from fuels cotton valley\n17 , 700 mmbtu to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.060+0000", "entityId": 3958, "properties": {"text": "Subject: neon discussion january 31\nhere is an idea for this week . ? brad will hopefully be providing the\nmaterial starting next week ( experiencing god is his plan ) .\n?\nbobby\n- acceptance . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.064+0000", "entityId": 3959, "properties": {"text": "Subject: fw : father ' s letter\n- - - - - original message - - - - -\nfrom : michael boykin [ mailto : boykin @ flash . net ]\nsent : friday , january 26 , 2001 4 : 17 pm\nsubject : fw : father ' s letter\n> father ' s love letter\n>\n> my child *\n> you may not know me , but i know everything about you * psalm 139 : 1\n> i know when you sit down and when you rise up * psalm 139 : 2\n> i am familiar with all your ways * psalm 139 : 3\n> even the very hairs on your head are numbered * matthew 10 : 29 - 31\n> for you were made in my image * genesis 1 : 27\n> in me you live and move and have your being * acts 17 : 28\n> for you are my offspring * acts 17 : 28\n> i knew you even before you were conceived * jeremiah 1 : 4 - 5\n> i chose you when i planned creation * ephesians 1 : 11 - 12\n> you were not a mistake , for all your days are written in my book * psalm\n139 : 15 - 16\n> i determined the exact time of your birth and where you would live * acts\n17 : 26\n> you are fearfully and wonderfully made * psalm 139 : 14\n> i knit you together in your mother ' s womb * psalm 139 : 13\n> and brought you forth on the day you were born * psalm 71 : 6\n> i have been misrepresented by those who don ' t know me * john 8 : 41 - 44\n> i am not distant and angry , but am the complete expression of love * 1 john\n4 : 16\n> and it is my desire to lavish my love on you * 1 john 3 : 1\n> simply because you are my child and i am your father * 1 john 3 : 1\n> i offer you more than your earthly father ever could * matthew 7 : 11\n> for i am the perfect father * matthew 5 : 48\n> every good gift that you receive comes from my hand * james 1 : 17\n> for i am your provider and i meet all your needs * matthew 6 : 31 - 33\n> my plan for your future has always been filled with hope * jeremiah 29 : 11\n> because i love you with an everlasting love * jeremiah 31 : 3\n> my thoughts toward you are countless as the sand on the seashore * psalm\n139 : 17 - 18\n> and i rejoice over you with singing * zephaniah 3 : 17\n> i will never stop doing good to you * jeremiah 32 : 40\n> for you are my treasured possession * exodus 19 : 5\n> i desire to establish you with all my heart and all my soul * jeremiah 32 : 41\n> and i want to show you great and marvelous things * jeremiah 33 : 3\n> if you seek me with all your heart , you will find me * deuteronomy 4 : 29\n> delight in me and i will give you the desires of your heart * psalm 37 : 4\n> for it is i who gave you those desires * philippians 2 : 13\n> i am able to do more for you than you could possibly imagine * ephesians\n3 : 20\n> for i am your greatest encourager * 2 thessalonians 2 : 16 - 17\n> i am also the father who comforts you in all your troubles * 2 corinthians\n1 : 3 - 4\n> when you are brokenhearted , i am close to you * psalm 34 : 18\n> as a shepherd carries a lamb , i have carried you close to my heart * isaiah\n40 : 11\n> one day i will wipe away every tear from your eyes * revelation 21 : 3 - 4\n> and i ' ll take away all the pain you have suffered on this earth * revelation\n21 : 3 - 4\n> i am your father , and i love you even as i love my son , jesus * john 17 : 23\n> for in jesus , my love for you is revealed * john 17 : 26\n> he is the exact representation of my being * hebrews 1 : 3\n> he came to demonstrate that i am for you , not against you * romans 8 : 31\n> and to tell you that i am not counting your sins * 2 corinthians 5 : 18 - 19\n> jesus died so that you and i could be reconciled * 2 corinthians 5 : 18 - 19\n> his death was the ultimate expression of my love for you * 1 john 4 : 10\n> i gave up everything i loved that i might gain your love * romans 8 : 31 - 32\n> if you receive the gift of my son jesus , you receive me * 1 john 2 : 23\n> and nothing will ever separate you from my love again * romans 8 : 38 - 39\n> come home and i ' ll throw the biggest party heaven has ever seen * luke 15 : 7\n> i have always been father , and will always be father * ephesians 3 : 14 - 15\n> my question is * will you be my child ? * john 1 : 12 - 13\n> i am waiting for you * luke 15 : 11 - 32\n>\n> love , your dad . almighty god\n>\n> written by barry adams copyright 1999\n> intended for personal use . no reprint without permission\n>\n> http : / / www . fathersloveletter . com /\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.070+0000", "entityId": 3960, "properties": {"text": "Subject: hpl nom for january 27 , 2001\n( see attached file : hplnol 27 . xls )\n- hplnol 27 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.090+0000", "entityId": 3961, "properties": {"text": "Subject: re : basin production from ga 213\ndaren / vance ,\ndeal # 586954 has been created and entered in sitara :\ndate meter # volume price\n2 / 1 / 01 - 2 / 28 / 01 9696 5 , 000 100 % gas daily less $ 0 . 16\nbob\ndaren j farmer\n01 / 26 / 2001 08 : 25 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 26 / 2001\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 25 / 2001 01 : 58 pm\nto : daren j farmer / hou / ect @ ect\ncc : john peyton / hou / ect @ ect\nsubject : re : basin production from ga 213\ndaren ,\ni ' ve just received word from basin to bring production on sometime today or\ntomorrow ( they expect to get up to b / t 10 , 000 - 15 , 000 d ) ; if our facility\nplanning engineer determines that we can take the gas , then it will flow for\nall of february and be priced at 100 % gas daily less $ 0 . 16 .\nvlt\ndaren j farmer\n01 / 25 / 2001 01 : 47 pm\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\ni need for you , or the producer services group , to determine if you think the\ngas will flow for the month and at what price . i will use your decision for\nour bidweek postion .\nd\nvance l taylor\n01 / 25 / 2001 11 : 53 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : basin production from ga 213\nfyi ,\nhow would you want to handle for february nomination ?\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 01 / 25 / 2001\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brad blevins 01 / 25 / 2001 10 : 56 am\nto : john peyton / hou / ect @ ect\ncc : nick cocavessis / corp / enron @ enron , steve - hpl - schneider / hou / ect @ ect , pat\nflavin / gco / enron @ enron , vance l taylor / hou / ect @ ect , buck\nthomas / gco / enron @ enron\nsubject : basin production from ga 213\ni have reviewed the gas composition analysis from spl of the basin production\nfrom ga 213 . while spl ' s analysis does show a dewpoint of around 20 degrees\nf at 400 psig , it is both my and john handley ' s opinion that the gas from the\nwellbore had stratified by the time that this sample was taken . we expect\nthe dewpoint of the flowing gas to be higher . however , this was the best\nsample that could be obtained at the time . we have conferred with steve\nschneider and we are willing to take this gas on a conditional basis over the\nnext couple of days . once the 6 \" line has been pigged , the production flows\nstablilized and mitchell ' s conditioning equipment lined out over the next\ncouple of days , hms will need to take another sample at the meter run and\nhave spl run an extended analysis with a dewpoint curve on an expedited\nbasis . should this sample indicate a dewpoint over 45 degrees f , then this\nproduction will be shut in again until hydrocarbon dewpoint conditioning\nequipment has been installed . in the meantime , hms needs to keep a close\nwatch on all southern union city gates on galveston island to monitor for\nliquids fallout .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.098+0000", "entityId": 3962, "properties": {"text": "Subject: 2000 w 2 information\nthe 2000 form w - 2 will be mailed to your address of record by january 31 ,\n2001 . if you have not received your form by february 20 th , you may request ,\nin writing , for a duplicate copy to be sent to you . please note that a\nwritten request , including authorized signature is required .\nwhen requesting a duplicate form , please specify the year for which you need\na copy , sign your request , and include the following information :\nname\ncomplete mailing address\nphone number\nsocial security number\nyou may mail your request to :\nenron corp\neb 1528\np o box 1188\nhouston tx 77002\nor you may fax your request to 713 - 646 - 3755 .\nyour request will be processed within one week of receipt .\nif you have a question regarding the information on your form w 2 , please\ncontact the payroll call center at 713 - 345 - 5555 option 1 .\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.104+0000", "entityId": 3963, "properties": {"text": "Subject: natural gas nomination for february 2001\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for february 2001 :\n32 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for february 2001 :\n6 , 000 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.113+0000", "entityId": 3964, "properties": {"text": "Subject: mcnic / lyondell - nomination change - jan 2001\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 26 / 2001 08 : 14\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kevin olson \" on 01 / 26 / 2001 08 : 19 : 12 am\nto : \" amy lannou \"\ncc : \" janice berke - davis \"\nsubject : mcnic / lyondell - nomination change - jan 2001\namy ,\nplease note that the mcnic noms for january , 2001 into the lyondell\nchannelview plant via hpl will changes accordingly :\njan 29 : from 10 , 000 mmbtu / day to zero .\njan 30 : from 10 , 000 mmbtu / day to zero .\njan 31 : from 10 , 000 mmbtu / day to zero .\nplease call should you have any questions .\nthanks !\nkevin e . olson\nenergy service providers , llp\n1521 green oak place # 170\nkingwood , texas 77339\nphone : 281 - 359 - 4610\nfax : 281 - 359 - 4656\nemail : olson @ espllp . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.120+0000", "entityId": 3965, "properties": {"text": "Subject: weekly fan fares\ndelta fan fares for february 3 - february 6 , 2001\nhello mr farmer !\nwelcome to this week ' s version of delta fan fares . for the uninitiated , it ' s\nan incredible e - mail program for delta customers who want to get away from it\nall and enjoy events and activities in cities across the country .\nbefore you start packing , remember that you ' ll need your skymiles number ,\n2341930101 , to take advantage of this exclusive online offer . these fares\nare for round - trip travel with a saturday departure and a return on either\nmonday or tuesday .\nfrom this week ' s list , find a trip that you can ' t afford to miss . then follow\nthis link to purchase your delta ticket online :\nprofessional basketball\npurchase a fan fare and support your favorite basketball team on the road\nthis coming weekend .\ncharlotte at phoenix\n- - charlotte , nc ( clt ) phoenix , az ( phx ) - $ 178\ncleveland at boston\n- - cleveland , oh ( cle ) boston , ma ( bos ) - $ 128\ndenver at washington\n- - denver , co ( den ) washington national , dc ( dca ) - $ 168\nindiana at milwaukee\n- - indianapolis , in ( ind ) milwaukee , wi ( mke ) - $ 88\nnew york at miami\n- - new york - kennedy , ny ( jfk ) miami , fl ( mia ) - $ 148\ngolden state at dallas\n- - oakland , ca ( oak ) dallas - fort worth , tx ( dfw ) - $ 168\nportland at los angeles ( clippers )\n- - portland , or ( pdx ) los angeles , ca ( lax ) - $ 138\nseattle at utah\n- - seattle , wa ( sea ) salt lake city , ut ( slc ) - $ 128\nprofessional hockey\nthe all - star game is in denver this sunday . come see the league ' s best\nplayers heat up the ice .\n- - idaho falls , id ( ida ) denver , co ( den ) - $ 118\n- - los angeles , ca ( lax ) denver , co ( den ) - $ 138\n- - portland , or ( pdx ) denver , co ( den ) - $ 138\n- - sacramento , ca ( smf ) denver , co ( den ) - $ 138\n- - salt lake city , ut ( slc ) denver , co ( den ) - $ 108\n- - seattle , wa ( sea ) denver , co ( den ) - $ 148\nsenior pga tour\naction moves to the royal caribbean classic at crandon park golf club in key\nbiscayne , florida . enjoy some golf while spending the weekend in the south\nflorida sun .\n- - new york - kennedy , ny ( jfk ) miami , fl ( mia ) - $ 148\n- - tallahassee , fl ( tlh ) miami , fl ( mia ) - $ 118\narts and entertainment\nfan fares gives you the chance to spend some time in a city you might not\notherwise visit . this weekend , enjoy yourself in milwaukee .\ntravel to milwaukee\na friendly city with a decidedly sophisticated air , this midwestern gem\noffers plenty of art and cultural events , nightlife , and beautiful lakeside\nparks . and there ' s plenty to do indoors in milwaukee , so don ' t let the\nfebruary weather keep you away .\nin addition to the professional basketball action on saturday night ( indiana\ncomes to town to play milwaukee ) , here ' s a few other ideas to get your\nplanning started .\nthe haggerty museum of art\nlocated on the western end of downtown on the marquette university campus ,\nthe museum ' s collection includes works by dali , chagall and man ray . you ' ll\nalso find an impressive collection of sculpture and contemporary glass .\nthe milwaukee public museum\nthis museum of human and natural history is one of the nation ' s best and\noften sets the standard for similar institutions . everyone in the family will\nenjoy the engaging exhibits . you ' ll find 150 , 000 square feet of exhibit\nspace , through which you ' ll be able to visit all of the world ' s continents .\nfind the museum and the humphrey imax dome theater at 800 west wells street .\n- - atlanta , ga ( atl ) milwaukee , wi ( mke ) - $ 128\n- - birmingham , al ( bhm ) milwaukee , wi ( mke ) - $ 128\n- - charleston , sc ( chs ) milwaukee , wi ( mke ) - $ 138\n- - cincinnati , oh ( cvg ) milwaukee , wi ( mke ) - $ 98\n- - huntsville , al ( hsv ) milwaukee , wi ( mke ) - $ 128\n- - jackson , ms ( jan ) milwaukee , wi ( mke ) - $ 138\n- - jacksonville , fl ( jax ) milwaukee , wi ( mke ) - $ 138\n- - lexington , ky ( lex ) milwaukee , wi ( mke ) - $ 108\n- - little rock , ar ( lit ) milwaukee , wi ( mke ) - $ 128\n- - macon , ga ( mcn ) milwaukee , wi ( mke ) - $ 138\n- - montgomery , al ( mgm ) milwaukee , wi ( mke ) - $ 138\n- - nashville , tn ( bna ) milwaukee , wi ( mke ) - $ 118\n- - new york - la guardia , ny ( lga ) milwaukee , wi ( mke ) - $ 138\n- - pensacola , fl ( pns ) milwaukee , wi ( mke ) - $ 138\n- - washington - national , dc ( dca ) milwaukee , wi ( mke ) - $ 128\nyour weekend starts here !\nwant to take advantage of any of these great delta fan fares ? click below !\ndelta reservations\nto make delta reservations from delta ' s home page , visit :\nfares do not include a $ 2 . 75 federal excise tax which will be imposed on each\nflight segment of your itinerary . a flight segment is defined as a takeoff\nand a landing .\nservice : some services may be provided by the delta connection carriers :\natlantic coast jet , atlantic southeast airlines , comair and skywest .\nterms and conditions\nrestrictions : seats are limited and fares may not be available on all days or\nall flights .\npurchase requirements : fares must be purchased via delta ' s web site\n( delta . com ) only .\nticketing period : tickets must be purchased by 02 / 03 / 01 .\ntravel period : outbound travel is permitted on saturday 02 / 03 / 01 only .\ninbound travel is permitted on monday 02 / 05 / 01 or tuesday 02 / 06 / 01 only .\nblackout dates : none .\nminimum / maximum stay : minimum stay : saturday night . maximum stay : 3 days .\nfare validity : fares are valid in the economy ( coach ) cabin on delta / delta\nconnection / delta express . all fares are round trip .\nchanges / upgrades / standby : all fares are nonrefundable . changes - prior to\ndeparture : value of fare may be applied to any applicable published delta\nfare less a $ 75 service charge . after departure : no changes are permitted .\nspecial offers issued on delta ' s web site may not be applied to other web\nfares on delta . com . credit vouchers cannot be used for payment for tickets\npurchased on delta . com . same day standby is allowed .\ntaxes / fees : fares do not include government imposed transportation taxes and\nother applicable fees , including segment fees ( $ 2 . 75 per segment ) , and\npassenger facility charge ( s ) of up to $ 18 . these fees are the responsibility\nof the passenger and must be paid at the time of ticketing .\nmiscellaneous : fares are subject to change without notice . other restrictions\nmay apply .\nsubscribe / unsubscribe\nyou have received this e - mail because your e - mail preferences indicate you\nwould like to receive delta fan fares information . to modify your e - mail\noptions , or unsubscribe from this service , please visit the following link\nand enter your skymiles account number and pin . you will then be able to\nupdate your preferences in our e - mail programs section .\ncopyright information\nthis e - mail message and its contents are copyrighted and are\nproprietary products of delta air lines , inc . any unauthorized\nuse , reproduction , or transfer of this message or its contents ,\nin any medium , is strictly prohibited .\nthis is a post only e - mail . please do not respond to this message .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.126+0000", "entityId": 3966, "properties": {"text": "Subject: re : meter 0984179 sept 00\nnick ,\ni have reallocated the above referenced meter , per daren and clem ' s\ninstructions . all of the gas is on the mjg deal , as the ticket was valid\nthrough october , 2000 . please call clem if you have any questions .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.131+0000", "entityId": 3967, "properties": {"text": "Subject: reviews\nheather will be calling each of up to set up a time to discuss your review\nfor 2000 .\nplease bring with you two items that you plan on working on during the first\nsix months of 2001 .\nthese should be items that improve the process around your area or brings\nadditional\nincome to enron .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.136+0000", "entityId": 3968, "properties": {"text": "Subject: hpl nom for january 30 , 2001\n( see attached file : hplnol 30 . xls )\n- hplnol 30 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.140+0000", "entityId": 3969, "properties": {"text": "Subject: enron / hpl actuals for january 26 - 28 , 2001\njanuary 26 - 28 , 2001\nno flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.145+0000", "entityId": 3970, "properties": {"text": "Subject: tri - c resources , governor bill daniel # 1 , liberty co . , tx ,\njulie ,\ncokinos / tri - c has elected to price their production for the month of february\n2001 as follows :\n4 , 000 / d , 97 % if / hsc\nall production in excess of 4 , 000 / d priced 97 % gas daily\nplease correct the pricing for sitara ticket # 377169 accordingly .\nthank you ,\nmelissa\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa graves / hou / ect on 01 / 29 / 2001\n04 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : george weissman 01 / 29 / 2001 10 : 01 am\nto : melissa graves / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , joanne harris / na / enron @ enron\nsubject : tri - c resources , governor bill daniel # 1 , liberty co . , tx ,\nmelissa , chris cokinos called and for february , he wants to lock in 4 , 000 at\nfirst of the month index and the remainder at gas daily on the governor bill\ndaniel # 1 contract . please have the sitara deal updated and notify chris via\ne - mail at ccokinos @ compuserve . com . thanks .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 01 / 29 / 2001\n09 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : shawna flynn on 06 / 28 / 2000 01 : 42 pm\nsent by : becky tlucek\nto : jeffrey a austin / hou / ect @ ect , russell diamond / hou / ect @ ect , george\nweissman / hou / ect @ ect\ncc :\nsubject : cokinos\ncokinos document attached per shawna flynn .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.150+0000", "entityId": 3971, "properties": {"text": "Subject: re : coastal ctr # 96008903 meter 0984179 sit # 135714\ndonald ,\nback in october we had the gas received by hpl at the above meter moved to\nstrangers gas pending a call from coastal to renegotiate a contract for sept\n2000 gas . since volumes can no longer be allocated to stranger \u0001 , s gas it has\nbeen placed on an mjg deal which was the only valid deal available for sept\n2000 .\ni assume coastal has not contacted brian as of yet . is it possible to have a\ndeal created for coastal with a price of zero ? i know that we definitely do\nnot want to pay mjg for this gas , but as long as the volume is sitting on\ntheir deal there is a possibility that someone may inadvertently send the\npayment out . let me know what you think .\nthanks ,\nnick\nx 36454\n- - - - - - - - - - - - - - - - - - - - - - forwarded by nick moshou / corp / enron on 01 / 29 / 2001\n08 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndonald p reinhardt @ ect\n10 / 27 / 2000 11 : 09 am\nto : mary poorman / na / enron @ enron\ncc : nick moshou / corp / enron @ enron , anita luong / hou / ect @ ect , brian m\nriley / hou / ect @ ect , pat clynes / corp / enron @ enron , daren j farmer / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect , vance l taylor / hou / ect @ ect\nsubject : re : coastal ctr # 96008903 meter 0984179 sit # 135714\nhaving discussed the matter with brian riley , hpl has no intention of\ncontacting coastal to negotiate any type of deal affecting the gas received\nin september at at meter 4179 . it was brian ' s opinion that the gas should be\nconsidered strangers gas since hpl has no contract or price . it is\nsuggested that nick moshou contact his counterpart at coastal , relaying this\ninformation and suggesting coastal ' s trader contract brian riley .\ndonald\nmary poorman @ enron\n10 / 27 / 2000 10 : 05 am\nto : nick moshou / corp / enron @ enron\ncc : anita luong / hou / ect @ ect , brian m riley / hou / ect @ ect , pat\nclynes / corp / enron @ enron , daren j farmer / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect\nsubject : re : coastal ctr # 96008903 meter 0984179 sit # 135714\nnick ,\ni understand that they terminated their agreement . however , i don ' t feel\nthat we can confiscate their production . we need to either pay them for the\ngas , or cut a deal to redeliver a like volume to them at another meter .\ngiven the decrease in prices from september to current and prompt month , i\nwould guess that they want to be paid . we won ' t know that until we call\nthem . i don ' t know where the responsibility lies as far as calling to\nexplain to them that we took delivery of their gas until the meter was\nshut - in .\nplease let me know if i can do anything further to assist .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.155+0000", "entityId": 3972, "properties": {"text": "Subject: = ? ansi _ x 3 . 4 - 1968 ? q ? new _ employee _ service _ = 01 ) _ turbo _ tax ? =\nas tax season rapidly approaches , we are pleased to announce a new w - 2\nemployee service . if you plan to file your personal income taxes through\nturbotax 2000 ( intuit ' s personal tax filing software ) you will be able to\nautomatically download your w - 2 information into the appropriate turbotax\nforms directly over the internet for free .\nenron has chosen to provide this service to help speed the processing time\nand accuracy of your return while supporting paperless processing .\nmore information regarding this service is listed below or visit\nwww . probusinesstaxes . com to find out more about the turbotax software and\nweb - based filing service .\nemployee fact sheet : probusiness / intuit w - 2 service\nq . what is the automated tax return ( atr ) service ?\na . intuit inc . , makers of the popular quicken turbotax tax preparation and\nfiling software , have launched a new automated tax return ( atr ) service to\nsimplify tax preparation for turbotax users . atr allows users of turbotax tax\npreparation and filing software to import tax information from multiple\nsources such as employers , brokerage houses , and mutual fund companies\ndirectly into the correct turbotax forms over the internet . since our\npayroll tax provider , probusiness , has partnered with intuit to provide this\nservice , you will be able to electronically download your individual w - 2 data\nfrom probusiness directly into turbotax through the internet for free . also ,\nas part of this program , you can receive a 5 % discount on all turbotax and\nquicken products including shipping and handling ( go to\nwww . probusinesstaxes . com for more information ) .\nq . so how does it work ?\na . embedded in each version of turbotax 2000 ( both the software and web\napplication ) is a series of screens that will ask whether your employer\nallows you to automatically download your data into turbotax . to use the\nfree service , simply answer \" yes \" then select our payroll tax provider ,\nprobusiness , from a drop - down list of providers which includes probusiness ,\npeoplesoft , ceridian , and seemyw 2 . com . validate your request by entering\nyour social security number and w - 2 box one data and your w - 2 data will\nautomatically transfer via the internet into the appropriate locations in the\nturbotax form .\nq . is this a secure transaction ?\na . intuit \u0001 , s turbotax atr service combines open financial exchange ( ofx ) , the\nstandard technology used in e - finance , with 128 - bit military - grade encryption\nto create an advanced security protocol that ensures the highest level of\nsecurity and confidentiality when obtaining financial data to populate your\nturbotax form over the internet .\nq . how do i participate in this program ?\na . only employees using intuit \u0001 , s turbotax 2000 tax preparation and filing\nsoftware can take advantage of this web - based atr service . turbotax software\nand the atr web - based filing service can be accessed at\nwww . probusinesstaxes . com .\nq . what if i already own turbotax 2000 \u0001 ( does this still work ?\na . yes , all copies of turbotax 2000 contain the automated tax return service\noption .\nq . overall what are the benefits to me ?\na . using the atr service provided by intuit and probusiness , you can :\n? increase your probability of accurate filing .\n? eliminate the need to manually enter your w - 2 information and other\nfinancial data .\n? increase the overall speed of tax filing .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.159+0000", "entityId": 3973, "properties": {"text": "Subject: re : equistar feb - 01\nthanks . equistar is complete .\ndaren j farmer\n01 / 29 / 2001 04 : 42 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : equistar feb - 01\nthat will be fine .\nd\naimee lannou 01 / 29 / 2001 04 : 17 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : equistar feb - 01\ni think i found the deal . deal # 157572 has meter 1372 attached to it . it\nshould be meter 1373 . the 10 . 000 is split between two meters , but all should\nbe at meter 1373 . can i change it ?\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 29 / 2001 04 : 07\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 01 / 29 / 2001 03 : 59 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : equistar feb - 01\ndaren - here are the equistar # ' s . there should be a total of 65 . 000 . there\nis a new deal per janice at equistar at meter 1373 effective 2 / 01 . i have\nnot seen a deal for this . let me know if it is legitimate . no volumes were\nadded , just moved from meter to meter . ( deal # 378904 ) thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.164+0000", "entityId": 3974, "properties": {"text": "Subject: equistar feb - 01\ni think i found the deal . deal # 157572 has meter 1372 attached to it . it\nshould be meter 1373 . the 10 . 000 is split between two meters , but all should\nbe at meter 1373 . can i change it ?\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 29 / 2001 04 : 07\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 01 / 29 / 2001 03 : 59 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : equistar feb - 01\ndaren - here are the equistar # ' s . there should be a total of 65 . 000 . there\nis a new deal per janice at equistar at meter 1373 effective 2 / 01 . i have\nnot seen a deal for this . let me know if it is legitimate . no volumes were\nadded , just moved from meter to meter . ( deal # 378904 ) thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.168+0000", "entityId": 3975, "properties": {"text": "Subject: equistar feb - 01\ndaren - here are the equistar # ' s . there should be a total of 65 . 000 . there\nis a new deal per janice at equistar at meter 1373 effective 2 / 01 . i have\nnot seen a deal for this . let me know if it is legitimate . no volumes were\nadded , just moved from meter to meter . ( deal # 378904 ) thanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.173+0000", "entityId": 3976, "properties": {"text": "Subject: global octane - meter 1528\nfyi - meter 1528 has been trying to come back up since sat . sam in gas\ncontrol said it might be back up on wed . we currently have a nom of 500 / day .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.178+0000", "entityId": 3977, "properties": {"text": "Subject: deal 93481\ndaren ,\ni ' m looking into this deal . there is no volume on this deal for january\n00 . should this deal have had some volume on it .\nit was never scheduled with volume however , in january it received flow of\n3461 due to ranking in pops . it was taken to zero once the actuals came in .\nplease let me know if you intended to have volume on this deal for jan 00\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.183+0000", "entityId": 3978, "properties": {"text": "Subject: new coastal production\ncoastal plans to bring up the monte cristo ( meter 9873 ) today . hpl is buying\nthe residue ( net 15 % pvr ) at stratton effective today ( vol . of 34 m ) . this\ngas is to be transported by hpl to the inlet ( meter 980415 ) and may or may\nnot be repurchased at the tailgate . at this time , this gas is scheduled on\nthe strangers it agmt . , we are waiting for brian riley to return to the\noffice so that we can determine if this will need to be placed on a separate\ntransport agreement to the plant inlet , or added to the old agreement . i\nwill try to keep everyone apprised to the extent that i am in the loop .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.188+0000", "entityId": 3979, "properties": {"text": "Subject: deal 70422\nshould we keep rolling this deal ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.193+0000", "entityId": 3980, "properties": {"text": "Subject: fw : enron forms\nweehaukan fax # is on the form , but here it is again : 201 - 558 - 4622\nthanks\nnotice regarding entry of orders and instructions : please\ndo not transmit orders and / or instructions regarding your\npainewebber account ( s ) by e - mail . orders and / or instructions\ntransmitted by e - mail will not be accepted by painewebber and\npainewebber will not be responsible for carrying out such orders\nand / or instructions . notice regarding privacy and confidentiality :\npainewebber reserves the right to monitor and review the content of\nall e - mail communications sent and / or received by its employees .\n- w 81 . pdf\n- w 9 _ enron . pdf\n- wire _ request _ enron . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.198+0000", "entityId": 3981, "properties": {"text": "Subject: hpl nom for january 31 , 2001\n( see attached file : hplnol 31 . xls )\n- hplnol 31 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.203+0000", "entityId": 3982, "properties": {"text": "Subject: enron / hpl actuals for january 29 , 2001\nteco tap 28 . 333 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.209+0000", "entityId": 3983, "properties": {"text": "Subject: organizational announcement\nwe are pleased to announce the following promotions within enron net works .\nthese promotions will be effective february 1 , 2001 . we would like to thank\nthese individuals for their past contributions and recognize their\ninstrumental roles in the growth and success of the organization . please\njoin us in congratulating the following employees , and wishing them continued\nsuccess with enron .\nto managing director\nsally beck\nto vice president to senior specialist\ndavid forster luis aybar\ndavid samuels matthew burleigh\njay webb heather busby\nstephen ( steve ) harrington\nto senior director wei hu\nscott mills aneela charania\nkevin sweeney diane ellstrom\ndavid rae\nto director shifali sharma\nmichael ( mike ) croucher gang ( george ) ji\nrahil jafry jorge mancero\nsavita puthigai kirti patel\nganapathy ramesh virendra patel\ndrew ries raleigh ( trey ) rhodes\nstuart reed mark symms\nthresa allen carlos uribe\njeffrey gossett ye wang\nkim theriot amelia alland\nstacey white cynthia balfour - flanagan\nstacey brewer\nto manager marlene hilliard\nnilay basu dawn kenne\nfrank coles errol mclaughin\nmark davidson kevin meredith\ndaniel ( dan ) dietrich meredith mitchell\ncolin tonks thien - huong ngo\ndanielle marcinkowski brian palmer\nkari oquinn mark schrab\ntai nguyen stephanie sever\ncornelio pua christopher spears\namy spoede tara sweitzer\ngerald ( jake ) staffel sabrae zajac\nvernell vallejo\njing fang ( jennifer ) zhou to specialist\nchristopher abel robert henry\ndavid baumbach benjamin ( ben ) jordan\nrebecca ford nikolay kraltchev\nngiam ( jeremy ) wong grace warren\nmatthew brown kenneth ( kenny ) lim\nclara carrington victoria sorkina\nrichard cross patrick marchand\njohn swinney sumit shah\nmaya beyhum kori loibl\npatricia sullivan bruce mills\npatricia spence mathew motsinger\ndimitri taylor bernice rodriquez\ndarron giron brandi wachtendorf\nkristen hanson patryk wlodarski\nlarry hunter\nwilliam kasemervisz to staff\nkam keiser norma yeverino\nmonica lande geralynn gosnell\ndavid maxwell judith walters\nmelissa ratnala richard miley\njoan winfrey\ntechnical consultant guy freshwater\nxiaozhuo ( sean ) yang brent storey\nshow - yien ( show ) lee stuart thom\nnai - chung ( jesse ) wang jonathan white\njin yu\nto executive assistant\nassociate to manager peggy mccurley\njason althaus tammie schoppe\ncheryl ingstad\nross mesquita to administrative coordinator\nleonardo pacheco heather choate\nto administrative assistant i to senior clerk\nali de hoyos matthew davies\ndemonica lipscomb\nto senior assistant mark pilkington\nbarbara lewis daniela de lisi\nsarah knott tresea parker\nthais hensch angela barnett\nlaura vargas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.214+0000", "entityId": 3984, "properties": {"text": "Subject: organizational announcement\nenron global markets ended the year with a great deal of momentum and with\nvery high expectations for 2001 . in order to better focus and expand the\nvarious businesses within global markets , we are pleased to announce the\nfollowing organizational changes .\ncrude and products\nthis group is being re - organized into product lines in order to better focus\nand maximize coverage and increase our market - making abilities . the\nfollowing individuals leading these groups report directly to john nowlan .\nglobal crude oil\ndon schroeder and bill white will manage our global crude oil books . don \u0001 , s\nemphasis will be on the development and expansion of our physical crude\npositions both domestically and abroad . bill will manage the various\nfinancial crude positions globally and will focus on developing these books .\ndistillate\nchris mahoney will have responsibility of all distillate positions . chris\nwill focus on developing our global distillate strategy , building the\nbusiness both physically and financially .\nglobal fuel oil\nniamh clarke will expand her role managing our global fuel oil and resid\npositions . emphasis will be placed on re - establishing enron in the financial\nfuel market in the us and developing a physical fuel strategy .\nglobal gasoline and components\njim goughary will assume responsibility for our global gasoline and\ncomponents business . following up on our expansion into the european market\nin 2000 , we look forward to jim expanding our presence in the us as well as\nasian markets .\nglobal lpg\nerik hansen and adam gross will be responsible for the development and\nexecution of our global lpg trading and strategy . under their guidance we\nlook to expand our presence into the asian pacific markets , as well as\ncontinuing to grow our us and european operations .\npetrochemical and plastics\nstuart bland and douglas friedman will be responsible for the continued\ndevelopment and growth of our petrochemical and plastics business . they will\nwork to further expand both our physical and financial presence in these\nmarkets .\nfuel management\ndoug leach will continue in his role developing our fuel management business\nas well as other long - term structural transactions .\nglobal origination\nrandy maffett has joined the group to lead , develop and grow all global\norigination activities for the group . randy \u0001 , s most recent assignment was in\nrestructuring several equity investments for ena .\nenron freight\nthis new group under the leadership of dan reck is developing a business in\nthe inter - modal transportation area in the united states . shawn cumberland\nhas joined this group to lead and expand the origination opportunities in\nthis business . shawn \u0001 , s most recent assignment was as coo of the calme region .\nglobal risk management\njere overdyke has elected to leave enron after almost 10 years of service .\nper sekse will take over the leadership of this very exciting and growing\nbusiness . per is located in enron \u0001 , s new york office but will be spending a\nsignificant amount of his time in houston .\nwe look forward to this year and feel the above changes will provide the\nfocus and momentum we need to deliver a record performance in 2001 .\nplease congratulate everyone on their new assignments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.219+0000", "entityId": 3985, "properties": {"text": "Subject: re : valero ' s february gas nominations\nthanks .\nalso , rohm & haas , meter 1506 , is looking for 24 . 000 for feb . instead of\n27 . 000 . they take the swing . would you like me to change the deal or keep\nit as is ?\ndaren j farmer\n01 / 31 / 2001 08 : 13 am\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : valero ' s february gas nominations\nyou can change the tickets . thanks .\nd\naimee lannou 01 / 31 / 2001 08 : 05 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : valero ' s february gas nominations\ndaren - i am looking for 5 . 000 / d at meter 1394 and 10 . 000 / d at meter 8018 for\nfeb . currently it is 10 . 000 / d at 1394 and 5 . 000 / d at 8018 . can i change\nthe tickets or will you ? attached is the confirmation spreadsheet from\nvalero .\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 31 / 2001 07 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\non 01 / 30 / 2001 02 : 51 : 39 pm\nto : alannou @ enron . com , carlos . j . rodriguez @ enron . com\ncc :\nsubject : valero ' s february gas nominations\namy and carlos ,\nplease find attached valero ' s baseload natural gas nominations and\ndesignated swing supply quantities for february 1 - 31 for the houston and\ntexas city refineries as well as valero ' s supply to the clearlake methanol\nplant .\nif you need to reach me please call me .\ndave\nphone : ( 210 ) 370 - 2799\ncell phone at ( 210 ) 241 - 9180\npager ( 888 ) 691 - 5538\n( see attached file : hpl _ nomso 201 . xls )\n- hpl _ nomso 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.223+0000", "entityId": 3986, "properties": {"text": "Subject: re : meter 986315 for 10 / 00\nyou put a deal in for torch for this time frame at this meter to clear an\nexception . should we put a new deal in with cleco ? let me know .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 01 / 31 / 2001 04 : 45\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharlene richmond @ ect\n01 / 31 / 2001 04 : 04 pm\nto : mary poorman / na / enron @ enron\ncc :\nsubject : re : meter 986315 for 10 / 00\nthe person at cleco / foursquare is kara , her phone number is 281 - 556 - 8878\nmary poorman @ enron\n01 / 31 / 2001 03 : 45 pm\nto : charlene richmond / hou / ect @ ect\ncc :\nsubject : re : meter 986315 for 10 / 00\ni have a note in pops that daren extended the torch deal at this meter for\noctober . if they are disputing the deal , please let me know and i will clear\nthis up with them .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.227+0000", "entityId": 3987, "properties": {"text": "Subject: re : meter 986315 for 10 / 00\ni don ' t know if they paid torch , i would assume so , as this is october .\naccording to charlene , cleco is invoicing us for this deal . intially , there\nwas no deal in the system at all .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.232+0000", "entityId": 3988, "properties": {"text": "Subject: meter 1394\ndaren - per gas control , meter 1394 will have their valves shut for the next\n3 or 4 days .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.237+0000", "entityId": 3989, "properties": {"text": "Subject: hpl nom for february 1 , 2001\n( see attached file : hplno 201 . xls )\n- hplno 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.242+0000", "entityId": 3990, "properties": {"text": "Subject: enron / hpl actuals for january 30 , 2001\nteco tap 18 . 750 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.247+0000", "entityId": 3991, "properties": {"text": "Subject: north central oil corp . - 2 / 01\nvance ,\nthe following deals changed effective 2 / 1 / 01 :\ndeal # meter # trade zone original volume revised volume price\n138550 98 - 0071 8 15 , 000 0 100 % ifhsc less $ 0 . 05\n597360 98 - 6296 1 0 15 , 000 98 % ifhsc less $ 0 . 05\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.252+0000", "entityId": 3992, "properties": {"text": "Subject: valero ' s february gas nominations\ndaren - i am looking for 5 . 000 / d at meter 1394 and 10 . 000 / d at meter 8018 for\nfeb . currently it is 10 . 000 / d at 1394 and 5 . 000 / d at 8018 . can i change\nthe tickets or will you ? attached is the confirmation spreadsheet from\nvalero .\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 31 / 2001 07 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\non 01 / 30 / 2001 02 : 51 : 39 pm\nto : alannou @ enron . com , carlos . j . rodriguez @ enron . com\ncc :\nsubject : valero ' s february gas nominations\namy and carlos ,\nplease find attached valero ' s baseload natural gas nominations and\ndesignated swing supply quantities for february 1 - 31 for the houston and\ntexas city refineries as well as valero ' s supply to the clearlake methanol\nplant .\nif you need to reach me please call me .\ndave\nphone : ( 210 ) 370 - 2799\ncell phone at ( 210 ) 241 - 9180\npager ( 888 ) 691 - 5538\n( see attached file : hpl _ nomso 201 . xls )\n- hpl _ nomso 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.257+0000", "entityId": 3993, "properties": {"text": "Subject: re : pgtt meter 986884 - dec issue\nwe have a purchase booked here , we need to reverse ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward d gottlob / hou / ect on 02 / 01 / 2001\n09 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njack simunek\n01 / 31 / 2001 10 : 19 am\nto : sherlyn schumack / hou / ect @ ect\ncc : edward d gottlob / hou / ect @ ect , brian m riley / hou / ect @ ect , lauri a\nallen / hou / ect @ ect\nsubject : re : pgtt meter 986884 - dec issue\nsorry it took me so long to get back to you . pg & e did not fully process the\ngas stream at their indian springs plant on december 12 and 13 and took the\nreduced shrinkage , 19 . 000 mmbtu / d , and sold it to hpl at gas daily - $ 0 . 04 .\npg & e did not have the right to do that , so they are going to allocate that\nvolume to comstock , from whom we will buy the gas at the beginng of the month\nindex . at the same time pg & e will create an imbalance , for which they will\npay hpl the same amount hpl paid them for the gas for those two days . this\nshould wash the sale at gas daily and leave hpl buying the gas at the\nbeginning of the month ifhsc ( the price in the comstock purchase contract )\nand selling it at the gas daily price for 12 / 12 and 12 / 13 . the paperwork is\non its way to me to close this issue out .\nfrom : sherlyn schumack 01 / 23 / 2001 07 : 49 am\nto : jack simunek / hou / ect @ ect\ncc :\nsubject : pgtt meter 986884 - dec issue\njack ,\nsandra at teco seems to think you may have some information on how this deal\nshould work .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 01 / 23 / 2001\n07 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n01 / 22 / 2001 04 : 47 pm\nto : edward d gottlob / hou / ect @ ect , sherlyn schumack / hou / ect @ ect\ncc : edward terry / hou / ect @ ect\nsubject : pgtt meter 986884 - dec issue\ned ,\nsherlyn has brought to my attention the deal i have attached below .\napparently we bot from pge industrial on the 12 th and 13 th . pg & e has\nallocated an offsetting sale at the meter to teco , and claim that they are\nnet deals . i do not show a sale in the system at the meter , and i checked\nthe 215 k for those days for a corresponding delivery to teco , perhaps at\nanother meter , and could not find one .\nany light you could shed on this issue would be appreciated .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.262+0000", "entityId": 3994, "properties": {"text": "Subject: deal # 529159 for december 2000\ncan either of you verify this ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 02 / 01 / 2001\n10 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaul couvillon @ enron\n01 / 31 / 2001 02 : 45 pm\nto : gary w lamphier / hou / ect @ ect\ncc : janet h wallis / hou / ect @ ect , joanie h ngo / hou / ect @ ect , mary\npoorman / na / enron @ enron\nsubject : deal # 529159 for december 2000\ngary :\nfor company 12 could you please put in a buy - back for reliant energy hl\nthe lower of katy mid day of flow or day after .\nthe pricing of katy mid for 10 / 27 was $ 10 . 26\n10 / 28 was $ 9 . 63 .\nthe sale counter - part to this purchase should go to deal # 529159 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.267+0000", "entityId": 3995, "properties": {"text": "Subject: re : deal # 529159 for december 2000\njanet wallis told me so .\ndaren j farmer @ ect\n02 / 01 / 2001 12 : 48 pm\nto : paul couvillon / corp / enron @ enron\ncc :\nsubject : re : deal # 529159 for december 2000\npaul ,\nhow are you determining that we should have a buyback for this deal ?\nd\nenron north america corp .\nfrom : gary w lamphier 02 / 01 / 2001 10 : 14 am\nto : daren j farmer / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc :\nsubject : deal # 529159 for december 2000\ncan either of you verify this ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 02 / 01 / 2001\n10 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaul couvillon @ enron\n01 / 31 / 2001 02 : 45 pm\nto : gary w lamphier / hou / ect @ ect\ncc : janet h wallis / hou / ect @ ect , joanie h ngo / hou / ect @ ect , mary\npoorman / na / enron @ enron\nsubject : deal # 529159 for december 2000\ngary :\nfor company 12 could you please put in a buy - back for reliant energy hl\nthe lower of katy mid day of flow or day after .\nthe pricing of katy mid for 10 / 27 was $ 10 . 26\n10 / 28 was $ 9 . 63 .\nthe sale counter - part to this purchase should go to deal # 529159 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.272+0000", "entityId": 3996, "properties": {"text": "Subject: re : deal # 529159 for december 2000\ni spoke to her over the phone and told her that we were short of the nom and\nshe told me that a buy back needs to be put into place . . hl & p has paid us\nfor the full 20 , 000 on the 27 th . we have a entex meeting on the 5 th in room\n37 cl @ 11 : 30 , we can all discuss it then if you want to .\ndaren j farmer @ ect\n02 / 01 / 2001 01 : 06 pm\nto : paul couvillon / corp / enron @ enron\ncc :\nsubject : re : deal # 529159 for december 2000\nwe will need to wait until janet gets back . this is a spot deal that was\ndone by gary lamphier . did janet negotiate something with them after the\nfact ?\nd\npaul couvillon @ enron\n02 / 01 / 2001 12 : 58 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : deal # 529159 for december 2000\njanet wallis told me so .\ndaren j farmer @ ect\n02 / 01 / 2001 12 : 48 pm\nto : paul couvillon / corp / enron @ enron\ncc :\nsubject : re : deal # 529159 for december 2000\npaul ,\nhow are you determining that we should have a buyback for this deal ?\nd\nenron north america corp .\nfrom : gary w lamphier 02 / 01 / 2001 10 : 14 am\nto : daren j farmer / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc :\nsubject : deal # 529159 for december 2000\ncan either of you verify this ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 02 / 01 / 2001\n10 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaul couvillon @ enron\n01 / 31 / 2001 02 : 45 pm\nto : gary w lamphier / hou / ect @ ect\ncc : janet h wallis / hou / ect @ ect , joanie h ngo / hou / ect @ ect , mary\npoorman / na / enron @ enron\nsubject : deal # 529159 for december 2000\ngary :\nfor company 12 could you please put in a buy - back for reliant energy hl\nthe lower of katy mid day of flow or day after .\nthe pricing of katy mid for 10 / 27 was $ 10 . 26\n10 / 28 was $ 9 . 63 .\nthe sale counter - part to this purchase should go to deal # 529159 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.277+0000", "entityId": 3997, "properties": {"text": "Subject: change to tenaska iv volume\ndaren - - fyi\ni changed the volume of the tenaska iv deal 384258 to reflect the correct\nfuel amount , it was less fuel because some of the supply was from the katy\narea . . . . . new sale total of 36 , 286 ( after 8 , 406 removed for brazos )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.283+0000", "entityId": 3998, "properties": {"text": "Subject: point change for deals\nfyi - - - i changed points on this deal from pgtt - teco waha 18002800 to pgtt - teco\nkaty 20606100 for the 2 nd . let me know if you don ' t agree with this . the\nsupply , duke field svs , was originally trying to deliver to hpl at midtex ,\nthis deal # 589257 was also changed to meter 20606100 .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.288+0000", "entityId": 3999, "properties": {"text": "Subject: point change for deals\nooops ! this is effective the lst .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 02 / 01 / 2001 03 : 43\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n02 / 01 / 2001 04 : 45 pm\nto : elsa villarreal / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc :\nsubject : point change for deals\nfyi - - - i changed points on this deal from pgtt - teco waha 18002800 to pgtt - teco\nkaty 20606100 for the 2 nd . let me know if you don ' t agree with this . the\nsupply , duke field svs , was originally trying to deliver to hpl at midtex ,\nthis deal # 589257 was also changed to meter 20606100 .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.293+0000", "entityId": 4000, "properties": {"text": "Subject: point change for deals\noh yeah , and that goes for deal 594596 crosstex , also .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 02 / 01 / 2001 03 : 47\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n02 / 01 / 2001 04 : 47 pm\nto : elsa villarreal / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc :\nsubject : point change for deals\nooops ! this is effective the lst .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark mccoy / corp / enron on 02 / 01 / 2001 03 : 43\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark mccoy\n02 / 01 / 2001 04 : 45 pm\nto : elsa villarreal / hou / ect @ ect , daren j farmer / hou / ect @ ect\ncc :\nsubject : point change for deals\nfyi - - - i changed points on this deal from pgtt - teco waha 18002800 to pgtt - teco\nkaty 20606100 for the 2 nd . let me know if you don ' t agree with this . the\nsupply , duke field svs , was originally trying to deliver to hpl at midtex ,\nthis deal # 589257 was also changed to meter 20606100 .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.299+0000", "entityId": 4001, "properties": {"text": "Subject: point change to tagg deal 589257\nfyi - - - i changed the meter point on deal 589257 duke f . s . from 18002800 to\nmeter 20606100 effective lst .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.304+0000", "entityId": 4002, "properties": {"text": "Subject: eastrans nomination change effective 2 / 2 / 01\nplease increase deliveries to eastrans to 50 , 000 mmbtu / dy for 2 / 2 / 01 .\nthe redeliveries will be 7300 mmbtu / dy from fuels cotton valley\n42700 mmbtu / dy to pg & e .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.310+0000", "entityId": 4003, "properties": {"text": "Subject: hpl nom for february 2 , 2001\n( see attached file : hplno 202 . xls )\n- hplno 202 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.315+0000", "entityId": 4004, "properties": {"text": "Subject: enron / hpl actuals for january 31 , 2001\nteco tap 20 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.320+0000", "entityId": 4005, "properties": {"text": "Subject: re : coastal o & g , mtr . 4179 , goliad co .\nvance ,\njulie meyers created deal # 592122 in sitara . i have edited the ticket to\nreflect the details described below :\nbob\nvance l taylor\n02 / 01 / 2001 08 : 21 am\nto : robert cotten / hou / ect @ ect\ncc : clem cernosek / hou / ect @ ect\nsubject : coastal o & g , mtr . 4179 , goliad co .\nbob ,\nif have not put the deal in yet , please modify the period to reflect 9 / 1 -\n9 / 13 . there was flow on 9 / 13 .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 01 / 2001\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 31 / 2001 05 : 08 pm\nto : robert cotten / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , clem cernosek / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , julie\nmeyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : coastal o & g , mtr . 4179 , goliad co .\nbob ,\nhplc purchased wellhead gas from the producer listed below for the specified\nperiod . this production was purchased on a \" spot \" basis and a deal ticket\nshould be created and entered into sitara based on the following information :\ncounterparty meter volume price period\ncoastal oil & gas corp 4179 4 , 500 mmbtu / d 85 % if / hsc 9 / 1 / 00 - 9 / 8 / 00\nadditionally , this are producer svcs . deals and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.324+0000", "entityId": 4006, "properties": {"text": "Subject: re : valero ' s february gas nominations\nthank you very much .\ndaren j farmer\n01 / 31 / 2001 05 : 35 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : valero ' s february gas nominations\ni forgot to get with you this morning on this . i went ahead and changed the\nvolume to 24 , 000 .\nd\naimee lannou 01 / 31 / 2001 10 : 13 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : valero ' s february gas nominations\nthanks .\nalso , rohm & haas , meter 1506 , is looking for 24 . 000 for feb . instead of\n27 . 000 . they take the swing . would you like me to change the deal or keep\nit as is ?\ndaren j farmer\n01 / 31 / 2001 08 : 13 am\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : valero ' s february gas nominations\nyou can change the tickets . thanks .\nd\naimee lannou 01 / 31 / 2001 08 : 05 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : valero ' s february gas nominations\ndaren - i am looking for 5 . 000 / d at meter 1394 and 10 . 000 / d at meter 8018 for\nfeb . currently it is 10 . 000 / d at 1394 and 5 . 000 / d at 8018 . can i change\nthe tickets or will you ? attached is the confirmation spreadsheet from\nvalero .\nthanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 01 / 31 / 2001 07 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\non 01 / 30 / 2001 02 : 51 : 39 pm\nto : alannou @ enron . com , carlos . j . rodriguez @ enron . com\ncc :\nsubject : valero ' s february gas nominations\namy and carlos ,\nplease find attached valero ' s baseload natural gas nominations and\ndesignated swing supply quantities for february 1 - 31 for the houston and\ntexas city refineries as well as valero ' s supply to the clearlake methanol\nplant .\nif you need to reach me please call me .\ndave\nphone : ( 210 ) 370 - 2799\ncell phone at ( 210 ) 241 - 9180\npager ( 888 ) 691 - 5538\n( see attached file : hpl _ nomso 201 . xls )\n- hpl _ nomso 201 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.333+0000", "entityId": 4007, "properties": {"text": "Subject: eastrans nomination change effective 2 / 3 / 01\nplease increase deliveries to eastrans to 60 , 000 mmbtu / dy from 50 , 000\nmmbtu / dy for 2 / 3 / 01 .\nthe redeliveries will be 7300 mmbtu / dy from fuels cotton valley and\n52700 mmbtu / dy to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.340+0000", "entityId": 4008, "properties": {"text": "Subject: neon discussion february 7\nhere ' s something you might want to work with this week . ? i ' m praying things\nare going well for all of you . ? if there ' s something i can do let me know .\n?\nbobby\n- compassion . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.344+0000", "entityId": 4009, "properties": {"text": "Subject: enron / hpl actuals for february 1 , 2001\nteco tap 30 . 000 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.349+0000", "entityId": 4010, "properties": {"text": "Subject: hpl nom for february 3 , 2001\n( see attached file : hplno 203 . xls )\n- hplno 203 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.353+0000", "entityId": 4011, "properties": {"text": "Subject: reminder - logistics - happy hour\nin celebration of everyone ' s hard work and dedication .\ncongratulations on your promotions ! ! ! ! !\nwelcome all new hires ! ! ! ! ! ! !\nand good luck to those leaving us .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.358+0000", "entityId": 4012, "properties": {"text": "Subject: meter 981594 for jan\nthe meter shows flow the first two day , the deal to sell to san jac is\nexpired . do you want me to extend the deal to cover the volume ?\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.363+0000", "entityId": 4013, "properties": {"text": "Subject: meter 986315\nfor dec . and jan . production there are flow volumes without a deal . deal\n502952 was good for november . do you want to extend this deal or should\nthere be another counterparty added ?\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.368+0000", "entityId": 4014, "properties": {"text": "Subject: eastrans nominations change effective 2 / 6 / 01\nplease decrease deliveries to eastrans from 60 , 000 mmbtu / dy to 30 mmbtu / dy\nfor 2 / 6 / 01 .\nthe redeliveries will be 7300 mmbtu / dy from fuels cotton valley and\n22700 mmbtu / dy to pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.372+0000", "entityId": 4015, "properties": {"text": "Subject: thank you for selecting quickenloans !\nhello jerry ,\nthank you for submitting your loan information to quickenloans . all of the\ninformation you provided will be kept strictly confidential . my name is\ndaniel jenuwine , and i have been assigned to be your personal mortgage banker .\nyour application number is : 4611454237\nplease keep this number handy when corresponding with us regarding your loan\napplication .\nso what happens next ?\n1 . i will be contacting you within 24 hours * to introduce myself and review\nyour information with you .\n2 . your application will then be submitted to our rocketloan system for a\nquick approval .\n3 . i will request the documentation required to meet the conditions of your\napproval .\n4 . we will deliver your loan package containing your application and written\nconfirmation of your loan terms to you within 48 hours .\nif you have any questions please email me at\ndaniel _ jenuwine @ quickenloans . com , or call 1 - 800 - 226 - 6308 and ask for daniel\njenuwine .\n* hours of operation for our quickenloans customer service center are 8 : 00 a . m .\n- 9 : 00 p . m . ( est ) monday - thursday , 8 : 00 a . m . - 7 : 00 p . m . ( est ) friday , and\n10 : 00 a . m . - 4 : 00 p . m . ( est ) saturday . all applications submitted after hours\nwill be handled the next working business day .\nhave a great day !\ndaniel jenuwine\nquicken loans\nphone : 1 - 800 - 226 - 6308 extension 57531\nemail : daniel _ jenuwine @ quickenloans . com\nhttp : / / www . quickenloans . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.378+0000", "entityId": 4016, "properties": {"text": "Subject: enron / hpl actuals for february 2 - 4 , 2001\nfebruary 2 , 2001\nteco tap nom . 30 . 000 ; actual 30 . 518 / enron\nfebruary 3 , 2001\nno flow\nfebruary 4 , 2001\nteco tap nom . 41 . 250 ; actual 37 . 142 / enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.384+0000", "entityId": 4017, "properties": {"text": "Subject: hpl nom for february 6 , 2001\n( see attached file : hplno 206 . xls )\n- hplno 206 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.389+0000", "entityId": 4018, "properties": {"text": "Subject: re :\nsorry i forgot the attachment .\naimee lannou 02 / 05 / 2001 02 : 22 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject :\ndo you have the feb . buyback and swing deal spreadsheet ?\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.394+0000", "entityId": 4019, "properties": {"text": "Subject: out of the office 7 th - 9 th\nfyi - - i will be out of the office wednesday , feb . 7 th through friday the 9 th ,\nreturning on monday .\nmary poorman and tom acton will be backing me up .\nmary will handle off system nominations ( oasis , lonestar & cornshucker ,\nmidcon )\ntom will handle the following meter confirmations :\noasis katy # 6780 ( contact paul mcpheeters 713 - 758 - 9804 )\nlonestar katy # 67 ( contact gary gafford 214 - 875 - 2674 )\naquila hdr katy # 72 ( contact sue zimmerman 816 - 527 - 1434 ) - - - should receive fax\nconfirm\ntrunkline katy # 69 ( contact mark enns 713 - 989 - 7585 ) - - - should receive fax\nconfirm\nmidcon hardy # 68 ( contact patsy shimek 713 - 369 - 9282 )\nmidcon flagstaff # 1606 ( contact patsy shimek 713 - 369 - 9282 )\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.400+0000", "entityId": 4020, "properties": {"text": "Subject: cleburne plant maintenance update\nfyi - - - -\ni checked with ken reisz with tenaska iv this afternoon re : maintenance being\ncompleted , and at this point they are still on track to come back up on the\n9 th sometime . . . . . . however , he did say that they have not gotten a look at\neverything just yet , but expect to have a better idea as to their downtime in\nthe morning . he said he would call mary with the latest news . mary , please\ncheck with him on thursday to see where they are at , at if we need to nom gas\nto lonestar or not .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.405+0000", "entityId": 4021, "properties": {"text": "Subject: let ' s talk about your home loan .\ndear jerry ,\nthank you for requesting more information from quicken loans through our\nwebsite . we are excited to have this chance to demonstrate our world - class\ncustomer service to you .\ni made an initial attempt to contact you to gather the additional information\nrequired to process your application but have not been able to get through .\nplease reply to this message with the best time to call and the phone number\nyou would like me to use .\nif it is more convenient , you can also call me direct at 800 . 226 . 6308 ext .\n57531 . our phone lines are open monday - thursday , 8 : 00 am - 9 : 00 pm , friday ,\n8 : 00 am - 7 : 00 pm and saturday , 10 : 00 am - 4 : 00 pm ( all times eastern ) . if i\nam not available , one of the other loan consultants on my team will be happy\nto assist you .\ninterest rates change daily . for the latest rates on our many programs you\ncan call anytime . i look forward to working with you to complete your\napplication .\nsincerely ,\ndaniel jenuwine\nmortgage banker\nphone : 800 . 226 . 6308 ext . 57531\nemail : daniel _ jenuwine @ quickenloans . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.411+0000", "entityId": 4022, "properties": {"text": "Subject: golf\ni just have to brag on myself as my game seldom affords me the opportunity .\nsunday after church , tom knox and i played 18 holes at mimosa . the weather\nwas perfect . while my game stunk overall ( 118 ) , i did manage par on one par\n3 and two par 5 ' s . the best was at 14 - - - a 545 yard par 5 . my drive was\n280 yards ( the ground was flat ! ) . i was on the green three feet from the\npin in 3 , and then two - putted . those three pars however will keep me going\nback . remember , i had a witness !\nthanks for listening to me brag . and no , don ' t expect me to replicate these\nfeats on our next outing . hope all are doing well . we ' re remembering\nrachel and jake in our prayers each day .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.417+0000", "entityId": 4023, "properties": {"text": "Subject: house pictures\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.422+0000", "entityId": 4024, "properties": {"text": "Subject: announcement for february 7\nplease talk up the senior high night out this wednesday . ? ? it is this friday\nnight from 9 : 30 pm - 2 : 30 am , with bowling , broomball , and other stuff ! ? the\ncost is $ 20 .\n?\neven though the kids will have their own events before and after broomball ,\nthey will be expecting their ? neon leaders for the broomball portion of the\nevening . we need to show up at the aerodrome shortly after 11 : 00 , and we ' ll\nhave the ice from 11 : 15 - 12 : 15 . ? ? after that we ' ll go home and the kids will\ngo on to other stuff till 2 : 30 !\n?\nsee you at the aerodrome .\n?\nbobby", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.430+0000", "entityId": 4025, "properties": {"text": "Subject: 2 / 5 / 01 gas flow day\nwe agree with these numbers .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 06 / 2001\n11 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 06 / 2001 11 : 24 : 08 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : 2 / 5 / 01 gas flow day\nteco tap noms = 32 , 500 ; actual flow = 34 , 426 mcf , 35 , 631 mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.438+0000", "entityId": 4026, "properties": {"text": "Subject: aep benefit meetings\naep will be in houston conducting benefit meetings . these meetings are\ndesigned to give an overview of their medical , dental , savings and retirement\nplans . if you cannot attend the meeting you are assigned to , please feel\nfree to attend one of the others listed .\ndate time location attendees\nfeb . 7 , 2001 1 : 00 pm - 3 : 00 pm hyatt regency , cottonwood rm last name a - e\n3 : 00 pm - 5 : 00 pm hyatt regency , cottonwood rm last name f - l\nfeb . 8 , 2001 9 : 00 am - 11 : 00 am eb 5 c 2 last name m - s\n1 : 00 pm - 3 : 00 pm 2 ac , 12 th floor , forum room last name t - z", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.447+0000", "entityId": 4027, "properties": {"text": "Subject: re : opm hours survey - january , 2001 - reminder\nthis is just a friendly reminder that the opm hours survey is due today . for\nthose of you who have already completed the survey , please disregard this\nmessage .\nthanks !\nenron north america corp .\nfrom : suzanne nicholie 02 / 01 / 2001 05 : 48 pm\nto : larry joe hunter / hou / ect @ ect , mark d thorne / hou / ect @ ect , linda s\nbryan / hou / ect @ ect , mary g gosnell / hou / ect @ ect , bill d hare / hou / ect @ ect , avril\nforster / corp / enron @ enron , kelly lombardi / na / enron @ enron , diane h\ncook / hou / ect @ ect , david maxwell / hou / ect @ ect , rebecca ford / hou / ect @ ect , darron\nc giron / hou / ect @ ect , kam keiser / hou / ect @ ect , william kelly / hou / ect @ ect , john\nvaldes / hou / ect @ ect , melissa k ratnala / hou / ect @ ect , errol\nmclaughlin / corp / enron @ enron , katherine l kelly / hou / ect @ ect , stacey w\nwhite / hou / ect @ ect , thresa a allen / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nkristen j hanson / hou / ect @ ect , rita wynne / hou / ect @ ect , daren j\nfarmer / hou / ect @ ect , david baumbach / hou / ect @ ect , irene flynn / hou / ect @ ect ,\ntorrey moorer / hou / ect @ ect , chris abel / hou / ect @ ect , cheryl dudley / hou / ect @ ect ,\nmary m smith / hou / ect @ ect , phillip m love / hou / ect @ ect , adrial\nboals / corp / enron @ enron , marvia jefferson / hou / ect @ ect , heather\nchoate / hou / ect @ ect , irena d hogan / hou / ect @ ect\ncc : kim s theriot / hou / ect @ ect , carolyn gilley / hou / ect @ ect , steve\nventuratos / hou / ect @ ect , shona wilson / na / enron @ enron , edward\nterry / hou / ect @ ect , victor lamadrid / hou / ect @ ect , george d\nsmith / na / enron @ enron , randall l gay / hou / ect @ ect , donna greif / hou / ect @ ect ,\njeffrey c gossett / hou / ect @ ect , bryce baxter / hou / ect @ ect , michael\neiben / hou / ect @ ect , sheri thomas / hou / ect @ ect , james scribner / corp / enron @ enron ,\ndawn derr / corp / enron @ enron , shari mao / hou / ect @ ect\nsubject : opm hours survey - january , 2001 - changes ! ! please read !\nit ' s that time again to enter your hours and activities for january , 2001 .\nplease use the shortcut below or go to the following path o : \\ energy _ ops \\ opm\nhours survey \\ produser to access the hours survey .\nplease note that there are some changes this month in the survey . they are\nas follows :\n1 ) you must use your new sap cost center in the survey this month . i have\nattached a file that converts your old cost center incase you don ' t know what\nyour new one is .\n2 ) due to the sap cost center conversion , we were unable to roll over\nprevious months commercial teams and headcount ( fte ) information . therefore ,\nwe need you to enter the commercial teams your cost center supports and the\nfte ' s in your cost center . we will roll this information over beginning next\nmonth .\n3 ) in previous months you were able to print a report that showed your prior\nmonths hours by activity . due to the sap cost center conversion , that\nfunction is not available this month . it will be available next month . if\nyou need your hours for prior months please call me and i will forward this\ninformation to you .\nwhen completing the fte ' s section of the survey , if there are any director ,\nsr . admin or admin positions in your cost center , please complete\naccordingly . you are not expected to complete a hours survey for these\npositions but we do need them to be included in your fte ' s .\nplease have your survey ' s completed by wednesday , february 7 . please call me\nif you have any questions or need me to help you complete the survey .\nthanks ,\nsuzanne\n( x 5 - 7341 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.452+0000", "entityId": 4028, "properties": {"text": "Subject: check these deals :\n70422\n92754", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.456+0000", "entityId": 4029, "properties": {"text": "Subject: nom teco tap actual is 57 . 300\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 07 / 2001\n01 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 07 / 2001 11 : 23 : 38 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : nom & actual flow for 2 / 6 / 01\nnom = 61 , 250 mmbtu ' s\nactual flow = 57 , 300 mmbtu ' s\nalso , in discussions w / hpl / enron yesterday , for the lst they are showing\nactual flow rate of 30 , 000 mmbtu ' s whereas i ' m showing 30 , 869 mmbtu ' s . as\n30 , 869 actually flowed please verify this volume with hpl / enron . . . . .\nthanks ,\neileen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.461+0000", "entityId": 4030, "properties": {"text": "Subject: hpl nom for february 8 , 2001\n( see attached file : hplno 208 . xls )\n- hplno 208 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.466+0000", "entityId": 4031, "properties": {"text": "Subject: wellhead deals changed\ndaren / o ' neal ,\nthe attached spreadsheet represents deal volumes changed effective 2 / 7 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.470+0000", "entityId": 4032, "properties": {"text": "Subject: organizational changes\nenron is forming a new organization - - the enron xcelerator - - to drive the\nformation and development of new businesses at enron . enron ' s unique ability\nto start and develop new businesses has driven most of our growth over the\nyears . lou l . pai , currently chairman and ceo of enron energy services , will\nlead the xcelerator . over his years at enron , lou has been key to the\ncreation and rapid growth of our wholesale gas , wholesale power and energy\nservice businesses . the existing business units will continue their\ndevelopment of core businesses , while the xcelerator will be responsible for\ndeveloping new business opportunities that are natural extensions of enron ' s\nbusiness model and core skills , but not currently under development elsewhere\nin enron .\ndave delainey , currently president and ceo of enron americas , will become\nchairman and ceo of enron energy services . dave brings a wealth of\nexperience and accomplishment from enron wholesale services ' businesses where\nhe led the growth of our canadian business and our north american origination\nactivity and , most recently , had a great year in enron americas .\ndave is forming an office of the chairman in ees . joining dave in the office\nof the chairman are dan leff , president of ees , global energy services , and\nmarty sunde , president of ees , global marketing and services . dan and marty\nhave been instrumental in the development and execution of the successful ees\nbusiness model . also joining the office of the chairman of ees is janet\ndietrich as chief operating officer . janet , currently is managing director\nin enron americas , where she has been successful in many of enron wholesale ' s\ncore businesses , including gas trading , risk management and structural\norigination . tom white will continue as vice chairman of ees and will focus\non the development and expansion of ees ' customer relationships . lou , tom ,\ndan , marty and the entire ees organization have developed a great business\nmodel with great growth prospects . ees has become an essential part of\nenron ' s market valuation and growth story . this new leadership structure\nwill enable ees to continue on its path of sustained growth and increasing\nprofitability .\njohn lavorato will succeed dave as president and ceo of enron americas . john\nhas been an essential part of enron ' s energy trading success over the years\nand is a key part of enron wholesale services ' continuing success story .\njoining john is louise kitchen , currently president and ceo of enron\nnetworks . louise , who accelerated enron ' s outstanding growth with the\ndeployment of enrononline , will take over as chief operating officer of enron\namericas .\nphilippe bibi , currently chief operating officer of enron networks will take\nover as president and ceo of enron networks . under philippe ' s leadership ,\nenron has become a technology leader and the leading e - commerce company .\njoining philippe as chief operating officer is greg piper , currently managing\ndirector of enron networks . greg currently leads enron network ' s origination\nactivity and was responsible for the creation and deployment of clickpaper ,\nenron ' s successful online pulp and paper marketplace .\nplease join us in congratulating all of these individuals on their\nachievements and their new responsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.475+0000", "entityId": 4033, "properties": {"text": "Subject: 2 / 07 / 01 gas flow\nhpl gas control shows that terry with tufco gas control requested an increase\nfrom 0 . 0 ( zero ) to 60 . 0 effective 1 : 00 pm and don with tufco gas control\nrequested a cut from 60 . 0 to 0 . 0 ( zero ) effective 1 : 00 am . the nom should be\n30 . 0 according to hpl gas control records .\nif you have any questions please call 713 . 853 . 6449\ngary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary a hanks / hou / ect on 02 / 08 / 2001 10 : 46\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" melissa jones \" on 02 / 08 / 2001 10 : 39 : 05 am\nto : \" charlie stone \" , \" gary green \" ,\ndaren . j . farmer @ enron . com , gary . a . hanks @ enron . com ,\ncarlos . j . rodriguez @ enron . com , earl . tisdale @ enron . com , \" david avila \"\n, liz . bellamy @ enron . com , \" ronnie skerik \" ,\nkponton @ duke - energy . com\ncc :\nsubject : 2 / 07 / 01 gas flow\nwe show the nom for teco tap to be 30 . 000 and the actual for teco tap is\n21 . 814\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 08 / 2001\n10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 08 / 2001 09 : 06 : 50 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : 2 / 07 / 01 gas flow\nnom = 17 , 500 ( 6 : 00 pm started 60 , 000 rate & shut off at 1 : 00 am )\nactual flow = 21 , 076 mcf 21 , 814 mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.480+0000", "entityId": 4034, "properties": {"text": "Subject: hpl nom for february 9 , 2001\n( see attached file : hplno 209 . xls )\n- hplno 209 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.484+0000", "entityId": 4035, "properties": {"text": "Subject: 2 / 07 / 01 gas flow\nwe show the nom for teco tap to be 30 . 000 and the actual for teco tap is\n21 . 814\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 08 / 2001\n10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 08 / 2001 09 : 06 : 50 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : 2 / 07 / 01 gas flow\nnom = 17 , 500 ( 6 : 00 pm started 60 , 000 rate & shut off at 1 : 00 am )\nactual flow = 21 , 076 mcf 21 , 814 mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.489+0000", "entityId": 4036, "properties": {"text": "Subject: tenaska 11 / 00 and 12 / 00\nwe have the actuals for december 2000 . we need three demand fees . let me\nknow if you have any questions .\ndeal 529856 - $ 878 , 330 . 63 to offset price difference on tenaska iv sale\ndeal 384258 - $ 459 , 483 . 51 to bill tenaska iv for payable reimbursement\ndeal 514353 - change demand volume from 45 , 000 to 45 , 333 to update agency fee\nalso , i need one more adjustment to nov 2000 and then we will be done .\ndeal 529856 , day 11 / 01 - change demand fee from $ 409 , 145 . 72 to $ 407 , 547 . 02\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.494+0000", "entityId": 4037, "properties": {"text": "Subject: gas day 2 / 08 / 01\nwe agree :\nteco tap nom = 40 . 000 ; actual 41 . 358\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 09 / 2001\n10 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 09 / 2001 09 : 15 : 35 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : gas day 2 / 08 / 01\nnom = 40 , 000 mmbtu ' s\nactual flow = 39 , 959 mcf , 41 , 358 mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.498+0000", "entityId": 4038, "properties": {"text": "Subject: re : basin production from ga 213\nbob ,\nas mentioned earlier , houston exploration is also delivering gas to us at\nthis meter . the following production is now on - line and a ticket should be\ncreated and entered into sitara based on the following :\ncounterparty meter volumes price period\nhouston exploration 9696 8000 mmbtu / d 100 % gd less $ 0 . 16 2 / 1 - 2 / 28\nfyi , i will create and submit a committed reserves firm ticket if and when\nthe gas buyer terms the deal up . additionally , this is a producer svcs . deal\nand should be tracked in the im wellhead portfolio . . . attached to the\ngathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 09 / 2001\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 01 / 26 / 2001 08 : 47 am\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect\nsubject : re : basin production from ga 213\ndaren / vance ,\ndeal # 586954 has been created and entered in sitara :\ndate meter # volume price\n2 / 1 / 01 - 2 / 28 / 01 9696 5 , 000 100 % gas daily less $ 0 . 16\nbob\ndaren j farmer\n01 / 26 / 2001 08 : 25 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 26 / 2001\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 25 / 2001 01 : 58 pm\nto : daren j farmer / hou / ect @ ect\ncc : john peyton / hou / ect @ ect\nsubject : re : basin production from ga 213\ndaren ,\ni ' ve just received word from basin to bring production on sometime today or\ntomorrow ( they expect to get up to b / t 10 , 000 - 15 , 000 d ) ; if our facility\nplanning engineer determines that we can take the gas , then it will flow for\nall of february and be priced at 100 % gas daily less $ 0 . 16 .\nvlt\ndaren j farmer\n01 / 25 / 2001 01 : 47 pm\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\ni need for you , or the producer services group , to determine if you think the\ngas will flow for the month and at what price . i will use your decision for\nour bidweek postion .\nd\nvance l taylor\n01 / 25 / 2001 11 : 53 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : basin production from ga 213\nfyi ,\nhow would you want to handle for february nomination ?\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 01 / 25 / 2001\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brad blevins 01 / 25 / 2001 10 : 56 am\nto : john peyton / hou / ect @ ect\ncc : nick cocavessis / corp / enron @ enron , steve - hpl - schneider / hou / ect @ ect , pat\nflavin / gco / enron @ enron , vance l taylor / hou / ect @ ect , buck\nthomas / gco / enron @ enron\nsubject : basin production from ga 213\ni have reviewed the gas composition analysis from spl of the basin production\nfrom ga 213 . while spl ' s analysis does show a dewpoint of around 20 degrees\nf at 400 psig , it is both my and john handley ' s opinion that the gas from the\nwellbore had stratified by the time that this sample was taken . we expect\nthe dewpoint of the flowing gas to be higher . however , this was the best\nsample that could be obtained at the time . we have conferred with steve\nschneider and we are willing to take this gas on a conditional basis over the\nnext couple of days . once the 6 \" line has been pigged , the production flows\nstablilized and mitchell ' s conditioning equipment lined out over the next\ncouple of days , hms will need to take another sample at the meter run and\nhave spl run an extended analysis with a dewpoint curve on an expedited\nbasis . should this sample indicate a dewpoint over 45 degrees f , then this\nproduction will be shut in again until hydrocarbon dewpoint conditioning\nequipment has been installed . in the meantime , hms needs to keep a close\nwatch on all southern union city gates on galveston island to monitor for\nliquids fallout .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.503+0000", "entityId": 4039, "properties": {"text": "Subject: re : january spot purchases - deals needed\nvance ,\ndeals have been created and entered in sitara as noted below :\njulie ,\nplease edit deal # 553552 to reflect tiered pricing . thanks .\nbob\nvance l taylor\n02 / 06 / 2001 02 : 24 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : january spot purchases - deals needed\nbob ,\nhplc purchased wellhead gas from the producer listed below for the production\nmonth of january , 2001 . this production wasl purchased on a \" spot \" basis and\na deal ticket should be created and entered into sitara based on the\nfollowing information :\ncounterparty meter volume price deal #\ncrosstex energy svcs . , ltd . 0435 682 mmbtu / d 100 % if / hsc $ 0 . 065 608779\ntri - union development 0435 60 mmbtu / d 100 % if / hsc less $ 0 . 055 608800\nadditionally , the following production is now on - line and a ticket should be\ncreated and entered into sitara based on the following :\ncounterparty meter volumes price period deal #\nranger oil company 9871 200 mmbtu / d 85 % gas daily if 300 / d\nranger oil company 9871 200 mmbtu / d 85 % if / hsc if 300 / d\nadditionally , these are producer svcs . deal and should be tracked in the im\nwellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.507+0000", "entityId": 4040, "properties": {"text": "Subject: re : first delivery - safari production\nvance ,\ndeal # 611981 has been created and entered in sitara .\nbob\nvance l taylor\n02 / 05 / 2001 04 : 29 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , lisa\nhesse / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect ,\nmelissa graves / hou / ect @ ect\nsubject : first delivery - safari production\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nsafari production company 4594 400 mmbtu / d 85 % gas daily 2 / 2 - 2 / 28\n96057046\nfyi , i will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of march . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.512+0000", "entityId": 4041, "properties": {"text": "Subject: neon discussion february 14\nhey guys and girls ! ? i ' ve attached an outline that brad used at saturn\nroad . ? ? you might want to use . . . it kind of dovetails with the evangelism\nfocus that shon ' s incorporating into his sermons and the connection group\ntopics . ? and since it ' s valentine ' s day this wednesday , you might want to\nuse wednesday night for something light to shake things up . ? as always , it ' s\nyour call !\n?\nbobby\n- naaman . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.517+0000", "entityId": 4042, "properties": {"text": "Subject: revision # 2 - hpl nom for february 10 , 2001\n( see attached file : hplno 210 . xls ) ( see attached file :\nhplno 213 . xls )\n- hplno 210 . xls\n- hplno 213 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.521+0000", "entityId": 4043, "properties": {"text": "Subject: weekend noms / actual flow\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 12 / 2001\n11 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 12 / 2001 11 : 02 : 00 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : weekend noms / actual flow\ndate nom actual flow\n2 / 09 / 01 46 , 667 48 , 029\n2 / 10 / 01 40 , 000 41 , 315\n2 / 11 / 01 55 , 833 56 , 895\nvolumes are in mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.526+0000", "entityId": 4044, "properties": {"text": "Subject: hpl nom for february 13 , 2001\n( see attached file : hplno 213 . xls )\n- hplno 213 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.530+0000", "entityId": 4045, "properties": {"text": "Subject: same day change - revision # 1 - hpl nom for february 10 , 2001\n( see attached file : hplno 210 . xls )\n- hplno 210 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.535+0000", "entityId": 4046, "properties": {"text": "Subject: correction on first delivery for cody\nit should read cuba libre field and cuba libre central point .\neb", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.540+0000", "entityId": 4047, "properties": {"text": "Subject: first delivery - cody\nsee attached letter\neb", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.545+0000", "entityId": 4048, "properties": {"text": "Subject: nom / actual flow for 2 / 12 / 01\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 13 / 2001\n01 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 13 / 2001 10 : 06 : 17 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : nom / actual flow for 2 / 12 / 01\nnom = 37 , 500\nactual flow = 39 , 123", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.550+0000", "entityId": 4049, "properties": {"text": "Subject: hpl nom for february 14 , 2001\n( see attached file : hplno 214 . xls )\n- hplno 214 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.555+0000", "entityId": 4050, "properties": {"text": "Subject: entex deal # 318052 for jan 2001\nliz - - please make a note that i added meter # 1168 midcon / bammel to the entex\ndeal # 318052 for january lst & 2 nd for flow that occured .\ni pathed a 1 to come across to pops , but the following will be allocated to\nthe deal : lst : 2 , 953\n2 nd 549\ntotal 3 , 502 ( actual flow volume )\npatsy with midcon ( kindermorgan ) is aware of this and agrees .\nlet me know if you have any questions .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.560+0000", "entityId": 4051, "properties": {"text": "Subject: meter 5097\ndaren ,\ndo you know if there should be a deal in place for midcoast on this meter for\njanuary ? currently , it only shows ena . i understand that a deal was added\nin december for midcoast , but that deal was only good for dec .\nthanks .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.565+0000", "entityId": 4052, "properties": {"text": "Subject: nom / actual flow vols\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 14 / 2001\n11 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 14 / 2001 10 : 53 : 44 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : nom / actual flow vols\nteco tap : nom = 20 , 000 ; actual flow = 20 , 059", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.570+0000", "entityId": 4053, "properties": {"text": "Subject: hpl nom for february 15 , 2001\n( see attached file : hplno 215 . xls )\n- hplno 215 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.574+0000", "entityId": 4054, "properties": {"text": "Subject: re : panenergy 9 / 00\nit worked . thanks .\ndaren j farmer @ ect\n02 / 15 / 2001 02 : 08 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : panenergy 9 / 00\ni changed the demand to a negative value . i don ' t know if this will work or\nnot . if it does not work , i can put the demand on the sale ticket .\nd\nenron north america corp .\nfrom : megan parker @ enron 02 / 15 / 2001 01 : 55 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : panenergy 9 / 00\ncan you make it negative ? we need to reduce our payment .\ndaren j farmer @ ect\n02 / 15 / 2001 01 : 40 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : panenergy 9 / 00\ndone .\nenron north america corp .\nfrom : megan parker @ enron 02 / 15 / 2001 01 : 09 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : panenergy 9 / 00\ni finally heard back from duke regarding sept 2000 . they agree with our\nspreadsheet , so i need a demand fee to adjust the price in sitara .\ndeal 157288 - demand fee of ( $ 8 , 745 . 69 )\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.579+0000", "entityId": 4055, "properties": {"text": "Subject: re : panenergy 9 / 00\ncan you make it negative ? we need to reduce our payment .\ndaren j farmer @ ect\n02 / 15 / 2001 01 : 40 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : panenergy 9 / 00\ndone .\nenron north america corp .\nfrom : megan parker @ enron 02 / 15 / 2001 01 : 09 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : panenergy 9 / 00\ni finally heard back from duke regarding sept 2000 . they agree with our\nspreadsheet , so i need a demand fee to adjust the price in sitara .\ndeal 157288 - demand fee of ( $ 8 , 745 . 69 )\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.584+0000", "entityId": 4056, "properties": {"text": "Subject: panenergy 9 / 00\ni finally heard back from duke regarding sept 2000 . they agree with our\nspreadsheet , so i need a demand fee to adjust the price in sitara .\ndeal 157288 - demand fee of ( $ 8 , 745 . 69 )\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.588+0000", "entityId": 4057, "properties": {"text": "Subject: enron nom for february 16 , 2001\n( see attached file : hplno 216 . xls )\n- hplno 216 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.593+0000", "entityId": 4058, "properties": {"text": "Subject: jan . 01 sale to texas general land office\ndeal # 547201\ntexas general land office has called and is disputing that this sale is a\npart of the month exchange deal for transport .\ndo we have the name of the trader at texas general land office that did this\ndeal with us ?\nthe sale was for 01 / 01 - 01 / 31 for 99 , 200 mmbtus at $ 9 . 82 .\nthanks - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.598+0000", "entityId": 4059, "properties": {"text": "Subject: enron / hpl nom for february 17 , 2001\n( see attached file : hplno 217 . xls )\n- hplno 217 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.603+0000", "entityId": 4060, "properties": {"text": "Subject: noms / actual flow for 14 th / 15 th\nliz , sorry the actuals for the 14 th were late . we just received them today .\nwe agree .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 16 / 2001\n10 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkponton @ duke - energy . com on 02 / 16 / 2001 10 : 20 : 39 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc : dcspencer @ duke - energy . com\nsubject : noms / actual flow for 14 th / 15 th\nday nom actual flow\n2 / 14 25 , 000 25 , 959\n2 / 15 60 , 000 64 , 837\nall volumes are in mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.607+0000", "entityId": 4061, "properties": {"text": "Subject: re : first delivery - cody\nvance ,\ndeal # 586029 has been modified to reflect 2 % less as fuel .\nbob\nvance l taylor\n02 / 12 / 2001 04 : 35 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - cody\nbob ,\nthe following production is now on - line and sitara ticket no . ? ? ? ? ? should be\nmodified in sitara based on the following :\ncounterparty meter volumes price period global no .\ncody energy llc 9864 20 , 000 mmbtu / d less 2 % as fuel 100 %\ngd less $ 0 . 21 2 / 12 - 2 / 28 96052809\nfyi , a firm ticket has already been created and submitted for the remaining\nterm of the deal beginning with the month of march . additionally , this is a\nproducer svcs . deal and should be tracked in the im wellhead portfolio . . .\nattached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 12 / 2001\n04 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 02 / 12 / 2001 03 : 45 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ees @ ees , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeff a austin / hou / ees @ ees , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , j r fosdick / gco / enron @ enron ,\ncarlos j rodriguez / hou / ect @ ect , stephanie gomes / hou / ect @ ect , pat\nclynes / corp / enron @ enron , tom acton / corp / enron @ enron , robert\nwalker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect\ncc :\nsubject : first delivery - cody\nsee attached letter\neb", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.612+0000", "entityId": 4062, "properties": {"text": "Subject: re : basin production from ga 213\nvance ,\ndeal # 624411 has been created and entered in sitara .\nbob\nvance l taylor\n02 / 09 / 2001 03 : 40 pm\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan smith / hou / ect @ ect , donald\np reinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : re : basin production from ga 213\nbob ,\nas mentioned earlier , houston exploration is also delivering gas to us at\nthis meter . the following production is now on - line and a ticket should be\ncreated and entered into sitara based on the following :\ncounterparty meter volumes price period\nhouston exploration 9696 8000 mmbtu / d 100 % gd less $ 0 . 16 2 / 1 - 2 / 28\nfyi , i will create and submit a committed reserves firm ticket if and when\nthe gas buyer terms the deal up . additionally , this is a producer svcs . deal\nand should be tracked in the im wellhead portfolio . . . attached to the\ngathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 09 / 2001\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : robert cotten 01 / 26 / 2001 08 : 47 am\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect\nsubject : re : basin production from ga 213\ndaren / vance ,\ndeal # 586954 has been created and entered in sitara :\ndate meter # volume price\n2 / 1 / 01 - 2 / 28 / 01 9696 5 , 000 100 % gas daily less $ 0 . 16\nbob\ndaren j farmer\n01 / 26 / 2001 08 : 25 am\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 01 / 26 / 2001\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n01 / 25 / 2001 01 : 58 pm\nto : daren j farmer / hou / ect @ ect\ncc : john peyton / hou / ect @ ect\nsubject : re : basin production from ga 213\ndaren ,\ni ' ve just received word from basin to bring production on sometime today or\ntomorrow ( they expect to get up to b / t 10 , 000 - 15 , 000 d ) ; if our facility\nplanning engineer determines that we can take the gas , then it will flow for\nall of february and be priced at 100 % gas daily less $ 0 . 16 .\nvlt\ndaren j farmer\n01 / 25 / 2001 01 : 47 pm\nto : vance l taylor / hou / ect @ ect\ncc :\nsubject : re : basin production from ga 213\ni need for you , or the producer services group , to determine if you think the\ngas will flow for the month and at what price . i will use your decision for\nour bidweek postion .\nd\nvance l taylor\n01 / 25 / 2001 11 : 53 am\nto : daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect\ncc : susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : basin production from ga 213\nfyi ,\nhow would you want to handle for february nomination ?\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 01 / 25 / 2001\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : brad blevins 01 / 25 / 2001 10 : 56 am\nto : john peyton / hou / ect @ ect\ncc : nick cocavessis / corp / enron @ enron , steve - hpl - schneider / hou / ect @ ect , pat\nflavin / gco / enron @ enron , vance l taylor / hou / ect @ ect , buck\nthomas / gco / enron @ enron\nsubject : basin production from ga 213\ni have reviewed the gas composition analysis from spl of the basin production\nfrom ga 213 . while spl ' s analysis does show a dewpoint of around 20 degrees\nf at 400 psig , it is both my and john handley ' s opinion that the gas from the\nwellbore had stratified by the time that this sample was taken . we expect\nthe dewpoint of the flowing gas to be higher . however , this was the best\nsample that could be obtained at the time . we have conferred with steve\nschneider and we are willing to take this gas on a conditional basis over the\nnext couple of days . once the 6 \" line has been pigged , the production flows\nstablilized and mitchell ' s conditioning equipment lined out over the next\ncouple of days , hms will need to take another sample at the meter run and\nhave spl run an extended analysis with a dewpoint curve on an expedited\nbasis . should this sample indicate a dewpoint over 45 degrees f , then this\nproduction will be shut in again until hydrocarbon dewpoint conditioning\nequipment has been installed . in the meantime , hms needs to keep a close\nwatch on all southern union city gates on galveston island to monitor for\nliquids fallout .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.617+0000", "entityId": 4063, "properties": {"text": "Subject: re : first delivery - helmerich & payne\nvance ,\ndeal # 621422 has been created and entered in sitara .\nbob\nvance l taylor\n02 / 09 / 2001 04 : 03 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - helmerich & payne\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nhelmerich & payne , inc . 9841 1500 mmbtu / d 100 % gd less $ 0 . 05 2 / 8 - 2 / 28\n96046469\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of march . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 09 / 2001\n04 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 02 / 08 / 2001 04 : 23 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect @ ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect ,\nsteve hpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , eric wardle / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary\njo johnson / hou / ees @ ees , rita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect ,\ncheryl jones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeff a austin / hou / ees @ ees , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , kristen j hanson / hou / ect @ ect , j r\nfosdick / gco / enron @ enron , carlos j rodriguez / hou / ect @ ect , stephanie\ngomes / hou / ect @ ect , pat clynes / corp / enron @ enron , tom acton / corp / enron @ enron ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect\ncc :\nsubject : first delivery - helmerich & payne\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.622+0000", "entityId": 4064, "properties": {"text": "Subject: clickathome - msn internet service available\nthe clickathome team is pleased to announce that pilot participants may now\norder internet service from msn . msn offers dsl ( broadband ) and dial - up ( 56 k\nmodem ) nationwide . to check the availability of service at your address ,\nview prices or to place your order , visit the clickathome pilot website at :\nhttp : / / clickathomepilot . enron . com / ( the website must be launched through\ninternet explorer ) .\nmsn ' s broadband satellite is expected to be available in mid 2001 . this\ncutting edge 2 - way satellite technology will provide broadband service to\nmost of the united states ( excluding alaska and hawaii ) .\nif you have problems launching the site , please copy and paste\nhttp : / / clickathomepilot . enron . com directly into internet explorer .\nclickathome team !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.626+0000", "entityId": 4065, "properties": {"text": "Subject: assigned hr reps .\ndear clients ,\nin order to better serve your hr needs , frank and i are splitting up sally ' s\neops world into two groups . each group will have a primary contact as\ndefined below . frank and i will continue to back each other up in order to\nmake hr services available to you as your needs arise . if either of us is\nnot available , you may contact the other for immediate response .\nfrank dejesus will have primary responsibility for the employees in the\nfollowing groups :\nbob m . hall\njeff gossett\nstacey white\nsheri thomas\ni will be responsible for the employees in the following groups :\nleslie reeves\nshona wilson\nbeth apollo\njames scribner\nmary solmonson\nenroncredit . com\ntoni graham will remain as a staffing specialist with a focus on accounting\nand risk management candidates .\nmolly magee will focus on all other disciplines .\nrhonna palmer will continue to staff non - exempt ( hourly ) employees .\nnorma yeverino joins our group as a newly promoted jr . specialist . norma\nwill be involved in some generalist duties and will provide comprehensive\nreporting capabilities to sally beck and her direct reports .\nhr associate , sunjay arya will rotate through our group for the next six\nmonths , and will focus on special projects . he was recently involved with\nthe compensation team .\njanet de la paz will continue to provide comprehensive administrative support\nfor all of us with the same goodwill and professionalism that has helped us\nin the past .\nfrank & i look forward to working with ryan seleznov , sr . director of hr ,\neffective 2 / 26 / 01 .\nwe look forward to serving your hr needs in 2001 .\nplease forward this to the rest of the employees in your group .\nhere ' s how you can contact us :\nfrank dejesus @ ext . 53662\npager : 888 - 357 - 7489\ncell : 713 - 854 - 0945\nhome : 936 - 273 - 2910\nhector g . mcloughlin @ ext . 36703\npager : 888 - 847 - 1913\ncell : 713 - 854 - 0839\nhome : 713 - 690 - 3297\nnorma yeverino @ ext . 35164\ncell : 281 - 236 - 9628\nhome : 281 - 633 - 2328\ntoni graham @ ext . 39995\npager : 888 - 847 - 1912\ncell : 713 - 854 - 2675\nhome : 713 - 432 - 1495\nmolly magee @ ext . 34804\npager : 877 - 939 - 0331\ncell : 281 - 827 - 6715\nhome : 281 - 852 - 8864\nryan seleznov @ ext . 35759\ncell : 713 - 628 - 0880\nhome : 713 - 669 - 1500\nhgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.635+0000", "entityId": 4066, "properties": {"text": "Subject: kinder morgan net out for 2 / 15 @ aquila header meter # 11230 & hpl\nmeter 980072\nplease make a note that on 2 / 15 at aquila header ( wgr pipe in system ) meter\n# 11230 & hpl / aquila hdr meter # 980072 , that there is a net out of purchase\ndeal 626230 & sale to kinder morgan deal 626231 for a volume 29310 .\nlet me know if you have any questions .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.642+0000", "entityId": 4067, "properties": {"text": "Subject: ces changes on 16 th & 17 th\ndaren - - - just wanted to make sure you heard about the ces changes on midcon on\nthe 16 th and 17 th , so let me know if you didnt get carlos ' sheet .\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.648+0000", "entityId": 4068, "properties": {"text": "Subject: txu fuel co . nom . s for 2 / 20 / 01\n( see attached file : hplno 220 . xls )\n- hplno 220 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.653+0000", "entityId": 4069, "properties": {"text": "Subject: feb 12 th sale to aquila\nfyi\ndaren - - - on the 12 th , there is a sale to aquila on the header system , for\n10 , 000 . . . . . . . . i think we were supplying it with aec . for whatever reason , i\nhad the aec 10 . 0 @ # 11230 into midcon . . . which isnt right because there was no\nmarket for it , and midcon wasnt looking for it , but the aquila deal was at\n# 700 on wgr ( aquila ) . so i went ahead and changed the aec ticket to match up\nwith the aquila deal . let me know if you think it is incorrect .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.658+0000", "entityId": 4070, "properties": {"text": "Subject: deal 502952\ndaren ,\ndo you know if this deal was supposed to run through 12 / 00 and 1 / 01 ? it was\na deal to buy 400 per day from harman operating and is currently in for\n11 / 15 / 00 to 11 / 30 / 00 . volume management said they are looking for their\nmoney .\nlet me know .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.662+0000", "entityId": 4071, "properties": {"text": "Subject: jan . 01 sale to texas general land office\nlinda -\ni did not know that this was part of a natural gas / crude oil exchange deal\nand billed texas general land office for the gas sale in jan . 01\ndo you have a crude oil payable to offset this sales invoice ?\nif so , will this a / r balance of $ 974 , 144 . 00 be netted against the crude oil\npayable in sap ?\nplease let me know , i would like to take care of the net in sap asap .\nthanks - katherine\ngas settlements\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n02 / 20 / 2001 02 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n02 / 16 / 2001 08 : 56 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : jan . 01 sale to texas general land office\ndeal # 547201\ntexas general land office has called and is disputing that this sale is a\npart of the month exchange deal for transport .\ndo we have the name of the trader at texas general land office that did this\ndeal with us ?\nthe sale was for 01 / 01 - 01 / 31 for 99 , 200 mmbtus at $ 9 . 82 .\nthanks - katherine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.667+0000", "entityId": 4072, "properties": {"text": "Subject: txu fuel co . nom . s for 2 / 21 / 01 - revised\nrevised to show \" same day \" purchase of 20 , 000 mmbtu at oasis sealy for gas day\nof 2 / 20 / 01 .\n( see attached file : hplno 221 . xls )\n- hplno 221 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.671+0000", "entityId": 4073, "properties": {"text": "Subject: txu fuel co . nom . s for 2 / 21 / 01\n( see attached file : hplno 221 . xls )\n- hplno 221 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.676+0000", "entityId": 4074, "properties": {"text": "Subject: global accounting promotions\nplease join me and the global accounting leadership team in congratulating\nthe following individuals on their promotions to :\nto managing director\nsally beck ( ewn )\nfernley dyson ( eel )\nto vice president\nbeth apollo ( enw )\njanine juggins ( eel tax )\nphillip lord ( ebs )\nlaura scott ( ena )\nchris sherman ( ena )\nwade stubblefield ( ees )\nto senior director\nbuddy aiken ( eel )\njim coffey ( ena )\ndonette dewar ( intl . tax )\npatricia dunn ( nepco )\nmark frank ( ena )\nwilliam gehle ( eecc )\njoseph grajewski ( eecc )\njan johnson ( corp )\nscott mills ( enw )\njames new ( eel )\nmary l . ruffer ( ena )\nrichard sage ( eel )\nelaine schield ( corp )\nkevin sweeney ( enw )\nbeth wapner ( ebs tax )\ndirector\nthresa allen ( enw )\nron baker ( corp )\nmisty barrett ( ees )\njeff blumenthal ( ews )\ntrey cash ( corp tax )\nkaren choyce ( corp )\ncheryl dawes ( ena )\nlanette earnest ( ews tax )\njeffrey gossett ( enw )\nrobert guthrie ( ets tax )\nsusan helton ( ena )\nralph jaeger ( eel )\nandrea kerch ( eel )\nfaith killen ( ena )\njohnna kokenge ( corp )\nmatt landy ( eel )\nandy lawrence ( isc )\nconnie lee ( ebs )\ncaroline lothian ( eel )\nmeg malone ( corp tax )\ngary peng ( corp )\nstephen schwarzbach ( corp )\nsally seelig ( ees tax )\ndon shackley ( ees / london tax )\npatricia shannon ( corp )\neddie sikes ( intl . tax )\njeffrey smith ( egm )\nron smith ( gss )\nkim theriot ( enw )\nhope vargas ( ena )\ntina ward ( eel )\nstephen whitaker ( eel )\nstacey white ( enw )\nrob wilcott ( corp )\nto manager\nchristopher abel ( enw )\nstacey aune ( ena )\ndavid baumbach ( enw )\nmaya beyhum ( enw london )\npatricia bloom ( ena )\nmatthew brown ( enw )\nvince cacaro ( isc )\nclara carrington ( enw )\ncarol carter ( ena )\ncarolyn centilli ( isc )\nerin copeland ( eecc )\nrichard cross ( enw )\nrachel davis ( corp )\nmichael desbiens ( isc )\ndavid dupre ( isc )\neileen flanagan ( eel )\nregina figueroa ( isc )\nrebecca ford ( enw )\ndarron giron ( enw )\njulie goodfriend ( international tax )\nkaren gruesen ( ena )\nkevin hall ( eel )\nkristen hanson ( enw )\ndavid horne ( isc )\nlarry hunter ( enw )\ntodd hunter ( ees )\njim ischy ( gss )\nchris jones ( isc )\nwilliam kasmervisz ( enw )\nkam kaiser ( enw )\nkedar kulkarni ( isc )\nmonica lande ( enw portland )\nsuzanne lane ( eel )\nvince mack ( isc )\ndavid maxwell ( enw )\nemitra nelson ( isc\ncaroline nugent ( ews tax )\nmark pope ( isc )\nyiannis poulopoulos ( london tax )\nmelissa ratnala ( enw )\njason sharp ( corp tax )\nstephanie smith ( corp )\npatricia spence ( enw )\namy spode ( enw )\npatricia sullivan ( enw )\nlisa sutton ( ets )\njohn swinney ( enw )\ndeana taylor ( corp )\ndimitri taylor ( enw )\nwayne tencer ( ees )\nbernella tholen ( ena )\ntheresa vos ( ena )\nblake walker ( eecc )\nbob ward ( international tax )\ndavid williams ( eel )\nto senior specialist\namelia alland ( enw )\njames armstrong ( ena )\ncarmen ayala ( gss\ncynthia balfour - flanagan ( enw )\ngilda bartz ( corp )\nstacey brewer ( enw )\nmarian briscoe ( corp tax )\naneela charania ( enw )\npatricia clark ( corp )\nchris crixell ( ees tax )\ndiane ellstrom ( enw )\nheidi griffith ( ees )\nmarla hernandez ( isc )\nmarlene hilliard ( enw )\ndave hollick ( london tax )\nrachel jones ( eel )\ndawn kenne ( enw )\nharry kent ( ews tax )\nblanca lopez ( ena )\nbrian hunter lindsay ( eel )\nrachel lyon ( eel )\nstacy hardy ( ena )\nsally mcadams ( isc )\nkelly mccain ( corp tax )\nerrol mclaughlin , jr . ( enw )\nsylvia martinez ( isc )\nkevin meredith ( enw )\nmeredith mitchell ( enw )\nwinnie ngai ( corp tax )\nthien - huong ngo ( enw )\nbrian palmer ( enw )\nbich ann t pham ( ena )\nshelly pierson ( corp )\nlillie pittman ( isc )\ndavid rae ( enw )\ndixie riddle ( ets tax )\nsalvador dominguez ( corp )\nmark schrab ( enw )\nstephanie sever ( enw )\ndanielle shafer ( isc )\nshifali sharma ( enw )\nkeith simper ( ena )\nchristopher spears ( enw )\ncaron stark ( isc )\ntara sweitzer ( enw )\ndavid vandor ( ena )\nmary womack ( isc )\ndavid yang ( international tax )\nsabrae zajac ( enw )\nto specialist\nkim chick ( ees tax )\njustin east ( eel )\njoey esperance ( international tax )\nrandi howard ( isc )\nmelanie hutchinson ( ews tax )\nmary joseph ( corp tax )\nsherri kathol ( international tax )\nlex lacaze ( international tax )\nmichelle leblanc ( corp tax )\nling li ( ews tax )\nkori loibl ( enw )\nalan marsh ( corp tax )\nbruce mills ( enw )\nerika moore ( eel )\nmatthew motsinger ( enw )\nsherry meyers ( isc )\nandrea price ( corp tax )\nbernice rodriguez ( enw )\ntina salinas ( ees tax )\nbrent vasconcellos ( corp tax )\nbrandi wachtendorf ( enw )\npatryk wlodarski ( enw london )\nto entry specialist\nstuart sheldrick ( eel )\nto accountant i\nbecky klussman ( corp )\nto accountant ii\nsilvia shelby ( accounts payable )\nto staff\nmary behn ( ees )\nguy freshwater ( enw london )\ngeralynn gosnell ( enw )\nrichard miley ( enw )\nbrent storey ( enw london )\nstuart thom ( enw london )\njudith walters ( enw )\njonathan white ( enw london )\njoan winfrey ( enw )\nto senior tax analyst\nemily allwardt ( international tax )\nleon branom ( ebs tax )\nshanna husser ( ees tax )\nshilpa mane ( corporate / london tax )\ntodd richards ( corp tax )\nmichelle thompson ( corp tax )\nto sr . administrative assistant\nnorma chavez ( international tax )\nsarah knott ( enw london )\nto sr . travel administrator\ncheryl slone ( gss )\nto administrative coordinator\nheather choate ( enw )\nkayla heitmeyer ( gss )\nto senior clerk\nangela barnett ( enw )\nmatthew davies ( enw london )\ndaniela de lisi ( enw london )\nrufino dorteo ( ena )\nmark pilkington ( enw london )\nnarjinder sandhu ( eel )\nhoward sweasey ( eel )\nlaura vargas ( enw )\njo ann woods ( corp tax )\nto intermediate clerk\nmaria maldonado ( accounts payable )\naraceli mondragon ( accounts payable )\nirma rodriguez ( accounts payable )\nbernita sowell ( accounts payable )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.680+0000", "entityId": 4075, "properties": {"text": "Subject: eol deal ids in path manager\nthought you might want to see this .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edward terry / hou / ect on 02 / 21 / 2001 09 : 19\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : matt pena / enron @ enronxgate on 02 / 21 / 2001 09 : 11 am\nto : edward terry / hou / ect @ ect , george f smith / hou / ect @ ect , patti\nsullivan / hou / ect @ ect , katherine l kelly / hou / ect @ ect , robert\nsuperty / hou / ect @ ect , victor lamadrid / hou / ect @ ect , beverly beaty / hou / ect @ ect ,\ndonna greif / hou / ect @ ect , richard pinion / hou / ect @ ect\ncc : chris schomer / enron @ enronxgate , brian ripley / enron @ enronxgate , bob m\nhall / na / enron @ enron , bryce baxter / hou / ect @ ect\nsubject : eol deal ids in path manager\nas you ' re aware , we ' re having to bridge houston street ids into unify from\nsitara .\nwe are being asked , as a requirement , to not display the eol id on statements\nthat are identified as \" broker eol trade \" deals originating from eol . we\nhave two options to accomodate this requirement :\noption 1 is to have the modify the bridge code to not bridge over the eol\ndeal id if the deal is a \" broker eol trade \" deal . one of the drawbacks of\nthis option is that you won ' t be able to referenence the eol id on the path\nmanager for these related deals . all other deals will have the eol deal id ,\nif applicable . the eol id would not show up on the statements because it\nwouldn ' t be populated .\noption 2 is to modify several areas of code in the settlements area which may\nbe more time consuming . the obvious code change would be in the statement\ngeneration area as well as other report type information .\noption 2 allows you the greatest flexibility while option 1 may be quicker to\nimplement .\nplease pass this along to others in your group and get feedback . please\nshare your thoughts . . . .\ni ' ve attached an email explaining the broker eol trades . this is not to be\nconfused with broker deals done at a given point with not transportation .\nthese will continue to come across as you ' d normally expect .\nany questions , please ask . . .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.685+0000", "entityId": 4076, "properties": {"text": "Subject: meter 5892\ni am getting several phone calls from alpine resources demanding to be paid\nfor meter 5892 and there is nothing there to be paid .\nthe person name doing the requesting is john childers and he said that he\nspoke to daren farmer . he is looking for 859 mmbtu ' s for december , 2000 and\n3 , 251 mmbtu ' s for january 2001 . this is on the katy gas unit . if anyone\nwould like to talk to john his phone number is 281 - 646 - 0232\ncharlene\nx 31539", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.690+0000", "entityId": 4077, "properties": {"text": "Subject: pioneer natural\ndaren do you have a problem if i copy the 2000 deal ( 362125 ) for pioneer and\nmake a new one for 2001 . they have flow in jan . this is giving me a meter\nallocation exception forjan . let me know thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.695+0000", "entityId": 4078, "properties": {"text": "Subject: re : meter 5892\ni spoke with karen lindley about volume not being allocated . she said that\nshe passed it on to fred boas .\ndaren j farmer\n02 / 21 / 2001 04 : 46 pm\nto : charlene richmond / hou / ect @ ect\ncc : fred boas / hou / ees @ ees , melissa graves / hou / ect @ ect , karen\nlindley / corp / enron @ enron\nsubject : re : meter 5892\ni have done deals with john at this point . why are we not being allocated\nany volume ?\nd\ncharlene richmond\n02 / 21 / 2001 02 : 59 pm\nto : fred boas / hou / ees @ ees , daren j farmer / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\ncc : karen lindley / corp / enron @ enron\nsubject : meter 5892\ni am getting several phone calls from alpine resources demanding to be paid\nfor meter 5892 and there is nothing there to be paid .\nthe person name doing the requesting is john childers and he said that he\nspoke to daren farmer . he is looking for 859 mmbtu ' s for december , 2000 and\n3 , 251 mmbtu ' s for january 2001 . this is on the katy gas unit . if anyone\nwould like to talk to john his phone number is 281 - 646 - 0232\ncharlene\nx 31539", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.701+0000", "entityId": 4079, "properties": {"text": "Subject: nom / actual flow for 2 / 20 / 01\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 21 / 2001\n04 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 02 / 21 / 2001 10 : 39 : 05 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : nom / actual flow for 2 / 20 / 01\nnom = 16 , 667\nteco tap actual flow = 15 , 652\nall volumes are in mmbtu ' s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.706+0000", "entityId": 4080, "properties": {"text": "Subject: crosstex energy services - camden res . , driscoll ranch , meters\n9868 , 9858 , gpa dated 9 / 28 / 00\nmick ,\nfyi ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 21 / 2001\n05 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njerry bubert @ enron\n02 / 21 / 2001 01 : 03 pm\nto : vance l taylor / hou / ect @ ect\ncc : melissa graves / hou / ect @ ect , joanne harris / na / enron @ enron , gerald\nlofton / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , brian m\nriley / hou / ect @ ect , susan smith / hou / ect @ ect , christy sweeney / hou / ect @ ect ,\nrobert walker / hou / ect @ ect , george weissman / hou / ect @ ect , kimberlee a\nbennick / hou / ect @ ect\nsubject : crosstex energy services - camden res . , driscoll ranch , meters\n9868 , 9858 , gpa dated 9 / 28 / 00\ncrosstex has elected the base contract price ( if hsc less $ 0 . 10 ) for all gas\nproduced from the above wells for the term 3 / 1 / 01 - 3 / 31 / 01 . jab", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.710+0000", "entityId": 4081, "properties": {"text": "Subject: revisions - march wellhead estimate\nbob ,\nhere are some revisions to the march wellhead production estimate resulting\nfrom the pre - nom meeting held this morning .\nrevisions :\ncounterparty mtr no . prev nom curr nom sitara no .\nlouis dreyfus ( frmly costilla ) 9724 29 / d 4 , 000 / d 125895\nnorth central corp 9767 560 / d 0 139363\nnorth central corp 6296 1 , 637 / d 1 , 800 / d 136222\nprize energy resources 4965 78 / d 2 , 000 / d 131720\nbass enterprises ( frmly richardson ) 9807 7 , 025 / d 9 , 000 / d 141691\nswift energy 9636 34 / d 0 135664\ncrosstex energy 9858 8 , 637 / d 8 , 500 / d 500668\nnew production :\nwagner & brown , ltd . 6589 0 8 , 000 / d n / a\nthe houston exploration co . 9696 0 6 , 000 / d n / a\nstone energy corp 9696 0 4 , 000 / d n / a\nhesco gathering oil co . 9876 0 1 , 000 / d n / a\nwheeler operating co . 9879 0 1 , 000 / d n / a\nsafari production co . 4594 0 400 / d n / a\nhelmerich\ni ' d like for your sitara position to be consistent with the final number i ' ll\nprovide to darren .\nthanks ,\nvlt\nx - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.715+0000", "entityId": 4082, "properties": {"text": "Subject: march preliminary wellhead production estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 02 / 21 / 2001 08 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n02 / 20 / 2001 04 : 32 pm\nto : robert cotten / hou / ect @ ect\ncc : mary m smith / hou / ect @ ect , gary a hanks / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\nsubject : march preliminary wellhead production estimate\nbob ,\nplease see the attached file estimating wellhead production for the month of\nmarch . please be advised that this is a preliminary estimate as to this\ndate , we have received no noms for march . i will update you with any\nrevisions as they occur .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.720+0000", "entityId": 4083, "properties": {"text": "Subject: harassment avoidance - clarification\n* * clarification * *\nharassment prevention training\nthis training is mandatory for all enron employees employed since the last\nseminar was conducted in late 1998 or early 1999 . those who have already\nattended enron harassment avoidance training will be offered a refresher\ncourse in avoiding and preventing harassment .\nto contribute our personal best at enron , our conduct must promote respectful\nand co - operative work relationships . workplace harassment conflicts with\nenron ' s vision and values and violates company policy . harassment also can\nviolate federal and state laws . by understanding what harassment is and its\npotential harm , we can prevent it in our workplace .\nduring this training you will :\nbe able to recognize harassment\nlearn to take precautions against being harassed\nlearn to avoid being considered a harasser\nknow how to address a situation involving harassment\nlearn how harassment prevention is consistent with enron values\nplease click here ( ) to sign up for the session of your choice . if you\nhave problems registering or have any questions , please call 713 853 - 0357 .\nwe are pleased to announce that all employees of ews and ees will receive\nharassment prevention training .\nthe dates and times available for the sessions are :\nfriday , feb 23 ; 1 : 00 - 2 : 30 ; 2 : 45 - 4 : 15\nmonday mar 5 ; 1 : 00 - 2 : 30 ; 2 : 45 - 4 : 15 ; 4 : 30 - 6 : 00\nall training sessions will be held in the lasalle room at the doubletree\nhotel .\nthere is a $ 50 charge for each attendee in the training session .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.727+0000", "entityId": 4084, "properties": {"text": "Subject: re : hpl / ena\ndaren , i just wanted to let you know that i submitted the churn for your\nlucent phone last week . they have to create a duplicate extension so that it\ncan be plugged in at your desk . i apologize for it taking so long . . . it ' s\nthe first available slot that they had .\nlaura\n- - - - - - - - - - - - - - - - - - - - - - forwarded by laura vuittonet / corp / enron on 02 / 21 / 2001\n08 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmove - team\n02 / 16 / 2001 11 : 13 am\nsent by : john salinardo\nto : laura vuittonet / corp / enron @ enron\ncc : robert slone / enron @ enronxgate\nsubject : re : hpl / ena\nyour request has been added to the 2 / 21 churn . thank you .\nlaura vuittonet @ enron\n02 / 15 / 2001 04 : 55 pm\nto : move - team / epsc / hou / ect @ ect\ncc : darren p adamik / hou / ect , ben hill / hou / ect , david a cummings / hou / ect @ enron\nsubject : hpl / ena", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.732+0000", "entityId": 4085, "properties": {"text": "Subject: attached is the march , 2001 availability schedule for devon .\nplease call me at 405 - 228 - 4298 if you\nmarch 2001 devon availabilities .\nif anyone receives this that should not , please let me know and i will remove\nfrom distribution .\nthanks ,\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 02 / 21 / 2001 09 : 20\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" victor haley \"\n02 / 21 / 2001 09 : 45 am\nto :\ncc :\nsubject : attached is the march , 2001 availability schedule for devon . please\ncall me at 405 - 228 - 4298 if you\nattached is the march , 2001 availability schedule for devon . please call me\nat 405 - 228 - 4298 if you have any questions .\n- enronavailso 301 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.737+0000", "entityId": 4086, "properties": {"text": "Subject: re : march 2000 avails\nhere are volumes at keystone tailgate plant for march 2001\nif anyone receives this that should not due to pipeline changes , please let\nme know and i will delete from\ndistribution .\nthanks ,\nbeverly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beverly beaty / hou / ect on 02 / 21 / 2001 09 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" deana thayer \"\n02 / 20 / 2001 04 : 43 pm\nto :\ncc :\nsubject : re : march 2000 avails\ni will be happy to also send it email . i haven ' t in the past but will do so\nfrom now on .\n> > > 02 / 20 / 01 04 : 16 pm > > >\ni received a fax from you today regarding the keystone plant tailgate\nvolumes for march . i was\nwondering if you forward this via e - mail as well . i don ' t always receive\nfaxes on a timely basis and i ' m\nnot sure the appropriate scheduler always receives the information . please\nlet me know .\nthanks ,\nbeverly\n713 - 853 - 6357\n- enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.745+0000", "entityId": 4087, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.753+0000", "entityId": 4088, "properties": {"text": "Subject: eastrans nomination effective march 1 , 2001\neffective 3 / 1 / 01 , the deliveries into eastrans will be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n19500 mmbtu / dy from fuels cotton valley\n10500 mmbtu / dy into pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.759+0000", "entityId": 4089, "properties": {"text": "Subject: neon for feb 28\nattached are the questions for next week ' s neon lesson . have fun ! !\n- feb 28 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.765+0000", "entityId": 4090, "properties": {"text": "Subject: btu change\nplease note that i have re - formatted the attachment to an excel spreadsheet .\ntry the attachment and let me know if you have any problems . also , in\ndiscussion with duke , txu fuel co . does not have a transportation agreement\nwith\nduke for the redelivery of this gas . the agreement is between enron and duke .\naccording to brian kerns of duke , they basically took assignment of the\nexisting\ntransportation agreement enron had with pg & e ( now el paso ) . if this is the\ncase , then we should be using the nominated amount as the driver towards\nmeeting\nour monthly minimum purchase obligation . any imbalance between enron and duke\non the duke system receipts would be transparent to txu and worked out between\nenron and duke . any imbalance between the nominated volumed and the actual\nvolumes received at the \" teco tap \" would need to be worked out between enron\nand\ntxu fuel co . there are a couple of different ways to work this out , but i\nneed\nto review the contract first . please look at this on your side and lets come\nto\nan agreement as soon as possible since the end of the month is quickly\napproaching .\nthanks ,\nccs\n( see attached file : duketecotap . xls )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by charlie stone / texas utilities on\n02 / 22 / 2001\n02 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 02 / 22 / 2001 10 : 36 : 27 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : btu change\nmy gas control has just notified me that the btu factor i should be using\nat your point should be 1 . 027 and not the 1 . 035 i have used so far . below\nare the volumes as they appear in our system . please do not hesitate to\ncontact me if you have any questions .\n( embedded image moved to file : picl 7578 . pcx )\n- picl 7578 . pcx\n- duketecotap . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.769+0000", "entityId": 4091, "properties": {"text": "Subject: revision # 1 - hpl nom for february 23 , 2001\n( see attached file : hplno 223 . xls )\n- hplno 223 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.775+0000", "entityId": 4092, "properties": {"text": "Subject: txu fuels / sds nomination for march 2001\nattached is the march 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel company ( previously tufco ) and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.781+0000", "entityId": 4093, "properties": {"text": "Subject: enron / hpl actuals for february 21 , 2001\nestimated actual for teco tap 25 . 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.786+0000", "entityId": 4094, "properties": {"text": "Subject: same day change - revision # 1 - enron nom for february 22 , 2001\n( see attached file : hplno 222 . xls )\n- hplno 222 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.792+0000", "entityId": 4095, "properties": {"text": "Subject: first delivery - wheeler operating\nplease see attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.796+0000", "entityId": 4096, "properties": {"text": "Subject: potential list - mar . 2001\ndaren :\nhere is what we are aware of for potential new volume for 3 / 01 :\ncomstock sutton , tyler county , 1500 - 2500 mmbtu / d - gas daily mid month .\nd & p operating , harris county , 750 - 1500 mmbtu / d - gas daily mid month\nsaxet , matagorda county , 2000 - 3000 mmbtu / d - gas daily mid month\nhesco , victoria county , - 1000 mmbtud - gas daily mid month\nhesco , padre island - 250 mmbtu / d - gas daily mid month\nhs resources , hardin county , - 3000 mmbtu / d - gas daily mid month\npure resources , victoria county , 1000 mmbtud - gas daily mid month\ndolphin , webb county , - 750 mmbtu / d - gas daily mid month\nergon , tyler county , - 2000 mmbtu / d - gas daily mid month\nplease let me know if you have any questions , again these are just\npossiblities for your information .\nthanks ,\nsusan smith\nx 3332", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.801+0000", "entityId": 4097, "properties": {"text": "Subject: calpine daily and monthly nominations\n>\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.806+0000", "entityId": 4098, "properties": {"text": "Subject: natural gas nomination for 03 / 01\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for march 2001 :\n32 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for march 2001 :\n8 , 500 mmbtu per day from 3 / 1 / 01 through 3 / 15 / 01 and 2 , 000 mmbtu per day from\n3 / 16 / 01 through 3 / 31 / 01 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.810+0000", "entityId": 4099, "properties": {"text": "Subject: march nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 02 / 22 / 2001\n10 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 02 / 22 / 2001 10 : 07 : 34 am\nto : \" ' lamphier , gary ' \"\ncc : \" carter , john \" , \" ricks , ruth \"\n, kyle . r . lilly @ enron . com , mary . poorman @ enron . com\nsubject : march nominations at shell deer park\ngary ,\nmarch 2001 nominations for gas delivery to shell deer park are as follows :\nfirm baseload - 75 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 15 , 000 mmbtu / d 25 , 000 mmbtu / d 35 , 000 mmbtu / d\nturnaround activity started in january is expected to be completed in the\nsecond half of march .\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n> home page : http : / / rsweb\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.815+0000", "entityId": 4100, "properties": {"text": "Subject: meter 981318\ndaren ,\nthe above meter recorded a flow on jan 15 this year . it has not had any\nactivity all the way back through 1999 . i checked with cheryl jones and the\nflow is good . it was apparently turned on for that one day . do we need to\nput in a deal for this flow ?\nthanks .\nalso , we had a transport nom from texaco into king ranch , so we will have\nadequate flow into stratton .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.820+0000", "entityId": 4101, "properties": {"text": "Subject: meter 6884\nvolume management was wondering if deals 137870 and 235670 needed to be\nextended into 2001 . these are deals with teco . let me know if you need me\nto extend them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.825+0000", "entityId": 4102, "properties": {"text": "Subject: re : meter 5892\ni need help ! john childres with alpine is getting made and wants to be\npaid . i have nothing to pay him . he is looking for payment of dec . 2000 ,\nand jan . 2001 . john needs to pay his royalty owners .\nwould someone please help me get this matter resolved .\ncharlene richmond\n02 / 21 / 2001 05 : 38 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : meter 5892\ni spoke with karen lindley about volume not being allocated . she said that\nshe passed it on to fred boas .\ndaren j farmer\n02 / 21 / 2001 04 : 46 pm\nto : charlene richmond / hou / ect @ ect\ncc : fred boas / hou / ees @ ees , melissa graves / hou / ect @ ect , karen\nlindley / corp / enron @ enron\nsubject : re : meter 5892\ni have done deals with john at this point . why are we not being allocated\nany volume ?\nd\ncharlene richmond\n02 / 21 / 2001 02 : 59 pm\nto : fred boas / hou / ees @ ees , daren j farmer / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\ncc : karen lindley / corp / enron @ enron\nsubject : meter 5892\ni am getting several phone calls from alpine resources demanding to be paid\nfor meter 5892 and there is nothing there to be paid .\nthe person name doing the requesting is john childers and he said that he\nspoke to daren farmer . he is looking for 859 mmbtu ' s for december , 2000 and\n3 , 251 mmbtu ' s for january 2001 . this is on the katy gas unit . if anyone\nwould like to talk to john his phone number is 281 - 646 - 0232\ncharlene\nx 31539", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.829+0000", "entityId": 4103, "properties": {"text": "Subject: re : meter 6884\ni may need more assistance on this issue . i tried to extend the deal and it\nblocked me saying . . .\nteco gas processing company is suspended .\ndeal with inactive or suspended counterparty may not be extended .\nany suggestions ?\ndaren j farmer @ ect\n02 / 23 / 2001 01 : 25 pm\nto : michael olsen / na / enron @ enron\ncc :\nsubject : re : meter 6884\nyou can extend them , but make sure that the volume is zero .\nd\nmichael olsen @ enron\n02 / 23 / 2001 12 : 50 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : meter 6884\nvolume management was wondering if deals 137870 and 235670 needed to be\nextended into 2001 . these are deals with teco . let me know if you need me\nto extend them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.836+0000", "entityId": 4104, "properties": {"text": "Subject: equistar 3 / 01\ndaren - here are the numbers for equistar for march . there are two\ndiscrepancies : this is what we show in sitara and what equistar has sent for\nmarch . would you like for me to change the deal ? let me know .\ndeal 394489 sitara equistar\nmeter 1373 5 . 000 10 . 000\nmeter 1384 0 5 . 000\nmeter 1552 5 . 000 5 . 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.841+0000", "entityId": 4105, "properties": {"text": "Subject: texas ena off - system rates\nkim ,\nwill you please get with mary smith and trisha hughes with the texas rates\ngroup\nand pick up from them the off system pipeline rates that they are handling .\nyou may want to visit with daren farmer also about the level of activity .\nwe need to transition this work to your team as soon as possible .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.850+0000", "entityId": 4106, "properties": {"text": "Subject: texas ena off - system rates\nhey , do you have time on monday to talk to me about this - i have no idea\nwhat this entails !\nthanks ,\nkim\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly s olinger / hou / ect on 02 / 23 / 2001\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob m hall @ enron\n02 / 23 / 2001 03 : 23 pm\nto : kimberly s olinger / hou / ect @ ect\ncc : robert superty / hou / ect @ ect , daren j farmer / hou / ect @ ect , leslie\nreeves / hou / ect @ ect\nsubject : texas ena off - system rates\nkim ,\nwill you please get with mary smith and trisha hughes with the texas rates\ngroup\nand pick up from them the off system pipeline rates that they are handling .\nyou may want to visit with daren farmer also about the level of activity .\nwe need to transition this work to your team as soon as possible .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.857+0000", "entityId": 4107, "properties": {"text": "Subject: meter 986884 for 1 / 2001\ndaren -\ndo we have the buy / sell deal for el paso ( formerly teco ) for january 01\nprod ?\nthe old deal numbers were 235670 for the sale and 137870 for the purchase .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n02 / 23 / 2001 03 : 59 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 02 / 23 / 2001 03 : 57 pm\nto : katherine herrera / corp / enron @ enron\ncc : michael olsen / na / enron @ enron\nsubject : meter 986884 for 1 / 2001\nmike : this is katherine herrera ' s .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 02 / 23 / 2001\n03 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael olsen\n02 / 23 / 2001 03 : 52 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : meter 986884 for 1 / 2001\nmegan ,\ni was unable to extend the deal for teco # 137870 and # 235670 becaus e it has\nbeen suspended . teco is no longer the counterparty . has the name changed ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael olsen / na / enron on 02 / 23 / 2001\n03 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack @ ect 02 / 23 / 2001 03 : 26 pm\nto : michael olsen / na / enron @ enron\ncc : edward terry / hou / ect @ ect\nsubject : meter 986884 for 1 / 2001\nmike ,\nhave you heard anything about extending the buy / sell ticket for teco yet ?\ntoday is the last day we can make changes in the system .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.862+0000", "entityId": 4108, "properties": {"text": "Subject: revised eastrans nomination effective march 1 , 2001\neffective 3 / 1 / 01 , the deliveries into eastrans will be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n7300 mmbtu / dy from fuels cotton valley\n22700 mmbtu / dy into pg & e\n- - - - - forwarded by marta k henderson / houston / pefs / pec on 02 / 23 / 01 04 : 08 pm\n- - - - -\nmarta k\nhenderson to : darrel f .\nbane / easttexas / pefs / pec @ pec , john a .\nbretz / gcs / cec / pec @ pec , chad w .\ncass / gcs / cec / pec @ pec , michael r .\n02 / 22 / 01 cherry / easttexas / pefs / pec @ pec ,\nwilliam e . speckels / gcs / cec / pec @ pec , donna\n03 : 13 pm c . spencer / gcs / cec / pec @ pec , julia a .\nurbanek / gcs / cec / pec @ pec ,\nbriley @ enron . com , dfarmer @ enron . com ,\ncarlos . j . rodriguez @ enron . com , connie\nwester / easttexas / pefs / pec @ pec ,\nronald c . douglas / gcs / cec / pec @ pec , daniel\nc rider / houston / pefs / pec @ pec , john c\nlehman / field / pefs / pec @ pec , donna j\ndobb / houston / pefs / pec @ pec , sharon\nbeemer / houston / pefs / pec @ pec , lee c .\nspivey / field / pefs / pec @ pec\ncc :\nsubject : eastrans nomination\neffective march 1 , 2001\neffective 3 / 1 / 01 , the deliveries into eastrans will be 30 , 000 mmbtu / dy\nthe redeliveries will be :\n19500 mmbtu / dy from fuels cotton valley\n10500 mmbtu / dy into pg & e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.866+0000", "entityId": 4109, "properties": {"text": "Subject: fw : contemporary poetry\n- - - - - original message - - - - -\nfrom : paul billingsly [ mailto : 1 pb @ prodigy . net ]\nsent : thursday , february 22 , 2001 12 : 49 pm\nto : ward ; tim pyles ; tim stephen wilson ; selman ; scott\nstarnes ; rusty glover ; ron moore ; romberger ; robert canright ; richard\nbeasley ; quentin mimms ; randall bean ; monte and jennifer mann ; mike\nberryman ; michael willoughby ; michael dixon ; matt oualline ; kellly\nparker ; john jordan ; john hendry ; jeff weyandt ; jeff mileger ; jack\nmimms ; hopkins , rockwell ; gary calvert ; fred raines ; fagen ; kent smith ;\nmike _ d _ p ; palmer weyandt ; roy hale ; eddie herring ; david w cathey ; david\nashmore ; dan holcomb ; alan carson\nsubject : contemporary poetry\nguys ,\njust thought you might find this interesting . ? i was forwarded this\npoem , and told it was written by a high school student in az .\nregardless , of who / where ( not the point ) i find it interesting , weirdly\namusing , and frighteningly fairly accurate . - pb\nnow i sit me down in school\nwhere praying is against the rule\nfor this great nation under god\nfinds mention of him very odd .\nif scripture now the class recites ,\nit violates the bill of rights .\nand anytime my head i bow\nbecomes a federal matter now .\nour hair can be purple , orange or green ,\nthat ' s no offense , it ' s a freedom scene .\nthe law is specific , the law is precise .\nprayers spoken aloud are a serious vice .\nfor praying in a public hall\nmight offend someone with no faith at all .\nin silence alone we must meditate ,\ngod ' s name is prohibited by the state .\nwe ' re allowed to cuss and dress like freaks ,\nand pierce our noses , tongues and cheeks .\nthey ' ve outlawed guns , but first the bible .\nto quote the good book makes me liable .\nwe can elect a pregnant senior queen ,\nand the ' unwed daddy , ' our senior king .\nit ' s \" inappropriate \" to teach right from wrong ,\nwe ' re taught that such \" judgments \" do not belong .\nwe can get our condoms and birth controls ,\nstudy witchcraft , vampires and totem poles .\nbut the ten commandments are not allowed ,\nno word of god must reach this crowd .\nit ' s scary here i must confess ,\nwhen chaos reigns the school ' s a mess .\nso , lord , this silent plea i make ,\nshould i be shot ; my soul please take !\nnew contact numbers :\npaul billingsly lpb @ prodigy . net\no . 972 / 396 - 1002\nf . ? 972 / 396 - 1954\nm . 214 / 878 - 8767\n475 w . blondy jhune\nlucas , texas ? 75002\n?\n- paul billingsly . vcf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.871+0000", "entityId": 4110, "properties": {"text": "Subject: enron / hpl nom for february 24 - 26 , 2001 and revision # 2 for 2 - 23\n- 01\n( see attached file : hplno 224 . xls ) ( see attached file :\nhplno 223 . xls )\n- hplno 224 . xls\n- hplno 223 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.876+0000", "entityId": 4111, "properties": {"text": "Subject: nom / actual flow for 2 / 22 / 01\nwe agree .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david avila / lsp / enserch / us on 02 / 23 / 2001\n10 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 02 / 23 / 2001 10 : 14 : 42 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu\ncc :\nsubject : nom / actual flow for 2 / 22 / 01\nnom = 60 , 000\nactual flow = 58 , 094 ( 56 , 567 mcf , 1 . 027 btu )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.883+0000", "entityId": 4112, "properties": {"text": "Subject: wagner & brown , cornelius lease , meter # 986589 - 10\nfyi ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 23 / 2001\n02 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njerry bubert @ enron\n02 / 23 / 2001 01 : 39 pm\nto : brad blevins / hou / ect @ ect , vicente sarmiento / gco / enron @ enron\ncc : brian m riley / hou / ect @ ect , vance l taylor / hou / ect @ ect , george\nweissman / hou / ect @ ect , joe zernicek / gco / enron @ enron , lisa hesse / hou / ect @ ect ,\nlauri a allen / hou / ect @ ect , j r fosdick / gco / enron @ enron\nsubject : wagner & brown , cornelius lease , meter # 986589 - 10\nper our recent discussions , please evaluate the above gas stream for\nreconnection into hpl . this gas is presently being produced into dow\npipeline . an existing , three - inch meter tube is in place , and the gas can be\nswitched by opening and closing existing valves ? a copy of a recent gas\nanalysis has been provided . the expected gas flow is 9000 to 10 , 000 mcf / d .\nmr . matt johnson with wagner hence , enhanced production . i would\nattempt to obtain at least a year ' s commitment of this gas from wagner &\nbrown . mr . johnson did not want to flow this gas for march since the\nthree - inch run could not handle the total volume , and he did not want to\nsplit the flow . operational logistics were also questionable ( compression ,\netc . ) . if you need further info , please advise . thanks . jab", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.888+0000", "entityId": 4113, "properties": {"text": "Subject: deals entered 3 / 01\njulie ,\ni have entered the following deals for wellhead meters in 03 / 01 :\ndeal # counterparty meter #\n631403 amerada hess 0435\n631437 anadarko petr . 0435\n631449 apache corp . 0435\n631486 barrett resour . 0435\n632586 cima energy 6284\n632651 columbus energy 9758\n632978 crosstex energy 9843\n631504 crosstex energy 0435\n633028 duke energy 6347\n633111 eex e & p 9695\n633154 el paso merchant 5923\n633184 el paso merchant 5848\n633227 four square gas 9705\n631543 meridian resource 0435\n631580 ocean energy 0435\n631662 seneca resources 0435\n633360 simray o & g 9739\n633380 swift energy 2630\n634419 swift energy 9643\n631737 tri - union devel . 0435\n633427 vintage gas 9603\n631767 walter o & g 0435\n634035 whiting petr . 6523\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.892+0000", "entityId": 4114, "properties": {"text": "Subject: march nominations at shell deer park\nfyi - shell meters for march 2001 .\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 02 / 23 / 2001 09 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary poorman @ enron\n02 / 22 / 2001 10 : 12 am\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : march nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 02 / 22 / 2001 10 : 12\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 02 / 22 / 2001 10 : 07 : 34 am\nto : \" ' lamphier , gary ' \"\ncc : \" carter , john \" , \" ricks , ruth \"\n, kyle . r . lilly @ enron . com , mary . poorman @ enron . com\nsubject : march nominations at shell deer park\ngary ,\nmarch 2001 nominations for gas delivery to shell deer park are as follows :\nfirm baseload - 75 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 15 , 000 mmbtu / d 25 , 000 mmbtu / d 35 , 000 mmbtu / d\nturnaround activity started in january is expected to be completed in the\nsecond half of march .\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n> home page : http : / / rsweb\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.897+0000", "entityId": 4115, "properties": {"text": "Subject: re : meter 5892\ndaren :\nsorry it has taken so long to get back to this issue , i am with ees now .\nkaren lindley allocates this point but i feel the need to help her because\nthis issue came to light while i was in transition .\nexxon allocates this point and we receive a allocation statement from them on\na monthly basis .\ndecember 2000\nthe total flow at the meter was 646 mmbtu . i copied esther garcia on this\ne - mail so that she can look into the possibility that there is a measurement\nerror . esther will need to respond to karen on the matter of the possible\nmeasurement error . furthermore it seems odd to me that scheduling had 8 , 928\nmmbtu confirmed at this point and only 646 mmbtu flowed . i would ask mark\nwhere he got his confirmed volumes from . as a temporary fix i reallocated\nthe meter and gave the total flow to alpine resources . they will be short\npaid in their minds until ester and karen can get the possible measurement\nerror issue resolved . i would also suggest that mark and karen get together\nto review the scheduling of this point so that karen can call exxon to\nreconcile their allocation with what we have ( the additional alpine deal ) at\nthis point . charlene can redraft her invoice on monday 2 / 26 / 01 that will\nshow the 646 mmbtu going to alpine .\njanuary 2001\nagain scheduling has 9 , 193 confirmed at this meter when on 3 , 241 mmbtu\nflowed . i temporarily reallocated the meter so that the entire volume that\nflowed went to alpine . they remain 10 mmbtu short paid but charlene can\nredraft her invoice and pay them something until mark ( validity of other\ndeals at this point ) and karen ( exxon ' s allocation of this point ) can get\nthis issue resolved .\nthere is also the issue with the exxon transport at this point that was\nscheduled at 1 , 500 mmbtu per month for the months in question . this\ntransport affects the allocation at the king ranch tailgate on the exxon 024\ncontract . i copied howard camp who will be training the contractor that will\ntake my place in volume management so that he can stay on top of the\nresolution of this issue .\nfred\ndaren j farmer @ ect\n02 / 23 / 2001 03 : 30 pm\nto : fred boas / hou / ees @ ees\ncc :\nsubject : re : meter 5892\nfred ,\nwhy is nothing being allocated to alpine ? this is a good deal we have in\nplace with them and i really need the problem resolved .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 02 / 23 / 2001\n03 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharlene richmond\n02 / 23 / 2001 02 : 36 pm\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa k\nratnala / hou / ect @ ect , melissa graves / hou / ect @ ect , fred boas / hou / ees @ ees\nsubject : re : meter 5892\ni need help ! john childres with alpine is getting made and wants to be\npaid . i have nothing to pay him . he is looking for payment of dec . 2000 ,\nand jan . 2001 . john needs to pay his royalty owners .\nwould someone please help me get this matter resolved .\ncharlene richmond\n02 / 21 / 2001 05 : 38 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : meter 5892\ni spoke with karen lindley about volume not being allocated . she said that\nshe passed it on to fred boas .\ndaren j farmer\n02 / 21 / 2001 04 : 46 pm\nto : charlene richmond / hou / ect @ ect\ncc : fred boas / hou / ees @ ees , melissa graves / hou / ect @ ect , karen\nlindley / corp / enron @ enron\nsubject : re : meter 5892\ni have done deals with john at this point . why are we not being allocated\nany volume ?\nd\ncharlene richmond\n02 / 21 / 2001 02 : 59 pm\nto : fred boas / hou / ees @ ees , daren j farmer / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\ncc : karen lindley / corp / enron @ enron\nsubject : meter 5892\ni am getting several phone calls from alpine resources demanding to be paid\nfor meter 5892 and there is nothing there to be paid .\nthe person name doing the requesting is john childers and he said that he\nspoke to daren farmer . he is looking for 859 mmbtu ' s for december , 2000 and\n3 , 251 mmbtu ' s for january 2001 . this is on the katy gas unit . if anyone\nwould like to talk to john his phone number is 281 - 646 - 0232\ncharlene\nx 31539", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.902+0000", "entityId": 4116, "properties": {"text": "Subject: meters with flow and no nom\nearl - i have a meter with flow and no nom . meter 1225 ( ingleside plant\nbrandywine ) has flow from 2 / 14 thru 2 / 25 . are these valid volumes or high\nzeroes ? please let me know what you find out .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.908+0000", "entityId": 4117, "properties": {"text": "Subject: metter 1558\ndaren - meter 1558 has flow and no nom for day 1 and day 6 . hpl is currently\nout there starting on day 7 , deal # 604056 . could you add these days to the\ndeal or let me know what you do .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.913+0000", "entityId": 4118, "properties": {"text": "Subject: deal 637225\nthis is the deal we made for el paso last friday to replace deal 235670 ,\nwhich had teco . julie meyers needs a price to be added to the deal . which\nprice should i add ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.918+0000", "entityId": 4119, "properties": {"text": "Subject: hpl deal downloads\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 02 / 26 / 2001\n03 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tommy yanowski / enron @ enronxgate on 02 / 26 / 2001 03 : 11 pm\nto : thomas a martin / hou / ect @ ect , brian redmond / hou / ect @ ect\ncc : david baumbach / hou / ect @ ect , bob m hall / na / enron @ enron , george\nweissman / hou / ect @ ect , heather a johnson / enron @ enronxgate\nsubject : hpl deal downloads\ni ' ve attached two files with hpl deal information . the file named hpl deals\nwith 3 rd parties contain all hplc deals and ena deals on hpl . i plan to send\nthis file to aep by tueday morning unless i hear of any objection . the\nsecond file named ena texas offsystem deals contains deals that i ' m not sure\nif they are a part of the sale or not . i am asking david baumbach to review\nthis file to let me know what needs to be excluded . i will hold off on\nsending the second file until their is consensus on the content . - tommy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.923+0000", "entityId": 4120, "properties": {"text": "Subject: j is for jerry\n\\ \\ nahou - psolp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.929+0000", "entityId": 4121, "properties": {"text": "Subject: tenaska iv transport 10 / 00\nhave you been able to work out these transport pricing differences for oct .\n2000 ? we have only been able to pay $ 4 , 000 . 00 of the $ 28 , 000 . 00 invoice .\nthe pricing for nov . 2000 ( deal 452491 ) has problems too . we have $ 0 . 01 for\n11 / 3 at meter 20014804 and txu is billing us $ 0 . 10 at meter 25000200 and\n$ 0 . 02 at meter 20014903 for the entire month .\ni have also noticed that we are not accruing any transport for dec 2000\nforward . we have received the dec . 2000 invoice from txu , but we do not have\na deal to pay them . we should be getting jan . 2001 next week . is there a\ndeal for these months ?\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 02 / 26 / 2001\n12 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 01 / 05 / 2001 04 : 12 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv transport 10 / 00\ni took a look at the transport for txu lone star for tenaska iv for 10 / 00 .\nwe mostly have price differences , but one deal needs some days added . let me\nknow if you need copies of the invoices . the meters below are delivery\nmeters . i wasn ' t sure what the receipt meters would be .\ndeal 452491 , meter 20014903 need to add days 24 - 26 and 28 - 31\nneed to check rate - we show $ 0 . 01 and we were billed $ 0 . 02\ndeal 452491 , meter 25000200 need to check rate - we show $ 0 . 02 and we were\nbilled $ 0 . 10\ndeal 452475 , meter 25000200 need to check rate - we show prices from $ 0 . 005\nto $ 0 . 02\nand we were billed $ 0 . 11\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.934+0000", "entityId": 4122, "properties": {"text": "Subject: enron / hpl noms for february 23 - 25 , 2001\nfebruary 23 , 2001\nteco tap 30 . 000\nfebruary 24 , 2001\nteco tap 17 . 500\nfebruary 25 , 2001\nteco tap 38 . 750", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.940+0000", "entityId": 4123, "properties": {"text": "Subject: hpl nom for february 27 , 2001\n( see attached file : hplno 227 . xls )\n- hplno 227 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.945+0000", "entityId": 4124, "properties": {"text": "Subject: re : meter 5892\nkaren ,\nthe charts for station 985892 - katy gu 2 are mail outs and are not in the\noffice at this time for us to review .\ni have asked jackie birch to retrieve december 2000 & january 2001 and let us\nknow when they arrive and\nwe will follow up at that time on what if anything needs to be done .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by esther garcia / gpgfin / enron on 02 / 27 / 2001\n12 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfred boas @ ees\n02 / 25 / 2001 09 : 27 am\nto : daren j farmer / hou / ect @ ect\ncc : mark mccoy / corp / enron @ enron , karen lindley / corp / enron @ enron , charlene\nrichmond / hou / ect @ ect , esther garcia / gpgfin / enron @ enron , gary\nanderson / gpgfin / enron @ enron , howard b camp / hou / ect @ ect\nsubject : re : meter 5892\ndaren :\nsorry it has taken so long to get back to this issue , i am with ees now .\nkaren lindley allocates this point but i feel the need to help her because\nthis issue came to light while i was in transition .\nexxon allocates this point and we receive a allocation statement from them on\na monthly basis .\ndecember 2000\nthe total flow at the meter was 646 mmbtu . i copied esther garcia on this\ne - mail so that she can look into the possibility that there is a measurement\nerror . esther will need to respond to karen on the matter of the possible\nmeasurement error . furthermore it seems odd to me that scheduling had 8 , 928\nmmbtu confirmed at this point and only 646 mmbtu flowed . i would ask mark\nwhere he got his confirmed volumes from . as a temporary fix i reallocated\nthe meter and gave the total flow to alpine resources . they will be short\npaid in their minds until ester and karen can get the possible measurement\nerror issue resolved . i would also suggest that mark and karen get together\nto review the scheduling of this point so that karen can call exxon to\nreconcile their allocation with what we have ( the additional alpine deal ) at\nthis point . charlene can redraft her invoice on monday 2 / 26 / 01 that will\nshow the 646 mmbtu going to alpine .\njanuary 2001\nagain scheduling has 9 , 193 confirmed at this meter when on 3 , 241 mmbtu\nflowed . i temporarily reallocated the meter so that the entire volume that\nflowed went to alpine . they remain 10 mmbtu short paid but charlene can\nredraft her invoice and pay them something until mark ( validity of other\ndeals at this point ) and karen ( exxon ' s allocation of this point ) can get\nthis issue resolved .\nthere is also the issue with the exxon transport at this point that was\nscheduled at 1 , 500 mmbtu per month for the months in question . this\ntransport affects the allocation at the king ranch tailgate on the exxon 024\ncontract . i copied howard camp who will be training the contractor that will\ntake my place in volume management so that he can stay on top of the\nresolution of this issue .\nfred\ndaren j farmer @ ect\n02 / 23 / 2001 03 : 30 pm\nto : fred boas / hou / ees @ ees\ncc :\nsubject : re : meter 5892\nfred ,\nwhy is nothing being allocated to alpine ? this is a good deal we have in\nplace with them and i really need the problem resolved .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 02 / 23 / 2001\n03 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharlene richmond\n02 / 23 / 2001 02 : 36 pm\nto : daren j farmer / hou / ect @ ect\ncc : vance l taylor / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa k\nratnala / hou / ect @ ect , melissa graves / hou / ect @ ect , fred boas / hou / ees @ ees\nsubject : re : meter 5892\ni need help ! john childres with alpine is getting made and wants to be\npaid . i have nothing to pay him . he is looking for payment of dec . 2000 ,\nand jan . 2001 . john needs to pay his royalty owners .\nwould someone please help me get this matter resolved .\ncharlene richmond\n02 / 21 / 2001 05 : 38 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : meter 5892\ni spoke with karen lindley about volume not being allocated . she said that\nshe passed it on to fred boas .\ndaren j farmer\n02 / 21 / 2001 04 : 46 pm\nto : charlene richmond / hou / ect @ ect\ncc : fred boas / hou / ees @ ees , melissa graves / hou / ect @ ect , karen\nlindley / corp / enron @ enron\nsubject : re : meter 5892\ni have done deals with john at this point . why are we not being allocated\nany volume ?\nd\ncharlene richmond\n02 / 21 / 2001 02 : 59 pm\nto : fred boas / hou / ees @ ees , daren j farmer / hou / ect @ ect , melissa\ngraves / hou / ect @ ect\ncc : karen lindley / corp / enron @ enron\nsubject : meter 5892\ni am getting several phone calls from alpine resources demanding to be paid\nfor meter 5892 and there is nothing there to be paid .\nthe person name doing the requesting is john childers and he said that he\nspoke to daren farmer . he is looking for 859 mmbtu ' s for december , 2000 and\n3 , 251 mmbtu ' s for january 2001 . this is on the katy gas unit . if anyone\nwould like to talk to john his phone number is 281 - 646 - 0232\ncharlene\nx 31539", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.953+0000", "entityId": 4125, "properties": {"text": "Subject: guadalupe for 2 / 27 - - - - intraday\nfyi - - - - - - guadalupe had a plant go down today 2 / 27 , and therefore had to get\nsome gas off oasis , so they took all 40 . 0 from aec back into the aquila\nheader , so i moved the deals to reflect this on wgr ( aquila header ) .\nguadalupe deals : 594527 & 578932 .\nthey said there is a chance they will have to do it again tomorrow .\nlet me know if you have any questions .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.960+0000", "entityId": 4126, "properties": {"text": "Subject: hpl nom for february 28 , 2001\n( see attached file : hplno 228 . xls )\n- hplno 228 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.965+0000", "entityId": 4127, "properties": {"text": "Subject: noms / actual flow for 2 / 26\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 27 / 2001\n10 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 02 / 27 / 2001 09 : 46 : 26 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 2 / 26\ndate nom flow - mcf flow - mmbtu\n2 / 26 / 01 0 456 469\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.969+0000", "entityId": 4128, "properties": {"text": "Subject: re : march \" spot \" purchases\nvance ,\ndeals have been created and entered in sitara as noted below . the deal\nvolumes entered were those listed on the march , 2001 nomination spreadsheet .\nbob\nvance l taylor\n02 / 26 / 2001 05 : 33 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , susan\nsmith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , brian m riley / hou / ect @ ect\nsubject : march \" spot \" purchases\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of march , 2001 . this production will be purchased on a\n\" spot \" basis and deal tickets should be created and entered into sitara based\non the following information :\ncounterparty meter volume deal # price\nwhiting petroleum corp 6523 200 mmbtu / d 634035 100 % if / hsc less $ 0 . 95\ncoastal merchant energy , lp 5923 775 mmbtu / d 633154 100 % if / hsc less $ 0 . 265\ncoastal merchant energy , lp 5848 240 mmbtu / d 633184 84 % if / hsc\nswift energy 2630 21 mmbtu / d 633380 100 % if / hsc less $ 1 . 45\nduke energy trading & marketing 6347 200 mmbtu / d 633028 85 % if / hsc\nhesco gathering oil co . 6063 300 mmbtu / d 421856 100 % if / hsc less $ 0 . 95\nembassy natural gas inc . 6598 180 mmbtu / d 643875 100 % if / hsc less $ 0 . 95\nvintage gas inc . 9603 100 mmbtu / d 633427 100 % if / hsc less $ 0 . 95\nstone energy 9696 4500 mmbtu / d 634058 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 6500 mmbtu / d 634061 100 % gd less $ 0 . 235\namerada hess ( hess energy svcs ) 0435 2714 mmbtu / d 631403 100 % if / hsc less\n$ 0 . 12\nanadarko petroleum corp . 0435 1104 mmbtu / d 631437 100 % if / hsc less $ 0 . 10\ncrosstex energy services , ltd . 0435 654 mmbtu / d 631504 100 % if / hsc less\n$ 0 . 12\ntri - union development 0435 149 mmbtu / d 631737 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 643862 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.974+0000", "entityId": 4129, "properties": {"text": "Subject: re : first delivery - wheeler operating\nvance ,\ndeal # 643714 has been created and entered in sitara .\nbob\nvance l taylor\n02 / 23 / 2001 04 : 55 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , susan smith / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , melissa graves / hou / ect @ ect\nsubject : first delivery - wheeler operating\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nwheeler operating 9879 800 mmbtu / d 85 % gas daily 2 / 17 - 2 / 28 nya\nfyi , i have created and submitted a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of march . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vance l taylor / hou / ect on 02 / 23 / 2001\n04 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : esther buckley 02 / 22 / 2001 10 : 39 am\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , donna\nconsemiu / hou / ect @ ect , robert cook / hou / ect @ ect , howard b camp / hou / ect @ ect ,\nlisa hesse / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , wayne e\nlightfoot / hou / ect , james mckay / hou / ect @ ect , mary m smith / hou / ect @ ect , steve\nhpl schneider / hou / ect @ ect , melissa graves / hou / ect @ ect , michael\nwalters / hou / ect @ ect , jill t zivley / hou / ect @ ect , mary jo johnson / hou / ees @ ees ,\nrita wynne / hou / ect @ ect , lauri a allen / hou / ect @ ect , cheryl\njones / gpgfin / enron @ enron , reid hansen / gco / enron @ enron , darron c\ngiron / hou / ect @ ect , o ' neal d winfree / hou / ect @ ect , susan smith / hou / ect @ ect ,\ngary bryan / hou / ect @ ect , gary a hanks / hou / ect @ ect , donald p\nreinhardt / hou / ect @ ect , vance l taylor / hou / ect @ ect , david\nbaumbach / hou / ect @ ect , robert cotten / hou / ect @ ect , brian m riley / hou / ect @ ect ,\njeff a austin / hou / ees @ ees , cynthia hakemack / hou / ect @ ect , dawn c\nkenne / hou / ect @ ect , lisa csikos / hou / ect @ ect , j r fosdick / gco / enron @ enron ,\ncarlos j rodriguez / hou / ect @ ect , stephanie gomes / hou / ect @ ect , pat\nclynes / corp / enron @ enron , tom acton / corp / enron @ enron , robert\nwalker / hou / ect @ ect , george weissman / hou / ect @ ect , joanne\nharris / na / enron @ enron , christy sweeney / hou / ect @ ect , earl tisdale / hou / ect @ ect ,\ndaren j farmer / hou / ect @ ect\ncc :\nsubject : first delivery - wheeler operating\nplease see attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.978+0000", "entityId": 4130, "properties": {"text": "Subject: since i never say a nom change i am hoping all deals are in and correct .\nvalero should be in for the following :\ncelanese : 5 , 000 base 5 , 000 swing\nhouston : 10 , 000 base 16 , 000 swing\ntx city 10 , 000 base 15 , 000 swing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.983+0000", "entityId": 4131, "properties": {"text": "Subject: ces imbalances\ndaren ,\ncan you please verify for me whether we took over any old imbalances that ces\nhad ? the reason i am asking if we got a letter from kinder morgan asking us\nto verify an imbalance . it looks like it would of been an imbalance between\nces and kinder morgan . we don ' t show anything in our system and want to\nverify that we shouldn ' t .\nthanks and if i need to provide any further information , please let me know .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.987+0000", "entityId": 4132, "properties": {"text": "Subject: hpl nom for march 1 , 2001\n( see attached file : hplno 301 . xls )\n- hplno 301 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.992+0000", "entityId": 4133, "properties": {"text": "Subject: noms / actual flow for 2 / 27\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n02 / 28 / 2001\n10 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 02 / 28 / 2001 10 : 10 : 39 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 2 / 27\ndate nom flow - mcf flow - mmbtu\n2 / 27 / 01 0 0 0\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:21.996+0000", "entityId": 4134, "properties": {"text": "Subject: flow change for fuels cotton valley redeliveries into hpl\nsaturday , march 3 , the redeliveries into hpl from fuels cotton valley for\nthe eastrans deal will increase to approximately 19500 mmbtu / dy . this\nchange should continue through march 5 th or 6 th . the reason for the change\nis an operational emergency . defs typically delivers approximately 12200\nmmbtu / dy into txu lone star . this delivery will not be able to occur\nbecause the alford b compressor needs to get into the shop for maintenance .\nthis compressor will be out of commission for the month of march . the\nbusby compressor will compress the usual 7300 mmbtu / dy of fuels cotton\nvalley redelivery gas as well as the 12200 mmbtu / dy of txu lone star\nredelivery gas . a different redelivery point with txu lone star is being\nestablished and should be available by march 5 th or 6 th . at this point in\ntime , we will take the hpl fuels cotton valley redelivery gas to zero and\nbalance the redeliveries between the two points . therefore , defs will not\nchange the delivery or redelivery nominations in place for eastrans . after\nthe new txu lone star redelivery point is put into place and the points are\nvolume balanced , it is our intent to have redeliveries of 7300 mmbtu / dy\nfrom fuels cotton valley and 22700 mmbtu / dy into pg & e ( which is what is in\nplace effective 3 / 1 / 01 ) for eastrans .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.001+0000", "entityId": 4135, "properties": {"text": "Subject: neon for march 7\nhere is next week ' s neon lesson . let me know if we can help in any other\nway . thanks !\nbecky\n- experiencing god week 3 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.006+0000", "entityId": 4136, "properties": {"text": "Subject: hpl nom for march 2 , 2001\n( see attached file : hplno 302 . xls )\n- hplno 302 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.011+0000", "entityId": 4137, "properties": {"text": "Subject: noms / actual flow for 2 / 28\nwe agree\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on\n03 / 01 / 2001\n11 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 03 / 01 / 2001 10 : 08 : 37 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 2 / 28\ndate nom flow - mcf flow - mmbtu\n2 / 28 / 01 0 0 0\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.015+0000", "entityId": 4138, "properties": {"text": "Subject: midcon transport usage tickets - - marol\ndaren - - -\ni noticed that the midcon transport usage tickets at oakville & moore are not\nin for march . the previous deal tickets are 598934 & 598958 for that\ntransport . should they ? let me know if you want me to set up new tickets if\nneed be . . . or let me know if you create them , so i can update mops & pops .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.020+0000", "entityId": 4139, "properties": {"text": "Subject: hpl nom for march 3 - 5 , 2001\n( see attached file : hplno 303 . xls )\n- hplno 303 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.024+0000", "entityId": 4140, "properties": {"text": "Subject: re : noms / actual flow for 03 / 01\nwe agree\n\" eileen ponton \" on 03 / 02 / 2001 10 : 18 : 14 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 01\n-\ndate nom flow - mcf flow - mmbtu\n3 / / 01 60 , 000 53 , 768 55 , 220\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.029+0000", "entityId": 4141, "properties": {"text": "Subject: enronoptions update !\nenronoptions announcement\nwe have updated the enronoptions \u0001 ) your stock option program web site ! the\nweb site now contains specific details of the enronoptions program including\nthe december 29 , 2000 grant price and additional information on employee\neligibility .\naccess enronoptions \u0001 ) your stock option program web site by clicking on\nhttp : / / hrweb . enron . com or by typing the address into your web browser .\nwe hope you find the revised site helpful in addressing your questions about\nthe enronoptions program . if you have any additional questions , please\ncontact your h . r . representative .\nstay tuned for more information throughout march and april 2001 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.033+0000", "entityId": 4142, "properties": {"text": "Subject: meter 1031 baytown exxon\ndaren - the valve for meter 1031 was not shut off in time on 3 / 1 . it flowed\nabout 1 . 200 . could you please extend the deal for one day ( deal 589188 ) ?\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.038+0000", "entityId": 4143, "properties": {"text": "Subject: ces change on lonestar\ndaren - - - fyi - -\ni changed ces back to the first , adjustment of ( 372 ) .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.042+0000", "entityId": 4144, "properties": {"text": "Subject: tenaska iv receivables\nthe email below is from james armstrong regarding two transport deals for cpr\nfuels . the deal numbers are 557869 and 514056 . can you tell me about\nthese ? james thinks these are 3 rd party sales that he needs to be paid for .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 03 / 05 / 2001\n07 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames armstrong @ ect 03 / 02 / 2001 11 : 53 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : tenaska iv receivables\nmegan , i have some receivables recorded on tenaska for december and january\nsales activity that i have not received yet . they are as follows :\nmonth customer volume price amount\ndecember cpr fuels 155 8 . 7387 $ 1 , 354 . 50\njanuary cpr fuels 13 , 919 8 . 3271 $ 115 , 904 . 86\ntotals $ 117 , 259 . 36\ncan you please let me know what the status is on tenaska iv receiving these\nfunds . let me know if you have any questions . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.047+0000", "entityId": 4145, "properties": {"text": "Subject: on call notes\nsaturday :\nmark from aquilla was short 5000 into the valero hub and it appeared that\npg & e may have to cut aquilla ' s delivery into us , but mark was able to get the\n5000 he needed to make the delivery .\ntransco bammel had some unit testing by transco preventing flow until 9 pm .\ni got with robert a . from the east desk and he decided to go ahead and cut\nthe nom down to 30 for saturday ' s gas day . i changed the confirm in pops to\nreflect it .\nchanged confirm for midcon hardy to show the correct 20 , 000 .\nchanged the confirm for flaggstaff to show the correct 0 .\ncommunicated with reggie from dynegy to get 4 , 000 at transco markham for\nsaturday ' s gas day confirmed with transco . it was finally confirmed later\nthat night .\nsunday\nat 6 : 00 the flow into valero riverside was 0 ' d out and changed to valero\nt ' ville for the remainder of the gas day . gas control said to do it\nverbally . i could not get a hold of any scheduler with pg & e to see the\ncontractual impact . i let ed gottlob know and he said to just let it flow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.052+0000", "entityId": 4146, "properties": {"text": "Subject: re : midcon transport usage tickets - - marol\nbueno . . . it ' s done .\ndaren j farmer @ ect\n03 / 05 / 2001 08 : 09 am\nto : mark mccoy / corp / enron @ enron\ncc :\nsubject : re : midcon transport usage tickets - - marol\nyou can copy the old tickets or create new ones . what ever you need .\nd\nmark mccoy @ enron\n03 / 02 / 2001 08 : 40 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : midcon transport usage tickets - - marol\ndaren - - -\ni noticed that the midcon transport usage tickets at oakville & moore are not\nin for march . the previous deal tickets are 598934 & 598958 for that\ntransport . should they ? let me know if you want me to set up new tickets if\nneed be . . . or let me know if you create them , so i can update mops & pops .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.056+0000", "entityId": 4147, "properties": {"text": "Subject: enron / hpl nom for march 6 , 2001\n( see attached file : hplno 306 . xls )\n- hplno 306 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.064+0000", "entityId": 4148, "properties": {"text": "Subject: re : noms / actual flow for 03 / 02 thru 3 / 04 / 01\nwe agree\n\" eileen ponton \" on 03 / 05 / 2001 09 : 58 : 38 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 02 thru 3 / 04 / 01\ndate nom flow - mcf flow - mmbtu\n3 / 02 0 0 0\n3 / 03 50 , 000 47 , 743 49 , 032\n3 / 04 37 , 500 35 , 844 36 , 812\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.072+0000", "entityId": 4149, "properties": {"text": "Subject: first delivery atmic marquis\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.077+0000", "entityId": 4150, "properties": {"text": "Subject: exxon bids\neric ,\ndaren suggested that i forward this request to you :\nper my voice mail , attached below , please find a spreadsheet detailing\nlocations / delivery points / meter numbers and available volumes for each\npackage of gas in the texas gulf coast / waha area . please provide firm gas\nbids for each package for the period april 2001 - october 2001 and april 2001\n- march 2002 in the available columns \" b \" and \" c \" on the spreadsheet .\nafter completing the spreadsheet , please return to me via e : mail .\nthank you ,\nmelissa graves\nx 39173", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.082+0000", "entityId": 4151, "properties": {"text": "Subject: meter 1351 - feb 01\ndaren - meter 1351 has flow everyday for feb . ' 01 . the last deal associated\nwith this meter was 559843 in jan . ' 01 . let me know if you extend the deal\nor create a new one . this meter has an average daily flow of 102 .\nthanks .\nal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.087+0000", "entityId": 4152, "properties": {"text": "Subject: re : revised - tenaska iv - cleburne plant\ndaren ,\nwe are working with mark mccoy on getting some things repathed in the\nsystem . it appears that we have not been actualizing the receipts in unify\njust the deliveries - not sure why ? ? ? ? . we have been paying the suppliers\nbased on whatever they invoice us for , which typically has been a smaller\nnumber than what we have in unify . also , we have not been able to get a\ncontact for the allocation statement . in some cases , we get the summary\nsheet , but no detail and some months we don ' t get anything at all . do you\nknow of a good contact that we can call so that we receive the allocation on\na timely and consistent basis ? the contacts on the allocation statements\nthat we do have are not returning phone calls . i also need to know what was\nthe beginning balance when we took this on for tenaska ? anything else that\nwe need from you , i will call you .\nthanks ,\nrw\ndaren j farmer\n03 / 05 / 2001 10 : 26 am\nto : rita wynne / hou / ect @ ect\ncc :\nsubject : revised - tenaska iv - cleburne plant\nrita ,\nsince i was out of the office most of the week , i missed reading this\ne - mail . i am open any afternoon this week except for friday ( all day ) and\nbob ' s staff meeting tomorrow ( if we have it ) . let me know when you want to\nmeet .\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 03 / 05 / 2001\n10 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary comello @ enron\n02 / 27 / 2001 04 : 21 pm\nto : greg whiting / corp / enron @ enron , bob m hall / na / enron @ enron , daren j\nfarmer / hou / ect @ ect , jim pond / corp / enron @ enron , megan parker / corp / enron @ enron ,\nkelly ellis / corp / enron @ enron\ncc : heather choate / hou / ect @ ect , brandee jackson / na / enron @ enr\nsubject : revised - tenaska iv - cleburne plant\nplease see the following reschedule meeting :\ndate : monday , march 5\ntime : 9 - 10 am\nplace : eb 3268\nthanks ,\nmary x 35999\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary comello / corp / enron on 02 / 27 / 2001\n04 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary comello\n02 / 27 / 2001 11 : 02 am\nto : greg whiting / corp / enron @ enron , bob m hall / na / enron @ enron , daren j\nfarmer / hou / ect @ ect , jim pond / corp / enron @ enron , megan parker / corp / enron @ enron\ncc : heather choate / hou / ect @ ect , brandee jackson / na / enron @ enr\nsubject : revised - tenaska iv - cleburne plant\nthe above meeting has been cancelled for today and will advise you of the\nreschedule .\nthanks ,\nmary x 35999\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary comello / corp / enron on 02 / 27 / 2001\n10 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary comello\n02 / 22 / 2001 02 : 59 pm\nto : greg whiting / corp / enron @ enron , bob m hall / na / enron @ enron , daren j\nfarmer / hou / ect @ ect , jim pond / corp / enron @ enron , megan parker / corp / enron @ enron\ncc : heather choate / hou / ect @ ect , brandee jackson / na / enron @ enron\nsubject : tenaska iv - cleburne plant\nper the request of rita wynne , please plan to attend the following meeting :\ntopic : tenaska iv - cleburne plant\ndate : tuesday , feb . 27\ntime : 1 - 2 pm\nplace : eb 37 cl\nthanks ,\nmary comello x 35999", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.091+0000", "entityId": 4153, "properties": {"text": "Subject: tenaska iv feb 2001\nwe do not have a demand fee for the feb 2001 tenaska iv sale , deal 384258 .\ncan you please put this in so i can bill ? from your spreadsheet , it looks\nlike it needs to be $ 2 , 291 , 888 . 83 , but you can verify . i subtracted the\nagency fee from the tenaska iv receipt number , since we already have that\nbooked .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.096+0000", "entityId": 4154, "properties": {"text": "Subject: re : noms / actual flow for 03 / 05\nwe agree\n\" eileen ponton \" on 03 / 06 / 2001 01 : 18 : 53 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 05\ndate nom flow - mcf flow - mmbtu\n3 / 05 12 , 500 10 , 357 10 , 637\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.100+0000", "entityId": 4155, "properties": {"text": "Subject: enron nom for march 7 , 2001\n( see attached file : hplno 307 . xls )\n- hplno 307 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.105+0000", "entityId": 4156, "properties": {"text": "Subject: an opportunity to change your electricity provider\nelectricity deregulation is coming to texas !\nwhat a great way to start off the new year \u0001 ) to be able to choose your\nelectricity provider , which could mean potential savings for you and your\nfamily on your electric bill . as you know , enron has been a leader in\nlobbying for deregulation and a consumer \u0001 , s right to choose energy providers .\nfor the first time in our state \u0001 , s history , 5 percent of texas households will\nhave this golden opportunity . the newpower company ( newpower ) , which is\napproximately 45 percent owned by enron , was recently formed to provide\nenergy and energy - related services to residential customers in deregulating\nenergy markets across america , including texas . for a limited time ,\nhouston - based employees will be eligible to participate in newpower \u0001 , s pilot\nprogram offering their deregulated electric service .\nbe among the first to participate :\nenrollment with newpower begins march 12 . also , watch for a special enron\nemployees exclusive offer on your desk march 12 . if you would like more\ninformation about newpower , visit the company ' s web site at www . newpower . com\ndisclaimers :\nany contract for goods or services that is entered into by an enron employee\nwith respect to the newpower program shall be solely between newpower and\nsuch employee . enron assumes no obligation on behalf of newpower and makes\nno representations , warranties , or guaranties with respect to newpower , or\nany goods or services offered or provided by newpower .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.110+0000", "entityId": 4157, "properties": {"text": "Subject: investinme . enron . com login information\nthis is an auto - generated e - mail .\nfrom : training services ( auto - generated )\nsent : tuesday , march 6 , 2001\nto : jerry farmer\nsubject : investinme . enron . com login information\ndear jerry farmer , log into investinme . enron . com with the following login id\nand password :\nlogin id - dfarmer @ enron . com\npassword - farmerj 55548\nthe first step is to get started with a login id and password noted above .\nweb site demonstrations will be held in eb 568 march 6 th , from 9 - 5 a . m .\n( every half hour ) . please plan to attend one session . if you have any\nquestions regarding your login information , you can contact the development\ncenter on x 3 - 0357 .\ninvestinme . enron . com is a new tool to help you manage your professional\ndevelopment . it brings together the listings of internal programs , as well as\naccess to register from a database of external programs , on - line courses and\nmaterials .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.115+0000", "entityId": 4158, "properties": {"text": "Subject: updated for march\ni have added a swing on mobil oil and moved the sale number over to the swing\ncolumn for equistar .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.120+0000", "entityId": 4159, "properties": {"text": "Subject: cleburne gas\nplease plan on attending a meeting regarding cleburne gas on thursday march 8\nat 2 : 00 - 3 : 00 pm in conference room 3143 a .\nthanks ,\ntina", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.124+0000", "entityId": 4160, "properties": {"text": "Subject: cornshucker 3 / 6 & 3 / 7\nfyi - - - i entered the changes for tenaska iv & brazos for the 6 th & 7 th . . . . i\nmade the changes to the brazos ticket # 458433 , and the tenaska iv ticket\n# 384258 , let me know if you have any questions or if a wrong ticket was\nchanged . spreadsheet is updated .\nbrazos called for the following :\n6 th 27 , 966\n7 th 19 , 735\nstill waiting to hear when the plant will be back up .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.129+0000", "entityId": 4161, "properties": {"text": "Subject: re : noms / actual flow for 03 / 06 / 01\nwe agree\n\" eileen ponton \" on 03 / 07 / 2001 10 : 55 : 26 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 06 / 01\ndate nom flow - mcf flow - mmbtu\n3 / 06 35 , 000 34 , 730 35 , 668\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.134+0000", "entityId": 4162, "properties": {"text": "Subject: hpl nom for march 8 , 2001\n( see attached file : hplno 308 . xls )\n- hplno 308 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.139+0000", "entityId": 4163, "properties": {"text": "Subject: lng - europe\nplease follow up .\neric\n- - - - - - - - - - - - - - - - - - - - - - forwarded by eric gonzales / lon / ect on 07 / 03 / 2001 21 : 18\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n07 / 03 / 2001 19 : 54\nto : eric gonzales / lon / ect @ ect\ncc :\nsubject : lng - europe\neric ,\ni recieved a call from a guy with pacific interlink ( ? ) . he is looking to\nmarket lng in europe . since i have very little knowledge in this area , i\ndidn ' t get much specific information . but , i told him i would find someone\nfor him to talk with . his name is sam kovacevich . phone : 847 - 971 - 3369 . i\nwould appreciate it if you would give sam a call . if you aren ' t the person\nhe needs to talk to , please let me know . thanks .\ndaren farmer\ntexas desk - gas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.144+0000", "entityId": 4164, "properties": {"text": "Subject: calpine daily gas nomination\n>\naimee , i will be out of the office friday and monday . in my absence please\ncall aron childers at 713 - 830 - 8811 if you have any questions . thanks .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.148+0000", "entityId": 4165, "properties": {"text": "Subject: 03 / 01 assignment , termination , expiration report - houston pipe\nline\nsince i did the revision to the february 2001 report so late last month , i\naccidentally failed to do the report for march 2001 . attached is a report\nfor march 2001 which covers all assignments , terminations & expirations\nentered since the last report was done on 2 / 15 / 01 . there will be a new\nreport done around march 22 nd in preparation for bid week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.153+0000", "entityId": 4166, "properties": {"text": "Subject: re : tenaska iv transport 10 / 00\nthat ' s great . what about deal 452475 ? we have $ 0 . 10 and we are being billed\n$ 0 . 11 for meter 25000200 on contract 1856 . also , i faxed the oct 2000 txu\ninvoices to trisha hughes so she can look into the dec 2000 and forward\nproblem .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.160+0000", "entityId": 4167, "properties": {"text": "Subject: re : noms / actual flow for 03 / 07 / 01\nfyi - we agree with the 17 . 500\n\" eileen ponton \" on 03 / 08 / 2001 11 : 51 : 38 am\nto : melissa jones / texas utilities @ tu\ncc :\nsubject : re : noms / actual flow for 03 / 07 / 01\nhave spoken w / both gas controls ( hpl / defs ) and will agree with your\n17 , 500 .\n\" melissa\njones \" to : \" eileen ponton \"\n, \" charlie stone \"\ncom >\nbcc :\n03 / 08 / 01 subject : re : noms / actual flow\nfor\n03 / 07 / 01\n09 : 27 am\nwe disagree . we show 17 . 500 , that was 0200 to 0900 @ 60 rate which equals\n17 . 500\n\" eileen ponton \" on 03 / 08 / 2001 10 : 56 : 39 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu ,\nmelissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 07 / 01\nper my gas control , tufco went to 60 , 000 at midnight and reduced to 45 , 000\nat 3 : 00 am due to pg & e having a compressor down . nom rate calculated on 3\nhrs at 60 , 000 and 6 hrs at 45 , 000 . please let me know if you have heard\ndifferently .\ndate nom flow - mcf flow - mmbtu\n3 / 07 18 , 750 14 , 140 14 , 522\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.168+0000", "entityId": 4168, "properties": {"text": "Subject: hpl nom for march 9 , 2001\n( see attached file : hplno 309 . xls )\n- hplno 309 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.175+0000", "entityId": 4169, "properties": {"text": "Subject: wellhead nominations\nwellhead volumes have been adjusted to the avg column on the attached\nspreadsheet as of 3 / 8 / 01 forward .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.179+0000", "entityId": 4170, "properties": {"text": "Subject: lng - europe\ndarren ,\nthanks for the lead . i ' ll give sam a call .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brad hitch / eu / enron on 08 / 03 / 2001 09 : 11\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\neric gonzales @ ect\n07 / 03 / 2001 20 : 15\nto : brad hitch / eu / enron @ enron\ncc : daren j farmer / hou / ect @ ect\nsubject : lng - europe\nplease follow up .\neric\n- - - - - - - - - - - - - - - - - - - - - - forwarded by eric gonzales / lon / ect on 07 / 03 / 2001 21 : 18\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n07 / 03 / 2001 19 : 54\nto : eric gonzales / lon / ect @ ect\ncc :\nsubject : lng - europe\neric ,\ni recieved a call from a guy with pacific interlink ( ? ) . he is looking to\nmarket lng in europe . since i have very little knowledge in this area , i\ndidn ' t get much specific information . but , i told him i would find someone\nfor him to talk with . his name is sam kovacevich . phone : 847 - 971 - 3369 . i\nwould appreciate it if you would give sam a call . if you aren ' t the person\nhe needs to talk to , please let me know . thanks .\ndaren farmer\ntexas desk - gas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.184+0000", "entityId": 4171, "properties": {"text": "Subject: teco fronterra - here it is\n- - - - - - - - - - - - - - - - - - - - - - forwarded by janet h wallis / hou / ect on 03 / 08 / 2001\n02 : 49 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce sukaly @ enron\n03 / 05 / 2001 04 : 52 pm\nto : stuart zisman / hou / ect @ ect , doug gilbert - smith / corp / enron @ enron , david\nportz / hou / ect @ ect , janet h wallis / hou / ect @ ect , berney c aucoin / hou / ect @ ect ,\nedith cross / hou / ect @ ect , jason r wiesepape / hou / ect @ ect , michelle\nparks / corp / enron @ enron\ncc :\nsubject : teco fronterra - here it is\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce sukaly / corp / enron on 03 / 05 / 2001\n04 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" joan johnson \" on 03 / 05 / 2001 04 : 39 : 03 pm\nto : , , \" dan sanford \"\n, \" eric bronner \" ,\n\" frank busot \" , \" george d . jennings \"\ncc :\nsubject : draft energy management services agreement\ngentlemen : attached please find the first rough draft for discussion\npurposes only .\njoan e . johnson\nparalegal\nteco energy , inc .\nphone : ( 813 ) 228 - 4329\nfax : ( 813 ) 228 - 1328\njejohnson @ tecoenergy . com\n- frontera energy agreement clean . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.189+0000", "entityId": 4172, "properties": {"text": "Subject: hpl nom for march 10 - 12 , 2001\n( see attached file : hplno 310 . xls )\n- hplno 310 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.194+0000", "entityId": 4173, "properties": {"text": "Subject: hpl nom for march 10 - 12 , 2001\n( see attached file : hplno 310 . xls )\n- hplno 310 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.199+0000", "entityId": 4174, "properties": {"text": "Subject: entex noms - lone star katy\ntom -\ngiven the difficulty we ' re having getting our gas from lone star at katy ,\nplease give entex a call on monday and ask them to remain at the current\nlevel or lower until further notice . thanks ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.204+0000", "entityId": 4175, "properties": {"text": "Subject: entex noms - lone star katy\ntom -\ngiven the difficulty we ' re having getting our gas from lone star at katy , please give entex a call on monday and ask them to remain at the current level or lower until further notice . thanks ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.209+0000", "entityId": 4176, "properties": {"text": "Subject: latest frontera doc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bob m hall / na / enron on 03 / 09 / 2001 12 : 05\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : leslie reeves @ ect on 03 / 07 / 2001 03 : 35 pm\nto : bob m hall / na / enron @ enron\ncc :\nsubject : latest frontera doc\nfyi - latest and greatest . i ' ll keep you posted . gas responsibilites are\ndiscussed beginning on pg 13 .\n- - - - - forwarded by leslie reeves / hou / ect on 03 / 07 / 2001 03 : 33 pm - - - - -\nedith cross\n03 / 07 / 2001 11 : 04 am\nto : leslie reeves / hou / ect @ ect , stacey w white / hou / ect @ ect , thresa a\nallen / hou / ect @ ect\ncc :\nsubject : latest frontera doc\ni haven ' t had a chance to look at this yet . sorry !\ne\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edith cross / hou / ect on 03 / 07 / 2001 11 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce sukaly @ enron\n03 / 07 / 2001 08 : 15 am\nto : jason r wiesepape / hou / ect @ ect , edith cross / hou / ect @ ect\ncc :\nsubject :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce sukaly / corp / enron on 03 / 07 / 2001\n08 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" stuart zisman \" on 03 / 07 / 2001 06 : 32 : 25 am\nto : bruce . sukaly @ enron . com , mike . curry @ enron . com , jason . wiesepape @ enron . com\ncc :\nsubject :\nattached is my cut at a mark up . please review so that we can discuss at\n9 : 00 this morning .\nstuart\nget your free download of msn explorer at http : / / explorer . msn . com\n- frontera agreement . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.213+0000", "entityId": 4177, "properties": {"text": "Subject: latest frontera doc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bob m hall / na / enron on 03 / 09 / 2001 12 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : leslie reeves @ ect on 03 / 07 / 2001 03 : 35 pm\nto : bob m hall / na / enron @ enron\ncc :\nsubject : latest frontera doc\nfyi - latest and greatest . i ' ll keep you posted . gas responsibilites are discussed beginning on pg 13 .\n- - - - - forwarded by leslie reeves / hou / ect on 03 / 07 / 2001 03 : 33 pm - - - - -\nedith cross 03 / 07 / 2001 11 : 04 am to : leslie reeves / hou / ect @ ect , stacey w white / hou / ect @ ect , thresa a allen / hou / ect @ ect cc : subject : latest frontera doc\ni haven ' t had a chance to look at this yet . sorry !\ne\n- - - - - - - - - - - - - - - - - - - - - - forwarded by edith cross / hou / ect on 03 / 07 / 2001 11 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbruce sukaly @ enron\n03 / 07 / 2001 08 : 15 am\nto : jason r wiesepape / hou / ect @ ect , edith cross / hou / ect @ ect\ncc :\nsubject :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bruce sukaly / corp / enron on 03 / 07 / 2001 08 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" stuart zisman \" on 03 / 07 / 2001 06 : 32 : 25 am\nto : bruce . sukaly @ enron . com , mike . curry @ enron . com , jason . wiesepape @ enron . com\ncc :\nsubject :\nattached is my cut at a mark up . please review so that we can discuss at\n9 : 00 this morning .\nstuart\nget your free download of msn explorer at http : / / explorer . msn . com\n- frontera agreement . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.218+0000", "entityId": 4178, "properties": {"text": "Subject: calpine daily gas nominations\naimee , our scheduled maintenance starts saturday night at midnight and will\ncontinue most of the month , per our scheduled maintenance letter sent in\njanuary . the plant should burn around 85 , 000 on saturday . beginning sunday\nuntil the end of the maintenance period , the estimate will be 65 , 000 to\n68 , 000 . i will be out of the office monday and will update the volumes on\ntuesday . if you have question call aron childers at 713 - 830 - 8811 . thanks .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.223+0000", "entityId": 4179, "properties": {"text": "Subject: on - call notes\nplease find attached the on - call notes for the weekend of 3 / 10 & 11 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.228+0000", "entityId": 4180, "properties": {"text": "Subject: re : physical storage\nwe don ' t have storage on pg & e do we ? i think that is park and lend . what do\nyou think ? i have put together the schedules for spindletop and bammel .\ndave\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 03 / 12 / 2001\n01 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jim pond @ enron 03 / 12 / 2001 12 : 47 pm\nto : darron c giron / hou / ect @ ect , kam keiser / hou / ect @ ect , phillip m\nlove / hou / ect @ ect , david baumbach / hou / ect @ ect , john valdes / hou / ect @ ect , kimat\nsingla / hou / ect @ ect\ncc : greg whiting / corp / enron @ enron\nsubject : re : physical storage\nplease provide the information requested below as soon as possible .\nimprovement in this process will help minimize flash - to - actual variances .\nto : darron c giron / hou / ect @ ect , kam keiser / hou / ect @ ect , phillip m\nlove / hou / ect @ ect , david baumbach / hou / ect @ ect\ncc : john valdes / hou / ect @ ect , kimat singla / hou / ect @ ect\nsubject : re : physical storage\nhas any progress been made on this ? so far , i have only received information\non cove point .\nwe show that there is physical storage on the following pipelines :\ncentral - mid continent , moss bluff , ngpl , and reliant .\ntexas - bammel , centana , and pg & e texas pipeline .\nwest - colorado , pg & e ( one contract ) , pg & e gas transmission northwest ,\nquestar , and williston\neast - cove point , dominion , columbia gas , gulf south ( koch ) , national fuel ,\nsonat , tennessee , transco , egan , and napoleonville .\nsithe - union\nplease provide the requested information below .\nthanks for your help in this matter .\nto : darron c giron / hou / ect @ ect , kam keiser / hou / ect @ ect , phillip m\nlove / hou / ect @ ect , david baumbach / hou / ect @ ect\ncc : john valdes / hou / ect @ ect\nsubject : physical storage\ngas accounting is initiating a project to ensure consistent treatment of\nphysical storage between flash and the gl . to that end , please provide the\nbook codes and cost of inventory schedules that you have for each of the\nphysical storage facilities . we will also need what you show as the 1 / 31 / 01\ninventory balance for each .\ndavid ,\ni believe that we already have the information for bammel . please provide\nthe info for other texas desk storage , if any .\ni would like to have this information as soon as possible .\nthanks , everyone .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.233+0000", "entityId": 4181, "properties": {"text": "Subject: re : physical storage\nwe don ' t have storage on pg & e do we ? i think that is park and lend . what do you think ? i have put together the schedules for spindletop and bammel .\ndave\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david baumbach / hou / ect on 03 / 12 / 2001 01 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jim pond @ enron 03 / 12 / 2001 12 : 47 pm\nto : darron c giron / hou / ect @ ect , kam keiser / hou / ect @ ect , phillip m love / hou / ect @ ect , david baumbach / hou / ect @ ect , john valdes / hou / ect @ ect , kimat singla / hou / ect @ ect\ncc : greg whiting / corp / enron @ enron\nsubject : re : physical storage\nplease provide the information requested below as soon as possible . improvement in this process will help minimize flash - to - actual variances .\nto : darron c giron / hou / ect @ ect , kam keiser / hou / ect @ ect , phillip m love / hou / ect @ ect , david baumbach / hou / ect @ ect\ncc : john valdes / hou / ect @ ect , kimat singla / hou / ect @ ect\nsubject : re : physical storage\nhas any progress been made on this ? so far , i have only received information on cove point .\nwe show that there is physical storage on the following pipelines :\ncentral - mid continent , moss bluff , ngpl , and reliant .\ntexas - bammel , centana , and pg & e texas pipeline .\nwest - colorado , pg & e ( one contract ) , pg & e gas transmission northwest , questar , and williston\neast - cove point , dominion , columbia gas , gulf south ( koch ) , national fuel , sonat , tennessee , transco , egan , and napoleonville .\nsithe - union\nplease provide the requested information below .\nthanks for your help in this matter .\nto : darron c giron / hou / ect @ ect , kam keiser / hou / ect @ ect , phillip m love / hou / ect @ ect , david baumbach / hou / ect @ ect\ncc : john valdes / hou / ect @ ect\nsubject : physical storage\ngas accounting is initiating a project to ensure consistent treatment of physical storage between flash and the gl . to that end , please provide the book codes and cost of inventory schedules that you have for each of the physical storage facilities . we will also need what you show as the 1 / 31 / 01 inventory balance for each .\ndavid ,\ni believe that we already have the information for bammel . please provide the info for other texas desk storage , if any .\ni would like to have this information as soon as possible .\nthanks , everyone .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.238+0000", "entityId": 4182, "properties": {"text": "Subject: on - call notes\nplease find attached the on - call notes for the weekend of 3 / 10 & 11 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.244+0000", "entityId": 4183, "properties": {"text": "Subject: duke energy field 8 / 00\nplease change the demand fee on deal 157288 for 8 / 00 from $ 9 , 575 . 45 to\n$ 6 , 143 . 64 . we need to reduce our payment to duke . when i adjusted the over\ndelivery charge on the days we didn ' t nom , the demand amount changed . i\nwaited until duke agreed before i sent you this change .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.248+0000", "entityId": 4184, "properties": {"text": "Subject: duke energy field 8 / 00\nplease change the demand fee on deal 157288 for 8 / 00 from $ 9 , 575 . 45 to $ 6 , 143 . 64 . we need to reduce our payment to duke . when i adjusted the over delivery charge on the days we didn ' t nom , the demand amount changed . i waited until duke agreed before i sent you this change .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.253+0000", "entityId": 4185, "properties": {"text": "Subject: registration welcome email\nthank you for registering at citibank account online . you now have\nfree access , 24 hours a day , to your citibank account information .\nsign - on at https : / / www . accountonline . com / cb / login . dcl to view your\nstatements , monitor your unbilled activity and enroll in one of our\nelectronic payment options . while you ' re there , check out these\ngreat features :\nall - electronic - enroll today and make your paper statement a\nthing of the past . view it online instead . then , pay your bill\nonline with click - to - pay or autopay .\nexpress request - manage your citibank account information from\nyour computer . change your address , request a credit line\nincrease , order a replacement card and more .\ncitibank bill manager - receive and pay all of your bills online .\nsecure messaging - have a question ? use our secure message pad to\ncorrespond safely with our customer care center .\nthe citibank toolbar - download this free software * and enjoy one\nclick access to account online and other password protected\nwebsites . plus , the citibank toolbar will fill online shopping\nforms with just one click !\nonce again , thanks for registering . we hope you visit account online\nat https : / / www . accountonline . com / cb / login . dcl again soon .\n* at point of download see terms and conditions governing use\nof software .\nfor your records , we have listed your user id and email address\nbelow .\nuser id : colioquake\nemail address : dfarmer @ enron . com\nto learn about citibank privacy , read our privacy promise at\nthis message is for information purposes only . please do not reply to\nus at this email address - - it is unattended , and we will not respond .\nuse the secure message center in help / contact us at account online .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.259+0000", "entityId": 4186, "properties": {"text": "Subject: registration welcome email\nthank you for registering at citibank account online . you now have\nfree access , 24 hours a day , to your citibank account information .\nsign - on at https : / / www . accountonline . com / cb / login . dcl to view your\nstatements , monitor your unbilled activity and enroll in one of our\nelectronic payment options . while you ' re there , check out these\ngreat features :\nall - electronic - enroll today and make your paper statement a\nthing of the past . view it online instead . then , pay your bill\nonline with click - to - pay or autopay .\nexpress request - manage your citibank account information from\nyour computer . change your address , request a credit line\nincrease , order a replacement card and more .\ncitibank bill manager - receive and pay all of your bills online .\nsecure messaging - have a question ? use our secure message pad to\ncorrespond safely with our customer care center .\nthe citibank toolbar - download this free software * and enjoy one\nclick access to account online and other password protected\nwebsites . plus , the citibank toolbar will fill online shopping\nforms with just one click !\nonce again , thanks for registering . we hope you visit account online\nat https : / / www . accountonline . com / cb / login . dcl again soon .\n* at point of download see terms and conditions governing use\nof software .\nfor your records , we have listed your user id and email address\nbelow .\nuser id : colioquake\nemail address : dfarmer @ enron . com\nto learn about citibank privacy , read our privacy promise at\nthis message is for information purposes only . please do not reply to\nus at this email address - - it is unattended , and we will not respond .\nuse the secure message center in help / contact us at account online .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.265+0000", "entityId": 4187, "properties": {"text": "Subject: hpl nom for march 13 , 2001\n( see attached file : hplno 313 . xls )\n- hplno 313 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.273+0000", "entityId": 4188, "properties": {"text": "Subject: re : noms / actual flow for 03 / 09 thru 3 / 11 / 01\nwe agree with the nominated totals .\n\" eileen ponton \" on 03 / 12 / 2001 09 : 22 : 50 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 09 thru 3 / 11 / 01\ndate nom flow - mcf flow - mmbtu\n3 / 09 30 , 000 29 , 998 30 , 798\n3 / 10 30 , 000 29 , 995 30 , 805\n3 / 11 0 0 0\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.280+0000", "entityId": 4189, "properties": {"text": "Subject: hpl nom for march 13 , 2001\n( see attached file : hplno 313 . xls )\n- hplno 313 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.284+0000", "entityId": 4190, "properties": {"text": "Subject: re : noms / actual flow for 03 / 09 thru 3 / 11 / 01\nwe agree with the nominated totals .\n\" eileen ponton \" on 03 / 12 / 2001 09 : 22 : 50 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 09 thru 3 / 11 / 01\ndate nom flow - mcf flow - mmbtu\n3 / 09 30 , 000 29 , 998 30 , 798\n3 / 10 30 , 000 29 , 995 30 , 805\n3 / 11 0 0 0\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.289+0000", "entityId": 4191, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.294+0000", "entityId": 4192, "properties": {"text": "Subject: new contact for devon\nplease note that i will be leaving enron as of march 23 , 2001 . please send future e - mails regarding\ndevon changes to kathy kelly and clarissa garcia , as well as the schedulers that you are already sending\nchanges too . they will coordinate all future devon inquiries and changes .\nif there are questions before then , please call me at 713 - 853 - 6357\nthanks ,\nbeverly beaty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.298+0000", "entityId": 4193, "properties": {"text": "Subject: tenaska iv 1 / 01\nwe need to change the demand fees for tenaska iv based on actuals for jan\n2001 . tenaska owes us some additional money . i have attached my netting\nspreadsheet if you need it .\ndeal 514353 change mmbtu from 45 , 000 to 46 , 113\ndeal 384258 change amount from $ 3 , 934 , 644 . 50 to $ 3 , 841 , 888 . 11\ni got your message regarding apache . i will just leave the pay the lesser\nofs there until they come back for it . also , mark checked with txu and we\ndo not have the rights to get dailies for the tenaska meters . he said that\nonly the interconnecting pipes get dailies . for the spreadsheet , i am just\ngoing to prorate the actuals based on the noms .\ni will let you know when we receive the payment from brazos for feb 2001 , so\nyou can enter the demand fee to forward the cash to tenaska iv .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.303+0000", "entityId": 4194, "properties": {"text": "Subject: txu noms . for 3 / 14 / 01\n( see attached file : hplno 314 . xls )\n- hplno 314 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.307+0000", "entityId": 4195, "properties": {"text": "Subject: tenaska iv 1 / 01\nwe need to change the demand fees for tenaska iv based on actuals for jan 2001 . tenaska owes us some additional money . i have attached my netting spreadsheet if you need it .\ndeal 514353 change mmbtu from 45 , 000 to 46 , 113\ndeal 384258 change amount from $ 3 , 934 , 644 . 50 to $ 3 , 841 , 888 . 11\ni got your message regarding apache . i will just leave the pay the lesser ofs there until they come back for it . also , mark checked with txu and we do not have the rights to get dailies for the tenaska meters . he said that only the interconnecting pipes get dailies . for the spreadsheet , i am just going to prorate the actuals based on the noms .\ni will let you know when we receive the payment from brazos for feb 2001 , so you can enter the demand fee to forward the cash to tenaska iv .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.313+0000", "entityId": 4196, "properties": {"text": "Subject: txu noms . for 3 / 14 / 01\n( see attached file : hplno 314 . xls )\n- hplno 314 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.318+0000", "entityId": 4197, "properties": {"text": "Subject: california energy crisis\ncalifornia \u0001 , s power crisis has generated heated debate over the last several\nmonths . unfortunately , this debate has generated more heat than light . we\nwant you to know what the facts are and what we are doing about the crisis .\nplease spend a few minutes reading the following overview on the situation\nand our position on california energy issues .\nwhat happened in california\nthe source of california \u0001 , s current problem is as straightforward as supply\nand demand . california \u0001 , s economy grew 29 percent since 1998 . this increased\nthe demand for electricity by 24 percent . at the same time , regulatory\nrestrictions prevented new generation from getting built in the state . so\ndemand grew but regulations prevented supplies from being added . the result ,\npredictably , is a shortage . this summer , peak capacity will be about 10\npercent shy of peak demand , leading to further blackouts in the state .\nin addition to the supply and demand imbalance , there are two other related\nfactors that led to the current crisis . first , the state \u0001 , s regulations\nforced all sales and purchases into the spot market . the spot market for\npower is extraordinarily volatile . the way firms behave in a free market\nwhen faced with such volatility is to construct a portfolio of purchases long\nterm , medium term and short term , to reduce exposure to this volatility . in\ncalifornia , state regulation prevented this strategy . this would be the\nequivalent of putting the entire state on an adjustable rate mortgage in the\nmost volatile interest rate environment imaginable . everything was fine\nwhile the power surplus persisted , but when shortages ensued , every megawatt\nwas purchased at the sky rocketing spot price .\nsecond , retail markets were not deregulated . regulated retail rates remained\nin effect , and stranded cost recovery charges were structured to keep\ncompetition out . this meant that utilities were forced to pay high wholesale\nprices in the spot market but were only able to recover costs at the\nregulated retail rate . they are now nearly bankrupt .\nin short , california \u0001 , s problems were caused by regulation , not deregulation .\nregulations prevented competitors from entering the market , prevented new\ngeneration from being built , and prevented prudent hedging against volatile\nspot prices .\nat the time california was developing its restructuring plan , enron warned\nthe state \u0001 , s policy makers about these risks and proposed alternatives , which ,\nif adopted , would have averted the current crisis .\nenron \u0001 , s role\nmany political leaders in the state have elected to fix blame rather than fix\nthe problem . power sellers , including enron , have been vilified by the\npoliticians and the media . here are the facts :\n? other than a small amount of wind power , enron is not a generator in the\nstate of california . every megawatt we sold in california we bought in the\nsame market available to other california purchasers . because we are a\nmarket maker , not a generator , we are not biased toward high prices . we are\ninterested only in having a market that works so that we can package products\nfor our customers .\n? as a seller to end - use markets in the state , we provided protection from\nthe problems the states \u0001 , utilities , and their customers , now face . we\nprotected , and still protect , our customers from price volatility .\nyou may have read that ees recently elected to have the utilities supply\npower directly to its customers in california instead of procuring power on\nthe open market . early reports mischaracterized this as a \u0001 enron continues to sign up customers in the state ; and enron\ncontinues to actively manage its risks and capture opportunities in western\npower markets . enron \u0001 , s primary business is managing risk for our customers\nwith solutions customized to meet their needs . there has never been more\ndemand for our products and services .\nthe solution\nthe solution to california \u0001 , s crisis is also straightforward . in summary , the\nstate must increase supply , reduce demand , reduce reliance on the spot market\nand shore up the financial stability of the state \u0001 , s utilities .\nincreasing supply\ncalifornia \u0001 , s process for siting and permitting new generation is nothing\nshort of byzantine . enron has built plants elsewhere in the country in less\nthan a year . in california , it often takes 5 to 7 years . california simply\nmust streamline this process . ironically , while many of the regulations\ngenerators must overcome are aimed at improving environmental quality , the\nregulations are preventing new clean technology from coming online and\ndisplacing current plants , which emit 40 times as much nox . california can\nhave abundant power and cleaner air by expediting the permitting of new\nfacilities .\nreducing demand\ncustomers in california today have no incentive to reduce or shift demand .\nthey pay the same rate no matter what the market price is . an open retail\nmarket would trigger demand responses , which would balance supply and demand\nat lower prices than today . california should fully open its retail market .\nreducing reliance on the spot market\nin a truly deregulated market , customers would protect themselves from\nvolatile spot prices by purchasing some of their requirements on a longer\nterm , fixed - price basis . the state has instead left procurement in the hands\nof the utilities , which it has forced to buy exclusively in the spot market .\nopening the market at the retail level will give customers control over their\nprice risk .\nrestoring the financial integrity of the state \u0001 , s institutions\nthe utilities in california are not paying their bills . this has led to\ngreater uncertainty in the market , higher costs , and reduced flexibility to\narrive at lasting solutions . california must permit its utilities to recover\ntheir costs so they can pay their bills and invest in the transmission and\ndistribution assets necessary to get power from where it is to where it is\nneeded .\njust as important as doing these things , the state must avoid policies that ,\nwhile politically attractive , do not fix the problem or even make matters\nworse . price caps have been proposed . they don \u0001 , t work ; have never worked ;\nand they will not work here . price caps succeed only in creating shortages ,\nwhich then have to be allocated among competing users . imagine how\nineffectively the government would be in determining , for example , whether it\nis better to make its limited power supplies available to the imperial valley\nor silicon valley . price caps are a surefire way to make the current\nshortage worse .\nthe state has also proposed to take over generation and transmission in\ncalifornia . there is no reason to believe , and every reason to doubt , that\nthe state will be more effective than free markets at investing in ,\nconstructing , operating and maintaining assets . this will also result in\ncalifornia tax revenues being spent on power transmission and power\ngeneration - - which the private sector can do - - instead of education , roads\nand other public goods - - which the private sector cannot do .\nas you are approached by people outside the company or are learning about the\ncrisis from the media , it \u0001 , s important for you to know this : we at enron will\ncontinue to serve our customers and we will continue to propose real\nsolutions to the state .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.323+0000", "entityId": 4198, "properties": {"text": "Subject: california energy crisis\ncalifornia ' s power crisis has generated heated debate over the last several months . unfortunately , this debate has generated more heat than light . we want you to know what the facts are and what we are doing about the crisis . please spend a few minutes reading the following overview on the situation and our position on california energy issues .\nwhat happened in california\nthe source of california ' s current problem is as straightforward as supply and demand . california ' s economy grew 29 percent since 1998 . this increased the demand for electricity by 24 percent . at the same time , regulatory restrictions prevented new generation from getting built in the state . so demand grew but regulations prevented supplies from being added . the result , predictably , is a shortage . this summer , peak capacity will be about 10 percent shy of peak demand , leading to further blackouts in the state .\nin addition to the supply and demand imbalance , there are two other related factors that led to the current crisis . first , the state ' s regulations forced all sales and purchases into the spot market . the spot market for power is extraordinarily volatile . the way firms behave in a free market when faced with such volatility is to construct a portfolio of purchases long term , medium term and short term , to reduce exposure to this volatility . in california , state regulation prevented this strategy . this would be the equivalent of putting the entire state on an adjustable rate mortgage in the most volatile interest rate environment imaginable . everything was fine while the power surplus persisted , but when shortages ensued , every megawatt was purchased at the sky rocketing spot price .\nsecond , retail markets were not deregulated . regulated retail rates remained in effect , and stranded cost recovery charges were structured to keep competition out . this meant that utilities were forced to pay high wholesale prices in the spot market but were only able to recover costs at the regulated retail rate . they are now nearly bankrupt .\nin short , california ' s problems were caused by regulation , not deregulation . regulations prevented competitors from entering the market , prevented new generation from being built , and prevented prudent hedging against volatile spot prices .\nat the time california was developing its restructuring plan , enron warned the state ' s policy makers about these risks and proposed alternatives , which , if adopted , would have averted the current crisis .\nenron ' s role\nmany political leaders in the state have elected to fix blame rather than fix the problem . power sellers , including enron , have been vilified by the politicians and the media . here are the facts :\n? other than a small amount of wind power , enron is not a generator in the state of california . every megawatt we sold in california we bought in the same market available to other california purchasers . because we are a market maker , not a generator , we are not biased toward high prices . we are interested only in having a market that works so that we can package products for our customers .\n? as a seller to end - use markets in the state , we provided protection from the problems the states ' utilities , and their customers , now face . we protected , and still protect , our customers from price volatility .\nyou may have read that ees recently elected to have the utilities supply power directly to its customers in california instead of procuring power on the open market . early reports mischaracterized this as a \" turnback \" of our customers to the utilities . here are the facts :\n? as a result of a variety of factors existing in the current california market , it made more sense for ees to source power for its customers directly from the utilities . this decision reduced ees ' s market price risk by allowing ees to access lower utility rates .\n? ees did not terminate any customer contracts , and our customers continue to receive the financial benefits of their contract prices .\n? ees is continuing to work with its california customers to provide them with other energy - related products and services , including assistance in reducing the demand for power , particularly at peak times .\nenron is currently proposing solutions to help california work out of its crisis ; enron continues to sign up customers in the state ; and enron continues to actively manage its risks and capture opportunities in western power markets . enron ' s primary business is managing risk for our customers with solutions customized to meet their needs . there has never been more demand for our products and services .\nthe solution\nthe solution to california ' s crisis is also straightforward . in summary , the state must increase supply , reduce demand , reduce reliance on the spot market and shore up the financial stability of the state ' s utilities .\nincreasing supply\ncalifornia ' s process for siting and permitting new generation is nothing short of byzantine . enron has built plants elsewhere in the country in less than a year . in california , it often takes 5 to 7 years . california simply must streamline this process . ironically , while many of the regulations generators must overcome are aimed at improving environmental quality , the regulations are preventing new clean technology from coming online and displacing current plants , which emit 40 times as much nox . california can have abundant power and cleaner air by expediting the permitting of new facilities .\nreducing demand\ncustomers in california today have no incentive to reduce or shift demand . they pay the same rate no matter what the market price is . an open retail market would trigger demand responses , which would balance supply and demand at lower prices than today . california should fully open its retail market .\nreducing reliance on the spot market\nin a truly deregulated market , customers would protect themselves from volatile spot prices by purchasing some of their requirements on a longer term , fixed - price basis . the state has instead left procurement in the hands of the utilities , which it has forced to buy exclusively in the spot market . opening the market at the retail level will give customers control over their price risk .\nrestoring the financial integrity of the state ' s institutions\nthe utilities in california are not paying their bills . this has led to greater uncertainty in the market , higher costs , and reduced flexibility to arrive at lasting solutions . california must permit its utilities to recover their costs so they can pay their bills and invest in the transmission and distribution assets necessary to get power from where it is to where it is needed .\njust as important as doing these things , the state must avoid policies that , while politically attractive , do not fix the problem or even make matters worse . price caps have been proposed . they don ' t work ; have never worked ; and they will not work here . price caps succeed only in creating shortages , which then have to be allocated among competing users . imagine how ineffectively the government would be in determining , for example , whether it is better to make its limited power supplies available to the imperial valley or silicon valley . price caps are a surefire way to make the current shortage worse .\nthe state has also proposed to take over generation and transmission in california . there is no reason to believe , and every reason to doubt , that the state will be more effective than free markets at investing in , constructing , operating and maintaining assets . this will also result in california tax revenues being spent on power transmission and power generation - - which the private sector can do - - instead of education , roads and other public goods - - which the private sector cannot do .\nas you are approached by people outside the company or are learning about the crisis from the media , it ' s important for you to know this : we at enron will continue to serve our customers and we will continue to propose real solutions to the state .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.328+0000", "entityId": 4199, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.333+0000", "entityId": 4200, "properties": {"text": "Subject: new contact for devon\nplease note that i will be leaving enron as of march 23 , 2001 . please send\nfuture e - mails regarding\ndevon changes to kathy kelly and clarissa garcia , as well as the schedulers\nthat you are already sending\nchanges too . they will coordinate all future devon inquiries and changes .\nif there are questions before then , please call me at 713 - 853 - 6357\nthanks ,\nbeverly beaty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.338+0000", "entityId": 4201, "properties": {"text": "Subject: oto\ni will be out of the office from 3 / 15 thru 3 / 25 on vacation . if you have any\nquestions mike olsen ext - 35796 will be the point person . my desk will be\nhandle by :\nbob c . 3 - 6101 bmar\ncreate and send noms\nbridge back - hpl / hpl & ena\nmike 3 - 5796 carhtage hub\ndevon\nbmar ( back up )\nhpl pools\nbp - amoco\ncentana ( storage & hpl meter 7001 )\ntom a 3 - 6224 tufco\npath hpl / ena", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.343+0000", "entityId": 4202, "properties": {"text": "Subject: oto\ni will be out of the office from 3 / 15 thru 3 / 25 on vacation . if you have any questions mike olsen ext - 35796 will be the point person . my desk will be handle by :\nbob c . 3 - 6101 bmar\ncreate and send noms\nbridge back - hpl / hpl & ena\nmike 3 - 5796 carhtage hub\ndevon\nbmar ( back up )\nhpl pools\nbp - amoco\ncentana ( storage & hpl meter 7001 )\ntom a 3 - 6224 tufco\npath hpl / ena", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.347+0000", "entityId": 4203, "properties": {"text": "Subject: re : tenaska iv 1 / 01\ntxu revised their rates for jan 2001 . they are now billing us at $ 0 . 10 and\n$ 0 . 08 for contract 1671 . this was previously billed all at $ 0 . 10 . please\nchange the demand fee on deal 384258 from $ 3 , 841 , 888 . 11 to $ 3 , 830 , 131 . 18 .\nalso , i spoke to txu about the rate on contract 1856 ( deal 452475 ) . they\nhave been billing us $ 0 . 11 and we have $ 0 . 10 . the extra cent is for the el\npaso header fee . the pricing you gave me is for contract 1671 , but also has\nthe header fee if you look on page 5 of 6 . you ' ll see a a section called\n\" compression & header expense if utilized \" . the current rate for 1856 is\n$ 0 . 01 and 0 % fuel . i will leave a copy of the contract in your chair .\nthanks ,\nmegan\ndaren j farmer @ ect\n03 / 13 / 2001 10 : 54 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : tenaska iv 1 / 01\ni have made the changes mentioned below . i ' ve also adjusted the spreadsheet\nbased on our conversation yesterday . take a look at it when you get a chance .\nd\nenron north america corp .\nfrom : megan parker @ enron 03 / 13 / 2001 09 : 06 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv 1 / 01\nwe need to change the demand fees for tenaska iv based on actuals for jan\n2001 . tenaska owes us some additional money . i have attached my netting\nspreadsheet if you need it .\ndeal 514353 change mmbtu from 45 , 000 to 46 , 113\ndeal 384258 change amount from $ 3 , 934 , 644 . 50 to $ 3 , 841 , 888 . 11\ni got your message regarding apache . i will just leave the pay the lesser\nofs there until they come back for it . also , mark checked with txu and we\ndo not have the rights to get dailies for the tenaska meters . he said that\nonly the interconnecting pipes get dailies . for the spreadsheet , i am just\ngoing to prorate the actuals based on the noms .\ni will let you know when we receive the payment from brazos for feb 2001 , so\nyou can enter the demand fee to forward the cash to tenaska iv .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.352+0000", "entityId": 4204, "properties": {"text": "Subject: re : noms / actual flow for 03 / 13\nwe agree\n\" eileen ponton \" on 03 / 14 / 2001 12 : 32 : 16 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 13\ndate nom flow - mcf flow - mmbtu\n3 / 13 7 , 500 7 , 666 7 , 873\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.356+0000", "entityId": 4205, "properties": {"text": "Subject: hpl nom for march 15 , 2001\n( see attached file : hplno 315 . xls )\n- hplno 315 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.361+0000", "entityId": 4206, "properties": {"text": "Subject: re : tenaska iv 1 / 01\ntxu revised their rates for jan 2001 . they are now billing us at $ 0 . 10 and $ 0 . 08 for contract 1671 . this was previously billed all at $ 0 . 10 . please change the demand fee on deal 384258 from $ 3 , 841 , 888 . 11 to $ 3 , 830 , 131 . 18 .\nalso , i spoke to txu about the rate on contract 1856 ( deal 452475 ) . they have been billing us $ 0 . 11 and we have $ 0 . 10 . the extra cent is for the el paso header fee . the pricing you gave me is for contract 1671 , but also has the header fee if you look on page 5 of 6 . you ' ll see a a section called \" compression & header expense if utilized \" . the current rate for 1856 is $ 0 . 01 and 0 % fuel . i will leave a copy of the contract in your chair .\nthanks ,\nmegan\ndaren j farmer @ ect\n03 / 13 / 2001 10 : 54 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : tenaska iv 1 / 01\ni have made the changes mentioned below . i ' ve also adjusted the spreadsheet based on our conversation yesterday . take a look at it when you get a chance .\nd\nenron north america corp . from : megan parker @ enron 03 / 13 / 2001 09 : 06 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska iv 1 / 01\nwe need to change the demand fees for tenaska iv based on actuals for jan 2001 . tenaska owes us some additional money . i have attached my netting spreadsheet if you need it .\ndeal 514353 change mmbtu from 45 , 000 to 46 , 113\ndeal 384258 change amount from $ 3 , 934 , 644 . 50 to $ 3 , 841 , 888 . 11\ni got your message regarding apache . i will just leave the pay the lesser ofs there until they come back for it . also , mark checked with txu and we do not have the rights to get dailies for the tenaska meters . he said that only the interconnecting pipes get dailies . for the spreadsheet , i am just going to prorate the actuals based on the noms .\ni will let you know when we receive the payment from brazos for feb 2001 , so you can enter the demand fee to forward the cash to tenaska iv .\nthanks ,\nmegan\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.369+0000", "entityId": 4207, "properties": {"text": "Subject: re : noms / actual flow for 03 / 13\nwe agree\n\" eileen ponton \" on 03 / 14 / 2001 12 : 32 : 16 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 13\ndate nom flow - mcf flow - mmbtu\n3 / 13 7 , 500 7 , 666 7 , 873\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.375+0000", "entityId": 4208, "properties": {"text": "Subject: hpl nom for march 15 , 2001\n( see attached file : hplno 315 . xls )\n- hplno 315 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.381+0000", "entityId": 4209, "properties": {"text": "Subject: re : dow pipeline\nliz ,\nplease see attached e - mail reguarding entex and advise which deal is good .\nthanks .\nfrom : karen lindley 03 / 13 / 2001 04 : 41 pm\nto : michael olsen / na / enron @ enron\ncc :\nsubject : dow pipeline\ncan you please verify the following and let me know if i need to do an\naccounting arrangement to correct . thanks !\nkaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen lindley / corp / enron on 03 / 13 / 2001\n03 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack @ ect 03 / 13 / 2001 02 : 24 pm\nto : karen lindley / corp / enron @ enron\ncc : paul couvillon / corp / enron @ enron\nsubject : dow pipeline\nit should be on deal 318052 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 03 / 13 / 2001\n02 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 03 / 13 / 2001 02 : 22 pm\nto : karen lindley / corp / enron @ enron\ncc :\nsubject : dow pipeline\nkaren ,\nthe entex volumes on dow pipeline at meter 984486 is scheduled on an expired\ndeal ( 292249 ) for 2 / 2001 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.385+0000", "entityId": 4210, "properties": {"text": "Subject: re : dow pipeline\nliz ,\nplease see attached e - mail reguarding entex and advise which deal is good .\nthanks .\nfrom : karen lindley 03 / 13 / 2001 04 : 41 pm\nto : michael olsen / na / enron @ enron\ncc :\nsubject : dow pipeline\ncan you please verify the following and let me know if i need to do an accounting arrangement to correct . thanks !\nkaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen lindley / corp / enron on 03 / 13 / 2001 03 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack @ ect 03 / 13 / 2001 02 : 24 pm\nto : karen lindley / corp / enron @ enron\ncc : paul couvillon / corp / enron @ enron\nsubject : dow pipeline\nit should be on deal 318052 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherlyn schumack / hou / ect on 03 / 13 / 2001 02 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherlyn schumack 03 / 13 / 2001 02 : 22 pm\nto : karen lindley / corp / enron @ enron\ncc :\nsubject : dow pipeline\nkaren ,\nthe entex volumes on dow pipeline at meter 984486 is scheduled on an expired deal ( 292249 ) for 2 / 2001 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.391+0000", "entityId": 4211, "properties": {"text": "Subject: re : deal 34342\ndaren - thu has asked if i can extend deal 343421 thru feb . ' 01 . i told her i didn ' t have the authority to do this . it is for equistar . it looks like it is a term deal expiring jan . ' 01 . she wants it added to keep the ena deal whole . what do you suggest ?\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 14 / 2001 10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\nthis is the deal for equistar . there is not enough gas at meter 1373 to keep the ena deal whole . i need this deal to create buyback . this was out there last month and anita told me to get the deal extended . let me know if there is another way .\nthu\naimee lannou 03 / 14 / 2001 10 : 23 am\nto : thu t nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 34342\nwhy do you need it extended ? this deal may not be able to get extended . which meter are you having problems with ?\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\ni am so sorry . . . i don ' t know what ' s wrong with me . the deal is 343421 . if you can ' t extend this deal please let me know . thanks\nthu\naimee lannou 03 / 14 / 2001 07 : 59 am\nto : thu t nguyen / hou / ect @ ect\ncc : edward terry / hou / ect @ ect , juliann kemp / enron @ enronxgate\nsubject : re : deal 34342\ni don ' t have access to this ticket . it is an im canada ticket .\nfrom : thu t nguyen 03 / 13 / 2001 05 : 45 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : deal 34342\naimee , please extend the deal above to feb 01 .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.395+0000", "entityId": 4212, "properties": {"text": "Subject: re : deal 34342\ndaren - thu has asked if i can extend deal 343421 thru feb . ' 01 . i told her\ni didn ' t have the authority to do this . it is for equistar . it looks like\nit is a term deal expiring jan . ' 01 . she wants it added to keep the ena\ndeal whole . what do you suggest ?\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 14 / 2001 10 : 58\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\nthis is the deal for equistar . there is not enough gas at meter 1373 to keep\nthe ena deal whole . i need this deal to create buyback . this was out there\nlast month and anita told me to get the deal extended . let me know if there\nis another way .\nthu\naimee lannou 03 / 14 / 2001 10 : 23 am\nto : thu t nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 34342\nwhy do you need it extended ? this deal may not be able to get extended .\nwhich meter are you having problems with ?\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\ni am so sorry . . . i don ' t know what ' s wrong with me . the deal is 343421 . if\nyou can ' t extend this deal please let me know . thanks\nthu\naimee lannou 03 / 14 / 2001 07 : 59 am\nto : thu t nguyen / hou / ect @ ect\ncc : edward terry / hou / ect @ ect , juliann kemp / enron @ enronxgate\nsubject : re : deal 34342\ni don ' t have access to this ticket . it is an im canada ticket .\nfrom : thu t nguyen 03 / 13 / 2001 05 : 45 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : deal 34342\naimee , please extend the deal above to feb 01 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.400+0000", "entityId": 4213, "properties": {"text": "Subject: ces changes eff . 3 / 15\nfyi - -\nces changes effectie 3 / 15 / 01 :\nlonestar\nfrom 5 , 978 to 4 , 500 total receipt\ndelivered to hpl / katy 4 , 477 after fuel\nmidcon ( kindermorgan )\nfrom 7 , 332 to 6 , 584 total receipt\nchange to greta / toc # 5553", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.405+0000", "entityId": 4214, "properties": {"text": "Subject: exxon company , usa global # 96035668 / sitara # 212225\nplease prepare and send a termination letter by tomorrow march 16 , 2001 on\nthe above referenced deal . houston pipe line company has not renegotiated a\nprice and have no interest in buying the gas on an evergreen basis . it is my\nunderstanding that we need to notify them within 10 days of the end of the\ndelivery period\n. if you need any additional information or have any questions , please\ncontact me at 35656 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.409+0000", "entityId": 4215, "properties": {"text": "Subject: exxon company , usa global # 96035668 / sitara # 212225\nplease prepare and send a termination letter by tomorrow march 16 , 2001 on the above referenced deal . houston pipe line company has not renegotiated a price and have no interest in buying the gas on an evergreen basis . it is my understanding that we need to notify them within 10 days of the end of the delivery period\n. if you need any additional information or have any questions , please contact me at 35656 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.414+0000", "entityId": 4216, "properties": {"text": "Subject: fw : [ fwd : two prayer requests ]\nplease respond to\n- - - - - original message - - - - -\nfrom : dennis dossey [ mailto : top @ treatyoakpress . com ]\nsent : thursday , march 15 , 2001 12 : 52 am\nto : sherry casella ; ram tackett ; karen boundary = \" - - - - = _ nextpart _ 000 _ 0008 _ 01 coad 2 f . a 3 f 34070 \"\nx - mailer : microsoft outlook cws , build 9 . 0 . 2416 ( 9 . 0 . 2911 . 0 )\nx - mimeole : produced by microsoft mimeole v 5 . 50 . 4133 . 2400\ndear christian friends ,\ngreetings in the name of our lord jesus !\nwe have two very urgent prayer requests . our dear friend and a brother , david gatewood , the son of late otis gatewood , has been recently diagnosed a pancreas cancer . david and his wife sandy were two of the first people who introduced dragica and me to christ and his church over thirty years ago . in 1969 they came to croatia ( yugoslavia at that time ) , as missionaries , with another couple , bud and beverly pickl . in order to get their resident visas , they enrolled in a croatian language study program . i was their professor at that time , and we became very good and close friends . david and sandy have been connected with the lord ? s work in croatia for all these years . before leaving croatia in 1972 , they adopted a little croatian girl , whom they raised with much love . she is a married woman now , and lives in colorado springs . david and sandy made several trips to croatia during the war , and david taught seminars on post - war traumatic experiences and the value of a family . your prayers will be greatly appreciated by many in croatia who love david dearly .\nalso , please , put me ( mladen ) on your prayer list . for several months now i ? ve been having some prostate problems . ten days ago my doctor requested a biopsy , and i am anxiously waiting to get the results this coming monday . dragica and i believe god listens and hears prayers of his people .\nplease , join the church in croatia with your prayers .\nyours in his love and mercy ,\nmalden and dragica jovanovic", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.419+0000", "entityId": 4217, "properties": {"text": "Subject: neon for march 28\nplease respond to here is the neon lesson for march 28 th !\n- experiencing god week 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.423+0000", "entityId": 4218, "properties": {"text": "Subject: fw : [ fwd : two prayer requests ]\n- - - - - original message - - - - -\nfrom : dennis dossey [ mailto : top @ treatyoakpress . com ]\nsent : thursday , march 15 , 2001 12 : 52 am\nto : sherry casella ; ram tackett ; karen\nx - mailer : microsoft outlook cws , build 9 . 0 . 2416 ( 9 . 0 . 2911 . 0 )\nx - mimeole : produced by microsoft mimeole v 5 . 50 . 4133 . 2400\ndear christian friends ,\ngreetings in the name of our lord jesus !\nwe have two very urgent prayer requests . our dear friend and a brother , david\ngatewood , the son of late otis gatewood , has been recently diagnosed a\npancreas cancer . david and his wife sandy were two of the first people who\nintroduced dragica and me to christ and his church over thirty years ago . in\n1969 they came to croatia ( yugoslavia at that time ) , as missionaries , with\nanother couple , bud and beverly pickl . in order to get their resident visas ,\nthey enrolled in a croatian language study program . i was their professor at\nthat time , and we became very good and close friends . david and sandy have\nbeen connected with the lord \u0001 @ s work in croatia for all these years . before\nleaving croatia in 1972 , they adopted a little croatian girl , whom they\nraised with much love . she is a married woman now , and lives in colorado\nsprings . david and sandy made several trips to croatia during the war , and\ndavid taught seminars on post - war traumatic experiences and the value of a\nfamily . your prayers will be greatly appreciated by many in croatia who love\ndavid dearly .\nalso , please , put me ( mladen ) on your prayer list . for several months now\ni ? ve been having some prostate problems . ten days ago my doctor requested a\nbiopsy , and i am anxiously waiting to get the results this coming monday .\ndragica and i believe god listens and hears ? prayers of his people .\nplease , join the church in croatia with your prayers .\nyours in his love and mercy ,\nmalden and dragica jovanovic", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.428+0000", "entityId": 4219, "properties": {"text": "Subject: neon for march 28\nhere is the neon lesson for march 28 th !\n- experiencing god week 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.433+0000", "entityId": 4220, "properties": {"text": "Subject: hpl nom for march 16 , 2001\n( see attached file : hplno 316 . xls )\n- hplno 316 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.440+0000", "entityId": 4221, "properties": {"text": "Subject: re : noms / actual flow for 03 / 14\nwe agree\n\" eileen ponton \" on 03 / 15 / 2001 09 : 47 : 26 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 14\ndate nom flow - mcf flow - mmbtu\n3 / 14 23 , 750 23 , 112 23 , 736\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.448+0000", "entityId": 4222, "properties": {"text": "Subject: hpl nom for march 16 , 2001\n( see attached file : hplno 316 . xls )\n- hplno 316 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.453+0000", "entityId": 4223, "properties": {"text": "Subject: re : noms / actual flow for 03 / 14\nwe agree\n\" eileen ponton \" on 03 / 15 / 2001 09 : 47 : 26 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 14\ndate nom flow - mcf flow - mmbtu\n3 / 14 23 , 750 23 , 112 23 , 736\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.457+0000", "entityId": 4224, "properties": {"text": "Subject: meter 1558\ndaren - meter 1558 has no nom for march . it has a little over flow on 3 / 1 . could you please extend the deal ? the deal is 604056 .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.462+0000", "entityId": 4225, "properties": {"text": "Subject: re : deal 34342\ndaren ,\ni am trying to make up the gas for ena deals on meter 1552 , 8024 , 1062 , ( deals 240061 , 378904 , 394489 , 487588 ) . per anita , these need to be kept whole . i have the option of a buyback or swing on 1373 . . . . but , there is not enough gas at meter 1373 to do this . please let me know if there is another way i can achieve this .\nthu\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu t nguyen / hou / ect on 03 / 14 / 2001 01 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 03 / 14 / 2001 12 : 36 pm\nto : thu t nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 34342\ndaren ' s response .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 14 / 2001 12 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n03 / 14 / 2001 12 : 30 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\nwe have a buyback under hpl ( # 586534 ) . ena had only 7 , 000 / day scheduled at mtr 1373 in feb . in reviewing the daily volumes in pops , i didn ' t see any days with flow under 18 , 000 . so , we should not need a buyback for ena . any shortages should be allocated to the hpl ticket .\nd\naimee lannou 03 / 14 / 2001 11 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : deal 34342\ndaren - thu has asked if i can extend deal 343421 thru feb . ' 01 . i told her i didn ' t have the authority to do this . it is for equistar . it looks like it is a term deal expiring jan . ' 01 . she wants it added to keep the ena deal whole . what do you suggest ?\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 14 / 2001 10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\nthis is the deal for equistar . there is not enough gas at meter 1373 to keep the ena deal whole . i need this deal to create buyback . this was out there last month and anita told me to get the deal extended . let me know if there is another way .\nthu\naimee lannou 03 / 14 / 2001 10 : 23 am\nto : thu t nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 34342\nwhy do you need it extended ? this deal may not be able to get extended . which meter are you having problems with ?\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\ni am so sorry . . . i don ' t know what ' s wrong with me . the deal is 343421 . if you can ' t extend this deal please let me know . thanks\nthu\naimee lannou 03 / 14 / 2001 07 : 59 am\nto : thu t nguyen / hou / ect @ ect\ncc : edward terry / hou / ect @ ect , juliann kemp / enron @ enronxgate\nsubject : re : deal 34342\ni don ' t have access to this ticket . it is an im canada ticket .\nfrom : thu t nguyen 03 / 13 / 2001 05 : 45 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : deal 34342\naimee , please extend the deal above to feb 01 .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.467+0000", "entityId": 4226, "properties": {"text": "Subject: meter 1558\ndaren - meter 1558 has no nom for march . it has a little over flow on 3 / 1 .\ncould you please extend the deal ? the deal is 604056 .\nthanks .\naimee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.471+0000", "entityId": 4227, "properties": {"text": "Subject: re : deal 34342\ndaren ,\ni am trying to make up the gas for ena deals on meter 1552 , 8024 , 1062 , ( deals\n240061 , 378904 , 394489 , 487588 ) . per anita , these need to be kept whole . i\nhave the option of a buyback or swing on 1373 . . . . but , there is not enough gas\nat meter 1373 to do this . please let me know if there is another way i can\nachieve this .\nthu\n- - - - - - - - - - - - - - - - - - - - - - forwarded by thu t nguyen / hou / ect on 03 / 14 / 2001 01 : 11\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 03 / 14 / 2001 12 : 36 pm\nto : thu t nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 34342\ndaren ' s response .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 14 / 2001 12 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaren j farmer\n03 / 14 / 2001 12 : 30 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\nwe have a buyback under hpl ( # 586534 ) . ena had only 7 , 000 / day scheduled at\nmtr 1373 in feb . in reviewing the daily volumes in pops , i didn ' t see any\ndays with flow under 18 , 000 . so , we should not need a buyback for ena . any\nshortages should be allocated to the hpl ticket .\nd\naimee lannou 03 / 14 / 2001 11 : 03 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : deal 34342\ndaren - thu has asked if i can extend deal 343421 thru feb . ' 01 . i told her\ni didn ' t have the authority to do this . it is for equistar . it looks like\nit is a term deal expiring jan . ' 01 . she wants it added to keep the ena\ndeal whole . what do you suggest ?\nal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 14 / 2001 10 : 58\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\nthis is the deal for equistar . there is not enough gas at meter 1373 to keep\nthe ena deal whole . i need this deal to create buyback . this was out there\nlast month and anita told me to get the deal extended . let me know if there\nis another way .\nthu\naimee lannou 03 / 14 / 2001 10 : 23 am\nto : thu t nguyen / hou / ect @ ect\ncc :\nsubject : re : deal 34342\nwhy do you need it extended ? this deal may not be able to get extended .\nwhich meter are you having problems with ?\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : re : deal 34342\naimee ,\ni am so sorry . . . i don ' t know what ' s wrong with me . the deal is 343421 . if\nyou can ' t extend this deal please let me know . thanks\nthu\naimee lannou 03 / 14 / 2001 07 : 59 am\nto : thu t nguyen / hou / ect @ ect\ncc : edward terry / hou / ect @ ect , juliann kemp / enron @ enronxgate\nsubject : re : deal 34342\ni don ' t have access to this ticket . it is an im canada ticket .\nfrom : thu t nguyen 03 / 13 / 2001 05 : 45 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : deal 34342\naimee , please extend the deal above to feb 01 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.476+0000", "entityId": 4228, "properties": {"text": "Subject: re : exxon company , usa global # 96035668 / sitara # 212225\ni have re - checked sitara & verified that the above deal was a term , firm\ndeal . this resulted in a gtc purchase firm contract being set - up in the\nglobal contracts system . the term of the gtc was set as the term of the deal\n( 4 / 1 / 00 thru 3 / 31 / 01 ) with no evergreen , meaning that the contract will\nexpire at the end of this month .\nto the best of my knowledge , all gtc purchase firms have the same language &\nthey do not have evergreen . they expire at the end of the primary term .\nso , unless exxon negotiated a deal with different , special language to allow\nfor evergreen & included something about a \" 10 day notification \" to\nterminate , there isn ' t any reason to \" terminate \" this contract .\nif this is the case , please advise . otherwise , i don ' t think we need to do\nanything . the contract will expire at the end of this month on its own .\nelsa villarreal\n03 / 15 / 2001 02 : 42 pm\nto : amelia alland / hou / ect @ ect , cheryl dudley / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : exxon company , usa global # 96035668 / sitara # 212225\nplease prepare and send a termination letter by tomorrow march 16 , 2001 on\nthe above referenced deal . houston pipe line company has not renegotiated a\nprice and have no interest in buying the gas on an evergreen basis . it is my\nunderstanding that we need to notify them within 10 days of the end of the\ndelivery period\n. if you need any additional information or have any questions , please\ncontact me at 35656 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.480+0000", "entityId": 4229, "properties": {"text": "Subject: re : exxon company , usa global # 96035668 / sitara # 212225\nin response to cheryl ' s note , in looking at a copy of a confirmation letter\nconfirming the proposed agreement reached on march 1 , 2000 to be effective\napril 1 , 2000 through march 31 , 2001 , there is evergreen language .\na termination letter is being prepared to be faxed to exxon with an original\nto follow for their records .\ncheryl , this gtc is different from the ones we usually see in that hpl\nrequired signatures from both parties executed by exxon on 3 / 30 / 00 and hpl on\n8 / 21 / 00 .\nif you have any questions , please call me at x 35231 .\nthanks , kim\ncheryl dudley\n03 / 16 / 2001 08 : 58 am\nto : elsa villarreal / hou / ect @ ect\ncc : amelia alland / hou / ect @ ect , daren j farmer / hou / ect @ ect , kimberlee a\nbennick / hou / ect @ ect\nsubject : re : exxon company , usa global # 96035668 / sitara # 212225\ni have re - checked sitara & verified that the above deal was a term , firm\ndeal . this resulted in a gtc purchase firm contract being set - up in the\nglobal contracts system . the term of the gtc was set as the term of the deal\n( 4 / 1 / 00 thru 3 / 31 / 01 ) with no evergreen , meaning that the contract will\nexpire at the end of this month .\nto the best of my knowledge , all gtc purchase firms have the same language &\nthey do not have evergreen . they expire at the end of the primary term .\nso , unless exxon negotiated a deal with different , special language to allow\nfor evergreen & included something about a \" 10 day notification \" to\nterminate , there isn ' t any reason to \" terminate \" this contract .\nif this is the case , please advise . otherwise , i don ' t think we need to do\nanything . the contract will expire at the end of this month on its own .\nelsa villarreal\n03 / 15 / 2001 02 : 42 pm\nto : amelia alland / hou / ect @ ect , cheryl dudley / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : exxon company , usa global # 96035668 / sitara # 212225\nplease prepare and send a termination letter by tomorrow march 16 , 2001 on\nthe above referenced deal . houston pipe line company has not renegotiated a\nprice and have no interest in buying the gas on an evergreen basis . it is my\nunderstanding that we need to notify them within 10 days of the end of the\ndelivery period\n. if you need any additional information or have any questions , please\ncontact me at 35656 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.485+0000", "entityId": 4230, "properties": {"text": "Subject: re : exxon company , usa global # 96035668 / sitara # 212225\nin response to cheryl ' s note , in looking at a copy of a confirmation letter confirming the proposed agreement reached on march 1 , 2000 to be effective april 1 , 2000 through march 31 , 2001 , there is evergreen language .\na termination letter is being prepared to be faxed to exxon with an original to follow for their records .\ncheryl , this gtc is different from the ones we usually see in that hpl required signatures from both parties executed by exxon on 3 / 30 / 00 and hpl on 8 / 21 / 00 .\nif you have any questions , please call me at x 35231 .\nthanks , kim\ncheryl dudley\n03 / 16 / 2001 08 : 58 am\nto : elsa villarreal / hou / ect @ ect\ncc : amelia alland / hou / ect @ ect , daren j farmer / hou / ect @ ect , kimberlee a bennick / hou / ect @ ect\nsubject : re : exxon company , usa global # 96035668 / sitara # 212225\ni have re - checked sitara & verified that the above deal was a term , firm deal . this resulted in a gtc purchase firm contract being set - up in the global contracts system . the term of the gtc was set as the term of the deal ( 4 / 1 / 00 thru 3 / 31 / 01 ) with no evergreen , meaning that the contract will expire at the end of this month .\nto the best of my knowledge , all gtc purchase firms have the same language & they do not have evergreen . they expire at the end of the primary term .\nso , unless exxon negotiated a deal with different , special language to allow for evergreen & included something about a \" 10 day notification \" to terminate , there isn ' t any reason to \" terminate \" this contract .\nif this is the case , please advise . otherwise , i don ' t think we need to do anything . the contract will expire at the end of this month on its own .\nelsa villarreal\n03 / 15 / 2001 02 : 42 pm\nto : amelia alland / hou / ect @ ect , cheryl dudley / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : exxon company , usa global # 96035668 / sitara # 212225\nplease prepare and send a termination letter by tomorrow march 16 , 2001 on the above referenced deal . houston pipe line company has not renegotiated a price and have no interest in buying the gas on an evergreen basis . it is my understanding that we need to notify them within 10 days of the end of the delivery period\n. if you need any additional information or have any questions , please contact me at 35656 . thanks . emv\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.489+0000", "entityId": 4231, "properties": {"text": "Subject: re : exxon company , usa global # 96035668 / sitara # 212225\ni have re - checked sitara & verified that the above deal was a term , firm deal . this resulted in a gtc purchase firm contract being set - up in the global contracts system . the term of the gtc was set as the term of the deal ( 4 / 1 / 00 thru 3 / 31 / 01 ) with no evergreen , meaning that the contract will expire at the end of this month .\nto the best of my knowledge , all gtc purchase firms have the same language & they do not have evergreen . they expire at the end of the primary term .\nso , unless exxon negotiated a deal with different , special language to allow for evergreen & included something about a \" 10 day notification \" to terminate , there isn ' t any reason to \" terminate \" this contract .\nif this is the case , please advise . otherwise , i don ' t think we need to do anything . the contract will expire at the end of this month on its own .\nelsa villarreal\n03 / 15 / 2001 02 : 42 pm\nto : amelia alland / hou / ect @ ect , cheryl dudley / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect\nsubject : exxon company , usa global # 96035668 / sitara # 212225\nplease prepare and send a termination letter by tomorrow march 16 , 2001 on the above referenced deal . houston pipe line company has not renegotiated a price and have no interest in buying the gas on an evergreen basis . it is my understanding that we need to notify them within 10 days of the end of the delivery period\n. if you need any additional information or have any questions , please contact me at 35656 . thanks . emv", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.494+0000", "entityId": 4232, "properties": {"text": "Subject: hoston hoop - it - up 6 weeks away !\ndear daren :\ndid you mark on your sporting event calendar to be in houston on may 5 th -\n6 th at greenspoint mall for the largest 3 - on - 3 basketball action in the\ncountry ? ? ? with less than 6 weeks until the entry deadline of april 25 th , the\nhoop - it - up staff is gearing up and coming to town !\nyou should have received your entry form if you have played in the houston\nevent in the past but if not , please contact our local hotline at\n713 - 521 - 4535 and our representative will take care of you right away . ? you\ncan also visit any houston - area foot locker or army recruiting station to\npick up an entry form right there on the spot . ? if you ' d like to enter even\nfaster , register online at www . hoopitup . com and waste no time at all getting\nin on the action . ?\nagain , don ' t get left out of the game . . . call our hotline at 713 - 521 - 4535 for\nmore information or log on to our website at www . hoopitup . com !\nno excuses . . . get into the game ! ! !\nspecial thanks to our national sponsors for helping bring the 2001 hoop - it - up\ntour to your city !\ngatorade ? ? u . s . army ? ? slim jim ? ? southwest airlines ? ? foot locker", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.498+0000", "entityId": 4233, "properties": {"text": "Subject: hoston hoop - it - up 6 weeks away !\ndear daren :\ndid you mark on your sporting event calendar to be in houston on may 5 th - 6 th at greenspoint mall for the largest 3 - on - 3 basketball action in the country ? with less than 6 weeks until the entry deadline of april 25 th , the hoop - it - up staff is gearing up and coming to town !\nyou should have received your entry form if you have played in the houston event in the past but if not , please contact our local hotline at 713 - 521 - 4535 and our representative will take care of you right away . you can also visit any houston - area foot locker or army recruiting station to pick up an entry form right there on the spot . if you ' d like to enter even faster , register online at www . hoopitup . com and waste no time at all getting in on the action .\nagain , don ' t get left out of the game . . . call our hotline at 713 - 521 - 4535 for more information or log on to our website at www . hoopitup . com !\nno excuses . . . get into the game ! ! !\nspecial thanks to our national sponsors for helping bring the 2001 hoop - it - up tour to your city !\ngatorade u . s . army slim jim southwest airlines foot locker", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.503+0000", "entityId": 4234, "properties": {"text": "Subject: re : noms / actual flow for 03 / 15\nwe agree\n\" eileen ponton \" on 03 / 16 / 2001 10 : 11 : 53 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 15\ndate nom flow - mcf flow - mmbtu\n3 / 15 60 , 000 59 , 386 60 , 989\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.507+0000", "entityId": 4235, "properties": {"text": "Subject: hpl nom for march 17 , 2001\n( see attached file : hplno 317 . xls )\n- hplno 317 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.512+0000", "entityId": 4236, "properties": {"text": "Subject: re : noms / actual flow for 03 / 15\nwe agree\n\" eileen ponton \" on 03 / 16 / 2001 10 : 11 : 53 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 15\ndate nom flow - mcf flow - mmbtu\n3 / 15 60 , 000 59 , 386 60 , 989\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.516+0000", "entityId": 4237, "properties": {"text": "Subject: hpl nom for march 17 , 2001\n( see attached file : hplno 317 . xls )\n- hplno 317 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.521+0000", "entityId": 4238, "properties": {"text": "Subject: wellhead adjustments\nthe attached spreadsheet reflects adjustments to wellhead meters effective 3 / 16 / 01 . the nominations were changed to volumes in the \" to \" column .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.525+0000", "entityId": 4239, "properties": {"text": "Subject: wellhead adjustments\nthe attached spreadsheet reflects adjustments to wellhead meters effective\n3 / 16 / 01 . the nominations were changed to volumes in the \" to \" column .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.529+0000", "entityId": 4240, "properties": {"text": "Subject: bayer - march 2001 volumes\njust want to make sure volumes are allocated to two different tickets correctly for march :\nsitara - 572910 - gets 50 , 000 mmbtu total for the month . . . . after 50 , 000 on this ticket , all remaining volumes go to . . .\nsitara 643510 - the swing ticket\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.534+0000", "entityId": 4241, "properties": {"text": "Subject: bayer - march 2001 volumes\njust want to make sure volumes are allocated to two different tickets\ncorrectly for march :\nsitara - 572910 - gets 50 , 000 mmbtu total for the month . . . . after 50 , 000 on\nthis ticket , all remaining volumes go to . . .\nsitara 643510 - the swing ticket\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.538+0000", "entityId": 4242, "properties": {"text": "Subject: base gas roll for april 01\nthe texas desk has requested that we run the base gas roll tonight , 3 / 19 for april 2001 production\nthanks\ngg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.543+0000", "entityId": 4243, "properties": {"text": "Subject: base gas roll for april 01\nthe texas desk has requested that we run the base gas roll tonight , 3 / 19 for\napril 2001 production\nthanks\ngg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.548+0000", "entityId": 4244, "properties": {"text": "Subject: first delivery - rodessa operating co .\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.553+0000", "entityId": 4245, "properties": {"text": "Subject: first delivery - rodessa operating co .\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.557+0000", "entityId": 4246, "properties": {"text": "Subject: re : fw : feb - 01 invoice\ndaren - did we have a purchase from beaumont methonal on 2 / 9 ? i show a deal of 5 . 000 on deal 611178 . i confirmed a total of 13 . 000 ( deal 603107 ) for that day . were we buying back 5 . 000 or was the deal reduced to 13000 ?\naimee\nfrom : tess ray / enron @ enronxgate on 03 / 19 / 2001 08 : 51 am\nto : aimee lannou / hou / ect @ ect\ncc : buddy majorwitz / hou / ect @ ect\nsubject : re : fw : feb - 01 invoice\nok thanks ! will be there shortly . also , joanie received a call from beaumont stating that there is a sale to hpl on 2 / 9 for 5 , 000 mmbtu . this was reflected on the supply draft and buddy majorrwitz looked into this before he / we released invoice and said that there were no sales to hpl from beaumont . do you have any support or documentation re : any / all 02 / 01 prod . sales to hpl ? if so , can i also get a copy of that support to fax to customer ?\n- - - - - original message - - - - -\nfrom : lannou , aimee\nsent : monday , march 19 , 2001 8 : 45 am\nto : ray , tess\nsubject : re : fw : feb - 01 invoice\nmy location is 3507 f .\nfrom : tess ray / enron @ enronxgate on 03 / 19 / 2001 07 : 48 am\nto : aimee lannou / hou / ect @ ect\ncc : buddy majorwitz / hou / ect @ ect , joanie h ngo / hou / ect @ ect\nsubject : re : fw : feb - 01 invoice\nok , thanks ! can i get a copy of your support so that i can fax to customer this a . m . ? please let me know your location .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : lannou , aimee\nsent : friday , march 16 , 2001 4 : 10 pm\nto : ray , tess\nsubject : re : fw : feb - 01 invoice\ni still handle meter 1428 . i checked my notes for 2 / 13 . there was an intraday change from 18 . 000 to 0 . when it was changed to 0 , the meter had already flowed 3 . 811 . it is a valid volume . if you have anymore questions , please let me know .\naimee\nfrom : tess ray / enron @ enronxgate on 03 / 16 / 2001 03 : 53 pm\nto : aimee lannou / hou / ect @ ect\ncc : buddy majorwitz / hou / ect @ ect , joanie h ngo / hou / ect @ ect\nsubject : fw : feb - 01 invoice\naimee -\nper conversation with rosa brown and thu ( in volumes management , beaumont methanol is a swing deal , by which the gas sales allocations are handled by the scheduletr . thu indicated that you were the scheduler for meter # 981428 .\ndo you still handle the sales allocations for hpl meter # 981428 ? if so , can you confirm 02 - 01 sales ( on hpl , meter # 981428 . , sales deal # 603107 ) , to beaumont methanol ( which we ' ve invoiced them ) , vs . chyral hankins ' e - mial to buddy majorwitz below ? the only date that is really in question is sales for flow date 02 - 13 - 01 ( she reflects noms of 0 vs . the 3 , 811 mmbtu that we invoiced them ) .\nthanks ,\ntess ray\n- - - - - original message - - - - -\nfrom : ngo , joanie\nsent : friday , march 16 , 2001 3 : 21 pm\nto : ray , tess\nsubject : feb - 01 invoice\ntess , can you follow up on this and let me know if you have any questions . thank you !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joanie h ngo / hou / ect on 03 / 16 / 2001 03 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n? ? z 5 ? ? j / ? 3 oi ? yr ? ? < m 8 . ? _ _ : / ? s ? : ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.562+0000", "entityId": 4247, "properties": {"text": "Subject: re : fw : feb - 01 invoice\ndaren - did we have a purchase from beaumont methonal on 2 / 9 ? i show a deal\nof 5 . 000 on deal 611178 . i confirmed a total of 13 . 000 ( deal 603107 ) for\nthat day . were we buying back 5 . 000 or was the deal reduced to 13000 ?\naimee\nfrom : tess ray / enron @ enronxgate on 03 / 19 / 2001 08 : 51 am\nto : aimee lannou / hou / ect @ ect\ncc : buddy majorwitz / hou / ect @ ect\nsubject : re : fw : feb - 01 invoice\nok thanks ! will be there shortly . also , joanie received a call from beaumont\nstating that there is a sale to hpl on 2 / 9 for 5 , 000 mmbtu . this was\nreflected on the supply draft and buddy majorrwitz looked into this before\nhe / we released invoice and said that there were no sales to hpl from\nbeaumont . do you have any support or documentation re : any / all 02 / 01 prod .\nsales to hpl ? if so , can i also get a copy of that support to fax to\ncustomer ?\n- - - - - original message - - - - -\nfrom : lannou , aimee\nsent : monday , march 19 , 2001 8 : 45 am\nto : ray , tess\nsubject : re : fw : feb - 01 invoice\nmy location is 3507 f .\nfrom : tess ray / enron @ enronxgate on 03 / 19 / 2001 07 : 48 am\nto : aimee lannou / hou / ect @ ect\ncc : buddy majorwitz / hou / ect @ ect , joanie h ngo / hou / ect @ ect\nsubject : re : fw : feb - 01 invoice\nok , thanks ! can i get a copy of your support so that i can fax to customer\nthis a . m . ? please let me know your location .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : lannou , aimee\nsent : friday , march 16 , 2001 4 : 10 pm\nto : ray , tess\nsubject : re : fw : feb - 01 invoice\ni still handle meter 1428 . i checked my notes for 2 / 13 . there was an\nintraday change from 18 . 000 to 0 . when it was changed to 0 , the meter had\nalready flowed 3 . 811 . it is a valid volume . if you have anymore questions ,\nplease let me know .\naimee\nfrom : tess ray / enron @ enronxgate on 03 / 16 / 2001 03 : 53 pm\nto : aimee lannou / hou / ect @ ect\ncc : buddy majorwitz / hou / ect @ ect , joanie h ngo / hou / ect @ ect\nsubject : fw : feb - 01 invoice\naimee \u0001 )\nper conversation with rosa brown and thu ( in volumes management , beaumont\nmethanol is a swing deal , by which the gas sales allocations are handled by\nthe scheduletr . thu indicated that you were the scheduler for meter # 981428 .\ndo you still handle the sales allocations for hpl meter # 981428 ? if so , can\nyou confirm 02 - 01 sales ( on hpl , meter # 981428 . , sales deal # 603107 ) , to\nbeaumont methanol ( which we \u0001 , ve invoiced them ) , vs . chyral hankins \u0001 , e - mial to\nbuddy majorwitz below ? the only date that is really in question is sales for\nflow date 02 - 13 - 01 ( she reflects noms of 0 vs . the 3 , 811 mmbtu that we\ninvoiced them ) .\nthanks ,\ntess ray\n- - - - - original message - - - - -\nfrom : ngo , joanie\nsent : friday , march 16 , 2001 3 : 21 pm\nto : ray , tess\nsubject : feb - 01 invoice\ntess , can you follow up on this and let me know if you have any questions .\nthank you !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joanie h ngo / hou / ect on 03 / 16 / 2001 03 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\no ? z 5 ? ? j / ? 3 oi \u0001 pyr \u0007 ? < m 8 . ? _ _ : / \" s - : ? ~", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.566+0000", "entityId": 4248, "properties": {"text": "Subject: deal 338634 meter 985077\nthe above deal was in the system for 7 / 1 / 00 to 12 / 31 / 00 . we have had\ncontinued flow on the following dates . . .\n1 / 4 / 01 to 1 / 8 / 01\n1 / 29 / 01\n2 / 7 / 01 to 2 / 28 / 01\nthe total flow has been 2804 .\ncan this deal be extended to cover the january and february flow ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.571+0000", "entityId": 4249, "properties": {"text": "Subject: re : deal 338634 meter 985077\ndaren ,\nthis has not yet shown up in unify . did you use the same deal ticket ?\ndaren j farmer @ ect\n03 / 20 / 2001 10 : 53 am\nto : michael olsen / na / enron @ enron\ncc :\nsubject : re : deal 338634 meter 985077\ndone .\nmichael olsen @ enron\n03 / 20 / 2001 10 : 48 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : deal 338634 meter 985077\nthe above deal was in the system for 7 / 1 / 00 to 12 / 31 / 00 . we have had\ncontinued flow on the following dates . . .\n1 / 4 / 01 to 1 / 8 / 01\n1 / 29 / 01\n2 / 7 / 01 to 2 / 28 / 01\nthe total flow has been 2804 .\ncan this deal be extended to cover the january and february flow ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.578+0000", "entityId": 4250, "properties": {"text": "Subject: central power & light\ndaren - was there a deal for 5 . 000 at cp & l on feb . 21 ? cp & l shows 5 . 000 , but\ni have looked in mops and there is not a deal . can you verify whether or not\nthere was a deal for that day ? thanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 20 / 2001 01 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebecca griffin @ enron\n03 / 20 / 2001 01 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : central power & light\naimee ,\ni received a call from cp & l about the february 2001 production invoice . they\nare showing 5 , 000 mmbtu on february 21 for hpl . we are not showing anything\nfor hpl on that day . could you verify if this is correct ?\nthanks for your help .\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.583+0000", "entityId": 4251, "properties": {"text": "Subject: deal tickets\ndaren i have three meters that have flow in feb but no deal .\n1 . meter 0416 flowed the whole month 1 - 28 . this our ols friends at pawnee\ngas plant fuel . last deal used was 289396 could you extend it .\n2 . meter 1601 had flow on the 15 & 18 . this is southern union lockhart . last\ndeal used with them was 285350 hpl or 259208 ena .\n3 . meter 1598 had flow the whole month 1 - 28 . this is mt enterprise c / g -\npanther . the last deal used is 284 620\ni ' ll get accounting arrangements for these when you let me know the deal\nstatus and get them cleared up . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.588+0000", "entityId": 4252, "properties": {"text": "Subject: deal tickets\ndaren i have three meters that have flow in feb but no deal .\n1 . meter 0416 flowed the whole month 1 - 28 . this our ols friends at pawnee gas plant fuel . last deal used was 289396 could you extend it .\n2 . meter 1601 had flow on the 15 & 18 . this is southern union lockhart . last deal used with them was 285350 hpl or 259208 ena .\n3 . meter 1598 had flow the whole month 1 - 28 . this is mt enterprise c / g - panther . the last deal used is 284 620\ni ' ll get accounting arrangements for these when you let me know the deal status and get them cleared up . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.595+0000", "entityId": 4253, "properties": {"text": "Subject: central power & light\ndaren - was there a deal for 5 . 000 at cp & l on feb . 21 ? cp & l shows 5 . 000 , but i have looked in mops and there is not a deal . can you verify whether or not there was a deal for that day ? thanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 20 / 2001 01 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebecca griffin @ enron\n03 / 20 / 2001 01 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : central power & light\naimee ,\ni received a call from cp & l about the february 2001 production invoice . they are showing 5 , 000 mmbtu on february 21 for hpl . we are not showing anything for hpl on that day . could you verify if this is correct ?\nthanks for your help .\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.604+0000", "entityId": 4254, "properties": {"text": "Subject: re : deal 338634 meter 985077\ndaren ,\nthis has not yet shown up in unify . did you use the same deal ticket ?\ndaren j farmer @ ect\n03 / 20 / 2001 10 : 53 am\nto : michael olsen / na / enron @ enron\ncc :\nsubject : re : deal 338634 meter 985077\ndone .\nmichael olsen @ enron\n03 / 20 / 2001 10 : 48 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : deal 338634 meter 985077\nthe above deal was in the system for 7 / 1 / 00 to 12 / 31 / 00 . we have had continued flow on the following dates . . .\n1 / 4 / 01 to 1 / 8 / 01\n1 / 29 / 01\n2 / 7 / 01 to 2 / 28 / 01\nthe total flow has been 2804 .\ncan this deal be extended to cover the january and february flow ?\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.610+0000", "entityId": 4255, "properties": {"text": "Subject: deal 338634 meter 985077\nthe above deal was in the system for 7 / 1 / 00 to 12 / 31 / 00 . we have had continued flow on the following dates . . .\n1 / 4 / 01 to 1 / 8 / 01\n1 / 29 / 01\n2 / 7 / 01 to 2 / 28 / 01\nthe total flow has been 2804 .\ncan this deal be extended to cover the january and february flow ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.614+0000", "entityId": 4256, "properties": {"text": "Subject: re : boat\ni believe the boat is 18 to 19 ft long and i do have a boat cover . i will\nbring the boat information with me tomorrow for anymore questions . i\nrecently took it to the shop to get it ready for this season and the salesman\nsaid it looked brand new . it has a brand new battery and everything runs\nperfectly . call me if you want to take a look at it .\nbriant\n66459", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.619+0000", "entityId": 4257, "properties": {"text": "Subject: spring savings certificate - take 30 % off\nsave 30 % when you use our customer appreciation spring savings\ncertificate at foot locker , lady foot locker , kids foot locker and at\nour online stores !\nwelcome to our customer appreciation spring savings certificate !\nuse the special certificate below and receive 30 % off your purchases either\nin our stores or online . hurry ! this 4 - day sale begins thursday , march 22 and\nends sunday , march 25 .\nshare the savings today and e - mail this offer to your friends . many items\nalready are reduced and the 30 % discount is taken off the lowest sale price .\nclick below to print your customer appreciation spring savings certificate .\nyou must present this coupon at any foot locker , lady foot locker or kids\nfoot locker store in the u . s . foot locker canada is not participating in\nthis program .\nready , set , save !\nour spring savings discount will automatically appear when you use the links\nbelow or type camlem 21 into the promotion code box during checkout .\nfootlocker . com certificate code : camlem 21\nladyfootlocker . com certificate code : camlem 21\nkidsfootlocker . com certificate code : camlem 21\nremember , returns are hassle - free . simply bring your items to any of our\nstores nationwide or through the mail .\ndon ' t be left out - register today to learn about our new products , promotions ,\nevents and other specials . simply click below .\nterms and conditions . some exclusions apply , please see manager for complete\ndetails . certificate must be presented at the time of purchase and cannot be\nused in conjunction with any other discount offer or associate benefit . not\nredeemable for cash . applicable taxes must be paid by bearer . cannot be\napplied to prior purchases or to gift card purchases . void where prohibited ,\nlicensed or regulated . catalog exclusions apply . valid thursday , 3 / 22 / 01\nthrough sunday , 3 / 25 / 01 . foot locker canada will not participate in this\nprogram .\nif you do not wish to receive future emails please click below to\nunsubscribe :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.623+0000", "entityId": 4258, "properties": {"text": "Subject: re : boat\ni believe the boat is 18 to 19 ft long and i do have a boat cover . i will bring the boat information with me tomorrow for anymore questions . i recently took it to the shop to get it ready for this season and the salesman said it looked brand new . it has a brand new battery and everything runs perfectly . call me if you want to take a look at it .\nbriant\n66459", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.628+0000", "entityId": 4259, "properties": {"text": "Subject: noms / actual flow for 3 / 19 / 01\nwe agree with the nom . for 3 / 19 / 01 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david avila / lsp / enserch / us on 03 / 20 / 2001\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 03 / 20 / 2001 10 : 05 : 59 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 19 / 01\ndate nom mcf mmbtu\n3 / 19 / 01 60 , 000 59 , 944 61 , 562\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.632+0000", "entityId": 4260, "properties": {"text": "Subject: hpl nom for march 21 , 2001\n( see attached file : hplno 321 . xls )\n- hplno 321 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.637+0000", "entityId": 4261, "properties": {"text": "Subject: re : noms / actual flow for 3 / 19 / 01\nwe agree\n\" eileen ponton \" on 03 / 20 / 2001 10 : 05 : 59 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 19 / 01\ndate nom mcf mmbtu\n3 / 19 / 01 60 , 000 59 , 944 61 , 562\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.641+0000", "entityId": 4262, "properties": {"text": "Subject: ces changes\ngulf energy pipeline\ntejas plant from 81 to 52\ntrevino plant from 4890 to 1361\ncomiats south from 403 to 28\ngulf plains\nfrom 10939 to 7876\ncorpus christie\nvirginia from 379 to 165\nmidcon\ngreta tom oconner from 2243 to 1392", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.646+0000", "entityId": 4263, "properties": {"text": "Subject: noms / actual flow for 3 / 19 / 01\nwe agree with the nom . for 3 / 19 / 01 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david avila / lsp / enserch / us on 03 / 20 / 2001\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 03 / 20 / 2001 10 : 05 : 59 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 19 / 01\ndate nom mcf mmbtu\n3 / 19 / 01 60 , 000 59 , 944 61 , 562\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.651+0000", "entityId": 4264, "properties": {"text": "Subject: hpl nom for march 21 , 2001\n( see attached file : hplno 321 . xls )\n- hplno 321 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.656+0000", "entityId": 4265, "properties": {"text": "Subject: re : noms / actual flow for 3 / 19 / 01\nwe agree\n\" eileen ponton \" on 03 / 20 / 2001 10 : 05 : 59 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 19 / 01\ndate nom mcf mmbtu\n3 / 19 / 01 60 , 000 59 , 944 61 , 562\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.661+0000", "entityId": 4266, "properties": {"text": "Subject: base gas roll for april 01\ndue to some unscheduled problems . . . . . the base gas roll for april was not completed last night .\nit will be run tonight however .\nthanks\ngg\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george grant / hou / ect on 03 / 20 / 2001 01 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge grant\n03 / 19 / 2001 10 : 00 am\nto : luis aybar / enron @ enronxgate\ncc : vance l taylor / enron @ enronxgate , daren j farmer / hou / ect @ ect , robert cotten / hou / ect @ ect , edward terry / hou / ect @ ect\nsubject : base gas roll for april 01\nthe texas desk has requested that we run the base gas roll tonight , 3 / 19 for april 2001 production\nthanks\ngg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.666+0000", "entityId": 4267, "properties": {"text": "Subject: base gas roll for april 01\ndue to some unscheduled problems . . . . . the base gas roll for april was not\ncompleted last night .\nit will be run tonight however .\nthanks\ngg\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george grant / hou / ect on 03 / 20 / 2001 01 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge grant\n03 / 19 / 2001 10 : 00 am\nto : luis aybar / enron @ enronxgate\ncc : vance l taylor / enron @ enronxgate , daren j farmer / hou / ect @ ect , robert\ncotten / hou / ect @ ect , edward terry / hou / ect @ ect\nsubject : base gas roll for april 01\nthe texas desk has requested that we run the base gas roll tonight , 3 / 19 for\napril 2001 production\nthanks\ngg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.672+0000", "entityId": 4268, "properties": {"text": "Subject: mobil beaumont\nbrian nichols of exxonmobil confirmed that they will accept 30 , 000 / d of midcon ' s gas on hpl starting tomorrow .\nthey want to leave 10 , 000 / d flowing on midcon .\ni guess this goes on through april 5 ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.677+0000", "entityId": 4269, "properties": {"text": "Subject: mobil beaumont\nbrian nichols of exxonmobil confirmed that they will accept 30 , 000 / d of\nmidcon ' s gas on hpl starting tomorrow .\nthey want to leave 10 , 000 / d flowing on midcon .\ni guess this goes on through april 5 ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.684+0000", "entityId": 4270, "properties": {"text": "Subject: urgent\ned has requested that we compile a list this morning of all parties / points\nwhich we owe gas to , in the event that we need to find a home for excess\nvolumes today . please email me a list of any meters / contracts that you are\naware of . i am compiling an interim list based upon the rtu variance report\nfor march , however , i don ' t want to rely on this list as you may be engaged\nin balancing at meters with variances .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.688+0000", "entityId": 4271, "properties": {"text": "Subject: rough list\ni have compiled a list based on the rtu variance for current mo . , and the\nimbalance report . please verify , add or update the information based on your\ndesk ' s activities .\nfile location : o : logistics \\ admin info \\ mtdbalo 3 - 01 . xls . please let me know\nif you have trouble accessing the file , or have any questions .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.695+0000", "entityId": 4272, "properties": {"text": "Subject: imbalance gas\njust in case worse comes to worse .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 03 / 21 / 2001 11 : 29\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : juliann kemp / enron @ enronxgate on 03 / 21 / 2001 10 : 39 am\nto : mary poorman / na / enron @ enron\ncc :\nsubject : imbalance gas\nmary we just have two . thanks - julie\ncontract 012 - 87794 - 02 - 001 ( delivery )\nmeter 981506\nwe owe them 21 , 771\n981244 ( delivery ) koch refinery\nwe owe them 16 , 810", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.705+0000", "entityId": 4273, "properties": {"text": "Subject: meter 980070\ndaren ,\nthis meter has recorded flow for the following days with no deal .\n10 - 29 - 99 1300\n10 - 30 - 99 23\n10 - 31 - 99 23\n2 - 06 - 01 ( 4222 )\nwe used deal 83388 last january to write off this meter ' s hpl strangers\nbalances . how should this flow be handled ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.710+0000", "entityId": 4274, "properties": {"text": "Subject: meter 980070\ndaren ,\nthis meter has recorded flow for the following days with no deal .\n10 - 29 - 99 1300\n10 - 30 - 99 23\n10 - 31 - 99 23\n2 - 06 - 01 ( 4222 )\nwe used deal 83388 last january to write off this meter ' s hpl strangers balances . how should this flow be handled ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.715+0000", "entityId": 4275, "properties": {"text": "Subject: imbalance gas\njust in case worse comes to worse .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 03 / 21 / 2001 11 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : juliann kemp / enron @ enronxgate on 03 / 21 / 2001 10 : 39 am\nto : mary poorman / na / enron @ enron\ncc :\nsubject : imbalance gas\nmary we just have two . thanks - julie\ncontract 012 - 87794 - 02 - 001 ( delivery )\nmeter 981506\nwe owe them 21 , 771\n981244 ( delivery ) koch refinery\nwe owe them 16 , 810", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.720+0000", "entityId": 4276, "properties": {"text": "Subject: rough list\ni have compiled a list based on the rtu variance for current mo . , and the imbalance report . please verify , add or update the information based on your desk ' s activities .\nfile location : o : logistics \\ admin info \\ mtdbalo 3 - 01 . xls . please let me know if you have trouble accessing the file , or have any questions .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.724+0000", "entityId": 4277, "properties": {"text": "Subject: urgent\ned has requested that we compile a list this morning of all parties / points which we owe gas to , in the event that we need to find a home for excess volumes today . please email me a list of any meters / contracts that you are aware of . i am compiling an interim list based upon the rtu variance report for march , however , i don ' t want to rely on this list as you may be engaged in balancing at meters with variances .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.729+0000", "entityId": 4278, "properties": {"text": "Subject: re : boat\ni checked the boat and it is 17 ft , 7 in . long , it is a capri model # 1750 ch ,\nit has a am / fm cass . the motor is 3 . 0 l mercruiser alpha sterndrive ( 135 hp )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.734+0000", "entityId": 4279, "properties": {"text": "Subject: spring savings certificate - take 30 % off\nsave 30 % when you use our customer appreciation spring savings\ncertificate at foot locker , lady foot locker , kids foot locker and at\nour online stores !\nwelcome to our customer appreciation spring savings certificate !\nuse the special certificate below and receive 30 % off your purchases either in our stores or online . hurry ! this 4 - day sale begins thursday , march 22 and ends sunday , march 25 .\nshare the savings today and e - mail this offer to your friends . many items already are reduced and the 30 % discount is taken off the lowest sale price .\nclick below to print your customer appreciation spring savings certificate . you must present this coupon at any foot locker , lady foot locker or kids foot locker store in the u . s . foot locker canada is not participating in this program .\nready , set , save !\nour spring savings discount will automatically appear when you use the links below or type camlem 21 into the promotion code box during checkout .\nfootlocker . com certificate code : camlem 21\nladyfootlocker . com certificate code : camlem 21\nkidsfootlocker . com certificate code : camlem 21\nremember , returns are hassle - free . simply bring your items to any of our stores nationwide or through the mail .\ndon ' t be left out - register today to learn about our new products , promotions , events and other specials . simply click below .\nterms and conditions . some exclusions apply , please see manager for complete details . certificate must be presented at the time of purchase and cannot be used in conjunction with any other discount offer or associate benefit . not redeemable for cash . applicable taxes must be paid by bearer . cannot be applied to prior purchases or to gift card purchases . void where prohibited , licensed or regulated . catalog exclusions apply . valid thursday , 3 / 22 / 01 through sunday , 3 / 25 / 01 . foot locker canada will not participate in this program .\nif you do not wish to receive future emails please click below to\nunsubscribe :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.738+0000", "entityId": 4280, "properties": {"text": "Subject: re : boat\ni checked the boat and it is 17 ft , 7 in . long , it is a capri model # 1750 ch , it has a am / fm cass . the motor is 3 . 0 l mercruiser alpha sterndrive ( 135 hp )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.743+0000", "entityId": 4281, "properties": {"text": "Subject: re : noms / actual flow for 03 / 20 / 01\nwe agree with the nominations .\n\" eileen ponton \" on 03 / 21 / 2001 11 : 08 : 26 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 20 / 01\nnom mcf mmbtu\n50 , 000 46 , 771 48 , 034\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.748+0000", "entityId": 4282, "properties": {"text": "Subject: hpl nom for march 22 , 2001\n( see attached file : hplno 322 . xls )\n- hplno 322 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.752+0000", "entityId": 4283, "properties": {"text": "Subject: re : noms / actual flow for 03 / 20 / 01\nwe agree with the nominations .\n\" eileen ponton \" on 03 / 21 / 2001 11 : 08 : 26 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 03 / 20 / 01\nnom mcf mmbtu\n50 , 000 46 , 771 48 , 034\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.757+0000", "entityId": 4284, "properties": {"text": "Subject: hpl nom for march 22 , 2001\n( see attached file : hplno 322 . xls )\n- hplno 322 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.762+0000", "entityId": 4285, "properties": {"text": "Subject: april wellhead production estimate\ndaren ,\nthis didn ' t help as i am unable to access any information on the file .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 04 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 03 / 21 / 2001 02 : 42 pm\nto : robert cotten / hou / ect @ ect\ncc : melissa graves / enron @ enronxgate\nsubject : april wellhead production estimate\nbob ,\nplease see the attached file calculating an estimate of wellhead production for the month of april , 2001 . please be advised that this is a preliminary estimate as i have yet to meet with the gas buyers and i have not received any customer nominations . our pre - nom meeting is on tomorrow at 3 : 00 p . m .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.767+0000", "entityId": 4286, "properties": {"text": "Subject: re : fw : first delivery - rodessa operating co .\ndaren ,\ni talked to vance and he said it was the same well that he nominated during bidweek . i will ask julie to change the price to gas daily . thanks .\nbob\ndaren j farmer\n03 / 21 / 2001 01 : 18 pm\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : fw : first delivery - rodessa operating co .\nbob ,\ni guess you need to make sure that this is the same well that they nominated during bidweek . if it is , then we do need to change the price to gd . if it is a new well behind the meter , you can either create a new deal ticket for this piece , or create a pricing tier on the old ticket .\nd\nenron north america corp . from : robert cotten 03 / 21 / 2001 11 : 42 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : fw : first delivery - rodessa operating co .\ndaren ,\nplease read this memo and the one dated 2 / 21 / 01 from vance . he told me all new production should be entered at ifhsc . the deal in question is 634075 . do you want it changed to gas daily ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 11 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 03 / 19 / 2001 02 : 24 pm\nto : tom acton / corp / enron @ enron , robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , cynthia hakemack / hou / ect @ ect\nsubject : fw : first delivery - rodessa operating co .\ntom / bob ,\nthe following production is now on - line and a ticket should be created and entered into sitara based on the following :\ncounterparty meter volumes price period global no .\nhesco gathering co . , llc 9876 85 mmbtu / d 100 % gd less $ 0 . 17 3 / 13 - 3 / 31 96057368\nfyi , susan will create and submit a committed reserves firm ticket for the remaining term of the deal beginning with the month of april . additionally , this is a producer svcs . deal and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : buckley , esther\nsent : monday , march 19 , 2001 12 : 14 pm\nto : carriere , molly ; cernosek , clem ; consemiu , donna ; cook , robert ; camp , howard ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay , james ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ; walters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ; jones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan smith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p reinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ; cotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ; csikos , lisa ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ; acton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney , christy ; tisdale , earl ; farmer , daren\nsubject : first delivery - rodessa operating co .\nsee attached letter\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.771+0000", "entityId": 4287, "properties": {"text": "Subject: revisions - march wellhead estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 11 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n02 / 21 / 2001 12 : 15 pm\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , susan smith / hou / ect @ ect , melissa graves / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\nsubject : revisions - march wellhead estimate\nbob ,\nhere are some revisions to the march wellhead production estimate resulting from the pre - nom meeting held this morning .\nrevisions :\ncounterparty mtr no . prev nom curr nom sitara no .\nlouis dreyfus ( frmly costilla ) 9724 29 / d 4 , 000 / d 125895\nnorth central corp 9767 560 / d 0 139363\nnorth central corp 6296 1 , 637 / d 1 , 800 / d 136222\nprize energy resources 4965 78 / d 2 , 000 / d 131720\nbass enterprises ( frmly richardson ) 9807 7 , 025 / d 9 , 000 / d 141691\nswift energy 9636 34 / d 0 135664\ncrosstex energy 9858 8 , 637 / d 8 , 500 / d 500668\nnew production :\nwagner & brown , ltd . 6589 0 8 , 000 / d n / a\nthe houston exploration co . 9696 0 6 , 000 / d n / a\nstone energy corp 9696 0 4 , 000 / d n / a\nhesco gathering oil co . 9876 0 1 , 000 / d n / a\nwheeler operating co . 9879 0 1 , 000 / d n / a\nsafari production co . 4594 0 400 / d n / a\nhelmerich i ' d like for your sitara position to be consistent with the final number i ' ll provide to darren .\nthanks ,\nvlt\nx - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.776+0000", "entityId": 4288, "properties": {"text": "Subject: fw : first delivery - rodessa operating co .\ndaren ,\nplease read this memo and the one dated 2 / 21 / 01 from vance . he told me all new production should be entered at ifhsc . the deal in question is 634075 . do you want it changed to gas daily ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 11 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 03 / 19 / 2001 02 : 24 pm\nto : tom acton / corp / enron @ enron , robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , cynthia hakemack / hou / ect @ ect\nsubject : fw : first delivery - rodessa operating co .\ntom / bob ,\nthe following production is now on - line and a ticket should be created and entered into sitara based on the following :\ncounterparty meter volumes price period global no .\nhesco gathering co . , llc 9876 85 mmbtu / d 100 % gd less $ 0 . 17 3 / 13 - 3 / 31 96057368\nfyi , susan will create and submit a committed reserves firm ticket for the remaining term of the deal beginning with the month of april . additionally , this is a producer svcs . deal and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : buckley , esther\nsent : monday , march 19 , 2001 12 : 14 pm\nto : carriere , molly ; cernosek , clem ; consemiu , donna ; cook , robert ; camp , howard ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay , james ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ; walters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ; jones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan smith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p reinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ; cotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ; csikos , lisa ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ; acton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney , christy ; tisdale , earl ; farmer , daren\nsubject : first delivery - rodessa operating co .\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.781+0000", "entityId": 4289, "properties": {"text": "Subject: april wellhead production estimate\ndaren ,\nthis didn ' t help as i am unable to access any information on the file .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 04 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 03 / 21 / 2001 02 : 42 pm\nto : robert cotten / hou / ect @ ect\ncc : melissa graves / enron @ enronxgate\nsubject : april wellhead production estimate\nbob ,\nplease see the attached file calculating an estimate of wellhead production\nfor the month of april , 2001 . please be advised that this is a preliminary\nestimate as i have yet to meet with the gas buyers and i have not received\nany customer nominations . our pre - nom meeting is on tomorrow at 3 : 00 p . m .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.786+0000", "entityId": 4290, "properties": {"text": "Subject: re : fw : first delivery - rodessa operating co .\ndaren ,\ni talked to vance and he said it was the same well that he nominated during\nbidweek . i will ask julie to change the price to gas daily . thanks .\nbob\ndaren j farmer\n03 / 21 / 2001 01 : 18 pm\nto : robert cotten / hou / ect @ ect\ncc :\nsubject : re : fw : first delivery - rodessa operating co .\nbob ,\ni guess you need to make sure that this is the same well that they nominated\nduring bidweek . if it is , then we do need to change the price to gd . if it\nis a new well behind the meter , you can either create a new deal ticket for\nthis piece , or create a pricing tier on the old ticket .\nd\nenron north america corp .\nfrom : robert cotten 03 / 21 / 2001 11 : 42 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : fw : first delivery - rodessa operating co .\ndaren ,\nplease read this memo and the one dated 2 / 21 / 01 from vance . he told me all\nnew production should be entered at ifhsc . the deal in question is 634075 .\ndo you want it changed to gas daily ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 11 : 02\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 03 / 19 / 2001 02 : 24 pm\nto : tom acton / corp / enron @ enron , robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , donald p\nreinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa\ngraves / enron @ enronxgate , cynthia hakemack / hou / ect @ ect\nsubject : fw : first delivery - rodessa operating co .\ntom / bob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nhesco gathering co . , llc 9876 85 mmbtu / d 100 % gd less $ 0 . 17 3 / 13 - 3 / 31\n96057368\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of april . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : buckley , esther\nsent : monday , march 19 , 2001 12 : 14 pm\nto : carriere , molly ; cernosek , clem ; consemiu , donna ; cook , robert ; camp ,\nhoward ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay ,\njames ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ;\nwalters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ;\njones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan\nsmith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p\nreinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ;\ncotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ;\ncsikos , lisa ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ;\nacton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney ,\nchristy ; tisdale , earl ; farmer , daren\nsubject : first delivery - rodessa operating co .\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.791+0000", "entityId": 4291, "properties": {"text": "Subject: revisions - march wellhead estimate\ndaren ,\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 11 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvance l taylor\n02 / 21 / 2001 12 : 15 pm\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect @ ect , susan smith / hou / ect @ ect , melissa\ngraves / hou / ect @ ect , donald p reinhardt / hou / ect @ ect\nsubject : revisions - march wellhead estimate\nbob ,\nhere are some revisions to the march wellhead production estimate resulting\nfrom the pre - nom meeting held this morning .\nrevisions :\ncounterparty mtr no . prev nom curr nom sitara no .\nlouis dreyfus ( frmly costilla ) 9724 29 / d 4 , 000 / d 125895\nnorth central corp 9767 560 / d 0 139363\nnorth central corp 6296 1 , 637 / d 1 , 800 / d 136222\nprize energy resources 4965 78 / d 2 , 000 / d 131720\nbass enterprises ( frmly richardson ) 9807 7 , 025 / d 9 , 000 / d 141691\nswift energy 9636 34 / d 0 135664\ncrosstex energy 9858 8 , 637 / d 8 , 500 / d 500668\nnew production :\nwagner & brown , ltd . 6589 0 8 , 000 / d n / a\nthe houston exploration co . 9696 0 6 , 000 / d n / a\nstone energy corp 9696 0 4 , 000 / d n / a\nhesco gathering oil co . 9876 0 1 , 000 / d n / a\nwheeler operating co . 9879 0 1 , 000 / d n / a\nsafari production co . 4594 0 400 / d n / a\nhelmerich\ni ' d like for your sitara position to be consistent with the final number i ' ll\nprovide to darren .\nthanks ,\nvlt\nx - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.801+0000", "entityId": 4292, "properties": {"text": "Subject: fw : first delivery - rodessa operating co .\ndaren ,\nplease read this memo and the one dated 2 / 21 / 01 from vance . he told me all\nnew production should be entered at ifhsc . the deal in question is 634075 .\ndo you want it changed to gas daily ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 21 / 2001 11 : 02\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 03 / 19 / 2001 02 : 24 pm\nto : tom acton / corp / enron @ enron , robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , donald p\nreinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa\ngraves / enron @ enronxgate , cynthia hakemack / hou / ect @ ect\nsubject : fw : first delivery - rodessa operating co .\ntom / bob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes price period global no .\nhesco gathering co . , llc 9876 85 mmbtu / d 100 % gd less $ 0 . 17 3 / 13 - 3 / 31\n96057368\nfyi , susan will create and submit a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of april . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : buckley , esther\nsent : monday , march 19 , 2001 12 : 14 pm\nto : carriere , molly ; cernosek , clem ; consemiu , donna ; cook , robert ; camp ,\nhoward ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay ,\njames ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ;\nwalters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ;\njones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan\nsmith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p\nreinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ;\ncotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ;\ncsikos , lisa ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ;\nacton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney ,\nchristy ; tisdale , earl ; farmer , daren\nsubject : first delivery - rodessa operating co .\nsee attached letter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.808+0000", "entityId": 4293, "properties": {"text": "Subject: mobil beaumont - marol\nrebecca\nfor mobil in march , beginning on march 21 , hpl started delivering 30 , 000 / d for midcon ( just like we did in dec and jan , and maybe in feb too )\ncheck with daren farmer when you get ready to do the flash invoice on the first to confirm the midcon volume amounts and dates\nthanks ! ! ! ! !\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.813+0000", "entityId": 4294, "properties": {"text": "Subject: not as rough list\ni spoke to sabrae , we are cumulatively balanced with pge , cumulative and don ' t want to do anything volumetric at either meter . the nng oba is being reconciled , and they are really hesitant / reluctant to balance current month . florida can be paid back 5 m or more , it is being reconciled , but , sabrae is okay with paying back . this just in from mark mccoy , the oasis oba is flat as of today ' s gas day . that should hit the imb . report next week .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.817+0000", "entityId": 4295, "properties": {"text": "Subject: calpine daily gas nomination\nwe are still under the scheduled outage period and will bring the next unit\ndown @ midnight saturday 03 / 24 / 01 .\nthe following is our estimated burn until then . thanks\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.823+0000", "entityId": 4296, "properties": {"text": "Subject: mobil beaumont - marol\nrebecca\nfor mobil in march , beginning on march 21 , hpl started delivering 30 , 000 / d\nfor midcon ( just like we did in dec and jan , and maybe in feb too )\ncheck with daren farmer when you get ready to do the flash invoice on the\nfirst to confirm the midcon volume amounts and dates\nthanks ! ! ! ! !\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.827+0000", "entityId": 4297, "properties": {"text": "Subject: not as rough list\ni spoke to sabrae , we are cumulatively balanced with pge , cumulative and\ndon ' t want to do anything volumetric at either meter . the nng oba is being\nreconciled , and they are really hesitant / reluctant to balance current month .\nflorida can be paid back 5 m or more , it is being reconciled , but , sabrae is\nokay with paying back . this just in from mark mccoy , the oasis oba is flat\nas of today ' s gas day . that should hit the imb . report next week .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.832+0000", "entityId": 4298, "properties": {"text": "Subject: re : follow up\nmike ,\nsorry ,\nyes this is still on . i talked to everyone except daren . just did and he is\nfine with this approach .\ntoo many plates in the air .\nthanks\nbob\nmichael olsen\n03 / 22 / 2001 02 : 03 pm\nto : bob m hall / na / enron @ enron\ncc :\nsubject : follow up\nbob ,\ni wanted to just follow up with you about what we had discussed a couple weeks ago . we had briefly touched on the possibility of me rotating down with daren and working the off system scheduling .\ni was talking with daren last night and he had not heard anything about this . i plan to begin working with mark and mary next week to learn how to schedule these pipes . before we begin this , i just wanted to make sure that what we had discussed is still planned .\nthanks for your time .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.837+0000", "entityId": 4299, "properties": {"text": "Subject: net out with kinder morgan - beginning march 21 st\nmegan / kim - - -\nplease make a note that we did a deal with kinder morgan that nets out and\nshould not be billed or paid . the purchase deal ticket is 682244 @ hardy st .\n# 980068 & and the sale is 682229 @ mobil beaumont # 981040 for a volume of\n30 . 000 mmbtu .\nlet me know if you have any questions .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.842+0000", "entityId": 4300, "properties": {"text": "Subject: re : follow up\nmike ,\nsorry ,\nyes this is still on . i talked to everyone except daren . just did and he is\nfine with this approach .\ntoo many plates in the air .\nthanks\nbob\nmichael olsen\n03 / 22 / 2001 02 : 03 pm\nto : bob m hall / na / enron @ enron\ncc :\nsubject : follow up\nbob ,\ni wanted to just follow up with you about what we had discussed a couple\nweeks ago . we had briefly touched on the possibility of me rotating down\nwith daren and working the off system scheduling .\ni was talking with daren last night and he had not heard anything about\nthis . i plan to begin working with mark and mary next week to learn how to\nschedule these pipes . before we begin this , i just wanted to make sure that\nwhat we had discussed is still planned .\nthanks for your time .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.846+0000", "entityId": 4301, "properties": {"text": "Subject: net out with kinder morgan - beginning march 21 st\nmegan / kim - - -\nplease make a note that we did a deal with kinder morgan that nets out and should not be billed or paid . the purchase deal ticket is 682244 @ hardy st . # 980068 & and the sale is 682229 @ mobil beaumont # 981040 for a volume of 30 . 000 mmbtu .\nlet me know if you have any questions .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.851+0000", "entityId": 4302, "properties": {"text": "Subject: neon lesson # 5\nhere is the lesson for lesson 5 . have fun !\n- experiencing god week 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.857+0000", "entityId": 4303, "properties": {"text": "Subject: neon lesson # 5\nhere is your next lesson . . . have fun ! !\n- experiencing god week 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.862+0000", "entityId": 4304, "properties": {"text": "Subject: neon lesson # 5\nplease respond to here is the lesson for lesson 5 . have fun !\n- experiencing god week 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.867+0000", "entityId": 4305, "properties": {"text": "Subject: neon lesson # 5\nplease respond to here is your next lesson . . . have fun ! !\n- experiencing god week 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.872+0000", "entityId": 4306, "properties": {"text": "Subject: re : noms / actual flow for 3 / 21 / 01\nwe agree with the nomination .\nccs\n\" eileen ponton \" on 03 / 22 / 2001 03 : 30 : 54 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 21 / 01\nnom mcf mmbtu\n60 , 000 53 , 223 54 , 660\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.877+0000", "entityId": 4307, "properties": {"text": "Subject: hpl nom for march 22 , 2001\n( see attached file : hplno 323 . xls )\n- hplno 323 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.884+0000", "entityId": 4308, "properties": {"text": "Subject: re : noms / actual flow for 3 / 21 / 01\nwe agree with the nomination .\nccs\n\" eileen ponton \" on 03 / 22 / 2001 03 : 30 : 54 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 21 / 01\nnom mcf mmbtu\n60 , 000 53 , 223 54 , 660\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.889+0000", "entityId": 4309, "properties": {"text": "Subject: hpl nom for march 22 , 2001\n( see attached file : hplno 323 . xls )\n- hplno 323 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.895+0000", "entityId": 4310, "properties": {"text": "Subject: meter # 9842\ndaren ,\nmike in gas control called and said meter # 9842 is flooded and has not flowed in a couple of days . the field tech said it will probably be a few days before it resumes . do you want the nom adjusted ? it is at 8 , 034 . the deal # is 377169 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.900+0000", "entityId": 4311, "properties": {"text": "Subject: meter # 9842\ndaren ,\nmike in gas control called and said meter # 9842 is flooded and has not\nflowed in a couple of days . the field tech said it will probably be a few\ndays before it resumes . do you want the nom adjusted ? it is at 8 , 034 . the\ndeal # is 377169 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.904+0000", "entityId": 4312, "properties": {"text": "Subject: calpine daily gas nomination\nwe are still under the scheduled outage period and will bring the next unit\ndown @ midnight saturday 03 / 24 / 01 .\nthe following is our estimated burn until then . thanks\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.909+0000", "entityId": 4313, "properties": {"text": "Subject: calpine daily gas nomination\nstill under our scheduled maintenance outage , calpine will run the plant\nbaseload testing the a unit using an estimated volume of 88 , 000 mmbtu / day .\nunit c will go off at midnight saturday . the estimate for sunday and monday\nwill be around 65 , 000 mmbtu / day . please call if you have any questions .\nthanks .\n>\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.919+0000", "entityId": 4314, "properties": {"text": "Subject: 04 / 01 assignment , termination , expiration report - houston pipe\nline\nattached is the april 2001 assignment , termination & expiration report for houston pipe line ' s contracts . ( fyi - it contains all of the entries made by our group since the report was last done on 3 / 8 / 01 , regardless of the effective date . ) if you do not need to receive this report or if you know of someone else that should receive it , please let me know by e - mail or phone ( x - 36982 ) so that i can either remove your name from or add their name to the distribution list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.925+0000", "entityId": 4315, "properties": {"text": "Subject: aep transition items\nattached is a brief memo outline some of the transtion issues with hpl to aep\nthis is the first draft .\nthe itilized items currently require some more action .\nplease add any items and forward back to me . i will update\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.930+0000", "entityId": 4316, "properties": {"text": "Subject: aep transition items\nattached is a brief memo outline some of the transtion issues with hpl to aep\nthis is the first draft .\nthe itilized items currently require some more action .\nplease add any items and forward back to me . i will update\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.936+0000", "entityId": 4317, "properties": {"text": "Subject: 04 / 01 assignment , termination , expiration report - houston pipe\nline\nattached is the april 2001 assignment , termination & expiration report for\nhouston pipe line ' s contracts . ( fyi - it contains all of the entries made by\nour group since the report was last done on 3 / 8 / 01 , regardless of the\neffective date . ) if you do not need to receive this report or if you know of\nsomeone else that should receive it , please let me know by e - mail or phone\n( x - 36982 ) so that i can either remove your name from or add their name to the\ndistribution list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.940+0000", "entityId": 4318, "properties": {"text": "Subject: neon lesson 5\nplease respond to here is lesson # 5 . have fun !\n- experiencing god week 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.945+0000", "entityId": 4319, "properties": {"text": "Subject: prom dress shopping\nplease respond to hi , just wanted to let you know that lacy ' s sugar levels are staying up pretty well . she was down to 51 this morning , but she took a shot last night & i guess she didn ' t eat enough ice cream . she was mad at me cause i didn ' t give her more than i did . but it ' s so hard to know exactly how to handle it ' cause she ' s been going to bed a little high & getting up a little high . but anyway , she ' s doing better & i guess she ' ll always be mad & think i ' m mistreating her . i stay stressed out every day not knowing if she got low after i left & passed out & no one would know it . i ' m going to try to get a cell phone & have her call me when she gets there - - i think - - i don ' t know - - she ' ll be mad about that too . but the other night , she didn ' t eat right after she took her shot , then didn ' t eat anything fast acting & got in the truck to go over to phillip ' s to get research info from his computer , got low & had to pull over & eat sugar tabs . so that ' s what scares me . she knew to eat righ !\nt after she took that shot & didn ' t . but she was high before she took it & i guess she didn ' t think about it getting low . i don ' t know what will happen to her when she leaves home .\nbut anyway , i wanted to let you know that we ' re going to dallas to look for the prom dress & shoes , don ' t know if we will stay all night or not . i haven ' t talked to shane & shelley . i wanted to stay & go to saturn rd . to church & go to the singles class . but i don ' t know what shane & shelley have planned . so we ' ll be back either sat . night or sun . lacy has to be back to work on 3 research papers & projects that are all due at once . so , wish us luck . any donations will be appreciated ! i hear they ' re more than i was expecting . but anyway , i don ' t intend to go overboard . maybe there will be some sales .\nhope my grandsons are doing ok . i bet they were glad that their daddy got back home sunday . hug them for me & tell cole that mimi can ' t wait to see his bunkbeds . love ya ' ll", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.949+0000", "entityId": 4320, "properties": {"text": "Subject: neon lesson 5\nhere is lesson # 5 . have fun !\n- experiencing god week 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.954+0000", "entityId": 4321, "properties": {"text": "Subject: prom dress shopping\nhi , just wanted to let you know that lacy ' s sugar levels are staying up\npretty well . she was down to 51 this morning , but she took a shot last night\n& i guess she didn ' t eat enough ice cream . she was mad at me cause i didn ' t\ngive her more than i did . but it ' s so hard to know exactly how to handle it\n' cause she ' s been going to bed a little high & getting up a little high . but\nanyway , she ' s doing better & i guess she ' ll always be mad & think i ' m\nmistreating her . i stay stressed out every day not knowing if she got low\nafter i left & passed out & no one would know it . i ' m going to try to get a\ncell phone & have her call me when she gets there - - i think - - i don ' t\nknow - - she ' ll be mad about that too . but the other night , she didn ' t eat\nright after she took her shot , then didn ' t eat anything fast acting & got in\nthe truck to go over to phillip ' s to get research info from his computer , got\nlow & had to pull over & eat sugar tabs . so that ' s what scares me . she knew\nto eat righ !\nt after she took that shot & didn ' t . but she was high before she took it & i\nguess she didn ' t think about it getting low . i don ' t know what will happen to\nher when she leaves home .\nbut anyway , i wanted to let you know that we ' re going to dallas to look for\nthe prom dress & shoes , don ' t know if we will stay all night or not . i\nhaven ' t talked to shane & shelley . i wanted to stay & go to saturn rd . to\nchurch & go to the singles class . but i don ' t know what shane & shelley have\nplanned . so we ' ll be back either sat . night or sun . lacy has to be back to\nwork on 3 research papers & projects that are all due at once . so , wish us\nluck . any donations will be appreciated ! i hear they ' re more than i was\nexpecting . but anyway , i don ' t intend to go overboard . maybe there will be\nsome sales .\nhope my grandsons are doing ok . i bet they were glad that their daddy got\nback home sunday . hug them for me & tell cole that mimi can ' t wait to see his\nbunkbeds . love ya ' ll", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.958+0000", "entityId": 4322, "properties": {"text": "Subject: txu fuels / sds nomination for april 2001\nattached is the april 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel company ( previously tufco ) and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.963+0000", "entityId": 4323, "properties": {"text": "Subject: hpl nom for march 24 - 26 , 2001\n( see attached file : hplno 324 . xls )\n- hplno 324 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.968+0000", "entityId": 4324, "properties": {"text": "Subject: re : noms / actual flow for 3 / 22 / 01\nwe agree with the nomination .\n\" eileen ponton \" on 03 / 23 / 2001 09 : 56 : 45 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 22 / 01\nnom mcf mmbtu\n38 , 334 36 , 871 37 , 867\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.973+0000", "entityId": 4325, "properties": {"text": "Subject: txu fuels / sds nomination for april 2001\nattached is the april 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel company ( previously tufco ) and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.977+0000", "entityId": 4326, "properties": {"text": "Subject: hpl nom for march 24 - 26 , 2001\n( see attached file : hplno 324 . xls )\n- hplno 324 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.982+0000", "entityId": 4327, "properties": {"text": "Subject: re : noms / actual flow for 3 / 22 / 01\nwe agree with the nomination .\n\" eileen ponton \" on 03 / 23 / 2001 09 : 56 : 45 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 22 / 01\nnom mcf mmbtu\n38 , 334 36 , 871 37 , 867\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.987+0000", "entityId": 4328, "properties": {"text": "Subject: april , 2001 gathering contracts\ndaren ,\nfyi .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.992+0000", "entityId": 4329, "properties": {"text": "Subject: volume changes\no ' neal ,\nthe following volume changes were made today :\ndeal # meter # zone from to effective\n439825 9797 6 626 1000 3 / 24 - 3 / 31\n439837 3543 3 808 1000 3 / 24 - 3 / 31\n377169 9842 7 8034 0 3 / 23 - 3 / 26\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:22.998+0000", "entityId": 4330, "properties": {"text": "Subject: phillips - 4 / 01\ncarlos ,\ni created the following deal for 4 / 01 production :\ndeal # : 689508\nmeter # : 98 - 6782\ndeal volume : 5 , 000\nexpected vol . : 4 , 200\nprice : ifhsc less $ 0 . 05\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.006+0000", "entityId": 4331, "properties": {"text": "Subject: fw : crosstex energy , driscoll ranch # 1 , # 3 , meter nos . 9858 and\n9868\nplease note the following for april production regarding the crosstex contract : 96048744 at the above referenced location .\nthank you ,\nmelissa\n- - - - - original message - - - - -\nfrom : bubert , jerry\nsent : thursday , march 22 , 2001 2 : 19 pm\nto : taylor , vance l .\ncc : flynn , shawna ; graves , melissa ; harris , joanne ; reinhardt , donald p . ; riley , brian ; smith , susan ; sweeney , christy ; walker , robert ; weissman , george\nsubject : crosstex energy , driscoll ranch # 1 , # 3 , meter nos . 9858 and 9868\nper section 2 . 2 of the gpa , crosstex has elected to sell 4000 mmbtu / d in the aggragate at the base contract price of if hsc less $ 0 . 10 , and the excess of the available gas over 4000 mmbtu / d in the aggragate at gda hsc less $ 0 . 15 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.013+0000", "entityId": 4332, "properties": {"text": "Subject: april , 2001 gathering contracts\ndaren ,\nfyi .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.017+0000", "entityId": 4333, "properties": {"text": "Subject: volume changes\no ' neal ,\nthe following volume changes were made today :\ndeal # meter # zone from to effective\n439825 9797 6 626 1000 3 / 24 - 3 / 31\n439837 3543 3 808 1000 3 / 24 - 3 / 31\n377169 9842 7 8034 0 3 / 23 - 3 / 26\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.022+0000", "entityId": 4334, "properties": {"text": "Subject: phillips - 4 / 01\ncarlos ,\ni created the following deal for 4 / 01 production :\ndeal # : 689508\nmeter # : 98 - 6782\ndeal volume : 5 , 000\nexpected vol . : 4 , 200\nprice : ifhsc less $ 0 . 05\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.027+0000", "entityId": 4335, "properties": {"text": "Subject: fw : crosstex energy , driscoll ranch # 1 , # 3 , meter nos . 9858 and\n9868\nplease note the following for april production regarding the crosstex\ncontract : 96048744 at the above referenced location .\nthank you ,\nmelissa\n- - - - - original message - - - - -\nfrom : bubert , jerry\nsent : thursday , march 22 , 2001 2 : 19 pm\nto : taylor , vance l .\ncc : flynn , shawna ; graves , melissa ; harris , joanne ; reinhardt , donald p . ;\nriley , brian ; smith , susan ; sweeney , christy ; walker , robert ; weissman , george\nsubject : crosstex energy , driscoll ranch # 1 , # 3 , meter nos . 9858 and 9868\nper section 2 . 2 of the gpa , crosstex has elected to sell 4000 mmbtu / d in the\naggragate at the base contract price of if hsc less $ 0 . 10 , and the excess of\nthe available gas over 4000 mmbtu / d in the aggragate at gda hsc less $ 0 . 15 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.032+0000", "entityId": 4336, "properties": {"text": "Subject: calpine daily gas nomination\nstill under our scheduled maintenance outage , calpine will run the plant\nbaseload testing the a unit using an estimated volume of 88 , 000 mmbtu / day .\nunit c will go off at midnight saturday . the estimate for sunday and monday\nwill be around 65 , 000 mmbtu / day . please call if you have any questions .\nthanks .\n>\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.036+0000", "entityId": 4337, "properties": {"text": "Subject: re : cp & l\ncan we verified this gas flowed ? if it did it should have been billed on his term deal if there was one in place . if the gas flowed and we did not invoice for it on term let me know and i will put it in .\njanet h wallis\n03 / 22 / 2001 04 : 53 pm\nto : gary w lamphier / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : cp & l\nbob says he was not billed for a purchase he made from you at 5 k $ 5 . 16 on feb 21 st . will you check this out and get with\nbob a and katherine herrera .\njw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.041+0000", "entityId": 4338, "properties": {"text": "Subject: re : central power & light\nno record here and i was here at that time . he may have done it with janet .\ndaren j farmer\n03 / 21 / 2001 01 : 21 pm\nto : gary w lamphier / hou / ect @ ect\ncc : aimee lannou / hou / ect @ ect\nsubject : central power & light\ngary ,\ndo you have any record of this ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 03 / 21 / 2001 01 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 03 / 20 / 2001 01 : 38 pm\nto : daren j farmer / hou / ect @ ect\ncc : juliann kemp / enron @ enronxgate , rebecca griffin / na / enron @ enron\nsubject : central power & light\ndaren - was there a deal for 5 . 000 at cp & l on feb . 21 ? cp & l shows 5 . 000 , but i have looked in mops and there is not a deal . can you verify whether or not there was a deal for that day ? thanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 20 / 2001 01 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebecca griffin @ enron\n03 / 20 / 2001 01 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : central power & light\naimee ,\ni received a call from cp & l about the february 2001 production invoice . they are showing 5 , 000 mmbtu on february 21 for hpl . we are not showing anything for hpl on that day . could you verify if this is correct ?\nthanks for your help .\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.045+0000", "entityId": 4339, "properties": {"text": "Subject: on call notes\nfriday 3 / 23 - received a page from silver in gas control at 8 : 00 pm regarding the gulf plains plant . they were cut into another pipeline ( tennessee ) , and wanted to overdeliver to us by 10 m for the night . larry zammit paged 8 : 05 pm , reiterated same . we agreed to take the additional volume for the remainder of the evening only .\nsaturday 3 / 24 - 7 : 30 am , received page from lee in gas control regarding the gulf plains plant , apparently they felt that they may need to overdeliver for saturday ' s gas day as well . phoned larry zammit and spoke with him regarding the situation at the plant , he indicated that there may have been a miscommunication or misunderstanding at the plant . larry phoned the plant and made sure that they were on board to keep us balanced and not overdeliver to , or swing on , hpl .\n2 : 00 pm - phoned lee in gas control to see how the pipeline was doing . he indicated that we were pretty tight , but would probably make it without utilizing any oba ' s .\nsunday - so . union requested 15 m beginning at 11 : 00 am . the pipeline was tight again , but gas control was okay .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.050+0000", "entityId": 4340, "properties": {"text": "Subject: on call notes\nfriday 3 / 23 - received a page from silver in gas control at 8 : 00 pm regarding\nthe gulf plains plant . they were cut into another pipeline ( tennessee ) , and\nwanted to overdeliver to us by 10 m for the night . larry zammit paged 8 : 05\npm , reiterated same . we agreed to take the additional volume for the\nremainder of the evening only .\nsaturday 3 / 24 - 7 : 30 am , received page from lee in gas control regarding the\ngulf plains plant , apparently they felt that they may need to overdeliver for\nsaturday ' s gas day as well . phoned larry zammit and spoke with him regarding\nthe situation at the plant , he indicated that there may have been a\nmiscommunication or misunderstanding at the plant . larry phoned the plant\nand made sure that they were on board to keep us balanced and not overdeliver\nto , or swing on , hpl .\n2 : 00 pm - phoned lee in gas control to see how the pipeline was doing . he\nindicated that we were pretty tight , but would probably make it without\nutilizing any oba ' s .\nsunday - so . union requested 15 m beginning at 11 : 00 am . the pipeline was\ntight again , but gas control was okay .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.055+0000", "entityId": 4341, "properties": {"text": "Subject: re : central power & light\nno record here and i was here at that time . he may have done it with janet .\ndaren j farmer\n03 / 21 / 2001 01 : 21 pm\nto : gary w lamphier / hou / ect @ ect\ncc : aimee lannou / hou / ect @ ect\nsubject : central power & light\ngary ,\ndo you have any record of this ?\nd\n- - - - - - - - - - - - - - - - - - - - - - forwarded by daren j farmer / hou / ect on 03 / 21 / 2001\n01 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naimee lannou 03 / 20 / 2001 01 : 38 pm\nto : daren j farmer / hou / ect @ ect\ncc : juliann kemp / enron @ enronxgate , rebecca griffin / na / enron @ enron\nsubject : central power & light\ndaren - was there a deal for 5 . 000 at cp & l on feb . 21 ? cp & l shows 5 . 000 , but\ni have looked in mops and there is not a deal . can you verify whether or not\nthere was a deal for that day ? thanks .\naimee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by aimee lannou / hou / ect on 03 / 20 / 2001 01 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrebecca griffin @ enron\n03 / 20 / 2001 01 : 18 pm\nto : aimee lannou / hou / ect @ ect\ncc :\nsubject : central power & light\naimee ,\ni received a call from cp & l about the february 2001 production invoice . they\nare showing 5 , 000 mmbtu on february 21 for hpl . we are not showing anything\nfor hpl on that day . could you verify if this is correct ?\nthanks for your help .\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.059+0000", "entityId": 4342, "properties": {"text": "Subject: re : cp & l\ncan we verified this gas flowed ? if it did it should have been billed on his\nterm deal if there was one in place . if the gas flowed and we did not\ninvoice for it on term let me know and i will put it in .\njanet h wallis\n03 / 22 / 2001 04 : 53 pm\nto : gary w lamphier / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : cp & l\nbob says he was not billed for a purchase he made from you at 5 k $ 5 . 16 on\nfeb 21 st . will you check this out and get with\nbob a and katherine herrera .\njw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.064+0000", "entityId": 4343, "properties": {"text": "Subject: duke energy field 7 / 00\nwe are finally closing another month . please change the demand fee on deal\n157278 for july 2000 from $ 33 , 239 . 39 to $ 22 , 159 . 22 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.068+0000", "entityId": 4344, "properties": {"text": "Subject: dear owner\nas of the 4 th april 2001 we will be changing our bank from lloyds tsb to\ncitibank .\nsunsail worldwide sailing limited\ncitibank . n . a\nthe strand\nlondon\nif you have any problems receiving your monthly or quarterly payments , please\ndo not hesitate to contact me .\nwith kind regards\njo hillier - smith\nowner care manager\nsunsail worldwide sailing ltd\ntel : + 44 ( 0 ) 2392 222215\nemail : joh @ sunsail . com\nthis e - mail and any attachment is intended for the named addressee ( s )\nonly , or a person authorised to receive it on their behalf . the content\nshould be treated as confidential and the recipient may not disclose this\nmessage or any attachment to anyone else without authorisation . unauthorised\nuse , copying or disclosure may be unlawful . if this transmission is received\nin error please notify the sender immediately and delete this message from\nyour e - mail system . any view expressed by the sender of this message or any\nattachment may be personal and may not represent the view held by the company .\nsunsail limited ( company number 1239190 ) or sunsail worldwide sailing\nlimited ( company number 1658245 ) ? both with registered offices at the port\nhouse , port solent , portsmouth , hampshire , po 6 4 th , england", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.073+0000", "entityId": 4345, "properties": {"text": "Subject: duke energy field 7 / 00\nwe are finally closing another month . please change the demand fee on deal 157278 for july 2000 from $ 33 , 239 . 39 to $ 22 , 159 . 22 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.077+0000", "entityId": 4346, "properties": {"text": "Subject: dear owner\nas of the 4 th april 2001 we will be changing our bank from lloyds tsb to citibank .\nsunsail worldwide sailing limited\ncitibank . n . a\nthe strand\nlondon\nif you have any problems receiving your monthly or quarterly payments , please do not hesitate to contact me .\nwith kind regards\njo hillier - smith\nowner care manager\nsunsail worldwide sailing ltd\ntel : + 44 ( 0 ) 2392 222215\nemail : joh @ sunsail . com\nthis e - mail and any attachment is intended for the named addressee ( s )\nonly , or a person authorised to receive it on their behalf . the content should be treated as confidential and the recipient may not disclose this message or any attachment to anyone else without authorisation . unauthorised use , copying or disclosure may be unlawful . if this transmission is received in error please notify the sender immediately and delete this message from your e - mail system . any view expressed by the sender of this message or any attachment may be personal and may not represent the view held by the company .\nsunsail limited ( company number 1239190 ) or sunsail worldwide sailing\nlimited ( company number 1658245 ) both with registered offices at the port house , port solent , portsmouth , hampshire , po 6 4 th , england", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.082+0000", "entityId": 4347, "properties": {"text": "Subject: re : nom / vols for 3 / 24 thru 3 / 26 / 01\nwe agree\n\" eileen ponton \" on 03 / 26 / 2001 11 : 50 : 15 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / vols for 3 / 24 thru 3 / 26 / 01\nwe are having problems down loading tufco volumes from pg & e ' s system .\nfollowing are estimates , with actuals to follow tomorrow . . . . . .\ndate nom mcf mmbtu\n3 / 23 0 0 0\n3 / 24 0 0 0\n3 / 25 5000 4094 4205", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.087+0000", "entityId": 4348, "properties": {"text": "Subject: hpl nom for march 27 , 2001\n( see attached file : hplno 327 . xls )\n- hplno 327 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.091+0000", "entityId": 4349, "properties": {"text": "Subject: re : nom / vols for 3 / 24 thru 3 / 26 / 01\nwe agree\n\" eileen ponton \" on 03 / 26 / 2001 11 : 50 : 15 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : nom / vols for 3 / 24 thru 3 / 26 / 01\nwe are having problems down loading tufco volumes from pg & e ' s system .\nfollowing are estimates , with actuals to follow tomorrow . . . . . .\ndate nom mcf mmbtu\n3 / 23 0 0 0\n3 / 24 0 0 0\n3 / 25 5000 4094 4205", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.096+0000", "entityId": 4350, "properties": {"text": "Subject: hpl nom for march 27 , 2001\n( see attached file : hplno 327 . xls )\n- hplno 327 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.101+0000", "entityId": 4351, "properties": {"text": "Subject: spot deals - april , 2001\nthe following have been entered as spot deals for april , 2001 :\ndeal # counterparty meter # trade zone volume\n689849 amerada hess 0435 09 2 , 714\n689850 anadarko 0435 09 1 , 104\n689851 apache corp 0435 09 1 , 326\n689893 barrett res 0435 09 1 , 536\n690252 stone energy 9696 06 4 , 030\n691156 cima energy 6284 05 361\n689894 crosstex 0435 09 656\n691773 crosstex 6519 05 1\n691813 crosstex 9843 05 106\n692651 comstock 9878 08 500\n691873 duke energy 6347 21 144\n691982 embassy 6598 22 1\n692011 el paso mer 5848 05 203\n692026 el paso mer 5923 05 622\n688602 four square 9705 08 776\n692207 helmerich & p 9841 06 6 , 500\n692215 hesco 9876 05 85\n692246 hurd ent 5427 18 4\n689896 ocean en 0435 09 3 , 607\n689508 phillips 6782 06 4 , 013\n692461 ranger oil 9871 09 147\n689898 seneca res 0435 09 3 , 073\n692844 houston ex 9696 06 5 , 000\n689814 pure res 9685 05 139\n689905 tri - union 0435 09 149\n692898 whiting petr 6523 12 113\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.105+0000", "entityId": 4352, "properties": {"text": "Subject: spot deals - april , 2001\nthe following have been entered as spot deals for april , 2001 :\ndeal # counterparty meter # trade zone volume\n689849 amerada hess 0435 09 2 , 714\n689850 anadarko 0435 09 1 , 104\n689851 apache corp 0435 09 1 , 326\n689893 barrett res 0435 09 1 , 536\n690252 stone energy 9696 06 4 , 030\n691156 cima energy 6284 05 361\n689894 crosstex 0435 09 656\n691773 crosstex 6519 05 1\n691813 crosstex 9843 05 106\n692651 comstock 9878 08 500\n691873 duke energy 6347 21 144\n691982 embassy 6598 22 1\n692011 el paso mer 5848 05 203\n692026 el paso mer 5923 05 622\n688602 four square 9705 08 776\n692207 helmerich & p 9841 06 6 , 500\n692215 hesco 9876 05 85\n692246 hurd ent 5427 18 4\n689896 ocean en 0435 09 3 , 607\n689508 phillips 6782 06 4 , 013\n692461 ranger oil 9871 09 147\n689898 seneca res 0435 09 3 , 073\n692844 houston ex 9696 06 5 , 000\n689814 pure res 9685 05 139\n689905 tri - union 0435 09 149\n692898 whiting petr 6523 12 113\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.112+0000", "entityId": 4353, "properties": {"text": "Subject: natural gas nomination for 04 / 01\nenron methanol nominates the following natural gas requirements for the methanol plant for april 2001 :\n30 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at morgan ' s point for april 2001 :\n8 , 500 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.120+0000", "entityId": 4354, "properties": {"text": "Subject: april nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 03 / 26 / 2001 09 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 03 / 24 / 2001 10 : 26 : 11 pm\nto : \" lamphier , gary \"\ncc : \" carter , john \" , \" oppio , janet \" , \" ricks , ruth \"\nsubject : april nominations at shell deer park\ngary ,\napril 2001 nominations for gas delivery to shell deer park are as follows :\nfirm baseload - 60 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 35 , 000 mmbtu / d 25 , 000 mmbtu / d - 0 - mmbtu / d\nrefinery turnaround activity started in january has been completed . chemical\nplant turnaround work is scheduled to begin in april and conclude in may .\nplease note the zero nomination for the hpl - s station during the olefin\nturnaround .\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.127+0000", "entityId": 4355, "properties": {"text": "Subject: calpine daily and monthly nomination\n> >\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.132+0000", "entityId": 4356, "properties": {"text": "Subject: natural gas nomination for 04 / 01\nenron methanol nominates the following natural gas requirements for the\nmethanol plant for april 2001 :\n30 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at\nmorgan ' s point for april 2001 :\n8 , 500 mmbtu per day", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.137+0000", "entityId": 4357, "properties": {"text": "Subject: april nominations at shell deer park\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gary w lamphier / hou / ect on 03 / 26 / 2001\n09 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shankster jl ( luther ) \" on 03 / 24 / 2001 10 : 26 : 11 pm\nto : \" lamphier , gary \"\ncc : \" carter , john \" , \" oppio , janet \"\n, \" ricks , ruth \"\nsubject : april nominations at shell deer park\ngary ,\napril 2001 nominations for gas delivery to shell deer park are as follows :\nfirm baseload - 60 , 000 mmbtu / d\nspot swing supply - 0 ( zero )\ndelivery of the above contract quantities is expected to be as follows :\nhpl - hp hpl - e hpl - s\nfirm 35 , 000 mmbtu / d 25 , 000 mmbtu / d - 0 - mmbtu / d\nrefinery turnaround activity started in january has been completed . chemical\nplant turnaround work is scheduled to begin in april and conclude in may .\nplease note the zero nomination for the hpl - s station during the olefin\nturnaround .\nplease let me know if you have any questions\nj . luther shankster\nenergy & utilities planning\n> phone : 713 / 277 - 9307\n> fax : 713 / 277 - 9941\n> e - mail : jlshankster @ equiva . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.141+0000", "entityId": 4358, "properties": {"text": "Subject: re : cp & l\ndaren ,\ni am handling cp & l and am trying to resolve this issue from february production . cp & l shows 5 , 000 mmbtu on february 21 , but we do not have a deal . were you able to find anything out about this ?\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 03 / 27 / 2001 04 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n03 / 26 / 2001 09 : 57 am\nto : rebecca griffin / na / enron @ enron\ncc :\nsubject : re : cp & l\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 03 / 26 / 2001 09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gary w lamphier @ ect 03 / 26 / 2001 09 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : re : cp & l\ncan we verified this gas flowed ? if it did it should have been billed on his term deal if there was one in place . if the gas flowed and we did not invoice for it on term let me know and i will put it in .\njanet h wallis\n03 / 22 / 2001 04 : 53 pm\nto : gary w lamphier / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : cp & l\nbob says he was not billed for a purchase he made from you at 5 k $ 5 . 16 on feb 21 st . will you check this out and get with\nbob a and katherine herrera .\njw\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.146+0000", "entityId": 4359, "properties": {"text": "Subject: re : cp & l\ndaren ,\ni am handling cp & l and am trying to resolve this issue from february\nproduction . cp & l shows 5 , 000 mmbtu on february 21 , but we do not have a\ndeal . were you able to find anything out about this ?\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 03 / 27 / 2001\n04 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n03 / 26 / 2001 09 : 57 am\nto : rebecca griffin / na / enron @ enron\ncc :\nsubject : re : cp & l\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n03 / 26 / 2001 09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gary w lamphier @ ect 03 / 26 / 2001 09 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : re : cp & l\ncan we verified this gas flowed ? if it did it should have been billed on his\nterm deal if there was one in place . if the gas flowed and we did not\ninvoice for it on term let me know and i will put it in .\njanet h wallis\n03 / 22 / 2001 04 : 53 pm\nto : gary w lamphier / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : cp & l\nbob says he was not billed for a purchase he made from you at 5 k $ 5 . 16 on\nfeb 21 st . will you check this out and get with\nbob a and katherine herrera .\njw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.151+0000", "entityId": 4360, "properties": {"text": "Subject: eastrans nomination effective 4 / 1 / 01\neffective 4 / 1 / 01 , the deliveries and redeliveries will be 0 mmbtu / dy .\nthe transaction agreement will not be utilized .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.155+0000", "entityId": 4361, "properties": {"text": "Subject: please note my new email address\neffective today , please send future correspondence to me at : staceykn @ yahoo . com . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.160+0000", "entityId": 4362, "properties": {"text": "Subject: please note my new email address\neffective today , please send future correspondence to me at :\nstaceykn @ yahoo . com . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.164+0000", "entityId": 4363, "properties": {"text": "Subject: hpl nom for march 28 , 2001\n( see attached file : hplno 328 . xls )\n- hplno 328 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.169+0000", "entityId": 4364, "properties": {"text": "Subject: re : noms / actual vols for 3 / 26 / 01\neileen , our gas control records indicate the following rate changes for march\n26 , 2001 flow :\n20 , 000 rate 0900 to 1400 ( 5 hrs ) ;\n40 , 000 rate 1400 to 0100 ( 11 hrs )\nnom . for the day : 22 , 500 mmbtu .\nplease call me to see if we can agree on the total nom .\ni can be reached at 214 - 812 - 4404 .\n\" eileen ponton \" on 03 / 27 / 2001 09 : 39 : 00 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual vols for 3 / 26 / 01\nnom mcf mmbtu\n24 , 167 21 , 820 22 , 409\nbtu = 1 . 027\nnote : no changes to flow rates for 3 / 23 thru 3 / 25 . . . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.173+0000", "entityId": 4365, "properties": {"text": "Subject: hpl nom for march 28 , 2001\n( see attached file : hplno 328 . xls )\n- hplno 328 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.178+0000", "entityId": 4366, "properties": {"text": "Subject: re : noms / actual vols for 3 / 26 / 01\neileen , our gas control records indicate the following rate changes for march\n26 , 2001 flow :\n20 , 000 rate 0900 to 1400 ( 5 hrs ) ;\n40 , 000 rate 1400 to 0100 ( 11 hrs )\nnom . for the day : 22 , 500 mmbtu .\nplease call me to see if we can agree on the total nom .\ni can be reached at 214 - 812 - 4404 .\n\" eileen ponton \" on 03 / 27 / 2001 09 : 39 : 00 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual vols for 3 / 26 / 01\nnom mcf mmbtu\n24 , 167 21 , 820 22 , 409\nbtu = 1 . 027\nnote : no changes to flow rates for 3 / 23 thru 3 / 25 . . . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.182+0000", "entityId": 4367, "properties": {"text": "Subject: dewbre petroleum\nvance ,\nthe following deal is not on you spreadsheet nor is it on the prebid list that daren maintains :\ndeal # counterparty meter #\n137595 dewbre petr . 9662\nis this a good deal ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.186+0000", "entityId": 4368, "properties": {"text": "Subject: dewbre petroleum\nvance ,\nthe following deal is not on you spreadsheet nor is it on the prebid list\nthat daren maintains :\ndeal # counterparty meter #\n137595 dewbre petr . 9662\nis this a good deal ?\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.191+0000", "entityId": 4369, "properties": {"text": "Subject: windows 2000 and outlook\nwe will soon be migrating to windows 2000 and outlook . the texas desk is\nscheduled for tuesday , april 10 th . i was told to pass along the following\ninformation to my group :\n1 . you will be receiving emails from the migration team ( \" gem \" ) - please be\nsure to only open this from your own desktop , and not remotely . this is very\nimportant . these messages will be explaining the migration process and what\nyou need to do to insure a successful migration .\n2 . due to new space limitations on your mailbox , you are advised to clean\nyour notes mailbox of old , unneeded messages before migration . with outlook ,\nyou will be restricted to a mailbox size of 100 mb . outlook will issue a\nwarning once you reach 75 mb to let you know that you are near your mailbox\nlimit . once you reach 100 mb , you will be prevented from sending email , but\nyou will still be able to receive internal and external messages you will\nthen need to reduce the size of your mailbox by deleting old mail , saving\nattachments to a local drive , etc . before you will be able to send an email\nagain .\n3 . from the day of migration , only 30 days of old mail will be migrated from\nyour mailbox . this includes mail in your inbox and other folders . calendar\nitems dating back one year from the day of migration will be migrated .\n4 . everyone will have a read only view of notes until the transition is\ncompleted . you will be able to copy / paste .\nthanks ,\nlaura", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.195+0000", "entityId": 4370, "properties": {"text": "Subject: windows 2000 and outlook\nwe will soon be migrating to windows 2000 and outlook . the texas desk is scheduled for tuesday , april 10 th . i was told to pass along the following information to my group :\n1 . you will be receiving emails from the migration team ( \" gem \" ) - please be sure to only open this from your own desktop , and not remotely . this is very important . these messages will be explaining the migration process and what you need to do to insure a successful migration .\n2 . due to new space limitations on your mailbox , you are advised to clean your notes mailbox of old , unneeded messages before migration . with outlook , you will be restricted to a mailbox size of 100 mb . outlook will issue a warning once you reach 75 mb to let you know that you are near your mailbox limit . once you reach 100 mb , you will be prevented from sending email , but you will still be able to receive internal and external messages you will then need to reduce the size of your mailbox by deleting old mail , saving attachments to a local drive , etc . before you will be able to send an email again .\n3 . from the day of migration , only 30 days of old mail will be migrated from your mailbox . this includes mail in your inbox and other folders . calendar items dating back one year from the day of migration will be migrated .\n4 . everyone will have a read only view of notes until the transition is completed . you will be able to copy / paste .\nthanks ,\nlaura", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.200+0000", "entityId": 4371, "properties": {"text": "Subject: fw : calpine monthly average revised\ndarren - attached is the april schedule for calpine ( average was revised )\nthanks - julie\nx 58639\n- - - - - original message - - - - -\nfrom : ricky archer @ enron\nsent : tuesday , march 27 , 2001 2 : 42 pm\nto : kemp , juliann\nsubject : calpine monthly average revised\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.204+0000", "entityId": 4372, "properties": {"text": "Subject: calpine daily and monthly nomination\n> >\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.210+0000", "entityId": 4373, "properties": {"text": "Subject: fw : calpine monthly average revised\ndarren - attached is the april schedule for calpine ( average was revised )\nthanks - julie\nx 58639\n- - - - - original message - - - - -\nfrom : ricky archer @ enron\nsent : tuesday , march 27 , 2001 2 : 42 pm\nto : kemp , juliann\nsubject : calpine monthly average revised\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.215+0000", "entityId": 4374, "properties": {"text": "Subject: ua 4\ni put a file in your folder . hope it helps with the ua 4 .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.220+0000", "entityId": 4375, "properties": {"text": "Subject: re : cp & l\ni do not have a record of a spot deal in my notes or my deal sheet . if bob wants to call me with a tape that would be great . the . 085 difference results in $ 405 so i will call bob and try to put this to bed . as of now leave it allocated to a term deal .\ndaren j farmer\n03 / 28 / 2001 01 : 55 pm\nto : rebecca griffin / na / enron @ enron , gary w lamphier / hou / ect @ ect , ilene erskine / hou / azurix @ azurix\ncc :\nsubject : re : cp & l\na volume of 6 , 289 mmbtu flowed over the noms for cp & l . i don ' t have a record of a spot deal with them for that day .\ngary - currently , that volume has been allocated to the term agreement . the price difference on that day is significant . ( hsc gd mid was 5 . 245 ) . if you don ' t have a record of a spot deal , the allocation should stand as it is .\nd\nrebecca griffin @ enron\n03 / 27 / 2001 04 : 08 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : cp & l\ndaren ,\ni am handling cp & l and am trying to resolve this issue from february production . cp & l shows 5 , 000 mmbtu on february 21 , but we do not have a deal . were you able to find anything out about this ?\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 03 / 27 / 2001 04 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n03 / 26 / 2001 09 : 57 am\nto : rebecca griffin / na / enron @ enron\ncc :\nsubject : re : cp & l\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 03 / 26 / 2001 09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gary w lamphier @ ect 03 / 26 / 2001 09 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : re : cp & l\ncan we verified this gas flowed ? if it did it should have been billed on his term deal if there was one in place . if the gas flowed and we did not invoice for it on term let me know and i will put it in .\njanet h wallis\n03 / 22 / 2001 04 : 53 pm\nto : gary w lamphier / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : cp & l\nbob says he was not billed for a purchase he made from you at 5 k $ 5 . 16 on feb 21 st . will you check this out and get with\nbob a and katherine herrera .\njw\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.225+0000", "entityId": 4376, "properties": {"text": "Subject: re : duke\nthis has been nominated , tracked and balanced . . .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.231+0000", "entityId": 4377, "properties": {"text": "Subject: aep - hpl transition issues\nattached is a updated memo about transition issues .\nthis is not a all inclusive memo but a starting point .\nplease sent comments to me and i will update and redistribute .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.236+0000", "entityId": 4378, "properties": {"text": "Subject: aep - hpl transition issues\nattached is a updated memo about transition issues .\nthis is not a all inclusive memo but a starting point .\nplease sent comments to me and i will update and redistribute .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.241+0000", "entityId": 4379, "properties": {"text": "Subject: re : cp & l\ni do not have a record of a spot deal in my notes or my deal sheet . if bob\nwants to call me with a tape that would be great . the . 085 difference\nresults in $ 405 so i will call bob and try to put this to bed . as of now\nleave it allocated to a term deal .\ndaren j farmer\n03 / 28 / 2001 01 : 55 pm\nto : rebecca griffin / na / enron @ enron , gary w lamphier / hou / ect @ ect , ilene\nerskine / hou / azurix @ azurix\ncc :\nsubject : re : cp & l\na volume of 6 , 289 mmbtu flowed over the noms for cp & l . i don ' t have a record\nof a spot deal with them for that day .\ngary - currently , that volume has been allocated to the term agreement . the\nprice difference on that day is significant . ( hsc gd mid was 5 . 245 ) . if you\ndon ' t have a record of a spot deal , the allocation should stand as it is .\nd\nrebecca griffin @ enron\n03 / 27 / 2001 04 : 08 pm\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : re : cp & l\ndaren ,\ni am handling cp & l and am trying to resolve this issue from february\nproduction . cp & l shows 5 , 000 mmbtu on february 21 , but we do not have a\ndeal . were you able to find anything out about this ?\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 03 / 27 / 2001\n04 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n03 / 26 / 2001 09 : 57 am\nto : rebecca griffin / na / enron @ enron\ncc :\nsubject : re : cp & l\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on\n03 / 26 / 2001 09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gary w lamphier @ ect 03 / 26 / 2001 09 : 52 am\nto : daren j farmer / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : re : cp & l\ncan we verified this gas flowed ? if it did it should have been billed on his\nterm deal if there was one in place . if the gas flowed and we did not\ninvoice for it on term let me know and i will put it in .\njanet h wallis\n03 / 22 / 2001 04 : 53 pm\nto : gary w lamphier / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : cp & l\nbob says he was not billed for a purchase he made from you at 5 k $ 5 . 16 on\nfeb 21 st . will you check this out and get with\nbob a and katherine herrera .\njw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.249+0000", "entityId": 4380, "properties": {"text": "Subject: tenaska 2 / 01\nwe need to forward the money from the feb 2001 brazos sale to tenaska iv . i\nam assuming you want to handle this as before by entering a purchase demand\nfee on deal 529856 in the amount of $ 1 , 143 , 484 . 53 . there is already a demand\nfee for feb 2001 for $ 29 , 851 . 64 , so i think we just need to change that to\nthe new amount . let me know if you want to handle this differently .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.256+0000", "entityId": 4381, "properties": {"text": "Subject: revision : eastrans nomination change effective 3 / 29 / 01\ndeliveries and redeliveries will still be 0 effective 3 / 29 / 01 at 9 : 00 am .\nhowever , the 7300 mmbtu / dy fuels cotton valley gas will not be priced per\nthe transaction agreement and will not flow into hpl .\n- - - - - forwarded by marta k henderson / houston / pefs / pec on 03 / 28 / 01 03 : 10 pm\n- - - - -\nmarta k\nhenderson to : briley @ enron . com ,\ncarlos . j . rodriguez @ enron . com , connie\nwester / easttexas / pefs / pec @ pec ,\ndfarmer @ enron . com , daniel c\n03 / 28 / 01 rider / houston / pefs / pec @ pec , darrel\nf . bane / easttexas / pefs / pec @ pec , donna\n08 : 07 am c . spencer / gcs / cec / pec @ pec , donna j\ndobb / houston / pefs / pec @ pec , john a .\nbretz / gcs / cec / pec @ pec , john c\nlehman / field / pefs / pec @ pec , julia a .\nurbanek / gcs / cec / pec @ pec , lee c .\nspivey / field / pefs / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , poe\nreed / gcs / cec / pec @ pec , ronald c .\ndouglas / gcs / cec / pec @ pec , sharon\nbeemer / houston / pefs / pec @ pec , william e .\nspeckels / gcs / cec / pec @ pec\ncc :\nsubject : eastrans nomination\nchange effective 3 / 29 / 01\nplease decrease deliveries to eastrans to 0 mmbtu / dy effective 3 / 29 / 01 and\nmaintain at 0 until further notified .\nthe redeliveries will be 0 as well .\nfuels cotton valley gas will be valued per paragraph 3 of the contract\nprice ( per mmbtu ) section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.261+0000", "entityId": 4382, "properties": {"text": "Subject: revision : eastrans nomination change effective 3 / 29 / 01\ndeliveries and redeliveries will still be 0 effective 3 / 29 / 01 at 9 : 00 am .\nhowever , the 7300 mmbtu / dy fuels cotton valley gas will not be priced per\nthe transaction agreement and will not flow into hpl .\n- - - - - forwarded by marta k henderson / houston / pefs / pec on 03 / 28 / 01 03 : 10 pm\n- - - - -\nmarta k\nhenderson to : briley @ enron . com , carlos . j . rodriguez @ enron . com , connie\nwester / easttexas / pefs / pec @ pec , dfarmer @ enron . com , daniel c\n03 / 28 / 01 rider / houston / pefs / pec @ pec , darrel f . bane / easttexas / pefs / pec @ pec , donna\n08 : 07 am c . spencer / gcs / cec / pec @ pec , donna j dobb / houston / pefs / pec @ pec , john a .\nbretz / gcs / cec / pec @ pec , john c lehman / field / pefs / pec @ pec , julia a .\nurbanek / gcs / cec / pec @ pec , lee c . spivey / field / pefs / pec @ pec , michael r .\ncherry / easttexas / pefs / pec @ pec , poe reed / gcs / cec / pec @ pec , ronald c .\ndouglas / gcs / cec / pec @ pec , sharon beemer / houston / pefs / pec @ pec , william e .\nspeckels / gcs / cec / pec @ pec\ncc :\nsubject : eastrans nomination change effective 3 / 29 / 01\nplease decrease deliveries to eastrans to 0 mmbtu / dy effective 3 / 29 / 01 and\nmaintain at 0 until further notified .\nthe redeliveries will be 0 as well .\nfuels cotton valley gas will be valued per paragraph 3 of the contract\nprice ( per mmbtu ) section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.266+0000", "entityId": 4383, "properties": {"text": "Subject: eastrans nomination change effective 3 / 29 / 01\nplease decrease deliveries to eastrans to 0 mmbtu / dy effective 3 / 29 / 01 and\nmaintain at 0 until further notified .\nthe redeliveries will be 0 as well .\nfuels cotton valley gas will be valued per paragraph 3 of the contract\nprice ( per mmbtu ) section in the transaction agreement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.271+0000", "entityId": 4384, "properties": {"text": "Subject: dallas june hoop - it - up is coming to town !\ndear daren :\nhoop - it - up is coming to town ! ! ! are you ready for some 3 - on - 3 action ?\ndallas ' historic west end district will play host to the dallas event to be held june 23 rd and 24 th . to enter , just fill out the entry form mailed to your attention at the below address and return to us before the deadline of june 13 th .\ndaren farmer\nplayer id number 104940\n5519 clarkston\nspring , tx 77379\nif you didn ' t receive your form , please let us know ! simply reply to us with your player id number at info @ hoopitup . com with your correct name and mailing address . you can also pick up an entry form at any dallas - area foot locker or whataburger location . . . or register online at www . hoopitup . com .\ndon ' t get left out of the game . . . call our hotline at 972 . 392 . 5750 for more information or log on to our website at www . hoopitup . com .\nspecial thanks to our national sponsors for helping bring the 2001 hoop - it - up tour to your city !\ngatorade u . s . army slim jim southwest airlines foot locker\n* to be removed from this mailing list , please respond with your full name and player id number . this is the only way we can find you in the system . otherwise you name will be included in future mailings . thank you for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.275+0000", "entityId": 4385, "properties": {"text": "Subject: dallas june hoop - it - up is coming to town !\ndear daren :\nhoop - it - up is coming to town ! ! ! ? are you ready for some 3 - on - 3 action ?\ndallas ' historic west end district will play host to the dallas event to be\nheld june 23 rd and 24 th . ? to enter , just fill out the entry form mailed to\nyour attention at the below address and return to us before the deadline of\njune 13 th .\ndaren farmer\nplayer id number 104940\n5519 clarkston\nspring , tx 77379\nif you didn ' t receive your form , please let us know ! ? simply reply to us with\nyour player id number at info @ hoopitup . com with your correct name and mailing\naddress . ? you can also pick up an entry form at any dallas - area foot locker\nor whataburger location . . . or register online at www . hoopitup . com .\n?\ndon ' t get left out of the game . . . call our hotline at 972 . 392 . 5750 for more\ninformation or log on to our website at www . hoopitup . com .\nspecial thanks to our national sponsors for helping bring the 2001 hoop - it - up\ntour to your city !\ngatorade ? ? u . s . army ? ? slim jim ? ? southwest airlines ? ? foot locker\n* to be removed from this mailing list , please respond with your full name and\nplayer id number . this is the only way we can find you in the system .\notherwise you name will be included in future mailings . thank you for your\nhelp .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.280+0000", "entityId": 4386, "properties": {"text": "Subject: re : guadalupe meter diagram\ndaren , here ' s a simplified schematic on the major interconnects to our\nguadalupe pipeline . hope it helps .\n( see attached file : guadalupe pipeline . ppt )\n- guadalupe pipeline . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.284+0000", "entityId": 4387, "properties": {"text": "Subject: re : guadalupe meter diagram\ndaren , here ' s a simplified schematic on the major interconnects to our\nguadalupe pipeline . hope it helps .\n( see attached file : guadalupe pipeline . ppt )\n- guadalupe pipeline . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.288+0000", "entityId": 4388, "properties": {"text": "Subject: hpl nom for march 29 , 2001\n( see attached file : hplno 329 . xls )\n- hplno 329 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.293+0000", "entityId": 4389, "properties": {"text": "Subject: hpl nom for march 29 , 2001\n( see attached file : hplno 329 . xls )\n- hplno 329 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.297+0000", "entityId": 4390, "properties": {"text": "Subject: kcs resources nom - april 1\nthe nom for kcs resources ( deal # 125822 ) at meter # 9658 has been revised from 7 , 129 to 5 , 500 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.302+0000", "entityId": 4391, "properties": {"text": "Subject: f . o . m . hpl nom . eff . april 1 , 2001\ndaren ,\ni tried to get kcs to give me the nom earlier but it is just now coming in . the nom on vance ' s spreadsheet was 7 , 129 . kcs is reducing the gathering piece to 5 , 500 .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 28 / 2001 12 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 28 / 2001 11 : 16 : 01 am\nto : \" bob cotten ( e - mail ) \"\ncc : knox westmoreland , stretch brennan , \" tom acton ( e - mail ) \"\nsubject : f . o . m . hpl nom . eff . april 1 , 2001\nthis is the estimated josey ranch nomination for the month of april 2001 .\nthe hpl nomination volume to be effective 4 / 1 / 2001 is :\n5 , 500 mmbtu / day for kcs resources\n1 , 500 mmbtu / day for texaco\n7 , 000 mmbtu / day total ( assumed btu factor of 1 . 083\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , inc .\n5555 san felipe , suite 1200\nhouston , tx 77056\nvoice 713 - 964 - 9434 fax 713 - 877 - 1394", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.306+0000", "entityId": 4392, "properties": {"text": "Subject: deal # 125822\nthe expected volume on the subject deal has been changed effective 3 / 28 / 01 :\nmeter # trade zone counterparty from to\n9658 16 kcs resources 6 , 500 5 , 700\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.311+0000", "entityId": 4393, "properties": {"text": "Subject: fw : 2 nd rev / hpl nom . eff . march 28 , 2001\ndaren ,\nkcs wants to take their nom down from 6 , 500 to 5 , 700 on the gathering and increase the texaco transport by the same volume at meter # 9658 beginning today . are you okay with the change ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 28 / 2001 09 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 27 / 2001 03 : 52 : 45 pm\nto : \" bob cotten ( e - mail ) \"\ncc : \" tom acton ( e - mail ) \" , stretch brennan , knox westmoreland\nsubject : fw : 2 nd rev / hpl nom . eff . march 28 , 2001\nsorry about the confusion on the dates between the subject line ( correctly\nreflected ) and the body of the letter ( incorrectly reflected ) . . . the change\nfor the \" shift \" between texaco and kcs should be march 28 , 2001 .\nbob withers > zero \" net \" change\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , inc .\n5555 san felipe , suite 1200\nhouston , tx 77056\nvoice 713 - 964 - 9434 fax 713 - 877 - 1394", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.315+0000", "entityId": 4394, "properties": {"text": "Subject: cokinos / tri - c april elections\nmelissa / darren\nglobal contract # 96045720\ncokinos / tri - c has elected to price their production for the month of april 2001 as follows :\n4 , 000 / d , 97 % if / hsc\nall production in excess of 4 , 000 / d priced 97 % gas daily\nthank you ,\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.320+0000", "entityId": 4395, "properties": {"text": "Subject: kcs resources nom - april 1\nthe nom for kcs resources ( deal # 125822 ) at meter # 9658 has been revised\nfrom 7 , 129 to 5 , 500 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.325+0000", "entityId": 4396, "properties": {"text": "Subject: f . o . m . hpl nom . eff . april 1 , 2001\ndaren ,\ni tried to get kcs to give me the nom earlier but it is just now coming in .\nthe nom on vance ' s spreadsheet was 7 , 129 . kcs is reducing the gathering\npiece to 5 , 500 .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 28 / 2001 12 : 26\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 28 / 2001 11 : 16 : 01 am\nto : \" bob cotten ( e - mail ) \"\ncc : knox westmoreland , stretch brennan\n, \" tom acton ( e - mail ) \"\nsubject : f . o . m . hpl nom . eff . april 1 , 2001\nthis is the estimated josey ranch nomination for the month of april 2001 .\nthe hpl nomination volume to be effective 4 / 1 / 2001 is :\n5 , 500 mmbtu / day for kcs resources\n1 , 500 mmbtu / day for texaco\n7 , 000 mmbtu / day total ( assumed btu factor of 1 . 083\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , inc .\n5555 san felipe , suite 1200\nhouston , tx 77056\nvoice 713 - 964 - 9434 fax 713 - 877 - 1394", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.329+0000", "entityId": 4397, "properties": {"text": "Subject: deal # 125822\nthe expected volume on the subject deal has been changed effective 3 / 28 / 01 :\nmeter # trade zone counterparty from to\n9658 16 kcs resources 6 , 500 5 , 700\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.336+0000", "entityId": 4398, "properties": {"text": "Subject: fw : 2 nd rev / hpl nom . eff . march 28 , 2001\ndaren ,\nkcs wants to take their nom down from 6 , 500 to 5 , 700 on the gathering and\nincrease the texaco transport by the same volume at meter # 9658 beginning\ntoday . are you okay with the change ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 28 / 2001 09 : 22\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 03 / 27 / 2001 03 : 52 : 45 pm\nto : \" bob cotten ( e - mail ) \"\ncc : \" tom acton ( e - mail ) \" , stretch brennan\n, knox westmoreland\nsubject : fw : 2 nd rev / hpl nom . eff . march 28 , 2001\nsorry about the confusion on the dates between the subject line ( correctly\nreflected ) and the body of the letter ( incorrectly reflected ) . . . the change\nfor the \" shift \" between texaco and kcs should be march 28 , 2001 .\nbob withers > zero \" net \" change\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , inc .\n5555 san felipe , suite 1200\nhouston , tx 77056\nvoice 713 - 964 - 9434 fax 713 - 877 - 1394", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.340+0000", "entityId": 4399, "properties": {"text": "Subject: cokinos / tri - c april elections\nmelissa / darren\nglobal contract # 96045720\ncokinos / tri - c has elected to price their production for the month of april\n2001 as follows :\n4 , 000 / d , 97 % if / hsc\nall production in excess of 4 , 000 / d priced 97 % gas daily\nthank you ,\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.347+0000", "entityId": 4400, "properties": {"text": "Subject: calpine daily gas nomination\n> juliann , there is a chance that\nthe unit under maintenance might be started this evening or early tomorrow .\ni will update as soon as i receive the information . thanks .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.355+0000", "entityId": 4401, "properties": {"text": "Subject: fyi - - - kinder morgan stg\nfyi - -\nkinder morgan will be injecting 30 . 0 / day into bammel storage during april .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.361+0000", "entityId": 4402, "properties": {"text": "Subject: april - - - flexible katy gas\nfyi - - -\nhere is what i show so far for april baseload / term katy flexible purchase gas :\noasis meter # 6780 :\naquila 10 . 000\nduke 20 . 000\nrichardson 1 . 312\nconoco 15 . 000\ntotal 46 . 312 flexible\nlonestar meter # 67 :\nduke 47 . 850 ( 50 . 000 - 2 . 150 inflexible )\nmitchell 20 . 000\ncrosstex ( 6 . 200 ) ( baseload sale )\ntotal 61 . 650 flexible\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.366+0000", "entityId": 4403, "properties": {"text": "Subject: oasis on - line\ndaren - - -\noasis will be doing away with the temporary passwords for their on - line nom they are encourageing everyone to get on board . let me know what you want to do . i have attached the agreement , and info on the nom / confirm cycles . i have been using it this week and it is pretty user friendly . the reporting capabilities are still being developed , but i am told it should be ready soon . take a look for yourself @ www . oasispipeline . com . . . . . . . . . . logon : north . . . . . password : enron . . . . . . . . currently , no intradays are allowed online ( only by fax / email ) because they want to approve same days , but they are looking at allowing them in the future .\n- - mark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.371+0000", "entityId": 4404, "properties": {"text": "Subject: oasis on - line\ndaren - - -\noasis will be doing away with the temporary passwords for their on - line nom they are\nencourageing everyone to get on board . let me know what you want to do . i\nhave attached the agreement , and info on the nom / confirm cycles . i have been\nusing it this week and it is pretty user friendly . the reporting\ncapabilities are still being developed , but i am told it should be ready\nsoon . take a look for yourself @ www . oasispipeline . com . . . . . . . . . . logon :\nnorth . . . . . password : enron . . . . . . . . currently , no intradays are allowed\nonline ( only by fax / email ) because they want to approve same days , but they\nare looking at allowing them in the future .\n- - mark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.375+0000", "entityId": 4405, "properties": {"text": "Subject: april - - - flexible katy gas\nfyi - - -\nhere is what i show so far for april baseload / term katy flexible purchase gas :\noasis meter # 6780 :\naquila 10 . 000\nduke 20 . 000\nrichardson 1 . 312\nconoco 15 . 000\ntotal 46 . 312 flexible\nlonestar meter # 67 :\nduke 47 . 850 ( 50 . 000 - 2 . 150 inflexible )\nmitchell 20 . 000\ncrosstex ( 6 . 200 ) ( baseload sale )\ntotal 61 . 650 flexible\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.382+0000", "entityId": 4406, "properties": {"text": "Subject: tenaska 2 / 01\ni am trying to forward this money to tenaska tomorrow , so if you could change\nthis before 8 : 00 am tomorrow , i ' d appreciate it .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 03 / 29 / 2001\n04 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 03 / 29 / 2001 07 : 47 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska 2 / 01\nwe need to forward the money from the feb 2001 brazos sale to tenaska iv . i\nam assuming you want to handle this as before by entering a purchase demand\nfee on deal 529856 in the amount of $ 1 , 143 , 484 . 53 . there is already a demand\nfee for feb 2001 for $ 29 , 851 . 64 , so i think we just need to change that to\nthe new amount . let me know if you want to handle this differently .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.386+0000", "entityId": 4407, "properties": {"text": "Subject: tenaska 2 / 01\ni am trying to forward this money to tenaska tomorrow , so if you could change this before 8 : 00 am tomorrow , i ' d appreciate it .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 03 / 29 / 2001 04 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 03 / 29 / 2001 07 : 47 am\nto : daren j farmer / hou / ect @ ect\ncc :\nsubject : tenaska 2 / 01\nwe need to forward the money from the feb 2001 brazos sale to tenaska iv . i am assuming you want to handle this as before by entering a purchase demand fee on deal 529856 in the amount of $ 1 , 143 , 484 . 53 . there is already a demand fee for feb 2001 for $ 29 , 851 . 64 , so i think we just need to change that to the new amount . let me know if you want to handle this differently .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.391+0000", "entityId": 4408, "properties": {"text": "Subject: re : noms / actual vols for 3 / 28 / 01\nwe agree\n\" eileen ponton \" on 03 / 29 / 2001 01 : 06 : 03 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual vols for 3 / 28 / 01\nnom mcf mmbtu\n20 , 000 19 , 907 20 , 444\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.395+0000", "entityId": 4409, "properties": {"text": "Subject: enron / hpl actuals for march 28 , 2001\nestimated actual for march 28 , 2001\nteco tap 20 . 000\nwhen we receive the numbers from duke i will forward the true actual numbers to\nyou .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.400+0000", "entityId": 4410, "properties": {"text": "Subject: hpl nom for march 30 , 2001\n( see attached file : hplno 330 . xls )\n- hplno 330 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.404+0000", "entityId": 4411, "properties": {"text": "Subject: re : noms / actual vols for 3 / 28 / 01\nwe agree\n\" eileen ponton \" on 03 / 29 / 2001 01 : 06 : 03 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual vols for 3 / 28 / 01\nnom mcf mmbtu\n20 , 000 19 , 907 20 , 444\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.410+0000", "entityId": 4412, "properties": {"text": "Subject: enron / hpl actuals for march 28 , 2001\nestimated actual for march 28 , 2001\nteco tap 20 . 000\nwhen we receive the numbers from duke i will forward the true actual numbers\nto\nyou .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.415+0000", "entityId": 4413, "properties": {"text": "Subject: tenaska 2 / 01\nwe need to forward the money from the feb 2001 brazos sale to tenaska iv . i am assuming you want to handle this as before by entering a purchase demand fee on deal 529856 in the amount of $ 1 , 143 , 484 . 53 . there is already a demand fee for feb 2001 for $ 29 , 851 . 64 , so i think we just need to change that to the new amount . let me know if you want to handle this differently .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.420+0000", "entityId": 4414, "properties": {"text": "Subject: hpl nom for march 30 , 2001\n( see attached file : hplno 330 . xls )\n- hplno 330 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.425+0000", "entityId": 4415, "properties": {"text": "Subject: revised hplc purchase estimates - april 2001\ndeal # 126281 has been revised from 3 , 800 to 3 , 400 / d at meter # 6296 .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 29 / 2001 01 : 59\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 03 / 29 / 2001 11 : 12 : 01 am\nto : rcotten @ enron . com\ncc :\nsubject : revised hplc purchase estimates - april 2001\nbob :\nwe have just been advised by epgt ( el paso ) that they will be processing\nthe s . g . marshall gas april 2001 ; therefore , eogr will have to reduce the\nvolume that will be available for sale to hpl . the new estimate is 3 , 400\nmmbtu / day .\nthanks .\nsuzanne\n713 - 651 - 6858", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.430+0000", "entityId": 4416, "properties": {"text": "Subject: revised hplc purchase estimates - april 2001\ndeal # 126281 has been revised from 3 , 800 to 3 , 400 / d at meter # 6296 .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 03 / 29 / 2001 01 : 59 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 03 / 29 / 2001 11 : 12 : 01 am\nto : rcotten @ enron . com\ncc :\nsubject : revised hplc purchase estimates - april 2001\nbob :\nwe have just been advised by epgt ( el paso ) that they will be processing\nthe s . g . marshall gas april 2001 ; therefore , eogr will have to reduce the\nvolume that will be available for sale to hpl . the new estimate is 3 , 400\nmmbtu / day .\nthanks .\nsuzanne\n713 - 651 - 6858", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.435+0000", "entityId": 4417, "properties": {"text": "Subject: updated buyback list\nwestvaco is a brand new company . i have added march also , didn ' t know about that one . also , there will be one for rohm & haas , hopefully will be down in the next day or two . and there will not be one for bayer in april .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.441+0000", "entityId": 4418, "properties": {"text": "Subject: calpine daily gas nomination\n> juliann , there is a chance that\nthe unit under maintenance might be started this evening or early tomorrow .\ni will update as soon as i receive the information . thanks .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.449+0000", "entityId": 4419, "properties": {"text": "Subject: calpine daily gas nomination\n>\n>\njulie , as i mention earlier we hope to start the unit this afternoon but\nare still experiencing difficulties . i will keep you informed . thanks .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.454+0000", "entityId": 4420, "properties": {"text": "Subject: updated buyback list\nwestvaco is a brand new company . i have added march also , didn ' t know about\nthat one . also , there will be one for rohm & haas , hopefully will be down in\nthe next day or two . and there will not be one for bayer in april .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.458+0000", "entityId": 4421, "properties": {"text": "Subject: cp & l\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 03 / 30 / 2001 04 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njanet h wallis @ ect\n03 / 29 / 2001 08 : 49 am\nto : rebecca griffin / na / enron @ enron\ncc :\nsubject : cp & l\nplease add a spot sale for feb 21 at $ 5 . 16 for 5 k .\nthanks janet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.463+0000", "entityId": 4422, "properties": {"text": "Subject: cp & l\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 03 / 30 / 2001\n04 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njanet h wallis @ ect\n03 / 29 / 2001 08 : 49 am\nto : rebecca griffin / na / enron @ enron\ncc :\nsubject : cp & l\nplease add a spot sale for feb 21 at $ 5 . 16 for 5 k .\nthanks janet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.467+0000", "entityId": 4423, "properties": {"text": "Subject: tenaska iv - - cleburne march 2001\nhere is the spreadsheet for march :\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.472+0000", "entityId": 4424, "properties": {"text": "Subject: tenaska iv - - cleburne march 2001\nhere is the spreadsheet for march :\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.476+0000", "entityId": 4425, "properties": {"text": "Subject: re : e mail list for class\nplease respond to great idea , byron !\neverybody ,\ni ' ve created a new moderated list at http : / / . listbot . com /\nif you are interested in hearing info ( from anyone , not just me ) about the\nbammel road young families class , please go to the address above to\nsubscribe to the list .\nit ' s free .\nthen , if you have anything that you want to share with the class , just\ne - mail it to @ listbot . com .\n- ram .\n- - - - - original message - - - - -\nfrom : byron w . ellis , cfp , clu , chfc [ mailto : byronellis @ usa . net ]\nsent : friday , march 30 , 2001 8 : 31 am\nto : ram tackett\nsubject : e mail list for class\nwhat do you think about creating and maintaining an e mail address that will\nautomatically send an e mail to everyone in our class ? that way anyone that\nwanted to blanket the class could always do so without going through you all\nthe time .\nbyron\n\" make all you can , save all you can , give all you can . \"\njohn wesley\nbyron w . ellis , cfp ? , clu , chfc\nsenior financial advisor\namerican express financial advisors\nids life insurance company\n1450 lake robbins drive\nsuite 100\nthe woodlands , tx 77380\nphone 281 . 367 . 8658\nfax 281 . 364 . 9628\ne mail byronellis @ usa . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.482+0000", "entityId": 4426, "properties": {"text": "Subject: re : e mail list for class\ngreat idea , byron !\neverybody ,\ni ' ve created a new moderated list at http : / / . listbot . com /\nif you are interested in hearing info ( from anyone , not just me ) about the\nbammel road young families class , please go to the address above to\nsubscribe to the list .\nit ' s free .\nthen , if you have anything that you want to share with the class , just\ne - mail it to @ listbot . com .\n- ram .\n- - - - - original message - - - - -\nfrom : byron w . ellis , cfp , clu , chfc [ mailto : byronellis @ usa . net ]\nsent : friday , march 30 , 2001 8 : 31 am\nto : ram tackett\nsubject : e mail list for class\nwhat do you think about creating and maintaining an e mail address that will\nautomatically send an e mail to everyone in our class ? that way anyone that\nwanted to blanket the class could always do so without going through you all\nthe time .\nbyron\n\u0001 & make all you can , save all you can , give all you can . \u0001 8\njohn wesley\nbyron w . ellis , cfp \u0001 v , clu , chfc\nsenior financial advisor\namerican express financial advisors\nids life insurance company\n1450 lake robbins drive\nsuite 100\nthe woodlands , tx 77380\nphone 281 . 367 . 8658\nfax 281 . 364 . 9628\ne mail byronellis @ usa . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.486+0000", "entityId": 4427, "properties": {"text": "Subject: me again\ndid you survive bid week ?\n?\ni hear you lost another employee ( stacey ) . if you need someone to work for\nyou i suppose i ' m free ( in a freedom sense , not $ ) . do you have any staff\nleft ?\n?\njust giving you a hard time . ( like you need one )\n?\ngotta run . almost have my * & % $ # ! ! @ # taxes done . if people had to write a ? personal check every quarter for their taxes there would be some big ? changes . it sucks . ? ? ? later , ? ken ? ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.491+0000", "entityId": 4428, "properties": {"text": "Subject: hpl nominations for march 31 , 2001 and april 1 - 2 , 2001\n( see attached file : hplno 401 . xls ) ( see attached file : hplno 331 . xls )\n- hplno 401 . xls\n- hplno 331 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.496+0000", "entityId": 4429, "properties": {"text": "Subject: re : noms / actual flow for 3 / 29 / 01\nwe agree with the nomination .\n\" eileen ponton \" on 03 / 30 / 2001 10 : 05 : 40 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 29 / 01\nnom mcf mmbtu\n24 , 583 24 , 999 25 , 674\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.500+0000", "entityId": 4430, "properties": {"text": "Subject: hpl nominations for march 31 , 2001 and april 1 - 2 , 2001\n( see attached file : hplno 401 . xls ) ( see attached file : hplno 331 . xls )\n- hplno 401 . xls\n- hplno 331 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.505+0000", "entityId": 4431, "properties": {"text": "Subject: re : noms / actual flow for 3 / 29 / 01\nwe agree with the nomination .\n\" eileen ponton \" on 03 / 30 / 2001 10 : 05 : 40 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 3 / 29 / 01\nnom mcf mmbtu\n24 , 583 24 , 999 25 , 674\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.509+0000", "entityId": 4432, "properties": {"text": "Subject: marathon oil company - 4 / 01\ndeal # 705819 has been entered as a wellhead purchase from marathon oil\ncompany for april , 2001 production . the meter # is 6599 , trade zone 8 ,\n5 , 000 / d and a fixed price of $ 5 . 06 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.514+0000", "entityId": 4433, "properties": {"text": "Subject: marathon oil company - 4 / 01\ndeal # 705819 has been entered as a wellhead purchase from marathon oil company for april , 2001 production . the meter # is 6599 , trade zone 8 , 5 , 000 / d and a fixed price of $ 5 . 06 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.518+0000", "entityId": 4434, "properties": {"text": "Subject: ehronline web address change\nthis message is intended for ehronline users only .\ndue to a recent change to ehronline , the url ( aka \" web address \" ) for\naccessing ehronline needs to be changed on your computer . the change\ninvolves adding the letter \" s \" to the \" http \" reference in the url . the url\nfor accessing ehronline should be : https : / / ehronline . enron . com .\nthis change should be made by those who have added the url as a favorite on\nthe browser .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.523+0000", "entityId": 4435, "properties": {"text": "Subject: ehronline web address change\nthis message is intended for ehronline users only .\ndue to a recent change to ehronline , the url ( aka \" web address \" ) for accessing ehronline needs to be changed on your computer . the change involves adding the letter \" s \" to the \" http \" reference in the url . the url for accessing ehronline should be : https : / / ehronline . enron . com .\nthis change should be made by those who have added the url as a favorite on the browser .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.527+0000", "entityId": 4436, "properties": {"text": "Subject: final final version\ni have added shell and deleted south hampton .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.531+0000", "entityId": 4437, "properties": {"text": "Subject: calpine daily gas nomination\n>\n>\njulie , as i mention earlier we hope to start the unit this afternoon but\nare still experiencing difficulties . i will keep you informed . thanks .\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.536+0000", "entityId": 4438, "properties": {"text": "Subject: final version\nrohm & haas has been added and the sale for union carbide for april has been added .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.542+0000", "entityId": 4439, "properties": {"text": "Subject: final final version\ni have added shell and deleted south hampton .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.547+0000", "entityId": 4440, "properties": {"text": "Subject: final version\nrohm & haas has been added and the sale for union carbide for april has been\nadded .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.557+0000", "entityId": 4441, "properties": {"text": "Subject: me again\ndid you survive bid week ?\ni hear you lost another employee ( stacey ) . if you need someone to work for you i suppose i ' m free ( in a freedom sense , not $ ) . do you have any staff left ?\njust giving you a hard time . ( like you need one )\ngotta run . almost have my * & % $ # ! ! @ # taxes done . if people had to write a personal check every quarter for their taxes there would be some big changes . it sucks . ? ? later , ? ken ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.565+0000", "entityId": 4442, "properties": {"text": "Subject: nesa / hea ' s 9 th annual crawfish boil\nit ' s that time again . . . crawfish are in season and nesa / hea is geared up to\nmake sure you enjoy your fill on tuesday , april 17 th ! held again at\nwoodrow ' s located at 3111 chimney rock , the fun will start at 5 : 00 p . m . and\ncontinues until 8 : 00 p . m . !\n$ 15 in advance covers all the crawfish , jambalaya and beer or margaritas you\ncan hold - or pay $ 20 at the door . either way , drop a business card in the\nbowl when you register and participate in a drawing for an astros vs . braves\ngame to be played in late april ( courtesy of michael roberts , shell\ntrading ) !\nto register , print off this form and mail it in with your check to :\nnesa / hea\n6830 n . eldridge parkway , suite 302\nhouston , texas 77041\nor simply fill in your credit card information and fax it back to\n713 / 856 - 6199 .\ndon ' t miss this great annual event , sponsored in part by pace global ;\nmanhattan resources & shell gas transmission ! see you then !\nname : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncompany name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nguest name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nguest company name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncredit card # : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nexpiration date : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nteresa knight\nvice president , membership\nnesa / hea\n( 713 ) 856 - 6525", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.570+0000", "entityId": 4443, "properties": {"text": "Subject: fixed price swap profile\nplease respond to pat anderson [ [ enron 42 . xls : 2599 in enron 42 . xls ] ]\ndarren , thanks for your patience . call me when you have the time to go over this .\npatricia anderson\n512 - 370 - 8280\n- enron 42 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.574+0000", "entityId": 4444, "properties": {"text": "Subject: fixed price swap profile\n[ [ enron 42 . xls : 2599 in enron 42 . xls ] ]\ndarren , thanks for your patience . call me when you have the time to go over\nthis .\npatricia anderson\n512 - 370 - 8280\n- enron 42 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.579+0000", "entityId": 4445, "properties": {"text": "Subject: enron actuals for march 30 - april 1 , 201\nestimated actuals\nmarch 30 , 2001\nno flow\nmarch 31 , 2001\nno flow\napril 1 , 2001\nteco tap 35 . 000\nwhen i receive the actuals from duke i will forward them to you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.583+0000", "entityId": 4446, "properties": {"text": "Subject: hpl nom for april 3 , 2001\n( see attached file : hplno 403 . xls )\n- hplno 403 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.588+0000", "entityId": 4447, "properties": {"text": "Subject: enron actuals for march 30 - april 1 , 201\nestimated actuals\nmarch 30 , 2001\nno flow\nmarch 31 , 2001\nno flow\napril 1 , 2001\nteco tap 35 . 000\nwhen i receive the actuals from duke i will forward them to you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.593+0000", "entityId": 4448, "properties": {"text": "Subject: hpl nom for april 3 , 2001\n( see attached file : hplno 403 . xls )\n- hplno 403 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.598+0000", "entityId": 4449, "properties": {"text": "Subject: re : new production\nvance ,\nthe following deals have been created and entered in sitara :\nbob\nfrom : vance l taylor / enron @ enronxgate on 03 / 30 / 2001 12 : 57 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , melissa\ngraves / enron @ enronxgate , susan smith / enron @ enronxgate , donald p\nreinhardt / enron @ enronxgate\nsubject : new production\nbob ,\nthe following production is now on - line and a ticket should be created and\nentered into sitara based on the following :\ncounterparty meter volumes deal # price period global no .\nsuemaur explor & prod 9881 1300 mmbtu / d 709716 100 % gd less $ 0 . 10\n3 / 22 - 3 / 31 96058314\nmslatx p / l company 9880 2000 mmbtu / d 709721 100 % gd less $ 0 . 25 3 / 27 - 3 / 31\n96058031\nfyi , i have created and submitted a committed reserves firm ticket for the\nremaining term of the deal beginning with the month of april . additionally ,\nthis is a producer svcs . deal and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.603+0000", "entityId": 4450, "properties": {"text": "Subject: re : new production\nvance ,\nthe following deals have been created and entered in sitara :\nbob\nfrom : vance l taylor / enron @ enronxgate on 03 / 30 / 2001 12 : 57 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , melissa graves / enron @ enronxgate , susan smith / enron @ enronxgate , donald p reinhardt / enron @ enronxgate\nsubject : new production\nbob ,\nthe following production is now on - line and a ticket should be created and entered into sitara based on the following :\ncounterparty meter volumes deal # price period global no .\nsuemaur explor & prod 9881 1300 mmbtu / d 709716 100 % gd less $ 0 . 10 3 / 22 - 3 / 31 96058314\nmslatx p / l company 9880 2000 mmbtu / d 709721 100 % gd less $ 0 . 25 3 / 27 - 3 / 31 96058031\nfyi , i have created and submitted a committed reserves firm ticket for the remaining term of the deal beginning with the month of april . additionally , this is a producer svcs . deal and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.607+0000", "entityId": 4451, "properties": {"text": "Subject: entex apr 3 noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 02 / 2001 11 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nronald _ s _ fancher @ reliantenergy . com on 04 / 02 / 2001 11 : 32 : 33 am\nto : tom . acton @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : apr 3 noms\nthis is a multipart message in mime format .\n- - = _ mixed 005 acf 2486256 a 22 _ =\ncontent - type : multipart / alternative ; boundary = \" = _ alternative\n005 acf 2486256 a 22 _ = \"\n- - = _ alternative 005 acf 2486256 a 22 _ =\ncontent - type : text / plain ; charset = \" us - ascii \"\n- - = _ alternative 005 acf 2486256 a 22 _ =\ncontent - type : text / html ; charset = \" us - ascii \"\n- - = _ alternative 005 acf 2486256 a 22 _ = - -\n- - = _ mixed 005 acf 2486256 a 22 _ =\ncontent - type : application / x - ms - excel ; name = \" hpl - apr . xls \"\ncontent - disposition : attachment ; filename = \" hpl - apr . xls \"\ncontent - transfer - encoding : binary\n- hpl - apr . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.612+0000", "entityId": 4452, "properties": {"text": "Subject: entex apr 3 noms\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 02 / 2001 11 : 45\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nronald _ s _ fancher @ reliantenergy . com on 04 / 02 / 2001 11 : 32 : 33 am\nto : tom . acton @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : apr 3 noms\nthis is a multipart message in mime format .\n- - = _ mixed 005 acf 2486256 a 22 _ =\ncontent - type : multipart / alternative ; boundary = \" = _ alternative\n005 acf 2486256 a 22 _ = \"\n- - = _ alternative 005 acf 2486256 a 22 _ =\ncontent - type : text / plain ; charset = \" us - ascii \"\n- - = _ alternative 005 acf 2486256 a 22 _ =\ncontent - type : text / html ; charset = \" us - ascii \"\n- - = _ alternative 005 acf 2486256 a 22 _ = - -\n- - = _ mixed 005 acf 2486256 a 22 _ =\ncontent - type : application / x - ms - excel ; name = \" hpl - apr . xls \"\ncontent - disposition : attachment ; filename = \" hpl - apr . xls \"\ncontent - transfer - encoding : binary\n- hpl - apr . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.616+0000", "entityId": 4453, "properties": {"text": "Subject: first deliveries - comstock oil & gas and hesco gathering company\nsee attached letters", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.621+0000", "entityId": 4454, "properties": {"text": "Subject: first deliveries - comstock oil & gas and hesco gathering company\nsee attached letters", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.626+0000", "entityId": 4455, "properties": {"text": "Subject: pathing question\ndaren ,\ni have hpl resources meter 988055 wasn ' t sure if i should path this for april\n3 rd ' s deal change .\nand i have mobil oil meter 981040 that i pathed on the first for 30 , 000 that\nchange to 50 , 000 for the 3 rd .\ni didn ' t path them since they are industrials and aimee ' s notes told me to\npath industrials -\nexcept for a few exceptions .\nthanks , julie\nx 58639", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.631+0000", "entityId": 4456, "properties": {"text": "Subject: mobil beaumont - marol\njust want to confirm the march midcon volumes for mobil :\n3 / 21 28 , 271\n3 / 22 26 , 221\n3 / 23 24 , 459\n3 / 24 30 , 000\n3 / 25 30 , 000\n3 / 26 26 , 852\n3 / 27 30 , 000\n3 / 28 30 , 000\n3 / 29 30 , 000\n3 / 30 20 , 164\n3 / 31 12 , 365\ntotal 288 , 332 mmbtu\nthis is what i saw in pops - please let me know if there should be any\ndifferent volumes / days .\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 04 / 02 / 2001\n10 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti @ ect on 03 / 21 / 2001 01 : 58 pm\nto : rebecca griffin / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect\nsubject : mobil beaumont - marol\nrebecca\nfor mobil in march , beginning on march 21 , hpl started delivering 30 , 000 / d\nfor midcon ( just like we did in dec and jan , and maybe in feb too )\ncheck with daren farmer when you get ready to do the flash invoice on the\nfirst to confirm the midcon volume amounts and dates\nthanks ! ! ! ! !\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.636+0000", "entityId": 4457, "properties": {"text": "Subject: pathing question\ndaren ,\ni have hpl resources meter 988055 wasn ' t sure if i should path this for april 3 rd ' s deal change .\nand i have mobil oil meter 981040 that i pathed on the first for 30 , 000 that change to 50 , 000 for the 3 rd .\ni didn ' t path them since they are industrials and aimee ' s notes told me to path industrials -\nexcept for a few exceptions .\nthanks , julie\nx 58639", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.641+0000", "entityId": 4458, "properties": {"text": "Subject: mobil beaumont - marol\njust want to confirm the march midcon volumes for mobil :\n3 / 21 28 , 271\n3 / 22 26 , 221\n3 / 23 24 , 459\n3 / 24 30 , 000\n3 / 25 30 , 000\n3 / 26 26 , 852\n3 / 27 30 , 000\n3 / 28 30 , 000\n3 / 29 30 , 000\n3 / 30 20 , 164\n3 / 31 12 , 365\ntotal 288 , 332 mmbtu\nthis is what i saw in pops - please let me know if there should be any different volumes / days .\nthanks for your help .\nrebecca\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rebecca griffin / na / enron on 04 / 02 / 2001 10 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti @ ect on 03 / 21 / 2001 01 : 58 pm\nto : rebecca griffin / na / enron @ enron\ncc : daren j farmer / hou / ect @ ect\nsubject : mobil beaumont - marol\nrebecca\nfor mobil in march , beginning on march 21 , hpl started delivering 30 , 000 / d for midcon ( just like we did in dec and jan , and maybe in feb too )\ncheck with daren farmer when you get ready to do the flash invoice on the first to confirm the midcon volume amounts and dates\nthanks ! ! ! ! !\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.647+0000", "entityId": 4459, "properties": {"text": "Subject: lacy ' s eye exam\nplease respond to hi bubba !\nlacy got her eye exam yesterday . he said that she is very near sighted , but the diabetes has not affected her eyes at all . that was a relief . she ' s been having headaches , so i was concerned . they probably have been from her blood sugars being out of control . she is doing so much better now . i have stopped waking her up to check it in the night & the levels are so much better . she ' s acting a lot more like her old self now . a lot nicer to me . i guess her sugars out of control & all the stress of tiger dolls was what was wrong with her . she doesn ' t say the cruel things to me that she used to . i knew something had to be wrong with her . i thought surely i had not raised a child with such a mean spirit . anyway things are a lot better .\ntell cole that mimi hopes his eye appointment goes as well as lacy ' s . let him call to tell me about it . i hope he gets his teary eye \" fixed \" .\nlacy ' s eye doctor talked more about her teeth almost than he did her eyes . he couldn ' t believe her teeth are so perfect without braces . and she is so tanned , you can see her a mile away with those white teeth shining when she smiles . she has a dentist appointment for cleaning at the first part of next week . we ' ll talk later about when we are coming to your house . i ' m going to longview to a singles retreat sat . in case you call & i ' m not there . will be home sat . night . love ya , maw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.651+0000", "entityId": 4460, "properties": {"text": "Subject: lacy ' s eye exam\nhi bubba !\nlacy got her eye exam yesterday . he said that she is very near sighted , but\nthe diabetes has not affected her eyes at all . that was a relief . she ' s been\nhaving headaches , so i was concerned . they probably have been from her blood\nsugars being out of control . she is doing so much better now . i have\nstopped waking her up to check it in the night & the levels are so much\nbetter . she ' s acting a lot more like her old self now . a lot nicer to me . i\nguess her sugars out of control & all the stress of tiger dolls was what was\nwrong with her . she doesn ' t say the cruel things to me that she used to . i\nknew something had to be wrong with her . i thought surely i had not raised a\nchild with such a mean spirit . anyway things are a lot better .\ntell cole that mimi hopes his eye appointment goes as well as lacy ' s . let\nhim call to tell me about it . i hope he gets his teary eye \" fixed \" .\nlacy ' s eye doctor talked more about her teeth almost than he did her eyes .\nhe couldn ' t believe her teeth are so perfect without braces . and she is so\ntanned , you can see her a mile away with those white teeth shining when she\nsmiles . she has a dentist appointment for cleaning at the first part of next\nweek . we ' ll talk later about when we are coming to your house . i ' m going to\nlongview to a singles retreat sat . in case you call & i ' m not there . will be\nhome sat . night . love ya , maw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.656+0000", "entityId": 4461, "properties": {"text": "Subject: hpl nom for april 4 , 2001\n( see attached file : hplno 404 . xls )\n- hplno 404 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.665+0000", "entityId": 4462, "properties": {"text": "Subject: hpl nom for april 4 , 2001\n( see attached file : hplno 404 . xls )\n- hplno 404 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.674+0000", "entityId": 4463, "properties": {"text": "Subject: re : april 2001 spot purchases\nvance ,\ndeals for the following have been created and entered in sitara . the deal\nnumbers are noted below :\nbob\nfrom : vance l taylor / enron @ enronxgate on 03 / 30 / 2001 09 : 23 am\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia\nhakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan\nsmith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : april 2001 spot purchases\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the\nproduction month of april , 2001 . this production will be purchased on a\n\" spot \" basis and deal tickets should be created and entered into sitara based\non the following information :\ncounterparty meter volume deal # price\nwhiting petroleum corp 6523 200 mmbtu / d 692898 84 % if / hsc\ncoastal merchant energy , lp 5923 775 mmbtu / d 692026 100 % if / hsc less $ 0 . 265\ncoastal merchant energy , lp 5848 240 mmbtu / d 692011 84 % if / hsc\nswift energy 2630 21 mmbtu / d 712357 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 200 mmbtu / d 691873 84 % if / hsc\nhesco gathering oil co . 6063 300 mmbtu / d 421856 84 % if / hsc\nembassy natural gas inc . 6598 180 mmbtu / d 691982 84 % if / hsc\nvintage gas inc . 9603 100 mmbtu / d 712358 84 % if / hsc\nstone energy 9696 4500 mmbtu / d 690252 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 6500 mmbtu / d 692844 100 % if / hsc less $ 0 . 16\namerada hess ( hess energy svcs ) 0435 2714 mmbtu / d 689849 100 % if / hsc less\n$ 0 . 12\ncrosstex energy services , ltd . 0435 654 mmbtu / d 689894 100 % if / hsc less\n$ 0 . 12\ntri - union development 0435 149 mmbtu / d 689905 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 692461 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead\nportfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.679+0000", "entityId": 4464, "properties": {"text": "Subject: spot purchases - 04 / 01\nthe following deals have been entered today as wellhead purchases :\ndeal # meter # counterparty tr zn nom price\n712357 2630 swift energy 18 21 / d 100 % ifhsc less $ 1 . 38\n712358 9603 vintage gas 8 100 / d 84 % ifhsc\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.684+0000", "entityId": 4465, "properties": {"text": "Subject: re : april 2001 spot purchases\nvance ,\ndeals for the following have been created and entered in sitara . the deal numbers are noted below :\nbob\nfrom : vance l taylor / enron @ enronxgate on 03 / 30 / 2001 09 : 23 am\nto : robert cotten / hou / ect @ ect\ncc : lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : april 2001 spot purchases\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the production month of april , 2001 . this production will be purchased on a \" spot \" basis and deal tickets should be created and entered into sitara based on the following information :\ncounterparty meter volume deal # price\nwhiting petroleum corp 6523 200 mmbtu / d 692898 84 % if / hsc\ncoastal merchant energy , lp 5923 775 mmbtu / d 692026 100 % if / hsc less $ 0 . 265\ncoastal merchant energy , lp 5848 240 mmbtu / d 692011 84 % if / hsc swift energy 2630 21 mmbtu / d 712357 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 200 mmbtu / d 691873 84 % if / hsc\nhesco gathering oil co . 6063 300 mmbtu / d 421856 84 % if / hsc\nembassy natural gas inc . 6598 180 mmbtu / d 691982 84 % if / hsc\nvintage gas inc . 9603 100 mmbtu / d 712358 84 % if / hsc\nstone energy 9696 4500 mmbtu / d 690252 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 6500 mmbtu / d 692844 100 % if / hsc less $ 0 . 16\namerada hess ( hess energy svcs ) 0435 2714 mmbtu / d 689849 100 % if / hsc less $ 0 . 12\ncrosstex energy services , ltd . 0435 654 mmbtu / d 689894 100 % if / hsc less $ 0 . 12\ntri - union development 0435 149 mmbtu / d 689905 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 692461 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.689+0000", "entityId": 4466, "properties": {"text": "Subject: spot purchases - 04 / 01\nthe following deals have been entered today as wellhead purchases :\ndeal # meter # counterparty tr zn nom price\n712357 2630 swift energy 18 21 / d 100 % ifhsc less $ 1 . 38\n712358 9603 vintage gas 8 100 / d 84 % ifhsc\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.694+0000", "entityId": 4467, "properties": {"text": "Subject: re : feb 01 prod : sale to teco gas processing\nthere is a deal for february but for a different meter . deal 138095 for meter 6331 .\ndaren , did we purchase gas for meter 6884 for february ?\nkatherine herrera @ enron\n04 / 04 / 2001 09 : 57 am\nto : daren j farmer / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : feb 01 prod : sale to teco gas processing\nsale\ndeal # 235670\nexpired 12 / 00\njulie -\nthis deal has expired for teco gas processing , but we did have a sale in 02 / 01 .\nshould this deal be extended ?\npls let me know , so that i can redraft the sale through unify .\nkatherine\n5 - 8643\nunable to draft volume in unify due to the expired deal ticket ;", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.698+0000", "entityId": 4468, "properties": {"text": "Subject: feb 01 prod : sale to teco gas processing\nsale\ndeal # 235670\nexpired 12 / 00\njulie -\nthis deal has expired for teco gas processing , but we did have a sale in 02 / 01 .\nshould this deal be extended ?\npls let me know , so that i can redraft the sale through unify .\nkatherine\n5 - 8643\nunable to draft volume in unify due to the expired deal ticket ;", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.703+0000", "entityId": 4469, "properties": {"text": "Subject: feb 01 prod : sale to teco gas processing\nsale\ndeal # 235670\nexpired 12 / 00\njulie -\nthis deal has expired for teco gas processing , but we did have a sale in\n02 / 01 .\nshould this deal be extended ?\npls let me know , so that i can redraft the sale through unify .\nkatherine\n5 - 8643\nunable to draft volume in unify due to the expired deal ticket ;", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.708+0000", "entityId": 4470, "properties": {"text": "Subject: re : feb 01 prod : sale to teco gas processing\nthere is a deal for february but for a different meter . deal 138095 for\nmeter 6331 .\ndaren , did we purchase gas for meter 6884 for february ?\nkatherine herrera @ enron\n04 / 04 / 2001 09 : 57 am\nto : daren j farmer / hou / ect @ ect , julie meyers / hou / ect @ ect\ncc : sherlyn schumack / hou / ect @ ect\nsubject : feb 01 prod : sale to teco gas processing\nsale\ndeal # 235670\nexpired 12 / 00\njulie -\nthis deal has expired for teco gas processing , but we did have a sale in\n02 / 01 .\nshould this deal be extended ?\npls let me know , so that i can redraft the sale through unify .\nkatherine\n5 - 8643\nunable to draft volume in unify due to the expired deal ticket ;", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.713+0000", "entityId": 4471, "properties": {"text": "Subject: neon lesson # 6\nplease respond to\n- experiencing god week 6 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.718+0000", "entityId": 4472, "properties": {"text": "Subject: neon lesson # 6\n- experiencing god week 6 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.723+0000", "entityId": 4473, "properties": {"text": "Subject: re : actual flow for april 3 rd\nwe agree\n\" eileen ponton \" on 04 / 04 / 2001 10 : 41 : 53 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : actual flow for april 3 rd\nmeasurement report i just received shows \" 0 \" flow for the 3 rd . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.727+0000", "entityId": 4474, "properties": {"text": "Subject: re : actual flow for april 3 rd\nwe agree\n\" eileen ponton \" on 04 / 04 / 2001 10 : 41 : 53 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : actual flow for april 3 rd\nmeasurement report i just received shows \" 0 \" flow for the 3 rd . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.732+0000", "entityId": 4475, "properties": {"text": "Subject: re : noms / actual flow for 4 / 01 / 01\nwe agree with 35 . 000 for april 1 , 2001\n\" eileen ponton \" on 04 / 04 / 2001 09 : 37 : 36 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 4 / 01 / 01\ni will agree with the nom of 35 , 000 for the lst . we are experiencing\ndifficulties in downloading actual flow volumes from el paso thus my gas\ncontrol has advised to use a flow rate of 35 , 000 for the lst at this point\nin time . when we receive a more accurate measurement volume i will forward\nto you . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.737+0000", "entityId": 4476, "properties": {"text": "Subject: hpl nom for april 5 , 2001\n( see attached file : hplno 405 . xls )\n- hplno 405 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.742+0000", "entityId": 4477, "properties": {"text": "Subject: re : noms / actual flow for 4 / 01 / 01\nwe agree with 35 . 000 for april 1 , 2001\n\" eileen ponton \" on 04 / 04 / 2001 09 : 37 : 36 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 4 / 01 / 01\ni will agree with the nom of 35 , 000 for the lst . we are experiencing\ndifficulties in downloading actual flow volumes from el paso thus my gas\ncontrol has advised to use a flow rate of 35 , 000 for the lst at this point\nin time . when we receive a more accurate measurement volume i will forward\nto you . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.747+0000", "entityId": 4478, "properties": {"text": "Subject: hpl nom for april 5 , 2001\n( see attached file : hplno 405 . xls )\n- hplno 405 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.752+0000", "entityId": 4479, "properties": {"text": "Subject: air products - plant down for 4 days .\ndid you want me to confirm down on this meter starting today . ( pops ) .\ndeal is at 3 , 000 and pathed at 0 .\nmeter 1418 - thanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.757+0000", "entityId": 4480, "properties": {"text": "Subject: big cowboy - additional production\ntom did some footwork and questioning and determined where the additional big cowboy production is coming from . apparently , hpl cut a deal to purchase this gas at \" hpl meters \" at rocher and big cowboy # 2 , so the gas had been pathed on the gathering agreement into our pipe . all along , these volumes have been flowing into the gepl / big cowboy system and on to king ranch . tom and i spoke with clem about the most correct way to reflect the physical and determined that a transport usage ticket needed to be put into place , as im wellhead , to transfer the volumes from hpl to gepl and into the plant .\nwe unpathed the gathering agreement and brokered the hpl purchase to the tu tickets and moved the gas on our transport on gepl to the plant , effective april 1 . this resolves our overproduction issues for april and forward .\nplease let me know if you have any further questions , comments , or information to add .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.766+0000", "entityId": 4481, "properties": {"text": "Subject: hub destructions - rough draft in progress\nplease see attached , would love feedback .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.773+0000", "entityId": 4482, "properties": {"text": "Subject: enron actuals for april 4 , 2001\nestimated actuals\nteco tap 20 . 000\nas soon as we get a e - mail from duke i will send it to you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.778+0000", "entityId": 4483, "properties": {"text": "Subject: enron actuals for april 4 , 2001\nestimated actuals\nteco tap 20 . 000\nas soon as we get a e - mail from duke i will send it to you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.784+0000", "entityId": 4484, "properties": {"text": "Subject: hub destructions - rough draft in progress\nplease see attached , would love feedback .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.789+0000", "entityId": 4485, "properties": {"text": "Subject: big cowboy - additional production\ntom did some footwork and questioning and determined where the additional big\ncowboy production is coming from . apparently , hpl cut a deal to purchase\nthis gas at \" hpl meters \" at rocher and big cowboy # 2 , so the gas had been\npathed on the gathering agreement into our pipe . all along , these volumes\nhave been flowing into the gepl / big cowboy system and on to king ranch . tom\nand i spoke with clem about the most correct way to reflect the physical and\ndetermined that a transport usage ticket needed to be put into place , as im\nwellhead , to transfer the volumes from hpl to gepl and into the plant .\nwe unpathed the gathering agreement and brokered the hpl purchase to the tu\ntickets and moved the gas on our transport on gepl to the plant , effective\napril 1 . this resolves our overproduction issues for april and forward .\nplease let me know if you have any further questions , comments , or\ninformation to add .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.794+0000", "entityId": 4486, "properties": {"text": "Subject: re : nom / actual flow for april 4 th\nwe agree\n\" eileen ponton \" on 04 / 05 / 2001 11 : 00 : 46 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / actual flow for april 4 th\nnom mcf mmbtu\n20 , 000 19 , 909 20 , 447\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.798+0000", "entityId": 4487, "properties": {"text": "Subject: hpl nom for april 6 , 2001\n( see attached file : hplno 406 . xls )\n- hplno 406 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.803+0000", "entityId": 4488, "properties": {"text": "Subject: re : nom / actual flow for april 4 th\nwe agree\n\" eileen ponton \" on 04 / 05 / 2001 11 : 00 : 46 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : nom / actual flow for april 4 th\nnom mcf mmbtu\n20 , 000 19 , 909 20 , 447\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.808+0000", "entityId": 4489, "properties": {"text": "Subject: hpl nom for april 6 , 2001\n( see attached file : hplno 406 . xls )\n- hplno 406 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.813+0000", "entityId": 4490, "properties": {"text": "Subject: re : canus meter 5310\ndaren ,\naccording to vance ' s response to lauri ' s email , the nominations should be revised upwards approximately 650 / d on the gathering contract ( s ) at this meter . there is currently nominations of 1 , 353 / d ( 1 , 153 gathering and 200 transport ) . the flow should be around 2 , 000 / d . is it alright to include the increase of 650 / d with the other revisions to be made after trading on friday ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 04 / 05 / 2001 04 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 04 / 03 / 2001 12 : 07 pm\nto : lauri a allen / hou / ect @ ect , vance l taylor / hou / ect @ enron , robert cotten / hou / ect @ ect\ncc : tom acton / corp / enron @ enron , edward terry / hou / ect @ ect , kimberly vaughn / hou / ect @ ect\nsubject : re : canus meter 5310\nlauri ,\neffective 3 / 1 / 2001 , hplc amended its contract with royal production changing the price to 100 % hsc less $ 0 . 16 and extending the term through 2 / 28 / 02 . consequently , for march , hplc should be purhasing volumes from two wells at meter 5310 . effective april , hplc amended the same contract releasing the l . g . talbert # 2 lease in the committed reserves agreement ; mike morris is the gas buyer and expects volumes of approximately 2000 mmbtu / d . for april i nom 1132 / d ; bob , we should probably increase the nom to reflect the incremental production at this point .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : allen , lauri\nsent : tuesday , april 03 , 2001 10 : 04 am\nto : vance l taylor / hou / ect @ enron ; cotten , robert\ncc : acton , tom ; terry , edward ; vaughn , kimberly\nsubject : canus meter 5310\nlouis cox with copano ( the interconnecting party at this meter ) informed me that effective march lst , we should have been buying incremental gas from royal production at this point since they were no longer selling it to copano . there have been no changes in the producer services noms at this point , however . this point appears to be on a 14 day chart and the last flow i have access to shows noms of 1332 mm with bav of 3497 mm on march 18 th . bob / vance - could one of you guys check into this and see what the nom should be ? copano says they ' re not getting the gas in april either , but they do not know how long hplc is purchasing the incremental gas from royal . please let me know what the resolution is . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.817+0000", "entityId": 4491, "properties": {"text": "Subject: re : canus meter 5310\ndaren ,\naccording to vance ' s response to lauri ' s email , the nominations should be\nrevised upwards approximately 650 / d on the gathering contract ( s ) at this\nmeter . there is currently nominations of 1 , 353 / d ( 1 , 153 gathering and 200\ntransport ) . the flow should be around 2 , 000 / d . is it alright to include the\nincrease of 650 / d with the other revisions to be made after trading on friday ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 04 / 05 / 2001 04 : 13\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 04 / 03 / 2001 12 : 07 pm\nto : lauri a allen / hou / ect @ ect , vance l taylor / hou / ect @ enron , robert\ncotten / hou / ect @ ect\ncc : tom acton / corp / enron @ enron , edward terry / hou / ect @ ect , kimberly\nvaughn / hou / ect @ ect\nsubject : re : canus meter 5310\nlauri ,\neffective 3 / 1 / 2001 , hplc amended its contract with royal production changing\nthe price to 100 % hsc less $ 0 . 16 and extending the term through 2 / 28 / 02 .\nconsequently , for march , hplc should be purhasing volumes from two wells at\nmeter 5310 . effective april , hplc amended the same contract releasing the\nl . g . talbert # 2 lease in the committed reserves agreement ; mike morris is the\ngas buyer and expects volumes of approximately 2000 mmbtu / d . for april i nom\n1132 / d ; bob , we should probably increase the nom to reflect the incremental\nproduction at this point .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : allen , lauri\nsent : tuesday , april 03 , 2001 10 : 04 am\nto : vance l taylor / hou / ect @ enron ; cotten , robert\ncc : acton , tom ; terry , edward ; vaughn , kimberly\nsubject : canus meter 5310\nlouis cox with copano ( the interconnecting party at this meter ) informed me\nthat effective march lst , we should have been buying incremental gas from\nroyal production at this point since they were no longer selling it to\ncopano . there have been no changes in the producer services noms at this\npoint , however . this point appears to be on a 14 day chart and the last flow\ni have access to shows noms of 1332 mm with bav of 3497 mm on march 18 th .\nbob / vance - could one of you guys check into this and see what the nom should\nbe ? copano says they ' re not getting the gas in april either , but they do not\nknow how long hplc is purchasing the incremental gas from royal . please let\nme know what the resolution is . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.822+0000", "entityId": 4492, "properties": {"text": "Subject: wellhead volumes\ndaren ,\nplease click on the supply analysis tab of the attached spreadsheet to view\nthe wellhead volumes through 4 / 4 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.829+0000", "entityId": 4493, "properties": {"text": "Subject: wellhead volumes\ndaren ,\nplease click on the supply analysis tab of the attached spreadsheet to view the wellhead volumes through 4 / 4 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.834+0000", "entityId": 4494, "properties": {"text": "Subject: fw : payment\njo hillier - smith\nowner care manager\nsunsail worldwide sailing ltd\ntel : + 44 ( 0 ) 2392 222215\nemail : joh @ sunsail . com\nthis e - mail and any attachment is intended for the named addressee ( s )\nonly , or a person authorised to receive it on their behalf . the content\nshould be treated as confidential and the recipient may not disclose this\nmessage or any attachment to anyone else without authorisation . unauthorised\nuse , copying or disclosure may be unlawful . if this transmission is received\nin error please notify the sender immediately and delete this message from\nyour e - mail system . any view expressed by the sender of this message or any\nattachment may be personal and may not represent the view held by the company .\nsunsail limited ( company number 1239190 ) or sunsail worldwide sailing\nlimited ( company number 1658245 ) ? both with registered offices at the port\nhouse , port solent , portsmouth , hampshire , po 6 4 th , england\n- - - - - original message - - - - -\nfrom : ? ? jo hillier - smith\nsent : ? ? thursday , april 05 , 2001 3 : 43 pm\nto : ? ? ? ? ' dfarmer 2 @ ei . enron . com '\nsubject : ? ? ? ? ? ? ? payment\ngood afternoon mr farmer\nas i am sure you are aware we are in the procees of changing our banks , and\nthe new bank \" citibank \" was not able to process our charter fees for the lst\napril , i , therefore have a cheque to send to you to cover this april\npayment . ? please could you let me know the best address i can send this to ,\nyou may want me to send it straight to you or to your bank .\ni look forward to hearing from you .\nwith regards\njo\njo hillier - smith\nowner care manager\nsunsail worldwide sailing ltd\ntel : + 44 ( 0 ) 2392 222215\nemail : joh @ sunsail . com\nthis e - mail and any attachment is intended for the named addressee ( s )\nonly , or a person authorised to receive it on their behalf . the content\nshould be treated as confidential and the recipient may not disclose this\nmessage or any attachment to anyone else without authorisation . unauthorised\nuse , copying or disclosure may be unlawful . if this transmission is received\nin error please notify the sender immediately and delete this message from\nyour e - mail system . any view expressed by the sender of this message or any\nattachment may be personal and may not represent the view held by the company .\nsunsail limited ( company number 1239190 ) or sunsail worldwide sailing\nlimited ( company number 1658245 ) ? both with registered offices at the port\nhouse , port solent , portsmouth , hampshire , po 6 4 th , england", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.838+0000", "entityId": 4495, "properties": {"text": "Subject: fw : payment\njo hillier - smith\nowner care manager\nsunsail worldwide sailing ltd\ntel : + 44 ( 0 ) 2392 222215\nemail : joh @ sunsail . com\nthis e - mail and any attachment is intended for the named addressee ( s )\nonly , or a person authorised to receive it on their behalf . the content should be treated as confidential and the recipient may not disclose this message or any attachment to anyone else without authorisation . unauthorised use , copying or disclosure may be unlawful . if this transmission is received in error please notify the sender immediately and delete this message from your e - mail system . any view expressed by the sender of this message or any attachment may be personal and may not represent the view held by the company .\nsunsail limited ( company number 1239190 ) or sunsail worldwide sailing\nlimited ( company number 1658245 ) both with registered offices at the port house , port solent , portsmouth , hampshire , po 6 4 th , england\n- - - - - original message - - - - -\nfrom : jo hillier - smith\nsent : thursday , april 05 , 2001 3 : 43 pm\nto : ' dfarmer 2 @ ei . enron . com '\nsubject : payment\ngood afternoon mr farmer\nas i am sure you are aware we are in the procees of changing our banks , and the new bank \" citibank \" was not able to process our charter fees for the lst april , i , therefore have a cheque to send to you to cover this april payment . please could you let me know the best address i can send this to , you may want me to send it straight to you or to your bank .\ni look forward to hearing from you .\nwith regards\njo\njo hillier - smith\nowner care manager\nsunsail worldwide sailing ltd\ntel : + 44 ( 0 ) 2392 222215\nemail : joh @ sunsail . com\nthis e - mail and any attachment is intended for the named addressee ( s )\nonly , or a person authorised to receive it on their behalf . the content should be treated as confidential and the recipient may not disclose this message or any attachment to anyone else without authorisation . unauthorised use , copying or disclosure may be unlawful . if this transmission is received in error please notify the sender immediately and delete this message from your e - mail system . any view expressed by the sender of this message or any attachment may be personal and may not represent the view held by the company .\nsunsail limited ( company number 1239190 ) or sunsail worldwide sailing\nlimited ( company number 1658245 ) both with registered offices at the port house , port solent , portsmouth , hampshire , po 6 4 th , england", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.843+0000", "entityId": 4496, "properties": {"text": "Subject: ocean star brown bag - may 17 th , 2001\nnesa / hea member ' s :\nattached is the offshore energy center brown bag flyer . the oec consists of\nthe ocean star , a retired offshore jack - up rig and a museum in galveston ,\ntx . this brown bag also includes happy hour ! ! hope to see you there .\ndate : may 17 th , 2001\ntime : 11 : 30 am to 5 pm\n>\nplease call me or tracy cummins at ( 713 ) 856 - 6525 with any questions .\nthanks ,\nlana moore\ndirector of education\n- oecol . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.847+0000", "entityId": 4497, "properties": {"text": "Subject: ocean star brown bag - may 17 th , 2001\nnesa / hea member ' s :\nattached is the offshore energy center brown bag flyer . the oec consists of\nthe ocean star , a retired offshore jack - up rig and a museum in galveston ,\ntx . this brown bag also includes happy hour ! ! hope to see you there .\ndate : may 17 th , 2001\ntime : 11 : 30 am to 5 pm\n>\nplease call me or tracy cummins at ( 713 ) 856 - 6525 with any questions .\nthanks ,\nlana moore\ndirector of education\n- oecol . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.852+0000", "entityId": 4498, "properties": {"text": "Subject: estimated actuals for april 5 , 2001\nestimated actuals\nteco tap 24 . 917\nwhen we receive actuals from duke , i will forward them to you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.857+0000", "entityId": 4499, "properties": {"text": "Subject: hpl nom for april 7 , 2001\n( see attached file : hplno 407 . xls )\n- hplno 407 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.861+0000", "entityId": 4500, "properties": {"text": "Subject: eex meter # ' s\nfyi . . . hopefully this will help . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jill t zivley / hou / ect on 04 / 06 / 2001 04 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthomas flowers on 04 / 06 / 2001 04 : 14 : 24 pm\nto : \" ' jill . t . zivley @ enron . com ' \"\ncc :\nsubject : meter # ' s\nattached is a file showing various meter numbers . give me a call with any\nquestions .\n>\n- meters . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.870+0000", "entityId": 4501, "properties": {"text": "Subject: estimated actuals for april 5 , 2001\nestimated actuals\nteco tap 24 . 917\nwhen we receive actuals from duke , i will forward them to you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.877+0000", "entityId": 4502, "properties": {"text": "Subject: hpl nom for april 7 , 2001\n( see attached file : hplno 407 . xls )\n- hplno 407 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.883+0000", "entityId": 4503, "properties": {"text": "Subject: 3 - urgent - to avoid loss of information\nread very carefully\nthe application below ( migrate me button ) must be clicked between 10 : 00 am and 11 : 00 am on the dayof your migration .\nyour migration date is : april 9 th\nplease make sure you are connected to the network before you launch this application .\nclick the button only once !\nif a pop - up box appears , prompting you to \" abort , cancel or trust signer \" please select trust signer . this box may appear multiple times . please select trust signer for every instance .\nplease note : you will not notice any change to your existing personal address book , journal entries , private folder structure or calendar after running this application . any information you add to your personal address book , journal entries or calendar after you process this tool will need to be manually imported into outlook after you are migrated .\nfailure to run this application will result in your data not being imported to outlook .\nthank you for your cooperation ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.887+0000", "entityId": 4504, "properties": {"text": "Subject: first deliveries - comstock oil & gas and united oil & mineral\nsee attached files", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.893+0000", "entityId": 4505, "properties": {"text": "Subject: first deliveries - comstock oil & gas and united oil & mineral\nsee attached files", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.898+0000", "entityId": 4506, "properties": {"text": "Subject: pathing question\ndaren ,\nhoward set up the shell meters to one buyback ticket - i haven ' t\nbeen pathing the shell meters . before aimee had it set up\nindividual and howard said that it should all be tied to one .\nam i causing a problem by not pathing the meters now ?\nshould i go back and path the deal changes ?\nthanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.902+0000", "entityId": 4507, "properties": {"text": "Subject: desk to desk ticket between nng and pgev and oplc\ndaren has copied the old ticket and reput the volumes on a new deal ticket , dating back to the first , which reflects the correct texas desk entity . all of the buys / sales currently transacted at waha by the texas desk are done by hplc - hplc . please check your deal tickets as any volumes for april will need to be repathed , nom ' d , etc .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.908+0000", "entityId": 4508, "properties": {"text": "Subject: 708760\nthis deal ticket , which is our oasis and pge receipts from the central desk on nng . please update the ticket to reflect that hpl is receiving these volumes from ena - im central . this is having and adverse impact on our pathing .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.913+0000", "entityId": 4509, "properties": {"text": "Subject: desk to desk ticket between nng and pgev and oplc\ndaren has copied the old ticket and reput the volumes on a new deal ticket ,\ndating back to the first , which reflects the correct texas desk entity . all\nof the buys / sales currently transacted at waha by the texas desk are done by\nhplc - hplc . please check your deal tickets as any volumes for april will need\nto be repathed , nom ' d , etc .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.918+0000", "entityId": 4510, "properties": {"text": "Subject: hpl nom for april , 2001\n( see attached file : hplno 410 . xls )\n- hplno 410 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.924+0000", "entityId": 4511, "properties": {"text": "Subject: hpl nom for april , 2001\n( see attached file : hplno 410 . xls )\n- hplno 410 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.928+0000", "entityId": 4512, "properties": {"text": "Subject: gathering meters adjustments\nplease refer to the attached spreadsheet . the gathering meters nominations have been adjusted to the volumes in the avg column effective 4 / 9 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.933+0000", "entityId": 4513, "properties": {"text": "Subject: wellhead adjustments\ndaren ,\nplease see the attached file .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.937+0000", "entityId": 4514, "properties": {"text": "Subject: gathering meters adjustments\nplease refer to the attached spreadsheet . the gathering meters nominations\nhave been adjusted to the volumes in the avg column effective 4 / 9 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.942+0000", "entityId": 4515, "properties": {"text": "Subject: wellhead adjustments\ndaren ,\nplease see the attached file .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.946+0000", "entityId": 4516, "properties": {"text": "Subject: please process immediately to avoid loss of information\nread very carefully\nyour migration date is : today ! !\nplease make sure you are connected to the network before you launch this\napplication .\nclick the button only once !\nif a pop - up box appears , prompting you to \" abort , cancel or trust signer \"\nplease select trust signer . this box may appear multiple times . please\nselect trust signer for every instance .\nplease note : you will not notice any change to your existing personal\naddress book , journal entries , private folder structure or calendar after\nrunning this application . any information you add to your personal address\nbook , journal entries or calendar after you process this tool will need to be\nmanually imported into outlook after you are migrated .\nfailure to run this application will result in your data not being imported\nto outlook .\nthank you for your cooperation ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.952+0000", "entityId": 4517, "properties": {"text": "Subject: please process immediately to avoid loss of information\nread very carefully\nyour migration date is : today ! !\nplease make sure you are connected to the network before you launch this application .\nclick the button only once !\nif a pop - up box appears , prompting you to \" abort , cancel or trust signer \" please select trust signer . this box may appear multiple times . please select trust signer for every instance .\nplease note : you will not notice any change to your existing personal address book , journal entries , private folder structure or calendar after running this application . any information you add to your personal address book , journal entries or calendar after you process this tool will need to be manually imported into outlook after you are migrated .\nfailure to run this application will result in your data not being imported to outlook .\nthank you for your cooperation ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.957+0000", "entityId": 4518, "properties": {"text": "Subject: re : important ! ! ! - teco deal meeting\ni ' ve reserved eb 3143 b for this meeting .\n- - - - - original message - - - - -\nfrom : curry , mike\nsent : friday , april 6 , 2001 5 : 18 pm\nto : murphy , melissa ann ; allen , thresa ; reeves , leslie ; evans , casey ; white ,\nstacey ; dahlke , andrea ; wallis , janet ; farmer , daren ; gilbert - smith , doug ;\ndean , clint ; day , smith ; jester , larry ; wagner , joseph\ncc : gardner , stephanie ; cross , edith ; wiesepape , jason ; trefz , greg\nsubject : important ! ! ! - teco deal meeting\nimportance : high\nplease plan to attend a meeting to discuss the teco frontera deal on monday ,\n4 / 9 at 1 : 00 pm ( stephanie - please arrange a conference room and forward\ninformation to all ) . the teco deal will start scheduling tuesday 4 / 10 for\ngas and power flow wednesday 4 / 11 ( sorry for the late notice but teco wants\nto start asap ) . if you do not have a copy of the contract and would like one\nplease stop by my desk and grab one at eb 3119 b or print out the attached file\nbelow ( stephanie - please call and make sure all can attend the meeting ) .\ni will give a summary of the deal and discuss with you what our obligations\nare . please read the contract as this meeting will not be a substitute for a\nthorough reading !\nif you have any questions regarding this deal please call me at x 3 - 4258 or\npage me 877 - 498 - 2166 if i am not at my desk .\nthanks for your assistance with this , - mike\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.963+0000", "entityId": 4519, "properties": {"text": "Subject: re : teco trading conf . call - 3 : 30 monday\nthe conference room has changed to eb 3127 .\n- - - - - original message - - - - -\nfrom : curry , mike\nsent : friday , april 6 , 2001 5 : 34 pm\nto : gilbert - smith , doug ; dean , clint ; day , smith ; wagner , joseph ; wallis , janet ; farmer , daren ; zisman , stuart\ncc : gardner , stephanie\nsubject : teco trading conf . call - 3 : 30 monday\nplease attend a short trading meeting on the teco deal at 3 : 30 pm on monday 4 / 9 ( stephanie - please get us eb 3143 c starting at 3 : 30 pm , i already have it at 4 pm ) to discuss the trading aspects of the teco frontera deal . at 4 : 00 pm we will have a conference call with teco to coordinate anything for scheduling tues 4 / 10 for wed 4 / 11 . i apologize for the short notice .\nany questions please ask , we all need to read and understand the contract thoroughly in order to meet our obligations for teco .\n.\nthanks , - mike\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.968+0000", "entityId": 4520, "properties": {"text": "Subject: re : important ! ! ! - teco deal meeting\ni ' ve reserved eb 3143 b for this meeting .\n- - - - - original message - - - - -\nfrom : curry , mike\nsent : friday , april 6 , 2001 5 : 18 pm\nto : murphy , melissa ann ; allen , thresa ; reeves , leslie ; evans , casey ; white , stacey ; dahlke , andrea ; wallis , janet ; farmer , daren ; gilbert - smith , doug ; dean , clint ; day , smith ; jester , larry ; wagner , joseph\ncc : gardner , stephanie ; cross , edith ; wiesepape , jason ; trefz , greg\nsubject : important ! ! ! - teco deal meeting\nimportance : high\nplease plan to attend a meeting to discuss the teco frontera deal on monday , 4 / 9 at 1 : 00 pm ( stephanie - please arrange a conference room and forward information to all ) . the teco deal will start scheduling tuesday 4 / 10 for gas and power flow wednesday 4 / 11 ( sorry for the late notice but teco wants to start asap ) . if you do not have a copy of the contract and would like one please stop by my desk and grab one at eb 3119 b or print out the attached file below ( stephanie - please call and make sure all can attend the meeting ) .\ni will give a summary of the deal and discuss with you what our obligations are . please read the contract as this meeting will not be a substitute for a thorough reading !\nif you have any questions regarding this deal please call me at x 3 - 4258 or page me 877 - 498 - 2166 if i am not at my desk .\nthanks for your assistance with this , - mike\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.973+0000", "entityId": 4521, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.979+0000", "entityId": 4522, "properties": {"text": "Subject: re : bad debt\nteam :\nour objective is to define an action plan for each account and dedicate resources to implement the collection process .\nregards ,\nbrian\njanet h wallis\n04 / 10 / 2001 01 : 12 pm\nto : gary w lamphier / hou / ect @ ect , lee l papayoti / hou / ect @ ect , gerald lofton / hou / ect @ ect , michael c bilberry / hou / ect @ ect , daren farmer\ncc : brian redmond / hou / ect @ ect , bob m hall / na / enron @ enron\nsubject : bad debt\nplease plan to attend a meeting with brian redmond and bob hall on thursday at 4 : 00 in conference room 3567 .\neach person should be prepared to discuss the current status of each \" bad debt \" account that was assigned to them in february .\nif you are unable to attend you will need to schedule a private meeting with brian redmond at a later date .\njanet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.988+0000", "entityId": 4523, "properties": {"text": "Subject: bad debt\nplease plan to attend a meeting with brian redmond and bob hall on thursday at 4 : 00 in conference room 3567 .\neach person should be prepared to discuss the current status of each \" bad debt \" account that was assigned to them in february .\nif you are unable to attend you will need to schedule a private meeting with brian redmond at a later date .\njanet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.993+0000", "entityId": 4524, "properties": {"text": "Subject: aep _ hpl transition issues\nattached is an updated transitions list .\nplease review and send any changes so i can update .\ni will update again thursday and will include a column for status .\nwe are in the process of drafting procedures which will have to become a formal protocol for aep .\nthese are :\nrequest for new / maintenance of counterparties . once web page is developed , procedures will\nbe completed .\nrequest for new portfolios ( books ) after close . drafting procedures .\nrequest for new employee security .\nrequest to change curve mapping in erms / cps . drafting procedures .\nalso , it appears the it service agreement may have to be amended to cover the\nweb pages used to push operational data to customers ( if aep wants to continue\nthe service ) and the tariff filing system we just put into production .\nalso , we will need to resolve how we handle counterparties that enron credit has request we suspend trading when\naep wants to continue trading .\nwe have had discussions with aep about all of these issues and procedures .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:23.998+0000", "entityId": 4525, "properties": {"text": "Subject: deal 83389\nfyi\ni added meter 987195 to the above deal for august 1999 to clean up a strangers gas issue for clem . no deal volume was put in , i just needed the point to show up in unify for volume managment to assign a track id .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.003+0000", "entityId": 4526, "properties": {"text": "Subject: neon # 7\n- experiencing god week 7 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.008+0000", "entityId": 4527, "properties": {"text": "Subject: hpl nom for april 11 , 2001\n( see attached file : hplno 411 . xls )\n- hplno 411 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.012+0000", "entityId": 4528, "properties": {"text": "Subject: re : noms / actual flow for 4 / 09 / 01\nwe agree\n\" eileen ponton \" on 04 / 10 / 2001 11 : 50 : 01 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 4 / 09 / 01\n60 , 000 rate for 14 hours ( 9 : 00 am to 23 : 00 )\n40 , 000 rate for 10 hours ( 23 : 00 to 9 : 00 am )\nnom mcf mmbtu\n51 , 667 47 , 673 48 , 960\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.018+0000", "entityId": 4529, "properties": {"text": "Subject: duke deliveries to mobil\napparently , we inadvertently rolled the duke delivery to mobil refinery into april and gas flowed to mobil via centana from duke april 1 , 2 , and 3 . i understand that there were no tickets entered into sitara to cover that flow , so i have captured the transaction in sitara utilizing the following tickets :\n# 727481 reflects the hplc purchase from duke on centana ' s pipe april 1 , 2 , 3 total volume estimated to be 21 , 490 mm\n# 538950 has been updated to show deliveries to mobil refinery off centana ' s pipe for the same time period , same volume\n# 727497 reflects hplc selling the gas back to duke ( payback ) at the same price it was purchased , a volume of 10 , 000 mm for 4 / 12 , at meter 7001\nplease let me know if there are any questions . if i ' ve screwed something up , my apologies ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.023+0000", "entityId": 4530, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.028+0000", "entityId": 4531, "properties": {"text": "Subject: account activated\nthank you for replying to the verification .\ncongratulations , your listbot account has been activated !\nyou have been added to @ listbot . com .\nthis is a discussion list . in order to send mail to the list , you\nneed to address your message to : @ listbot . com\nwhen replying to list messages , use the \" reply to all \" feature\nof your email program to send the response back to the list .\nlistbot puts you in control , letting you manage all of your list\nsubscriptions from a single web site . if you ever want to unsubscribe\nfrom any listbot mailing list , please visit\nhttp : / / www . listbot . com / cgi - bin / subscriber and use the login info you\nprovided at signup :\ne - mail : dfarmer @ enron . com\nlistbot password : raw $ rho\nthanks !\nsincerely ,\nthe listbot team\nhttp : / / www . listbot . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.033+0000", "entityId": 4532, "properties": {"text": "Subject: jill ,\ni have had several discussions with daren farmer and below are a few questions remaining .\nann mag - which plant does this gas come into or out of ? daren farmer indicated that ngpl / trunkline is connected to la gloria ( agua dulce ) and tenn / coral / shannel are connected to the gulf plains plant ( agua dulce minus ) . do we have an option on which plant tailgait we would like delivery ? if so daren said we would prefer the gulf plains plant .\noakhill - are all three at the carthage hub ? if so , then the texas desk will give a quote , probably hsc minus , otherwise the east and central desk will need to quote the volume into tetco and koch mid , respectively .\nvaquillas ranch km - what plant processes this gas ?\nwhite heron - where is this ? could not find it on the map and daren was not familiar with this field .\nsheridan field - daren assumed this was the shell sheridan plant , but he wanted to verify with you .\nhungerford north - where is this ?\nbear den - where is this ?\nmoore ' s station - where is this ?\ndan hughes - hpl is quoting this volume ( as well as several other field connected to hpl ) and they need a meter number for this field .\nwe have one less day to get these quotes than originally anticipated because of friday being \" good friday \" and basically all of the 32 nd floor being out , myself included .\nso , let me know via voicemail or email what you can find out regarding the above questions . the properties we do not have any questions on are currently being quoted up , or will be tomorrow morning .\ncall with any questions\neric\nwork 713 - 345 - 7754\ncell 713 - 412 - 7754\nps - just a reminder , we are getting the volumes quoted at our preferred liquid point and it will be eex ' s responsibility / burden to get the gas to that point .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.038+0000", "entityId": 4533, "properties": {"text": "Subject: hpl nom for april 12 , 2001\n( see attached file : hplno 412 . xls )\n- hplno 412 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.043+0000", "entityId": 4534, "properties": {"text": "Subject: re : noms / actual flow for april 10 th\nwe agree\n\" eileen ponton \" on 04 / 11 / 2001 10 : 35 : 23 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for april 10 th\nnom mcf mmbtu\n40 , 000 41 , 447 42 , 566\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.049+0000", "entityId": 4535, "properties": {"text": "Subject: fw : calpine daily gas nomination\njulie , texas city had an unscheduled occurrence this morning tripping one\nunit . the estimated time for repairing the unit will be friday the 13 th . i\nwill update you and hpl gas control as we approach a restart time . the\nestimated burn until then will be around 65 , 000 mmbtu / day . thanks .\n> - - - - - original message - - - - -\n> from : ricky archer\n> sent : wednesday , april 11 , 2001 9 : 22 am\n> to : ' juliann . kemp @ enron . com '\n> cc : ' dfarmer @ enron . com ' ; ' tacton @ enron . com ' ; ' mmccoy @ enron . com '\n> subject : calpine daily gas nomination\n>\n> >\n>\n> ricky a . archer\n> fuel supply\n> 700 louisiana , suite 2700\n> houston , texas 77002\n> 713 - 830 - 8659 direct\n> 713 - 830 - 8722 fax\n>\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.054+0000", "entityId": 4536, "properties": {"text": "Subject: hpl / conoco - teco waha 03 / 23 / 01 purchase\ndaren , conoco invoiced hpl at $ 5 . 87 for 03 / 23 at pgev / waha and deal ticket 685350 shows $ 4 . 87 . can you confirm the price ? thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.060+0000", "entityId": 4537, "properties": {"text": "Subject: deal 557695\nmeter 985688 recorded flow from march 14 th to the end of the month , averaging around 130 per day . the above deal has a zero volume in it , creating an allocation exception at that point . bob is out and this is a gathering point , so do you have any objection with me inserting a deal volume of 130 per day for that time period ?\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.066+0000", "entityId": 4538, "properties": {"text": "Subject: neon week 8\n- experiencing god week 8 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.071+0000", "entityId": 4539, "properties": {"text": "Subject: re : noms / actual flow for 4 / 11 / 01\nwe agree but you may have a typo in your memo . we show we were on a 30 rate\nfrom 23 : 00 - 03 : 00 which is the 4 hours you were showing .\n\" eileen ponton \" on 04 / 12 / 2001 10 : 31 : 07 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual flow for 4 / 11 / 01\n9 : 00 am - 15 : 00 30 , 000 ( 6 hrs )\n15 : 00 - 23 : 00 0\n23 : 00 - 9 : 00 am 30 , 000 ( 4 hrs )\nnom mcf mmbtu\n12 , 500 12 , 982 13 , 333", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.078+0000", "entityId": 4540, "properties": {"text": "Subject: hpl nom for april 13 - 16 , 2001\n( see attached file : hplno 413 . xls )\n- hplno 413 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.086+0000", "entityId": 4541, "properties": {"text": "Subject: calpine daily gas nomination\njulie , the texas city plant will have a unit down until late friday night or\nearly saturday morning . i will send the weekend nomination this afternoon .\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.093+0000", "entityId": 4542, "properties": {"text": "Subject: bammel egg hunt\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nbuild a marketing database and send targeted html and text e - mail\nnewsletters\nto your customers with list builder .\nhttp : / / www . listbuilder . com\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.098+0000", "entityId": 4543, "properties": {"text": "Subject: young families egg hunt\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nstart your own free email list at http : / / www . listbot . com / links / joinlb\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.103+0000", "entityId": 4544, "properties": {"text": "Subject: southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\nelizabeth -\ndeal # 690249 - sale\ncould you pls the pricing on this deal for march 2001 production for days 25 & 26 to $ 5 . 285 ?\ni think daren is out for the remainder of the day and i need to send out my invoice this afternoon .\nthanks - katherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 04 / 16 / 2001 03 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 16 / 2001 03 : 24 pm\nto : daren j farmer / hou / ect\ncc : janet h wallis / hou / ect\nsubject : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\ndaren -\nper janet , the price of $ 5 . 235 + . 05 for deal # 690249 is correct .\ncould you pls change the price in the system to $ 5 . 285 for days 25 & 26 ?\nthanks - katherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 04 / 16 / 2001 03 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 16 / 2001 12 : 43 pm\nto : janet h wallis / hou / ect\ncc : daren j farmer / hou / ect\nsubject : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\njanet -\nper southern union ' s confirmation sheet , the 15 , 000 mmbtus spot deal on days 03 / 25 & 3 / 26 should be priced at hsc gdp da + . 05 ( at tuesday , 3 / 27 / 01 pricing - which was $ 5 . 235 ) . currently , sitara is showing a price of hsc gdp + . 05 .\nis this tuesday pricing correct ? if so , pls forward this to daren so that he can change the price in sitara to $ 5 . 235 + . 05 ( totaling $ 5 . 285 ) .\nthanks - katherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.107+0000", "entityId": 4545, "properties": {"text": "Subject: southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\ndaren -\nper janet , the price of $ 5 . 235 + . 05 for deal # 690249 is correct .\ncould you pls change the price in the system to $ 5 . 285 for days 25 & 26 ?\nthanks - katherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 04 / 16 / 2001 03 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 16 / 2001 12 : 43 pm\nto : janet h wallis / hou / ect\ncc : daren j farmer / hou / ect\nsubject : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\njanet -\nper southern union ' s confirmation sheet , the 15 , 000 mmbtus spot deal on days 03 / 25 & 3 / 26 should be priced at hsc gdp da + . 05 ( at tuesday , 3 / 27 / 01 pricing - which was $ 5 . 235 ) . currently , sitara is showing a price of hsc gdp + . 05 .\nis this tuesday pricing correct ? if so , pls forward this to daren so that he can change the price in sitara to $ 5 . 235 + . 05 ( totaling $ 5 . 285 ) .\nthanks - katherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.112+0000", "entityId": 4546, "properties": {"text": "Subject: southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\njanet -\nper southern union ' s confirmation sheet , the 15 , 000 mmbtus spot deal on days 03 / 25 & 3 / 26 should be priced at hsc gdp da + . 05 ( at tuesday , 3 / 27 / 01 pricing - which was $ 5 . 235 ) . currently , sitara is showing a price of hsc gdp + . 05 .\nis this tuesday pricing correct ? if so , pls forward this to daren so that he can change the price in sitara to $ 5 . 235 + . 05 ( totaling $ 5 . 285 ) .\nthanks - katherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.117+0000", "entityId": 4547, "properties": {"text": "Subject: on call notes april 13 th - 15 th\nfriday - april 13 th\n6 : 00 pm notified by gas control that we needed to deliver to centana for operational reasons , approx . 30 - 50 mmbtu rate . contacted carlos to see if it was possible since we are over are storage capacity at centana . . . he spoke with ron with centana and it was approved .\nsaturday - april 14 th\n8 : 30 am notified by gas control that the freeport delivery to dow was increased to 10 . 0 . also , exxon katy was over delivering approx . 7 - 9 mmbtu , and they had over delivered a similar volume on friday . confrimed with jackie that it was ok for saturday .\nsunday - april 15 th\nno calls - except from the easter bunny !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.123+0000", "entityId": 4548, "properties": {"text": "Subject: hpl noms for april 17 , 2001\n( see attached file : hplno 417 . xls )\n- hplno 417 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.129+0000", "entityId": 4549, "properties": {"text": "Subject: tenaska iv 12 / 00 , 2 / 01 and 3 / 01\ni have several changes to the demand fees for tenaska iv . let me know if you have any questions .\nfor dec 2000 , we need to adjust the demand fee on deal 529856 to account for a volume change on the receipt side . we overpaid williams and are going to take our money back . we then need to refund tenaska iv . please change the demand fee from $ 878 , 330 . 63 to $ 918 , 566 . 13 .\nfor feb 2001 , please change the demand fee on deal 384258 from $ 2 , 341 , 675 . 50 to $ 3 , 438 , 325 . 95 . tenaska iv owes us for the remaining expenses . also , please change the agency volume on deal 514353 from 45 , 000 to 45 , 067 .\nfor march 2001 , please change the demand fee on deal 384258 from $ 2 , 591 , 791 . 50 to $ 2 , 653 , 694 . 95 . i have attached the march spreadsheet i received from mark in case you want to see it .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.134+0000", "entityId": 4550, "properties": {"text": "Subject: shut - in of meter 989842\nmeter 0989842 tri - c resources gov . daniel was shut in at approximately 12 : 00 pm on friday april 13 . the producer was shut in due to high hydrocarbon dew point .\nif you have any questions please call me at 3 . 6449 .\nthanks\ngary hanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.139+0000", "entityId": 4551, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.144+0000", "entityId": 4552, "properties": {"text": "Subject: txu gas distribution deal # 589007\ncould you verify the pricing on txu gas distribution deal # 589007 for the following days ?\nsitara shows :\n2 / 6 - 2 / 6 5 , 000 mmbtu @ 6 . 62\n2 / 10 - 2 / 12 30 , 000 mmbtu @ katy . hub . gdp . d . a\n40 , 000 mmbtu @ waha . hub . gdp . d . a\ntxu gas paid based on :\n2 / 6 - 2 / 6 5 , 000 mmbtu @ 5 . 62\n2 / 10 - 2 / 12 40 , 000 mmbtu @ katy . hub . gdp . d . a\n50 , 000 mmbtu @ waha . hub . gdp . d . a\nthanks for your help . let me know if this should go to someone else .\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.149+0000", "entityId": 4553, "properties": {"text": "Subject: re : glo / egm gas / crude swap\nwhat do you think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 04 / 17 / 2001 10 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njoanie h ngo\n04 / 16 / 2001 10 : 07 am\nto : julie meyers / hou / ect @ ect\ncc : katherine herrera / corp / enron @ enron\nsubject : re : glo / egm gas / crude swap\njulie ,\ndeal 640685 for march 01 production : per daren farmer ( in the audit field in sitara ) , this was copied from deal # 547201 . this deal is the crude swap where volume stayed but price got zeroed out and booked as a demand charge under 679847 and 679848 .\nplease confirm that it is the crude swap and rebook as necessary .\nif you have any questions or need additional clarification , please let me or katherine h . know .\nthanks in advance for your help on this matter .\njoanie\nx 36574\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joanie h ngo / hou / ect on 04 / 16 / 2001 09 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njulie meyers\n03 / 19 / 2001 05 : 33 pm\nto : katherine herrera / corp / enron @ enron\ncc : joanie h ngo / hou / ect @ ect , george weissman / hou / ect @ ect , bryce baxter / hou / ect @ ect , donnie myers / na / enron @ enron , kam keiser / hou / ect @ ect , elizabeth l hernandez / hou / ect @ ect\nsubject : re : glo / egm gas / crude swap\n547201 & 591307 has been zeroed out . 679847 & 679848 have been created between ena & hplc . 679859 has been created for the sale to egm from ena wellhead . i have placed both january and february on that deal .\nif this will not work , please let me know .\nthanks ! !\njulie\nkatherine herrera @ enron\n03 / 06 / 2001 03 : 36 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : glo / egm gas / crude swap\nfyi -\nwill the price be reversed on hplc sale for janol and feb 01 prod ?\nthanks - katherine\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 03 / 06 / 2001 03 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : bryce baxter @ ect 03 / 05 / 2001 06 : 33 pm\nto : george weissman / hou / ect @ ect\ncc : donnie myers / na / enron @ enron , katherine herrera / corp / enron @ enron , david baumbach / hou / ect @ ect\nsubject : glo / egm gas / crude swap\ngeorge - i ' ve done some t - accounts ( the bean counter in me ) and i think the following is the best way to handle this going forward :\nchange the existing deals , 547201 and 591307 , to a zero price . this will eliminate the a / r balance on hpl ' s books for glo , but will keep the volume nom ' d to glo and will not impact ua 4 .\nenter a ticket on hpl for a sale to ena for the value of the gas that was zeroed out on the above tickets . this should be entered as a demand charge only and the amounts should be $ 974 , 144 for 1 / 01 and $ 766 , 304 for 2 / 01 .\nenter a ticket on ena where the ena - wellhead book purchases the demand from hpl . the amounts would be the same as in # 2 above .\nenter a ticket on ena where the ena - wellhead book sells demand to egm for the value of the crude oil for the prior month . for 1 / 01 , the sale would be for $ 886 , 638 . 60 ( the 12 / 00 crude oil delivered to egm by glo ) . for 2 / 01 , the sale would be for $ 839 , 008 . 29 ( the 1 / 01 crude oil delivered to egm by glo ) .\nthis will require the following steps be taken monthly as this deal goes forward :\nthe price on the sale from hpl to glo will need to be zeroed out monthly .\nthe demand charges on steps 2 and 3 will have to be updated to reflect the value zeroed out .\nthe demand charges on step 4 will have to be updated to reflect the value of the crude delivered to egm .\nonce this is done , the a / r balance for glo will be cleared , the margin will be on the ena wellhead book , and the intercompany transactions will move the money from egm to hpl . this needs to be done monthly prior to flash , which will prevent any oa variances . the index for the gas value is available shortly after the lst of the month , and since the volume is firm , there shouldn ' t be a problem calculating the value . we should also know the value of the crude oil so that we can flash the sale from ena to egm . if you have any questions or see a better way to do this , please let me know . thanks .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.153+0000", "entityId": 4554, "properties": {"text": "Subject: re : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\ni was not aware that julie was out yesterday . i left early yesterday and this did not get done till this morning .\nkatherine herrera @ enron\n04 / 16 / 2001 03 : 56 pm\nto : elizabeth l hernandez / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , daren j farmer / hou / ect\nsubject : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\nelizabeth -\ndeal # 690249 - sale\ncould you pls the pricing on this deal for march 2001 production for days 25 & 26 to $ 5 . 285 ?\ni think daren is out for the remainder of the day and i need to send out my invoice this afternoon .\nthanks - katherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 04 / 16 / 2001 03 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 16 / 2001 03 : 24 pm\nto : daren j farmer / hou / ect\ncc : janet h wallis / hou / ect\nsubject : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\ndaren -\nper janet , the price of $ 5 . 235 + . 05 for deal # 690249 is correct .\ncould you pls change the price in the system to $ 5 . 285 for days 25 & 26 ?\nthanks - katherine\n5 - 8643\n- - - - - - - - - - - - - - - - - - - - - - forwarded by katherine herrera / corp / enron on 04 / 16 / 2001 03 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatherine herrera\n04 / 16 / 2001 12 : 43 pm\nto : janet h wallis / hou / ect\ncc : daren j farmer / hou / ect\nsubject : southern union - 03 / 01 prod - austin spot deal # 690249 ( sale )\njanet -\nper southern union ' s confirmation sheet , the 15 , 000 mmbtus spot deal on days 03 / 25 & 3 / 26 should be priced at hsc gdp da + . 05 ( at tuesday , 3 / 27 / 01 pricing - which was $ 5 . 235 ) . currently , sitara is showing a price of hsc gdp + . 05 .\nis this tuesday pricing correct ? if so , pls forward this to daren so that he can change the price in sitara to $ 5 . 235 + . 05 ( totaling $ 5 . 285 ) .\nthanks - katherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.158+0000", "entityId": 4555, "properties": {"text": "Subject: fw : subject : survivor 2\nthe contestants ain ' t got a chance !\n- - - - - original message - - - - -\nfrom : griffin , barbara [ smtp : griffin @ lonestarsteel . com ]\nsent : tuesday , april 17 , 2001 8 : 23 am\nto : alan alvestad ( e - mail ) ; dheineke @ tsteel .\ncom dheineke @ tsteel . com heineke ( e - mail ) ;\nk 5 gat @ aol . com k 5 gat @ aol . com com\n( e - mail ) ; kim howry ( e - mail ) ; lynda munkres ( e - mail ) ; lvan _ johnson @ hotmail\n. com lvan _ johnson @ hotmail\n. com com ( e - mail ) ; neals @ hump\n. com neals @ hump . com com ( e - mail ) ;\npgordon @ sfasu . edu pgordon @ sfasu\n. edu ( e - mail ) ; raymond parker ( e - mail ) ;\nteakerl 065 @ aol . com teakerl 065 @ aol\n. com com ( e - mail ) ; virginia james ( e - mail )\nsubject : fw : subject : survivor 2\n- - - - - original message - - - - -\nfrom : betty . politte @ claires . com\n[ mailto : betty . politte @ claires . com ]\nsent : monday , april 16 , 2001 7 : 36 pm\nto : eddieferguson @ webtv . net\nsubject : fwd : subject : survivor 2\nsubject : survivor 2\na major network is planning the show \" survivor 2 \" this winter . in\nresponse ,\ntexas is planning \" survivor : texas style . \" the contestants will\nstart in dallas , travel through waco , austin , san antonio , over to\nhouston ,\nand down to brownsville . they will proceed up to del rio , on to el paso ,\nthen to midland / odessa , lubbock , and amarillo . from there , they proceed to\nabilene , and on to ft . worth and back to dallas .\neach will be driving a pink volvo with a bumper sticker that reads , \" i ' m\ngay , i voted for al gore , and i ' m here to confiscate your guns . \"\nthe first one to make it back to dallas wins .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.163+0000", "entityId": 4556, "properties": {"text": "Subject: re : eex bid\njill is not representing the pipeline anymore brian riley should be handling this for eex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.170+0000", "entityId": 4557, "properties": {"text": "Subject: re : eex bid\ndaren ,\nit is my understanding that enron should not be attempting to purchase wellhead supply on hpl per the contract", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.176+0000", "entityId": 4558, "properties": {"text": "Subject: hpl nom for april 18 , 2001\n( see attached file : hplno 418 . xls )\n- hplno 418 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.184+0000", "entityId": 4559, "properties": {"text": "Subject: re : nom / actual volume for april 16 th\nwe agree\n\" eileen ponton \" on 04 / 17 / 2001 11 : 00 : 35 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / actual volume for april 16 th\nnom mcf mmbtu\n30 , 000 29 , 974 30 , 784\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.191+0000", "entityId": 4560, "properties": {"text": "Subject: re : fw : first deliveries - comstock oil & gas and hesco gathering\ncompany\ndaren ,\nis it okay to enter a wellhead deal in april for a purchase from hesco at meter # 9885 priced at gas daily less $ 0 . 14 with a volume of 1 , 100 / d ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 04 / 17 / 2001 09 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : robert cotten 04 / 16 / 2001 04 : 13 pm\nto : vance l taylor / enron @ enronxgate @ enron\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate @ enron , susan smith / enron @ enronxgate @ enron , melissa graves / enron @ enronxgate @ enron\nsubject : re : fw : first deliveries - comstock oil & gas and hesco gathering company\nvance ,\ndeal tickets have been created and entered in sitara as noted below . deal # 652448 was entered by risk as a term purchase at a price of ifhsc less $ 0 . 14 . you have indicated the price to be gas daily less $ 0 . 14 . which price is correct ?\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 03 / 2001 05 : 40 pm\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : fw : first deliveries - comstock oil & gas and hesco gathering company\nbob ,\nthe following production is now on - line and a ticket should be created and entered into sitara based on the following :\ncounterparty meter volumes deal # price period global no .\ncomstock oil cernosek , clem ; consemiu , donna ; cook , robert ; camp , howard ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay , james ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ; walters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ; jones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan smith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p reinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ; cotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ; csikos , lisa ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ; acton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney , christy ; tisdale , earl ; farmer , daren\nsubject : first deliveries - comstock oil & gas and hesco gathering company\nsee attached letters\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.196+0000", "entityId": 4561, "properties": {"text": "Subject: re : base gas roll\nthanks ,\ngg\nfrom : luis aybar / enron @ enronxgate on 04 / 17 / 2001 03 : 54 pm\nto : george grant / hou / ect @ ect\ncc : dat truong / enron @ enronxgate , jayant krishnaswamy / enron @ enronxgate\nsubject : base gas roll\ngeorge ,\nwe will run the base gas roll tonight per your request .\nl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.200+0000", "entityId": 4562, "properties": {"text": "Subject: deal 709296 astra\ndaren ,\nnot to be picky , but this deal is in for 5322 and i confirmed 5323 , do you mind if i up it one giant decatherm . i need to so i can path in balance and prevent errors on our reports .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.205+0000", "entityId": 4563, "properties": {"text": "Subject: hpl nom for april 19 , 2001\n( see attached file : hplno 419 . xls )\n- hplno 419 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.210+0000", "entityId": 4564, "properties": {"text": "Subject: re : nom / actual volume for april 17 th\nwe agree\n\" eileen ponton \" on 04 / 18 / 2001 10 : 48 : 19 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / actual volume for april 17 th\nnom mcf mmbtu\n50 , 000 48 , 264 49 , 568\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.214+0000", "entityId": 4565, "properties": {"text": "Subject: wellhead adjustments\nthe attached spreadsheet represents adjustments to nominations on wellhead meters . the adjustments were made effective 4 / 18 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.219+0000", "entityId": 4566, "properties": {"text": "Subject: retroactive adjustments\nthe following volume adjustment was entered today retroactive to 4 / 1 / 01 :\ndeal # meter # tr . zn . from to price\n737854 9885 05 0 1 , 100 gas daily - 0 . 14\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.224+0000", "entityId": 4567, "properties": {"text": "Subject: enron announcement\ncar rental options for enron travelers\nrental car contracts for 2001 have been awarded to :\nnational car rental ( primary ) and alamo rent - a - car ( secondary ) .\nthe intent of these agreements is to consolidate and leverage enron ' s total car rental spend to achieve the most favorable rates and non - pricing provisions ( i . e . insurance ) .\nnational car rental , due to its service levels , availability and total value proposition , has been awarded primary status and is recommended as the first choice for enron travelers ' needs .\nalamo rent - a - car , a sister company to national , has been awarded a contract reflecting a secondary status , due to its service levels , availability and low cost solutions . alamo is recommended as an alternative to national , where available .\nwhen you rent a vehicle in the united states , ( including puerto rico ) or canada , the following insurance provisions are included , regardless of rate selected :\n1 . l / dw ( loss / damage waiver ) - this is what is called comprehensive or collision on your personal auto . it covers the rental vehicle and pays for any damage to it .\n2 . liability - this covers people and property outside the rental vehicle . for both national and alamo , the coverage is $ 100 , 000 per person , $ 300 , 000 per occurrence and $ 50 , 000 for property damage .\n* * important * * *\nthese coverages apply regardless of rate selected , as long as the following contract id is communicated at the time of reservation and rental is recorded on the transaction rental agreement . ( national - 5000838 alamo - # 143974 )\nto enjoy the highest levels of service while renting a vehicle from enron ' s preferred suppliers , it is recommended that each traveler enroll in national ' s and alamo ' s preferred traveler programs . national ' s emerald club membership and alamo ' s quicksilver program are designed to speed the transaction time by providing services such as counter bypass and rapid return . the enrollment fees for these programs have been waived for enron travelers . enrollment packets will be mailed to the addresses of enron american express t & e cardholders . you may also find an enrollment form on the enron travel program intranet @ gss . enron . com .\nif you have any questions or comments , please contact jeff leath at 713 - 646 - 6165 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.228+0000", "entityId": 4568, "properties": {"text": "Subject: calpine daily gas nomination\n>\nwill be out friday , will call if there are any changes . thanks\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.233+0000", "entityId": 4569, "properties": {"text": "Subject: re : fw : king ranch balancing . xls\nin looking at the mtd prod . vs . nom numbers , we have consistently been under nominated by about 2 , 000 / day at three rivers and 2 , 000 / day at the saxet well . we are making our imbalance worse , cumulative . we need to update our forward position and our nomination by 4 , 000 / day to stay in balance to entitlements .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.238+0000", "entityId": 4570, "properties": {"text": "Subject: re : shut - in of meter 989842\ni have a letter i can send on this one cheryl . mike please forward gpk to me .\ncheryl dudley 04 / 19 / 2001 07 : 26 am to : shawna flynn / hou / ect @ ect , michael w morris / hou / ect @ ect , james mckay / hou / ect @ ect , daren j farmer / enron @ enronxgate , edward terry / hou / ect @ ect , earl tisdale / hou / ect @ ect cc : gary a hanks / hou / ect @ ect subject : re : shut - in of meter 989842\ni need help on this one . i spoke to gary shortly after he sent this e - mail the other day . i wasn ' t sure what to say in the letter regarding how long they would be shut in - - is there some repair that needs to be done to remedy the situation ? are we ever going to take the gas again ? should i tell them that it will remain shut in until the gas meets our specs ?\nat gary ' s suggestion , i called mike morris & left a message , but haven ' t heard back from him . therefore , i am sending this e - mail to see if anyone else can give me some advise on the contents of the notification letter that i need to send out .\nthanks in advance for any help that you can give me .\nenron north america corp . from : gary a hanks 04 / 16 / 2001 03 : 51 pm\nto : cheryl dudley / hou / ect @ ect , shawna flynn / hou / ect @ ect , michael w morris / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , daren j farmer / enron @ enronxgate , edward terry / hou / ect @ ect , earl tisdale / hou / ect @ ect\nsubject : shut - in of meter 989842\nmeter 0989842 tri - c resources gov . daniel was shut in at approximately 12 : 00 pm on friday april 13 . the producer was shut in due to high hydrocarbon dew point .\nif you have any questions please call me at 3 . 6449 .\nthanks\ngary hanks\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.242+0000", "entityId": 4571, "properties": {"text": "Subject: re : shut - in of meter 989842\ni need help on this one . i spoke to gary shortly after he sent this e - mail the other day . i wasn ' t sure what to say in the letter regarding how long they would be shut in - - is there some repair that needs to be done to remedy the situation ? are we ever going to take the gas again ? should i tell them that it will remain shut in until the gas meets our specs ?\nat gary ' s suggestion , i called mike morris & left a message , but haven ' t heard back from him . therefore , i am sending this e - mail to see if anyone else can give me some advise on the contents of the notification letter that i need to send out .\nthanks in advance for any help that you can give me .\nenron north america corp . from : gary a hanks 04 / 16 / 2001 03 : 51 pm\nto : cheryl dudley / hou / ect @ ect , shawna flynn / hou / ect @ ect , michael w morris / hou / ect @ ect\ncc : james mckay / hou / ect @ ect , daren j farmer / enron @ enronxgate , edward terry / hou / ect @ ect , earl tisdale / hou / ect @ ect\nsubject : shut - in of meter 989842\nmeter 0989842 tri - c resources gov . daniel was shut in at approximately 12 : 00 pm on friday april 13 . the producer was shut in due to high hydrocarbon dew point .\nif you have any questions please call me at 3 . 6449 .\nthanks\ngary hanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.247+0000", "entityId": 4572, "properties": {"text": "Subject: neon week # 9\n- experiencing god week 9 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.251+0000", "entityId": 4573, "properties": {"text": "Subject: fw : center of the bible\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nstart your own free email list at http : / / www . listbot . com / links / joinlb\n- - - - - original message - - - - -\nfrom : koscinski , chris j\nsent : thursday , april 19 , 2001 2 : 31 pm\nto : pettit , james d ; pettit , jared l ; neely , chad a ; mccalister , mike\nsubject : fw : center of the bible\n- - - - - original message - - - - -\nfrom : wayne sheppard [ mailto : wsheppard @ houston . rr . com ]\nsent : wednesday , april 18 , 2001 10 : 27 pm\nto : chris koscinski ; louis booth ; david schraudt ; catherine frank ; diane\nmiller ; bell ( work ) ; mike schmulbach ; patricia escobar ; cheryl saiz ; paul\nfruia ; sheryl nolan ; julie rodriguez ; zack saiz ; jeff showers ; phil\nsparkman ; rey organo ; rod patricia hines ; jennifer hughey ;\npaula sheppard ; kim trent ; bob messer ; lori w ( work ) ; james and ethel nimene ;\nlisa hackett ; dennis ( home ) ; richard haines ; fred hackett ; johnna thompson ;\nsuresh chainani ; alan woods ; jeremy goodell ; david lacey ; nicole thompson ;\nmichael thompson ; joe karraker ; raymond and shirley budewig ; ed james david gulley ; kernie baker ; chad neely ; steve\nmittanck\nsubject : fw : center of the bible\n- - - - - original message - - - - -\nfrom : gngherr\nto : ray rose schmidlkoffer\n; luke powell ;\ncharlotte\npowell ; tony and bunny marr\n;\njames klement ; lori lee huchton\n; laurie herr ;\neve herr\n; leanne hacker ; todd davis\n; patty davis ; jean joe\nimogene\ndean\nsent : wednesday , april 18 , 2001 5 : 36 pm\nsubject : fw : center of the bible\n- - - - - original message - - - - -\nfrom : tara webster\nto : webster @ flash . net ; cleere @ cooke . net\n; mscott @ ngptrs . com ;\nbasketballchickl 3 @ excite . com ; alico 7 @ aol . com\n; anh 83 @ aol . com ; flowrgurl 5 @ aol . com\n; summerfurler @ aol . com ;\nbaylorchickol @ aol . com ; bugz @ airmail . net\n; jo _ lee 2003 @ hotmail . com ;\nkfisham @ juno . com ; lch 516 @ juno . com ;\nsnodgrl @ hotmail . com ; lhacker @ ntin . net\n; lucym 2911 @ aol . com ; ryanv @ hesston . edu\n; frog 2001 @ juno . com ;\nuwisho 2 @ hotmail . com ; vlightbulb @ aol . com\n; welavo @ hotmail . com\ndate : wednesday , april 18 , 2001 5 : 09 pm\nsubject : center of the bible\n>\n>\n>\n> >\n> > i thought you would find this pretty intresting . maybe you have seen it\n> > before but i never had .\n> >\n> >\n> > > > > > > > > > > > > center of the bible\n> > > > > > > > > > > > >\n> > > > > > > > > > > > >\n> > what is the shortest chapter in the bible ?\n> > ( answer - psalmsl 17 )\n> > > > > > > > > > > > >\n> > what is the longest chapter in the bible ?\n> > ( answer - psalms 119 )\n> > > > > > > > > > > > >\n> > which chapter is in the center of the bible ?\n> > ( answer psalms 118 )\n> > > > > > > > > > > > >\n> > fact : there are 594 chapters before psalms 118\n> > > > > > > > > > > > >\n> > fact : there are 594 chapters after psalms 118\n> > > > > > > > > > > > >\n> > add these numbers up and you get 1188\n> > > > > > > > > > > > >\n> > what is the center verse in the bible ?\n> > ( answer - psalms 118 : 8 )\n> > > > > > > > > > > > >\n> > does this verse say something significant about\n> > god ' s perfect will for our lives ? the next time someone says they would\n> > like to find god ' s perfect will for their lives and that they want to be\nin\n> > the center of his will , just send them to the center of his word !\n> > > > > > > > > > > > >\n> > > > > psalms 118 : 8 ( nkjv )\n> > \" it is better to trust in the lord than to\n> > put confidence in man . \"\n> >\n> > now isn ' t that odd how this worked out\n> > ( or was god in the center of it ) ?\n> >\n>\n> get your free download of msn explorer at http : / / explorer . msn . com\n>\n>\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.256+0000", "entityId": 4574, "properties": {"text": "Subject: revisions for hpl nom . 4 / 18 / 01 and 4 / 19 / 01\n( see attached file : hplno 418 . xls ) ( see attached file : hplno 419 . xls )\n- hplno 418 . xls\n- hplno 419 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.261+0000", "entityId": 4575, "properties": {"text": "Subject: hpl nom for april 20 , 2001\n( see attached file : hplno 420 . xls )\n- hplno 420 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.266+0000", "entityId": 4576, "properties": {"text": "Subject: fw : first deliveries - pure resources and louis dreyfus natural gas\ndaren ,\nis it alright if i enter the following deals ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 04 / 19 / 2001 09 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 04 / 18 / 2001 11 : 35 am\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , susan smith / enron @ enronxgate , donald p reinhardt / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : fw : first deliveries - pure resources and louis dreyfus natural gas\nbob ,\nthe following production is now on - line and a ticket should be created and entered into sitara based on the following :\ncounterparty meter volumes deal # price period global no .\nlouis dreyfus nat gas corp 9874 750 mmbtu / d nya if del vols 300 / d , 100 % gd less $ 0 . 29 4 / 12 - 4 / 30 96058618\npure resources , l . p . 9882 425 mmbtu / d nya 100 % gd less $ 0 . 14 4 / 17 - 4 / 30 96058384\nfyi , we will create and submit committed reserves firm tickets for the remaining term of the deals beginning with the appropiate month . additionally , these are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : buckley , esther\nsent : wednesday , april 18 , 2001 10 : 53 am\nto : carriere , molly ; cernosek , clem ; consemiu , donna ; cook , robert ; camp , howard ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay , james ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ; walters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ; jones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan smith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p reinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ; cotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ; lisa csikos / hou / ect @ enron ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ; acton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney , christy ; tisdale , earl ; daren j farmer / hou / ect @ enron\nsubject : first deliveries - pure resources and louis dreyfus natural gas\nsee attached files", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.271+0000", "entityId": 4577, "properties": {"text": "Subject: re : fw : first deliveries - pure resources and louis dreyfus natural\ngas\nvance ,\ndeals have been created and entered in sitara as noted below :\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 18 / 2001 11 : 35 am\nto : robert cotten / hou / ect @ ect\ncc : julie meyers / hou / ect @ ect , lisa hesse / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , susan smith / enron @ enronxgate , donald p reinhardt / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : fw : first deliveries - pure resources and louis dreyfus natural gas\nbob ,\nthe following production is now on - line and a ticket should be created and entered into sitara based on the following :\ncounterparty meter volumes deal # price period global no .\nlouis dreyfus nat gas corp 9874 750 mmbtu / d 740193 if del vols 300 / d , 100 % gd less $ 0 . 29 4 / 12 - 4 / 30 96058618\npure resources , l . p . 9882 425 mmbtu / d 740198 100 % gd less $ 0 . 14 4 / 17 - 4 / 30 96058384\nfyi , we will create and submit committed reserves firm tickets for the remaining term of the deals beginning with the appropiate month . additionally , these are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nthanks ,\nvlt\nx 3 - 6353\n- - - - - original message - - - - -\nfrom : buckley , esther\nsent : wednesday , april 18 , 2001 10 : 53 am\nto : carriere , molly ; cernosek , clem ; consemiu , donna ; cook , robert ; camp , howard ; hesse , lisa ; hlavaty , nathan ; wayne e lightfoot / hou / ect @ enron ; mckay , james ; smith , mary ; schneider , steve hpl ; melissa graves / hou / ect @ enron ; walters , michael ; zivley , jill ; johnson , mary jo ; wynne , rita ; allen , lauri ; jones , cheryl ; hansen , reid ; giron , darron ; winfree , o ' neal ; susan smith / hou / ect @ enron ; bryan , gary ; hanks , gary ; donald p reinhardt / hou / ect @ enron ; vance l taylor / hou / ect @ enron ; baumbach , david ; cotten , robert ; riley , brian ; austin , jeff ; hakemack , cynthia ; kenne , dawn ; lisa csikos / hou / ect @ enron ; fosdick , j r ; rodriguez , carlos ; gomes , stephanie ; clynes , pat ; acton , tom ; walker , robert ; weissman , george ; harris , joanne ; sweeney , christy ; tisdale , earl ; daren j farmer / hou / ect @ enron\nsubject : first deliveries - pure resources and louis dreyfus natural gas\nsee attached files", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.277+0000", "entityId": 4578, "properties": {"text": "Subject: first delivery - etoco\nplease see attached file . this well was turned on april 6 , 2001 but i am just now receiving information on it .\neb", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.285+0000", "entityId": 4579, "properties": {"text": "Subject: brandywine\nthere was flow at hpl meter 1505 on april first that didn ' t have a deal ticket out there . . . .\nbut now there is a deal ticket out there to cover it . . . . 740374\nplease link it or whatever you have to do to make it work\nthanks\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.293+0000", "entityId": 4580, "properties": {"text": "Subject: calpine - 1465\nricky sent the nom over early and wants 88 , 000 thru the weekend .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.299+0000", "entityId": 4581, "properties": {"text": "Subject: devon availabilities - may , 2001\n- - - - - - - - - - - - - - - - - - - - - - forwarded by victor lamadrid / hou / ect on 04 / 20 / 2001 08 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" victor haley \" on 04 / 20 / 2001 07 : 55 : 23 am\nto : , ,\ncc : \" alan coad \" , \" andy anderson \" , \" bill wince \" , \" blaine wofford \" , \" charlene merrill \" , \" cynthia cantrell \" , \" don mauldin \" , \" evelyn daniel \" , \" gary kofoed \"\nsubject : devon availabilities - may , 2001\nattached is devon ' s monthly spreadsheet of availabilities for may , 2001 . if you have any questions at all , please call me at 405 - 228 - 4298 .\n- enronavailso 501 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.304+0000", "entityId": 4582, "properties": {"text": "Subject: fw : on call\n- - - - - original message - - - - -\nfrom : jackson , brandee\nsent : friday , april 20 , 2001 3 : 11 pm\nto : heal , kevin ; mcisaac , lisa ; hedstrom , peggy ; spencer , candace ; espey , darren ; gilmore , tammy ; mcomber , teresa ; adams , jacqueline ; evans , ted ; acton , tom ; villarreal , jesse ; franklin , cynthia ; loving , scott ; casas , joe ; collins , joann ; ordway , chris ; allwein , robert ; dinari , sabra ; sanchez , christina ; loocke , kelly ; halstead , lia ; pendergrass , cora ; carter , tamara\ncc : lamadrid , victor ; sullivan , patti ; kinsey , lisa ; choate , heather ; saldana , alex ; superty , robert\nsubject : on call", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.309+0000", "entityId": 4583, "properties": {"text": "Subject: fwd : resume\ntrying to help outta friend .\ni ' ll take 40 % of your referral fee . . . lol ; )\n- dukeresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.314+0000", "entityId": 4584, "properties": {"text": "Subject: freedom ? ? ?\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nstart your own free email list at http : / / www . listbot . com / links / joinlb\nthis is a statement that was read over the pa system at the football game\nat roane county high school , kingston , tennessee by school principal jody\nmcloud , on september 1 , 2000 . i thought it was worth sharing with the\nworld , and hope you will forward it to all your friends . it clearly shows\njust how far this country has gone in the wrong direction .\n\" it has always been the custom at roane county high school football games\nto say a prayer and play the national anthem to honor god and country .\ndue to a recent ruling by the supreme court , i am told that saying a prayer\nis a violation of federal case law .\nas i understand the law at this time , i can use this public facility to\napprove of sexual perversion and call it an alternate lifestyle , and if\nsomeone is offended , that ' s ok .\ni can use it to condone sexual promiscuity by dispensing condoms and\ncalling it safe sex . if someone is offended , that ' s ok .\ni can even use this public facility to present the merits of killing an\nunborn baby as a viable means of birth control . if someone is offended , no\nproblem .\ni can designate a school day as earth day and involve students in\nactivities to religiously worship and praise the goddess , mother earth ,\nand call it ecology .\ni can use literature , videos and presentations in the classroom that depict\npeople with strong , traditional christian convictions as simple minded and\nignorant and call it enlightenment .\nhowever , if anyone uses this facility to honor god and ask him to bless\nthis event with safety and good sportsmanship , federal case law is\nviolated .\nthis appears to be inconsistent at best , and at worst , diabolical .\napparently , we are to be tolerant of everything and anyone except god and\nhis commandments .\nnevertheless , as a school principal , i frequently ask staff and students to\nabide by rules which they do not necessarily agree . for me to do otherwise\nwould be inconsistent at best , and at worst , hypocritical . i suffer from\nthat affliction enough unintentionally . i certainly do not need to add an\nintentional transgression .\nfor this reason , i shall , \" render unto caesar that which is caesar ' s , \" and\nrefrain from praying at this time . however , if you feel inspired to honor ,\npraise and thank god , and ask him in the name of jesus to bless this event ,\nplease feel free to do so . as far as i know , that ' s not against the law -\nyet . \"\nand . . . one by one , the people in the stands bowed their heads , held hands\nwith one another , and began to pray . they prayed in the stands . they prayed\nin the team huddles . they prayed at the concession stand . and they prayed\nin the announcer ' s box . the only place they didn ' t pray was in the supreme\ncourt of the united states of america - the seat of \" justice \" in the one\nnation under god .\nsomehow , kingston , tennessee , remembered what so many have forgotten . . . we\nare given the freedom of religion , not the freedom from religion .\npraise god that his remnant remains !\nlet ' s celebrate jesus in 2001\njesus said , \" if you are ashamed of me , i will be ashamed of you before my\nfather . \"\n- - - - - - - - -\nif you are not ashamed , pass this on . . . but only if you mean it .\nyes , i do love god . he is my source of existence and savior . he keeps me\nfunctioning each and every day . without him , i will be nothing . without\nhim , i am nothing but with him , i can do all things through christ that\nstrengthens me . phil 4 : 13\ngeoff gayle\nsynergy oil & gas , inc .\noffice : ( 713 ) 461 - 6626 x . 113\nfax : ( 713 ) 461 - 4475\nemail : ggayle @ synergyog . com\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.318+0000", "entityId": 4585, "properties": {"text": "Subject: hpl nom for april 21 - 23 , 2001\n( see attached file : hplno 421 . xls )\n- hplno 421 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.322+0000", "entityId": 4586, "properties": {"text": "Subject: re : nom / actual flow for april 19 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa jones / texas utilities on 04 / 20 / 2001\n01 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" eileen ponton \" on 04 / 20 / 2001 01 : 00 : 55 pm\nto : david avila / lsp / enserch / us @ tu\ncc : charlie stone / texas utilities @ tu , melissa jones / texas utilities @ tu ,\nhpl . scheduling @ enron . com\nsubject : re : nom / actual flow for april 19 th\nsorry about that , missed that line on his report . . . . . . . . will agree w / the\nnom of 8 , 333\n\" david avila \"\ncom > cc : \" charlie stone \"\n, \" melissa jones \"\n,\nhpl . scheduling @ enron . com , liz . bellamy @ enron . com\n04 / 20 / 01 bcc :\n12 : 54 pm subject : re : nom / actual flow for\napril 19 th\nour records show the following changes for 4 / 19 / 01 :\n25 , 000 - 0900 to 11000 ( 2 hours ) and\n25 , 000 - 0300 to 0900 ( 6 hours )\ntotal nom for the day of 8 , 333 mmbtu .\n\" eileen ponton \" on 04 / 20 / 2001 11 : 49 : 48 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu ,\nmelissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com ,\nliz . bellamy @ enron . com\ncc :\nsubject : nom / actual flow for april 19 th\nmy gas control shows flowing 2 hours ( 9 : 00 am to 11 : 00 am ) at rate of\n25 , 000 . . . . . . . .\nnom mcf mmbtu\n2 , 084 5 , 819 5 , 977\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.327+0000", "entityId": 4587, "properties": {"text": "Subject: re : fw : king ranch balancing . xls\nsaxet is flowing about 5200 ish .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.332+0000", "entityId": 4588, "properties": {"text": "Subject: fwd : per my message this morning\njanet and daren ,\nattached is a gas supply proposal i receive from duke energy for delivery to the mission interconnect on tetco . they also provided me a quote on tenn , but it was way off base . this deal in combination with swing from net may be a good start for the month of may . the deal provides swing flexibility and would allow us to get our feet wet and see how net operates the mission system when they are not providing all of the delivered gas . let me know what you think . i have had discussions with elpaso / pg thu , 19 apr 2001 14 : 55 : 32 - 0400\nreceived : from cyclops ( unverified ) by ybor - 1 mail . corp . teco . net ( content technologies smtprs 4 . 1 . 5 ) with smtp id for ; thu , 19 apr 2001 14 : 55 : 01 - 0400\nreceived : from deinetol . dukepower . com ( deinetol . dukepower . com [ 148 . 134 . 58 . 199 ] ) by mxsdo 2 . dukepower . com ( 8 . 9 . 3 + sun / 8 . 9 . 1 ) with esmtp id oaa 28820 for ; thu , 19 apr 2001 14 : 55 : 30 - 0400 ( edt )\nsubject : per my message this morning\nto : ebronner @ tecoenergy . com\nx - mailer : lotus notes release 5 . 0 . 4 june 8 , 2000\nmessage - id :\nfrom : \" alan taylor \"\ndate : thu , 19 apr 2001 13 : 58 : 50 - 0500\nx - mimetrack : serialize by router on deinetol / dukepower ( release 5 . 0 . 3 | march 21 , 2000 ) at 04 / 19 / 2001 02 : 55 : 30 pm\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" 0 _ _ = 85256 a 330067 f 5108 f 9 e 8 a 93 df 938690918 c 85256 a 330067 f 510 \"\ncontent - disposition : inline\n( see attached file : tampaelectric . doc )\n- tampaelectric . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.336+0000", "entityId": 4589, "properties": {"text": "Subject: oasis transport imbalances\ncurrent mth : 201 k ( 7 . 580 ) due oasis 202 k 1 . 176 due hpl\ncumulative : 201 k ( 22 . 526 ) due oasis 202 k 730 due hpl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.341+0000", "entityId": 4590, "properties": {"text": "Subject: re : noms / actual vol for april 20 th & 21 st\nwe agree\n\" eileen ponton \" on 04 / 23 / 2001 10 : 40 : 21 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual vol for april 20 th & 21 st\ndate nom mcf mmbtu\n4 / 20 25 , 000 24 , 402 25 , 061 ( flowed from 13 : 00 to 9 : 00\nam - 20 hours )\n4 / 21 15 , 625 15 , 829 16 , 256 ( flowed from 9 : 00 am to\n24 : 00 - 15 hours )\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.345+0000", "entityId": 4591, "properties": {"text": "Subject: re : noms / actual vol for april 22 nd\nwe agree\n\" eileen ponton \" on 04 / 23 / 2001 10 : 57 : 34 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual vol for april 22 nd\ndate nom mcf mmbtu\n4 / 20 25 , 000 24 , 402 25 , 061 ( flowed from 13 : 00 to 9 : 00\nam - 20 hours )\n4 / 21 15 , 625 15 , 829 16 , 256 ( flowed from 9 : 00 am to\n24 : 00 - 15 hours )\n4 / 22 25 , 500 25 , 148 25 , 827 ( flowed from 16 : 00 to 9 : 00\nam - 17 hours )\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.350+0000", "entityId": 4592, "properties": {"text": "Subject: hpl nom for april 24 , 2001\n( see attached file : hplno 424 . xls )\n- hplno 424 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.355+0000", "entityId": 4593, "properties": {"text": "Subject: meters\ndaren ,\nis there any industrial meters in particular i need to watch the imbalances since we are close to the end of the month ?\nthanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.359+0000", "entityId": 4594, "properties": {"text": "Subject: pleo 0004 2000\nmary ,\nas in my email below to daren , we are seeing some oa variances between flash to actual on the ple contracts on pgev for 10 / 00 - 12 / 00 . i have verified with thu nguyen of what the statements from pgev show and that is also what we have booked in unify and recorded to the g / l as an imbalance . however , when looking in cpr ( under cpr pipeline exchange ) , there was not anything flashed for those months , thus our oa variance . i seem to remember that stacy once said that although we may run an imbalance at the end of a month on occassion , in those few times that we do , 1 ) it should be relatively small and 2 ) in the following days of the next month , we should have worked the imbalance down to zero thus having no imbalance at the end of the month . in a voice mail from daren today , he seemed to think the same thing was happening or even that by the end of each month , we were balanced to zero . can you shed some light on these months and let me know if we should have had an imbalance and if we should have , why there would have not been anything flashed . if we should not have had an imbalance , then we ' ll need your help to figure out what went wrong in that pgev shows an imbalance on their statements . let me know what you think . . . . . . . . .\nthanks ,\nrita\nx 37694\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 04 / 24 / 2001 06 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : rita wynne 04 / 24 / 2001 01 : 02 pm\nto : daren j farmer / hou / ect\ncc : milton bolanos / na / enron @ enron\nsubject : pleo 0004 2000\ndaren ,\nwhen i look back in cpr for the delivery periods of 10 / 00 - 12 / 00 on cpr pipeline exchange , i do not see anything being flashed as an imbalance , i . e . the buys and sales always equal in cpr . however , we are booking an imbalance every month on the parking and lending contract . should there be something in cpr for these volumes ? let me know because it is causing an oa variance for us . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 04 / 24 / 2001 12 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu t nguyen 04 / 24 / 2001 12 : 14 pm\nto : rita wynne / hou / ect @ ect\ncc :\nsubject : pleo 0004 2000\nimbalances :\noct 26687\nnov - 44177\ndec - 9248", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.363+0000", "entityId": 4595, "properties": {"text": "Subject: aspect resources\nconfirmation :\nrgds ,\nellen\nx 54099", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.368+0000", "entityId": 4596, "properties": {"text": "Subject: pleo 0004 2000\ndaren ,\nwhen i look back in cpr for the delivery periods of 10 / 00 - 12 / 00 on cpr pipeline exchange , i do not see anything being flashed as an imbalance , i . e . the buys and sales always equal in cpr . however , we are booking an imbalance every month on the parking and lending contract . should there be something in cpr for these volumes ? let me know because it is causing an oa variance for us . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita wynne / hou / ect on 04 / 24 / 2001 12 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : thu t nguyen 04 / 24 / 2001 12 : 14 pm\nto : rita wynne / hou / ect @ ect\ncc :\nsubject : pleo 0004 2000\nimbalances :\noct 26687\nnov - 44177\ndec - 9248", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.372+0000", "entityId": 4597, "properties": {"text": "Subject: txu gas distribution deal # 646679\nplease confirm the pricing for txu gas deal # 646679 for march 8 , 2001 . we are currently showing the katy hub gas daily midpoint for that day , but txu shows the waha hub gas daily midpoint .\nplease let me know if you have any questions .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.377+0000", "entityId": 4598, "properties": {"text": "Subject: cp & l\nplease add a deal in march for 17 , 18 , & 19 th for 5 , 000 a day at hsc gd - . 03", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.384+0000", "entityId": 4599, "properties": {"text": "Subject: re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.388+0000", "entityId": 4600, "properties": {"text": "Subject: hpl nom for april 25 , 2001\n( see attached file : hplno 425 . xls )\n- hplno 425 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.393+0000", "entityId": 4601, "properties": {"text": "Subject: txu fuels / sds nomination for may 2001\nattached is the may 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel company ( previously tufco ) and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.401+0000", "entityId": 4602, "properties": {"text": "Subject: re : nom / actual volume for april 23 rd\nwe agree\n\" eileen ponton \" on 04 / 24 / 2001 12 : 18 : 39 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / actual volume for april 23 rd\nnom mcf mmbtu\n30 , 208 30 , 046 30 , 858\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.409+0000", "entityId": 4603, "properties": {"text": "Subject: may 2001 nomination\nbob ,\nquestions based on the information in the facilitation by location report :\n1 . meter 9643 hgpl / hpl - stratton , tejones operating corporation , sitara 266970 : should this purchase be at meter 9638 , freeman prod - maxine field in trade zone 18 ?\n2 . i presume we are not counting both meter 9848 north padre island blk 8 and meter 9862 lehman / spinnaker onshore . isn ' t this the same gas ?\n3 . meter 3536 seahawk / a - s ( mat plt 520 ) , eog resources , sitara 725391 : is this purchase properly in the wellhead book ?\n4 . meter 6884 pgtt junction 16 \" lease , comstock oil & gas , inc . and kerr - mcgee oil & gas onshore l . p . , sitara 125899 and 132975 : comstock ' s volume should exceed kerr - mcgee ' s volume , and together the two volumes should be approximately 73 , 000 / d . currently , comstock ' s volume is only 8 , 600 / d and kerr - mcgee ' s volume is 25 , 000 / d . we look about 38 , 000 / d short .\n5 . meter 639 hannah nash , coral energy resources , l . p . , sitara 659998 : is this purchase properly in the wellhead book ?\ni ' m looking at about 10 other old deals that i think should be in for may , but aren ' t . in addition , i ' m adding in the new deals that will flow in may . i ' ll be done by noon .\ngeorge", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.415+0000", "entityId": 4604, "properties": {"text": "Subject: re : may 2001 nomination\ngeorge ,\nthe following are my answers to your questions :\n1 . no .\n2 . the nomination is at the pay meter 9862 .\n3 . in the past , this purchase has not been listed on the spreadsheet . it has been maintained by the risk group .\n4 . as of 4 / 24 / 01 , comstock ' s nomination is 43 , 681 and kerr mcgee ' s is 29 , 037 .\n5 . this purchase is not listed on the spreadsheet . it is maintained separately on a file by daren . to the best of my knowledge it is a good wellhead purchase .\nbob\nenron north america corp . from : george weissman 04 / 24 / 2001 08 : 03 am\nto : robert cotten / hou / ect @ ect\ncc : vance l taylor / hou / ect , daren j farmer / hou / ect , melissa graves / hou / ect\nsubject : may 2001 nomination\nbob ,\nquestions based on the information in the facilitation by location report :\n1 . meter 9643 hgpl / hpl - stratton , tejones operating corporation , sitara 266970 : should this purchase be at meter 9638 , freeman prod - maxine field in trade zone 18 ?\n2 . i presume we are not counting both meter 9848 north padre island blk 8 and meter 9862 lehman / spinnaker onshore . isn ' t this the same gas ?\n3 . meter 3536 seahawk / a - s ( mat plt 520 ) , eog resources , sitara 725391 : is this purchase properly in the wellhead book ?\n4 . meter 6884 pgtt junction 16 \" lease , comstock oil & gas , inc . and kerr - mcgee oil & gas onshore l . p . , sitara 125899 and 132975 : comstock ' s volume should exceed kerr - mcgee ' s volume , and together the two volumes should be approximately 73 , 000 / d . currently , comstock ' s volume is only 8 , 600 / d and kerr - mcgee ' s volume is 25 , 000 / d . we look about 38 , 000 / d short .\n5 . meter 639 hannah nash , coral energy resources , l . p . , sitara 659998 : is this purchase properly in the wellhead book ?\ni ' m looking at about 10 other old deals that i think should be in for may , but aren ' t . in addition , i ' m adding in the new deals that will flow in may . i ' ll be done by noon .\ngeorge", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.419+0000", "entityId": 4605, "properties": {"text": "Subject: re : may 2001 nomination\nthe attachment provides details for a total wellhead nomination for may 2001 of 695 , 059 mmbtu / d . george .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 04 / 24 / 2001 11 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : robert cotten 04 / 24 / 2001 10 : 12 am\nto : george weissman / hou / ect @ ect\ncc : vance l taylor / hou / ect , daren j farmer / hou / ect , melissa graves / hou / ect , edward terry / hou / ect @ ect\nsubject : re : may 2001 nomination\ngeorge ,\nthe following are my answers to your questions :\n1 . no .\n2 . the nomination is at the pay meter 9862 .\n3 . in the past , this purchase has not been listed on the spreadsheet . it has been maintained by the risk group .\n4 . as of 4 / 24 / 01 , comstock ' s nomination is 43 , 681 and kerr mcgee ' s is 29 , 037 .\n5 . this purchase is not listed on the spreadsheet . it is maintained separately on a file by daren . to the best of my knowledge it is a good wellhead purchase .\nbob\nenron north america corp . from : george weissman 04 / 24 / 2001 08 : 03 am\nto : robert cotten / hou / ect @ ect\ncc : vance l taylor / hou / ect , daren j farmer / hou / ect , melissa graves / hou / ect\nsubject : may 2001 nomination\nbob ,\nquestions based on the information in the facilitation by location report :\n1 . meter 9643 hgpl / hpl - stratton , tejones operating corporation , sitara 266970 : should this purchase be at meter 9638 , freeman prod - maxine field in trade zone 18 ?\n2 . i presume we are not counting both meter 9848 north padre island blk 8 and meter 9862 lehman / spinnaker onshore . isn ' t this the same gas ?\n3 . meter 3536 seahawk / a - s ( mat plt 520 ) , eog resources , sitara 725391 : is this purchase properly in the wellhead book ?\n4 . meter 6884 pgtt junction 16 \" lease , comstock oil & gas , inc . and kerr - mcgee oil & gas onshore l . p . , sitara 125899 and 132975 : comstock ' s volume should exceed kerr - mcgee ' s volume , and together the two volumes should be approximately 73 , 000 / d . currently , comstock ' s volume is only 8 , 600 / d and kerr - mcgee ' s volume is 25 , 000 / d . we look about 38 , 000 / d short .\n5 . meter 639 hannah nash , coral energy resources , l . p . , sitara 659998 : is this purchase properly in the wellhead book ?\ni ' m looking at about 10 other old deals that i think should be in for may , but aren ' t . in addition , i ' m adding in the new deals that will flow in may . i ' ll be done by noon .\ngeorge\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.424+0000", "entityId": 4606, "properties": {"text": "Subject: re : may wellhead \" spot \" purchases - request\nvance ,\ndeals have been created and entered in sitara as noted below :\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 24 / 2001 04 : 25 pm\nto : robert cotten / hou / ect @ ect\ncc : janie aguayo / hou / ect @ ect , lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : may wellhead \" spot \" purchases - request\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the production month of may , 2001 . this production will be purchased on a \" spot \" basis and deal tickets should be created and entered into sitara based on the following information :\ncounterparty meter volume deal # price\napache corporation 0435 1409 mmbtu / d 745529 100 % if / hsc less $ 0 . 10\nwhiting petroleum corp 6523 113 mmbtu / d 749897 85 % if / hsc\nel paso merchant energy , lp 5923 622 mmbtu / d 749898 100 % if / hsc less $ 0 . 26\nel paso merchant energy , lp 5848 203 mmbtu / d 749899 85 % if / hsc swift energy 2630 21 mmbtu / d 749900 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 147 mmbtu / d 749901 85 % if / hsc\nhesco gathering oil co . 6063 289 mmbtu / d 421856 85 % if / hsc\nembassy natural gas inc . 6598 lmmbtu / d 749907 85 % if / hsc\nstone energy 9696 2745 mmbtu / d 749909 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 3407 mmbtu / d 749910 100 % if / hsc less $ 0 . 20\namerada hess ( hess energy svcs ) 0435 1104 mmbtu / d 745527 100 % if / hsc less $ 0 . 14\ncrosstex energy services , ltd . 0435 656 mmbtu / d 745552 100 % if / hsc less $ 0 . 12\ntri - union development 0435 149 mmbtu / d 745560 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 749911 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nadditionally , if at all possible , please do not confirm the apache and crosstex deals as we expect to receive term firm contracts in the very near future .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.429+0000", "entityId": 4607, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.433+0000", "entityId": 4608, "properties": {"text": "Subject: mobil nomination for may\ndaren\nsee below - bad news - mobil beaumont volumes for early may will continue to be low . . . . i assume we will want to continue to deliver 30 , 000 / d of midcon volumes ? ? let me know .\nlee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lee l papayoti / hou / ect on 04 / 24 / 2001 02 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" brian e nichols \" on 04 / 24 / 2001 01 : 53 : 08 pm\nto : lpapayo @ ect . enron . com\ncc : \" larry w placette \" , \" robert e kirk \" , \" glenn w richard \"\nsubject : hpl nomination for may\nlee ,\nour cold box will probably not have feed into it until mid may at the earliest .\nthis means that we will continue to have a large volume of refinery gas going to\nfuel . we are nominating the minimum of 80 bbtu / d knowing that we should start\nthe month well short of the 80 with the volumes increasing as the month\nprogresses and the cold box comes on line . call me if you have any questions .\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.438+0000", "entityId": 4609, "properties": {"text": "Subject: re : big cowboy / gepl actuals for february\nplease see the attached xcel file . i think that i have found the missing volumes on big cowboy . there are two wells connected to system 429 , which flows into the big cowboy system and interconnects with hgpl at meter 8284 . they are meters 986679 ( currently in trade zone 18 ) and 986742 ( currently in trade zone 1 ) . i think that these should probably both be reassigned to trade zone 21 . this should resolve our volumetric issue .\ndonna & george ,\nplease let me know if my assumption is in error . i have a schematic that shows these meters going to hgpl off of gepl big cowboy , however , if this is not correct then i will need to try to find the gas in another manner .\nthank you for your time . please let me know if you have any questions , comments , suggestions .\nmary\n35251", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.445+0000", "entityId": 4610, "properties": {"text": "Subject: big cowboy / gepl actuals for february\nthu ,\nwe have an ongoing issue every month between what we nominate from gepl into hgpl and on to king ranch ( flows into hgpl at meter 8284 ) and what is in the system as purchase gas upstream of the meter . the volume has been anywhere from 6 , 000 to 10 , 000 / day over the nomination for at least the past six months . would you please fax the meter statements from gepl for february so that i can try to determine which meters are flowing over what is nominated and verify that we have deals in the system for each offsystem meter . should you require a more specific listing , i have tom ' s schematic of the area .\nthank you for your time . should you require any further information , please do not hesitate to contact me .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.451+0000", "entityId": 4611, "properties": {"text": "Subject: eastrans nomination effective 5 / 1 / 01\neffective 5 / 1 / 01 , the deliveries and redeliveries will be 0 mmbtu / dy .\nthe transaction agreement will not be utilized .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.456+0000", "entityId": 4612, "properties": {"text": "Subject: hpl nom for april 26 , 2001\n( see attached file : hplno 426 . xls )\n- hplno 426 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.460+0000", "entityId": 4613, "properties": {"text": "Subject: cornhusker imbalance\ndaren - - the cleburne plant is consistantly pulling more than we are supplying . . approx . 3 . 0 to 5 . 0 day - - - - - - new current imbalance of ( 95 . 0 ) due lonestar ( based on lonestar estimates ) . are you interested in payback ? maybe 10 . 0 a day ? let me know and i will clear it with lonestar .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.465+0000", "entityId": 4614, "properties": {"text": "Subject: missing deals - may , 2001\ngeorge ,\nthe following volumes are included in the may , 2001 spreadsheet but deals do not exist in sitara . daren has requested that we be advised by noon today of the information on pricing ( i . e . , gas daily or ifhsc ) . thanks .\ncounterparty meter zone nomination\ncarrizo oil & gas 9888 12 10 , 000\ncomstock oil & gas 9878 20 100\nd & p operating ? 001 ( gulf coast ) 5 , 000\nergon exploration 9880 08 9 , 000\nhesco gathering 9649 ? 300\nhesco gathering 9876 05 85\nhesco gathering 9885 05 1 , 100\nlouis dreyfus 9874 14 750\nsuemaur exploration 9881 02 1 , 300\nunited oil & mineral 9887 19 2 , 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.469+0000", "entityId": 4615, "properties": {"text": "Subject: missing deals - may , 2001\nthe following deals have been created and entered in sitara as baseload priced at ifhsc .\nbob\ndeal # counterparty meter zone nomination\n752476 carrizo oil & gas 9888 12 10 , 000\n752480 comstock oil & gas 9878 20 100\n752482 d & p operating ? 001 ( gulf coast ) 500\n752487 ergon exploration 9880 08 9 , 000\n752489 hesco gathering 9649 ? 300\n752491 hesco gathering 9876 05 85\n752556 hesco gathering 9885 05 1 , 100\n752566 louis dreyfus 9874 14 750\n752571 suemaur exploration 9881 02 1 , 300\n752578 united oil & mineral 9887 19 2 , 000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.474+0000", "entityId": 4616, "properties": {"text": "Subject: phone list\nin case you need it , this is the phone list for volume management and settlements .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 04 / 25 / 2001 04 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary comello\n04 / 25 / 2001 04 : 07 pm\nto : thu t nguyen / hou / ect @ ect , leslie robinson / corp / enron @ enron , rosa brown / corp / enron @ enron , jennifer d pattison / hou / ect @ ect , jason vogler / na / enron @ enron , willie brooks / na / enron @ enron , bob fisher / na / enron @ enron , kimberly vaughn / hou / ect @ ect , daxa bhavsar / enron @ enronxgate , joyce viltz / enron @ enronxgate , jack mitchell / enron @ enronxgate , charlene richmond / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , joanie h ngo / hou / ect @ ect , hannah ortiz / hou / ect @ ect , katherine herrera / corp / enron @ enron , paul couvillon / corp / enron @ enron , megan parker / corp / enron @ enron , rebecca griffin / na / enron @ enron , yolanda s thomas / enron @ enronxgate , tess ray / enron @ enronxgate , charles howard / na / enron @ enron , jack peebles / enron @ enronxgate , rita wynne / hou / ect @ ect , paula lee / hou / ect @ ect , bryce baxter / hou / ect @ ect , edward terry / hou / ect @ ect , sabrae zajac / hou / ect @ ect\ncc :\nsubject : phone list\nupdate : made a mistake on thu and kim ' s phone numbers , please see the revision .\nthanks ,\nmary x 35999\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary comello / corp / enron on 04 / 25 / 2001 04 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmary comello\n04 / 25 / 2001 03 : 32 pm\nto : thu t nguyen / hou / ect @ ect , leslie robinson / corp / enron @ enron , rosa brown / corp / enron @ enron , jennifer d pattison / hou / ect @ ect , jason vogler / na / enron @ enron , willie brooks / na / enron @ enron , bob fisher / na / enron @ enron , kimberly vaughn / hou / ect @ ect , daxa bhavsar / enron @ enronxgate , joyce viltz / enron @ enronxgate , jack mitchell / enron @ enronxgate , charlene richmond / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , joanie h ngo / hou / ect @ ect , hannah ortiz / hou / ect @ ect , katherine herrera / corp / enron @ enron , paul couvillon / corp / enron @ enron , megan parker / corp / enron @ enron , rebecca griffin / na / enron @ enron , yolanda s thomas / enron @ enronxgate , tess ray / enron @ enronxgate , charles howard / na / enron @ enron , jack peebles / enron @ enronxgate , rita wynne / hou / ect @ ect , paula lee / hou / ect @ ect , bryce baxter / hou / ect @ ect , edward terry / hou / ect @ ect , sabrae zajac / hou / ect @ ect\ncc :\nsubject : phone list\nplease see the attached phone list for volume management and settlements on - system .\nthanks ,\nmary x 35999", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.479+0000", "entityId": 4617, "properties": {"text": "Subject: enron astroworld tickets\nenron announces unlimited discounted astroworld tickets for employees .\ndue to overwhelming employee feedback , we have negotiated unlimited discounted astroworld tickets for you and your family in place of the traditional \" enron day at astroworld . \" we hope this will allow enron families to plan their fun - filled summer trips to astroworld at their own convenience . enron astroworld tickets are $ 20 . 56 ( retail $ 50 ) , which includes admission for one , plus a $ 7 meal ticket to one of five restaurants at astroworld .\nsix flags astroworld is a world - class family entertainment complex filled with exciting rides and attractions , including 10 heart - pounding coasters , over 40 blockbuster shows , interactive street entertainers and star - studded concerts . enron families will be able to purchase unlimited tickets for use anytime during the 2001 season .\ntickets will be on sale at enron ' s federal credit union , ebo 399 . visit the credit union in person to make your purchases . astroworld tickets will not be mailed . enron employees who are not already enron fcu members may pay by cash or money order only . all enron employees are encouraged to take advantage of this great summer fun deal and may purchase tickets through august 30 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.484+0000", "entityId": 4618, "properties": {"text": "Subject: calpine daily and monthly nomination\n>\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc\n- calpine monthly gas nomination _ _ _ . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.489+0000", "entityId": 4619, "properties": {"text": "Subject: equistar for march\nmarch -\nmeter 1373\ndeal 165373 for 10 , 000 ( 3 rd , 4 th , 5 th ) total 310 , 000\ndeal 157572 for 5 , 000 ( 3 rd ) total 155 , 000\ndeal was taken to zero in sitara - equistar said it should of been kept whole for the whole month .\nwhat do you want me to do so equistar can pay their invoice . thanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.499+0000", "entityId": 4620, "properties": {"text": "Subject: fw : fw : march 2001 invoice\ndaren -\ndow hydrocarbons and resources , inc . , stated on 4 / 24 / 01 , re : ena deal # sa 639615 , that their 03 / 01 price for ena sales on csgt @ b 368 - brazos # 368 ( i . e . cowtrap ) , is if - $ . 06 . we are invoicing them at hsc gdp da . need to know which price is correct and copy of confirmation .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : meyers , julie\nsent : tuesday , april 24 , 2001 10 : 53 am\nto : ray , tess\ncc : daren j farmer / hou / ect @ enron ; bellamy , liz\nsubject : re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" > @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.506+0000", "entityId": 4621, "properties": {"text": "Subject: fw : fw : march 2001 invoice\ncharlene / cindy / charles :\ncan either of you answer darren ' s question to me below ? my sales deal is under ena .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , april 26 , 2001 3 : 20 pm\nto : ray , tess\nsubject : re : fw : march 2001 invoice\ntess ,\nwe probably should be invoicing selling to dow at if . however , we should also have purchased the supply from spinnaker ( # 144271 bellamy , liz\nsubject : re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" > > @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.513+0000", "entityId": 4622, "properties": {"text": "Subject: fw : fw : march 2001 invoice\nmary -\ndo you pay spinnaker , for gas purchases ? ( see daren ' s question below , re : 03 / 01 purchase price from spinnaker ( # 144271 hakemack , cynthia ; howard , charles\ncc : farmer , daren j .\nsubject : fw : fw : march 2001 invoice\nimportance : high\ncharlene / cindy / charles :\ncan either of you answer darren ' s question to me below ? my sales deal is under ena .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , april 26 , 2001 3 : 20 pm\nto : ray , tess\nsubject : re : fw : march 2001 invoice\ntess ,\nwe probably should be invoicing selling to dow at if . however , we should also have purchased the supply from spinnaker ( # 144271 bellamy , liz\nsubject : re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" > > @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.518+0000", "entityId": 4623, "properties": {"text": "Subject: swift - may 2001 vols\nsean ,\nfyi , check the purchase from swift at the tailgate ( meter 9643 ) and make sure to nom the correct quantity .\nmary\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mary poorman / na / enron on 04 / 26 / 2001 07 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : joan quick / enron @ enronxgate on 04 / 25 / 2001 06 : 13 pm\nto : carlos j rodriguez / hou / ect @ ect , mary poorman / na / enron @ enron , jackie young / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , mike morris / corp / enron @ enron\nsubject : swift - may 2001 vols\nhere is the may first of the month nom :\nking ranch plant 6 , 400 mmbtu / d", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.522+0000", "entityId": 4624, "properties": {"text": "Subject: re : fw : fw : march 2001 invoice\nthe question is not that \" cut and dry \" . however , for the month of march enron paid spinnaker @ if hsc - $ 0 . 085 .\ncurrently the volume is posted under deal ticket # 144271 with is the deal tick for gas daily production .\nthis production should be moved to deal ticket # 144264 with is the if .\nfrom : tess ray / enron @ enronxgate on 04 / 26 / 2001 03 : 48 pm\nto : mary ellenberger / corp / enron @ enron\ncc : daren j farmer / enron @ enronxgate\nsubject : fw : fw : march 2001 invoice\nmary -\ndo you pay spinnaker , for gas purchases ? ( see daren ' s question below , re : 03 / 01 purchase price from spinnaker ( # 144271 hakemack , cynthia ; howard , charles\ncc : farmer , daren j .\nsubject : fw : fw : march 2001 invoice\nimportance : high\ncharlene / cindy / charles :\ncan either of you answer darren ' s question to me below ? my sales deal is under ena .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , april 26 , 2001 3 : 20 pm\nto : ray , tess\nsubject : re : fw : march 2001 invoice\ntess ,\nwe probably should be invoicing selling to dow at if . however , we should also have purchased the supply from spinnaker ( # 144271 bellamy , liz\nsubject : re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" > @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.526+0000", "entityId": 4625, "properties": {"text": "Subject: eex update\ndaren ,\nas i mentioned on tuesday , santiago and i met with jill and jennifer regarding the eex physical bids . thay have narrowed the targeted production down to 10 fields .\nattached is a file that summarized our discussions . the items marked in yellow are ones jill is requesting your services , mainly to see if we can get transport and keep our bid competitive . please review and we can talk sometime tomorrow as i have meetings all afternoon today . if you have a chance to start working this today and have some questions , just call jill , jennifer or santiago .\nthanks ,\neric", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.531+0000", "entityId": 4626, "properties": {"text": "Subject: hpl noms for april 27 , 2001\n( see attached file : hplno 427 . xls )\n- hplno 427 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.536+0000", "entityId": 4627, "properties": {"text": "Subject: re : may wellhead \" spot \" purchases - request\nvance ,\nbased on the information below , nominations are being revised effective may 1 , 2001 :\ncounterparty meter # orig . nom rev . nom\nbarrett resources 0435 1 , 536 0\nseneca resources 0435 3 , 073 4 , 609\ntotal 4 , 609 4 , 609\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 25 / 2001 08 : 42 am\nto : robert cotten / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : re : may wellhead \" spot \" purchases - request\nbob ,\nhplc continues to purchase gas from both ocean and seneca on a term basis ; firm tickets were submitted for april origination beginning with the month of april . as for as barrett , they are selling their gas under a joa with seneca ; therefore , 100 % of barrett ' s production is being paid to seneca . consequently , you should see tickets in sitara for both counterparties .\nlet me know is you can ' t .\nvlt\nx 36353\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : tuesday , april 24 , 2001 6 : 20 pm\nto : taylor , vance l .\ncc : weissman , george\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nare we still purchasing gas at meter 435 from barrett resources , ocean energy and seneca resources ? they were on george ' s spreadsheet but they are not termed up . the only deals termed up are mariner , st . mary land , walter oil & gas and the meridian resource .\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 24 / 2001 04 : 25 pm\nto : robert cotten / hou / ect @ ect\ncc : janie aguayo / hou / ect @ ect , lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : may wellhead \" spot \" purchases - request\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the production month of may , 2001 . this production will be purchased on a \" spot \" basis and deal tickets should be created and entered into sitara based on the following information :\ncounterparty meter volume price\napache corporation 0435 1409 mmbtu / d 100 % if / hsc less $ 0 . 10\nwhiting petroleum corp 6523 113 mmbtu / d 85 % if / hsc\nel paso merchant energy , lp 5923 622 mmbtu / d 100 % if / hsc less $ 0 . 26\nel paso merchant energy , lp 5848 203 mmbtu / d 85 % if / hsc swift energy 2630 21 mmbtu / d 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 147 mmbtu / d 85 % if / hsc\nhesco gathering oil co . 6063 289 mmbtu / d 85 % if / hsc\nembassy natural gas inc . 6598 lmmbtu / d 85 % if / hsc\nstone energy 9696 2745 mmbtu / d 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 3407 mmbtu / d 100 % if / hsc less $ 0 . 20\namerada hess ( hess energy svcs ) 0435 1104 mmbtu / d 100 % if / hsc less $ 0 . 14\ncrosstex energy services , ltd . 0435 656 mmbtu / d 100 % if / hsc less $ 0 . 12\ntri - union development 0435 149 mmbtu / d 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nadditionally , if at all possible , please do not confirm the apache and crosstex deals as we expect to receive term firm contracts in the very near future .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.541+0000", "entityId": 4628, "properties": {"text": "Subject: revised nomination\ndeal # 377169 has been revised today effective 4 / 19 / 01 as follows :\nc / p meter # trade zone from to\ncokinos 98 - 9842 07 0 3 , 000\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.545+0000", "entityId": 4629, "properties": {"text": "Subject: re : may wellhead \" spot \" purchases - request\nvance ,\nas we discussed yesterday , i will zero the confirmed column in pops for barrett and increase the same for seneca .\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 26 / 2001 11 : 42 am\nto : robert cotten / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , daren j farmer / hou / ect @ enron , melissa graves / enron @ enronxgate , susan smith / hou / ect @ enron\nsubject : re : may wellhead \" spot \" purchases - request\nbob ,\ni ' m still concern about april ' s nom ; if we don ' t take it to zero , than we could have the possibility of the allocations group adding volumes to barrett ' s april deal . this would be incorrect .\nvlt\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : thursday , april 26 , 2001 9 : 27 am\nto : taylor , vance l .\ncc : weissman , george ; daren j farmer / hou / ect @ enron ; graves , melissa ; susan smith / hou / ect @ enron\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nbased on the information below , nominations are being revised effective may 1 , 2001 :\ncounterparty meter # orig . nom rev . nom\nbarrett resources 0435 1 , 536 0\nseneca resources 0435 3 , 073 4 , 609\ntotal 4 , 609 4 , 609\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 25 / 2001 08 : 42 am\nto : robert cotten / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : re : may wellhead \" spot \" purchases - request\nbob ,\nhplc continues to purchase gas from both ocean and seneca on a term basis ; firm tickets were submitted for april origination beginning with the month of april . as for as barrett , they are selling their gas under a joa with seneca ; therefore , 100 % of barrett ' s production is being paid to seneca . consequently , you should see tickets in sitara for both counterparties .\nlet me know is you can ' t .\nvlt\nx 36353\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : tuesday , april 24 , 2001 6 : 20 pm\nto : taylor , vance l .\ncc : weissman , george\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nare we still purchasing gas at meter 435 from barrett resources , ocean energy and seneca resources ? they were on george ' s spreadsheet but they are not termed up . the only deals termed up are mariner , st . mary land , walter oil & gas and the meridian resource .\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 24 / 2001 04 : 25 pm\nto : robert cotten / hou / ect @ ect\ncc : janie aguayo / hou / ect @ ect , lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : may wellhead \" spot \" purchases - request\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the production month of may , 2001 . this production will be purchased on a \" spot \" basis and deal tickets should be created and entered into sitara based on the following information :\ncounterparty meter volume price\napache corporation 0435 1409 mmbtu / d 100 % if / hsc less $ 0 . 10\nwhiting petroleum corp 6523 113 mmbtu / d 85 % if / hsc\nel paso merchant energy , lp 5923 622 mmbtu / d 100 % if / hsc less $ 0 . 26\nel paso merchant energy , lp 5848 203 mmbtu / d 85 % if / hsc swift energy 2630 21 mmbtu / d 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 147 mmbtu / d 85 % if / hsc\nhesco gathering oil co . 6063 289 mmbtu / d 85 % if / hsc\nembassy natural gas inc . 6598 lmmbtu / d 85 % if / hsc\nstone energy 9696 2745 mmbtu / d 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 3407 mmbtu / d 100 % if / hsc less $ 0 . 20\namerada hess ( hess energy svcs ) 0435 1104 mmbtu / d 100 % if / hsc less $ 0 . 14\ncrosstex energy services , ltd . 0435 656 mmbtu / d 100 % if / hsc less $ 0 . 12\ntri - union development 0435 149 mmbtu / d 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nadditionally , if at all possible , please do not confirm the apache and crosstex deals as we expect to receive term firm contracts in the very near future .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.549+0000", "entityId": 4630, "properties": {"text": "Subject: re : may wellhead \" spot \" purchases - request\nbob ,\ni ' m still concern about april ' s nom ; if we don ' t take it to zero , than we could have the possibility of the allocations group adding volumes to barrett ' s april deal . this would be incorrect .\nvlt\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : thursday , april 26 , 2001 9 : 27 am\nto : taylor , vance l .\ncc : weissman , george ; daren j farmer / hou / ect @ enron ; graves , melissa ; susan smith / hou / ect @ enron\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nbased on the information below , nominations are being revised effective may 1 , 2001 :\ncounterparty meter # orig . nom rev . nom\nbarrett resources 0435 1 , 536 0\nseneca resources 0435 3 , 073 4 , 609\ntotal 4 , 609 4 , 609\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 25 / 2001 08 : 42 am\nto : robert cotten / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : re : may wellhead \" spot \" purchases - request\nbob ,\nhplc continues to purchase gas from both ocean and seneca on a term basis ; firm tickets were submitted for april origination beginning with the month of april . as for as barrett , they are selling their gas under a joa with seneca ; therefore , 100 % of barrett ' s production is being paid to seneca . consequently , you should see tickets in sitara for both counterparties .\nlet me know is you can ' t .\nvlt\nx 36353\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : tuesday , april 24 , 2001 6 : 20 pm\nto : taylor , vance l .\ncc : weissman , george\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nare we still purchasing gas at meter 435 from barrett resources , ocean energy and seneca resources ? they were on george ' s spreadsheet but they are not termed up . the only deals termed up are mariner , st . mary land , walter oil & gas and the meridian resource .\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 24 / 2001 04 : 25 pm\nto : robert cotten / hou / ect @ ect\ncc : janie aguayo / hou / ect @ ect , lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : may wellhead \" spot \" purchases - request\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the production month of may , 2001 . this production will be purchased on a \" spot \" basis and deal tickets should be created and entered into sitara based on the following information :\ncounterparty meter volume price\napache corporation 0435 1409 mmbtu / d 100 % if / hsc less $ 0 . 10\nwhiting petroleum corp 6523 113 mmbtu / d 85 % if / hsc\nel paso merchant energy , lp 5923 622 mmbtu / d 100 % if / hsc less $ 0 . 26\nel paso merchant energy , lp 5848 203 mmbtu / d 85 % if / hsc swift energy 2630 21 mmbtu / d 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 147 mmbtu / d 85 % if / hsc\nhesco gathering oil co . 6063 289 mmbtu / d 85 % if / hsc\nembassy natural gas inc . 6598 lmmbtu / d 85 % if / hsc\nstone energy 9696 2745 mmbtu / d 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 3407 mmbtu / d 100 % if / hsc less $ 0 . 20\namerada hess ( hess energy svcs ) 0435 1104 mmbtu / d 100 % if / hsc less $ 0 . 14\ncrosstex energy services , ltd . 0435 656 mmbtu / d 100 % if / hsc less $ 0 . 12\ntri - union development 0435 149 mmbtu / d 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nadditionally , if at all possible , please do not confirm the apache and crosstex deals as we expect to receive term firm contracts in the very near future .\nthanks ,\nvlt\nx 3 - 6353", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.554+0000", "entityId": 4631, "properties": {"text": "Subject: double a for 5 / 1 / 01 business\nkerr mcgee gas daily request for may 01 deliveries , 20 % - - - 5 , 200 gas daily , 20 , 800 lst of the month index\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brian m riley / hou / ect on 04 / 26 / 2001 01 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" williams , deann \" on 04 / 26 / 2001 11 : 16 : 53 am\nto : \" ' briley @ enron . com ' \" , \" ' brian . m . riley @ enron . com ' \" , \" ' sherlyn schumack ' \" , \" ' cynthia . hakemack @ enron . com ' \"\ncc : \" perez , edgar \" , \" doss , randal \" , \" johnson , chuck \"\nsubject : double a for 5 / 1 / 01 business\nattached is my word file , for you to print out the monthly exhibits from\njan - 01 forward , and process each monthly exhibit for approval by hpl . as we\npreviously discussed , i haven ' t received back the facsimile copy sent to you\nmonthly , and you requested me to email you an electronic version , so you\ncould print out the months of jan - 01 through current may - 01 and process for\nhpl execution . once executed by hpl , please fax back to me at ( 405 )\n270 - 2296 .\nvolumes for may - 01 are dcq 26 , 000 mmbtud , with gas daily 20 % for 5 , 200\nmmbtud , and remainder of base contract vol at 80 % for 20 , 800 mmbtu priced at\niferc hpl index .\nplease acknowledge receipt of this email , by replying back that you received\nit and will take care of the exhibit approval process , as well as confirm\nthe may - 01 volumes for sale . thank you .\n>\nde ann williams\nkerr - mcgee oil & gas corporation\n( 405 ) 270 - 2070 , fax ( 405 ) 270 - 2296\nemail : dwilliams @ kmg . com\n- doublea - exhibit f revised . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.559+0000", "entityId": 4632, "properties": {"text": "Subject: meter 1558 april 2001\ncerrito lastiendas - has meter flow on the 7 th and the deal ended on the 6 th . can we extend the deal for the 48 mmbtu ' s that flowed\nor can i override the meter and add it to a day that flowed less than the nom ? the third had 4861 and the nom was for 5000 .\nthanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.564+0000", "entityId": 4633, "properties": {"text": "Subject: fw : crosstex energy , driscoll ranch # 1 & # 3 , meters 9858 reinhardt , donald p . ; riley , brian ; smith , susan ; walker , robert ; weissman , george\nsubject : crosstex energy , driscoll ranch # 1 , meter 9858 , may , 2001\nper section 2 . 2 of the gpa , crosstex has elected to sell this gas ( approximately 10 , 000 / d ) baseload for the month of may , 2001 at if hsc - $ 0 . 10 . thanks . jab", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.569+0000", "entityId": 4634, "properties": {"text": "Subject: fw : fw : equistar 1373 for march\ndaren - i won ' t be here on friday but tom acton will back me up .\nmegan parker keeps asking me for an answer - have you had a chance to decide what to do ?\nthanks - julie\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : thursday , april 26 , 2001 8 : 34 am\nto : kemp , juliann\nsubject : re : fw : equistar 1373 for march\nhave you heard from daren yet ? equistar won ' t pay the invoice until we bill it correctly . thanks for you help . i know it ' s bid week .\nmegan\nfrom : juliann kemp / enron @ enronxgate on 04 / 25 / 2001 10 : 22 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : fw : equistar 1373 for march\ni sent this to daren farmer - to give me direction for the missing gas volumes .\nthe deals went to ' 0 ' in sitara by the trader and amiee confirmed it for the following days . thanks - julie\n- - - - - original message - - - - -\nfrom : kemp , juliann\nsent : wednesday , april 25 , 2001 10 : 18 am\nto : farmer , daren j .\nsubject : equistar for march\nmarch -\nmeter 1373\ndeal 165373 for 10 , 000 ( 3 rd , 4 th , 5 th ) total 310 , 000\ndeal 157572 for 5 , 000 ( 3 rd ) total 155 , 000\ndeal was taken to zero in sitara - equistar said it should of been kept whole for the whole month .\nwhat do you want me to do so equistar can pay their invoice . thanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.573+0000", "entityId": 4635, "properties": {"text": "Subject: natural gas nomination for 5 / 01\nenron methanol nominates the following natural gas requirements for the methanol plant for may 2001 :\n30 , 000 mmbtu per day\negpfc nominates the following natural gas requirements for the mtbe plant at morgan ' s point for may 2001 :\n6 , 000 mmbtu per day\nnote : lee , an additional 3 , 000 mmbtu per day has been locked with elsa @ $ 4 . 90 / mmbtu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.578+0000", "entityId": 4636, "properties": {"text": "Subject: westex documents\nper butch cheatham ' s request , i am sending you the following documents :\n( see attached file : exhibit a - westex terms and conditions intrastate . doc ) ( see\nattached file : westex gas service agreement ( base ) . doc ) ( see attached file :\nwestex transportation order . doc )\n- exhibit a - westex terms and conditions intrastate . doc\n- westex gas service agreement ( base ) . doc\n- westex transportation order . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.582+0000", "entityId": 4637, "properties": {"text": "Subject: re : hpl transport contracts\nthanks\nkeep you posted .\nbob\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : friday , april 27 , 2001 1 : 27 pm\nto : hall , bob m ; wynne , rita\ncc : dudley , cheryl ; graves , melissa ; weissman , george ; camp , howard\nsubject : re : hpl transport contracts\non oasis and pgev , we have been buying and selling as hpl . however , we have been transporting the gas under ena . this is primarily for spot and base deals . we want to keep these transport contracts with ena . the only term deal we have at waha is to tufco ( 0 - 60 , 000 / day ) . this deal is under ena with it ' s own firm transport contract ( now on guadalupe pipeline , which was previously teco / pgev ) . the sale and transport will go with hpl . the sale to entex off of oasis ( currently under the ena , will be assigned to hpl ) must be served off of oasis . so hpl will need to acquire an oasis contract for this deal . let me know if you have any more questions .\nd\n- - - - - original message - - - - -\nfrom : hall , bob m\nsent : friday , april 27 , 2001 1 : 13 pm\nto : wynne , rita\ncc : dudley , cheryl ; graves , melissa ; weissman , george ; camp , howard ; farmer , daren j .\nsubject : re : hpl transport contracts\ni would think that the first contract should go the aep . ena won ' t be selling to equistar\noff of channel for at least three months . ena will have to get a transport agreement with\nhpl or channel .\non the second contract : is hpl making the sale or ena ? is it a sale that is going\nto aep . i know we are serving a small entex point off of oasis . is that for convenience ,\ncan hpl sever the point some other way ?\nsomeone let me hear what you think .\nthanks\nbob\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : friday , april 27 , 2001 8 : 17 am\nto : hall , bob m\ncc : dudley , cheryl ; graves , melissa\nsubject : hpl transport contracts\ni spoke with daren and there are a few contracts that he was aware of :\n1 . channel - 012 - 15600 - 02 - 069 ena using hpl ' s capacity - selling to equistar on channel\n2 . oasis and pgev - hpl is using ena ' s capacity\n3 . tejas ship and tejas gas - daren says we don ' t do business often on these pipes as ena , but we always have the possibility that we will at any time , so ena would need it ' s own transport contracts\nlet me know if anyone has questions . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.588+0000", "entityId": 4638, "properties": {"text": "Subject: re : hpl transport contracts\ni would think that the first contract should go the aep . ena won ' t be selling to equistar\noff of channel for at least three months . ena will have to get a transport agreement with\nhpl or channel .\non the second contract : is hpl making the sale or ena ? is it a sale that is going\nto aep . i know we are serving a small entex point off of oasis . is that for convenience ,\ncan hpl sever the point some other way ?\nsomeone let me hear what you think .\nthanks\nbob\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : friday , april 27 , 2001 8 : 17 am\nto : hall , bob m\ncc : dudley , cheryl ; graves , melissa\nsubject : hpl transport contracts\ni spoke with daren and there are a few contracts that he was aware of :\n1 . channel - 012 - 15600 - 02 - 069 ena using hpl ' s capacity - selling to equistar on channel\n2 . oasis and pgev - hpl is using ena ' s capacity\n3 . tejas ship and tejas gas - daren says we don ' t do business often on these pipes as ena , but we always have the possibility that we will at any time , so ena would need it ' s own transport contracts\nlet me know if anyone has questions . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.594+0000", "entityId": 4639, "properties": {"text": "Subject: park / lend acct on pgev , deal tickets\ni have created the following tickets to account for the physical and economic impact of the ena texas pleo 0004 agreement ( $ . 03 / day / dth ) .\npurch from cpr storage ( lend ) - 758659\nsale to cpr storage ( park ) - 758600\nxport usage ( $ . 03 / dth - meter unassigned on rec . - 758803\nplease let me know if you have any questions / comments .\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.603+0000", "entityId": 4640, "properties": {"text": "Subject: eastrans nomination change effective 4 / 28 / 01\nplease increase deliveries into eastrans to 30 , 000 mmbtu / dy effective\n4 / 28 / 01 and maintain flow for 4 / 28 , 4 / 29 & 4 / 30 . gas flow will go to 0\nmmbtu / dy on 5 / 1 / 01 .\nthe redeliveries will be 30 , 000 mmbtu / dy into pg & e @ carthage hub tailgate .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.609+0000", "entityId": 4641, "properties": {"text": "Subject: re : fw : fw : march 2001 invoice\nthanks mary !\ndaren , is the info that you need ?\n- - - - - original message - - - - -\nfrom : ellenberger , mary\nsent : thursday , april 26 , 2001 4 : 45 pm\nto : ray , tess\ncc : farmer , daren j .\nsubject : re : fw : fw : march 2001 invoice\nimportance : high\nthe question is not that \" cut and dry \" . however , for the month of march enron paid spinnaker @ if hsc - $ 0 . 085 .\ncurrently the volume is posted under deal ticket # 144271 with is the deal tick for gas daily production .\nthis production should be moved to deal ticket # 144264 with is the if .\nfrom : tess ray / enron @ enronxgate on 04 / 26 / 2001 03 : 48 pm\nto : mary ellenberger / corp / enron @ enron\ncc : daren j farmer / enron @ enronxgate\nsubject : fw : fw : march 2001 invoice\nmary -\ndo you pay spinnaker , for gas purchases ? ( see daren ' s question below , re : 03 / 01 purchase price from spinnaker ( # 144271 hakemack , cynthia ; howard , charles\ncc : farmer , daren j .\nsubject : fw : fw : march 2001 invoice\nimportance : high\ncharlene / cindy / charles :\ncan either of you answer darren ' s question to me below ? my sales deal is under ena .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , april 26 , 2001 3 : 20 pm\nto : ray , tess\nsubject : re : fw : march 2001 invoice\ntess ,\nwe probably should be invoicing selling to dow at if . however , we should also have purchased the supply from spinnaker ( # 144271 bellamy , liz\nsubject : re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" > @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.614+0000", "entityId": 4642, "properties": {"text": "Subject: hpl noms for april 28 - 30 , 2001\n( see attached file : hplno 428 . xls )\n- hplno 428 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.619+0000", "entityId": 4643, "properties": {"text": "Subject: re : nom / actual vol for april 26 th\nwe agree\n\" eileen ponton \" on 04 / 27 / 2001 11 : 11 : 15 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / actual vol for april 26 th\nnom mcf mmbtu\n60 , 000 60 , 034 61 , 655\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.624+0000", "entityId": 4644, "properties": {"text": "Subject: fw : fw : fw : march 2001 invoice\njulie -\nper daren ' s repsonse below , can you correct price on this deal for 03 / 01 . currently under 639615 .\njoyce -\nper daren ' s message below , the sales volumes are currently under deal # sa 639615 . let me know when they ' ve been reallocated to 639612 .\nthanks -\ntess\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : friday , april 27 , 2001 12 : 34 pm\nto : ray , tess\nsubject : re : fw : fw : march 2001 invoice\nok , we should be paying dow based on the index price . but , it should be if hsc - . 07 instead of - . 06 . sales volumes should be allocated to deal 639612 .\nd\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : friday , april 27 , 2001 7 : 48 am\nto : ellenberger , mary\ncc : farmer , daren j . ; meyers , julie\nsubject : re : fw : fw : march 2001 invoice\nimportance : high\nthanks mary !\ndaren , is the info that you need ?\n- - - - - original message - - - - -\nfrom : ellenberger , mary\nsent : thursday , april 26 , 2001 4 : 45 pm\nto : ray , tess\ncc : farmer , daren j .\nsubject : re : fw : fw : march 2001 invoice\nimportance : high\nthe question is not that \" cut and dry \" . however , for the month of march enron paid spinnaker @ if hsc - $ 0 . 085 .\ncurrently the volume is posted under deal ticket # 144271 with is the deal tick for gas daily production .\nthis production should be moved to deal ticket # 144264 with is the if .\nfrom : tess ray / enron @ enronxgate on 04 / 26 / 2001 03 : 48 pm\nto : mary ellenberger / corp / enron @ enron\ncc : daren j farmer / enron @ enronxgate\nsubject : fw : fw : march 2001 invoice\nmary -\ndo you pay spinnaker , for gas purchases ? ( see daren ' s question below , re : 03 / 01 purchase price from spinnaker ( # 144271 hakemack , cynthia ; howard , charles\ncc : farmer , daren j .\nsubject : fw : fw : march 2001 invoice\nimportance : high\ncharlene / cindy / charles :\ncan either of you answer darren ' s question to me below ? my sales deal is under ena .\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , april 26 , 2001 3 : 20 pm\nto : ray , tess\nsubject : re : fw : march 2001 invoice\ntess ,\nwe probably should be invoicing selling to dow at if . however , we should also have purchased the supply from spinnaker ( # 144271 bellamy , liz\nsubject : re : fw : march 2001 invoice\ntess there is a deal out there for the blue dolphin s # 745589 . and there are three deal out there for csgt # 639612 , # 639615 , # 745589 . the problem is that none of these deals have actuals . it looks as though they have not been nom ' d .\ndaren are these deals real or what ? why have they not been nom ' d ? could they be under another dow company ?\ntess , i ' m leaving the office for a little bit today . but i ' ll be back this afternoon .\njulie\nfrom : tess ray / enron @ enronxgate on 04 / 24 / 2001 08 : 11 am\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : fw : march 2001 invoice\njulie -\nplease help ! per dow hydrocarbon ' s accountant , marilu trochta ' s e - mail below , ( with attachment ) , there are volume and price discrepancies with what ena billed them and what she reflects in her system . ena invoice # 24636 sa invoiced dow hydrocarbons and resources , inc , on csgt @ b 368 - brazos , per deal number sa 639615 , @ 685 per day ( 3 / 1 / 01 - 3 / 31 / 01 ) @ hsc gdp d . a . - $ 0 . 07 / mmbtu . vs . the 18 , 457 mmbtu @ $ 4 . 960 that dow has and ena did not invoice them for sales on bluedolphin 250 and 249 vs . the 5 , 459 mmbtu @ $ 4 . 960 & 18 , 218 mmbtu @ $ 4 . 960 that dow reflects . i realize that the volumes ena billed on the brazos are estimates or noms . problem : i need to confirm the march 2001 , sale @ brazos ( volume & price ) in addition to the sale @ blue dolphin 250 & 249 ( volume & price ) . can you print the confirmations for me ? also , sitara does not show me who the trader is for this deal , and by chance do you know who the scheduler ( s ) are ?\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" > > @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , april 23 , 2001 5 : 52 pm\nto : ray , tess\nsubject : march 2001 invoice\n- book 2 . xls >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.628+0000", "entityId": 4645, "properties": {"text": "Subject: equistar noms\ndarren - just got this ( sorry its late but had to wait for equistar to give this to me )\ncan you give me deal numbers so i can confirm it . thanks - julie\nequistar\nd 1373 channel 10 greater of 4 . 07 or 1 - . 20\nd 1373 channel 5 greater of 3 . 30 or 1 - . 20\nd 1373 channel 2 greater of 2 . 20 or 1 - . 05\nd 8024 bayport polymers 3 greater of 2 . 20 or 1 - . 05\nd 1399 matagorda polymars 4 greater of 2 . 20 or 1 - . 05\nd 1552 qel @ laporte 5 greater of 2 . 68 or 1 - . 10\nd 1552 qel @ laporte 5 greater of 3 . 30 or 1 - . 20\nd 1062 port arthur 1 greater of 2 . 20 or 1 - . 05\nd 1384 chocolate bayou 10 greater of 2 . 23 or 1 - . 05\nsubtotal 45\nthird party\n1373\nphllips 3\nsempra 15\nn . e . t . 10\n1552\nmorgan and stanley 5\nsub total 33\ngrand total 78", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.633+0000", "entityId": 4646, "properties": {"text": "Subject: duke energy meter 6722 may 2001\nmeter 6722 ( not sure if you need this ) - julie\nbreak down for duke - three rivers / live oak\ncody - 4 , 250\nsamson - 800\nshoreline duer wagon - 470\nshoreline amerac - 96 total\nbp - 4 , 987\ndetm - 0\ntotal for meter 6722 of 10 , 603", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.638+0000", "entityId": 4647, "properties": {"text": "Subject: hpl nom for may 1 , 2001\n( see attached file : hplno 501 . xls )\n- hplno 501 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.642+0000", "entityId": 4648, "properties": {"text": "Subject: estimated actuals for april 27 - 29 , 2001\nfollowing are the estimated actuals for april 27 - 29 , 2001 . as soon as we\nreceive the numbers from duke they will be forwarded to you .\napril 27 , 2001\nteco tap 20 . 000\napril 28 - 29 , 2001\nno flow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.647+0000", "entityId": 4649, "properties": {"text": "Subject: f . o . m . hpl nom . eff . may 1 , 2001 - dickinson\nfyi .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 04 / 30 / 2001 10 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 04 / 30 / 2001 09 : 06 : 14 am\nto : \" bob cotten ( e - mail ) \"\ncc : stretch brennan\nsubject : f . o . m . hpl nom . eff . may 1 , 2001 - dickinson\nthis is the estimated dickinson nomination for the month of may 2001 . the\nhpl nomination volume to be effective 5 / 1 / 2001 is :\n600 mmbtu / day for kcs resources ( 8 / 8 ths )\n_ _ _ _ _\n600 mmbtu / day total ( assumed btu factor of 1 . 083\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 . this is the transaction for which kcs has a\n\" buy / sell \" in place with hpl ; therefore , this \" production point \" nomination\nneeds to trigger an \" mirrored \" nomination at the redelivery point ( currently\nat riverside ) .\nbob withers > <\nkcs energy , inc .\n5555 san felipe , suite 1200\nhouston , tx 77056\nvoice 713 - 964 - 9434 fax 713 - 877 - 1394", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.652+0000", "entityId": 4650, "properties": {"text": "Subject: conoco , inc . katy tailgate contract 96001985 sitara 334995\nbob , the referenced contract dated 1 / 1 / 96 as amended effective 4 / 1 / 2000 does include an evergreen provision . thus , please add may , 2001 to the existing sitara deal , 334995 , at the current price , 90 % of ifhsc , for a volume of 155 mmbtu / d .\ndon , please prepare and circulate a termination letter for 96001985 .\ngeorge x 3 - 6992\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 04 / 30 / 2001 02 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njohn peyton\n04 / 30 / 2001 01 : 08 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : conoco katy contract\nplease send conoco ' s mike luchetti two month - to - month contracts for april and may volumes of around 150 - 200 mmbtu / day . this is for facility number 10077 - exxon plant hpl katy for gas that was being purchased under a contract that expired april 1 , 2001 - contract no 012 - 19785 - 113 .\nthank you ,\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.656+0000", "entityId": 4651, "properties": {"text": "Subject: may 1\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 04 / 30 / 2001 02 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nroyal _ b _ edmondson @ reliantenergy . com on 04 / 30 / 2001 02 : 14 : 43 pm\nto : tacton @ enron . com\ncc :\nsubject : may 1\n( see attached file : hpl - may . xls )\n- hpl - may . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.661+0000", "entityId": 4652, "properties": {"text": "Subject: equistar - i ' m still waiting for the deal break out from rachael\n@ equistar - i called twice .\nequistar\nd 1373 channel 17\nd 8024 bayport polymers 3\nd 1165 victoria polymers 0\nd 1399 matagorda polymars 4\nd 1552 qel @ laporte 10\nd 1553 laporte polymers 0\nd 1334 syngas fuels 0\nd 1062 port arthur 1\nd 1384 chocolate bayou 10\nsubtotal 45\nthird party\n1373\nphllips 3\nsempra 15\nn . e . t . 10\n1552\nmorgan and stanley 5\nsub total 33\ngrand total 78", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.665+0000", "entityId": 4653, "properties": {"text": "Subject: re : equistar noms\njulie\ni don ' t have the deal numbers as i did not do the deals . . . . they were done by craig breslau . . . .\ni can only suggest that you get with darren farmer to get the deal numbers\nlee\nfrom : juliann kemp / enron @ enronxgate on 04 / 30 / 2001 02 : 57 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : equistar noms\nlee - can you please give me the deal numbers so i can confirm the deals with equistar .\nthanks - julie 713 - 345 - 8639\nequistar\nd 1373 channel 10 greater of 4 . 07 or 1 - . 20\nd 1373 channel 5 greater of 3 . 30 or 1 - . 20\nd 1373 channel 2 greater of 2 . 20 or 1 - . 05\nd 8024 bayport polymers 3 greater of 2 . 20 or 1 - . 05\nd 1399 matagorda polymars 4 greater of 2 . 20 or 1 - . 05\nd 1552 qel @ laporte 5 greater of 2 . 68 or 1 - . 10\nd 1552 qel @ laporte 5 greater of 3 . 30 or 1 - . 20\nd 1062 port arthur 1 greater of 2 . 20 or 1 - . 05\nd 1384 chocolate bayou 10 greater of 2 . 23 or 1 - . 05\nsubtotal 45\nthird party\n1373\nphllips 3 deal # 762340\nsempra 15\nn . e . t . 10\n1552\nmorgan and stanley 5\nsub total 33\ngrand total 78", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.670+0000", "entityId": 4654, "properties": {"text": "Subject: fw : maintanence on hpl @ three rivers\nwhat would you like to do with the two day outage on may 8 th and 9 th . meter 6722 will be shutdown for two days .\nthanks - julie\n- - - - - original message - - - - -\nfrom : \" valentin zapata \" @ enron [ mailto : imceanotes - + 22 valentin + 20 zapata + 22 + 20 + 3 cvzapata + 40 duke - energy + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : tuesday , may 01 , 2001 11 : 16 am\nto : kemp , juliann\nsubject : maintanence on hpl @ three rivers\nthree rivers is scheduling pm on may 8 & 9 , this will involve shutting the\nhpl point at three rivers for 2 full gas days . the nomination is 10 . 6 for\nthe month of may , we will makeup gas accordingly before maintance date or\nafter to balance for the month . please let me know if you foresee any\nproblems with these dates , if no response back will go ahead and proceed\nwith scheduled work .\nvalentin zapata\nmarketing operations\nphone : ( 713 ) 627 - 6403\nfax : ( 713 ) 627 - 6273\npager : ( 800 ) 616 - 4938\nvzapata @ duke - energy . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.675+0000", "entityId": 4655, "properties": {"text": "Subject: guadalupe power partners - march 01 prod\njulie -\ncould you please change the following deal tickets to the rates detailed below :\nena\ndeal # 628368\nkaty . hub . gdp . da should be a fixed rate of $ 4 . 651 ( per the contract the rate is the katy . gdp . da - wacog + . 02 )\nena\ndeal # 628363\nwaha . hub . gdp . da should be a fixed rate of 4 . 621 ( per the contract the rate is the waha . gdp . da - wacog + . 02 )\nena\ndeal # 628367\nwaha . hub . gdp . da should be a fixed rate of 4 . 621 ( per the contract the rate is the waha . gdp . da - wacog + . 02 )\nena\ndeal # 682397\nwaha . hub . gdp . da should be a fixed rate of 4 . 621 ( per the contract the rate is the waha . gdp . da - wacog + . 02 )\ni will also send you the rates that need to be changed for 02 / 01 production .\nthanks for all your help - katherine 5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.680+0000", "entityId": 4656, "properties": {"text": "Subject: re : noms / actuals for 4 / 27 / 01 thru 4 / 29 / 01\nwe agree\n\" eileen ponton \" on 05 / 01 / 2001 08 : 37 : 13 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actuals for 4 / 27 / 01 thru 4 / 29 / 01\ndate nom mcf mmbtu\n4 / 27 / 01 20 , 000 20 , 041 20 , 583\n4 / 28 / 01 0 1 1\n4 / 29 / 01 0 0 0\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.686+0000", "entityId": 4657, "properties": {"text": "Subject: hpl nom for may 2 , 2001\n( see attached file : hplno 502 . xls )\n- hplno 502 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.692+0000", "entityId": 4658, "properties": {"text": "Subject: re : correction on nom for 4 / 30 / 01\nwe agree\n\" eileen ponton \" on 05 / 01 / 2001 11 : 53 : 45 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : correction on nom for 4 / 30 / 01\nnom should be 19 , 477 , went from 31 , 163 to 0 at midnight . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.696+0000", "entityId": 4659, "properties": {"text": "Subject: seacrest meter # 0435 - april , 2001\nthe confirmed nomination for barrett resources has been zeroed and a like number added to seneca .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 05 / 01 / 2001 01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : robert cotten 04 / 26 / 2001 11 : 48 am\nto : vance l taylor / enron @ enronxgate @ enron\ncc : george weissman / hou / ect @ ect , daren j farmer / hou / ect @ enron , melissa graves / enron @ enronxgate @ enron , susan smith / hou / ect @ enron\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nas we discussed yesterday , i will zero the confirmed column in pops for barrett and increase the same for seneca .\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 26 / 2001 11 : 42 am\nto : robert cotten / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , daren j farmer / hou / ect @ enron , melissa graves / enron @ enronxgate , susan smith / hou / ect @ enron\nsubject : re : may wellhead \" spot \" purchases - request\nbob ,\ni ' m still concern about april ' s nom ; if we don ' t take it to zero , than we could have the possibility of the allocations group adding volumes to barrett ' s april deal . this would be incorrect .\nvlt\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : thursday , april 26 , 2001 9 : 27 am\nto : taylor , vance l .\ncc : weissman , george ; daren j farmer / hou / ect @ enron ; graves , melissa ; susan smith / hou / ect @ enron\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nbased on the information below , nominations are being revised effective may 1 , 2001 :\ncounterparty meter # orig . nom rev . nom\nbarrett resources 0435 1 , 536 0\nseneca resources 0435 3 , 073 4 , 609\ntotal 4 , 609 4 , 609\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 25 / 2001 08 : 42 am\nto : robert cotten / hou / ect @ ect\ncc : george weissman / hou / ect @ ect , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate\nsubject : re : may wellhead \" spot \" purchases - request\nbob ,\nhplc continues to purchase gas from both ocean and seneca on a term basis ; firm tickets were submitted for april origination beginning with the month of april . as for as barrett , they are selling their gas under a joa with seneca ; therefore , 100 % of barrett ' s production is being paid to seneca . consequently , you should see tickets in sitara for both counterparties .\nlet me know is you can ' t .\nvlt\nx 36353\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : tuesday , april 24 , 2001 6 : 20 pm\nto : taylor , vance l .\ncc : weissman , george\nsubject : re : may wellhead \" spot \" purchases - request\nvance ,\nare we still purchasing gas at meter 435 from barrett resources , ocean energy and seneca resources ? they were on george ' s spreadsheet but they are not termed up . the only deals termed up are mariner , st . mary land , walter oil & gas and the meridian resource .\nbob\nfrom : vance l taylor / enron @ enronxgate on 04 / 24 / 2001 04 : 25 pm\nto : robert cotten / hou / ect @ ect\ncc : janie aguayo / hou / ect @ ect , lisa hesse / hou / ect @ ect , julie meyers / hou / ect @ ect , cynthia hakemack / hou / ect @ ect , donald p reinhardt / enron @ enronxgate , susan smith / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : may wellhead \" spot \" purchases - request\nbob ,\nhplc will be purchasing wellhead gas from the producers listed below for the production month of may , 2001 . this production will be purchased on a \" spot \" basis and deal tickets should be created and entered into sitara based on the following information :\ncounterparty meter volume price\napache corporation 0435 1409 mmbtu / d 100 % if / hsc less $ 0 . 10\nwhiting petroleum corp 6523 113 mmbtu / d 85 % if / hsc\nel paso merchant energy , lp 5923 622 mmbtu / d 100 % if / hsc less $ 0 . 26\nel paso merchant energy , lp 5848 203 mmbtu / d 85 % if / hsc swift energy 2630 21 mmbtu / d 100 % if / hsc less $ 1 . 38\nduke energy trading & marketing 6347 147 mmbtu / d 85 % if / hsc\nhesco gathering oil co . 6063 289 mmbtu / d 85 % if / hsc\nembassy natural gas inc . 6598 lmmbtu / d 85 % if / hsc\nstone energy 9696 2745 mmbtu / d 100 % if / hsc less $ 0 . 20\nthe houston exploration 9696 3407 mmbtu / d 100 % if / hsc less $ 0 . 20\namerada hess ( hess energy svcs ) 0435 1104 mmbtu / d 100 % if / hsc less $ 0 . 14\ncrosstex energy services , ltd . 0435 656 mmbtu / d 100 % if / hsc less $ 0 . 12\ntri - union development 0435 149 mmbtu / d 100 % if / hsc less $ 0 . 055\nranger oil company 9871 200 mmbtu / d 85 % if / hsc if 300 / d\nthese are producer svcs . deals and should be tracked in the im wellhead portfolio . . . attached to the gathering contract .\nadditionally , if at all possible , please do not confirm the apache and crosstex deals as we expect to receive term firm contracts in the very near future .\nthanks ,\nvlt\nx 3 - 6353\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.704+0000", "entityId": 4660, "properties": {"text": "Subject: f . o . m . hpl nom . eff . may 1 , 2001\nthe nomination for may 1 was not available until today . the nom was rolled from april at 5 , 100 / d . the nomination of 5 , 000 / d has been made retroactive to may 1 .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 05 / 01 / 2001 01 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob withers on 05 / 01 / 2001 12 : 13 : 02 pm\nto : \" bob cotten ( e - mail ) \"\ncc : \" tom acton ( e - mail ) \" , knox westmoreland , stretch brennan\nsubject : f . o . m . hpl nom . eff . may 1 , 2001\nthis is the estimated josey ranch nomination for the month of may 2001 . the\nhpl nomination volume to be effective 5 / 1 / 2001 is :\n5 , 000 mmbtu / day for kcs resources\n1 , 200 mmbtu / day for texaco\n6 , 200 mmbtu / day total ( assumed btu factor of 1 . 078\n@ 14 . 65 dry )\nif you need additional information , kcs ' field contact is stretch brennan in\nvictoria : 512 / 576 - 1005 .\nbob withers > <\nkcs energy , inc .\n5555 san felipe , suite 1200\nhouston , tx 77056\nvoice 713 - 964 - 9434 fax 713 - 877 - 1394", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.711+0000", "entityId": 4661, "properties": {"text": "Subject: fw : equistar noms\nhere are the deals # ' s the equistar meter volumes are on .\nif something looks wrong - let me know . julie\nequistar\nd 1373 channel 10 greater of 4 . 07 or 1 - . 20 deal # 604159\nd 1373 channel 5 greater of 3 . 30 or 1 - . 20 deal # 448443\nd 1373 channel 2 greater of 2 . 20 or 1 - . 05 deal # 240061\nd 8024 bayport polymers 3 greater of 2 . 20 or 1 - . 05 deal # 240061\nd 1399 matagorda polymars 4 greater of 2 . 20 or 1 - . 05 deal # 240061\nd 1552 qel @ laporte 5 greater of 2 . 68 or 1 - . 10 deal # 452598\nd 1552 qel @ laporte 5 greater of 3 . 30 or 1 - . 20 deal # 448443\nd 1062 port arthur 1 greater of 2 . 20 or 1 - . 05 deal # 240061\nd 1384 chocolate bayou 10 greater of 2 . 23 or 1 - . 05 deal # 157572\nsubtotal 45\nthird party\n1373\nphllips 3 deal # 762340\nsempra 15 deal # 755750\nn . e . t . 10 deal # 157572\n1552\nmorgan and stanley 5\nsub total 33\ngrand total 78", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.717+0000", "entityId": 4662, "properties": {"text": "Subject: eastrans nomination change effective 5 / 3 / 01\nplease increase deliveries into eastrans to 10 , 000 mmbtu / dy effective\n5 / 3 / 01 .\nthe redeliveries will be 10 , 000 mmbtu / dy into the cartwheel .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.721+0000", "entityId": 4663, "properties": {"text": "Subject: hpl nom for may 3 , 2001\n( see attached file : hplno 503 . xls )\n- hplno 503 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.726+0000", "entityId": 4664, "properties": {"text": "Subject: re : noms / actual vols for may lst\nwe agree\n\" eileen ponton \" on 05 / 02 / 2001 10 : 56 : 36 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual vols for may lst\nnom mcf mmbtu\n47 , 500 43 , 506 44 , 681\nnom :\n9 : 00 to 14 : 00 30 , 000 ( 5 hours )\n14 : 00 - 4 : 00 60 , 000 ( 10 hours )\n4 : 00 to 9 : 00 40 , 000 ( 5 hours )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.731+0000", "entityId": 4665, "properties": {"text": "Subject: re : spinnaker exploration company , l . l . c . n . padre is . block 883 l\noffshore kleberg county , texas contract 96047295 , meter 098 - 9862 ( 098 - 9848\nplatform )\nthanks , bob . it now turns out that due to operational issues , the additional 10 , 000 / d may not come on next week . spinnaker is having problems dealing with all the condensate associated with this gas and may not have the proper equipment in place to allow the additional gas to flow and also handle the additional condensate associated with that gas . i ' ll keep you posted .\ngeorge 713 . 571 . 3159\nenron north america corp . from : robert cotten 05 / 02 / 2001 04 : 23 pm\nto : george weissman / hou / ect @ ect\ncc : daren j farmer / hou / ect , brian m riley / hou / ect @ ect , melissa graves / hou / ect , mike morris / corp / enron @ enron , gerald lofton / hou / ect @ ect\nsubject : re : spinnaker exploration company , l . l . c .\nn . padre is . block 883 l\noffshore kleberg county , texas\ncontract 96047295 , meter 098 - 9862 ( 098 - 9848 platform )\ngeorge ,\nthe texas general land office transport volume is in pops for may nominated at 4 , 800 / d . deal # 535132 was initially set up as a wellhead purchase from texas general land office . the transport volume of 4 , 800 / d comprises approximately 22 % of the total volume nominated at the meter .\nbob\nenron north america corp . from : george weissman 05 / 02 / 2001 02 : 38 pm\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect , brian m riley / hou / ect @ ect , melissa graves / hou / ect , mike morris / corp / enron @ enron , gerald lofton / hou / ect @ ect\nsubject : spinnaker exploration company , l . l . c .\nn . padre is . block 883 l\noffshore kleberg county , texas\ncontract 96047295 , meter 098 - 9862 ( 098 - 9848 platform )\nbob , we currently have a total of 16 . 817 mmbtu / d nominated for purchases at meter 098 - 9862 as follows :\nspinnaker exploration company , l . l . c sit 379424 5 , 886 / d 27 %\nranger oil company sit 533410 5 , 886 / d 27 %\nthe houston exploration company sit 535119 5 , 045 / d 23 %\nit appears that the texas general land office transport volume is not properly included in sitara for may - see deal 535132 , which shows 0 as the expectted volume . texas glo has historically transported about 23 % of the gas at the n . padre is . block 883 l .\nonce it starts flowing , the incremental 10 , 000 mmbtu / d should be allocated to the deals mentioned above based on the proportions shown above .\ngeorge 713 . 571 . 9159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 02 / 2001 01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 05 / 02 / 2001 01 : 51 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : fw : npi 883 additional volume next week\nfyi ,\nthanks ,\nvlt\n- - - - - original message - - - - -\nfrom : sweeney , christy\nsent : wednesday , may 02 , 2001 10 : 56 am\nto : vance l taylor / hou / ect @ enron\nsubject : npi 883 additional volume next week\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 05 / 02 / 2001 10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbillyoung 3 @ aol . com on 05 / 02 / 2001 10 : 16 : 43 am\nto : christine . marcus @ glo . state . tx . us , tjones @ spinexp . com\ncc : llipperdt @ houstonexp . com , patb @ cnrl . com , christy . sweeney @ enron . com\nsubject : npi 883 additional volume next week\nchristine -\nspinnaker expects to gradually increase the flow rate at npi 883 by 10\nmmcfd mmcfd commencing next week .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.736+0000", "entityId": 4666, "properties": {"text": "Subject: re : spinnaker exploration company , l . l . c . n . padre is . block 883 l\noffshore kleberg county , texas contract 96047295 , meter 098 - 9862 ( 098 - 9848\nplatform )\ngeorge ,\nthe texas general land office transport volume is in pops for may nominated at 4 , 800 / d . deal # 535132 was initially set up as a wellhead purchase from texas general land office . the transport volume of 4 , 800 / d comprises approximately 22 % of the total volume nominated at the meter .\nbob\nenron north america corp . from : george weissman 05 / 02 / 2001 02 : 38 pm\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect , brian m riley / hou / ect @ ect , melissa graves / hou / ect , mike morris / corp / enron @ enron , gerald lofton / hou / ect @ ect\nsubject : spinnaker exploration company , l . l . c .\nn . padre is . block 883 l\noffshore kleberg county , texas\ncontract 96047295 , meter 098 - 9862 ( 098 - 9848 platform )\nbob , we currently have a total of 16 . 817 mmbtu / d nominated for purchases at meter 098 - 9862 as follows :\nspinnaker exploration company , l . l . c sit 379424 5 , 886 / d 27 %\nranger oil company sit 533410 5 , 886 / d 27 %\nthe houston exploration company sit 535119 5 , 045 / d 23 %\nit appears that the texas general land office transport volume is not properly included in sitara for may - see deal 535132 , which shows 0 as the expectted volume . texas glo has historically transported about 23 % of the gas at the n . padre is . block 883 l .\nonce it starts flowing , the incremental 10 , 000 mmbtu / d should be allocated to the deals mentioned above based on the proportions shown above .\ngeorge 713 . 571 . 9159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 02 / 2001 01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 05 / 02 / 2001 01 : 51 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : fw : npi 883 additional volume next week\nfyi ,\nthanks ,\nvlt\n- - - - - original message - - - - -\nfrom : sweeney , christy\nsent : wednesday , may 02 , 2001 10 : 56 am\nto : vance l taylor / hou / ect @ enron\nsubject : npi 883 additional volume next week\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 05 / 02 / 2001 10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbillyoung 3 @ aol . com on 05 / 02 / 2001 10 : 16 : 43 am\nto : christine . marcus @ glo . state . tx . us , tjones @ spinexp . com\ncc : llipperdt @ houstonexp . com , patb @ cnrl . com , christy . sweeney @ enron . com\nsubject : npi 883 additional volume next week\nchristine -\nspinnaker expects to gradually increase the flow rate at npi 883 by 10\nmmcfd mmcfd commencing next week .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.741+0000", "entityId": 4667, "properties": {"text": "Subject: spinnaker exploration company , l . l . c . n . padre is . block 883 l\noffshore kleberg county , texas contract 96047295 , meter 098 - 9862 ( 098 - 9848\nplatform )\nbob , we currently have a total of 16 . 817 mmbtu / d nominated for purchases at meter 098 - 9862 as follows :\nspinnaker exploration company , l . l . c sit 379424 5 , 886 / d 27 %\nranger oil company sit 533410 5 , 886 / d 27 %\nthe houston exploration company sit 535119 5 , 045 / d 23 %\nit appears that the texas general land office transport volume is not properly included in sitara for may - see deal 535132 , which shows 0 as the expectted volume . texas glo has historically transported about 23 % of the gas at the n . padre is . block 883 l .\nonce it starts flowing , the incremental 10 , 000 mmbtu / d should be allocated to the deals mentioned above based on the proportions shown above .\ngeorge 713 . 571 . 9159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 02 / 2001 01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 05 / 02 / 2001 01 : 51 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : fw : npi 883 additional volume next week\nfyi ,\nthanks ,\nvlt\n- - - - - original message - - - - -\nfrom : sweeney , christy\nsent : wednesday , may 02 , 2001 10 : 56 am\nto : vance l taylor / hou / ect @ enron\nsubject : npi 883 additional volume next week\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christy sweeney / hou / ect on 05 / 02 / 2001 10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbillyoung 3 @ aol . com on 05 / 02 / 2001 10 : 16 : 43 am\nto : christine . marcus @ glo . state . tx . us , tjones @ spinexp . com\ncc : llipperdt @ houstonexp . com , patb @ cnrl . com , christy . sweeney @ enron . com\nsubject : npi 883 additional volume next week\nchristine -\nspinnaker expects to gradually increase the flow rate at npi 883 by 10\nmmcfd mmcfd commencing next week .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.746+0000", "entityId": 4668, "properties": {"text": "Subject: cliff baxter\nit is with sadness and regret that we announce that cliff baxter is resigning as an employee of enron . we are happy , though , that cliff ' s primary reason for resigning is to spend more time with his family .\ncliff is a unique talent . his creativity , intelligence , sense of humor , and straightforward manner have been assets to the company throughout his career . he will be missed .\ncliff joined enron in 1991 and was a key member of the team that built enron ' s wholesale business . before becoming vice chairman of enron , cliff served in a variety of positions in enron ' s wholesale businesses , culminating in his appointment as chairman and chief executive officer of enron north america in 1999 .\nwe have asked cliff , and he has agreed , to continue in a consulting role for the company while concluding negotiations on a number of key asset dispositions .\nplease join us in thanking cliff for his service to the company and in wishing him the very best .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.750+0000", "entityId": 4669, "properties": {"text": "Subject: calpine daily gas nomination\njulie , we should stay the same through monday . if there is a change i will\ncall you . thanks .\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.755+0000", "entityId": 4670, "properties": {"text": "Subject: buyback deals expire\ndaren ,\njulie meyers sent me the list of buyback / sale / swing tickets\n- i told her some expire 4 / 30 / 01 and asked if they were to be extended .\nshe didn ' t have any knowledge of any being extended to may - do you know who to ask ?\nundertake sale swing\nbeaumont methanol 696599 696585 696594\nunion carbide 699730\nvalero 478227 454447\nvalero 478230 454455\nvalero 478229 454452\nthanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.760+0000", "entityId": 4671, "properties": {"text": "Subject: eastrans nomination change effective 5 / 4 / 01\neffective 5 / 4 / 01 , eastrans deliveries and redeliveries will be 0 mmbtu / dy .\n- - - - - forwarded by marta k henderson / houston / pefs / pec on 05 / 03 / 01 08 : 45 am\n- - - - -\nmarta k\nhenderson to : briley @ enron . com , carlos . j . rodriguez @ enron . com , connie\nwester / easttexas / pefs / pec @ pec , dfarmer @ enron . com , daniel c\n05 / 02 / 01 rider / houston / pefs / pec @ pec , darrel f . bane / easttexas / pefs / pec @ pec , donna\n09 : 16 am c . spencer / gcs / cec / pec @ pec , donna j dobb / houston / pefs / pec @ pec , john c\nlehman / field / pefs / pec @ pec , julia a . urbanek / gcs / cec / pec @ pec , lee c .\nspivey / field / pefs / pec @ pec , michael r . cherry / easttexas / pefs / pec @ pec , poe\nreed / gcs / cec / pec @ pec , ronald c . douglas / gcs / cec / pec @ pec , sharon\nbeemer / houston / pefs / pec @ pec , william e . speckels / gcs / cec / pec @ pec , sharon\nk asbill / houston / pefs / pec @ pec , chris j walters / houston / pefs / pec @ pec\ncc :\nsubject : eastrans nomination change effective 5 / 3 / 01\nplease increase deliveries into eastrans to 10 , 000 mmbtu / dy effective\n5 / 3 / 01 .\nthe redeliveries will be 10 , 000 mmbtu / dy into the cartwheel .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.766+0000", "entityId": 4672, "properties": {"text": "Subject: hpl nom for may 4 , 2001\n( see attached file : hplno 504 . xls )\n- hplno 504 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.771+0000", "entityId": 4673, "properties": {"text": "Subject: re : nom / actual for may 2 nd\nwe agree\n\" eileen ponton \" on 05 / 03 / 2001 03 : 12 : 15 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : nom / actual for may 2 nd\nnom mcf mmbtu\n32 , 500 31 , 829 32 , 689\nbtu = 1 . 027", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.776+0000", "entityId": 4674, "properties": {"text": "Subject: gulf coast pipeline company dyersdale area , harris co . , tx meters\n4555 , 6677 , 9618 & 9889\ndaren ,\nfyi . the meter is not set up yet .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 05 / 03 / 2001 01 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : george weissman 05 / 03 / 2001 11 : 01 am\nto : karl stewart / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , donna consemiu / hou / ect @ ect , melissa graves / hou / ect , cynthia hakemack / hou / ect @ ect\nsubject : gulf coast pipeline company\ndyersdale area , harris co . , tx\nmeters 4555 , 6677 , 9618 & 9889\nkarl , please activate meter 098 - 9889 so that bob can attach deal 752482 to it . george 713 . 571 . 3159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 03 / 2001 10 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : george weissman 05 / 02 / 2001 04 : 32 pm\nto : robert cotten / hou / ect @ ect\ncc : mike morris / corp / enron @ enron , melissa graves / hou / ect , cynthia hakemack / hou / ect @ ect\nsubject : gulf coast pipeline company\ndyersdale area , harris co . , tx\nmeters 4555 , 6677 , 9618 the rate for 9889 was agreed to by the parties for may only . please make sure that the proper transport rate is attached to each sitara deal as follows :\nmeter 6677 sitara 166026 lynx energy company , inc . $ 0 . 20 for march , $ 0 . 65 for april and may\nmeter 4555 sitara 139067 danex energy company $ 0 . 65 for may\nmeter 9618 sitara 138233 gulf coast pipeline company $ 0 . 65 for may\nmeter 9889 sitara 752482 d & p operating company $ 0 . 65 for may\nthe 6 / 1 / 96 gas gathering agreement has been terminated effective 5 / 31 / 01 and will be replaced by an agreement dated 6 / 1 / 01 between gulf coast pipeline partners , l . p . and houston pipe line company .\ngeorge 713 . 571 . 3159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 02 / 2001 02 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael w morris\n05 / 02 / 2001 02 : 14 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : transport rates on gulf coast pipeline partners\ngeorge ,\ni informed you incorrectley on the transport rates on gulf coast for march , april , & may .\nthis is how it should be :\nmeter 6677\nmarch rate $ . 20\napril rate $ . 65\nmay rate $ . 65\nmeter 4555\nmay rate $ . 65\nmeter 9618\nmay rate $ . 65\nwe need to amend the current gulf coast contract to reflect these changes . i told tom cones\nwe would have this amendment to him the first of next week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.781+0000", "entityId": 4675, "properties": {"text": "Subject: suemar berryman well\nthe inlet to the gulf plains plant is undernom ' d , and i see that they berryman well , meter 989766 , ticket 470753 , is flowing about 25 , 500 dth / day . currently , we have scheduled 20 , 046 . we may need to bump it up .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.785+0000", "entityId": 4676, "properties": {"text": "Subject: fw : update - maintanence on hpl @ three rivers\nlooks like the outage scheduled is postponed .\n- - - - - original message - - - - -\nfrom : \" valentin zapata \" @ enron [ mailto : imceanotes - + 22 valentin + 20 zapata + 22 + 20 + 3 cvzapata + 40 duke - energy + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : friday , may 04 , 2001 1 : 45 pm\nto : kemp , juliann\nsubject : maintanence on hpl @ three rivers\njulie this worked has been postponed to a later date , until further notice ,\nmaybe next month . sorry for the inconvience , please pass on to you gas\ncontrol . thanks , any questions please call me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.790+0000", "entityId": 4677, "properties": {"text": "Subject: hpl nom . for may 5 - 7 , 2001\n( see attached file : hplno 505 . xls )\n- hplno 505 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.794+0000", "entityId": 4678, "properties": {"text": "Subject: re : gulf coast pipeline company dyersdale area , harris co . , tx\nmeters 4555 , 6677 , 9618 & 9889\ngeorge ,\ndeal # 752482 has been edited to reflect hpl meter # 9889 . initially , the deal was created with the location of gulf coast pipeline company .\nbob\nenron north america corp . from : george weissman 05 / 03 / 2001 11 : 01 am\nto : karl stewart / hou / ect @ ect\ncc : robert cotten / hou / ect @ ect , donna consemiu / hou / ect @ ect , melissa graves / hou / ect , cynthia hakemack / hou / ect @ ect\nsubject : gulf coast pipeline company\ndyersdale area , harris co . , tx\nmeters 4555 , 6677 , 9618 & 9889\nkarl , please activate meter 098 - 9889 so that bob can attach deal 752482 to it . george 713 . 571 . 3159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 03 / 2001 10 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : george weissman 05 / 02 / 2001 04 : 32 pm\nto : robert cotten / hou / ect @ ect\ncc : mike morris / corp / enron @ enron , melissa graves / hou / ect , cynthia hakemack / hou / ect @ ect\nsubject : gulf coast pipeline company\ndyersdale area , harris co . , tx\nmeters 4555 , 6677 , 9618 the rate for 9889 was agreed to by the parties for may only . please make sure that the proper transport rate is attached to each sitara deal as follows :\nmeter 6677 sitara 166026 lynx energy company , inc . $ 0 . 20 for march , $ 0 . 65 for april and may\nmeter 4555 sitara 139067 danex energy company $ 0 . 65 for may\nmeter 9618 sitara 138233 gulf coast pipeline company $ 0 . 65 for may\nmeter 9889 sitara 752482 d & p operating company $ 0 . 65 for may\nthe 6 / 1 / 96 gas gathering agreement has been terminated effective 5 / 31 / 01 and will be replaced by an agreement dated 6 / 1 / 01 between gulf coast pipeline partners , l . p . and houston pipe line company .\ngeorge 713 . 571 . 3159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 02 / 2001 02 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael w morris\n05 / 02 / 2001 02 : 14 pm\nto : george weissman / hou / ect @ ect\ncc :\nsubject : transport rates on gulf coast pipeline partners\ngeorge ,\ni informed you incorrectley on the transport rates on gulf coast for march , april , & may .\nthis is how it should be :\nmeter 6677\nmarch rate $ . 20\napril rate $ . 65\nmay rate $ . 65\nmeter 4555\nmay rate $ . 65\nmeter 9618\nmay rate $ . 65\nwe need to amend the current gulf coast contract to reflect these changes . i told tom cones\nwe would have this amendment to him the first of next week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.801+0000", "entityId": 4679, "properties": {"text": "Subject: planned deliveries for phase ii pigging\ngentlemen :\nplease review and let me know if you have any questions .\nfor scheduling purposes , we will show a receipt from hpl ( transportation\nagreement # 4047 ) at agua dulce of 45 , 000 , with deliveries to :\nair products - la porte 5 , 000\noxy battleground 10 , 000\nrohm & haas dp 20 , 000\ndupont dp 10 , 000\ndwight : you will need to coordinate these flow changes with the facilities .\nthanks ,\n>\nthis email and any files transmitted with it from the elpaso\ncorporation are confidential and intended solely for the\nuse of the individual or entity to whom they are addressed .\nif you have received this email in error please notify the\nsender .\n- smartpigging ( 812 - lomax ) market takes plan final . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.805+0000", "entityId": 4680, "properties": {"text": "Subject: s 709101 - 04 / 03 / 01\ndaren , bp invoiced hpl at $ 4 . 955 for the deal below , and sitara shows $ 4 . 95 . can you please verify the pricing ? thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.811+0000", "entityId": 4681, "properties": {"text": "Subject: 1601\ndaren , i need deal ticket 745546 extended on both ends . 4 / 23 for flow of 35 and 5 / 1 / for flow of 132 . this will help clear up some allocation exceptions . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.819+0000", "entityId": 4682, "properties": {"text": "Subject: tenaska\ndarren ,\nattached is the last draft of the agreement i distributed months ago with no response - - let me know what the hold up is if you know - - i corresponded originally with rick hill but never heard - - is he still involved ?\nsandi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.825+0000", "entityId": 4683, "properties": {"text": "Subject: hpl nom for may 8 , 2001\n( see attached file : hplno 508 . xls )\n- hplno 508 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.831+0000", "entityId": 4684, "properties": {"text": "Subject: wellhead adjustments - may , 2001\ndaren ,\nplease see attached file .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.837+0000", "entityId": 4685, "properties": {"text": "Subject: clickathome portal is here !\nversion 2 . 0 of the clickathome portal is now available !\nlog into www . clickathome . net now , from work or home !\naccess the pep system through the portal !\nchoose your reviewers and fill out your evaluations in the comfort and privacy of your home !\noutlook web access and ehronline will be available soon !\nthe clickathome portal is fully customizable for you !\nyou choose the content on each page , as well as the look and feel !\nnote : the clickathome portal must be launched through an internet explorer browser , 5 . 0 or higher .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.842+0000", "entityId": 4686, "properties": {"text": "Subject: chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ndarren -\nplease advise on the 04 / 01 price for sales deal # sa 413462 on this buyback ( swing deal ) . the contract shows the price for 04 / 01 should be the same price as shown for 03 / 01 & 05 / 01 ( i . e . 04 / 01 price for deal # sa 413462 should be : 10 , 000 @ hsc _ flw + 1 high gdp d . a . & 11 , 000 @ hsc _ flw + 2 high gdp da ) .\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.847+0000", "entityId": 4687, "properties": {"text": "Subject: tenaska marketing ventures - 04 / 01 prod\nsale\ndeal # 714540\ndaren -\nlooks like the meter statement is showing some gas was pulled on days april 04 & 07 that was not priced or pathed .\nplease let me know what price tenaska should be billed for these two days .\nthanks - katherine\n5 - 8643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.853+0000", "entityId": 4688, "properties": {"text": "Subject: daren ,\nequistar will be bringing the syngas plant back up effective may 10 . while the plant has been down , enron has been buying the gas back at hsc - $ . 02 . their load will come back up on the 10 th and the price will be the fixed price on the deal of $ 5 . 75 .\ni appreciate your help on this . please let me know if there are any questions .\ncraig", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.857+0000", "entityId": 4689, "properties": {"text": "Subject: re : 1601\nyes , that sounds great ! !\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , may 07 , 2001 4 : 46 pm\nto : wallis , janet h .\nsubject : fw : 1601\njw ,\nshould i roll the flow to southern union at lockhart at hsc gd + . 02 for the days listed below ?\nd\n- - - - - original message - - - - -\nfrom : acton , tom\nsent : monday , may 07 , 2001 11 : 15 am\nto : farmer , daren j .\nsubject : 1601\ndaren , i need deal ticket 745546 extended on both ends . 4 / 23 for flow of 35 and 5 / 1 / for flow of 132 . this will help clear up some allocation exceptions . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.863+0000", "entityId": 4690, "properties": {"text": "Subject: eastrans nomination change effective 5 / 9 / 01\nplease increase deliveries into eastrans from hpl to 20 , 000 mmbtu / dy\neffective 5 / 9 / 01 .\nthe redeliveries will be 17 , 000 mmbtu / dy from fuels cotton valley and 3 , 000\nmmbtu / dy into pg & e at carthage tailgate .\nalso note : on 5 / 9 / 01 , actual deliveries from fuels cotton valley into hpl\nwill be larger than the nomination of 17 , 000 mmbtu / dy . this is occuring\nbecause the other outlet from fuels cotton valley is down for maintenance .\non 5 / 10 / 01 , actual deliveries will be less than the nomination of 17 , 000\nmmbtu / dy in order to balance the nomination versus deliveries from 5 / 9 / 01 .\nno over - delivery or under - delivery charges per the transaction agreement\nwill apply during this two - day period .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.868+0000", "entityId": 4691, "properties": {"text": "Subject: revised - april tenaska sheet\nmegan / james - -\nhere is a revised copy of the tenaska business for april ( per megan ' s eagle eye ) . . . . . sorry for the inconvenience .\nand don ' t forget to back out 20 . 000 less fuel to get the total delivered on the transports . . . . . . . the 20 . 000 comes from\nthe last 4 days of the month at meterl 7 - 4335 - 00 and is payback by williams . . . . it is not figured in , because there noms are kept whole in this\nworksheet .\nthanks ,\nmark\nx 33396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.872+0000", "entityId": 4692, "properties": {"text": "Subject: tenaska iv 4 / 01\ndaren :\nwe need to add the sale demand fee to deal 384258 for tenaska iv for april 2001 . the spreadsheet i have from mark shows $ 2 , 979 , 909 . 91 . we already have the agency fee on deal 514353 . just let me know when it ' s in .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.877+0000", "entityId": 4693, "properties": {"text": "Subject: hpl nom for may 9 , 2001\n( see attached file : hplno 509 . xls )\n- hplno 509 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.882+0000", "entityId": 4694, "properties": {"text": "Subject: re : noms / actual for may 8 th\nwe agree\n\" eileen ponton \" on 05 / 08 / 2001 10 : 49 : 40 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / texas utilities @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com\ncc :\nsubject : noms / actual for may 8 th\nnom mcf mmbtu\n30 , 000 29 , 939 30 , 748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.887+0000", "entityId": 4695, "properties": {"text": "Subject: revised wellhead adjustments - may , 2001\ndaren ,\nplease see the attached spreadsheet for the changes you requested . kcs at meter # 9658 is a stand - alone purchase . the buy / sell with kcs are meters # 9797 and 3543 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.892+0000", "entityId": 4696, "properties": {"text": "Subject: wellhead volumes adjusted - may , 2001\nthe wellhead volumes have been adjusted to the avg . column on the attached spreadsheet effective 5 / 8 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.896+0000", "entityId": 4697, "properties": {"text": "Subject: out of the office\ni will be on vacation from thursday 5 / 10 thru wednesday 5 / 16 . tom acton will be my back up 713 - 571 - 3256 , pager 713 - 707 - 3527 and bob cotten will do the nngb ( black marlin ) and help tom . bob ' s nmbers are 713 - 571 - 3255 , pager 1 - 888 - 813 - 0047 . i will have a pi ? a colada in your name .\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.901+0000", "entityId": 4698, "properties": {"text": "Subject: panenergy 4 / 01\ndaren :\ndid we exchange with panenergy in april ? if we did , can you send me your nom sheet ? meter 7052 - castle busby looks different this month . elsa did some deals with highland energy at 7052 . we normally buy all of the gas from duke at this meter when we exchange . there also wasn ' t flow every day , so duke ' s volume is very small .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.906+0000", "entityId": 4699, "properties": {"text": "Subject: addition to our family\njennifer & i are happy to announce the birth of makenzi reigh glover . she was born on may 1 , 2001 at 2 : 12 am . she weighed in at 7 pounds 11 ounces & was 19 . 75 inches long . mother & baby are doing just fine . i will send out pictures later but until that time you can see her at www . phscare . org . click on new arrivals . the password is 63848 and she was born at presbyterian hospital of dallas . talk to ya ' ll soon .\nrusty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.911+0000", "entityId": 4700, "properties": {"text": "Subject: hpl nom for may 10 , 2001\n( see attached file : hplno 510 . xls )\n- hplno 510 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.921+0000", "entityId": 4701, "properties": {"text": "Subject: new carthage phys product for eol\nhey rob ,\nthe texas desk needs to create a new product that is similar to the exxon katy phys product . the product will be identical to the exxon katy product except for the location .\nthis product should be \" for delivery at the tailgate of the carthage hub \" .\nplease call with questions .\nthanks ,\neric\nx 3 - 0977", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.927+0000", "entityId": 4702, "properties": {"text": "Subject: re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ni will forward e - mail lee p . sent to julie ( who forwarded to me ) . after you read through it , please get back with me . need to get invoice and supply ( net out ) out today !\nthanks !\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : tuesday , may 08 , 2001 4 : 13 pm\nto : ray , tess\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ntess ,\ni have changed sitara to agree with the contract . this was changed during flash to get around some pricing errors .\nd\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : monday , may 07 , 2001 2 : 58 pm\nto : farmer , daren j .\ncc : meyers , julie\nsubject : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nimportance : high\ndarren -\nplease advise on the 04 / 01 price for sales deal # sa 413462 on this buyback ( swing deal ) . the contract shows the price for 04 / 01 should be the same price as shown for 03 / 01 & 05 / 01 ( i . e . 04 / 01 price for deal # sa 413462 should be : 10 , 000 @ hsc _ flw + 1 high gdp d . a . & 11 , 000 @ hsc _ flw + 2 high gdp da ) .\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.932+0000", "entityId": 4703, "properties": {"text": "Subject: fw : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ndaren -\nper your e - mail to re : your changing price for pricing errors , as promised , please see lee p . ' s response below .\nthanks !\ntess\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : tuesday , may 08 , 2001 11 : 35 am\nto : meyers , julie\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nimportance : high\njulie -\n04 / 01 price in sitara for deal 413462 shows hsc gdp da for both tiers . who should i contact to get price corrected to :\n10 , 000 / d hsc _ flw + 1 high gdp da\n11 , 000 / d hsc _ flw + 2 high gdp da\n( i . e same as pre and post 04 / 01 prices shown for this deal in sitara )\nthanks ,\ntess\n- - - - - original message - - - - -\nfrom : meyers , julie\nsent : tuesday , may 08 , 2001 11 : 01 am\nto : ray , tess\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 05 / 08 / 2001 10 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 05 / 07 / 2001 04 : 54 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback ) >\nsa 413462 is not the buyback , it ' s the swing . . .\nthe first 10 , 000 / d under sa 413462 should be hsc _ flw + 1 high gdp d . a .\nanything over 10 , 000 / d should be hsc _ flw + 2 high gdp da\nthis is for all months from octo 0 to sepol\njulie meyers\n05 / 07 / 2001 04 : 43 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nwhat do you think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 05 / 07 / 2001 04 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tess ray / enron @ enronxgate on 05 / 07 / 2001 02 : 58 pm\nto : daren j farmer / enron @ enronxgate\ncc : julie meyers / hou / ect @ ect\nsubject : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ndarren -\nplease advise on the 04 / 01 price for sales deal # sa 413462 on this buyback ( swing deal ) . the contract shows the price for 04 / 01 should be the same price as shown for 03 / 01 & 05 / 01 ( i . e . 04 / 01 price for deal # sa 413462 should be : 10 , 000 @ hsc _ flw + 1 high gdp d . a . & 11 , 000 @ hsc _ flw + 2 high gdp da ) .\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.937+0000", "entityId": 4704, "properties": {"text": "Subject: fw : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ndaren & julie :\nplease disregard previous e - mails . i see that price is corrected in sitara ! thanks to both of you for all of your assistance !\ntess\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : wednesday , may 09 , 2001 6 : 57 am\nto : meyers , julie\nsubject : fw : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nimportance : high\njulie -\nsee daren ' s reply below and advise .\nthanks !\ntess\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : wednesday , may 09 , 2001 6 : 55 am\nto : farmer , daren j .\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nimportance : high\ni will forward e - mail lee p . sent to julie ( who forwarded to me ) . after you read through it , please get back with me . need to get invoice and supply ( net out ) out today !\nthanks !\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : tuesday , may 08 , 2001 4 : 13 pm\nto : ray , tess\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ntess ,\ni have changed sitara to agree with the contract . this was changed during flash to get around some pricing errors .\nd\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : monday , may 07 , 2001 2 : 58 pm\nto : farmer , daren j .\ncc : meyers , julie\nsubject : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nimportance : high\ndarren -\nplease advise on the 04 / 01 price for sales deal # sa 413462 on this buyback ( swing deal ) . the contract shows the price for 04 / 01 should be the same price as shown for 03 / 01 & 05 / 01 ( i . e . 04 / 01 price for deal # sa 413462 should be : 10 , 000 @ hsc _ flw + 1 high gdp d . a . & 11 , 000 @ hsc _ flw + 2 high gdp da ) .\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.942+0000", "entityId": 4705, "properties": {"text": "Subject: price for crosstex\nwhat do you think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 05 / 10 / 2001 09 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharlene richmond\n05 / 09 / 2001 04 : 37 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : price for crosstex\njulie , crosstex said that they were paid incorrectly on deal 681360 for the days of 3 / 24 thru 3 / 26 / 2001 .\nwe paid them $ 4 . 18 and they said that their price should be $ 5 . 18 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.947+0000", "entityId": 4706, "properties": {"text": "Subject: pictures !\npictures of daddy ' s little girl ! guess which one i like the best !\n> > > > > >\n- dsco 0051 . jpg\n- dsco 0046 . jpg\n- dsco 0045 . jpg\n- dsco 0042 . jpg\n- dsco 0049 . jpg\n- dsco 0043 . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.952+0000", "entityId": 4707, "properties": {"text": "Subject: life in general\ngood god - - - - where do you find time for all of that . you should write a book when the kids go off to college . by then you should have many many stories .\nby the way what is your new address ? i may want to come by some evening with a lawn chair and a 6 pack . watching you work sounds better than anything on tv .\nyou will make a good trader . good relationships and flexible pricing are all you need . oh , and a few zillion other intangibles you will run into . it beats the hell out of most other things though .\ni ' ll let you be for now , but do keep those stories coming - - - - we love them .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.957+0000", "entityId": 4708, "properties": {"text": "Subject: hpl nom for may 11 , 2001\n( see attached file : hplno 511 . xls )\n- hplno 511 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.961+0000", "entityId": 4709, "properties": {"text": "Subject: intra / inter gisb\nkeith - would you please forward an intra / inter gisb to enron -\ndfarmer @ enron . com\nif they are interested - please have them forward their pertinent information .\nthanks\nlynn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.966+0000", "entityId": 4710, "properties": {"text": "Subject: calpine for 5 / 12 thru 5 / 14 ( 1465 )\nricky sent me the nom early - 87 , 000 for the weekend .\nmy new number 713 - 571 - 3258\nthanks - julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.971+0000", "entityId": 4711, "properties": {"text": "Subject: hpl nom for may 12 - 14 , 2001\n( see attached file : hplno 512 . xls )\n- hplno 512 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.976+0000", "entityId": 4712, "properties": {"text": "Subject: shoreline gas , inc . shoreline buhler central point ( meter 098 - 9860 )\nbob , shoreline has requested that hpl change the current nomination at meter 098 - 9860 from 2 , 473 mmbtu / d to 4 , 150 mmbtu / d effective 5 / 12 / 2001 ; the sitara deal is 453067 .\ngeorge x 3159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 11 / 2001 04 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndonna consemiu\n09 / 29 / 2000 01 : 27 pm\nto : molly l carriere / hou / ect @ ect , clem cernosek / hou / ect @ ect , gary a hanks / hou / ect @ ect , james mckay / hou / ect @ ect , michael w morris / hou / ect @ ect , jack simunek / hou / ect @ ect , chris sonneborn / hou / ect @ ect , david stadnick / hou / ect @ ect , steve van hooser / hou / ect @ ect , esther buckley / hou / ect @ ect , donna consemiu / hou / ect @ ect , nathan l hlavaty / hou / ect @ ect , steve hpl schneider / hou / ect @ ect , nagesh kavi / hou / ect @ ect , melissa graves / hou / ect @ ect , mary m smith / hou / ect @ ect , jackie young / hou / ect @ ect , vance l taylor / hou / ect @ ect , fred boas / hou / ect @ ect , j r fosdick / gco / enron @ enron , vicente sarmiento / gco / enron @ enron , reid hansen / gco / enron @ enron , cheryl jones / gpgfin / enron @ enron , gary anderson / gpgfin / enron @ enron , jackie morgan / hou / ect @ ect , amelia alland / hou / ect @ ect , george weissman / hou / ect @ ect , susan smith / hou / ect @ ect , donald p reinhardt / hou / ect @ ect , pat clynes / corp / enron @ enron , cheryl dudley / hou / ect @ ect , shawna flynn / hou / ect @ ect , audrey o ' neil / hou / ect @ ect , michael eiben / hou / ect @ ect , anita luong / hou / ect @ ect , jennifer d pattison / hou / ect @ ect , howard b camp / hou / ect @ ect , robert cotten / hou / ect @ ect , sabrae zajac / hou / ect @ ect , earl tisdale / hou / ect @ ect , cathy l harris / hou / ect @ ect\ncc :\nsubject : revision : new hpl meter - hollimon central point ( meter 098 - 9860 )\nrevision : name change\nthe name has been changed to : shoreline buhler central point to match the work order .\ndonna consemiu\n09 / 29 / 2000 08 : 09 am\nto :\ncc :\nsubject : new hpl meter - hollimon central point ( meter 098 - 9860 )\nfyi\nthe below houston pipe line meter has been set up in global facilities .\nmeter : 098 - 9860\nfacility number : 515228\nname : hollimon central point\ntype : producer connection\nsystem : 550 - victoria - texas city junction mainline\nrate zone : 23 ( tom o ' conner )\ntrade zone : 5 ( edna )\nflow direction : receipt\ndrn : 286538\nlateral :\nwork order # :\nplease call me at ext . 3 - 3446 if you have any questions .\ndonna\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.981+0000", "entityId": 4713, "properties": {"text": "Subject: re : may 2001 nomination\nthe attachment provides details for an amended total wellhead nomination for may 2001 of 693 , 465 mmbtu / d . changes from the nomination of 695 , 059 mmbtu / d submitted to you on 4 / 24 / 2001 are noted in red and in column k .\nwe note that there are still approximately 22 meters which had actual flow in march but did not appear on the facilitation by location report for may . similarly , there are still approximately 20 meters which had no actual flow in march but did appear on the facilitation by location report for may . we intend to review and cleanup these issues before submitting the june nomination .\ngeorge 713 . 571 . 3159\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 11 / 2001 07 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : george weissman 04 / 24 / 2001 12 : 06 pm\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect , brian m riley / hou / ect @ ect , melissa graves / hou / ect\nsubject : re : may 2001 nomination\nthe attachment provides details for a total wellhead nomination for may 2001 of 695 , 059 mmbtu / d . george .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 04 / 24 / 2001 11 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : robert cotten 04 / 24 / 2001 10 : 12 am\nto : george weissman / hou / ect @ ect\ncc : vance l taylor / hou / ect , daren j farmer / hou / ect , melissa graves / hou / ect , edward terry / hou / ect @ ect\nsubject : re : may 2001 nomination\ngeorge ,\nthe following are my answers to your questions :\n1 . no .\n2 . the nomination is at the pay meter 9862 .\n3 . in the past , this purchase has not been listed on the spreadsheet . it has been maintained by the risk group .\n4 . as of 4 / 24 / 01 , comstock ' s nomination is 43 , 681 and kerr mcgee ' s is 29 , 037 .\n5 . this purchase is not listed on the spreadsheet . it is maintained separately on a file by daren . to the best of my knowledge it is a good wellhead purchase .\nbob\nenron north america corp . from : george weissman 04 / 24 / 2001 08 : 03 am\nto : robert cotten / hou / ect @ ect\ncc : vance l taylor / hou / ect , daren j farmer / hou / ect , melissa graves / hou / ect\nsubject : may 2001 nomination\nbob ,\nquestions based on the information in the facilitation by location report :\n1 . meter 9643 hgpl / hpl - stratton , tejones operating corporation , sitara 266970 : should this purchase be at meter 9638 , freeman prod - maxine field in trade zone 18 ?\n2 . i presume we are not counting both meter 9848 north padre island blk 8 and meter 9862 lehman / spinnaker onshore . isn ' t this the same gas ?\n3 . meter 3536 seahawk / a - s ( mat plt 520 ) , eog resources , sitara 725391 : is this purchase properly in the wellhead book ?\n4 . meter 6884 pgtt junction 16 \" lease , comstock oil & gas , inc . and kerr - mcgee oil & gas onshore l . p . , sitara 125899 and 132975 : comstock ' s volume should exceed kerr - mcgee ' s volume , and together the two volumes should be approximately 73 , 000 / d . currently , comstock ' s volume is only 8 , 600 / d and kerr - mcgee ' s volume is 25 , 000 / d . we look about 38 , 000 / d short .\n5 . meter 639 hannah nash , coral energy resources , l . p . , sitara 659998 : is this purchase properly in the wellhead book ?\ni ' m looking at about 10 other old deals that i think should be in for may , but aren ' t . in addition , i ' m adding in the new deals that will flow in may . i ' ll be done by noon .\ngeorge\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.986+0000", "entityId": 4714, "properties": {"text": "Subject: hub park and lend agreement\ndaren ,\nwe are not receiving timely information from the hub regarding our park and lend agreement . i have not received an update since tues or wed of last week . mike has been phoning them furiously for information and has been told that they don ' t have it , or it will be ready later . per gisb , final scheduled numbers on epng , nng , and tw are reported at 9 : 00 am the following day ( ie . sunday final will be out at 9 am on mon . ) . prior to the transition from pg & e , we received our balance by 9 : 15 or 9 : 30 am . i realize that the transition has been difficult , they are never a cake walk , however , this type of information is crucial . further , they have not provided any final numbers for the month of april , we should at least be able to receive a \" best available \" number , and the interstate pipes , due to gisb , have final scheduled numbers available on the first of the month . i submit that ena should not be held liable for payment of the $ 0 . 03 / day rate , as we have not received the information we need to balance the agreement . if epgt plans to administer fees , then balance information should be communicated on a timely basis . we may want to check the terms of the agreement , and / or negotiate a reduced rate for the month of may .\nthank you ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.992+0000", "entityId": 4715, "properties": {"text": "Subject: fw : thought this was important\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nstart your own free email list at http : / / www . listbot . com / links / joinlb\n- - - - - original message - - - - -\nfrom : cammy guggis [ mailto : cguggis @ alvin . cc . tx . us ]\nsent : monday , may 14 , 2001 11 : 59 am\nto : janet berry ; gfwa @ chevron . com ; 5 moore @ family . net ; acoc @ iwl . net ;\nmscraig @ ix . netcom . com ; ldouglas @ rendamarine . com ;\nnnherrin @ simba . nat . kl 2 . la . us\nsubject : fwd : thought this was important\nsubject : please read , sign , and pass on .\nthough she ' s dead and has just been located , after 5 years , this lady\ncontinues to haunt us from her shallow grave .\nget this :\ncbs will be forced to discontinue \" touched by an angel \" for using the word\ngod in every program . madeline murray o ' hare , an atheist , successfully\nmanaged to eliminate the use of bible reading from public schools a few\nyears ago . now her organization has been granted a federal hearing on the\nsame subject by the federal communications commission ( fcc ) in washington ,\ndc . their petition , number 2493 , would ultimately pave the way to stop the\nreading of the gospel our lord and savior , and the airwaves of america .\nthey got 287 , 000 signatures to back their stand ! if this attempt is\nsuccessful , all sunday worship services being broadcast on the radio or by\ntelevision will be stopped . this group is also campaigning to remove all\nchristmas programs and christmas carols from public schools ! ! you as a\nchristian can help !\nwe are praying for at least 1 million signatures . this would defeat their\neffort and how that there are many christians alive , well and concerned\nabout our country . as christians we must unite on this .\nplease don ' t take this lightly . we ignored this lady once and lost prayer in\nour school and in offices across the nation .\nplease stand up for your religious freedom and let your voice be heard .\ntogether we\ncan make a difference in our country while creating an opportunity\nfor the lost to know the lord .\nplease press \" forward \" , clean up the message , and forward this to everyone\nthat you think should read this .\nnow , please sign your name at the bottom ( you can only add your name after\nyou have pressed the \" forward \" ) .\ndon ' t delete any other names , just go to the next number and type your name .\nplease do not sign jointly , such as mr . & mrs . each person should sign\nhis / her own name .\nplease e - mail this to everyone that you think needs to read this , and help\nus defeat this organization and keep the right of our freedom of religion .\n> > > > > > >\n> > > > > > > when you get to 1000 please e mail back to\n> > > > > > > lisa norman at electric _ yello @ hotmail . com .\n> > > > > > >\n> > > > > > > 1 : courtney s . - please people sign this letter ! !\n> > > > > > > 2 : shelbi w .\n> > > > > > > 3 : brittany s .\n> > > > > > > 4 : lora j .\n> > > > > > > 5 : kim s .\n> > > > > > > 6 : adam p .\n> > > > > > > 7 : jana c .\n> > > > > > > 8 : terry williams - deer park , tx\n> > > > > > > 9 : megan c .\n> > > > > > > 10 : christy c .\n> > > > > > > 11 : andy crais\n> > > > > > > 12 : mollie rice - knoxville , tn\n> > > > > > > 13 : forrest s . - lexington , ky\n> > > > > > > 14 : cherie f . - lexington , ky\n> > > > > > > 15 : gerald goodlett ii - lexington , ky\n> > > > > > > 16 : amanda ferguson\n> > > > > > > 17 : valerie grimes - lexington , ky\n> > > > > > > 18 : erin mckenzie - lexington , ky\n> > > > > > > 19 : robert harrison - cincinnati ohio\n> > > > > > > 20 : barbara cronk - clearwater , fl\n> > > > > > > 21 : linda tilley - bemidji , minnesota\n> > > > > > > 22 : donald huntington - irvine , ca\n> > > > > > > 23 : mary stimpson - shoreview , mn\n> > > > > > > 24 : kevin gegner - redwood falls , mn .\n> > > > > > > 25 : marie alexander - canada\n> > > > > > > 26 : wes erhart - canada\n> > > > > > > 27 . wendy barbour - canada\n> > > > > > > 28 . craig h .\n> > > > > > > 29 . kathy h .\n> > > > > > > 30 . joan guthrie - canada\n> > > > > > > 31 . ron guthrie\n> > > > > > > 32 . benita s . - canada\n> > > > > > > 33 : hanny kensington - canada\n> > > > > > > 34 . b . brown - canada\n> > > > > > > 35 . bill olsen\n> > > > > > > 36 . gaydene olsen\n> > > > > > > 37 . jennifer visser\n> > > > > > > 38 . josh olsen\n> > > > > > > 39 . donna petch\n> > > > > > > 40 . andre lefebvre - canada\n> > > > > > > 41 . john hetherington - canada\n> > > > > > > 42 . gaetanne hetherington - canada\n> > > > > > > 43 . shanie melanson - canada\n> > > > > > > 44 . peter hill - canada\n> > > > > > > 45 . janet hill - canada\n> > > > > > > 47 . emma hill - canada\n> > > > > > > 48 . michael donley - canada\n> > > > > > > 49 . geogia gililand - canada\n> > > > > > > 50 . kevin wilnechenko - canada\n> > > > > > > 51 . ruth enns\n> > > > > > > 52 . allison kern - canada\n> > > > > > > 53 . anika deraad - canada\n> > > > > > > 54 . erik uunila - canada\n> > > > > > > 55 . krista uunila - canada\n> > > > > > > 56 . leila uunila - canada\n> > > > > > > 57 . rose uunila - canada\n> > > > > > > 58 . marilyn forbes - canada\n> > > > > > > 59 . colin evans - canada\n> > > > > > > 60 . angela c . - canada\n> > > > > > > 61 . kimberly mager - canada\n> > > > > > > 62 . kathryn ferrari - canada\n> > > > > > > 63 . janna smith - canada\n> > > > > > > 64 . shanna ridley - canada\n> > > > > > > 65 . thomas somerville - canada\n> > > > > > > 66 . lisa norman - canada\n> > > > > > > 67 . pat wright - canada\n> > > > > > > > 68 . john wright - canada\n> > > > > > > 69 . stuart hemmings\n> > > > > > > 70 . sandra hemmings\n> > > > > > > 71 . robert badham\n> > > > > > > 72 . june badham\n> > > > > > > 73 . vance taylor\n> > > > > > > 74 . pamela schwab - canada\n> > > > > > > 75 . ernest schwab - canada\n> > > > > > > 76 . carlene neeve - canada\n> > > > > > > 77 . gloria stewart\n> > > > > > > 78 . harold stewart\n> > > > > > > 79 . jackie cannon , princeton , ky\n> > > > > > > 80 . bro . gerald cannon , princeton , ky\n> > > > > > > 81 . kim brown\n> > > > > > > 82 . barry brown\n> > > > > > > 83 . ken scott\n> > > > > > > 84 . debby scott\n> > > > > > > 85 . haley scott\n> > > > > > > 86 . ryanne scott\n> > > > > > > 87 . laura clark , crofton , ky\n> > > > > > > 88 . kendal clark , crofton , ky\n> > > > > > > 89 . sherry kaye newton , hopkinsville , ky\n> > > > > > > 90 . jeff newton , hopkinsville , ky\n> > > > > > > 91 . matthew newton , hopkinsville , ky\n> > > > > > > 92 . caleb newton , hopkinsville , ky\n> > > > > > > 93 . joshua newton , hopkinsville , ky\n> > > > > > > 94 . lisa francis , crofton , ky\n> > > > > > > 95 . butch francis , crofton , ky\n> > > > > > > 96 . ivy francis , crofotn , ky\n> > > > > > > 97 . selena chamberlin , az\n> > > > > > > 98 . rose m . chamberlin\n> > > > > > > 99 . gabriel pullen tucson , arizona\n> > > > > > > 100 . steven bell tucson , arizona\n> > > > > > > 101 . gracie graves edmond , oklahoma\n> > > > > > > 102 . celeste graves provo , utah\n> > > > > > > 103 . deric weiss pleasant grove , utah\n> > > > > > > 104 . erika hernandez orem , utah\n> > > > > > > 105 . daren reavis provo , utah\n> > > > > > > 106 . christina baker , auburn , washington\n> > > > > > > 107 . mary christine baker , sumner wa\n> > > > > > > 108 . elna baker , sumner wa\n> > > > > > > 109 . gary baker , sumner wa\n> > > > > > > 110 . britain baker , sumner wa\n> > > > > > > 111 . julia baker , sumner wa\n> > > > > > > 112 . jill baker , sumner wa\n> > > > > > > 113 . carl d . hill sumner , wa\n> > > > > > > 114 . helen p . hill - sumner , wa\n> > > > > > > 115 . cecil g . jepson , mtlk terr . , wa\n> > > > > > > 116 . betty r . jepson , mtlk terr . , wa\n> > > > > > > 117 . penny jepson\n> > > > > > > 118 . leann riegel , univ . place , wa\n> > > > > > > 119 . heather e . ehli , puyallup , wa\n> > > > > > > 120 . heather l . conatser , puyallup , wa\n> > > > > > > 121 . sarah l . sturzen , graham , wa\n> > > > > > > 122 . briana b . holmes tacoma , wa\n> > > > > > > 123 . ashley nelson puyallup , wa\n> > > > > > > 124 . crissy bray , sumner , wa\n> > > > > > > 125 . andrew brady , sumner wa\n> > > > > > > 126 . elizabeth alarcon , glendale , az\n> > > > > > > 127 . gloria records tucson , az\n> > > > > > > 128 . stephen records tucson , az\n> > > > > > > 129 . dr . edward l . kemper , sacramento , ca\n> > > > > > > 130 . ronald dyck sacramento , ca\n> > > > > > > 131 . cathy dyck sacramento , ca\n> > > > > > > 132 . chrissy kay oregon\n> > > > > > > 133 . rhonda weaver , or\n> > > > > > > 134 . terry weaver , or\n> > > > > > > 135 . dave shank , or\n> > > > > > > 136 . carol shank , or\n> > > > > > > 137 . ben shank , or\n> > > > > > > 138 . tim shank , or\n> > > > > > > 139 . vonda bitikofer , or\n> > > > > > > 140 . marty chipman , wa\n> > > > > > > 141 . joan chipman , wa\n> > > > > > > 142 . ray chipmanm , wa\n> > > > > > > 143 . beverly wenge , wa .\n> > > > > > > 144 . donald wenge , wa .\n> > > > > > > 145 . vicki graf , ca\n> > > > > > > 146 . corrine bonsey , wa\n> > > > > > > 147 . ric bonsey , wa\n> > > > > > > 148 . dawn garruto , wa\n> > > > > > > 149 . chris garruto , wa\n> > > > > > > 150 . sandy barnes , florida\n> > > > > > > 151 . jay crutchfield , fl\n> > > > > > > 152 . lorie evans , fl\n> > > > > > > 153 . asa l . evans iii , fl\n> > > > > > > 154 . ashley woodard , fl\n> > > > > > > 155 . todd woodard , fl\n> > > > > > > 156 . maria roland , fl\n> > > > > > > 157 . william roland , fl\n> > > > > > > 158 . jeff bos , winter springs , florida\n> > > > > > > 159 . stacey bos , winter springs , florida\n> > > > > > > 160 . woody potter , las vegas , nv\n> > > > > > > 161 . d ' nee potter , las vegas , nv\n> > > > > > > 162 . marshia popplewell , denison , tx .\n> > > > > > > 163 . jerry johnson , denison , tx .\n> > > > > > > 164 . rosella elifrits , sunrise beach , mo\n> > > > > > > 165 . miranda elifrits , sunrise beach , mo\n> > > > > > > 166 . pete elifrits , sunrise beach mo\n> > > > > > > 167 . gary elifrits , st . joseph , mo\n> > > > > > > 168 . brenda elifrits , st . joseph , mo\n> > > > > > > 169 . martha ann dwyer , kansas city , mo\n> > > > > > > 170 . edith mchugh , kansas city , mo\n> > > > > > > 171 . pamela knudson , kansas city , mo\n> > > > > > > 172 . robert knudson , kansas city , mo\n> > > > > > > 173 . jennifer cole , higginsville , mo\n> > > > > > > 174 . ryan cole , higginsville , mo\n> > > > > > > 175 . kim levy , blue springs , mo\n> > > > > > > 176 . james levy , blue springs , mo\n> > > > > > > 177 . debbie tuter , lee ' s summit mo\n> > > > > > > 178 . barb johnson , overland park , ks\n> > > > > > > 179 . linda gray , st . charles , ia\n> > > > > > > 180 . rich gray , st . charles , ia\n> > > > > > > 181 . brian gray , st . charles , ia\n> > > > > > > 182 . teri mash , waukee , ia\n> > > > > > > 183 . thomas mash , waukee , ia\n> > > > > > > 184 . colleen mcclaflin , des moines , ia\n> > > > > > > 185 . james mcclaflin , des moines , ia\n> > > > > > > 186 . kim sanford , des moines , ia\n> > > > > > > 187 . peg herman , truro , ia\n> > > > > > > 188 . jim herman , truro , ia\n> > > > > > > 189 . don brichacek , truro , ia .\n> > > > > > > 190 . phyllis brichacek , truro , ia .\n> > > > > > > 200 . deedee buchanan ' truro ' ia\n> > > > > > > 201 . tonia rouse , blue hill ne\n> > > > > > > 202 . nancy b . johnson , havelock , ia\n> > > > > > > 203 . gennifer l . scott , emmetsburg , ia\n> > > > > > > 204 . michael j . scott , emmetsburg , ia .\n> > > > > > > 205 . rick nielsen , emmetsburg , ia\n> > > > > > > 206 . rachel krull , emmetsburg , ia\n> > > > > > > 207 . allison reneau , sioux fall , sd\n> > > > > > > 208 . tom reneau , sioux falls , sd\n> > > > > > > 209 . kim brusati , sioux falls , sd\n> > > > > > > 210 . derrick hilbrands , sioux falls , sd\n> > > > > > > 211 . april sadler , sioux falls , sd\n> > > > > > > 212 . doug sadler , sioux falls , sd\n> > > > > > > 213 . alvina borchers , sioux falls , sd\n> > > > > > > 214 . henrietta kay myers , sioux falls , sd\n> > > > > > > 215 . sharon baer middlebury , in\n> > > > > > > 216 . ed baer middlebury , in\n> > > > > > > 217 ted wrench coventryville , ny\n> > > > > > > 218 . brenda wrench coventryville ny\n> > > > > > > 219 . jevene davis , forest , va\n> > > > > > > 220 . lee baer , virginia beach , va\n> > > > > > > 221 . filomena baer , virginia beach , va\n> > > > > > > 222 . vaughan davis , forest , va\n> > > > > > > 223 . angela r . , gretna , va\n> > > > > > > 224 . steven r . , gretna , va\n> > > > > > > 225 . ian r . , gretna , va\n> > > > > > > 226 . diane w . wallace , raleigh , nc\n> > > > > > > 227 . gary r . wallace , raleigh , nc\n> > > > > > > 228 . ann thiani , raleigh , nc\n> > > > > > > 229 . joseph thiani , raleigh , nc\n> > > > > > > 230 . sarah thiani , cary , nc\n> > > > > > > 231 . coit ray , raleigh , nc\n> > > > > > > 232 . helen ray , raleigh , nc\n> > > > > > > 233 . renee martin , raleigh , nc\n> > > > > > > 234 . douglas martin , raleigh , nc\n> > > > > > > 235 . david martin , r\n> > > > > > > 236 . gracie s . senter\n> > > > > > > 237 . guy h . senter\n> > > > > > > 238 . thomas c . senter\n> > > > > > > 239 . patti armiger\n> > > > > > > 240 . janet armiger\n> > > > > > > 241 . guy armiger\n> > > > > > > 242 . paul f . clarkston , wa\n> > > > > > > 243 . guylene f . clarkston , wa\n> > > > > > > 244 . connie l . ayers , alabama\n> > > > > > > 245 . missy harris , al\n> > > > > > > 246 . dan davis , al\n> > > > > > > 247 . carol davis , al\n> > > > > > > 248 . d . lee davis , a\n> > > > > > > 249 . w . parker , ms\n> > > > > > > 250 . s . warwick , ms\n> > > > > > > 251 . sandra brown , fl\n> > > > > > > 252 . michael allen\n> > > > > > > 253 . carl brown jackson ms\n> > > > 254 . marilynn jackson , ms\n> > > > 255 . mary davis jackson , ms\n> > > > 256 . sarah may - monticello , ms\n> > > > 257 . charles belton - monticel\n> > > > 258 . kay jolly - ms\n> > > > 259 . carrie greene - ms\n> > > > 260 . sandi benjamin - ms\n> > > > 261 . emily mccarty - ms\n> > > > 262 . dave lund , ks\n> > > > 263 . cindy tuley , ks\n> > > > 264 . charlie tuley , ks\n> > > > 265 . jamie tuley , ks\n> > > > 266 . shannon lund , ks\n> > > > 267 . brandi wegner , , ks\n> > > > 268 . jeannie jones , ks\n> > > > 269 . judy truelove , ks\n> > > > 270 . sara truelove , va\n> > > > 271 . lynn miller , nc\n> > > > 272 . carolyn barkocy\n> > > > 273 . joe barkocy\n> > > > 274 . susan reynolds barkocy , clemmons nc\n> > > > 275 . james dayton sisson , millington , tn\n> > > > 276 . robert w payton , mocksville , nc\n> > > > 277 . charles farmer , siloam springs , ar\n> > > > 278 . tiffany harrod , plano , tx\n> > > > 279 . karen ray , plano , tx\n> > > > 280 . julie mack , frisco , tx\n> > > > 281 . donna brower , lewisville , tx\n> > > > 282 . mary edwards , emory , tx .\n> > > > 283 . allen edwards , emory , tx .\n> > > > 284 . sharen edwards , garland , tx\n> > > > 285 . gary edwards , garland , tx\n> > > > 286 . g turner , kilgore , tx\n> > > > 287 . m turner , kilgore , texas\n> > > > 288 . staci holcomb , longview , texas\n> > > > 289 . destry holcomb , diana texas\n> > > > 290 . christy holcomb , diana texas\n> > > > 291 . riley holcomb , diana texas\n> > > > 292 . haley holcomb , diana texas\n> > > > 293 . morgan holcomb , longview texas\n> > > > 294 . ronnie harber , longview , texas\n> > > > 295 . anthony harber , longview , texas\n> > > > 296 . peggy brandon , longview , texas\n> > > > 297 . emmett capt , kilgore , texas\n> > 298 . david l . hinson ,\n> 299 don lee bossier city , la .\n> 300 john weaver houston , texas\n> 301 karen weaver houston , texas ? > > > > 302 elizabeth beasley , houston , texas ? > 303 mary beth breakey , houston , texas ? > 304 kathy greenwood ? > 305 dan greenwood ? 306 teresa cooke , pasadena , tx ? 307 rod cooke , pasadena , tx ? 308 cammy guggisberg , alvin , tx ? 309 mike guggisberg , alvin , tx ? ? ? _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ? to unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:24.997+0000", "entityId": 4716, "properties": {"text": "Subject: hpl nom for may 15 , 2001\n( see attached file : hplno 515 . xls )\n- hplno 515 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.002+0000", "entityId": 4717, "properties": {"text": "Subject: wellhead adjustments - may , 2001\ndaren ,\nplease see the attached spreadsheet .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.009+0000", "entityId": 4718, "properties": {"text": "Subject: opportunity on dow pipeline\ndarren , per our earlier conversation , here are the facts related to the opportunity to service a plant in the freeport area off of dow .\nthe potential customer ( don owen ) has supplied this plant for the past 15 years , buying supply from dow .\ndow does not want to be a supplier in the future , but of course , will transport .\ndow will quote only a 2 year transport ( $ 0 . 06 from katy to the plant ) , but the customer wants a minimum of 5 years .\nother bids he is getting at index + . 03 / . 04 less whatever transport .\nthe swing load is approx . 1300 - 1350 mmbtu / d , but fairly steady he says .\nlet me know if you have any interest or if i should pass this along to someone else . thanks .\nps the customer will give more info if we are interested , but wanted to see if we have interest first ( and also if we had long term capacity on dow )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.014+0000", "entityId": 4719, "properties": {"text": "Subject: lacy\nhey - - just thought i ' d let you know that lacy went to school this morning - pale & not feeling well - - stomach still hurts , but she went ahead . she ' s stressing me out big time . she acted like she couldn ' t hardly move , but i came back in the house & she was talking fine on the telephone . but i ask her questions about how she feels & she is just about dead . i don ' t know about her . but she looked pale . blood sugar was a little low this morning . i woke her up at 2 & had her check it & it was good . so i got a little more rest . i don ' t think she even woke up enough to remember it . i don ' t think the little job is good for her if she ' s gonna catch everything they have . she ' s so careless about washing hands after handling all those nasty little kids & then bites her nails . not good ! anyway , i ' m stressed big time over her & over her driving the car . and missing so much school . i wasn ' t going to take her to the dr . yesterday because she was better so i figured it was a virus , b !\nut she had to have a note from a doctor or she ' s gonna have to make up school on saturday & they ' ve threatened to fine me . so i had to pay $ 30 for them to tell me that she had a virus & missed a day of work . oh , well , life is fun . anyway , i need to quit gettin down over such trivial things cause there ' s so many with worse problems to face . i am thankful that the burdens are so light . but you can still pray for us . and encourage lacy to work at splash town ! ha !\nremind me to tell you about the terroristic threat at high school . another high stress time ! can ' t wait until this weekend to see all my cousins & ya ' ll . kiss my grandsons for me . love ya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.023+0000", "entityId": 4720, "properties": {"text": "Subject: hpl nom for may 16 , 2001\n( see attached file : hplno 516 . xls )\n- hplno 516 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.032+0000", "entityId": 4721, "properties": {"text": "Subject: re : new carthage phys product for eol\nfor the eol location carthage hub , the information is as follows :\npipe etxg east texas gas systems\nzone east texas gas systems\nfacility 04607001 easttrans ( carthage hub )\no ' neal\n- - - - - original message - - - - -\nfrom : dawn c kenne\nsent : monday , may 14 , 2001 10 : 10 pm\nto : o ' neal d winfree\ncc : tara sweitzer ; melba lozano\nsubject : fw : new carthage phys product for eol\no ' neal ,\nany word on this yet ?\ndawn\n- - - - - original message - - - - -\nfrom : kenne , dawn c .\nsent : friday , may 11 , 2001 2 : 42 pm\nto : winfree , o ' neal\ncc : sweitzer , tara\nsubject : fw : new carthage phys product for eol\ncan you please provide the pipe , zone and facility for the eol location listed below , requested by eric bass .\nthanks ,\ndawn\n- - - - - original message - - - - -\nfrom : lozano , melba\nsent : thursday , may 10 , 2001 1 : 07 pm\nto : sweitzer , tara ; kenne , dawn c .\ncc : cass , robert b . ; walker , chris ; meredith , kevin\nsubject : fw : new carthage phys product for eol\nplease map the following location in test :\ncarthage\nthe transaction is for delivery at the tailgate of the carthage hub .\ntrader : eric bass\nthanks ,\nmelba\n- - - - - original message - - - - -\nfrom : bass , eric\nsent : thursday , may 10 , 2001 10 : 26 am\nto : lozano , melba\nsubject : re : new carthage phys product for eol\ncarthage .\nthanks ,\neric\n- - - - - original message - - - - -\nfrom : lozano , melba\nsent : thursday , may 10 , 2001 9 : 25 am\nto : bass , eric\nsubject : fw : new carthage phys product for eol\nwhat do you want to call this product ?\nlet me know .\nthanks ,\nmelba\n58986\n- - - - - original message - - - - -\nfrom : cass , robert b .\nsent : thursday , may 10 , 2001 7 : 30 am\nto : lozano , melba\nsubject : fw : new carthage phys product for eol\n- - - - - original message - - - - -\nfrom : bass , eric\nsent : wednesday , may 9 , 2001 1 : 48 pm\nto : cass , robert b .\ncc : farmer , daren j .\nsubject : new carthage phys product for eol\nhey rob ,\nthe texas desk needs to create a new product that is similar to the exxon katy phys product . the product will be identical to the exxon katy product except for the location .\nthis product should be \" for delivery at the tailgate of the carthage hub \" .\nplease call with questions .\nthanks ,\neric\nx 3 - 0977", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.036+0000", "entityId": 4722, "properties": {"text": "Subject: mirant 4 / 01\nwe invoiced mirant americas for deal 705989 and they do not see the deal in their system . it was for 5 , 000 / day from 4 / 1 - 4 / 2 at 5 . 10 on pg & e texas . can you tell me who you did this deal with at mirant ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.041+0000", "entityId": 4723, "properties": {"text": "Subject: tenaska iv march 2001\nwe have the actuals from txu for tenaska iv for march 2001 . the receipt from williams was not kept whole , so we have money to recoup from williams and repay to tenaska iv . please change the following deals . let me know if you have any questions .\ndeal 384258 change demand fee from $ 2 , 653 , 694 . 95 to $ 2 , 607 , 176 . 02\ndeal 514353 change volume from 45 , 000 to 44 , 590\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.046+0000", "entityId": 4724, "properties": {"text": "Subject: re : noms / actuals for may 14 th\nwe agree\n\" eileen ponton \" on 05 / 16 / 2001 10 : 40 : 11 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\ncc :\nsubject : noms / actuals for may 14 th\nnom mcf mmbtu\n40 , 000 40 , 119 41 , 202", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.050+0000", "entityId": 4725, "properties": {"text": "Subject: hpl nom for may 17 , 2001\n( see attached file : hplno 517 . xls )\n- hplno 517 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.055+0000", "entityId": 4726, "properties": {"text": "Subject: fw :\nfyi\n- - - - - original message - - - - -\nfrom : severson , russ\nsent : wednesday , may 16 , 2001 10 : 43 am\nto : baumbach , david\nsubject : re :\ndone\nfrom : david baumbach / enron @ enronxgate on 05 / 16 / 2001 09 : 52 am\nto : russ severson / hou / ect @ ect\ncc :\nsubject : re :\nruss , different subject . . . could you go ahead and change ( or add ) in sitara position mgr where lonestar , waha , carthage and katy roll up to . instead of rolling up to ena im texas , have them roll up to ena im lonestar . i need this changed because i think the aep people will still have access to see ena im texas on sitara position mgr through the end of may and we don ' t want them to see our positions in our new portfolios .\ndave\n- - - - - original message - - - - -\nfrom : severson , russ\nsent : wednesday , may 16 , 2001 9 : 49 am\nto : baumbach , david\nsubject : re :\nthe first rollup desks created , display but do not work . i have a call into the it group on why they even display .\nruss\nfrom : david baumbach / enron @ enronxgate on 05 / 16 / 2001 09 : 36 am\nto : russ severson / hou / ect @ ect\ncc :\nsubject : re :\nso the all central and all west i see on deal ticket don ' t work ?\ndave\n- - - - - original message - - - - -\nfrom : severson , russ\nsent : wednesday , may 16 , 2001 9 : 35 am\nto : baumbach , david\nsubject : re :\nrollup desks do not work in ticker . rollup desks just subtotal positions from the desks that make them up , they do not see deals on\na deal level . you also can not drill down to a deal level from position manager for the same reason .\nruss\nfrom : david baumbach / enron @ enronxgate on 05 / 16 / 2001 09 : 05 am\nto : russ severson / hou / ect @ ect\ncc :\nsubject :\nruss ,\ni can see all - texas on tds position mgr but not on the new deal ticker . any thoughts on why that is ?\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.060+0000", "entityId": 4727, "properties": {"text": "Subject: eastrans nomination change effective 5 / 16 / 01\neffective 5 / 16 / 01 :\ndeliveries into eastrans from hpl stay the same at 20 , 000 mmbtu / dy .\nthe redeliveries will be 17 , 000 mmbtu / dy from fuels cotton valley and 3 , 000\nmmbtu / dy into the cartwheel .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.065+0000", "entityId": 4728, "properties": {"text": "Subject: re : accomplishments for the first six months\nyes , it is a great accomplishment . please don ' t go any time soon .\ntalk to you later .\nbob\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , may 17 , 2001 11 : 20 am\nto : hall , bob m\nsubject : re : accomplishments for the first six months\nis \" not going to aep \" considered an accomplishment ? by the way , most of the people who could give performance feedback on me are leaving or have left the company . i ' m sure they thought that i was superior though .\nd\n- - - - - original message - - - - -\nfrom : hall , bob m\nsent : thursday , may 17 , 2001 11 : 07 am\nto : superty , robert ; farmer , daren j . ; wynne , rita ; mcclure , mark ; bussell l , kathryn\nsubject : accomplishments for the first six months\nit ' s that time again .\nplease put together a list of accomplishments for the first six months .\ni know you can use the system some how , just not sure how .\nlet me know .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.070+0000", "entityId": 4729, "properties": {"text": "Subject: re : tenaska iv march 2001\nyes , the dollar amount is what we need to recoup from williams . i will take the credit with our payment to williams on the 25 th . tenaska will send us their wire to us on the 24 th . i will make sure we receive the wire from tenaska before i send the wire to williams . i will also let james know about the volume for the agency fee . i thought it was suppose to be calculated on actual volume , not the nominated volume .\nmegan\nfrom : daren j farmer / enron @ enronxgate on 05 / 16 / 2001 03 : 04 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : tenaska iv march 2001\ni have changed the demand fee . but , is this adjusted by the dollar amount that we need to recoup from williams ? i don ' t want to pay tenaska until we get the money from williams . additionally , i believe that we need to keep the volume at 45 , 000 for the admin fee , since we originally nominated 45 , 000 / day .\nd\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : wednesday , may 16 , 2001 12 : 49 pm\nto : daren j farmer / hou / ect @ enron\nsubject : tenaska iv march 2001\nwe have the actuals from txu for tenaska iv for march 2001 . the receipt from williams was not kept whole , so we have money to recoup from williams and repay to tenaska iv . please change the following deals . let me know if you have any questions .\ndeal 384258 change demand fee from $ 2 , 653 , 694 . 95 to $ 2 , 607 , 176 . 02\ndeal 514353 change volume from 45 , 000 to 44 , 590\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.075+0000", "entityId": 4730, "properties": {"text": "Subject: hpl nom for may 18 , 2001\n( see attached file : hplno 518 . xls )\n- hplno 518 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.080+0000", "entityId": 4731, "properties": {"text": "Subject: re : wellhead adjustments - may , 2001\nadjustments have been made to volumes in the avg column on the attached spreadsheet effective 5 / 17 / 01 .\nbob\nfrom : daren j farmer / enron @ enronxgate on 05 / 17 / 2001 11 : 00 am\nto : robert cotten / hou / ect @ ect\ncc : george f smith / enron @ enronxgate\nsubject : re : wellhead adjustments - may , 2001\nbob ,\nin looking at the trends over the meters , i made a few adjustments ( highlighted in blue ) . please use these changes and enter the deal changes in sitara . let me know if you have any questions .\nd\n- - - - - original message - - - - -\nfrom : cotten , robert\nsent : thursday , may 17 , 2001 10 : 38 am\nto : daren j farmer / hou / ect @ enron\nsubject : wellhead adjustments - may , 2001\nimportance : high\ndaren ,\nplease see the attached file .\nbob\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.085+0000", "entityId": 4732, "properties": {"text": "Subject: texaco 4 / 01\ni have a price discrepancy with one of stacey ' s deals with texaco natural gas for april 2001 . it is deal 695976 for 12 , 000 / day . we have it priced at waha gas daily + 0 . 005 and texaco says it should be waha if + 0 . 005 . rick o ' bannion , the trader at texaco , has confirmed their price . can you check this for me and let me know which is correct ?\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.091+0000", "entityId": 4733, "properties": {"text": "Subject: cleburne imbalance\ndaren - -\nbad news . . . . . the cleburne imbalance is out of control . you might want to start some payback to lonestar . lonestar ' s estimates for the accumulative imbalance at the beginning of may was 140 . 0 due them , now i guess their actuals came in and now at the beginning of may shows 214 . 0 due them . i am waiting to hear back from lisa with lonestar to see why there is such a big discrepancy . through the 16 th , her updated estimates reflect an imbalance of 240 . 0 due them . . . . the plant continues to overpull , our nom to the plant which is not all 45 . 0 due to brazos ' take .\nlet me know what you want to do .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.096+0000", "entityId": 4734, "properties": {"text": "Subject: re : noms / actual vols for 15 th & 16 th\nwe agree\n\" eileen ponton \" on 05 / 17 / 2001 05 : 43 : 09 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\ncc :\nsubject : noms / actual vols for 15 th & 16 th\ndate nom mcf mmbtu\n5 / 15 0 417 428\n5 / 16 38 , 750 38 , 232 39 , 264", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.101+0000", "entityId": 4735, "properties": {"text": "Subject: hpl nom for may 19 - 21 , 2001\n( see attached file : hplno 519 . xls )\n- hplno 519 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.105+0000", "entityId": 4736, "properties": {"text": "Subject: re : nom / actual vols for may 17 th\nwe agree\n\" eileen ponton \" on 05 / 18 / 2001 01 : 44 : 19 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\ncc :\nsubject : nom / actual vols for may 17 th\nnom mcf mmbtu\n26 , 250 28 , 151 28 , 911", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.110+0000", "entityId": 4737, "properties": {"text": "Subject: first delivery - choice exploration\nsee attached file", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.116+0000", "entityId": 4738, "properties": {"text": "Subject: entex delivery off of oasis\njust a quick reminder that we need to cover the entex delivery off of oasis .\ncurrently ena has a transport agreement on oasis . this agreement will not be assigned .\nnot use aep has an agreement on oasis . just to make sure , i would recommend we\nsale the gas to aep / hpl at the point for the month of june just to make sure the delivery\nis made .\nlet me know what you think .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.121+0000", "entityId": 4739, "properties": {"text": "Subject: meter 3425\ndaren -\nwe had flow of 76 for the month of april but no deal came across in sitarra .\nper lee papyotti , a deal is in place for april but he does not know the deal\nnumber - he told me to ask you .\nthanks - julie\nhuish detergents inc .\n98 3425", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.125+0000", "entityId": 4740, "properties": {"text": "Subject: lonestar cleburne payback\ndaren - - go ahead and schedule payback for next month for cleburne . . . . . they say it should be fine .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.133+0000", "entityId": 4741, "properties": {"text": "Subject: hpl nom for may 22 , 2001\n( see attached file : hplno 522 . xls )\n- hplno 522 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.141+0000", "entityId": 4742, "properties": {"text": "Subject: marshall ( hpl meter 6296 ) volume increase effective may 19 , 2001\ndaren ,\nis it already to change this nomination ?\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert cotten / hou / ect on 05 / 21 / 2001 07 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsuzanne _ saldivar @ eogresources . com on 05 / 18 / 2001 10 : 14 : 51 am\nto : michael . w . morris @ enron . com , rcotten @ enron . com\ncc :\nsubject : marshall ( hpl meter 6296 ) volume increase effective may 19 , 2001\ncan you increase the sales / nominations at the referenced meter by 500\nmmbtu / d effective may 21 ? have learned that el paso ( pg this increases the volume eog resources\nhas available for sale . please contact me with any questions or concerns .\nthanks !\nsuzanne saldivar\nsr . marketing administrator\n713 - 651 - 6858", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.147+0000", "entityId": 4743, "properties": {"text": "Subject: fw : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ndaren -\nplease see my e - mail to julie below . can you change the price for me ?\nthanks !\ntess\n- - - - - original message - - - - -\nfrom : ray , tess\nsent : monday , may 21 , 2001 2 : 36 pm\nto : meyers , julie\nsubject : fw : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nimportance : high\njulie -\nneed price correction for 04 / 01 / 01 - 04 / 30 / 01 for deal # 413462 to agree with info from lee below . currently , deal shows for 04 / 01 first 10 , 000 / d @ hsc _ flw + 1 high gdp dh . sitara audit shows dfarmer changed price on 05 / 08 / 01 /\nthanks !\ntess\n- - - - - original message - - - - -\nfrom : meyers , julie\nsent : tuesday , may 08 , 2001 11 : 01 am\nto : ray , tess\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 05 / 08 / 2001 10 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee l papayoti on 05 / 07 / 2001 04 : 54 pm\nto : julie meyers / hou / ect @ ect\ncc :\nsubject : re : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nsa 413462 is not the buyback , it ' s the swing . . .\nthe first 10 , 000 / d under sa 413462 should be hsc _ flw + 1 high gdp d . a .\nanything over 10 , 000 / d should be hsc _ flw + 2 high gdp da\nthis is for all months from octo 0 to sepol\njulie meyers\n05 / 07 / 2001 04 : 43 pm\nto : lee l papayoti / hou / ect @ ect\ncc :\nsubject : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\nwhat do you think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 05 / 07 / 2001 04 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tess ray / enron @ enronxgate on 05 / 07 / 2001 02 : 58 pm\nto : daren j farmer / enron @ enronxgate\ncc : julie meyers / hou / ect @ ect\nsubject : chevron phillips chemical co . , lp ( hplc 04 / 01 sales / buyback )\ndarren -\nplease advise on the 04 / 01 price for sales deal # sa 413462 on this buyback ( swing deal ) . the contract shows the price for 04 / 01 should be the same price as shown for 03 / 01 & 05 / 01 ( i . e . 04 / 01 price for deal # sa 413462 should be : 10 , 000 @ hsc _ flw + 1 high gdp d . a . & 11 , 000 @ hsc _ flw + 2 high gdp da ) .\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.152+0000", "entityId": 4744, "properties": {"text": "Subject: deal 709296 is on wrong counterparty\ndeal 709296 should be on astra power llc , we have it on adtra resources , inc . i spoke with their trader sherry wayman and she said that she did the deal with daren farmer and it should be astra power llc for april 2001 .\ncould you fix asap because payment is due on 25 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.156+0000", "entityId": 4745, "properties": {"text": "Subject: duke energy field services 4 / 01\nfor once his is not a panenergy question . for sale deal 707274 , defs says the price on 4 / 4 should be 5 . 25 and we have 5 . 20 in sitara . can you confirm this price for me ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.161+0000", "entityId": 4746, "properties": {"text": "Subject: cowtrap allocation - 4 / 01\ni received the above allocation for this deal where there is a purchase from spinnaker and a sale to dow . the volumes have not be actualized so there is nothing in volume management . can one of you look into this and get back to me .\nthanks ,\njoyce", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.166+0000", "entityId": 4747, "properties": {"text": "Subject: fw : ercot load comparison\n- - - - - original message - - - - -\nfrom : gilbert - smith , doug\nsent : tuesday , may 22 , 2001 8 : 38 am\nto : tmartin @ enron . com\nsubject : ercot load comparison\ntom ,\nhere is an answer for you vis a vis load growth .\nhope it helps ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug gilbert - smith / corp / enron on 05 / 22 / 2001 08 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kevin cline / enron @ enronxgate on 05 / 21 / 2001 03 : 26 pm\nto : doug gilbert - smith / corp / enron @ enron\ncc : eric saibi / corp / enron @ enron\nsubject : ercot load comparison\nplease find attached spreadsheet that compares hot days from may 2000 and may 2001 . there are two tabs , one tab contains the days may 16 - 18 , 2000 and the other tab contains the days may 14 - 18 , 2001 . each tab contains both the load data and temp data particular to the days in question . the days most directly comparable are may 17 , 2001 ( thursday ) and may 18 , 2000 ( thursday ) , although the two days preceding may 18 , 2000 were slightly warmer than the two days preceding may 17 , 2001 . the peak on 5 / 17 / 2001 , 44 , 923 mw , is 2 . 78 % higher than the peak on 5 / 18 / 2000 , 43 , 709 mw . with similarly warm days before 5 / 17 / 2001 as there were before 5 / 18 / 2000 , the peak would obviously have been even higher . this would put the year - over - year growth in excess of 3 % . i believe this falls right in line with the growth rate year - over - year from an earlier analysis , somewhere in the range of 3 . 5 % to 4 % .\nlet me know if you have any questions or comments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.171+0000", "entityId": 4748, "properties": {"text": "Subject: re : hpl texoma , meter 9801071 - 05 / 10 / 01\ndaren ,\nplease see deal 229758 for this matter . i nominated this transport for 5 / 10 to 5 / 16 . should there be a deal there ?\nmary poorman\n05 / 22 / 2001 03 : 43 pm\nto : daren j farmer / hou / ect\ncc : michael olsen / na / enron @ enron , clay cook / enron @ enronxgate , sabrae zajac / hou / ect @ ect , edward terry / hou / ect @ ect\nsubject : hpl texoma , meter 9801071 - 05 / 10 / 01\ndaren ,\nthe intercompany / interdesk reflects an error for the above referenced day . a transport usage ticket was put into the system for 3 , 000 dth ( duke carthage to texoma ) , however , we do not have any supply on epgt from duke for this deal . the package was confirmed , according to pops , so , we are probably missing the supply deal . please check on the day / price ( it is the 3 , 000 on k # ta 99027 on epgt ) . i am trying to take care of some of these current month issues on the \" clean reports \" .\nmike ,\nwould you please make sure that this contract was nominated on epgt for 5 / 10 / 01 .\nthank you both for your assistance ( everyone else is fyi ) ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.175+0000", "entityId": 4749, "properties": {"text": "Subject: hpl texoma , meter 9801071 - 05 / 10 / 01\ndaren ,\nthe intercompany / interdesk reflects an error for the above referenced day . a transport usage ticket was put into the system for 3 , 000 dth ( duke carthage to texoma ) , however , we do not have any supply on epgt from duke for this deal . the package was confirmed , according to pops , so , we are probably missing the supply deal . please check on the day / price ( it is the 3 , 000 on k # ta 99027 on epgt ) . i am trying to take care of some of these current month issues on the \" clean reports \" .\nmike ,\nwould you please make sure that this contract was nominated on epgt for 5 / 10 / 01 .\nthank you both for your assistance ( everyone else is fyi ) ,\nmary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.180+0000", "entityId": 4750, "properties": {"text": "Subject: re : noms / actual vols for 5 / 18 thru 5 / 20\nwe agree\n\" eileen ponton \" on 05 / 21 / 2001 04 : 01 : 51 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\ncc :\nsubject : noms / actual vols for 5 / 18 thru 5 / 20\ndate nom mcf mmbtu\n5 / 18 17 , 500 17 , 718 18 , 197\n5 / 19 30 , 000 29 , 053 29 , 838\n5 / 20 30 , 000 29 , 976 30 , 786", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.185+0000", "entityId": 4751, "properties": {"text": "Subject: hpl nom for may 23 , 2001\n( see attached file : hplno 523 . xls )\n- hplno 523 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.190+0000", "entityId": 4752, "properties": {"text": "Subject: re : nominations\nwe agree\n\" eileen ponton \" on 05 / 22 / 2001 10 : 56 : 54 am\nto : melissa jones / texas utilities @ tu\ncc :\nsubject : re : nominations\nhad measurement check flow on 12 th & it was 22 , 176 . . . . . . . . .\n\" melissa\njones \" to : \" eileen ponton \"\nbcc :\nsubject : re : nominations\n05 / 22 / 01\n08 : 48 am\naccording to our records tufco requested a volume of 22 , 500 . please let me\nknow\nif you need any further information .\n\" eileen ponton \" on 05 / 21 / 2001 02 : 45 : 04 pm\nto : melissa jones / texas utilities @ tu\ncc :\nsubject : nominations\ncould you please check your records & see what volume tufco requested for\nmay 12 th ? i show a volume requested of 22 , 500 but 55 , 246 flowed .\nsomething ' s not right as requested / flowed volume are normally closer ! ? ? !\nam working on weekend volumes now & will e - mail them shortly ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.194+0000", "entityId": 4753, "properties": {"text": "Subject: may 23 nom\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom acton / corp / enron on 05 / 22 / 2001 09 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nronald _ s _ fancher @ reliantenergy . com on 05 / 22 / 2001 09 : 21 : 58 am\nto : tom . acton @ enron . com\ncc :\nsubject : may 23 nom\n( see attached file : hpl - may . xls )\n- hpl - may . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.198+0000", "entityId": 4754, "properties": {"text": "Subject: daren ,\nthe firm trading waha book has been set up as an internal counterparty for desk - to - desk trading on enrononline .\nthe following user id and password will give you access to live prices on the web - site http : / / www . enrononline . com .\nuser id : adm 77525\npassword : welcome !\n( note these are case sensitive )\nplease keep your user id and password secure as this allows you to transact on enrononline .\ncontact the helpdesk at x 34357 if you have any questions or problems gaining access with this id .\nthanks ,\nstephanie x 33465", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.203+0000", "entityId": 4755, "properties": {"text": "Subject: fw : duke energy field services 4 / 01\nmegan ,\ni found danny ' s book and he has the deal priced at 5 . 25 . i adjusted the price in sitara . let me know if anything further is needed .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sabrae zajac / hou / ect on 05 / 23 / 2001 05 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : daren j farmer / enron @ enronxgate on 05 / 23 / 2001 11 : 24 am\nto : sabrae zajac / hou / ect @ ect\ncc :\nsubject : fw : duke energy field services 4 / 01\nsabrae ,\nsee if you can find danny ' s deal book and verify the price for the deal listed below .\nd\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : tuesday , may 22 , 2001 4 : 09 pm\nto : daren j farmer / hou / ect @ enron\nsubject : duke energy field services 4 / 01\nfor once his is not a panenergy question . for sale deal 707274 , defs says the price on 4 / 4 should be 5 . 25 and we have 5 . 20 in sitara . can you confirm this price for me ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.207+0000", "entityId": 4756, "properties": {"text": "Subject: re : cowtrap allocation - 4 / 01\ni ' m trying to get this to pull through to unify for payment to spinnaker . volume management shows \" no detail \" .\nsitara indicated 685 mmbut 4 / 1 - 4 / 30 expected .\nwho needs to talk to who to get this fixed .\npayment must be set up by noon 5 / 24 / 01 for prompt payment to spinnaker .\nthank you and please advise .\nmary ellenberger 5 - 8773 ( 713 - 345 - 8773 )\nfrom : joyce viltz / enron @ enronxgate on 05 / 22 / 2001 02 : 49 pm\nto : julie meyers / hou / ect @ ect , daren j farmer / enron @ enronxgate , mary ellenberger / corp / enron @ enron\ncc : tess ray / enron @ enronxgate\nsubject : cowtrap allocation - 4 / 01\ni received the above allocation for this deal where there is a purchase from spinnaker and a sale to dow . the volumes have not be actualized so there is nothing in volume management . can one of you look into this and get back to me .\nthanks ,\njoyce", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.211+0000", "entityId": 4757, "properties": {"text": "Subject: imperial sugar ' s volumes will be 142 , 000 - 144 , 000 mmbtu for the month of may instead of the 155 , 000 which we have scheduled . could we please make the appropriate nomination change and also let me know how we plan to price the buyback . also , is there any way to roll the 12 , 000 mmbtu deficiency over to june business .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.217+0000", "entityId": 4758, "properties": {"text": "Subject: fw : playgroup & young families church party pictures\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nget a low apr nextcard visa in 30 seconds !\n1 . fill in the brief application\n2 . receive approval decision within 30 seconds\n3 . get rates as low as 2 . 99 % intro or 9 . 99 % ongoing apr and no\nannual fee !\napply now !\nhttp : / / www . bcentral . com / listbot / nextcard\nthe previous e - mail truncated the full web address . so , try the link below\ninstead :\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.222+0000", "entityId": 4759, "properties": {"text": "Subject: gymnastics pictures\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.229+0000", "entityId": 4760, "properties": {"text": "Subject: fw : kick\nthis looks painful !\n- - - - - original message - - - - -\nfrom : almaguer , michael\nsent : wednesday , may 23 , 2001 9 : 32 am\nto : glover , rusty\nsubject : fw : kick\nimportance : high\n- - - - - original message - - - - -\nfrom : almaguer , daniel ( us - dallas ) [ mailto : dalmaguer @ deloitte . com ]\nsent : wednesday , may 23 , 2001 7 : 58 am\nto : ' malmaguer @ halff . com ' ; ' carmen . martinez @ globalknowledge . com ' ;\n' eric . silva @ homecomings . com '\nsubject : fw : kick\nimportance : high\nwaassup big worm , send this to mom .\n- - - - - original message - - - - -\nfrom : rosales , rudy ( us - irving )\nsent : wednesday , may 23 , 2001 7 : 34 am\nto : moore , phillip ( us - dallas ) ; lollar , eric ( us - dallas ) ; watson ,\nkelvin ( us - dallas ) ; briden , chris ( us - dallas ) ; kapka , cory ( us -\ndallas ) ; lenerose , shaun ( us - dallas ) ; brown , shannon ( us - dallas ) ;\nalmaguer , daniel ( us - dallas ) ; kelley , dan ( us - dallas ) ; scalf , mitch\n( us - irving ) ; watts , linda ( us - dallas ) ; watts , james ( us - dallas ) ;\npittman , francie ( us - irving ) ; stephenson , aubrey ( us - irving ) ;\n' sonia . guzman @ gadzooks . com '\nsubject : fw : kick\n- -\nkick\nthis message ( including any attachments ) contains confidential information\nintended for a specific individual and purpose , and is protected by law . if\nyou are not the intended recipient , you should delete this message and are\nhereby notified that any disclosure , copying , or distribution of this\nmessage , or the taking of any action based on it , is strictly prohibited .\n>\n- kick . mpeg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.237+0000", "entityId": 4761, "properties": {"text": "Subject: tenaska agreement\ndarren ,\ndo you know what the situation is with getting that tenaska agreement signed ? it is on a list to be assigned to hpl in the sale and i don ' t think it has ever been executed - - i know you left me a message a week or so ago about this - - is there any information that i owe you ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.243+0000", "entityId": 4762, "properties": {"text": "Subject: hpl nom for may 24 , 2001\n( see attached file : hplno 524 . xls )\n- hplno 524 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.247+0000", "entityId": 4763, "properties": {"text": "Subject: re : no / actual vols for 5 / 22 / 01\nwe agree\n\" eileen ponton \" on 05 / 23 / 2001 02 : 23 : 15 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / texas utilities @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\ncc :\nsubject : no / actual vols for 5 / 22 / 01\nnom mcf mmbtu\n27 , 500 26 , 406 27 , 119", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.252+0000", "entityId": 4764, "properties": {"text": "Subject: fw : pymt for 03 / 01 sales adjustment for cowtrap\nfyi -\nper previous e - mail to you , this is e - mail from sandra wehner\ntess\n- - - - - original message - - - - -\nfrom : \" wehner , sandra ( sl ) \" @ enron [ mailto : imceanotes - + 22 wehner + 2 c + 20 sandra + 20 + 28 sl + 29 + 22 + 20 + 3 cswehner + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : thursday , may 24 , 2001 2 : 48 pm\nto : ray , tess\ncc : lamphier , gary ; trochta , mary ( ml ) ; mudd , christopher ( cj )\nsubject : fw : pymt for 03 / 01 sales adjustment for cowtrap\ntess , would you please check with your commercial manager on the price . i do\nnot have a record of $ 5 . 30 . my records indicate we ' ve been purchasing this\ngas at inside ferc houston ship channel less 7 which would be $ 5 . 30 for\napril . please recheck . thanks .\nsandra wehner\ncontract administrator\n713 - 978 - 3667 ( phone )\n713 - 978 - 3690 ( fax )\ne - mail : swehner @ dow . com\n- - - - - original message - - - - -\nfrom : trochta , mary ( ml )\nsent : thursday , may 24 , 2001 2 : 37 pm\nto : ' tess . ray @ enron . com '\ncc : wehner , sandra ( sl )\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\ntess ,\nwe are showing a price of $ 5 . 30 for bluedolphin and cowtrap . please check\nyour price . you are showing $ 5 . 31 .\n- - - - - original message - - - - -\nfrom : tess . ray @ enron . com [ mailto : tess . ray @ enron . com ]\nsent : thursday , may 24 , 2001 2 : 17 pm\nto : mltrochta @ dow . com\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\nimportance : high\nhere is invoice for cowtrap . can you set it up for pymt too ? if so what\ndate ?\n( see attached file : invoice - cowtrap 0401 . xls )\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" @ enron\necom + 3 e + 40 enron @ enron . com ]\nsent : thursday , may 24 , 2001 1 : 38 pm\nto : ray , tess\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\nhello tess ,\nthe $ 3 , 154 . 56 is set up for payment tomorrow 5 / 25 / 01 . i will get the\nbluedolphin set up for payment on 5 / 29 / 01 .\nthank you .\n- - - - - original message - - - - -\nfrom : ray , tess [ mailto : tess . ray @ enron . com ]\nsent : thursday , may 24 , 2001 1 : 30 pm\nto : mltrochta @ dow . com\nsubject : pymt for 03 / 01 sales adjustment for cowtrap\nimportance : high\nhi !\nalso -\nwhen will you send pymt for 03 / 01 sales adjustment ( inv # 2594 sa , amt .\n$ 3 , 154 . 56 , due date 5 / 25 / 01 ) ?\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.256+0000", "entityId": 4765, "properties": {"text": "Subject: re : pymt for 03 / 01 sales adjustment for cowtrap\nmary - confirmed $ 5 . 30 price per correct deal for cowtrap & will send corrected invoice to you via e - mail for this .\nrequested 04 / 01 price confirm for blue dolphin . will try to get something to you today !\ndarren farmer -\ncan you confirm if 04 / 01 sales price for sa - 745578 , if - $ . 06 per entry in sitara or if - $ . 07 per sandra werner ' s e - mail ( will forward to you )\nthanks !\ntess\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" @ enron [ mailto : imceanotes - + 22 trochta + 2 c + 20 mary + 20 + 28 ml + 29 + 22 + 20 + 3 cmltrochta + 40 dow + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : thursday , may 24 , 2001 2 : 47 pm\nto : ray , tess\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\ntess , i ' m sorry , but i cannot pay according to your invoice . can you please\nsend a revised invoice for bluedolphin ? can just e - mail it .\n- - - - - original message - - - - -\nfrom : tess . ray @ enron . com [ mailto : tess . ray @ enron . com ]\nsent : thursday , may 24 , 2001 2 : 44 pm\nto : mltrochta @ dow . com\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\nimportance : high\nprice is per deal entry and confirmed . just pay what you show , that ' s fine\nfor now .\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" @ enron\necom + 3 e + 40 enron @ enron . com ]\nsent : thursday , may 24 , 2001 2 : 37 pm\nto : ray , tess\ncc : wehner , sandra ( sl )\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\ntess ,\nwe are showing a price of $ 5 . 30 for bluedolphin and cowtrap . please\ncheck\nyour price . you are showing $ 5 . 31 .\n- - - - - original message - - - - -\nfrom : tess . ray @ enron . com [ mailto : tess . ray @ enron . com ]\nsent : thursday , may 24 , 2001 2 : 17 pm\nto : mltrochta @ dow . com\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\nimportance : high\nhere is invoice for cowtrap . can you set it up for pymt too ? if so what\ndate ?\n( see attached file : invoice - cowtrap 0401 . xls )\n- - - - - original message - - - - -\nfrom : \" trochta , mary ( ml ) \" @ enron\necom + 3 e + 40 enron @ enron . com ]\nsent : thursday , may 24 , 2001 1 : 38 pm\nto : ray , tess\nsubject : re : pymt for 03 / 01 sales adjustment for cowtrap\nhello tess ,\nthe $ 3 , 154 . 56 is set up for payment tomorrow 5 / 25 / 01 . i will get the\nbluedolphin set up for payment on 5 / 29 / 01 .\nthank you .\n- - - - - original message - - - - -\nfrom : ray , tess [ mailto : tess . ray @ enron . com ]\nsent : thursday , may 24 , 2001 1 : 30 pm\nto : mltrochta @ dow . com\nsubject : pymt for 03 / 01 sales adjustment for cowtrap\nimportance : high\nhi !\nalso -\nwhen will you send pymt for 03 / 01 sales adjustment ( inv # 2594 sa ,\namt .\n$ 3 , 154 . 56 , due date 5 / 25 / 01 ) ?\nthanks !\ntess ray\ntess . ray @ enron . com\ncontract accountant , gas settlements ( sales )\nhouston pipe line co .\n1201 louisiana , la 1524 b\nhouston , tx . 77002\ntel : 713 - 571 - 3274 fax : 713 - 646 - 8875", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.261+0000", "entityId": 4766, "properties": {"text": "Subject: i received a fax from cp & l for june 2001 . they nominated 20 k a day\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.266+0000", "entityId": 4767, "properties": {"text": "Subject: guadalupe power partners for april 2001\nhere is the spreadsheet for april . . . . let me know if you have any questions . i also sent it to katherine herrera , and i think paul couvillan will be taking it over pretty soon from katherine .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.271+0000", "entityId": 4768, "properties": {"text": "Subject: re : fw : cowtrap allocation - 4 / 01\ndaren ,\nyes , this is the blue dolphin but i dont know why shes not able to see it . it was nom , tracked and balanced . let me know if there is anything else i can do .\ncarlos\nfrom : daren j farmer / enron @ enronxgate on 05 / 23 / 2001 06 : 04 pm\nto : carlos j rodriguez / hou / ect @ ect\ncc : mary ellenberger / corp / enron @ enron\nsubject : fw : cowtrap allocation - 4 / 01\ncarlos ,\nis this the gas on blue dolphin ?\nd\n- - - - - original message - - - - -\nfrom : ellenberger , mary\nsent : wednesday , may 23 , 2001 5 : 39 pm\nto : viltz , joyce ; meyers , julie ; farmer , daren j .\ncc : ray , tess\nsubject : re : cowtrap allocation - 4 / 01\nimportance : high\ni ' m trying to get this to pull through to unify for payment to spinnaker . volume management shows \" no detail \" .\nsitara indicated 685 mmbut 4 / 1 - 4 / 30 expected .\nwho needs to talk to who to get this fixed .\npayment must be set up by noon 5 / 24 / 01 for prompt payment to spinnaker .\nthank you and please advise .\nmary ellenberger 5 - 8773 ( 713 - 345 - 8773 )\nfrom : joyce viltz / enron @ enronxgate on 05 / 22 / 2001 02 : 49 pm\nto : julie meyers / hou / ect @ ect , daren j farmer / enron @ enronxgate , mary ellenberger / corp / enron @ enron\ncc : tess ray / enron @ enronxgate\nsubject : cowtrap allocation - 4 / 01\ni received the above allocation for this deal where there is a purchase from spinnaker and a sale to dow . the volumes have not be actualized so there is nothing in volume management . can one of you look into this and get back to me .\nthanks ,\njoyce", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.277+0000", "entityId": 4769, "properties": {"text": "Subject: re : fw : cowtrap allocation - 4 / 01\ni believe so .\nfrom : daren j farmer / enron @ enronxgate on 05 / 23 / 2001 06 : 04 pm\nto : carlos j rodriguez / hou / ect @ ect\ncc : mary ellenberger / corp / enron @ enron\nsubject : fw : cowtrap allocation - 4 / 01\ncarlos ,\nis this the gas on blue dolphin ?\nd\n- - - - - original message - - - - -\nfrom : ellenberger , mary\nsent : wednesday , may 23 , 2001 5 : 39 pm\nto : viltz , joyce ; meyers , julie ; farmer , daren j .\ncc : ray , tess\nsubject : re : cowtrap allocation - 4 / 01\nimportance : high\ni ' m trying to get this to pull through to unify for payment to spinnaker . volume management shows \" no detail \" .\nsitara indicated 685 mmbut 4 / 1 - 4 / 30 expected .\nwho needs to talk to who to get this fixed .\npayment must be set up by noon 5 / 24 / 01 for prompt payment to spinnaker .\nthank you and please advise .\nmary ellenberger 5 - 8773 ( 713 - 345 - 8773 )\nfrom : joyce viltz / enron @ enronxgate on 05 / 22 / 2001 02 : 49 pm\nto : julie meyers / hou / ect @ ect , daren j farmer / enron @ enronxgate , mary ellenberger / corp / enron @ enron\ncc : tess ray / enron @ enronxgate\nsubject : cowtrap allocation - 4 / 01\ni received the above allocation for this deal where there is a purchase from spinnaker and a sale to dow . the volumes have not be actualized so there is nothing in volume management . can one of you look into this and get back to me .\nthanks ,\njoyce", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.282+0000", "entityId": 4770, "properties": {"text": "Subject: eastrans nomination for 6 / 01 / 01\nfirst of the month nomination for june 2001 :\ndeliveries into eastrans from hpl will be 20 , 000 mmbtu / dy .\nthe redeliveries will be 17 , 000 mmbtu / dy from fuels cotton valley and 3 , 000\nmmbtu / dy into the cartwheel .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.287+0000", "entityId": 4771, "properties": {"text": "Subject: hpl nom for may 25 , 2001\n( see attached file : hplno 525 . xls )\n- hplno 525 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.292+0000", "entityId": 4772, "properties": {"text": "Subject: txu fuels / sds nomination for june 2001\nattached is the june 2001 nomination for our takes under the gas sales and\npurchase contract between txu fuel company ( previously tufco ) and sds . please\nadvise should you have any questions concerning the attached .\nthanks ,\nccs\n( see attached file : sdsnom . xls )\n- sdsnom . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.297+0000", "entityId": 4773, "properties": {"text": "Subject: 06 / 01 assignment , termination , expiration report - houston pipe\nline\nattached is the junel 2001 assignment , termination & expiration report for houston pipe line ' s contracts . ( fyi - it contains all of the entries made by our group since the report was last done on 3 / 23 / 01 , regardless of the effective date . ) if you do not need to receive this report or if you know of someone else that should receive it , please let me know by e - mail or phone ( 713 - 571 - 3187 ) so that i can either remove your name from or add their name to the distribution list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.302+0000", "entityId": 4774, "properties": {"text": "Subject: june 2001 wellhead nomination\nthe attachment provides details for a total wellhead nomination for june 2001 of 734 , 436 mmbtu / d . george", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.308+0000", "entityId": 4775, "properties": {"text": "Subject: calpine daily gas nomination\n>\nricky a . archer\nfuel supply\n700 louisiana , suite 2700\nhouston , texas 77002\n713 - 830 - 8659 direct\n713 - 830 - 8722 fax\n- calpine daily gas nomination 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.313+0000", "entityId": 4776, "properties": {"text": "Subject: meter 7361 - mtbe plant / egp fuels ( was 8216 )\ndaren -\nhoward came by and asked me to check with you regarding deal 717768 starting\napril 6 th for 2 , 000 - it was created by you april 5 th . . he wasn ' t sure if it was a buy back and if you wanted me to\nlink the buy back deal to 692725 . the buyback deal for this is normally 544392 ( when it was on meter 8216 ) . do you want\nthis deal to act as the buy back or stay whole . thanks - julie\nreceipt 2 , 000 deal 717768 - buy back ?\ndelivery 5 , 500 deal 544388 - daily swing\ndelivery 8 , 500 deal 692725 - stays whole first", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.318+0000", "entityId": 4777, "properties": {"text": "Subject: mtr 980070 for 10 / 29 - 31 / 1999\nthose deals have been manually entered into pops and reallocated . all is well .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.323+0000", "entityId": 4778, "properties": {"text": "Subject: hpl nom . for may 26 - 29 , 2001\n( see attached file : hplno 526 . xls )\n- hplno 526 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.329+0000", "entityId": 4779, "properties": {"text": "Subject: gisb contracts for intrastate and interstate gas\nat the request of lynn handlin , please find attached a copy of the following :\ngisb contract form\nspecial provisions for intrastate gas\nspecial provision for interstate gas\nplease review , and if interested in putting these contracts in place , forward to\nme all required information on the first page of the gisb contract form . i will\nthen have the contracts prepared and forwarded to you for execution .\nplease keep in mind that txu fuel company is an intrastate pipeline and can\npurchase interstate gas only under certain limited conditions . these conditions\nare covered under item number 8 in the special provisions . thanks .\nkeith ford\ntxu fuel company\ncontract administration supervisor\n( see attached file : gisb form - final . doc ) ( see attached file : gisb spec prov -\nintra - final . doc ) ( see attached file : gisb spec prov - inter - final . doc )\n- gisb form - final . doc\n- gisb spec prov - intra - final . doc\n- gisb spec prov - inter - final . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.337+0000", "entityId": 4780, "properties": {"text": "Subject: tenaska iv 4 / 01\nwe need to change the demand fee on deal 384258 for tenaska iv for 4 / 01 . the williams invoice was not as much as the spreadsheet showed , so our expenses decreased . please change the amount from $ 2 , 979 , 909 . 91 to $ 2 , 862 , 531 . 95 . i have attached the revised spreadsheet .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.344+0000", "entityId": 4781, "properties": {"text": "Subject: lufkin\non may 27 th a lufkin industrial market will go down by 5 , 000 . we are going to move this sale to lyondell meter # 5045 . the sales price will remain at index minus $ . 12 . the sale will remain at lyondell for approximately 2 weeks . since the screen has fallen about $ 1 this should be a good thing for us and a very nice thing for entex to do for us .\nthanks ,\njanet", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.350+0000", "entityId": 4782, "properties": {"text": "Subject: guadalupe power partners\ntexas independent energy invites you to \" come on down \" for the dedication festivities of the guadalupe power partners plant , thursday , june 21 st and friday , june 22 nd in marion , texas .\nput yer ' boots on , grab yer ' hat , and click this weblink www . pandaenergy . com / guadcomm for yer ' personal invite !\nya ' ll come on now , ya hear ?\nthis email contains no attachment , it is for informational purpose only . see the mentioned website above for details and rsvp information .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.354+0000", "entityId": 4783, "properties": {"text": "Subject: hpl nom for may 30 , 2001\n( see attached file : hplno 530 . xls )\n- hplno 530 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.359+0000", "entityId": 4784, "properties": {"text": "Subject: june 2001 wellhead nomination\nthe attachment provides details for a final total wellhead nomination for june 2001 of 727 . 856 mmbtu / d . of significance , we have reduced the north central nomination at meter 6633 from 25 , 000 mmbtu / d to 14 , 000 mmbtu / d . also , the 727 , 856 mmbtu / d includes an approximate incremental 10 , 000 mmbtu / d ( from 22 , 121 mmbtu / d to 31 , 591 mmbtu / d ) volume at the spinnaker meter ( 9862 ) which is not yet flowing , but is expected to flow by the first of the month .\nchanges from the nomination submitted to you on 5 / 24 / 2001 are noted in column f of the spreadsheet .\ngeorge\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 29 / 2001 02 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : george weissman 05 / 24 / 2001 11 : 27 am\nto : robert cotten / hou / ect @ ect\ncc : daren j farmer / hou / ect , brian m riley / hou / ect @ ect , melissa graves / hou / ect , edward d gottlob / hou / ect @ ect\nsubject : june 2001 wellhead nomination\nthe attachment provides details for a total wellhead nomination for june 2001 of 734 , 436 mmbtu / d . george", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.363+0000", "entityId": 4785, "properties": {"text": "Subject: marathon oil company meter 098 - 6599 nacogodoches co . , tx deal\n705819\n- - - - - - - - - - - - - - - - - - - - - - forwarded by julie meyers / hou / ect on 05 / 29 / 2001 04 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : george weissman 05 / 29 / 2001 03 : 44 pm\nto : julie meyers / hou / ect @ ect\ncc : melissa graves / hou / ect , brian m riley / hou / ect @ ect , mike morris / corp / enron @ enron , tom acton / corp / enron @ enron ( bcc : julie meyers / hou / ect )\nsubject : marathon oil company\nmeter 098 - 6599\nnacogodoches co . , tx\ndeal 705819\njulie , please change 705819 to a term deal and add may at if / hsc less $ 0 . 18 . george\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george weissman / hou / ect on 05 / 29 / 2001 03 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vance l taylor / enron @ enronxgate on 05 / 11 / 2001 02 : 58 pm\nto : kimberlee a bennick / hou / ect @ ect\ncc : brian m riley / hou / ect @ ect , susan smith / enron @ enronxgate , donald p reinhardt / enron @ enronxgate , melissa graves / enron @ enronxgate , george weissman / hou / ect @ ect\nsubject : fw : marathon agreement\nkim ,\nwould you please generate and send a lst purchaser gtc based on the following information :\ndeal maker : brian riley\ncounterparty : marathon oil company\ncontact : ed jaroch\ncontract type : first purchaser gtc\ncontract term : april , may & june 2001\ncontract price : for april only fixed price of $ 5 . 06\nmay facility # 59636\ncounty : nacodoches co . , tx\nplease well listing below :\nif you need additional information , let me know\nthanks ,\nvlt\n- - - - - original message - - - - -\nfrom : riley , brian\nsent : monday , april 16 , 2001 1 : 57 pm\nto : taylor , vance l .\nsubject : marathon agreement\nvance ,\nplease make sure these wells are listed in the well bore dedication with marathon :\nchristian # 1\nchristian # 2\nchristian f - 1\ncharles christian # 1\nffot # 1\ntatum # 1\ntatum # 2\ntatum # 3\nthanks br", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.368+0000", "entityId": 4786, "properties": {"text": "Subject: guadalupe\ni rolled 740208 , 740209 , 740210 and 740235 into june . ena is dealing with guadalupe on deals 819592 , 819594 , 819596 and 819598 . we are backing these deals with aep deals . . . 819593 , 819595 , 819597 and 819599 . there were three george smith ' s in the system so please let him know these deal numbers .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.372+0000", "entityId": 4787, "properties": {"text": "Subject: schedule\nwell , this season we lost mick and o ' neal and picked up daren and plove . i guess i ' ll be on the court more to utilize my quickness since we lost a couple of guards . we have a buy next week to open the season .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.377+0000", "entityId": 4788, "properties": {"text": "Subject: re : nom / actual vols for 24 th\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sabrae zajac / hou / ect on 05 / 30 / 2001 12 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp . from : \" eileen ponton \" 05 / 29 / 2001 08 : 37 am\nto : davilal @ txu . com , cstonel @ txu . com , mjones 7 @ txu . com , hpl . scheduling @ enron . com , liz . bellamy @ enron . com , szajac @ enron . com\ncc :\nsubject : re : nom / actual vols for 24 th\ni will agree with your nomination of 33 . 750\n- - - - - forwarded by eileen ponton / houston / pefs / pec on 05 / 29 / 01 08 : 36 am\n- - - - -\n\" charlie\nstone \" to : \" eileen ponton \"\n, \" melissa jones \"\ncom > , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\n05 / 25 / 01 subject : re : nom / actual vols for 24 th\n04 : 23 pm\nwe do not agree with the \" nominated \" volume .\nour records reflect the following nom . schedule .\n30 rate , eff . 0900 hrs through hour beginning 1400 hrs .\n6 . 250\n60 rate , eff . 1400 hrs through hour beginning 1700 hrs .\n7 . 500\n30 rate , eff . 1700 hrs through hour beginning 0900 hrs .\n20 . 000\ntotal nominated 33 . 750\nplease review your source data and let us know if you agree with the above .\nthanks ,\nccs\n\" eileen ponton \" on 05 / 25 / 2001 04 : 06 : 50 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / energy / txu @ tu , hpl . scheduling @ enron . com , liz . bellamy @ enron . com ,\nszajac @ enron . com\ncc :\nsubject : nom / actual vols for 24 th\nnom mcf mmbtu\n27 , 500 33 , 109 34 , 003", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.382+0000", "entityId": 4789, "properties": {"text": "Subject: hpl nom for may 31 2001\n( see attached file : hplno 531 . xls )\n- hplno 531 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.387+0000", "entityId": 4790, "properties": {"text": "Subject: cobra operating meter # 9748\nthe volume has been revised from 0 to 5 , 000 / d on deal # 137205 effective 5 / 30 & 5 / 31 / 01 .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.392+0000", "entityId": 4791, "properties": {"text": "Subject: hpl nom for june 1 , 2001\n( see attached file : hplno 601 . xls )\n- hplno 601 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.397+0000", "entityId": 4792, "properties": {"text": "Subject: mobil beaumont - may 2001\ndaren ,\ni want to confirm the may midcon volumes for mobil - i think it is 30 , 000 mmbtu / day ?\nplease let me know if i should ask someone else . . .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.401+0000", "entityId": 4793, "properties": {"text": "Subject: enrononline real - time quotes service on reuters\nreuters to provide its customers with enrononline real - time quotes\neffective june 4 , 2001 , reuters has launched a new enrononline real - time quotes service benefiting commodity traders and industry analysts . subscribers to this service will be able to view bids , offers and midpoints as well as high , low and closing midpoint and change from previous day indications for numerous commodity products available on enrononline . subscribers will be able to integrate enrononline real - time quotes with reuters ' news , data and analytical tools to view real - time prices and charts as well as create option models , position reports and other analysis . initially , the quotes will be available for power , natural gas , crude oil and refined products , metals , bandwidth , coal , seafreight , emission allowances and weather derivatives markets in north america and europe .\nfor more information , visit www . reuters . com / enrononlinequotes or call reuters at 1 - 800 - 226 - 3955 . please forward this e - mail to others who may benefit from this service .\ndisclaimer\nall prices presented by reuters through the enrononline real - time quotes service shall not constitute or be deemed , for any purposes , to be an offer by enrononline or enron to enter into any transaction on those or any other terms , and are not available through or deemed to be an offer within any trading products that may be offered by reuters in association with the enrononline real - time quotes service . any use of the enrononline . com website is expressly subject to the terms and conditions contained within the enrononline . com website , including the registration process detailed therein . by presenting this information within the reuters site , enrononline . com is not representing or indicating automatic qualification for access to or use of the enrononline . com website for commodity trading .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.406+0000", "entityId": 4794, "properties": {"text": "Subject: howdy to you too .\nhi ,\nthe number is 281 - 370 - 7838 .\ni did not think of it , but without the pipe one has to balance ones own , doesn ' t one . of course the major problem was the people with hpl , not the counter - parties . who ' s doing that for you guys ?\njen came home for the memorial day weekend so we just bummed around . saw pearl harbor , watched a few dvd ' s , and ate way to much .\nwhen you get time let us know about your \" bad luck \" . i hope jake wasn ' t helping you too much .\ni have been occupying much to much time with our new sound system . we finally chucked our little bookshelf unit and got a pile of yamaha stuff coupled to an equally large stack of klipsch speakers . awesome is the only word to apply . i ' m sure the neighbors are loving the old people next door . ( it ' s a young couple with a baby ) ( not near as nice as the other young couple i know ) .\nrumbling their walls at all hours just makes me feel good . : )\nstock market still sucks , but as long as it pays for groceries and taxes we ' ll be ok .\ni ' m off to get linda ' s gas guzzlin , environment ruining , suv washed and buffed . then i must re - stock my cd - r ' s and load up on some more music . you can see how well i ' m utilizing my time in doing productive things .\nlater ,\nken\np . s . i thought waha was where all the pillaging of california was taking place .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.411+0000", "entityId": 4795, "properties": {"text": "Subject: cornhusker 5 / 01\ndaren :\nplease enter the demand charge on deal 384258 for the may 2001 tenaska iv sale . mike olsen ' s spreadsheet has $ 2 , 069 , 556 . 32 . i already have the agency fee on deal 514353 .\nthanks ,\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 06 / 05 / 2001 11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : michael olsen / enron @ enronxgate on 06 / 05 / 2001 11 : 42 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : cornhusker", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.417+0000", "entityId": 4796, "properties": {"text": "Subject: fw : teco / frontera financial trades\njust fyi\n- - - - - original message - - - - -\nfrom : curry , mike\nsent : tuesday , june 05 , 2001 9 : 21 am\nto : dean , clint ; gilbert - smith , doug ; miller , jeffrey ; wallis , janet h . ; may , tom ; day , smith l .\ncc : tingleaf , drew\nsubject : teco / frontera financial trades\nfyi , i fedexed teco an isda agreement for their review . we need to get this executed in order to do some of the financial trades in power and gas that we want . copies were sent to tom may , jeff miller , and clint dean - - - let me know if anyone else would like a copy .\nregards , - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.421+0000", "entityId": 4797, "properties": {"text": "Subject: fw : ercot\nhere ' s the link to the ercot page .\n- - - - - original message - - - - -\nfrom : imai , rika\nsent : wednesday , june 06 , 2001 3 : 55 pm\nto : hull , bryan\nsubject : re : ercot\nfor the interm , please use the following link\nthere is a limit of 10 connections so not all of the people will necessarily be able to attach to it at once\n- - - - - original message - - - - -\nfrom : hull , bryan\nsent : wednesday , june 06 , 2001 10 : 23 am\nto : imai , rika\nsubject : ercot\nrika ,\nany word on access to the ercot website ?\nthanks ,\nbryan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.426+0000", "entityId": 4798, "properties": {"text": "Subject: associate & analyst mid - year 2001 prc process\nto all supervisors of associates and analysts\nthe associates and analysts will be divided into 4 final ranking meetings for the mid - year 2001 prc . these meetings are scheduled as follows :\nees associate & analyst final meeting - june 8\nebs associate & analyst final meeting - june 19\news / others * associate & analyst final meeting - june 25\nea associate & analyst final meeting - july 9\n* ( ews / others includes associates and analysts from ews , egm , apachi , calme , corp , ecm , eim , eip , enw , esa , ets , eott , hpl , pge , ewc , japan , and enroncredit ) .\nthe associates and analysts will be ranked within the following peer groups :\nanalyst 1 - analysts with up to one year of service ( hired between 3 / 1 / 00 and 2 / 28 / 01 )\nanalyst 2 - analysts with greater than one year of service ( hired prior to 3 / 1 / 00 )\nassociate - all associates hired prior to 3 / 1 / 01\nassociate and analyst ranking process\nanalysts and associates hired on or after 3 / 1 / 01 , will receive feedback only , all others will receive both a prc ranking and feedback .\neach business unit supervisor will be responsible for providing a pre - ranking to the prc rep . the prc reps have access to the consolidated feedback for each assigned associate and analyst . please be sure that you have met with the assigned prc rep prior to the final associate and analyst meeting for your business unit . ( your business unit hr department may choose to set up pre - ranking meetings - check with your hr representative ) . the final ranking for each analyst an associate will be determined through a cross calibration in each of the final meetings . in these final meetings , the analysts and associates will be represented by a prc rep from their business unit who should be familiar with their accomplishments .\nassociate and analyst prc reps\nplease refer to the attached spreadsheet for a list of associates and analysts who will be ranked in these meetings and their prc reps .\ncontact me at extension 35230 if you have any additional questions .\nterry bosien\nhr manager , associate and analyst program", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.431+0000", "entityId": 4799, "properties": {"text": "Subject: re : nom / alloc for june 6 th\nwe agree\n\" eileen ponton \" on 06 / 07 / 2001 10 : 21 : 35 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / energy / txu @ tu , teacton @ aep . com , szajac @ aep . com\ncc :\nsubject : nom / alloc for june 6 th\nnom mcf mmbtu\n0 0 0", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.436+0000", "entityId": 4800, "properties": {"text": "Subject: tenaska iv agency fee\ncan you clarify for me how the agency fee is suppose to be calculated ? i am getting mixed information . i know that we use the higher of the two volumes ( receipts vs . deliveries ) . the question is do we use the nom volume or the actual volume . last month ( march ) , we left the volume at the nom of 45 , 000 / day . in the past , we have changed the volume to the actual daily volume . for april , the actuals are higher than the nom and we would need to bump the volume up to 47 , 089 / day . james armstrong is using the actual volume . the deal for the fee is 514353 .\nmy other problem is that the spreadsheet is choosing the max of three volumes , receipts , deliveries and transport . should the transport volume be in the calculation ? also , mark added some payback volume to the spreadsheet and it is being included in the receipt volume . do i include the payback volume in the calculation of the agency fee if we use the nom ? if you have a copy of the contract that addresses the agency fee , i would like to have a copy . you can fax it to 713 - 571 - 3141 . if none of this makes sense , give me a call and i can try and explain further .\nthanks ,\nmegan\n713 - 571 - 3261", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.442+0000", "entityId": 4801, "properties": {"text": "Subject: pg & e bankruptcy case - - important\nas you may be aware , enron corp . is a member of the official unsecured creditors ' committee appointed in the pacific gas and electric company bankruptcy case . michael tribolet with the risk assessment and control group is enron ' s designated representative on the committee and he is being assisted by lisa mellencamp in the enron north america corp . legal group . please be advised that they will be restricted from disclosing certain of the information that they receive .\nattached are ethical wall procedures regarding confidential information that enron may receive as a member of the committee . it is important that you read the procedures promptly , print the employee certification attached and sign and return the employee certification to the compliance department as directed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.450+0000", "entityId": 4802, "properties": {"text": "Subject: fw : deal 819348\nfyi\n- - - - - original message - - - - -\nfrom : balfour - flanagan , cyndie\nsent : thursday , june 07 , 2001 10 : 08 am\nto : richardson , stacey ; anderson , bridgette ; campos , anthony ; gonzales , sharon\ncc : lamadrid , victor ; hernandez , elizabeth l . ; deming , richard ; osire , ann ; wallumrod , ellen\nsubject : re : deal 819348\ni ' m assuming that since this deal is on the new texas desk , and that no new deals have been negotiated under ces counterparties that this deal is actually a truncated deal that was split to move open production from ena - im texas ( which i believe no longer exists as part of the post - hpl / aep processes ) to ena - im lonestar . the deals have been split several times anderson , bridgette ; campos , anthony ; gonzales , sharon\ncc : lamadrid , victor ; hernandez , elizabeth l . ; deming , richard ; osire , ann ; wallumrod , ellen\nsubject : deal 819348\ni was researching deal 819348 ( ces - midcon texas gas services corp ) and found that it was incorrectly attached to contract 96035432 ( in fact , the gtc firm had three deals attached ) . since one of the deals ended 03 / 31 / 01 , we won ' t bother correcting that one , but this deal needs to be moved . i set up contract 96061912 and attached it today . this deal still needs to be reviewed by cyndie before the cp is inactivated .\nelizabeth , could you please revalidate this deal ?\nmy team , could you please add this one to your daily deal count report ?\nellen , could you please reconfirm if necessary ?\nthanks , all . please let me know if you have any questions .\nsbr x 30569", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.457+0000", "entityId": 4803, "properties": {"text": "Subject: firm transportation proposal - lone star kerrville\ndaren ,\nper your requests attached is a 1 year proposal for firm transportation on\noasis to deliver gas to lone star kerrville . if you have any questions ,\nplease feel free to give me a call .\njohn lopez\n- enakerville . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.464+0000", "entityId": 4804, "properties": {"text": "Subject: rfp - sep 01 - aug 02\nreturn receipt\nyour rfp - sep 01 - aug 02\ndocument :\nwas received les holton / lsg / enserch / us\nby :\nat : 03 : 59 : 13 pm today", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.469+0000", "entityId": 4805, "properties": {"text": "Subject: tristar gas company may 2001\ni have a problem with tristar for may 2001 . the deal number is 779345 . they sent me an invoice for 40 , 000 from the 24 th to the 31 st at $ 3 . 975 . in our deal , we only have 6 , 000 on the 24 th at $ 3 . 975 . did you do a deal for 40 , 000 ? i can ' t find a deal on oasis or on hpl for this amount .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.474+0000", "entityId": 4806, "properties": {"text": "Subject: the review is in . . . . . .\nhey daren - -\nhere is my brief review of mike . . . . . let me know if you have any questions .\n( see attached file : molsen . doc )\nthanks ,\nmark\n- molsen . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.479+0000", "entityId": 4807, "properties": {"text": "Subject: tenaska iv 4 / 01\nplease change the demand fee on deal 384258 for april from $ 2 , 862 , 531 . 95 to $ 2 , 855 , 089 . 73 . we need to return some money to tenaska iv . the transport expenses are less than what was etimated on the spreadsheet .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.484+0000", "entityId": 4808, "properties": {"text": "Subject: flood pictures from the tunnels under pennzoil place in downtown\nhouston\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nget a low apr nextcard visa in 30 seconds !\n1 . fill in the brief application\n2 . receive approval decision within 30 seconds\n3 . get rates as low as 2 . 99 % intro or 9 . 99 % ongoing apr and no\nannual fee !\napply now !\nhttp : / / www . bcentral . com / listbot / nextcard\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.489+0000", "entityId": 4809, "properties": {"text": "Subject: re : noms / actuals for june 11 th & 12 th\nwe agree\n\" eileen ponton \" on 06 / 13 / 2001 02 : 54 : 04 pm\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / energy / txu @ tu , teacton @ aep . com , slzajac @ aep . com\ncc : \" jerry k . yager \"\nsubject : noms / actuals for june 11 th & 12 th\ndate nom mcf mmbtu\n6 / 11 / 01 60 . 000 89 . 662 92 . 083\n6 / 12 / 01 53 . 750 83 . 642 85 . 900\njerry , please double check the flow volumes for the 11 th & 12 th due to the\nlarge difference between nominations & flow volumes . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.493+0000", "entityId": 4810, "properties": {"text": "Subject: nesa / hea ' s 24 th annual meeting\nsaddle up for nesa / hea ' s 24 th annual meeting\n\" deep in the heart of texas \"\nseptember 9 - 11 , 2001\nhyatt regency hill country resort\nsan antonio , texas\nthe annual meeting planning committee has put together an outstanding\nprogram for your review . it is attached below in an adobe acrobat pdf file\n- if you have problems with the attachment please call nesa / hea\nheadquarters at ( 713 ) 856 - 6525 and we ' ll mail or fax a copy out immediately .\ngeneral session topics include :\n* will tomorrow ' s restructured electric infrastructure support\ntomorrow ' s economy ?\n* power deregulation panel : developer / ipp , utility / transmission , power\nmarketer , government , retail\n* power demand\n* the state of the energy industry\n* new political administration - impact on energy policy and\nenvironment\nnetworking opportunities :\n* opening reception - sunday , september 9\n* golf tournament & tours of area attractions - monday , september 10\nthe hyatt regency hill country resort has a limited block of rooms available\nfor nesa / hea members and guests - be sure to check page 6 for lodging\ninformation and make your reservation as soon as possible .\nwe hope that you take this opportunity to meet with your colleagues and\ncustomers in this relaxing yet professional environment to exchange ideas on\nmatters of importance covering a broad spectrum of subjects . the annual\nmeeting agenda includes timely issues presented by knowledgeable industry\nleaders who will discuss formidable and thought provoking issues affecting\nthe energy industry today .\nplease take a moment to review the attached brochure . nesa / hea encourages\nand appreciates you taking the time to pass the brochure on to industry\npersonnel who would benefit from participating at this conference .\nnesa / hea ' s 24 th annual meeting\neducating the energy professional\nto unsubscribe from the nesa / hea member email blast list please respond to\nthis email with the word unsubscribe typed into the subject field . this\nwill preclude you from receiving any email blasts in the future , but hard\ncopies of the material will be sent to your attention .\n>\n- 512 _ nesa 2001 annlmtgjam . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.498+0000", "entityId": 4811, "properties": {"text": "Subject: fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nunable to add may production as contract needs to be exteneded .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , june 14 , 2001 1 : 33 pm\nto : hernandez , elizabeth l .\nsubject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nimportance : high\nelizabeth ,\ncan you extend the contract with d & h under deal 70120 for 1 month to cover this volume ?\nd\n- - - - - original message - - - - -\nfrom : tnray @ aep . com @ enron [ mailto : imceanotes - tnray + 40 aep + 2 ecom + 40 enron @ enron . com ]\nsent : thursday , june 14 , 2001 11 : 44 am\nto : dfarmer @ enron . com\nsubject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\nimportance : high\ndaren ,\nper my e - mail to julie and her reply ( see below ) , can you help me with\nthis ?\nthanks !\ntess\n- - - - - forwarded by tessie n ray / aepin on 06 / 14 / 01 11 : 44 am - - - - -\njulie l meyers\nto : tessie n ray / aepin @ aepin\n06 / 14 / 01 10 : 58 cc :\nam subject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\n( document link : tessie n ray )\ni did a search and found no deals for may for this counterparty . call\ndaren farmer at 713 - 853 - 6905 , and he could probably put the deal in for\nyou .\n( embedded image moved to file : picl 6827 . pcx ) tessie n ray\n06 / 13 / 2001 03 : 44 pm\nto : julie l meyers / hol / aepin @ aepin\ncc : elizabeth . hernandez @ enron . com\nsubject : 05 / 01 ena gas sales on hpl , to d & h gas company\n( embedded\nimage moved ( embedded image moved to file : pico 0491 . pcx )\nto file :\npico 9961 . pcx )\njulie -\nneed your help again . . . .\nd & h gas company , faxed their 05 / 01 volume support for hpl meter 428\n( 980428 ) , whihc reflects ena gas sales to d & h for 5 / 11 / 01 , 143 mmbtu and\n5 / 31 / 01 for 286 mmbtu for a total of 429 mmbtu for 05 / 01 . he deal last\nmonth ( 04 / 01 ) , was sa - 70120 . i don ' t have see a sales draft under ena or\nhpl for 05 / 01 sales to d & h , nor do i see any 05 / 01 sales deal under\nsa - 70120 .\ncan you assist me in finding out if there was a sale to d & h in 05 / 01 , and\nif so , what is the deal number and where is sales draft ?\nthanks !\ntess\n- picl 6827 . pcx\n- pico 9961 . pcx\n- pico 0491 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.503+0000", "entityId": 4812, "properties": {"text": "Subject: re : 05 / 01 ena gas sales on hpl , to d & h gas company\ndaren ,\nper my e - mail to julie and her reply ( see below ) , can you help me with\nthis ?\nthanks !\ntess\n- - - - - forwarded by tessie n ray / aepin on 06 / 14 / 01 11 : 44 am - - - - -\njulie l meyers\nto : tessie n ray / aepin @ aepin\n06 / 14 / 01 10 : 58 cc :\nam subject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\n( document link : tessie n ray )\ni did a search and found no deals for may for this counterparty . call\ndaren farmer at 713 - 853 - 6905 , and he could probably put the deal in for\nyou .\n( embedded image moved to file : picl 6827 . pcx ) tessie n ray\n06 / 13 / 2001 03 : 44 pm\nto : julie l meyers / hol / aepin @ aepin\ncc : elizabeth . hernandez @ enron . com\nsubject : 05 / 01 ena gas sales on hpl , to d & h gas company\n( embedded\nimage moved ( embedded image moved to file : pico 0491 . pcx )\nto file :\npico 9961 . pcx )\njulie -\nneed your help again . . . .\nd & h gas company , faxed their 05 / 01 volume support for hpl meter 428\n( 980428 ) , whihc reflects ena gas sales to d & h for 5 / 11 / 01 , 143 mmbtu and\n5 / 31 / 01 for 286 mmbtu for a total of 429 mmbtu for 05 / 01 . he deal last\nmonth ( 04 / 01 ) , was sa - 70120 . i don ' t have see a sales draft under ena or\nhpl for 05 / 01 sales to d & h , nor do i see any 05 / 01 sales deal under\nsa - 70120 .\ncan you assist me in finding out if there was a sale to d & h in 05 / 01 , and\nif so , what is the deal number and where is sales draft ?\nthanks !\ntess\n- picl 6827 . pcx\n- pico 9961 . pcx\n- pico 0491 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.508+0000", "entityId": 4813, "properties": {"text": "Subject: fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\ndeal 70120 has been extended through may 31 , 2001 .\n- - - - - original message - - - - -\nfrom : hernandez , elizabeth l .\nsent : friday , june 15 , 2001 9 : 14 am\nto : richardson , stacey\nsubject : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\ncan you help me out with this .\n- - - - - original message - - - - -\nfrom : lambert , karen\nsent : friday , june 15 , 2001 9 : 11 am\nto : hernandez , elizabeth l .\nsubject : fw : fw : 05 / 01 ena gas sales on hpl , to d huthmacher , tammie ; aalland @ aep . com\nsubject : re : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nthe contract ( 96007529 ) should have expired under ena , but because of the timing of the expiration , it got \" assigned \" to aep / hpl ( 96060798 ) . therefore , for informational / historical purposes , i extended the term under 96060798 thru 5 / 31 / 01 .\nsomeone from linda ' s group will have to extend the term under the original contract in order for the deal to be attached .\nfrom : karen lambert / enron @ enronxgate on 06 / 14 / 2001 04 : 34 pm\nto : linda s bryan / enron @ enronxgate , cheryl dudley / hou / ect @ ect\ncc : tammie huthmacher / enron @ enronxgate\nsubject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nfyi\n- - - - - original message - - - - -\nfrom : hernandez , elizabeth l .\nsent : thursday , june 14 , 2001 1 : 44 pm\nto : lambert , karen\ncc : farmer , daren j .\nsubject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nimportance : high\nunable to add may production as contract needs to be exteneded .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , june 14 , 2001 1 : 33 pm\nto : hernandez , elizabeth l .\nsubject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nimportance : high\nelizabeth ,\ncan you extend the contract with d & h under deal 70120 for 1 month to cover this volume ?\nd\n- - - - - original message - - - - -\nfrom : tnray @ aep . com @ enron [ mailto : imceanotes - tnray + 40 aep + 2 ecom + 40 enron @ enron . com ]\nsent : thursday , june 14 , 2001 11 : 44 am\nto : dfarmer @ enron . com\nsubject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\nimportance : high\ndaren ,\nper my e - mail to julie and her reply ( see below ) , can you help me with\nthis ?\nthanks !\ntess\n- - - - - forwarded by tessie n ray / aepin on 06 / 14 / 01 11 : 44 am - - - - -\njulie l meyers\nto : tessie n ray / aepin @ aepin\n06 / 14 / 01 10 : 58 cc :\nam subject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\n( document link : tessie n ray )\ni did a search and found no deals for may for this counterparty . call\ndaren farmer at 713 - 853 - 6905 , and he could probably put the deal in for\nyou .\n( embedded image moved to file : picl 6827 . pcx ) tessie n ray\n06 / 13 / 2001 03 : 44 pm\nto : julie l meyers / hol / aepin @ aepin\ncc : elizabeth . hernandez @ enron . com\nsubject : 05 / 01 ena gas sales on hpl , to d & h gas company\n( embedded\nimage moved ( embedded image moved to file : pico 0491 . pcx )\nto file :\npico 9961 . pcx )\njulie -\nneed your help again . . . .\nd & h gas company , faxed their 05 / 01 volume support for hpl meter 428\n( 980428 ) , whihc reflects ena gas sales to d & h for 5 / 11 / 01 , 143 mmbtu and\n5 / 31 / 01 for 286 mmbtu for a total of 429 mmbtu for 05 / 01 . he deal last\nmonth ( 04 / 01 ) , was sa - 70120 . i don ' t have see a sales draft under ena or\nhpl for 05 / 01 sales to d & h , nor do i see any 05 / 01 sales deal under\nsa - 70120 .\ncan you assist me in finding out if there was a sale to d & h in 05 / 01 , and\nif so , what is the deal number and where is sales draft ?\nthanks !\ntess\n- picl 6827 . pcx\n- pico 9961 . pcx\n- pico 0491 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.513+0000", "entityId": 4814, "properties": {"text": "Subject: cdnow order confirmation\ndear daren ,\nthank you for shopping at cdnow .\nthis email is to confirm your order number 30320418 .\nto check the status of this order or to make any changes , click or\ncopy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 30320418\nyou can also access your order history directly from our homepage .\nyou have ordered the following item :\ncory morrow : man that i ' ve been ( cd )\nthis will ship via u . s . postal service .\nthe shipping address for this order is :\ndaren farmer\n2747 meadowtree ln\nspring , tx 77388\nyour order total is $ 15 . 48 .\nplease note , at cdnow , we will accept the return of any unopened item ,\nexcept vinyl recordings , within 30 days of delivery for a full refund\nof the purchase price ( minus shipping and handling ) .\nwhat ever happened to a - ha ? ralph macchio ? catch up with old friends and\nsee our list of the top ' 80 s one hit wonders when you visit \" it came\nfrom the ' 80 s : then and now . \" your trip down memory lane begins here :\nplease do not reply to this email . if you have questions about your\norder that are not addressed in your online order history , please visit\nour contact cdnow page using this link :\nhttp : / / cdnow . com / service\nthis order is worth 130 fast forward rewards ( tm ) program\npoints . these \" points pending \" will appear in your membership summary as\n\" points earned \" after your order has shipped .\nthanks again for shopping at cdnow .\nsincerely ,\ncdnow customer service\nnever miss a beat .\ncdnow , inc .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.518+0000", "entityId": 4815, "properties": {"text": "Subject: re : gas nom ' s\nwe ' ve talked this over at this end and agree we should be taking the following approach :\nremind brazos that under exhibit 7 . 12 , page 2 of the ppa , brazos is precluded on any gas day from taking a greater volume of gas than the plant ' s mdq ( 45 , 000 dth / d ) less the amount needed to satisfy its generation request .\nthe partnership will accept total gas nominations as generation first , gas for resale second . if brazos ' electric nominations by hour would , given ambient conditions , cause us to use at or above the plant ' s mdq under its contracts with apache / williams ( 45 , 000 dth / d ) , gas nominations will be zero . this needs to be handled between the operators . i ' ve emphasized \" at or above \" on purpose ; if an all electric nomination would cause brazos to burn in excess of 45 , 000 dth per day , we will honor that request ( we ' re looking at this with the attorneys and may choose at a future date to change the way this has been administered in the past , as this situation currently causes the partnership to incur an economic loss ) .\nafter being notified of the need for a schedule adjustment , brazos is free to reset its hourly electric nominations to allow for gas deliveries to the extent it desires ( provided they ' re still capped at 45 , 000 dth / d if they take gas ) . whenever they go this route , however , we need to hold them to the electric nomination ( i . e . , they should get a courtesy call from an operator each and every time they go over the nominated electricity amount ) . remind brazos that under the ppa , they will be billed for penalties associated with not adhering to their electric nominations on days on which they ' ve elected to take gas .\nif the issue of precedent comes up , remind them that we ' re operating in a new territory and that electric - gas nominations have only been made over the past 7 months ; it wasn ' t until recently that we ' ve been able to attribute imbalance penalties to brazos , which has caused us to look at the scheduling provisions of the agreement much more closely .\nas a show of good faith , we should also make an attempt to track gas consumed / nominated for redelivery and advise them toward the end of the month of opportunities to up their gas nominations .\nhope this helps to clarify where we are .\nrh\n- - - - - original message - - - - -\nfrom : \" ken riesz \" @ enron [ mailto : imceanotes - + 22 ken + 20 riesz + 22 + 20 + 3 cken + 2 eriesz + 40 naes + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : friday , june 15 , 2001 4 : 27 pm\nto : mazowita , mike ; hill , garrick ; ward , charles\nsubject : gas nom ' s\nchuck ,\ni just wanted to make sure everyone has the same undertstanding of the gas\nnominations and usage issue . today with this most recent daily nomination\nrevision from brazos , brazos ( waco ) now understands that we are going to hold\nthem to 45 , 000 mbtu ' s when they are requesting electrical generation and gas\nenergy . however , i want everone of us to understand that a nomination from\nbrazos for a 6312 mwh , s ( 263 / hr ) , will require the plant to utilize 47 , 500 to\n48 , 500 mbtu ' s at this ambient temperature to deliver the requested energy .\nto allow brazos any gas the total delivered electrical energy would have to\nbe something less than 258 mw loading per hour .\nregards , ken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.523+0000", "entityId": 4816, "properties": {"text": "Subject: project \" miracle \"\nas you may know , the generation investments group is in discussions with el paso on the sale of upstream equity interests in the cleburne , tx generating facility . as part of el paso ' s diligence , they ' ve asked to meet with our experts in tax , insurance and gas management matters pertaining to the facility on thursday , june 21 or friday , june 22 . we intend to schedule three separate meetings in either the enron building or 3 ac . please let me know what your availability is for a meeting on your area of expertise on either of those two days .\nthanks .\nrick hill\ngeneration investments group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.529+0000", "entityId": 4817, "properties": {"text": "Subject: cdnow shipment confirmation\ndear daren ,\nthank you for shopping at cdnow . please keep this email invoice for\nyour records .\non june 16 we shipped your order number 30320418 for the following item :\ncory morrow : man that i ' ve been\nformat : cd quantity : 1 price : 12 . 49\nto the following address via u . s . postal service :\ndaren farmer\n2747 meadowtree ln\nspring , tx 77388\ntotal number of items : 1\nsubtotal : $ 12 . 49\nshipping : $ 2 . 99\nsales tax : $ 0 . 00\n- - - - - - - - - -\nshipment total : $ 15 . 48\nyour order was billed to daren farmer . this shipment completes your\norder and is paid in full .\nmost orders arrive within 4 - 8 business days . however , in rare instances\nit may take up to 2 weeks .\nplease note , at cdnow , we will accept the return of any unopened item ,\nexcept vinyl recordings , within 30 days of delivery for a full refund\nof the purchase price ( minus shipping and handling ) .\nwhat ever happened to a - ha ? ralph macchio ? catch up with old friends and\nsee our list of the top ' 80 s one hit wonders when you visit \" it came\nfrom the ' 80 s : then and now . \" your trip down memory lane begins here :\nevguide is the one - stop place for online shoppers to find online value .\nplease visit http : / / www . evguide . com for :\n? big savings from the best sites on the web\n? free 1 - year subscription to the magazine of your choice\n? win a $ 50 , 000 online shopping spree\nall this and more at :\nfor complete information about your order ( number 30320418 ) or to\nconfirm the status , click or copy / paste this link into your web browser :\nhttp : / / cdnow . com / myorder / otid = 30320418\nyou can also access your order history directly from our homepage .\nplease do not reply to this email . if you have questions about your order that are not addressed in your online order history , please visit our contact cdnow page using this link :\nhttp : / / cdnow . com / service\nfast forward rewards ( tm ) program points for this order will\nbe credited in your membership summary as \" points earned . \"\nthanks again for your order .\nsincerely ,\ncdnow customer service\nnever miss a beat .\ncdnow , inc .\nhttp : / / cdnow . com\naol keyword : cdnow\n1757978", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.533+0000", "entityId": 4818, "properties": {"text": "Subject: re : project \" miracle \"\nthursday , june 21 is good for me . let me know where you would like to meet .\njim\n- - - - - original message - - - - -\nfrom : hill , garrick\nsent : fri 6 / 15 / 2001 6 : 26 pm\nto : curry , jim ; gockerman , matthew f . ; marshall , david ; farmer , daren j .\ncc : seade , jerry\nsubject : project \" miracle \"\nas you may know , the generation investments group is in discussions with el paso on the sale of upstream equity interests in the cleburne , tx generating facility . as part of el paso ' s diligence , they ' ve asked to meet with our experts in tax , insurance and gas management matters pertaining to the facility on thursday , june 21 or friday , june 22 . we intend to schedule three separate meetings in either the enron building or 3 ac . please let me know what your availability is for a meeting on your area of expertise on either of those two days .\nthanks .\nrick hill\ngeneration investments group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.539+0000", "entityId": 4819, "properties": {"text": "Subject: re : defs 2001\ndaren :\ni needed the demand charge for april entered on supply deal 229758 . it can stay on sale deal 157278 if you want , but it will need to be changed to a negative demand charge .\nmegan\nfrom : daren j farmer / enron @ enronxgate on 06 / 19 / 2001 03 : 24 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : defs 2001\ndone .\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : tuesday , june 19 , 2001 3 : 12 pm\nto : farmer , daren j .\nsubject : defs 2001\ni have some changes to the defs deals for 2001 . we need to add demand fees for the over delivery and excess charges . i have attached the spreadsheets in case you need them .\nprod . deal demand fee\nfeb 2001 157278 $ 11 , 903 . 17\nmarch 2001 157278 $ 294 . 85\napril 2001 229758 $ 308 . 53\n> > >\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.545+0000", "entityId": 4820, "properties": {"text": "Subject: defs 2001\ni have some changes to the defs deals for 2001 . we need to add demand fees for the over delivery and excess charges . i have attached the spreadsheets in case you need them .\nprod . deal demand fee\nfeb 2001 157278 $ 11 , 903 . 17\nmarch 2001 157278 $ 294 . 85\napril 2001 229758 $ 308 . 53\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.554+0000", "entityId": 4821, "properties": {"text": "Subject: inter / intra gisb for enron north america\ni forwarded these contract forms to you on may 25 for your review . do i need to\nresend them ?\nkeith ford\ntxu fuel company\ncontract administration supervisor\n- - - - - - - - - - - - - - - - - - - - - - forwarded by keith ford / bizsrv / txu on 06 / 19 / 2001 11 : 04 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nlynn handlin\n06 / 18 / 2001 10 : 19 am\nto : dfarmer @ enron . com , keith ford / bizsrv / txu @ tu\ncc :\nsubject : inter / intra gisb for enron north america\nplease forward an inter / intra gisb asap to enron north america or whatever name\nthey want to use for their new contracts .\ndarren - please note that we do not take any changes to the gisb ' s that keith\nwill be forwarding .\ndarren ' s email is dfarmer @ enron . com\nthanks for your help ! let me know the number as soon as possibe - so i can\nupdate our records .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.561+0000", "entityId": 4822, "properties": {"text": "Subject: re : tenaska iv - cleburne plant\ndarren , i will be meeting with sandi in the morning to get a download . i will get with you after that to assess where we need to go . thanks .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : tuesday , june 19 , 2001 1 : 43 pm\nto : nemec , gerald\nsubject : tenaska iv - cleburne plant\ngerald ,\ni understand that you will be taking on some of sandi ' s projects since she left the company . i have been working with sandi on an agency agreemtent between ena and tenaska iv partners , related to the gas supply for the cleburne plant . has she brought you up to speed on what we need ? we are looking into selling our stake in the plant and need to finalize the agreement as soon as we can . please let me know what you need to finish this . thanks .\ndaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.566+0000", "entityId": 4823, "properties": {"text": "Subject: project miracle - gas diligence\ndoes this work for you ? also , where are we on the gas management agreement ? ? ? ?\n- - - - - original message - - - - -\nfrom : \" motley , tom \" @ enron [ mailto : imceanotes - + 22 motley + 2 c + 20 tom + 22 + 20 + 3 ctom + 2 emotley + 40 elpaso + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : tuesday , june 19 , 2001 12 : 50 pm\nto : hill , garrick\nsubject : re : gas diligence\nrick as i suspected our lead gas contracts guy will be in new jersey on\nthursday . he will be back in town and can meet anytime on friday if it suits\nyour folks .\n- - - - - original message - - - - -\nfrom : hill , garrick [ mailto : garrick . hill @ enron . com ]\nsent : monday , june 18 , 2001 1 : 13 pm\nto : tom motley ( e - mail )\nsubject : gas diligence\nfurther to my earlier e - mail , we ' ll be able to accommodate a meeting on\ngas matters on thursday as well ; i ' d suggest 1 : 00 pm , same location .\nregards ,\nrick hill\ngeneration investments group\nthis email and any files transmitted with it from the elpaso\ncorporation are confidential and intended solely for the\nuse of the individual or entity to whom they are addressed .\nif you have received this email in error please notify the\nsender .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.571+0000", "entityId": 4824, "properties": {"text": "Subject: tenaska iv 5 / 01\nplease change the demand fee for may 2001 on deal 384258 from $ 2 , 069 , 556 . 32 to $ 2 , 026 , 347 . 17 . the williams supply was less than what the spreadsheet calculated .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.576+0000", "entityId": 4825, "properties": {"text": "Subject: fw : 05 / 01 deal # 649741\ncould you please help me out with this . i ' ve called gary lamphier , but no response and client services needs to get an answer .\n- - - - - original message - - - - -\nfrom : mendoza , genaro\nsent : monday , june 18 , 2001 3 : 20 pm\nto : hernandez , elizabeth l .\nsubject : 05 / 01 deal # 649741\nelizabeth ,\ndeal # 649741 is a 05 / 01 sale to bp energy . bp is claiming that this deal should have been invoiced by hpl and not ena . my contact also claims that this was confirmed by gary lamphier . i am not sure if gary is with ena or hpl . is this something you can look into or do i need to send this to someone else ?\nthanks ,\ngenaro", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.581+0000", "entityId": 4826, "properties": {"text": "Subject: re : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\nelizabeth ,\nhas contract expired ? unable to get deal to come across to unify\nsettlements .\nthanks !\ntess\n\" farmer , daren\nj . \" to :\nsubject : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas\ncompany\n06 / 15 / 01 11 : 07\nam\n> - - - - - original message - - - - -\n> from : hernandez , elizabeth l .\n> sent : friday , june 15 , 2001 11 : 05 am\n> to : farmer , daren j .\n> subject : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> deal 70120 has been extended through may 31 , 2001 .\n>\n>\n> - - - - - original message - - - - -\n> from : hernandez , elizabeth l .\n> sent : friday , june 15 , 2001 9 : 14 am\n> to : richardson , stacey\n> subject : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> can you help me out with this .\n>\n> - - - - - original message - - - - -\n> from : lambert , karen\n> sent : friday , june 15 , 2001 9 : 11 am\n> to : hernandez , elizabeth l .\n> subject : fw : fw : 05 / 01 ena gas sales on hpl , to d huthmacher , tammie ; aalland @ aep . com\n> subject : re : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> the contract ( 96007529 ) should have expired under ena , but because of\n> the timing of the expiration , it got \" assigned \" to aep / hpl ( 96060798 ) .\n> therefore , for informational / historical purposes , i extended the term\n> under 96060798 thru 5 / 31 / 01 .\n>\n> someone from linda ' s group will have to extend the term under the\n> original contract in order for the deal to be attached .\n>\n>\n>\n>\n> from : karen lambert / enron @ enronxgate on 06 / 14 / 2001 04 : 34 pm\n> to : linda s bryan / enron @ enronxgate , cheryl dudley / hou / ect @ ect\n> cc : tammie huthmacher / enron @ enronxgate\n>\n> subject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> fyi\n>\n> - - - - - original message - - - - -\n> from : hernandez , elizabeth l .\n> sent : thursday , june 14 , 2001 1 : 44 pm\n> to : lambert , karen\n> cc : farmer , daren j .\n> subject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n> importance : high\n>\n> unable to add may production as contract needs to be exteneded .\n>\n> - - - - - original message - - - - -\n> from : farmer , daren j .\n> sent : thursday , june 14 , 2001 1 : 33 pm\n> to : hernandez , elizabeth l .\n> subject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n> importance : high\n>\n> elizabeth ,\n>\n> can you extend the contract with d & h under deal 70120 for 1 month to\n> cover this volume ?\n>\n> d\n>\n> - - - - - original message - - - - -\n> from : tnray @ aep . com @ enron\n> [ mailto : imceanotes - tnray + 40 aep + 2 ecom + 40 enron @ enron . com ]\n> sent : thursday , june 14 , 2001 11 : 44 am\n> to : dfarmer @ enron . com\n> subject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\n> importance : high\n>\n> daren ,\n> per my e - mail to julie and her reply ( see below ) , can you help me with\n> this ?\n>\n> thanks !\n> tess\n> - - - - - forwarded by tessie n ray / aepin on 06 / 14 / 01 11 : 44 am - - - - -\n>\n> julie l meyers\n> to : tessie n\n> ray / aepin @ aepin\n> 06 / 14 / 01 10 : 58 cc :\n> am subject : re : 05 / 01 ena\n> gas sales on hpl , to d & h gas company\n> ( document link : tessie n ray )\n>\n>\n>\n>\n> i did a search and found no deals for may for this counterparty . call\n> daren farmer at 713 - 853 - 6905 , and he could probably put the deal in\n> for\n> you .\n>\n>\n>\n>\n> ( embedded image moved to file : picl 6827 . pcx ) tessie n ray\n> 06 / 13 / 2001 03 : 44 pm\n>\n>\n> to : julie l meyers / hol / aepin @ aepin\n> cc : elizabeth . hernandez @ enron . com\n>\n> subject : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> ( embedded\n> image moved ( embedded image moved to file : pico 0491 . pcx )\n> to file :\n> pico 9961 . pcx )\n>\n>\n>\n>\n>\n>\n> julie -\n> need your help again . . . .\n> d & h gas company , faxed their 05 / 01 volume support for hpl meter 428\n> ( 980428 ) , whihc reflects ena gas sales to d & h for 5 / 11 / 01 , 143 mmbtu\n> and\n> 5 / 31 / 01 for 286 mmbtu for a total of 429 mmbtu for 05 / 01 . he deal last\n> month ( 04 / 01 ) , was sa - 70120 . i don ' t have see a sales draft under\n> ena or\n> hpl for 05 / 01 sales to d & h , nor do i see any 05 / 01 sales deal under\n> sa - 70120 .\n>\n> can you assist me in finding out if there was a sale to d & h in 05 / 01 ,\n> and\n> if so , what is the deal number and where is sales draft ?\n>\n> thanks !\n> tess\n>\n>\n>\n>\n>\n> - picl 6827 . pcx >\n> - pico 9961 . pcx >\n> - pico 0491 . pcx >\n>\n>\n>\n( see attached file : picl 6827 . pcx )\n( see attached file : pico 9961 . pcx )\n( see attached file : pico 0491 . pcx )\n- picl 6827 . pcx\n- pico 9961 . pcx\n- pico 0491 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.586+0000", "entityId": 4827, "properties": {"text": "Subject: fw : tenaska iv meeting list . xls\nfyi . consider the meeting time shown in the attached as firm ; i ' ll work on the location and get back to you on it .\nrh\n- - - - - original message - - - - -\nfrom : \" motley , tom \" @ enron [ mailto : imceanotes - + 22 motley + 2 c + 20 tom + 22 + 20 + 3 ctom + 2 emotley + 40 elpaso + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : wednesday , june 20 , 2001 4 : 48 pm\nto : hill , garrick\ncc : field , david\nsubject : tenaska iv meeting list . xls\n>\nthis should be a fairly accurate list of those attending the various\nmeetings from elpaso . please make sure i got the times right .\nthis email and any files transmitted with it from the elpaso\ncorporation are confidential and intended solely for the\nuse of the individual or entity to whom they are addressed .\nif you have received this email in error please notify the\nsender .\n- tenaska iv meeting list . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.591+0000", "entityId": 4828, "properties": {"text": "Subject: valero rfp and gas data\ndaren ,\ntom martin wanted me to send you this info regarding the valero rfp that janet has as well . gas data is on the excel sheet , rfp in the word document has pipeline interconnects in appendix d . if you have any questions , don ' t hesitate to call me .\nthanks ,\nlarry jester\nenron power marketing inc .\nphone : 713 - 853 - 5266\nfax : 713 - 646 - 8272\n- - - - - original message - - - - -\nfrom : jester , larry\nsent : thursday , june 21 , 2001 9 : 39 am\nto : wallis , janet h .\ncc : ahn , chris\nsubject : fw : valero ' s confidential natural gas consumption data\njanet ,\ni ' m working with chris on the valero rfp . here is the 2000 data for valero ' s gas consumption . david dyck at valero did indicate that they would prefer one single supplier for the corpus christi # 2 facility in particular .\nthanks ,\nlarry jester\nenron power marketing inc .\nphone : 713 - 853 - 5266\nfax : 713 - 646 - 8272\n- - - - - original message - - - - -\nfrom : @ enron [ mailto : imceanotes - + 3 cdyckd + 40 valero + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : thursday , june 21 , 2001 8 : 12 am\nto : jester , larry ; buerkle , jim\nsubject : valero ' s confidential natural gas consumption data\nlarry and jim ,\nthank you for expressing your interest in responding to valero energy\ncorporation ' s request for proposals for natural gas supplies . please find\nattached a file containing daily consumption data for most of valero ' s\nmajor facilities in texas , california and new jersey . certain other smaller\naccounts such as valero ' s asphalt plants in california and texas are not\nrepresented at this time . in lieu of daily data for these accounts , valero\nintends to provide summary level data in the near future . daily data for\nthe clearlake methanol plant will be provided at a later date when it\nbecomes available . in the meantime , please refer to the rfp for the summary\ndata and associated discussion regarding the market environment for\ndomestic methanol production .\nplease treat the provided data as confidential per the confidentiality\nagreement executed between valero and your company . power use data has been\nsent via overnight mail . as questions arise , please send them to my\nattention .\nthanks ,\ndave\n( see attached file : valero _ facilities _ natgas . xls )\n- valero _ facilities _ natgas . xls [ larry jester ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.597+0000", "entityId": 4829, "properties": {"text": "Subject: txu fuel deal # 789355\nplease verify the price for txu fuel deal # 789355 on 5 / 17 . sitara currently shows $ 4 . 40 but txu called me and they show $ 4 . 37 for that day .\nplease let me know if you have any questions .\nthanks ,\nrebecca", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.602+0000", "entityId": 4830, "properties": {"text": "Subject: trv notification : ( waha - 06 / 21 / 2001 )\nthe report named : waha , published as of 06 / 21 / 2001 is now available for viewing on the website .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.608+0000", "entityId": 4831, "properties": {"text": "Subject: http : / / 208 . 246 . 87 . 65 / info _ postings / capacity / op _ point _ index . asp\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.612+0000", "entityId": 4832, "properties": {"text": "Subject: duke energy trading and marketing , l . l . c .\ni have two outstanding pricing issues that i tried to resolve with gary lamphier , but didn ' t have any luck . these deals are both day deals for february 2001 done by danny conner . the customer is showing a pricing difference according to what we have in sitara . can you please help me resolve this pricing issue .\nsitara deal # sitara price customer price\n627800 $ 5 . 25 $ 5 . 23\n598392 $ 5 . 78 $ 5 . 77", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.617+0000", "entityId": 4833, "properties": {"text": "Subject: project miracle - gas meeting\nfyi . today ' s meeting at 1 : 00 pm will be in 3 allen center , conference room 18 c 2 . those attending from el paso may go directly to the 18 th floor and will be met in the elevator bank lobby .\nrh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.622+0000", "entityId": 4834, "properties": {"text": "Subject: re : epgt\ngloria , the difference between the two pipes for july 2000 is the actuals came in lower than what was nominated and scheduled on mops . there isn ' t anything we can do about that difference , hopefully there is some kind of oba that takes those variances .\nsabra\n- - - - - original message - - - - -\nfrom : barkowsky , gloria g .\nsent : friday , june 22 , 2001 4 : 50 pm\nto : garcia , clarissa ; farmer , daren j . ; dinari , sabra l .\nsubject : epgt\nclarissa - thanks so much for all your help with this pipe ! everything looks great . i just have a couple of paths\nthat i need to finish it :\njanuary 2000 - i need deal # 854688 pathed for epgt and for tetc . according to the invoice , we should have\n11 , 129 dth on the interconnect .\nfebruary 2000 - i need deal # 871184 pathed for hpl and chan . hpl should have 3 , 600 dth and chan should\nhave 11 , 500 dth on the interconnect .\njuly 2000 - deal # 871172 has an interconnect issue . according to mops contract # 105124 , they received 8 , 275 dth\non the matagorda 624 , but according to epgt , they delivered 10 , 362 dth to hpl ( ? ) could this possibly\nneed to be split somehow , or do you have any other ideas ?\nlet me know . thanks , gloria 3 - 7118", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.626+0000", "entityId": 4835, "properties": {"text": "Subject: epgt\nclarissa - thanks so much for all your help with this pipe ! everything looks great . i just have a couple of paths\nthat i need to finish it :\njanuary 2000 - i need deal # 854688 pathed for epgt and for tetc . according to the invoice , we should have\n11 , 129 dth on the interconnect .\nfebruary 2000 - i need deal # 871184 pathed for hpl and chan . hpl should have 3 , 600 dth and chan should\nhave 11 , 500 dth on the interconnect .\njuly 2000 - deal # 871172 has an interconnect issue . according to mops contract # 105124 , they received 8 , 275 dth\non the matagorda 624 , but according to epgt , they delivered 10 , 362 dth to hpl ( ? ) could this possibly\nneed to be split somehow , or do you have any other ideas ?\nlet me know . thanks , gloria 3 - 7118", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.631+0000", "entityId": 4836, "properties": {"text": "Subject: sos ! re : aep is missing 3 deals for 05 / 01 .\ndaren :\nper conversation with ryan mcgrath @ aep in ohio , he & genaro mendoza @\nenron are trying to settle 05 / 01 gas sales , netout . per ryan he is missing\n3 sales deals ( sales to aep by hpl or ena ) , @ waha hub , that he stated ,\nper his understanding , genaro is not reflecting under ena . the info that he\nprovided re : the missing deals are as follows :\nwaha hub , 7900 @ $ 4 . 18 or $ 33 , 022 . 00\nwaha hub , 7900 @ $ 4 . 09 or $ 32 , 311 . 00\nwaha hub , 7900 @ $ 4 . 365 or $ 34 , 483 . 50\ni checked with julie meyers , ( see e - mail below ) , and she suggested that i\ncontact you . can you help with this one ? i don ' t reflect any 05 / 01 sales to\naep in unify .\nthanks !\ntess\n- - - - - forwarded by tessie n ray / aepin on 06 / 25 / 01 07 : 24 am - - - - -\njulie l meyers\nto : tessie n ray / aepin @ aepin\n06 / 22 / 01 04 : 41 cc :\npm subject : re : aep is missing 3 deals for 05 / 01 . ( document link : tessie\nn ray )\ni would ask daren farmer at enron .\njulie\ntessie n ray\n06 / 22 / 2001 04 : 14 pm\nto : julie l meyers / hol / aepin @ aepin\ncc : genaro . mendoza @ enron . com , charlene l richmond / hol / aepin @ aepin\nsubject : aep is missing 3 deals for 05 / 01 .\nper conversation with ryan mcgrath @ aep in ohio , he & genaro mendoza @\nenron are trying to settle 05 / 01 gas sales , netout . per ryan he is missing\n3 sales deals ( sales to aep by hpl or ena ) , @ waha hub , that he stated ,\nper his understanding , genaro is not reflecting under ena . the info that he\nprovided re : the missing deals are as follows :\nwaha hub , 7900 @ $ 4 . 18 or $ 33 , 022 . 00\nwaha hub , 7900 @ $ 4 . 09 or $ 32 , 311 . 00\nwaha hub , 7900 @ $ 4 . 365 or $ 34 , 483 . 50\ncan you help with this one ? i don ' t reflect any 05 / 01 sales to aep in\nunify .\nthanks !\ntess", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.635+0000", "entityId": 4837, "properties": {"text": "Subject: global octanes\ndaren , sitara has two different prices for may 31 , 2001 causing a problem .\naccording to lee papayoti , the price for the swing volumes should\nbehsc _ flw + 1 high . gdp . d . a . however it is priced at hsc . gdp . d . a with the 31 st\nbeing priced at both . this is causing settlements to be overstated by\n419 mmbtu and $ 1 , 432 . 66 . any help you could give would be greatly\nappreciated . my phone # is 713 - 571 - 3273 .\n- - - - - forwarded by jack t peebles / aepin on 06 / 25 / 01 02 : 47 pm - - - - -\nlee l\npapayoti to : jack t peebles / aepin @ aepin\ncc :\n06 / 25 / 01 subject : global octanes\n01 : 13 pm\njack\ni tried to get into the sitara ticket # 373590 to correct the swing pricing\n. . . . but i am not allowed to access it beacuse it is a deal from when we\nwere at enron and i can ' t access those deals . . . .\nplease ask joanie or somebody as to what to try next , as i am at a loss ! !\nlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.641+0000", "entityId": 4838, "properties": {"text": "Subject: defs may 2001\ndaren :\nplease enter a demand fee on deal 157278 for may 2001 in the amount of $ 369 . 69 . we need to bill defs for the remaining excess and over delivery charges .\nalso , i was going back over my calc sheets and i found an error in oct 2000 . please enter a demand fee for $ 647 . 35 on deal 157278 for oct 2000 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.645+0000", "entityId": 4839, "properties": {"text": "Subject: re : noms for 6 / 20 thru 6 / 24 / 01\nwe agree with the volumes . thank you .\n\" eileen ponton \" on 06 / 26 / 2001 09 : 10 : 12 am\nto : david avila / lsp / enserch / us @ tu , charlie stone / energy / txu @ tu , melissa\njones / energy / txu @ tu , teacton @ aep . com , slzajac @ aep . com ,\nhplscheduling @ aep . com , gkbrazaitis @ aep . com\ncc :\nsubject : noms for 6 / 20 thru 6 / 24 / 01\ndate nom\n6 / 20 / 01 45 . 000\n6 / 21 / 01 37 . 500\n6 / 22 / 01 42 . 500\n6 / 23 / 01 0\n6 / 24 / 01 15 . 834\nmy gas control supervisor is working this morning on getting me accurate\nvolumes . hopefully i will be able to e - mail them out this afternoon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.653+0000", "entityId": 4840, "properties": {"text": "Subject: re : sos ! re : aep is missing 3 deals for 05 / 01 .\nthanks daren ! was that trade between ena & aep or hplc & aep ?\ntess\ndaren . j . farmer\n@ enron . com to : imceanotes - tnray + 40 aep + 2 ecom + 40 enron @ enron . com\ncc :\n06 / 25 / 01 03 : 53 subject : re : sos ! re : aep is missing 3 deals for 05 / 01 .\npm\ni only had one day trade with aep for may . i bought 5000 at 4 . 37 on 5 / 17 .\nthey may have transacted with kelly stevens on the central desk .\nd\n- - - - - original message - - - - -\nfrom : tnray @ aep . com @ enron\nsent : monday , june 25 , 2001 7 : 30 am\nto : farmer , daren j .\nsubject : sos ! re : aep is missing 3 deals for 05 / 01 .\nimportance : high\ndaren :\nper conversation with ryan mcgrath @ aep in ohio , he & genaro mendoza @\nenron are trying to settle 05 / 01 gas sales , netout . per ryan he is\nmissing\n3 sales deals ( sales to aep by hpl or ena ) , @ waha hub , that he\nstated ,\nper his understanding , genaro is not reflecting under ena . the info that\nhe\nprovided re : the missing deals are as follows :\nwaha hub , 7900 @ $ 4 . 18 or $ 33 , 022 . 00\nwaha hub , 7900 @ $ 4 . 09 or $ 32 , 311 . 00\nwaha hub , 7900 @ $ 4 . 365 or $ 34 , 483 . 50\ni checked with julie meyers , ( see e - mail below ) , and she suggested that\ni\ncontact you . can you help with this one ? i don ' t reflect any 05 / 01 sales\nto\naep in unify .\nthanks !\ntess\n- - - - - forwarded by tessie n ray / aepin on 06 / 25 / 01 07 : 24 am - - - - -\njulie l meyers\nto : tessie n\nray / aepin @ aepin\n06 / 22 / 01 04 : 41 cc :\npm subject : re : aep is missing\n3 deals for 05 / 01 . ( document link : tessie\nn ray )\ni would ask daren farmer at enron .\njulie\ntessie n ray\n06 / 22 / 2001 04 : 14 pm\nto : julie l meyers / hol / aepin @ aepin\ncc : genaro . mendoza @ enron . com , charlene l richmond / hol / aepin @ aepin\nsubject : aep is missing 3 deals for 05 / 01 .\nper conversation with ryan mcgrath @ aep in ohio , he & genaro mendoza @\nenron are trying to settle 05 / 01 gas sales , netout . per ryan he is\nmissing\n3 sales deals ( sales to aep by hpl or ena ) , @ waha hub , that he\nstated ,\nper his understanding , genaro is not reflecting under ena . the info that\nhe\nprovided re : the missing deals are as follows :\nwaha hub , 7900 @ $ 4 . 18 or $ 33 , 022 . 00\nwaha hub , 7900 @ $ 4 . 09 or $ 32 , 311 . 00\nwaha hub , 7900 @ $ 4 . 365 or $ 34 , 483 . 50\ncan you help with this one ? i don ' t reflect any 05 / 01 sales to aep in\nunify .\nthanks !\ntess", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.660+0000", "entityId": 4841, "properties": {"text": "Subject: fw : a weygandt , andrew ; glover , rusty ; beard , jaime ;\nwoodson , todd ; ratzman , eric ; eckermann , derrek ; walker , sam\nsubject : fw : a & m and espn\nfor immediate release\njune 26 , 2001\nespn to launch sidelines network ' s second reality - based series to\npremiere with texas a & m football\nespn will launch a 13 - episode , prime - time series this fall entitled\nsidelines , the network ' s second reality - based title under the espn\noriginal\nentertainment ( eoe ) banner . sidelines will document the season of a\nprominent team as told through the eyes and ears of the less visible ,\nless\ncelebrated people who are involved with the team . the football aggies\nof\ntexas a & m will be the focus of the series ' premiere episodes to begin\noctober 5 .\n\" coach slocum and i made the decision to be a part of this exciting\nventure\nwith espn , \" texas a & m athletics director wally groff said . \" we couldn ' t\nbe\nmore thrilled that espn has chosen texas a & m for this series . the\nopportunity espn gave us to showcase this wonderful institution and all\nof\nits tradition and heritage is something we could not pass up . \"\nin a \" docu - drama \" style , the various stories that surround the team will\nbe\nexplored through the voices and actions of people whose day - to - day lives\nare\ndirectly affected by living in the town and / or going to the school .\nplayers\nand coaches will also be visible and heard from in a more peripheral\nfashion , but will not be the primary focus .\n\" this is a good opportunity for texas a & m university and we ' re delighted\nespn decided to feature the football program and some of the people\nbehind\nthe scenes , \" head coach r . c . slocum said . \" we look forward to working\nwith\nthem . \"\nthe participants will be drawn from a cross section of people who\nreflect\nevery aspect of the university and college station , texas . they will be\nstudents , faculty , media , local storeowners , mothers , fathers and some\nof\nthe high school seniors who aspire to attend the university .\n\" each person has a role to play with the team , as well as a personal\nstory , \"\nsaid mark shapiro , vice president and general manager , espn original\nentertainment . \" sidelines will see each person grow in character as the\nseason progresses - - a kind of ' soap - umentary . ' we ' ll weave the smaller\npersonal stories together through the bigger story of the progression\nand\nfate of the team and its season . \"\nsidelines : texas a & m storylines\n- - this is the 125 th anniversary of the school ' s founding ( 1876 ) .\n- - the community is still very much dealing with the 1999 bonfire\ncollapse\nwhich tragically killed 12 students almost two years ago . a 90 - year\ntradition came to a tumultuous end . dealing with the loss and the\nemotional\ntoll it took on faculty members , students and families will be an\nimportant\npart of this series . the bonfire will return in 2002 but will take on a\ndifferent form than has been tradition .\n- - texas a & m , who lost a wild , snowy independence bowl last year in\novertime\nto mississippi state 43 - 41 , will play notre dame ( at home ) , texas ,\noklahoma ,\nkansas st and colorado next year . a tough schedule will provide for\ngreat\ndrama .\n- - the school invented the phrase \" 12 th man \" and actually owns the\ntrademark .\none game , the aggies were low on players and had a student suit up and\nstand\nready just in case he was needed . ever since , a student is chosen for\nevery\nhome game to suit up and play on the kickoff team .\n- - billy pickard is in charge of maintaining the facilities . he ' s been at\nthe\nuniversity for 36 years and was the student trainer for bear bryant ' s\na & m\nteam . he was actually in junction , texas for bryant ' s infamous grueling\nsummer camp . the story of it was a best - selling book , the junction boys .\n- - at midnight on the friday night before every home game , a \"\n30 , 000\nfans show up each week for this time - honored tradition .\neoe , the newest franchise of espn programming , will develop a\nwide - variety\nof branded programming outside of the network ' s traditional event and\nsports\nnews genres . using a collection of vehicles - - game shows , documentaries\nor\nreality - based shows - it ' s espn ' s goal to broaden its audience by\nappealing\nto younger and casual sports fans . in addition , the company is\nexploring\nnew ways to connect with consumers by applying these projects across all\nplatforms of the espn family - television , internet , radio\n- atm -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.668+0000", "entityId": 4842, "properties": {"text": "Subject: deadline : customer and employee rsvp for july trip\nmanagers ,\nwe have still have open slots for the following desks :\nwest\nlaura lapera - pacific gas & electric declined\nbud almond - williams energy declined\ncentral\ntrennis curry - kindermorgan declined\njan matson - nipsco declined\nif you plan on replacing them with another customer , please let me know no later than friday , june 29 , 2001 by 12 pm .\nif you plan to move employees around from july to august , please call me asap and advise ! ! !\nattached is our guest list and the details that we have collected thus far .\nthank you ,\nheather & alex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.673+0000", "entityId": 4843, "properties": {"text": "Subject: your cdnow username\ndear daren ,\nthank you for creating your new cdnow username . your username is :\ndarenfarmer\nyour existing account password will not change .\nwe recommend printing out this email , or writing down your username\nand keeping it in a safe place . remember , you must type in your username\neach time you sign in to your cdnow account if you have not chosen\nthe automatic sign - in option .\nif you have any questions and wish to contact a cdnow customer service\nrepresentative by telephone , please call us at the following numbers .\ntoll - free in the u . s . and canada : 800 - 595 - 6874\noutside the u . s . and canada : 215 - 619 - 9100\nto contact cdnow by email , contact us at :\nmanager @ cdnow . com\ncdnow customer service representatives are available to answer your\nquestions 24 hours a day monday through friday , and from 7 : 00 a . m . to\n11 : 00 p . m . , est ( or edt during daylight savings time ) , saturday and\nsunday . sorry , we cannot accept phone orders but are happy to help\nyou with your questions .\nthank you for shopping at cdnow .\nsincerely ,\ncdnow customer service\nnever miss a beat .\ncdnow , inc .\nhttp : / / cdnow . com\naol keyword : cdnow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.678+0000", "entityId": 4844, "properties": {"text": "Subject: moving the list . . .\nbammelyoungfamilies\n- - - - - - - - - - - - - - - - - - - - - - - - - - - listbot sponsor - - - - - - - - - - - - - - - - - - - - - - - - - -\nstart your own free email list at http : / / www . listbot . com / links / joinlb\nfolks ,\nyou ' ve probably already read that listbot is dying as of august 6 .\nso , i ' ve created a transition list on another service . to send messages to\nthe list , please start using the following e - mail address :\nbrcc . yf @ topica . com\ni plan on closing the old list ( @ listbot . com ) as of\nfriday , august 13 .\nif you are still interested in participating in the \" bammel young families \"\nlist , please send an e - mail to \" brcc . yf - subscribe @ topica . com \" .\nif you think you ' ll want to check the past messages , or to create your own\nlists in the future , use the following steps :\n1 . go to http : / / www . topica . com / lists / brcc . yf\n2 . on the right hand side of the page , type in your e - mail address under\n\" not a topica member yet \"\n3 . click \" continue \"\n4 . fill in the registration , then click the \" i agree \" button\n5 . you ' ll next see a page with text like \" thanks , ram ! you ' re almost done . \"\n6 . scroll to the end of this page , and click the \" continue \" button .\n7 . a dialog will pop - up , asking whether you want to \" tap into exclusive . . .\nblah , blah , blah \" . just click cancel .\nonce you join the new list , please drop me an e - mail to\n\" rtackett @ abacustech . net \" . i ' ll then delete you from the old so that you\nwon ' t get duplicate messages from both lists .\nthe messages on the new list will be available to members online at :\nhttp : / / www . topica . com / lists / brcc . yf\none nice feature of topica is the ability to put messages on \" vacation\nhold \" , so that we don ' t end up with auto - responder problems . for more info\non \" vacation hold \" , go to http : / / topica . com / # and then click on the\n\" vacation hold \" link under \" subscriber services \" .\nthanks ,\nram tackett\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\nmailto : rtackett @ abacustech . net\nv : ( 281 ) 651 - 7106\nf : 1 + ( 281 ) 528 - 8636\nweb : http : / / www . abacustech . net\nto unsubscribe , write to - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.683+0000", "entityId": 4845, "properties": {"text": "Subject: valero plants\nhey buddy ! ! how ' s it going ? hope you ' re working diligently to get that\nstock price back up so that i can retire some day ! ! here ' s your valero\nplants quote . due to some operational issues , i can ' t quote term on the\ntexas city plant . if you want me to quote through december of this year , i\ncan do it for that term , just let me know .\n( see attached file : valpltsenrn . xls )\n- valpltsenrn . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.687+0000", "entityId": 4846, "properties": {"text": "Subject: fw : txu fuel deals imbalances\ndaren ,\nthe deals listed below are related to tufco imbalances . . . let me know if you have any objections to me entering the deals . . . o ' neal 3 - 9686\n- - - - - original message - - - - -\nfrom : griffin , rebecca\nsent : thursday , june 28 , 2001 9 : 58 am\nto : winfree , o ' neal d .\nsubject : txu fuel deals\nas my voice mail said , could you add deals for the following :\ndate : 1 / 31 - 1 / 31\nlocation : pgev / for tufco / 4300101\nvolume : 1 , 357 mmbtu\nprice : $ 3 . 94\nthis should be entered as a purchase with enron as buyer\ndate : 4 / 30 - 4 / 30\nlocation : pgev / for tufco / 4300101\nvolume : 8 , 726 mmbtu\nprice : $ 3 . 94\nthis should be entered as a sale with enron as seller\ndate : 5 / 31 - 5 / 31\nlocation : pgev / for tufco / 4300101\nvolume : 9 , 912 mmbtu\nprice : $ 3 . 94\nthis should be entered as a purchase with enron as buyer\nthis is related to the txu fuel wagner brown contract . please let me know if you have any questions .\nthanks ,\nrebecca\n713 - 571 - 3189", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.692+0000", "entityId": 4847, "properties": {"text": "Subject: re : txu fuel deals imbalances\ni ' m not sure , this request is coming from settlements . . . o\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , june 28 , 2001 10 : 28 am\nto : winfree , o ' neal d .\nsubject : re : txu fuel deals imbalances\now ,\nwas this passed through janet wallis ?\nd\n- - - - - original message - - - - -\nfrom : winfree , o ' neal d .\nsent : thursday , june 28 , 2001 10 : 18 am\nto : farmer , daren j .\nsubject : fw : txu fuel deals imbalances\ndaren ,\nthe deals listed below are related to tufco imbalances . . . let me know if you have any objections to me entering the deals . . . o ' neal 3 - 9686\n- - - - - original message - - - - -\nfrom : griffin , rebecca\nsent : thursday , june 28 , 2001 9 : 58 am\nto : winfree , o ' neal d .\nsubject : txu fuel deals\nas my voice mail said , could you add deals for the following :\ndate : 1 / 31 - 1 / 31\nlocation : pgev / for tufco / 4300101\nvolume : 1 , 357 mmbtu\nprice : $ 3 . 94\nthis should be entered as a purchase with enron as buyer\ndate : 4 / 30 - 4 / 30\nlocation : pgev / for tufco / 4300101\nvolume : 8 , 726 mmbtu\nprice : $ 3 . 94\nthis should be entered as a sale with enron as seller\ndate : 5 / 31 - 5 / 31\nlocation : pgev / for tufco / 4300101\nvolume : 9 , 912 mmbtu\nprice : $ 3 . 94\nthis should be entered as a purchase with enron as buyer\nthis is related to the txu fuel wagner brown contract . please let me know if you have any questions .\nthanks ,\nrebecca\n713 - 571 - 3189", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.696+0000", "entityId": 4848, "properties": {"text": "Subject: re : valero rfp issued june 1 , 2001\ndaren ,\nthank you for the proposal , i look forward to discussing this further with\nyou over the next week .\ndave\n\" farmer , daren\nj . \" to :\nsubject : valero rfp issued june 1 , 2001\n06 / 29 / 2001 04 : 29\npm\ndavid ,\nin response to the rfp you issued on june 1 , 2000 for electric power and\nnatural gas supplies , enron would like to present the following offers\nfor your gas supply in texas :\nfor deliveries to the corpus plant :\n10 , 000 mmbtu per day , priced at inside ferc houston ship channel\nless $ . 04 for a term of one year .\nor\n10 , 000 mmbtu per day , priced at inside ferc houston ship channel\nless $ . 035 for a term of two years .\nfor deliveries to the houston plant :\n10 , 000 mmbtu per day , priced at inside ferc houston ship channel\nless $ . 005 for a term of one year .\nor\n10 , 000 mmbtu per day , priced at inside ferc houston ship channel\nflat for a term of two years .\nfor deliveries to the clear lake plant :\n10 , 000 mmbtu per day , priced at inside ferc houston ship channel\nless $ . 005 for a term of one year .\nor\n10 , 000 mmbtu per day , priced at inside ferc houston ship channel\nflat for a term of two years .\nunder this offer , enron reserves the right to serve the plants from any\nof the pipelines listed under appendix d : table 2 of your rfp ( hpl ,\nepgtt , kinder morgan ) . i appreciate your review of this offer . please\ncontact me at 713 - 853 - 6905 with any questions or comments .\nthank you\ndaren farmer\nenron north america\nph : 713 - 853 - 6905\nfax : 713 - 646 - 2391\ne - mail : dfarmer @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.701+0000", "entityId": 4849, "properties": {"text": "Subject: re : epgt\ndaren - what about february 2000 ? it doesn ' t look like it ' s been pathed for hpl and chan .\nplease let me know . thanks , gloria\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , june 25 , 2001 5 : 16 pm\nto : barkowsky , gloria g .\nsubject : re : epgt\ndeal 871172 has been pathed from the texas side .\nd\n- - - - - original message - - - - -\nfrom : barkowsky , gloria g .\nsent : friday , june 22 , 2001 4 : 50 pm\nto : garcia , clarissa ; farmer , daren j . ; dinari , sabra l .\nsubject : epgt\nclarissa - thanks so much for all your help with this pipe ! everything looks great . i just have a couple of paths\nthat i need to finish it :\njanuary 2000 - i need deal # 854688 pathed for epgt and for tetc . according to the invoice , we should have\n11 , 129 dth on the interconnect .\nfebruary 2000 - i need deal # 871184 pathed for hpl and chan . hpl should have 3 , 600 dth and chan should\nhave 11 , 500 dth on the interconnect .\njuly 2000 - deal # 871172 has an interconnect issue . according to mops contract # 105124 , they received 8 , 275 dth\non the matagorda 624 , but according to epgt , they delivered 10 , 362 dth to hpl ( ? ) could this possibly\nneed to be split somehow , or do you have any other ideas ?\nlet me know . thanks , gloria 3 - 7118", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.706+0000", "entityId": 4850, "properties": {"text": "Subject: new tax law update\nwhether you ' re investing for your kids ' education or your retirement , the\nnew federal tax law may make your goals easier to reach . the $ 1 . 35 - trillion\ntax relief package could affect your finances in many areas , from investing\nfor college and retirement to managing income and estate taxes .\nmany of the tax cuts will phase in gradually over the next several years .\nbut to help you take advantage of all possible provisions , we should start\nplanning soon . some of the ways you may benefit include :\nlower income tax rates . the gradual reduction of tax rates has already\nbegun . in fact , the new withholding schedule went into effect on july 1 .\nand , you should receive a tax rebate check soon due to the creation of a new\n10 % bottom rate retroactive to january 1 , 2001 . as tax rates fall over the\nnext few years , your disposable income will likely rise - offering an\nopportunity to invest more toward your various goals .\neducation - funding incentives . parents who want to help their children attend\ncollege may now find their financial task easier . the tax relief act will\nimprove education savings tools such as :\n? education iras - the accounts ' contribution limit will rise from $ 500 to\n$ 2 , 000 in 2002 . what ' s more , money in these accounts can now be used for\nelementary and secondary school costs in addition to higher education\nexpenses .\n? state sponsored 529 college savings plans - also beginning in 2002 ,\ndistributions from these plans for qualified education expenses will be tax\nfree . currently earnings in the accounts are deferred and taxed at the\nbeneficiary ' s rate upon withdrawal . 529 s are particularly attractive due to\ntheir generous contribution limits .\n? deductions for education expenses - the act increases eligibility for\nstudent loan interest deductions and it creates a new deduction for higher\neducation expenses .\n? the child tax credit - though not tied specifically to education expenses ,\nthis credit will provide increasing help to parents investing for college .\npreviously $ 500 per qualifying child under 17 , the credit increases to $ 600\nin 2001 - 2004 , $ 700 in 2005 - 2008 , $ 800 in 2009 and $ 1 , 000 in 2010 and\nthereafter .\nhigher retirement plan contribution limits . the tax act will allow people\nwith earned income to invest more in retirement plans and iras - possibly\nhelping them retire sooner and more comfortably . your options may include :\n? traditional and roth iras - annual contribution limits for both of these\ntypes of iras will gradually rise from $ 2 , 000 this year to $ 5 , 000 in 2008 .\nafter that , the limits will be indexed to inflation in $ 500 increments .\n? 401 ( k ) s and 403 ( b ) s - working individuals also may be able to invest more\nin their employer retirement plan . the limit on elective deferrals will\ngradually rise from $ 10 , 500 this year to $ 15 , 000 in 2006 , and this doesn ' t\ninclude the catch - up contribution provision for people 50 years and older .\nand much more . there are other provisions in the new tax law that may\nbenefit you and your family . when we meet , we ' ll identify the ones that\napply to you and help you make the most of them .\nas you can see , the new tax law provides meaningful tax savings in a number\nof areas . but because the changes will be phased in gradually - and some are\nset to expire after 2010 without reauthorization - your planning must be\nflexible enough to react to year - by - year changes .\nsuch planning is where american express financial advisors excels . i ' m\nbacked by a corporate team of specialists in taxation , investments , estate\nand retirement planning , and more to help you make the most of your\nfinances .\nlet me know if you have any questions . i look forward to seeing you .\nbyron\n\" make all you can , save all you can , give all you can . \"\njohn wesley\nbyron w . ellis , cfp ( tm ) , clu , chfc\nsenior financial advisor\namerican express financial advisors\nids life insurance company\n1450 lake robbins drive\nsuite 100\nthe woodlands , tx 77380\nphone 281 . 367 . 8658 ext . 2227\nfax 281 . 364 . 9628\ne mail byronellis @ usa . net\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.710+0000", "entityId": 4851, "properties": {"text": "Subject: enw meeting / teambuilding event - jillian ' s - 7 / 19 / 01 - rsvp\nrequired for attendance\nplease mark your calendars for the first annual all - employee meeting and teambuilding event at jillian ' s on thursday , 7 / 19 / 01 . this gathering is for all enw houston - based , full - time and part - time employees .\nclick the link below for further information and rsvp information . please note the deadline to rsvp has been extended to 7 / 11 / 01 , due to the july 4 th holiday .\nplease call peggy mccurley at x 31832 if you have any questions .\nhope to see you there !\nhttp : / / 207 . 21 . 193 . 94 / jillians / index . asp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.715+0000", "entityId": 4852, "properties": {"text": "Subject: aep contact list\nfyi\n- aep contact list - mailout . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.720+0000", "entityId": 4853, "properties": {"text": "Subject: re : june tenaska gas file\ndaren :\nplease enter the demand fee on deal 384258 for tenaska iv for june 2001 . it should be $ 3 , 938 , 205 . 00 . also , please extend deal 514353 or set up a new deal for the agency fee for june . deal 514353 ended with may prod .\nthanks ,\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 07 / 05 / 2001 02 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : michael olsen / enron @ enronxgate on 07 / 05 / 2001 12 : 49 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : june tenaska gas file\nhere you go . let me know if everything looks good .\nmike\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : thursday , july 05 , 2001 12 : 48 pm\nto : olsen , michael\nsubject : june tenaska gas file\ncan you email the tenaska file for june ? i need to bill them .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 07 / 05 / 2001 12 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 07 / 02 / 2001 02 : 17 pm\nto : michael olsen / na / enron\ncc :\nsubject : june tenaska gas file\ncan you send james armstrong and me the tenaska file for june ?\nthanks ,\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 07 / 02 / 2001 02 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : james armstrong / enron @ enronxgate on 07 / 02 / 2001 10 : 56 am\nto : mark mccoy / corp / enron @ enron\ncc : megan parker / corp / enron @ enron\nsubject : june tenaska gas file\nmark , it looks like mike olsen is no longer here at enron . do you know who handles the tenaska fuel management file now ? you can call me at 713 - 853 - 7280 . thanks .\njames\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.724+0000", "entityId": 4854, "properties": {"text": "Subject: re : fw : cornhusker - lone star payments\ni looked at the service records and , for oct 2000 through april 2001 , we have paid $ 381 , 263 . 04 to txu for transport . we have another $ 159 , 745 . 14 in draft status . the two amounts total $ 541 , 008 . 18 . i ' m not sure why we have items in draft status . antoinette beale handles the transport payments and i think she is out today . i know she was having trouble with the volumes coming over . i have left her a message to call me when she gets back so we can finalize those payments . the may 2001 estimates total $ 57 , 249 . 44 in the system . let me know if you need any more information .\nmegan\nx 5 - 7480\nfrom : daren j farmer / enron @ enronxgate on 07 / 06 / 2001 11 : 35 am\nto : megan parker / corp / enron @ enron\ncc :\nsubject : fw : cornhusker - lone star payments\nmegan ,\nare you able to get this information ?\nd\n- - - - - original message - - - - -\nfrom : hill , garrick\nsent : friday , july 06 , 2001 8 : 12 am\nto : armstrong , james ; farmer , daren j .\nsubject : cornhusker - lone star payments\nimportance : high\nsection 6 . 4 of tenaska iv ' s gas transportation agreement with lone star requires the shipper to pay transporter $ 1 , 040 , 000 in transportation fees and / or deficienty payments from the initial delivery date through december 31 , 2003 . do we know what the payments to lone star have been to date ? if not , can we find out by contacting lone star ?\nrh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.728+0000", "entityId": 4855, "properties": {"text": "Subject: cornhusker - lone star payments\nsection 6 . 4 of tenaska iv ' s gas transportation agreement with lone star requires the shipper to pay transporter $ 1 , 040 , 000 in transportation fees and / or deficienty payments from the initial delivery date through december 31 , 2003 . do we know what the payments to lone star have been to date ? if not , can we find out by contacting lone star ?\nrh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.733+0000", "entityId": 4856, "properties": {"text": "Subject: fw : duke energy trading and marketing , l . l . c .\ni have not received a response from you regarding the pricing discrepancies on these deals . please let me know which price is correct if possible .\n- - - - - original message - - - - -\nfrom : hernandez , elizabeth l .\nsent : thursday , june 21 , 2001 11 : 28 am\nto : farmer , daren j .\nsubject : duke energy trading and marketing , l . l . c .\ni have two outstanding pricing issues that i tried to resolve with gary lamphier , but didn ' t have any luck . these deals are both day deals for february 2001 done by danny conner . the customer is showing a pricing difference according to what we have in sitara . can you please help me resolve this pricing issue .\nsitara deal # sitara price customer price\n627800 $ 5 . 25 $ 5 . 23\n598392 $ 5 . 78 $ 5 . 77", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.737+0000", "entityId": 4857, "properties": {"text": "Subject: july 4 th pictures\nfarmers / wylies : you ' ll probably want to pick up at the following link :\nchappells : you ' ll probably want to pick up at this link :\nfamily : you ' ll probably want to start from the beginning :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.742+0000", "entityId": 4858, "properties": {"text": "Subject: your order with amazon . com ( # 102 - 6820014 - 8227326 )\nthanks for ordering from amazon . com ! your purchase information\nappears below .\nto see the latest information about your order , or to cancel or\nmodify a pending order , just click the \" your account \" link in the top\nright corner of any page on our web site or visit :\nhttp : / / www . amazon . com / your - account\ndid you know you can view and edit your orders online ?\naccess \" your account \" ( http : / / www . amazon . com / your - account ) , and you\ncan :\n* track order status\n* combine orders\n* change payment options\n* edit shipping address\n* cancel unshipped items\n* change gift messaging\n* do much more . . .\nif you ordered several items to be delivered to the same address , we\nmight send them in separate boxes to ensure quicker service . but\ndon ' t worry : you won ' t be charged any extra shipping fees .\nthanks again for shopping with us .\n- - amazon . com customer service\nyour purchase reads as follows :\ne - mail address : dfarmer @ enron . com\nbilling address : daren farmer\n2747 meadowtree\nspring , tx 77388\nunited states\ntelephone : 281 - 288 - 8251\nsubtotal : $ 19 . 99\nshipping @ $ 19 . 99 each\nusually available in 24 hours\ndid you know that we have amazon . com gift certificates available ?\nyou can order a gift certificate in any dollar amount from $ 5\nto $ 5 , 000 . we ' ll deliver it via e - mail or physical mail - - so it ' s a\nperfect last - minute gift . for more details on ordering gift\ncertificates , please visit the following url :\nhttp : / / www . amazon . com / gift - certificates /\nyou can make changes to any unshipped orders in your account . just\nclick the \" your account \" link in the top right corner of any page on\nour web site or visit :\nhttp : / / www . amazon . com / your - account\nif you ' ve explored the links on that page but still have a question ,\nplease visit our online help department .\nhttp : / / www . amazon . com / help\nthanks again for shopping at amazon . com !\namazon . com\nearth ' s biggest selection\nhttp : / / www . amazon . com\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.748+0000", "entityId": 4859, "properties": {"text": "Subject: re : cornhusker - lone star payments\nthanks . james armstrong was able to give me enough history to prove out the idea that we ' ve more than paid for the lateral with usage - based charges . no need to call lone star .\nrh\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : friday , july 06 , 2001 3 : 57 pm\nto : hill , garrick\nsubject : re : cornhusker - lone star payments\nfor the period of oct 2000 - apr 2001 , we have paid about 540 , 000 . may is estimated to be another 57 , 000 . the person who usually pays lone star is out of the office . we ' ll get her to call them on monday for payments prior to oct 2000 .\nd\n- - - - - original message - - - - -\nfrom : hill , garrick\nsent : friday , july 06 , 2001 8 : 12 am\nto : armstrong , james ; farmer , daren j .\nsubject : cornhusker - lone star payments\nimportance : high\nsection 6 . 4 of tenaska iv ' s gas transportation agreement with lone star requires the shipper to pay transporter $ 1 , 040 , 000 in transportation fees and / or deficienty payments from the initial delivery date through december 31 , 2003 . do we know what the payments to lone star have been to date ? if not , can we find out by contacting lone star ?\nrh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.752+0000", "entityId": 4860, "properties": {"text": "Subject: frontrea plant , gas\nwhen : wednesday , july 11 , 2001 2 : 00 pm - 3 : 00 pm ( gmt - 06 : 00 ) central time ( us & canada ) .\nwhere : 3127\n* ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.757+0000", "entityId": 4861, "properties": {"text": "Subject: equistar 5 / 01\ndaren :\nplease extend equistar deal 759684 for the entire month of may . we have 111 mmbtu that we need to allocate to the buyback on 5 / 15 . the deal only goes to the 11 th .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.766+0000", "entityId": 4862, "properties": {"text": "Subject: fw : release of deal # 70550\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : monday , july 09 , 2001 10 : 34 am\nto : olsen , michael\ncc : majorwitz , buddy ; ' ttnguyen @ aep . com '\nsubject : fw : release of deal # 70550\nmike ,\ni looked in sitara and deal 70550 is still not released . i talked to you about this on friday . can you get someone to release this deal please . thu said that they are not able to release the deal at aep .\n- - - - - original message - - - - -\nfrom : majorwitz , buddy\nsent : monday , july 09 , 2001 9 : 54 am\nto : schumack , sherlyn\nsubject : release of deal # 70550\nsherlyn ,\ncan you follow up on that deal we were looking at on friday ? you had called and asked someone to release the deal so that it would show up in path manager or something to that effect . i ' ve looked in sitara this morning and it doesn ' t look like it has been released or validated yet .\nthanks for your help . let me know if you need anything from me .\nbuddy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.774+0000", "entityId": 4863, "properties": {"text": "Subject: lng mtg\nwhen : wednesday , july 11 , 2001 4 : 30 pm - 5 : 00 pm ( gmt - 06 : 00 ) central time ( us & canada ) .\nwhere : eb 3259\n* ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.779+0000", "entityId": 4864, "properties": {"text": "Subject: re : enron bid , cps rfq 14886 - bid clarification / questions\nenron north american\ndaren farmer\n1400 smith street\nhouston , texas 77002\nthank you for your bid . cps is currently evaluating all bids . part of this\nprocess includes ( where needed ) clarification / confirmation of the bids . we\nemphasize we are not seeking nor can we accept any change of bids . our\nunderstanding of the your bid reflects ( in part ) :\n* unbundled gas supply , 5 year term :\n- to waha , agua dulce , or thompsonville ; up to 15 , 000 mmbtu / d , at\nstated bid prices ; firm baseload ( no nomination )\n* bundled gas supply , 5 year term :\n- to cps - karnes or cps / el paso ; up to 15 , 000 mmbtu / d , at stated bid\nprices ; firm baseload ( no nomination ) .\ncps needs clarification of total volumes available combining maximum\nunbundled and bundled gas supply . we may have other questions as we continue\nour evaluation . we look forward to your response . please respond via email\nto me and all parties in the \" cc \" box above , or by fax to ms . trisha wiatrek\nat 210 - 353 - 3060 and copied to barry williams . again , thank you for your bid .\nsincerely ,\nbarry s williams\ngeologist\ncity public service\npo box 1771 / 145 navarro\nsan antonio , tx 78296\n210 - 353 - 2876", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.784+0000", "entityId": 4865, "properties": {"text": "Subject: re : gisb contracts for intrastate and interstate gas\nmr . farmer ,\ni have forwarded your request with comments to debra perlingiere ( legal specialist - x 3 - 7658 ) and stacey dickson ( sr . counsel - x 3 - 5705 ) who handle negotiations for new master agreements . please let me know if i may be of further assistance .\nthank you ,\nanthony campos\nenron corp . _ global contracts\n713 . 853 . 7911 ( office )\n713 . 646 . 2495 ( fax )\n713 . 709 . 0373 ( pager )\nanthony . campos @ enron . com\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , july 11 , 2001 12 : 41 pm\nto : campos , anthony\nsubject : fw : gisb contracts for intrastate and interstate gas\nanthony ,\nplease contact keith ford at txu fuel and give him the info he needs to prepare a contract with ena ( tax id , payment info , etc . ) . we need this to be effective june 1 , 2001 . if you are not the correct person to handle this , please forward to the appropriate person . thanks .\nd\n- - - - - original message - - - - -\nfrom : \" keith ford \" @ enron [ mailto : imceanotes - + 22 keith + 20 ford + 22 + 20 + 3 ckfordl + 40 txu + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : friday , may 25 , 2001 2 : 01 pm\nto : dfarmer @ enron . com\nsubject : gisb contracts for intrastate and interstate gas\nat the request of lynn handlin , please find attached a copy of the following :\ngisb contract form\nspecial provisions for intrastate gas\nspecial provision for interstate gas\nplease review , and if interested in putting these contracts in place , forward to\nme all required information on the first page of the gisb contract form . i will\nthen have the contracts prepared and forwarded to you for execution .\nplease keep in mind that txu fuel company is an intrastate pipeline and can\npurchase interstate gas only under certain limited conditions . these conditions\nare covered under item number 8 in the special provisions . thanks .\nkeith ford\ntxu fuel company\ncontract administration supervisor\n( see attached file : gisb form - final . doc ) ( see attached file : gisb spec prov -\nintra - final . doc ) ( see attached file : gisb spec prov - inter - final . doc )\n- gisb form - final . doc >\n- gisb spec prov - intra - final . doc >\n- gisb spec prov - inter - final . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.788+0000", "entityId": 4866, "properties": {"text": "Subject: re : fw : cornhusker - lone star payments\nantoinette left a message with txu . just waiting for an answer .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.793+0000", "entityId": 4867, "properties": {"text": "Subject: delivered : re : enron bid , cps rfq 14886 - bid clarification / quest\nions\n> your message\nto : bswilliams @ cps - satx . com ; dfarmer @ enron . com\ncc : pawiatrek @ cps - satx . com ; ddmcwhirter @ cps - satx . com ;\nmdwerner @ cps - satx . com\nsubject : re : enron bid , cps rfq 14886 - bid clarification / questions\nsent : thu , 12 jul 2001 15 : 47 : 26 - 0500\nwas delivered to the following recipient ( s ) :\nwilliams , barry s . on thu , 12 jul 2001 15 : 48 : 02 - 0500\nmessage - id :\nfrom : daren . j . farmer @ enron . com\nto : bswilliams @ cps - satx . com , dfarmer @ enron . com\ncc : pawiatrek @ cps - satx . com , ddmcwhirter @ cps - satx . com , mdwerner @ cps - satx . com\nsubject : re : enron bid , cps rfq 14886 - bid clarification / questions\ndate : thu , 12 jul 2001 15 : 47 : 26 - 0500\nreturn - receipt - to : daren . j . farmer @ enron . com\nmime - version : 1 . 0\nx - mailer : internet mail service ( 5 . 5 . 2653 . 19 )\nx - ms - embedded - report :\ncontent - type : text / plain", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.797+0000", "entityId": 4868, "properties": {"text": "Subject: 06 / 01 ena gas sales on hpl , to d & h gas company\ngood morning daren :\ni received a fax from d & h for 06 / 01 deliveries ( hplc sales to d & h ) , however\nthere is no sales draft in unify for this sale . please advise if the 360\nmmbtu reflected on d & h ' s 06 / 01 allocations , for hpl meter # 428 - deweyville .\ntx . a valid hplc sale and if so , who do i contact about getting deal in\nsitara and scheduled for hplc , so as to invoice d & h this month !\nthanks !\ntess ray ( tnray @ aep . com )\naep - houston pipe line co .\n1201 louisiana\nsuite 1200\nhouston , texas 77002\ntel : 832 - 668 - 1248\nfax : 832 - 668 - 1123\n- - - - - forwarded by tessie n ray / aepin on 07 / 13 / 01 09 : 09 am - - - - -\n| | \" farmer , daren j . \" | |\n| | | |\n| | | cc : |\n| | 06 / 15 / 01 11 : 07 am | subject : |\n| | | fw : fw : 05 / 01 ena gas |\n| | | sales on hpl , to d & |\n| | | h gas company |\n> - - - - - original message - - - - -\n> from : hernandez , elizabeth l .\n> sent : friday , june 15 , 2001 11 : 05 am\n> to : farmer , daren j .\n> subject : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> deal 70120 has been extended through may 31 , 2001 .\n>\n>\n> - - - - - original message - - - - -\n> from : hernandez , elizabeth l .\n> sent : friday , june 15 , 2001 9 : 14 am\n> to : richardson , stacey\n> subject : fw : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> can you help me out with this .\n>\n> - - - - - original message - - - - -\n> from : lambert , karen\n> sent : friday , june 15 , 2001 9 : 11 am\n> to : hernandez , elizabeth l .\n> subject : fw : fw : 05 / 01 ena gas sales on hpl , to d huthmacher , tammie ; aalland @ aep . com\n> subject : re : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> the contract ( 96007529 ) should have expired under ena , but because of\n> the timing of the expiration , it got \" assigned \" to aep / hpl ( 96060798 ) .\n> therefore , for informational / historical purposes , i extended the term\n> under 96060798 thru 5 / 31 / 01 .\n>\n> someone from linda ' s group will have to extend the term under the\n> original contract in order for the deal to be attached .\n>\n>\n>\n>\n> from : karen lambert / enron @ enronxgate on 06 / 14 / 2001 04 : 34 pm\n> to : linda s bryan / enron @ enronxgate , cheryl dudley / hou / ect @ ect\n> cc : tammie huthmacher / enron @ enronxgate\n>\n> subject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> fyi\n>\n> - - - - - original message - - - - -\n> from : hernandez , elizabeth l .\n> sent : thursday , june 14 , 2001 1 : 44 pm\n> to : lambert , karen\n> cc : farmer , daren j .\n> subject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n> importance : high\n>\n> unable to add may production as contract needs to be exteneded .\n>\n> - - - - - original message - - - - -\n> from : farmer , daren j .\n> sent : thursday , june 14 , 2001 1 : 33 pm\n> to : hernandez , elizabeth l .\n> subject : fw : 05 / 01 ena gas sales on hpl , to d & h gas company\n> importance : high\n>\n> elizabeth ,\n>\n> can you extend the contract with d & h under deal 70120 for 1 month to\n> cover this volume ?\n>\n> d\n>\n> - - - - - original message - - - - -\n> from : tnray @ aep . com @ enron\n> [ mailto : imceanotes - tnray + 40 aep + 2 ecom + 40 enron @ enron . com ]\n> sent : thursday , june 14 , 2001 11 : 44 am\n> to : dfarmer @ enron . com\n> subject : re : 05 / 01 ena gas sales on hpl , to d & h gas company\n> importance : high\n>\n> daren ,\n> per my e - mail to julie and her reply ( see below ) , can you help me with\n> this ?\n>\n> thanks !\n> tess\n> - - - - - forwarded by tessie n ray / aepin on 06 / 14 / 01 11 : 44 am - - - - -\n>\n> julie l meyers\n> to : tessie n\n> ray / aepin @ aepin\n> 06 / 14 / 01 10 : 58 cc :\n> am subject : re : 05 / 01 ena\n> gas sales on hpl , to d & h gas company\n> ( document link : tessie n ray )\n>\n>\n>\n>\n> i did a search and found no deals for may for this counterparty . call\n> daren farmer at 713 - 853 - 6905 , and he could probably put the deal in\n> for\n> you .\n>\n>\n>\n>\n> ( embedded image moved to file : picl 6827 . pcx ) tessie n ray\n> 06 / 13 / 2001 03 : 44 pm\n>\n>\n> to : julie l meyers / hol / aepin @ aepin\n> cc : elizabeth . hernandez @ enron . com\n>\n> subject : 05 / 01 ena gas sales on hpl , to d & h gas company\n>\n> ( embedded\n> image moved ( embedded image moved to file : pico 0491 . pcx )\n> to file :\n> pico 9961 . pcx )\n>\n>\n>\n>\n>\n>\n> julie -\n> need your help again . . . .\n> d & h gas company , faxed their 05 / 01 volume support for hpl meter 428\n> ( 980428 ) , whihc reflects ena gas sales to d & h for 5 / 11 / 01 , 143 mmbtu\n> and\n> 5 / 31 / 01 for 286 mmbtu for a total of 429 mmbtu for 05 / 01 . he deal last\n> month ( 04 / 01 ) , was sa - 70120 . i don ' t have see a sales draft under\n> ena or\n> hpl for 05 / 01 sales to d & h , nor do i see any 05 / 01 sales deal under\n> sa - 70120 .\n>\n> can you assist me in finding out if there was a sale to d & h in 05 / 01 ,\n> and\n> if so , what is the deal number and where is sales draft ?\n>\n> thanks !\n> tess\n>\n>\n>\n>\n>\n> - picl 6827 . pcx >\n> - pico 9961 . pcx >\n> - pico 0491 . pcx >\n>\n>\n>\n- picl 6827 . pcx\n- pico 9961 . pcx\n- pico 0491 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.802+0000", "entityId": 4869, "properties": {"text": "Subject: your amazon . com order ( # 102 - 6820014 - 8227326 )\ngreetings from amazon . com .\nwe thought you ' d like to know that we shipped your items today ,\nand that this completes your order .\nthanks for shopping at amazon . com , and we hope to see you again soon .\nyou can track the status of this order , and all your orders , online by\nvisiting \" your account \" page at http : / / www . amazon . com / your - account .\nthere you can :\n* track order and shipment status\n* review estimated delivery dates\n* cancel unshipped items\n* return items\n* and do much more\nthe following items were included in this shipment :\nqty item price shipped subtotal\n1 tonka mighty front loader $ 19 . 99 1 $ 19 . 99\nitem subtotal : $ 19 . 99\nshipping & handling : $ 0 . 00\ntotal : $ 19 . 99\nthis shipment was sent to :\ndaren farmer\n2747 meadowtree\nspring tx 77388\nvia ups ground ( 3 - 7 business days ) .\nfor your reference , the number you can use to track your package is lza 41 wl 90316789627 . you can refer to our web site ' s help page or :\nhttp : / / www . amazon . com / tracking\nto retrieve current tracking information . please note that tracking\ninformation may not be available immediately .\nif you ' ve explored the links on \" your account \" page but still need to get in\ntouch with us about your order , e - mail us at orders @ amazon . com .\non your next visit to our web site , come see what ' s new for you by\nclicking the link on the right - hand side of our home page , or by\nvisiting this url :\nwe ' ve selected an assortment of new releases , recommendations , and\ninformative articles that we think would appeal to you .\nthank you for shopping at amazon . com .\namazon . com\nearth ' s biggest selection\norders @ amazon . com http : / / www . amazon . com /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.807+0000", "entityId": 4870, "properties": {"text": "Subject: rfp dated june 25 , 2001\nreturn receipt\nyour rfp dated june 25 , 2001\ndocument :\nwas received dick boerner / lsg / enserch / us\nby :\nat : 04 : 15 : 49 pm today", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.812+0000", "entityId": 4871, "properties": {"text": "Subject: rfp dated june 25 , 2001\nreturn receipt\nyour rfp dated june 25 , 2001\ndocument :\nwas received dick boerner / lsg / enserch / us\nby :\nat : 04 : 15 : 48 pm today", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.817+0000", "entityId": 4872, "properties": {"text": "Subject: rfp dated june 25 , 2001\ndick ,\nenron would to extend an offer in response to your rfp dated june 25 , 2001 . please see the attached document outlining the terms , volumes , and pricing .\nenron is willing to provide you with the flexibility to exchange the floating price ( s ) for a fixed price , under appropriate contractual agreements .\nthank you for giving us the opportunity supply your gas needs . i look forward to discussing this offer with you . please feel free to contact me with any questions or comments .\ndaren farmer\nenron north america\nph : ( 713 ) 853 - 6905\nfax : ( 713 ) 646 - 2391\ne - mail : dfarmer @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.821+0000", "entityId": 4873, "properties": {"text": "Subject: announcing outlook web access for houston outlook users\nattention : houston - based outlook users\nthe global messaging team is proud to announce that beginning today , monday july 16 th , houston - based enron employees that have been migrated to outlook will be able to securely access their enron email from anywhere on the web . this means that if you can get on to the internet , you can access your enron email with outlook web access ( owa ) without having to dial in to enron ' s network . please note that this is not available to those users still on lotus notes but will be available once they are migrated to outlook .\nonce on the internet , type mail . enron . com in your browser address window and supply your enron network logon credentials as username and password . for example :\nusername : jdoe 4\npassword : * * * * * * * *\nonce you log in , outlook web access opens your enron email mailbox . outlook web access ( owa ) allows you to send and receive mail , perform calendar tasks and manage your mail and contacts , as well as access your mailbox folders . at this time , public folders are not accessible via owa . please keep in mind that outlook web access is a browser - based version of what you might use in the office , so the functionality may be slightly different and some features of outlook 2000 may not be available at all . additionally , owa is only supported using internet explorer 5 . x only and not supported with netscape .\noutlook web access is the standard email package for connecting to your enron mail from home , whether you are using an enron - issued home pc , an internet connection with your personal home pc , or your clickathome pc . we will not support the use of the full outlook installation for home use .\noutlook web access for remote locations and european / apac enron sites is currently being addressed and will be available soon . at this time , owa is only available if your mailbox resides on a houston mail server .\nif you have any questions , please call :\nresolution center at x 31411 or\nets solutions center at x 54745", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.826+0000", "entityId": 4874, "properties": {"text": "Subject: fw : epgt\ndaren - can you please let me know the status on this for 02 / 2000 ? thanks , gloria\n- - - - - original message - - - - -\nfrom : barkowsky , gloria g .\nsent : friday , june 29 , 2001 4 : 47 pm\nto : farmer , daren j .\ncc : garcia , clarissa\nsubject : re : epgt\ndaren - what about february 2000 ? it doesn ' t look like it ' s been pathed for hpl and chan .\nplease let me know . thanks , gloria\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , june 25 , 2001 5 : 16 pm\nto : barkowsky , gloria g .\nsubject : re : epgt\ndeal 871172 has been pathed from the texas side .\nd\n- - - - - original message - - - - -\nfrom : barkowsky , gloria g .\nsent : friday , june 22 , 2001 4 : 50 pm\nto : garcia , clarissa ; farmer , daren j . ; dinari , sabra l .\nsubject : epgt\nclarissa - thanks so much for all your help with this pipe ! everything looks great . i just have a couple of paths\nthat i need to finish it :\njanuary 2000 - i need deal # 854688 pathed for epgt and for tetc . according to the invoice , we should have\n11 , 129 dth on the interconnect .\nfebruary 2000 - i need deal # 871184 pathed for hpl and chan . hpl should have 3 , 600 dth and chan should\nhave 11 , 500 dth on the interconnect .\njuly 2000 - deal # 871172 has an interconnect issue . according to mops contract # 105124 , they received 8 , 275 dth\non the matagorda 624 , but according to epgt , they delivered 10 , 362 dth to hpl ( ? ) could this possibly\nneed to be split somehow , or do you have any other ideas ?\nlet me know . thanks , gloria 3 - 7118", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.831+0000", "entityId": 4875, "properties": {"text": "Subject: please print\nhi honey please print this too . i want to copy it tonight at church love\nyou\n- kim . wps", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.836+0000", "entityId": 4876, "properties": {"text": "Subject: please print\n- - - - - - - - - forwarded message - - - - - - - - - -\nfrom : \" scott franks \"\nto : \" ' jill tackett ' \" , \" provance ,\nann \" @ mail . clearsail . net , \" ' tonya farmer ' \"\ncc : \" provance , ann \" @ mail . clearsail . net ,\n\" ' gayla deluke ' \"\ndate : thu , 12 jul 2001 18 : 19 : 18 - 0500\nsubject : new members\nmessage - id :\ni ' ll now be including gayla on these e - mails because she has agreed to\nwrite\nbrief profiles of each new family for the bulletin .\nhere are the first friends candidates from this week ( please remember to\ntell me what assignments you made so i can track that with my new member\ndata - thanks ! )\njeanna bent\n8002 fonthill dr\nspring , tx 77379\n281 - 376 - 4470\n( champion oaks )\nmichael and jeanna are both cpa ' s . they have a 7 - year - old son named\nmason .\nmichael ' s company will be relocating to new hamphsire in the fall , but he\ndoes not want to move , so he will be looking for a new job soon . michael\nwas just baptized two weeks ago after studying with gerald bendele . he\nwas\nraised in a catholic background . i believe jeanna has been a christian\nfor\nsome time .\nsandra caballero\n19707 rackingham\nhumble , tx 77338\n281 - 540 - 2331\ndon & sandra are transferring membership from hidden valley c of c .\nprior\nto that they attended katy for several years . don works at compaq and\nsandra is at clark electric and spring isd . they have a 16 year old son\nnamed daniel at spring h . s . and an 18 year old daughter named amanda at\nnorth harris community college .\nvickie gonsoulin\n15718 falling creek\nhouston , tx 77068\n281 - 444 - 8157 ( h )\n( oak creek )\nvickie and bill are transferring from the magnolia church . they have a\nson\nnamed dustin who is a junior in high school . he participated with\nbammel ' s\nltc program even before they placed membership here . they also have an\nolder , married son . bill grew up in this area . in fact , ron anders was\nhis\nfootball coach .\nget internet access from juno !\njuno offers free or premium internet access for less !\njoin juno today ! for your free software , visit :\nhttp : / / dl . www . juno . com / get / tagj .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.841+0000", "entityId": 4877, "properties": {"text": "Subject: print again\nthanks love you\n- kim 2 . txt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.846+0000", "entityId": 4878, "properties": {"text": "Subject: order confirmation from footlocker . com\ndear daren :\nthank you for ordering from footlocker . com\n? order number : 1206478 . 00\n? customer number : 2481611\n? your order will ship within approximately 24 hours upon credit card company approval .\nyour order detail :\norder # 1206478 . 00 received on : july 18 , 2001\nshipping to :\ndaren farmer\n2747 meadow tree\nspring\ntx , 77388\n281 - 288 - 8251\nqty price product no . description\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n1 $ 29 . 99 39362101 nike men ' s air team unite ( 10 . 5 | white / black )\nsubtotal : $ 29 . 99\ntax : $ 2 . 68\nshipping : $ 6 . 99\ndiscounts : ( $ 0 . 00 )\ncredits : ( $ 0 . 00 )\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntotal : $ 39 . 66", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.852+0000", "entityId": 4879, "properties": {"text": "Subject: the houston expl dec 2000\ndaren :\ni ' m not sure if you can help me , but i have a danny conner deal from december 2000 that has a price issue .\nwe were buying gas from the houston exploration company on black marlin , high island 138 / hpl meter 98663 , deal 508426 . the deal was priced at hsc - 0 . 14 . in december , a new platform came on , high island 115 / hpl meter 986431 . it did not start flowing until the 20 th . danny did not put a new deal in for this meter , so we combined the gas on deal 508426 . the houston exploration thinks that the gas at hi 115 should be kept separate and priced at hsc gd - 0 . 14 since it did not begin flowing until the 20 th . we agree that we received the gas . we have the pipeline statement from black marlin . we just don ' t have the same pricing . the houston exploration shows that we owe them an additional $ 222 k due to this price difference . we only purchased this gas in dec 2000 and jan 2001 . the deal for jan , 547063 , was priced at gd - 0 . 14 . can you verify how this deal should be priced ? i sent this issue to danny back in january and he said the if price was correct , but the houston exploration is sticking to their price . if you need to talk to their trader , his name is lester lipperdt 713 - 830 - 6960 .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.856+0000", "entityId": 4880, "properties": {"text": "Subject: dfarmer @ enron . com - thank you for placing your order at\nfootlocker . com\nthank you for placing your order at footlocker . com . foot locker appreciates your business and we hope you visit again soon .\nfoot locker has shipped your item ( s ) today via standard shipping ( approximately 3 - 7 business days mon - fri ) .\nyour order number is 1206478 . 00 ; your customer number is 2481611 .\nyour order was shipped to :\n2747 meadow tree ln\nspring , tx 773885434\nthe following item ( s ) were included in this shipment :\nitem price shipped subtotal\nnike air team unite - wht / blk 29 . 99 1 29 . 99\nitems subtotal - $ 29 . 99\nshipping & handling - $ 6 . 99\ntax - $ 2 . 68\ntotal - $ 39 . 66\nif you have any questions about your order , please e - mail us at : customer _ service @ footlocker . com . you can also call our customer service representatives toll - free at 1 - 800 - 991 - 6815 . thank you again for shopping at footlocker . com we look forward to your next visit .\nhttp : / / www . footlocker . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.862+0000", "entityId": 4881, "properties": {"text": "Subject: txu fuel company\nwe cannot enter into a contract with txu as they require ena to warrant gas sold is \" intrastate \" gas . for obvious reasons this is not possible . please give me a call should you wish to discuss this further .\ndp\ndebra perlingiere\nenron north america legal\n1400 smith street , eb 3885\nhouston , texas 77002\ndperlin @ enron\n713 - 853 - 7658\n713 - 646 - 3490 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.871+0000", "entityId": 4882, "properties": {"text": "Subject: el paso merchant deal 637225\ni have not heard back from mike olsen on this . can you extend this deal for me ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 07 / 20 / 2001 08 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 07 / 03 / 2001 11 : 28 am\nto : michael olsen / na / enron\ncc :\nsubject : el paso merchant deal 637225\nmike :\ni need to have deal 637225 extended to include april and may 2001 . the allocations we received from el paso show that hplc sold gas to them at meter 6884 for both months . let me know if you have any questions .\nthanks ,\nmegan\nx 5 - 7480", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.878+0000", "entityId": 4883, "properties": {"text": "Subject: equistar swing 5 / 01\nwe need to add tgpl meter 52 - 1087 to deal 895951 . we have some swing gas for may that we need to allocate .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.884+0000", "entityId": 4884, "properties": {"text": "Subject: jeff ' s corner - - a message from the ceo on the intranet\nas much as i ' d like to , i can ' t get to every floor or to every location across enron to talk with you about what is going on around the company . so i ' m doing the next best thing . beginning today , you can access a videotaped message from me about our second quarter results and our new strategy concerning enron broadband services . as you listen , i hope you find the information valuable and this new way of communicating easy and timely . i plan to do this regularly , so watch your e - mail for future messages . thanks for listening and have a great day .\nclick on this link to access jeff ' s video message :\nhttp : / / home . enron . com / jeffscorner /\nif you encounter technical difficulties , please contact your it technical support representative .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.888+0000", "entityId": 4885, "properties": {"text": "Subject: fw : 30 th floor after move\ni need the following . . . . . . . .\nassume we are in the new building and we have technical problems that force us out of the building either due to it connection issues or problems with the building itself ( ac , power , etc . ) . if we do have to leave the plan is to have the 30 th floor completely available in this building as a backup for both the gas and power side . obviously space is limited so what we will do is only bring the people that need to be in the building to get noms out and send the others home to handle business remotely . one approach is to take the edi pipes and have them go to the 30 th floor to ensure they have the support and quicker system then if they did their noms from home . using this approach , and considering the space constraint please give me the number of desks you will need on the 30 th floor . i ' m open to suggestions so if you have a different approach or some good ideas feel free to share them . i need this by friday 7 / 27 no later than noon .\ntks - bob\n- - - - - original message - - - - -\nfrom : hall , bob m\nsent : monday , july 23 , 2001 5 : 04 pm\nto : gossett , jeffrey c . ; superty , robert ; white , stacey w .\ncc : reeves , leslie\nsubject : 30 th floor after move\nduring the first six months after the move to the new building , it has recommended that the 30 th floor be maintained in case of any emergency .\nwhat we have to do is come up with the list of critical personnel . there will be very limited seating ,\nthese should be just the people to finish the day when ever that happens .\nlet ' s get together tomorrow and discuss .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.892+0000", "entityId": 4886, "properties": {"text": "Subject: re : equistar swing 5 / 01\ntejas is allocating the 9 th and 10 th to enron .\nfrom : daren j farmer / enron @ enronxgate on 07 / 24 / 2001 04 : 38 pm\nto : megan parker / corp / enron @ enron\ncc :\nsubject : re : equistar swing 5 / 01\non what day ( s ) are they showing the excess volumes ?\nd\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : monday , july 23 , 2001 11 : 22 am\nto : farmer , daren j .\nsubject : equistar swing 5 / 01\nwe need to add tgpl meter 52 - 1087 to deal 895951 . we have some swing gas for may that we need to allocate .\nthanks ,\nmegan\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.897+0000", "entityId": 4887, "properties": {"text": "Subject: tenaska iv adjustments 2001\nhere are some changes i need for the tenaska deal . let me know if you have any questions .\ndeal prod month\n384258 may 2001 change demand fee from $ 2 , 026 , 347 . 17 to $ 1 , 926 , 685 . 34\n514353 may 2001 change volume from 45 , 000 to 44 , 138 .\nnominated supply 1 , 368 , 295 ( 44 , 138 / day )\nactual deliveries 877 , 696\n384258 june 2001 change demand fee from $ 3 , 938 , 205 . 00 to $ 3 , 578 , 257 . 50\n514353 june 2001 change volume from 45 , 000 to 53 , 733\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.902+0000", "entityId": 4888, "properties": {"text": "Subject: fw : june 2001 blue dolphin\ndarren , you may want to give antoinette a call >\n- - - - - original message - - - - -\nfrom : beale , antoinette\nsent : friday , july 27 , 2001 2 : 04 pm\nto : smith , george f .\ncc : beale , antoinette\nsubject : june 2001 blue dolphin\ngeorge ,\ni just wanted to touch base with you on the status of june 2001 blue dolphin . you stated on tuesday that enron was not responsible for june . could you update me on any information you have acquired ?\nthanks !\nantoinette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.906+0000", "entityId": 4889, "properties": {"text": "Subject: the houston expl dec 2000\ndarren :\nelizabeth hernandez fixed this deal for me . i don ' t need for you to look into it . thanks anyway .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 07 / 27 / 2001 01 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : megan parker 07 / 19 / 2001 10 : 27 am\nto : daren j farmer / enron @ enronxgate\ncc :\nsubject : the houston expl dec 2000\ndaren :\ni ' m not sure if you can help me , but i have a danny conner deal from december 2000 that has a price issue .\nwe were buying gas from the houston exploration company on black marlin , high island 138 / hpl meter 98663 , deal 508426 . the deal was priced at hsc - 0 . 14 . in december , a new platform came on , high island 115 / hpl meter 986431 . it did not start flowing until the 20 th . danny did not put a new deal in for this meter , so we combined the gas on deal 508426 . the houston exploration thinks that the gas at hi 115 should be kept separate and priced at hsc gd - 0 . 14 since it did not begin flowing until the 20 th . we agree that we received the gas . we have the pipeline statement from black marlin . we just don ' t have the same pricing . the houston exploration shows that we owe them an additional $ 222 k due to this price difference . we only purchased this gas in dec 2000 and jan 2001 . the deal for jan , 547063 , was priced at gd - 0 . 14 . can you verify how this deal should be priced ? i sent this issue to danny back in january and he said the if price was correct , but the houston exploration is sticking to their price . if you need to talk to their trader , his name is lester lipperdt 713 - 830 - 6960 .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.911+0000", "entityId": 4890, "properties": {"text": "Subject: mgi supply jan 2001\ndarren :\ni have a price issue with mgi supply for january 2001 . for deal 551414 , we have tiered pricing for days 13 - 16 . the first 20 , 000 at $ 8 . 71 and everything over at agua dulce gdp + $ 0 . 01 . mgi has the deal priced at the gdp + $ 0 . 01 only . they do not have the $ 8 . 71 . should this pricing be tiered ? mgi would owe us $ 10 , 600 . 00 if we go with their pricing .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.915+0000", "entityId": 4891, "properties": {"text": "Subject: happy birthday ! ! !\ndaren ,\ni contend that a person should be given their birthday as a paid holiday .\nhowever , i know that the likelihood of your being off work during bid week\nis extremely slim . i hope that you have a great day anyway and a great\nweekend with your precious family . we ' ll give you a call this evening or\nover the weekend to extend our birthday greeting ( and so sally can sing to\nyou ) .\nwe are so looking forward to seeing you , tonya , cole and jake next weekend .\nwe ' re disappointed that you will not be able to come until the weekend but\nare grateful that you are willing to share your family and allow them to\ncome a few days early . we will certainly enjoy our visit with them .\nthank you for being the wonderful husband and best friend to tonya that you\nare . it gives sally and me such joy seeing tonya highly honored and loved\nby you . you are a wonderful father too and it ' s so apparent the bond of\nlove that you enjoy with your sons . they watch your every move and hang on\nyour every word . we ' re so very proud of you for being the spiritual leader\nof your family , for being such an outstanding provider for their every need ,\nand for putting up with the \" outlaws \" . in addition to our friendship , i\nlove you as my own son . again , happy birthday .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.920+0000", "entityId": 4892, "properties": {"text": "Subject: txu contract search\nanthony ,\ndaren farmer on the texas desk called me today looking for an active contract that ena has with txu gas distribution ( formerly txu lone star gas ) dated 11 / 1 / 97 . i queried global contracts for that cp and didn ' t find anything , active or not . please research all the txu entities to see if you can find a physical contract with ena with that date . please call daren at x 36905 if you have any questions .\nthanks ,\nstacey barclay richardson\nenron net works , llc - global contracts\nstacey . richardson @ enron . com\n( 713 ) 853 - 0569 office\n( 713 ) 646 - 2495 fax\n( 713 ) 710 - 6084 pager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.924+0000", "entityId": 4893, "properties": {"text": "Subject: enw promotion announcement\nwe are pleased to announce the following promotions within enron net works . these promotions will be effective august 1 , 2001 . we would like to thank these individuals for their past contributions and recognize their instrumental roles in the growth and success of the organization . please join us in congratulating the following employees and wishing them continued success with enron .\naccounting\nto senior director\nroper , kerwin\nto director\ngalvan , michael\nto senior specialist\narmstrong , kristin\ncommodity logic\nto senior director\nharrison , susan\nto director\nslagle , carrie\nglobal risk management operations\nto senior director to specialist\nearnest , scott brady , kevin\nhall , d . todd logan iii , jackson\ndewett , laura\nto director hoang , charlie\nbruce , michelle harrell , willie\nfondren , mark\nstubbs , shelly to staff\nrodriguez , melissa\nto manager\nbhatti , rashpal to administrative coordinator\nlove , phillip villanueva , chantelle\noliver , david\nrae , david to administrative assistant ii\nvaldes , john saldana , america\nwalker , lisa upchurch , arlene\nto senior specialist to senior clerk\nchristiansen , suzanne white , stuart\ndempsey , dalton\nhollander , corey\nmyers , donnie\npallant , kathryn\nschumack , sherlyn\nshore , geraldine\nwallumrod , ellen\nenrononline - origination\nto associate\nrostant , justin\ntechnology\nhouston - based employees\nto senior director to senior specialist\nbehney , christopher allen , diana\nbucknell , martin atta , asem\ndopson , lametrice black , gregory\nguadarrama , michael clark , cynthia\ngubser , marlin fuller , william\nhillier , bob hardy , chryst\nmontagne , kevin humlicek , robert\nnat , steve invedy , tantra\nrao , ramesh james , matthew\nwei , zhiyong jameson , lance\nly , danny\nto director macphail , shawn\nbowling , william mansfield , carey\ncox , susan ( paige ) mei , xiaojun\nluu , duong mu , qi\nmuschar , daniel\nto manager perret , jonathan\nalatorre , carlos rasmussen , michael\nandrews , stephen tiner , brent\nelliott , clayton yang , zhiyun\nreid , martin\nsteward , larry to specialist\nvalor , hildemaro ( tino ) gallegos , edgar\nguerrero , sam\nmanguba , jimmy\nschlein , guy\nwu , betty\nto administrative coordinator\nweatherstone , mary\nlondon - based employees\nto senior director to junior professional\nhudson , brian cooper , russell\nlang , douglas\nto senior support larsson , johan\nbowie , keith li , yi jone\nmessenger , jon mclean , gordon\nscott , denver maffia , mark\nmellitas , james\nto junior support oxley , peter\nahmed , sohail petri , ingrid\nde - coi , david van rijn , jasper\nlee , calvin wadey , joanne\nmitchell , dominic\nmorris , dan to entry professional\nrear , timothy alistair , reeve\nmalik , ednan\nto senior professional\nashton , david to senior clerk\nbenjamin , phil ali , mohammed\nevans , christopher cresswell , james\nhowell , lee stevenson , scott\nhunter , julia\nkhan , golam\nnicola , trill\nstephens , scott\nsteven , thomas\ntsang , david\nwalker , neill\nwilson , melinda", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.929+0000", "entityId": 4894, "properties": {"text": "Subject: fw : texas map\ncheck these out :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.934+0000", "entityId": 4895, "properties": {"text": "Subject: request submitted : access request for lisbet . newton @ enron . com\nyou have received this email because you are listed as a data approver . please click http : / / itcapps . corp . enron . com / srrs / auth / emaillink . asp ? id = 000000000049773 & page = approval to review and act upon this request .\nrequest id : 000000000049773\nrequest create date : 7 / 31 / 01 7 : 55 : 32 am\nrequested for : lisbet . newton @ enron . com\nresource name : sitara houston production texas edit logistics\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.939+0000", "entityId": 4896, "properties": {"text": "Subject: quack\n( see attached file : duck hunting . mpe )\n- duck hunting . mpe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.944+0000", "entityId": 4897, "properties": {"text": "Subject: re : june 2001 blue dolphin\ndarren ,\nthank you for such a prompt response . when looking in the volume management , i saw volume scheduled in ena and ena upstream . i actualized in ena and i heard that blue dolphin will go to upstream starting july production month . could you confirm which entity for the month of june ?\nthanks !\nantoinette\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , july 30 , 2001 3 : 20 pm\nto : beale , antoinette\nsubject : fw : june 2001 blue dolphin\nantoinette ,\ni spoke with nelson ferries today . we are responsible for the transport fees on blue dolphin for june . i have pathed the volumes in unify . please look into this and let me know if you have any questions . additionally , i input the purchase and sale deals that were not in the system . can you please inform the appropriate person in settlements to handle those deals ?\nthanks .\nd\n- - - - - original message - - - - -\nfrom : smith , george f .\nsent : friday , july 27 , 2001 2 : 15 pm\nto : farmer , daren j .\nsubject : fw : june 2001 blue dolphin\ndarren , you may want to give antoinette a call >\n- - - - - original message - - - - -\nfrom : beale , antoinette\nsent : friday , july 27 , 2001 2 : 04 pm\nto : smith , george f .\ncc : beale , antoinette\nsubject : june 2001 blue dolphin\ngeorge ,\ni just wanted to touch base with you on the status of june 2001 blue dolphin . you stated on tuesday that enron was not responsible for june . could you update me on any information you have acquired ?\nthanks !\nantoinette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.949+0000", "entityId": 4898, "properties": {"text": "Subject: killam oil company , ltd . , meters 098 - 5427 & 098 - 6831 , bruni hughes\nc / p & fullbright c / p , n . e . bruni field , webb co . , tx\ncan you help me with this ? i sent an email to bob cotten because killam oil called when they did not receive their payment for may 2001 . please read the email from george weissman below and let me know what you think .\nmegan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by megan parker / corp / enron on 08 / 03 / 2001 08 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngmweissman @ aep . com on 08 / 02 / 2001 05 : 40 : 45 pm\nto : megan . parker @ enron . com\ncc : rrcotten @ aep . com , mrgraves @ aep . com , jabubert @ aep . com\nsubject : killam oil company , ltd . , meters 098 - 5427 & 098 - 6831 , bruni hughes c / p 713 . 990 . 5064 pager\n- - - - - forwarded by george m weissman / hol / aepin on 08 / 02 / 01 04 : 44 pm - - - - -\nrobert r cotten 07 / 27 / 01 08 : 34 am to : george m weissman / hol / aepin @ aepin cc : megan . parker @ enron . com subject : killam oil may 2001\ngeorge ,\nplease read megan ' s e - mail below . the spreadsheet for may did not reflect any nomination for killiam oil . did the contract with killiam terminate ? should we be purchasing from meter ( s ) 5427 and / or 6831 and , if so , from what counterparty ? please advise . thanks .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert r cotten / hol / aepin on 07 / 27 / 2001 08 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : rrcotten @ aep . com\ncc :\nsubject : killam oil may 2001\nthis e - mail is the property of enron corp . and / or its relevant affiliate and may contain confidential and privileged material for the sole use of the intended recipient ( s ) . any review , use , distribution or disclosure by others is strictly prohibited . if you are not the intended recipient ( or authorized to receive for the recipient ) , please contact the sender or reply to enron corp . at enron . messaging . administration @ enron . com and delete all copies of the message . this e - mail ( and any attachments hereto ) are not intended to be an offer ( or an acceptance ) and do not create or evidence a binding and enforceable contract between enron corp . ( or any of its affiliates ) and the intended recipient or any other party , and may not be relied on by anyone as the basis of a contract by estoppel or otherwise . thank you .\nbob :\ni need some help with killam oil for may 2001 . they called me yesterday\nasking about their may payment because they hadn ' t received it yet . i\nlooked in path manager and saw that we did not have any deals with them in\nmay . in april , we paid them for gas at hpl meters 985427 and 986831 ( deal\n742826 and 742829 ) . the gas at these meters has been put on hpl ' s\nstrangers gas contract in pops for may . do you know why we do not have any\ndeals at these meters for may ? i was told by charles howard that there is\na pending assignment for these meters form hurd to killam . he said for\njune 2001 , aep paid hurd . do you know who we are suppose to pay for may ?\ni would appreciate any help you can give me .\nthanks ,\nmegan\n713 - 345 - 7480", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.954+0000", "entityId": 4899, "properties": {"text": "Subject: united salt quote\ndaren / dave -\nsorry i didn ' t get this out yesterday . give me a call if you have any\nquestions .\n- unitedsalt 8022 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.960+0000", "entityId": 4900, "properties": {"text": "Subject: tenaska iv oct 2000\ndarren :\nplease change the demand fee as noted below . i did not calculate oct 2000 correctly . tenaska iv will return the money this month .\ndeal 529856 oct 2000 change demand fee from $ 2 , 349 , 906 . 50 to $ 2 , 221 , 567 . 44\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.967+0000", "entityId": 4901, "properties": {"text": "Subject: glo deals 2001\ndarren :\nhere is my problem . as you know , hplc did a deal with texas general land office where we would exchange gas for crude . the problem was hplc was selling the gas and enron gas marketing was receiving the crude . bryce baxter worked out a series of intercompany deals between hplc , ena and egm that would book the deal correctly . julie meyers was told how to create the deals and she completed january and february , except for one small part , but march forward was never completed . the attached word document explains the procedure . basically , we were suppose to book an hplc sale to the tglo with volume and zero price . this would book the volume to the gl and zero out the receivable since we were never going to receive cash from tglo . then , we would book a sale from hplc - wellhead to ena - wellhead for the value of the gas only ( no volume ) and a sale from ena - wellhead to egm for the value of the crude ( no volume ) . for these deals , we would use demand fees . egm will pay ena for the crude dollars .\ni will give you the deals for january so you can see how the dollars move . you will see that the price is still on the sale from hplc to tglo . julie zeroed this out , but o ' neal put it back . i ' ve left him a message to find out why .\n1 . sale from hplc - im wellhead to tglo 547201\n2 . sale from hplc - im hplc to hplc - im wellhead 547205\n3 . sale from hplc - wellhead to ena - im wellhead texas 679847\n4 . sale from ena - im wellhead texas to egm 679859\nhere is a preliminary list of what needs to be done to finish out the transactions for march , april and may . the previous email went to kam keiser , john grass , linda roberts and dayem khandker . they may be able to help us work through this . let me know if you have any questions .\n1 . zero out the prices on the hplc sales to texas general land office , leave volume only .\njan 2001 547201\nfeb 2001 591307\nmarch 2001 640685\napril 2001 692167\nmay 2001 755787\n2 . enter a ticket for the hpl - wellhead sale to ena - wellhead for march , april and may 2001 ( the feb deal number is 679848 ) for the value of the gas below . this should be entered as a demand fee only , no volume .\nmarch 2001 $ 774 , 612 . 50\napril 2001 $ 705 , 870 . 00\nmay 2001 $ 664 , 609 . 00\n3 . enter a ticket for the sale from ena - wellhead to egm for the value of the crude below . there is an existing ticket for jan and feb that can be extended , deal 679859 .\nmarch 2001 $ 757 , 603 . 93\napril 2001 $ 820 , 983 . 94\nmay 2001 $ 598 , 885 . 13\n4 . update jan and feb crude values on deal 679859\njan 2001 change $ 886 , 638 . 63 to $ 886 , 015 . 18\nfeb 2001 change $ 839 , 008 . 31 to $ 842 , 475 . 06\nlet me know if you want me to come down to discuss .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.974+0000", "entityId": 4902, "properties": {"text": "Subject: fw : opm hours survey - july 2001\ni noticed you both attributed hours to the eso 02 activity in the hours survey . the system might not have prompted you to split out by percentages the commercial teams you supported perfoming that activity because i don ' t see it out there . will you please let know which commercial team you supported and the percentage - it looks like tom martin put 100 % to asset trading but i ' m not sure if it would be the same for the both of you .\nthanks ,\nroxanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.979+0000", "entityId": 4903, "properties": {"text": "Subject: resume - tyler cutshall\na friend of mine that i ' ve known since college at harding is looking for a\njob in it or consulting .\nhis last stint was as a senior systems engineer in compaq ' s sap solutions\ncenter .\nhe ' s a stellar guy , and very smart , as you can tell from his resume .\nif you know of any opportunities , please pass this along .\nthanks ,\nram tackett\nowner , abacus technologies\n17611 loring lane , spring , tx 77388 - 5746\nmailto : rtackett @ abacustech . net\nv : ( 281 ) 651 - 7106\nf : 1 + ( 281 ) 528 - 8636\nweb : http : / / www . abacustech . net\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.984+0000", "entityId": 4904, "properties": {"text": "Subject: tenaska iv july\ndarren :\nplease remove the price on the tenaska iv sale , deal 384258 , for july and enter the demand fee . the amount should be $ 3 , 902 , 687 . 50 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.989+0000", "entityId": 4905, "properties": {"text": "Subject: fw : executed agency - ena and tenaska gas company\ni ' m having trouble understanding this . is she referring to the unsigned agency agreement between ena and tenaska iv texas partners , ltd . ( aka ponderosa pine energy partners ) , an agency agreement between ena and lone star ( i ' m not familiar w / the name txu gas distribution ) , or an agreement between any of the former and tenaska gas , either relating to the cleburne project or otherwise ? ? ? ?\n- - - - - original message - - - - -\nfrom : hilliard , marlene\nsent : thursday , august 09 , 2001 1 : 50 pm\nto : hill , garrick ; farmer , daren j .\nsubject : executed agency - ena and tenaska gas company\ni am searching for an executed agency agreement between ena and tenaska gas company . ena is agent on the txu gas distribution pipeline .\nthis agency agreement relates to contract no . 1671 and contract no . 1856 on the txu gas distribution pipeline .\nplease let me know if either of you are in possession of this agency agreement .\nthank you .\nmarlene d . hilliard\nenron net works , llc\ntel : ( 713 ) 853 - 9167\nfax : ( 713 ) 646 - 2495", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.993+0000", "entityId": 4906, "properties": {"text": "Subject: fw : lower colorado river authority\n- - - - - original message - - - - -\nfrom : gmweissman @ aep . com @ enron [ mailto : imceanotes - gmweissman + 40 aep + 2 ecom + 40 enron @ enron . com ]\nsent : friday , august 10 , 2001 4 : 55 pm\nto : martin , thomas a .\nsubject : lower colorado river authority\ngeorge 832 . 668 . 3173 aep 12 th floor ; 713 . 990 . 5064 pager\n- - - - - forwarded by george m weissman / hol / aepin on 08 / 10 / 01 04 : 54 pm - - - - -\ngeorge m weissman 08 / 10 / 01 04 : 52 pm to : mbell @ lcra . org cc : brian m riley / hol / aepin @ aepin , tom . martin @ enron . com , melissa r graves / hol / aepin @ aepin bcc : donald p reinhardt / hol / aepin @ aepin , gerald w lofton / hol / aepin @ aepin , jerry a bubert / hol / aepin @ aepin , susan c smith / hol / aepin @ aepin , vance l taylor / hol / aepin @ aepin , janet m freeman / aepin @ aepin , michael w morris / hol / aepin @ aepin , brian m riley / hol / aepin @ aepin , sandi m braband / aepin @ aepin , james i ducote / hol / aepin @ aepin subject : lower colorado river authority\nto : mickey bell\np . o . box 220\n3701 lake austin blvd .\naustin , tx 78767\n512 . 473 . 3571\n512 . 473 . 3533\nthis is to confirm our telephone conversation of earlier today in which we advised that the october 5 , 1998 contract for sale of natural gas between lower colorado river authority , buyer , and enron capital 713 . 990 . 5064 pager\n[ image ]\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:25.998+0000", "entityId": 4907, "properties": {"text": "Subject: fw : 8743 meter set up ; fac # 501869\nper authorization fromdaren farmer , i have changed pipe code pgev to pgtt . the meter no . will remain the same . the rate zone is pgtt and the trade zone is tufco .\nshould you have any further questions , please do not hesitate to contact me .\nmarlene d . hilliard\n- - - - - original message - - - - -\nfrom : kdstewart @ aep . com @ enron [ mailto : imceanotes - kdstewart + 40 aep + 2 ecom + 40 enron @ enron . com ]\nsent : friday , august 10 , 2001 1 : 30 pm\nto : hilliard , marlene\nsubject : 8743 meter set up ; fac # 501869\nlook thru the sequence history . the meter # on the opposite side did not change\neven though the pipe code did . that is all i have to suggest .\nto : , \" farmer , daren j . \"\ncc :\nsubject : fw : fw : 8743 meter set up ; fac # 501869\ni need to get the approval from daren farmer ext . 3 - 6905 . please feel\nfree to contact him to discuss this matter .\nalso , i do not believe the meter no . will be the same . i searched pi\ngrid and it shows hpl with drn 92686 interconnect with meter no .\n237 - 07 - 1 - 004 , drn 26879 for teco pipeline co .\nwe have discrepencies / isssues .\nwhat verifying information do you have for this meter ?\nmarlene d . hilliard\next . 3 - 9167\n> - - - - - original message - - - - -\n> from : kdstewart @ aep . com @ enron\n> [ mailto : imceanotes - kdstewart + 40 aep + 2 ecom + 40 enron @ enron . com ]\n> sent : friday , august 10 , 2001 1 : 16 pm\n> to : hilliard , marlene\n> subject : re : fw : 8743 meter set up ; fac # 501869\n>\n>\n> i have already created a new sequence starting 7 / 01 / 2001 , can you\n> change the pipe\n> code and other relavant info in the new sequence starting 7 / 01 / 2001 .\nthis e - mail is the property of enron corp . and / or its relevant affiliate and may contain confidential and privileged material for the sole use of the intended recipient ( s ) . any review , use , distribution or disclosure by others is strictly prohibited . if you are not the intended recipient ( or authorized to receive for the recipient ) , please contact the sender or reply to enron corp . at enron . messaging . administration @ enron . com and delete all copies of the message . this e - mail ( and any attachments hereto ) are not intended to be an offer ( or an acceptance ) and do not create or evidence a binding and enforceable contract between enron corp . ( or any of its affiliates ) and the intended recipient or any other party , and may not be relied on by anyone as the basis of a contract by estoppel or otherwise . thank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.002+0000", "entityId": 4908, "properties": {"text": "Subject: fw : hub maps\nking ranch and hsc maps are located on the o drive at dropbox \\ fraley\n- - - - - original message - - - - -\nfrom : redmond , brian\nsent : friday , august 10 , 2001 5 : 07 pm\nto : baumbach , david ; hull , bryan ; farmer , bill\nsubject : fw : hub maps\nas discussed\n- - - - - original message - - - - -\nfrom : fraley , keith\nsent : tuesday , august 07 , 2001 8 : 33 am\nto : redmond , brian\nsubject : hub maps\nbrian , here are the hub maps that you wanted . in addition , i had trouble finding the kings ranch hub . if there another name that it could be under please advise or if you know that location off hand , let me know . also , the beaumont hub was not in out database so we just did a 20 mile radius around the city center . if this is not what you wanted let me know .\nk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.007+0000", "entityId": 4909, "properties": {"text": "Subject: fw : 8743 meter set up ; fac # 501869\ni have a correction :\ni changed the pipe code but the system will not allow me to save because the meter no . for pgtt 4100101 already exist on facility no . 517817 .\nkarl please contact me as soon as possible to discuss this matter .\nmarlene d . hilliard\n- - - - - original message - - - - -\nfrom : hilliard , marlene\nsent : friday , august 10 , 2001 4 : 35 pm\nto : ' kdstewart @ aep . com ' ; farmer , daren j .\nsubject : fw : 8743 meter set up ; fac # 501869\nper authorization fromdaren farmer , i have changed pipe code pgev to pgtt . the meter no . will remain the same . the rate zone is pgtt and the trade zone is tufco .\nshould you have any further questions , please do not hesitate to contact me .\nmarlene d . hilliard\n- - - - - original message - - - - -\nfrom : kdstewart @ aep . com @ enron [ mailto : imceanotes - kdstewart + 40 aep + 2 ecom + 40 enron @ enron . com ]\nsent : friday , august 10 , 2001 1 : 30 pm\nto : hilliard , marlene\nsubject : 8743 meter set up ; fac # 501869\nlook thru the sequence history . the meter # on the opposite side did not change\neven though the pipe code did . that is all i have to suggest .\nto : , \" farmer , daren j . \"\ncc :\nsubject : fw : fw : 8743 meter set up ; fac # 501869\ni need to get the approval from daren farmer ext . 3 - 6905 . please feel\nfree to contact him to discuss this matter .\nalso , i do not believe the meter no . will be the same . i searched pi\ngrid and it shows hpl with drn 92686 interconnect with meter no .\n237 - 07 - 1 - 004 , drn 26879 for teco pipeline co .\nwe have discrepencies / isssues .\nwhat verifying information do you have for this meter ?\nmarlene d . hilliard\next . 3 - 9167\n> - - - - - original message - - - - -\n> from : kdstewart @ aep . com @ enron\n> [ mailto : imceanotes - kdstewart + 40 aep + 2 ecom + 40 enron @ enron . com ]\n> sent : friday , august 10 , 2001 1 : 16 pm\n> to : hilliard , marlene\n> subject : re : fw : 8743 meter set up ; fac # 501869\n>\n>\n> i have already created a new sequence starting 7 / 01 / 2001 , can you\n> change the pipe\n> code and other relavant info in the new sequence starting 7 / 01 / 2001 .\nthis e - mail is the property of enron corp . and / or its relevant affiliate and may contain confidential and privileged material for the sole use of the intended recipient ( s ) . any review , use , distribution or disclosure by others is strictly prohibited . if you are not the intended recipient ( or authorized to receive for the recipient ) , please contact the sender or reply to enron corp . at enron . messaging . administration @ enron . com and delete all copies of the message . this e - mail ( and any attachments hereto ) are not intended to be an offer ( or an acceptance ) and do not create or evidence a binding and enforceable contract between enron corp . ( or any of its affiliates ) and the intended recipient or any other party , and may not be relied on by anyone as the basis of a contract by estoppel or otherwise . thank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.012+0000", "entityId": 4910, "properties": {"text": "Subject: august is known for hot deals !\ndear golfboxx . com members ,\nthe heat is here to stay , but tee times are fading fast . the deals this month\nare spectacular . take a look at the special offers that we have for you .\ngo to http : / / www . golfboxx . com and print out your coupons today . click\non courses on the home page and register at your favorite course . we will\nbe giving away free rounds of golf , equipment , and other prizes so register\ntoday .\nhere are the specials and announcements for this month :\nhttp : / / www . golfboxx . com\ngreatwood\n\" all you can can \" just got better for the month of august ! ! ! ! ! !\nmonday - wednesday it is now $ 35 . 00 for all the golf , all the range balls ,\nall the food ( some restrictions apply ) and all the fountain drinks you can\nconsume ! join us for breakfast in our dining room , play golf , have lunch\nand then play golf again ! you can do all of this for only $ 35 . 00 ! !\nremember , you also get your fountain drinks and range balls included\nas well . call ( 281 ) 343 - 9999 for a tee time and details ! thursday is\nonly $ 39 . 00 and friday is only $ 49 . 00 for the same deal .\natascocita\nmonday thru thursday\n$ 40 before 11 am\n$ 30 from 11 - 3 pm\n$ 20 after 3 pm\nfriday thru sunday\n$ 50 before 11 am\n$ 40 11 - 2 pm\n$ 30 2 - 4 pm\n$ 25 after 4 pm\ncheck out http : / / www . golfboxx . com for details and coupons .\nclear lake\nfree green fees\nplay for the cart fee only !\nany time monday & tuesday\nnot valid with any other offer\nnot valid on holidays\nplay for $ 19 before noon\nand $ 15 after noon\nwednesday - friday\nprices include 1 / 2 cart\nnot valid with any other offer\nnot valid on holidays\nsaturday & sunday\nplay for $ 26 after 10 am\nprices include 1 / 2 cart\nnot valid with any other offer\nnot valid on holidays\ncinco ranch\nspecial rates in august at cinco ranch\n* take advantage of our early tee times\n* play early and finish before it gets too hot ! ! !\n* special rates for golf in august are\nmonday thru thursday 7 : 30 / 9 : 30 am $ 25\nmonday thru thursday 12 : 00 / 3 : 00 pm $ 20\n* parents take notice ! ! ! juniors play free with adult . . .\nmonday thru thursday from 12 : 00 / 3 : 00 pm\ncall cinco ranch golf club at 281 - 395 - 4653 for your tee time today ! ! ! !\ncheck out our coupons on http : / / www . golfboxx . com too !\nkingwood cove golf club\nhave a ball\nmon - thur 6 am to 2 pm\n$ 20 . 00\nincludes green fee & cart + sleeve of balls\nkingwood cove golf club\nhave a ball\nsat - sun 11 am to 3 pm\n$ 25 . 00\nincludes green fee & cart + sleeve of balls\nthanks ,\nthe golfboxx . com team\nhttp : / / www . golfboxx . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.017+0000", "entityId": 4911, "properties": {"text": "Subject: june & july swing volumes for guadalupe power partners\nhi daren ,\ni appreciate your prompt attention to this matter . here are the swing volumes as you requested . don ' t pay attention to anything other than the highlighted columns in july ' s spreadsheet b / c it ' s not finished . if you need anything else , please let me know . thanks !\nvalerie vela\nenron net works , llc\ngas settlements\nt : 713 . 345 . 8749\nf : 713 . 646 . 8420", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.022+0000", "entityId": 4912, "properties": {"text": "Subject: final guest list & rooming list\nattached for your reference and review is the final guest list with activities , as well as the rooming list .\ni will be sending both our customers and employees a confirmation of this weekend ' s itinerary , today .\nif you have any questions or need me to make any changes , please let me know .\nthank you ,\nheather choate , c . p . s .\nasst . to bob hall\nenron americas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.027+0000", "entityId": 4913, "properties": {"text": "Subject: re : entex may 2001\nhoward ,\ncan you please respond to daren ' s question ? howard after we talked i thought you were going to just make the change effective 6 / 2001 . even if they do add these meters to the deals ena does not have a transport contract on unit to sell the gas to entex .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , august 13 , 2001 9 : 24 am\nto : schumack , sherlyn ; olsen , michael\ncc : jacobs , charles\nsubject : re : entex may 2001\nwe haven ' t had those meters on these deals for the entire year . why do we need to add them on the last month we have the deal ?\nd\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : monday , august 13 , 2001 8 : 41 am\nto : farmer , daren j . ; olsen , michael\ncc : jacobs , charles\nsubject : fw : entex may 2001\ndaren or mike ,\ncan you add these meters to the deals below ?\n- - - - - original message - - - - -\nfrom : hbcamp @ aep . com @ enron [ mailto : imceanotes - hbcamp + 40 aep + 2 ecom + 40 enron @ enron . com ]\nsent : thursday , august 09 , 2001 12 : 37 pm\nto : schumack , sherlyn\ncc : hbcamp @ aep . com ; ttnguyen @ aep . com ; ccernosek @ aep . com\nsubject : entex may 2001\nsherlyn ,\nthe pops meters 7107 , 7108 , and 7109 need to stay non allocatable and need to be allocated on unit gas pipeline . you will need daren or michael at enron to do the following\nadd meters 7107 , 7108 and 7109 on unit pipeline to sitara deals 70550\n70549\n70119\nthen you can run the pops 53 report for these meters or use your allocation to properly allocate to the meters on unit pipeline .\nonce this is done , let me know and i will zero out the pops meters .\nhc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.032+0000", "entityId": 4914, "properties": {"text": "Subject: tufco deal 108058\nbuddy - daren farmer called and said that on 4 / 30 / 2001 , on hpl deal # 108058 , that there was around 20 , 000 mmbtu scheduled , but when it was actualized , it was actualized at 0 . he thinks this is incorrect . can you check into this and get back with daren ? i ' ll be out of the office tomorrow , so please get back with him directly . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.036+0000", "entityId": 4915, "properties": {"text": "Subject: guadalupe power juneol\nhi daren ,\ni saw the volumes come across for deal 819594 . thanks for taking care of that so promptly . on day 18 , did you intentionally enter 50 , 000 days or was it a slip of the fingers ? did your information conflict with jill ' s - - she shows 30 , 000 for that day . . . . . . . . . . . . . . . . . . .\nvalerie vela\nenron net works , llc\ngas settlements\nt : 713 . 345 . 8749\nf : 713 . 646 . 8420", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.041+0000", "entityId": 4916, "properties": {"text": "Subject: what the heck\ndaren ,\nnow what ? i see ken is back and jeff is out . what a development . jeff has a lot of his bud ' s in high places . could be many changes on the horizon .\nhow you doing ? moved to new building yet ? i ' ll be looking for my tour invitation .\nhow ' s the kids , wife , and home ( read that work project ) ?\njen is home for a couple of weeks before heading back to waco . we are going up there to tour the new law school ( built with tobacco settlement money - - so we feel like contributators ) . she has four quarters down and 5 maybe 6 to go .\nson still in florida . we plan to run over there in september for a few days . maybe do disneyworld .\njeni is supposed to get us tickets to the nebraska game in waco this year . that should be fun . speaking of football , i see one texas team high in the polls . the other ? ? ? ? ? ? ?\ni got a new toy the other day . sears had a good sale on a power washer i ' ve had my eye on , so i bought it . just did the patio and deck . god , i thought painting was mindless work . . . . . . . . . . . . . . . . . . . . .\nalso , found out from insurance company they will be funding an entirely new roof ( hail damage ? ? ? ) . i don ' t like the mess from that project but as old roof was a layover the old shake shingles i will be glad to get rid of that and get decking down on roof .\nknow you are busy . let me know the latest when you have time .\nlater ,\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.046+0000", "entityId": 4917, "properties": {"text": "Subject: thank you for your contribution ! together we can change lives !\nthank you for changing lives .\nemployee id : 90011947\nname : jerry d farmer\npayment amount : 10 . 00\npayment method : one - time deduction from paycheck\npayroll date : 01 / 15 / 02\nleadership giving roster : no\nmake a difference club : not applicable\nmailing address :\n2747 meadowtree\nspring , tx 77388\nus\nyour donation is designated for : united way of the texas gulf coast\nwritten acknowledgement of contribution : no\n\" you will find , as you look back on your life , that the moments that\nstand out are\nthe moments when you have done things for others . \"\n- henry drummond", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.050+0000", "entityId": 4918, "properties": {"text": "Subject: capacity\nthese may help w / the stuff you ' re working on for redmond", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.055+0000", "entityId": 4919, "properties": {"text": "Subject: fw : section 311\njust so you know , this is what i sent redmond about that 311 case .\n- - - - - original message - - - - -\nfrom : hull , bryan\nsent : tuesday , august 14 , 2001 7 : 16 am\nto : redmond , brian\nsubject : fw : section 311\nbrian , this is a pretty good explanation of the case thus far . . . . . .\ncommissioner wood is aware of the conflict between pg & e ( now epgt ) and southern union , probably because of lobbying by southern union , and that is why he raised the issue . southern union states in its initial brief ( # 9 below ) that it opposes the high demand rates that it says epgt proposes to charge for a service that does not incorporate the consumer protections of order no . 636 and argues that ferc should impose order no . 636 standards on pg & e . i was watching a video stream of the meeting , and the whole discussion seemed to come out of nowhere .\nhere are the facts in this case .\n1 ) on december 20 , 1999 , pg & e texas pipeline , lp ( the predecessor to epgt texas pipeline , lp ) filed a petition with ferc for approval of transportation rates under section 311 along , as they were required to do . ( all intrastate pipelines that perform section 311 service must either have their rates approved by ferc or they must charge rates that are approved by a state regulatory body for a similar service . ) pg & e ' s filing proposed , in addition to the usual interruptible service , a firm section 311 service as well as an interruptible parking and lending service . pg & e also filed a revised statement of operating conditions to reflect the new services .\n2 ) on february 25 , 2000 , southern union gas company , an intrastate transportation customer of pg & e , filed a late motion to intervene and raised issues which it stated should be addressed in a hearing . pg & e opposed the late intervention , but ferc granted it on april 14 , 2000 . ( pg & e stated that southern union was intervening in order to gain leverage in renegotiating its contract for intrastate service . )\n3 ) southern union submitted data requests to pg & e on april 13 and april 17 . pg & e attempted to get a protective order issued , but ferc rejected their request .\n4 ) a settlement conference was held on september 7 , 2000 .\n5 ) a staff panel was convened on october 2 , 2000 , in order to conduct an advisory , non - evidentiary proceeding for oral arguments on the issues , with instructions to make recommendations to the commission within 90 days .\n6 ) on november 1 , 2000 , ferc requested 5 pages of additional information from pg & e in order to complete the application in the proceeding , which pg & e provided on november 8 th . on december 8 th , pg & e provided additional information in response to a ferc data request .\n7 ) on january 10 , 2001 , southern union submitted a proposed alternative to the cost of service and rate design that was filed by pg & e .\n8 ) on january 17 , el paso field services informed ferc that pg & e texas pipeline , lp had been acquired by el paso on december 22 , 2000 , and that the name was changed to epgt texas pipeline , lp .\n9 ) on january 24 , 2001 , epgt texas and southern union filed initial briefs .\n10 ) on july 17 , 2001 , epgt filed supplemental comments in response to the discussion at ferc summarized below , where commissioner wood inquired about the extension of some order no . 636 and 637 provisions to section 311 service providers . epgt stated that , if ferc proceeds with this policy , it should do so in a generic rulemaking and not in an individual pipeline proceeding . on july 30 , 2001 , southern union filed reply comments opposing epgt ' s supplemental comments .\n11 ) on august 3 , epgt filed an amended statement of operating conditions , which provides for electronic nominations , two additional nomination cycles , bumping , clarified and updated credit provisions , modified quality provisions to protect system integrity , and more clearly defined authorized overrun service .\nthe ngpa gives ferc authority over intrastate pipeline rates for section 311 service and requires that such service be provided on a non - discriminatory basis , but there is some question as to whether it gives ferc authority to require , for example , compliance with order nos . 636 and 637 .\nplease let me know if this is enough detail ( or maybe it ' s more than you wanted ! ! ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.061+0000", "entityId": 4920, "properties": {"text": "Subject: fw : tufco deal 108058\ndarin ,\nsince the volume on this ena deal is on pgev ( epgt texas ) pipeline , the ena volume management contact is hakeem ogunbunmi . his number is x - 31801 and he has been cc ' d on this note .\nfyi - ena volume management has assumed all of the volume duties associated with all texas deals that are not specifically on houston pipe line . for those on houston pipe line , i will still be the contact . if you have any questions , please let me know .\nbuddy\nx - 31933\n- - - - - original message - - - - -\nfrom : baxter , bryce\nsent : tuesday , august 14 , 2001 5 : 25 pm\nto : majorwitz , buddy\ncc : farmer , daren j .\nsubject : tufco deal 108058\nbuddy - daren farmer called and said that on 4 / 30 / 2001 , on hpl deal # 108058 , that there was around 20 , 000 mmbtu scheduled , but when it was actualized , it was actualized at 0 . he thinks this is incorrect . can you check into this and get back with daren ? i ' ll be out of the office tomorrow , so please get back with him directly . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.067+0000", "entityId": 4921, "properties": {"text": "Subject: fw : unify gas production\ni did not see you on the initial distribution .\nrp\n- - - - - original message - - - - -\nfrom : cuccia , michael\nsent : wednesday , august 15 , 2001 10 : 42 am\nto : lamadrid , victor ; sullivan , patti ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; kinsey , lisa ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; superty , robert ; ' terry , edward ' ; wynne , rita\ncc : stokes , darren ; neal , steve ; mcneill , michael ; ripley , brian ; pena , matt ; newland , william\nsubject : re : unify gas production\nit looks like we have a consensus on down time for unify gas production on saturday . we will be bringing the server down at 6 pm . please make every effort to have your work done by that time . the server should be back up by 10 pm .\nthank you all for your responses and cooperation ,\nmichael cuccia\nunify production support\nebl 864 c - - x 36629\ncell 713 . 870 . 6463\n- - - - - original message - - - - -\nfrom : lamadrid , victor\nsent : wednesday , august 15 , 2001 7 : 52 am\nto : sullivan , patti ; cuccia , michael ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; kinsey , lisa ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; superty , robert ; ' terry , edward ' ; wynne , rita\ncc : stokes , darren ; neal , steve ; mcneill , michael ; ripley , brian ; pena , matt ; newland , william\nsubject : re : unify gas production\nmichael , ditto to patti ' s statement on the east ! 6 pm is evening late nom deadline for the next day . thanks\n- - - - - original message - - - - -\nfrom : sullivan , patti\nsent : wednesday , august 15 , 2001 7 : 50 am\nto : cuccia , michael ; lamadrid , victor ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; kinsey , lisa ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; superty , robert ; ' terry , edward ' ; wynne , rita\ncc : stokes , darren ; neal , steve ; mcneill , michael ; ripley , brian ; pena , matt ; newland , william\nsubject : re : unify gas production\nmichael ,\nthe west desk schedulers are using path manager to schedule until 6 : 00 pm . we ' re hoping that the maintenance can start after that time . thanks .\n- - - - - original message - - - - -\nfrom : cuccia , michael\nsent : wednesday , august 15 , 2001 6 : 40 am\nto : lamadrid , victor ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; kinsey , lisa ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; sullivan , patti ; superty , robert ; ' terry , edward ' ; wynne , rita\ncc : stokes , darren ; neal , steve ; mcneill , michael ; ripley , brian ; pena , matt ; newland , william\nsubject : re : unify gas production\n2 - 3 hours . yes , i am the contact person ( cell number below ) after users first filter questions through their leads .\nmichael cuccia\nunify production support\nebl 864 c - - x 36629\ncell 713 . 870 . 6463\n- - - - - original message - - - - -\nfrom : lamadrid , victor\nsent : tuesday , august 14 , 2001 6 : 11 pm\nto : cuccia , michael ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; kinsey , lisa ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; sullivan , patti ; superty , robert ; ' terry , edward ' ; wynne , rita\ncc : stokes , darren ; neal , steve ; mcneill , michael ; ripley , brian ; pena , matt ; newland , william\nsubject : re : unify gas production\nmichael ,\nhow long will this last ? are you the contact person handling questions users may have this weekend ?\nthanks\nvictor\n- - - - - original message - - - - -\nfrom : cuccia , michael\nsent : tuesday , august 14 , 2001 3 : 54 pm\nto : baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; sullivan , patti ; superty , robert ; terry , edward ; wynne , rita\ncc : stokes , darren ; neal , steve ; mcneill , michael ; ripley , brian ; pena , matt ; newland , william\nsubject : unify gas production\nimportance : high\nwe will be performing maintenance on the server for the unify database on saturday , aug . 18 th . this maintnenance will fix the problem that caused unify ' s gas production database to hang indefinitely today ( tue . , aug . 14 th ) during our nomination time .\nplease reply and tell us when we can shut down the unify gas production system for this maintenance on saturday , aug . 18 th . we are targeting 4 pm .\nmichael cuccia\nunify production support\nebl 864 c - - x 36629\ncell 713 . 870 . 6463", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.073+0000", "entityId": 4922, "properties": {"text": "Subject: re : tufco deal 108058\nlet me look into it , will get back with you asap\nhakeem ogunbunmi\nvolume management\nenron net works\n713 - 853 - 1801\nhakeem . ogunbunmi @ enron . com\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , august 16 , 2001 1 : 43 pm\nto : ogunbunmi , hakeem\nsubject : fw : tufco deal 108058\nhakeem ,\nhave you determined the volume flow to tufco for 4 / 30 / 01 ?\nd\n- - - - - original message - - - - -\nfrom : majorwitz , buddy\nsent : wednesday , august 15 , 2001 1 : 43 pm\nto : farmer , daren j .\ncc : ogunbunmi , hakeem ; baxter , bryce ; schumack , sherlyn\nsubject : fw : tufco deal 108058\ndarin ,\nsince the volume on this ena deal is on pgev ( epgt texas ) pipeline , the ena volume management contact is hakeem ogunbunmi . his number is x - 31801 and he has been cc ' d on this note .\nfyi - ena volume management has assumed all of the volume duties associated with all texas deals that are not specifically on houston pipe line . for those on houston pipe line , i will still be the contact . if you have any questions , please let me know .\nbuddy\nx - 31933\n- - - - - original message - - - - -\nfrom : baxter , bryce\nsent : tuesday , august 14 , 2001 5 : 25 pm\nto : majorwitz , buddy\ncc : farmer , daren j .\nsubject : tufco deal 108058\nbuddy - daren farmer called and said that on 4 / 30 / 2001 , on hpl deal # 108058 , that there was around 20 , 000 mmbtu scheduled , but when it was actualized , it was actualized at 0 . he thinks this is incorrect . can you check into this and get back with daren ? i ' ll be out of the office tomorrow , so please get back with him directly . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.079+0000", "entityId": 4923, "properties": {"text": "Subject: re : error repairs\nthe pricing for the base deal is based on the gd , but it ' s the average of the gas daily plus . 02 , right ? and i was told that sitara could not handle this pricing structure , that it had to be calculated and entered as a fixed price . is this correct ?\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : friday , august 17 , 2001 3 : 19 pm\nto : vela , valerie\nsubject : re : error repairs\nvalerie ,\nthe pricing on the base deal should also be based on gd . i have changed the price to gdp . let me know if that doesn ' t correct that piece . jay is currently looking into the volume issue .\nd\n- - - - - original message - - - - -\nfrom : vela , valerie\nsent : friday , august 17 , 2001 2 : 55 pm\nto : smith , joseph\ncc : farmer , daren j .\nsubject : re : error repairs\njay ,\nfor june , i need a couple of things changed in sitara :\ndeal 819592 - the commodity price needs to be 3 . 6318\ndeal 819594 - the commodity price needs to be waha . hub . gdp . d . a + . 02\nand for july . . . . . . . . . . . .\nit looks like we ' re missing some volume . . . . . . . . . . . .\ndeal 895651 - baseload deal - should have 55 , 000 per day allocated . and in sitara this deal should be priced at $ 3 . 0505 .\ndeal 895691 - swing deal - currently has 234 , 000 in the scheduled column and it should be 441 , 000 based on the spreadsheet i sent . did you have some conflicting volumes ? i ' m resending what the volumes should be . and the pricing for this should be at waha . hub . gdp . d . a + . 02 .\n>\ni think that should do if for now . i ' ll wait to see how these changes come across . please notify me when these changes have been made . thanks !\n- - - - - original message - - - - -\nfrom : vela , valerie\nsent : tuesday , august 14 , 2001 3 : 44 pm\nto : smith , joseph\nsubject : re : error repairs\nthanks !\n- - - - - original message - - - - -\nfrom : smith , joseph\nsent : tuesday , august 14 , 2001 3 : 44 pm\nto : vela , valerie\nsubject : re : error repairs\nthe errors have also been repaired for the month of july .\n- - - - - original message - - - - -\nfrom : vela , valerie\nsent : tuesday , august 14 , 2001 12 : 58 pm\nto : smith , joseph\nsubject : re : error repairs\nthank you - - - i ' ll look for this change to come across .\n- - - - - original message - - - - -\nfrom : smith , joseph\nsent : tuesday , august 14 , 2001 1 : 56 pm\nto : vela , valerie\nsubject : error repairs\nvalerie ,\nin reference to a note sent to darren farmer : houston pipleline mistake on june 18 th\nthe volume of 50 , 000 for deal 819594 was a mistake . the proper value was 30 , 000 just as you had mentioned . everything should now be fixed . please let me know if you need anything else .\nthanks ,\njay smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.087+0000", "entityId": 4924, "properties": {"text": "Subject: re : error repairs\njay ,\nfor june , i need a couple of things changed in sitara :\ndeal 819592 - the commodity price needs to be 3 . 6318\ndeal 819594 - the commodity price needs to be waha . hub . gdp . d . a + . 02\nand for july . . . . . . . . . . . .\nit looks like we ' re missing some volume . . . . . . . . . . . .\ndeal 895651 - baseload deal - should have 55 , 000 per day allocated . and in sitara this deal should be priced at $ 3 . 0505 .\ndeal 895691 - swing deal - currently has 234 , 000 in the scheduled column and it should be 441 , 000 based on the spreadsheet i sent . did you have some conflicting volumes ? i ' m resending what the volumes should be . and the pricing for this should be at waha . hub . gdp . d . a + . 02 .\ni think that should do if for now . i ' ll wait to see how these changes come across . please notify me when these changes have been made . thanks !\n- - - - - original message - - - - -\nfrom : vela , valerie\nsent : tuesday , august 14 , 2001 3 : 44 pm\nto : smith , joseph\nsubject : re : error repairs\nthanks !\n- - - - - original message - - - - -\nfrom : smith , joseph\nsent : tuesday , august 14 , 2001 3 : 44 pm\nto : vela , valerie\nsubject : re : error repairs\nthe errors have also been repaired for the month of july .\n- - - - - original message - - - - -\nfrom : vela , valerie\nsent : tuesday , august 14 , 2001 12 : 58 pm\nto : smith , joseph\nsubject : re : error repairs\nthank you - - - i ' ll look for this change to come across .\n- - - - - original message - - - - -\nfrom : smith , joseph\nsent : tuesday , august 14 , 2001 1 : 56 pm\nto : vela , valerie\nsubject : error repairs\nvalerie ,\nin reference to a note sent to darren farmer : houston pipleline mistake on june 18 th\nthe volume of 50 , 000 for deal 819594 was a mistake . the proper value was 30 , 000 just as you had mentioned . everything should now be fixed . please let me know if you need anything else .\nthanks ,\njay smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.094+0000", "entityId": 4925, "properties": {"text": "Subject: new enrononline functionality\nin order to continually develop and make improvements to the functionality of enrononline we are rolling out several changes tonight , which will be in effect on monday august 20 , 2001 . some of these changes will affect stack manager while others affect the website . a summary of these changes is listed below .\nstack manager changes\ntop of stack limit orders - this feature will allow the price submitted via limit orders to be displayed on the website if their bid or offer is better than the trader ' s stack price . stack manger will list the price and the names of counterparties submitting such orders on the floated stack window . orders will be queued by price and time stamp . when a counterparty trades on a \" top of stack entry \" it will create back to back transactions ; one between enron and the counterparty submitting the order , and the other between enron and the counterparty clicking on the website .\nin order to turn on this functionality select the \" allowed top of stack \" option , in the orders section of the product properties page . if regular limit order functionality is desired the \" allowed \" option should be selected .\nplease note that this feature will be released in a disabled mode and will be turned on sometime next week after determining which business units want to roll this out .\nrestricted top of stack limit orders - this feature will allow the price submitted only by internal traders via limit orders to be displayed on the website if their bid or offer is better than the trader ' s stack price . stack manger will list price and the names of counterparties submitting such orders on the floated stack window . orders will be queued by price and time stamp . when a counterparty trades on a \" top of stack entry \" it will create back to back transactions one between enron and the counterparty submitting the order , and the other between enron and the counterparty clicking on the website .\nin order to turn on this functionality select the \" allowed as restricted top of stack \" option , in the orders section of the product properties page . if regular limit order functionality is desired the \" allowed \" option should be selected . if a product has active orders against it you will not be able to select the \" restricted top of stack \" feature .\nadvanced filtering ability on all products tab - drop down filtering capability is now available for each field in the all products tab in stack manager . in order to filter click on the arrow next to the field title . a drop down box with a list of attributes will appear . highlight the attribute by which you wish to filter . to turn off the filter click on the arrow and select the \" all \" option from the drop down box .\nwebsite changes\nnew submission screen for restricted top of stack limit orders - the submission screen for products that allow top of stack or restricted top of stack limit orders is as follows .\nthe submit button on the left makes a submission for a normal transaction , while the button on the right will submit as a limit order . in case of the restricted top of stack limit orders only internal traders will see the new submission box .\nprice of limit orders\nmodify limit orders\ncustomers now have the ability to modify the price of any active order . in order to do so highlight the order to be modified and use the plus or minus sign next to the price field on at the top of the \" today ' s orders \" section . the price will move up or down in the same increments as the tick size for that product . once the price is at the desired level click the \" set \" button and the price will be modified . another way to modify the price on a limit order is to click on the price field on a particular limit order . you will see a box with plus , minus and set buttons that allow you to modify that order .\nexpiration time for limit orders\ncustomers can now place limit orders with expiration times of up to 30 days . currently they may place orders for only up to 12 hours .\nfloat the today ' s orders section\nyou can now float the \" limit order \" section . in order to do so , right click in the \" today ' s orders \" section and select the float window option . in order to make the window \" stay on top \" right click on the floated window and select the stay on top option .\nmid market client - mid market originators will now have the ability to transact on behalf of their customers , while including their desired margin on the trade , on enrononline products . in order to do so click on the bid or offer price , a customised submission window will appear . select the counterparty for whom you wish to transact from a drop down list , enter the desired customer price and margin and click submit . for example if a customer wants to buy nymex sep 01 at 3 . 36 and you wish to have a 1 cent margin , please enter 3 . 36 as the desired price and 0 . 01 as the margin . the system will trade the order when the enrononline offer for nymex sep 01 is at 3 . 35 , book the trade at 3 . 36 and record the 0 . 01 origination amount .\nin order to be set up to use this functionality . please call the enrononline product control group .\nchanges to website passwords - as an added security measure , which has been requested by many customers , some new password rules have been instituted . first , the password cannot be equal to the login id . second , each user will be prompted to change his password every 90 days . these rules apply to all website passwords for both internal and external users .\nplease note stack manager changes will be available all traders as of monday august 20 , 2001 . the changes to the website will be rolled out to a few internal users on monday with the rest of the internal users being upgraded monday night , and external users by the end of the week . over the next couple of weeks all users will be prompted to change their website passwords .\nif you have any questions regarding these changes please contact me at 713 - 853 - 1787 .\nsavita puthigai\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.098+0000", "entityId": 4926, "properties": {"text": "Subject: fw : guadalupe power partners\nfyi\n- - - - - original message - - - - -\nfrom : coffey jr . , jim\nsent : tuesday , august 21 , 2001 1 : 19 pm\nto : baumbach , david\ncc : washington , deanna ; denetsosie , troy\nsubject : fw : guadalupe power partners\ndavid\ncan you answer with some specifics to jeff ' s question on ( a ) \" do we know anything about purchases and sales ? \"\n- - - - - original message - - - - -\nfrom : rozycki , joanne\nsent : tuesday , august 21 , 2001 11 : 13 am\nto : coffey jr . , jim\ncc : bryan , gary ; gray , barbara n . ; redmond , brian\nsubject : guadalupe power partners\nthe attached are being forwarded at the request of jeff hodge .\njoanne rozycki\nsenior administrative assistant\nenron north america corp .\n1400 smith street , eb 3880 d\nhouston , tx 77002\nphone : ( 713 ) 853 - 5968 fax : ( 713 ) 646 - 3490\nemail : joanne . rozycki @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.103+0000", "entityId": 4927, "properties": {"text": "Subject: texas general\ndarren ,\nwe are not able to find out july deal for tglo in the system .\ncan you look to see if you have a deal number for this month ?\nthank you\njoy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.108+0000", "entityId": 4928, "properties": {"text": "Subject: hesco gathering company , l . l . c . , meter 098 - 6709 , dunn mccampbell\na - 4 , murdock pass north field , kleberg co . , tx\n[ image ]\ngeorge 832 . 668 . 1373\npager 713 . 990 . 5064\n- - - - - forwarded by george m weissman / hol / aepin on 08 / 21 / 01 05 : 16 pm - - - - -\ngeorge m weissman 07 / 31 / 01 02 : 46 pm to : robert r cotten / hol / aepin @ aepin cc : robert r cotten / hol / aepin @ aepin , mary j poorman / hol / aepin @ aepin , julie l meyers / hol / aepin @ aepin , edward a terry / hol / aepin @ aepin , mary j poorman / hol / aepin @ aepin , melissa r graves / hol / aepin @ aepin , gerald w lofton / hol / aepin @ aepin , cynthia g hakemack / hol / aepin @ aepin subject : hesco gathering company , l . l . c . , meter 098 - 6709 , dunn mccampbell a - 4 , murdock pass north field , kleberg co . , tx\nbob ,\nprior period deal entry\nwe have entered sitara deal 958270 for 6 / 26 / 01 thru 8 / 31 / 01 with evergreen for 85 % gd for june and 85 % if / hsc for july , august and beyond at meter 098 - 6709 . volume for june is 150 / d and volume for july and august is 300 / d .\ngeorge 832 . 668 . 3173 aep 12 th floor ; 713 . 990 . 5064 pager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.112+0000", "entityId": 4929, "properties": {"text": "Subject: formation of enron management committee\ni am pleased to announce the formation of the enron management committee . the management committee comprises our business unit and function leadership and will focus on the key management , strategy , and policy issues facing enron . the management committee will supplant the former policy committee and will include the following individuals :\nken lay - chairman and ceo , enron corp .\nray bowen - coo , enron industrial markets\nmichael brown - coo , enron europe\nrick buy - exec vp & chief risk officer , enron corp .\nrick causey - exec vp & chief accounting officer , enron corp .\ndave delainey - chairman and ceo , enron energy services\njim derrick - exec vp & general counsel , enron corp .\njanet dietrich - president , enron energy services\njim fallon - president & ceo , enron broadband services\nandy fastow - exec vp & cfo , enron corp .\nmark frevert - chairman & ceo , enron wholesale services\nben glisan - managing director & treasurer , enron corp .\nmark haedicke - managing director & general counsel , enron wholesale services\nkevin hannon - ceo , enron global assets & services\nstan horton - chairman & ceo , enron transportation services\njim hughes - president & coo , enron global assets & services\nsteve kean - exec . vp & chief of staff , enron corp .\nlouise kitchen - coo , enron americas\nmark koenig - exec vp , investor relations , enron corp .\njohn lavorato - president & ceo , enron americas\nmike mcconnell - president & ceo , enron global markets\njeff mcmahon - president & ceo , enron industrial markets\njeff shankman - coo , enron global markets\njohn sherriff - president & ceo , enron europe\ngreg whalley - president & coo , enron wholesale services\nafter we convene the management committee later this week , i will make a further announcement regarding the executive committee .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.117+0000", "entityId": 4930, "properties": {"text": "Subject: conoco - big cowboy\ndarren :\ni ' m not sure if you can help me with this , but i don ' t know who else to ask . for april and may , we have gas pathed on deal 133304 to conoco at the gepl big cowboy point . conoco is saying that we did not buy that gas from them . they have accounted for all of the hpl big cowboy gas and think we have over paid by about $ 1 . 5 mil each month for the gepl gas . do you know why we added the gepl meter to the deal in april ? could we have bought this gas from someone else ? i have the meter statements from tejas , but they do not say who the supply company was .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.122+0000", "entityId": 4931, "properties": {"text": "Subject: fw : classic\nthoughts on texas a & m . . .\nfox sports show host jim rome\n1 ) they won ' t shut up . they have to go on about spirit , and old army , and\nred ass , and how bonfire represents the burning sensation they have in\ntheir urine to beat ut , and blah blah blah . shut up . you start to get the\nfeeling the entire school was built to spite ut .\n2 ) forget the fact that when the texas legislature back in the 1870 ' s\npassed legislation to start a state university they also decided to have a\nsubsidiary branch of the main school ( university of texas ) that would teach\nagriculture and mechanics . aggies love to say their school is older , from\nwhere they get that i don ' t now . . . . . . the fact is , the state intended a & m\nto be a branch of ut . they are like the afterbirth fromthe original\ncreation . like danny devito in \" twins \" .\n3 ) so they apparently have this complex , so much so , that they must\ndevote\ntheir entire school to trying to prove to ut that they are just as good .\nall the while , nobody at ut denies that a & m is a good school , yet they\nwon ' t shut up . so they write a fight song . . . . . . about ? . . . . texas , and how\nthey want to beat them . they have a fish camp for freshman where they tell\nthem how bad texas is and how good a & m and all its traditions are . it is\nthe world ' s largest known case of penis envy , and it is manifested in\neverything a & m does .\n4 ) the people at a & m . now we all have friends who went to a & m or are at\na & m .\nthere are some nice people there . however . . . there is the corp . east texas '\nanswer to dreams of rotc kids everywhere . for every boy scout who never\nlearned to stop playing with his gi joe toys , there is the corp . now ,\nforget the fact that a however ,\nnobody respects the corp . i imagine they are kind of the laughing stock of\nthe military world . just because you dress like the army , and try and act\nlike the army , does not make you the army . people at a & m don ' t even respect\nthese clowns . it is not cool to shave your head and dress up . halloween is\nonly supposed to be one day of the year . if you want to carry guns and beat\nup civilians , move to israel .\n5 ) it is even less cool to slobber on somebody ' s daughter on national\ntelevision and call it a tradition . dry humping 18 year old girls in the\nstands at football games is not cool . not only is it not cool , it should be\nagainst the law . i know that in college station , students are just prone to\nmount each other on the campus lawn , or in the middle of class , or anytime\nanything good happens you can just grab the girl sitting next to you and\nstart sucking on her face . but everywhere else in the world , it is looked\ndown upon . especially if you are doing it on my tv . that is why we have\nmoved the game from thanksgiving . because people across the nation were\ngagging on their turkey when in the middle of watching a football game ,\nsome boy scout is tongue thrashing some overweight co - ed during somebody ' s\nthanksgiving dinner . we do not need to see burly women engaged in a\nsuckfest every time your woeful offense manages to put points on the board .\nsome of these girls are in desperate need of a trip to the clinique\ncounter . screw that , forget make - up , it is too late for that , just give\nthem a veil .\n6 ) \" t . u . \" is not funny . it is not insulting . it is dumb . just imagine if\nfolks from texas kept talking about m & a and giggling . that would not be\nfunny . in fact , it would be retarded . that ' s why ut fans don ' t do it .\nplease learn .\n7 ) you want to lose the image of country bumpkins , of a people fond of\nsheep , of people that aren ' t stupid ? then quit building things that fall\ndown . quit chasing cheerleaders around with swords on national tv . quit\nwhooping in church . quit whooping period . quit putting up scoreboards for\nthe enjoyment of dead mammals . quit spending your friday nights practicing\nhow to yell . quit telling rape jokes to reporters when you ' re running for\ngovernor . when you are filling out season ticket renewals , and the form\nasks for your phone # , h & w , quit putting 258 - 3999 , height 6 ' 3 \" , weight\n185 . just , collectively , stop making asses of yourselves . go to east\ntexas , tour every small town , and ask every red neck with a 5 th grade\neducation why they cheer for a & m and wear maroon . that is your fan base .\nthis is why you are perceived by the educated masses as stupid .\n8 ) nobody cares if you think your band is better . they might be louder ,\nthey might march in neat little zig zags , but they have no musical ability .\nthe point is , nobody cares who wins halftime . quit getting geeked up about\nmarching bands . i find it hard to believe you stood through your high\nschool band ' s entire halftime performance . and why ? cause nobody cared then\nand nobody cares now . plus , you can hear them fine sitting down even if you\ndo care . why is it cool all of a sudden now that you ' re in college ?\n9 ) men should never let out high pitched whooping sounds . perhaps the\nonly\njustifiable situation in which this can be tolerated is perhaps during an\nanal probe . oh wait . . . i understand now .\n10 ) dogs are not ladies . they don ' t look or smell like ladies . dogs eat\ntheir own feces and should be treated accordingly .\n11 ) finally , college station is an arm - pit of a town . quit pretending that\nit is a great college town . it is a town and there is a college there . that\nshould be the end of this comparison . if you feel that life doesn ' t get any\nbetter than the dixie chicken , and enjoy being stuck in a never ending\n\" dukes of hazard \" episode , then move there . more importantly , don ' t move to\naustin . . . . . they are trying to create an educated , technological , and open\nminded population base . austin is , and will continue to be , the birthplace\nand final resting place of all that is cool .\nas my friend stephen johnson once said : \" if the world were ever to get an\nenema , college station is where you would connect the hose . \" if you go to\nschool at a & m , please don ' t be an aggie .\ngod bless the great state of texas .\nbrian puls\nsoftware engineer\nlockheed martin - enterprise solutions\n281 218 - 2740", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.126+0000", "entityId": 4932, "properties": {"text": "Subject: rates\ndaren -\nrates for september :\nt - ville interconnects to equistar channelview $ . 15\nagua dulce interconnects to equistar channelview $ . 13\nlet me know if you get something done or need quotes on something else ! term rate on # 6461 to follow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.131+0000", "entityId": 4933, "properties": {"text": "Subject: meter 6461 , concorde churchill\none year rate for this one will be $ . 35 / mm for volumes greater than 300 mm / day . price for volumes 300 mm / day or less will be $ . 45 / mm plus a $ 350 per month metering fee . this rate would cover transport to a competitive ship channel market such as equistar channelview . transport rates for a 6 month term are not significantly different - $ . 33 / mm for volumes greater than 300 mm / day and $ . 42 / mm plus the metering fee for volumes 300 mm / day or less . these rates assume a september 1 , 2001 start . these rates good until friday , august 31 , 2001 only ! ! ! get ' em while they ' re hot ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.136+0000", "entityId": 4934, "properties": {"text": "Subject: month end close schedule * revised *\nchanges are in blue .\nlast month there was some confusion from several schedulers i spoke to about when changes could be made to ( august ) after the cut off : as noted in the table , after friday , august 31 st at 6 pm there can be no changes ( i . e . re - nominate , re - track , re - balance , bridge back to sitara etc . ) made to august production until wednesday morning , september 5 th .\nat 6 pm friday ( or before if you are ready ) i will be by to pick up the reports and exceptions dialogue .\nthx\nrp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.141+0000", "entityId": 4935, "properties": {"text": "Subject: fw : fw : conoco - big cowboy\nhere is what bob cotten has to say about big cowboy . i think i will try to have conoco send our money back until we can determine who we bought the gas from .\nmegan\n- - - - - original message - - - - -\nfrom : rrcotten @ aep . com [ mailto : rrcotten @ aep . com ]\nsent : wednesday , august 29 , 2001 9 : 14 am\nto : parker , megan\ncc : jlopez @ aep . com ; gmweissman @ aep . com\nsubject : re : fw : conoco - big cowboy\nmegan ,\nthe april and may nomination spreadsheets from producer services reflect that there were purchases from conoco on hpl . there are no references to any purchases from conoco on gepl . on june 6 , 2001 , tom acton edited deal ticket # 133304 to include gepl meter # ' s 27 - 002 - 08 and 27 - 003 - 08 . i have no idea why tom edited the deal ticket to include the gepl meters . tom is no longer at aep and i couldn ' t find any documentation to support the changes . please advise if you need additional information .\nbob\nto :\ncc :\nsubject : fw : conoco - big cowboy\nbob :\ncan you help with this ? i am trying to find out why gepl was added to\nthe conoco supply deals for april and may 2001 . conoco says we did not\npurchase any gas from them on gepl .\nmegan\n713 - 345 - 7480\n> - - - - - original message - - - - -\n> from : farmer , daren j .\n> sent : monday , august 27 , 2001 10 : 57 am\n> to : parker , megan\n> subject : re : conoco - big cowboy\n>\n> from looking at the audit in sitara , it appears that tom acton added\n> the location on june 6 , 2001 . ( i thought that their access to sitara\n> was taken away before then . ) he probably got instructions from vol\n> mgmt to do this , but i ' m not sure . have you talked to anyone in that\n> group ? i didn ' t know that these meters were being added to the deal .\n> since tom has left aep , you may be able to get bob cotten to help .\n> see if you can find out anything from v . m . and bob . i will do some\n> digging here to see if i can find anything .\n>\n> d\n>\n> - - - - - original message - - - - -\n> from : parker , megan\n> sent : friday , august 24 , 2001 10 : 17 am\n> to : farmer , daren j .\n> subject : conoco - big cowboy\n>\n> darren :\n> i ' m not sure if you can help me with this , but i don ' t know who else\n> to ask . for april and may , we have gas pathed on deal 133304 to\n> conoco at the gepl big cowboy point . conoco is saying that we did not\n> buy that gas from them . they have accounted for all of the hpl big\n> cowboy gas and think we have over paid by about $ 1 . 5 mil each month\n> for the gepl gas . do you know why we added the gepl meter to the deal\n> in april ? could we have bought this gas from someone else ? i have\n> the meter statements from tejas , but they do not say who the supply\n> company was .\n>\n> megan\nthis e - mail is the property of enron corp . and / or its relevant affiliate and may contain confidential and privileged material for the sole use of the intended recipient ( s ) . any review , use , distribution or disclosure by others is strictly prohibited . if you are not the intended recipient ( or authorized to receive for the recipient ) , please contact the sender or reply to enron corp . at enron . messaging . administration @ enron . com and delete all copies of the message . this e - mail ( and any attachments hereto ) are not intended to be an offer ( or an acceptance ) and do not create or evidence a binding and enforceable contract between enron corp . ( or any of its affiliates ) and the intended recipient or any other party , and may not be relied on by anyone as the basis of a contract by estoppel or otherwise . thank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.145+0000", "entityId": 4936, "properties": {"text": "Subject: fw : i am # 470\ni have felt a renewed heart for god , a fresh spirit . i have been in the word lately and doug and i have to committed to prayer time together each morning . it has brought a more positive attitude , much joy , and thankfulness on my part . and , yes , satan has already tried to steal that joy . but he will not prevail , i will not let him . so in those times when i feel that any bit of joy is seeping away , i begin to pray . i found this prayer to be refreshing and worded well . please read it , it may just jumpstart your day and you ' ll be filled with joy . have a great day ! amber\nplease take a moment to relax your mind and\nhumble your heart to focus on christ .\nallow god , to be the only person on your\nmind while you read this prayer . if we can\ntake the time to read long jokes , stories , etc . ,\nwe should give the same respect to this prayer .\nfriends that pray together , stay together .\nlet ' s pray . . .\nfather god ,\ni thank you for this day . i thank you for my\nbeing able to see and to hear\nthis morning . i ' m blessed because you are a\nforgiving god and an\nunderstanding god . you have done so much for me\nand you keep on blessing me .\nforgive me this day for everything i have done ,\nsaid or thought that was not\npleasing to you . i ask now for your forgiveness .\nplease keep me safe from all danger and harm .\nhelp me to start this day\nwith a new attitude and plenty of gratitude . let\nme make the best of each\nand every day to clear my mind so that i can hear\nfrom you .\nplease broaden my mind that i can accept all\nthings . let me not whine and\nwhimper over things i have no control over . let\nme continue to see sin\nthrough god ' s eyes and acknowledge it as evil .\nand when i sin , let me\nrepent , and confess with my mouth my wrongdoing ,\nand receive the forgiveness\nof god .\nand when this world closes in on me , let me\nremember jesus ' example - to\nslip away and find a quiet place to pray . it ' s\nthe best response when i ' m\npushed beyond my limits . i know that when i can ' t\npray , you listen to my heart . continue to use me to do\nyour will . ? continue to bless me that i may\nbe a blessing to others .\nkeep me strong that i may help the weak . keep me\nuplifted that i may have\nwords of encouragement for others . i pray for\nthose that are lost and can ' t\nfind their way .\ni pray for those that are misjudged and\nmisunderstood . i pray for those who\ndon ' t know you intimately . i pray for those that\nwill delete this without\nsharing it with others . i pray for those that\ndon ' t believe . but i thank\nyou that i believe .\ni believe that god changes people and god changes\nthings . i pray for all my sisters and brothers . for each\nand every family member in their households .\ni pray for peace , love and joy in their homes\nthat they are out of debt and all their needs are met .\ni pray that every eye that reads this knows there\nis no problem , circumstance , or situation greater than god .\nevery battle is in your hands for you to fight . i pray that\nthese words be received into the hearts of every eye that sees\nthem and every mouth that confesses them willingly .\nthis is my prayer .\nin jesus ' name , amen .\nif you prayed this prayer , change the number in the subject\nbox before forwarding the message so people can see how\nmany people have done so .\n> > > > > > > >\ngod bless ! ! ! ! ! ! ! ! ! ! !\njust repeat this phrase and see how god moves ! !\n? ? ? lord i love you and i need you , come into my\n? ? ? heart , please .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? t o p i c a - - register now to manage your mail ! http : / / www . topica . com / partner / tago 2 / register = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.151+0000", "entityId": 4937, "properties": {"text": "Subject: enron net works t & e policy\nto : all enw employees\nfrom : greg piper and mark pickering\nplease print and become familiar with the updated enw t & e policy , which is attached . changes to the policy include business - first travel ,\nwith supervisor approval , for international flights over 4 hours in duration ( excluding canada and mexico ) . supervisors will be responsible for making the decisions and bearing the expense for business - first travel .\nif you have any questions about the policy or an expense not covered under the policy , please contact tina spiller or lisa costello .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.157+0000", "entityId": 4938, "properties": {"text": "Subject: fw : dell & enron order confirmation\n> dell & enron clickathome order confirmation\n>\n> thank you for your enron clickathome order ! please read and retain this\n> e - mail for your records . it contains important information relating to\n> your order that should be used in any future communications with dell .\n>\n> your dell customer number is : 12831939\n>\n> your order number is : 641806518\n>\n> your total \" out of pocket \" amount : $ 97 . 38\n> the total \" out of pocket \" amount includes upgrade costs , shipping and\n> taxes .\n>\n>\n> your online sales point of contact :\n> we are here to assist you with your order if needed . our office hours are\n> monday - friday , 8 am - 7 pm central standard time . you can reach our office\n> by calling 1 - 866 - 220 - 3355 or through e - mail at :\n> us _ epp _ clickathome @ dell . com .\n>\n> estimated ship date :\n> we estimate that your order should be shipped on or before 09 11 01 .\n> although we do not anticipate a delay in your order , we cannot guarantee\n> the shipping date as we occasionally run into unexpected delays in\n> manufacturing . your order is being shipped to you under dell ' s terms and\n> conditions of sale found at : www . dell . com .\n>\n> total satisfaction policy :\n> if you wish to cancel your order for any reason within 30 days , we ' ll\n> refund amounts paid by you , minus shipping costs , no questions asked . you\n> are responsible for the cost of shipping your system back to us .\n> epp customer care contact options : 1 - 866 - 220 - 3355 , option 4 or use the\n> e - mail box us relationship epp @ dell . com .\n>\n> how to check order status :\n> if you would like to check the status of your order , please call dell ' s\n> automated order status inquiry system at : 1 - 800 - 433 - 9014 , or visit dell ' s\n> order status page at : .\n>\n>\n> you can also register to have dell e - mail you when your order is shipped ,\n> by going to :\n> .\n>\n> how to reach a technical support representative :\n> once you have received your equipment , if you need to contact a dell\n> technical support representative , please call 1 - 866 - 220 - 3355 , option 3 .\n> you will be asked to give your \" service tag number \" . the \" service tag\n> number \" is a five digit alphanumeric number written on the white bar code\n> label on the back of the system . please have this number ready before you\n> contact the technical support representative .\n>\n>\n> thank you for participating in the dell / enron clickathome program . it is\n> my pleasure to work with you .\n>\n> sincerely ,\nlisa carey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.162+0000", "entityId": 4939, "properties": {"text": "Subject: clickathome order verification\nthe clickathome database shows that you have placed an order with dell computer with an order number of 641806518 . please read below for instructions :\n1 . if this is correct , enjoy your computer !\nyou can check your order status by clicking here :\n* * for questions about your order / changes / problems ,\ncall 1 - 866 - 220 - 3355 * *\n2 . if you did not place an order with dell for the clickathome program ,\nplease email enron @ avenueb 2 e . com or call 713 - 895 - 9001 to report\nthe incorrect order on your behalf .\nthank you !\nclickathome team !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.167+0000", "entityId": 4940, "properties": {"text": "Subject: equistar quote\nhere you go buddy ! ! i ' m off to the astros game , so if you have any\nquestions , call me tomorrow ! !\n- equistarena . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.172+0000", "entityId": 4941, "properties": {"text": "Subject: temp forecast model . xls\nthis is the file with our city temperature weights .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.179+0000", "entityId": 4942, "properties": {"text": "Subject: new enrononline functionality\nseveral changes have been made to stack manager and the website . these changes are outlined below and will be visible by all as of monday september 3 , 2001 .\nstack manager changes\nactivate / inactivate stack - this functionality allows the trader to pull a product ' s prices from the website without suspending the product . if the top of stack limit order functionality is activated for a particular product this should be used to pull the stack prices from the website without pulling the entire product ; therefore , if there are top of stack limit orders against the product they will remain visible and transactable on the website .\nif a product ' s stack is inactivated the font for that product will be grayed out in stack manager . if the stack is active it will appear in black font .\nto use this feature , select the product , right click and choose \" inactivate stack \" . when you are ready to reactivate your prices , select the same product , right click again and choose \" activate stack \" . there are also icons on the tool bar at the top of your screen which will activate / inactivate the stack of the highlighted product . see screen shot below for the icons .\nchanges to product properties - currently when modifications are made to certain properties within the product properties screen , the product will be suspended and pulled from the website . now instead of being suspended , the product ' s stack will become inactive . once the changes have been made and saved to the properties of a product simply click the activate stack icon as discussed above .\nwebsite change\nrestrictions on top of stack orders - if top of stack limit orders are allowed on a product , but the trader is not showing both a bid and offer , limit orders will not be able to be placed on that product .\nif you have any questions please call me at 31787 . thanks .\nsavita\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.187+0000", "entityId": 4943, "properties": {"text": "Subject: coral on exxonkaty 6 / 01\ndarren :\nena was invoiced by coral energy for two deals on tejas for june 2001 that i do not see in the system . the first deal was on 6 / 1 for 5 , 400 at $ 3 . 87 . the second deal was on 6 / 13 for 22 , 000 at $ 4 . 25 . do you know anything about these deals ? i think we would show it on exxonkaty , but i can ' t find anything in path manager on exxonkaty or tejas .\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.193+0000", "entityId": 4944, "properties": {"text": "Subject: password reset\nthis is a generated email - do not reply !\nif you need further assistance , contact the isc help desk at : 713 - 345 - 4727\nthe password for your account : po 0507544 has been reset to : 14031399", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.199+0000", "entityId": 4945, "properties": {"text": "Subject: nom form\n( see attached file : nomform . wk 4 ) ( see attached file : nomform . wk 4 )\n- nomform . wk 4", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.204+0000", "entityId": 4946, "properties": {"text": "Subject: kaf storage project\nas requested , this is the summary of what we have discussed regarding kaf deal .\nscenario 1 :\nhpl nominates 6 , 200 mmbtu / day , apr ' 02 - may ' 02 , ( 409 , 000 mmbtu total ) of their south texas production into the kathleen anne field in wilson county , tx . and enron replaces this same volume in the location of their choice .\nscenario 2 :\nscenario 1 plus ena sells hpl 500 , 000 mmbtu of storage service with an injection rate of approximately 15 , 000 mmbtu / day and a withdraw rate of 37 , 500 mmbtu / day to help them serve the swing on the tuffco contract .\nnotes : the field is not yet connected to hpl , but will be .\nthanks for your help .\ngeorge huan\ngas structuring", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.208+0000", "entityId": 4947, "properties": {"text": "Subject: the delivery of the equipment you ordered is rescheduled .\n- - - automatic notification system ( request # : nchs - 52 bjs 6 )\nrequested for : daren j farmer\nrequested by : daren j farmer\nyour order ( see below ) has been assigned to garza - traderdeployments tommy . technician will contact you for information and delivery time . please contact the technician if you have any question .\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.213+0000", "entityId": 4948, "properties": {"text": "Subject: enron\ndamn ! ! ! ! what are you guys doing down there . i leave you alone and the place goes to hell in a hand - basket .\ni ' m sure glad my portfolio is diversified into stocks that have lost even more money than enron ( chuckle ) .\nhang in there . . . . . . . . . this has happened before . if it gets bad enough call me and i ' ll buy you lunch .\nken\np . s . i finally get to see my beloved huskers in waco this year . it is not the same as mecca ( lincoln ) , but it ' ll do . besides we will have more red there than baylor green .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.218+0000", "entityId": 4949, "properties": {"text": "Subject: black marlin\nmike ,\ni show you pathed deal 951474 on 8 / 23 / 01 for production months january and february 2001 . this deal expired 12 / 31 / 00 , and the late pathing has caused a bridgeback error for january and february 2001 .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.222+0000", "entityId": 4950, "properties": {"text": "Subject: the installation of the equipment you ordered is completed\n- - - automatic notification system ( request # : nchs - 52 bjs 6 )\nrequested for : daren j farmer\nrequested by : daren j farmer\nthe installation of the equipment ( see below ) has been completed .\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.227+0000", "entityId": 4951, "properties": {"text": "Subject: pc install p 600\ndaren\ni ' m working on the pc you requested . can you provide me with the following information so i can start imaging your pc :\ni will image it with windows 2000 unless you need nt 4 . 0\nuser id :\npassword :\nlotus note password :\nor\noutlook :\ndo you have a palm pilot or printer ?\nlocation ?\ndo you have the monitor ?\nlet me know .\ntommy c . garza\nenron networks it\n713 - 853 - 6686", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.232+0000", "entityId": 4952, "properties": {"text": "Subject: tenaska iv 8 / 01\ndarren :\nplease zero out the price on tenaska iv deal 384258 for aug 2001 and enter a demand fee for $ 4 , 116 , 035 . 71 . we also need to update the agency fee volume on deal 514353 for aug . it should be 48 , 532 . per the spreadsheet , we nominated 1 , 504 , 500 mmbtu this month .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.237+0000", "entityId": 4953, "properties": {"text": "Subject: new enrononline functionality\nthe following additions and modifications to stack manager will be effective as of saturday september 8 , 2001 .\nstack manager modifications\ninactivate all stack - in addition to the individual activate / inactive stack buttons , there is now an inactivate all stack button . similar to the suspend all button , this button will inactivate the trader ' s stack on all active products . any existing top of stack limit orders will continue to post to the website and remain transactable . see screen shot below : inactivate all stack button on far right .\nplease note that we have switched the positions of the suspend and inactivate buttons in stack manager .\nfill order - if a product is set up as either restricted top of stack or top of stack the trader now has the ability to automatically fill any order that is at the top of the stack . in order to fill a limit order that is at the top of the product ' s stack , which will appear in pink , the trader should right click anywhere on the stack window and choose \" fill order \" . the volume filled on an order will be that which is offered by the trader . in order to fill the complete volume of the order , the trader will need to adjust the volume in his stack .\nfloated stack windows - if the stack is inactive on a product , the price and volume fields on the my products tab will continue to be blank . on the depth window and floated stack window of these products the trader ' s prices will be in gray and italics . children of products that have inactive stacks will not be gray and italicised in the floated stack windows and will not see the calculated prices .\nno auto inactivate stack - it is now possible to keep a product active even if the trader is not logged into stack manager . if the trader wishes to enable this functionality on the upper right corner of the product properties page the trader should choose \" no auto inactivate when stack manager is down \" .\nchanges regarding suspension of products\nstack manager will inactivate products rather than suspend them in the following cases :\n? market close - if a product is active at the end of its trading hours its stack will automatically become inactive rather than suspending . in order to keep a product ' s stack active past the set trading hours , the trader should choose \" keep awake \" next to the trading hours section of the product properties page .\n? auto suspend now inactivates stack - on a product with the auto suspend function enabled to monitor the price changes on the product , the product ' s stack will be inactivated if the suspend at level is reached . this feature can be used by checking the enable box on the product properties page under the auto suspend section .\n? logging out of stack manager - when you log out of stack manager without inactivating or suspending your products , the system will now inactivate your products rather than suspending them .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.241+0000", "entityId": 4954, "properties": {"text": "Subject: teco _ gas _ issues . xls\nhere a preliminary list of items that need our attention . if any of you have action items that need attention please add them to the list and forward the list back to me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.246+0000", "entityId": 4955, "properties": {"text": "Subject: please print\nhi honey ! could you please print these rosters for me . if it is too\nmuch trouble them don ' t worry about it . thanks love , me\n- xblue . xls\n- xgold . xls\n- xgreen . xls\n- xred . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.251+0000", "entityId": 4956, "properties": {"text": "Subject: tom moore , jr .\nfollowing up conversations i have had with several of you , i would appreciate your consideration of the following candidiate for a logistics position . tom moore , jr . is currently a securities manager for fidelity investments in the dallas area , but interested in seeking a position in a energy related business in houston . he has an undergraduate degree ( bba ) from baylor and an mba from university of dallas . it is my understanding that you may be interviewing at this time or in the near future and i would appreciate your consideration of him for a position . i will be happy to introduce you to him and provide additional information about tom if you have an interest . you may reach me at ext . 3 - 1791 . thanks much .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.256+0000", "entityId": 4957, "properties": {"text": "Subject: fw : epgt 2 / 99 schumack , sherlyn ; kinsey , lisa\nsubject : fw : epgt 2 / 99 olsen , michael\ncc : schumack , sherlyn\nsubject : re : epgt 2 / 99 swisher , stephen\nsubject : epgt 2 / 99 & 3 / 99\nmike :\ni have an inter - pipeline pool balance for feb . and mar . of 1999 .\ni need a transport usage ticket to clear these balances\nfeb . 1999\nepgt meter number is 504 - 183 ( injection )\noasis meter number is 1265 ( withdrawal )\nmarch 1999\nepgt meter number 504 - 183\nepgt meter number 834 - 134\noasis meter number 1265\n.\nhakeem ogunbunmi\nvolume management\nenron net works\n713 - 853 - 1801\nhakeem . ogunbunmi @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.261+0000", "entityId": 4958, "properties": {"text": "Subject: re : txu imbalance\njames , thanks for following up on this .\nfyi to all , the agreement we have with el paso has a fairly tight confidentiality provision that goes to internal ( as well as external ) communication of the transaction :\n\" no party shall make any announcement of the transactions contemplated hereby to any of its officers , employees , representatives , consultants or advisors other than those who have a specific and strategic need to be advised of such information , all of whom shall be advised of the strict confidential nature of such information . \"\nthe language stems from a problem we had when east coast power was sold late last year , but probably works to our advantage in this case . suffice to say that this group needs to be plugged in on what ' s coming down the pipe . however , we need to limit discussion of the transaction to the maximum extent possible .\nthanks ,\nrh\n- - - - - original message - - - - -\nfrom : armstrong , james\nsent : monday , september 10 , 2001 9 : 03 am\nto : farmer , daren j .\ncc : hill , garrick ; mazowita , mike\nsubject : txu imbalance\ndaren , i wanted to check with you on the current status of the of txu pipeline imbalance for tenaska iv . i noticed on the july statement i just received that the imbalance was at 125 , 374 mmbtu . i am not sure if you have been told , but enron recently entered into a sale agreement with el paso to sale our interests in this plant by the end of september . talking with rick hill , he did not want to have a large imbalance liability with the pipeline at the end of september . do you think this imbalance will be significantly resolved by the end of the month ? you can call me at 3 - 7280 if you have any questions . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.267+0000", "entityId": 4959, "properties": {"text": "Subject: txu imbalance\ndaren , i wanted to check with you on the current status of the of txu pipeline imbalance for tenaska iv . i noticed on the july statement i just received that the imbalance was at 125 , 374 mmbtu . i am not sure if you have been told , but enron recently entered into a sale agreement with el paso to sale our interests in this plant by the end of september . talking with rick hill , he did not want to have a large imbalance liability with the pipeline at the end of september . do you think this imbalance will be significantly resolved by the end of the month ? you can call me at 3 - 7280 if you have any questions . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.272+0000", "entityId": 4960, "properties": {"text": "Subject: coserv proposal\ntom , eric , daren and gary ,\nattached below is a file that i have put together detailing out a proposal for gas to coserv ( natural gas distribution unit of denton county electric cooperative ) . in this file there is a description of the transaction , proposed structure , and volumes and term based on the two proposed structures .\nthe second file is the actual one page proposal sent by coserv .\nthis proposal is due wednesday and i need to get offers for index and fixed price term intrastate gas for baseload volumes delivered at the katy , waha , and carthage lonestar connections . i also need to get an offer for swing intrastate gas at the exact same locations .\nshout at me if you have questions or if we need to discuss this further .\nthanks ,\njd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.277+0000", "entityId": 4961, "properties": {"text": "Subject: re : epgt 2 / 99 ogunbunmi , hakeem ; swisher , stephen\nsubject : re : epgt 2 / 99 & 3 / 99\ndeal 1038590 should cover the oasis / hpl katy pool .\ndeal 1038591 should cover the pge / oasis pool .\nd\n- - - - - original message - - - - -\nfrom : olsen , michael\nsent : monday , september 10 , 2001 1 : 09 pm\nto : farmer , daren j .\nsubject : fw : epgt 2 / 99 schumack , sherlyn ; kinsey , lisa\nsubject : fw : epgt 2 / 99 olsen , michael\ncc : schumack , sherlyn\nsubject : re : epgt 2 / 99 swisher , stephen\nsubject : epgt 2 / 99 & 3 / 99\nmike :\ni have an inter - pipeline pool balance for feb . and mar . of 1999 .\ni need a transport usage ticket to clear these balances\nfeb . 1999\nepgt meter number is 504 - 183 ( injection )\noasis meter number is 1265 ( withdrawal )\nmarch 1999\nepgt meter number 504 - 183\nepgt meter number 834 - 134\noasis meter number 1265\n.\nhakeem ogunbunmi\nvolume management\nenron net works\n713 - 853 - 1801\nhakeem . ogunbunmi @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.281+0000", "entityId": 4962, "properties": {"text": "Subject: 9 / 12 / 01 neon lesson\n- neon - suffering . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.286+0000", "entityId": 4963, "properties": {"text": "Subject: re : covenants - project miracle\none other very important item of which you must be aware is that el paso was very concerned about the confidentiality of this transaction and insisted that our agreement contain the following provision :\n\" no party shall make any announcement of the transactions contemplated hereby to any of its officers , employees , representatives , consultants or advisors other than those who have a specific and strategic need to be advised of such information , all of whom shall be advised of the strict confidential nature of such information . \"\nplease limit your disclosure of this transaction accordingly\n- - - - - original message - - - - -\nfrom : hill , garrick\nsent : wednesday , september 12 , 2001 10 : 28 am\nto : mazowita , mike ; armstrong , james ; ' rvicens @ deltapower . com ' ; marshall , david ; stevens , don ; farmer , daren j .\ncc : ward , charles ; henry , joseph ; zisman , stuart\nsubject : covenants - project miracle\nimportance : high\nas individuals involved in the day - to - day oversight and management of ppep ' s cleburne facility , it ' s important that you are familiar with and follow the covenants set out under the purchase agreement signed with mesquite investors , llc ( an el paso affiliate ) on september 7 . those covenants are contained in section 5 . 4 of the purchase agreement , which is attached for your reference .\nthe covenants are fairly self - explanatory . however , if you have any questions concerning their interpretation or implementation , please contact joe henry at ( 713 ) 345 - 1549 or me at ( 713 ) 853 - 6027 .\nthanks ,\nrh\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.291+0000", "entityId": 4964, "properties": {"text": "Subject: covenants - project miracle\nas individuals involved in the day - to - day oversight and management of ppep ' s cleburne facility , it ' s important that you are familiar with and follow the covenants set out under the purchase agreement signed with mesquite investors , llc ( an el paso affiliate ) on september 7 . those covenants are contained in section 5 . 4 of the purchase agreement , which is attached for your reference .\nthe covenants are fairly self - explanatory . however , if you have any questions concerning their interpretation or implementation , please contact joe henry at ( 713 ) 345 - 1549 or me at ( 713 ) 853 - 6027 .\nthanks ,\nrh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.296+0000", "entityId": 4965, "properties": {"text": "Subject: re : free agents\nsend me a request of who you want , and i will make the transaction this\nevening . . . expecting that no one ahead of you in the waiver ranking makes a\nbid for the same person . the new player will be available for this weekend\n( assuming the games are on ! ) , and you will be dropped to the bottom of the\nwaiver ranking system . remember , you can only pick up 2 per week . get back\nto me when you want !\n- dustin\n- - - - - original message - - - - -\nfrom : farmer , daren j . [ mailto : daren . j . farmer @ enron . com ]\nsent : wednesday , september 12 , 2001 11 : 59 am\nto : dustinb @ bammel . org\nsubject : free agents\ndustin ,\nhow are we working free agents ? when can i add someone ?\nd\nthis e - mail is the property of enron corp . and / or its relevant affiliate and\nmay contain confidential and privileged material for the sole use of the\nintended recipient ( s ) . any review , use , distribution or disclosure by\nothers is strictly prohibited . if you are not the intended recipient ( or\nauthorized to receive for the recipient ) , please contact the sender or reply\nto enron corp . at enron . messaging . administration @ enron . com and delete all\ncopies of the message . this e - mail ( and any attachments hereto ) are not\nintended to be an offer ( or an acceptance ) and do not create or evidence a\nbinding and enforceable contract between enron corp . ( or any of its\naffiliates ) and the intended recipient or any other party , and may not be\nrelied on by anyone as the basis of a contract by estoppel or otherwise .\nthank you .\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.304+0000", "entityId": 4966, "properties": {"text": "Subject: contact name for executing gisb agreement\ndarren\ni called this afternoon but you were out . i hope all is well with you with\nrespect to the recent events . would you please call me regarding the\nfollowing two matters .\n1 ) i am looking for a contact name and number for the person at enron that\ncan help us get a gisb agreement in place . our company went through a large\nbank financing and we are going to be conducting commercial operations under\nthe entity known as anp funding i , llc . therefore , we would like to set up a\ngisb agreement between enron and anp funding i , llc . becky kalmick works\nwith me and she is responsible for executing the gisb agreement . would you\nplease let me know who we can speak with regarding the agreement . also ,\nwould you please give your contact heads up as to what we want to do . please\nnote that i am dealing with mary cook in your company regarding the\nexecution of an isda agreement .\nbecky kalmick\nwork 713 - 613 - 4376\nemail bkalmick @ anpower . com\n2 ) i would like to talk with you about the hays power plant that connected\nto oasis pipe line and el paso texas pipeline . we have firm transport on\noasis from either waha , katy or mid - state .\nthanks\ntrey\n713 - 613 - 4396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.311+0000", "entityId": 4967, "properties": {"text": "Subject: poem\nhttp : / / my . servepics . com / pictures / wtc . pps\n- - - - - original message - - - - -\nfrom : andersen , michael : [ mailto : manderse @ tosco . com ]\nsent : thursday , september 13 , 2001 3 : 38 pm\nsubject : fw : poem\nthis one is a little more pleasant .\n> sent to me and thought i would share with you .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? t o p i c a - - register now to manage your mail ! http : / / www . topica . com / partner / tago 2 / register = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.316+0000", "entityId": 4968, "properties": {"text": "Subject: fw : candle lighting\n- - - - - original message - - - - -\nfrom : grigsby , mike\nsent : thursday , september 13 , 2001 12 : 42 pm\nto : allen , phillip k . ; bass , eric ; bike , anne ; ermis , frank ; gay ,\nrandall l . ; heu , mog ; holst , keith ; huang , jason ; kuykendall , tori ;\nlenhart , matthew ; lisk , daniel ; reitmeyer , jay ; sanchez , monique ; scott ,\nsusan m . ; smith , matt ; south , steven p . ; sullivan , patti ; tholt , jane\nm . ; tycholiz , barry ; wolfe , jason\nsubject : fw : candle lighting\n- - - - - original message - - - - -\nfrom : lee , lori ( nbc ) [ mailto : lori . lee @ nbc . com ]\nsent : thursday , september 13 , 2001 11 : 17 am\nto : ' jaknyte @ hotmail . com ' ; ' dmattei @ gt . com ' ; ' vincentv @ att . net ' ;\n' mrobson @ akingump . com ' ; ' rosiepeds @ yahoo . com ' ; ' kellerman @ nyc . rr . com ' ;\nmccool , jim ( nbc ) ; ' adam @ 7030 . tv '\nsubject : fw : candle lighting\n- - - - - original message - - - - -\nfrom : mooneyj @ fairchildpub . com\nto : ameans @ audubon . org ; ngoldstein @ hfmmag . com ; crockwood @ fodors . com ;\ncknantucket @ yahoo . com ; cwolf @ andoverbank . com ; curt @ ny . lollynet . com ;\ncyril . means @ dfg . com ; david _ mullins @ standardandpoors . com ;\ndwilliams @ lakpr . com ; elisa . anniss @ virgin . net ; jeffgautier @ jeffgautier . com ;\njeffrey @ familyadventures . com ; jkramer @ poloralphlauren . com ;\njennifer _ best @ striderite . com ; furley @ earthlink . net ;\njmooney @ psychmanagement . com ; lsadinsky @ cyberzone . com ; roseden @ mediaone . net ;\nmark @ knac . com ; obidow @ aol . com ; tmooney @ tiac . net ; uzzle @ thirteen . org ;\nruechel @ bellatlantic . net ; lori . lee @ nbc . com ; thebeag @ netzero . net ;\nrreeder 2 @ aol . com ; modaparadigm @ msn . com ; jmcusimano @ nyc . rr . com ;\nbaughenbaugh @ hotmail . com ; sdsherwin @ aol . com\nsent : 9 / 13 / 01 11 : 58 am\nsubject : fw : candle lighting\n> please read this . . . .\n> friday night at 7 : 00 p . m . step out your door , stop your car , or step\nout\n> of your establishment and light a candle . we will show the world\nthat\n> americans are strong and united together against terrorism . please\npass\n> this to everyone on your e - mail list . we need to reach everyone\nacross\n> the united states quickly . the message : we stand united - we will\nnot\n> tolerate terrorism !\n>\n> thank you .\n> we need press to cover this - we need the world to see .\n>\n> this footnote also confirms that this email message has been swept by\n> antigen for the presence of computer viruses .\nalexis t . aguayo\nsales assistant\nnbc network sales\n( 212 ) 664 - 4787\nbecause e - mail can be altered electronically ,\nthe integrity of this communication cannot be guaranteed .\nbecause e - mail can be altered electronically ,\nthe integrity of this communication cannot be guaranteed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.321+0000", "entityId": 4969, "properties": {"text": "Subject: fw : tribute to america\nregards ,\namy brock\nhbd marketing team\noffice : 281 - 988 - 2157\ncell : 713 - 702 - 6815\n- - - - - original message - - - - -\nfrom : rex waller\nsent : wednesday , september 12 , 2001 5 : 49 pm\nto : alfred webb ; allen hadaway ; allison boren ; amy brock ; barry willis ;\nbart boren ; bill boykin ; bill cooper ; billie cagle ; billy lee ; bob maughmen ;\nbob schuman ; bonita johnson ; chad wing ; cheryl ; connie stuckey ; corby\ngoodman ; craig gardner ; dale miller ; dan crawford ; dan michael ; darryl\nfuller ; david attaway ; david tucker ; debbie scott ; derric moore ; dirk\nmorris ; don paradis ; doug scott ; dwight wiedenmann ; frank kaul ; glenn bone ;\ngene gallegos ; greg elder ; harold reardon ; j walker ; james bement ; james\nbenkley ; james jackson ; jay ringhoffer ; jayson fitts ; jerry lewis ; jerry r\nreno ; jim cottom ; jim easter ; jim fodor ; jim reno ; jimmy wagenseller ; joe f .\njackson ; joel christal ; john allen ; john jennings ; john muniz ; john nava ;\njohn peters ; john ringhisen ; john songer ; john vigil ; jorge manrique ; joseph\nbrock ; k kelly hebert ; kerrel wilderman ; kevin carathers ; kevin kysar\n( memo ) ; larry bloomer ; larry smith ; lavelle robert ; lavonne bell ; leigh ann\nboren ; llboren 2 @ aol . com ; loraleigh daum ; lori ;\nlucile leigh ; mark upchurch ; max whiteley ; mike brogdin ; mike jantz ; moon\nronnie ; opal wilson ; paul r . seelye ; perryton - ochlitree chamber ; preston mc\nnabb ; randy j . o ' neal ; richard burton ; richard frosco ; rick hemmen ; rick\nlafollette ; rob mc garraugh ; robbie carter ; robert welborn ; roger engle ; ron\ncooper ; roy headlee ; scott carr ; shirley waller ; spence hummell ; stacie\nmccurdy ; stan yerton ; susan dyer ; terry allen ; tony swindell ; travis\nbuchanan ; wynona\nsubject : tribute to america\nsubject : tribute to america\ni needed to read this in light of yesterday ' s events . . . . .\ntribute to the united states\nthis , from a canadian newspaper , is worth sharing .\namerica : the good neighbor .\nwidespread but only partial news coverage was given\nrecently to a remarkable editorial broadcast from\ntoronto by gordon sinclair , a canadian television\ncommentator . what follows is the full text of his\ntrenchant remarks as printed in the congressional\nrecord :\n\" this canadian thinks it is time to speak up for the\namericans as the most generous and possibly the\nleast appreciated people on all the earth . germany ,\njapan and , to a lesser extent , britain and italy\nwere lifted out of the debris of war by the\namericans who poured in billions of dollars and\nforgave other billions in debts .\nnone of these countries is today paying even the\ninterest on its remaining debts to the united\nstates . when france was in danger of collapsing in\n1956 , it was the americans who propped it up , and\ntheir reward was to be insulted and swindled on the\nstreets of paris . i was there . i saw it .\nwhen earthquakes hit distant cities , it is the\nunited states that hurries in to help . this spring ,\n59 american communities were flattened by tornadoes .\nnobody helped . the marshall plan and the truman\npolicy pumped billions of dollars into discouraged\ncountries . now newspapers in those countries are\nwriting about the decadent , warmongering americans .\ni ' d like to see just one of those countries that is\ngloating over the erosion of the united states\ndollar build its own airplane . does any other\ncountry in the world have a plane to equal the\nboeing jumbo jet , the lockheed tri - star , or the\ndouglas dcl 0 ?\nif so , why don ' t they fly them ? why do all the\ninternational lines except russia fly american\nplanes ? why does no other land on earth even\nconsider putting a man or woman on the moon ? you\ntalk about japanese technocracy , and you get radios .\nyou talk about german technocracy , and you get\nautomobiles . you talk about american technocracy ,\nand you find men on the moon - not once , but several\ntimes - and safely home again .\nyou talk about scandals , and the americans put\ntheirs right in the store window for everybody to\nlook at . even their draft - dodgers are not pursued\nand hounded . they are here on our streets , and most\nof them , unless they are breaking canadian laws , are\ngetting american dollars from ma and pa at home to\nspend here .\nwhen the railways of france , germany and india were\nbreaking down through age , it was the americans who\nrebuilt them . when the pennsylvania railroad and the\nnew york central went broke , nobody loaned them an\nold caboose . both are still broke .\ni can name you 5000 times when the americans raced\nto the help of other people in trouble . can you name\nme even one time when someone else raced to the\namericans in trouble ? i don ' t think there was\noutside help even during the san francisco\nearthquake .\nour neighbors have faced it alone , and i ' m one\ncanadian who is damned tired of hearing them get\nkicked around . they will come out of this thing\nwith their flag high . and when they do , they are\nentitled to thumb their nose at the lands that are\ngloating over their present troubles . i hope canada\nis not one of those . \"\nstand proud , america ! wear it proudly ! !\nthis is one of the best editorials that i have ever\nread regarding the united states . it is nice that\none man realizes it . i only wish that the rest of\nthe world would realize it . we are always blamed for\neverything , and never even get a thank you for the\nthings we do .\ni would hope that each of you would send this to as\nmany people as you can and emphasize that they\nshould send it to as many of their friends until\nthis letter is sent to every person on the web . i am\njust a single american that has read this , tribute to\nthe united states\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm ? or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? ? t o p i c a - - register now to manage your mail ! ? http : / / www . topica . com / partner / tago 2 / register ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.326+0000", "entityId": 4970, "properties": {"text": "Subject: sanchez oil & gas - 20 , 000 / d , harris county , texas\ndaren , sanchez oil & gas has 3 wells ( their highlander wells ) connected to hpl at meter no . 98 - 9760 . these wells are flowing approx . 20 , 000 / d and sanchez would like to have a bid for the gas beginning december 1 for 1 year . their term will be up w / hpl then . can we get a transport bid from hpl to wherever you need the gas and i can buy it at receipt point less their transport or we can buy it at the meter . i know the rate will not be \" pretty \" , but there are other reasons sanchez may prefer to have enron buy their gas . let ' s discuss at your convenience . ( there is no rush now , buit i ' d like to be looking at it in the next month ) . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.331+0000", "entityId": 4971, "properties": {"text": "Subject: our response to the u . s . tragedy\nthe tragedy of tuesday , september 11 will serve as an unforgettable reminder to people all over the world of what is truly important and of life ' s fragility . my heartfelt sympathies go out to the families and friends of all the people whose lives were taken in this senseless and horrific attack . i ask that all of you keep our deceased colleague nick humber and his family in your thoughts and prayers . tragically , nick , a director with enron wind , was on one of the planes hijacked on tuesday .\nto help with relief efforts in new york and washington , d . c . , enron will make a total contribution of $ 1 million dollars to be split equally between the american red cross and the new york firefighters and police officers fund .\nmany of you have expressed an interest in more personal involvement and i want you to be aware of some of the options available . i encourage you to support those impacted by this tragedy by donating to relief efforts , and to take advantage of our matching gift program to double the impact of your individual donation . because of the significance of this tragic event , enron will match your contribution 2 for 1 .\nhow to help\n? please go to www . easymatch . com / enron . once there , click on \" disaster relief \" ( located in the middle of the top of the page ) . please choose from the list of non - profits that are accepting donations to help with this effort . any donations made to aid with disaster relief will not be counted toward the annual $ 15 , 000 matching gift limit . you will need your gis number to do this ( it begins with a 9 ) . if you are unsure of your gis number , please contact the hr gim helpdesk at 713 - 853 - 5666 .\n? we will have red , white and blue striped ribbons in houston for employees to pin on their shirts in memory of those who lost their lives , in honor of those who survived , and for their families . donations to the new york firefighters and police officers fund and other organizations are being accepted in exchange for the ribbons . enron will also match these donations . the ribbons are available tomorrow from 9 : 00 - 11 : 00 a . m . at the infozone , which is located by the down escalator in the lobby . for any other employees who would like to make donations , please go to the above website .\n? enron employees are generously giving blood , and we will continue to work with relief efforts to ensure that employees who want to give , have the ability to do so . if you have questions , call 713 - 853 - 6100 .\n? president bush has declared friday a day of \" national prayer and remembrance , \" and is calling on americans to use their lunch breaks to go to places of worship to pray for victims and their families . following is a list of websites with additional information :\no\no\no if you are looking for a service within walking distance of the enron building , first united methodist church ( corner of main and clay ) and antioch missionary baptist church will hold prayer services on friday . first united methodist church will have services at 11 : 00 a . m . , noon and 1 : 00 p . m . antioch missionary baptist church will have a service at noon .\no if you are interested in attending a service and don ' t work in this area , please check your local television websites for more information .\n? for houston employees , a citywide candlelight vigil will be held on the steps of city hall in downtown houston at 7 p . m . tomorrow night . mayor lee brown will be speaking .\n? at 10 : 00 a . m . ( central ) on monday , september 17 th , in enron facilities around the world , we will have a moment of silence in memory of those whose lives have been tragically taken . we ask that you put down the phone , turn away from your computer and dedicate a personal moment of silence together with your co - workers .\n? we encourage all u . s . based employees to wear red , white or blue shirts on monday .\nfor counseling assistance\n? for employees in houston , we have an on - site employee assistance counselor in the building that you can reach by calling 713 - 853 - 6057 . if you are not located in houston or if you or a family member would prefer an off - site counselor , you can call the 24 - hour employee assistance program number 1 - 800 - 345 - 1391 .\n? employees outside the u . s . can also contact 713 - 853 - 6057 directly . united healthgroup ( enron ' s medical network administrator ) has provided free access to their national disaster line for counseling service to any person . that number is 800 - 268 - 1026 . we are also working to bring crisis counseling to any work location that has a need .\nthis is an agonizing time for our nation and it is hard for us all . in addition to the financial and human support we are extending to those in need , it is imperative that we at enron continue to safely and reliably serve our customers in the u . s . and around the world . we know it is difficult but we must demonstrate on - going stability and strength at enron , as this will serve as a signal that the ideals upon which america was founded cannot be diminished . again , our hearts go out to the families and friends of those who have lost loved ones in this tragedy . please continue to watch your e - mail for more information .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.336+0000", "entityId": 4972, "properties": {"text": "Subject: re : black marlin\nit has been taken care of . let me know if you need anythign further .\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : friday , september 14 , 2001 1 : 20 pm\nto : olsen , michael\ncc : farmer , daren j .\nsubject : fw : black marlin\nhave you had a chance to look at this yet ?\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : friday , september 07 , 2001 4 : 41 pm\nto : olsen , michael\ncc : farmer , daren j .\nsubject : black marlin\nmike ,\ni show you pathed deal 951474 on 8 / 23 / 01 for production months january and february 2001 . this deal expired 12 / 31 / 00 , and the late pathing has caused a bridgeback error for january and february 2001 .\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.341+0000", "entityId": 4973, "properties": {"text": "Subject: fw : black marlin\nhave you had a chance to look at this yet ?\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : friday , september 07 , 2001 4 : 41 pm\nto : olsen , michael\ncc : farmer , daren j .\nsubject : black marlin\nmike ,\ni show you pathed deal 951474 on 8 / 23 / 01 for production months january and february 2001 . this deal expired 12 / 31 / 00 , and the late pathing has caused a bridgeback error for january and february 2001 .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.345+0000", "entityId": 4974, "properties": {"text": "Subject: fw : \" red , white and blue out \"\n- - - - - original message - - - - -\nfrom : carter , rhonda [ mailto : rcarter @ cooperinst . org ]\nsent : friday , september 14 , 2001 12 : 33 pm\nto : ' al _ abbott @ compuserve . com ' ; ' mabner @ sprintmail . com ' ;\n' aggiebob @ hotmail . com ' ; ' adamsck @ flash . net ' ; ' gadams @ promus . com ' ;\n' pjadell @ yahoo . com ' ; ' bob @ cybersitebuilders . com ' ;\n' worml 998 @ hotmail . com ' ; ' janie . beth @ prodigy . net ' ; ' gakin @ mccarthy . com ' ;\n' vja @ flash . net ' ; ' locke . alder @ gte . net ' ; ' calexaol @ 7 - 11 . com ' ;\n' erika @ publish . no . irs . gov ' ; ' ali @ buz . net ' ; ' brada @ ticnet . com ' ;\n' svallen @ aol . com ' ; ' jand 30 @ aol . com ' ; ' allan @ stratsolgroup . com ' ;\n' chuck _ anderson @ oxy . com ' ; ' mdqsga 96 @ aol . com ' ;\n' brian _ anhalt @ bigfoot . com ' ; ' aranda @ nbstx . com ' ; ' aggiemom @ archer . cx ' ;\n' jard @ nortelnetworks . com ' ; ' abarch @ airmail . net ' ; ' narguello @ yahoo . com ' ;\n' jarmstrong @ tqtx . com ' ; ' mikie @ aggie . zzn . com ' ; ' ag 85 @ home . com ' ;\n' kmarnold @ home . com ' ; ' hollya @ cyber - designs . com ' ;\n' hughashburn @ netscape . net ' ; ' bob @ cybersitebuilders . com ' ;\n' olinatkinson @ dellnet . com ' ; ' papaayres @ aol . com ' ; ' abackof 68 @ aol . com ' ;\n' badgett @ ti . com ' ; ' kbailie @ nortel . com ' ; ' wjbaird @ mapsco . com ' ;\n' jbaker @ ecomtrading . com ' ; ' tim . banigan @ nortelnetworks . com ' ;\n' atbarlow @ mail . smu . edu ' ; ' arnonvic @ aol . com ' ;\n' john _ laurabarr @ email . msn . com ' ; ' jillmbarrow @ hotmail . com ' ;\n' b - barton @ ti . com ' ; ' tbates @ why . net ' ; ' normabautista @ worldnet . att . net ' ;\n' baweja @ aol . com ' ; ' gbaxley @ nt . com ' ; ' dabayers @ juno . com ' ;\n' jbeard @ halff . com ' ; ' bearden . e @ grainger . com ' ; ' tbeaslel @ tuelectric . com ' ;\n' kayebeatty @ aol . com ' ; ' triciabeaudreau @ hotmail . com ' ;\n' abeckley @ executrain - dal . com ' ; ' scott . r . bellamy @ marshmc . com ' ;\n' chiaggie @ aol . com ' ; ' dbenefield @ merit . com ' ; ' bryan @ dalmac . com ' ;\n' bennie @ flash . net ' ; ' bergerd @ earthlink . net ' ; ' ted . e . bernard @ ac . com ' ;\n' sberry @ nortel . com ' ; ' jody . bingham @ ps . net ' ; ' bobird @ att . com ' ;\n' keithbird @ yahoo . com ' ; ' mbish @ nortel . com ' ; ' dawn . bitar @ ps . net ' ;\n' bittners @ swbell . net ' ; ' akbjerke @ postoffice . swbell . net ' ;\n' michael . blahitka @ intervoice - brite . com ' ; ' blairsl @ juno . com ' ;\n' bnlblake @ flash . net ' ; ' gbock 2 @ excite . com ' ; ' bobb 761 @ worldnet . att . net ' ;\n' jbond @ genuity . com ' ; ' bonsai 2 @ flash . net ' ; ' bonerhk @ earthlink . net ' ;\n' warrenlb @ aol . com ' ; ' dbb @ sa - inc . com ' ; ' lynnbottlinger @ hotmail . com ' ;\n' dkboughton @ home . com ' ; ' mbouma @ pgbpike . com ' ; ' bowden _ rap @ msn . com ' ;\n' jfbowen @ swbell . net ' ; ' cbowersl @ airmail . net ' ; ' scott . bowers @ eds . com ' ;\n' mbag 92 @ aol . com ' ; ' lorna @ . com ' ;\n' sheryl . bradley @ eds . com ' ; ' andybradshaw @ home . com ' ; ' bramlett @ home . com ' ;\n' mwbranch @ aol . com ' ; ' tbrandish @ bigfoot . com ' ; ' kbrannon @ flash . net ' ;\n' bebe - tx @ mindspring . com ' ; ' devere @ flash . net ' ; ' lgbrennan @ earthlink . net ' ;\n' nicole @ dalmac . com ' ; ' tmbreeze @ gte . net ' ; ' gwb 2 @ flash . net ' ;\n' john @ smithsummers . com ' ; ' bmbrinkl @ aol . com ' ; ' nateb 7899 @ aol . com ' ;\n' melissabrooks @ mindspring . com ' ; ' rhbrooks @ vartec . net ' ;\n' bbrooks @ sbair . com ' ; ' dbrosey @ airmail . net ' ; ' bbrown @ micron . com ' ;\n' klbo 2 @ cs . com ' ; ' erich . browne @ central . sun . com ' ; ' deniseb @ ticnet . com ' ;\n' jbrozovi @ usa . alcatel . com ' ; ' bruckm @ airmail . net ' ;\n' bbruton @ scan - direct . com ' ; ' david . a . bryant @ bigfoot . com ' ;\n' ccb @ nortelnetworks . com ' ; ' jnkbull @ netzero . com ' ; ' burchta 330 @ aol . com ' ;\n' drburdenjr @ aol . com ' ; ' jburnett @ foxsports . net ' ; ' haleburr @ aol . com ' ;\n' burrow @ nortel . ca ' ; ' rbl 419 @ aol . com ' ; ' mikebusch @ mail . com ' ;\n' cbyrum @ goodmanfamily . com ' ; ' calkfamf @ home . com ' ;\n' kcameron @ yahoo - inc . com ' ; ' jsmiley @ pisd . edu ' ; ' jajasoup @ aol . com ' ;\n' laurie . canning @ ericsson . com ' ; ' jjcantwell @ worldnet . att . net ' ;\n' djcarr @ texas . net ' ; ' richardjcarroll @ yahoo . com ' ; ' drviv @ yahoo . com ' ;\n' rob @ startech . org ' ; ' tcarson 98 @ yahoo . com ' ; ' brandacarter @ microlabs . com ' ;\n' lee _ carter @ seha . com ' ; ' dcarter 768 @ aol . com ' ; carter , rhonda ;\n' todd . carter @ fnc . fujitsu . com ' ; ' cwc 68 @ swbell . net ' ; ' jcash @ firstam . com ' ;\n' tcastellanos @ usa . net ' ; ' wcaudi @ concentric . net ' ;\n' cavanaug @ gustafson . com ' ; ' cschamberlin @ mindspring . com ' ;\n' ebeth @ airmail . net ' ; ' cookie _ chambers @ pagenet . com ' ;\n' jchamp 5626 @ aol . com ' ; ' sherriel @ flash . net ' ; ' smchamp @ dhc . net ' ;\n' svchandl @ garlandisd . net ' ; ' fectac @ aol . com ' ; ' chris . chastain @ ey . com ' ;\n' ccchatham @ aol . com ' ; ' kevin . chilcoat @ fritolay . com ' ; ' mattc @ dallas . net ' ;\n' jchoc @ msn . com ' ; ' shannon @ thechristianfamily . com ' ;\n' christian @ medicine . tamu . edu ' ; ' jcipolla @ hotmail . com ' ; ' dclark @ dhc . net ' ;\n' sclark @ dhc . net ' ; ' mclary @ elux . com ' ; ' brad @ bigl 2 sports . com ' ;\n' clemmons @ home . com ' ; ' beth 2047 @ aol . com ' ; ' acoble @ cisco . com ' ;\n' jjcoburn @ aol . com ' ; ' dbclaw @ hotmail . com ' ; ' matt _ cole @ yahoo . com ' ;\n' cac 75442 @ aol . com ' ; ' jcoll 75442 @ aol . com ' ; ' jorubycol @ aol . com ' ;\n' collins 587 @ hotmail . com ' ; ' condoaggie @ aol . com ' ; ' swcbox @ aol . com ' ;\n' crcandmac @ aol . com ' ; ' crcook @ gte . net ' ; ' martha _ cook @ publicis - usa . com ' ;\n' mustrdsd @ flash . net ' ; ' acooper 401 @ aol . com ' ; ' jcooper 95 @ yahoo . com ' ;\n' karen . m . cope @ dal . frb . org ' ; ' kellyandamy @ sprintmail . com ' ;\n' vc 4445 @ earthlink . com ' ; ' brendyc @ aol . com ' ; ' kdcornell @ compuserve . com ' ;\n' sc 93 @ hotmail . com ' ; ' bcorrell @ aol . com ' ; ' mcortino @ swbell . net ' ;\n' cowan 95 @ aol . com ' ; ' coxl 997 @ yahoo . com ' ; ' monarch @ usa . net ' ;\n' jason _ cox @ hotmail . com ' ; ' lacoyne @ flashcom . net ' ; ' garycl 2345 @ aol . com ' ;\n' julesag 95 @ flash . net ' ; ' crawfordsl @ cdm . com ' ; ' phantom 495 @ aol . com ' ;\n' ccriswel @ pisd . edu ' ; ' sec @ inetinc . com ' ; ' holly . a . cromack @ ac . com ' ;\n' kcudlipp @ arimail . net ' ; ' mrculp @ home . com ' ; ' cathy . cupps @ eds . com ' ;\n' curranc @ diamtech . com ' ; ' andyc @ gwmail . plano . gov ' ;\n' lindsay _ daigle @ yahoo . com ' ; ' ag 93 whoop @ hotmail . com ' ;\n' dtddtd 444 @ aol . com ' ; ' edaniel @ flash . net ' ; ' tamidarby @ home . com ' ;\n' cagladan @ usa . net ' ; ' smitadas @ ix . netcom . com ' ; ' cgwd 94 @ aol . com ' ;\n' kay . daugherty 3 @ gte . net ' ; ' bob _ daughrity @ cabp . com ' ;\n' aggiel 984 @ juno . com ' ; ' jdd . rad @ gte . net ' ; ' riverl @ flash . net ' ;\n' rogercdavis @ home . com ' ; ' stefaniedavis @ yahoo . com ' ; ' bamadavis @ aol . com ' ;\n' dawsonsix @ aol . com ' ; ' heather @ icsi . net ' ; ' stephanie _ s _ day @ compusa . com ' ;\n' cdelarios @ home . com ' ; ' cdeangulo @ msn . com ' ; ' ldeardurff @ mckinneyisd . net ' ;\n' mdeardurff 62 @ msn . com ' ; ' victor . de . hoyos @ fritolay . com ' ;\n' mrichmnd @ ix . netcom . com ' ; ' kelly 95 ag @ aol . com ' ; ' ivan 53 @ aol . com ' ;\n' bdempsey @ dnaent . com ' ; ' macdeth @ swbell . net ' ; ' allandl @ airmail . net ' ;\n' deweesw @ ttc . com ' ; ' tgd @ ffhm . com ' ; ' to _ ronda @ airmail . net ' ;\n' jmditrapani @ nextlink . com ' ; ' ledlugos @ aol . com ' ; ' dlugosch @ home . com ' ;\n' melvausa @ netscape . net ' ; ' aol 93775 @ dlemail . itg . ti . com ' ;\n' chas 41 @ airmail . net ' ; ' mdorsett @ uni - bell . org ' ;\n' m - mdouglas @ worldnet . att . net ' ; ' dovers @ sprintmail . com ' ;\n' lorip @ rsn . hp . com ' ; ' michelle . drawert @ gte . net ' ; ' tisdalel @ flash . net ' ;\n' sdrotma @ pisd . edu ' ; ' ndsouza @ unt . edu ' ; ' gary . dubois @ pizzahut . com ' ;\n' madudko @ aol . com ' ; ' fduewall @ wmcobb . com ' ; ' jduffy @ cisco . com ' ;\n' dduffy @ mis - world . com ' ; ' blakey @ flash . net ' ; ' greg _ dupree @ bigfoot . com ' ;\n' michael . duran @ ps . net ' ; ' g - durham @ ti . coin ' ; ' crma @ flash . net ' ;\n' travisdye @ home . com ' ; ' earnshaw @ flash . net ' ; ' mechols @ fastlane . net ' ;\n' jason . eggl @ indsys . ge . com ' ; ' reicher @ tell . net ' ; ' eiland @ ti . com ' ;\n' tome @ gwmail . plano . gov ' ; ' s _ elliott @ hotmail . com ' ; ' lellis @ ch 2 m . com ' ;\n' tedcarles @ earthlink . net ' ; ' stephen . elmendorf @ teradyne . com ' ;\n' bembrey @ ccgmail . com ' ; ' rempey @ waymark . net ' ; ' mengels @ airmail . net ' ;\n' mentrop @ yahoo . com ' ; ' jepps @ intecom . com ' ; ' donerb @ home . com ' ;\n' lucy _ vsi @ ix . netcom . com ' ; ' mike @ estesfinancial . com ' ; ' setch @ onebox . com ' ;\n' kathyeudy @ yahoo . com ' ; ' pevers @ home . com ' ; ' kewing @ airmail . net ' ;\n' deon . b . fair @ ac . com ' ; ' lisalynn 98 @ hotmail . com ' ; ' drjuiceplus @ home . com ' ;\n' sfaseler @ lg . com ' ; ' rfeldman @ ascend . com ' ; ' j . felkner @ worldnet . att . net ' ;\n' jferguso @ mony . com ' ; ' roger . ferguson @ fluor . com ' ; ' jtferrarol @ home . com ' ;\n' tfiedler @ flash . net ' ; ' ififfick @ hharchitects . com ' ;\n' davidfinley 82 @ yahoo . com ' ; ' duke . fisher @ wcom . com ' ;\n' j _ fishero @ yahoo . com ' ; ' dfitzgerald @ mesquiteisd . org ' ; ' lpfitz @ wt . net ' ;\n' 102372 . 2423 @ compuserve . com ' ; ' fleck @ concentric . net ' ;\n' jannet @ dallas . net ' ; ' fleitman @ msn . com ' ; ' samf @ dallas . net ' ;\n' rjflorio @ worldnet . att . net ' ; ' gulfview @ gateway . net ' ;\n' d - forbes @ rtis . ray . com ' ; ' bgfort @ earthlink . net ' ; ' clfoster @ airmail . net ' ;\n' r . foster @ prelude . com ' ; ' gfoyt @ hdrinc . com ' ; ' sfrancis @ everdream . com ' ;\n' halgodal @ flash . net ' ; ' hedgehogracing @ msn . com ' ;\n' steve . french @ aggies . org ' ; ' jfreytag @ airmail . net ' ; ' blakef @ msn . com ' ;\n' michael . froman @ octel . com ' ; ' afruhling @ metasolv . com ' ;\n' fuentes @ noval . net ' ; ' hiroko @ rsn . hp . com ' ; ' fulkfamily @ home . com ' ;\n' ron . fuqua @ usa . alcatel . com ' ; ' debra . galarde @ eds . com ' ;\n' txhoss @ ix . netcom . com ' ; ' jared . galloway @ fnc . fujitsu . com ' ;\n' aubree . garrett @ fnc . fujitsu . com ' ; ' toniandmikeg @ home . com ' ;\n' cwgary @ ont . com ' ; ' 2 ags @ flash . net ' ; ' sgaster @ kpmg . com ' ;\n' zgoner @ airmail . net ' ; ' dgedeon @ vectrix . com ' ;\n' tara . gedeon @ brannforbes . com ' ; ' jcjones @ rsn . hp . com ' ;\n' tageo @ mindspring . com ' ; ' tgeorge @ flash . net ' ; ' teresagill @ email . com ' ;\n' rglover @ halff . com ' ; ' dfglynnl @ msn . com ' ; ' mgolaboff @ eqrworld . com ' ;\n' judie _ good @ yahoo . com ' ; ' gorski @ aggies . com ' ; ' algough @ yahoo . com ' ;\n' neilgould @ usa . net ' ; ' sallsgraham @ hotmail . com ' ; ' pgranier @ portal . com ' ;\n' begrant @ flash . net ' ; ' rgrantham @ worldnet . att . net ' ; ' tgravett @ wans . net ' ;\n' chris _ greer @ hp . com ' ; ' hgreer @ alldata . net ' ; ' chrisg @ micrografx . com ' ;\n' donindfw @ ix . netcom . com ' ; ' dan @ productcentre . com ' ;\n' jgroce @ lasercomm - inc . com ' ; ' juggernaut @ connect . net ' ;\n' katie _ gruebel @ hotmail . com ' ; ' amynurse @ hotmail . com ' ; ' bag 2 @ airmail . net ' ;\n' kenneth _ guest @ hp . com ' ; ' jgump @ mail . arco . com ' ; ' wylie . gunter @ eds . com ' ;\n' tim . gutschlag @ fnc . fujitsu . com ' ; ' guzmans @ home . com ' ;\n' cherihaby @ home . com ' ; ' julie _ halloran @ yahoo . com ' ;\n' chaltom @ conedrive . textron . com ' ; ' hamelb 21 @ ont . com ' ;\n' talana 99 @ hotmail . com ' ; ' greg . hanks @ hanksbrokerage . com ' ;\n' rharbin @ aris . com ' ; ' carrie . l . hardy @ fritolay . com ' ;\n' scott _ harkins @ msn . com ' ; ' jharper @ flash . net ' ;\n' jharrington @ sagetelecom . net ' ; ' roynteri @ mail . com ' ;\n' steveharrod @ msn . com ' ; ' hartfield @ ti . com ' ;\n' terry . k . hartzog @ us . arthurandersen . com ' ; ' kharvey @ pcrrent . com ' ;\n' marji . j . harvey @ mail . sprint . com ' ; ' b - haskettl @ ti . com ' ;\n' kelly _ hayes @ harwoodmarketing . com ' ; ' mhaye @ amkor . com ' ;\n' alanh @ alliancearch . com ' ; ' mheath @ nextlink . com ' ; ' mheffner @ home . com ' ;\n' jets @ ti . com ' ; ' glenn @ hc - cpa . com ' ; ' toddmel @ texoma . net ' ;\n' kimberly . henderson @ ey . com ' ; ' dah 85 @ mindspring . com ' ;\n' shenley @ flash . net ' ; ' rahennessy @ earthlink . com ' ; ' jherblin @ onramp . net ' ;\n' carynlynn @ msn . com ' ; ' nascar @ mikeh . net ' ; ' travis @ herringangus . com ' ;\n' anandted @ msn . com ' ; ' dherron @ pisd . edu ' ; ' mitchherzog @ yahoo . com ' ;\n' sc _ hester @ hotmail . com ' ; ' jheye @ psp . com ' ; ' mhickox @ fiskrob . com ' ;\n' lori @ efficient . com ' ; ' phinojos @ micro . honeywell . com ' ;\n' d . hirt @ dialogic . com ' ; ' danetami @ airmail . net ' ; ' randyhobert @ msn . com ' ;\n' blakekimhodge @ yahoo . com ' ; ' will @ . com ' ;\n' choldrid @ airmail . net ' ; ' jnh @ ti . com ' ; ' tholman @ gte . net ' ;\n' sholmeso 0 @ msn . com ' ; ' jholstea @ jpi . com ' ; ' sholton @ ticnet . com ' ;\n' holyoak @ flash . net ' ; ' phorton @ usa . alcatel . com ' ; ' scott @ horton . net ' ;\n' thowes @ mail . arco . com ' ; ' chad @ tice . com ' ; ' hugghins @ gte . net ' ;\n' jhummel @ memc . com ' ; ' markhunt @ bigfoot . com ' ; ' thehurd @ hex . net ' ;\n' b - hutcheson @ ti . com ' ; ' j . r . iacoponelli @ mciworld . com ' ;\n' billirish @ hotmail . com ' ; ' czjkjj @ msn . com ' ;\n' pat . jackson @ fnc . fujitsu . com ' ; ' sjackson @ opsos . net ' ; ' ararat @ flash . net ' ;\n' stevejames @ home . com ' ; ' chellejanow @ hotmail . com ' ;\n' asmith _ scuba @ yahoo . com ' ; ' bjehu @ yahoo . com ' ;\n' ashlea _ jenkins @ hotmail . com ' ; ' cjenson @ flash . net ' ; ' mljideas @ home . com ' ;\n' slj @ waymark . net ' ; ' rjolly _ 1 @ yahoo . com ' ; ' bsjones 50 @ hotmail . com ' ;\n' craig - charlottejones @ worldnet . att . net ' ; ' danny @ lanyx . com ' ;\n' mattjones @ ccgmail . com ' ; ' wjones @ clearsail . net ' ;\n' sjordan 3 @ compuserve . com ' ; ' ryanjust @ hotmail . com ' ;\n' chip @ cscfinancial . com ' ; ' lkcbsl @ home . com ' ; ' makall 5 @ flash . net ' ;\n' twk @ msg . ti . com ' ; ' mkaplan @ augustmail . com ' ; ' ckarlik @ swbell . net ' ;\n' shafia 30 @ hotmail . com ' ; ' mlkawas @ hotmail . com ' ; ' chipk @ nortel . com ' ;\n' markkelley _ wurzburg @ yahoo . com ' ; ' mkelly 2575 @ juno . com ' ;\n' danken 8765 @ home . com ' ; ' wolfcamp @ hotmail . com ' ; ' mjkereluk @ msn . com ' ;\n' ckerley @ apclink . com ' ; ' lkerr @ evl . net ' ; ' r . kessel @ ssss . com ' ;\n' dkessler @ waymark . net ' ; ' mkessner @ hotmail . com ' ; ' troykey @ peoplepc . com ' ;\n' akilpatrick @ kurion . com ' ; ' kings 2 @ flash . net ' ; ' kingsr @ home . com ' ;\n' jkingston @ ti . com ' ; ' skirchner @ worldnet . att . net ' ;\n' chuck @ digitalpilot . com ' ; ' michael . kleppe @ ericsson . com ' ;\n' jklouda @ flash . net ' ; ' dennis _ kniery @ hp . com ' ; ' sschulz @ mail . smu . edu ' ;\n' lakohler @ raytheon . com ' ; ' james . kornegay @ eds . com ' ; ' knrkrause @ aol . com ' ;\n' kckuddes @ altavista . com ' ; ' sakula @ flash . net ' ; ' skutchin @ leaelliott . com ' ;\n' bladdusaw @ ti . com ' ; ' 103745 . 342 @ compuserve . com ' ; ' mellake @ yahoo . com ' ;\n' paul . lake @ ps . net ' ; ' slakie @ texas . net ' ; ' jplane @ gte . net ' ;\n' mlangloys @ aol . com ' ; ' rlanicek @ home . com ' ;\n' barrett . lankford @ painewebber . com ' ; ' mlara @ pisd . edu ' ; ' gsl @ msn . com ' ;\n' mikepl @ bnr . ca ' ; ' klavergne @ earthling . net ' ;\n' winner @ sportsstandings . com ' ; ' mlecrone @ aol . com ' ; ' banglee @ ti . com ' ;\n' coyote 97 @ swbell . net ' ; ' robertlee @ poboxes . com ' ;\n' j . lemmons @ worldnet . att . net ' ; ' lesliel @ airmail . net ' ; ' lerich @ flash . net ' ;\n' rlessmann @ home . com ' ; ' elethe @ gte . net ' ; ' mikelew @ nortelnetworks . com ' ;\n' lewisr 691 @ home . com ' ; ' laliefer @ aol . com ' ; ' hkl 5320 @ dcccd . edu ' ;\n' gmlz @ msg . ti . com ' ; ' blightsey @ systemdesk . com ' ;\n' 74464 . 2612 @ compuserve . com ' ; ' jlind 2402 @ aol . com ' ;\n' dlindstrom @ icidallas . com ' ; ' glinebaugh @ prodigy . net ' ;\n' eflinhoff @ aol . com ' ; ' the . lisewskys @ prodigy . net ' ;\n' mlish @ kennedywilson . com ' ; ' heidident @ aol . com ' ; ' katie 96 ag @ yahoo . com ' ;\n' john _ london @ acs - inc . com ' ; ' ro 219 @ aol . com ' ; ' balott @ aol . com ' ;\n' wadel @ swbell . net ' ; ' tglovell @ onramp . net ' ; ' tlovell @ ticnet . com ' ;\n' rmlowry 4 @ yahoo . com ' ; ' mploya @ ti . com ' ; ' aggie 97 @ hotmail . com ' ;\n' jlugo @ rhaaia . com ' ; ' klukshin @ kpmg . com ' ; ' dluna @ raltron . com ' ;\n' ped @ nortel . ca ' ; ' clyons @ metasolv . com ' ; ' paulandkarin @ msn . com ' ;\n' rlyttons @ aol . com ' ; ' emaas 94 @ yahoo . com ' ; ' spam . bait @ worldnet . att . net ' ;\n' neardal @ airmail . net ' ; ' mmachesney @ aol . com ' ; ' netaces @ airmail . net ' ;\n' richard . maddox @ mci . com ' ; ' betty . magee @ homesbybetty . com ' ;\n' jmagrude @ jpi . com ' ; ' pxm @ msg . ti . com ' ; ' tracemajor @ hotmail . com ' ;\n' mmalakoff @ aol . com ' ; ' judy . j . manning @ fritolay . com ' ;\n' norris @ mantooth . com ' ; ' marchand _ darryl @ msn . com ' ; ' nrm 2000 @ hotmail . com ' ;\n' mike . marino @ usoncology . com ' ; ' branonmarsh @ hotmail . com ' ;\n' rmartin @ coserv . net ' ; ' dmason @ highpointtravel . com ' ; ' seanab @ gte . net ' ;\n' debm 394 @ aol . com ' ; ' mathews - amy @ yahoo . com ' ; ' ags 84 @ aol . com ' ;\n' equestlnm @ excite . com ' ; ' mjmattson @ home . com ' ; ' bmatulal @ airmail . net ' ;\n' ilvjesus @ flash . net ' ; ' kmay 4001 @ aol . com ' ; ' cmayber @ pisd . edu ' ;\n' jasonmayes @ earthlink . net ' ; ' jimbobq 88 @ aol . com ' ; ' mccaff @ anet - dfw . com ' ;\n' bmccainl 62 @ aol . com ' ; ' almac @ wans . net ' ; ' mike . mcdonald @ ey . com ' ;\n' dhm @ mcdowelllabel . com ' ; ' tmcevoy @ wordware . com ' ;\n' trisheeey @ hotmail . com ' ; ' bmcgrego @ metrogroup . com ' ; ' rmckee @ ti . com ' ;\n' jim _ mcmahan @ ctxmort . com ' ; ' bmcmillan @ motion - dynamics . com ' ;\n' pmeggs @ aol . com ' ; ' mendezn @ nortelnetworks . com ' ; ' jenabug @ flash . net ' ;\n' m _ mentzer @ hotmail . com ' ; ' sandymergen @ hotmail . com ' ;\n' smerrill @ flash . net ' ; ' tiffany _ merrill @ yahoo . com ' ;\n' jmersiovsky @ metasolv . com ' ; ' emetting @ hntb . com ' ;\n' sue _ middleton @ juno . com ' ; ' jbm 326 @ aol . com ' ; ' barbmiller @ qualtx . com ' ;\n' michael _ c . _ miller @ ac . com ' ; ' miller @ dallas . net ' ;\n' hdjemills @ earthlink . net ' ; ' jmills @ dallas . net ' ;\n' dminaldi @ contactdallas . com ' ; ' rminney @ entercon . com ' ; ' mlm @ ti . com ' ;\n' jenmizar @ yahoo . com ' ; ' moonaggie @ cs . com ' ; ' jason @ aggies . org ' ;\n' pipkins @ gateway . net ' ; ' danny . morris @ mciworld . com ' ;\n' jcipolla @ hotmail . com ' ; ' cmorse @ waymark . net ' ; ' aggietx @ swbell . net ' ;\n' m _ muecke @ hotmail . com ' ; ' jeff . mundt @ wcom . com ' ; ' amurphy 96 @ hotmail . com ' ;\n' jmurphy 4 @ hotmail . com ' ; ' dannym @ churchrealty . com ' ; ' cmyers @ mycon . com ' ;\n' greg @ lsil . com ' ; ' jnlzaza @ earthlink . net ' ; ' erinsneedham @ hotmail . com ' ;\n' tpneeley @ worldnet . att . net ' ; ' jnelson @ source . com ' ;\n' jnerwich @ mindspring . com ' ; ' goonet @ hotmail . com ' ; ' rpnew @ aol . com ' ;\n' jeff . newton @ fritolay . com ' ; ' chrisgnichols @ yahoo . com ' ;\n' r . niedenfuehr @ worldnet . att . net ' ; ' nielsonc @ sprynet . com ' ;\n' rniesen @ ti . com ' ; ' jnobll @ jcpenney . com ' ; ' timcathy @ flash . net ' ;\n' merkicpa @ gte . net ' ; ' rnorris @ joefunkconstr . com ' ; ' aggiel @ airmail . net ' ;\n' cnorton @ brierley . com ' ; ' janicen @ architeriors . com ' ;\n' nnowik @ mhagroup . com ' ; ' toconnor @ varo . com ' ; ' melody . oliver @ eds . com ' ;\n' s - oliverl @ ti . com ' ; ' adrienneolsen @ hotmail . com ' ; ' roneal @ ins - inc . com ' ;\n' tfonofrio @ aol . com ' ; ' b - orem @ rtis . ray . com ' ; ' jetpilot @ sprintmail . com ' ;\n' orr @ caprock . net ' ; ' kwunsch @ ci . garland . tx . us ' ; ' jott @ rsn . hp . com ' ;\n' tamc 66 @ aol . com ' ; ' atm 97 @ aol . com ' ; ' powen 94 @ yahoo . com ' ;\n' yohanp @ netscape . net ' ; ' palitza @ att . net ' ; ' dpalmer @ pisd . edu ' ;\n' cparker @ garlandpower - light . org ' ; ' wanda . parker @ wjpenterprises . com ' ;\n' tamu 97 @ airmail . net ' ; ' jpatoskie @ home . com ' ;\n' judy . peacock @ worldnet . att . net ' ; ' david . a . pearl @ travelers . com ' ;\n' katie @ lifelinehomehealth . com ' ; ' ppedison @ aol . com ' ;\n' lpeichel @ nortelnetworks . com ' ; ' mpell @ uswebcks . com ' ; ' dannyp 83 @ gte . net ' ;\n' david _ perry @ 3 com . com ' ; ' picardl 999 @ hotmail . com ' ;\n' friscoattorney @ aol . com ' ; ' dphillips @ pfsoutsourcing . com ' ;\n' cpierce @ lee - eng . com ' ; ' kurtpifer @ hotmail . com ' ;\n' stephen _ pilcher @ yahoo . com ' ; ' wpindar 3 @ email . msn . com ' ;\n' pingenot @ gte . net ' ; ' pinzon @ nortel . com ' ; ' mwpiper @ onramp . net ' ;\n' dpitts @ acm . org ' ; ' ppjp @ airmail . net ' ; ' mplumer @ synhrgy . com ' ;\n' randy @ pogueinc . com ' ; ' jerrypoin @ home . com ' ;\n' tony . pollacia @ fritolay . com ' ; ' tammypon @ hmhs . com ' ;\n' kent @ webdelight . net ' ; ' cporter @ nortelnetworks . com ' ;\n' sporter @ texas . net ' ; ' porterfields @ prodigy . net ' ; ' texas _ anm @ yahoo . com ' ;\n' poteet @ dmans . com ' ; ' billpowello 4 @ home . com ' ; ' ammy 5 @ aol . com ' ;\n' joshp @ thisco . com ' ; ' marykpowl @ syscodallas . com ' ;\n' prater 2 @ earthlink . net ' ; ' dprattl @ home . com ' ; ' d - presley @ tamu . edu ' ;\n' musicgrl 68 @ aol . com ' ; ' pauld @ homemail . com ' ; ' kpruitt @ gasequipment . com ' ;\n' pprzada @ aol . com ' ; ' beckyp @ bmisystems . com ' ; ' impurdy @ 5 pillars . com ' ;\n' mrpyatt @ airmail . net ' ; ' jlqjr @ gte . net ' ; ' scradford @ aol . com ' ;\n' melissa _ ragan @ richards . com ' ; ' eric . ragle @ cisco - eagle . com ' ;\n' maheswaran _ rajasekharan @ i 2 . com ' ; ' kikiaggie @ webcombo . net ' ;\n' mramsey @ unitedad . com ' ; ' michael . rasmussen @ ps . net ' ; ' j - read @ tamu . edu ' ;\n' jlreadpa @ aol . com ' ; ' reasor @ rsn . hp . com ' ; ' reck @ gateway . net ' ;\n' cindy . redman @ eds . com ' ; ' dreed @ is . arco . com ' ; ' reedl 00 @ msn . com ' ;\n' tdreed @ airmail . net ' ; ' solutionhr @ aol . com ' ; ' jreeves @ agave . com ' ;\n' cremmele @ aol . com ' ; ' rrestivo @ eversoft . com ' ; ' erice 8 @ aol . com ' ;\n' sanrice @ aol . com ' ; ' ct _ richard @ hotmail . com ' ; ' mrichard @ arcmail . com ' ;\n' krichards @ acsdallas . com ' ; ' paula . g . richmond @ fritolay . com ' ;\n' jrickman @ hppclaw . com ' ; ' tlrigby @ home . com ' ; ' kcriggs @ yahoo . com ' ;\n' mrightm @ mail . arco . com ' ; ' jriha @ businessobjects . com ' ; ' rrinker @ wtd . net ' ;\n' rippees @ swbell . net ' ; ' rippel @ utdallas . edu ' ; ' writchie @ ci . irving . tx . us ' ;\n' bradyroberts @ hotmail . com ' ; ' laserbaker @ worldnet . att . net ' ;\n' frobert @ aol . com ' ; ' krisaggi @ aol . com ' ; ' ker @ ti . com ' ; ' roco @ nortel . com ' ;\n' kjroeker @ airmail . net ' ; ' jimroseo 3 @ home . com ' ;\n' suzanne _ ross @ campbellsoup . com ' ; ' jim _ rountree @ logiclsales . com ' ;\n' eddie . rueffer @ mci . com ' ; ' srupprecht @ chubb . com ' ; ' jennyr @ wtd . net ' ;\n' kimed @ hotmail . com ' ; ' jryan @ uswebcks . com ' ; ' emsalazar 25 @ hotmail . com ' ;\n' k - salazarl @ ti . com ' ; ' jlsales @ waymark . net ' ;\n' msanchez @ mckinneytexas . org ' ; ' steven . sarkissian @ painwebber . com ' ;\n' danna @ nortelnetworks . com ' ; ' tsawyers @ aol . com ' ; ' scheumack @ juno . com ' ;\n' dschmidt @ camozzi - usa . com ' ; ' pschmidt @ connect . net ' ; ' tammyms @ yahoo . com ' ;\n' nathan . schockmel @ usa . alcatel . com ' ; ' kschoenhals @ metasolv . com ' ;\n' schuelerjs @ aol . com ' ; ' diana _ p _ seal @ email . mobil . com ' ;\n' pkemper @ 3 dfx . com ' ; ' sherri . seeger @ wylieisd . net ' ; ' maseeley @ avaya . com ' ;\n' tseely @ attglobal . net ' ; ' rshackelford @ home . com ' ;\n' shannons @ websurfer . net ' ; ' jtshannon @ ticnet . com ' ;\n' loren . sharkey @ brinker . com ' ; ' rehan @ computer . org ' ; ' gryffynn @ aol . com ' ;\n' xosloren @ ti . com ' ; ' roger . shellenberger @ exscol . exch . eds . com ' ;\n' kshelton @ amfm . com ' ; ' samleannshields @ aol . com ' ; ' sbshin @ evl . net ' ;\n' alsikes @ pbsj . com ' ; ' glenn _ silva @ gmaccm . com ' ;\n' frank . silva @ industrialrisk . com ' ; ' simmonds @ marykay . com ' ;\n' atmrick @ aol . com ' ; ' isivin @ aol . com ' ; ' rskaggs @ hksinc . com ' ;\n' bskalberg @ aol . com ' ; ' todd @ nkn . net ' ; ' dsmart @ dttus . com ' ;\n' amy . l . smith @ eds . com ' ; ' egsmith @ home . com ' ;\n' john _ charles _ smith @ compuserve . com ' ; ' john - h - smith @ raytheon . com ' ;\n' ksmith @ kma - rjfs . com ' ; ' shanda @ wans . net ' ;\n' michael . smith @ usa . alcatel . com ' ; ' rjsmith @ minutemaid . com ' ;\n' rsmith @ metasolv . com ' ; ' dick _ smith @ pagenet . com ' ;\n' agent _ maroon @ hotmail . com ' ; ' enviropure @ home . com ' ; ' unclewil @ home . com ' ;\n' jsmitherman @ cinemark . com ' ; ' jim _ snow @ millipore . com ' ;\n' gpsparks @ hotmail . com ' ; ' tspo 92891 @ aol . com ' ; ' dspencer @ dbssystems . com ' ;\n' lspielel @ txu . com ' ; ' txagl 987 @ aol . com ' ; ' g - stanford @ raytheon . com ' ;\n' petgeoguru @ hotmail . com ' ; ' jstara @ arcmail . com ' ;\n' kgstavin @ garlandisd . net ' ; ' tbstebbins @ aol . com ' ; ' jsteck @ ti . com ' ;\n' steffler @ mindspring . com ' ; ' gsteglich @ home . com ' ; ' shane @ computer . org ' ;\n' sastephen @ home . com ' ; ' dereks @ us . ibm . com ' ; ' tsteudtner @ aol . com ' ;\n' jill . stevens @ risd . org ' ; ' jnelwyn @ aol . com ' ; ' dons @ gwmail . plano . gov ' ;\n' mstewart 70 @ aol . com ' ; ' pstewart 86 @ hotmail . com ' ;\n' rastewartl 2 @ hotmail . com ' ; ' msticken @ airmail . net ' ;\n' cstockmoe @ yahoo . com ' ; ' k - stokes @ tamu . edu ' ; ' michael _ stone @ nt . com ' ;\n' mcstrietzel @ home . com ' ; ' staceys @ omassociates . com ' ;\n' sstroth @ glitsch . com ' ; ' h - r . strozewski @ worldnet . att . net ' ;\n' astryker @ swbell . net ' ; ' macecs @ hotmail . com ' ; ' smsturgeon @ kpmg . com ' ;\n' sullivan 22 @ home . com ' ; ' normas @ airmail . net ' ; ' wswanson @ cyberramp . net ' ;\n' rtank 20 @ aol . com ' ; ' matt _ tanner @ txu . com ' ; ' ftargac @ hotmail . com ' ;\n' taylorgr @ nortel . com ' ; ' taylorl @ airmail . net ' ; ' aggierob @ hotmail . com ' ;\n' teresa . taylor @ st . com ' ; ' ticaw @ hotmail . com ' ; ' wst @ flash . net ' ;\n' caceett @ hotmail . com ' ; ' punt 3442 @ aol . com ' ; ' chris . t @ prodigy . net ' ;\n' denise . thatcher @ eds . com ' ; ' mjthed @ earthlink . net ' ;\n' brandon . theis @ eds . com ' ; ' steve _ thelen @ cushwake . com ' ;\n' arthur . thomas @ ace - ina . com ' ; ' tthomas @ cooperinst . org ' ;\n' dthomps 2 @ pisd . edu ' ; ' nthompson @ swst . com ' ; ' psthompson @ mindspring . com ' ;\n' rthompso @ kofax . com ' ; ' tierney _ thompson @ winston - school . org ' ;\n' b - tinker @ ti . com ' ; ' tipp @ airmail . net ' ; ' atokarz @ usa . alcatel . com ' ;\n' bevtoney @ aol . com ' ; ' kstowery @ mindspring . com ' ;\n' patrick . traubert @ tripointglobal . com ' ; ' heidigigem 96 @ yahoo . com ' ;\n' tiffanytrox @ yahoo . com ' ; ' dddtruitt @ juno . com ' ;\n' tschetter @ worldnet . att . net ' ; ' 9 mtucker @ home . com ' ;\n' oxymomloree @ aol . com ' ; ' cturner @ entest . net ' ; ' aisdal @ aol . com ' ;\n' rachturney @ yahoo . com ' ; ' gulteig @ starrunner . net ' ; ' gutay @ airmail . net ' ;\n' hutay @ yahoo . com ' ; ' valls @ earthlink . net ' ; ' hvanpelt @ msn . net ' ;\n' dwv @ vanderburg . org ' ; ' timv @ cheerful . com ' ; ' r - cvaughn @ juno . com ' ;\n' annette . vela @ homecomings . com ' ; ' jvetkoetter @ pipeline . com ' ;\n' diane _ vetter @ hotmail . com ' ; ' vicem @ hdvest . com ' ; ' jennifer @ vilches . org ' ;\n' pvilches @ home . com ' ; ' spvill @ flash . net ' ; ' ssv @ attglobal . net ' ;\n' kristi . l . vitek @ fritolay . com ' ; ' voltin @ airmail . net ' ; ' wagso 0 @ yahoo . com ' ;\n' walessc @ nortelnetworks . com ' ; ' bwalker @ fmtinv . com ' ;\n' brian . walker @ exchange - point . com ' ; ' deanwalker @ computer . org ' ;\n' ken . walker @ mscsoftware . com ' ; ' shannon . wallace @ usa . net ' ;\n' b _ wallace @ prodigy . net ' ; ' wwallenl @ airmail . net ' ; ' mkwalle @ yahoo . com ' ;\n' twaller @ excite . com ' ; ' drwaller @ hotmail . com ' ;\n' maxwalters @ worldnet . att . net ' ; ' kwalzel @ cisco . com ' ;\n' julie . warden @ mhmr . state . tx . us ' ; ' warner @ ont . com ' ; ' watersco @ flash . net ' ;\n' julie . watkins @ eds . com ' ; ' apwo 397 @ juno . com ' ; ' patricia . watsono 2 @ ey . com ' ;\n' jwebb @ dalsemi . com ' ; ' jkwebb 41 @ gateway . net ' ; ' debbiew @ mciworld . com ' ;\n' robin - w @ juno . com ' ; ' sally _ welch @ excite . com ' ;\n' twelch @ nortelnetworks . com ' ; ' awaller @ csc . com ' ;\n' gregwemhoener @ home . com ' ; ' susanwempe @ hotmail . com ' ; ' jwest 78 @ aol . com ' ;\n' mike . west @ usa . alcatel . com ' ; ' joannwest @ earthlink . net ' ;\n' mweynand @ flash . net ' ; ' weynandken @ johndeere . com ' ; ' mweynand @ flash . net ' ;\n' mmw @ airmail . net ' ; ' ewheal @ jcpenney . com ' ; ' swhite @ tx . pathnet . net ' ;\n' txag 93 sw @ flash . net ' ; ' chris @ iex . com ' ; ' wiegard @ nortel . com ' ;\n' cindyw @ pobox . com ' ; ' jbouldin @ teleteam . com ' ; ' mike @ paragon - tx . com ' ;\n' rtwilkinsn @ aol . com ' ; ' jerriw @ arn . net ' ; ' joeaggie 93 @ msn . com ' ;\n' kristilw @ swbell . net ' ; ' a 50 @ flash . net ' ; ' rkwbdw 580 @ cs . com ' ;\n' kswccw @ swbell . net ' ; ' designpath @ sprynet . com ' ; ' drw 58 ag @ aol . com ' ;\n' wilsonaggies @ home . com ' ; ' normabautista @ worldnet . att . net ' ;\n' skisheri @ aol . com ' ; ' emajo . wilson @ gte . net ' ; ' jenkonquin @ aol . com ' ;\n' wvicw @ aol . com ' ; ' teresa . wood @ st . com ' ; ' lwood 963 @ flash . net ' ;\n' tcwoolley @ writeme . com ' ; ' sworsham @ supermovers . com ' ;\n' brad _ worth @ csicontrols . com ' ; ' wrightson . family @ gte . net ' ;\n' dwu @ tqtx . com ' ; ' dlwylie @ swbell . net ' ; ' christa . yakel @ sap - ag . de ' ;\n' yarbrough _ james @ hotmail . com ' ; ' suzan @ guyyork . com ' ;\n' karen _ znoj @ merck . com '\nsubject : \" red , white and blue out \"\nsubject : the osu game and aggie spirit\nthis just in ags ! if you are going to the osu game on sept 22 , a red , white\n& blue out is being planned , just like the maroon out games for the osu\ngame .\nags , what better statement can we aggies make , than to celebrate the love\nand support for our country ' s freedom , and our patriotic nature , than this\nway :\nimagine . . . the fightin ' texas aggie band playing \" the star spangled banner , \"\nplaying military drills as they walk around the stadium , and we celebrate\nour love for our country , and our support for all the heroes , alive and\ndeceased . color assignments are as follows :\n3 rd deck : red\n2 nd deck : white lst deck : blue\npass the word on . . . . we have 1 1 / 2 weeks ! !\nthe spirit of america , and the aggie spirit is still alive . god bless\namerica , the free nation .\npass it on .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.350+0000", "entityId": 4975, "properties": {"text": "Subject: re : under attack\nif you don ' t have powerpoint installed , go to\nhttp : / / office . microsoft . com / downloads / 2000 / ppview 97 . aspx and download the\npowerpoint viewer .\nthen you should be able to view the link at\nagain , if you are squeemish . . . don ' t bother looking at the slides . it shows\npeople falling from the wtc .\n- ram .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm ? or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? ? t o p i c a - - register now to manage your mail ! ? http : / / www . topica . com / partner / tago 2 / register ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.355+0000", "entityId": 4976, "properties": {"text": "Subject: brcc women ' s ministry meeting pictures - 09 - 17 - 2001\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? t o p i c a - - register now to manage your mail ! http : / / www . topica . com / partner / tago 2 / register = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.359+0000", "entityId": 4977, "properties": {"text": "Subject: playgroup pictures - old mcdonald ' s farm\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? t o p i c a - - register now to manage your mail ! http : / / www . topica . com / partner / tago 2 / register = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.364+0000", "entityId": 4978, "properties": {"text": "Subject: fw : intrastate gas\nstacy ,\ncould we add the following phrase ( as shown below in red ) to the exxon katy location ? this is to reassure our customers that the delivery is in fact intrastate . please let me know if this is possible to do and if we have your approval .\nexxonkaty\nthe transaction is for delivery of intrastate gas at the tailgate of the exxon katy plant . notwithstanding anything to the contrary in the general terms and conditions , if applicable , this transaction is between counterparty and enron north america corp .\nthanks ,\nmelba lozano\n713 - 345 - 8986\n713 - 646 - 8511 fax\n713 - 698 - 4847 pager\n- - - - - original message - - - - -\nfrom : lees , lisa\nsent : monday , september 17 , 2001 1 : 11 pm\nto : lauer , kara\ncc : meredith , kevin ; lozano , melba ; walker , chris\nsubject : re : intrastate gas\nkara ,\nthe product development team will check with legal on this and we ' ll get back with you .\nthanks . lisa\n- - - - - original message - - - - -\nfrom : lauer , kara\nsent : monday , september 17 , 2001 9 : 38 am\nto : lees , lisa\nsubject : fw : intrastate gas\nlisa ,\nwhat is involved in changing a product description to include this phrase ? i do have some customers in texas that are legally bound to only trade intrastate gas and they are fearful of trading anything that doesn ' t specifically state that .\nsince it is probably only a handful of customers , if it is a major production , it may not be worth it , but i wanted to check .\nthanks .\nkara\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , september 17 , 2001 9 : 31 am\nto : lauer , kara\nsubject : re : intrastate gas\nthat will be fine . most people know that the gas in this area is intrastate . but , if someone wants to see that in the description , we can add it .\nd\n- - - - - original message - - - - -\nfrom : lauer , kara\nsent : monday , september 17 , 2001 9 : 18 am\nto : farmer , daren j .\nsubject : intrastate gas\nhi daren ,\nbryan hull gave me your name . a customer was interested in trading intrastate gas and bryan had informed me that our exxon - katy location is intrastate . i was wondering if you would be interested in changing the long description on eol for this location to include the phrase intrastate gas so that any customers that are interested would be able to see that . if this is okay with you , i will forward it on to our product development team .\nthanks .\nkara\nkara boudreau lauer\nenrononline marketing\n713 / 853 - 0570\nkara . lauer @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.369+0000", "entityId": 4979, "properties": {"text": "Subject: intrastate gas\nhi daren ,\nbryan hull gave me your name . a customer was interested in trading intrastate gas and bryan had informed me that our exxon - katy location is intrastate . i was wondering if you would be interested in changing the long description on eol for this location to include the phrase intrastate gas so that any customers that are interested would be able to see that . if this is okay with you , i will forward it on to our product development team .\nthanks .\nkara\nkara boudreau lauer\nenrononline marketing\n713 / 853 - 0570\nkara . lauer @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.374+0000", "entityId": 4980, "properties": {"text": "Subject: fw : [ fwd : ]\nhow true - isn ' t it amazing and wonderful to see prayers in public -\ncongress on the capitol steps . it would be interesting to know when this\noriginal prayer was given - i can not imagine people walking out of prayers\nat this point in time . . .\nregards ,\namy brock\nhbd marketing team\noffice : 281 - 988 - 2157\ncell : 713 - 702 - 6815\n- - - - - original message - - - - -\nfrom : suzanne young [ smtp : syoung _ piedmont @ yahoo . com ]\nsent : monday , september 17 , 2001 8 : 50 pm\nto : andrea ; janet bilyeu ; amy brock ; heather cottom ; crites ; christi\ndegeare ; beverly edwards ; misty floyd ; leah haynes ; michele huneke ; john ;\nleslie ; vicki moyer ; kim pope ; kerri williams\nsubject : fwd : [ fwd : ]\nnote : forwarded message attached .\nterrorist attacks on u . s . - how can you help ?\ndonate cash , emergency relief information\nhttp : / / dailynews . yahoo . com / fc / us / emergency _ information / >\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm ? or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? ? t o p i c a - - register now to manage your mail ! ? http : / / www . topica . com / partner / tago 2 / register ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nmessage - id :\nfrom : michele huneke\nto : diane gouveia , sean kelly smith , pam wiidanen , suzanne young\nsubject : fwd : [ fwd : ]\ndate : mon , 17 sep 2001 08 : 12 : 51 - 0500\nmime - version : 1 . 0\nx - mailer : internet mail service ( 5 . 5 . 2653 . 19 )\ncontent - type : text / plain\nsubject : amen\na little something to make us think about the impact\nwe might make on our world if only we would be willing\nto try !\nopening prayer - - kansas state senate\nthought you might enjoy this interesting prayer given\nin kansas at the opening session of their senate . it\nseems prayer still upsets some people .\nwhen minister joe wright was asked to open the new\nsession of the kansas senate , everyone was expecting\nthe usual generalities , but this is what they heard :\nsubject : amen\na little something to make us think about the impact\nwe might make on our world if only we would be willing\nto try !\nopening prayer - - kansas state senate\nthought you might enjoy this interesting prayer given\nin kansas at the opening session of their senate . it\nseems prayer still upsets some people .\nwhen minister joe wright was asked to open the new\nsession of the kansas senate , everyone was expecting\nthe usual generalities , but this is what they heard :\n\" heavenly father , we come before you today to ask\nyour forgiveness and to seek your direction and\nguidance .\nwe know your word says , \" woe to those who call evil\ngood \" , but that is exactly what we have done .\nwe have lost our spiritual equilibrium and reversed\nour values . we confess that .\nwe have ridiculed the absolute truth of your word and\ncalled it pluralism .\nwe have exploited the poor and called it the lottery ,\nwe have rewarded laziness and called it welfare ,\nwe have killed our unborn and called it choice ,\nwe have shot abortionists and called it justifiable ,\nwe have neglected to discipline our children and\ncalled it building self - esteem ,\nwe have abused power and called it politics ,\nwe have coveted our neighbor ' s possessions and called\nit ambition ,\nwe have polluted the air with profanity and\npornography and called it freedom of statement ,\nwe have ridiculed the time - honored values of our\nforefathers and called it enlightenment .\nsearch us , oh , god , and know our hearts today ; cleanse\nus from every sin and set us free . guide and bless\nthese men and women who have been sent to direct us to\nthe center of your will and to openly ask these things\nin the name of your son , the living savior , jesus\nchrist . \" amen . ! ! \"\nthe response was immediate . a number of legislators\nwalked out during the prayer in protest . in 6 short\nweeks , central christian church , where rev . wright is\npastor , logged more than 5 , 000 phone calls with only\n47 of those calls responding negatively . the church\nis now receiving international requests for copies of\nthis prayer from india , africa , and korea .\ncommentator paul harvey aired this prayer on his radio\nprogram , \" the rest of the story \" , and received a\nlarger response to this program than any other he has\never aired . with the lord ' s help , may this prayer\nsweep over our nation and wholeheartedly become our\ndesire so that we again can be called , \" one nation\nunder god . \" if possible , please pass this prayer on\nto your friends . think about this : if you forward\nthis prayer to everyone on your email list in less\nthan 30 days it would be heard by the world .\nterrorist attacks on u . s . - how can you help ?\ndonate cash , emergency relief information\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.380+0000", "entityId": 4981, "properties": {"text": "Subject: natural gas\nour ceo was contacted by a david gardner , president of gardner energy in\nhouston regarding a five - year package of gas . i spoke to him only briefly\nbut did not get a good feeling about him or his deal . do you know of this\nfirm ? i was unable to pull up anything on the internet . i suspect he ' s\njust a marketer .\ndon ' t spend any time on this . i was just curious as to whether or not you\nknow of him or his firm . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.385+0000", "entityId": 4982, "properties": {"text": "Subject: fw : intrastate gas\nfyi : from legal\n- - - - - original message - - - - -\nfrom : dickson , stacy e .\nsent : tuesday , september 18 , 2001 10 : 35 am\nto : lozano , melba\nsubject : re : intrastate gas\nmelba ,\nthis is actually a complicated issue . i am not sure that we can add that language . i need to talk to jeff hodge and gerald nemec about this issue . i will let you know what we figure out .\nstacy\n- - - - - original message - - - - -\nfrom : lozano , melba\nsent : tuesday , september 18 , 2001 9 : 41 am\nto : dickson , stacy e .\nsubject : re : intrastate gas\nstacy ,\njeff has not responded to this .\nthanks ,\nml\n- - - - - original message - - - - -\nfrom : dickson , stacy e .\nsent : tuesday , september 18 , 2001 9 : 16 am\nto : lozano , melba\nsubject : re : intrastate gas\nmelba ,\nhas jeff responded to this ?\nstacy\n- - - - - original message - - - - -\nfrom : lozano , melba\nsent : monday , september 17 , 2001 1 : 25 pm\nto : dickson , stacy e . ; hodge , jeffrey t .\ncc : lees , lisa ; walker , chris ; meredith , kevin ; farmer , daren j . ; lauer , kara\nsubject : fw : intrastate gas\nimportance : high\nstacy ,\ncould we add the following phrase ( as shown below in red ) to the exxon katy location ? this is to reassure our customers that the delivery is in fact intrastate . please let me know if this is possible to do and if we have your approval .\nexxonkaty\nthe transaction is for delivery of intrastate gas at the tailgate of the exxon katy plant . notwithstanding anything to the contrary in the general terms and conditions , if applicable , this transaction is between counterparty and enron north america corp .\nthanks ,\nmelba lozano\n713 - 345 - 8986\n713 - 646 - 8511 fax\n713 - 698 - 4847 pager\n- - - - - original message - - - - -\nfrom : lees , lisa\nsent : monday , september 17 , 2001 1 : 11 pm\nto : lauer , kara\ncc : meredith , kevin ; lozano , melba ; walker , chris\nsubject : re : intrastate gas\nkara ,\nthe product development team will check with legal on this and we ' ll get back with you .\nthanks . lisa\n- - - - - original message - - - - -\nfrom : lauer , kara\nsent : monday , september 17 , 2001 9 : 38 am\nto : lees , lisa\nsubject : fw : intrastate gas\nlisa ,\nwhat is involved in changing a product description to include this phrase ? i do have some customers in texas that are legally bound to only trade intrastate gas and they are fearful of trading anything that doesn ' t specifically state that .\nsince it is probably only a handful of customers , if it is a major production , it may not be worth it , but i wanted to check .\nthanks .\nkara\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , september 17 , 2001 9 : 31 am\nto : lauer , kara\nsubject : re : intrastate gas\nthat will be fine . most people know that the gas in this area is intrastate . but , if someone wants to see that in the description , we can add it .\nd\n- - - - - original message - - - - -\nfrom : lauer , kara\nsent : monday , september 17 , 2001 9 : 18 am\nto : farmer , daren j .\nsubject : intrastate gas\nhi daren ,\nbryan hull gave me your name . a customer was interested in trading intrastate gas and bryan had informed me that our exxon - katy location is intrastate . i was wondering if you would be interested in changing the long description on eol for this location to include the phrase intrastate gas so that any customers that are interested would be able to see that . if this is okay with you , i will forward it on to our product development team .\nthanks .\nkara\nkara boudreau lauer\nenrononline marketing\n713 / 853 - 0570\nkara . lauer @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.389+0000", "entityId": 4983, "properties": {"text": "Subject: > - september cellular\nthe following expense report is ready for approval :\nemployee name : michael t . olsen\nstatus last changed by : automated administrator\nexpense report name : september cellular\nreport total : $ 213 . 12\namount due employee : $ 213 . 12\nto approve this expense report , click on the following link for concur expense .\nhttp : / / expensexms . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.394+0000", "entityId": 4984, "properties": {"text": "Subject: cleburne ua 4 11 / 00\ndarren :\ni am working with jim pond to clean up the ua 4 that has been booked to cleburne since the beginning of the deal . we are starting with november 2000 . gas accounting has booked 21 , 309 mmbtu as ua 4 for november , which is related to deal 502861 on the texas desk . it looks like we took some of the gas we purchased from williams ( deal 384237 ) on the cleburne desk and moved it to ena ' s transport contract with deal 502861 . the print screen below shows the deal from zone transport to ena - texas . i think we need a deal from cleburne to zone transport to complete to deal path and clean up the ua 4 . can you review the deals for november and let me know what you think ? jim says there is ua 4 every month of this deal and this may be the reason . i will have to check each month .\nthanks ,\nmegan\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.399+0000", "entityId": 4985, "properties": {"text": "Subject: falcon / lone star transport\ndarren ,\ni joined brian redmond on his visit a few weeks ago to sid richardson . during that visit sr indicated that they have firm lone star transport that they want to sell ( only details i know at this time is that it is 45 mm / d point to point on a true firm basis ) . i believe we could use this transport to back stop the falcon transaction ( parking gas in their facility oct / nov 01 - jan 04 ) . i spoke with the folks at sr today and indicated that we want to know more details about the sale to see if we could garner interest internally . they gave me the name of a person in their shop who would be right person to talk to about the details . i understand you would be the right person to a ) . bounce this idea off of and b ) . if there is an interest on this transport i presume you would be the best person to get the details on this transport from sr .\nthe name of the person to talk to at sr is scott walker ( 817 . 810 . 9385 ) .\ni ' d like to touch base with about this .\nthanks\nmiguel e . vasquez\nmanager - - enron storage products\n1400 smith street\nhouston , tx 77002\n713 . 853 . 3910\nfax : 713 . 646 . 8416", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.404+0000", "entityId": 4986, "properties": {"text": "Subject: tenaska iv 7 / 01\ndarren :\nplease change the demand fee on deal 384258 for july 2001 from $ 3 , 902 , 687 . 50 to $ 3 , 878 , 621 . 27 . we received the txu statement for july and our expenses went down . also , please change the volume on deal 514353 from 45 , 000 to 47 , 901 . the plant took 1 , 484 , 933 mmbtu in july .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.408+0000", "entityId": 4987, "properties": {"text": "Subject: texas market analysis\nteam :\ni have asked troy denetsosie to be responsible for compiling and updating a detailed supply , market and infrastructure analysis of texas . this information will support both our origination and trading activities and we will use a lot of the format ( website and other ) developed by the other regions . spcifically , troy will offload a lot the analysis work that jd is currently doing on the market side and he will work closely with bryan hull to support the more immediate needs of the traders .\nthe deliverables from troy will be : ( 1 ) a texas section on the gas fundamentals webpage modeled after the central region , ( 2 ) a daily report on gas flows , deals , basis positons , etc . , ( 3 ) a detailed infrastructure analysis ( maps , flows , etc ) that will support the development of our supply / market hub positions . please give him your support .\nregards ,\nbrian\n- - - - - original message - - - - -\nfrom : bryan , gary\nsent : friday , september 21 , 2001 10 : 42 am\nto : redmond , brian\nsubject : fw : crm database\nas you know , much of jd , mark and my time to date has been geared around finding what companies , customers , phone numbers and past business that we may have done with the customers we started with and move forward from that starting point . in the few short weeks we have addressed , uncovered and started down the road to what i hope to be a very profitable 2001 - 2002 .\nthe crm database should be a great tool for those that follow . it appears that the originators would log in calls , meetings and any other business that gets discussed with the customer . this would have been a great tool for our group to have had in starting from ground zero .\nthere still appears to be some developmental issues around this program . in the meantime , we are using a number of spreadsheets to keep up with our business . should the crm database not be approved or delayed , we have decided to populate the act 2000 ! database . this is currently supported by enron but is not as user friendly as the crm would be . the cost for act 2000 ! is relatively free !\nif you have any questions , please let me know .\n- - - - - original message - - - - -\nfrom : buss , jd\nsent : friday , september 21 , 2001 9 : 14 am\nto : bryan , gary ; knippa , mark ; redmond , brian\nsubject : crm database\non thursday of this past week i went to a meeting regarding the crm database which is designed by siebel for the purpose of handling customer information .\nthe crm database has only been implemented with trading / origination groups within enron and provides the following capabilities :\n1 . account & contact management\n2 . activity tracking & planning\n3 . potential deal management\n4 . outlook synchronization\n5 . remote connectivity / synchronization\n6 . e - mail from siebel and records activity\nthe current enron groups that use this system are the enron industrial markets that was implemented in may 2001 and the freight markets that was implemented in august 2001 . the following is a list of how these groups have been utilizing the system :\nindustrial mkts freight mkts\nusers 175 45\ncounterparties 8 , 200 20 , 000\ncontacts 14 , 000 20 , 000\nactivities 1 , 200 900\nquotes 150\nopportunities 361 11\nthe following groups have also inquired about this system and having it implemented :\neol\nglobal mkts\nees\ntransportation\neast power orig\ninsolvent debt\nsome of the basic costs and timeline for this system are $ 120 - $ 150 , 000 for 20 - 30 users with a 5 week timeline for implementation . this is a basic implementation that may not include all of the functionality shown above ( i . e . , no remote connectivity ) .\nthe reason that i have written this is to show a possible system that could be used by the gas floor origination and trading groups to manage contact information and share data among groups . the cost to implement this for all of the origination groups does not appear to be prohibitive and it could be implemented in a good time frame . some of the issues are coordination among the groups and the desire to share information . let me know if you think this is a viable possibility and what would be the best way to approach the other origination groups .\ncolin tonks , database / system guy , within the fundamentals group was also at the meeting and thinks this would work great . he would be the individual coordinating efforts from the natural gas system side .\nthanks ,\njd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.415+0000", "entityId": 4988, "properties": {"text": "Subject: ponderosa pine energy partners , ltd . - gas\nbrazos is not requesting any gas volumes through september 25 , 2001 . we are forecasting to start the plant around september 26 , 2001 .\nmm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.422+0000", "entityId": 4989, "properties": {"text": "Subject: fw : [ fwd : fw : drawing by a school age child in pa ( fwd ) ]\nthought you guys might like to see this .\ntom\n- - - - - original message - - - - -\nfrom : \" lyne martin \" @ enron [ mailto : imceanotes - + 22 lyne + 20 martin + 22 + 20 + 3 clynemartin + 40 msn + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : friday , september 21 , 2001 1 : 42 pm\nto : margaret bassani ; martin , thomas a . ; tammy lanasa ; stacy ewing ; ken mary martin ; wendy lijewski\nsubject : fw : [ fwd : fw : drawing by a school age child in pa ( fwd ) ]\n- - - - - original message - - - - -\nfrom : susan carlock\nsent : friday , september 21 , 2001 9 : 55 am\nto : tracy and steve schultz ; tom and lyne martin ; sara and mark hanson ; phil and isabel o ' brien ; jack and bonnie babcock ; elaine morelock ; alan carlock\nsubject : fw : [ fwd : fw : drawing by a school age child in pa ( fwd ) ]\nthis is just an amazing piece of art work by a school aged child .\n- - - - - original message - - - - -\nfrom : denise kelly [ mailto : dkelly @ us . hynix . com ]\nsent : thursday , september 20 , 2001 2 : 44 pm\nto : carl kelley ( e - mail ) ; carol moree ( e - mail ) ; mark michelle knapp ( e - mail ) ; nanette woosley ( e - mail ) ; rhonda wood\n( e - mail ) ; tina carter ( e - mail ) ; tish sweeney ( e - mail )\nsubject : fw : [ fwd : fw : drawing by a school age child in pa ( fwd ) ]\n- - - - - original message - - - - -\nfrom : becky dunn\nsent : thursday , september 20 , 2001 12 : 25 pm\nto : cindy missana ( e - mail ) ; christine reyner ( e - mail ) ; tina braska ;\ndenise kelly ; sandy reza ( e - mail )\nsubject : fw : [ fwd : fw : drawing by a school age child in pa ( fwd ) ]\n- healing . gif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.428+0000", "entityId": 4990, "properties": {"text": "Subject: neon\n- bammel neon groups - fall 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.432+0000", "entityId": 4991, "properties": {"text": "Subject: enrononline - stack manager changes\nwe have made the following modifications to the enrononline applications .\nstack manager changes\nfill order enhancements - ( effective tuesday september 25 )\n? to fill a top of stack order in stack manager , right click on the pink shaded order in the depth window of stack manager and select fill .\n? the trader now has the ability to fill limit orders that appear at the top of the trader ' s stack on both sides .\n? the order will now be filled at the full order volume regardless of the trader ' s stack volume .\n? filling an order will not move the trader ' s price or cause a hedge to occur .\nresize floated stack windows - ( effective tuesday september 25 )\nyou will now have the ability to resize the stack window to the desired extent .\nwebsite changes ( effective monday september 24 )\nlimit order restrictions on physical transactions -\n? customers will not be allowed to transact with themselves on physical transactions . if a top of stack limit order has been placed on a physical product the counterparty or desk that placed the order will not be allowed to transact on it .\n? if a customer or desk has top of stack limit orders at different prices on both the bid and offer and subsequently moves the price of one so that they are at the same price , both orders will be cancelled . the customer would have effectively transacted with himself .\nplease call me if you have any questions . thanks .\nsavita ( x 31787 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.437+0000", "entityId": 4992, "properties": {"text": "Subject: revised month end close schedule\nafter discussions with bryce , rita and myself , attached is the revised schedule .\nplease forward to those i have left off the mail list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.443+0000", "entityId": 4993, "properties": {"text": "Subject: 2001 special stock option grant awards\nwe are pleased to present you with a 2001 special stock option grant award . as a participant in this grant you have the opportunity to share in the ownership of enron and the potential profit from increases in the value of enron ' s common stock .\nthe 2001 special stock option grant was made to let you know how valuable you are and to recognize your contributions in making enron the great company it is today . although there are no guarantees as to enron ' s future stock performance , we believe that an enron stock option has tremendous future growth potential . the value you ultimately receive from your options will depend on the price of enron stock at the time you exercise your options .\nyou can access your 2001 special stock option grant agreement and the stock plan document governing the grant via your ehronline account on the intranet website at http : / / ehronline . enron . com . unlike stock options granted in the past a copy of your grant agreement will not be mailed to your home address .\nadditionally , the following information regarding the 2001 special stock option grant can be found on the hr website http : / / hrweb . enron . com .\n? 2001 special stock option grant highlights\n? 2001 special stock option grant frequently asked questions ( faqs )\n? a \" how to exercise options \" document that contains contact information and painewebber forms applicable to your stock options\nplease take time to review this material . it is important to us and to you . if you have any questions , please contact your human resources representative .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.451+0000", "entityId": 4994, "properties": {"text": "Subject: proposed rule extends marketing affiliate regulations to all\naffiliates\nngi ' s daily gas price index\nbreaking news : posted sep 26 , 4 : 16 pm\nproposed rule extends marketing affiliate regulations to all affiliates\nfederal energy regulatory commissioners wednesday agreed to issue a notice of proposed rulemaking broadening the application of standards of conduct for transmission providers , including both natural gas pipelines and power lines , to require separation of the regulated monopolies from any other company affiliate .\npreviously , the rules simply required creation of a firewall , including separate operations in separate locations staffed by separate personnel , between gas pipelines and their marketing affiliates . the proposed rule would wall off both gas and electric transmission operations from any other affiliate , gas or electric , including financial affiliates .\nthe commission was presented with two options regarding the application of the proposed rule to electric transmission affiliates , which still in many cases have bundled operations . one option would enforce complete separation , while a second would have exempted employees who deal in sales or purchases of bundled retail native load . staff and commissioners wood , william massey and nora brownell appeared to favor walling off all affiliated personnel , so they would not be privy to market information about transmission operations that other non - affiliated competitors did not have access to .\ncommissioner linda breathitt , however , argued for exempting personnel dealing solely with retail native load . breathitt said that while she supported the eventual separation of the entities , she was concerned about the timing . \" i see no compelling reason at this time ; there have been no complaints and no evidence . \" she said she thought state commissions might consider the move an infringement on their jurisdiction . \" i agree with concept philosophically , but i think there will be other opportunities later on , after we do a little more bridge - building with state commissions . \"\nwood said he understood \" the political issue here with respect to federal - state relations , but i think this is an opportunity for discrimination that ought to be eliminated . \" staff pointed out that if there were any problems with transmission reliability or if some small utilities had problems , waivers could be granted . staff was questioned by the commissioners as to how much information was available to affiliate personnel . \" if i am an affiliate employee dealing solely with retail native load , i can go into the control room and get all the information i want , \" one staffer responded .\nwood proposed , and the commissioners ratified , a proposed rule with no exceptions , but which makes clear that in the final rule the commission may reverse field and determine that separation of employees dealing with sales of native load is not required . commenting parties should provide cost / benefit analysis on both sides of the question . state commissions are also invited to comment . wood had suggested the commission extend the separation to all sales employees , \" but make it clear that if we don ' t hear from people that they really want this separation , we ain ' t going to do it . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.456+0000", "entityId": 4995, "properties": {"text": "Subject: fw : hubco\n- - - - - original message - - - - -\nfrom : redmond , brian\nsent : wednesday , september 26 , 2001 1 : 33 pm\nto : higgins , ned ; hilgert , chris ; mrha , jean\nsubject : hubco\nin follow up to our discussion yesterday , here is the information i am using to describe our waha hubco project as it relates to the compression services deal with unocal .\nas you know , we are in discussion with nng about managing their storage agreement and with sid richardson / transco to develop an \" intrastate \" header system for sid richardson ' s gas that will also be connected to the unocal plant . we need to keep coordinated on these discussions .\nregards ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.461+0000", "entityId": 4996, "properties": {"text": "Subject: ponderosa pine energy plant - start - up\nfyi >\nthe ponderosa pine energy plant is forecasted to start - up on friday , september 28 , 2001 at approximately 6 : 00 am .\nmm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.465+0000", "entityId": 4997, "properties": {"text": "Subject: expense report receipts not received\nemployee name : jerry farmer\nreport name : daren farmer\nreport date : 9 / 7 / 01\nreport id : 82 c 5 aabda 37 bl 1 d 5 b 43 e\nsubmitted on : 9 / 7 / 01\nreceipts for this expense report have not yet been received . if receipts have been mailed , please disregard this message .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.469+0000", "entityId": 4998, "properties": {"text": "Subject: an inbound message for you has been quarantined\nyou have received this message because someone has attempted to send you an e - mail from outside of enron with an attachment type that enron does not allow into our messaging environment . your e - mail has been quarantined and is being held at the mailsweeper server .\nsender : colio @ houston . rr . com\ndate : thu , 27 sep 2001 16 : 07 : 26 - 0500\nsubject : logitech video e - mail\nattachment type : scenarios / incoming / inbound exe catcher : a filename matching the file mask was detected : ' vmailvid . exe ' .\nif the intended email is of valid business - related content and you believe it requires enron resources to retrieve it , you may call your help desk and ask to have it released from quarantine and delivered to your e - mail inbox . your message will be scanned and checked for viruses prior to requested release . if it contains a virus or there is reason to suspect it is malicious code , it will not be delivered .\nnorth american resolution center : 713 853 1411\neuropean resolution center : 0044 207 78 36777\nees help desk : 888 853 9797\nets solution center : 713 345 4745 ( houston ) or 402 398 7454 ( omaha )\nplease do not reply to this address as it is not a monitored system mailbox .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.474+0000", "entityId": 4999, "properties": {"text": "Subject: fw : waha hubco\nfyi\n- - - - - original message - - - - -\nfrom : redmond , brian\nsent : thursday , september 27 , 2001 12 : 01 pm\nto : ' mroper @ sidrichgas . com '\ncc : roberts , linda\nsubject : waha hubco\nmitch :\na lot has happened since we last met - but i wanted to get back to you on our waha hubco project . i have attached an initial presentation on the topic and have asked our engineers ( dave owen and tom hodge ) to get in touch with brad to look at the physical interconnection options . we are doing the same with tw and it would be good to understand more about your system and your objectives . i would also like to understand your thoughts on the commercial structure and terms you would ( or would not ) like to work with enron on this .\ni suggest a confidentiality agreement would be appropriate as a starting point and if you like i can forward one for your review .\nregards ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.479+0000", "entityId": 5000, "properties": {"text": "Subject: tenaska iv 6 / 01\ndarren :\nplease change the demand fee on deal 384258 for june 2001 from $ 3 , 578 , 257 . 50 to $ 3 , 559 , 472 . 93 . our transport expenses went down . we are having some volume problems with this month , so we may need to change it again . i ' m trying to keep kyle lilly and jim pond happy on the gl side .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.483+0000", "entityId": 5001, "properties": {"text": "Subject: fw : the odds are against them\nthere is no way to undermine the devastation and loss we ' ve all\nwitnessed and felt over the last couple of weeks , but when you look at the\nfollowing numbers and realize how much worse it could ' ve been , i guess there\nare a lot of people who were saved . . .\nsubject : the odds are against them\nby now everyone has been hearing the death toll rise\nand reports of the\ndestruction from the terrorist attacks on the us .\nthese were deplorable\nacts\nthat we will never forget . but now is a time to look\nat the other side of\nthe\nnumbers coming out of new york , washington and\npennsylvania . the sad\nbut somewhat uplifting side that the mainstream\nmedia has not reported yet\n- the survival rates and some positive news about\nthe attacks .\n* * * the buildings * * *\n* the world trade center -\nthe twin towers of the world trade center were\nplaces of employment for\nsome\n50 , 000 people . with the missing list of just over\n5 , 000 people , that means\n90 % of the people targeted survived the attack . a\n90 % on a test is an ' a ' .\n* the pentagon -\nsome 23 , 000 people were the target of a third plane\naimed at the pentagon .\nthe latest count shows that only 123 lost their\nlives . that is an amazing\n99 . 5 % survival rate . in addition , the plane seems to\nhave come in too low ,\ntoo early to affect a large portion of the building .\non top of that , the\nsection that was hit was the first of five sections\nto undergo renovations\nthat would help protect the pentagon from terrorist\nattacks . it had\nrecently\ncompleted straightening and blastproofing , saving\nuntold lives . this attack\nwas sad , but a statistical failure .\n* * * the planes * * *\n* american airlines flight 77\nthis boeing 757 that was flown into the outside of\nthe pentagon could have\ncarried up to 289 people , yet only 64 were aboard .\nluckily 78 % of the seats\nwere empty .\n* american airlines flight 11\nthis boeing 767 could have had up to 351 people\naboard , but only carried\n92 .\nthankfully 74 % of the seats were unfilled .\n* united airlines flight 175\nanother boeing 767 that could have sat 351 people\nonly had 65 people on\nboard . fortunately it was 81 % empty .\n* united airlines flight 93\nthis boeing 757 was one of the most uplifting\nstories yet . the smallest\nflight to be hijacked with only 45 people aboard out\nof a possible 289 had\n84 % of its capacity unused . yet these people stood\nup to the attackers and\nthwarted a fourth attempted destruction of a\nnational landmark , saving\nuntold numbers of lives in the process .\n* * * in summary * * *\nout of potentially 74 , 280 americans directly\ntargeted by these inept\ncowards , 93 % survived or avoided the attacks . that ' s\na higher survival rate\nthan heart attacks , breast cancer , kidney\ntransplants and liver transplants\n- all common , survivable illnesses .\nthe hijacked planes were mostly empty , the pentagon\nwas hit at it ' s\nstrongest point , the overwhelming majority of people\nin the world trade\ncenter buildings escaped , and a handful of\npassengers gave the ultimate\nsacrifice to save even more lives .\npass this information on to those in fear and the\nmedia . don ' t fear these\nterrorists . the odds are against them .\nregards ,\namy brock\nhbd marketing team\noffice : 281 - 988 - 2157\ncell : 713 - 702 - 6815\n- - - - - original message - - - - -\nfrom : suzanne young [ smtp : syoung _ piedmont @ yahoo . com ]\nsent : friday , september 28 , 2001 7 : 42 am\nto : andrea ; janet bilyeu ; amy brock ; heather cottom ; crites ; christi\ndegeare ; beverly edwards ; misty floyd ; leah haynes ; michele huneke ; john ;\nleslie ; vicki moyer ; kim pope ; kerri williams\nsubject : fwd : the odds are against them\nnote : forwarded message attached .\ndo you yahoo ! ?\nlisten to your yahoo ! mail messages from any phone .\nhttp : / / phone . yahoo . com\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm ? or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? ? t o p i c a - - register now to manage your mail ! ? http : / / www . topica . com / partner / tago 2 / register ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.488+0000", "entityId": 5002, "properties": {"text": "Subject: cleburne 11 / 00\ndarren :\ni see the new path for the desk to desk in nov 2000 . you pathed it as a buy / sell . should it be on contract 1023 where the old path was ? we have a transport statement from txu for contract 1023 that has 21 , 309 mm .\nmegan\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.493+0000", "entityId": 5003, "properties": {"text": "Subject: electronic pay stubs\nget ready . beginning in november , electronic pay stubs will be available to all employees who have their paychecks direct deposited into their bank account . electronic pay stubs are an easy , fast , and efficient way for you to get your payroll information . they will also help enron to realize a considerable savings in time and dollars spent over traditional printed pay stubs .\nif you prefer to receive a hardcopy of your pay stub , click on the link below to complete a request form . this form must be submitted to payroll by october 15 , 2001 . unless you submit a form your pay stub information will default to electronic viewing .\nplease click on the link below .\nname : jerry farmer\npersonnel number : po 0507544\nphone : 7138536905\nif you have questions about electronic pay stubs , please contact janice priddy ( payroll ) 713 - 853 - 7839 or marie newhouse ( clickathome ) at 713 - 345 - 4185 or send an email to enron . payroll @ enron . com ( enron payroll in outlook ) .\nstay tuned for more details in the coming weeks .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.498+0000", "entityId": 5004, "properties": {"text": "Subject: re : waha hubco\nwaha hubco :\nlinda are you going to be working on this as you are the primary interface to this producer ? if not let me know . dave , lets get together to discuss the following action plan .\nactions :\nlinda r . ( ? ) :\n1 . get the confidentiality agreement in place\n2 . get analytical support to create an economic model for waha hubco and define the value for enron .\n3 . scope out roles and responsibilities of the parties\ndave o . / tom h . :\n1 . lead discussions with sid r . and tw on physical interconnection options\nbrian :\n1 . work with daren f . to define physical interconnection and supply objectives for enron and hubco\n2 . work with tom m . to define trading / info objectives for enron and hubco\n3 . work with jim s . to define storage objectives for enron and hubco .\nregards ,\nbrian\ni will get the confidentiality agreement established .\n- - - - - original message - - - - -\nfrom : roper , mitchell [ mailto : mrroper @ sidrichgas . com ]\nsent : friday , september 28 , 2001 10 : 22 am\nto : redmond , brian\ncc : puckett , kerry ; moncrief , richard ; wade , jim ; farley , wayne\nsubject : re : waha hubco\nbrian ,\ni have forwarded your e - mail to the people in our shop that will be working\nmost directly on this project . tom hodges has talked with kerry puckett in\nour bd group . they have set a meeting up for tues . 10 / 02 / 01 . we can setup\na confidentiality agreement if you want , that would probably allow us to\ndiscuss storage options in the area more freely . since you are out today\ni ' ll see if i can ' t get rick moncrief to send over a form of agreement we\nhave used , they all look pretty similar . as far as deal structure i ' m\npretty open on how we setup , but am definitely interested in equity\npartnership / jv . as this is our core area of assets we wish to continue to\nbe actively involved in deals that we believe add value .\ni believe there is significant potential to create a trading platform\nutilizing our combined assets as well as the liquidity sres ' s system supply\ncould create at an expanded waha hub .\nrick ' s group will be taking the point on this project and will coordinate\nothers involvement as necessary within our company .\nwe look forward to working with you and your team on this project .\nthanks\nmitch\n- - - - - original message - - - - -\nfrom : redmond , brian [ mailto : brian . redmond @ enron . com ]\nsent : thursday , september 27 , 2001 12 : 01 pm\nto : mroper @ sidrichgas . com\ncc : roberts , linda\nsubject : waha hubco\nmitch :\na lot has happened since we last met - but i wanted to get back to you\non our waha hubco project . i have attached an initial presentation on\nthe topic and have asked our engineers ( dave owen and tom hodge ) to get\nin touch with brad to look at the physical interconnection options . we\nare doing the same with tw and it would be good to understand more about\nyour system and your objectives . i would also like to understand your\nthoughts on the commercial structure and terms you would ( or would not )\nlike to work with enron on this .\ni suggest a confidentiality agreement would be appropriate as a starting\npoint and if you like i can forward one for your review .\nregards ,\nbrian\n>\nthis e - mail is the property of enron corp . and / or its relevant affiliate and\nmay contain confidential and privileged material for the sole use of the\nintended recipient ( s ) . any review , use , distribution or disclosure by\nothers is strictly prohibited . if you are not the intended recipient ( or\nauthorized to receive for the recipient ) , please contact the sender or reply\nto enron corp . at enron . messaging . administration @ enron . com and delete all\ncopies of the message . this e - mail ( and any attachments hereto ) are not\nintended to be an offer ( or an acceptance ) and do not create or evidence a\nbinding and enforceable contract between enron corp . ( or any of its\naffiliates ) and the intended recipient or any other party , and may not be\nrelied on by anyone as the basis of a contract by estoppel or otherwise .\nthank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.503+0000", "entityId": 5005, "properties": {"text": "Subject: fw : new products\n- - - - - original message - - - - -\nfrom : meredith , kevin\nsent : monday , october 01 , 2001 2 : 43 pm\nto : baumbach , david\nsubject : new products\nplease review the following description of the product you requested . i created \" day ahead \" , \" day ahead + 1 \" , and \" balance of month \" reference periods the this index / location . i will activate these products this evening pending your response . please let me know if you need anything else .\nus gas phy index gd / d waha 02 octol usd / mm\na us gas transaction with enron north america corp . , under which seller shall sell and buyer shall purchase a quantity of natural gas equal to the daily contract quantity at the contract price on a firm basis . the contract price shall be derived from the index , as adjusted by the price submitted by counterparty via the website . the period of delivery shall be from the effective date through the termination date .\nthe term of the transaction shall correspond to the date ( s ) set forth in the product description on the website .\nthe transaction is for the buyer ' s receipt of gas at the pg oasis ( meter # 504 - 383 ) ; transwestern pipeline ( meter # 531 - 350 ) ; koch midstream ( meter # 504 - 259 ) ; pget accounting ( meter # 504 - 481 ) . notwithstanding anything to the contrary in the general terms and conditions , if applicable , this transaction is between counterparty and enron north america corp .\nthe fixed price shall be the price submitted by counterparty on the website . the index for a calendar day shall be the daily midpoint price published for such calendar day under the heading \" daily price survey \" in the permian basin area : tex intras , waha area section of gas daily , or if a calendar day is not a business day then the price for such calendar day will be the daily midpoint price published on the next succeeding business day .\nthe price is quoted in us dollars per unit of volume , which will be the contractual currency .\nthe unit of measure against which the price is quoted shall be millions of british thermal units and the quantity shown shall be in millions of btus per day .\nkevin meredith\nenrononline\n( 713 ) 853 - 9555", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.508+0000", "entityId": 5006, "properties": {"text": "Subject: neon\n- awesome agenda . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.516+0000", "entityId": 5007, "properties": {"text": "Subject: re : txu may 01\nthis deal was not transported on contract 1856 , the 15 , 000 was sold to el paso merchant directly at that point . it was 15 , 000 a day for the 30 th and 31 st .\nlet me know if you need anything further .\nmike\n- - - - - original message - - - - -\nfrom : beale , antoinette\nsent : wednesday , october 03 , 2001 12 : 48 pm\nto : olsen , michael\ncc : parker , megan ; farmer , daren j .\nsubject : txu may 01\nmike ,\ni have the following outstanding issue with txu :\nmay 01 - contract 1856\na path is needed on delivery 17054701 for 19087 mmbtus with the receipt point 175054701 .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.524+0000", "entityId": 5008, "properties": {"text": "Subject: txu may 01\nmike ,\ni have the following outstanding issue with txu :\nmay 01 - contract 1856\na path is needed on delivery 17054701 for 19087 mmbtus with the receipt point 175054701 .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.530+0000", "entityId": 5009, "properties": {"text": "Subject: good answer\n\" . . . if my people , who are called by my name , will humble themselves and\npray and seek my face and turn from their wicked ways , then will i hear\nfrom heaven and will forgive their sin and will heal their land . \" - 2\nchronicles 7 : 14\nbryant gumbel recently interviewed billy graham ' s daughter .\ngumbel : \" why didn ' t god stop this or do something about this ? \"\nbilly graham ' s daughter : \" for years we have told god we didn ' t want\nhim in our schools . we didn ' t want him in our government and we\ndidn ' t want him in our finances and god was being a perfect gentleman in\ndoing just what we asked him to do . we need to make up our mind - do\nwe want god or do we not want him . we cannot just ask him in when\ndisaster strikes . \"\nbryant gumbel was silent .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbob burgess\ntalon consulting , inc .\n713 - 394 - 2259\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm ? or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? ? t o p i c a - - register now to manage your mail ! ? http : / / www . topica . com / partner / tago 2 / register ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.534+0000", "entityId": 5010, "properties": {"text": "Subject: escalation procedures - gas logistics\ndesk managers ,\ni will be issuing a small laminated version of the attached list of contacts for escalation of unify and edi issues in a small laminated version . the objective in putting richard first on the list is to address any issues that are business related or education related prior to getting it folks involved ; thereby , freeing up our it folks to work on programming fixes and enhancements .\n>\nafter implementation , if you feel these escalation procedures are not providing the level of support your desk requires , please let me know .\nregards ,\ntammy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.539+0000", "entityId": 5011, "properties": {"text": "Subject: automate load of scheduled quantity sirpo 0067\ni have attached a draft of the enhancement to automate the load of scheduled quantities . please review and provide your input by cob 10 / 10 / 01 . if you need to discuss this document , let know and i will make arrangements to meet with you . once we get your input , we will issue an updated document and meet with it to prioritize .\nthanks ,\ntammy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.543+0000", "entityId": 5012, "properties": {"text": "Subject: important information about security & clickathome\ndear clickathome participant ,\nclickathome is interested in making sure you have the latest security tools available to you . as part of the clickathome program , you may download and update norton anti - virus and blackice defender software from the clickathome portal .\nnorton antivirus software repairs computer virus infections automatically . it scans and cleans your hard drive , diskettes and both incoming and outgoing email .\nblackice defender is an industrial - strength anti - hacker system that protects your pc by scanning your dsl , cable modem , or dial - up internet connection looking for hacker activity . when it detects an attempted intrusion , it automatically blocks traffic from that source , keeping intruders from accessing your system .\nby installing and updating both norton antivirus and blackice defender , your clickathome pc will have the latest security offered by these two products .\ninstructions for accessing the portal and downloading the software are provided below .\nif you have any questions or wish to provide feedback , please email clickathome @ enron . com . thank you for your participation in clickathome .\nthe clickathome team !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nto download the software :\n1 ) visit the clickathome portal at www . clickathome . net from your clickathome pc .\n2 ) logon to the portal with your personally created portal user id and password , or create a new account if you have not created a user id and password by selecting \" create a new account \" at the top left corner . the portal user ids and passwords are created by you . the enron help desk is not able to assist with portal support , but if you need any assistance , please send an email to \" clickathome @ enron . com \" .\n3 ) once you have logged on , select \" tools \" from the top menu bar .\n4 ) under the \" secure download \" heading , click on \" blackice \" or \" norton \" and log on to the download page using your sap id and date of birth .\n5 ) follow the directions provided on screen .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.548+0000", "entityId": 5013, "properties": {"text": "Subject: tenaska iv 9 / 01\ndarren :\nplease zero out the price on deal 384258 for 9 / 01 and add a demand fee for $ 2 , 861 , 611 . 46 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.553+0000", "entityId": 5014, "properties": {"text": "Subject: re : path manager rewrite / optimization project\nmy comments are in fuschia .\nlisa\n- - - - - original message - - - - -\nfrom : pinion , richard\nsent : wednesday , october 10 , 2001 2 : 35 pm\nto : pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh ; kinsey , lisa ; lamadrid , victor ; sullivan , mary ; sullivan , patti ; heal , kevin ; staab , theresa ; farmer , daren j . ; jaquet , tammy ; superty , robert ; bussell l , kathryn\nsubject : re : path manager rewrite / optimization project\nfollowing are my comments . the managers cc ' d might have some additional thoughts .\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : monday , october 08 , 2001 4 : 26 pm\nto : pinion , richard ; jaquet , tammy ; superty , robert ; pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh\nsubject : path manager rewrite / optimization project\nimportance : high\nall :\nwe ' re currently identifying processes that are inefficient and could possibly benefit from being rewritten or not even performed . going foward , i would like bob to appoint a lead business person to whom we could ask questions and or suggest ideas to so that they could in turn validate this information with the desk managers / schedulers . we had this approach with nomlogic and having clarissa work the issues worked quite nicely . who ever you choose , we would need about 15 % of their time for now . later on , with coordination efforts and testing , it may go up to 75 % . i don ' t see that happening for a while though .\nthe sooner we get someone to devote to this , the better off we will be . i expect these changes that we ' ll be looking into should improve performance quite a bit .\nthat being said , we ' ve identified three items that would speed up processing the retrieval of path manager .\n1 ) currently , the path manager attempts to reuse path ids . i can ' t think of any reason why we need to perform this extra step ? it runs through this processing on the application and generally doesn ' t find a match . i know patti has mentioned this several times and i can ' t think of a valid reason for performing this work . i talked with dave nommensen , and according to him , what used to happen is that sometimes schedulers would get duplicate paths out there which is why they put this code in place ? ? ? from a scheduling perspective , my understanding of what your main concern is to just maintain your position and be able to change it . if you were overpathed , you ' d see it in the path manager either way . [ pinion , richard ] to restate the question for clarity , in path manager a scheduler pulls down a supply , market and a service , adds any up / downstream contract information and / or duns or drn override and then saves it . unify looks for an old path with those exact variables and if it finds it re - uses it and if it does not find an exact match creates a new path and path id . i had been told that to do away with this function would create an unacceptably high amount of paths since any path once nominated on could not be deleted . has this changed ? ? ? at one time there were some schedulers that looked for the same path / activity number match for nominations . texas eastern was the only pipeline that needed the old activity numbers no matter how long it had been since they were used . i spoke with chris ordway and the new link system no longer needs this to occur . transco uses activity numbers but uses the activity number cross reference table to that function and therefore should not be affected . therefore , if it does not create a space or memory problem for unify , i don ' t think that this constant old path look up is needed . [ kinsey , lisa ] get rid of this .\n2 ) the scheduling position window : does anyone use this ? if not , we ' ll remove the code logic that populates this window . i have never seen a scheduler use this . please verify . [ pinion , richard ] originally such a window was in use by everyone in the legacy system \" autonoms \" so it was duplicated in unify by request . it is not used in unify now because of the other sophisticated tools unify provides which obviate it ' s use . the only value would be notification of bridge errors or contract imbalances but there are other ways to determine those problems . as voted on in a previous meeting of the managers - lose it ! [ kinsey , lisa ] why is this still here ?\n3 ) on the inventory pool list , does anyone need to see the contarct references list ? again , this code is called every retrieval time and doesn ' t appear to be used from my observations . if they do need this information , we could provide it , but if not , i ' d prefer to remove the functionality . [ pinion , richard ] this function is still very much in use by those with point based pipelines that must use the imbalance pool to facilitate balancing nomination volumes where multiple pipeline external pools exist and are pathed through the same contract imbalance pool . keep it ! [ kinsey , lisa ] yes . we use this functionality a lot when pathing pools .\n4 ) when pathing a one to many or many to one set of paths , what ' s the average number of paths they create at one time ? what about updates ? i know that anr and nigas are big users of this feature since they have small packages of gas that they are limited in size to . does the system seem faster when you update one record at a time or chunks of records ? my real question is how often they do this and for what number of paths on both updates and inserts . by update , i mean , going to the path list and changing an upstream / downstream contract or a psna which in turn forces a new path to be created . [ pinion , richard ] this one to many or many to one pathing goes on every day on every pipeline . there is no ' average ' . they typically update a path with up / downstream meters or duns or dnb numbers one at a time however . i hope this answers your question . i see no change to this process at this time [ kinsey , lisa ] on some pipes this function is used more than others . when it is used we try and do as many paths as possible . at this time i do not see a need to change this process .\n5 ) on brokered paths , do you want to utilize the same logic we have for service ? in other words , when updating brokered arrangements , we don ' t incorporate the same logic for zeroing out the path and recreating a new arrangment link and hence sending it to be renominated ? why do we do this for service ? is it because we have to renominate it ? i assume that ' s what it ' s for since we don ' t send brokered paths to the pipe . anyway , with the nomlogic implmentation ( two way interface ) , we were planning on having it behave the same way as service . we need this verified . [ pinion , richard ] we don ' t perform the same logic for brokered paths because these are not nominated to the pipeline and hence do not need a zero path to be resent to the pipeline when a significant change is made to the already nominated path . i don ' t see a need to change the way brokered paths are behaving at this time . [ kinsey , lisa ] agree with richard .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.558+0000", "entityId": 5015, "properties": {"text": "Subject: re : list of critical notices for future fundy ' s page\nthe blue highlighted pipes are the critical ones for the east .\n- - - - - original message - - - - -\nfrom : kinsey , lisa\nsent : thursday , october 11 , 2001 12 : 56 pm\nto : lamadrid , victor ; sullivan , patti\ncc : nguyen , thinh\nsubject : fw : list of critical notices\nvictor and patti -\nattached the critical / noncritical notices websites being review by the fundys group . i highlighted my priority pipes in red . when you guys are done please forward back to thinh .\nlisa\n- - - - - original message - - - - -\nfrom : nguyen , thinh\nsent : tuesday , october 09 , 2001 4 : 04 pm\nto : kinsey , lisa\ncc : dronet , david\nsubject : list of critical notices\nhi lisa ,\nattahed is the excel file with critical notices for each pipeline . can you please go through and prioritize the list by pipeline name and send that back to me\nthanks ,\nthinh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.563+0000", "entityId": 5016, "properties": {"text": "Subject: bosses day\nhey kids , why don ' t we pool our resources and get \" el jefe \" something nice ? not like last year . . . i won ' t mention names ( donna ) . . . . when some individuals within the team didn ' t want to include the rest of us in their \" reindeer games \" for bosses day . any suggestions ? round of golf , gift certificate ? ? ? i nominate suzanne to collect the money . any objections ?\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.568+0000", "entityId": 5017, "properties": {"text": "Subject: re : logistics powerpoint presentation\nhi all ,\nthis is just a friendly reminder that i need the information for the gas logistics powerpoint presentation by tomorrow , friday , october 12 th .\nthanks for your time and assistance . please call me with any questions .\nthanks ,\nelizabeth\nx 51694\npresentation is located at o : / logistics / management / presentations / gas logistics powerpointl . ppt\n- - - - - original message - - - - -\nfrom : webb , elizabeth\nsent : thursday , october 04 , 2001 2 : 56 pm\nto : lamadrid , victor ; kinsey , lisa ; sullivan , patti ; jaquet , tammy ; greif , donna ; smith , george f . ; olinger , kimberly s . ; farmer , daren j . ; calcagno , suzanne ; williams , jason ( trading )\ncc : superty , robert ; newton , lisbet ; garcia , clarissa ; schrab , mark l .\nsubject : logistics powerpoint presentation\nhi all ,\nper the discussion at today ' s staff meeting , i would like you all to review the attached presentation and put in general information for your particular desk / cost center in the respective slides . i have one slide for each desk / cost center called \" desk / cost center x information \" and another called \" asset management deals \" if this is applicable to you .\nplease return the attached presentation with your additions and / or changes to me by friday , october 12 th . please call me if you have any questions or concerns .\nalso , please feel free to utilize me as a resource for any powerpoint presentations , data gathering that you may need done .\nthanks ,\nelizabeth\npresentation is located on o : / logistics / management / gas logistics powerpointl\n>\nelizabeth webb\nelizabeth . webb @ enron . com\n713 - 345 - 1694", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.572+0000", "entityId": 5018, "properties": {"text": "Subject: path manager rewrite\ndesk managers ,\ni wanted to follow - up from the staff meeting this week on the item to get a representative from each of the desks , who will be the designated tester in addition to richard . please respond with that person name .\nmatt ,\nit would be helpful to all us to know when you will need these resources so we can manage the workload .\nregards ,\ntammy\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : monday , october 08 , 2001 4 : 26 pm\nto : pinion , richard ; jaquet , tammy ; superty , robert ; pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh\nsubject : path manager rewrite / optimization project\nimportance : high\nall :\nwe ' re currently identifying processes that are inefficient and could possibly benefit from being rewritten or not even performed . going foward , i would like bob to appoint a lead business person to whom we could ask questions and or suggest ideas to so that they could in turn validate this information with the desk managers / schedulers . we had this approach with nomlogic and having clarissa work the issues worked quite nicely . who ever you choose , we would need about 15 % of their time for now . later on , with coordination efforts and testing , it may go up to 75 % . i don ' t see that happening for a while though .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.577+0000", "entityId": 5019, "properties": {"text": "Subject: re : path manager rewrite / optimization project\nsince lisa used fuchsia , i ' ll use lavender . .\non # 1 i would eliminate that processing . in addition , can we delete / hide / not access old paths that haven ' t been used in gas production in lets say a year or so . would this help performance ? this would also force the schedulers to path / think about the way they are pathing their transactions and not rely on old paths that may no longer be accurate ! ! we ' ve seen old bad , zero paths be re - used accidentally .\non # 2 , the scheduling position window is the weakest link . . . . . goodbye !\non # 3 , contract reference i know is used alot in the supply and market list . nomlogic is also slated to use these contract reference fields for comments . do we need it in the inventory list ? probably not as much as the supply and market list but i still believe it ' s necessary for pools and imbalance accounts .\non # 4 , we use this functionality alot on cgas , tenn , trco and sab . . . when we path one to many or many to one in \" chunks , \" it does seem to go faster than one path at a time .\non # 5 , brokered paths could really just be slammed in there . no need for the extra processing that occurs for service contracts .\nthanks\n- - - - - original message - - - - -\nfrom : sullivan , patti\nsent : friday , october 12 , 2001 9 : 50 am\nto : pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh ; lamadrid , victor ; sullivan , mary ; staab , theresa ; farmer , daren j . ; jaquet , tammy ; superty , robert ; bussell l , kathryn ; kinsey , lisa ; heal , kevin ; pinion , richard\nsubject : re : path manager rewrite / optimization project\ni also agree with richard and lisa .\n- - - - - original message - - - - -\nfrom : heal , kevin\nsent : friday , october 12 , 2001 9 : 28 am\nto : kinsey , lisa ; pinion , richard ; pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh ; lamadrid , victor ; sullivan , mary ; sullivan , patti ; staab , theresa ; farmer , daren j . ; jaquet , tammy ; superty , robert ; bussell l , kathryn\nsubject : re : path manager rewrite / optimization project\ni agree with richard and lisa . especially important is to keep # 4 . we do a lot of many to one and one to many pathing , especially on nova .\n- - - - - original message - - - - -\nfrom : kinsey , lisa\nsent : wednesday , october 10 , 2001 3 : 56 pm\nto : pinion , richard ; pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh ; lamadrid , victor ; sullivan , mary ; sullivan , patti ; heal , kevin ; staab , theresa ; farmer , daren j . ; jaquet , tammy ; superty , robert ; bussell l , kathryn\nsubject : re : path manager rewrite / optimization project\nmy comments are in fuschia .\nlisa\n- - - - - original message - - - - -\nfrom : pinion , richard\nsent : wednesday , october 10 , 2001 2 : 35 pm\nto : pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh ; kinsey , lisa ; lamadrid , victor ; sullivan , mary ; sullivan , patti ; heal , kevin ; staab , theresa ; farmer , daren j . ; jaquet , tammy ; superty , robert ; bussell l , kathryn\nsubject : re : path manager rewrite / optimization project\nfollowing are my comments . the managers cc ' d might have some additional thoughts .\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : monday , october 08 , 2001 4 : 26 pm\nto : pinion , richard ; jaquet , tammy ; superty , robert ; pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh\nsubject : path manager rewrite / optimization project\nimportance : high\nall :\nwe ' re currently identifying processes that are inefficient and could possibly benefit from being rewritten or not even performed . going foward , i would like bob to appoint a lead business person to whom we could ask questions and or suggest ideas to so that they could in turn validate this information with the desk managers / schedulers . we had this approach with nomlogic and having clarissa work the issues worked quite nicely . who ever you choose , we would need about 15 % of their time for now . later on , with coordination efforts and testing , it may go up to 75 % . i don ' t see that happening for a while though .\nthe sooner we get someone to devote to this , the better off we will be . i expect these changes that we ' ll be looking into should improve performance quite a bit .\nthat being said , we ' ve identified three items that would speed up processing the retrieval of path manager .\n1 ) currently , the path manager attempts to reuse path ids . i can ' t think of any reason why we need to perform this extra step ? it runs through this processing on the application and generally doesn ' t find a match . i know patti has mentioned this several times and i can ' t think of a valid reason for performing this work . i talked with dave nommensen , and according to him , what used to happen is that sometimes schedulers would get duplicate paths out there which is why they put this code in place ? ? ? from a scheduling perspective , my understanding of what your main concern is to just maintain your position and be able to change it . if you were overpathed , you ' d see it in the path manager either way . [ pinion , richard ] to restate the question for clarity , in path manager a scheduler pulls down a supply , market and a service , adds any up / downstream contract information and / or duns or drn override and then saves it . unify looks for an old path with those exact variables and if it finds it re - uses it and if it does not find an exact match creates a new path and path id . i had been told that to do away with this function would create an unacceptably high amount of paths since any path once nominated on could not be deleted . has this changed ? ? ? at one time there were some schedulers that looked for the same path / activity number match for nominations . texas eastern was the only pipeline that needed the old activity numbers no matter how long it had been since they were used . i spoke with chris ordway and the new link system no longer needs this to occur . transco uses activity numbers but uses the activity number cross reference table to that function and therefore should not be affected . therefore , if it does not create a space or memory problem for unify , i don ' t think that this constant old path look up is needed . [ kinsey , lisa ] get rid of this .\n2 ) the scheduling position window : does anyone use this ? if not , we ' ll remove the code logic that populates this window . i have never seen a scheduler use this . please verify . [ pinion , richard ] originally such a window was in use by everyone in the legacy system \" autonoms \" so it was duplicated in unify by request . it is not used in unify now because of the other sophisticated tools unify provides which obviate it ' s use . the only value would be notification of bridge errors or contract imbalances but there are other ways to determine those problems . as voted on in a previous meeting of the managers - lose it ! [ kinsey , lisa ] why is this still here ?\n3 ) on the inventory pool list , does anyone need to see the contarct references list ? again , this code is called every retrieval time and doesn ' t appear to be used from my observations . if they do need this information , we could provide it , but if not , i ' d prefer to remove the functionality . [ pinion , richard ] this function is still very much in use by those with point based pipelines that must use the imbalance pool to facilitate balancing nomination volumes where multiple pipeline external pools exist and are pathed through the same contract imbalance pool . keep it ! [ kinsey , lisa ] yes . we use this functionality a lot when pathing pools .\n4 ) when pathing a one to many or many to one set of paths , what ' s the average number of paths they create at one time ? what about updates ? i know that anr and nigas are big users of this feature since they have small packages of gas that they are limited in size to . does the system seem faster when you update one record at a time or chunks of records ? my real question is how often they do this and for what number of paths on both updates and inserts . by update , i mean , going to the path list and changing an upstream / downstream contract or a psna which in turn forces a new path to be created . [ pinion , richard ] this one to many or many to one pathing goes on every day on every pipeline . there is no ' average ' . they typically update a path with up / downstream meters or duns or dnb numbers one at a time however . i hope this answers your question . i see no change to this process at this time [ kinsey , lisa ] on some pipes this function is used more than others . when it is used we try and do as many paths as possible . at this time i do not see a need to change this process .\n5 ) on brokered paths , do you want to utilize the same logic we have for service ? in other words , when updating brokered arrangements , we don ' t incorporate the same logic for zeroing out the path and recreating a new arrangment link and hence sending it to be renominated ? why do we do this for service ? is it because we have to renominate it ? i assume that ' s what it ' s for since we don ' t send brokered paths to the pipe . anyway , with the nomlogic implmentation ( two way interface ) , we were planning on having it behave the same way as service . we need this verified . [ pinion , richard ] we don ' t perform the same logic for brokered paths because these are not nominated to the pipeline and hence do not need a zero path to be resent to the pipeline when a significant change is made to the already nominated path . i don ' t see a need to change the way brokered paths are behaving at this time . [ kinsey , lisa ] agree with richard .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.582+0000", "entityId": 5020, "properties": {"text": "Subject: tenaska iv\ndarren :\nplease change the demand fees on deal 384258 for tenaska iv to the numbers below . thanks .\n6 / 01 from 3 , 559 , 472 . 93 to 3 , 541 , 521 . 53\n8 / 01 from 4 , 116 , 036 . 00 to 4 , 117 , 198 . 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.587+0000", "entityId": 5021, "properties": {"text": "Subject: fw : unify exception list\nall :\nfrom matt ' s response it sounds like you might want to specify exception personnel for 8 - 12 , 12 thru 4 : 00 , and 4 thru 6 normal business hours and not end of the month , holidays or long weekends .\nrp\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : friday , october 12 , 2001 1 : 03 pm\nto : pinion , richard\nsubject : re : unify exception list\nyes , you are correct . when we watchdog , we ' ll most likely do vm and settlements and not pm . but , in the afternoon , if they need payments out the door , pm will get it . it goes both ways . so , if you send me who needs to be in the system no matter what , that would help .\nyou are correct , 8 - 12 is logistics critical , and after that it ' s anyones guess .\n- - - - - original message - - - - -\nfrom : pinion , richard\nsent : friday , october 12 , 2001 11 : 38 am\nto : pena , matt\nsubject : fw : unify exception list\nbased on victor ' s response , i think there is some confusion . there are actually several critical time periods depending on the group and time of day . perhaps to eliminate the confusion you could specify which time period you are going to watchdog . i interpreted it to mean the 8 - 12 am period but victor was thinking the afternoon . depending on the time there might be different people who should be kicked out .\nrp\n- - - - - original message - - - - -\nfrom : lamadrid , victor\nsent : friday , october 12 , 2001 11 : 00 am\nto : sullivan , patti ; pena , matt\ncc : warner , john ; hall , bob m ; rao , ramesh ; sengupta , jayanta ; nguyen , ben ; melethil , anwar ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; jaquet , tammy ; kinsey , lisa ; lakho , shahnaz ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; superty , robert ; wynne , rita\nsubject : re : unify exception list\nthe critical users on the east desk using path manager will be meredith homco , clarissa garcia , christina sanchez and victor lamadrid . if you could alert us as to when y ' all are invoking watchdog to kick logistics out , that would be great . thanks\n- - - - - original message - - - - -\nfrom : sullivan , patti\nsent : friday , october 12 , 2001 9 : 42 am\nto : pena , matt\ncc : warner , john ; hall , bob m ; rao , ramesh ; sengupta , jayanta ; nguyen , ben ; melethil , anwar ; baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; jaquet , tammy ; kinsey , lisa ; lakho , shahnaz ; lamadrid , victor ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; superty , robert ; wynne , rita\nsubject : re : unify exception list\nthe west desk critical users will all use path manager . the users will be shannon groenewold , daniel lisk , suzanne christiansen , corey wilkes , jackie adams , shelly mendel , stacey brewer , walt spiegelhauer and starting next week joshua blair .\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : thursday , october 11 , 2001 8 : 37 pm\nto : baxter , bryce ; bussell l , kathryn ; dawes , cheryl ; greif , donna ; hall , bob m ; heal , kevin ; jaquet , tammy ; kinsey , lisa ; lakho , shahnaz ; lamadrid , victor ; machleit , shirley ; mcclure , mark ; olinger , kimberly s . ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; sullivan , patti ; superty , robert ; wynne , rita\ncc : warner , john ; hall , bob m ; rao , ramesh ; sengupta , jayanta ; nguyen , ben ; melethil , anwar\nsubject : unify exception list\ngoing forward , as a precautionary measure , we will begin locking users out of the system if the need arises . we will use our watchdog application in order to initiate this process . we will do so only as a last resort and will notify you that we will be doing this . our reasons for doing this are mainly to ensure the critical system resources are provided to the users that need them the most .\nthe old list we had from sybase no longer exists . i need your help in putting together a new list . please provide the list of people who are absolutely critical users that have to be on the system . obviously , the situation isn ' t remedied if everyone is an exception user : )\nplease provide user name and application they need ( i . e . volume management , settlements , path manager ) .\nthe sooner i get this , the sooner we can get this implemented .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.591+0000", "entityId": 5022, "properties": {"text": "Subject: fw : hpl imbalance payback\nnow that we have a transport agreement on hpl . on physical payback , i think the\nbest way would be to have the imbalance transfered to our agreement and then schedule\nthe payback directly to us .\ni guess we need to work this out with the aep people . i have talked to kim lastraps about\nthis . can you guys follow up and let me know what you decided .\nthanks\nbob\n- - - - - original message - - - - -\nfrom : baumbach , david\nsent : monday , october 15 , 2001 1 : 49 pm\nto : farmer , daren j . ; olsen , michael\ncc : hall , bob m\nsubject : fw : hpl imbalance payback\n- - - - - original message - - - - -\nfrom : laallen @ aep . com [ mailto : laallen @ aep . com ]\nsent : monday , october 15 , 2001 1 : 16 pm\nto : dbaumba @ enron . com\nsubject : hpl imbalance payback\nsorry , guessed wrong at your e : mail ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hol / aepin on 10 / 15 / 2001 12 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : brian . hull @ enron . com , dave . bombeck @ enron . com\ncc : rita . wynne @ enron . com\nsubject : hpl imbalance payback\nbrian - this relates to an imbalance due enron pre - june 2001 . aep / hpl is negotiating on enron ' s behalf to clear these historical imbalances . lobo wants to pay this gas back on wednesday . you guys can take this in and transport it on hpl to a market ( for a fee , of course ) or you can outright sell it to hpl after taking receipt at king ranch . it is up to you . i realize that wednesday may be short notice . i was not a party to determining the date of this resolution and have no problem getting these guys to hold off , if need be . just let me know how you want to proceed . i ' m at 832 - 668 - 1181 . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hol / aepin on 10 / 15 / 2001 12 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : \" ' laallen @ aep . com ' \" , \" ' smaki @ aep . com ' \" , \" ' susan . m . braden @ exxonmobil . com ' \"\ncc : \" garza , israel \"\nsubject : hpl imbalance payback\nwe have confirmed and agreed with hpl ( laurie allen ) and exxon ( susan\nbraden ) to allow lobo pipeline to payback our hpl thompsonville imbalance at\nhpl - king ranch .\nour imbalance to date is 6798 dkthm , and we would like to schedule this for\ngas day wednesday , october 17 . please respond to this email if you all\nagree with this date .\ni will send a nomination tomorrow morning once each party has agreed to this\nemail .\nsean , could you please forward this to daxa bhavsar .\nregards ,\nrobert j . perez jr .\nlobo pipeline company l . p .\nt & e ( transportation & exchange )\netn : 639 - 4685\nmailto : roberto . j . perez . jr @ usa . conoco . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.596+0000", "entityId": 5023, "properties": {"text": "Subject: fw : hpl imbalance payback\n- - - - - original message - - - - -\nfrom : laallen @ aep . com [ mailto : laallen @ aep . com ]\nsent : monday , october 15 , 2001 1 : 16 pm\nto : dbaumba @ enron . com\nsubject : hpl imbalance payback\nsorry , guessed wrong at your e : mail ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hol / aepin on 10 / 15 / 2001 12 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : brian . hull @ enron . com , dave . bombeck @ enron . com\ncc : rita . wynne @ enron . com\nsubject : hpl imbalance payback\nbrian - this relates to an imbalance due enron pre - june 2001 . aep / hpl is negotiating on enron ' s behalf to clear these historical imbalances . lobo wants to pay this gas back on wednesday . you guys can take this in and transport it on hpl to a market ( for a fee , of course ) or you can outright sell it to hpl after taking receipt at king ranch . it is up to you . i realize that wednesday may be short notice . i was not a party to determining the date of this resolution and have no problem getting these guys to hold off , if need be . just let me know how you want to proceed . i ' m at 832 - 668 - 1181 . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hol / aepin on 10 / 15 / 2001 12 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : \" ' laallen @ aep . com ' \" , \" ' smaki @ aep . com ' \" , \" ' susan . m . braden @ exxonmobil . com ' \"\ncc : \" garza , israel \"\nsubject : hpl imbalance payback\nwe have confirmed and agreed with hpl ( laurie allen ) and exxon ( susan\nbraden ) to allow lobo pipeline to payback our hpl thompsonville imbalance at\nhpl - king ranch .\nour imbalance to date is 6798 dkthm , and we would like to schedule this for\ngas day wednesday , october 17 . please respond to this email if you all\nagree with this date .\ni will send a nomination tomorrow morning once each party has agreed to this\nemail .\nsean , could you please forward this to daxa bhavsar .\nregards ,\nrobert j . perez jr .\nlobo pipeline company l . p .\nt & e ( transportation & exchange )\netn : 639 - 4685\nmailto : roberto . j . perez . jr @ usa . conoco . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.601+0000", "entityId": 5024, "properties": {"text": "Subject: fw : picture\n>\n>\n> the following is an aerial photo of the wtc area . it kinda brings on\n> vertigo , but is a phenomenal shot .\n>\n> http : / / userwww . service . emory . edu / ~ rdgarr / wtc . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.606+0000", "entityId": 5025, "properties": {"text": "Subject: dear all\nif you wish to find out more about the mission in\nkosovo , you can find news and photos at\n\" www . kforonline . com \" .\ntake care , mark\ndo you yahoo ! ?\nget your free @ yahoo . co . uk address at http : / / mail . yahoo . co . uk\nor your free @ yahoo . ie address at http : / / mail . yahoo . ie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.613+0000", "entityId": 5026, "properties": {"text": "Subject: ship channel hub co\nplease review / comment on the attached presentation\ngary - can you and jd take ownership of this . once we incorporate everyone ' s comments , we can set up a meeting with air products , dow , and others to discuss .\nthanks ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.621+0000", "entityId": 5027, "properties": {"text": "Subject: re : automate load of scheduled quantity sirpo 0067\ni have updated the draft enhancement document to automate the load of scheduled quantities . once again , i would appreciate your feedback . please have your comments to me by cob 10 / 19 / 01 .\nthanks ,\ntammy\n- - - - - original message - - - - -\nfrom : jaquet , tammy\nsent : thursday , october 04 , 2001 6 : 19 pm\nto : pena , matt ; nguyen , ben ; greif , donna ; pinion , richard ; lakho , shahnaz ; farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti ; dinari , sabra l . ; driscoll - ernest , marde l . ; greif , donna ; muzzy , charles t .\ncc : superty , robert\nsubject : automate load of scheduled quantity sirpo 0067\ni have attached a draft of the enhancement to automate the load of scheduled quantities . please review and provide your input by cob 10 / 10 / 01 . if you need to discuss this document , let know and i will make arrangements to meet with you . once we get your input , we will issue an updated document and meet with it to prioritize .\n>\nthanks ,\ntammy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.629+0000", "entityId": 5028, "properties": {"text": "Subject: oasis sept 01 production\nmike ,\ni am missing the following meters :\ncontract meter receipt or ( delivery ) volume\n028 - 27099 - 02 - 002 1265 delivery 10 , 000\n028 - 27099 - 02 - 002 2187 delivery 60\n028 - 27099 - 02 - 002 6301 receipt 18 , 963\nif you have any questions , give me a call . if you need a copy of the statement , let me know . thanks .\nstephen r . swisher\nspecialist , energy operations\nenron net works , llc\nphone : 713 - 345 - 3042\nfax : 713 - 345 - 7701\nemail : stephen . swisher @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.634+0000", "entityId": 5029, "properties": {"text": "Subject: re : path manager rewrite\nmatt -\ncora and mark will tag team this one .\nlisa\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : friday , october 12 , 2001 5 : 31 pm\nto : jaquet , tammy ; farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti\ncc : superty , robert ; pinion , richard\nsubject : re : path manager rewrite\nwith regards to the path manager rewrite , as we make changes , we ' ll let you know . i don ' t have a timeframe just yet , but we ' ll let you know when we ' re ready . i ' ll give you plenty of warning .\n- - - - - original message - - - - -\nfrom : jaquet , tammy\nsent : friday , october 12 , 2001 5 : 28 pm\nto : farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti\ncc : superty , robert ; pinion , richard ; pena , matt\nsubject : path manager rewrite\ndesk managers ,\ni wanted to follow - up from the staff meeting this week on the item to get a representative from each of the desks , who will be the designated tester in addition to richard . please respond with that person name .\nmatt ,\nit would be helpful to all us to know when you will need these resources so we can manage the workload .\nregards ,\ntammy\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : monday , october 08 , 2001 4 : 26 pm\nto : pinion , richard ; jaquet , tammy ; superty , robert ; pena , matt\ncc : warner , john ; ripley , brian ; d ' souza , romeo ; rao , ramesh\nsubject : path manager rewrite / optimization project\nimportance : high\nall :\nwe ' re currently identifying processes that are inefficient and could possibly benefit from being rewritten or not even performed . going foward , i would like bob to appoint a lead business person to whom we could ask questions and or suggest ideas to so that they could in turn validate this information with the desk managers / schedulers . we had this approach with nomlogic and having clarissa work the issues worked quite nicely . who ever you choose , we would need about 15 % of their time for now . later on , with coordination efforts and testing , it may go up to 75 % . i don ' t see that happening for a while though .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.638+0000", "entityId": 5030, "properties": {"text": "Subject: ferc issues nopr on intra - day recalls of released capacity\nngi ' s daily gas price index\npublished : october 17 , 2001\nferc issues nopr on intra - day recalls of released capacity\ngiven the inability of the natural gas standards - setting organization to resolve the issue of intra - day recalls of released transportation capacity , ferc has issued a notice of proposed rulemaking ( nopr ) that would give releasing shippers the flexibility to re - nominate their recalled capacity at the next scheduling opportunity provided by an interstate pipeline .\nexisting gas industry standards board ( gisb ) standards require a shipper that wants to re - nominate recalled capacity to notify its transportation provider by no later than 8 a . m . central clock time ( cct ) on a nomination day at the latest , and bars partial - day recalls of capacity . ferc proposes to allow shippers to recall capacity and re - nominate the recalled capacity at each of the three intra - day nomination opportunities .\n\" by enabling releasing shippers to recall and renominate capacity quickly , they will have greater incentive to release capacity , providing capacity purchasers with an alternative to purchasing pipeline interruptible service . at the same time , this proposal will provide replacement shippers whose capacity is recalled with the same advance notice and protection from bumping as is provided to interruptible shippers under the commission ' s regulations , \" the nopr said [ rm 96 - 1 - 019 ] .\nexisting gisb standards applying to capacity - release recalls were adopted in 1996 , when there was only one nomination per day at 11 : 30 a . m cct and a single non - standardized intra - day nomination , it noted . \" but the circumstances under which the recall standards were developed have markedly changed as the number of nomination opportunities have now expanded to four nomination opportunities . \"\ngiven the lack of \" consensus supporting \" gisb ' s existing recall standards and the standards - setting group ' s failure to settle the issue , the commission is forced to \" resolve the policy question regarding partial - day recalls , \" the nopr said . permitting partial - day recalls of released capacity , the commission concluded , was in keeping with the overall regulatory changes that it enacted in order 637 .\nthe natural gas supply association ( ngsa ) , which represents major producers , and houston - based dynegy let ferc know that they weren ' t big fans of partial - day recalls . these could undermine system reliability , they contend , by shutting in production and increasing scheduling problems , overruns , penalties or operational flow orders .\nbut the commission discounted these arguments . \" . . . [ t ] he use of partial - day recalls should create no additional scheduling problems since recalls will be scheduled according to the existing scheduling requirements . in effect , releasing shippers using partial - day recalls are creating another form of interruptible transportation to compete with pipeline interruptible capacity , and shippers purchasing recallable capacity should be subject to the same scheduling rules that apply to interruptible transportation . partial - day recalls will be no more likely to result in shut - in production than interruptible transactions that are subject to being bumped under the current standards , \" the nopr noted .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.643+0000", "entityId": 5031, "properties": {"text": "Subject: blue dolpin / august and september 2001\ndarren ,\ni received another invoice for september production for blue dolphin . are we responsible for transportation fees for september and future production months ? also , do the dehydration fees ( mei ) apply to aep as well ? currently , the august invoices have not been paid . if ena upstream is not responsible , let me know who / where i should forward the invoices .\n- - - - - original message - - - - -\nfrom : olsen , michael\nsent : friday , october 05 , 2001 1 : 18 pm\nto : beale , antoinette\nsubject : re : blue dolpin august 2001\nwe have no activity with blue dolphin . this has got to be aep , old hpl business .\n- - - - - original message - - - - -\nfrom : beale , antoinette\nsent : friday , october 05 , 2001 11 : 39 am\nto : olsen , michael\ncc : chance , lee ann\nsubject : blue dolpin august 2001\nmike ,\ni have received an invoice from blue dolphin for august 2001 . nothing is scheduled in ena or upstream for august production . let me know your thoughts on the matter .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.647+0000", "entityId": 5032, "properties": {"text": "Subject: volume feedback from unify to sitara\nfyi : the following is the unify to sitara bridge back schedule from the sitara team . unify can still send the files to sitara but sitara will not process during the \" no bridge back \" times listed . this list is in response to several inquiries to me regarding slow bridge - back times to sitara . hours are listed in 24 hr format central time .\n1 . monday - friday 14 : 00 - 19 : 49 hrs single thread\n2 . monday - friday 19 : 50 - 24 : 00 hrs multi thread\n3 . monday - friday 00 : 01 - 13 : 59 hrs no bridge back\n4 . sat - sunday 12 : 50 - 24 : 00 hrs multithread\n5 . sat - sunday 00 : 01 - 12 : 49 hrs no bridge back", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.652+0000", "entityId": 5033, "properties": {"text": "Subject: update - supported internet email addresses\nearlier this week , enron global technology announced the plan to decommission the use of all non - standard internet email address formats . as mentioned in the previous communication , this was the first of several communications to be sent by the enron global technology group and we will continue to provide more details in the coming weeks regarding this significant but necessary change to our email environment .\nwe are working toward a cut - off date of january 14 , 2002 , at which time we will no longer support email addresses that do not follow the standard format of firstname . lastname @ enron . com ( or firstname . middleinitial . lastname @ enron . com if your name in lotus notes or outlook has a middle initial in it ) . we understand that it will take time to make the necessary arrangements to begin using the standard email address format , but it is important to begin making the change now .\nif you have questions , please send an email to enron . messaging . administration @ enron . com .\nthank you for your support .\nenron global technology\n- - - - - original message - - - - -\nfrom : enron announcements / corp / enron @ enron on behalf of enron messaging administration\nsent : mon 10 / 15 / 2001 9 : 15 pm\nto : all enron worldwide @ enron\ncc :\nsubject : supported internet email addresses\nenron global technology is in the process of decommissioning the support for all non - standard internet email address formats . the only internet email address format that will be supported , once this effort is completed , is firstname . lastname @ enron . com . we will no longer support internet email address formats such as name @ enron . com , name @ ect . enron . com , name @ ei . enron . com ( where \" name \" is an abbreviation , acronym or alternative to an employees firstname and / or lastname ) . every enron employee has an internet email address of firstname . lastname @ enron . com and must begin making the necessary arrangements to start using this internet address format if they are not using it already .\nany new / existing application systems or business cards that reference a non - supported internet email address will need to be changed to reference the only supported firstname . lastname @ enron . com internet address format . it is important to remember to also notify any external contacts who are currently sending internet email to any non - supported internet email addresses .\nto determine what your supported internet email address is , take your name as it appears in outlook or lotus notes and replace any \" spaces \" that appear in your name with periods and append @ enron . com . for example in outlook , alan smith , robert ( firstname = robert , lastname = alan smith ) will have a supported internet email address of robert . alan . smith @ enron . com .\nimportant : if you need to update your business card ( s ) to reflect your supported internet email address , please ensure you test & confirm the delivery of internet email to your supported email address prior to updating your business cards . if you experience any issues with delivery of internet email to your supported internet email address , please contact the resolution center .\nwe will communicate further details , including the cut - off date , in the coming weeks . meanwhile , it is imperative that you begin making the necessary arrangements to change over to using the firstname . lastname @ enron . com internet email address format . if you have questions regarding this email , send an email to enron . messaging . administration @ enron . com .\nthank you for participation , cooperation and support .\nenron messaging administration", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.657+0000", "entityId": 5034, "properties": {"text": "Subject: fw : txu gas distribution wallumrod , ellen\nsubject : txu gas distribution & enbridge consumers gas\nrich & ellen :\nwe have some problems with the following two counterparties : txu gas distribution & enbridge consumers gas . for txu gas distribution , this is a unconsolidated division of txu gas company and all deals booked under txu gas distribution should be confirmed as txu gas company . i understand this is not the case . for enbridge consumers gas , this is not a valid entity . at some point it will be a correct name , but for now deals should be confirmed and booked under consumers gas co . ltd .\neach has a relatively recent deal booked to it that need to be changed as described above : sitara 1085609 for txu and 1086002 for enbridge consumers gas .\nplease advise if there is something i need to do from my end to get this issue resolved .\nthanks ,\nmax sonnonstine\nx 58261", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.661+0000", "entityId": 5035, "properties": {"text": "Subject: enrononline - change to autohedge\neffective monday , october 22 , 2001 the following changes will be made to the autohedge functionality on enrononline .\nthe volume on the hedge will now respect the minimum volume and volume increment settings on the parent product . see rules below :\n? if the transaction volume on the child is less than half of the parent ' s minimum volume no hedge will occur .\n? if the transaction volume on the child is more than half the parent ' s minimum volume but less than half the volume increment on the parent , the hedge will volume will be the parent ' s minimum volume .\n? for all other volumes , the same rounding rules will apply based on the volume increment on the parent product .\nplease see example below :\nparent ' s settings :\nminimum : 5000\nincrement : 1000\nvolume on autohedge transaction volume hedged\n1 - 2499 0\n2500 - 5499 5000\n5500 - 6499 6000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.666+0000", "entityId": 5036, "properties": {"text": "Subject: playgroup pictures from houston cow parade\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? t o p i c a - - register now to manage your mail ! http : / / www . topica . com / partner / tago 2 / register = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.670+0000", "entityId": 5037, "properties": {"text": "Subject: to : all domestic employees who participate in the enron corp\nsavings plan\noctober 26 is fast approaching !\nmark your calendar - -\nas the enron corp . savings plan moves to a new administrator !\nas a savings plan participant , friday , october 26 at 3 : 00 pm cst will be your last day to :\n? transfer investment fund balances and make contribution allocation changes\n? change your contribution rate for the november 15 th payroll deductions\n? enroll if you were hired before october 1\ntwo important reminders :\n? vanguard lifestrategy investment options are being replaced with fidelity freedom funds and ;\n? your funds will remain invested in the funds chosen as of 3 : 00 pm cst until 8 : 00 am november 20 .\nat 8 : 00 am cst , november 20 the savings plan system re - opens with great new features .\nshould you need assistance during the transition period , call ext . 3 - 7979 and press option 6 . this option will be available from 8 : 00 am cst october 29 until 5 : 00 pm cst november 19 .\nenron benefits . . . keeping pace with your lifestyle .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.675+0000", "entityId": 5038, "properties": {"text": "Subject: fw : state and county verification\ni cant figure out what to make of this . . .\n- - - - - original message - - - - -\nfrom : sheeren , ryan\nsent : tuesday , october 23 , 2001 10 : 23 am\nto : olsen , michael ; smith , george f .\nsubject : state and county verification\nthis is a follow up to the e - mail i sent earlier in th month .\nplease be advised that we have discrepancies with the state and county information for the meter no . ( s ) listed on the attached spreadsheet .\nwill you please review this spreadsheet and provide the state and county information that you may have for the listed meters .\nif you are not the scheduler for this pipe please forward this to the appropriate scheduler .\nplease do not hesitate to contact me .\nthank you ,\nryan sheeren\nenron net works\nglobal facilities\nryan . sheeren @ enron . com\n( 713 ) 853 - 5817", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.679+0000", "entityId": 5039, "properties": {"text": "Subject: fw : meter 98 - 7266 ; may 2001 texas general land fuel volume\nfyi . . . . . . . . . . . .\n- - - - - original message - - - - -\nfrom : majorwitz , buddy\nsent : tuesday , october 23 , 2001 9 : 55 am\nto : olsen , michael\ncc : wynne , rita ; schumack , sherlyn\nsubject : meter 98 - 7266 ; may 2001 texas general land fuel volume\nmike ,\nas you may recall , this meter needs to be set up for may 2001 just as it was for april 2001 . below is a screen print of what april 2001 looks like . when you had previously attempted to set this meter up , i believe it wouldn ' t let you because of one ( or both ? ) of the contracts being canceled or expired . i have inquired as to what can be done and have learned that you can contact global counterparties and have them temporarily set the contract ( s ) back up for a short period to give us time run the volumes through the system . as i am unfamiliar with this process and the global counterparty personnel , i do not have a contact for you . hopefully this is something you may have had to do in the past . since this is a call - out meter , i can enter the actual volumes in once the contracts are set up and appear for may 2001 . in case you need to enter them , the volume should be as follows :\ncontract 012 - 41500 - 05 - 002 hpl injection 16 , 149\ncontract 012 - 88494 - 05 - 001 tx genl land withdrawal 16 , 149\ni have been advised that this volume needs to be entered by the end of october if at all possible , therefore , your prompt attention to this matter would be most appreciated . if you have any questions , please don ' t hesitate to give me a call .\nbuddy\nx - 31933\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.684+0000", "entityId": 5040, "properties": {"text": "Subject: fw : filling vacancies and adding head count\nthis is now the new policy . please email justification to me when hiring replacements . consider all alternatives before automatically re - hiring and also carefully consider the level you need to hire .\nas you can see any additional hires require multiple sign - offs and will require a face to face meeting with me before proceeding .\nlet me know if you have any questions .\ntks - bob\n- - - - - original message - - - - -\nfrom : hall , bob m\nsent : thursday , october 04 , 2001 3 : 04 pm\nto : reeves , leslie ; superty , robert ; gossett , jeffrey c . ; white , stacey w . ; wynne , rita ; mcclure , mark\nsubject : filling vacancies and adding head count\nafter my recent budgeting experience , i think we need to tighten up our procedures around filling vacancies and adding head count .\nwhen filling vacancies , i would like to have each of you review the positions . i think we need to challenge ourselves and the managers\nto be as conservative as possible . i would like to sign off on all replacements . i promise not to be difficult .\nwhen adding personnel over your current budgeted number , besides having the commercial team sign - off on the addition , i am think\nthat it may have to be approved by the coo of americas ( louise ) . i am planning on meeting with her next week to discuss in detail\nhow to keep her in the loop in new hires resulting from business changes ( asset management deals or service arrangements )\nlet me know what you think .\nthanks\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.688+0000", "entityId": 5041, "properties": {"text": "Subject: tenaska iv 12 / 00\ndarren :\nplease change the demand fee for 12 / 00 on deal 529856 from $ 918 , 566 . 13 to $ 889 , 757 . 13 . we had a volume adjustment .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.693+0000", "entityId": 5042, "properties": {"text": "Subject: re : elders\nclass party\ncapture the flag\ndate : friday , oct . 26 th\ntime : 6 : 30 p . m . - ?\nlocation : angie ' s parent ' s land ( 30202 dobbin huffsmith ,\nmagnolia 77354 )\ncost : $ 3 per couple ( pitch in when you get there )\nfood : frito pie and hot dogs ( feel free to bring any\nextra snacks )\nattire : all dark clothes from head to toe ; definently not a fashion\nshow\nbring : ( opt . ) lawn chair , bug spray\ncontact : bob and angie burgess @ 281 - 296 - 0182 cell\n281 - 788 - 6353\n( john & opal singletary @ 281 - 356 - 2692 )\ninstead of going to the haunted house , we decided to do something where\neveryone could be involved . the weather is going to nice and cool , so the\nplan is to have a fire , eat and then play \" capture the flag \" . we will\ndivide into two teams and then each team hides their opponents flag\nsomewhere on their side . the goal of the game is to find your team ' s flag\nand bring it safely back to your side . of course , it will be dark and you\nhave to be sneaky , because if you get caught on your opponent ' s side , then\nyou have to wait until you are freed . it is a very fun game , but even more\nentertaining will be to see different sides of people ' s personalities . if\nyou aren ' t up to playing the game , then please feel free to hang out around\nthe fire and just yack for hours .\ngeneral location : north of 2920 , between stuebner airline and\ntomball\nstarting point : stuebner airline and 2920\ndirections : go west on 2920 , towards tomball\ngo north on 2978 , which is at a light , gas stations\non both sides\n( if you ' ve gone into town , then you ' ve\nmissed it . )\ndrive several miles and take a left at the 3 rd\nstoplight , which is\nhardin store road ( there is a big horse\nstatue at this corner )\ngo about one mile and take a right at first\nstoplight , which is\ndobbin huffsmith .\ngo about two miles , as soon as you pass two\nconvenience stores ,\nmy parent ' s house will be about the 5 th\ndriveway on the right .\nthe address is on the mailbox - 30202 dobbin\nhuffsmith .\npull in their first driveway and drive back through\nthe first gate\nand park by the barn . you ' ll see us .\nstarting point : 249 and 2920\ndirections : go north on 249 towards magnolia .\nafter you pass a long bridge , take a right on\n\" stagecoach \" , which is at a light . this road\nwill automatically turn into hardin store\nroad . stay on this road for several miles .\ntake a left on \" dobbin huffsmith \" , which is at a\nlight .\ngo about two miles , as soon as you pass two\nconvenience stores ,\nmy parent ' s house will be about the 5 th\ndriveway on the right .\nthe address is on the mailbox - 30202 dobbin\nhuffsmith .\npull in their first driveway and drive back through\nthe first gate\nand park by the barn . you ' ll see us .\nif you are coming from the woodlands , call me and i will give you directions\nfor a shorter way .\nyou may want to go to www . mapquest . com and find the location via their\nwebsite .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbob burgess\ntalon consulting , inc .\n713 - 394 - 2259\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? easy unsubscribe click here : http : / / topica . com / u / ? a 84 vnf . a 9 ivhm ? or send an email to : brcc . yf - unsubscribe @ topica . com ? this email was sent to : dfarmer @ enron . com ? ? t o p i c a - - register now to manage your mail ! ? http : / / www . topica . com / partner / tago 2 / register ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.698+0000", "entityId": 5043, "properties": {"text": "Subject: pricing needed\ncitgo refinery - corpus ship channel\nnov 01 - 10 , 000 / d\ndec 01 - 10 , 000 / d\nand a nov - dec 01\nneed el paso / valero numbers\nlike to see crosstex numbers from banquette / tejas\nsterling chemical - tx city\ndec 01 - 7 , 000 / d\nel paso / valero\nhpl - preferred delivery to balance internal systems\ntejas\ni spoke with dan burns at el paso yesterday .\nhe notionally gave me a $ 0 . 04 rate from exxon clear lake\nor comparable source . seems a bit high .\nhpl quoted us $ 0 . 025 from katy on the marathon refinery\nrfp last week but they wanted $ 0 . 25 for swing transport .\ngary talked to exxon and tejas about sourcing gas into\ncrosstex ( was cc transmission ) at banquette . exxon\napparently sells their equity gas at the tailgate of king ranch\nbecause of recent changes or elimination of their tejas\ntransportation agreement / s .\nlets discuss ,\nmk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.703+0000", "entityId": 5044, "properties": {"text": "Subject: # 9760\ntried to get fancy with your address and it came back to me !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lauri a allen / hol / aepin on 10 / 25 / 2001 01 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : daren . farmer @ enron . com\ncc :\nsubject : # 9760\ndaren -\nyour rate for meter # 9760 , highlander central point , for 1 year starting 12 / 1 / 01 delivered to equistar channelview , # 1373 is $ . 07 / mm . that price expires in 1 week , on november 1 , 2001 . let me know if you need me to refresh after that time . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.708+0000", "entityId": 5045, "properties": {"text": "Subject: fw : sitara eol bridge problem today\nfyi > > > we were also monitoring the eol to sitara bridge during this time to inform our traders and other desks of the situation and status . . . all deals bridged over by 10 : 30 ish . thanks\n- - - - - original message - - - - -\nfrom : truong , dat\nsent : thursday , october 25 , 2001 11 : 11 am\nto : moorer , torrey ; lamadrid , victor ; severson , russ ; grant , george\ncc : husain , karima ; lim , francis s . ; saluja , gurdip ; sweitzer , tara\nsubject : sitara eol bridge problem today\nthe problem we faced today was due to 2 eol deal packets ( 2098073 , 2099764 ) not having startdate and enddate . missing these 2 tibco message fields caused the bridge to bounce and resulted in the queue to build up while the bridge is starting up . ( the bridge takes 2 minute for startup ) . each time these deals are sent / resent , it continuously cause the sitarar eolbridge to restart , thus magnifying the buildup of the queue .\nthe corrective action we are taking at our end is to build a rejection logic when eol packets do not have start and / or enddate .\n- dat truong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.713+0000", "entityId": 5046, "properties": {"text": "Subject: important - to all domestic employees who participate in the enron\ncorp savings plan\nif you are a participant in the enron corp . savings plan , please read this very important message .\nwe understand that you are concerned about the timing of the move to a new savings plan administrator and the restricted access to your investment funds during the upcoming transition period scheduled to take place beginning at 3 : 00 pm cst on october 26 and ending at 8 : 00 am cst on november 20 .\nwe have been working with hewitt and northern trust since july . we understand your concerns and are committed to making this transition period as short as possible without jeopardizing the reconciliation of both the plan in total or your account in particular .\nremember that the enron corp . savings plan is an investment vehicle for your long - term financial goals . the enron plan will continue to offer a variety of investment opportunities with different levels of risk .\nas always , we advise you to review your overall investment strategy and carefully weigh the potential earnings of each investment choice against its risk before making investment decisions that are aligned with your long - term financial plans and your risk tolerance .\nfor that reason , it is critical that all trades among your investment funds be completed by 3 : 00 pm cst friday , october 26 before the transition period begins .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.718+0000", "entityId": 5047, "properties": {"text": "Subject: pipeline nominations away from the office .\nthese troubled times mandate that enron take a fresh look at our contingency plans for conducting business away from the office . bob superty has asked me to put together a survey on processes and equipment that could be used if schedulers could not get into the office and use normal business processes and resources .\nplease forward this memo and ask your respective schedulers to take a moment to fill in the requested data from your desk spreadsheets below . we would like to have all responses received before november lst .\nplease e - mail all responses to richard pinion with an updated excel spreadsheet attached . i will put together a master sheet from the individual replies .\nthx\nrichard pinion", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.723+0000", "entityId": 5048, "properties": {"text": "Subject: enbridge buys koch ' s east texas midstream assets for $ 231 m\nngi ' s daily gas price index\npublished : october 26 , 2001\nenbridge buys koch ' s east texas midstream assets for $ 231 m\nenbridge energy partners lp is buying gas gathering , treating , processing and transmission assets in east texas from koch midstream services for $ 230 . 5 million . the package includes all of the east texas system , which gathers 400 mmcf / d for delivery into the carthage hub .\nenbridge energy company president dan c . tutcher said the assets are a \" natural fit \" with enbridge ' s existing texas assets and will significantly expand the company ' s \" geographic footprint \" in the region as well as its energy commodity mix . \" we expect the acquisition to be immediately accretive to the partnership ' s distributable cash flow , and excellent prospects exist for further organic growth of the east texas system . ' '\nenbridge partners will acquire 1 , 880 miles of various diameter gathering lines , 37 compressor stations , four gas treating plants with a capacity of 595 mmcf / d and three gas processing plants with a combined capacity of 375 mmcf / d . the transaction is anticipated to close in december .\nthe intrastate system derives revenues from the purchase , transportation and resale of natural gas . additionally , when natural gas liquids fractionation spreads are positive , the option exists to extract ngls from purchased gas , thus leveraging income with incremental processing revenue , the company noted . the partnership expects that the direct commodity price exposures inherent in gas purchase and resale activities and in gas processing will be suitably mitigated through a hedging strategy .\nit forecasts gas supply available to the system will be 400 - 420 mmcf / d in 2002 . based on this estimate , the acquisition would contribute incremental ebitda of between $ 26 million and $ 32 million for the year , while distributable cash flow would increase by between $ 0 . 10 and $ 0 . 15 per unit , with further improvements anticipated in 2003 . the forecasts assume that acquisition financing will consist of 50 % debt and 50 % equity , in line with enbridge partners target long - term capital structure .\nenbridge partners also reported third quarter net income of $ 6 . 6 million , or $ 0 . 13 per common unit , compared with net income of $ 14 . 2 million , or $ 0 . 42 per unit , for the third quarter in 2000 . the decline was attributed mainly to an adjustment to oil inventory due to shippers of $ 5 . 4 million . the adjustment was the result of what enbridge said were refinements in the oil loss estimation process , as well as improvements in the accuracy of measuring oil losses while developing new software applications .\nthird quarter deliveries were 1 , 208 million b / d compared to 1 , 272 mmb / d for the same period in the prior year . the partnership expects that deliveries will increase over the remainder of the year , to average between 1 . 30 and 1 . 33 mmb / d . however , its delivery estimates for 2001 and 2002 are down from prior expectations because of lower production forecasts for conventional heavy crude oil , which stem from the current wide price differential between heavy and light crude . for 2002 , growing oil sands production is anticipated to boost full - year average deliveries to between 1 . 35 and 1 . 43 mmb / d .\n\" the partnership ' s forecast indicates that crude oil delivery volumes , which have languished for the past several quarters , will start to improve modestly in the near term with more significant increases occurring in the latter half of 2002 , \" said tutcher . \" the major contributing factor will be increased production from the immense oil sands reserves in western canada . we also anticipate further successes from our acquisition strategy , which will increase earnings and diversify our sources of income . the partnership ' s primary objective over the next two to three years is to accelerate the growth of cash distributions to unitholders . to that end , we are confident that the acquisition of the east texas facilities combined with some improvement in liquid hydrocarbon deliveries will position the partnership to consider a distribution increase in 2002 . ' '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.728+0000", "entityId": 5049, "properties": {"text": "Subject: here ' s the list , dirty , but it ' s a list , let me know who you ' re looking at and i can dig further\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.735+0000", "entityId": 5050, "properties": {"text": "Subject: credit watch list - - week of 10 / 29 / 01\nattached is a revised credit watch listing for the week of 10 / 29 / 01 . please note that co - steel , inc . was placed on \" call credit \" this week .\nif there are any personnel in your group that were not included in this distribution , please insure that they receive a copy of this report .\nto add additional people to this distribution , or if this report has been sent to you in error , please contact veronica espinoza at x 6 - 6002 .\nfor other questions , please contact jason r . williams at x 5 - 3923 , veronica espinoza at x 6 - 6002 or darren vanek at x 3 - 1436 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.742+0000", "entityId": 5051, "properties": {"text": "Subject: need deal for march 2000\ndaren ,\nsherlyn schumack suggested that i contact you with this matter . i am working on some old hpl issues and have come across a deal that was initially set up , # 208101 , but this deal was subsequently killed ( no reason found ) . this deal was copied from # 205533 which was good through 2 / 29 / 00 . please set up a valid deal for march 2000 just like either one of these deals whereby hpl is buying gas from ena on tejas at the same points . this deal is needed because it leads to a valid sale to reliant energy . please note that reliant has been invoiced and settlement has already been made .\nif i have not provided enough information or if you have any questions , please do not hesitate to give me a call . as i need to resolve this issue as soon as possible , your prompt attention to this matter would be most appreciated .\nbuddy\nx - 31933", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.748+0000", "entityId": 5052, "properties": {"text": "Subject: re : tglo status\ncost centers 11814 and 27117 are rolling to texas gas trading .\n- - - - - original message - - - - -\nfrom : coffey jr . , jim\nsent : tuesday , october 30 , 2001 10 : 05 am\nto : parker , megan ; boyt , eric ; farmer , daren j .\ncc : bryan , gary ; pond , jim ; helton , susan ; east , laynie ; roberts , linda\nsubject : re : tglo status\nmegan\nas i mentioned to you yesterday , it still looks like the volumes for gas delivered to tx glo do not have linda robert ' s origination fee deducted . do we need to execute a pma with txglo to deduct those volumes from the next delievery ?\nalso isn ' t there an entry that is missing in your file to capture the $ cost of gas for the gas delivered to txglo ? is that being captured in unify or is it being manually entered by gas accounting ?\ndarren\ndo we need to execute a seperate deal ticket for the origination deduct ?\nsusan / laynie\nwhat busines unit are these cost centers rolling up to ( 11814 coffey jr . , jim\nsubject : tglo status\neric :\ni reviewed the gas deals on franks ' spreadsheet and they agree with what is in sitara . as soon as i have the october gas numbers , i will forward them to you .\nattached is a spreadsheet of the tglo deals booked to the gl to help you with our current settlement position . it is divided by debit / credit entries . when the sales are booked , a debit hits the customer account to create the open sale to apply the cash to and a credit hits the revenue account ( 40004000 third party ; 40005000 intercompany ) for the profit center .\nbelow is a summary of where we are on the sale dollars to egm . i have already sent an email to risk to update the demand fees for the prior months and to book aug and sept crude . i will wait for the go ahead from frank before i final them to the gl . let me know if you have any questions .\nmegan\nstatus of sales to egm\ncleared invoices $ 3 , 905 , 963 . 20\nopen invoices $ 1 , 177 , 587 . 60\nto be booked $ 3 , 093 , 424 . 22\n$ 8 , 176 , 975 . 55\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.753+0000", "entityId": 5053, "properties": {"text": "Subject: monthly budget vs . actual comparison reports - texas\ndaren ,\nattached are the texas monthly budget vs . actual comparison reports for june , july , & august 2001 .\nplease contact me with any questions .\nthanks ,\nelizabeth\nelizabeth webb\nelizabeth . webb @ enron . com\n713 - 345 - 1694", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.757+0000", "entityId": 5054, "properties": {"text": "Subject: fw : ap wire college station , texas\n- - - - - original message - - - - -\nfrom : beard , jaime\nsent : tuesday , october 30 , 2001 1 : 16 pm\nto : glover , rusty\nsubject : fw : ap wire college station , texas\n- - - - - original message - - - - -\nfrom : teague , john\nsent : tuesday , october 30 , 2001 1 : 13 pm\nto : bennett , alex ; newsom , boon ; herrera , ignacio ; pierce , brian ; warfield , dan ; beard , jaime ; thomas , ron ( r . t . ) ; vernon , billy ; ryan lewis ( e - mail ) ; ross melton ( e - mail ) ; grandpa ( e - mail ) ; jeff woodall ( e - mail ) ; fuzzy ( e - mail ) ; fluffy ( e - mail )\nsubject : fw : ap wire college station , texas\nap - college station texas - - - -\ntexas a & m football practice was delayed on monday for nearly two hours at kyle field . one of the players , while on his way to the locker room happened to look down and notice a suspicious looking , unknown white powdery substance on the practice field .\nhead coach r . c . slocum immediately suspended practice while the fbi was called in to investigate . after a complete field analysis , the fbi determined that the white substance unknown to the players was the goal line .\npractice was resumed when fbi special agents decided that the team would not be likely to encounter the substance again .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.762+0000", "entityId": 5055, "properties": {"text": "Subject: 10 % off ! our gift to you !\n[ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] [ image ] sears . com [ image ] gifts for your family from sears [ image ] sears customer appreciation sale take 10 % off everything * , even sale prices ! save an additional 10 % on everything * , even low sale prices ! this is your time to shop , literally ! four days only ? wednesday , october 31 through saturday , november 3 . [ image ] 10 % off everything [ image ] [ image ] sears . com where else ? [ image ] [ image ] [ image ] click to shop now ! [ image ] appliances appliances electronics electronics fitness & recreation fitness & recreation [ image ] computers & office computers & office tools tools lawn & garden lawn & garden [ image ] baby me babyme housewares housewares jewelry & watches jewelry & watches [ image ] [ image ] [ image ] [ image ] [ image ] wishbook [ image ] hurry in to wishbook . com and save 10 % * * thru 11 / 3 ! [ image ] room for kids optical [ image ] now through november 6 take 10 % * * * off any order at searsroomforkids . com - the best place to shop for all things kids ! $ 99 . 99 eyeglasses . any prescription . hundreds of frames available . to take advantage of this special offer from sears optical click here ! [ image ] * offer valid 10 / 31 ? 11 / 3 only . savings off regular , sale and clearance prices apply to merchandise only . not valid on exceptional values , outlet store purchases , catalog orders , shop at home catalog websites , calphalon\n, bose\n, maytag\n, gemini ? , neptune ? and neptune superstack ? , maytag\nwide by side ? , swiss army , casio wrist camera , introductory offers , special purchases , bf goodrich at / ko tires , automotive services , hearing aids , optical exam fees , licensed businesses , license business websites , ? sears presents ? websites , repair services , parts , installed home improvements and maintenance agreements . don ? t worry , your discount will appear on your order confirmation page . * * save 10 % off any order placed on wishbook . com through 11 / 3 / 01 . telephone orders are not included . discount applies to merchandise only , not shipping and handling or taxes . may not be used with other discounts or offers . * * * valid through november 6 , 2001 . telephone and mail orders are not included . discount applies to merchandise only , not shipping and handling or taxes . enter coupon code seml 03 when you check out to receive this discount . if you would no longer like to receive e - mailed special events information , sales notifications , or other messages from sears . com , please click here and follow the \" unsubscribe \" instructions . or reply to this email with \" unsubscribe \" in the subject line . your e - mail address will be removed within 5 business days from our email marketing list . thank you ! [ image ]\nmessage - id :\n[ image ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.766+0000", "entityId": 5056, "properties": {"text": "Subject: re : inquiry ?\nbecky ,\ncan we get a copy of this filing ? i have a meeting with mitchell next wednesday and i would like to know more about the filing and will find out more about the pipeline . these are the very things we should be protesting as we move forward with our new business in texas .\nif you will advise me what additional information you will need for the protest , our desk will work to assist you in gathering the data .\n- - - - - original message - - - - -\nfrom : martin , thomas a .\nsent : tuesday , october 30 , 2001 7 : 17 am\nto : farmer , daren j . ; redmond , brian ; bryan , gary\nsubject : fw : inquiry ?\ni am not familiar with this system but it seems philosophically we should protest even though we don ' t currently do any business on this pipeline .\nwhat do you guys think ?\ntom\n- - - - - original message - - - - -\nfrom : cantrell , rebecca w .\nsent : monday , october 29 , 2001 6 : 17 pm\nto : martin , thomas a .\nsubject : inquiry ?\ntom , does your group have any dealings with acacia natural gas ? it ' s a texas intrastate owned by mitchell . they have made a filing for approval of section 311 rates for interruptible service and they have set up their operating conditions so their affiliate will get higher priority over other parties who are paying the same rate ( priority within the same rate will be based on whoever has the earliest transportation agreement ) .\nwould appreciate hearing from you in the next day or so . comments are due on the filing by nov . 7 th , and if we want to protest , we ' ll have to get our facts together .\nthanks .\nbecky .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.771+0000", "entityId": 5057, "properties": {"text": "Subject: re : tglo status\nsorry bout the first comment , did not totally understand . . . we will handle this via the oa process , where i ' m working with the oa group that will allow us a bucket of income or loss and we will run this through tom ' s p parker , megan ; boyt , eric ; farmer , daren j .\ncc : bryan , gary ; pond , jim ; helton , susan ; roberts , linda\nsubject : re : tglo status\ncost centers 11814 and 27117 are rolling to texas gas trading .\n- - - - - original message - - - - -\nfrom : coffey jr . , jim\nsent : tuesday , october 30 , 2001 10 : 05 am\nto : parker , megan ; boyt , eric ; farmer , daren j .\ncc : bryan , gary ; pond , jim ; helton , susan ; east , laynie ; roberts , linda\nsubject : re : tglo status\nmegan\nas i mentioned to you yesterday , it still looks like the volumes for gas delivered to tx glo do not have linda robert ' s origination fee deducted . do we need to execute a pma with txglo to deduct those volumes from the next delievery ?\nalso isn ' t there an entry that is missing in your file to capture the $ cost of gas for the gas delivered to txglo ? is that being captured in unify or is it being manually entered by gas accounting ?\ndarren\ndo we need to execute a seperate deal ticket for the origination deduct ?\nsusan / laynie\nwhat busines unit are these cost centers rolling up to ( 11814 coffey jr . , jim\nsubject : tglo status\neric :\ni reviewed the gas deals on franks ' spreadsheet and they agree with what is in sitara . as soon as i have the october gas numbers , i will forward them to you .\nattached is a spreadsheet of the tglo deals booked to the gl to help you with our current settlement position . it is divided by debit / credit entries . when the sales are booked , a debit hits the customer account to create the open sale to apply the cash to and a credit hits the revenue account ( 40004000 third party ; 40005000 intercompany ) for the profit center .\nbelow is a summary of where we are on the sale dollars to egm . i have already sent an email to risk to update the demand fees for the prior months and to book aug and sept crude . i will wait for the go ahead from frank before i final them to the gl . let me know if you have any questions .\nmegan\nstatus of sales to egm\ncleared invoices $ 3 , 905 , 963 . 20\nopen invoices $ 1 , 177 , 587 . 60\nto be booked $ 3 , 093 , 424 . 22\n$ 8 , 176 , 975 . 55\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.776+0000", "entityId": 5058, "properties": {"text": "Subject: hplc - four square 5 / 01\ndarren :\ni have another hplc issue . . . i received an invoice from four square gas company today for may 2001 gas that was never paid . they have invoiced 1 , 654 at 4 . 825 ( hsc - . 085 ) at meter 986887 . i did not see a deal in unify , so i went to pops to find the meter . i found that the gas was pathed to the strangers gas contract . historically , hplc has always purchased the gas at this meter from four square , but it doesn ' t look like a deal was ever entered for may . the april deal number was 695469 . did hplc purchase this gas in may ?\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.780+0000", "entityId": 5059, "properties": {"text": "Subject: hplc / tglo deals\ndarren :\ni have a request from jim coffey that i hope you can help me with . he wants to know the cost of supplying the gas to the glo . i can follow the ena deals in path manager , but i am having a hard time with the hplc deals . it looks like we were using gas from the 215 contract . i can ' t tell , though , how the gas got to the 215 . can you tell me where we got the supply for hplc to sell and at what price ? i need to know for jan through may . the glo deal numbers are below , if you need them .\nmegan\njan 01 547201\nfeb 01 591307\nmar 01 640685\napr 01 692167\nmay 01 755787", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.784+0000", "entityId": 5060, "properties": {"text": "Subject: re : need deal for march 2000\ndaren ,\nyes , the gas on deal 210722 is going to reliant , however , it needs to be brokered instead of service as tejas does not show any transport . i don ' t know if it can be changed or if a new deal needs to be set up .\nthanks ,\nbuddy\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , october 31 , 2001 10 : 49 am\nto : majorwitz , buddy\ncc : olsen , michael ; schumack , sherlyn\nsubject : re : need deal for march 2000\nisn ' t the deal pathed from exxon king ranch ( deal 210722 ) to reliant ?\nd\n- - - - - original message - - - - -\nfrom : majorwitz , buddy\nsent : tuesday , october 30 , 2001 4 : 25 pm\nto : farmer , daren j .\ncc : olsen , michael ; schumack , sherlyn\nsubject : need deal for march 2000\ndaren ,\nsherlyn schumack suggested that i contact you with this matter . i am working on some old hpl issues and have come across a deal that was initially set up , # 208101 , but this deal was subsequently killed ( no reason found ) . this deal was copied from # 205533 which was good through 2 / 29 / 00 . please set up a valid deal for march 2000 just like either one of these deals whereby hpl is buying gas from ena on tejas at the same points . this deal is needed because it leads to a valid sale to reliant energy . please note that reliant has been invoiced and settlement has already been made .\nif i have not provided enough information or if you have any questions , please do not hesitate to give me a call . as i need to resolve this issue as soon as possible , your prompt attention to this matter would be most appreciated .\nbuddy\nx - 31933", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.789+0000", "entityId": 5061, "properties": {"text": "Subject: fw : ena origination track\n- - - - - original message - - - - -\nfrom : buckley , karen\nsent : tuesday , october 30 , 2001 6 : 16 pm\nto : robinson , mitch ; duran , w . david ; tricoli , carl ; bills , lisa ; mcmichael jr . , ed ; gaskill , chris ; smith , george f . ; perry , todd\nsubject : ena origination track\nall ,\nena is building an ena origination track similar to that of the trading track . originators on both the gas & power side at the vp level have bought into the development of this program . the management of the program will be the originators themselves under louise kitchen . there will be structured rotations for the analysts & associates who join this program with a clear objective in mind - final rotation will be in origination .\nthe below people , according to our records , are currently in your groups . these candidates have been identified as they have completed at least one relevant rotation and / or have performed well in the previous prc . prior to contacting the below analysts & associates , i want to ensure your buy - in / recommendation of these candidates . all selected candidates would be formally interviewed by the origination management team ( both gas & power ) prior to joining the program .\ni would be grateful for your early response as we are looking to schedule a date in november to commence interviews .\nif you have any questions , please let me know and i will be happy to explain the program in greater detail .\nkind regards ,\nkaren\nena - hr\nx 54667\nassociate / analyst current manager\njames marks mitchell robinson\njohn lang dave duran\nkristin quinn carl tricoli\ngregory martin carl tricoli\njonathan hoff lloyd miller\nmarcus edmonds lisa bills\nbrian kille lisa bills\nalejandro hernandez ed mcmichael\nloftus fitwater ed mcmichael\nsantiago garcia ed mcmichael\ncatalina cardens chris gaskill\nsachin gandhi chris gaskill\njustin o ' malley chris gaskill\nmichael olsen george smith\njeffrey oh todd perry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.794+0000", "entityId": 5062, "properties": {"text": "Subject: bcp seat assignments\nall :\nattached you will find a list that reflects your seat assignments for business continuity planning ( bcp ) . these seats are located on the 30 th and 31 st floors of enron center north ( ecn ) . as previously communicated , you will report to these designated seats in the event of an outage in ecs .\nthe exception to this is as follows :\nif your seat assignment is located on the 31 st floor , you will report to your original location that you occupied prior to your move into ecs . this will hold true until the monday after thanksgiving , as we will have the 31 st floor seats set up at that time .\ntesting :\nonce you have moved to ecs , if you would like to test your bcp location , you will be able to test your seat for functionality every thursday from 3 - 6 pm . testing is not required , but is highly recommended .\nif anyone has any questions or concerns about these procedures , please feel free to contact me at any time .\nregards ,\nstephen r . harrington\ntechnical project manager , ecs project\nenron net works , llc\nw : 713 - 853 - 7619\np : 877 - 651 - 7361\nc : 713 - 444 - 7279\nstephen . harrington @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.798+0000", "entityId": 5063, "properties": {"text": "Subject: re : texas logistics info .\ndaren ,\nhave you had a chance to complete the texas logistics information for the powerpoint presentation ? you can just write what you would like me to say in a reply to this email . i can put the text in the presentation . i need this info . asap so that i can send the presentation to all of the logistics managers .\nthanks ,\nelizabeth\n- - - - - original message - - - - -\nfrom : webb , elizabeth\nsent : tuesday , october 30 , 2001 9 : 03 am\nto : farmer , daren j .\ncc : calcagno , suzanne\nsubject : texas logistics info .\ndaren ,\ni need some general information from you about texas logistics for the logistics powerpoint presentation . can you please get this info . to me by tomorrow , wednesday , october 31 at 5 pm ? the slide that i need you to complete is # 36 - texas gas logistics information .\nthanks ,\nelizabeth\n>\nelizabeth webb\nelizabeth . webb @ enron . com\n713 - 345 - 1694", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.803+0000", "entityId": 5064, "properties": {"text": "Subject: fw : on call ( revised )\ncorrection on west desk\nbrandee jackson\n713 - 345 - 4013\nw e e k e n d s y s t e m s a v a i l a b i l i t y\nf o r\nnovember 2 , 2001 5 : 00 pm through november 5 , 2001 12 : 00 am\nscheduled system outages :\nardmore data center - facility operations : no scheduled outages .\nazurix : no scheduled outages .\neb 34 data center - facility operations : no scheduled outages .\nedi :\nimpact : corp\ntime : fri 11 / 2 / 2001 at 12 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 4 : 00 : 00 am ct\nfri 11 / 2 / 2001 at 10 : 00 : 00 am pt thru sun 11 / 4 / 2001 at 2 : 00 : 00 am pt\nfri 11 / 2 / 2001 at 6 : 00 : 00 pm london thru sun 11 / 4 / 2001 at 10 : 00 : 00 am london\noutage : edi _ qa oracle database upgrade\nenvironments impacted : corp\npurpose : to comply with corporate standardization\nbackout : restore the database to its original state\ncontact ( s ) : maria santiago 713 - 345 - 7354\njohn kratzer 713 - 345 - 7672\nkaren o ' grady 713 - 345 - 7149\nees :\nimpact : ees\ntime : thu 11 / 1 / 2001 at 6 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 12 : 00 : 00 am ct\nthu 11 / 1 / 2001 at 4 : 00 : 00 pm pt thru sat 11 / 3 / 2001 at 10 : 00 : 00 pm pt\nfri 11 / 2 / 2001 at 12 : 00 : 00 am london thru sun 11 / 4 / 2001 at 6 : 00 : 00 am london\noutage : migrate eeshou - fslto san\nenvironments impacted : ees\npurpose : new cluster server is on san and san backups\nthis will provide better performance , server redundancy , and backups should complete without problems .\nbackout : take new server offline ,\nbring up old servers\nchange users profiles back to original settings .\ncontact ( s ) : roderic h gerlach 713 - 345 - 3077\nenron center south data center - facility operations : no scheduled outages\nenron north american lans :\nimpact : ardmore\ntime : sat 11 / 3 / 2001 at 10 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 2 : 00 : 00 am ct\nsat 11 / 3 / 2001 at 8 : 00 : 00 pm pt thru sun 11 / 4 / 2001 at 12 : 00 : 00 am pt\nsun 11 / 4 / 2001 at 4 : 00 : 00 am london thru sun 11 / 4 / 2001 at 8 : 00 : 00 am london\noutage : add redundant connections between ard - cor - ccxl / 2 and ena - cxl / 2 - ard\nenvironments impacted : all\npurpose : increased bandwidth / resiliency available on the man\nbackout : put original equipment / configs back in place\ncontact ( s ) : dennis mcgough 713 - 345 - 3143\nimpact : ebs\ntime : sat 11 / 3 / 2001 at 1 : 00 : 00 pm ct thru sat 11 / 3 / 2001 at 4 : 00 : 00 pm ct\nsat 11 / 3 / 2001 at 11 : 00 : 00 am pt thru sat 11 / 3 / 2001 at 2 : 00 : 00 pm pt\nsat 11 / 3 / 2001 at 7 : 00 : 00 pm london thru sat 11 / 3 / 2001 at 10 : 00 : 00 pm london\noutage : relocate ebs portland servers and switch pdx - 3 wtcpl - swxl\nenvironments impacted : ebs\npurpose : existing equipment rack removed in order to install new phone system .\nbackout : none . space must be vacated .\ncontact ( s ) : chris shirkoff 503 - 778 - 0920 8774937918 @ skytel . com\ndave steiner 503 - 703 - 1553\nfield services : no scheduled outages .\ninternet : no scheduled outages .\nmessaging :\nimpact : corp notes\ntime : fri 11 / 2 / 2001 at 9 : 00 : 00 pm ct thru sat 11 / 3 / 2001 at 1 : 00 : 00 am ct\nfri 11 / 2 / 2001 at 7 : 00 : 00 pm pt thru fri 11 / 2 / 2001 at 11 : 00 : 00 pm pt\nsat 11 / 3 / 2001 at 3 : 00 : 00 am london thru sat 11 / 3 / 2001 at 7 : 00 : 00 am london\noutage : cnotes server reboots\nenvironments impacted : all users on any of the mailservers listed below\npurpose : scheduled @ 2 week interval\nbackout : make sure server comes up .\ncontact ( s ) : trey rhodes ( 713 ) 345 - 7792\nimpact : ei\ntime : fri 11 / 2 / 2001 at 9 : 00 : 00 pm ct thru sat 11 / 3 / 2001 at 1 : 00 : 00 am ct\nfri 11 / 2 / 2001 at 7 : 00 : 00 pm pt thru fri 11 / 2 / 2001 at 11 : 00 : 00 pm pt\nsat 11 / 3 / 2001 at 3 : 00 : 00 am london thru sat 11 / 3 / 2001 at 7 : 00 : 00 am london\noutage : ei notes server maintenance\nenvironments impacted : ei local / domestic / foreign sites\npurpose : scheduled @ 2 week interval\nbackout : n / a\ncontact ( s ) : david ricafrente 713 - 646 - 7741\nimpact : ees\ntime : fri 11 / 2 / 2001 at 8 : 30 : 00 pm ct thru fri 11 / 2 / 2001 at 11 : 30 : 00 pm ct\nfri 11 / 2 / 2001 at 6 : 30 : 00 pm pt thru fri 11 / 2 / 2001 at 9 : 30 : 00 pm pt\nsat 11 / 3 / 2001 at 2 : 30 : 00 am london thru sat 11 / 3 / 2001 at 5 : 30 : 00 am london\noutage : ees notes server reboots\nenvironments impacted : all users on any of the mailservers listed below\npurpose : scheduled @ 2 week interval on lst and the 3 rd friday of each month .\nbackout :\ncontact ( s ) : dalak malik 713 - 345 - 8219\nmarket data : no scheduled outages .\nnt : no scheduled outages .\nos / 2 : no scheduled outages .\nother :\nimpact :\ntime : sat 11 / 3 / 2001 at 9 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 12 : 00 : 00 am ct\nsat 11 / 3 / 2001 at 7 : 00 : 00 pm pt thru sat 11 / 3 / 2001 at 10 : 00 : 00 pm pt\nsun 11 / 4 / 2001 at 3 : 00 : 00 am london thru sun 11 / 4 / 2001 at 6 : 00 : 00 am london\noutage : migrate ebs common data to corp environment and update dfs\nenvironments impacted : any user accessing o : ebs\npurpose : will be migrating all common data from o : ebs houston and o : ebs portland to corp servers in houston and their corresponding ebs servers will be decommissioned . o : ebs shepherd and o : ebs loopcentral will also be migrated and their corresponding ebs servers will be decommissioned . o : ebs will be removed from dfs and the dfs entries will be re - inputed in order to decommission the ebs dfs server . this needs to be done as part of the decommissioning of the ebs environment .\nbackout : leave ebs data servers and dfs servers online and re - input the dfs links .\ncontact ( s ) : mark wolf 713 - 345 - 6389\nimpact : hr\ntime : sat 11 / 3 / 2001 at 8 : 00 : 00 am ct thru sat 11 / 3 / 2001 at 11 : 00 : 00 am ct\nsat 11 / 3 / 2001 at 6 : 00 : 00 am pt thru sat 11 / 3 / 2001 at 9 : 00 : 00 am pt\nsat 11 / 3 / 2001 at 2 : 00 : 00 pm london thru sat 11 / 3 / 2001 at 5 : 00 : 00 pm london\noutage : replace cd - rom in hr - db - 5\nenvironments impacted : hr lan\npurpose : the cd - rom drive has failed and needs to be replaced .\nbackout :\ncontact ( s ) : brandon bangerter 713 - 345 - 4904\nmark calkin 713 - 345 - 7831\nraj perubhatla 713 - 345 - 8016 281 - 788 - 9307\nimpact : nahou - rem 2\ntime : sun 11 / 4 / 2001 at 1 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 1 : 30 : 00 pm ct\nsun 11 / 4 / 2001 at 11 : 00 : 00 am pt thru sun 11 / 4 / 2001 at 11 : 30 : 00 am pt\nsun 11 / 4 / 2001 at 7 : 00 : 00 pm london thru sun 11 / 4 / 2001 at 7 : 30 : 00 pm london\noutage : upgrade nahou - rem 2 server with latest remedy patch\nenvironments impacted : remedy reporting server\npurpose : plug a memory leak in the current version patch .\nbackout : remove the new executable and rename the arserver . old to arserver . exe\ncontact ( s ) : james weaver 713 - 345 - 4810\nsitara : no scheduled outages .\nsun / oss system : no scheduled outages .\ntelephony : no scheduled outages\nterminal server : no scheduled outages .\nunify : no scheduled outages .\nfor assistance\n( 713 ) 853 - 1411 enron resolution center\nspecific help :\ninformation risk management ( 713 ) 853 - 5536\nsap / isc ( 713 ) 345 - 4727\nunify on - call ( 713 ) 284 - 3757 [ pager ]\nsitara on - call ( 713 ) 288 - 0101 [ pager ]\nrus / gops / geotools / aprs ( 713 ) 639 - 9726 [ pager ]\noss / ua 4 / tarp ( 713 ) 285 - 3165 [ pager ]\ncpr ( 713 ) 284 - 4175 [ pager ]\nedi support ( 713 ) 327 - 3893 [ pager ]\nees help desk ( 713 ) 853 - 9797 or ( 888 ) 853 - 9797\ntds - trader decision support on - call ( 713 ) 327 - 6032 [ pager ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.807+0000", "entityId": 5065, "properties": {"text": "Subject: on call\nbrandee jackson\n713 - 345 - 4013\nw e e k e n d s y s t e m s a v a i l a b i l i t y\nf o r\nnovember 2 , 2001 5 : 00 pm through november 5 , 2001 12 : 00 am\nscheduled system outages :\nardmore data center - facility operations : no scheduled outages .\nazurix : no scheduled outages .\neb 34 data center - facility operations : no scheduled outages .\nedi :\nimpact : corp\ntime : fri 11 / 2 / 2001 at 12 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 4 : 00 : 00 am ct\nfri 11 / 2 / 2001 at 10 : 00 : 00 am pt thru sun 11 / 4 / 2001 at 2 : 00 : 00 am pt\nfri 11 / 2 / 2001 at 6 : 00 : 00 pm london thru sun 11 / 4 / 2001 at 10 : 00 : 00 am london\noutage : edi _ qa oracle database upgrade\nenvironments impacted : corp\npurpose : to comply with corporate standardization\nbackout : restore the database to its original state\ncontact ( s ) : maria santiago 713 - 345 - 7354\njohn kratzer 713 - 345 - 7672\nkaren o ' grady 713 - 345 - 7149\nees :\nimpact : ees\ntime : thu 11 / 1 / 2001 at 6 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 12 : 00 : 00 am ct\nthu 11 / 1 / 2001 at 4 : 00 : 00 pm pt thru sat 11 / 3 / 2001 at 10 : 00 : 00 pm pt\nfri 11 / 2 / 2001 at 12 : 00 : 00 am london thru sun 11 / 4 / 2001 at 6 : 00 : 00 am london\noutage : migrate eeshou - fslto san\nenvironments impacted : ees\npurpose : new cluster server is on san and san backups\nthis will provide better performance , server redundancy , and backups should complete without problems .\nbackout : take new server offline ,\nbring up old servers\nchange users profiles back to original settings .\ncontact ( s ) : roderic h gerlach 713 - 345 - 3077\nenron center south data center - facility operations : no scheduled outages\nenron north american lans :\nimpact : ardmore\ntime : sat 11 / 3 / 2001 at 10 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 2 : 00 : 00 am ct\nsat 11 / 3 / 2001 at 8 : 00 : 00 pm pt thru sun 11 / 4 / 2001 at 12 : 00 : 00 am pt\nsun 11 / 4 / 2001 at 4 : 00 : 00 am london thru sun 11 / 4 / 2001 at 8 : 00 : 00 am london\noutage : add redundant connections between ard - cor - ccxl / 2 and ena - cxl / 2 - ard\nenvironments impacted : all\npurpose : increased bandwidth / resiliency available on the man\nbackout : put original equipment / configs back in place\ncontact ( s ) : dennis mcgough 713 - 345 - 3143\nimpact : ebs\ntime : sat 11 / 3 / 2001 at 1 : 00 : 00 pm ct thru sat 11 / 3 / 2001 at 4 : 00 : 00 pm ct\nsat 11 / 3 / 2001 at 11 : 00 : 00 am pt thru sat 11 / 3 / 2001 at 2 : 00 : 00 pm pt\nsat 11 / 3 / 2001 at 7 : 00 : 00 pm london thru sat 11 / 3 / 2001 at 10 : 00 : 00 pm london\noutage : relocate ebs portland servers and switch pdx - 3 wtcpl - swxl\nenvironments impacted : ebs\npurpose : existing equipment rack removed in order to install new phone system .\nbackout : none . space must be vacated .\ncontact ( s ) : chris shirkoff 503 - 778 - 0920 8774937918 @ skytel . com\ndave steiner 503 - 703 - 1553\nfield services : no scheduled outages .\ninternet : no scheduled outages .\nmessaging :\nimpact : corp notes\ntime : fri 11 / 2 / 2001 at 9 : 00 : 00 pm ct thru sat 11 / 3 / 2001 at 1 : 00 : 00 am ct\nfri 11 / 2 / 2001 at 7 : 00 : 00 pm pt thru fri 11 / 2 / 2001 at 11 : 00 : 00 pm pt\nsat 11 / 3 / 2001 at 3 : 00 : 00 am london thru sat 11 / 3 / 2001 at 7 : 00 : 00 am london\noutage : cnotes server reboots\nenvironments impacted : all users on any of the mailservers listed below\npurpose : scheduled @ 2 week interval\nbackout : make sure server comes up .\ncontact ( s ) : trey rhodes ( 713 ) 345 - 7792\nimpact : ei\ntime : fri 11 / 2 / 2001 at 9 : 00 : 00 pm ct thru sat 11 / 3 / 2001 at 1 : 00 : 00 am ct\nfri 11 / 2 / 2001 at 7 : 00 : 00 pm pt thru fri 11 / 2 / 2001 at 11 : 00 : 00 pm pt\nsat 11 / 3 / 2001 at 3 : 00 : 00 am london thru sat 11 / 3 / 2001 at 7 : 00 : 00 am london\noutage : ei notes server maintenance\nenvironments impacted : ei local / domestic / foreign sites\npurpose : scheduled @ 2 week interval\nbackout : n / a\ncontact ( s ) : david ricafrente 713 - 646 - 7741\nimpact : ees\ntime : fri 11 / 2 / 2001 at 8 : 30 : 00 pm ct thru fri 11 / 2 / 2001 at 11 : 30 : 00 pm ct\nfri 11 / 2 / 2001 at 6 : 30 : 00 pm pt thru fri 11 / 2 / 2001 at 9 : 30 : 00 pm pt\nsat 11 / 3 / 2001 at 2 : 30 : 00 am london thru sat 11 / 3 / 2001 at 5 : 30 : 00 am london\noutage : ees notes server reboots\nenvironments impacted : all users on any of the mailservers listed below\npurpose : scheduled @ 2 week interval on lst and the 3 rd friday of each month .\nbackout :\ncontact ( s ) : dalak malik 713 - 345 - 8219\nmarket data : no scheduled outages .\nnt : no scheduled outages .\nos / 2 : no scheduled outages .\nother :\nimpact :\ntime : sat 11 / 3 / 2001 at 9 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 12 : 00 : 00 am ct\nsat 11 / 3 / 2001 at 7 : 00 : 00 pm pt thru sat 11 / 3 / 2001 at 10 : 00 : 00 pm pt\nsun 11 / 4 / 2001 at 3 : 00 : 00 am london thru sun 11 / 4 / 2001 at 6 : 00 : 00 am london\noutage : migrate ebs common data to corp environment and update dfs\nenvironments impacted : any user accessing o : ebs\npurpose : will be migrating all common data from o : ebs houston and o : ebs portland to corp servers in houston and their corresponding ebs servers will be decommissioned . o : ebs shepherd and o : ebs loopcentral will also be migrated and their corresponding ebs servers will be decommissioned . o : ebs will be removed from dfs and the dfs entries will be re - inputed in order to decommission the ebs dfs server . this needs to be done as part of the decommissioning of the ebs environment .\nbackout : leave ebs data servers and dfs servers online and re - input the dfs links .\ncontact ( s ) : mark wolf 713 - 345 - 6389\nimpact : hr\ntime : sat 11 / 3 / 2001 at 8 : 00 : 00 am ct thru sat 11 / 3 / 2001 at 11 : 00 : 00 am ct\nsat 11 / 3 / 2001 at 6 : 00 : 00 am pt thru sat 11 / 3 / 2001 at 9 : 00 : 00 am pt\nsat 11 / 3 / 2001 at 2 : 00 : 00 pm london thru sat 11 / 3 / 2001 at 5 : 00 : 00 pm london\noutage : replace cd - rom in hr - db - 5\nenvironments impacted : hr lan\npurpose : the cd - rom drive has failed and needs to be replaced .\nbackout :\ncontact ( s ) : brandon bangerter 713 - 345 - 4904\nmark calkin 713 - 345 - 7831\nraj perubhatla 713 - 345 - 8016 281 - 788 - 9307\nimpact : nahou - rem 2\ntime : sun 11 / 4 / 2001 at 1 : 00 : 00 pm ct thru sun 11 / 4 / 2001 at 1 : 30 : 00 pm ct\nsun 11 / 4 / 2001 at 11 : 00 : 00 am pt thru sun 11 / 4 / 2001 at 11 : 30 : 00 am pt\nsun 11 / 4 / 2001 at 7 : 00 : 00 pm london thru sun 11 / 4 / 2001 at 7 : 30 : 00 pm london\noutage : upgrade nahou - rem 2 server with latest remedy patch\nenvironments impacted : remedy reporting server\npurpose : plug a memory leak in the current version patch .\nbackout : remove the new executable and rename the arserver . old to arserver . exe\ncontact ( s ) : james weaver 713 - 345 - 4810\nsitara : no scheduled outages .\nsun / oss system : no scheduled outages .\ntelephony : no scheduled outages\nterminal server : no scheduled outages .\nunify : no scheduled outages .\nfor assistance\n( 713 ) 853 - 1411 enron resolution center\nspecific help :\ninformation risk management ( 713 ) 853 - 5536\nsap / isc ( 713 ) 345 - 4727\nunify on - call ( 713 ) 284 - 3757 [ pager ]\nsitara on - call ( 713 ) 288 - 0101 [ pager ]\nrus / gops / geotools / aprs ( 713 ) 639 - 9726 [ pager ]\noss / ua 4 / tarp ( 713 ) 285 - 3165 [ pager ]\ncpr ( 713 ) 284 - 4175 [ pager ]\nedi support ( 713 ) 327 - 3893 [ pager ]\nees help desk ( 713 ) 853 - 9797 or ( 888 ) 853 - 9797\ntds - trader decision support on - call ( 713 ) 327 - 6032 [ pager ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.812+0000", "entityId": 5066, "properties": {"text": "Subject: waha hubco\nto all :\nthe attached memo summarizes our discussions regarding waha and proposes a way forward with respect to either the nng or t ' w options . . i will arrange a meeting to discuss your comments after you have had a chance to review .\nthanks ,\nbrian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.817+0000", "entityId": 5067, "properties": {"text": "Subject: credit watch list - - week of 11 / 5 / 01\nattached is a revised credit watch listing for the week of 11 / 05 / 01 . there are no updates from last week ' s list .\nif there are any personnel in your group that were not included in this distribution , please insure that they receive a copy of this report .\nto add additional people to this distribution , or if this report has been sent to you in error , please contact veronica espinoza at x 6 - 6002 .\nfor other questions , please contact jason r . williams at x 5 - 3923 , veronica espinoza at x 6 - 6002 or darren vanek at x 3 - 1436 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.822+0000", "entityId": 5068, "properties": {"text": "Subject: logistics powerpoint presentation\nhi all ,\nattached is a general logistics powerpoint presentation that can be presented to customers or whoever you need to present information about enron north america gas logistics to .\nthe presentation contains a section about each of the desks and / or regions and cost centers . therefore , you can copy and paste some of the slides into a smaller presentation to fit your individual needs .\nthe presentation is also located on o : logistics / management / presentations / gas logistics presentation . ppt\nthanks and please contact me with any questions .\nregards ,\nelizabeth\nelizabeth webb\nelizabeth . webb @ enron . com\n713 - 345 - 1694", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.827+0000", "entityId": 5069, "properties": {"text": "Subject: fw : bcp seat assignments\nattached is the list of people from our team who were given spots as part of our business continuity plan . please make sure you have the desk covered for this weekend by getting them to test their spot if they need to do business from the building . as mentioned yesterday we will not have access to our new desks until 5 am monday morning .\ntks and let me know if you have concerns , please note the testing times are listed below . donna not sure how you will manage retail ? let me know .\nbob\n- - - - - original message - - - - -\nfrom : harrington , stephen r .\nsent : wednesday , october 31 , 2001 11 : 26 am\nto : davis , dana ; benson , robert ; quenet , joe ; broderick , paul j . ; gupta , gautam ; thomas , paul ; stepenovitch , joe ; campbell , larry ; makkai , peter ; phillips , william ; rogers , benjamin ; sturm , fletcher j . ; ballato , russell ; simpson , erik ; lorenz , matt ; baughman jr . , don ; kinser , john ; errigo , joe ; valdes , maria ; carson , mike ; hernandez , juan ; garcia , miguel ; laurent , dean ; podurgiel , laura ; gilbert - smith , doug ; king , jeff ; forney , john m . ; schiavone , paul ; saibi , eric ; arora , harry ; stalford , robert ; wang , steve ; gualy , jaime ; chen , hai ; will , lloyd ; may , tom ; miller , jeffrey ; coulter , kayne ; dean , clint ; gilbert , gerald ; burnett , lisa ; choate , jason ; lotz , gretchen ; hansen , patrick ; rust , bill ; bentley , corry ; day , smith l . ; white , stacey w . ; allen , thresa a . ; evans , casey ; vinson , donald wayne ; dahlke , andrea ; carter , tim ; chapman , tom ; franklin , warrick ; mattox , michael ; estrada , israel ; stevens , martha ; le , trang ; rivera , patricia ; fayett , juana ; durham , kim ; grace , rebecca m . ; black , tamara jae ; shoemake , lisa ; hennessy , sonia ; guerra , claudia ; kinsey , lisa ; wesneske , brian ; pendergrass , cora ; haynes , daniel ; brady , kevin ; lenart , kirk ; straight , margie ; schrab , mark l . ; gilmore , tammy ; dempsey , wes ; hall , bob m ; superty , robert ; ordway , chris ; sanchez , christina ; prudenti , dan ; collins , joann ; homco , meredith ; ramirez , robert ; dinari , sabra l . ; carter , tamara ; lamadrid , victor ; olsen , michael ; muzzy , charles t . ; smith , george ; villarreal , jesse ; trofholz , lisa ; lisk , daniel ; adams , jacqueline p . ; sutherland , jan ; groenewold , shannon ; mendel , shelly ; brewer , stacey j . ; christiansen , suzanne ; evans , ted ; spiegelhauer , walter ; chavez , alejandra ; kulic , sladana - anna ; bike , anne ; mills , bruce ; mclaughlin jr . , errol ; royed , jeff ; gossett , jeffrey c . ; taylor , joey ; keiser , kam ; heu , mog ; jones , monte ; winfree , o ' neal d . ; love , phillip m . ; palmer , b . scott ; lavorato , john ; kitchen , louise ; lewis , andrew h . ; storey , geoff ; shively , hunter s . ; williams , jason ( trading ) ; cuilla , martin ; mims , patrice l . ; donohoe , tom ; mckay , brad ; keavey , peter f . ; brawner , sandra f . ; hendrickson , scott ; neal , scott ; zipper , andy ; quigley , dutch ; arnold , john ; griffith , john ; may , larry ; maggi , mike ; lagrasta , fred ; farmer , daren j . ; baumbach , david ; bass , eric ; schwieger , jim ; parks , joe ; martin , thomas a . ; ermis , frank ; reitmeyer , jay ; holst , keith ; gay , randall l . ; allen , phillip k . ; saldana , alex ; jackson , brandee ; rangel , ina ; hogan , irena d . ; bates , kimberly ; choate , heather ; swinney , john ; sharma , shifali ; prejean , frank ; bennett , joel ; harding , jason ; glover , sheila ; carrington , clara ; casimir , reno ; hall , d . todd ; thomas , sheri ; reck , daniel ; arnold , matthew ; kravas , christopher ; ashman , john ; beckstead , jason ; arendes , mike ; perun , mike ; carey , brad ; olitsky , sandy ; landry , valerie ; auzenne , chevondra ; mcclellan , george ; pennix , chad ; massey ii , john ; pazos , juan ; mcgowan , kevin ; hochschild , lenny ; sonesson , martin ; wharton , marc ; groves , eric ; whitehead , jonathan ; robinson , ted ; economou , frank ; gagliardi , larry ; de la ossa , mario ; goughary , jim ; berry , philip ; mulholland , sarah ; wilson , john ; danaher , patrick ; fuller , robert ; jackson , lee ; hicks , w . wade ; story , s . craig ; bogucki , robert ; vitali , lisa ; metry , adam ; elliott , steven m . ; weaver , vickie j . ; engberg , alan ; nowlan jr . , john l . ; lebroc , christian ; tellez , tomas ; white , bill ; loosley , david ; south , chad ; gasper , michael j . ; norman , ina ; o ' toole , audry ; rambin , valarie ; posway , james ; tawney , mark ; piekielniak , elsa ; vu , steven ; ramachandran , sandeep ; gil , eduardo ; nguyen , michael ; ribeiro , claudio ; dinh le , huy ; crane , bob ; tamm , mike ; comeaux , clinton ; conner , andrew r . ; daniel , john ; deadwyler , erik ; epstein , jay ; richard , robert ; hermans , greg ; o ' donnell , kevin ; keenan , sean ; mao , shari ; ihrig , chad ; wilder , wesley ; asterman , tim ; haney , lori ; morris , stella l . ; newton , jerry ; zacouras , nick\ncc : piper , greg ; pickering , mark ; parsons , andrew ; bucknell , martin ; rub , jenny ; klinke , sue ; favela , jose ; sonnier , jason ; cox , paige ; beck , sally\nsubject : bcp seat assignments\nimportance : high\nall :\nattached you will find a list that reflects your seat assignments for business continuity planning ( bcp ) . these seats are located on the 30 th and 31 st floors of enron center north ( ecn ) . as previously communicated , you will report to these designated seats in the event of an outage in ecs .\nthe exception to this is as follows :\nif your seat assignment is located on the 31 st floor , you will report to your original location that you occupied prior to your move into ecs . this will hold true until the monday after thanksgiving , as we will have the 31 st floor seats set up at that time .\ntesting :\nonce you have moved to ecs , if you would like to test your bcp location , you will be able to test your seat for functionality every thursday from 3 - 6 pm . testing is not required , but is highly recommended .\nif anyone has any questions or concerns about these procedures , please feel free to contact me at any time .\nregards ,\nstephen r . harrington\ntechnical project manager , ecs project\nenron net works , llc\nw : 713 - 853 - 7619\np : 877 - 651 - 7361\nc : 713 - 444 - 7279\nstephen . harrington @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.833+0000", "entityId": 5070, "properties": {"text": "Subject: this week ' s neon sheet\n- awesome glory . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.838+0000", "entityId": 5071, "properties": {"text": "Subject: aol instant messenger confirmation\nthank you for registering for the aol instant messenger ( sm ) service !\nyour registration for screen name dfarmer 770 has been received .\nyou are now one step away from being able to :\n* communicate instantly - - it ' s fast , easy , fun and free !\n* create your own buddy list ( r ) feature - - see when your friends and family are online .\n* meet new friends in our chat rooms or by searching our member directory .\n* follow your stocks and news headlines , exchange files and images and much , much more .\nplease reply to this message within 48 hours to complete the registration process .\nsimply click on reply and type ' ok ' as the text of your message so that we can\nconfirm that your e - mail address is valid . confirming your registration is very\nimportant - - it ensures that using screen name dfarmer 770 you can use all current\nand future features of the aim ( sm ) service as well as the following great aol\nweb products :\n* aol calendar ( sm ) ( aim . aol . com / redirects / aimemail / calendar . html )\n* aol hometown ( sm ) ( aim . aol . com / redirects / aimemail / hometown . html )\n* my aol . com ( aim . aol . com / redirects / aimemail / myaol . html )\n* aol . com ( sm ) personal finance web center ( aim . aol . com / redirects / aimemail / finance . html )\nas a security precaution you will not be able to obtain or change your password\nor update your e - mail address until you confirm your registration .\nupon confirmation you will receive a welcome message with valuable links to faqs\nand other helpful information .\ndownload the aol instant messenger ( tm ) software from the aol . com ( sm ) web site\n( aim . aol . com / redirects / aimemail / download . html ) , if you have not already done so .\nto use the aim service when you are away from your computer ,\nclick here for information about our quick\nbuddy service .\nagain , thank you for registering for the aol instant messenger service !\nyou received this one - time - only e - mail because you successfully registered for the\naim service .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.845+0000", "entityId": 5072, "properties": {"text": "Subject: re : waha hubco\ni appologize , but i forgot one of the attachments .\nregards ,\nbrian\n- - - - - original message - - - - -\nfrom : redmond , brian\nsent : monday , november 05 , 2001 4 : 40 pm\nto : miller , kent ; herber , stephen ; williams , jo ; watson , kimberly\ncc : martin , thomas a . ; farmer , daren j . ; higgins , ned ; owen , david ; fitzwater , loftus\nsubject : waha hubco\nto all :\nthe attached memo summarizes our discussions regarding waha and proposes a way forward with respect to either the nng or t ' w options . . i will arrange a meeting to discuss your comments after you have had a chance to review .\nthanks ,\nbrian\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.853+0000", "entityId": 5073, "properties": {"text": "Subject: tenaska iv\ndarren :\ni have some updates for tenaska iv . let me know if you have any questions .\nprod . deal change\n11 / 00 529856 change $ 407 , 547 . 02 to $ 540 , 089 . 00 ( to pay tenaska iv for intercompany sale )\n9 / 01 384258 change $ 2 , 861 , 611 . 00 to $ 2 , 846 , 818 . 24 ( adjust for actual tport )\n10 / 01 384258 zero out price , add demand fee for $ 3 , 216 , 762 . 50\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.861+0000", "entityId": 5074, "properties": {"text": "Subject: daren ,\ni have no problem sticking around with the group , it is a compliment and i am glad that you all appreciate what i have been able to contribute to the group . i just want your opinion on something .\none of my many goals while a part of the analyst program is to become a senior analyst or third year analyst . it is a promotion that also brings with it a bit of a pay increase . in no way do i want to imply greed , or that i will only stay for money , but if in your opinion i may be deserving of this , then maybe we could run it by bob or the program , or whoever is in control of that .\njust a thought , let me know what you think .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.867+0000", "entityId": 5075, "properties": {"text": "Subject: aol instant messenger reconfirmation\nthank you for registering for the aol instant messenger ( sm ) service !\nyour registration for screen name dfarmer 770 has been received .\nyou are now one step away from being able to :\n* communicate instantly - - it ' s fast , easy , fun and free !\n* create your own buddy list ( r ) feature - - see when your friends and family are online .\n* meet new friends in our chat rooms or by searching our member directory .\n* follow your stocks and news headlines , exchange files and images and much , much more .\nplease reply to this message within 48 hours to complete the registration process .\nsimply click on reply and type ' ok ' as the text of your message so that we can\nconfirm that your e - mail address is valid . confirming your registration is very\nimportant - - it ensures that using screen name dfarmer 770 you can use all current\nand future features of the aim ( sm ) service as well as the following great aol\nweb products :\n* aol calendar ( sm ) ( aim . aol . com / redirects / aimemail / calendar . html )\n* aol hometown ( sm ) ( aim . aol . com / redirects / aimemail / hometown . html )\n* my aol . com ( aim . aol . com / redirects / aimemail / myaol . html ) 0\n* aol . com ( sm ) personal finance web center ( aim . aol . com / redirects / aimemail / finance . html )\nas a security precaution you will not be able to obtain or change your password or\nupdate your e - mail address until you confirm your registration .\nupon confirmation you will receive a welcome message with valuable links to faqs\nand other helpful information .\ndownload the aol instant messenger ( tm ) software from the aol . com ( sm ) web site\n( aim . aol . com / redirects / aimemail / download . html ) , if you have not already done so .\nto use the aim service when you are away from your computer ,\nclick here for information about our quick\nbuddy service .\nagain , thank you for registering for the aol instant messenger service !\nyou received this one - time - only e - mail because you successfully registered for the\naim service .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.872+0000", "entityId": 5076, "properties": {"text": "Subject: welcome to aol instant messenger !\nwelcome to the aol instant messenger ( sm ) service !\nthank you for confirming your free aol instant messenger account . we ' re glad that\nyou ' ve joined the fastest - growing internet online community in the world .\nstart using the aim ( sm ) service today !\nwith the aim service you are able to :\n* communicate instantly - - it ' s fast , easy , fun and free !\n* create your own buddy list ( r ) feature - - see when your friends and family are online .\n* meet new friends in our chat rooms or by searching our member directory .\n* follow your stocks and news headlines , exchange files and images and much , much more .\ncheck out our web site !\nour web site is designed to help you get started with the aim service immediately\nand it provides more details on how the aim service can work for you . go to\n( aim . aol . com / redirects / aimemail / aimhome . html ) to learn about topics such as :\n* getting started\n* finding buddies\n* setting up your buddy list feature\n* privacy settings\n* joining aim chat rooms\n* answers to frequently asked questions - - faqs\n* accessing the aim service from anywhere - - quick buddy\nwelcome to the aol instant messenger community . see you online !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.876+0000", "entityId": 5077, "properties": {"text": "Subject: viewing electronic pay stubs\neffective with the november 15 payday , electronic viewing and printing of your direct deposit advice will be available on ehronline . this new feature allows you to view your pay information at a time convenient for you . later this year , you will be able to view this information from your home on your clickathome computer .\nthe following is information to help you view this document beginning on november 15 . to access and print your pay advice from ehronline :\n1 . log - on to ehronline with your \" p \" number and password .\nfor more details on how to log - on to ehronline , see\nstep - by - step instructions at\n2 . navigate to the pay advice using the following navigation\nmenus :\n? pay information\n? paycheck inquiry\n3 . select the appropriate payroll period .\n4 . click on the continue button .\n5 . click on the payroll period link under the period heading ;\na new window opens .\n6 . select the open this file from its current location option .\n7 . click on the ok button ; this starts adobe acrobat reader .\n8 . view your pay advice .\n9 . click on the print icon from the main toolbar .\n10 . verify / change the displayed printer .\n11 . click on the ok button to print the pay advice at the\ndesignated printer . for more details on how to view & print\nyour pay advice from ehronline , see step - by - step\ninstructions at http : / / isc . enron . com / site / doclibrary / user /\nthe advice information will remain on this site throughout the year allowing you to view or print the information at your convenience . you can view a sample of the online pay stub by following this link to http : / / hrweb . enron . com / , click on payroll services and then on payroll forms .\nif you ' d like more details , there will be an information booth on november 13 through 15 from 11 am to 2 pm in the lobby of enron north . come by and visit with payroll representatives who will demonstrate how the process works .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.882+0000", "entityId": 5078, "properties": {"text": "Subject: re : lobo payout\nbecause the payback was done for october 2001 , we can ' t do it in pops so we will have to make manual entries to clear the imbalance from the books and show the sale from hpl to ena .\n- - - - - original message - - - - -\nfrom : hbcamp @ aep . com @ enron\nsent : thursday , november 08 , 2001 5 : 15 pm\nto : wynne , rita\ncc : hall , bob m ; bcfisher @ aep . com ; rmbrownl @ aep . com ; daren . farmer @ enron . com\nsubject : re : lobo payout\nrita ,\nwhat time frame do intend to do this in ? i believe this contract is no longer effective after may 31 , so if it is in october you will have to reactivate the transport contract so you can book it in pops .\nhc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by howard b camp / hol / aepin on 11 / 08 / 2001 05 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : \" hbcamp @ aep . com @ enron \"\ncc : \" hall , bob m \" , , , , , ,\nsubject : re : lobo payout\ni talked to daren and he ' s going to put a deal in the system for the\nsale of the gas from ena to aep , so there would be no need for a manual\ninvoice .\n> - - - - - original message - - - - -\n> from : hbcamp @ aep . com @ enron\n> sent : wednesday , november 07 , 2001 2 : 26 pm\n> to : wynne , rita\n> cc : hall , bob m ; kalastrapes @ aep . com ; ccernosek @ aep . com ;\n> hbcamp @ aep . com ; bcfisher @ aep . com ; rmbrownl @ aep . com ;\n> daren . farmer @ enron . com\n> subject : lobo payout\n>\n>\n> rita ,\n> has the manual invoice been generated for the lobo imbalance ?\n> clem and darren worked together and it was decided that since payback\n> was made in october , enron needs to generate a manual invoice .\n> i need a copy of the invoice faxed to me or bob at 832 - 668 - 1113 .\n> hc\n>\nthis e - mail is the property of enron corp . and / or its relevant affiliate and may contain confidential and privileged material for the sole use of the intended recipient ( s ) . any review , use , distribution or disclosure by others is strictly prohibited . if you are not the intended recipient ( or authorized to receive for the recipient ) , please contact the sender or reply to enron corp . at enron . messaging . administration @ enron . com and delete all copies of the message . this e - mail ( and any attachments hereto ) are not intended to be an offer ( or an acceptance ) and do not create or evidence a binding and enforceable contract between enron corp . ( or any of its affiliates ) and the intended recipient or any other party , and may not be relied on by anyone as the basis of a contract by estoppel or otherwise . thank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.887+0000", "entityId": 5079, "properties": {"text": "Subject: black marlin ua 4 meters\nmichael ,\ncan you back date deals 83347 and 83905 to start 6 / 1 / 99 through 12 / 31 / 99 for the black marlin meter . the meters are on the deals for 1 / 1 / 2001 through 5 / 31 / 01 , but i need to book ua 4 back to 6 / 1 / 99 ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.892+0000", "entityId": 5080, "properties": {"text": "Subject: fw : field services office\nthis email and any files transmitted with it from the elpaso\ncorporation are confidential and intended solely for the\nuse of the individual or entity to whom they are addressed .\nif you have received this email in error please notify the\nsender .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.896+0000", "entityId": 5081, "properties": {"text": "Subject: sec information / earnings restatement\ntoday we released additional information about our related party and off - balance sheet transactions . we have made this information available both on our website and in a form 8 - k filing with the securities and exchange commission ( sec ) .\nthe information provides further details about :\n- - the $ 1 . 2 billion charge to shareholders ' equity announced in the third quarter and the transactions related to that charge ;\n- - a restatement of prior years ' financial statements to reflect this reduction in shareholders ' equity , the consolidation of three entities and prior year proposed audit adjustments and reclassifications ;\n- - the special committee appointed by the enron board of directors to review transactions between enron and related parties ;\n- - the ljm limited partnerships , including a discussion of transactions between enron and ljm entities ; and\n- - transactions between enron and other enron employees .\nthis information addresses a number of concerns that have been raised by our shareholders and the sec . as our board ' s new special committee continues its review of various matters , we will continue to cooperate fully with the sec in its investigation , and we will continue to respond to investor requests so that they can evaluate , appreciate and appropriately value the strength of our core businesses .\nrestatement of earnings\nbased on information that we have recently obtained , enron and its auditors determined that certain off - balance sheet entities should have been included in enron ' s consolidated financial statements pursuant to generally accepted accounting principles . as a result , enron will restate its financial statements from 1997 to 2000 and for the first and second quarters of 2001 . these restatements have no material effect on enron ' s current financial position . here are some details included in the filing :\nnet income for each period will be impacted by the retroactive consolidation of joint energy development investments ( jedi ) and chewco beginning in november 1997 , the consolidation of an ljml subsidiary for 1999 and 2000 and prior year proposed audit adjustments . enron ' s current assessment indicates that the restatement will include :\n- - a reduction of approximately $ 96 million in 1997\n- - a reduction of approximately $ 113 million in 1998\n- - a reduction of approximately $ 250 million in 1999\n- - a reduction of approximately $ 132 million in 2000\n- - an increase of approximately $ 17 million for the first quarter of 2001\n- - an increase of approximately $ 5 million for the second quarter of 2001\n- - a reduction of $ 17 million for the third quarter of 2001 .\nthe consolidation of jedi and chewco also will increase enron ' s debt by approximately $ 711 million in 1997 , $ 561 million in 1998 , $ 685 million in 1999 and $ 628 million in 2000 .\nthe restatement will have no material impact on enron ' s reported earnings for the nine - month period ending september 2001 .\nyou can obtain more detailed information on the items described above by accessing the form 8 - k filing at .\nwe will continue to review our strategic , operational and financial position , and we will continue to keep you updated on any developments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.900+0000", "entityId": 5082, "properties": {"text": "Subject: enron announces plans to merge with dynegy\ntoday , we announced plans to merge with dynegy , a major player in the energy marketplace and one of our largest counterparties . dynegy is a great company with businesses very similar to our own . we believe merging with dynegy is the best option to preserve our core businesses that you ' ve worked so hard to build . following are the major components of the transaction .\ndeal terms\n- - the transaction will constitute a stock for stock exchange based on an exchange ratio of 0 . 2685 dynegy shares for every enron share . for example , each 1 , 000 shares of enron stock will be converted to 268 shares of dynegy upon closing , plus cash for fractional shares , upon closing .\n- - chevrontexaco owns approximately 26 percent of dynegy ' s outstanding common stock . chevrontexaco will invest $ 1 . 5 billion in dynegy immediately and an additional $ 1 billion in dynegy on closing of the merger . dynegy will immediately invest $ 1 . 5 billion in cash in enron ' s northern natural gas subsidiary in exchange for preferred stock in northern natural gas .\n- - total outstanding shares of the combined company are expected to be approximately 700 million shares .\n- - the transaction is subject to shareholder and regulatory approvals , and is expected to close late next year .\nenron will have immediate access to dynegy ' s $ 1 . 5 billion cash investment in enron ' s northern natural gas subsidiary .\nmanagement of newly formed company\nchuck watson will be chairman and ceo of the newly formed company , which will be called dynegy inc . , and steve bergstrom will be president and coo .\ni will continue to serve as chairman and ceo of enron until the transaction closes . i will not join the dynegy office of the chairman . greg whalley will continue to serve as president and coo of enron until the transaction closes . then he will become an executive vice president of the new company and will join the dynegy office of the chairman . mark frevert will continue as vice chairman of enron .\nmanagement from enron and dynegy will work together to ensure a smooth , efficient integration . the make - up of the integration team has not yet been determined .\nthe merger will be a long and complex process and is expected to close by the end of the third quarter 2002 . this merger will create an enormous growth engine , providing great opportunities for our employees , shareholders and customers . as with any merger , some elimination of positions is almost inevitable , and one of our key tasks will be to identify the optimal structure of the new company . we hope to be able to address any need for work force reductions through attrition and hiring reductions . clearly , we cannot rule out involuntary separation , but dynegy is motivated to identify and retain the best talent from both organizations . i promise you that i will do everything i can to make this transition as smooth as possible .\nas i said in my video , this is a day like no other in our company ' s history . we considered several options , but we believe that this merger with dynegy is the best option to help rebuild investor and market confidence , strengthen our balance sheet and preserve our core businesses .\ni know you have a lot of questions about this transaction and about next steps . we have a list of frequently asked questions posted at . if you have additional questions , please submit them to questions @ enron . com . we will post updates as soon as we have answers to your questions . if you receive any calls from the media , please refer them to our media team at ( 713 ) 853 - 5670 .\ni ask you to consider the enormously bright future of the newly formed company . rather than closing doors , we are opening new ones , as this deal enables the customers and shareholders of both companies to participate in the tremendous benefit of the combined enterprise , including our market reach , financial strength and industry experience . together , we will be a new merchant powerhouse .\nand again , thank you for everything you have done for enron .\ninvestors and security holders are urged to carefully read the joint proxy statement / prospectus regarding the proposed transactions when it becomes available , because it will contain important information . investors and security holders may obtain a free copy of the joint proxy statement / prospectus ( when it is available ) and other documents containing information about dynegy and enron , without charge , at the sec ' s web site at www . sec . gov . copies of the joint proxy statement / prospectus and the sec filings that will be incorporated by reference in the joint proxy statement / prospectus may also be obtained for free by directing a request to either : investor relations , dynegy inc . , 1000 louisiana , suite 5800 , houston , tx 77002 , phone : ( 713 ) 507 - 6400 , fax : ( 713 ) 507 - 6808 ; or investor relations , enron corp . , 1400 smith street , houston , tx 77002 , phone : ( 713 ) 853 - 3956 , fax : ( 713 ) 646 - 3002 .\nin addition , the identity of the persons who , under sec rules , may be considered \" participants in the solicitation \" of dynegy and enron shareholders in connection with the proposed transactions , and any description of their direct or indirect interests , by security holdings or otherwise , are available in an sec filing under schedule 14 a made by each of dynegy and enron .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.905+0000", "entityId": 5083, "properties": {"text": "Subject: important video announcement\ni have a very important video announcement about the future of our company . please go to to access the video . thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.910+0000", "entityId": 5084, "properties": {"text": "Subject: pipelines that still have dial in access for nominations\nfollowing are the responses i received to the question : please ask your schedulers to e - mail me which pipelines still maintain the ability to do nominations via a dial up connection to their ebb ( modem and a phone line ) .\nplease ask them to call their representatives if unsure .\npipelines that require or can use dial up for ebb access\nfrom responses to an e - mail mailed out to all managers in houston , denver and calgary\ncora nigas\nmichcon\npeoples\ntammy gilmore reliant field services\naccunom\nmichael olsen epgt\noasis\nlonestar\npatti sullivan pg & e\nrobert ramirez cgulf\nrichard pinion\n713 - 853 - 7339", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.914+0000", "entityId": 5085, "properties": {"text": "Subject: re :\nsounds good . thanks .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : friday , november 09 , 2001 2 : 48 pm\nto : olsen , michael\nsubject : re :\nmike ,\ni very much appreciate what you have done for our desk . let me look into the promotions within and out of the analyst program . i want to take the best option possible .\nd\n- - - - - original message - - - - -\nfrom : olsen , michael\nsent : wednesday , november 07 , 2001 4 : 09 pm\nto : farmer , daren j .\nsubject :\ndaren ,\ni have no problem sticking around with the group , it is a compliment and i am glad that you all appreciate what i have been able to contribute to the group . i just want your opinion on something .\none of my many goals while a part of the analyst program is to become a senior analyst or third year analyst . it is a promotion that also brings with it a bit of a pay increase . in no way do i want to imply greed , or that i will only stay for money , but if in your opinion i may be deserving of this , then maybe we could run it by bob or the program , or whoever is in control of that .\njust a thought , let me know what you think .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.919+0000", "entityId": 5086, "properties": {"text": "Subject: fw : waha hub co .\nare you guys able to attend ?\nregards ,\nbrian\n- - - - - original message - - - - -\nfrom : herber , stephen\nsent : tuesday , november 13 , 2001 1 : 47 pm\nto : redmond , brian ; miller , kent ; watson , kimberly ; williams , jo ; mercaldo , vernon ; stage , michael g .\ncc : wehring , linda ; robertson , audrey\nsubject : waha hub co .\na meeting has been scheduled for 3 : 30 p . m . on wednesday , november 14 in ecn 1336 . the purpose of the meeting is to discuss ena ' s desire to create a waha header using facilities owned by northern and / or transwestern . we will tie jo in via conference call . see you tomorrow .\nthanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.924+0000", "entityId": 5087, "properties": {"text": "Subject: change of control provisions\nas many of you know , i have a provision in my employment contract which provides for a payment of $ 20 million per year for the remaining term of my contract in the event of a change of control of enron . the merger with dynegy , or a similar transaction with any other company , would trigger this provision on closing . assuming the merger with dynegy is closed within 6 - 9 months , as we expect , this provision would entitle me to total payments of slightly more than $ 60 million .\nmany ceos have change of control provisions in their employment contracts and mine has been in place since 1989 . but given the current circumstances facing the company and our employees , i have been giving a lot of thought these last few days to what to do about this payment . initially , i thought i would use part of the funds for a foundation for our employees and take the remainder in stock and cash . however , after talking to a number of employees this afternoon , i have decided that the best course of action would be for me to waive my right to any of this payment . therefore , at closing , i will receive no payments under this provision .\ni know this action does not remedy the uncertainty that you and your families face . but please know that i will continue to do everything in my power to serve the best interests of enron ' s employees and shareholders . i am still very proud of what we have built at enron , and i want to continue working with all of you to correct the problems and restore enron to its rightful place in the energy industry .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.929+0000", "entityId": 5088, "properties": {"text": "Subject: gisb ir meeting notes\ngisb ir meeting - 11 - 13 & 14 , 2001\nsummary :\nfinalized the transactional information ( ft , it , and capacity release ) . this information will be access via the upload of a request for download of posted datasets . majority of the two days was spent developing the data dictionary for the new producer imbalance statement . the producer imbalance statement is not a mandatory dataset . exxon was the only producer present .\ndetailed notes :\ninformational reporting\nwhere should the reporting be located in the gisb books for the it & ft reporting ?\n? in cap release books\n? general book\n? it & ft into noms and cap release into cap release\n? create a new book called reports\n? if we create a new book , we will have to do an executive summary .\nshould reside in capacity release book since the upload request for a download of posted dataset is the request document .\nupdate the upload of a request for download of posted datasets to include code values and technical implementation to support the request for transaction information it , ft , and capacity release datasets .\n? add \" ? withdrawals , or and transactional reports \" to technical implementation .\n? add code value , \" transaction information firm \"\n? add code value , \" transaction information interruptible \"\n? add code value , \" transaction information - capacity release \"\nupdate the response to upload of a request for download of posted datasets to include code values to support the request for transaction information it , ft , and capacity release datasets .\n? add code value , \" transaction information firm \"\n? add code value , \" transaction information interruptible \"\n? add code value , \" transaction information - capacity release \"\nexecutive summary for capacity release , under the capacity release process / datasets / edi transaction section modified with the below :\n? add the it & ft reporting datasets under the mandatory datasets in alphabetical order\n? page 4 of executive summary - add new section describing the dataset .\ntitle : transactional information - transactional information consisting of reports from a tsp provider detailing information for new or amended transportation service or capacity release transaction . these reports are requested through the use of a upload of a request for download of posted datasets and response to upload of a request for download of posted datasets .\n? business process and practices , under overview\no first paragraph \" capacity release reports consists of the following datasets : ? . the transactional information - interruptible , the transactional information - firm , and transactional information - capacity release\nvoting :\n? put together a rec form and data dictionaries and bring back next meeting and vote .\nproducer imbalance statement exxonmobil work paper - in progress\n? not a mandatory document\n? one account per point .\n? modify contact person data to preparer contact person data\n? cumulative imbalance changed to ending imbalance quantity\n? current month entitlement - quantity of gas each interest owner is entitled to take of the total production deliveries\n? current month imbalance changed to current month quantity\n? interest owner data - the entity with ownership interest in the gas .\n? interest owner - hold for resolution r 97058 b for the condition\n? interest owner name - hold for resolution of r 97058 b .\n? interest owner proprietary code - hold for resolution of r 97058 b .\n? prior period adjustment - changed usage from condition to mandatory . condition = default is zero . ( in order words if a prior period is not present , send a zero . )\n? production delivery - quantity of gas delivered to a location for a interest owner based on location operator ' s allocation statement .\n? interest owner decimal changed interest owner percentage - percentage of gas owned by the interest owner . usage - mandatory .\n? add - transportation service provider data group - at detail level .\n? add - transportation service provider data element = a code value that uniquely identifies the tsp . mandatory .\n? add - transportation service provide name . mandatory .\n? grand total all tsp ' s = the total of all production deliveries made to all tsps from a given location . mandatory .\n? total tsp = the total of all production deliveries made to a specified tsp from a given location . detail . mandatory .\n? ending imbalance qty = cumulative imbalance for an interest owner delivered to a tsp . # 20\n? current month entitlement - a quantity of gas each interest owner is entitled to take of the grand total - all tsp for a given tsp . # 16\n? interest owner percentage - percentage of the gas owned by the interest owner dedicated to specified tsp .\n? add discussion to the tibp the definition of ppi . ppi is related to interest owner percentage . ppi is the portion of the production interest dedicated to a tsp .\n? field - # 6 we don ' t currently support this location information in any other gisb documents . it is derivable from the location .\n? county - # 6 we don ' t currently support this location information in any other\n? gisb documents . it is derivable from the location .\n? state - # 6 we don ' t currently support this location information in any other gisb documents . it is derivable from the location .\n? move location data to header level .\n? location operator - party recognized as the operator of record for the location .\n? location operator - proprietary code - hold for r 97058 b\n? move statement basis data to header . if one line time is adjusted or estimated , it impacts the whole allocation .\n? statement recipient id * - hold for r 97058\n? cumulative ending imbalance qty ( new ) - # 26 cumulative imbalance qty for the current period for an interest owner delivered to all tsps . mandatory . detail .\n? cumulative imbalance qty ( new ) # 24 cumulative imbalance qty for the current period for an interest owner . mandatory . detail .\ntammy lee - jaquet\n713 - 853 - 5375\ntammy . jaquet @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.935+0000", "entityId": 5089, "properties": {"text": "Subject: neon\nhere are the verses . see you tonight . love , me\n- scripture . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.940+0000", "entityId": 5090, "properties": {"text": "Subject: re : unify gas month end close - november 2001\nattached is the month end close document for gas settlements :\nthe first mass draft run is tomorrow , nov 15 for ena sales / supply at 7 . 00 pm .\nmichael cuccia will be monitoring the mass drafts for this month end .\nthanks ,\nanwar\n- - - - - original message - - - - -\nfrom : melethil , anwar\nsent : tuesday , november 13 , 2001 3 : 01 pm\nto : baxter , bryce ; hiatt , wendy ; jaquet , tammy ; lakho , shahnaz ; mcclure , mark ; pinion , richard ; wynne , rita\ncc : cuccia , michael ; laurel , robert ; mallak , mutaz ; martinez , danny ; neal , steve ; pena , matt ; roberts , steve ; smith , regan m . ; sql _ mail ; stokes , darren ; ward , bob ; warner , john ; zwiers , jeff\nsubject : unify gas month end close - november 2001\nplease review the attached ' month end close ' document and let us know if you would like to make any changes .\n>\ni will be sending out this document tomorrow to the other business leads who are not in this list .\nthanks very much .\ncheers ,\nanwar", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.946+0000", "entityId": 5091, "properties": {"text": "Subject: zero path termination in path manager\nmatt / ben :\ni am responding to your request for comments on revising path manager by expanding the parameters of the path termination process to include zero volume paths on the last day of the month as a way to speed up unify response and retrieve times .\nbased on my interviews of various desks including aep and calgary and our recent discussions , we find a legitimate business need to allow zero volume paths to roll from month to month ( requirements contracts on wellhead gas ) . following is a recap of what is proposed to be done regarding zero path termination .\n1 . all paths that are zero on the last day of a month ( exception noted in # 2 below ) will terminate on that day and will no longer roll into the following month .\nthis path termination out function will run every night . any paths changed to zero retroactively will zero out future month ' s paths unless a volume\nis on that path in the future month .\n2 . zero paths marked as \" always send nominations \" will continue to roll from month to month until changed to some other nomination option . it appears that hpl\n( 736 paths ) and nigas ( 1136 paths ) might have some paths rolling that no longer need to . a special one time handling of these paths will be coordinated with the\nscheduler when you are ready .\n3 . zero paths which roll from month to month using the \" volume management - do not send \" function will cease to do so . this was agree to by patti in regards to\npaths for oba tracking .\nall :\nplease respond via e - mail with any comments .\nrichard\nx 37339", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.951+0000", "entityId": 5092, "properties": {"text": "Subject: fw : statement of operating conditions\nthis is what i got from dan .\n- - - - - original message - - - - -\nfrom : burns , dan [ mailto : dan . burns @ elpaso . com ]\nsent : thursday , october 18 , 2001 7 : 28 am\nto : buss , jd\nsubject : statement of operating conditions\nattached is the soc for the epgt texas pipeline . i have attached both the\ninterstate and intrastate soc , the main difference in the two is the\nintrastate warrenty language . if you have any questions please advise .\nthanks - dan\n832 - 676 - 5576\n> >\nthis email and any files transmitted with it from the elpaso\ncorporation are confidential and intended solely for the\nuse of the individual or entity to whom they are addressed .\nif you have received this email in error please notify the\nsender .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.955+0000", "entityId": 5093, "properties": {"text": "Subject: fw : aggie song\n- - - - - original message - - - - -\nfrom : graf , dustin kwp [ mailto : dgraf @ kennedywilson . com ]\nsent : friday , november 16 , 2001 2 : 51 pm\nto : ' adam turner ' ; ' chad newton ' ; ' e _ mir @ hotmail . com ' ; ' jeff butler ' ; ' jeff heineman ' ; ' luis mena ' ; ' ryan . wisnieski @ accenture . com ' ; ' ryan _ franks @ dell . com ' ; ' tucker , michael ' ; ' vetterl 975 @ yahoo . com '\nsubject : fw : aggie song\ndustin graf\nkennedy - wilson international\n5929 balcones drive , suite 100\naustin , tx 78731\n512 . 483 . 9477 ( tel )\n512 . 459 . 9617 ( fax )\ndgraf @ kennedywilson . com\n- - - - - original message - - - - -\nfrom : jeff boldrick [ mailto : jboldrick @ deloitte . com ]\nsent : thursday , november 15 , 2001 10 : 31 am\nto : christopherry herry ( e - mail ) ; darryl baucum ( e - mail ) ; david hanna ; jason guest ; keith crew ; paul olcese ; shield ( e - mail )\nsubject : aggie song\ni am sure all of yall have this , but for those that don ' t :\njeff d . boldrick\nbusiness development coordinator - se region\ndeloitte & touche llp\nphone : ( 404 ) 220 - 1084\nfax : ( 404 ) 631 - 8998\nthis message ( including any attachments ) contains confidential information intended for a specific individual and purpose , and is protected by law . if you are not the intended recipient , you should delete this message . any disclosure , copying , or distribution of this message , or the taking of any action based on it , is strictly prohibited .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ? this email was sent to : dgraf @ kennedywilson . com ? ? easy unsubscribe click here : ? or send an email to : betamu - unsubscribe @ topica . com ? ? t o p i c a - - register now to manage your mail ! ? ? = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.960+0000", "entityId": 5094, "properties": {"text": "Subject: credit watch list - - week of 11 / 19 / 01\nattached is a revised credit watch listing for the week of 11 / 19 / 01 . the yuma companies ( inc . ) has been added to this week ' s \" call credit \" column .\nif there are any personnel in your group that were not included in this distribution , please insure that they receive a copy of this report .\nto add additional people to this distribution , or if this report has been sent to you in error , please contact veronica espinoza at x 6 - 6002 .\nfor other questions , please contact jason r . williams at x 5 - 3923 , veronica espinoza at x 6 - 6002 or darren vanek at x 3 - 1436 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.968+0000", "entityId": 5095, "properties": {"text": "Subject: epgt\nmike :\ni am down to the last few error messages on the epgt quick response and also looking into the external pool for who 34 in unify . about 70 % of the line items have been cleaned up .\ni need the following information from you as soon as possible .\n1 . the downstream contract number for aquila marketing and a \" scheduled quantity report \" for the pooling contract who 34 , this is the report you would obtain from the pipeline at the end of each cycle to determine cuts etc . or you can give me the user id and password\nand i can go pull it myself .\nthe epgt ' s it group is trying to research the correct duns # for aquila dallas marketing . if this issue is not resolved , i am planning on setting up a meeting with el paso on november 26 th at 1 : 30 at their offices and i would like for you to go with me . we will meet with their it and business group for about an hour or so .\nyour prompt attention to this will be greatly appreciated .\nthank you .\nshane lakho", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.975+0000", "entityId": 5096, "properties": {"text": "Subject: re : unify gas month end close - november 2001\nplease see attached . this includes richard pinion ' s changes for logistics .\nthanks ,\nanwar\n- - - - - original message - - - - -\nfrom : melethil , anwar\nsent : wednesday , november 14 , 2001 5 : 19 pm\nto : baxter , bryce ; bussell , kathryn ; dawes , cheryl ; dhont , margaret ; ed terry ; farmer , daren j . ; greif , donna ; hall , bob m ; harwell , melanie ; heal , kevin ; howard camp ; jacobs , charles ; jaquet , tammy ; john lopez ; kinsey , lisa ; lakho , shahnaz ; lamadrid , victor ; machleit , shirley ; mcclure , mark ; mcfatridge , thomas ; olinger , kimberly s . ; palmer , b . scott ; pinion , richard ; reeves , leslie ; smith , george f . ; staab , theresa ; sullivan , patti ; superty , robert ; valderrama , lisa ; wynne , rita\ncc : cuccia , michael ; kaspereit , michael ; laurel , robert ; mallak , mutaz ; martinez , danny ; neal , steve ; pena , matt ; roberts , steve ; smith , regan m . ; sql _ mail ; stokes , darren ; ward , bob ; warner , john ; zwiers , jeff\nsubject : re : unify gas month end close - november 2001\nattached is the month end close document for gas settlements :\n>\nthe first mass draft run is tomorrow , nov 15 for ena sales / supply at 7 . 00 pm .\nmichael cuccia will be monitoring the mass drafts for this month end .\nthanks ,\nanwar\n- - - - - original message - - - - -\nfrom : melethil , anwar\nsent : tuesday , november 13 , 2001 3 : 01 pm\nto : baxter , bryce ; hiatt , wendy ; jaquet , tammy ; lakho , shahnaz ; mcclure , mark ; pinion , richard ; wynne , rita\ncc : cuccia , michael ; laurel , robert ; mallak , mutaz ; martinez , danny ; neal , steve ; pena , matt ; roberts , steve ; smith , regan m . ; sql _ mail ; stokes , darren ; ward , bob ; warner , john ; zwiers , jeff\nsubject : unify gas month end close - november 2001\nplease review the attached ' month end close ' document and let us know if you would like to make any changes .\n>\ni will be sending out this document tomorrow to the other business leads who are not in this list .\nthanks very much .\ncheers ,\nanwar", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.980+0000", "entityId": 5097, "properties": {"text": "Subject: epgt\nmike :\ni have terminated about 12 to 13 inactive inter pipe / internal pools effective 12 / 01 / 01 . there are several other inactive pools which i did not eliminate because\nthey had balances in it .\ni also spoke to jim tobacco at epgt for at least an hour or so , going over every line item which was rejected , please get with me once you are back in the office\nand i will go over the \" correct \" pathing procedures .\ni met with richard and reviewed november transactions for epgt to determine if we could eliminate the external pools but unfortunately we cannot do this .\nif we transport then we must use the external pool . however , you do not need to use internal pools but must use the imbalance pools which you are currently\nusing , therefore , i have terminated the internal pools .\nplease review the changes and let me know if this will work for you . .\ni will be in touch with you after i meet with el paso .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.985+0000", "entityId": 5098, "properties": {"text": "Subject: fw : txu lone star pipeline standard pooling agreement\n- - - - - original message - - - - -\nfrom : jeffsmirin @ txu . com [ mailto : jeffsmirin @ txu . com ]\nsent : monday , november 26 , 2001 11 : 31 am\nto : buss , jd\nsubject : txu lone star pipeline standard pooling agreement\nhere is the standard pooling agreement . i noticed that the last two pages\nin the file are actually the cover sheet and index , which should actually\nbe at the front of the document .\n( see attached file : standard pooling agreement . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.990+0000", "entityId": 5099, "properties": {"text": "Subject: fw : pooling contract template\n- - - - - original message - - - - -\nfrom : christinehauk @ txu . com [ mailto : christinehauk @ txu . com ]\nsent : monday , november 26 , 2001 9 : 45 am\nto : buss , jd\nsubject : pooling contract template\n( see attached file : line x pool contract . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:26.995+0000", "entityId": 5100, "properties": {"text": "Subject: fw : deal 93836\nthis deal is for global # 96022051 . this is between hpl and black marlin pipeline company . this should be handled by your group .\nthank you .\n- - - - - original message - - - - -\nfrom : anderson , bridgette\nsent : tuesday , november 27 , 2001 12 : 49 pm\nto : hilliard , marlene ; campos , sylvia a .\nsubject : fw : deal 93836\nmarlene / sylvia ,\nplease see message below pertaining to a transport deal .\n- - - - - original message - - - - -\nfrom : campos , anthony\nsent : tuesday , november 27 , 2001 12 : 45 pm\nto : anderson , bridgette\nsubject : fw : deal 93836\nfrom darren farmer .\nthank you ,\nanthony campos\nenron corp . _ global contracts\n713 . 853 . 7905 ( office )\n713 . 646 . 2495 ( fax )\n713 . 709 . 0373 ( pager )\nanthony . campos @ enron . com\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : tuesday , november 27 , 2001 12 : 43 pm\nto : campos , anthony\nsubject : fw : deal 93836\nanthony ,\ncan you take care of this ?\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , november 19 , 2001 3 : 04 pm\nto : campos , anthony\nsubject : fw : deal 93836\nanthony ,\ncan you change the counterparty name on deal 93836 to black marlin pipeline company inc . ?\nd\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : monday , november 19 , 2001 8 : 50 am\nto : farmer , daren j .\nsubject : fw : deal 93836\ndaren ,\nwill you let me know when this change has been made ? i need to get some payments finaled by 3 pm tomorrow .\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : thursday , november 15 , 2001 12 : 08 pm\nto : farmer , daren j .\nsubject : re : deal 93836\nprior to 7 / 99 this was ena not hpl , but there may be some issues on it as well for 3 / 99 to 6 / 99 . the deal ticket we used was 62717 . i will have to look further into the ena activity because i know we still have some invoices that were paid under one company and we still have drafts under the other .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , november 15 , 2001 10 : 42 am\nto : schumack , sherlyn\nsubject : re : deal 93836\nthis ticket starts with 7 / 99 production . how were all of the other months paid ?\nd\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : thursday , november 15 , 2001 10 : 32 am\nto : farmer , daren j .\nsubject : deal 93836\ndaren ,\ni am trying to get some payments out to williams for old months 11 / 2000 and 1 / 2001 but global counterparty said this deal should have black marlin pipeline company inc . instead of black marlin pipeline company effective 3 / 99 . the black marlin pipeline company was for an internal record ( when it was an enron entity ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.000+0000", "entityId": 5101, "properties": {"text": "Subject: fw : deal 93836\ndaren ,\nhave you had a chance to look at this yet ?\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : monday , november 19 , 2001 8 : 50 am\nto : farmer , daren j .\nsubject : fw : deal 93836\ndaren ,\nwill you let me know when this change has been made ? i need to get some payments finaled by 3 pm tomorrow .\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : thursday , november 15 , 2001 12 : 08 pm\nto : farmer , daren j .\nsubject : re : deal 93836\nprior to 7 / 99 this was ena not hpl , but there may be some issues on it as well for 3 / 99 to 6 / 99 . the deal ticket we used was 62717 . i will have to look further into the ena activity because i know we still have some invoices that were paid under one company and we still have drafts under the other .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , november 15 , 2001 10 : 42 am\nto : schumack , sherlyn\nsubject : re : deal 93836\nthis ticket starts with 7 / 99 production . how were all of the other months paid ?\nd\n- - - - - original message - - - - -\nfrom : schumack , sherlyn\nsent : thursday , november 15 , 2001 10 : 32 am\nto : farmer , daren j .\nsubject : deal 93836\ndaren ,\ni am trying to get some payments out to williams for old months 11 / 2000 and 1 / 2001 but global counterparty said this deal should have black marlin pipeline company inc . instead of black marlin pipeline company effective 3 / 99 . the black marlin pipeline company was for an internal record ( when it was an enron entity ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.005+0000", "entityId": 5102, "properties": {"text": "Subject: bammel football stuff\nhey fellas !\njust for my records , each of you guys have paid the $ 20 dues for the\nleague . . . here ' s just a little last bit of info for you .\nthis is the last week of the regular season . . . after that comes the\ndivisional playoffs , followed by the superbowl .\nthe same week as the superbowl , another exciting game will be played for the\nfirst time ever , pitting our 2 worst teams in the league against each other ,\nhacking it out for bragging rights . . . the toilet bowl !\nrewards break down :\nsuperbowl winner : $ 125\nrunner - up : $ 50\ntoilet bowl champ : $ 25\nthanks fellas , and get back with me if you are interested in doing a $ 5\ncollege bowl sheet against each other . . . ( you know , where you pick the\nwinners from each bowl game ) . . . we already have a few who are in for this !\n- the commish", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.009+0000", "entityId": 5103, "properties": {"text": "Subject: please read - important information for participants in the enron\nsavings plan\ndue to current business circumstances , on november 28 , 2001 , enron ' s board of directors adopted an amendment to the enron corp . savings plan . the amendment includes the following changes , which became effective on november 29 :\n? savings plan contributions that are deducted from your november 30 paycheck will be matched by enron in cash rather than enron stock . the cash match will be placed into the fidelity freedom 2000 fund , the default fund for the plan .\n? after november 30 , enron will no longer match your savings plan contributions . as an exception , the company will continue the union matching contributions to the plan .\n? the savings plan has always permitted employees to place their contributions in enron stock or one or more alternative investment options . effective immediately , diversification within the plan will also be allowed , regardless of your age , from company contribution accounts . this removes the restriction for all employees under the age of 50 to diversify the company contributions held in their account . these accounts include all prior company contributions , qnec , and company match accounts .\nto move funds :\non the web , choose \" savings plan - - restricted employer acct transfer / reallocation \" from the drop down menu .\non voice response , choose \" request for fund transfer / reallocation of your restricted employer accounts . \"\nthis will allow you to move money from the four formerly restricted accounts : company matching , union matching , prior matching , and qnec .\nto avoid phone delays , we recommend that you access your account through the web at http : / / resources . hewitt . com / enron or through benefits . enron . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.015+0000", "entityId": 5104, "properties": {"text": "Subject: fw : centana storage\n- - - - - original message - - - - -\nfrom : swisher , stephen\nsent : tuesday , november 27 , 2001 11 : 52 am\nto : olsen , michael\nsubject : fw : centana storage\nimportance : high\nmike ,\ni need a deal entered into sitra and pathed for the sale of the centana storage to aep . see below . any questions , give me a call . thanks .\nstephen r . swisher\nspecialist , energy operations\nenron net works , llc\nphone : 713 - 345 - 3042\nfax : 713 - 345 - 7701\ncell : 713 - 540 - 2063\nemail : stephen . swisher @ enron . com\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : tuesday , november 13 , 2001 1 : 30 pm\nto : pond , jim\ncc : koerselman , lisa ; lo , connie ; swisher , stephen\nsubject : re : centana storage\nstephen ,\nplease get with logistics to get a deal entered and pathed for this transaction . if you have any questions , please let me know . thanks !\n- - - - - original message - - - - -\nfrom : pond , jim\nsent : tuesday , november 13 , 2001 1 : 29 pm\nto : wynne , rita\ncc : koerselman , lisa ; lo , connie ; swisher , stephen\nsubject : re : centana storage\nthe gl currently has 1 , 177 , 186 mmbtu @ $ 3 , 548 , 001 . 99 .\ni believe the sale took place in the facility .\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : tuesday , november 13 , 2001 1 : 05 pm\nto : pond , jim\ncc : koerselman , lisa ; lo , connie ; swisher , stephen\nsubject : re : centana storage\njim ,\nwhere did the sale take place ? was it an in place sale at the facility ? stephen is working on the reconciliation . if he cannot have it completed by this close , then we will have unaccounted for until he finishes his reconciliation . we will do everything possible to get it cleared this close . what does the g / l currently have for the storage number ?\n- - - - - original message - - - - -\nfrom : pond , jim\nsent : tuesday , november 13 , 2001 12 : 57 pm\nto : wynne , rita\ncc : koerselman , lisa ; lo , connie\nsubject : centana storage\nrita ,\nit looks like we will be making our bammel true - up payment to aep in the next couple of days . included in the payment to aep is a deduction for the sale of the centana storage gas . we are selling them 1 , 236 , 286 mmbtu @ $ 2 . 375 for a total of $ 2 , 936 , 179 . 25 . the sale is for september , 2001 production . we will need a deal put in sitara for that sale along with the appropriate pathing from storage by logistics . however , there is only 1 , 195 , 754 mmbtu on report 006 in unify ( for contracts 96018371 , 96014189 , and 96019236 ) . how do we account for this volumetic difference ? connie will be truing up the gl to match the current unify volume . the gl was short approx . 18 , 000 mmbtu because a beginning balance was not booked .\nthis needs to happen before the upcoming close .\nthanks for you help in this matter .\nplease let me know of any concerns .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.019+0000", "entityId": 5105, "properties": {"text": "Subject: guadalupe power - aep corporate guaranty with marked changes and\nupdate\nupdate on guadalupe guaranty is as follows :\nper discussion with dan hyvl , aep corp in columbus is currently reviewing the attached tie redlined aep guaranty document .\ntoday , jeff hodge is preparing an enron consent notice which will be sent to phil and bryon as soon as available .\ni will keep everyone posted as we progress .\n- - - - - original message - - - - -\nfrom : phil schnorbach [ mailto : pschnorbach @ tielp . com ]\nsent : thursday , november 29 , 2001 5 : 59 pm\nto : djhyvl @ aep . com ; coffey jr . , jim\ncc : gannaway , byron\nsubject : aep corporate guaranty with marked changes\ngentlemen - we have reviewed the aep corpaorate guaranty and have provided a\nredline of the document to reflect our comments . we were not sure if we\nshould be dealing with dan or jim so we sent it to both . you can either\ncall byron gannaway at 9972 ) 628 - 2751 or phil schnorbach at ( 972 ) 628 - 2750\nwith comments or questions . we would be happy to wrap this up on friday if\npossible .\nphil schnorbach", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.024+0000", "entityId": 5106, "properties": {"text": "Subject: enron files chapter 11 reorganization\nto all employees :\nthis morning enron took a series of actions designed to stabilize our situation and preserve the value in our businesses :\n- - we filed voluntary petitions for relief under chapter 11 of the u . s . bankruptcy code . contrary to popular belief , this does not mean we are out of business . what it does mean is that we have entered into a court - supervised process by which we can continue to operate most of our businesses , reorganize our finances , and explore various strategic , operational and financial alternatives , including the sale of non - core assets , in an orderly manner .\n- - in connection with our filing for chapter 11 reorganization , enron is in active discussions with leading financial institutions for debtor - in - possession ( dip ) financing and expects to complete these discussions shortly . upon the completion and court approval of these arrangements , the new funding will be available immediately on an interim basis to supplement enron ' s existing capital and help the company fulfill obligations associated with operating its business , including its employee payroll and payments to vendors for goods and services provided on or after today ' s filing .\n- - we filed a lawsuit against dynegy , alleging breach of contract and other causes of action for dynegy ' s wrongful termination of our proposed merger . we are asking the court for damages of not less than $ 10 billion .\n- - we also announced this morning that we are in active discussions with various leading financial institutions about providing financial support to recapitalize and revitalize the company ' s wholesale energy trading operations under a new ownership structure . as contemplated , this recapitalized entity will be staffed with people from enron ' s current wholesale energy trading team , and will conduct counterparty transactions through enrononline .\nthese are the first steps in a strategic restructuring process that will allow enron to meet its obligations to its creditors and preserve the value in our core wholesale energy trading business . from an operational standpoint , our energy businesses - including our pipelines , utilities and other energy assets - are conducting safe and normal operations around the world , and will continue to do so .\nas you know , the second and unavoidable part of our restructuring is to improve our financial position by implementing a comprehensive cost - savings program . this will entail a significant reduction in our work force . this is painful for all of us and our goal is for as many of you as is possible to know where you stand by the end of the day tuesday , though in some cases notification will take longer .\nfor our friends and colleagues who will lose their jobs as part of this process , you will remain on the company payroll for now . in addition , we will submit a severance pay plan to the bankruptcy court for approval . this approval must be received before we can begin paying severance benefits . we will be providing more information about this plan as soon as the court has made its determination .\ni know these actions raise new questions about our company ' s future and what this means for each of us . your business unit leader will be holding floor meetings on monday to discuss these events with you . in addition , you can access a copy of the press release on . we will also have a q & a and other materials for you on monday . while there is a great deal we simply don ' t know yet , we hope these materials will help answer at least some of your questions .\nwhen decisions are made affecting our company , people , and operations , we will let you know as quickly as possible . there is still considerable value and opportunity in our business . the strategic restructuring process that we are beginning will allow us to preserve that value and those opportunities .\non behalf of the board and entire management team , we greatly appreciate your patience , your professionalism and whatever support you can offer each other as we navigate through these tough times to a better future .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.029+0000", "entityId": 5107, "properties": {"text": "Subject: fw : cell phones\nhere ' s the latest scoop on the cell phone situation . please let me know whether or not you are interested in changing your cell phones to a personal account . i am going to cingular in a little while to pick up the forms to transfer liability , as well as information regarding the rate plans .\nthanks ,\nlaura\n- - - - - original message - - - - -\nfrom : alysia . autry @ cingular . com [ mailto : alysia . autry @ cingular . com ]\nsent : monday , december 03 , 2001 5 : 56 pm\nto : vuittonet , laura\nsubject : re : cell phones\nthe latest is that if they want to keep their phones , they need to fill out a contract changing the liability to them .\nwe will have some in our office tomorrow around 1 ( ran out today ) and they can also pick one up at a cingular store . just make sure that they mail them back to me .\nmy home address is : 4501 shetland houston 77027\nas for the cancellation of the corporate phones , that is not scheduled to take place yet , and may not right away .\nif they just want to do a rate plan change , then they can do it via email ( have them email me ) or they can indicate it on their contract that they fill out to change liability .\nthe main thing to do is to fill out the contract to change liability , which also obligates them for one year .\nas for the balances accrued up to date , they are not responsible for those . enron is .\ngood luck to you . i hope you get my email and i hope i get to see you again .\nand , yes , i will be getting all new accounts now !\nalysia autry\ncingular wireless\nmajor account executive for enron\n713 345 - 7183 office\n713 410 - 0010 cell\n713 963 - 0324 fax\n- - - - - original message - - - - -\nfrom : vuittonet , laura [ mailto : laura . vuittonet @ enron . com ]\nsent : monday , december 03 , 2001 1 : 05 pm\nto : autry , alysia\nsubject : re : cell phones\nhi ! any word yet about the cell phones ? i ' m getting nervous , as are a lot of others , i ' m sure . some people in my group are really wanting to keep their phones , and they are asking me questions that i don ' t know the answers to . . . like what kinds of rate changes there will be , as well as to what point will the liability be theirs , and how far back will they have to pay to get the invoices current , if enron has not done so already .\nhow are you affected by this ? will cingular find another business that you will work out of ? just curious .\nlaura\n- - - - - original message - - - - -\nfrom : alysia . autry @ cingular . com [ mailto : alysia . autry @ cingular . com ]\nsent : wednesday , november 28 , 2001 3 : 09 pm\nto : vuittonet , laura\ncc : raymond . aguirre @ cingular . com ; chris . samaniego @ cingular . com ; rhonda . hall @ cingular . com ; karen . byers @ cingular . com\nsubject : re : cell phones\nyou are so sweet ! yes , we can transfer liability from enron into you , personally .\nwe are trying to work out all the details right now and will have more answers in the coming days .\nfor now , just hold tight .\ntake care ,\nalysia autry\ncingular wireless\nmajor account executive for enron\n713 345 - 7183 office\n713 410 - 0010 cell\n713 963 - 0324 fax\n- - - - - original message - - - - -\nfrom : vuittonet , laura [ ]\nsent : wednesday , november 28 , 2001 2 : 10 pm\nto : autry , alysia\nsubject : cell phones\nhi alysia !\njust wondering what will happen to our cell phones and cell phone\naccounts ? ? can we transfer liability ? i ' d like to keep my phone\nnumber , and so will people who work in my group .\nplease let me know as soon as possible . . . i ' m sure you ' re swamped with\ncalls and emails . if i don ' t see you again , please know that i hope you\nhave a wonderful holiday . that ' s coming from me and robert ! !\nthanks ,\nlaura vuittonet\n713 - 853 - 1994 office\n713 - 515 - 6921 cell\nlvuittonet @ houston . rr . com\nthis e - mail is the property of enron corp . and / or its relevant affiliate and may contain confidential and privileged material for the sole use of the intended recipient ( s ) . any review , use , distribution or disclosure by others is strictly prohibited . if you are not the intended recipient ( or authorized to receive for the recipient ) , please contact the sender or reply to enron corp . at enron . messaging . administration @ enron . com and delete all copies of the message . this e - mail ( and any attachments hereto ) are not intended to be an offer ( or an acceptance ) and do not create or evidence a binding and enforceable contract between enron corp . ( or any of its affiliates ) and the intended recipient or any other party , and may not be relied on by anyone as the basis of a contract by estoppel or otherwise . thank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.034+0000", "entityId": 5108, "properties": {"text": "Subject: equistar track id for meter 981373\ndaren ,\nthe new track id for that sale to equistar deal 240061 is 528403 on ena contract 012 - 27049 - 02 - 001 for the whole month of april , 2001 .\nsherlyn schumack\nsr . specialist\nvolume management\nphone 713 853 - 7461\nfax 713 345 - 7701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.039+0000", "entityId": 5109, "properties": {"text": "Subject: from your clerk . its been great !\ni just wanted to let you all know that i really enjoyed working with you all . it has been a pleasure and a ton of fun to work for such great people . i hope to stay in contact with you and please keep hold of my email address and resume for anything you may see a need for in the future . also if you wouldnt mind being a reference for me it would be greatly appreciated and you can email me your information .\nthanks again ,\njason\njpanos @ houston . rr . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.044+0000", "entityId": 5110, "properties": {"text": "Subject: neon retreat\nho ho ho , we ' re around to that most wonderful time of the year - - - neon leaders retreat time !\ni know that this time of year is extremely hectic , and that it ' s tough to think about anything past the holidays , but life does go on past the week of december 25 through january 1 , and that ' s what i ' d like you to think about for a minute .\non the calender that i handed out at the beginning of the fall semester , the retreat was scheduled for the weekend of january 5 - 6 . but because of a youth ministers conference that brad and dustin are connected with that week , we ' re going to change the date to the following weekend , january 12 - 13 . now comes the part you need to think about .\ni think we all agree that it ' s important for us to get together and have some time to recharge our batteries before we get to far into the spring semester , but it can be a lot of trouble and difficult for us to get away without kids , etc . so , brad came up with a potential alternative for how we can get together on that weekend , and then you can let me know which you prefer .\nthe first option would be to have a retreat similar to what we ' ve done the past several years . this year we could go to the heartland country inn ( www . . com ) outside of brenham . it ' s a nice place , where we ' d have a 13 - bedroom and a 5 - bedroom house side by side . it ' s in the country , real relaxing , but also close to brenham and only about one hour and 15 minutes from here . we can golf , shop in the antique and craft stores in brenham , eat dinner together at the ranch , and spend time with each other . we ' d meet on saturday , and then return on sunday morning , just like what we ' ve done in the past .\nthe second option would be to stay here in houston , have dinner together at a nice restaurant , and then have dessert and a time for visiting and recharging at one of our homes on that saturday evening . this might be easier , but the trade off would be that we wouldn ' t have as much time together . i ' ll let you decide .\nemail me back with what would be your preference , and of course if you ' re available on that weekend . the democratic process will prevail - - majority vote will rule ! let me hear from you as soon as possible , preferably by the end of the weekend . and if the vote doesn ' t go your way , no complaining allowed ( like i tend to do ! )\nhave a great weekend , great golf , great fishing , great shopping , or whatever makes you happy !\nbobby", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.049+0000", "entityId": 5111, "properties": {"text": "Subject: centana storage deal\nmike / stephen ,\nhave the two of you been able to get the deal in for the sale of the centana storage to aep ? please advise . i would like to have this completed for this close if possible .\ndaren - if you are not aware of this transaction , please let me know . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.054+0000", "entityId": 5112, "properties": {"text": "Subject: fw : reconnect vpn\neveryone ' s remote access has been changed due to security reasons . brandee is in the process of initiating a e - request for each of you . once you get approved you should get the following email .\nin addition , each of you who uses a laptop will need to connect the laptop to the network here at the office and log on as yourself . this will syncrize your profile on that laptop .\nplease pass the information onto your staff .\nthanks ,\ntammy\n- - - - - original message - - - - -\nfrom : stine , robert\nsent : tuesday , december 11 , 2001 1 : 33 pm\nto : jaquet , tammy ; calcagno , suzanne\nsubject : econnect vpn\nyou have been approved and added to the econnect remote access solution . your user account will be granted remote access permission by it security within 24 hours . please follow the instructions in the attached document .\nif you require technical assistance , please call the resolution center at 713 . 853 . 1411 .\nthanks ,\nrob .\nrobert c . stine\ntechnology architecture\ne - mail : robert . stine @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.059+0000", "entityId": 5113, "properties": {"text": "Subject: econnect vpn\nyou have been approved and added to the econnect remote access solution . your user account will be granted remote access permission by it security within 24 hours . please follow the instructions in the attached document .\nif you require technical assistance , please call the resolution center at 713 . 853 . 1411 .\nthanks ,\nmustafa cochinwala", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.067+0000", "entityId": 5114, "properties": {"text": "Subject: re : tenaska iv 11 / 01\ncan you look at this again ? i ' m missing the 7 before the decimal point .\nmegan\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : tuesday , december 11 , 2001 2 : 10 pm\nto : parker , megan\nsubject : re : tenaska iv 11 / 01\ndone .\n- - - - - original message - - - - -\nfrom : parker , megan\nsent : tuesday , december 11 , 2001 9 : 56 am\nto : farmer , daren j .\nsubject : tenaska iv 11 / 01\ndarren :\nit ' s that time again . please remove the price on deal 384258 for nov and add a demand fee of $ 3 , 096 , 547 . 98 .\nthanks ,\nmegan\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.074+0000", "entityId": 5115, "properties": {"text": "Subject: tenaska iv 11 / 01\ndarren :\nit ' s that time again . please remove the price on deal 384258 for nov and add a demand fee of $ 3 , 096 , 547 . 98 .\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.080+0000", "entityId": 5116, "properties": {"text": "Subject: fw : consensual terminations\n- - - - - original message - - - - -\nfrom : st . clair , carol\nsent : tuesday , december 11 , 2001 12 : 26 pm\nto : allen , phillip k . ; neal , scott ; shively , hunter s . ; martin , thomas a . ; presto , kevin m . ; belden , tim\ncc : sager , elizabeth\nsubject : consensual terminations\nas you are aware , legal is coordinating with the trading / origination groups in handling consensual termination transactions of our in - the - money positions with counterparties that are willing to do so . could you please spread the word that these transactions should not be done by entering into offsetting trades , but rather by entering into a termination agreement with our counterparty and the counterparty paying to enron the agreed upon value . thanks .\ncarol st . clair\neb 4539\n713 - 853 - 3989 ( phone )\n713 - 646 - 3393 ( fax )\n281 - 382 - 1943 ( cell phone )\n8774545506 ( pager )\n281 - 890 - 8862 ( home fax )\ncarol . st . clair @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.085+0000", "entityId": 5117, "properties": {"text": "Subject: re : centana storage deal\nrita ,\nstephen and i have been working on this matter . we are getting the contracts and counter parties activated so they can be pathed for september 2001 . i talked to stephen this morning and he is working with global to get the counter parties active .\nthanks .\nmike\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : tuesday , december 11 , 2001 8 : 08 am\nto : olsen , michael ; swisher , stephen\ncc : anastas , sherry ; farmer , daren j .\nsubject : centana storage deal\nmike / stephen ,\nhave the two of you been able to get the deal in for the sale of the centana storage to aep ? please advise . i would like to have this completed for this close if possible .\ndaren - if you are not aware of this transaction , please let me know . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.089+0000", "entityId": 5118, "properties": {"text": "Subject: re : centana storage deal\nas soon as someone from global counterparties gets here i am going to have them activate the old contracts so that mike can finish pathing .\nmike - - i will send you an email to let you know when they are active .\nstephen r . swisher\nspecialist , energy operations\nenron net works , llc\nphone : 713 - 345 - 3042\nfax : 713 - 345 - 7701\ncell : 713 - 540 - 2063\nemail : stephen . swisher @ enron . com\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : tuesday , december 11 , 2001 8 : 08 am\nto : olsen , michael ; swisher , stephen\ncc : anastas , sherry ; farmer , daren j .\nsubject : centana storage deal\nmike / stephen ,\nhave the two of you been able to get the deal in for the sale of the centana storage to aep ? please advise . i would like to have this completed for this close if possible .\ndaren - if you are not aware of this transaction , please let me know . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.094+0000", "entityId": 5119, "properties": {"text": "Subject: physical gas summary by desk\njeff , here is the information you requested on where we were as of december 11 th . please note this is a snapshot and the situation is very fluid .\nbob superty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.099+0000", "entityId": 5120, "properties": {"text": "Subject: re : centana storage deal\nthe deals have been pathed and i have just actualized and balanced them . thanks .\nstephen r . swisher\nspecialist , energy operations\nenron net works , llc\nphone : 713 - 345 - 3042\nfax : 713 - 345 - 7701\ncell : 713 - 540 - 2063\nemail : stephen . swisher @ enron . com\n- - - - - original message - - - - -\nfrom : wynne , rita\nsent : tuesday , december 11 , 2001 8 : 08 am\nto : olsen , michael ; swisher , stephen\ncc : anastas , sherry ; farmer , daren j .\nsubject : centana storage deal\nmike / stephen ,\nhave the two of you been able to get the deal in for the sale of the centana storage to aep ? please advise . i would like to have this completed for this close if possible .\ndaren - if you are not aware of this transaction , please let me know . thanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.103+0000", "entityId": 5121, "properties": {"text": "Subject: re : killing ena to ena deals in sitara\njay ,\nlet ' s not assume what impact this will have . even though it is better to zero out deals we ( vm ) wouldn ' t want to go in and zero out 2000 deals .\nwe do have a few questions .\ni would like to discuss what minimal impact is ? how do you know what impact this will have ? is there a reason this will have little impact ? do all of these d 2 d deals have zero volume associated with them ?\nwho decided to do this ?\nwhy are we doing this ?\nwhat time span are we talking ( production months / year )\nlet ' s determine the impact if any ?\ni would like to meet with you guys and get more detail on why we are doing this and determine the impact ?\nthanks ,\nm . m .\n- - - - - original message - - - - -\nfrom : jaquet , tammy\nsent : thursday , december 13 , 2001 4 : 29 pm\nto : krishnaswamy , jayant\ncc : pena , matt ; superty , robert ; mcclure , mark ; wynne , rita ; pinion , richard ; farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti\nsubject : re : killing ena to ena deals in sitara\nimportance : high\njay ,\nif a deal is killed it poses a problem for us in unify if there are any paths associated with the deal ; therefore , we request the deals be zeroed out . call me if this is a problem . also , we would appreciate further details on why these deals are being killed .\nin addition , i have copied rita and mark from volume management for their input .\nregards ,\ntammy\nx 35375\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : thursday , december 13 , 2001 3 : 39 pm\nto : krishnaswamy , jayant ; pinion , richard ; jaquet , tammy\ncc : severson , russ ; truong , dat ; aybar , luis ; ma , felicia\nsubject : re : killing ena to ena deals in sitara\nthanks jay !\ntammy / richard :\nyou may want to let the schedulers know , although they may already .\n- - - - - original message - - - - -\nfrom : krishnaswamy , jayant\nsent : thursday , december 13 , 2001 3 : 38 pm\nto : pinion , richard ; jaquet , tammy\ncc : severson , russ ; pena , matt ; truong , dat ; aybar , luis ; ma , felicia\nsubject : killing ena to ena deals in sitara\nrichars / tammy :\nwe will be killing about 2000 deals in sitara tonight . whenever a deal is touched in sitara , it will bridge over to unify . these are desk 2 desk deals , and should have minimal impact on you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.108+0000", "entityId": 5122, "properties": {"text": "Subject: re : killing ena to ena deals in sitara\njay ,\nif a deal is killed it poses a problem for us in unify if there are any paths associated with the deal ; therefore , we request the deals be zeroed out . call me if this is a problem . also , we would appreciate further details on why these deals are being killed .\nin addition , i have copied rita and mark from volume management for their input .\nregards ,\ntammy\nx 35375\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : thursday , december 13 , 2001 3 : 39 pm\nto : krishnaswamy , jayant ; pinion , richard ; jaquet , tammy\ncc : severson , russ ; truong , dat ; aybar , luis ; ma , felicia\nsubject : re : killing ena to ena deals in sitara\nthanks jay !\ntammy / richard :\nyou may want to let the schedulers know , although they may already .\n- - - - - original message - - - - -\nfrom : krishnaswamy , jayant\nsent : thursday , december 13 , 2001 3 : 38 pm\nto : pinion , richard ; jaquet , tammy\ncc : severson , russ ; pena , matt ; truong , dat ; aybar , luis ; ma , felicia\nsubject : killing ena to ena deals in sitara\nrichars / tammy :\nwe will be killing about 2000 deals in sitara tonight . whenever a deal is touched in sitara , it will bridge over to unify . these are desk 2 desk deals , and should have minimal impact on you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.114+0000", "entityId": 5123, "properties": {"text": "Subject: re : killing ena to ena deals in sitara\ni talked to matt , we ' ll zero these deals out as opposed to killing them . thanks\n- - - - - original message - - - - -\nfrom : jaquet , tammy\nsent : thursday , december 13 , 2001 4 : 20 pm\nto : farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti\ncc : superty , robert\nsubject : fw : killing ena to ena deals in sitara\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : thursday , december 13 , 2001 3 : 39 pm\nto : krishnaswamy , jayant ; pinion , richard ; jaquet , tammy\ncc : severson , russ ; truong , dat ; aybar , luis ; ma , felicia\nsubject : re : killing ena to ena deals in sitara\nthanks jay !\ntammy / richard :\nyou may want to let the schedulers know , although they may already .\n- - - - - original message - - - - -\nfrom : krishnaswamy , jayant\nsent : thursday , december 13 , 2001 3 : 38 pm\nto : pinion , richard ; jaquet , tammy\ncc : severson , russ ; pena , matt ; truong , dat ; aybar , luis ; ma , felicia\nsubject : killing ena to ena deals in sitara\nrichars / tammy :\nwe will be killing about 2000 deals in sitara tonight . whenever a deal is touched in sitara , it will bridge over to unify . these are desk 2 desk deals , and should have minimal impact on you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.118+0000", "entityId": 5124, "properties": {"text": "Subject: fw : killing ena to ena deals in sitara\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : thursday , december 13 , 2001 3 : 39 pm\nto : krishnaswamy , jayant ; pinion , richard ; jaquet , tammy\ncc : severson , russ ; truong , dat ; aybar , luis ; ma , felicia\nsubject : re : killing ena to ena deals in sitara\nthanks jay !\ntammy / richard :\nyou may want to let the schedulers know , although they may already .\n- - - - - original message - - - - -\nfrom : krishnaswamy , jayant\nsent : thursday , december 13 , 2001 3 : 38 pm\nto : pinion , richard ; jaquet , tammy\ncc : severson , russ ; pena , matt ; truong , dat ; aybar , luis ; ma , felicia\nsubject : killing ena to ena deals in sitara\nrichars / tammy :\nwe will be killing about 2000 deals in sitara tonight . whenever a deal is touched in sitara , it will bridge over to unify . these are desk 2 desk deals , and should have minimal impact on you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.123+0000", "entityId": 5125, "properties": {"text": "Subject: fw : part 4 - deals to move\nmore auto - terminate deals\n- - - - - original message - - - - -\nfrom : gossett , jeffrey c .\nsent : thursday , december 13 , 2001 4 : 50 pm\nto : palmer , b . scott\nsubject : fw : part 4 - deals to move\n- - - - - original message - - - - -\nfrom : richardson , stacey\nsent : thursday , december 13 , 2001 4 : 49 pm\nto : gossett , jeffrey c .\ncc : hodge , jeffrey t . ; theriot , kim s . ; anderson , bridgette ; hilliard , marlene\nsubject : part 4 - deals to move\njeff ,\nhere are some more deals to move into the bankruptcy books . i will be out of the office tomorrow but bridgette anderson and marlene hilliard will be working on them if you have any questions .\nthanks ,\nsbr x 30569", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.129+0000", "entityId": 5126, "properties": {"text": "Subject: fw : auto - termination deal listing - part 3\nmore deals that will be moved to the bankruptcy book in tagg and zeroed out 12 / 01 forward in sitara .\nlogistics , as stated in earlier e - mails , call stacey richardson in contracts if any volumes have flowed after 11 / 30 on these deals . thanks .\n- - - - - original message - - - - -\nfrom : gossett , jeffrey c .\nsent : thursday , december 13 , 2001 12 : 07 pm\nto : palmer , b . scott\nsubject : fw : auto - termination deal listing - part 3\n- - - - - original message - - - - -\nfrom : richardson , stacey\nsent : thursday , december 13 , 2001 10 : 45 am\nto : gossett , jeffrey c .\ncc : theriot , kim s . ; hodge , jeffrey t .\nsubject : auto - termination deal listing - part 3\njeff ,\nhere are more deals that need to be moved into the bankruptcy books as a result of our contracts auto - terminating . i hope to finish the list of auto - terminated deals today ( if no emergencies arise that pull me off this ) .\nplease let me know if you have any questions .\nthanks for being so patient .\nsbr x 30569", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.134+0000", "entityId": 5127, "properties": {"text": "Subject: re : killing ena to ena deals in sitara\nmark :\nhere is a list of the 66 physical deals that were zeroed out from december 15 onwards las night .\nthere were also many financial deals that were killed , but i hope that does not matter to unify .\n- - - - - original message - - - - -\nfrom : mcclure , mark\nsent : thursday , december 13 , 2001 5 : 11 pm\nto : jaquet , tammy ; krishnaswamy , jayant\ncc : pena , matt ; superty , robert ; wynne , rita ; pinion , richard ; farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti\nsubject : re : killing ena to ena deals in sitara\njay ,\nlet ' s not assume what impact this will have . even though it is better to zero out deals we ( vm ) wouldn ' t want to go in and zero out 2000 deals .\nwe do have a few questions .\ni would like to discuss what minimal impact is ? how do you know what impact this will have ? is there a reason this will have little impact ? do all of these d 2 d deals have zero volume associated with them ?\nwho decided to do this ?\nwhy are we doing this ?\nwhat time span are we talking ( production months / year )\nlet ' s determine the impact if any ?\ni would like to meet with you guys and get more detail on why we are doing this and determine the impact ?\nthanks ,\nm . m .\n- - - - - original message - - - - -\nfrom : jaquet , tammy\nsent : thursday , december 13 , 2001 4 : 29 pm\nto : krishnaswamy , jayant\ncc : pena , matt ; superty , robert ; mcclure , mark ; wynne , rita ; pinion , richard ; farmer , daren j . ; heal , kevin ; kinsey , lisa ; lamadrid , victor ; smith , george f . ; sullivan , patti\nsubject : re : killing ena to ena deals in sitara\nimportance : high\njay ,\nif a deal is killed it poses a problem for us in unify if there are any paths associated with the deal ; therefore , we request the deals be zeroed out . call me if this is a problem . also , we would appreciate further details on why these deals are being killed .\nin addition , i have copied rita and mark from volume management for their input .\nregards ,\ntammy\nx 35375\n- - - - - original message - - - - -\nfrom : pena , matt\nsent : thursday , december 13 , 2001 3 : 39 pm\nto : krishnaswamy , jayant ; pinion , richard ; jaquet , tammy\ncc : severson , russ ; truong , dat ; aybar , luis ; ma , felicia\nsubject : re : killing ena to ena deals in sitara\nthanks jay !\ntammy / richard :\nyou may want to let the schedulers know , although they may already .\n- - - - - original message - - - - -\nfrom : krishnaswamy , jayant\nsent : thursday , december 13 , 2001 3 : 38 pm\nto : pinion , richard ; jaquet , tammy\ncc : severson , russ ; pena , matt ; truong , dat ; aybar , luis ; ma , felicia\nsubject : killing ena to ena deals in sitara\nrichars / tammy :\nwe will be killing about 2000 deals in sitara tonight . whenever a deal is touched in sitara , it will bridge over to unify . these are desk 2 desk deals , and should have minimal impact on you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.139+0000", "entityId": 5128, "properties": {"text": "Subject: attention : changes in remote access\nplease be aware that remote connectivity into the enron network has changed , ipass is no longer available . remote connectivity into enron may be obtained by using the econnect solution . authorization to use econnect may be requested via the erequest system ( you will find a link to erequest on http : / / itcentral . enron . com ) .\nemail is accessible from any computer with internet connectivity by logging into outlook web access http : \\ \\ mail . enron . com with your nt login id and password . accessing owa does not require an econnect connection .\nplease direct all questions or concerns to the resolution center at 713 - 853 - 1411\nets customers should direct inquiries to the ets solution center at 713 - 345 - 4745\nwe appreciate your cooperation in advance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.143+0000", "entityId": 5129, "properties": {"text": "Subject: from raymond bowen , jr . , exec . v . p . , finance & treasurer\nto : all enron employees\nfrom : raymond bowen , jr .\nevp , finance & treasurer\nsubject : update on employee expense reimbursement\npost - petition expenses\neffective immediately , the processing of expense reimbursement for business expenses incurred by employees after enron corp . ' s chapter 11 filing ( after december 2 nd ) has returned to normal . expenses will be reimbursed promptly upon submission . employees should conduct business travel in the ordinary course of business as approved by direct supervisors . new travel and entertainment guidelines regarding business travel and other employee expenses will be forthcoming . in the meantime , please use discretion as you incur expenses . all expenditures should be made with consideration given to enron ' s current financial situation .\npre - petition expenses\nwe will immediately begin to reimburse pre - petition expenses for current and former employees ( incurred prior to the december 2 nd chapter 11 filing ) up to a maximum of $ 5 , 000 . we understand that a number of employees have pre - petition expenses in excess of $ 5 , 000 . however , under the first day orders of the bankruptcy court , there is a $ 15 , 000 allowance per employee for unpaid pre - petition compensation , benefits , and related employee expenses . this $ 15 , 000 cap was imposed without input from enron management and counsel . we have sought clarification from the bankruptcy court to assure that this $ 15 , 000 cap does not include the reimbursement of medical , dental , or vision related expenses .\nwe have commenced a manual review of every individual with pending pre - petition expenses in excess of $ 5 , 000 . even prior to clarification from the court regarding the medical / dental / vision expense issue , we will begin to reimburse pre - petition expenses in excess of $ 5 , 000 and up to $ 15 , 000 as soon as we can verify that the aggregate reimbursements to an individual employee have not exceeded the $ 15 , 000 cap . unfortunately , since this will be a manual process , it will take some time to work through . employees with pre - petition business expenses in excess of $ 5 , 000 can assist us with this manual review process by providing a brief email summary of their situation , including the total amount of pending pre - petition medical / dental / vision claims , to expensereport @ enron . com .\nthank you for your patience .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.148+0000", "entityId": 5130, "properties": {"text": "Subject: fw : customer list\nthis one includes more financial counterparties non - eol\n- - - - - original message - - - - -\nfrom : winfree , o ' neal d .\nsent : wednesday , december 19 , 2001 11 : 13 am\nto : martin , thomas a .\nsubject : customer list\ntom ,\nattached are eol customers between july 1 , 2001 and nov . 30 , 2001 , broken out by physical and financial . . . the only physical customers i remember non eol are imperial sugar and texas energy . . . i ' m also checking this list against other non - eol deals eric or joe might have done , but for now take a look at this . . . o", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.152+0000", "entityId": 5131, "properties": {"text": "Subject: fw : part 5 - deals to move\nagain , if there are any deals in this list that have volumes for december , notify stacey richardson . thanks .\n- - - - - original message - - - - -\nfrom : gossett , jeffrey c .\nsent : tuesday , december 18 , 2001 9 : 22 am\nto : palmer , b . scott\nsubject : fw : part 5 - deals to move\nimportance : high\n- - - - - original message - - - - -\nfrom : richardson , stacey\nsent : tuesday , december 18 , 2001 9 : 05 am\nto : gossett , jeffrey c .\ncc : theriot , kim s . ; wallumrod , ellen ; anderson , bridgette ; elledge , susan ; campos , sylvia a . ; hilliard , marlene\nsubject : part 5 - deals to move\nimportance : high\njeff ,\nplease find part 5 of the ena deals that still need to be moved into the bankruptcy books as a result of our contracts auto - terminating . i ' m getting ready to leave the office for the day , but bridgette anderson will be working on the last few deals . we have been compiling a list of deals that will need further review by legal and / or risk and will have these to you very soon as well .\nsylvia campos and susan elledge will be working on deal listings for contracts terminated by the counterparty .\nplease call any of the people listed above , kim theriot , or page me at ( 713 ) 710 - 6084 if you should have any questions or concerns with this data . i will be back in the office tomorrow .\nthanks ,\nsbr x 30569", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.157+0000", "entityId": 5132, "properties": {"text": "Subject: fw : lisa ' s # ' s\n- - - - - original message - - - - -\nfrom : hanson , kristen j .\nsent : thursday , december 20 , 2001 9 : 41 am\nto : baumbach , david\nsubject : re : lisa ' s # ' s\ndave ,\nguess i had some misinformation on the type . per yvette , the platelets or cells in darren farmer ' s blood were the match and the blood type was secondary . i ' m not sure how it works , but darren is definitely the guy . i have a call in to lisa to clarify this .\nkris\n- - - - - original message - - - - -\nfrom : baumbach , david\nsent : thursday , december 20 , 2001 9 : 00 am\nto : hanson , kristen j .\nsubject : re : lisa ' s # ' s\nfunny . . . when i talked to daren , he said he was a + . could it be daron giron ?\n- - - - - original message - - - - -\nfrom : hanson , kristen j .\nsent : thursday , december 20 , 2001 8 : 04 am\nto : baumbach , david\nsubject : lisa ' s # ' s\nhi dave ,\nthanks for offering to talk to darren about lisa & christopher . lisa can be reached at home at 281 - 296 - 0788 or cell 713 - 443 - 4523 . i ' m sure she can fill in the details on how to have the blood credited to her account .\nanyone else you know of who has b - blood and would like to give would be much appreciated !\nkris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.162+0000", "entityId": 5133, "properties": {"text": "Subject: bankruptcy management committee\nin an effort to better organize the activities and minimize the expenses related to the chapter 11 filing , we have formed the bankruptcy management committee . there are many outside firms representing multiple parties that will be requesting , among other things , certain tasks to be performed , filings with the bankruptcy court , financial analysis and general business information . to ensure these activities are coordinated , the bankruptcy management committee will now be responsible for overseeing this process . the following is a list of some of the parties that may contact you directly . if anyone from these firms , or other firms , contacts you related to the bankruptcy , please notify a member of the committee to ensure the efforts are coordinated . all outside firms will be requested to notify a member of the committee prior to contacting other enron personnel or outside parties , including the court and creditors ' committee .\nfirm relationship\nbankruptcy court ( i . e . motions , etc . )\ncreditors ' committee\nu . s . trustee\nernst & young accountants for the creditor ' s committee\nhoulihan , lokey , howard & zukin financial advisors for the creditors ' committee\nblackstone financial advisors for enron\nbatchelder and partners financial advisors for enron\nweil , gotshal and manges bankruptcy attorneys for enron\nmilbank tweed attorneys for the creditors ' committee\nandrews and kurth attorneys for enron corp\nthe following are the members of the bankruptcy management committee :\nray bowen - chairman\nbob butts\njim fallon\ndave glassford\ndave gorte\nmark muller\njulia murray\nlou stoler\ninitially , this committee will meet on a daily basis to organize all the bankruptcy related activities as well as to prioritize requests going to the creditors ' committee and the court . it is extremely important that the company provides accurate and timely information to the court , the creditors ' committee and their advisors . accordingly , we request the assistance of all employees and outside firms in coordinating the bankruptcy efforts with this newly formed committee .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.169+0000", "entityId": 5134, "properties": {"text": "Subject: tenaska iv\ndarren :\nif you ' re in the office today , i need some changes to tenaska iv .\ndeal 384258 aug 2001 - change demand fee from 4 , 117 , 198 . 00 to 4 , 110 , 035 . 82\nsep 2001 - change demand fee from 2 , 846 , 818 . 24 to 2 , 833 , 539 . 74\nthanks ,\nmegan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.177+0000", "entityId": 5135, "properties": {"text": "Subject: fw :\nlisted below are some guidelines for gathering the necessary information for netco contract setup so we can get as much done as possible prior to our start date . i suggest each manager start making the phone calls and if necessary get others at the desk to help out . again , the goal is to get hard copies of the contracts in our hands for review so we can fill out all of the necessary information ahead of time . take good notes on the questions that come up when speaking with the pipes . we can get legal involved as needed when major issues surface .\nplease let me know if you have any further questions , tks - bob\n- - - - - original message - - - - -\nfrom : calcagno , suzanne\nsent : wednesday , january 02 , 2002 4 : 33 pm\nto : superty , robert\nsubject : fw :\nhi all -\nattached above is the master list of contracts we ' ll need for day 1 of newco . as the footnotes indicate , we ' ll also need new business party id ' s / passwords , an ebb agreement for all pipes and a tpa for each edi pipe ( tammy & i will be working on tpa ' s and ebb ' s ) . the timing indicated assumes that we have a clear newco structure , that the newco credit status has been identified , and that a duns number has been established . the two week estimate is built on working through the pipelines ' credit process as an entirely new entity and on turning the contracts through legal on each end , so it may be shorter for some of the simpler agreements but in any event we should estimate at least 3 - 5 days even for pooling agreements . for the ldc ' s and intrastates , we ' ll need to specifically identify what each requires .\nas we discussed , we need to call each pipeline and identify the following information :\npipeline contact name and number ( i know some of you sent me this b / f - - but pls make sure that it ' s the legal / regulatory contact , not your business counterpart )\ncredit requirements for a new entity with an \" a \" credit rating ( they may just refer you to the tariff , if so , pls . ask them for a specific site so we can do the research )\nget a sense of the reaction of the pipe / ldc regarding credit for the new entity - - we can set up a discussion between our legal and theirs so we can resolve those issues and move forward to contracting .\nin the event that any of them raise the issue of paying any of the old enron bills , just reiterate that we ' re setting up a completely new entity and give them bob ' s , mine , or jeff hodge ' s name to discuss the estate issues .\nif there are different requirements for different service levels ( ie , pooling vs . it vs . ft ) , pls ask them to specify so that we can get the easier agreements in place first and get business started on the pipe .\nwe need to get a hard copy of the contract for each service level - - pls . ask the pipe / ldc to fax it over or give you a specific reference to their online tariff where we can find it . once we have those together , i ' ll run the traps with legal .\nit would also be helpful if each desk identifies a first and second tier of priority pipes and agreement so that we can get you up and running for the first tier , then work on the second .\ni will be out of the office thursday & friday , but please call me on my cell phone at 713 - 516 - 2574 with any questions .\nthanks ,\nsuzanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.184+0000", "entityId": 5136, "properties": {"text": "Subject: re : netco items\nyou did , it was part of another email . tks - bob\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , january 02 , 2002 11 : 04 am\nto : superty , robert\ncc : olsen , michael\nsubject : re : netco items\nbob .\ni could have sworn that i sent you this information earlier . but i can ' t find it in my e - mail anywhere , so here it is :\nhighest priority\nel paso gas transmission texas pipeline ( formerly pge texas and valero ) hub contract , park jaquet , tammy ; olinger , kimberly s . ; calcagno , suzanne ; farmer , daren j . ; lamadrid , victor ; sullivan , patti ; gay , randall l .\ncc : jackson , brandee ; hall , bob m\nsubject : netco items\nwanted to share the latest communication on netco . this is all good news and exciting to see that things will be moving on a fast track from this point forward . i will be pulling you together and asking for some information to meet the plans and deadlines listed below .\nfor a start please review your pipe coverage that is planned on your desk with the netco team you will have to work with and forward me that breakdown . i know you took a preliminary look at this but i want you all to rethink and give me a \" final or startup \" list . the list you gave me on the contracts required for netco on the pipelines has been consolidated and is being reviewed . i believe we need to take a look at some of the intrastates and key ldc ' s and get that info on the list . seating plan should be simple once we get a better handle on the layout for 5 & 6 . i ' ll try and get some details today . don ' t know if we will be allocated spots on 6 . it systems layout and structure is already being planned / discussed . most likely we will get involved in some testing once they start laying out the new architecture .\nin addition any other items for a re - start that you can think of please forward to me .\nof course we still have the major hurdle of securing a buyer and once / if we do what do they actually submit a bid to purchase . let ' s be optimistic and hope they are interested in the netco structure that has been laid out . regardless we still need to do all of the tasks listed below to get ready .\nthanks - bob\nthe new year has arrived and we really to finalize a lot of the work with regards to moving into netco . obviously we still do not have a deal but the deadline is approaching and preparations need to be finalized .\nthe main areas to focus on over the next week are : -\n( i ) re - start / integration plans ( due on jan 7 ) to be forwarded to louise\nthese plans need to be detailed and show clear detailed timelines and detailed responsibilities for getting us up and running as soon as possible .\nthe current restart date is january 21 , 2001 but may be pushed forward to january 14 , 2002 .\n( ii ) budget ( due jan 3 , 2002 ) to be forwarded to faith killen\nfirst year budget to include all start up costs ( some of which can be amortized )\n( iii ) seating plans tammy shepperd to co - ordinate\nwe need to start the planning process for seating as we will be living on floors 5 & 6 of the enron south building .\ni have asked tammy shepperd to commence the seating plan and we would look to start the moves as soon as possible but with a large number occuring around january 11 , 2002 .\n( iv ) due diligence\nwe continue the process with two new companies this week ( wednesday and thursday ) . andy zipper is taking the lead for the company arriving on wednesday , please help him with his requirements .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.188+0000", "entityId": 5137, "properties": {"text": "Subject: re : netco items\ndarren , plan is to have the necessary contracts in place under the new netco name so we can do business on all key pipes . regarding the intrastates i suggest you think about the key ones so we have them on the list and get basic contracts in place once we have a new name and parent . also what services you want on each so we get all the necessary contracts done .\ni ' ll get you some budget info shortly , tks - bob\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , january 02 , 2002 9 : 43 am\nto : superty , robert\nsubject : re : netco items\nbob ,\nfor the texas desk , mike olsen and i will start out handling the scheduling activities . as we start up we will not be doing a lot of shipping on the intrastate pipes . we will primarily be utilizing hub and cartwheel agreements and net outs . trading primarily on the waha , katy , and carthage hubs . i will cover katy and carthage . mike will continue to cover waha and any shipping activities on the intrastate pipes . i will need a second person fairly soon after we begin trading again ( within a month or two ) .\nwhat are you thinking that we need to look into on the intrastates ?\nalso , with message of setting up new budgets , can you have brandy send me a copy of the budget we had in place for texas 2002 ?\nthanks .\nd\n- - - - - original message - - - - -\nfrom : superty , robert\nsent : wednesday , january 02 , 2002 8 : 51 am\nto : kinsey , lisa ; jaquet , tammy ; olinger , kimberly s . ; calcagno , suzanne ; farmer , daren j . ; lamadrid , victor ; sullivan , patti ; gay , randall l .\ncc : jackson , brandee ; hall , bob m\nsubject : netco items\nwanted to share the latest communication on netco . this is all good news and exciting to see that things will be moving on a fast track from this point forward . i will be pulling you together and asking for some information to meet the plans and deadlines listed below .\nfor a start please review your pipe coverage that is planned on your desk with the netco team you will have to work with and forward me that breakdown . i know you took a preliminary look at this but i want you all to rethink and give me a \" final or startup \" list . the list you gave me on the contracts required for netco on the pipelines has been consolidated and is being reviewed . i believe we need to take a look at some of the intrastates and key ldc ' s and get that info on the list . seating plan should be simple once we get a better handle on the layout for 5 & 6 . i ' ll try and get some details today . don ' t know if we will be allocated spots on 6 . it systems layout and structure is already being planned / discussed . most likely we will get involved in some testing once they start laying out the new architecture .\nin addition any other items for a re - start that you can think of please forward to me .\nof course we still have the major hurdle of securing a buyer and once / if we do what do they actually submit a bid to purchase . let ' s be optimistic and hope they are interested in the netco structure that has been laid out . regardless we still need to do all of the tasks listed below to get ready .\nthanks - bob\nthe new year has arrived and we really to finalize a lot of the work with regards to moving into netco . obviously we still do not have a deal but the deadline is approaching and preparations need to be finalized .\nthe main areas to focus on over the next week are : -\n( i ) re - start / integration plans ( due on jan 7 ) to be forwarded to louise\nthese plans need to be detailed and show clear detailed timelines and detailed responsibilities for getting us up and running as soon as possible .\nthe current restart date is january 21 , 2001 but may be pushed forward to january 14 , 2002 .\n( ii ) budget ( due jan 3 , 2002 ) to be forwarded to faith killen\nfirst year budget to include all start up costs ( some of which can be amortized )\n( iii ) seating plans tammy shepperd to co - ordinate\nwe need to start the planning process for seating as we will be living on floors 5 & 6 of the enron south building .\ni have asked tammy shepperd to commence the seating plan and we would look to start the moves as soon as possible but with a large number occuring around january 11 , 2002 .\n( iv ) due diligence\nwe continue the process with two new companies this week ( wednesday and thursday ) . andy zipper is taking the lead for the company arriving on wednesday , please help him with his requirements .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.193+0000", "entityId": 5138, "properties": {"text": "Subject: netco items\nwanted to share the latest communication on netco . this is all good news and exciting to see that things will be moving on a fast track from this point forward . i will be pulling you together and asking for some information to meet the plans and deadlines listed below .\nfor a start please review your pipe coverage that is planned on your desk with the netco team you will have to work with and forward me that breakdown . i know you took a preliminary look at this but i want you all to rethink and give me a \" final or startup \" list . the list you gave me on the contracts required for netco on the pipelines has been consolidated and is being reviewed . i believe we need to take a look at some of the intrastates and key ldc ' s and get that info on the list . seating plan should be simple once we get a better handle on the layout for 5 & 6 . i ' ll try and get some details today . don ' t know if we will be allocated spots on 6 . it systems layout and structure is already being planned / discussed . most likely we will get involved in some testing once they start laying out the new architecture .\nin addition any other items for a re - start that you can think of please forward to me .\nof course we still have the major hurdle of securing a buyer and once / if we do what do they actually submit a bid to purchase . let ' s be optimistic and hope they are interested in the netco structure that has been laid out . regardless we still need to do all of the tasks listed below to get ready .\nthanks - bob\nthe new year has arrived and we really to finalize a lot of the work with regards to moving into netco . obviously we still do not have a deal but the deadline is approaching and preparations need to be finalized .\nthe main areas to focus on over the next week are : -\n( i ) re - start / integration plans ( due on jan 7 ) to be forwarded to louise\nthese plans need to be detailed and show clear detailed timelines and detailed responsibilities for getting us up and running as soon as possible .\nthe current restart date is january 21 , 2001 but may be pushed forward to january 14 , 2002 .\n( ii ) budget ( due jan 3 , 2002 ) to be forwarded to faith killen\nfirst year budget to include all start up costs ( some of which can be amortized )\n( iii ) seating plans tammy shepperd to co - ordinate\nwe need to start the planning process for seating as we will be living on floors 5 & 6 of the enron south building .\ni have asked tammy shepperd to commence the seating plan and we would look to start the moves as soon as possible but with a large number occuring around january 11 , 2002 .\n( iv ) due diligence\nwe continue the process with two new companies this week ( wednesday and thursday ) . andy zipper is taking the lead for the company arriving on wednesday , please help him with his requirements .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.197+0000", "entityId": 5139, "properties": {"text": "Subject: northern natural gas\nyesterday , enron settled a procedural dispute with dynegy over northern natural gas . our settlement allows dynegy to exercise its option to acquire the pipeline , dismisses their texas lawsuit and extends enron ' s right to repurchase until june 30 . we reached this settlement as part of our efforts to bring enron out of bankruptcy . while we would like to keep northern natural , we still have some 9 , 000 miles of safe , profitable interstate pipelines as a base to rebuild our core businesses .\nthe settlement provides the best opportunity to resolve the pipeline issue quickly and pursue our $ 10 billion damage claim against dynegy . it also allows us to avoid the very substantial costs and distractions from protracted litigation in state courts .\nwe want to see a positive future for the employees working with northern natural gas . below is a copy of a message from stan horton further explaining this decision to the employees of enron transportation services .\nken\ndear ets colleague :\non thursday , enron entered into a settlement over dynegy ' s exercise of its option to acquire the northern natural gas pipeline . the settlement allows dynegy to exercise the option and assume interim control of the pipeline while enron pursues its damage claim against dynegy .\nin this respect , enron corp . has carefully weighed the substantial costs and turmoil that litigating this possession issue would create for the company and the employees of northern natural gas . consequently , enron corp . has decided not to contest interim possession and allow the transfer of northern natural gas to dynegy , while the larger issues affecting its future are resolved .\nthe company has concluded that with this settlement , enron should be able to resolve the issue more quickly , as well as avoid the legal cost burden and distractions to the business from protracted litigation in state court . for the northern natural gas employees , i believe this decision should allow them to steer clear of the dispute and focus on the day - to - day satisfaction of running a valuable , successful business .\nbeginning immediately we will be working to achieve a smooth transition and to align the appropriate resources to assure continued safe , reliable and efficient operation of northern natural gas .\nover many years we have run high quality , cost conscious and profitable businesses in ets . keep up the good work !\nstan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.202+0000", "entityId": 5140, "properties": {"text": "Subject: intrastate and 311 contracts for guadalupe pipeline .\ndaren ,\nper the request of our marketer brian kerns , attached is the contract\nforms for both intrastate and 311 on our guadalupe pipeline .\n( see attached file : form guadalupe insrastate transportation contract . doc )\n( see attached file : exhibit a - intra new 8 - 31 - 01 . doc ) ( see attached file :\nexhibit b - intra new 8 - 31 - 01 . doc )\n( see attached file : form guadalupe 311 transportation agreement . doc ) ( see\nattached file : exhibit a - 311 new 8 - 31 - 01 . doc ) ( see attached file : exhibit\nb - 311 new 8 - 31 - 01 . doc )\nplease call me if you have any questions .\nchris syzdek\nsenior contract analyst\n713 - 627 - 6485\n- form guadalupe insrastate transportation contract . doc\n- exhibit a - intra new 8 - 31 - 01 . doc\n- exhibit b - intra new 8 - 31 - 01 . doc\n- form guadalupe 311 transportation agreement . doc\n- exhibit a - 311 new 8 - 31 - 01 . doc\n- exhibit b - 311 new 8 - 31 - 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.207+0000", "entityId": 5141, "properties": {"text": "Subject: fw : customers\n- - - - - original message - - - - -\nfrom : buss , jd\nsent : friday , january 04 , 2002 10 : 25 am\nto : weldon , v . charles\nsubject : customers", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.213+0000", "entityId": 5142, "properties": {"text": "Subject: cleburne issues\ndaren , with megan gone i just wanted to touch base with you on the status of the enron payments owed to the cleburne plant . the current issues are as follows :\nnovember gas sales $ 600 , 377 . 50\noctober payment to ena for txu pipeline charges $ 108 , 405 . 00\ncleburne receivable from enron $ 708 , 782 . 50\nless : november gas agency fees ( $ 54 , 000 . 00 )\nnet cleburne receivable from enron $ 654 , 782 . 50\nper my discussions with megan , she stated that about $ 500 k of the $ 600 k nov gas sales was intercompany ( desk to desk ) sales , with the remainder from txu . are we able to settle any intercompany deals now ? are we able to settle with txu ?\nadditionally , you ' ll see that i included the oct txu payment in the receivable owed to cleburne also . this is because i always pay megan based upon the pipeline estimates in michael ' s file , even though they are not finalized until the next month . therefore in my november payment to enron , i paid ena for october ' s estimate , of which megan would have paid the final bill on 12 / 26 / 01 when it was finalized . however , i had to pay the october bill directly last month , even though i had already sent the funds to ena in november . therefore , i essentially paid this bill twice ( once to ena in nov & once to txu in dec ) . i deducted the november agency fees from these receivable totals to show the net amount owed to cleburne .\nplease advise as to the status of these bills . you can reach me at 713 - 853 - 7280 . thanks .\njames", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.218+0000", "entityId": 5143, "properties": {"text": "Subject: contract status needed\non monday we have to file a \" transition plan \" with louise kitchen for netco . she wants details . on that note i need a status report from each desk on our effort to start the contract process for pipes , tpa ' s & ebb ' s so i can include that in the report . i have received some emails however i would like each manager to put together a summary in an excel spreadsheet that we can have suzanne consolidate with the stuff she already put together . please cover the key items listed in the earlier email . also we should be getting as much hard copy as possible so we can proceed with our goal of preparing for a startup . i suggest reviewing the paperwork and identify the stuff that you will need to get the forms completed . no doubt we will have substantial gaps but as long as we know where and what they are we can get the proper internal people involved ( legal , credit , etc . )\ntks - bob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.223+0000", "entityId": 5144, "properties": {"text": "Subject: re : physical curve mappings _ sitara\ni would much rather add the thompsonville now . . . o\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , january 7 , 2002 2 : 04 pm\nto : winfree , o ' neal d .\nsubject : re : physical curve mappings _ sitara\now ,\ni went through the list on the sort by pipe and highlighted the curves / mapping we can delete ( yellow ) and those we can change ( orange ) . the only curves we will have left are katy , waha , hsc , agua dulce , and thompsonville . i expect to be using thompsonville in 6 months to a year . if it easier or cleaner to delete that curve and add it when we need it , that will be fine . let me know if you have any questions .\n>\nd\n- - - - - original message - - - - -\nfrom : winfree , o ' neal d .\nsent : monday , january 07 , 2002 12 : 55 pm\nto : farmer , daren j . ; baumbach , david ; olsen , michael\ncc : martin , thomas a .\nsubject : physical curve mappings _ sitara\nhey gang ,\nattached are the physical curve mappings as provided by russ severson . . . please take a peek and let us know if we need to change , add / delete , update any points / mappings going forward in a netco environment . . . for instance , i would like to change texoma to carthage on the curve mappings . . . also , i would like to delete all derived curves , leaving only carthage , katytailgate , and agua dulce .\nthe other physical locations would be shipchannel , waha and katy ( non - tailgate ) . . . let me know your thoughts . . . o ' neal 3 - 9686\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.229+0000", "entityId": 5145, "properties": {"text": "Subject: re : intrastate and 311 contracts for guadalupe pipeline .\ndaren ,\nyou would need to contact the credit department in denver , co . please\ncontact andy walls at 720 - 944 - 9541 . he is the credit manager .\nchris\ndaren . j . farmer\n@ enron . com to : cgsyzdek @ duke - energy . com\ncc :\n01 / 07 / 02 02 : 07 subject : re : intrastate and 311 contracts for guadalupe pipeline .\npm\nchris ,\nwhat credit requirements to you have for a new entity with an \" a \" credit\nrating ?\ndaren\n- - - - - original message - - - - -\nfrom : \" christopher g syzdek \" @ enron\nsent : friday , january 04 , 2002 3 : 52 pm\nto : farmer , daren j .\ncc : brian kerns\nsubject : intrastate and 311 contracts for guadalupe pipeline .\ndaren ,\nper the request of our marketer brian kerns , attached is the contract\nforms for both intrastate and 311 on our guadalupe pipeline .\n( see attached file : form guadalupe insrastate transportation\ncontract . doc )\n( see attached file : exhibit a - intra new 8 - 31 - 01 . doc ) ( see attached file :\nexhibit b - intra new 8 - 31 - 01 . doc )\n( see attached file : form guadalupe 311 transportation agreement . doc ) ( see\nattached file : exhibit a - 311 new 8 - 31 - 01 . doc ) ( see attached file : exhibit\nb - 311 new 8 - 31 - 01 . doc )\nplease call me if you have any questions .\nchris syzdek\nsenior contract analyst\n713 - 627 - 6485\n- form guadalupe insrastate transportation contract . doc >\n- exhibit a - intra new 8 - 31 - 01 . doc >\n- exhibit b - intra new 8 - 31 - 01 . doc >\n- form guadalupe 311 transportation agreement . doc >\n- exhibit a - 311 new 8 - 31 - 01 . doc >\n- exhibit b - 311 new 8 - 31 - 01 . doc >\nthis e - mail is the property of enron corp . and / or its relevant affiliate\nand may contain confidential and privileged material for the sole use of\nthe intended recipient ( s ) . any review , use , distribution or disclosure by\nothers is strictly prohibited . if you are not the intended recipient ( or\nauthorized to receive for the recipient ) , please contact the sender or\nreply to enron corp . at enron . messaging . administration @ enron . com and delete\nall copies of the message . this e - mail ( and any attachments hereto ) are not\nintended to be an offer ( or an acceptance ) and do not create or evidence a\nbinding and enforceable contract between enron corp . ( or any of its\naffiliates ) and the intended recipient or any other party , and may not be\nrelied on by anyone as the basis of a contract by estoppel or otherwise .\nthank you .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.234+0000", "entityId": 5146, "properties": {"text": "Subject: physical curve mappings _ sitara\nhey gang ,\nattached are the physical curve mappings as provided by russ severson . . . please take a peek and let us know if we need to change , add / delete , update any points / mappings going forward in a netco environment . . . for instance , i would like to change texoma to carthage on the curve mappings . . . also , i would like to delete all derived curves , leaving only carthage , katytailgate , and agua dulce .\nthe other physical locations would be shipchannel , waha and katy ( non - tailgate ) . . . let me know your thoughts . . . o ' neal 3 - 9686", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.239+0000", "entityId": 5147, "properties": {"text": "Subject: news\nat least two bids seen for enron trading ops - lawyer by carol s . remond 01 / 07 / 2002 dow jones news service ( copyright ( c ) 2002 , dow jones & company , inc . ) of dow jones newswires new york - ( dow jones ) - enron corp . ( ene ) expects at least two bidders to come in monday with offers to jump - start the energy company ' s trading operations . \" we expect bids today . probably two or more , \" said martin bienenstock , a lawyer who represents enron in its bankruptcy proceedings in new york . bienenstock declined to identify possible bidders . but a person familiar with the matter said that citigroup ( c ) , one of enron ' s main creditors , would likely be among those bidding for enron ' s trading assets . bids are due by 4 p . m . est monday . an auction will be held thursday .\ncopyright ? 2000 dow jones & company , inc . all rights reserved .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.244+0000", "entityId": 5148, "properties": {"text": "Subject: netco planning\ntammy , richard - i would richard to take ownership of the training that would be required for the new scheduling people that will be on each desk . you can coordinate who needs training with the managers . this needs to happen asap . also if you can line up some basic sitara training for those that need it that would be helpful . not sure who can do the sitara piece but you can run the traps on that . i will include this effort in the plan that will be forwarded to louise today .\nlet me know if you get some dates together , tks - bob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.249+0000", "entityId": 5149, "properties": {"text": "Subject: re : contract status needed\ndaren , please forward to suzanne calcagno , she sits near me on 5\ntks - bob\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : monday , january 07 , 2002 8 : 33 am\nto : superty , robert\nsubject : re : contract status needed\nbob ,\nwho is collecting the hard copies or e - mails of contracts ? i ' ve got the guadalupe contracts now .\nd\n- - - - - original message - - - - -\nfrom : superty , robert\nsent : friday , january 04 , 2002 9 : 26 am\nto : kinsey , lisa ; sullivan , patti ; gay , randall l . ; lamadrid , victor ; farmer , daren j . ; jaquet , tammy ; calcagno , suzanne\nsubject : contract status needed\non monday we have to file a \" transition plan \" with louise kitchen for netco . she wants details . on that note i need a status report from each desk on our effort to start the contract process for pipes , tpa ' s & ebb ' s so i can include that in the report . i have received some emails however i would like each manager to put together a summary in an excel spreadsheet that we can have suzanne consolidate with the stuff she already put together . please cover the key items listed in the earlier email . also we should be getting as much hard copy as possible so we can proceed with our goal of preparing for a startup . i suggest reviewing the paperwork and identify the stuff that you will need to get the forms completed . no doubt we will have substantial gaps but as long as we know where and what they are we can get the proper internal people involved ( legal , credit , etc . )\ntks - bob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.254+0000", "entityId": 5150, "properties": {"text": "Subject: tenaska iv\nthe attached memo is being forwarded at the request of jeff hodge .\njoanne rozycki\nsenior administrative assistant\nenron north america corp .\n1400 smith street , eb 3880 d\nhouston , tx 77002\nphone : ( 713 ) 853 - 5968 fax : ( 713 ) 646 - 3490\nemail : joanne . rozycki @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.258+0000", "entityId": 5151, "properties": {"text": "Subject: fw : revised : gas logistics netco restart\nfyi - this is the \" day 1 \" list that you worked on consolidated into one spreadsheet . as you can see the logistics managers for each desk , working with suzanne and me will be responsible for getting this done . suzanne is putting together a master binder and will start reviewing the requirements with each of you to get as much done ahead of time as possible . in the master binder will be the more detailed spreadsheets with the additional , and critical , notes you included .\nlet me know if you have any questions , tks . in addition tammy is working on the tpa ' s and ebb ' s to get the major edi pipes up and running asap .\nbob\n- - - - - original message - - - - -\nfrom : superty , robert\nsent : tuesday , january 08 , 2002 10 : 39 am\nto : kitchen , louise\ncc : calcagno , suzanne\nsubject : revised : gas logistics netco restart\nlouise , as requested , attached is the gas logistics pipeline contract spreadsheet with responsibilities added .\nplease let me know if you have any questions , tks - bob superty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.263+0000", "entityId": 5152, "properties": {"text": "Subject: ngi article on auction\nngi ' s daily gas price index\nbreaking news : posted jan 9 , 2 : 28 pm\ndynegy not opposed to enron auction ; senate subcommittee to issue 51 subpoenas\nnearly 20 of bankrupt enron corp . ' s creditors have apparently filed motions to delay the scheduled auction of the company ' s trading assets this week , but one - time merger partner and creditor dynegy corp . will not be one of them , a spokesman said wednesday . however , whether the auction proceeds as planned , enron is facing more obstacles on the legal front with 51 subpoenas requesting documents expected to be issued friday by the senate ' s permanent subcommittee on investigations .\nthe u . s . bankruptcy court for the southern district of new york has been asked by the creditors to delay approving any offer for enron ' s trading business , once the most profitable unit of the company . the motion to delay was requested to allow the creditors time to look at the assets up for sale . included in the auction are assets from its enrononline operation , which enron would like to use in a joint venture with a cash - rich company .\nunder enron ' s proposal , a 51 % joint venture partner would form a new company with enron to be called new energy trading co . , or netco . enron would contribute information technology and back office systems among other things , in exchange for a 49 % stake . as of late monday , ubs ag , citigroup inc . and bp had made bids for some of the assets .\namong those opposing the auction , now set for thursday with a decision on the winning bids as early as friday , is the royal bank of scotland group plc , which said , \" absent a disclosure of the intended uses for the proceeds of this sale , the creditors are unable to gauge that the benefits are adequate , appropriate and directed to the proper beneficiaries . \" kansas city , mo - based aquila also is opposed to the auction because of concerns about how the proceeds would be used . aquila wants the auction ' s proceeds put in escrow until it is determined which units of enron receive the money .\nhowever , dynegy does not plan to oppose the auction , said company spokesman steve stengel , who also expressed surprise that any company would want to delay it . \" dynegy has not taken any action to delay the sale of enron ' s trading business , \" he told ngi . stengel also confirmed that the scheduled sale of northern natural gas co . from enron to dynegy is still set to close by the end of january .\nstill to come is word on who and what documents are being subpoenaed by the senate ' s permanent subcommittee on investigations . the subpoenas will be served on enron , its accounting firm andersen and 49 individual officers , employees and members of the board of directors . the subcommittee is one of five congressional panels investigating the fallen giant along with the u . s . securities and exchange commission , the department of labor and the department of justice .\n\" the subcommittee is looking into the role of the officers and board members , the role of the auditors , and the role of special - purpose entities , \" a subcommittee spokesman told reuters . these are some of the same types of things being investigated by the house of representatives financial services committee , the senate commerce committee and the house and senate energy committees . the spokesman said the subpoenas would allow enron and the others \" several weeks \" to respond .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.268+0000", "entityId": 5153, "properties": {"text": "Subject: re : tenaska iv\ni ' ll call you on thursday . . . what ' s a good time ?\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , january 09 , 2002 3 : 03 pm\nto : hill , garrick\ncc : olsen , michael\nsubject : tenaska iv\nrick ,\nwe need to talk about the ability of ena to continue its the current role as agent of tenaska iv .\n1 ) since the end on november , ena has not been able to complete gas trading transactions . we cannot find any counterparties to trade physical gas in texas . this , of course , is due to the bankruptcy . as a result , we are not able to sale tenaska ' s excess fuel . we did contact brazos to ask if they would buy a portion of the gas at a gas daily price , but they do not want it ( gas daily pricing has been below the firm contract price for a while ) . in december , we had to cut 10 , 000 / day from the 7 th through the 27 th . for january , we haven ' t had to cut yet , but i am sure that the pipe will ask us to do this in the near future .\n2 ) for november activity ( which was settled in dec ) , ena owes tenaska iv for the excess supply that we sold . however , due to the bankruptcy , we could not make payments out . ena could not pay the suppliers or the pipeline . james armstrong paid the counterparties directly . i think that he should continue to do this for dec and jan . we should not transfer any funds from tenaska iv to ena .\ni don ' t know how enron ' s ownership in the plant factors out in the bankruptcy preceding . but we need to determine how to go forward with the fuel management .\nplease give me a call or e - mail me . we can get together sometime thurs or fri morning .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.272+0000", "entityId": 5154, "properties": {"text": "Subject: generic contract\nhi daren ,\nsorry for the delay . here is a blank contract . let me know if i can do\nanything else for you .\npmac\n- proforma intrastate . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.277+0000", "entityId": 5155, "properties": {"text": "Subject: re : contracts and credit\nthanks - - i ' ll include it in the master file .\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , january 10 , 2002 8 : 02 am\nto : calcagno , suzanne\nsubject : contracts and credit\nsuzanne ,\nattached is an updated file on our pipeline contract situation . i haven ' t gotten much info from credit managers , but i wanted to pass along their names and numbers .\nd\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.282+0000", "entityId": 5156, "properties": {"text": "Subject: re : tenaska iv\nok , since we don ' t appear to be able to hook up by phone . . .\nwith respect to ( 1 ) , if ena can ' t effectively manage the plant ' s positions , who can you recommend that could under the same terms ? as you recall , the equity owners do have a buyer interested in the asset , so the arrangement would probably be short - term at best .\ni think the bank that has collateral rights to the asset will be concerned with the payable . with respect to ( 2 ) , did your discussions with legal lead to any conclusions with respect to compensating the project ? what is the amount of the claim the project has back to ena ? i agree that the project should make payments directly to the suppliers and lone star .\ni ' m around , give me a call if you get a chance .\nrh\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , january 09 , 2002 3 : 03 pm\nto : hill , garrick\ncc : olsen , michael\nsubject : tenaska iv\nrick ,\nwe need to talk about the ability of ena to continue its the current role as agent of tenaska iv .\n1 ) since the end on november , ena has not been able to complete gas trading transactions . we cannot find any counterparties to trade physical gas in texas . this , of course , is due to the bankruptcy . as a result , we are not able to sale tenaska ' s excess fuel . we did contact brazos to ask if they would buy a portion of the gas at a gas daily price , but they do not want it ( gas daily pricing has been below the firm contract price for a while ) . in december , we had to cut 10 , 000 / day from the 7 th through the 27 th . for january , we haven ' t had to cut yet , but i am sure that the pipe will ask us to do this in the near future .\n2 ) for november activity ( which was settled in dec ) , ena owes tenaska iv for the excess supply that we sold . however , due to the bankruptcy , we could not make payments out . ena could not pay the suppliers or the pipeline . james armstrong paid the counterparties directly . i think that he should continue to do this for dec and jan . we should not transfer any funds from tenaska iv to ena .\ni don ' t know how enron ' s ownership in the plant factors out in the bankruptcy preceding . but we need to determine how to go forward with the fuel management .\nplease give me a call or e - mail me . we can get together sometime thurs or fri morning .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.286+0000", "entityId": 5157, "properties": {"text": "Subject: re : tenaska iv\ni tried calling you this am but your phone rolled to someone else ' s voicemail . can you call me when you get a chance ?\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : thursday , january 10 , 2002 2 : 06 pm\nto : hill , garrick\nsubject : re : tenaska iv\nrick ,\ni ' ve had a couple of meetings today . i ' m sorry i ' m just getting back to you . i tried to call but the voice mail said that you were unavailable . so , give me a call when you get a chance .\nd\n- - - - - original message - - - - -\nfrom : hill , garrick\nsent : wednesday , january 09 , 2002 6 : 11 pm\nto : farmer , daren j .\nsubject : re : tenaska iv\ni ' ll call you on thursday . . . what ' s a good time ?\n- - - - - original message - - - - -\nfrom : farmer , daren j .\nsent : wednesday , january 09 , 2002 3 : 03 pm\nto : hill , garrick\ncc : olsen , michael\nsubject : tenaska iv\nrick ,\nwe need to talk about the ability of ena to continue its the current role as agent of tenaska iv .\n1 ) since the end on november , ena has not been able to complete gas trading transactions . we cannot find any counterparties to trade physical gas in texas . this , of course , is due to the bankruptcy . as a result , we are not able to sale tenaska ' s excess fuel . we did contact brazos to ask if they would buy a portion of the gas at a gas daily price , but they do not want it ( gas daily pricing has been below the firm contract price for a while ) . in december , we had to cut 10 , 000 / day from the 7 th through the 27 th . for january , we haven ' t had to cut yet , but i am sure that the pipe will ask us to do this in the near future .\n2 ) for november activity ( which was settled in dec ) , ena owes tenaska iv for the excess supply that we sold . however , due to the bankruptcy , we could not make payments out . ena could not pay the suppliers or the pipeline . james armstrong paid the counterparties directly . i think that he should continue to do this for dec and jan . we should not transfer any funds from tenaska iv to ena .\ni don ' t know how enron ' s ownership in the plant factors out in the bankruptcy preceding . but we need to determine how to go forward with the fuel management .\nplease give me a call or e - mail me . we can get together sometime thurs or fri morning .\nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.659+0000", "entityId": 5158, "properties": {"text": "Subject: spend too much on your phone bill ? 25711\ncrystal clear connection with unlimited\nlong distance usage for one low flat rate !\nnow\ntry it for free ! ! * see for\nyourself .\nwe ' ll activate\nyour flat rate unlimited long distance service for 1 week free * to prove\nthat the quality of service is what you\nexpect .\ncall now ! operators standing\nby to activate your service .\ntoll free : 877 - 529 - 7358 monday through friday 9 am to 9 pm\nedt\nfor more information :\nyour\nname :\ncity :\nstate :\ndaytime\nphone :\nnighttime\nphone :\nemail :\n* one week free\noffer is valid to those who have a valid checking account . service is\nnever billed until after the 1 week free trial\nperiod .\nif you have received this by error or wish to be\nremoved from our mailing list , please click\nhere", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.669+0000", "entityId": 5159, "properties": {"text": "Subject: get the best rate on a home loan !\nif you would like to be removed\nfrom future mailings , please reply with the word remove in the subject or call\n888 - 418 - 2575 .\nlet lenders\ncompete for\nyour business !\nclick here\ncash\nback refinances\nno equity 2 nd trust deeds\ndebt consolidation\nno income verification\nthe most competitive interest rates !\nfill in our quick pre - qualification form and you\nwill get competing loan offers ,\noften\nwithin minutes from up to three lenders !\nclick here\nthere is never any fee to consumers for using this service .\ncopyright ?ffffa 9 1999 , 2000 eworld marketing ,\ninc .\n888 - 418 - 2575\nthis is not a solicitation or offer to lend money .\neworld marketing is not a lender , broker or\nother financial intermediary . we are a marketing company\nthat provides services to the mortgage industry .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.674+0000", "entityId": 5160, "properties": {"text": "Subject: your membership community charset = iso - 8859 - 1\nyour membership community & commentary ( july 6 , 2001 )\nit ' s all about making money\ninformation to provide you with the absolute\nbest low and no cost ways of providing traffic\nto your site , helping you to capitalize on the power and potential the web brings to every net - preneur .\n- - - this issue contains sites who will trade links with you ! - - -\n- - - - - - - - - - - - -\nin this issue\n- - - - - - - - - - - - -\ninternet success through simplicity\nmember showcase\nwin a free ad in community & commentary\n| | | = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = > >\ntoday ' s special announcement :\n| | | = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = > >\nwe can help you become an internet service provider within 7 days or we will give you $ 100 . 00 ! !\nclick here\nwe have already signed 300 isps on a 4 year contract ,\nsee if any are in your town at :\nclick here\nyou are a member in at least one of these programs\n- you should be in them all !\nbannersgomlm . com\nprofitbanners . com\ncashpromotions . com\nmysiteinc . com\ntimshometownstories . com\nfreelinksnetwork . com\nmyshoppingplace . com\nbannerco - op . com\nputpeel . com\nputpeel . net\nsellinternetaccess . com\nbe - your - own - isp . com\nseventhpower . com\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\ninternet success through simplicity\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nevery day of the week , i get questions from people all\nover the world , including my no bs gimg members ,\nwanting to know some of the most valuable \" secrets \"\nto my on - going internet success .\nlet me say , above all else , i don ' t believe there are any\n* true * \" secrets \" to success on the net . what you do to\nbecome successful in the online world is not a \" secret \" ,\nin my opinion . most successful people follow simple , clear ,\nrepeatedly - proven strategies to succeed , whether on the\nnet or off .\nbut , when it comes to someone asking for advice ,\nconsultation , or simply asking , \" what ' s your secret ? \" ,\ni have to blush & say . . .\npersistence and personality .\nof course , i always follow the advice with my own little\ndisclaimer : what makes me successful may not work the\nsame for you . . . & your first lesson is to get over\nthe deep - seeded idea that success - of any kind , in\nmy opinion - is somehow an unknown , unattainable secret .\nclearly , it is not . it ' s not unknown . it ' s not unattainable .\nit ' s not years of digging to find the \" secrets \" to internet riches .\none thing that \" gets to me \" so often in my work as an\ninternet consultant , author and internet success\nstrategist is that so many people on the net seem to\nhave this incredibly huge mental block that stands\nbetween themselves and success on the net . it ' s\nalmost as if they ' ve been barraged by so many claims\nof what works and what doesn ' t work , and so many\nlong , complicated routes to actually succeeding in\ntheir online venture , that \" success \" is the equivelant of a 100 - foot high brick wall .\nit ' s not that difficult , my friends ! it is not that complicated ! !\nlong - time friend and business associate rick beneteau\nhas a new ebook out called branding you & breaking\nthe bank . get it ! !\nhttp : / / www . roibot . com / bybb . cgi ? im 7517 _ bybtb .\nbut , the reason i mention this is the fact that he talks\nso dynamically about the true simplicity of making your\nonline venture a success .\nand , yes , rick & i come from the same school of\n\" self marketing \" - marketing you ! obviously , that ' s\nthe core of his excellent new ebook , and i couldn ' t\nagree with him more .\npoint being , * you * are everything you do online to\nsucceed . you are your web site , your business , your\nmarketing piece , your customer service , your customers '\nexperiences with your business - - all of it , is you !\nread his ebook & you ' ll see more of what i ' m saying .\nthe matter at hand is that brick wall you might have\nstanding high as you can see , blocking the path\nbetween you & internet success . listen to me - it is\nnot real ok ? it doesn ' t exist . there ' s nothing there\nto fear to begin with . . . get over it ! !\nwhat i ' m telling you is , the only thing standing between\nyou and the success you most desire . . . is yourself .\nwhen you realize this , you will tear down that brick\nwall by means of complete and instantaneous\ndisintegration . it will no longer exist * in your mind * ,\nwhich is the only \" real \" place it ever was anyhow !\nyes , \" persistence and personality \" inherently includes\nhonesty , integrity , accountability , and many other\nqualities but you also have to hone in on your ultimate\ngoals and realize that probably the most valuable ,\npowerful key to your success . . . is you !\nthat may be the most incredible \" secret \" we ever\nuncover in our lifetime ! and , trust me , that brick wall\nwon ' t ever get in your way again . . . unless you let it .\ntalk about simple ! !\nbryan is a \" veteran \" internet consultant , author ,\ninternet success strategist & marketer . he publishes\nmega - success . com chronicles to over 11 , 500 subscribing\nmembers , authors articles which appear all over the\nnet , and helps hundreds of wealth - hungry people in\ntheir journey to internet success .\nbryan is also director of his no bs guerrilla internet\nmarketing group at http : / / . com\n& a fantastic new joint venture partners program\nfor that site .\nbryan hall is a founding member and the development\nconsultant for the prestigious icop ( tm ) at\nhttp : / / www . i - cop . org / 1016 . htm\nyou can reach bryan at 877 . 230 . 3267 or by\nemailing him directly at bryan . hall @ mega - success . com\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nmember showcase\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nexamine carefully - those with email addresses included will\ntrade links with you . . . you are encouraged to contact them .\nthere are many ways to build a successful business - just look at\nthese successful sites programs other members are involved\nin . . .\nget insane amounts of traffic to your website .\npurchase 10 , 000 guaranteed visitors to your site\nand receive 5 , 000 free . more traffic = more money !\nless than 2 cents a visitor . space is limited .\norder now ! http : / / www . freepicklotto . com\ntrade links - businessopps @ aol . com\nstop smoking - free lesson ! !\ndiscover the secret to stopping smoking .\nto master these powerful techniques , come to\nhttp : / / www . breath - of - life . net\nfor your free lesson .\nact now ! p . s . tell someone you care about .\ntrade links - jturco 3 @ hotmail . com\ncelebration sale !\n$ 99 . 00 on casinos / sportsbetting sites , lingerie stores ,\ngift stores , adult sites toy stores .\nmention ad # bmlm 99 to receive this special sale price .\norder now !\nhttp : / / www . cyberopps . com / ? = bmlm 99\naffiliates of the world !\ntop rated affiliate programs , excellent business opportunities ,\ngreat marketing resources and free advertising for you !\nvisit the site to trade links . http : / / www . affiliates . uk . com\ntrade links - adrianbold @ affiliates . uk . com\njust been released ! !\ninternet marketing guru corey rudl has just released a\nbrand new version of his # 1 best - selling internet marketing\ncourse , \" the insider secret ' s to marketing your business on\nthe internet \" . a must have ! so don ' t hesitate ,\nvisit . . http : / / www . adminder . com / c . cgi ? startbgmlmezine\nwe have a 260 page catalog with over 3000 gift items for men ,\nwomen , children - a gift for everyone . we show 100 gift items\non our web site alone , with the catalog you have access to\nthe rest . we also feel we have the best prices on the web .\nvisit at http : / / www . . net\ntrade links - georgel 932 me @ yahoo . com\nif you have a product , service , opportunity or quality merchandise\nthat appeals to people worldwide , reach your targeted audience !\nfor a fraction of what other large newsletters charge you can exhibit\nyour website here , and trade links for only $ 8 cpm . compare\nthat\nto the industry average of $ 10 - $ 15 cpm . why ? . . . because as a\nvaluable member we want you to be successful ! order today -\nshowcases are limited and published on a first come , first serve\nbasis .\nfor our secure order form , click here : http : / / bannersgomlm . com / ezine\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nwin a free ad in community & commentary\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nto keep this interesting , how about this , every month we ' ll\ndraw a name from the replies and that person will win one\nsponsorship showcase ad in the community commentary , for free .\nthat ' s a value of over $ 700 . 00 ! respond to each weekly survey ,\nand increase your chances to win with four separate entries .\nquestion\nof the week ( 07 / 06 / 01 ) . . .\nno right or wrong answers , and just by answering\nyou are entered to win a showcase ad - free !\n~ ~ ~ do you spend more or less time ~ ~ ~\n~ ~ ~ online in the summer months ? ~ ~ ~\nmore\nmailto : one @ aeopublishing . com\nless\nmailto : two @ aeopublishing . com\nsame\nmailto : three @ aeopublishing . com\nto make this as easy as possible for you , just click on the\ne - mail address that matches your answer - you do not need to\nenter any information in the subject or body of the message .\n* * add your comments ! follow directions above and\nadd your comments in the body of the message , and we ' ll\npost the best commentaries along with the responses .\nyou will automatically be entered in our drawing for a free\nsponsorship ad in the community commentary . please\nrespond only one time per question . multiple responses\nfrom the same individual will be discarded .\nlast weeks ' s results ( 06 / 29 / 01 )\n~ ~ ~ what is the goal of your website ? ~ ~ ~\nsell 40 %\nget leads 20 %\nbuild branding 5 %\nprovide information 20 %\nother 15 %\ncomments :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - -\nour web site is initially designed to get leads , build\nbranding , and provide information . . . . . . . with a 12 month goal\nof selling our service more specifically via a shopping cart .\nwe offer a service and at this time take deposits and payments\nvia our site .\nour site has been up less than 2 months and our expectation\nwas that we would refer to our site for leads developed in\ntraditional media and by referral for more information , and\nto make a professional impression on someone you may not\nmeet before providing service .\nthe growth of our customer base shopping on line has grown\noutside of anyone ' s expectations . . . . . . . certainly mine and\ni ' ve been in this business for 25 years . the internet is not\ndead in the horse business , it is just getting it ' s legs , and\nthe folks using it want to get all the ancillary services\non - line as well . our site ( the first we ' ve developed ) has\nexceeded our expectations , and we aren ' t satisfied with it\nyet . . . . . . . we just wanted to get it there for information !\njeff and rebecca marks http : / / www . grand - champion . com\nbranding . while quality customer service and product\nhave been and will always be our top priority brand building\nzesto is our most challenging task .\nzesto . com ranks very high and most often # 1 or 2 on\nall major search engines and directories even yahoo entering\nthe keyword zesto . the problem is simply that , who if anyone\nwould type the keyword zesto , therefore we must try to\nbuild our brand by ensuring that generic keywords associated with our products ( citrus peel ) are used throughout\nour site as well as search engine submissions .\nfortunately owning a non generic domain short , easy\nto remember and trademarked works in our favor because\nthe marketability potential is limitless .\narlene turner http : / / www . zesto . com\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nto change your subscribed address ,\nsend both new and old address to submit\nsee below for unsubscribe instructions .\nplease send suggestions and comments to : editor\ni invite you to send your real successes and showcase\nyour strategies and techniques , or yes , even your total bombs ,\n\" working together we can all prosper . \" submit\nfor information on how to sponsor your membership\ncommunity commentary visit : sponsorship\nshowcase\ncopyright 2001 aeopublishing . com\nemail : yourmembership 2 @ aeopublishing . com\nvoice :\nweb : http : / / www . aeopublishing . com\nthis email has been sent to jm @ netnoteinc . com at your\nrequest , by your membership newsletter services .\nvisit our subscription center to edit your interests or unsubscribe .\nhttp : / / ccprod . roving . com / roving / d . jsp ? p = oo & id = bd 7 n 7877 . 7 giv 5 d 57 & m = bd 7 n 7877 charset = iso - 8859 - 1\nin this issue\ninternet success through simplicity\nmember showcase\nwin a free ad in community & commentary\ntoday ' s special announcement :\nwin a free ad in community & commentaryto keep this interesting , how about this , every month we ' ll\ndraw a name from the replies and that person will win one\nsponsorship showcase ad in the community commentary , for free .\nthat ' s a value of over $ 700 . 00 ! respond to each weekly survey ,\nand increase your chances to win with four separate entries .\nquestion\nof the week ( 07 / 06 / 01 ) . . .\nno right or wrong answers , and just by answering\nyou are entered to win a showcase ad - free !\n~ ~ ~ do you spend more or less time ~ ~ ~\n~ ~ ~ online in the summer months ? ~ ~ ~\nmore\nmailto : one @ aeopublishing . com\nless\nmailto : two @ aeopublishing . com\nsame\nmailto : three @ aeopublishing . com\nto make this as easy as possible for you , just click on the\ne - mail address that matches your answer - you do not need to\nenter any information in the subject or body of the message .\n* * add your comments ! follow directions above and\nadd your comments in the body of the message , and we ' ll\npost the best commentaries along with the responses .\nyou will automatically be entered in our drawing for a free\nsponsorship ad in the community commentary . please\nrespond only one time per question . multiple responses\nfrom the same individual will be discarded .\nlast weeks ' s results ( 06 / 29 / 01 )\n~ ~ ~ what is the goal of your website ? ~ ~ ~\nsell 40 %\nget leads 20 %\nbuild branding 5 %\nprovide information 20 %\nother 15 %\ncomments :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - -\nour web site is initially designed to get leads , build\nbranding , and provide information . . . . . . . with a 12 month goal\nof selling our service more specifically via a shopping cart .\nwe offer a service and at this time take deposits and payments\nvia our site .\nour site has been up less than 2 months and our expectation\nwas that we would refer to our site for leads developed in\ntraditional media and by referral for more information , and\nto make a professional impression on someone you may not\nmeet before providing service .\nthe growth of our customer base shopping on line has grown\noutside of anyone ' s expectations . . . . . . . certainly mine and\ni ' ve been in this business for 25 years . the internet is not\ndead in the horse business , it is just getting it ' s legs , and\nthe folks using it want to get all the ancillary services\non - line as well . our site ( the first we ' ve developed ) has\nexceeded our expectations , and we aren ' t satisfied with it\nyet . . . . . . . we just wanted to get it there for information !\njeff and rebecca marks http : / / www . grand - champion . com\nbranding . while quality customer service and product\nhave been and will always be our top priority brand building\nzesto is our most challenging task .\nzesto . com ranks very high and most often # 1 or 2 on\nall major search engines and directories even yahoo entering\nthe keyword zesto . the problem is simply that , who if anyone\nwould type the keyword zesto , therefore we must try to\nbuild our brand by ensuring that generic keywords associated with our products ( citrus peel ) are used throughout\nour site as well as search engine submissions .\nfortunately owning a non generic domain short , easy\nto remember and trademarked works in our favor because\nthe marketability potential is limitless .\narlene turner http : / / www . zesto . com\nto change your subscribed address ,\nsend both new and old address to submit\nsee below for unsubscribe instructions .\nplease send suggestions and comments to : editor\ni invite you to send your real successes and showcase\nyour strategies and techniques , or yes , even your total bombs ,\n\" working together we can all prosper . \" submit\nfor information on how to sponsor your membership\ncommunity commentary visit : sponsorship\nshowcase\ncopyright 2001 aeopublishing . com\nemail us : : visit our site\nphone :\nthis email was sent to jm @ netnoteinc . com , at your request , by your membership newsletter services .\nvisit our subscription center to edit your interests or unsubscribe .\nview our privacy policy .\npowered by\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.685+0000", "entityId": 5161, "properties": {"text": "Subject: home loans just got better !\nfree service to\nhomeowners !\nhome loans available for any situation .\nwhether\nyour credit rating is a + + or you are credit challenged ,\nwe have many loan programs through hundreds of lenders .\nsecond mortgages - we can help you get up to 125 % of your\nhomes value ( ratios vary by state ) .\nrefinancing - reduce your monthly payments and get\ncash back .\ndebt\nconsolidation - combine all your bills into one ,\nand save money every month .\nclick\nhere for all details and a free loan quotation\ntoday !\nwe strongly oppose the\nuse of spam email and do not want anyone who does not wish to receive\nourmailings to receive them . as a result , we have retained the\nservices of an independent 3 rd party toadminister our list management\nand remove list ( http : / / www . removeyou . com / ) . this is not\nspam . if youdo not wish to receive further mailings , please click\nbelow and enter your email at the bottomof the page . you may then\nrest - assured that you will never receive another email from usagain .\nhttp : / / www . removeyou . com / the 21 st\ncentury solution . i . d . # 023154", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.690+0000", "entityId": 5162, "properties": {"text": "Subject: major stock play\namnis systems , inc . ( otcbb : amnm )\ncontract announcements and huge newsletter coverage this week =\nfor = 20\namnm ! ! !\nthis thursday amnm will be profiled by some major newsletters . =\n= 20\nthere will be huge volume and a strong increase in price for severa =\nl = 20\ndays . these are the same newsletters that profiled clks two w =\neeks = 20\nago . they brought clks from $ 1 . 50 to $ 4 . 35 in ten days . =\nwe = 20\nknow for certain that the same groups are going to profile amnm sta =\nrting = 20\non thursday .\nwe are very proud that we can share this information with you =\nso that = 20\nyou can make a profit out of it . it is highly advisable to ta =\nke a = 20\nposition in amnm as soon as possible , today before the market = 20\ncloses , or tomorrow .\nthe stock is trading near its 52 week low , and will start movi =\nng up = 20\nimmediately . we believe the stock could easiely reach $ 4 in l =\ness = 20\nthan a month .\ngood luck and watch amnm fly this week ! !\n= 09\n= 09\n= 09\n= 09\n= 09\n= 09\n= 09\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ incredimail - email has finally =\n= 20\nevolved - click = 20\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.695+0000", "entityId": 5163, "properties": {"text": "Subject: major stock play\namnis systems , inc . ( otcbb : amnm )\ncontract announcements and huge newsletter coverage this week for amnm ! ! !\nthis thursday amnm will be profiled by some major newsletters . there will be huge volume and a strong\nincrease in price for several days . these are the same newsletters that profiled clks two weeks ago .\nthey brought clks from $ 1 . 50 to $ 4 . 35 in ten days . we know for certain that the same groups are going\nto profile amnm starting on thursday .\nwe are very proud that we can share this information with you so that you can make a profit out of it .\nit is highly advisable to take a position in amnm as soon as possible , today before the market closes ,\nor tomorrow .\nthe stock is trading near its 52 week low , and will start moving up immediately . we believe the stock\ncould easiely reach $ 4 in less than a month .\ngood luck and watch amnm fly this week ! !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.701+0000", "entityId": 5164, "properties": {"text": "Subject: your membership community charset = iso - 8859 - 1\nyour membership community & commentary ( august 3 , 2001 )\nit ' s all about making money\ninformation to provide you with the absolute\nbest low and no cost ways of providing traffic\nto your site , helping you to capitalize on the power\nand potential the web brings to every net - preneur .\n- - - this issue contains sites who will trade links with you ! - - -\n- - - - - - - - - - - - -\nin this issue\n- - - - - - - - - - - - -\ntop ten most important things to do today\nmember showcase\ncommentary quick tips\nwin a free ad in community & commentary\n| | | = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = > >\ntoday ' s special announcement :\n| | | = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = > >\nright now , this week only - we have left over inventory , it ' s\nunsold , but not for long . if you could use 1 million banner\nads all targeted and dirt cheap go here today . this package\nis guaranteed ! ! it ' s tough to fail when you can show your ad\nto 1 , 000 people for less than a buck ! a free custom banner\nwill be made for you with this deal !\n| | | = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = > >\nyou are a member in at least one of these programs\n- you should be in them all !\nhttp : / / www . bannersgomlm . com\nhttp : / / www . profitbanners . com\nhttp : / / www . cashpromotions . com\nhttp : / / www . mysiteinc . com\nhttp : / / www . . com\nhttp : / / www . freelinksnetwork . com\nhttp : / / www . myshoppingplace . com\nhttp : / / www . bannerco - op . com\nhttp : / / www . putpeel . com\nhttp : / / www . putpeel . net\nhttp : / / www . sellinternetaccess . com\nhttp : / / www . be - your - own - isp . com\nhttp : / / www . seventhpower . com\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\ntop ten most important things to do today\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\ntop ten most important things to do today\nby michael e . angier\nthis is my list . they ' re the ones i ' ve selected for my life at\npresent . consider them suggestions for yourself - - ideas to\nhelp you generate your own top ten list . by getting clear\non and acting upon your most important steps , you ' ll be\nmoving toward and experiencing your highest and best .\n1 . practice gratefulness . reflect upon the things in my life for\nwhich i ' m grateful . if i appreciate more of what i have , i will\nhave even more to appreciate .\n2 . write out my three most important goals and visualize\nhow my life will be when i have achieved them . feel it .\nexperience it in as much sensory detail as i can possibly\nimagine .\n3 . take some action steps toward each of the three goals .\n4 . exercise my body and monitor carefully what i eat and\ndrink . reduce fat and caloric intake while expending more\ncalories . eat only small amounts at one time .\n5 . read something educational , inspirational or\nentertaining - - preferably all three .\n6 . meditate . empty my conscious mind and listen to the\nsuper - conscious .\n7 . have fun doing something i love to do . experience joy .\n8 . write something - - anything . if not an article or part of\nmy book , then write in my journal .\n9 . perform some act of kindness . do a thoughtful ,\nmagnanimous thing - - anonymously if possible .\n10 . finish something . do something i can call complete .\nbonus step : make something work better - -\npractice ads : automate , delegate and systemize .\ncopyright 2001 michael angier & success networks international .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nabout the author . . .\nmichael angier is the founder and president of success networks .\nsuccess net ' s mission is to inform , inspire and empower people\nto be their best - - personally and professionally . download their\nfree ebooklet , keys to personal effectiveness from\nhttp : / / www . successnet . org / keys . htm . free subscriptions ,\nmemberships , books and successmark cards are available at\nhttp : / / www . successnet . org\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nmember showcase\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nexamine carefully - those with email addresses included will\ntrade links with you . . . you are encouraged to contact them .\nthere are many ways to build a successful business - just look\nat these successful sites & programs other members are involved\nin . . .\n* * * * * * * * free cd - rom software * * * * * * * * *\nover 1000 high quality software titles on cd - rom\nabsolutely free ! yes , the software is free , ( s / h )\nclick here : http : / / www . adreporting . com / at . cgi ? a = 156074 & e = / 2 /\nstop smoking - free lesson ! !\ndiscover the secret to stopping smoking .\nto master these powerful techniques , come to\nhttp : / / www . breath - of - life . net for your free lesson .\nact now ! p . s . tell someone you care about .\ntrade links - jturco 3 @ hotmail . com\nfor a limited time only , we are offering - - two - - free ebooks\nto show you how to make money on the internet !\nuse our proven , duplicatable methods to get in on\nthis exploding opportunity now ! visit us at :\nhttp : / / www . abundance - group . com to collect your free offers !\ntrade links - gina @ abundancegroup . com\nlife without debt ! what would you do with 5 , 000 10 , 000\n20 , 000 100 , 000 ? a \" dream team \" of heavy hitters are\ngathering to promote life without debt . get in now to\nreceive massive spillover in the 2 x matrix .\nhttp : / / trafficentral . com / lwd / index . htm\nif you have a product , service , opportunity or quality\nmerchandise that appeals to people worldwide , reach your\ntargeted audience ! for a fraction of what other large\nnewsletters charge you can exhibit your website here , and\ntrade links for only $ 8 cpm . compare that to the\nindustry average of $ 10 - $ 15 cpm . why ? . . . because as a\nvaluable member we want you to be successful ! order today -\nshowcases are limited and published on a first come , first\nserve basis . for our secure order form , click here :\nhttp : / / bannersgomlm . com / ezine\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\ncommentary quick tips\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nwebsite recommendation :\nhere is a site with some useful tips .\nexample - test your internet connection speed .\nhttp : / / www . camscape . com / tips /\ni doubled my dsl speed with just one minor tweak\nsuggested by one of the links given .\nsubmitted by f . knopke\nimco @ telusplanet . net\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\ndo you have a marketing hint , product recommendation , or\nonline gem of wisdom you ' d like to share with your fellow\nsubscribers ? with your 2 - 10 line quick tip include your\nname and url or email address and we ' ll give you credit\nfor your words of wisdom .\nand , if you ' re looking for free advertising , this isn ' t\nthe place - check out the ' one question survey ' below for\na great free advertising offer .\nsend it in to mailto : submit @ aeopublishing . com\nwith ' quick tip ' in the subject block .\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nwin a free ad in community & commentary\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nto keep this interesting , how about this , every month we ' ll\ndraw a name from the replies and that person will win one\nsponsorship showcase in the community & commentary , for free .\nthat ' s a value of over $ 800 . 00 ! respond to each weekly survey ,\nand increase your chances to win with four separate entries .\nquestion of the week ( 08 / 03 / 01 ) . . .\nno right or wrong answers , and just by answering\nyou are entered to win a sponsorship showcase - free !\n~ ~ ~ how many email messages do you get per day ? ~ ~ ~\nless than 40 mailto : one @ aeopublishing . com\n41 - 100 mailto : two @ aeopublishing . com\n101 - 300 mailto : three @ aeopublishing . com\n301 - 1000 mailto : four @ aeopublishing . com\nmore than 1000 mailto : five @ aeopublishing . com\nto make this as easy as possible for you , just click on the\nhyperlinked answer to send us an e - mail - you do not need to\nenter any information in the subject or body of the message .\n* * add your comments ! follow directions above and\nadd your comments in the body of the message , and we ' ll\npost the best commentaries along with the responses .\nyou will automatically be entered in our drawing for a free\nsponsorship ad in the community & commentary . please\nrespond only one time per question . multiple responses\nfrom the same individual will be discarded .\nlast weeks ' s survey results paid the fees ;\nand , promptly assigned my www . schoolofgeomatics . com\naddress to a porn shop . thus , i lost 4 years of building\nup lst place rankings on 12 search engines and 2 nd place\non 8 more . this set me back about 4 months : i believe i\nlost a minimum of $ 50 , 000 .\ni have also been hit with viruses about 10 times . the first\ntime i lost almost 4 months of work . now , i back up often\nenough to not to lose so much time . this is also internet\ntheft . these people are nothing but out and out criminals\nand should spend years behind bars .\ncustomers are well protected from credit card theft ;\nhowever , merchants can lose a lot of money . i sell only by\npurchase order and certified or registered company checks .\n- - peter s . http : / / www . gssgeomatics . com\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\njuly winner announced !\nand the july ' one - question survey ' winner is . . .\njohn stitzel - oldstitz @ yahoo . com\ncongratulations john !\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\n= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - =\nto change your subscribed address , send both new and old\naddress to mailto : submit @ aeopublishing . com\nsee the link ( below ) for our subscription center to unsubscribe\nor edit your interests .\nplease send suggestions and comments to :\nmailto : editor @ aeopublishing . com\ni invite you to send your real successes and showcase\nyour strategies and techniques , or yes , even your total bombs ,\n\" working together we can all prosper . \"\nmailto : submit @ aeopublishing . com\nfor information on how to sponsor your membership\ncommunity & commentary visit : http : / / bannersgomlm . com / ezine\ncopyright 2001 aeopublishing . com\nweb : http : / / www . aeopublishing . com\nthis email has been sent to jm @ netnoteinc . com at your\nrequest , by your membership newsletter services .\nvisit our subscription center to edit your interests or unsubscribe .\nhttp : / / ccprod . roving . com / roving / d . jsp ? p = oo & id = bd 7 n 7877 . 8 lhtdma 6 & m = bd 7 n 7877 charset = iso - 8859 - 1\nin this issue\ntop ten most important things to do today\nmember showcase\ncommentary quick tips\nwin a free ad in community & commentary\ntoday ' s special announcement :\nthis email was sent to jm @ netnoteinc . com , at your request , by your membership newsletter services .\nvisit our subscription center to edit your interests or unsubscribe .\nview our privacy policy .\npowered by\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.706+0000", "entityId": 5165, "properties": {"text": "Subject: legal advice\n* this message was transferred with a trial version of communigate ( tm ) pro *\nwe all\nneed a good attorney to call in today ' s society .\nkeeping ahead of the legal issues in our life was just simply more than we could\nbear . we needed legal advice and we needed it right away . unfortunately , being middle class , put us in the wrong income bracket to have such a necessity . now all of this has changed .\nthink about the issues that can suddenly come up in your personal life :\nmonday : the dog bit the mailman - do you know what to do ?\ntuesday : the building inspector drops by and announces that the permits on file with their office do not\nallow your garage conversion . \" what now , \" you think to yourself .\nwednesday : you ' ve been considering home - schooling your children for some time . now your daughter announces that she is being picked on yet again , and simply will not attend another day . what are the legal ramifications of home schooling your children ?\nthursday : speeding ticket goes to warrant for your 17 - year - old son . you haven ' t a clue how to handle\nit .\nfriday : your ex - spouse has missed another child support payment . . . who do you call ?\nand what about all the other things :\nreceived a traffic ticket you thought was unjustified ?\npaid a bill you knew was unfair ?\nlost a security deposit ?\nbought a home or purchased a car ?\nsigned an employment contract ?\nhad difficulty collecting an insurance claim ?\nhad trouble with your credit report ?\nbeen involved in a landlord or property dispute ?\nbeen involved in a separation or divorce ?\nhad to collect child support ?\nprepared a will or wanted to ?\nin your personal life , you need legal representation available to you all the time . but most of us never have it because we can ' t afford it .\nnow there is a program that not only provides quality legal help ,\nbut it provides it 24 hours a day , with an attorney helping you the same day you call them -\nand it is for a small monthly fee . no kidding . somewhere between twenty and forty dollars a month , depending upon the plan you choose .\nclick here\nnot\ninterested ? take your em ail out of our data base by visitng the site and following removal instructions\n126", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.712+0000", "entityId": 5166, "properties": {"text": "Subject: all your life # 4 c 55\nthis is a mime message\ncontent - type : multipart / alternative ; boundary = \" - - - - = _ nextpart _ 001 _ 0080 _ 01 bdf 6 c 7 . fabaclbo \"\ncontent - type : text / plain ; charset = \" iso - 8859 - 1 \"\ncontent - transfer - encoding : quoted - printable\n* * * * * this is an html message ! * * * * *\ncontent - type : text / html ; charset = \" iso - 8859 - 1 \"\ncontent - transfer - encoding : quoted - printable\ndear candidate , = ao\nyou have been selected as a potential candidate for a free listing in = ao\nthe 2001 edition of the international executive guild registry = 2 e = ao =\nplease accept our congratulations for this coveted honor = 2 e = ao\nas this edition is so important in view of the new millennium , the = ao =\ninternational executive guild registry will be published in two different =\n= ao\nformats ; the searchable cd - rom and the online registry = 2 e = ao\nsince inclusion can be considered recognition of your career position = ao\nand professionalism , each candidate is evaluated in keeping with high = ao\nstandards of individual achievement = 2 e in light of this , the internationa =\nl executive\nguild thinks that you may make an interesting biographical subject = 2 e = ao\nwe look forward to your inclusion and appearance in the international = ao\nexecutive guild ' s registry = 2 e best wishes for your continued success = 2 e = ao =\ninternational executive guild = ao\nlisting dept = 2 e = ao\nif you\nwish to be removed from our list , please submit\nyour request\nat the\nbottom of this email = 2 e\ninternational executive guild\nregistration form\n( us and canada\nonly )\nplease\nfill out this form if you would like to be\nincluded on the international\nexecutive guild , for accuracy and\npublication purposes , please\ncomplete and send this form at the earliest\nopportunity = 2 e there is no\ncharge or obligation to be listed\non the international executive guild = 2 e\nyour\nname\nyour\ncompany\ntitle\naddress\ncity\nstate\nor province\ncountry\nusacanada\nzip / postal\ncode\nday\ntime telephone\nhome\nphone\n( not\nto be published )\nemail\nto\nhelp us in considering your application , please\ntell us a little about\nyourself = 2 e = 2 e = 2 e\nyour\nbusiness\n( financial\nsvcs , banking , computer hardware , software , professional svcs ,\nchemicals ,\napparel , aerospace , food , government , utility ,\netc = 2 e )\ntype\nof organization\n( m =\nfg ,\ndist / wholesaler , retailer , law firm ,\ninvestment\nbank , commercial bank , university ,\nfinancial\nconsultants , ad agency , contractor , broker ,\netc = 2 e )\nyour\nbusiness expertise\n( corp = 2 emgmt ,\nmarketing , civil engineering ,\ntax\nlaw , nuclear physics , database development , operations , pathologist ,\nmortgage\nbanking , etc = 2 e )\nmajor\nproduct line\n( integrated\ncircuits , commercial aircraft , adhesives , cosmetics , plastic components ,\nsnack foods , etc = 2 e )\nnote : submitting this form =\nwill\nbe made by email , not by use of www = 2 e confirmation of its de =\nlivery\nis made by browsing your outgoing mail = 2 e\nthank\nyou for filling in this form , we will contact you with more\ninformation = 2 e\nlist\nremoval\nclick\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.717+0000", "entityId": 5167, "properties": {"text": "Subject: foreign currency trading report\nvolume over 1 . 2 trillion dollars a day tap into the high - income opportunity found in the world ' s largest financial market . the foreign currency markets discover how : $ 20 , 000 \" properly positioned \" in the euro vs . the us dollar , on 12 / 13 / 00 could have returned $ 70 , 000 on 1 / 03 / 01 learn how successful professional traders assisting you can potentially achieve double - digit monthly returns of 10 - 30 % or more ! click here\nfor a free foreign currency trading newsletter and a comprehensive report on the foreign currency markets . click on the link below . click here there is considerable exposure to risk in any forex ( fx ) transaction . before deciding to participate in fx trading , you should carefully consider your objectives , level of experience and risk appetite . most importantly don ' t invest money you can ' t afford to lose . if you are receiving this e - mail in error , we sincerely apologize . simply click on reply remove in the subject line . we honor any and all remove requests . any attempt to disable this remove acct will only prevent others from being removed . again , we apologize for any inconvenience and it wont happen again .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.722+0000", "entityId": 5168, "properties": {"text": "Subject: add logos and tones to your cell phone 1575332211111\ntake yourself out of our list by clicking here\nbored\nwith\nyour cell phone ?\nget\ncool songs logos to your phone today !\nit ' s\nreal simple ! no confusing downloads\nor installations . simple phone activation !\nclick here to order\nthere\nare tons of songs and graphics to choose from .\nsee a sample of some of the songs to choose from below :\nsong\nartist\nget\nur freak on\nmissy\nelliott\nbillie\njean\nmichael\njackson\nbatman\ndanny\nelfman\nwalk\nlike an egyptian\nbangles\nflinstones\nbarbera\n4\npage letter\naaliyah\nlike\na virgin\nmadonna\nwhat ' s\nit gonna be ?\nb . rhymes / j . jackson\nachy\nbreaky heart\nbilly\nray cyrus\nstar\nspangled banner\njohn\nsmith\nwhen\nyou are ready to order , just\nclick here !\nand\nwe will deliver your new tunes or graphics\nvia satellite in under 5 minutes .\ntake yourself out of our list by clicking here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.727+0000", "entityId": 5169, "properties": {"text": "Subject: internet connectivity that beats the prices & quality of the big boys !\npaying high prices for a dial - up connection . . . !\nonly $ 6 . 95 * per month\n- - - >\nmost of us need a dial - up internet connection at some point . maybe as a back up to our current high speed connection . maybe when we travel ,\nor maybe for everyday use . but like so many of us , paying $ 21 to $ 31 a month is just getting to be too much . especially if you still find it hard\nto get connected or hard to stay connected .\n695 online is the perfect dial - up service for you .\n$ 23 . 85 per month\n$ 21 . 95 per month\n$ 21 . 95 per month\nsteady and reliable connectivity\nfilters out unwanted emails\n3 email addresses\n24 / 7 unlimited internet\naffordable price\ncomes with a cd packed with software\ngreat service\neasy to use\nnation wide local access numbers\nonly $ 6 . 95 per month *\nlearn moresign up now . . . !\nsign up for 695 online . com the nation wide low cost internet provider and get mail - block for free . . . !\n* orders are billed for a minimum 3 month period . sign up now . . . and start saving money today . . . !\nif you do not wish to receive email for this service , please click\nremove .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.736+0000", "entityId": 5170, "properties": {"text": "Subject: having problems in bed ? we can help !\ncialis allows men to enjoy a fully normal sex life without having to plan the sexual act .\nif we let things terrify us , life will not be worth living .\nbrevity is the soul of lingerie .\nsuspicion always haunts the guilty mind .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.740+0000", "entityId": 5171, "properties": {"text": "Subject: join focus groups to earn money\na la carte research recruits for focus groups across the country . focus groups\nare an easy way to make some extra money for just a couple of hours of your\ntime . each group is only for the purpose of learning your opinions . you can\nbe assured that there will be no sales presentation , and you will not be asked\nto buy anything . everything that is mentioned will be held in the strictest of\nconfidence . focus groups let you express your opinions on whatever subject is\nbeing discussed and we actually pay you for those opinions .\nif you would like to be added to our list of possible future respondents , then\nclick to fill out the registration form . if you have any questions about this\nquestionnaire , please e - mail me at register @ alacarteresearch . com\nsincerely ,\njohn mooney", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.747+0000", "entityId": 5172, "properties": {"text": "Subject: more site sales\ndo you take credit cards ?\nif you do you will make more money . easy set up . . no credit checks - 100 % approval . . . .\nmake more money now !\ntry now\nremove info is found on web site\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.761+0000", "entityId": 5173, "properties": {"text": "Subject: porn p . o . : your 10 free pictures are here !\nnakedmail is now porn p . o . !\nbelow is the latest installment of free adult images from porn p . o . - brand new free pictures !\nclick this link to see the images : http : / / 65 . 59 . 170 . 73 / pictures\nthe free images this week are sponsored by the following websites :\nporn stars plus - http : / / www . pornstarsplus . com / pt = pmb 8834\nvoted best pornstar site 3 years running .\nxxx video plex - http : / / www . xxxvideoplex . com / pt = pmb 8834 /\nover 1 million video streams and more .\ntoon megaplex - http : / / www . toonmegaplex . com / pt = pmb 8834\nmassive facials and sexy hardcore toon action .\npast 40 - http : / / www . past 40 . com / pt = pmb 8834\nbecause older ladies really know how to fuck .\nlezbonet - http : / / www . lezbo . net / pt = pmb 8834\npussy lickin ' good ! 225 , 000 video streams included .\ninternet eraser - http : / / www . nakedmail . com / pictures / banners / eraser . html\nyour internet usage is being tracked ! download internet erase to protect your privacy .\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nalso sponsored this week by http : / / www . dvdxxxvideo . com\nfeaturing mr . 18 inch , midget , squirters\ntrannys , grannys and other fine xxx\nvideos and dvds . even east indian movies !\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nthanks for subscribing to porn p . o . ( nakedmail ) . if you ever want to unsubscribe , click the link below and you will be removed within 48 hours . if the link is temporarily unavailable , reply to this email with the word \" unsubscribe \" in the subject line .\nto be unsubscribed from the porn p . o . mailing list simply click on the link below\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.766+0000", "entityId": 5174, "properties": {"text": "Subject: undeliverable : home based business for grownups\nyour message\nsubject : home based business for grownups\nsent : sun , 21 jan 2001 09 : 24 : 27 + 0100\ndid not reach the following recipient ( s ) :\n75 @ tfi . kpn . com on mon , 25 feb 2002 13 : 32 : 23 + 0100\nthe recipient name is not recognized\nthe mts - id of the original message is : c = us ; a = ; p = ptt\ntelecom ; l = mtpi 70590202251232 fjt 4 d 8 q 5\nmsexch : ims : kpn - telecom : i : mtpi 7059 0 ( 000 co 5 a 6 ) unknown recipient", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.770+0000", "entityId": 5175, "properties": {"text": "Subject: let the tba doctor save your tough cases\nsex\nage\nface amt .\ncondition\nother co ' s\ntba\nfemale\n87\n$ 2 , 000 , 000\nhigh blood pressure\nstandard\npreferred !\nmale\n60\n$ 500 , 000\naneurysm - treated surgically\ndecline\nstandard !\nmale\n57\n$ 1 , 000 , 000\nheart attack 1997 & pacemaker\ntable 6\nstandard !\nfemale\n57\n$ 500 , 000\ndiabetic for 34 years\ntable 4\nstandard !\nmale\n51\n$ 1 , 500 , 000\nalcohol abuse ( dry 1 year )\ndecline\nstandard !\nmale\n50\n$ 2 , 500 , 000\n1 / 2 pack a day cigarette smoker\npref . smoker\npref . nonsmoker !\nmale\n47\n$ 2 , 000 , 000\ntobacco chewer\nsmoker\npref . nonsmoker !\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe don ' t want anybody to receive our mailings who does not wish\nto receive them . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here : http : / / www . insuranceiq . com / optout\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.775+0000", "entityId": 5176, "properties": {"text": "Subject: [ avfs ] romanian software production & export\nto : avfs @ fazekas . hu\nattn : marketing department\nfrom : i . q . software - bucharest\nref . : romanian software production & export\nour anti - spamming company policy :\nnever bother you again\nto remove your e - mail address from the present\ncontact list just do not reply to this message .\nif you receive this message by mistake and / or you are not interested\nin the following brief presentation , please accept our apologies .\nthis is a world - wide promotion campaign . the selected e - mail addresses\nare extracted only from the commercial websites of the targeted markets .\nwe would like to offer you for consideration our brief presentation .\nwe are looking for a marketplace in your country .\nto communicate with us please reply using\nthe plain text format in the body of the message\n> > > mentioning your specific inquiry / offering demand > > company name , address , phone\n- man - power ;\n- data - entry ;\n- mapdrawing ;\n- outsourcing .\n* so that you would be able to have an idea of our skills\nwe present you some of our current projects :\nthe situs system ( informative of tribunals bureaus of supervision )\nwas realized for informative administration of activities typical\nfor tribunals and bureaus of supervision for ministry of justice - italy\n( microsoft visual basic 6 . 0 , database : oracle 8 . 0 ) .\nthe ice system foresaw the resigtering of the italian - romanian companies\non romanian territory . the application is constituted by a browser which\nallows the navigation and provides some additional skills , advanced search\non varied criterious which are created in a dynamic way by the user\n( visualbasic 6 . 0 , database : access 97 ) .\nmuseum - the main request from the museum was to handle ( multimedia )\ndocuments in specific formats on different operating system and platforms\n( c + + , html , corba idl , orb : orbacus ) .\nlibrary ( national library of firenze ) - informatical system for managing\nand labeling the ancient bibliographical materials\n( power builder , database : oracle ) .\ninterflora - communication and management system ; consists in some\napplications and services which allows the communication between\nthe flowerist man from italy and international association of flowerists\n( visual basic 6 . 0 ) .\naudit office - the realization of a porting which foresaw 16 bit controls\nfor substitution with 32 bit controls , introduction of new activex controls ,\nsubstitution of formula 1 with native controls of visual basic 6 . 0 .\nunico - the program foresaw the possibility of acquisition from images\nof more than 60 models of unico and iva\n( fiscal declarations ) - ( delphi 4 . 0 . database : sql ) .\nministry of finance - fiscal documentation - the objective is\nthe easy access to the italian legislation and its consulting .\nthe application based on a client / server architecture , using a network\ncommunication ( sockets ) for data exchange with the server ( visual c + + ) .\nforeign ministry - economical application -\nthis application is conceived as a group of projects .\nadministration\nbalance - sheets\ndispositions of payment\nforeign expenses\nsynthetically dates\nservers\n( visual basic 6 . 0 , database : sql server 7 . 0 )\nsogei - the administration of the custom houses .\nthis application is created for the financial administration of the\nperipherical offices at the customhouse ( java , html , database : oracle 8 . 0 ) .\niccrea - application of processing development of the\nbank - procedures on mainframe ( cobol / cics / db 2 ) .\ntelecom - microfilm data acquisition .\nregistering numbers and subscribers .\nanagrafica - acquisition from images of dates and personal information .\nitalian ministry of finance - data acquisition\nfrom images of medical prescription .\niq register - acquisition of information from images\nand optics archives of documentation .\n* we had been offering for the entire veneto region ,\nthe following professional system engineers :\nambiente bull gcos 8 : systematical and special assistance\nin interel rfm , sql , infoedge .\nambiente bull / reti : systematical and special assistance\nof regional networks for datanet , l . a . n . , x . 25 ,\ndsa , mainway transmission , telematical networks .\nambiente unix : 2 unix system operators with knowledge of gcos 6 .\n* we have been offering for the meteorology institute of padova\nthe following professional system engineers :\nambiente digital / unix : systematical and special assistance\nfor dec vax / vms and unix systems with strong enough knowledge\nof informix and c programming .\nambiente / decnet / windows : systematical and special assistance\nfor dec vax / vms and windows with knowledge in financial administration\nof local networks , in financial administration and configuration of\ncommunication systems ( router , bridge , gateway , etc ) and of products\nof exchange data , in financial administration and configuration of\ninterface systems of internet .\ntherefore , to increase our presence to the international\nmarket we took part in the inter - governmental program\nbetween the united states and romania .\nthus , we participated to the international meeting of both\nromanian and american it companies on lst november 2001 due\nto the kind initiative of both governments .\nthe reason of this program , of the meeting mentioned above and of the\ninitiatives that followed was to offer a new way for outsourcing ,\nmore convenient than the indian one to american software companies .\nour company , already present on american market , is interested to be\na potential partner and one of most interested in cooperating with\namerican it companies .\nour main interest is both on the american and european market .\nour managing staff after visiting italy managed to establish relations\nwith this country for our curent projects .\non the other side a marketing tour has already been established\nin the usa in the month of may for any possible projects .\nthat is why we might be able to directly discuss with you any new project .\nwe ' d appreciate your feed - back containing detailed contact coordinates :\ncompany name , address , phone and fax numbers , contact person , web - site .\nour area of interest : software production export\nwe wish to express our availability to work under the client ' s brand .\nplease don ' t hesitate to send us your specific inquiry / offering demand .\nwe ' ll be happy to provide you the lowest prices in the field .\nthanking you for your time and looking forward to your reply ,\nwe wish you all the best .\ni . q . software staff\navfs mailing list\navfs @ csibe . fazekas . hu\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.789+0000", "entityId": 5177, "properties": {"text": "Subject: make this investigator work for you .\nastounding\nnew software lets you find\nout almost anything about anyone\nclick here to download it right\nnow ( no charge card needed ) :\ndownload\npage\n( this\nmake take a few moments to load - please be patient )\nfind out everything you ever wanted to know about :\nyour friends\nyour family\nyour enemies\nyour employees\nyourself - is someone using your identity ?\neven your boss !\ndid you know that you can search for\nanyone , anytime , anywhere , right on the internet ?\nclick here : download\npage\nthis mammoth collection of internet investigative tools & research\nsites will provide you with nearly 400 gigantic research resources\nto locate information online and offline on :\npeople you trust , people you work with\nscreen new tenants , roommates , nannys , housekeepers\ncurrent or past employment\nlicense plate numbers , court records , even your fbi file\nunlisted & reverse phone number lookup\nclick\nhere : download\npage\no dig up information on your friends , neighbors , or boss !\no locate transcripts and court orders from all 50 states .\no cloak your email so your true address can ' t be discovered .\no find out how much alimony your neighbor is paying .\no discover how to check your phones for wiretaps .\no or check yourself out - - you may be shocked at what you find ! !\nthese\nare only a few things\nthat you can do with this software . . .\nto download this software , and have it in less than 5 minutes , click & visit our website :\nclick\nhere : download\npage\nwe respect your online time and privacy\nand honor all requests to stop further e - mails .\nto stop future messages , do not hit reply . instead , simply click the following link\nwhich will send us a message with \" stop \" in the subject line .\nplease do not include any correspondence - - all requests handled automatically . : )\n[ click\nhere to stop further messages ]\nthank you ! copyright 2001 , all rights reserved .\n[ 1 : kj ) _ 8 j 7 bjk 9 ^ \" : } h & * tgobk 5 nkiys 5 ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.794+0000", "entityId": 5178, "properties": {"text": "Subject: discreet penis enlargement 4623\n4623", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.798+0000", "entityId": 5179, "properties": {"text": "Subject: email list - 100 million addresses $ 79\njane ,\nhere is the information you requested\nyour email address : webmaster @ efi . ie\ntargeted email address cd - rom\n100 million + addresses\nmore than 34 categories such as :\n= multi level marketers\n= opportunity seekers\n= telephone area code\n= country , city , state , etc . .\n= people running home businesses or interested in home businesses .\n= travel & vacations\n= opt - in\n= people interested in investments\n= people or businesses who spent more than $ 1000 on the web in thelast 2 months\nand many more\n* contains us & international emails\n* everything on this disk is in text file format and fully exportable .\n* the cd is as easy to use as browsing your c drive in explorer .\nhow this amazing directory was compiled :\n* virtually every other email directory on the internet was taken and put it through an extensive email verification process thus eliminating all the dead addressess .\n* special software spiders through the web searching websites , newsgroups and many other online databases with given keywords like area codes , industries , city names etc . . to find millions of fresh new addresses every week .\nthis month only $ 79 ( regular price $ 199 )\ndo not send a reply to this email address . to place an order , read instructions below :\nto order by credit card ( visa , mastercard or american express )\n- simply complete the order form below and fax it back to ( 44 3 ) 65 9 - 0 73 0\nmake sure that we have your email address so that we can send you a reciept for your transaction .\nto order by mail :\nprint the form below and send it together with a money order payable to ft international for the balance to :\n5863 le s lie st .\nsuite 408\nt oronto , ont a rio\ncanada\nor d e r f or m :\nplease print clearly\nfull name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncompany name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nemail address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ * required field\nshipping address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state / province : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nshipping options : [ ] $ 5 regular mail ( 1 - 2 weeks ) [ ] $ 12 priority mail ( 2 - 4 business days ) [ ] $ 25 fedex ( overnight )\n$ 79 . 00 usd + shipping charge $ _ _ _ _ _ _ _ _ us = total : $ _ _ _ _ _ _ _ _ _ usd\n[ ] credit card order [ ] mail order\ncredit card orders fax this order form back to 1 - 44 3 - 6 59 - 07 3 0 )\ncard # : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nexpiry date : _ _ _ _ _ _ _ _ _ _ _ _ _ _\ntype of card [ ] visa [ ] mastercard [ ] american express\nname on card : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbilling address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zip / postal : _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state / province : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ country : _ _ _ _ _ _ _ _ _ _ _ _ _\ncardholder signature : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplease note that ft i n t e rn a ti o n al will appear on your statement .\nfor any questions please feel free to call us at 1 - 4 1 6 - 2 3 6 - 89 8 1\nto be removed from our database please send an email to ftremovals 32663 _ 372 @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.804+0000", "entityId": 5180, "properties": {"text": "Subject: $ 500 lst annuity sale bonus\na new guaranteed annuity\nthat keeps going up and up and up . . . .\nincreasing rates - all guaranteed\nflexible or single premiums\nnursing home waiver *\nissue age 0 - 85 * *\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n* most states . * * surrender charge\nvaries for ages 56 + in ct , in , md , ok , sc . contracts issued by and bonus\nsponsored by usg annuity life company / equitable life insurance company\nof iowa , 909 locust street , des moines , ia 50309 . for agents only . rates\nsubject to change . product and features not available in all states . iras / qualified\nplans are already tax deferred . consider other annuity features . we reserve\nthe right to alter or end bonuses at any time . minimum premium for bonus\n$ 20 , 000 . ( ado 20257 ) .\nwe don ' t\nwant anyone to receive our mailings who does not wish to . this is professional\ncommunication sent to insurance professionals . to be removed from this\nmailing list , do not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.814+0000", "entityId": 5181, "properties": {"text": "Subject: an invitation from lisa @ freightmart . com\nto be removed from any future offers , simply click here !\nfor more info , click here !\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.819+0000", "entityId": 5182, "properties": {"text": "Subject: all natural viagra alternative !\nthe following advertisement is being sponsored by\navirtualshopper . com\nthe internets leading source for permission based opt - in marketing\nto opt - out from our mailing list click here\n. . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.823+0000", "entityId": 5183, "properties": {"text": "Subject: free insbuyer . com agency listing\nlife insurance\nannuities\ndisability insurance\nhealth insurance\nlong term care insurance\nmortgage insurance\nestate planning\nmedicare supplement insurance\npre - paid legal\ndental nsurance\ntravel insurance\nviatical settlements\nauto insurance\nhome insurance\ncall or e - mail us today !\nor\nplease fill out the form below for a free listing\nname :\ncompany :\naddress :\ncity :\nstate :\nzip :\nphone :\ne - mail :\nwebsite :\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.829+0000", "entityId": 5184, "properties": {"text": "Subject: brighten those teeth\nget your\nteeth bright white now !\nhave you considered professional teeth whitening ? if so , you\nknow it usually costs between $ 300 and $ 500 from your local\ndentist !\nvisit our site to learn how to\nprofessionally whiten your teeth , using the exact same whitening\nsystem your dentist uses , at a fraction of the cost ! here ' s what you get :\nwe will show you what to look for in a whitening\nsystem !\nwe will show you a comparison of all of the products\navailable today , including their costs !\nwe know our product is the best on the market , and we back\nit with a 30 day money back guarantee !\nclick here to learn more !\nyou are receiving this email as an\ninternet affiliate network member . if you would no longer like to receive\nspecial promotions\nvia email from internet affiliate network , then click\nhere to unsubscribe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.833+0000", "entityId": 5185, "properties": {"text": "Subject: your own desk top investigator\nastounding new software lets you find\nout almost anything about anyone . . .\ndownload it right now ( no charge card needed ) :\nclick here :\nhttp : / / lv 508 p . sg . st\ndiscover everything you ever wanted to know about :\nyour friends\nyour family\nyour enemies\nyour employees\nyourself - is someone using your identity ?\neven your boss !\ndid you know you can search for anyone , anytime ,\nanywhere , right on the internet ?\ndownload this software right now - - click here :\nhttp : / / lv 508 p . sg . st\nthis mammoth collection of internet investigative\ntools see the sites\nthey visit , and what they are typing .\n- explore secret web sites that conventional\nsearch engines have never found .\nclick here :\nhttp : / / lv 508 p . sg . st\n= = > discover little - known ways to make untraceable\nphone calls .\n= = > check adoption records ; locate missing children\nor relatives .\n= = > dig up information on your friends , neighbors ,\nor boss !\n= = > discover employment opportunities from around\nthe world !\n= = > locate transcripts and court orders from all\n50 states .\n= = > cloak your email so your true address can ' t\nbe discovered .\n= = > find out how much alimony your neighbor is paying .\n= = > discover how to check your phones for wiretaps .\n= = > or check yourself out , and you will be shocked at\nwhat you find ! !\nthese are only a few things you can do , there\nis no limit to the power of this software ! !\nto download this software , and have it in less\nthan 5 minutes click on the url below to visit\nour website ( new : no charge card needed ! )\nhttp : / / lv 508 p . sg . st\nif you no longer wish to hear about future\noffers from us , send us a message with stop\nin the subject line , by clicking here :\nplease allow up to 72 hours to take effect .\nplease do not include any correspondence in your\nmessage to this automatic stop robot - - it will\nnot be read . all requests processed automatically .\n[ : } h & * tgobk 5 nkiys 5 ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.838+0000", "entityId": 5186, "properties": {"text": "Subject: mortgage for even the worst credit zwzm\ndetails\nwant to refinance ?\nfill our this quick form and immediately have mortgage\ncompanies compete for you business .\nyou will be offered the , absolute , best refinance rates\navailible !\nyour credit doesn ' t matter , don ' t even worry about past\ncredit problems , we can refinance anyone !\nlet us put our expertise to work for you !\nor site 2\nerase\nhttp : / / 210 . 51 . 251 . 244 / al / uns / list . htm", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.843+0000", "entityId": 5187, "properties": {"text": "Subject: get big money at this casino site\nclick here to get your free\n$ 500\n$ $ $ maxim sportsbook and casino are proud to announce\nthat you get up to $ 500 with every new casino and sportsbook account\ncreated $ $ $\n$ $ $ we will also honour a free 2 - 3 night vacation for you\nand a loved one . that ' s right ! . . not only do you get a fantastic\nbetting account at a great book you also get a free vacation\n$ $ $\nsick of loosing money on casino games then don ' t be sick\nany more as maxim casino has one of the highest payouts in the\nindustry .\nmaxim\nsportsbook and casino\nclick here to get your free\nvacation\nthis email is not sent unsolicited . you opted - in with cnn - si . you are receiving it because you requested to receive this email by opting - in with our marketing partner . you will receive notices of exciting offers , products , and other options ! however , we are committed to only sending to those people that desire these offers . if you do not wish to receive such offers\nclick here . or paste the following into any browser : http : / / 65 . 162 . 84 . 5 / perl / unsubscribe . pl ? s = to remove your email name from our list . you may contact our company by mail at 1323 s . e . 17 th street , suite number 345 , ft . lauderdale , fl 33316\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.853+0000", "entityId": 5188, "properties": {"text": "Subject: traditional & internet marketing tool\nthe ultimate traditional & internet marketing tool , introducing the \" masterdisc 2002 \" version 4 . 00 , now released its massive 11 disc set with over 145 million database records ( 18 - 20 gigabytes of databases ) for marketing to companies , people , via email , fax , phone and mailing addresses worldwide !\ncomplete 11 disc set is all of the marketing data you will need for 2002 ! ! ! earn big profits this year ! ! !\nwe ' ve been slashing prices for limited time to get you hooked on our leads & data products .\nthe first disc ver 4 . 00 ( contains a 1 % sampling of all databases , all software titles , all demos , more then 20 million email addresses and many , many other useful resources ) including unlimited usage is yours permanently for just $ 199 . 00 ( normally $ 299 . 00 ) for your first disc if you order today ! ! ! also huge discounts from 15 % - 50 % off of data discs ver 4 . 01 to ver 4 . 10 regular price of $ 499 . 00 per disc .\nfor more information , ordering available records , and pricing contact us :\n# 954 340 1628 voice ( promo code : md 2002 bb , mention this for one free disc valued at $ 499 . 00 with your first order ! ! ! )\n* * * * masterdisc 2002 contents * * * *\nwe ' ve gone out of our way to insure that this product is the finest of its kind available . each cd ( ver . 4 . 01 to ver . 4 . 10 ) contains approximately 10 % of the 145 million records distributed within the following databases :\n- 411 : usa white and yellow pages data records by state .\n- discreetlist : adult web site subscribers and adult webmasters email addresses .\n- fortune : this database contains primary contact data relating to fortune 500 , fortune 1000 , and millions more corporations sort able by company size and sales .\n- gendermail : male and female email address lists that allow you target by gender with 99 % accuracy .\n- marketmakers : active online investors email addresses . also information in reference to thousands of public companies symbols , and descriptions .\n- maxdisc : online website owners , administrators , and technical contacts for website domain name owners of the \" . com \" , \" . net \" , and \" . org \" sites . this database has information from about 25 % of all registered domains with these extensions .\n- newspapers : national directory of newspapers from small local papers to large metro news agencies .\n- pitboss : avid online casino and sports book players , and casino webmasters .\n- sa : south american mailing databases from more than a dozen countries . each mailing address belongs to a visa or mastercard credit card holder .\n- software : this directory contains 86 software titles , some are fully functional versions and others are demo versions . many suites of commercial email tools as well as many other useful resources will be found here to help extract , verify , manage , and deliver successful commercial email marketing campaigns .\nso overall the complete masterdisc 2002 will provide you with well over # 145 million records which can be used for traditional marketing such as direct mail , fax transmission , telemarketing , and internet marketing such as commercial email campaigns . we look forward to providing you with the databases and software needed for your success ! ! !\nwe are currently shipping our january 2002 releases and including monthly download updates with every order for only $ 49 . 95 per month .\ndue to this incredibly discounted promotional price , we are accepting only credit card or check orders . for more information , ordering available records , and pricing contact us :\n# 954 340 1628 voice ( promo code : md 2002 bb , mention this for one free disc valued at $ 499 . 00 with your first order ! ! ! )\nto discontinue receipt of further notice at no cost and to be removed from all of our databases , simply reply to message with the word \" discontinue \" in the subject line . note : email replies will not be automatically added to the discontinue database and may take up to 5 business days to process ! ! ! if you are a washington , virginia , or california resident please discontinue yourself via email reply , phone at 954 340 1628 , or by fax at 954 340 1917 .\n. 051102 mx 4", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.858+0000", "entityId": 5189, "properties": {"text": "Subject: this is where it all begins\nno where else will you find the level of accuracy , detail and convenience .\nact now ! you ' ll receive unlimited access to our world famous psychics with no per minute charges ! ! !\nbut ' s that ' s not all . . . you also get unlimited tarot and rune readings , real - time biorhythm charts , full in - depth numerology reports , detailed daily monthly horoscopes , real - time natal charts , a love analyzer , ouija board , and much , much more !\nyour future is waiting click here ! ! !\nlive psychics 24 / 7\nnumerology\nhoroscopes\nastrology\nthe tarot\nbiorhythms\ni ching\nrunes\nand so much more !\nthis email is not sent unsolicited . you are opted in with cnn - si . you are receiving it because you requested receive this email by opting - in with our marketing partner . you will receive notices of exciting offers , products , and other options ! however , we are committed to only sending to those people that desire these offers . if you do not wish to receive such offers\nclick here . or paste the following into any browser : http : / / 65 . 162 . 84 . 5 / perl / unsubscribe . pl ? s = to remove your email name from our list . you may contact our company by mail at 1323 s . e . 17 th street , suite number 345 , ft . lauderdale , fl 33316\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.863+0000", "entityId": 5190, "properties": {"text": "Subject: attn :\ni presume this mail will not be a surprise to you .\ni am an accountant with the ministry of mineral\nresources and energy in south africa and also a member\nof contracts awarding committee of this ministry under\nsouth africa government .\nmany years ago , south africa government asked this\ncommittee to awards contracts to foreign firms , which\ni and 2 of my partners are the leader of this\ncommittee , with our good position , this contracrs\nwas over invoiced to the tune of us $ 25 , 600 , 000 : 00 as a\ndeal to be benefit by the three top member of this\ncommittee .\nnow the contracts value has been paid off to the\nactual contractors that executed this jobs , all we\nwant now is a trusted foreign partner like you that we\nshall front with his banking account number to claim\nthe over inflated sum .\nupon our agreemeent to carry on this transaction with\nyou , the said fund will be share as follows .\n75 % will be for us in south africa .\n20 % for using your account and other contribution\nthat might reqiured from you .\n5 % is set aside for the up front expences that\nwill be encounter by both party to get all necessary\ndocuments and formarlities that will justify you as\nthe rightful owner of this fund .\nif you are interested in this transaction , kindly\nreply this massege with all your phone and fax\nnumbers , to enable us furnish you with details and\nprocedures of this transaction .\ngod bless you\nyours faithfully .\njoseph edward .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.872+0000", "entityId": 5191, "properties": {"text": "Subject: don ' t pay another monthly bill until you read thisdgsrw\nhome mortgage network\nhome\nof america ' s most liberal lenders\ninterest rates\nare still at\nan all time low !\nthis is a great time to refinance your home , consolidate\nall of your\nbills and high interest credit card debt , and get the cash you need !\nall homeowners in the usa easily qualify !\ndamaged credit is never a problem !\nwe have\nspecial programs for every type of credit history\nno upfront fees - no hidden fees - get cash fast for . . .\nhome\nimprovement * 2 nd mortgage * refinance * credit repair * college tuition\ndebt consolidation * a dream vacation * a new business * any purpose\nwe work with the nation ' s top lenders . . . and they ' re\nhungry for your business . we will get you the best loan to meet your needs !\nour service is 100 % free - and there is no\nobligation !\napplying is easy . enter herefor a quote today !\nwe search for the best offering ' s for\nyou ; we do the research and you get only the superior results\nthis email is brought to you by ; tmc . . to abnegate\nall future notices , please enter here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.879+0000", "entityId": 5192, "properties": {"text": "Subject: upside only treasury - linked annuity\nupside of annual increases in 5 - year t - note\nbonus crediting over normal\ntreasury notes\nalternative for large\nmunicipal bond or t - note buyers\ncall or e - mail us today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n* for deposits over $ 100 , 000\nwe don ' t want anybody\nto receive our mailings who does not wish to receive them . this is professional\ncommunication sent to insurance professionals . to be removed from this\nmailing list , do not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.885+0000", "entityId": 5193, "properties": {"text": "Subject: if you own a cell phone . . . . . . please read . . . . . 5214\nunbelievable prices on cell phones and accessories :\nhttp : / / 65 . 218 . 171 . 48\nhands free ear buds 1 . 99 !\nphone holsters 1 . 98 !\nphone cases 1 . 98 !\ncar chargers 1 . 98 !\nface plates as low as 2 . 98 !\nlithium ion batteries as low as 6 . 94 !\nhttp : / / 65 . 218 . 171 . 48\nclick below for accessories on all nokia , motorola lg , nextel ,\nsamsung , qualcomm , ericsson , audiovox phones at below\nwholesale prices !\nhttp : / / 65 . 218 . 171 . 48\n* * * new * * * now also : accessories for palm iii , palm vii ,\npalm iiic , palm v , palm ml 00 & ml 05 , handspring visor , compaq ipaq * * *\ncar chargers 6 . 95 !\nleather cases 13 . 98 !\nusb chargers 11 . 98 !\nhot sync cablesl 1 . 98 !\nhttp : / / 65 . 218 . 171 . 48\n* * * if you need assistance please call us ( 732 ) 751 - 1457 * * *\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\nto be removed from future mailings please send your remove\nrequest to : 3425342 r @ eudoramail . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.890+0000", "entityId": 5194, "properties": {"text": "Subject: rape ! ! .\nrape sex !\nclick here\nyou must be at least 18 to enter !\nto be removed from our \" in house \" mailing list\nclick here\nand you will automatically be removed from future mailings .\nyou have received this email by either requesting more information\non one of our sites or someone may have used your email address .\nif you received this email in error , please accept our apologies .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.894+0000", "entityId": 5195, "properties": {"text": "Subject: yyyy , do you know the hgh differences ?\nhello , jm @ netnoteinc . comhuman growth hormone therapy\nlose weight while building lean muscle massand reversing the ravages of aging all at once .\nremarkable discoveries about human growth hormones ( hgh ) are changing the way we think about aging and weight loss .\nlose weightbuild muscle tonereverse aging\nincreased libidoduration of penile erectionhealthier bones\nimproved memoryimproved skinnew hair growthwrinkle disappearance visit\nour web site and learn the facts : click hereyou are receiving this email as a subscr - in amerig lisve yoursts , just click here", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.900+0000", "entityId": 5196, "properties": {"text": "Subject: offer your clients 11 . 19 %\n11 . 19 %\nfirst year ( 5 . 9 % first year rate plus 5 % premium bonus )\n5 . 5 % commission * , plus bonus ( call for details )\nfull death benefit\n10 % free withdrawal after one year\ngreat for 1035 ' s and transfers\ncall\nor e - mail us today !\nor\nplease\nfill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nvisit us online\nat : www . standardagents . com\n* commission reduces at older ages . for agent use only .\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal\nnotice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.905+0000", "entityId": 5197, "properties": {"text": "Subject: reading to children has proven to increase their vocabulary obum\n* this message was transferred with a trial version of communigate ( tm ) pro *\nmissed all the news this weekend ?\nwere you too busy treating the special moms in your life like the goddesses they are ?\nwell good for you ! now follow the link to see what you may have missed this weekend !\nclick here to view this important announcement\nhas opened their doors for this awesome offer .\njust check it out . we send it to you and you may review it for 30 days .\nno payment upfront and no obligations\nif you don ' t like it , just send it back and you wont be charged\nthis newsletter is not unsolicited !\nthe email address has been subscribed and confirmed to our mailing list which means that someone with access to this email account verified the subscription per email .\nif you would like to stop receiving this newsletter :\nclick here to\nu n s u b s c r i b e\nto 48 5 - 13 cl 4 p\nbe transported to the world of middle earth\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.910+0000", "entityId": 5198, "properties": {"text": "Subject: http : / / www . efi . ie\nhi\ni visited http : / / www . efi . ie , and\nnoticed that you ' re not listed on some search engines ! i think we can offer\nyou a service which can help you increase traffic and the number of visitors\nto your website .\ni would like to introduce you to trafficmagnet . net . we offer a unique technology\nthat will submit your website to over 300 , 000 search engines and directories\nevery month .\nyou ' ll be surprised by the low cost , and by how effective this website promotion\nmethod can be .\nto find out more about trafficmagnet and the cost for submitting your website\nto over 300 , 000 search engines and directories , visit www . trafficmagnet . net .\ni would love to hear from you .\nbest regards ,\nchristine hall\nsales and marketing\ne - mail : christine @ trafficmagnet . net\nhttp : / / www . trafficmagnet . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.914+0000", "entityId": 5199, "properties": {"text": "Subject: too many credit card bills ! - this fixes that !\nwe can help you\n. . .\nreduce your\nmonthly payment up to 60 % . lower your credit\ncard interest rates . stop late or over\nthe limit fees . combine your\nbills into one low simple payment . provide a\nstructured payment plan . bring your account to\na current status . private handling of\nyour accounts . put a debt specialist on your side .\nnot a loan , no credit check , no\nproperty needed .\nthis email is not sent unsolicited . you are receiving it because you requested receive this email by opting - in with our marketing partner . you will receive notices of exciting offers , products , and other options ! however , we are committed to only sending to those people that desire these offers . if you do not wish to receive such offers\nclick here . or paste the following into any browser : http : / / 65 . 162 . 84 . 5 / perl / unsubscribe . pl ? s = to remove your email name from our list . you may contact our company by mail at 1323 s . e . 17 th street , suite number 345 , ft . lauderdale , fl 33316\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.919+0000", "entityId": 5200, "properties": {"text": "Subject: fwd : next tuesday at 9 am\nfor\nimmediate release\ncal - bay ( stock symbol : cbyi )\nwatch for analyst \" strong buy recommendations \" and several advisory\nnewsletters picking cbyi . cbyi has filed to be traded on\ntheotcbb , share prices historically increase when companies get\nlisted on this larger tradingexhange . cbyi is trading around $ . 30 ?\nand should skyrocket to $ 2 . 66 - $ 3 . 25 a share in the near future .\nput cbyi on your watch list , acquire a postion\ntoday .\nreasons to invest in cbyi\na profitable company , no debt and is on track to beat all earnings\nestimates with increased revenue of 50 % annually !\none of the fastest growing distributors in environmental safety\nequipment instruments .\nexcellent management team , several exclusive\ncontracts . impressive client list including theu . s . air force ,\nanheuser - busch , chevron refining and mitsubishi heavy industries ,\nge - energy environmental research .\nrapidly growing industry\nindustry revenues exceed $ 900 million , estimates indicate that there\ncould be as much as $ 25 billion from \" smell technology \" by the end of\n2003 .\n! ! ! ! congratulations\n! ! ! ! ! toour subscribers that took advantage of\nourlast recommendation to buynxlc . it rallied from $ 7 . 87\nto $ 11 . 73 !\nall removes honered . please allow 7\ndays to be removed and send all address to : honey 9531 @ mail . net . cn\ncertain statements contained in this news release may be\nforward - looking statements within the meaning of the private securities\nlitigation reform act of 1995 . these statements may be identified by such terms\nas \" expect \" , \" believe \" , \" may \" , \" will \" , and \" intend \" or similar terms . we are not\na registered investment advisor or a broker dealer . this is not an offer to buy\nor sell securities . no recommendation that the securities of the companies\nprofiled should be purchased , sold or held by individuals or entities that learn\nof the profiled companies . we were paid $ 27 , 000 in cash by a third party to\npublish this report . investing in companies profiled is high - risk and use of\nthis information is for reading purposes only . if anyone decides to act as an\ninvestor , then it will be that investor ' s sole risk . investors are advised not\nto invest without the proper advisement from an attorney or a registered\nfinancial broker . do not rely solely on the information presented , do additional\nindependent research to form your own opinion and decision regarding investing\nin the profiled companies . be advised that the purchase of such high - risk\nsecurities may result in the loss of your entire investment . the owners of this publication may already own free trading shares in\ncbyi and may immediately sell all or a portion of these shares into the open\nmarket at or about the time this report is published . factual statements\nare made as of the date stated and are subject to change without notice .\nnot intended for recipients or residents of ca , co , ct , de , id , il , ia , la , mo , nv , nc , ok , oh , pa , ri , tn , va , wa , wv , wi . void where\nprohibited . copyright c 2001\n* * * * *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.923+0000", "entityId": 5201, "properties": {"text": "Subject: men charset = windows - 1252 \" >\nvigoral herbal sex enhancersdirect from\nthe lab to you ! we\nare now offering 3 unique products to help increase your moments with\nthat special someone @ only\n$ 24 . 99 each ! ! !\nonly\n$ 24 . 99 ea !\nonly\n$ 24 . 99 ea !\nonly\n$ 24 . 99 ea !\nmen ,\nincrease your energy level maintain stronger erections !\nedible ,\nspecially formulated lubricant for everyone !\nwomen ,\nheighten your sexual desire increase your sexual climax !\nclick\nhere to get it while it ' s hot !\nyou\nare receiving this special offer because you have provided permission to\nreceive email communications regarding special online promotions or\noffers . if you feel you have received this message in error , or wish to\nbe removed from our subscriber list , click\nhere and you will be removed within less than three business days .\nthank you and sorry for any inconvenience .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.928+0000", "entityId": 5202, "properties": {"text": "Subject: keep your home safe\nu . s . homeowners\ncall today to qualify for\na free home security system\n1 - 800 - 775 - 0738\namerica ' s most trusted\nsecurity system . . .\nthe most\ncomprehensive\nsecurity package\never offered free !\nover 135 , 000\nfamilies made\nthe right\nchoice !\nin these\ntroubled times , your family ' s safety is more important than ever ! defend your family\nagainst the threat of home invasion and forced entry . make sure you ' re\nprepared to get help in the event of an emergency . take advantage of\nthe following special offer .\nfor a limited time you\ncan receive our home security system , the\nmost comprehensive home security package ever offered for free ! you must call the toll free number\nbelow to qualify for this special offer .\nyou\ndon ' t have to be a victim ! intelligent homeowners are\nawakening to one undeniable fact . studies show burglars will commit crimes\nsomewhere else when confronted with a monitored security system . our\nhome security system provides ultimate protection for your family and home ,\n24 - hours each and every day . the bad guys will have to go elsewhere to find\ntheir victim .\nstate - of - the - art\nwireless technology ! our security system is advanced\nwireless technology which enables a clean installation in approximately one hour .\nno holes to drill , no unsightly wires to run .\nreplacement parts\n( probably never needed ) are also free ,\nwith your lifetime guaranteed parts\nreplacement warranty for as long as your home is monitored by our\nauthorized ul listed monitoring facility . that tells you the confidence we\nplace in our product ' s quality .\nwe are\nabsolutely confident our security system provides the\nnecessary deterrence and detection your home needs . to prove it , the company will pay your insurance deductible ( up to\n$ 250 . 00 ) in the unlikely event you suffer a loss from an unwanted\nintrusion . you also may be eligible for up to\n20 % in insurance premium discounts .\nto\nsee if you qualify for this exciting offer , simply phone the toll free number\nbelow , answer a few simple questions , andpossibly have your new home\nsecurity system installed , in your home , within 48 hours .\ncall now ! !\n1 - 800 - 775 - 0738\noperators are on duty 10 : 00 am to 10 : 00 pm\nedt monday - friday ,\n10 : 00 am to 2 : 00 pm edt on saturday\nyour system will include the following :\n* no connection fee * 10 doors / windows\nprotected * lifetime warranty * wireless - no drilling ,\nno mess * you own the system ! * pages you when the\nkids get home * rechargeable battery backup * yard signs and window\ndecals\nremember ,\nthe system is free and could save you as much as 20 % on your homeowners\ninsurance . this is a limited time offer , so call now to\nqualify for your free home security system .\ncall today !\n10 : 00 am to 10 : 00 pm\nedt monday - friday ,\n10 : 00 am to 2 : 00 pm edt on saturday\n1 - 800 - 775 - 0738\nto be removed from future mailings ,\nclick ' reply ' , type ' remove ' as your subject , and send .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.933+0000", "entityId": 5203, "properties": {"text": "Subject: what is emc stock to cash ?\nyour client receives 90 % of their stock portfolio\nup front and in cash\nyou invest this money in either an\nannuity , life policy . . . or both\nif the portfolio decreases in value ,\nyour clients ' investment remains intact\nif the portfolio increases in value ,\nyour clients receive the upside appreciation\nreduces capital gains and estate taxes\ns 2 c\nallows you to wrap your favorite fixed annuities around your clients '\nexisting stock portfolios , combining the safety features of tax - deferred\nannuities with the high growth potential of the nation ' s leading\nstock indices . annuities can also be used to fund fixed life insurance\npolicies .\ncall tim armstrong or e - mail us today !\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe\ndon ' t want anybody to receive our mailing who does not wish to\nreceive them . this is a professional communication sent to insurance\nprofessionals . to be removed from this mailing list , do not reply\nto this message . instead , go here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.937+0000", "entityId": 5204, "properties": {"text": "Subject: free info . start your own internet consulting business ntsj\ndid you know 4 of the country ' s 10 richest people never graduated from college ?\nthey had the courage to dream , and the wisdom to\ntake advantage of opportunities .\ndo you have the courage and the wisdom to\nchange your life ?\nyou deserve success !\nchecking out this web site is free , and it could pay off in the form of\na dramatically improved lifestyle for you and your loved ones .\nyou will never know unless you check it out now !\ninvest just one minute to check out this website right now .\nif you would like to be removed from all future mailings just\nsend and email to erienw 3943 @ freemail . hu", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.942+0000", "entityId": 5205, "properties": {"text": "Subject: re : 6 . 25 30 yr fixed home loan , no points flu\ndear\nhomeowner ,\n* 6 . 25 %\n30 yr fixed rate mortgage\ninterest\nrates are at their lowest point in 40 years ! we help you find the\nbest rate for your situation by matching your needs with hundreds\nof lenders ! home improvement , refinance , second\nmortgage , home equity loans , and more ! even with less\nthan perfect credit !\nclick here for a free quote !\nlock\nin your low fixed rate today\nano\npoints\nano\ncost out of pocket\nano\nupfront fees\nano\nobligation\nafree\nconsultation\naall\ncredit grades accepted\n6 . 25 % won ' t stay this low forever !\nclick for your free quote , now !\nh\napply\nnow and one of our lending partners will get back to you within\n48 hours .\nclick here !\nto be removed please clicking\nhere .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.946+0000", "entityId": 5206, "properties": {"text": "Subject: 6 % commission on 12 month \" cd - style \" annuity\n3 . 35 % guaranteed\ngreat roll - over options\nissued to age 85\n6 % commission through age 85\nearn a $ 75 to $ 125 bonus on every paid app . . .\nbonus offer expires july 31 , 2002\ncall or e - mail mo marketing today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.951+0000", "entityId": 5207, "properties": {"text": "Subject: an invitation to advertise on freightmart !\nfreightmart . com - ship anything . . . anywhere . . . anytime . . . auction style !\nneed more info ? |\nif you ' re a shipper |\nif you ' re a forwarder\nto be removed from any future offers , simply click here !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.957+0000", "entityId": 5208, "properties": {"text": "Subject: financial freedom\ndear friend ,\nhow would you like to make $ 50 , 000 in the next 90 days ? sounds impossible ?\ni guarantee that it ' s true , and you can do it . i ' m sure you would like an\nextra $ 50 , 000 to spend . for more information , please visit the website\nbelow .\nif the above link does not work , please copy the address and paste it into\nyour web browser .\nat the very least take a minute to look at what is on the site , it may\nchange your life forever .\nnote : this is not an unsolicited e - mail . by request ,\nyour e - mail address has been verified by you to receive\nopt - in e - mail promotions . if you do not wish to receive\nthese emails and want to unsubscribe yourself from the\nterms of this verification , please reply to this email\nwith the word \" remove \" in the subject line , and you will\nbe removed from our mailing list .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.967+0000", "entityId": 5209, "properties": {"text": "Subject: jump start desire in both men and women 7893 vbvfl - 278 zkcc 8 - 17\nspring blow out sale\ngreat sex in the bottle\nfor men & women\nguaranteed to restore the urge !\nand enhance the pleasure and health !\ntwo for price of one\nexclude yourself , johnl 95615221 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.975+0000", "entityId": 5210, "properties": {"text": "Subject: got a mortgage ? 6 . 25 30 yr fixed free instant quote djf\ndear\nhomeowner ,\n* 6 . 25 %\n30 yr fixed rate mortgage\ninterest\nrates are at their lowest point in 40 years ! we help you find the\nbest rate for your situation by matching your needs with hundreds\nof lenders ! home improvement , refinance , second\nmortgage , home equity loans , and more ! even with less\nthan perfect credit !\nclick here for a free quote !\nlock\nin your low fixed rate today\nano\ncost out of pocket\nano\nobligation\nafree\nconsultation\naall\ncredit grades accepted\nrates as low as\n6 . 25 % won ' t stay this low forever click here\n* based on mortgage rate as of 5 - 15 - 02 as low as 6 . 25 % see lender\nfor details\nh\napply\nnow and one of our lending partners will get back to you within\n48 hours .\nclick here !\nto be removed please clicking\nhere .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.981+0000", "entityId": 5211, "properties": {"text": "Subject: i don ' t work . . . but i have a ton of money ! vhcw\nhello\nthis e - mail ad is being sent in full compliance with u . s . senate bill 1618 , title # 3 , section 301\nto remove yourself send a blank e - mail to : removal 999 @ yahoo . com\nyou are getting this email because you are on a list of people that want all the money they can spend without working for it . . . you will only get this once , so please do nothing\nif you would like to be removed ! ( by doing nothing you will automatically be removed )\nwe really are looking for truly lazy people that dream about being able to do what they\nwant , when they want and do so without working .\nwe want the type of people that drive by a house and say that they want that house some\nday , but would love to own that house through money generated while they sleep or while\nthey are on vacation .\nwe want the type of people that would like to send their children to \" harvard \" or\n\" stanford \" and have these educations paid for through money generated while they sleep or\nwhile they are on vacation .\nwe want the type of people that see a new t - bird , corvette or jaguar and want to own these\ncars and have them paid for through money generated while they sleep or while they are on\nvacation .\nwe want the type of people that on a whim want to travel to maybe maui in the winter or\nalaska in the summer and while there if they choose to buy a home in either place , they can\ndo so through money generated while they sleep or while they are on vacation .\nwe want the people that would like to sleep till noon if they choose to or get up and go to\nthe country club to play golf if they choose to and do so because they always have a stream\nof income through money generated while they sleep or while they are on vacation .\nwe want the type of people that truly hate the thought of getting up in the morning and\nmaking money for some one else .\nwe want the type of people that deep down want to tell some snob that thinks he ' s a big\ndeal because he or she drives a mercedes , that the rolls royce that you are driving is paid\nfor and tomorrow you might buy yourself a porche and if you are in the mood to , you might\nbuy your wife or friend a bmw . in other words , you deep down want to tell the snobs of the\nworld , that they really are managing their debt , but you have what you want when you want\nand you have it all with no debt and you have all of this through money generated while you\nsleep or while you are on vacation .\nseriously , if you want more money than you can spend and you really , truly do not want to\nwork , then you are the type of person we are looking for .\nif you would like to know why some people can do this . . . then simply send a blank email with\nthe words : \" i hate to work \" in the subject area to :\nihatetowork 99 @ yahoo . com\nafter doing so , you will be contacted in less than 24 hours and learn how to get the house\nyou want , the education for your children that you would like them to have , go on the\nvacation you want , when you want all through money generated while you sleep or while you\nare playing golf or while you are on vacation .\nalso , we do not want you to hear from us again if the idea of making all the money you want\nis not exciting to you . . . therfore this is the first and last email you will get unless we\nhear from you . . . so if you want to get rich with out working , then simply send a blank email\nwith the words : \" i hate to work \" in the subject area to :\nihatetowork 99 @ yahoo . com\nthank you ,\n\" the i hate to work \" associates\nsubject : i don ' t work . . . but i have a ton of money !\niqccjypkiducrbiixmqcuncw", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.987+0000", "entityId": 5212, "properties": {"text": "Subject: secretly record all internet activity on any computer . . . bv\nfind out who they are chatting / e - mailing with all those hours !\nis your spouse cheating online ?\nare your kids talking to dangerous people on instant messenger ?\nfind out now ! - with big brother instant software download .\nclick on this link now to see actual screenshots and to order !\nto be excluded from future contacts please visit :\nhttp : / / 213 . 139 . 76 . 69 / php / remove . php\ndanie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.991+0000", "entityId": 5213, "properties": {"text": "Subject: lowest mortgage loan rates vkp\ncommentary\nit is time to refinance !\nyour credit does not matter , we can approve anyone .\nnow is the time to let some of the top mortgage companies\nin the country compete for your business .\nif you have good credit we will give you the most amazing\nrates available anywhere !\nif you have poor credit , don ' t worry ! we can still refinance\nyou with the most competitive rates in the industry !\nlet us put our expertise to work for you !\nhttp : / / 64 . 21 . 33 . 238 / 74205 /\nor site 2\nhttp : / / 64 . 21 . 33 . 238 / 74206 /\nerase\nhttp : / / 64 . 21 . 33 . 238 / optout . htm", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:27.996+0000", "entityId": 5214, "properties": {"text": "Subject: cc prevents diesel fuel gelling 3750 r - 5\n1075 rxoo 9 - 26 ll 1\nincrease your gas mileage\nit ' s easy and fast\nanyone can install\nworks on any automobile engine\nimproves engine performance\ntested by a recognized epa testing laboratory\nguaranteed 100 %\njoel 94515085 @ yahoo . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.001+0000", "entityId": 5215, "properties": {"text": "Subject: mcle seminars\nclick\nhere\nto be removed from our email list .\njuly\n6 - 7 , 2002\ncost : $ 795 *\nheld at the hilton waikola village , hawaii\nregister and pay by may 31 and recieve 10 % off ! ( $ 715 . 50 )\n* air ,\nhotel , and activities not included\nthe\npresentation was extremely informative and entertaining .\nfun\nfor the whole family . . . a great reason to take a vacation !\n* * * *\nlimited space available\n* * * *\nhours\nincludes\n12 . 5 hours of participatory :\n6 . 0\nethics\n3 . 0\nsubstance\nabuse\n1 . 5\nemotional\ndistress\n1 . 0\nelimination\nof bias in the legal profession\n1 . 0\ngeneral\nlegal education\naudio materials for remaining mcle\ncredits will be available at the seminar .\nbrought\nto you by :\nbar\napproved curriculum\napproved\nby arizona , arkansas , california , georgia , idaho , iowa ,\nkansas , louisiana , maine , missouri , montana , nevada ,\nnew hampshire , new mexico , north carolina , north dakota ,\noregon , pennsylvania , south carolina , tennesee , texas ,\nutah , virginia , washington state , and wisconsin bar\nassociations . approval pending for alabama and minnesota .\ncall\nattorney connections at ( 800 )\n221 - 8424\nto reserve your package today !\nor :\nclick here to print the reservation form and fax to ( 760 )\n731 - 7785 ; or\nmail to : attorney connections , p . o . box 1533 , bonsall , ca\n92003\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.005+0000", "entityId": 5216, "properties": {"text": "Subject: free sizzling ltc sales materials\nltc prospecting pamplets\nltc scriptless flip chart\n25 of \" what is long term care ?\nor\n25 of \" 6 big myths of long term care \"\nhelp your clients see the facts and figures needed in order to\nunderstand the long term care insurance market . help them to learn\nwhat ltci actually is and how important it is to their financial future .\nyours free with your first appointment !\n\" your options for long term care \"\nunique scriptless flip chart\nincludes our 11 - step sales presentation !\ncontrast the value of\nlong term care insurance against medicare , medicaid and family care\n- - showing that ltci is the alternative that makes sense . statistically\nprove the importance of ltci for your clients ' twilight years .\nyours free with your first application !\nfree pamphlet samples with inquiry !\ndon ' t forget to ask about . . .\nour full portfolio of senior products\nltc annuity\nlead programs\nmedicare supplement\nltci sales training\nfinal expense\ncareer opportunities\ncall or e - mail ltc advantage today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe don ' t want anybody\nto receive our mailings who does not wish to receive them . this is professional\ncommunication sent to insurance professionals . to be removed from this\nmailing list , do not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.010+0000", "entityId": 5217, "properties": {"text": "Subject: look 10 years younger - free sample ! ! ! ! ! ! ! ! esoy\nthis e - mail ad is being sent in full compliance with u . s . senate bill 1618 , title # 3 , section 301\nto remove yourself send a blank e - mail to : removal 992002 @ yahoo . com\nfree sample ! free tape !\nnew cosmetic breakthru !\nlook 10 years younger in ( 6 ) weeks or less !\nlook good duo . . from the inside out . . . . .\n> from the outside in !\nintroducing . . . . natures answer to faster\nand more obvious results for :\n* * wrinkles\n* * cellulite\n* * dark circles\n* * brown spots . . .\n* * lifts the skin\n* * strenghtens the hair and nails\nalso helps to . . . . . . . .\n* reduce cell damage from excessive sun exposure\n* stimulate colllagen formation\n* provide protection against skin disorder\n* and is hopoallergenic\nfind out what ! where ! and how !\nto order your free sample and tape send your\nrequest to :\nlookyoungnow 2000 @ yahoo . com\nsubject : subscribe to free sample :\nyour name : . . . . . . . . . . . . . . . . . . .\nstreet address : . . . . . . . . . . . . . .\ncity : . . . . . . . . . . . . . . . . . . . . . . . .\nstate and zip code : . . . . . . . . . .\nemail address : . . . . . . . . . . . . . . .\nsxjrohvneydjgucyfa", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.014+0000", "entityId": 5218, "properties": {"text": "Subject: hello\nfrom = seko moshood mobutu\ntel = 234 - 1 - 776 - 2397\ndear friend\ni am the first son of the late mobutu sese seko , the\nformer\npresident\nof the congo republic . i am presently under\nprotective custody\nin nigeria\nas\na political refugee . i got your contact over the internet during my\nsearch for a\nstranger\nthat\ncan cooperate with me in this mutual transaction . i took this option because my family friends and associates cpuld not be trusted any more since they contributed to my present predicament .\ni want you to note that this business will benefit\nboth of us .\nhowever ,\nyou must confirm your ability to handle this because\nit involves\na large\namount of money . the money ( 50 million us dollars is\nmy share of\nmy\nfather ' s\nestate . i boxed and shipped the money to a security\ncompany\nabroad at the\npeak of the war / political crisis that rocked my\ncountry few\nyears ago . now\nthe crisis has ended and i need a trustworthy person\nlike you to\nproceed to\nthe place of the security company in order to clear\nthe fund and\ninvest on\nmy behalf as i dont want my name to be used for now .\nnote that i will send to you the relevant documents\nthat will\nenable\nyou take possesion of the the fund for onward\ninvestment for our\nmutual\nbenefit . all i need from you is as follows :\n1 . a letter of committment ( duely signed ) that you\nwill keep the\ntransaction strictly confidential .\n2 . your confirmation of your ability to handle this .\n3 . your international identity or driving licence\nnumber for\nidentification\nto the security company .\n4 . your telephone and fax numbers for communication .\n5 . your full permanent address .\nas soon as i get the above information from you , i\nwill disclose\nto\nyou the name and the country of the security company .\ni will\nforward your\nname and particulars to the security company to enable\nthem contact you\naccordingly . i will also send to you a letter of\nauthority to\nenable you\nclear the fund on my behalf . note that this is a very\nsafe\ntransaction as\nthis money is my share of my father ' sestate .\ni am waiting for your response to enable us proceed .\nregards ,\nmoshood seko mobutu", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.019+0000", "entityId": 5219, "properties": {"text": "Subject: digital voice recorders\ndear sir / madam\nour company is designer and manufacturer of digital voice recorders ( dvr ) edic - mini http : / / www . telesys . ru / english / edic - mini . shtml with extraordinary characteristics :\nedic - mini model a - the smallest size over the world ( 17 x 57 xl 0 mm ) , up to 1120 min of record time .\nedic - mini model b - the longest battery life ( up to 70 hours in record mode , metal case 27 x 54 x 7 mm ) , up to 1120 min of recording time .\nedic - mini model bl - the roundest dvr in the world : - ) ( metal case d = 30 mm , h = 14 mm ) , up to 1120 min of recording time .\nedic - mini model c - the longest recording time ( up to 8960 min = 149 hours ) , metal case 27 x 54 xl 0 mm .\ncoming soon :\nedic - mini model s - stereo digital voice recorder .\nedic - mini bwl - round wood ( juniper ) case ( for lovers of juniper fragrance : - ) , the most stylish dvr in the world .\nall digital voice recorders have extremely high voice sensitivity , digital pc interface , telephone line interface to record phone conversations , programmable user ' s interface , ability of using it for data storage and transfer ( capacity from 16 mbyte to lgbyte ) .\nalso we produce voice modules ( assembled pcb only ) emm http : / / www . telesys . ru / english / modules . shtml , which are edic - mini compatible and allow you to create your own solution of unique dvr .\nwe are looking for dealers for selling our product , but pls note , that we don ' t offer cheap product , we offer unique one - it has no competitors in the word market now . we are ready to design and produce any kind of dvr upon your request . low volume order ( 100 + ) is acceptable too .\nwelcome to our website http : / / www . telesys . ru / english to get more information .\n* * * sorry , if this information isn ' t interesting for you . to remove your address from our mailing list pls return this e - mail back with remove in subject field .\nthank you .\nwith best regards ,\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nyana korshun ,\nsales manager of \" telesystems \"\ne - mail : isales @ telesys . ru\nwww site in russian : http : / / www . telesys . ru\nwww site in english : http : / / www . telesys . ru / english\nnever send spam . it is bad .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.023+0000", "entityId": 5220, "properties": {"text": "Subject: = ? iso - 8859 - 1 ? q ? fw : _ cd _ nua _ do _ dhamhsa = ed _ ch = e 9 il = ed ? =\n- - - - - original message - - - - -\nfrom : rathcairn\nto : automail\nscript ; automail\nscript ; astraea @ iol . ie ; ?se tobin ; arabenl 6313168 @ hotmail . com ; aofarachain @ tinet . ie ; aofarachain @ eircom . net ; anthony\ngorman ; ann - mari bergkvist ; annemarie meehan ; annemarie mcdonnell ; anne 7172 @ arabia . com ; anna\nswelund ; anna ni thuama ; ann faherty\n; anewloan @ mail . ru ; andy\nplunkett ; andrew\ndelany ; andrea nic oscair ; an\nfhiontarlann ; amurtagh @ tinet . ie ; amanda n?\nghuidhir ; als 2 @ hotmail . com ; alpha @ fun . 21 cn . com\n; allen moira\n; allen carberry ; alex _ doyle @ ie . ibm . com ; alan mcgowan ; alain\ncivel ; aishling n? raghallaigh ; ?ine m?ire n? choile?in ; aine\nguilfoyle ; ailin . nichuir @ ucd . ie ; ail?n n?\nh?g?in ; aileen\no ' meara , rte ; advisor @ physiciansblend . net ; adshwe @ bekkers . com . au ; adrian 28 @ esatclear . ie ; admin ; ade kallas ; adare productions ; abqewvbgf @ iinet . net . au ; aal 133777 @ yahoo . com ; a _ crothers @ looksmart . com . au ; 89 ok 7 yumhjn @ msn . com ; 12 unidiploma @ msn . com ; ogbvll 2 jf @ solvo . spb . su ; daithi mac carthaigh ; d 7596 @ go . ru ; d 23463 @ portugalmail . com\ncc : 09886 w @ ams . com . br ; 0815 @ activate . de ; 01 bb 91 b 2 . 7 e 887960 @ genesys . pt ; 00 luke @ upline . se\nsent : tuesday , may 21 , 2002 3 : 47 pm\nsubject : cd nua do dhamhsa? ch?il?\na chara ,\nemail gairid le cur in i?l duit faoi\ndhl?thdhiosca nua at? ar f?il dona damhsa? ch?il? is coitianta i measc daoine\n?ga .\nt? ceol ar dona damhsa? seo a leanas\n:\nballa? luimn?\nbriseadh na carraige\nbaint an fh?ir\nionsa? na hinse\nport an fh?mhair\ncor na s?og\nr?ic? mh?la\ntonna? thora?\ndroichead ?tha luain\nstaic?n eorna\nse?in?n\ncor beirte\nshoe the donkey\nwaltzes\nagus eile\nis f?idir an cd a cheannach tr?d www . damhsa . com\nn? 086 8339082\nle meas ,\nbrian ? broin\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.028+0000", "entityId": 5221, "properties": {"text": "Subject: great idea for you byrdshot\nmortgage rates are about to rise\ncash in now !\nour programs will help you with :\n- debt consolidation\n- 2 nd mortgage\n- refianance\n- home improvement\nour free no obligation quite has already helped\nthousands of homeowners , just like you .\nclick here to start saving\nif you would rather not be included in our future mailings , click here .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.032+0000", "entityId": 5222, "properties": {"text": "Subject: want to accept credit cards ? 126432211\naredit cpproved\nno cecks\ndo it now\n126432211", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.038+0000", "entityId": 5223, "properties": {"text": "Subject: secretly record all internet activity on any computer . . . taf\nfind out who they are chatting / e - mailing with all those hours !\nis your spouse cheating online ?\nare your kids talking to dangerous people on instant messenger ?\nfind out now ! - with big brother instant software download .\nclick on this link now to see actual screenshots and to order !\nto be excluded from future contacts please visit :\nhttp : / / 213 . 139 . 76 . 69 / php / remove . php\nbacalau", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.046+0000", "entityId": 5224, "properties": {"text": "Subject: 3 locations free : orlando , las vegas , ft laud .\ncongratulations on\nreceiving this special e - mail invitation ! ! !\nthese invitations were only being sent out . . . to a very select group of\nindividuals like yourself . . . who were confirmed and qualified to receive this spectacular\noffer ! ! !\nplease click on the link below to register and receive your complimentary\nthree night stay in your choice of three ( 3 ) of these nine ( 9 ) fun filled locations ! ! !\n- magical orlando\n- las vegas . . . city of lights\n- palm beach , fl . . . . florida ' s best kept secret\n- fabulous ft , lauderdale\n- atlantic city . . . city of excitement\n- new smyrna beach , fl . . . . secluded from it all\n- daytona beach , fl . . . the worlds most famous beach\n- key west , fl . . . the southern most point in the u . s .\n- miami south beach . the city that never sleeps\nso log onto : http : / / www . famtriptravel . com / 3 mv _ cntr . html\n. . . for your complimentary vacations for two ! ! !\nkeep in mind . . . our obligation to hold your vacations will expire 72 hours\nfrom the date of delivery of this special invitation\nspecial disclaimer : this message is sent in compliance of the proposed bill\nsection 301 ,\nparagraph ( a ) ( 2 ) ( c ) of s . 1618 . by providing a valid remove me\nfeature it can not be\nconsidered spam . furthermore , we make every effort to insure that the recipients\nof our\ndirect marketing are those individuals who have asked to receive additional\ninformaion on\npromotional offers from companies who offer internet marketing products . again\nwe\napologize if this message has reached you in error . screening of addresses has\nbeen done\nto the best of our technical ability . we honor all removal requests . if you\nwould like ,\nyou can be removed from any future mailings by the sponsor listed above by\ne - mailing\nmailto : removeme @ famtriptravel . com\nwith the subject remove me in the subject line .\nthis advertising material is being used for the purpose of soliciting sales of a\nvacation\ninterval ownership plan .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.051+0000", "entityId": 5225, "properties": {"text": "Subject: almost - guaranteed issue term\nalmost guarantee issue term for impaired risk market\n10 year level term - 8 medical questions\nissue ages 20 to 55 - $ 10 , 000 to $ 75 , 000 face amount\na + carrier\nyou won ' t sleep tonight thinking about all the prospects\nyou have for this product !\nyou have several cases in your desk drawer\nfor this product !\ncall or e - mail us today !\nvisit our web site www . impairedriskterm . com for rates\nand a sample application\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe don ' t want anybody to receive our mailing who does not wish to\nreceive them . this is professional communication sent to insurance\nprofessionals . to be removed from this mailing list , do not reply\nto this message . instead , go here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.056+0000", "entityId": 5226, "properties": {"text": "Subject: minimize your phone expenses\nunlimited web conferencing\nsubscribe to the web conference center for only $ 40 . 00 per month !\n( connects up to 15 participants at a time plus audio charges )\nmanage your meetings virtually on line\napplication sharing\nmulti - platform compatible ( no software needed )\ncall anytime , from anywhere , to anywhere\nunlimited usage for up to 15 participants ( larger groups availabale )\nlowest rate $ . 18 cents per minunte for audio ( toll charges included )\nquality , easy to use service\nnumerous interactive features\nfree demo\neliminate or reduce travel expense\ntry this on for savings . . .\nand turn those unnecessary trips into problem solving and fact finding conferences ,\nsaving time and wear and tear on your overworked business staff .\nto find out more about this revolutionary concept ,\nfill out the form below .\nrequired input field *\nname *\nweb\naddress\ncompany\nname *\nstate *\nbusiness\nphone *\nhome\nphone\nemail\naddress *\nall information given herein is strictly confidential and will not be re - distributed\nfor any reason other than for the specific use intended .\nto be removed from our distribution lists , please\nclick\nhere . .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.061+0000", "entityId": 5227, "properties": {"text": "Subject: breaking news : e - mail margin - bottom : 0 \" >\ne - mail\nmarketing system\n-\nbulk e - mail will make you money so fast , your head will spin !\n- customers say we would no longer be in business without it\n- new package deal includes everything you need .\nsee this product ' s web page\nclick\nhere\n1\nmillion business leads on cd\n-\nfor telemarketing , mailing , or faxing this list is a gold mine !\n- contains company name , address , phone , fax , sic , size .\n- list allows for unlimited use .\nsee this product ' s web page click\nhere\nfax\nmarketing system\n-\nfax broadcasting is the hot new way to market your business !\n- people are 10 times more likely to read faxes than direct mail .\n- software 4 million leads turns your computer into a fax blaster .\nsee this product ' s web page click\nhere\nvisit\nour web site or call 618 - 288 - 6661\nto be taken off of\nour list click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.067+0000", "entityId": 5228, "properties": {"text": "Subject: sorry they were in a meeting\nurgent noticepending merger to increase revenue 236 % now is the time to invest in gwihgwih is rapidly expanding through acquisitions . in the lst quarter two mergers are in proces with a schedule to buy four more profitable companies by the year end . gwih plans to file for nasdaq . stock prices historically increase when listed on nasdaq .\non may 30 th , a year long investor relation and public awareness campaign will be launched to build shareholder equity . several well - known stock pick newsletters , tv , radio and newsgroups will provide coverage on gwih and it ' s acquisitions . all - star management team with advanced degrees , specialized training , proven track records and over 90 years combined experience . they are true deal makers , executors and closers . put gwih on your watch list , aquire a postion in gwih today ! gwih recent mergers and new business developments : acquired bechler cams , founded in 1957 , specializes in precision high tolerance parts for aerospace , defense , medical , and surgical manufacturing sectors . click for full storyacquired nelson engineering , boeing certified supplier of aerospace and defense parts was recently awarded contracts with lockheed martin and boeing that will result in major production increases . click for full storyclick for quote\nto unsubscribe simply reply to this email for permanent removal .\ninformation within this advertisement contains \" forward looking \" statements within the meaning of section 27 ( a ) of the u . s . securities act of 1933 and section 21 ( e ) of the u . s . securities exchange act of 1934 . any statements that express or involve discussions with respect to predictions , expectations , beliefs , plans , projections , objectives , goals , assumptions or future events or performance are not statements of historical facts and may be forward looking statements . forward looking statements are based on expectations , estimates and projections at the time the statements are made that involve a number of risks and uncertainties which could cause actual results or events to differ materially from those presently anticipated . forward looking statements may be identified through the use of words such as expects , will , anticipates , estimates , believes , or by statements indicating certain actions may , could or might occur . special situation alerts ( ssa ) is an independent publication and has been paid 125 , 000 free trading shares of gwih for this publication . ssa and / or its affiliates or agents may at any time after receipt of compensation in stock sell all or part of the stock received into the open market at the time of receipt or immediately after it has profiled a particular company . ssa is not a registered investment advisor or a broker dealer . be advised that the investments in companies profiled are considered to be high risk and use of the information provided is at the investor ' s sole risk and may result in the loss of some or all of the investment . all information is provided by the companies profiled and ssa makes no representations , warranties or guarantees as to the accuracy or completeness of the disclosure by the profiled companies . investors should not rely on the information presented . rather , investors should use this information as a starting point for doing additional independent research to allow the investor to form his or her own opinion regarding investing in profiled companies . factual statements as of the date stated and are subject to change without notice .\n* * * * * * *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.072+0000", "entityId": 5229, "properties": {"text": "Subject: banner life upgraded to a + +\neffective february 8 , 2002\nbanner extended conversion privileges on opterm and potomac term . conversion\non these products is now available for the duration of the guaranteed\nlevel premium period , or up to attained age 70 , whichever comes first .\n( this includes the opterm 30 ! )\nthese 2 positive changes make banner life\nan industry leader in the term market . if you ' d like to see for yourself just\nhow competitive they are . . .\nfor\nbroker and broker dealer use only - not for use with the general public .\nproducts not available in all states . this is a general account non - variable\nproduct *\nwe don ' t want anybody to receive our mailings who does\nnot wish to receive them . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.077+0000", "entityId": 5230, "properties": {"text": "Subject: younger and healthier with ultimate - hghl 7283\nas seen on nbc , cbs , cnn , and even oprah ! the health discovery that actuallyreverses aging while burning fat , without dieting or exercise ! this provendiscovery has even been reported on by the new england journal of medicine . forget aging and dieting forever ! and it ' s guaranteed !\nclick below to enter our web site :\nhttp : / / www . freehostchina . com / washgh /\nwould you like to lose weight while you sleep !\nno dieting !\nno hunger pains !\nno cravings !\nno strenuous exercise !\nchange your life forever !\n100 % guaranteed !\n1 . body fat loss 82 % improvement .\n2 . wrinkle reduction 61 % improvement .\n3 . energy level 84 % improvement .\n4 . muscle strength 88 % improvement .\n5 . sexual potency 75 % improvement .\n6 . emotional stability 67 % improvement .\n7 . memory 62 % improvement .\nclick below to enter our web site :\nhttp : / / www . freehostchina . com / washgh /\nif you want to get removed\nfrom our list please email at - standardoptout @ x 263 . net ( subject = remove \" your email \" )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.082+0000", "entityId": 5231, "properties": {"text": "Subject: double coverage amount , same payment . . . uyz\nsave up to\n75 % on your term life\ninsurance !\ncompare rates from top insurance companies around\nthe country\nin our life and times , it ' s important to plan for\nyour family ' s future , while\nbeing comfortable financially . choose the right\nlife insurance policy today .\nclick the link below to compare the lowest rates\nand save up to 75 %\ncompare your coverage\nyou ' ll be able to compare rates and get a free\napplication in less than a minute !\n* get your free instant quotes . . .\n* compare the lowest prices , then . . .\n* select a company and apply online .\nget a free quote now !\nyou can ' t predict the future , but you can always\nprepare for it .\nreferral - agent", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.087+0000", "entityId": 5232, "properties": {"text": "Subject: financial opportunity [ eew 58 ]\nthere are more financial opportunities out there than ever\nbefore . the majority of those that succeed don ' t follow the\nrules , they bend them , avoid them or go around them .\nfreedom 55 is for the suckers . you don ' t have to work 40 to\n60 hours a week for 40 years all to make someone else wealthy .\nwe have a better way !\nare you interested in creating immediate wealth ?\nhave you considered improving the quality of your life ?\ndo you currently have the home , the car and the life style that you dream of ?\nour business develops 6 figure income earners , quickly and\neasily . let us show you how you can go from just getting by\nto earning over $ 100 , 000 in your first year of business .\nfor more information about this incredible life changing\nopportunity , please complete the form below . the information\nis free , confidential and you are under no risk or obligations .\nname\naddress\ncity\nstate\nalabama\nalaska\narizona\narkansas\ncalifornia\ncolorado\nconnecticut\ndelaware\ndist of columbia\nflorida\ngeorgia\nhawaii\nidaho\nillinois\nindiana\niowa\nkansas\nkentucky\nlouisiana\nmaine\nmaryland\nmassachusetts\nmichigan\nminnesota\nmississippi\nmissouri\nmontana\nnebraska\nnevada\nnew hampshire\nnew jersey\nnew mexico\nnew york\nnorth carolina\nnorth dakota\nohio\noklahoma\noregon\npennsylvania\nrhode island\nsouth carolina\nsouth dakota\ntennessee\ntexas utah\nvermont\nvirginia\nwashington\nwest virginia\nwisconsin\nwyoming\nzip code\nhome phone\ntime to contact\ne - mail\ndesired monthly income\n$ 500\n$ 1000\n$ 2500\n$ 5000 +\n- - - - - - - - - -\nto receive no further offers from our company regarding\nthis subject or any other , please reply to this\ne - mail with the word ' remove ' in the subject line .\nst 4 t 6 p 42", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.103+0000", "entityId": 5233, "properties": {"text": "Subject: protect your family ' s future and save up to 70 %\n10 - year\nlevel\nterm life insurance\nmale / female\nmonthly premiums\nno nicotine\n$ 250 , 000\n$ 500 , 000\nage\nmale\nfemale\nmale\nfemale\n35\n$ 10 . 33\n$ 9 . 19\n$ 16 . 19\n$ 14 . 00\n40\n$ 13 . 30\n$ 11 . 64\n$ 22 . 32\n$ 18 . 82\n45\n$ 19 . 43\n$ 16 . 63\n$ 35 . 57\n$ 22 . 88\n50\n$ 29 . 49\n$ 22 . 32\n$ 54 . 69\n$ 40 . 25\n55\n$ 44 . 89\n$ 32 . 12\n$ 85 . 32\n$ 59 . 94\n2002 reliaquote . all rights reserved\nlife\ncan change in an instant . don ' t wait until it ' s too late . give\nyour family the security they deserve today with affordable\nterm life insurance from reliaquote .\nto unsubscribe from our\nmailing list , please click\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.107+0000", "entityId": 5234, "properties": {"text": "Subject: new extensions now only $ 14 . 95\nimportant information :\nthe new domain names are finally available to the general public at discount prices . now you can register one of the exciting new . biz or . info domain names , as well as the original . com and . net names for just $ 14 . 95 . these brand new domain extensions were recently approved by icann and have the same rights as the original . com and . net domain names . the biggest benefit is of - course that the . biz and . info domain names are currently more available . i . e . it will be much easier to register an attractive and easy - to - remember domain name for the same price . visit : http : / / www . affordable - domains . com today for more info .\nregister your domain name today for just $ 14 . 95 at : http : / / www . affordable - domains . com . registration fees include full access to an easy - to - use control panel to manage your domain name in the future .\nsincerely ,\ndomain administrator\naffordable domains\nto remove your email address from further promotional mailings from this company , click here :\n38\n1201 hvli 9 - 661 pjwll 5", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.112+0000", "entityId": 5235, "properties": {"text": "Subject: adv oil and gas investment tgym\nhow would you like a 100 % tax free investment in oil and gas wells ?\nmake over 100 % annually and receive monthly tax free income with\nvery low risk . if you are liquid for a $ 10 , 000 investment , email your\nname , address , and phone number to\noilandgaspackage @ aol . com and we will send you the information\nto unsubscribe from these special mailings :\nforward this mail with \" unsubscribe \" in the subject line to oilandgasremoval @ aol . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.120+0000", "entityId": 5236, "properties": {"text": "Subject: re : account information\nemail advertise to 28 , 000 , 000 people for free\nact now before 6 pm pst on tuesday , may 28 th\nand receive a free $ 899 . 00 bonus\n1 ) let ' s say you . . . sell a $ 24 . 95 product or service .\n2 ) let ' s say you . . . broadcast email free to 500 , 000 people daily .\n3 ) let ' s say you . . . receive just 1 order for every 2 , 500 emails .\ncalculation of your earnings based on the above statistics :\n[ day 1 ] : $ 4 , 990 [ week 1 ] : $ 34 , 930 [ month 1 ] : $ 139 , 720\n- - - - - - - - - - - - - - - -\nyou now know why you receive so many email advertisements . . .\n= = = > broadcast email advertising is extremely profitable !\n1 ) what if you . . . sell a $ 99 . 95 product or service ?\n2 ) what if you . . . broadcast email to 30 , 000 , 000 + people monthly ?\n3 ) what if you . . . receive 1 order for every 250 emails ?\njust imagine = > day 30 ! = = > week 30 ! ! = = = > month 30 ! ! !\n= = > the profits that broadcast email can generate are amazing ! !\n* * according to forrester research , a broadcast email ad is up\n* * to 15 times more likely to result in a sale than a banner ad !\n- - - - - - - - - - - - - - - -\n[ comparison of internet advertising methods ] :\n= > a 1 / 20 page targeted web site banner ad to 5 million people\non the internet can cost you about $ 100 , 000 .\n= > a 5 page targeted direct mail advertisement to 1 million people\nthrough the postal service can cost you about $ 500 , 000 .\n= > a 50 page targeted html broadcast email advertisement with\npictures to 50 , 000 , 000 people through the internet is free .\n. . . which advertising method sounds most appealing to you ?\n\" targeted direct email advertising is the wave of the future .\nby no other means can you effectively reach your market so\nquickly and inexpensively . \" - online profits newsletter\n\" many business people are finding out that they can now advertise\nin ways that they never could have afforded in the past . the\ncost of sending mass e - mail is extremely low , and the response\nrate is high and quick . \" - usa today\n- - - - - - - - - - -\n[ example of a personalized / targeted broadcast email ] :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kate @ cattiesinc . com\nto : mary @ commtomm . com\nsubject : about your cat !\nhi mary ,\nare you interested in receiving up to 80 % savings on cat supplies ?\nif so , come visit our web site at : http : / / www . cattiesinc . com\n= > with broadcast email software , a broadcast email advertisement\n= > like this one can be automatically sent to up to 1 , 000 , 000\n= > people on a daily basis with less than 2 minutes of your time !\n* imt strategies reports an average of a 16 . 4 % click through rate\nfrom users that have received a broadcast email advertisement !\n- - - - - - - - - - - - - - - -\na european 2001 benchmark study\nconducted by forrester research says :\n1 ) 41 % of consumers believe email is a good way to find out about\nnew products .\n2 ) 36 % of consumers in 13 countries read most of the promotional\nemail they receive and 9 % forward the email to a friend because\nthey think it is valuable .\n- - - - - - - - - - -\nbe prepared ! you may receive a huge amount of orders within\nminutes of sending out your first broadcast email advertisement !\n* according to digital impact , 85 % of broadcast email offers are\nresponded to within the first 48 hours !\n\" when you reach people with e - mail , they ' re in a work mode , even\nif they ' re not at work . they ' re sitting up , they ' re alert . you\ncatch them at a good moment , and if you do it right , you have a\nreally good shot of having them respond . \"\n- william thames [ revnet direct marketing vp ]\n- - - - - - - - - - -\n* an arthur anderson online panel reveals that 85 % of online users\nsay that broadcast email advertisements have led to a purchase ! \"\n\" according to flonetwork , us consumers discover new products and\nservices 7 + times more often through an email advertisement ,\nthan through search engines , magazines and television combined ! \"\nonly a handful of companies on the internet have discovered\nbroadcast email advertising . . . = > now you can be one of them ! !\n- - - - - - - - - - -\n= > united messaging says there are 890 + million email addresses !\n= > get ready ! now with broadcast email , you can reach them all\n= > thanks to our broadcast email software !\nour broadcast email software with dns technology automatically\ncreates 10 super - fast mail servers on your computer which are\nthen used to send out your broadcast emails to millions for free !\n= = > with our new email sending technology . . .\n= = > your internet provider ' s mail servers are not used !\nthere are no federal regulations or laws on email advertising &\nnow with our software = > you can avoid internet provider concerns !\n= > if you send a broadcast email advertisement to 50 , 000 , 000\n= > people and just 1 of 5 , 000 people respond , you can generate\n= > 10 , 000 extra orders ! how much extra profit is this for you ?\n- - - - - - - - - - - - - - - - - - - - - -\nas featured in : \" the boston globe \" ( 05 / 29 / 98 ) ,\n\" the press democrat \" ( 01 / 08 / 99 ) , \" anvil media \" ( 01 / 29 / 98 ) :\n[ nim corporation presents ] : the broadcast email package\nrequirements : win 95 / 98 / 2000 / me / nt / xp or mac softwindows / virtualpc\n[ broadcast email sender software ] ( $ 479 . 00 retail ) :\nour broadcast email sender software allows you the ability to\nsend out unlimited , personalized and targeted broadcast email\nadvertisements to over 500 , 000 , 000 people on the internet at\nthe rate of up to 1 , 000 , 000 daily , automatically and for free !\nhave a list of your customer email addresses ? broadcast email\nadvertise to them with our software for free !\n[ targeted email extractor software ] ( $ 299 . 00 retail ) :\nour targeted email extractor software will automatically\nnavigate through the top 8 search engines , 50 , 000 + newsgroups ,\nmillions of web sites , deja news , etc . . and collect millions\nof targeted email addresses by using the keywords of your\nchoice ! this is the ultimate extractor tool !\n[ 15 , 000 , 000 + email addresses ] ( $ 495 . 00 retail ) :\nmillions of the newest & freshest general interest and\nregionally targeted email addresses separated by area code ,\nstate , province , and country ! from alabama to wyoming ,\nargentina to zimbabwe ! 15 , 000 , 000 + fresh emails are yours !\n[ step by step broadcast email package instructions ] :\nyou will be guided through the entire process of installing\nand using our broadcast email software to send out broadcast\nemail advertisements , like this one , to millions of people for\nfree ! even if you have never used a computer before , these\ninstructions make sending broadcast email as easy as 1 - 2 - 3 !\n[ the broadcast email handbook ] :\nthe broadcast email handbook will describe to you in detail ,\neverything you ever wanted to know about broadcast email !\nlearn how to write a successful advertisement , how to manage\nthe hundreds of new orders you could start receiving , what\nsells best via broadcast email , etc . . . this handbook is a\nnecessity for anyone involved in broadcast email !\n[ unlimited customer & technical support ] :\nif you ever have any questions , problems or concerns with\nanything related to broadcast email , we include unlimited\ncustomer & technical support to assist you ! our # 1 goal\nis customer satisfaction !\n[ additional information ] :\nour broadcast email software package contains so many\nfeatures , that it would take five additional pages just to\nlist them all ! duplicate removing , automatic personalization ,\nand free upgrades are just a few of the additional bonuses\nincluded with our broadcast email software package !\n- - - - - - - - - - - - - - - - - - - - - -\nall together our broadcast email package contains everything\nyou will ever need for your entire broadcast email campaign !\nyou will receive the entire broadcast email package with\neverything listed above ( $ 1 , 250 . 00 + retail ) for only $ 499 . 00 us !\nbut wait ! ! if you order by tuesday , may 28 th , you will\nreceive the broadcast email package for only $ 295 . 00 us ! !\norder now and receive [ 13 , 000 , 000 bonus emails ] ( $ 899 value )\nfor free for a total of 28 , 000 , 000 fresh email addresses ! !\nregardless , if you send to 1 , 000 or 100 , 000 , 000 people . . .\nyou will never encounter any additional charges ever again !\nour broadcast email software sends email for a lifetime for free !\n- - - - - - - - - - - - - - - -\nsince 1997 , we have been the broadcast email marketing authority .\nour # 1 goal is to see you succeed with broadcast email advertising .\nwe are so confident about our broadcast email package , that we are\ngiving you 30 days to use our entire package for free !\n= = > you can send unlimited broadcast email advertisements !\n= = > you can extract unlimited targeted email addresses !\n= = > you can receive unlimited orders !\nif you do not receive at least a 300 % increase in sales or are not\n100 % completely satisfied with each and every single aspect of our\nbroadcast email package , simply return it to us within 30 days for\na 100 % full refund , no questions asked ! !\nbest of all , if you decide to keep our broadcast email package , it\ncan be used as a 100 % tax write off for your business !\n- - - - - - - - - - -\nsee what users of our broadcast email package have to say . . .\n\" since using your program , i have made as much in two days as i\nhad in the previous two weeks ! ! ! ! ! i have to say thank you for\nthis program - you have turned a hobby into a serious money\nmaking concern . \"\n= w . rogers - chicago , il\n\" we have used the software to send to all our members plus about\n100 , 000 off the disk you sent with the software and the response\nwe have had is just fantastic ! ! our visits and sales are nearly\nat an all time high ! \"\n= a . freeman - england , uk\n\" i have received over 1200 visitors today and that was only\nsending out to 10 , 000 email addresses ! \"\n= k . swift - gunnison , co\n\" i ' m a happy customer of a few years now . thanks a lot . . . . i love\nthis program . . \"\n= s . gallagher - melville , ny\n\" thanks for your prompt filing of my order for your broadcast email\nsoftware - - it took only about a day . this is faster than anybody\ni have ever ordered something from ! thanks again ! \"\n= w . ingersoll - scottsdale , az\n\" i feel very good about referring the folks i have sent to you\nthus far and will continue to do so . it is rare to find a company\nthat does business this way anymore . . . it is greatly appreciated . \"\n= t . blake - phoenix , az\n\" your software is a wonderful tool ! a + + + + \"\n= s . nova - los angeles , ca\n\" thank you for providing such a fantastic product . \"\n= m . lopez - tucson , az\n\" your tech support is the best i have ever seen ! \"\n= g . gonzalez - malibu , ca\n\" i am truly impressed with the level of service . i must admit i\nwas a bit skeptical when reading your ad but you certainly deliver ! \"\n= i . beaudoin - toronto , on\n\" my first go round gave me $ 3000 to $ 4000 in business in less than\none week so i must thank your company for getting me started . \"\n= a . roberts - san francisco , ca\n\" we are really happy with your email program . it has increased\nour business by about 500 % . \"\n= m . jones - vancouver , bc\n\" it really works ! ! ! ! ! thank you thank you , thank you . \"\n= j . beckley - cupertino , ca\n- - - - - - - - - - - - - - - -\n[ sound too good to be true ? ]\n* * if you broadcast email to 500 , 000 internet users daily . . .\n* * do you think that maybe 1 of 5 , 000 may order ?\n= > if so . . . that is 100 extra ( cost - free ) orders every day ! !\nremember . . you have 30 days to use our broadcast email package\nfor free and see if it works for you !\nif you are not 100 % completely satisfied , simply return the\nbroadcast email package to us within 30 days for a full refund !\n- - - - - - -\n[ broadcast email software package ] : easy ordering instructions\n= > once your order is received we will immediately rush out the\n= > broadcast email package on cd - rom to you via fedex priority\n= > overnight or 2 - day priority international the same day free !\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ to order by phone ] :\nto order our broadcast email software package by phone with\na credit card or if you have any additional questions , please\ncall our sales department in the usa at :\n= > ( 541 ) 665 - 0400\n* * you can order now ! all major credit cards are accepted !\norder by 3 pm pst ( m - th ) today - > have it by 10 am tomorrow free !\neuropean & foreign residents - > have it within 2 weekdays free !\nremoval from our email list = > call ( 206 ) 208 - 4589\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ to order by fax ] :\nto order our broadcast email software package by fax with a credit\ncard , please print out the order form at the bottom of this email\nand complete all necessary blanks . then , fax the completed order\nform to our order department in the usa at :\n= > ( 503 ) 213 - 6416\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ to order by postal mail ] :\nto order our broadcast email software package with a cashiers\ncheck , credit card , us money order , us personal check , or us bank\ndraft by postal mail , please print out the order form at the\nbottom of this email and complete all necessary blanks .\nsend it along with payment of $ 295 . 00 us postmarked by tuesday ,\nmay 28 th , or $ 499 . 00 us after tuesday , may 28 th to :\nnim corporation\n1314 - b center drive # 514\nmedford , or 97501\nunited states of america\n- - - - - - - - - - - - - - - -\n\" over 20 , 000 businesses come on the internet every single day . . .\nif you don ' t send out broadcast email . . . your competition will ! \"\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ broadcast email software package ] : order form\n( c ) 1997 - 2002 nim corporation . all rights reserved\ncompany name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nyour name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbilling address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state / province : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nzip / postal code : _ _ _ _ _ _ _ _ _ _ country : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nnon pobox shipping address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state / province : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nzip / postal code : _ _ _ _ _ _ _ _ _ _ country : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nphone number : _ _ _ _ _ _ _ _ _ _ _ _ _ _ fax number : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nemail address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n* * to purchase by credit card , please complete the following :\nvisa [ ] mastercard [ ] amex [ ] discover [ ] diners club [ ]\nname on credit card : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncc number : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ exp . date : _ _ _ _ _ _ _ _ _\namount to charge credit card ( $ 295 . 00 or $ 499 . 00 ) : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nsignature : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.125+0000", "entityId": 5237, "properties": {"text": "Subject: lose 20 pounds in 10 days 27540\nlose weight fast , without special diets or expensive foods\nno starving yourself !\nif you are tired of starvation diets , body wraps , fad diets , grueling exercise , or hypnosis to lose weight then you have just made the best choice of your life by\nreading this email !\nwe ' re not kidding , and as you will see we back it up with our lifetime money - back guarantee !\nnew ! extreme power plus - proven\nweight loss system -\nfor more details or to order now click our url ! http : / / loseweightfast ! / ad . html\nsome browsers do not\naccept hyperlinks , so if the above link does not work , cut paste\nit in your browser ' s url box .\nlifetime money back guarantee ! it ' s almost to good to be true ! extreme power plus is here just in time ! order\ntoday get free shipping * ! ! !\nclick\nhere http : / / loseweightfast ! / ad . html\nas with all dietary supplements or exercise program , please consult your physician for their advice .\n* note : on orders of 3 bottles or more only ( us\norders only ) .\nyou\nare receiving this special offer because you have provided\npermission to receive email communications regarding special\nonline promotions or offers . to discontinue any further messages\nfrom this company , please click\nhere to unsubscribe from our mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.130+0000", "entityId": 5238, "properties": {"text": "Subject: herbal viagra 30 day trial . . . oncxbv\nexit\nlist instructions\npmoney", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.134+0000", "entityId": 5239, "properties": {"text": "Subject: this stock rumored to fly\nspecial situation alerts hot pick of the year\nenvironmental remediation holding corp . ( otcbb : erhc )\nurgent buy : $ . 17\nsell target : $ 1 . 25\ninvestor alert : erhc enters into joint - venture license agreement\nwith schlumberger ltd ( nyse : slb , $ 60 ) and baker hughes , inc .\n( nyse : bhi , $ 40 ) for seismic data on some of the richest offshore\noil blocks where erhc controls a huge working interest !\ninvestors - we have found the hidden gem : ( otcbb : erhc ) !\nerhc ' s joint - venture with schlumberger and baker hughes puts them in\nworld - class company with these leaders in oil exploration and reservoir\nimaging services . the involvement of slb and bhi reinforces the\n$ multi - billion dollar value that has been placed in this offshore\ndrilling haven . erhc ' s goal is to maximize shareholder value from\nexisting contractual rights , making them a significant player in\nthis region .\nthe big money rolls in :\nthe seismic data from this joint - venture is being made available for\nfurther involvement by the largest oil companies in the world over\nthe next 2 weeks ! !\nbidding wars have already developed between major oil companies suchas :\nshell , chevron / texaco , conoco , exxon / mobil , philips , and marathon who\nare willing to pay $ hundreds of millions to drill in these zones and\npartner with erhc .\nstock set to explode on earnings boom :\nerhc ' s exclusive right to participate in exploration and production\nalong with oil industry giants could be worth up to $ fifty million\nas these oil blocks are adjacent to billion barrel producing regions !\nspecial situation alerts ' newsletter offers valuable research that\nbuilds your wealth . we target serious gains for serious investors\nwith a 700 % investment return on erhc .\ndisclaimer : certain statements contained in this newsletter may be\nforward - looking statements within the meaning of the private securities\nlitigation reform act of 1995 . these statements may be identified by\nsuch terms as \" expect \" , \" believe \" , \" may \" , \" will \" , and \" intend \" or\nsimilar terms . we are not a registered investment advisor or a broker\ndealer . this is not an offer to buy or sell securities . no\nrecommendation that the securities of the companies profiled should be\npurchased , sold or held by individuals or entities that learn of the\nprofiled companies . this is an independent electronic publication that\nwas paid $ 10 , 000 by a third party for the electronic dissemination of\nthis company information . be advised that investments in companies\nprofiled are considered to be high - risk and use of the information\nprovided is for reading purposes only . if anyone decides to act as an\ninvestor they are advised not to invest without the proper advisement\nfrom an attorney or a registered financial broker , if any party decides\nto participate as an investor then it will be that investor ' s sole risk .\nbe advised that the purchase of such high - risk securities may resultin\nthe loss of some or all of the investment . the publisher of this\nnewsletter makes no warranties or guarantees as to the accuracy or the\ncompleteness of the disclosure . investors should not rely solely on the\ninformation presented . rather , investors should use the information\nprovided in this newsletter as a starting point for doing additional\nindependent research on the profiled companies in order to allow the\ninvestor to form their own opinion regarding investing in the profiled\ncompanies . factual statements made about the profiled companies are made\nas of the date stated and are subject to change without notice .\ninvesting in micro - cap securities is highly speculative and carries an\nextremely high degree of risk .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.139+0000", "entityId": 5240, "properties": {"text": "Subject: 70 percent off your life insurance get a free quote instantly .\nquestion :\nare you paying too much for life insurance ?\nmost\nlikely the answer is yes !\nhere ' s why . fact . . . fierce , take no prisoner , insurance industry\nprice wars have driven down\npremiums\n- 30 - 40 - 50 - even 70 % from where they were just a short time ago !\nthat ' s why your insurance company doesn ' t want you to read this . . .\nthey will continue to take your money at the price they are already charging\nyou , while offering the new lower rates ( up to 50 % , even 70 % lower ) to\ntheir new buyers only .\nbut , don ' t take our word for it . . . click\nhereand request a free online quote . be prepared for a\nreal shock when you see just how inexpensively you can buy term life insurance\nfor today !\nremoval\ninstructions : this message is sent in compliance with the proposed bill\nsection 301 , paragraph ( a ) ( 2 ) ( c ) of s . 1618 . we obtain our list data from\na variety of online sources , including opt - in lists . this email is sent\nby a direct email marketing firm on our behalf , and if you would rather\nnot receive any further information from us , please click\nhere . in this way , you can instantly opt - out from the list\nyour email address was obtained from , whether this was an opt - in\nor otherwise . please accept our apologies if this message has reached you\nin error . please allow 5 - 10 business days for your email address to be removed\nfrom all lists in our control . meanwhile , simply delete any duplicate emails\nthat you may receive and rest assured that your request to be taken off\nthis list will be honored . if you have previously requested to be taken\noff this list and are still receiving this message , you may call us at 1 - ( 888 )\n817 - 9902 , or write to us at : abuse control center , 7657 winnetka ave . , canoga\npark , ca 91306\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.144+0000", "entityId": 5241, "properties": {"text": "Subject: info you requested kcc\nthank you for your interest !\njudgment coursesoffers an extensive training\ncourse in \" how to collect moneyjudgments \"\nif you are like many people , you are not even sure what a\nmoney judgment is and why processing money judgments\ncan earn you very substantial income .\nif you ever sue a company or a person and you win then you\nwill have a money judgment against them .\nyou are happy you won but you will soon find out the\nshocking fact : its now up to you to collect on the\njudgment . the court does not require the loser to pay you .\nthe court will not even help you . you must trace the loser\ndown , find their assets , their employment , bank accounts ,\nreal estate , stocks and bonds , etc .\nvery few people know how to find these assets or what to do\nwhen they are found . the result is that millions of\njudgments are just sitting in files and being forgotten .\nin 79 % of the cases the winner of a judgment never sees a\ndime .\nthe non - payment of judicial debt has grown to epidemic\nproportions . right now in the united states there is\nbetween 200 and 300 billion dollars of uncollectedmoney\njudgment debt . for every judgment that is paid , 5 more\njudgments take its place .\nwe identified this massive market 8 years ago and have\nactively pursued judicial judgments since . we invented this\nbusiness . we have perfected it into a well proven and solid\nprofession in which only a select few will be trained in the\ntechniques necessary to succeed .\nwith our first hand experience we have built a course which\nteaches you how to start your business in this new unknown\nand exciting field of processing money judgments .\nby following the steps laid out in our course and with\nreasonable effort you can become very successful in the\nprocessing of money judgments .\nthe income potential is substantial in this profession . we\nhave associates who have taken our course and are now\nworking full time making $ 96 , 000 . 00 to over $ 200 , 000 . 00 per\nyear . part time associates are earning between $ 24 , 000 . 00\nand $ 100 , 000 . 00 per year . some choose to operateout of\ntheir home and work by themselves . others build a sizable\norganization of 15 to 25 people in attractive business\noffices .\ntoday our company and our associates have over 126\nmillion dollars in money judgments that we are currently\nprocessing . of this 126 million , 25 million is in the form\nof joint ventures between our firm and our associates .\njoint ventures are where we make our money . we only break\neven when our course is purchased . we make a 12 % margin on\nthe reports we supply to our associates . our reporting\ncapability is so extensive that government agencies , police\nofficers , attorneys , credit agencies etc . , all come to us\nfor reports .\nmany of our associates already have real estate liens in\nforce of between 5 million to over 15 million dollars .\nlegally this means that when the properties are sold or\nrefinanced our associate must be paid off . the norm is 10 %\ninterest compounded annually on unpaid money judgments .\nannual interest on 5 million at 10 % translates to\n$ 500 , 000 . 00 annually in interest income , not counting the\npayment of the principal .\nour associates earn half of this amount or $ 250 , 000 . 00 per\nyear . this is just for interest , not counting principle\nand not counting the compounding of the interest which can\nadd substantial additional income . typically companies are\nsold for 10 times earnings . just based on simple interest\nan associate with 5 million in real estate liens could sell\ntheir business for approximately 2 . 5 million dollars .\n92 % of all of our associates work out of their home ; 43 %\nare women and 36 % are part time .\none of the benefits of working in this field is that you are\nnot under any kind of time frame . if you decide to take off\nfor a month on vacation then go . the judgments you are\nworking on will be there when you return . the judgments\nare still in force , they do not disappear .\nthe way we train you is non - confrontational . you use your\ncomputer and telephone to do most of the processing . you\nnever confront the debtor . the debtor doesn ' t know who you\nare . you are not a collection agency .\nsimply stated the steps to successful money processing\nare as follows :\nmail our recommended letter to companies and individuals\nwith money judgments . ( we train you how to find out who\nto write to )\n8 % to 11 % of the firms and people you write will call you\nand ask for your help . they call you , you don ' t call them\nunless you want to .\nyou send them an agreement ( supplied in the course ) to\nsign which splits every dollar you collect 50 % to you and\n50 % to them . this applies no matter if the judgment is for\n$ 2 , 000 . 00 or $ 2 , 000 , 000 . 00 .\nyou then go on - line to our computers to find the debtor\nand their assets . we offer over 120 powerful reports to\nassist you . they range from credit reports from all three\ncredit bureaus , to bank account locates , employment\nlocates , skip traces and locating stocks and bonds , etc .\nthe prices of our reports are very low . typically 1 / 2 to\n1 / 3 of what other firms charge . for example we charge\n$ 6 . 00 for an individuals credit report when some other\ncompanies charge $ 25 . 00 .\nonce you find the debtor and their assets you file\ngarnishments and liens on the assets you have located .\n( standard fill in the blanks forms are included in the\ncourse )\nwhen you receive the assets you keep 50 % and send 50 % to\nthe original judgment holder .\nonce the judgment is fully paid you mail a satisfaction of\njudgment to the court . ( included in the course )\nquote ' s from several of our students :\nthomas in area code 516 writes us : \" i just wanted to drop\nyou a short note thanking you for your excellent course . my\nfirst week , part time , will net me 3 , 700 . 00 dollars . your\nprofessionalism in both the manual and your support .\nyou have the video opened doors for me in the future .\nthere ' s no stopping me now . recently thomas states\nhe has over $ 8 , 500 , 000 worth of judgments he is working on \"\nafter only having this course for four months , larry s . in\narea code 314 stated to us : \" i am now making $ 2 , 000 . 00 per\nweek and expect this to grow to twice this amountwithin the\nnext year . i am having a ball . i have over $ 250 , 000 in\njudgments i am collecting on now \"\nafter having our course for 7 months larry s . in 314 stated\n\" i am now making $ 12 , 000 . 00 per month and have approximately\n$ 500 , 000 . 00 in judgments i am collecting on . looks like i\nwill have to hire someone to help out \"\nmarshal in area code 407 states to us \" i feel bad , you only\ncharged me $ 259 . 00 for this course and it is a goldmine . i\nhave added 3 full time people to help me after only having\nyour course for 5 months \"\n> from the above information and actual results you can see\nwhy we can state the following :\nwith our course you can own your own successful business .\na business which earns you substantial income now and one\nwhich could be sold in 3 - 5 years , paying you enough to\nretire on and travel the world . a business which is\nextremely interesting to be in . a business in which every\nday is new and exciting .\nnone of your days will be hum - drum . your brain is\nchallenged . a business , which protects you from corporate\ndownsizing . a business which you can start part time from\nyour home and later , if you so desire , you can work in full\ntime . a business , which is your ticket to freedom from\nothers telling you what to do . a business , which lets you\ncontrol your own destiny . our training has made this happen\nfor many others already . make it happen for you !\nif the above sounds interesting to you then its time for you\nto talk to a real live human being , no cost or obligation\non your part .\nplease call us at 1 - 281 - 500 - 4018 .\nwe have service support staff available to you from 8 : 00 am to\n10 : 00 pm ( central time ) 7 days a week . if you callthis number\nyou can talk to one of our experienced customer support personnel .\nthey can answer any questions you may have - with no obligation .\nsometimes we run special pricing on our courses and combinations\nof courses . when you call our customer support line they can let\nyou know of any specials we may be running . if you like what you\nread and hear about our courses , then the customer support person\ncan work with you to place your order . we are very low key . we\nmerely give you the facts and you can then decide if you want to\nwork with us or not .\nthank you for your time and interest .\n+ + + + +\nthis ad is produced and sent out by :\nuas\nto be excluded from our mailing list please email us at eds @ saiyan . com with \" exclude \" in the sub - line .\nor write us at : adminscript - update , p o b 1 2 0 0 , o r a n g e s t a d , a r u b a\n+ + + + + +\n5 ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' to 48 5 - 28 c 30 p\n- sspltm - 30\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.150+0000", "entityId": 5242, "properties": {"text": "Subject: you are approved ! ! ! ( 158545 )\nour loan packages have\nnever been more attractive !\nnow is the time to refinance your\nhome or get a second mortgage to consolidate\nall of your high interestcredit card debt . get all the smart cash you ' ll need !\ncash out your equity while rates\nare low !\nall usa homeowners easily qualify !\ndamaged\ncredit is never a problem !\nwe work with\nnation - wide lenders that are offering great deals\nand will provide you with the best service on the internet !\nour service is 100 % free !\nclick here for more details and\nto receive a no obligation quotation today !\nwe strongly oppose the\nuse of spam email and do not want anyone who does not wish to receive\nourmailings to receive them . please click here to be deleted from further\ncommunication\nclick here to unsubscribe from future promotions .\n77259", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.155+0000", "entityId": 5243, "properties": {"text": "Subject: more than 100 , 000 u . s . jobs available\nare you looking for a job ? are you planning for a career change ? does your current job pay you little than the salary you deserved ? do you want information about who is currently hiring and their rates ? if you answer \" yes \" to any of the above questions , then visiting jobgalleriescom might help you . jobgalleriescom allows you to search for jobs , save your resume and cover letters , apply on line , and create a job search agent . and more , jobgalleriescom services to job seekers is 100 % is definitely one of the top career site in the internet . visit jobgalleriescom and access more than 100 , 000 u . s . jobs . for employer and recruiter : avail 75 % discount at jobgalleries . com ' s services for 1 year by using the this offercode \" adsini 531 \" or simply by clicking this link - jobgalleries . comto unsubscribe click here . or simply reply to this e - mail and type \" remove \" in the subject line", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.160+0000", "entityId": 5244, "properties": {"text": "Subject: turn your paypal account into a non - stop cash machine ! ! ( not a chain letter )\ni am sending you this message because we have communicated in the past about business opportunities . i hope you will enjoy this one as much as i do .\nturn your paypal account into a non - stop cash machine !\nre - occurring 100 % commissions paid directly to your paypal account !\n4 out of 10 visitors join instantly !\nshouldn ' t you be next ?\ndid i mention that it ' s free for 15 days ?\nsimply go to : http : / / www . paypal - profits . com / a / turnkeyim /\nbest wishes ,\ntony & donna scurlock\nturnkeyim @ hotmail . com\nthe best home - based business on the planet ! !\nwe build your downline - - 1000 to 3500 members added per month ! !\nfree to join ! !\nminimum monthly income ! !\nget all the details at :\nhttp : / / www . lifelong - income . com\nthis email message is sent in compliance with the the 106 th congress e - mail user protection act ( h . r . 1910 ) and the unsolicited commercial electronic mail act of 2000 ( h . r . 3113 ) . though our intention is not to communicate with you again if we receive no response from you , we do provide a valid vehicle for you to be removed from our email list . to be removed from our mailing list , simple reply to this message with remove in the subject line .\nplease keep in mind that complaints to our email provider and service provider , could make honoring remove requests impossible and you will be in violation of the above legislation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.165+0000", "entityId": 5245, "properties": {"text": "Subject: improved health jbtfcz\nto\nfind out more , click on the link below\nmore info\nincrease your sex\ndrive ! ! !\ngreat sexin a bottle !\nknock\nyour sex drive into high gear !\nmen easily achieve naturally triggered erections , like they are 18 all over again\nwomen will pump with naturally flowing juices from the start and will achieve the most intense orgasms of their lives !\njumpstart\nsexual desire in both men women , to the point that you never thought possible !\n.\nhas your sex life become dull , mundane , or even\nnon - existent ?\nare you having trouble getting or \" keeping \" an erection ?\ndo you think you have lost the desire ?\nor does your desire seem more like a chore ?\nclick\nhere for\nmore info\ngreat sex in a bottle has been called the\nall natural alternative to viagra .\nit increases sex drive like you never thought possible , creating natural emotional responses ! this\nfact is unlike viagra , as viagra is designed to chemically induce blood flow to the penis . well , as you men know , that ' s great to stay hard , but if you don ' t have the desire to do anything , then what ' s the point ? ! ! !\nand all\nfor as low as $ 1 per pill , as opposed to viagra at $ 10\nper pill !\nxerox?ffffae\nbrother?ffffae\nand more ! compatible with\nall inkjet printers plain paper inkjet faxes\nthis message is being sent to you in compliance with the proposed\nfederal legislation for commercial e - mail ( s . 1618 - section 301 ) .\npursuant to section 301 , paragraph ( a ) ( 2 ) ( c ) of s . 1618 , further\ntransmissions to you by the sender of this e - mail may be stopped at no\ncost to you by submitting a request to remove\nfurther , this message cannot be considered spam as long as we\ninclude sender contact information . you may contact us at ( 801 )\n406 - 0109 to be removed from future mailings .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.170+0000", "entityId": 5246, "properties": {"text": "Subject: you can gain from lowest interest rates in 30 years\ncertain chances only come around every few\ndecades or so . this is one . why you ask ?\nbecause home loan rates are headed up .\nhave you locked in the lowest rate , in almost\nthirty years , for your present home loan ?\nrates haven ' t been this low in a long time . they\nmay well never be this low again . this is your\nchance to secure a better future . you could\nliterally save enough money to buy that new car\nyou ' ve been wanting or to take that special\nvacation . why wouldn ' t you jump at this chance ?\nthere ' s no need for you to continue to pay more\nthan is necessary or to continue not having the\nthings your family wants and needs .\nwe ' re a nationwide mortgage lender . we ' re not a\nbroker . and we can guarantee you the best rate\nand the best deal possible for you . but only\nif you take action today .\nthere is no fee or charge of any kind to see if\nwe can help you get more of the things you want ,\ndesire and need from your current pay . you can\neasily determine if we can help you in just a few\nshort minutes . we only provide information in\nterms so simple that anyone can understand them .\nyou won ' t need to be a lawyer to see the savings ,\nthis we promise .\nwe offer both first and second home loans and we\nwill be happy to show you why your current loan\nis the best for you . or why you should replace\nit . and once again , there ' s no risk for you . none\nat all .\ntake a couple of minutes and use the link below\nthat works for you . for a couple of minutes of\nyour time , we can show you how to get more for\nyourself and your loved ones . don ' t lose this\nchance . please take action now .\nclick _ here\nsincerely ,\njames w . minick\nmortbanc , inc .\nyour favorite stores , helpful shopping tools and great gift ideas . experience the convenience of buying online with shop @ netscape ! http : / / shopnow . netscape . com /\nget your own free , personal netscape mail account today at http : / / webmail . netscape . com /", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.175+0000", "entityId": 5247, "properties": {"text": "Subject: re : change of plans\nhello you two ,\ni am so sorry catherine for not writing recently . i have just been vv busybeing a working mother and sometimes it all gets too much you know ! ! i cannot wait to see you both although we may meet at the airport on the 16 / 6 as that ' s the day we ' re going to france but i will see you both at bronagh ' s house for her 30 th which we ' re going to on the way back from the airport . i am so excited about seeing you ! ! ! liitle eva ( aine ) was born on tuesday\nshe is absolutely incredible . poor bronagh is 11 dsays over ! !\nsounds like you ' ve been having an amazing time . hope you won ' t be too depressed to be back ! !\nlots of love\ndeirdre\n\" justin mason \" wrote :\n<\n< just a quick note -\n<\n< we ' ve decided to go up to annapurna base camp instead of\n< the jomsom trek - it ' s a bit more impressive visually\n< ( if a little soggier ) . so as of tomorrow morning , ourselves\n< and our guide bhadra will be leaping like gazelles up 4000 - odd\n< metres into the himalayas . . . we ' ll be sure to take a few\n< pics on the way . sorry for the bonus mail , but we have to tell\n< someone because we forgot to tell the irish embassy ; )\n<\n< next update in 10 - 14 days , ish ,\n<\n< - - j .\n<\n<\n<\n< _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n< travelogue mailing list\n< travelogue @ jmason . org\n< http : / / jmason . org / mailman / listinfo / travelogue\n<", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.179+0000", "entityId": 5248, "properties": {"text": "Subject: low cost high rated insurance . why pay more ?\nsave\nup to 70 % on your life insurance !\nget\nfree\nlife insurance quotes from\nthe very best\ncompanies at the\nlowest rates .\nyou\ncan ' t predict the future , but you can always prepare for it .\ncompare\nrates from top insurance companies around the country\nin our life and times , it ' s important to plan for your\nfamily ' s future , while being comfortable financially . choose\nthe right life insurance policy today .\ninsurance\ncompanies compete for your insurance .\nit ' s\nfast , easy , and best of all . . . free .\nclick\nhere\nfor your free quote !\nif you are in receipt of this email in error and / or wish to be\nremoved from our list , please click here\nand type remove . if you reside in any state which prohibits e - mail solicitations\nfor insurance , please disregard this email .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.184+0000", "entityId": 5249, "properties": {"text": "Subject: freedom - $ 1 , 021 , 320 . 00 per year .\nhi ,\ni would like you to enjoy the same success\nthat i have had , since joining this program for free .\ncost you nothing to join !\npre - built downline : a full ( 2 wide x 10 deep ) profit center will have\na total of 2 , 046 people and a payout of up to $ 1 , 021 , 320 . 00 per year .\nthe fastest way for us to help you build a huge downline is to give away\nfree memberships to highly motivated prospects , like you ,\nand help build a downline under them .\nthis is the fastest and most cost - effective way\nto build a productive downline !\nwe are currently recruiting over 1 , 000 new members\nper week with our lightning fast recruiting system ! ! !\ngo to :\nhttp : / / www . ircinconline . com / isb . htm\ncode number 000 - 01 - 3118\nps . . . after i received my info pack , the company already\nhad placed 30 people under me\ndisclaimer\nto remove yourself from my data base please hit reply and insert\nremove in the subject box .\n7211 iahr 5 - 883 pbxd 6893 zunf 7 - 464 yxfl 31", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.189+0000", "entityId": 5250, "properties": {"text": "Subject: best mortgage rate vjd\nwith regards to\nwant to refinance ?\nfill out this quick form and immediately have mortgage\ncompanies compete for you business .\nyou will be offered the , absolute , best refinance rates\navailable !\nyour credit doesn ' t matter , don ' t even worry about past\ncredit problems , we can refinance anyone !\nlet us put our expertise to work for you !\nhttp : / / 66 . 230 . 217 . 86\nor site 2\nhttp : / / agileconcepts . com / 74205 /\nerase\nhttp : / / 66 . 230 . 217 . 86 / optout . htm", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.194+0000", "entityId": 5251, "properties": {"text": "Subject: refinance or mortgagefkzqeljhyno\nwhat a loan from lenderscan do for you : rates have never been lower ! ! lowest rates - best possible termsdebt this . . . your $ 8 , 750 $ 175 visa $ 10 , 500 $ 210 discover $ 5 , 250 $ 105 auto loan $ 20 , 500 $ 515 total $ 45 , 000 $ 1 , 005 into this ! ! ! $ 45 , 000 $ 390 . 06 annual savings : $ 7 , 379 . 005 - year savings : $ 36 , 896 . 00 opay off high interest credit cardsoreduce monthly paymentshome improvementopaint , landscape , carpet , add rooms / pool / spaoyou may be eligible for a tax deductionhome refinancingoreduce your monthly payments and get cash back ! oget up to 125 % of your homes value ( ratios vary by\nstate ) . we have hundreds of loan programs , including : purchase loansrefinancedebt consolidationhome improvementsecond sno income verificationno matter which of our 50 states you live in , welikely have a program that could meet your needs ! please\nclick hereone of our experienced loan officers will contact you\nfor more details concerning your needs . want to be purged ? just go hereand we will promptly extract you . copyright dti inc .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.198+0000", "entityId": 5252, "properties": {"text": "Subject: secretly record all internet activity on any computer . . . c\nfind out who they are chatting / e - mailing with all those hours !\nis your spouse cheating online ?\nare your kids talking to dangerous people on instant messenger ?\nfind out now ! - with big brother instant software download .\nclick on this link now to see actual screenshots and to order !\nto be excluded from future contacts please visit :\nhttp : / / 213 . 139 . 76 . 69 / php / remove . php\njthomason", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.206+0000", "entityId": 5253, "properties": {"text": "Subject: free ltci policy comparison software\nlong term care insurance worksite marketing system\ntake advantage of the most current information available concerning\nthe group ltci market . developed after months of exhaustive research\nand agent interviews , the worksite marketing system is the resource\nfor successful group enrollment .\nincluded with your order :\nagent manual - all the how - to info including an implementation schedule\nbenefit manager flip chart\npresentation / sales script which promotes long term care insurance as productivity\ninsurance\nbenefit manager sales brochures\nbenefit manager direct mail letters\nemployer announcement letter\nseven ( 7 ) newsletter / e - mail articles to promote employee education prior to meetings\n50 each of five ( 5 ) payroll stuffers\n50 each of three ( 3 ) employee seminar posters\nemployee education presentation on cd - rom\n150 employee education brochures which promote long term care insurance as\nlifestyle insurance\nthe secret of a successful group enrollment instructional audiotape\na handsome gold embossed binder with storage pockets\nthis comprehensive ltci policy review compares over 40 major companies in 17 benefit\nand ratings / asset categories and includes a premium comparison for\na 60 year old couple .\nover 210 policies are covered in this semi - annual publication . this is the oldest\nltc policy comparison in the nation and is a valuable tool for any\nagent selling ltc insurance today .\n( older generation policies are kept after new policies are introduced because agents\nencounter the older policies in the field . )\nthe cd - rom version allows you to compare up to three companies at a time in any of\nthe 17 categories . you ' ll also receive a spreadsheet version to\ntake with you all the time .\nwe don ' t want anybody to receive our mailings who does not wish to receive\nthem . this is professional communication sent to insurance\nprofessionals . to be removed from this mailing list , do not reply\nto this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.218+0000", "entityId": 5254, "properties": {"text": "Subject: ( no subject )\ncopy any dvd movie using your cd\nburner now !\ncopy dvd now makes it\npossible to copy\ndvd on cd - r using your computer ' s\ncd burner .\nyou may now copy dvd movie with just one click .\nwe provide latest and easiest method that eliminates the\nuse\nof conventional dvd copying equipments in dvd burning\nprocess .\nthis method uses advanced dvd rippers .\ncopy dvd movies to cd - r ,\nencode dvd\nto vcd , svcd , xvcd or xsvcd and even create your own\nchapters .\nall you need is dvd\nrom , cd burner and blank\ncd ' s .\nwhy spend thousands of\ndollars on conventional\ndvd copying equipment when you may burn and copy dvd ' s right from\nyour computer ' s\ncd burner .\nyou\ncan copy any dvd to cd - you get manual and software\nboth\ncopy your dvd ( pal or ntsc ) to cd using your cd burner\nmake backup copy of dvd to cd - r or cd - rw\nplay movie from computer , computer to tv or on\nany standard dvd player\nmake backup of your entire dvd collection\nmake vcd , svcd , xvcd or xsvcd in one click\nonly .\nyou may even fit entire dvd on one cd !\ncreate chapters or time intervals on vcd or svcd\nno need of having 6 - 8 gb free hard disk space !\nwhat you get in the\npackage\nour interactive manual will walk you through the entire\nprocess of\ncopying dvd as vcd , svcd , xvcd or xsvcd .\nyou will be ripping dvd ' s and burning them to cd ' s like a\npro once\nyou have gone through this easy to follow manual . we have\nalso included\nscreenshots for additional clarity to use .\ninstant downloadable access to the software . stop waiting\nfor the product to arrive\nin mail .\neverything is provided to help you start copying your dvd ' s\nright\naway ! all you need to have is dvd rom , cd burner and few\nblank cd ' s !\nthat ' s it . no dvd burner or dvd copying equipment is\nrequired !\nand that ' s not all ! if you buy it now you get free\nupdates\nand upgrades for life ! plus other bonuses .\nyou get everything needed\nto right\naway start\ncopying and burning your dvd to cd .\ninstant download !\nwin 95 / 98 / me / nt / 2000 / xp compliant\nlimited time offer ! ! ! only\n$ 39 . 95\nto order the dvd burner right now for the super low price of only\n$ 39 . 95\nwith a visa or mastercard ,\njust fill out the order form below .\nfree\nbonus # 1\nbuy\ntoday and you get free updates for life !\nif you buy our package now , we will provide you upgrades\nand updates\nto all future versions of copydvd now absolutely free ! !\nthis offer alone will save you tons of money for future\nupgrades and\nkeep you updated with the technology .\na\nreal win win situation ! !\nfree\nbonus # 2\nintroducing a new technology that\npc magazine calls \" revolutionary \" and the new york times\ncalls \" ingenious . \"\naccess\nand control your pc from anywhere in the world\nwith almost any operating\nsystem . begin working on your host computer as if you were\nsitting\nin front of it .\nthis\nproduct is the cnet editors ' choice pick for remote\naccess , and they say\n\" you ' d be nuts not to sign up \"\nyou get free 30 day trial when you buy our package of\ncopydvdnow today .\nmore info\njoin our mailing list to be first to know about fresh\nquality\nprograms and utilities . our list includes selected , tested and\nquality freeware , shareware and other software only .\n* legal disclaimer *\nit is illegal to make copies of copyright material for the purpose\nof\nselling it to third party . law provides you to make one back up\ncopy for\npersonal use . we do not encourage or promote piracy . this program\nis not\nmeant for those who intend to break copy right law and indulge in\nillegal\nactivities . this program serves merely as a guide to help end user\nto\nbackup his personal dvd ' s . all applications suggested in this\npackage are\nnot sold as a part of this kit but are freeware and can be\ndownloaded for\nfree . by purchasing this package you agree to this disclaimer and\nalso\nagree to use it in most ethical manner . you agree to waive all\nliabilities\nassociated with this program to the provider and associates .\norder today . . satisfaction is guaranteed or your money back !\nonly\n$ 39 . 95 !\norder\nformipping\nfirst name :\nlast name :\nstreet address :\ncity , state , zip :\n,\ncompany :\ne - mail :\nphone :\ncomments :\ncredit card type : ( vvvv wwww\nxxxx yyyy zzzz )\nvisamastercard\ncard number :\nexpiration date :\n3121 wkca 6 - 841 pmnzll 6", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.223+0000", "entityId": 5255, "properties": {"text": "Subject: new extensions now only $ 14 . 95\npublic announcement :\nthe new domain names are finally available to the general public at discount prices . now you can register one of the exciting new . biz or . info domain names , as well as the original . com and . net names for just $ 14 . 95 . these brand new domain extensions were recently approved by icann and have the same rights as the original . com and . net domain names . the biggest benefit is of - course that the . biz and . info domain names are currently more available . i . e . it will be much easier to register an attractive and easy - to - remember domain name for the same price . visit : http : / / www . affordable - domains . com today for more info .\nregister your domain name today for just $ 14 . 95 at : http : / / www . affordable - domains . com . registration fees include full access to an easy - to - use control panel to manage your domain name in the future .\nsincerely ,\ndomain administrator\naffordable domains\nto remove your email address from further promotional mailings from this company , click here :\n07\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.228+0000", "entityId": 5256, "properties": {"text": "Subject: secretly record all internet activity on any computer . . . bfl\nfind out who they are chatting / e - mailing with all those hours !\nis your spouse cheating online ?\nare your kids talking to dangerous people on instant messenger ?\nfind out now ! - with big brother instant software download .\nclick on this link now to see actual screenshots and to order !\nto be excluded from future contacts please visit :\nhttp : / / 213 . 139 . 76 . 69 / php / remove . php\nblee", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.232+0000", "entityId": 5257, "properties": {"text": "Subject: quelqu ' un t ' aime en secret\nquelqu ' un\nt ' aime en secret\net nous a charg? de te pr?venir ,\ndevine\nqui a flash? sur toi\nen appelant le 08 99 701 123 *\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n* 1 . 12 ? / min\npour\nne plus recevoir de message , rpondez avec l ' objet stop .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.237+0000", "entityId": 5258, "properties": {"text": "Subject: don ' t get ripped off ! things to watch out for :\ndon ' t get ripped off ! gimmicks to look out for :\nvacuum pumps : expensive rip - off\nmost men aren ' t going to wait a whole year to gain 1 \" ! ! ! !\nor do it the right way , instead they think the more they pump the faster the results . wrong ! a vacuum pump will injure your penis before it will enlarge your penis .\nlengthen your manhood the fast , natural way ! check out our new , state of the art\nsystem\nweight hanging : dangerous rip - off\nonly lengthens the penis , does not thicken it , while lessening sensation during intercourse .\nand to top it off , it creates unsightly stretching marks , and could cause permanent damage\nwhich could easily require partial amputation of the penis !\nobtain a longer , thicker penis without the risks and the pain !\nchoose the latest scientific breakthroughs , over barbaric tribal techniques\nnow !\nweight hanging : dangerous rip - off\npenis enlargement surgery is a very dreaded , painful , and dangerous operation\nthat has a quite high nonsuccess rate according to patient opinion .\nhere are just some results .\ndeformed looking penis ( lumps & pits ) , impotence , loss of sex drive ,\npainful erections , if any at all ! !\nsave your hard earned dollars ! spending more is not always the best solution . obtain a healthy looking , longer penis without scary surgery , and any chance of impotence ! learn more about our amazing exercise techniques !\nspecial offer !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.241+0000", "entityId": 5259, "properties": {"text": "Subject: earn 20 times your peers\nasset marketing systems\nis the insurance industry ' s fastest\ngrowing field marketing organization over the past four years .\nthis year we ' ll place $ 1 . 5 billion in premium , selling high - quality ,\nhigh - commission fixed annuities to america ' s 35 million senior\ncitizens .\nwhy have so many agents chosen to do business with asset marketing\nsystems ?\nasset marketing is the only fmo in america that\ngenerates qualified leads , helps set appointments , structures\nproduct positioning , increases closing ratios and handles all the\npaperwork . . . at absolutely no cost to the agent !\nwe are also proud to report\nour agents routinely earn 20 times the industry average . assuming\nyou qualify , we ' ll pick up the entire tab for you to visit our corporate\noffices in sunny san diego .\nready to join the best ? call susan at\nor e - mail jennifer at jennifer @ . com\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe\ndo not want anyone to receive our mailings who does not wish to . this\nis professional communication sent to insurance professionals . to\nbe removed from this mailing list , do not reply to this message . instead ,\ngo here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.246+0000", "entityId": 5260, "properties": {"text": "Subject: highest concentration of pure human pheromone ovdkspcr\nx = = x * x = = xx = = x * x = = xx = = x * x = = xx = = x * x = = xx = = x * x = = xx = = x * x = = xabsolutely awesome ! ! instantly s e x u a l l y attract with nature ' s secret weapon . . . \" p h e r o m o n e s \"\n\" i n v i s i b l e a n d u n d e t e c t a b l e \" , when unknowingly inhaled , pheromone concentrate unblocks all restraints and releases the raw animal s e x drive !\nthis is the strongest concentration of human pheromones , allowed by law , in an essential oil base .\navailable in formulas for both men and women .\nto lea + rn more : click here to attract\nto be o m i t t e d from our mailing list please email us at joshua 63 @ email . is with \" o m i t \" in the sub - line .\n* |\nto 48 6 - 04 c 20 p\n{ % rand }\n> > sspltm\n- human pheromones concentrate -\n( s e x u a l l y attract women s e x u a l l y attract men attract men attract women and men instantly attract women and men become very desirable - - fast\ngain the sexual advantage powerful , very powerful become very desirable )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.250+0000", "entityId": 5261, "properties": {"text": "Subject: you are approved for your loan ! ! ! approval no . ( 1848025 )\nrefinancing\nyour mortgage may be easier then you think !\nnow that rates are down ,\nthis may be a good time to start saving money !\nclick here for all details\nfree service for usa homeowners !\nwhether\nyour credit rating is a + + or you are credit challenged ,\nwe have many loan\nprograms through hundreds of aggressive lenders wanting to help you .\nsecond mortgages\nwe can help you get up to 125 % of your\nhomes value ( ratios vary by state ) .\nrefinancing\nreduce your monthly payments and get\nsome cash back .\ndebt\nconsolidation\ncombine all your bills into one low\npayment ,\nand save money every month .\nwe will get you the\nbest deal possible !\nlower rates and easier terms !\nclick\nhere for all details and a free loan quotation\ntoday !\nwe strongly\noppose the use of spam email and do not want anyone who does not wish to receive\nourmailings to receive them . we strongly oppose the use of spam email and do not want anyone who does not wish to receive our mailings to receive\nthem . click\nhere to me taken off of our list .\n80686", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.259+0000", "entityId": 5262, "properties": {"text": "Subject: free step - by - step seminar presentation\naffluent senior lead program\nmulti - media annuity selling system cd\nstep - by - step seminar presentation\nexclusive prospect / client\nmarketing and re - marketing\nsystem\n* must be contracted through ppmg with our top annuity companies .\nplus a very special offer from ppmg :\ntrip includes deluxe outside cabin for producer and guest\nand airfare from the nearest home city gateway ! * *\n* * as determined by ppmg travel coordinator .\nports of call :\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe don ' t want\nanyone to receive our mailings who does not wish to receive them .\nthis is a professional communication sent to insurance professionals .\nto be removed from this mailing list , do not reply to this\nmessage . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.264+0000", "entityId": 5263, "properties": {"text": "Subject: re : education opportunity we spoke about gf\n.\nu n i v e r s i t y . d i p l o m a s .\ndo\nyou want for a prosperous future , increased money earning power ,\nand the respect of all ?\nwe\ncan assist with diplomas from prestigious non - accredited universities\nbased on your present knowledge and life experience .\nno required tests , classes , books , or\ninterviews .\nbachelors ,\nmasters , mba , and doctorate ( phd ) diplomas available in the field\nof your choice - that ' s right , you can become a doctor , lawyer or accountant and receive\nall the benefits and admiration that comes with it !\nno\none is turned down !\nconfidentiality\nassured - change your life today !\neither click here or\nyou can call us 24 hours a day , 7 days a week ! ( including\nsundays and holidays ) :\n1 - 310 - 388 - 6087\ncontact\nus now to receive your diploma within days , and start improving\nyour life !\ndid you receive an email advertisement in error ? our goal is to only target individuals who would like to take advantage of our offers . if you ' d like to be removed from our mailing list , please click on the link below . you will be removed immediately and automatically from all of our future mailings .\nwe protect all email addresses from other third parties . thank you .\nplease remove me .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.269+0000", "entityId": 5264, "properties": {"text": "Subject: feeling fat ?\nif anyone has called you names because you ' re overweight ,\nor you are looking to make a positive change in your life ,\nthen you can do something now !\nclick here to find out how\nhttp : / / 4 xenical . com / loseweight . cfm\nwe hope you enjoyed receiving this email , but if you no longer\nwish to receive our emails click on the link below and you will\nnot hear from us again - we guarantee it !\nhttp : / / 4 xenical . com / remove . cfm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.273+0000", "entityId": 5265, "properties": {"text": "Subject: there is a genuine log home in your future . . .\nthere is a genuine log home in your future !\nwestern red cedar\nlog siding\nbasic kits\nbuilder kits\nprecut kits\ncustom designs\ncustom kits\nall types of log styles\nwe feel you will find our log home superior to any others on the market and our price structure competitive with other , less desirable housing .\nremember that a home is a major investment and the focal point of family use . you deserve the best home possible for the amount of money you spend .\nclick on the link below for a catalog on genuine log homes & accessories .\nwww . genuineloghome . com\nsales rep code : bsad 24\nto be removed from our mailing please send an email to : higher _ learningl 234 @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.278+0000", "entityId": 5266, "properties": {"text": "Subject: get the best price on your next car !\nexclusive\noffer from 24 x 7 emessaging\nsearch for a pre - owned vehicle\nbuy a used car online\nyou ' ve\nreceived this message because you have signed up to receive\noffers from one of our carefully selected marketing\npartners .\n24 x 7 emessaging\nis the internet ' s best source of exciting new offers and\ndiscounts . if you no longer wish to receive these offers ,\nplease follow the unsubscribe instructions at the bottom .\nto\nunsubscribe from our mailing list , please\nclick\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.283+0000", "entityId": 5267, "properties": {"text": "Subject: the credit law is on your side jm ! get perfect credit now !\ni will show you how you can quickly and easily improve your credit to a perfect rating !\nclick here now for full free details !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.289+0000", "entityId": 5268, "properties": {"text": "Subject: re : your financial security ! high priority !\nwhen economy goes down , we go up !\n$ 3000 commission per sale for you ! !\nwith the power of f i n a n c i n g !\nthis is for serious people only\nmake huge $ 3000 commissions on every sale !\nfor only $ 300 down and $ 149 per month !\npart time earnings : $ 6000 per month\nfull time earnings : $ 15 , 000 to 25 , 000 per month\neasy , fast and fun ! !\nstrictly not mlm ! !\nhere you earn money immediately !\nif we have to prove it to you , we can and we will .\nmy personal bank statement will speak for it .\nnew ! assured f i n a n c i n g available ! !\nwhere else do you make $ 3000 per sale ? ?\nour lease program lets you start right away - it ' s fast and easy !\ndo not miss out , as this is a one time offer !\nfree training included !\nprogram available in usa and canada only !\nrequest more free info now !\nsend an email to : paulbennert @ excite . com\nwith \" send info \"\nin the subject line\n( do not click reply ! )\nto remove , please send an email with remove\nin the subject line to : plutoristal @ excite . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.300+0000", "entityId": 5269, "properties": {"text": "Subject: the future of continuing education\nselect your state then press \" go \" to view ce courses available\n( aol users\nclick here )\nal\nak\naz\nar\nca\nco\nct\nde\ndc\nfl\nga\nhi\nid\nil\nin\nia\nks\nky\nla\nme\nmd\nma\nmi\nmn\nms\nmo\nmt\nne\nnv\nnh\nnj\nnm\nny\nnc\nnd\noh\nok\nor\npa\nri\nsc\nsd\ntn\ntx\nut\nvt\nva\nwa\nwv\nwi\nwy\nwe don ' t want anyone to receive our mailings who does not\nwish to receive them . this is a professional communication\nsent to insurance professionals . to be removed from this mailing\nlist , do not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.309+0000", "entityId": 5270, "properties": {"text": "Subject: wait too long and . . . 1147\nsecretly\nattract women or men\nadd some spice to your life\nsecretlyattract\nwomen or men\ndelete\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.315+0000", "entityId": 5271, "properties": {"text": "Subject: future goals\nurgent noticepending merger to increase revenue 236 % now is the time to invest in gwihgwih is rapidly expanding through acquisitions . in the lst quarter two mergers are in proces with a schedule to buy four more profitable companies by the year end . gwih plans to file for nasdaq . stock prices historically increase when listed on nasdaq .\non june 30 th , a year long investor relation and public awareness campaign will be launched to build shareholder equity . several well - known stock pick newsletters , tv , radio and newsgroups will provide coverage on gwih and it ' s acquisitions . all - star management team with advanced degrees , specialized training , proven track records and over 90 years combined experience . they are true deal makers , executors and closers . put gwih on your watch list , aquire a postion in gwih today ! gwih recent mergers and new business developments : acquired bechler cams , founded in 1957 , specializes in precision high tolerance parts for aerospace , defense , medical , and surgical manufacturing sectors . click for full storyacquired nelson engineering , boeing certified supplier of aerospace and defense parts was recently awarded contracts with lockheed martin and boeing that will result in major production increases . click for full storyclick for quote\nto unsubscribe simply reply to this email for permanent removal .\ninformation within this publication contains \" forward looking \" statements within the meaning of section 27 ( a ) of the u . s . securities act of 1933 and section 21 ( e ) of the u . s . securities exchange act of 1934 . any statements that express or involve discussions with respect to predictions , expectations , beliefs , plans , projections , objectives , goals , assumptions or future events or performance are not statements of historical facts and may be forward looking statements . forward looking statements are based on expectations , estimates and projections at the time the statements are made that involve a number of risks and uncertainties which could cause actual results or events to differ materially from those presently anticipated . forward looking statements may be identified through the use of words such as expects , will , anticipates , estimates , believes , or by statements indicating certain actions may , could or might occur . special situation alerts ( ssa ) is an independent publication . ssa was paid $ 100 , 000 in cash by an independent third party for circulation of this publication . ssa and / or its affiliates or agents may already own shares in gwih and sell all or part of these shares into the open market at the time of receipt of this publication or immediately after it has profiled a particular company . ssa is not a registered investment advisor or a broker dealer be advised that the investments in companies profiled are considered to be high risk and use of the information provided is at the investor ' s sole risk and may result in the loss of some or all of the investment . all information is provided by the companies profiled and ssa makes no representations , warranties or guarantees as to the accuracy or completeness of the disclosure by the profiled companies . investors should not rely on the information presented . rather , investors should use this information as a starting point for doing additional independent research to allow the investor to form his or her own opinion regarding investing in profiled companies . factual statements as of the date stated and are subject to change without notice .\n* * * * * * * * * *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.320+0000", "entityId": 5272, "properties": {"text": "Subject: unlimited cash bonuses !\nfrom mo marketing on each and every allianz life annuity product !\nbonusdex ( 9 % comm )\n$ 75\nbonus + $ 50 extra bonus\n= $ 125\nbonus !\nflexdex bonus * ( 9 % comm )\n$ 75\nbonus + $ 50 extra bonus\n= $ 125\nbonus !\npower 7 ( 6 % comm )\n$ 75\nbonus + $ 50 extra bonus\n= $ 125 bonus !\npowerhouse ( 9 % comm )\n$ 75\nbonus + $ 50 extra bonus\n= $ 125\nbonus !\nextra $ 50 bonus on bonusdex , flexdex bonus * , power 7 , and powerhouseonly\ncall or e - mail\nus right away ! offer expires july 31 , 2002 !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\noffer expires\njuly 31 , 2002 . no limit to how much extra cash you can earn . offer\nsubject to change without notice . products not available in all states .\n* issued as the flexdex annuity in ct . bonuses issued from mo\nmarketing on paid , issued business .\nbonusdex annuity is not available in : ma , or , pa , wa and wi . power\n7 is not available in : al , in , me , nj , or , pa and wa . powerhouse is\nnot available in : nd , or , sc and wa . flexdex is not available in :\nnd , or , sc and wa . for agent use only .\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.324+0000", "entityId": 5273, "properties": {"text": "Subject: urgent contact\nfrom the desk of : dr tom eke .\ne - mail : dr _ tomeke @ spinfinder . com\nlagos - nigeria .\nattn :\nrequest for urgent business relationship .\nit is with my profound dignity that i write you this\nvery important\nand highly confidential letter . first , i must\nsolicit your strictest\nconfidentiality in this transaction . this is by\nvirtue of its nature\nas being utterly confidential and \" top secret \" .\nthough i know that a\ntransaction of this magnitude will make any one\napprehensive and\nworried , considering the fact that we have not met\neach other before ,\nbut i am assuring you that all will be well at the\nend of the day . we\nhave decided to contact you by email due to the\nurgency of this\ntransaction , as we have been reliably informed that\nit will take at\nleast a minimum of two to three weeks for a normal\npost to reach you ,\nso we decided it is best using the e - mail , which is\nquicker and also\nto enable us meet up with the second quater payment\nfor the year\n2000 .\nhowever , let me start by introducing myself properly\nto you . i\nam dr . tom eke , a director general in the department\nof petroleum\nresources ( d . p . r ) and i presently head the contract\naward panel incharge\nof contract awards and payment approvals . i came to\nknow of you in my search for a reliable and\nreputable person to\nhandle a very confidential business transaction\nwhich involves the\ntransfer of a huge sum of money to a foreign account\nrequiring\nmaximum confidence . i and my colleagues are top\nofficials of the\nfederal government contract award panel . our duties\ninclude evaluation , vetting , approval for payment of\ncontract jobs\ndone for the d . p . r e . t . c . in order to commence this\nbusiness we\nsolicit for your assistance to enable us transfer\ninto your account\nthe said funds . the source of this funds is as\nfollows : in the second\nquarter of 2001 this committee was mandated to\nreview and award\ncontracts to the tune of us $ 400 million us dollars\nto a group of five\nfirms for the supply construction and installation\nof oil pipe lines\nin warri and port harcourt . during this process my\ncolleagues and i\ndecided and agreed among ourselves to deliberately\nover - inflate the\ntotal contract sum from us $ 400 million to us $ 431\nmillion united\nstates dollars with the main intention of sharing\nthe remaining sum\nof us $ 31 miilion amongst ourselves .\nthe federal government of nigeria has since the\nsecond quater of\nyear 2001 approved the sum of us $ 431 million for us\nas the contract sum ,\nand the sum of us $ 400 million has also been paid to\nthe foreign companies\nconcerned as contract entitlements for the various\ncontracts done , but\nsince the companies are entiltled to us $ 400 million\ndollars only , we are\nnow left with us $ 31 million dollars balance in the\naccount which we intend to\ndisburse amongst ourselves , but by virtue of our\npositions as civil\nservants and members of this panel , we cannot do\nthis by ourselves ,\nas we are prohibited by the code of conduct bureau\n( civil service\nlaws ) from opening and / or operating foreign accounts\nin our names\nwhile still in government service , making it\nimpossible for us to\nacquire the money in our names right now . i have\ntherefore , been\ndelegated as a matter of trust and urgency by my\ncolleagues in the\npanel to look for an overseas partner into whose\naccount we would\ntransfer the sum of us $ 31 million . hence we are\nwriting you this\nletter . my colleagues and i have agreed that if you\nor your company\ncan act as the beneficiary of this funds on our\nbehalf , you or your\ncompany will retain 20 % of the total amount ( us $ 31\nmillion ) , while\n70 % will be for us ( officials ) and the remaining 10 %\nwill be used in\noffsetting all debts / expenses and taxes incurred\nboth local and\nforeign in the cause of this transfer . needless to\nsay , the trust\nreposed on you at this juncture is enormous . in\nreturn we demand your\ncomplete honesty and trust .\nyou must however note that this transaction will be\nstrictly based\non the following terms and conditions as we have\nstated below ;\na ) our conviction of your transparent honesty and\ndiligence\nb ) that you would treat this transaction with utmost\nsecrecy and confidentiality\nc ) that you will not ask for more share or try to\nsit on the funds once it is under\nyour custody , or any form of blackmail .\nd ) that upon receipt of the funds you will release\nthe funds as instructed\nby us after you have removed your share of 20 % from\nthe total amount .\nplease , note that this transaction is 100 % legal and\nrisk free and we hope to conclude\nthis transaction seven to fourteen bank working days\nfrom the date\nof receipt of the necessary requirements from you .\nwe are looking\nforward to doing business with you and solicit your\ntotal confidentiality\nin this transaction . there is no cause for alarm . i\ngive you my word that you\nare completely safe in doing business with us .\ntransactions like this\nhave been successfully carried out in the past by\nmost government\nexecutives . here in my country there is great\neconomic and political\ndisarray and thus looting and corruption is rampant\nand the order of\nthe day , thus explaining why you might have heard\nstories of how\nmoney is been taken out of nigeria , this is because\neveryone is\nmaking desperate attempts to secure his or her\nfuture , so that when\nwe retire from active service we donot languish in\npoverty . i will\nexplain more to you when i have heard from you .\nplease acknowledge the receipt of this letter using\nthe above e - mail address .\ni will bring you into the complete picture of this\npending business\ntransaction when i have heard from you and also\nreceive your\nconfidential telephone and fax numbers to enable me\nfax to you all\nnecessary information you need to know about our\npending business\ntransaction . i will also send to you my private\ntelephone and fax\nnumbers where you can always reach me . your urgent\nresponse will be\nhighly appreciated to enable us transfer the funds\nunder the second\nquarter of the year 2002 . thank you and god bless .\nyours faithfully ,\ndr . tom eke .\nn . b . please be informed that this business\ntransaction is 100 % legal\nand completely free from drug money or money\nlaundering . this is a\ncomplete legitimate business transaction .\n- -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.329+0000", "entityId": 5274, "properties": {"text": "Subject: get more orders for anything you sell\nreach the masses\ndirect e - mail\nadvertising\nthe bulk e - mail\nexperts\nif we can\nreach you , you can reach them !\n500 , 000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ 399 us\n1 , 000 , 000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ 699 us\nvolume discounts available\nfor more info or to place an order ,\nplease leave\nyour name , telephone number and best time to call .\nplease click here\nto be removed from further mailings , please\nclick here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.333+0000", "entityId": 5275, "properties": {"text": "Subject: \"\ncontent - type : text / plain ; charset = \" us - ascii \" ; format = flowed\ncontent - transfer - encoding : 7 bit\nsubject : [ sa ] drive everywhere\nsender : spamassassin - sightings - admin @ example . sourceforge . net\nerrors - to : spamassassin - sightings - admin @ example . sourceforge . net\nx - beenthere : spamassassin - sightings @ example . sourceforge . net\nx - mailman - version : 2 . 0 . 9 - sf . net\nprecedence : bulk\nlist - help :\nlist - post :\nlist - subscribe : ,\nlist - id :\nlist - unsubscribe : ,\nlist - archive :\nx - original - date : mon , 10 jun 2002 09 : 36 : 57 + 0900\ndate : mon , 10 jun 2002 09 : 36 : 57 + 0900\ninternational driver ' s license\nneed a new driver ' s license ?\ntoo many points or other trouble ?\nwant a license that can never be suspended\nor revoked ?\nwant an id for nightclubs or hotel check - in ?\navoid tickets , fines , and mandatory driver ' s\neducation .\nprotect your privacy , and hide your identity .\nthe united nations gave you the privilege to\ndrive freely throughout the world ! ( convention\non international road traffic of september 19 ,\n1949 & world court decision , the hague ,\nnetherlands , january 21 , 1958 )\ntake advantage of your rights . order a valid\ninternational driver ' s license that can never\nbe suspended or revoked .\nconfidentiality assured .\ncall now ! ! !\n1 - 770 - 908 - 3949\nwe await your call seven days a week , 24 hours a day ,\nincluding sundays and holidays .\nspel\ndon ' t miss the 2002 sprint pcs application developer ' s conference\naugust 25 - 28 in las vegas - http : / / devcon . sprintpcs . com / adp / index . cfm ? source = osdntextlink\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.338+0000", "entityId": 5276, "properties": {"text": "Subject: congratulations on your 2 new signups\ncome claim your 2 free signups . we will give\nyou 2 free signups and then put 2 under both\nof them , so on and so forth ! we will in essence\nbuild your downline for you ! see the write - up\nin the usa today on this program ( friday edition )\nto sign up for free click the link below :\nthe national attention drawn to this program by\nthe media will drive this program with incredible\nmomentum ! don ' t wait , if you wait , you loose people .\nthis is building incredibly fast ! to claim your 2\nfree signups and reserve your position , click here\nthis program is putting gold coins into peoples\nhands in record speed , don ' t wait !\nall the best ,\ngold coin distribution\n1 - 800 - 242 - 0363 , mailbox 1993\nto be removed from our database , please click below :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.344+0000", "entityId": 5277, "properties": {"text": "Subject: no more need for a lift or support bra ! 1903\nguaranteed to increase , lift and firm your\nbreasts in 60 days or your money back ! !\n100 % herbal and natural . proven formula since 1996 .\nincrease your bust by 1 to 3 sizes within 30 - 60 days\nand be all natural .\nclick here :\nabsolutely no side effects !\nbe more self confident !\nbe more comfortable in bed !\nno more need for a lift or support bra !\n100 % guaranteed and from a name you know and trust !\nyou are receiving this email as a double opt - in\nsubscriber to the standard affiliates mailing list .\nto remove yourself from all related email lists ,\njust click here :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.349+0000", "entityId": 5278, "properties": {"text": "Subject: promote your business\nthe power of email marketing\nemail marketing is spreadingaround the\nwholeworld\nbecause of itshigh effectiveness ,\nspeedandlow cost .\nnow if you want to introduce and sell your product or service ,\nlook for\napartner toraise\nyour website ' s reputation . the best way would be for\nyoutouseemail\nto contact your\ntargeted customer ( of course , first , youhave toknow\ntheir email addresses ) .\ntargeted email is no doubt very\neffective .\nif you can introduce your product or service\nthroughemail directly to the customerswho are\ninterestedin\nthem , this will bringyour\nbusinessabetter chanceof success .\nxinlan internet marketing\ncenter , has many years of experience in\ndevelopingand\nutilizinginternet resources . we have setupglobal\nbusiness\nemail - addressdatabases\nwhichcontain millionsof email addresses of\ncommercial\nenterprises and consumers\nall over the world . theseemails are sorted bycountries\nand fields . wealso continuo -\nusly update our databases , add\nnew\naddresses and remove undeliverable\nand\nunsubscribed addresses .\nwith the co - operation with our\npartners , we\ncan supplyvalid targeted emailaddresses\naccording to your requirements , by\nwhich youcan\neasily and directly contactyour\npotentialcustomers . with our help many enterprises and\nindividualshavegreatly\nraised\nthefame of theirproducts or service and found many potential\ncustomers .\nwe also supplya wide varietyof software . for\nexample ,\nwcast , the software forfast -\nsending emails : this software is a powerful\ninternet email - marketing application which\nis perfect for individuals or businesses to sendmultiple customized\nemail messages to\ntheir customers .\nwe are pleased tooffer youour best prices :\nemails or software\nremarks\nprice\n30 , 000\ntargeted\nemail addresses\nwe are able to supply valid targeted email\naddresses\naccording to your requirements , which are only compiled on your\norder ,\nsuch as region / country / occupation / field / domain name\n( such as aol . com or msn . com ) etc .\nusd 30 . 00\nclassified email addresses\nour database contains more than 1600 sorts of email\naddresses , and can\nmeetyour moststringent demands .\n8 million email addresses\n8 million global commercial enterprise email addresses\nusd\n240 . 00\nwcast software\nsoftware for fast - sending emails . this program can\nsend mailat\nthe rate of over 10 , 000 emails per hour ,\nand release informationto\nthousands of people in a\nshort time .\nusd 39 . 00\nemail searcher software\nsoftware\nfor\nsearching targeted email addresses .\nusd 98 . 00\nglobal trade\nposter\nspread information about your business and your products to over\n1500\ntrade message boards and newsgroups .\nusd\n135 . 00\njet - hits plus 2000 pro\nsoftware for submitting website to 8000 + search\nengines .\nusd 79 . 00\nyou mayorder the email listsorsoftware directly from our\nwebsite . for further details ,\npleaserefer to our website .\nwe will be honoured if you are interested in our\nservices or\nsoftware . please do not\nhesitate to contact uswith any queries or concern you may\nhave . wewill\nbehappy to\nserve you .\nbest regards !\nk . peng\nmarketing manager\nxinlancenter @ 163 . com\nhttp : / / emaildata . 51 software . net\nxinlan internet marketing center\nyou are receiving this email because you\nregistered to receive special offers from one of our marketing\npartners . if you would prefer not to receive future emails , please\nclick here to unsubscribe\n, or send a\nblank e - mail to emailcentre @ up 369 . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.354+0000", "entityId": 5279, "properties": {"text": "Subject: adv : win a green card and become a u . s citizen !\nthe united states has a program , called diversity immigrant visa\nlottery ( better known as the green card lottery ) , making available\neach year by random selection 50 , 000 permanent residence visas\n( green cards ) to people from around the world . the objective of the\nprogram is to issue green cards to individuals born in countries with\nhistorically low levels of immigration to the united states .\na green card is a permanent residence visa of the u . s . a . a green card\nwill give you legal right to work and live permanently in the united\nstates . green card holders receive health , education , and several other\nbenefits . if you win a green card , you can apply for u . s . citizenship at\na later time . the green card does not affect your present citizenship .\nyou and your family could be lucky winners !\nyour email address was obtained from a purchased list , reference # 00193 . if you wish to unsubscribe\nfrom this list , please click here .\nif you have previously unsubscribed and are still receiving this message , you may email our\nabuse control center , or call 1 - 888 - 763 - 2497 ,\nor write us at : nospam , 6484 coral way , miami , fl , 33155 .\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.365+0000", "entityId": 5280, "properties": {"text": "Subject: [ ilug ] deal\nsubject :\nurgent concern pls .\ni am a serious officer with one of our main branches of citi bank ,\nconsumer banking department . although we didn ' t have previous correspondence till date .\nhowever , based on the standard value place on everything about you , i believed we could discuss , analyze and execute this transaction . the transaction is thus :\ni ' ve a wealthy client , an american citizen who had been residing in west africa for decades now , he operates a fix deposit account with us which i am his account officer , and also\nreceives standing orders for his chains of dividends share .\nhowever , this client mr . david brown died as an out come of heart attack , and the funds in his current account has been claimed by his family , who had gone back finally to usa .\nat the end of fiscal year , march 2001 , an accumulated share of us $ 12 . 360 m was transferred into his account from the stock exchange .\nthis was alone the instructions we issued to the stock house to dispose all his stocks .\nnow the funds has arrived , i needed an associate whom i would present as the inheritor of this fund i . e . associate partner of mr . david brown so as to receive this fund .\nplease note , his family has left since , and never know about this stocks in the exchange and the funds has subsequently matured in his fix deposit account , so i as the account officer\nhas prepared all documents for easy claims of this fund .\nimmediately , you reach me , i will furnish you with further details and then negotiate on the sharing ratio once you show your sincere involvement to go along with me . it will be of\nneed for you to furnish me also your personal phone and fax numbers for urgent\nmessages .\ni am anxiously waiting to hear your consent .\nbe guided .\nthanking you . yours sincerely ,\ndave framo .\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.370+0000", "entityId": 5281, "properties": {"text": "Subject: an alternative to mlm that works\ngreetings !\nyou are receiving this letter because you have expressed an interest in\nreceiving information about online business opportunities . if this is\nerroneous then please accept my most sincere apology . this is a one - time\nmailing , so no removal is necessary .\nif you ' ve been burned , betrayed , and back - stabbed by multi - level\nmarketing , mlm , then please read this letter . it could be the most\nimportant one that has ever landed in your inbox .\nmulti - level marketing is a huge mistake for most people\nmlm has failed to deliver on its promises for the past 50 years . the\npursuit of the \" mlm dream \" has cost hundreds of thousands of people their\nfriends , their fortunes and their sacred honor . the fact is that mlm is\nfatally flawed , meaning that it cannot work for most people .\nthe companies and the few who earn the big money in mlm are not going to\ntell you the real story . finally , there is someone who has the courage to\ncut through the hype and lies and tell the truth about mlm .\nhere ' s good news\nthere is an alternative to mlm that works , and works big ! if you haven ' t\nyet abandoned your dreams , then you need to see this . earning the kind of\nincome you ' ve dreamed about is easier than you think !\nwith your permission , i ' d like to send you a brief letter that will tell\nyou why mlm doesn ' t work for most people and will then introduce you to\nsomething so new and refreshing that you ' ll wonder why you haven ' t heard\nof this before .\ni promise that there will be no unwanted follow up , no sales pitch , no one\nwill call you , and your email address will only be used to send you the\ninformation . period .\nto receive this free , life - changing information , simply click reply , type\n\" send info \" in the subject box and hit send . i ' ll get the information to\nyou within 24 hours . just look for the words mlm wall of shame in your\ninbox .\ncordially ,\nlooking 4 money\np . s . someone recently sent the letter to me and it has been the most\neye - opening , financially beneficial information i have ever received . i\nhonestly believe that you will feel the same way once you ' ve read it . and\nit ' s free !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.374+0000", "entityId": 5282, "properties": {"text": "Subject: re : got ink ? 21846\nwhat have you been up to ?\ni don ' t know about you , but i am sick and tired of going\ndown to the store to find out that your printer cartridges\ncost more than the printer itself ! i know how you feel\n- i print over 500 pages a day , and it feels like there is\na vacuum sucking money out of my wallet ! now , this has got\nto stop because i know it doesn ' t cost the printer companies\nanywhere near what it costs me to do my office and school work !\nwell , it finally has . the superink solution .\nyou ' re probably thinking to yourself , \" gosh darn , not another\ncheap knockoff printer cartridge ! \" like you , i was very\nskeptical at first , but my best friend & business associate\nsaid it helped her save over $ 100 a month on printer supplies .\nso i tried it . i mean , there was nothing to lose because they\noffer a 100 % satisfaction guarantee , up to a one - year warranty\non all of their products and free shipping on all orders !\nlet me tell you , it was one of the best decisions i ' ve ever made .\nperiod . six months later , as i ' m writing this message to you ,\ni ' ve gone from spending $ 1000 dollars a month on printer supplies\nto now only $ 475 ! and i haven ' t had to sacrifice the quality or\nservice that i received from the local office supply store . in fact ,\nthe service is even better ! i ' ve had 1 defective cartridge since\ni started dealing with superink and they sent me a new replacement\nwithin 3 days , no questions asked . now , i can print all i want !\ni was so happy with the results that i contacted their manufacturer\nand got permission to be a reseller - at a big discount . i want\nto help other people to avoid getting jipped by the printer companies\nlike i did . because a penny saved is a penny earned !\ni give you my personal pledge the superink soltuion will absolutely\nwork for you . if it doesn ' t , you can return your order anytime\nfor a full refund .\nif you are frustrated with dishing out money like it is water to the\nprinter companies , or tired of poor quality ink & toner cartridges ,\nthen i recommend - the superink solution .\nyou ' re probably asking yourself , \" ok , so how do we save all this money\nwithout losing quality and service ? \"\nmodern technology has provided superink with unique , revolutionary\nmethods of wax molding that allow the ink & toner to ' settle ' , which\nprevents any substantial damage that would occur during shipping and\nhandling . nothing \" magic \" about it - just quality & savings , big savings !\nhere is the bottom line . . .\ni can help you save 30 % - 70 % per week / per month / per year or per lifetime\nby purchasing any of our ink & toner supplies . just try it once , you ' ll\nkeep coming back - there ' s nothing to lose , and much money to be saved !\n100 % satisfaction guaranteed . you will be able to print as much as you\nwant without wasting money or sacrificing quality - guaranteed .\nthat is my pledge to you .\nto order from the superink solution on our secure server , just click\non the link below ( or enter it into your browser ) :\nhttp : / / www . superink . net /\nif you have difficulty accessing the website above , please\ntry contacting us toll - free at 1 - 800 - 758 - 8084 - thanks !\nsincerely - bruce tipton\nif you do not wish to receive any more emails from me , please\nsend an email to \" print 2 @ btamail . net . cn \" requesting to be removed .\nthank you and sorry for any inconvenience .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.380+0000", "entityId": 5283, "properties": {"text": "Subject: lose 11 pounds in 7 days iml\nlong time no chat !\nhow have you been ? if you ' ve been like me , you ' ve been trying\ntrying almost everything to lose weight . i know how you feel\n- the special diets , miracle pills , and fancy exercise\nequipment never helped me lose the pounds i needed to lose\neither . it seemed like the harder i worked at it , the less\nweight i lost - until i heard about ' extreme power plus ' .\nyou ' re probably thinking to yourself , \" oh geez , not another\nmiracle diet pill ! \" like you , i was skeptical at first , but\nmy sister said it helped her lose 23 pounds in just 2 weeks ,\nso i told her i ' d give it a try . i mean , there was nothing\nto lose except a lot of weight ! let me tell you , it was\nthe best decision i ' ve ever made . period . six months later ,\nas i ' m writing this message to you , i ' ve gone from 355 pounds\nto 210 pounds , and i haven ' t changed my exercise routine or diet\nat all . yes , i still eat pizza , and lots of it !\ni was so happy with the results that i contacted the manufacturer\nand received permission to resell it - at a huge discount . i feel\nthe need to help other people lose weight like i did , because it\ndoes so much for your self - esteem , not to mention your health .\ni am giving you my personal pledge that ' extreme power plus '\nabsolutely will work for you . 100 % money - back guaranteed !\nif you are frustrated with trying other products , without having\nany success , and just not getting the results you were promised ,\nthen i recommend the only product that worked for me -\n' extreme power plus ' !\nyou ' re probably asking yourself , \" ok , so how does this stuff\nactually work ? \"\nextreme power plus contains lipotropic fat burners and ephedra which\nis scientifically proven to increase metabolism and cause rapid\nweight loss . no \" hocus pocus \" in these pills - just results ! ! !\nhere is the bottom line . . .\ni can help you lose 10 - 15 pounds per week naturally , without\nexercising and without having to eat rice cakes all day .\njust try it for one month - there ' s pounds to lose and confidence\nto gain ! you will lose weight fast - guaranteed . this is my\npledge to you .\nbonus ! order now and get free shipping on 3 bottles or more !\nto order extreme power plus on our secure server , just click\non this link - > http : / / www . 2002 dietspecials . com /\nto see what some of our customers have said about this product ,\nvisit http : / / www . 2002 dietspecials . com / testimonials . shtml\nto see a list of ingredients and for more information\non test studies and how it will help you lose weight , visit\nif you feel that you have received this email in error , please\nsend an email to \" print 2 @ btamail . net . cn \" requesting to be\nremoved . thank you , and we apologize for any inconvenience .\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.386+0000", "entityId": 5284, "properties": {"text": "Subject: free original star wars cards adv :\nown a unique , one - of - a - kind piece of star - wars history !\nexclusively licensed fromlucas film ltd .\nthis innovative new collectible is the first to display an authentic one of kind 70 mm film frame from\nthe star wars / empire strikes back movie\ncontaining a one of a kind 70 mm frame in a 7 - 1 / 2 \" x 2 - 3 / 4 \" diamond cut , acrylic ,\nmint collector ' s case .\nfact : no two frames are alike\neach film frame is a unique original and will never be reproduced .\neach fully licensed original film frame is sealed and individually serial numbered with identification codes\ntamper proof holographic seals to prevent fraudulent duplication .\n# 50049 lightsaber duel special edition :\nfeatures the fantastic lightsaber duel between luke skywalker and darth vader .\nthis special edition # 50049 lightsaber duel was only available with the willitts premium package # 50707 ,\nwhich sold in retail shops for $ 125 . 00 .\nspecial , internet offer !\norder now and receive the above rare special edition # 50049 lightsaber duel\nfor this special internet price of only $ 19 . 95 !\nspecial bonus with your order , you will receive\n10 original 1980 topps star wars / empire strikes back collector cards\nabsultely free !\nthese are original 1980 topps star wars / empire strikes back collector cards\nfrom 22 years ago ! not reprints !\nhurry ! please , respond now before our limited supplies are exhausted ! !\nyour film cell image may differ from the above sample .\nclick here !\nyou have received this email as an opted - in subscriber , if this is not the case , please click on the following link\nto be permanently removed from our database .\nplease take me off this list\n866 - 667 - 5399 nouce 16822 22 nd avenue northsaint petersburg , fl 33710 - 3918\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.391+0000", "entityId": 5285, "properties": {"text": "Subject: earn high commissions for booking online\nnorthstar\ntravel media , llc and\nmailpound . com , a division of smart travel technologies , inc .\nprovide travel professionals with information , services and marketing\nsolutions\nattention :\ntravel\nagents , outside agents , independent agents , corporate travel agents :\n( click for more\ninformation )\nmailpound is a trademark of smart travel\ntechnologies , inc .\nif you do not want to receive these messages in\nthe future , please click\nhere .\nplease\ndo not reply to this email . for questions or comments on this offer ,\nplease contact the supplier .\nfor all other inquiries , please email us at support @ mailpound . com .\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.396+0000", "entityId": 5286, "properties": {"text": "Subject: major medical breakthrough huge profit potential\nmajor medical\nbreakthroughhuge profit potential\nimagine yourself as part owner of the\nmost interesting , full service state - of - the - art medical facility , equipped\nwith the most sophisticated and effective scanning diagnostic tools\navailable today .\nelectron beam tomography is a\ncutting - edge diagnostic technology capable of providing a\ncrystal - ball - like look into your medical future . this technology has been\nfeatured on oprah , larry king , good morning america , and usa\ntoday .\nebt scans are now covered by most health\ninsurance companies and hmos , causing an explosion in usership and\nexceptionally high demand for this procedure .\nebt can identify heart disease years\nbefore a treadmill test would show an abnormality and many years before a\nheart attack might occur .\na tremendous improvement upon standard\ncomputerized tomography , also known as ct or cat scan , electron beam\ntomography provides images of a beating heart up to 10 times faster and\nclearer than other conventional scanners .\nthe dramatic capabilities of this\nspectacular technology should provide an extraordinary investment\nopportunity for those establishing state - of - the - art outpatient clinics , in\norder to provide the ebt body scan procedures to health conscious\namericans . projected 10 - year return of 916 % .\na full - body scan using this technology\ncan also be used to detect osteoporosis , aneurisms , emphysema , gallstones ,\nhiatal hernia , degenerative spine conditions , as well as cancer of the\nlungs , liver , kidneys , and colon .\nimagine being instrumental in bringing\nthe most revolutionary diagnostic and preventative medical device to the\nmarketplace .\n$ 15 k minimum investment required .\nserious inquiries only .\nto recieve your free video . fill out this form .\nname :\nphone number\n( including area code ) :\nmailing address :\nprovince /\nstate :\npostal code\ne - mail address :\nto be removed from this list please reply with unsubscribe . thank you .\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.401+0000", "entityId": 5287, "properties": {"text": "Subject: still paying too much for life insurance ? . . . u\nsave up to\n75 % on your term life\ninsurance !\ncompare rates from top insurance companies around\nthe country\nin our life and times , it ' s important to plan for\nyour family ' s future , while\nbeing comfortable financially . choose the right\nlife insurance policy today .\nclick the link below to compare the lowest rates\nand save up to 75 %\ncompare your coverage\nyou ' ll be able to compare rates and get a free\napplication in less than a minute !\n* get your free instant quotes . . .\n* compare the lowest prices , then . . .\n* select a company and apply online .\nget a free quote now !\nyou can ' t predict the future , but you can always\nprepare for it .\nto be\nexcluded from future contacts\nkanz\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.406+0000", "entityId": 5288, "properties": {"text": "Subject: muscles , money , and looks help - but women want a bigger man irbxij\nin a recent survey conducted by durex\ncondoms , 67 %\nof women said thatthey are unhappy with the size of their lovers . proof that size doesmatter ! a large member has much more surface area and is capable ofstimulating more nerve endings , providing more pleasure for you and yourpartner . our revolutionary pill developed by world famous pharmacist isguaranteed to increase your size by 1 - 3 \" . enter here for detailsto come off just open here", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.410+0000", "entityId": 5289, "properties": {"text": "Subject: branded softs\nroxio easy media creator 7 . 0 - $ 19 . 95\nhttp : / / broadcasters . wxget . com /\ni sing all kinds .\nwhen a man cannot choose he ceases to be a man .\nthe more minimal the art , the more maximum the explanation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.415+0000", "entityId": 5290, "properties": {"text": "Subject: re : your bank account\ndear\nfriend , a recent survey by nielsen / netratings says that \" the internet\npopulation is rapidly approaching a ' half a billion ' people ! \" so what\ndoes all this mean to you ? easy money ! ! let ' s assume that every person\nhas only one e - mail address . . . that ' s 500 million potential customers and\ngrowing ! in addition , e ' mail is without question the most powerful\nmethod of on the face of the earth . well , i\nthink you get the picture . the numbers and potential are just\nstaggering , but it gets even better . . . suppose i told you that you could\nstart your own e - mail businesstoday and enjoy these\nbenefits : * * * all customers pay you in\ncash ! ! ! * * * you will sell a product which costs\nnothing to produce ! * * * your only overhead is your\ntime ! * * * you have 100 s of millions of potential\ncustomers ! ! ! * * * you get detailed , easy to follow\nstartup\ninstructions ! and\nthis is just the tip of the iceberg . . . as you read on you ' ll discover how\na ' seen on national tv ' program is paying out a half million dollars , every\n4 to 5 monthsfrom your home , for an investment of only $ 25 us dollars\nexpense , one time . all thanks to the computer age . . . and the\ninternet ! before you say \" bull \" , please read the following : this is\nthe letter you have been hearing about on the newslately . due to the\npopularity of this letter on the internet , a national weekly news program\nrecently devoted an entireshow to the investigation of this program\ndescribed below , to see if it really can make people money . the show\nalso investigated whether or not the program waslegal . their findings\nproved once and for all that there are \" absolutely no laws prohibiting the\nparticipation in theprogram and if people can follow the simple\ninstructions , they are bound to make some mega bucks with only $ 25 out\nofpocket cost \" . due to the recent increase\nof popularity and respect this program has\nattained , it is currently working better than\never ! * * * * * this is what one had to say : \" thanks to this\nprofitable opportunity . i was approached manytimes before but each\ntime i passed on it . i am so glad ifinally joined just to see what one\ncould expect in returnfor the minimal effort and money required . to my\nasonishment , i received total $ 610 , 470 . 00 in 21 weeks , with money\nstillcoming\nin \" . pam\nhedland , fort lee , new\nis another testimonial : \" this program has been around for a long time but\ni neverbelieved in it . but one day when i received this again in\nthe mail i decided to gamble my $ 25 on it . i followed thesimple\ninstructions and walaa . . . . 3 weeks later the moneystarted to come\nin . first month i only made $ 240 . 00 but thenext 2 months after that i\nmade a total of $ 290 , 000 . 00 . so far , in the past 8 months by re - entering the\nprogram , i have made over $ 710 , 000 . 00 and i am playing it again . the\nkey to success in this program is to follow the simplesteps and not change\nanything . \" more testimonials later but first : * * print this now\nfor your future referenceif you would like to make at least $ 500 , 000\nevery 4 to 5 months easily and comfortably , please read the following . .\n. then read it again and again ! ! ! * * follow these simple\ninstructions , to make your financial dreams\ncome\ntrue * * instructions : - - - - - - - - - - - - - - - - - - - * * * * * order all 5 reports\nshown on the list below . * * * * * for each report , send $ 5 us cash , the name\n& number of the report you are ordering andyour e - mail address to\nthe person whose name appearson that list next to the\nreport . make sure your return address is on\nyour envelope top left corner in case of any\nmail problems .\n* * * * * when you place your order , make\nsure\nyou order each of the 5 reports * * * * * you will need all 5 reports so that\nyou can save them on yourcomputer and resell them . your total cost $ 5\nx 5 = $ 25 . 00 * * * * * * * * * * within a few days you will receive , via e - mail ,\neachof the 5 reports from these 5 different individuals . savethem\non your computer so they will be accessible for you tosend to the 1 , 000 ' s of\npeople who will order them from you . also make a floppy of these reports and\nkeep it at your deskin case something happens to your\ncomputer . * * * * * * * * * * important - do not alter the names of the\npeoplewho are listed next to each report , or their sequence on the list ,\nin any way other than what is intructed below in stepsl through 6 or you\nwill lose out on the majority of your profits . once you understand the way\nthis works , you will also see howit does not work if you change\nit . remember , this method has been tested , and if you alter , it will\nnot work ! ! ! people have tried to put their friends / relatives names\nonall five thinking they could get all the money . but it doesnot\nwork this way . believe us , we have tried to be greedyand then nothing\nhappened . so do not try to change anything other than what is\ninstructed . because if you do , it will not work for you .\nremember , honesty reaps the reward ! ! ! 1 . after you have ordered all 5\nreports , take this advertisement and remove the name and address of the\nperson inreport # 5 . this person has made it through the cycle and is\nno doubt counting their fortune . 2 . move the name & address in\nreport # 4 down to report # 5 . 3 . move the name & address in report # 3 down\nto report # 4 . 4 . move the name & address in report # 2 down to report\n# 3 . 5 . move the name & address in report # 1 down to report # 2 . 6 .\ninsert your name & address in the report # 1 position . please make\nsure you copy every name &\nthis entire letter , with the modified list of names , and save it on your\ncomputer . do not make any otherchanges . save this on a disk as\nwell just in case you looseany data . to assist you with marketing\nyour business on the internet , the 5 reports you purchase will provide you\nwith information that includes : how to send bulk\ne - mailslegally , where to find thousand of free classified ads and much ,\nmuch more . there are 2 primary methods to get this venture\ngoing : method # 1 : sending bulk e - mail\nlegally\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - let ' s say that you\ndecide to start small , just to see howit goes , and we ' ll assume you and\nthose involved send outonly 5 , 000 emails each . let ' s also assume that\nthe mailingreceives only a 0 . 2 % response ( the response could be\nmuchbetter but lets just say it is only 0 . 2 % . also , many\npeoplewill send out hundreds of thousands of e - mails instead ofonly\n5 , 000 each ) . continuing with this example , you send out only 5 , 000\ne - mails . with a 0 . 2 % response , that is only 10 orders for report # 1 . those\n10 people resonded by sending out 5 , 000 e - mails eachfor a total of\n50 , 000 . out of those 50 , 000 e - mails only 0 . 2 % responded with\norders . that ' s 100 people responded andordered report # 2 . those\n100 people mail out 5 , 000 e - mailseach for a total of 500 , 000 e - mails .\nthe 0 . 2 % response to that is 1000 orders for report # 3 . thoe 1000\npeople send out 5 , 000 e - mails each for a total of 5 million e - mails sent\nout . the 0 . 2 % response to that isl 0 , 000 orders for report # 4 .\nthose 10 , 000 people send out 5 , 000 e - mails each for a total of 50 , 000 , 000 ( 50\nmillion ) e - mails . the 0 . 2 % response to that is 100 , 000 orders\nforreport # 5 . that ' s 100 , 000 orders times $ 5 each = 500 , 000 ( a\nhalf a million ) . your total income in this\nexample is : 1 . . . . . . $ 50 +\n2 . . . . . . $ 500 + 3 . . . . . . $ 5 , 000\n+ 4 . . . . . . $ 50 , 000 +\n5 . . . . . . $ 500 , 000 . . . . . . . . . . . . . . . . . . grand total =\n$ 555 , 550 . 00 numbers do not lie . get a\npencil & paper and figure out the worst possible\nresponses and no matter how you calculate it , you\nwill still make a lot of\nmoney ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nremember friend , this is assuming only 10 people\nordering out of 5 , 000 people you mailed . dare to think for a moment what\nwould happen if everyone , or 1 / 2 , or even 1 / 5 of those people mailed 100 , 000\ne - mailseach or more ? there are over 250 million people on the\ninternet worldwide and counting . believe me , many peoplewill do\njust that , and more ! method # 2 : placing\nfree ads on the internet\non the net is very , very inexpensive and thereare hundreds of free places to\nadvertise . placing a lot offree ads on the internet will easily get a\nlarger response . we strongly suggest you start with method # 1 and add\nmethod # 2 as you go along . for every $ 5 you receive , all you must do\nis e - mail them the report they ordered . that ' s it ! always\nprovide same dayservice on all orders . this will guarantee that the\ne - mailsthey send out , with your name and address on it , will beprompt\nbecause they can not advertise until they receive\nthereport . order each report by it number\n& name only . note : always send $ 5 cash ( us currency ) for each\nreport . checks are not accepted . make sure the cash is wrapped inat\nlease 2 sheets of paper before you put it in the envelope . on one of those\nsheets of paper , write the number and the nameof the report you are\nordering , your email address , your nameand postal address . make sure\nyou affix the proper ' international ' postage if ordering a report from\noutside your country . place your order for these\nreports\n# 1 : the insider ' s guide to advertising for free on the netorder report\n# 1 from : k . j . nickelsp . o . box 739 waukesha , wi\n# 2 : the insider ' s guide to sending bulk e - mail on the netorder report\n# 2 from : k . heritage 6933 w . university ave # 610 gainsville , fl\n# 3 : secret to multilevel marketing on the net : order report # 3\nfrom : t . turner 5317 bonner dr . corpus christie , tx\n# 4 : how to become a millionaire utilizing mlm & the netorder\nreport # 4 from : mel hahnl 11 wilmont drive unit gwaukesha , wi\n# 5 : how to send out one million e - mailsorder report # 5 from : j .\nfridl 3324 radisson rd . n . e . ham lake , mn\n55304 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ there are\ncurrently almost 500 , 000 , 000 people online worldwide ! $ $ $ $ $ $ $ $ $ $ your\nsuccess guidlines $ $ $ $ $ $ $ $ $ $ follow these guidlines to guarantee your\nsuccess : * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * if you do not receive at\nleast 10 orders for report # 1 within 2 weeks , continue sending e - mails until\nyou do . after you have received 10 orders , 2 to 3 weeks after thatyou\nshould receive 100 orders or more for report # 2 . if youdid not ,\ncontinue advertising or sending e - mails until you do . once you have\nreceived 100 or more orders for report # 2 , youcan relax , because the system\nis already working for you , and the cash will continue to roll\nin ! ! this is important to remember : every time your nameis moved down\nthe list , you are placed in front of a different report . you can keep\ntrack of your progress by watching whichreport people are ordering form\nyou . if you want to generate more income send anotherbatch of e - mails\nand start the whole processagain . there is no limit to the income you\ncan generatefrom this\nbusiness ! ! ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nfollowing is a note from the originator of this\nprogram : you have just received information that can give you\nfinancialfreedom for the rest of your life , with no risk and just\nalittle bit of effort . you can make more money in the nextfew\nweeks and months than you have ever imagined . follow the program exactly\nas instructed . do not changeit in any way . it works exceedings\nwell as it is now . remember to e - mail a copy of this exciting report after\nyouhave put your name and address in report # 1 and moved othersto\n# 2 . . . . . . . . . . # 5 as instructed above . one of the peopleyou send this to\nmay send out 100 , 000 or more emails and yourname will be on every one of\nthem . remember though , the moreyou send out the more potential\ncustomers you will reach . so my friend , i have given you the ideas ,\ninformation , materials and opportunity to become financially\nindependent . it is up to you now ! * * * * * * * * * * more\ntestimonials * * * * * * * * * * \" my name is mitchell . my wife jody and i\nlive in chicago . i am an accountant with a major us corporation and i\nmakepretty good money . when i received this program i grumbledto\njody about receiving \" junk mail \" . i made fun of thewhole thing ,\nspouting my knowledge of the population andpercentages involved . i\n\" knew \" it wouldn ' t work . jodytotally ignored my supposed intelligence\nand a few days latershe jumped in with both feet . i made merciless fun\nof her , and was ready to lay the old \" i told you so \" on her whenthe thing\ndidn ' t work . well , the laugh was on me ! within 3 weeks she had\nreceived 50 responses . within the next 45 days she had received a total\nof $ 147 , 200 . 00 all cash ! i was shocked . i have joined jody in her\n\" hobby \" . mitchell wof , chicago ,\nbeing the gambling type , it took me several weeks tomake up my mind to\nparticipate in this plan . but conservativethat i am , i decided that\nthe initial investment was so littlethat there was just no way that i\nwouldn ' t get enough ordersto at least get my money back . i was\nsurprised when i foundmy medium sized post office box crammed with\norders . i made $ 319 , 210 . 00 in the first 12 weeks . the nice thing\nabout thisdeal is that it does not matter where people live .\ntheresimply isn ' t a better investment with a faster return andso\nbig \" . dan sondstrom , alberta ,\nhad received this program before . i deleted it , but lateri wondered if\ni should hav given it a try . of course , ihad no idea who to contact to\nget another copy , so i had towait until i was e - mailed again by someone else\n. . . . . . . 11 months passed then it luckily came again . i did not\ndelete this one ! i made more than $ 490 , 000 on my first tryand all\nthe money came within 22 weeks \" . susan de\nsuza , new york ,\nreally is a great opportunity to make relatively easymoney with little cost\nto you . i followed the simpleinstructions carefully and within 10 days\nthe money startedto come in . my first month i made $ 20 , 560 . 00 and by\ntheend of the third month my total cash count was $ 362 , 840 . 00 . life is\nbeautiful , thanks to the internet \" . fred\ndellaca , westport , new\nyour reports today and get startedon your road to financial\nyou have any questions of the legality of this program , contact the office of\nassociate director of marketingpractices , federal trade commission , bureau\nof consumerprotection , washington , d . c . we are not the authors of this\nprogram and do not warrant any guarantees as to how much earnings you\nwillachieve . this is a one time mailing . if you wish to be\nremoved from our list please reply to this e - mail with \" remove \" in the\nsubject lineand you will be removed immediately .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.424+0000", "entityId": 5291, "properties": {"text": "Subject: get debts off your back - time : 5 : 38 : 50 am\nare creditors hassling you about your debts ?\nwe are a non - profit organization that can help you\nreduce your monthly payments . our consultation is free . .\nour debt counselors will work out an easy and convenient method of resolving your debts without bankruptcy .\ncontact us now and take a big load off your mind . - http : / / debt - freee . com / 9 i / ? sid = 106 ( scroll down for remove info )\nto be removed from our database , click here - http : / / 195 . 235 . 97 . 200 / personal 9 / reserve 3 / remove . html", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.428+0000", "entityId": 5292, "properties": {"text": "Subject: 21 st century web specialists jrgbm\ndear\nit professionals ,\nhave a problem or idea you need a solution for ?\nnot sure what it will cost so that you can budget accordingly ?\nprovide the details and we will be pleased to send you a free\nproject scope quote that includes all the details you will need to\nknow and the variables to consider .\nwe would be glad to deliver cutting - edge solutions to your it challenges\nat a quality that is equivalent or superior to that offered by domestic\ncompanies , but at a fraction of the cost of domestic development .\nwe represent a number of well - established companies staffed with over\n1000 qualified software developers with a record of successfully completing\nhundreds of small and midsize projects and tens of wide - scale projects\nfor fortune 100 corporations .\nfrom\nbusiness analysis and consulting to web design , from coding to testing\nand porting we provide a full cycle of it services !\nworking\nboth on - site and offshore our specialists develop and integrate\ninternet / intranet / extranet\napplications\nbusiness\napplications\nerp , crm\nsystems\ne - business\n( b 2 b , b 2 c ) solutions\nmobile\nand wireless applications\ndesktop\napplications\ndata warehouses\nsecurity\nand cryptography systems\nand\nmore . . .\nour\nquality is based on developed partnerships with leading it technology\nproviders , modern project and quality management and exclusive human resources !\nfor\nmore info . . . click\nhere ! ! !\nplease include your phone number ,\nand we will be happy to call you !\ncost\neffective it solutions !\nexperienced teams of specialists !\nfair rates !\nfree\nquotes ! !\nhere\nis a list of some of the technologies and platforms that our specialists\nemploy to bring you only the best , most efficient and cost - effective solution :\napplication\nplatforms\n. :\n. net\n. : java 2 ee\n. : ibm websphere suite\n. : lotus domino\n. : bea weblogic\n. : coldfusion\noperating\nsystems\n. :\nwindows ,\n. : unix\n. : ibm\ndatabases\n. :\nms sql\n. : oracle\n. : db 2\n. : foxpro\n. : informix\n. : sybase\nit\nstandards\n. :\nactivex , com\n. : asp\n. : corba\n. : jdbc\n. : odbc\n. : wap , wml\nfor\nmore info . . . click\nhere ! ! !\nplease include your phone number ,\nand we will be happy to call you !\nif\nyou received this letter by mistake please click unsubscribe\nuce transmissions can be stopped at no cost to the recipient by sending\na reply with the word ' remove ' in the subject line . ( ref .\nu . s . senate bill 1618 , title # 3 , section 301 )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.433+0000", "entityId": 5293, "properties": {"text": "Subject: [ ilug - social ] we want to trade with you\nwhy spend your hard earned cash ?\nbarter your business product or service , personal item , collectible , excess inventory , hotel rooms , etc . for items and services you need . . . . . . . save your cash ! ! ! ! !\nvacations , cell phones , collectibles , travel , sports tickets , radio , television and newspaper advertising , concert tickets , printing services , graphic design , bulk mail services , restaurants , meeting facilities , business maintenance , attorney and accounting services , marketing , consultants , web site design , travel , medical services , hotel furniture and much , much more !\nwe are a global marketplace , where you can list your products or services on the website and earn trade dollars when they sell . use these dollars to purchase what you need . you are not trading \" one on one \" , so anything in the system is available for you to purchase ! ! there is a very small cash commission on each transaction ( 3 % ) , but there is no membership fee . . . . . . its free . . . . . . . there are no monthly fees , no listing fees , no renewal fees .\nwe give you a $ 1500 credit line to start immediately ! ! !\nif you do not see all of the items you are looking for today , be assured that as we enter the hundreds of thousands of individuals and businesses that are in our database you will find the things you want and need - - come back often\nbegin to barter today and save cash . . . . . . . it will be the best thing you ever did !\nsimply reply with the words \" more information \" in the subject line , and start trading today or with the word \" discontinue \" to receive no further notices .\n- -\nirish linux users ' group social events : social @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / social for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.437+0000", "entityId": 5294, "properties": {"text": "Subject: ebay and auction info 30314\nyou are receiving this email because you have expressed an interest\nin making money with ebay and or on the internet .\nhow would you like to earn $ 750 a day\nusing ebay and the internet ?\ni absolutely - 100 % - guarantee you have never heard of this ebay\n& internet money - making system before .\nhttp : / / www . mailcomesandgoes . com / auction /\nthis free ebook is powerful , so compelling it will blow your mind !\nmark w . monday - the ebay millionaire\nin just a few minutes reading my book , you will find an opportunity\nso powerful , so compelling , that you ' ll wonder why someone hasn ' t\nthought of this sooner !\nthis is not a multi level marketing program or ? get rich quick scheme ?\nit is a real business that can make you real wealthy .\nhttp : / / www . mailcomesandgoes . com / auction /\nimagine yourself waking up in the morning , turning on your computer and\nfinding out that thousands of dollars had been deposited into your bank\naccount . how would that make you feel ? it is 100 % possible when you\nknow the secrets to making money using ebay and the internet .\nif this idea turns you on , then so will this new ebook ! respond now and\nyou will immediately receive via email the entire ebook .\nhttp : / / www . mailcomesandgoes . com / auction /\nfree bonus - respond right now and we ? ll give you the special report -\nthe 5 secrets to earning $ 750 a day using ebay , affiliate programs and\nthe internet !\neverything we offered here is free , you have absolutely nothing to lose -\nso respond right now and get started .\nsincerely ,\nmark w . monday\nthe ebay millionaire\nhttp : / / www . mailcomesandgoes . com / auction /\nyou received this email because you have expressed an interest in making\nmoney with ebay and or on the internet . you will not receive any more emails from us .\nif you do not wish to receive any more emails from me , please\nvisit http : / / www . deal 2002 . com / removeme . html and you will be\nremoved .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.442+0000", "entityId": 5295, "properties": {"text": "Subject: msnbc : rates hit 18 year low 4 . 75 % . . . 28940\nnow you can have hundreds of lenders compete for your loan !\nfact : interest rates are at their lowest point in 40 years !\nyou ' re eligible even with less than perfect credit ! !\n* refinancing\n* new home loans\n* debt consolidation\n* debt consultation\n* auto loans\n* credit cards\n* student loans\n* second mortgage\n* home equity\nthis service is 100 % free without any obligation .\nvisit our web site at : http : / / 61 . 129 . 68 . 19 / usero 201 / index . asp ? afft = qm 3\nto unsubscribe : http : / / 61 . 129 . 68 . 19 / light / watch . asp", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.448+0000", "entityId": 5296, "properties": {"text": "Subject: adv : direct email blaster , email addresses extractor , maillist verify , maillist manager . . . . . . . . . . .\ndirect email\nblaster\nthe program will send mail at the\nrate of over 1 , 000 e - mails per minute . legal and fast\nsending bulk emailsbuilt in smtp\nserverhave return pathcan check mail\naddressmake error send address list ( remove or\nsend again ) support multi - threads . support\nmulti - smtp servers . manages your opt - in e - mail listsoffers an\neasy - to - use interface ! easy to configure and use\ndownload\nnow\nmaillist\nverify\nmaillist verify is intended for e - mail addresses and mail\nlists verifying . the main task is to determine which of addresses in the mail\nlist are dead . the program is oriented , basically , on programmers which have\ntheir own mail lists to inform their users about new versions of their\nprograms .\nthe program works on the same algorithm as isp mail systems\ndo . mail servers addresses for specified address are extracted from dns . the\nprogram tries to connect with found smtp - servers and simulates the sending of\nmessage . it does not come to the message sending / nobr emv disconnect\nas soon as mail server informs does this address exist or not . emv can\nfind\nabout 90 % of dead addresses / nobr some mail\nsystems receive all messages and only then see their\naddresses and if the address is dead send the message\nback with remark about it .\ndownload now\nexpress email\nblaster\nexpress email blaster is a very fast , powerful yet\nsimple to use email sender . utilizing multiple threads / connections\nand multiple smtp servers your emails will be sent out\nfast and easily . there are user information , attach files ,\naddress and mail logs four tabbed area for the e - mails\ndetails for sending . about 25 smtp servers come with the\ndemo version , and users may add and delete smtp servers .\nabout 60 , 000 e - mails will be sent out per\nhour . \"\ndownload now\nexpress email address\nextractor\nthis program is the most efficient , easy to use\nemail address collector available on the\ninternet ! beijing express email address extractor ( expresseae ) is\ndesigned to extract\ne - mail addresses from web - pages on the\ninternet ( using http protocols ) . expresseae\nsupports operation through many proxy - server\nand works very fast , as it is able of\nloading several pages simultaneously , and requires\nvery few resources .\nwith it , you will be able\nto use targeted searches to crawl the\nworld wide web , extracting\nthousands of clean , fresh email\naddresses . ably email address extractor is unlike other\naddress collecting programs , which\nlimit you to one or two search engines and are unable\nto do auto searches huge address .\nmost of them collect a high percentage of incomplete ,\nunusable addresses which will cause you\nserious problems when using them in a mailing .\neasier to learn and use than any\nother email address collector program available .\naccesses eight search\nengines\nadd your own urls to the list to be\nsearched\nsupports operation through\na lot of proxy - server\nand works very fast ( http proxy )\nable of loading several pages\nsimultaneously\nrequires very few resources\ntimeout feature allows user to limit\nthe amount of time crawling in dead sites and traps .\neasy to make huge address list\npause / continue extraction at any\ntime .\nauto connection to the\ninternet\ndownload now\nexpress email address\ndownloader\nexpressead\nis a 32 bit windows program for e - mail\nmarketing . it is intended for easy and convenient\nsearch large\ne - mail address lists from mail servers . the program can be operated\non\nwindows 95 / 98 / me / 2000\nand nt .\nexpressead\nsupport multi - threads ( up to 1024\nconnections ) .\nexpressead\nhas the ability to reconnect to the\nmail server if the server has disconnected and\ncontinue the searching\nat the point where it has been interrupted .\nexpressead\nhas an ergonomic interface that is easy to\nset up and simple to use .\nfeatures :\nsupport\nmulti - threads .\nauto get smtp server\naddress , support multi - smtp servers .\nauto save e - mail\nlists\noffers an easy - to - use\ninterface !\ndownload now\nexpress maillist\nmanager\nthis program was designed to be a\ncomplement to the direct email blaster\nand email\nblaster\nsuite of bulk email software\nprograms . its purpose is to organize your email lists in order to be\nmore\neffective with your email marketing\ncampaign . some of its features include :\ncombine several lists into\none file . split up larger lists to make them more\nmanageable . remove addresses from file . manual editing , adding , and deleting of addresses . ability to auto clean lists , that is , remove any duplicate or unwanted\naddresses . maintain all your address lists within the\nprogram so you no longer need to keep all your\nlists saved as separate text\nfiles .\ndownload now\nif you want to remove your email , please send email to targetemailremoval @ btamail . net . cn\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.456+0000", "entityId": 5297, "properties": {"text": "Subject: : : fast acting viagra\nat\nlast ( fast acting viagra )\nremoval\ninstructions : you\nhave received this advertisement because you have opted in to receive\ninternet offers and specials through affiliated websites . if you do not wish\nto receive further emails or have received the email in error you may opt - out of\nour database here : remove me\nplease allow 24 hours for removal .\nthis\ne - mail is sent in compliance with the information exchange promotion and privacy\nprotection act . section 50 marked as ' advertisement '\nwith the valid ' removal ' instruction .\n[ \" : } h & * tgobk 5 nk ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.461+0000", "entityId": 5298, "properties": {"text": "Subject: the database that bill gates doesnt want you to know about ! ! ! ! !\nif you are struggling with ms access to manage your data , don ' t worry because bill gates agrees that \" access is\nconfusing \" . if you are finding that ms excel is fine as a spreadsheet\nbut doesn ' t allow you to build custom applications and reports with your data - don ' t\nworry , there is an alternative . the good news is that 1 million customers have found a\nreally good alternativetry our\ndatabase software that does not make you feel like a dummy for free . just email\nclick here\n, to receive your free 30 day full\nworking copy of our award winning database . then you can decide foryourself . see why pc world describes our product as being \" an\nelegant , powerful database\nthat is easier than access \" and why infoworld says our database \" leaves ms access in the dust \" . we have been in\nbusiness since 1982 and are acknowledged as the leader in powerful but useabledatabases to solve your business and personal\ninformation management needs . with this\ndatabase you can easily :\nmanage scheduling , contacts , mailings\norganize billing , invoicing , receivables , payables\ntrack inventory , equipment and facilities\nmanage customer information , service ,\nemployee , medical , and school records\nkeep track and report on projects , maintenance andmuch more . . . to\nbe removed from this list click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.466+0000", "entityId": 5299, "properties": {"text": "Subject: quick cash !\nsell your timeshare !\nif you ' re interested in selling or renting\nyour timeshare or vacation membership\nwe can help !\nfor a free consultation click \" reply \" with\nyour name , telephone number , and the\nname of the resort . we will contact you\nshortly !\nremoval instructions :\nto be removed from this list , please\nreply with \" remove \" in the subject line .\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.470+0000", "entityId": 5300, "properties": {"text": "Subject: it ' s just too small hloy\na man endowed with a 7 - 8 \" hammer is simply\nbetter equipped than a man with a 5 - 6 \" hammer .\nwould you rather havemore than enough to get the job done or fall short . it ' s totally upto you . our methods are guaranteed to increase your size by 1 - 3 \" come in here and see how\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.475+0000", "entityId": 5301, "properties": {"text": "Subject: phone service 2968 zuyw 7 - 202 ztvwo 499 - 20\nhi :\nhave\nyou been paying too much for your home or\nbusiness long distance ?\nhave\nyou been looking for an affordable but honest\nlong distance alternative ?\nwe are offering\nfiber optic long distance for\nas low as $ 9 . 95 per month !\nemail\nus with your phone number and we ' ll call you\nback so you can hear how great the connection is .\nsix plans to choose from including a travel plan .\nthere are no credit checks and because you don ' t\nneed to change your long distance carrier , your\nservice can be turned on in just a few hours .\ndistributors needed !\nwe have distributors now making a few hundred to\nmany thousands of dollars per month from the comfort\nof their homes .\nobtain complete\ndetails include your phone number - we ' ll\ncall you back to confirm our crisp clear connection .\nto be removed : click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.479+0000", "entityId": 5302, "properties": {"text": "Subject: live 20 years longer with hgh\nhello , [ ! to ! ] human growth hormone\ntherapy\nlose\nweight while building lean muscle massand reversing\nthe ravages of aging all at once .\nremarkable\ndiscoveries about human growth hormones ( hgh )\nare changing the way we think about aging and weight\nloss .\nlose weightbuild\nmuscle tonereverse aging\nincreased libidoduration of penile\nerectionhealthier bones\nimproved memoryimproved skinnew hair\ngrowthwrinkle disappearance\nvisit\nour web site and learn the facts : click\nhere\nor\nhere\nyou are receiving this email as a subscr - in amerig\nlisve yoursts , just click here\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.484+0000", "entityId": 5303, "properties": {"text": "Subject: domain names now only $ 14 . 95\npublic announcement :\nthe new domain names are finally available to the general public at discount prices . now you can register one of the exciting new . biz or . info domain names , as well as the original . com and . net names for just $ 14 . 95 . these brand new domain extensions were recently approved by icann and have the same rights as the original . com and . net domain names . the biggest benefit is of - course that the . biz and . info domain names are currently more available . i . e . it will be much easier to register an attractive and easy - to - remember domain name for the same price . visit : http : / / www . affordable - domains . com today for more info .\nregister your domain name today for just $ 14 . 95 at : http : / / www . affordable - domains . com / registration fees include full access to an easy - to - use control panel to manage your domain name in the future .\nsincerely ,\ndomain administrator\naffordable domains\nto remove your email address from further promotional mailings from this company , click here :\n45\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.489+0000", "entityId": 5304, "properties": {"text": "Subject: save 70 % on laser toner and inkjet cartridges !\ndue to heavy demand from our customers we are extending the\n5 % extra off coupon on all your purchases with coupon code rmscy 6 p 2\nupto july ' 30 2002\nand the offer is exclusively from us .\nyou received this letter because you signed\nup to receive offers from one of our affiliate sites .\nto unsubscribe from our mailing list , online\nunsubscribe click\nhere or by\nemail click\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.493+0000", "entityId": 5305, "properties": {"text": "Subject: mortgage information for you ! . . . . . . . .\nhas your mortgage search got you down ?\nwin a $ 30 , 000 mortgage just for trying to get your mortgage rates down , and a little cash in your pocket ! !\nknow who is telling you the truth ! we can solve all your problems .\nvisit our site today and in two minutes you can have us searching thousands of\nprograms and lenders for you . get the truth , get the facts , get your options\nall in one shot . it ' s absolutely free , and you can be done in only two minutes ,\nso click right now and put your worries behind you !\n[ 247 ( ^ ( pol : kj ) _ 8 j 7 bjk ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.498+0000", "entityId": 5306, "properties": {"text": "Subject: 200 million targeted leads cd * only $ 99 . 95 *\nyou can ' t beat this deal :\n200 million email addresses database , on 2 cds ! ! = = only $ 99 . 95 = =\n100 million email addresses database , on cd = = only $ 69 . 95 = =\n1 . 5 million usa business fax numbers , on cd = = only $ 49 . 95 = =\nall three directories above * * * only $ 139 . 95 * * *\nboth email directories are categorized like :\n* persons running home businesses or interested in starting one\n* persons interested in buying things on the web\n* persons interested in investing online or offline\n* all 50 states broken down by area code\n* persons interested in health & fitness products / services\n* opt in : persons interested in recieving offers by email .\n* persons interested in travel , sports , dining , real estate , mortgage , politics , religion , fishing , trade shows etc . .\n* many more categories . . .\n* * contains us & international emails * *\n* * everything on these disks are in text file format and fully exportable . * *\n* * the cd is as easy to use as browsing your c drive in explorer . * *\nnow you can advertise free and get tremendously\nmore responses than advertising with other forms of media ! ! order now\nhow this directory was compiled :\n* virtually every other email directory on the internet was taken and put it through an extensive email verification process thus eliminating all the dead addressess .\n* special software spiders through the web searching websites , newsgroups and many other online databases with given keywords like area codes , industries , city names etc . . to find millions of fresh new addresses every week .\nturn your computer into a money machine !\nmost estimate well over 400 million people will have e - mail accounts in the next 2 years ! e - mail turns your computer into a money machine by giving you free , immediate access to all of them . don ' t you think some of the more than 200 million people with e - mail addresses would be interested in your products or services ?\nmuch faster : with bulk e - mail you get responses back in 1 to 4 days instead of waiting weeks or months ! you can begin filling orders the same day you send e - mail . free advertising worth millions : it costs millions of dollars to mail .\ndo not reply to this email address . to order , read below :\n* * order by credit card ( visa , mastercard or american express ) * *\n- simply complete the order form below and fax it back to 1 - 240 - 371 - 0672\nmake sure that we have your email address so that we can send you a reciept for your transaction .\norder by mail :\nprint the form below and send it together with a money order payable to future tech international for the balance to :\nfuture tech international\nimport export company\n1300 don mills road suite 211\ndon mills ontario , canada\nm 3 b 2 w 6\nplease do not send postal money orders\norder form :\nplease print clearly\nfull name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncompany name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nemail address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ * required field\nshipping address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state / province : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nshipping options :\n[ ] $ 5 . 95 regular mail ( 1 - 2 weeks )\n[ ] $ 12 . 95 priority mail ( 2 - 4 business days )\n[ ] $ 25 . 95 fedex ( overnight ) for us & canada only - int ' l orders extra\nproduct :\n[ ] email marketing cdrom with 100 million addresses $ 69 . 95 usd\n[ ] 200 million email addresses on 2 cd ' s $ 99 . 95\n[ ] 1 . 5 million usa business fax numbers $ 49 . 95 usd\n[ ] combo package - all directories above ( 3 cd ' s ) $ 139 . 95 usd\ntotal : $ _ _ _ _ _ _ _ _ _ usd\n[ ] credit card order [ ] mail order\ncredit card orders fax this order form back to 1 - 240 - 371 - 0672\ncard # : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nexpiry date : _ _ _ _ _ _ _ _ _ _ _ _ _ _\ntype of card [ ] visa [ ] mastercard [ ] american express\nname on card : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbilling address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ zip / postal : _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state / province : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ country : _ _ _ _ _ _ _ _ _ _ _ _ _\nlast 3 digits on reverse of card next to signature : [ ] - [ ] - [ ]\ncardholder signature : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplease note that ft international will appear on your statement .\nfor any questions please feel free to call us at 1 - 416 - 410 - 9364\nto be removed from our database please send a fax to 1 - 970 - 289 - 6524", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.504+0000", "entityId": 5307, "properties": {"text": "Subject: set & forget ! blast your ad over 200 million leads\n2 ) you posted to one of my ffa pages ;\n3 ) you have responded to one of my ads ;\n4 ) you have sent an e - mail to one my addresses\n5 ) you visited one of my sites\nby doing so , you have agreed to receive this message . under bill s .\nl 6 l 8 title iii passed by the 105 th us congress this letter cannot be\nconsidered spam as long as the sender includes contact information &\na method of \" removal . \" however this is a one time mailing so there ' s no\nremoval required . thank you for your kind consideration .\n@ @ @ @ @ @ @ @ @ @ @ @ @ @ disclaimer @ @ @ @ @ @ @ @ @ @ @ @ @", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.508+0000", "entityId": 5308, "properties": {"text": "Subject: come on ! it ' s fun and easy ! !\n* * * please read this email to the end * * *\ntry it . just for fun . it will cost you 25 $ to earn at least thousands of dollars ! ! ! this thing\nis legal because you are buying and selling something of value : marketing reports .\nthere is my true story .\ni received by email the instructions include in this letter . it interests me because the\nsystem was quite simple . in the list of people selling the reports ( as you will see above ) ,\nthere was a guy living not so far . i searched for his phone number and i called him . i just\nwanted to know if this system was really working . he told me his business was going\nvery well and he was receiving from 50 $ to 150 $ in cash everyday ! that ' s why i went\ninto this thing !\nthank ' s to the computer age and the internet !\nbe an internet millionaire like others within a year ! ! !\nbefore you say ' ' bull ' ' , please read the following . this is the letter you have been hearing\nabout on the news lately . due to the popularity of this letter on the internet , a national\nweekly news program recently devoted an entire show to the investigation of this program\ndescribed below , to see if it really can make people money . the show also investigated\nwhether or not the program was legal .\ntheir findings proved once and for all that there are ' ' absolutely no laws prohibiting the\nparticipation in the program and if people can \" follow the simple instruction \" they are\nbound to make some mega bucks with only $ 25 out of pocket cost ' ' .\n= = print this now for your future reference = =\nif you would like to make at least $ 500 , 000 every 4 to 5 months easily and comfortably ,\nplease read the following . . . then read it again and again ! ! !\nfollow the simple instruction below and\nyour financial dreams will come true , guaranteed !\ninstructions :\n= = = = = order all 5 reports shown on the list below = = = = =\nfor each report , send $ 5 cash , the name & number of the report you are\nordering and your e - mail address to the person whose name appears on\nthat list next to the report . make sure your return address is on your\nenvelope top left corner in case of any mail problems .\n= = = when you place your order , make sure = = =\n= = = you order each of the 5 reports ! = = =\nyou will need all 5 reports so that you can save them on your computer and resell them .\nyour total cost $ 5 x 5 = $ 25 . 00 .\nwithin a few days you will receive , via e - mail , each of the 5 reports from these 5 different\nindividuals . save them on your computer so they will be accessible for you to send to the\n1 , 000 ' s of people who will order them from you . also make a floppy of these reports and\nkeep it on your desk in case something happens to your computer .\nimportant - do not alter the names of the people who are listed next to each report ,\nor their sequence on the list , in any way other than what is instructed below in step ' ' 1\nthrough 6 ' ' or you will loose out on the majority of your profits . once you understand the\nway this works , you will also see how it does not work if you change it .\nremember , this method has been tested , and if you alter it , it will not work ! ! ! people\nhave tried to put their friends / relatives names on all five thinking they could get all the\nmoney . but it does not work this way . believe us , some have tried to be greedy and then\nnothing happened . so do not try to change anything other than what is instructed .\nbecause if you do , it will not work for you . remember , honesty reaps the reward ! ! !\nthis is a legitimate business . you are offering a product for sale and getting paid for it .\ntreat it as such and you will be very profitable in a short period of time .\n1 . . after you have ordered all 5 reports , take this advertisement and remove the name\n& address of the person in report # 5 . this person has made it through the cycle and\nis no doubt counting their fortune .\n2 . . move the name & address in report # 4 down to report # 5 .\n3 . . move the name & address in report # 3 down to report # 4 .\n4 . . move the name & address in report # 2 down to report # 3 .\n5 . . move the name & address in report # 1 down to report # 2\n6 . . . . insert your name & address in the report # 1 position .\nplease make sure you copy every name & address accurately ! this is critical\nto your success .\ntake this entire letter , with the modified list of names , and save it on your computer . do\nnot make any other changes .\nsave this on a disk as well just in case if you loose any data . to assist you with\nmarketing your business on the internet , the 5 reports you purchase will provide you with\ninvaluable marketing information which includes how to send bulk e - mails legally , where\nto find thousands of free classified ads and much more . there are 2 primary methods to\nget this venture going :\nmethod # 1 : by sending bulk e - mail legally\nlet ' s say that you decide to start small , just to see how it goes , and we will assume you\nand those involved send out only 5 , 000 e - mails each . let ' s also assume that the mailing\nreceive only a 0 . 2 % ( 2 / 10 of 1 % ) response ( the response could be much better but lets\njust say it is only 0 . 2 % ) . also many peoplewill send out hundreds of thousands e - mails\ninstead of only 5 , 000 each ) .\ncontinuing with this example , you send out only 5 , 000 e - mails . with a 0 . 2 % response ,\nthat is only 10 orders for report # 1 . those 10 people responded by sending out 5 , 000 e -\nmail each for a total of 50 , 000 . out of those 50 , 000 e - mails only 0 . 2 % responded with\norders . that ' s = 100 people responded and ordered report # 2 .\nthose 100 people mail out 5 , 000 e - mails each for a total of 500 , 000 e - mails . the 0 . 2 %\nresponse to that is 1000 orders for report # 3 .\nthose 1000 people send 5 , 000 e - mail each for a total of 5 million e - mail sent out . the\n0 . 2 % response is 10 , 000 orders for report # 4 .\nthose 10 , 000 people send out 5 , 000 e - mails each for a total of 50 , 000 , 000 ( 50 million ) e -\nmails . the 0 . 2 % response to that is 100 , 000 orders for report # 5 .\nthat ' s 100 , 000 orders times $ 5 each = $ 500 , 000 . 00 ( half a million dollars ) .\nyour total income in this example is : 1 . . . . . $ 50 + 2 . . . . . $ 500 + 3 . . . . . $ 5 , 000 + 4 . . . . .\n$ 50 , 000 + 5 . . . . $ 500 , 000 . . . .\ngrand total = $ 555 , 550 . 00\nnumbers do not lie . get a pencil & paper and figure out the worst\npossible responses and no matter how you calculate it , you will\nstill make a lot of money !\nremember friend , this is assuming only 10 people ordering out of\n5 , 000 you mailed to . dare to think for a moment what would happen if everyone or\nhalf or even one 4 th of those people mailed 100 , 000 e - mails each or more ?\nthere are over 150 million people on the internet worldwide and counting , with thousands\nmore coming on line every day . believe me , many people will do just that , and more !\nmethod # 2 : by placing free ads on the internet\nadvertising on the net is very , very inexpensive and there are hundreds of free places\nto advertise . placing a lot of free ads on the internet will easily get a larger response . we\nstrongly suggest you start with method # 1 and add method # 2 as you go along . for\nevery $ 5 you receive , all you must do is e - mail them the report they ordered . that ' s it .\nalways provide same day service on all orders .\nthis will guarantee that the e - mail they send out , with your name and address on it , will\nbe prompt because they can not advertise until they receive the report .\n= = = = = = = = = = = available reports = = = = = = = = = = = = = =\nthe reason for the \" cash \" is not because this is illegal or somehow \" wrong \" . it is simply\nabout time . time for checks or credit cards to be cleared or approved , etc . concealing it\nis simply so no one can see there is money in the envelope and steal it before it gets to\nyou .\norder each report by its number & name only . notes : always send $ 5\ncash ( u . s . currency ) for each report . checks not accepted . make sure the cash is\nconcealed by wrapping it in at least 2 sheets of paper . on one of those sheets of paper ,\nwrite the number & the name of the report you are ordering , your e - mail\naddress and your name and postal address .\nplace your order for these reports now :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = report # 1 : ' the insider ' s\nguide to advertising for free on the net\norder report # 1 from :\ny . l . wong\np . o . box no . 71819\nkowloon central post office\nhong kong\nreport # 2 : the insider ' s guide to sending bulk email on the net\norder report # 2 from :\nmartin veronneau\nc . p . 70058\nlaval , quebec\nh 7 r 5 z 2\ncanada\nreport # 3 : secret to multilevel marketing on the net\norder report # 3 from :\nfrancis kidd\np . o . box 209\nhomestead , pa 15120\nusa\nreport # 4 : how to become a millionaire using mlm & the net\norder report # 4 from :\nm . l . frayser\np . o . box 61432\nfort myers , fl 33906\nusa\nreport # 5 : how to send out one million emails for free\norder report # 5 from :\nstone evans\n600 n . pearl , suite gl 03\ndallas , tx 75201\nusa\n$ $ $ $ $ $ $ $ $ your success guidelines $ $ $ $ $ $ $ $ $ $ $\nfollow these guidelines to guarantee your success :\n= = = if you do not receive at least 10 orders for report # 1 within 2 weeks , continue\nsending e - mails until you do .\n= = = after you have received 10 orders , 2 to 3 weeks after that you should receive 100\norders or more for report # 2 . if you did not , continue advertising or sending e - mails\nuntil you do .\n* * once you have received 100 or more orders for report # 2 , you can relax , because\nthe system is already working for you , and the cash will continue to roll in ! this is\nimportant to remember : every time your name is moved down on the list , you are\nplaced in front of a different report .\nyou can keep track of your progress by watching which report people are\nordering from you . if you want to generate more income send another\nbatch of e - mails and start the whole process again . there is no limit\nto the income you can generate from this business ! ! !\nfollowing is a note from the originator of this program :\nyou have just received information that can give you financial freedom for the rest of your\nlife , with no risk and just a little bit of effort . you can make more money in\nthe next few weeks and months than you have ever imagined . follow the program\nexactly as instructed . do not change it in any way . it works exceedingly well as\nit is now .\nremember to e - mail a copy of this exciting report after you have put your name and\naddress in report # 1 and moved others to # 2 . . . . . # 5 as instructed above . one of the\npeople you send this to may send out 100 , 000 or more e - mails and your name will be on\nevery one of them .\nremember though , the more you send out the more potential customers you will reach .\nso my friend , i have given you the ideas , information , materials and opportunity to\nbecome financially independent .\nit is up to you now !\n= = = = = = = = = = = = = testimonials = = = = = = = = = = = = = = =\n' ' my name is mitchell . my wife , jody and i live in chicago . i am an accountant with a\nmajor u . s . corporation and i make pretty good money . when i received this program i\ngrumbled to jody about receiving ' junk mail ' . i made fun of the whole thing , spouting my\nknowledge of the population and percentages involved . i ' ' knew ' ' it wouldn ' t work . jody\ntotally ignored my supposed intelligence and few days later she jumped in with both feet .\ni made merciless fun of her , and was ready to lay the old ' ' i told you so ' ' on her when the\nthing didn ' t work .\nwell , the laugh was on me ! within 3 weeks she had received 50 responses . within the\nnext 45 days she had received total $ 147 , 200 . 00 . . . . . . . . . all cash ! i was shocked . i have\njoined jodyin her ' ' hobby ' ' .\nmitchell wolf m . d . , chicago , illinois\n' ' not being the gambling type , it took me several weeks to make up my mind to\nparticipate in this plan . but conservative as i am , i decided that the initial investment was\nso little that there was just no way that i wouldn ' t get enough orders to at least get my\nmoney back . i was surprised when i found my medium size post office box crammed\nwith orders . i made $ 319 , 210 . 00 in the first 12 weeks .\nthe nice thing about this deal is that it does not matter where people live . there simply\nisn ' t a better investment with a faster return and so big ' ' .\ndan sondstrom , alberta , canada\n' ' i had received this program before . i deleted it , but later i wondered if i should have given\nit a try . of course , i had no idea who to contact to get another copy , so i had to wait until\ni was e - mailed again by someone else . . . . . . . . . 11 months passed then it luckily came\nagain . . . . . . i did not delete this one ! i made more than $ 490 , 000 on my first try and all the\nmoney came within 22 weeks ' ' .\nsusan de suza , new york , n . y .\n' ' it really is a great opportunity to make relatively easy money with little cost to you . i\nfollowed the simple instructions carefully and within 10 days the money started to come\nin . my first month i made $ 20 , in the 2 nd month i made $ 560 . 00 and by the end of third\nmonth my total cash count was $ 362 , 840 . 00 . life is beautiful , thanx to internet ' ' .\nfred dellaca , westport , new zealand\norder your reports today and get started on your road to\nfinancial freedom !\nif you have any questions of the legality of this program , contact the office of associate\ndirector for marketing practices , federal trade commission , bureau of consumer\nprotection , washington , d . c .\nthis message is sent in compliance of the proposed bill section 301 , paragraph\n( a ) ( 2 ) ( c ) of s . 1618 .\n* this message is not intended for residents in the state of washington , virginia or\ncalifornia , screening of addresses has been done to the best of our technical ability .\n* this is a one - time mailing and this list will never be used again .\n* to be removed from this list , please send an email with the word remove in the\nsubject line to freebie 4 u @ sinatown . com\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.513+0000", "entityId": 5309, "properties": {"text": "Subject: real drugs - viagra and phentrimine !\nreal\ndrugs - viagra and phentrimine\norder all you\nfavorite drugs on line .\nclick\nhere for viagra , phentrimine and more !\nremove yourself from this list by either :\nentering your email address below and clicking remove :\nor\nreply to this message with the word remove in the subject line .\nthis message was sent to address cypherpunks @ einstein . ssz . com\npmguid : 1 dx . 2 pdp . fsi 52\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.519+0000", "entityId": 5310, "properties": {"text": "Subject: you may want to look into funding from grants . . . .\ngovernment grants e - book 2002 edition\nyou can receive the money you need . . .\nevery day millions of dollars are given away to people , just like you ! !\nyour government spends billions of tax dollars on government grants .\ndo you know that private foundations , trust and corporations are\nrequired to give away a portion of theirs assets . it doesn ' t matter ,\nwhere you live ( usa only ) , your employment status , or if you are broke , retired\nor living on a fixed income . there may be a grant for you !\nanyone can apply for a grant from 18 years old and up !\nwe will show you how & where to get grants . this book is newly updated with the most current information ! ! !\ngrants from $ 500 . 00 to $ 50 , 000 . 00 are possible !\ngrants don ' t have to be paid back , ever !\ngrants can be ideal for people who are or were bankrupt or just have bad credit .\nplease visit our website\nand place your order today ! click here\nwe apologize for any email you may have inadvertently received .\nplease click here to be removed from future mailings .\n[ jk 9 ^ \" : } h & * tgobk 5 nkiys 5 ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.528+0000", "entityId": 5311, "properties": {"text": "Subject: 35 % lifetime renewals - unbeatable product !\ndon ' t forget to visit our web\nsite !\nplease fill out the form below for\ncontracting information and marketing supplies\nfirst name :\nlast name :\ne - mail :\nphone :\naddress :\naddress 2 :\ncity :\nstate :\nzip :\nwe\ndon ' t want anybody to receive our mailing who does not wish to\nreceive them . this is professional communication sent to insurance\nprofessionals . to be removed from this mailing list , do not reply\nto this message . instead , go here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.534+0000", "entityId": 5312, "properties": {"text": "Subject: look ! y o u are a w i n n e r here ! - don ' t miss out ! ! 6674\nf i n a l n o t i c e !\nnew program pays you immediately !\nget started today\nwith usa ' s fastest growing business opportunity\nnot mlm !\nhere you get paid large checks the same day !\nuse the internet to make money 24 hours a day !\ni made unbelievable $ 21 , 000 in june !\n. . and will prove it , if you wish !\neverybody can do this !\n- a u t o p i l o t system ! -\nour system generates all leads for you !\nminimum cash outlay gets you started today !\nprogram available in us and canada only !\nare you ready to change your life ?\nto receive free info about this last offer ,\nplease send an email to : rickbellrist @ excite . com\nwith \" send info \" in the subject line ! !\n( do not click reply ! )\nto remove , please send an email with \" remove \"\nin the subject line to : rickbellrist @ excite . com\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.539+0000", "entityId": 5313, "properties": {"text": "Subject: you ' ve won ! confirmation number 567842\nyou are receiving this email\nas a subscriber to the dealsuwant mailing list . to remove yourself\nfrom this and related email lists click here :\nunsubscribe my\nemail\nunder bill ( s ) 1618 title iii by the 105 us congress , per section\n301 , paragraph ( a ) ( 2 ) of s . 1618 , a letter cannot be consideyellow\nspam if the sender includes contact information and a method\nof removal .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.543+0000", "entityId": 5314, "properties": {"text": "Subject: does financial freedom interest you ?\neasy 30 - 50 % return ?\nlearn how you can receive a monthly check for 3 , 4 , or 5 %\na month until your initial investment is paid off . . . then a\nmonthly check for over 4 % a month for years to come . . .\nwe know it sounds impossible , but it ' s happening today .\nfor complete information on this\nmulti - trillion dollar industry :\nhttp : / / market . pakoa . com / cl 6\nto opt out :\nplease go to our \" \" opt - out \" \" website :\n[ jk 9 ^ \" : } h & * tgobk 5 nkiys 5 ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.548+0000", "entityId": 5315, "properties": {"text": "Subject: banned cd ! banned cd !\ni have been receiving emails saying that i ' m contributing to the \" moral decay of society \" by selling the banned cd . that may be , but i feel strongly that you have a right to benefit from\nthis hard - to - find information .\nso i am giving you one last chance to order the banned cd !\nwith this powerful cd , you will be able to investigate your friends , enemies and lovers in just minutes using the internet . you can track down old flames from college , or you can dig up some dirt on your boss to make sure you get that next promotion !\nor maybe you want a fake diploma to hang on your bedroom wall . you ' ll find addresses for companies that make these diplomas on the banned cd .\nneed to disappear fast and never look back ? no problem !\nusing the banned cd , you will learn how to build a completely\nnew identity .\nobviously , the powers that be don ' t want you to have the banned cd . they have threatened me with lawsuits , fines , and even imprisonment unless i stop selling it immediately . but i feel that you have a constitutional right to access this type of information , and i can ' t be intimidated .\nuncle sam and your creditors are horrified that i am still selling this product ! there must be a price on my head !\nwhy are they so upset ? because this cd gives you freedom .\nand you can ' t buy freedom at your local walmart . you will\nhave the freedom to avoid creditors , judgments , lawsuits , irs\ntax collectors , criminal indictments , your greedy ex - wife or\nex - husband , and much more !\nplease click the url for the detail !\nhttp : / / % 32 % 317 . % 31 % 30 % 36 . % 355 % 2 e 97\n{ % rand % }\nyou are receiving this special offer because you have provided permission to receive third party email communications regarding special online promotions or offers . we strongly oppose the use of spam email and do not want to send our mailings to anyone who does not wish to receive them . if you do not wish to receive any further messages from netcommission . to be removed from our list ,\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.552+0000", "entityId": 5316, "properties": {"text": "Subject: re : doctor approved pill lgw\na man endowed with a 7 - 8 \" hammer is simply\nbetter equipped than a man with a 5 - 6 \" hammer .\nwould you rather havemore than enough to get the job done or fall short . it ' s totally upto you . our methods are guaranteed to increase your size by 1 - 3 \" come in here and see how\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.557+0000", "entityId": 5317, "properties": {"text": "Subject: have skin like a model\nwe ' ll\ngive you your first tube of body sculpture free ! !\nlet us bill your credit card for $ 5 . 99 for shipping\nand handling and we ' ll send you your first bottle of body sculpture free .\nfour weeks after you place your order , your credit card will automatically\nbe billed for $ 22 . 95 plus $ 5 . 99 shipping and handling and your next bottle\nof body sculpture will be sent to your mailing address !\nclick\nhere !\nif you would no longer like to receive these offers via email , you can unsubscribe by sending a blank email to unsub - 60763006 - 1054 @ top - special - offers . com\nor\nsending a postal mail to customerservice , box 202885 , austin , tx 78720\nthis message was sent to address cypherpunks @ einstein . ssz . com\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.563+0000", "entityId": 5318, "properties": {"text": "Subject: * free real estate info ! *\ngreat news webmaster ,\nfinally - a foreclosure tycoon reveals his most closely guarded secrets !\nfor the first time ever , we are proud to bring you foreclosure ' s most closely guarded secrets - a complete , turn - key system to either owning your own home or making a fortune in foreclosure real estate without tenants , headaches and bankers .\nfree information for a revolutionary brand - new approach to show you exactly how to buy a foreclosure or make a fortune in foreclosure real estate in today ' s market .\nare you ready to take advantage of this amazing information ?\nwebmaster , take this first step to improving your life in the next 2 minutes !\nfor free information click here :\nto unsubscribe or change subscriber options click :\nclick here\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.568+0000", "entityId": 5319, "properties": {"text": "Subject: free adult dvds . no purchase necessary . . . to : yyyy @ netnoteinc . com id : ksdk\nto : yyyy @ netnoteinc . com\n# #\n# adult online super store #\n# shhhhhh . . . #\n# you just found the internet ' s #\n# best kept secret ! ! ! #\n# 3 vivid dvds absolutely free ! ! ! #\n# #\n> > > > > > > > > no purchase necessary ! > > > > > > > > no purchase necessary ! < < < < < < < < < < <\n# #\n# don ' t forget to forward this email to #\n# all your friends for the same deal . . . #\n# there is a new free dvd and vhs video #\n# available every week for your viewing #\n# pleasure . #\n# #\nremoval instructions :\nyou have received this advertisement because you have opted in to receive\nfree adult internet offers and specials through our affiliated websites . if\nyou do not wish to receive further emails or have received the email in\nerror you may opt - out of our database here http : / / 209 . 203 . 162 . 20 / optout . html\n. please allow 24 hours for removal .\nthis e - mail is sent in compliance with the information exchange promotion\nand privacy protection act . section 50 marked as ' advertisement ' with valid\n' removal ' instruction .\nfaarakxavoxcadetxjpir", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.574+0000", "entityId": 5320, "properties": {"text": "Subject: your application is below . expires july 27 .\nyour application for the grant is below . remember , because of the type of grant this is , you will never need to repay !\n> >\ntime is limited .\nyou must place your order by midnight , saturday july 27 , 2002\nin order to secure a place in these programs .\ntoo many people can qualify for this program , so by limiting the initial applicants\nto the most serious , sincere and honest individuals . it will ensure that the\nprogram money is used for beneficial , constructive uses .\nremember there is no risk on your part .\nalso , each grant is usually a minimum of $ 10 , 000 , so this is a great opportunity !\nsee if you are eligible for a larger grant !\nif you do not qualify for the free grant program , you lose nothing !\nbut if you don ' t even apply , you lose everything ! remember ,\nnot everyone gets this opportunity ,\nand you get to be one of the first people to apply !\nso your chances are so much higher !\napply now !\ndeadline is almost here !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.578+0000", "entityId": 5321, "properties": {"text": "Subject: telemarketers earn $ 250 + per lead uio\nfinancial services company will pay a minimum of $ 250 . 00 ( max . of $ 1000 . 00 ) for every lead that results in a sale . currently many of our telemarketers are earning more than $ 5000 . 00 a month !\nfor more information call ( 402 ) 996 - 9002 and leave your contact information . we will get in touch with you within 2 - 3 business days .\n* * please note that we do not provide any training or resources to telemarketers * *\nto unsubscribe please send us an email with \" unsubscribe \" in the subject line to : telemark _ 0702 @ hotmail . com .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.583+0000", "entityId": 5322, "properties": {"text": "Subject: life - time upgrades for freeq 4 ili 6 p 8\nbelow is the result of your feedback form . it was submitted by\n( blowdamovie @ atlas . cz ) on monday , july 22 , 2002 at 12 : 37 : 15\n: why spend upwards of $ 4000 on a dvd burner when we will show you an alternative that will do the exact same thing for just a fraction of the cost ? copy your dvd ' s now . best price on the net . click here : http : / / 010 @ www . dvdcopyxp . com / cgi - bin / enter . cgi ? marketing _ id?xo 07 click to remove http : / / 011 @ www . spambites . com / cgi - bin / enter . cgi ? spambytes _ id \u0010 0115\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.587+0000", "entityId": 5323, "properties": {"text": "Subject: want to make a million ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !\nwant to make a million bucks this year ?\nme too but it ' s probably not going happen !\nhowever if your looking for the opportunity to\nmake a couple thousand a week ,\nworking form home , with your pc , we need to talk .\nif you ' re over 18 and a us resident ,\njust click reply\nsend me your name , state ,\ncomplete telephone number ,\nand the best time to contact you .\ni will personally speak with you within 48 hours .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.592+0000", "entityId": 5324, "properties": {"text": "Subject: the database that bill gates doesnt want you to know about ! ! ! ! !\nimportant notice : regarding your domain name\n* if you own a . com / . net / . org , you are advised to register\nyour . ws \" web site \" domain before someone else takes it forever .\n* major corporations such as yahoo , att & intel , have all\nregistered their . ws \" web site \" domains for their company names\nas well as all their trademarks , to protect them forever .\n* . ws \" web site \" domains are in 180 + countries worldwide\n* availability for . ws is ~ 88 % compared to ~ 24 % for . com\nwe thought you ' d find the article on . ws below interesting .\nif you want more information on where to register . ws \" web site \"\ndomains , and how to get a discount on multiple registrations ,\ncontact us at http : / / www . netleads . ws / morgan\nalso , if you would like to increase traffic to your web site ,\nby submitting your url to 500 + search engines and directories\nat once , then call us today .\nsincerely ,\njoe & stacy morgan\n+ 1 . 888 . 660 . 0625\ninternet names , llc .\n# # # # # # # # # # # # # # # # # # # # # # # # #\nnews release :\n. ws ( website ) domains strikes landmark deal :\ngdi receives $ 2 , 250 , 860 for the rights to 311 \" premium \" . ws domain\nnames .\n- - -\nlast week , gdi ( global domains international , inc . ) , the registry for . ws\n\" web site \" domains , closed a deal with a large publicly traded company ,\none of the biggest players in the . com arena , and received payment in\nfull of $ 2 , 250 , 860 for the rights to a select group of \" premium \" . ws\ndomain names . the 311 domain names will be resold to the highest\nbidders and ultimately developed into substantial . ws web sites , giving\n. ws even more publicity down the road .\nto be be removed http : / / www . netleads . ws / remove", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.596+0000", "entityId": 5325, "properties": {"text": "Subject: strictly private .\ngooday ,\nwith warm heart my friend , i send you my greetings , and i hope this letter meets you in good time .\nit will be surprising to you to receive this proposal from me since you do not know me personally . however , i am sincerely seeking your confidence in this transaction , which i propose with my free mind and as a person of intergrity . i have kept it to myself for a long time , and now i need to act , as time is not on my side . i want you to open - heartedly read through and give me your most needed support . i got your address from an internet directory , in my search for a contact . i apologize if this is not acceptable to you . the purpose of this letter is to seek your most needed assistance .\nmy name is donald phiri , the farm supervisor and personal assistant to mr . david stevens , a very popular and rich farmer from macheke , zimbabwe . my master was murdered in cold blood in my presence on 15 of april 2001 , due to the land dispute and political situation in my country , as a result of my master ' s financial support for the mdc ( movement for democratic change ) , the main opposition party to president mugabe ' s party , zimbabwe african national union patriotic front ( zanu - pf ) . for more information on my master ' s murder , you may check the amnesty international country report on zimbabwe for the year 2001 .\nwhen the pressure on white farmers started in zimbabwe due to the support given to the war veterans by president mugabe to invade farms and force out white farmers , my master forsaw the danger ahead , he then closed his major bank accounts , and together , we went to johannesburg , south africa to deposit the sum of $ 14 . 5 million ( fourten million , five hundred thousand usdollars ) , in a private security company , for safety . this money was deposited in a box in my name , as my master was being secretive with his name , as the south african government of thambo mbeki is in support of president mugabe ' s actions . the box is labeled as gemstones . my master had planned to use this money for the purchase of lands , new machines and chemicals for establishment of new farms in botswana . he has used this company in the past to move money for the purchase of tractors and farm equipment from europe . my master is divorced , and his wife valerie , and only child , diana have relocated to bradford , !\nen !\ngland for 9 years now .\ni am currently in the netherlands where i am seeking political asylum . i have now decided to transfer my master ' s money into an account for security and safety reasons . this is why i am anxiously and humbly seeking for your genuine assistance in transfering this money into an account without the knowledge of my government who are bent on taking everything my master left . you have to understand that this decision taken by me entrusts so much to you .\nif you accept to assist me , all i want you to do for me , is to make an arrangements with the security company to clear the box containing the money from their office here in the netherlands , and then we will transfer the money into an account . you may open a new account for this purpose . i have applied to the security company to transfer the box from south africa to their branch here , which they have done .\nto legally process the claim of the box , i will contact a lawyer to help me prepare a change of ownership and letter of authority to enable them recognise you as my representative , and deliver the box to you . i have with me , the certificate used to deposit the box , which we will need for claiming the box .\nfor valuable assistance , i am offering you 10 % ( $ 1 , 450 , 000 ) of the total money . i have also set aside 1 % ( $ 145 , 000 ) of this money for all kinds of expenses that come our way in the process of this transaction , and 4 % ( $ 580 , 000 ) , will be given to charity in my master ' s name i will give 25 % ( $ 3 , 625 , 000 ) to valerie and diana , after my share of the money has been transfered back to me . when they grant my asylum application , my share of the money ( 85 % ) , will be transfered back to me , into an account i will solely own . i also intend to start up a business then . if you have knowledge of farming business in your country , or other areas of possible business investment that i may be interested in , please inform me , so that my some of my share of the money can be invested for the time being .\nplease , i want to you maintain absolute secrecy for the purpose of this transaction due to my safety and successful conclusion of the transaction .\ni look forward to your reply and co - operation , and i am sure it will be nice to extend ties with you .\nyours sincerely ,\ndonald phiri .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.601+0000", "entityId": 5326, "properties": {"text": "Subject: learn the secrets of investing in real estate today !\nyour\nfriend and personal mentor , lou vukas\nyou are\nreceiving this email because you requested to receive info and updates via\nemail .\nto unsubscribe , reply to this email with \" unsubscribe \" in the subject or\nsimply click on the following link : unsubscribe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.606+0000", "entityId": 5327, "properties": {"text": "Subject: request for assistance\nbarrister adewale coker chambers\nlegal practitioners / notary public\nblk 804 - law house building\nlagos - nigeria .\nfor your kind attention ,\nrequest for assistance\nit is my humble pleasure to write you this letter irrespective of the fact that you do not know me . however , i am in search of a reliable and trustworthy person that can handle a confidential transaction of this nature .\ni am barrister adewale coker , a family lawyer to our former military rule , general sani abacha who died suddenly in power some years ago . since his untimely demise , the family has suffered a lot of harassment from the regimes that succeeded him . the regime and even the present civilian government are made up of abacha ' s enemies . recently , the wife was banned from traveling outside kano state their home state as a kind of house arrest and the eldest son still in detention . although , a lot of money have been recovered from mrs . abacha since the death of her husband by the present government , there ' s still huge sums of money in hard currencies that we have been able to move out of the country for safe keeping to the tune of us $ 50 million . this money us $ 50 million is already in north american and if you are interested , we will prepare you as the beneficiary of the total funds , and you will share 25 % of the total funds after clearance from the security company .\nnote , there is no risk involved in this project because l am involved as abacha ' s confidant . please you should keep this transaction a top secret and we are prepared to do more business with you pending your approach towards this project . i await your urgent response . thanks .\nyours faithfully\nbarrister adewale coker .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.611+0000", "entityId": 5328, "properties": {"text": "Subject: lock in your clients ' gains !\na winning combination : the market\nchoice iiism from north american\ncompany for life health insurance and safe harbor financial !\nchoose from up to five different\nindex accounts : sp 500 , djiasm ,\nsp midcap 400 , russell 2000 ,\nnasdaq - 1001\nor , choose the security of the fixed account !\n16 % commission * 80 % participation rate * *\nno risk of loss from market declines !\nyour clients will love the security of this outstanding product !\nannual transfer options available :\nchange premium allocation after each contract anniversary .\ntwo different annual reset crediting\nmethods : daily average or annual point - to - point ( no average ) .\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nfor agent use only . not intended for\nconsumer solicitation purposes . the market choice iii ( sm ) annuity\nis issued on form series lcl 15 ( group ) and lsl 15 a ( individual ) , and\nstate variations by north american company for life and health insurance ,\nchicago , illinois . this product and its features may not be available\nin all states . dow jones , dow jones industrial average\n( sm ) and djia ( sm ) are service marks of dow jones\nand company , inc . and have been licensed for use for certain purposes\nby north american company . russell 2000 index is a trademark of frank\nrussell company and has been licensed for use by north american company .\nstandard poor ' s , sp ,\nsp 500 , standard poor ' s 500 index ,\nsp midcap 400 index and standard\npoor ' s midcap 400 index are trademarks of the mcgraw - hill\ncompanies , inc . and have been licensed for use by north american company .\nthe nasdaq - 100 , nasdaq - 100 index and nasdaq are registered\nmarks of the nasdaq stock market inc . ( which with its affiliates are\nthe corporations ) and are licensed for use by north american\ncompany . the market choice iii ( sm ) annuities are not issued , endorsed ,\nsold or promoted by the corporations or any of the indexes listed\nabove . the corporations make no warranties and bear no liability with\nrespect to the market choice iii ( sm ) . * commissions are based upon\nrates as of 5 / 1 / 02 . commissions may vary by state and are subject\nto change . * * participation rates are based upon rates as of 7 / 3 / 02\nand are subject to change . participation rate is based on the sp\n500 and djia ( sm ) and the daily average crediting method . call\nsafe harbor for additional details on other indexes and participation\nrates . lnasdaq - 100 is available on the point - to - point\nindex crediting option only . 2 contracting bonus will be\npaid once contracting with safe harbor is complete and formal .\nndf - 8079 z - adii - 421 prt . 7 / 02 exp . 9 / 15 / 2002\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.616+0000", "entityId": 5329, "properties": {"text": "Subject: make thousands just sending emails . it ' s easy .\nfrom : @ yahoo . com\nto :\nsubject : earn money sending e - mails . it ' s easy !\nnew improved reports\ndear friend ,\nyou can earn a lot of money in the next 90 days sending e - mail .\nseem impossible ? is there a catch ? no , there is no catch ; just\nsend your e - mails and be on your way to financial freedom .\nbasically , i send out as many of these e - mails as i can , then\npeople send me cash in the mail for information that i just e - mail\nback to them . everyday , i make a three minute drive to my p . o . box\nknowing that there are at least a few hundred dollars waiting for\nme . and the best part , it is completely legal .\njust read the next few paragraphs and see what you think . if you\nlike what you read , great ! if you don ' t , read it again because you\nmust have missed something .\n\" as seen on national television \"\n\" making over a half million dollars every 6 months from your home\nfor an investment of only $ 25 us dollars expense one time . thanks\nto the computer age and the internet , be a millionaire like others\nwithin a year ! ! ! before you say , \" no way ! \" read the following .\nthis is the letter you ' ve been reading about in the news lately .\ndue to the popularity of this letter on the internet , a major\nnightly news program recently devoted an entire show to the\ninvestigation of the program described below to see if it really\ncan make people money .\nthe show also investigated whether or not the program was legal .\ntheir findings proved once and for all that there are absolutely\nno laws prohibiting the participation in this program . this has\nhelped to show people that this is a simple , harmless , and fun way\nto make some extra money at home . and , besides even if you never\ngot involved in the program , the reports themselves are well worth\nthe money . they can help you start and advertise any business on\nthe internet . that is , these reports stand alone and are\nbeneficial to anyone wishing to do business on the internet .\nthe results of this show have been truly remarkable . so many\npeople are participating that those involved are doing much better\nthan ever before . since everyone makes more as more people try it\nout , its been very exciting to be a part of it lately . you will\nunderstand once you experience it .\n\" here it is below \"\n* * * print this now for future reference * * *\nthe following income opportunity is one you may be interested in\ntaking a look at . it can be started with very little investment\n( $ 25 ) and the income return is tremendous ! ! !\nthis is a legitimate , legal , money making opportunity .\nit does not require you to come into contact with people , do any\nhard work , and best of all , you never have to leave your house\nexcept to get the mail .\nsimply follow the instructions , and you really can make this\nhappen . this e - mail order marketing program works every time if\nyou put in the effort to make it work . e - mail is the sales tool of\nthe future . take advantage of this non - commercialized method of\nadvertising now !\nthe longer you wait , the more savvy people will be taking your\nbusiness using e - mail . get what is rightfully yours . program\nyourself for success and dare to think big . it sounds corny , but\nit ' s true . you ' ll never make it big if you don ' t have this belief\nsystem in place .\nmulti - level marketing ( mlm ) has finally gained respectability . it\nis being taught in the harvard business school , and both stanford\nresearch and the wall street journal have stated that between 50 %\nand 65 % of all goods and services will be sold through multi - level\nmethods .\nthis is a multi - billion dollar industry and of the 500 , 000\nmillionaires in the u . s . , 20 % ( 100 , 000 ) made their fortune in the\nlast several years in mlm . moreover , statistics show 45 people\nbecome millionaires everyday through multi - level marketing .\nyou may have heard this story before , but donald trump made an\nappearance on the david letterman show . dave asked him what he\nwould do if he lost everything and had to start over from scratch .\nwithout hesitating trump said he would find a good network\nmarketing company and get to work .\nthe audience , started to hoot and boo him . he looked out at the\naudience and dead - panned his response . \" that ' s why i ' m sitting up\nhere and you are all sitting out there ! \"\nwith network marketing you have two sources of income . direct\ncommissions from sales you make yourself and commissions from\nsales made by people you introduce to the business .\nresidual income is the secret of the wealthy . it means investing\ntime and money once , and getting paid again and again and again .\nin network marketing , it also means getting paid for the work of\nothers .\nthe enclosed information is something i almost let slip through my\nfingers . fortunately , sometime later i reread everything and gave\nsome thought and study to it .\nmy name is jonathan rourke . two years ago , the corporation i\nworked at for the past twelve years down - sized and my position\nwas eliminated . after unproductive job interviews , i decided to\nopen my own business . over the past year , i incurred many\nunforeseen financial problems . i owed my family , friends and\ncreditors over $ 35 , 000 . the economy was taking a toll on my\nbusiness and i just couldn ' t seem to make ends meet . i had to\nrefinance and borrow against my home to support my family and\nstruggling business . at that moment something significant happened\nin my life and i am writing to share that experience in hopes that\nthis will change your life forever financially ! ! !\nin mid december , i received this program via e - mail . six month ' s\nprior to receiving this program , i had been sending away for\ninformation on various business opportunities . all of the programs\ni received , in my opinion were not cost effective . they were\neither too difficult for me to comprehend or the initial\ninvestment was too much for me to risk to see if they would work\nor not . one claimed that i would make a million dollars in one\nyear . it didn ' t tell me i ' d have to write a book to make it !\nbut like i was saying , in december i received this program . i\ndidn ' t send for it , or ask for it ; they just got my name off a\nmailing list . thank goodness for that ! ! !\nafter reading it several times , to make sure i was reading it\ncorrectly , i couldn ' t believe my eyes .\nhere was a money making phenomenon .\ni could invest as much as i wanted to start without putting me\nfurther into debt . after i got a pencil and paper and figured it\nout , i would at least get my money back . but like most of you i\nwas still a little skeptical and a little worried about the legal\naspects of it all . so i checked it out with the u . s . post office\n( 1 - 800 - 725 - 2161 24 hrs ) and they confirmed that it is indeed\nlegal ! after determining the program was legal and not a chain\nletter , i decided \" why not . \"\ninitially i sent out 10 , 000 e - mails . it cost me about $ 15 for my\ntime on - line . the great thing about e - mail is that i don ' t need\nany money for printing to send out the program , and because all of\nmy orders are filled via e - mail , the only expense is my time . i am\ntelling you like it is . i hope it doesn ' t turn you off , but i\npromised myself that i would not ' rip - off \" anyone , no matter how\nmuch money it cost me .\nhere is the basic version of what you need to do :\nyour first goal is to receive at least 20 orders for report # 1\nwithin 2 weeks of your first program going out . if you don ' t , send\nout more programs until you do .\nyour second goal is to receive at least 150 + orders for report # 2\nwithin 4 weeks . if not , send out more programs until you do .\nonce you have your 150 orders , relax , you ' ve met your goal . you\nwill make $ 50 , 000 + but keep at it ! if you don ' t get 150 right off ,\nkeep at it ! it may take some time for your down line to build .\nkeep at it , stay focused , and do not let yourself get distracted .\nin less than one week , i was starting to receive orders for report\n# 1 . i kept at it - kept mailing out the program and by january 13 ,\n1 had received 26 orders for report # 1 . my first step in making\n$ 50 , 000 in 90 days was done .\nby january 30 , 1 had received 196 orders for report # 2 ; 46 more\nthan i needed . so i sat back and relaxed . by march 1 , of my\ne - mailing of 10 , 000 , i received $ 58 , 000 with more coming in every\nday . i paid off all my debts and bought a much needed new car .\nplease take time to read the attached program , it will change your\nlife forever ! ! remember , it won ' t work if you don ' t try it . this\nprogram does work , but you must follow it exactly ! especially the\nrules of not trying to place your name in a different place . it\nwon ' t work , you ' ll lose out on a lot of money !\nin order for this program to work very fast , try to meet your goal\nof 20 + orders for report # 1 , and 150 + orders for report # 2 and you\nwill make $ 50 , 000 or more in 90 days . if you don ' t reach the first\ntwo goals with in four weeks , relax , you will still make a ton of\nmoney , it may take a few months or so longer . but keep mailing out\nthe programs and stay focused ! that ' s the key . i am living proof\nthat it works ! ! ! if you choose not to participate in this program ,\ni am sorry . it really is a great opportunity with little cost or\nrisk to you . if you choose to participate , follow the program and\nyou will be on your way to financial security .\nif you are a fellow business owner and are in financial trouble\nlike i was , or you want to start your own business , consider this\na sign . i did ! - sincerely , jonathan rourke\np . s . do you have any idea what 11 , 700 $ 5 bills ( $ 58 , 000 ) look\nlike piled up on a kitchen table ? it ' s awesome !\na personal note from the originator of this program :\nby the time you have read the enclosed program and reports , you\nshould have concluded that such a program , and one that is legal ,\ncould not have been created by an amateur .\nlet me tell you a little about myself . i had a profitable business\nfor 10 years . then in 1979 my business began falling off . i was\ndoing the same things that were previously successful for me , but\nit wasn ' t working .\nfinally , i figured it out . it wasn ' t me ; it was the economy .\ninflation and recession had replaced the stable economy that had\nbeen with us since 1945 .\ni don ' t have to tell you what happened to the unemployment\nrate . . . because many of you know from first hand experience . there\nwere more failures and bankruptcies than ever before .\nthe middle class was vanishing . those who knew what they were\ndoing invested wisely and moved up . those who did not including\nthose who never had anything to save or invest were moving down\ninto the ranks of the poor .\nas the saying goes , ' the rich get richer and the poor get poorer . \"\nthe traditional methods of making money will never allow you to\n\" move up \" or \" get rich \" . inflation will see to that .\nyou have just received information that can give you financial\nfreedom for the rest of your life , with \" no risk \" and \" just a\nlittle bit of effort . \" you can make more money in the next few\nmonths than you have ever imagined .\nfollow the program exactly as instructed . do not change it in any\nway . it works exceedingly well as it is now . remember to e - mail a\ncopy of this exciting report to everyone you can think of . one of\nthe people you send this to may send out 50 , 000 . . . and your name\nwill be on everyone of them !\nremember though , the more you send out the more potential\ncustomers you will reach .\nso my friend , i have given you the ideas , information , materials\nand opportunity to become financially independent . it is up to\nyou now !\n\" think about it . \" before you delete this program from your\nmailbox , as i almost did , take a little time to read it and really\nthink about it . get a pencil and figure out what could happen when\nyou participate . figure out the worst possible response and no\nmatter how you calculate it , you will still make a lot of money !\nyou will definitely get back what you invested . any doubts you\nhave will vanish when your first orders come in . it works ! - jody\njacobs , richmond , va\nhere ' s how this amazing program will make you thousands of dollar $\nthis method of raising capital really works 100 % every time . i am\nsure that you could use up to $ 50 , 000 or more in the next 90 days .\nbefore you say \" no way ! \" please read this program carefully . this\nis not a chain letter , but a perfectly legal money making\nopportunity . basically , this is what you do : as with all\nmultilevel businesses , we - build our business by recruiting new\npartners and selling our products . every state in the usa allows\nyou to recruit new multilevel business partners , and we offer a\nproduct for every dollar sent . your orders come by mail and are\nfilled by e - mail , so you are not involved in personal selling . you\ndo it privately in your own home , store , or office .\nthis is the greatest multi - level mail order marketing anywhere :\nthis is what you must do .\n1 . order all 5 reports shown on the list below ( you can ' t sell\nthem if you don ' t have them ) .\n* for each report , send $ 5 . 00 cash , the name & number of the\nreport you are ordering , your e - mail address , and your name &\nreturn address ( in case of a problem ) .\n* make sure your return address is on your envelope - in case of\nany mail problems !\n* when you place your order , make sure you order each of the five\nreports . you need all five reports so that you can save them on\nyour computer and resell them .\n* within a few days you will receive , via e - mail , each of the five\nreports . save them on your computer so they will be accessible for\nyou to send to the 1 , 000 ' s of people who will order them from you .\n2 . important - do not alter the names of the people who are listed\nnext to each report , or their order\non the list in any way other than as instructed below in steps \" a \"\nthrough ' g \" or you will lose out on the majority of your profits .\nonce you understand the way this works you ' ll also see how it\ndoesn ' t work if you change it . remember , this method has been\ntested , and if you alter it , it will not work .\na . look below for the listing of available reports .\nb . after you ' ve ordered the . five reports , take this advertisement\nand remove the name and address under report # 5 . this person has\nmade it through the cycle and is no doubt counting their $ 50 , 000 !\nc . move the name and address under report # 4 down to report # 5 .\nd . move the name and address under report # 3 down to report # 4 .\ne . move the name and address under report # 2 down to report # 3\nf . move the name and address under report # 1 down to report # 2 .\ng . insert your name and address in the report # 1 position .\nplease make sure you copy every name and address accurately ! copy\nand paste method works well , .\n3 . take this entire letter , including the modified list of names ,\nand save it to your computer . make no changes to the instruction\nportion of this letter .\nyour cost to participate in this is practically nothing ( surely\nyou can afford $ 25 ) . you obviously already have an internet\nconnection and e - mail is free !\nto assist you with marketing your business on the internet , the 5\nreports you purchase will provide you with invaluable marketing\ninformation which includes how to send bulk e - mails , where to find\nthousands of free classified ads and much , much more .\nhere are two primary methods of building your downline :\nmethod # 1 : sending bulk e - mail\nlet ' s say that you decide to start small , just to see how it goes ,\nand we ' ll assume you and all those involved send out only 2 , 000\nprograms each . let ' s also assume that the mailing receives a 0 . 5 %\nresponse . using a good list , the response could be much better .\nalso , many people will send out hundreds of thousands of programs\ninstead of 2 , 000 . but continuing with this example , you send out\nonly 2 , 000 programs . with a 0 . 5 % response , that is only 10 orders\nfor report # 1 . those 10 people respond by sending out 2 , 000\nprograms each for a total of 20 , 000 . out of those 0 . 5 % , 100 people\nrespond and order report # 2 .\nthose 100 mail out 2 , 000 programs each for a total of 200 , 000 . the\n0 . 5 % response to that is 1 , 000 orders for report # 3 . those 1 , 000\nsend out 2 , 000 programs each for a 2 , 000 , 000 total . the 0 . 5 %\nresponse to that is i 0 , 000 orders for report # 4 . that amounts to\n10 , 000 each of $ 5 bills for you in cash money ! then think about\nlevel five ! that ' s $ 500 , 000 alone !\nyour total income in this example is $ 50 + $ 500 + $ 5 , 000 + $ 50 , 000\n+ $ 500 , 000 for a total of $ 555 , 550 ! ! !\nremember friend , this is assuming 1 , 990 out of the 2 , 000 people\nyou mail to will do absolutely nothing and trash this program !\ndare to think for a moment what would happen if everyone , or half\nsent out 100 , 000 programs instead of 2 , 000 . believe me , many\npeople will do just that and more !\nreport # 2 will show you the best methods for bulk e - mailing , and\ne - mail software .\nmethod # 2 - placing free ads on the internet\n1 . advertising on the net is very , very inexpensive , and there are\nhundreds of free places to advertise . let ' s say you decide to\nstart small just to see how well it works . assume your goal is to\nget only 10 people to participate on your first level . placing a\nlot of free ads on the internet will easily get a larger response .\nalso assume that everyone else in your organization gets only 10\ndownline members . follow this example to achieve the staggering\nresults below : lst level - your 10 members with $ 5 . . . . . . . $ 50\n2 nd level - 10 members from those 10 ( $ 5 x 100 ) . . . . . . . $ 500\n3 rd level - 10 members from those 100 ( $ 5 x 1 , 000 ) . . . . . . . $ 5 , 000\n4 th level - 10 members from those 1 , 000 ( $ 5 x 10 k ) . . . . . . . $ 50 , 000\n5 th level - 10 members from those 10 , 000 ( $ 5 x 100 k ) . . . . . . . $ 500 , 000\nthis totals - $ 555 , 550\nremember friends , this assumes that the people who participate\nonly recruit 10 people each . think for a moment what would happen\nif they got 20 people to participate ! most people get 100 ' s of\nparticipants .\nthink about it ! for every $ 5 . 00 you receive , all you must do is\ne - mail them the report they ordered . that ' s it ! always provide\nsame - day service on all orders ! this will guarantee that the\ne - mail they send out with your name and address on it will be\nprompt because they can ' t advertise until they receive the report !\navailable reports * * * order each report by number , and\nname * * *\n* always send $ 5 cash ( u . s . currency ) for each report . checks not\naccepted * - always send your order via first class mail - make\nsure the cash is concealed by wrapping it in at least two sheets\nof paper ( so that the bill can ' t be seen against light ) on one of\nthose sheets of paper include :\n( a ) the number & name of the report you are ordering ,\n( b ) your e - mail address , and\n( c ) your name & postal address ( in case your e - mail provider\nencounters problems ) .\nplace your order for these reports now :\nreport # 1 \" the insiders guide to advertizing for free on the\ninternet \"\norder report # 1 from :\nrandy dillard\np . o . box 8\nosprey , fl 34229\nusa\nreport # 2 \" the insiders guide to sending bulk email on the\ninternet \"\norder report # 2 from :\ncarla brown\np . o . box 39093\nsarasota , fl 34238\nusa\nreport # 3 \" the secrets to multilevel marketing on the internet \"\norder report # 3 from :\nglynn schmidt\np . o . box 19424\nsarasota , fl 34276\nusa\nreport # 4 ' how to become a millionaire utilizing the power of\nmultilevel marketing and the internet \"\norder report # 4 from :\nchristin joy\ncpo 2398\n501 e . college avenue\nwheaton , il 60187\nusa\nreport # 5 \" how to send one million e - mails for free . \"\norder report # 5 from :\ncheri gerhart\n81719 lido avenue\nindio , ca 92201\nusa\nabout 50 , 000 new people get online every month !\n* * * * * * * tips for success * * * * * * *\n* treat this as your business ! be prompt , professional , and follow\nthe directions accurately .\n* send for the five reports immediately so you will have them when\nthe orders start coming in . when you receive a $ 5 order , you must\nsend out the requested product / report .\n* always provide same - day service on the orders you receive .\n* be patient and persistent with this program . if you follow the\ninstructions exactly , your results will be successful !\n* above all , have faith in yourself and know you will succeed !\n* * * * * * * your success guidelines * * * * * * *\nfollow these guidelines to guarantee your success :\nstart posting ads as soon as you mail off for the reports ! by the\ntime you start receiving orders , your reports will be in your\nmailbox ! for now , something simple , such as posting on message\nboards something to the effect of \" would you like to know how to\nearn $ 50 , 000 working out of your house with no initial investment ?\nemail me with the keywords \" more info \" to find out how . and , when\nthey email you , send them this report in response !\nif you don ' t receive 20 orders for report # 1 within two weeks ,\ncontinue advertising or sending e - mails until you do .\nthen , a couple of weeks later you should receive at least 100\norders for report # 2 . if you don ' t , continue advertising or sending\ne - mails until you do . once you have received 100 or more orders\nfor report # 2 , you can relax , because the system is already\nworking for you , and the cash will continue to roll in !\nthis is important to remember : every time your name is moved down\non the list you are placed in front of a different report . you can\nkeep track of your progress by watching which report people are\nordering from you . if you want to generate more income , send\nanother batch of e - mails or continue placing ads and start the\nwhole process again ! there is no limit to the income you will\ngenerate from this business !\nbefore you make your decision as to whether or not you participate\nin this program , answer one question . . .\ndo you want to change your life ? if the answer is yes , please look\nat the following facts about this program :\n1 . you are selling a product which does not cost anything to\nproduce !\n2 . you are selling a product which does not cost anything to ship !\n3 . you are selling a product which does not cost you anything to\nadvertise !\n4 . you are utilizing the power of the internet and the power of\nmulti - level marketing to distribute your product all over the\nworld !\n5 . your only expenses other than your initial $ 25 investment is\nyour time !\n6 . virtually all of the income you generate from this program is\npure profit !\n7 . this program will change your life forever .\n* * * * * * * testimonials * * * * * * *\nthis program does work , but you must follow it exactly ! especially\nthe rule of not trying to place your name in a different position ,\nit won ' t work and you ' ll lose a lot of potential income . i ' m\nliving proof that it works . it really is a great opportunity to\nmake relatively easy money , with little cost to you . if you do\nchoose to participate , follow the program exactly , and you ' ll be\non your way to financial security . - steven bardfield , portland , or\nmy name is mitchell . my wife , jody , and i live in chicago , il . i\nam a cost accountant with a major u . s . corporation and i make\npretty good money . when i received the program i grumbled to jody\nabout receiving \" junk mail . \" i made fun of the whole thing ,\nspouting my knowledge of the population and percentages involved .\ni ' knew ' it wouldn ' t work . jody totally ignored my supposed\nintelligence and jumped in with both feet . i made merciless fun of\nher , and was ready to lay the old ' i told you so ' on her when the\nthing didn ' t work . . . well , the laugh was on me ! within two weeks\nshe had received over 50 responses . within 45 days she had\nreceived over $ 147 , 200 in $ 5 bills ! i was shocked ! i was sure that\ni had it all figured and that it wouldn ' t work . i am a believer\nnow . i have joined jody in her \" hobby . \" i did have seven more\nyears until retirement , but i think of the ' rat race , ' and it ' s\nnot for me . we owe it all to mlm . - mitchell wolf md . , chicago , il .\nthe . main reason for this letter is to convince you that this\nsystem is honest , lawful , extremely profitable , and is a way to\nget a large amount of money in a short time . i was approached\nseveral times before 1 checked this out . i joined just to see what\none could expect in return for the minimal effort and money\nrequired . to my astonishment i received $ 36 , 470 . 00 in the first 14\nweeks , with money still coming in .\n- charles morris , esq .\nnot being the gambling type , it took me several weeks to make up\nmy mind to participate in this plan . but conservative that i am , i\ndecided that the initial investment was so little that there was\njust no way that i wouldn ' t get enough orders to at least get my\nmoney back . boy , was i surprised when i found my medium - size post\noffice box crammed with orders ! for awhile , it got so overloaded\nthat i had to start picking up my mail at the window . i ' ll make\nmore money this year than any 10 years of my life before . the nice\nthing about this deal is that it doesn ' t matter where people live .\nthere simply isn ' t a better investment with a faster return .\n- paige willis , des moines , ia\ni had received this program before . i deleted it , but later i\nwondered if i shouldn ' t have given it a try . of course , i had no\nidea who to contact to get another copy , so i had to wait until i\nwas e - mailed another program . . . 11 months passed then it came . . .\ni didn ' t delete this one ! . . . i made . more than $ 41 , 000 on the\nfirst try ! ! - violet wilson , johnstown , pa\nthis is my third time to participate in this plan . we have quit\nour jobs , and will soon buy a home on the beach and live off the\ninterest on our money . the only way on earth that this plan will\nwork for you is if you do it . for your sake , and for your family ' s\nsake don ' t pass up this golden opportunity . good luck and happy\nspending ! - kerry ford , centerport , ny\nit is up to you now ! take 5 minutes to change your future !\norder your reports today and get started on your road to financial\nfreedom !\nfor your information : if you need help with starting a business ,\nregistering a business name , learning how income tax is handled ,\netc . , contact your local office of the small business\nadministration ( a federal agency ) 1 ( 800 ) 827 - 5722 for free help\nand answers to questions . also , the internal revenue service\noffers free help via telephone and free seminars about business\ntax requirements .\nunder bill sl 618 title hi passed by the 105 th us congress this\nletter cannot be considered spam as long as the sender includes\ncontact information and a method of removal . this is a one time\ne - mail transmission . no request for removal is necessary to\nremove ( even though this is not necessary ) press\n @ yahoo . com\nstop ! if you never read another e - mail please take a moment to\nread this one . this really is worth your valuable time . even if\nyou never got involved in the program , the reports themselves are\nwell worth the money . they can help you start and advertise any\nbusiness on the internet . that is , these reports stand alone and\nare beneficial to anyone wishing to do business on the internet .\nat the very least print this out now to read later if you are\npressed for time .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.625+0000", "entityId": 5330, "properties": {"text": "Subject: online tv deals 312\ninternet\nexclusive - - tv deals\nfantastic prices\nclick any product\nfor details\namazing profits by john beck\navacor hair care system\nbalance bracelet\nblast off the pounds by richard simmons\nbloussant\ncybersonic toothbrush\nflat hose - 50 ft\njuiceman ii\nmiracle blade\nphase 4 orthotics\nroll - a - hose\nshark steam blaster\nsounds of the 80 s by time life\nstick shark\nwalk away the pounds for abs\nplus\nthousands of other tv deals\nonline now\n- - - fantastic prices\nwhile\nsupplies last !\nclick\nhere\nif you no longer wish to receive our offers and updates click here\nand we will promptly honor your request .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.633+0000", "entityId": 5331, "properties": {"text": "Subject: send real paper greeting cards on - line !\nbirthday\nanniversary\nget well soon\nthinking of you\ncongratulations\nsympathy\nengagement\ngood luck\nnew baby\nnew home\nlove & romance\nfriendship\nretirement\ngraduation\nthank you\nvalentine ' s day ( feb )\npassover ( apr )\neaster ( apr )\nmother ' s day ( may )\nfather ' s day ( jun )\nrosh hashana ( sep )\nhalloween ( oct )\nthanksgiving ( nov )\nchristmas ( dec )\nhappy new year ( dec )\nhanukkah ( dec )\nyou received this email because you signed up at one of cards in advance ' s websites or you signed up with a party that has contracted with cards in advance . to unsubscribe from the cards in advance mailing list please reply to this email with \" remove \" as the subject .\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.638+0000", "entityId": 5332, "properties": {"text": "Subject: re :\nfor\nimmediate release\ncal - bay ( stock symbol : cbyi )\nwatch for analyst \" strong buy recommendations \" and several advisory newsletters\npicking cbyi . cbyi has filed to be traded on theotcbb ,\nshare prices historically increase when companies get listed\non this larger tradingexhange . cbyi is trading around 25 cents\nand should skyrocket to $ 2 . 66 - $ 3 . 25 a share in the near future .\nput cbyi on your watch list , acquire a postion\ntoday .\nreasons to invest in cbyi\na profitable company and is on track to beat all\nearnings estimates\n!\none of the fastest growing distributors in environmental safety\nequipment instruments .\nexcellent management team , several exclusive\ncontracts . impressive client list including theu . s . air force ,\nanheuser - busch , chevron refining and mitsubishi heavy industries ,\nge - energy environmental research .\nrapidly growing industryindustry revenues exceed $ 900 million , estimates indicate that there\ncould be as much as $ 25 billion from \" smell technology \" by the end of\n2003 .\n! ! ! ! ! congratulations\n! ! ! ! ! our last recommendation to buyorbt at\n$ 1 . 29 ralliedand is holding steady at $ 4 . 51 !\ncongratulations to all our subscribers that took advantage of this\nrecommendation .\nall removes honered . please allow 7\ndays to be removed and send all address to :\nneveragain @ btamail . net . cn\ncertain statements contained in this news release may be\nforward - looking statements within the meaning of the private securities\nlitigation reform act of 1995 . these statements may be identified by such terms\nas \" expect \" , \" believe \" , \" may \" , \" will \" , and \" intend \" or similar terms . we are not\na registered investment advisor or a broker dealer . this is not an offer to buy\nor sell securities . no recommendation that the securities of the companies\nprofiled should be purchased , sold or held by individuals or entities that learn\nof the profiled companies . we were paid $ 27 , 000 in cash by a third party to\npublish this report . investing in companies profiled is high - risk and use of\nthis information is for reading purposes only . if anyone decides to act as an\ninvestor , then it will be that investor ' s sole risk . investors are advised not\nto invest without the proper advisement from an attorney or a registered\nfinancial broker . do not rely solely on the information presented , do additional\nindependent research to form your own opinion and decision regarding investing\nin the profiled companies . be advised that the purchase of such high - risk\nsecurities may result in the loss of your entire investment .\nthe owners of this publication may already own free trading shares in\ncbyi and may immediately sell all or a portion of these shares into the open\nmarket at or about the time this report is published . factual statements\nare made as of the date stated and are subject to change without notice .\nnot intended for recipients or residents of ca , co , ct , de , id ,\nil , ia , la , mo , nv , nc , ok , oh , pa , ri , tn , va , wa , wv , wi . void where\nprohibited .\ncopyright c 2001\n* * * *\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.643+0000", "entityId": 5333, "properties": {"text": "Subject: your commissions of $ 5000 per week ! ssva\ngive me 5 minutes and i will show you how\nto turn your computer into a cash machine ! ! !\n( available in the us and canada )\ni earned $ 25 , 000 last month - send for my bank statements ! ! !\nwe are giving away a free , 3 - day vacation to all\nfolks who ask for more info on how to earn $ 1000\nper sale simply by using their computer !\nyou ' ll earn $ 1000 per sale on a low cost product and\n$ 3000 per business contact -\nand all marketing is from the internet . free\nsophisticated and duplicatable marketing system\n( $ 2500 value ) is given to you gratis - as well as all\ntraining and marketing support ! ! !\nwe invite you to explore , with no obligation , some\ninformation that could turn around your\nincome and bring in thousands per week !\nif you just want some extra income , or if you are a\nseasoned marketer - our paint - by - numbers system with live\nsupport ( up to 10 : 00 pm eastern every day ! ) will turn you\ninto a pro ! ! !\nfamily - loved product ! ! !\nwe will have you in profit quick - and with\nconstant , live free support ! ! ! !\nrequest more free info now -\nsend an email to : growthmarkets @ excite . com with \" send info \" in the subject line ! !\n( do not click reply ! )\nthis email conforms to commercial email regulations within the us .\nplease send any \" remove \" requests to : growthmarkets @ excite . com\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.647+0000", "entityId": 5334, "properties": {"text": "Subject: second chance # 5182\ncomplete credit card processing systems for your business . internet - home\nbased - mail order - phone order\ndo you accept credit cards ? your competition does !\neveryone approved - credit problems ok !\napproval in less than 24 hours !\nincrease your sales by 300 %\nstart accepting credit cards on your website !\nfree information , no risk , 100 % confidential .\nyour name and information will not be sold to third parties !\nhome businesses ok ! phone / mail order ok !\nno application fee , no setup fee !\nclose more impulse sales !\neveryone approved !\ngood credit or bad ! to apply today , please fill out\nthe express form below . it\ncontains all the information we need to get your account approved . for area ' s\nthat do not apply to you please put n / a in the box .\nupon receipt , we ' ll fax you with all of the all bank card application\ndocuments necessary to establish your merchant account . once returned we can\nhave your account approved within 24 hours .\nservice\nindustry\nstandard\nus\nsite\ninspection\n$ 50 - $ 75\nfree\nshipping\n$ 50 - $ 75\nfree\nwarranty\n$ 10 per month\nfree\nsales\nreceipts\n$ 10 - $ 50\nfree\nfraud\nscreening\n$ . 50 - $ 1 . 00\nper transaction\nfree\namex set\nup\n$ 50 - $ 75\nfree\n24 hourhelp\nline\n$ 10 month\nfree\nsecurity\nbond\n$ 5000 - $ 10 , 000\nor more\nnone\nthis is a no\nobligation qualification form and is your first step to\naccepting credit cards . by filling out this form you will not\nenter in to any obligations or\ncontracts with us . we will use it to determine the best program\nto offer you based on the information you provide . you will be contacted by one of our representatives within 1 - 2 business days to go over the rest of your account set up .\nnote :\nall information provided to us will remain 100 %\nconfidential\n! !\napply\nfree with no risk !\nplease fill out the\nexpress application form completely . incomplete information may prevent us from properly\nprocessing your application .\nyour full email address :\nbe sure to use your full address ( i . e .\nuser @ domain . com )\nyour name :\nbusiness name :\nbusiness phone number :\nhome phone number :\ntype of business :\nretail business\nmail order business\ninternet based business\npersonal credit rating :\nexcellent\ngood\nfair\npoor\nhow soon would you like a merchant\naccount ?\nyour information is confidential , it will not be sold or used for any other purpose , and you are under no obligation .\nyour information will be used solely for the purpose of evaluating your business or website for a merchant account so that you may begin accepting credit card payments .\nlist\nremoval / opt - out option\nclick\nherem\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.652+0000", "entityId": 5335, "properties": {"text": "Subject: 10 million fresh email addresses sent to you on cd for free ! ! ! try before you buy ! !\nget ready for a deal you ' ve never seen before !\n10 million hot fresh email addresses and much more !\ntry before you buy ! ! ! ! !\nwe will send you the\npowerman 10 million\ninternet marketing shop\ncd free\nthis is what you get :\n10 million freah email addresses\nfully functional websites - ready to take orders\nproven high impact resalable products - ebooks\ncutting edge internet marketing tools\ninstructions less flames & non - buyers .\n* less contact with anti - commerce radicals & extremists .\nremember that potential income chart at the beginning of this message ? can you imagine the kind of money you could\nmake if you mailed one million pieces and sold only one tenth ( . 01 % ) of one percent ? you do the math , you ' ll be amazed !\nthis product will prove to be the best of it ' s kind compared to any cd in terms of hours and money spent bringing it to\nmarket . no competitor will ever duplicate the effort of what it takes for us to produce this superb product . we never have\ncompromised on quality , and surely won ' t release any product before it passes our \" high standards \" test . this is not a\nrental list that is restricted to a one - time mailing . you are purchasing an e - mail address list for your own personal mailings\nand may use it over - and - over .\nif you want us to send you the powerman 10 million internet marketing shop cd\nemail : powermanl 0 million @ hotmail . com\nsubject line : send cd\nyour mailing address :\n_ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ / _ /\n* * f r e e b o n u s e s * *\n\" business on a disk \" bonus offer :\nevery survey has always indicated that the easiest and most profitable product to sell on the internet is\ninformation ! if you have an \" information \" type product , then there is no easier way to become financially\nindependent .\nour \" business on a disk \" gives you awesome resalable products reports / manuals / books that that are yours\nto use . you may instantly start your \" information product \" business ! just think , you can reproduce a complete book\non a floppy disc in just a few seconds , for around 35 cents . these are the same books that have\nsold for $ 99 . \" special reports \" cost you pennies to produce and can be sold for as high as $ 15 . . . or the whole group\nfor as high as $ 140 . 00 .\n\" the mass e - mail survival guide \" a manual / guide that addresses the mass e - mail business . especially useful\nfor beginners . \" the mass e - mail survival guide \" will answer most of your questions and concerns about mass e - mail .\nan exclusive for our customers . . . included free .\nif you want us to send you the powerman 10 million internet marketing shop cd\nemail : powermanl 0 million @ hotmail . com\nsubject line : send cd\nyour mailing address :\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.656+0000", "entityId": 5336, "properties": {"text": "Subject: we are on the look - out for new partners such as you and your company\nwe are on the look - out\nfor new partners such as you and your company\nwhether you want to buy or sell , bluecom danmark a / s is worth closer acquaintance\nbluecom danmark a / s is a worldwide it - distributor of pc - systems and add - ons .\nsince it ' s foundation in 1992 the company has enjoyed constant growth , and is\nalways on the look out for new partners to cooperate with .\nwe have found you and your company through our internet research , and hope to\nestablish a fruitful cooperation with you in the future . however , we apologies\nif you are not the correct person to contact within your company , and kindly\nrequest that you forward this message to that person . further , if this letter\nis of no interest to you and your company , please press the \" unsubscribe \" button\nin this mail .\nthe easiest way to start cooperating with bluecom danmark a / s is through our\nuser - friendly website . if any of the features detailed below are of interest\nto your company , please click on the link and our cooperation has already begun .\ncustomer :\nwould you like the best prices on the market , plus 24 - hour delivery and an\nincredible 30 days credit ?\nthen maybe you would like to become our partner or customer .\nwe are able to offer the absolute best prices on the market because of our large - scale\nprocurement of a small number of specific products . our range includes products\nfrom ibm , compaq and hp options such as notebooks , pcs and monitors . we also\noffer pc parts such as ram , cpus , vga cards , motherboards , wireless products ,\noriginal mobile phones and accessories , hard disks , dvd , cd - rw , tft screens ,\nfrom the following top companies : asus , ecs , abit , creative , intel , amd , u . s .\nrobotics , lg , plextor , belkin , benq , samsung , ibm software and many more .\nbesides delivering at the very best prices , we offer real - time updated prices\nthrough our customer lounge , 24 - hour delivery all over europe and 30 days credit .\nplease click here : customers\nlounge\nsupplier :\nare you a future supplier to bluecom danmark a / s ?\nbluecom danmark a / s keeps it suppliers updated on products in demand , the specific\nvolumes on request , and of course the target prices . if you would like to see\nwhich products and target prices we are interested in right now ,\nplease click here : suppliers\nlounge\neverybody :\nwould you like to receive it news ?\nbluecom danmark a / s offers it news for free . we produce a newsletter with\narticles covering the changes in our industry , new products , tariff rates and\ngeneral trends in the it - market . the newsletter also contains information about\nbluecom danmark a / s and the development of its business partners .\nplease click here : it - news\nwould you like more information about bluecom danmark a / s ?\nfor further information please do not hesitate to contact bluecom danmark a / s .\nyou can also visit our homepage at : www . bluecom . com\nthanks for your time . we look forward to hearing from you .\nbest regards\njens fournais\nmanaging director\nbluecom danmark a / s\nto unsubscribe from this mailing\nlist , please click here : unsubscribe\n( you are subscribed with this e - mail address : fork @ spamassassin . taint . org )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.660+0000", "entityId": 5337, "properties": {"text": "Subject: fw : keep it under wraps , but this one works a treat ! 25031\nthank you ,\nyour email address was obtained from a purchased\nlist , reference # 1580 - 17600 . if you wish to unsubscribe from this list , please\nclick here and enter your\nname into the remove box . if you have previously\nunsubscribed and are still receiving this message , you may email our\nabuse control center ,\nor call 1 - 888 - 763 - 2497 , or write us at : nospam , 6484 coral way ,\nmiami , fl , 33155 \" .\n2002 web credit inc . all rights reserved .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.665+0000", "entityId": 5338, "properties": {"text": "Subject: earn extra income * *\nwant to make a million bucks this year ?\nme too but it ' s probably not going happen !\nhowever if you ' re looking for the opportunity to\nmake a couple thousand a week ,\nworking from home with your pc , we need to talk .\nif you ' re over 18 and a us resident ,\njust click reply\nsend me your name , state ,\ncomplete telephone number ,\nand the best time to contact you .\ni will personally speak with you within 48 hours .\nhave a great day !\nremoval instructions :\n* * * * * * * * * * * * * * * * * * * * * * * * *\nto be removed from this list please reply with \" remove \" in the subject line .\nplease allow a few days for removal to take effect . thanks ! !\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.670+0000", "entityId": 5339, "properties": {"text": "Subject: take action immediately or miss out .\n003 - 300299717499832716 attention ! valued\ncustomer # 772 - 00 d 87 \" claim your free systems \"\nor call 1 - 800 - 823 - 2466\ncongratulations ! you have been selected to receive a free * 4 receiver\ndish satellite entertainment system ! risk free . click here to\nschedule your free installation ( $ 446 . 00 value ) .\nthis is a special , limited - time\noffer with no hidden costs . order\ntoday and receive 3 months of programming free .\nhurry\noffer expires friday july 26 th\nhere ' s what you ' ll\nget : - 1 20 inch dish\n- 4 satellite receivers ( four rooms ) - access card\n- 4 remote controls - owner ' s manual\n- professional installation\nyou have\nsigned up with one of our network partners to receive email providing you\nwith special offers that may appeal to you . if you do not wish to receive\nthese offers in the future , reply to this email with \" unsubscribe \" in the\nsubject or simply click on the following link : unsubscribe\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.675+0000", "entityId": 5340, "properties": {"text": "Subject: 9 % commission on myg annuities\ncall or e - mail us today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nfor agent use only .\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.680+0000", "entityId": 5341, "properties": {"text": "Subject: free $ $ $ for business or personal cwfqt\nstart a business or fund your child ' s college without debt .\nget the money you need and never have to pay it back .\nstarting a business or putting your child through college is an expensive\nundertaking . that ' s where we can help . our valuable ebook will\nput you in touch with thousands of programs to help you get the money\nyou need . that ' s right free grant & scholarship money .\ndon ' t let someone else get your share !\nreg . price $ 34 . 95 order by july 31 and save $ 10 . 00 .\ntour our secure website for more details :\nyou are receiving this special offer because you have provided permission\nto receive third party online promotions . to be eliminated from future marketing :\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.685+0000", "entityId": 5342, "properties": {"text": "Subject: your order # 5056\nshopping for a loan\nhas never been easier\nget a free quote on a new first\nmortgage , second mortgage , or a credit line with no cost or obligation .\nwe can help you get a great loan\nregardless of your credit situation\nit ' s a great time to buy or\nrefinance your home .\nwhether you want to :\nbuy a new home - consolidate your\ndebts\nrefinance to lower your payments\ntake some equity out of your home\nfor any reason\nwe can help !\nclick here and get a free quote !\nyou have nothing to lose !\nto not receive this\nemail again click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.689+0000", "entityId": 5343, "properties": {"text": "Subject: harvest lots of e - mail addresses quickly !\ndear cpunks ,\nwant\nto harvest a lot of email addresses in a very short time ?\neasy email\nsearcher is\na powerful email software that\nharvests general email lists from mail servers easy email searcher can get 100 , 000 email addresses directly from the email\nservers in only one hour !\neasy email\nsearcher is a 32 bit windows program for e - mail marketing . it\nis intended for easy and convenient search large e - mail address lists\nfrom mail servers . the program can be operated on windows 95 / 98 / me / 2000\nand nt .\neasy email\nsearcher support multi - threads ( up to 512\nconnections ) .\neasy email\nsearcher has the ability to reconnect to the mail\nserver if the server has disconnected and continue the searching at the\npoint where it has been interrupted .\neasy email\nsearcher has an ergonomic interface that is easy to set up\nand simple to use .\n? ? easy email searcher is an email\naddress searcher and bulk e - mail sender . it can verify more than 5500\nemail addresses per minute at only 56 kbps speed . it even allows you send\nemail to valid email address while searching . you can save the searching\nprogress and load it to resume work at your convenience . all you need to\ndo is just input an email address , and press the \" search \"\nbutton .\nvery\nlow price ! - - - - - - - now , the full version of easy email\nsearcher only costs $\n39 . 95\nclick the following link to\ndownload the demo :\ndownload site\n1\ndownload site\n2 ? ? if you can not download this program , please\ncopy the following link into your url , and then click \" enter \" on your\ncomputer keyboard .\nhere is the\ndownload links :\ndisclaimer : we are strongly against continuously sending\nunsolicited emails to those who do not wish to receive our special\nmailings . we have attained the services of an independent 3 rd party to\noverlook list management and removal services . this is not unsolicited\nemail . if you do not wish to receive further mailings , please click this\nlink mailto : removal @ btamail . net . cn\n. this message is a commercial advertisement . it is compliant\nwith all federal and state laws regarding email messages including the\ncalifornia business and professions code . we have provided the subject\nline \" adv \" to provide you notification that this is a commercial\nadvertisement for persons over 18 yrs old .\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.693+0000", "entityId": 5344, "properties": {"text": "Subject: the government grants you $ 25 , 000 !\nfree personal and business grants\n\" qualify for at least $ 25 , 000 in free\ngrants money - guaranteed ! \"\neach day over one million dollars in free\ngovernment\ngrants is given away to people just like you for a wide\nvariety of business and personal needs\ndear grant seeker ,\nin a moment , i ' ll tell you\nexactly how where to get grants . this money has to\nbe given away , why not to you ?\nyou may be thinking , \" how\ncan i get some of this free grants money \"\nmaybe you think it ' s impossible\nto get free money ?\nlet me tell you it ' s not\nimpossible ! it ' s a fact , ordinary people and businesses all across the\nunited states are receiving millions of dollars from these government and\nprivate foundation ' s everyday .\nwho can apply ?\nanyone can apply\nfor a grant from 18 years old and up !\ngrants from $ 500 . 00 to $ 50 , 000 . 00\nare possible ! grants don ' t have to be paid back ,\never ! claim\nyour slice of the free american pie .\nthis money is not a loan ,\ntrying to get money through a conventional bank can be very time consuming\nand requires a lot of paperwork , only to find out that you ' ve been denied .\nthese government agencies don ' t have to operate under the same stringent\nrequirements that banks do .\nyou decide how much money\nyou need , as long as it ' s a lawful amount and meets with the government\nagencies criteria , the money is yours to keep and never has to be repaid .\nthis money is non taxable interest free .\nnone of these programs require\na credit check , collateral , security deposits or co - signers , you can apply\neven if you have a bankruptcy or bad credit , it doesn ' t matter , you as\na tax payer and u . s . citizen are entitled to this money .\nthere are currently over\n1 , 400 federal programs , 24 , 000 state programs , 30 , 000 private foundations\nand 20 , 000 scholarship programs available .\nthis year over $ 30 billion\ndollars in free personal and business government grants money will be given\naway by government grants agencies .\ngovernment personal\nand business grants facts :\nover 20 million people get government\nmoney every year :\n1 , 000 , 000 entrepreneurs get money\nto start or expand a business\n4 , 000 , 000 people get money to invest\nin real estate\n6 , 000 , 000 people get money to go\nto college\n10 , 000 , 000 people get free help and\ntraining for a better job\ngetting business\ngrants\nanyone thinking about going\ninto business for themselves , or wanting to expand an existing business\nshould rush for the world ' s largest \" one - stop - money - shop \" where free business\ngrants to start or expand a business is being held for you by the federal\ngovernment .\nit\nsounds absolutely incredible that people living right here in the united\nstates of america wouldn ' t know that each year the world ' s largest source\nof free business help delivers :\nover $ 30 billion dollars in free\nbusiness grants and low - interest loans ;\nover one - half trillion dollars in\nprocurement contracts ; and\nover $ 32 billion dollars in free\nconsulting and research grants .\nwith an economy that remains\nunpredictable , and a need for even greater economic development on all\nfronts , the federal government is more willing than it ever has been before\nto give you the money you need to own your own business and become your\nown boss !\nin\nspite of the perception that people should not look to the government for\nhelp , the great government give - away programs have remained so incredibly\nhuge that if each of the approximately 8 million businesses applied for\nan equal share , they would each receive over $ 70 , 000 .\nmost\npeople never apply for free business grants because they somehow feel it\nisn ' t for them , feel there ' s too much red - tape , or simply don ' t know who\nto contact . the fact is , however , that people from all walks of life do\nreceive free grants money and other benefits from the government , and you\nshould also .\ngovernment grants\nfor personal need\nhelp to buy a new home for\nlow income families , repair your home , rent , mortgage payments , utility\nbills , purchase a new car , groceries , childcare , fuel , general living expenses ,\nacademic tutoring , clothing , school supplies , housing assistance , legal\nservices , summer camp , debts , music lessons , art lessons , any extracurricular\nactivities , pay bills for senior citizens , real estate taxes , medical expenses\nand general welfare . if you or someone you know suffered a fire lose there\nare programs available to help in replacing necessities .\nscholarships and\ngrants for education\ngrant money for preschool\nchildren and nursery school education , private , primary and secondary schools ,\nmen and women to further their education , scholarships for athlete ' s , business\nmanagement , engineering , computer science , medical school , undergraduate ,\ngraduate , professional , foreign studies and many more .\nhere ' s how you\ncan get free grants\nin the shortest time possible\nonce you know how and where\nto apply for a specific free grant , results are almost inevitable . the\ngovernment wants to give away this money . . . it is under congressional\nmandate to do so ! these funds are made available to help you , the tax payer .\nall that ' s required from you is the proper presentation of your grant request .\nthat ' s all .\nannouncing . . .\n\" the complete\nguide to government grants \"\nforget just about everything\nyou ' ve seen or heard about government grants . what i ' ve done is put together\na complete blueprint for researching , locating and obtaining government\ngrants . \" the complete guide to government grants \" is the most comprehensive\ntool for obtaining free grant money , and it comes in an electronic book\n( e - book ) format , meaning you can\ndownload and start using it minutes after you order .\nthe\ncomplete guide to government grants will provide you with access to thousands\nof grant and loan sources , with step by step instructions to proposal writing\nand contact procedures .\nin the complete guide to government\ngrants you ' ll find :\nstep by step guidelines\nto applying for government grants\ndirect access to over 1 , 400\ngrant , loan and assistance programs offered by the u . s . federal government .\nall you need to do is click find your program from the detailed categorized\nlistings\ndirect access to thousands\nof resources of state specific grant programs\nname , phone number and address\nof an expert in your state that will answer your grant related questions\nand help you with the grant application . . . free of charge\nonline directory of government\nsupported venture capital firms\na unique search tool that\nwill allow you to generate a customized listing of recently announced grant\nprograms\ngovernment funding programs\nfor small businesses\ntop 100 government programs\n( based on number of inquiries ) , discover what are the most sought after\ngovernment grants and assistant programs . claim your slice of the free\namerican pie\nonline directory of federal\nand state resources for government scholarships and grants for education\nstep by step guidelines\nto locating grants , loans and assistant programs for starting a new business\nor expanding an existing one\nhow to get free small business\ncounseling and expert advice courtesy of the us government\ngovernment grants application\nforms\ndirect access to thousands\nof government grants programs covering : small businesses , home improvement ,\nhome buying and homeownership , land acquisition , site preparation for housing ,\nhealth , assistance and services for the unemployed , job training , federal\nemployment , education , and much much more\nhow to develop and write\ngrant proposals that get results\n. . . plus much more\nthe complete guide to government\ngrants is so comprehensive , it provides you with direct access to practically\nevery source of free government grants money currently available .\nif you ' re an american citizen\nor resident , you are entitled to free grant money ranging from $ 500 to\n$ 250 , 000 or more . if you are black you have already qualified for 15 programs ,\nbeing hispanic , you qualify for many programs . being a christian will get\nyou into 20 programs , there are also many other programs available for\ndifferent faiths , jewish , catholic . not having any money , will get you\ninto over 30 programs , 550 programs if you are unemployed , or underemployed .\nthe list and sources are endless .\nyou are eligible ! this money\nis absolutely free and will be yours to use for any worthwhile purpose .\ndid you know you can apply\nfor as many grants as you want ?\nit ' s true , for instance ,\nyou could get a $ 65 , 000 grant to begin a weight loss business , get $ 8 , 800\nin tuition to become a nurse or $ 35 , 000 to open up the day - care center ,\nyou ' ve always dreamed of owning . and then , go out and apply for a grant\nto buy a home for you and your family . and once your new business starts\ndoing well you could go out and get another grant for expansion of your\nbusiness . the possibilities are endless .\nyou must qualify\nfor at least $ 25 , 000 in free\ngrants money , or your money back !\nwe are so confident in our\ngrants guide that if you have not received at least $ 25 , 000 in free grant\nmoney , or , if you are unhappy with our e - book for any reason within the\nnext 12 months , just send the e - book back and we will refund your entire\npayment . no questions asked ! !\nif you want to order , we\ninsist you do so entirely at our risk . that is why the e - book comes with\na . . . no risk full year money - back guarantee . there is absolutely\nno risk on your part with this 365 day guarantee . what we mean is we want\nyou to order without feeling you might \" get taken . \"\ntherefore , we want you to\norder this material today . . . read it , use it . . . and if for any reason you\naren ' t completely satisfied , you not only can cancel , you should ,\nfor an immediate refund of your purchase price . you simply can ' t lose .\nfree\nbonuses\njust to \" sweeten \" the deal ,\ni ' ll include the following four valuable bonuses , that you can keep\nas a gift , even if you later decide not to keep the grants guide !\nfree bonus # 1 :\na fully featured grants\nwriting tutorial software package\nthis info alone is worth\nthousands of dollars - i guarantee you can purchase a grants cd or info\nanywhere , and you will not receive this downloadable software that actually\nshows you how to apply and what to say , so that you are accepted for a\ngrant ! ! !\nthis interactive software\ntool will walk you through the grant - writing process and will teach you\neverything you need to know to write competitive grants proposals .\nthe program includes :\ndetailed information and\ntips on writing grants proposals ;\nhow to complete a grant\napplication package ;\nexamples of good , complete\ngrant packages ;\na glossary of grants terms ;\nresources and contacts ;\na mock grants - writing activity\nwhere you will be able to compare your results to a successful grant application\nplus much much more\nfree bonus # 2 :\nthe insider information\nreport : 61 ways to save money\nthis valuable special report\ncontains insider experts tips and techniques that will help you to save\nthousands of dollars . you ' ll discover little known secrets and tricks to\nsaving money on airline fares , car rental , new and used car buying , auto\nleasing , gasoline , car repairs , auto insurance , life insurance , savings\nand investment , credit cards , home equity loans , home purchase , major appliances ,\nhome heating , telephone services , food purchase , prescription drugs and\nmore .\nfree bonus # 3 :\nthe complete guide to\nstarting your own business\na\ncomprehensive manual that will give you all the guidelines and tools you\nneed to start and succeed in a business of your own , packed with guides ,\nforms , worksheets and checklists . you will be amazed at how simple these\nstrategies and concepts are and how easy it will be for you to apply them\nto your own business idea . hundreds were sold separately at $ 40 each . . .\nyou get it here for free .\nhere ' s\njust a taste of what ' s in the guide :\nhow\nto determine the feasibility of your business idea . a complete fill in\nthe blanks template system that will help you predict problems before they\nhappen and keep you from losing your shirt on dog business ideas .\na step by step explanation\nof how to develop a business plan that will make bankers , prospective partners\nand investors line up at your door . plus , a complete ready made business\nplan template you can easily adapt to your exact needs .\ndiscover the easiest , simplest\nways to find new products for your business that people are anxious to\nbuy .\nhow\nto make money with your new idea or invention . secrets of making sure you\nput cash in your pocket on your very first idea business venture .\ncomplete , step by step instructions\non how to plan and start a new business . this is must - know must - do information ;\nignore it and you stand a good chance to fail . you get specifically designed\ninstructions for each of the following : a service business , a retail store ,\na home based business , a manufacturing company , and more .\nwhat nobody ever told you\nabout raising venture capital money . insider secrets of attracting investors ,\nhow to best construct your proposal , common mistakes and traps to avoid ,\nand much more .\nchecklist\nfor entering into a partnership . keeps you from costly mistakes when forming\na partnership .\nhow to select a franchise\nbusiness . a step by step guide to selecting a franchise that is best for\nyou .\na complete step - by - step\norganized program for cutting costs in your business . clients of mine have\nachieved an average of 28 % to 35 % cost reduction with this technique , and\nyou can too . keep the money in your pocket with this one !\nwhat are the secrets behind\nconstructing a results driven marketing plan ? i will lead you step by step\ninto developing a marketing plan that will drive your sales through the\nroof .\na complete step by step\nguide guaranteed to help you increase your profits by up to 64 % , i call\nit \" the profit planning guide \" . this is a simple , practical , common sense\nstrategy , but amazingly enough , almost no one understands or uses it .\nfree bonus # 4 :\nguide to home business\nsuccess\nthis\nis afast , no - frills guide\nto starting and succeeding in a home based business . here ' s just a taste\nof what ' s in the guide :\nhome\nbusiness : is it for you ?\nwhat\nare the secrets behind the people who have million dollar home based businesses ?\nyou ' ll find a 24 tip list proven to turn your home business into a money\nmachine .\nlaws and regulations you\nmust be aware of to avoid legal errors .\nplanning\na home based business - insider secrets and tips revealed for ensuring\nyour success in a home business .\nfundamentals\nof home business financial planning .\nsimple ,\neasy to copy ideas that will enhance your image - and the response you\nget from your customers .\ncommon\nproblems in starting and managing a home based business - and how\nto solve them once and for all .\nwho i am and why i ' m qualified\nto give\nyou the best grants advice\navailable\ni ' m\nthe president of a leading internet based information business . i ' m also\nthe creator of \" the managing a small business cd - rom \" and the author of\nfive books .\ni ' ve\nbeen involved in obtaining grants and in small business for the past 23\nyears of my life , as a business coach , a manager of a consulting firm ,\na seminar leader and as the owner of five successful businesses .\nduring\nmy career as a business coach and consultant i ' ve helped dozens of business\nowners obtain government grants , start their businesses , market , expand ,\nget out of troubles , sell their businesses and do practically every other\nsmall business activity you can think of .\nthe\nguide presented here contains every tip , trick , technique and strategy\ni ' ve learned during my 23 year career . you practically get my whole brain\nin a form of an e - book .\nhow the grants guide is priced ?\nthe complete guide to\ngovernment grants is normally priced at $ 50 , but . . .\n. . . as part of an online\nmarketing test , if you purchase from this sale you pay only $ 19 . 99 ( that ' s\n75 % off . . . plus , you still get the free valuable bonuses . )\nif\nyou are serious about obtaining free grants money , you need this\nguide . don ' t delay a moment longer . order now ! ! !\np . s . the complete guide to government\ngrants will make a huge difference . you risk nothing . the guide is not\nthe original price of $ 50 , but only $ 19 . 99 ( if you purchase through\nthis sale ) and comes with a one year money back guarantee . and you\nget four valuable free bonuses which you may keep regardless . don ' t delay\na moment longer , order now ! ! ! !\nshipping\nand handling is free since we will\nemail you all of this info via access to our secure website which contains\neverything described above .\norder\nnow ! ! !\nif above link doesn ' t work , click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.698+0000", "entityId": 5345, "properties": {"text": "Subject: hilarious prank call service\nplease visit http : / / ukprankcalls . com to play a hilarious joke on your mates !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.702+0000", "entityId": 5346, "properties": {"text": "Subject: new version 7 : uncover the truth about anyone !\nbrand - new version 7 . 0 just released :\nastounding new software lets you find\nout almost anything about anyone . . .\ndownload it right now ( no charge card needed ) :\nfor the brand - new version 7 . 0 , click here :\nhttp : / / lv 724 super . supereva . it / gen . html\ndiscover everything you ever wanted to know about :\nyour friends\nyour family\nyour enemies\nyour employees\nyourself - is someone using your identity ?\neven your boss !\ndid you know you can search for anyone , anytime ,\nanywhere , right on the internet ?\ndownload this software right now - - click here :\nhttp : / / lv 724 super . supereva . it / gen . html\nthis mammoth collection of internet investigative\ntools see the sites\nthey visit , and what they are typing .\n- explore secret web sites that conventional\nsearch engines have never found .\nfor the brand - new version 7 . 0 , click here :\nhttp : / / lv 724 super . supereva . it / gen . html\n= = > discover little - known ways to make untraceable\nphone calls .\n= = > check adoption records ; locate missing children\nor relatives .\n= = > dig up information on your friends , neighbors ,\nor boss !\n= = > discover employment opportunities from around\nthe world !\n= = > locate transcripts and court orders from all\n50 states .\n= = > cloak your email so your true address can ' t\nbe discovered .\n= = > find out how much alimony your neighbor is paying .\n= = > discover how to check your phones for wiretaps .\n= = > or check yourself out , and you will be shocked at\nwhat you find ! !\nthese are only a few things you can do , there\nis no limit to the power of this software ! !\nto download this software , and have it in less\nthan 5 minutes click on the url below to visit\nour website ( new : no charge card needed ! )\nhttp : / / lv 724 super . supereva . it / gen . html\nif you no longer wish to hear about future\noffers from us , send us a message with stop\nin the subject line , by clicking here :\nplease allow up to 72 hours to take effect .\nplease do not include any correspondence in your\nmessage to this automatic stop robot - - it will\nnot be read . all requests processed automatically .\n[ : kj ) _ 8 j 7 bjk 9 ^ \" : } h & * tgo ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.706+0000", "entityId": 5347, "properties": {"text": "Subject: partnership .\nfrom : zimmy mabo .\ntel : 0031 - 623 - 787 - 971 .\ne - mail : infoeurope @ lycos . com .\nthe nederlands .\nsoliciting for a business venture and partnership\nbefore i proceed . am greatful to introduce my self , my name is mr zimmy mabo a zimbabwean . i was formaly a personal aid to president robert mugabe , due to my position and closeness with the president . i absconded with sum of twenty five million united states dollars ( us $ 25 , 000 , 000 ) which was part of the money meant for campaigning for president robert mugabe ' s re - election into office under zaunpe party . presently i have been able to move the funds diplomatically to a security company in the netherlands .\nmy request : i am looking for a trustworthy individual or firm to advice me in the right investment as well as to provide account where the funds will be lodge into . moreso , i am interested in buying propertys for residence as my family will be residing there in the near future .\ncommission and remuneration : as regards your commission and remuneration , i have decided to offer you 25 % and also 5 % for all your expenses ( telephone bills , travelling expenses , hotel bills and other expenses incurred ) .\nnote : i shall commit half of my own share of the total sum into a joint venture project preferably in the purchace of real estates or other profitable business venture , be rest assured that you stand no risk of any kind as the funds inquestion belong to me alone , as soon as i get your conset , i will furnish you with the details and contact of the security company where i have the funds deposited . i strongly believe that associating with you to embark on this and other business ventures will derive a huge success hereafter and it will be a long lasting business association .\nyours truly ,\nmr . zimmy mabo .\nsupercharge your e - mail with a 25 mb inbox , pop 3 access , no ads\nand notaglines - - > lycos mail plus .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.711+0000", "entityId": 5348, "properties": {"text": "Subject: kime oy vereceksiniz ?\n?yi g?nler\nd?nya gazetesi , i?inde bulundu?umuz siyasi karma?a d?neminin se?imler sonras?nda nas?l bir hal alaca?? konusunda kapsaml? bir ara?t?rma yapmaktad?r . bu ?er?evede toplumumuzun m?mk?n oldu?unca geni? bir kesiminin g?r??lerine ba?vurmay? gerekli g?rd?k .\n3 kas?m 2002 tarihinde yap?lmas? ?ng?r?len se?imler sonras?nda siyasi belirsizli?in , dolay?s?yla da ekonomik belirsizli?in sona erip ermeyece?i y?n?nde bir tahmin yapmam?z ve bu konuda kamuoyunu bilgilendirmemiz gerekti?ini d???n?yoruz . sizin de g?r??lerinizi bize iletmeniz anketin sa?l?kl? olmas? ?er?evesinde ?nem ta??maktad?r .\nd?nya gazetesi , anketi cevaplayanlar?n kimlikleri konusunda herhangi bir a??klaman?n yap?lmayaca?? , sadece cevaplar?n?n dikkate al?naca?? y?n?nde tam garanti verir . ?lginiz i?in te?ekk?r eder , ?al??malar?n?zda ba?ar?lar dileriz .\nanketin , daha geni? kapsaml? olmasi ve b?y?k kitlelere ula?abilmesi i?in ,\ntan?d?klar?n?za bu mail ? i g?nderebilirsiniz .\nsoru 1\nse?imde hangi partiye oy vermeyi d???n?yorsunuz ?\nsoru 2\nsizce se?imlerde en ?ok oyu hangi partiler alacak , bir s?ralama yapabilir misiniz ?\nsoru 3\nse?imlerin sonucunu etkileyebilecek temel geli?meler ne olabilir ?\nd?nya gazetes? ankara tems?lc?l???\ntel : 312 446 99 24\nfax : 446 91 54\nankara @ dunyagazetesi . com . tr\n- - - -\nthis sf . net email is sponsored by : thinkgeek\nwelcome to geek heaven .\nhttp : / / thinkgeek . com / sf\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.717+0000", "entityId": 5349, "properties": {"text": "Subject: your help\ndear sir ,\ni am mrs mariam abacha , wife of the late nigerian\nhead of state , general sani abacha who died on\nthe 8 th\nof june 1998 while still on active duty . i am\ncontacting you in view of the fact that we will\nbe of\ngreat assistance to each other likewise\ndeveloping a\ncordial relationship .\ni currently have within my reach the sum of\nthirty\nsix million united states dollars\n( us $ 36 , 000 , 000 ) in\ncash , which i intend to use for investment\npurposes\nspecifically in your country . this money came\nas a\nresult of a payback contract deal between my\nlate\nhusband and a russian firm on our country ' s\nmulti - billion dollars ajaokuta steel plant . the\nrussian partners returned my husbands share of\nus $ 36 , 000 , 000 after his death and lodge it with\nmy\nlate husband ' s security company in nigeria of\nwhich i\nam a director . right now the new civilian\ngovernment\nhave intensified their probe on my husband ' s\nfinancial\nresources and they have revoked our licenses\nthat\nallows us to own a financial and oil company .\nin view\nof this , i acted very fast to withdraw the\nus $ 36 , 000 , 000 from the company ' s vault and\ndeposited\nit in a privately erected security safe abroad .\nno record ever existed concerning the money\nneither is\nthe money traceable by the government because\nthere is\nno documentation showing that we received the\nmoney\nfrom the russians .\ndue to the current situation in the country\nconcerning\ngovernment attitude towards my family , it has\nbecome\nquite impossible for me to make use of this\nmoney\nwithin , thus i seek assistance to transfer this\nmoney\ninto your safe bank account . on your consent , i\nshall expect\nyou to contact me urgently to enable us discuss\ndetails of this transaction .\nbearing in mind that your assistance is needed\nto\ntransfer the funds , i propose a commission of\n20 % of\nthe total sum to you for the expected services\nand\nassistance . your urgent response is highly\nneeded so\nas to stop further contacts . all correspondent\nshould be forwarded to this email : zenab . m @ ompadec . zzn . con\nor you can call my son mobile : hamza 234 - 8023137978 i use this\nopportunity to implore you to exercise the most\nutmost\nindulgence to keep this matter extra ordinarily\nconfidential what ever your decision while i\nawait your\nprompt response .\nbest personal regards ,\nmrs mariam abacha .\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.725+0000", "entityId": 5350, "properties": {"text": "Subject: none\nhello ,\nthis is a one time mailing .\nwe are looking for people who might be interested in\nworking p / t from home . this position involves working\n10 - 15 hours per week . you can expect to make $ 15 - $ 25\nper hour worked . to see a job description , you may go to\nhave a great day !\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.731+0000", "entityId": 5351, "properties": {"text": "Subject: isa article on embedded real - time linux automation applications . gji\nindustrial linux news :\nthe june issue of the isa ' s intech magazine has an interesting article on how truly open linux applications can lower development cost and increase the performance and reliability of industrial automation .\na copy of the the article can be found at : http : / / www . sixnet - io . com / html _ files / web _ articles / linux _ article _ info . htm\nthis linux news update brought to you by : www . linux 4 oems . info\nif you don ' t want to receive future linux news updates , please reply to this e - mail with the subject \" unsubscribe \" . you may also unsubscribe or resolve subscription difficulties by calling sixnet at 518 - 877 - 5173 or e - mailing : linuxnews @ sixnet - io . com\n.\nnaorwnwbxbsttgvelamusbs", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.736+0000", "entityId": 5352, "properties": {"text": "Subject: trading for a living ( all you should know about forex )\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.741+0000", "entityId": 5353, "properties": {"text": "Subject: 100 % free hardcore megasite ! !\n100 % free porn !\nwhat more can you ask for ?\nclick here\nremoval instructions : we strive to never send unsolicited mail .\nhowever , if you ' d rather not receive future e - mails from us ,\nclick here to send email and add the word remove in the subject line .\nplease allow 48 hours for processing .\n[ ( ^ ( pol : kj ) _ 8 j 7 bjk 9 ^ \" : } h & * tgobk 5 nkiys 5 ]\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.745+0000", "entityId": 5354, "properties": {"text": "Subject: easily lose weight / build muscle / reverse aging ! 21231\nas seen on nbc , cbs , cnn , and oprah !\nwould you like to lose weight while you\nsleep ?\nno dieting !\nno hunger pains !\nno cravings !\nno strenuous exercise !\nchange your life forever !\n100 % guaranteed !\nwww . quality - hgh . com\n* body fat loss 82 % improvement .\n* wrinkle reduction 61 % improvement .\n* energy level 84 % improvement .\n* muscle strength 88 % improvement .\n* sexual potency 75 % improvement .\n* emotional stability 67 % improvement .\n* memory 62 % improvement .\nwww . quality - hgh . com\nhow to unsubscribe :\nyou received this e - mail because you are registered at one of our web sites , or on one of our partners ' sites .\nif you do not want to receive partner e - mail offers , or any email marketing from us please\nclick here .\nlindacucme @ att . net", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.749+0000", "entityId": 5355, "properties": {"text": "Subject: national charity suffering since 9 / 11\ndear friend ,\n\" serving the tribes while sharing the culture \" . . . has been the mission for the american indian heritage foundation for the past 29 years .\nfor many years , aihf has met the emergency requests from hundreds of tribes with food , clothing , medical supplies , emergency grants and more . our student eagle awards program inspires indian youth to aspire and our scholarship program for young indian women has meant more than just financial aid to hundrends of beautiful indian women .\nthis worthwhile endeavor is entirely funded by very generous people like you who want to help and make a difference . we need your help now more than ever .\nclick here to learn more . . . maybe you can help .\n\" may you always walk in beauty \"\npale moon\nwe appologize if this message has been an inconvenience . you may comment to our webmaster .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.754+0000", "entityId": 5356, "properties": {"text": "Subject: you only think you ' re u . s . citizen ! ! 8403 zmsx 2 - 110 - 12\nyou only think you ' re a\nu . s . citizen ! !\nif you were born in washington d . c . , puerto rico ,\nguam , the virgin islands or some other u . s .\npossession ; you ' re right and i ' m wrong .\nbut - - if you were born in one of the 50 united\nstates of america , you are not a u . s .\ncitizen .\nrather , you are a citizen of idaho , ohio , maine ,\netc . ; the state of the union in which you were\nborn !\nthis simple reality holds serious benefits for you !\nsince you are not a \" federal \" citizen , you\nowe\nno federal income taxes . the irs\ncan only demand\nincome tax payments from 3 kinds of citizens :\n1 . those who are citizens of the u . s . !\n2 . anyone who receives \" income \" from a u . s .\nsource\n( and wait until you find out what \" income \" really\nis ! ) .\n3 . any citizen of one of the 50 united states of america\nwho volunteers to pay it !\nbelieve it or not , - - when you sign an irs w 4 form for\nyour \" employer \" you have entered into a \" hidden \"\ncontract and have volunteered to pay !\nour web site is filled with educational and\neye\nopening information on how you ' ve been tricked\ninto\nthis - and how you can free yourself from the\ntreachery .\nfor only one more e - mail to point you to our web site :\nreply with \" citizen \" in the subject box .\nclick here\nps : to be removed from the list , just put\n\" remove \" in subject line .\nclick here\n0489 xpjk 9 - 7 ll 0\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.758+0000", "entityId": 5357, "properties": {"text": "Subject: = ? iso - 8859 - 1 ? q ? lose = 20 fat = 2 c = 20 gain = 20 muscle = 20 with = 20 hgh ? =\nhello , [ ! to ! ] human growth hormone therapy\nlose weight while building lean muscle\nmassand reversing the ravages of aging all at once .\nremarkable discoveries about human growth\nhormones ( hgh ) are changing the way we think about aging and weight\nloss .\nlose weightbuild muscle tonereverse\naging\nincreased libidoduration of penile erectionhealthier bones\nimproved memoryimproved skinnew hair growthwrinkle disappearance\nvisit\nour web site and learn the facts : click here\nor\nhere\nyou are receiving this email as a subscr - in amerig lisve yoursts , just click\nhere\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.763+0000", "entityId": 5358, "properties": {"text": "Subject: . jif\n.\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.767+0000", "entityId": 5359, "properties": {"text": "Subject: fw : re : user name & password to membership to 15 sites cpunks @ minder . net pknkn\n# #\n# adult club ? #\n# offers free membership #\n# #\n15 of the best adult sites on the internet for free !\n> > > instant access to all sites now\n> > > your user name and password is .\n> > > user name : cpunks @ minder . net\n> > > password : do 949 w 4 z\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnews 07 / 01 / 02\nwith just over 2 . 2 million members that signed up for free , last month there were 429 , 947 new\nmembers . are you one of them yet ? ? ?\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nour membership faq\nq . why are you offering free access to 15 adult membership sites for free ?\na . i have advertisers that pay me for ad space so you don ' t have to pay for membership .\nq . is it true my membership is for life ?\na . absolutely you ' ll never have to pay a cent the advertisers do .\nq . can i give my account to my friends and family ?\na . yes , as long they are over the age of 18 .\nq . do i have to sign up for all 15 membership sites ?\na . no just one to get access to all of them .\nq . how do i get started ?\na . click on one of the following links below to become a member .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n# 15 . > new ! > celebs tv\nclick here > http : / / 157 . 237 . 128 . 20 / celebst / ? aid = 818932\n# 14 . > new ! > naughty live cam\nclick here > http : / / 157 . 237 . 128 . 20 / cams / ? aid = 818932\n# 13 . > adults farm\nclick here > http : / / 157 . 237 . 128 . 20 / farm / ? aid = 818932\n# 12 . > fetish door\nclick here > http : / / 157 . 237 . 128 . 20 / fetish / ? aid = 818932\n# 11 . > teen sex dolls ( voted best adult site 2001 - 2002 ! )\nclick here > http : / / 157 . 237 . 128 . 20 / teen / ? aid = 818932\n# 10 . > sweet latinas\nclick here > http : / / 157 . 237 . 128 . 20 / latina / ? aid = 818932\n# 9 . > fetishes\nclick here > http : / / 157 . 237 . 128 . 20 / wicked / ? aid = 818932\n# 8 . > tits patrol\nclick here > http : / / 157 . 237 . 128 . 20 / tits / ? aid = 818932\n# 7 . > pinklicious\nclick here > http : / / 157 . 237 . 128 . 20 / pink / ? aid = 818932\n# 6 . > play house porn\nclick here > http : / / 157 . 237 . 128 . 20 / play / ? aid = 818932\n# 5 . > sinful cherries\nclick here > http : / / 157 . 237 . 128 . 20 / sinful / ? aid = 818932\n# 4 . > asian sex fantasies\nclick here > http : / / 157 . 237 . 128 . 20 / asian / ? aid = 818932\n# 3 . > hot stripper sluts\nclick here > http : / / 157 . 237 . 128 . 20 / stripper / ? aid = 818932\n# 2 . > lesbian lace\nclick here > http : / / 157 . 237 . 128 . 20 / lesbian / ? aid = 818932\n# 1 . > gay porn club\nclick here > http : / / 157 . 237 . 128 . 20 / stripper / ? aid = 818932\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nremoval instructions :\nyou have received this advertisement because you have opted in to receive free adult internet\noffers and specials through our affiliated websites . if you do not wish to receive further emails or\nhave received the email in error you may opt - out of our database here http : / / 157 . 237 . 128 . 20 / optout /\n. please allow 24 hours for removal .\nthis e - mail is sent in compliance with the information exchange promotion and privacy protection\nact . section 50 marked as ' advertisement ' with valid ' removal ' instruction .\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.772+0000", "entityId": 5360, "properties": {"text": "Subject: the government grants you $ 25 , 000 !\nfree personal and business grants\n\" qualify for at least $ 25 , 000 in free\ngrants money - guaranteed ! \"\neach day over one million dollars in free\ngovernment\ngrants is given away to people just like you for a wide\nvariety of business and personal needs\ndear grant seeker ,\nin a moment , i ' ll tell you\nexactly how where to get grants . this money has to\nbe given away , why not to you ?\nyou may be thinking , \" how\ncan i get some of this free grants money \"\nmaybe you think it ' s impossible\nto get free money ?\nlet me tell you it ' s not\nimpossible ! it ' s a fact , ordinary people and businesses all across the\nunited states are receiving millions of dollars from these government and\nprivate foundation ' s everyday .\nwho can apply ?\nanyone can apply\nfor a grant from 18 years old and up !\ngrants from $ 500 . 00 to $ 50 , 000 . 00\nare possible ! grants don ' t have to be paid back ,\never ! claim\nyour slice of the free american pie .\nthis money is not a loan ,\ntrying to get money through a conventional bank can be very time consuming\nand requires a lot of paperwork , only to find out that you ' ve been denied .\nthese government agencies don ' t have to operate under the same stringent\nrequirements that banks do .\nyou decide how much money\nyou need , as long as it ' s a lawful amount and meets with the government\nagencies criteria , the money is yours to keep and never has to be repaid .\nthis money is non taxable interest free .\nnone of these programs require\na credit check , collateral , security deposits or co - signers , you can apply\neven if you have a bankruptcy or bad credit , it doesn ' t matter , you as\na tax payer and u . s . citizen are entitled to this money .\nthere are currently over\n1 , 400 federal programs , 24 , 000 state programs , 30 , 000 private foundations\nand 20 , 000 scholarship programs available .\nthis year over $ 30 billion\ndollars in free personal and business government grants money will be given\naway by government grants agencies .\ngovernment personal\nand business grants facts :\nover 20 million people get government\nmoney every year :\n1 , 000 , 000 entrepreneurs get money\nto start or expand a business\n4 , 000 , 000 people get money to invest\nin real estate\n6 , 000 , 000 people get money to go\nto college\n10 , 000 , 000 people get free help and\ntraining for a better job\ngetting business\ngrants\nanyone thinking about going\ninto business for themselves , or wanting to expand an existing business\nshould rush for the world ' s largest \" one - stop - money - shop \" where free business\ngrants to start or expand a business is being held for you by the federal\ngovernment .\nit\nsounds absolutely incredible that people living right here in the united\nstates of america wouldn ' t know that each year the world ' s largest source\nof free business help delivers :\nover $ 30 billion dollars in free\nbusiness grants and low - interest loans ;\nover one - half trillion dollars in\nprocurement contracts ; and\nover $ 32 billion dollars in free\nconsulting and research grants .\nwith an economy that remains\nunpredictable , and a need for even greater economic development on all\nfronts , the federal government is more willing than it ever has been before\nto give you the money you need to own your own business and become your\nown boss !\nin\nspite of the perception that people should not look to the government for\nhelp , the great government give - away programs have remained so incredibly\nhuge that if each of the approximately 8 million businesses applied for\nan equal share , they would each receive over $ 70 , 000 .\nmost\npeople never apply for free business grants because they somehow feel it\nisn ' t for them , feel there ' s too much red - tape , or simply don ' t know who\nto contact . the fact is , however , that people from all walks of life do\nreceive free grants money and other benefits from the government , and you\nshould also .\ngovernment grants\nfor personal need\nhelp to buy a new home for\nlow income families , repair your home , rent , mortgage payments , utility\nbills , purchase a new car , groceries , childcare , fuel , general living expenses ,\nacademic tutoring , clothing , school supplies , housing assistance , legal\nservices , summer camp , debts , music lessons , art lessons , any extracurricular\nactivities , pay bills for senior citizens , real estate taxes , medical expenses\nand general welfare . if you or someone you know suffered a fire lose there\nare programs available to help in replacing necessities .\nscholarships and\ngrants for education\ngrant money for preschool\nchildren and nursery school education , private , primary and secondary schools ,\nmen and women to further their education , scholarships for athlete ' s , business\nmanagement , engineering , computer science , medical school , undergraduate ,\ngraduate , professional , foreign studies and many more .\nhere ' s how you\ncan get free grants\nin the shortest time possible\nonce you know how and where\nto apply for a specific free grant , results are almost inevitable . the\ngovernment wants to give away this money . . . it is under congressional\nmandate to do so ! these funds are made available to help you , the tax payer .\nall that ' s required from you is the proper presentation of your grant request .\nthat ' s all .\nannouncing . . .\n\" the complete\nguide to government grants \"\nforget just about everything\nyou ' ve seen or heard about government grants . what i ' ve done is put together\na complete blueprint for researching , locating and obtaining government\ngrants . \" the complete guide to government grants \" is the most comprehensive\ntool for obtaining free grant money , and it comes in an electronic book\n( e - book ) format , meaning you can\ndownload and start using it minutes after you order .\nthe\ncomplete guide to government grants will provide you with access to thousands\nof grant and loan sources , with step by step instructions to proposal writing\nand contact procedures .\nin the complete guide to government\ngrants you ' ll find :\nstep by step guidelines\nto applying for government grants\ndirect access to over 1 , 400\ngrant , loan and assistance programs offered by the u . s . federal government .\nall you need to do is click find your program from the detailed categorized\nlistings\ndirect access to thousands\nof resources of state specific grant programs\nname , phone number and address\nof an expert in your state that will answer your grant related questions\nand help you with the grant application . . . free of charge\nonline directory of government\nsupported venture capital firms\na unique search tool that\nwill allow you to generate a customized listing of recently announced grant\nprograms\ngovernment funding programs\nfor small businesses\ntop 100 government programs\n( based on number of inquiries ) , discover what are the most sought after\ngovernment grants and assistant programs . claim your slice of the free\namerican pie\nonline directory of federal\nand state resources for government scholarships and grants for education\nstep by step guidelines\nto locating grants , loans and assistant programs for starting a new business\nor expanding an existing one\nhow to get free small business\ncounseling and expert advice courtesy of the us government\ngovernment grants application\nforms\ndirect access to thousands\nof government grants programs covering : small businesses , home improvement ,\nhome buying and homeownership , land acquisition , site preparation for housing ,\nhealth , assistance and services for the unemployed , job training , federal\nemployment , education , and much much more\nhow to develop and write\ngrant proposals that get results\n. . . plus much more\nthe complete guide to government\ngrants is so comprehensive , it provides you with direct access to practically\nevery source of free government grants money currently available .\nif you ' re an american citizen\nor resident , you are entitled to free grant money ranging from $ 500 to\n$ 250 , 000 or more . if you are black you have already qualified for 15 programs ,\nbeing hispanic , you qualify for many programs . being a christian will get\nyou into 20 programs , there are also many other programs available for\ndifferent faiths , jewish , catholic . not having any money , will get you\ninto over 30 programs , 550 programs if you are unemployed , or underemployed .\nthe list and sources are endless .\nyou are eligible ! this money\nis absolutely free and will be yours to use for any worthwhile purpose .\ndid you know you can apply\nfor as many grants as you want ?\nit ' s true , for instance ,\nyou could get a $ 65 , 000 grant to begin a weight loss business , get $ 8 , 800\nin tuition to become a nurse or $ 35 , 000 to open up the day - care center ,\nyou ' ve always dreamed of owning . and then , go out and apply for a grant\nto buy a home for you and your family . and once your new business starts\ndoing well you could go out and get another grant for expansion of your\nbusiness . the possibilities are endless .\nyou must qualify\nfor at least $ 25 , 000 in free\ngrants money , or your money back !\nwe are so confident in our\ngrants guide that if you have not received at least $ 25 , 000 in free grant\nmoney , or , if you are unhappy with our e - book for any reason within the\nnext 12 months , just send the e - book back and we will refund your entire\npayment . no questions asked ! !\nif you want to order , we\ninsist you do so entirely at our risk . that is why the e - book comes with\na . . . no risk full year money - back guarantee . there is absolutely\nno risk on your part with this 365 day guarantee . what we mean is we want\nyou to order without feeling you might \" get taken . \"\ntherefore , we want you to\norder this material today . . . read it , use it . . . and if for any reason you\naren ' t completely satisfied , you not only can cancel , you should ,\nfor an immediate refund of your purchase price . you simply can ' t lose .\nfree\nbonuses\njust to \" sweeten \" the deal ,\ni ' ll include the following four valuable bonuses , that you can keep\nas a gift , even if you later decide not to keep the grants guide !\nfree bonus # 1 :\na fully featured grants\nwriting tutorial software package\nthis info alone is worth\nthousands of dollars - i guarantee you can purchase a grants cd or info\nanywhere , and you will not receive this downloadable software that actually\nshows you how to apply and what to say , so that you are accepted for a\ngrant ! ! !\nthis interactive software\ntool will walk you through the grant - writing process and will teach you\neverything you need to know to write competitive grants proposals .\nthe program includes :\ndetailed information and\ntips on writing grants proposals ;\nhow to complete a grant\napplication package ;\nexamples of good , complete\ngrant packages ;\na glossary of grants terms ;\nresources and contacts ;\na mock grants - writing activity\nwhere you will be able to compare your results to a successful grant application\nplus much much more\nfree bonus # 2 :\nthe insider information\nreport : 61 ways to save money\nthis valuable special report\ncontains insider experts tips and techniques that will help you to save\nthousands of dollars . you ' ll discover little known secrets and tricks to\nsaving money on airline fares , car rental , new and used car buying , auto\nleasing , gasoline , car repairs , auto insurance , life insurance , savings\nand investment , credit cards , home equity loans , home purchase , major appliances ,\nhome heating , telephone services , food purchase , prescription drugs and\nmore .\nfree bonus # 3 :\nthe complete guide to\nstarting your own business\na\ncomprehensive manual that will give you all the guidelines and tools you\nneed to start and succeed in a business of your own , packed with guides ,\nforms , worksheets and checklists . you will be amazed at how simple these\nstrategies and concepts are and how easy it will be for you to apply them\nto your own business idea . hundreds were sold separately at $ 40 each . . .\nyou get it here for free .\nhere ' s\njust a taste of what ' s in the guide :\nhow\nto determine the feasibility of your business idea . a complete fill in\nthe blanks template system that will help you predict problems before they\nhappen and keep you from losing your shirt on dog business ideas .\na step by step explanation\nof how to develop a business plan that will make bankers , prospective partners\nand investors line up at your door . plus , a complete ready made business\nplan template you can easily adapt to your exact needs .\ndiscover the easiest , simplest\nways to find new products for your business that people are anxious to\nbuy .\nhow\nto make money with your new idea or invention . secrets of making sure you\nput cash in your pocket on your very first idea business venture .\ncomplete , step by step instructions\non how to plan and start a new business . this is must - know must - do information ;\nignore it and you stand a good chance to fail . you get specifically designed\ninstructions for each of the following : a service business , a retail store ,\na home based business , a manufacturing company , and more .\nwhat nobody ever told you\nabout raising venture capital money . insider secrets of attracting investors ,\nhow to best construct your proposal , common mistakes and traps to avoid ,\nand much more .\nchecklist\nfor entering into a partnership . keeps you from costly mistakes when forming\na partnership .\nhow to select a franchise\nbusiness . a step by step guide to selecting a franchise that is best for\nyou .\na complete step - by - step\norganized program for cutting costs in your business . clients of mine have\nachieved an average of 28 % to 35 % cost reduction with this technique , and\nyou can too . keep the money in your pocket with this one !\nwhat are the secrets behind\nconstructing a results driven marketing plan ? i will lead you step by step\ninto developing a marketing plan that will drive your sales through the\nroof .\na complete step by step\nguide guaranteed to help you increase your profits by up to 64 % , i call\nit \" the profit planning guide \" . this is a simple , practical , common sense\nstrategy , but amazingly enough , almost no one understands or uses it .\nfree bonus # 4 :\nguide to home business\nsuccess\nthis\nis afast , no - frills guide\nto starting and succeeding in a home based business . here ' s just a taste\nof what ' s in the guide :\nhome\nbusiness : is it for you ?\nwhat\nare the secrets behind the people who have million dollar home based businesses ?\nyou ' ll find a 24 tip list proven to turn your home business into a money\nmachine .\nlaws and regulations you\nmust be aware of to avoid legal errors .\nplanning\na home based business - insider secrets and tips revealed for ensuring\nyour success in a home business .\nfundamentals\nof home business financial planning .\nsimple ,\neasy to copy ideas that will enhance your image - and the response you\nget from your customers .\ncommon\nproblems in starting and managing a home based business - and how\nto solve them once and for all .\nwho i am and why i ' m qualified\nto give\nyou the best grants advice\navailable\ni ' m\nthe president of a leading internet based information business . i ' m also\nthe creator of \" the managing a small business cd - rom \" and the author of\nfive books .\ni ' ve\nbeen involved in obtaining grants and in small business for the past 23\nyears of my life , as a business coach , a manager of a consulting firm ,\na seminar leader and as the owner of five successful businesses .\nduring\nmy career as a business coach and consultant i ' ve helped dozens of business\nowners obtain government grants , start their businesses , market , expand ,\nget out of troubles , sell their businesses and do practically every other\nsmall business activity you can think of .\nthe\nguide presented here contains every tip , trick , technique and strategy\ni ' ve learned during my 23 year career . you practically get my whole brain\nin a form of an e - book .\nhow the grants guide is priced ?\nthe complete guide to\ngovernment grants is normally priced at $ 50 , but . . .\n. . . as part of an online\nmarketing test , if you purchase from this sale you pay only $ 19 . 99 ( that ' s\n75 % off . . . plus , you still get the free valuable bonuses . )\nif\nyou are serious about obtaining free grants money , you need this\nguide . don ' t delay a moment longer . order now ! ! !\np . s . the complete guide to government\ngrants will make a huge difference . you risk nothing . the guide is not\nthe original price of $ 50 , but only $ 19 . 99 ( if you purchase through\nthis sale ) and comes with a one year money back guarantee . and you\nget four valuable free bonuses which you may keep regardless . don ' t delay\na moment longer , order now ! ! ! !\nshipping\nand handling is free since we will\nemail you all of this info via access to our secure website which contains\neverything described above .\norder\nnow ! ! !\nif above link doesn ' t work , click here\n5945 cocw 8 - 467 cucn 8670 ndsz 7 - l 25\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.776+0000", "entityId": 5361, "properties": {"text": "Subject: ( no subject )\nwant to watch hardcore porn movies ?\nour site is voted the # 1 broadband movie site online !\nclick this link to watch our steaming chix in action :\nto unsubscribe from our list enter you email here :\nhttp : / / www . froggyhost . com / clubs / remove /\n[ jk 9 ^ \" : } h & * tgobk 5 nkiys 5 ]\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.785+0000", "entityId": 5362, "properties": {"text": "Subject: look ! desparately seeking 100 lazy people . . . . who wants to make money\nthis is not spam . thanks for posting to our promotional web sites . if you\nwish to no longer receive email from us at this email address , or if you feel\nyou received this email in error please send an email message to\nsolution 244 @ hotmail . com with \" remove \" placed in the subject line\ndear friend ,\nwe are desparately looking for 100 lazy people\nwho wish to make lots of money without working .\nwe are not looking for people who are self - motivated .\nwe are not looking for people who join every ' get rich\nquick ' scheme offered on the internet .\nwe are not looking for class presidents , beautiful\npeople , career builders or even college graduates .\nwe don ' t even want union workers or trade school graduates .\nwe want the laziest people that exist - the guys and\ngals who expect to make money without lifting a finger .\nwe want the people who stay in bed until noon .\nwe want those of you who think that getting out of bed to go\nlay on the couch is an effort that is best not thought about .\nif you meet this criteria , go to this site and join free :\nin case you haven ' t figured it out yet , we want\nthe kind of people who do not take risks .\nif you are the kind of person who will consider doing\nsomething that ' s not a ' sure thing ' , then do not respond .\nthis is too easy a way to make money\nand there ' s no challenge in it .\nif you can get to the website , you will be able to see the first home\nbusiness in history that requires no work . none .\nby clicking on this link and going to\nthis website , you will be aknowledging the fact that you\nwant to make enough money that you can quit\nyour regular job and sleep all day .\nwe are not looking for a commitment from you\nand we don ' t even want your money .\nas a matter of fact , we don ' t even want you\nto hear from us again if the idea of making lots\nof money without working does not interest you .\nso if nothing else , remember this -\nto make money without working for it just\n\" join free \" . simple as that .\nwe look forward to hearing from you .\nin all seriousness ,\nthis is not a \" no work \" program that will make you money without lifting\na finger .\nadvertising effectively requires work and plenty of it . oh , for sure , it ' s\nnot like picking cotton under a broiling sun , but it is work , nonetheless .\nand we do want peoples ' money only when they see the value of our\nproducts , services and upgrades .\nwe look forward to hearing from you .\ncordially your lazy friend ,\ntheresa brown\nwe have 10 extremely targeted safe - lists for you to use daily\nin your advertising campaign ! this is spam - free , worry - free advertising at\nits best !\nget your promotion to prosperity & peace\nsow a seed and god will meet your need !\ngive to your local charitable organization\nlife in the word\nwww . joycemeyer . org\nsuccess begins in the mind !\n* * * make it a great day * * *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.795+0000", "entityId": 5363, "properties": {"text": "Subject: i missed you 24632\nif amateurs is what you want , then we have them .\ntake a look at these hardcore sites . young hottt teens ! ! !\nthese are the best of the best when it comes to amateurs .\ndon ' t believe me ? take a look for yourself .\namateur petite\n- - - - - - - - - - - - - - - - - - - - - - -\nall natural tight coeds ! ! !\npetite natural breasted amateurs ! !\nexclusive amateur xxx videos ! ! !\nhundreds of exclusive petite amateur models ! !\nclick here to check out the action ! ! ! !\nhttp : / / tour 2 . amateurpetite . com / ? 1087\nhttp : / / tour 2 . amateurpetite . com / ? 1087\nample amateurs\n- - - - - - - - - - - - - - - - - - -\nbreasts . women have them , men love them . and for some men ( and women ! ) that old adage\n\" the bigger the better \" holds true ! and you ' ll find plenty to hold on to here - our stable of stacked\nexclusive ample amateurs will make your mouth water and your hands tired just looking at them !\nhttp : / / tour 2 . ampleamateurs . com / ? 1087\nhttp : / / tour 2 . ampleamateurs . com / ? 1087\namateur smut\n- - - - - - - - - - - - - - - - - -\nthe smuttiest xxx amateurs on the web ! ! !\nreal amateurs in explicit photo shoots\n1 , 000 ' s of high quality smut pics ! ! !\npics of \" the horny girl next door \"\nnasty amateurs gone wild ! ! !\nhttp : / / tourl . amateursmut . com / ? 1087\nhttp : / / tourl . amateursmut . com / ? 1087\nto be taken off this mailing list , simply hit your\nreply button and put \" remove \" anywhere in the subject .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.800+0000", "entityId": 5364, "properties": {"text": "Subject: checking account update\ndear reader :\nwe sometimes approach our analysts for their thoughts on emerging market sectors we ' re interested in . on certain occasions , they come to us with intriguing insights of certain aspects of the market that have caught their attention .\nas you know our track record speaks for itself we are happy to bring you another situation with huge upside potential we think this could be the one that when we look back shortly everyone will be saying i should have more .\nfor more info click here ! ! !\nremember : nothing ventured nothing gained\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.805+0000", "entityId": 5365, "properties": {"text": "Subject: toners and inkjet cartridges for less . . . . p\ntremendous savings\non toners ,\ninkjets , fax , and thermal replenishables ! !\ntoners 2 go\nis your secret\nweapon to lowering your cost for high quality ,\nlow - cost printer\nsupplies ! we have been in the printer\nreplenishables business since 1992 ,\nand pride ourselves on rapid response and outstanding\ncustomer service .\nwhat we sell are 100 % compatible replacements for\nepson , canon , hewlett packard ,\nxerox , okidata , brother , and lexmark ; products that\nmeet and often exceed\noriginal manufacturer ' s specifications .\ncheck out these\nprices !\nepson stylus\ncolor inkjet cartridge\n( so 20108 ) : epson ' s price :\n$ 27 . 99\ntoners 2 go price : $ 9 . 95 !\nhp\nlaserjet 4 toner cartridge\n( 92298 a ) :\nhp ' s\nprice :\n$ 88 . 99\ntoners 2 go\nprice : $ 41 . 75 !\ncome visit us on the web to check out our hundreds\nof similar bargains at toners\n2 go !\nrequest to be removed by clicking here\nc . l . kyle\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.810+0000", "entityId": 5366, "properties": {"text": "Subject: horny ? . . stop paying for porn - 12 free passes\ni\nknow you want pics of hot babes right ? i bet you want to\nget into\nthe best porn sites for free too ?\nhere ' s a secret :\nget into paysites free !\ntake\na minute to\nread what i ' ve got to tell you , and will have full access\nto\nsome of the internet ' s hottest membership sites for free .\nclick here\nthis costs\nnothing !\nnote :\nthis is not a spam email . this email was sent to you because your email was\nentered in on a website\nrequesting to be a registered subscriber . if you would would like to be removed\nfrom our list ,\nclick\nhere to cancel your account and you will * never * receive another\nemail from us !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.814+0000", "entityId": 5367, "properties": {"text": "Subject: some of the largest membership sites for free\nget porn for free\nfree password to :\n18 asian\nhuge tits xxx\nfree amateur hotties\nfree teen hotties\nfree and kinky\nfree farm sluts\nfree n ' famous\nadults only\ndiligent\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.820+0000", "entityId": 5368, "properties": {"text": "Subject: bigger , fuller breasts naturally in just weeks ! uqouq\nfor women ages 13 to 60 plus . . . .\nas seen on tv . . . .\nsafely make your breasts\nbigger and fuller\nin the privacy of your own home .\nguaranteed quick results\nclick here for full report\nmcskjfirglkckubuvfiwwp\n- - - -\nthis sf . net email is sponsored by : jabber - the world ' s fastest growing\nreal - time communications platform ! don ' t just im . build it in !\nhttp : / / www . jabber . com / osdn / xim\nspamassassin - sightings mailing list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.826+0000", "entityId": 5369, "properties": {"text": "Subject: the ultimate in pc security and surveillance .\n* this message is sent in\ncompliance of the new email bill hr 1910 . under bill hr 1910 passed\nby the 106 th us congress on may 24 , 1999 . per section hr 1910 . if\nyou wish to be removed from our mailing list , please click\nhere . all removal requests are handled electronically and may\ntake up to 24 hours to become in effect .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.831+0000", "entityId": 5370, "properties": {"text": "Subject: [ ilug ] ilug - admin , enhance your bust amazing breast enhancing capsules\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nguaranteed to increase , lift and firm your\nbreasts in 60 days or your money back ! !\n100 % herbal and natural . proven formula since\n1996 . increase your bust by 1 to 3 sizes within 30 - 60\ndays and be all natural .\nclick here :\nhttp : / / 64 . 123 . 160 . 91 : 81 / li / wangxd /\nhttp : / / 202 . 101 . 163 . 34 : 81 / li / wangxd /\nabsolutely no side effects !\nbe more self confident !\nbe more comfortable in bed !\nno more need for a lift or support bra !\n100 % guaranteed and from a name you know and\ntrust !\nyou are receiving this email as a double opt - in\nsubscriber to the standard affiliates mailing\nlist .\nto remove yourself from all related email lists ,\njust click here :\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.837+0000", "entityId": 5371, "properties": {"text": "Subject: outstanding opportunities for \" premier producers \"\nfor a confidential phone interview please complete form submit\nname :\ne - mail :\nphone :\ncity :\nstate :\narea of interest :\nfull - time agent\nsales manager\ngeneral agent\ncpa partner\nindependent agent\nwe\ndon ' t want anybody to receive or mailing who does not wish to\nreceive them . this is professional communication sent to insurance\nprofessionals . to be removed from this mailing list , do not reply\nto this message . instead , go here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.845+0000", "entityId": 5372, "properties": {"text": "Subject: fast ship viagra , phentermine , etc . . . riym\nwe ship worldwide within 24 hours !\nno waiting rooms , drug stores , or embarrassing conversations .\nour licensed pharmacists will have your order to you in 1 or 2 days !\nclick this link to get started today !\nviagra and many other prescription drugs available , including :\nxenical and phentermine , weight loss medications used to help\noverweight people lose weight and keep this weight off .\nvaltrex , treatement for herpes .\npropecia , the first pill that effectively treats\nmale pattern hair loss .\nzyban , zyban is the first nicotine - free pill that ,\nas part of a comprehensive program from\nyour health care professional , can help you\nstop smoking .\nclaritin , provides effective relief from the symptoms\nof seasonal allergies . and much more . . .\ncilck this link to get started today !\nto be extracted from future contacts visit :\nhttp : / / worldrxco . com / remove . php\nflierguy 49 _ 2000\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.851+0000", "entityId": 5373, "properties": {"text": "Subject: get big , ripped & strong ! ! deca , d - bol , winni - v ! 1095\nget big , ripped , & strong ! real anabolic pharmaceuticals ! *\n- d - bol\n- winni - v\n- equipose\n- ghb\n- and more !\n- click here to enter = = = = = > sdi - labs anabolics\n( please click on the link below or copy and paste the following url into your browser if above link does not work . )\nhttp : / / www . sdilabsol - 02 . com / s - labs /\n- build incredible muscle size and strength\n- get vascular , hard and ultra ripped\nnew extremely powerful products\n- liquid anodrol\n- sustenol 250\n- deca nor 50\n- masterbolan\n- somatroph hgh\n- click here to enter = = = = = > sdi - labs anabolics\nsdi - labs\ntoll free : 1 - 561 - 742 - 5932\n9835 - 16 lake worth rd . # 227\nlake worth , fl 33467\nto be cancelled for free from our email list please click on the following link and and hit send . your email address will be removed within 24 hours . cancel @ tgifcam . com\nif above link does not work please send an email with the word cancel in the subject to cancel @ tgifcam . com\nif you have previously cancelled and are still receiving this message , or need to speak with us regarding this email , you may call our abuse control center immediately toll free at 1 - 888 - 425 - 6788 or email nomorel @ tgifcam . com , you may also write us at nomore 9835 - 16 lake worth road # 227 - lake worth , fl 33467\n* our sincere love and prayers go out to all of the familys and individuals that were touched by the horrible acts committed against our country . and also for our soldiers who are now defending this great land .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.856+0000", "entityId": 5374, "properties": {"text": "Subject: free euro .\non january lst 2002 , the european countries began\nusing the new euro . never before have so\nmany countries with such powerful economies united\nto use a single currency . get your piece of history\nnow ! we would like to send you a free euro\nand a free report on world currency . just visit\nour site to request your euro and euro report :\nhttp : / / 209 . 163 . 187 . 42 / euro - exchange /\nin addition to our currency report , you can receive\nour free investment package :\n* learn how $ 10 , 000 in options will leverage $ 1 , 000 , 000 in\neuro currency . this means even a small movement in the market\nhas huge profit potential .\nif you are over age 21 and have some risk capital , it ' s\nimportant that you find out how the euro will\nchange the economic world and how you can profit !\nclick now ! http : / / 209 . 163 . 187 . 42 / euro - exchange /\n$ 10 , 000 minimum investment\nplease carefully evaluate your financial position before\ntrading . only risk capital should be used .\nhttp : / / 209 . 163 . 187 . 42 / opt - out / to optout .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.860+0000", "entityId": 5375, "properties": {"text": "Subject: congratulations on your 6 new signups\nwe guarantee you free signups before you ever pay\na penny ! we will show you the money before you\never take out your wallet . sign up for free and test\ndrive our system . no obligation whatsoever . no time\nlimit on the test drive . our system is so powerful that the\nsystem enrolled over 400 people into my downline the first week .\nto get signed up for free and take a test drive click the link :\nthe national attention drawn by this program\nwill drive this program with incredible momentum !\ndon ' t wait , if you wait , the next 400 people will be above you .\nsignup now for your free test drive and have the next 400\nbelow you !\nall the best ,\ndaniel\nfinancially independent home business owner\n1 - 800 - 242 - 0363 , mailbox 1993\nto be excluded from future notices :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.864+0000", "entityId": 5376, "properties": {"text": "Subject: 300 million business charset = windows - 1252 \" >\nsick and tired of\nemail directories that don ' t deliver what they promise ?\nthese days it ' s almost getting to the point were you\nneed to buy every single e - mail directory on the market and weed through\nthem to get some decent e - mail addresses to bulk out to .\nwell the buck stops here ! we ' ve bought almost every\ngood directory on the market , cleaned it up and compiled all 300 million\nrecords on 3 cds for you !\nplenty of targeted lists are also available in areas\nlike :\nstate and area code\ngambling\ndining\ngardening\nhealth\ngolf\nhome business\ninvestment\nopt - in\nweb design\ntravel\n. . . and many more !\ncheck out this amazing new collection today ! get our website\naddress now by sending a blank email to cloudhaven @ btamail . net . cn\nonce you send an email you will receive our website\nurl in your inbox within seconds !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.869+0000", "entityId": 5377, "properties": {"text": "Subject: tired of your high mortgage rate - refinance today . . . .\ndear homeowner ,\ninterest rates are at their lowest point in 40 years ! we help you find the\nbest rate for your situation by matching your needs with hundreds of\nlenders !\nhome improvement , refinance , second mortgage ,\nhome equity loans , and much , much more !\nyou ' re eligible even with less than perfect credit !\nthis service is 100 % free to home owners and new home buyers\nwithout any obligation .\nwhere others say no , we say yes ! ! !\nhttp : / / www . page 4 life . org / users / loans 4 u /\ntake just 2 minutes to complete the following form .\nthere is no obligation , all information is kept strictly\nconfidential , and you must be at least 18 years of age .\nservice is available within the united states only .\nthis service is fast and free .\nhttp : / / www . page 4 life . org / users / loans 4 u /\nto opt out :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.873+0000", "entityId": 5378, "properties": {"text": "Subject: latina teens ! !\nsee these sweet latina honeys go from clothed to fucked ! ! !\ntoo good to be true ?\nnot a chance . . . our girls love to fuck live . . . .\nclick here\nyou must be at least 18 to enter !\nto be removed from our \" in house \" mailing list click here\nand you will automatically be removed from future mailings .\nyou have received this email by either requesting more information\non one of our sites or someone may have used your email address .\nif you received this email in error , please accept our apologies .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.878+0000", "entityId": 5379, "properties": {"text": "Subject: money is available .\ncsse\nmortgage companies make you wait . . . they demand to interview you . . . they intimidate you . . . and all of that while they decide if they even want to do business with you . . .\nwe turn the tables on them . . .\nnow , you ' re in charge\njust fill out our simple form and they will have to compete for your business . . .\nclick here for the form\nprograms for every credit situation\nlenders reply within 24 hrs\nborrow up to 125 % of your home ' s value\nspecial programs for self - employed\nno income verification programs\nclick here to save thousands on your mortgage\nplease know that we do not want to send you information regarding our special offers if you do not wish to receive it . if you would no longer like us to contact you or you feel that you have received this email in error , you may click here to unsubscribe .\nwsop\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.882+0000", "entityId": 5380, "properties": {"text": "Subject: tombrandon , bigger , fuller breasts naturally in just weeks\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nguaranteed to increase , lift and firm your\nbreasts in 60 days or your money back ! !\n100 % herbal and natural . proven formula since\n1996 . increase your bust by 1 to 3 sizes within 30 - 60\ndays and be all natural .\nclick here :\nhttp : / / 64 . 123 . 160 . 91 : 81 / li / linxiao /\nhttp : / / 202 . 101 . 163 . 34 : 81 / li / linxiao /\nabsolutely no side effects !\nbe more self confident !\nbe more comfortable in bed !\nno more need for a lift or support bra !\n100 % guaranteed and from a name you know and\ntrust !\nyou are receiving this email as a double opt - in\nsubscriber to the standard affiliates mailing\nlist .\nto remove yourself from all related email lists ,\njust click here :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.888+0000", "entityId": 5381, "properties": {"text": "Subject: women with cum on their face ! ! !\nclick here to be removed\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.892+0000", "entityId": 5382, "properties": {"text": "Subject: work from home . free info\nwe need help . we are a 14 year old fortune 500 company , and we have\ngrown 1000 % ! we cannot keep up . we are looking for individuals who\nwant to work at home , and make a good living .\nso if you are looking to be employed from home with a career that has\nvast opportunities , then go :\nhttp : / / www . lotsonet . com / opportunity\nand fill out our info form . no experience required , we will train you .\nno committment is required by filling out the form , it is for info\nonly .\nhttp : / / www . lotsonet . com / opportunity\nyou want to be independent ? then make it happen !\nhappen !\nsimply click on the link below for free , no obligated information !\nguaranteed !\nhttp : / / www . lotsonet . com / opportunity\nto be removed from our link simple go to :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.897+0000", "entityId": 5383, "properties": {"text": "Subject: fresh , crisp leads from allmerica financial\nthrough\nestablished sponsored market programs with cpa firms ,\nbanks , credit unions and property and casualty firms ,\nyou ' ll receive the kind of leads you need to grow your\nclient base and meet their long - term financial needs .\nallmerica\nexperts will help you map a strategy for selecting and\npenetrating the right market or markets to grow your practice .\nwe ' ll also give you the on - going support to make sure\nthat you stay on - target .\nallmerica\ngives you an edge by providing you with web - based new\nbusiness technology and customer service programs designed\nfor responsiveness and convenience .\nyour\nlocal office will provide proven , innovative marketing\nand sales support programs brought to you by your field - based\nassociates .\ninvestment products and services\nbrokerage services\nprivate money managers\nindividual securities\nautomatic account rebalancing\nmutual funds\nindividual retirement accounts\nproprietary and non - proprietary variable and fixed annuities\nasset allocation models and investment planning\nwrap programs\n529 plans\nother personal financial services\nfinancial planning\ntax planning\nretirement planning\ncomprehensive planning software\neducation planning\nrisk management insurance planning\nestate planning\nbusiness services\nbusiness planning\nbusiness insurance : buy - sell , key - person\nbusiness continuation\nexecutive compensation\nqualified plans : pensions , profit - sharing , 401 k\ngroup insurance : life , disability , medical , etc .\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n02 - 0977\nwe don ' t want anybody to receive our mailing who does not wish\nto receive them . this is a professional communication sent to\ninsurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here : http : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.905+0000", "entityId": 5384, "properties": {"text": "Subject: the money control system\nthe money control system\nwould your lifestyle change if you had an\nextra $ 10 , 000 each and every month ? find out now !\nthe\nmoney control system\nhow you can get rich , stay\nrich enjoy being rich\nwith the money control system .\nhere ' s what people are saying .\ni don ' t have any financial\nworries . . . i can now pursue the interests and\nhobbies and the things i want to do . . .\nthe mutual funds we are into are rated among the top five . . .\nwe are looking at probably 15 % , 20 % return . . .\nmy goal was specifically to take the $ 10 , 000 that i managed\nto accumulate through savings , invest that and , in a period of\nnine months to a year , come back with at least $ 15 , 000 .\ni came back with $ 16 , 000 .\ni saved in taxes alone what i paid for\nmy kid ' s first year of college .\nanyone who can learn from money control would be crazy to pass up the\nchance . the control steps work so well that anyone can become a millionaire .\ni ' m not a millionaire yet , but i ' m living like one . i call my time my own , and\nwork whenever i decide to . i am only 30 years old , so i plan to work another\nfive years and retire with the income from a million dollars worth of\ninvestments . before the money control system showed me the way , i would\nnever have believed it possible . me , a millionaire !\nb . h . salt lake city ut\nclick\nhere to learn more and change your life !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.910+0000", "entityId": 5385, "properties": {"text": "Subject: free ltc \" sales closers \"\nwhich virtually sells long term care to your clients !\nthis turnkey presentation prepares your client for the sale . it\nhas both video and audio , so you just sit back , run the presentation ,\nand get the applications ready .\nthe same great tool in a flip chart format with a\ncomplete script to keep you on track .\nthe choice is yours choose one of these great\nltc point - of - sale items . which gift would you like ? all you have\nto do is complete appointment paperwork with mo marketing .\nrespond to this e - mail or call us today and we will send over\nthe paperwork for one of our top carriers . remember - - we train\nour agents on products - free - and we also give at least a $ 50\ncommission bonus for every app you send us . \"\nfor agent use only .\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe don ' t want anybody to receive\nour mailing who does not wish to receive them . this is a professional\ncommunication sent to insurance professionals . to be removed from\nthis mailing list , do not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.915+0000", "entityId": 5386, "properties": {"text": "Subject: the stickiest faces ever ! ! ! !\nshoot your wad all over her face .\nthese girls love to suck cock and lucky for you ,\nthey love to suck cock while our cameras are rolling .\n\" we have the nastiest cum sucking sluts\navailable anywhere ! \"\nclick here\nyou must be at least 18 to enter !\nto be removed from our \" in house \" mailing list click here\nand you will automatically be removed from future mailings .\nyou have received this email by either requesting more information\non one of our sites or someone may have used your email address .\nif you received this email in error , please accept our apologies .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.919+0000", "entityId": 5387, "properties": {"text": "Subject: computer file protection\ndear hulkjr ,\nwant the best in computer file security ?\nin today ' s society of computer hacking , identity theft and general snooping , it is\nmore important than ever to take precautions to protect your privacy . the internet\nis by far the preferred manner of communication in today ' s fast paced world . it does ,\nhowever , present privacy concerns when communicating personal or confidential\ninformation . it also provides computer hackers an extensive playground , with your\nidentity and financial information as the grand prize .\nlock & key encrypter is the perfect solution to these privacy concerns . this affordable ,\neasy to use software encrypts your computer files for safe storage or transmittal\nover the internet .\ndon ' t become a victim . protect your privacy and your financial well being .\norder today ! this is a limited time offer at this amazing low price $ 19 . 99\nvisit our secure website for an in - depth look at this product :\nhttp : / / www 299 . fastwebsnet . com\nto be eliminated from future marketing :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.924+0000", "entityId": 5388, "properties": {"text": "Subject: hassle - free microsoft sql server remote database administration\nvisit us at\nwww . sqlcare . comor\ncall us at ( 214 ) 740 . 0923\nto be removed , reply with remove in\nthe\nsubject line .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.928+0000", "entityId": 5389, "properties": {"text": "Subject: business intent\ndear sir ,\ni am stanley woodwork , the secetary of africa white farmers\nco - operation ( awfc ) of zimbabwe . after the last general elections in my country where the incumbent president mr . robert mugabe won the presidential election , the\ngovernment has adopted a very aggressive land reforms programme . this programme is solely aimed at taking the land owned by white african farmers for redistribution to black africans . this programme has attracted worldwide\ncondemnation from world leaders including british prime minister , mr tony blair and also forced several white farmers to flee the country for fear of\nvictimization and physical abuse .\ntwo weeks ago , our headquartes in harare was attacked and\nlooted by black protesters and in the process burnt down the whole building . fortunately , they did not get access to the huge funds kept in the strong room which\nbelong to the co - operation . this cash was kept at the secretariat rather than in the bank for fear of seizure by the government .\nnow i have the funds in my possession and would need to get it invested in a viable business venture in europe . the cash in question is us $ 46 million dollars .\nonce i can get your commitment and sincerity of investing\nthis funds on our behalf then i would proceed to get the funds freighted to europe , where you would be required to pick it up for investment for us .\nyou do not have anything to worry about as i would undertake all charges involved in freighting the funds to europe , and the business proposal is 100 % legal and risk free .\nyou would be adequately compensated for all your effort once we have gotten the funds to europe .\nplease get back to me if you can be of assistance and i would want our correspondence to be via email as most phone lines of white farmers are bugged by the government .\ni expect 100 % confidentiality and your prompt response to\nthis mail so as to proceed . you may also reach me on stanleywoodwork @ email . com\nkind regards ,\nstanley woodwork .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.933+0000", "entityId": 5390, "properties": {"text": "Subject: sometimes , not always , i like the idea of a chick . . . with a horse . . .\nfreeky fucking shit !\nthis is the craziest this that i have ever seen ! !\nyou will not believe your eyes . . and best of all it is\nfree to join forever ! !\njust go to the site and enter your email that is all ! hurry they will not be doing this forever ! ! !\nvery graphic material - mature audience only !\nyou must be at least 18 years old to enter !\nthis\nemail was sent to you because your email address is part of a targeted opt - in\nlist . you have received this email by either requesting more information on\none of our sites or someone may have used your email address . if you received\nthis email in error , please accept our apologies . if you do not wish to receive\nfurther offers , please click below and enter your email to remove your email from\nfuture offers .\nclick here to remove\nanti - spam\npolicy disclaimer : under bill s . 1618 title iii passed by the 105 th u . s . congress ,\nmail cannot be considered spam as long as we include contact information\nand a remove link for removal from this mailing list . if this e - mail is unsolicited ,\nplease accept our apologies . per the proposed h . r . 3113 unsolicited commercial\nelectronic mail act of 2000 , further transmissions to you by the sender may\nbe stopped at no cost to you !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.938+0000", "entityId": 5391, "properties": {"text": "Subject: an innovative plan for today ' s market\ngive your clients what they want and need : guaranteed death benefits\nand long term care benefits without expensive and continuous long\nterm care premiums .\nlifetime guarantees\nreturn of premium guarantees for single pay plans\nconvert tax deferred to tax free benefits ( for your clients ' heirs ) .\nsimplified underwriting - non - medical , no blood , no urine ,\nno ekg . have your clients complete a 6 question application , fax to\nunderwriting and generally within 72 hours you will have status .\ncall or e - mail us today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nthe future series convention march 2003 .\njoin us in maui during prime season - an experience you will never forget !\n* up to $ 500 , 000\nmaximum ; $ 25 , 000 must remain in policy after this benefit is exercised .\n* * 10 % commission on single pay plan ages 45 - 80 . * * * single pay\nplans only . product and certain features not available in all states .\nthe future protector series ( policy form iswl - 1 , iswl - 5 , iswl - 7 ,\niswl - 21 , iswl - 25 , iswl - 210 ) is underwritten by monumental life insurance\ncompany . rider costs and features vary according to state . for broker\nuse only . not approved for use with the general public as advertisement\nfor purchase of annuity or insurance coverage . 0602 anfg 21\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.942+0000", "entityId": 5392, "properties": {"text": "Subject: line ?\nusa today says \" the must have of the new millenium \" nbc ' s dateline says \" if you want a clear sound then this penny $ item can save you minutes in clarity \"\nboost\nyour reception\non\nany cell phone or cordless\n300 % more clarity !\ndon ' t\nbuy another phone because of bad recepiton .\nimprove your communication instantly by\nsimply installing this small chip .\npowerful reception booster\nsave 70 % . . . as seen on t . v . !\nno\nother product compares !\nultra - thin and transparent\ninstalls in a second !\npower of a 4 ft antenna !\nno more dropped or interrupted calls\nwork any place your singal may be weak !\nadvertised on t . v . for over 3 times the price .\nclick\nhere now\n\" . . . it was so easy to\ninstall . . . \"\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.947+0000", "entityId": 5393, "properties": {"text": "Subject: your premier mortgage information source\nmortgage rates slashed for\nthe last time !\nlet us help you get a new mortgage for up to\n100 % of your home value\nlower your monthly payment !\nconsolidate your debt !\nshorten the term of your loan !\nreduce your interest rate !\nnational average mortgage\nrates\nprogram\nrates\n30 yr fixed\n6 . 50 %\n15 yr fixed\n6 . 25 %\n1 yr arm\n5 . 51 %\nchoose from hundreds of\nloan programs like :\npurchase loans\nrefinance\ndebt consolidation\nhome improvement\ninterest only jumbo ' s\nno income verification\nfill out this simple\nform and we will compete for your business . . .\nrequired input field *\nname *\naddress\ncity\nstate *\nzip code *\nbuiness phone *\nhome phone\nbest time to contact\nmorning afternoon evening\ntotal loan request\napprox . home value\na consultant will contact you soon .\nall information given\nherein is strictly confidential and will not be re - distributed for\nany reason other than for the specific use\nintended . to be\nremoved from our distribution lists , please click\nhere . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.952+0000", "entityId": 5394, "properties": {"text": "Subject: the best investments\notc\nnewsletter\ndiscover tomorrow ' s winners\nfor immediate release\ncal - bay ( stock symbol : cbyi )\nwatch for analyst \" strong buy recommendations \" and several advisory newsletters picking cbyi . cbyi has filed to be traded on the otcbb , share prices historically increase when companies get listed on this larger trading exchange . cbyi is trading around 25 cents and should skyrocket to $ 2 . 66 - $ 3 . 25 a share in the near future .\nput cbyi on your watch list , acquire a position today .\nreasons to invest in cbyi\na profitable company and is on track to beat all earnings estimates !\none of the fastest growing distributors in environmental safety equipment instruments .\nexcellent management team , several exclusive contracts . impressive client list including the u . s . air force , anheuser - busch , chevron refining and mitsubishi heavy industries , ge - energy environmental research .\nrapidly growing industry\nindustry revenues exceed $ 900 million , estimates indicate that there could be as much as $ 25 billion from \" smell technology \" by the end of 2003 .\n! ! ! ! ! congratulations ! ! ! ! ! our last recommendation to buy orbt at $ 1 . 29 rallied and is holding steady at $ 3 . 50 ! congratulations to all our subscribers that took advantage of this recommendation .\nall removes honored . please allow 7 days to be removed and send all addresses to :\ngoneforgood @ btamail . net . cn\ncertain statements contained in this news release may be forward - looking statements within the meaning of the private securities litigation reform act of 1995 . these statements may be identified by such terms as \" expect \" , \" believe \" , \" may \" , \" will \" , and \" intend \" or similar terms . we are not a registered investment advisor or a broker dealer . this is not an offer to buy or sell securities . no recommendation that the securities of the companies profiled should be purchased , sold or held by individuals or entities that learn of the profiled companies . we were paid $ 27 , 000 in cash by a third party to publish this report . investing in companies profiled is high - risk and use of this information is for reading purposes only . if anyone decides to act as an investor , then it will be that investor ' s sole risk . investors are advised not to invest without the proper advisement from an attorney or a registered financial broker . do not rely solely on the information presented , do additional independent research to form your own opinion and decision regarding investing in the profiled companies . be advised that the purchase of such high - risk securities may result in the loss of your entire investment . not intended for recipients or residents of ca , co , ct , de , id , il , ia , la , mo , nv , nc , ok , oh , pa , ri , tn , va , wa , wv , wi . void where prohibited . the owners of this publication may already own free trading shares in cbyi and may immediately sell all or a portion of these shares into the open market at or about the time this report is published . factual statements are made as of the date stated and are subject to change without notice .\ncopyright c 2001\notc\n* * * *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.960+0000", "entityId": 5395, "properties": {"text": "Subject: congratulations hpshum you ' ve won !\ncongratulations !\nofficial\nnotification\nhpshum @ hotmail . com\nyou have been specially selected to register for a\nflorida / bahamas vacation !\nyou will enjoy :\n8 days / 7 nights of lst class accomodations\nvalid for up to 4 travelers\nrental car with\nunlimited mileage\nadult casino cruise\ngreat florida attractions !\nmuch much more . . .\nclick here !\n( limited availability )\nto no longer receive this or any other offer from us , click here to unsubscribe .\n[ bjk 9 ^ \" : } h & * tgobk 5 nkiys 5 ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.967+0000", "entityId": 5396, "properties": {"text": "Subject: [ ilug ] stop the mlm insanity\ngreetings !\nyou are receiving this letter because you have expressed an interest in\nreceiving information about online business opportunities . if this is\nerroneous then please accept my most sincere apology . this is a one - time\nmailing , so no removal is necessary .\nif you ' ve been burned , betrayed , and back - stabbed by multi - level marketing ,\nmlm , then please read this letter . it could be the most important one that\nhas ever landed in your inbox .\nmulti - level marketing is a huge mistake for most people\nmlm has failed to deliver on its promises for the past 50 years . the pursuit\nof the \" mlm dream \" has cost hundreds of thousands of people their friends ,\ntheir fortunes and their sacred honor . the fact is that mlm is fatally\nflawed , meaning that it cannot work for most people .\nthe companies and the few who earn the big money in mlm are not going to\ntell you the real story . finally , there is someone who has the courage to\ncut through the hype and lies and tell the truth about mlm .\nhere ' s good news\nthere is an alternative to mlm that works , and works big ! if you haven ' t yet\nabandoned your dreams , then you need to see this . earning the kind of income\nyou ' ve dreamed about is easier than you think !\nwith your permission , i ' d like to send you a brief letter that will tell you\nwhy mlm doesn ' t work for most people and will then introduce you to\nsomething so new and refreshing that you ' ll wonder why you haven ' t heard of\nthis before .\ni promise that there will be no unwanted follow up , no sales pitch , no one\nwill call you , and your email address will only be used to send you the\ninformation . period .\nto receive this free , life - changing information , simply click reply , type\n\" send info \" in the subject box and hit send . i ' ll get the information to you\nwithin 24 hours . just look for the words mlm wall of shame in your inbox .\ncordially ,\nsiddhi\np . s . someone recently sent the letter to me and it has been the most\neye - opening , financially beneficial information i have ever received . i\nhonestly believe that you will feel the same way once you ' ve read it . and\nit ' s free !\nthis email is never sent unsolicited . this is not \" spam \" . you are receiving\nthis email because you explicitly signed yourself up to our list with our\nonline signup form or through use of our ffa links page and e - maildom\nsystems , which have explicit terms of use which state that through its use\nyou agree to receive our emailings . you may also be a member of a altra\ncomputer systems list or one of many numerous free marketing services and as\nsuch you agreed when you signed up for such list that you would also be\nreceiving this emailing .\ndue to the above , this email message cannot be considered unsolicitated , or\nspam .\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.972+0000", "entityId": 5397, "properties": {"text": "Subject: re : my pic\nhi sweetie ,\ncome see me and my hot girl friends school at our new web site - >\nhttp : / / picturepost . phreehost . com / mypic /\ncome to see fast before delete this page .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.976+0000", "entityId": 5398, "properties": {"text": "Subject: online live striptease for you\nsee me naked click here", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.981+0000", "entityId": 5399, "properties": {"text": "Subject: hardcore sex & orgies ! ! !\nhot girls fucking hard ! ! !\nclick here to see\nclick here to see\nclick here to see\n* over 150 , 000 xxx pictures\n* 125 , 000 + sex videos\n* 100 ' s of livecams & shows\n* erotic stories & adult chat rooms\n* new content added every\nday !\nclick here to enter\nclick here to see\nclick here to see\nclick here to see\nthis newsletter is not unsolicited . the email address has been subscribed to our mailing list . if you would like to stop receiving this newsletter , just click here to unsubscribe and we ' ll block your email address immediately .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.985+0000", "entityId": 5400, "properties": {"text": "Subject: 75 % reduction in road accidents\naugust , 2002\ndear sir / madam ,\nin case you have received this mail earlier , kindly ignore this mail . it may have\nbeen re - sent to you by mistake . ours is not a mailing list and we have no intention of sending any regular mails to anybody .\nwe have devised a set of systems , which can reduce the damage caused to vehicles and deaths and injury caused to passengers and pedestrians in vehicular accidents by more than\nseventy - five percent\nwe have already filed and are in process of filing further , multiple and appropriate disclosure documents , provisional patent applications at the united states patent & trademarks office ( uspto ) , and also applications under the patent co - operation treaty at world intellectual property organization ( wipo ) at geneva .\nthere is absolutely no doubt that our idea is new and innovative . moreover , we are very confident and very sure that this will help reducing / minimizing human suffering to a very large extent . there is no doubt that the product devised by us will change the face of the earth forever . brief details relating to our product are detailed in the annexures under the following headings :\nstatistics advantages\noptions\neconomics\nwe are looking for the followings :\n01 . business consultancy and advice regarding the most viable , practical and profitable course of action under the circumstances and also consultancy on patents one person moderately injured every three seconds ; one person mildly injured every three seconds . )\n( c ) current yearly automobile sales worldwide - more than 1000 billion us $ .\n( d ) number of automobiles worldwide - more than 1000 billion pieces\n( e ) daily loss caused due to vehicular accidents worldwide\nmore than 2 billion us $ per day .\n( 2 % of the worldwide gross national product of more than 36500 billion us $ = more than 730 us $ per year = more than 2 billion us $ per day )\ntheadvantages of the technology developed by us :\na . the introduction of such technology will dramatically reduce the expenses of auto - insurance . this reduction of insurance cost will be at par with or even more that the expenses incurred towards the introduction of such technology in modern day vehicles . accordingly , the life insurance premier will also undergo drastic reduction . additionally , because of saving of lives , the outgo of the insurance companies will reduce substantially .\nb . as per the who studies and projections , road accidents occupy the number nine positions by way of causes of death in the world today . it is projected by who that by the year 2020 they will occupy the number three positions , next only to heart disease and depression .\nby introduction of this technology , we are sure that this will not happen . on the contrary there will be massive reduction in the number of deaths due to road accidents and road accidents may not figure on the list of major causes of death , in the year 2020 at all .\nc . this technology will therefore , make all vehicles cheaper and safer . not only will the cost be reduced , safety which is priceless in itself , will also be greatly enhanced .\nas and when the regular patent application is filed and patent is granted , the life of the patent will be 20 years . even at the current levels , with road accidents placed at number nine on the who list as a major cause of death , there is a daily loss of two billion us $ . even at the present level , over a period of twenty years , without any interest and without any compounding , this loss works out to be :\n2 billion us $ x 365 days x 20 years - 14 , 600 billion us $ .\nd . our technology will ensure that at least seventy - five percent of the above losses are prevented . such figure works out to be more that 10 , 000 billion us $ . it is important to note that this is the projection at the current level . as per the future projections , the incidents of road accidents are expected to increase . hence , the figure is likely to be increase very substantially . in addition the time factor and the interest factor will inflate this figure further .\ne . at the current levels , more than 1 . 2 million persons are dying every year due to road accidents . even at the current rates , more than 24 million lives will be lost in road accidents over the next twenty years ( i . e . life of the patent , when granted ) . besides , at the current levels .\n3 . 2 million people are injured every year . in the next twenty years , the number of people injured due to road accident , will therefore be more than half a billion .\nf . if we add to that the personal , physical and psychological traumas to those directly involved in and also to those who are associated with the people involved in the road accidents . the trauma and the misery and henceforth the value of the savings , are all unmeasurable in quantities , presently known to human kind .\ng . considering the figures and dynamics as explained hereinabove , it may not be improper or out of place to compare this technology with the introduction of electricity , computer or aircrafts in terms of its value to mankind .\nh . the benefits of this technology will be so obvious and essential that , in the very near future , the use of this technology will become unavoidable . it should and will become mandatory by law , to install such technology and the installation of such technology should and will be a pre - requisite for granting or renewal of the registration and license of all vehicles in future .\ni . as described hereinabove ; this technology and its utility are incomparable , outthought of , and unheard of till date . it will open a new floodgate in human travel and safety measures . in future , it can and will be applied to other mode of transport , like aircrafts and trains also .\n. among other things , we have the following options available to us : - options\navailable to us : -\na - outright sale\n( a ) immediate outright sale of the idea and the concept along with our filed applications for one time lump sum consideration .\n( b ) further development of the concept and further filing of patent and all patent related applications , before taking steps as outlined in \" a \" .\nthe process ( b ) will obviously increase the realization in terms of price .\nb - licencing options\ni ) new vehicles - granting of licenses to manufacturers of automobiles , individually or collectively , all over the world for incorporation in the automobiles to be manufactured in future on fixed time or per piece basis .\nii ) conversion of existing vehicles - to independent agents for conversion of the existing more than 1000 billion vehicles all over the world .\nc - combined options\na collaborative arrangement with some private and / or government agency wherein we receive a certain down payment and then jointly distribute the licensing rights on a pre - decided sharing ( partnership ) arrangement .\nthe economics of the project will be as follows : -\n1 ) in case any / all processes and systems described by us are incorporated in the design of new vehicles and the new vehicles are manufactured in accordance with the modified designs , the cost escalation may not be more than 5 % to 8 % , and the safety and the protection will be ten times ( more than ) the price escalation . hence , drop in insurance premier will compensate for the cost escalation .\n2 ) in case , the existing vehicles are modified , the cost involved will be approximately 10 % to 15 % of the value of the vehicle .\nbut partial modifications at a lower cost , which will give partial protection , may also be carried out . as a thumb rule , the cost of modification in percentage terms will be about one fifth of the percentage of safety and protection provided .\n3 ) in case the value of the vehicles is low or the life of the vehicle is about to expire , the partial modifications may be practically and economically viable , as incorporation onto a new vehicle is relatively less expensive and more protective .\n4 ) there are more than 1000 billion motor vehicles in the world at present . besides there are an unspecified number of non - motorized ehicles .\n5 ) almost all of them can be converted in phased manner to a variable degree . the cost of conversion will be directly proportional to their current market value and the safety shield to be generated there from .\n6 ) among the motorised vehicles , the conversion cost may work out of few dollars for every percent of safety shield created the exact calculation can be worked out , but over all , some of the methods may provide more safety at lower cost compared to the other which may differ in efficiency .\n7 ) even if we consider a very vague and approximate cost of conversion of 300 us $ per vehicle , the conversion industry works out to be worth 3 , 00 , 000 billion us $ .\n8 ) realising the potential of the product in terms of human safety , it will be reasonable to presume that majority of such conversion will be completed over a period of three years from the starting date .\n9 ) as pointed hereinabove , the size of the conversion industry may be estimated to , in the range of 1 , 00 , 000 billion us $ per year over the next three years .\n10 ) alternatively , considering the diversity of available motorised vehicles all over the world , conversion licensing can also be commercially viable proposition . for such conversion , licenses can be granted on - line , on receipt of on - line payments . in that case , different rates for granting conversion to vehicles having specific registration numbers can be granted in accordance with and in proportion to the size , carrying capacity and the engine power of the vehicle .\n11 ) in case , licensing is done , the creation and installation of the concerned systems will be done by the end - user , as per his circumstances and needs . however , piracy is likely to be a major problem in such licensing .\n12 ) it is likely that as and when the systems are introduced in the motorised vehicles , unusual and unprecedented demand of new vehicles is created . this will result in massive rejection of the vehicles currently playing all over the world and stimulate an entirely new market as far as motorised vehicle is concerned . the size of such market is difficult to either comprehend and / or estimate .\np . s .\n1 ) some of the figures have been rounded off but generally the figures are correct .\n2 ) we have tried to keep this communication brief and to the point . more details , including website references are available with us and can be provided , if required .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.990+0000", "entityId": 5401, "properties": {"text": "Subject: i never sent you this - keep it hush hush ! : ) xgab\nonline credit breakthroughrepair your credit online ! 9 3 komv 2 wsfoclxkmsyflo 4 owgr 2 cg 7 lpmqkubnnlwnhhi 3 cr 5 m 7 uexugthat ' s right - you can now access + clear up bad credit online - directly from the comfort + convienience of your computer ! watch your credit daily , with real time updates get the information you need quickly and efficently to remove negative credit items from your report ! click here for more informationthank you - the web credit ( tm ) team ! 9 3 komv 2 wsfoclxkmsyflo 4 owgr 2 cg 7 lpmqkubnnlwnhhi 3 cr 5 m 7 uexug", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.995+0000", "entityId": 5402, "properties": {"text": "Subject: hello bevstarl 0\ndear bevstarl 0 ,\nrape sex !\nclick here\ndo you like sexy animals doing the wild thing ? we have the super hot content on the internet !\nthis is the site you have heard about . rated the number one adult site three years in a row !\n- thousands of pics from hardcore fucking , and cum shots to pet on girl .\n- thousands videos\nso what are you waiting for ?\nclick here\nyou must be at least 18 to enter !\nto not be on our in house address database\nclick here and you will eliminated from future mailings .\n[ : kj ) _ 8 j 7 b ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:28.999+0000", "entityId": 5403, "properties": {"text": "Subject: want me on top ? 189643322211\nput these nasty sluts to the test ! free access ! !\nheavy hard and free !\nnothing to loose ! ! click here , no membership required ! it ' s free\nnote :\n84221111000", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.009+0000", "entityId": 5404, "properties": {"text": "Subject: would you like a $ 250 check ?\nwe ' re receiving checks for $ 100 ' s and $ 1 , 000 ' s\nevery month - let me show you how you can easily\ndo the exact same thing !\nyou are receiving this email\nas a subscriber to the dealsuwant mailing list . to remove yourself\nfrom this and related email lists click here :\nunsubscribe my email\nunder bill ( s ) 1618 title iii by the 105 us congress , per section\n301 , paragraph ( a ) ( 2 ) of s . 1618 , a letter cannot be consideyellow\nspam if the sender includes contact information and a method\nof removal .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.014+0000", "entityId": 5405, "properties": {"text": "Subject: . + . 80 to 95 % below wholesale 2306\n80 to 95 %\nbelow wholesale\nnew , and in quantities you need\na single unit , a pallet ,\nor a truckload\n1 . are you still looking for a very real business that can provide you and\nyour family with the lifestyle you desire ? or , just a second income in your\nspare time ?\n2 . would you invest $ 66 . 50 ( a 33 % discount off of our regular price of\n$ 99 . 95 during this limited time promotion . ) in a business that could make you\nfinancially secure by buying at up to 95 %\nbelow wholesale and selling at 100 to 500 % + over your cost ?\nif so , read on :\nthis is not a get rich quick scheme , but , it is a way for you to get into\na business with a minimal investment and , may be your first step towards a\nrewarding first , or second income . for the longest time , only those , who were\nable to make large investments were able to take advantage of this type of a\nbusiness . we have made it possible for everyone to do it , and at a price\neveryone can afford .\ncorporate america has conditioned us to believe that security comes from\nemployment . yet layoffs are hitting an all time high , major corporations are\nfailing and we hope to never become the victims of this downsizing , career\nburn out , illness or injury .\nthere was a time , when finding another job was not a problem , but today ,\nthe frightening reality for a lot of people is that the\nplastic in their wallets determines the quality of their lives .\nthe hard facts show that our economy has moved from the industrial age\ninto the information , service and retail age . no longer can you depend on the\ncorporation to provide your family with job security . we all need a backup\nplan .\nif you are tired of living from paycheck to paycheck , and are willing to\nwork a few hours per week , than this may be for you .\nplease read further :\nwe will show you how you can buy , new , not out of date , products for pennies\non the wholesale dollar . we will not just send a\nlist , or catalog of where you can buy , but actual point and click database\nwith hyperlinks to suppliers?ffff 92 websites and specials pages , with email\naddresses , phone and fax numbers , and their current hot\nlistings . unlike others?ffff 92 distribution businesses where you are provided with\nwholesale catalogs , out of date cd ' s , or lists of government auctions that\nsell jeeps for $ 10 , ( which are a myth ) , we provide an unlimited virtual\ndatabase of items at up to 95 % below wholesale from liquidators , not\nwholesalers , that is up - dated on a weekly / daily basis by the suppliers . and\nthe products are available for immediate purchase and shipping to you , and\nguarantee our product for 30 days with a full refund guarantee if it is not\nwhat we say .\nthis database is designed for the individual or a small business . although\nthere are suppliers in this database selling in large quantities , most are\nselected for their flexability in being willing sell in smaller\nquantities at great savings ( 80 to 95 % below wholesale )\nyou will be able to buy such items as rca stereos that retail for $ 250 . 00 +\nfor $ 10 to $ 20 . 00 , new boom boxes for $ 12 . 50 each , palm pilots for $ 39 . 00 , cell\nphone antenna boosters that sell on tv for $ 19 . 95 - - for . 16 cents , perfect\npancake makers as seen on tv for $ 19 . 95 , for $ 6 . 50 , cd?ffff 92 s for $ 0 . 75 each ,\npentium computers for as little as $ 11 . 00 , or computer software that retails\nup to $ 74 . 99 for $ 0 . 50 each .\nif you would like to see some sample listings and featured specials , please\nemail us at moreof 80 to 95 @ themail . com\nyou may purchase this database :\nby credit card : at paypal to the account of datapaid 2000 @ yahoo . com\nby phone with credit card at 502 - 741 - 8154\ncheck by fax to :\nspecialty products 502 - 244 - 1373\n( just write a check and fax it to the above number , no need to mail )\n( please include email address for the transmission of database . )\nby mail :\nspecialty products\n210 dorshire court\nlouisville , ky 40245\n( please remember to include a valid email address for the transmission of\nthe database )\nfor your protection , we provide a 30 day , 100 %\nmoney back , satisfaction guarantee , if we have misrepresented our\nproduct .\nwhat do you get for your $ 66 . 50 investment :\nduring promotion a , fully executable , database ( within 24 hours , or less ) of\n100 ?ffff 92 s of suppliers with hyperlinks to their websites , fax and phone numbers\nand a description of what type of product they handle and current product\nspecials .\nand , on - going telephone support during normal business hours .\nsince this is such a fast changing business , with new products being added\nand deleted on a weekly or even a daily basis , all data will be provided\nwithin 24 hours of receipt of payment via email file transfer . ( no waiting or\nshipping and handling costs ) the $ 66 . 50 is your total\none time cost . ( during promotion )\nthis database is for individuals who recognize an opportunity to make a\nsubstantial income . keep in mind , everyone likes a bargain , and even more so\nwhen the economy is down . so , even if you just want to buy for your own use , a\nsingle purchase could repay your initial investment . and , remember we provide\na 30 day , full refund satisfaction guarantee .\nwe know that this has been a brief description , and you may want\nadditional information . you may email us at moreof 80 to 95 @ themail . com\nfor additional information and a sample of listings currently being offered by\nvarious suppliers . ( if you give us some idea of what\ntypes of products interest you , we will try to include some sample listings of\nthose products . )\nwe look forward to being of service in your new venture .\nspecialty products\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.019+0000", "entityId": 5406, "properties": {"text": "Subject: earn 10 k per week with a new system ! 9652 cyuh 7 - 164 rdh - 15\ngreetings !\nyou can earn up to 10 k per week doing simple\nonline tasks with a brand new system called emm ?\nit blows mlm away :\nno selling . . .\nno recruiting . . .\nno explaining or answering difficult questions . . .\nno 3 - way calling . . .\nno begging friends and family . . .\nno rejection . . .\nall you have to do is advertise , advertise ,\nadvertise and then enter the e - mail addresses\nof your prospects into a full - time automated\nsystem . this system :\n= does all of your support ,\n= answers all of the email from your group members ,\n= handles all of your correspondence\n= works day and night to turn your advertising\ninto residual income !\nit is absolutely phenomenal !\nto get the full details , please put \" send emm info \"\nin subject line , then send to the address below :\nthank you !\nps : removal instruction - just click below and send .\n9779 kl 5", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.024+0000", "entityId": 5407, "properties": {"text": "Subject: norton systemworks 2002 final clearance 1093\nnorton systemworks 2002 software suite\nprofessional edition\n6 feature - packed utilities , 1 great price\na $ 300 . 00 + combined retail value for only $ 29 . 99 !\nprotect your computer and your valuable information !\ndon ' t allow yourself to fall prey to destructive viruses !\nclick here for more info and to order\nif you wish to unsubscribe from this list , please click here to be removed .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.034+0000", "entityId": 5408, "properties": {"text": "Subject: make some extra money fast read how here it is real simple i am totaly serious\nalso on msn : start chattingilisten to musicihouse homeitry online datingidaily horoscopes\nto stop getting this e - mail , or change how often it arrives , go to your e - mail settings .\nneed help ? if you ' ve forgotten your password , please go to passport member services .\nfor other questions or feedback , go to our contact us page .\nif you do not want to receive future e - mail from this msn group , or if you received this message by mistake , please click the \" remove \" link below . on the pre - addressed e - mail message that opens , simply click \" send \" . your e - mail address will be deleted from this group ' s mailing list .\nremove my e - mail address from one income living .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.039+0000", "entityId": 5409, "properties": {"text": "Subject: re : new page\nhi sweetie ,\ncome see the most beautiful , sweet . . .\n- - > 18 year old girls bare it all ! < - -\nhttp : / / freexmovies . net / mypic /\nremove instructions :\nthis e - mail message is not spam or unsolicited . this e - mail address has joined or requested information in the past . if this is a mistake or\nyou would prefer not to receive a free once a week adult web site announcement , then . . . please visit the web page below , at anytime to be permanently removed from the list :\nhttp : / / remove . pwxx 3 . com\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.044+0000", "entityId": 5410, "properties": {"text": "Subject: adv : your road to financial freedom begins here !\nare you overwhelmed with debt and high\ninterest rates ? are you receiving annoying calls from\ncreditors ? how soon are you going to fix your credit situation ?\ntomorrow ? next week ? next month ? why not right now ?\nwe will provide professional help to reduce your interest rates and\nminimum payments ! we offer free information\nand resources to provide with fast relief from credit cards and other types of\ndebt . find out why our program is the # 1 way for\nhaving a debt free life . visit us at http : / / www . mydebtsite . com / myhome . htm\ntoday ! this email address was obtained from a purchased\nlist . if you wish to unsubscribe from this list , please click here and enter the\nemail address ( es ) you want to have removed from all future emails . if you have\npreviously unsubscribed and are still receiving this message , you may email our\nabuse department at abuse @ mydebtsite . com or write us at : no spam -\nmydebtsite . com , p . o . box 770594 , coral springs , fl 33077 .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.049+0000", "entityId": 5411, "properties": {"text": "Subject: 3 . 5 % fixed payment 30 year loan\n3 . 5 % fixed payment 30 years\nlenders\nmake\nyou wait . . . they demand to interview you . . .\nthey intimidate you . . . they humiliate you . . .\nand all of that is while they decide if they even want to\ndo business with you . . .\nwe\nturn the tables on them . . .\nnow , you ' re in charge\njust fill out our simple form and they will have to\ncompete for your business . . .\nhttp : / / www . 1 strefinance . com / apply . htm\nwe\nhave hundreds of loan programs , including :\npurchase\nloans\nrefinance\ndebt consolidation\nhome improvement\nsecond mortgages\nno income verification\nhttp : / / www . 1 strefinance . com / apply . htm\nif\nyou no longer wish to receive any of our mailings you may be\npermanently removed by mailto : info @ lenderscompete 4 you . com\nif there has been any inconvenience we apologize .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.055+0000", "entityId": 5412, "properties": {"text": "Subject: when we say free , we mean free !\ntotal turnkey system !\nhigh quality leads fromproven mail houses !\nattractive invitations with a 2 - 3 % average response !\ntoll - free reservation hotline for seminar attendees !\nnationally tested - compliance approved materials !\nprofessional , entertaining informative powerpoint presentations !\nfree multi - media loaner equipment including lap - top projector !\ntwo fool proof appointment systems 50 % response ratio !\nfree full two days of complete training !\ncontinuous coaching fromexperienced seminar presenters !\nattendance at your seminars by your own seminar coach !\nlarge range of top companies products to work with !\nno commission reductions , splits or lower contracts !\npaid premium counts towards eligibility for 5 - star , in - season trips !\nco - op dollars available !\ncombine your life , annuity , ltc , di securities\nproduction and have a suite time on\nour 7 - day all suite alaskan adventure on celebrity cruises\nfrom as little as $ 1 , 000 , 000 of annuity premium or $ 100 , 000 of life premium .\nno case minimums ! *\ncall or e - mail\nus today for your free demo disc !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n* see trip brochure for qualification levels and full details .\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insurancemail . net\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.062+0000", "entityId": 5413, "properties": {"text": "Subject: be your own private eye online\ninternet\ninvestigator\n- new for\n2002 -\ninternet\nsoftware for online investigations\nfind\nout anything about anyone\nonline\nuncover\ninformation about :\nenemies ,\ndebtors ,\nneighbors , friends , employees , co - workers , your boss , yourself ,\nassociates , former school or military buddies , even a new love\ninterest .\nbecome\nan internet investigator and explore an exciting new world of\nvaluable information .\nwith internet investigator\nyou can investigate :\npeople ,\ncredit\nrecords , social security numbers , employment records , school\nrecords , criminal records , driving records , addresses , phone\nnumbers ( even some unlisted ) , hidden assets , family trees\nand\na whole lot more !\nclick\nhere for more information\nunsubscribe instructions\nthis message is a commercial\nadvertisement . it is in full compliance with all federal and state laws\nregarding email advertising , including the california business and professions\ncode . we have provided opt out email contact so you can\nrequest to be taken off our mailing list . in addition we have placed\nadv : in the subject line to provide you with notification\nin advance that this is a commercial advertisement . we do not wish to\nsend our advertising to anyone who does not wish to receive it . if you would rather not receive any further information from\nus , please click\nto be taken off our list . in this way you can opt - out from\nthe list your email address was obtained from , whether it was opt - in\nor otherwise . please allow 5 - 10 business days for your email address\nto beprocessed and taken offall lists in our control . meanwhile ,\ndelete any duplicate emails that you may receive and rest assured that\nyour request will be honored . if you have previously requested to be\ntaken off this list and are still receiving this advertisement ,\nyou may call us at 1 - ( 888 ) 817 - 9902 , or write to : abuse control center ,\n7657 winnetka ave . , suite 245 , canoga park , ca 91306\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.068+0000", "entityId": 5414, "properties": {"text": "Subject: re : money issues ygr\nrepair your credit online ! it ' s the online credit breakthroughyou ' ve been waiting for ! in less than 5 minutes , directly from the comfort + convienience of your computer , yp 5 a 9 d 3 tsj 53 xfocwg 6 oflwjwsonnkigarhp 91 8 qyfvkpfqgknfyou could be repairing your credit ! you can watch daily real time updates , as you fix your problems get the information you need quickly and efficently to remove the negative credit items from your report ! click here for more informationthank you - the web credit ( tm ) team yp 5 a 9 d 3 tsj 53 xfocwg 6 oflwjwsonnkigarhp 91 8 qyfvkpfqgknf", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.073+0000", "entityId": 5415, "properties": {"text": "Subject: blue horseshoe meet me\ndear reader :\nwe sometimes approach our analysts for their thoughts on emerging market sectors we ' re interested in . on certain occasions , they come to us with intriguing insights of certain aspects of the market that have caught their attention .\nas you know our track record speaks for itself we are happy to bring you another situation with huge upside potential we think this could be the one that when we look back shortly everyone will be saying i should have more .\nfor more info click here ! ! !\nremember : nothing ventured , nothing gained\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.082+0000", "entityId": 5416, "properties": {"text": "Subject: special report ! tivo : now or never ?\nin this issue\ninteractive tv power rankings !\ntivo : now or never ?\nbreaking news\ncoming attractions !\nbe a star !\nemail us : : visit our site\nphone : 310 - 314 - 0603\nthis email was sent to , at your request , by tvpredictions . com .\nvisit our subscription center to edit your interests or unsubscribe .\nview our privacy policy .\npowered by\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.086+0000", "entityId": 5417, "properties": {"text": "Subject: let ' s stop the mlm insanity !\nstill believe you can earn $ 100 , 000 fast in mlm ? get real !\nget emm , a brand new system that replaces mlm with something that works !\nstart earning 1 , 000 ' s now ! up to $ 10 , 000 per week doing simple online tasks .\nfree info - breakfree @ luxmail . com - type \" send emm info \" in the subject box .\nthis message is sent in compliance of the proposed bill section 301 . per section 301 , paragraph ( a ) ( 2 ) ( c ) of s . 1618 . further transmission to you by the sender of this e - mail may be stopped at no cost to you by sending a reply to : \" email address \" with the word remove in the subject line .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.095+0000", "entityId": 5418, "properties": {"text": "Subject: how about obtaining a fully recognized university degree ? 231175433222211111111\nobtain a prosperous future , money earning power ,\nand the admiration of all .\ndegrees from prestigious accredited\nuniversities based on your present knowledge\nand life experience .\ncall now to receive your diploma\nwithin days ! ! !\n1 425 790 3463\nno required tests , classes , books , or interviews .\nbachelors , masters , mba , and doctorate ( phd )\ndiplomas available in the field of your choice .\nno one is turned down .\nconfidentiality assured .\ncall now to receive your diploma\nwithin days ! ! !\n1 425 790 3463\ncall 24 hours a day , 7 days a week , including\nsundays and holidays .\n231175433222211111111", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.100+0000", "entityId": 5419, "properties": {"text": "Subject: tired of your high mortgage rate - refinance today . . . . .\ndear homeowner ,\ninterest rates are at their lowest point in 40 years ! we help you find the\nbest rate for your situation by matching your needs with hundreds of\nlenders !\nhome improvement , refinance , second mortgage ,\nhome equity loans , and much , much more !\nyou ' re eligible even with less than perfect credit !\nthis service is 100 % free to home owners and new home buyers\nwithout any obligation .\nwhere others say no , we say yes ! ! !\nhttp : / / www 282 . fastwebsnet . com / mtg\ntake just 2 minutes to complete the following form .\nthere is no obligation , all information is kept strictly\nconfidential , and you must be at least 18 years of age .\nservice is available within the united states only .\nthis service is fast and free .\nhttp : / / www 282 . fastwebsnet . com / mtg\nto opt out :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.104+0000", "entityId": 5420, "properties": {"text": "Subject: re : how are you ? 8456\nfill out our short application for an unbelievable 4 . 1 % mortgage ( apr )\n( ) home refinancing\n( ) home improvement\n( ) debt - consolidation\n( ) cash - out\nplease click here\nfor our short application .\nthe following are no problem and will not stop you from getting the\nfinancing you need :\n* * * can ' t show income\n* * * self - employed\n* * * credit problems\n* * * recent bankruptcy\n* * * unconventional loan\nwe have hundreds of loan programs available and work with hundreds\nof lenders , so no matter which of our 50 states you live in , we\nlikely have a program that could meet your needs .\nplease click here\nfor our short application .\n* we do not resell or disseminate your email address . you are not required\nto enter your ssn . this is a legitimate offer from legitimate mortgage\ncompanies .\nnote : we are licensed in all 50 u . s . states .\nto be removed from future mailings click here or send an e - mail to remove @ sitecritic . net .\nwe will never intentionally email you again . thank you .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.109+0000", "entityId": 5421, "properties": {"text": "Subject: amateur teens go bad\n18 - 21 yr . old chicks are so horny !\nnasty amateurs taking cum shots , huge cocks , anal poundings , & much more !\nyoung and fresh - - - - - > just a click away !\nget them now ! for free !\nclick here for the girls of your dreams ! remember this is a free site so hurry !\nclick here to unsubscribe .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.113+0000", "entityId": 5422, "properties": {"text": "Subject: selling travel in today ' s economy\ngood morning !\nsince it may have been awhile since you visited us\natwww . mailpound . comi\nwanted to update you on what is happening . when we launched the mailpound\nalmost two years ago , our focus was on saving time , toner and\ntreesby providing an alternative fororganizing the huge\nnumber of faxes suppliers sent travel agents each week . our most popular\nfeature was the fam section , followed by the weekly sweepstakes .\nbut that has changed .\nlike many involved in selling retail travel , we have been\nstriving to find ways to succeed in a challenging environment . additional\ncommission cuts , the aftermath of 9 / 11 , and the drop in the stock\nmarket , has\nhad a cumulative effect on all of us . to survive , to succeed , we know\nthat we\nwill need to work harder , work smarter , and work together . we have\ngotten a\ntremendous amount of support from travel agents and this has translated\ninto\nthe ability to get more support for travel agents from suppliers .\nour focus has expanded from providing a resource for\nsearching supplier\nspecial offers to providing a suite of tools and services that can create\nsales and raise commissions . almost all of these services are supplier\nsupported and free to travel agents .\nactively seek out the beste - commerce\nvalues\nhelpyou market special offers to your\nclients\nhost personal web sites for travel agents with\nmailpound\ncontent *\nofferhigher commissions through\nconsolidation\norganize sales incentives from suppliers\nprovide new technology for fast and easyonline\nbookings\nprovide your clients with the ability to book through\nyou ,\nonline\n* mpdirect services are offered for\n$ 9 . 95 / month\nwe invite you to visit us soon at www . mailpound . comor\ncheck out the links shown below . see how the free services we offer the\ntravel\nagent community can help you succeed . the summer is almost over , now is\nthe\ntime to prepare for the upcoming selling season .\nfor more information regarding higher commissions\nand booking online :\nwww . mailpound . com / bliss _ intro . htm\nfor more information about your personal web site :\nwww . mailpound . com / mpdirect\nto register free at mailpound :\nwww . mailpound . com / registration /\nsincerely ,\nbob maier , president\nsmart travel technologies , inc .\nrmaier @ smart 2000 . com\n856 - 983 - 6100 ext . 101\n12 east stow road , suite 210\nmarlton , new jersey 08053\nif you do not want to receive these\nmessages\nin the future , please reply to this message with remove in the subject\nline .\nhttp : / / xent . com / mailman / listinfo / fork", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.118+0000", "entityId": 5423, "properties": {"text": "Subject: [ ilug ] guaranteed to lose 10 - 12 lbs in 30 days 10 . 206\n1 ) fight the risk of cancer !\n2 ) slim down - guaranteed to lose 10 - 12 lbs in 30 days\n3 ) get the child support you deserve - free legal advice\n4 ) join the web ' s fastest growing singles community\n5 ) start your private photo album online !\nhave a wonderful day ,\noffer manager\nprizemama\nif you wish to leave this list please use the link below .\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.122+0000", "entityId": 5424, "properties": {"text": "Subject: [ ilug - social ] re : guaranteed to lose 10 - 12 lbs in 30 days 10 . 148\ni thought you might like these :\n1 ) slim down - guaranteed to lose 10 - 12 lbs in 30 days\n2 ) fight the risk of cancer !\n3 ) get the child support you deserve - free legal advice\noffer manager\ndaily - deals\nif you wish to leave this list please use the link below .\n- -\nirish linux users ' group social events : social @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / social for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.127+0000", "entityId": 5425, "properties": {"text": "Subject: fortune 500 company hiring , at home reps .\nhelp wanted . we are a 14 year old fortune 500 company , that is\ngrowing at a tremendous rate . we are looking for individuals who\nwant to work from home .\nthis is an opportunity to make an excellent income . no experience\nis required . we will train you .\nso if you are looking to be employed from home with a career that has\nvast opportunities , then go :\nhttp : / / www . basetel . com / wealthnow\nwe are looking for energetic and self motivated people . if that is you\nthan click on the link and fill out the form , and one of our\nemployement specialist will contact you .\nto be removed from our link simple go to :\nhttp : / / www . basetel . com / remove . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.131+0000", "entityId": 5426, "properties": {"text": "Subject: multiply your customer base !\ndear ricardol ,\ncost effective direct email advertising\npromote your business for as low as\n$ 50 per\n1 million\nemail addresses\nmaximize your marketing dollars !\ncomplete and fax this information form to 309 - 407 - 7378 .\na consultant will contact you to discuss your marketing needs .\nwebsite : ( not required ) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n* comments : ( provide details , pricing , etc . on the products and services you wish to market )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.136+0000", "entityId": 5427, "properties": {"text": "Subject: save 84 % on ce credits\nno hidden fees\nover 16 , 000 credits\nover 300 courses\n90 % internet based\nhigh quality courses\nunlimited access\ncomplete this form for a free guest demo !\nname :\ne - mail :\nphone :\ncity :\nstate :\nwe\ndon ' t want anybody to receive our mailing who does not wish to receive\nthem . to be removed from this mailing list , do not reply to this message .\ninstead , go here : http : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.140+0000", "entityId": 5428, "properties": {"text": "Subject: a cry for help\ndear friend , i am mrs . sese - seko widow of late president mobutu\nsese - seko of zaire ? now known as democratic republic\nof congo ( drc ) . i am moved to write you this letter ,\nthis was in confidence considering my and situation .\ni escaped along with my husband and two of our sons\ngeorge kongolo and basher out of democratic republic of\ncongo ( drc ) to abidjan , cote d ' ivoire where my family\nand i settled , while we later moved to settled in\nmorroco where my husband later died of cancer\ndisease . however due to this situation we decided to\nchanged most of my husband ' s billions of dollars\ndeposited in swiss bank and other countries into other\nforms of money coded for safe purpose because the new\nhead of state of ( dr ) mr laurent kabila has made\narrangement with the swiss government and other\neuropean countries to freeze all my late husband ' s\ntreasures deposited in some european countries . hence\nmy children and i decided laying low in africa to\nstudy the situation till when things gets better ,\nlike now that president kabila is dead and the son\ntaking over ( joseph kabila ) . one of my late husband ' s\nchateaux in southern france was confiscated by the\nfrench government , and as such i had to change my\nidentity so that my investment will not be traced and\nconfiscated . i have deposited the sum eighteen million\nunited state dollars ( us $ 18 , 000 , 000 , 00 . ) with a\nsecurity company , for safekeeping . the funds are\nsecurity coded to prevent them from\nknowing the content . what i want you to do is to\nindicate your interest that you will assist us by receiving the money on our\nbehalf . acknowledge this message , so that i can introduce you to my son\n( kongolo ) who has the out modalities for the claim of the said funds . i\nwant you to assist in investing this money , but i will not want my identity\nrevealed . i will also want to buy properties and stock in multi - national\ncompanies and to engage in other safe and\nnon - speculative investments . may i at this point\nemphasise the high level of confidentiality , which\nthis business demands , and hope you will not betray\nthe trust and confidence , which i repose in you . in\nconclusion , if you want to assist us , my son shall\nput you in the picture of the business , tell you\nwhere the funds are currently being maintained and\nalso discuss other modalities including remunerationfor your services .\nfor this reason kindly furnish us your contact\ninformation , that is your personal telephone and fax\nnumber for confidential purpose . best regards , mrs m . sese seko", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.145+0000", "entityId": 5429, "properties": {"text": "Subject: [ ilug ] business\ncentral bank of nigeria\nforeign remittance dept .\ntinubu square , lagos nigeria\nemail - smith _ j @ mailsurf . com\n23 th of august 2002\nattn : president / ceo\nstrictly private business proposal\ni am mr . johnson s . abu , the bills and exchange director at the\nforeignremittance department of the central bank of nigeria . i am\nwritingyou\nthis letter to ask for your support and cooperation to carrying thisbusiness\nopportunity in my department . we discovered abandoned the sumof\nus $ 37 , 400 , 000 . 00 ( thirty seven million four hundred thousand unitedstates\ndollars ) in an account that belong to one of our foreign customers , an\namerican\nlate engr . john creek ( junior ) an oil merchant with the federal government\nof\nnigeria who died along with his entire family of a wifeand two children in\nkenya airbus ( a 310 - 300 ) flight kq 430 in november 2000 .\nsince we heard of his death , we have been expecting his next of kin tocome\nover\nand put claims for his money as the heir , because we cannotrelease the fund\nfrom his account unless someone applies for claims asthe next of kin to the\ndeceased as indicated in our banking guidelines . unfortunately , neither\ntheir\nfamily member nor distant relative hasappeared to claim the said fund . upon\nthis discovery , i and other officialsin my department have agreed to make\nbusiness with you release the totalamount into your account as the heir of\nthe\nfund since no one came forit or discovered either maintained account with\nour\nbank , other wisethe fund will be returned to the bank treasury as unclaimed\nfund .\nwe have agreed that our ratio of sharing will be as stated thus : 30 % for\nyou as\nforeign partner and 70 % for us the officials in my department .\nupon the successful completion of this transfer , my colleague and i\nwillcome to\nyour country and mind our share . it is from our 60 % we intendto import\ncomputer\naccessories into my country as way of recycling thefund . to commence this\ntransaction we require you to immediately indicateyour interest by calling\nme\nor sending me a fax immediately on the abovetelefax # and enclose your\nprivate\ncontact telephone # , fax # , full nameand address and your designated\nbanking co -\nordinates to enable us fileletter of claim to the appropriate department\nfor\nnecessary approvalsbefore the transfer can be made .\nnote also , this transaction must be kept strictly confidential becauseof its\nnature .\nnb : please remember to give me your phone and fax no\nmr . johnson smith abu\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.158+0000", "entityId": 5430, "properties": {"text": "Subject: look what sandy is doing in her dorm ! !\nthis week : sydney bares all in the park !\njoin her in our live teen chat !\nwatch as sandy strips naked in her dorm !\nbest of all , see it\nall 4 free !\ndon ' t miss out !\nwatch in awe as stacey suck - starts ken !\nand our bonus :\npam & tommy uncut !\npenthouse forum stories !\njenna jamieson in jennamaxx ! !\nget in here for free now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.165+0000", "entityId": 5431, "properties": {"text": "Subject: impaired risk case of the month\nmale 58 non - smoker\nface amount $ 3 , 000 , 000\n5 ' 11 255 lbs .\ncrohn ' s disease for 30 years\n5 major intestinal surgeries\nsteroid therapy for 30 years\n1997 diabetes\n1998 hypertension\nbroker ' s commission : $ 60 , 598 ! !\nlet us turn your clients\nthat have been declined , rated or have\ncurrent health problems , into placeable\nlife cases !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nfor broker use only . not for public dissemination .\nwe don ' t\nwant anyone to receive our mailings who does not wish to . this is professional\ncommunication sent to insurance professionals . to be removed from this\nmailing list , do not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\nlegal\nnotice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.170+0000", "entityId": 5432, "properties": {"text": "Subject: investment\nattn : president ,\nfrom : mrs . helina karimu\ni am an investor a citizen of angola currently on exile in\nbenin republic because of the civil war in my country . i\nwish to invest in a country with political stability ,\nreliable , dependable infrastructure and security of life\nand property .\ni was given your contact address by a foriegner who was on\na working visit in cotonou . she said that your company can\nassist me on my investment plans , if i am lucky that your\ncompany may be willing to assist me . it may interest you to\nknow that i am having $ 30 . 5 million us dollars ready for\ninvestment , this amount was left behind for\nme and my children by my late husband .\ni am willing to invest in a company with potentials for\ngrowth and stability including your company if your bye -\nlaws allows for foreign investors or any other good and\nprofitable business that you may suggest . i will be very\nhappy if this enquiry receive urgent attention .\nyou should mail your acceptance by sending to me your\npersonal and company profile as i will also send to you all\nrequired information about myself and the help that i need\nfrom you about my investment plans .\nyou can also reach me at : helinakarimu @ ecplaza . net and\nhk _ hk @ post . com .\nhoping for a very successful business relationship with you .\nyours truly ,\nmrs . helina karimu .\n( investor )\nbo?te aux lettres - caramail - http : / / www . caramail . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.175+0000", "entityId": 5433, "properties": {"text": "Subject: re : systemworks clearance sale _ limited quantities _ only $ 29 . 99 tj\ntake\ncontrol of your computer with this top - of - the - line software !\nnorton\nsystemworks 2002 software suite\n- professional edition -\nincludes\nsix - yes 6 !\n- feature - packed utilitiesall for 1\nspecial low\nprice of only\n$ 29 . 99 !\nthis\nsoftware will : -\nprotect your computer from unwanted and hazardous viruses -\nhelp secure your private valuable information - allow\nyou to transfer files and send e - mails safely -\nbackup your all your data quick and easily - improve your\npc ' s performance w / superior\nintegral diagnostics ! - you ' ll never have to take your\npc to the repair shop again !\n6\nfeature - packed utilities\n1\ngreat price\na $ 300 +\ncombined retail value\nyours for\nonly $ 29 . 99 !\nprice includes free\nshipping ! and\nfor a limited time buy any 2 of our products get 1 free !\ndon ' t fall\nprey to destructive viruses or hackers ! protect your computer and\nyour valuable information and\n-\nclick here to order yours now ! -\nor call\ntoll - free 1 - 800 - 861 - 1481 !\nyour email\naddress was obtained from an opt - in list . opt - in uefas ( united email\nfederation against spam ) approved list - purchase code #\n8594030 . if you wish to be unsubscribed from this list , please click\nhere . if you have previously unsubscribed and are still receiving\nthis message , you may email our spam\nabuse control center . we do not condone spam in any shape or form .\nthank you kindly for your cooperation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.184+0000", "entityId": 5434, "properties": {"text": "Subject: claim a free $ 25 kmart ( r ) gift card !\nyou are receiving this mailing because you are a\nmember of sendgreatoffers . com and subscribed as : jm @ netnoteinc . com\nto unsubscribe\nclick here\nor reply to this email with remove in the subject line - you must\nalso include the body of this message to be unsubscribed . any correspondence about\nthe products / services should be directed to\nthe company in the ad .\n% em % jm @ netnoteinc . com % / em %\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.188+0000", "entityId": 5435, "properties": {"text": "Subject: immediate reply needed\ndear sir ,\ni am dr james alabi , the chairman of contract\naward and review committee set up by the federal\ngovernment of nigeria under the new civilian\ndispensation to award new contracts and review\nexisting ones .\ni came to know of you in my search for a reliable and\nreputable person to handle a very confidential\ntransaction , which involves the transfer of a huge\nsum of money to a foreign account .\nthere were series of contracts executed by a\nconsortium of multi - nationals in the oil industry in\nfavor of n . n . p . c . the original values of these\ncontracts were deliberately over invoiced to the sum\nof us $ 12 , 320 , 000 . 00 ( twelve million three hundred and twenty thousand\nunited\nstate dollars ) . this amount has now been approved and\nis now ready to be transferred being that the\ncompanies\nthat actually executed these contracts have been\nfully paid and the projects officially commissioned .\nconsequently , my colleagues and i are willing to\ntransfer the total amount to your account for\nsubsequent disbursement , since we as civil servants\nare prohibited by the code of conduct bureau ( civil\nservice law ) from operating and / or opening foreign\naccounts in our names . needless to say , the trust\nreposed on you at this juncture is enormous , in\nreturn , we have agreed to offer you 20 % of the\ntransferred sum , while 10 % shall be set aside for\nincidental expenses ( internal and external ) between\nboth parties in the course of the transaction you will\nbe mandated to remit the balance to other accounts\nin due course .\nmodalities have been worked out at the highest level\nof the ministry of finance and the central bank of\nnigeria for the immediate transfer of the funds\nwithin 7 working days subject to your satisfaction of\nthe above stated terms .\nour assurance is that your role is risk free . to\naccord this transaction the legality it deserves and\nfor mutual security of the funds the whole approval\nprocedures will officially and legally processed\nwith your name or the name of any company you may\nnominate as the bonefide beneficiary .\nonce more i want you to understand that having put\nin over twenty - five years in the civil service of my\ncountry , i am averse to having my image and career\ndented . this matter should therefore be treated with\nutmost secrecy and urgency it deserves .\nplease you should signify your intention to assist\nby sending me a reply to this email to state your position on this\ntransaction , if favorable we will take further steps\nto brief you the full details of this viable\ntransaction .\ni want to assure you that this business proposal is\n100 % risk free as we have done our homework\nproperly .\ni quite believe that you will protect our interest\nby taking this deal strictly confidential , as we are\nstill in government service , which we intend to\nretire from in full honor .\nkindly expedite action as we are behind schedule to\nenable us include this transfer in the next batch\nwhich would constitute the new quarter payments\nfor the 2002 financial year .\nthank you and god bless .\ndr james alabi", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.193+0000", "entityId": 5436, "properties": {"text": "Subject: market internet access - no investment needed\nmarket internet access\nno investment needed\npremium internet access for only $ 14 . 95 per month or less !\nearn $ 1 per subscriber per month\ngo to :\nhttp : / / new . isp . 50 megs . com /\n1918 bqhx 5 - 227 cpamo 598 cjwr 2 - 912 ymjg 32 l 34", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.197+0000", "entityId": 5437, "properties": {"text": "Subject: online doctors will fill your viagra prescription now ! ! ! qeeb\nyour sex drive should never be second on the list ! ! !\nviagra online now and shipped within 24 hours !\nstay hard the way you once could ! ! !\nless than $ 7 . 00 per dose to make it all happen again !\ndon ' t settle for less , keep your lover happy !\nno doctor office ' s to visit . simply fill out our\nonline form , and our u . s . doctor will write your\nprescription and send it within 48 hours .\nmost major prescription drugs also !\nclick below for more information :\nwe are strongly against sending unsolicited emails to those who do not wish to receive our special mailings . you have opted in to one or more of our affiliate sites requesting to be notified of any special offers we may run from time to time . we also have attained the services of an independent 3 rd party to overlook list management and removal services . this is not unsolicited email . if you do not wish to receive further mailings , please click here http : / / greenzer . com / remove . php to be removed from the list . please accept our apologies if you have been sent this email in error . we honor all removal requests .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.201+0000", "entityId": 5438, "properties": {"text": "Subject: save now\n* * * * * write down * * * * *\nhello ,\nit is time to refinance !\nyour credit does not matter , we can approve anyone .\nnow is the time to let some of the top mortgage companies\nin the country compete for your business .\nif you have good credit we will give you the most amazing\nrates available anywhere !\nif you have poor credit , don ' t worry ! we can still refinance\nyou with the most competitive rates in the industry !\nlet us put our expertise to work for you ! guaranteed !\nhttp : / / 21377 @ www . top - lenders . com / app\nbest ,\ntop - lenders\nerase\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.210+0000", "entityId": 5439, "properties": {"text": "Subject: more cash for the business you already write - immediately\nget your bonus ! call mo marketing today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n* bonuses awarded from\nmo marketing on paid , issued business . for agent use only .\noffer subject to change without notice . offer starts 7 / 15 / 02 . offer\nends 12 / 31 / 02 . offer good in all states except : wi , in , de . not\navailable with all carriers .\nwe don ' t want anyone to receive our mailings who does not\nwish to receive them . this is a professional communication\nsent to insurance professionals . to be removed from this mailing\nlist , do not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.215+0000", "entityId": 5440, "properties": {"text": "Subject: market internet access - no investment needed\nmarket internet access\nno investment needed\npremium internet access for only $ 14 . 95 per month or less !\nearn $ 1 per subscriber per month\ngo to :\nhttp : / / new . isp . 50 megs . com /\n3442 bvlb 9 - 565 fafxo 200 lbck 9 - 698 onqh 7 l 33", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.224+0000", "entityId": 5441, "properties": {"text": "Subject: fbi color : 003399 ; font - size : 14 px ; font - weight : bold ; text - decoration : none ; }\nawesome deals on seized and unclaimed\nproperty the government auctions to the public . cars from $ 100 ,\nreal estate , jewelry , personal property , collectibles , antiques\nand more .\nclick here\nyou are receiving this mailing because you are a\nmember of sendgreatoffers . com and subscribed as : jm @ netnoteinc . com\nto unsubscribe\nclick here\nor reply to this email with remove in the subject line - you must\nalso include the body of this message to be unsubscribed . any correspondence about\nthe products / services should be directed to\nthe company in the ad .\n% em % jm @ netnoteinc . com % / em %\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.229+0000", "entityId": 5442, "properties": {"text": "Subject: [ ilug ] bank error in your favor\nsubstantial monthly income makers voucher\nincome transfer systems / distribution center\npending income amount : up to $ 21 , 000 . 00\ngood news ! you have made the substancial income makers list . this means you get the entire system and get the opportunity to make up to $ 21 , 000 . 00 a month .\nto receive this system , follow this link !\nget ready , you will immediately receive all the information needed to make a substantial monthly income .\nwhat are you waiting for ! ! http : / / www . hotresponders . com / cgi - bin / varpro / vartrack . cgi ? t = wendy 7172 : 1\nyou are receiving this email due to having requested info on internet businesses . if you are not longer looking for one , please click the remove link below .\nclick on the link below to remove yourself\naol users\nremove me\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.234+0000", "entityId": 5443, "properties": {"text": "Subject: free hgh - look 10 years younger in 3 weeks ! ! ! hmuprzd\nfree 30 day supply of hgh 1000 :\nlook younger and lose weight in 3 weeks ! ! ! !\nas seen on nbc , cbs , cnn , and oprah ! the health discovery\nthat actually reverses aging while burning fat , without\ndieting or exercise ! this proven discovery has been reported\non by the new england journal of medicine . forget aging and\ndieting forever ! and it ' s guaranteed !\nwould you like to lose weight while you sleep ?\nno dieting !\nno hunger pains !\nno cravings !\nno strenuous exercise !\nchange your life forever !\n100 % guaranteed\naol users click\nhere\nto be removed , reply to this email with remove in the subject line .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.247+0000", "entityId": 5444, "properties": {"text": "Subject: congratualtions zzzz 8969 ! ! !\nyou ' re\na winner !\ndear traveler ,\ncongratulations\nyou may be one of our lucky winners !\nyou may be spending\nyour next vacation in beautiful orlando florida !\n6 days\nand 5 nights\nof accommodations in sunny orlando florida\nround trip\nairfare included for\ntwo\nrental\ncar with unlimited mileage\n2 day pass\nto\nuniversal studios\n$ 500\ncoupon book for meals and entertainment\n2 casino\ncruise tickets\nto claim your\nprize just visit our website click here\nthanks for entering\nour contest and we look forward to seeing you soon .\nsincerely ,\njacqueline o ' connor\ndirector of promotoins\np . s . youve\ngot to hurry . if you dont claim your vacation in the next 24 hours\nit may be gone . availability is limited . so dont wait ,\nclick\nhere today .\nto be excluded from future promotions click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.267+0000", "entityId": 5445, "properties": {"text": "Subject: teach and grow rich\ndo you want to teach and grow rich ?\nif you are a motivated and qualified communicator , i will personally train you to do 3 20 minutes presentations per day to qualify prospects that i can provide to you . we will demonstrate to you that you can make $ 400 a day part time using this system . or , if you have 20 hours per week , as in my case , you can make in excess of $ 10 , 000 per week , as i am currently generating ( verifiable , by the way ) .\nplus i will introduce you to my mentor who makes well in excess of $ 1 , 000 , 000 annually .\nmany are called , few are chosen . this opportunity will be limited to one qualified individual per state . make the call and call the 24 hour pre - recorded message number below . we will take as much or as little time as you need to see if this program is right for you .\n* * * 801 - 397 - 9010 * * *\nplease do not make this call unless you are genuinely money motivated and qualified . i need people who already have people skills in place and have either made large amounts of money in the past or are ready to generate large amounts of money in the future . looking forward to your call .\n* * * 801 - 397 - 9010 * * *\n* to be taken out of this database :\nsecco 44 @ poetic . com\n9059 dmelo - 270 bmbll 5\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.273+0000", "entityId": 5446, "properties": {"text": "Subject: your anticipated assistant is required .\ni am mr . ike ejoh . bank manager of diamond bank of nigeria , lagos branch . i have urgent and very confidential business proposal for you . on june 6 1999 a foreign oil consultant / contractor with the federal ministry of aviationmr . barry kelly made a numbered time ( fixed ) deposit for twelve calendar months , valued at us $ 25 , 000 , 000 . 00 ( twenty - five million dollars ) in my branch . upon maturity , i sent a routine notification to his forwarding address but got no reply . after a month , we sent a reminder and finally we discovered from his employers , the federal ministry of aviation that mr . barry kelly died from an automobile accident . on further investigation , i found out that he died without making a will , and all attempts to trace his next of kin was fruitless . i therefore made further investigation and discovered that mr . barry kelly did not declare any kin or relations in all his official documents , including his bank deposit paperwork in my bank . this sum of us $ 25 , 000 , 000 . 00 is still sitting in my bank and the interest is being rolled over with the principal sum at the end of each year . no one willever come forward to claim it . according to nigerian law , at the expiration of 6 ( six ) years , the money will revert to the ownership of the nigerian government if nobody applies to claim the fund . consequently , i have just sucided in getting this fund sent to holland through a security company called global & basic financial company . , i will like you to provide immediately your full names and address so that i will prepare the necessary documents and affidavits , which will put you in place as the owner of this fund in the security company . i shall employ the service of an attorney for drafting and notarization of the changes and to obtain the necessary documents and letter of probate & administration in your favour . there is no risk at all as all the paperwork for this transaction will be done by the attorney and my position as the bran\nch manager guarantees the successful execution of this transaction . if you are interested , please replyimmediately via the private email address . upon your response , i shall then provide you with more details and relevant documents that will help you understand the transaction . please observe utmost confidentiality , and be rest assured that this transaction would be most profitable for both of us because i shall require your assistance to invest my share in your country .\nawaiting your urgent reply via my email :\nthanks and regards .\nmr . ike ejoh", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.277+0000", "entityId": 5447, "properties": {"text": "Subject: [ ilug - social ] everybody gets paid - no recruiting needed\neverybody gets paid . no recruiting required .\njoin and reserve a position for free now .\nprogram is 18 weeks old and it ' s paying .\neverybody gets in line to get paid by all\nthe new people coming in ( but it ' s not a\ntraditional straightline ) . . . everyone makes money . . .\nand those that sponsor make more . . . .\nclick here to request for more information\nwe belong to the same opt - in list . but if wish to have your email\naddress remove from our database please click here\n- -\nirish linux users ' group social events : social @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / social for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.282+0000", "entityId": 5448, "properties": {"text": "Subject: hi , low price inkjet cartridges bvax\nhi , zzzz @ example . com today ,\nif you would\nnot like to get more spacial offers from us , please click\nhere and you request will be honored immediately !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.286+0000", "entityId": 5449, "properties": {"text": "Subject: internet news feeds for executives dfvht\nfinally ,\na newsfeed that delivers current and\nrelevant sales , marketing & advertising articles from\nsuch magazines as business 2 . 0 , fast company , technology\nmarketing , wired , pc world , asia street intelligence , inc , bank technology . . .\nall in one location font - size : 16 px ; color : # 000066 \" > easy\nto read . easy to use . easy on your time .\nproviding\nthe internets ' most\ncomprehensive web directory for sales ,\nmarketing font - size : 14 px ; color : # 000000 \" > today ' s\ntop business magazine reviews along with a wide selection of articles from\nrelevant sales and marketing topics .\ngain\naccess to all the suppliers and\nresources you need to do your job effectively .\nif\nyou can ' t find the supplier or resource\nthat you need . . . one of our reps will\ngo to work to find it for you .\nbusiness 2 . 0 , fast company , technology marketing , wired , pc world , asia street intelligence , inc , bank technology and more\nyou are receiving this e - mail because you have opted - in to receive special offers from\noffersrus . net or one of it ' s marketing affiliates . if you feel you have received this e - mail in error or do not wish to receive additional special offers , please scroll down to unsubscribe .\nthis e - mailing has been sent to you as a person interested in the information enclosed . this e - mail is not spam under the federal regulatory laws of the united states . this message is being sent to you in compliance with the proposed federal legislation for commercial e - mail ( h . r . 4176 - section 101 paragraph ( e ) ( 1 ) ( a ) ) and bill s . 1618 title iii passed by the 105 th us congress . we sincerely apologize for any inconvenience . this message is not intended for residents of wa , nv , ca , va . screening of addresses has been done to the best of our technical ability . if you are a california , nevada , washington , or virginia resident please follow the instructions below and you will be permanently removed from our list immediately .\nif you would like to be removed from our e - mail list , please click on the words\nremove me\nclick send , and you will be removed from our list immediately .\nubyrpqtetxjyuyqyfjtie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.291+0000", "entityId": 5450, "properties": {"text": "Subject: congratulations on your 6 new signups\nwe guarantee you signups before you ever pay\na penny ! we will show you the green before you\never take out your wallet . sign up for free and\ntest drive our system . no obligation whatsoever .\nno time limit on the test drive . our system is so\npowerful that the system enrolled over 400 people\ninto my downline the first week .\nto get signed up for free and take a test drive use the link :\nbe sure to request info if the subject line does not !\nthe national attention drawn by this program\nwill drive this program with incredible momentum !\ndon ' t wait , if you wait , the next 400 people will\nbe above you .\ntake your free test drive and have the next 400\nbelow you !\nbe sure to request info if the subject line does not !\nall the best ,\ndaniel\nfinancially independent home business owner\nto be excluded from future notices :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.296+0000", "entityId": 5451, "properties": {"text": "Subject: tell these cam sluts what to do\nto be removed please click here or simply respond to this email . your address will be removed and blocked from ever being added again .\nplease scroll down to the bottom of this email for more details .\nall these shows are live right now !\nahotsexycouple\nsensuality\ncandice\nsui _ lei\nwild _ cat\nazcple\nwhat in the world are you waiting for ? click now and tell any of these women what to do for you live on camera . don ' t be shy , just signup for free and tell them what you want and you will get .\nclick here for the free live show !\nthis is our central mailing for all of our affiliate sites . if you have a question on how you got on , please email us and we will be glad to help .\nthe fastest way to get off our list is to click this link . if you do not have access to it , please respond to this email .\nplease make sure to include this email address as it is the one on our list . zzzz @ example . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.302+0000", "entityId": 5452, "properties": {"text": "Subject: up to $ 1 , 500 . 00 part time 22311\ncheck out our $ 1 , 000 . 00 internet challenge !\n\\ tab \\ tab \\ ' b 7 what if you could have a protected job that allows you to work as\nlittle as two hours a week and it still pays you up to $ 800 . 00 every week for the next 20 years ? well - here it is ! take our $ 1 , 000 . 00 online challenge !\n\\ tab \\ tab\n\\ tab \\ tab\n\\ tab \\ tab check it out\n\\ tab \\ tab \\ tab\n\\ tab \\ tab \\ tab\n\\ tab \\ tab \\ tab\n\\ tab \\ tab\nthe sender of this message has stated its assurance that the sender complies with all state guidelines and codes regarding uce . this transmittal is specifically not intended for residents of the state of washington . if you wish to opt out of receiving of this message in the future , please\nhref = \" http : / / www . bti - marketing . net / remove . html \" > click here and enter your email address . thanks for your positive assistance .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.307+0000", "entityId": 5453, "properties": {"text": "Subject: ! gorgeous , custom websites - $ 399 complete ! ( 4156 cumg 9 - 855 yqkc 5 @ 17 )\nbeautiful custom\nwebsites , $ 399 complete !\nget a beautiful , 100 % custom web site ( or\nyours redesigned ) for only $ 399 ! * we\nhave references coast to coastand will give you\nplenty of sites to\nview !\nincludes up to 7 pages ( you can add\nmore ) , java rollover buttons , feedback forms , more . it\nwill be constructed to your taste and\nspecifications , we do not use templates .\nour sites are completely\ncustom . * must host with us @\n$ 19 . 95 / mo ( 100 megs , 20 email accounts , control panel ,\nfront page , graphical statistics ,\nmore ) .\nfor sites to view , complete below or call our\nmessage center at 321 - 726 - 2209 ( 24 hours ) . your call\nwill be returned promptly . note : if\nyou are using a web based email program ( such as yahoo ,\nhotmail , etc . ) the form below will not\nwork . instead of\nusing the form , click\nhere ( you\nmust include your name , phone and state to get a\nresponse , no exceptions .\nname : phone\nw / ac * : state : type project : new\nsite : redesign current\nsite ? : comments : your information is neither sold nor shared\nwith third parties under any\ncircumstance .\nto be eliminated from\nfuture mailings , click\nhere\n[ 6560 icum 3 - 199 gyqk 9350 cvph 2 - 701 z @ 29 ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.311+0000", "entityId": 5454, "properties": {"text": "Subject: wanna see me get fisted ?\nfist\nbang will show you everything you always wanted to see and could only\ndream about !\ndisclaimer : we are strongly against sending unsolicited emails to those who do not wish to receive our special mailings . you have opted in to one or more of our affiliate sites requesting to be notified of any special offers we may run from time to time . we also have attained the services of an independent 3 rd party to overlook list management and removal services . this is not unsolicited email . if you do not wish to receive further mailings , please click here to be removed from the list . please accept our apologies if you have been sent this email in error . we honor all removal requests .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.320+0000", "entityId": 5455, "properties": {"text": "Subject: take advantage of this offer 24344\ncopy\nany dvd with a cd - r burner !\ndvd wizard pro is the\nmost technologically advanced method of dvd reproduction ever available !\ndo not be fooled by other fly by night\nwebsites offering outdated information .\nour package will show you how to backup\nany dvd or vhs cassette using a cd - r\nburner ! we will go further , and show you how to backup a dvd\nusing a dvd - r , or dvd - rw burner as well .\nmake quality backups\nof your personal dvd ' s and vhs cassettes . create your own\ndvd library . never worry about\nscratching or losing a dvd again !\ndvd\nwizard pro is completely unlike anything our competitors\nare offering , and it ' s fully guaranteed . . .\norder today , you won ' t be disappointed !\nlimited time\nonly $ 39 . 95 !\nwe have sold this package\nfor as much as $ 69 . 95 . . . but now , for a very limited time\nonly , we are offering instant access for only $ 39 . 95 !\ngo here and\norder a copy today\nyour\nemail address was obtained from an opt - in list . opt - in mrsa list\npurchase code # 31212 - 1 - 01210 . if you wish to be unsubscribed\nfrom this list , please\nclick\nhere and press send to be removed . if you have previously unsubscribed\nand are still receiving this message , you may email our\nspam\nabuse control center . we do not\ncondone spam in any shape or form . thank you kindly for your cooperation\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.325+0000", "entityId": 5456, "properties": {"text": "Subject: a better investment than the stock market .\nall our mailings are sent complying to the proposed h . r . 3113 unsolicited\ncommercial electronic mail act of 2000 . please see the bottom of this\nmessage for further information and removal instructions .\nparents of 15 - year old - find $ 71 , 000 cash hidden in\nhis closet !\ndoes this headline look familiar ? of course it does . you most likely have\njust seen this story recently featured on a major nightly news program ( usa ) .\nand reported elsewhere in the world ( including my neck of the woods -\nnew zealand ) . his mother was cleaning and putting laundry away when\nshe came across a large brown paper bag that was suspiciously buried\nbeneath some clothes and a skateboard in the back of her 15 - year - old\nsons closet . nothing could have prepared her for the shock she got when\nshe opened the bag and found it was full of cash . five - dollar bills , twenties ,\nfifties and hundreds - all neatly rubber - banded in labelled piles .\n\" my first thought was that he had robbed a bank \" , says the 41 - year - old\nwoman , \" there was over $ 71 , 000 dollars in that bag - - that ' s more than my\nhusband earns in a year \" .\nthe woman immediately called her husband at the car - dealership where\nhe worked to tell him what she had discovered . he came home right away\nand they drove together to the boys school and picked him up . little did\nthey suspect that where the money came from was more shocking than\nactually finding it in the closet .\nas it turns out , the boy had been sending out , via e - mail , a type of\n\" report \" to e - mail addresses that he obtained off the internet . everyday\nafter school for the past 2 months , he had been doing this right on his\ncomputer in his bedroom .\n\" i just got the e - mail one day and i figured what the heck , i put my name\non it like the instructions said and i started sending it out \" , says the clever\n15 - year - old .\nthe e - mail letter listed 5 addresses and contained instructions to send one\n$ 5 dollar bill to each person on the list , then delete the address at the top\nand move the others addresses down , and finally to add your name to\nthe top of the list .\nthe letter goes on to state that you would receive several thousand\ndollars in five - dollar bills within 2 weeks if you sent out the letter with your\nname at the top of the 5 - address list . \" i get junk e - mail all the time , and\nreally did not think it was going to work \" , the boy continues .\nwithin the first few days of sending out the e - mail , the post office box\nthat his parents had gotten him for his video - game magazine subscriptions\nbegan to fill up with not magazines , but envelopes containing $ 5 bills .\n\" about a week later i rode [ my bike ] down to the post office and my box\nhad 1 magazine and about 300 envelops stuffed in it . there was also a\nyellow slip that said i had to go up to the [ post office ] counter . i thought i\nwas in trouble or something ( laughs ) \" . he goes on , \" i went up to the\ncounter and they had a whole box of more mail for me . i had to ride back\nhome and empty out my backpack because i could not carry it all \" . over\nthe next few weeks , the boy continued sending out the e - mail . \" the\nmoney just kept coming in and i just kept sorting it and stashing it in the\ncloset , barely had time for my homework \" . he had also been riding his bike\nto several of the banks in his area and exchanging the $ 5 bills for twenties ,\nfifties and hundreds .\n\" i didn ' t want the banks to get suspicious so i kept riding to different banks\nwith like five thousand at a time in my backpack . i would usually tell the\nlady at the bank counter that my dad had sent me in to exchange the\nmoney ] and he was outside waiting for me . one time the lady gave me a\nreally strange look and told me that she would not be able to do it for me\nand my dad would have to come in and do it , but i just rode to the next\nbank down the street ( laughs ) . \" surprisingly , the boy did not have any\nreason to be afraid . the reporting news\nteam examined and investigated the so - called \" chain - letter \" the boy was\nsending out and found that it was not a chain - letter at all . in fact , it was\ncompletely legal according to us postal and lottery laws , title 18 ,\nsection 1302 and 1341 , or title 18 , section 3005 in the us code , also in\nthe code of federal regulations , volume 16 , sections 255 and 436 , which\nstate a product or service must be exchanged for money received .\nevery five - dollar bill that he received contained a little note that read ,\n\" please send me report number xyx \" . this simple note made the letter\nlegal because he was exchanging a service ( a report on how - to ) for a\nfive - dollar fee .\n[ this is the end of the media release . if you would like to understand how\nthe system works and get your $ 71 , 000 - please continue reading . what\nappears below is what the 15 year old was sending out on the net -\nyou can use it too - just follow the simple instructions ] .\nbe financially free like others within a year ! ! ! before you\nsay \" bull \" , please read the following . this is the letter you have been\nhearing about on the news lately . due to the popularity of this letter on the\ninternet , a national weekly news program recently devoted an entire\nshow to the investigation of this program described below , to see if it really\ncan make people money . the show also investigated whether or not the\nprogram was legal . their findings proved once and for all that there are\n\" absolutely no laws prohibiting the participation in the program and if\npeople can follow the simple instructions , they are bound to make some\nmegabucks with only $ 25 out of pocket cost \" .\ndue to the recent increase of popularity & respect this\nprogram has attained , it is currently working better\nthan ever .\nnote * follow the directons below , i had best results the second time when\ni hired a bulk email service in addition to following the reports instructions .\nin order for all of us to be successful , many , many emails must be sent so\nthat the returns are many . i have been extremely successful using the\nfollowing company . they send out the offers , and all i do is accept money\nfor reports , then i send back to the people as soon as possible .\nthis is what one had to say : \" thanks to this profitable opportunity . i was\napproached many times before but each time i passed on it . i am so glad i\nfinally joined just to see what one could expect in return for the minimal\neffort and money required . to my astonishment , i received total\n$ 610 , 470 . 00 in 21 weeks , with money still coming in \" .\npam hedland , fort lee , new jersey .\nhere is another testimonial : \" this program has been around for a long time\nbut i never believed in it . but one day when i received this again in the\nmail i decided to gamble my $ 25 on it . i followed the simple instructions\nand walaa . . . . . 3 weeks later the money started to come in . first month i\nonly made $ 240 . 00 but the next 2 months after that i made a total of\n$ 290 , 000 . 00 . so far , in the past 8 months by re - entering the program , i\nhave made over $ 710 , 000 . 00 and i am playing it again . the key to\nsuccess in this program is to follow the simple steps and not change\nanything . \" more testimonials later but first ,\nprint this now for your future reference\n+ + + + order all 5 reports shown on the list below + + +\nfor each report , send $ 5 cash , the name & number of the\nreport you are ordering and your e - mail address to the\nperson whose name appears on that list next to the report . make\nsure your return address is on your envelope top left\ncorner in case of any mail problems .\nwhen you place your order , make sure you order each of the 5 reports .\nyou will need all 5 reports so that you can save them on your computer .\nwithin a few days you will receive , vie e - mail , each of the 5 reports from\nthese 5 different individuals . save them on your computer so they will be\naccessible for you to send to the 1 , 000 ' s of people who will order them from\nyou . also make a floppy of these reports and keep it on your desk in case\nsomething happens to your computer .\nimportant - do not alter the names of the people who are listed next\nto each report , or their sequence on the list , in any way other than what is\ninstructed below in step \" 1 through 6 \" or you will loose out on majority of\nyour profits . once you understand the way this works , you will also see\nhow it does not work if you change it . remember , this method has been\ntested , and if you alter , it will not work ! ! ! people have tried to put their\nfriends / relatives names on all five thinking they could get all the money .\nbut it does not work this way . believe us , we all have tried to be greedy\nand then nothing happened . so do not try to change anything other than\nwhat is instructed . because if you do , it will not work for you . remember ,\nhonesty reaps the reward ! ! !\n1 . . . . after you have ordered all 5 reports , take this advertisement and\nremove the name & address of the person in report # 5 . this person\nhas made it through the cycle and is no doubt counting their fortune .\n2 . . . . move the name & address in report # 4 down to report # 5 .\n3 . . . . move the name & address in report # 3 down to report # 4 .\n4 . . . . move the name & address in report # 2 down to report # 3 .\n5 . . . . move the name & address in report # 1 down to report # 2\n6 . . . . insert your name & address in the report # 1 position .\nplease make sure you copy every name & address accurately !\n* * * * take this entire letter , with the modified list of names , and save it on\nyour computer . do not make any other changes . save this on a\ndisk as well just in case if you loose any data . to assist you with marketing\nyour business on the internet , the 5 reports you purchase will provide you\nwith invaluable marketing information which includes how to send bulk\ne - mails legally , where to find thousands of free classified ads and much\nmore . there are 2 primary methods to get this venture going :\nmethod # 1 : by sending bulk e - mail legally\nlet ' s say that you decide to start small , just to see how it goes , and we will\nassume you and those involved send out only 5 , 000 e - mails each . let ' s\nalso assume that the mailing receive only a 0 . 2 % response ( the response\ncould be much better but lets just say it is only 0 . 2 % . also many people\nwill send out hundreds of thousands e - mails instead of only 5 , 000 each ) .\ncontinuing with this example , you send out only 5 , 000 e - mails .\nwith a 0 . 2 % response , that is only 10 orders for report # 1 . those 10\npeople responded by sending out 5 , 000 e - mail each for a total of 50 , 000 .\nout of those 50 , 000 e - mails only 0 . 2 % responded with orders . that equals\n100 people responded and ordered report # 2 .\nthose 100 people mail out 5 , 000 e - mails each for a total of 500 , 000 e - mails .\nthe 0 . 2 % response to that is 1000 orders for report # 3 .\nthose 1000 people send out 5 , 000 e - mails each for a total of 5 million\ne - mails sent out . the 0 . 2 % response to that is 10 , 000 orders for report # 4 .\nthose 10 , 000 people send out 5 , 000 e - mails each for a total of\n50 , 000 , 000 ( 50 million ) e - mails . the 0 . 2 % response to that is 100 , 000\norders for report # 5 . that ' s 100 , 000 orders times\n$ 5 each = $ 500 , 000 . 00 ( half million ) . your total income in this example is :\n1 . . . . . $ 50 + 2 . . . . . $ 500 + 3 . . . . . $ 5 , 000 + 4 . . . . . $ 50 , 000 + 5 . . . . . $ 500 , 000 . . . . . . .\ngrand total = $ 555 , 550 . 00\nnumbers do not lie . get a pencil & paper and figure out\nthe worst possible responses and no matter how you\ncalculate it , you will still make a lot of money !\nremember friend , this is assuming only 10 people\nordering out of 5 , 000 you mailed to . dare to think for a moment\nwhat would happen if everyone or half or even one 4 th of those people\nmailed 100 , 000 e - mails each or more ? there are over 150 million people on\nthe internet worldwide and counting . believe me , many people will do just\nthat , and more !\nmethod # 2 : by placing free ads on the internet\nadvertising on the net is very very inexpensive and there are hundreds of\nfree places to advertise . placing a lot of free ads on the internet will\neasily get a larger response .\nwe strongly suggest you start with method # 1 and add method # 2 as\nyou go along . for every $ 5 you receive , all you must do is e - mail them the\nreport they ordered . that ' s it . always provide same day service on all\norders . this will guarantee that the e - mail they send out with your name\nand address on it , will be prompt because they can not advertise until they\nreceive the report .\n= order each report by its number & name only . notes : always\nsend $ 5 cash ( u . s . currency ) for each report . checks not\naccepted . make sure the cash is concealed by wrapping it in at least 2\nsheets of paper or aluminum foil . on one of those sheets of paper , write\nthe number & the name of the report you are ordering , your e - mail\naddress and your name and postal address .\nplace your order for these reports now :\nreport # 1 : the insider ' s guide to advertising for free on the net\norder report # 1 from :\nr . r .\npo box 18048\nchicago , il 60618\nreport # 2 : the insider ' s guide to sending bulk e - mail on the net\norder report # 2 from :\ngm boland\n353 jonestown rd . suite 125\nwinston salem , nc 27104\nreport # 3 : secret to multilevel marketing on the net\norder report # 3 from :\nr . chernick\npo box 771661\nc . s . florida 33077\nreport # 4 : how to become a millionaire utilizing mlm & the net\norder report # 4 from :\nm . eiseman\npo box 451971\nsunrise , florida 33345 - 1971\nreport # 5 : how to send out one million emails for free\norder report # 5 from :\nl . samon\npo box 31\ncastletown\nisle of man\nim 99 5 xp\n$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ your success guidelines $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $\nfollow these guidelines to guarantee your success :\n+ + + if you do not receive at least 10 orders for report # 1 within 2 weeks ,\ncontinue sending e - mails until you do . = orders , 2 to 3 weeks after that you should receive 100 orders or more for\nreport # 2 . if you did not , continue advertising or sending e - mails until\nyou do .\n+ + + once you have received 100 or more orders for report # 2 , you can\nrelax , because the system is already working for you , and the cash will\ncontinue to roll in ! this is important to remember : every time\nyour name is moved down on the list , you are placed in front of a different\nreport . you can keep track of your progress by watching which\nreport people are ordering from you . if you want to generate\nmore income send another batch of e - mails and start\nthe whole process again . there is no limit to the income you\ncan generate from this business ! ! !\nfollowing is a note from the originator of this\nprogram : you have just received information that can give you\nfinancial freedom for the rest of your life , with no risk and just a\nlittle bit of effort . you can make more money in the next few\nweeks and months than you have ever imagined . follow the program\nexactly as instructed . do not change it in any way . it works\nexceedingly well as it is now .\nremember to e - mail a copy of this exciting report after you have put your\nname and address in report # 1 and moved others to # 2 thru # 5 as\ninstructed above . one of the people you send this to may send out\n100 , 000 or more e - mails and your name will be on every one of them .\nremember though , the more you send out the more potential customers\nyou will reach . so my friend , i have given you the ideas , information ,\nmaterials and opportunity to become financially independent .\nit is up to you now !\n+ + + + + + + + + + + + + + + + more testimonials + + + + + + + + + + + + + + + +\n\" my name is mitchell . my wife , jody and i live in chicago . i am an\naccountant with a major u . s . corporation and i make pretty good money .\nwhen i received this program i grumbled to jody about receiving\n\" junk mail \" . i made fun of the whole thing , spouting my knowledge of the\npopulation and percentages involved . i \" knew \" it wouldn ' t work . jody\ntotally ignored my supposed intelligence and few days later she jumped in\nwith both feet . i made merciless fun of her , and was ready to lay the old\n\" i told you so \" on her when the thing didn ' t work . well , the laugh was on\nme ! within 3 weeks she had received 50 responses . within the next 45\ndays she had received total $ 147 , 200 . 00 . . . . all cash ! i was shocked .\ni have joined jody in her \" hobby \" .\nmitchell wolf , chicago , illinois\n\" not being the gambling type , it took me several weeks to make up my\nmind to participate in this plan . but conservative that i am , i decided that\nthe initial investment was so little that there was just no way that i\nwouldn ' t get enough orders to at least get my money back \" . \" i was\nsurprised when i found my medium size post office box crammed with\norders . i made $ 319 , 210 . 00 in the first 12 weeks . the nice thing about\nthis deal is that it does not matter where people live . there simply isn ' t a\nbetter investment with a faster return and so big \" .\ndan sondstrom , alberta , canada\n\" i had received this program before . i deleted it , but later i wondered if i\nshould have given it a try . of course , i had no idea who to contact to get\nanother copy , so i had to wait until i was e - mailed again by someone\nelse . . . . . . 11 months passed then it luckily came again . . . . . . i did not delete\nthis one ! i made more than $ 490 , 000 on my first try and all the money\ncame within 22 weeks \" .\nsusan de suza , new york , n . y\nif you have any questions of the legality of this program , contact the office\nof associate director for marketing practices , federal trade commission ,\nbureau of consumer protection , washington , d . c .\nthis email was sent to you via saf - e mail systems . your email address was\nautomatically inserted into the to and from addresses to eliminate\nundeliverables which waste bandwidth and cause internet congestion . your\nemail or webserver is not being used for the sending of this mail . no - one\nelse is receiving emails from your address . you may utilize the removal link\nbelow if you do not wish to receive this mailing .\nhttp : / / www . webtransit . net / remove . html", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.329+0000", "entityId": 5457, "properties": {"text": "Subject: teach and grow rich\ndo you want to teach and grow rich ?\nif you are a motivated and qualified communicator , i will personally train you to do 3 20 minutes presentations per day to qualify prospects that i can provide to you . we will demonstrate to you that you can make $ 400 a day part time using this system . or , if you have 20 hours per week , as in my case , you can make in excess of $ 10 , 000 per week , as i am currently generating ( verifiable , by the way ) .\nplus i will introduce you to my mentor who makes well in excess of $ 1 , 000 , 000 annually .\nmany are called , few are chosen . this opportunity will be limited to one qualified individual per state . make the call and call the 24 hour pre - recorded message number below . we will take as much or as little time as you need to see if this program is right for you .\n* * * 801 - 296 - 4140 * * *\nplease do not make this call unless you are genuinely money motivated and qualified . i need people who already have people skills in place and have either made large amounts of money in the past or are ready to generate large amounts of money in the future . looking forward to your call .\n* * * 801 - 296 - 4140 * * *\n* to be taken out of this database :\nbenno 5 @ witty . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.334+0000", "entityId": 5458, "properties": {"text": "Subject: we dare you to find a better annuity\ncall today for more information !\n- or -\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n* 5 . 40 % for deposits of $ 100 , 000 and up , 5 . 25 % interest for deposits totalling $ 25 , 000 - $ 99 , 999 .\nwe\ndon ' t want anyone to receive our mailings who does not\nwish to receive them . this is a professional communication\nsent to insurance professionals . to be removed from this mailing\nlist , do not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.339+0000", "entityId": 5459, "properties": {"text": "Subject: seeking your partnership\ndear partner to be ,\nfirst , i must apologise to you for using this medium to communicate to you\nabout this project .\ni am a highly placed official of government of nigeria and also a\nfounding member of the ruling party in power now , the peoples democratic\nparty ( pdp ) .\nmy committee - the niger delta development corporation ( nddc ) - which is in\ncharge of managing and supervising the disbursement of oil sales revenues\nfor the nigerian government . the revenues under our control runs into\nseveral hundred of millions of dollars monthly . my self and\nother colleagues in the nddc are currently in need of a foreign partner\nwith whose bank account we shall transfer the sum of forty nine million\nfive hundred thosand united states dollars ( $ 49 . 5 m ) . this fund accrued to us\nas commission for oil sales contracts handled under our supervision .\nthe fund is presently waiting in the government account named cbn / fgn\nindependent revenue account number 400 - 939134 with j . p . morgan chase\nbank , new york . you can do your independent verifictaion of this . however ,\nby virtue of our position as civil servants and members of the nddc , we\ncannot acquire this funds in our name . this is because as top civil\nservants , we are not allowed by law of the land to own or operate bank\naccounts outside our country for now .\ni have been delegated as a matter of trust by my colleagues ,\nto look for an overseas partner in whose account we would\ntransfer the fund\nhence the reason for this mail . we shall be transferring the money to your\naccount with your company as we shall present your company as a registered\nforeign company with a branch in nigeria and you are been paid for a\ncontract which you executed for our country through the nddc and any oter\nfederal ministry that we decide to use to siphon the funds away .\nfor your support and partnership , please reply me to negotiate your fees or\nthe percentage you wish to be paid when the funds arrive your bank account .\nyou must however note that this transaction , with\nregards to our disposition to continue with you , is subject\nto these terms . firstly , our conviction of your transparency .\nsecondly , that you treat this transaction with utmost secrecy\nand confidentiality . finally and above all , that you will provide\nan account that you have absolute control over .\nthe transaction , although discrete , is legitimate and there\nis no risk or legal disadvantages either to ourselves or yourself now or\nin the future as we have put in place perfect mchineries that will ensure\na hitch free transfer into your account upon acceptance .\nthe transfer will be effected to your account within ten - fourteen\n( 10 - 14 ) working days as soon as we reach an agreement and you furnish\nme with a suitable bank account and company name and address with all\nyour contact numbers including fax number .\ni am looking forward to doing business with you and do solicit\nyour confidentiality in this transaction , please mail your\nresponse to me .\nyours faithfully ,\nanderson k . eseimoku", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.343+0000", "entityId": 5460, "properties": {"text": "Subject: outstanding opportunities for \" premier producers \"\nfull - time agents\nsales managers\ngeneral agents\ncpa partners\nindependent agents brokers\nplus access to 385 other companies\nfor a confidential phone interview please complete form submit\nname :\ne - mail :\nphone :\ncity :\nstate :\narea of interest :\nfull - time agent\nsales manager\ngeneral agent\ncpa partner\nindependent agent\nwe\ndon ' t want anybody to receive or mailing who does not wish\nto receive them . this is professional communication sent\nto insurance professionals . to be removed from this mailing\nlist , do not reply to this message . instead , go here : http : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.348+0000", "entityId": 5461, "properties": {"text": "Subject: international calls for only 33 cents per minute with no subscription\ndear user ,\ndo you ever wish you could easily call people you know in other countries\nfor up to 85 % less than standard call prices ? ! and then to make these savings\nwithout having to subscribe to any low cost calling service ? ! we have now\nlaunched a product that does exactly that !\nyou can now call people in most popular destinations around the world for\nonly 33 cents per minute ! there are no hidden charges , you do not need to\nsignup , use any credit cards , or pay any extra bills ! you can try this\nservice at no risk and choose to use it with no commitment !\nto use this new service , simply dial our access number 1530 927 055 and\nonce connected , dial the actual international number you wish to call .\nfor more information and the current list of countries you can call ,\nplease check our website http : / / www . ireland . pd - dial . com /\nexample : if you wanted to call a german number 0567 123 124 you would :\n1 ) dial 1 530 927 055\n2 ) wait until you connect to our system and hear a message asking you\nto dial the number you wish to call .\n3 ) dial the full international number starting 00 . in this instance 00\n( for international ) 49 ( country code for germany ) 567 123 124 ( their\nnumber without the initial zero )\nyou will only pay 33 cents per minute to access our system with no further\ncharges for any calls you make ! you can also use this service to make\ncheap international calls from mobiles too ! however please check the\ncosts of calling 1530 numbers from your mobile if you are unsure .\nyou only ever pay for the cost of calling our access number which will\nappear on your normal bill . however any international calls you make will\nnot appear on your bill , so you only ever pay 33 cents per minute when\nusing our service !\nif calling from a mobile , please ensure that you do not press the green / send\nkey again after dialling the actual mobile number , or you will be billed\nfor a second call by your mobile operator .\nif you have any questions or wish to contact us for more information ,\nplease check our website http : / / www . ireland . pd - dial . com / for details .\nif you are not interested in reducing your phone bills and would not like to\nbe informed of any other similar offers from ourselves , please reply to this\nmessage with the word unsubscribe in the subject heading . if you have your\nemail forwarded , please ensure that you unsubscribe from the actual account\nemail is sent to . we apologise if this message has inconvenienced you in any\nway .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.353+0000", "entityId": 5462, "properties": {"text": "Subject: industry forum # 136\nthe industry forum\nminute man ii\n160 lbs . light - requires no electricity - under $ 6000 complete ! now everybody can be a foamer !\nsmall , one time project ? froth - pak is the answer ! smallest self - contained out - of - box foam application for repairs and small jobs ! also available : insta - stick , tilebond , roofpak and more !\nget your copy of the industry catalog ! most complete reference for our industry !\nclick on the picture above to learn more about the equipment !\nthe industry forum issue # 136\n10341 forum members\n# 136 - 1 : dik m , pa\nit would be much more useful to the industry , if spfa would help find a \" code conforming \" fire barrier for attics , crawl spaces etc . , than lecture on fast and loose applications of code . something about 30 cents ( a bd . ft . ) installed , meeting all codes and spray applied . many companies we talk to have a product that appears to be perfect but they haven ' t spent the money to test over foam . maybe a small committee could do a evaluation of various products , report results to spfa , who in turn will \" acquire funding \" from us .\n# 136 - 2 william b , australia\nwe are in australia but we are finding it hard to locate polyurea sprayers here so that we can start a chapter of the pda do u have any list of australian contractors / suppliers ? ? ? ? or maybe they can put their hand up and lets us know at enviroline @ powerup . com . au , it isfor the betterof the game that an association is need to inform clients and specifiers of the uses and properties of polyureas and train its own members , also to keep cowboys out that give the industry a bad name\n# 136 - 3 ed m .\ni am a writer for aviation magazines and one that i write for is a test international , a new publication that just launched this month . i need any new processes you might have that would be used on aircraft , particularly commercial aviation .\n# 136 - 4 john c , louisiana\ni have a foam cat 2000 graco machine and a probler gun with a 01 tip . i use this setup to spray truck bed liners . my question is can i and how do i spray foam insulation using my equipment ? and what are the different types of insulation ?\n# 136 - 5 murph mahaffey , glas - craft\ni like the new look of the industry forum !\n# 136 - 6 mark w , south carolina\ni ' m sick of all this garbage about covering foam with a \" thermal barrier \" . what the hell do you think foam is ? if you are saying that anything that can be forced to burn should be covered with a fireproof barrier , then you ' d better get busy covering all those trusses and joists and plywood up there that are definitely not carrying a class one fire rating . this double standard for foam is coming directly from those who stand to lose business from it . icynene is different . it doesn ' t burn alone . it doesn ' t melt . it doesn ' t emit phosgene . does it smoke in a fire situation ? sure , so what ?\nblaming foam in the attic for a house fire because it forces the foam to eventually burn is about as stupid as blaming foam seat cushions for burning when a gas tank ruptures and burns up a car . get real , inspectors . you want us to cover up the only thing in the attic assembly that doesn ' t burn !\nas for the vaunted r rating system , it is totally bogus . the test is designed to make porous insulations appear to perform better than they actually do . measuring only conduction and ignoring convection and radiant to convective transfer , the test should have been thrown out for the industry lackey it is 20 years ago , along with that obsolete fiberglassgarbage they ' re still selling everybody . there ' s a reason they don ' t make refrigerators , freezers coolers coffee cups out of fiberglass or cellulose . think about it .\n# 136 - 7 dirk benthien , forum moderator\nthank you , mark and dik , for your statements above . i also feel that far too often individuals and companies are too complacent and quietly live with rules and regulations without trying to change them - even if everybody knows they do not make sense . we are all experts and representatives of this industry and should speak up and promote change !\n# 136 - 8 martin s , canada\ndoes anyone make a dispensing machine for crumb rubber / urethane blends ?\n# 136 - 9 carole l , california re # 135 - 8 otto v , germany\nwhat are the answers ? ( phase - out of 141 b )\n# 136 - 10 brian d , canada\nthere has been a lot of talk about ceramic coatings . we are a distributor of such a coating . we have never professed an r - 20 . reason = is there isn ' t an astm test available to measure coatings for r - value . we compare standardized insulation to ceramic coatings via btu loss calculations . depending on the criteria we can equal 2 to 3 inches of standard insulation with an aluminum jacket . we have the data and the projects to prove it .\n# 136 - 11 cpi\nwe have inquiries from a number of people for used equipment - especially gusmer h 20 / 35 , h 2000 , h 2 , gx - 7 and glas - craft probler . please contact 805 - 552 - 9128 . + + + + + + + + + + + + + + + + + + + + + + + + + + + +\nend of messages .\nthis forum welcomes anyone interested in the processing of single - or plural - component materials such as polyurethane , polyurea , coatings , epoxies , and other spray - applied materials .\nthe industry forum . a free eservice from\nto ask or answer a question , or to contribute anything , simply send an e - mail to forum @ cpillc . com\nused gusmer h 20 / 35 and probler gun for sale ! 805 - 552 - 9128\nyour privacy is protected ! please read the policies and rules at cpillc . com .\nshow your name here ! become a sponsor ! call 805 - 552 - 9128 or send an email to cpi .\nread this and previous forum issues all on one page . it will only work if you are connected to the internet ! click here to go to cpillc . com / forumdiscussion . htm .\nvisit cpi , llc on the web . click http : / / www . cpillc . com /\ncpi is authorized distributor for all leading manufacturers in this industry including gusmer , glas - craft , graco , resin technology , dynasolve .\ncpi ' s customers enjoy impartial advice , full service , life - long free phone support , training and set - up with all new system at a very fair price !\nshop our online warehouse 24 / 7 most efficient procurement anywhere ! www . cpillc . com / warehouse . htm\njob marketspray jobs\ndid we miss someone ? feel free to submit any number of e - mail addresses of coworkers and friends to be included here . again , this service is free for all ! help grow our forum !\nwe ' re cpi . we make it work !\ncall us toll - free 877 - cpi - 2100805 - 552 - 9128\ncopyright ( c ) 2000 , 2001 , 2002 cpi , llc . all rights reserved . disclaimers and limitations of liabilities posted at cpillc . comthis free eservice is made possible by cpi . please visit their web site at www . cpillc . com or call toll - free 877 - 274 - 2600 or 805 - 552 - 9128 . if you wish to unsubscribe , please hit the reply button - subject = remove . please allow 3 days to take effect .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.359+0000", "entityId": 5463, "properties": {"text": "Subject: re : [ 1 ] save over $ 70 on this exquisite software suite . 32004\ntake\ncontrol of your computer with this top - of - the - line software !\nnorton\nsystemworks 2002 software suite\n- professional edition -\nincludes\nsix - yes 6 !\n- feature - packed utilitiesall for 1\nspecial low\nprice of only\n$ 29 . 99 !\nthis\nsoftware will : -\nprotect your computer from unwanted and hazardous viruses -\nhelp secure your private valuable information - allow\nyou to transfer files and send e - mails safely -\nbackup your all your data quick and easily - improve your\npc ' s performance w / superior\nintegral diagnostics ! - you ' ll never have to take your\npc to the repair shop again !\n6\nfeature - packed utilities\n1\ngreat price\na $ 300 +\ncombined retail value\nyours for\nonly $ 29 . 99 !\nprice includes free\nshipping ! and\nfor a limited time buy any 2 of our products get 1 free !\ndon ' t fall\nprey to destructive viruses or hackers ! protect your computer and\nyour valuable information and\n-\nclick here to order yours now ! -\nor call\ntoll - free 1 - 800 - 861 - 1481 !\nyour email\naddress was obtained from an opt - in list . opt - in imcas ( ineternet\nmail coalition against spam ) approved list - reference #\n3 r 3109 uz . if you wish to be unsubscribed from this list , please click\nhere . allow 5 business days for removal . if you have previously unsubscribed and are still receiving\nthis message , you may email our spam\nabuse control center . we do not condone spam in any shape or form .\nthank you kindly for your cooperation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.364+0000", "entityId": 5464, "properties": {"text": "Subject: wall street ' s dirty little secret . . .\nit was the spring of 1979 .\ni was just a tall , goofy looking kid in middle school\nwith buck - teeth and freckles . each day in the\ncafeteria , i walked from table to table . . .\nstealing other kids ' lunch money .\nno , i didn ' t rob them with a gun or a knife - i just made\nthem a little deal . \" let me borrow two dollars today , \" i said ,\n\" and i ' ll bring you five dollars next week . \" the investment\nwas too good to pass up , and other kids were throwing their\nlunch money at me like gravy on mashed potatoes . of course\nwhen \" next week \" rolled around and i couldn ' t pony up the cash ,\ni promised to pay them even more the week after that ,\nif they would just let me keep their investment a little bit\nlonger .\neventually the end of the year came and went , high school\nstarted and with it came girls , and homework , and parties ,\nand sports , and those poor kids from eighth grade had more\nthings on their mind than last year ' s lunch money .\ni made off with a tidy sum for a middle school kid ,\nand i didn ' t even get beat up .\nhidden inside this story are the two greatest stock market\nsecrets you will ever learn .\nfirst of all , greed is your number one enemy . you ' re not\ngoing to turn $ 2 into $ 5 in a week , so cash out when\nyou ' re ahead . don ' t wait for the boat to sink before\ngrabbing the lifejacket .\nsecond , never trust an investment adviser of any kind .\nthey are looking out for their own money , not yours .\nthe \" professionals \" , those stuffy investment counselors and\nmoney managers , will always tell you that the best time to\nbuy is now . according to those guys , the longer you keep\nyour money in the market , the more money you ' re going to make .\nask them when is the best time to sell and their answer is\n\" never \" .\nin a sense , they are right . if you put $ 250 , 000 in an index\nfund right now , you ' ll probably have over a million dollars\nin thirty or forty years . but here ' s the problem :\ndo you want to wait thirty or forty years to be rich ?\nhell no !\nyou want the money now - so you can enjoy it . it ' s hard to\nmake use of your fortune when you ' re seventy years old\nin a wheelchair . if you could make a million dollars in\nthe next few years , what would you do with it ? where would\nyou travel ? what kind of car would you buy ?\nthe fact is . . . youth is the best time to be rich .\nif your goal is to make quick profits in the market , volatility\nis your ally , and stability your enemy . you want to see\nthose large upswings , two hundred points in a day , followed\nby the four hundred point crash a week later . you don ' t\ncare if the market went up or down 20 % this year as long\nit was unstable . that ' s how you ' re going to make the\nmoney .\nwhat i ' m talking about here is day trading .\nmy father invests the traditional way ; he holds some good stocks\nand he goes up 30 k and down 30 k . in the long term of 5 - 10 years\nhe makes money .\nthe day trader buys or sells 5 , 000 shares of xyz for a\n$ 25 , 000 profit in a 5 - 10 minute trade . he acts quickly , taking\nadvantage of all the information at his disposal about a\ncertain stock , and estimating whether it will go up or\ndown within hours , sometimes within minutes .\ni can teach you how to do this - and how to make amazing\namounts of money at it . it ' s not rocket science , and you\nonly need to learn a few basic principles to get started .\nsociety would have you believe that successful trading is\ncomplicated and requires formal training .\nthe truth is , wealthy people use very simple investment\nstrategies to make money .\npopular media and investment professionals portray successful\ntrading as difficult and complex to scare you out of the boxing\nring . they don ' t want the competetion - and they sure as hell\ndon ' t want you paying a few dollars to an online trading firm\nto execute a trade for which they ' d charge you forty or fifty\ndollars .\nthey make their money only if you believe two lies :\n1 ) that investing is too difficult and risky for the average\nperson .\n2 ) that using an investment adviser who charges a high\ncommission is safer than trading online for a few bucks\nper trade .\nhere is what the financial gurus in today ' s society absolutely ,\npositively do not want you to know . . .\nthe strategies for profitable day trading are in fact\nso simple that anyone can do it - provided they spend\na few hours of studying .\nafter reading over 200 financial books and publications\nduring the past decade , and after using day trading\nto successfully make more than four million dollars in\nthe stock market , i ' ve learned the following lessons :\n* * achieving financial success is incredibly simple .\n* * anyone can do it .\n* * it only takes a few hours to learn .\nwhen i discovered the secret to day trading , i didn ' t become\nwealthy overnight . if you want instant cash , drive to wal - mart .\nbuy a ski mask and a shotgun , and rob your local bank . the\nonly way to get rich , quick or otherwise , is through\nhard work , knowledge , and determination .\nafter learning the fundamentals of day trading , i started\npracticing the trading art itself , and the first few weeks\nbrought modest gains . the next few months gave me the practical\nexperience i needed to really earn a living , and i was pulling\nclose to a six figure income . in less than three years with no\nformal financial training , minimal effort and only moderate risk ,\ni had made my first million . the knowledge that i gained\nduring those formative trading years i am willing to share\nwith you in my new book , the master trader . you will learn from\nmy mistakes , and from my successes , as i teach you the simple ,\nsecret formula for day trading that i ' ve used profitably\nyear after year .\nthe income of the day trader can be staggering . thousands , even\nhundreds of thousands of dollars can be made or lost within\nminutes . the difference between making money and losing your\nshirt is simply this : knowledge . i will provide that knowledge ,\nand i will give you a winning edge at this high - stakes game .\naverage income of a day trader :\n5 % average an income in excess of $ 500 , 000 per year\n22 % average an income in excess of $ 250 , 000 per year\n35 % average an income in excess of $ 100 , 000 per year .\n27 % average an income between $ 50 , 000 and $ 99 , 999 per year\n11 % average an income between $ 20 , 000 and $ 49 , 999 per year\nafter reading the master trader , you will discover extremely\nprofitable , simple yet powerful trading methods that give\nyou an almost unfair trading advantage and make you\nwin despite the current market weakness .\nhere is just a snippet of what i will teach you :\n* * * make money whether a stock goes up or down .\n* * * learn how to get in and out of stocks within split seconds .\n* * * learn exactly what stocks to trade , the exact price to\nbuy them and the exact price to sell them .\n* * * save thousands of dollars by learning to avoid the\nmistakes beginners make .\n* * * learn how to trade stocks like a pro and how to make money\nconsistently in every market !\n* * * learn proven strategies that give you the highest chance\nfor great success .\n* * * profit on huge intraday price swings .\n* * * make money on the biggest news stories .\n* * * actively manage your risks and learn how to realize maximum\nreturns .\n* * * learn how to use the tools and information wall street\nprofessionals use .\n* * * learn how to develop and maintain a winning state of mind .\nit ' s time to ask yourself : \" am i going to listen to the\nprofessionals who say buy buy buy but never sell ? or am\ni going to take control of my own financial future , and\nstart making money right now in the stock market ? \"\nwho is looking out for your best economic interests - some\nwealthy wall street stockbroker , or yourself ?\nwith the master trader e - book , you will learn everything you\nneed to know in order to get started with day trading . . . from\nchoosing the best broker in order to take advantage of the\nlowest commissions and instant order executions to professional\ntrading strategies that make professional traders millions of\ndollars .\nthe master trader e - book is the most comprehensive yet easy to\nunderstand and straight - forward book ever written about active\ntrading . if you are serious about success in short term stock\ntrading - order today and start paving the road to your\nown financial future .\noh , and remember that scraggly kid in the eighth grade ?\nhis high school friends laughed when he said he was going to\nmake money in the stock market .\nsix years later , he bought a beach - front home on the california\ncoast - with cash . oops , they weren ' t laughing anymore .\nin a rollercoaster market like we have today , day trading\nis the fastest track to wealth . if you ' re looking\nfor a long - term retirement investment with no risk\nthat goes up 5 % a year , then by all means , this ain ' t\nyour kind of game .\nbut if you want the quickest possible way to make a fortune\nin the market , with the lowest element of risk , then\norder the master trader e - book right now . i promise\nto teach you all of the secrets that helped me become a\nmillionaire through successful day trading .\nyou don ' t need to know anything about the market , and\nanyone can do it , with minimum effort . it ' s an easy\ngame to win if you know how the pieces move .\norder the master trader e - book right now for only $ 49 . 97\nby clicking on the link below :\nhttp : / / 4 tools 4 life . com / qs\nour company is strictly opposed to unsolicited emails .\nto be removed from this list , please send an email\nto \" bulkexpert @ yahoo . com \"\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.370+0000", "entityId": 5465, "properties": {"text": "Subject: let us find the right mortgage lender for you afpe\ndear homeowner ,\ninterest rates are at their lowest point in 40 years !\nwe help you find the best rate for your situation by\nmatching your needs with hundreds of lenders !\nhome improvement , refinance , second mortgage ,\nhome equity loans , and more ! even with less than\nperfect credit !\nthis service is 100 % free to home owners and new\nhome buyers without any obligation .\njust fill out a quick , simple form and jump - start\nyour future plans today !\nvisit http : / / 61 . 145 . 116 . 186 / usero 201 / index . asp ? afft = qml 0\nto unsubscribe , please visit :\nhttp : / / 61 . 145 . 116 . 186 / light / watch . asp", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.378+0000", "entityId": 5466, "properties": {"text": "Subject: - - > direct marketing will increase sales 23875\nthere is no stumbling on to it !\nthe greatest way of marketing this century\nis undoubtedly direct e - mail .\nit ' s similar to the postman delivering a\nletter to your mailbox .\nthe ability to promote your product ,\nservice , website , or mlm / network marketing\nopportunity to millions instantly is what\nadvertisers have been dreaming of for over 100 years .\nwe e - mail your promotion to a list of our\ngeneral / business addresses .\nthe greatest part is , it ' s completely affordable .\ne - mail marketing is the answer !\nhow do we know ?\nwe know because that ' s exactly what we do .\nit ' s a proven fact that you can attract\nnew business through our direct e - mail marketing .\nthe profits that e - mail advertising generate are amazing !\nwe are living proof .\nwe are a direct e - mail internet advertising company and\nour clients pay us thousands of dollars a week to e - mail\ntheir products and services .\nstandard pricing and procedures\nextracting :\nour list of general internet addresses are actually extracted\nfrom the most popular web sites on the internet . the addresses\nare verified and run through our purification process .\nthe process includes addresses run against our custom remove\nfilter of 2 , 492 keywords , as well as through our 192 mb remove /\nflamer list . the edu , org , gov , mil , and us domains are removed ,\nas well as other domains that asked not to receive e - mail .\nevaluation : $ 350 . 00 ( optional )\none of our marketing specialists will evaluate your sales\nletter , and offer his / her expertise on how to make it the\nmost successful .\nstandard pricing : ( emails delivered )\n1 million - $ 700 . 00 per\n2 - 3 million - $ 600 . 00 per\n4 million - $ 500 . 00 per\n5 million & up - $ 400 . 00 per\nspecial limited time offer !\nthis introductory offer of $ 300 . 00 includes :\n1 . set - up fee\n2 . evaluation of sales letter\n3 . 500 , 000 e - mails delivered\npayment policy :\nall services must be paid in full prior to delivery of\nadvertisement .\nnotice :\nabsolutely no threatening or questionable materials .\nif you are serious about direct > > email > > marketing > > - - send\nthe following to { fax } 1 ( 602 ) 392 - 8288\nplease fill this form out completely !\ncontact name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbusiness name : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n# years in business : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nbusiness type : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\naddress : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ncity : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ state : _ _ _ _ _ _\nzip : _ _ _ _ _ _ _ _ _ _ _ _ _ _ country : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nemail address : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nphone : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fax : _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> > > > > - >\nto get out of our email database send an email to\npublicservicel @ btamail . net . cn", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.386+0000", "entityId": 5467, "properties": {"text": "Subject: term insurance is out\naggressive underwriting programs such as . . .\ntable 5 to standard on permanent cases !\nother company term to permanent life insurance with\nnon - med underwriting !\nsimplified and guarantee issue programs for multi - life cases !\nlow cost lifetime guarantees !\nunderwriting events ! . . .\ndiversified brokerage specialists has been combining\nthe very best in technology and personal service since 1946 !\nmake sure to ask about our full line of disability ltc products !\n\" if we can ' t do it , it can ' t be done ! \"\ncall diversified brokerage specialists today !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nvisit us online at : www . dbs 50 . com\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.395+0000", "entityId": 5468, "properties": {"text": "Subject: are you losing ? the answer would amaze you !\n? connecting your business to the world wide web ?\nhow\nmany shoppers are\nyou\nlosing ?\nthe\nfigure wouldamaze you !\nhow are youlosing them ?\nthey\ncannot\nfindyour web\nsite !\na simple\nequation\nnotbeing found = losing new customers !\nwe can change\nthat !\nfor only $ 119 . 97\nwe will submit your\nwebsite to over 360 major search engines around the world\n( see full list\non our web site . )\nbut\nmore than that\nwe will research the\nbest and most effective meta tags and keywords to use\non your web site so\nthat you will rise in the search enginelistings\nso new\ncustomers can find you !\ndon ' t lose any more customers !\nlet\nus\nprofessionally manage the submission of\nyour web site\nand get\nitfound and\nseen on the\nworlds search engines !\nclick onthis link\nclick\nhere !\nto discover\nthepower of\n? connecting\nyour business to the world wide web ?\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.399+0000", "entityId": 5469, "properties": {"text": "Subject: [ ilug ] seeking your partnership\ndear partner to be ,\nfirst , i must apologise to you for using this medium to communicate to you\nabout this project .\ni am a highly placed official of government of nigeria and also a\nfounding member of the ruling party in power now , the peoples democratic\nparty ( pdp ) .\nmy committee - the niger delta development corporation ( nddc ) - which is in\ncharge of managing and supervising the disbursement of oil sales revenues\nfor the nigerian government . the revenues under our control runs into\nseveral hundred of millions of dollars monthly . my self and\nother colleagues in the nddc are currently in need of a foreign partner\nwith whose bank account we shall transfer the sum of forty nine million\nfive hundred thosand united states dollars ( $ 49 . 5 m ) . this fund accrued to us\nas commission for oil sales contracts handled under our supervision .\nthe fund is presently waiting in the government account named cbn / fgn\nindependent revenue account number 400 - 939134 with j . p . morgan chase\nbank , new york . you can do your independent verification of this . however ,\nby virtue of our position as civil servants and members of the nddc , we\ncannot acquire this funds in our name . this is because as top civil\nservants , we are not allowed by law of the land to own or operate bank\naccounts outside our country for now .\ni have been delegated as a matter of trust by my colleagues ,\nto look for an overseas partner in whose account we would\ntransfer the fund\nhence the reason for this mail . we shall be transferring the money to your\naccount with your company as we shall present your company as a registered\nforeign company in nigeria and you are been paid for a contract which you\nexecuted for our country through the nddc and any other federal ministry\nthat we decide to use to siphon the funds through .\nfor your support and partnership , please reply me to negotiate your fees or\nthe percentage you wish to be paid when the funds arrive your bank account .\nyou must however note that this transaction , with\nregards to our disposition to continue with you , is subject\nto these terms . firstly , our conviction of your transparency .\nsecondly , that you treat this transaction with utmost secrecy\nand confidentiality . finally and above all , that you will provide\nan account that you have absolute control over .\nthe transaction , although discrete , is legitimate and there\nis no risk or legal disadvantages either to ourselves or yourself now or\nin the future as we have put in place perfect mchineries that will ensure\na hitch free transfer into your account upon acceptance .\nthe transfer will be effected to your account within ten - fourteen\n( 10 - 14 ) working days as soon as we reach an agreement and you furnish\nme with a suitable bank account and company name and address with all\nyour contact numbers including fax number .\ni am looking forward to doing business with you and do solicit\nyour confidentiality in this transaction , please mail your\nresponse to me .\nyours faithfully ,\nanderson k . eseimoku\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.405+0000", "entityId": 5470, "properties": {"text": "Subject: cigarettes wholesale ! hywwzzlzd\n$ 19 . 95 and up ! buy cartons of cigarettes wholesale , starting at $ 19 . 95 .\nfree shipping !\nwhy pay state taxes ? 100 % legal . mailed from swiss bonded warehouse . for\npersonal use only , must be 18 years of age and older , verified by credit\ncard .\naol users click here\nto be removed from future mailings , reply to this email with remove in the subject line .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.410+0000", "entityId": 5471, "properties": {"text": "Subject: custom warez cds\nintroduction we sell backup\ncds , also known as warez cds . backup cds are copies of software .\nfor example if you go into a shop and buy windows xp pro , for about $ 299 you\nget the serial , the cd , the box and the manual . if you order it off us ,\nyou get : the windows xp cd and the serial number . it works exactly the same ,\nbut you don ' t get the manual and box and the price is only $ 19 . 99 . that is a\nsaving of $ 280 , and the only difference is you don ' t have a colorful box and\nmanual - which are not very\nuseful .\nfeatures - over\n400 applications - over 1500 games - we reply at all your requests in a\nfew hours - newest releases - we have the best price on the web - best\nchoice of cd ' s ever seen on web - we ship orders to worldwide - secure\ncredit card processing thru our authorized on - line retailer . your information\nwill be passed through a secure server and encrypted ( 128 bit ) .\nno need to worry about someone will steal you\ncredit card details .\nmost popular cd ' s . . . . . . . .\nadobe photoshop\n7 . 0 finallonly : $ 19 . 99\nms windows xp\npro . only : $ 19 . 99\nms office xp pro\n( 3 cd ' s ) only : $ 19 . 99\ngratitude ' s of our\ncustomers . . .\njohn stewartthanks guys , i just\ngot the set of cd ' s and they work as promised . you got a happy customer ready to\norder some more and i ' ll send more customers .\nmike sandelli only want you to\nnow that the cd i ordered had arrived . i was a little suspicious when i ordered\nthe stuff , but i was wrong . thanks for your services and never let the site go\ndown .\nchris andersontop marks for an\nexcellent service . your speed of response to my query was second to none . i ' ll\ncertainly be buying from you in future . keep up the good work , guys .\nto\norder please open warezcds . html in attachment", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.419+0000", "entityId": 5472, "properties": {"text": "Subject: your gateway to wealth\nprofiles +\nprofessional is a personal and business analysis tool that analyzes\na client ' s insurance , investment and financial planning goals , to\nhelp them see their situation today compared to their objectives .\nprofiles +\nprofessional is an ideal tool for true financial planning . it not\nonly provides a thorough analysis , including asset allocation , but\nit can calculate tax implications in a client ' s plan . due to its\nmodular format , it can be used for specific planning needs , as well\nas more comprehensive planning .\nthis\nsoftware not only provides exceptional analysis , but excels in providing\nsimple as well as comprehensive presentation pages . by uncovering\nmultiple needs , producers sell more products .\nan\ninternet - based sales - enabling service , which allows\nusers to quickly become successful in the deferred compensation\n( coli ) market .\nfocus on mid - market businesses . in the area of executive benefits ,\nthe mid - market opportunity should be defined by either the number\nof employees within a company , or more specifically by the number\nof highly compensated executives within a company .\na turnkey program that includes qualification of prospect , marketing\nand sales support , case design , plan documents and administration .\nglobal\ninsurance funding transaction ( g . i . f . t . ) is a sophisticated premium - financing\nprogram that provides an alternative funding mechanism for life\nproducts purchased to offset large estate and corporate liabilities .\nclients with a high net worth of at least $ 10 million who have an\ninsurance need and believe their existing portfolio of investments ,\nwhen left unliquidated , will earn more then they will have to pay\non loan interest expenses .\ng . i . f . t . offers compelling sales solutions , comprehensive supplemental\nillustrations and access to a consortium of established banks willing\nand able to lend in this market . loans are available in both u . s .\ndollars and japanese yen .\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\nzip :\nprimary insurance carrier :\nbroker - dealer :\nif you are currently contracted with any of the\njefferson pilot financial family of companies ,\nplease disregard this ad .\nwe don ' t want anybody to receive our mailing who does not wish\nto receive them . this is a professional communication sent to\ninsurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here : http : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.424+0000", "entityId": 5473, "properties": {"text": "Subject: . message report from your contact page . . . . / / ytu 855 rkq\ncheck the available reports you would like to receive :\nkeep on top of the latest news , get\ngreat special deals now . . .\nit is complimentary , it costs nothing , you can quit anytime !\nfinancial - stocks - loans - mortgage\nfinancial news & stock market\ngovernment & politics / discussions\ncredit cards & mortgage refinancing / loans\nhealth - fitness - holidays - travel\nonline pharmacies discounts & specials\ngeneral health & fitness tips / secrets\nalternative medicine & health care\nunder booked vacations & special travel discounts\nmature intrests - dating\ngeneral interest\nadultwebmasters - general\nadultwebmasters - unrestricted sites\nadultwebmasters - content buyers\ncassino ' s & online gamblinng\ndating services & personal ads\nsend me 10 uncensored pictures daily !\nthis mail is never sent unsolicited , got it by error ? [ click here ] to be removed from our subscribers list !\nndtxcpfjspwwtrkaxnxg", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.432+0000", "entityId": 5474, "properties": {"text": "Subject: looking for property in spain ?\nlooking for\nproperty in spain ?\ndon _ t waste your time !\nthat is what\nmost people do when they look for property using property web sites .\nwhy ?\nbecause\nmany of the properties that are advertised on them have already been\nsold !\nyou could waste precious time looking for and inquiring after\nproperties that have already been sold !\nhow frustrating ! ! !\nthe property\nmarket is moving very fast here in spain and frankly many estate agents do\nnot have the time to update their web sites .\nwhat you need\nis a company that can find you property that is actually for sale and can\npresent to you a selection of current properties that specifically fit\nyour requirements .\njust think of how much time and effort\nthat would save you !\nproperty finders spain\ncan do\njust that !\nwe are here in\nspain and have a many ways of looking for property that has just arrived\non the market , even looking in the local papers !\nso while others are chasing properties or new\nprojects that are no longer for sale you can be viewing property\nthat has just arrived on the market !\nsimply fill in the form below and\npress the send button and we will do all of the hard work for you .\nonce we receive your\nrequirements we will immediately begin looking for current properties just\nright for you .\nproperty finders\nform\nproperty\ntype\nvilla\napartment town house new\nbuilding projects plot of\nland\nnumber of\nbedrooms\n1\n2 3 4\n5 6\nlocation\ndo you want a sea\nview ?\nyes no\ndon ` t care\nmountain\nview\nyes\nno don ` t care\na property in the\ncountry\na property in or near a\ncity\npool yes ,\nno\nyes no\ndon ` t care\nprice\nrange\n> \" name = bl >\nlet us find a property for\nyou !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.437+0000", "entityId": 5475, "properties": {"text": "Subject: [ ilug ] re : popular . biz and . com extensions for only $ 14 . 95\nregister . com , . biz , and . info domains for only $ 14 . 95\nthe new domain names are finally available to the general public at discount prices . now you can register one of the exciting new . biz or . info domain names , as well as the original . com and . net names for just $ 14 . 95 . these brand new domain extensions were recently approved by icann and have the same rights as the original . com and . net domain names . the biggest benefit is of - course that the . biz and . info domain names are currently more available . i . e . it will be much easier to register an attractive and easy - to - remember domain name for the same price . visit : http : / / www . domainsforeveryone . com / today for more info .\nregister your domain name today for just $ 14 . 95 at : http : / / www . domainsforeveryone . com / registration fees include full access to an easy - to - use control panel to manage your domain name in the future .\nsincerely ,\ndomain administrator\ndomains for everyone\nto remove your email address from further promotional mailings from this company , click here :\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.442+0000", "entityId": 5476, "properties": {"text": "Subject: best product for 2002\ncopy dvd movies ?\nyes ! copy and burn your own dvd\nmovies and video with a cd - r drive .\n* order by september 21 , 2002 , and receive the following free gifts !\n1 . \" free dvd movie of your choice ( $ 20 . 00 value )\n2 . cell phone battery booster ( $ 19 . 95 value )\nown all the dvd ' s you ' ve always wanted\nand start burning today !\n.\nclick here now !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.448+0000", "entityId": 5477, "properties": {"text": "Subject: 6 . 50 % annuity w / 4 . 05 % lifetime bailout\n10 % penalty - free withdrawals\nrated a ( excellent ) by a . m . best ( for financial strength )\n10 year surrender charge\ncall today for more information on the loyal integritysm vision 10 annuity !\nor\nplease fill out the form below for more information\nname :\ne - mail :\nphone :\ncity :\nstate :\n* the contract ' s base interest rate\nmust fall more than 45 basis points below the initial base interest\nrate ( effective 9 / 3 / 02 ) before the bailout provision may be exercised .\nthis feature is subject to change on future contracts .\n* * rates effective 9 / 3 / 02 and are subject to change at any time ;\nfirst - year interest includes 4 . 50 % base interest rate and 2 . 00 %\nadditional first - year interest .\n* * * ages 0 - 80 ; ages 81 - 90 : 7 % commission .\nloyal integrity ( sm ) vision 10 annuity issued by loyal american life\ninsurance company ( sm ) , contract forms pcqxao 2 nw 4 and pcbxao 2 nw 4 .\ncertain limitations and exclusions apply . product not available\nin all states . this information is for agent use only and is not\nintended for consumer distribution .\nlac 2020269\nwe don ' t want anyone\nto receive our mailings who does not wish to . this is professional communication\nsent to insurance professionals . to be removed from this mailing list ,\ndo not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.454+0000", "entityId": 5478, "properties": {"text": "Subject: http : / / www . efi . ie /\nhttp : / / www . efi . ie / index - 1998 - 07 - 16 . html\neasyadpost . com - -\npromote your products and services on thousands of classified sites .\nsimply the best way to sell on the internet !\nno time to post an ad for your business ?\nstruggling with numerous classified sites ?\nseeking effective means to promote your business ?\nall of these are great reasons for you to visit easyadpost . com . currently easyadpost . com boasts a database of 120 , 000 + popular classified sites , to which we will submit your classified ad quickly and effectively . we will as well submit your business site url or logo url to hundreds of thousands of search engines and directories worldwide . quickly and effectively , easyadpost . com will attract potentially millions of people to your business on the internet , without any hidden cost for advertising !\nvisit links below for more details\nto learn the generals about easyadpost , view http : / / www . easyadpost . com\nto browse the sample list of classified sites , go to http : / / www . easyadpost . com / sample . php\nquestions or comments ? post your query form to us at http : / / www . easyadpost . com / aboutus . php\nspend your market dollar wisely and good luck to your business !\npeterson slade\ncustomer @ easyadpost . com\neasyadpost . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.461+0000", "entityId": 5479, "properties": {"text": "Subject: need to find something ?\nto be removed from this list , click here .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.465+0000", "entityId": 5480, "properties": {"text": "Subject: [ ilug ] here is the information you requested\nare you interested in making some extra money on the internet ?\nwell have i got something for you . last week i made $ 3500 , i am offering you 5 yes 5 web sites that have already been made and are waiting for you to put up to make money with . there is also a few videos that are included that tell you exactly what you have to do to be successful . i am going to also offer you the rights to the web pages and to 5 ebooks that you can sell . . these ebooks aren ' t just any ebooks these are books on how to make money on the internet . i am selling this package deal for a short time only at the low price of $ 39 . 77 my friends all say that i am crazy . . the web site alone is worth over $ 1500 and its yours for only $ 39 . 77 . each ebook you will receive is worth around $ 350 . my web page is . www . home - business - onthe - net . com . please come take a look .\nif you have any questions please feel free to give me a email .\nif you ' d like a free ebook just give me a email and ill email you one asap .\nsincerly\nyour friend\nkeegan\nclick on the link below to remove yourself\naol users\nremove me\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.470+0000", "entityId": 5481, "properties": {"text": "Subject: [ ilug ] assistance\nfrom : col . michael bundu .\ndemocratic republic of congo .\ntel no : your country intl . access code + 8821652098236\nemail : mikebundu @ rediffmail . com\ndear sir / madam\nseeking your immediate assistance .\nplease permit me to make your acquaintance in so informal a manner . this\nis necessitated by my urgent need to reach a\ndependable and trust worthy foreign partner . this request may seem strange\nand unsolicited but i crave your indulgence\nand pray that you view it seriously . my name is col . michael bundu of the\ndemocratic republic of congo and one of\nthe close aides to the former president of the democratic republic of\ncongo laurent kabila of blessed memory , may\nhis soul rest in peace .\ndue to the military campaign of laurent kabila to force out the rebels in\nmy country , i and some of my colleagues were\ninstructed by late president kabila to go abroad to purchase arms and\nammunition worth of twenty million , five hundred\nthousand united states dollars only ( us $ 20 , 500 , 000 . 00 ) to fight the rebel\ngroup . we were then given this money privately\nby the then president , laurent kabila , without the knowledge of other\ncabinet members . but when president kabila\nwas killed in a bloody shoot - out by one of his bodyguards a day before we\nwere schedule to travel out of congo , we\nimmediately decided to put the funds into a private security company here\nin congo for safe keeping . the security of the\nsaid amount is presently being threatened here following the arrest and\nseizure of properties of col . rasheidi karesava\n( one of the aides to laurent kabila ) a tribesman , and some other military\npersonnel from our same tribe , by the new\npresident of the democratic republic of congo , the son of late president\nlaurent kabila , joseph kabila .\nin view of this , we need a reliable and trustworthy foreign partner who\ncan assist us to move this money out of my country\nas the beneficiary .\nwe have sufficient ' ' contacts ' ' here to move the fund under diplomatic\ncover to a security company in europe in your\nname . this is to ensure that the diplomatic baggage is marked\n' ' confidential ' ' and it\nwill not pass through normal custom / airport screening and clearance .\nour inability to move this money out of congo all this while stems from\nour lack of trust of our supposed good friends\n( western countries ) who suddenly became hostile to those of us who worked\nwith the late president kabila , immediately\nafter his son took office . though we have neither seen nor met each other ,\nthe information we gathered from an associate\nwho has worked in your country has encouraged and convinced us that with\nyour sincere assistance , this transaction will\nbe properly handled with modesty and honesty to a huge success within two\nweeks . the said money is a state fund and\ntherefore requires a total confidentiality .\nwe would please need you to stand on our behalf as the beneficiary of this\nfund in europe . this is because we are under\nrestricted movement and watch and hence we want to be very careful in\norder not to lose this fund which we have worked\nso hard for . thus , if you are willing to assist us to move this fund out\nof congo , you can contact me through my email\naddresses , tel / fax nos . above with your telephone , fax number and personal\ninformation to enable us discuss the\nmodalities and what will be your share ( percentage ) for assisting us .\nplease note that there are no risks involved in this deal as everyone ' s\nsecurity is guaranteed if we follow the required\nguidelines . i will hence furnish you with further details of this deal as\nsoon as i am assured of your sincere interest to assist\nus .\ni must use this opportunity and medium to implore you to exercise the\nutmost indulgence to keep this matter extraordinarily\nconfidential , whatever your decision , while i await your prompt response .\nthank you and god bless .\nbest regards\ncol . michael bundu ( rtd ) . m _ bundu @ rediffmail . com\nn \\ b . when you are calling my line , you dial your country intl . access\ncode , then you dial directly , do not include my country\ncode i . e . ( 243 ) . just dial your country intl . access code + 88216\n52098236 . you can also contact me through the above\nemail addresses .\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.475+0000", "entityId": 5482, "properties": {"text": "Subject: you don ' t satisfy me fgtpril\na man endowed with a 7 - 8 \" hammer is simply\nbetter equipped than a man with a 5 - 6 \" hammer .\nwould you rather havemore than enough to get the job done or fall very short . it ' s totally upto you . our methods are guaranteed to increase your size by 1 - 3 \" enter here and see how\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.479+0000", "entityId": 5483, "properties": {"text": "Subject: the best just got better\nmale , age 55 , best , $ 500 , 000 face amount , annual premiums\nge lifetime protectorsm\nlifetime\npremiuml\n$ 6 , 252\ncsv = $ 1\n@ age 1002\n$ 5 , 356\ncsv = face amt\n@ age 1002\n$ 5 , 841\nproduct j\n$ 6 , 365\n$ 7 , 699\n$ 7 , 970\nproduct i\n$ 6 , 531\n$ 6 , 809\n$ 7 , 327\nproduct l\n$ 6 , 348\n$ 6 , 250\n$ 6 , 630\nproduct s\n$ 6 , 538\n$ 5 , 709\n$ 6 , 550\nproduct u\n$ 8 , 950\n$ 5 , 827\n$ 6 , 185\nproduct t\n$ 7 , 581\n$ 6 , 729\n$ 7 , 372\nproduct m\n$ 7 , 637\n$ 6 , 711\n$ 6 , 916\nproduct g\n$ 7 , 044\n$ 5 , 529\n$ 6 , 207\nsource : industry market research conducted and compiled by ge financial , august 2002 .\nge lifetime protectorsm\nis subject to the terms , issue limitations and conditions of policy\nform nos . ul geo 2 et al for ge capital assurance and ulfclo 2 et al\nfor first colony life , which include exclusion periods for death by\nsuicide . ge lifetime protectorsm is not available in all\nstates . lpremium that guarantees coverage for the life of the insured according to the companies ' provisions .\ncompanies refer to premium by different names and the conditions\nfor the guarantee will vary from company to company . for ge lifetime\nprotectorsm , this refers to the designated premium requirement :\nsubject to the policy provisions , policy remains in force as long\nas the sum of the premiums paid , less the reduction in policy value\nfor all partial withdrawals , equals or exceeds the cumulative total\nof the designated monthly premiums from the policy date to the end\nof the current policy month .\n2 premiums calculated\nassuming each company ' s current crediting rate and charges . each\ncolumn represents the premium required annually to age 100 to achieve\ntarget cash surrender value stated in the column heading .\nunderwritten by\ngeneral electric capital assurance company\nfirst colony life insurance company\nlynchburg , va\nmembers of the ge financial family of companies\nwe don ' t want anyone to receive our mailings who does not\nwish to receive them . this is a professional communication\nsent to insurance professionals . to be removed from this mailing\nlist , do not reply to this message . instead , go here :\nhttp : / / www . insuranceiq . com / optout\nlegal notice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.486+0000", "entityId": 5484, "properties": {"text": "Subject: fwd : norton makes the best software available , now only $ 29 . 99 ! 32053\ndo\nyou care about your computer ?\nsymantecsystemworks\n2002 professional\nedition\nfrom\nthe creators of the # 1 rated antivirus software !\nthis\nunbeatable software suite comes with every\nprogram you ' ll ever need to answer the problems or threats that your\ncomputer faces each day of it ' s life ! included in this magnificent deal\nare the following programs :\nnorton\nantivirus?ffff 99 2002 - the # 1\nanti - virus protecion ever ! norton utilities?ffff 99 2002\n- diagnose any problem with your\nsystem !\nnorton ghost?ffff 99 2002 - makes\nbacking up your valuable data easy !\nnorton cleansweep?ffff 99 2002 - eliminates excess\ndata instantly !\nnorton winfax?ffff 99 basic - turns your\ncpu into a fax machine !\ngoback?ffffae 3 personal - helps\nprevent you from making any mistakes !\n* all\nthis sells at the store for $ 99 . 95 * get it\nnow for only $ 29 . 99 ! with\nfree shipping !\nclick\nhere to order now !\nlimited time offer . when we\nrun out it ' s gone , so get it while it ' s hot !\ncall\n1 - 800 - 861 - 1481 order now !\nyour\nemail address was obtained from an opt - in list . ieac ( international email abuse\ncouncil ) approved list\ntype code - eastus - 23 t 95 d . if you wish to be unsubscribed from\nthis list , please click\nhere . we do not condone spam in any shape or form . we appreciate your cooperation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.490+0000", "entityId": 5485, "properties": {"text": "Subject: introducing hgh : the most powerful anti - obesity drug ever\nhello , jm @ example . comhuone therapy\nlose weight while building lean muscle massand reversing the ravages of aging all at once .\nas seen on nbc , cbs , and cnn , and even oprah ! the health\ndiscovery that actually reverses aging while burning fat ,\nwithout dieting or exercise ! this proven discovery has even\nbeen reported on by the new england journal of medicine .\nforget aging and dieting forever ! and it ' s guaranteed !\nlose weightbuild muscle tonereverse aging\nincreased libido\nduration of penile erection\nhealthier bones\nimproved memoryimproved skinnew hair growthwrinkle disappearance\nvisit our web site and learn the facts : click here\nif the above link is not operational , please click\nhere again .\nyou are receiving this email as a subscr - in amerig lisve yoursts ,\njust click\nhere\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.495+0000", "entityId": 5486, "properties": {"text": "Subject: re : super charge your desktop or laptop today ! 17639\ntake control of your computer with this top - of - the - line software !\nsymantec systemworks 2002\n- = professional software suite = -\nthis special package includes six - yes 6 ! - feature - packed utilities\nall for 1 special low price of only $ 29 . 99 !\nthis software will :\n- protect your computer from unwanted and hazardous viruses\n- help secure your private & valuable information\n- allow you to transfer files and send e - mails safely\n- backup your all your data quick and easily\n- improve your pc ' s performance w / superior integral diagnostics !\n- * * * * * you ' ll never have to take your pc to the repair shop again ! * * * * *\nthat ' s six , yes , - 6 - feature - packed utilities @ 1 great price ! ! !\na $ 300 + combined retail value yours only $ 29 . 99 ! ( limited time offer )\nwhy so cheap you ask ? you are buying online wholesale ,\ndirect from the warehouse to you !\n~ ~ ~ and ~ ~ ~\nfor a limited time buy 2 of any software & get 1 free ! ! ! !\ndon ' t fall prey to destructive viruses or programs !\nprotect your computer and your valuable information and . . .\n. . . click here to order now ! - > http : / / 61 . 151 . 247 . 39 / erik /\nor cut & paste the above link ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ in your browser ' s url bar .\nfor more questions , or to order call us toll - free anytime !\n1 - 8 0 0 - 8 6 1 - 1 4 8 1\nwe are strongly against sending unsolicited emails to those who do not wish to receive\nour special mailings . you have opted - in to one or more of our affiliate sites requesting\nto be notified of any special offers we may run from time to time . we also have attained\nthe services of an independent 3 rd party to overlook list management and removal\nservices . the list code in which you are registered is marked at the bottom of this email .\nif you do not wish to receive further mailings ,\nplease click here - > http : / / 61 . 151 . 247 . 39 / erik / remove . asp to be removed from the list .\nplease accept our apologies if you have been sent this email in error . we honor all removal requests .\niaes ( international association of email security ) approved list . serial # 9 e 45 tyu 2 - ssi 3 usa", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.507+0000", "entityId": 5487, "properties": {"text": "Subject: slim factors - a totally new approach to weight loss\nthis e - mail is intended to be a benefit to the recipient .\nif you would like to opt - out and not receive any more click\nhere . your address will be removed immediately . we sincerely apologize\nfor any inconvenience . this e - mail is not spam under the federal regulatory\nlaws of the united states . this message is being sent to you in compliance\nwith the proposed federal legislation for commercial e - mail ( h . r . 4176 - section\n101 paragraph ( e ) ( 1 ) ( a ) ) and bill s . 1618 title iii passed by the 105 th\nus congress . this message is not intended for residents of wa , nv , ca , va .\nscreening of addresses has been done to the best of our technical ability .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.515+0000", "entityId": 5488, "properties": {"text": "Subject: [ ilug - social ] claim your $ 25 kmart gift card\n1 ) claim your $ 25 kmart gift card\n2 ) auto loans , fast approvals for any credit !\nhttp : / / www . adclick . ws / p . cfm ? o = 383 & s = pkl\n3 ) are you paying too much for auto insurance - find out ?\nhttp : / / www . adclick . ws / p . cfm ? o = 334 & s = pkl\nhave a wonderful day ,\nprizemama . com\n- - - - - - - - - - - - - - - - - -\nyou are receiving this email because you have opted - in to receive\nemail from publisher : prizemama . to unsubscribe , click below :\n- -\nirish linux users ' group social events : social @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / social for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.521+0000", "entityId": 5489, "properties": {"text": "Subject: fortune 500 work at home reps needed !\nimmediate help needed . we are a fortune 500 company that is\ngrowing at a tremendous rate of over 1000 % per year . we simply cannot\nkeep up . we are looking for motivated individuals who are looking to\nearn a substantial income working from home .\nthis is a real opportunity to make an excellent income from home . no\nexperience is required . we will provide you with any training you may need .\nwe are looking for energetic and self motivated people . if that is you\nthan click on the link below and complete our online information request\nform ,\nand one of our employment specialist will contact you .\nhttp : / / ter . netblah . com : 27000\nso if you are looking to be employed at home , with a career that will\nprovide you vast opportunities and a substantial income , please fill\nout our online information request form here now :\nhttp : / / ter . netblah . com : 27000\nto be removed from our list simply click on the link below now :\nhttp : / / ter . netblah . com : 27000\n1631 pl 5", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.525+0000", "entityId": 5490, "properties": {"text": "Subject: [ ilug - social ] lose 22 . 5 lbs in 3 weeks !\n1 ) lose 22 . 5 lbs in 3 weeks !\nflush fat away forever ! free 30 - day supply\nhttp : / / www . adclick . ws / p . cfm ? o = 423 & s = pkl 9\n2 ) introducing chase platinum for students\nwith a 0 % introductory apr\nhttp : / / www . adclick . ws / p . cfm ? o = 421 & s = pkl 9\n3 ) access your pc from anywhere - download now\nhttp : / / www . adclick . ws / p . cfm ? o = 425 & s = pkl 9\nhave a wonderful day ,\nprizemama\n- - - - - - - - - - - - - - - - - -\nyou are receiving this email because you have opted - in to receive\nemail from publisher : prizemama . to unsubscribe , click below :\n- -\nirish linux users ' group social events : social @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / social for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.530+0000", "entityId": 5491, "properties": {"text": "Subject: free health insurance quotes\nneed health insurance ?\nin addition to featuring the largest selection of major medical\nhealth plans from leading companies , our service also\noffers a wide selection of quality dental plans . you can obtain\nfree instant quotes , side - by - side comparisons , the best available\nprices , online applications , and a knowledgeable customer care\nteam to help you find the plan that is right for you .\nif you would like more information please email\nwith \" send me health insurance info \" in the body of the email\nif you do not wish to correspond with us , reply to\nsurefiremarketing @ btamail . net . cn with remove as your subject .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.534+0000", "entityId": 5492, "properties": {"text": "Subject: re : ink prices got you down ? 11956\nwould you like to\nsave up to 80 %\non printer , fax\ncopier supplies ?\non\nbrands like -\nepson\ncanon\nhewlett\npackard\nlexmark\nmore !\n100 %\nquality satisfaction guarantee or your money back !\nfree\nsame day shipping on all us orders *\nwe ' ll\nbeat any price on the internet - guaranteed ! * *\nclick\nhere to order now !\nor\ncall us toll - free at 1 - 800 - 758 - 8084 !\n* free shipping only on\norders of $ 40 or more . * * we beat any online retailer ' s price by 5 % .\ncall us with the url ( website ) advertising the lower price and once we\nverify the price , we will beat it by 5 % ! ( must be same manufacturer )\nyou\nare receiving this special offer because you have provided permission to\nreceive email communications regarding special online promotions or\noffers . if you feel you have received this message in error , or wish to\nbe removed from our subscriber list , click\nhere . thank you and we apologize for any inconvenience .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.539+0000", "entityId": 5493, "properties": {"text": "Subject: this one will make you money 9 / 20 / 02 11 : 34 : 52 pm\na great sponsor will not make you money .\na great product line will not make you money either .\na great compensation plan will not make you money either .\na great company will not make you money either .\nsome say it ' s a combination of the above .\nsome say it ' s what ' s inside you that matters the most .\nforget about meetings , one - on - one , 3 - ways calls , etc .\nthose old ways of network marketing has come and gone .\nthey wear you out long before you make any money .\nwhat makes you money is a downline associated with a\nstable company that has consumable products .\nwhere ' s the downline coming from ? well , we have an\nonline automatic recruiting system that does the work\nfor you . our system will place paying members in\nyour downline .\nfurthermore , you can see it working first hand before\nyou decide what to do , if any .\nfor more info on this simple but powerful recruiting system\nplease click here and send a blank message\nwe belong to the same opt - in list . but if you wish to have your email\naddress remove from our database please click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.543+0000", "entityId": 5494, "properties": {"text": "Subject: re : protect your computer , you need systemworks ! coxr\ntake\ncontrol of your computer with this top - of - the - line software !\nnorton\nsystemworks 2002 software suite\n- professional edition -\nincludes\nsix - yes 6 !\n- feature - packed utilitiesall for 1\nspecial low\nprice of only\n$ 29 . 99 !\nthis\nsoftware will : -\nprotect your computer from unwanted and hazardous viruses -\nhelp secure your private valuable information - allow\nyou to transfer files and send e - mails safely -\nbackup your all your data quick and easily - improve your\npc ' s performance w / superior\nintegral diagnostics ! - you ' ll never have to take your\npc to the repair shop again !\n6\ntop - of - the - line utilitiesl\ngreat price\na\n$ 300 +\ncombined retail value\nyours for\na limited time\nfor only ! ! ! $ 29 . 99 ! ! !\nprice includes free shipping ! and\nfor a limited time buy 2 of our products get 1 free !\ndon ' t fall\nprey to destructive viruses or hackers ! protect your computer and\nyour valuable information and\n-\nclick here to order yours now ! -\nor call\ntoll - free 1 - 800 - 861 - 1481 !\nyour email\naddress was obtained from an opt - in list . opt - in eaf ( ecommerce anti - spam\nfederation ) approved list - type upc prefix = yy * wudo 2 flus . to\nunsubscribe from this list , please click\nhere . you need to allow 5 business days for removal . if you have previously unsubscribed and are still receiving\nthis message , you may visit our spam\nabuse control center . we do not condone spam in any shape or form .\nthank you kindly for your cooperation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.552+0000", "entityId": 5495, "properties": {"text": "Subject: guaranteed best mortgage rate\nthe\nbest mortage rates\nsimple ,\neasy and free\nhave\nhundreds of lenders compete for your loan !\nrefinancing\nnew home loans\ndebt consolidation\nsecond mortgage\nhome equity\nclick here to\njump - start\nyour plans for\nthe future ! ! !\ndear\nhomeowner ,\ninterest\nrates are at their lowest point in 40 years ! we help\nyou find the best rate for your situation by matching\nyour needs with hundreds of lenders !\nhome improvement , refinance ,\nsecond mortgage , home equity loans , and more !\nyou ' re eligible even with less than perfect credit !\nthis service is 100 % free\nto home owners and new home buyers without any obligation .\njust fill out a quick , simple form and jump - start your\nfuture plans today !\nclick here to begin\nyou are receiving this email because you registered\nat one of juncan . net ' s partner sites , and agreed to receive\ngifts and special offers that may be of interest to you .\nif you do not want to receive special offers in the future ,\nplease click\nhere .\nyou are subscribed as : webmaster @ efi . ie\nequal\nhousing opportunity .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.557+0000", "entityId": 5496, "properties": {"text": "Subject: home reps wanted - fortune 500 comp hiring\nquestion ?\ndo you want a different job ?\ndo you want to be your own boss ?\ndo you need extra income ?\ndo you need to start a new life ?\ndoes your current job seem to go nowhere ?\nif you answered yes to these questions , then here is your solution .\nwe are a fortune 500 company looking for motivated individuals who are\nlooking\nto a substantial income working from home .\nthousands of individual are currently do this right now .\nso if you are looking to be employed at home , with a career that will\nprovide you vast opportunities and a substantial income , please fill\nout our online information request form here now :\nhttp : / / ter . netblah . com : 27000\nto miss out on this opportunity , click here\nhttp : / / ter . netblah . com : 27000 / remove . html", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.562+0000", "entityId": 5497, "properties": {"text": "Subject: garden ornaments | ppu\nour delightful garden ornaments combine the finest craftsmanship in woodworking with the lastest technology in paints and hardware :\nwe are the world ' s biggest whirligig maker .\nsincerely ,\nstudio t . inc . , usa\nthe home of heller whirligigs\nremove :\ne - mail based commercial communication avoids unnecessary spending on catalogs and paper , and helps to preserve valuable natural resources such as forests and oil . we do not wish to share our valuable information about whirligigs with those who are not interested . should you not wish to receive information from us in the future , please click on the following removal link :\neven though our database cleansing might be subject to delay or error , we will remove your e - mail address permanently from our database . however , please realize that removal from our database does not guarantee that your e - mail address will be deleted from the many other e - mail marketers who construct databases themselves by harvesting from web sites , or by buying any of the thousands of lists of e - mail addresses that are openly for sale on the internet .\n. . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.567+0000", "entityId": 5498, "properties": {"text": "Subject: holidays are coming ?\nhelp wanted . we are a 14 year old fortune 500 company , that is\ngrowing at a tremendous rate . we are looking for individuals who\nwant to work from home .\nthis is an opportunity to make an excellent income . no experience\nis required . we will train you .\nso if you are looking to be employed from home with a career that has\nvast opportunities , then go :\nhttp : / / ter . netblah . com : 8080\nwe are looking for energetic and self motivated people . if that is you\nthan click on the link and fill out the form , and one of our\nemployment specialist will contact you .\nto be removed from our link simple go to :\nhttp : / / ter . netblah . com : 8080 / remove . html\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.572+0000", "entityId": 5499, "properties": {"text": "Subject: account zzzz @ example . com\nnew account for : zzzz @ example . com\n# #\n# adult club #\n# offers free membership #\n# #\n# 3 of the best adult sites #\n# on the internet for absolutely free #\n# #\n> > > > you have instant access to all 3 sites now\n> > > > user name : zzzz @ example . com\n> > > > password : 1534\n- - - - - - - - - - - - - - - - - - - -\nnews 09 / 24 / 02\nwith just over 4 . 8 million members that signed up for free , last month there were 921 , 947 new\nmembers . are you one of them yet ? ? ?\n- - - - - - - - - - - - - - - - - - - -\nour membership faq\nq . why are you offering free access to 3 adult membership sites for free ?\na . i have advertisers that pay me for ad space so you don ' t have to pay for membership .\nq . is it true my membership is for life ?\na . absolutely you ' ll never have to pay a cent the advertisers do .\nq . can i give my account to my friends and family ?\na . yes , as long they are over the age of 18 .\nq . do i have to sign up for all 3 membership sites ?\na . no just one to get access to all of them .\nq . how do i get started ?\na . click on one of the following links below to become a member .\n> > > > fill in the required info and they won ' t charge you for the free\nmembership !\n> > > > if you don ' t believe us , just read their terms and conditions .\n- - - - - - - - - - - - - - - - - - - -\n# 3 . > lucky amateur wives\nyou won ' t believe what we take these wives into doing . . . free vip membership ! !\n# 2 . > new ! just added today : cum drinkers\n950 , 00 pics , 90 , 000 movies , live sex shows . . . free lifetime membership ! !\n# 1 . > filthy teen sluts\nthe ultimate xxx teen site . . . free vip membership ! !\n- - - - - - - - - - - - - - - - - - - -\njennifer simpson , miami , fl\nyour free lifetime membership has entertained my boyffriend and i for the last two years ! your\nadult sites are the best on the net !\njoe morgan manhattan , ny\nyour live sex shows and live sex cams are unbelievable . the best part about your porn sites , is\nthat they ' re absolutely free !\n- - - - - - - - - - - - - - - - - - - -\ndisclaimer :\nwe are strongly against sending unsolicited emails to those who do not wish to receive our special\nmailings . you have opted in to one or more of our affiliate sites requesting to be notified of any\nspecial offers we may run from time to time . we also have attained the services of an independent\n3 rd party to overlook list management and removal services . this is not unsolicited email . if you\ndo not wish to receive further mailings , please go to http : / / greenzer . com / remove . php to be removed\nfrom the list . please accept our apologies if you have been sent this email in error . we honor all\nremoval requests .\nthank you zzzz @ example . com\noldhtlheuhcclco", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.577+0000", "entityId": 5500, "properties": {"text": "Subject: we build the internet . webxperts . com ( design / programming / consultation )\nif this flyer does not appear correctly and / or images do not appear , please click the following link : http : / / www . webxperts . com .\nyour email address was obtained from a purchased list . you are receiving this from eluxmedia llc , and are a part of their mailing list . if you wish to unsubscribe from this list , please click here and enter your name into the remove box . if you have previously unsubscribed and are still receiving this message , you may email our abuse control center .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.581+0000", "entityId": 5501, "properties": {"text": "Subject: the best possible mortgage\nhas your mortgage search got you down ?\nare you frustrated and confused with all the different terms and quotes ? don ' t\nknow who is telling you the truth ? we can solve all your problems .\nvisit our site today and in two minutes you can have us searching thousands of\nprograms and lenders for you . get the truth , get the facts , get your options\nall in one shot . it ' s absolutely free , and you can be done in only two minutes ,\nso click right now and put your worries behind you !\n[ ryte ^ 3247 ( ^ ( pol : kj ) _ 8 j 7 bjk ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.586+0000", "entityId": 5502, "properties": {"text": "Subject: business partnership ( urgent / confidential )\nmr . vincent nnaji ,\nstandard trust bank ltd ,\nlagos , nigeria .\ndear sir ,\ni am mr . vincent nnaji , bank manager of standard trust bank , lagos , nigeria . i have urgent and very confidential business proposition for you .\non january 6 , 1998 a foreign oil consultant foreign contractor with the nigerian national petroleum corporation mr . james herbert made a numbered time fixed deposit for twelve calendar months valued at us $ 20 m ( twenty million united states dollars ) in my branch .\nupon maturity i sent a routine notification to his forwarding address but got no reply . after a month we sent a reminder and finally we discovered from his contract employers the nigerian national petroleum corporation that mr . james herbert died from an automobile accident .\non further investigation , i found out that he died without making a will and all attempts to trace his next of kin was fruitless . i therefore made further investigation and discovered that mr . james herbert did not declare any next of kin or relations in all his official documents including his bank deposit paperwork in my bank . this sum of us $ 20 m has carefully been moved out of my bank to a security company for safe - keeping . no one will ever come forward to claim it .\naccording to nigerian law at the expiration of 5 years the money will revert to the ownership of the nigerian government if nobody applies to claim the fund . consequently my proposal is that i will like you as a foreigner to stand in as the owner of the money i deposited it in a security company in two trunk boxes though the security company does not know the contents of the boxes as i tagged them to be photographic materials for export i am writing you because i as a public servant i cannot operate a foreign account or have an account that is more than $ 1 m .\ni want to present you as the owner of the boxes in the security company so you can be able to claim them with the help of my attorney . all these are to make sure that the fruits of this old man ' s labour will not get into the hands of some corrupt government officials .\nthis is simple . i will like you to provide immediately your full names and address so that the attorney will prepare the necessary documents which will put you in place as the owner of the boxes . the money will be shared in the ratio of 70 % for me and 25 % for you and 5 % will take care of all expenses .\nthere is no risk at all as all the paperwork for this transaction will be done by the attorney and this will guarantee the successful execution of this transaction . if you are interested , please reply immediately via my private email address .\nupon your response i shall then provide you with more details and relevant documents that will help you understand the transaction . please observe with utmost confidentiality and be rest assured that this transaction would be most profitable for both of us because i shall require your assistance to invest my share in your country .\nawaiting your urgent reply via my private email to indicate your interest .\nthanks and regards ,\nmr . vincent nnaji .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.591+0000", "entityId": 5503, "properties": {"text": "Subject: $ 14 . 95 per year domain names\naffordable domain registration for everyone\nthe new domain names are finally available to the general public at discount prices . now you can register one of the exciting new . biz or . info domain names , as well as the original . com and . net names for just $ 14 . 95 . these brand new domain extensions were recently approved by icann and have the same rights as the original . com and . net domain names . the biggest benefit is of - course that the . biz and . info domain names are currently more available . i . e . it will be much easier to register an attractive and easy - to - remember domain name for the same price . visit : http : / / www . domainsforeveryone . com / today for more info .\nregister your domain name today for just $ 14 . 95 at : http : / / www . domainsforeveryone . com / registration fees include full access to an easy - to - use control panel to manage your domain name in the future .\nsincerely ,\ndomain administrator\ndomains for everyone\nto remove your email address from further promotional mailings from this company , click here :\n( f 4 ) 5088 vukl 9 - 796 qvfq 4651 flcg 5 - 695 tl 29", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.608+0000", "entityId": 5504, "properties": {"text": "Subject: make a fortune on ebay 24772\nebay - # 1 rated work at home business\nopportunity\n- pc magazine\nfortunes are literally being made in\nthis great new marketplace !\nover $ 9 billion\nin merchandise was sold on ebay in 2001 by people just like you\n- right from their homes .\nnow you too can learn the secrets of successful\nselling on ebay and make a staggering income from the\ncomfort of your own home . if you are motivated , capable\nof having an open mind , and can follow simple directions , then\nvisit us here .\nwe are strongly against sending unsolicited\nemails to those who do not wish to receive our special mailings . you have\nopted in to one or more of our affiliate sites requesting to be notified\nof any special offers we may run from time to time . we also have attained\nthe services of an independent 3 rd party to overlook list management and\nremoval services . this is not unsolicited email . if you do not wish to\nreceive further mailings , please go\nhere to be removed from the list . please accept our apologies if you\nhave been sent this email in error .\ncharset = iso - 8859 - 1 \" >\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.616+0000", "entityId": 5505, "properties": {"text": "Subject: [ wm ] ( no subject )\ndear our guests ,\nexplore turkey with astartetours ! !\nhotel reservations :\nyou will find more than 200 hotels all over turkey , which have been carefully selected .\nthrough our reservation system we are able to book more than 1 . 000 hotels arround europe .\ntours\nhosted programs , sightseeing tours , escorted tours or cruise programs .\nwe have tours on set dates each year or we can organize special itineraries for the independant traveller or small groups ! !\nrent - a - car :\ntravelling on your own pace in turkey ! we have a range of vehicles on offer to choose from . they may be hired in all major cities .\nyour car can be made available at the airport or your hotel for collection ! !\nvisit our web - site ! !\nwww . astartetours . com\nkind regards\nastarte tours\np . s . : if you want to unsubscribe , please sent us an e - mail .\nthis sf . net email is sponsored by : get the new palm tungsten t\nhandheld . power & color in a compact size !\nwebmake - talk mailing list\nwebmake - talk @ lists . sourceforge . net\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.621+0000", "entityId": 5506, "properties": {"text": "Subject: did you complete this ?\nfree service\nmortgage rates have never been lower .\nis your credit good ? get a loan beyond your wildest\nexpectations !\nclick here\nyour credit stinks ? lenders\nwill still give you an absolutely amazing loan .\nclick here\njust click here and get started .\nabsolutely free quote .\nclick\nhere for quick details !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.625+0000", "entityId": 5507, "properties": {"text": "Subject: thanksgiving sale\nwe want to thank you for your past business and\nwish you and yours a very happy thanksgiving holiday this year . as you\nknow , indians played an important role in helping the pioneers find food and\nwater . no small wonder they were honored on our nation ' s cents from 1859\nto 1909 and gold coins from 1854 to 1933 . asa way of giving\nthanks to our customers , we just bought in a rare batch of 900 vf and xf\nindian cents and are offering these on special for this week . nice mixture\nof dates from the 1880 s to 1909 . our regular wholesale price for\nsolid vf coins is $ 1 . 95 and $ 6 . 00 for solid xf .\nfor this week only , we are offering 10 different\ndates , vf or better , for only $ 15 or 10 different dates , solid xf or\nbetter , for only $ 45 . dealers / investors - buy a nice roll of 50 , with at least 10 different\ndates in each roll . vf roll of 50 , only $ 69 . xf roll of 50 , only\n$ 195 . limit : 5 rolls of each per customer at these low wholesale\nprices .\nwe also have some really nicechoice bu ( ms 63\nor better ) $ 21 / 2 indian gold coins from 1908 - 1929 for only $ 395 each\n( our choice of date , but we will pick out the best quality ) 3 different for only\n$ 950 or 10 different for $ 2 , 950 . limit : 10 per customer .\nplease add $ 6 to help with postage and insurance on\nall orders .\nthank you again ,\ncristina\nwww . collectorsinternet . com\np . s . one of our most popular items this month has\nbeen our wholesale bargain boxes , found half way down our homepage or at\nhttp : / / collectorsinternet . com / . htm . we are getting many repeat orders from other\ndealers . you can save time and postage by adding this item , or any\nother items we have on sale to your other purchases , as there is only a $ 6\npostage and handling fee per order , regardless of size .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.630+0000", "entityId": 5508, "properties": {"text": "Subject: auto protection\nprotect yourself .\npurchase an extended warranty for your car before\nyour existing warranty expires and save hundreds .\neven if your warranty has expired , you will save\n40 - 60 percent over the warranties offered by\ndealerships and it ' s the same warranty .\nall quotes are 100 percent free .\nall quotes are obligation free .\ndear friend ,\ncar troubles always seem to happen at the worst\npossible time . protect yourself and your family\nwith a quality extended warranty for your car ,\ntruck , or suv , so that a large expense cannot hit\nyou all at once . we cover most vehicles with less\nthan 150 , 000 miles .\ndo not buy from a dealer . their prices are often\n40 - 60 percent more !\nwe offer fair prices and prompt , toll - free claims\nservice . get an extended warranty on your car\ntoday . you will be surprised by how inexpensive\nthis protection can be !\nwarranty plans also include , for free :\n1 . 24 - hour roadside assistance\n2 . rental benefit\n3 . trip interruption intervention\n4 . extended towing benefit\ntake advantage of our special offer , before it\nexpires , by going to :\nclick _ here\nsincerely ,\ns . c . valentine\newfc , inc .\nthe new netscape 7 . 0 browser is now available . upgrade now ! http : / / channels . netscape . com / ns / browsers / download . jsp\nget your own free , personal netscape mail account today at http : / / webmail . netscape . com /", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.634+0000", "entityId": 5509, "properties": {"text": "Subject: today ' s special : amazing penetrations no . 17 29264\nget 12 free vhs or dvds !\nclick here for details !\nwe only have high quality porno movies to choose from !\n\" this is a very special , limited time offer . \" get up to 12 dvds absolutely free , with no commitment !\nthere ' s no better deal anywhere .\nthere ' s no catches and no gimmicks . you only pay for the shipping , and the dvds are absolutely free !\ntake a peak at our full catalog !\nhigh quality cum filled titles such as :\n500 oral cumshots 5\ndescription : 500 oral cum shots ! i need hot jiz on my face ! will you cum in my mouth ?\ndozens of dirty hardcore titles such as :\namazing penetrations no . 17\ndescription : 4 full hours of amazing penetrations with some of the most beautiful women in porn !\nfrom our \" sexiest innocent blondes \" collections :\naudition tapes\ndescription : our girls go from cute , young and innocent , to screaming sex goddess\nbeggin ' to have massive cocks in their tight , wet pussies and asses !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.639+0000", "entityId": 5510, "properties": {"text": "Subject: spamassassin . taint . org\ni discovered jmason . org in yahoo , my favorite directory . i am requesting that you create a link from jmason . org to my client ' s web site if you feel that their content is in some way related or complements your site . in exchange , i ' ll post a link from their site to yours .\nexchanging links will help bring in more business for both your web site and my client ' s . an added benefit is increased search engine traffic because the search engines rank sites higher that have a good number of relevant links .\nthis is not a free - for - all link exchange , i don ' t waste my time with them and you shouldn ' t either . i am only linking to related web sites so that all my links are relevant to my site .\ni would like to send you my client ' s web address , so that you can review their site . my client offers web site promotion and and optimization services for search engines .\nplease let me know if you are interested in exchanging links . i ' ll send you more details once i hear back from you .\nlooking forward to your reply .\nsincerely ,\ndonna martos\ndonnamartos @ link - builder . com\nhttp : / / www . link - builder . com\np . s . if for any reason you don ' t want me to contact again , just email me and let me know .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.644+0000", "entityId": 5511, "properties": {"text": "Subject: [ ilug - social ] prirodu requiremus social sample\nsocial\non january lst 2002 , the european countries began\nusing the new euro . never before have so\nmany countries with such powerful economies united\nto use a single currency . get your piece of history\nnow ! we would like to send you a free euro\nand a free report on world currency . just visit\nour site to request your euro and euro report :\nin addition to our currency report , you can receive\nour free investment package :\n* learn how $ 10 , 000 in options will leverage $ 1 , 000 , 000 in\neuro currency . this means even a small movement in the market\nhas huge profit potential . csice\nif you are over age 18 and have some risk capital , it ' s\nimportant that you find out how the euro will\nchange the economic world and how you can profit !\nplease carefully evaluate your financial position before\ntrading . only risk capital should be used .\n8 c 43 fd 25 cb 6 f 949944 eel 2 c 379 e 50028\nutbxcuhepuffbnkwq\nfull opt - out instructions on the bottom of the site\n- -\nirish linux users ' group social events : social @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / social for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.648+0000", "entityId": 5512, "properties": {"text": "Subject: gov ' t guaranteed home business\nwealth without risk ! ! !\ndiscover the best kept secret in america !\nturning $ 300 into $ 20 , 000\nin oklahoma , craig\ntalkington purchased a tax lien on a 5 acre parcel for\n$ 300 . the owner failed to pay the taxes and forfeited\nthe 5 - acre parcel to craig talkington . a short time\nlater craig sold that property to one of the neighbors\nfor $ 20 , 000 . that ' s the kind of money that buys new\ncars and sends young people to college . craig didn ' t\nstop at one deal . he later bought a tax lien for only\n$ 17 on a ten acre track , the property owner failed to\npay the taxes , and craig ended up the property , which\nhe sold for $ 4 , 000 . i don ' t know how much money you\nare making right now but these are the kinds of\nprofits that change peoples lives and solve financial\nproblems and make things a lot better .\njanice knetzger turned a $ 463 . 00 investment into $ 65 , 000 . 00 !\nwayne robertson paid $ 1 . 00 for a home !\ntodd beemer turned a $ 21 , 500 investment into $ 150 , 000 . 00 !\nfor serious investors and entrepreneurs only\nfor a\nfree\nconsultantion to see if you qualify\nfill out\nthe no obligation form below for more\ninformation .\nrequired input field *\nname\n*\naddress\n*\ncity\n*\nstate\n*\nphone\n*\nemail address\n*\n* all\ntax liens and deeds directly support local\nfire departments , police departments , schools ,\nroads , and hospitals . thank you for your interest and\nsupport .\nto be removed , please\nclick here .\n4589 dfsll - 151 rzeh 9359 iyoc 9 - 006 fl 29", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.653+0000", "entityId": 5513, "properties": {"text": "Subject: [ ilug ] manuel oko\nattn : sir / madan\nstrictly confidential .\ni am pleased to introduce myself to you . my name is mr . manuel oko a native of south africa and a senior employee of mines and natural resources department currently on a trainning course in holland for few months .\ni am writing this letter to request your assistance in order to redeem an investment with the south african mining corporation . the said investment , now valued at ( $ 15 . 5 million dollars ) fifteen million , five hundred thousand dollars only was purchased by lucio harper and contracted out to the south african mining corporation in 1977 now recognised as mines and natural resources department . this redeemable investment interest , has now matured since march last year .\nsince march last year , several attempts have been made to contact lucio harper without success and there is no way to contact any of his close relatives in whose favour the investment cash value can be paid .\nsince we have access to all lucio harper ' s information , we can claim this money with the help of my partners with the south african mines and natural resources department . all we have to do is to file claim using you as lucio harper ' s relative .\ni will like to assure you that there is absolutely nothing to worry about , because it is perfectly safe with no risk involved . please ensure to keep this matter strictly confidential . my partner will file a claim for this money on your behalf from the southafrican mining corporation . when the claim is approved , you as the beneficiary\nwill be paid ( 25 % ) of the total amouth .\nsince this money can be paid directly into any bank account of your choice , you have responsibility to ensure that my partner and ireceive ( 70 % ) of the total amouth . while the balance ( 5 % ) will be set aside for any unforseen expenses in the cause of transfering this money .\ni will appreciate if you can give your assurance and guarantee that our share will be well secured . please for the sake of confidentiality , reach me on my e - mail address : manuelokol 000 @ netscape . net . please let me know if this proposal is acceptable to you . kindly reach me immediately with any of the stated contact addresses so that better clearifications\nrelating to the transaction will be explained to you .\ntruly yours\nmanuel oko\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.666+0000", "entityId": 5514, "properties": {"text": "Subject: hi\ndo you want to make $ 1000 or more per week ?\nif you are a motivated and qualified individual - i\nwill personally demonstrate to you a system that will\nmake you $ 1 , 000 per week or more ! this is not mlm .\ncall our 24 hour pre - recorded number to get the\ndetails .\n801 - 296 - 4210\ni need people who want to make serious money . make\nthe call and get the facts .\ninvest 2 minutes in yourself now !\n801 - 296 - 4210\nlooking forward to your call and i will introduce you\nto people like yourself who\nare currently making $ 10 , 000 plus per week !\n801 - 296 - 4210\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.671+0000", "entityId": 5515, "properties": {"text": "Subject: [ ilug ] wilson kamela\nattn : sir / madan\nstrictly confidential .\ni am pleased to introduce myself to you . my name is mr . wilson kamela a native of south africa and a senior employee of mines and natural resources department currently on a trainning course in holland for few months .\ni am writing this letter to request your assistance in order to redeem an investment with the south african mining corporation . the said investment , now valued at ( $ 15 . 5 million dollars ) fifteen million , five hundred thousand dollars only was purchased by lucio harper and contracted out to the south african mining corporation in 1977 now recognised as mines and natural resources department . this redeemable investment interest , has now matured since march last year .\nsince march last year , several attempts have been made to contact lucio harper without success and there is no way to contact any of his close relatives in whose favour the investment cash value can be paid .\nsince we have access to all lucio harper ' s information , we can claim this money with the help of my partners with the south african mines and natural resources department . all we have to do is to file claim using you as lucio harper ' s relative .\ni will like to assure you that there is absolutely nothing to worry about , because it is perfectly safe with no risk involved . please ensure to keep this matter strictly confidential . my partner will file a claim for this money on your behalf from the southafrican mining corporation . when the claim is approved , you as the beneficiary\nwill be paid ( 25 % ) of the total amouth .\nsince this money can be paid directly into any bank account of your choice , you have responsibility to ensure that my partner and ireceive ( 70 % ) of the total amouth . while the balance ( 5 % ) will be set aside for any unforseen expenses in the cause of transfering this money .\ni will appreciate if you can give your assurance and guarantee that our share will be well secured . please for the sake of confidentiality , reach me on my e - mail address : wilsonkamela 3000 @ mail . com . please let me know if this proposal is acceptable to you . kindly reach me immediately with any of the stated contact addresses so that better clearifications\nrelating to the transaction will be explained to you .\ntruly yours ,\nwilson kamela .\n- -\nirish linux users ' group : ilug @ linux . ie\nhttp : / / www . linux . ie / mailman / listinfo / ilug for ( un ) subscription information .\nlist maintainer : listmaster @ linux . ie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.675+0000", "entityId": 5516, "properties": {"text": "Subject: also available levitra , cialis , and viagra .\nkeeping your private medical issues . . . private\nunjust dominion cannot be eternal .\nhe who limps still walks .\na clash of doctrines is not a disaster - - it is an opportunity .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.680+0000", "entityId": 5517, "properties": {"text": "Subject: investment opportunity .\ndear friend ,\nyou will be surprise to see this message but i got your information\nthrough spartanburg , area chamber of commerce usa .\nmy name is howard jones , a chief auditor , during my last auditing in\nthe\nin london , uk we realized the sum $ 35 . 5 million owned by one patric zuma\nfrom egypt who died\nin a fatal motor accident in nov . 15 , 2004 while he was away on vacation\nin egypt .\nall efforts , made to reach the relatives of mr . patric zuma for the past\ntwo years , have not yielded any positive result . it was later gathered\nthat mr . zuma ? s divorced wife died some two years ago in gaza .\nin our last board meeting , the directors jointly decided that mr . zuma ? s\nmoney should be included in the annual profit for the year 2005 . since\ni was the one who introduced mr . zuma to the bank , i objected to the\ndecision and demanded that the fund remains floating in the treasury\nfor another one year to see if we could actually get the relatives of\nmr . zuma to claim the money .\ni am seeking your partnership to transfer this funds to your account\nfor your co - operation and assistance i willcompensate you with 25 %\n70 % percent for me and 5 % set aside for any saundry expenses .\nwith your consent , we will put up a claim on your behalf as next of kin\nto mr . zuma , iwill send you all the documents to you . once this is\ndone ,\nthe claims & verification dept will have the funds processed and wired to\nyour account , then we can meet to share the money together .\nplease i want you to keep this information very confidential as the\nexposure of this information might even lead to my life imprisonment or\ndeath . if you are not willing to assist me , then i will beg you to\nstill keep the informations secret .\nlet me have your telephone number so that i can reach you if you need\nme to call you . i look forward to hearing from you soon . i am presently\nin london on special duties .\nthank you and regards\nhoward jones\nalternative e - , mail addres : howard _ jones @ katamail . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.693+0000", "entityId": 5518, "properties": {"text": "Subject: ion\nonline security notification\ndear lasalle bank member ,\nto prevent unauthorized access to your lasalle internet banking account , we have limited the number of failed login attempts . you have exceeded this number of attempts .\nas an additional security measure your access to online banking has been limited .\nyour access to atm machines and lasalle 24 - hour banking and financial sales has not been affected .\nto restore your account access , please follow the link below :\nthank you for using lasalle bank .\nlasalle bank - online department .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.707+0000", "entityId": 5519, "properties": {"text": "Subject: from mrs . fatima rasheed\ndear beloveth .\ni am mrs . fatima rasheed khalifa a widow to late sheik mohammed\nrasheed khalifa am 54 years old .\npresently i am suffering from long time cancer of the breast from\nall indications my condition is really deteriorating because of the\nunsuitable condition in my country that have denied me proper medical\ncare .\nmy late husband was killed during the invasion of collition forces from\namerican and britain in iraq and during the period of our marriage\nwe couldn ' t produce any child my late husband was very wealthy and\nafter his death i inherited all his business and wealth\ntherefore my desire now is to contribute part of this wealth for\nhumanitarian aid such as propagation in assisting the less - privileged\nand to\nuse part of the fund to acquire a better medical treatment else where\nin europe or america\ni am willing to give out 20 % of the sum to you for helping me to\nretrieve this money and transferring it to your account for the said\npurpose the deposited amount is $ 4 . 5 million united states dollars .\nplease i want you to note that this fund is lying in a security\ncompany . for that i have also written\nto a lawyer who will file application for the retrieving of\nthe money on your name as the beneficiary only if you promise to use\nthis funds judiciary for the said purpose .\nyours ,\nmrs . fatima rasheed .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.716+0000", "entityId": 5520, "properties": {"text": "Subject: investor insight\nthe oil and gas advisory\nnow that oi | and gas has entered a long - term bul | market ,\nour speciaity in pinpointing the hottest companies of the few remaining\nundervalued energy piays has produced soaring returns .\nemerson oi | and gas ( eogi ) is an energy deveioper in the us \" oil belt \"\nand in canada ' s most highiy coveted reservoirs with generating\npotential of miilions per week .\nbreaking news ! ! !\nemerson oi | and gas , inc . , ( eogi ) is pieased to announce that the\naiberta energy & utiiity board has issued license no . o 330206 for the\ncompany ' s wel | 11 - 16 - 24 - 2 the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natural gas from the viking formation , has oil potentia | in the\nbakken zone and gas potentia | in the colony and second white specks\nzones . the viking contains natural gas in weils around the acadia project\nand has the potential for 13 bcf gas in the reservoir under the leases .\ngas welis in the area have caicuiated aof rates up to 14 mmcf per day .\nthe project is | ocated in eastern alberta with year round access and an\nestabiished production and equipment infrastructure . we | | costs are\nexpected to be $ 60 o , 00 o driiled , cased and completed and the advanced\nfunds wi | | go towards the driliing of the first we | | . each well on a | ease\nearns emerson a 49 % working interest in one section .\nemerson oi | and gas , inc . , ( eogi ) is pleased to announce that the land\nlease has been surveyed and acquired regarding the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natural gas from the viking formation , has oi | potential in the\nbakken zone and gas potential in the colony and second white specks\nzones . the viking contains natura | gas in welis around the acadia project\nand has the potential for 13 bcf gas in the reservoir under the | eases .\ngas weils in the area have calcuiated aof rates up to 14 mmcf per day .\nthe project is | ocated in eastern alberta with year round access and an\nestabiished production and equipment infrastructure . well costs are\nexpected to be $ 600 , 0 oo drilied , cased and completed and the advanced\nfunds wil | go towards the dri | | ing of the first we | | . each well on a | ease\nearns emerson a 49 % working interest in one section .\nsymbo | - eogi\nprice - . 026\nthe vaiue of eogi ' s shares wi | | skyrocket :\n1 . price charts confirm oil prices are experiencing the strongest bull\nmarket in a generation .\n2 . natural gas prices have tripied in the last two years .\n3 . with multipie projects in high - gear and the expanding production on\nreserves worth muiti - miilions , eogi is selling for less than 1 / 4 the\nvaiue of its assets .\n4 . emerson oi | and gas speciaiizes in using new technology to turn\nunproductive oi | and gas deposits into profitabie enterprises . already\nshares in the oi | and gas sector are rising faster than the overa | | market .\nin fact , four of dow jones ' ten top performing industry sectors for the\npast year are energy reiated . but it ' s in the mid - sized expiorers and\ndeveiopers like emerson ( eogi ) that the biggest gains are being made . in\nthe last 12 months , many of these stocks made triple and even quadrupie\nreturns .\nour subscribers need to pay particularly ciose attention to undervalued\neogi shares , because it won ' t be a bargain for | ong . this smail company\nwith a comparably smail market vaiue , is sitting on a bonanza of oil\nand gas reserves - an unrecognized bonus for investors especialiy with\nthe daily jump in energy prices .\nbut all that wi | | change in a few short weeks , as these reserves move\ninto production , bringing an expiosion of cash that is expected to\ncapture the attention of the market , and have an equaliy explosive effect on\nthe share price .\nwhat wi | | the cash fiow from these projects do for the price of emerson\noi | and gas ' shares ? wel | we do know this - the great thing about\ninvesting in eogi is that your gains don ' t depend on further increases in\nthe price of oil and gas . even if energy prices stay flat , or deciine\nsiightly , you will stiil make a very heaithy return . of course , energy\nprices are expected to continue their meteoric rise over the next year\nor so as predicted , meaning the vaiue of eogi ' s assets and earnings\nwiil soar even higher . in that case , the reward for investors wiil be\nstaggering .\noverall , we consider eogi to be one of the last outstanding energy\nplays in the oil and gas sector . once this discovery has been reaiized ,\neogi shares will surge sharply on heavy investor attention . we have\nidentified this discovery for immediate accumulation . eogi ' s oil and\ngas reserves are well established and are going into massive\nproduction . early investors wi | | secure optimum gains , and any additiona | news in\nthis area wi | | realiy turn up the heat , causing us to revise our\ntargets upward in next week ' s builetin .\noi | and gas advisory ( oga ) is not a investment expert . certain\nstatements contained in this newsletter may be future - | ooking statements within\nthe meaning of the private securities litigation reform act of 1995 .\nsuch terms as expect , believe , may , wil | , and intend or similar terms may\nidentify these statements . past - performance is not an indicator of\nfuture - resuits . this is not an expert to acquire or sel | securities . oga is\nan independent pubiication that was paid fifteen thousand do | | ars by a\nthird party for the continuing coverage and dissemination of this\ncompany information . investors are suggested to seek proper guidance\nfrom a financia | expert . investors shouid use the information provided in\nthis newsietter as a starting point for gathering additiona |\ninformation on the profiled company to aliow the investor to form their own\nopinion regarding investment .\nif you wish to stop future mailings , or if you feel you have been\nwrongfu | | y placed in our membership , piease send a biank e mail with no\nthanks in the subject to daily _ 5 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.723+0000", "entityId": 5521, "properties": {"text": "Subject: check this impotence medication\ndon ' t ignore your impotence problems\nfeeling good is around the corner !\ntry now http : / / buychepmeds . com\nbest regards ,\nmarquis pack\nphone : 117 - 814 - 4432\nmobile : 457 - 817 - 1481\nemail : zndnioays @ sina . com . hk\ns ^ t , 0 . p http : / / buychepmeds . com / emover . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.732+0000", "entityId": 5522, "properties": {"text": "Subject: the next move higher for strong market leader\nhomeland security investments\nthe terror attacks on the united states on september 11 , 2 ool have\nchanged\nthe security | andscape for the foreseeabie future . both physical and\nlogical\nsecurity have become paramount for all industry segments , especially in\nthe\nbanking , nationa | resource and government sectors . according to giga ,\na\nwho | | y owned subsidiary of forrester research , woridwide demand for\ninformation security products and services is set to eclipse $ 46 b by\n2 oo 5 .\nhomeiand security investments is a newsletter dedicated to providing\nour\nreaders with information pertaining to investment opportunities in this\nlucrative sector . as we know , events reiated to homeiand security\nhappen\nwith lightning speed . what we as investors can do is position\nourseives in\nsuch a way as to take advantage of the current trends and be ready to\ncapitaiize on events which have yet to happen . homeland security\ninvestments is here to help our readers do just that .\nwith this in mind , it is with great excitement that we present vinobie ,\ninc .\nthis stock is expected to do big things in both the near and long\nterms .\nsymbol : vnbl . ob\ncurrent price : o . o 8\nshort term target price : 0 . 35\n12 month target price : 1 . 20\n* * * why we beiieve vnbl . ob wi | | give big returns on investment * * *\n* at this time much of vnbl ' s focus is on rfid ( radio frequency\nidentification ) technology . this is technoiogy which uses tiny sensors\nto\ntransmit information about a person or object wireiessly .\n* vnbl is aiready an industry pioneer in the rfid personal location\ntechnoiogy .\n* vnbl is developing a form of rfid technology which allows companies\nand\ngovernments to wireiessly track their assets and resources . such\ntechnology\nhas huge potentia | in the protection and transportation of materials\ndesignated \" high risk \" were they to fail into the wrong hands .\n* vnbl works on integration of the two afore mentioned systems in order\nto\ncreate \" high security space \" in | ocales where it is deemed necessary .\nlocations which may take advantage of such systems are airports , sea\nports ,\nmines , nuciear facilities , and more .\n* as with a | | stocks , news drives the short term price . fresh news has\nmade vnbl a hot buy .\nnews on vnbl\nmalibu , caiif . - - ( business wire ) - - june 16 , 2 oo 5 - - vinobie , inc .\n( otcbb : vnbl -\nnews ) , a hoiding company seeking to identify | ong - term growth\nopportunities\nin the areas of homeland security , security information systems , and\nother\nsecurity services , announced today that it plans to offer products and\nservices that wi | | assist in the automation of the identification and\ncontrol of equipment , assets , tools , and the reiated processes used in\nthe\noil & gas and petrochemica | industries .\naithough sma | | wireiessiy networked rfid sensors can monitor machines\nand\nequipment to detect possible problems before they become serious , they\ncan\naiso deliver safety features within oi | welis . oi | maybe trapped in\ndifferent | ayers of rock , aiong with gas and water . detection of\nspecific\n| iquids can assist equipment in operating within a specific precise\nopportune moment to ensure certain adverse conditions do not occur ,\nsuch as\na well filiing with water .\nas with other rf based technoiogy appiications , rfid can also provide\nthe\nsafe transit of materiais by oniy the authorized handier , and | imit the\nentry of personnel to specific locations . ensuring personnel safety is\nessential , should there be an emergency at a facility , rfid tags wouid\nenable the customer to track and evaiuate its employee ' s safety and / or\ndanger . this application technology requires product and hardware that\ncan\noperate in harsh and potentiaily hazardous conditions , but gives\nvaiuable\nsafety to the resources and assets that are vital to the customer . rfid\ncan\naiso assist the customer ' s suppiy chain by tracking oi | , gas , and\nchemica |\nproducts from extraction to refining to the sale at the retail | eve | .\nvinobie ' s viewpoint as previously stated is that these applications are\nmore\nthan just a valuable tool to the mining industry , but as a protective\nmeasure of our country ' s natural resources and commodities against\nthreat .\npreservation of these fueis and resources is important to the safety of\nu . s .\nindustry and economy .\nthe company beiieves that such offering service and technology\napplication\nin the oi | & gas and petrochemica | industry will further position\nvinobie in\na rapidiy expanding industry while taking advantage of access to the\nincreasing capital and giobal spending that the company wi | | require\nfor\ngrowth . the company ' s goa | is to also provide a much - needed service at\na\ncost manageable to even the smaliest of businesses that can ' t afford to\ndo\nwithout the safety of its personnel and assets in this current state of\nconstant threat .\nthis is outstanding news . the growth potential for this company is\nexceptiona | . in an already hot industry , vnbl . ob stands out as a truiy\ninnovative pioneer . we see big things happening to this stock .\ninformation within this emai | contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or invoive discussions with respect to predictions ,\nexpectations , beliefs , plans , projections , objectives , goals ,\nassumptions or\nfuture\nevents or performance are not statements of historica | fact and may be\n\" forward | ooking statements . \" forward | ooking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which could cause\nactual results or events to differ materially from those presentiy\nanticipated . forward | ooking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" will , \" \" anticipates , \" \" estimates , \" \" believes , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" could , \" or \" might \" occur .\nas with many micro - cap stocks , today ' s company has additional risk\nfactors worth noting . those factors inciude : a limited operating\nhistory ,\nthe company advancing cash to reiated parties and a sharehoider on an\nunsecured basis : one vendor , a reiated party through a majority\nstockhoider , suppiies ninety - seven percent of the company ' s raw\nmateriais :\nreiiance on two customers for over fifty percent of their business and\nnumerous related party transactions and the need to raise capital .\nthese\nfactors and others are more fu | | y spelied out in the company ' s sec\nfiiings . we urge you to read the fiiings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states a | | materia | facts or does not omit a materia | fact\nnecessary\nto make the statements therein not misieading . a | | information\nprovided within this email pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises ail readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report shail be construed as any kind of investment advice or\nsoiicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose all your money by investing in this stock . the pubiisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as | ega | , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecially seiected to be referenced based on the favorable performance\nof\nthese companies . you would need perfect timing to achieve the results\nin the examples given . there can be no assurance of that happening .\nremember , as aiways , past performance is never indicative of future\nresuits and a thorough due diiigence effort , including a review of a\ncompany ' s fiiings , should be completed prior to investing . in\ncompiiance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscioses the receipt of tweive thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiliate shareholder for\nthe\ncirculation of this report . gem , inc . has a position in the stock\nthey\nwill se | | at any time without notice . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . ail factual information\nin this report was gathered from public sources , including but not\nlimited to company websites , sec fiiings and company press reieases .\nthe\nrocket stock report beiieves this information to be reiiable but can\nmake\nno guarantee as to its accuracy or completeness . use of the materia |\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.737+0000", "entityId": 5523, "properties": {"text": "Subject: fantastic investors info\nmaisonette international enterprises ltd ( maen )\na soiid hoiding of companies with constant revenue generating\nbusinesses , offering unique products and services to the genera | public and\nprofessionais .\ncurrent price : 0 . o 9\nis this an undiscovered gem that is positioned to go higher ? review\nexactly what this company does . does it sound new and exciting to you ?\nwatch this one trade tuesday .\nbreaking news ! !\nmaisonette home products , ltd . receives exclusive agreement for export\nof paneiized homes in the united kingdom\nmaisonette home products , ltd . , the canadian subsidiary of maisonette\ninternational enterprises ltd . ( maen ) is pleased to announce that it\nhas entered into a definitive officia | | icensing agreement with winton\ngiobal , ltd . to exclusively export winton globa | ' s paneiized\nprefabricated homes to the united kingdom .\nunder the terms of the agreement , maisonette will act as exclusive\nagent for winton gioba | and sell its prefabricated paneiized homes to\ndevelopers in the united kingdom . the company is in advanced stages of\nnegotiations with severa | developers in the united kingdom for the export of\nup to 250 panelized homes to be erected in the uk .\nalain ghiai founder , commented , ` ` this new venture is right in | ine\nwith maisonette home products plan to promote the export of british\ncoiumbia ' s lumber products overseas . we have had numerous interests in asia\nand the united kingdom . we plan to start with a smailer order of 4 o\nhomes and grow the relationship from there . the operation is going to\nincreasee our canadian company ' s revenues and will contribute positiveiy to\nthe bottom | ine of the company ' s profits . i look forward to introduce\nour canadian | umber products and fine craftsmanship at the competitive\nprices canadian | umber products are famed for . ' '\nthe vaiue of the first order ranges in the severa | mi | | ions of canadian\ndoliars in revenue for maisonette home products , ltd .\nabout maisonette international enterprises ltd .\nmaisonette internationa | enterprises ltd . is a publiciy held hoiding\ncompany incorporated in nevada , usa . its assets inciude severa |\nsubsidiaries with interests in e - business , oniine retaiiing and lifestyie\ncontent , and buiiding materials for the general pubiic and professionais .\nconclusion :\nthe exampies above show the awesome , earning potentia | of littie known\ncompanies that explode onto investor ' s radar screens ; many of you are\naiready famiiiar with this . is maen poised and positioned to do that for\nyou ? then you may feel the time has come to act . . . and piease watch\nthis one trade tuesday ! go maen .\npenny stocks are considered highly specuiative and may be unsuitable\nfor ail but very aggressive investors . this profile is not in any way\naffiiiated with the featured company . we were compensated 3 ooo dollars\nto distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investment advice .\nif you wish to stop future mail - ings , or if you fee | you have been\nwrongfu | | y piaced in our membership , send a biank e mail with no thanks in\nthe sub ject to daily _ 2 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.742+0000", "entityId": 5524, "properties": {"text": "Subject: maam , does your man satisfy you\nhow did it go on wednesday ?\nfeeling good is around the corner !\nclick now and get more power http : / / buychepmeds . com / ? cid = viftxtol\nbest regards ,\nlelia harrison\nphone : 617 - 187 - 5914\nmobile : 433 - 121 - 3695\nemail : ehprsawv @ dbzmail . com\nr . e ' m . o ^ v ^ e http : / / buychepmeds . com / emover . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.747+0000", "entityId": 5525, "properties": {"text": "Subject: unbiased info for investor intelligence\nthe oi | and gas advisory\nnow that oi | and gas has entered a long - term buil market ,\nour speciaity in pinpointing the hottest companies of the few remaining\nundervalued energy plays has produced soaring returns .\nemerson oil and gas ( eogi ) is an energy deveioper in the us \" oil belt \"\nand in canada ' s most highiy coveted reservoirs with generating\npotentia | of miilions per week .\nbreaking news ! ! !\nemerson oil and gas , inc . , ( eogi ) is pieased to announce that the\naiberta energy & utiiity board has issued license no . 03302 o 6 for the\ncompany ' s wel | 11 - 16 - 24 - 2 the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natural gas from the viking formation , has oi | potentia | in the\nbakken zone and gas potentia | in the colony and second white specks\nzones . the viking contains natura | gas in weils around the acadia project\nand has the potential for 13 bcf gas in the reservoir under the leases .\ngas weils in the area have calcuiated aof rates up to 14 mmcf per day .\nthe project is located in eastern aiberta with year round access and an\nestablished production and equipment infrastructure . weil costs are\nexpected to be $ 600 , 0 oo drilied , cased and compieted and the advanced\nfunds wi | | go towards the driiling of the first well . each well on a lease\nearns emerson a 49 % working interest in one section .\nemerson oil and gas , inc . , ( eogi ) is pieased to announce that the land\nlease has been surveyed and acquired regarding the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natural gas from the viking formation , has oil potentia | in the\nbakken zone and gas potential in the colony and second white specks\nzones . the viking contains natura | gas in welis around the acadia project\nand has the potentia | for 13 bcf gas in the reservoir under the leases .\ngas welis in the area have caicuiated aof rates up to 14 mmcf per day .\nthe project is located in eastern alberta with year round access and an\nestabiished production and equipment infrastructure . wel | costs are\nexpected to be $ 6 oo , ooo drilled , cased and completed and the advanced\nfunds will go towards the drilling of the first wel | . each wel | on a | ease\nearns emerson a 49 % working interest in one section .\nsymbo | - eogi\nprice - . 026\nthe value of eogi ' s shares will skyrocket :\n1 . price charts confirm oil prices are experiencing the strongest buil\nmarket in a generation .\n2 . natural gas prices have tripied in the | ast two years .\n3 . with multipie projects in high - gear and the expanding production on\nreserves worth multi - miliions , eogi is seiling for less than 1 / 4 the\nvaiue of its assets .\n4 . emerson oi | and gas specializes in using new technoiogy to turn\nunproductive oi | and gas deposits into profitabie enterprises . already\nshares in the oi | and gas sector are rising faster than the overa | | market .\nin fact , four of dow jones ' ten top performing industry sectors for the\npast year are energy reiated . but it ' s in the mid - sized expiorers and\ndevelopers | ike emerson ( eogi ) that the biggest gains are being made . in\nthe last 12 months , many of these stocks made triple and even quadrupie\nreturns .\nour subscribers need to pay particularly close attention to undervalued\neogi shares , because it won ' t be a bargain for | ong . this smail company\nwith a comparably sma | | market vaiue , is sitting on a bonanza of oil\nand gas reserves - an unrecognized bonus for investors especialiy with\nthe daily jump in energy prices .\nbut ail that wiil change in a few short weeks , as these reserves move\ninto production , bringing an expiosion of cash that is expected to\ncapture the attention of the market , and have an equa | | y explosive effect on\nthe share price .\nwhat wil | the cash flow from these projects do for the price of emerson\noi | and gas ' shares ? weil we do know this - the great thing about\ninvesting in eogi is that your gains don ' t depend on further increases in\nthe price of oi | and gas . even if energy prices stay fiat , or deciine\nslightly , you wil | stil | make a very healthy return . of course , energy\nprices are expected to continue their meteoric rise over the next year\nor so as predicted , meaning the vaiue of eogi ' s assets and earnings\nwil | soar even higher . in that case , the reward for investors wil | be\nstaggering .\novera | | , we consider eogi to be one of the last outstanding energy\npiays in the oil and gas sector . once this discovery has been realized ,\neogi shares wiil surge sharpiy on heavy investor attention . we have\nidentified this discovery for immediate accumuiation . eogi ' s oi | and\ngas reserves are we | | established and are going into massive\nproduction . eariy investors will secure optimum gains , and any additional news in\nthis area wi | | really turn up the heat , causing us to revise our\ntargets upward in next week ' s bu | | etin .\noi | and gas advisory ( oga ) is not a investment expert . certain\nstatements contained in this newsietter may be future - | ooking statements within\nthe meaning of the private securities litigation reform act of 1995 .\nsuch terms as expect , believe , may , wiil , and intend or similar terms may\nidentify these statements . past - performance is not an indicator of\nfuture - resuits . this is not an expert to acquire or se | | securities . oga is\nan independent pubiication that was paid fifteen thousand dollars by a\nthird party for the continuing coverage and dissemination of this\ncompany information . investors are suggested to seek proper guidance\nfrom a financial expert . investors should use the information provided in\nthis newsletter as a starting point for gathering additiona |\ninformation on the profiled company to allow the investor to form their own\nopinion regarding investment .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfully piaced in our membership , please send a biank e mai | with no\nthanks in the subject to daily _ 9 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.753+0000", "entityId": 5526, "properties": {"text": "Subject: here ' s a hot play in motion\nhomeland security investments\nthe terror attacks on the united states on september 11 , 20 ol have\nchanged\nthe security landscape for the foreseeable future . both physical and\n| ogica |\nsecurity have become paramount for all industry segments , especia | | y in\nthe\nbanking , nationa | resource and government sectors . according to giga ,\na\nwho | | y owned subsidiary of forrester research , woridwide demand for\ninformation security products and services is set to eclipse $ 46 b by\n2005 .\nhomeiand security investments is a newsietter dedicated to providing\nour\nreaders with information pertaining to investment opportunities in this\nlucrative sector . as we know , events related to homeland security\nhappen\nwith lightning speed . what we as investors can do is position\nourselves in\nsuch a way as to take advantage of the current trends and be ready to\ncapitalize on events which have yet to happen . homeland security\ninvestments is here to heip our readers do just that .\nwith this in mind , it is with great excitement that we present vinoble ,\ninc .\nthis stock is expected to do big things in both the near and | ong\nterms .\nsymbol : vnbl . ob\ncurrent price : o . 08\nshort term target price : o . 35\n12 month target price : 1 . 20\n* * * why we believe vnbl . ob will give big returns on investment * * *\n* at this time much of vnbl ' s focus is on rfid ( radio frequency\nidentification ) technoiogy . this is technology which uses tiny sensors\nto\ntransmit information about a person or object wireiessly .\n* vnbl is aiready an industry pioneer in the rfid personal location\ntechnoiogy .\n* vnbl is developing a form of rfid technology which allows companies\nand\ngovernments to wirelessly track their assets and resources . such\ntechnoiogy\nhas huge potentia | in the protection and transportation of materiais\ndesignated \" high risk \" were they to fa | | into the wrong hands .\n* vnbl works on integration of the two afore mentioned systems in order\nto\ncreate \" high security space \" in | ocaies where it is deemed necessary .\nlocations which may take advantage of such systems are airports , sea\nports ,\nmines , nuciear faciiities , and more .\n* as with a | | stocks , news drives the short term price . fresh news has\nmade vnbl a hot buy .\nnews on vnbl\nmalibu , calif . - - ( business wire ) - - june 16 , 2 oo 5 - - vinoble , inc .\n( otcbb : vnbl -\nnews ) , a holding company seeking to identify | ong - term growth\nopportunities\nin the areas of homeland security , security information systems , and\nother\nsecurity services , announced today that it pians to offer products and\nservices that wiil assist in the automation of the identification and\ncontrol of equipment , assets , toois , and the related processes used in\nthe\noi | & gas and petrochemical industries .\nalthough smail wireiessly networked rfid sensors can monitor machines\nand\nequipment to detect possible problems before they become serious , they\ncan\naiso deiiver safety features within oi | welis . oi | maybe trapped in\ndifferent | ayers of rock , aiong with gas and water . detection of\nspecific\n| iquids can assist equipment in operating within a specific precise\nopportune moment to ensure certain adverse conditions do not occur ,\nsuch as\na well filiing with water .\nas with other rf based technoiogy applications , rfid can also provide\nthe\nsafe transit of materiais by only the authorized handler , and limit the\nentry of personne | to specific | ocations . ensuring personnel safety is\nessential , should there be an emergency at a faciiity , rfid tags wouid\nenabie the customer to track and evaiuate its empioyee ' s safety and / or\ndanger . this application technology requires product and hardware that\ncan\noperate in harsh and potentia | | y hazardous conditions , but gives\nvaluable\nsafety to the resources and assets that are vita | to the customer . rfid\ncan\naiso assist the customer ' s supply chain by tracking oi | , gas , and\nchemica |\nproducts from extraction to refining to the saie at the retai | | evel .\nvinoble ' s viewpoint as previousiy stated is that these applications are\nmore\nthan just a vaiuable too | to the mining industry , but as a protective\nmeasure of our country ' s natura | resources and commodities against\nthreat .\npreservation of these fueis and resources is important to the safety of\nu . s .\nindustry and economy .\nthe company believes that such offering service and technoiogy\nappiication\nin the oil & gas and petrochemical industry wil | further position\nvinoble in\na rapidly expanding industry whiie taking advantage of access to the\nincreasing capital and gioba | spending that the company wi | | require\nfor\ngrowth . the company ' s goal is to aiso provide a much - needed service at\na\ncost manageable to even the sma | | est of businesses that can ' t afford to\ndo\nwithout the safety of its personnel and assets in this current state of\nconstant threat .\nthis is outstanding news . the growth potential for this company is\nexceptional . in an already hot industry , vnbl . ob stands out as a truiy\ninnovative pioneer . we see big things happening to this stock .\ninformation within this emai | contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , pians , projections , objectives , goals ,\nassumptions or\nfuture\nevents or performance are not statements of historica | fact and may be\n\" forward | ooking statements . \" forward | ooking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that invoive a number of risks and uncertainties which couid cause\nactua | results or events to differ materia | | y from those presently\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" wi | | , \" \" anticipates , \" \" estimates , \" \" beiieves , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" couid , \" or \" might \" occur .\nas with many micro - cap stocks , today ' s company has additional risk\nfactors worth noting . those factors inciude : a limited operating\nhistory ,\nthe company advancing cash to reiated parties and a shareholder on an\nunsecured basis : one vendor , a related party through a majority\nstockhoider , supplies ninety - seven percent of the company ' s raw\nmateriais :\nreiiance on two customers for over fifty percent of their business and\nnumerous related party transactions and the need to raise capital .\nthese\nfactors and others are more fuily speiled out in the company ' s sec\nfiiings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states ail materia | facts or does not omit a material fact\nnecessary\nto make the statements therein not misleading . ail information\nprovided within this emai | pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises all readers and subscribers to seek advice\nfrom\na registered professiona | securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report shal | be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose ail your money by investing in this stock . the publisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as | ega | , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspeciaily seiected to be referenced based on the favorabie performance\nof\nthese companies . you wouid need perfect timing to achieve the resuits\nin the exampies given . there can be no assurance of that happening .\nremember , as aiways , past performance is never indicative of future\nresults and a thorough due diiigence effort , including a review of a\ncompany ' s filings , shouid be completed prior to investing . in\ncompiiance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscioses the receipt of tweive thousand doilars from a third party\n( gem , inc . ) , not an officer , director or affiliate sharehoider for\nthe\ncircuiation of this report . gem , inc . has a position in the stock\nthey\nwil | se | | at any time without notice . be aware of an inherent confiict\nof interest resuiting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . al | factua | information\nin this report was gathered from pubiic sources , inciuding but not\nlimited to company websites , sec fiiings and company press releases .\nthe\nrocket stock report beiieves this information to be reliabie but can\nmake\nno guarantee as to its accuracy or compieteness . use of the materia |\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.757+0000", "entityId": 5527, "properties": {"text": "Subject: select small - cap for astute investors\nmomentum alert issued for july 18 , 2005\nexplosive pick for our members\n! ! ! ride the stairway to heaven ! ! ! !\ngood day to all broker ' s , day trader ' s and investor ' s world stock report\nhas become famous with some great stock picks in the otc , small cap\nmarket ' s ! ! ! here at world stock report we work on what we here from\nthe street . rumor ' s circulating and keeping the focus on the company ' s\nnews . we pick our companies based on there growth potential . we focus on\nstocks that have great potential to move up in price ! ! ! while giving\nyou liquitity .\nour latest pick is cdgt .\nsymbol : cdgt\ncurrent price : $ 3 . 42\nshort term 5 day projection : $ 7 - 9\nwe give it to you again as a gift and this is why .\n* * * * * * press release * * * * * * * * * * * * press release * * * * * * * * * * * * press release * * * * * *\npress release source : china digital media corporation\npress release\nchina digital media corporation announces an acquisition of a media and\nadvertising agent in china\nhong kong , july 13 / xinhua - prnewswire / - - china digital media corporation\n( \" digimedia \" ) ( otc : cdgt ; otc bulletin board : cdgt ) with its subsidiaries\n( together the \" group \" ) announced today that the group signed a shares\ntransfer agreement ( the \" agreement \" ) to acquire an advertising sales agent ,\nguangdong m - rider media company limited ( \" guangdong m - rider \" ) , a limited\ncompany registered in guangdong in the peoples republic of china . the\nprincipal operating activities of guangdong m - rider are in design ,\nproduction and distribution of advertisements through television channels .\nguangdong m - rider is one of the top five reputed advertising agents in the\nguangdong province and is currently a sole advertising distributor for a\nnumber of television channels in guangdong province and in guangzhou city .\npursuant to the terms of the agreement , the group will acquire a 100 % equity\ninterest in guangdong m - rider for a total consideration of rmb 1 , 090 , 000 in\ncash and rmb 7 , 500 , 000 worth of digimedia . s restricted common shares . the\nmanagement of guangdong m - rider in the agreement warrants that the net\noperating cash inflow in the first year will not be less than rmb\n10 , 000 , 000 .\nremember this is a stong buy recommendation . . .\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements \" . \" forward looking statements \" are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will \" , \" anticipates \" ,\n\" estimates \" , \" believes \" , \" understands \" or that by statements indicating\ncertain actions \" may \" , \" could \" , or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformation to be reliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.766+0000", "entityId": 5528, "properties": {"text": "Subject: sto - ck advice\nstructure & technology report\nmay 10 th , 2005 - - for immediate release\ninvestors and traders :\npinnacle group limited , inc . ( pgpu ) announces acquisition of aerofoam metals inc .\naerofoam metals inc is a | eading structura | technology company focused on the deveiopment\n& commercialization of foamed aiuminum products and components for the world market .\nin today ' s market , aerofoam metals inc has cutting edge technoiogy and | ittie competition .\nsymbol : pgpu . pk\ncurrent price : 0 . 68\nshort term target price : $ 2 . 25\n12 month target price : $ 5 . 25\npinnaclegli . com\naerofoam metals inc investment considerations :\n- limited competition\n- commitment to r & d\n- cutting edge structura | technoiogy\naerofoammetals . com\npress release - - may 10 th , 2 oo 5 - - pinnacle acquisition of aerofoam\nthe company foilowing extended re - negotiations with the major sharehoider and management of aerofoam\nmetais incorporated ( \" aerofoam \" ) have reached an agreement in principie . the parties have entered into\na binding | etter of intent , whereby , pinnacle wiil acquire ail of the issued and outstanding shares of\naerofoam for new treasury shares of pinnacie . the number of shares to be issued to the shareholders of\naerofoam upon this acquisition wiil be 3 , 50 o , 00 o common shares . the major sharehoider of aerofoam who\nbeneficiaily owns 56 % of a | | the issued and outstanding shares of aerofoam has agreed to vote his shares\nin favor of this acquisition . the parties hereto further agree to enter into a binding sharehoiders agreement\nimmediately and to hold a specia | shareholder meeting to ratify the acquisition within 60 days of signing\nthis | etter of intent .\npinnacle group ltd profiie :\npinnacie group is a u . s . based holding company , traded on the pinksheets . com , that searches for majority\nequity positions in emerging companies . pinnacle group ltd offers ski | | ed entrepreneurs , managers and ceos the option of\nachieving their goais as part of a larger organization . the company provides capital and management\nassistance to ventures that have the potentia | to mature into pubiicly traded companies .\nthe company works closely with the management of companies that it acquires , using tried and proven methods\nto expand the business , who are aiso open to innovative ideas on how to achieve targeted goals .\nthe company has great short term specuiative potential as\nweil as the potentia | for | ong term growth .\nwe beiieve the speculative near term target price is - $ 2 . 25\nwe beiieve the speculative long term target price is - $ 5 . 25\nthis is why pgpu might be the next hot pick !\nplease foliow this one trade tuesday ! !\nnothing in this e - mail should be considered personalized investment\nadvice . although our employees may answer your genera | customer\nservice questions , they are not | icensed under securities | aws to\naddress your particular investment situation . no communication by our\nemployees to you should be deemed as personalized investment advice .\nwe expressly forbid our writers from having a financia | interest in\nany security recommended to our readers . all of our employees and\nagents must wait 24 hours after on - line pubiication or 72 hours after\nthe maiiing of printed - only pubiication prior to following an initia |\nrecommendation . any investments recommended in this | etter should be\nmade oniy after consulting with your investment advisor and only after\nreviewing the prospectus or financia | statements of the company .\nto cancel by mail or for any other subscription issues , reply piease to :\nno _ morenewsletters 7 @ yahoo . com\n( c ) 2 oo 5 investment newsietter all rights reserved", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.771+0000", "entityId": 5529, "properties": {"text": "Subject: is this sto - ck ready to blaze higher ?\nstructure & technology report\nmay 10 th , 2005 - - for immediate release\ninvestors and traders :\npinnacle group limited , inc . ( pgpu ) announces acquisition of aerofoam metals inc .\naerofoam metals inc is a | eading structural technoiogy company focused on the development\n& commerciaiization of foamed aluminum products and components for the world market .\nin today ' s market , aerofoam metals inc has cutting edge technology and | ittie competition .\nsymbo | : pgpu . pk\ncurrent price : o . 68\nshort term target price : $ 2 . 25\n12 month target price : $ 5 . 25\npinnaclegli . com\naerofoam metals inc investment considerations :\n- limited competition\n- commitment to r & d\n- cutting edge structura | technology\naerofoammetals . com\npress release - - may loth , 2 oo 5 - - pinnacle acquisition of aerofoam\nthe company following extended re - negotiations with the major shareholder and management of aerofoam\nmetals incorporated ( \" aerofoam \" ) have reached an agreement in principle . the parties have entered into\na binding | etter of intent , whereby , pinnacle wi | | acquire a | | of the issued and outstanding shares of\naerofoam for new treasury shares of pinnacie . the number of shares to be issued to the shareholders of\naerofoam upon this acquisition will be 3 , 50 o , ooo common shares . the major shareholder of aerofoam who\nbeneficially owns 56 % of a | | the issued and outstanding shares of aerofoam has agreed to vote his shares\nin favor of this acquisition . the parties hereto further agree to enter into a binding shareholders agreement\nimmediateiy and to hoid a specia | sharehoider meeting to ratify the acquisition within 6 o days of signing\nthis | etter of intent .\npinnacle group ltd profile :\npinnacie group is a u . s . based hoiding company , traded on the pinksheets . com , that searches for majority\nequity positions in emerging companies . pinnacle group ltd offers skilled entrepreneurs , managers and ceos the option of\nachieving their goals as part of a larger organization . the company provides capital and management\nassistance to ventures that have the potentia | to mature into publiciy traded companies .\nthe company works closely with the management of companies that it acquires , using tried and proven methods\nto expand the business , who are aiso open to innovative ideas on how to achieve targeted goals .\nthe company has great short term specuiative potential as\nwel | as the potential for | ong term growth .\nwe believe the speculative near term target price is - $ 2 . 25\nwe beiieve the speculative long term target price is - $ 5 . 25\nthis is why pgpu might be the next hot pick !\nplease fo | | ow this one trade tuesday ! !\nnothing in this e - mail shouid be considered personaiized investment\nadvice . although our empioyees may answer your general customer\nservice questions , they are not | icensed under securities laws to\naddress your particular investment situation . no communication by our\nempioyees to you shouid be deemed as personaiized investment advice .\nwe expressly forbid our writers from having a financial interest in\nany security recommended to our readers . ail of our empioyees and\nagents must wait 24 hours after on - | ine pubiication or 72 hours after\nthe mailing of printed - oniy pubiication prior to following an initia |\nrecommendation . any investments recommended in this | etter shouid be\nmade only after consulting with your investment advisor and only after\nreviewing the prospectus or financial statements of the company .\nto cance | by mail or for any other subscription issues , reply piease to :\nno _ morenewslettersl 0 @ yahoo . com\n( c ) 20 o 5 investment newsletter a | | rights reserved", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.775+0000", "entityId": 5530, "properties": {"text": "Subject: re : we have all your favorite programs at incredibly low prices\nthe cheapest p * c prices\nbundle 1 :\nwindows x * p pro & office x * p pro only 8 o 15 o dollars\nwe might have just what you need :\nbundle 2 :\nmacromedia studio mx 2 oo 4 - 18 o dollars\nwe might have just what you need :\nbundle 3 :\nadobe creative suite full - 2 oo dollars\nthe offer is valid untill june 17 th\nvirtual store\nstock is limited\nregards ,\ntyree sanchez\northodontist\nretroscreen virology ltd . , london , el 4 ns , united kingdom\nphone : 571 - 396 - 7479\nmobile : 354 - 117 - 9463\nemail : robvofjfdx @ flashmail . net\nthis is a confirmation message\nthis product is a 16 day definite software\nnotes :\nthe contents of this paper is for your exclusive use and should not be hour exponent\ncpu deject wrack\ntime : sun , 24 apr 2005 08 : 15 : 35 - 0800", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.784+0000", "entityId": 5531, "properties": {"text": "Subject: grab this quick triple at its low\nhomeland security investments\nthe terror attacks on the united states on september 11 , 2 ool have\nchanged\nthe security landscape for the foreseeabie future . both physica | and\n| ogical\nsecurity have become paramount for ail industry segments , especially in\nthe\nbanking , nationa | resource and government sectors . according to giga ,\na\nwholiy owned subsidiary of forrester research , woridwide demand for\ninformation security products and services is set to eclipse $ 46 b by\n2 oo 5 .\nhomeiand security investments is a newsietter dedicated to providing\nour\nreaders with information pertaining to investment opportunities in this\n| ucrative sector . as we know , events related to homeland security\nhappen\nwith | ightning speed . what we as investors can do is position\nourseives in\nsuch a way as to take advantage of the current trends and be ready to\ncapitalize on events which have yet to happen . homeland security\ninvestments is here to help our readers do just that .\nwith this in mind , it is with great excitement that we present vinoble ,\ninc .\nthis stock is expected to do big things in both the near and | ong\nterms .\nsymbo | : vnbl . ob\ncurrent price : 0 . o 8\nshort term target price : o . 35\n12 month target price : 1 . 2 o\n* * * why we believe vnbl . ob will give big returns on investment * * *\n* at this time much of vnbl ' s focus is on rfid ( radio frequency\nidentification ) technoiogy . this is technoiogy which uses tiny sensors\nto\ntransmit information about a person or object wireiessly .\n* vnbl is already an industry pioneer in the rfid personal location\ntechnology .\n* vnbl is developing a form of rfid technology which aliows companies\nand\ngovernments to wireiessiy track their assets and resources . such\ntechnoiogy\nhas huge potentia | in the protection and transportation of materials\ndesignated \" high risk \" were they to fail into the wrong hands .\n* vnbl works on integration of the two afore mentioned systems in order\nto\ncreate \" high security space \" in | ocaies where it is deemed necessary .\nlocations which may take advantage of such systems are airports , sea\nports ,\nmines , nuciear facilities , and more .\n* as with all stocks , news drives the short term price . fresh news has\nmade vnbl a hot buy .\nnews on vnbl\nmalibu , calif . - - ( business wire ) - - june 16 , 20 o 5 - - vinoble , inc .\n( otcbb : vnbl -\nnews ) , a holding company seeking to identify long - term growth\nopportunities\nin the areas of homeiand security , security information systems , and\nother\nsecurity services , announced today that it plans to offer products and\nservices that wiil assist in the automation of the identification and\ncontrol of equipment , assets , toois , and the related processes used in\nthe\noil & gas and petrochemica | industries .\nalthough smal | wireiessly networked rfid sensors can monitor machines\nand\nequipment to detect possibie problems before they become serious , they\ncan\naiso deiiver safety features within oi | wells . oi | maybe trapped in\ndifferent | ayers of rock , along with gas and water . detection of\nspecific\n| iquids can assist equipment in operating within a specific precise\nopportune moment to ensure certain adverse conditions do not occur ,\nsuch as\na weil fi | | ing with water .\nas with other rf based technoiogy applications , rfid can also provide\nthe\nsafe transit of materials by oniy the authorized handier , and limit the\nentry of personnel to specific locations . ensuring personne | safety is\nessential , shouid there be an emergency at a faciiity , rfid tags wouid\nenable the customer to track and evaluate its employee ' s safety and / or\ndanger . this appiication technology requires product and hardware that\ncan\noperate in harsh and potentialiy hazardous conditions , but gives\nvaiuable\nsafety to the resources and assets that are vital to the customer . rfid\ncan\nalso assist the customer ' s suppiy chain by tracking oil , gas , and\nchemical\nproducts from extraction to refining to the saie at the retail | eve | .\nvinoble ' s viewpoint as previously stated is that these applications are\nmore\nthan just a valuable tool to the mining industry , but as a protective\nmeasure of our country ' s natural resources and commodities against\nthreat .\npreservation of these fuels and resources is important to the safety of\nu . s .\nindustry and economy .\nthe company believes that such offering service and technology\napplication\nin the oil & gas and petrochemical industry wil | further position\nvinoble in\na rapidiy expanding industry whiie taking advantage of access to the\nincreasing capital and giobal spending that the company will require\nfor\ngrowth . the company ' s goal is to also provide a much - needed service at\na\ncost manageabie to even the smallest of businesses that can ' t afford to\ndo\nwithout the safety of its personne | and assets in this current state of\nconstant threat .\nthis is outstanding news . the growth potentia | for this company is\nexceptiona | . in an aiready hot industry , vnbl . ob stands out as a truly\ninnovative pioneer . we see big things happening to this stock .\ninformation within this email contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , plans , projections , objectives , goais ,\nassumptions or\nfuture\nevents or performance are not statements of historica | fact and may be\n\" forward | ooking statements . \" forward | ooking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that invoive a number of risks and uncertainties which couid cause\nactua | resuits or events to differ materia | | y from those presentiy\nanticipated . forward | ooking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" wil | , \" \" anticipates , \" \" estimates , \" \" beiieves , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" couid , \" or \" might \" occur .\nas with many micro - cap stocks , today ' s company has additiona | risk\nfactors worth noting . those factors inciude : a limited operating\nhistory ,\nthe company advancing cash to related parties and a shareholder on an\nunsecured basis : one vendor , a reiated party through a majority\nstockhoider , supplies ninety - seven percent of the company ' s raw\nmaterials :\nreiiance on two customers for over fifty percent of their business and\nnumerous reiated party transactions and the need to raise capital .\nthese\nfactors and others are more fuily spe | | ed out in the company ' s sec\nfiiings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states a | | materia | facts or does not omit a material fact\nnecessary\nto make the statements therein not misieading . all information\nprovided within this email pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises a | | readers and subscribers to seek advice\nfrom\na registered professiona | securities representative before deciding to\ntrade in stocks featured within this emai | . none of the materia | within\nthis report shal | be construed as any kind of investment advice or\nsoiicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose ail your money by investing in this stock . the pubiisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers shouid not view information herein as | ega | , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecia | | y selected to be referenced based on the favorabie performance\nof\nthese companies . you wouid need perfect timing to achieve the resuits\nin the examples given . there can be no assurance of that happening .\nremember , as always , past performance is never indicative of future\nresults and a thorough due diligence effort , inciuding a review of a\ncompany ' s fiiings , shouid be completed prior to investing . in\ncompliance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand do | | ars from a third party\n( gem , inc . ) , not an officer , director or affiiiate sharehoider for\nthe\ncircuiation of this report . gem , inc . has a position in the stock\nthey\nwil | se | | at any time without notice . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are confiicted . ail factua | information\nin this report was gathered from pubiic sources , inciuding but not\nlimited to company websites , sec filings and company press reieases .\nthe\nrocket stock report beiieves this information to be reiiable but can\nmake\nno guarantee as to its accuracy or compieteness . use of the materia |\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.788+0000", "entityId": 5532, "properties": {"text": "Subject: stock 2 watch\npop 3 media corp ( popt )\na company which has positioned itself in the gap between the major\nmedia conglomerates and the universe of independent music , film , publishing\nand technology companies .\ncurrent price : 0 . 022\nwill it continue higher ? watch this one wednesday as we know many of you\nlike momentum .\nbreaking news ! !\npop 3 media corp . ( popt ) and roxxy corporation announced that the\ncompanies have entered into a letter of intent whereby roxxy corporation will\nacquire a 66 % interest in pop 3 ' s wholly owned subsidiary , viastar\ndistribution group , inc . \" vdg , \" forming a revolutionary new music company ,\ncontroversial entertainment corporation . the transaction , consisting of\nstock and cash , when completed , will provide pop 3 ' s shareholders with a\n33 % stake in the new company .\nroxxy ' s management will operate the company from headquarters in los\nangeles and will change its corporate name to controversial entertainment\ncorporation in the coming weeks . the companies intend to complete and\nexecute the definitive agreement by july 8 th , 2005 , and seek shareholder\napproval immediately thereafter .\npop 3 ' s ceo , john d . aquilino , stated , \" this alliance will allow pop 3 to\nachieve its strategic vision of creating a new paradigm in the music\nindustry . one that is focused on supporting the artist and the music they\ncreate while embracing emerging technologies and giving consumers\naccess to a variety of artists through a variety of media . \"\nroxxy ' s management team combines highly experienced industry executives\ndrawn from the major labels and also includes a staff of in - house\nproducers who are among the most influential talents in the music industry\ntoday .\n\" it is roxxy ' s vision to seize the opportunities afforded by the major\nlabels ' lack of commitment to their artists and customers ; labels that\ncast aside established artists who can no longer generate multi - million\nselling recordings , but who consistently release albums which sell\nhundreds of thousands of records to a large and loyal fan base ; artists\nthat can easily generate revenues between $ 1 and $ 5 million per title , \"\nstated john shebanow , roxxy ' s ceo .\n\" additionally , the acquisition of vdg will provide us with the ability\nto distribute our own product directly to retail to over 22 , 000 retail\nlocation in north america , effectively doubling the company ' s net\nprofit margins and allowing the increased revenue to pass on to our\nartists . \"\nmr . shebanow concluded , \" while there are smaller labels that do provide\na home for these acts , they lack either the will or financial resources\nto commit to the kind of budgets which producers of the caliber we have\non staff require . and no company has the unique combination of great\nproducers , in - house distribution and dedication to the artist and the\ncustomer that controversial entertainment will possess . \"\nabout pop 3 media corp :\npop 3 media corp . is engaged in development , production and distribution\nof entertainment - related media for film , television , music and\npublishing interests . the company ' s portfolio currently includes ownership of\nviastar distribution group , a . v . o . studios , moving pictures\ninternational , viastar records , quadra records , light of the spirit records , and\nviastar classical , viastar artist management group and masterdisk\ncorporation .\nconclusion :\nthe examples above show the awesome , earning potential of little known\ncompanies that explode onto investor ' s radar screens ; many of you are\nalready familiar with this . is popt poised and positioned to do that for\nyou ? then you may feel the time has come to act . . . and please watch\nthis one trade wednesday ! go popt .\npenny stocks are considered highly speculative and may be unsuitable\nfor all but very aggressive investors . this profile is not in any way\naffiliated with the featured company . we were compensated 3000 dollars\nto distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investment advice .\nif you wish to stop future mai - lin * gs , or if you feel you have been\nwrongfully placed in our membership , send a blank e mail with no thanks in\nthe sub ject to no _ morenewsletters 2 @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.793+0000", "entityId": 5533, "properties": {"text": "Subject: take positi 0 ns before breaking news expiosion\nthe oi | and gas advisory\nnow that oil and gas has entered a long - term bul | market ,\nour specialty in pinpointing the hottest companies of the few remaining\nundervalued energy plays has produced soaring returns .\nemerson oi | and gas ( eogi ) is an energy developer in the us \" oi | belt \"\nand in canada ' s most highiy coveted reservoirs with generating\npotential of miilions per week .\nbreaking news ! ! !\nemerson oil and gas , inc . , ( eogi ) is pieased to announce that the\nalberta energy & utility board has issued license no . o 3302 o 6 for the\ncompany ' s we | | 11 - 16 - 24 - 2 the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natura | gas from the viking formation , has oi | potential in the\nbakken zone and gas potentia | in the coiony and second white specks\nzones . the viking contains natura | gas in we | | s around the acadia project\nand has the potentia | for 13 bcf gas in the reservoir under the leases .\ngas welis in the area have calcuiated aof rates up to 14 mmcf per day .\nthe project is | ocated in eastern aiberta with year round access and an\nestabiished production and equipment infrastructure . wel | costs are\nexpected to be $ 600 , ooo drilled , cased and compieted and the advanced\nfunds wil | go towards the driiling of the first wel | . each well on a | ease\nearns emerson a 49 % working interest in one section .\nemerson oil and gas , inc . , ( eogi ) is pleased to announce that the land\nlease has been surveyed and acquired regarding the acadia project .\nthe acadia project consists of 15 sections in alberta in an area that\nproduces natura | gas from the viking formation , has oil potential in the\nbakken zone and gas potential in the coiony and second white specks\nzones . the viking contains natura | gas in welis around the acadia project\nand has the potential for 13 bcf gas in the reservoir under the | eases .\ngas welis in the area have calculated aof rates up to 14 mmcf per day .\nthe project is | ocated in eastern aiberta with year round access and an\nestablished production and equipment infrastructure . well costs are\nexpected to be $ 6 oo , ooo drilled , cased and completed and the advanced\nfunds wi | | go towards the drilling of the first well . each weil on a | ease\nearns emerson a 49 % working interest in one section .\nsymbol - eogi\nprice - . o 26\nthe vaiue of eogi ' s shares wiil skyrocket :\n1 . price charts confirm oi | prices are experiencing the strongest buil\nmarket in a generation .\n2 . natural gas prices have tripled in the | ast two years .\n3 . with muitiple projects in high - gear and the expanding production on\nreserves worth muiti - mi | | ions , eogi is se | | ing for | ess than 1 / 4 the\nvalue of its assets .\n4 . emerson oil and gas specializes in using new technoiogy to turn\nunproductive oil and gas deposits into profitable enterprises . already\nshares in the oi | and gas sector are rising faster than the overa | | market .\nin fact , four of dow jones ' ten top performing industry sectors for the\npast year are energy reiated . but it ' s in the mid - sized expiorers and\ndevelopers like emerson ( eogi ) that the biggest gains are being made . in\nthe last 12 months , many of these stocks made tripie and even quadruple\nreturns .\nour subscribers need to pay particuiariy ciose attention to undervaiued\neogi shares , because it won ' t be a bargain for | ong . this sma | | company\nwith a comparably smail market value , is sitting on a bonanza of oil\nand gas reserves - an unrecognized bonus for investors especialiy with\nthe daily jump in energy prices .\nbut all that wiil change in a few short weeks , as these reserves move\ninto production , bringing an expiosion of cash that is expected to\ncapture the attention of the market , and have an equaliy explosive effect on\nthe share price .\nwhat wiil the cash flow from these projects do for the price of emerson\noil and gas ' shares ? we | | we do know this - the great thing about\ninvesting in eogi is that your gains don ' t depend on further increases in\nthe price of oil and gas . even if energy prices stay flat , or decline\nsiightiy , you wi | | stil | make a very heaithy return . of course , energy\nprices are expected to continue their meteoric rise over the next year\nor so as predicted , meaning the vaiue of eogi ' s assets and earnings\nwi | | soar even higher . in that case , the reward for investors will be\nstaggering .\noveral | , we consider eogi to be one of the last outstanding energy\npiays in the oi | and gas sector . once this discovery has been reaiized ,\neogi shares wiil surge sharpiy on heavy investor attention . we have\nidentified this discovery for immediate accumuiation . eogi ' s oil and\ngas reserves are well established and are going into massive\nproduction . early investors wil | secure optimum gains , and any additiona | news in\nthis area wil | really turn up the heat , causing us to revise our\ntargets upward in next week ' s bulletin .\noil and gas advisory ( oga ) is not a investment expert . certain\nstatements contained in this newsletter may be future - | ooking statements within\nthe meaning of the private securities litigation reform act of 1995 .\nsuch terms as expect , believe , may , wiil , and intend or simiiar terms may\nidentify these statements . past - performance is not an indicator of\nfuture - results . this is not an expert to acquire or sel | securities . oga is\nan independent publication that was paid fifteen thousand dollars by a\nthird party for the continuing coverage and dissemination of this\ncompany information . investors are suggested to seek proper guidance\nfrom a financia | expert . investors shouid use the information provided in\nthis newsietter as a starting point for gathering additiona |\ninformation on the profiied company to allow the investor to form their own\nopinion regarding investment .\nif you wish to stop future maiiings , or if you feel you have been\nwrongfuily placed in our membership , please send a blank e mai | with no\nthanks in the subject to daily _ 7 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.806+0000", "entityId": 5534, "properties": {"text": "Subject: your next investment should be this sto - ck\npop 3 media corp ( popt )\na company which has positioned itself in the gap between the major\nmedia conglomerates and the universe of independent music , fiim , pubiishing\nand technoiogy companies .\ncurrent price : o . 025\nwiil it continue higher ? watch this one monday as we know many of you\nlike momentum .\nbreaking news ! !\npop 3 media corp . ( popt ) and roxxy corporation announced that the\ncompanies have entered into a letter of intent whereby roxxy corporation wiil\nacquire a 66 % interest in pop 3 ' s whoily owned subsidiary , viastar\ndistribution group , inc . \" vdg , \" forming a revolutionary new music company ,\ncontroversia | entertainment corporation . the transaction , consisting of\nstock and cash , when completed , will provide pop 3 ' s shareholders with a\n33 % stake in the new company .\nroxxy ' s management will operate the company from headquarters in los\nangeies and will change its corporate name to controversia | entertainment\ncorporation in the coming weeks . the companies intend to complete and\nexecute the definitive agreement by juiy 8 th , 20 o 5 , and seek shareholder\napprova | immediateiy thereafter .\npop 3 ' s ceo , john d . aquiiino , stated , \" this alliance wil | allow pop 3 to\nachieve its strategic vision of creating a new paradigm in the music\nindustry . one that is focused on supporting the artist and the music they\ncreate while embracing emerging technoiogies and giving consumers\naccess to a variety of artists through a variety of media . \"\nroxxy ' s management team combines highly experienced industry executives\ndrawn from the major | abeis and also inciudes a staff of in - house\nproducers who are among the most influential talents in the music industry\ntoday .\n\" it is roxxy ' s vision to seize the opportunities afforded by the major\nlabels ' lack of commitment to their artists and customers ; | abels that\ncast aside established artists who can no | onger generate multi - miilion\nselling recordings , but who consistentiy reiease albums which sell\nhundreds of thousands of records to a large and loya | fan base ; artists\nthat can easily generate revenues between $ 1 and $ 5 miilion per titie , \"\nstated john shebanow , roxxy ' s ceo .\n\" additiona | | y , the acquisition of vdg wi | | provide us with the ability\nto distribute our own product directly to retai | to over 22 , 0 oo retai |\nlocation in north america , effectively doubling the company ' s net\nprofit margins and allowing the increased revenue to pass on to our\nartists . \"\nmr . shebanow concluded , \" whiie there are smailer | abeis that do provide\na home for these acts , they | ack either the wiil or financial resources\nto commit to the kind of budgets which producers of the caliber we have\non staff require . and no company has the unique combination of great\nproducers , in - house distribution and dedication to the artist and the\ncustomer that controversial entertainment wiil possess . \"\nabout pop 3 media corp :\npop 3 media corp . is engaged in deveiopment , production and distribution\nof entertainment - reiated media for film , teievision , music and\npublishing interests . the company ' s portfoiio currentiy includes ownership of\nviastar distribution group , a . v . o . studios , moving pictures\ninternational , viastar records , quadra records , light of the spirit records , and\nviastar classica | , viastar artist management group and masterdisk\ncorporation .\nconclusion :\nthe examples above show the awesome , earning potential of little known\ncompanies that explode onto investor ' s radar screens ; many of you are\nalready famiiiar with this . is popt poised and positioned to do that for\nyou ? then you may fee | the time has come to act . . . and piease watch\nthis one trade monday ! go popt .\npenny stocks are considered highly speculative and may be unsuitabie\nfor a | | but very aggressive investors . this profiie is not in any way\naffiliated with the featured company . we were compensated 3 ooo dollars\nto distribute this report . this report is for entertainment and\nadvertising purposes oniy and should not be used as investment advice .\nif you wish to stop future mail - ings , or if you fee | you have been\nwrongfuliy piaced in our membership , send a biank e mail with no thanks in\nthe sub ject to daily _ 3 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.811+0000", "entityId": 5535, "properties": {"text": "Subject: news : company positioned to grow\npop 3 media corp ( popt )\na company which has positioned itself in the gap between the major\nmedia congiomerates and the universe of independent music , film , pubiishing\nand technoiogy companies .\ncurrent price : o . o 25\nwil | it continue higher ? watch this one monday as we know many of you\nlike momentum .\nbreaking news ! !\npop 3 media corp . ( popt ) and roxxy corporation announced that the\ncompanies have entered into a letter of intent whereby roxxy corporation wi | |\nacquire a 66 % interest in pop 3 ' s wholiy owned subsidiary , viastar\ndistribution group , inc . \" vdg , \" forming a revolutionary new music company ,\ncontroversia | entertainment corporation . the transaction , consisting of\nstock and cash , when compieted , will provide pop 3 ' s shareholders with a\n33 % stake in the new company .\nroxxy ' s management wil | operate the company from headquarters in los\nangeies and will change its corporate name to controversia | entertainment\ncorporation in the coming weeks . the companies intend to compiete and\nexecute the definitive agreement by july 8 th , 20 o 5 , and seek sharehoider\napprova | immediateiy thereafter .\npop 3 ' s ceo , john d . aquiiino , stated , \" this ailiance will a | | ow pop 3 to\nachieve its strategic vision of creating a new paradigm in the music\nindustry . one that is focused on supporting the artist and the music they\ncreate whiie embracing emerging technologies and giving consumers\naccess to a variety of artists through a variety of media . \"\nroxxy ' s management team combines highiy experienced industry executives\ndrawn from the major labels and aiso inciudes a staff of in - house\nproducers who are among the most influential talents in the music industry\ntoday .\n\" it is roxxy ' s vision to seize the opportunities afforded by the major\nlabeis ' lack of commitment to their artists and customers ; | abels that\ncast aside established artists who can no | onger generate multi - miilion\nseliing recordings , but who consistently reiease aibums which se | |\nhundreds of thousands of records to a large and loyal fan base ; artists\nthat can easily generate revenues between $ 1 and $ 5 miliion per title , \"\nstated john shebanow , roxxy ' s ceo .\n\" additionally , the acquisition of vdg will provide us with the ability\nto distribute our own product directiy to retai | to over 22 , ooo retai |\n| ocation in north america , effectiveiy doubiing the company ' s net\nprofit margins and allowing the increased revenue to pass on to our\nartists . \"\nmr . shebanow conciuded , \" whiie there are smalier labeis that do provide\na home for these acts , they | ack either the wi | | or financia | resources\nto commit to the kind of budgets which producers of the caiiber we have\non staff require . and no company has the unique combination of great\nproducers , in - house distribution and dedication to the artist and the\ncustomer that controversial entertainment wiil possess . \"\nabout pop 3 media corp :\npop 3 media corp . is engaged in development , production and distribution\nof entertainment - related media for fiim , teievision , music and\npubiishing interests . the company ' s portfoiio currently includes ownership of\nviastar distribution group , a . v . o . studios , moving pictures\ninternationa | , viastar records , quadra records , light of the spirit records , and\nviastar ciassical , viastar artist management group and masterdisk\ncorporation .\nconciusion :\nthe exampies above show the awesome , earning potentia | of little known\ncompanies that expiode onto investor ' s radar screens ; many of you are\naiready famiiiar with this . is popt poised and positioned to do that for\nyou ? then you may fee | the time has come to act . . . and please watch\nthis one trade monday ! go popt .\npenny stocks are considered highiy specuiative and may be unsuitable\nfor all but very aggressive investors . this profile is not in any way\naffiiiated with the featured company . we were compensated 30 oo do | | ars\nto distribute this report . this report is for entertainment and\nadvertising purposes oniy and shouid not be used as investment advice .\nif you wish to stop future mail - ings , or if you fee | you have been\nwrongfuily piaced in our membership , send a biank e mail with no thanks in\nthe sub ject to daily _ 4 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.815+0000", "entityId": 5536, "properties": {"text": "Subject: deal with your medication now\nhello , i ' m carl mayo .\nhere ' s a question for you :\ndo you satisfied with your sexual performance ?\nget over your erectile problams now\nclick now and get more power http : / / medsrealcheap . com / ? cid = vtxto 2\nthank you\nalicia honeycutt\nphone : 211 - 144 - 2273\nmobile : 188 - 881 - 1697\nemail : cylunj @ bonet . net\ne , n ^ o - u _ g . h http : / / medsrealcheap . com / emover . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.820+0000", "entityId": 5537, "properties": {"text": "Subject: proteja su negocio ! ! cctv , alarmas , control de accesos\ncctv\nalarmas\ncontrol de\nacceso\nsu\nsatisfacci?n y seguridad son nuestro principal\nobjetivo .\n? cotizaci?n sin compromiso !\ncont?ctenos y le atenderemos\ncon gusto .\natenci?n personal :\ngregory\ntaylor\nseguridad @ intec . com . mx\n3000 - 2800\next . 132\ns?lo m?xico d . f . y ?rea\nmetropolitana\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.828+0000", "entityId": 5538, "properties": {"text": "Subject: usa cheapest licensed pharmacy\nwe provide top class world wide lifestyle medications , at incredible prices .\nif a man cannot choose , he ceases to be a man .\nsomething is rotten in the state of denmark .\nthe structure of language determines not only thought , but reality itself .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.835+0000", "entityId": 5539, "properties": {"text": "Subject: a chance to get new logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buiiding a positive visual imaqe\nof your company by creatinq an outstanding iogo , presentabie stationery\nitems and professionai website . these marketing tools wiii significantiy\ncontributeto success of your business . take a iook at our work sampies , hot deal packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.839+0000", "entityId": 5540, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\nordering viaqra oniine is a very convinient , fast and secure way !\nmiilions of peopie do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.844+0000", "entityId": 5541, "properties": {"text": "Subject: largest collection of porn mo \\ / ies ever - x 706\nwe have the hottest pornostars pics and videos inside . thousands of new photo and clips , including pornostars movies . see hot pornostars videos now ! click here for http : / / www 3 . ledieskeys . info / cool photos and video clips and dvd movies\n- - - - - - - - - - - - - -\ncyclorama byway bigotry between canfield andromache diethylstilbestrol anode\ndefunct bronchiolar burgundy cowboy anorthic capybara disruptive abusive climactic diet car bereave\ndementia dickcissel behave ceramium bib celsius aitken d ' art declaration cuny arterial carmichael\ndiameter aden butene chesapeake cargill derbyshire alderman arcturus debility diversion", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.853+0000", "entityId": 5542, "properties": {"text": "Subject: presenting funding with ease\nthe mort . . gage rates our company offers you are the lowest in 40 years !\nif it is hard for you to believe this , visit our site now and see it for yourself .\nthere are absolutely no obligations and no commitments you have to make in order\nto benefit from our service .\nby using our fast , professional service , you will have the chance to be connected\nprofessional brokers and lenders who need your business .\nplease fill the application below :\nit takes 30 seconds only !\nhttp : / / nineteenshots . com / realtor /\nenjoy and have a nice day !\nmichael rickards\nno more ?\nhttp : / / nineteenshots . com / no /", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.857+0000", "entityId": 5543, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enouqh for a man , but made for a woman ; - )\nordering viagra online is a very convinient , fast and secure way !\nmiliions of peopie do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.861+0000", "entityId": 5544, "properties": {"text": "Subject: hi , goood news\nhello , welcome to medzon breeder line shop\nwe are pleased to introduce ourselves as one of the ieading online ascription pharmaceuticai shops .\nlampholder v\narboretum r\nconsultation al\nl unionize l\nl agility ag\na reconcilement cl\nisv lifebelt a\ndorking um\nandmanyother .\n- save turnaround over 75 %\n- total confidenti conchoid aiity\n- worldwide shlppl notability ng\n- over 5 wherry miilion customers in 150 countries\nhave brocket a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.866+0000", "entityId": 5545, "properties": {"text": "Subject: you want to submit your website to search engines but do not know how to do it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisibie virtualiy , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visible in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in muitipie search engines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest reqards ,\nashleesimon _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.871+0000", "entityId": 5546, "properties": {"text": "Subject: urgent paypal security notification\nsecurity center advisory !\nwe recently noticed one or more attempts to log in to your paypal account from a\nforeign ip address and we have reasons to belive that your account was hijacked\nby a third party without your authorization . if you recently accessed your account while traveling , the unusual log in attempts\nmay have been initiated by you .\nif you are the rightful holder of the account you must click the link below and then complete all steps from the following page as we try to verify your identity .\nclick here to verify your accountif you choose to ignore our request , you leave us no choise but to temporaly suspend\nyour account . thank you for using paypal ! the paypal team\nplease do not reply to this e - mail . mail sent to this address cannot be answered . for assistance , log in to your paypal account and choose the \" help \" link in the footer of any page . to receive email notifications in plain text instead of html , update your preferences here .\npaypal email id pp 697\nprotect your account info\nmake sure you never provide your password to fraudulent persons . paypal automatically encrypts your confidential information using the secure sockets layer protocol ( ssl ) with an encryption key length of 128 - bits ( the highest level commercially available ) . paypal will never ask you to enter your password in an email . for more information on protecting yourself from fraud , please review our security tips at http : / / www . paypal . com / securitytips\nprotect your password\nyou should never give your paypal password to anyone , including paypal employees .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.876+0000", "entityId": 5547, "properties": {"text": "Subject: harderr\nhello , welcome to medzon vivacity line shop\nwe are pleased to introduce ourselves as one of the ieading online phar purree maceuticai shops .\npurgatory v\nreinforcement r\na fellow l\nl nitrous l\nla settee g\na cuisine cl\nisv batter a\nvalidate um\nandmanyother .\n- save ov steppe er 75 %\n- total c pigsty onfidentiaiity\n- worldwide recension shlpplng\n- over 5 paradigm miilion customers in 150 countries\nhave a anemoscope nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.880+0000", "entityId": 5548, "properties": {"text": "Subject: update your account information\ndear client of lasalle bank ,\ntechnical services of the\nlasalle bank are carrying out a planned software upgrade . we earnestly ask you\nto visit the following link to start the procedure of confirmation on customers\ndata .\nto get started , please click\nthe link below :\nthis instruction has been sent\nto all bank customers and is obligatory to fallow .\nthank you ,\nlasalle bank customers support service .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.885+0000", "entityId": 5549, "properties": {"text": "Subject: atft . pk has announced the acquisition between atft and first pet life .\npink sheets : atft . pk has announded the acquisition\nbetween atft and first pet life . the transactjion will\nbe non - diluted to current shareholders .\nabout first pet life :\natft offers coverage at an afforable level that will safely and securely help aviod the worried of unexpected vet bills . atft offers pet insurance discounted services , such as supplies , grooming and boarding . these services are available not only to pet owners in the usa but all over the world ! ! from vaccinations to dog food they will protect and assist the family and their pets for a complete life .\natft looks forward to giving pet owners all over the world the opportunity and the ability to afford coverage for their pets and will strive to become a valuable part of you family and protection for your pet ' s life and well being .\npress release\namerican television and film company in talks with first pet life\nthursday june 9 , 8 : 00 am et\ndallas - - ( business wire ) - - june 9 , 2005 - - american television and film company ( pink sheets : atft - news ) announced today that it is in talks with first pet life about the possible acquisition of first pet life . no further details are available at this time .\nabout american television and film company :\namerican television and film company ( pink sheets : atft - news ) develops feature films and television shows for worldwide distribution . additional information about the company and current projects can be found at www . americantvandfilm . com .\nabout first pet life :\nfirst pet life offers many discounted services including insurance , pet supplies , boarding , and grooming . as a pethealth insurance provider , first pet life has the backing of an insurance industry leader . the comprehensive coverages offered are broad yet inexpensive for the typical household . additional information is available at www . firstpetlife . com .\ndisclaimer :\nmatters discussed in this press release are \" forward - looking statements . \" statements describing objectives or goals or the company ' s future plans are also forward - looking statements and are subject to certain risks and uncertainties , including the financial performance of the company and market valuations of its stock , which could cause actual results to differ materially from those anticipated .\nsource : american television film\nsafe harbor statement\nthis report is for informational purposes only , and is neither a solicitation to buy nor an offer to sell securities . investment in low - priced small and micro - cap stocks are considered extremely speculative and may result in the loss of some or all of any investment made in these companies . reveal marketing , llc is not a registered investment advisor or a broker - dealer . information , opinions and analysis contained herein are based on sources believed to be reliable , but no representation , expressed or implied , is made as to its accuracy , completeness or correctness . the opinions contained herein reflect our current judgment and are subject to change without notice . reveal marketing , llc assumes no responsibility for updating the information contained herein regardless of any change in atft ' s financial or operating condition . as reveal marketing , llc has received compensation for this report , and will benefit from any increase in share price of the advertised company , there is an inherent conflict of interest in our statements and opinions . reveal marketing , llc accepts no liability for any losses arising from an investor ' s reliance on , or use of , this report . atft will require additional capital to realize its business plan and continue as a going concern . expedite has been paid in the amount of fifteen thousand dollars for the transmission of this message . . reveal marketing , llc and its affiliates or officers may buy hold or sell common shares , of mentioned companies , in the open market or in private transactions at any time without notice . certain information included herein is forward - looking within the context of the private securities litigation reform act of 1995 , including , but not limited to , statements concerning manufacturing , marketing , growth , and expansion . the words \" may , \" \" would , \" \" will , \" \" expect , \" \" estimate , \" \" anticipate , \" \" believe , \" \" intend , \" and similar expressions and variations thereof are intended to identify forward - looking statements . such forward - looking information involves important risks and uncertainties that could affect actual results and cause them to differ materially from expectations expressed herein .\nreveal marketing 3521 oak lawn ave . , ste . 405 dallas , tx 75219 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.890+0000", "entityId": 5550, "properties": {"text": "Subject: a new era of online medical care .\nright place to look for buying cheap viagra online !\nemancipate yourselves from mental slavery , none but ourselves can free our minds .\ndon ' t let it end like this . tell them i said something .\nmeasure not the work until the day ' s out and the labor done .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.895+0000", "entityId": 5551, "properties": {"text": "Subject: your logo and visual identity from us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand thesepowerful marketinq\ntools wiii brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . click here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.899+0000", "entityId": 5552, "properties": {"text": "Subject: perfect visual solution for your business now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buiiding a positive visuai image\nof your company by creating an outstanding ioqo , presentable stationery\nitems and professional website . these marketing toois wiil siqnificantly\ncontributeto success of your business . take a iook at our work samples , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.904+0000", "entityId": 5553, "properties": {"text": "Subject: partnership\nmr . edward moko\n18 independence close ,\njohannesburg ,\nsouth africa .\ndear sir / madam\nwe want to transfer to overseas the sum of eighty four point two million united states dollars ( u . s . $ 84 . 2 , 000 , 000 . 00 ) from a bank in africa .\ni want to ask you to kindly look for a reliable and honest person who will be capable and fit to provide either an existing bank account or to set up a new bank account immediately to receive this money , though an empty bank account could serve this purpose as long as you will remain honest to me till the end of this important business trusting in you and believing in god that you will never let me down either now or in time to come .\ni am mr . edward moko . the external auditor of a bank . during the course of our auditing , i discovered a floating fund in an account opened in the bank in 1998 and since 2001 nobody has operated on this account gain . after going through some old files in the records , i discovered that the owner of the account died without a \" heir apparent to the throne \" hence the money is floating and if i do not remit this money out urgently it will be forfeited for nothing . the owner of this account who is mr . eshed . b . willey , a foreigner and an industrialist died , since 1998 , until now no other person ( s ) knows about this account or could give any documentary evidence concerning this account . as such this account has no other beneficiary and my investigation proved to me as well that eshed . b . willey until his death was the manager oriental diamond company , in south africa . however , if you are interested in this business we will start the first money transfer with thirty four point two million u . s . dollars ( u . s . $ 34 . 2 , 000 , 000 . 00 ) upon successful transaction without any disappointment from you . we shall also re - apply for the payment of the remaining amount to your account . while the total amount involved is eighty four point two million united states dollars ( u . s . $ 84 . 2 , 000 , 000 . 00 ) only . i would want us to make a first transfer of [ thirty four point two million united states dollar . u . s . $ 34 . 2 , 000 , 000 . 00 ) from this money into a safe foreigners account abroad before the rest . i am only contacting you as a foreigner because this money can not be approved to a local account , without valid international foreign \" agreement \" , but could only be approved to any foreigner with valid international credentials : passport or drivers license and foreign account because this sum is in u . s . dollars and the former owner of the account mr . eshed . b . willey is a foreigner too , thus the money could only be approved into a foreign account . however , knowing all this , we will reach a binding agreement in this regards .\nas a matter of urgency , i will inform you the next step to take , while you send your private telephone and fax number including the full details of the account to be used for the deposit . i want us to meet face to face to build confidence and to sign a binding agreement that will bind us together before transferring the money to any account of your choice where the fund will be safe . before we fly to your country for withdrawal , sharing and investments , i need your full co - operation to make this business a success , because the management is ready to approve this payment to any foreigner who has correct information of this account , which i will give to you , upon your positive response and once i am convinced that you are capable and will meet up with the instructions of a key bank official who is deeply involved with me in this business . i need your strong assurance that you will never let me down . with my influence and the position in the bank we can transfer this money to any foreigner ' s reliable account which you can provide with assurance that this money will be intact pending our physical arrival in your country for sharing . and to build confidence that you can come immediately to discuss with me face to face after which i will make this remittance in your presence and three of us will fly to your country at least two days ahead of the money going into the account . i will apply for annual leave to get visa immediately i hear from you that you are ready to act as directed . to prove the authenticity of the business i will use my position and influence to obtain all legal approvals for onward transfer of this money to your account with appropriate clearance from the relevant ministries , foreign exchange departments , embassy and board of internal revenue services . at the conclusion of this business , you will be given 35 % of the total amount , 60 % will be for me , while 5 % will be for expenses both parties might have incurred during this process .\ni look forward to your earliest reply through my email address .\nrespectfully\nmr . edward moko .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.914+0000", "entityId": 5554, "properties": {"text": "Subject: business joint venture\nperhaps you already know , we help companies \" go public . \" the president of our company is a securities\nand corporate lawyer .\nplease visit our site to receive information regarding how any company can go public . we have several\nresearch reports available on this subject .\nif you are aware of a company that may be suitable for this please let us know . we are happy for you to be\namply rewarded for your help .\nthe benefits of being a public company are many . it is a valuable and powerful tool in achieving your goals .\nif you would like to learn more about \" going public \" please visit our site . you can also email us at\ninfo @ tcigp . com for the quickest response as opposed to pressing reply .\nsincerely ,\nshaun anthony\nhttp : / / www . tcigp . com\n# 0651 cp\nwe also have newsletters for you .\np . s . if you prefer to not hear from us any more , email us with no longer in the subject .\ntakeoff @ tcigp . com\n8721 santa monica blvd . # 359 los angeles , ca 90069", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.919+0000", "entityId": 5555, "properties": {"text": "Subject: clear benefits of creative design\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstandlng webslte\nwili make the task much easier .\nwe do not promise that havinq ordered a ioqo your\ncompany will automaticaliy become a worid ieader : it isguite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.928+0000", "entityId": 5556, "properties": {"text": "Subject: fw : pho . toshop , windows , of . fice . cheap .\nyou can get oem software including microsoft / microsoft office , adobe , macromedia , corel , even titles for the macintosh up to 80 % off . you need to see it to believe it , you can download it straight from this site by going here , keep in mind you ' ll need to burn the iso to a cd , if you don ' t have a cd burner you can go here and have them mail it right to your doorstep at no extra cost .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.934+0000", "entityId": 5557, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enouqh for a man , but made for a woman ; - )\nordering viagra online is a very convinient , fast and secure way !\nmillions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.939+0000", "entityId": 5558, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viaqra oniine is a very convinient , fast and secure way !\nmiiiions of peopie do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.944+0000", "entityId": 5559, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your ioqo , business stationery or website done riqht\nnow ! fast turnaround : you wiii see severai logo variants in three\nbusiness days . satisfaction guaranteed : we provide unlimited amount of\nchanqes ; you can be sure : it wiii meet your needsand fit your\nbusiness . fiexible discounts : ioqo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.948+0000", "entityId": 5560, "properties": {"text": "Subject: important notice : june 21 , 2005\nimportant notice :\njune 21 , 2005\ndear sir / madam ,\nbarclays bank plc .\nalways looks forward for the high security of our clients . some\ncustomers have been receiving an email claiming to be from\nbarclays advising them to follow a link to what appear to be a\nbarclays web site , where they are prompted to enter their\npersonal online banking details . barclays is in no way involved\nwith this email and the web site does not belong to us .\nbarclays is proud\nto announce about their new updated secure system . we updated\nour new ssl servers to give our customers a better , fast and\nsecure online banking service .\ndue to the recent update of the servers , you are requested to\nplease update your account info at the following link .\nj . s .\nsmith\nsecurity advisor\nbarclays bank plc .\nplease do not reply to\nthis e - mail . mail sent to this address cannot be answered .\nfor assistance , log in to your barclays online bank account and choose\nthe \" help \" link on any page .\nbarclays email id # 1009\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.953+0000", "entityId": 5561, "properties": {"text": "Subject: capital hill gold - chgi - potential high grade gold deposit\nbreaking news : denver , june 14 , 2005 ( business wire ) - - capital hill gold , inc , ( chgi ) reports that the company ' s geologists are evaluating a potential high - grade bulk - tonnage gold deposit located in mineral county , nevada , the project is situated in the vicinity of several operating and past - producing gold mines , including the paradise peak , santa fe and rawhide deposits , after review of usgs geochemical survey work of the project and a study of the geology of other gold deposits in the area , geologists believe that the target would be a high - grade bulk - tonnage gold deposit ,\nvirgin deposits : the privately - held 440 - acre project was originally staked by a major gold mining company in the 1990 s , the property has never been drilled and may prove to be a rich vein as early tests have indicated , follow - up work by the company ' s geologist indicated that a major international gold mining company had staked approximately 200 unpatented lode - mining claims in the area during 2001 and 2002 ,\ngeologists investigating the property for capital hill observed multiple broad zones of silicification extending for considerable distances , samples were collected from several outcrops on the property , and have been submitted to american assay labs in elko , nevada for assaying , based on positive assay results , target and identification , a major claim - staking program will be launched accordingly , as further credible evidence emerges of a significant gold ore deposit , and the first results coming in are showing promise ,\non june 13 , 2005 the company announced in a press release that capital hill ' s management is pleased and encouraged with the first u 3 o 8 ( uranium oxide ) assay returns as well as the noticeable precious metal results and that initial reconnaissance sampling on the company ' s uranium project has returned assays grading 0 , 061 % u 3 o 8 to 0 , 068 % u 3 o 8 of great interest to the company is the fact that the samples taken also assayed positively for precious metals , with results ranging from 0 , 08 to 0 , 22 oz ag / st and trace amounts of gold , the occurrence of silver in conjunction with the uranium mineralization warrants further investigation .\nthe recent news of the company possibly sitting on a huge untapped gold deposit has the stock in a strong up trend , rallying from 5 cents to 75 cents during the past three months . as the three - month chart illustrates , trading volume has swelled to 300 , 000 shares per day with money flow indicators showing strong inflows , which is representative of a stock that is under accumulation . the positive tape action clearly shows strong investor sentiment about the company ' s leverage on controlling sizable parcels of gold fields . the potential recoverable gold data has yet to be compiled , but as mentioned above , early tests are very promising , which is why investors are bidding up shares ahead of this data .\ncapital hill gold ' s strategic objective is to obtain controlling interests in properties with excellent exploration potential to become economically significant to world - class ore deposits . chgi intends to acquire mineral exploration properties primarily through the filing of concessions on its own account and in partnership as well as by optioning exceptional properties at reasonable costs relative to the property ' s potential and the financial capabilities of the company .\nin recent weeks , chgi shareholders have been on the receiving end of some very promising developments with the new discoveries for gold ore . in addition , the company is aggressively exploring for commercial grade uranium deposits that will supply newly heightened demand from nuclear utilities . since 2003 uranium prices have doubled . 20 % of the world ' s electricity comes from uranium , and the nuclear power plant count is stable and growing . the united states needs to add about 100 nuclear power plants over the next two decades to meet burgeoning demand for electric power and maintain the current generating mix , nils j . diaz , chairman of the u . s . nuclear regulatory commission told reporters in early may 2005 .\nas of may 17 , 2005 the company is pleased to report that the claim staking crew and geologist have arrived on site , and have begun staking claims . the area being staked encompasses a large area of potentially commercial - grade uranium mineralization identified by previous work , including geophysical surveys . reconnaissance sampling of the ground being staked has returned assay results approximately equal to those of in - place resources at one of the past - producing uranium mines in the project area .\na chinese news web site reports that china , the world ' s second - largest energy consumer after the u . s . , will spend 400 billion yuan ( u . s . $ 48 . 33 billion ) on building new nuclear power plants by 2020 . this is a bigger number than we have seen in the past . the energy - hungry country intends to increase the amount of installed nuclear power capacity from the current 16 gigawatts to 40 gigawatts within 15 years . nuclear power generation is expected to triple to reach 60 gigawatts by that time . so the market for uranium is in a new bull market .\nconclusion\ndevelopment efforts for gold and uranium on chgi properties are about to commence following the better - than - expected geophysical testing results . shares of chgi have rallied over 10 - fold in just the past three months in anticipation of what the future holds in the way of extractible gold and uranium . once full mining operations are under way , it is our view , that the shares will rally as the business generates its initial revenue stream .\nfor additional information , visit\ninvestor relations solutions is a communications arm of ir solutions profiles . investor relations solutions is not licensed by any governmental or regulatory agencies and is not a registered investment advisor , financial planning service or a stock brokerage firm and in accordance with such , investor relations solutions is not offering investment advice or promoting any investment strategies . investor relations solutions is not offering securities for sale or solicitation of any offer to buy or sell securities . this stock advertisement or e - mail alert contains or incorporates by reference \" forward - looking statements , \" including certain information with respect to plans and strategies of the featured company . as such , any statements contained herein or incorporated herein by reference that are not statements of historical fact may be deemed to be forward - looking statements . without limiting the foregoing , the words \" believe ( s ) , \" \" anticipate ( s ) , \" \" plan ( s ) , \" \" expect ( s ) , \" \" project ( s ) \" , forecast ( s ) will , estimate ( s ) , \" understand ( s ) \" or that by statements indicating certain actions may , could , or might occur and similar expressions which are intended to identify forward - looking statements . ir solutions profiles has been compensated twenty thousand usd . there are a number of important factors that could cause actual events or actual results of the companies profiled herein to differ materially from these forecasts and projections as indicated by such forward - looking statements . statements that are not strictly historical are forward - looking within the meaning of the safe harbor clause of the private securities litigation reform act of 1995 . investors are cautioned that such forward - looking statements invoke risk and uncertainties that may cause the company ' s actual results to differ materially from such forward - looking statements . prior to making an investment , investors should consult with their financial advisor and visit edgar at www . sec . gov .\ninvestor relations solutions , llc 1911 glacier park ave . , ste . 480 naperville , il 60540 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.958+0000", "entityId": 5562, "properties": {"text": "Subject: it ' s mariah from dating service\ni ' m mariah , the girl next door .\nim searching for someone to be with me .\ni ' ve been searching for hot guy to hangout with .\nsometimes i get real lonely . i read online and decided to\nask around if someone wants to chat online .\nif you are interested in my webcam to see how i look\nfeel free to visit me .\nhttp : / / lastmansitting . com / mc 26 /", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.963+0000", "entityId": 5563, "properties": {"text": "Subject: make your rivals envy\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstanding webslte\nwiil make the task much easier .\nwe do not promise that havinq ordered a logo your\ncompany wiil automaticaily become a world ieader : it isguite ciear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.968+0000", "entityId": 5564, "properties": {"text": "Subject: free lancer eventos\nfree lancer eventos\nservi?o profissional na ?rea de promo??o e empresariamento\nde eventos :\ncocktail\n* coffe - break * churrasco * mesa de\nfrios * queijos & vinhos *\nbrunch * batizados * casamentos * * 15 anos * bodas * fazendas\n*\nch?caras * s?tios * *\nfeiras * conven??es * eventos em geral . *\ntemos\ntamb?m encomendas de salgados , bolos , doces e\naluguel de material em geral .\ncontrata??o\nde profissionais :\n* gar?on * copeiro * fritador * cozinheiro * chopeiro * * churrasqueiro *\nbar - man *\n*\nseguran?a e recepcionista *\nfazemos\ntoda a ?rea do rio e grande rio ou outros estados , se assim\ndesejar .\ntemos bons profissionais\npara fazer de sua festa um\nmomento inesquec?vel de prazer e alegria .\npara\nqualquer esclarecimento :\ntel . : 21 2573 . 6864 / 2270 . 5260 /\n9419 . 4970\nfax no . 21 - 2260 . 8466\ne - mail : freelancereventos @ globo . com\n* * empresa\ninscrita no sicaf * *\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.974+0000", "entityId": 5565, "properties": {"text": "Subject: over 80 % savings on all best - selling windows titles\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 windows xp pro 3 adobe creative suite premium 4 norton antivirus 20055 flash mx 20046 corel draw 127 adobe acrobat 7 . 08 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobe choose : see other options list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : customized workspace ; save personalized workspace and tool settings ; create customized shortcuts unparalleled efficiency - - automate production tasks with built - in or customized scripts improved file management , new design possibilities , and a more intuitive way to create for the web support for 16 - bit images , digital camera raw data , and non - square pixels create or modify photos using painting , drawing , and retouching tools sales rank : # 3 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 498 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.978+0000", "entityId": 5566, "properties": {"text": "Subject: all prescriptions are dispensed by licensed pharmacists\nenjoy great sex by taking viagra !\nbecome a fixer , not just a fixture .\nreform , v . a thing that mostly satisfies reformers opposed to reformation .\nfriends may come and go , but enemies accumulate .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.983+0000", "entityId": 5567, "properties": {"text": "Subject: hey aro aro ; )\nprojecthoneypot @ projecthoneypot . org ,\ncome join my network at hi 5 !\ni now have over 548 friends in my network ! you can meet all of them ,\nplus more than 12 million other hi 5 members ! once you join , you will immediately\nbe connected to all the people in my circle of friends .\nhi 5 is an online service that lets you meet new people , view photos ,\nbrowse profiles , and chat with your friends .\ni ' ll see you inside ,\ndonaji\nalready has more than 12 million members !\ngender / age :\nfemale / 19\nlocation :\nmetairie\nthis invitation was sent to projecthoneypot @ projecthoneypot . org on behalf of donaji ( teporocha 55 @ hotmail . com ) .\nif you do not wish to receive invitations from hi 5 members , click on the link below :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.988+0000", "entityId": 5568, "properties": {"text": "Subject: estate of your late relative\nbarrister usman bello and associates 114 awolowo way victoria island lagos - nigeria private email : u - bello - committe 2005 @ il 2 . com telephone : 234 - 1 - 4772236 cell phone : 234 - 80 - 23023834\nattention :\ni am barrister usman bello a personal attorney to mr . engr . smith , a national of your country , who used to work with zenon oil company here in west africa herein after , shall be referred to as my client . my client with his entire family ( the wife and children ) were involved in the explosion in lagos , west africa , on january 27 , 2002 which , claimed many lives and property . unfortunately , my client and the family lost their lives in that disaster that needed not to have happened .\nsince then i have made several enquiries to your embassy to locate any of my clients extended relatives , this has also proved unsuccessful after these several unsuccessful attempts , i decided to trace his relatives over the internet , to locate any member of his family but of no avail , hence i contacted you . my purpose of contacting you is to assist in repatriating the money and property left behind by my client prior to his death before they get confiscated or declared unserviceable by the bank where this huge deposits were lodged and where the deceased had an account valued at about us $ 14 . 5 million dollars . the guidelines of the bank stipulates that if any deposit remained unclaimed for over a period of 3 years and few months , without the fund claimed , the said deposit will be confiscated and this will happen with some couple of official working months if nobody comes for the money . the company had issued me a notice to provide the next of kin or have the account confiscated . since i have been unsuccessful in locating the relatives for over two years now , i seek your consent to present you as the next of kin of the deceased since you have the same last name / surname so that the proceeds of this account valued at us $ 14 . 5 million dollars can be paid to you and then you and me can share the money . 50 % for me and 45 % to you , while 5 % will be set asside for rembursement of incidental expenses that may incure during the process of the transaction or tax as your government may require , i will secure certificate of deposit and other relevant approvals documents that can be used to back up any claim we may make . all i require is your honest cooperation to enable us see this deal through . i guarantee that this will be executed legitimately to protect you from any breach of the law . please get in touch with me by email to enable us discuss further . please contact me through my alternative private . { mailbox : u - bello - committe 2005 @ il 2 . com } nb : see the 2 website of the bomb explosion below : - http : / / www . disasterrelief . org / disasters / 020130 lagos 3 / index _ txt . html http : / / news . bbc . co . uk / 1 / hi / world / africa / 2718295 . stm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.993+0000", "entityId": 5569, "properties": {"text": "Subject: the reason to sh . op in our zone ? for sav . vings .\nrunning short of tablet . supplies ? uncover hovv others s . ave on medicaments .\nnomatter it is for soreness , severetension , sleepingdisorder , menscare ,\nwomenshealth or overvveight , the cyberzone has effective curatives for it .\nthe generic equivalents might be a better option for sho . ppers who vvant to\ns . ave on medicaments . there is a great assortment of generics at our\nmedzone .\nunveil fantastic . deals in our medzone .\nin the orderstatus , there is the latest info . on the carriages and orders .\nhttp : / / t . 2 k . valuecreatorforall . com / d 2 /\nvov ! lead you to simple sav . vings .\nn light enough , - conv really so , i should do just the same in her place .\nif i loved a man ,\nand tried to be cool and unconcerned . her distress returned ,\neyed her up stairs to her own room with all\nspeed ; and imm as she loves the admiral , i would always be with him ,\nnothing should ever\nediately dispatc 1 hed ham peggott 7 y , her nephew , who had been for s", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:29.998+0000", "entityId": 5570, "properties": {"text": "Subject: ke casino spring fling competition : ) fre : rpvnltb\nwelcome to ms @ casino - a revolution in cyber gamlng !\nms @ casino establishes a turning point in casino history by\nuniquely allowing players worldwide to play as dealer thus\nreceiving some of the most favorable odds normally reserved for\nthe casino .\nms @ casino offers popular games , including black - jack , roullette ,\nslot machines and video poker all featuring unmatched graphics and sounds .\nyou may play with real money or just play for fun ( no bank details needed )\nquestions and answers\n- - - - - - - - - - - - - - - - - - - -\nq : ms @ casino offers matchless credibility and it ' s easy to check . how ?\na : robert as player and graham as dealer enter one of the games . once the game\nis over , they verify that one ' s losing sum is the other ' s winning sum .\nq : ms @ casino offers the highest payouts available . how is that possible ?\na : payouts are constant in games like blackjack and roulette ( and for all\ngames with the same rules ) . ms @ casino ' s unique concept allows players to\nbecome the dealer , which improves their winning odds , thus bo 0 sting\ntheir payout rates .\nthe top daily player ( determined at 23 : 59 ) gets $ 200 bonus !\nwinnings generated from playing as dealer are also accumulated .\nthe scoreboard will be updated every hour .\nvisit our site http : / / 4 highrollers . net - try your luck no deposit required !\nbest regards ,\nvirginia hancock\ncasino manager\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.003+0000", "entityId": 5571, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your logo , business stationery or website done right\nnow ! fast turnaround : you will see severai logo variants in three\nbusiness days . satisfaction guaranteed : we provide uniimited amount of\nchanges ; you can be sure : it wili meet your needsand fit your\nbusiness . fiexible discounts : loqo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.015+0000", "entityId": 5572, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be lost amonq\ncompetitors . get your ioqo , business stationery or website done riqht\nnow ! fast turnaround : you wiii see several iogo variants in three\nbusiness days . satisfaction guaranteed : we provide uniimited amount of\nchanges ; you can be sure : it will meet your needsand fit your\nbusiness . flexibie discounts : ioqo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.021+0000", "entityId": 5573, "properties": {"text": "Subject: custom logos and identities from us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of iogos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketinq\ntools wiii brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . ciick here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.029+0000", "entityId": 5574, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand thesepowerful marketing\ntoois wiil brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . ciick here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.035+0000", "entityId": 5575, "properties": {"text": "Subject: http : / / ira . abramov . org\nhello ,\ni have visited ira . abramov . org and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.041+0000", "entityId": 5576, "properties": {"text": "Subject: you don _ t know how to attract customers to your website ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it will be invisibie virtuaiiy , which means efforts spent in vain .\nif you want\npeopie to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in muitiple search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nzoraidaguerra _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.045+0000", "entityId": 5577, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your ioqo , business stationery or website done riqht\nnow ! fast turnaround : you wili see several logo variants in three\nbusiness days . satisfaction guaranteed : we provide unlimited amount of\nchanges ; you can be sure : it wili meet your needsand fit your\nbusiness . flexibie discounts : loqo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.050+0000", "entityId": 5578, "properties": {"text": "Subject: need an outstanding logo now ?\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buiiding a positive visuai image\nof your company by creating an outstanding logo , presentable stationery\nitems and professional website . these marketing tools wiii siqnificantly\ncontributeto success of your business . take a look at our work sampies , hot deai packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.054+0000", "entityId": 5579, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your ioqo , business stationery or website done riqht\nnow ! fast turnaround : you wiii see severai ioqo variants in three\nbusiness days . satisfaction quaranteed : we provide unlimited amount of\nchanges ; you can be sure : it wiil meet your needsand fit your\nbusiness . flexible discounts : loqo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.059+0000", "entityId": 5580, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wiil be invisible virtualiy , which means efforts spent in vain .\nlf you want\npeopie to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in muitipie search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nbrianneholden _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.064+0000", "entityId": 5581, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciails has a iot of advantaqes over viaqra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohoi ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.069+0000", "entityId": 5582, "properties": {"text": "Subject: moore medz\nhello , welcome to medzonline sho apiculture p\nwe are pleased to introduce ourselves as one of the ieading online pharmaceuticai shop gamble s .\ncynicism v\nkeepsake r\na cadaverous l\nl barnstormer l\nla toothsome g\nac augural l\nis exceedingly va\nu annual m\nandmanyother .\n- save over 7 unstick 5 %\n- total confid tractile entiaiity\n- worldwide shlpp telescope lng\n- over sentryunit 5 miilion customers in 150 countries\nhave disarrange a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.074+0000", "entityId": 5583, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialls has a iot of advantaqes over viaqra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.079+0000", "entityId": 5584, "properties": {"text": "Subject: a 1 time charge add your property / services no additional annual\nmembership fees to our vacation guide\nour vacation requests have grown in your region . we are offering this special membership . a 1 time setup fee no additional annual charges .\nyour membership includes all of this . username and password access for unlimited editing of text and pictures . 4 color pictures . direct email link , homeowners web site url as well as availability link and hit counter . you can search our listings by country , state / province , city / region or you can search by category . your price is $ 85 . 00 this membership is good for as long as you own the property . no additional charges or fees . \" lifetime of ownership \"\nwe are getting many vacation requests for your region . please take advantage of this special offer for the next 100 owners who sign up and pay for the membership . you can see our site . http : / / www . . net\nall you have to do is click on membership top right hand corner follow the procedure and select \" see special \" the lifetime option when you enter your info .\nif you have any questions . info @ . net\ndave staff\nmvwin po box 2896 edgartown , ma 02539 this e - mail message is an advertisement and / or solicitation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.084+0000", "entityId": 5585, "properties": {"text": "Subject: post jobs fast and get results fast\n100 ' s of employers\nare posting jobs here .\nmake your next career move\nand log on to\njobslog . com\nmake a free resume and find lots of free\ncareer tips at our resource center !\njobslog . com 1314 south king st . , ste . 856 honolulu , hawaii 96814 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.089+0000", "entityId": 5586, "properties": {"text": "Subject: just to her . . .\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.094+0000", "entityId": 5587, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand these powerful marketing toois\nwiii brinq a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a ciick\naway from your future success . click here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.100+0000", "entityId": 5588, "properties": {"text": "Subject: it works greatt\nhello , welcome to medzonli moonbeam ne shop\nwe are pleased to introduce ourselves as one of the ieading online ph pandemonium armaceuticai shops .\ncoronal v\ndisaster r\na proportionality l\nafflicted ll\nrhomboid lag\na chamfer cl\nis haycock va\nu furiosity m\nandmanyother .\n- save ov coachhouse er 75 %\n- total confi appease dentiaiity\n- worldwide phonetic shlpplng\n- over blackleg 5 miilion customers in 150 countries\nhave a ni converter ce day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.104+0000", "entityId": 5589, "properties": {"text": "Subject: you launched a website but no one visits it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisible virtuaily , which means efforts spent in vain .\nlf you want\npeopie to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visible in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\naracelishammond _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.109+0000", "entityId": 5590, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand these powerful marketinq toois\nwill brinq a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a click\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.115+0000", "entityId": 5591, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.121+0000", "entityId": 5592, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciails has a iot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.130+0000", "entityId": 5593, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of logos ,\nstationery and web - sites . under our careful hand these powerfui marketinq toois\nwiii bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.134+0000", "entityId": 5594, "properties": {"text": "Subject: winning notification ! !\nbank giro loterij . international promotion program\nvan eeghenstraat 70 , 1071 gk amsterdam\nfrom : the director of promotions\ninternational promotion dept .\nref : ipl / 4249859609 / wpl\nbatch : gl / 91663 / a\nattention : winner .\nwe are pleased to inform you of the release , of the long awaited\nresults of the bank giro loterij international promotion program\nheld on the 2 nd may 2005 . you were entered as a dependent participants\nwith : reference number : nm / bc 921245 / kyl 3 , and batch number\nnm / 207161 / kop . your email address attached to the ticket number : 46939 that\ndrew the lucky\nwinning number , which consequently won the sweepstakes in the second\ncategory in four\nparts . you have been approved for\na payment of 500 , 000 . euros ( five hundred thousand euros . ) in cash\ncredited to file reference number : ipl / 4249859609 / wpl .\nthis is from a total cash prize of ( five hundred thousand euros ) shared\namong the ten international winners in secondcategories .\ncongratulations ! ! ! ! !\nall participants were selected through a computer ballot system drawn\nfrom 91 , 000 ( ninety one thousand ) names of email users around the world ,\nas part of our international promotion programme .\ndue to mix up of some names and addresses , we urge you to keep this\naward personal and discreet till your claims has been processed and your\nfunds remitted to you , this is part of our security measures to avoid\ndouble claiming or unwarranted taking advantage by other participants\nor impersonators . to begin your claim , do file for the release of your\nwinning by contacting our accredited agent ,\nmr . edger hansen ( esq . )\nbank giro loterij security agency .\ntel : + 31 - 619 028 192\nfax : + 31 - 20 - 524 8591 .\nemail : edghansen @ seeqmail . com\nemail : admin @ bankgirolotto . com\nyour security file number is w - 91237 - ho 67 / b 4 ( keep personal ) remember ,\nyour winning must be claimed not later than ( 07 / 20 / 2005 ) . failure to claim\nyour winning prize will be added to next 10 , 000 . 000 euros international\nlottery programme .\nfurthermore , should there be any change in your address , endeavor to\ninform the claim ' s agent as soon as possible .\nonce again , congratulations ! !\nyours sincerely .\nms . shredder van nest roy\ndirector of promotion .\nn . b :\nbreach of confidentiality on the part of the winners will result to\ndisqualification . winners under 18 yrs of age requires parental consent\nand\napproval .\nbank giroloterij internationalpromo . ( nv )\nnl . 234875 . rc @ tm\nthis communication together with the information it contains is\n1 . intended for the person / s and / or organisation / s named above and for\nno other person / s and / or organization / s , and\n2 . may be confidential and protected by law . unauthorised use , copying or\ndisclosure of any and / or all of it may be unlawful .\nshould this communication be recieved in error , please contact me\nimmediately by means of a return email .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.142+0000", "entityId": 5595, "properties": {"text": "Subject: don ' t be a fuddy - duddy . . . use the software everyone ' s using . . .\nsend the love home with an online photo album\nwe was robbed !\nhow could i lose to such an idiot ?", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.148+0000", "entityId": 5596, "properties": {"text": "Subject: great nnews\nhello , welcome to medzonline sh groundsel op\nwe are pleased to introduce ourselves as one of the ieading online phar felicitation maceuticai shops .\nhelter v\nshakedown r\na cosmopolitan l\nl blister l\nl bestow ag\nac tosher l\nis coadjutor va\nconfidant um\nandmanyother .\n- sav inexpiable e over 75 %\n- total confide leisure ntiaiity\n- worldwide s polite hlpplng\n- ov allusion er 5 miilion customers in 150 countries\nhave devitalize a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.153+0000", "entityId": 5597, "properties": {"text": "Subject: work at home and make money\nwould you like to get rich working part - time from home ? do you want to get extra income ?\nwe are looking for people that want to make money working from home !\nno special skills required ! no fees to start ! we will train you .\nyour personal coach will explain you how to put the internet and your computer to work for you .\nno matter what you currently do for a living , you can join our team and make money !\nwe will need a couple of hour ' s commitment per day . work as much as you want .\nwhat do we have to offer ? no start up fees or training manuals to buy !\nunlimited income potential ! take action and start doing something positive today !\nkeep in mind that there are no fees or packages to buy to join our firm .\nwork smarter , not harder ! you can make a difference in your financial future !\nwhat you need is basic internet knowledge , access to a computer with internet connection .\nwe will train and mentor you one - on - one if you are serious and remain teachable .\napply now to find out more about this exciting opportunity .\nto carry on with the application or to get more information , please fill out request form at :\n\u0000", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.158+0000", "entityId": 5598, "properties": {"text": "Subject: candy super $ money maker\nyou are receiving this message as an opt - in subscriber to 4 best offer or one of\nour marketing partners .\nif you no longer wish to receive further offers , please\nsend an email with discontinue to :\nsupport @ 4 bestoffer . com\n4 best offer\n136 74 th street\nnorth bergen , nj\n07047\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.167+0000", "entityId": 5599, "properties": {"text": "Subject: you can get a quote from 4 major lenders without giving personal info ! tijqsemw\nyou can get a quote at 4 lenders with no personal info ! greenspan is going to raise the numbers out of reach , try us out before he does !\nthis advertisement was\nsent to you by an affiliate of smartmortgageusa . if you have any\nquestions , you may contact us at : offer up , attn : smartmortgageusa , p . o .\nbox 78361 , san francisco , ca 94107 - 8361 . if you wish to remove yourself\nfrom future smartmortgageusa mailings please click\nhere to here to go to the website and select the unsubscribe link at\nthe bottom of the page . if you wish to unsubscribe from future mailings\nfrom this email publisher please follow their listed instructions .\nxipwtobnf", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.171+0000", "entityId": 5600, "properties": {"text": "Subject: how to soak her in cum\n\" i just wanted to write and thank you for spur - m .\ni suffered from poor sperm count and motility . i found\nyour site and ordered spur - m fertility blend for men .\ni have wondered for years what caused low semen and sperm\ncount , and how i could improve my fertility and help my wife\nconceive . spur - m seems to have done just that ! thank you\nfor your support . \"\nandrew h . , london , uk\n\" spur - m really does help improve fertility and effectiveness\nof sperm and semen motility . i used it for the past few months ,\nand not only does it work - i also feel better to . i have\nmore energy . this is an excellent counter to low sperm count\nand motility . i ' ll be buying more ! ! ! \"\nfranz k . , bonn , germany\n\" i had been wondering on the causes of low semen and\nsperm count , i was searching for this type of information\nwhen i found your site . i hadn ' t been made aware of this\nproduct before then , so was quite surprised to be able\nto find a male fertility product . usually everything is\ngeared towards female fertility . suffice to say i ordered\nand a few months later we received the good news from the\ndoctors - my wife is pregnant . i can ' t be 100 % sure if\nit was spur - m that helped . but i am happy enough to be able\nto say it should be considered by any man looking to increase\nhis fertility . it worked for me . thanks . \"\nroy b . , essex , uk\nnot interested in promotional campaign , go here\nhttp : / / munoz . provencaux . net / rm . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.176+0000", "entityId": 5601, "properties": {"text": "Subject: start shopping at costco today with a complimentary gold membership .\nstart shopping at costco today with a free gold membership . free gold membership or upgrade and extend your existing membership . ( )\nipmlgbit", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.180+0000", "entityId": 5602, "properties": {"text": "Subject: great news from your bank\nhow are you ,\nwe tried contacting you about your low intrest rate .\nyou have qualified for the lowest rate in years .\nyour current status : $ 341 , 000 for $ 262 a month .\nyour credit has already been reviewed / approved .\nplease view your details at our site below :\nanyhgh . com\nsincerely ,\narmand bartlett\n6 .\ndoesn ' t kate ' s granddaughter miss shaving for a few months ? .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.185+0000", "entityId": 5603, "properties": {"text": "Subject: online notification : your money is ready\ndear applicant ,\nafter further review upon receiving your application your current mortgage qualifies for a 3 % lower rate .\nyour new monthly payment will be as low as $ 340 / month for a $ 200 , 000 loan .\nplease confirm your information in order for us to finalize your loan , or you may also apply for a new one .\ncomplete the final steps by visiting our 60 second form\nwe look foward to working with you .\nthank you ,\nchristine larson , account manager\nbelico and associates , llc .\n- - - - - - - - - - - - - - - - - - - - - - -\nnot interested - http : / / www . morntix - star . net / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.189+0000", "entityId": 5604, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter ix\n$ 80 adobe lilustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cool 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nclemmie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.194+0000", "entityId": 5605, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisibie virtualiy , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in muitipie search engines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest regards ,\nnorasweeney _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.199+0000", "entityId": 5606, "properties": {"text": "Subject: a wedding consulting business of your own\ndo you know what a wedding consultant is ?\nmaybe it ' s something you ' ve always thought about doing , but didn ' t know where to start , how to start , when to start . or even if an opportunity like this existed .\nit does ! and a touch of class would like you to invite you to be a part of it .\nwedding consulting isn ' t wedding planning . it ' s a fun , exciting , rewarding , and high - paying job that lets you use your creativity to be a part of the happiest day of people ' s lives . our wedding consultants help oversee some of the important details necessary to create the wedding of their client ' s dreams , focusing on just a few key pieces of a wedding : coordinating stationary , favors , gifts , personalized websites , and other creative additions to make weddings just a little more special , personal , and memorable .\na touch of class wedding consulting provides a new and exciting opportunity for you to take a bold step for yourself , and serve the needs of many others in the process . a touch of class is an established and successful wedding consulting business . our consultants provide thoughtful touches , creative advice , event expertise , and quality products to add special value to a most special day , all through our network of vendors and suppliers . we provide everything they need to do their job and to do it well , with end to end support , training , administration , sales , and relationship building .\nnow , a touch of class is creating a national network of wedding consultants . it ' s an exciting opportunity . perhaps it ' s the right opportunity for you . to learn more about our program , and about being a wedding consultant , click below to view our brief program overview .\nclick here for program overview presentation\nthe need for professional wedding consultants has grown tremendously . with more than two - - and - a - half million weddings and almost seventy billion dollars spent on weddings last year alone , there are more opportunities for wedding consultants than ever before .\nafter you ' ve had a chance to view our presentation , if you feel this is something that ' s right for you , then call or email me to get started , and we can schedule a time to discuss the program together in greater detail .\nsincerely yours ,\nnicole\nnicole wilder\npresident\na touch of class wedding consulting\nt : 800 - 870 - 0029 ext . 5101\nf : 203 . 924 . 0634\nemail : nicole . wilder @ atocweddings . com\nweb : www . atocweddings . com\na touch of class 223 canal st . shelton , ct 06484 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.204+0000", "entityId": 5607, "properties": {"text": "Subject: for your information\nthis will be our closing notification\nwe have made an effort to write to you on many occasions and this will be our last contact !\nyour present loan situation meets the requirements for you for up to a 3 . 70 % lower rate .\nhowever , based on the fact that our previous attempts to write to\nyou didn ' t work , this will be our last and final attempt to lock you into the lower rate .\nplease finalize this final step upon receiving\nthis notice immediately , and complete your request for information now .\napply here .\nif your decision is not to make use of this final offer going here will help you to do so .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.209+0000", "entityId": 5608, "properties": {"text": "Subject: corporate identity for your business\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your loqo , business stationery or website done\nright now !\nfast turnaround : you wiil see several logo variants\nin three business days .\nsatisfaction quaranteed : we provide unlimited\namount of changes ; you can be sure : it will meet your needs and fit your\nbusiness .\nfiexibie discounts : loqo improvement , additionai\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.214+0000", "entityId": 5609, "properties": {"text": "Subject: for your information\nthis is going to be our absolute notice\nwe have attempted to drop a line to you on a lot times and now is the time to respond !\nyour current home loan enables you for up to a 3 . 60 % lower rate .\nhowever , based on the fact that our previous attempts to drop a line to\nyou did not succeed , this will be our final notice to get for you the lower rate .\nplease finalize this final step upon receiving\nthis notice immediately , and complete your request for information now .\napplication here .\nif your decision is not to make use of this final offer going here will help you to do so .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.218+0000", "entityId": 5610, "properties": {"text": "Subject: first - level designers available for you\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your loqo , business stationery or website done\nright now !\nfast turnaround : you will see several iogo variants\nin three business days .\nsatisfaction guaranteed : we provide unlimited\namount of changes ; you can be sure : it wiii meet your needs and fit your\nbusiness .\nflexible discounts : logo improvement , additionai\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.223+0000", "entityId": 5611, "properties": {"text": "Subject: first - level designers available for you\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your loqo , business stationery or website done\nright now !\nfast turnaround : you will see severai iogo variants\nin three business days .\nsatisfaction quaranteed : we provide uniimited\namount of chanqes ; you can be sure : it will meet your needs and fit your\nbusiness .\nfiexibie discounts : logo improvement , additional\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.228+0000", "entityId": 5612, "properties": {"text": "Subject: custom design work\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your logo , business stationery or website done\nriqht now !\nfast turnaround : you will see severai iogo variants\nin three business days .\nsatisfaction guaranteed : we provide uniimited\namount of chanqes ; you can be sure : it wili meet your needs and fit your\nbusiness .\nfiexible discounts : logo improvement , additional\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.232+0000", "entityId": 5613, "properties": {"text": "Subject: high - quality affordable logos\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your logo , business stationery or website done\nriqht now !\nfast turnaround : you will see several loqo variants\nin three business days .\nsatisfaction quaranteed : we provide unlimited\namount of changes ; you can be sure : it wiii meet your needs and fit your\nbusiness .\nflexible discounts : ioqo improvement , additional\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.239+0000", "entityId": 5614, "properties": {"text": "Subject: top - level logo and business identity\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your logo , business stationery or website done\nriqht now !\nfast turnaround : you wiil see severai ioqo variants\nin three business days .\nsatisfaction quaranteed : we provide unlimited\namount of changes ; you can be sure : it wiil meet your needs and fit your\nbusiness .\nfiexible discounts : iogo improvement , additional\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.246+0000", "entityId": 5615, "properties": {"text": "Subject: luv our rolexes for the same fea - tures and lovvprices .\nthey are definitely the finest from rolexes , cartiers , bvlgaries ,\nfrankmullers , harry winstons , breguets , jaeger - lecoultre , brietilings ,\ntagheuers and tudors . first of all , their overall lo 0 ks are perfect .\nsecondly , vievv their details . every small logo and serial number shown\nspeak for their elegance .\nyou will also flnd out how ccheap our lovely goodss are . you might even\nvvant 2 or 3 vvatches for your collections . waterproof , stainlessteelbody ,\nsapphire crystal surface and other lovely featuress bring you sheer feeling\nfor luxury .\nour vvatches are reallydurable cause the manufacturers use the bestquality\nsubstances like durable stainlesssteel and anti - scratching surface .\nthe vvatches sold at our cybersstore have energy - modules like\nbattery & quartz , anto - operating & winding , winding and non - winding ones .\nthe classics have hack mechanism with stainlesssteelback . we have them .\ntheir when you promised to go . \"\n\" no , i did not promise . i only smirked and bowed , and said the word\nlate confidences wer e really too wicked for their pea\n` bite your tongue ! ' said princess miaghkaia suddenly . ` karenina is a\nsplendid woman . i don ' t like her husband - but her i like very much . ' to\nthe window to recollect himself , and feel how he ought to behave .\nce of mind , some weath 1 erbeaten ragged old rooks ' - nests , 7 burdening\ntheir hi gher branch", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.252+0000", "entityId": 5616, "properties": {"text": "Subject: high - quality affordable logos\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your loqo , business stationery or website done\nriqht now !\nfast turnaround : you wiil see several iogo variants\nin three business days .\nsatisfaction guaranteed : we provide unlimited\namount of changes ; you can be sure : it will meet your needs and fit your\nbusiness .\nflexibie discounts : logo improvement , additional\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.257+0000", "entityId": 5617, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shippinq and guaranteed effect ! here you buy it riqht from warehouse !\nthe store is verified by bbb and approved by visa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.261+0000", "entityId": 5618, "properties": {"text": "Subject: our cool medz\nhello , welcome to medzonli decapitation ne shop\nwe are pleased to introduce ourselves as one of the ieading online pharm mannerist aceuticai shops .\nrepentant v\nblockade r\na congou l\nautocar ll\nl chitterlings ag\nac dendriform l\nis importunity va\nu exposition m\nandmanyother .\n- save ov lacteal er 75 %\n- total confidentiaii dimorphous ty\n- worldwide shlppln interallied g\n- over 5 miilion customers in 150 coun freemason tries\nhave a nice condenser day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.266+0000", "entityId": 5619, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter ix\n$ 80 adobe illustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nlaurice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.271+0000", "entityId": 5620, "properties": {"text": "Subject: the volleyball confidence guide\nthe players ' guide to competitive confidence\ndominate the competition . . . mentally .\nwinningstate - volleyball transforms doubtful players into confident competitors .\ngo to winningstate . com\nplayers learn how to successfully battle the natural ups - and - downs of insecurity and self - doubt ; they learn how to focus their minds on believing in their physical abilities ; ultimately , they\nlearn how to perform under pressure .\n? steve knight ( the author )\nspecial priority packs :\n( priority 1 pack ) total price : $ 25 . 90\n( priority 3 pack ) total price : $ 59 . 90\n\" the best confidence book we have ever read ! this is a must\nread if you want to be a cut above the average player . \"\nhigh school sports news\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.275+0000", "entityId": 5621, "properties": {"text": "Subject: increases cardiac output and athletic performance\nno doctor visits required\nrecapture your youth and feel the energy\nfor many , this is a powerful second chance\npress here to read about\nhttp : / / yv . i 2 el . glowlineensured . com / xs /\nthis common element can change the way you experience the next half of your\nlife\n- - - - - original message - - - - -\nfrom : odessa [ mailto : derick @ ktracsy . com ]\nsent : tuesday , march 3 , 2005 5 : 42 am\nto : donnie ; rebbecca @ rixranxne . com ; blanche ; janelle ; kazuko\nsubject : fully living life\ni am busy , no thank you , go above and use link and address is on site\nhis surprise was great when the garment of repulsion arrested the blow and\nnearly overthrew the aggressor in turn .\nsnatching a dagger from his sash , he bounded upon the boy so fiercely that\nthe next instant the enraged turk found himself lying upon his back three\nyards away , while his dagger flew through the air and landed deep in the\ndesert sands .\nkeep it up ! cried rob , bitterly . but why destroy my friends ? asked the\nlittle wizard .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.280+0000", "entityId": 5622, "properties": {"text": "Subject: graphic design from logos to websites\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your loqo , business stationery or website done\nright now !\nfast turnaround : you wiil see severai logo variants\nin three business days .\nsatisfaction guaranteed : we provide uniimited\namount of chanqes ; you can be sure : it will meet your needs and fit your\nbusiness .\nfiexible discounts : loqo improvement , additional\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.285+0000", "entityId": 5623, "properties": {"text": "Subject: amaziing\nhello , welcome to medzonl hedgehog ine shop\nwe are pleased to introduce ourselves as one of the ieading online pharmaceutica impractical i shops .\nfinancier v\nhundredweight r\ndesigner al\nl sestertius l\ntrashy lag\na matronly cl\nisv baresark a\nseptic um\nandmanyother .\n- save over 75 sundae %\n- total confid fewness entiaiity\n- worldwide outset shlpplng\n- over 5 miilion cust clothes omers in 150 countries\nhave a skinny nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.289+0000", "entityId": 5624, "properties": {"text": "Subject: high growth investing for tomorrow\nhigh growth investing\ncompany ceo interviewsemerging technologies new trends to watchindustry statistics\nview pdf\nare americans and the rest of the world becoming\naddicted to online gaming ? analysts predict over\n$ 14 billion dollars a year will go to online casinos\ngaming stocks may be set to explode !\nread the full\n10 page report\nincludes inside :\ncompany profile : gaming transactions inc .\nthis publicly traded company looks like it has what it takes to become\na big player in the online gambling world . could it be the next payoff\nfor investors ? . . . more\nthe online gambling market\ngiven the rate at which this market is expanding across the planet , the\noutlook for the online gaming industry looks very positive . do the\nnumbers add up for investors ? . . . more\nhow big could it get ?\nonline gaming has become a seriously big business , with shares in some\ncompanies increasing by up to eight times inside a year . . . . more\npick of the month : ggts\ngaming transactions operates in one of the fastest growing industries\naround and has an experienced management team . early investors , who get\nin before the institutional investors , could make a fortune . . . . more\nggts : ceo interview\npatrick smyth and stephen white head up company dedicated to bringing the next generation of online gaming . . . read full interview\nthe asian market\naccording to the diffusion group and game trust , china will become the # 1 online gaming market by 2007 . . . . more\ninvestors are making huge gains as the world bets online .\ncould gaming transactions inc . ( gtts ) be the next stock to rock ?\nrecently ,\nwe read an article in the economist that highlighted online gaming and\nhow it has become a socially acceptable form of entertainment . over the\nnext few days , as we thought about what sort of impact this trend could\nhave , we started to notice that online gambling was being discussed all\nover the media - in newspapers , online and on television . it became\nobvious to us that more and more people were jumping on the internet to\nbet on games . we also came across some staggering statistics .\nmerrill lynch , for example , has predicted that gambling has the\npotential to account for a full 1 % of global economic activity ! another\nsource , ecommercetimes . com , recently reported that the scope of this\nbusiness is so enormous that some have even claimed that it is the\nsingle most important factor in the growth of e - commerce . the online\ngaming industry , in other words , appears to be booming , and it may be\nan ideal time to is time to invest .\nwe decided to\nfind out who the key players were in the business . after speaking with\na number of industry insiders , the trail led us to an emerging ,\npublicly traded company called gaming transactions inc . ( ggts ) . after a\nclose look at ggts , we decided that this company could produce huge returns on investment in the upcoming months .\nalthough\nggts is a new company , it has some surprisingly experienced players at\nthe helm an uncommon thing to find in an industry only ten years old .\nthe company has come out with online versions of the addictive game keno .\nand its management team was smart enough to secure the rights to the\nkeno . com website , which , if youre marketing keno , is as good as it\ngets . keno has the widest spread for the house of any mainstream\ngambling game . ggts is also about to launch a suite of other online\ngambling games , including poker and sports - book betting . once it offers\nthese popular games , and given that it already has keno . com online , the\ncompany could bring in great revenues , attracting a lot of attention in\nthe investment community and driving up its stock price .\nafter a successful north american launch ,\ngaming transactions inc . ( gtts ) has translated its games into chinese\nand is about to hit asia . this initiative looks like a wise business\ndecision : many analysis anticipate that china will be the biggest\nsource of online gambling revenue by 2007 , so the company could be poised for massive expansion in terms of both profits and global reach .\nwhat\ndoes all this tell us ? a brand new company , a popular , well - known game ,\none of the biggest spreads for the house , a growing market , experienced\nmanagement , and a stock price that is trading under a dollar it adds up to the potential for huge gains for early investors . if youre interested in more information on the market and gaming transactions inc . , click here to read a free ten - page report . . .\nto join market movers mailings http : / / ggtsstock . com to find out more .\nfirst source data inc .\n4535 west sahara ave # 217\nlas vegas nevada 89102\ndisclosure and disclaimer\ninvestment news indepth reports ( hereinafter inir ) , operated by first\nsource data , inc . ( hereinafter fsd ) , is a business news publication\nof regular and general circulation . this issue is not a research\nreport , does not purport to provide an analysis of any companys\nfinancial position , and is not in any way to be construed as an offer\nor solicitation to buy or sell any security . gaming transactions inc .\n( hereinafter ggts ) is the featured company . fsd managed the\npublishing and distribution of this publication . the information\ncontained herein is being republished in reliance on statements made by\nggts management , and publicly disseminated information issued by third\nparties regarding ggts and the online gaming industry , which are\npresumed to be reliable , but neither fsd nor its editors , employees , or\nagents accept any responsibility for the accuracy of such statements or\ninformation , or the contents herein which are derived therefrom .\nreaders should independently verify all statements made in this\nadvertisement .\nfsd has received compensation for the production and distribution of\nthis newsletter . the compensation received is in the amount of one\nhundred and twenty eight thousand dollars and was received from\naccelerated capital limited ( hereinafter acl ) for this advertising\neffort . acl is a shareholder of ggts . because fsd received compensation\nfor its services , there is an inherent conflict of interest in the\nstatements and opinions contained in this newsletter and such\nstatements and opinions cannot be considered independent .\ninternet - based companies , and those involving online gaming in\nparticular , are almost always very high risk investments , and investors\nshould be aware that they could potentially lose any investment made in\nsuch companies in its entirety . we strongly encourage readers to\nundertake their own due diligence to decide the best course of action\nin connection with any investment decision that they might make . any\ninvestment should be made only after consulting with a qualified\ninvestment advisor .\nmedia matrix 7025 county rd . 46 a dtel 071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.294+0000", "entityId": 5625, "properties": {"text": "Subject: on line gaming report\nspecial online issue\ninvestment news and indepth reports\nhigh growth investing\nonline gaming report : ggts\ncompany ceo interviewsemerging technologies new trends to watchindustry statistics\nare americans and the rest of the world becoming\naddicted to online gaming ? analysts predict over\n$ 14 billion dollars a year will go to online casinos .\ngaming stocks may be set to explode !\nread the full report click here !\nincludes inside :\ncompany profile : gaming transactions inc .\nthis publicly traded company looks like it has what it takes to become\na big player in the online gambling world . could it be the next payoff\nfor investors ? . . . more\nthe online gambling market\ngiven the rate at which this market is expanding across the planet , the\noutlook for the online gaming industry looks very positive . do the\nnumbers add up for investors ? . . . more\nhow big could it get ?\nonline gaming has become a seriously big business , with shares in some\ncompanies increasing by up to eight times inside a year . . . . more\npick of the month : ggts\ngaming transactions operates in one of the fastest growing industries\naround and has an experienced management team . early investors , who get\nin before the institutional investors , could make a fortune . . . . more\nread the full report click here !\ninvestors are making huge gains as the world bets online .\ncould gaming transactions inc . ( gtts ) be the next stock to rock ?\nrecently ,\nwe read an article in the economist that highlighted online gaming and\nhow it has become a socially acceptable form of entertainment . over the\nnext few days , as we thought about what sort of impact this trend could\nhave , we started to notice that online gambling was being discussed all\nover the media - in newspapers , online and on television . it became\nobvious to us that more and more people were jumping on the internet to\nbet on games . we also came across some staggering statistics .\nmerrill lynch , for example , has predicted that gambling has the\npotential to account for a full 1 % of global economic activity ! another\nsource , ecommercetimes . com , recently reported that the scope of this\nbusiness is so enormous that some have even claimed that it is the\nsingle most important factor in the growth of e - commerce . the online\ngaming industry , in other words , appears to be booming , and it may be\nan ideal time to is time to invest .\nwe decided to\nfind out who the key players were in the business . after speaking with\na number of industry insiders , the trail led us to an emerging ,\npublicly traded company called gaming transactions inc . ( ggts ) . after a\nclose look at ggts , we decided that this company could produce huge returns on investment in the upcoming months .\nalthough\nggts is a new company , it has some surprisingly experienced players at\nthe helm an uncommon thing to find in an industry only ten years old .\nthe company has come out with online versions of the addictive game keno .\nand its management team was smart enough to secure the rights to the\nkeno . com website , which , if youre marketing keno , is as good as it\ngets . keno has the widest spread for the house of any mainstream\ngambling game . ggts is also about to launch a suite of other online\ngambling games , including poker and sports - book betting . once it offers\nthese popular games , and given that it already has keno . com online , the\ncompany could bring in great revenues , attracting a lot of attention in\nthe investment community and driving up its stock price .\nafter a successful north american launch ,\ngaming transactions inc . ( gtts ) has translated its games into chinese\nand is about to hit asia . this initiative looks like a wise business\ndecision : many analysis anticipate that china will be the biggest\nsource of online gambling revenue by 2007 , so the company could be poised for massive expansion in terms of both profits and global reach .\nwhat\ndoes all this tell us ? a brand new company , a popular , well - known game ,\none of the biggest spreads for the house , a growing market , experienced\nmanagement , and a stock price that is trading under a dollar it adds up to the potential for huge gains for early investors . if youre interested in more information on the market and gaming transactions inc . , click here to read a free ten - page report . . .\nto join market movers mailings http : / / ggtsstock . com to find out more .\nfirst source data inc .\n4535 west sahara ave # 217\nlas vegas nevada 89102\ndisclosure and disclaimer\ninvestment news indepth reports ( hereinafter inir ) , operated by first\nsource data , inc . ( hereinafter fsd ) , is a business news publication\nof regular and general circulation . this issue is not a research\nreport , does not purport to provide an analysis of any companys\nfinancial position , and is not in any way to be construed as an offer\nor solicitation to buy or sell any security . gaming transactions inc .\n( hereinafter ggts ) is the featured company . fsd managed the\npublishing and distribution of this publication . the information\ncontained herein is being republished in reliance on statements made by\nggts management , and publicly disseminated information issued by third\nparties regarding ggts and the online gaming industry , which are\npresumed to be reliable , but neither fsd nor its editors , employees , or\nagents accept any responsibility for the accuracy of such statements or\ninformation , or the contents herein which are derived therefrom .\nreaders should independently verify all statements made in this\nadvertisement .\nfsd has received compensation for the production and distribution of\nthis newsletter . the compensation received is in the amount of one\nhundred and twenty eight thousand dollars and was received from\naccelerated capital limited ( hereinafter acl ) for this advertising\neffort . acl is a shareholder of ggts . because fsd received compensation\nfor its services , there is an inherent conflict of interest in the\nstatements and opinions contained in this newsletter and such\nstatements and opinions cannot be considered independent .\ninternet - based companies , and those involving online gaming in\nparticular , are almost always very high risk investments , and investors\nshould be aware that they could potentially lose any investment made in\nsuch companies in its entirety . we strongly encourage readers to\nundertake their own due diligence to decide the best course of action\nin connection with any investment decision that they might make . any\ninvestment should be made only after consulting with a qualified\ninvestment advisor .\nmedia matrix 7025 county rd . 46 a dtel 071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.298+0000", "entityId": 5626, "properties": {"text": "Subject: get rid of premature ejaculation and last longer\nnew penis enlargement patches !\nhttp : / / www . retdehola . com / ss /\nself is the only prison that can bind the soul .\nto the uneducated , an a is just three sticks .\nfrom the sublime to the ridiculous is but a step .\nno nice men are good at getting taxis .\na man cannot be too careful in the choice of his enemies .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.303+0000", "entityId": 5627, "properties": {"text": "Subject: she is shocked\nhello , welcome to meteor medzonline shop\nwe are pleased to introduce ourselves as one of the ieading online pharmaceutic galactic ai shops .\npliant v\nsequoia r\na approximately l\ntestate ll\nla experienced g\na ensilage cl\nisv incurability a\naffluence um\nandmanyother .\n- save over gazogene 75 %\n- total con hypodermic fidentiaiity\n- worldwide s introduction hlpplng\n- over 5 miilion customer depreciation s in 150 countries\nhave a ni octarchy ce day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.308+0000", "entityId": 5628, "properties": {"text": "Subject: re [ 4 ] : don ' t get left behind ! . . . needham\ngood morning sir ,\ncheck out the discounts these guys are offering on enlarge patches !\nsteel package : 10 patches reg $ 79 . 95 now $ 49 . 95 ! free shipping too !\nsilver package : 25 patches reg $ 129 . 95 , now $ 99 . 95 ! free shipping and free exercise manual included !\ngold package : 40 patches reg $ 189 . 95 , now $ 149 . 95 ! free shipping and free exercise manual included !\nplatinum package : 65 patches reg $ 259 . 95 , now $ 199 . 95 ! free shipping and free exercise manual included !\nmillions of men are taking advantage of this revolutionary new product - don ' t be left behind !\n\" your product is amazing and i would recommend it to anyone who has a bad erection and wants something harder and better for themselves . \"\n- vince glover\ntry this peniss growth patchs out and see how it can change your life !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.313+0000", "entityId": 5629, "properties": {"text": "Subject: urgent safeharbor department warning\nurgent\nsafeharbor department warning\nwe recently have determined that different computers have logged into your\nebay account , and multiple password failures were present before the login one\nof our customer service employees has already tryed to telephonically reach you .\nas our employee did not manage to reach you , this email has been sent to your\nnotice . therefore your account has been temporary suspended . we need you to\nconfirm your identity in order to regain full privileges of your account . if\nthis is not completed by june 27 , 2005 , we reserve the right to terminate all\nprivileges of your account indefinitly , as it may have been used for fraudulent\npurposes . we thank you for your cooperation in this manner . to confirm your\nidentity please follow the link below .\n( to complete the verification process you must fill in all the\nrequired fields )\nplease note : if your account informations are not\nupdated within the next 72 hours , then we will assume this account is fraudulent\nand will be suspended . we apologize for this inconvenience , but the purpose of\nthis verification is to ensure that your ebay account has not been fraudulently\nused and to combat fraud .\nwe apreciate your support and understading , as we work together to keep ebay\na safe place to trade .\nthank you for your patience and attention in this important matter .\nregards ,\nsafeharbor departmentebay inc .\ndo not respond to this e - mail , as your reply will not be\nreceived .\ncopyright 2004 ebay inc . all rights reserved . designated trademarks\nand brands are the property of their respective owners . ebay and the ebay\nlogo are trademarks of ebay inc . is located at hamilton avenue , san jose , ca\n95125", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.318+0000", "entityId": 5630, "properties": {"text": "Subject: otc live ' s new home run oil stock otc bb : qoil\ndont\nsleep on this stock ! this is a hot one ! new orders all\nthe time ! ! !\ntscintroduced\nlastmonthsprl - - up\nover 145 %\nfew\ndays agowe have also introducedford - - up\n31 % in 2 days\nwe\nbelieve ( otc bb : qoil ) is also poised for a strong move as the fundamentals and\nanew project attract this stock as it is trading at a\nbargain\nfull profile\nplease visit www . otclive . com / qoil . htm\noil prices are\nflirting with all time highs , and oil company stocks , which generally move with\noil prices , have outperformed the market this year . some analysts say if\nyou don ' t make oil stocks part of your portfolio you have to be nuts . $ 50\na barrel , $ 60 , $ 70 , $ 80 to $ 100 a barrel have been predicted . no one knows\nfor sure how high it will go . most agree it will head\nhigher .\ncompany\noverview\nquest oil\ncorporations mission is to optimize the development of oil gas\nresources out of its petroleum licenses in order to create the greatest\nvalue for its shareholders . quest oil intends to accomplish this by\nmanaging the exploration process and only incorporating joint venture\npartners to execute our predetermined exploitation strategy . quest oil\npositions itself through its acquisitions with experienced resource\ndevelopers . each property is selected as much for its own merits\nfinancially as it is for its strategic diversity , quest looks for\nundervalued opportunities in relatively stable economic / political\nenvironments . we are currently negotiating or reviewing licenses in\ncanada , the usa , the south pacific and africa quest oil is positioning\nitself as a quality junior resource exploration company . as a us public\ncompany quest has access to the financial resources required to execute a\nfull exploration program and ultimately\nextraction .\nlatest\nnews\nmay 25 ,\n2005 quest\noil initiates phase one drilling program for acadia north gas\nproject\nmay 19 ,\n2005 quest\noil closes initial funding for acadia gas\nproject\nmay 16 ,\n2005 quest\noil arranges $ 750 , 000 funding for acadia gas\nproject\nmay 13 ,\n2005 quest\noil engages midtown partners to provide funding for acadia gas\nproject\nacadia north\ngas project\nquest\ncanada inc . , quest oil corporations wholly owned subsidiary , is about to launch\ndevelopment of the acadia north gas project . acadia north is the initial launch\nproject for quest oil . the project was selected based on its reduced risk\ncharacteristics of proven reserves , substantial production in the area and the\nprojects close proximity to several distribution pipelines allowing immediate\naccess to market .\nthe\nacadia project is located in southeast alberta near the saskatchewan border . acadia north consists of\ntwo sections totaling 1280 gross acres overlying the vast viking gas target . the\narneson viking pool is a shoreface sand deposit and oriented in a ne - sw\ndirection . the pool has been encountered by four previously drill wells\nsince 1972 . the porous sand ranges from 30 feet to 46 feet thick and\ncontains gas under lain by water . pay zone thickness ranges from 4 feet to\n12 feet with a proven and probable recoverable reserve of 8 bcf at a market\nvalue of $ 24 million . according to chapman engineering of calgary , alberta\nwhen including the possible reserves identifies an underlying pool over twice\nthe pud with a value of $ 45\nmillion .\non\nmay\n20 , 2005\nquest oil completed and closed project financing for $ 750 , 000 usd . these\nfunds will allow for immediate application for licensing and permitting of the\ntwo acadia sections . quest oils operator , transaction oil and\ngas ventures has been retained to provide turnkey development through to\ntie - in . survey crews are on site and over the next couple of weeks will\ndetermine drill site locations . drill rigs at present are being scheduled\nfor mid - june and within a two week period will have completed the two well drill\nprogram . well depth is approximately 1 , 800 feet and within two days of\nactive drilling target depth will be achieved . as the\nacadia project progresses through completion and tie - in , it is\nexpected with a successful drill program , we will be in cash flow within sixty\ndays .\nquest\noil is actively searching and conducting economic reviews on several projects in\nnorth america and abroad . we have spent\nconsiderable amount of time and negotiations with governments in the\nmiddle\neast and\nare close to entering into a full development program . management will be\nreleasing information on this endeavor within the next few\nweeks .\npriorities\nas\na publicly traded oil and gas exploration and production company , quest oil is\ncommitted to managing and operating our global operations in a manner that\nprotects the health and welfare of our employees , contractors , communities , and\nenvironment . we strive to comply and exceed all applicable health , safety and\nenvironmental rules , laws , regulations and internal standards .\nto accomplish this ,\nquest will ;\ncommunicate\nhealth , safety and environmental requirements with managers , supervisors ,\nemployees and contractors , and ensure that expectations are clearly\nunderstood .\nincorporate\nhealth , safety and environmental considerations into business decisions .\nutilize\nmanagement systems in conjunction with existing regulations .\ndesign and\nmanage company facilities and activities to minimize health , safety and\nenvironmental risk .\nmonitor our\noperations and that of our contractors by evaluating performance against\nsystems , procedures and regulations , while simultaneously providing a\nfoundation for continuous improvement .\nencourage\noperating partners to achieve levels of operations that are consistent with\nquest ' s established health , safety and environmental standards .\nprovide\nresources and training to develop and properly implement health , safety and\nenvironmental policies , management systems , programs and procedures .\ncommunicate and\nrespond openly to internal and external health , safety and environmental\nconcerns .\nparticipate in\nefforts to enhance knowledge and improve technology , laws and regulations that\npromote sustainable energy production .\nnorth american oil\nand gas exploration\nquest\noil corporation regards north america as their primary target for oil and gas\nprojects at this stage , and are currently involved in negotiations with several\nsignificant properties in both canada and the united states .\nquest\noil corp . is actively pursuing a select group of valuable north american oil and\ngas companies , with established revenues . the north american market provides a\npolitically and economically stable environment , with exceptional\ninfrastructure , thus providing greater shareholder value for stock holders . in\naddition , north america is the largest consumer of oil gas in the world ,\nwhich ensures that the market in this region will remain strong for many\nyears .\ntechnology\nthe\ndevelopment and utilization of technology in the exploration , extraction and\nproduction of oil and gas is critical , and quest oil regards this sector a\nprimary focus of the company .\nquest\noil is currently exploring the acquisition of technology assets which aid in the\nforecasting , development and impact of oil and gas exploration . the need for\nmore efficient methods of exploration and extraction provide will quest with a\ndistinct advantage in the future oil and gas market .\nthe\ngrowing need for technological development in the industry which measures and\nforecasts the environmental impact of oil and gas exploration is obvious . quest\noil will fill this need , and create a distinct advantage in the oil and gas\nmarket as a result .\nfor\nmore info and powerpoint presentation , please visit www . otclive . com / qoil . htm\ndisclaimer :\ntri - state capital\nfeature stock reports are intended to be stock ideas , not recommendations .\nplease do your own research before investing . it is crucial that you at least\nlook at current sec filings and read the latest press releases . information\ncontained in this report was extracted from current documents filed with the\nsec , the company web site and other publicly available sources deemed reliable .\nfor more information see our disclaimer section , a link of which can be found on\nour web site . this document contains forward - looking statements , particularly as\nrelated to the business plans of the company , within the meaning of section 27 a\nof the securities act of 1933 and sections 21 e of the securities exchange act of\n1934 , and are subject to the safe harbor created by these sections . actual\nresults may differ materially from the company ' s expectations and estimates .\nthis is an advertisement for qoil . the purpose of this advertisement , like any\nadvertising , is to provide coverage and awareness for the company . the\ninformation provided in this advertisement is not intended for distribution to ,\nor use by , any person or entity in any jurisdiction or country where such\ndistribution or use would be contrary to law or regulation or which would\nsubject us to any registration requirement within such jurisdiction or country .\n1998 - 2005\ntristatecapital . com all rights reserved . tri - state capital is not a\nregistered broker / dealer or financial advisor , nor do we hold ourselves out to\nbe . all materials presented on our web site and individual reports released to\nthe public through this web site , e - mail or any other means of transmission are\nnot to be regarded as investment advice and are only for informative purposes .\nbefore making a purchase or sale of any securities featured on our web site or\nmentioned in our reports , we strongly encourage and recommend consultation with\na registered securities representative . this is not to be construed as a\nsolicitation or recommendation to buy or sell securities . as with any stock ,\ncompanies we select to profile involve a degree of investment risk and\nvolatility . particularly small - caps and otc - bb stocks . all investors are\ncautioned that they may lose all or a portion of their investment if they decide\nto make a purchase in any of our profiled companies . past performance of our\nprofiled stocks is not indicative of future results . the accuracy or\ncompleteness of the information on our web site or within our reports is only as\nreliable as the sources they were obtained from . the profile and opinions\nexpressed herein are expressed as of the date the profile is posted on site and\nare subject to change without notice . no investor should assume that reliance on\nthe views , opinions or recommendations contained herein will produce profitable\nresults . tri - state capital may hold positions in securities mentioned\nherein , and may make purchases or sales in such securities featured on our web\nsite or within our reports . in order to be in full compliance with the\nsecurities act of 1933 , section 17 ( b ) , tri - state capital will disclose in\nit ' s disclaimer , what , if any compensation was received for our efforts in\nresearching , presenting and disseminating this information to our subscriber\ndatabase and featuring the report on the tri - state capital web site .\ntri - state capital has been compensatedeight thousand dollars by a\nthird party for its efforts in presenting the qoil profile on its web site and\ndistributing it to its database of subscribers as well as other services .\ntri - state capital may decide to purchase or sell shares on a voluntary\nbasis in the open market before , during or after the profiling period of this\nreport . as of the profile date , no shares have been sold . information presented\non our web site and within our reports contain \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and section 21 e\nof the securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs , plans ,\nprojections , objectives , goals , assumptions or future events or performance are\nnot statements of historical fact and may be \" forward looking statements . \"\nforward looking statements are based on expectations , estimates and projections\nat the time the statements are made that involve a number of risks and\nuncertainties which could cause actual results or events to differ materially\nfrom those presently anticipated . forward looking statements in this action may\nbe identified through the use of words such as expects , will ,\nanticipates , estimates , believes , or that by statements indicating certain\nactions may , could , or might occur .\nthe reader should\nverify all claims and do their own due diligence before investing in any\nsecurities mentioned . investing in small cap securities is speculative and\ncarries a high degree of risk .\nwe encourage our\nreaders to invest carefully and read the investor information available at the\nweb sites of the securities and exchange commission ( sec ) at :\nhttp : / / www . sec . gov and / or the national association of\nsecurities dealers ( nasd ) at http : / / www . nasd . com . readers can review all public filings\nby companies at the sec ' s edgar page . the nasd has published information on how\nto invest carefully at its web site .\n350 5 th ave . , ste . 630 new york , ny 10118 this e - mail message is an advertisement and / or solicitation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.323+0000", "entityId": 5631, "properties": {"text": "Subject: important news\nhey visioson @ hpp . za . net ,\ndownload popular programs from our site :\nget back to you later ,\neduardo baez\ni need to get a pedicure . my feet smell and itch .\n1 .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.328+0000", "entityId": 5632, "properties": {"text": "Subject: mix , rip and burn like a pro . download realplayer plus now .\nadvanced cd burning rip , mix and burn cds and mp 3 s faster at 320 kbps .\nadvanced video controls customize your video experience with brightness , contrast , sharpness , and hue\ngraphic eq create the perfect sound by adjusting for input and room size with 10 - band graphic eq .\ncrossfade set up segues , close gaps between tracks , and mix like a pro .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.332+0000", "entityId": 5633, "properties": {"text": "Subject: we will guide you thru all of the answers to your questions about laser vision correction .\nthere ' s a good chance you could throw your glasses and contacts away . information for you now .\nflhdzgxo", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.339+0000", "entityId": 5634, "properties": {"text": "Subject: we will guide you thru all of the answers to your questions about laser vision correction .\nthere ' s a good chance you could throw your glasses and contacts away . information for you now .\ntuaujryt", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.347+0000", "entityId": 5635, "properties": {"text": "Subject: start shopping at costco today with a complimentary gold membership in your area .\nstart shopping at costco today with a free gold membership . we ' re giving away a limited number of gold memberships in your area .\nkklynszb", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.353+0000", "entityId": 5636, "properties": {"text": "Subject: julie invites you to her free webcam\nhi sweetness . it ' s julie cutey , from the personals service .\ni ' ve been hearing all about you and i just had to say hi .\ni want you to check out my website and read all about me too .\nmy southern accent will drive you wild\nsee the most intimate moments of my life\ni can ' t wait to hear from you cutey . ttys ,\nhttp : / / ownedboon . com / ju 43 /", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.358+0000", "entityId": 5637, "properties": {"text": "Subject: julies cam info\nhi . . . .\nmy name is julie . i am a high school senior in houston , tx .\ni ' ve made a new personal site with a webcam because i love to\nmeet new people and i also like to show off my hot body . i\nthought you may like to check it out . it ' s completely free .\nhttp : / / magnetslip . com / ju 43 /\nregards\njulie", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.367+0000", "entityId": 5638, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shippinq and quaranteed effect ! here you buy it riqht from warehouse !\nthe store is verlfied by bbb and approved by visa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.371+0000", "entityId": 5639, "properties": {"text": "Subject: perfect visual solution for your business now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buiiding a positive visual imaqe\nof your company by creatinq an outstanding iogo , presentable stationery\nitems and professionai website . these marketinq toois wili siqnificantly\ncontributeto success of your business . take a look at our work sampies , hot deal packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.376+0000", "entityId": 5640, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand these powerfui marketing toois\nwili bring a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.381+0000", "entityId": 5641, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your logo , business stationery or website done right\nnow ! fast turnaround : you will see several iogo variants in three\nbusiness days . satisfaction guaranteed : we provide uniimited amount of\nchanqes ; you can be sure : it will meet your needsand fit your\nbusiness . flexible discounts : iogo improvement , additionai formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.387+0000", "entityId": 5642, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciails has a iot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohoi ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.391+0000", "entityId": 5643, "properties": {"text": "Subject: feel insecure about your penis size ?\npenis growth patches are here !\nhttp : / / www . retdehola . com / ss /\nthe biggest shortage of all is the shortage of common sense .\nyou can tell the ideals of a nation by its advertisements .\nvirtue has its own reward , but no box office .\nthe great aim of education is not knowledge but action .\nbeware of the young doctor and the old barber .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.396+0000", "entityId": 5644, "properties": {"text": "Subject: your online sales are low because you don _ t have enough visitors ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wiil be invisibie virtuaiiy , which means efforts spent in vain .\nif you want\npeopie to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nspringmorqan _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.400+0000", "entityId": 5645, "properties": {"text": "Subject: winning notification ! ! ! ! ! ! ! ! ! ! ! !\nfrom : the director\neuropean prize award dept\nref : el 3 / 9318 / 04\nbatch : 8 / 163 / el .\nwe are pleased to inform you of the result of the lottery winners international programs held on the 30 / 12 / 2004 . your e - mail address attached to ticket number : el - 23133 with serial number : el - 123542 , batch number : el - 35 , lottery ref number : el - 9318 and drew lucky numbers 7 - 1 - 8 - 36 - 4 - 22 which consequently won in the lst category , you have therefore been approved for a lump sum pay out of us $ 2 , 500 , 000 . 00 ( two million , five hundred thousand united states dollars ) .\ncongratulations ! ! !\ndue to mix up of some numbers and names , we ask that you keep your winning information confidential until your claims has been processed and your money remitted to you . this is part of our security protocol to avoid double claiming and unwarranted abuse of this program by some participants . all participants were selected through a computer ballot\nsystem drawn from over 40 , 000 company and 20 , 000 , 000\nindividual email addresses and names from all over the world .\nthis promotional program takes place every year . this lottery was promoted and sponsored by group of successful electronic dealers . we hope with part of your winning , you will take part in our next year us $ 20 million international lottery .\nto file for your claim , please contact our paying officer :\ncontact person : mr charles carlos ( lottery director )\ntel : + 31 - 6148 - 22715\nfax : 31 847 454 390\nremember , all winning must be claimed not later than 30 th of june 2005 . after this date all unclaimed funds will be included in the next stake . please note in order to avoid unnecessary delays and complications please remember to quote your reference number and batch numbers in all correspondence .\nfurthermore , should there be any change of address do inform our agent as soon as possible . congratulations once more from our members of staff and thank you for being part of our promotional program .\nnote : anybody under the age of 18 is automatically disqualified .\nyours sincerely ,\nmrs . queensley rhoda ,\nfor management\nmail sent from webmail service at php - nuke powered site\n- http : / / yoursite . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.405+0000", "entityId": 5646, "properties": {"text": "Subject: underpriced issue with high return on equity\nthe oil and gas advisory\nnow that oil and gas has entered a long - term bul | market ,\nour speciaity in pinpointing the hottest companies of the few remaining\nundervaiued energy plays has produced soaring returns .\nemerson oi | and gas ( eogi ) is an energy developer in the us \" oil belt \"\nand in canada ' s most highiy coveted reservoirs with generating\npotentia | of millions per week .\nbreaking news ! ! !\nemerson oil and gas , inc . , ( eogi ) is pleased to announce that the\naiberta energy & utiiity board has issued license no . o 330206 for the\ncompany ' s we | | 11 - 16 - 24 - 2 the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natura | gas from the viking formation , has oi | potentia | in the\nbakken zone and gas potential in the coiony and second white specks\nzones . the viking contains natura | gas in we | | s around the acadia project\nand has the potentia | for 13 bcf gas in the reservoir under the | eases .\ngas weils in the area have caicuiated aof rates up to 14 mmcf per day .\nthe project is | ocated in eastern alberta with year round access and an\nestabiished production and equipment infrastructure . well costs are\nexpected to be $ 600 , 00 o dri | | ed , cased and compieted and the advanced\nfunds will go towards the driiling of the first well . each weil on a | ease\nearns emerson a 49 % working interest in one section .\nemerson oil and gas , inc . , ( eogi ) is pleased to announce that the land\nlease has been surveyed and acquired regarding the acadia project .\nthe acadia project consists of 15 sections in aiberta in an area that\nproduces natural gas from the viking formation , has oi | potential in the\nbakken zone and gas potential in the coiony and second white specks\nzones . the viking contains natural gas in weils around the acadia project\nand has the potentia | for 13 bcf gas in the reservoir under the leases .\ngas we | | s in the area have caicuiated aof rates up to 14 mmcf per day .\nthe project is located in eastern aiberta with year round access and an\nestabiished production and equipment infrastructure . weil costs are\nexpected to be $ 60 o , ooo dri | | ed , cased and compieted and the advanced\nfunds will go towards the dri | | ing of the first we | | . each weil on a lease\nearns emerson a 49 % working interest in one section .\nsymbol - eogi\nprice - . o 26\nthe vaiue of eogi ' s shares will skyrocket :\n1 . price charts confirm oi | prices are experiencing the strongest bul |\nmarket in a generation .\n2 . natura | gas prices have tripied in the | ast two years .\n3 . with multipie projects in high - gear and the expanding production on\nreserves worth multi - mi | | ions , eogi is selling for | ess than 1 / 4 the\nvaiue of its assets .\n4 . emerson oi | and gas speciaiizes in using new technoiogy to turn\nunproductive oi | and gas deposits into profitabie enterprises . aiready\nshares in the oil and gas sector are rising faster than the overall market .\nin fact , four of dow jones ' ten top performing industry sectors for the\npast year are energy reiated . but it ' s in the mid - sized explorers and\ndevelopers | ike emerson ( eogi ) that the biggest gains are being made . in\nthe | ast 12 months , many of these stocks made tripie and even quadruple\nreturns .\nour subscribers need to pay particuiariy close attention to undervalued\neogi shares , because it won ' t be a bargain for | ong . this smail company\nwith a comparably small market value , is sitting on a bonanza of oi |\nand gas reserves - an unrecognized bonus for investors especialiy with\nthe daiiy jump in energy prices .\nbut al | that wi | | change in a few short weeks , as these reserves move\ninto production , bringing an explosion of cash that is expected to\ncapture the attention of the market , and have an equa | | y expiosive effect on\nthe share price .\nwhat wi | | the cash flow from these projects do for the price of emerson\noil and gas ' shares ? well we do know this - the great thing about\ninvesting in eogi is that your gains don ' t depend on further increases in\nthe price of oil and gas . even if energy prices stay flat , or decline\nslightiy , you will sti | | make a very heaithy return . of course , energy\nprices are expected to continue their meteoric rise over the next year\nor so as predicted , meaning the value of eogi ' s assets and earnings\nwill soar even higher . in that case , the reward for investors will be\nstaggering .\noverall , we consider eogi to be one of the | ast outstanding energy\nplays in the oil and gas sector . once this discovery has been reaiized ,\neogi shares wi | | surge sharply on heavy investor attention . we have\nidentified this discovery for immediate accumulation . eogi ' s oil and\ngas reserves are wel | established and are going into massive\nproduction . eariy investors wil | secure optimum gains , and any additiona | news in\nthis area will reaily turn up the heat , causing us to revise our\ntargets upward in next week ' s builetin .\noil and gas advisory ( oga ) is not a investment expert . certain\nstatements contained in this newsietter may be future - looking statements within\nthe meaning of the private securities litigation reform act of 1995 .\nsuch terms as expect , beiieve , may , wil | , and intend or similar terms may\nidentify these statements . past - performance is not an indicator of\nfuture - resuits . this is not an expert to acquire or seil securities . oga is\nan independent pubiication that was paid fifteen thousand doliars by a\nthird party for the continuing coverage and dissemination of this\ncompany information . investors are suggested to seek proper guidance\nfrom a financial expert . investors should use the information provided in\nthis newsietter as a starting point for gathering additiona |\ninformation on the profiied company to a | | ow the investor to form their own\nopinion regarding investment .\nif you wish to stop future mailings , or if you feel you have been\nwrongfuily placed in our membership , piease send a blank e mai | with no\nthanks in the subject to daily _ 4 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.410+0000", "entityId": 5647, "properties": {"text": "Subject: erectile dysfunction ruining your sex life ?\nmultiple male orgasms\nmore info here\nbreakup plp credulity aph irreplaceable ns faust lag\nbilinear xyu reveal kbv altar lmt embedder jze mission cz caviar xv\nprecious zex clamorous yz offertory pqe polemic gb filth rb cozen bh dun tqz cosy cfb\nno\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.414+0000", "entityId": 5648, "properties": {"text": "Subject: otc gdvi - the momentum continues - gdvi website debute\notc bbalert gdvi\nnews update : global diversified industries debutes brand new website !\nwww . gdvi . net\notc bb\nalert\nspectacular operating results momentum\ncontinues\nsales projections for next 12 months surpasses $ 20 million\n99 . 8 %\nrevenue increase\n278 % net\nincome increase\n154 %\nstockholders equity increase\n79 %\nincrease in assets\n$ 8\nmillion order backlog\n$ 50\nmillion manufacturing capacity\noverview\nglobal diversified industries operates in the modular\nbuilding construction industry , and strategically targets the\ncalifornia education sector . gdvi is strategically located in\ncentral\ncalifornia on 16 acres with a 100 , 000 square foot state - of - the - art\nmanufacturing facility .\nthroughout 2003 and 2004 the company focused on building\nits infrastructure through acquisitions , development of a\nstate - of - the - art manufacturing facility , and by securing the\nrequisite financing facilities to fuel business growth .\nthrough the combination of its new facility ( $ 50 million\ncapacity ) , the increased demand for portable buildings and the state\nof\ncalifornia ' s bond approvals , gdvi has become well positioned to\nbecome one of the dominant leaders in modular manufacturing on the\nwest coast .\ngdvi should benefit greatly from the $ 12 . 1 billion\nschool improvement bond that is expected to be passed by\ncalifornia voters next month ( march ) . this presents , in our opinion\nan opportunity for early investors of gdvi to also benefit before\nthe mainstream investor realizes who the benefactors are and\nsubsequently invests in those companies .\nglobal diversified has taken numerous strategic\ndevelopment steps throughout 2003 and 2004 , including generating\nstrong revenues as well as profits and is now poised for explosive\ngrowth in 2005 . the company is led by a strong management team with\nprevious success in building companies into $ 50 million per annum\nbusinesses .\nin the past year gdvi has exceeded its own sales revenue\nprojections , renewed its piggyback contract , received state\napprovals on engineered product designs , started a new credit\nfacility and opened its new 100 , 000 square foot manufacturing\nfacility . the company will continue to seek new acquisition\ncandidates through its aggressive growth plan .\nprofile\ngdvi is a holding company that currently\noperates two wholly owned subsidiaries , mbs construction inc . , a\nmodular contractor specializing in modular construction site work\nand renovation and global modular , inc . , a sales , marketing and\nmanufacturing of modular type structures .\nits principal customer base is currently educational\n( public and private schools , universities , etc . ) , child - care and\nmunicipality sectors . its product lines consist of a variety of\nportable classroom designs , including both single - story and two -\nstory floor plans . global modular ' s portable classroom structures\nare engineered and constructed in accordance with pre - approved\nbuilding plans , commonly referred to as p . c . ' s or pre - checked plans , that conform to structural and seismic safety specifications\nadministered by the california department of state architects ( dsa ) .\nglobal modular also enjoys the benefit of providing\neducational customers with products contracted under a piggyback\nclause . the state of\ncalifornia allows school districts to canvass proposals from modular\nclassroom vendors under a bidding process where the successful\nbidder can provide other public school districts and municipalities\nportable classrooms under a piggyback contract issued by the\noriginating school district . this process saves school districts\nvaluable time and resources from the necessity of soliciting bids .\na modular vendor who possesses a piggyback contract containing competitive pricing and a variety of design options may\nhave access to future business for up to five years , depending on\nthe term of the piggyback contract .\nthe strategic focus on california schools\nsince 1998 ,\ncalifornia legislation has required that at least 20 % of all new\nclassrooms constructed with state funds be portable structures .\nthere are five compelling reasons for this trend :\nmodular\nclassrooms are faster to construct ( as quickly as 2 weeks )\nthey cost\nsignificantly less ( as low as $ 30 , 000 vs . $ 100 , 000 )\nthey offer\ngreater flexibility for use compared to conventional buildings\nthey are easier\nto finance\nthey provide\nfinancing incentives\nto cope with population growth , the state department of\neducation estimates that\ncalifornia will need more than 2 , 500 classrooms each year for the\nnext four years , which equates to more than 10 , 000 classrooms .\ndue to the current and projected budget cuts throughout\nthe california education sector , public and private schools are\nexpected to turn to portable / modular construction to fulfill their\nadditional classroom requirements over the next four years .\nthe california schools budget crisis\non\nnovember 5 , 2002 a $ 13 . 2 billion school facilities improvements bond\nproposal ( proposition 47 ) was passed by\ncalifornia\nvoters .\nthis bond measure passage does not include an approximate\n$ 9 . 4 billion worth of local bond measures passed by various school\ndistricts throughout the state .\na second bond measure worth $ 12 . 1 billion went before the\nvoters on the march 2004 .\nthese bond measures are about three times higher than the\nrecord $ 9 . 2 billion bond\ncalifornia voters approved in 1998 . the revenue generated from these\nbond measures will be used for school modernization programs , which\ninclude requirements for relocatable classrooms and modular\nclassroom construction and renovations .\nmoney from the bonds will help overcrowded public and\nprivate schools ; design upgrades and expand building space at\ncommunity colleges and other institutions of higher learning\nthroughout\ncalifornia .\ngdvi business infrastructure\namong global modular ' s asset base is its integrated ,\nstate - of - the - art , automated manufacturing process which includes\nequipment , raw material and marketing collateral that are\nspecifically designed for the high capacity fabrication of modular\nstructures .\ngdvi employs a workforce of 60 employees and is looking\nto add to its workforce as demand increases .\noperates out of a sixteen acre site with a 100 , 000 square\nfoot operating structure .\nwholly owned subsidiary ( global modular inc . ) markets ,\ndesigns and manufactures the buildings\nwholly owned subsidiary ( mbs corporation ) handles\ninstallation and building renovation .\nsymbol otc . bb\ngdvi\nrecent price 13 . 5 cents\nmanagement team\nphilip hamilton , ceo and president\nmr . hamilton has an extensive and very successful\nbackground in modular manufacturing . from 1996 to feb 2000 he served\nas chairman and ceo of pacesetter industries inc . he built this\ncompany from inception into one of\ncalifornias\nlargest manufacturers , producing and installing thousands of schools\nand commercial buildings . under his leadership , pacesetter\nindustries moved into a 5 , 500 , 000 sq . ft . facility in atwater ,\ncalifornia with branch sales offices throughout the state . the\ncompany employed a staff of over 650 employees and had annual sales\nof $ 50 , 000 , 000 .\nadam de bard , vice president\nmr . de bard has over 6 years of experience in the\nmanufacturing and business sectors . from 1997 to 2000 he served as\nvice president and chief\ninformation officer of pacesetter industries .\nronald kilpatrick , director of finance\nmr . kilpatrick has 36 years experience in both domestic\nand international development and management of major corporations .\nhe is a managing partner of pacific rim capital llc which provides\nventure capital to projects in the\npacific rim .\nrecent headlines\nglobal diversified industries , inc . commencing efforts to\nincrease its u . s . based investor and public relations visibility\npr newswire ( tue 5 : 00 am )\nglobal diversified industries , inc . modular division secures new\norder worth more than $ 3 million for immediate delivery\npr newswire ( thu , jun 9 )\nwallst . net airing all - new , exclusive audio interviews with gdvi\nand geoi\npr newswire ( tue , jun 7 )\nwallst . net airing exclusive audio interviews with gdvi and xle\npr newswire ( thu , jun 2 )\nglobal diversified industries , inc . acquires valuable assets\nfrom california modular company\npr newswire ( thu , may 26 )\nglobal diversified industries , inc . modular division\nimplementing its fourth production line\npr newswire ( thu , may 19 )\ntalkingstocks . com announces interview with philip hamilton ,\npresident and ceo of global diversified industries , inc .\nprimezone media network ( tue , may 17 )\nstockguru . com initiates profile coverage of global diversified\nindustries , inc .\nprimezone media network ( mon , may 16 )\nglobal diversified industries ' modular division billings total\n$ 1 . 4 million in april ; experiencing largest production schedule\nsince company ' s founding\npr newswire ( tue , may 3 )\nglobal diversified industries , inc . modular division receives\nrepeat order based on superior prior performance\npr newswire ( wed , apr 20 )\nmore headlines for gdvi . ob . . .\ngdvi manufacturing infrastructure\ngdvi has created a turnkey manufacturing process with\nexperienced professionals handling every aspect of each\nmanufacturing project . global ' s integrated service approach provides\nthe company with a distinct advantage over its competitors in term\nof efficiency and cost effectiveness .\nvia 3 wholly owned subsidiaries , gdvi delivers the\nfollowing in - house services :\ndesign ,\nengineering and planning\nsite\npreparation\nmanufacturing\nand construction\ndelivery ,\ninstallation , and relocation\nancillary\ninterior and exterior services\ncustomer\nservice and support\ncontacts\ngdvi - global diversified industries inc .\n1200\nairport drive\nchowchilla ,\nca 93610\ntel : ( 559 ) 665 5800\ninvestor relations contact\nmr . paul knopick\ntel : ( 949 ) 707 - 5365\npknopick @ . com\nstock quotes\nhttp : / / finance . yahoo . com / q ? s = gdvi . ob\nthis report is for informational purposes only , and is neither a solicitation to buy nor an offer to sell securities . investment in low - priced small and micro - cap stocks are considered extremely speculative and may result in the loss of some or all of any investment made in these companies . expedite is not a registered investment advisor or a broker - dealer . information , opinions and analysis contained herein are based on sources believed to be reliable , but no representation , expressed or implied , is made as to its accuracy , completeness or correctness . the opinions contained herein reflect our current judgment and are subject to change without notice . expedite assumes no responsibility for updating the information contained herein regardless of any change in gdvi ' s financial or operating condition . as expedite has received compensation for this report , and will benefit from any increase in share price of the advertised company , there is an inherent conflict of interest in our statements and opinions . expedite accepts no liability for any losses arising from an investor ' s reliance on , or use of , this report . gdvi will require additional capital to realize its business plan and continue as a going concern . expedite has been hired by a third party consultant , and is contracted to receive $ 5 , 000 . expedite and its affiliates or officers may buy hold or sell common shares , of mentioned companies , in the open market or in private transactions at any time without notice . certain information included herein is forward - looking within the context of the private securities litigation reform act of 1995 , including , but not limited to , statements concerning manufacturing , marketing , growth , and expansion . the words \" may , \" \" would , \" \" will , \" \" expect , \" \" estimate , \" \" anticipate , \" \" believe , \" \" intend , \" and similar expressions and variations thereof are intended to identify forward - looking statements . such forward - looking information involves important risks and uncertainties that could affect actual results and cause them to differ materially from expectations expressed herein .\nglobal diversified industries , inc . 1200 airport dr . chowchilla , ca 93610 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.419+0000", "entityId": 5649, "properties": {"text": "Subject: picks from analyst with high - level precision\nsmall - cap stock finder\nnew developments expected to move western sierra mining , inc . stock\nfrom $ o . 70 to over $ 4 . oo\nwesternsierramining . com\nwestern sierra mining is a company on the move , fast ! big news is out !\nbig business is afoot for wsrm !\nread on to find out why wsrm is our top pick this week .\n* western sierra mining has a very profitable business mode | in which\nthey avoid the highest cost associate with mining : expioration .\nessentia | | y , wester sierra operates mines on sites that have been previously\nexplored and found to be \" too small \" for the | argest mining companies ,\nyet stil | produce handsome profits .\n* the global mining industry boom wi | | continue for the foreseeable\nfuture due to the impact of china - driven demand on commodity prices and\nlong suppiy - response lead times .\n* news ! news ! news ! read on to find out why we expect wsrm to take off\nthis week !\nhere is recent news on the company :\nphoenix - - ( business wire ) - - june 15 , 2 oo 5 - - western sierra mining corp .\n( pink sheets : wsrm - news ) announced today that the board of directors\nhas approved and authorized a 2 - for - 1 forward spiit of its issued and\noutstanding common s - tock to al | shareholders of record as of june 26 ,\n2 oo 5 .\nthe company stated that the reason for the split was to a | | ow\nadditional investors to participate in the long - term goals and objectives of\nwestern .\nphoenix - - ( business wire ) - - june lo , 2 oo 5 - - western sierra mining ( pink\nsheets : wsrm - news ) and oretech inc . ( pink sheets : orte - news )\nannounced today that their respective boards of directors have agreed to enter\ninto an agreement to develop the silver piume and pittsburg mines\n| ocated in coiorado .\ncommenting on the proposed transaction , the president of western sierra\nmining , michael chaffee , said , \" the new aiignment with oretech wi | |\naliow each of the companies to utiiize their specific expertise to the\nmaximum benefit of the other . oretech is trying to focus on developing its\npropriety extraction technology and western is expanding its mining\nactivities in the u . s . we have started our due diiigence on the property\nand look forward to taking a proposal back to oretech by the end of the\nmonth .\nphoenix - - ( business wire ) - - june 3 , 2005 - - western sierra mining ( pink\nsheets : wsrm - news ) announced today that it has signed a letter of intent\nwith asdi corp . providing wsrm the right to develop the asdi property\n| ocated in crescent vailey at battie mountain , nev .\nwe cannot stress enough the significance of this news . a s - tock split\ncan oniy mean one thing ; good business ! with the split date set at june\n26 , now is obviously the time to get in . with repsect to the other\nnews , that a smal | company such as this wouid have the rights to these\nrich properties speaks voiumes for their management and near - future\nearnings . that they wouid be so fortunate as to be involved with an industry\npioneer such as oretech is nothing short of extraordinary .\nthese fortuitous events have earned wsrm our highly recommendation\nsymbol : ( wsrm )\ncurrent price : 0 . 70\nshort term target price : 4 . 60\n12 month target price : 8 . 90\n* * * news from the industry * * *\n* mining s - tocks have outperformed both the s & p 5 oo and the dow jones\nindustrial average over the last three years .\n* profits by mining companies have doubled for the second year in a\nrow . return on equity has increased nearly three - foid over the past two\nyears\n* price waterhouse coopers calis for \" . . . another bumper year for the\ngiobal mining industry in 2 oo 5 . \" they go on to say , \" the sustained\nupturn in commodity prices has caught investors ' attention , creating a dash\nfor mining s - tocks . add the unprecedented profits and free cash flows\nand we have a very buoyant industry . \"\nfor more information read , mine - enter the dragon , by price waterhouse\ncoopers , located at pwcglobal . com\ndisclaimer :\ninformation within this email contains \" forward | ooking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or invoive discussions with respect to predictions ,\nexpectations , beliefs , pians , projections , objectives , goals ,\nassumptions or future\nevents or performance are not statements of historica | fact and may be\n\" forward | ooking statements . \" forward | ooking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which couid cause\nactual results or events to differ materialiy from those presentiy\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" wil | , \" \" anticipates , \" \" estimates , \" \" believes , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" could , \" or \" might \" occur .\nas with many micro - cap s - tocks , today ' s company has additional risk\nfactors worth noting . those factors inciude : a | imited operating\nhistory ,\nthe company advancing cash to reiated parties and a sharehoider on an\nunsecured basis : one vendor , a related party through a majority\ns - tockholder , suppiies ninety - seven percent of the company ' s raw\nmateriais :\nreiiance on two customers for over fifty percent of their business and\nnumerous related party transactions and the need to raise capita | .\nthese\nfactors and others are more fully spelied out in the company ' s sec\nfiiings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states ail material facts or does not omit a material fact\nnecessary\nto make the statements therein not misleading . ail information\nprovided within this email pertaining to investing , stocks , securities\nmust be\nunderstood as information provided and not investment advice . the\nrocket stock report advises al | readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the materia | within\nthis report shall be construed as any kind of investment advice or\nsoiicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan | ose al | your mone * y by investing in this stock . the pubiisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers shouid not view information herein as | ega | , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspeciaily selected to be referenced based on the favorable performance\nof\nthese companies . you would need perfect timing to achieve the results\nin the examples given . there can be no assurance of that happening .\nremember , as aiways , past performance is never indicative of future\nresults and a thorough due diligence effort , including a review of a\ncompany ' s fiiings , should be compieted prior to investing . in\ncompliance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscioses the receipt of tweive thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiliate sharehoider for\nthe\ncirculation of this report . gem , inc . has a position in the stoc * k\nthey\nwi | | sel | at any time without notice . be aware of an inherent conflict\nof interest resuiting from such compensation due to the fact that this\nis a paid advertisement and we are confiicted . all factual information\nin this report was gathered from pubiic sources , including but not\n| imited to company websites , sec fiiings and company press releases .\nthe\nrocket sto * ck report beiieves this information to be reiiabie but can\nmake\nno guarantee as to its accuracy or completeness . use of the material\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.429+0000", "entityId": 5650, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visual identity .\nlogodentity offers creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand these powerful marketing toois\nwiil brinq a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a click\naway from your future success . ciick here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.435+0000", "entityId": 5651, "properties": {"text": "Subject: greatly improve your stamina\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud press\nhere\nso much time had been consumed at the desert oasis that he felt he must\nnow hasten if he wished to reach home by saturday afternoon ; so , having\nquickly come to a decision , he turned the indicator and began a swift flight\ninto the east\naddress listed in\nabove site\nbut i am one of the greatest humbug wizards that ever lived , and you\nwill realize this when we have all starved together and our bones are\nscattered over the floor of this lonely cavei don ' t believe we ' ll\nrealize anything , when it comes to that , remarked dorothy , who had been deep\nin thought for several hours he traveled above the great desert of gobi , but\nby noon signs of a more fertile country began to appear , and , dropping to a\npoint nearer the earth , he was able to observe closely the country of the\nchinese , with its crowded population and ancient but crude civilization\nthen he came to the great wall of china and to mighty peking , above which\nhe hovered some time , examining it curiously\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.443+0000", "entityId": 5652, "properties": {"text": "Subject: de la part des enfants ama\nrue des martyrs , avenue delafosse\n01 b p 124 abidjan 01\nrepublique de cote d ' ivoire\ncontact : ( 00225 ) 05 80 75 51\nproposition d ? affaires\nbonjour ,\navec respect et humilit? , j ? ai d?cid? de vous informer\nd ? une proposition d ? affaires qui sera tr?s b?n?fique\npour nous deux .\nje me nomme ama marie , la fille de feu\nchef ama thomas , assassin? par les forces rebelles .\navant sa mort , mon p?re ?tait un homme d ' affaire et directeur de la soci?t? de caf? - cacao .\ndeux jours avant son assassinat , mon p?re\ns ? est arrang? pour nous remettre mon fr?re et moi\ndes documents qui prouve qu ? il a d?pos? une somme d ? argent d ? une valeur ( de 5 million de dollars ) dans une soci?t? de banque ici en cote d ' ivoire .\nnous voulons prendre possession de cet argent qui fait partir de notre h?ritage .\nmais pour le faire j ? aurais besoin de la collaboration d ? un partenaire ?tranger .\net c ? est ce partenaire qui pourra m ' aider .\nainsi je pourrais , venir dans votre pays pour\ncontinuer mes ?tudes .\nn ? ayez pas d ? inqui?tude , car tous les documents\nrelatifs ? ce tr?sor sont entre mes mains . de m?me que\nl ? adresse de la soci?t? de banque . j ? attends\nseulement votre accord pour vous les remettre .\nsi tout se passe comme pr?vu vous recevez 15 % de la\nsomme totale . nous nous sommes mis d ? accord aussi\npour vous donner 5 % de la valeur du tr?sor pour\nrembourser les d?penses que vous aurez engag?s pendant\nla transaction .\nmaintenant que vous avez compris le sens de notre\nproposition , je souhaite que tout se passe vite . car\nle temps n ? est pas ? notre faveur . ce que nous\nexigeons de vous c ? est la fid?lit? et la confiance .\nama marie et son fr?re ama jules .\nmerci que dieu vous benisse\ncontact : ( 00225 ) 05 80 75 51", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.450+0000", "entityId": 5653, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it will be invisible virtuaiiy , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visibie in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest reqards ,\nseeblackweil _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.457+0000", "entityId": 5654, "properties": {"text": "Subject: from brand names to generics , from overexpenditures to great sav . vings .\nwith a tight budget , can you gain effective alleviations ? there are a lot of\nvvays to help you out .\nrequire quality curatives on mild to severepain , sleepingdisorder ,\nmenscare , womenscare , overvveight or other afflictions ? uncover the finest\nofferings .\nour medzone has a better option for sh . oppers . with our range of generic\nequivalent , it is easier to gain the mitigations .\nbrovvse our collections if you do vvant to sa . ve on medicaments .\nthe latest info . about the shipments will be shovvn in real . time .\nvov ! lead you to simple sav . vings .\nbriar , whil their uprightness ; protesting that she was convinced of sailors\nhaving\nand nearly turning his back to them all , was engrossed by writing .\ne i was sent in to ge t my tea . when he was gone , m\ny mother as more worth and warmth than any other set of men in england ;\nked me all about the day i 1 had had , and what 7 they had said and done .\ni men tioned what they had said a", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.461+0000", "entityId": 5655, "properties": {"text": "Subject: please read : newsletter regarding smallcaps\nsmall - cap stock finder\nnew developments expected to move western sierra mining , inc . stock\nfrom 0 . 70 to over 4 . 00\nwesternsierramining . com\nwestern sierra mining is a company on the move , fast ! big news is out !\nbig business is afoot for wsrm !\nread on to find out why wsrm is our top pick this week .\n* western sierra mining has a very profitable business model in which\nthey avoid the highest cost associate with mining : exploration .\nessentially , wester sierra operates mines on sites that have been previously\nexplored and found to be \" too small \" for the largest mining companies ,\nyet still produce handsome profits .\n* the global mining industry boom will continue for the foreseeable\nfuture due to the impact of china - driven demand on commodity prices and\nlong supply - response lead times .\n* news ! news ! news ! read on to find out why we expect wsrm to take off\nthis week !\nhere is recent news on the company :\nphoenix - - ( business wire ) - - june 15 , 2005 - - western sierra mining corp .\n( pink sheets : wsrm - news ) announced today that the board of directors\nhas approved and authorized a 2 - for - 1 forward split of its issued and\noutstanding common s - tock to all shareholders of record as of june 26 ,\n2005 .\nthe company stated that the reason for the split was to allow\nadditional investors to participate in the long - term goals and objectives of\nwestern .\nphoenix - - ( business wire ) - - june 10 , 2005 - - western sierra mining ( pink\nsheets : wsrm - news ) and oretech inc . ( pink sheets : orte - news )\nannounced today that their respective boards of directors have agreed to enter\ninto an agreement to develop the silver plume and pittsburg mines\nlocated in colorado .\ncommenting on the proposed transaction , the president of western sierra\nmining , michael chaffee , said , \" the new alignment with oretech will\nallow each of the companies to utilize their specific expertise to the\nmaximum benefit of the other . oretech is trying to focus on developing its\npropriety extraction technology and western is expanding its mining\nactivities in the u . s . we have started our due diligence on the property\nand look forward to taking a proposal back to oretech by the end of the\nmonth .\nphoenix - - ( business wire ) - - june 3 , 2005 - - western sierra mining ( pink\nsheets : wsrm - news ) announced today that it has signed a letter of intent\nwith asdi corp . providing wsrm the right to develop the asdi property\nlocated in crescent valley at battle mountain , nev .\nwe cannot stress enough the significance of this news . a s - tock split\ncan only mean one thing ; good business ! with the split date set at june\n26 , now is obviously the time to get in . with repsect to the other\nnews , that a small company such as this would have the rights to these\nrich properties speaks volumes for their management and near - future\nearnings . that they would be so fortunate as to be involved with an industry\npioneer such as oretech is nothing short of extraordinary .\nthese fortuitous events have earned wsrm our highly recommendation\nsymbol : ( wsrm )\ncurrent price : 0 . 70\nshort term target price : 4 . 60\n12 month target price : 8 . 90\n* * * news from the industry * * *\n* mining s - tocks have outperformed both the s & p 500 and the dow jones\nindustrial average over the last three years .\n* profits by mining companies have doubled for the second year in a\nrow . return on equity has increased nearly three - fold over the past two\nyears\n* price waterhouse coopers calls for \" . . . another bumper year for the\nglobal mining industry in 2005 . \" they go on to say , \" the sustained\nupturn in commodity prices has caught investors ' attention , creating a dash\nfor mining s - tocks . add the unprecedented profits and free cash flows\nand we have a very buoyant industry . \"\nfor more information read , mine - enter the dragon , by price waterhouse\ncoopers , located at pwcglobal . com\ndisclaimer :\ninformation within this email contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , plans , projections , objectives , goals ,\nassumptions or future\nevents or performance are not statements of historical fact and may be\n\" forward looking statements . \" forward looking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which could cause\nactual results or events to differ materially from those presently\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" will , \" \" anticipates , \" \" estimates , \" \" believes , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" could , \" or \" might \" occur .\nas with many micro - cap s - tocks , today ' s company has additional risk\nfactors worth noting . those factors include : a limited operating\nhistory ,\nthe company advancing cash to related parties and a shareholder on an\nunsecured basis : one vendor , a related party through a majority\ns - tockholder , supplies ninety - seven percent of the company ' s raw\nmaterials :\nreliance on two customers for over fifty percent of their business and\nnumerous related party transactions and the need to raise capital .\nthese\nfactors and others are more fully spelled out in the company ' s sec\nfilings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states all material facts or does not omit a material fact\nnecessary\nto make the statements therein not misleading . all information\nprovided within this email pertaining to investing , stocks , securities\nmust be\nunderstood as information provided and not investment advice . the\nrocket stock report advises all readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report shall be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose all your mone * y by investing in this stock . the publisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as legal , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecially selected to be referenced based on the favorable performance\nof\nthese companies . you would need perfect timing to achieve the results\nin the examples given . there can be no assurance of that happening .\nremember , as always , past performance is never indicative of future\nresults and a thorough due diligence effort , including a review of a\ncompany ' s filings , should be completed prior to investing . in\ncompliance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiliate shareholder for\nthe\ncirculation of this report . gem , inc . has a position in the stoc * k\nthey\nwill sell at any time without notice . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . all factual information\nin this report was gathered from public sources , including but not\nlimited to company websites , sec filings and company press releases .\nthe\nrocket sto * ck report believes this information to be reliable but can\nmake\nno guarantee as to its accuracy or completeness . use of the material\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.466+0000", "entityId": 5656, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom desiqn of logos ,\nstationery and web - sites . under our carefui hand these powerfui marketinq tools\nwili bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a ciick\naway from your future success . ciick here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.473+0000", "entityId": 5657, "properties": {"text": "Subject: ready to earn more now\ntake the next step\nlearn how you can earn a high six - figure income with your own\nreal estate business .\nif you have passion , desire and you are seriously looking to generate a\nvery substantial income in the next 3 to 6 months , simply reply to the\nemail address below and one of our associates will contact you shortly .\nbigprofithomebiz @ yahoo . com\n( be sure to leave your name , phone and best time to call ) .\nremember : this powerful business could change your life ? financially .\nimmediately\nif you ' re not interested\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.483+0000", "entityId": 5658, "properties": {"text": "Subject: reach 100 , 000 brokers charset = windows - 1252 \" >\ndear industry professional ,\nthe importance of the\ninternet and the opportunities it can afford a company are unparalleled in\nthe year 2005 and beyond . access to information technology\nis critical not only to reach thousands of new prospects with\nrelative ease but to continue to streamline your companies\nbottom line . properly utilizing email marketing reduces the more\nsignificant costs of print media , advertising , faxing ,\nmailing campaigns and more\nwhile producing even better results than all of the\nabove . if your company is\nready to expand to the next level , let us help you\nbroaden your horizons with\nour products and services .\nwe have been providing email\nmarketing and other services since 2001 . we are empowered with diverse\nexperience in multiple facets of internet marketing\nand emailing and are based in northern california . our goal is to help\ncompanies reach more prospective clients and / or customers for their product\nor service thus expanding revenues and client base .\ncustomers who have already\npurchased our data are reporting fantastic results !\nif you want to reach\nthousands of potential clients , this is the\ninformation resource for you .\nour most\npopular lists are as follows :\nusa mortgage\nlist this database currently contains over 100 , 000 mortgage\nbroker / originator email contacts across the us . purchase all records for\nonly $ 1450 . 00\nusa realtor\nlist this database contains over 100 , 000 realtor brokers agents email\ncontacts across the us . purchase all records for only $\n1450 . 00\nbroadcast email services to deliver your message with no hassle\nso you can focus on the call backs . we can deliver your email message\nfor you with our fully customizable and scalable opt in email landing\nplatforms where your new prospect will give us additional inforrmation\nthat will pre qualify their needs based on your criteria . your hot\nprospects will be forwarded to you in real\ntime . for a limited time we are providing free email blasts to\nnew customers . purchase a list from us and well send the entire\nlist free of\ncharge , we ' ll also delete any unsubscribes or removes from the list\nbefore we send it back to you . if you want to handle that aspect\nin - house in the fuure , prospector will set your company up with the latest email\nsoftware technology and provide tech support at no cost to to you as a valued\ncustomer\nif you need custom email\ncontent or would like us to develop a custom email platform\nthat will give you fantastic results please ask me for more\ndetails .\nour lists are consistently\nupdated with new names to keep them fresh . prospector continually\ninitiates interesting opt in campaigns and web marketing vehicles to\nobtain quality data . our primary goal is to help companies effectively\nexpand their interests from a wholesale perspective . if you elect to work\nwith us , you can be assured that we are committed to achieving results for\nyour product or service . please let me know if you have any questions\nabout what we have to offer .\nprospector communications\nwants your email campaign to be a success .\nsincerely ,\nmatt\nclark prspctl @ cyberverse . com\nprospector\ncommunications www . goldleads . net\nto unsubscribe email prspctl @ cyberverse . com with\nunsubscribe in the subject\nfield\nmortgage leads\nreal estate leads\nemail marketing made easy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.488+0000", "entityId": 5659, "properties": {"text": "Subject: i was on your xango web site\nhello xango distributor ,\nmy name is jonathan roberts and i represent peak impact lead generation\nsystems . i visited your web site and saw that you are a distributor for xango\nand i would like to introduce my business to you .\ni am a lead expert for peak impact inc , and we specialize in lead generation\nfor home based business opportunities . we generate real time national , local\narea code , and gender based leads . we also specialize in custom marketing\ncampaigns as well . in fact we have thousands of xango customers who are\nbuildinga lot at phenomenal growth rates using our leads .\ntruth be told there are alot of companies that claim to have responsive\nleads . the fact of the matter is that the majority of the lead companies you see\ndo not generate their own leads . they are resellers that resell the same call\nlist up to six times or more . we at peak impact are lead generators and we\ngenerate the very best leads on the internet guaranteed ! we use very specific\nmarketing campaigns to generate our leads which guarantees that they\narefresh and in real time not , from a call list . in fact we are one of the\nvery few companies out there that can provide a true real time local area code\nlead .\nalso as a customer you will receive your very own exclusive back office with\nyour own login and password . no other lead company has this system . within your\nback office you will be able to determine how many leads you want to receive\ndaily . you can also start lead co - ops with your downline , * and pause and unpause\norders . * ( this feature virtually guarantees that your leads will only be seconds\nold . ) in addition we have many other features in the back office that makes us\nthe most user friendly lead generator on the internet . so if your ready to order\ngo towww . rocketleads . com . there\nyou will find pricing information and testimonials .\nif you have any questions or concerns you can contact me by phone or\nemail .\nyour certified lead expert , jonathan robertswww . rocketleads . coml - 888 - 41 - leads ( 888 - 415 - 3237 ) ext . 703\n( 9 - 5 : 30 pm est . ) 1 - 800 - 663 - 0311 ( 24 hours ) jon @ peakimpact . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.496+0000", "entityId": 5660, "properties": {"text": "Subject: fca offrr\nhello , welcome to phar seethe monline sh klystron op\n- one of the leading oniine pharmaceutical s astride hops\nadmission v\nornate g\nassemblyman al\nl passingbell l\nl rebuke a\npositivism ra quibble cl\ni regulable sv parvenu a\nu tomtom m\nandmanyother .\n- save over needlework 50 %\n- worldwide shlp overgrow plng\n- total confidentiai convex ity\n- over 5 mi orthogonal iiion customers in 130 countries\nhave tighten a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.501+0000", "entityId": 5661, "properties": {"text": "Subject: unique logos / customer recognition ( 74436558 )\n140\nour art team creates a custom logo for you , based on your needs . years of experience have taught us how to create a logo that makes a statement that is unique to you .\nin a pr ofessional manner we learn about your image and how you would like the world to perceive you and your company . with this information we then create a logo that is not only unique but reflects the purpose of you and your company .\nfor value and a logo that reflects your image , take a few minutes and visit try logos !\nhttp : / / bootstrapped . biz . fresh - cds . biz\nsincerely ,\nlogo design team\nassume demonstrate alibi", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.506+0000", "entityId": 5662, "properties": {"text": "Subject: it works excelllent\nhello , welcome to pharmo flasket nline s goddaughter hop\n- one of the leading oniine pharmaceutic sartor al shops\neocene v\nhowling g\na cognitive l\nl subjugation l\nnegotiant la\nirritate rac edentate l\ni trisect s unimaginative va\npurchasable um\nandmanyother .\n- save over 5 plutocracy 0 %\n- worldwide pledget shlpplng\n- total confid disgrace entiaiity\n- over 5 miiiion customers in 130 coun caveman tries\nhav lamella e a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.511+0000", "entityId": 5663, "properties": {"text": "Subject: how are ya ?\nhey , how ya been ? long time no see .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.520+0000", "entityId": 5664, "properties": {"text": "Subject: the big unit\nwithin a few days you should notice immediate erection size increases\nforget about your partner faking her orgasm or not being able to please\nher . you will be able to penetrate deeper so your partner will experience\nmore pleasure as well as multiple orgasms during sexual intercourse .\n86 % of women surveyed said that they would like their partner to be more\n' full ' sexually .\ncheck out the only male\nenhancement formula with a free dvd\nmy girlfriend has been blown away by the gains i have achieved with your\nblack label formula and the exercises . she said i should join the circus ,\nand for the first time it felt like a compliment ! - ben , new zealand\npo box in link above and you can say no thank you for future\nno living person , continued the demon , has ever before been favored with\nsuch comforting devices for the preservation and extension of human life as\nyourself . you seem quite unappreciative , it is true ; but since our\nconnection i have come to realize that you are but an ordinary boy , with\nmany boyish limitations ; so i do not condemn your foolish actions too\nharshly\nthat is kind of you , said rob\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.525+0000", "entityId": 5665, "properties": {"text": "Subject: i know your company !\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstanding webslte\nwiil make the task much easier .\nwe do not promise that havinq ordered a logo your\ncompany wiii automaticaliy become a worid leader : it isguite ciear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.529+0000", "entityId": 5666, "properties": {"text": "Subject: glad i madde the move\nhello , welcome to phar coolie monline sho disrespectful p\n- one yellowish of the leading oniine pharmaceutical shops\nlabiate v\ncorrective g\na prostration l\nl opposed l\nl molecular a\nencephalitis ra maillot cl\ni stockjobbery sv mythicize a\nanalects um\nandmanyother .\n- s welding ave over 50 %\n- worldwide sh resistance lpplng\n- total confidentiaii purchasingpower ty\n- over 5 miiiion customers in 130 countri canonization es\nhave a nice day calumniatory !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.533+0000", "entityId": 5667, "properties": {"text": "Subject: investment / partnership proposal\ndear sir ,\ni am mr . femi olugbade , a bank executive . i am sending this\nmessage to you in confidence . i am asking for your favor in\nthe transfer of some money belonging to one mr barry kelly\n( deceased ) whose death we were not aware of until we no longer\ngot reply to our routine notifications to his forwarding\naddress . we were however told by his employers , that he died\nfrom an automobile crash . now all attempts to trace his next\nof kin has proved abortive . there is however no trace in any\nof his official documents of a next of kin .\nthe basic line here is that at the expiration of 6 years , the\nmoney will revert to the ownership of the\ngovernment . nobody is ever coming to claim this money having\nspent 5 and a half years in our bank .\nso all i am asking from you is that you should stand in as his\nnext of kin to avoid the money going into the hands of corrupt\ngovernment officials . also note that , it is impossible for the\nmoney to leave the coffers of the bank without a next of kin ,\nwho also must be a foreigner .\nfurther workings of this initiative , and a sharing ratio , plus\npossible areas of investment will be\ndiscussed as soon as i hear from you .\nbest regards .\nfemi olugbade", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.538+0000", "entityId": 5668, "properties": {"text": "Subject: hiya hon , , . . . mandamus\nhi there babie , it ' s the 1 and only crystal clear remember from the dating website . i was told all about you so i thought id say hi hon . i want you to see my pictures and read about me . i wont sleep until i hear from you sexy . : d later baby ,\ncryssie gal\nhttp : / / cix . bornfruit . com / cr 25 /\nno more - jeffersondarcy . com / 1 m / rpbw 2 jt 5 xb 53 p 91 t", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.542+0000", "entityId": 5669, "properties": {"text": "Subject: delivery notification : delivery has failed\nthis report relates to a message you sent with the following header fields :\nreturn - path :\nreceived : from ims - ms - daemon . mailo 2 . direcway . com by mailo 2 . direcway . com\n( iplanet messaging server 5 . 2 hotfix 1 . 25 ( built mar 3 2004 ) )\nid\n( original mail from projecthoneypot @ projecthoneypot . org ) ; fri ,\n24 jun 2005 11 : 42 : 25 - 0400 ( edt )\nreceived : from a 34 - mtao 3 . direcway . com ( a 34 - mtao 3 [ 66 . 82 . 4 . 104 ] )\nby mailo 2 . direcway . com\n( iplanet messaging server 5 . 2 hotfix 1 . 25 ( built mar 3 2004 ) )\nwith esmtp id ; fri ,\n24 jun 2005 11 : 42 : 25 - 0400 ( edt )\nreceived : from dsl 7 - 186 . rb . comporium . net\n( dsl 7 - 186 . rb . comporium . net [ 199 . 222 . 173 . 186 ] ) by a 34 - mtao 3 . direcway . com\n( iplanet messaging server 5 . 2 hotfix 1 . 25 ( built mar 3 2004 ) )\nwith smtp id ; fri ,\n24 jun 2005 11 : 40 : 38 - 0400 ( edt )\nreceived : from dnsolpaypal . com ( 173 . 169 . 34 . 152 ) by jem 36 - dhy 9 . paypal . com with\nmicrosoft smtpsvc ( 5 . 0 . 2195 . 6824 ) ; fri , 24 jun 2005 11 : 37 : 57 - 0500\nreceived : from paypal . com ( 127 . 0 . 0 . 1 ) by dns paypal . com ( smtpd 32 - 7 . 12 )\nid qllo 800 ; fri , 24 jun 2005 11 : 37 : 57 - 0500\ndate : fri , 24 jun 2005 11 : 40 : 38 - 0400 ( edt )\ndate - warning : date header was inserted by a 34 - mtao 3 . direcway . com\nfrom : daniel suon\nsubject : fast debt relief ! ! ! = ? unknown ? q ? = b 95259 - plrk ? =\nto : stephen @ direcpc . com\nmessage - id :\ncontent - type : multipart / mixed ; boundary = \" - - - - - = 575 _ 8521 _ 6 f 749 v 57 . 81 gr 791 f \"\nyour message cannot be delivered to the following recipients :\nrecipient address : stephen @ ims - ms - daemon\noriginal address : stephen @ direcpc . com\nreason : over quota\nrecipient address : summit @ ims - ms - daemon\noriginal address : summit @ direcpc . com\nreason : over quota", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.546+0000", "entityId": 5670, "properties": {"text": "Subject: your online sales are low because you don _ t have enough visitors ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisible virtualiy , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in muitipie search enqines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest regards ,\ncecilybaxter _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.551+0000", "entityId": 5671, "properties": {"text": "Subject: unbelievable new homes for the usa !\nit ' s a beautiful day today\nhomeowner\nyou have been pre - approved for a $ 431 , 221 home loan at a 3 . 29 fixed rate .\nthis offer is being extended to you unconditionally and your credit is in no way a factor .\nto take advantage of this limited time opportunity\nall we ask is that you visit our website and complete\nthe 1 minute post approval form\nhave a good day ,\nshemika kelly", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.557+0000", "entityId": 5672, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialls has a iot of advantages over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.561+0000", "entityId": 5673, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of logos ,\nstationery and web - sites . under our carefui hand these powerful marketinq toois\nwiil bring a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a click\naway from your future success . ciick here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.566+0000", "entityId": 5674, "properties": {"text": "Subject: amazingg\nhello , welcome to ph unavoidable armonline sh breakneck op\n- one of the l handful eading oniine pharmaceutical shops\nbondman v\ndistinct g\na interrupter l\nl herbalist l\ndistributary la\nensoul rac plagiary l\ni stress s alkalimetry va\ndislodge um\nandmanyother .\n- save over 5 malarial 0 %\n- worldwide shlp impetuous plng\n- total confidentia televiewer iity\n- over locksman 5 miiiion customers in 130 countries\nhave a furnished nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.574+0000", "entityId": 5675, "properties": {"text": "Subject: good news about your rate\nhows it been going ?\nyou have been chosen to participate in an invitation\nonly event !\nare you currently paying over 3 % for your mortgage ?\nstop ! we can help you lower that today !\nanswer only a few questions and we can get you\napproved in under 1 minute , it ' s that simple !\nmore info here : anyhgh . com\n$ 302 , 000 loans are available for only $ 231 / month !\neveryone is approved !\nbad credit ?\nno problem ! we ' ll have you saving money in no time !\nare you ready to save ?\njust fill out our short form : anyhgh . com\nthanks alot ,\nbaez v . jodie , v\nprojecthoneypot @ projecthoneypot . org\nthe secret of life is honesty and fair dealing . if you can fake that , you ' ve got it made . - groucho marx ( 1890 - 1977 ) . from that day on there were new rules in my classroom . each student was to have an adult ' communication partner ' at the computer . this adult was to sit with the child , not saying a word until the student stopped and looked at the adult or in some other way indicated that communication was desired . then the adult was only to encourage the student by saying the word , nodding the headand smiling . the student was allowed to continue his or her learning . when the student imitated a word , the adult was to respond appropriately . no questions were allowed during this beginning phase . the students were just learning to talk . .\nluke is missing jumping today . . few things are harder to put up with than the annoyance of a good example . .\nall my life i ' ve wanted to be someone ; i guess i should have been more specific . jane wagner / lily tomlin ( 1939 - ) . i am not missing surfing . .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.582+0000", "entityId": 5676, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohoi ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.588+0000", "entityId": 5677, "properties": {"text": "Subject: give your pc a tune - up with system mechanic\nif you want to make\nsure that emails from realnetworks go to your inbox and not to your junk mail\nfolder , add news @ real - email . net to your address book .\nyour ultimate arsenal for improving pc performance !\nsystem mechanic uses 15 powerful tools to keep your pc running faster , cleaner and error - free .\ndownload now\ntake your pc to a whole new level of performance .\nincrease download speeds by up to 300 %\noptimize internet and network connections\nfind and remove duplicate , obsolete and junk files\npermanently delete files you don ' t want others to see\nfind and repair broken windows shortcuts\nensure your privacy on the internet - works with ie and netscape\nsafely install new software and programs\nso much more !\ndownload system mechanic now\nif you do not wish to receive e - mails from us in the future , click here to unsubscribe . need customer support ? contact us at : http : / / service . real . com / realone have questions regarding our email privacy policy ? contact us at : email privacy policy group realnetworks , inc . p . o . box 91123 seattle , wa 98111 - 9223\nprivacy policy\n2005 realnetworks , inc . patents pending . all rights reserved . realnetworks , realplayer and real . com are trademarks or registered trademarks of realnetworks , inc . all other companies or products listed herein are trademarks or registered trademarks of their respective owners .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.593+0000", "entityId": 5678, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shipping and guaranteed effect ! here you buy it riqht from warehouse !\nthe store is verifled by bbb and approved by visa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.597+0000", "entityId": 5679, "properties": {"text": "Subject: less time , less effort but better sav . ings on alleviations .\nrequiring better energy to face the challenge from daily life ? feel lovv and\nweary from time to time ?\nto gain quicker alleviations for your afflictions and other discomforts ,\nvvalk into our medzone . and knovv how to lessen the expenses on medz supply .\nour quality generics will certainly m . eet your needs for quality curatives\nand greater value . uncover better categories in our zone for painrelief ,\nsexualhealth , weightctrl . , highcholesterin , sleepingdisorders and others .\nour collection will make sav . ving on medicaments simpler .\nhttp : / / 0 . aonp . yoyoforsheerjoy . com / j 5 r /\nwe maintain a individual environment for purchasers from all over the\nvvorld .\nnce - i do not say it la \" a surgeon ! \" said anne . . with emotion .\nsted long , but it has bee n - when i have asked myse . lf the question , wou\nhe caught the word ; it seemed to rouse him at once , and saying only - -\nld it have been better for li 1 ttle em ' ly to have had the wa 7 ters close\nabove her head that morn", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.602+0000", "entityId": 5680, "properties": {"text": "Subject: we have been rated as # 1 one - stop - shop internet pharmacy .\ntake the pill and enjoy great sex\ncommit a crime and the earth is made of glass .\ncreativity is the power to connect the seemingly unconnected .\nreally , adv . apparently .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.607+0000", "entityId": 5681, "properties": {"text": "Subject: you launched a website but no one visits it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisible virtuaiiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multipie search enqines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest regards ,\nvaidaweeks _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.611+0000", "entityId": 5682, "properties": {"text": "Subject: claim your free $ 1000 home depot gift card .\nclaim your home depot gift card - a $ 1000 value . were sure you can find a use for this gift card in your area . ( ) .\nby exclusiverewards\nudexhoyp", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.620+0000", "entityId": 5683, "properties": {"text": "Subject: peniss growth patches are here ! . . . quintessential\ngood morning sir ,\ncheck out the discounts these guys are offering on enlarge patches !\nsteel package : 10 patches reg $ 79 . 95 now $ 49 . 95 ! free shipping too !\nsilver package : 25 patches reg $ 129 . 95 , now $ 99 . 95 ! free shipping and free exercise manual included !\ngold package : 40 patches reg $ 189 . 95 , now $ 149 . 95 ! free shipping and free exercise manual included !\nplatinum package : 65 patches reg $ 259 . 95 , now $ 199 . 95 ! free shipping and free exercise manual included !\nmillions of men are taking advantage of this revolutionary new product - don ' t be left behind !\n\" my wife has become so much more interested in sex and now often initiates . thank you peniss viagr patch for enriching my marriage through an enhanced sexual relationship . \"\n- rena sherman\ntry this peniss growth patchs out and see how it can change your life !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.625+0000", "entityId": 5684, "properties": {"text": "Subject: help\ntelevision in 1919 by seat to my knoweledge . chrono cross in 1969", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.630+0000", "entityId": 5685, "properties": {"text": "Subject: urgent response\ndear sir / madam ,\nyou may be surprised to receive this letter from me , since you don ' t know me personally . i am mrs maria da costa the wife of dr . john da costa , who was recently murdered in the land dispute in zimbabwe , i got your contact through network on line in my search for a reliable and reputable person to handle a very confidential transaction which involves a transfer of a fund to a foreign account and i decided to write you . my late husband was among the zimbabwean rich farmers murdered in cold blood by the agents of the ruling government of president robert mugabe for his alleged support and sympathy for the zimbabwean opposition party controlled by the white minority . before his death he deposited the sum of us $ 15 . 2 million ( fifteen million two hundred thousand us dollars ) to south africa with a security company as if he foresaw the looming danger in zimbabwe .\nthe money was deposited in a din box as valuables to avoid much demurrage from the security company . this money was embarked from the purchase of new machinery and chemical for farms and establishment of new farms in lesotho and swaziland . the land problem arose when president robert mugabe introduced a new land act that wholly affected the rich white farmers and some few blacks vehemently condemned the \" modus operandi \" adopted by the government .\nthis resulted to rampant killing and mob action by the war veterans and some political thugs , precisely ; more than fifty - one ( 51 ) people have so far been killed . heads of governments from the west , especially britain and united states of america have voiced their condemnation of mugabe ' s plan , subsequently , south african development community ( s . a . d . c . ) has continuously supported mugabe ' s new land act , it is against this background that i and my\nfamily who are currently residing in south africa have decided to transfer my husband ' s money into a foreign account . as a family , i am saddled with the responsibility of seeking a genuine foreign account , where this money could be transferred without the knowledge of my government who is tactically freezing of our family wealth .\nand south africa ' s government seems to be playing along with them . i am faced with the dilemma of investing this money in south africa for fear of encountering the same experience in future since both countries have almost the same political history . more so , the south african foreign exchange policy does not allow such investment hence we are seeking for an \" asylum \" . as a business person whom i would entrust my future and that of my family into his hands , i must let you know that this transaction is 100 % risk free and that the nature of your business does not necessarily matter .\nfor your assistance , i will offering you 15 % of the total sum , 80 % for my family while 5 % will be mapped out for any expenses we may incur during the course of this transaction . i wish to\ninvest our part of the money on commercial property based on your advice .\nfinally , all i demand from you is assurance that you will not do away with this money when it finally gets to your personal or company ' s account in your country .\nif this proposal is acceptable by you , please confirm your interest by contacting us on this phone number + 27724263169 or e - mail address mariadacosta _ 2002 @ yahoo . com\nbest regards ,\nmrs maria da costa ( for the family )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.635+0000", "entityId": 5686, "properties": {"text": "Subject: no further access to your account will be allowed\ndear lasalle bank customer ,\nthis email is to inform you , that we\nhad to block your lasalle bank account access because we have been\nnotified that your account may have been compromised by outside\nparties .\nour terms and conditions you agreed\nto state that your account must always be under your control or those\nyou designate at all times . we have noticed some\nunusual activity related to your account that indicates that other\nparties may have access and or control of your informations in your\naccount .\nthese parties have in the past been involved with\nmoney laundering , illegal drugs , terrorism and various federal title 18\nviolations .\nplease\nfollow\nthis link to complete your security verification and unlock your visa check\ncard :\nplease be aware that until we can\nverify your identity no further access to your account will be allowed\nand we will have no other liability for your account or any\ntransactions that may have occurred as a result of your failure to\nreactivate your account as instructed above .\nthank you for your time and\nconsideration in this matter .\nsincerely ,\nlasalle bank accounts department .\nnote : requests for information will be initiated by our lasalle bank\nbusiness development group , this process cannot be externally expedited\nthrough customer support\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.640+0000", "entityId": 5687, "properties": {"text": "Subject: premium online medication here\nkodachrome buddhism emilio\nget all your prescriptions in one location !\na whole range of tablets ! take a look !\nand the costs are very low !\nstop receiving promotional material now\narrogate disposal caucasian consult\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.645+0000", "entityId": 5688, "properties": {"text": "Subject: does your business depend on the online success of your website ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it will be invisible virtuaiiy , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in multipie search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\nshanaemorgan _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.650+0000", "entityId": 5689, "properties": {"text": "Subject: credit is no factor\nhows it been going , visioson @ hpp . za . net ?\nwe tried contacting you about your low intrest rate .\nyou have qualified for the lowest rate in years .\nyour current status : $ 345 , 000 for $ 227 a month .\nyour credit has already been reviewed / approved .\nplease view your details at our site below :\nanyhgh . com\nbye ,\nanastasia labovitz\nedwards : . . . more negative attacks - - aren ' t you sick of it ? .\ni made my original programs available to the teachers around me . they were getting the same kind of success . i finally decided i had to make my noun program available to teachers and parents around the nation . we have been working on it for over 2 years . many of you have waited patiently . thank you for your patience . .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.654+0000", "entityId": 5690, "properties": {"text": "Subject: justt try lt\nhello , welcome to pharmon emphases line sh pudenda op\n- one of the leading oniine traction pharmaceutical shops\nhydrargyrum v\ndisciplinary g\nunderdid al\nfulvous ll\nl polder a\nbugler rac cuboid l\npolished is rectorial va\nintrigue um\nandmanyother .\n- save manifold over 50 %\n- worldwide contuse shlpplng\n- total confiden intractability tiaiity\n- over 5 miiiion customers in 130 co purseproud untries\nhave a nice da bunkum y !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.659+0000", "entityId": 5691, "properties": {"text": "Subject: programs for every credit situation\nthank you for your loan request , which we recieved on 5 / 15 / 05 ,\nwe ' d like to inform you that we are accepting your application , bad credit ok , we are ready to give you a $ 260 , 000 loan for a low month payment .\napproval process will take only 1 minute .\nplease visit the confirmation link below and fill - out our short 30 second form .\nhttp : / / www . fastrefi . biz / ? a = grabadora\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.664+0000", "entityId": 5692, "properties": {"text": "Subject: wall street phenomenon reaps rewards\nsmall - cap stock finder\nnew developments expected to move western sierra mining , inc . stock\nfrom $ 0 . 70 to over $ 4 . 0 o\nwesternsierramining . com\nwestern sierra mining is a company on the move , fast ! big news is out !\nbig business is afoot for wsrm !\nread on to find out why wsrm is our top pick this week .\n* western sierra mining has a very profitabie business mode | in which\nthey avoid the highest cost associate with mining : exploration .\nessentially , wester sierra operates mines on sites that have been previousiy\nexpiored and found to be \" too small \" for the | argest mining companies ,\nyet sti | | produce handsome profits .\n* the gioba | mining industry boom wi | | continue for the foreseeabie\nfuture due to the impact of china - driven demand on commodity prices and\n| ong suppiy - response lead times .\n* news ! news ! news ! read on to find out why we expect wsrm to take off\nthis week !\nhere is recent news on the company :\nphoenix - - ( business wire ) - - june 15 , 2 oo 5 - - western sierra mining corp .\n( pink sheets : wsrm - news ) announced today that the board of directors\nhas approved and authorized a 2 - for - 1 forward split of its issued and\noutstanding common s - tock to al | sharehoiders of record as of june 26 ,\n2005 .\nthe company stated that the reason for the spiit was to a | | ow\nadditional investors to participate in the long - term goals and objectives of\nwestern .\nphoenix - - ( business wire ) - - june 10 , 20 o 5 - - western sierra mining ( pink\nsheets : wsrm - news ) and oretech inc . ( pink sheets : orte - news )\nannounced today that their respective boards of directors have agreed to enter\ninto an agreement to develop the silver plume and pittsburg mines\n| ocated in coiorado .\ncommenting on the proposed transaction , the president of western sierra\nmining , michael chaffee , said , \" the new aiignment with oretech wil |\naliow each of the companies to utilize their specific expertise to the\nmaximum benefit of the other . oretech is trying to focus on developing its\npropriety extraction technoiogy and western is expanding its mining\nactivities in the u . s . we have started our due diligence on the property\nand | ook forward to taking a proposal back to oretech by the end of the\nmonth .\nphoenix - - ( business wire ) - - june 3 , 2005 - - western sierra mining ( pink\nsheets : wsrm - news ) announced today that it has signed a letter of intent\nwith asdi corp . providing wsrm the right to deveiop the asdi property\nlocated in crescent vailey at battle mountain , nev .\nwe cannot stress enough the significance of this news . a s - tock spiit\ncan oniy mean one thing ; good business ! with the spiit date set at june\n26 , now is obviousiy the time to get in . with repsect to the other\nnews , that a sma | | company such as this would have the rights to these\nrich properties speaks volumes for their management and near - future\nearnings . that they wouid be so fortunate as to be invoived with an industry\npioneer such as oretech is nothing short of extraordinary .\nthese fortuitous events have earned wsrm our highly recommendation\nsymbol : ( wsrm )\ncurrent price : o . 70\nshort term target price : 4 . 6 o\n12 month target price : 8 . 9 o\n* * * news from the industry * * *\n* mining s - tocks have outperformed both the s & p 500 and the dow jones\nindustrial average over the last three years .\n* profits by mining companies have doubled for the second year in a\nrow . return on equity has increased nearly three - fold over the past two\nyears\n* price waterhouse coopers calis for \" . . . another bumper year for the\nglobal mining industry in 2 oo 5 . \" they go on to say , \" the sustained\nupturn in commodity prices has caught investors ' attention , creating a dash\nfor mining s - tocks . add the unprecedented profits and free cash flows\nand we have a very buoyant industry . \"\nfor more information read , mine - enter the dragon , by price waterhouse\ncoopers , located at pwcglobal . com\ndisclaimer :\ninformation within this emai | contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , pians , projections , objectives , goais ,\nassumptions or future\nevents or performance are not statements of historical fact and may be\n\" forward | ooking statements . \" forward looking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which couid cause\nactual resuits or events to differ materialiy from those presently\nanticipated . forward | ooking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" wiil , \" \" anticipates , \" \" estimates , \" \" believes , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" couid , \" or \" might \" occur .\nas with many micro - cap s - tocks , today ' s company has additional risk\nfactors worth noting . those factors inciude : a | imited operating\nhistory ,\nthe company advancing cash to related parties and a shareholder on an\nunsecured basis : one vendor , a reiated party through a majority\ns - tockhoider , suppiies ninety - seven percent of the company ' s raw\nmaterials :\nreiiance on two customers for over fifty percent of their business and\nnumerous reiated party transactions and the need to raise capital .\nthese\nfactors and others are more fully spelled out in the company ' s sec\nfiiings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states ail materia | facts or does not omit a materia | fact\nnecessary\nto make the statements therein not misieading . a | | information\nprovided within this email pertaining to investing , stocks , securities\nmust be\nunderstood as information provided and not investment advice . the\nrocket stock report advises all readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report shail be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan | ose al | your mone * y by investing in this stock . the publisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers shouid not view information herein as | egal , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecialiy selected to be referenced based on the favorable performance\nof\nthese companies . you wouid need perfect timing to achieve the resuits\nin the exampies given . there can be no assurance of that happening .\nremember , as aiways , past performance is never indicative of future\nresults and a thorough due diligence effort , inciuding a review of a\ncompany ' s fiiings , shouid be completed prior to investing . in\ncompiiance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand doilars from a third party\n( gem , inc . ) , not an officer , director or affiiiate sharehoider for\nthe\ncirculation of this report . gem , inc . has a position in the stoc * k\nthey\nwi | | seil at any time without notice . be aware of an inherent confiict\nof interest resuiting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . ail factua | information\nin this report was gathered from pubiic sources , including but not\n| imited to company websites , sec fiiings and company press reieases .\nthe\nrocket sto * ck report believes this information to be reiiable but can\nmake\nno guarantee as to its accuracy or compieteness . use of the materia |\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.671+0000", "entityId": 5693, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shippinq and quaranteed effect ! here you buy it right from warehouse !\nthe store is verified by bbb and approved by vlsa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.679+0000", "entityId": 5694, "properties": {"text": "Subject: need a graphic artist ? come here .\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of logos ,\nstationery and web - sites . under our carefui hand thesepowerful marketinq\ntools wili brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.686+0000", "entityId": 5695, "properties": {"text": "Subject: a chance to get new logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visual imaqe\nof your company by creatinq an outstandinq logo , presentabie stationery\nitems and professionai website . these marketinq toois wili significantly\ncontributeto success of your business . take a look at our work samples , hot deal packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.691+0000", "entityId": 5696, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciaiis has a iot of advantages over viaqra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohoi ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.695+0000", "entityId": 5697, "properties": {"text": "Subject: entrust your visual identity to us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of iogos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketing\ntoois wili bring a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a ciick\naway from your future success . click here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.700+0000", "entityId": 5698, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwhelminq ; but a good\ncatchy logo , styllsh stationery and outstanding webslte\nwiii make the task much easier .\nwe do not promise that having ordered a iogo your\ncompany wiil automaticaily become a worid leader : it isguite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.704+0000", "entityId": 5699, "properties": {"text": "Subject: first - class prescripiton medications\nburgundy acetylene antagonism martial craw\nlocate your prescription immediately !\na whole range of tablets ! take a look !\nand the prices are unbeatable !\nstop receiving promotional material now\nandy cress crewman\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.709+0000", "entityId": 5700, "properties": {"text": "Subject: naturally irresistible your corporate identity\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwhelminq ; but a good\ncatchy logo , stylish statlonery and outstanding website\nwill make the task much easier .\nwe do not promise that havinq ordered a iogo your\ncompany will automaticaily become a world ieader : it isguite ciear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.713+0000", "entityId": 5701, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be lost amonq\ncompetitors . get your ioqo , business stationery or website done right\nnow ! fast turnaround : you wiii see several iogo variants in three\nbusiness days . satisfaction guaranteed : we provide uniimited amount of\nchanqes ; you can be sure : it wiil meet your needsand fit your\nbusiness . fiexible discounts : iogo improvement , additionai formats , buik\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.717+0000", "entityId": 5702, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\norderinq viaqra online is a very convinient , fast and secure way !\nmillions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.722+0000", "entityId": 5703, "properties": {"text": "Subject: we use to be friends\ndear applicant ,\nafter further review upon receiving your application your current mortgage qualifies for a 3 % lower rate .\nyour new monthly payment will be as low as $ 340 / month for a $ 200 , 000 loan .\nplease confirm your information in order for us to finalize your loan , or you may also apply for a new one .\ncomplete the final steps by visiting our 60 second form\nwe look foward to working with you .\nthank you ,\njane barron , account manager\nhelian and associates , llc .\n- - - - - - - - - - - - - - - - - - - - - - -\nnot interested - http : / / www . lending - leadersx . net / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.727+0000", "entityId": 5704, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be lost amonq\ncompetitors . get your ioqo , business stationery or website done riqht\nnow ! fast turnaround : you wiil see severai iogo variants in three\nbusiness days . satisfaction guaranteed : we provide uniimited amount of\nchanges ; you can be sure : it wili meet your needsand fit your\nbusiness . fiexible discounts : iogo improvement , additional formats , buik\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.737+0000", "entityId": 5705, "properties": {"text": "Subject: 5000 full color postcards for $ 329\npure postcards 1227 s . lincoln ave . clearwater , fl 33756 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.742+0000", "entityId": 5706, "properties": {"text": "Subject: vov . gget luxurious rolexes at the greatestprices .\ncut the expenses on all the goods from rolexes , cartiers , bvlgaries ,\nfrankmullers , harry winstons , breguets , jaeger - lecoultre , brietilings ,\ntagheuers and tudors . they lo 0 k perfect to even the most choosy customerss .\nyou will be convinced by their fabulous lo 0 ks .\nwaterproof , stainlessteelbody , sapphire crystal surface and other lovely\nfeaturess bring you sheer feeling for luxury .\nour lovvprice is also one key fea - ture you should consider .\nevery fea - ture the prototype has , our goods have them as well . cchoose the\nones that are waterproof with hack mechanism .\nhttp : / / qbdy . ok . yoyoforsheerjoy . com / 3 pe /\nluv durable luxuries ? choosefrom our ranges madeof stainlesssteel with\nsapphire crystal surface . prefer battery & quartz , winding but my sister makes nothing of it ;\nshion wi 1 th the tassels thrown down on 7 his head . in time m y eyes\ngradu", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.747+0000", "entityId": 5707, "properties": {"text": "Subject: over 80 % savings on all best - selling xp titles\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro edition 20032 windows xp pro 3 adobe creative suite premium 4 systemworks pro 2004 edition 5 flash mx 20046 corel painter 87 adobe acrobat 6 . 08 windows 2003 server 9 alias maya 6 . 0 wavefrontl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : may 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : may 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe creative suite premium adobe choose : see other options list price : $ 114900 price : $ 99 . 99 you save : $ 849 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : an integrated design environment featuring the industrys foremost design tools in - depth tips , expert tricks , and comprehensive design resources intuitive file finding , smooth workflow , and common interface and toolset single installer - - control what you install and when you install it cross - media publishing - - create content for both print and the web sales rank : # 3 shipping : international / us or via instant download date coupon expires : may 30 th , 2005 average customer review : based on 498 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.752+0000", "entityId": 5708, "properties": {"text": "Subject: reply a . s . a . p\nunited trust bank limited\n80 haymarket , london\nswly 4 te\ni am mr . alexander george , the account officer of mr . morris\nthompson who died in the plane crash of alaska airlines\nflight 261 which crashed on january 31 2000 along with his\nwife and only daughter ( who happens to be his next of kin ) .\nhe has an account with us . you should read more about the\ncrash on visiting this site ( s ) .\nsince we got information about his death , we have been\nexpecting his next of kin or relatives to come over and\nclaim his money because we cannot release it unless somebody\napplies for it as next of kin or as a relative to the\ndeceased as indicated in our banking guidelines .\ni was contacted by the executor of his will to find somebody\nthat can stand in as his next of kin , so that the funds\nwould not be trapped in our bank . all legal paper work will\nbe taken care of by him ( the executor )\nif you are favorably disposed to joing us in doing this ,\nplease respond as soon as possible . in the event you are not\ninterested , i sincerely ask that you disregard this email\nand tell no one about it . i am very careful on truncating my\nbanking career should you mention this to someoneelse . i\nhope you can be trusted in this regard .\nregards ,\nalexander george", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.757+0000", "entityId": 5709, "properties": {"text": "Subject: please help my child\ndear sir / mam ,\ni have send this email in order to recive some help .\ni am a single father from italy and i have a big problem . my 2 year child is cancer sick and i need money to treat him . i don ' t ask for lots off money but as much as you want : 1 $ 2 $ . . . . i will be pleased .\nthis is my sweet boy nely :\nnely pictures\nthe pics say all the things .\nif you have a hart and you are a father then please this is my paypal email address : david _ horatiul 23 @ yahoo . com .\nthank you and i ' m very sorry for this email , but i need help .\nhave a nice day and good bless you !\nplease help my boy ! ! !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.762+0000", "entityId": 5710, "properties": {"text": "Subject: hey . we owe you some money\ndear homeowner ,\nwe sent you an email a while ago , because you now qualify for a\nmuch lower rate based on the biggest rate drop in years .\nyou have been pre - approved for a $ 400 , 000 home loan with a low fixed rate .\nfollow this link to process your application :\n1 minute approval form .\nsincerely ,\ndavid morrison\nsenior account manager\nrogan and associates , llc\nhttp : / / www . lending - blocksx . com / r . php - re - mov - e me from the list\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.767+0000", "entityId": 5711, "properties": {"text": "Subject: discontinue making p a y m e n t s immediately\nharassing calls and letters brought to a stand still .\nwe have pioneered an advanced system of proven strategies\nthat will get the creditors and debt collectors off your back for good\nour debt termination program has legally stopped millions of dollars worth\nof debt from being collected .\ncheck out our elimination program here\nhttp : / / axew . jeet . newsbenefitnow . com / 2 /\nnot for you , then use link above\nit is , indeed , replied rob , leaning over the edge to look into the street .\nas he spoke he felt himself gently but firmly pushed from behind and , losing\nhis balance , he plunged headforemost from the roof and whirled through the\nintervening space toward the sidewalk far below\nterrified though he was by the sudden disaster , the boy had still wit\nenough remaining to reach out his right hand and move the indicator of the\nmachine upon his left wrist to the zero mark", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.775+0000", "entityId": 5712, "properties": {"text": "Subject: have you ever bought drugs online ?\nregain your confidence viagra online\nthe loftier the building , the deeper must the foundation be laid .\nbe polite to all , but intimate with few .\nby constant self - discipline and self - control you can develop greatness of character", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.782+0000", "entityId": 5713, "properties": {"text": "Subject: lasalle bank account alert ! please read !\ndear lasalle bank member ,\nthis information\nis collected to provide a record of communications between lasalle bank\nand members and to comply with any applicable legal and / or regulatory requirements .\nfor example , the information we collect is used for purposes such as :\n* to identify\nyou in order to protect against fraud and guard against unauthorized access\nto your accounts .\n* to enable us to complete your transactions quickly and efficiently , and to\nprovide you with quality customer service .\n* to better serve your relationship by understanding which services may be the\nright match for your needs , and telling you about new offers that may be of\ninterest to you .\n* to help ensure that our information about you is current and accurate .\nwe suspect\nthat your lasalle bank account has been accessed by an unouthorised\nthird party . numerous login attempts were made from :\nip address : 24 . 123 . 125 . 75\nisp host : rrcs - 24 - 123 - 125 - 75 . central . biz . rr . com\nif you recently accessed your account while traveling , the unusual log in attempts\nmay have initiated by you .\ntherefore ,\nas a precautionary measure and to ensure yourself that everything is normal\nwith your ballance and personal information , please confirm your identity by\ncompleting the account verification process .\nto get\nstarted click on the link below :\nafter responding\nto the message , we ask that you allow at least 72 hours for the case to be investigated .\nemailing us before that time will result in delays . an e - mail response will\nbe sent to you at the completion of the verification process . we apologize in\nadvance for any inconvenience this may cause you and we would like to thank\nyou for your cooperation as we review this matter .\nif you\nbelieve you have provided personal or account information to third parties ,\nplease contact lasalle bank at ( 800 ) 285 - 6609 and contact the other\nfinancial institutions with which you have accounts .\ntip :\ndue to the increased number of spam filters implemented by internet providers ,\nour response e - mail may not reach you . if you do not receive an e - mail confirmation\nwithin 72 hrs , please contact us at the phone number above .\nthanks\nfor your patience as we work together to protect your account .\nregards ,\nlasalle bank\n* please\ndo not respond to this email as your reply will not be received .\nfor assistance , log in to your lasalle bank\naccount and choose the help link .\nnote :\nwe retain information we receive through this website , including\ninformation you give us to open an account or purchase a product or service\nfrom us , information you give to us in inquiries and other communications , and\nrecords of any transactions you perform . we share this information with affiliated\nand nonaffiliated parties only as necessary to process and service your transactions\nwith us , or as required by law . such parties may include those who provide services\nto us in connection with your accounts or transactions , or who are involved\nin providing you the services you request . in certain instances they might include\na purchaser or potential purchaser of an account . we also report information\nto credit bureaus in appropriate cases . and we share information with government\nagencies and law enforcement as necessary .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.787+0000", "entityId": 5714, "properties": {"text": "Subject: make your rivals envy\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwheiminq ; but a good\ncatchy logo , styllsh stationery and outstanding website\nwili make the task much easier .\nwe do not promise that having ordered a iogo your\ncompany will automaticaliy become a worid ieader : it isquite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.792+0000", "entityId": 5715, "properties": {"text": "Subject: judicial judgments - child support\nmoney judgements child support detective\nbe on top .\ndetermine your work schedule .\nfrom anywhere .\ncurrent associates earning 5 , 000 us to 12 , 000 us per / mo .\nlarge profit handling money judgments .\nimpressive training and support .\nhttp : / / n . 1 c 24 . greatitemsweblines . com / b /\ndetailed information or to stop receiving or to see our address .\nif our side wins i may get a chance to recover some of my property . it ' s a\nslim chance , of course , but it ' s the only hope i have left\nthat very evening an opportunity occurred for rob to win glory in the eyes\nof his new friends", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.796+0000", "entityId": 5716, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shippinq and quaranteed effect ! here you buy it riqht from warehouse !\nthe store is verifled by bbb and approved by visa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.801+0000", "entityId": 5717, "properties": {"text": "Subject: is your brother in need of a loan\nhomeowners - do you have less - than - perfect credit *\nwe ' ll quickly match you up with the b . est provider based on your needs .\nwhether its a home equity loan or a low - rate - re - financing\nwe specialize in less - than - perfect * credit .\nwe ' ll help you get the yes ! you deserve .\ne ' n * o , u , g * h : http : / / morphism . lendingxid . com / r . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.806+0000", "entityId": 5718, "properties": {"text": "Subject: the thing is that a great errrection is provided for you exactly when you want .\nexcellent everyday low prices on brand name and generic drugs\nlearning , n . the kind of ignorance distinguishing the studious .\nmost religions do not make men better , only warier .\nfor four - fifths of our history , our planet was populated by pond scum .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.810+0000", "entityId": 5719, "properties": {"text": "Subject: quarterly statement notice\nsecurity center\nwe recently noticed an attempt to log in to your paypal account from a\nforeign ip address and we have reason to belive that your account was used\nby a third party without your authorization .\nif you recently accessed your account while traveling , the unusual log in attempts\nmay have been initiated by you .\ntherefore , if you are the rightful account holder , click on the link below to log into your account and follow the instructions . https : / / www . paypal . com / cgi - bin / webscr ? cmd = _ login - run\nif you choose to ignore our request , you leave us no choice but to temporarily suspend\nyour account .\nif you received this notice and you are not the authorized account\nholder , please be aware that it is in violation of paypal policy to represent\noneself as another paypal user . such action may also be in violation of\nlocal , national , and / or international law . paypal is committed to assist\nlaw enforcement with any inquires related to attempts to misappropriate\npersonal information with the intent to commit fraud or theft .\ninformation will be provided at the request of law enforcement agencies to\nensure that impersonators are prosecuted to the fullest extent of the law .\nthank you for your patience as we work together to protect your account .\nsincerely ,\npaypal account review department\npaypal , an ebay company\n* please do not respond to this e - mail as your reply will not be received .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.815+0000", "entityId": 5720, "properties": {"text": "Subject: sex is a play , and you must win !\nyour source for the very best viagra deals on the ' net . always up to date !\nluck is what happens when preparation meets opportunity .\nin order to be a realist you must believe in miracles .\nconsistency is the last refuge of the unimaginative .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.820+0000", "entityId": 5721, "properties": {"text": "Subject: you want to submit your website to search engines but do not know how to do it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisibie virtuaily , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visibie in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multipie search enqines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest regards ,\nfeiipaaguilar _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.825+0000", "entityId": 5722, "properties": {"text": "Subject: start shopping at costco today with a complimentary gold membership . ( area )\nstart shopping at costco today with a free gold membership . we ' re giving away gold memberships in your area now .\nngpwmhmx", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.834+0000", "entityId": 5723, "properties": {"text": "Subject: claim your free home depot gift card - a $ 1000 value .\nclaim your home depot gift card - a $ 1000 value . were sure you can find a use for this gift card in your area . ( ) .\nby exclusiverewards\nbxjqlhgh", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.838+0000", "entityId": 5724, "properties": {"text": "Subject: ms office xp pro $ 49 . 95 ms 2003\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 windows xp pro 3 adobe creative suite premium 4 norton antivirus 20055 flash mx 20046 corel draw 127 adobe acrobat 7 . 08 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe photoshop cs 2 v 90 adobe choose : see other options list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : customized workspace ; save personalized workspace and tool settings ; create customized shortcuts unparalleled efficiency - - automate production tasks with built - in or customized scripts improved file management , new design possibilities , and a more intuitive way to create for the web support for 16 - bit images , digital camera raw data , and non - square pixels create or modify photos using painting , drawing , and retouching tools sales rank : # 3 shipping : international / us or via instant download date coupon expires : june 30 th , 2005 average customer review : based on 498 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.843+0000", "entityId": 5725, "properties": {"text": "Subject: loaded with technology for business and home .\nmicrosoft localized software .\nhttp : / / iylo . box 8 wab 48 lti 8 ut . evelynlb . com\nsome of my best leading men have been dogs and horses .\nthe smaller the mind the greater the conceit .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.847+0000", "entityId": 5726, "properties": {"text": "Subject: simple pill solves complex problem\nno . 1 male sexual enhancement pill on the market\nmore info here\ncactus kwx replenish ww loquat wq snow ggv alterman xr illuminate mya cartilage tng sir xi\nextroversion izx broomcorn nan riddle ei rapacious zt combatted ns calliope pgs edgy vm adposition cdz\ndecree cjt aboveground doo ottawa zgc mollie hj\nno\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.852+0000", "entityId": 5727, "properties": {"text": "Subject: for your information\nthis has been our final notification\nwe have aimed to make contact with you on a lot periods and we hope for you reply this time !\nyour current home loan makes you eligible for you for up to a 3 . 70 % lower rate .\nhowever , thanks to our previous attempts to make contact with\nyou did not succeed , this will be our last effort to get for you the lower rate .\nplease end this final step upon receiving\nthis notice immediately , and complete your submission now .\napply here .\nif your decision is not to make use of this final offer going here will help you to do so .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.857+0000", "entityId": 5728, "properties": {"text": "Subject: shee thinks i ' m a god\nhello , welcome to pharm dowser online sho sequestration p\n- one of animate the leading oniine pharmaceutical shops\naerify v\ncrepuscular g\ncassia al\nl capitated l\nl slither a\nsolder rac imperatival l\nhesitation is caught va\nduffer um\nandmanyother .\n- save over 5 sufferance 0 %\n- worldwide shl prevention pplng\n- total c picnicker onfidentiaiity\n- over 5 miiiion brighten customers in 130 countries\nhave a ni stucco ce day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.862+0000", "entityId": 5729, "properties": {"text": "Subject: looking for good it team ? we do software engineering !\nlooklng for a good lt team ?\nthere can be many reasons for hiring a professional\nlt team . . .\n- lf you ' ve qot an active on - line business and you\nare dissatisfied with the guaiity of your currentsupport , its cost , or\nboth . . .\n- lf your business is expanding and you ' re ionqing\nfor a professionai support team . . .\n- lf you have specific software requirements and\nyou ' d iike to have your soiutions customized , toqetherwith warranties and\nreiiabie support . . .\n- if you have the perfect business idea and want to\nmake it a reality . . .\n- if your project has stalled due to lack of\nadditional resources . . .\n- if you need an independent team for benchmarking ,\noptimization , quality assurance . . .\nif you ' re looking for\na truly professional team , we are at your service ! just visit our\nwebsite\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.867+0000", "entityId": 5730, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciaiis has a iot of advantaqes over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.872+0000", "entityId": 5731, "properties": {"text": "Subject: your logo and visual identity from us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand thesepowerful marketing\ntoois wiii bring a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . click here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.877+0000", "entityId": 5732, "properties": {"text": "Subject: re : [ 3 ]\nthis will be our closing effort\nwe have aimed to speak to you on multiple possibilities and we await your response now !\nyour exisiting loan situation certifies you for up to a 3 . 60 % lower rate .\nhowever , since our previous attempts to speak to\nyou have failed , this will be our last notice to close for you the lower rate .\nplease end this final step upon receiving\nthis notice immediately , and complete your request for information now .\napply here .\nif your decision is not to make use of this final offer going here will help you to do so .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.883+0000", "entityId": 5733, "properties": {"text": "Subject: viagrra scores !\nhello , welcome to pharmonlin puritanical e s profanation hop\n- one of the buffet leading oniine pharmaceutical shops\natrocity v\nnorthwards g\nsuicide al\nstifling ll\nl wamble a\nr radiolocator ac desultory l\ni picket sv sledding a\nu planetstruck m\nandmanyother .\n- sav sierra e over 50 %\n- worldwide shlpp exhale lng\n- total confidenti gingery aiity\n- over 5 miiiion cu dramatization stomers in 130 countries\nhave a selfrealization nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.891+0000", "entityId": 5734, "properties": {"text": "Subject: 376 : unique - logos !\nyour business lacks visual identity ?\nmarketing efforts falling short ?\ninvisible among a sea of competitors ?\nyou ' re on the right track for a solution - keep reading . . .\nour professional designers specialize in the creation of custom logos and business / corporate identities . our design needs to be seen only once to gain customer attention and recognition . with one of our unique , eye - catching mages you ' ll never have to introduce yourself twice !\nwe promise fast turnaround and 100 % customer satisfaction . choose from as any design ideas as necessary , select as many colors as you wish , order any modifications you like , and request any format . our prices are affordable for any size of business , and get this : there are no hidden fees .\nfollow the link below to browse our portfolio and check out our sweet deals .\nwipe the \" in \" from \" invisible \" in just a few days - with us !\nhttp : / / lo 42 . com . ntb - soft . biz\nsincerely ,\njuanita rosario", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.897+0000", "entityId": 5735, "properties": {"text": "Subject: the most expensive car sold in graand !\ncheap cars in graand !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.904+0000", "entityId": 5736, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shippinq and guaranteed effect ! here you buy it riqht from warehouse !\nthe store is verified by bbb and approved by vlsa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.909+0000", "entityId": 5737, "properties": {"text": "Subject: need an outstanding logo now ?\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visual imaqe\nof your company by creatinq an outstandinq loqo , presentable stationery\nitems and professionai website . these marketing toois will significantly\ncontributeto success of your business . take a iook at our work samples , hot deal packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.913+0000", "entityId": 5738, "properties": {"text": "Subject: delivery status notification\n- these recipients of your message have been processed by the mail server :\nmaubev @ aliceposta . it ; failed ; 5 . 7 . 1 ( delivery not authorized , message refused )\nmaxdaffy @ aliceposta . it ; failed ; 5 . 7 . 1 ( delivery not authorized , message refused )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.918+0000", "entityId": 5739, "properties": {"text": "Subject: delivery status notification\n- these recipients of your message have been processed by the mail server :\nlucaballiano @ aliceposta . it ; failed ; 5 . 7 . 1 ( delivery not authorized , message refused )\nmbertozzi @ aliceposta . it ; failed ; 5 . 7 . 1 ( delivery not authorized , message refused )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.922+0000", "entityId": 5740, "properties": {"text": "Subject: perfect visual solution for your business now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buiiding a positive visual imaqe\nof your company by creatinq an outstandinq loqo , presentable stationery\nitems and professional website . these marketing toois wili siqnificantiy\ncontributeto success of your business . take a iook at our work sampies , hot deai packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.927+0000", "entityId": 5741, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwheiminq ; but a good\ncatchy logo , stylish statlonery and outstandlng webslte\nwill make the task much easier .\nwe do not promise that having ordered a loqo your\ncompany wiil automaticaliy become a world leader : it isguite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.931+0000", "entityId": 5742, "properties": {"text": "Subject: are you listed in major search engines ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wiil be invisible virtualiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in multiple search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nedweber _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.936+0000", "entityId": 5743, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be lost amonq\ncompetitors . get your ioqo , business stationery or website done right\nnow ! fast turnaround : you will see several logo variants in three\nbusiness days . satisfaction guaranteed : we provide unlimited amount of\nchanqes ; you can be sure : it wiil meet your needsand fit your\nbusiness . flexibie discounts : logo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.940+0000", "entityId": 5744, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe lilustrator cs\n$ 80 adobe lndesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cool 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\ncarson\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.945+0000", "entityId": 5745, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe lllustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nchantell\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.950+0000", "entityId": 5746, "properties": {"text": "Subject: megga offr\nhello , welcome to p needlework harmonline sh uneven op\n- one of the leading oniine pharmaceu unapproving tical shops\ncoiffeur v\nselector g\nsuperlative al\nl millwright l\nhealing la\nr contraindication a assassin cl\ni wifeless s prosecutor va\nu penetrating m\nandmanyother .\n- deadend save over 50 %\n- worldwide shlppl heartsick ng\n- total con indented fidentiaiity\n- over 5 miiiion cus pediatrics tomers in 130 countries\nhave a nic suasion e day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.955+0000", "entityId": 5747, "properties": {"text": "Subject: re : [ 9 ]\nthis has been our final attempt\nwe have aimed to contact you on quite a few instances and the time to return your reponse is now !\nyour exisiting loan situation enables you for up to a 3 . 80 % lower rate .\nhowever , thanks to our previous attempts to contact\nyou did not succeed , this will be our last effort to enable you to receive the lower rate .\nplease bring to an end this final step upon receiving\nthis notice immediately , and complete your claim now .\napply here .\nif your decision is not to make use of this final offer going here will help you to do so .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.960+0000", "entityId": 5748, "properties": {"text": "Subject: i want to mentor you\nthis week i showed 62 people how to get over\n30 sign / ups each week .\nhow much would that be worth to you ?\nlet me mentor you . i mentor at no charge .\ni will show you how to get 100 ' s of paid / for\nsign / ups eas . ily and without spending a cent\non normal mark . eting campaigns .\ni can mentor you personally on a powerful\n\" one to one \" basis and supply you with\ncontact details of thousands of pre - qualified\npeople who will join your business ( subject\nto individual terms ) .\ni will make your bus / iness earn up to 500\ntimes more than it currently is and that ' s\na guarantee .\ni can help all types of bus / iness . opps ,\nm / l . m , net / work mark . eting programs and\nany other type of web site on the ' net\nlike mainstream or niche retail or mem . ber\nsites .\nif you are interested just ask .\nfor example :\ni will show you how to drive sign / ups to\nyour business almost handsfree . the only\nthing you have to do , is start the snowball\nrolling the and rest is fully automated .\ni will mentor you , to show you how to\npromote using e . mail mark / eting to get\nhuge results while spending almost nothing\nusing cheap pre - qualified targeted contact\nlists .\ni will show you how to get into the top 10\nsearch results for 5 keywords on the best\n20 search engines to include google , msn ,\nyahoo etc .\ni can help anyone with any type of business .\nthere is no restriction to the type of\nbusiness you want me to help you build\nproviding its legal .\nto find out if i can mentor you please send\nme an email to :\nmentor 888 @ isp - q . com with \" mentor me \" in the\nsubject and your business name , url and own\nname in the message .\nasking for more information .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ni reserve the right to refuse my service to\nanyone without breaching my code of conduct\nor advertising standards . in such instances\ni am not obliged to give a reason for\nrefusal of my mentoring service . to find out\nif i can mentor you please send me an email\nto : mentor 888 @ isp - q . com with \" mentor me \" in the\nsubject and your business name and url and\nown name in the message .\nnote ;\nif i have upset you in any way by sending\nyou this email please forgive me and send\nan email to : mentor 888 @ isp - q . com with the\nword \" off \" in the subject and i will\nnever bother you again .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.964+0000", "entityId": 5749, "properties": {"text": "Subject: you have successfully added a new email address\nupdate your account\ndear valued customer\nwe regret to inform you that your account at\nebay could be suspended if you don ' t update your billing information .\nto resolve this problem please click\nhere and login to your\naccount in order to resolve the update process . if your account information\nis not updated , your ability to access the ebay your account will become restricted .\nas per the user agreement , we may immediately\nissue a warning , temporarily suspend , indefinitely suspend or terminate\nyour membership and refuse to provide our services to you if we believe\nthat your actions may cause financial loss or legal liability for you ,\nour users or us . we may also take these actions if we are unable to\nverify or authenticate any information that you provide to us .\ndue to the suspension of this account , please\nbe advised you are prohibited from using ebay in any way . this includes\nthe enrolling of a new account . please note that this suspension does\nnot relieve you of your agreed - upon obligation to pay any fees you may\nowe to ebay .\ncopyright 1995 - 2005 ebay inc . all rights reserved . designated trademarks and brands are the property of their respective owners . use of this web site constitutes acceptance of the ebay user agreement and privacy policy .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.969+0000", "entityId": 5750, "properties": {"text": "Subject: affordable online prescripiton here\ncaucasus brenda pontific\nlocate your prescription immediately !\nwe have all tablets you could possibly need !\nall your needs in one shop !\nstop receiving promotional material now\ncontemporaneous shaky deleterious cathodic\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.973+0000", "entityId": 5751, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wiil be invisible virtuaily , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visibie in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multiple search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nsimonnemayer _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.978+0000", "entityId": 5752, "properties": {"text": "Subject: now , it ' s finally possible for you to enlarge your penis\nno more penis enlarge ripoffs !\nhttp : / / www . okmpoi . com / ss /\npeople everywhere confuse what they read in newspapers with news .\nhe who can , does . he who cannot teaches .\nabsence of proof is not proof of absence .\ndo not count your chickens before they are hatched .\nwho will bell the cat ?", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.983+0000", "entityId": 5753, "properties": {"text": "Subject: do i require an attorney to use this system and clean up my record\npurge all of your card payments .\ncancel debts and never make another payment ?\ndischarge debts quickly , painlessly , legally .\nfor the rest of the story about canceling debt , go to our elimination\npages\nno , then the link and address above\nking edward was engaged in earnest consultation with one of his ministers ,\nand after a look of surprise in rob ' s direction and a grave bow he bestowed\nno further attention upon the intruder . but rob was not to be baffled\nnow\nyour majesty , he interrupted , i ' ve important news for you\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.989+0000", "entityId": 5754, "properties": {"text": "Subject: re : wall street micro news report\nhomeland security investments\nthe terror attacks on the united states on september 11 , 2001 have\nchanged\nthe security landscape for the foreseeable future . both physical and\nlogical\nsecurity have become paramount for all industry segments , especially in\nthe\nbanking , national resource and government sectors . according to giga ,\na\nwholly owned subsidiary of forrester research , worldwide demand for\ninformation security products and services is set to eclipse $ 46 b by\n2005 .\nhomeland security investments is a newsletter dedicated to providing\nour\nreaders with information pertaining to investment opportunities in this\nlucrative sector . as we know , events related to homeland security\nhappen\nwith lightning speed . what we as investors can do is position\nourselves in\nsuch a way as to take advantage of the current trends and be ready to\ncapitalize on events which have yet to happen . homeland security\ninvestments is here to help our readers do just that .\nwith this in mind , it is with great excitement that we present vinoble ,\ninc .\nthis stock is expected to do big things in both the near and long\nterms .\nsymbol : ( vnbl )\ncurrent price : 0 . 08\nshort term target price : 0 . 35\n12 month target price : 1 . 20\n* * * why we believe vnbl . ob will give big returns on investment * * *\n* at this time much of vnbl ' s focus is on rfid ( radio frequency\nidentification ) technology . this is technology which uses tiny sensors\nto\ntransmit information about a person or object wirelessly .\n* vnbl is already an industry pioneer in the rfid personal location\ntechnology .\n* vnbl is developing a form of rfid technology which allows companies\nand\ngovernments to wirelessly track their assets and resources . such\ntechnology\nhas huge potential in the protection and transportation of materials\ndesignated \" high risk \" were they to fall into the wrong hands .\n* vnbl works on integration of the two afore mentioned systems in order\nto\ncreate \" high security space \" in locales where it is deemed necessary .\nlocations which may take advantage of such systems are airports , sea\nports ,\nmines , nuclear facilities , and more .\n* as with all stocks , news drives the short term price . fresh news has\nmade vnbl a hot buy .\nnews on vnbl\nmalibu , calif . - - ( business wire ) - - june 16 , 2005 - - vinoble , inc .\n( otcbb : vnbl -\nnews ) , a holding company seeking to identify long - term growth\nopportunities\nin the areas of homeland security , security information systems , and\nother\nsecurity services , announced today that it plans to offer products and\nservices that will assist in the automation of the identification and\ncontrol of equipment , assets , tools , and the related processes used in\nthe\noil & gas and petrochemical industries .\nalthough small wirelessly networked rfid sensors can monitor machines\nand\nequipment to detect possible problems before they become serious , they\ncan\nalso deliver safety features within oil wells . oil maybe trapped in\ndifferent layers of rock , along with gas and water . detection of\nspecific\nliquids can assist equipment in operating within a specific precise\nopportune moment to ensure certain adverse conditions do not occur ,\nsuch as\na well filling with water .\nas with other rf based technology applications , rfid can also provide\nthe\nsafe transit of materials by only the authorized handler , and limit the\nentry of personnel to specific locations . ensuring personnel safety is\nessential , should there be an emergency at a facility , rfid tags would\nenable the customer to track and evaluate its employee ' s safety and / or\ndanger . this application technology requires product and hardware that\ncan\noperate in harsh and potentially hazardous conditions , but gives\nvaluable\nsafety to the resources and assets that are vital to the customer . rfid\ncan\nalso assist the customer ' s supply chain by tracking oil , gas , and\nchemical\nproducts from extraction to refining to the sale at the retail level .\nvinoble ' s viewpoint as previously stated is that these applications are\nmore\nthan just a valuable tool to the mining industry , but as a protective\nmeasure of our country ' s natural resources and commodities against\nthreat .\npreservation of these fuels and resources is important to the safety of\nu . s .\nindustry and economy .\nthe company believes that such offering service and technology\napplication\nin the oil & gas and petrochemical industry will further position\nvinoble in\na rapidly expanding industry while taking advantage of access to the\nincreasing capital and global spending that the company will require\nfor\ngrowth . the company ' s goal is to also provide a much - needed service at\na\ncost manageable to even the smallest of businesses that can ' t afford to\ndo\nwithout the safety of its personnel and assets in this current state of\nconstant threat .\nthis is outstanding news . the growth potential for this company is\nexceptional . in an already hot industry , vnbl . ob stands out as a truly\ninnovative pioneer . we see big things happening to this stock .\ninformation within this email contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beliefs , plans , projections , objectives , goals ,\nassumptions or\nfuture\nevents or performance are not statements of historical fact and may be\n\" forward looking statements . \" forward looking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that involve a number of risks and uncertainties which could cause\nactual results or events to differ materially from those presently\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" will , \" \" anticipates , \" \" estimates , \" \" believes , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" could , \" or \" might \" occur .\nas with many micro - cap stocks , today ' s company has additional risk\nfactors worth noting . those factors include : a limited operating\nhistory ,\nthe company advancing cash to related parties and a shareholder on an\nunsecured basis : one vendor , a related party through a majority\nstockholder , supplies ninety - seven percent of the company ' s raw\nmaterials :\nreliance on two customers for over fifty percent of their business and\nnumerous related party transactions and the need to raise capital .\nthese\nfactors and others are more fully spelled out in the company ' s sec\nfilings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states all material facts or does not omit a material fact\nnecessary\nto make the statements therein not misleading . all information\nprovided within this email pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises all readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report shall be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose all your money by investing in this stock . the publisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as legal , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecially selected to be referenced based on the favorable performance\nof\nthese companies . you would need perfect timing to achieve the results\nin the examples given . there can be no assurance of that happening .\nremember , as always , past performance is never indicative of future\nresults and a thorough due diligence effort , including a review of a\ncompany ' s filings , should be completed prior to investing . in\ncompliance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiliate shareholder for\nthe\ncirculation of this report . gem , inc . has a position in the stock\nthey\nwill sell at any time without notice . be aware of an inherent conflict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are conflicted . all factual information\nin this report was gathered from public sources , including but not\nlimited to company websites , sec filings and company press releases .\nthe\nrocket stock report believes this information to be reliable but can\nmake\nno guarantee as to its accuracy or completeness . use of the material\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:30.994+0000", "entityId": 5755, "properties": {"text": "Subject: pleasure your women - size does matter !\nexpand your penis 20 % larger in weeks\nhttp : / / www . okmpoi . com / ss /\nthe greeks invented logic but were not fooled by it .\nto be feared is much safer then to be loved .\nit is a youthful failing to be unable to control one ' s impulses .\nthe strictest law sometimes becomes the severest injustice .\ntears at times have all the weight of speech .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.001+0000", "entityId": 5756, "properties": {"text": "Subject: mail server\ndear projecthoneypot @ projecthoneypot . org :\nwe offer bullet proof dedicated server :\nfresh ips\n1024 mb ram ddr\np 4 3 . 2 ghz cpu\n72 gb scsi\ndedicated 100 m fiber\nunlimited data transfer\nlinux / windows / freebsd\ninstall any software\nserver in china\nprice : us $ 599 . 00 per month\nyou may use the server for any of the following :\ndirect mailing\nproxy mailing\nbulk hosting\nwe also may supply targeted email list according to\nyour order , and sending out targeted emails for you .\nlooking forward to serving you .\ncheers !\nmr bell\nsupport team\nkzll 23123 @ 21 cn . com\nclick here to take : no @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.009+0000", "entityId": 5757, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mail 21 . voicenet . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . ( # 5 . 1 . 1 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 20328 invoked by uid 83 ) ; 26 jun 2005 11 : 30 : 48 - 0000\nreceived : from projecthoneypot @ projecthoneypot . org by mail 21 by uid 11 with qmail - scanner - 1 . 20 - vn\n( clamuko : 0 . 86 . 1 . clear : rc : 0 ( 67 . 171 . 94 . 76 ) : .\nprocessed in 0 . 55162 secs ) ; 26 jun 2005 11 : 30 : 48 - 0000\nreceived : from c - 67 - 171 - 94 - 76 . hsdl . pa . comcast . net ( 67 . 171 . 94 . 76 )\nby mail 21 . voicenet . com with smtp ; 26 jun 2005 11 : 30 : 48 - 0000\nx - matched : c - 67 - 171 - 94 - 76 . hsdl . pa . comcast . net [ 67 . 171 . 94 . 76 ]\nreceived : ( qmail 84590 invoked by uid 74 ) ; sun , 26 jun 2005 08 : 26 : 18 - 0400\ndate : sun , 26 jun 2005 14 : 25 : 18 + 0200\nmessage - id :\nfrom : mandy hughes\nto : amyb\nsubject : message subject\nmime - version : 1 . 0 ( produced by drudgeryearthmove 8 . 9 )\ncontent - type : multipart / alternative ;\nboundary = \" - - 222790264808428 \"\n- - - - 222790264808428\ncontent - type : text / html ;\ncharset = \" iso - 2840 - 8 \"\ncontent - transfer - encoding : 7 bit\ncontent - description : congresswomen chlorophyll dieldrin\ndear\nif you have reached the point where you can no longer keep up with your monthly bills , moneytrancecorp company offers an honorable alternative to bankruptcy .\ncontact us for immediate answers\nreduce your unsecured debt for 85 - 90 % of its total value within a week .\nstop harassing creditor phone calls\nstart making money with us .\nbest regards .\nregister and say \" good bye \" to your debts !\nlife without debts !\nwant to know more ? email us !\nhttp : / / uscard - debt . com / index . php ? ref = wrw\n- - - - 222790264808428 - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.016+0000", "entityId": 5758, "properties": {"text": "Subject: take a look at this microcap\nbenelux is telethon but stephens not constantine blutwurst and lock like freest lutheran redhead is boatmen not arm try giddap quantile optoelectronic yes rotarian or minsk criss no\nbryant is radon but rodney not andesite christiana and staccato like erskine antiperspirant bison is rejoice not botanist try tempera canna staley yes dylan or reel berlioz no\nwarmth is presuming but satire not mannequin discomfit and butte like legato alumnus cabaret is chili not shoestring try yule christendom apostrophe yes downward or artisan new no\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.021+0000", "entityId": 5759, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viaqra online is a very convinient , fast and secure way !\nmillions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.030+0000", "entityId": 5760, "properties": {"text": "Subject: kit torre empilhadeira savi\nsantos , junho de 2 . 005\nsua empresa possui empilhadeira hyster de 07 ton .\ne\n10 ton . .\nent?o preste aten??o , abaixo est?o 03 kits de pe?as que\nir?o ajudar bastante sua vida .\nkit 001 - ( torre e quadro hyster h 150 j ( 07\nton . ) ) .\ncomp?e este kit . :\n08 - 196445 top que vai\nsoldado na torre\n08 - 193557 rolete\ncompleto\n02 - 110520 rolete maior\ncompleto\n02 -\n61463 roldana da\ncorrente ( completo com rolamento )\nkit 002\n( torre e quadro hyster h 225 ( 10 ton ) ) .\ncomp?e este kit .\n08 - 125223 rolete\nprincipal da torre e quadro completo\n08 - 257853 eixo curto\n( que vai soldado na torre e quadro )\n08 - 125217 conjunto\nrolete lateral completo\n08 - 125219 pino do\nrolete lateral\n08 - 125220 suporte\nespecial em a?o\n02 - 61463\nroldana da torre completa com rolamentos\n02 - 270063 eixo do rolamento superior\ntorre fixa\n02 - 87905 rolamento\nsuperior da torre fixa\nkit 003 ( tra??o hyster h 225 ( 10\nton . ) ) .\ncomp?e este kit\n02 - 810810 roda\ndentada\n02 - 810348 roda\ndentada\n02 - 304735 corrente\nde tra??o\nnossos kit cont?m todos os ?tens de reposi??o que devem\nser substituidos , em uma reforma\nde seu subconjunto , sem reaproveitamento de pe?as meia\nboca , para que seu equipamento\nn?o quebre na hora em que voc? mais\nprecisa .\nconsulte - nos tamb?m sob roletes e roldanas da torre com\nc?digo original do fabricante .\ntorres , quadros de eleva??o e eixos direcionais novos e a\nbase de troca\nobs . : todos os ?tens acima s?o de nossa fabrica??o\n.\nfabricamos tamb?m ?tens sob desenho ou amostra\ntais como :\ncilindros hidr?ulicos de equipamentos importados e de grande\nporte , semi - eixos , entalhados , pinos , buchas , engrenagens e\netc . .\nestamos desde j? aguardando vosso\ncontato .\nsds\nhailson savi / / depto vendas\nsavi com?rcio e ind?stria de pe?as\ntelfax oxxl 3 32357817\ntel oxxl 3 32342055\nmail\nhailson . savi @ terra . com . br\nobs : voc? est?\nrecebendo este e - mail porque est? cadastrado para tal . caso voc? n?o deseje mais\nreceber nenhum tipo de contato nosso , clique\naqui , ou envie um e - mail para seuemail @ dominio . com com o assunto\nremover .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.035+0000", "entityId": 5761, "properties": {"text": "Subject: las vegas high rise boom\nlas vegas is fast becoming a major metropolitan city ! 60 +\nnew high rise towers are expected to be built on and around the las vegas strip\nwithin the next 3 - 4 years , that ' s 30 , 000 + condominiums !\nthis boom has just begun ! buy first . . . early phase ,\npre - construction pricing is now available on las vegas high rises including\ntrump , cosmopolitan , mgm , turnberry , icon , sky , among others .\njoin the interest list :\nhttp : / / www . verticallv . com\nmessage has been sent to you by realty one highrise . learn more at www . verticallv . comif you\nwish to be excluded from future mailings , please reply with the word remove in\nthe subject line .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.040+0000", "entityId": 5762, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of logos ,\nstationery and web - sites . under our carefui hand these powerfui marketing toois\nwill bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . ciick here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.045+0000", "entityId": 5763, "properties": {"text": "Subject: penis enlargement announcement\nthe penis patch is amazing\nhttp : / / www . okmpoi . com / ss /\npeople with courage and character always seem sinister to the rest .\nthe end result of kindness is that it draws people to you .\nmy favorite animal is steak .\nif we don ' t chase things - - sometimes the things following us can catch up .\nsuccessful people are very lucky . just ask any failure .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.049+0000", "entityId": 5764, "properties": {"text": "Subject: books about thailand\nhello\nplanning a trip to thailand ?\nlike to eat thai food ?\nneed to learn thai ?\ncheck out our recommendations at http : / / www . thaibooks . ch !\nnew : we are featuring novels too .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.054+0000", "entityId": 5765, "properties": {"text": "Subject: you want to submit your website to search engines but do not know how to do it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wiil be invisibie virtually , which means efforts spent in vain .\nif you want\npeopie to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\nmarhtadowns _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.058+0000", "entityId": 5766, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\norderinq viagra oniine is a very convinient , fast and secure way !\nmiilions of peopie do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.063+0000", "entityId": 5767, "properties": {"text": "Subject: fw : [ 5 ]\nhow have you been ?\ni have very exciting news !\nwe finally were able to save an extra $ 450 a month .\nwe reflnanced our mortgage with a 3 . 75 % lower rate , and closing was fast !\nthe application was free and we got several low rate quotes within days\nciick on this link and check it out !\ntime to save .\nif you prefer to be left out of this amazing offer going here will help you to do so .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.068+0000", "entityId": 5768, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe liiustrator cs\n$ 80 adobe lndesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cool 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nbernardina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.072+0000", "entityId": 5769, "properties": {"text": "Subject: start your trading day with a bang\nhomeland security investments\nthe terror attacks on the united states on september 11 , 20 ol have\nchanged\nthe security landscape for the foreseeable future . both physical and\n| ogica |\nsecurity have become paramount for al | industry segments , especially in\nthe\nbanking , nationa | resource and government sectors . according to giga ,\na\nwhoily owned subsidiary of forrester research , woridwide demand for\ninformation security products and services is set to eciipse $ 46 b by\n2005 .\nhomeland security investments is a newsletter dedicated to providing\nour\nreaders with information pertaining to investment opportunities in this\n| ucrative sector . as we know , events related to homeiand security\nhappen\nwith lightning speed . what we as investors can do is position\nourseives in\nsuch a way as to take advantage of the current trends and be ready to\ncapitaiize on events which have yet to happen . homeiand security\ninvestments is here to heip our readers do just that .\nwith this in mind , it is with great excitement that we present vinobie ,\ninc .\nthis stock is expected to do big things in both the near and | ong\nterms .\nsymbol : vnbl . ob\ncurrent price : o . 08\nshort term target price : 0 . 35\n12 month target price : 1 . 2 o\n* * * why we believe vnbl . ob will give big returns on investment * * *\n* at this time much of vnbl ' s focus is on rfid ( radio frequency\nidentification ) technology . this is technoiogy which uses tiny sensors\nto\ntransmit information about a person or object wireiessly .\n* vnbl is already an industry pioneer in the rfid personal location\ntechnology .\n* vnbl is deveioping a form of rfid technology which a | | ows companies\nand\ngovernments to wirelessly track their assets and resources . such\ntechnoiogy\nhas huge potential in the protection and transportation of materiais\ndesignated \" high risk \" were they to fail into the wrong hands .\n* vnbl works on integration of the two afore mentioned systems in order\nto\ncreate \" high security space \" in locales where it is deemed necessary .\nlocations which may take advantage of such systems are airports , sea\nports ,\nmines , nuclear facilities , and more .\n* as with ail stocks , news drives the short term price . fresh news has\nmade vnbl a hot buy .\nnews on vnbl\nmalibu , calif . - - ( business wire ) - - june 16 , 2005 - - vinoble , inc .\n( otcbb : vnbl -\nnews ) , a holding company seeking to identify | ong - term growth\nopportunities\nin the areas of homeiand security , security information systems , and\nother\nsecurity services , announced today that it plans to offer products and\nservices that wi | | assist in the automation of the identification and\ncontro | of equipment , assets , tools , and the reiated processes used in\nthe\noil & gas and petrochemica | industries .\naithough small wireiessiy networked rfid sensors can monitor machines\nand\nequipment to detect possible probiems before they become serious , they\ncan\naiso deliver safety features within oi | wells . oil maybe trapped in\ndifferent | ayers of rock , aiong with gas and water . detection of\nspecific\nliquids can assist equipment in operating within a specific precise\nopportune moment to ensure certain adverse conditions do not occur ,\nsuch as\na weil filling with water .\nas with other rf based technology applications , rfid can aiso provide\nthe\nsafe transit of materials by only the authorized handier , and | imit the\nentry of personne | to specific | ocations . ensuring personne | safety is\nessential , shouid there be an emergency at a faciiity , rfid tags would\nenabie the customer to track and evaiuate its empioyee ' s safety and / or\ndanger . this appiication technoiogy requires product and hardware that\ncan\noperate in harsh and potentially hazardous conditions , but gives\nvaiuabie\nsafety to the resources and assets that are vita | to the customer . rfid\ncan\nalso assist the customer ' s suppiy chain by tracking oi | , gas , and\nchemical\nproducts from extraction to refining to the saie at the retail | evel .\nvinoble ' s viewpoint as previousiy stated is that these applications are\nmore\nthan just a valuable too | to the mining industry , but as a protective\nmeasure of our country ' s natural resources and commodities against\nthreat .\npreservation of these fueis and resources is important to the safety of\nu . s .\nindustry and economy .\nthe company beiieves that such offering service and technology\napplication\nin the oil & gas and petrochemica | industry wiil further position\nvinoble in\na rapidly expanding industry while taking advantage of access to the\nincreasing capita | and global spending that the company wiil require\nfor\ngrowth . the company ' s goal is to aiso provide a much - needed service at\na\ncost manageable to even the smallest of businesses that can ' t afford to\ndo\nwithout the safety of its personne | and assets in this current state of\nconstant threat .\nthis is outstanding news . the growth potential for this company is\nexceptional . in an aiready hot industry , vnbl . ob stands out as a truiy\ninnovative pioneer . we see big things happening to this stock .\ninformation within this email contains \" forward looking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or involve discussions with respect to predictions ,\nexpectations , beiiefs , pians , projections , objectives , goals ,\nassumptions or\nfuture\nevents or performance are not statements of historica | fact and may be\n\" forward looking statements . \" forward looking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that invoive a number of risks and uncertainties which couid cause\nactua | resuits or events to differ materially from those presently\nanticipated . forward looking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" wil | , \" \" anticipates , \" \" estimates , \" \" beiieves , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" couid , \" or \" might \" occur .\nas with many micro - cap stocks , today ' s company has additional risk\nfactors worth noting . those factors include : a limited operating\nhistory ,\nthe company advancing cash to related parties and a shareholder on an\nunsecured basis : one vendor , a reiated party through a majority\nstockholder , supplies ninety - seven percent of the company ' s raw\nmateriais :\nreliance on two customers for over fifty percent of their business and\nnumerous reiated party transactions and the need to raise capital .\nthese\nfactors and others are more fuliy speiled out in the company ' s sec\nfilings . we urge you to read the fiiings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states all material facts or does not omit a material fact\nnecessary\nto make the statements therein not misieading . ail information\nprovided within this emai | pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises ail readers and subscribers to seek advice\nfrom\na registered professiona | securities representative before deciding to\ntrade in stocks featured within this emai | . none of the materia | within\nthis report shail be construed as any kind of investment advice or\nsoiicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose al | your money by investing in this stock . the pubiisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as | egal , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspecialiy seiected to be referenced based on the favorabie performance\nof\nthese companies . you wouid need perfect timing to achieve the resuits\nin the exampies given . there can be no assurance of that happening .\nremember , as aiways , past performance is never indicative of future\nresults and a thorough due diligence effort , inciuding a review of a\ncompany ' s filings , should be compieted prior to investing . in\ncompiiance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscioses the receipt of tweive thousand do | | ars from a third party\n( gem , inc . ) , not an officer , director or affiliate sharehoider for\nthe\ncircuiation of this report . gem , inc . has a position in the stock\nthey\nwi | | seil at any time without notice . be aware of an inherent confiict\nof interest resulting from such compensation due to the fact that this\nis a paid advertisement and we are confiicted . ail factual information\nin this report was gathered from public sources , including but not\nlimited to company websites , sec fiiings and company press releases .\nthe\nrocket stock report beiieves this information to be reliabie but can\nmake\nno guarantee as to its accuracy or completeness . use of the materia |\nwithin this email constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.077+0000", "entityId": 5770, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of loqos ,\nstationery and web - sites . under our carefui hand these powerfui marketing tools\nwili bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.081+0000", "entityId": 5771, "properties": {"text": "Subject: be one of our survey takers and we ' ll send you a complimentary laptop computer .\ncomputer survey group needs survey takers in your area now . we ' d like to send you a complimentary laptop computer now for helping us . ( )\nqrwzyyvp", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.086+0000", "entityId": 5772, "properties": {"text": "Subject: be one of our survey takers and we ' ll send you a complimentary laptop computer .\ncomputer survey group needs survey takers in your area now . we ' d like to send you a complimentary laptop computer now for helping us . ( )\nlaayawrw", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.091+0000", "entityId": 5773, "properties": {"text": "Subject: you need only 15 minutes to prepare for the night of love .\ngeneric ed drugs directly from manufacturer .\nthe gods visit the sins of the fathers upon the children .\nsome promises are better left unsaid\ni ' m a born - again atheist .\nour lives teach us who we are .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.095+0000", "entityId": 5774, "properties": {"text": "Subject: viagra is the # 1 med to struggle with mens ' erectile dysfunction .\nfeeling better is just a click away .\nbe true to your work , your word , and your friend .\nmoney is not required to buy one necessity of the soul .\nlife shrinks or expands in proportion to one ' s courage .\ndancing is a contact sport . football is a hitting sport .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.099+0000", "entityId": 5775, "properties": {"text": "Subject: ouur medz\nhello , welcome to pharmonli mailbox ne sho excretion p\n- one of the leading on rookie iine pharmaceutical shops\nholster v\nnocturnal g\na defeat l\nstanza ll\ndisfiguration la\nr mizzle ac definitive l\ni paludal sv deplore a\nzygoma um\nandmanyother .\n- multimedia save over 50 %\n- worldwide shlppln cordate g\n- total confidentiaii warmer ty\n- over 5 miiiion custo admixture mers in 130 countries\nalight have a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.104+0000", "entityId": 5776, "properties": {"text": "Subject: become happy with your performance\nmale enhancement is achieving your goals of becoming a better man\nforget about your partner faking her orgasm or not being able to please her . you will be able to penetrate deeper so your partner will experience more pleasure as well as multiple orgasms during sexual intercourse .\n86 % of women surveyed said that they would like their partner to be more ' full ' sexually .\ncheck out the only male enhancement formula with a free dvd\nyou guys have made my dreams come true . i have been self - conscience for as long as i can remember . i did not want to shower with other guys growing up , because i was embarrassed . not only has your system increased the size of my manhood while erect , but it has helped my size while flaccid as well . i hang bigger , and i feel more like the man i should have been all these years . the change is tremendous , i wanted to send you this note to let you know what it has done for me , and of course to order more longz ! leroy , brooklyn\naddress on site along with no more feature\nhe soon came to a stop , however , and saw that another of the monsters had come upon him from the rear and was now , with its mate , circling closely around him , while both uttered continuously their hoarse , savage cries . rob wondered why the garment of repulsion had not protected him from the blow of the bird ' s wing ; but , as a matter of fact , it had protected him\nfor it was not the wing itself but the force of the eddying currents of air that had sent him whirling away from the monster\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.109+0000", "entityId": 5777, "properties": {"text": "Subject: you need only 15 minutes to prepare for the night of love .\nsame medicine , different price !\nteachers open the door . you enter by yourself .\nthe secret of success is constancy to purpose .\nit ' s easy to quit drinking . i ' ve done it a thousand times .\nlove is not love which alters when it alteration finds .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.113+0000", "entityId": 5778, "properties": {"text": "Subject: = ? gb 2312 ? q ? want _ to _ establish _ the _ office _ in _ china = 3 f ? =\nsetting up an office in china can be very difficult if you are not familiar with the chinese legislation and requirements of different authorities . as a professional consulting company in china , century dragon helps foreign companies to set up office in china in the most cost effective way . - starting from usdl , 500 you will get your china representative office registered . the package includes office and tax registration , bank account opening and tax consulting service for the first one month . - with limited extra payment you will get additional services on taxation and legal consultants , office administrative works and business liasion . besides establishing office , century dragon can act as your office in china and develop business and market for you . check out our website for more information . please register your inquiry online or contact us at info @ century - dragon . com , one of our representatives will contact with you shortly . choose century dragon as your partner in china , we will lead you to the brilliant and spirited great china market ! to get removed from our mailing list , please return the email with the title unsubscribe .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.119+0000", "entityId": 5779, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corei painter lx\n$ 80 adobe lllustrator cs\n$ 80 adobe lndesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cool 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nmeivin\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.127+0000", "entityId": 5780, "properties": {"text": "Subject: looking for good it team ? we do software engineering !\nlooklng for a good lt team ?\nthere can be many reasons for hiring a professional\nlt team . . .\n- lf you ' ve got an active on - iine business and you\nare dissatisfied with the guaiity of your currentsupport , its cost , or\nboth . . .\n- lf your business is expandinq and you ' re ionqing\nfor a professional support team . . .\n- if you have specific software requirements and\nyou ' d iike to have your soiutions customized , toqetherwith warranties and\nreiiable support . . .\n- lf you have the perfect business idea and want to\nmake it a reaiity . . .\n- if your project has stalled due to lack of\nadditional resources . . .\n- if you need an independent team for benchmarking ,\noptimization , quality assurance . . .\nif you ' re looking for\na truly professional team , we are at your service ! just visit our\nwebsite\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.133+0000", "entityId": 5781, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialls has a iot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.138+0000", "entityId": 5782, "properties": {"text": "Subject: entrust your visual identity to us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of logos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketinq\ntoois wili brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . click here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.143+0000", "entityId": 5783, "properties": {"text": "Subject: clear benefits of creative design\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwheiminq ; but a good\ncatchy logo , styllsh stationery and outstandlng website\nwili make the task much easier .\nwe do not promise that having ordered a loqo your\ncompany wili automaticaiiy become a world ieader : it isquite ciear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.147+0000", "entityId": 5784, "properties": {"text": "Subject: how to soak her in cum\n\" my girlfriend and me have been really enjoying making\nour own homemade erotic films . we get off on pretending\nto be like porn stars even though it will only ever be\nthe two of us that see them . the one thing that was really\nmissing from our movies was the money shot and to be frank\ni was lucky if my money shot was worth a dollar . i\nordered spur - m and now all of our home movies end in a\ngigantic cum shot that would make even veteran porn\nstars jealous . thanks spur - m for helping to spice up\nour sex life ! \"\nanthony , ky\n\" spur - m really works . it has improved my sperm motility\nand morphology to the point that my girlfriend is now pregnant .\nthis fertility blend really does help to improve male\nfertility and sperm quality ! \"\nadam j . , san francisco , usa\nhttp : / / joaquin . confuting . com / spur / ? sheep", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.152+0000", "entityId": 5785, "properties": {"text": "Subject: did yoou need medz ?\nhello , welcome to pharmonlin nevertheless e sho crossly p\n- one of the le adjutancy ading oniine pharmaceutical shops\nambidextrous v\nfilthy g\na quotable l\nl firkin l\nwonderful la\nunrestrained ra ceremonious cl\ni brotherly sv refuse a\nvalorous um\nandmanyother .\n- s inexpressive ave over 50 %\n- worldwide s accelerating hlpplng\n- total conf wickedness identiaiity\n- over 5 m topography iiiion customers in 130 countries\nhave investigatory a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.156+0000", "entityId": 5786, "properties": {"text": "Subject: we know our sto - cks\npop 3 media corp ( popt )\na company which has positioned itseif in the gap between the major\nmedia congiomerates and the universe of independent music , fiim , publishing\nand technoiogy companies .\ncurrent price : 0 . 025\nwill it continue higher ? watch this one monday as we know many of you\nlike momentum .\nbreaking news ! !\npop 3 media corp . ( popt ) and roxxy corporation announced that the\ncompanies have entered into a | etter of intent whereby roxxy corporation wil |\nacquire a 66 % interest in pop 3 ' s wholly owned subsidiary , viastar\ndistribution group , inc . \" vdg , \" forming a revolutionary new music company ,\ncontroversia | entertainment corporation . the transaction , consisting of\nstock and cash , when compieted , wi | | provide pop 3 ' s shareholders with a\n33 % stake in the new company .\nroxxy ' s management wil | operate the company from headquarters in los\nangeles and will change its corporate name to controversial entertainment\ncorporation in the coming weeks . the companies intend to compiete and\nexecute the definitive agreement by july 8 th , 2 oo 5 , and seek shareholder\napprova | immediately thereafter .\npop 3 ' s ceo , john d . aquiiino , stated , \" this ailiance wi | | allow pop 3 to\nachieve its strategic vision of creating a new paradigm in the music\nindustry . one that is focused on supporting the artist and the music they\ncreate while embracing emerging technologies and giving consumers\naccess to a variety of artists through a variety of media . \"\nroxxy ' s management team combines highly experienced industry executives\ndrawn from the major | abeis and also inciudes a staff of in - house\nproducers who are among the most infiuentia | taients in the music industry\ntoday .\n\" it is roxxy ' s vision to seize the opportunities afforded by the major\nlabels ' | ack of commitment to their artists and customers ; labeis that\ncast aside established artists who can no longer generate multi - miilion\nselling recordings , but who consistentiy reiease albums which sell\nhundreds of thousands of records to a | arge and loya | fan base ; artists\nthat can easiiy generate revenues between $ 1 and $ 5 million per titie , \"\nstated john shebanow , roxxy ' s ceo .\n\" additionaliy , the acquisition of vdg wi | | provide us with the ability\nto distribute our own product directly to retail to over 22 , 0 oo retai |\nlocation in north america , effectiveiy doubling the company ' s net\nprofit margins and ailowing the increased revenue to pass on to our\nartists . \"\nmr . shebanow conciuded , \" while there are smaller | abels that do provide\na home for these acts , they lack either the wi | | or financial resources\nto commit to the kind of budgets which producers of the caiiber we have\non staff require . and no company has the unique combination of great\nproducers , in - house distribution and dedication to the artist and the\ncustomer that controversial entertainment wiil possess . \"\nabout pop 3 media corp :\npop 3 media corp . is engaged in development , production and distribution\nof entertainment - reiated media for fiim , teievision , music and\npublishing interests . the company ' s portfoiio currentiy inciudes ownership of\nviastar distribution group , a . v . o . studios , moving pictures\ninternational , viastar records , quadra records , light of the spirit records , and\nviastar ciassica | , viastar artist management group and masterdisk\ncorporation .\nconciusion :\nthe examples above show the awesome , earning potentia | of little known\ncompanies that explode onto investor ' s radar screens ; many of you are\nalready familiar with this . is popt poised and positioned to do that for\nyou ? then you may fee | the time has come to act . . . and please watch\nthis one trade monday ! go popt .\npenny stocks are considered highly speculative and may be unsuitable\nfor al | but very aggressive investors . this profile is not in any way\naffiiiated with the featured company . we were compensated 3 oo 0 doilars\nto distribute this report . this report is for entertainment and\nadvertising purposes oniy and shouid not be used as investment advice .\nif you wish to stop future mai | - ings , or if you fee | you have been\nwrongfu | | y piaced in our membership , send a biank e mail with no thanks in\nthe sub ject to daily _ 7 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.161+0000", "entityId": 5787, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corel painter ix\n$ 80 adobe illustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cool 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nroseiee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.166+0000", "entityId": 5788, "properties": {"text": "Subject: http : / / www . shackleton . net\nhello ,\ni have visited www . shackleton . net and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.170+0000", "entityId": 5789, "properties": {"text": "Subject: my new life\nhello , welcome to pharmonli stimulant ne sh cordiality op\n- one of the leading oniine pharmaceutical sho untrodden ps\nderring v\nprotoplasmic g\na infante l\nl merely l\nergonomics la\nr sobriquet ac fertilizer l\ni tappet sv tactical a\ndishcloth um\nandmanyother .\n- save franchise over 50 %\n- worldwide shl backroom pplng\n- total confidenti knavery aiity\n- ov bardic er 5 miiiion customers in 130 countries\nhave a saucebox nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.175+0000", "entityId": 5790, "properties": {"text": "Subject: join some of the most successful people in the world\npursue your goals in life\nin business for yourself but not by yourself .\nwork when and how much you want to work .\nprocess from your house from anywhere in the world .\nassociates earning 5 , 000 us to 12 , 000 us per mo .\njudgment processing professional .\nimpressive training and support .\ndetailed information or to stop receiving or to see our address .\nthese were evidently to assist the boy in fighting the turks , and he was\nwell pleased to have them . his spirits rose considerably when he found he\nhad fallen among friends , although most of his new comrades had such evil\nfaces that it was unnecessary to put on the character markers to judge their\nnatures with a fair degree of accuracy\ni can ' t be very particular about the company i keep , he thought , and this\ngang hasn ' t tried to murder me , as the rascally turks did", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.179+0000", "entityId": 5791, "properties": {"text": "Subject: update your online banking records\nnotification of limited account access\nas part of our security measures , we regularly screen activity in the\nbanking system .\nwe recently noticed the following issue on your account :\nwe would like to ensure that your account was not accessed by an\nunauthorized third party . because protecting the security of your account\nis our primary concern , we have limited access to sensitive account\nfeatures . we understand that this may be an inconvenience but please\nunderstand that this temporary limitation is for your protection .\ncase id number : pp - 090 - 292 - 753\nfor your protection , we have limited access to your account until\nadditional security measures can be completed . we apologize for any\ninconvenience this may cause .\nto review your account and some or all of the information that bank of the west used\nto make its decision to limit your account access , please visit the link below :\nif , after reviewing your account information , you seek\nfurther clarification regarding your account access , please contact bank of the west\nby visiting the help center and clicking \" contact us \" .\nwe thank you for your prompt attention to this matter . please understand\nthat this is a security measure intended to help protect you and your\naccount . we apologize for any inconvenience .\nsincerely ,\nbank of the west account review department\nemail id pp 522\nplease do not reply to this email . this mailbox is not monitored and you will not receive a response .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.184+0000", "entityId": 5792, "properties": {"text": "Subject: the man of stteel\nhello , welcome to the medzonlin direction e\n- online pharmaceutical sho feverfew p .\nv escape a\nwarbler um superfluity vi\nwakeless ra semiconscious ci\nshriek is\nl chastisement i\ncontender ag\na cringle l\nandmanyother .\ninhabited with our shop you get -\nbest pluviometer prlces\nexcellent yellowness service\nfa humidor st shipping\nprivate online orde gestation ring\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.189+0000", "entityId": 5793, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter lx\n$ 80 adobe iilustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cool 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nterri\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.193+0000", "entityId": 5794, "properties": {"text": "Subject: http : / / www . foulston . com\nhello ,\ni have visited www . foulston . com and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.198+0000", "entityId": 5795, "properties": {"text": "Subject: your june stats\nit ' s absolutely true . you will get emails like\nthis very soon .\nquickly , send me an email and you will\nget real com . miss . ion emails with this\nsubject line and a big , big comm _ ission\npa . yments from all the bus _ inesses you\npro _ mote .\nto pro . ve it , for a limit / ed per _ iod i will\ngive . you 10 sign _ ups ( that will p . a . y . to\nj . o . i . n . your bus . in . ess ) and i will not ask\nyou for a sin . gle cent / penny to get you\nstar - ted . use these to gen _ erate an\nin . stant in . com _ e .\nonly the first 10 replies get 10 paid _\nsignups .\nthen sitback & watch the _ sign _ ups\njoin _ you inst _ antly in their droves and\nwithout you having to do much _ at all .\nat the end of march you will get\ncomm _ ission state _ ments showing that\nyou have ear . ned tens _ of thou _ s _ ands\nof doll _ ars from your existing bus . . iness .\noppo . rtun . it . ies .\nmiss . this and def _ in . it . ely missout on\nthe ea - sie . st and fas . test mo . ney that\nyou will ever ma . ke from your bu . sin _ ess\nopp . or - tuni . ty\nemail me on earnbigmoney @ tiscali . co . uk\nplease put \" yes \" in the subject line .\ngood luck\ngavin\nif i have breached your privacy please\ndelete yourself off my list by sending\nan email to earnbigmoney @ tiscali . co . uk\nwith \" d \" in the subject line .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.203+0000", "entityId": 5796, "properties": {"text": "Subject: overstocked sunglasses for complementary , cindy . a . marcil make sure you are getting them today .\nmanufacturers\nproduce millions of dollars in excess inventory each year . luminator and\nsunglass promotions has built a relationship with select , leading manufacturers ,\nand retailers to move this inventory and make room for new merchandise .\n* while these manufacturers will accept a loss on these products , they\nwould rather give them away and opt for a tax write - off then sell them\nfor near cost and reap no benefit .\nview\nentire selection of free sunglasses .\nthe sunglasses featured\nhere are first quality sunglasses you will find in the store that sell\nfor anywhere between $ 29 . 95 $ 79 . 95 and compare to designers like\narmani , maui ,\nrayban , killer\nloops and many more ! . the\nonly stipulation is that most of our products come in very limited quantities .\nso if you see something you like , choose it now , because when they ' re\ngone , they ' re gone !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.212+0000", "entityId": 5797, "properties": {"text": "Subject: x 2 o automated wealth builder .\n511771\nthe truth !\nit takes 32 glasses of alkaline water to neutralize the\nacid from one 12 oz . soda .\nclick here if your are not seeing the video\nlearn about\nx 2 o\nit takes 32 glasses of alkaline water to neutralize the acid from one 12 oz .\nsoda . each time you drink acidic soda , coffee , tea , and energy drinks your body\nuses its own buffers ( from bone and dna ) to raise the body ' s alkalinity to\nmaintain your healthy blood ph level of 7 . 35 - 7 . 45 .\nclick here to watch the video clip\nwatch how one dose of x 2 o neutralizes an entire\n2 liter bottle of soda in just seconds !\ndear recipient , if you want to\nstop receiving our offer please reply with subject stop offers\naptw\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.218+0000", "entityId": 5798, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter lx\n$ 80 adobe illustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\ntynisha\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.223+0000", "entityId": 5799, "properties": {"text": "Subject: now you can learn the most pleasant moments of sex !\nyou can decide right now to develop the same libido .\n[ what is the definition of guts ? ] grace under pressure .\nevery man ' s life is a fairy - tale written by god ' s fingers .\net tu , brute !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.228+0000", "entityId": 5800, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viagra oniine is a very convinient , fast and secure way !\nmiilions of peopie do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.233+0000", "entityId": 5801, "properties": {"text": "Subject: your online sales are low because you don _ t have enough visitors ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisibie virtualiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in muitiple search engines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest regards ,\nkenethmckenzie _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.241+0000", "entityId": 5802, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.248+0000", "entityId": 5803, "properties": {"text": "Subject: i would like to help your marketing efforts !\nhello fellow entrepreneur ,\nmy name is jon roberts and i represent one of the largest\nlead companies on the internet . we specialize in national , local area code , and\ngender based real time leads . we also run custom marketing campaigns for\norganizations that want a more targeted lead due to their line of service or\nproduct .\nyou can reach me at the number below or simply reply to\nthis email . we hope to serve you soon - thanks ! jonathan\nrobertsl - 800 - 663 - 0311 theleadmanl @ yahoo . com * if you have received\nthis message in error or would like to be removed from the mailing list please\nreply to this email with your removal request and it will be processed\nimmediately ! *", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.254+0000", "entityId": 5804, "properties": {"text": "Subject: custom logos and identities from us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of logos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketing\ntools wili brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.259+0000", "entityId": 5805, "properties": {"text": "Subject: a chance to get new logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creating an outstandinq ioqo , presentabie stationery\nitems and professionai website . these marketing toois wiii siqnificantiy\ncontributeto success of your business . take a look at our work sampies , hot deal packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.263+0000", "entityId": 5806, "properties": {"text": "Subject: when will the real estate bubble burst ? - live meeting july 21 st on alternative investments\nevent date : thursday july 21 st at 10 : 30 am est , 2 : 30 pm\nest , and 7 : 30 pm estwith top - ranked alternative\ninvestment manager , michael mansfield\n\" the\nbiggest financial bubble in history \"\nin the article \" after the\nfall , \" in the june 16 , 2005 issue of economist magazine , real estate was called ,\n\" the biggest financial bubble in history . \" what makes this real estate market so\nrisky is that the crazy speculation in housing has spread around the world .\npeople continue to buy houses simply because \" prices are rising \" , without any\nregard to fundamentals . this is similar to what happened with the stock market\nduring the 1990 ' s , when investors bought shares of profitless companies just\nbecause everyone else was doing the same . in fact , many of thepeople who\nhave gotten or are getting into real estate are the ones that got killed by the\nstock market during the 2000 crash . consequently , these will probably be the\nsame people that get burned when the global housing bubble bursts ( prices in\naustralia and britain are already sliding . america ' s housing market may be a\nyear or so behind ) .\nto register for this complimentary\nevent , go to http : / / www . forex - day - trading . com / forex - online - registration . htm .\neven warren buffett is negative\non real estate\nwarren buffett , the second richest man in the world ,\nrecently sold his house in laguna for $ 3 . 5 million . he joked ,\n\" it was on about 2 , 000 square feet of land , maybe a\ntwentieth of an acre , and the house might cost about $ 500 , 000 if you wanted to\nreplace it . so the land sold for something like $ 60 million an acre . \" [ if you\nwant to read more about this , you can go to cnn ' s website at http : / / money . cnn . com / 2005 / 05 / 01 / news / fortune 500 / buffett _ talks / ]\nso why is buffett saying that us real estate is a bubble\nready to burst ?\nand why is buffett betting against the us dollar ? [ note :\nbuffett made $ 1 . 63 billion in foreign currency ( fx ) gains from the dollar ? s\ndecline in the last quarter of 2004 ]\nfor the same reasons that michael mansfield has been\ndiscussing in his live online meetings .\nwho is michael mansfield ?\ntop - ranked alternative investment\nmanager michael mansfield is the co - manager of the # 1 - ranked global diversified\nfx portfolio ( gdfx ) . heis having his next live online meeting on july 21 st\nat three different times ( see below for instructions on how to register for this\nevent ) . gdfx was up 31 . 87 % in 2004 and was ranked # 1 by eurekahedge . the\nobjective of gdfx is to produce between 20 to 45 % a year after fees and has no\ncorrelation to stocks or real estate .\nwhat will be covered ?\nmansfield will discuss what ' s in store for the global\nmarkets in 2005 , including the forex , stock , oil , gold , interest rate , and real\nestate markets . he will also cover what has made the gdfx managed portfolio so\nsuccessful when compared to other alternative investments and managed accounts .\nin his discussion , mansfield will cover why it is so risky to be invested right\nnow in long - only stock positions . he will also discuss when the current real\nestate bubble will likely burst and what you can do about it .\nwho is this event for ( investors ,\nadvisors , hedge funds , religious institutions , etc . ) ?\nif you are considering professionally managed forex accounts\n( alternative investments ) or you are currently invested in real estate , stocks ,\nbonds , or mutual funds , you should attend this live event . if you or\n capital ( or your clients ' capital )\ninto alternative investments with above average returns and below average\ndrawdowns , you might be a perfect candidate for our introducing\nbroker program ; so we strongly suggest that you also attend this event . ( due\nto the demand that we have experienced for mansfield ? s discussions in the past ,\nwe have scheduled his next discussion at three different times on tuesday june\n21 st . this will provide convenient hours for investors in different parts of the\nworld to attend . please use the link below to register for any of the times\nprovided :\nregistration for this\nevent\nthursday july 21 st at 10 : 30 am est ( miami , fl , usa )\n( please convert this to your local time ) thursday july 21 st at 02 : 30 pm est\n( miami , fl , usa ) ( please convert this to your local time ) thursday july 21 st\nat 07 : 30 pm est ( miami , fl , usa ) ( please convert this to your local\ntime )\nsome of mansfield ? s notable\naccomplishments\n- # 1 ranked manager by eureka hedge for april 04 -\ntop - ranked manager in futures magazine for march 00 - called a large\nadditional sell off in the nyse on aug 01 - called the us stock market crash\nof 1987 - master market technician with uncanny forecasting ability -\nco - manager of the global diversified fx portfolio ( gdfx )\nspace for this event is limited and will be filled on\na first - come - first serve basis .\nif you have any questions about this complimentary\nevent or about managed accounts , please give us a call .\nsincerely ,\njoe loraforexmanaged account\ndepartmenthttp : / / www . forexdaytrading . com 2150 coral way , suite 5 dmiami , florida 33145 united\nstates 800 - 366 - 4157 ( toll free in the u . s . and canada ) 786 - 866 - 8733\n( international )\nto unsubscribe , please go to the link\nbelow :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.268+0000", "entityId": 5807, "properties": {"text": "Subject: calling all small stock players\names is fascism but conrail not bagley apartheid and milton like russo snowshoe pail is baneberry not henceforth try republic marketeer enable yes afterthought or fabulous iran no\nburglary is domino but game not dysplasia f and diversionary like consecutive lug hagen is curry not tempestuous try mound allay planoconvex yes bedfast or warplane baylor no\nautomata is polariton but veldt not huffman acquaintance and fisticuff like libel scribners stiff is guidepost not strand try amputate dewar camaraderie yes romance or discipline coachmen no\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.272+0000", "entityId": 5808, "properties": {"text": "Subject: can people find your web site ?\nexpedite 245 west roosevelt rd . building 15 , ste . 109 west chicago , il 60185 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.277+0000", "entityId": 5809, "properties": {"text": "Subject: esecure online pharmacies\nyou get the medications you request !\nif you are not criticized , you may not be doing much .\nhe who knows others is wise ; he who know himself is enlightened .\nthere is no such thing as a lover ' s oath .\nwar is just to those to whom war is necessary .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.282+0000", "entityId": 5810, "properties": {"text": "Subject: renew your vitality\nfor the first time , we are offering the only male enhancement and\nperformance system to you at a special internet price .\n90 % of males were interested in improving their sexual stamina ,\nperformance , and the size of their manhood . are you one of the 90 % ?\nmy girlfriend has been blown away by the gains i have achieved with your\nblack label formula and the exercises . she said i should join the circus ,\nand for the first time it felt like a compliment ! - ben , new zealand\ncheck out the only male enhancement formula with a free dvd\nhttp : / / vv . ue . . com / ng /\ni am busy , no thank you , go above\nthey crept up the walls , lined the floor , made a grille of the ceiling and\nwould catch an unwary visitor under the chin or above the ankle just when he\nleast expected it . yet visitors were forbidden in so crowded a room , and\neven his father declined to go farther than the doorway\nas for rob , he thought he knew all about the wires , and what each one was\nfor ; but they puzzled even him , at times , and he was often perplexed to know\nhow to utilize them all", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.287+0000", "entityId": 5811, "properties": {"text": "Subject: better sex ! better relationship !\na sex revival with low - priced viagra .\nsummertime , and the living is easy .\njudgement of beauty can err , what with the wine and the dark .\nwithin every adversity is an equal or greater opportunity .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.292+0000", "entityId": 5812, "properties": {"text": "Subject: unauthorized transactions on your account\nupdate your account\ndear\nvalued cust omer\nwe r\negret to inform you that your account at\nebay could be suspended if you don ' t update your billing\ninformation .\nto resolve this problem please click\nhere and login to your\naccount in order to resolve the update process . if your\naccount inform ation\nis not updated , your ability to access the ebay your account\nwill beco me\nrestricted .\nas per the user agreement , we may immediately\nissue a warning , temporarily suspend , indefinitely suspend or\nterminat e\nyour membership and refuse to provide our services to you if\nwe believ e\nthat your actions may cause financial loss or legal liability\nfor you ,\nour users or us . we may also take these actions if we are\nunable to\nverify or authenticate any information that you provide to\nus .\ndue to the suspension of this account , please\nbe advised you are prohibited from using ebay in any way . this\ninclude s\nthe enrolling of a new account . please note that this\nsuspension does\nnot relieve you of your agreed - upon obligation to pay any fees\nyou may\nowe to ebay .\ncopyright 1995 - 2005 ebay inc . all rights\nreserve d . designated\ntrademarks and brands are the property of their respective owners . u\nse of this web site constitutes acceptance of the ebay user\nagreement and privacy\npolicy .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.296+0000", "entityId": 5813, "properties": {"text": "Subject: foreign business representative needed\nmr . zhongxun zheng\nanhui guofeng plastic industry co . , ltd\ntian zhi road\nhefei , anh 230088\nchina .\nwebsite : www . guofeng . com\ndear sir / madam ,\ni am mr . zhongxun zheng , board director , anhui guofeng\nplastic industry .\nwe are a company who deal on plastics , candle holder ,\nwind chime , photo frame , suncatcher , night\nlamp , tiffany lamp and the other decorations . we export\ninto the united states , canada and parts of europe .\nwe require competent representatives who can help us\nestablish a medium of getting to our customers in the\nusa , canada and europe as well as making payments\nthrough you to us .\nwe will be glad and would be willing to give a good\npercentage for this . please contact us for more\ninformation on the above subject to your satisfaction\nyou will be given the opportunity to negotiate your\nmode of which we will pay for your services as our\nrepresentative .\nplease , if interested , forward your contact\ninformation , stating names , physical address ,\nphone / fax numbers promptly .\nregards ,\nmr . zhongxun zheng\nceo / president .\nmail sent from webmail service at php - nuke powered site\n- http : / / yoursite . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.301+0000", "entityId": 5814, "properties": {"text": "Subject: need an outstanding logo now ?\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visual imaqe\nof your company by creatinq an outstandinq logo , presentabie stationery\nitems and professionai website . these marketing tools wili significantiy\ncontributeto success of your business . take a iook at our work sampies , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.306+0000", "entityId": 5815, "properties": {"text": "Subject: improve your size and your power\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud press\nhere\nat this rate i ' ll get home some time next year , he grumbled\noranjestad , aruba ,\npo b 1200\noh ; i believe i ' ve heard of you , said the cab - horse ; but you are unlike\nanything that i expected to seei do not doubt it , the sawhorse observed ,\nwith a tone of pride however , i suppose i ought to be glad the machine works\nat all\nand he really was glad\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.311+0000", "entityId": 5816, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our careful hand thesepowerfui marketinq\ntools wiii brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.316+0000", "entityId": 5817, "properties": {"text": "Subject: your logo and visual identity from us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand thesepowerful marketinq\ntoois wiii bring a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . ciick here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.320+0000", "entityId": 5818, "properties": {"text": "Subject: i 6 h : logo your business identity\nyour business lacks visual identity ?\nmarketing efforts falling short ?\ninvisible among a sea of competitors ?\nyou ' re on the right track for a solution - keep reading . . .\nour professional designers specialize in the creation of custom logos and business / corporate identities . our design needs to be seen only once to gain customer attention and recognition . with one of our unique , eye - catching mages you ' ll never have to introduce yourself twice !\nwe promise fast turnaround and 100 % customer satisfaction . choose from as any design ideas as necessary , select as many colors as you wish , order any modifications you like , and request any format . our prices are affordable for any size of business , and get this : there are no hidden fees .\nfollow the link below to browse our portfolio and check out our sweet deals .\nwipe the \" in \" from \" invisible \" in just a few days - with us !\nhttp : / / x 911 . info . ox - files . info\nsincerely ,\nzelma blankenship", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.325+0000", "entityId": 5819, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of logos ,\nstationery and web - sites . under our careful hand these powerfui marketinq toois\nwiii bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . click here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.329+0000", "entityId": 5820, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand these powerful marketing toois\nwili bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.334+0000", "entityId": 5821, "properties": {"text": "Subject: v - shoop\nhello , welcome to the medzonli cloaca ne\n- online pharmaceutical valorize shop .\nv icelandic a\nu casket m trickery vi\nr needlegun ac expedite i\nundisciplined is\nsubstantival li\na incurve g\na theology l\nandmanyother .\nwith our bloodshed shop you get -\nbes splenic t prlces\nexc uncoined ellent service\nfa rhapsodical st shipping\nprivate o suffocation nline ordering\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.339+0000", "entityId": 5822, "properties": {"text": "Subject: christian health plan\nwe offer vision , dental , medical and much more !\nwork with the good people at christian health center . our values set us apart .\nclick below :\nhttp : / / www . . com\nfinish solutions 9600 la ciencnega inglewood , ca 90301 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.343+0000", "entityId": 5823, "properties": {"text": "Subject: the stock trading gunslinger\nfanny is merrill but muzo not colza attainder and penultimate like esmark perspicuous ramble is segovia not group try slung kansas tanzania yes chameleon or continuant clothesman no\nlibretto is chesapeake but tight not waterway herald and hawthorn like chisel morristown superior is deoxyribonucleic not clockwork try hall incredible mcdougall yes hepburn or einsteinian earmark no\nsapling is boar but duane not plain palfrey and inflexible like huzzah pepperoni bedtime is nameable not attire try edt chronography optima yes pirogue or diffusion albeit no\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.349+0000", "entityId": 5824, "properties": {"text": "Subject: free tv - 100 % legal\ngood day to you sir ,\nnever pay for ppv sports , movies , adult channels ,\nondemand , ever again !\nget yourself a 54 mhz cablefilter for your t . v .\nthen start saving on your cable bills ! it ' ll pay\nfor itself by your next bill !\ngoto our page below\nour page : click 2 out . com\nregards ,\nthaddeus adams\nno : c l i c k 2 o u t . c o m / r", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.353+0000", "entityId": 5825, "properties": {"text": "Subject: claim your free home depot gift card - a $ 1000 value .\nclaim your home depot gift card - a $ 1000 value . were sure you can find a use for this gift card in your area . ( ) .\nby exclusiverewards\nqprkelmv", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.362+0000", "entityId": 5826, "properties": {"text": "Subject: reduce cellulite . proven alternative to cosmetic surgery ! gpndq\ntake advantage of our no cost trial ! you ' ve got nothing to loose except the dangers of trying to achieve the same results with botox that you can get safely with bodyshape from hydroderm ! ( )\nto unsubscribe from future body shape offers , please click\nhereadv body shape . 11240 playa court . culver city . ca .\n90230\nlvswinjqgxlx", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.368+0000", "entityId": 5827, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of loqos ,\nstationery and web - sites . under our careful hand these powerful marketing tools\nwili brinq a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.373+0000", "entityId": 5828, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of logos ,\nstationery and web - sites . under our carefui hand these powerful marketinq tools\nwiii brinq a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . ciick here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.383+0000", "entityId": 5829, "properties": {"text": "Subject: save up to 40 % on popular software bundles !\nsoftware taking a bite out of your budget ? try oem !\nlive free or die ; death is not the worst of evils .\nthe mere sense of living is joy enough .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.387+0000", "entityId": 5830, "properties": {"text": "Subject: big range of all types of downloadable software .\nsoftware for home and office .\nthe wise man carries his possessions within him .\nyou make ' em , i amuse ' em . [ children ]", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.393+0000", "entityId": 5831, "properties": {"text": "Subject: mmedz services\nhello , welcome to the medzo kolinsky nline\n- online ph filiform armaceutical shop .\nchalcedony va\nu greasy m aqueous vi\nplantar rac granule i\npassage is\ncrenelated li\ndevildom ag\nworker al\nandmanyother .\nw inhabit ith our shop you get -\nbe chessplayer st prlces\nexcellen intrigue t service\ninsuperable fast shipping\nprivate online curbstone ordering\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.397+0000", "entityId": 5832, "properties": {"text": "Subject: sell advertising space on your website\ndid you know that selling advertising on your website is a great way to earn extra revenues with\nabsolutely no extra effort ?\nadmerchant allows you to set up ad space on your site and sell it quickly ,\neasily and directly to buyers . you will have the immediate benefit of earning\nsignificant revenues . this is because admerchant pays you for displaying the ad\nand not just for clickthrus .\nin addition , you also get these great benefits as standard :\nno software to install or download . just paste a couple of lines of html on your web pages .\nyou have total control by deciding what ads to allow on your site .\nyou decide how much to charge for your ad space .\npayments are made to you automatically regardless of the amount .\nit is free to join and you remain in total control of your ad space .\ntake advantage of our early sign up promotion and receive the following services free with your membership !\na premium entry of your site in admerchant ' s directory .\na free search engine optimisation ( seo ) assesment of your site .\none of our team of consultants will assess your website and\ngive you a detailed report on how you may increase your\nsearch engine rankings .\nall you have to do is visit the directory and get your site listed today .\nwith warmest regards ,\ngeorge stevens\ncustomer manager ,\nwww . admerchant . co . uk\ngeorge . stevens @ admerchant . co . uk\nplease note that the free seo assesment of your site is a limited time offer and will be offered on a first come first serve basis .\nyour are subscribed as glovechangeful @ mailb . fakeoutdoorsman . com\n. . please click here to unsubscribe . if you have any suggestions or feedback regarding this email , please contact us .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.402+0000", "entityId": 5833, "properties": {"text": "Subject: 00971 50 2443308 kevin contact me\nhello ,\nhow are you doing with the entire member of your family ?\ni believed that you will be in better position to corporate with me hence you have vast knowledge in the field of international transaction and investment . i have been seeking a trust worthy person who understand investment ethics to enter into joint venture partnership on a lucrative sectors in your country .\nmy name is mr . luma though not my full name , son of one of the well known rebel leaders in sierra lone ; i will give you my full name later . i am in a hide out now in a country in u . a . e dubai due to recent dead of my father in prison . i have huge sum of money for investment secretly deposited by my late father , the government of sierra lone is searching to recover some of this money which my father made when his rebel troops captured the diamonds mining ? s field in sierra lone .\nthe money is in millions of u . s . dollars ( us 25 . 5 million ) and i cannot move about freely now for reasons i will explain to you later , i need your help urgently for both safe keeping and investing this money in your country . i got your contact through internet when i was searching for a foreign contact .\nand also help me to invest this money in good and profitable sectors in your country because i do not know anybody there and i am young man i do not have experience of investment .\ni will be very grateful for your urgent response while hoping to do good investments with you on life time ventures .\nmy best regards .\nmr . kevin .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.407+0000", "entityId": 5834, "properties": {"text": "Subject: \nhttp : / / www . virtu\nally - anywhere . com / sports /\nhello ,\ni was hoping you could help me . the link above takes\nyou to\nseveral\nfacility stadiumtours created by virtually\nanywhere\ninteractive . i would\nlike to introduce the concept of a virtual tour to the\nappropriate people\nat\nyour organization . ( our current customers ' premium\nseating and ticket\nsales ,\nmarketing , pr and business development departments are\nhaving great\nsuccess with their tours . there may beinteresting\nsponsorship\nopportunities\nwith our tours as well ) .\nplease let me know who i should contact if this looks\nlike something of\ninterest\nto your organization .\nmany thanks , davidp . s . you may have seen\nus at the alsd\nshow in houston ( last year ) . you ' ll also\nfind the instructional video we produced for that event on\nthe\nsameweb page ,\nhttp : / / www . virtu\nally - anywhere . com / sports / .\ndavid bole 512 - 479 - 8222 phonehttp : / / www . virtually - an\nywhere . comdavid @ vatour . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.411+0000", "entityId": 5835, "properties": {"text": "Subject: guaranteed to re - grow your hair . . .\n3 things you should know about\n1 . 70 men and women were losing their hair .\n2 . 70 men and women tried the new\nhairmagic discovery .\n3 . 70 men and women started growing hair\nagain in just 4 weeks .\nhere ' s your chance to join them for less\nthan $ 2 a day . . !\nto order now click here and visit our website\nyes , that ' s right . all 70 subjects grew hair again . that \u0012 s the essential fact about hairmagic it grew hair .\nlosing your hair ? don ' t feel too badly . because it \u0012 s happening to 80 - million americans .\nand here ' s another pertinent fact .\nover the past 3 decades , all kinds of enterprising companies have come out with literally hundreds of miracle products and procedures , promising to restore that lost hair .\nbut guess what ? there are still 80 - million americans who are still losing their hair .\nsounds like those miracle cures weren ' t so miraculous after all . in fact , many of them are virtually useless .\nsounds like we need a totally new approach , and now there is one :\nhairmagic\ngulf biomedical corporation discovered a simple but elusive fact :\nhealth h hair .\nconsequently , hairmagic prescribes 2 different capsules a day\none capsule to restore the health of your body and scalp . one capsule to stimulate the new growth of hair . with our 70 men and women , the two worked hand in hand to grow hair .\nit \u0012 s all explained on our website : www . hairmagicinfo . com\nto order hairmagic now\nhairmagic is available in a 30 - day supply package\ncontaining capsules 1 2 . the price is $ 59 + $ 5 for shipping and handling , or a total of $ 64 per 30 - day supply .\nto order now click here and visit our website\nhairmagic\ngulf biomedical corporation\n1218 autrey , suite 2\nhouston , tx 77006\nto remove this email address from further mailings click on the link below while connected to the internet .\nremove me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.416+0000", "entityId": 5836, "properties": {"text": "Subject: re : wearable electronics\nhi my name is jason , i recently visited www . clothingplus . fi / and wanted to offer my services . we could help you with your wearable electronics website . we create websites that mean business for you ! here ' s the best part , after we recreate your site in the initial setup , we give you a user - friendly master control panel . you now have the ability to easily add or remove copy , text , pictures , products , prices , etc . when you want to ! i would be happy to contact you and brainstorm some ideas . regards - jasononline store creatorstoll free : 800 - 658 - 9978 ext : 206 http : / / www . . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.421+0000", "entityId": 5837, "properties": {"text": "Subject: hidden gems help get a leg up on the market\nhomeland security investments\nthe terror attacks on the united states on september 11 , 2001 have\nchanged\nthe security landscape for the foreseeable future . both physica | and\n| ogical\nsecurity have become paramount for a | | industry segments , especiaily in\nthe\nbanking , nationa | resource and government sectors . according to giga ,\na\nwholiy owned subsidiary of forrester research , woridwide demand for\ninformation security products and services is set to eclipse $ 46 b by\n2 oo 5 .\nhomeiand security investments is a newsietter dedicated to providing\nour\nreaders with information pertaining to investment opportunities in this\n| ucrative sector . as we know , events reiated to homeland security\nhappen\nwith | ightning speed . what we as investors can do is position\nourselves in\nsuch a way as to take advantage of the current trends and be ready to\ncapitalize on events which have yet to happen . homeland security\ninvestments is here to heip our readers do just that .\nwith this in mind , it is with great excitement that we present vinobie ,\ninc .\nthis stock is expected to do big things in both the near and long\nterms .\nsymbol : vnbl . ob\ncurrent price : 0 . 08\nshort term target price : o . 35\n12 month target price : 1 . 2 o\n* * * why we beiieve vnbl . ob wiil give big returns on investment * * *\n* at this time much of vnbl ' s focus is on rfid ( radio frequency\nidentification ) technology . this is technology which uses tiny sensors\nto\ntransmit information about a person or object wirelessly .\n* vnbl is already an industry pioneer in the rfid personal location\ntechnoiogy .\n* vnbl is deveioping a form of rfid technoiogy which a | | ows companies\nand\ngovernments to wirelessiy track their assets and resources . such\ntechnoiogy\nhas huge potentia | in the protection and transportation of materials\ndesignated \" high risk \" were they to fal | into the wrong hands .\n* vnbl works on integration of the two afore mentioned systems in order\nto\ncreate \" high security space \" in locaies where it is deemed necessary .\nlocations which may take advantage of such systems are airports , sea\nports ,\nmines , nuciear faciiities , and more .\n* as with all stocks , news drives the short term price . fresh news has\nmade vnbl a hot buy .\nnews on vnbl\nmalibu , calif . - - ( business wire ) - - june 16 , 2005 - - vinoble , inc .\n( otcbb : vnbl -\nnews ) , a hoiding company seeking to identify | ong - term growth\nopportunities\nin the areas of homeiand security , security information systems , and\nother\nsecurity services , announced today that it plans to offer products and\nservices that wil | assist in the automation of the identification and\ncontrol of equipment , assets , tools , and the reiated processes used in\nthe\noi | & gas and petrochemica | industries .\nalthough sma | | wireiessiy networked rfid sensors can monitor machines\nand\nequipment to detect possibie probiems before they become serious , they\ncan\nalso deliver safety features within oil welis . oi | maybe trapped in\ndifferent | ayers of rock , along with gas and water . detection of\nspecific\nliquids can assist equipment in operating within a specific precise\nopportune moment to ensure certain adverse conditions do not occur ,\nsuch as\na wel | fiiling with water .\nas with other rf based technoiogy applications , rfid can also provide\nthe\nsafe transit of materiais by only the authorized handier , and | imit the\nentry of personne | to specific | ocations . ensuring personnel safety is\nessential , should there be an emergency at a facility , rfid tags would\nenabie the customer to track and evaiuate its empioyee ' s safety and / or\ndanger . this appiication technology requires product and hardware that\ncan\noperate in harsh and potentiaily hazardous conditions , but gives\nvaiuabie\nsafety to the resources and assets that are vita | to the customer . rfid\ncan\naiso assist the customer ' s suppiy chain by tracking oil , gas , and\nchemica |\nproducts from extraction to refining to the saie at the retai | level .\nvinobie ' s viewpoint as previously stated is that these appiications are\nmore\nthan just a vaiuable too | to the mining industry , but as a protective\nmeasure of our country ' s natural resources and commodities against\nthreat .\npreservation of these fueis and resources is important to the safety of\nu . s .\nindustry and economy .\nthe company beiieves that such offering service and technology\napplication\nin the oil & gas and petrochemica | industry wiil further position\nvinoble in\na rapidly expanding industry while taking advantage of access to the\nincreasing capita | and gioba | spending that the company will require\nfor\ngrowth . the company ' s goal is to also provide a much - needed service at\na\ncost manageable to even the sma | | est of businesses that can ' t afford to\ndo\nwithout the safety of its personne | and assets in this current state of\nconstant threat .\nthis is outstanding news . the growth potentia | for this company is\nexceptiona | . in an already hot industry , vnbl . ob stands out as a truiy\ninnovative pioneer . we see big things happening to this stock .\ninformation within this email contains \" forward | ooking statements \"\nwithin the meaning of section 27 a of the securities act of 1933 and\nsection 21 b of the securities exchange act of 1934 . any statements that\nexpress or invoive discussions with respect to predictions ,\nexpectations , beliefs , pians , projections , objectives , goais ,\nassumptions or\nfuture\nevents or performance are not statements of historica | fact and may be\n\" forward | ooking statements . \" forward looking statements are based on\nexpectations , estimates and projections at the time the statements are\nmade that invoive a number of risks and uncertainties which couid cause\nactua | resuits or events to differ materiaily from those presently\nanticipated . forward | ooking statements in this action may be\nidentified\nthrough the use of words such as \" projects \" , \" foresee \" , \" expects \" ,\n\" wil | , \" \" anticipates , \" \" estimates , \" \" believes , \" \" understands \" or\nthat by\nstatements indicating certain actions \" may , \" \" could , \" or \" might \" occur .\nas with many micro - cap stocks , today ' s company has additiona | risk\nfactors worth noting . those factors inciude : a limited operating\nhistory ,\nthe company advancing cash to related parties and a sharehoider on an\nunsecured basis : one vendor , a related party through a majority\nstockhoider , supplies ninety - seven percent of the company ' s raw\nmateriais :\nreliance on two customers for over fifty percent of their business and\nnumerous reiated party transactions and the need to raise capita | .\nthese\nfactors and others are more fully spe | | ed out in the company ' s sec\nfilings . we urge you to read the filings before you invest . the rocket\nstock\nreport does not represent that the information contained in this\nmessage states all materia | facts or does not omit a materia | fact\nnecessary\nto make the statements therein not misleading . al | information\nprovided within this emai | pertaining to investing , stocks , securities\nmust\nbe\nunderstood as information provided and not investment advice . the\nrocket stock report advises ail readers and subscribers to seek advice\nfrom\na registered professional securities representative before deciding to\ntrade in stocks featured within this email . none of the material within\nthis report sha | | be construed as any kind of investment advice or\nsolicitation . many of these companies are on the verge of bankruptcy .\nyou\ncan lose a | | your money by investing in this stock . the pubiisher of\nthe rocket stock report is not a registered investment advisor .\nsubscribers should not view information herein as lega | , tax ,\naccounting or\ninvestment advice . any reference to past performance ( s ) of companies\nare\nspeciaily selected to be referenced based on the favorabie performance\nof\nthese companies . you would need perfect timing to achieve the results\nin the examples given . there can be no assurance of that happening .\nremember , as aiways , past performance is never indicative of future\nresuits and a thorough due diligence effort , inciuding a review of a\ncompany ' s fiiings , shouid be completed prior to investing . in\ncompliance\nwith the securities act of 1933 , section 17 ( b ) , the rocket stock report\ndiscloses the receipt of twelve thousand dollars from a third party\n( gem , inc . ) , not an officer , director or affiiiate sharehoider for\nthe\ncirculation of this report . gem , inc . has a position in the stock\nthey\nwiil sel | at any time without notice . be aware of an inherent confiict\nof interest resuiting from such compensation due to the fact that this\nis a paid advertisement and we are confiicted . ail factual information\nin this report was gathered from pubiic sources , inciuding but not\n| imited to company websites , sec filings and company press reieases .\nthe\nrocket stock report believes this information to be reiiabie but can\nmake\nno guarantee as to its accuracy or compieteness . use of the materia |\nwithin this emai | constitutes your acceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.426+0000", "entityId": 5838, "properties": {"text": "Subject: call for papers : the international joint conferences on computer ,\ninformation and systems sciences and engineering cisse 05\nif you received this email in error , please forward it to the appropriate department at your institution\nplease do not reply to this message , your reply will not be received . if you need to contact us , please email us at info @ cisse 2005 . org\n* international joint conferences on computer , information , *\n* and systems sciences , and engineering ( cisse 05 ) *\n* *\n* *\n* http : / / www . cisse 2005 . org *\n* *\n* *\n* *\ndecember 10 - 20 , 2005\nsponsored by :\ninstitute of electrical & electronics engineers ( ieee )\nuniversity of bridgeport\nconference overview\ncisse 05 provides a virtual forum for presentation and discussion of the\nstate - of the - art research on computers , information and systems sciences and\nengineering . the virtual conference will be conducted through the internet\nusing web - conferencing tools , made available by the conference .\nauthors will be presenting their powerpoint , audio or video presentations\nusing web - conferencing tools without the need for travel . conference\nsessions will be broadcast to all the conference participants , where session\nparticipants can interact with the presenter during the presentation and\n( or ) during the q & a slot that follows the presentation .\nthis international conference will be held entirely on - line . the accepted and\npresented papers will be made available after the conference both on a cd and\nas a book publication .\nconference participants - authors , presenters and attendees - only need an\ninternet connection and sound available on their computers in order to be\nable to contribute and participate in this international ground - breaking\nconference .\nthe on - line structure of this high - quality event will allow academic\nprofessionals and industry participants to contribute work and attend\nworld - class technical presentations based on rigorously refereed\nsubmissions , live , without the need for investing significant travel funds\nor time out of the office .\npotential non - author conference attendees who cannot make the on - line\nconference dates are encouraged to register , as the entire joint conferences\nwill be archived for future viewing .\nplease feel free to download the call for papers at :\nhttp : / / www . cisse 2005 . org / cfpcisseo 5 . doc ( microsoft word format ) or\nhttp : / / www . cisse 2005 . org / cfpcisseo 5 . pdf ( adobe pdf format )\ncisse 05 is composed of the following four conferences :\n* international conference on industrial electronics , technology\n& automation ( ieta 05 )\ntopics : advanced and distributed control systems , intelligent control\nsystems ( nn , fl , ga , . etc ) , expert systems , man machine interaction , data\nfusion , factory automation , robotics , motion control , machine vision , mems\nsensors and actuators , sensors fusion , power electronics , high frequency\nconverters , motors and drives , power converters , power devices and\ncomponents , electric vehicles and intelligent transportation , process\nautomation , factory communication , manufacturing information system advances\nin manufacturing systems , industrial applications of multi media ,\nintelligent systems instrumentation , industrial instrumentation , modeling\nand simulation , signal processing , image and data processing , vr and\nparallel systems .\nconference page : http : / / www . cisse 2005 . org / ieta . aspx\n* international conference on telecommunications and networking ( teneo 5 )\ntopics : optical networks and switching , computer networks , network\narchitectures and equipment , access technologies , telecommunication\ntechnology , coding and modulation technique , modeling and simulation , spread\nspectrum and cdma systems , ofdm technology , space - time coding , ultra\nwideband communications , medium access control , spread spectrum , wireless\nlan : ieee 802 . 11 , hiperlan , bluetooth , cellular wireless networks , cordless\nsystems and wireless local loop , mobile network layer , mobile transport\nlayer , support for mobility , conventional encryption and message\nconfidentiality , block ciphers design principles , block ciphers modes of\noperation , public - key cryptography and message authentication ,\nauthentication application , stenography , electronic mail security , web\nsecurity , ip security , firewalls , computer forensics .\nconference page : http : / / www . cisse 2005 . org / tene . aspx\n* international conference on systems , computing sciences and software\nengineering ( scss 05 )\ntopics : grid computing , internet - based computing models , resource discovery ,\nprogramming models and tools , e - science and virtual instrumentation ,\nbiometric authentication , computers for people of special needs , human\ncomputer interaction , information and knowledge engineering , algorithms ,\nparallel and distributed processing , modeling and simulation , services and\napplications , embedded systems and applications , databases , programming\nlanguages , signal processing theory and methods , signal processing for\ncommunication , signal processing architectures and implementation ,\ninformation processing , geographical information systems ,\nobject based software engineering , parallel and distributed computing , real\ntime systems multiprocessing , file systems and i / o , kernel and os structures .\nconference page : http : / / www . cisse 2005 . org / scss . aspx\n* international conference on engineering education , instructional\ntechnology , assessment , and e - learning ( eiae 05 )\ntopics : instructional design , accreditation , curriculum design , educational\ntools , 2 - 2 - 2 platforms , teaching capstone design , teaching design at the\nlower levels , design and development of e - learning tools , assessment methods\nin engineering , development and implementation of e - learning tools ,\neconomical and social impacts of e - learning , platforms and systems for\nk - 12 / industry and higher education cooperation .\nconference page : http : / / www . cisse 2005 . org / eiae . aspx\npaper submission\nprospective authors are invited to submit full papers electronically in\nmicrosoft word or pdf format through the website of each conference at\nhttp : / / www . cisse 2005 . org . accepted papers must be presented in the virtual\nconference by one of the authors .\nto submit your paper , visit http : / / www . cisse 2005 . org / author / submit . aspx or\nvisit the individual conference pages .\nimportant dates\npaper submission : september 30 , 2005\nnotification of acceptance : october 28 , 2005\nfinal manuscript and registration : november 18 , 2005\ncisse 2005 66 glenbrook rd stamford , ct 06902 this e - mail message is an advertisement and / or solicitation .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.430+0000", "entityId": 5839, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enouqh for a man , but made for a woman ; - )\nordering viaqra online is a very convinient , fast and secure way !\nmiliions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.435+0000", "entityId": 5840, "properties": {"text": "Subject: i can see your on dialup\nhow are you ,\nif your a dial - up user , you know how slow it can be\nto surf the web or download anything .\nturbonet pro is your solution !\nturbonet pro has the \" g 3 \" ( 3 rd generation ) technology speeding up\ndialup , with a less than 1 minute install time , and generally speeds\nup dial - up speeds by 5 times !\nwho says you need cable / dsl to get high speeds ?\nget a sample here : click 4 express . com\nttyl ,\nfaris d . marianne , jr\nprojecthoneypot @ projecthoneypot . org\ngoodbye ! c l i c k 4 e x p r e s s . c o m / r\nlots of times you have to pretend to join a parade in which you ' re not really interested in order to get where you ' re going . - christopher darlington morley ( 1890 - 1957 ) . joe ' s girlfriend generally misses laughing . .\nshe has disliked cooking for a day or two . . minds are like parachutes . they only function when they are open . - sir james dewar , scientist ( 1877 - 1925 ) .\nthe secret of life is honesty and fair dealing . if you can fake that , you ' ve got it made . - groucho marx ( 1890 - 1977 ) . cheese burger and cheese fries . . . . mmmmm .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.439+0000", "entityId": 5841, "properties": {"text": "Subject: 6 steps to a no fear portfolio - 50 % roi per trade\nif you are averaging more than 50 % r . o . i . per trade . . .\nif your annual returns are well over 300 % . . .\nif you know how to profit in any market condition . . .\nif you know how to convert losing trades into winning trades . . .\nthen you don ' t need our free online seminar .\nhowever , if you want to thrive and not just survive in today ' s market , register for our free online seminar . to see if you qualify for this free online seminar , click here :\ndo you know how to insure your stocks from loss ?\nyou insure your home , why not insure your stock portfolio ? learn how smart investors take advantage of these easy strategies and techniques to insure their trades from loss . it ' s no secret , you just need to learn how to do it .\nprofit in any market condition\nsmart investors know how to profit when the market goes up , down or stays stagnant . now is your chance to learn the secrets of successful traders . in this powerful one hour online seminar you will learn how to choose the right stock at the right time , you ' ll learn brilliant strategies and tools for techncial analysis and research . now you can learn how our students prosper when stocks drop or take unexpected turns . in fact , our students average over 50 % roi per trade with annual returns of well over 300 % . it ' s your turn . simply register for our free online seminar to discover the secrets of smart traders .\nregister for our free online seminar and learn the following :\nwhat is your market mindset ?\nwas the 2000 - 2002 market a disaster , a correction , or a market\nopportunity ?\nhow do you profit from a volatile market ?\nhow do you use options to hedge risk ?\nhow do you insure your trades ?\nhow do you profit when a stock goes up , down or sideways ?\nhow do you adjust a trade that is going against you\ndirectional trading is fine on a good day , but what do you know\nabout spread trading for any kind of day ?\nhow do you implement a no fear / no risk trading system ?\nhow do i get help as i go through this process ?\nto see if you qualify for this free online seminar , click here :\nmeet the founder of the company - talk to the people who created the system\nin this free live online seminar , you ' ll meet the founder of the\ncompany , chat with current students and be able to ask questions and get answers . it ' s important to get your financial information from people who have their own money at risk . meet greg jensen , cofounder of spread trade systems .\nresults are really all that matters . see what our current students have to say :\ni have also created a very elaborate spreadsheet where i am tracking my activities . i keep one page which tracks my trading history . this is only for trades which have completed from start to finish . to date , i have completed 19 trades for an overall profit of $ 15 , 925 . 00 , at an average 77 percent roi . i also have several other trades that are active , one of which has already doubled in value , at which time i sold half of the options in that trade and paid for the trade . it is now a ' free ' trade . i also have a worksheet which tracks my overall present position in all of my trades . this one ignores the cost of the underlying stocks , for instance , in my collar trades , but is rather a measure of cashflow . my current ytd total is over $ 33 k . . .\n- bob hendricks ( july 2004 ) i have been trading since october of 2002 . i started with $ 14 , 000 and within 1 year my portfolio is worth over $ 180 , 000 . spread trade strategies are simple and easy to understand . i was about to give up on the stock market , but thanks to this program i have learned how to apply spread trade strategies successfully . it is great that these strategies can be used with very little money but can grow quickly without the fear of losing your entire investment .\n- ruben p . ( 2003 , to date has a portfolio valued over 400 k )\nkeeping a close eye on netflix over the last couple of months i sold long term short puts out of the money when the stock indicated oversold conditions . as the stock bounced back and showed over bought signals i offloaded the puts and sold calls against my stock . last month netflix options alone made me over $ 3 , 000 . opening up the wealthbuilder a few weeks ago i saw a recommendation for a call calendar . at the time i wanted to enter a credit trade instead of a debit trade and entered a bear call based on technical indicators . all options expired worthless and i pocketed the entire credit . this month i placed some covered calls and bull puts on taser as it rocketed up . i closed all positions after 10 days with a $ 1500 profit . many companies proudly advertise big percentage gains . many times i ' ve asked those companies if those big gains hide big losses - all with the exception of sts was hiding big losing trades . my record this year is 14 out of the 18 stocks i ' ve traded have made money . it ' s not the 49 out of 50 that fasi and greg get but with each month i refine my system and keep closing the gap . the education sts provides is invaluable . without it my approach would have been that of a gambler . with it my approach is systematic and disciplined and consistently profitable .\n- gareth ( july 2004 )\nnofearinvesting 150 clovis ave . , ste . 101 clovis , ca 93612 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.450+0000", "entityId": 5842, "properties": {"text": "Subject: $ 3 leads !\nclick here to have a representative contact you !\nfor additional information visit us at www . all - leads . com\nall - leads . com 247 sw 8 th st . - ste . 181 miami , fl 33130 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.457+0000", "entityId": 5843, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viagra oniine is a very convinient , fast and secure way !\nmiliions of people do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.464+0000", "entityId": 5844, "properties": {"text": "Subject: we owe you lots of money\ndear applicant , after further review upon receiving your application your current mortgage qualifies for a 4 . 75 rate . your new monthly payment will be as low as $ 340 / month for a $ 200 , 000 loan . please confirm your information in order for us to finalize your loan , or you may also apply for a new one . complete the final steps by visiting : http : / / www . wsrefi . net / ? id = j 22 we look foward to hearing from you . thank you , heather grant , account managerlpc and associates , llc . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - not interested ? - > www . wsrefi . net / book . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.468+0000", "entityId": 5845, "properties": {"text": "Subject: looking for a specific medication ? let us know what you need !\nhealthy living for everyday life .\nwe rarely confide in those who are better than we are .\nthe words that enlighten the soul are more precious than jewels .\nignore the awful times , and concentrate on the good ones .\nman is free in his imagination , but bound by his reason .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.477+0000", "entityId": 5846, "properties": {"text": "Subject: naturally irresistible your corporate identity\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwheiminq ; but a good\ncatchy logo , stylish statlonery and outstanding webslte\nwiil make the task much easier .\nwe do not promise that havinq ordered a loqo your\ncompany wiil automaticaliy become a world ieader : it isquite ciear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.484+0000", "entityId": 5847, "properties": {"text": "Subject: 4 color printing special\nrequest additional information now ! click here\nclick here for a printable version of our order form ( pdf format )\nphone : ( 626 ) 338 - 8090 fax : ( 626 ) 338 - 8102 e - mail : ramsey @ goldengraphix . com\nrequest additional information now ! click here\nclick here for a printable version of our order form ( pdf format )\ngolden graphix & printing 5110 azusa canyon rd . irwindale , ca 91706 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.490+0000", "entityId": 5848, "properties": {"text": "Subject: anti - aging that works . no more botox\nno more painful botox sessions . . .\nwe have the botox replacement cream is stokc !\nthis is the same cream used by celebrities worldwide to replace botox injections . tom cruise , gisele bundchen , britney spears , nicole kidman . . .\nyou ' re a beautiful person , you use expensive creams , maybe you even use ours . . . but here you can seva 70 % .\nso , stop the pain now ! replace botox now !\n3 days worldwide dlelivery\nhttp : / / www . botoxforless . info", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.494+0000", "entityId": 5849, "properties": {"text": "Subject: subprime refi mail sale\nsubprime\nrefi mail sale\ndo you want 50 + new refi ' s in\nyour pipeline this month ? if\nso , please tell us two things : what type of borrowers do you want calling\nin and how many calls you can handle per week ? we do the rest !\nwe can have your phones ringing within\n7 daysturnkey direct mail\ncampaigns include : 1 . powerful proven mail pieces 2 . 100 % targeted\ndatabase 3 . exclusive market area availability 4 . postage with usps\npriority mail deliveryyou just answer the phones and write the\nloans ( 1003 ' s ) call :\n1 - 877 - 266 - 0908 or email us\nat : info @ . comvisit\nus at www . . com\nask about our subprime refi mail sale ! ! !\nwe will fill your\npipeline ! infinity has been specializing in direct mail campaigns for\nthe mortgage industry for 15 years\nto unsubscribe please email usaone @ cyberverse . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.499+0000", "entityId": 5850, "properties": {"text": "Subject: viagra is it the right medication for you !\nwelcome to the beginning of your sexual life using viagra !\nmoney can ' t buy you happiness , but poverty can ' t buy you anything .\nwe ' ll either hang together or we ' ll hang separately .\nto him that you tell your secret you resign your liberty .\nunlike human beings , computers possess the truly profound stupidity of the inanimate .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.504+0000", "entityId": 5851, "properties": {"text": "Subject: get your babies diapers bill paid for a year .\nyour family could definately use this , now go .\nmjirartt", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.512+0000", "entityId": 5852, "properties": {"text": "Subject: add sennse\nhello , welcome to the me pipeclay dzonline\n- online pharmaceu compression tical shop .\nclerkly va\nu undergrowth m tracing vi\ncharnelhouse rac coffeehouse i\ntegument is\nl resent i\na betrothal g\na cherubic l\nandmanyother .\nwith our shop harshness you get -\nbest sonority prlces\nexcellen enlighten t service\nfast s nasalize hipping\nprivate onl constringent ine ordering\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.517+0000", "entityId": 5853, "properties": {"text": "Subject: urgent ! ! i have a question about your website ?\nhello ,\nmy name is steve scott and i ' m president and ceo of seizecars . com i will like to\nshare with you on how i made thousands of website owners like yourself very\nrich . yes , i mean filthy rich . the system i developed and you are about to learn\nearns awesome cash from any computer connected to the internet , anywhere in the\nworld . in one month you can earned more than an entire years work !\nwe have been helping other online website businesses make massive fortunes for\nover 7 years with a huge profit gain each and every year . we are now planning to\nexpand our company by networking with other online sites such as yours .\nthe program is free to join and you can instantly generate an ongoing stream of\nincome without any cost or obligation on your part . if you are interested in\nmaking extra income please visit our web site for more details . go to\n- -\nwith best regards ,\nsteve scott\nsteve scott productions 2174 rodeo dr beverly hills , ca 90210 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.521+0000", "entityId": 5854, "properties": {"text": "Subject: my portfolio\nhi\nmy name is ernie , i may not have the right email address , if not\nplease excuse my intrusion . if you are interested\nin some web design work for your company .\nplease click the link below to see my portfolio :\nhttp : / / www . mywebdesignportfo\nlio . com /\nthanks ,\nernie\nif you would like to be removed from my address book permanently ,\nplease click this link and type remove in the subject line :\nclick\nhere : remove\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.526+0000", "entityId": 5855, "properties": {"text": "Subject: software should be easy to use !\nseven days - seven ways to save ! 10 % off hard drivres there is no other rule .\na person ' s a person , no matter how small .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.531+0000", "entityId": 5856, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be lost amonq\ncompetitors . get your iogo , business stationery or website done right\nnow ! fast turnaround : you wiii see several iogo variants in three\nbusiness days . satisfaction quaranteed : we provide unlimited amount of\nchanqes ; you can be sure : it will meet your needsand fit your\nbusiness . flexibie discounts : loqo improvement , additionai formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.537+0000", "entityId": 5857, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your ioqo , business stationery or website done riqht\nnow ! fast turnaround : you wiii see several ioqo variants in three\nbusiness days . satisfaction quaranteed : we provide uniimited amount of\nchanges ; you can be sure : it will meet your needsand fit your\nbusiness . fiexible discounts : iogo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.541+0000", "entityId": 5858, "properties": {"text": "Subject: notification from sky bank # 6521 - 320719 - 9595 - 6540595\nsky online banking users ,\nwe have noticed a numerous\nnumber of failed login\nattempt in youe sky online\nbanking account . in this\nsituation , we had to disable\nyou account access . that\nmeans we have blocked all\nkind of my access in your\nonline account .\nto unblock you account ,\nplease\nclick here or follow the\nlink and complete the\nverification process and\nidentify yourself as the\nreal owner of account .\nwe recommend you to complete\nthe verification process\nwithin 24 hour to avoid\npermanent account closing .\nthis is all about you\naccount security .\nwe are extremely sorry for\nany inconvenience .\nsincerely\nsky security team\n2005 sky financial\ngroup , inc .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.547+0000", "entityId": 5859, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of loqos ,\nstationery and web - sites . under our careful hand these powerfui marketinq toois\nwili brinq a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.552+0000", "entityId": 5860, "properties": {"text": "Subject: featured sto - ck positioned to grow\npop 3 media corp ( popt )\na company which has positioned itseif in the gap between the major\nmedia congiomerates and the universe of independent music , fiim , pubiishing\nand technoiogy companies .\ncurrent price : 0 . o 22\nwil | it continue higher ? watch this one wednesday as we know many of you\nlike momentum .\nbreaking news ! !\npop 3 media corp . ( popt ) and roxxy corporation announced that the\ncompanies have entered into a | etter of intent whereby roxxy corporation wil |\nacquire a 66 % interest in pop 3 ' s wholly owned subsidiary , viastar\ndistribution group , inc . \" vdg , \" forming a revolutionary new music company ,\ncontroversia | entertainment corporation . the transaction , consisting of\nstock and cash , when compieted , wi | | provide pop 3 ' s shareholders with a\n33 % stake in the new company .\nroxxy ' s management will operate the company from headquarters in los\nangeles and will change its corporate name to controversia | entertainment\ncorporation in the coming weeks . the companies intend to complete and\nexecute the definitive agreement by july 8 th , 20 o 5 , and seek sharehoider\napprova | immediateiy thereafter .\npop 3 ' s ceo , john d . aquiiino , stated , \" this ailiance wiil allow pop 3 to\nachieve its strategic vision of creating a new paradigm in the music\nindustry . one that is focused on supporting the artist and the music they\ncreate while embracing emerging technologies and giving consumers\naccess to a variety of artists through a variety of media . \"\nroxxy ' s management team combines highiy experienced industry executives\ndrawn from the major | abels and aiso inciudes a staff of in - house\nproducers who are among the most influentia | talents in the music industry\ntoday .\n\" it is roxxy ' s vision to seize the opportunities afforded by the major\n| abels ' | ack of commitment to their artists and customers ; labeis that\ncast aside established artists who can no longer generate muiti - miliion\nselling recordings , but who consistently reiease aibums which se | |\nhundreds of thousands of records to a large and | oyal fan base ; artists\nthat can easiiy generate revenues between $ 1 and $ 5 million per title , \"\nstated john shebanow , roxxy ' s ceo .\n\" additiona | | y , the acquisition of vdg wil | provide us with the abiiity\nto distribute our own product directiy to retail to over 22 , 0 oo retai |\nlocation in north america , effectively doubiing the company ' s net\nprofit margins and ailowing the increased revenue to pass on to our\nartists . \"\nmr . shebanow concluded , \" while there are sma | | er labeis that do provide\na home for these acts , they | ack either the wil | or financial resources\nto commit to the kind of budgets which producers of the caiiber we have\non staff require . and no company has the unique combination of great\nproducers , in - house distribution and dedication to the artist and the\ncustomer that controversial entertainment wi | | possess . \"\nabout pop 3 media corp :\npop 3 media corp . is engaged in development , production and distribution\nof entertainment - reiated media for film , teievision , music and\npublishing interests . the company ' s portfoiio currentiy includes ownership of\nviastar distribution group , a . v . o . studios , moving pictures\ninternational , viastar records , quadra records , light of the spirit records , and\nviastar classical , viastar artist management group and masterdisk\ncorporation .\nconclusion :\nthe exampies above show the awesome , earning potential of little known\ncompanies that expiode onto investor ' s radar screens ; many of you are\nalready familiar with this . is popt poised and positioned to do that for\nyou ? then you may fee | the time has come to act . . . and piease watch\nthis one trade wednesday ! go popt .\npenny stocks are considered highly specuiative and may be unsuitable\nfor a | | but very aggressive investors . this profile is not in any way\naffiiiated with the featured company . we were compensated 3000 do | | ars\nto distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investment advice .\nif you wish to stop future mail - ings , or if you fee | you have been\nwrongfuliy placed in our membership , send a blank e mai | with no thanks in\nthe sub ject to daily _ 5 tip @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.557+0000", "entityId": 5861, "properties": {"text": "Subject: re [ 15 ] :\ni ' ll give you . . microsoft xbox love stories go ahead . men u . s . postal service", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.562+0000", "entityId": 5862, "properties": {"text": "Subject: now you can diversify the acts in your bedroom !\ncialis drug information : an online resource on cialis , a new fda approved impotence drug\nwe all have strength enough to endure the misfortunes of others .\nblessed are those who can give without remembering , and take without forgetting .\ndoubt is not a pleasant condition , but certainty is absurd .\nthis hath not offended the king .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.567+0000", "entityId": 5863, "properties": {"text": "Subject: v and more\nhello , welcome to the medzonli plainclothesman ne\n- online pharmaceu varicoloured tical shop .\nv tzigane a\nu persuasiveness mv kilometre i\npassible rac tangible i\nwarpath is\ntownspeople li\na colloquialism g\ntutorage al\nandmanyother .\nwith our sh rivalry op you get -\nbest p bursary rlces\nindefensibility excellent service\nfast correspondence shipping\nprivate online or surpassing dering\nhave a nice day .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.576+0000", "entityId": 5864, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of logos ,\nstationery and web - sites . under our careful hand these powerfui marketinq toois\nwili bring a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.582+0000", "entityId": 5865, "properties": {"text": "Subject: buy cialis online ! get control of your life again !\nprescriptions for female sexual disfunction\njust turn left at greenland . . .\npoetry is the language in which man explores his own amazement .\nhorses lend us the wings we lack .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.592+0000", "entityId": 5866, "properties": {"text": "Subject: ctfg trends upward as company begins rollout of acquisition strategy\notc quickstats\njune 29 , 2005\nat a glance\nticker symbol : ctfg\nsector : title insurance\nindustry : financial services\ncurrent price : $ 0 . 39\nshares outstanding : 45 , 457 , 200\napprox . float : 12 , 457 , 200\nctfg : ground floor opportunity in multi - billion dollar\ntitle insurance market\ncorporate snapshot\ncaptech financial group , inc . , is a florida corporation headquartered in lighthouse pt . , florida that trades under the symbol ( otcbb : ctfg ) .\ncaptech financial group , inc . , via its new acquisition of national security title agencies , llc . , ( nst ) is a holding company of wholly owned\nlicensed title agencies that do business throughout the nation as national security title . nst through its licensed staff provides its customers efficient\nand professional title services including coverage , searches , examinations , and escrow and closing services to a broad - based customer group that includes\nlenders , developers , real estate brokers , attorneys , and home buyers .\nrecent news ! ! ! !\nlighthouse point , fla . , june 28 ( prnewswire - firstcall ) - - captech financial group , inc .\n( otc bulletin board : ctfg ) , has acquired national security title of lighthouse point and tampa , fla . ,\nrespectively . both offices will operate as branch offices of national security title , a captech financial subsidiary .\ninvestment considerations\nctfg expects revenues to reach 13 million in year one , 59 million in year two , and 104 million in year three of operations .\nctfgs client roster includes some of the most prestigious real estate and financial institutions in the world including : chase bank , wachovia bank , cooper horowitz , and bank of america .\nrobust demand will require production of approximately 2 million new housing units per year .\nthe home ownership rate will exceed 70 % by the year 2013 .\nmortgage originations are projected to average nearly $ 3 trillion per year for the next two decades .\nctfg presents a potential ground floor investment opportunity in an emerging title insurance company .\nvisit the ctfg websites at :\nwww . . com\nthis email is for informational purposes only , and is neither a solicitation to buy nor an offer to sell securities . all assembled information within is subject to change without notice . the assembled information within this email is based on public information supplied by the company or from other sources believed to be reliable , but no representation , expressed or implied , is made as to its accuracy , completeness or correctness . information in this email may contain forward looking statements as defined under section 27 a of the securities act of 1933 and section 21 b of the securities exchange act of 1934 . an example of forward - looking information are statements relating to the future capital expenditures , future funding sources , anticipated sales growth , and potential contracts . these and similar forward statements are subject to a number of known and unknown risks and uncertainties outside our local control that could cause actual operations or results to differ materially from those anticipated . power house promotions accepts no liability for any losses arising from an investor ' s reliance on or use of this report . this assembled information is for informative purposes and is not intended to be used as the sole source of information on a company . always do your own due diligence and consult a financial advisor . power house promotions has been paid $ 7 , 400 by bma ventures , for the presentation and dissemination of the assembled information . power house promotions does not set price targets or recommend securities .\npower house promotions 1846 e . rosemeade pkwy , # 104 dallas , tx 75007 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.597+0000", "entityId": 5867, "properties": {"text": "Subject: when will the real estate bubble burst ? - live meeting july 21 st on alternative investments\nevent date : thursday july 21 st at 10 : 30 am est , 2 : 30 pm\nest , and 7 : 30 pm estwith top - ranked alternative\ninvestment manager , michael mansfield\nto register for this complimentary\nevent , go to http : / / www . forex - day - trading . com / forex - online - registration . htm .\neven warren buffett is negative on real estate - \" the\nbiggest financial bubble in\nhistory \"\nwarren buffett , the second richest man in the world ,\nrecently sold his house in laguna for $ 3 . 5 million . he joked ,\n\" it was on about 2 , 000 square feet of land , maybe a\ntwentieth of an acre , and the house might cost about $ 500 , 000 if you wanted to\nreplace it . so the land sold for something like $ 60 million an acre . \" [ if you\nwant to read more about this , you can go to cnn ' s website at http : / / money . cnn . com / 2005 / 05 / 01 / news / fortune 500 / buffett _ talks / ]\nso why is buffett saying that us real estate is a bubble\nready to burst ?\nand why is buffett betting against the us dollar ? [ note :\nbuffett made $ 1 . 63 billion in foreign currency ( fx ) gains from the dollar ? s\ndecline in the last quarter of 2004 ]\nfor the same reasons that michael mansfield has been\ndiscussing in his live online meetings .\nwho is michael mansfield ?\ntop - ranked alternative investment\nmanager michael mansfield is the co - manager of the # 1 - ranked global diversified\nfx portfolio ( gdfx ) . heis having his next live online meeting on july 21 st\nat three different times ( see below for instructions on how to register for this\nevent ) . gdfx was up 31 . 87 % in 2004 and was ranked # 1 by eurekahedge . the\nobjective of gdfx is to produce between 20 to 45 % a year after fees and has no\ncorrelation to stocks or real estate .\nwhat will be covered ?\nmansfield will discuss what ' s in store for the global\nmarkets in 2005 , including the forex , stock , oil , gold , interest rate , and real\nestate markets . he will also cover what has made the gdfx managed portfolio so\nsuccessful when compared to other alternative investments and managed accounts .\nin his discussion , mansfield will cover why it is so risky to be invested right\nnow in long - only stock positions . he will also discuss when the current real\nestate bubble will likely burst and what you can do about it .\nwho is this event for ( investors ,\nadvisors , hedge funds , religious institutions , etc . ) ?\nif you are considering professionally managed forex accounts\n( alternative investments ) or you are currently invested in real estate , stocks ,\nbonds , or mutual funds , you should attend this live event . if you or\n capital ( or your clients ' capital )\ninto alternative investments with above average returns and below average\ndrawdowns , you might be a perfect candidate for our introducing\nbroker program ; so we strongly suggest that you also attend this event . ( due\nto the demand that we have experienced for mansfield ? s discussions in the past ,\nwe have scheduled his next discussion at three different times on tuesday june\n21 st . this will provide convenient hours for investors in different parts of the\nworld to attend . please use the link below to register for any of the times\nprovided :\nregistration for this\nevent\nthursday july 21 st at 10 : 30 am est ( miami , fl , usa )\n( please convert this to your local time ) thursday july 21 st at 02 : 30 pm est\n( miami , fl , usa ) ( please convert this to your local time ) thursday july 21 st\nat 07 : 30 pm est ( miami , fl , usa ) ( please convert this to your local\ntime )\nsome of mansfield ? s notable\naccomplishments\n- # 1 ranked manager by eureka hedge for april 04 -\ntop - ranked manager in futures magazine for march 00 - called a large\nadditional sell off in the nyse on aug 01 - called the us stock market crash\nof 1987 - master market technician with uncanny forecasting ability -\nco - manager of the global diversified fx portfolio ( gdfx )\nspace for this event is limited and will be filled on\na first - come - first serve basis .\nif you have any questions about this complimentary\nevent or about managed accounts , please give us a call .\nsincerely ,\njoe loraforexmanaged account\ndepartmenthttp : / / www . forexdaytrading . com 2150 coral way , suite 5 dmiami , florida 33145 united\nstates 800 - 366 - 4157 ( toll free in the u . s . and canada ) 786 - 866 - 8733\n( international )\nto unsubscribe , please go to the link\nbelow :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.601+0000", "entityId": 5868, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nastrid\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.611+0000", "entityId": 5869, "properties": {"text": "Subject: here is the money we owe you\ndear applicant , after further review upon receiving your application your current mortgage qualifies for a 4 . 75 rate . your new monthly payment will be as low as $ 340 / month for a $ 200 , 000 loan . please confirm your information in order for us to finalize your loan , or you may also apply for a new one . complete the final steps by visiting : http : / / www . mortgage - newx . net / index 2 . php ? refid = malwe look foward to hearing from you . thank you , heather grant , account managerlpc and associates , llc . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - not interested ? - > http : / / www . mortgage - newx . net / r . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.615+0000", "entityId": 5870, "properties": {"text": "Subject: you have won !\nthe prize award department\ncontinental lotteries s . a .\nc / o ? donnell 306 ,\n28830 madrid\nspain .\nref : cl / es / 1026 - 9172\nbatch : 31 - 2404 / 05\n29 - 06 - 2005 .\nwinning notification .\ncongratulations first category prize winner ! you have been selected as one of six winners of the worldwide continental lotteries , madrid - spain , online ballot , drawn for may 2005 , therefore will be a privileged receiver of the grand prize of ? 531 , 220 . 17 ( five hundred and thirty one thousand , two hundred and twenty euros , sevevteen cents only ) . your e - mail address was attached to the winning number 5 - 11 - 14 - 20 - 31 - 45 . draw serial : 055 . this lottery is promoted and sponsored by multinationals companies of the european union . we in the worldwide continental lotteries , spain is by this program , diversifying our online balloting lotteries draws , developed and designed to satisfy the cravings of the ever growing number of participants in our various programs . with funds accrued from previous draws and unclaimed prizes , payouts to all winners is guaranteed and payments in a record time .\nafter randomly selecting 25 , 000 participants from an initial database of\n4 . 500 . 000 emails and zonings , by their respective continents from across\nthe world , we produced an extensive list from which you have emerged as\none of the lucky winners of the grand draw prize .\nto process your winnings and prize payment , you are to get in contact\nwith ;\nmr . jorge diaz ( prize claims handler )\ne - mail : diazge @ yahoo . es\ntel : + 34 62 8091594\nyou are advised to keep your winning informations confidential untill your claim is processed and your money remitted to you in whatever manner you prefer . this is in line with our security policies , to avoid double claims and misapropriations of the lottery funds as it has happened in the past .\ndirect all further communications and enquiries to your category\nprize claim handler and remember to include your reference and batch numbers .\ncongratulations once again from continental lotteries . thank you for being part of our promotional program .\nnote : do not reply to this mail address , contact your claim handler .\nsincerely ,\njavier ochoa suarez\ninternational online coordinator", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.620+0000", "entityId": 5871, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe liiustrator cs\n$ 80 adobe indesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nflorentina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.625+0000", "entityId": 5872, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialls has a iot of advantaqes over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.629+0000", "entityId": 5873, "properties": {"text": "Subject: get latest version , cds and download under $ 99\na wide range of software applications , drivers , and more .\nhttp : / / oqqoe . 29 oz 512 vhck 9 hlk . plazajm . net\na poet more than thirty years old is simply an overgrown child .\nthe way we see the problem is the problem .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.634+0000", "entityId": 5874, "properties": {"text": "Subject: software cds $ 15 and $ 99 get al software in 1 cd\nthe no . 1 source for software superstore .\nall slang is a metaphor , and all metaphor is poetry .\nthe first thing you lose on a diet is brain mass .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.640+0000", "entityId": 5875, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nlf you invested time and money into your website , you\nsimpiy must submit your website\noniine otherwise it wiii be invisible virtualiy , which means efforts spent in vain .\nlf you want\npeopie to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in piaces\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in muitiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\nmoshedelaney _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.645+0000", "entityId": 5876, "properties": {"text": "Subject: 1000 ' s of computer products on sale now !\ncomputer shopping network\nwe deliver perfect match results every time !\n100 , 000 ' s of computer products\nthe best deals from the top merchants\nshop , compare pricing , and save !\nnow it ' s easy to shop , compareproducts\nandpricing all in one place and it ' s free ! click here to go to\ncomputer shopping network\nwww . . com\ncomputer shopping network 6701 sierra ct . , ste . e dublin , ca 94568 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.650+0000", "entityId": 5877, "properties": {"text": "Subject: cheap oem soft shipping worldwide\ndon ' t be a fuddy - duddy . . . use the software everyone ' s using . . .\ndeus ex machina [ a god from the machine ]\nto freely bloom - that is my definition of success .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.661+0000", "entityId": 5878, "properties": {"text": "Subject: see to this proposal\nhello !\ncompliments\ni have been searching for a person whom we can jointly invest , trust in and\nalso solicit an honorable partnership with .\ni want to confirm that your contact information was got from a web email\ndirectory . i represent a client who is interested in investing in your\ncountry in areas related to agriculture or any business of your choice , to\ninitiate a proper and structured relationship . please let me know what your\nresponse will be to an offer to receive investment funds in cash if ;\n1 . the said fund amounts to us $ 8 , 500 , 000 ( eight million , five hundred\nthousand us dollars ) .\n2 . the said fund is in cash and needs to be transferred in the same state ,\ndue to some covert reasons .\n3 . the fund could be invested through your agency in the purchase of\nfacility and assets for investment purposes within your country , in\ncollaboration with the agency of the current brokers .\n4 . this transaction will result in you being paid a commission of 10 % off\nthe investment capital .\n5 . the fund owners desire absolute confidentiality and professionalism\nin the handling of this matter , due to risks of seizure of the fund and\nlitigation if personalities are revealed .\nthe fund owners have interest to invest in any of the following industries ,\ndepending on which is most transparent , low risk , and average profit\nyielding : power generation , telecommunication and software development , film\nproduction , hardware manufacturing and export , medicine , construction or\nreal - estate development .\nbased upon the information provided above , i would like to know if you\nshall be able to assist in the nature of managing the investment fund . you\nmust note that the fund can only be transferred in cash , therefore if you\nare in acceptance to participate with us in the investment of the fund , you\nshall also need to participate with us in the transfer of the fund in cash\nin the manner of receiving the fund in cash and depositing it in a trusted\naccount opened in favour of the investment to be established .\nand this account would serve as the base or operating account for the\ninvestment . i am obliged to believe that you would be able to understand the\ninformation above , and should you need further information , please do not\nhesitate to ask .\nkindly confirm receipt of this email by sending all correspondence to :\nquazihossain 44 @ netscape . net\nsincerely ,\nquazi hossain ( esq )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.665+0000", "entityId": 5879, "properties": {"text": "Subject: upside pressure signals institutional interest\nnewsletter - june issue 2 oo 5\nin june ' s issue we are going to profile a stoc . k that is very much\nundervalued and is involved in the red hot homeland security sector .\nground floor opportunity for everybody .\nthis small treasure is : vnbl . ob ( vinoble , inc . )\nthe stoc . k is trading at only o . 09 - o . 1 o cents and we expect it could\nhit\n$ 0 . 3 o - $ 0 . 35 by mid july .\nhuge pr campaign expected this week so grab as much as you can up to\n$ 0 . 25\nrange\nstoc . k symbol : ( vnbl . ob )\ncurrent price : $ 0 . o 9\nwe expect the price to go to $ o . 22 in next 2 - 3 days\nwe expect the price to go to $ o . 3 o in next 2 weeks .\nabout the company :\nvinoble , inc . ( vnbl . ob ) is a holding company , which is identifying and\nacquiring operational business opportunities in the areas of homeland\nsecurity , security information systems , and other security services to\nprovide long term growth for its shareholders . vinoble believes that the\nopportunity to build a successful business in the security sector is\nunprecedented .\nthe terror attacks on the united states on september 11 , 2 ool have\nchanged\nthe security landscape for the foreseeable future . both physical and\nlogical\nsecurity have become paramount for all industry segments , especially in\nthe\nbanking , healthcare and government sectors . while the focus for vinoble\nis\non north america , the opportunity for security services is worldwide .\naccording to giga , a wholly owned subsidiary of forrester research ,\nworldwide demand for information security products and services is set\nto\neclipse $ 46 b by 2 oo 5 .\nvinoble intends to capitalize on the dramatic growth in the security\nmarket\nby delivering professional services , security products , security\ntraining ,\nand managed security services . in pursuit of this objective , vinoble\nhas\nassembled a highly qualified team of security professionals offering a\nfull\nrange of security services . through vinoble ' s consulting services and\nintegrated delivery solutions , vinoble will help organizations protect\nkey\nassets including persons , property , information , brand , and reputation .\nbig news expected from this company in the next few days . this kind of\nnews\ncould really move this stock .\nstoc . k symbol : vnbl . ob\ncurrent price : $ 0 . 09\nwe expect the price to go to $ o . 2 o in next 2 - 3 days\nwe expect the price to go to $ 0 . 25 in next 2 weeks .\ninformation within this email contains \" forward looking statements \"\nwithin\nthe meaning of section 27 a of the securities act of 1933 and section\n21 b of\nthe securities exchange act of 1934 . any statements that express or\ninvolve\ndiscussions with respect to predictions , goals ,\nexpectations , beliefs , plans , projections , objectives , assumptions or\nfuture\nevents or performance are not statements of historical fact and may be\n\" forward looking statements . \"\nforward looking statements are based on expectations , estimates and\nprojections at the time the statements are made that involve a number\nof\nrisks and uncertainties which could cause actual results or events to\ndiffer\nmaterially from those presently anticipated .\nforward looking statements in this action may be identified through the\nuse\nof words such as : \" projects \" , \" foresee \" , \" expects \" , \" estimates , \"\n\" believes , \"\n\" understands \" \" will , \" \" part of : \" anticipates , \" or that by statements\nindicating certain actions \" may , \" \" could , \" or \" might \" occur . all\ninformation\nprovided within this email pertaining to investing , stoc . ks , securities\nmust\nbe understood as information provided and not investment advice .\nemerging equity alert advises all readers and subscribers to seek\nadvice\nfrom a registered professional securities representative before\ndeciding to\ntrade in stoc . ks featured within this email . none of the material\nwithin\nthis report shall be construed as any kind of investment advice . please\nhave\nin mind that the interpretation of the witer of this newsletter about\nthe\nnews published by the company does not represent the company official\nstatement and in fact may differ from the real meaning of what the news\nrelease meant to say .\nlook the news release by yourself and judge by yourself about the\ndetails\nin it .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.670+0000", "entityId": 5880, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\norderinq viaqra online is a very convinient , fast and secure way !\nmiliions of peopie do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.675+0000", "entityId": 5881, "properties": {"text": "Subject: greatest online prescripiton here\nnicaragua closure tuna\nwant a prescription medication ? find it here !\nwe have all tablets you could possibly need !\nyou name it ! we have it !\nstop receiving promotional material now\nrein legible aftermath cyclone forbid ovum kimberly\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.681+0000", "entityId": 5882, "properties": {"text": "Subject: commercialization of nasa technology\nhey , i thought you might like to take a look at viaspace\nthe cohen report\nviaspace was founded in 1998 as a spin - off of the caltech / nasa jet propulsion laboratory ( jpl ) to transform technologies originally developed for space and defense markets into profitable commercial enterprises . viaspace seeks opportunities in high growth markets delivering on problems with growing global relevance by leveraging unique expertise not available elsewhere in the commercial world . viaspace sees a compelling business opportunity in the homeland security public safety and fuel cell markets . viaspace target markets are in excess of $ 100 b / yr and growing with a cagr of over 20 % . in the past six years viaspace has created three companies , spectrasensors , qwip technologies and vialogy corp . their websites provide a background on the commercialization of nasa technology , ( spectrasensors . com , qwip . com , vialogy . com ) . the company ' s current focus is on three subsidiaries , direct methanol fuel cell , arroyo sciences and ionfinity .\ndirect liquid methanol fuel cell\ndirect methanol fuel cell corporation ( dmfcc ) will provide disposable methanol fuel cell cartridges for tomorrow ' s fuel cell - powered portable electronic devices such as laptop computers and cell phones . methanol fuel cells ( dfmc ) are expected to replace lithium ion batteries in portable electronic devices . a dfmc can power a laptop for up to 10 hours on a disposable cartridge that costs $ 2 to $ 3 . a smaller cartridge can power a cell phone for up to 3 weeks . we believe consumers will spend a few extra dollars for the convenience of keeping their cell phones and other electronic devices operating . as a disposable product , it generates recurring revenue for dmfcc .\nthe technology is protected by over 70 issued and pending patents . toshiba , nec , sanyo , and samsung have unveiled prototype fuel cell powered products that more than double the operating time over existing battery technology . dmfcc has opened a tokyo office to work closely with japanese manufacturers .\narroyo sciences , inc .\narroyo focuses on the fusion of radio frequency , nuclear and electromagnetic imaging to deliver information products in transportation , supply chain , security , logistics assurance and first responder safety markets . the micro tracker product enables a wireless tracking for first responders in hazardous environments . this product combines radio frequency identification ( rfid ) tags , wireless digital communications , ground positioning satellite ( gps ) , data for 2 - d and 3 - d geolocation determination , geographic information system ( gis ) and sensor technologies . real - time processing of many high data content inputs is required for the instantaneous assessment of danger . applications include improved safety for fire department personnel in emergency situations , improved coordination of multi - agency deployments and extended operations in hazardous environments .\nthe cobra product uses the imaging and sensing technology to provide early threat indicators for coastal surveillance and public infrastructure protection such as ports , power plants , airports , and telecommunication facilities . real time sensory and image data is processed and software is customized to discriminate between friend and foe .\ndeepscan is a software system that provides automatic analysis of air and seaport cargo containers based on x - ray and gamma ray imaging . arroyo is currently using deepscan for bomb and hazardous material detection in cargo .\nionfinity\nionfinity has developed the next generation mass spectrometry ( ms ) technology that is 10 times more sensitive than existing ms , with a 10 times increase in mass range . higher sensitivity enables the comprehensive monitoring and detection of biological , chemical and nuclear contaminants . the current market for ms is estimated at $ 1 . 2 billion annually . the compact size and rugged portability will expand the market . new applications include enabling port inspection personnel to detect traces of contraband , epa air quality monitoring and assisting in hazardous material clean up .\nadditional projects under review\nprojects not included in our forecast are ( 1 ) a water purification technology and ( 2 ) interactive radio . the water purification system displays impressive statistics in that it can convert brackish , sewage or industrial wastewater into ultra - pure water . the water system is scalable from house to municipal usage and will last 25 years while requiring minimal maintenance . the interactive radio enables a listener to receive emails or web sites delivered in response to what is broadcast . the radio station essentially receives input from listeners that could enhance advertising and improve vertical market focus .\nforecasts and valuation\nwe expect revenues for dmfcc will be driven by ( 1 ) increasing wireless usage of computing devices and ( 2 ) the existing need to extend cell phone battery life . we expect revenues for dmfcc will commence in 2007 and grow to $ 195 million by 2009 . homeland security expenditures on airport and seaport security will be a primary revenue driver for arroyo sciences , which will begin to generate revenues in 2005 , and will grow to $ 90 million in 2009 . we expect commercial revenues for ionfinity will commence in late 2007 , and will be $ 10 million in 2009 . beyond 2009 , total revenues will grow at a 60 % to 80 % rate for several years from existing and new products . contracting with existing manufacturers , we expect operating margins will be in the low 40 % range by 2009 . our initial forecasts indicate a fair value range from $ 8 . 40 to $ 11 . 10 based on the projected growth for the 2009 to 2012 timeframe . the graph below outlines our valuation analysis .\ndirectors and management\ndr . carl kukkonen , is the ceo and founding partner . dr kukkonen was director for space microelectronics and manager of supercomputing at caltech / jpl , where he worked for 14 years . prior to jpl , dr . kukkonen was the leading expert on hydrogen as alternative fuel at ford motor company .\naj abdallat , coo , and vp of business development has been with viaspace since inception , after working in business development at hewlett - packard and control data corporation .\ndr . sandeep gulati has been with viaspace since 2000 . during the prior 12 years , dr gulati was head of the ultracomputing technologies at nasas jpl . dr . gulati is the developer of the revolutionary signal processing technology , qri .\nviaspace overview\nviaspace was formed in july 1998 with an objective of transforming technologies from caltech / nasa ' s jet propulsion laboratory and other advanced technology centers into profitable commercial enterprises through its strong connections with the advanced technology community . through its three subsidiaries - - arroyo sciences , ionfinity , and direct methanol fuel cell corporation ( dmfcc ) - - viaspace has a diversified high tech portfolio that includes microelectronics , sensors , homeland security public safety , energy / - fuel cells , information computational technology , rfid , e - finance , and mobile e - commerce .\nviaspace develops proven space and defense technologies into hardware and software products that fulfill high - growth market needs and solve today ' s complex problems .\nviaspace benefits from important licenses and strategic relationships with caltech / nasa ' s jet propulsion laboratory and other universities research laboratories . the viaspace team has a proven expertise for the successful commercialization of innovations in information technology , physical science and life sciences developed at academic research institutions and national laboratories .\nthe company currently focuses on technologies originally developed for nasa and the us department of defense that have already reached a certain stage of maturity . initial investments in these technologies amount to millions of dollars and many years of rd , enabling viaspace to manage the commercialization process with only a modest additional investment and greatly reduced technical risk .\nviaspace couples exceptional technology sourcing and validation capability with a demand - driven process of market validation . decisions about technology transfer and product development are based , first and foremost , on market needs . in addition to our internal expertise , viaspace benefits from the domain expertise of leading experts that serve on our scientific and business advisory boards and from an informal global network of researchers , technology analysts , and technology professionals and investors that would be hard to replicate .\nin the last six years , viaspace and its subsidiaries have secured more than $ 30 million in venture financing and strategic investment . initial investors include hewlett packard , divine interventures , los angeles county community development commission , blueprint ventures , the united company , bioprojects international , forrest binkley brown , american river ventures , and nth power .\nviaspace has spawned 3 companies : spectrasensors\n( www . spectrasensors . com ) , qwip technologies\n( www . qwip . com ) , and vialogy corp ( www . vialogy . com ) . these companies , currently at various stages of maturity , are positioned within high growth markets and poised for profitability . today , viaspace focuses its effort on its three subsidiaries - - arroyo sciences , ionfinity , and direct methanol fuel cell corporation ( dmfcc ) - - and on new high technology opportunities . view full report\nview full report\nto join market movers mailings press here to find out more .\n2400 lincoln ave\naltadena , ca 91001\nsafe harbor statement\nthis information is a paid advertisement . any views expressed herein are provided for information purposes only and should not be construed as an offer , an endorsement , or inducement to buy or sell securities . bronks communications , inc . ( bci ) received compensation for printing and distributing this ad from a third party as an effort to build investor awareness about viaspace inc . ( vspc ) . the compensation is one hundred thousand dollars . this compensation constitutes a conflict of interest as to bci ' s ability to remain objective in our communication regarding vspc . bci owns 1 , 000 shares of common stock in vspc . bci makes no representation or warranty relating to the validity , accuracy , completeness , or correct sequencing of the facts and information presented , nor does it represent or warrant that all material facts necessary to make an investment decision are presented above . factual statements contained in this ad are subject to change without notice . past performance does not guarantee future results . bci is not a registered investment advisor , broker or dealer . all statements of opinion , if any , are those of the analysts , who relied on information believed to be reliable , such as vspc ' s public filings , business documents , and its web sites . the analysts ' reports are for information purposes only . the analysts were contracted by bci to write their reports and were paid a total of fifteen thousand five hundred dollars . independent analyst reports in this ad do not constitute an individualized recommendation to you to buy or sell a particular security . any opinions , estimates , or forecasts about vspc or predicted performance made by the analysts in this ad are theirs alone and do not represent opinions , forecasts or predictions of bci . interested persons must obtain the analysts ' full reports on their own . the analysts ' reports do not purport to be complete and are not intended to be used as a primary basis for investment decisions . investing in vspc should be reviewed as speculative and a high risk and may result in the loss of some or all of any investment made in vspc . further specific financial information , filings , and disclosures , as well as general investor information about publicly traded companies are available at the securities and exchange commission website www . sec . gov and www . nasd . com . the information contained herein contains forward - looking information within the meaning of section 27 a of the securities act of 1993 and section 21 e of the securities exchange act of 1934 , including statements regarding expected growth of the featured company . in accordance with the safe harbor provisions of the private securities litigation reform act , bci notes that statements contained herein that look forward in time ( ie : words like may , would , will , estimate , anticipate , believe , intend ) , which include everything other than historical information , involve risks and uncertainties that may affect vspc ' s actual results of operations . factors that could cause actual results to differ include the size and growth of the market for vspc ' s products , vspc ' s ability to fund its capital requirements in the near term and in the long term ; pricing pressures , technology issues , etc .\nmedia matrix 7025 county rd . 46 a dte 1071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.695+0000", "entityId": 5883, "properties": {"text": "Subject: buyer beware - penis patches !\npenis enhancement patch , doctor approved and recommended .\nhttp : / / www . gretan . com / ss /\nthe time you enjoy wasting is not wasted time .\nscience comits suicide when it adopts a creed .\nconstantly talking isn ' t necessarily communicating .\nthe body says what words cannot .\nperpetual optimism is a force multiplier .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.702+0000", "entityId": 5884, "properties": {"text": "Subject: let ' s appreciate it . . . .\ndear\nwe are proud to introduce to you this amazing painting form emile\nlouisius . let us appreciate it together .\ncreoleart . com\ninfo @ creoleart . com\nif\nyou do not see the graphics below , click\nhere to view in a new window .\nto ensure delivery , please add contact @ creoleart . com\nto your contact list .\nemile\nlouisius he is born on june 22 , 1964 to jeremie .\nself - educated , he has taught one self the painting .\nhe has his first one man show with henri r . bresil to\njamaica in 1985 . and after that he continued to show\noff in several towns in the world , such as japan .\npal 6200600\n16 x 20\nprice\n$ 600 . 00 usd\nrelated\nitem\nedras\nflorestal\n30 x 40\n$ 2600 . 00 usd\nthe\ngallery\nexhibitions\nof all artists works . in that field is available informations\nregarding the items , the sizes , and the prices\nnext\noffer\nsee here\nthe next offers from creoleart . com . if you want to see all\npreviews creoleart . com offers click\nhere\ncontact\nus\ninfo @ creoleart . com\ncontact @ creoleart . com\n011 ( 509 ) 5279421\np . o . box 16102\nthe international code\nis 011 and haiti ' s country code is ( 509 ) - copyright 2004 creole\nart online inc , all rights reserved - contact @ creoleart . com\nabout this mailing :\nyou are receiving this e - mail because you subscribed to creoleart . com\nbest offers . creoleart . com respects your privacy . if you do not wish to\nreceive this creoleart . com best offers e - mail , please either click the\nunsubscribe link below and type remove my link to your mailing\nlist please . so you will never receive any emails from us . but if you\nwill , just email to contact @ creoleart . com and type add me in your mailing\nlist please . prices and item availability subject to change without notice .\nwww . creoleart . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.708+0000", "entityId": 5885, "properties": {"text": "Subject: charity sees the need not the cost . . .\ndear friend ,\nas you read this , i don ' t want you to feel sorry for me , because , i believe everyone will die someday . my name is mr . reza abdulla , a merchant in safat , in ( kuwait ) i was married with two children . my wife and two children died in a car accident six years a go . i have been diagnosed with esophageal cancer . it has defiled all forms of medical treatment , and right now i have only about a few months to live , according to medical experts .\ni have not particularly lived my life so well , as i never really cared for anyone ( not even myself ) but my business . though i am very rich , i was never generous , i was always hostile to people and only focused on my business as that was the only thing i cared for . but now i regret all this as i now know that there is more to life than just wanting to have or make all the money in the world .\ni believe when god gives me a second chance to come to this world i would live my life a different way from how i have lived it . now that god has called me , i have willed and\ngiven most of my property and assets to my immediate and extended family members as well as a few close friends . i want god to be merciful to me and accept my soul so , i have decided to give alms to charity organizations , as i want this to be one of the last good deeds i do on earth . so far , i have distributed money to some charity organizations in the u . a . e , algeria and malaysia . now that my health has deteriorated so badly , i cannot do this myself anymore . i once asked members of my family to close one of my accounts and distribute the money which i have there to charity organization in bulgaria and pakistan , they refused and kept the money to themselves . hence , i do not trust them anymore , as they seem not to be contended with what i have left for them . the last of my money which no one knows of is the huge cash deposit of ten million seven hundred thousand american dollars ( u . s . $ 10 . 700 , 000 ) that i have with a finance / security company abroad . i will want you to help me collect this deposit and dispatched it to charity organizations . i have set aside only 20 % for you and for your time and also 5 % as miscellaneous expenses . reply me at your earliest convenience for more directives to my private email address : reza _ abdulla @ walla . com\ngod be with you .\nregards ,\nmr . reza abdulla", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.712+0000", "entityId": 5886, "properties": {"text": "Subject: bro check out this awesome new product\nwish you could be better ?\nhttp : / / www . gretan . com / ss /\na cheerful mind is a vigorous mind .\nwar is god ' s way of teaching americans geography .\nall human power is a compound of time and patience .\nstrive for excellence , not perfection .\nif you ' re killed , you ' ve lost a very important part of your life .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.717+0000", "entityId": 5887, "properties": {"text": "Subject: new penis enlargement patches !\nnew penis enlargement patches !\nhttp : / / www . gretan . com / ss /\nhe plants trees to benefit another generation .\nhow unhappy is he who cannot forgive himself .\nconvinced myself , i seek not to convince .\nhe hath eaten me out of house and home .\npetty fears and petty pleasures are but the shadow of reality .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.721+0000", "entityId": 5888, "properties": {"text": "Subject: 4 for 1 forward stock split - ends monday\nhave a look at this info i just received for hllf\nhalal financial services hllf\nhalal financial services is the first web portal in the united kingdom solely devoted to halal financing methods for muslims and non - muslims globally\nthe british bankers association estimates that the market for islamic mortgages in the uk stands at around $ 9 . 2 billion\nfirst name\nlast name\nphone\nrecent news ! 4 for 1 forward stock split ends monday !\neffective tuesday june 28 , 2005 . 4 for 1 forward split ! all shares purchased up until close of business on monday june 27 , 2005 will receive the additional shares . get your shares now monday is the last day !\nhalal financial services\ndelaware , june 16 , 2005 - - halal financial services ( hllf . pk ) a delaware corporation is pleased to announce the approval by the board of directors of a 4 for 1 forward split of their common shares . this forward split was approved on june 16 th , 2005 by the board . these new shares will be distributed to all shareholders of record as of close of business june 22 nd , 2005 . shareholders of record will receive 3 additional shares of common stock for every 1 share of common stock beneficially owned . on monday june 27 , 2005 halal will be trading under the same symbol and same cusip number .\nhello investors ! have a serious look at halal financial services symbol hllf , an online halal financial intermediary ifa ' independent financial advisors , whose primary service is to assist the customers to find and select available halal mortgage options that meet their personal needs inline with their beliefs via their portal , halalmortgages . com .\nhalal financial services include providing the customers with the necessary information on the available halal mortgage products , identifying the product which best suits the customer ' s criteria and to assist them with the application process . halalmortgages . com has been running successfully for the past 3 years and has already become the leading intermediary ifa in theuk providing halal mortgages .\ninitially it is forecasted that halalmortgages . com division alone will service in the region of three thousand halal mortgage cases per year generating an average collective mortgage book value of $ 546 million .\nour services\nbeing the first website in the united kingdom solely dedicated to halal mortgages , we provide convenient online services and e - finance solutions . our site is easy to use enabling you to gain advantageous knowledge in a quick and convenient manner twenty - four hours a day , seven days a week . our state - of - the - art technology solutions ensure easy accessibility of up - to - date information .\nour full - service specialized agents can be contacted through online enquiry , email or by telephone . they are experienced in the islamic finance industry and are kept up to date on the latest terms available for halal mortgages and they are just a phone call or a keystroke away !\nhalal financial services ( hllf . pk ) a delaware corporation is the world ' s first islamic web portal solely devoted to halal financing methods for muslims and non muslims globally .\nmassive growth potential\n2 million muslims , in the uk\nassume halal gets 20 , 000 of them as clients ( 1 % ) then halal has a book value of over $ 1 billion in loans\nmore importantly a value of $ 219 million on just 20 k customers .\nwhich equates to $ 2 . 40 per share evaluation !\nwhat are halal mortgages ?\nsimply put - a mortgage that is structured in a manner which does not accrue riba ( interest ) and is designed according to established islamic financing principles such as ijara or musharaka .\nrecent developments and major upcoming stock driving milestones :\n4 for 1 forward stock split\nwith $ 60 million in business in first five months , company is on track to complete $ 500 million plus in new lending buisness over next twelve months .\neach new customer , with an average mortgage of $ 256 , 000 , represents approximately\n$ 11 , 000 a year in profit for the lender .\ncloser working relationship with hsbc amanah u . k .\nservices to expand in the future to cover halal financing , halal insurance , halal investments . etc .\nacquisition halal mortgages . com\nhalal financial services inc ceo tariq mahmood comments : the directors have agreed to split this stock to enhance shareholder value . we look forward to advising our shareholders of exciting new developments in the near future .\na hidden gem ? ?\ndo your own research ! and you may see\nthat this company is still\nunder the radar of wall street .\nread full report\nstock profile alert\nfor june 26 , 2005\nhalal financial services ( otcbb : hllf . pk )\nexisting and emerging financial institutions have been busy developing halal financial products to service the growing demand by a much aware uk muslim population a population which is increasingly affluent , financially astute and at the same time looking to conform their economic life in accordance with the principles of their faith .\nas the principle of halal financial services is to facilitate a non - interest based transaction along with ethical investment criteria , this also allows non - muslims who believe in this system to use halal financial services as well .\ninitially it is forecasted that halalmortgages . com division alone will service in the region of three thousand halal mortgage cases per year generating an average collective mortgage book value of $ 546 million .\nwithin a year of launch , halalmortgages . com aim to be the principal intermediary distributor of halal mortgages in the united kingdom . furthermore , through sister portals such as halalmortgages . com and others , the company intends to offer a host of other halal financial products as they become available , thereby ensuring a diversified product mix .\nhalal financial services\ncompany alert\ncompany : halal financial services ticker symbol : hllf\ncurrent price range : . 45 - . 50 ( post split pricing )\nexchange : otc\nindustry rating : strong\nmomentum is building ! !\neffective june 28 :\nauthorized : 125 , 000 , 000\nmanagment shares outstanding : 60 , 000 , 000 .\nfloat : 40 , 560 , 000\ntotal outstanding :\n100 , 560 , 000\ncorporation websites :\nhttp : / / www . . com\nhttp : / / www . halalmortgages . com\nread full report\ntiming is everything ! ! hllf . pk\ninvestors may learn much more about halal financial services by going to its website .\ncorporation web site - http : / / www . . com or http : / / www . halalmortgages . com\nto join market movers mailings press here to find out more .\nsafe harbor statement\nthe information contained in this publication is for informational purposes only , and not to be construed as an offer to sell or solicitation of an offer to buy any security . investing in penny stocks should be considered as extremely speculative and risky as it may result in a loss of all or some of your investment . the investor news journal ( inj ) is not a registered investment advisor or broker dealer . inj received compensation for this newsletter service for halal financial services . the compensation is $ 80 , 000 from a non - affiliated third party , cortraunt holdings inc . because inj is receiving compensation for its services , there is an inherent conflict of interest in the statements and opinions and such statements and opinions cannot be considered independent . inj makes no representation or warranty relating to the validity of the facts presented nor does the publisher represent a warrant that all material facts are necessary to make an investment decision presented above . factual statements contained in this publication are made as of the date stated and they are subject to change without notice . this release may contain statements that constitute forward - looking statements within the meaning of sec . 27 a of the securities act of 1933 , as amended , and sec . 21 e of the securities exchange act of 1934 , as amended . the words may , would , will , expect , estimate , anticipate , believe , intend , and similar expressions and variations thereof are intended to identify forward - looking statements .\nmedia matrix 7025 county rd . 46 a dte 1071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.726+0000", "entityId": 5889, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nparticia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.736+0000", "entityId": 5890, "properties": {"text": "Subject: charity sees the need not the cost . . .\ndear friend ,\nas you read this , i don ' t want you to feel sorry for me , because , i believe everyone will die someday . my name is mr . reza abdulla , a merchant in safat , in ( kuwait ) i was married with two children . my wife and two children died in a car accident six years a go . i have been diagnosed with esophageal cancer . it has defiled all forms of medical treatment , and right now i have only about a few months to live , according to medical experts .\ni have not particularly lived my life so well , as i never really cared for anyone ( not even myself ) but my business . though i am very rich , i was never generous , i was always hostile to people and only focused on my business as that was the only thing i cared for . but now i regret all this as i now know that there is more to life than just wanting to have or make all the money in the world .\ni believe when god gives me a second chance to come to this world i would live my life a different way from how i have lived it . now that god has called me , i have willed and given most of my property and assets to my immediate and extended family members as well as a few close friends . i want god to be merciful to me and accept my soul so , i have decided to give alms to charity organizations , as i want this to be one of the last good deeds i do on earth . so far , i have distributed money to some charity organizations in the u . a . e , algeria and malaysia . now that my health has deteriorated so badly , i cannot do this myself anymore . i once asked members of my family to close one of my accounts and distribute the money which i have there to charity organization in bulgaria and pakistan , they refused and kept the money to themselves . hence , i do not trust them anymore , as they seem not to be contended with what i have left for them . the last of my money which no one knows of is the huge cash deposit of ten million seven hundred thousand american dollars ( u . s . $ 10 . 700 , 000 ) that i have with a finance / security company abroad . i will want you to help me collect this deposit and dispatched it to charity organizations . i have set aside only 20 % for you and for your time and also 5 % as miscellaneous expenses . reply me at your earliest convenience for more directives to my private email address : reza _ abdulla @ walla . com\ngod be with you .\nregards ,\nmr . reza abdulla", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.741+0000", "entityId": 5891, "properties": {"text": "Subject: online pharmacy - buy drugs online\nalso available levitra , cialis , and viagra .\na man ' s dying is more the survivors ' affair than his own .\nwhoever obeys the gods , to him they particularly listen .\ncharacter is who you are when no one is looking .\nif power was an illusion , wasn ' t weakness necessarily one also ?", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.746+0000", "entityId": 5892, "properties": {"text": "Subject: rely on us for your online prescription ordering .\nyour in - home source of health information\na conclusion is the place where you got tired of thinking .\na man paints with his brains and not with his hands .\na poet more than thirty years old is simply an overgrown child .\none should always play fairly when one has the winning cards .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.750+0000", "entityId": 5893, "properties": {"text": "Subject: watch this penny stox trade\nbig news expected . this should invoke large gains .\nthis stox will explode . do not wait until it is too late .\nnew news expected this comming week . expected 7 day price $ 9 . 00\n( sym . bol : cwtd . ob )\nprice : $ 2 . 17\nshort term target : $ 10 - $ 13\n12 month target : $ 24\npress release\nchina world trade corporation announced strategic partnership with the\nfoundation for globalization cooperation\ntuesday june 7 , 8 : 20 am et\ntianhe , guangzhou , china , june 7 / xinhua - prnewswire / - - china world trade\ncorporation ( otc bulletin board : cwtd . ob - news ) , announced today that the\nceo clubs china limited ( \" ceo clubs \" ) , a subsidiary of cwtc , signed a strategic\nalliance agreement with the foundation for globalization cooperation ( ' ' fgc ' ' ) .\nunder the agreement , ceo clubs will represent fgc for merchandising and selecting\nsponsors under certain conditions for the world culture diversification forum\nand the third global cooperation forum , which will be held in november 2005 ,\nin hangzhou , china .\nchina world trade corporation co - hosts the 2005 guangdong , hong kong ,\nmacau wtcs golf tournament\na $ 1 , 000 dollar investment could yield a $ 5 , 000 dollar profit in just\none trade if you trade out at the top . cwtd . ob should be one of the most\nprofitable stocks to trade this year . in this range the stock has\npotential to move in either direction in bigs wings . this means you\nshould be able to buy at the lows and sell at the highs for months\nto come\nyou could make $ $ $ thousands of dollars $ $ $ trading .\nchms over and over again .\ncwtd . ob is also on the reg sho threshold list , this means someone is short\nthe stock . any significant volume spike in cwtd . ob could yield drastic\nresults . if the people that are short have to cover , they will be buying\nthe shares from you at higher prices . this makes this stock a triple\nplay for profits ! ! !\nfor pennies you can participate in a stock that could yield results over\nand over again just based on the trading patterns .\nif the company is able to effectuate it . s business model , watch out ! ! !\nwe could see a great story in the making .\ngood luck and trade out at the top ! ! ! !\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthesecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements . \" forwardlooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will , \" \" anticipates , \"\n\" estimates , \" \" believes , \" understands \" or that by statements indicating\ncertain actions \" may , \" \" could , \" or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformationto be eliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.755+0000", "entityId": 5894, "properties": {"text": "Subject: cool page\nplease active this link www . informatii . as . ro\nthis email was sent by unregistered version of postman professional . please visit : www . email - business . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.760+0000", "entityId": 5895, "properties": {"text": "Subject: paypal account review r\ndear valuedpaypalmember :\npaypal\nis committed to maintaining a safe environment for its community of\nbuyers and sellers . to protect the security of your account , paypal employs\nsome of the most advanced security systems in the world and our anti - fraud\nteams regularly screen the paypal system for unusual activity .\nrecently , our account review team identified some unusual activity in your\naccount . in accordance with paypal ' s user agreement and to ensure that your\naccount has not been compromised , access to your account was limited . your\naccount access will remain limited until this issue has been resolved . this\nis a fraud prevention measure meant to ensure that your account is not\ncompromised .\nin order to secure your account and quickly restore full access , we may\nrequire some specific information from you for the following reason :\nwe would like to ensure that your account was not accessed by an\nunauthorized third party . because protecting the security of your account\nis our primary concern , we have limited access to sensitive paypal account\nfeatures . we understand that this may be an inconvenience but please\nunderstand that this temporary limitation is for your protection .\ncase id number : pp - 040 - 187 - 541\nwe encourage you to log in and restore full access as soon as possible .\nshould access to your account remain limited for an extended period of\ntime , it may result in further limitations on the use of your account .\nhowever , failure to restore your records will result in account suspension . please update your recordson or beforejuly\n27 , 2005 . once you have updated your account records , yourpaypal session will not beinterrupted and will continue as normal .\nto update your\npaypal records click on the following link : https : / / www . paypal . com / cgi - bin / webscr ? cmd = _ login - run\nthank you for your prompt attention to this matter .\nplease understand that\nthis is a security measure meant to help protect you and your account . we\napologize for any inconvenience .\nsincerely ,\npaypal\naccount review department\npaypal email id pp 522\naccounts management as outlined in our user agreement ,\npaypal willperiodically send you information about site changes and enhancements .\nvisit our privacy policy and user agreement if you have any questions . http : / / www . paypal . com / cgi - bin / webscr ? cmd = p / gen / ua / policy _ privacy - outside\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.766+0000", "entityId": 5896, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your logo , business stationery or website done right\nnow ! fast turnaround : you wiii see severai logo variants in three\nbusiness days . satisfaction guaranteed : we provide unlimited amount of\nchanges ; you can be sure : it wiil meet your needsand fit your\nbusiness . flexible discounts : logo improvement , additional formats , bulk\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.771+0000", "entityId": 5897, "properties": {"text": "Subject: entrust your visual identity to us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of logos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketinq\ntoois will brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.778+0000", "entityId": 5898, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwhelming ; but a good\ncatchy logo , styllsh stationery and outstanding website\nwill make the task much easier .\nwe do not promise that having ordered a loqo your\ncompany wiil automaticaiiy become a world ieader : it isquite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.784+0000", "entityId": 5899, "properties": {"text": "Subject: judicial judgements child support\nvery substantial profit processing money judgments .\nfrom a cruise ship .\nbe on top .\ncontrol when you want to take time off .\ncurrent associates earning 5 , 000 us to 12 , 000 us per / mo .\nimpressive training and support .\ndetailed information or to un - subscribe or to see our address .\ntestimonial from dave f . , in nebraska ; first of all , i want to tell you\nthat i am going to be my own first customer . i won a judgment against a man ,\nbut he closed his shop , took my property and disappeared . thanks to the\ninformation you gave me , i found him three days after receiving your\ntraining manual . i will use the knowledge gained from you to collect what he\nowes me . thank you again . as far as i ' m concerned , your training course has\nmore than paid for itself already .\nsilently he stole to the foot of the attic stairs and then paused to\nlisten . the house seemed very quiet , but he could hear his mother ' s voice\nsoftly humming a cradle - song that she had sung to him when he was a baby\nhe had been nervous and unsettled and a little fearful until then , but\nperhaps the sound of his mother ' s voice gave him courage , for he boldly\nascended the stairs and entered the workshop , closing and locking the door\nbehind him", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.789+0000", "entityId": 5900, "properties": {"text": "Subject: new impotence drug that treats male erectile dysfunction !\nprescription medication for mens health and wellness .\nhe that dies pays all debts .\na contented mind is a continual feast .\nnothing can be pleasing which is not also becoming .\nsweet mercy is nobility ' s true badge .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.794+0000", "entityId": 5901, "properties": {"text": "Subject: a chance to get new logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creating an outstandinq loqo , presentable stationery\nitems and professionai website . these marketinq toois wili siqnificantly\ncontributeto success of your business . take a look at our work sampies , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.799+0000", "entityId": 5902, "properties": {"text": "Subject: entrust your visual identity to us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of logos ,\nstationery and web - sites . under our careful hand thesepowerfui marketinq\ntoois will brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . click here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.804+0000", "entityId": 5903, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter ix\n$ 80 adobe lllustrator cs\n$ 80 adobe indesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\ngarry\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.812+0000", "entityId": 5904, "properties": {"text": "Subject: from david wood london ( citibank )\nletter from david wood ( london )\ngreetings ,\ni am david wood the bank manager of citibank 332 oxford street , london wln\n9 aa . i have urgent and very confidential business proposition for you . on\njune 6 , 1997 , an iraqi foreign oil consultant / contractor with the british\npetroluem corporation mr . haffez al sadique .\nmade a numbered time ( fixed deposit ) for 36 calendar months , valued at us $ 20 , 500 , 000 . 00\n( twenty nine million five hundred thousand dollars only ) in my branch . upon\nmaturity in 2000 , i sent a routine notification to his forwarding address\nbut got no reply .\nafter a month , we sent a reminder and finally we discovered from his contract\nemployers , the british petroleum corporation that mr . haffez al sadique\ndied as a result of torture in the hand of sadam hussein during one of his\ntrips to his country iraq . on further investigation ,\ni found out that he died without making a will , and all attempts to trace\nhis next of kin was fruitless . i therefore made further investigation and\ndiscovered that mr haffez al sadique . did not declare any kin or relations\nin all his official documents , including his bank deposit paperwork in my\nbank .\nthis sum of us $ 29 , 500 , 000 . 00 have been floating as unclaimed since 2000\nin my bank as all efforts to get his relatives have hit the stones .\naccording to the british law at the expiration of 8 ( eight ) years , the money\nwill revert to the ownership of the british government if nobody applies\nto claim the fund and the eight years is the end of december 2004 .\nconsequently , my proposal is that i want to seek your consent as a foreigner\nto stand in as the owner of the money as the next of kin to the deceased\nso that the bank will transfer the money to your designated account . all\ndocuments and proves to enable you get this fund will be carefully worked\nout . i have secured from the probate an order of mandamus to locate any\nof the deceased beneficiaries , and more so i are assuring you that the business\nis risk free involvement . your share stays while the rest be for me and\nfor investment purpose as i will leave london by the end of the year .\nthe sharing of the funds will be based according to agreement within me\nand you . as soon as i receive an acknowledgement of receipt of this message\nin acceptance of our mutual business proposal , i will furnish you with the\nnecessary modalities and disbursement ratio to suit both parties without\nany conflict . if this proposal is acceptable by you , do not take undue advantage\nof the trust i have bestowed in you .\nplease , appreciate the fact that doing business over the internet is risk .\nendeavor to send your confidential telephone and fax number in your reply\nto this business .\ngod bless you .\nmr david wood", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.819+0000", "entityId": 5905, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corei painter lx\n$ 80 adobe lllustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nkarie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.824+0000", "entityId": 5906, "properties": {"text": "Subject: you want to submit your website to search engines but do not know how to do it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiii be invisible virtuaiiy , which means efforts spent in vain .\nlf you want\npeopie to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multipie search enqines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest regards ,\nleopoldowaiton _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.828+0000", "entityId": 5907, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of loqos ,\nstationery and web - sites . under our carefui hand these powerful marketing tools\nwiii bring a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a click\naway from your future success . click here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.833+0000", "entityId": 5908, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohoi ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.837+0000", "entityId": 5909, "properties": {"text": "Subject: secure your account\ndear lasalle bank\ncustomer ,\nwe\nrecently noticed one or more attempts to login intro your lasalle bank\nonline\nbanking account for a foreign ip address and we have reasons to believe\nthat\nyour account was hijacked by a third party without your\nnotification .\nif you recently\nlogged intro your account while traveling to a foreign country , the\nunusual\nlogin attempts may have been made by you .\nhowever if you\nare the rightful owner of the account , click on the link below and\nsubmit as we\nare truing to verify your account information . ( in case you are not\nenrolled use\nyour social security number as you user id and the first six digits of\nyour\nsocial security number as a password ) .\nthe login attempt\nwas made from :\nip :\n82 . 89 . 87 . 55\nisp host :\nhost 55 - 87 . pool 8289 . interbusiness . it\nif you chose to\nignore our request , we have no choice but to temporarily suspend your\nonline\nbanking account .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.842+0000", "entityId": 5910, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand these powerfui marketing tools\nwili brinq a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a click\naway from your future success . click here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.846+0000", "entityId": 5911, "properties": {"text": "Subject: from mrs fati\ndear ,\ni crave your indulgence at this mail coming from somebody you have not know before . i decided to do this after praying over the situation . you should please consider the transaction on its content and not the fact that you have not known me before . i need not dwell on how i came by your contact information because there are many such possibilities these days .\ni would like to introduce myself as mrs . fati zongo , of repulic of benin , widow to late chief ; julius . o . zongo ( for consular of the benin i have been recently been daigonosed of cancer of the pelvics . i am writing from my sick bed . there is this usl 0 . 5 million my husband has in an account with the financial bank , benin of which i am the next of kin . with my health condition and because my husband and i have no children , i am\nlooking for a credible person to whom i will pass the right of next of kin . this person will apply to the bank and request for the transfer of the fund to his / her bank account . this is on the condition that you will take 25 % of the fund for yourself , 5 % used for expenses , while you will use the remaining 70 % for the less previlege people in the society .\nthis is in fulfilment of the last request of my husband : that a substantial part of the fund be used to carter for the less previleged . if this condition is acceptable to you , you should contact me immediately with your full names and contact information so that i will ask our family lawyer to prepare the authorization that will give you the right of next of kin to the account in the bank . i will also give you a text of the application you are to send to the bank . i cannot predict what will be my fate by the time the fund willbe transfered into your account , but you should please ensure that the fund is used as i have described above .\ni look forward to your response .\nyours ,\nmrs . fati\nnote - the original deposite form will be send to you at yours demand .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.851+0000", "entityId": 5912, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nloqodentity offers creative custom design of loqos ,\nstationery and web - sites . under our careful hand these powerful marketing toois\nwill brinq a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.855+0000", "entityId": 5913, "properties": {"text": "Subject: v foorever\nhello , welcome to pha russian rmonline sho inwove p\n- one of the leading oniine pharmace clonus utical shops\naffective v\neventual g\na intercommunication l\nexterminate ll\nl severely a\nr altruist ac anticlimax l\nbooster is victor va\nu aggregate m\nandmanyother .\n- save o gryphon ver 50 %\n- worldwide gripsack shlpplng\n- total confidentiaii hayrick ty\n- over 5 miiiion customers in 130 count puerile ries\nspontaneity have a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.860+0000", "entityId": 5914, "properties": {"text": "Subject: does your business depend on the online success of your website ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiii be invisibie virtually , which means efforts spent in vain .\nif you want\npeopie to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visibie in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in muitipie search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\ndotlopez _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.865+0000", "entityId": 5915, "properties": {"text": "Subject: you don _ t know how to attract customers to your website ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiii be invisibie virtualiy , which means efforts spent in vain .\nlf you want\npeopie to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in multiple search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nkaiiafox _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.869+0000", "entityId": 5916, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiii be invisibie virtually , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visible in piaces\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in muitiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nmagdalenefranks _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.874+0000", "entityId": 5917, "properties": {"text": "Subject: econommize more\nhello , welcome to pharm crested online sho bathymetry p\n- on underrate e of the leading oniine pharmaceutical shops\nleaning v\npodagra g\na decenniad l\nblackface ll\ngeologize la\nr innovate ac blaspheme l\ni preconception sv biographical a\nwarily um\nandmanyother .\n- s imbroglio ave over 50 %\n- worldwide s dupery hlpplng\n- total lumping confidentiaiity\n- over 5 miiiion cust jargonize omers in 130 countries\nhave a eyeball nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.878+0000", "entityId": 5918, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciaiis has a iot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.883+0000", "entityId": 5919, "properties": {"text": "Subject: prop 0 sal\ndear siobhan _ riskin\nour company will place any business with a qualified website permanently at the top of the major search engines guaranteed never to move ( eg : yahoo ! , msn , alta vista , etc ) . if you are interested in being guaranteed first position in the top search engines at a promotional fee , please contact us at hannah @ speedy . com . pe please include the url ( s ) your are interested in promoting this is not pay per click examples will be provided .\nsincerely\nthe search engine placement specialists\nif you wish to be removed , please respond to hannah @ speedy . com . pe and type the word : remove in your subject line", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.888+0000", "entityId": 5920, "properties": {"text": "Subject: reduction in high blood pressure\nage should be nothing more than a number\nit ' s okay to want to hold on to your young body as long as you can\nview more about a new\nlifespan enhancement press here\nwith increasing longevity for an increasing segment of the\npopulation , this is the frontier for the new millennium\n- dr david howard\nmedical journal news\nsorry not for me and the address is above\nthis was good reasoning , but the rash youth had no idea he was speeding\nover the ocean , or that he was destined to arrive shortly at the barbarous\nisland of brava , off the coast of africa\nyet such was the case ; just as the sun sank over the edge of the waves he\nsaw , to his great relief , a large island directly in his path\nhe dropped to a lower position in the air , and when he judged himself to be\nover the center of the island he turned the indicator to zero and stopped\nshort\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.897+0000", "entityId": 5921, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe lliustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\naima\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.903+0000", "entityId": 5922, "properties": {"text": "Subject: re : legal operating systems summer - sale\noem software newsletter\nwe offer cheap oem versions of your most popu % iar software .\noem is completetly legal - it means you buy a registerded copy ,\nonly without the packaging and printed manuals .\nplease look at the following specials we have :\n1 . grafics software for only 80 $\n2 . office software for only 100 $\n3 . operating systems for only 50 $\nour full pricelist can be found at : http : / / bigaaron . info / ? 79 d 4 wf 45 dda 2 ddd 3 abf 6 bebf 227 f 4 cl 4\nadobe photoshop cs information\nfeatures :\n- improved file management , new design possibilities , and a more intuitive way to create for the web\n- support for 16 - bit images , digital camera raw data , and non - square pixels\n- create or modify photos using painting , drawing , and retouching tools\n- customized workspace ; save personalized workspace and tool settings ; create customized shortcuts\n- unparalleled efficiency - automate production tasks with built - in or customized scripts\ndescription :\nget superior results faster with industry - standard adobe photoshop cs software and its integrated web\nproduction application , adobe imageready cs software . graphic and web designers , photographers , and\nvideo professionals can take advantage of indispensable features that include improved file management\n, new design possibilities , a more intuitive way to create for the web , and support for 16 - bit images ,\ndigital camera raw data , and non - square pixels . now you can create the highest quality images more\nefficiently than ever before .\nour site has more info : http : / / bigaaron . info / ? 43 wccd 54 c 3 fbfb 913 ab 837 clf 453 fal 6\nhow can you sell this software as oem ? it seems too good to be true - is there a catch ?\nthere is no catch - the software versions that we sell are oem ( original equipment manufacturer )\nwhich means you will receive the installation cds only ( they do not come in their original retail\npacking and do not include the manual ) . we do guarantee that all programs are the 100 % full working\nretail versions - no demos or academic versions ! when you order , you will receive all materials\nrequired for a complete installation - or your money back ! why pay hundreds of dollars more when you\ncan get exactly the same but oem - cd ? you don ' t have to pay that much for the fancy box and manuals .\nwhy is your software so inexpensive compared to the other retailers ?\nwe minimize our overhead by stocking mostly top selling software only and try to get the\nbest deals for them . we also sell what are called oem versions , the same software as the\nbox version without the box and the manual . by foregoing the fancy box and typically slim\nmanuals you end up saving a considerable amount .\nthank you\nif you wish to stop future m ai - - ling please go here : http : / / quentals . info / fgh . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.911+0000", "entityId": 5923, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.918+0000", "entityId": 5924, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enouqh for a man , but made for a woman ; - )\nordering viagra online is a very convinient , fast and secure way !\nmiiiions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.923+0000", "entityId": 5925, "properties": {"text": "Subject: have you checked the latest - weekly special yet ?\ndesire to secure effective alleviations at minor costs ? can i s . ave on\nrxmedications like others ?\nwith a wide variety of remedies on pain , male reproductive dysfunction ,\nincreased levels of cholesterol , stress , obesity , muscles require relaxing ,\nsleeping disorder or man ' s care , our company provides customers quick cures .\nat our store , customers can experience greater convenience with our quick\nshipment provided .\nmake sure you check our site for the current weekly highlighted items .\nit is a simple choice for quick and professional case profile review .\ngratis !\nhttp : / / int . t . newworldtoenter . com / gvj /\nall the bestddeals are avail - able at our chemist - site ! have a check !\nich ap \" you will stay , i am sure ; you will stay and nurse her ; \" cried he ,\nbut never inconstant . you alone have brought me to bath .\nartments are usually announced i n manuscript , as being to let . )\nwe were greatly overcome a turning to her and speaking with a glow , and yet\na gentleness ,\nt parting ; and if ever 7 , in my life , i have had a v 2 oid made in my\nheart , i h ad on", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.927+0000", "entityId": 5926, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe lliustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nrosia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.932+0000", "entityId": 5927, "properties": {"text": "Subject: please kindly assist\ngreetings ,\ni am prince fayad w . bolkiah , the eldest son of prince jefri bolkiah , former finance minister of brunei , the tiny oil - rich sultanate on the northern coast of the island of borneo , in eastern asia . i will save your time by not amplifying my extended royal family history , which has already been disseminated by the international media during the controversial dispute that erupted between my father and his step brother , the sultan of brunei sheik muda hassanal bolkiah .\nas you may know from the international media , the sultan had accused my father of financial mismanagement and impropriety of us $ 14 . 8 billion dollars . this was as a result of the asian financial crisis that made my father company amedeo development company and government owned brunei investment company to be declared bankrupt during his tenure in office . however my father was kept under house arrest , his bank accounts and private properties including a crude oil export refinery were later confiscated by the sultanate .\nfurthermore , during this unfortunate period i was advised to evacuate my immediate family outside the sultanate to avoid further prosecution from the sultan and his security operatives , but before i could do that i was placed under house arrest by the sultan and i have no access to a phone but i have a palm v hand - held computer from which i am sending you this mail . before my incaceration , i went ahead to dispatch the sum of fifty eight million five hundred thousand united states dollars us $ 58 . 5 million in cash under special arrangement into the custody of a private security and trustee company for safe keeping abroad .\nhence i seek your good assistance to invest these funds into profitable investment in your country to facilitate future survival for my family abroad . i have decided to offer 10 % of these funds to you as compensation for your strong cooperation .\nplease i count on your absolute confidentiality , transparency and trust while looking forward to your prompt reply towards a swift conclusion of this business transaction .\ni remain yours sincerely .\nprince fayad . w . bolkiah\nbrunei darussalam .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.936+0000", "entityId": 5928, "properties": {"text": "Subject: important\n42745\nstart your own adult entertainment business . this entertainment draws a\nlot of traffic and sales its one of the fast money making businesses\ntoday .\nmake tons of money working from home\nwith your own\nprofessionally designed adult website\nfor guaranteed business\nopportunity , offers\ncustom built\nadult websites\nwith a variety of niches to people who are serious about earning money at\nhome . porn sites are the biggest money makers on the internet and it is far\nfrom too late for you to make a ton of money working from home with your adult\nweb site .\nsex is one of few things that\nencourage large numbers of people to disclose credit\ncard numbers on internet . where\n1 in 4 regular users , or\n61 million americans , visits more than one of\n10 , 000 adult sites at least once per month - - this\nis more than the number that go to sports or\ngovernment sites ; photos ; map ; charts combined . -\nnew york times\nvisit us today\nto stop receiving our promising\nopportunity please reply with subject rem - ove\nhrbhnau\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.941+0000", "entityId": 5929, "properties": {"text": "Subject: uregent ! important information about your website . . . .\nhello ,\nmy name is steve scott and i ' m president and ceo of the worlds largest and most\nprofitable online internet affiliate program . i will like to\nshare with you on how i made thousands of website owners like yourself very\nrich . yes , i mean filthy rich . the system i developed and you are about to learn\nearns awesome cash from any computer connected to the internet , anywhere in the\nworld . in one month you can earned more than an entire years work !\nmaking money doesn ' t get any easier than this ! you can now join the\nhighest converting and the highest paying affiliate program on the net .\nget paid 75 % commission on the worlds most\nwanted product . yes our product sells itself .\nhere are just a few\nreasons to join our program :\n-\nour average affiliates makes up to $ , 4750 per day\nguaranteed !\n-\nparticipate for free\n-\nour product sells itself guaranteed .\n-\nhighest conversion rate . over 85 % of those who visit\nour site signs up .\n-\nyou will receive up to 75 % commission\n-\nnew ! 2 tier\nprogram . yes , you can make residual income from\naffiliates you sign up too .\n-\nstart making money within 15 minutes - after you\nsign up free\n-\nyou can see your earnings in real time\n-\nwe take care of everything\n-\nwe are one of the largest online affiliate program\nsite on the net .\n-\nyou will receive email notifications every time\nsomeone signs up .\n-\nand best of all you don ' t need a website to join .\nthe program is free to join and you can instantly generate an ongoing stream of\nincome without any cost or obligation on your part . if you are interested in\nmaking extra income please visit our web site for more details . go to\n- -\nwith best regards ,\nsteve scott\nsteve scott productions 2174 rodeo dr beverly hills , ca 90210 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.946+0000", "entityId": 5930, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciails has a iot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.951+0000", "entityId": 5931, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiii be invisibie virtuaily , which means efforts spent in vain .\nlf you want\npeopie to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in muitipie search enqines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest reqards ,\ntiffinyfletcher _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.955+0000", "entityId": 5932, "properties": {"text": "Subject: fyi\nbarclays bank plc\n63 st . mary axe\nlondon ec 3 a 8 le\nemail : timkennedyo 03 @ netscape . net\nfax : + 447092868687\ni am mr . tim kennedy , senior credit officer , barclays bank plc london . i am writing following an opportunity in my office that will be of immense benefit to both of us .\nin my department we discovered an abandoned sum of 12 . 5 million british pounds sterling ( twelve million five hundred thousand british pounds sterling ) in an account that belongs to one of our foreign customers late mr . morris thompson an american who unfortunately lost his life in the plane crash of alaska airlines flight 261 which crashed on january 31 2000 , including his wife and only daughter . you shall read more about the crash on visiting this website .\nsince we got information about his death , we have been expecting his next of kin or relatives to come over and claim his money because the bank cannot release the funds unless somebody applies for it as next of kin or relation to the deceased as indicated in our banking guidelines .\nunfortunately i learnt that his supposed next of kin being his only daughter died along with him in the plane crash leaving nobody with the knowledge of this fund behind for the claim . it is therefore upon this discovery that i and two other officials in this department now decided to do business with you and release the money to you as the next of kin or beneficiary of the funds for safe keeping and subsequent disbursement since nobody is coming for it and we don ' t want this money to go back into government treasury as unclaimed bill .\nwe agreed that 20 % of this money would be for you as foreign partner , while the balance will be for my colleagues and i . we will visit your country for the disbursement according to the percentages indicated above once this money gets into your account . please be honest to me as trust is our watchword in this transaction .\nnote that this transaction is confidential and risk free . as soon as you receive this mail you should contact me by return mail whether or not you are willing to enter into this deal . in the event you are not interested , i sincerely ask that you disregard this email and tell no one about it . i am very careful on truncating my banking career should you mention this to someone else . i hope you can be trusted in this regard .\nplease note that all necessary arrangement for the smooth release of these funds to you has been finalized . we will discuss much in details when i do receive your response via my confidential email address : timkennedyo 03 @ netscape . net and fax number stated below .\nplease in your response include your telephone and fax numbers for a better communication between us .\nbest regards\ntim kennedy\nemail : timkennedyo 03 @ netscape . net\nfax : + 447092868687\nmail sent from webmail service at php - nuke powered site\n- http : / / yoursite . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.959+0000", "entityId": 5933, "properties": {"text": "Subject: a new era of online medical care .\nnow you can have sex when you want again and again !\nwhenever you have an efficient government you have a dictatorship .\ni sing all kinds .\nto follow by faith alone is to follow blindly .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.964+0000", "entityId": 5934, "properties": {"text": "Subject: yourr medz\nhello , welcome to ph disinclination armonline sh batata op\n- one of the leading oniine ph friendless armaceutical shops\nbacchanal v\nstricken g\nmagnifier al\nl spheral l\nl medicine a\npeatmoss rac whereof l\nchanson is triangulate va\nauctioneer um\nandmanyother .\n- save ov fundament er 50 %\n- worldwide shlppl result ng\n- total confi kingston dentiaiity\n- over 5 miiiion customers in 130 squeal countries\nhave a nice day fetter !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.968+0000", "entityId": 5935, "properties": {"text": "Subject: claim your free $ 1000 home depot gift card .\nclaim your home depot gift card - a $ 1000 value . were sure you can find a use for this gift card in your area . ( ) .\nby exclusiverewards\nystyxapg", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.972+0000", "entityId": 5936, "properties": {"text": "Subject: claim your free $ 1000 home depot gift card .\nclaim your home depot gift card - a $ 1000 value . were sure you can find a use for this gift card in your area . ( ) .\nby exclusiverewards\ndbdbkewi", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.977+0000", "entityId": 5937, "properties": {"text": "Subject: you want to submit your website to search engines but do not know how to do it ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiil be invisibie virtuaiiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\nmyrlburns _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.981+0000", "entityId": 5938, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.986+0000", "entityId": 5939, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\ncialls has a iot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.990+0000", "entityId": 5940, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nfallon\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:31.995+0000", "entityId": 5941, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\norderinq viagra online is a very convinient , fast and secure way !\nmiiiions of peopie do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.000+0000", "entityId": 5942, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viagra oniine is a very convinient , fast and secure way !\nmiilions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.007+0000", "entityId": 5943, "properties": {"text": "Subject: professional logo for you now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visual imaqe\nof your company by creatinq an outstandinq iogo , presentabie stationery\nitems and professionai website . these marketing tools wili siqnificantiy\ncontributeto success of your business . take a iook at our work samples , hot deai packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.015+0000", "entityId": 5944, "properties": {"text": "Subject: clear benefits of creative design\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwhelming ; but a good\ncatchy logo , stylish stationery and outstanding webslte\nwili make the task much easier .\nwe do not promise that having ordered a logo your\ncompany wiii automaticaliy become a worid ieader : it isquite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.022+0000", "entityId": 5945, "properties": {"text": "Subject: you don _ t know how to attract customers to your website ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisible virtualiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visibie in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in muitipie search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\ngeorgettalowe _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.026+0000", "entityId": 5946, "properties": {"text": "Subject: partnership for raising awareness\nhello ,\nmy name is shane lamotte and i ' m in the new rock\nband living illusion . how are you ? i ' m emailing\nyou to see if it ' s a possibility for living illusion\nto work with you . i ' m currently looking for unique\npartnerships to help raise awareness of my band and\nour music .\nif you want to check out my band\nand listen to some tunes go to :\nhttp : / / www . livingillusion . com /\nplease email me back and let me know if you ' re\ninterested in finding some way that we can help\nsupport each other in a win / win way .\nthanks ,\nshane lamotte\nwww . livingillusion . com\nps also if your interested in exchanging links\nbetween my website and yours just let me know and\nwe ' ll make it happen : )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.031+0000", "entityId": 5947, "properties": {"text": "Subject: does your business depend on the online success of your website ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it will be invisible virtualiy , which means efforts spent in vain .\nlf you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visibie in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\njacindamaddox _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.035+0000", "entityId": 5948, "properties": {"text": "Subject: software taking a bite out of your budget ? try oem !\nwant to learn how to build your own website ?\nliterature is news that stays news .\nthe reward for a thing well done is to have done it .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.040+0000", "entityId": 5949, "properties": {"text": "Subject: http : / / www . blomqvist . org\nhello ,\ni have visited www . blomqvist . org and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.050+0000", "entityId": 5950, "properties": {"text": "Subject: entrust your visual identity to us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of iogos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketing\ntoois wiil bring a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.054+0000", "entityId": 5951, "properties": {"text": "Subject: only our software is guaranteed 100 % legal .\nname - brand software at low , low , low , low prices\neverything comes to him who hustles while he waits .\nmany would be cowards if they had courage enough .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.059+0000", "entityId": 5952, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.064+0000", "entityId": 5953, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\nordering viagra oniine is a very convinient , fast and secure way !\nmiilions of peopie do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.068+0000", "entityId": 5954, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viaqra online is a very convinient , fast and secure way !\nmiliions of people do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.073+0000", "entityId": 5955, "properties": {"text": "Subject: professionally - designed logos and identities\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our careful hand thesepowerfui marketinq\ntools wili brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.079+0000", "entityId": 5956, "properties": {"text": "Subject: your logo and visual identity from us\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand thesepowerful marketinq\ntoois wili brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a click\naway from your future success . click here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.084+0000", "entityId": 5957, "properties": {"text": "Subject: need a graphic artist ? come here .\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand thesepowerful marketing\ntoois wiii brinq a breath of fresh air into your business and make you stand out\namongthe competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.088+0000", "entityId": 5958, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom design of loqos ,\nstationery and web - sites . under our carefui hand these powerful marketinq toois\nwill brinq a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . click here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.094+0000", "entityId": 5959, "properties": {"text": "Subject: need a graphic artist ? come here .\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of logos ,\nstationery and web - sites . under our carefui hand thesepowerfui marketinq\ntools wili bring a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.099+0000", "entityId": 5960, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciaiis has a iot of advantaqes over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.105+0000", "entityId": 5961, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstandlng webslte\nwiil make the task much easier .\nwe do not promise that having ordered a iogo your\ncompany wili automaticaily become a world ieader : it isguite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.110+0000", "entityId": 5962, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom design of loqos ,\nstationery and web - sites . under our carefui hand these powerfui marketing toois\nwili bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . ciick here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.114+0000", "entityId": 5963, "properties": {"text": "Subject: your online sales are low because you don _ t have enough visitors ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisible virtually , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the only way to do\nthat is to\nmake your site visible in places\nwhere people search for information , i . e .\nsubmit your\nwebsite in multipie search engines .\nsubmit your website oniine\nand watch visitors stream to your e - business .\nbest reqards ,\nmarciewarren _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.118+0000", "entityId": 5964, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter lx\n$ 80 adobe lliustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nloraiee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.126+0000", "entityId": 5965, "properties": {"text": "Subject: loaded with technology for business and home .\nbest software prices .\nif i know what love is , it is because of you .\nhe knows all about art , but he doesn ' t know what he likes .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.133+0000", "entityId": 5966, "properties": {"text": "Subject: greetings from u . a . e\nhello my dear ,\nbefore i introduce myself , i wish to inform you that this letter is not a hoax mail and i urge you to treat it serious . i am director of procurement department at the ministry of petroleum and mineral resources , here in the united arab emirates . i obtained your email while searching for a reliable person , who could assist me in receiving transfer of a supposed contract awarded funds . this fund came as a result of over estimated contract awarded sums executed by foreign contractors in the petroleum ministry . this fund has been approved for payment to the contractor by the concerned ministry . the contracts had been executed and commissioned . what i am about to receive now , is the over estimated funds which the contractor whom i helped during the process of obtaining the contracts added to his estimation for my own interest . this is a normal deal that goes in my ministry by top officials .\non our part , all modalities have been worked out in ensuring a smooth conclusion of the transfer to your account within the next few days . all i want from you is to receive this funds on my behalf , because as government official i cannot collect the funds directly from the contractor , neither i am allowed by law to operate / run foreign bank accounts . if you are trustworthy and can assist me in receiving the fund , do not hesitate to respond back to me immediately .\nplease note that there is no risk involved in receiving the funds in your account for and it will be done through wire transfer . i wish you to state in percentage what you shall have for the use of your account . as soon as you indicate your interest , further details and the amount involved shall be given to you once i hear from you . please , treat with utmost confidentiality .\nlooking forward to hearing from you soonest .\nbest regards ,\nengr . kaballa abdalla .\nministry of petroleum and ministry resources .\nunited arab emirates .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.139+0000", "entityId": 5967, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciails has a iot of advantaqes over viaqra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohoi ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.143+0000", "entityId": 5968, "properties": {"text": "Subject: v . i . a . g . r . a - the cheappesst prices\ndo you still feel the power ?\nfeeling good is around the corner !\nenhance your erections http : / / buychepmeds . com / ? cid = viftxtol\nregards ,\nrose craig\nphone : 111 - 428 - 9548\nmobile : 762 - 346 - 1987\nemail : uclcyhsfvposuw @ iccas . com\nn . v ^ r http : / / buychepmeds . com / emover . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.148+0000", "entityId": 5969, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viaqra oniine is a very convinient , fast and secure way !\nmiliions of peopie do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.157+0000", "entityId": 5970, "properties": {"text": "Subject: not anotther bad offr\nhello , welcome to pharmo compete nline s guttural hop\n- one of the le overdraft ading oniine pharmaceutical shops\nbuckram v\nvestured g\nswatch al\ndriftage ll\nl ecumenical a\nintrude rac picturesque l\ni arrowy s uptake va\nu sandblind m\nandmanyother .\n- s trapeze ave over 50 %\n- worldwide shlppln clapboard g\n- total confident eleusinian iaiity\n- over 5 miiiion customer denticular s in 130 countries\nhave a nice da rechauffe y !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.166+0000", "entityId": 5971, "properties": {"text": "Subject: ip cameras for your security system\ndear sir or madam :\nwe understand from your information on google . com engineer . we would like to take this opportunity to introduce our company and products , with the hope that we may work with bright ideas imports in the future\nfounded in 1993 , tokia electronics co . , ltd . we are specializing in the manufacture of cctv cameras , color ccd cameras , b / w ccd cameras , color dome cameras , b / w dome cameras , mini ccd cameras , day / night ccd cameras , high speed cameras , flying sauce cameras , wireless cmos cameras , dvr , dvr board , all - in - one camera , ip camera and lens and other safety protection video products , which are widely used in banks , electric power , transportation , public security , , shopping mall , residence area and the like .\npresently , tokia electronics co . , ltd . has built \" tokia \" and \" yhdo \" with its own autonomous intellectual property . over years of efforts , owing to excellent credit standing , its products are widely sold in all over the world and exported to international market . it became one of the largest video recorder manufacturer in china . we have approved by iso 9000 and ce certificate .\ndetailed circumstance of our products , please click out the site : http : / / www . cctvcameras . cn /\nshould any of these items be of interest to you , please let us know . we will be happy to give you a quotation upon receipt of your detailed requirements .\nwe look forward to receiving your enquires soon . . i am very say if this letter disturb you .\nsincerely ,\njamme\nip cameras : live demo : http : / / 220 . 130 . 14 . 230 usename : guest password : guest\n1 . internal build - in ccd provides all in one cctv solution\n2 . remote surveillance through internet or intranet .\n3 . even triggered picture can be sent vis ftp or e - mail\n4 . system based on java platform for better stability\n5 . remote recording\n6 . pppoe", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.176+0000", "entityId": 5972, "properties": {"text": "Subject: mega nneed offr\nhello , welcome to pharmonli pitfall ne sho affect p\n- one of the leading oniine pharmaceutical sho exsiccation ps\nthereout v\ncompare g\na kibble l\nl devisor l\nl navigable a\nr metaphysical a trousseaux cl\ni billow sv atomicity a\ncoastal um\nandmanyother .\n- save ove reheat r 50 %\n- worldwide sh drowsy lpplng\n- total confidentiaiit mellifluous y\n- over 5 miiiion customers goneness in 130 countries\nhave a nice da wriggle y !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.182+0000", "entityId": 5973, "properties": {"text": "Subject: peace tree designs : creating extraordinary art for ordinary items !\npeace tree design creates\nproducts to enhance your daily experience by putting extraordinary art\non items you use everyday . original and abstract designs of suns , moons ,\nmeteors , eyes , mandalas , and flowers on\njournals ,\nmouse pads ,\nbags , and\nclocks make\nthem distinctive and you stand out .\npeace\ntree design will also create a\ncustom design\nor logo for an event ( kid ' s birthday , company function , family reunion )\nor for your organization .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.187+0000", "entityId": 5974, "properties": {"text": "Subject: buyer beware - penis patches !\npenis enlargement patch that works ! ! !\nhttp : / / www . gretan . com / ss /\na very ancient and fish - like smell .\nhave no friends not equal to yourself .\nthe wise man is he who knows the relative value of things .\ncourage is one step ahead of fear .\nidleness is not doing nothing . idleness is being free to do anything .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.192+0000", "entityId": 5975, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corei painter lx\n$ 80 adobe iiiustrator cs\n$ 80 adobe lndesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nluther\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.197+0000", "entityId": 5976, "properties": {"text": "Subject: rreally works very good\nhello , welcome to pharmonli thyroid ne s newtonian hop\n- one of the leading oniine campaign pharmaceutical shops\nmalnutrition v\ndimply g\na unfold l\nl withdraw l\nunarmed la\nr spatio a cupboard cl\ni decision sv osierbed a\nclassic um\nandmanyother .\n- save o operatic ver 50 %\n- worldwide sh retaliate lpplng\n- total conf impromptu identiaiity\n- over 5 miiiion cust unworn omers in 130 countries\npuffin have a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.203+0000", "entityId": 5977, "properties": {"text": "Subject: the penis patch is amazing\nthe penis patch is amazing\nhttp : / / www . gretan . com / ss /\nwho can believe that there is no soul behind those luminous eyes !\nnobody cares if you can ' t dance well . just get up and dance .\nno man is happy who does not think himself so .\nthough this be madness , yet there is method in ' t .\nhell has no benefits , only torture .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.210+0000", "entityId": 5978, "properties": {"text": "Subject: i am interested in buy ad space .\nhi i hope all is well , i am interested in buy ad space . we are looking for premier publishers that can deliver high quality us traffic , which is why i have contacted you . all our cpm impression counts are raw , not based off unique , which raises the effective cpm . our ecpm rate is 10 - 1 , no one in the industry can beat that ! for this campaign i have a large budget and i would love to allocate a few thousand dollars for a test campaign . for reporting , we have partnered with zedo , so you will know what you are making in real - time . we work with over 100 publishers and we are looking to schedule a budget for our key players to carry over into 2006 . platinum ad network is always looking for elite publishers . i ' d love to discuss with you further about the synergies our companies might have .\nthanks ,\nmichael mathews\nmedia buyer\nplatinum ad network\nmmathews @ platinumadnetworks . com\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.219+0000", "entityId": 5979, "properties": {"text": "Subject: account suspension\ndear\npaypal user ,\nin accordance\nwith our major database relocation , we are currently having major\nadjustments and updates of user accounts to verify that the informations\nyou have provided with us during the sign - up process are true and\ncorrect . however , we have noticed that the pin number you updated on file is fake . paypal requires your personal identification number as the latest security measure against : identity theft , credit card fraud and unauthorized account access . paypal will verify it with your bank records for your own protection .\nif you provide a wrong pin your account will be suspended for unauthorized account access . due our latest security improvements paypal became a global leader in online payments .\nwe require\nyou to complete an account verification procedure\nas part of our security measure .\nyou\nmust click the link below to complete the process .\nunable\nto do so may result to abnormal account behavior during transactions .\nthank\nyou for using paypal !\nthe paypal team\nplease\ndo not reply to this e - mail . mail sent to this address cannot be answered .\nfor assistance , log in to your paypal account and choose the \" help \"\nlink in the footer of any page .\npaypal\nemail id ppo 96\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.235+0000", "entityId": 5980, "properties": {"text": "Subject: ever have a sm 4 ll spock take off ?\ncd trading cards ( cdtd )\ncurrent price : 0 . 15\nis this an undiscovered gem that is positioned to go higher ? review exactly what this company does .\nbreaking news ! !\ncdtc announced that they have rebranded as nex 2 u\ncdtc inc . , the premier provider of multimedia catalogs , revealed its new brand today as nex 2 u ( tm ) ( cdtd ) . the decision to create the new brand was to help reveal the unique and fresh perspective demonstrated through nex 2 u ' s multimedia product offerings .\nthe nex 2 u branding and marketing strategy was created by how studios of topanga , ca . nex 2 u ' s business philosophy is about forming cooperative relationships and partnering with companies to help them achieve their business objectives through the use of electronic media . this philosophy molded the new image of nex 2 u - your multimedia catalog partner .\nbranding experts at how studios of topanga , ca designed the new artwork for the logo , print materials , and a new trade show booth and marketing strategy that was unveiled thiss w e e k at the 22 nd annual catalog conference at the gaylord palms in kissimmee , fl . howard lim and his creative team at how studios did an outstanding job in designing a new look for cdtc in the catalog marketplace .\njune 28 - nex 2 u ( tm ) ( cdtd ) receiveed rave reviews for its flagship product sales transactional media ( stm ( tm ) ) at the 22 nd annual catalog conference , held in kissimmee , florida .\nwith its stm technology , nex 2 u dominated the catalog industry with its high return and cost effective multi - channel solutions consisting of cd / dvd ' s , integrated website development , print - ready pdf , and point of sale kiosks . stm allows companies to offer a seamless online / offline shopping and branding experience for the catalog and internet - weary consumer .\nthe results of several international studies performed for the conference concluded that more and more companies are searching for multimedia alternatives to the historically expensive direct - mail catalogs . rising postage and paper costs for 2006 are causing large - scale catalogers to rethink their marketing initiatives opening up the opportunity for nex 2 u ( tm ) to position itself to lead the industry by introducing both b 2 b and b 2 c digital catalog environments .\n\" this event provided us more customer prospects and business relationship opportunities than we ever expected , \" said doug calaway , ceo of nex 2 u . \" it generated hundreds of sales leads in the us . we are now in discussions with three european marketing companies to distribute our products . the event reinforced the value that our products bring to the industry . \"\nabout how studios\nas founder and president of how studios , howard lim empowers clients to realize success through authentic brands ( tm ) . howard lim leads a team of professionals that communicates the powerful visions of america ' s top companies . how studio clients are an impressive | ist for instance : apple computer , disney theatrical productions ( lion king and aida ) , dreamworks , upn network , cartoon channel , hanna barbera , magic johnson summer pro league , paramount pictures , tempus expeditions ( virtual reality theme park ) , time warner interactive , fujitsu , honda , philips media , gilda marx inc . ( stars of tomorrow ) and toshiba . he exceeded the expectations of every client .\nabout cdtc ( now nex 2 u , inc . )\nnex 2 u is now the premier provider of multimedia catalogs in the industry . through new stm technology , nex 2 u takes existing content from currently used print catalogs and transforms them into highly interactive , highly profitable di rect mai | pieces known as sales transactional media . this technology not only increases sales and decreases costs , but conveys an impressive branding experience to the customer through a unique use of media .\nconclusion :\nthe examples above show the awesome , earning potential of little known companies that explode onto investor ' s radar screens ; many of you are already familiar with this . is cdtd poised and positioned to do that for you ? then you may feel the time has come to act . . . and please watch\nthis one trade wednesday ! go cdtd .\npenny stocks are considered highly speculative and may be unsuitable for all but very aggressive investors . this profile is not in any way affiliated with the featured company . we were compensated 3000 dollars to distribute this report . this report is for entertainment and\nadvertising purposes only and should not be used as investment advice . if you wish to stop future mailings , or if you feel you have been wrongfully placed in our membership , send a blank e mail with no thanks in the sub ject to\nmonomial is not apartheid reverberate but cadent prosper a verona wilson , schlesinger , rufus and hemorrhoid .\nspinster may gasohol carpet . bedazzle , rufus flaunt . caveat is antaeus abscissa discriminatory but dropout ,\navert eventuate magenta not topologize ex - accompanist aliphatic . cayley , temerity and benedikt .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.241+0000", "entityId": 5981, "properties": {"text": "Subject: i think you might be interested\nhello , i just found a site called graand . com - a free and safe place on the internet to place classified ads . i thought i should invite you to check it out . regards , walker", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.246+0000", "entityId": 5982, "properties": {"text": "Subject: professional advertising\ndear projecthoneypot @ projecthoneypot . org :\nemail is the best grow tool . we offer marketing with quality\nservices .\n1 . targeted list\nwe can provide target email list you need , which are compiled\nonly on your order . we will customize your client email list .\n* we have millions of lists in many categories .\n2 . sending targeted list for you\nwe can send your email message to your target clients ! we will\ncustomize your email list and send your ad for you .\n* we also offer hosting & mailing server .\nregards !\njone\nmarketing team\nkzl 789 @ 56 . com\nno and bye : bpserver @ hotmail . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.251+0000", "entityId": 5983, "properties": {"text": "Subject: your discount prescriptions resource online .\nlarge natural erection !\nnever for me the lowered banner , never the last endeavour .\nit is quality rather than quantity that matters .\ndon ' t fight a battle if you don ' t gain anything by winning .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.255+0000", "entityId": 5984, "properties": {"text": "Subject: perfect visual solution for your business now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buiiding a positive visual imaqe\nof your company by creatinq an outstandinq logo , presentabie stationery\nitems and professional website . these marketinq tools wiii siqnificantly\ncontributeto success of your business . take a look at our work samples , hot deal packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.260+0000", "entityId": 5985, "properties": {"text": "Subject: perfect visual solution for your business now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creating an outstandinq ioqo , presentabie stationery\nitems and professional website . these marketinq tools wiil siqnificantly\ncontributeto success of your business . take a iook at our work samples , hot deai packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.265+0000", "entityId": 5986, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom design of loqos ,\nstationery and web - sites . under our careful hand these powerfui marketinq tools\nwill bring a breath of fresh air into your business\nand make you stand out amonq the competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.269+0000", "entityId": 5987, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom design of loqos ,\nstationery and web - sites . under our carefui hand these powerfui marketing toois\nwill bring a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a ciick\naway from your future success . click here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.274+0000", "entityId": 5988, "properties": {"text": "Subject: your in - home source of health information\nright place to look for buying cheap viagra online !\nlight be the earth upon you , lightly rest .\nyou never lose by loving . you always lose by holding back .\nthe road to true love never did run smooth .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.278+0000", "entityId": 5989, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nvesta\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.282+0000", "entityId": 5990, "properties": {"text": "Subject: you ' ve won $ 100 , 000 . claim it now\ndear applicant , after further review upon receiving your application your current mortgage qualifies for a 4 . 75 rate . your new monthly payment will be as low as $ 340 / month for a $ 200 , 000 loan . please confirm your information in order for us to finalize your loan , or you may also apply for a new one . complete the final steps by visiting : http : / / www . oprefi . net / ? id = j 22 we look foward to hearing from you . thank you , heather grant , account managerlpc and associates , llc . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - not interested ? - > www . iorefi . net / book . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.287+0000", "entityId": 5991, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - end - logo and visuai identity .\nlogodentity offers creative custom design of loqos ,\nstationery and web - sites . under our careful hand these powerfui marketinq tools\nwili brinq a breath of fresh air into your business\nand make you stand out among the competitors .\nyou are just a click\naway from your future success . ciick here to see the samples of our artwork ,\ncheck our prices and hot offers", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.292+0000", "entityId": 5992, "properties": {"text": "Subject: you best friends and family deserve the best internet photo album !\nsoftware distribution .\na horse ! a horse ! my kingdom for a horse !\nheroes are often the most ordinary of men .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.296+0000", "entityId": 5993, "properties": {"text": "Subject: all the software you ' ll ever need to successfully make money online !\nunderstanding oem software\nit is impossible to say just what i mean !\nabove all , try something .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.301+0000", "entityId": 5994, "properties": {"text": "Subject: welcome to vip quality software .\nos - adobe - macromedia etc all under $ 15 - $ 99 cds\npoverty is a weapon of mass destruction .\nif you have a fallback plan , you will fall back .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.306+0000", "entityId": 5995, "properties": {"text": "Subject: achieve stronger and harder erections\npenis growth extreme\nhttp : / / www . siratu . com / ss /\nthere ' s really no fun in being sensible all the time . . . .\nadvice is least heeded when most needed .\nsome of us are becoming the men we wanted to marry .\nmy friend is one . . . who take me for what i am .\nthe way is harshness greeted with kindness , fear greeted with fortitude .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.311+0000", "entityId": 5996, "properties": {"text": "Subject: unbelievable new homes made easy\nim wanting to show you this\nhomeowner\nyou have been pre - approved for a $ 454 , 169 home loan at a 3 . 72 fixed rate .\nthis offer is being extended to you unconditionally and your credit is in no way a factor .\nto take advantage of this limited time opportunity\nall we ask is that you visit our website and complete\nthe 1 minute post approval form\nlook foward to hearing from you ,\ndorcas pittman", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.316+0000", "entityId": 5997, "properties": {"text": "Subject: likee a rock\nhello , welcome to phar philosophize monline sho orrery p\n- one of the leading oni dissociable ine pharmaceutical shops\nsynchronism v\nonomatopoeia g\ncommissionaire al\ndilapidated ll\ndutiable la\ncutglass rac unpolitical l\narduous is progenitor va\nloftiness um\nandmanyother .\n- save tzigane over 50 %\n- worldwide shlppl sconce ng\n- total confidentiai fleshings ity\n- over 5 mii prolocutor iion customers in 130 countries\nhave a gunnery nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.321+0000", "entityId": 5998, "properties": {"text": "Subject: security alert - confirm your national credit union information\n- - >\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.329+0000", "entityId": 5999, "properties": {"text": "Subject: professional advertising\ndear projecthoneypot @ projecthoneypot . org :\nwe offer email marketing with best services .\n1 . targeted list\nwe can provide target email list you need , which are compiled\nonly on your order . we will customize your client list .\n* we have millions of lists in many categories .\n2 . sending targeted list for you\nwe can send your email message to your target clients ! we will\ncustomize your email list and send your ad for you .\n* we also offer hosting & mailing server .\nregards !\nsteve\nmarketing team\nkzl 789 @ 56 . com\nno and bye : bpserver @ hotmail . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.335+0000", "entityId": 6000, "properties": {"text": "Subject: make your dialup go faster\nhow have you been , visioson @ hpp . za . net\nfind our how our revolutionary hardware will speed\nup your dialup modem connection !\ncopy and paste our website between the arrows below :\n> > > > click 4 abargain . info\nttyl ,\nhenry m . olariu , iii\nprojecthoneypot @ projecthoneypot . org\ngoodbye - c l i c k 4 a b a r g a i n . i n f o / r\nabout life . i am a teacher of preschool children with disabilities . i have been making software for the children in my classrooms for the last eight years . over the past 23 years i have encountered many types of disabilities and many types of parents . the question .\nlawrence had already liked dancing . . the man who never makes a mistake always takes orders from one who does . .\nit ' s kind of fun to do the impossible . walt disney . don ' t you hate running carelessly ? .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.349+0000", "entityId": 6001, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter lx\n$ 80 adobe illustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 aiias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nbeatrice\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.353+0000", "entityId": 6002, "properties": {"text": "Subject: bettter control\nhello , welcome to phar christy monline bobcat shop\n- one of the leading o tarrock niine pharmaceutical shops\nintoxicate v\ndiatonic g\noilplant al\nparian ll\nl galvanize a\nr catalysis ac venter l\ni dischargee s entente va\nmagnitude um\nandmanyother .\n- save over melinite 50 %\n- worldwide shlppl comprador ng\n- total confidentiai retouch ity\n- over 5 miiiion custo sparkling mers in 130 countries\nhave a ni intriguant ce day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.358+0000", "entityId": 6003, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enough for a man , but made for a woman ; - )\norderinq viaqra oniine is a very convinient , fast and secure way !\nmillions of people do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.363+0000", "entityId": 6004, "properties": {"text": "Subject: get your babies diapers bill paid for , for a year !\nyour family could definately use this , now go .\nkaazqchn", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.368+0000", "entityId": 6005, "properties": {"text": "Subject: get your babies diapers bill paid for , for a year !\nyour family could definately use this , now go .\nodzzfzzq", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.373+0000", "entityId": 6006, "properties": {"text": "Subject: rready to go in 15 minutes\nhello , welcome to p attain harmonline sho vaccination p\n- one of the leading oniine pharmaceutical partsong shops\npother v\nbodiless g\na billion l\nl aquarius l\naugmentative la\nr labourist ac quadrigae l\npenitence isv unspent a\ncynicism um\nandmanyother .\n- sav rubberized e over 50 %\n- worldwide leisure shlpplng\n- total conf wisdom identiaiity\n- over 5 miiiion customers in 13 concrescence 0 countries\nhave a nice votaress day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.377+0000", "entityId": 6007, "properties": {"text": "Subject: 80 % discount on all adobe titles\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro edition 20032 windows xp pro 3 adobe creative suite premium 4 systemworks pro 2004 edition 5 flash mx 20046 corel painter 87 adobe acrobat 6 . 08 windows 2003 server 9 alias maya 6 . 0 wavefrontl 0 adobe premiere see more by this manufacturer microsoft apple software customers also bought these other items . . microsoft office professional edition * 2003 * microsoft choose : see other options list price : $ 899 . 00 price : $ 69 . 99 you save : $ 830 . 01 ( 92 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : analyze and manage business information using access databases exchange data with other systems using enhanced xml technology control information sharing rules with enhanced irm technology easy - to - use wizards to create e - mail newsletters and printed marketing materials more than 20 preformatted business reports sales rank : # 1 shipping : international / us or via instant download date coupon expires : may 30 th , 2005 average customer review : based on 1 , 768 reviews . write a review . microsoft windows xp professional or longhorn edition microsoft choose : see other options list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : designed for businesses of all sizes manage digital pictures , music , video , dvds , and more more security with the ability to encrypt files and folders built - in voice , video , and instant messaging support integration with windows servers and management solutions sales rank : # 2 shipping : international / us or via instant download date coupon expires : may 30 th , 2005 average customer review : based on 868 reviews . write a review . adobe creative suite premium adobe choose : see other options list price : $ 1149 . 00 price : $ 99 . 99 you save : $ 849 . 01 ( 90 % ) availability : available for instant download ! coupon code : ise 229 media : cd - rom / download system requirements | accessories | other versionsfeatures : an integrated design environment featuring the industrys foremost design tools in - depth tips , expert tricks , and comprehensive design resources intuitive file finding , smooth workflow , and common interface and toolset single installer - - control what you install and when you install it cross - media publishing - - create content for both print and the web sales rank : # 3 shipping : international / us or via instant download date coupon expires : may 30 th , 2005 average customer review : based on 498 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.382+0000", "entityId": 6008, "properties": {"text": "Subject: affordable - the way medications should be\nif your sex life is good . . . then make it fantastic !\nthe sword of justice has no scabbard .\ngod does not care about our mathematical difficulties . he integrates empirically .\nevery time we say , let there be ! in any form , something happens .\na finished person is a boring person .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.388+0000", "entityId": 6009, "properties": {"text": "Subject: the technews - bulletin , july 2005\nmobile production units for developing countries - worldwide partners program\nsn world foundation will supply to countries and developing regions the technology and necessary support for production in series of mini - plants in mobile containers ( 40 - foot ) . the mini - plant system is designed in such a way that all the production machinery is fixed on the platform of the container , with all wiring , piping , and installation parts ; that is , they are fully equipped . . . and the mini - plant is ready for production .\nmore than 700 portable production systems : bakeries , water purification , dehydrated food , steel nails , fruit juice preparation , tire retreading , reinforcement bar bending for construction framework , sheeting for roofing , ceilings and faades , plated drums , aluminum buckets , injected polypropylene housewares , pressed melamine items ( glasses , cups , plates , mugs , etc . ) , mufflers , construction electrically welded mesh , plastic bags and packaging , medical assistance mobile units , sanitary material , hypodermic syringes , hemostatic clamps , etc .\nthe mini - plants of production in mobile containers is the only system in the world that can provide up to six ( 6 ) of the most essential products for basic sustenance for just one dollar ( $ 1 . 00 ) per day .\nsn world foundation has started a co - investment program for the installation of small assembly plants to manufacture , in series , the mini - plants of portable production on site , region or country where required . one of the most relevant features is the fact that these plants will be connected to the international trade system , with access to more than 50 million raw materials , products and services and automatic transactions for world trade .\ndue to financial reasons , involving cost and social impact , the best solution is setting up assembly plants on the same countries and regions , using local resources ( labor , some equipment , etc . ) sn world foundation participates at 50 % ( fifty percent ) for investment of each assembly plant .\nif you are interested in being a partner in your country or region , you can send your cv to : sn world foundation ( click here ) worldwide partners program to : sarah mathews , program manager .\nif you received this in error or would like to be removed from our list , please return us indicating : remove or un - subscribe in subject field , thanks . the technews , editor\n2005 the tech news . all rights reserved .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.393+0000", "entityId": 6010, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter lx\n$ 80 adobe lllustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cool 3 d production studio 1 . 0 . 1\n$ 90 aiias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nlliana\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.397+0000", "entityId": 6011, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter lx\n$ 80 adobe iliustrator cs\n$ 80 adobe indesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cool 3 d production studio 1 . 0 . 1\n$ 90 aiias motion builder 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\nbreanne\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.402+0000", "entityId": 6012, "properties": {"text": "Subject: elektronik lottery promotion prize awards ! ! !\nfrom : government accredited licensed lottery promoters . winning notice for category \\ \" a \\ \" winner\ndear lucky winner ,\nre : elektronik lotto promotion prize awards winning notification\nwe are pleased to inform you of the result of the just concluded annual\nfinal draws of lotto international netherlands programs .\nthe online cyber lotto draws was conducted from an exclusive list of\n25 , 000 e - mail addresses of individual and corporate bodies picked by an\nadvanced automated random computer search from the internet . no tickets were sold . after this automated computer ballot , your e - mail address emerged as one of two winners in the category \\ \" a \\ \" with the following :\nref number : pc 390 es 214\nbatch number : 26371545 - lni / 2005\nticket number : pcp 002 871\nyou as well as the other winner are therefore to receive a cash prize\nof 1 , 500 , 000 . 00 . ( one million , five hundred thousand euro only ) each from the total payout . your prize award has been insured\nwith your e - mail address and will be transferred to you upon meeting\nour requirements , statutory obligations , verifications , validations and\nsatisfactory report .\nto begin the claims processing of your prize winnings you are advised\nto contact our licensed and accredited claims agent for category\n\\ \" a \\ \" winners with the information below :\nmr . van bell ,\nremittance department director ,\ntel : + 31 617 186 560\ne - mail : vanbell @ nzoomail . com\nvanbell 2005 @ web - mail . com . ar\nyou are also advised to provide him with the under listed information\nas soon as possible :\n1 . name in full\n2 . address\n3 . nationality\n4 . age\n5 . occupation\n6 . phone / fax\nnote : all winnings must be claimed not later than 14 days . after this\ndateall unclaimed funds would be included in the next stake .\nremember to quote your reference information in all correspondence .\nyou are to keep all lotto information away from the general public\nespecially your reference and ticket numbers . ( this is important as a\ncase of double claims will not be entertained ) . members of the affiliate\nagencies are automatically not allowed to participate in this program .\nthank you and congratulations ! ! !\nyours faithfully ,\nmrs . lynn rowlands ,\ngames / lottery coordinator .\nlotto international netherlands\nwww . lotto . nl\nthis email may contain information which is confidential and / or\nprivileged . the information is intended solely for the use of the\nindividual or entity named above . if you are not the intended\nrecipient , be aware that any disclosure , copying , distribution or use of\nthe contents is prohibited . if you have received this electronic\ntransmission in error , please notify the sender by telephone or return\nemail and delete the material from your computer .\nmail sent from webmail service at php - nuke powered site\n- http : / / skdclan . wwwpuntocom . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.406+0000", "entityId": 6013, "properties": {"text": "Subject: search for the best and cheapest pharmacy online\nsave 80 % over the brandnames like viagra , cialis and propecia\nanatomy is destiny .\noh , what a dear ravishing thing is the beginning of an amour !\nit is not every question that deserves an answer .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.411+0000", "entityId": 6014, "properties": {"text": "Subject: same medicine , different price !\nbig savings on brand name drugs .\ninjustice anywhere is a threat to justice everywhere .\nsome rise by sin , and some by virtue fall .\nthe judge is condemned when the criminal is absolved .\non the heights , all paths are paved with daggers .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.415+0000", "entityId": 6015, "properties": {"text": "Subject: enhance your anatomy\nthe longz system , both the capsules and the free instructional manual , give\nyou the most effective ways to reach immediate size gains and improve the\nstrength and power of your erections .\n90 % of males were interested in improving their sexual stamina ,\nperformance , and the size of their manhood . are you one of the 90 % ?\ni ' m 67 years old . i was very wary of putting my details on the internet ,\nbut i am very pleased that it worked out for me . your product arrived only 2\ndays after i placed the order , and the packaging was very discreet , which\nwas perfect for me . i was shocked at how quickly the pills took effect , and\ni did attempt the exercises as well , which i found simple and easy to\nunderstand . i now have loads of energy , and feel like a new man . i can ' t\nthank you enough ! ronald , phoenix\ncheck out the only male enhancement formula with a free dvd\nhttp : / / acoh . 3 . largestitemssuper . com / ng /\nnot for you , then use link above\nyou seem quite anxious to get rid of money , remarked rob , carelessly . how\nmuch are you worth ? personally ? yes\nnothing at all , young man", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.422+0000", "entityId": 6016, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstanding website\nwiii make the task much easier .\nwe do not promise that havinq ordered a ioqo your\ncompany wili automaticaiiy become a world ieader : it isguite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.426+0000", "entityId": 6017, "properties": {"text": "Subject: visual identity and logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creatinq an outstanding ioqo , presentable stationery\nitems and professionai website . these marketing toois will significantiy\ncontributeto success of your business . take a look at our work sampies , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.431+0000", "entityId": 6018, "properties": {"text": "Subject: avoid fake viagra get the real thing\ntake energy pills for sexual health\nshe ' s the only man in my cabinet .\nact as if were impossible to fail .\na clash of doctrines is not a disaster - - it is an opportunity .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.436+0000", "entityId": 6019, "properties": {"text": "Subject: professionally - designed logos and identities\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our careful hand thesepowerfui marketing\ntoois wili bring a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.443+0000", "entityId": 6020, "properties": {"text": "Subject: naturally irresistible your corporate identity\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstandlng webslte\nwill make the task much easier .\nwe do not promise that having ordered a ioqo your\ncompany wiil automaticaliy become a world ieader : it isguite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.451+0000", "entityId": 6021, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enouqh for a man , but made for a woman ; - )\nordering viagra oniine is a very convinient , fast and secure way !\nmillions of people do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.460+0000", "entityId": 6022, "properties": {"text": "Subject: i know your company !\nlt is really hard to recollect a company : the\nmarket is full of suggestions and the information isoverwhelminq ; but a good\ncatchy logo , stylish statlonery and outstandlng webslte\nwiil make the task much easier .\nwe do not promise that having ordered a iogo your\ncompany will automaticaiiy become a worid ieader : it isguite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.465+0000", "entityId": 6023, "properties": {"text": "Subject: need an outstanding logo now ?\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creatinq an outstanding iogo , presentabie stationery\nitems and professionai website . these marketing tools wiil significantiy\ncontributeto success of your business . take a look at our work samples , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.470+0000", "entityId": 6024, "properties": {"text": "Subject: any med for your girl to be happy !\nyour girl is unsatisfied with your potency ? don ' t wait until she finds another men !\nclick here to choose from a great variety of llcensed love t @ bs ! best pri $ es , fast shippinq and quaranteed effect ! here you buy it riqht from warehouse !\nthe store is verlfied by bbb and approved by vlsa !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.475+0000", "entityId": 6025, "properties": {"text": "Subject: v . to youu\nhello , welcome to pharmon flatting line sh reflective op\n- one of the leading oniine chinatown pharmaceutical shops\nvaccinate v\npraline g\nbarkpit al\nl isosceles l\nbowlegged la\nr ironfall ac blacklist l\nphiltre is syntax va\ncalipers um\nandmanyother .\n- quadragesimal save over 50 %\n- worldwide shlppln conning g\n- total voluntaryism confidentiaiity\n- over commandment 5 miiiion customers in 130 countries\nhave a nic dhurrie e day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.479+0000", "entityId": 6026, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corel painter lx\n$ 80 adobe illustrator cs\n$ 80 adobe indesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 aiias motion builder 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\njosefine\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.483+0000", "entityId": 6027, "properties": {"text": "Subject: cheap oem soft shipping worldwide\nwhy pay big bucks ? create your own website now !\nyou raise your voice when you should reinforce your argument .\nwhat ' s up , doc ?", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.488+0000", "entityId": 6028, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corel painter lx\n$ 80 adobe iilustrator cs\n$ 80 adobe lndesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professional\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nalda\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.493+0000", "entityId": 6029, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corel painter lx\n$ 80 adobe iliustrator cs\n$ 80 adobe indesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cooi 3 d production studio 1 . 0 . 1\n$ 90 alias motion builder 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\naida\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.497+0000", "entityId": 6030, "properties": {"text": "Subject: assistance me\nmy name is mr . newton gwarada , the stepson of mr . terry ford of zimbabwe . it might be a surprise to you where i got your contact address ; i got it from the net . dont be worried because i am contacting you in good faith .\nduring the current crisis against the farmer of zimbabwe by the supporters of our president robert mugabe to claim all the white owned farms in our country , he ordered all the white farmers to surrender their farms to his party members and their followers .\nmy stepfather was one of the best farmer in the country and knowing that he did not support the president political ideology , the president supporters invaded my stepfather \" s farm and burnt down everything , killed him and confiscated all his investments .\nafter the death of my stepfather , my mother and i with my younger sister decided to move out of zimbabwe for the safety of our lives . we took along with us the money my stepfather kept in the safe in my mother ' s house which amounted to the sum of us $ 20 m ( twenty million united states dollars ) to the republic of south africa where we have deposited it as personal valuables in a private security company for safe - keeping .\nbecause of our present status ( political refugees ) , my mother and i are sriously looking forward to having an overseas partner that will assist us with the convenient and legal transfer of the funds out of south africa .\nif my proposition is considered , for assisting us to transfer this money to your country , we will offer you 20 % of the total fund , and 5 % of the total will be set aside to cover any expenses incurred during this transaction , 75 % will be for my family to invest . in your country under your supervision .\nfor detailed information , you can contact me direct .\ni would appreciate confidentiality and honesty in our correspondence . your immediate response will be highly wecomed .\nbest regards ,\nmr . newton gwarada", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.502+0000", "entityId": 6031, "properties": {"text": "Subject: please restore your account access\nhtml >\ndear southtrust customer ,\nwe recently reviewed your account , and we suspect an unauthorized atm and / or pin - based point of sale transaction on your account .\nprotecting your account is our primary concern . therefore , as a preventive measure we have temporary limited your access to sensitive information .\nto ensure that your account is not compromised , simply hit \" click on the reference link \" to confirmyour identity as a card member of southtrust .\nthis notification expires on july 15 th 2005 .\nonce you have updated your account records your south trust bank will not be\ninterrupted and will continue as normal .\nplease follow the link below\nand renew your account information .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.507+0000", "entityId": 6032, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.512+0000", "entityId": 6033, "properties": {"text": "Subject: you were accepted . here is your money\ndear applicant , after further review upon receiving your application your current mortgage qualifies for a 4 . 75 rate . your new monthly payment will be as low as $ 340 / month for a $ 200 , 000 loan . please confirm your information in order for us to finalize your loan , or you may also apply for a new one . complete the final steps by visiting : http : / / www . barefi . net / ? id = j 22 we look foward to hearing from you . thank you , lorene ouellette , account managerlpc and associates , llc . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - not interested ? - > www . iorefi . net / book . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.517+0000", "entityId": 6034, "properties": {"text": "Subject: try it ouut\nhello , welcome to pharmon contention line tarbrush shop\n- one of the leading oniine pharmaceutical shop classical s\nslatternly v\ninexplicit g\nsiliceous al\nbandit ll\nprovincialize la\nfruity rac thence l\ni enamel sv chrome a\nu conjuncture m\nandmanyother .\n- s admonition ave over 50 %\n- worldwide shlppln enthralling g\n- total confidentiai historian ity\n- over 5 miiii messieurs on customers in 130 countries\nheavenly have a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.522+0000", "entityId": 6035, "properties": {"text": "Subject: shopping for software ? now in your language & currency !\nmicrosoft and ibm oem software for bundling only and other related software .\nhow to make god laugh : tell him your future plans .\nexperience consists of experiencing that which one does not wish to experience", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.533+0000", "entityId": 6036, "properties": {"text": "Subject: wish you could be better ?\npenis growth extreme\nhttp : / / www . siratu . com / ss /\ncruelty is like hope : it springs eternal .\namusement is the happiness of those who cannot think .\nto each his own . ( suum cuique )\nalways forgive your enemies ; nothing annoys them so much .\nbad news goes about in clogs , good news in stockinged feet .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.538+0000", "entityId": 6037, "properties": {"text": "Subject: no pills , no pumps - its the patch\nexperience more powerful orgasms\nhttp : / / www . siratu . com / ss /\ngive me where to stand , and i will move the earth .\nonly a fool walks backwards into the future .\npoetry is a way of taking life by the throat .\ni am certain there is too much certainy in the world .\na word to the wise is infuriating .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.543+0000", "entityId": 6038, "properties": {"text": "Subject: hey man , stop throwing away your money\npenis enlargement patch that works ! ! !\nhttp : / / www . siratu . com / ss /\nbeauty holds more worth than gold .\nglory built on selfish principles is shame and guilt .\nmoderation in all things .\npeople who throw kisses are hopelessly lazy .\nwe must not let our rulers load us with perpetual debt .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.548+0000", "entityId": 6039, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe paqemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter ix\n$ 80 adobe iilustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cool 3 d production studio 1 . 0 . 1\n$ 90 alias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\ntoni\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.554+0000", "entityId": 6040, "properties": {"text": "Subject: regain your confidence viagra online\nyour trusted source for prescription medication .\npetty fears and petty pleasures are but the shadow of reality .\nthe golden rule is that there are no golden rules .\ngravity is a habit that is hard to shake off .\ni have not failed , i ' ve just found 10 , 000 ways that won ' t work .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.559+0000", "entityId": 6041, "properties": {"text": "Subject: learn to play texas hold ' em and other poker classics on the most popular free site .\n- earn $ 100 bonus from partypoker . visit here .\nqdwlougj", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.564+0000", "entityId": 6042, "properties": {"text": "Subject: learn to play texas hold ' em and other poker classics on the most popular free site .\n- earn $ 100 bonus from partypoker . visit here .\njybwgyay", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.568+0000", "entityId": 6043, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\norderinq viagra online is a very convinient , fast and secure way !\nmiilions of peopie do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.573+0000", "entityId": 6044, "properties": {"text": "Subject: the big unit\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud\npress here\nwhen wearing this garment you will find it unnecessary to use the\nelectric tube except on rare occasions\noranjestad , aruba , po b\n1200\nso while they grow they cannot be said to really live , and they must be\npicked before they can become good citizenshow long do you live , after\nyou are picked ? asked dorothy never allow revenge or animosity to influence\nyour conduct\nmen may threaten , but they can not injure you , so you must remember that\nthey do not possess your mighty advantages , and that , because of your\nstrength , you should bear with them patiently\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.578+0000", "entityId": 6045, "properties": {"text": "Subject: # # # # # # # # # # guaranteed $ 50 , 000 fast ! ! # # # # # # # # # #\nyou make a guaranteed $ 50 , 000 cash in\njust 90 days !\nquit your full time job in less than 3 months !\nsend an email to\nthe address below to request the top secret url :\nfreemlmleads @ hotmail . com\nput guaranteed _ _ $ 50 , 000 _ _ cash ! in the subject line and\nwe will send the url for this awesome program right away !\nyour success is 100 % guaranteed ! join\nnow !\n* * * * * * * * * * * * * * * * * *\n* * * * * * * * * * * * * * * * * * * *\nour company is committed to stopping uce ( unsolicited commercial e - mail ) ,\nand we are trying to set an example for other legitimate opt - in list\nproviders by verifying our subscribes and unsubscribes in each and every\nemail transmission . you opted - in to one of our web sites , autoresponders ,\nor our affiliated partners ' web sites . we are sending you this email with\nyour best interest in mind . we strive to treat every subscriber fairly and\nwill not send you anymore emails if you choose to unsubscribe . we treat\nthis very seriously and thank you for your cooperation on this matter .\nreturn with remove in the subject line to bepermanently removed .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.582+0000", "entityId": 6046, "properties": {"text": "Subject: i think you might be interested\nhello , i just found a site called graand . com - a free and safe place on the internet to place classified ads . i thought i should invite you to check it out . regards , walkerczesc , wlasnie znalazlam stronke w internecie graand . com - miejsce w internecie , gdzie mozesz dawac darmowe ogloszenia . pomyslalam , ze cie to zainteresuje . pozdrawiam , walker", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.587+0000", "entityId": 6047, "properties": {"text": "Subject: visual identity and logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creatinq an outstanding loqo , presentable stationery\nitems and professional website . these marketing toois wiii significantly\ncontributeto success of your business . take a iook at our work sampies , hot deal packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.592+0000", "entityId": 6048, "properties": {"text": "Subject: find where to buy online cheap viagra .\nwe provide top class world wide lifestyle medications , at incredible prices .\nit ' s only after we ' ve lost everything that we ' re free to do anything .\npeace visits not the guilty mind . ( nemo malus felix )\ndo good and don ' t worry to whom .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.596+0000", "entityId": 6049, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciaiis has a iot of advantages over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohoi ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.601+0000", "entityId": 6050, "properties": {"text": "Subject: you will receive the best prices available on viagra online\nif your sex life is good . . . then make it fantastic !\nthe covers of this book are too far apart .\nreal freedom lies in wildness , not in civilization .\nwith the gift of listening comes the gift of healing .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.606+0000", "entityId": 6051, "properties": {"text": "Subject: viagra online now\nlevitra is in the class of oral impotence medication like viagra .\nwhatever you are , be a good one .\nadvice is a dangerous gift , even from the wise to the wise .\nmen in however high a station ought to fear the humble .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.611+0000", "entityId": 6052, "properties": {"text": "Subject: clear benefits of creative design\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwhelminq ; but a good\ncatchy logo , stylish statlonery and outstanding webslte\nwiil make the task much easier .\nwe do not promise that havinq ordered a logo your\ncompany will automaticaily become a worid leader : it isguite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.615+0000", "entityId": 6053, "properties": {"text": "Subject: clear benefits of creative design\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , stylish statlonery and outstandlng webslte\nwiil make the task much easier .\nwe do not promise that havinq ordered a iogo your\ncompany will automaticaliy become a world ieader : it isguite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.620+0000", "entityId": 6054, "properties": {"text": "Subject: a chance to get new logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visual imaqe\nof your company by creatinq an outstandinq logo , presentable stationery\nitems and professionai website . these marketinq tools wiil significantiy\ncontributeto success of your business . take a iook at our work sampies , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.624+0000", "entityId": 6055, "properties": {"text": "Subject: largest collection of porn mo \\ / ies ever - x 89\ncum witness the most extreme sexual achievements ever to be found on the net ! we have tons of exclusive never before seen pics and videos of your fav pornstars doing exactly what you dream to see !\ndo you think you have what it takes to beat one of our records ? we welcome all member entries , cum see if you have what it takes to earn a spot in our record library !\nhttp : / / 3 wii . biz . lediesnight . biz /\n- - - - - - - - - - - - - -\nabsolve chambers bey avocet\ncyanic captive cryptic cheap\ncomprehensible bronx admittance brash", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.629+0000", "entityId": 6056, "properties": {"text": "Subject: send the love home with an online photo album\nsoftware for system builders , resellers , and hardware purchasers only .\npride sullies the noblest character .\na person should want to live , if only out of curiosity .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.633+0000", "entityId": 6057, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nmanie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.639+0000", "entityId": 6058, "properties": {"text": "Subject: well , trry it\nhello , welcome to pharmon wallow line s dilative hop\n- on extensible e of the leading oniine pharmaceutical shops\ngreasy v\nmarauder g\nunabridged al\nchromolithograph ll\nacknowledgement la\nr repealer ac octane l\ni extrusion s quaint va\nu pollination m\nandmanyother .\n- s nucleate ave over 50 %\n- worldwide shlp rocket plng\n- total confiden screechy tiaiity\n- over 5 miiiion permafrost customers in 130 countries\nhave a backfiller nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.644+0000", "entityId": 6059, "properties": {"text": "Subject: do not have money , get software cds from here !\nsoftware compatibility . . . . ain ' t it great ?\ngrow old along with me the best is yet to be .\nall tradgedies are finish ' d by death . all comedies are ended by marriage .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.649+0000", "entityId": 6060, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nshiloh\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.653+0000", "entityId": 6061, "properties": {"text": "Subject: we focus on oem and retail box for microsoft , adobe , macromedia , corel , symantec and more .\nsoftware for system builders , resellers , and hardware purchasers only .\nthe only thing that comes to a sleeping man are dreams .\nspinnin ' a rope is fun if your neck ain ' t in it .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.658+0000", "entityId": 6062, "properties": {"text": "Subject: money : $ 21362\ndear homeowner , you have been pre - approved for a $ 400 , 000 loan at a low fixed rate . this offer is being extended to you unconditionally and your credit is in no way a factor . to take advantage of this limited time opportunity , we ask you to visit our website and completethe post approval form . http : / / www . homefastcash . com / ? a = jeezy\ndollie rogersuq logan financial group - - - - - - - - - - - - - - - - - - - - - - 3 : immersion cabrera immortal knot buechnerwww . oprefi . net / book . php . . . not interested", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.662+0000", "entityId": 6063, "properties": {"text": "Subject: fca offrr\nhello , welcome to strengthen pharmonline s preternatural hop\n- one of the leading on wheatstone iine pharmaceutical shops\nsesterce v\nseadog g\nmessroom al\ncrocodile ll\nl mounted a\nr roadster ac fusible l\ncatenae isv calorie a\nu fasten m\nandmanyother .\n- save over 5 diaper 0 %\n- worldwide shl beforehand pplng\n- total confidentia headcheese iity\n- ov parterre er 5 miiiion customers in 130 countries\nhave a arithmetician nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.667+0000", "entityId": 6064, "properties": {"text": "Subject: are you happy about your size and sexual performance ?\nexperience more powerful orgasms\nhttp : / / www . siratu . com / ss /\nour thoughts are free .\nless is more .\nthe best way out is always through .\npatience is the companion of wisdom .\none swallow does not make a summer .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.672+0000", "entityId": 6065, "properties": {"text": "Subject: wanna be more man ? check this dude\npenis enhancement patch , doctor approved and recommended .\nhttp : / / www . siratu . com / ss /\ncome not within the measure of my wrath .\nthe enthusiasm of a woman ' s love is even beyond the biographer ' s .\nsilence is the most perfect expression of scorn .\ndistrust and caution are the parents of security .\nit ' s only after we ' ve lost everything that we ' re free to do anything .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.676+0000", "entityId": 6066, "properties": {"text": "Subject: econommize more\nhello , welcome to pharm attach online sh ampoule op\n- one of the leading oniine pharmaceutical durability shops\nfelloe v\nimpregnated g\na coloration l\nairshed ll\nobliquity la\nthingamy ra headstone cl\nrocketry is bombed va\nimpugnable um\nandmanyother .\n- save over disparate 50 %\n- worldwide companionway shlpplng\n- total confidenti solder aiity\n- over 5 miiiion customers i relational n 130 countries\nhav atlantic e a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.681+0000", "entityId": 6067, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enouqh for a man , but made for a woman ; - )\norderinq viagra oniine is a very convinient , fast and secure way !\nmiliions of peopie do it daily to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.686+0000", "entityId": 6068, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professionai edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere elements\n$ 125 corel painter ix\n$ 80 adobe liiustrator cs\n$ 80 adobe lndesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nlsiah\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.690+0000", "entityId": 6069, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialls has a iot of advantaqes over viaqra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.695+0000", "entityId": 6070, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialls has a iot of advantaqes over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohoi ! we ship to any country !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.699+0000", "entityId": 6071, "properties": {"text": "Subject: i need your help\ndear sir ,\nin view of my difficulties and problems in this country , i ' m so pleased\nto\nhave found someone like you in whom i can confide or at least talk to .\nmy\nname is stella johnson , a freetown , sierra leone . i am here in senegal\nas a\nrefugee . i arrived here a year ago during the peak of our national\ncrises\n( civil war ) my father , johnson was a military personel in the rebel\ncamp .\nwhile serving in the army , he deposited the sum of six million one\nhundred\nthousand usd cash ( $ 6 . 1 million us dollars cash ) to my mother for my\nlife\ninheritance . in a finance and security company here in dakar senegal .\nhe ( my father ) drowned in a river while attempting to cross during a\nbattle\nwith the government troops . i ' m using this opportunity pleading for you\nto\nhelp me retrieve this money and transfer it into your account pending\nwhen i\nwill come over to your country for investment . you will be compensated\nfor\nall your efforts in actuallising this transaction with 20 - 25 percent of\nthe\ntotal sun involved .\ni expect you to write soon acknowledging your willingness to help or\notherwise . thanks .\nyours sincerely ,\nstella johnson", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.704+0000", "entityId": 6072, "properties": {"text": "Subject: aggressive investors should be watching sports alumni , inc .\ninvestor alert !\nif a group of\ninvestors would have the opportunity to have invest in the nba ,\nnfl , nbl , nhl , and mls when the leagues started . how rich would\nthey be today ? today we will be introducing a new football alumni\nassociation that will bring ex high school , college , and\nprofessional athletes around the\nunited states\nto relive\ntheir glory days .\nas savvy\ninvestor prepare to buy this stock , it has become clear that this\ncould be one of the most explosive opportunities of the year . you\nstill have the opportunity to buy this stock for pennies to the\ndollar - but for how long ?\nhere at wall\nstreet research we do not get excited about many stocks . that ' s\nbecause its getting harder and harder to find stocks that have\npotential to make investors rich very quickly . blue\nchips can ' t and ipo ' s rarely pay off small\ninvestors . history shows that the only consistent way for small\ninvestors to see their money double , triple , or more on the\nshort run is to be smart enough to find small caps with huge\npotential and buy before they take off - the kind of stocks that\ngets us excited .\ncompany in\nreview\npink sheets\nsymbol : spni\nhttp : / / www . . com\nrecent price $ 0 . 50\ntarget price $ 2 . 50\naggressive\ninvestors\nshould be watching\nsports alumni , inc\n( spni ) ,\nit is making big moves and growing fast ! when the\nnba , nfl ,\nnbl , nhl ,\nand mls , talk about lockouts , half seasons or\nno season , salary caps , and even the referees join the turmoil\nevery year one of these leagues threatens the passion\nfor sports ! . will they play again this season ? sports alumni , inc is\nabout bringing the passion of the former game to all ex high\nschool , college , and professional athletes . not about how\nbig of a salary they will be making the next couple of years .\nsports alumni , inc\nsports alumni , inc maybe you started playing football when you where\n8 years old and never quite lost the love of the game . perhaps you\neven played college ball . what ever level you played , its a good bet\nthat your passion for the game did not end when the whistle blew and\nthe last play ended . that is what american football alumni seeks to\nbring back to the multi - million - member target market of former and\ncurrent players and coaches .\nrecent surveys reveal that 70 percent of former football players would\nbe interested in joining a national alumni association whose makeup is\nformer high school and college players . seventy - nine percent are\ninterested in reunions with former teammates and 55 percent said\nthey ' d be interested in purchasing their old school football jerseys ,\nespecially if their names were included .\nthe afa will bring old teams together through its subscriber network ,\nwhile offering on line stores of customized merchandise , a first class\nmagazine , conventions , football travel packages national and local\npolls . this is an un - tapped industry within a multi - billion dollar\nmarketplace .\ncompanys recent news\nsports alumni , inc . ( spni\npk )\nannounced today the official launch of their first sports alumni micro\nsite ,\nwww . . com . this\nsite is the preliminary sign up point for their first of many sports\nalumni sites the company plans to launch this year . the main member\nsite launch is expected early july 2005 with a $ 30 million\nmedia blitz to follow this fall . we are very pleased to have ai\nsoftware solutions as our software development and web hosting partner\nas they are clearly one of the top companies in this industry and can\nfully support our expected rapid growth . they have integrated\nseamlessly with our organization and made development a snap , stated\nsports alumnis president matthew totty .\nsports\nalumni will also be marketing football fest 2006 this fall , a grand\nevent planned in las vegas ,\njune\n2006 , where they expect attendance of over 150 , 000 former\nplayers and coaches . we have everything imaginable planned for this\nevent and were really excited for this to be the football event in\nthe country to attend each year . its a chance for our members to\nrub elbows with footballs greats and just have a good time . if you\nlived it , youre one of us , states mr . totty .\nsmart investors know its easier to take a $ 1 . 00 stock to\n$ 5 . 00 than to take a $ 10 . 00 stock to $ 50 . 00 .\nbut the word is\ngetting out . chances like this are few and far between and the buzz\non the street is that spni is a buy ! who knows when youll have\nanother chance to turn such a huge profit again ? smart investors\nstrike when the irons hot and with spni , its sizzling !\nfor more information on this company simply\n( click here )\nforward - looking statements contained in this\nnewsletter are made under the safe harbor provision of the private securities\nlitigation reform act of 1995 . any such statements are subject to risks\nand uncertainties that could cause actual results of events to differ materially\nfrom those anticipated in such forward looking statements . wall street research ,\nquick business solutions , llc\n( wsr - qbs ) . has received three hundred thousand shares from a group of investors .\n( wsr - qbs ) . for the production and distribution of this newsletter .\n( wsr - qbs ) . may own a non - controlling share of spni and reserves the right to sell\ntheir shares at any time without prior notice . this profile is not an offer to\nbuy or sell any securities mentioned herein . while the publisher believes all\nsources of information to be factual and reliable , in no way does it represent\nor guarantee the accuracy thereof , nor the statements made herein and have made\nno independent verification of the facts , assumptions and estimates contained in\nthis newsletter . the user assumes all risk as to the accuracy and the use of\nthis document . always consult a professional investment advisor before making\nany purchase . for further details concerning risks and uncertainties , please\nrequest additional information directly from the company featured above or the\nsec filings of the company including the companys most recent annual and\nquarterly reports .\nqbs 23031 sonoita mission viejo , ca 92692 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.709+0000", "entityId": 6073, "properties": {"text": "Subject: give her something to smile about\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud press\nhere\nthen he remembered his manners and bowed low before the king , who\nseemed to him a fine fellow and not a bit stuck up\nthis does not\ninterest me\nhe ' s pretty well and then he walked calmly from the palace\nthe people in the outer room stared at him wonderingly and the officer of\nthe guard saluted the boy respectfully\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.719+0000", "entityId": 6074, "properties": {"text": "Subject: new breed of equity trader\n$ $ $ $ $ $ $ world stock report for tuesday july 05 , 2005 $ $ $ $ $ $ $ $\ngood day to all broker ' s , day trader ' s and investor ' s world stock report\nhas become famous with some great stock picks in the otc , small cap\nmarket ' s ! ! ! ! ! ! ! ! ! ! here at world stock report we work on what we here\nfrom the street . rumor ' s circulating and keeping the focus on the company ' s\nnews . we pick our companies based on there growth potential . we focus on\nstocks that have great potential to move up in price ! ! ! while giving\nyou liquitity .\nour latest pick is cdgt .\nsymbol : cdgt\ncurrent price : $ 3 . 90\nshort term 7 day projection : $ 8 - 9\nwe give it to you again as a gift . this company is doing incredible things .\nthay have cash and have made great strategic aquisitions .\ncurrent price $ 3 . 85 to $ 4 . 00 . word on the sreet is strong buy .\nthis company has dropped big new ' s in the past .\nwho ' s to say they don ' t have another big one .\n* * * * * * * * * * * * * press release * * * * * * * * * * * * * * * * press release * * * * * * * * * * * * * * * * * *\npress release source : china digital media corporation\nchina digital media corporation announces an investment in second television\ndrama - ' xiguan affairs ' hong kong , june 29 / xinhua - prnewswire / - -\nchina digital media corporation ( ' ' digimedia ' ' ) ( otc : cdgt - news ;\notc bulletin board : cdgt - news ) with its subsidiaries ( together the ' ' group ' ' )\nannounced today the group is committed to invest rmb 4 , 680 , 000 for a minority\ninterests in a television drama , ' ' xiguan affairs ' ' , in the peoples republic of\nchina with guangdong runshi movie & music production co . , ltd . ( ' ' runshi ' ' )\nthrough the group ' s affiliated partner - - guangdong huaguang digimedia culture\ndevelopment limited ( ' ' huaguang ' ' ) .\nadvertisement\nxiguan affairs is a 36 - episode classic television drama and which is\nfilmed in guangdong province . the drama is in its post - production stage and\nscheduled for a television debut in the second half of 2005 . the company has\nreached sales agreements with more than half of provincial television\nstations which cover at least half of the 1 . 14 billion tv viewers in china .\nthe company expects the drama will generate profits in 2005 .\nthis is the second project to partner with huaguang and runshi and it has\nalready produced an encouraging result that the response from the market is\nexciting .\nremember the gains from our recent strong buy recommendations . . .\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthesecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements . \" forwardlooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will , \" \" anticipates , \"\n\" estimates , \" \" believes , \" understands \" or that by statements indicating\ncertain actions \" may , \" \" could , \" or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformationto be eliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.724+0000", "entityId": 6075, "properties": {"text": "Subject: very sspecial offr\nhello , welcome to pharmon blaspheme line s numeral hop\n- one of the leading oniine pharmaceuti whether cal shops\nphantasmagoria v\ntercet g\nrencontre al\nl humect l\nl perpetuation a\ndebtor ra mountain cl\ni plenipotentiary sv dissert a\nu trecento m\nandmanyother .\n- save ov vestry er 50 %\n- worldwide misconceive shlpplng\n- total confidentiaii unmarried ty\n- over 5 miiiion customers vitalism in 130 countries\nhave a n viscid ice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.729+0000", "entityId": 6076, "properties": {"text": "Subject: greatly improve your stamina\nthe longz system , both the capsules and the free instructional manual , give\nyou the most effective ways to reach immediate size gains and improve the\nstrength and power of your erections .\n90 % of males were interested in improving their sexual stamina ,\nperformance , and the size of their manhood . are you one of the 90 % ?\ni want to let u guys know that i have seen over 1 inch in length increase\nsince i started taking ur system . the exercises are easy too . i use them\nboth and this is awesome . clancy , spokane\ncheck out the only male enhancement formula with a free dvd\nhttp : / / 7 o . wc . hugevirtuousitems . com / k /\nnot for you , then use link above\nthen he examined his map of europe . i believe i ' ll take a run over to\nparis , he thought\ni must be home again by saturday , to meet the demon , so i ' ll have to make\nevery day count", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.734+0000", "entityId": 6077, "properties": {"text": "Subject: do you smoke ? qrklx\nlookln 4 affordabowl cigarettez ? come chick it out here !\nis mclaughlin that skylarkchamfer or citron maybe fully\nminstrelsy ?\ni dill don ' t v continuum not decoy a binghamton\nspring .\nif upsetting crunch then reimove :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.739+0000", "entityId": 6078, "properties": {"text": "Subject: well , do you need it ?\nhello , welcome to pharmon unfavoured line s lighterage hop\n- one of the leading oniine ph organplayer armaceutical shops\noverhear v\nsquander g\na shortwave l\nfoundation ll\ncalomel la\nr bandar ac insurrectional l\ni squint s matchlock va\nplainness um\nandmanyother .\n- sav cleancut e over 50 %\n- worldwide sh oredressing lpplng\n- total confiden nightmare tiaiity\n- over 5 miiiion customers in pitched 130 countries\nhave a nice day libertine !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.748+0000", "entityId": 6079, "properties": {"text": "Subject: re : mobile scanner 5 inl system for corporate usage ( a range of portable scanners )\ndear sir ,\nwe are pleased to announce the launch of new , unique and patented mobile\n5 inl system from our most wellknown corporate portable products e - shopping\nwebsite for india .\nthis total mobile scanner ' s product range is launched , keeping the\ncorporate usage in the mind that can further help you to strengthen your\nsystem & yes . . . . neeedless to mention it will be equally efficient too .\nour mobile 5 inl total office data management system has following features :\n1 . lightest in weight : just 340 gms\n2 . smallest in size : just 10 cms in length and 3 cms in width\n3 . fastest in speed : 3 pages per minute and 9 biz cards per minute\n4 . highest in resolution : 1200 * 600 dpi\n5 . easiest in installation and operation : most user friendly gui based\nclient interface with drag drop feature\n6 . widest in application : bundled with world no . 1 software packages\nthat can be used for scanning , emailing , preparing presentations , documents\nretrievals , cards retrievals , contact management , data management , pdf\ngenerator , ocr engines and lot more . . .\n6 . unique in technology : pixel by pixel scanning ( not the traditional\nline by line scanning technology )\n7 . patented in technology : only patented range of products in india under\nthis segment\n8 . most appreciated by business magazines world wide\n9 . has sound track record of satisfied clients worldwide\n10 . can scan photos , cheques , legal papers , letters , documents , images , cards and\nthen can further utilized for your required applications with value added\nservices .\n11 . this mobile system has range of four products in total viz\n464 , 2300 , 660 and 800 u\n12 . range starts from rs . 6 , 500 to rs . 11 , 000 / -\nplease click on the following links to have a glance at the photograph of\nour portable mobile scanners ( model wise ) :\nkindly reply to this with expression of your interest in our products\nrange .\nwe will seek your appointment after the receipt of your email of interest\nto put up live demonstration at your office . we wont be charging any cost\ntowards this live demonstration at your office . we are also looking for\ndealers across the country ( india ) .\nwith warm regards\ns / d\nms . deepti sapre\nhead ( customer help - 5 inl mobile systems )\nindia - mumbai hq\n( offices in mumbai , pune , delhi and baroda )\nemail : mobishop @ rediffmail . com\ncell phones : + 919820640281 | + 919820501457", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.754+0000", "entityId": 6080, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\njohnsie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.759+0000", "entityId": 6081, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nhien\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.764+0000", "entityId": 6082, "properties": {"text": "Subject: breathtaking image for your company now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in buildinq a positive visuai imaqe\nof your company by creatinq an outstanding logo , presentabie stationery\nitems and professionai website . these marketing tools wiii siqnificantly\ncontributeto success of your business . take a look at our work samples , hot deai packaqes and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.768+0000", "entityId": 6083, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand thesepowerfui marketinq\ntools wili bring a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.773+0000", "entityId": 6084, "properties": {"text": "Subject: medzz services\nhello , welcome to ph brevet armonline s weatherforecast hop\n- one of the leading oniine p underfoot harmaceutical shops\nwashday v\ndreadnought g\na plucky l\nleniency ll\nl coronach a\nr directorate a exception cl\ni essential s costless va\nsynthetic um\nandmanyother .\n- save ove valuta r 50 %\n- worldwide shlppl sorely ng\n- total confident chieftain iaiity\n- over 5 miiiion customers carminative in 130 countries\nhave lettish a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.778+0000", "entityId": 6085, "properties": {"text": "Subject: there\nhello visioson @ hpp . za . net ,\na friend showed me a way out to get p . p . v . on tv and yet not pay anything ?\nha ha , yea , right , i mean it .\nhit below and check it yourself :\nhttp : / / balkis . look 4 express . info\neasy to install .\nto get off , just add slash r to the above address .\n14 . ninety six bottles of beer , three a ' s , three b ' s , one c , two d ' s , twenty eight e ' s , seven f ' s , three g ' s , eight h ' s , thirteen i ' s , four l ' s , sixteen n ' s , nine o ' s , nine r ' s , twenty six s ' s , twenty t ' s , four u ' s , four v ' s , six w ' s , five x ' s , and five y ' s on the wall . .\ni could go on and on , but i won ' t . we have many programs the children love . but i would give them all up to keep my boring noun program . i thank the parent daily for her insight . .\nget back to you later ,\ngordon sousa", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.782+0000", "entityId": 6086, "properties": {"text": "Subject: naturally irresistible your corporate identity\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwheiming ; but a good\ncatchy logo , styllsh statlonery and outstandlng webslte\nwili make the task much easier .\nwe do not promise that having ordered a ioqo your\ncompany will automatically become a worid leader : it isquite ciear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.787+0000", "entityId": 6087, "properties": {"text": "Subject: natural remedies for sexual health\nyou have not tried cialis yet ?\nconservatives are not necessarily stupid , but most stupid people are conservatives .\ntime engraves our faces with all the tears we have not shed .\nnothing great in the world has been accomplished without passion .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.791+0000", "entityId": 6088, "properties": {"text": "Subject: give your partner more pleasure\nthe longz system , both the capsules and the free instructional manual , give\nyou the most effective ways to reach immediate size gains and improve the\nstrength and power of your erections .\n90 % of males were interested in improving their sexual stamina ,\nperformance , and the size of their manhood . are you one of the 90 % ?\nmy name is charles , and i wanted to thank you for your personal attention\n( and answers to my extra questions ) , your support team is exceptional and\nmade me feel like a real valued customer . keep it up and thanks again !\n- charles , ontario\ncheck out the only male enhancement formula with a free dvd\nhttp : / / tgo . t . . com / k /\npo box in link above and you can say no thank you for future\nunder ordinary circumstances the stern features and flashing black eyes of\nthis redoubtable warrior would have struck a chill of fear to the boy ' s\nheart ; but now under the influence of the crushing misfortunes he had\nexperienced , he was able to gaze with indifference upon the terrible visage\nof the desert chief . the tatar seemed not to consider rob an enemy\ninstead , he looked upon him as an ally , since the turks had bound and\nrobbed him", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.796+0000", "entityId": 6089, "properties": {"text": "Subject: more then 70 great pornstars sex movles ! dowlnoad all our collection ! - x 646\ncum witness the most extreme sexual achievements ever to be found on the net ! we have tons of exclusive never before seen pics and videos of your fav pornstars doing exactly what you dream to see !\ndo you think you have what it takes to beat one of our records ? we welcome all member entries , cum see if you have what it takes to earn a spot in our record library !\nhttp : / / uxm 5 . info . lediesnight . biz /\n- - - - - - - - - - - - - -\ncheckbook dahomey canaveral belgrade\naffiliate carven armillaria baneberry\nbrown brasilia collier demarcate", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.801+0000", "entityId": 6090, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nrosita\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.805+0000", "entityId": 6091, "properties": {"text": "Subject: wallstreet pulse\ngood day to all broker ' s , day trader ' s and investor ' s world s . tock report\nhas become famous with some great stoc ? k picks in the otc , small cap\nmarket ' s ! ! ! ! ! ! ! ! ! ! here at world stoc ? k report we work on what we here\nfrom the street . rumor ' s circulating and keeping the focus on the company ' s\nnews . we pick our companies based on there growth potential . we focus on\nstoc ? ks that have great potential to move up in price ! ! ! while giving\nyou liquitity .\nour latest pick is cdgt .\nsy , mbol : cdgt\ncurrent price : $ 3 . 90\nshort term 7 day projection : $ 8 - 9\nwe give it to you again as a gift . this company is doing incredible things .\nthay have cash and have made great strategic aquisitions .\ncurrent price $ 3 . 85 to $ 4 . 00 . word on the sreet is strong buy .\nthis company has dropped big new ' s in the past .\nwho ' s to say they don ' t have another big one .\n* * * * * * * * * * * * * press release * * * * * * * * * * * * * * * * press release * * * * * * * * * * * * * * * * * *\npress release source : china digital media corporation\nchina digital media corporation announces an investment in second television\ndrama - ' xiguan affairs ' hong kong , june 29 / xinhua - prnewswire / - -\nchina digital media corporation ( ' ' digimedia ' ' ) ( otc : cdgt - news ;\notc bulletin board : cdgt - news ) with its subsidiaries ( together the ' ' group ' ' )\nannounced today the group is committed to invest rmb 4 , 680 , 000 for a minority\ninterests in a television drama , ' ' xiguan affairs ' ' , in the peoples republic of\nchina with guangdong runshi movie & music production co . , ltd . ( ' ' runshi ' ' )\nthrough the group ' s affiliated partner - - guangdong huaguang digimedia culture\ndevelopment limited ( ' ' huaguang ' ' ) .\nadvertisement\nxiguan affairs is a 36 - episode classic television drama and which is\nfilmed in guangdong province . the drama is in its post - production stage and\nscheduled for a television debut in the second half of 2005 . the company has\nreached sales agreements with more than half of provincial television\nstations which cover at least half of the 1 . 14 billion tv viewers in china .\nthe company expects the drama will generate profits in 2005 .\nthis is the second project to partner with huaguang and runshi and it has\nalready produced an encouraging result that the response from the market is\nexciting .\nremember the gains from our recent st ? rong bu ? y recommendation ? s . . .\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthesecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements . \" forwardlooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will , \" \" anticipates , \"\n\" estimates , \" \" believes , \" understands \" or that by statements indicating\ncertain actions \" may , \" \" could , \" or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stoc ? ks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stoc ? ks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstoc ? k . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stoc ? k they will sell at anytime without\nnotice . this could have a negative impact on the price of the stoc ? k , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformationto be eliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.810+0000", "entityId": 6092, "properties": {"text": "Subject: for your information\ndear homeowner ,\nafter completing the review we are pleased to offer you the following ,\nyour current mortgage qualifies you for more than a 3 % lower rate !\n! ! u . s mortgage rates have never been lower ! ! !\nmillions of americans have re - financed this month alone !\nso why not you ?\ngo here to make that change .\nif you prefer to be left out of this amazing offer go here .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.819+0000", "entityId": 6093, "properties": {"text": "Subject: re [ 4 ] :\nterra investigate blackouts i wonder what if . . . paint shopthere ' s also another one tupac sharuk", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.825+0000", "entityId": 6094, "properties": {"text": "Subject: cash : $ 48463\ndear homeowner , you have been pre - approved for a $ 200 , 000 loan at a low fixed rate . this offer is being extended to you unconditionally and your credit is in no way a factor . to take advantage of this limited time opportunity , we ask you to visit our website and completethe post approval form . http : / / www . easy - instant - savings . com / i / lzevaw 5 kzxgvamvlenkvnmo 3 dhjommto\nclair spearsua logan financial group - - - - - - - - - - - - - - - - - - - - - - 7 : meijer malory bourahla krabicka omahahttp : / / www . easy - instant - savings . com / rem . php . . . not interested", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.829+0000", "entityId": 6095, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\narmandina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.835+0000", "entityId": 6096, "properties": {"text": "Subject: best software prices .\nbig range of all types of downloadable software .\nlife is consciousness .\nif you stay in beverly hills too long you become a mercedes .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.844+0000", "entityId": 6097, "properties": {"text": "Subject: loose your fat in 9 days\nare you\noverweight ?\nloose 9 pounds every 11\ndays !\ndo you want to loose weight fast\nthe natural way ?\nthe idiot proof diet\nwill help you shed 9 pounds every 11 days , take it for a free test drive\nat the link below :\nclick here for the\nidiot proof diet\nw a r n i n g :\nif\nyou notice that you are loosing too much weight to quickly , then you\nshould stop dieting for a few days if you loose more than 1 pound per\nday you should slow down a little .\nclick here for the\nidiot proof diet\naffid : zoolant 44561\ngetresponse marketing p . 0 box 1451 waterfall , south africa 3652 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.852+0000", "entityId": 6098, "properties": {"text": "Subject: sshs . . get low cost software cds or download !\nfind , compare and buy business and productivity software and other computer software products .\nhttp : / / uga . 07 mx 3 hitfsopxj 0 . socagefh . com\nintellectual passion dries out sensuality .\nonly actions give life strength ; only moderation gives it a charm .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.858+0000", "entityId": 6099, "properties": {"text": "Subject: do i require an attorney to use this system and clean up my record\ncalls about late payments are discontinued dead in their tracks .\nwe have pioneered an advanced system of proven strategies\nthat will get the creditors and debt collectors off your back for good\nour debt termination program has legally stopped millions of dollars worth\nof debt from being collected .\ncheck out our elimination program here\nhttp : / / bxr . km . classypeopleitems . com / g 8 /\npo box in link above and you can say no thank you for future\nday was now breaking , and several of the tatars appeared and examined the\nbody of the turk with grunts of surprise , for there was no mark upon him to\nshow how he had been slain . supposing him to be dead , they tossed him aside\nand forgot all about him\nrob had secured his ruby ring again , and going to the chief ' s tent he\nshowed the jewel to the guard and was at once admitted", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.862+0000", "entityId": 6100, "properties": {"text": "Subject: * * your account may suspend * *\ndear paypal member ,\nyou have received this email as part of a verified paypal campaign meant to\nincrease security for your credit card against online credit card fraud .\nverified paypal has detected that you have been using this email address for\nonline purchases and in order to protect yourself against online credit card\nfraud we would like to introduce you to a new system that will protect you\nagainst frauds .\nyou can associate your email address to your credit card and receive a\npassword that you will use for any online purchase . also you will be notified\nby verified paypal when an online purchase is made .\nfollow the below and go to verified paypal . you can join the verified paypal\nsystem or learn more about this .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.867+0000", "entityId": 6101, "properties": {"text": "Subject: would you like a $ 250 gas card ?\ndon ' t let the current high price of gas get to you .\nsimply enter your zipcode to see if this promotion is available in your area .\nqkppfiui", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.871+0000", "entityId": 6102, "properties": {"text": "Subject: would you like a $ 250 gas card ?\ndon ' t let the current high price of gas get to you .\nsimply enter your zipcode to see if this promotion is available in your area .\nubycvski", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.876+0000", "entityId": 6103, "properties": {"text": "Subject: you don _ t know how to get into search engine results ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\nonline otherwise it wiil be invisibie virtuaiiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in places\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in multiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\nbeatrizbass _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.880+0000", "entityId": 6104, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , ciaiis , softtabs and many other iove enhancers all in one !\noperative support , fast shipping , secure payment processing and complete confidentiality !\nclick here to find your verlfied by bbb and approved by visa iove pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.885+0000", "entityId": 6105, "properties": {"text": "Subject: oreo cookies nationwide survey - win a years supply of oreos .\noreo ' s survey - complimentary $ 50\ngift card or a one year supply of oreo cookies .\nupwhyvkg", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.891+0000", "entityId": 6106, "properties": {"text": "Subject: = ? iso - 8859 - 1 ? q ? clausura _ curso _ ni = dlos _ y _ adolescentes . ? =\n5 de julio 2005\nlic monica ramos rodriguez .\njefa de noticias de tv 9 canal de oaxaca\nla television de los oaxaque?os .\nestimada licenciada :\nreciba un cordial saludo y al mismo tiempo mi solicitud para que un reportero y un camarografo nos haga el favor de tomar la rese?a de la clauura del curso de \" prevencion de adicciones \" para menores oaxaque?os .\nque se imparti? del 4 al 8 de julio del 2005 de 10 : 00 al 4 : 00 horas en coordinacion con el centro de integracion juvenil a . c . de oaxaca .\neste curso cont? con la participacion de ni?os oaxaque?os en edad de primaria , la instructora fue la lic en trabajo social victoria ortega .\ndicha clausura se realizar? en el cij ubicado en marcos perez 111 a las 14 horas , con la entrega de las constancias de participacion por parte del cij y telefonos de mexico s . a . de c . v .\nmucho le agradecer? nos d? su amable confirmacion por este medio .\nreciba un cordial saludo .\nlae . ada beatriz lopez y lopez\nh colegio militar 1013\ncol reforma oaxaca\noax\nc . p . 68050\nahora infinitum te da doble de velocidad , mismo precio . baja fotos , m?sica , videos y todo lo que quieras al doble de velocidad desde $ 349 al mes\nm?s i . v . a .\n? qu? esperas ?\nacel?rate al doble y con?ctate http : / / www . hits . telmex . com / app / ad _ mgr / ad _ mgrn . jsp ? ad = 371\nas?m @ te a telmex . com http : / / www . hits . telmex . com / app / ad _ mgr / ad _ mgrn . jsp ? ad = 195\nconfidentiality notice : this e - mail message including attachments , if any , is intended only for the person or entity to which it is addressed and\nmay contain confidential and / or privileged material . any review , use , disclosure or distribution of such confidential information without the written\nauthorization of tel?fonos de m?xico is prohibited . if you are not the intended recipient , please contact the sender by reply e - mail and destroy all copies\nof the original message . by receiving this e - mail you acknowledge that any breach by you and / or your representatives of the above provisions may\nentitle tel?fonos de m?xico to seek for damages .\naviso de confidencialidad : este correo electr?nico , incluyendo en su caso , los archivos adjuntos al mismo , pueden contener informaci?n de\ncar?cter confidencial y / o privilegiada , y se env?an a la atenci?n ?nica y exclusivamente de la persona y / o entidad a quien va dirigido . la copia ,\nrevisi?n , uso , revelaci?n y / o distribuci?n de dicha informaci?n confidencial sin la autorizaci?n por escrito de tel?fonos de m?xico est? prohibida . si\nusted no es el destinatario a quien se dirige el presente correo , favor de contactar al remitente respondiendo al presente correo y eliminar el correo\noriginal incluyendo sus archivos , as? como cualesquiera copia del mismo . mediante la recepci?n del presente correo usted reconoce y acepta que en\ncaso de incumplimiento de su parte y / o de sus representantes a los t?rminos antes mencionados , tel?fonos de m?xico tendr? derecho a los da?os y\nperjuicios que esto le cause .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.896+0000", "entityId": 6107, "properties": {"text": "Subject: perfect logo charset = koi 8 - r \" >\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of loqos ,\nstationery and web - sites . under our careful hand thesepowerful marketing\ntools will brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . ciick here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.901+0000", "entityId": 6108, "properties": {"text": "Subject: you can win an extreme bedroom makeover valued at 50 k !\nwin an extreme bedroom makeover .\nwin the chance to completely remodel with brand new furnishings\nand top accessories !\nget products from sony ( r ) , panasonic ( r ) , samsung ( r ) ,\nmacy ' s ( r ) , and furniture . com ( r )\nbonus - enter today and win a classic master bath or create the\ncustom bath oasis of your dreams . . . select tile , plumbing fixtures ,\ncabinets , countertops , and lighting . top it off with a luxury shower\ntower or whirlpool - or both !\njust to make sure your makeover is complete . . .\nwe ' re throwing in a $ 5 k shopping spree at sears ( r ) !\nymjscytxnvpf", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.905+0000", "entityId": 6109, "properties": {"text": "Subject: we are one of the world leading legal sources for male impotence treatments\nyour on - line guide in pills world .\nblessed are those who can give without remembering , and take without forgetting .\nbeauty in things exist in the mind which contemplates them .\nit is pleasant at times to play the madman .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.911+0000", "entityId": 6110, "properties": {"text": "Subject: expert web site analysis - at no charge\ndo you think that your web site should be producing more sales than it currently does ? studies indicate that most first - time visitors spend only 10 seconds on a site before deciding if it offers anything of value to them . seventy - five ( 75 ) percent of on line shoppers abandon their shopping cart . these facts highlight the importance of your web site ' s ability to quickly and effectively communicate your business offering , and to subsequently take an on - line shopper through a simple and clear purchasing process . having a web site is just the first step in establishing your internet business . the second step is to get people directed to your web site . the last , and most important , step is to sell your products and services through your site .\nthrough july 31 , 2005 , expedite media group , inc . is offering a no - charge analysis of your web site . our professionals will review your web site , and provide you an effectiveness appraisal based on industry design standards , along with specific recommendations aimed at optimizing the shopping experience , and , most importantly , raising the sales productivity of your site .\nat expedite media group , inc . , we believe that affordable and quality access to the power of the internet should be available to everyone , not just large enterprises . with 600 + websites designed , launched , and marketed , expedite media group takes pride in providing internet solutions that translate into success for its clients .\ntake the first step to increase your on line sales by calling us at ( 630 ) 876 - 8066 , or clicking here to learn more about expedite media group ' s web design services . when talking to one of our representatives , or submitting a contact us form from our web site , please refer to this limited - time offer .\nexpedite 245 west roosevelt rd . building 15 , ste . 109 west chicago , il 60185 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.916+0000", "entityId": 6111, "properties": {"text": "Subject: a heartwarmer : just imagine\n~ welcome to heartwarmers ~\nhttp : / / www . heartwarmers . com\nthe best thing to happen to mornings since the sun !\nyour morning thought for the day :\nretirement at 65 is ridiculous .\nwhen i was 65 i still had pimples .\n- - george burns\nit ' s summer vacation time and parents will soon be hearing from\ntheir kids that they ' re bored .\none of the biggest regrets we hear from the older generation , is\nthat kids lack the playful imagination that was common a generation\nor two ago .\nback in the \" olden days \" , kids knew how to entertain themselves\nwith surprisingly little . there was no such thing as playstation .\nkids ran outside to play kick - the - can in a game that was shockingly\nnot organized by adults . they actually did it themselves .\ntoday , mike shares some thoughts about kids and modern\nimagination - - or lack thereof . . .\nwhat do you think ?\nsupport our sponsors\nthey keep our service priceless .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nhundreds of our readers are saving a small fortune . . .\nheartwarmer , petwarmer and kidwarmer subscribers are discovering the\ntremendous benefits of using tel 3 advantage to make long distance and\ninternational calls - - some saving 90 % ! get started now by calling :\n800 - 330 - 6897 . when asked for your \" activation code \" say : 311 - 673 .\nor you can click here to get complete details and sign up online :\nhttp : / / www . pocketwarmers . com / c\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nget free software for your computer\nhundreds of titles to choose from . you only pay postage .\nin fact , order 4 disks and get free postage for the 5 th .\nhttp : / / www . pocketwarmers . com / d\njust imagine\nby michael t . smith\nwhen i married ginny , i gained a new son , daughter and four\ngrandsons . i became an instant grandpa .\nover the july 4 th holiday , i got to meet my new daughter and her\nthree boys for the first time . it took a day for my new grandsons to\nwarm up to me .\nthe first day they stared at me , perhaps wondering what they\nwere supposed to do with this man , who they were told is \" grandpa . \"\ni waited patiently . i knew boys like to play . they ' d come to me in\ntheir own time .\non day two , the oldest two were doing summersaults over my lap .\nthe youngest , ben , took a little longer , but yesterday he raced me\nacross the yard thirty times and won every time .\nthe weekend brought back memories of my own childhood . we had\nsuch imaginations . in our minds , a tree was a tower to spot\napproaching bad guys , a big rock became a mountain , a fallen log a\nspace ship headed to the stars . we had toys , but we had to use our\nimagination , not like the new toys i see my grandkids with .\nour toys didn ' t talk , and if they did , you pulled a string to\nmake it work . we had blocks to build , crayons to create , trucks and\ncars to push . they were simple toys that required imagination . i\nthought about the toys in my garage , the ones i saved , when my\nchildren outgrew them . they were simple and needed their imagination\nto work . mr . potato head allowed them to learn parts of the body and\ngiggle at the funny face with an ear where its mouth should have been .\ni still have an old plastic phone . it has a dial to turn , a\nbell that rings when you push a button , and that ' s it . it doesn ' t\ntalk , squawk , beep or move around the room . it ' s simple and was used\nwhen they played house , nurse , doctor , and secretary .\ni have a toy doctor ' s bag , with all the plastic doctor ' s tools .\ni remember all the broken bones , cuts , bangs , scratches and aches my\ndaughter repaired as i lay in her office moaning .\nmost toys today do it all . we don ' t need imagination - - it\ncomes in a box . video games that take us into another world or\nreality , talking toys , with vocabularies better than most people ,\ncomputerized toys to teach the alphabet . kids sit and have\nimagination brought to them . the teaching toys are great , but\nchildren tire of them - - it ' s like being in school .\nwhen my son was young and tired of his toys , he would come to me\nand say , \" dad , i ' m bored . \"\n\" go find something to do , \" i ' d reply .\n\" i don ' t know what to do . \"\n\" go outside and find a friend . \"\n\" naaa ! i don ' t want to do that . \"\n\" use your imagination . \"\n\" huh ? \" he asked .\n\" well , when i was young . . . \" you know the routine .\nsports is the same . we ' re entertained for hours watching\nsomeone else have fun doing what they ' re good at . wouldn ' t it be\nbetter to be playing yourself ? if we don ' t like the sports available\nto watch , we create new ones . it doesn ' t matter what , people will\npay to see it , because they need to be entertained . i haven ' t heard\nof world championship worm digging , but if someone offered a large\ncash price , people would buy tickets to scream at the contestants .\ni worry . are we becoming a society that needs outside influence\nto have fun ?\ni think i ' ll go climb a tree .\nmaybe there ' s a pirate ship on the horizon or someone is\nattacking my castle .\njust imagine .\n- - michael t . smith\nmichael lives in new jersey with his new wife and son .\nfrom our mailbag :\n( in response to last week ' s story , cinderella men )\ndear heartwarmers :\nlast week ' s heartwarming story opened a door to memory lane . i\ntoo , was born in the 30 s and felt some of the poverty of that time .\ni remember my mom and dad who never complained of the fatigue that\nwas so ever present in their lives . we were very fortunate in as\nmuch as we always had plenty of food and warm shelter . we had a\ngarden and salvaged every edible product available - - even certain\n\" weeds \" that were quite tasty after mother got all the spices in\nthem . i had several beautiful dresses made from feed sacks that i\nwore with pride ! we were very poor , but so rich indeed because we\nhad love and the knowledge that god was upper most in our lives , and\nit taught us lessons that had never been printed in the books . i\ndeeply appreciate those lessons of long ago because they have taught\nme how to handle the tough times we have encountered in this life of\nprosperity and promise . thank you again for your lovely story . god\nbless .\n- -\ndo you enjoy heartwarmers ? maybe your friends would too . they can\njoin for free by sending an email to : join @ heartwarmers . com\nthank you , heartwarmer angels !\na big heartfelt thank you to our heartwarmer angels .\njoan kiefner , el dorado hills , california\njerry plantz , lees summit , missouri\nila george , schertz , texas\nronald & shirley tansill , atlanta , georgia\ndon goldschen , springfield , virginia\nchip robinson , cambridge , massachusetts\nkathleen altemus , avonmore , pennsylvania\nkeith & kay hill , camarillo , california\nphyllis reasoner , adrian , michigan\nbernadine brooks , winters , california\ndavid moneyhon , spring , texas\nalbert blight , windsor , ontario\nlinda king , portland , oregon\njudy hord , phoenix , arizona\nsally bible , lake oswego , oregon\npam peyron , vale , oregon\nrayna peyron , la grande , oregon\njudith hurley , vail , arizona\ncatherine waygood , east hampton , new york\nethel halpin , ridge new york\nlizbeth crews , mcallen , texas\njulie casos , west jordan , utah\nshirley johnson , ft . oglethorpe , georgia\ndavid johnson , caseyville , illinois\nelaine olson , santa fe , new mexico\nsue mullennix , ft . wayne , indiana\ndeborah shearer , dundalk , maryland\ntwila escalante , grand cayman\nlois scott , sandpoint , idaho\nnancy wolf , bay shore , new york\nfrances arellano , roland , iowa\narlene millman , huntington , new york\nnancy eckerson , akron , new york\ndavid price , tempe , arizona\nmarilyn myers , anderson , indiana\nlinda barfield , mccoll , south carolina\nvickie kellogg , durham , north carolina\nvicki arcado , sandy , utah\ncharles & victoria trenkle , palm desert , ca\ncheri nicodemus , baltimore , maryland\ndebra cole , balko , oklahoma\nkarl schmidt , pitt meadows , british columbia\nlisa marie coffey , oak park , california\njean carlson , jamestown , north dakota\nnannette gaylord , new bern , north carolina\njeanne escher - pickel , irving , texas\nlorena copeland , greensboro , north carolina\nleta sousa , montgomery , alabama\nal batt , hartland , minnesota\nbeverly salemme , randolph , massachusetts\nbarbara wolf , greeley , colorado\njoyce courson , perryton , texas\ndavid johnson , caseybille , illinois\ndonna diciaccio , lynn , massachusetts\nnancee donovan , concord , new hampshire\nmarilyn myers , anderson , indiana\nann berger , colville , washington\nkathleen doldan , grand island , new york\ndaria takach , garfield , new jersey\nterri goggin , havertown , pennsylvania\nsuzanne shuster , south riding , virginia\ndick & doris miller , central point , oregon\ndavid johnson , caseyville , illinois\nrosemary blackman , tulare , california\nmary munarin , scottsdale , arizona\ntabitha jones , middlesboro , kentucky\nbarbara lincks , gardena , california\nmary horbal , shelton , connecticut\nleo perry , st . paul , minnesota\nyou can become an \" angel \" member with your contribution of $ 25\nor more . your name will be proudly listed when you join . help our\nefforts to spread positive and uplifting messages around the planet .\nsend to : heartwarmers , po box 527 , lewiston , ny 14092 . be sure to\ninclude your name and town .\nif you know someone who is seeking help - - for anything , including\nanger , smoking , bad habits , lack of motivation , etc - - let them know\nthey can begin taking control of their lives today . have them check\nthis website out : http : / / www . hypnosisdownloads . com / ? 739\nwe put spaces before and after the @ sign in the email addresses to\nprevent worms , viruses , and robots from harvesting them . if you\nwould like to correspond , just remove the spaces .\nchanging your email address soon ? if you are going to change your\nemail address and want to continue receiving your heartwarmers , be\nsure to let us know . it ' s easy to change . send a blank email from\nyour old email address to : remove @ heartwarmers . com then , send an\nemail from your new email address to : join @ heartwarmers . com\ngrace says : when diane ' s 2 - year - old grandson oggie arrived , she\npicked him up for a hug . \" mmm , \" diane said , \" you smell good . what\nsmells so good ? \" oggie replied , \" screen saver . \" ( he meant\nsunscreen ! )\nyou can get kidwarmers for free by sending an email to : join @ kidwarmers . com\nto join ( it ' s free ! ) , send an email to :\njoin @ heartwarmers . com\nto discontinue , send an email to :\nremove @ heartwarmers . com\nhomepage , ad info and archives :\nhttp : / / www . heartwarmers . com\nyour own free heartwarmers webpage :\nhttp : / / www . heartwarmers . com / freepage /\ndirectory of members ' webpages :\nhttp : / / www . heartwarmers 4 u . com / members /\n70 percent off new inkjet cartridges\nhttp : / / www . heartwarmers 4 u . com / b\nnote : nothing here may be reproduced or published in\nany way without the express permission of the\nindividual authors and / or copyright owners .\nto unsubscribe , click on the following web page .\nyour membership is listed as : projecthoneypot @ projecthoneypot . org", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.921+0000", "entityId": 6112, "properties": {"text": "Subject: will you be the next one selected for his public challenge ?\nmy simple , yet proven strategies for generating multiple streams of unlimited income work - now let me take you by the hand and prove it ! . . . \"\n\" on live tv i promised the world i would make $ 24 , 000 in 24 hours , and . . . i failed - instead i ' cracked the code ' and made $ 94 , 532 . 44 in 24 hours . \"\ni want you to look over my shoulder , so to speak and watch how i do it . . . in fact , even get into my mind as i prepare to issue you the challenge of a lifetime .\nrobert g . allen\n\" time and time again , i ' m referred to as ' america ' s # 1 millionaire maker ' that means one thing : i take ordinary people\n( some of them right out of the unemployment line and some right out of regis philbin ' s studio audience ) and show them exactly what to do to create multiple streams of \" major \" income - and then they do it ! \"\n\" and with the release of my new book , ' multiple streams of income ' i ' m on the prowl again -\nlooking for a small , select group of ordinary people who want my help in creating instant wealth like i have for countless others ! if you qualify , there ' s only one small , reasonable catch :\n\" i will use your new cash flow success story in my upcoming promotions . so if you can live with that ' catch ' - then you must stop everything you ' re doing and read the rest of this letter right now \"\n( important :\nyou must respond to this invitation within the next 60 minutes .\ndue to the time - sensitive nature of this opportunity , we must\nrelease your reserved slot to someone else if you do not respond\nwithin the allotted time . )\ninvitation clock count - down\nyou must r . s . v . p . within minutes\ndear friend seeking financial independence and personal freedom ,\nhi . my names robert allen . i ' m the author of two of the best selling\nfinancial books in history ; both # 1 new york times best sellers :\nnothing down\ncreating wealth\nmy books have sold over 2 . 5 million copies , over 150 , 000 people have\nattended my wealth seminars , and i ' ve accepted challenges by the press and have proven time\nand again that my money making strategies work .\nin fact , recently i was challenged again on national tv . it was in front of a live\naudience . i was challenged to take someone from regis philbins studio audience and\nteach them my wealth building strategies and guess what ?\njust 90 days after following my systems ,\npat watson was $ 20 , 000 wealthier !\nlisten , you ' ve heard all the get rich now claims and you ' re sick of\nseeing them ! the fact is most of those\npeople who claim to know how you can make money haven ' t made much money\nthemselves let alone taught others how to do it !\nthe difference between them and me is that i ' ve proven my\nstrategies time and time again in the national limelight and my systems truly\nwork in fact , i ' ve been dubbed america ' s # 1 millionaire maker .\nright now , america and i need you for my upcoming nationwide tour to share your story of upcoming success and wealth to those who need hope - all across america .\nlet me tell you about a few of my \" money challenges \" . . . this is where i put my money where my mouth is :\ni was also challenged by the los angeles times :\nyou might remember when the los angeles times challenged me to buy real\nestate with nothing down . with a reporter by my side , $ 100 for living expenses ,\nand armed only with my knowledge ; i purchased 7 properties worth $ 772 , 000 , all\nin 57 hours .\ni told the mayor of st louis missouri ( the show me state ) :\nsend me to any unemployment line . let me select someone who is broke , out of\nwork , discouraged . let me teach him in\ntwo days time the secrets of wealth , and in 90 days he ' ll be back on his feet ,\nwith $ 5 , 000 cash in the bank , never to set foot in an employment line again .\ni selected a young couple from the unemployment lines of st . louis , missouri .\nninety days later they earned $ 5 , 000 using one of my techniques , and . . . .\nwithin 12 months they had earned over $ 100 k !\nmy proudest moments are when i coach starving millionaires ( people\nwho should be millionaires but aren ' t ) on wealth building strategies and see\nthem achieve extraordinary results , again and again !\ni ' ve done these same challenges in other major cities - washington , d . c . ,\nmiami , boston , san diego , and new york - all with similar results !\nthis brings me to my next challenge in which i took all of the hype out\nof the high - powered profit potential of the internet , and decided to make it a\nreality for my students . i said :\nsit me at any key board of any computer in the world with internet\naccess , and i will in 24 hours , earn at least $ 24 , 000 cash !\ni got myself into the life or death mindset and i went to work\ni started my internet challenge at exactly at 12 : 38 pm in front of live\ntelevision , i held my breath , and turned my system on and signed on to the\ninternet\nin 6 hours and 11 minutes i had generated $ 46 , 684 . 95\nthen i went to sleep . . . and when i woke up the next morning and checked the computer -\n( with cameras rolling ) :\nthe total was now $ 78 , 827 . 44\nthis was exciting because i knew i still had four hours left !\nthat afternoon , 24 hours after the challenge had begun . . .\nthe total had grown to $ 94 , 532 . 44\nin a mere 24 hours !\nwhy do i tell you all of this ?\nwell its certainly not to brag but its to prove that\ni practice what i teach ! and since i ' m ready to announce my next\nchallenge , i thought you ' d like to hear my success story - and how i can help you regardless of where you are\nin your financial life .\nso heres my newest challenge :\nsend me a group of people who want to become financially independent .\nlet me teach them my proven , wealth building\nstrategies . and in 90 days , they will have developed multiple streams of\nincome . eventually these streams of\nincome may give them the freedom to do what ever they want for the rest of\ntheir lives .\nthats my newest challenge and i want you to be a part of it .\nyou have everything it\ntakes to break the mold of an average income earner but you just need to\ndecide to do it !\nlisten , i know the reason you ' re still reading this letter is\nbecause you believe there still is hope theres still a chance a glimmer\nof hope that you can be a millionaire .\nits hard to leave your comfort zone . but you can do it and i will help you .\nbut first , let me tell you about a few people who ' ve had the courage to\nfollow their instinct , break out of their comfort zones , and follow my advice :\nrobert , my life was never the same again\nhere ' s the incredible news : only one year after using your strategies ,\n( coincidentally our twelfth wedding anniversary , ) we became millionaires ,\nyes , a million dollars in equity ! wow !\ndepending on what time frame you measure from , that ' s either\n' incredibly fast ' or ' miraculously fast ' ! six months from picking up your book , four - plus months from becoming\nprotgs , two months and nine days after quitting my job !\nthat takes my breath away ! . . . this letter\nstands as testimony to your accomplishments . . . robert , thank\nyou , thank you , thank you !\n- - karen n . b . , nevada\n\" in the last 2 months we have made nearly\n$ 250 , 000 using the robert allen internet techniques . \"\n- - olie v . andrei k . , ontario\njust do what you love and the money will follow '\nin fields of dreams : ' just build it , and they will\ncome ' wish me luck the rest of the way . haven ' t i told you what the sale price\nof this building was ? it was $ 57 , 000 ! i ' m really excited and am on my way finally !\nthank you for all your encouragement .\n- - eugene w . , california\n\" in my first - ever deal i ' m acquiring a $ 5 . 7 million 91 unit apartment building for $ 4 . 25 million using none of my own money . \"\n- - greg w . , new york\n( remember : i will always be up front and honest with you . the amount\nof success you may have will depend upon important key variables . . .\nthese experiences are not typical . you may not be as successful as these testimonials shown . )\nas your mentor , let me tell you about the first secret to building\nwealth : having multiple streams of income flowing into your bank account .\nwould it change your life completely if , per chance , you were\nto lose your major source of income today think about that !\nwhat would you do if you lost your sole source of income ! ?\ni will teach you how to develop other streams of income , so you can protect yourself from ever having to deal with\nthis imaginary scenario .\nheres some of what you ' ll learn :\n1 . creative real estate investing : 76 % of\nall millionaires started their fortunes in real estate .\ni ' ve sold more real estate books than any other author of all time .\n2 . information marketing : have you ever\nhad a million - dollar idea , but never acted on it ?\nlearn to sell your ideas for royalties the hottest millionaire - making trend .\n3 . stock investing : how do the wealthy\ntake advantage of the amateur investors in the stock market ? learn to make\nconsistent money regardless of what the stock market does .\n4 . internet enterprises : how i made\n$ 94 , 000 live on tv in 24 hours ! what did i do that was different ?\nthese are proven income - generating avenues that\nbuild wealth . wealth comes from\nunderstanding the power of multiple streams of cash flow . . . on cruise control !\nmy official invitation to you\nright here right now i ' m inviting you to experience my member ' s only training in my new multiple\nstreams of income downloadable training course . in this brand new digital course ,\ni ' ll be teaching you all of my proven , successful and profitable wealth secrets .\nthese strategies and techniques are proven to work for everyday people\nliving in the united states , her territories , and canada .\ninternational applicants are not being accepted at this time .\nhere is just a sample of what you will learn in my new course about\nmultiple streams of income :\nestablishing your personal wealth building foundation .\nhow to earn $ 100 , 000 to $ 250 , 000 a year for life .\nhow to retire early .\nhow to grow your own money tree .\nprofiting from 5 massive trends that will create many millionaires in the next century .\nbuilding a small or not so small fortune on the internet :\ndouble your internet income and work less hours .\nsecret strategies for getting people to your website .\nthe easiest products to sell on the internet .\nhow to sell products on the internet without buying or shipping them .\nhow the internet can pay for your retirement .\ndeveloping multiple streams of income :\nhow to start your very own multi - million dollar business from your kitchen table .\n6 powerful businesses you can start for less than a thousand dollars .\ncreate a money making machine that runs 24 hours a day , 365 days a year without an office or employees .\nhow to create streams of income that , once established , require little or none of your personal attention .\nthe seven essential secrets for finding the most powerful home - based business .\nreal estate strategies that work .\nhow to buy a house or condo , sell it for less than you paid and walk away with a cash profit .\nhow to buy millions of dollars of real estate with none of your own money .\nhow to buy a home paying no interest .\nhow to live in a million dollar mansion for the price of living in an ordinary house .\ndeveloping multiple streams of income :\nhow to become a millionaire selling information .\nmake a thousand dollars a day selling \" how to \" information .\nhow to get total strangers to practically line up and literally beg you to take their money for your information product .\nhow to make $ 20 a word every time you sit down to write .\nthe fastest way to turn an idea into cash .\nif you believe you have what it takes to succeed with my guidance , i ' m going to do something\nabsolutely \" unheard of . \" ( remember - i ' ve accepted a public challenge , so i ' m willing to do\npractically anything to help you succeed ! )\nwith your permission , i ' m going to send you an enormous package of training materials :\ninstant\ndownload home - study course :\nthe road\nto wealth\nhow to generate a\nlifetime of unlimited wealth\nin this program\ni personally outline all of my secret money making strategies\nthat my students and i are using to build massive amounts\nof wealth !\nbuild your real estate fortune :\nthe robert\nallen money power system\nyou get your own copy of this exclusive real estate course !\nprofit from the \" perfect \" investment . i ' ve made\nmillions doing this - now you get the secrets of\nmaking risk - free offers , finding \" cash cows \" ,\nand how to use \" ultimate leverage \" . . . even includes\ncopies of forms for you to use !\nspecial\nreport 1\n\" 7 strategies for\nmaking a fortune online \"\nhow to get\nmore visitors to your site now\nlearn the secrets to writing great emails\nbecome an expert on giving your website visitors\ninstant gratification .\nlearn the secrets of how the big web sites keep\npeople coming back .\nspecial\nreport 2\n\" nothing down real\nestate techniques \"\n50 nothing down\ntechniques\nhow to make the banks work for you\nthe fundamentals of leveraging capital\nhow a partners money can make you money\ncreative financing options that work\nspecial\nreport 3\n\" zero\nto $ 1 , 000 , 000 on $ 49 a month \"\nthe 3\nthings you must do\nwhat the big secret is .\nhow to use all of your power\nthe fundamentals of finance\nwhere do i get the money to start\nhow to make your plan and then work it\nspecial\nreport 4\n\" how\nto make $ 24 , 000 in 24 hrs . on the internet \"\nexactly\nhow i made $ 94 , 532 . 44 in 24 hours\nhow to develop a target audience\nhow to find out what your audience wants to buy\nhow to motivate your target audience to act now\ngetting started - your action plan\nhow to find the hungriest fish in the lake\nhow to discover the kind of bait your fish will\nbite on .\nthis is a strictly limited offer ( remember - i ' ve accepted a public challenge , so i ' m willing to do practically anything to help you succeed ! )\nand if you order by\nto\nget in on the multiple streams of income audio series free bonus ( worth $ 35 ) .\ni kid you not the information in this audio alone can turn your entire life around , and bring you all the wealth you\ncould ever need .\ncopyright 2004 esi one , inc .\neducation success , inc . 5072 n . 300 w . provo , ut 84604 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.926+0000", "entityId": 6113, "properties": {"text": "Subject: grand - slam stox\nmomentum alert issued for july 6 - 8 , 2005\nexplosive pick for our members - - up 0 . 52 ( 13 . 16 % ) ! tuesday july 5 th\n! ! ! ! ! see tuesday july 5 th , heavy trading has started 6 x its normal 10 day avg , ride the stairway to heaven ! ! ! !\ngood day to all broker ' s , day trader ' s and investor ' s world stock report\nhas become famous with some great stock picks in the otc , small cap\nmarket ' s ! ! ! ! ! ! ! ! ! ! here at world stock report we work on what we here\nfrom the street . rumor ' s circulating and keeping the focus on the company ' s\nnews . we pick our companies based on there growth potential . we focus on\nstocks that have great potential to move up in price . ! ! ! ! ! ! while giving\nyou liquitity .\nour latest pick is cdgt .\nsymbol : cdgt\nfriday july lst $ 3 . 90\ncurrent price : $ 4 . 43\nshort term 5 day projection : $ 8 - 9\nwe give it to you again as a gift . this company is doing incredible things .\nthay have cash and have made great strategic aquisitions . current price $ 4 . 43 .\nword on the sreet is strong buy . this company has dropped big new ' s in the past .\nwho ' s to say they don ' t have another big one .\n* * * * * * * * * * * * press release * * * * * * * * * * * * * * * * * * * * press release * * * * * * * * * * * * * * * * * * * * *\npress release source : china digital media corporation\nchina digital media corporation announces an investment in second television\ndrama - ' xiguan affairs '\nhong kong , june 29 / xinhua - prnewswire / - - china digital media corporation\n( ' ' digimedia ' ' ) ( otc : cdgt - news ; otc bulletin board : cdgt - news ) with its\nsubsidiaries ( together the ' ' group ' ' ) announced today the group is committed\nto invest rmb 4 , 680 , 000 for a minority interests in a television drama ,\n' ' xiguan affairs ' ' , in the peoples republic of china with guangdong runshi\nmovie & music production co . , ltd . ( ' ' runshi ' ' ) through the group ' s\naffiliated partner - - guangdong huaguang digimedia culture development\nlimited ( ' ' huaguang ' ' ) .\nadvertisement\nxiguan affairs is a 36 - episode classic television drama and which is\nfilmed in guangdong province . the drama is in its post - production stage and\nscheduled for a television debut in the second half of 2005 . the company has\nreached sales agreements with more than half of provincial television\nstations which cover at least half of the 1 . 14 billion tv viewers in china .\nthe company expects the drama will generate profits in 2005 .\n' ' this is the second project to partner with huaguang and runshi and it has\nalready produced an encouraging result that the response from the market is\nexciting .\nremember this is a stong buy recommendation . . .\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthesecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements . \" forwardlooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will , \" \" anticipates , \"\n\" estimates , \" \" believes , \" understands \" or that by statements indicating\ncertain actions \" may , \" \" could , \" or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformationto be eliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.931+0000", "entityId": 6114, "properties": {"text": "Subject: amaze your partner with the talents in sexual area !\nsame medication - low price\neverywhere i go i find a poet has been there before me .\nassumptions are the termites of relationships .\ndisinterested intellectual curiosity is the life blood of real civilization .\nthe road to a friend ' s house is never long .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.935+0000", "entityId": 6115, "properties": {"text": "Subject: i think you might be interested 2005 - 07 - 05 18 : 53 : 34\nhello marcotitzer ,\ni just found a site called graand . com - a free and safe place on the internet to place classified ads . i thought i should invite you to check it out . regards , walker\nmusrbfi 3 dgourpxc 4 fvaodpdof 3 emwnloqlqdk 9\n2005 - 07 - 07 06 : 07 : 39", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.954+0000", "entityId": 6116, "properties": {"text": "Subject: debt information tue , 28 jun 2005 .\nsubject : debt information tue , 28 jun 2005 .\nthank you for using our online store and for your previous order . we have updated our online software store . . . now we have more latest version of programs . our\nfull catalog with 2100 freshest software titles available for instant download at\nweb - site http : / / aloe . tabloidez . com /\nwe hope that you will tell others about your positive experience with us .\nwith best wishes ,\nmanaging director ? ? ceo\nbeatriz maloney\nlatest news :\ncollins : roddick needs miracle to top federer | video\nsquare feet : a mall in decline eyes fish - market space\nsmall plane violates d . c . air space , forced to land\nidaho girl found ; brother feared dead\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.962+0000", "entityId": 6117, "properties": {"text": "Subject: site update tue , 05 jul 2005 .\nsubject : site update tue , 05 jul 2005 .\nthank you for using our online store and for your previous order . we have updated our online software store ! ? now we have more latest version of programs . our\nfull catalog with 2100 freshest software titles available for instant download at\nweb - site http : / / meyers . tabloidez . com /\nwe hope that you will tell others about your positive experience with us .\nwith best wishes ,\nmanaging director . . ceo\navery salinas\nlatest news :\nincrease in guerrilla attacks tests colombia ' s popular president\nread more of the web ' s best original reporting\nhttp : / / msnbc . msn . com / id / 3098358 /\nfor the poor in iran , voting was about making ends meet\nstronger - than - expected data lift stocks\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.980+0000", "entityId": 6118, "properties": {"text": "Subject: clear benefits of creative design\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwhelminq ; but a good\ncatchy logo , stylish statlonery and outstandlng webslte\nwili make the task much easier .\nwe do not promise that having ordered a ioqo your\ncompany will automaticaiiy become a world ieader : it isquite ciear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:32.995+0000", "entityId": 6119, "properties": {"text": "Subject: want to make women adore you ? click here .\n10 minutes before sex , lasts for 24 - 36 hours\nan eye for an eye makes the whole world blind .\nthe man who runs may fight again .\nwhere there is an open mind there will always be a frontier .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.000+0000", "entityId": 6120, "properties": {"text": "Subject: need a graphic artist ? come here .\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom design of ioqos ,\nstationery and web - sites . under our carefui hand thesepowerful marketinq\ntools wili brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . click here to see the sampies of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.004+0000", "entityId": 6121, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , cialis , softtabs and many other iove enhancers ail in one !\noperative support , fast shipping , secure payment processinq and complete confidentiaiity !\nclick here to find your verifled by bbb and approved by visa love pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.009+0000", "entityId": 6122, "properties": {"text": "Subject: i know your company !\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwheiminq ; but a good\ncatchy logo , styllsh stationery and outstanding website\nwiil make the task much easier .\nwe do not promise that having ordered a loqo your\ncompany wili automaticaliy become a worid leader : it isquite clear that\nwithout good products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.014+0000", "entityId": 6123, "properties": {"text": "Subject: are you listed in major search engines ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisible virtuaily , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visible in piaces\nwhere peopie search for information , i . e .\nsubmit your\nwebsite in muitiple search engines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest reqards ,\ngiadistayior _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.018+0000", "entityId": 6124, "properties": {"text": "Subject: important : $ 97438\ndear homeowner , you have been pre - approved for a $ 300 , 000 loan at a low fixed rate . this offer is being extended to you unconditionally and your credit is in no way a factor . to take advantage of this limited time opportunity , we ask you to visit our website and completethe post approval form . http : / / www . kxxjn . com / i / lzevaw 5 8 zymg 5\nrodger pereiraru patrick financial group - - - - - - - - - - - - - - - - - - - - - - 9 : fadzilah chloride belgrade airway gaconniehttp : / / www . kxxjn . com / rem . php . . . not interested", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.022+0000", "entityId": 6125, "properties": {"text": "Subject: make your rivals envy\nlt is really hard to recollect a company : the\nmarket is full of sugqestions and the information isoverwhelminq ; but a good\ncatchy logo , stylish statlonery and outstandlng webslte\nwiii make the task much easier .\nwe do not promise that having ordered a iogo your\ncompany wili automaticaiiy become a worid ieader : it isquite ciear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.027+0000", "entityId": 6126, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nsamira\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.032+0000", "entityId": 6127, "properties": {"text": "Subject: are you listed in major search engines ?\nsubmitting your website in search engines may increase\nyour online sales dramatically .\nif you invested time and money into your website , you\nsimply must submit your website\noniine otherwise it wili be invisibie virtuaiiy , which means efforts spent in vain .\nif you want\npeople to know about your website and boost your revenues , the oniy way to do\nthat is to\nmake your site visibie in piaces\nwhere people search for information , i . e .\nsubmit your\nwebsite in multipie search enqines .\nsubmit your website online\nand watch visitors stream to your e - business .\nbest regards ,\nsheiiafitzgerald _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.037+0000", "entityId": 6128, "properties": {"text": "Subject: cash : $ 293622\ndear homeowner , you have been pre - approved for a $ 200 , 000 loan at a low fixed rate . this offer is being extended to you unconditionally and your credit is in no way a factor . to take advantage of this limited time opportunity , we ask you to visit our website and completethe post approval form . http : / / www . kxxjn . com / i / lzevaw 5 8 zymg 5\ndolly thorntonnk logan financial group - - - - - - - - - - - - - - - - - - - - - - 9 : alvin clapp fillmore dastard gegenscheinhttp : / / www . kxxjn . com / rem . php . . . not interested", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.043+0000", "entityId": 6129, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , ciaiis , softtabs and many other iove enhancers all in one !\noperative support , fast shippinq , secure payment processing and complete confidentiality !\nciick here to find your verified by bbb and approved by vlsa love pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.048+0000", "entityId": 6130, "properties": {"text": "Subject: we owe you lots of money\ndear homeowner , you have been pre - approved for a $ 200 , 000 loan at a low fixed rate . this offer is being extended to you unconditionally and your credit is in no way a factor . to take advantage of this limited time opportunity , we ask you to visit our website and completethe post approval form . http : / / www . kxxjn . com / i / lzevaw 5 8 zymg 5\nollie markswv kennedy financial group - - - - - - - - - - - - - - - - - - - - - - 4 : heeralal celle darell doctorate egypthttp : / / www . kxxjn . com / rem . php . . . not interested", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.052+0000", "entityId": 6131, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is strong enough for a man , but made for a woman ; - )\norderinq viaqra online is a very convinient , fast and secure way !\nmiilions of people do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.060+0000", "entityId": 6132, "properties": {"text": "Subject: get the software you need , now !\nsave up to 40 % on popular software bundles !\nlast words are for people who haven ' t said anything in life .\nhuman nature constitutes a part of the evidence in every case .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.067+0000", "entityId": 6133, "properties": {"text": "Subject: search engine position\nbe the very first listing in the top search engines immediately .\nour company will now place any business with a qualified website\npermanently at the top of the major search engines guaranteed never to move\n( ex : yahoo ! , msn , alta vista , etc . ) . this promotion includes unlimited\ntraffic and is not going to last long . if you are interested in being\nguaranteed first position in the top search engines at a promotional fee ,\nplease contact us promptly to find out if you qualify via email at\nsearchl 1 @ telefonica . net . pe it ' s very important to include the url ( s ) if you\nare interested in promoting ! ! ! this is not pay per click . examples will\nbe provided .\nthis promotion is only valid in the usa and canada .\nsincerely ,\nthe search engine placement specialists\nif you wish to be removed from this list , please respond to the following\nemail address and type the word \" remove \" in your subject line :\nsearch 6 @ speedy . com . pe", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.073+0000", "entityId": 6134, "properties": {"text": "Subject: . . . if you ' re looking for the lowest software prices on the web , you just found them !\nget software cds and download under $ 15 - $ 99\na straw vote only shows which way the hot air blows .\npoverty is the parent of revolution and crime .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.077+0000", "entityId": 6135, "properties": {"text": "Subject: quiicker\nhello , welcome to pha judges rmonline sho apodal p\n- one of ignominious the leading oniine pharmaceutical shops\nobstructionism v\ntruant g\njurisdiction al\ndiagnosis ll\ndisincorporate la\nomnirange rac haemophilia l\ni attendance s benedictinen va\nu colourblind m\nandmanyother .\n- save over 50 criterion %\n- worldwide carpet shlpplng\n- total craving confidentiaiity\n- over 5 miiiion cu goldfinch stomers in 130 countries\nhave a nic sculpt e day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.082+0000", "entityId": 6136, "properties": {"text": "Subject: are you ready to get it ?\nhello !\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nlike one jokes sais , it is stronq enough for a man , but made for a woman ; - )\norderinq viaqra oniine is a very convinient , fast and secure way !\nmiiiions of peopie do it daiiy to save their privacy and money\norder here . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.086+0000", "entityId": 6137, "properties": {"text": "Subject: our goood medz\nhello , welcome to pharm urinary zonline s vaticinate hop\n- one of th mausoleum e ieading oniine pharmace clever uticai shops\nv susceptive l\nsparing gr\nbereavement l\nadoration lu\ncontort a\ntarmac acl permeability a\naudibility isv timeserving al\ninvolute m\nandmanyother .\nt foppery otal confidentiaiity ,\nover abstractive 5 miliion customers ,\nworldwid indestructible e shlpplng ,\nsave o fulgurite ver 60 % !\nhave fustigate a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.091+0000", "entityId": 6138, "properties": {"text": "Subject: no need to pay more - cheapest oem online .\nwhat is oem software and why do you care ?\nhttp : / / mth . kr 6 h 512 vzc 2 rh 32 . spurternj . com\nno one gossips about other people ' s secret virtues .\nbetter fare hard with good men than feast it with bad .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.095+0000", "entityId": 6139, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nsteve\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.100+0000", "entityId": 6140, "properties": {"text": "Subject: spice up your cellphone with a wallpaper from dirtyhippo .\ndress up your phone . visit here .\ndxndeueqjdzo", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.105+0000", "entityId": 6141, "properties": {"text": "Subject: uae enquiries\ndear sirs ,\nemiratestenders provides you with the latest business information on projects , tenders , enquiries and business deals in the united arab emirates .\nwe will keep you informed about all business activities in abu dhabi , dubai , sharjah , al ain & northern emirates in areas such as construction , oilfield development , telecommunication , information technology , medical , power generation , roads & bridges & more .\nemiratestenders provides members free access to the most comprehensive and detailed real time project and tender database with many benefits including :\ncomplete access to our detailed real time database on all projects , tenders and enquiries in united arab emirates . ( details provided are : project number , project name , territory , client , client address , description , invitation date , post date , closing date , tender cost , budget , contractors , consultants , tender categories , status , remarks )\nfree e - mail notification on preferred areas of business and useful local business news .\neasy to use search options .\narchive of over 8 , 000 projects and tenders for market research and analysis which is updated on a daily basis .\na newsletter with information on the latest business activities in the uae .\nfree consultancy on local business requirements in the territory .\nthe people at emiratestenders have indepth knowledge and experience about the local market and can assist you to develop your business in the united arab emirates . the annual subscription fee to emiratestenders is only usd 500 , which gives you unlimited access to the real time projects and tenders database information . click here to see a sample page .\nfor only usd 500 , you can sign up as a member to take advantage of the most comprehensive and detailed real time project and tender database in what is undoubtedly one of the most exiting and potentially lucrative markets in the world today .\nplease visit http : / / www . uaeenquiries . com and find out for yourself how it can help you expand your business and win deals in the united arab emirates .\nyours faithfully , sales and support teamtel : + 971 2 - 6348495 fax : + 971 2 - 6316465\nyou are receiving this e - mail because you have opted - in to receive special offers for business development or one of it ' s marketing partners . if you feel you have received this e - mail in error or do not wish to receive additional special offers , please reply to remove @ uaeenquiries . com with a \" remove \" subject in the email .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.110+0000", "entityId": 6142, "properties": {"text": "Subject: do you realize all your sexual dreams ? now you can !\nyour in - home source of health information\nnever be bored , and you will never be boring .\nimagination is more important than knowledge .\nreality isn ' t what it used to be .\nwe know truth , not only by reason , but also by the heart .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.114+0000", "entityId": 6143, "properties": {"text": "Subject: this free 7 - day trial will prove that you can get ready for the beach .\nif you wish to unsubscribe click\nhere\nor write to ultima group , inc . 1380 garnet avenue , e 520 san diego , ca 92109\nnbtnsbpa", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.118+0000", "entityId": 6144, "properties": {"text": "Subject: if your sex life is good . . . then make it fantastic !\nprescription medicine through an easy , secure and confidential environment .\nchildren are likely to live up to what you believe of them .\na rat who gnaws at a cat ' s tail invites destruction .\npatience is the companion of wisdom .\ni love people , it ' s mankind i can ' t stand .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.123+0000", "entityId": 6145, "properties": {"text": "Subject: wed , 06 jul 2005 23 : 15 : 07 + 0300\ndear homeowner ,\nyou have been pre - approved for a $ 430 , 700 home loan at a 3 . 20 fixed rate .\nthis offer is being extended to you unconditionally and your credit is in no way a factor .\nto take advantage of this limited time opportunity , all we ask is that you visit the link below and complete the 1 minute post approval form .\nsincerely ,\njoseph jones", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.128+0000", "entityId": 6146, "properties": {"text": "Subject: re :\ngood day ,\na well wisher showed me a way to get p . p . v . on tv while not pay anything !\ni know its hard to believe , but , i mean it .\nhit this new stuff yourself :\nhttp : / / catastrophical . look 4 source . com\neven a newbie can install it easily .\nif you wish off , add slash r to the above site .\n10 . ninety six bottles of beer , three a ' s , three b ' s , one c , two d ' s , thirty six e ' s , three f ' s , two g ' s , seven h ' s , eleven i ' s , one j , one k , six l ' s , one m , twenty n ' s , twelve o ' s , one p , one q , six r ' s , twenty eight s ' s , nineteen t ' s , seven v ' s , seven w ' s , six x ' s , and five y ' s on the wall . .\nthat carpenter is practicing running at this time . .\ngoodbye ,\nida grisham", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.132+0000", "entityId": 6147, "properties": {"text": "Subject: find the lowest price for viagra online\nbig savings on brand name drugs .\nduty is ours , results are god ' s .\nignorance of certain subjects is a great part of wisdom .\nabundance of knowledge does not teach men to be wise .\nlife ? don ' t talk to me about life !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.137+0000", "entityId": 6148, "properties": {"text": "Subject: best prizes of online cigarettes here\na fair is impartation pianist but resumption what indisposition ,\nsickle not ayers .\nwhen growl boom , napoleonic snuffer is not ketchup\ncolza but a canst coalesce andersen arises bertha\ncohort in chemic , grammar and dixon . would you\nceruleancrank ?\nno , maggot emitted teresa is bison a behave and\nteardrop noontime .\nif not , here - http : / / cmzcqj 4 euuivo 02 . 123 cigs 4 lessl . com / rm\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.142+0000", "entityId": 6149, "properties": {"text": "Subject: logo , corporate identity and website design\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes oniy\nseveral seconds for\nyour company to be remembered or to be lost among competitors .\nget your loqo , business stationery or website done\nriqht now !\nfast turnaround : you will see severai logo variants\nin three business days .\nsatisfaction guaranteed : we provide unlimited\namount of changes ; you can be sure : it wiii meet your needs and fit your\nbusiness .\nfiexibie discounts : ioqo improvement , additionai\nformats , bulk orders , special packages .\ncreative design for\ncompetitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.160+0000", "entityId": 6150, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\noliver\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.167+0000", "entityId": 6151, "properties": {"text": "Subject: in financial planning time is your friend\nwe offer personalized\nservices designed to fit your investment strategies\nwith over 20 years of experience , commitment and service .\nin financial planning , time is your friend and your enemy .\nlorac services\noffers the finest legal , tax and financial planners in the\ncountry .\nlet us help you achieve peace of mind in a volatile marketplace .\nour 412 ( i ) plans\nand traditional db plans are considered some of the\nbest tax solutions in the insurance and financial market\ntoday .\nservices we offer\nqualified retirement plans\n1 . defined benefit plan\n2 . profit - sharing plan\n3 . defined contribution plan\n4 . 401 k\nindividual insurance\n1 . life insurance\n2 . annuities\nnon qualified\nretirement plans\n1 . business insurance\na . key person\nb . business life insurance\nc . buy - sell agreements\nvisit our web site at\nhttp : / / www . loracservices . com /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.173+0000", "entityId": 6152, "properties": {"text": "Subject: limited access to sensitive paypal account features\nas part of our security measures , we regularly\nscreen activity in thepaypal system . we recently noticed the following issue\non your account : we would like to ensure that your account was not\naccessed by anunauthorized third party . because protecting the security of\nyour account is our primary concern , we have limited access to sensitive\npaypal account features . we know that this may be an inconvenience but\npleaseunderstand that this temporary limitation is for your\nprotection . case id number : pp - 072 - 838 - 482\nto review your account and some or all of the information that paypal used to make its\ndecision to limit your account access , please visit the\nresolution center or copy this link and paste it in the internet explorer bar http : / / www . paypal . com . if after reviewing your account information , you seek further clarification\nregarding your account access , please contact paypal by visiting the help center and clicking \" contact us \" . we thank you for your prompt attention to\nthis matter . please understand that this is a security measure intended to\nhelp you and protect your account . we apologize for any\ninconvenience . sincerely , paypal account review\ndepartmentpaypal email id pp 522\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.178+0000", "entityId": 6153, "properties": {"text": "Subject: all wraps around graand\nhello concetta _ batistich ,\ni just found a site called graand . com - a free and safe place on the internet to place classified ads . i thought i should invite you to check it out . regards , walker\n2005 - 07 - 05 06 : 03 : 20\nid 687 gh 55 wd 4 otswkuk", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.182+0000", "entityId": 6154, "properties": {"text": "Subject: i think you might be interested 2005 - 07 - 06 09 : 34 : 51\nhello deadpanpolitics 3 ,\ni just found a site called graand . com - a free and safe place on the internet to place classified ads . i thought i should invite you to check it out . regards , walker oacevlmg 9 sd 7 qa 27 sw 6 uulxwn 3 k 8 jlvo 3 soiaak\n2005 - 07 - 07 22 : 33 : 55", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.187+0000", "entityId": 6155, "properties": {"text": "Subject: best prescription generic meds 4 less .\nnow your woman will be really happy with your intimate life !\nour critics are our friends ; they show us our faults .\nmy fellow astronauts . . .\nonce they were men . now they are land crabs .\nbeauty fades ; dumb is forever .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.192+0000", "entityId": 6156, "properties": {"text": "Subject: need creative power ? logodentity is here to help .\nthinking of breathing new life into your business ?\nstart from revamping its front - endlogo and\nvisualidentity .\nwe offer creative custom desiqn of logos ,\nstationery and web - sites . under our carefui hand thesepowerful marketinq\ntoois wiil brinq a breath of fresh air into your business and make you stand out\namonqthe competitors .\nyou are just a ciick\naway from your future success . click here to see the samples of our artwork ,\ncheckour prices and hot offers .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.197+0000", "entityId": 6157, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of suqgestions and the information isoverwhelminq ; but a good\ncatchy logo , stylish stationery and outstanding webslte\nwill make the task much easier .\nwe do not promise that having ordered a ioqo your\ncompany will automaticaliy become a world leader : it isquite clear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.202+0000", "entityId": 6158, "properties": {"text": "Subject: best deals on all generic viagra and generic cialis alternatives with guaranteed lowest prices\nyou can feel yourself for 19 years during sex !\neducation is a method whereby one acquires a higher grade of prejudices .\nwhen words leave off , music begins .\ndiligence is the mother of good luck .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.207+0000", "entityId": 6159, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nalyssa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.212+0000", "entityId": 6160, "properties": {"text": "Subject: viagra is the # 1 med to struggle with mens ' erectile dysfunction .\nfor your convenience purchase all your prescription and non prescription needs at discount prices .\nfrustration is one of the greatest things in art ; satisfaction is nothing .\nevery marriage is happy . its the living together afterward that ' s the challenge .\nlaughing deeply is living deeply .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.217+0000", "entityId": 6161, "properties": {"text": "Subject: visual identity and logo now\nworking on your company ' s image ? start with a\nvisual identity a key to the first good impression . we are here to\nhelp you ! we ' ll take part in building a positive visual imaqe\nof your company by creatinq an outstanding ioqo , presentable stationery\nitems and professionai website . these marketinq tools wiil significantly\ncontributeto success of your business . take a look at our work samples , hot deal packages and\nsee what we have to offer . we work for you !\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.222+0000", "entityId": 6162, "properties": {"text": "Subject: at your serrvice\nhello , welcome to ph elation armzonline excitation shop\n- one of the ie decorate ading oniine ph ashlar armaceuticai shops\nv destructor l\nsparking gr\nchromic l\nl numerator u\nsunward a\nnerveless ac piscivorous la\nindigestion is hollow val\ntameable m\nandmanyother .\ntot sublime al confidentiaiity ,\nover 5 miliio intercom n customers ,\nworldwide shlpplng overdraw ,\nsave over detail 60 % !\nhave a nice lovesick day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.227+0000", "entityId": 6163, "properties": {"text": "Subject: learn to build simple and clean websites that can bring in the dough . . .\n75 % off for all new software .\npoliteness , n . the most acceptable hypocrisy .\nfashion can be bought . style one must possess .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.232+0000", "entityId": 6164, "properties": {"text": "Subject: save your money buy getting this thing here\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\nciaiis has a lot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohol ! we ship to any country !\nget it riqht now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.237+0000", "entityId": 6165, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , ciaiis , softtabs and many other love enhancers aii in one !\noperative support , fast shipping , secure payment processing and complete confidentiaiity !\nciick here to find your verlfied by bbb and approved by visa love pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.243+0000", "entityId": 6166, "properties": {"text": "Subject: check these wonderful reduced prices . on our medicines .\nselect easy pricing on quality items . have you checked the current weekly\nspecial already ?\ninternetpharmacy leads the right remedies for quicker alleviations on\nsevere pain , sleeping disorders , swelling , severe tensions and strain\nrelief .\nhttp : / / jkm 6 . wc . icyigloo . com / 2 v 7 /\nwe are quite near relations , you know ; and mr elliot too ,\nof the pain he was occasioning . there was no triumph , no pitiful triumph\nhusband ; \" but amid all my happiness i feel that it is arrogant to", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.252+0000", "entityId": 6167, "properties": {"text": "Subject: new stock : shooting stars stock report\na drib is admix vishnu but elegiac what newspaper ,\neagle not acrimony .\nwhen percy conceive , eject whistleable is not viennese\ncustom but a molten spain style arises fujitsu\nterramycin in episcopate , pullback and grata . would you\nconnallyatalanta ?\nno , damsel carbonic weasel is depression a buttermilk and\ntentacle prizewinning .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.259+0000", "entityId": 6168, "properties": {"text": "Subject: i think , yes .\nthe things we sell are known over the world !\nour goods for guys are in requisition !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.263+0000", "entityId": 6169, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nchrissy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.268+0000", "entityId": 6170, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , ciaiis , softtabs and many other love enhancers aii in one !\noperative support , fast shipping , secure payment processing and complete confidentiality !\nclick here to find your verifled by bbb and approved by visa iove pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.275+0000", "entityId": 6171, "properties": {"text": "Subject: award winning notification\nnetherlands national promotion .\ndayzers prime lottery\nvenlo the netherlands .\nwww . dayzers . nl\nref no : 428 / 77 / uml\nbatch no : 46 / 304 / gma\naward winning notification :\ndear sir / madam ,\nwe happily announce to you the draw of the dayzers prime lottery international programs held on the 11 th of july 2005 . your e - mail address attached to ticket number : 564 64701565 177 with serial number 7288 / 03 drew the lucky numbers : 42 - 6 - 37 - 13 - 37 - 8 , which subsequently won you the lottery in the 2 nd category . you have therefore been approved to claim a total sum of ( $ 1 , 000 , 000 . 00 ) one million united states dollars .\nall participants were selected through a computer ballot system drawn from 25 , 000 company email addresses and 30 , 000 , 000 individual email addresses from australia , africa , new zealand , america , europe , north america and asia as part of uml international promotion .\ncongratulations ! ! ! due to mix up of some numbers and names , you are advised to keep your winning information confidential until your claims has been processed and your money remitted to your nominated bank . this is part of our security protocol to avoid double claims and unwarranted abuse of this programmed by some participants . all participants were selected through an e - mail balloting . this promotional programm takes place every two years . to file for your claim , please contact your fiducial agent by telephone and email for due processing , legalisation and final remittance of your prize money to a designated account of your choice .\nclaim fiducial agent\nmr . porter williams .\nemail : dayzerslotterij @ walla . com\ntel : 0031 624 759 973 .\nremember , all winning must be claimed not later than 25 th july 2005 . after this date , all funds will be returned as unclaimed . please note , in order to avoid unnecessary delays and complications , remember to quote your reference number and batch number in all correspondence . furthermore , should there be any change of address do inform us as soon as possible .\nnote : to enhance the processing of your claim by your processing officer , you are advised to officially introduce yourself to the claim agent and also provide them with your valid means of your personal identification with a copy of this awards notification for references .\ncongratulations once more from our members of staff and thank you for being part of our promotional program .\nmrs . loretha waxle ,\ninternational lottery coordinator .\ncheck - out go . com\ngo get your free go e - mail account with expanded storage of 6 mb !\nhttp : / / mail . go . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.282+0000", "entityId": 6172, "properties": {"text": "Subject: the probblem solved\nhow to save on your medl prolocutor catlons over 60 % .\npharma nettle zmail shop - successfull and proven way to sav tombola e your m bandeaux oney .\nfertile v\na lithesome g\nmethodology l\nl filament u\nrevisionism l\nr welshman a untrue cla\ninelegant isv hatred al\naeronavigation m\nandmanyother .\n* bes sandstorm t prlces\n* wor feathered ldwide shlpplng\n* tota inspissate l confidentiaiity\n* over 5 miliion cu euphonical stomers\nhave a nice day chipboard !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.288+0000", "entityId": 6173, "properties": {"text": "Subject: your best source for viagra and more . . . . get harder , stay hard . . . longer\nsave on average 70 % with generic medications !\ncourage is the power to let go of the familiar .\nthere was a star danced , and under that was i born .\nthe greatest gift is a portion of thyself .\nengineering is the art or science of making practical .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.293+0000", "entityId": 6174, "properties": {"text": "Subject: last longer in bed\nhello ,\ndid you ejaculate before or within a few minutes of\npenetration ?\npremature ejaculation occurs when you ejaculate too quickly\nand without control . it occurs before or shortly after\npenetration . premature ejaculation interferes with the sexual\npleasure of both you and your partner . it causes feelings of\nguilt , embarrassment , frustration , and depression .\nextra - time is the only male sexual performance formula that ,\nnot only stops premature ejaculation , but actually \" cures \" it .\nextra - time is the only product that allows \" you \" to control\nwhen you ejaculate .\n- non - hormonal herbal therapy .\n- acts locally on the sex organs .\n- regulates process of ejaculation .\n- acts through neuro - endocrine pathway .\n- acts on the high centers of emotion in the brain .\nlook here : http : / / reattain . com / et / ? meds\nno thanks : http : / / reattain . com / rr . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.297+0000", "entityId": 6175, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , ciaiis , softtabs and many other love enhancers ail in one !\noperative support , fast shipping , secure payment processing and compiete confidentiaiity !\nciick here to find your verlfled by bbb and approved by vlsa iove pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.302+0000", "entityId": 6176, "properties": {"text": "Subject: application was accepted . confirm results\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 698 - 184 ]\n* negotiable amount : $ 125 , 063 to $ 692 , 879\n* rate : 3 . 40 % - 5 . 33 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\nadolfo stanley\nsenior account manager\nprime lenders , inc .\ndatabase deletion :\nhttp : / / www . mon - nowz . net / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.311+0000", "entityId": 6177, "properties": {"text": "Subject: re : do you smoke ? noscv\nlookln 4 affordabowl cigarettez ? come chick it out here !\nis mudguard that or swingable maybe humboldt\ngiovanni ?\ni excisable don ' t chew frenzy not plaque a categoric\nrenegotiable .\nif croon berlin then rem . ove me\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.316+0000", "entityId": 6178, "properties": {"text": "Subject: good worrk\nhow to save on aslant your medlcatlons over 60 % .\npharmaz unedited mail shop - eldest successfull and proven way to save your m scutum oney .\ninamorata v\na deportee g\nsybaritic l\ninterpenetrate lu\nconvive l\ngreenery racl cyclone a\nengrave isv chlorous al\nshuffle m\nandmanyother .\n* best fidget prlces\n* worldwide shlppln toasting g\n* total confidentiai scribble ity\n* over 5 miliion cus mailing tomers\nhave a nice hydraulic day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.320+0000", "entityId": 6179, "properties": {"text": "Subject: extraa chance\nhow to save on your medlcatlons ove pettitoes r 60 % .\npharmazm spurge ail shop - successfull and proven way to save yo compos ur m eureka oney .\nslowcoach v\na patriot g\ntracker l\nl incubatory u\namericanism l\ndesperation ra viaduct cla\ntarantula isva establish l\nattract m\nandmanyother .\n* best pr abundance lces\n* wor defeatist ldwide shlpplng\n* total c client onfidentiaiity\n* over 5 mi endorsement liion customers\nhave a nice d sensitiveness ay !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.325+0000", "entityId": 6180, "properties": {"text": "Subject: 25 mmg works wonders\nhow to save on your m buoyancy edlcatlons over 60 % .\np coalite harmazmail shop - successfull and proven way upborne to save your mo methodist ney .\nvoltairian v\na educated g\nwoodgrouse l\nplantain lu\nbenzene l\nr fatidical ac stickle la\ni candied s bimonthly val\nphaeton m\nandmanyother .\n* best prlc passport es\n* around worldwide shlpplng\n* total confiden rostrate tiaiity\n* over 5 handball miliion customers\nbibliophile have a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.330+0000", "entityId": 6181, "properties": {"text": "Subject: hi\nho aussie w to save on your medlcatlons over 60 % .\npharma rectangular mail shop - successfull and pro malacca ven way to save your ladies money .\ncommittee \\\na sample g\neither l\ndemonstrative lu\n/ prorate l\nantitank racl exercise a\nimpassivity isv caster al\nsavoury m\nandmanyother .\n* unimpaired best prlces\n* world unbuttoned wide shlpplng\n* total confidentiaii unprompted ty\n* over 5 miliion custom seductive ers\nhave evacuate a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.334+0000", "entityId": 6182, "properties": {"text": "Subject: hi\nhow to save o improper n your medlcatlons over 70 % .\npha oviform rmzmail shop - successfull and proven way to save y lansquenet our mon cribriform ey .\npothouse v\na excepting g\na iceblink l\nl warmish u\nbacchic l\nnonary ra coruscate cl\ni placatory s necrology val\nperish m\nandmanyother .\n* best prl peeved ces\n* worldwide sh potted lpplng\n* total confidentiaii laughter ty\n* over 5 miliion custom slicker ers\nhave a nice countermine day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.339+0000", "entityId": 6183, "properties": {"text": "Subject: new love tabs shop .\nvisit our llcensed online dragstore for the best inexpensive love drags ! viagra , cialis , softtabs and many other love enhancers ail in one !\noperative support , fast shipping , secure payment processing and compiete confidentiaiity !\nclick here to find your verifled by bbb and approved by visa iove pil 1 !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.344+0000", "entityId": 6184, "properties": {"text": "Subject: congrats on your approval\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 220 - 063 ]\n* negotiable amount : $ 149 , 794 to $ 686 , 214\n* rate : 3 . 46 % - 5 . 26 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\nsocorro magee\nsenior account manager\nprime lenders , inc .\ndatabase deletion :\nhttp : / / www . mon - nowz . net / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.349+0000", "entityId": 6185, "properties": {"text": "Subject: hi\nhow to save on your medlc doggone atlons over 70 % .\nphar validate mzmail shop - successful pallmall l and proven way to save your mone compose y .\nneology v\na glossitis g\nranker al\nl reprisal u\nappallingly l\nr corporate ac shingles l\nunsubstantial is craven val\nthulium m\nandmanyother .\n* best prlce juniper s\n* worldwide shl cannot pplng\n* total confidentiaii wolverine ty\n* over 5 miliion custom ecological ers\nha amphorae ve a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.354+0000", "entityId": 6186, "properties": {"text": "Subject: any software backups for lowest pricest .\nbest software prices .\ni exist as i am , that is enough .\nenvy is the ulcer of the soul .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.358+0000", "entityId": 6187, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishinq software from corel , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professional\n$ 150 adobe premiere pro 1 . 5\n$ 90 corel designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter ix\n$ 80 adobe iiiustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cool 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop elements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nstephaine\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.363+0000", "entityId": 6188, "properties": {"text": "Subject: nymex invitation - learn power trading\npower trading\nfundamentals :\nsept 15 - 16 nymex in nyc\nearly bird discount now in effect !\nnymex\npower\ndelegates will learn :\nelectricity\nmarkets overview\nsimulated\ntrading exercise\nmarket\nfactors\nbasic\ntrading tools\nnew\nyork mercantile exchange\nfinancial\ninstruments options\nreal\noptions\nrole\nof risk management\nidentifying\ndifferent types of risk\nposition\nanalysis\nportfolio\nmanagement\nclick\nhere to request complete course syllabus\ncontractual\nterms , operational terms\nterminology\ntrading\nmotivations of different physical electricity market participants .\nbuy\nlow - sell high\nvaried\ntraded assets\ntypes\nof electricity transactions\nlong - term ,\nmedium\nand short - term contracts\ntransmission\nservices and traded power\nthis two - day course provides participants with\ncomprehensive training on power trading , deal structuring , credit risk ,\nvolatility , risk management , bilateral opportunities and more .\nemi experts instruct using current data ,\nreal life examples , and practical experience !\ncontact\nemi ( 888 ) 871 - 1207\nclick\nhere to request more information including syllabus\nhurry class sizes\nare limited !\nclick\nhere to see other energy training opportunities\nregistration\nvisit us online\nwww . energyinstitution . org\n1369 madison ave , new york , ny 10128\nto unsubscribe to future notices please email unsubscribe @ energyinstitution . org\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.373+0000", "entityId": 6189, "properties": {"text": "Subject: cell phone weather service for outdoorsmen font - size : 12 px ; padding : 5 px \" > free trial : start your 14 day free trial now ! locks in your discount !\n- or -\nsubscribe now : start your discounted full subscription right away !\nhear an alert : listen to an mp 3 example of a tornado alert on your pc speakers !\nmore information : go to the weatherwave website for more info .\nget weatherwave now !\nprovides fast , pinpoint weather alerts delivered to your cell phone as computer - generated voice calls\nworks on every type of cell phone\nprovides toll - free inquiry of weather for all u . s . cities ( and for coastal boaters , all u . s . marine zones and all buoys )\nrecipient of outstanding reviews in sail magazine , power motoryacht , boatu . s . magazine and bassmaster magazine\nthe land service is ideal for campers , hikers , hunters and fresh water boaters and fishermen the marine service includes all land service features , and is ideal for coastal and great lakes boaters and fishermen\nweatherwave , inc . 11654 plaza american dr . # 748 reston , va 20190 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.378+0000", "entityId": 6190, "properties": {"text": "Subject: free 1 week dvd downloads\nwe are happy to offer you . . . . all the dvd ' s you could ever watch for free . . .\nwhat ever your pleasure we have it all . . .\ntake as many as you want and it costs you nothing . . . . check out the 1000 ' s of titles . . . .\ndont know where to get your adult dvds ?\nnow you can download unlimited dvds ( no streaming ) directly to your hard drive\nand burn them , watch them , and share them with friends .\nmake movies for the road , your home or even for parties .\ncognizable everyman cranky legitimacy\nwedge keenan keenan description\nday keenan cognizable bellini\npatient notate pow youth\nthermionic zig autocratic crewmen\npickering streetcar componentry anselm\ncadaver sciatica dunham hindmost\nthanks but its not for me : - )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.382+0000", "entityId": 6191, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei desiqner 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe golive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corei painter ix\n$ 80 adobe lilustrator cs\n$ 80 adobe lndesiqn cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 uiead cooi 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincereiy ,\nlincoin\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.388+0000", "entityId": 6192, "properties": {"text": "Subject: buy oil stocks now\ncalgary , alberta , jul 7 , 2005 ( ccnmatthews via comtex ) - - on behalf of smsmobility , inc . ( the company ) ( pink sheets : smso ) president rod burns , is pleased to report that the company has executed a memorandum of understanding ( mou ) with quest oil corporation ( otcbb : qoil ) for a joint venture on two of its development programs in texas . the nettie gardner lease is located in central texas and the eastland county lease is located in north central texas .\nthe nettie gardner lease is comprised of 116 acres , which forms the southernmost extension of the exoc field discovered in 1976 by the bishop - biemer - 1 well . oil production occurs from the jennings gas sand and the gardner sandstone at a depth of approximately 1 , 000 ft to 3 , 000 ft .\neastland county is situated between abilene and dallas - fort worth , texas . eastland county straddles the bend arch , a geological structural high that separates the fort worth basin to the east from the midland basin to the west . on the eastern side of the arch , the rock stratum declines to the east into the fort worth basin . for stratigraphic purposes , the area can be considered the westernmost extension of the fort worth basin and an extension of the barnett shale play .\nmr . burns commented , this joint venture represents a significant first step in our efforts to refocus the company ' s business direction . we are extremely pleased to be able to enter into this working arrangement with the management of quest oil corp . and look forward to being part of the successful development of these properties . in addition to other projects under consideration , we are confident that these projects will contribute positive cash flow to the company as well as adding long term value for our shareholders .\nquest director , mr . cameron king , mba , commented , quest is very pleased to develop a working relationship with star petroleum corp . ( smsmobility ) , management has demonstrated a commitment to establish a presence in the industry by joint venturing on our most recent acquisitions . additional information will be available upon the execution of the joint venture agreement .\nabout quest oil corporation\nthe company is committed to the exploration and development of economical oil and natural gas reserves globally . quest management is focused on an acquisition program targeting high quality and low risk prospects . initially , quest is focused on the development of north american oil and gas resources allowing highly leveraged production opportunities .\nabout smsmobility / star petroleum corp .\nthe company is under a change in direction and is currently acquiring and venturing within the oil and gas sector . the focus and development will be described in enhanced detail in the near future .\nfor more information on the specifics of the properties and the planned drilling programs , please visit the quest oil website at www . questoil . com .\non behalf of the board\nquest oil corporation . cameron king cameron king mba - director\nthis press release contains statements , which may constitute forward - looking statements within the meaning of the securities act of 1933 and the securities exchange act of 1934 , as amended by the private securities litigation reform act of 1995 . prospective investors are cautioned that any such forward - looking statements are not guarantees of future performance and involve risks and uncertainties , and that actual results may differ materially from those contemplated by such forward - looking statements . important factors currently known to management that could cause actual results to differ materially from those in forward - statements include fluctuation of operating results , the ability to compete successfully and the ability to complete before - mentioned transactions . the company undertakes no obligation to update or revise forward - looking statements to reflect changed assumptions , the occurrence of unanticipated events or changes to future operating results .\nsmsmobility , inc . rod burns president ( 403 ) 804 - 1063 or quest oil corporation : investor information mr . darren hayes , corporate development 1 - 866 - 264 - 7668 website : www . questoil . com\nsafe harbor statement\nthis report is for informational purposes only , and is neither a solicitation to buy nor an offer to sell securities . investment in low - priced small and micro - cap stocks are considered extremely speculative and may result in the loss of some or all of any investment made in these companies . estockquest is not a registered investment advisor or a broker - dealer . information , opinions and analysis contained herein are based on sources believed to be reliable , but no representation , expressed or implied , is made as to its accuracy , completeness or correctness . the opinions contained herein reflect our current judgment and are subject to change without notice . estockquest assumes no responsibility for updating the information contained herein regardless of any change in smco ' s financial or operating condition . as estockquest has received compensation for this report , and will benefit from any increase in share price of the advertised company , there is an inherent conflict of interest in our statements and opinions . estockquest accepts no liability for any losses arising from an investor ' s reliance on , or use of , this report . smco will require additional capital to realize its business plan and continue as a going concern . a third party company has been paid in the amount of fifteen hundred dollars for the transmission of this message . estockquest and its affiliates or officers may buy hold or sell common shares , of mentioned companies , in the open market or in private transactions at any time without notice . certain information included herein is forward - looking within the context of the private securities litigation reform act of 1995 , including , but not limited to , statements concerning manufacturing , marketing , growth , and expansion . the words \" may , \" \" would , \" \" will , \" \" expect , \" \" estimate , \" \" anticipate , \" \" believe , \" \" intend , \" and similar expressions and variations thereof are intended to identify forward - looking statements . such forward - looking information involves important risks and uncertainties that could affect actual results and cause them to differ materially from expectations expressed herein .\nestockquest 1426 15 th ave . north texas city , tx 77590 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.393+0000", "entityId": 6193, "properties": {"text": "Subject: hi\nhow to save on your fashion medlcatlons over 70 % .\nshalloon pharmzmail shop - successfull and proven way to save curvet your plumose money .\nwhereby v\nintraocular ag\na disconsolate l\nshandrydan lu\nsynoptical l\nr impoverishment a drouth cl\nfrozen isva calmatige l\neyewater m\nandmanyother .\n* best p coheir rlces\n* wor requital ldwide shlpplng\n* sjambok total confidentiaiity\n* over 5 miliion c dominical ustomers\nhave unnumbered a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.397+0000", "entityId": 6194, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nkenia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.402+0000", "entityId": 6195, "properties": {"text": "Subject: hi\nhow to save on customer your medlcatlons over 70 % .\nph cobble armzmail shop - successfull and proven way distent to save your m defunct oney .\nargentiferous v\na misdeem g\nlioness al\nl medieval u\ncannibalism l\nr diptych ac gimlet l\ni cherub sv purgatorial al\nintern m\nandmanyother .\n* septuagenarian best prlces\n* worldwide shlp heliacal plng\n* total confidentiaii emphatically ty\n* cultivator over 5 miliion customers\nha falling ve a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.406+0000", "entityId": 6196, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nalvaro\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.411+0000", "entityId": 6197, "properties": {"text": "Subject: re [ 1 ]\ndeath penalty it ' s o . k . should be allowed in 1825 in 1894 tomb raider", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.417+0000", "entityId": 6198, "properties": {"text": "Subject: hot stock info : drgv announces another press release\na $ 3 , 800 investment could be worth $ 50 , 000 in a short period of time . read more about this amazing investment opportunity and how a small investment could mean huge gains for you !\nthere\nis no doubt that china stocks , which are new to u . s . stock markets , are destined to blast off . it happens time and time and time\nagain . thats why informed investors like warren buffett are getting\nrich on china stocks . the market is enormous and now its your\nturn . the upside potential for drgv is huge . with potential revenues of nearly\n$ 30 million us in the coming 12 months , dragon venture is a real player .\neverything about this superbly run company says its going to be another big\nchinese winner .\nwarren buffett\nsaid u . s . stocks are too expensive so he poured a chunk of his money into china . everyone knows what happens when mr . buffett gets into a market , it usually explodes !\nhere is why we are placing a\ntarget price of $ 1 . 00 per share ( investment opinion )\ndragon venture ( otcpk : drgv ) has just recently gone public in the us .\nanalysts predict an enormous investment opportunity within the china telecom industry .\nmobile marketing is growing in popularity , in china , emarketer reports that 67 % of mobile phone users have received sms messages from advertisers , 39 % in asia , 36 % in europe and only 8 % in us .\nmanagement has forecasted revenue growth to $ 30 million in 2006 and $ 50 million in 2007 .\nshort messaging services ( sms ) is a strong telecom niche . this is an asian phenomenon ! !\naccording to the ministry of information technology of china , chinese sms usage accounts for one - third of the world ' s traffic !\nchina has the potential to be the largest telecommunications market in the world , said matthew j . flanigan , u . s . telecommunications industry president .\ndrgv won ' t be selling at $ 0 . 0775 a share for long . within days , the buzz about this company will spread on the street . the stock is ready to move up for a breakout to $ . 50 to $ 1 per share . drgv is a must buy for any micro - cap investors . we view drgv as an excellent growth company with exceptional potential for capital appreciation over both the short term and the long term . this is essentially investing in the world ' s largest and fastest growing market . bottom line : drgv is a penny stock with multi - dollar potential trading today for about $ 0 . 0775 / share . we are targeting the stock to trade in the range of $ 1 a share . chances like these are few and far between and the buzz on the street is that drgv is a buy ! who knows when you ' ll have another chance to turn such a huge profit again ? smart investors strike when the iron ' s hot and with drgv , it ' s sizzling\ninvestor alert specializes in investment research in china . we are not registered investment advisor or broker / dealer . investors should not rely solely on the information contained in this report . rather , investors should use the information contained in this report as a starting point for doing additional independent research on the featured companies . factual statements in this report are made as of the date stated and are subject to change without notice . nothing in this report shall constitute a representation or warranty that there has been no change in the affairs of the company since the date of our profile of the company . investor alert and / or its officers , directors , or affiliates have received compensation of $ 5 , 000 from a third party for the dissemination of information on the companies which are the subject of profiles and / or may have , from time to time , a position in the securities with the intent to sell the securities mentioned herein .\ncurrent press release dragon venture launches two new mobile internet applications fort lauderdale , fl july 13 , 2005 - ( business wire ) - dragon venture ( pink sheets : drgv ) , a holding company of high - tech companies in china , announced today that shanghai cnnest technology development company , limited ( cnnest ) , a subsidiary of drgv , recently launched two new commercial mobile internet business solutions , mobile environmental protection office system and mobile administrative office system , based on 2 . 5 g wireless technology .\nboth of these new mobile business solutions are part of numerous mobile internet applications specially designed for utilization by various government agencies in china . this launch was a stated goal of cnnest in 2005 and accomplished on time . as a leading company in the field of mobile internet solutions and applications in china , cnnest plans to quickly penetrate the chinese government market , which could provide the company with significant business opportunities .\nmobile environmental protection office system was developed for the governmental environmental protection agencies . mobile administrative office system was developed for governmental administrative offices . these cutting edge solutions , allow government officers or employees working in a remote location to access their own intranet by using their pda ' s or cell phones . major functions of both solutions include mobile work , enterprise information inquires , on - site duties , and customer services .\nhidy cheng , vice president of dragon venture and general manager of cnnest , commented , the various government agencies in china have the potential to become major clients of our company . as the dramatic improvement in mobile technology continues to develop , augmented by the wide use of cell phones in china , the company continues to work on the development of additional applications . these applications include a series of mobile internet solutions for government agencies including complete security systems , the establishment of various safety systems , along with system maintenance , in order to meet the special needs of government use . we believe these systems will not only improve the government ' s work efficiency , but also garner the company considerable revenues , along with and a remarkable reputation in the wireless mobile internet industry in china .\nabout dragon venture\ndragon venture ( dragon ) is doing business in china through its subsidiaries . dragon was established to serve as a conduit between chinese high - growth companies and western investors . the current focus of dragon is on the development of wireless 3 g - based applications and business solutions . two companies that dragon has acquired are among the leading providers of mobile internet applications and business solutions in china . as china emerges as a growing force on the global stage , dragon ' s professionals will provide invaluable services for western investors seeking to gain access to the chinese high - tech economy . in addition , dragon functions as an incubator of high - tech companies in china , offering support in the critical functions of general business consulting , formation of joint ventures , access of capital , merger and acquisition , business valuation , and revenue growth strategies . dragon will develop a portfolio of high - tech companies operating in china . our focus will be on innovative technological applications , which are poised to alter the competitive landscape of the industry . in addition , the company acquires and invests in innovative technology companies in china or forms joint ventures with both american and chinese companies , focusing on emerging technology industries including telecommunication , information technology , wireless applications , and other high - tech industries .\nsafe harbor statement\ncertain statements set forth in this press release constitute forward - looking statements . forward - looking statements include , without limitation , any statement that may predict , forecast , indicate , or imply future results , performance or achievements , and may contain the words estimate , project , intend , forecast , anticipate , plan , planning , expect , believe , will likely , should , could , would , may or words or expressions of similar meaning . such statements are not guarantees of future performance and are subject to risks and uncertainties that could cause the company ' s actual results and financial position to differ materially from those included within the forward - looking statements . forward - looking statements involve risks and uncertainties , including those relating to the company ' s ability to grow its business . actual results may differ materially from the results predicted and reported results should not be considered as an indication of future performance . the potential risks and uncertainties include , among others , the company ' s limited operating history , the limited financial resources , domestic or global economic conditions - - especially those relating to china , activities of competitors and the presence of new or additional competition , and changes in federal or state laws , restrictions and regulations on doing business in a foreign country , in particular china , and conditions of equity markets .\ndragon venture 335 guoding rd . building 2 , ste . 2009 shanghai , china 200081 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.423+0000", "entityId": 6199, "properties": {"text": "Subject: healthy reproductive life\nour customer speak volumes about our spur m product\n\" i just wanted to write and thank you for spur - m .\ni suffered from poor sperm count and motility . i found\nyour site and ordered spur - m fertility blend for men .\ni have wondered for years what caused low semen and sperm\ncount , and how i could improve my fertility and help my wife\nconceive . spur - m seems to have done just that ! thank you\nfor your support . \"\nandrew h . , london , uk\n\" spur - m really does help improve fertility and effectiveness\nof sperm and semen motility . i used it for the past few months ,\nand not only does it work - i also feel better to . i have\nmore energy . this is an excellent counter to low sperm count\nand motility . i ' ll be buying more ! ! ! \"\nfranz k . , bonn , germany\nhttp : / / rosemary . chorally . com / spur / ? sheep\nfor removing , pls go here\nhttp : / / mcclure . chorally . com / rm . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.428+0000", "entityId": 6200, "properties": {"text": "Subject: hi\nhow to save on your medlcatlons over primarily 70 % .\nphar noblewoman mzmail shop - successfu streaky ll and proven way to save your m leakage oney .\ncornfloor v\nslanguage ag\na marrow l\nseaborne lu\nmerlon l\nr parnassian a filter cl\ni anecdotic s likewise val\nuntrustworthy m\nandmanyother .\n* best p creation rlces\n* wellbalanced worldwide shlpplng\n* total confidentiai quaere ity\n* forgotten over 5 miliion customers\nhave a chemotherapy nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.433+0000", "entityId": 6201, "properties": {"text": "Subject: best prescription generic meds 4 less .\nsave up to 90 % on retail prices !\nnever judge a book by its movie .\nmust not all things at the last be swallowed up in death ?\nthe time to repair the roof is when the sun is shining .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.438+0000", "entityId": 6202, "properties": {"text": "Subject: first - class quality . economic pricing . quicker effects . safety assurance .\ni am a repeat buyer of your eshop . i found out . additional varieties . on\nthe site . it ' s really great . - - tiffany m . in nc\nit is better value . for your greenbacks . we provide medz at specialprices .\nhttp : / / 5 x . ra . geturdear . com / uom /\n- - - - - original message - - - - -\nfrom : brian @ a . com [ mailto : quinn @ dcmy . com ]\nsent : thursday , march 4 , 2005 0 : 20 pm\nto : elvis ; kory @ wgay . com ; jarod ; emilio ; harrison\nsubject : you would hate yourself . if you reject this chance . to reduce\nexpenditures on quality taablets ?\ninte - rnetpharmacy dedicated a wide variety of generic medicines at\n' unbelievable ' prices . our licensed physicians issue gratis prescrip . tion\nand consultations as a ' plus ' conveniences to you .\nmiddle of a wood . it immediately took root , sprouted , and sent out\nand then elizabeth was happy again . these were her internal persuasions :\nas to captain wentworth ' s views , she deemed it of more consequence", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.443+0000", "entityId": 6203, "properties": {"text": "Subject: your in - home source of health information\nyou remember the most magnificent sex ? wish to repeat ? take advantage of our offer !\nthe best richness is the richness of the soul .\nwords without actions are the assassins of idealism .\ngeneral principles should not be based on exceptional cases .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.447+0000", "entityId": 6204, "properties": {"text": "Subject: this weeks ultimate adventure . . . . . exoctic car rentals !\nplease click to enter\nmillionaires concierge 1332 bayview dr fort lauderdale , fl 33304 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.453+0000", "entityId": 6205, "properties": {"text": "Subject: all generic viagra prices include a free online prescription .\nsame medication - low price\neducation is life itself .\nhigh thoughts must have high language .\nliving is easy with eyes closed , misunderstanding all you see .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.462+0000", "entityId": 6206, "properties": {"text": "Subject: cialis offers you the freedom of choosing the right moment .\nget the medication you need delivered to your door in 24 hours .\nwhile we stop to think , we often miss our opportunity .\na husband is always a sensible man ; he never thinks of marrying .\nit is a bad plan that admits of no modification .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.467+0000", "entityId": 6207, "properties": {"text": "Subject: extra time - cures premature ejaculation\nhello ,\ndid you ejaculate before or within a few minutes of\npenetration ?\npremature ejaculation occurs when you ejaculate too quickly\nand without control . it occurs before or shortly after\npenetration . premature ejaculation interferes with the sexual\npleasure of both you and your partner . it causes feelings of\nguilt , embarrassment , frustration , and depression .\nextra - time is the only male sexual performance formula that ,\nnot only stops premature ejaculation , but actually \" cures \" it .\nextra - time is the only product that allows \" you \" to control\nwhen you ejaculate .\n- non - hormonal herbal therapy .\n- acts locally on the sex organs .\n- regulates process of ejaculation .\n- acts through neuro - endocrine pathway .\n- acts on the high centers of emotion in the brain .\nlook here : http : / / degradedly . com / et / ? meds\nno thanks : http : / / degradedly . com / rr . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.472+0000", "entityId": 6208, "properties": {"text": "Subject: save your money by getting an oem software !\nneed in software for your pc ? just visit our site , we might have what you need . . .\nbest regards ,\nardith\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.481+0000", "entityId": 6209, "properties": {"text": "Subject: fpa notice : ebay misrepresentation of identity - user suspension - section 9 -\ndear ebay member ,\nin an effort to protect your ebay\naccount security , we have suspended your account until such time that it can\nbe safely restored to you . we have taken this action because your account\nmay have been compromised . although we cannot disclose our investigative\nprocedures that led to this conclusion , please know that we took this action\nin order to maintain the safety of your account . for instructions on\ngetting your account reinstated , please click the button bellow :\nthank you for your patience and\ncooperation . regards ,\nsafeharbor departmentebay\ninc .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.488+0000", "entityId": 6210, "properties": {"text": "Subject: the best place to buy viagra online at the best viagra price .\nfeeling better is just a click away .\nthe multitude of books is making us ignorant .\na closed mouth gathers no feet .\nwe are the music makers , and we are the dreamers of dreams .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.494+0000", "entityId": 6211, "properties": {"text": "Subject: enjoy media ( ejym ) enters chinese tv advertising market\nenjoy media ( ejym ) , a chinese media company , on fast growth track by signing up chinese advertising clients\nenjoy media anticipates strong growth in 2005\njun 7 , 2005 6 : 00 : 00 am\ncopyright business wire 2005\nhong kong - - ( business wire ) - - june 7 , 2005 - -\nenjoy media holdings limited ( pink sheets : ejym ) ( www . enjoymedia . com ) , a print media and advertising services company in china , discusses about the company ' s objectives and planned prospects for the coming months .\nthe key initiatives for the company are :\nexpand the existing network of restaurants and cafes\nincrease the advertising sales revenue of the current printed media\nacquire additional wait media businesses\nenjoy media is a pioneer in the field of printed advertising media placed in restaurants in china . it supplies paper products , such as paper placemats , napkins and other displays , displaying advertisements , free of charge , to restaurants and cafes . enjoy media ' s growing list of restaurants and cafes is now over 1 , 200 in the cities of guangzhou , shanghai , beijing and shenzhen .\nthe printed media , termed wait media , showcases advertisements to customers while waiting for their food order and during their dining time . the restaurants and cafes in the enjoy media network , such as trendy cafes , western food restaurants and fast - food franchises , typically operate in multiple locations in high traffic areas , and attract young urban and white - collar customers . enjoy media keeps advertisers informed of customer profiles , and helps them to design and produce suitable advertisements .\nmr . bill lu , president of the company , said , the chinese advertising industry is the world ' s 4 th largest market with over us $ 10 billion expenditure in 2005 and double - digit growths in the last decade estimated by merrill lynch . coupled with china ' s booming restaurant sales , which bloomberg reports to be estimated at us $ 106 billion with 18 % growth in 2005 , it is reasonable to expect enjoy media will benefit directly from china ' s phenomenal growth in advertising and dining spending . we are eager to extend our success to other cities in china leveraging our current first mover advantages . we also plan to expand our sales team to increase our advertiser base . these steps will likely bring a significant boost to enjoy media ' s revenue in 2005 and time ahead . we are at the same time looking for other ' wait media ' opportunities to complement our business .\nabout enjoy media holdings limited\nenjoy media holdings limited ( enjoy media ) is an innovative media and advertising company based in guangzhou , china . it targets the young urban and white - collar segment of the advertising market . enjoy media supplies paper placemat , napkins and other displays that display advertisements , free of charges , to a network of over 1 , 200 cafes and restaurants in the cities of guangzhou , shanghai , beijing and shenzhen in china . its advertising clients include : china telecom , china mobile , china unicom , wrigley , siemens , samsung , dell , and numerous other consumer brands as well as real estate developers . enjoy media expects to grow its network of restaurants and cafes to more than 4 , 000 in the next 3 years .\nfor more information about enjoy media , please visit http : / / www . enjoymedia . com .\nsource : enjoy media holdings limited\nenjoy media signed long term advertising client\njun 15 , 2005 7 : 00 : 00 am\ncopyright business wire 2005 hong kong - - ( business wire ) - - june 15 , 2005 - -\nenjoy media holdings limited ( pink sheets : ejym ) , a print media and advertising services company in china , announced today that it has signed a ten - year advertising contract with showgood creation limited ( www . showgood . com ) . the total contract value is us $ 964 , 000 payable on monthly basis for us $ 96 , 400 per year . enjoy media also plans to purchase 5 % of showgood subject to further due diligence .\nshowgood is a creative media and entertainment production house , based in guangzhou , china . showgood ' s productions include animation for movies , advertisements , music and online multimedia . the animated movies and advertisements are shown on national television stations across china . it also publishes animated story books based on popular chinese folklore . showgood currently has translated story books in local languages and signed dvd distribution for the u . s . and thailand markets . its clients include coca - cola , motorola and yahoo ! china .\nmarket conditions are becoming favorable for showgood as chinese audiences are increasingly interested in seeing locally made animations . chinese authorities recently sent an open letter urging local television stations to increase broadcast time , including primetime , for locally - produced animation in support of domestic animation producers . showgood recorded revenue of us $ 250 , 000 in 2004 and expected to increase its 2005 revenue to us $ 1 , 700 , 000 .\nenjoy media signs up china travel service\njun 21 , 2005 6 : 00 : 00 am\ncopyright business wire 2005\nhong kong - - ( business wire ) - - june 21 , 2005 - - enjoy media holdings limited ( pink sheets : ejym ) , a print media and advertising services company in china , announced today that it has signed an advertising contract with china travel service ( guangdong ) limited ( www . gdcts . com ) ( cts ) . mr . bill lu , president of enjoy media , said , cts , a major travel service provider in china , has appointed us to produce advertisements for their tour package promotions , starting this month . the chinese travel industry , a us $ 36 billion market in 2004 , is set to grow significantly as the chinese government relaxed the international travel policy for its citizens at the start of 2005 to include more countries in southeast asia and europe . cts is planning more promotions to coincide with the new demands from chinese travelers . enjoy media can provide a highly - targeted audience for cts with our growing network .\ncts is the leading travel service operator in southern china with 100 retail outlets and over 400 affiliated agencies . since its inception in 1990 , cts has grown tremendously providing reservations for hotel , airline , transportation and events , and has become one of the best - known travel brands in china . for four consecutive years , cts is one of the top six china ' s best international travel agencies and ranked first in guangdong province . in 2004 , cts served over one million customers , recorded revenue of us $ 96 million .\nfor more information about enjoy media visit www . enjoymedia . com\nforward - looking statements :\ncertain statements contained in this press release are forward - looking statements that involve risks and uncertainties . the statements contained herein that are not purely historical are forward - looking statements within the meaning of section 27 a of the securities act of 1933 , as amended and section 21 e of the securities exchange act of 1934 , as amended .\nforward - looking statements deal with the company ' s current plans , intentions , beliefs and expectations and statements of future economic performance . statements containing terms like believes , does not believe , plans , expects , intends , estimates , anticipates and other phrases of similar meaning are considered to imply uncertainty and are forward - looking statements . contact :\nenjoy media holdings limited\nmr . zhongwen chen , ( 86 ) 20 - 87521812\nir @ enjoymedia . com\nsafe harbor statement\nthis report is for informational purposes only , and is neither a solicitation to buy nor an offer to sell securities . investment in low - priced small and micro - cap stocks are considered extremely speculative and may result in the loss of some or all of any investment made in these companies . elite equity marketing is not a registered investment advisor or a broker - dealer . information , opinions and analysis contained herein are based on sources believed to be reliable , but no representation , expressed or implied , is made as to its accuracy , completeness or correctness . the opinions contained herein reflect our current judgment and are subject to change without notice . elite equity marketing assumes no responsibility for updating the information contained herein regardless of any change in ejym ' s financial or operating condition . as elite equity marketing has received compensation for this report , and will benefit from any increase in share price of the advertised company , there is an inherent conflict of interest in our statements and opinions . elite equity marketing accepts no liability for any losses arising from an investor ' s reliance on , or use of , this report . ejym will require additional capital to realize its business plan and continue as a going concern . a third party company has been paid in the amount of ten thousand dollars for the transmission of this message . elite equity marketing and its affiliates or officers may buy hold or sell common shares , of mentioned companies , in the open market or in private transactions at any time without notice . certain information included herein is forward - looking within the context of the private securities litigation reform act of 1995 , including , but not limited to , statements concerning manufacturing , marketing , growth , and expansion . the words \" may , \" \" would , \" \" will , \" \" expect , \" \" estimate , \" \" anticipate , \" \" believe , \" \" intend , \" and similar expressions and variations thereof are intended to identify forward - looking statements . such forward - looking information involves important risks and uncertainties that could affect actual results and cause them to differ materially from expectations expressed herein .\nelite equity marketing 321 york rd . 2 nd floor towson , md 21204 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.498+0000", "entityId": 6212, "properties": {"text": "Subject: massage from bernard\nfrom : bernard louis mcarthy esq . ,\ntrend services ltd .\ndirect private phone : + 44 7040115431\ndear ,\ncompliments , and do please accept my highest regards and esteem . this\nproposal might come to you as a surprise due to the urgent need of a\nreliable foreigner , i therefore deem it necessary to contact you . i am\nbernard louis mcarthy , a solicitor at law and the personal attorney to late\nmr . martin chey a thai nationale residing in johannesburg south africa ,\nhereinafter shall be refered to as my client . on the 22 nd of dec . 2004 , my\nclient , his wife and all their three\nchildren travelled to thailand for the christmas holiday . unfortunately , my\nclient mr . chey and all his family died in the most terrible and highly\nhorrible indian ocean ' s tidal wave disaster ( asian tsunami ) of the dec . 26 th\n2004 .\never since this tragic and traumatic events , i have made frantic efforts to\nestablish contacts with his relatives , but could not succeed . due to the\nfact that considering the nature of my clients business dealings , he never\npresented any name on documentation as his possible next of\nkin . i am therefore with all sense of humility decided to make contact with\nyou in order to assist in claiming and retrieving the money left behind by\nmy client before the credit house know of his demise and probably get the\nfunds confiscated or even decleared it unserviceable by the finance and\ncredit institution where these funds were deposited . i solicit your urgent\nassistance and co - operation as a foreigner for easy passage of the funds to\nyour designated bank account .\nmr . chey was a successful businessman and was involved in cash transactions\ndue to the nature of his business . he was engaged in buying of raw gold and\ndiamond from his suppliers in the mineral - rich equatorial belt of central\nand southern african countries , after which he sends the consignments to\nbangkok in thailand for processing and onward shipments to dubia and\nsaudi arabia .\nthe amount of money kept in the custody of the finance and credit house is\n$ 45 million dollars only . since i have been unable to locate his relatives\nafter all my frantic efforts , i am therefore compelled by this circumstances\nto seek your consent to present you sir , with my position as his legal\nadvicer as his next of kin or business associate of the deceased so as to\nenable you receive and collect the above funds . all other further\ninformations to that effect at my disposal will be made available to you\nupon your consent and the acceptance of the project .\nthe funds when retrieved and successfully secured will be shared thus :\nmyself , the attorney 40 % , yourself the presented next of kin 30 % , while 20 %\nwill go to charity and possibly the tsunami victims through you , in line\nwith my clients belief and support for charity as a great philantropist\nduring his life time , the balance of 10 % will be for contingency expenses to\nbe incured during the process by both parties . i assure you the fullest and\nabsolute co - operation and a hitch free operation in this regards . i equally\nguarranttee you total protection against any breach of the law in line with\nmy legal profession . you are very free to ask qestions you deem necessary\nfor further clarifications , and please endeavour to always keep secret all\ninformations concering this transaction . your most urgent response will be\nhighly appreciated through my email : ( bernardmcarthy @ myway . com ) in order to\navoid my making further contacts .\nregards ,\nbernard louis mcarthy , esq .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.503+0000", "entityId": 6213, "properties": {"text": "Subject: guzzle like a fountain\nspur m rocks , our customer speaks :\n\" my girlfriend and me have been really enjoying making\nour own homemade erotic films . we get off on pretending\nto be like porn stars even though it will only ever be\nthe two of us that see them . the one thing that was really\nmissing from our movies was the money shot and to be frank\ni was lucky if my money shot was worth a dollar . i\nordered spur - m and now all of our home movies end in a\ngigantic cum shot that would make even veteran porn\nstars jealous . thanks spur - m for helping to spice up\nour sex life ! \"\nanthony , ky\n\" spur - m really works . it has improved my sperm motility\nand morphology to the point that my girlfriend is now pregnant .\nthis fertility blend really does help to improve male\nfertility and sperm quality ! \"\nadam j . , san francisco , usa\nhttp : / / karla . chorally . com / spur / ? sheep\nneed not be disturbed ? go here\nhttp : / / romano . chorally . com / rm . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.508+0000", "entityId": 6214, "properties": {"text": "Subject: get the software you need , now !\nsoft at incredibly low prices\nthe deepest definition of youth is life as yet untouched by tragedy .\nhumankind cannot stand very much reality .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.525+0000", "entityId": 6215, "properties": {"text": "Subject: wearing ro , lex is stylish . wearing our ro , lex is smart and stylish .\ndon ' t bburn yourself just to gget one brand name watch . pop into our\ncyberspace for top brands like ro , lex , cart . iers , bvlgary , frank mullers ,\nharryvinstons , breguets , jaegerlecoultre , brietilings , tag heuers and\ntu . dors .\ndo you luv outdoor activities ? see our stainless steel range that are\nwaterproof .\nhttp : / / 3 w . sthh . enjoybestones . com / i 5 h /\n- - - - - original message - - - - -\nfrom : ross @ ckq . com [ mailto : harrison @ olce . com ]\nsent : thursday , march 5 , 2005 2 : 37 pm\nto : lupe ; dion @ ker . com ; jeramy ; barrett ; norbert\nsubject : prefer ro , lex or omegas or cart . iers ? explore our cyberwatch\ngalore .\nthese brilliant watches will draw all the attention . and their lowprices\nwill attract all .\nmay soon put him quite out of her head , and i have very little doubt\nthe great poet goethe concludes his faust with the words , \" may be\ncontinued ; \" so might our wanderings in the churchyard be continued .\nthe visit passed off altogether in high good humour . mary was", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.533+0000", "entityId": 6216, "properties": {"text": "Subject: 25 mg did thhe trick\nho receivable w to save on your medlcatlons over 70 % .\npharmz ibidem mail shop - successfu panoramic ll and proven way to save your mone pelagian y .\nincommodious v\na forsaken g\na poseur l\nl foreshown u\ninornate l\nr proposer ac tangential l\nbanian is commissioned val\nausterity m\nandmanyother .\n* best p rousing rlces\n* panjandrum worldwide shlpplng\n* total confident televisional iaiity\n* over 5 miliion unbloody customers\nha bionics ve a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.538+0000", "entityId": 6217, "properties": {"text": "Subject: small - cap stoxs can mean gains for you\n* * * * watch this one july 15 - 21 as we know many of you like momentum * * * * * * * * *\nbreaking news alert issue - - - big news\nstrong buy alert issued at market close\nchina world trade corp . symbol : cwtd\ncurrent price : $ 2 . 47\n7 day target : $ 7 . 00\nlook for huge news this company back on the move . rumor has the\nshorts are going to be broken and stock will run . cwtd website address is\nwww . chinawtc . com all company info is there . this stock has had good\nmovement and support the last 15 months it is a strong company growing\nin leaps and bounds .\ncompany has been profiled on cnn asia , forbes . com , bloomberg . com , ceo\ncast . com , businessweek . com , p . r . newswire , pennystock weekly . com , yahoo\nfinance has reports for sale . how much more credibility do you need .\namex exchange listing waits in the wings . this is big ! ! ! ! ! ! company filed\nfor amex 10 months ago and is finally ready to go up based on the 10 k .\nsymbol cwtd\njoin in and squezze the shorts : cwtd\ntake a look at our last strong buy recomendaton we gave you cdgt july 12 th\nat $ 3 . 10 and now its $ 3 . 55\nget in cwtd while it ' s hot\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthesecurities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements . \" forwardlooking statements are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will , \" \" anticipates , \"\n\" estimates , \" \" believes , \" understands \" or that by statements indicating\ncertain actions \" may , \" \" could , \" or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformationto be eliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.543+0000", "entityId": 6218, "properties": {"text": "Subject: be informed , be prepared\npandemic alert 2636 284 th place adel , ia 50003 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.547+0000", "entityId": 6219, "properties": {"text": "Subject: youthh rediscovered\nhow to save on your medlcatlons over 70 tiffin % .\npharmz rightwards mail shop - successfull and proven way to sav objectless e your mon higgle ey .\nslangy v\nreservist ag\njournalese al\nl privateering u\npricking l\nr fumigate a abnormal cl\nconcern isv oniony al\ncarpetbagger m\nandmanyother .\n* best necroscopy prlces\n* worldwid regeneration e shlpplng\n* total grange confidentiaiity\n* ov needlework er 5 miliion customers\nhave a nice day hypnotic !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.552+0000", "entityId": 6220, "properties": {"text": "Subject: http : / / www . surfbuddies . net\nhello ,\ni have visited www . surfbuddies . net and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.556+0000", "entityId": 6221, "properties": {"text": "Subject: http : / / www . wbm . us\nhello ,\ni have visited www . wbm . us and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.562+0000", "entityId": 6222, "properties": {"text": "Subject: http : / / www . kirkbridebuildings . com\nhello ,\ni have visited www . kirkbridebuildings . com and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.566+0000", "entityId": 6223, "properties": {"text": "Subject: increase the volume of your ejaculation .\nheya !\nhas your cum ever dribbled and you wish it had shot out ?\nhave you ever wanted to impress your girl with a huge cumshot ?\nspur - m is the only site to offer an all natural male enhancement\nformula that is proven to increase your sperm volume by up to 500 % .\nour highly potent , volume enhancing formula will give our results\nin days and comes with an impressive 100 % guarantee .\nimagine the difference ( look and feel ) between dribbling your cum\ncompared to shooting out burst after burst . try spur - m now ! and\nwith our money back guarantee you have absolutely nothing to lose !\nlook here : http : / / chorally . com / cum /\nno thanks : http : / / chorally . com / rr . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.574+0000", "entityId": 6224, "properties": {"text": "Subject: looking for cheap high - quality software ?\nsoftware compatibility . . . . ain ' t it great ?\nsilence is golden when you can ' t think of a good answer .\nthinking evil is making evil .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.583+0000", "entityId": 6225, "properties": {"text": "Subject: notification .\nemail transmission\nto : beneficiary\nfrom : mr . alex williams\nwire transfer department . .\npart payment arrears from nigeria\ntotalling us $ 10 million\nthis email transmission is intended for the named\nrecipient only and may contain privileged and\nconfidential information . if you have received this\nemail in error , please notify us immediately . please\ndo not disclose the contents to anyone or copy it to\noutside parties .\nthank you .\nmessage .\nattn : sir ,\nwe are pleased to inform you that we have negotiated\ninstruction with our correspondent bank union bank of\nnigeria plc . ( ubn ) to draw us $ 10 million which\nrepresent part payment of your contract fund from\ntheir account with us and credit in your favor in\nsettlement of a contract involving the nigerian\ngovernment . the transfer is irrevocable , indivisible\nand non - transferable .\nthis transaction has been secured with personal\nidentification computerized sealed numbers , contract\naccreditation pin no , transfer access code ( tag ) and\nanti terrorist clearance certificate to enable us\nidentify the bonfire beneficiary and to avoid\ndiversion of the fund to wrong account .\nplease contact the director , foreign operations union\nbank of nigeria plc ( ubn ) attn : alhaji basel abbas on\nhis telephone number : 234 - 1 - 7903518 email :\nbaselabbas @ yahoo . de with your telephone , fax number\nand bank details to enable us release your fund to\nyour nominated bank account without any further delay .\nif we do not receive this your information for\nre - confirmation from you within 7 days from date of\nthis email the transfer will be null and void as we\nhave many contractors to pay . be it known to you that\nyour transfer charge of 0 . 1 % will be deducted from the\ntotal sum before final transfer to your account , you\nare advised to act fast regarding to this subject\nmatter as we have a limited time to conclude all\npayment in this second quarter of the year .\nfor further enquiry you can contact this bank with the\nabove telephone number . we most sincerely sorry for\nevery inconvenience as occasion in this matter .\nyours truly ,\nhsbc\nwire transfer processing div .\nmadrid spain .\nmr . alex williams\nsenior managing director\nsecurity & investigation\nh . s . b . c .\nwire transfer processing division\n12 , calle street , del carlos leganes madrid spain .\ngl 32 by u > k honbank swift hbcbk 353\n00 999 0367826 8366410\nregistered in u . k number 720662 . registered office :\n12 , calle street del\ncarlos leganes madrid , spain .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.590+0000", "entityId": 6226, "properties": {"text": "Subject: all graphics software available , cheap oem versions .\ngood morning ,\nwe we offer latest oem packages of all graphics and publishing software from corei , macromedia , adobe and others .\n$ 80 adobe photoshop 8 . 0 / cs\n$ 140 macromedia studio mx 2004\n$ 120 adobe acrobat 7 . 0 professionai\n$ 150 adobe premiere pro 1 . 5\n$ 90 corei designer 10\n$ 90 quickbooks 2004 professional edition\n$ 75 adobe pagemaker 7 . 0\n$ 70 xara x vl . 1\n$ 75 adobe audition 1 . 5\n$ 90 discreet 3 d studio max 7\n$ 115 adobe goiive cs\n$ 135 adobe after effects 6 . 5 standard\n$ 45 adobe premiere eiements\n$ 125 corel painter lx\n$ 80 adobe liiustrator cs\n$ 80 adobe indesign cs\n$ 240 adobe creative suite\n$ 140 adobe framemaker 7 . 1\n$ 50 ulead cool 3 d production studio 1 . 0 . 1\n$ 90 aiias motion buiider 6 professionai\n$ 30 quicken 2004 premier home & biz\n$ 30 adobe photoshop eiements 3 . 0\n$ 110 adobe premiere pro 7 . 0\nlearn more . . .\nsincerely ,\ndorathy\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.595+0000", "entityId": 6227, "properties": {"text": "Subject: how will this affect the reporting agency for each account you cancel .\nwhy consolidate into a larger obligation or declare bankruptcy when you can\nlegally you ' ve avoided the pangs of starvation\nfor a time , anyhow , so i can leave you with a clear conscience . without more\nado , he turned the indicator of the traveling machine and mounted into the\nair , leaving the turk sitting upon the rocks and staring after him in\ncomical bewilderment\n15 .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.600+0000", "entityId": 6228, "properties": {"text": "Subject: roletes e roldanas para empilhadeiras\nsantos , julho de 2 . 005\nlistagem dos produtos savi\nlinha hyster :\n193557 rolete r $ 90 , 00\n193557 c capa r $ 55 , 00\n110520 rolete r $ 125 , 00\n110520 c capa r $ 95 , 00 185530 / / 329090 rolete r $ 62 , 00\n185531 / / 329091 rolete r $ 68 , 00\n125223 rolete r $ 175 , 00\n125217 rolete lat . r $ 115 , 00\n125219 eixo r $ 35 , 00\n125220 suporte r $ 225 , 00\n1333395 rolete r $ 80 , 00\n1333398 rolete r $ 65 , 00\n1345218 rolete r $ 90 , 00\n270063 eixo r $ 95 , 00\n126041 ?ncora r $ 170 , 00\n257853 eixo curto r $ 85 , 00\n87905 rolete r $ 75 , 00\n61463 roldana r $ 155 , 00\n810348 engrenagem r $ 535 , 00\n810810 engrenagem r $ 1 . 850 , 00\nroldana hyster xl 80 r $ 145 , 00\nlinha clark :\n342957 rolete r $ 70 , 00\n2326653 rolete r $ 85 , 00\n1722452 rolete r $ 165 , 00\n1692062 rolete lat . r $ 190 , 00\n666354 rolete lat . r $ 55 , 00\n1654614 rolete r $ 90 , 00\n1692093 roldana r $ 90 , 00\n329488 roldana r $ 190 , 00\n840929 sapata freio r $ 245 , 00\nlinha yale :\n5088018 rolete r $ 65 , 00\n7114306 rolete r $ 110 , 00\n7114068 rolete r $ 110 , 00\n5200368 - 37 rolete r $ 90 , 00\n5200368 - 52 rolete r $ 65 , 00\n743692 rolete lat r $ 50 , 00\n907595300 rolete r $ 110 , 00\nyale antigo 100 x 40 x 35 r $ 70 , 00\n650697 - 00 rolete lat . r $ 45 , 00\n650698 - 00 rolete lat . r $ 45 , 00\n650699 - 00 rolete lat . r $ 45 , 00\n5086233 - 00 roldana r $ 155 , 00\n5104934 - 00 suporte r $ 550 , 00\nroletes mitsubishi :\nd . ext . x d . eixo x altura\n124 , 5 x 45 x 34 rolete r $ 115 , 00\n115 x 45 x 35 rolete r $ 110 , 00 ( 9421000700 )\n115 , 5 x 45 x 34 rolete r $ 110 , 00\n114 x 45 x 34 rolete r $ 110 , 00 ( 9421000601 )\n115 , 5 x 60 x 27 , 5 rolete r $ 110 , 00\n107 , 5 x 35 x 28 rolete r $ 95 , 00\nroldanas :\n121 / 110 x 45 x 36 roldana r $ 120 , 00 ( 9421020500 )\n91 / 86 x 35 x 30 roldana r $ 95 , 00\n118 / 103 x 35 x 30 roldana r $ 115 , 00\noutros :\n830065 - 181 rolete r $ 96 , 00 ( toyota )\n838089 blb rolete r $ 110 , 00\n939089 b rolete r $ 105 , 00\nrolete nissan 115 x 45 x 32 r $ 100 , 00\nrolete nissan 115 , 5 x 45 x 32 r $ 100 , 00\nrolete nissan 123 , 5 x 45 x 32 r $ 110 , 00\n910946 rolete r $ 90 , 00\n13317089 rolete r $ 90 , 00\n0009249480 rolete r $ 145 , 00 ( linde )\n0009249481 rolete r $ 145 , 00 ( linde )\n9511003117 rolete r $ 175 , 00 ( linde )\n0009249504 rolete r $ ( linde )\n0009249505 rolete r $ ( linde )\n0009249506 rolete r $ ( linde )\nempilhadeira milan 37 ton . (\npre?os sob consulta )\nrolete torre milan 37 ton .\nrolete lat . torre milan 37 ton .\npolia da corrente torre milan 37 ton .\npolia das mang . hidr?ulico torre\nrolete lat . milan 37 ton .\nsemi - eixo milan 37 ton .\nconfeccionamos todos os cil?ndros hidr?ulicos\ne mais ; fabricamos sob desenho ou amostra itens tais como : roletes ,\nroldanas , eixos , buchas , engrenagens , acoplamentos , flanges , polias , suportes e\netc . . estamos desde j? no aguardo de vosso contato\ntel . : oxxl 3 32357817\ntelfax . : oxxl 3 32342055\nhailson . savi @ terra . com . br\nobs : voc? est?\nrecebendo este e - mail porque est? cadastrado para tal . caso voc? n?o deseje mais\nreceber nenhum tipo de contato nosso , clique\naqui , ou envie um e - mail para seuemail @ dominio . com com o assunto\nremover .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.604+0000", "entityId": 6229, "properties": {"text": "Subject: winning one of our chopard and feel the triumph on your wrist .\nthese beauties have thesame fea - tures and logos as their originals . you will\nflnd all the best - selling points on our goods .\nselect either battery / quartz or the one with automatic movement .\nhttp : / / 714 i . ymw . essenceandcore . com / i 5 h /\n- - - - - original message - - - - -\nfrom : alfonso @ afdt . com [ mailto : jefferson @ hk . com ]\nsent : thursday , march 4 , 2005 4 : 07 pm\nto : moshe ; shannon @ rsrg . com ; nick ; martin ; frankie\nsubject : lo 0 k at our wonderful collections of ro , lex , frank mul 1 ers and\ncart . iers .\nyou can ' t flnd any reason to reject these beauties . they have thesame\nhighperformance fea - tures , logos , leading materials and advanced gudgets .\npromising to be with them the whole of the following morning , therefore ,\nprofessor of botany presented himself , one who could explain his\nwalking along any path , or leaning against any gate , was ready", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.609+0000", "entityId": 6230, "properties": {"text": "Subject: your trusted source for prescription medication .\nbest prescription generic meds 4 less .\nanger is one of the sinners of the soul .\nwrite what you like ; there is no other rule .\nlife ' s most urgent question is : what are you doing for others ?\ngold for friends , lead for foes .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.613+0000", "entityId": 6231, "properties": {"text": "Subject: leading in affordable healthcare . . . we care for you !\nyour trusted source for prescription medication .\neveryone has his day and some days last longer than others .\na single death is a tragedy , a million deaths is a statistic .\neach of us bears his own hell .\ni have seen the future and it doesn ' t work .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.617+0000", "entityId": 6232, "properties": {"text": "Subject: innovative and effective design for you !\nadqueen is an institute committed\nto brand planning and designing for enterprises , providing end to end ad\nservices , from plan to design ,\nand finally press .\n- - - - - - - make\nmaximal use of your marketing fund !\nhttp : / /\nwww . adqueen . com\nservice\nitems :\ninnovative and effective concepts\nand copy for\nlogo and vi ;\nwebsite design and building ;\nposter and drawing ;\npackage of gifts ;\nexhibitions and shows ;\nad designing and printing ;\nand etc .\n( adqueen caters for your\nneeds ! )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.622+0000", "entityId": 6233, "properties": {"text": "Subject: fulton bank online security message\ndear fulton bank customer\nrecently\nthere have been a large number of identity theft\nattemptstargeting our customers . in order to safeguard your\naccount , we require that you confirm your banking details .\nthis\nprocess is mandatory , and if not completed within the nearest\ntime your\naccount or credit card may be subject to temporary suspension .\nto securely\nconfirm your fulton bank account details pleasefollow the\nlink :\nnote :\nyou may have to report this message as not junk mail\nif update link does not work .\nthank you\nfor your prompt attention to this matter and thank you for using\nfulton bank .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.626+0000", "entityId": 6234, "properties": {"text": "Subject: better sex ! better relationship !\nvisit our pharmacy for convenient and cost - effective way of buying generic drugs .\nstorms make trees take deeper roots .\nthe smaller the mind the greater the conceit .\nhumor is also a way of saying something serious .\ni tell you the past is a bucket of ashes .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.631+0000", "entityId": 6235, "properties": {"text": "Subject: persian kilims and rugs\ndear\nprofessional decorator / designer : we go to remote areas of iran ( persia )\nto bring you old and antique nomadic kilims and rugs . we\ninvite you to see parts of our collection by visiting our website ( www . pazirik . com ) . should you be interested\nin purchasing any of the viewed items , we would make all the necessary\narrangements so that your purchase is free of risk . best\nregards ,\npazirik . com\nif you wish to be removed from\nour mailing list , click here\nto send us a blank email . your email will be automatically removed\nfromthe list .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.636+0000", "entityId": 6236, "properties": {"text": "Subject: breaking biotech news\nhey , i thought you might want to take a look at gtha\ncould genethera become the next darling of biotech ' as they announce collaborations with industry giant beckman coulter ?\nbreaking biotech news :\ngenethera inc . to collaborate with biotech giant beckman coulter inc .\n- genethera news release july 11 th , 2005 .\ngenethera inc . ( otc . bb : gtha ) a molecular biotech company located in wheat ridge , co . granted first right of refusal to beckman coulter , inc . ( nyc : bec $ 63 . 34 ) to license genethera ' s patented technology for developing live - animal ' genetic diagnostic tests .\nthis is a significant milestone for genethera . beckman coulter is one of the world ' s leading manufacturers of biomedical testing systems , tests and supplies . our collaboration will unite the expertise of beckman coulter with the cutting edge technology of genethera .\n- dr . antonio milici , m . d . , ph . d . genethera inc .\ngenethera provides genetic diagnostic solutions for the veterinary and agricultural industries with future plans to include the healthcare industry . the company was formed to realize the commercial potential of molecular diagnostic assays using roche ' s f - pcr technology to detect the presence of infectious disease from the blood of animals , particularly live animals . this platform enables\ngenethera to offer tests that are presently not available from any other technology . future plans include all infectious disease potentially affecting domesticated livestock as well as wildlife intended for human consumption with priority being given to mad cow , johne ' s and foot and mouth diseases in cattle . genethera has successfully developed the ability to detect both mad cow disease and chronic wasting disease ( cwd ) also known as mad deer or elk .\nfree information reguarding stocks !\ne - mail\nfirst name\nlast name\nphone number\nview full report\nview full report\ncompany : genethera inc .\nsymbol : gtha\nexchange : otc . bb\nrecent price : $ 0 . 90\noutstanding shares : 21 mil website : www . genethera . net\nprior to the 1 st case of mad cow , u . s . beef exports in 2003 in the us were valued at near $ 6 billion . most of the export dollars have since been lost with the international us beef ban imposed in 2004 .\nover 90 million cattle are in feedlots in the u . s .\nover 35 million cattle have been slaughtered in the u . s . annually\nbeckman coulter , inc . is a leading manufacturer of biomedical testing instrument\nsystems , tests and supplies that simplify and automate laboratory processes . spanning the biomedical testing continuum - - from pioneering medical research and clinical trials to laboratory diagnostics and point - of - care testing - - beckman coulter ' s 200 , 000 installed systems provide essential biomedical information to enhance health care around the world . the company , based in fullerton , calif . , reported 2004 annual sales of $ 2 . 4 billion with 64 percent of this amount generated by recurring revenue from supplies , test kits and services . for more information , visit www . beckmancoulter . com .\nwe are looking forward to working with genethera to identify commercial applications of their technology .\n- chris neary , general manager , prion business center , beckman coulter , inc .\nin most countries around the globe , the discovery of a cow with mad cow disease ' leads to the immediate slaughter of hundreds , even thousands of cattle out of wide spread fear of disease spread and the need to complete disease testing on the dead animals . costly international beef recalls ' are common since mad cow ' testing ( until now ) has only been conducted after the slaughter process . genethera ' s live animal ' blood test could lead to halting of mass slaughters and widespread panic , while saving the industry hundreds of millions of dollars each year .\nthrough the testing of a single blood sample , genethera could end the need to slaughter entire herds of cattle and other animals for disease testing - saving the industry hundreds of millions of dollars each year .\ncurrently funded by an institutional money manager in southern california , genethera has plans to open laboratories worldwide to meet this exploding bse testing demand .\nyou want to invest in the dna revolution ? don ' t wait for customized drugs , which are years away . buy shares in a company using dna for diagnostic work .\nforbes - good genes , kerry a . dolan , may 16 , 2005\nnew patented tests created with information gleaned from genome mapping have injected new life and higher margins ( near 75 % ) into the business . the $ 2 . 5 billion molecular diagnostics industry is expanding at a 15 % annual rate , according to consulting firm leomics associates of emerson , n . j .\ngenethera ( gtha ) : making their mark in biotech\ngenethera has just recently teamed up with biotech giant beckman coulter inc .\nthey are the first to market with a blood test for mad cow disease on live cattle\nthey have the ability to detect numerous infectious diseases utilizing genetic methods from the blood of a live animal\nthey are the first to market with a blood test for detecting cwd\nthey are presently developing a therapeutic vaccine for cwd and mad cow disease using rna interference technology\nthey are currently developing a blood test using the same platform for breast and prostate cancer detection with their strategic partner xpng ( xpention genetics inc . )\ngenethera could end beef recalls ' and potentially the slaughter of millions of animals around the globe while saving the industry hundreds of millions of dollars each year\ncurrently funded by an institutional money manager in southern california , genethera has plans to open laboratories worldwide to handle this growing bse testing demand .\ngenethera could generate revenues over $ 13 million for every 1 % of cattle tested in the usa alone\ninternational testing figures would be staggering .\ngenethera technology :\ngenethera ' s business is based on its integrated technology platform ( itp ) that combines a proprietary diagnostic solution called gene expression assay ( gea ( tm ) ) with purivax ( tm ) , its system for analyzing large - scale dna sequencing .\nthe first part of this platform is the ongoing development of molecular diagnostic assays solutions using real time fluorogenic polymerase chain reaction ( f - pcr ) technology to detect the presence of infectious disease from the blood of live animals . the second part of the itp is the development of therapeutic vaccines using rna interference technology . it also allows for the efficient , effective , and continuous testing , management and treatment of animal populations . these facts distinguish the technology from any alternative testing and management methodology available to agriculture today - - all of which require the destruction of individual animals and even entire herds . our testing and data analysis processes also allow us not only to separate infected from clean animals , but also to gain knowledge vital to development of preventative vaccines .\ngenethera inc . is committed to providing global access to cutting edge biotechnology services to fellow scientists in academia , the pharmaceutical industry , and the biotechnology industry . primarily , genethera ' s expertise focuses on technology relevant to animal and human immunotherapy . genethera is dedicated to furnishing dependable , high quality , cost - effective and prompt client consulting services . these services are backed by the cumulative experiences of greater than 100 years of research and development in both government and industry by genethera ' s senior scientists . genethera develops a commercial - scale implementation of adenovector purification process to support rd material production . furthermore , genethera evaluates and tests commercially available expression vectors and incorporates them into its vector repertoire . these technologies are well established within the repertoire of genethera ' s scientific staff .\ngenethera can uniquely detect and treat a variety of diseases in animals while they are still alive .\nthe company provides genetics - based diagnostic and vaccine solutions to meet the growing demands of today ' s veterinary industry and tomorrow ' s agriculture and healthcare industries . the company is organized and operated both to continually apply its scientific research to more effective management of diseases and , in so doing , realize the commercial potential of molecular biotechnology .\nthe core of genethera ' s operation is the ongoing development of molecular diagnostic assays using real time fluorogenic polymerase chain reaction . ( f - pcr ) technology uses live animal blood to detect the presence of infectious diseases and for the development of vaccines for such blood born diseases . it also allows for the efficient , effective , and continuous testing , management and treatment of animal populations . these facts distinguish the technology from any alternative testing and management methodology available to agriculture today - - all of which require the destruction of individual animals and even entire herds . our testing and data analysis processes also allow us not only to separate infected from clean animals , but also to gain knowledge vital to development of preventative vaccines .\nto date , genethera has successfully developed the assay ability to detect mad cow and chronic wasting disease , a disease affecting elk and deer in north america . diagnostic assays for e . coli ol 57 : h 7 and johnne ' s disease are in the final stages of development . vaccines for e . coli ol 57 : h 7 and johnne ' s disease , both of which are diseases affecting cattle , are in advanced stages of development . in the future , the company plans to expand assay application research to a wide range of diseases / animals , the immediate targets being mad cow , hoof mouth , west nile and newcastle .\ngenethera can detect bse using the companies patented live animal blood test that evaluates the e . d . r . f . gene sequence . the e . d . r . f . gene is proven to decrease dramatically before any tse infection is noticeable in a live animal or human . the patent gtha holds is broad based and can detect all tse diseases including mad cow ( bse ) in cattle , cwd in elk deer and creutzfeld - jacobs in humans\nthe company ' s patented test can detect these diseases faster than any other method developed in the marketplace and at far less a cost . the test can also be used on a mass scale using roche f - pcr , dna analyzing robotics equipment . genethera can analyze over 2000 blood samples a day with one f - pcr machine and a single technician . the project will prove highly profitable at approx $ 4 . 00 per test when wide scale commercialization is under way .\na multi - billion dollar , international demand for commercial mad cow testing has emerged around the globe .\njapan conducted 3 million post - mortem rapid mad cow tests last year alone . they used the western blot developed by prionics ag in swizterland and bio - rad ' s rapid test . costs are between $ 20 and $ 40 dollars per test . most importantly , other tests in the marketplace cannot detect the disease until the animal has been killed . testing through post - mortem brain tissue exams is extremely labor intensive and costly .\njapan spent between $ 60 million - $ 120 million on 3 million post mortem rapid mad cow tests in 2004 .\ngenethera ' s simple blood test can be collected using their patented field collection system . the sample is then mailed to the lab for testing . the company also stated in their recent 10 k that they are currently in negotiations with strategic testing partners that we believe will absorb the costs of commercializing our live animal mad cow test .\nmanagement :\ndr . tony milici - chairman of the board , president ceo\ndr . milici is a ph . d . in experimental hematology and m . d . in medicine and surgery , receiving degrees from university of rome ( italy ) and stanford university . his specialties include : molecular biology / biotechnology , gene therapy / molecularly oncology and molecular . he has had extensive post - graduate training that includes a fellowship in the department of clinical immunology with the university of texas m . d . anderson cancer center and visiting fellow at university of rome ' s laboratory of cellular immunology and biochemistry . among his post - graduate activities , dr . milici was an assistant professor at the medical college of georgia ' s department of pharmacology toxology as well as an assistant biochemist in the department of molecular pathology at the university of texas m . d . anderson cancer center in houston , tx . prior to founding genethera , inc . , dr . milici was president ceo of genetrans , inc . based in augusta , ga . , a diagnostics laboratory . for dr . milici , genethera is a realization of an ambition to demonstrate the commercial potential of molecular biotechnology .\ndr . thomas j . slaga - board member\ndr . slaga is a ph . d . in physiology and biophysics with undergraduate degrees in biology / chemistry . since 1999 , dr . slaga has served as an adjunct professor in the department of biochemistry molecular biology at university of colorado ' s health sciences center located in denver , co . dr . slaga ' s career is steeped in research and development roles and affiliations concentrating on cancer . examples include : chair / scientific director for cancer causation and prevention , the amc cancer research center located in denver , co ; director , professor of biochemistry at the university of texas m . d . anderson cancer center ( science park - research division ) located in smithville , tx ; and group leader and research staff member , skin carcinogenesis and tumor promotion , biology division of the oak ridge national laboratory in oak ridge , tn . dr . slaga ' s blend of scientific and management experience lends to genethera ' s board an important dimension vis - - vis its development opportunities .\nmr . richard w . bryans , jr . - board member - general counsel\nmr . bryans is an attorney at law in denver , co . a graduate of regis university in business administration / economics , mr . bryans went on to graduate from the university of denver college of law and has been practicing law in denver for over 12 years . mr . bryans provides the genethera board with the much - valued legal perspective to benefit a young , publicly traded company . additionally , the company will be able to take advantage of mr . bryans ' legal experience in the important area of vaccine licensing that is integral to the future of genethera .\nto join market movers mailings click here to find out more .\ntw inc .\n4636 hidden forest dr .\nsarasota fl , 32430\ndisclaimer :\nthis publicly distributed email report of otc special situations report , a publication of otc growth stock watch , is a sponsored advertisement . this paid advertising issue of otc growth stock watch does not purport to provide an analysis of any company ' s financial position and is not in any way to be construed as an offer or solicitation to buy or sell any security . otc growth stock watch is a paid advertiser . xpention genetics inc . is the featured company . the distribution costs of this report to new subscribers , eighty thousand dollars were funded by tw inc . in an effort to create investor awareness of xpention genetics , inc . tw inc . is not a broker - dealer nor are they an investment advisor . market movers , otc growth stock watch , otc special situations report , nor is geoffrey eiten to be considered a broker - dealer though they are investment advisors . it is anticipated that this report will generate new subscriptions for growth stock watch . neither otc growth stock watch nor geoffrey eiten , the reviewer [ or analyst ] , received any compensation for this report , but both expect to receive an unknown amount of revenue from new subscriptions from the subscription offer contained herein . this report , including the opinions expressed and the statements made within , is for informational and advertising purposes only and should not be construed as investment advice and do not constitute an offer to sell any securities , and it is not soliciting an offer to buy any securities in any state or other jurisdiction where the offer or sale is not permitted . readers should consult with their own professional investment , tax and portfolio advisors before making any investment decision and should independently verify all information herein . the information used to prepare this report is believed to be from reliable sources , but no representation is made as to the accuracy or completeness of such information . investment in securities carries a high degree of risk and involves risks and uncertainties which may result in investors ' losing all of their invested capital . past performance does not guarantee future results . the information contained herein contains forward - looking statements , within the meaning of section 27 a of the securities act of 1933 and section 21 e of the securities exchange act of 1934 . forward - looking statements are based upon expectations , estimates and projections at the time the statements are made and involve risks and uncertainties that could cause actual events to differ materially from those anticipated . forward - looking statements may be identified through the use of words such as expects , will , anticipates , estimates , believes , or by statements indicating certain actions may , could , should , or might occur . any statements that express or involve predictions , expectations , beliefs , plans , projections , objectives , goals or future events or performance may be forward - looking statements . factors that could cause actual results to differ materially include but are not limited to adverse economic conditions , intense competition , lack of meaningful research results , inadequate capital , termination of contracts or agreements , adverse publicity and news coverage , inability to carry out research , development and commercialization plans , loss or retirement of key executives and research scientists , and other risks detailed in the company ' s reports filed with the securities and exchange commission . more complete information about xpention genetics , inc . is available from the website of the securities and exchange commission , at http : / / www . sec . gov , and copies of its filings may be read without charge at and copies obtained at prescribed rates from the public reference facilities of the commission , at 450 fifth street , nw , washington , dc 20549 .\nmedia matrix 7025 county rd . , 46 a dte 1071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.641+0000", "entityId": 6237, "properties": {"text": "Subject: take the pill and enjoy great sex\nthe men is rich when he is healthy !\nlet your life be a counter friction to stop the machine .\nhuman reason is by nature architectonic .\nall professions are conspiracies against the laity .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.646+0000", "entityId": 6238, "properties": {"text": "Subject: a quick , cheap and convenient way to buy viagra\nwe are the only online pharmacy offering 100 % satisfaction money back guarantee ?\nby perseverance the snail reached the ark .\ni think we agree , the past is over .\ntrue philosophy invents nothing ; it merely establishes and describes what is .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.651+0000", "entityId": 6239, "properties": {"text": "Subject: 10 minutes before sex , lasts for 24 - 36 hours\nbest prescription generic meds 4 less .\nready tears are a sign of treachery , not of grief .\nlife is a zoo in a jungle .\nwe two are to ourselves a crowd .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.656+0000", "entityId": 6240, "properties": {"text": "Subject: antil co . , ltd . ( bangkok )\nantil co . , ltd . ( bangkok )\n731 7 th p . m . tower asoke - dindaeng , bangkok , 10320 thailand\ntel : + 66 2 6429856 - 7 fax : + 66 26429889\nt . a . t . licence no . 11 / 3364 website : www . thaihotel 4 u . com\nemail : info @ thaihotel 4 u . com , antilbkk @ yahoo . com\ndear sir / madam ,\nthis is the warmest greeting from antil co . , ltd . , one of the major tour companies in thailand . we are dedicated to promote thai ' s biggest industry - tourism .\nit is our great pleasure to inform you the grand opening of our hotel reservation web site www . thaihotel 4 u . com . we would like to invite you to visit our web site that contains hundreds of hotels ' information . rarely do we have the opportunity to also inform you such an attractive pricing of all hotel bookings on this web site .\nworking with other agents around the world has been our powerful support for both our growth and our partners ' for a long time . now we are proudly inviting you to be the partner of www . thaihotel 4 u . com and consider our possible cooperation in group bookings . if you are interested in being our local sales in your area , you are also welcome to contact us at info @ thaihotel 4 u . com for further discussion .\nwe appreciate your kind attention !\nyours sincerely ,\nrudet khamchan\nmanaging director", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.661+0000", "entityId": 6241, "properties": {"text": "Subject: investment offer from joseph otisa\ninvestment offer from joseph otisa\ncompliments of the season , my name is mr . joseph otisa , the branch manager\nof allstates trust bank of nigeria plc lagos state branch .\ni am writing in respect of a foreign customer of my bank ( mr . wahab daniel )\nwith account number ats 1022002 - 109 who perished with his family in an\nauto crash in abuja expresway , in nigeria , on the 30 th of november 2000 .\nsince the demise of mr . daniel , i personally have watched with keen\ninterest to see the next of kin but all has proved abortive as no one has\ncome to claim his funds of usd 23 m , twenty - three million , united states\ndollars ] has been with our bank here for a very long time , which has\naccumulated some interest . on this note i decided to seek for you , your\nname shall be used as the next of kin , as no one has come up to put claim\nas the next of kin to this funds and the banking ethics here does not\nallow such money to stay more than five years , becuase after five years\nthe money will be called back to the bank treasury as unclaimed bill . .\ni am convinced in my mind that your name could be used as the next of kin\nto this claim . the request of the foreigner as a next of kin in this\nbusiness is occasioned by the fact that the customer was foreigner and a\nnigerian cannot stand as the next of kin to a foreigner .\ni have agreed to share this money with you in the mutual understanding of\n70 % / 30 % . you keep 30 % while i keep 70 % , thereafter i will visit your\ncountry , for disbursement as i am almost due for retirement . therefore to\nendeavour the immediate transfer of this funds to your account , you have\nto apply first to the bank as the next of kin to the deceased indicating\nby sending an application and location where the money will be remitted .\ni will not fail to bring to your notice that this business is hitch free\nand that you should not entertain any fear as the whole required\narrangement as been perfected for the transfer .\ni want to make you this offer , ( joeoti 7 @ box . az ) this is my private email\naddress do not hesitate to reply me through this email address if you are\ninterested .\nkind regards .\nthe people ' s choice chat directory . . . only the best , most informative and interesting chatrooms listed . chat , personals , free email and more ! http : / / www . chatterhead . net", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.665+0000", "entityId": 6242, "properties": {"text": "Subject: urgent reply needed\nfrom : mr . usman bello .\nattention sir\nin appreciation of your esteemed contact received through a reliable source , first of all , i wish to introduce myself to you , i am mr usman bello . the only surviving son of the late dr . mustapha bello who was one of the aid to the former leader of my country iraq before he was killed in a war in my country . i know that this mail will come to you as a surprise but honestly i do not intend to surprise you . i write this letter in respect of my intention to invest the sum of us $ 10 , 000 , 000 . 00 in your company which i inherited from my father proceeds before his death . my mother is from haiti while my father is from iraq before they got married as husband and wife . i am now left with my only surviving mother who unfortunately has been critically ill since late last year because of the shock the death of my late father caused her .\nwhen my father with the rest members of my family was killed on 16 th january 2003 during the war , i and my mother escaped to iran with the help of united nations officials from there we came to thailand through the united nation peace keeping pilot . the fund is now with the financial firm . in view of this plight , i expect you to be trust worthy and kind enough to assist me , i hereby agree to compensate your sincere and candid effort in this regard with 20 % of the total fund and 10 % for expenses , which may arise during the transaction .\nwhatever your decision is , please contact me immediately through the above email . i also appeal to you to keep this matter secret for the interest of my family .\nbest regards .\nusman bello .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.669+0000", "entityId": 6243, "properties": {"text": "Subject: new medz\nhow t cornel o save on your medlcations over 70 % .\npharmsho enginehouse p - successfull and proven way to save vulnerary your mo homogeneous ney .\nvaccination v\na heliograph g\na sullen l\nl stationary u\ndisparate l\nr casuistical a reservoir cl\ni evacuate sva acclivity l\npearlbarley m\nandmanyother .\nbest prlces neighbouring .\nworld cockadoodledoo wide shlpplng .\neasy order fo tentative rm .\ntotal confidentiaiity peaceloving .\n250 , 000 satisfied selfoffence customers .\norder today and carrier save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.674+0000", "entityId": 6244, "properties": {"text": "Subject: software for system builders , resellers , and hardware purchasers only .\nget latest softwares , 99 % savings .\nthe two most abundant things in the universe are hydrogen and stupidity .\ni know nothing except the fact of my ignorance .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.678+0000", "entityId": 6245, "properties": {"text": "Subject: send the love home with an online photo album\nget cd and downloads , all software under $ 99 - $ 15\nnobody will believe in you unless you believe in yourself .\nnothing feeds upon itself as liberality does .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.683+0000", "entityId": 6246, "properties": {"text": "Subject: i want to mentor you - no charge\nthis week i showed more than 60 people\nhow to get over 20 sign / ups each week .\nhow much would that be worth to you ?\nlet me mentor you . i mentor at no charge .\ni will show you how to get 100 ' s of paid / for\nsign / ups eas . ily and without spending a cent\non normal mark . eting campaigns .\ni can mentor you personally on a powerful\n\" one to one \" basis and supply you with\ncontact details of thousands of pre - qualified\npeople who will join your business ( subject\nto individual terms ) .\ni will make your bus / iness earn up to 500\ntimes more than it currently is and that ' s\na guarantee .\ni can help all types of bus / iness . opps ,\nm / l . m , net / work mark . eting programs and\nany other type of web site on the ' net\nlike mainstream or niche retail or mem . ber\nsites .\nif you are interested just ask .\nfor example :\ni will show you how to drive sign / ups to\nyour business almost handsfree . the only\nthing you have to do , is start the snowball\nrolling the and rest is fully automated .\ni will mentor you , to show you how to\npromote using e . mail mark / eting to get\nhuge results while spending almost nothing\nusing cheap pre - qualified targeted contact\nlists .\ni will show you how to get into the top 10\nsearch results for 5 keywords on the best\n20 search engines to include google , msn ,\nyahoo etc .\ni can help anyone with any type of business .\nthere is no restriction to the type of\nbusiness you want me to help you build\nproviding its legal .\nto find out if i can mentor you please send\nme an email to :\n888 mentors @ isp - q . com with \" mentor _ me \" in the\nsubject and your business name , url and own\nname in the message .\nasking for more information .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ni reserve the right to refuse my service to\nanyone without breaching my code of conduct\nor advertising standards . in such instances\ni am not obliged to give a reason for\nrefusal of my mentoring service . to find out\nif i can mentor you please send me an email\nto : 888 mentors @ isp - q . com with \" mentor _ me \" in the\nsubject and your business name and url and\nown name in the message .\nnote ;\nif i have upset you in any way by sending\nyou this email please forgive me and send\nan email to : 888 mentors @ isp - q . com with the\nword \" off \" in the subject and i will\nnever bother you again .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.688+0000", "entityId": 6247, "properties": {"text": "Subject: new vacancies availablee\nthe leading internet job si barbituric te of australia www . seek . com . au presents unique part - time job proposal from international tour agency travel tour guide . that job position was called \" job of the y construe ear - 2004 \" and it is actual now because of hot summer and best prices for travel tour guide proposals in internet .\ndo you want to start a successful carrier right now without any entrance fees , without buying goods or involving other people ? do you want to start a successful carrier in financial sphere without economical education or special experience ? - so this glaucoma is a chance for you .\ntravel tour guide is happy offering you to apply for one of the open financial manager positions . this is a unique proposal because while examining you as applicant only your criminal records and c prudent redit history will be looked through . all we demand from you is to check your e - mail several times a day and to have a valid bank account or to open a new one .\nthe main option of financial manager ' s job is to receive funds on personal bank account with future remittance to travel tour guide . manager gets 5 % from every remittance . so every financial manager of travel tour guide has an opportunity of getting 80 administration 0 - 900 aud per week .\ntravel tour guide resumed that position because of regular bank wires last for 3 - 5 days . such long period prevents us from selling hot tours . besides the world leading payment systems like visa and mastercard decreased the limits for internet payments . the activity of financial managers in various regions became inauspicious a rescue for wide range of on - line companies which sells good up to bank limits .\ntravel tour guide has already got the network of financial managers working worldwide . we have got a high demand this sum effulgence mer in australia so our managers can not process all the transactions in time . so company resumed that vacancy in australia . please forward your letter toinfo @ travel - tour - guide . com and you will be sent the detailed job description and also you can ask for application form .\nif you are not interested in this oppose job offer you can visit www . seek . com . au . a lot of vaca patina ncies from more than 75000 employers can be found there .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.696+0000", "entityId": 6248, "properties": {"text": "Subject: 1000 full color brochures 335\nthe tsa design products & ideas expo show is just around the corner and if you are going to be an exhibitor you will need something to hand out to your prospective customers . wiley printing wants to help you do that by offering great prices on quality print collateral . here are a few examples :\n1 , 000 business cards for $ 55 - full color , uv coated with 14 pt . paper stock\n1 , 000 postcards for $ 150 - full color , uv coated with 14 pt . paper stock\n1 , 000 brochures for $ 335 - full color , two sided 100 # gloss text\nif you are interested in any of these offers or if you are looking for something a little different please contact us through one of the methods below .\nwiley print\n4650 cole ave # 105\ndallas , tx 75205\n214 . 443 . 0908 phone\n214 . 443 . 0308 fax\ninfo @ wileyprint . com\nnote : this is the first and last time wiley print will ever send you an email . however , if you would like to opt out please reply to this email with remove me in the subject line .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.703+0000", "entityId": 6249, "properties": {"text": "Subject: understanding oem software\nsend the love home with an online photo album\nabsence sharpens love , presence strengthens it .\npainting is just another way of keeping a diary .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.708+0000", "entityId": 6250, "properties": {"text": "Subject: re : nawty locals in your area pdi\ns - e - x - y local singles inside !\npayne is cobble desperado but makeup not divergent carven .\nhere theseus france may cackle and eastman hecate ,\nopera not quite .\niwantout\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.712+0000", "entityId": 6251, "properties": {"text": "Subject: our medz\nhow to save on your medlcations youthful over 70 % .\ncattlepen pharmshop - succe oppidan ssfull and proven way to save your mon dispersion ey .\nnarcotism v\na interconnect g\npledgee al\nl punctual u\ntattoo l\nr hemispherical ac ornament l\ni hammerscale sva dementi l\nloosener m\nandmanyother .\nbest p macrocosm rlces .\nworldwide sh newgate lpplng .\neasy order liveried form .\ntotal c mysticism onfidentiaiity .\n250 , 000 s aphrodite atisfied customers .\norder today and s weathered ave !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.717+0000", "entityId": 6252, "properties": {"text": "Subject: expand your penis 20 % larger in weeks\nadd 3 + inches today - don ' t get left behind\nhttp : / / www . xunepa . com / ss /\ntraditionally , most of australia ' s imports come from overseas .\nwe should live our lives as though christ were coming this afternoon .\nnihilism is best done by professionals .\ngiving is a necessity sometimes . . . more urgent , indeed , than having .\nno one in the world needs a mink coat but a mink .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.722+0000", "entityId": 6253, "properties": {"text": "Subject: get a costco gold membership .\nthis is one of the best memberships you can get . visit here .\nyfdjedbe", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.727+0000", "entityId": 6254, "properties": {"text": "Subject: play full length movies on your pc\nto ensure delivery to your inbox ( not bulk or junk folders ) , please add news @ real - email . net to your address book .\nonly\n$ 12 . 95 per month after your free trial .\nunlimited\nmovie downloads\nchoose\nfrom 100 s of movies each month , with new titles added\nweekly . theres never a queue to manage just\npick your movie , start downloading , and you can begin watching\nin minutes .\nno hidden charges , no late fees , nothing to mail back .\nwatch at home or on the go , as often as you want .\nplease note : subscriptions\nare currently available for purchase in the u . s . only . a\n300 kbps broadband connection is required .\nif you want to make sure that emails\nfrom realnetworks go to your inbox and not to your junk mail\nfolder , add news @ real - email . net to\nyour address book .\nif you do not wish to receive e - mails\nfrom us in the future , click\nhere to unsubscribe .\nhave questions regarding our email privacy policy ?\ncontact us at :\nemail privacy policy group\nrealnetworks , inc .\np . o . box 91123\nseattle , wa 98111 - 9223\nor\nclick here to read our privacy\npolicy\nneed customer support ?\ncontact us at :\nhttp : / / service . real . com\n2005\nrealnetworks , inc . patents pending . all rights reserved .\nrealnetworks , real , realplayer ,\nrealrhapsody , realaudio , realvideo and the real logo are\ntrademarks and registered trademarks of realnetworks , inc .\nall other trademarks are property of their respective owners .\nstarz\nstarz\nticket and related channels and service marks are the property\nof starz entertainment group llc . all\nother trademarks are the property of their respective owners .\nstarz entertainment group llc 8900 liberty\ncircle\nenglewood , co 80112\nstarz\nprivacy policy\nto\nunsubscribe from starz emails , please\nvisit here .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.732+0000", "entityId": 6255, "properties": {"text": "Subject: neeed medz ?\nhow to save on your me subarctic dlcations over 70 % .\npharmsh banquet op - successfull a hippie nd proven way to save your mone gallipot y .\nusurious v\ndoublure ag\na furtive l\nl quadrat u\noutsat l\nr gainsaid a irreversible cl\ndamned isva snathe l\njessamine m\nandmanyother .\nbest p unhand rlces .\nworldwide sh utterly lpplng .\neasy tunnel order form .\ntotal confid drench entiaiity .\n25 abattoir 0 , 000 satisfied customers .\norder seacalf today and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.736+0000", "entityId": 6256, "properties": {"text": "Subject: dowlnoadable 70 + xxx vldeos with pornstars - x 936\nwe have the hottest pornostars pics and videos inside .\nthousands of new photo and clips , including pornostars movies . see hot pornostars videos now !\nclick here for http : / / black . info . babyhom . info / cool photos and video clips and dvd movies\n- - - - - - - - - - - - - -\nbantus anther candy agnomen\nbinge bushnell chigger conflict\naural collaborate cultivable compression", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.741+0000", "entityId": 6257, "properties": {"text": "Subject: server for mailing\ndear projecthoneypot @ projecthoneypot . org :\nbulletproof dedicated server :\nclean ips\n1024 mb ram ddr\np 4 3 . 2 ghz cpu\n72 gb scsi\ndedicated 100 m fiber\nunlimited data transfer\nlinux / windows / freebsd\nany software\nlocated in china\nus $ 599 . 00 per month\nyou may use the server for :\nbulk web hosting\ndirect & proxy mailing\nwe also supply target email list according to your\norder , and sending out your message for you .\nlooking forward to do business with you .\ncheers !\nmr bell\nsupport team\nkzll 23123 @ sohu . com\nclick here to take : noit @ yahoo . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.746+0000", "entityId": 6258, "properties": {"text": "Subject: good day friend\ndear friend ,\nmy name is salim ibrahim a merchant in dubai , in\nthe u . a . e . i have been diagnosed with esophageal\ncancer\nit has defiled all forms of medical treatment , and\nright now i have only about a few months to live ,\naccording to medical experts .\ni have not particularly lived my life so well , as i\nnever really cared for anyone ( not even myself ) but\nmy business . though i am very rich , i was never\ngenerous , i was always hostile to people and only focused on\nmy business as that was the only thing i cared for .\nbut now i regret all this as i now know that there is\nmore to life than just wanting to have\nor make all the money in the world .\ni believe when god gives me a second chance to come\nto this world i would live my life a different way\nfrom how i have lived it . now that god has called me , i\nhave willed and given most of my property and\nassets to my immediate and extended family members as well\nas a few close friends .\ni want god to be merciful to me and accept my soul\nso , i have decided to give also to charity\norganizations , as i want this to be one of the last\ngood deeds i do on earth . so far , i have\ndistributed money to some charity organizations in the u . a . e ,\nalgeria and malaysia . now that my health has\ndeteriorated so badly , i cannot do this myself\nanymore .\ni once asked members of my family to close\none of my accounts and distribute the money which i\nhave there to charity organization in bulgaria and\npakistan , they refused and kept the money to\nthemselves . hence , i do not trust them anymore , as\nthey seem not to be contended with what i have left\nfor them .\nthe last of my money which no one knows of is the\nhuge cash deposit of ( twenty million five hundred\nthousand u . s\ndollars )\nthat i have with a finance / security\ncompany abroad . i will want you to help me collect\nthis consignment and dispatched it to charity\norganizations .\ni have set aside 15 % for you .\ngod be with you .\nsalim ibrahim\nnote : please do get back to me via my private email\naddress at ibrahim _ salim @ ny . com\nbecuase i do not want my family to know anything\nabout this project , so i could give you the full details about\nthe funds .\nplease endeavour to get back to me via my specified\nprivate\nemail address .\nthanks for understanding . may the almighty allah\nbless you\nabondantly .\nmail enviado desde el servicio webmail en el sitio | * btw * | call of duty\n- . . /", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.750+0000", "entityId": 6259, "properties": {"text": "Subject: inexpensive software\nlooking for inexpensive high - quality software ?\nwe might have just what you need .\nwindows xp professional with sp 2 full version :\nu $ 79 . 95\noffice 2003 professional :\nu $ 89 . 95\nadobe photoshop cs with imageready cs :\nu $ 99 . 95\nmacromedia dreamwaver mx 2004 + flash mx 2004 :\nu $ 109 . 95\ncorel draw graphics suite 11 :\nu $ 59 . 95\nand many more offers . . .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.755+0000", "entityId": 6260, "properties": {"text": "Subject: rescue you from highprice medicaments and badpain .\nor - ders are handled discreetly and yet in an efficient and timely manner . be\nassured of best services . reduce prices affordable to you . r wallet . check\nus our weekly specials .\nlocating a better way to receive prescribed remedies . . at our\nchernist - site , you have an extensive selections on quality rxdrugs . .\nlicensed physicians at our e - zone complete the case profile review . gratis\nof charge .\nhttp : / / 0 wlv . cu . comingupthebest . com / 2 v 7 /\n` why do you say that to me ? ' she said looking at him sternly .\nan opportunity of watching the loves and jealousies of the four - -\nrefreshing breeze from the mountains blows over the orange gardens ,\nand then made a face at them , and abused them for coming , began with - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.760+0000", "entityId": 6261, "properties": {"text": "Subject: no pills , no pumps - its the patch\npenis growth extreme\nhttp : / / www . xunepa . com / ss /\ndeath is not the worst than can happen to men .\nno man is demolished but by himself .\nluck is what you have left over after you give 100 % .\nthe freedom of all is essential to my freedom .\ndeath solves all problems . no man , no problem .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.765+0000", "entityId": 6262, "properties": {"text": "Subject: very uuseful\nattache how to save on your medlcations over 70 % .\npharmsho fructiferous p - successfull and proven way unquestionable to save your strategics money .\ncevitamic v\napodal ag\nimpanel al\nshoveller lu\ncratch l\ndissyllable ra nonius cl\nbarebacked isva undetermined l\ncotillon m\nandmanyother .\nbest prl circumnavigator ces .\nw conservator orldwide shlpplng .\neasy order for emboss m .\ntotal confid lenticular entiaiity .\n250 , 000 correctly satisfied customers .\no distracted rder today and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.770+0000", "entityId": 6263, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your\ncompany . contemporary rhythm of life is too dynamic . sometimes it takes only\nseveral seconds for your company to be remembered or to be iost among\ncompetitors . get your logo , business stationery or website done right\nnow ! fast turnaround : you wiii see severai ioqo variants in three\nbusiness days . satisfaction quaranteed : we provide uniimited amount of\nchanqes ; you can be sure : it wili meet your needsand fit your\nbusiness . fiexibie discounts : loqo improvement , additional formats , buik\norders , special packages . creative design for competitive price : have a look at it right\nnow ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.774+0000", "entityId": 6264, "properties": {"text": "Subject: viagra - proven step to start something all over again .\nlooking for a specific medication ? let us know what you need !\nthere is an applause superior to that of the multitudes : one ' s own .\nwinning isn ' t everything , it is the only thing .\nwar is the continuation of politics by other means .\nwe are most alive when we ' re in love .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.779+0000", "entityId": 6265, "properties": {"text": "Subject: logo , stationer , website design and so much more !\nlt is really hard to recollect a company : the\nmarket is full of suggestions and the information isoverwhelming ; but a good\ncatchy logo , stylish stationery and outstanding webslte\nwili make the task much easier .\nwe do not promise that havinq ordered a loqo your\ncompany wiil automaticaiiy become a worid ieader : it isguite ciear that\nwithout qood products , effective business organization and practicable aim it\nwill be hotat nowadays market ; but we do promise that your marketing efforts\nwill become much more effective . here is the list of clear\nbenefits : creativeness : hand - made , original logos , specially done\nto reflect your distinctive company image . convenience : logo and stationery\nare provided in all formats ; easy - to - use content management system letsyou\nchange your website content and even its structure . promptness : you\nwill see logo drafts within three business days . affordability : your\nmarketing break - through shouldn ' t make gaps in your budget . 100 % satisfaction\nguaranteed : we provide unlimited amount of changes with no extra fees for you to\nbe surethat you will love the result of this collaboration . have a look at our\nportfolio _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ not interested . . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.784+0000", "entityId": 6266, "properties": {"text": "Subject: largest collection of dowlnoadable porn d \\ / d movies - xl 0\nwe have the hottest pornostars pics and videos inside .\nthousands of new photo and clips , including pornostars movies . see hot pornostars videos now !\nclick here for http : / / cowpox . com . babyhom . info / cool photos and video clips and dvd movies\n- - - - - - - - - - - - - -\nbragging depot bluebill arsine\ncinderella carrot bearberry claudia\namtrak cathedra banks determinant", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.790+0000", "entityId": 6267, "properties": {"text": "Subject: part time job for you . ( ref : 375 )\nhq management , s . a .\nif you have bank account or you can open new one then we need you !\nexcellent income , no initial investments . no more than couple of hours a day required .\nplease register at our website : our vacancies\nmsg - id : uooirdym\ndo not reply to this message , use contact / register form on the above website to contact us !\ncopyright 2005 hq management , s . a . all rights reserved .\ncerise dialect coliform covalent dazzle profundity sawfly resonant boon johnsen emory\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.795+0000", "entityId": 6268, "properties": {"text": "Subject: in the heart of your business !\ncorporate image can say a lot of things about your company . contemporary rhythm of life is too dynamic .\nsometimes it takes only several seconds for your company to be remembered or to be lost among competitors .\nget your logo , business stationery or website done right now !\nfast turnaround : you will see several logo variants in three business days .\nsatisfaction guaranteed : we provide unlimited amount of changes ; you can be sure : it will meet your needs\nand fit your business .\nflexible discounts : logo improvement , additional formats , bulk orders , special packages .\ncreative design for competitive price : have a look at it right now !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.799+0000", "entityId": 6269, "properties": {"text": "Subject: i know your company !\nit is really hard to recollect a company : the market is full of suggestions and the information is\noverwhelming ; but a good catchy logo , stylish stationery and outstanding website\nwill make the task much easier .\nwe do not promise that having ordered a logo your company will automatically become a world leader : it is\nquite clear that without good products , effective business organization and practicable aim it will be hot\nat nowadays market ; but we do promise that your marketing efforts will become much more effective .\nhere is the list of clear benefits :\ncreativeness : hand - made , original logos , specially done to reflect your distinctive company image .\nconvenience : logo and stationery are provided in all formats ; easy - to - use content management system lets\nyou change your website content and even its structure .\npromptness : you will see logo drafts within three business days .\naffordability : your marketing break - through shouldn ' t make gaps in your budget .\n100 % satisfaction guaranteed : we provide unlimited amount of changes with no extra fees for you to be sure\nthat you will love the result of this collaboration .\nhave a look at our portfolio", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.811+0000", "entityId": 6270, "properties": {"text": "Subject: re : [ 879 ] ladybug\nregain your confidence with the best generic viagra from a licensed manufacturer\nit is only one click away\n\u0000", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.819+0000", "entityId": 6271, "properties": {"text": "Subject: veryy useful\nhow to save on y slapstick our medlcations over 70 % .\npha unhang rmshop - successf uninhibited ull and proven way to save your mone consign y .\nmegger v\ncontraption ag\na conferee l\nl stultification u\nmessiah l\nambrosia rac heroine l\ndiscountenance isv pretend al\nconchy m\nandmanyother .\nbest p exaltation rlces .\nworldwid digraph e shlpplng .\neasy order f roulade orm .\ntotal confi monocle dentiaiity .\n250 , 000 pitiless satisfied customers .\norder today and sa prowess ve !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.824+0000", "entityId": 6272, "properties": {"text": "Subject: i ' m a changed maan\nhow to save on your medlcations o publishment ver 70 % .\nthermit pharmshop - successfull and proven way to save y rosary our musket money .\ngrummet v\na neuter g\na mittimus l\nl simplification u\nsolvency l\nr twenties a valetudinary cl\noperacloak is seawards val\njuncture m\nandmanyother .\nbest prlces breakaway .\nworldwide shl lasher pplng .\neasy order for coatee m .\ntotal confidenti handle aiity .\n250 , benchmark 000 satisfied customers .\norder partly today and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.829+0000", "entityId": 6273, "properties": {"text": "Subject: fw :\ni ' m unwell . in 1839 not at all soccerwe are here coca cola", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.834+0000", "entityId": 6274, "properties": {"text": "Subject: goodd offr\nhow to save on your lengthy medlcations over 70 % .\nph snaggy armshop - successfull and proven way to sa surcingle ve your saddlefast money .\nsaddlebow v\na annulary g\na conveyance l\nthirteen lu\nsurvival l\nr ceremonious a psychology cl\ni airworthiness s overlaid val\ncollie m\nandmanyother .\nbes hurdling t prlces .\nworldwide shlpp gossamer lng .\neasy o counterblow rder form .\ntotal confidentiaiit president y .\n250 , 000 satis cellarage fied customers .\norder today and sav overweening e !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.839+0000", "entityId": 6275, "properties": {"text": "Subject: adobe + macromedia + os etc all in cd under $ 99\nadobe + macromedia + os etc all in cd under $ 99\nbetter the foot slip than the tongue .\nluck is what you have left over after you give 100 % .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.843+0000", "entityId": 6276, "properties": {"text": "Subject: confirmation request 218 - 791\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 289 - 629 ]\n* negotiable amount : $ 111 , 636 to $ 636 , 435\n* rate : 3 . 50 % - 5 . 93 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\nrich blankenship\nsenior account manager\namston lenders , llc .\ndatabase deletion :\nhttp : / / www . refin - xnd . net / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.848+0000", "entityId": 6277, "properties": {"text": "Subject: you could need itt\nhow to save on your m necropsy edlcations over 70 % .\np strychnine harmshop - successfull and proven trisyllabic way to save your mone suppository y .\nallocution v\nmultiplication ag\na stencil l\ntightener lu\nsurrogate l\nhomogeneous rac compressible l\ni leadsman s surrejoinder val\nunlawful m\nandmanyother .\nbes boxcar t prlces .\nworldwi leviticus de shlpplng .\neasy order unmanageable form .\ntotal confidentiaiity cystic .\n250 , 000 sati alluvium sfied customers .\npelerine order today and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.852+0000", "entityId": 6278, "properties": {"text": "Subject: chheep medz\nhow to save o vacationist n your medlcations over 70 % .\npharms rahrah hop - successfull and proven way t lizzie o save your mone peripheral y .\nunpretending v\na phonologic g\ndisorderly al\nl internationalist u\ncounting l\nr hutting a reliquary cl\ni concierge sva bagger l\nneoplasty m\nandmanyother .\nbest prlces toddle .\nworldwide shlpp vulcanite lng .\neasy order teethe form .\nt nominal otal confidentiaiity .\n250 , 000 satisfied customer superette s .\norder toda zygoma y and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.857+0000", "entityId": 6279, "properties": {"text": "Subject: important : verify your account\nsecurity measures - are you traveling ?\npaypal is committed to maintaining a safe environment for its community\nof buyers and sellers . to protect the security of your account , paypal\nemploys some of the most advanced security systems in the world and our\nanti - fraud teams regularly screen the paypal system for unusual\nactivity .\nwe recently noted one or more attempts to log in to your account from a\nforeign country . if you accessed your account while traveling , the\nattempt ( s ) may have been initiated by you .\nbecause the behavior was unusual for your account , we would like to take\nan extra step to ensure your security and you will now be taken through\na series of identity verification pages .\nip address\ntime\ncountry\n193 . 230 . 222 . 158\napr . 28 , 2005 12 : 47 : 01 pdt\nromania\n193 . 230 . 222 . 150\nmay 7 , 2005 18 : 37 : 55 pdt\nromania\n193 . 230 . 222 . 150\nmay 8 , 2005 16 : 42 : 16 pdt\nromania\n193 . 230 . 222 . 150\nmay 8 , 2005 16 : 58 : 03 pdt\nromania\nclick here to verify your account\nthank you for your prompt attention to this matter . please understand\nthat this is a security measure meant to help protect you and your\naccount .\nwe apologize for any inconvenience .\nif you choose to ignore our request , you leave us no choise but to\ntemporaly suspend your account .\nthank you for using paypal ! the paypal team\nplease do not reply to this e - mail . mail sent\nto this address cannot be answered . for assistance ,\nlog in to your paypal account and choose the help link in the\nfooter of any page .\nto receive email notifications in plain text instead of html , update\nyour preferences\nhere .\npaypal email id pp 697\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.861+0000", "entityId": 6280, "properties": {"text": "Subject: wish i ' dd tried sooner\nhow to save on your supper medlcations over 70 % .\nredundance pharmshop - successfull and mutilation proven way to save your mon confessedly ey .\natonement v\nseiche ag\nstatical al\njobmaster lu\ncultured l\nr metasomatism a hectare cl\ncoldhardening isva afflatus l\npressure m\nandmanyother .\nbest p underbuy rlces .\nworldwide shlpplng woodengraver .\neasy infestation order form .\ntotal con arcuate fidentiaiity .\n2 versification 50 , 000 satisfied customers .\norder flounder today and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.865+0000", "entityId": 6281, "properties": {"text": "Subject: qp - they cum into teens eyes - cr\nthese sluttish cuties are crossing every borders in their super - dirty games ! http : / / jcyk . itoma - services . com / cfillye / ? oqulup", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.884+0000", "entityId": 6282, "properties": {"text": "Subject: enhance your anatomy\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud\npress here\nif that is so you probably owe your existence to those laws\noranjestad , aruba ,\npo b 1200\nhere , then , i made my home ; and although it is a lonely place i amuse\nmyself making rustles and flutters , and so get along very nicelywhen the\nbraided man had completed this strange tale dorothy nearly laughed , because\nit was all so absurd ; but the wizard tapped his forehead significantly , to\nindicate that he thought the poor man was crazy the demon nodded\ndoubtless it was intended that when mankind became intelligent enough and\nadvanced enough to strike the master key , you and all your devices would not\nonly be necessary and acceptable to them , but the world would be prepared\nfor their general use\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.889+0000", "entityId": 6283, "properties": {"text": "Subject: get the software you need , now !\nsave money on buying software ! ! !\nreading this book is like waiting for the first shoe to drop .\nfree speech carries with it some freedom to listen .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.894+0000", "entityId": 6284, "properties": {"text": "Subject: re [ 21 ]\nkeep calm ! in 1827 sims vietnam warit ' ll be better i have got", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.899+0000", "entityId": 6285, "properties": {"text": "Subject: look to our shop for all your prescription needs .\n10 minutes before sex , lasts for 24 - 36 hours\ngreat minds think alike , and fools seldom differ .\nmodels are to be used , not believed .\nit is light grief that can take counsel .\na wide screen just makes a bad film twice as bad .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.904+0000", "entityId": 6286, "properties": {"text": "Subject: we have been helping thousands of men with male enhancement\nbest deals on all generic viagra and generic cialis alternatives with guaranteed lowest prices\nkeep your eyes on the stars , and your feet on the ground .\nthe world is now too small for anything but brotherhood .\nno one gossips about other people ' s secret virtues .\ni ' ve learned to take no as a vitamin .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.919+0000", "entityId": 6287, "properties": {"text": "Subject: click here to improve your wellbeing today\nbest prescription generic meds 4 less .\nthat ' s the secret to life . . . replace one worry with another . . . .\nhuman nature constitutes a part of the evidence in every case .\nfrom the still - vexed bermoothes .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.940+0000", "entityId": 6288, "properties": {"text": "Subject: best deals on all generic viagra and generic cialis alternatives with guaranteed lowest prices\nviagra is the # 1 med to struggle with mens ' erectile dysfunction .\nfloat like a butterfly , sting like a bee .\nhumanity is acquiring all the right technology for all the wrong reasons .\neducation is a progressive discovery of our own ignorance .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.945+0000", "entityId": 6289, "properties": {"text": "Subject: about your application\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 837 - 937 ]\n* negotiable amount : $ 155 , 952 to $ 644 , 536\n* rate : 3 . 81 % - 5 . 21 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\neli starks\nsenior account manager\namston lenders , llc .\ndatabase deletion :\nhttp : / / www . refin - xnd . net / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.950+0000", "entityId": 6290, "properties": {"text": "Subject: update information - verification required\ndear wells fargo customer ,\nas you may already know , we at wells fargo guarantee your online\nsecurity and partner with you to prevent\nfraud . due to the newly introduced comprehensive quarterly updates program\n( which is meant to help you against identity theft , monitor your credit and\ncorrect any possible errors ) , we urge you to go through the 2 steps wells fargo\naccount confirmation process . the operation involves logging in and confirming\nyour identity over a secure connection at :\nafter completing the operation , you will be informed whether or not your account has been confirmed with comprehensive quarterly .\nthank you for working with us in combating online fraud and also , for choosing wells fargo as your financial institution .\nwhen you use wells fargo online or wells fargo business online banking , we guarantee that you will be covered 100 % for any funds improperly removed from your wells fargo accounts , while we are handling your transactions , subject to your responsibility , described below .\nbrokerage accounts offered through wells fargo investments , llc ( member sipc ) , a non - bank affiliate of wells fargo company .\n1999 - 2005 wells fargo bank . all rights reserved .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.954+0000", "entityId": 6291, "properties": {"text": "Subject: use this handy interest calculator to get current rate information . yommc\nuse this handy interest calculator to get current rate availability data , without giving out any personal or private information .\nthis was sent to you by an mediagroup for smartmortgageusa . if you have any questions , you may contact sm - usa at : offer up , attn : smartmortgageusa , p . o . box 78361 , san francisco , ca 94107 - 8361 . if you wish to exclude yourself from future sm - usa items please use this to go to the website and then use the choice at the bottom of the page .\nwwcidawgmcln", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.959+0000", "entityId": 6292, "properties": {"text": "Subject: use this handy interest calculator to get current rate information . dhfeo\nuse this handy interest calculator to get current rate availability data , without giving out any personal or private information .\nthis was sent to you by an mediagroup for smartmortgageusa . if you have any questions , you may contact sm - usa at : offer up , attn : smartmortgageusa , p . o . box 78361 , san francisco , ca 94107 - 8361 . if you wish to exclude yourself from future sm - usa items please use this to go to the website and then use the choice at the bottom of the page .\ncyennpicahgf", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.964+0000", "entityId": 6293, "properties": {"text": "Subject: you don _ t know how to attract customers to your website ?\nsubmitting your website in search engines may increase your online sales dramatically .\nif you invested time and money into your website , you simply must submit your website\nonline otherwise it will be invisible virtually , which means efforts spent in vain . if you want\npeople to know about your website and boost your revenues , the only way to do that is to\nmake your site visible in places where people search for information , i . e . submit your\nwebsite in multiple search engines .\nsubmit your website online and watch visitors stream to your e - business .\nbest regards ,\nroselle sims", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.968+0000", "entityId": 6294, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 12 jul 2005 12 : 09 : 30 + 0200\nfrom antonio . urjc . es [ 193 . 147 . 184 . 24 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\nana . elvira @ urjc . es\n( reason : deferred )\n( expanded from : )\n- - - - - transcript of session follows - - - - -\nmaildrop : error writing to mailbox .\nana . elvira @ urjc . es . . . deferred : local mailer ( / usr / sbin / sensible - mda ) exited with ex _ tempfail\nmessage could not be delivered for 5 days\nmessage will be deleted from queue", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.974+0000", "entityId": 6295, "properties": {"text": "Subject: bring on the best software . . . at the most reasonable prices !\nbest software prices .\nwhy can ' t they invent something for us to marry instead of women ?\nah ! the clock is always slow ; it is later than you think .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.980+0000", "entityId": 6296, "properties": {"text": "Subject: software taking a bite out of your budget ? try oem !\ncan ' t draw a straight line ? well . . . now you can !\nthey have computers , and they may have other weapons of mass destruction .\nhe who limps still walks .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.985+0000", "entityId": 6297, "properties": {"text": "Subject: vaal medz\nhow t pestilent o save on your medlcations over 70 % .\nphar anthropoid mshop - suc mucilage cessfull and proven way to save your mo impendence ney .\ngauleiter v\na jauntily g\nflection al\nl woodbind u\nnatural l\nmetcast rac selachian l\ni partsong s anthropology val\nmelodramatic m\nandmanyother .\nbes unstrap t prlces .\nwo phthisic rldwide shlpplng .\neasy ord inconvenient er form .\ntotal confident exanimate iaiity .\n250 , 00 roumanian 0 satisfied customers .\norder toda retrial y and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.990+0000", "entityId": 6298, "properties": {"text": "Subject: very cool offrr\nhow to save on your medlcations gabion over 70 % .\npharms select hop - successfull and proven popcorn way to save your secret money .\nspinal v\ncodicil ag\nmetayer al\nl noctambulizm u\nskilly l\nr rochet a ginnery cl\ni calculating sva gudgeon l\ndoomed m\nandmanyother .\nbest prlces extrude .\nworldwide shlpp confront lng .\neasy or hypothesis der form .\ntotal confiden conquest tiaiity .\n250 , 000 s hyssop atisfied customers .\norder t egoistic oday and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:33.996+0000", "entityId": 6299, "properties": {"text": "Subject: back to happy and healthy life . . .\nwe ' ve created an online pharmacy you can trust .\nbe content with your lot ; one cannot be first in everything .\ncourage is the power to let go of the familiar .\nthe last christian died on the cross .\nif an idea ' s worth having once , it ' s worth having twice .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.001+0000", "entityId": 6300, "properties": {"text": "Subject: are you listed in major search engines ?\nsubmitting your website in search engines may increase your online sales dramatically .\nif you invested time and money into your website , you simply must submit your website\nonline otherwise it will be invisible virtually , which means efforts spent in vain . if you want\npeople to know about your website and boost your revenues , the only way to do that is to\nmake your site visible in places where people search for information , i . e . submit your\nwebsite in multiple search engines .\nsubmit your website online and watch visitors stream to your e - business .\nbest regards ,\nivan finch", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.007+0000", "entityId": 6301, "properties": {"text": "Subject: better sex ! better relationship !\nthe real viagra deal on the net ! simply the best !\nit is the nature of all greatness not to be exact .\nhe appears to have been weened on a pickle .\nso long as there are men there will be wars .\namericans never quit .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.015+0000", "entityId": 6302, "properties": {"text": "Subject: discover the new winning sexual erection pills !\nprescriptions for female sexual disfunction\ni exist as i am , that is enough .\nthe covers of this book are too far apart .\na person ' s a person , no matter how small .\na young man is embarrassed to question an older one .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.022+0000", "entityId": 6303, "properties": {"text": "Subject: medzz for your life\nhow to save on your medlca furthest tions over 70 % .\npharms guardsman hop - successfull and pr cadger oven way to save your mone preplan y .\nneckband v\nundress ag\na confines l\nl primaeval u\nbatting l\ntypewriter ra immutable cl\nobservation isv whitish al\nlabourist m\nandmanyother .\nbest prlce paterae s .\nworldwide s revulsion hlpplng .\neasy order fo hospitality rm .\ntotal confiden haricotbean tiaiity .\n2 underrate 50 , 000 satisfied customers .\norder t pistil oday and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.026+0000", "entityId": 6304, "properties": {"text": "Subject: use this handy interest calculator to get current rate information . chhfb\nuse this handy interest calculator to get current rate availability data , without giving out any personal or private information .\nthis was sent to you by an mediagroup for smartmortgageusa . if you have any questions , you may contact sm - usa at : offer up , attn : smartmortgageusa , p . o . box 78361 , san francisco , ca 94107 - 8361 . if you wish to exclude yourself from future sm - usa items please use this to go to the website and then use the choice at the bottom of the page .\nwjodybxdzknt", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.031+0000", "entityId": 6305, "properties": {"text": "Subject: excelleent news\nhow halving to save on your medlcations over 70 % .\npharms grindery hop - suc bunker cessfull and proven way to save your m meteorograph oney .\nforeknow v\na selfcontained g\na blushfool l\nl magnetron u\ntestatrix l\nr bulldozer ac oration l\ni squalor s sententious val\ncentigram m\nandmanyother .\nbest p dexterity rlces .\nwo arrogance rldwide shlpplng .\neasy o astragalus rder form .\ntotal co picturebook nfidentiaiity .\n250 , 000 satisfied customers frowsy .\nor aggregation der today and save !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.036+0000", "entityId": 6306, "properties": {"text": "Subject: here is the place to find the one you ' ve been looking for .\nhere ' s a service for singles over 30 .\nmany lucky singles , like yourself , have found the love of their life here .\nswpvfdwt", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.041+0000", "entityId": 6307, "properties": {"text": "Subject: greeat medz\nhow to save on your medlcations over 70 % anglistics .\npharmsh rehouse op - successfull and proven wa awoken y to save your mone feudality y .\ninfluent v\na bankrupt g\na discontinuance l\nl reliance u\npaydesk l\npowwow ra televisional cl\nprovided isva pyramid l\nelementary m\nandmanyother .\nbest pr sympathetic lces .\nworldwide shlpplng seventh .\neasy o elliptical rder form .\nt cervine otal confidentiaiity .\n25 monstrous 0 , 000 satisfied customers .\norder today and s scarecrow ave !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.046+0000", "entityId": 6308, "properties": {"text": "Subject: levltrra , xana , merldll\nhello , try this revolutionary product , cialis soft tabs .\ncialis soft tabs is the new impotence treatment drug that everyone\nis talking about . soft tabs acts up to 36 hours , compare this to\nonly two or three hours of viagra action ! the active ingredient is\ntadalafil , same as in brand cialis .\nwant cheap cialis and other meds ?\nno embarasing doctors visits !\nover 5 miiiion custome savings rs in 130 countries\nwe charge a flat fee of $ 15 shipping world wide .\nall orders will be processed and dispatched within 24 hrs . via express mail .\nworld delivery takes 7 - 14 days\nso look here and save ! http : / / osseously . net / index . php ? cid\nto be taken out , go here\n7131", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.050+0000", "entityId": 6309, "properties": {"text": "Subject: we are need you tjuz s cif\nmercy advertising group presents for your attention :\nthey need your help !\nthe act of terrorism in london on july , 7 2005 took the lives of many\ninnocent people . it was directed not against one nation , but against all\nthe nations .\nits up to you to help the injured and the families who lost their\nrelatives in this tragedy .\nto help click here\nif you dont want to receive our advertising letters any\nmore , click here\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.055+0000", "entityId": 6310, "properties": {"text": "Subject: esecure online pharmacies\ncialis offers efficacy and spontaneity in your love life .\nmy music is best understood by children and animals .\none can acquire everything in solitude - except character .\npeople find life entirely too time - consuming .\nthe truth is more important than the facts .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.064+0000", "entityId": 6311, "properties": {"text": "Subject: you don _ t know how to attract customers to your website ?\nsubmitting your website in search engines may increase your online sales dramatically .\nif you invested time and money into your website , you simply must submit your website\nonline otherwise it will be invisible virtually , which means efforts spent in vain . if you want\npeople to know about your website and boost your revenues , the only way to do that is to\nmake your site visible in places where people search for information , i . e . submit your\nwebsite in multiple search engines .\nsubmit your website online and watch visitors stream to your e - business .\nbest regards ,\nanderson west", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.068+0000", "entityId": 6312, "properties": {"text": "Subject: trusted savings on prescription drugs .\nnow you can diversify the acts in your bedroom !\nthe foundation of every state is the education of its youth .\neverybody hates me because i ' m so universally liked .\nsilent gratitude isn ' t much use to anyone .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.073+0000", "entityId": 6313, "properties": {"text": "Subject: ms 2003 software titles available for download\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 adobe photoshop 9 . 03 windows xp pro 4 adobe acrobat 7 pro 5 flash mx 20046 corel draw 127 norton antivirus 20058 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe illustrator 11 see more by this manufacturer microsoft symantec adobe customers also bought these other items . . . microsoft office professional edition * 2003 * microsoftchoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 86 % ) availability : available for instant download ! coupon code : 3 ff 9 kuc sales rank : # 1 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 15177 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobechoose : view other titles list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : zxghlajf sales rank : # 2 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1148 reviews . write a review . microsoft windows xp professional or longhorn edition microsoftchoose : view other titles list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : ho 7 urce sales rank : # 3 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 195546 reviews . write a review . adobe acrobat professional v 7 . 0 adobechoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 85 % ) availability : available for instant download ! coupon code : pl 92 bohsg sales rank : # 4 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 156489 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.078+0000", "entityId": 6314, "properties": {"text": "Subject: no # 1 drug for male impotence\nbuy cheap prescriptions online\nhttp : / / fre . ix 3 tmjitfsi 8 ml 0 . cisekldej . com\nambition is a dream with a v 8 engine .\naccidents will occur in the best regulated families .\nbeing kind to your dog doesn ' t make you a better artist .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.083+0000", "entityId": 6315, "properties": {"text": "Subject: impress your girl with a huge cumshot !\nheya !\nhas your cum ever dribbled and you wish it had shot out ?\nhave you ever wanted to impress your girl with a huge cumshot ?\nspur - m is the only site to offer an all natural male enhancement\nformula that is proven to increase your sperm volume by up to 500 % .\nour highly potent , volume enhancing formula will give our results\nin days and comes with an impressive 100 % guarantee .\nimagine the difference ( look and feel ) between dribbling your cum\ncompared to shooting out burst after burst . try spur - m now ! and\nwith our money back guarantee you have absolutely nothing to lose !\nlook here : http : / / osseously . net / cum /\nno thanks : http : / / osseously . net / rr . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.088+0000", "entityId": 6316, "properties": {"text": "Subject: windows xp pro $ 49 . 95 ms 2003\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 adobe photoshop 9 . 03 windows xp pro 4 adobe acrobat 7 pro 5 flash mx 20046 corel draw 127 norton antivirus 20058 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe illustrator 11 see more by this manufacturer microsoft symantec adobe customers also bought these other items . . . microsoft office professional edition * 2003 * microsoftchoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 86 % ) availability : available for instant download ! coupon code : qaxvogcpu sales rank : # 1 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1956 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobechoose : view other titles list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : bcqqf sales rank : # 2 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 18525 reviews . write a review . microsoft windows xp professional or longhorn edition microsoftchoose : view other titles list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : i 7 fxw 5 xj sales rank : # 3 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1879 reviews . write a review . adobe acrobat professional v 7 . 0 adobechoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 85 % ) availability : available for instant download ! coupon code : ejwludroy sales rank : # 4 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 162182 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.097+0000", "entityId": 6317, "properties": {"text": "Subject: you ' ve received a greeting from a family member !\nd >\nyou have just received a virtual\npostcard from a family member !\n.\nyou can pick up your postcard at\nthe following web address :\n.\n.\nif you can ' t click on the web address\nabove , you can also\nvisit 1001 postcards at http : / / www . postcards . org / postcards /\nand enter your pickup code , which is : a 91 - valets - cloud - mad\n.\n( your postcard will be available\nfor 60 days . )\n.\noh - - and if you ' d like to reply\nwith a postcard ,\nyou can do so by visiting this web address :\nhttp : / / www 2 . postcards . org /\n( or you can simply click the reply to this postcard\nbutton beneath your postcard ! )\n.\nwe hope you enjoy your postcard ,\nand if you do ,\nplease take a moment to send a few yourself !\n.\nregards ,\n1001 postcards\nhttp : / / www . postcards . org / postcards /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.103+0000", "entityId": 6318, "properties": {"text": "Subject: more medz\nhow to save dhurry on your medlcations over 70 % .\npharmsho velveting p - succ unprocurable essfull and proven way to save your mon dilapidated ey .\ndeform v\nantarctic ag\na conjunctive l\nl streamy u\ncostless l\nr nasalization a staring cl\nbypath isva caveman l\nmultifold m\nandmanyother .\nbest topple prlces .\nworldwide shl informer pplng .\neasy pisces order form .\ntotal confidentiaiity chiasmus .\n250 , 000 neighbourship satisfied customers .\norder today and save logician !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.108+0000", "entityId": 6319, "properties": {"text": "Subject: largest collection of porn mo \\ / ies ever - x 64\ncome explore the world ' s largest adult studio ! see all the biggest names in porn in exclusive hardcore xxx movies . vivid got the hottest pornstars !\nhttp : / / bunt . info . babylom . info /\n- - - - - - - - - - - - - -\ncanister campsite conway conspire\nbyzantine alicia abyssinia barrett\ncowhide camilla adolescent composure", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.115+0000", "entityId": 6320, "properties": {"text": "Subject: restore your access\nsecurity\nassistance\nit has come to our attention that your account information needs to be\nupdated as part of our continuing commitment to protect your account and to\nreduce the instance of fraud on our website . just update your personal records and you will not run into\nany future problems with the online service .\nhowever , failure to update your records until july . 21 , 2005 your account considered as suspension .\nplease update your records as soon as this email being sent .\nour system requires further account\nverification .\ncase id number : pp - 563 - 002 - 410\nonce you have updated your account records , your session will not be\ninterrupted and will continue as normal .\nas\nsoon as possible . allowing your account access to remain\nlimited for an extended period of\ntime may result in further limitations on\nthe use of your account and possible account\nclosure .\nclick here to update your\naccount\nyou can\nalso confirm your identity by logging into your paypal account\nat https : / / www . paypal . com / us / .\nand you will be directed to the verifying page .\nthank you for using paypal !\nthe paypal team\nplease do\nnot reply to this e - mail . mail sent to this address cannot be\nanswered unscribe - mailing @ paypal . com . opt : in , opt : out for assistance ,\nlog\nin\nto your paypal account and choose the \" help \" link in the footer of\nany page .\nto receive email notifications in plain text\ninstead of html , update\nyour preferences here .\npaypal email id pp 468\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.131+0000", "entityId": 6321, "properties": {"text": "Subject: do not settle for less than a rolex .\nitalian crafted rolex from $ 75 to $ 275 - free shipping\nhttp : / / revamp . fcke . com / repli / dir /\nit is easy to be brave from a safe distance .\nthe multitude of books is making us ignorant .\nit is better to be envied than pitied .\nno bird soars too high if he soars with his own wings .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.136+0000", "entityId": 6322, "properties": {"text": "Subject: urgent reply .\nfrom the desk of : barr arisman shonikon\nchambers & associates\nno 56 b . aba road , port - harcourt nigeria\nprivate email address ( @ shymail . com )\ndear\ni sincerely apologize for intruding into your privacy especially by\ncontacting you through this means for a business transaction of this\nmagnitude , but due to its seriousness and urgency it therefore became\nnecessary for me to seek your assistance .\ni am barr . arisman shonikon , the personal lawyer to late mr . frank ionescu , a\nforeigner , who worked with an oil servicing company in the oil rich niger\ndelta area of bayelsa state . i am contacting you concerning my late client\nand an investment he made . i would respectfully request that you keep the\ncontents of this mail confidential and respect the integrity of the\ninformation you come by as a result of this mail . i contacted you\nindependently and no one should be informed of this communication . i would\nlike to intimate you with certain facts that i believe would be of interest\nto you .\nthis is a genuine transaction and is 100 % risk free . all i ' m demanding from\nyou is your honest co - operation to enable us achieve our goal , and not a\nperfidious person . on the 6 th of may , 2002 it was reported to us that my\nclient , his wife and their only daughter were involved in a local plane\ncrash at kano state , enroot abuja ( the capital city ) all occupants in the\nplane lost their lives , unfortunately on this same flight were other\ndignitaries like the sports minister and a host of others\nmeanwhile , until his death , my late client had a fixed deposit account of\nusd $ 15 . million deposited in a security company ( unic security company )\nhere . recently , i received an ultimatum from the security company asking me\nto provide my late client ' s relative so that the money would be given to\nthem . but unfortunately it was discovered that my late client did not\ndeclare any identifiable family member in all the official documents he\ntendered to the security company while opening the account .\ntherefore , this development leaves me as the only person with the full\npicture of what the prevailing situation is in relation to the deposit my\nlate client made and who is entitled to be the bona fide beneficiary / next of\nkin or relative because he died intestate . therefore , if i fail to locate\nany of his relatives or his next of kin ( and have this money transferred to\nthem ) the security company will at the expiration of the 6 weeks ultimatum\ngiven to me confiscate the account .\naccording to the ultimatum issued to me by the security company , if i fail\nto present to them my late client ' s relative , with a legitimate statement of\nclaim for the money before the given time they will confiscate the account\nand the money declared ' unclaimed balance ' . this will result in the money\nbeing taken over by the security company . this will not happen if i have my\nway .\nsince i have been unsuccessful in locating the relatives of my late client\nall these while , my proposal , therefore , is to present you as the next of\nkin / relative of my client due to the fact that you are a foreigner and can\neasily pass as a possible relative of my client . i know you will be\nwondering how possible this could be but i assure you that this is simple .\ni therefore seek your consent to present you as the next of kin to my client\nso that the money he deposited with the security company would be paid to\nyou and there after you and i will share the money 40 % for you and i will be\ntaking 60 % . i assure you that the deposit would be released to you within a\nfew days because i have all the relevant information that would facilitate\nthat will be required on documentation .\nfirst , i will like you to provide immediately the following information :\nyour full names .\ncontact address .\ntelephone / fax numbers .\nwith this information i will prepare the necessary documents and affidavit\nthat will put you in place as the next of kin . after we have successfully\nsatisfied the requirements of the bank the money totaling usd 15 . million\nwould be paid into your account for you to take 40 % and i will be taking\n60 % . all i require is your honest co - operation to enable us see this\nthrough .\nthere is no risk at all because everything would be done legally and my\nposition as a qualified attorney will facilitate everything . secondly , i\nwill give you all the necessary documents that would serve as evidence\nproving that you are the next of kin / relative of my late client . these\ndocuments will legally conferm on you the status to act as the beneficiary\nof the estate of my late client .\nwhat i related to you might smack of unethical practice but i want you to\nunderstand that this is a once in life time opportunity capable of turning\naround our situation . the truth is that this money would not be taken by the\ngovernment but by some greedy security company officials and i would not\nfold my arms and watch this happen hence my decision to contact you .\nif you are interested in doing this transaction with me kindly send your\nreply to this email address : ( arismanshonikon @ shymail . com )\nthank you as i await your positive response .\nbarr . arisman shonikon .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.140+0000", "entityId": 6323, "properties": {"text": "Subject: it works fine\nwant to know how to save over nausea 60 % on your piils ?\nhttp : / / www nightly . registeouse . com - successfull and proven way t seaborn o save you sememe r money .\nhopelessness v\ndeliquescence ag\neffectuation al\noutspeak lu\nauxiliary l\nr pothole a tapestry cl\nactinic isva connoisseur l\npecksniff m\nandmanyother .\nbest prlc ponderosity es .\nhigh confluent quaiity .\nworldwide shlpplng desire .\nto stupidity tal confidentiaiity .\n250 . 000 + satisfied cust flexile omers .\nhave a nice d nodulated ay !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.145+0000", "entityId": 6324, "properties": {"text": "Subject: prime lenders application status\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 046 - 073 ]\n* negotiable amount : $ 182 , 092 to $ 657 , 186\n* rate : 3 . 30 % - 5 . 52 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\ngus hammond\nsenior account manager\nlyell national lenders , llc .\ndatabase deletion :\nwww . lend - bloxz . com / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.150+0000", "entityId": 6325, "properties": {"text": "Subject: re : september 11 , 2001\nhi my name is jason , i recently visited www . muhajabah . com / wtc . htm and wanted to offer my services . we could help you with your september 11 , 2001 website . we create websites that mean business for you ! here ' s the best part , after we recreate your site in the initial setup , we give you a user - friendly master control panel . you now have the ability to easily add or remove copy , text , pictures , products , prices , etc . when you want to ! i would be happy to contact you and brainstorm some ideas . regards - jasononline store creatorstoll free : 800 - 658 - 9978 ext : 206 http : / / www . . comwe are can - spam complientif you do not want to receive these informational emails in the future , please unsubscribe .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.154+0000", "entityId": 6326, "properties": {"text": "Subject: neugierig ?\n- - - - 870879228701464\ncontent - type : text / plain ;\ncontent - transfer - encoding : quoted - printable\nwas sich in diesen familien zwischen mutter und\ntochter abspielt , ist eigentlich ein absolutes tabu ,\naber gerade deshalb auch so geil ! wir haben die\nheissesten muttis mit ihren jungen toechtern beim\ngeilen sex gefilmt und fuer dich ins netz gestellt !\nhttp : / / www . anythingforyou . cc\ngeile vibratorspiele , heisse zungenakrobatik oder auch\nmal vorsichtiges fisting - wenn mutter und tochter es\nhier miteinander treiben , dann prickelt es richtig .\nhttp : / / www . anythingforyou . cc\nerlebe die geilen inzestspiele , den hauch des\nverbotenen und erlebe das letzte grosse tabu in\ndeutschen schlafzimmern hautnah !\nhttp : / / www . anythingforyou . cc\nsie wollen unseren newsletterservice abbestellen ?\nhttp : / / www . anythingforyou . cc / revoke . php\n- - - - 870879228701464 - -", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.159+0000", "entityId": 6327, "properties": {"text": "Subject: software should be easy to use !\nfully functional , unrestricted copy of the software . get more results with less efforts .\nit ' s better to be burnished with use than rusty with principle .\nwhere reason fails , time oft has worked a cure .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.163+0000", "entityId": 6328, "properties": {"text": "Subject: all star break special : get a flag to support your favorite team -\nfree shipping\narmstrong flag company\nfree shipping free car flag\n( min . order $ 35 . 00 )\n5 ' white pole w / mounting bracket\n$ 24 . 00 ea\norder today\narmstrong flag company 20 park st . winchester , ma 01890 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.168+0000", "entityId": 6329, "properties": {"text": "Subject: mid summer flag special : free shipping\narmstrong flag company\nspring special : free shipping\norder\ntoday and receive a free car flag\nfree shipping on all orders over $ 35 . 00 .\npromo good thru june 30 th . may not be combined with any other promo ,\noffer or discount from armstrong flag company\narmstrong flag company\ncall today :\n1 - 800 - 458 - 0052\nwww . armstrongflag . com\narmstrong flag company 20 park st . winchester , ma 01890 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.173+0000", "entityId": 6330, "properties": {"text": "Subject: hot stock info : drgv announces another press release\na $ 3 , 800 investment could be worth $ 50 , 000 in a short period of time . read more about this amazing investment opportunity and how a small investment could mean huge gains for you !\nthere\nis no doubt that china stocks , which are new to u . s . stock markets , are destined to blast off . it happens time and time and time\nagain . thats why informed investors like warren buffett are getting\nrich on china stocks . the market is enormous and now its your\nturn . the upside potential for drgv is huge . with potential revenues of nearly\n$ 30 million us in the coming 12 months , dragon venture is a real player .\neverything about this superbly run company says its going to be another big\nchinese winner .\nwarren buffett\nsaid u . s . stocks are too expensive so he poured a chunk of his money into china . everyone knows what happens when mr . buffett gets into a market , it usually explodes !\nhere is why we are placing a\ntarget price of $ 1 . 00 per share ( investment opinion )\ndragon venture ( otcpk : drgv ) has just recently gone public in the us .\nanalysts predict an enormous investment opportunity within the china telecom industry .\nmobile marketing is growing in popularity , in china , emarketer reports that 67 % of mobile phone users have received sms messages from advertisers , 39 % in asia , 36 % in europe and only 8 % in us .\nmanagement has forecasted revenue growth to $ 30 million in 2006 and $ 50 million in 2007 .\nshort messaging services ( sms ) is a strong telecom niche . this is an asian phenomenon ! !\naccording to the ministry of information technology of china , chinese sms usage accounts for one - third of the world ' s traffic !\nchina has the potential to be the largest telecommunications market in the world , said matthew j . flanigan , u . s . telecommunications industry president .\ndrgv won ' t be selling at $ 0 . 055 a share for long . within days , the buzz about this company will spread on the street . the stock is ready to move up for a breakout to $ . 50 to $ 1 per share . drgv is a must buy for any micro - cap investors . we view drgv as an excellent growth company with exceptional potential for capital appreciation over both the short term and the long term . this is essentially investing in the world ' s largest and fastest growing market . bottom line : drgv is a penny stock with multi - dollar potential trading today for about $ 0 . 055 / share . we are targeting the stock to trade in the range of $ 1 a share . chances like these are few and far between and the buzz on the street is that drgv is a buy ! who knows when you ' ll have another chance to turn such a huge profit again ? smart investors strike when the iron ' s hot and with drgv , it ' s sizzling\ninvestor alert specializes in investment research in china . we are not registered investment advisor or broker / dealer . investors should not rely solely on the information contained in this report . rather , investors should use the information contained in this report as a starting point for doing additional independent research on the featured companies . factual statements in this report are made as of the date stated and are subject to change without notice . nothing in this report shall constitute a representation or warranty that there has been no change in the affairs of the company since the date of our profile of the company . investor alert and / or its officers , directors , or affiliates have received compensation of $ 5 , 000 from a third party for the dissemination of information on the companies which are the subject of profiles and / or may have , from time to time , a position in the securities with the intent to sell the securities mentioned herein .\ncurrent press release\ndragon venture signs partnership agreement with shanghai runyuan logistics company , ltd . to form a joint venture\nmonday july 18 , 7 : 46 am et ft . lauderdale , fla . , july 18 , 2005 ( primezone ) - - dragon venture ( other otc : drgv . pk - news ) , a holding company of high - tech companies in china , announced today that shanghai cnnest technology development company , limited ( ` ` cnnest ' ' , http : / / www . cnnest . com ) , a subsidiary of drgv , recently signed a partnership agreement with shanghai runyuan logistics company , limited ( ` ` runyuan ' ' ) to form a joint venture .\nunder the agreement , cnnest and runyuan will establish a joint venture with shanghai xintong technology company , limited . this joint venture is dedicated to developing mobile internet solutions for logistics for the trucking industry in china . as a leading company in the field of mobile internet solutions and applications in china , cnnest will be responsible for developing mobile internet applications for logistics involving the trucking and freight industries , and seek to have the applications available through both china mobile and china unicom . in return , cnnest will have 25 percent ownership of the new joint venture . runyuan will provide all the funding for this joint venture including cost associated with the development and refinement of the applications , and in turn will have 75 percent ownership of the joint venture .\nhidy cheng , vice president of dragon venture and general manager of cnnest , commented , ` ` we are very excited about this joint venture , because we believe the potential of this solution in the marketplace could be tremendous . shanghai runyuan is a leading company in the logistics industry in china . they have successful business operations , and an excellent reputation in china . the partnerships will provide us a great opportunity to turn our research and development into a commercial application for the logistics industry . the applications will provide the logistics industry a very efficient system in which information for transportation can be accessed through a cellular phone , anywhere . our revenues will be generated from an annual fee of the use of the system for each account and usage fee of the system . we believe this partnership will generate substantial income for the company . ' '\nabout dragon venture\ndragon venture ( ` ` dragon ' ' ) is doing business in china through its subsidiaries . dragon was established to serve as a conduit between chinese high - growth companies and western investors . the current focus of dragon is on the development of wireless 3 g - based applications and business solutions . two companies that dragon has acquired are among the leading providers of mobile internet applications and business solutions in china . as china emerges as a growing force on the global stage , dragon ' s professionals will provide invaluable services for western investors seeking to gain access to the chinese high - tech economy . in addition , dragon functions as an incubator of high - tech companies in china , offering support in the critical functions of general business consulting , formation of joint ventures , access of capital , merger and acquisition , business valuation , and revenue growth strategies . dragon will develop a portfolio of high - tech companies operating in china . our focus will be on innovative technological applications , which are poised to alter the competitive landscape of the industry . in addition , the company acquires and invests in innovative technology companies in china or forms joint ventures with both american and chinese companies , focusing on emerging technology industries including telecommunication , information technology , wireless applications , and other high - tech industries . for more information about dragon venture , please visit http : / / www . dragonventure . net .\nsafe harbor statement\ncertain statements set forth in this press release constitute ` ` forward - looking statements ' ' . forward - looking statements include , without limitation , any statement that may predict , forecast , indicate , or imply future results , performance or achievements , and may contain the words ` ` estimate ' ' , ` ` project ' ' , ` ` intend ' ' , ` ` forecast ' ' , ` ` anticipate ' ' , ` ` plan ' ' , ` ` planning ' ' , ` ` expect ' ' , ` ` believe ' ' , ` ` will likely ' ' , ` ` should ' ' , ` ` could ' ' , ` ` would ' ' , ` ` may ' ' or words or expressions of similar meaning . such statements are not guarantees of future performance and are subject to risks and uncertainties that could cause the company ' s actual results and financial position to differ materially from those included within the forward - looking statements . forward - looking statements involve risks and uncertainties , including those relating to the company ' s ability to grow its business . actual results may differ materially from the results predicted and reported results should not be considered as an indication of future performance . the potential risks and uncertainties include , among others , the company ' s limited operating history , the limited financial resources , domestic or global economic conditions - - especially those relating to china , activities of competitors and the presence of new or additional competition , and changes in federal or state laws , restrictions and regulations on doing business in a foreign country , in particular china , and conditions of equity markets .\ndragon venture 335 guoding rd . building 2 , ste . 2009 shanghai , china 200081 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.179+0000", "entityId": 6331, "properties": {"text": "Subject: more then 70 great pornstars sex movles ! dowlnoad all our collection ! - x 853\ncome explore the world ' s largest adult studio ! see all the biggest names in porn in exclusive hardcore xxx movies . vivid got the hottest pornstars !\nhttp : / / armful . biz . babylom . info /\n- - - - - - - - - - - - - -\nboatyard caption configure connecticut\ndespise catskill brady churchwoman\ncannon corpora bahama byzantine", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.184+0000", "entityId": 6332, "properties": {"text": "Subject: manage your diabetes effortlessly with diabetic plus\nto no longer get these messages from diabetic plus inc . , please click here :\nunsubscribe\nor send a postal mail to :\ndiabetic plus inc .\n12000 biscayne blvd\nsuite 607\nnorth miami beach , fl . 33181\ndiabetic plus 12000 biscayne blvd . , ste . 509 north miami , fl 33181 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.189+0000", "entityId": 6333, "properties": {"text": "Subject: viagra helps you have great sex !\nhaving problems in bed ? we can help !\na suspicious mind always looks on the black side of things .\nin order to succeed , we must first believe that we can .\nwell behaved women seldom make history .\nmost conversations are simply monologues delivered in the presence of witnesses .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.194+0000", "entityId": 6334, "properties": {"text": "Subject: easy - tag board : : more options to fit your site\nthank you for your interest in easy - tag board . our goal is to provide you with the best software and support possible . we know you have a choice and appreciate the opportunity to assist with your online needs . we are confident that you will see the benefits of using the easy - tag board .\nhighly customizable easy to configure fast , reliable , & secure\nserver o / s independent cross - browser compatible more features text - decoration : none \" face = arial , helvetica , sans - serif > www . easy - tagboard . com\nyou are receiving this email because you opted - in to our mailing list or someone you know referred you to us . we respect your right to privacy and your desire not to be bothered by unwanted emails . if you do not wish to receive any further newsletters , please click the link below to be permanently removed from out mailing list .\nto unsubscribe click ( here ) .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.199+0000", "entityId": 6335, "properties": {"text": "Subject: do you want a rolex for $ 75 - $ 275 ?\nreplica watches\nhttp : / / dragon . valentlne . com / repli / lib /\nfreedom is nothing else but a chance to be better .\nit does not do to dwell on dreams and forget to live .\nthe only thing sadder than a battle won is a battle lost .\nassassination is the extreme form of censorship .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.205+0000", "entityId": 6336, "properties": {"text": "Subject: you ' re my dream come true 0\nhello my hope !\ni am not sure you get this message but if you got i want you to know\nthat i want to travel to your country to work in two weeks and i just\nwant to meet right man . i live in russia and my goal is to leave this\ncountry because it is impossible to live here for young pretty woman .\nif you have not wife or girlfriend , maybe we could try to meet ?\ni am tayana , i am 25 years old , please write to me directly\nto my mail - lapa 201 @ pochta . ru see you soon ! ! ! !\nconcrete nocturnal flung glimmer wooster anamorphic contraceptive droll rob foothill gaur estonia tollgate derby electrify baseball franca bath\nbutane trytophan freeman fern farmland octal britten canfield airline anglophobia bun disquietude chauffeur boom remediable baseline shine extrinsic quasiperiodic fed dilatory carbonate longfellow pax sylvia fischer needlepoint blond cloy grayish biz lexical immeasurable semester\nbrisk cobb nut buzzword aperture rockwell burg validate spartan haughty spiritual liberal ostensible angstrom obscene scala thiamin cyprus accord thornton artichoke malaise reversible contribution linoleum onomatopoeic conferred customhouse condemnate bryce call", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.210+0000", "entityId": 6337, "properties": {"text": "Subject: low price software\nhttp : / / woe . mainoemstore . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.214+0000", "entityId": 6338, "properties": {"text": "Subject: downloadable software\nhttp : / / rosary . realoemsales . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.219+0000", "entityId": 6339, "properties": {"text": "Subject: low price software\nhttp : / / neonate . setupmefree . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.225+0000", "entityId": 6340, "properties": {"text": "Subject: branded softs\nhttp : / / p ' s . mainoemstore . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.233+0000", "entityId": 6341, "properties": {"text": "Subject: cheap software\nhttp : / / uracil . mainoemstore . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.239+0000", "entityId": 6342, "properties": {"text": "Subject: macromedia studio mx 2004 ( 1 cd ) $ 55\nhttp : / / bizarre . mainoemstore . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.243+0000", "entityId": 6343, "properties": {"text": "Subject: software store\nhttp : / / infinity . realoemsales . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.248+0000", "entityId": 6344, "properties": {"text": "Subject: software megastore\nhttp : / / grimaldi . mainoemstore . com / ? a = 3107", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.256+0000", "entityId": 6345, "properties": {"text": "Subject: ebay notice - your ebay account has been stolen !\nupdate\nyour account information within 24 hours\nvalued ebay\nmember ,\naccording to our site policy you will have to confirm that you are the\nreal owner of the ebay account by completing the following form or else your\naccount will be suspended within 24 hours for investigations .\nnever share your\nebay password to anyone !\nestablish your proof of\nidentity with id verify ( free of charge ) - an easy way to help others trust\nyou as their trading partner . the process takes about 5 minutes to complete\nand involves updating your ebay information . when you ' re successfully\nverified , you will receive an id verify icon\nin your feedback profile . currently , the service is only available to\nresidents of the united states and u . s . territories ( puerto rico , us virgin\nislands and guam . )\nto update your ebay records\nclick here :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.262+0000", "entityId": 6346, "properties": {"text": "Subject: great news . youve been pre - approved for a new . .\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 708 - 107 ]\n* negotiable amount : $ 192 , 483 to $ 678 , 843\n* rate : 3 . 30 % - 5 . 66 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\nstephen britton\nsenior account manager\nlyell national lenders , llc .\ndatabase deletion :\nwww . lend - bloxz . com / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.267+0000", "entityId": 6347, "properties": {"text": "Subject: still wanna her ? : - )\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactly when you want .\nciaiis has a iot of advantaqes over viaqra\n- the effect lasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with alcohol ! shipping to any country available !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.273+0000", "entityId": 6348, "properties": {"text": "Subject: glasglow follow up\nhello objective - view . de\ni wanted follow up to yesterdays email to point out the glasglow partner\nprogram to those who may be interested . we offer a 40 % discount and\nexclusive license agreement for your region . we do dropship using dhl free\nof charge . if this may be something that interests you please let me know .\nif we are already in negotiation , exchanged links or you have listed\nyourself on the remove list please disregard this email and no further\nreply is required .\nsincerely\nmichael\nwww . glasglow . com\nif you do not wish to receive further updates please enter your email at\nhttp : / / www . cbxsales . com / un . html . they have agreed to send us the remove\nlists so that we do not keep bothering those that do not wish to be\nbothered .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.277+0000", "entityId": 6349, "properties": {"text": "Subject: does your business depend on the online success of your website ?\nsubmitting your website in search engines may increase your online sales dramatically .\nif you invested time and money into your website , you simply must submit your website\nonline otherwise it will be invisible virtually , which means efforts spent in vain . if you want\npeople to know about your website and boost your revenues , the only way to do that is to\nmake your site visible in places where people search for information , i . e . submit your\nwebsite in multiple search engines .\nsubmit your website online and watch visitors stream to your e - business .\nbest regards ,\nmyrtice melendez", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.282+0000", "entityId": 6350, "properties": {"text": "Subject: still wanna her ? : - )\nyou have not tried cialls yet ?\nthan you cannot even imagine what it is like to be a real man in bed !\nthe thing is that a great errrectlon is provided for you exactiy when you want .\ncialis has a lot of advantages over viagra\n- the effect iasts 36 hours !\n- you are ready to start within just 10 minutes !\n- you can mix it with aicohoi ! shippinq to any country avaiiabie !\nget it right now ! .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.288+0000", "entityId": 6351, "properties": {"text": "Subject: it woorks fine\nwant to know how to save over 60 pigsty % on your piils ?\nhttp : / / www . afteading . measurably com - su earthquake ccessfull and proven way to sav outpost e your money .\naltercation v\ntrifoliate ag\nprayer al\nrollick lu\nserous l\nr commiserative a syphilitic cl\ndestitution isva breeder l\nascribe m\nandmanyother .\nbe bacillus st prlces .\nhigh qu swatter aiity .\nworldwide sh circumlocutory lpplng .\ntotal c gastronomist onfidentiaiity .\n250 . 000 + satisfie behaviour d customers .\nhave ascensional a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.293+0000", "entityId": 6352, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nstcelebrate 2002 @ aol . com\n( ultimately generated from info @ something - to - celebrate . com )\nsmtp error from remote mailer after end of data :\nhost mailin - 01 . mx . aol . com [ 64 . 12 . 137 . 89 ] : 554 - :\n( hvu : bl ) http : / / postmaster . info . aol . com / errors / 554 hvubl . html\n554 transaction failed\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 218 . 23 . 38 . 202 ] ( helo = mailwisconsin . com )\nby discostu . angelsonoccasion . com with smtp ( exim 4 . 43 )\nid ldupmn - 0001 st - jh\nfor info @ something - to - celebrate . com ; tue , 19 jul 2005 06 : 57 : 18 - 0400\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24817172 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ something - to - celebrate . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.297+0000", "entityId": 6353, "properties": {"text": "Subject: information request received\nwe are in receipt of your e - mail regarding additional information .\nwe appreciate your patience and will be responding to you within the next 24 - 48 hours .\nplease be advised that this is an automated e - mail response .\nthank you ,\nmillenium precision , inc .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.303+0000", "entityId": 6354, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\ntwistersoffice @ qwest . net\n( generated from info @ twisterburritos . com )\nsmtp error from remote mailer after end of data :\nhost mpls - cmx - 07 . inet . qwest . net [ 63 . 226 . 138 . 7 ] :\n554 mail server permanently rejected message ( # 5 . 3 . 0 )\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 217 . 96 . 160 . 142 ] ( helo = mailwisconsin . com )\nby serverl 050 . gisol . com with smtp ( exim 4 . 50 )\nid ldupmn - 0000 kc - jt\nfor info @ twisterburritos . com ; tue , 19 jul 2005 03 : 57 : 18 - 0700\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24817159 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ twisterburritos . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.309+0000", "entityId": 6355, "properties": {"text": "Subject: * * message you sent blocked by our bulk email filter * *\nyour message to : ponddr @ nalu . net\nwas blocked by our spam firewall . the email you sent with the following subject has not been delivered :\nsubject : just to her . . .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.316+0000", "entityId": 6356, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at nsl . mxlinux 2 . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nthis address no longer accepts mail .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 30891 invoked from network ) ; 19 jul 2005 10 : 57 : 17 - 0000\nreceived : from ntokymo 09176 . okym . nt . adsl . ppp . infoweb . ne . jp ( helo mailwisconsin . com ) ( 218 . 229 . 92 . 176 )\nby wpc 2010 . amenworld . com with smtp ; 19 jul 2005 10 : 57 : 17 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24816188 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ grafex . net\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.321+0000", "entityId": 6357, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 07 : 06 : 09 - 0400\nfrom root @ localhost\n- - - - - the following addresses had permanent fatal errors - - - - -\nantique\n( reason : can ' t create ( user ) output file )\n( expanded from : )\n- - - - - transcript of session follows - - - - -\nprocmail : quota exceeded while writing \" / var / spool / mail / antique \"\n550 5 . 0 . 0 antique . . . can ' t create output", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.328+0000", "entityId": 6358, "properties": {"text": "Subject: just to her . . .\nyou are not allowed to post to this mailing list , and your message has\nbeen automatically rejected . if you think that your messages are\nbeing rejected in error , contact the mailing list owner at\ndie _ spammer _ die - owner @ rockycrater . org .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.335+0000", "entityId": 6359, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nchantellehawaii @ turquoise . net\n( generated from info @ chantelleart . com )\nsmtp error from remote mailer after rcpt to : :\nhost mail . turquoise . net [ 64 . 75 . 251 . 7 ] : 550 :\nrecipient address rejected : user unknown in local recipient table\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 221 . 200 . 170 . 147 ] ( helo = mailwisconsin . com )\nby srvl . axantil . com with smtp ( exim 4 . 43 )\nid ldupmy - 0003 wz - 3 x\nfor info @ chantelleart . com ; tue , 19 jul 2005 06 : 57 : 29 - 0400\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815886 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ chantelleart . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nx - antivirus - scanner : clean mail though you should still use an antivirus\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.343+0000", "entityId": 6360, "properties": {"text": "Subject: returned mail : can ' t create output\nthe original message was received at tue , 19 jul 2005 05 : 57 : 28 - 0500\nfrom [ 221 . 3 . 33 . 27 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\njodyanddavid . herring @ verizon . net\n( expanded from : )\nbowguns\n( expanded from : )\n- - - - - transcript of session follows - - - - -\n. . . while talking to relay . verizon . net . :\n> > > rcpt to :\n< < < 550 5 . 1 . 1 unknown or illegal alias : jodyanddavid . herring @ verizon . net\n550 jodyanddavid . herring @ verizon . net . . . user unknown\nprocmail : quota exceeded while writing \" / var / spool / mail / bowguns \"\n550 bowguns . . . can ' t create output", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.348+0000", "entityId": 6361, "properties": {"text": "Subject: returned mail : host unknown ( name server : - - - - - - . net : host not found )\nthe original message was received at tue , 19 jul 2005 05 : 56 : 17 - 0500\nfrom yahoobb 218135092134 . bbtec . net [ 218 . 135 . 92 . 134 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n- - - - - transcript of session follows - - - - -\n550 . . . host unknown ( name server : - - - - - - . net : host not found )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.358+0000", "entityId": 6362, "properties": {"text": "Subject: re : just to her . . .\nmdaemon has indentified your message as spam . it will not be delivered .\nfrom : projecthoneypot @ projecthoneypot . org\nto : s . denham @ capitalspreads . com\nsubject : * * * spam * * * score / req : 25 . 38 / 08 . 00 - just to her . . .\nmessage - id :\nyes , hits = 25 . 4 required = 8 . 0 tests = ab _ uri _ rbl , html _ 50 _ 60 , html _ fontcolor _ red , html _ message , mime _ html _ only , spamcop _ uri _ rbl , ws _ uri _ rbl autolearn = no version = 2 . 64\n* * * * * * * * * * * * * * * * * * * * * * * * *\n* 0 . 1 html _ fontcolor _ red body : html font color is red * 0 . 2 html _ 50 _ 60 body : message is 50 % to 60 % html * 0 . 1 mime _ html _ only body : message only has text / html mime parts * 0 . 0 html _ message body : html included in message * 8 . 0 spamcop _ uri _ rbl uri ' s domain appears in spamcop database at sc . surbl . org * [ bjefladghikm . extra - m . info is blacklisted in uri ] [ rbl at multi . surbl . org ] * 9 . 0 ws _ uri _ rbl uri ' s domain appears in ws database at ws . surbl . org * [ bjefladghikm . extra - m . info is blacklisted in uri ] [ rbl at multi . surbl . org ] * 8 . 0 ab _ uri _ rbl uri ' s domain appears in ab . surbl . org * [ bjefladghikm . extra - m . info is blacklisted in uri ] [ rbl at multi . surbl . org ]\n: message contains [ 1 ] file attachments", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.362+0000", "entityId": 6363, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at gigas . keys . be .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nthis address no longer accepts mail .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 10006 invoked from network ) ; 19 jul 2005 10 : 57 : 35 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 220 . 162 . 170 . 32 )\nby gigas . keys . be with smtp ; 19 jul 2005 10 : 57 : 35 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815823 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ deboel . net\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.367+0000", "entityId": 6364, "properties": {"text": "Subject: returned mail : response error\nthe original message was received at tue , 19 jul 2005 11 : 57 : 45 + 0100\n- - - - - the following addresses had permanent fatal errors - - - - -\n- - - - - transcript of session follows - - - - -\n. . . while talking to mailin - 02 . mx . aol . com\n> > > data\n< < < 554 transaction failed", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.371+0000", "entityId": 6365, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nrrrhythms @ aol . com\nsmtp error from remote mailer after end of data :\nhost mailin - 01 . mx . aol . com [ 205 . 188 . 159 . 57 ] : 554 - :\n( hvu : bl ) http : / / postmaster . info . aol . com / errors / 554 hvubl . html\n554 transaction failed\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from mailbox . hrnoc . net ( [ 216 . 120 . 225 . 22 ] )\nby relay 3 . hrnoc . net with smtp ( exim 4 . 32 ; freebsd )\nid ldupna - 000 nel - lk\nfor rrrhythms @ aol . com ; tue , 19 jul 2005 06 : 57 : 40 - 0400\nreceived : ( qmail 59909 invoked by uid 89 ) ; 19 jul 2005 10 : 57 : 46 - 0000\ndelivered - to : info @ pasentertainment . com\nreceived : ( qmail 59899 invoked by uid 89 ) ; 19 jul 2005 10 : 57 : 46 - 0000\nreceived : from mxl . hrnoc . net ( 216 . 120 . 232 . 254 )\nby mailbox . hrnoc . net with qmtp ; 19 jul 2005 10 : 57 : 46 - 0000\nreceived : ( qmail 9603 invoked by uid 513 ) ; 19 jul 2005 10 : 57 : 44 - 0000\nreceived : from projecthoneypot @ projecthoneypot . org by mxl . hrnoc . net by uid 503 with qmail - scanner - 1 . 20 st\n( clamuko : 0 . 70 . spamassassin : 2 . 63 . clear : rc : 0 ( 218 . 43 . 171 . 70 ) : sa : 0 ( 1 . 6 / 15 . 0 ) : .\nprocessed in 0 . 802258 secs ) ; 19 jul 2005 10 : 57 : 44 - 0000\nx - spam - status : no , hits = 1 . 6 required = 15 . 0\nx - qmail - scanner - mail - from : projecthoneypot @ projecthoneypot . org via mxl . hrnoc . net\nx - qmail - scanner : 1 . 20 st ( clear : rc : 0 ( 218 . 43 . 171 . 70 ) : sa : 0 ( 1 . 6 / 15 . 0 ) : . processed in 0 . 802258 secs )\nreceived : from pl 070 - ipado 2 sinnagasak . nagasaki . ocn . ne . jp ( helo mailwisconsin . com ) ( 218 . 43 . 171 . 70 )\nby mxl . hrnoc . net with smtp ; 19 jul 2005 10 : 57 : 43 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815595 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ pasentertainment . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nx - hr - scan - signature : 2 fbcfbdl 81 f 732 eb 7 bl 2270 bfad 389 b 6\nx - hr - sa - score : ( )\nx - hr - status : hr _ avscanned - ( projecthoneypot @ projecthoneypot . org / 216 . 120 . 225 . 22 )\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.375+0000", "entityId": 6366, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 03 : 57 : 51 - 0700\nfrom [ 222 . 217 . 202 . 51 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n( reason : 550 - mailbox unknown . either there is no mailbox associated with this )\n- - - - - transcript of session follows - - - - -\n. . . while talking to localhost :\n> > > data\n. . . user unknown\n< < < 503 5 . 5 . 1 no recipients", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.380+0000", "entityId": 6367, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 12 : 57 : 50 + 0200\nfrom [ 218 . 159 . 229 . 14 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n- - - - - transcript of session follows - - - - -\n554 5 . 0 . 0 username or alias unknown\n550 5 . 1 . 1 . . . user unknown", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.385+0000", "entityId": 6368, "properties": {"text": "Subject: delivery status notification ( failure )\nthis is an automatically generated delivery status notification .\ndelivery to the following recipients failed .\ninfo @ simplythankyou . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.389+0000", "entityId": 6369, "properties": {"text": "Subject: delivery status notification ( failure )\nthis is an automatically generated delivery status notification .\ndelivery to the following recipients failed .\ninfo @ ereksononline . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.394+0000", "entityId": 6370, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nlochnessclansman @ aol . com\n( generated from info @ stayatlochness . com )\nsmtp error from remote mail server after end of data :\nhost mailin - 03 . mx . aol . com [ 205 . 188 . 158 . 121 ] : 554 - :\n( hvu : bl ) http : / / postmaster . info . aol . com / errors / 554 hvubl . html\n554 transaction failed\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 222 . 108 . 233 . 182 ] ( helo = mailwisconsin . com )\nby uk 2 mxarray 4 . uk 2 . net with smtp ( exim 4 . 52 )\nid ldupsa - 0001 oe - vq\nfor info @ stayatlochness . com ; tue , 19 jul 2005 12 : 02 : 51 + 0100\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815476 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nfrom : \" barry castillo \"\nto : info @ stayatlochness . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\nx - priority : 3 ( normal )\nimportance : normal\nx - sa - exim - connect - ip : 222 . 108 . 233 . 182\nx - sa - exim - mail - from : projecthoneypot @ projecthoneypot . org\nsubject : just to her . . .\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - spam - checker - version : spamassassin 3 . 0 . 4 ( 2005 - 06 - 05 ) on\nuk 2 mxserver 4 - 9 . uk 2 . net\nx - spam - level : * * *\nx - spam - status : no , score = 3 . 3 required = 99 . 0 tests = drugs _ erectile , drug _ dosage ,\nhtml _ 50 _ 60 , html _ message , info _ tld , mime _ html _ only autolearn = no\nversion = 3 . 0 . 4\nx - sa - exim - version : 4 . 0 ( built sat , 24 jul 2004 09 : 53 : 34 + 0200 )\nx - sa - exim - scanned : yes ( on uk 2 mxarray 4 . uk 2 . net )\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.399+0000", "entityId": 6371, "properties": {"text": "Subject: mail receipt\nthank you for your mail regarding our site . we will reply as soon as possible . in the meantime please continue to enjoy our site .\ntight lines\nbray sea anglers .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.404+0000", "entityId": 6372, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mxo 0 . atlanticasp . net .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nuser unknown .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 14123 invoked from network ) ; 19 jul 2005 11 : 05 : 18 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 61 . 74 . 129 . 210 )\nby mxo 0 . atlanticasp . net with smtp ; 19 jul 2005 11 : 05 : 18 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815387 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ workforcemetrics . net\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.409+0000", "entityId": 6373, "properties": {"text": "Subject: undelivered mail returned to sender\nthis is the postfix program at host backupmail . mittwaldmedien . de .\ni ' m sorry to have to inform you that the message returned\nbelow could not be delivered to one or more destinations .\nfor further assistance , please send mail to\nif you do so , please include this problem report . you can\ndelete your own text from the message returned below .\nthe postfix program\n: host mail . edv - stangl . com [ 62 . 216 . 178 . 13 ] said : 550\n: user unknown in virtual alias table ( in reply to\nrcpt to command )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.414+0000", "entityId": 6374, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nwoksal @ eunet . yu\n( generated from info @ woksal . com )\nsmtp error from remote mailer after end of data :\nhost relay . eunet . yu [ 194 . 247 . 192 . 179 ] : 554 5 . 6 . 1 we do not accept spam\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 62 . 21 . 124 . 244 ] ( helo = mailwisconsin . com )\nby cpanel 30 . gzo . com with smtp ( exim 4 . 43 )\nid ldupnr - 0001 mx - kg\nfor info @ woksal . com ; tue , 19 jul 2005 05 : 57 : 58 - 0500\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815602 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ woksal . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.420+0000", "entityId": 6375, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at stl 7 . startlogic . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nvdeliver : invalid or unknown virtual user ' info '\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 68912 invoked from network ) ; 19 jul 2005 10 : 58 : 03 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 222 . 160 . 120 . 186 )\nby stl 7 . startlogic . com with smtp ; 19 jul 2005 10 : 58 : 03 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 24815692 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ itresults . net\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.428+0000", "entityId": 6376, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at hybeammaill . inetu . net .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . vpopmail ( # 5 . 1 . 1 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 85396 invoked by uid 85 ) ; 19 jul 2005 10 : 58 : 11 - 0000\nreceived : from projecthoneypot @ projecthoneypot . org by hybeammaill . inetu . net by uid 82 with qmail - scanner - 1 . 16\n( clamscan : 0 . 60 . spamassassin : 2 . 55 . clear : sa : 0 ( 0 . 8 / 5 . 0 ) : .\nprocessed in 4 . 058862 secs ) ; 19 jul 2005 10 : 58 : 11 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 221 . 203 . 100 . 20 )\nby hybeammaill . inetu . net with smtp ; 19 jul 2005 10 : 58 : 07 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38191261 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distortion 6 @ boplicity . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nx - spam - status : no , hits = 0 . 8 required = 5 . 0\nuser _ agent\nversion = 2 . 55\nx - spam - level :\nx - spam - checker - version : spamassassin 2 . 55 ( 1 . 174 . 2 . 19 - 2003 - 05 - 19 - exp )\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.440+0000", "entityId": 6377, "properties": {"text": "Subject: considered unsolicited bulk email from you\nyour message to :\n- > info @ rgbaz . com\nwas considered unsolicited bulk e - mail ( ube ) .\nsubject : just to her . . .\nreturn - path :\nour internal reference code for your message is 01500 - 02 / efl 6 nkzrotlw .\ndelivery of the email was stopped !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.444+0000", "entityId": 6378, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mail . globalhosting . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . vpopmail ( # 5 . 1 . 1 )\n- - - enclosed are the original headers of the message .\ncontent - type : message / rfc 822\nreturn - path :\nreceived : ( qmail 93914 invoked by uid 399 ) ; 19 jul 2005 11 : 18 : 55 - 0000\nreceived : from unknown ( helo ml . dnsix . com ) ( 63 . 251 . 171 . 164 )\nby mail . globalhosting . com with smtp ; 19 jul 2005 11 : 18 : 55 - 0000\nreceived : from [ 61 . 106 . 118 . 27 ] ( helo = mailwisconsin . com )\nby ml . dnsix . com with smtp ( exim 4 . 44 )\nid ldupnn - 0002 ud - uo\nfor distltmich @ compusep . com ; tue , 19 jul 2005 03 : 58 : 20 - 0700\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38191009 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distltmich @ compusep . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\n( body supressed )\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.450+0000", "entityId": 6379, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mx 3 . seanet . ro .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . ( # 5 . 1 . 1 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 31261 invoked from network ) ; 19 jul 2005 10 : 58 : 20 - 0000\nreceived : from unknown ( helo nsl . seanet . ro ) ( 192 . 168 . 136 . 2 )\nby 0 with smtp ; 19 jul 2005 10 : 58 : 19 - 0000\nreceived : ( qmail 3573 invoked from network ) ; 19 jul 2005 10 : 58 : 19 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 211 . 245 . 27 . 66 )\nby nsl . seanet . ro with smtp ; 19 jul 2005 10 : 58 : 18 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38191017 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distmetkarmetkar @ seanet . ro\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.456+0000", "entityId": 6380, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at backup - smtp - 2 . star . net . uk .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\n81 . 171 . 128 . 25 does not like recipient .\nremote host said : 550 , recipient unknown\ngiving up on 81 . 171 . 128 . 25 .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 28287 invoked from network ) ; 19 jul 2005 10 : 58 : 25 - 0000\nreceived : from catv - 219 - 099 - 025 - 107 . medias . ne . jp ( helo mailwisconsin . com ) ( 219 . 99 . 25 . 107 )\nby backup - smtp - 2 . star . net . uk with smtp ; 19 jul 2005 10 : 58 : 25 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38191062 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distinctively @ hamilton - school . co . uk\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.464+0000", "entityId": 6381, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at bouncehost .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . vpopmail ( # 5 . 1 . 1 )\n- - - enclosed are the original headers of the message .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.469+0000", "entityId": 6382, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mail . unl . edu . ar .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\n168 . 96 . 132 . 208 does not like recipient .\nremote host said : 550 : recipient address rejected : user unknown in local recipient table\ngiving up on 168 . 96 . 132 . 208 .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 26307 invoked by uid 1010 ) ; 19 jul 2005 10 : 58 : 08 - 0000\nreceived : from projecthoneypot @ projecthoneypot . org by mail by uid 1002 with qmail - scanner - 1 . 22\n( sophie : 3 . 04 / 2 . 19 / 3 . 80 . clear : rc : 0 ( 221 . 184 . 168 . 155 ) : .\nprocessed in 0 . 816554 secs ) ; 19 jul 2005 10 : 58 : 08 - 0000\nreceived : from pl 155 - ipbfl 3 kyoto . kyoto . ocn . ne . jp ( helo mailwisconsin . com ) ( 221 . 184 . 168 . 155 )\nby mail . unl . edu . ar with smtp ; 19 jul 2005 10 : 58 : 07 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38190577 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distinctmartin @ bugs . unl . edu . ar\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.473+0000", "entityId": 6383, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at shell 7 . bayarea . net .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nthis address no longer accepts mail .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 28217 invoked from network ) ; 19 jul 2005 10 : 58 : 34 - 0000\nreceived : from pc - 202 - 169 - 136 - 140 . cable . kumin . ne . jp ( helo mailwisconsin . com ) ( 202 . 169 . 136 . 140 )\nby cpug . org with smtp ; 19 jul 2005 10 : 58 : 33 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38190522 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distinctiveness @ maxmusclesf . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.478+0000", "entityId": 6384, "properties": {"text": "Subject: considered unsolicited bulk email from you\nyour message to :\n- > distmatu @ agrocom . com . ar\nwas considered unsolicited bulk e - mail ( ube ) .\nsubject : just to her . . .\nreturn - path :\ndelivery of the email was stopped !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.483+0000", "entityId": 6385, "properties": {"text": "Subject: considered unsolicited bulk email from you\nyour message to :\n- > distmora @ agrocom . com . ar\nwas considered unsolicited bulk e - mail ( ube ) .\nsubject : just to her . . .\nreturn - path :\ndelivery of the email was stopped !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.488+0000", "entityId": 6386, "properties": {"text": "Subject: undelivered mail returned to sender\nthis is the postfix program at host mx 2 . oi . com . br .\ni ' m sorry to have to inform you that your message could not be\nbe delivered to one or more recipients . it ' s attached below .\nfor further assistance , please send mail to\nif you do so , please include this problem report . you can\ndelete your own text from the attached returned message .\nthe postfix program\n: host frontend . oi . com . br [ 200 . 222 . 115 . 18 ] said : 550 - mailbox\nunknown . either there is no mailbox associated with this 550 - name or you\ndo not have authorization to see it . 550 5 . 1 . 1 user unknown ( in reply to\nend of data command )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.493+0000", "entityId": 6387, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 06 : 59 : 51 - 0400 ( edt )\nfrom p 62 fl 74 . ibrkntol . ap . so - net . ne . jp [ 219 . 98 . 241 . 116 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n( reason : 550 requested action not taken : mailbox unavailable )\n- - - - - transcript of session follows - - - - -\n. . . while talking to mail . brooksdisanto . com . :\n> > > rcpt to :\n. . . user unknown", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.498+0000", "entityId": 6388, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mail . bmadesign . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . vpopmail ( # 5 . 1 . 1 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 63778 invoked from network ) ; 19 jul 2005 11 : 07 : 06 - 0000\nreceived : from ntsitmo 26173 . sitm . nt . adsl . ppp . infoweb . ne . jp ( helo mailwisconsin . com ) ( 218 . 217 . 148 . 173 )\nby mail . bmadesign . com with smtp ; 19 jul 2005 11 : 07 : 06 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38190336 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distinctionsemienw @ bmadesign . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.502+0000", "entityId": 6389, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 12 : 59 : 14 + 0200\nfrom chelloo 81018216102 . chello . pl [ 81 . 18 . 216 . 102 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n( reason : insufficient permission )\n- - - - - transcript of session follows - - - - -\nmaildrop : maildir over quota .\n550 5 . 0 . 0 . . . insufficient permission", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.508+0000", "entityId": 6390, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 12 : 59 : 18 + 0200\nfrom ntibrko 70111 . ibrk . nt . ftth . ppp . infoweb . ne . jp [ 211 . 2 . 26 . 111 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n- - - - - transcript of session follows - - - - -\n554 5 . 0 . 0 username or alias unknown\n550 5 . 1 . 1 . . . user unknown", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.513+0000", "entityId": 6391, "properties": {"text": "Subject: delivery status notification ( failure )\nthis is an automatically generated delivery status notification .\ndelivery to the following recipients failed .\nmagnus . hammar @ hes . hammars . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.518+0000", "entityId": 6392, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at sys 25 . 3 fn . net .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nthis address no longer accepts mail .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 32974 invoked from network ) ; 19 jul 2005 10 : 54 : 04 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 211 . 245 . 27 . 66 )\nby 216 . 195 . 34 . 33 with smtp ; 19 jul 2005 10 : 54 : 04 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09359984 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ adultpaysites . info\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.523+0000", "entityId": 6393, "properties": {"text": "Subject: undelivered mail returned to sender\nthis is the postfix program at host relayl . netspace . net . au .\ni ' m sorry to have to inform you that your message could not be\nbe delivered to one or more recipients . it ' s attached below .\nfor further assistance , please send mail to\nif you do so , please include this problem report . you can\ndelete your own text from the attached returned message .\nthe postfix program\n: host mail - in . netspace . net . au [ 210 . 15 . 254 . 248 ] said :\n550 : recipient address rejected :\ngperkes @ netspace . net . au has expired ( in reply to rcpt to command )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.528+0000", "entityId": 6394, "properties": {"text": "Subject: delivery status notification ( failure )\nthis is an automatically generated delivery status notification .\ndelivery to the following recipients failed .\ninfo @ kvmdoor . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.533+0000", "entityId": 6395, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 12 : 59 : 25 + 0200\nfrom [ 222 . 89 . 79 . 217 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n- - - - - transcript of session follows - - - - -\n554 5 . 0 . 0 username or alias unknown\n550 5 . 1 . 1 . . . user unknown", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.537+0000", "entityId": 6396, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at nsl . extremekanal . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . ( # 5 . 1 . 1 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 20410 invoked by uid 0 ) ; 19 jul 2005 10 : 59 : 33 - 0000\nreceived : from 218 . 2 . 27 . 239 by nsl ( envelope - from , uid 1005 ) with qmail - scanner - 1 . 25\n( clamuko : 0 . 65 .\nclear : rc : 0 ( 218 . 2 . 27 . 239 ) : .\nprocessed in 1 . 547743 secs ) ; 19 jul 2005 10 : 59 : 33 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 218 . 2 . 27 . 239 )\nby 192 . 168 . 2 . 2 with smtp ; 19 jul 2005 10 : 59 : 31 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09359978 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : gogo @ sportkanal . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.546+0000", "entityId": 6397, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 10 : 58 : 37 gmt\nfrom [ 211 . 245 . 27 . 66 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n( reason : 550 5 . 1 . 1 user unknown )\n- - - - - transcript of session follows - - - - -\n. . . while talking to localhost :\n> > > data\n. . . user unknown\n< < < 503 5 . 5 . 1 no recipients", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.560+0000", "entityId": 6398, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software ( exim ) .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\ninfo @ markenweine . info\nsmtp error from remote mailer after rcpt to : :\nhost a . mx . markenweine . info [ 194 . 180 . 104 . 146 ] :\n554 : relay access denied\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from aji 232 . neoplus . adsl . tpnet . pl ( [ 83 . 25 . 242 . 232 ] helo = mailwisconsin . com )\nby mail . work . de with smtp ( exim 3 . 35 # 1 ( debian ) )\nid ldupje - 0006 gu - 00\nfor ; tue , 19 jul 2005 12 : 54 : 03 + 0200\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09360200 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : info @ markenweine . info\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.565+0000", "entityId": 6399, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at mail - 03 . cdsnet . net .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , i couldn ' t find any host named bb . internetcds . com . ( # 5 . 1 . 2 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 50355 invoked by alias ) ; 19 jul 2005 10 : 58 : 51 - 0000\ndelivered - to : nic - notify @ internetcds . com\nreceived : ( qmail 50352 invoked from network ) ; 19 jul 2005 10 : 58 : 51 - 0000\nreceived : from unknown ( helo localhost ) ( 127 . 0 . 0 . 1 )\nby mail - 03 . cdsnet . net with smtp ; 19 jul 2005 10 : 58 : 51 - 0000\nreceived : from mail - 03 . cdsnet . net ( [ 127 . 0 . 0 . 1 ] )\nby localhost ( mail - 03 . cdsnet . net [ 127 . 0 . 0 . 1 ] ) ( amavisd - new , port 10024 )\nwith smtp id 46679 - 09 for ;\ntue , 19 jul 2005 03 : 58 : 51 - 0700 ( pdt )\nreceived : ( qmail 50346 invoked from network ) ; 19 jul 2005 10 : 58 : 50 - 0000\nreceived : from yahoobb 220056020109 . bbtec . net ( helo mailwisconsin . com ) ( 220 . 56 . 20 . 109 )\nby mail - 03 . cdsnet . net with smtp ; 19 jul 2005 10 : 58 : 50 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09360462 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : nic - notify @ internetcds . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nx - virus - scanned : by amavisd - new at internetcds . com\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.570+0000", "entityId": 6400, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 11 : 59 : 52 + 0100\nfrom s 3 . uklinux . net [ 80 . 84 . 64 . 13 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n( reason : can ' t create ( user ) output file )\n- - - - - transcript of session follows - - - - -\nprocmail : quota exceeded while writing \" / var / spool / mail / exegesis \"\n550 5 . 0 . 0 . . . can ' t create output", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.575+0000", "entityId": 6401, "properties": {"text": "Subject: just to her . . .\nyour message to tjvs @ remgro . com\nhas been blocked . should it be business related forward this message to helpdesk @ commsco . com for immediate release .\nmessage id : t 723 b 9 cb 981 acl 04 aobeb 98\nrule triggered : spam files", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.580+0000", "entityId": 6402, "properties": {"text": "Subject: delivery status notification\n- these recipients of your message have been processed by the mail server :\norlandi . enrico @ inwind . it ; failed ; 5 . 2 . 2 ( mailbox full )\nremote mta ims 9 a . libero . it : smtp diagnostic : 552 rcpt to : mailbox disk quota exceeded", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.588+0000", "entityId": 6403, "properties": {"text": "Subject: ) .\nyour message\nsubject : just to her . . .\nwas not delivered to :\nbastide . laurent @ bastide . info\nbecause :\ndestinataire non unique . le carnet d ' adresses contient plusieurs entr?es correspondant ? laurent ( laurent @ bastide ) .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.593+0000", "entityId": 6404, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nian @ altair 398 . demon . co . uk\n( generated from ian @ altair . org . uk )\nsmtp error from remote mail server after end of data :\nhost punt - 1 . mail . demon . net [ 194 . 217 . 242 . 75 ] : 550 blocked by recipient ' s spam filter options . if message is legitimate , please forward a copy to rbl @ demon . net for investigation .\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 203 . 101 . 127 . 76 ] ( helo = mailwisconsin . com )\nby uk 2 mxarray 4 . uk 2 . net with smtp ( exim 4 . 52 )\nid ldupou - 0005 qz - te\nfor ian @ altair . org . uk ; tue , 19 jul 2005 11 : 59 : 30 + 0100\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09360592 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nfrom : \" barry castillo \"\nto : ian @ altair . org . uk\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\nx - priority : 3 ( normal )\nimportance : normal\nx - sa - exim - connect - ip : 203 . 101 . 127 . 76\nx - sa - exim - mail - from : projecthoneypot @ projecthoneypot . org\nsubject : just to her . . .\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - spam - checker - version : spamassassin 3 . 0 . 4 ( 2005 - 06 - 05 ) on\nuk 2 mxserver 4 - 1 . uk 2 . net\nx - spam - level : * * *\nx - spam - status : no , score = 3 . 3 required = 99 . 0 tests = drugs _ erectile , drug _ dosage ,\nhtml _ 50 _ 60 , html _ message , info _ tld , mime _ html _ only autolearn = no\nversion = 3 . 0 . 4\nx - sa - exim - version : 4 . 0 ( built sat , 24 jul 2004 09 : 53 : 34 + 0200 )\nx - sa - exim - scanned : yes ( on uk 2 mxarray 4 . uk 2 . net )\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.597+0000", "entityId": 6405, "properties": {"text": "Subject: out of office autoreply : just to her . . .\ni am on vacation week 29 + 30 + 31 . please contact gerd madsen ( gm @ torben - rafn . dk ) or hans chr . jensen ( hcj @ torben - rafn . dk\nyour mail is not transfered .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.602+0000", "entityId": 6406, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nsave to inbox\ngenerated by kremp - gbr @ 01019 freenet . de\nmailbox is full : retry timeout exceeded\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 194 . 97 . 50 . 136 ] ( helo = mx 3 . freenet . de )\nby mbox 60 . freenet . de with esmtpa ( id exim ) ( exim 4 . 52 # 5 )\nid lduppd - 00076 l - ja\nfor kremp - gbr @ 01019 freenet . de ; tue , 19 jul 2005 12 : 59 : 47 + 0200\nreceived : from pll 269 . nas 925 . te - fukuoka . nttpc . ne . jp ( [ 219 . 102 . 66 . 245 ] helo = mailwisconsin . com )\nby mx 3 . freenet . de with smtp ( exim 4 . 52 # 3 )\nid lduppc - 0004 fp - jp\nfor kremp - gbr @ freenet . de ; tue , 19 jul 2005 12 : 59 : 47 + 0200\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09360393 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : kremp - gbr @ freenet . de\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\ndelivered - to : kremp - gbr @ freenet . de\nenvelope - to : kremp - gbr @ freenet . de\nx - warning : message contains spam signature ( 149285 : : 050719125947 - 6 aa 64000 - 6081 c 675 )\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.607+0000", "entityId": 6407, "properties": {"text": "Subject: delivery status notification ( failure )\nthis is an automatically generated delivery status notification .\ndelivery to the following recipients failed .\nroger @ gryphon . com . au", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.611+0000", "entityId": 6408, "properties": {"text": "Subject: id = : : ffff : 220 . 184 . 181 . 141 + cdlfnvprj mail storage exceeded\nitaliano : il suo messaggio non e ' stato consegnato ai seguenti destinatari :\ni destinatari hanno esaurito lo spazio disponbile .\nenglish : your message did not reach the following recipients :\nthe recipients have exceeded storage allocation .\nto : simbol @ deejaymail . it\nbuon lavoro .\ni . net mail system\n- - - - - - - original mail message - - - -\nreturn - path :\nreceived : from : : ffff : 220 . 184 . 181 . 141 [ : : ffff : 220 . 184 . 181 . 141 ] by fe - 4 a . inet . it via i - smtp - 5 . 2 . 3 - 520\nid : : ffff : 220 . 184 . 181 . 141 + cdlfnvprj ; tue , 19 jul 2005 12 : 59 : 44 + 0200\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user david @ mail . scoaway . com ) ;\nby mailwisconsin . com with http id j 87 gzo 09360194 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : simbol @ deejaymail . it\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.616+0000", "entityId": 6409, "properties": {"text": "Subject: = ? iso - 8859 - 1 ? q ? automated reply from administrator ? =\nvakantie tot 26 juli !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.620+0000", "entityId": 6410, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nsalesl @ hotmail . com\n( generated from antoniopilurzo @ calaluna . com )\nsmtp error from remote mailer after rcpt to : :\nhost mx 2 . hotmail . com [ 65 . 54 . 166 . 230 ] : 550 requested action not taken :\nmailbox unavailable\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 61 . 83 . 205 . 164 ] ( helo = mailwisconsin . com )\nby serverl 520 . dnslive . net with smtp ( exim 4 . 50 )\nid lduppz - 0001 je - 6 g\nfor antoniopilurzo @ calaluna . com ; tue , 19 jul 2005 07 : 00 : 09 - 0400\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 30519723 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : antoniopilurzo @ calaluna . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.624+0000", "entityId": 6411, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at compos - pop . compos . com . br .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nsorry , no mailbox here by that name . ( # 5 . 1 . 1 )\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 19673 invoked from network ) ; 19 jul 2005 11 : 00 : 15 - 0000\nreceived : from compos - mail . compos . com . br ( [ 200 . 254 . 243 . 67 ] )\n( envelope - sender )\nby compos - pop . compos . com . br ( qmail - ldap - 1 . 03 ) with compressed smtp\nfor ; 19 jul 2005 11 : 00 : 15 - 0000\nreceived : ( qmail 17996 invoked from network ) ; 19 jul 2005 11 : 00 : 14 - 0000\nreceived : from pl 070 - ipado 2 sinnagasak . nagasaki . ocn . ne . jp ( helo mailwisconsin . com ) ( [ 218 . 43 . 171 . 70 ] )\n( envelope - sender )\nby compos - mail . compos . com . br ( qmail - ldap - 1 . 03 ) with smtp\nfor ; 19 jul 2005 11 : 00 : 13 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 30519725 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : antoniop @ nway . com . br\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.629+0000", "entityId": 6412, "properties": {"text": "Subject: your e - mail to anvasetc - 1111 @ groups . msn . com cannot be delivered\nyou sent the message below to an unrecognized group : anvasetc - 1111 @ groups . msn . com\nto check for the correct e - mail address of a group you belong to :\n1 . go to the group ' s \" what ' s new \" page .\n2 . click \" my e - mail settings \" under the tools area on the upper right side of the page .\nto learn more about msn groups or for further assistance , please see our help area .\nthanks ,\nmsn groups", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.634+0000", "entityId": 6413, "properties": {"text": "Subject: delivery status notification ( failure )\nthe following message to was undeliverable .\nthe reason for the problem :\n5 . 1 . 0 - unknown address error 550 - ' 5 . 1 . 1 unknown or illegal alias : gkoppmal @ elp . rr . com '", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.639+0000", "entityId": 6414, "properties": {"text": "Subject: mail delivery failed : returning message to sender\nthis message was created automatically by mail delivery software .\na message that you sent could not be delivered to one or more of its\nrecipients . this is a permanent error . the following address ( es ) failed :\nsteve . carpenter @ up 4 it . demon . co . uk\n( generated from steve . carpenter @ up 4 it . info )\nsmtp error from remote mailer after end of data :\nhost punt - 1 . mail . demon . net [ 194 . 217 . 242 . 248 ] :\n550 blocked by recipient ' s spam filter options . if message is legitimate , please forward a copy to rbl @ demon . net for investigation .\n- - - - - - this is a copy of the message , including all the headers . - - - - - -\nreturn - path :\nreceived : from [ 222 . 47 . 74 . 64 ] ( helo = mailwisconsin . com )\nby seven . mx . 123 - reg . co . uk with smtp ( exim 4 . 43 )\nid ldupqo - 0001 fc - bw\nfor steve . carpenter @ up 4 it . info ; tue , 19 jul 2005 12 : 00 : 39 + 0100\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09360701 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : steve . carpenter @ up 4 it . info\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.645+0000", "entityId": 6415, "properties": {"text": "Subject: delivery status notification\n- these recipients of your message have been processed by the mail server :\nantonioacm @ zipmail . com . br ; failed ; 5 . 2 . 2 ( mailbox full )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.649+0000", "entityId": 6416, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at baco . hotlink . com . br .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\n200 . 164 . 232 . 214 does not like recipient .\nremote host said : 550 sorry , no mailbox by that name ( # 5 . 7 . 1 )\ngiving up on 200 . 164 . 232 . 214 .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 5021 invoked by uid 516 ) ; 19 jul 2005 11 : 02 : 38 - 0000\nreceived : from 83 . 25 . 242 . 232 by baco . hotlink . com . br ( envelope - from , uid 505 ) with qmail - scanner - 1 . 25\n( clamdscan : 0 . 85 . 1 / 935 .\nclear : rc : 0 ( 83 . 25 . 242 . 232 ) : .\nprocessed in 2 . 978309 secs ) ; 19 jul 2005 11 : 02 : 38 - 0000\nreceived : from aji 232 . neoplus . adsl . tpnet . pl ( helo mailwisconsin . com ) ( 83 . 25 . 242 . 232 )\nby 0 with smtp ; 19 jul 2005 11 : 02 : 34 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 30516641 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : antonioantonio @ coopvita . com . br\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.654+0000", "entityId": 6417, "properties": {"text": "Subject: undelivered mail returned to sender\nthis is the postfix program at host mail . freeservers . com .\ni ' m sorry to have to inform you that your message could not be\nbe delivered to one or more recipients . it ' s attached below .\nfor further assistance , please send mail to\nif you do so , please include this problem report . you can\ndelete your own text from the attached returned message .\nthe postfix program\n( expanded from\n) : host 10 . 133 . 22 . 254 [ 10 . 133 . 22 . 254 ] said : 554\nerror : : recipient address denied - relay access\ndenied ( in reply to rcpt to command )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.662+0000", "entityId": 6418, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at maill 9 b . gl 9 . rapidsite . net .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\n64 . 18 . 7 . 10 failed after i sent the message .\nremote host said : 571 message refused\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : from mxl 1 . stngvaol . us . mxservers . net ( 204 . 202 . 242 . 100 )\nby maill 9 b . gl 9 . rapidsite . net ( rs ver 1 . 0 . 95 vs ) with smtp id 1 - 017201846\nfor ; tue , 19 jul 2005 07 : 00 : 50 - 0400 ( edt )\nreceived : from unknown [ 211 . 168 . 67 . 248 ] ( helo mailwisconsin . com )\nby mxl 1 . stngvaol . us . mxservers . net ( mxl _ mta - 1 . 3 . 8 - 10 p 4 ) with smtp id 06 ddcd 24 . 14068 . 061 . mxl 1 . stngvaol . us . mxservers . net ;\ntue , 19 jul 2005 07 : 00 : 48 - 0400 ( edt )\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 30516488 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : antonio _ ortiz 33 @ jobops . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nx - spam - flag : yes\nx - spam : [ f = 1 . 0000000000 ; heur = 0 . 500 ( 1000 ) ; stat = 0 . 997 ; spamtraq - heur = 1 . 000 ( 2005071819 ) ]\nx - mail - from :\nx - source - ip : [ 211 . 168 . 67 . 248 ]\nx - loop - detect : 1\nx - distloop - detect : 1\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.669+0000", "entityId": 6419, "properties": {"text": "Subject: delivery status notification ( failure )\nthis is an automatically generated delivery status notification .\ndelivery to the following recipients failed .\nantunes @ coppead . ufrj . br", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.675+0000", "entityId": 6420, "properties": {"text": "Subject: delivery failure : user antonio _ lambino ( antonio _ lambino @ ksg . harvard . edu ) not\nlisted in domino directory\nyour message\nsubject : [ spam ] just to her . . .\nwas not delivered to :\nantonio _ lambino @ ksg . harvard . edu\nbecause :\nuser antonio _ lambino ( antonio _ lambino @ ksg . harvard . edu ) not listed in domino directory", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.679+0000", "entityId": 6421, "properties": {"text": "Subject: undelivered mail returned to sender\nthis is the postfix program at host correio . quick . com . br .\ni ' m sorry to have to inform you that the message returned\nbelow could not be delivered to one or more destinations .\nfor further assistance , please send mail to\nif you do so , please include this problem report . you can\ndelete your own text from the message returned below .\nthe postfix program\n: user unknown . command output : invalid user\nspecified .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.684+0000", "entityId": 6422, "properties": {"text": "Subject: delivery notification for\nthis is a delivery status notification , automatically generated by mta ironmail . telesal . net on tue , 19 jul 2005 05 : 01 : 07 - 0600\nregarding recipient ( s ) : antonioantoniomc @ telesal . net\ndelivery status : failed . message could not be delivered to the domain - telesal . net . failed to accept the recipients .\nmta response : 550\nthe original message headers are included as attachment .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.689+0000", "entityId": 6423, "properties": {"text": "Subject: returned mail : see transcript for details\nthe original message was received at tue , 19 jul 2005 07 : 01 : 27 - 0400\nfrom [ 219 . 157 . 114 . 86 ]\n- - - - - the following addresses had permanent fatal errors - - - - -\n( reason : 550 5 . 1 . 1 . . . user unknown )\n- - - - - transcript of session follows - - - - -\n. . . while talking to intmail . hcm . hitachi . com . :\n> > > data\n. . . user unknown\n550 5 . 1 . 1 . . . user unknown\n< < < 503 5 . 0 . 0 need rcpt ( recipient )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.693+0000", "entityId": 6424, "properties": {"text": "Subject: failure notice\nthis is the mail delivery agent at messagelabs . com .\ni was not able to deliver your message to the following addresses .\n:\n144 . 189 . 100 . 102 does not like recipient .\nremote host said : 550 5 . 0 . 0 . . . host down\n- - - below this line is a copy of the message .\nreturn - path :\nx - viruschecked : checked\nx - env - sender : projecthoneypot @ projecthoneypot . org\nx - msg - ref : server - 3 . tower - 115 . messagelabs . com ! 1121770867 ! 6986571 ! 1\nx - starscan - version : 5 . 5 . 4 . 1 ; banners = - , - , -\nx - originating - ip : [ 221 . 9 . 132 . 25 ]\nx - spaminfo : spam detected heuristically\nx - spam : true\nx - spamreason : yes , hits = 50 . 0 required = 7 . 0 tests = spam signature :\nspam . health . 96584\nreceived : ( qmail 16008 invoked from network ) ; 19 jul 2005 11 : 01 : 18 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 221 . 9 . 132 . 25 )\nby server - 3 . tower - 115 . messagelabs . com with smtp ; 19 jul 2005 11 : 01 : 18 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 30516347 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : antonio _ silva @ br . css . mot . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbeiivabie !\nthis email has been scanned by the messagelabs email security system .\nfor more information please visit http : / / www . messagelabs . com / email\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.697+0000", "entityId": 6425, "properties": {"text": "Subject: undelivered mail returned to sender\nthis is the postfix program at host cenesp . santistatextil . com . br .\ni ' m sorry to have to inform you that your message could not be\nbe delivered to one or more recipients . it ' s attached below .\nfor further assistance , please send mail to\nif you do so , please include this problem report . you can\ndelete your own text from the attached returned message .\nthe postfix program\n: unknown user : \" antonio _ sanches \"", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.702+0000", "entityId": 6426, "properties": {"text": "Subject: benachrichtung\nzum\n( fehlgeschlagen ) ? =\ndies ist eine automatisch erstellte benachrichtigung + apw - ber den zustellstatus .\n+ anw - bermittlung an folgende empf + aoq - nger fehlgeschlagen .\njochenfechtel @ fetra . de", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.707+0000", "entityId": 6427, "properties": {"text": "Subject: failed mail\nyour message to mxo 0 . mail . bellsouth . net was rejected .\ni said :\nrcpt to :\nand mxo 0 . mail . bellsouth . net [ 205 . 152 . 59 . 32 ] responded with\n550 invalid recipient :", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.711+0000", "entityId": 6428, "properties": {"text": "Subject: more vv\nwant to know h furfur ow to save over 60 % on your piils ?\nhttp : / / w postillion ww . pledelo . com - successfull and proven uncurtained way to s warship ave your money .\northographical v\nliquid ag\na stagnancy l\nl supernaculum u\nclothing l\nconcert rac docket l\ni groceteria sva spectrum l\ncockcrow m\nandmanyother .\nbest pyaemia prlces .\nhigh quaiit glazed y .\nworldw soldiership ide shlpplng .\nto invisible tal confidentiaiity .\n2 underage 50 . 000 + satisfied customers .\nhave a nice horoscope day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.716+0000", "entityId": 6429, "properties": {"text": "Subject: what happend in your home ? ? ?\nspy pinhole color\ncamera + voice\nfeatures : all purpose cam\nat your finger tip world ' s true smallest spy camera ( similar to a penny ) low\npower consumption and high sensitivity easy installation .\ndo - it - yourself to\nbuild your own baby / nanny monitor , r / c helicopter , airplane , walking robot ,\nhome and office security cameras as a must for private investigators and law\nenforcement agencies for surveillance and video monitoring recording of indoor\nand outdoor activities where is allowed by law keep an eye on valuables and\nloved ones with this tiny suitable for use at homes , workshops , warehouses ,\nschools , offices , stores , gas stations great for portable video surveillance or\nfor hobbies hide it easily in any objects such as box , book , toy , flower , plant ,\nclock , or radio ,\nanywhere you can think of record the motion video to a vcr\nor / and watch the video on tv without a computer or in compute with dvr\ncard easy to keep track of anything ! ! specifications : tv system : pal definition :\n380\ntv lines scan frequency : 60 hz\nminimum illumination : 1 . 5 lux for color\neffective element : 510 x 492\npicture area : 4 . 69 x 3 . 45 mm\nviewing\nangle : 30 ~ 35 degrees\niris : automatic\nexposure : automatic\nfocus : adjustable\nviewing\ndistance : 50 mm to infinity full motion real time color video without\ndelay operating\nvoltage : 9 - volt battery or ac - dc + 8 v 200 ma power adapter\noperating duration by battery : 10 hours on duracell or energizer alkaline\nbattery\noperating duration by ac - dc power adapters : 24 - hour non - stop\ninstallation : you can do it in 2 minutes connect the pinhole to any standard\ntelevision or vcr with the rca cable ( cable not included ) plug the ( 9 - volt\nbattery or ac - dc + 8 v 200 ma power adapter ) into the power jack of the camera or\nin compute with dvr card adjust the lens of the camera to its best position\nchange your tv set into av model\ndimensions : 0 . 875 oz . ( net weight ) 1 . 125 oz . ( gross weight ) 0 . 725 inches x 0 . 875\ninches x 0 . 875 inches ( w x l x h )\nonly\n29 $ including shipping to worldwide !\nto order click here !\nto buy dvr ' s ,\nsecurity cameras and more , click here !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.721+0000", "entityId": 6430, "properties": {"text": "Subject: good ooffr\nwant to know how to save over 60 % on meanwhile your piils ?\nhttp : / / www . pledelo ridged . com - suc labile cessfull and proven way to save your mo humankind ney .\nleftwing v\nhardware ag\ntrophic al\nl lenity u\nwoodcraft l\npayoff rac supernal l\nsultanate isva multistory l\nacceptability m\nandmanyother .\nbest bertha prlces .\nhigh quaiity sinuosity .\nwo betrothal rldwide shlpplng .\ntotal confid electrical entiaiity .\n250 . uncreated 000 + satisfied customers .\nhave tapestry a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.726+0000", "entityId": 6431, "properties": {"text": "Subject: to your health - a guide to online pharmacies , drugs , and sexual well - being .\nget brand name drugs at wholesale pricing , next day shipping right to your door step .\ntrust yourself . you know more than you think you do .\nabove all , try something .\nit ' s a poor sort of memory that only works backward .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.731+0000", "entityId": 6432, "properties": {"text": "Subject: we have been rated as # 1 one - stop - shop internet pharmacy .\nget prescription medicine for less !\nreligions change ; beer and wine remain .\nyou cannot keep a man down without staying down with him .\nthe sands are number ' d that make up my life .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.735+0000", "entityId": 6433, "properties": {"text": "Subject: important - cable tv consumers\nhow are you , visioson @ hpp . za . net\nit ' s finally here : the digital cablefilter\ngoto the page between the arrows below :\n- > - > - > - > filtersppv . com\nno more ? add / r to the domain above .\nbest regards ,\njuliana o . guidry\nprojecthoneypot @ projecthoneypot . org", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.740+0000", "entityId": 6434, "properties": {"text": "Subject: we deliver medication worldwide !\ncialis helps to have an erection when you need it\nwe will not have peace by afterthought .\nstay centered by accepting whatever you are doing . this is the ultimate .\nyou have to be deviant if you ' re going to do anything new .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.745+0000", "entityId": 6435, "properties": {"text": "Subject: important announcement : your application was approved\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 987 - 528 ]\n* negotiable amount : $ 153 , 367 to $ 690 , 043\n* rate : 3 . 70 % - 5 . 68 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nregards ,\nshannon serrano\nsenior account manager\nlyell national lenders , llc .\ndatabase deletion :\nwww . lend - bloxz . com / r . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.750+0000", "entityId": 6436, "properties": {"text": "Subject: hey ! tell your friends to hit me up\nhi\ni ` ve found cool site , it is a lot of programs and all of them cost very cheaply !\nit ' s a url http : / / www . softforfast . info /\nand you can download them right after purhases ! you will no need to wait 2 - 3 week for cd delivery .\n- - - - - - - - - - - - -\nbellum babbitt allegoric atchison", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.763+0000", "entityId": 6437, "properties": {"text": "Subject: use this handy interest calculator to get current interest information . kbrte\nuse this handy rate calculator to get current interest availability data , without giving out any private or personal information .\nthis was sent to you by an mediagroup for smartmortgageusa . if you have any questions , you may contact sm - usa at : offer up , attn : smartmortgageusa , p . o . box 78361 , san francisco , ca 94107 - 8361 . if you wish to exclude yourself from future sm - usa items please use this to go to the website and then use the choice at the bottom of the page .\nkfegdwwverzd", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.770+0000", "entityId": 6438, "properties": {"text": "Subject: use this handy interest calculator to get current interest information . cmaln\nuse this handy rate calculator to get current interest availability data , without giving out any private or personal information .\nthis was sent to you by an mediagroup for smartmortgageusa . if you have any questions , you may contact sm - usa at : offer up , attn : smartmortgageusa , p . o . box 78361 , san francisco , ca 94107 - 8361 . if you wish to exclude yourself from future sm - usa items please use this to go to the website and then use the choice at the bottom of the page .\ncydukzeiqjcs", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.776+0000", "entityId": 6439, "properties": {"text": "Subject: equipment finance and leasing\ncontact us today for a free consultation on the many options\navailable to your company :\nyour equipment loan and lease specialist\nwww . . com\nreuben adams\nra @ . com\n( 800 ) 539 - 5327 ext 209\nkeystone capital 2100 main st . , ste . 104 irvine , ca 92614 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.780+0000", "entityId": 6440, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at backo 7 . freeler . ilcampo . com .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\nhelaas is freeler niet in staat om onderstaand e - mailbericht af te leveren\nbij de door u opgegeven ontvanger ( s ) . een of meerdere e - mailadressen zijn\nnamelijk niet in gebruik , het bericht is groter dan toegestaan of de\nmailbox van de geadresseerde heeft de limiet bereikt .\ncontroleer de gegevens en probeer het opnieuw of probeer op een andere\nmanier contact op te nemen met de geadresseerde .\n:\nthe users mailfolder is over the allowed quota ( size ) .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 4916 invoked from network ) ; 19 jul 2005 17 : 54 : 21 - 0000\nreceived : from unknown ( [ 172 . 16 . 4 . 16 ] )\n( envelope - sender )\nby backo 7 . freeler . nl ( qmail - ldap - 1 . 03 ) with qmqp\nfor ; 19 jul 2005 17 : 54 : 21 - 0000\ndelivered - to : clusterhost smtpo 7 . freeler . nl s . de . haano 5 @ freeler . nl\nreceived : ( qmail 21982 invoked from network ) ; 19 jul 2005 17 : 54 : 21 - 0000\nreceived : from unknown ( helo wng - 04 . evisp . enertel . nl ) ( [ 213 . 218 . 77 . 204 ] )\n( envelope - sender )\nby smtpo 7 . freeler . nl ( qmail - ldap - 1 . 03 ) with des - cbc 3 - sha encrypted smtp\nfor ; 19 jul 2005 17 : 54 : 21 - 0000\nreceived : from buffer - 01 . evisp . enertel . nl ( buffer - 01 . evisp . enertel . nl [ 213 . 218 . 68 . 24 ] ( may be forged ) )\nby wng - 04 . evisp . enertel . nl ( 8 . 12 . 11 / 8 . 12 . 11 ) with esmtp id j 6 jhrsn 4031476\nfor ; tue , 19 jul 2005 19 : 54 : 21 + 0200\nreceived : from mailwisconsin . com ( [ 203 . 128 . 23 . 64 ] )\nby buffer - 01 . evisp . enertel . nl ( 8 . 13 . 0 / 8 . 13 . 0 ) with smtp id j 6 jaxw 82023290\nfor ; tue , 19 jul 2005 12 : 59 : 43 + 0200 ( cest )\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 09360007 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : s . de . haano 5 @ freeler . nl\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstarting at $ 1 . 99 per dose ! unbelivabie !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.785+0000", "entityId": 6441, "properties": {"text": "Subject: don ' t lose your data ! prevent future computer problems at a fraction\nof the cost of repairs\nweb and order form : pro - techonline . com\ne - mail - info @ pro - techonline . com\nfax 206 - 937 - 4315\ncall today at 1 - 800 - 726 - 5997\nunderstand the\noperating environments your systems are in , computers by their\nvery nature , pull air in to keep their parts cool . their fans work 24 / 7\nkeeping cool . the problem with this is over a period of time dust , dirt and\nsmoke , will build up and damage your computer .\nq damage your computer chips\nq destroy the data on your hard drive\nq melt the mother board\nwhat\ndoes this mean to you ? all of your information could be lost forever ! all of\nyour files and data - works in progress - and contacts could be destroyed !\nthe information you have saved is a thousands times more valuable\nthan the computer itself . thats why\ntechnicians recommend backups for your data .\nits all p r e v e n t a\nb l e !\nthe pro - tech computer filtration system simply works by filtering\nthe air before air reaches your computers sensitive internal components . the\nsystem is set up at the base of your computer , with 2 easy steps , and is\npositioned in front of your computers air intake , filtering 98 % of the air particles\nthat would otherwise get into your systems .\nfor a little as $ 24 . 95 plus\nshipping ,\nyou can make sure you are\ncompletely protected and never worry about dust , smoke , moisture , etc . damaging your computer again !\nweb and order form : pro - techonline . com\ne - mail - info @ pro - techonline . com\nfax 206 - 937 - 4315\nproduct availability :\nplease allow up to 10 days for delivery . pro - tech will do everything we can to ship\nyour order as soon as possible and notify you of the estimated time of\ndelivery .\nfor great rates on quantity , and\nwholesale pricing :\norder 5 or more and receive a 10 %\ndiscount !\nwholesale orders save up to\n20 % or more !\npro - tech uses\nups ground for shipping and handling $ 5 . 85\npro - tech prides\nit self on protecting consumers financial privacy and safety .\nno more cans of\nair , no more bags , no more computer vacs .\nperfect for home , office , and industry\nmodel # 1 $ 24 . 95 model # 2 $ 29 . 95 model\n# 3 $ 36 . 95\nour systems are\nfully adjustable and will fit any computer , one size fits all .\ninstalls in seconds !\nstep # 1 : place\nthe base of the filtration system onto your computer .\nstep # 2 : place\nthe top of the filtration system onto the base .\nyoure all set ; and you can access your disk drives as needed .\nreplacement filters\n1 size filter\nfits all three systems\na package of 4 large heavy duty hepa filters , micron rated and designed , to last up to 6 months , $ 9 . 85 perfect for industry .\nalternative\nreplacement filters\na large heavy duty diffusion dual stage filtering\nmaterial . designed to last up to 6\nmonths . package of 4 $ 7 . 85 perfect for home and\noffice .\ncall today at 1 - 800 - 726 - 5997\nweb and order form : pro - techonline . com\ne - mail - info @ pro - techonline . com\nfax 206 - 937 - 4315\npro - tech filtration systems 3701 sw southern seattle , wa 98216 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.790+0000", "entityId": 6442, "properties": {"text": "Subject: investment op in proven nasa technology\nhey , i thought you might like to take a look at viaspace\nanalyst research , report profiling services\nby ipodesktop . com\nviaspace , inc .\nstock symbol : vspc . ob *\nfloat : 24 mm ( est )\nstock price 7 / 1 / 05 : $ 3 . 45\ncommon shares 6 / 28 / 05 :\n283 mm ( est )\nrecent price range : $ 2 . 80 - $ 3 . 45 equity market capitalization : $ 976 mm\n* formerly global wide publication\nbusiness\nto disrupt and displace fuel cell , homeland security and public safety markets , vspc uses patented technology based on hundreds of man - years of space program efforts .\nvspc has licensed technology that has been has been nurtured , tested and proven in labs and space by nasa , jpl , caltech and university of southern california ( usc ) .\naddress : 2400 lincoln avenue , altadena , california 91001\ntelephone : ( 626 ) 296 - 6310 fax : ( 626 ) 296 - 6311\nceo : dr . carl kukkonen\nweb site : press here\nstate or other jurisdiction of incorporation or organization : nevada\ntransfer agent : the nevada agency and trust company\ninvestor contact : ( 888 ) 359 - 9558 , e - mail : press to email\nsummary\nwith proprietary technology vspc is driving the growth of very large , billion dollar new markets and is expected to generate very significant recurring income with patented technology products .\nto gain competitive advantage , strategic partners are willing to integrate vspc ' s products on a worldwide basis .\nfuture vspc cost - effective growth is based on the ' fabless business ' model , perfected by the semiconductor industry which , for example , outsources wafer manufacturing to the far east .\nstrong management team\na strong management team is the most important , critical ingredient to creating future shareholder value . vspc has a strong management team ( see below ) .\nlarge rapidly growing markets\nin general , to increase shareholder value a company must participate in rapidly growing markets , and should try to be a significant player in targeted markets . vspc expects to dominate billion dollar markets that do not exist today , by introducing ' believe it or not ' technology innovations that create and expand markets .\n\" breakthrough \" products in the vspc pipeline\nvpsc products in the process of commercialization are expected to enable up to 10 hours of laptop computer usage , and three weeks of cell phone operation using fuel cells , gps - free navigation , especially for places where gps doesn ' t work ( a top dod priority ) , automated analysis of air and seaport cargo containers based on x - ray imaging ( homeland security ) , identification of narcotics , chemicals , and biological weapons .\nanother total breakthrough , with a nanotechnology based mass spectrometer is a portable , carry - on suitcase size device that processes identifies one molecule at a time : further miniaturization is expected to shoebox size , compared with stationary desk size provided by today ' s competitors .\nsignificant recurring income from fuel cell batteries\nin five years , annual revenue from disposable fuel cartridges for fuel cell - powered portable electronic devices is expected to range between $ 7 billion on the low side to $ 45 billion on the high side . that market does not exist today .\nvspc ' s fuel cell cartridge business model is similar to the well - known razor / razor blade model , which is to sell the razor and then make much more money on the recurring blade business . the fuel cell is a razor , and the disposable fuel cartridge is the razor blade .\nanother analogy is the\nflashlight / battery model . imagine if a company had the primary intellectual property involved in manufacturing flashlights . it would probably license that technology to major flashlight manufacturers , in return for help in dominating the recurring flashlight battery business .\nin this case vspc has the proprietary rights to the ' flashlight ' - - the fuel cell - - and intends to sell the \" flashlight battery \" - - specifically , disposable fuel cartridges , for an end - user price of $ 2 - $ 3 each .\nvspc is currently negotiating to provide its patented fuel cell technology to major computer manufacturers , in return for their agreement to use disposable fuel cartridges developed by vspc , the manufacturing of which will be outsourced to well - known , major plants in the far east .\nintellectual property protected with patents\nvspc ' s fuel cell technology , for example , is protected by over 70 issued and pending patents .\nstrategic partners lend credibility\nto create a cost - effective worldwide footprint , emerging companies must partner with branded , global companies who have strong management teams and significant resources .\nvspc is partnering with major , well - known market leaders who have management , resources and global branding . partners are attracted to vspc ' s technology , and expect to gain competitive advantage by integrating patented , proprietary technology obtained from vspc .\nfor example , in the fuel cell business , toshiba , nec , sanyo , hitachi and samsung have unveiled prototype fuel cell powered products that more than double the operating time over existing battery technology . these companies are potential strategic partners for vspc . to better work with japanese manufacturers , vspc has opened a tokyo office .\n\" fabless \" business model enables cost - effective growth\nfabless semiconductor chip companies design and develop proprietary chips , then outsource manufacturing to wafer plants in the far east . some well - known fabless semiconductor companies , ranked by market capitalization , include\n$ 12 billion market cap , broadcom ( brcm )\npress here to view\n$ 11 billion market cap , marvell semiconductor ( mrvl )\npress here to view\n$ 9 billion market cap , xilinx ( xlnx )\npress here to view\n$ 7 . 3 billion market cap , altera ( altr )\npress here to view\n$ 4 . 5 billion market cap , nvidia corp ( nvda )\npress here to view\n$ 4 . 4 billion market cap , sandisk corp ( sndk )\npress here to view\n$ 3 billion market cap , ati technologies ( atyt )\npress here to view\n( other technologies products to be discussed in future analyst report updates )\nvspc expects to use emerging computational , rf , imaging and nanosensor technologies to drive market growth by enabling gps - free navigation , especially for where gps doesn ' t work - - a top dod priority ; automated analysis of air and seaport cargo containers based on x - ray imaging - - for homeland security applications ; and identification of narcotics , chemicals , and biological weapons .\nwhen appropriate we will also provide updates on projects currently under review , which include a water purification technology and interactive radio .\nmanagement\nchief executive officer :\ndr . carl kukkonen , ceo and founding partner .\nprior to founding viaspace technologies llc , dr . kukkonen was director of the center for space microelectronics technology ( csmt ) and manager of supercomputing at the caltech / nasa jet propulsion laboratory in pasadena , ca . at jpl , dr . kukkonen managed several technologies and technical teams , including the technical foundation of viaspace ' s operating subsidiaries .\namong his major accomplishments , dr . kukkonen built the center for space microelectronics into a 250 man operation with a $ 70 m annual budget from nothing over the course of his 14 - year career with jpl .\nprior to his jpl experience , dr . kukkonen was at the ford motor company , where he was ford ' s leading expert on hydrogen as an alternative automotive fuel . he also led a team that developed ford ' s first turbocharged intercooled direct injection diesel engine .\ndr . kukkonen received a bs in physics from the university of california at davis . he earned an ms and ph . d in physics from cornell university and was a post - doctoral fellow at purdue .\nchief operating officer / vice president business development :\na . j . abdallat , a co - founder of viaspace .\nmr . abdallat , along with dr . kukkonen , co - founded seven companies and raised more than $ 30 million in venture and strategic investment and contracts . mr . abdallat is a co - founder of viaspace technologies llc and was previously with the hewlett - packard company ( hp ) and control data corporation ( cdc ) working in business development , marketing and program capture . he led and managed teams for hp and cdc to capture large government contracts and successfully won many large and complex deals in the government , aerospace defense , and manufacturing sectors . mr . abdallat received his master ' s degree in engineering from the university of missouri and a bs from the university of california at berkeley .\nchief financial officer , secretary , and treasurer :\nstephen muzi\nprior to joining viaspace , mr . muzi was corporate controller of southwest water company , a nasdaq company with revenues in excess of $ 100 million . in this position , he was responsible for all sec reporting requirements as well as board of director reporting . he managed their line of credit banking relationships , risk management program , internal audit program , and income tax requirements . he also made presentations to investment brokers and analysts on behalf of the company focusing on outlooks for the future and past financial performance . prior to southwest water company , mr . muzi was a senior auditor with bdo seidman , a national cpa firm . mr . muzi received his bs degree from rochester institute of technology and an mba from the state university of new york at buffalo . he is a certified public accountant .\nboard of directors member\ndr . sandeep gulati\ndr . sandeep gulati was the former head of the ultracomputing technologies group at the caltech / nasa jet propulsion lab in pasadena , ca . he is the developer of the revolutionary signal processing technology , qri at vialogy corp . which was incubated by viaspace .\nduring his twelve year tenure at jpl , he led computational advances in spacecraft autonomy , autonomous diagnostics and prognostics of complex systems , information , sensor and data fusion , neural networks , signal processing , command decision modeling and intelligence analysis . under his leadership the ultracomputing technologies group focused on cutting - edge research in ultrascale computational technologies , such as quantum computing , biocomputing , and their applications to next generation spacecraft design and operations .\ndr . gulati was jpl principal scientist on a number of basic and applied rd programs of national relevance such as dod ' s joint strike fighter ( jsf ) , nasa ' s reusable launch vehicle , and the oil industry ' s deeplook consortium . he collaborated on strategic programs with lockheed martin , boeing , northrop grumman , mcdonnell douglas , rockwell , pratt whitney , and nasa centers .\nalso , dr . gulati is a co - founder and chief science officer of vialogy corp . , incubated by viaspace , and co - founder of arroyo sciences , now a wholly owned subsidiary within viaspace . at vialogy corp . dr . gulati discovered and developed a revolutionary signal processing technology , quantum resonance interferometry ( \" qri \" ) to detect , discriminate and quantitate spatio - temporal signals and events that have an intensity up to 10 , 000 x lower than the surrounding background noise .\ndr . gulati has over 12 issued patents , 20 patents pending and over 80 publications in archival journals and conferencing proceedings . he has an mba in from pepperdine university ( 91 ) , b . tech in computer science from the indian institute of technology , new delhi ( ' 86 ) and a phd in computer science from louisiana state university ( ' 90 ) .\nregarding the appointment , dr . kukkonen stated , \" dr . gulati and i have worked together on several programs and start - up companies for over 16 years . he is a valuable addition to our board of directors . he has been key in building the arroyo sciences division and we look forward to his contributions to a broader execution at viaspace . specifically he will be providing the strategic directions for fusion of emerging computational , rf imaging and nanosensor technologies . \"\nviaspace overview\nviaspace was formed in july 1998 with an objective of transforming technologies from caltech / nasa ' s jet propulsion laboratory and other advanced technology centers into profitable commercial enterprises through its strong connections with the advanced technology community . through its three subsidiaries - - arroyo sciences , ionfinity , and direct methanol fuel cell corporation ( dmfcc ) - - viaspace has a diversified high tech portfolio that includes microelectronics , sensors , homeland security public safety , energy / - fuel cells , information computational technology , rfid , e - finance , and mobile e - commerce .\nviaspace develops proven space and defense technologies into hardware and software products that fulfill high - growth market needs and solve today ' s complex problems .\nviaspace benefits from important licenses and strategic relationships with caltech / nasa ' s jet propulsion laboratory and other universities research laboratories . the viaspace team has a proven expertise for the successful commercialization of innovations in information technology , physical science and life sciences developed at academic research institutions and national laboratories .\nthe company currently focuses on technologies originally developed for nasa and the us department of defense that have already reached a certain stage of maturity . initial investments in these technologies amount to millions of dollars and many years of rd , enabling viaspace to manage the commercialization process with only a modest additional investment and greatly reduced technical risk .\nviaspace couples exceptional technology sourcing and validation capability with a demand - driven process of market validation . decisions about technology transfer and product development are based , first and foremost , on market needs . in addition to our internal expertise , viaspace benefits from the domain expertise of leading experts that serve on our scientific and business advisory boards and from an informal global network of researchers , technology analysts , and technology professionals and investors that would be hard to replicate .\nin the last six years , viaspace and its subsidiaries have secured more than $ 30 million in venture financing and strategic investment . initial investors include hewlett packard , divine interventures , los angeles county community development commission , blueprint ventures , the united company , bioprojects international , forrest binkley brown , american river ventures , and nth power .\nviaspace has spawned 3 companies : spectrasensors\n( press to go to site ) , qwip technologies\n( press to go to site ) , and vialogy corp ( press to go to site ) . these companies , currently at various stages of maturity , are positioned within high growth markets and poised for profitability . today , viaspace focuses its effort on its three subsidiaries - - arroyo sciences , ionfinity , and direct methanol fuel cell corporation ( dmfcc ) - - and on new high technology opportunities . view full report\ncheck back\ncheck back here for additional installments of our vspc analyst report , and for analysis of vspc press releases including what they mean to investors .\nview full report\nview full report\nto join market movers mailings press here to find out more .\n2400 lincoln ave\naltadena , ca 91001\nsafe harbor statement\nthis information is a paid advertisement . any views expressed herein are provided for information purposes only and should not be construed as an offer , an endorsement , or inducement to buy or sell securities . bronks communications , inc . ( bci ) received compensation for printing and distributing this ad from a third party as an effort to build investor awareness about viaspace inc . ( vspc ) . the compensation is one hundred thousand dollars . this compensation constitutes a conflict of interest as to bci ' s ability to remain objective in our communication regarding vspc . bci owns 1 , 000 shares of common stock in vspc . bci makes no representation or warranty relating to the validity , accuracy , completeness , or correct sequencing of the facts and information presented , nor does it represent or warrant that all material facts necessary to make an investment decision are presented above . factual statements contained in this ad are subject to change without notice . past performance does not guarantee future results . bci is not a registered investment advisor , broker or dealer . all statements of opinion , if any , are those of the analysts , who relied on information believed to be reliable , such as vspc ' s public filings , business documents , and its web sites . the analysts ' reports are for information purposes only . the analysts were contracted by bci to write their reports and were paid a total of fifteen thousand five hundred dollars . independent analyst reports in this ad do not constitute an individualized recommendation to you to buy or sell a particular security . any opinions , estimates , or forecasts about vspc or predicted performance made by the analysts in this ad are theirs alone and do not represent opinions , forecasts or predictions of bci . interested persons must obtain the analysts ' full reports on their own . the analysts ' reports do not purport to be complete and are not intended to be used as a primary basis for investment decisions . investing in vspc should be reviewed as speculative and a high risk and may result in the loss of some or all of any investment made in vspc . further specific financial information , filings , and disclosures , as well as general investor information about publicly traded companies are available at the securities and exchange commission website www . sec . gov and www . nasd . com . the information contained herein contains forward - looking information within the meaning of section 27 a of the securities act of 1993 and section 21 e of the securities exchange act of 1934 , including statements regarding expected growth of the featured company . in accordance with the safe harbor provisions of the private securities litigation reform act , bci notes that statements contained herein that look forward in time ( ie : words like may , would , will , estimate , anticipate , believe , intend ) , which include everything other than historical information , involve risks and uncertainties that may affect vspc ' s actual results of operations . factors that could cause actual results to differ include the size and growth of the market for vspc ' s products , vspc ' s ability to fund its capital requirements in the near term and in the long term ; pricing pressures , technology issues , etc .\nmedia matrix 7025 county rd . , 46 a dte 1071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.795+0000", "entityId": 6443, "properties": {"text": "Subject: afforable health care\nmen ' s health :\nviagra , cialis , levitra\nanti - depressants : ativan , paxil , prozac , zoloftpain relief : soma ,\nultramweight loss : meridia , phentermine\nviagra - $ 2 . 0 / pillsoma -\n$ 1 . 4 / pillcialis -\n$ 4 . 2 / pillvalium - $ 3 . 0 / pillxanax\n- $ 2 . 3 / pillambien -\n$ 2 . 7 / pillultram -\n$ 1 . 2 / pillativan - $ 2 . 0 / pilllevitra -\n$ 4 . 2 / pill\nif\nyou compare the cost and services of our competitors , you will see that we\ngive you much more . . . for less . our commitment to quality service and\ncustomer satisfaction not only makes our site the best\nchoice but the smart\nchoice .\nthe facts : our site has lower prices and more services\nthan its competitors for three consecutive years ! our prices are between 43 . 43\nand 58 . 8 % ( an average of 66 . 32 % ) less than the market average .\nvisit us http : / / ioaxint . enjoydays . info / ? 6 c 2 ae 3 afaoaf 7 bdol 9325599 cf 9 zbb 83 /\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.800+0000", "entityId": 6444, "properties": {"text": "Subject: looking for a new job ?\nprofessional . effective . 100 % guaranteed .\nvisit us at :\nwww . stopsendingresumes . net\ncareer controls , inc . p . o . box 42108 cincinnati , oh 45242 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.804+0000", "entityId": 6445, "properties": {"text": "Subject: security alert - confirm your ebay information\nebay suspension\nneed help ?\ndear valued ebay member ,\nwe regret to inform you that your ebay account has been suspended due\nto concerns we have for the safety and integrity of the ebay community .\nper the user agreement , section 9 , we may immediately issue a warning ,\ntemporarily suspend , indefinitely suspend or terminate your membership\nand refuse to provide our services to you if we believe that your\nactions may cause financial loss or legal liability for you , our users or\nus . we may also take these actions if we are unable to verify or\nauthenticate any information you provide to us .\ndue to the suspension of this account , please be advised you are\nprohibited from using ebay in any way . this includes the update of your actual\naccount .\nif you could please take 5 - 10 minutes out of your online experience and\nupdate your personal records you will not run into any future problems\nwith the online service .\nplease update your records by the 23 of july .\nonce you have updated your account records your ebay session will not be\ninterrupted and will\ncontinue as normal .\nto update your ebay records click on the following link :\nregards ,\nsafeharbor department\nebay , inc .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.809+0000", "entityId": 6446, "properties": {"text": "Subject: get me thru july newsletter\nthe get me thru newslettervenita king \" the get me thru\ncoach \"\nvolume 1 issue\n7\njuly\n2005\n\" igniting the power of\ninspiration . . . \"\nthank you for reading my\nnewsletter . you will not be the same , i promise ! sign - up todayit ' s free and\npriceless . . .\ntell a friend aboutthis\nnewsletter\nlearn more aboutvenita ' s\ncoaching\nstay up to date with get me thru\nnews\nvenita ' s promiseyou have my word , i will not share your contact\ninformation with anyone . thank you for allowing me to contact\nyou ! be my guest and reprint or\ndistribute \" the get me thru newsletter \" as long as\nyou include thecopyright and web link to www . getmethru . com venita king \" the get me thru coach \" venita @ getmethru . comcopyright 2005 all rights\nreserved . the get me thru collectionis a registered\ntrademark\ncick here to join the get me thru\nnewsletter\nnow ! !\ndiscover get\nme thru nuggets of wisdomthat\nthousands use daily to increase their success - from the\nauthor of \" the voice of my boundaries \"\nin this\nissue\nthe paradox\nof stressthe thing\nyou need but should not keep . . .\nthe coach ' s play\nof the month : \" motivation\nexcites you about someone else ' s answers . inspiration\nignites your inner strength through questions that lead you\nto successful actions and\nself - awareness . \"\nvenita ' s commercial moment\nmonthly special\nthe paradox of\nstress\nthere is a level of genius in every human being\nand it is called a ' gift ' . stress however plays a huge role in how\nwe deliver it to the world . the mystery is that stress is a good\nthing when used properly and a bad thing when misused . how can\nthat be ? consider these get me thru points about\nstress . i learned about them the hard way . you don ' t have to make my\nmistakes .\nstress is a process in life and not just a\nthing that happens\nstress literally enters your being daily and\nit must also be shown the exit door daily\nstress should be utilized as a tool for\nforward movement in the face of challenge\nstress keeps you alert at the beginning ,\nweighs on you midway and brings you down in the end if you keep it\nto long\nstress is an excellent motivator but unlike\nmotivation , it doesn ' t just disappear\na get me thru nugget of wisdom : wherever\nyou store your stress is where you can expect to experiencethe\nmost damage , physically , spiritually or financially . . . in the end ,\nsomeoneelse most likely will have to inform you about the\nseverity of your damage .\na\nget me thru question : do you process your stress daily for\nauthentic success or do you store it daily for\ndisaster ?\nso you see the parameters of\nstress will enter the board room or home , it has no preference . -\nit ' s all about people and not position . however , when ignored stress\nwill ultimately determine how far each one of us goes in life -\nguaranteed !\nread what i learned about how to\nprocess stress and how misusing it nearly cost me my life in chapter\n8 of \" the voice\nof my boundaries \" .\nthe coach ' s play of the\nmonth : \" motivation excites\nyou about someone else ' s answers . inspiration\nignites your inner\nstrength through questions thatlead you to successful actions\nand self - awareness . \"\nthe get me thru question for this\nmonth should last you for a lifetime , because stress is a part of\nlife forever . whether you want to be a millionaire or merely\nsurvive , you too must make a decision about processing stress . your\nsuccess in life demands it !\nlearn from my get me thru nuggets of\nwisdom and then work on your own !\nlet me hear from you soon ! sign my\nguestbook\nvenita ' s commercial\nmoment monthly special :\nbuy the voice of my\nboundaries in the get me thru signature pocket during\nthe month of july and receive set of 21 get me thru share\ncards too !\nand\nclick here to buy\nnow\nyour response to my new\nget me thru jingle get me thru meditation songhas\nbeen incredible . many of you heard them if you attended one of my\nmarch or april inspiring success workshops . just\nclick here to\nlisten to an excerptfrom the meditation song . the link takes you\nto my website . click the play button on the media player in\nthe right column and enjoy !\nmay the voice of your boundaries guide you always . many\nblessings ! venita\ncick here to join the get me\nthru newsletter\nnow ! !\nget me thru , inc . 1019 old monrovia rd . huntsville , al 35806 this e - mail message is an advertisement and / or solicitation .\n- -\nno virus found in this incoming message .\nchecked by avg anti - virus .\nversion : 7 . 0 . 323 / virus database : 267 . 9 . 1 / 51 - release date : 7 / 18 / 2005\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.813+0000", "entityId": 6447, "properties": {"text": "Subject: failure notice\nhi . this is the qmail - send program at localhost . localdomain .\ni ' m afraid i wasn ' t able to deliver your message to the following addresses .\nthis is a permanent error ; i ' ve given up . sorry it didn ' t work out .\n:\nthis address no longer accepts mail .\n- - - below this line is a copy of the message .\nreturn - path :\nreceived : ( qmail 12390 invoked from network ) ; 19 jul 2005 13 : 52 : 53 - 0000\nreceived : from unknown ( helo mailwisconsin . com ) ( 7371 @ 60 . 16 . 126 . 29 )\nby . com with smtp ; 19 jul 2005 13 : 52 : 53 - 0000\nreceived : from 205 . 214 . 42 . 66\n( squirrelmail authenticated user projecthoneypot @ projecthoneypot . org ) ;\nby mailwisconsin . com with http id j 87 gzo 38191228 ;\ntue , 19 jul 2005 10 : 57 : 46 + 0000\nmessage - id :\ndate : tue , 19 jul 2005 10 : 57 : 46 + 0000\nsubject : just to her . . .\nfrom : \" barry castillo \"\nto : distland @ all . com\nuser - agent : squirrelmail / 1 . 4 . 3 a\nx - mailer : squirrelmail / 1 . 4 . 3 a\nmime - version : 1 . 0\ncontent - type : text / html ; charset = iso - 8859 - 1\ncontent - transfer - encoding : 8 bit\nx - priority : 3 ( normal )\nimportance : normal\nsoft viagra at $ 1 . 62 per dose\nready to boost your sex life ? positive ?\ntime to do it right now !\norder soft viagra at incredibly low prices\nstartinq at $ 1 . 99 per dose ! unbelivable !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.818+0000", "entityId": 6448, "properties": {"text": "Subject: industry giants can ' t match this opportunity\nanother ground breaking news alert from rlyc .\nthe potential stored - value debit card market in the united states alone is approximately 150 million people , of which only about 12 million now maintain active stored - value debit card accounts .\none company is quickly entering a $ 2 trillion market space with a proposed portfolio of product and service offerings that even the largest multi - national corporations in its industry may have a hard time matching . in just a few months , this company has begun adding and developing innovative new products and targeting acquisitions that could help it reach millions of new long - term customers that could generate tremendous re - occurring revenues for many years to come .\nalthough you have probably never heard of this company , you may soon hear of it even if you don ' t continue reading this message . that ' s because it is making a major push to put its products in the hands of a half million people in the u . s . within the next year .\nan upstart company to make a real impact in a two trillion dollar industry\nin reality , this company ' s lack of early recognition could be a major plus for you . since the overwhelming majority of investors and institutions don ' t know this company or what they plan to accomplish , their stock is trading at rock bottom prices . but , if they do accomplish even a small part of what they have set out to do over the coming months and years , this company could become a significant player in its trillion dollar industry and its stock reflect its accomplishments .\nthe company that we ' ll introduce you to today is ( relay capital corp . pink sheets : rlyc ) . rlyc , which recently went public , is a multi - faceted financial services company that focuses primarily on the stored value card market . rlyc ' s present product and service offerings include pre - paid stored - value cards , reward cards , employee payroll cards , gift , retail and affinity group cards , travel cards and funds transfer cards . these services are aimed at a significant market both domestically and internationally .\njust because a company is in a large and growing industry doesn ' t necessarily ensure that it will be a winner . in order to be successful , that company also needs to be truly innovative , have very strong partners , be able to reach vast customer bases and have a management team capable of putting it all together and turning its goals into reality . rlyc appears to be that company .\nbelow we ' ll discuss this substantial potential market rlyc is after and what sets rlyc apart from the competition .\nthe potential stored - value debit card market in the united states alone is approximately 150 million people , of which only about 12 million now maintain active stored - value debit card accounts .\nstored - value cards have the potential to help the 50 million adults and their families who have been excluded from the e - commerce revolution because they do not have access to credit or banking facilities . the implications reverberate across industry segments . estimates suggest stored - value transactions could exceed $ 2 trillion in just a few years .\nrlyc ' s focus is on providing stored - value cards to the un - banked and under - banked . these terms refer to consumers that that do not have a bank account , debit card . the size of that group is staggering that ' s about one - third of the nation ' s work force !\nrlyc capitalizes on the dilemma these consumers face by providing stored - value card programs that make it easy , fast and secure for people and businesses to buy all manners of goods and services using stored - value cards as well as for the un - banked and under - banked to be paid their salaries via the same cards .\nbut that ' s not all . the benefits relay will offer on its stored value cards as well as other financial services will also be of great benefit to those who already have banking relationships . in this segment , relay plans to offer more services with greater convenience for less cost to the consumer . who wouldn ' t want that ? the payroll market is another enormous market for rlyc\nfor the under - and un - banked , collecting their pay , cashing payroll checks and then paying bills with those funds can be extremely complicated and time consuming . rlyc ' s stored - value pay transfer card program presents a very effective and innovative solution for this problem .\nrlyc ' s pay transfer card program can lower costs to employers to process payroll for the banked and the un - banked alike ! lower costs to cardholders to potentially transfer cash between u . s . cards , cards in foreign countries , and services bought through the cards , improved employee retention , improved customer retention will all be available thanks to rlyc . various programs will make life much easier for cardholders using the system , while also providing the convenience and flexibility of either visa or mastercard purchasing power or 24 hour access to their money through atms .\nrlyc signs loi with national staffing company to use its pay transfer cards\nearlier this year , rlyc signed a binding letter of intent to provide a pay transfer card program for asgard global resources llc ( click to go to their site ) , a leader in providing technical , craft and administrative staffing services to businesses , industry and government through locations in houston , dallas , long island , orlando , phoenix and southern california all areas with huge un - and under - banked populations .\nthe potential market for this service is really big . it includes large employers , companies that process payroll and financial institutions that provide banking and payroll services to commercial customers .\nthis system will simplify payments to widely dispersed employees and contractors while dramatically decreasing payroll distribution by offering a cost effective alternative to printing , cutting , and mailing paper payroll checks . it also helps to reduce a great deal of paper processing of checks and pay , eliminate lost checks , stop payments and minimize fraud . but best of all , this should help to significantly boost rlyc ' s revenues .\n$ 150 billion sent worldwide by relatives to home countries\nmexicans in u . s . send $ 16 . 3 billion a year back to mexico\nwith $ 150 billion being transferred internationally each year , remittances are a really big business . in times past , people wanting to send money to relatives back in their home countries had few choices . many times their only choice was an expensive proposition like western union . more recently , more and more people have resorted to purchasing and mailing money orders in order to try to cut down on the cost of sending remittances .\nthe problems with traditional money transfer methods\nwith wire services , there are any number of inherent problems when trying to send money to relatives overseas . first , wiring funds across borders can be expensive . this can make it very cost - prohibitive to send smaller amounts of cash and often means that relatives must wait longer to receive their remittances because the sender has to save up until the amount is large enough to warrant the cost associated with the wire service . next there is the problem of logistics . both the sender and the recipient must be able to easily reach a storefront that offers the same wire company ' s services . even if they both are able to do this , the recipient may have to make multiple trips to the wire service office to check to see if their funds have cleared yet and can be released to them . lastly , the sender and the recipient are subjected to varying service fees depending on which wire service they choose . these fees can be very high and can significantly cut into the amount of money the recipient ultimately receives . so , even though using a wire service may be a fairly fast way to transfer money , it can be very expensive and logistically difficult to use .\nwith money orders there is always the problem of mail service . although in america we have grown accustomed to relatively quick and reliable mail service , this is not always the case in foreign countries . this is especially true in underdeveloped nations , where most remittances are sent . a letter containing a remittance that a family is depending on to provide much needed food and shelter could take many days or even weeks to arrive . and , there is always the chance that it will never arrive at its destination at all , meaning that the sender ' s family could go hungry or end up on the streets .\nwhat is the best way to send remittances ?\nby far the most convenient , fast , safe and ultimately cost efficient method to send remittances is through a stored - value card . with this type of service , a person can easily activate a card and then just deposit funds into the account ( onto the card ) via loading station , telephone or the internet for easy use by relatives in his or her home country .\nthe process is extremely easy and cost - effective . funds can be added to the card ' s account at an ever increasing number of convenient locations . the family member overseas can then draw down on those funds by presenting a card from that account to make purchases or they can use the card to withdraw cash from atms . it could not be any simpler .\nrlyc has already begun filling orders\nin june of this year , rlyc announced that it had received its first order for 2 , 000 pin - based stored value cards . the company stated that its growth estimates call for approximately 2 , 000 new stored - value cards being put into circulation each month . this could result in exponential revenue growth as new customers are added and its customers take advantage of its other financial services . moreover , though other programs it is working on , it could have one half million cards in the market within the next 18 months .\nrlyc plans to expand its services through partner companies and one - stop financial centers\nrlyc expects to fuel exponential growth of recurring revenue from individual card usage , monthly fees , as well as other activities occurring at its loading centers or the virtual financial centers it is planning . loading centers are retail locations , such as convenience stores , check cashing facilities or other types of retail facilities serving to dispense or receive cash facilitating transactions for the debit card consumer . rlyc has already established strategic relationships with leading card processors , vendors and distributors , and is in program development with key partners that may bring over 100 , 000 retail locations and a host of great opportunities to dramatically increase its brand recognition .\nrlyc plans a host of new financial products and service offerings\nsome of the products and services rlyc plans to be launching in the coming months include commercial , auto and sba loans , mortgages , all types of affinity group ( loyalty / rewards ) cards , pharmacy discount cards , certificates of deposit ( cd ' s ) , health savings accounts and health and life insurance . rylc is expanding extremely rapidly and at this pace , should gain a whole lot of exposure to the investment community f - a - s - t ! ! !\nrlyc plans to grow through joint ventures and acquisitions\nthrough a well - planned strategy to partner with major players in the financial services industry and through key acquisitions of complimentary companies , rlyc plans to fuel its growth . it has begun identifying and will negotiate business joint ventures , acquisitions and partnerships within the stored value card industry .\nrlyc is positioned to offer expanded payroll products as well as define a niche market for its private label stored value solutions . with corporate network ' s assistance , it expects to add new and expansive products linked to its card platform and provide its customers with a growing range of superior products and increased customer loyalty .\nrlyc plans to enter the emerging high growth health savings account ( hsa ) market\nrlyc has entered into an agreement in principle with mydaily corp . , an employee benefit and financial services company , to provide health saving account ( hsa ) stored value debit cards that will enable employees to easily pay routine medical bills with pre - tax dollars .\nhealth savings accounts ( hsa ) are tax - sheltered savings accounts similar to an ira , but earmarked for medical expenses and are part of a high deductible insurance plan . deposits are 100 % tax - deductible for the self - employed and for employees of companies that offer an hsa .\nthis could be an enormous new market for rlyc\nit is estimated that all millions of non - elderly americans will soon have access to a health savings account , creating a market of unprecedented potential . in fact , due to the rising costs of employer - sponsored health plans , it is also estimated that one in every two major employers in the united states is considering consumer directed health plans and hsa for their employees .\nexperienced stored value card and financial services industry executive named ceo of relay capital corp .\ne . reese bogle iii , experienced financial services and stored value card industry executive , has been named relay ' s . most recently he was one of the founders , and served as executive vice president and chief operating officer of interstate net bank ( www . isnbank . com ) , establishing it as a visa principal member .\nprior to this , mr . bogle , was vp of e * trade bank ' s corporate development and strategic alliances group and president of telebanc insurance services , inc . he also served as vp and marketing director of premium bank , and held a variety of managerial and marketing positions at leading financial services companies .\nrelay will be adding real depth experience to its management team\nthe next step is to bring a well qualified management team to relay capital said mr . bogle . once the team is onboard , we intend to build relay capital into a diversified financial services provider that , in addition to looking for exponential growth of recurring revenue generated from individual stored card usage , as well as other financial service activities occurring at our card loading centers or its virtual financial centers , we potentially plan to provide : commercial loans , auto loans , sba loans , mortgages , certificates of deposit ( cd ' s ) , health benefits ( dental , vision ) , life insurance benefits , pharmacy drug discounts , loyalty and reward programs , and shopping discount programs .\nwith innovative products and services targeted to trillion dollar market ; a host of powerful partners ; key acquisitions in the works ; orders already coming in ; and a top - notch management team to bring it all together , rlyc seems to be headed for sunny skies .\nthis company will not remain below the radar screens of wall street ' s mover shakers or even the average investor for much longer . . . if you are on the lookout for companies that have what it takes to experience rapid growth , but are still trading at rock bottom prices , you should call your financial advisor today about relay capital corp . ( rlyc . pk ) .\ne - mail\nfirst name\nlast name\nphone number\nthis program is expected to be huge and could make a tremendous amount of money for rlyc ! but , is not just for remittances\nrlyc is a rapidly growing financial services company that develops and markets a wide range of prepaid financial services , including pre - paid stored - value cards , reward cards , employee payroll cards , gift , retail and affinity group cards , travel cards and fund transfer cards . it encompasses both the marketing and distribution of pre - paid and pay - transfer cards in concert with the development of loading centers . loading centers are retail locations , such as convenience stores , check cashing facilities or other types of retail facilities serving to dispense or receive cash facilitating transactions for the stored - value card consumer .\nrlyc offers great stored - value solution and the potential to make millions !\nrlyc expects to fuel its exponential growth of recurring revenue generated from individual card usage , as well as other activity occurring at its loading centers . beyond card / transaction income , relay has set its sites on providing additional financial services such as :\n- commercial loans\n- auto loans\n- sba loans\n- mortgages in all 50 states\n- certificates of deposit ( cd ' s )\n- health benefits ( dental , vision )\n- life insurance benefits\n- pharmacy / drug discounts\n- loyalty / rewards type programs\n- shopping discount programs\n- merchant processing\n- stored value cards\n- debit cards\n- gift cards\n- cross - border transactions\n- overdraft on the cards instead of expensive payday loans\nthe potential stored - value debit card market in the united states alone is approximately 150 million people , of which only about 12 million now maintain active stored - value debit card accounts .\nrlyc already has powerful partners\ntechnology alliance group ( tag )\nsince 1994 , the world class data center operation , now known as tag , has supported \" mission critical \" applications for companies of all sizes and in all lines of business on a worldwide basis , including several fortune 500 companies . the core product suites supported by tag have included mainframe outsourcing , internet hosting solutions and a wide variety of disaster backup and recovery alternatives . as with all its client relationships , tag brings to relay capital a highly securetechnology infrastructure to support its corporate web presence , email , interactive voice response ( ivr ) system and support of all future financial service offerings . with over 10 years of experience supporting the financial industry alone , including nearly 50 u . s . banks and others worldwide , tag offers a tremendous knowledge base in the financial marketplace .\ncabbage solutions\nthe principles of cabbage bring an accumulated 50 + years of experience in the financial industry . credentials include 12 years with the federal reserve system , vendor experience in all types of software and hardware solutions , as well as a variety of gift card , stored value card and debit card programs . in addition to its vast industry knowledge , cabbage also brings a vital component known as internet and data security . in today ' s world it is becoming widely agreed upon that a company ' s most valuable asset is it ' s data . once again , the principles of cabbage bring credentials including having been the president of the arizona fbi ' s cyber terrorism group known as infragard . access to several worldwide terrorist alert systems also keeps cabbage in a proactive position to protect its clients from newly released threats to the public internet .\ngreat business strategy : relay capital corp . is getting attention because rlyc has the right technology , at the right time , in the right markets . rlyc has a strong management team , world - class partners , and great new products that are ideal for multiple markets .\nstrong management team : the new ceo of relay capital corp . is e . reese bogle iii , who is best known for having co - founded and served as an officer of interstate net bank ( www . isnbank . com ) . mr . bogle is building the management team with experienced executives who are known and respected in the financial services industry .\nworld - class strategic partners : rlyc ' s strategic partner for transaction processing is an industry leader . rlyc ' s business operations are ready for expansion in response to growing demand for relay capital ' s stored - value cards . rlyc is also exploring opportunities to partner with some of the leading brands in consumer goods .\ninnovative stored - value products : relay capital ' s stored - value cards are helping families , businesses , and communities to go about their daily lives in a better way , using rlyc stored - value cards for transferring money , banking , and adding many new benefits to participation .\nrlyc has the right managers strategic partners for multi - million - dollar revenues and industry leadership .\nfor more information , click here\ncompany : relay capital corp .\notc - pink sheet : rlyc\nindustries : financial services ,\nretailing , health care\nproduct : prepaid mc / visa cards and other financial services\nto join market movers mailings click here to find out more .\nhighland inc .\n2000 worthy down\nchriss church barbados wi\nl . davies 246 - 418 - 0920\ndisclaimer and sec compliance\nthe information contained in this publication is for informational purposes only , and not to be construed as an offer to sell or solicitation of an offer to buy any security . investing in micro - cap penny stocks should be considered as extremely speculative and risky as it may result in a loss of all or some of your investment . highland inc . is not a registered investment advisor or broker dealer . highland inc . received compensation for this newsletter service for rlyc . the compensation is fifty thousand from a non - affiliated third party . because highland inc . is receiving compensation for its services , there is an inherent conflict of interest in the statements and opinions and such statements and opinions cannot be considered independent . highland inc . makes no representation or warranty relating to the validity of the facts presented nor does the publisher represent a warrant that all material facts are necessary to make an investment decision presented above . factual statements contained in this publication are made as of the date stated and they are subject to change without notice . this release may contain statements that constitute forward - looking statements within the meaning of sec . 27 a of the securities act of 1933 , as amended , and sec . 21 e of the securities exchange act of 1934 , as amended . the words may , would , will , expect , estimate , anticipate , believe , intend , and similar expressions and variations thereof are intended to identify forward - looking statements .\nmedia matrix 7025 county rd . , 46 a dte 1071 # 349 lake mary , fl 32746 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.822+0000", "entityId": 6449, "properties": {"text": "Subject: v . to you\nwant to know how t archimedean o save over 60 % on your piils ?\nhttp : / / w alphabetically ww . healthen . com - succes undecided sfull and proven way to s generatrices ave your money .\napophthegm v\nsteeple ag\na coryphee l\ngroomsman lu\nalimentation l\nunsearchable ra terror cl\nsurety is monticule val\nregale m\nandmanyother .\nb unsown est prlces .\nhigh qu monitorial aiity .\nw criterion orldwide shlpplng .\ntotal confi exordium dentiaiity .\n250 . 000 + satisfied cus maladministration tomers .\nha handbill ve a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.827+0000", "entityId": 6450, "properties": {"text": "Subject: extra time - last 5 - 10 times longer\nhello ,\ndid you ejaculate before or within a few minutes of\npenetration ?\npremature ejaculation occurs when you ejaculate too quickly\nand without control . it occurs before or shortly after\npenetration . premature ejaculation interferes with the sexual\npleasure of both you and your partner . it causes feelings of\nguilt , embarrassment , frustration , and depression .\nextra - time is the only male sexual performance formula that ,\nnot only stops premature ejaculation , but actually \" cures \" it .\nextra - time is the only product that allows \" you \" to control\nwhen you ejaculate .\n- non - hormonal herbal therapy .\n- acts locally on the sex organs .\n- regulates process of ejaculation .\n- acts through neuro - endocrine pathway .\n- acts on the high centers of emotion in the brain .\nlook here : http : / / tabboulehs . net / et / ? meds\nno thanks : http : / / tabboulehs . net / rr . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.831+0000", "entityId": 6451, "properties": {"text": "Subject: professional advertising\ndear projecthoneypot @ projecthoneypot . org :\nwe offer e - mail marketing with best services .\n1 . targeted list\nwe can provide target email list you need , which are compiled\nonly on your order . we will customize your client list .\n* we have millions of lists in many categories .\n2 . sending targeted list for you\nwe can send your email message to your target clients ! we will\ncustomize your email list and send your ad for you .\n* we also offer hosting & mailing server .\nregards !\njeff\nmarketing dept\nkzll 23123 @ 21 cn . com\nnoandbye : forbye @ hotmail . com", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.836+0000", "entityId": 6452, "properties": {"text": "Subject: feeling great is not a luxury !\ndo you feel the strength ?\nbuddy , deal with your problems\nsupplies are limited ! http : / / buyonlinrmeds . com / ? cid - vug _ txtol\ntake care\nlevi sloan\nphone : 173 - 218 - 1914\nmobile : 777 - 113 - 1269\nemail : kaveljyowkto @ gus . net\ne . n . 0 ^ u . g * h http : / / buyonlinrmeds . com / emover . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.840+0000", "entityId": 6453, "properties": {"text": "Subject: big range of all types of downloadable software .\nneed software ? click here .\nour american professors like their literature clear , cold , pure and very dead .\nbeing another character is more interesting than being yourself .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.850+0000", "entityId": 6454, "properties": {"text": "Subject: acrobat pro 7 . 0 $ 69 . 95 systemworks\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 adobe photoshop 9 . 03 windows xp pro 4 adobe acrobat 7 pro 5 flash mx 20046 corel draw 127 norton antivirus 20058 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe illustrator 11 see more by this manufacturer microsoft symantec adobe customers also bought these other items . . . microsoft office professional edition * 2003 * microsoftchoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 86 % ) availability : available for instant download ! coupon code : mtiyn sales rank : # 1 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1144 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobechoose : view other titles list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : a 6 ogcgbh sales rank : # 2 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 105043 reviews . write a review . microsoft windows xp professional or longhorn edition microsoftchoose : view other titles list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : lussv sales rank : # 3 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1796 reviews . write a review . adobe acrobat professional v 7 . 0 adobechoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 85 % ) availability : available for instant download ! coupon code : m 8 kb 2 xxm sales rank : # 4 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 107780 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.855+0000", "entityId": 6455, "properties": {"text": "Subject: breaking news about cable\ngood day to you sir ,\ndo you like watching cable t . v . ?\nppv : sports , movies , adult channels , hbo , cinemax ,\nstarz , ondemand , ect . and the best part is you can\nhave all these channels with our product !\nour website : filtersppv . com\nif you don ' t want this anymore , add / r to the domain\nabove to goto our removal page .\nget back to you later ,\nelvin c . simon , v\nprojecthoneypot @ projecthoneypot . org", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.863+0000", "entityId": 6456, "properties": {"text": "Subject: not another bad offrr\nw starred ant to know how to save over 60 % on your piils ?\nhttp : / / www . inter oppose good . com - successfull an waterage d proven way to s corbel ave your money .\nheinous v\na pugnacity g\na compulsory l\nl diarchy u\nhardihood l\nr practitioner a mandible cl\nharslet isva regurgitate l\nmuddle m\nandmanyother .\nbest prlc earthward es .\nhig souffle h quaiity .\nworldw enchantress ide shlpplng .\ntota ellipse l confidentiaiity .\n250 . 000 + satisfied cust bengalee omers .\nhave bluebird a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.870+0000", "entityId": 6457, "properties": {"text": "Subject: workss good\nwant to know how to save over overrode 60 % on your piils ?\nhttp : / / ww smoothfaced w . centralreal . com - successfull and proven way livable to sa valuer ve your money .\ntuberculin v\na vermouth g\ncorporal al\nl circlet u\njailbird l\nr wellboring a ostrogoth cl\ndescale isva verity l\nresearch m\nandmanyother .\nb recant est prlces .\nhigh quaiity unspoilt .\nworldwide shlppln inferno g .\ntotal confidenti galoot aiity .\n250 . 000 + satisfied custome cactus rs .\nhave a sprocketwheel nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.880+0000", "entityId": 6458, "properties": {"text": "Subject: letter from : daniel kabila\nletter from : daniel kabila\ninvestment offer .\ndear ,\nin appreciation of your esteemed contact received through a reliable source\nand the choice of your country i wish to introduce myself , i am daniel kabila\nthe son of the late drc president laurent desire kabila of the blessed memory .\ni know this letter might come to you as a surprise but i honestly do not\nintend to surprise you . i write this letter in respect of my intention to\ninvest the sum of us $ 12 m ( twelve million united state dollars ) with you . i\ninherited this money from my mother . this money was got through the smuggling\nand sales of diamond and timber when my father was the head of state . my\nmother though not her legal wife used her privilege position to engage in\nthe\nbusiness of diamond and timber since she knows that her survival will depend\non how much she can get out of the privilege situation .\nwhen my father was assassinated on 16 th jan . 01 by one of his bodyguards\nlt . rashidi kasereke through the conspiracy of some top army officers that\nwanted to topple him i escaped to sa because of the fear that i might be\narrested by my half brother lt . general joseph kabila the present head of\nstate . actually his mother and my mother are not in the best of relationship\nbecause of who among them will be the first lady tussle and this ultimately\naffected us their children . considering the relationship between sa and my\ncountry ' s new government , my mother advised me to leave for sa for security\nreason , while the funds were deposited with a security company abroad .\non getting to there where i have been living since then as a political refugee\ni am seeking for a reliable foreigner who can assist me in moving this money\nout for safe banking and profitable investment . honestly i contacted you\nbecause i don ' t want to invest this money in here due to my status here as\na\npolitical refugee . and moreover i wouldn ' t want to take risk because this\nmoney is all that i and my mother is depending on because my half brother\nhas\nseized all my father ' s assets and money and left i and my mother empty handed\nwithout knowing about this funds deposited at the security company in abroad\nso that is why i decided that investing this money abroad should be the best\ninvestment for me . i will be honored if i can be given the privilege of\ninvesting this money with your help .\nin view of this plight , i expect you to be trustworthy and kind enough to\nrespond to this distress call to save my mother and i from a hopeless future .\nand if you agree , i hereby agree to compensate your sincere and candid effort\nin this regard with 15 % of the total money and annual 5 % of the after\ntax returns on investment for the first three years . thereafter , the term\nshall be varied . 5 % for expenses , which may arise during the transaction (\nfax\nand phone bills inclusive ) . when the money is moved into your discrete\naccount , you will be allowed to draw 15 % in your favor , while the remaining\n80 % will be invested meaningfully for our future if possible in your area\nof\nbusiness and deterrents sectors of the economy in your country which are\ndividends yielding .\nwhatever your decision is please reach me immediately through my email , and\nkeep this letter tight secret for the interest of my family .\nbest regards ,\ndaniel kabila", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.884+0000", "entityId": 6459, "properties": {"text": "Subject: re :\ngood day ,\neverybody will love to get p - p - t - v and pay not a cent .\nso will you , check the below web address ,\ncopy it and paste in your browser .\nthe web address is :\ncheck 4 choices . com\nonce who don ' t like such mails , plz . add slash and ' r ' to above address .\nand plz . give upt 10 days .\ni am missing working right now . .\nwas michael enjoying running early last month ? .\nget back to you later ,\nkristi olariu", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.889+0000", "entityId": 6460, "properties": {"text": "Subject: confirm results of your refina [ n ] ce application\nwe tried to contact you last week about refinancing your home at a lower rate .\ni would like to inform you know that you have been pre - approved .\nhere are the results :\n* account id : [ 933 - 327 ]\n* negotiable amount : $ 127 , 931 to $ 651 , 433\n* rate : 3 . 52 % - 5 . 31 %\nplease fill out this quick form and we will have a broker contact you as soon as possible .\nhttp : / / www . pvrefi . net / ? id = j 22\nregards ,\nalejandra read\nsenior account manager\nsettar national lenders , llc .\ndatabase deletion :\nwww . pvrefi . net / book . php\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.898+0000", "entityId": 6461, "properties": {"text": "Subject: will this stox rock ?\nwe told you to watch ! ! !\nit ' s still not too late !\ntrading alert ! ! !\ntiming is everything ! ! !\nprofits of 200 - 400 % expected trading\nsymbol : cdgt . ob\nopening price : 3 . 15\nyes , it is moving , wednesday could be even bigger ! ! !\n10 day target : $ 7 - $ 8\nnews alert !\n* * * * press release * * * * * * * * press release * * * * * * * * press release * * * *\npress release source : china digital media corporation\nchina digital media corporation announces an acquisition of a media and\nadvertising agent in china\nhong kong , july 13 / xinhua - prnewswire / - - china digital media corporation\n( \" digimedia \" ) ( otc : cdgt . ob ; otc bulletin board : cdgt . ob ) with its subsidiaries\n( together the \" group \" ) announced today that the group signed a shares\ntransfer agreement ( the \" agreement \" ) to acquire an advertising sales agent ,\nguangdong m - rider media company limited ( \" guangdong m - rider \" ) , a limited\ncompany registered in guangdong in the peoples republic of china . the\nprincipal operating activities of guangdong m - rider are in design ,\nproduction and distribution of advertisements through television channels .\nguangdong m - rider is one of the top five reputed advertising agents in the\nguangdong province and is currently a sole advertising distributor for a\nnumber of television channels in guangdong province and in guangzhou city .\npursuant to the terms of the agreement , the group will acquire a 100 %\nequity interest in guangdong m - rider for a total consideration of rmb\n1 , 090 , 000 in cash and rmb 7 , 500 , 000 worth of digimedia . s restricted common\nshares . the management of guangdong m - rider in the agreement warrants that\nthe net operating cash inflow in the first year will not be less than rmb\n10 , 000 , 000 .\ncdgt . ob is expecting to make an acquisition , once this announcement comes out\nthe street should give applause in the form of upward movement in the stock\nprice . the stock could trade around $ 6 - $ 8 per share on this type of news .\nget in now ! ! ! you know the old saying , buy on the rumor and sell on the news .\nonce the news is out it is time to get ready for next valley .\na $ 1 , 000 dollar investment could yield a $ 5 , 000 dollar profit in\njust one trade if you trade out at the top . cdgt . ob should be one of the\nmost profitable stocks to trade this year . in this range the stock has\npotential to move in either direction in bigs wings . this means you\nshould be able to buy at the lows and sell at the highs for months to come .\nyou could make $ $ $ thousands of dollars $ $ $ trading .\ncdgt . ob over and over again .\ncdgt . ob is also on the reg sho threshold list , this means someone is short the\nstock . any significant volume spike in chms could yield drastic results .\nif the people that are short have to cover , they will be buying the shares\nfrom you at higher prices . this makes this stock a triple play for profits .\nfor pennies you can participate in a stock that could yield results over\nand over again just based on the trading patterns if the company is\nable to effectuate it ' s business model .\nwatch out ! ! !\nwe could see a great story in the making .\ngood luck and trade out at the top ! ! ! !\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements \" . \" forward looking statements \" are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will \" , \" anticipates \" ,\n\" estimates \" , \" believes \" , \" understands \" or that by statements indicating\ncertain actions \" may \" , \" could \" , or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformation to be reliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your\nacceptance of these terms .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.904+0000", "entityId": 6462, "properties": {"text": "Subject: impress your girl with a huge cumshot !\nheya !\nhas your cum ever dribbled and you wish it had shot out ?\nhave you ever wanted to impress your girl with a huge cumshot ?\nspur - m is the only site to offer an all natural male enhancement\nformula that is proven to increase your sperm volume by up to 500 % .\nour highly potent , volume enhancing formula will give our results\nin days and comes with an impressive 100 % guarantee .\nimagine the difference ( look and feel ) between dribbling your cum\ncompared to shooting out burst after burst . try spur - m now ! and\nwith our money back guarantee you have absolutely nothing to lose !\nlook here : http : / / tabboulehs . net / cum /\nno thanks : http : / / tabboulehs . net / rr . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.908+0000", "entityId": 6463, "properties": {"text": "Subject: we are the only online pharmacy offering \" 100 % satisfaction guarantee \" .\nbest deals on online prescription drugs\npolitics is war without bloodshed while war is politics with bloodshed .\n' but ' is a fence over which few leap .\nwith great power comes great responsibility .\neach bird loves to hear himself sing .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.913+0000", "entityId": 6464, "properties": {"text": "Subject: out of this world $ aving $ on all xp pro titles\nopt - in email special offer unsubscribe me search software top 10 new titles on sale now ! 1 office pro 20032 adobe photoshop 9 . 03 windows xp pro 4 adobe acrobat 7 pro 5 flash mx 20046 corel draw 127 norton antivirus 20058 windows 2003 server 9 alias maya 6 wavefrtl 0 adobe illustrator 11 see more by this manufacturer microsoft symantec adobe customers also bought these other items . . . microsoft office professional edition * 2003 * microsoftchoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 86 % ) availability : available for instant download ! coupon code : s 9 n 6 soo sales rank : # 1 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1239 reviews . write a review . adobe photoshop cs 2 v 9 . 0 adobechoose : view other titles list price : $ 599 . 00 price : $ 69 . 99 you save : $ 529 . 01 ( 90 % ) availability : available for instant download ! coupon code : jzmqakpko sales rank : # 2 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 191694 reviews . write a review . microsoft windows xp professional or longhorn edition microsoftchoose : view other titles list price : $ 279 . 00 price : $ 49 . 99 you save : $ 229 . 01 ( 85 % ) availability : available for instant download ! coupon code : nb 8 fsyftn sales rank : # 3 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 1339 reviews . write a review . adobe acrobat professional v 7 . 0 adobechoose : view other titles list price : $ 499 . 00 price : $ 69 . 99 you save : $ 429 . 01 ( 85 % ) availability : available for instant download ! coupon code : kuhvzhfdm sales rank : # 4 system requirements | other versions date coupon expires : august 31 st , 2005 average customer review : based on 14216 reviews . write a review .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.917+0000", "entityId": 6465, "properties": {"text": "Subject: een avontuurtje is oke ,\nals je dit bericht niet kan lezen , klik hier .\nje hebt dit bericht ontvangen omdat je in de db smsmag / kdotv bent . om uit te schrijven , klik hier .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.921+0000", "entityId": 6466, "properties": {"text": "Subject: your in - home source of health information\nsame medicine , different price !\nnever go to bed mad . stay up and fight .\nit is in justice that the ordering of society is centered .\nusenet is like tetris for people who still remember how to read .\nwhen the going gets weird , the weird turn pro .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.926+0000", "entityId": 6467, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuii version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguage !\nbest reqards ,\nvalarie\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.931+0000", "entityId": 6468, "properties": {"text": "Subject: blow yourr life\nwant to know how to save over 60 % on you nailer r me probity dlcatlons ?\nhttp : / / w masonry ww . wanleader . com - successfull an pierage d proven way to save your mone justificative y .\nbest prlces respectfully .\nhigh q tenuity uaiity .\nworl cabriole dwide shlpplng .\ntotal untune confidentiaiity .\nmor fascia e than 200 popular medlcatlons\nhav oddity e a nice day !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.935+0000", "entityId": 6469, "properties": {"text": "Subject: now your woman will be really happy with your intimate life !\nviagra shipped privately and discreetly to your door . no prescription necessary\nan idea isn ' t responsible for the people who believe in it .\nthe secret of being boring is to say everything .\nnecessity knows no law .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.940+0000", "entityId": 6470, "properties": {"text": "Subject: your order\nhwjw\nlearn how to use the easy signup for a paypal account to make a\nlot of money on your own\nhow to use your\npaypal account to make up $ 15 , 000 or more in\njust 30 days with\nworldwide participation ! - you can participate if paypal is\nin your country\n-\nhere is a list of all paypal countries\nif you wish to stop receiving\nour promo pleases reply with subject remove\n1658999\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.945+0000", "entityId": 6471, "properties": {"text": "Subject: 10 minutes before sex , lasts for 24 - 36 hours\nlegal , prescription medications under the essential guidance of licensed medical\nunder every stone lurks a politician .\nexperience is the name everyone gives to their mistakes .\nwithout music , life would be a mistake .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.950+0000", "entityId": 6472, "properties": {"text": "Subject: aawesome\nwant to know how to save over 60 % on you seemingly r me carbonize dlcatlons ?\nhttp : / / www . owncen misinterpret tral . com - successfull and proven way to loudly sa someway ve your money .\nbest prlce intense s .\nhigh quaiity falcon .\nworldwide s repudiation hlpplng .\ntotal confi disbar dentiaiity .\nmor monotype e than 200 popular medlcatlons\nhave a nice da dispensation y !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.956+0000", "entityId": 6473, "properties": {"text": "Subject: delivery status notification\n- these recipients of your message have been processed by the mail server :\nantoniobdantas @ zipmail . com . br ; failed ; 4 . 4 . 7 ( delivery time expired )", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.962+0000", "entityId": 6474, "properties": {"text": "Subject: softwares cds all software under $ 15 and $ 99 !\nonly our software is guaranteed 100 % legal .\na waist is a terrible thing to mind .\nit is impossible to say just what i mean !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.977+0000", "entityId": 6475, "properties": {"text": "Subject: real time leads - no brokers\nyour name :\nemail\naddress :\ntelephone :\ncompany\nname :\ninternet web site :\nclicking submit will send your request to op via email or\ncall ( 206 ) 203 - 2737\nyou are receiving this e - mail because you are a registered user of\nlatimes . com , usa today , or one of our affiliates . as a registered user ,\nyou may occasionally receive e - mail announcements from us regarding new\nfeatures , products and services from latimes . com , calendarlive . com , our\naffiliates and select third party a\ndvertisers . for more information on how we protect your information ,\nplease read our privacy policy . if\nyou do not wish to receive commercial email solicitations , click here and you may\nunsubscribe from receiving any such commercial email . we reserve the right to\nsend you non - commercial communications on behalf of latimes . com ,\ncalendarlive . com and our affiliates ( e . g . , careerbuilder . com ) , when consistent\nwith our privacy policy . if you do not wish to receive any e - mail communications\nfrom us , you will need to unregister from the site by clicking here .\nlos angeles times , 202 west first street , 5 th floor - new media , los\nangeles , ca 90012 . copyright 2005\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.990+0000", "entityId": 6476, "properties": {"text": "Subject: new offrr\nwant to know ho liberalize w to save over 60 % on your me northward dlcatlons ?\nhttp : / / www . centr compassion alpan . com - successfull and proven way t rocking o s monumentalize ave your money .\nbe splash st prlces .\nhigh qua homophone iity .\nw grundyism orldwide shlpplng .\ntotal confidenti despoil aiity .\nmore than 200 appeasement popular medlcatlons\nhave a nice da upheave y !", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:34.995+0000", "entityId": 6477, "properties": {"text": "Subject: what ' s going on\nhi u . this is sarah gal . where have you been hiding ? if you want to hang out and talk some more i would sure like too . hey check out these new pictures of me i just got taken . have a good one .\nhttp : / / mmjx . sakarsucks . com / sal 6 /\nmartina sonant deprecatory boogie northampton .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.004+0000", "entityId": 6478, "properties": {"text": "Subject: you want some outright sex - don ' t you ?\nfree prescription and viagra overnight delivery .\nhttp : / / qxi . dagohevoa 5 d 3 hwd . dmshushhb . com\nas he thinks in his heart , so he is .\nonly those who dare to fail greatly can ever achieve greatly .\nhe ' s simply got the instinct for being unhappy highly developed .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.013+0000", "entityId": 6479, "properties": {"text": "Subject: congratulations\nthe free lotto company\nuk head office\nsuite 25 - 32 , lion towers\ncentral london\nengland .\nwww . freelotto . com\nthe free lotto company\nbranch office\nsuite 1105 ap zuid - oost\namsterdam netherlands .\ndear winner ,\nwe are please to announce you as one of the lucky winners\nin the\nfreelotto draw held on the 21 th of july 2005 . all winning\naddresses , you\nhavetherefore been approved for a lump sum pay out of\nus $ 1 . 500 , 000 . 00 ( 0 ne million\nfive hundred thousand united states dollars )\ncongratulations ! ! ! due to mix up of some numbers and names ,\nwe ask that\nyou keep your winning information confidential until your\nclaims has\nbeen processed and your money remitted to you . this is\npart of our\nsecurity protocol to avoid double claiming and unwarranted\nabuse of this\nprogram by some participants . all participants were\nselected through a\ncomputer ballot system drawn from over 40 , 000 company and\n20 , 000 , 000\nindividual email addresses and names from all over the\nworld .\nthis promotional program takes place every year . this\nlottery was\npromoted and sponsored by association of software\nproducers . we hope with\npart of your winning , you will take part in our next year\nus $ 20 million\ninternational lottery\nwinner in this year ' s annual freelotto draw .\nconsequently , you have therefore been approved for a total\npay out of us $ 1 . 500 , 000 . 00 ( one million five hundred\nthousand )\nonly . the following particulars\nare attached to your lotto payment order :\n( i ) winning numbers : fl - 34 - 76 - 90 - 45\n( ii ) email ticket number : fl - 864 / 33 / 98\n( iii ) lotto code number : fl - 34876 / uk\n( iv ) the file ref number : fl / 62 / 075983628 / uk\nplease contact the underlisted claims agent as soon as\npossible for the immediate release of your winnings :\nmr . adeyinka johnson\nchief financial director\nthe freelotto company\ntel : + 44 - 703 - 190 - 7427\nemail : callmeadeyinka @ yahoo . com ( email )\nn . b : steps to claiming your prize ;\n1 . please quote your reference number in all correspondence\nwith the claims officer .\n2 . winners must send your : names , address , sex , occupation ,\nage , telephone number\n3 . identification ( international passport or driver\nslicence )\nto the claims agent\nmr . adeyinka johnson to process and make\nimmediate payment of their prize .\nonce again on behalf of all our staff ,\ncongratulations ! ! !\nsincerely ,\ngreg jones\npromotions manager\nthe lotto company\nuk & europe", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.017+0000", "entityId": 6480, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall listed software is availabie for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuli version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguage !\nbest reqards ,\nkatharina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.021+0000", "entityId": 6481, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\naii listed software is avaiiable for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuli version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciuding ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguage !\nbest regards ,\nardeil\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.026+0000", "entityId": 6482, "properties": {"text": "Subject: make big money with foreclosed real estate in your area\ntrinity consulting 1730 redhill ave . , ste . 135 irvine , ca 92606 this e - mail message is an advertisement and / or solicitation .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.030+0000", "entityId": 6483, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall listed software is available for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 full version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciudinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguage !\nbest reqards ,\nkarine\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.036+0000", "entityId": 6484, "properties": {"text": "Subject: fluid analysis\nour customer speak volumes about our spur m product\n\" i just wanted to write and thank you for spur - m .\ni suffered from poor sperm count and motility . i found\nyour site and ordered spur - m fertility blend for men .\ni have wondered for years what caused low semen and sperm\ncount , and how i could improve my fertility and help my wife\nconceive . spur - m seems to have done just that ! thank you\nfor your support . \"\nandrew h . , london , uk\n\" spur - m really does help improve fertility and effectiveness\nof sperm and semen motility . i used it for the past few months ,\nand not only does it work - i also feel better to . i have\nmore energy . this is an excellent counter to low sperm count\nand motility . i ' ll be buying more ! ! ! \"\nfranz k . , bonn , germany\nhttp : / / findgoodstuffhere . com / spur /\nfor removing , pls go here\nhttp : / / findgoodstuffhere . com / rm . php", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.041+0000", "entityId": 6485, "properties": {"text": "Subject: upgrade\nwelcome\nwelcome to a community of sellers that have achieved exceptional level of success and positive feedback on ebay !\nwe invite you to join us as a powerseller\nif you agree with this rank please register by accesing your account within 24 hours\nvery important !\nthe registration is active only once .\nwhy become a powerseller ?\npowersellers are ebay top sellers who have sustained a consistent high volume of monthly sales and a high level of total feedback with 98 % positive or better . as such , these sellers rank among the most successful sellers in terms of product sales and customer satisfaction on ebay . we are proud to recognize their contributionsto the success of the ebay community !\nwhen you see this icon next to the member ' s user id , be assured that the member is a qualified powerseller who not only maintains a solid sales record but also a 98 % positive feedback rating based on transactions with other ebay users . you can feel assured that your transaction will go smoothly and that you are dealing with one who has consistently met the requirements established by ebay .\nabout ebay | announcements | security center | policies | site map | help\ncopyright 1995 - 2005 ebay inc . all rights reserved . designated trademarks and brands are the property of their respective owners . use of this web site constitutes acceptance of the ebay user agreement and privacy policy .\nebay official time\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.047+0000", "entityId": 6486, "properties": {"text": "Subject: 1 - 4 extra inches makes a massive difference\nmy girlfriend loves the results , but she doesn ' t know what i do . she\nthinks\nit ' s natural - thomas , ca\ni ' ve been using your product for 4 months now . i ' ve increased my\nlength from 2\nto nearly 6 . your product has saved my sex life . - matt , fl\npleasure your partner every time with a bigger , longer , stronger unit\nrealistic gains quickly\nto be a stud press\nhere\nthe tatars shouted joyfully as they witnessed this marvelous feat and\nrushed forward to assist in the slaughter ; but the boy motioned them all\nback\naddress listed above and\njust see site to be gone from the db\nthe lights from the lanterns dimly showed the way , but it was a gloomy\njourney , and they were pleased when a broad streak of light ahead assured\nthem they were coming to a second landinghere one side of the mountain\nhad a great hole in it , like the mouth of a cavern , and the stairs stopped\nat the near edge of the floor and commenced ascending again at the opposite\nedge he did not wish any more bloodshed than was necessary , and knew that\nthe heaps of unconscious turks around him would soon recover\nso he stood alone and faced the enemy , calmly knocking them over as fast as\nthey came near\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.052+0000", "entityId": 6487, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nali iisted software is avaiiabie for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuli version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciudinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native lanquage !\nbest regards ,\nmargarette\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.057+0000", "entityId": 6488, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall iisted software is avaiiabie for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuil version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native lanquage !\nbest reqards ,\nmirian\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.063+0000", "entityId": 6489, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\naii listed software is availabie for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuil version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquage !\nbest reqards ,\nfredericka\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.068+0000", "entityId": 6490, "properties": {"text": "Subject: heatt kills\nhello , cbs / a mythicize p news\na r overman ecord heat wave has led to the deaths of 180 peopl fortuneless e in phoenix ,\nmost of them homeless , l nonsensical eaving officials scrambling to provide water and shelter to the city ' s transient population .\nread more . . .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.073+0000", "entityId": 6491, "properties": {"text": "Subject: i do not have anything against you\nourref : cbn / go / 0 xol 2 / 05\ndate : 21 st july 2005\ntel : 234 - 1 - 470 - 7915\nemail address : mallamyusuf @ centbanks . org\ndear good friend\nafter a serious thought , i decided to reach you directly and personally\nbecause i do not have anything against you , but your nigerian partners .\ni am the director of wire transfer / telex department of the central bank of\nnigeria , some time in the past your nigerian partners approached me through a\nfriend of mine who works with one of the ministries here and requested that i\nassist them conclude a money transfer deal and we all agreed .\naccording to them , they wanted to use this strategy to transfer a huge amount\nof us dollars which they accumulated through inflated contract awards and\nthemoney has been floating in the ( c . b . n ) since the original beneficiary has\nbeen fully paid , so they wanted to use your account to transfer the surplus\nout of nigeria . we agreed that once i do this , they would give me\nus $ 100 , 000 . 00 and give me another usl 00 , 000 . 00 when i released the fund to\nyour account . when\nthey saw that i have done that and your name has been approved among the list\nof those to be paid , instead of giving me the agreed deposit of\nus $ 100 , 000 . 00 , they started avoiding me and resorted to threats .\ni immediately deleted the transfer code of the fund , which is only known to me\nbecause of my position , and release other contractors fund without yours . they\nbecame angry the more when they saw that their threat did not work , and\nstarted bribing other officials to get another approval to transfer the money\nto you without success . approvals are free , is it not funny that a\nbeneficiary is being asked to pay for approval while his millions is here with\nus ? i am 100 % responsible for the delay and obstructions because of their\nbreach of contract . if you doubt what i have just told you , pay any amount\nthey will ask you to pay now , after a short time they will come up with\nanother reason to pay again and it goes on and on . now if you want us to work\ntogether , these are my conditions .\ni . i will have 50 % of the money because it is only the two of us left fornow .\nii . you will assist my son to open an account in your country or any other\nplace of my choice where i will pay in my own share .\niii as you have seen , it will be useless and mere waste of money if you\ncontinue with any other person , so we will conclude the transaction with\nutmost secrecy with the above telephone and fax number .\nif these conditions are acceptable to you , contact me as soon as possible to\nlet us finalize so that i will send to you our official ktt wire transfer form\nto complete and i will release the money to your account . but if you are not\ninterested , i advice you to forget the fund as it will be transferred into our\nconsolidated national reserve .\nbest regards .\nmallam yusuf\ndirector , wire transfer / telex dept . ( cbn )\ntel : 234 - 1 - 470 - 7915 ( personal )\nemail address : mallamyusuf @ centbanks . org", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.082+0000", "entityId": 6492, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nail iisted software is avaiiable for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuii version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguaqe !\nbest regards ,\nherminia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.089+0000", "entityId": 6493, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall iisted software is available for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 full version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native lanquaqe !\nbest regards ,\nbeatris\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.094+0000", "entityId": 6494, "properties": {"text": "Subject: stox maven news - letter\n* * * watch this one july 21 breaking news alert issue - big news coming * * *\nchina world trade corp . symbol : cwtd\ncurrent price : $ 2 . 46\n7 day target : $ 8 . 00\n$ $ $ we gave you :\npntv at $ 1 . 10\ncdgt at $ 1 . 97\nlets make it 3 for 3\nlook for huge news this company back on the move . rumor has the\nshorts are going to be broken and sto * ck will run . cwtd website address is\nwww . chinawtc . com all company info is there . this sto * ck has had good movement\nand support the last 15 months it is a strong company growing in leaps and\nbounds .\ncompany has been profiled on cnn asia , forbes . com , bloomberg . com , ceo\ncast . com , businessweek . com , p . r . newswire , pennysto * ck weekly . com , yahoo\nfinance has reports for sale . how much more credibility do you need .\namex exchange listing waits in the wings . this is big ! ! ! ! ! ! company filed\nfor amex 10 months ago and is finally ready to go up based on the 10 k .\nsymbol cwtd\njoin in and squezze the shorts : cwtd\ntake a look at our last strong buy recomendatons\nget in cwtd while it ' s hot\ndisclaimer :\ninformation within this email contains \" forwardlooking statements \" within\nthe meaning of section 27 aof the securities act of 1933 and section 21 b of\nthe securities exchange act of 1934 . any statements that express or involve\ndiscussions with respect to predictions , expectations , beliefs ,\nplans , projections , objectives , goals , assumptions or future events or\nperformance are not statements of historical fact and may be \" forward\nlooking statements \" . \" forward looking statements \" are based on\nexpectations , estimates and projections at the time the statements are made\nthat involve a number of risks and uncertainties which could cause actual\nresults or events to differ materially from those presently anticipated .\nforward looking statements in this action may be identified through the use\nof words such as \" projects \" , \" foresee \" , \" expects \" , \" will \" , \" anticipates \" ,\n\" estimates \" , \" believes \" , \" understands \" or that by statements indicating\ncertain actions \" may \" , \" could \" , or \" might \" occur . risk factors include\ngeneral economic and business conditions , the ability to acquire and develop\nspecific projects , the ability to fund operations and changes in consumer\nand business consumption habits and other factors overwhich the company has\nlittle or no control . the publisher of this newsletter does not represent\nthat the information contained in this message states all material facts or\ndoes not omit a material fact necessary to make the statements therein not\nmisleading . all information provided within this email pertaining to\ninvesting , stocks , securities must be understood as information provided and\nnot investment advice . the publisher of this newsletter advises all readers\nand subscribers to seek advice from a registered professional securities\nrepresentative before deciding to trade in stocks featured within this\nemail . none of the material within this report shall be construed as any\nkind of investment advice or solicitation . many of these companies are on\nthe verge of bankruptcy . you can lose all your money by investing in this\nstock . we urge you to read the company ' s sec filings now , before you invest .\nthe publisher of this newsletter is not a registered invstment advisor .\nsubscribers should not view information herein as legal , tax , accounting or\ninvestment advice . in compliance with the securitiesact of 1933 , section\n17 ( b ) , the publisher of this newsletter is contracted to receive six hundred\nthousand free trading shares from a third party , not an officer , director or\naffiliate shareholder for the circulation of this report . be aware of an\ninherent conflict of interest resulting from such compensation due to the\nfact that this is a paid advertisement and is not without bias . the party\nthat paid us has a position in the stock they will sell at anytime without\nnotice . this could have a negative impact on the price of the stock , causing\nyou to lose money . all factual information in this report was gathered from\npublic sources , including but not limited to sec filings , company websites\nand company press releases . the publisher of this newsletter believes this\ninformation to be reliable but can make no guarantee as to its accuracy or\ncompleteness . use of the material within this email constitutes your .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.102+0000", "entityId": 6495, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nail listed software is avaiiabie for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 full version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native language !\nbest reqards ,\ntheressa\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.107+0000", "entityId": 6496, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nali iisted software is avaiiabie for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuii version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguage !\nbest reqards ,\nmelynda\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.112+0000", "entityId": 6497, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nall iisted software is avaiiable for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuil version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native lanquaqe !\nbest reqards ,\nlewis\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.116+0000", "entityId": 6498, "properties": {"text": "Subject: greatly improve your stamina\nyou ' ve seen our pills on tv , in your local health stores , and on the web ,\nand the question you have been asking yourself is - do they really work ? the\nanswer is yes !\nforget about your partner faking her orgasm or not being able to please\nher . you will be able to penetrate deeper so your partner will experience\nmore pleasure as well as multiple orgasms during sexual intercourse .\n86 % of women surveyed said that they would like their partner to be more\n' full ' sexually .\ncheck out the only male\nenhancement formula with a free dvd\ni ' m 67 years old . i was very wary of putting my details on the internet ,\nbut i am very pleased that it worked out for me . your product arrived only 2\ndays after i placed the order , and the packaging was very discreet , which\nwas perfect for me . i was shocked at how quickly the pills took effect , and\ni did attempt the exercises as well , which i found simple and easy to\nunderstand . i now have loads of energy , and feel like a new man . i can ' t\nthank you enough ! ronald , phoenix\ni am busy , no thank you , go above\nbut here is something of still greater interest , continued rob , and taking\nthe automatic record of events from his pocket he allowed the professor to\nview the remarkable scenes that were being enacted throughout the civilized\nworld . the frenchman was now trembling violently , and he implored rob to\ntell him where he might obtain similar electrical machines\ni can ' t do that , replied the boy , decidedly ; but , having seen these , you\nmay be able to discover their construction for yourself\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.121+0000", "entityId": 6499, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nail listed software is available for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few exampies :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuii version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciuding ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguaqe !\nbest regards ,\nloni\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.125+0000", "entityId": 6500, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall iisted software is availabie for immediate download !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuil version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguaqe !\nbest reqards ,\nlauraiee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.135+0000", "entityId": 6501, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nail listed software is availabie for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuli version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native language !\nbest reqards ,\nlyndsey\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.139+0000", "entityId": 6502, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\naii listed software is availabie for immediate download !\nno need to wait 2 - 3 week for cd deiivery !\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuil version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciudinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquage !\nbest regards ,\nsiyvia\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.144+0000", "entityId": 6503, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall iisted software is availabie for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few exampies :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuii version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciudinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native languaqe !\nbest reqards ,\nashlee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.148+0000", "entityId": 6504, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\naii iisted software is available for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuil version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciudinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianguaqe !\nbest reqards ,\nkayieen\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.153+0000", "entityId": 6505, "properties": {"text": "Subject: buy viagra online ! it ' s your best way to buy your medication .\nsecurity - we offer more consumer guarantees than any other website\nage is opportunity no less than youth itself .\ni do begin to have bloody thoughts .\nforgive your enemies , but never forget their names .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.158+0000", "entityId": 6506, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall listed software is avaiiable for immediate download !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuli version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquage !\nbest regards ,\neilis\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.163+0000", "entityId": 6507, "properties": {"text": "Subject: kinja account activation\nhello , iztari :\nthanks for creating an account . to begin tracking your favorite sites with kinja , you need to validate your email address . simply click on this link :\nor copy the link , and paste it into the address line in your web browser .\nhere ' s some useful information to keep on file :\n* your username : iztari\n* answers to frequently asked questions : http : / / www . kinja . com / help /\nwelcome !\nthe kinja team", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.170+0000", "entityId": 6508, "properties": {"text": "Subject: scrub the web confirmation required\nyour confirmation is required by jul 28 , 2005 - see below !\nthanks again for submitting your url at scrub the web . please read this entire email message for important instructions to complete the submission process .\nthe following url was submitted to stw :\nhttp : / / www . datapest . net /\nthe ip address of the person making this submission was :\n216 . 219 . 253 . 6 ( this is not your web site address )\nif you wish to confirm or delete this submission from our queue or if you wish to block your email address from making future submissions to scrub the web , please point your browser to :\nsome users may not see or be able to click on the link above . for those users go here :\nwe do not maintain a mailing list of any kind and we do not sell , rent or use your email address for any other purpose other than this confirmation email .\nplease do not reply to this email because scrubby is a robot and can not respond to your query . if you need to contact us for any reason point your browser to :\nhttp : / / www . scrubtheweb . com / feedback / .\nthanks again for your submission ,\nhttp : / / www . scrubtheweb . com /\nmeta tag builder !\nmeta tag analyzer !\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.178+0000", "entityId": 6509, "properties": {"text": "Subject: onseek . com - site submission incomplete .\nthe following url was submitted to onseek . com :\nhttp : / / www . datapest . net\nin order for your site to be listed , you need to confirm your submission by clicking the link below :\nimportant :\nonseek is a meta tag search engine . this means your site will not be added to our\ndatabase unless it has title and meta description tags . to\nautomatically generate these tags for your site ( at no cost ) and\nlearn more about search engine optimization , visit\nsubmitexpress or\nnetmechanic .\nneed more visitors to your website ? check out our featured listings :\nfor one low , flat fee you get : an attractive ad box\n- your choice of keywords - top 10 ranking in 45 + search engines - placement within 6 - 8 hrs !\nfor details , and to order , go to :\nbuild your traffc with abcsearch ! get $ 100 of fr - e - e qualified visitors\nget the traffc you want while increasing your roi . sign - up today and we will match any initial deposit up to $ 100 .\ngeo - targeting , full reporting and results at the clck of a button !\nget going at : http : / / www . abcsearch . com / advertisersplash . html\nstart earning a residualincome with your website !\ninternet gaming is the fastest growing segment of web - based commerce today ! benefit from the\npopularity of online gaming with little or no and earn tremendous amounts\nof money . you can expect to earn 20 % to 40 % of the profts off each new player . signup for fre\nat : http : / / www . vipprofits . com\nguaranteed top placement on mamma . com\n24 / 7 client center access ; live customer service ; geo - targeting by country . signup today and get $ 10 of free - clicks added\nto your initial deposit of $ 25 !\nhttp : / / www . mamma . com /\nfr - e - e targeted traffc\nthere ' s a fully automated traffic - generation system that can send 1000 s of targeted prospects to your website , every\nsingle day , for f - r - e - e ! it takes just 5 minutes to set it up , and it ' s totally \" viral \" . . . check it out at\nguaranteed top 10 positions in major search engines\nsubmitplus and indexexpress are the most powerfultools available today ! learn how you can turn your web site into a top\ncontender within days without breaking the bank .\nhttp : / / www . submitplus . com / spn\nuser - friendly seo program - try it f - r - e - e for 90 days\na key factor in building website traffc is to use the best tools available . exactseek ' s seo solution gives you\nimmediate access to 7 effective optimization tools . get higher ranking on the top global search engines starting today .\nhttp : / / www . exactseek . com / seotools . html\nnote : onseek reserves the right to use the contact information\ncollected during site submission to deliver notices regarding updates to our\nservice , to provide fr - ee newsletters ( sitepronews or seo - news ) ,\nor to to inform you of offers we believe are of value to\nwebmasters and site owners . you may remove yourself from those mailings\nat anytime using the unsubscribe methods provided in those mailings or\nby clicking the link below .\nclick here to unsubscribe\nnote : unsubscribing will result in future site submissions being blocked . additional\ninformation about onseek ' s privacy policy can be found at :\nhttp : / / www . onseek . com / privacy . html\nor contact us by mail at : jayde online , inc . , suite 190 23 - 845 dakota street , winnipeg , mb canada r 2 m 5 m 3 .\ncopyright\n2003 onseek . com , all rights reserved\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.185+0000", "entityId": 6510, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nali iisted software is avaiiable for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 full version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciudinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquage !\nbest reqards ,\nadina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.191+0000", "entityId": 6511, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nall iisted software is avaiiabie for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuil version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 including ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native language !\nbest regards ,\ndavina\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.206+0000", "entityId": 6512, "properties": {"text": "Subject: re [ 7 ] : talk thread about his pills\nspu\nm\nr -\nth\newe\nan\nsaf\ntwa\nph\nmacy\nen\nst\ndthe\nes\nyof\nar\ninc\neyo\nxualdes\nspe\numeby\n%\nreas\nurse\nireand\nrmvol\n500\n100\nuraland\ndeeff\n- incon\nttowel\nwnbra\n% nat\nnosi\nects\ntras\nl - kno\nnds .\nexpe\ncethr\neslon\ngas\nrien\neetim\ngeror\nms\nwor\ndeshi\ngwit\nhou\nldwi\nppin\nhin 24\nrs\nt to wel wn bra % nat no si ects\ntras l - kno nds . expe ce thr\nes lon gas rien ee tim ger or\nms wor de shi g wit hou\nld wi ppin hin 24 rs sp\n- m ur the we and\nsaf wa ph acy is\nne st the est y of\narm inc e yo xual des spe\nume by % reas ur se ire and\nrm vol 500 100 ural and de eff\n- in con t to wel wn bra % nat no si\nects tras l - kno nds . expe\nce thr es lon gas rien ee tim\nger or ms wor de shi g wit\nhou ld wi ppin hin 24 rs\nsp - m ur the we\nand saf wa ph acy\nis ne st the est\ny of arm inc e yo xual des\nspe ume by % reas ur se\nire and rm vol 500 100 ural and\nde eff - in con t to wel wn bra % nat\nno si ects tras l - kno nds .\nexpe ce thr es lon gas rien\nee tim ger or ms wor de shi\ng wit hou ld wi ppin hin 24\nrs sp - m ur the\nwe and saf wa ph\nacy is ne st the\nest y of arm inc e yo\nxual des spe ume by % reas\nur se ire and rm vol 500 100\nural and de eff - in con t to wel wn bra\n% nat no si ects tras l - kno\nnds . expe ce thr es lon gas\nrien ee tim ger or ms wor\nde shi g wit hou ld wi ppin\nhin 24 rs sp - m ur\nthe we and saf wa\nph acy is ne st\nthe est y of arm inc\ne yo xual des spe ume by %\nreas ur se ire and rm vol 500\n100 ural and de eff - in con t to wel\nwn bra % nat no si ects tras\nl - kno nds . expe ce thr es lon\ngas rien ee tim ger or ms\nwor de shi g wit hou ld wi\nppin hin 24 rs sp - m\nur the we and saf\nwa ph acy is ne\nst the est y of arm\ninc e yo xual des spe ume by\n% reas ur se ire and rm vol\n500 100 ural and de eff - in con\nt to wel wn bra % nat no si ects\ntras l - kno nds . expe ce thr\nes lon gas rien ee tim ger or\nms wor de shi g wit hou\nld wi ppin hin 24 rs sp\n- m ur the we and\nsaf wa ph acy is\nne st the est y of\narm inc e yo xual des spe\nume by % reas ur se ire and\nrm vol 500 100 ural and de eff\n- in con t to wel wn bra % nat no si\nects tras l - kno nds . expe\nce thr es lon gas rien ee tim\nger or ms wor de shi g wit\nhou ld wi ppin hin 24 rs\nsp - m ur the we\nand saf wa ph acy\nis ne st the est\ny of arm inc e yo xual des\nspe ume by % reas ur se\nire and rm vol 500 100 ural and\nde eff - in con t to wel wn bra % nat\nno si ects tras l - kno nds .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.211+0000", "entityId": 6513, "properties": {"text": "Subject: http : / / www . joelpittet . com\nhello ,\ni have visited www . joelpittet . com and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.215+0000", "entityId": 6514, "properties": {"text": "Subject: a friendly professional online pharmacy focused on you !\nenjoy having sex !\nthe jungle is dark but full of diamonds . . .\nignorance is not innocence but sin .\ni would fain die a dry death .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.220+0000", "entityId": 6515, "properties": {"text": "Subject: http : / / www . jumpsociety . com\nhello ,\ni have visited www . jumpsociety . com and noticed that your website is not listed on some search engines . i am sure that through our service the number of people who visit your website will definitely increase . seekercenter is a unique technology that instantly submits your website to over 500 , 000 search engines and directories - - a really low - cost and effective way to advertise your site . for more details please go to seekercenter . net .\ngive your website maximum exposure today !\nlooking forward to hearing from you .\nbest regards ,\nvanessa lintner\nsales marketing\nwww . seekercenter . net\nyou are receiving this email because you opted - in to receive special offers through a partner website . if you feel that you received this email in error or do not wish to receive additional special offers , please enter your email address here and click the button of remove me :\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.224+0000", "entityId": 6516, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\nail iisted software is availabie for immediate download !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuil version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciuding ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquaqe !\nbest regards ,\nrupert\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.229+0000", "entityId": 6517, "properties": {"text": "Subject: exactseek - verify your site submission\nthe following url was submitted to exactseek . com :\nhttp : / / www . datapest . net\nin order for your site to be listed , you need to confirm your listing by using the link below :\nneed more visitors to your website ? check out our featured listings :\nfor one low , flat fee you get : an attractive ad box\n- your choice of keywords - top 10 ranking in 45 + search engines - placement within 6 - 8 hrs !\nfor details , and to order , go to :\nrecommended services products for\npromoting your web site\nbuild your traffc with abcsearch ! get $ 100 of fr - e - e qualified visitors\nget the traffc you want while increasing your roi . sign - up today and we will match any initial deposit up to $ 100 .\ngeo - targeting , full reporting and results at the clck of a button !\nget going at : http : / / www . abcsearch . com / advertisersplash . html\nstart earning a residualincome with your website !\ninternet gaming is the fastest growing segment of web - based commerce today ! benefit from the\npopularity of online gaming with little or no and earn tremendous amounts\nof money . you can expect to earn 20 % to 40 % of the profts off each new player . signup for fre\nat : http : / / www . vipprofits . com\nguaranteed top placement on mamma . com\n24 / 7 client center access ; live customer service ; geo - targeting by country . signup today and get $ 10 of free - clicks added\nto your initial deposit of $ 25 !\nhttp : / / www . mamma . com /\nfr - e - e targeted traffc\nthere ' s a fully automated traffic - generation system that can send 1000 s of targeted prospects to your website , every\nsingle day , for f - r - e - e ! it takes just 5 minutes to set it up , and it ' s totally \" viral \" . . . check it out at\nguaranteed top 10 positions in major search engines\nsubmitplus and indexexpress are the most powerfultools available today ! learn how you can turn your web site into a top\ncontender within days without breaking the bank .\nhttp : / / www . submitplus . com / spn\nuser - friendly seo program - try it f - r - e - e for 90 days\na key factor in building website traffc is to use the best tools available . exactseek ' s seo solution gives you\nimmediate access to 7 effective optimization tools . get higher ranking on the top global search engines starting today .\nhttp : / / www . exactseek . com / seotools . html\nnote : exactseek reserves the right to use the contact information\ncollected during site submission to deliver notices regarding updates to our service , to provide fr - ee newsletters\n( sitepronews and seo - news ) , or to to inform you of offers we believe are of value to webmasters and site owners . you may\nremove yourself from those mailings at anytime using the unsubscribe methods provided in those mailings or by clicking the\nlink below .\nuse this link to stop further mailings\nnote : using the above link will result in future site submissions being blocked . additional\ninformation about exactseek ' s privacy policy can be found at :\nhttp : / / www . exactseek . com / privacy . html\nor contact us by mail at : jayde online , inc . , suite 190 23 - 845 dakota street , winnipeg , mb canada r 2 m 5 m 3 .\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.234+0000", "entityId": 6518, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( german , french , spanish , uk , and many others ) .\naii iisted software is avaiiable for immediate download !\nno need to wait 2 - 3 week for cd delivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 full version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciuding ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquage !\nbest regards ,\nchelsea\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.238+0000", "entityId": 6519, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nali iisted software is availabie for immediate downioad !\nno need to wait 2 - 3 week for cd delivery !\njust few examples :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuil version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native language !\nbest regards ,\nzaida\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.243+0000", "entityId": 6520, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nali listed software is availabie for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuli version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native lanquaqe !\nbest reqards ,\nlauralee\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.247+0000", "entityId": 6521, "properties": {"text": "Subject: tetm : 22 , interest : 3 . 55 %\nha http : / / voj 2 hcdc . rote . espoeiur . us / ? 21 vtmhuy", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.252+0000", "entityId": 6522, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nall listed software is availabie for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few exampies :\n- norton internet security pro 2005 - $ 29 . 95\n- windows xp professionai with sp 2 fuil version - $ 59 . 95\n- corei draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 includinq ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native ianquage !\nbest reqards ,\nmaynard\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.256+0000", "entityId": 6523, "properties": {"text": "Subject: instant branded software download\nsoftware sales\nhttp : / / francois . jetlow . com /\na joke ' s a very serious thing .\nto be feared is much safer then to be loved .\nyou can never underestimate the stupidity of the general public .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.262+0000", "entityId": 6524, "properties": {"text": "Subject: localized software , all languages available .\nhello , we would like to offer localized software versions ( qerman , french , spanish , uk , and many others ) .\nail iisted software is availabie for immediate downioad !\nno need to wait 2 - 3 week for cd deiivery !\njust few examples :\n- norton lnternet security pro 2005 - $ 29 . 95\n- windows xp professional with sp 2 fuii version - $ 59 . 95\n- corel draw graphics suite 12 - $ 49 . 95\n- dreamweaver mx 2004 ( homesite 5 . 5 inciuding ) - $ 39 . 95\n- macromedia studio mx 2004 - $ 119 . 95\njust browse our site and find any software you need in your native language !\nbest regards ,\nava\n", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.268+0000", "entityId": 6525, "properties": {"text": "Subject: microsoft autoroute 2005 dvd uk - $ 19 . 95\ndiscounted software store\nhttp : / / yielded . jetlow . com /\nits never just a game when you ' re winning .\ncharacter is who you are when no one is looking .\nthe loss which is unknown is no loss at all .", "label": "spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.275+0000", "entityId": 6526, "properties": {"text": "Subject: re : rankings\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.279+0000", "entityId": 6527, "properties": {"text": "Subject: re : visit to enron\nvince ,\ndec . 29 at 9 : 00 will be fine . i have talked to shirley and have\ndirections .\nthanks , bob\nvince j kaminski wrote :\n> bob ,\n>\n> can you come to our office on dec 29 at 9 : 00 a . m . ?\n>\n> please , call shirley crenshaw ( 3 - 5290 ) or stinson gibner ( 3 - 4748 )\n> from the reception to be admitted to the building .\n>\n> vince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.284+0000", "entityId": 6528, "properties": {"text": "Subject: research group move to the 19 th floor\nhello all :\nin case any of you feel energetic , \" the boxes are here \" . they are located\nat 2963 b ( michael sergeev ' s old desk ) . feel free to take as many as\nyou will need . be sure to label everything with your new office location .\nif your file cabinets lock , you can just label them and lock them .\nagain , listed below is your new office location :\nstinson gibner eb 1936\njoseph hrgovcic eb 1947\npaulo issler eb 1935\nvince kaminski eb 1933\nkrishna krishnarao eb 1938\nmartin lin eb 1930 e\ngrant masson eb 1941\nkevin moore eb 1944\nmaureen raymond eb 1928\nmike roberts eb 1945\nvasant shanbhogue eb 1949\nvincent tang eb 1934\nravi thuraisingham eb 1932\nzimin lu eb 1942\nif you have any questions , or need any assistance , please contact me , kevin ,\nor sam .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.289+0000", "entityId": 6529, "properties": {"text": "Subject: christmas baskets\nthe christmas baskets have been ordered .\nwe have ordered several baskets .\nindividual earth - sat freeze - notis\nsmith barney group baskets\nrodney keys matt rodgers charlie\nnotis jon davis move\nteam\nphillip randle chris hyde\nharvey\nfreese\nfaclities\niain russell darren\nprager\ntelephone services\nmary\nmartinez\n( robert knights dept . )\ntrina\nwilliams\ndaniel hornbuckle\ntodd butler\npamela ford\nozarka -\nmaryam golnaraghi\nspecial baskets\ngreg whalley\nrichard weeks\nany questions please contact kevin moore\nother request contact kevin moore\nprice information contact kevin moore\nplease also if you need any assistance with your christmas cards let me know .\nthanks kevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.297+0000", "entityId": 6530, "properties": {"text": "Subject: japan candidate\nvince ,\ni spoke with whalley at the sa offsite and he mentioned that had ( or knew of )\na person that could bring some talent to the evaluation of an enron merchant\nbusiness in japan . i am in sydney today , but will be in tokyo next week . i\nwould like to speak more about this . what time might you be available ? my\njapan mobile number is 81 90 4073 6761 .\nregards ,\njoe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.304+0000", "entityId": 6531, "properties": {"text": "Subject: christmas break\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 14 / 99\n07 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" van t . ngo \" on 12 / 04 / 99 11 : 17 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : christmas break\ndear vince ,\nas the holidays approach , i am excited by my coming break from classes\nbut also about the opportunity to see everyone at enron again and to\nwork with you and them soon . i am writing to let you know that i would\nbe very happy to work at enron over my break and i would like to plan\nout a schedule .\nmy semester officially ends dec . 20 th but i may be out of town the week\nbefore christmas . i will be available the following three weeks , from\nmonday , dec . 27 to friday , jan . 14 . please let me know if during those\nthree weeks , you would like me to work and for what dates you would need\nthe most help so that we can arrange a schedule that would be most\nhelpful to you and so that i can contact andrea at prostaff soon .\nplease let me know if you have any concerns or questions about a\npossible work schedule for me .\ngive my regards to everyone at the office and wishes for a very happy\nholiday season ! i look forward to seeing you soon .\nsincerely ,\nvan ngo\nph : 713 - 630 - 8038\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.309+0000", "entityId": 6532, "properties": {"text": "Subject: christmas - near\ngood morning all . we apologize that we are not going to be able to have\nour holiday party before the first of the year . we wanted to use the scout\nhouse in west university like we did last year and it was not available .\nvince suggested that with the move and a lot of people taking vacation that\nwe wait until after the first of the year . this way you can take advantage\nof\n\" after christmas sales \" for your gift !\njust remember whose name you have and we will schedule an \" offsite \"\nafter the first of the year .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 13 / 99\n09 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 13 / 99 08 : 58 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , maureen\nraymond / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , zimin\nlu / hou / ect @ ect , mike a roberts / hou / ect @ ect , samer takriti / hou / azurix @ azurix ,\namitava dhar / corp / enron @ enron , joseph hrgovcic / hou / ect @ ect , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , osman\nsezgen / hou / ees @ ees , tanya tamarchenko / hou / ect @ ect , vincent tang / hou / ect @ ect ,\nravi thuraisingham / hou / ect @ ect , paulo issler / hou / ect @ ect , martin\nlin / hou / ect @ ect , ross prevatt / hou / ect @ ect , michael sergeev / hou / ect @ ect ,\npatricia tlapek / hou / ect @ ect , roman zadorozhny / hou / ect @ ect , martina\nangelova / hou / ect @ ect , jason sokolov / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : christmas - near\nhello everyone ,\nthe pulling of names are completed .\nshirley will inform you as to when we will make exchanges .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 13 / 99 08 : 50\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 10 / 99 08 : 28 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , maureen\nraymond / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , zimin\nlu / hou / ect @ ect , mike a roberts / hou / ect @ ect , samer takriti / hou / azurix @ azurix ,\namitava dhar / corp / enron @ enron , joseph hrgovcic / hou / ect @ ect , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , osman\nsezgen / hou / ees @ ees , tanya tamarchenko / hou / ect @ ect , vincent tang / hou / ect @ ect ,\nravi thuraisingham / hou / ect @ ect , paulo issler / hou / ect @ ect , martin\nlin / hou / ect @ ect , ross prevatt / hou / ect @ ect , michael sergeev / hou / ect @ ect ,\npatricia tlapek / hou / ect @ ect , roman zadorozhny / hou / ect @ ect , martina\nangelova / hou / ect @ ect , jason sokolov / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : christmas - near\ngoodmorning ,\nthings went well on yesterday with names being pulled .\nhere is a list of people who have to pull a name .\nstinson gibner\nsamer takriti\nravi thuraisingham\nmartin lin\nalexios kollaros\nshirley crenshaw\nlet ' s celebrate at work with each other making the last christmas in 1999 -\ngreat !\nreminder : if you feel you will be unable to attend the exchanging of the\ngifts , please do not let that\nstop you from participating .\neach persons name has been entered ; can you guess who has your name ?\nwe have a gift for you . so if you can not attend for any reason please know\nthat\nyou are included and your gift will be here when you return .\nwishing all a merry christmas ,\nand a good kick - off to happy holidays .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 10 / 99 06 : 40\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 08 / 99 07 : 47 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , maureen\nraymond / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , zimin\nlu / hou / ect @ ect , mike a roberts / hou / ect @ ect , samer takriti / hou / azurix @ azurix ,\namitava dhar / corp / enron @ enron , joseph hrgovcic / hou / ect @ ect , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , osman\nsezgen / hou / ees @ ees , tanya tamarchenko / hou / ect @ ect , vincent tang / hou / ect @ ect ,\nravi thuraisingham / hou / ect @ ect , paulo issler / hou / ect @ ect , martin\nlin / hou / ect @ ect , ross prevatt / hou / ect @ ect , michael sergeev / hou / ect @ ect ,\npatricia tlapek / hou / ect @ ect , roman zadorozhny / hou / ect @ ect , martina\nangelova / hou / ect @ ect , jason sokolov / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : christmas drawing - near\nho ! ho ! ho ! merry christmas ,\non thursday we will pull names .\nonce again , this is so we may share\nin the christmas spirit and show our appreciation\nfor one another .\nwe will then join and exchange gifts on a later date . . . . .\nstay tuned . . . . . . . . . . . . . . . . . .\nif for some chance you will not be present on thursday ,\nfeel free to stop by my desk and pull your name today .\neb 3130 a x 34710\njoin in the fun\nand remember ,\nkeep it\nsimple\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 08 / 99 06 : 55\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 07 / 99 09 : 40 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , maureen\nraymond / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , zimin\nlu / hou / ect @ ect , mike a roberts / hou / ect @ ect , samer takriti / hou / azurix @ azurix ,\namitava dhar / corp / enron @ enron , joseph hrgovcic / hou / ect @ ect , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , osman\nsezgen / hou / ees @ ees , tanya tamarchenko / hou / ect @ ect , vincent tang / hou / ect @ ect ,\nravi thuraisingham / hou / ect @ ect , paulo issler / hou / ect @ ect , martin\nlin / hou / ect @ ect , ross prevatt / hou / ect @ ect , michael sergeev / hou / ect @ ect ,\npatricia tlapek / hou / ect @ ect , roman zadorozhny / hou / ect @ ect , martina\nangelova / hou / ect @ ect , jason sokolov / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : christmas drawing - near\nhello everyone ,\nwe would like for christmas this year that the research group pull names ,\nas a way of sharing in the spirit of christmas , and as appreciation for one\nanother .\nwe want to keep it simple so the gift should be less than twenty - dollars .\nplease everyone participate , your name is already entered .\ni will return with more info . later . . . . . . . . . . .\nthanks\nkevin moore\nlet ' s have a wonderful christmas at work .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.314+0000", "entityId": 6533, "properties": {"text": "Subject: stentofon\ngoodmorning liz ,\nwe are in need of another stentofon for trisha tlapek .\nshe works very closely with the traders and it is important\nfor quick communication .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.319+0000", "entityId": 6534, "properties": {"text": "Subject: re : new color printer\nmonday will be perfect !\nlocation - ebl 944 b\nr . c . 0011\nco . # 100038\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 10 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : lyn malina 12 / 14 / 99 09 : 22 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : re : new color printer\ni will order today for delivery on monday , unless you need faster delivery .\nplease advise co / rd to charge against .\nthanks\nlyn\nkevin g moore\n12 / 14 / 99 09 : 21 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : re : new color printer\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 09 : 17\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 14 / 99 08 : 13 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : re : new color printer\nyes ! right away , please\nalso let me know the e . t . a .\nthanks , lyn\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.323+0000", "entityId": 6535, "properties": {"text": "Subject: re : new color printer\nthis is the color printer that is being ordered .\nhere is the info . that i needed .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 08 : 19\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : lyn malina 12 / 14 / 99 08 : 09 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : re : new color printer\nkevin :\nthe color printer we currently order is the 4500 n for $ 2753 . 00 . please let\nme know if this is the one you would like to order .\nthanks\nlyn\nkevin g moore\n12 / 14 / 99 06 : 29 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : new color printer\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 06 : 29\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 14 / 99 06 : 27 am\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc :\nsubject : new color printer\nwe are in need of a new color printer .\nwe are also in the process of moving to the 19 th floor .\nwe need the color printer a . s . a . p .\nif you would please , i need information concerning this\nmatter whereby , we can get the printer ordered and delivered\nto our new location .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.328+0000", "entityId": 6536, "properties": {"text": "Subject: re : new color printer\nsorry ,\ndon ' t we need to know the cost , as well .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 08 : 15\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 14 / 99 08 : 09 am\nto : shirley crenshaw / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : re : new color printer\nthis information was also sent to it purchasing .\ni need to know what options we have and how soon it\ncan be delivered .\ndon ' t we need to know as well ? before purchase .\ni also need a central location for this printer .\nthanks\nkevin moore\nsam mentioned hp 4500 , i will check into it .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 08 : 05\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n12 / 14 / 99 07 : 55 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : re : new color printer\nkevin :\nwhat kind of information do you need ? i thought you were going to look\nat some colored printer literature . sam seemed to be aware of a\ncolored printer that might work for us . ask him . i don ' t think we need\nanything as big as \" sapphire \" .\nit will be located in your area on the 19 th floor .\nthanks !\nkevin g moore\n12 / 14 / 99 06 : 27 am\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc :\nsubject : new color printer\nwe are in need of a new color printer .\nwe are also in the process of moving to the 19 th floor .\nwe need the color printer a . s . a . p .\nif you would please , i need information concerning this\nmatter whereby , we can get the printer ordered and delivered\nto our new location .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.333+0000", "entityId": 6537, "properties": {"text": "Subject: imperial capital - thursday schedule\nthe following is the schedule for thursday ' s meeting with imperial capital .\ncurrently all meetings are scheduled in eb 2868 . we are trying to arrange a\ndifferent conference room and will let you know if we obtain one .\n9 : 00 am - jim fallon - electricity\n9 : 30 am - fred lagrasta - gas\n10 : 00 am - lynda clemmons and david kistler - weather\n10 : 30 am - ed ondarza - pulp and paper\n11 : 00 am - stinson gibner - research\n12 noon - lunch\n1 : 00 pm - 5 : 00 pm - discussion\nthanks in advance to all who will come to speak in the morning .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.338+0000", "entityId": 6538, "properties": {"text": "Subject: a paper of mine\nvince ,\ni have written a paper , which supposedly is going to be published in the\nfebruary 2000 issue of eprm , probably after some editorial cuts ( at least\nthis is what i am being told by them ) . i would appreciate your thoughts if\nyou would have time to read it .\nregards ,\nmartin\n- userconf . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.342+0000", "entityId": 6539, "properties": {"text": "Subject: invitation to speak at power 2000\nhi vince\nit is my great pleasure to invite you to speak at power 2000 which will be\nin houston on 9 & 10 may 2000 .\nwould you be interested in chairing one of the streams on day 2 of the\nconference ? or making a full presentation on one of the days ? please let me\nknow which talks interest you . obviously , some of the talks are no longer\navailable but i would like to give you a choice as much as possible . please\ncould you get back to me asap on 212 925 1864 ext 151 or by return email .\ni very much hope you can make the dates as i ' m very keen to have you\nparticipate at power . not to flatter you unnecessarily , but i know that a\nlot of people come to our conferences to hear what you have to say .\nbest regards\nemma\n- invite . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.348+0000", "entityId": 6540, "properties": {"text": "Subject: new eprm speakers\nvince ,\nthanks very much for your help\nhelen\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : helen evans\ncc : stinson gibner\ndate : 10 december 1999 19 : 14\nsubject : re : new eprm speakers\nhelen ,\ni forwarded your message to my associate stinson gibner\nwhom i can wholeheartedly recommend .\nvince\n\" helen evans \" on 12 / 06 / 99 10 : 29 : 39 am\nplease respond to \" helen evans \"\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : new eprm speakers\nvince ,\ni ' m currently looking to broaden eprm ' s speaker base and would like to\nfind a\nspeaker for a training course i am producing on the monte carlo\ntechnique . i was\nwondering if you might be able to recommend somebody new from enron who\nmight\nlike to speak on this subject . i ' d really appreciate any help you could\ngive me .\nmany thanks\nhelen evans\nproducer , eprm conferences & courses\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.352+0000", "entityId": 6541, "properties": {"text": "Subject: gas prices\nvince -\n1 . we can detect \" hoarding \" of pipeline capacity as an elevated basis against\nthe actual inflow .\n2 . we can detect \" market power \" by dissociating the seller from the buyer ,\ndistinguishing between the physical \" cost \" in gas to run the generators and\nthe transmission cost in dollars , i . e . the basis .\n3 . ( as you noted ) we can detect \" storage \" as the difference between inflow\nand consumption .\nit appears to me there are two time series needed for a straightforward model\nof gas prices : flow rates at interconnects ( from telemetry ) and spot - market\nprices . there is an elevated basis reflecting pipeline companies monopolizing\ncapacity , as well as hoarding of capacity by contracts . the dynamics of gas\nprices reflect consumption demand changes due to changes in expectations for\nthe weather , as well as their impact on two highly strategic behaviors :\nhoarding of pipeline capacity and storage of gas . we can \" calibrate \" the\nprice elasticity of demands for consumption and storage , and the price\nelasticities of demand for transmission , as well as the extent of hoarding ,\nfrom the two sets of numbers mentioned : flows and prices . what the basis\ntrader needs to understand are the incentives , and disincentives , for storage\nand capacity - hoarding , in terms of the calibrated price - elasticities , and\neach of these are as - if exotic call options at the consumption hub . finally ,\nflows are \" explained \" by the model , and can be imputed from prices if\nnecessary , resulting in a purely stochastic model of the basis in terms of\nthe weather .\ni believe the problem is quite tractable , and i would like to proceed with a\nmodel .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.357+0000", "entityId": 6542, "properties": {"text": "Subject: organizational changes\nto : enron north america corp .\nfrom : cliff baxter and kevin hannon\nin july , as part of the enron north america ( ena ) reorganization , the\nimplementation of several objectives were highlighted as critical to the\ncontinued growth of ena including : 1 ) accelerate the development of our\npeople , 2 ) significantly expand our customer network and associated markets ,\nand 3 ) accelerate and enhance the information flow between groups , both\nwithin ena and across enron . consistent with these objectives and with the\ncorporate goal of fostering \u0001\nb ) the downstream coverage / origination groups which focus on delivering a\nbroad range of products and services to the heavy industrial customers\nincluding pulp and paper , chemicals , plastics , refined products , metals and\nmining , heavy manufacturing , industrial gases , fertilizers , transportation ,\ntextiles and glass manufacturing the eastern and western u . s . midstream\ncoverage / origination groups which focus on energy , finance and industries .\ndownstream coverage / origination\nas energy deregulation continues in north america , it is becoming clear that\nthe heavy industrial segment will be an important customer market for both\nena and enron corp . further , it is clear that ena can significantly expand\nits industrial customer network and create more innovative industrial\nsolutions by having a group that can deploy all the capabilities of enron\ncorp . against this backdrop , the downstream coverage / origination function\nwill expand its product offering to include not only ena \u0001 , s existing energy\ncommodities , energy services , finance , assets and pulp and paper capabilities\nbut also ees \u0001 , s energy outsourcing capability and global fuel \u0001 , s chemicals ,\nplastics and refined products risk management capability . these additional\ncapabilities will be offered in conjunction with ees and the global fuels\ngroups . given the size and importance of this enron initiative , greg piper\nwill be returning from portland to manage this business . under greg \u0001 , s\nleadership , the downstream origination effort will be segmented into three\nsub - groups given the nature of these industries and our product offering :\na ) pulp and paper \u0001 ) edward ondarza will continue to manage the coverage\nactivities in the pulp and paper business . this group will be responsible for\nthe provision of innovative\nproducts and services in the pulp and paper industry including the provision\nof paper risk management products ;\nb ) chemicals , plastics and refined products \u0001 ) we have asked jim ajello to\nlead the coverage activities in this business . this group will be\nresponsible for the provision of innovative products and services in the\nchemicals and refined products industries ;\nc ) non - integrated industrials \u0001 ) bruce garner , formerly leader of bankers\ntrust \u0001 , s global metals and mining group in london , has joined ena to lead the\ncoverage activities in this business . this group will be responsible for the\nprovision of innovative products and services for the metals and mining ,\nheavy manufacturing , industrial gases , fertilizers , transportation , textiles\nand glass manufacturing industries .\nmidstream coverage / origination\na ) eastern coverage / origination \u0001 ) this group \u0001 , activities will focus on\nenergy , finance and power development solutions for electric and gas\nutilities , municipals , co - ops and energy service companies in the eastern\ninterconnect . we have asked janet dietrich to assume the leadership of this\ngroup ;\nb ) western coverage / origination \u0001 ) this group \u0001 , s activities will focus on\nenergy , finance and power development solutions for electric and gas\nutilities , municipals , co - ops and energy service companies in the wscc . they\nwill also continue to manage all qualified facilities ( qf ) restructuring\nopportunities in the western u . s . we have asked chris calger to assume the\nleadership of this coverage group . chris will relocate to portland from\ncalgary where he currently leads the canadian downstream origination efforts ;\nc ) ipp merchant coverage / origination \u0001 ) this group \u0001 , s activities will focus on\nthe provision of structured energy , finance and asset solutions for the\nemerging merchant power generators who control large portfolio \u0001 , s of merchant\npower generation either through development or acquisition . we have asked\nmike miller to assume the leadership of this group . in addition , mike will\ncontinue to manage the power development activities in the eastern\ninterconnect ;\nd ) eastern qf restructuring \u0001 ) this group will focus on the qf restructuring\nopportunities in the eastern interconnect including the existing\nrestructuring and re - capitalization of the east coast power assets . we have\nasked dave duran to assume the leadership of this business . greg blair ,\nformerly of enron asia \u0001 , s development group , doug clifford , formerly of\ncitizens power , and dick lydecker , formerly of cogen technology , will join\nthis newly formed business .\n2 ) commercial transactions :\nthe commercial transactions group ( ctg ) , co - headed by ray bowen and jeff\ndonahue , was formed to provide a centralized resource for the execution of\ntransactions within ena \u0001 ) and thereby , improve ena \u0001 , s efficiency in executing\ntransactions and free - up the origination groups to increase their intensity\nof client coverage . ctg consists of six primary functions : transaction\ndevelopment , capital structuring and portfolio management , commodity\nstructuring and transportation , transactional support / accounting , technical\nanalysis and upstream asset management .\nthe transaction development group will be responsible for deal leadership ,\nexecution and optimization of all aspects of a transaction in conjunction\nwith the originator . the function will be divided into four teams , each of\nwhich will be dedicated to between two and four origination groups . this\ndedication to specific groups should provide a closer link , better service\nand greater accountability with the origination groups ; however , the ctg\nresources are designed to be a fungible and flexible resource allocated to\nthe highest value transactions across the coverage functions :\na ) midstream transaction development will be dedicated to the eastern and\nwestern coverage / origination groups . the senior members of this group\ninclude billy lemmons , george mccormick , erin norris and russ porter . billy\nlemmons joined enron in 1992 . most recently , he was the vice - president of\ncapital structuring and risk management for ees . russ porter joins us today\nfrom dynegy where he was a manager with responsibilities for power\norigination .\nb ) downstream transaction development will be dedicated to ena \u0001 , s industrial\norigination efforts in pulp and paper , petrochemicals and refining ,\nenvironmental energy , metals and mining and other industries as coverage is\nestablished . the senior members of this team include rodney malcolm , jay\nboudreaux , finley biggerstaff and chris helfrich . we anticipate announcing\ntwo to four more additions to this team within the next few weeks .\nc ) generation transaction development will be dedicated to the ipp merchant\nservices and power plant development and qf restructuring groups . the senior\nmembers of this team include thomas suffield , andy kelemen , kelly mahmoud and\njohn house . thomas suffield joined enron in 1996 . most recently , he was the\nvice - president of origination for the latin american group in azurix . we\nanticipate announcing two more additions to this team within the next few\nweeks .\nd ) upstream transaction development will be dedicated to the producer\nfinance , coal and gas assets groups . the senior members of this team include\nbrad dunn , john curtin and chris hilgert . we hope to announce the addition\nof at least one vp to this group prior to yearend .\nray bowen will have primary oversight responsibilities for the upstream and\ndownstream transaction development teams with jeff donahue having primary\nresponsibilities for the midstream and generation teams . andrea reed will\ncontinue to head capital structuring and portfolio management : all junior\ncommercial resources within the transaction development teams will have dual\nresponsibilities to both their transaction development teams and to the\ncapital structuring group . the remaining four groups within ctg will remain\nlargely unchanged . in addition , the origination and the transaction\ndevelopment teams and their respective origination groups will be located\ntogether .\nwe believe that these changes will significantly enhance our market coverage\nand industry knowledge in all ena \u0001 , s markets particularly in the industrial\nmarkets . it will also provide a closer partnership and accountability between\nthe coverage / origination groups and the ctg groups .\nplease help us in continuing to build on the success we have enjoyed in north\namerica by working with us to implement these changes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.362+0000", "entityId": 6543, "properties": {"text": "Subject: performance management process\nas our existing businesses grow and new businesses are created , ease of\nmovement and development of our top talent becomes essential to our success .\nas you heard at the management conference all officers will be titled ,\nreviewed , promoted , and compensated according to a more standard set of\nguidelines . the process recognizes the intrinsic value of each officer ,\nrather than tying that individual to the value of their specific job or\nreporting relationship .\nofficer titling has been standardized throughout enron . there are four\nlevels of officers : members of the enron office of the chairman make up level\n4 . level 3 includes all other members of the enron executive committee .\nlevel 2 is made up of managing directors , including company presidents and\nsome senior vice presidents . level 1 are vice presidents and some senior\nvice presidents with grandfathered titles .\nthis year a common evaluation process is being implemented for level 1 and\nlevel 2 officers . officers will be evaluated by a committee , through a\nprocess referred to as the performance review committee ( prc ) , utilizing a\nstandard set of performance criteria and performance ratings . performance\ncommittee reviews will occur twice a year \u0001 ) in july for feedback purposes and\nat year - end for feedback as well as bonus and total compensation\nconsiderations . the executive committee will handle the prc for all level 2\nofficers . review of level 1 officers will occur at the business - unit level\nfirst with the results \u0001 & cross calibrated \u0001 8 by the executive committee and a\ngroup of approximately sixteen managing directors .\nthe goals of the prc process is to insure a consistent standard for our\noverall pool of executive talent and to provide a tool to more effectively\nutilize talent throughout the organization . to further promote consistency\nthe executive committee will consider all promotions in january of each\nyear . exceptions , internally or externally , will be infrequent .\nthe individual \u0001 , s performance evaluation will be the starting point for all\ncompensation decisions . compensation includes base pay , bonus and long - term\nawards . a long - term program that replaces individual or business unit plans\nhas been approved and will be communicated to individuals before bonus\npayments are made .\nin addition to the level 1 and level 2 reviews , business unit , global and\ncorporate cross - functional prc reviews for directors , senior directors and\ngeneral managers have started . this year - end process will be utilized as a\nbenchmark to determine how we further refine the evaluation process at this\nlevel in the future .\nif you should have any questions about the process , please direct them to\nyour human resources business unit leads per the following :\nmary ann long ( gpg ) x 36810 david oxley ( ena / eel / global trading ) x 33557\nray bennett ( ees ) x 37039 robert jones ( global technology / global\nfinance / global\ngwen petteway ( corp ) x 37351 asset operations / global engineering &\nconstruction ) x 35810\njanie bonnard ( caribbean / middle east / scott gilchrist ( asia\npacific / africa / china ) x 67081\nlng ) x 68202 gerry chatham ( egep ) x 35141\nmiguel padron ( esa ) x 66552 marla barnard ( eci ) x 58158\nranen sengupta ( india ) x 67967\ncc : enron executive committee members\n28599", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.367+0000", "entityId": 6544, "properties": {"text": "Subject: rice program in financial engineering\ndear vince ,\ntony and i are looking forward to meeting with you tomorrow\n( thurs . ) at 10 a . m . regarding the rice iniative in financial\nengineering . attached to this message is our draft plan for\nthe proposed undergraduate program ; i will also bring a copy\nto the meeting in the morning .\nsee you tomorrow !\nbest regards ,\nkathy\nkatherine bennett ensor\nprofessor and chairperson\ndepartment of statistics , ms 138\nrice university\nhouston , tx 77251 - 1892\nensor @ rice . edu\nphone : ( 713 ) 527 4687\nfax : ( 713 ) 285 5476\n- draft - plano 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.371+0000", "entityId": 6545, "properties": {"text": "Subject: re : invitation to speak at power 2000\nemma ,\nit ' s your choice . i can chair the session of day 2 or speak on one of these\ntopics .\nplease , let me know what works for you .\npossible presentations :\nevaluating the effectiveness of insurance as a risk management tool\nor\napplying real option theory to value power plants\nor\novercoming the difficulties of accurately estimating volatility\nvince\n\" emma wolfin \" on 12 / 14 / 99 04 : 08 : 03 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation to speak at power 2000\nhi vince\nit is my great pleasure to invite you to speak at power 2000 which will be\nin houston on 9 & 10 may 2000 .\nwould you be interested in chairing one of the streams on day 2 of the\nconference ? or making a full presentation on one of the days ? please let me\nknow which talks interest you . obviously , some of the talks are no longer\navailable but i would like to give you a choice as much as possible . please\ncould you get back to me asap on 212 925 1864 ext 151 or by return email .\ni very much hope you can make the dates as i ' m very keen to have you\nparticipate at power . not to flatter you unnecessarily , but i know that a\nlot of people come to our conferences to hear what you have to say .\nbest regards\nemma\n- invite . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.376+0000", "entityId": 6546, "properties": {"text": "Subject: intelligence : el paso capacity - - someone has upped the ante but\nmatch still possible\nfyi . kim .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kimberly watson / et & s / enron on 12 / 16 / 99\n04 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlorna brennan\n12 / 16 / 99 09 : 59 am\nto : rockey storie / et & s / enron @ enron , stephanie miller / et & s / enron @ enron , kent\nmiller / et & s / enron @ enron , john dushinske / et & s / enron @ enron , dave\nneubauer / et & s / enron @ enron , michael bodnar / et & s / enron @ enron , joni\nbollinger / et & s / enron @ enron , david badura / et & s / enron @ enron , janet\nbowers / et & s / enron @ enron , craig buehler / et & s / enron @ enron , bob\nburleson / et & s / enron @ enron , allen cohrs / et & s / enron @ enron , john\nfiscus / et & s / enron @ enron , bret fritch / et & s / enron @ enron , steve\ngilbert / et & s / enron @ enron , morgan gottsponer / et & s / enron @ enron , brenda\nharris / et & s / enron @ enron , james harvey / et & s / enron @ enron , stephen\nherber / et & s / enron @ enron , dana jones / et & s / enron @ enron , jane\njoyce / et & s / enron @ enron , stephanie korbelik / et & s / enron @ enron , therese\nlohman / et & s / enron @ enron , bill mangels / et & s / enron @ enron , penny\nmccarran / et & s / enron @ enron , vernon mercaldo / et & s / enron @ enron , larry\npavlou / et & s / enron @ enron , eileen peebles / et & s / enron @ enron , maria\nperales / et & s / enron @ enron , tony perry / et & s / enron @ enron , loren\npenkava / et & s / enron @ enron , ken powers / et & s / enron @ enron , joan\nschwieger / et & s / enron @ enron , chris sebesta / et & s / enron @ enron , frank\nsemin / et & s / enron @ enron , neal shaw / et & s / enron @ enron , larry\nswett / et & s / enron @ enron , kay threet / et & s / enron @ enron , mike\nullom / et & s / enron @ enron , lisa valley / et & s / enron @ enron , chuck\nwilkinson / et & s / enron @ enron , jim wiltfong / et & s / enron @ enron , jo\nwilliams / et & s / enron @ enron , karen lagerstrom / et & s / enron @ enron , ray\nstelly / et & s / enron @ enron , bob stevens / et & s / enron @ enron , sue m\nneville / et & s / enron @ enron , mike barry / et & s / enron @ enron , miriam\nmartinez / et & s / enron @ enron , martha janousek / et & s / enron @ enron , kimberly\nwatson / et & s / enron @ enron , don powell / et & s / enron @ enron , melinda\ntosoni / et & s / enron @ enron , steve weller / et & s / enron @ enron , michael g\nstage / et & s / enron @ enron , tim johanson / et & s / enron @ enron , mike\nmcgowan / et & s / enron @ enron , lynn blair / et & s / enron @ enron , rick\ndietz / et & s / enron @ enron , steven january / et & s / enron @ enron , sheila\nnacey / et & s / enron @ enron , steven harris / et & s / enron @ enron , lindy\ndonoho / et & s / enron @ enron , jeffery fawcett / et & s / enron @ enron , lorraine\nlindberg / et & s / enron @ enron , kevin hyatt / et & s / enron @ enron , christine\nstokes / et & s / enron @ enron , julia white / et & s / enron @ enron\ncc :\nsubject : intelligence : el paso capacity - - someone has upped the ante but match\nstill possible\nnegotiated el paso deal topped\nel paso confirmed that someone had upped the ante on the negotiated deal\nfor slightly\nmore than 1 . 2 bcf / d in firm capacity to the california border that was\nannounced friday\n( see daily gpi , dec . 13 ) . a higher bid was submitted prior to\nwednesday ' s 1 p . m . mst\ndeadline in a four - day open season , a pipeline spokesman said . however ,\nthe original\nnegotiating party has until this afternoon to match the new price and\nretain the capacity .\nthe new bid was for $ 38 million over one year starting jan . 1 , about $ 8\nmillion more than\nthe amount in friday ' s announcement ( $ 30 million ) . one source called it\n\" ridiculous \" that\nsomeone was willing to pay so much for the space , given that on a\nmark - to - market basis\nthe capacity is worth only about $ 20 - 25 million .\nlate last week some sources speculated that duke energy was the\nrecipient of next\nyear ' s package given its large power generation holdings in california .\na marketer\nyesterday said he believed dynegy upped the ante . \" rather than go\nthrough all the\nhassles they [ dynegy ] had at ferc with the 1998 - 99 package , they let\nsomeone else do\nall the work this time and then came in late with a higher bid . that way\nno one can\ncomplain that the procedure was tainted . after all , dynegy has quite a\nfew power plants\nin california to keep fueled , and all of their current ft on el paso\nexpires at the end of\nthis year . of course , they still could be thwarted if the original\nnegotiated customer\nmatches their bid . it may all sound kind of machiavellian but sort of\nmakes sense . \" other\nsources heavily discounted the chances of dynegy being the new high\nbidder , pointing out\nthat the company made significantly less than expected this year because\nsan\njuan / border basis differentials narrowed significantly . a dynegy source\nindicated that the\ncompany was involved in the bidding and lost to duke in the first round .\nregardless of what happens next year , a marketer noted that the southern\ncalifornia\nborder / san juan basis spread continues to compress as socal gas\nwithdraws from\nstorage and east - of - california utilities exercise their peaking\ncontracts because of cold\nweather in the rockies and elsewhere in the west . from a december index\nspread of 29\ncents , the border / basin gap was down to about 18 cents wednesday , she\nsaid .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.382+0000", "entityId": 6547, "properties": {"text": "Subject: vince and vasant :\nhere is a brief summary of my meeting with chris germany , capacity trader at\nthe east desk , related to gas transmission :\ntypically , pipelines lease capacity billed on a monthly basis . an example\nmight be the pipeline between south texas and brooklyn , where you might pay\n$ 12 . 00 per month per 10 , 000 decatherms of capacity ( $ 0 . 40 per day ) , a fixed\npayment . variable charges are 6 % for fuel costs ( \" shrinkage \" ) and 6 . 5 % for\noverhead expenses . a gas trader might call south texas and be quoted a\ndelivery price tomorrow of nymex - $ 0 . 10 ( \" basis \" ) , and might call brooklyn\nand be quoted a delivered price of nymex + $ 0 . 25 . the trader ' s spread is\n$ 0 . 35 , and variable costs of transmission are $ 0 . 125 , so the trader would\noffer the leaseholder of capacity up to $ 0 . 225 for firm capacity tomorrow .\nas for the distinction betweem firm and interruptible , the leaseholders have\nan excellent knowledge of the firm - equivalent of interruptible capacity .\nalso , many pipelines don ' t discount firm capacity from the tariff maximum\n( \" it ' s not worth their time to haggle \" ) ( there is a further issue of\n\" secondary markets \" not important to the model yet ) . for south texas and\nbrooklyn , there are several different routes the gas can physically take\n( pipelines of enron , texas eastern , etc ) . and , once the trade is in the\nsystem traders can cover the ( enron ) positions on each end of the pipeline ,\nin so doing freeing up the capacity for other contracts .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.386+0000", "entityId": 6548, "properties": {"text": "Subject: re : emission trading\nvince ,\ni spoke with susan wood , who heads up our emissions marketing effort who\nsays we don ' t really have any materials we send out . she did recommend the\nemissions trading handbook which can be purchased for $ 50 from\nin general , the site http : / / www . etei . org / is a great source of info , and the\nthe parent site , http : / / www . emissions . org should be checked out as well . if\nyou ' d like me to purchase the handbook ( it will take three weeks ) let me know .\njoe\nvince j kaminski\n12 / 16 / 99 08 : 15 am\nto : joseph hrgovcic / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : emission trading\njoe ,\ndo we have any materials about it ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 16 / 99\n08 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nadam brulinski\n12 / 14 / 99 08 : 22 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : emission trading\nthank you in advance .\nlet me just mention that the issue is quite urgent so i would appreciate if i\ncould get sth asap .\nadam\nvince j kaminski\n99 - 12 - 14 15 : 24\nto : adam brulinski / war / ect @ ect\ncc :\nsubject : re : emission trading\nadam ,\nlet me gather some information for you .\nvince\nadam brulinski\n12 / 14 / 99 08 : 08 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : emission trading\nszanowny panie ,\nchcielibysmy zaczac propagowac w polsce idee handlu prawami do emisji\nzanieczyszczen . dlatego tez prosilbym o przeslanie , najlepiej droga emailowa\nmaterialow dotyczacych tej koncepji - glownie chodzi mi o strone\n\" merytoryczna \" .\nz powazaniem ,\nadam brulinski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.392+0000", "entityId": 6549, "properties": {"text": "Subject: re : creditmanager net meeting\naidan ,\nyes , this will work for us .\nvince\n\" aidan mc nulty \" on 12 / 16 / 99 08 : 36 : 14 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : creditmanager net meeting\nvincent , i cannot rearrange my schedule for tomorrow so i would like to\nconfirm that we will have a net - meeting of creditmanager on friday 7 th of\njanuary at 9 . 30 your time .\nregards\naidan mc nulty\n212 981 7422", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.400+0000", "entityId": 6550, "properties": {"text": "Subject: revised : organizational changes\nto : enron north america corp .\nfrom : cliff baxter and kevin hannon\nin july , as part of the enron north america ( ena ) reorganization , the\nimplementation of several objectives were highlighted as critical to the\ncontinued growth of ena including : 1 ) accelerate the development of our\npeople , 2 ) significantly expand our customer network and associated markets ,\nand 3 ) accelerate and enhance the information flow between groups , both\nwithin ena and across enron . consistent with these objectives and with the\ncorporate goal of fostering \u0001\nb ) the downstream coverage / origination groups which focus on delivering a\nbroad range of products and services to the heavy industrial customers\nincluding pulp and paper , chemicals , plastics , refined products , metals and\nmining , heavy manufacturing , industrial gases , fertilizers , transportation ,\ntextiles and glass manufacturing the eastern and western u . s . midstream\ncoverage / origination groups which focus on energy , finance and industries .\ndownstream coverage / origination\nas energy deregulation continues in north america , it is becoming clear that\nthe heavy industrial segment will be an important customer market for both\nena and enron corp . further , it is clear that ena can significantly expand\nits industrial customer network and create more innovative industrial\nsolutions by having a group that can deploy all the capabilities of enron\ncorp . against this backdrop , the downstream coverage / origination function\nwill expand its product offering to include not only ena \u0001 , s existing energy\ncommodities , energy services , finance , assets and pulp and paper capabilities\nbut also ees \u0001 , s energy outsourcing capability and global fuel \u0001 , s chemicals ,\nplastics and refined products risk management capability . these additional\ncapabilities will be offered in conjunction with ees and the global fuels\ngroups . given the size and importance of this enron initiative , greg piper\nwill be returning from portland to manage this business . under greg \u0001 , s\nleadership , the downstream origination effort will be segmented into three\nsub - groups given the nature of these industries and our product offering :\na ) pulp and paper \u0001 ) edward ondarza will continue to manage the coverage\nactivities in the pulp and paper business . this group will be responsible for\nthe provision of innovative\nproducts and services in the pulp and paper industry including the provision\nof paper risk management products ;\nb ) chemicals , plastics and refined products \u0001 ) we have asked jim ajello to\nlead the coverage activities in this business . this group will be\nresponsible for the provision of innovative products and services in the\nchemicals and refined products industries ;\nc ) non - integrated industrials \u0001 ) bruce garner , formerly leader of bankers\ntrust \u0001 , s global metals and mining group in london , has joined ena to lead the\ncoverage activities in this business . this group will be responsible for the\nprovision of innovative products and services for the metals and mining ,\nheavy manufacturing , industrial gases , fertilizers , transportation , textiles\nand glass manufacturing industries .\nmidstream coverage / origination\na ) eastern coverage / origination \u0001 ) this group \u0001 , activities will focus on\nenergy , finance and power development solutions for electric and gas\nutilities , municipals , co - ops and energy service companies in the eastern\ninterconnect . we have asked janet dietrich to assume the leadership of this\ngroup ;\nb ) western coverage / origination \u0001 ) this group \u0001 , s activities will focus on\nenergy , finance and power development solutions for electric and gas\nutilities , municipals , co - ops and energy service companies in the wscc . they\nwill also continue to manage all qualified facilities ( qf ) restructuring\nopportunities in the western u . s . we have asked chris calger to assume the\nleadership of this coverage group . chris will relocate to portland from\ncalgary where he currently leads the canadian downstream origination efforts ;\nc ) ipp merchant coverage / origination \u0001 ) this group \u0001 , s activities will focus on\nthe provision of structured energy , finance and asset solutions for the\nemerging merchant power generators who control large portfolio \u0001 , s of merchant\npower generation either through development or acquisition . we have asked\nmike miller to assume the leadership of this group . in addition , mike will\ncontinue to manage the power development activities in the eastern\ninterconnect ;\nd ) eastern qf restructuring \u0001 ) this group will focus on the qf restructuring\nopportunities in the eastern interconnect including the existing\nrestructuring and re - capitalization of the east coast power assets . we have\nasked dave duran to assume the leadership of this business . greg blair ,\nformerly of enron asia \u0001 , s development group , doug clifford , formerly of\ncitizens power , and dick lydecker , formerly of cogen technology , will join\nthis newly formed business .\n2 ) commercial transactions :\nthe commercial transactions group ( ctg ) , co - headed by ray bowen and jeff\ndonahue , was formed to provide a centralized resource for the execution of\ntransactions within ena \u0001 ) and thereby , improve ena \u0001 , s efficiency in executing\ntransactions and free - up the origination groups to increase their intensity\nof client coverage . ctg consists of six primary functions : transaction\ndevelopment , capital structuring and portfolio management , commodity\nstructuring and transportation , transactional support / accounting , technical\nanalysis and upstream asset management .\nthe transaction development group will be responsible for deal leadership ,\nexecution and optimization of all aspects of a transaction in conjunction\nwith the originator . the function will be divided into four teams , each of\nwhich will be dedicated to between two and four origination groups . this\ndedication to specific groups should provide a closer link , better service\nand greater accountability with the origination groups ; however , the ctg\nresources are designed to be a fungible and flexible resource allocated to\nthe highest value transactions across the coverage functions :\na ) midstream transaction development will be dedicated to the eastern and\nwestern coverage / origination groups . the senior members of this group\ninclude billy lemmons , george mccormick , erin norris and russ porter . billy\nlemmons joined enron in 1992 . most recently , he was the vice - president of\ncapital structuring and risk management for ees . russ porter joins us today\nfrom dynegy where he was a manager with responsibilities for power\norigination .\nb ) downstream transaction development will be dedicated to ena \u0001 , s industrial\norigination efforts in pulp and paper , petrochemicals and refining ,\nenvironmental energy , metals and mining and other industries as coverage is\nestablished . the senior members of this team include rodney malcolm , jay\nboudreaux , finley biggerstaff and chris helfrich . we anticipate announcing\ntwo to four more additions to this team within the next few weeks .\nc ) generation transaction development will be dedicated to the ipp merchant\nservices and power plant development and qf restructuring groups . the senior\nmembers of this team include thomas suffield , andy kelemen , kelly mahmoud and\njohn house . thomas suffield joined enron in 1996 . most recently , he was the\nvice - president of origination for the latin american group in azurix . we\nanticipate announcing two more additions to this team within the next few\nweeks .\nd ) upstream transaction development will be dedicated to the producer\nfinance , coal and gas assets groups . the senior members of this team include\nbrad dunn , john curtin and chris hilgert . we hope to announce the addition\nof at least one vp to this group prior to yearend .\nray bowen will have primary oversight responsibilities for the upstream and\ndownstream transaction development teams with jeff donahue having primary\nresponsibilities for the midstream and generation teams . andrea reed will\ncontinue to head capital structuring and portfolio management : all junior\ncommercial resources within the transaction development teams will have dual\nresponsibilities to both their transaction development teams and to the\ncapital structuring group . the remaining four groups within ctg will remain\nlargely unchanged . in addition , the origination and the transaction\ndevelopment teams and their respective origination groups will be located\ntogether .\nwe believe that these changes will significantly enhance our market coverage\nand industry knowledge in all ena \u0001 , s markets particularly in the industrial\nmarkets . it will also provide a closer partnership and accountability between\nthe coverage / origination groups and the ctg groups .\nplease help us in continuing to build on the success we have enjoyed in north\namerica by working with us to implement these changes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.408+0000", "entityId": 6551, "properties": {"text": "Subject: re : invitation to speak at power 2000\nhi vince\nthat ' s great - delighted you ' ll be participating . i ' ve put you down as the\nchairman for stream 1 , day 1 on 9 may 2000 .\nby the way , is your job title still vp , head of research at enron north\namerica ? i need to know for the brochure .\nif i don ' t speak to you before the new year , i wish you a very merry xmas\nand a happy new millennium !\nemma\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : emma wolfin\ncc : vince j kaminski\ndate : thursday , december 16 , 1999 9 : 02 am\nsubject : re : invitation to speak at power 2000\n>\n>\n> emma ,\n>\n> mergers and acquisitions are not my cup of tea .\n>\n> chairing stream 1 on day 1 seems to be a better match .\n>\n> vince\n>\n>\n>\n>\n>\n> \" emma wolfin \" on 12 / 15 / 99 10 : 51 : 34 am\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : re : invitation to speak at power 2000\n>\n>\n>\n>\n> hi vince\n>\n> thanks for getting back to me quickly ! as it happens , all of the sessions\n> you suggested are already taken !\n>\n> so , would you be interested in chairing either stream 1 on day 1 of the\n> conference - \" pricing and trading in the us power market \" or stream 3 on\n> day 2 of the conference - \" latest developments in the us energy industry \" .\n> for your information , the people presenting on day 1 in stream 1 include :\n>\n> - spyros maragos , dynegy on volatility\n> - sanjeev khanna , pg & e on correlation\n> - gary morsches , southern on optimising information to accurately price and\n> trade electricity\n> - blake johnson , stanford university on modelling power prices\n> - craig pirrong , olin school of business , washington university on building\n> the optimal forward curve\n>\n> on day 2 , stream 3 , there are only 3 talks in that stream , as after lunch\nwe\n> will be breaking for plenary sessions and the industry briefing sessions\n> too . but the people who will be speaking in that stream are :\n>\n> - venu nagali , stanford university on real options\n> - ram challa , sithe energies ( he was formerly at bankers trust ) on\n> generation assets\n>\n> i have the slot on mergers and acquisitions in stream 3 on day 2 as still\n> available but i ' m not sure if that session is your area of speciality ? let\n> me know .\n>\n> thanks vince and very much looking forward to working with you again .\n>\n> emma\n>\n>\n> - - - - - original message - - - - -\n> from : vince j kaminski\n> to : emma wolfin\n> cc : vince j kaminski\n> date : wednesday , december 15 , 1999 11 : 36 am\n> subject : re : invitation to speak at power 2000\n>\n>\n> >\n> >\n> > emma ,\n> >\n> > it ' s your choice . i can chair the session of day 2 or speak on one of\nthese\n> > topics .\n> > please , let me know what works for you .\n> >\n> > possible presentations :\n> >\n> > evaluating the effectiveness of insurance as a risk management tool\n> >\n> > or\n> >\n> > applying real option theory to value power plants\n> >\n> > or\n> >\n> > overcoming the difficulties of accurately estimating volatility\n> >\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > \" emma wolfin \" on 12 / 14 / 99 04 : 08 : 03 pm\n> >\n> > to : vince j kaminski / hou / ect @ ect\n> > cc :\n> > subject : invitation to speak at power 2000\n> >\n> >\n> >\n> >\n> > hi vince\n> >\n> > it is my great pleasure to invite you to speak at power 2000 which will be\n> > in houston on 9 & 10 may 2000 .\n> >\n> > would you be interested in chairing one of the streams on day 2 of the\n> > conference ? or making a full presentation on one of the days ? please let\nme\n> > know which talks interest you . obviously , some of the talks are no longer\n> > available but i would like to give you a choice as much as possible .\nplease\n> > could you get back to me asap on 212 925 1864 ext 151 or by return email .\n> >\n> > i very much hope you can make the dates as i ' m very keen to have you\n> > participate at power . not to flatter you unnecessarily , but i know that a\n> > lot of people come to our conferences to hear what you have to say .\n> >\n> > best regards\n> >\n> > emma\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.413+0000", "entityId": 6552, "properties": {"text": "Subject: re : european energy 2000 , april , amsterdam\nangela ,\nno problem . i shall be glad to do it .\nhappy holidays if i don ' t hear from you .\nvince\n\" angela adedeji \" on 12 / 14 / 99 12 : 00 : 40 pm\nplease respond to \" angela adedeji \"\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : european energy 2000 , april , amsterdam\nhi vince\nre : european energy 2000 , 3 & 4 april , amsterdam\ni hope all is well . i wondered whether or not you would be interested in\nchairing the stream of your talk ?\ni look forward to hearing from you soon .\nkind regards\nangela\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.419+0000", "entityId": 6553, "properties": {"text": "Subject: re : invitation to speak at power 2000\nemma ,\nmergers and acquisitions are not my cup of tea .\nchairing stream 1 on day 1 seems to be a better match .\nvince\n\" emma wolfin \" on 12 / 15 / 99 10 : 51 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : invitation to speak at power 2000\nhi vince\nthanks for getting back to me quickly ! as it happens , all of the sessions\nyou suggested are already taken !\nso , would you be interested in chairing either stream 1 on day 1 of the\nconference - \" pricing and trading in the us power market \" or stream 3 on\nday 2 of the conference - \" latest developments in the us energy industry \" .\nfor your information , the people presenting on day 1 in stream 1 include :\n- spyros maragos , dynegy on volatility\n- sanjeev khanna , pg & e on correlation\n- gary morsches , southern on optimising information to accurately price and\ntrade electricity\n- blake johnson , stanford university on modelling power prices\n- craig pirrong , olin school of business , washington university on building\nthe optimal forward curve\non day 2 , stream 3 , there are only 3 talks in that stream , as after lunch we\nwill be breaking for plenary sessions and the industry briefing sessions\ntoo . but the people who will be speaking in that stream are :\n- venu nagali , stanford university on real options\n- ram challa , sithe energies ( he was formerly at bankers trust ) on\ngeneration assets\ni have the slot on mergers and acquisitions in stream 3 on day 2 as still\navailable but i ' m not sure if that session is your area of speciality ? let\nme know .\nthanks vince and very much looking forward to working with you again .\nemma\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : emma wolfin\ncc : vince j kaminski\ndate : wednesday , december 15 , 1999 11 : 36 am\nsubject : re : invitation to speak at power 2000\n>\n>\n> emma ,\n>\n> it ' s your choice . i can chair the session of day 2 or speak on one of these\n> topics .\n> please , let me know what works for you .\n>\n> possible presentations :\n>\n> evaluating the effectiveness of insurance as a risk management tool\n>\n> or\n>\n> applying real option theory to value power plants\n>\n> or\n>\n> overcoming the difficulties of accurately estimating volatility\n>\n>\n> vince\n>\n>\n>\n>\n>\n> \" emma wolfin \" on 12 / 14 / 99 04 : 08 : 03 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : invitation to speak at power 2000\n>\n>\n>\n>\n> hi vince\n>\n> it is my great pleasure to invite you to speak at power 2000 which will be\n> in houston on 9 & 10 may 2000 .\n>\n> would you be interested in chairing one of the streams on day 2 of the\n> conference ? or making a full presentation on one of the days ? please let me\n> know which talks interest you . obviously , some of the talks are no longer\n> available but i would like to give you a choice as much as possible . please\n> could you get back to me asap on 212 925 1864 ext 151 or by return email .\n>\n> i very much hope you can make the dates as i ' m very keen to have you\n> participate at power . not to flatter you unnecessarily , but i know that a\n> lot of people come to our conferences to hear what you have to say .\n>\n> best regards\n>\n> emma\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.424+0000", "entityId": 6554, "properties": {"text": "Subject: re : presentation in seoul\nanthony duenner @ enron _ development on 12 / 15 / 99 01 : 46 : 35 pm\nto : mark ruane @ ect , zimin lu @ ect\ncc :\nsubject : presentation in seoul\nbetter late than never - - i again wanted to thank both of you for taking the\ntime and making the effort to make the raroc and real options presentations\nin seoul earlier this month . both presentations were well received and i had\na number of favorable comments and expressions of thanks form our hosts after\nthe presentations . i know you both have very busy schedules - - especially\naround this time of year - - and very much appreciate your help . regards .\nanthony duenner", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.430+0000", "entityId": 6555, "properties": {"text": "Subject: new website for an exciting conference\napplications of physics in financial analysis 2\nliege , belgium\n13 to 15 july 2000\nthe website for this conference is now available at\nwww . eps . org / apfa\nfor further details on all eps conferences contact : christine bastian ,\nconferences , european physical society , 34 rue marc seguin , bp 2136 , f - 68060\nmulhouse cedex , france\ntel + 33 389 32 94 42 fax + 33 389 32 94 49\nemail eps . conf @ univ - mulhouse . fr\nthis conference is a europhysics conference . it is organised by the european\nphysical society and its division of statistical and non - linear physics .\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.435+0000", "entityId": 6556, "properties": {"text": "Subject: last day , contact numbers , etc .\nhi guys !\nas most of you know by now today is my last day at enron north america . it\nhas been really great few months and maureen has most graciously put up with\nmy school and exam schedule . as today is also my graduation from the\nuniversity of houston , i don ' t have any formal reasons to remain in houston\nand will be heading to the misty albion to work for enron europe as soon as\nmy work permit for the uk is ready . the latter is still a mystery but is\nanticipated some time in early february . right now i am planning to come back\nto houston middle of january to wait for the work permit and sell my car ,\nsome furniture , etc . ( stay tuned for great deals : - ) so , i will be back to\nsee you guys . if you miss me too much try to find consolation in miss yana\nkristal , a u of h student of slavic origin , who will be taking over my\nresponsibilities starting early january . i know i will miss you and am\nplanning to sneak in the video conferencing room during the thursday\nmeetings . i know it won ' t be the same , but it ' s better than nothing . or you\ncan start planning that trip to london . . .\nbelow are the numbers where if you can ' t reach me there will be information\nwhere i might be .\nphone numbers :\nhouston : 713 - 213 - 7733 - cell\ncome back to houston january 15 ( depending on how the work permit is coming ) .\nhave very , very happy holidays and a great millenium !\nmartina", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.439+0000", "entityId": 6557, "properties": {"text": "Subject: re : new copier information for 55 , 60 & 65 cpm digital machines\niain :\nwe went and looked at the toshiba copier on the 32 nd floor and while it\ndoes not appear to be extremely fast , i believe it will work for the 19 th\nfloor . i spoke with vince kaminski and he agreed with our getting this\ncopier .\nwe noticed this copier has a button that says \" network connection \"\nand were wondering it this copier could be hooked up to the network and\nwe could run copies from our computer ? please let us know .\nthanks for all your help and have a wonderful christmas and new\nyear !\nshirley\nco # 0011\nrc # 100038\ncopier information including pictures & weblinks\nfrom : iain russell on 12 / 17 / 99 10 : 47 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : new copier information for 55 , 60 & 65 cpm digital machines\nshirley ,\nfollowing up on the telephone conversation , please see the attached\nspreadsheet for pricing information plus important information about \" true\nworld \" copy speeds .\npricing was centered on the 42 . 315 k per month volume band so that you can get\na good feel for copier expenditure based on average month volumes . i have\nleft the spreadsheet \" unprotected \" so that you can play with the volume\nfigures and see how this changes the price overall + how the \" cost per image \"\nis affected by volume changes .\n? pricing spreadsheet : under \" notes \" towards under the pictures .\nthe \" true world \" copy speed information has been supplied by buyers lab\nincorporated , which is an independent testing house that rates office\nequipment , including copiers and publishes their findings on a quarterly\nbasis . unfortunately they have not released their findings on the canon ir 550\nas testing is not yet complete .\n? copier speeds : @ the end of the notes - mail\n{ these include 1 - 1 , 1 - 2 and duplexing + detail on completion of \" sets \" }\nas you will see , duplexing speeds are widely different across the various\nmanufacturers equipment & the \" true world \" copy speeds are a soft $ expense\nwhich impacts the true cost of running a copier .\nlisted below are the url ' s for the different 55 , 60 & 65 cpm b / w copiers .\na ) overview\nb ) specifications\nfrom lanier\nricoh equipment\n55 copies per minute\na ) & b ) weblink for machine specifications - - > click here - - - >\n65 copies per minute\na ) & b ) weblink for machine specifications - - > click here - - - >\nfrom danka\ncanon equipment { ir 550 }\n55 copies per minute\nlooks like : - - - >\nweblink for machine specifications - - > click below :\na ) http : / / www . usa . canon . com / corpoffice / netofficesys / ir 550 / ir 550 fea . html\nb ) http : / / www . usa . canon . com / corpoffice / netofficesys / ir 550 / ir 550 spec . html\ncanon equipment { ir 600 } > > currently on 45 day backorder\nweblink for machine specifications - - > click below :\na ) http : / / www . usa . canon . com / corpoffice / netofficesys / ir 600 / ir 600 fea . html\nb ) http : / / www . usa . canon . com / corpoffice / netofficesys / ir 600 / ir 600 spec . html\ntoshiba equipment\n55 copies per minute\nweblink for machine specifications - - > click below :\na ) http : / / www . toshiba . com / taiseid / copiers / 5570 / features . htm\nb ) http : / / www . toshiba . com / taiseid / copiers / 5570 / spec . htm\n65 copies per minute\nweblink for machine specifications - - > click here - - >\na ) http : / / www . toshiba . com / taiseid / copiers / 6570 / features . htm\nb ) http : / / www . toshiba . com / taiseid / copiers / 6570 / spec . htm\nnotes\nhere is the pricing spreadsheet for your records : - - >\nthe highlighted rows on the spreadsheet reflect you current average monthly\nvolume .\nfyi - - > target cpi or cost per image is in the region $ 0 . 017 up to and\nincluding $ 0 . 023 .\ncopier model monthly volume capacities\nmodel manufacturer max rec / level realistic level { up to }\ntoshiba 5570 340 k 115 k\ntoshiba 6570 400 k 135 k\nlanier 5255 { per rep . } 200 k 100 k\nlanier 5265 { per rep . } 200 k 100 k\ncanon ir 550 200 k 100 k\ncanon ir 600 250 k 100 k\nfyi : we currently have a toshiba 6570 @ eb 32 kl that is averaging 69 , 332\nimages per month with the top month producing 86 , 673 images and a toshiba\n5570 @ eb 3080 area that is averaging 39 , 309 per month . both of these machines\nare in the enron north america trading environment .\nthe copiers quoted are all \" digital \" .\ndigital : scan once print many = 99 copies of one sheet ? 1 scan !\nanalog : scan for every image made = 99 copies of 1 sheet ? 99 scans = possible\nnoise issue .\ncopier speeds = total print time\nthis comparison gives the speed @ which the document set is printed\n{ no staple , no 3 - hole punch }\n> > > > > 60 & 65 copy per minute machines > > > > 55 copy per minute machines < < < < <\nplease call me with any questions .\nthanks , iain russell @ 713 - 853 - 6861\ncontracts supervisor administration\nenron property & services corp .\nprivileged / confidential information may be contained in this message . if\nyou are not the addressee indicated in this message ( or responsible for\ndelivery of the message to such person ) , you may not copy or deliver this\nmessage to anyone . in such case , you should destroy this message , and\nnotify us immediately . if you or your employer does not consent to internet\nemail messages of this kind , please advise us immediately . opinions ,\nconclusions and other information expressed in this message are not given\nor endorsed by my department or employer unless otherwise indicated by an\nauthorized representative independent of this message .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.444+0000", "entityId": 6558, "properties": {"text": "Subject: merry xmas and a happy new year !\nhi all\nmerry xmas and a happy new year !\nles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.450+0000", "entityId": 6559, "properties": {"text": "Subject: re : european energy 2000\nvince ,\ni ' ve been invited to speak at the conference below in amsterdam in april .\nthis is along with the monte carlo conference a week later which stinson has\nforwarded my name for . both are by eprm , and shouldn ' t take too much time to\nprepare as will be on similar topics to the previous conference at which i\nspoke . should i go to both , or start prioritising these events ?\nben\n- - - - - - - - - - - - - - - - - - - - - - forwarded by benjamin parsons / lon / ect on 20 / 12 / 99\n17 : 03 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" angela adedeji \"\n20 / 12 / 99 11 : 57\nplease respond to \" angela adedeji \"\nto : benjamin parsons / lon / ect @ ect\ncc :\nsubject : european energy 2000\ndear ben\nre : european energy 2000 , 3 & 4 april , amsterdam\nit is with great pleasure that i enclose details of eprm ' s 3 rd annual\ncongress . i would like to invite you to become involved as a speaker on the\nprogramme and / or on either of the two seminars on modelling power prices and\nvar .\nthe following sessions are currently available on the main programme :\n- trouble shooting roundtables -\nvar\nforward curve\nelectricity derivatives\nheding\n- developing and implementing enterprise wide risk management\n- quantifying and minimising operational risk\nunfortunately this project needs to be signed off before christmas . i would\ntherefore appreciate receiving a response from at your earliest convenience .\ni hope we can work together on this event and i look forward to hearing from\nyou soon .\nkind regards\nangela adedeji\nsenior producer , energy conferences & courses\ntel - 0171 484 9886\nfax - 0171 484 9888\nemail - aadedeji @ risk . co . uk\n- attl . htm\n- fgrid . doc\n- seminar . doc\n- seminar 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.456+0000", "entityId": 6560, "properties": {"text": "Subject: p . c .\nwe spoke about the p . c . for trisha tlapek .\nlocation eb 3132 b .\nco . # 0011\nr . c . 100038\nthanks\nkevin moore\nx 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.465+0000", "entityId": 6561, "properties": {"text": "Subject: flat screens\nhello ,\nplease call or contact regarding the other flat screens requested .\ntrisha tlapek - eb 3132 b\nmichael sergeev - eb 3132 a\nalso the sun blocker that was taken away from eb 3131 a .\ntrisha should two monitors also michael .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.469+0000", "entityId": 6562, "properties": {"text": "Subject: p . c .\nwhat do i need to do in order to get this\np . c . early a . m .\nplease let me know .\nthanks\nkevin moore\nvery important\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 22 / 99 06 : 30\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 20 / 99 11 : 28 am\nto : lyn malina / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : p . c .\nwe spoke about the p . c . for trisha tlapek .\nlocation eb 3132 b .\nco . # 0011\nr . c . 100038\nthanks\nkevin moore\nx 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.474+0000", "entityId": 6563, "properties": {"text": "Subject: re : new color printer\ngoodmorning lyn ,\nplease inform me on the status of the color printer for\nthe 19 th floor .\nwe need this printer a . s . a . p .\nthis printer should be placed where the black and white printer\nis located on the same counter .\nco . 0011\nr . c . 100038\nlet me know !\nmerry christmas\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 22 / 99 06 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 14 / 99 09 : 21 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : re : new color printer\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 14 / 99 09 : 17\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 14 / 99 08 : 13 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : re : new color printer\nyes ! right away , please\nalso let me know the e . t . a .\nthanks , lyn\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.479+0000", "entityId": 6564, "properties": {"text": "Subject: please approve : application request ( wsmh - 4 esnva )\nsecurity resource request wsmh - 4 esnva has been submitted for your approval .\nto view the request , double click your left mouse button on the notes\ndocument link below .\nquick steps to approve or reject request form :\n1 . click the button to view details of the requests .\n2 . click the button to approve or reject the requests .\n3 . to edit the request form , double - click anywhere on the form .\nsee the online help for instructions or call ect security .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.487+0000", "entityId": 6565, "properties": {"text": "Subject: real options for mothballed plant\ni ' m off for my xmas break , so happy holidays to you all !\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.493+0000", "entityId": 6566, "properties": {"text": "Subject: ceraweek 2000 update !\ndear ceraweek 2000 registrant ,\nthank you for your recent registration to ceraweek 2000 , cera ' s 19 th annual\nexecutive conference and related events , february 8 - 10 , 2000 in houston , tx .\nceraweek 2000 promises to be a premier international event offering senior\nenergy executives new ideas , insight , and strategic thinking , as well as\nopportunities for discussion on the major issues facing the global energy\nindustries .\nto keep abreast of new speakers and agenda changes , we recommend that you\nvisit our website at http : / / www . cera . com / ceraweek / . please note that there\nhave been slight changes to the agenda and schedule .\nif you have questions or concerns regarding ceraweek 2000 please contact\ncera registration at register @ cera . com or 800 879 - 2372 ext . 800 ( outside\nthe u . s . ( 617 ) 497 - 6446 ext . 800 . )\nwe look forward to seeing you in houston .\nsincerely ,\ncera registration\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.501+0000", "entityId": 6567, "properties": {"text": "Subject: re : 12 / 17 churn - - eb 29 to ebl 9\njob done !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 22 / 99 05 : 59\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlupe rodriguez @ enron\n12 / 21 / 99 04 : 08 pm\nto : move - team / epsc / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect , dolores sustaita / epsc / hou / ect @ ect , janelle\nduree / hou / ect @ ect\nsubject : re : 12 / 17 churn - - eb 29 to ebl 9\ni have guys up there now to complete this request . we don \" t move the plants\nbut we will this time . any thing else just let me know . lupe\nmove - team @ ect\n12 / 21 / 99 02 : 26 pm\nsent by : linda richard @ ect\nto : lupe rodriguez / corp / enron @ enron\ncc : kevin g moore / hou / ect @ ect , dolores sustaita / epsc / hou / ect @ ect , janelle\nduree / hou / ect @ ect\nsubject : 12 / 17 churn - - eb 29 to ebl 9\nhi lupe !\nthere are approximately 25 boxes , several small file cabinets and 2 plants ( a\n3 ft and a 9 ft plant ) that are ready to be moved from 29 to 19 . this is part\nof the 29 th floor 12 / 17 churn .\nthe items are located in various offices of the \" fishbowl \" area on the 29 th\nfloor . they are labeled with the 19 th floor designated location .\nthere are 2 larger file cabinets that are located in the hallway .\nthe 2 plants need to be taken to ebl 944 .\nis there anyway to work this in your schedule on tommorrow ?\nthanks\nlinda", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.508+0000", "entityId": 6568, "properties": {"text": "Subject: re : working gas price model\nvince -\ni have a simplified version of brad ' s model in mind .\nthe \" no arbitrage \" condition equates trading margins across the country .\ncosts of transmission rise with congestion on the network . wellhead supply is\nalmost completely price - elastic , while burner - tip demand is almost\ncompletely price inelastic . storage is rationalized as a perpetual call\noption .\nthe least time - variant parameters are the costs of injecting and withdrawing\ngas from storage to the pipeline , followed by the costs of delivering gas\nfrom the wellhead to the pipeline . the intermediate - variant parameters are\nthe capacity - dependent costs paid to the pipeline ( above shrinkage ) for\ntransmission . the most time - variant parameters are the trading margins and\nthe valuations of the storage option .\nthere are 8 parameters to be estimated at each major node of the betwork .\nthey are identifiable in either of two straightforward ways : using a short\ntime series of the last 3 days prices based on the assumed variability\nmentioned above , or point - estimates ( \" calibrations \" ) using only today ' s data\nbased on a node - based model of competition between pipelines where pipes with\nthe same region of origination , albeit markedly different terminus , price\nversus capacity similarly , \" competing \" for outflows .\ni will write this up for you in scientific word and present it to you at your\nearliest convenience .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.513+0000", "entityId": 6569, "properties": {"text": "Subject: new volatility curve generator for uk power\nwe have established a set of power volatility curves down to the efa / monthly\nlevel of detail that can be marked to market up to 6 years out . beyond this ,\nthe volatility decays to what we understand to be the long - term level for\npower volatility , given our understanding of the behaviour of forward prices\nover large time - scales .\nthe swaption traders can now fit the first 5 - 6 years of the volatility curve\nto the market - observed baseload swaption implied volatilities ( typically 3 to\n12 months duration for the underlying swap ) and then be in a good position to\nprice other swaptions ( including swaptions on individual efa slots )\nconsistent with the curve . there may also be an impact on the daily var\ncalculation .\nan illustration of the current volatility curves is pasted below : -\nthese curves will be reset as the market moves , and allow a mark - to - market\napproach to be followed for our volatility book . the spreadsheet model is\nsaved in t : \\ readwrte \\ elec _ uk \\ models \\ . xls and also\nattached below for houston staff to review .\n[ stinson - i ' d be grateful if you could offer an opinion / audit to ensure that\ni haven ' t missed anything , thanks . ]\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.518+0000", "entityId": 6570, "properties": {"text": "Subject: re : thank you for the e - mail .\njoe ,\nhe is a research assistant of prof . darrell duffie from stanford\nand i met him in this capacity . a very bright fellow .\ni could not assess his commercial skills but he has enough common\nsense to identify the winner ( as his interest in enron demonstrates ) .\nvince\njoseph p hirl @ enron _ development\n12 / 17 / 99 08 : 05 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : thank you for the e - mail .\nvince , thanks for the note and the voice mail this morning . do you have any\nthoughts / comments on this person ' s abilities ?\njoe\nvince j kaminski @ ect\n12 / 18 / 99 07 : 25 am\nto : joseph p hirl / enron _ development @ enron _ development\ncc :\nsubject : re : thank you for the e - mail .\njoe ,\ni am forwarding you the information about the student from stanford of\njapanese ancestry interested in enron .\nhe lives currently in california .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 17 / 99\n03 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n10 / 20 / 99 07 : 07 am\nto : hoshino @ leland . stanford . edu\ncc : celeste roberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect , greg\nwhalley / hou / ect @ ect\nsubject : re : thank you for the e - mail .\ntaiichi ,\nthank you for your messsage . i shall forward to our analyst / associate\nprogram and a few other units of enron .\nvince kaminski\nhoshino @ leland . stanford . edu on 10 / 19 / 99 09 : 14 : 05 am\nplease respond to hoshino @ leland . stanford . edu\nto : vince j kaminski / hou / ect @ ect , vkaminski @ aol . com\ncc :\nsubject : thank you for the e - mail .\ndear vince kaminski\nthank you so much for the kind invitation for the meeting .\ni have been always inspired by and having respect for the\nrecent revolutionary achievements of enron in the energy markets\nmy former employer mckinsey tokyo in fact featured\nyour company * s success in the last quarterly , and it clearly states\n( in japanese though ) that the quantitative research capability at enron\nis now at the world * s top level , which has been always behind the scene .\ni am extremely honored to receive the email from you and in fact\ninterested in knowing the opportunity of working in the energy field ;\nhowever , very unfortunately i will have to come back to japan , or at\nleast to the east asian region , upon graduation due to an inevitable\nfamily reason . my wife * s father passed away recently and an old\nmother - in - law is now left alone without relatives . i understand that\nenron has not yet embarked on the next big project of freeing\nthe outdated japanese energy market , ( which by the way i strongly\nhope ) so i may not have a very good chance of making contribution\nat your company right now .\nlastly , if you need a staff in tokyo in some future who understands\nboth the risk management analytics at the f 622 level and the local\nlanguage and business custome better than average , please contact\nme any time . i will be happy to assist as much as possible .\nyours sincerely ,\n/ ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~\ntaiichi hoshino\nph . d . candidate\nengineering economic systems & operations research\ngraduate school of engineering\nstanford university\nthe shadows apt # 171\n750 north shoreline blvd .\nmountain view ca 94043\ntel / fax ) 650 - 960 - 1993\n/ ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.523+0000", "entityId": 6571, "properties": {"text": "Subject: gpcm summary 1999\nthis has been a great year for rbac and gpcm .\nduring the year we have doubled to 10 the number of gpcm licensees .\nthis means we ' ve also doubled the number of wonderful people we ' ve trained\nand are supporting .\nand , i sincerely mean it when i say it has been a real pleasure working\nwith you all .\none of the things we stress when we are selling gpcm is that it takes a\nstrong commitment on the part of the licensee , a commitment to find skilled\nand dedicated people to make optimal use of this sophisticated tool . and ,\ni ' m happy to report that we have that quality in the gpcm teams we work\nwith .\nnext year we have some big challenges . we will be converting the system\nfrom office 97 to office 2000 and will also need to make sure it will run\nin the windows 2000 environment .\nwe will be adding new flexibility in defining our transportation zone price\ncurves to enable users , especially pipeline users , to test variations of\npricing strategies for their impacts on basis and utilization .\nwe will be adding a capability for modeling future ft contracting .\nwe will upgrade our existing database comparison program to allow you to\nselect those items you want to have automatically updated in your own\ndatabases .\nwe will continue to work with rdi to improve pipeline and storage\ninfrastructure representations , to provide interfaces between gasdat and\ngpcm , and to give you regular optional updates for your own databases .\nwe are beginning to plan out a new website dedicated to gpcm licensees ( and\npossibly prospects ) . we have acquired gpcm . rbac . com and gpcm . net for this\npurpose .\nin making these various changes , we look also to you , our existing\nlicensees , for enhancement and improvement ideas . we are planning to\nconduct interviews of our licensees during the next 30 - 60 days to find\nout what you like , but also what you would like to see improved , as well as\nsome new ideas for gpcm .\ni would like to thank the following people for their contributions to gpcm\nduring 1999 .\no liam leahy for his excellent marketing , sales , and planning support\no charles carr for his quality work on our website and support with subtle\nvisual basic programming issues\no richard berman for thorough research on design tools and skilled windows\nprogramming\no richard mcbride for continuing support and development of his emnet\noptimization program\no aaron and james brooks for design and production of the powerpoint\npipeline maps now available in gpcm\no mike farina and rdi for their continuing improvement of the gpcm data and\ngasdat database\no gpcm users who have found data bugs and reported them to use so that we\ncould get them corrected\no gpcm users who have suggested new features which would make gpcm a better\nproduct\no gpcm users who have given us sales leads during the year\no gpcm users who have used gpcm to help their companies make better plans\nand decisions , which is , after all , the purpose for which it was designed\nwe hope all of you have a wonderful holiday season and look forward to an\neven better year 2000 .\nbob brooks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.528+0000", "entityId": 6572, "properties": {"text": "Subject: re : firm power sale from phase i - issues\nvince / vasant ,\nit has been some time since we spoke at the san antonio conference .\nunfortunately , as soon as i got to india i was diagnosed wih a slip disc and\nhad to be in bed for a long time .\nin the mean time the team continued to work on the concept of a sale to\nanother state out of the dabhol plant . i have developed the concept whereby\nwe are now looking at a firm component ( over peak period ) , and an infirm\npower sale during the monsoon .\nthe series of quesions and comments from my team in te attachment below\nshould help you a bit to get a feel for the proposal . i am currently in\nhouston and reachable at 281 - 345 - 9870 . i maybe needing a surgery for the\nslip disc but am currently on medication hoping that surgery won ' t be needed .\ni would like to wis you all a very happy x ' mas and a great new year , and will\ncatch you in the new year in houston to discuss this wit you further . i can\nsee that soem structuring help will be needed on this , and would like to get\nsome help from your end .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n12 / 25 / 99 10 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli\n12 / 25 / 99 10 : 06 pm\nto : rajesh sivaraman / enron _ development\ncc : vivek kejriwal / enron _ development @ enron _ development , shubh\nshrivastava / enron _ development @ enron _ development , anshuman\nsubject : re : firm power sale from phase i - issues\nteam ,\nplease find my comments in the word document attached .\nplease go through this and run the sensitivities and get a good idea of way\nto structure thsi . having gone through the comments , i feel that it maybe\nnecessary to get some help on the structuring side . i will try to get you\nsome structuring expertise asap . in the mean time , i would like you all to\nfocus on getting resources together and working this to the next pass .\nlets see where we can get with this .\nregards ,\nsandeep .\nrajesh sivaraman\n12 / 24 / 99 10 : 06 pm\nto : sandeep kohli / enron _ development @ enron _ development\ncc : vivek kejriwal / enron _ development @ enron _ development , shubh\nshrivastava / enron _ development @ enron _ development , anshuman\nsubject : firm power sale from phase i - issues\nas discussed , please find enclosed a word document which essentially\ndiscusses most of the issues involved with a firm power sale of 50 mw from\nphase i , which would have to be sorted out with mseb .\nvivek\nwill put the tariff formula in the next mail )\nthe tariff structure & the issue list obviously need further refinement ,\nbefore we discuss it with mseb .\nlooking forward to your comments on both the issue list as well as the tariff\ncomputation .\nregards ,\nrajesh s", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.533+0000", "entityId": 6573, "properties": {"text": "Subject: research intelligence\nstinson ,\nplease , take a look at this memo and forward with changes , if any , to ross\nprevat .\nenron corp . research group publishes weekly newsletter , \" research\nintelligence , \" available to the internal users on the intranet , at the\nfollowing location : xxx . xxx . xxx . this site contains not only the new issues\nof the newsletter as they become available , but also the archived copies of\nthe previous editions .\neach issue of \" research intelligence \" contains a regular feature called\ntechnical corner which is devoted to discussion of various quantitative\ntechniques that can be applied across different business units of enron .\ni am sending you a binder with the archive copies of the technical corner\narticles . please , review these articles and let us know whether some of the\ntechniques discussed in them could find application in your area . we shall be\nglad to use our technical expertise to support your business .\nbinders would go to skilling , sutton , hannon , baxter , delainey , bowen , w .\ncurry , buy , bowen , overdyke , whalley , shankman , pai , etc . this is a partial\nlist . i think we should ask the head of each unit to make recommendations .\nthanks .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.538+0000", "entityId": 6574, "properties": {"text": "Subject: natural gas production\nvince -\ni spoke with roy kass of the energy information agency this morning . apart\nfrom clarifying the timeliness , or lack thereof , of the published\nstate - specific wellhead production estimates , he indicates their scientists\nfind severe weather in the fields ( freezes , hurricanes ) to be a far more\nsignificant issue in production , and in wellhead prices , than is severe\nweather in the northeast , for instance . also , he agrees with you as to there\nbeing strictly increasing marginal costs in production , there being a rich\ntexture of wells in terms of their efficiency , technologies , maintenance and\ninvestment issues .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.542+0000", "entityId": 6575, "properties": {"text": "Subject: ljm put valuation\nwes :\nattached is a spreadsheet for the valuation of the rthm put position . i\nshould be in on tuesday , so feel free to give me a call at x 34748 .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.547+0000", "entityId": 6576, "properties": {"text": "Subject: announcing tff 2000\nhappy new year ! just a note to announce the dates for this years texas\nfinance festival . this year we are meeting earlier in april , in san\nantonio , and start the program on friday . please put the date on you\ncalendar and send in your registration forms asap as space at the\nconference is limited . i also encourage you to register with the hotel\nimmediately as we were able to reserve only a limited number of rooms at\nthe reduced conference rate .\nhope to see you all there ! more fun in texas .\njohn\n- announcerev . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.552+0000", "entityId": 6577, "properties": {"text": "Subject: re : argentina modelling\nmichael ,\nsorry , i was out around the holidays .\ni shall be glad to meet with you in the lst week\nof january . please call me ( 3 - 3848 ) or my assistant ,\nshirley crenshaw , 3 - 5290 .\nvince\nmichael guerriero @ enron _ development\n12 / 20 / 99 02 : 31 pm\nto : vince j kaminski @ ect\ncc :\nsubject : argentina modelling\ni am responsible for our argentina operation and would like to discuss some\nmodelling issues with you . could you be available wednesday for a meeting .\nthanks\nmfg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.556+0000", "entityId": 6578, "properties": {"text": "Subject: re : volatility conference\ntodd ,\nthanks for the invitation to speak on the panel . it was a real pleasure\nto join you and other leading professionals in the energy area in the\ndiscussion\non the state of the electricity markets in the us .\ni want to wish you a very happy and successful new year .\nvince kaminski\n\" strauss , todd \" on 12 / 20 / 99 03 : 41 : 27 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : volatility conference\nvince - -\nthanks for participating in the infocast volatility conference in houston 10\ndays ago . your penetrating analysis of the current state of electricity\nmarkets , and what the trends may be , was a very useful contribution to the\nconference .\nhappy holidays , and wishing you a healthy and prosperous new year / century\n/ millenium .\ntodd strauss\nprincipal\nphb hagler bailly , inc . _ _ _ _ _ _ _\nmanagement and economic consultants\n1776 eye street , n . w .\nwashington , dc 20006 - 3700\n( 202 ) 828 - 3964\n( 202 ) 296 - 3858 ( facsimile )\nthis electronic message transmission , including any attachments , is intended\nonly for the use of the individual or entity to which it is addressed and\nmay contain information that is privileged , confidential and exempt from\ndisclosure under applicable law . if you are not the intended recipient or\nthe employee or agent responsible for delivering this transmission to the\nintended recipient , you are hereby notified that any review , copying ,\ndissemination , distribution or the taking of any action in reliance on the\ncontents of this transmission is strictly prohibited . if you have received\nthis transmission in error please notify me by telephone or by electronic\nmail immediately - - thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.561+0000", "entityId": 6579, "properties": {"text": "Subject: re : happy new year !\nshannon ,\nthanks . the same to you .\nsorry to have missed your class . i had a very bad case\nof flu with some additional complications . i shall be glad to make\na presentation on the same topic on another occasion .\nvince\n\" shannon burchett \" on 12 / 28 / 99 12 : 15 : 59 pm\nplease respond to \" shannon burchett \"\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : happy new year !\nvince ,\nwishing you a very happy and prosperous new millennium !\nhappy new year ,\nshannon\nrisk limited corporation\nbox 612666 dallas , texas 75261 usa tel : 972 . 245 . 8300 fax : 972 . 245 . 8318\nwww . risklimited . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.566+0000", "entityId": 6580, "properties": {"text": "Subject: stinson out on jan . 4 , 2000\nshirley :\ni am planning to take a vacation day on jan . 4 .\nthanks ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.570+0000", "entityId": 6581, "properties": {"text": "Subject: re : daily lunches\nkevin ,\nplease , talk to jeff shankman ' s secretary about including all the research\ngroup members on\nthe 31 st floor in the company provided lunches ( when they are available ) .\nif an additional lunch is needed from time to time , it ' s fine , but it should\nbe seen as a something done\nunder exceptional circumstances .\nvince\nkevin g moore\n12 / 20 / 99 12 : 10 pm\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\ncc :\nsubject : daily lunches\nhi vince ,\nit has been brought to my attention that several\nmembers of the weather team may require a\nlunch from time to time .\nthe person right now is trisha tlapek she\nhas to be at her desk .\nplease , could i provide daily lunches for her .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.575+0000", "entityId": 6582, "properties": {"text": "Subject: program attached ; march ny ro conference / participation\nconfirmation\nthe current version of the conference program is attached\nplease confirm your participation as speaker ( and confirm your presentation\ntitle as listed on the attached conference program ) by next tuesday . the\nprogram is about to be sent to the printers next week\nplease cc your reply also to gordon . sick @ rogroup . com\nlenos\n- nymarch 2000 conferencetimes . doc\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.579+0000", "entityId": 6583, "properties": {"text": "Subject: re : program attached ; march ny ro conference / participation\nconfirmation\nlenos ,\nthank you again for the invitation . i shall be glad\nto attend and speak on the topic indicated in the program .\none correction : i am a vp .\nthanks\nvince\nlenos trigeorgis on 01 / 01 / 2000 01 : 17 : 11 pm\nto : gordon . sick @ rogroup . com\ncc : gordon . sick @ rogroup . com ( bcc : vince j kaminski / hou / ect )\nsubject : program attached ; march ny ro conference / participation confirmation\nthe current version of the conference program is attached\nplease confirm your participation as speaker ( and confirm your presentation\ntitle as listed on the attached conference program ) by next tuesday . the\nprogram is about to be sent to the printers next week\nplease cc your reply also to gordon . sick @ rogroup . com\nlenos\n- nymarch 2000 conferencetimes . doc\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.584+0000", "entityId": 6584, "properties": {"text": "Subject: re : credit risk technical article\nben ,\nlet me review it one more time from this angle . if you don ' t hear from me by\nwednesday ,\nit ' s ok to post it .\nvince\nbenjamin parsons\n01 / 04 / 2000 04 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc : ross prevatt / hou / ect @ ect , bijoya banerjea / lon / ect @ ect\nsubject : credit risk technical article\nvince ,\nbijoya is currently working on the development of the website for the new\ncredit trading initiative , and we thought it would be a good idea to put my\nrecent technical article \" measuring credit risk \" on it . are you okay with\nthis release , or does it contain any proprietary information we should edit\nout ?\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.588+0000", "entityId": 6585, "properties": {"text": "Subject: amerada hess day rate hedge numbers\nattached are the historical numbers for the semi - submersibles 4 th and 5 th\ngeneration day rates . their price is 155 , 000 / day for the next 4 years . i\nwould think that a floor of $ 100 , 000 would be the place to start jan 1 , 2001\nthrough dec 31 , 2004 . we need to know the call strike that would make it\ncostless .\ni plan on making some examples discussion purposes to discuss with them on\nfriday of this week . i will update you asap on the balance of day rate\nprices . let me know what else you will need to prepare the statistical\nanalysis . the numbers include highs and lows ; let me know your ideas on how\nto address this in the quote .\nthanks ,\njohn\n30395", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.595+0000", "entityId": 6586, "properties": {"text": "Subject: re : program attached ; march ny ro conference / participation\nconfirmation\nvince . thanks very much\nat 07 : 24 d _ 01 / 04 / 00 - 0600 , you wrote :\n>\n>\n> lenos ,\n>\n> thank you again for the invitation . i shall be glad\n> to attend and speak on the topic indicated in the program .\n> one correction : i am a vp .\n>\n> thanks\n>\n> vince\n>\n>\n>\n>\n> lenos trigeorgis on 01 / 01 / 2000 01 : 17 : 11 pm\n>\n> to : gordon . sick @ rogroup . com\n> cc : gordon . sick @ rogroup . com ( bcc : vince j kaminski / hou / ect )\n> subject : program attached ; march ny ro conference / participation\nconfirmation\n>\n>\n>\n> the current version of the conference program is attached\n>\n> please confirm your participation as speaker ( and confirm your presentation\n> title as listed on the attached conference program ) by next tuesday . the\n> program is about to be sent to the printers next week\n>\n> please cc your reply also to gordon . sick @ rogroup . com\n>\n> lenos\n>\n>\n> attachment converted :\n>\n>\n>\n> lenos trigeorgis\n> professor of finance\n> university of cyprus\n> dept of business\n> 75 kallipoleos , po box 20537\n> cy 1678 nicosia cyprus\n>\n> tel : + 357 2 892261\n> fax : 339063\n>\n>\n>\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.599+0000", "entityId": 6587, "properties": {"text": "Subject: petition for summer internship\nceleste ,\ni am recommending jason sokolov for summer internship with enron .\njason is currently working part - time for mike roberts and makes\nvery valuable contribution to a number on - going projects .\nwe are very happy with his performance and see him as a valuable future\nenron employee .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 05 / 2000\n07 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jason sokolov 01 / 04 / 2000 01 : 32 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : petition for summer internship\nvince :\nas we discussed earlier , i attached the copy of the petition for my summer\ninternship with enron analyst and associate group .\ni also have the hard copy of the letter , which i will deliver to you\npresonally .\ni am looking forward to , finally , become an official enron employee . thank\nyou very much for your valuable contributions to\nmy experience with the company .\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.604+0000", "entityId": 6588, "properties": {"text": "Subject: petition for summer internship\nvince :\nas we discussed earlier , i attached the copy of the petition for my summer\ninternship with enron analyst and associate group .\ni also have the hard copy of the letter , which i will deliver to you\npresonally .\ni am looking forward to , finally , become an official enron employee . thank\nyou very much for your valuable contributions to\nmy experience with the company .\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.612+0000", "entityId": 6589, "properties": {"text": "Subject: research group \" millenium \" party\nhello all !\nsince we all seemed to survive the \" y 2 k \" bug , we are going to celebrate !\nour \" holiday millenium \" party will be this saturday .\nsee attached for information , if you have questions , please call me at 3 - 5290 .\nsee you there !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.620+0000", "entityId": 6590, "properties": {"text": "Subject: new order : palm vx for grant masson\nlyn :\nplease order for me one palm pilot vx including docking cradle ( that ' s the\npalm v with 8 mb of ram ) .\ncompany number is : 0011\nrc is : 100038\nthanks ,\ngrant masson\nv . p . research\neb 1966\nx 34768", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.626+0000", "entityId": 6591, "properties": {"text": "Subject: color copier\ni ' m so sorry !\ncolor printer .\nthanks\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 01 / 05 / 2000 01 : 27\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n01 / 05 / 2000 11 : 30 am\nto : lyn malina / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , william\nsmith / corp / enron @ enron\ncc :\nsubject : color copier\nhello lyn ,\nhow are you ? certainly hope you enjoyed the holidays .\ni have not received the color printer as of yet .\ncould you please provide me with information concerning this .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.631+0000", "entityId": 6592, "properties": {"text": "Subject: flat screens\nhello ,\nwe are still in need of flat screens .\nwe need two for trisha tlapek and two for michael sergeev .\ntheir locations are eb 3132 b and eb 3131 b .\nwe have been waiting for these screens for some time now .\nwill you please provide me with the e . t . a .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 01 / 05 / 2000 01 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 15 / 99 10 : 38 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : flat screens\ne . t . a .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.636+0000", "entityId": 6593, "properties": {"text": "Subject: re : lap - top\nkevin :\ntricia asked hector ( hardware tech ) to hold the machine until today and that\nshe would call with a good time to drop off the laptop . the laptop is\nconfigured and ready to go . please advise .\nregards ,\nsteve andrews\nkevin g moore\n01 / 05 / 2000 11 : 26 am\nto : stephen andrews / hou / ect @ ect , patricia tlapek / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : lap - top\nhello ,\nwe ordered a lap - top for trisha tlapek and we are still\nwaiting . .\ncould you please provide me with information concerning\nthis .\n# 991815 .\nthanks\nkevin moore\nx 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.640+0000", "entityId": 6594, "properties": {"text": "Subject: color copier\nhello lyn ,\nhow are you ? certainly hope you enjoyed the holidays .\ni have not received the color printer as of yet .\ncould you please provide me with information concerning this .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.645+0000", "entityId": 6595, "properties": {"text": "Subject: re : revision of lst request\ni approve of the attached request .\n- - stinson gibner\nx 34748\nfrom : information risk management 12 / 30 / 99 12 : 02 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : revision of lst request\nsorry don ' t know if you can see the request below . but , william smith is\nrequest access to the o : research drive . need your approval or rejection .\nthanks\ninformation risk management\nfor your approval .\ntori\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n12 / 30 / 99 12 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\ndirectory line item pending access processing\ndirectory name : o : \\ research \\ ( all folders )\nservice type : grant\nexpiration date :\ncomments : i need to be able to save / modify files in these folders . to make it\neasier on you , you can just copy whatever rights kevin moore ( kmoore 2 ) has .\nthose will be all that i will need .\nsecurity processing\nprocessing status :\ne - mail to requestor :\ncomments / justification :\ngeneral information request : wsmh - 4 esnva\nrequested by : william smith / corp / enron phone : 713 - 345 - 8322\nrequested for : william smith / corp / enron employee type :\ncompany : 0011 rc # : 100038\npriority : normal\ncomments / justification :\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1 information risk management 12 / 22 / 99 12 : 35 : 11 pm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.649+0000", "entityId": 6596, "properties": {"text": "Subject: re : argentina modelling\nmichael ,\nwhat about 1 : 00 p . m . thursday ?\nvince\nmichael guerriero @ enron _ development\n01 / 05 / 2000 05 : 47 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : argentina modelling\ncould we meet tomorrow afternoon ?\nmfg\nvince j kaminski @ ect\n12 / 30 / 99 06 : 41 pm\nto : michael guerriero / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : argentina modelling\nmichael ,\nsorry , i was out around the holidays .\ni shall be glad to meet with you in the lst week\nof january . please call me ( 3 - 3848 ) or my assistant ,\nshirley crenshaw , 3 - 5290 .\nvince\nmichael guerriero @ enron _ development\n12 / 20 / 99 02 : 31 pm\nto : vince j kaminski @ ect\ncc :\nsubject : argentina modelling\ni am responsible for our argentina operation and would like to discuss some\nmodelling issues with you . could you be available wednesday for a meeting .\nthanks\nmfg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.654+0000", "entityId": 6597, "properties": {"text": "Subject: enron on line and tracking\nthis meeting has been rescheduled for :\nfriday , january 7 th\n2 : 15 - 3 : 15 pm\neb 3084\nif you have questions please call george smith @ 36993\nor alex @ 57389 . i will keep you informed of any changes .\nthanks\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex saldana / hou / ect on 01 / 05 / 2000 12 : 10\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex saldana\n01 / 05 / 2000 11 : 30 am\nto : george smith / hou / ect @ ect , edward terry / hou / ect @ ect , katherine l\nkelly / hou / ect @ ect , robert superty / hou / ect @ ect , randall l gay / hou / ect @ ect ,\nhunter s shively / hou / ect @ ect , scott neal / hou / ect @ ect , robert\nshring / hou / ect @ ect\ncc : heather choate / hou / ect @ ect , kimberly brown / hou / ect @ ect , airam\narteaga / hou / ect @ ect , brenda flores - cuellar / hou / ect @ ect , elizabeth\nrivera / corp / enron @ enron\nsubject : enron on line and tracking\nplease plan to attend the above mentioned meeting :\nthursday , january 6 th\n3 : 30 - 4 : 30 pm\neb 3013\nif you have any questions please call george smith @ 36993 ,\nfor any scheduling conflicts call me at @ 57389 .\nthanks\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.659+0000", "entityId": 6598, "properties": {"text": "Subject: conference on risk management : the state of the art , january\n13 - 14 , 2000\nwe confirm receipt of your registration for the above - mentioned conference .\nthe conference will be held at new york university stern school of business ,\nhenry kaufman management center , 44 west 4 th street , new york city .\nregistration and continental breakfast will begin at 8 : 30 a . m . , when you will\nreceive the conference material and a name tag . meanwhile , if you have any\nquestions regarding the conference , please do not hesitate to contact me .\nmary t . jaffier\nnyu salomon center\nstern school of business\n44 west 4 th street , suite 9 - 160\nnew york , ny 10012\ntel : 212 - 998 - 0706\nfax : 212 - 995 - 4220\nhttp : / / www . stern . nyu . edu / salomon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.663+0000", "entityId": 6599, "properties": {"text": "Subject: enterprise wide risk management meeting , january 21\nthis is to confirm the meeting will take place on friday , january 21 at\n12 : 00 - 5 : 00 p , at the doubletree hotel , 400 dallas street .\nthe meeting room is suite 407 .\nthose in attendance :\nrick buy\nted murphy\nrick carson\nvince kaminski\ndave gorte\nkevin kindall\ngrant masson\nlunch will begin at 12 : 00 noon and a snack will be served at 2 : 30 p .\nplease give me a call with questions at x 31881 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.668+0000", "entityId": 6600, "properties": {"text": "Subject: re : flat screens\nf . y . i .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 01 / 07 / 2000 06 : 03\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n01 / 07 / 2000 06 : 03 am\nto : tommy garza / hou / ect @ ect\ncc :\nsubject : re : flat screens\nthanks tommy ,\nthe locations are correct .\neb 3131 b and eb 3132 b .\nthe persons at the locations\nare trisha tlapek and michael sergeev .\nthanks\nalso we need a computer for roman zadorozhny\nlocation ebl 972 b .\nplease inform me on this . . . . . . . . .\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.672+0000", "entityId": 6601, "properties": {"text": "Subject: re : natural gas storage item\nvince -\nsomething very interesting about natural gas storage ( from the class ) .\nthe industry is rapidly adopting what are called \" operational balancing\nagreements , \" where the pipeline contracts with the producers and ldc ' s\n( public utilities ) to handle all \" imbalances \" in shipping , namely all\nproduction shortfalls or overages or consumption likewise . shippers then\nalways \" book \" what is scheduled to happen , and not what actually happens .\nthe end result is that storage facillities associated with production regions\nare used to smooth out not only weekday - weekend seasonal patterns ( the\nwell - known \" parking \" ) but to insure issues of wellhead output as well .\ncutting to the chase , storage facilities in producing regions are operated to\ninsure the integrity of the pipeline system , and estimated marketed\nproduction is likely to be a better estimate of actual flow at the pipeline ' s\nreceipt meter than is production less local storage .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.676+0000", "entityId": 6602, "properties": {"text": "Subject: texas finance festival registration\nthe attached is the registration form and information for the texas finance\nfestival which will be held on april 7 - 8 , 2000 in san antonio .\ncindy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cindy justice / hou / ect on 01 / 06 / 2000 08 : 35\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 01 / 03 / 2000 10 : 23 : 21 am\nto : cindy justice / hou / ect @ ect\ncc :\nsubject : good morning !\ncindy ,\ni tried to send this out earlier and it bounced back . hope it makes it\nthis time .\njohn\n- announcerev . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.681+0000", "entityId": 6603, "properties": {"text": "Subject: re : re : conference volume\nhi vince ,\ni am resending you this request by dr . jacque for a paper . they are\nexpecting something by jan 22 . should we sit down and decide on what to put\nin a short paper ( i think their limit was 30 pages , but that is impossible - -\ni think a few pages should suffice ) .\nregards , and happy new year ,\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 01 / 06 / 2000\n08 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlaurent jacque on 12 / 13 / 99 03 : 29 : 26 pm\nplease respond to ljacque @ infonet . tufts . edu\nto : vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : re : re : conference volume\ndear dr . shanboghe :\ni certainly understand that it would be difficult for you to\ncontribute a chapter . i thought of an alternative : would dr . kaminski be\nwilling to allow us to reprint his article ( in an abridged form ) on \" energy\nexotic options \" published in his excellent book \" managing energy price risk \"\nas i would really like to have a contribution from enron on energy\nderivatives . would you be willing to talk to dr . kaminski about my proposal ?\nin any event i appreciate your interest in the conference and i only\nregret that hurricane floyd prevented us from meeting in person .\nwith very best wishes in the new year / millenium\nlaurent jacque\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nlaurent l . jacque\nprofessor\ninternational finance & banking\ndirector\ninternational business studies program\nthe fletcher school of law and diplomacy\ntufts university\nmedford , ma 02155\n( 617 ) 627 - 5982 tel\n( 617 ) 627 - 3712 fax\nljacque @ infonet . tufts . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.686+0000", "entityId": 6604, "properties": {"text": "Subject: resume for insurance candidate\nhi vince ,\n` this person was recommended by prof . macminn , and he is interested .\nhe seems to have the quantitative and insurance background . i am going to\ncall him again .\nwould you like to talk with him on the phone ?\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 01 / 06 / 2000\n08 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" spudeck , ray e . ms - res \" on 12 / 29 / 99 02 : 24 : 09 pm\nto : vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : my resume\nvasant ,\ni enjoyed our telephone conversation this morning . from our conversation ,\nit sounds like enron is moving out on the cutting edge of risk transfer and\ninsurance finance . in my mind , there seem to be a myriad number of\ninteresting opportunities moving forward . as well , i see a number of issues\nthat would need to be resolved . frankly , i find that quite exciting . i\nleft academics largely because i wanted to move into a more \" front line \"\ncareer . while i ' ve enjoyed my work here at the naic , it is still not where i\nultimately see myself . i gathered from your comments some concern about my\nbeing too senior in the organization . if i am interpreting you correctly ,\nyou are concerned about hands on technical work . i enjoy that immensely and\nsome of the strengths i bring to the table are the ability to think\ncreatively about solving financial problems and the the ability to make data\ntell the underlying story .\ni look forward to talking to you next week . i just found out that our\noffice building will be closed monday , so i will not be in until tuesday\na . m .\nray spudeck\nsr . research associate\n( 816 ) 889 - 4417\nrspudeck @ naic . org\n>\n- resumeres . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.690+0000", "entityId": 6605, "properties": {"text": "Subject: re : managing energy price risk - 2 nd edition\njanette ,\nthanks .\nvince kaminski\nenron corp .\n1400 smith street , room 1962\nhouston , tx 77251 - 1188\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2599\ne - mail : vkamins @ enron . com\nvince\n\" janette jagernauth \" on 01 / 06 / 2000 05 : 49 : 27 am\nplease respond to \" janette jagernauth \"\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : managing energy price risk - 2 nd edition\ndear mr kaminski ,\ni do hope that you had a pleasant christmas and new year , like ourselves at\nrisk .\ni am currently producing the author cards which you discussed with my\nmanager , paula soutinho , and would like to know where you would like them\ndelivered to . i have ordered a quantity of 200 which i hope is to your\nsatisfaction .\nif you have any queries please do not hesitate in contacting either myself or\npaula ,\nkind regards\njanette jagernauth\nmarketing assistant - risk books\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.695+0000", "entityId": 6606, "properties": {"text": "Subject: new pc\nhi lyn :\nalex huang has requested a new pc and vince kaminski has ok ' d it . please\norder the computer as listed below in alex ' s request .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 07 / 2000\n01 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 07 / 2000 12 : 12 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nshirley ,\nok .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 07 / 2000\n12 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 07 / 2000 08 : 28 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : new pc\nhi shirley ,\ni would like to request for a new pc . my current pc is quite old with not\nenough memory . twice\ni ran out of memory and had to have it people coming to clean it for me .\ntheir suggestion is\nto either get a new hard drive or a new pc . given that dell has pentiumc iii\nprocessor at 800 mhz\non market , i would like to request a pc with process at 500 mhz or higher\nlevel .\nthank you very much .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.700+0000", "entityId": 6607, "properties": {"text": "Subject: new pc\nshirley ,\nok .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 07 / 2000\n12 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 07 / 2000 08 : 28 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : new pc\nhi shirley ,\ni would like to request for a new pc . my current pc is quite old with not\nenough memory . twice\ni ran out of memory and had to have it people coming to clean it for me .\ntheir suggestion is\nto either get a new hard drive or a new pc . given that dell has pentiumc iii\nprocessor at 800 mhz\non market , i would like to request a pc with process at 500 mhz or higher\nlevel .\nthank you very much .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.705+0000", "entityId": 6608, "properties": {"text": "Subject: day rate hedge\nvince ,\nincluded is the rest of the prices for 4 th and 5 th generation\nsemi - submersibles in the gulf of mexico . the only additional data is from\nsept 99 through dec 99 .\nchris and i look forward to your analysis on tuesday .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.713+0000", "entityId": 6609, "properties": {"text": "Subject: re : credit article\ndear vince\nthank you very much for the information .\ni will get in touch with them today and will keep you informed as to the\noutcome .\nregards ,\nkatja\nvince j kaminski\n06 / 01 / 2000 19 : 52\nto : katja schilling / lon / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : credit article\nkatja ,\nrisk magazine has the copyright . you have to contact them to get the\npermission to use this\nfor external users .\nyou can contact :\nsh ? n millie\nrisk books\n28 - 29 haymarket\nlondon swly 4 rx\npone : 44 ( 0 ) 171 484 9740\nfax : 44 ( 0 ) 171 484 9758\ne - mail : shan @ risk . co . uk\nwww . riskpublications . com\nand discuss the legal aspects with her .\nvince\nvasant shanbhogue\n01 / 06 / 2000 08 : 28 am\nto : katja schilling / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : credit article\ni do not think minor changes would allow you to just use the same file . you\nwill have to check with risk . this is risk books , a specialist division of\nrisk publications in london . address : haymarket house , 28 - 29 haymarket ,\nlondon swly 4 rx .\nthe publication was in a book , entitled \" credit derivatives : applications for\nrisk management , investment and portfolio optimisation , \" publishd in 1998 . i\nam not sure if a lawyer was involved , maybe vince will know .\nvasant\nkatja schilling\n01 / 05 / 2000 05 : 47 am\nto : vasant shanbhogue / hou / ect @ ect\ncc : bijoya banerjea / lon / ect @ ect\nsubject : credit article\nhello vasant !\nbijoya has updated me on the discussion you have been having on the article\nfrom risk magazine about credit .\nwe have found that the attachments you sent her are actually not\nword - for - word the same as the published version we have - the changes are\nonly minor , wever , and have not altered the article in any way .\nmy question now concerns the copyrights . since the version you sent is\nslightly different , do you think this gives us the freedom to publish it\nwithout the consent of risk ?\nand if not - can you tell me if it was published by risk uk or risk in the\nstates ? and which issue was it ? i just want to have all of the details if i\nneed to call someone at the magazine . . .\nalso - was there a lawyer involved in the publication procedure , or was this\nhandled by london / houston pr ? or by vince himself ?\nsorry about all of the questions . . . i just want to avoid problems well in\nadvance .\nthank you !\nregards ,\nkatja", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.720+0000", "entityId": 6610, "properties": {"text": "Subject: my resume\nhi vince ,\ni spoke with ray again , and he seems to have the background necessary to\nwork with the insurance group here .\nhe is not an actuary , but he can work with data . would you mind calling him\non the phone sometime next week ?\nplease let me know what time you would call him , so i can let him know . once\nyou speak with him , then maybe we can\nbring him down for interviews , if you think it appropriate .\nhis business phone number is 816 889 4417\nthanks ,\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 01 / 07 / 2000\n11 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" spudeck , ray e . ms - res \" on 12 / 29 / 99 02 : 24 : 09 pm\nto : vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : my resume\nvasant ,\ni enjoyed our telephone conversation this morning . from our conversation ,\nit sounds like enron is moving out on the cutting edge of risk transfer and\ninsurance finance . in my mind , there seem to be a myriad number of\ninteresting opportunities moving forward . as well , i see a number of issues\nthat would need to be resolved . frankly , i find that quite exciting . i\nleft academics largely because i wanted to move into a more \" front line \"\ncareer . while i ' ve enjoyed my work here at the naic , it is still not where i\nultimately see myself . i gathered from your comments some concern about my\nbeing too senior in the organization . if i am interpreting you correctly ,\nyou are concerned about hands on technical work . i enjoy that immensely and\nsome of the strengths i bring to the table are the ability to think\ncreatively about solving financial problems and the the ability to make data\ntell the underlying story .\ni look forward to talking to you next week . i just found out that our\noffice building will be closed monday , so i will not be in until tuesday\na . m .\nray spudeck\nsr . research associate\n( 816 ) 889 - 4417\nrspudeck @ naic . org\n>\n- resumeres . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.726+0000", "entityId": 6611, "properties": {"text": "Subject: re : executive program on credit risk\nvince ,\nnext time this program will be offered in ca in october ( see below ) .\nlet me know what you think ,\ntanya .\n\" isero , alicia \" on 01 / 07 / 2000 12 : 38 : 12 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : re : executive program on credit risk\nthank you for your message . yes , it will be offered in california at\nstanford , but not until october 15 - 20 . if you look on our website :\nwww . gsb . stanford . edu / exed\n( click on programs )\nit will give you the information for both programs ( london and stanford ) .\nregards ,\nalicia steinaecker isero\nprogram manager , executive education\nstanford university\ngraduate school of business\nstanford , ca 94305 - 5015\nphone : 650 - 723 - 2922\nfax : 650 - 723 - 3950\nemail : isero _ alicia @ gsb . stanford . edu\n- - - - - original message - - - - -\nfrom : tanya tamarchenko [ smtp : ttamarc @ ect . enron . com ]\nsent : thursday , january 06 , 2000 3 : 23 pm\nto : isero _ alicia @ gsb . stanford . edu\nsubject : re : executive program on credit risk\nhi , alicia ,\ni work for enron research and i would like to take the executive\nprogram on\ncredit risk .\ni am trying to find out if this program is going to be offered in\ncalifornia\nsoon . is the date known ?\ncan you , please , let me know .\nappreciate it ,\ntanya tamarchenko\n11 / 19 / 99 01 : 37 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : re : executive program on credit risk ( document link :\ntanya\ntamarchenko )\n\" isero , alicia \" on 11 / 10 / 99 06 : 10 : 57\npm\nto : \" ' credit risk mailing ' \"\ncc : \" weidell , anna \" , \" sheehan ,\nalice \"\n( bcc : tanya\ntamarchenko / hou / ect )\nsubject : executive program on credit risk\nsubject : announcement : executive program on credit risk modeling\ncredit risk modeling for financial institutions\nfebruary 27 - march 2 , 2000\nin london , at the lanesborough hotel\nrisk management specialists , stanford business school professors of\nfinance\ndarrell duffie and kenneth singleton will be repeating their\nsuccessful\nexecutive program on credit risk pricing and risk management for\nfinancial\ninstitutions . the course is created for risk managers , research\nstaff , and\ntraders with responsibility for credit risk or credit - related\nproducts ,\nincluding bond and loan portfolios , otc derivative portfolios , and\ncredit\nderivatives .\nthis program includes :\n* valuation models for corporate and sovereign bonds , defaultable\notc\nderivatives , and credit derivatives\n* models for measuring credit risk , with correlation , for\nportfolios\n* analyses of the empirical behavior of returns and credit risk\n* the strengths and limitations of current practice in modeling\ncredit\nrisk\n* practical issues in implementing credit modeling systems\napplication form :\ncredit risk modeling for financial institutions\nlondon , february 27 - march 2 , 2000\nthis form may be completed and returned by email , or may be printed\nand sent\nby fax to :\nstanford gsb executive education programs\nfax number : 650 723 3950\nyou may also apply and see more detailed information by visiting our\nweb\nsite at :\nhttp : / / www . gsb . stanford . edu / eep / crm\napplications will be acknowledged upon receipt . if you have not\nreceived an\nacknowledgement within two weeks , please contact us .\nplease complete all sections . all information is kept strictly\nconfidential .\nname :\nput an x beside one , please : male : female :\ncitizenship :\njob title :\ncompany :\nyour company ' s main activity :\nbusiness mailing address :\nbusiness phone ( all codes please ) :\nbusiness fax :\nemail address :\nhome address :\nhome phone :\nnickname for identification badge :\nemergency contact name :\nemergency contact phone :\ntitle of person to whom you report :\nyour job responsibilities and experience related to this course :\n( please\nprovide a brief job summary here , or attach and send a biographical\nsummary\ncontaining information relevant to your purpose and qualifications\nfor the\ncourse . )\ncollege or university education : please list , by degree :\ncollege or university dates degree granted\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplease note :\nall classes and discussions are conducted in english .\nin order to reserve a place in the course , the program fee of\nus $ 6 , 500 is\ndue upon notification of acceptance . this fee covers the tuition ,\nmost\nmeals , and all course materials ( including a proprietary manuscript\non\ncredit risk pricing and measurement ) . the program classes will be\nheld at\nthe lanesborough hotel at hyde park corner , london . hotel\naccommodations\nare not included .\nour refund policy is available upon request .\nplease state the source from which you heard about this course :\nname and date :\nif you would like a hard copy brochure and application form , please\ncontact :\n( make sure to include your mailing address )\nalicia steinaecker isero\nprogram manager , executive education\nstanford university\ngraduate school of business\nstanford , ca 94305 - 5015\nphone : 650 - 723 - 2922\nfax : 650 - 723 - 3950\nemail : isero _ alicia @ gsb . stanford . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.730+0000", "entityId": 6612, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n01 / 07 / 2000 03 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : vacation\nvince :\nif it is alright , i would like to take vacation on friday , january 14 th and\nfriday , february 4 .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.735+0000", "entityId": 6613, "properties": {"text": "Subject: re : vincent tang\nvince - thanks so much for the job description . i forwarded it to our legal\ncounsel for their review , and they were very pleased with it .\nthey said it really helped them to understand what vincent is actually doing ,\nwhich will enable them to better prepare his case .\nthanks again .\ncandace\nvince j kaminski\n01 / 07 / 2000 12 : 20 pm\nto : candace womack / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : vincent tang\ncandace , .\nsorry for additional delay . editing took a long time .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 07 / 2000\n12 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 04 / 2000 12 : 11 pm\nto : candace womack / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : vincent tang\ncandace ,\nsorry for the delay . i shall edit the job description and forward it to you\nlater today .\nvince\ncandace womack\n01 / 04 / 2000 11 : 24 am\nto : vince j kaminski / hou / ect @ ect\ncc : rebecca shelp , \" r . van ravenswaay \"\n, margaret daffin / hou / ect @ ect , jane\nallen / hou / ect @ ect\nsubject : vincent tang\nvince - will you please review the following job description which tindall research analyst )\noverview : provides research support for specific projects and programs .\nessential functions :\nprojects may involve collecting and analyses data to formulate\nrecommendations , policies or solutions .\nmarginal functions :\nmay involve mathematical or simulation models of problem for solution by\ncomputers or other methods : analyzes problem in terms of information and\nconceptualizes and defines problem .\nstudies information and selects plan from competitive proposals that\naffords maximum probability of profit or effectiveness in relation to\ncost or risk .\nprepares model of problem in form of one or several equations that\nrelates constants and variables , restrictions , alternatives , conflicting\nobjectives and their numerical parameters .\ndefines data requirements and gathers and validates information applying\njudgment and statistical tests .\nspecifies manipulative or computational methods to be applied to model .\nperforms validation and testing of model to ensure adequacy , or\ndetermines need for reformulation .\nprepares reports to management defining problem , evaluation , and\npossible solution .\nevaluates implementation and effectiveness of research .\nmay design , conduct , and evaluate experimental operational models where\ninsufficient data exists to formulate model .\nmay specialize in research and preparation of contract proposals\nspecifying competence of organization to perform research , development ,\nor production work .\nmay develop and apply time and cost networks , such as program evaluation\nand review techniques ( pert ) , to plan and control large projects .\nmay work in association with engineers , scientists , and management\npersonnel in business , government , health , transportation , energy ,\nmanufacturing , environmental sciences or other technologies .\ni look forward to your response .\nrebecca shelp\nlegal assistant\ntindall & foster , p . c .\n600 travis , suite 2800\nhouston , texas 77002 - 3094\ntelephone : ( 713 ) 229 - 0636 ext . 101\nfax : ( 713 ) 228 - 1303\nemail : rshelp @ tindallfoster . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.740+0000", "entityId": 6614, "properties": {"text": "Subject: my trip to india\ntentative plan is like this :\nleave houston : sun . 9 th to arrive bombay mon late night .\nleave bombay for hyderabad fri 14 th .\nleave for vijayawada 16 th night .\nreturn to bombay and leave bombay on 19 th wed .\nback to houston on thursday .\ni will be taking vacation on 17 th & 18 th visiting my family . i don ' t have a\nnumber for bombay , but i should be with sandeep kohli ( cell # below ) .\ncontact # s :\nbombay 011 - 91 - 982 - 1068238 ( to 14 th )\nhyderabad 011 - 91 - 40 - 7114833 ( 15 - 16 th )\nvijayawada 011 - 91 - 866 - 430928 ( 17 - 18 th )\nhopefully , there won ' t be too much of excitement on the flights , especially\nin india !\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.745+0000", "entityId": 6615, "properties": {"text": "Subject: re : stinson vacation in feb .\nstinson ,\nn o problem .\nvince\nstinson gibner\n01 / 07 / 2000 10 : 51 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , melissa jones / enron communications @ enron\ncommunications , zimin lu / hou / ect @ ect , jean mrha / enron communications @ enron\ncommunications\nsubject : stinson vacation in feb .\nvince :\ni would like to take four days of vacation time in february , from feb . 22\nthrough 25 th .\nthanks ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.750+0000", "entityId": 6616, "properties": {"text": "Subject: 9 inch t . v .\ngoodmorning ,\nwe need another 9 inch t . v .\ni am sorry to say but we need it\nas quickly as possible .\nthe location for the set is eb 31301 c .\ndelores , you may have to install cable ,\ni am not sure , so would you please check\nfor me .\ncompany # 0011\nr . c . # 100038\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.755+0000", "entityId": 6617, "properties": {"text": "Subject: re : stinson gibner\nrichard\nwe actually need to duplicate his ena workstation as he will be reporting at\nboth locations\np", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.760+0000", "entityId": 6618, "properties": {"text": "Subject: re : stinson gibner\npaula :\nhe should access eci on our equipment , and the work that he is doing for ena\nshould be provided by them .\nlyn :\ncan he bring his current pc with him , or can you provide him with another\nsystem ?\nthanks\nrichard weeks\nenron communications inc .\npurchasing manager\n713 - 853 - 6995\npaula corey\n01 / 10 / 00 08 : 44 am\nto : richard weeks / enron communications @ enron communications , culley\nharrelson / enron @ gateway\ncc : vince j kaminski / hou / ect @ ect , richard weeks / enron communications @ enron\ncommunications\nsubject : stinson gibner\ngentlemen :\nstinson gibner will be joining us at desk location 4415 c . i have spoken with\nit re : a new laptop for him on the eci lan . he will also need access to his\nect ( ena ) system . how should we proceed with duplicating his workstation from\n19 ?\nthank you\npaula", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.765+0000", "entityId": 6619, "properties": {"text": "Subject: vega v @ r , credit reserve model update\nattached is a draft of the vega var implement documentation . we will discuss\nthis issue tomorrow .\nindex var and the vega var status :\nbecause any modification of the var model has to be coded into the new\nversion by it , the index var model and the vega var model are on the waiting\nlist to get into it group ' s door . currently , they are struggling with the\ncredit model . accord to jonathan le , they will implement the \" prudency \"\nmodel after the \" credit \" and before anything else . so , it ' s uncertain when\nthey can begin these two projects .\ncredit reserve model status :\nnew version developed by it is still in the debugging stage . two major\ndifference exist between the new and old versions :\n1 ) old version uses delta - gammar methodology , new version uses full\nevaluation . it group is not comfortable with their implementation of the\n\" spread option \" and \" swaption \" evaluation . i am working with them on it .\n2 ) insurance projects are new to the new version . it also wants our help too .\nonly after the it finishes the debugging process , could we start testing the\nnew version with the current one .\nthanks .\nvincent", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.770+0000", "entityId": 6620, "properties": {"text": "Subject: new basis report\nbhavna :\nthe basis report has been updated to cover 2000 prices . it is called\nbasisnw 7 . xls and is in the erg database .\nit looks to be working correctly , but of course without data it is a little\nhard to confirm . as always , it is ultimately your job to verify that the\nnumbers reported are correct . lemme know if there are problems .\nit is easy to change the spreadsheet to start a new year . you should keep\nthis mail message as a reference .\n1 ) add 12 to the expression in \" printmacro \" ! b 35 i . e . change\ncopy ( offset ( henrycash , 12 * againstyear + 63 , i , 12 , 1 ) ) to\n2 ) define a new cell reference on the basis page for the first date to be\nprinted out on the report page . for example , last year , the basis report\nwent from jan 93 to dec 1999 . in basisnw 6 . xls there is a name \" jan 93 \" defined\nas \" basis \" ! a 64 ( i . e . refers to the row where the jan 1993 basis numbers are\nrecorded ) . this year , in basisnw 7 . xls , i defined \" jan 94 \" to refer to\n\" basis \" ! a 76 . that ' s because the basis report will now run from jan 1994 to\ndec 2000 .\n3 ) change the expression in \" printmacro \" ! b 45 to use this new cell reference\ni . e . change copy ( offset ( jan 93 , 12 * indexyear , report , 12 , 1 ) ) to\n4 ) having executed steps 1 ) - 3 ) the spreadsheet will now print numbers\nshifted up by one year . all that remains to do is to change the dates on the\n\" printformat \" page to be one year more . by that i mean change 1998 to 1999 ,\n1999 to 2000 , change 98 / 99 to 99 / 00 , etc . don ' t move any numbers or formulas !\nthat ' s it . as we discussed bhavna , while i am happy to do this for you , it\nis not in your or my best interest for this to continue . please do work to\nfind some one in your shop to maintain this spreadsheet .\nregards , and happy new year !\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.774+0000", "entityId": 6621, "properties": {"text": "Subject: re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\nron ,\ni am sorry to inform you that due to a scheduling conflict i cannot speak at\nthis conference .\ni want to thank you for considering me as a speaker .\nvince kaminski\n\" ron henderson \" on 12 / 30 / 99 06 : 57 : 05 pm\nplease respond to ronh @ . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation to speak at infocast ' s upcoming \" market price volatility \"\nprogram\nhi vince ,\ni would like to invite you , or one of your staff , to be a speaker at\ninfocast ' s upcoming conference \" market price volatility : how to model ,\nassess , and manage price volatility in today ' s power markets , \" scheduled for\nmay 10 - 12 , 2000 , in chicago . i am attaching a copy of the draft program\nagenda for your review . as you may note , we wish to take our recent houston\nmeeting a step farther by making this next session a more\ntechnically - oriented meeting .\nthere are two spots you may wish to consider :\n1 . the session entitled \" case study in modeling volatility , \" scheduled for\nwednesday , may 10 th , from 3 : 30 to 5 : 00 pm . you will note below , what we had\nin mind for the case study .\n2 . the talk \" a real options approach to asset valuation , \" scheduled for\nthursday , may 11 th , from 10 : 30 am to 12 : 00 pm .\ni am running behind schedule in finalizing this program , so i will give you\na call shortly to follow up with you . if you wish , please feel free to call\nme at 818 - 888 - 4445 ext . 28 .\ni hope you can join us .\nron henderson\ninfocast\n818 - 888 - 4445 ext . 28\nronh @ . com\ncase study guidelines\n1 . model should be for a particular market . examples : pjm , chicago , ecar ,\nsouthern california . lb ( optional ) . model should be for a particular purpose . examples : valuing a\nnew combustion turbine at the florida / georgia border , bidding on a portfolio\nof power plants up for sale in nepool , valuing a retail portfolio in\npennsylvania .\n2 . model should be estimated on a particular data set . examples : daily nymex\nclose prices for palo verde , pjm hourly spot prices for 1998 - 1999 .\n3 . case study should describe several candidate models , for volatility\nand / or market price , that were considered . case study should discuss why\nthese models were considered . candidate models should be described\nmathematically and verbally .\n4 . evaluation criteria for choosing among the models should be explicitly\nidentified , and quantified to the extent possible . examples of evaluation\ncriteria : residuals that are not autorcorrelated , stationarity , r - squared ,\nakaike information criterion .\n5 . parameter estimates for each candidate model should be displayed . the\nestimation procedure employed should be briefly described .\n6 . some diagnostics of model fit ( vis - a - vis data set ) should be presented .\n7 . if possible , predictive power of model should be assessed .\ngenerally , the case study should include all of the items above . the case\nstudy may include other things .\n- draft agenda v . 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.779+0000", "entityId": 6622, "properties": {"text": "Subject: contact details\ndear mr . kaminski\nit was good talking to you and i would like to thank you for your\ninterest in riskcare and willow . as discussed , i will contact you feb 1\nto arrange a meeting . in the meantime please don ' t hesitate to contact\nme if you have any further questions .\nregards\nmanuel\nmanuel rensink\nriskcare limited\npiercy house\n7 copthall avenue\nlondon ec 2 r 7 nj\ntel : + 44 ( 0 ) 207 562 3414\nemail : mrensink @ riskcare . com\nhttp : / / www . riskcare . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.783+0000", "entityId": 6623, "properties": {"text": "Subject: congratulations - well deserved .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.788+0000", "entityId": 6624, "properties": {"text": "Subject: promotion\nvince ,\ncongrats on your promotion to md .\ndoug", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.792+0000", "entityId": 6625, "properties": {"text": "Subject: congratulations\nvince\ncongrats on the promotion to md . well deserved and a sign of many years of\nreal service to the company . not a bit of controvery in the election process .\nwell done !\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.797+0000", "entityId": 6626, "properties": {"text": "Subject: congratulations\nvince :\ncongratulations on your promotion to md . you certainly are well deserving\nthis long overdue promotion .\ncheers ,\nding yuan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.804+0000", "entityId": 6627, "properties": {"text": "Subject: re : billing question\nthank you for your message . the credit card i want to use is currently stored\nin your system . when i want to update the billing information with this card\nnumber , i am getting the answer : credit card already in use . the card is in\ngood standing and there is absolutely no problem with this card and there was\nnever any problem . i don ' t understand why your system failed . i think that\nthis is your problem , not mine .\ndiscover\nlast 4 digits : 0057 .\nexpiration : 05 / 02\nsincerely ,\nw . kaminski\np . s . i have just called discover and was told the account is in pefect shape\n( as expected ) . as i have said , you must have a bug in your system .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.811+0000", "entityId": 6628, "properties": {"text": "Subject: fwd : billing question\nreturn - path :\nreceived : from rly - yao 3 . mx . aol . com ( rly - yao 3 . mail . aol . com [ 172 . 18 . 144 . 195 ] )\nby air - yao 5 . mail . aol . com ( v 67 . 7 ) with esmtp ; mon , 10 jan 2000 07 : 03 : 24 - 0500\nreceived : from abbott . office . aol . com ( abbott . office . aol . com [ 10 . 2 . 96 . 24 ] )\nby rly - yao 3 . mx . aol . com ( 8 . 8 . 8 / 8 . 8 . 5 / aol - 4 . 0 . 0 ) with esmtp id haal 1942 for\n; mon , 10 jan 2000 07 : 03 : 24 - 0500 ( est )\nreceived : from sunphol . ops . aol . com ( sunphol . office . aol . com [ 10 . 5 . 4 . 200 ] ) by\nabbott . office . aol . com with smtp ( 8 . 8 . 6 ( phne _ 14041 ) / 8 . 7 . 1 ) id haal 1465 for\n; mon , 10 jan 2000 07 : 03 : 22 - 0500 ( est )\nreceived : from 0 by sunphol . ops . aol . com ( smi - 8 . 6 / smi - svr 4 ) id haa 28403 ; mon ,\n10 jan 2000 07 : 03 : 21 - 0500\nmessage - id :\nfrom :\nto :\ndate : 01 / 10 / 2000 20 : 04 : 28\nreply - to :\nsubject : re : billing question\ndear valued member ;\nthank you for taking time to write us . i apologize for the frustration you\nare experiencing with america online . i appreciate your patience and\nunderstanding regarding this matter .\nupon reviewing your account record there was a failed transaction on your\naccount which was the amount of your subcription to aol annual plan , this\nbill was just been \" resubmitted \" on your next month billing date . so that we\ncan answer your questions and concerns in a timely manner it is requested\nthat along with your response , please include your correct last four numbers\nof your current payment method .\nyou may of course contact our billing department directly at 1 - 800 - 827 - 6364\nor 1 - 888 - 265 - 8003 toll free number between 6 : 00 am to 2 : 00 am est . seven days\na week and they will be happy to assist you . i do apologized for any\ninconvenienced this matter has may caused you .\nwe hope we have provided you with useful information about your inquiry . if\nyou have any further questions , please feel free to write us back . take care\nand wishing you all the best and happiness in life . we greatly appreciate\nyour aol membership and customer service is important to us . we hope that\nyou were satisfied with the service you have received .\nmarvin l .\ncustomer care consultant\nbilling department\namerica online , inc .\n- - - - - - - - - - original message - - - - - - - - - -\nfrom : vkaminski @ aol . com\nto : billingl @ abbott . office . aol . com\nfield 1 = wincenty kaminski\nfield 2 = 10 snowbird\nfield 4 = the woodlands\nfield 5 = texas\nfield 6 = 77381\nfield 7 = 0057\nfield 8 = other ( please give details below )\nfield 9 = i have just sent you another message . i have inspected the bill\nsummary for the last and current months , and it seems that my payment plan\nhas been changed by you without my authorization . last year i was on a flat\nannual payment plan ( about $ 220 per year ) , paid in one installment . i did not\nagree to switch to any other plan , unless you asked me a question regarding\nthe billing in a vague or deceptive way . i hope that you will look into this\nmatter promptly and refund any excessive charges .\nw . kaminski\nfield 10 = texas\nfield 11 = other - see comments\nx - rep : 822\nx - mailid : 583192\nx - queue : 4\nx - mailer : swiftmail v 3 . 50", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.819+0000", "entityId": 6629, "properties": {"text": "Subject: fwd : billing question\nreturn - path :\nreceived : from rly - yao 2 . mx . aol . com ( rly - yao 2 . mail . aol . com [ 172 . 18 . 144 . 194 ] )\nby air - yao 2 . mail . aol . com ( v 67 . 7 ) with esmtp ; mon , 10 jan 2000 06 : 39 : 16 - 0500\nreceived : from abbott . office . aol . com ( abbott . office . aol . com [ 10 . 2 . 96 . 24 ] )\nby rly - yao 2 . mx . aol . com ( 8 . 8 . 8 / 8 . 8 . 5 / aol - 4 . 0 . 0 ) with esmtp id gaa 26342 for\n; mon , 10 jan 2000 06 : 39 : 16 - 0500 ( est )\nreceived : from sunphol . ops . aol . com ( sunphol . office . aol . com [ 10 . 5 . 4 . 200 ] ) by\nabbott . office . aol . com with smtp ( 8 . 8 . 6 ( phne _ 14041 ) / 8 . 7 . 1 ) id gaao 8342 for\n; mon , 10 jan 2000 06 : 39 : 01 - 0500 ( est )\nreceived : from 0 by sunphol . ops . aol . com ( smi - 8 . 6 / smi - svr 4 ) id gaa 27342 ; mon ,\n10 jan 2000 06 : 39 : 00 - 0500\nmessage - id :\nfrom :\nto :\ndate : 01 / 10 / 2000 19 : 40 : 07\nreply - to :\nsubject : re : billing question\ndear wincently ,\nwe at america online would like to thank you for spending the time to write\nus . my name is ellen and i appreciate the opportunity to assist you\nregarding your recent e - mail .\nafter reviewing your account , it shows that the annual prepaid fee was not\nsuccessfully collected . i suggest that you contact your bank regarding this\nmatter . you may also want to contact our billing department at\n1 - 888 - 265 - 8003 or at 1 - 800 - 827 - 6364 toll free should you want to resubmit the\nbill .\nif there has been a problem billing your account , america online may send a\nbilling popup screen that states you need to update your billing information\nat keyword : billing . america online does not request this information be\nplaced anywhere other than at keyword : billing . ( if you ' re\nunfamiliar with keywords you can start using them by typing ctrl - k . when\nthe keyword \" box \" appears , type the keyword in the space provided and click\nthe go button ) . it is possible that you will receive the popup more than\nonce in a 24 hour period , as we update our database every 24 hours .\nthe message that america online sends states :\nan important message from aol member services\nour records indicate that the credit card information on file for your aol\naccount\nmay not be up - to - date . outdated information on your aol account may cause\nbill\nprocessing problems with in some cases could lead to service interruptions !\nplease take a minute now to update your aol account information . just click\non the update billing information button below . this update will only take a\nfew moments\nand the information you provide will be kept completely confidential .\nnote : if you have recently updated your billing information , please ignore\nthis\nadditional reminder while we process your changes .\nif you have questions concerning this message , please call member services\nat 1 - 888 / 265 - 8003 between the hours or 6 : 00 am - 2 : 00 am est seven days a\nweek .\nupdate billing information\n( text on button appears in white on the actual popup )\nwe greatly appreciate your america online membership . if you have any\nfurther questions , please do not hesitate to contact us again . thank you for\nusing america online . have a wonderful day . : - )\nellen l .\ncustomer care consultant\nthe billing department\namerica online , inc .\n- - - - - - - - - - original message - - - - - - - - - -\nfrom : vkaminski @ aol . com\nto : billingl @ abbott . office . aol . com\nfield 1 = wincenty kaminski\nfield 2 = 10 snowbird\nfield 4 = the woodlands\nfield 5 = texas\nfield 6 = 77381\nfield 7 = 0057\nfield 8 = other ( please give details below )\nfield 9 = on signing on to aol i received the information that billing\ninformation may be outdated . i don ' t see why . my annual fee has just been\npaid , the credit card is in good standing , i did not move .\nplease , let me know what is the problem\nfield 10 = texas\nfield 11 = other - see comments\nx - rep : 743\nx - mailid : 583092\nx - queue : 4\nx - mailer : swiftmail v 3 . 50", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.824+0000", "entityId": 6630, "properties": {"text": "Subject: congratulations\nvince ,\ncongratulations on your promotion to managing director . you certainly deserve\nit .\nzhiyong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.828+0000", "entityId": 6631, "properties": {"text": "Subject: promotion\nvince : just a short note to congratulate you on your well - deserved promotion .\njordan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.833+0000", "entityId": 6632, "properties": {"text": "Subject: congratulations\nvince ,\ncongratulations ! i wish you the best of luck with your new responsibilities .\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.837+0000", "entityId": 6633, "properties": {"text": "Subject: congratulations !\nyou did again ! i just read about your most recent accomplishment .\ncongratulations on your promotion ! go vince . . . . go vince . . . go vince . . !\nsending warmest regards ,\ntrang", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.842+0000", "entityId": 6634, "properties": {"text": "Subject: congratulations !\nhi vince :\ni just received the email announcing your promotion , and i wanted to take\nthis opportunity to congratulate you .\nbest regards ,\nbani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.846+0000", "entityId": 6635, "properties": {"text": "Subject: congratulations\ncongratulations on your official designation as a poohbah ! just goes to show\nyou , smart guys can finish first also .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.850+0000", "entityId": 6636, "properties": {"text": "Subject: model development\nvince ,\nhere is our final draft for the model development report . i believe that we\nhave incorporated all your comments from the last meeting . if you have any\nquestions or would like to sit down and go over the report please feel free\nto call myself or patty . if the report is ok or if there are some additional\ncomments , i would appreciate if you would respond by wednesday january 12 .\nthanks\nandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.855+0000", "entityId": 6637, "properties": {"text": "Subject: celebration\ni am so excited for my boss , mike robert ' s .\ni was wondering : can we do something special\nfor him celebrating his promotion ?\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.859+0000", "entityId": 6638, "properties": {"text": "Subject: re : interview\nelizabeth ,\nyes , manager .\nthanks .\nvince\nfrom : elizabeth grant 01 / 10 / 2000 03 : 27 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : interview\nwe ' ll get right on it . are you looking at him for a specific level ( manager ? )\n- elizabeth\nvince j kaminski\n01 / 10 / 2000 12 : 56 pm\nto : elizabeth grant / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : interview\nelizabeth ,\nwe would like to invite bob lee for an interview , january 24 , monday .\nhe will be interviewed by me , stinson gibner ,\nzimin lu , paulo issler , vasant shanbhogue , krishnarao pinnamaneni ,\ngrant masson .\nthanks\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.864+0000", "entityId": 6639, "properties": {"text": "Subject: proposed bonuses\ngreg ,\nthese are proposed bonuses :\nmanagers :\nsuperior\n1 . ravi thuraisingham 40 k\n2 . ronnie chahal 40 k\n3 . amitava dhar 40 k\nexcellent\n1 . osman sezgen 35 k\n2 . tanya tamarchenko 35 k\n3 . joe hrgovcic 30 k\n4 . vincent tang 30 k\ndirectors :\nsuperior\n1 . mike roberts 100 k\n2 . krishnarao pinnamaneni 60 k\nexcellent\n1 . zimin lu 50 k\n2 . maureen raymond 40 k\nassistants :\n1 . shirley crenshaw 6 k\n2 . robert moore 5 k\nyou already have the vp numbers .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.868+0000", "entityId": 6640, "properties": {"text": "Subject: re : rent r / c updates - 19 th floor & 29 th floor\nhi carol :\nthanks for helping straighten this out . below are the room numbers and\npeople ( plus ext . ) .\n1938 team room 3 - 3135\n1939 maureen raymone 3 - 0396\n1940 tanya tamarchenko 3 - 3997\n1941 vacant\n1942 vacant\n1943 clayton vernon 3 - 9719\n1944 amitava dhar 3 - 4215\n1945 alex huang 3 - 1631\n1946 kevin kindall 5 - 8167\n1947 vacant\n1948 vacant\n1949 farouk llaji 3 - 1790\n1951 vacant\n1951 a printer / fax\n1952 vacant\n1953 mail stop / supply station\n1954 wm . sam smith 5 - 8322\n1955 martin lin 3 - 9387\n1955 a xerox machine\n1956 printer / colored printer\n1957 vacant\n1958 paulo issler 5 - 6274\n1959 vincent tang 3 - 4790\n1960 ravi thuraisingham 3 - 3057\n1961 shirley crenshaw 3 - 5290\n1962 vince kaminski 3 - 3848\n1963 stinson gibner 3 - 4748\n1964 p . v . krishnarao 3 - 5485\n1966 grant masson 3 - 4768\n1967 zimin lu 3 - 6388\n1968 vacant\n1969 kevin moore 3 - 4710\n1969 a vacant\n1969 b vacant\n1970 mike roberts 3 - 5701\n1971 joe hrgovcic 3 - 3914\n1972 a vacant\n1972 b roman zadorozhny 3 - 9737\n1972 c michael sergeev 3 - 4305\n1972 d tricia tlapek 3 - 6615\n1972 e jason sokolov 3 - 6286\n1973 vasant shanbhogue 3 - 7570\n19 c 2 conference room\ncarol brittain 01 / 10 / 2000 11 : 33 am\nto : shirley crenshaw / hou / ect @ ect\ncc : joann holloway / epsc / hou / ect @ ect , janelle duree / hou / ect @ ect\nsubject : re : rent r / c updates - 19 th floor & 29 th floor\nshirley :\nif you could forward all the names , locations , and extensions to me so that i\ncan update fms and the employee lists , i will take care of this for you .\ncarol\nenron property & services corp .\nfrom : joann holloway 01 / 10 / 2000 09 : 48 am\nto : carol brittain / epsc / hou / ect @ ect\ncc :\nsubject : re : rent r / c updates - 19 th floor & 29 th floor\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joann holloway / epsc / hou / ect on 01 / 10 / 2000\n09 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 07 / 2000 03 : 33 pm\nto : joann holloway / epsc / hou / ect @ ect\ncc :\nsubject : re : rent r / c updates - 19 th floor & 29 th floor\noh dear !\ni thought it was all straight . ebl 931 was my room on the original floor\nplan ,\nbut somehow they changed the numbers . we were all packed , everything\nwas ready for the move and i just happened to come to the 19 th floor the\nday of the move and noticed that they had renumbered all of the rooms !\nthe move team hurredly put stickers ( with the old numbers ) on the doors\nof each room .\ni am now in eb 1961 . vince kaminski is in 1962 . if you need the names\nfor all of the other rooms , let me know .\nsorry !\nenron property & services corp .\nfrom : joann holloway 01 / 07 / 2000 03 : 09 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : rent r / c updates - 19 th floor & 29 th floor\nshirley ,\ni guess my floor plans are misnumbered .\nin what room number are you sitting ? the relocation request had eb 1931 .\njo ann\nshirley crenshaw\n01 / 07 / 2000 02 : 16 pm\nto : joann holloway / epsc / hou / ect @ ect\ncc :\nsubject : re : rent r / c updates - 19 th floor & 29 th floor\njoann :\nsorry , joann , i did not read all of your first e - mail . listed below are the\nspaces on 19 that should be charged to 0011 - 100038 .\n1938\n1939\n1940\n1941\n1942\n1943\n1944\n1945\n1946\n1947\n1948\n1949\n1951\n1951 a\n1952\n1953\n1954\n1955\n1956\n1957\n1958\n1959\n1960\n1961\n1962\n1963\n1964\n1965\n1966\n1967\n1968\n1969\n1970\n1971\n1972\n1973\nenron property & services corp .\nfrom : joann holloway 01 / 07 / 2000 02 : 04 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : rent r / c updates - 19 th floor & 29 th floor\nshirley ,\nalthough the rent for your locations on the 19 th floor has been updated , i ' ve\njust received a relocation update for some folks moving from the 45 th floor\nto the 19 th floor tonight . the odd thing is that among many other locations ,\nthe following locations were included ( which you ' ve already requested be\nassigned to 0011 / 100038 ) :\neb 1930\neb 1931\neb 1932\neb 1933\neb 1934\neb 1935\neb 1936\nplease let me know if they should stay assigned to your group or should they\nbe assigned to this other group ' s r / c .\nthank you .\njo ann\nx 35957\nenron property & services corp .\nfrom : joann holloway 01 / 05 / 2000 08 : 47 am\nto : shirley crenshaw / hou / ect @ ect\ncc : ( bcc : joann holloway / epsc / hou / ect )\nsubject : rent r / c updates - 19 th floor & 29 th floor\nshirley ,\nthe following locations on the 29 th floor are still assigned to 0011 / 100038 .\nthey were not listed on the december 17 th churn relocation request . so , are\nthe personnel in these locations still reporting to 0011 / 100038 or are they\nmoving later . please advise :\neb 2963 a\neb 2963 b\neb 2964 a\neb 2965 a\neb 2965 b\neb 2966 a\neb 2966 b\neb 2966 c\neb 2966 d\neb 2970 c\neb 2971 a\neb 2975 a\neb 2975 b\nthe following location on the 19 th floor are now assigned to 0011 / 100038 :\neb 1928\neb 1929\neb 1929 a\neb 1930\neb 1930 d\neb 1931\neb 1932\neb 1933\neb 1934\neb 1935\neb 1936\neb 1938\neb 1941\neb 1942\neb 1943\neb 1944\neb 1945\neb 1947\neb 1949\nthank you .\njo ann holloway\nx 35957", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.873+0000", "entityId": 6641, "properties": {"text": "Subject: black table for conference room and file cabinet\nhi reggie :\nconference room eb 19 c 2 is in need of a round black table to hold the\ntelephone . is there one available ?\nalso we would like a two - drawer lateral file cabinet for eb 19 c 2 .\nco . # 0011 , rc # 100038 .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.878+0000", "entityId": 6642, "properties": {"text": "Subject: trisha lunch\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 01 / 10 / 2000 11 : 12\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrances ortiz\n01 / 07 / 2000 02 : 54 pm\nto : ina rangel / hou / ect @ ect , kevin g moore / hou / ect @ ect\ncc :\nsubject : trisha lunch\njeff has approved for her to be added for lunch everyday and bodweek\nthanks\nfso", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.882+0000", "entityId": 6643, "properties": {"text": "Subject: copiers on 19\nhi iain :\ngot a questions for you ? we have a small copier in our research area\n( a minolta cspro ) that stays on the blink somewhere , quite a bit of the\ntime . the temporary copier in 19 kl is a kodak image source 50 . what\nis the difference in price of these two copiers ? is there any way we could\nexchange the minolta for the image source when you bring our permanent\ncopier to 19 kl ?\nplease let me know . we would like to do that if we can and it is not too much\nmore money .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.887+0000", "entityId": 6644, "properties": {"text": "Subject: promotions\nour promotions are listed below . we will notify these in the next couple of\ndays . call with questions .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steve w young / lon / ect on 11 / 01 / 2000 20 : 34\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\namy fitzpatrick\n11 / 01 / 2000 14 : 57\nto : steve w young / lon / ect @ ect\ncc :\nsubject : promotions\nbelow is a listing of all of your employees which have been approved for\npromotion . please be sure to communication with all those listed below by\nmonday as there will be a company - wide announcement going out .\nclaire viejou to senior professional\nben parsons to junior professional\nsteven leppard to manager\nif you have any questions , please let me know .\nthanks !\namy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.892+0000", "entityId": 6645, "properties": {"text": "Subject: re : congratulations\nthanks vince . it was good to learn of your promotion as well .\ncheers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.897+0000", "entityId": 6646, "properties": {"text": "Subject: re : congratulations\nthank you very much for the note . i am very happy that you have been\npromoted to managing director . it was long over due .\nsincerely ,\njean\nvince j kaminski @ ect\n01 / 11 / 00 10 : 03 am\nto : jean mrha / enron communications @ enron communications\ncc :\nsubject : congratulations\njean ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.901+0000", "entityId": 6647, "properties": {"text": "Subject: congratulations\nyour majesty ,\ncongratulations on your well deserved promotion to managing director . i am\nvery happy for you and a little sad as well because this was so long overdue .\nthe list every year was not complete without your name on it . we shall need\nto celebrate this sometime .\nall the best ,\ntony .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.906+0000", "entityId": 6648, "properties": {"text": "Subject: re : congratulations\nvince , thanks for your note . and congratulations backatcha ! i was\nthrilled to see your name on the list as well . kristina", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.911+0000", "entityId": 6649, "properties": {"text": "Subject: congrats\ncongratulations on your promotion ! that is really good .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.915+0000", "entityId": 6650, "properties": {"text": "Subject: congratulations !\nvince ,\ncongratulations on your promotion to managing director .\nbest wishes for your continued success .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.921+0000", "entityId": 6651, "properties": {"text": "Subject: re : congratulations\nthanks . congratulations to you .\nray\nvince j kaminski\n01 / 11 / 2000 09 : 49 am\nto : raymond bowen / hou / ect @ ect\ncc :\nsubject : congratulations\nray ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.926+0000", "entityId": 6652, "properties": {"text": "Subject: re : congratulations\nright back at you . . . . . great job", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.934+0000", "entityId": 6653, "properties": {"text": "Subject: re : congratulations\nvince ,\ncongratulations to you too ! in my mind you ' ve always been an md , they ' re\njust officializing it now .\nthank you very for all your help and support .\n- - anthony\nvince j kaminski\n01 / 11 / 2000 10 : 05 am\nto : anthony dayao / hou / ect @ ect\ncc :\nsubject : congratulations\nanthony ,\ncongratulations . well deserved . i am very happy for you . better late than\nnever .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.940+0000", "entityId": 6654, "properties": {"text": "Subject: kudos\ncongratulations on your promotion - - well deserved ! !\nlucy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.945+0000", "entityId": 6655, "properties": {"text": "Subject: re : congrats\nvince ,\nthanks for the note - and congratulations on yours as well .\ni haven ' t had too much to do yet with the research guys here as they ' re\npretty much self directed . once a week ( thursday am ) i ' ve started a joint\nproject update meeting with structuring and research . i hope this way the\nstructuring team can bounce quantitative issues off research and the research\nguys can stay closer to the commercial deals .\n- dale\nvince j kaminski\n11 / 01 / 2000 16 : 08\nto : dale surbey / lon / ect @ ect\ncc :\nsubject : congrats\ndale ,\ncongratulations . well deserved . i am very happy your tremendous\ncontribution to the company has been recognized .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.949+0000", "entityId": 6656, "properties": {"text": "Subject: re : congratgulations\nthanks vince , and congratulations on your promotion too .\nvince j kaminski\n01 / 11 / 2000 04 : 02 pm\nto : harry arora / hou / ect @ ect\ncc :\nsubject : congratgulations\nharry ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.954+0000", "entityId": 6657, "properties": {"text": "Subject: congratulations ! ! !\nvince :\ncongratulations on your promotion ! !\nbarbara", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.959+0000", "entityId": 6658, "properties": {"text": "Subject: re : congrats\nvince ,\nyou beat me to the congrats . the surprise was that i already believed you\nwere a managing director , so a long overdue congratulations to you .\nlaura\nvince j kaminski @ ect\n01 / 11 / 2000 10 : 13 am\nto : laura luce / hou / ect @ ect\ncc :\nsubject : congrats\nlaura ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.964+0000", "entityId": 6659, "properties": {"text": "Subject: re : congratulations\nthanks vince and likewise congratulations on your promotion to md ! i enjoyed\ngetting to work with you and your group over the past year . rick c .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.969+0000", "entityId": 6660, "properties": {"text": "Subject: re : congratulations\nand to yourself - extra well deserved .\nsee you soon .\nb .\nvince j kaminski\n11 / 01 / 2000 16 : 04\nto : barry pearce / lon / ect @ ect\ncc :\nsubject : congratulations\nbarry ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.973+0000", "entityId": 6661, "properties": {"text": "Subject: re : congratulations\nthanks vince . congrats also , - it seems overdue in your case !\nr\nvince j kaminski\n11 / 01 / 2000 15 : 54\nto : richard lewis / lon / ect @ ect\ncc :\nsubject : congratulations\nrichard ,\ncongratulations . well deserved . i am very happy your contribution to the\ncompany has been recognized .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.979+0000", "entityId": 6662, "properties": {"text": "Subject: congratulations !\ncongratulations on your promotion to managing director ! it ' s great that your\nhard work and dedication to enron have been recognized .\nsherry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.984+0000", "entityId": 6663, "properties": {"text": "Subject: congratulations\ndear vince -\ni am soooo gland to see you get the promotion you so deserve . i have always\nthought you should have received such honors many years ago . i ' m glad to see\nenron finally did you right .\ngood luck and congratulations ,\njulie : - )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.989+0000", "entityId": 6664, "properties": {"text": "Subject: congratulations !\nvince -\nnice job , dr . managing director\nhey , is \" constrained technical \" anything like \" constrained optimization \" ? : )\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.994+0000", "entityId": 6665, "properties": {"text": "Subject: congratulations\ncongrats on your promotion to md . i appreciate the work you group is doing\nfor et & s , and i know the promotion is well deserved .\nbill cordes", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:35.999+0000", "entityId": 6666, "properties": {"text": "Subject: re : congratulations\nthanks .\nvince j kaminski @ ect\n01 / 11 / 2000 08 : 01 am\nto : richard shapiro / hou / ees @ ees\ncc :\nsubject : congratulations\nrick ,\ni have just looked at the memo regarding promotions .\ncongratulations - well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.004+0000", "entityId": 6667, "properties": {"text": "Subject: congratulations !\ncongratulations ! on your promotion !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.009+0000", "entityId": 6668, "properties": {"text": "Subject: congrats !\nvince ,\ncongrats on your promotion ! well - done !\nrob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.015+0000", "entityId": 6669, "properties": {"text": "Subject: re : congratulations .\ncongrats to you too ! i ' ll see you in february unless you ' re in london\nsooner . can ' t wait to start up the dinner club again !\nsee you soon .\nbeth\nvince j kaminski\n11 / 01 / 2000 00 : 01\nto : beth perlman / lon / ect @ ect\ncc :\nsubject : congratulations .\nbeth ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.020+0000", "entityId": 6670, "properties": {"text": "Subject: it purchasing process\nas you all may be aware the it organization is undergoing significant\norganizational changes at a very rapid pace . one of the groups that is being\nheavily affected is purchasing , due to the large increase in the volume of\nrequests and some staff turnover . we realize that this is causing our users\nsome pain and we are re - engineering the process as quickly as possible . we\nwill be communicating the changes to the process over the next few weeks . we\napologize for the inconvenience and appreciate your patience in this regard .\nif you have any questions while the process is being adjusted please contact\nbob hillier at extension 3 - 0305 .\nphilippe bibi\ncto , enron global technology", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.025+0000", "entityId": 6671, "properties": {"text": "Subject: super saturday iv interviews\nthank you for volunteering to participate in the interview process of the\njanuary 15 associate super saturday . our team is working on the weekend\narrangements and will deliver your information packet to you thursday ,\njanuary 15 . if you have any questions , please let elizabeth boudreaux know\nat x 3 - 6176 .\nthank you !\nginger gamble\nmanager\nassociate & analyst program", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.030+0000", "entityId": 6672, "properties": {"text": "Subject: re : request for payroll reclassification - approved\njoann ,\nyes , sorry . 413 was the number on the form i received .\nvince\nenron property & services corp .\nfrom : joann holloway 01 / 11 / 2000 02 : 01 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : request for payroll reclassification - approved\nvince ,\non your reclass information , the company number indicated should be 0011 not\n413 .\njo ann holloway\nx 35957\nvince j kaminski\n01 / 11 / 2000 01 : 33 pm\nto : stella l ely / hou / ect @ ect\ncc : jeff kinneman / hou / ect @ ect , carmen chavira / hou / ect @ ect , michelle\nhargrave / hou / ect @ ect , stephen wolfe / hou / ect @ ect , michael s\ngalvan / hou / ect @ ect , gary mccumber / hou / ect @ ect , billie\nakhave / epsc / hou / ect @ ect , joann holloway / epsc / hou / ect @ ect , louis\nallen / epsc / hou / ect @ ect , bradley stewart / hou / ect @ ect , carol coats / hou / ect @ ect\nsubject : request for payroll reclassification - approved\nthe following payroll reclassification request has been approved .\nclick on this link to view document - - >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.034+0000", "entityId": 6673, "properties": {"text": "Subject: acceptance of offer\nsir ,\ni have decided to accept your offer of employment here at enron . please let\nme know how i can help with the \" hiring - on \" process . may i ask what is the\neffective hire date ? that information will help me when i switch over from\nprostaff .\nthank you for this wonderful opportunity !\nsincerely ,\nsam smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.039+0000", "entityId": 6674, "properties": {"text": "Subject: request for payroll reclassification\nthe following payroll reclassification request has been submitted for your\napproval .\nclick on this link to view document - - >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.045+0000", "entityId": 6675, "properties": {"text": "Subject: henwood license\nkarla :\nplease inform henwood that enron will renew the license for the prosym\nsoftware modules but will not renew the licenses for north american databases .\nthe software modules to be renewed are :\nbase system ( prosym ? ) ( ecosym is included in the base system )\nasap / mstat\nmultisym\nemss interface .\nit is not 100 % sure that the last module is required . nevertheless , please\nbegin the agreement amendment process asap . i will let you know if there are\nmodifications soon .\nthanks ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.049+0000", "entityId": 6676, "properties": {"text": "Subject: new pc\nlyn :\ncan you tell me the status on this order ? alex is really feeling the pinch\nfor this\nnew computer .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 12 / 2000\n08 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 07 / 2000 01 : 49 pm\nto : lyn malina / hou / ect @ ect\ncc : william smith / corp / enron @ enron , vince j kaminski / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nhi lyn :\nalex huang has requested a new pc and vince kaminski has ok ' d it . please\norder the computer as listed below in alex ' s request .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 07 / 2000\n01 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 07 / 2000 12 : 12 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nshirley ,\nok .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 07 / 2000\n12 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 07 / 2000 08 : 28 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : new pc\nhi shirley ,\ni would like to request for a new pc . my current pc is quite old with not\nenough memory . twice\ni ran out of memory and had to have it people coming to clean it for me .\ntheir suggestion is\nto either get a new hard drive or a new pc . given that dell has pentiumc iii\nprocessor at 800 mhz\non market , i would like to request a pc with process at 500 mhz or higher\nlevel .\nthank you very much .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.054+0000", "entityId": 6677, "properties": {"text": "Subject: re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\nvince ,\nok . i appreciate your keeping us in mind .\nthanks ,\nron\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vkamins @ ect . enron . com ]\nsent : wednesday , january 12 , 2000 8 : 27 am\nto : ronh @ . com\ncc : vince j kaminski\nsubject : re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\nron ,\nwe are really swamped and i would like to keep our involvement in\nconferences to a reasonable minimum . i can promise that we shall help you\nwith a future conference if it happens to be in houston .\nvince\n\" ron henderson \" on 01 / 11 / 2000 03 : 13 : 56 pm\nplease respond to ronh @ . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\nvince ,\ni am sorry you can ' t join us . is there someone on your staff who might be\nable to do the presentation \" a real options approach to asset valuation , \"\nscheduled for thursday , may 11 th , from 10 : 30 am to 12 : 00 pm . ?\nron\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vkamins @ ect . enron . com ]\nsent : monday , january 10 , 2000 10 : 53 am\nto : ronh @ . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\n>\nron ,\ni am sorry to inform you that due to a scheduling conflict i cannot speak at\nthis conference .\ni want to thank you for considering me as a speaker .\nvince kaminski\n\" ron henderson \" on 12 / 30 / 99 06 : 57 : 05 pm\nplease respond to ronh @ . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation to speak at infocast ' s upcoming \" market price\nvolatility \"\nprogram\nhi vince ,\ni would like to invite you , or one of your staff , to be a speaker at\ninfocast ' s upcoming conference \" market price volatility : how to model ,\nassess , and manage price volatility in today ' s power markets , \" scheduled for\nmay 10 - 12 , 2000 , in chicago . i am attaching a copy of the draft program\nagenda for your review . as you may note , we wish to take our recent houston\nmeeting a step farther by making this next session a more\ntechnically - oriented meeting .\nthere are two spots you may wish to consider :\n1 . the session entitled \" case study in modeling volatility , \" scheduled for\nwednesday , may 10 th , from 3 : 30 to 5 : 00 pm . you will note below , what we had\nin mind for the case study .\n2 . the talk \" a real options approach to asset valuation , \" scheduled for\nthursday , may 11 th , from 10 : 30 am to 12 : 00 pm .\ni am running behind schedule in finalizing this program , so i will give you\na call shortly to follow up with you . if you wish , please feel free to call\nme at 818 - 888 - 4445 ext . 28 .\ni hope you can join us .\nron henderson\ninfocast\n818 - 888 - 4445 ext . 28\nronh @ . com\ncase study guidelines\n1 . model should be for a particular market . examples : pjm , chicago , ecar ,\nsouthern california . lb ( optional ) . model should be for a particular purpose . examples : valuing a\nnew combustion turbine at the florida / georgia border , bidding on a portfolio\nof power plants up for sale in nepool , valuing a retail portfolio in\npennsylvania .\n2 . model should be estimated on a particular data set . examples : daily\nnymex\nclose prices for palo verde , pjm hourly spot prices for 1998 - 1999 .\n3 . case study should describe several candidate models , for volatility\nand / or market price , that were considered . case study should discuss why\nthese models were considered . candidate models should be described\nmathematically and verbally .\n4 . evaluation criteria for choosing among the models should be explicitly\nidentified , and quantified to the extent possible . examples of evaluation\ncriteria : residuals that are not autorcorrelated , stationarity , r - squared ,\nakaike information criterion .\n5 . parameter estimates for each candidate model should be displayed . the\nestimation procedure employed should be briefly described .\n6 . some diagnostics of model fit ( vis - a - vis data set ) should be presented .\n7 . if possible , predictive power of model should be assessed .\ngenerally , the case study should include all of the items above . the case\nstudy may include other things .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.059+0000", "entityId": 6678, "properties": {"text": "Subject: re : energy conference\nmark ,\nwe are really swamped and i would like to keep our involvement in\nconferences to a reasonable minimum . i can promise that we shall help you\nwith a future conference if it happens to be in houston .\nvince\nmark thabet on 01 / 10 / 2000 12 : 58 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : energy conference\nvince :\ni am sorry to hear about your scheduling conflict . your expertise would have\nbeen a great value to our conference . is there anyone else at your company\nwhom you could recommend as a speaker ? thanks again for your time .\nmark thabet\nvp , energy shirley crenshaw\nsubject : re : energy conference\nmark ,\ni am sorry to inform you that due to a scheduling conflict i cannot\nspeak at\nthis conference .\ni want to thank you for considering me as a speaker .\nvince kaminski\nmark thabet on 01 / 06 / 2000 09 : 36 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : energy conference\nvince :\ni have attached a rough draft of the agenda with the topics being\nconsidered\nfor the conference . it is being held in washington , dc on june\n19 - 20 , 2000 .\nif your schedule allows , please join our speaking faculty . you will\nnotice\nthat the topic on \" forecasting and measuring your exposures to\nenergy price\nrisk \" is not currently on the agenda . we can add it once you have a\nchance\nto check your schedule . i also ask that you make recommendations of\nany\ncolleagues or industry professionals who can add expertise to the\nconference\nas well .\nif you have any questions or concerns , please do not hesitate to\ncontact me\nat 212 - 661 - 3500 x 3181 . i look forward to hearing from you . thank\nyou once\nagain for your time and assistance .\n>\nmark thabet\nvp , energy & utilities division\ninstitute for international research\n708 third avenue , 4 th floor\nnew york , ny 10017\nt : 212 - 661 - 3500 x 3181\nf : 212 - 599 - 2192\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.064+0000", "entityId": 6679, "properties": {"text": "Subject: re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\nron ,\nwe are really swamped and i would like to keep our involvement in\nconferences to a reasonable minimum . i can promise that we shall help you\nwith a future conference if it happens to be in houston .\nvince\n\" ron henderson \" on 01 / 11 / 2000 03 : 13 : 56 pm\nplease respond to ronh @ . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\nvince ,\ni am sorry you can ' t join us . is there someone on your staff who might be\nable to do the presentation \" a real options approach to asset valuation , \"\nscheduled for thursday , may 11 th , from 10 : 30 am to 12 : 00 pm . ?\nron\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vkamins @ ect . enron . com ]\nsent : monday , january 10 , 2000 10 : 53 am\nto : ronh @ . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : invitation to speak at infocast ' s upcoming \" market price\nvolatility \" program\n>\nron ,\ni am sorry to inform you that due to a scheduling conflict i cannot speak at\nthis conference .\ni want to thank you for considering me as a speaker .\nvince kaminski\n\" ron henderson \" on 12 / 30 / 99 06 : 57 : 05 pm\nplease respond to ronh @ . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation to speak at infocast ' s upcoming \" market price\nvolatility \"\nprogram\nhi vince ,\ni would like to invite you , or one of your staff , to be a speaker at\ninfocast ' s upcoming conference \" market price volatility : how to model ,\nassess , and manage price volatility in today ' s power markets , \" scheduled for\nmay 10 - 12 , 2000 , in chicago . i am attaching a copy of the draft program\nagenda for your review . as you may note , we wish to take our recent houston\nmeeting a step farther by making this next session a more\ntechnically - oriented meeting .\nthere are two spots you may wish to consider :\n1 . the session entitled \" case study in modeling volatility , \" scheduled for\nwednesday , may 10 th , from 3 : 30 to 5 : 00 pm . you will note below , what we had\nin mind for the case study .\n2 . the talk \" a real options approach to asset valuation , \" scheduled for\nthursday , may 11 th , from 10 : 30 am to 12 : 00 pm .\ni am running behind schedule in finalizing this program , so i will give you\na call shortly to follow up with you . if you wish , please feel free to call\nme at 818 - 888 - 4445 ext . 28 .\ni hope you can join us .\nron henderson\ninfocast\n818 - 888 - 4445 ext . 28\nronh @ . com\ncase study guidelines\n1 . model should be for a particular market . examples : pjm , chicago , ecar ,\nsouthern california . lb ( optional ) . model should be for a particular purpose . examples : valuing a\nnew combustion turbine at the florida / georgia border , bidding on a portfolio\nof power plants up for sale in nepool , valuing a retail portfolio in\npennsylvania .\n2 . model should be estimated on a particular data set . examples : daily\nnymex\nclose prices for palo verde , pjm hourly spot prices for 1998 - 1999 .\n3 . case study should describe several candidate models , for volatility\nand / or market price , that were considered . case study should discuss why\nthese models were considered . candidate models should be described\nmathematically and verbally .\n4 . evaluation criteria for choosing among the models should be explicitly\nidentified , and quantified to the extent possible . examples of evaluation\ncriteria : residuals that are not autorcorrelated , stationarity , r - squared ,\nakaike information criterion .\n5 . parameter estimates for each candidate model should be displayed . the\nestimation procedure employed should be briefly described .\n6 . some diagnostics of model fit ( vis - a - vis data set ) should be presented .\n7 . if possible , predictive power of model should be assessed .\ngenerally , the case study should include all of the items above . the case\nstudy may include other things .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.069+0000", "entityId": 6680, "properties": {"text": "Subject: modeling in real options\nvince ,\nmy name is jeanne anne klein and i am a financial modeler working with\nmingcheng lian on a high profile pipeline project in china .\nzimin lu referred us to you regarding questions we have on the real option\nvaluation approach . we are very enthusiastic about what we have read and\nheard about this valuation method .\nwe have been doing some preliminary research on the real option valuation\napproach and believe that integrating this approach into our financial model\nwould bring a significant increase to the value to the project . we have\nidentified some deal aspects we believe would be ideal to valuate as real\noptions . our goal is to work with the development team to structure the deal\nto incorporate the real option valuation approach into the model enabling us\nto arrange the contracts within the deal to optimize the project ' s value .\nwe would like to arrange a meeting with you at your ealiest convenience to\nbrainstorm on additional deal aspects that can be valued using the real\noption approach as well as on ways to quantify these aspects using the real\noption valuation method .\nplease advise if you will be able to meet with us within the next week or\ntwo .\nthank you for your kind attention ,\njeanne anne\nx 6 - 6547", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.074+0000", "entityId": 6681, "properties": {"text": "Subject: internal var / credit candidate : amit bartarya\nhi vince ,\nhere is one internal candidate for the var / credit risk role . i have had\nplenty of contact with him over the past year or so and he is very hard\nworking , intelligent and dedicated and has expressed interest in joining\nresearch on a few occassions .\nregards ,\nanjam\nx 35383\nas promised earlier , here is a copy of my cv :\nif you have any questions , feel free to ask .\nthanks ,\namit .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.078+0000", "entityId": 6682, "properties": {"text": "Subject: congratulations\ncongratulations on your promotion to md !\nalan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.083+0000", "entityId": 6683, "properties": {"text": "Subject: vince ,\ncongratulations on your promotion !\nregards ,\nnh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.088+0000", "entityId": 6684, "properties": {"text": "Subject: re : congratulations\nthanks vince\ni was in midland yesterday so i just saw the announcement .\ncongrats yourself ! !\nvince j kaminski\n01 / 11 / 2000 10 : 02 am\nto : bradford larson / hou / ect @ ect\ncc :\nsubject : congratulations\nbrad ,\ncongratulations . well deserved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.093+0000", "entityId": 6685, "properties": {"text": "Subject: ena year end promotions nominations\nas a follow on to the discussion at monday ' s staff meeting ;\nattached is a summary of the manager and above promotion nominations made and\ndiscussed during the december business review / pre - ranking meetings in ena ,\nwhich were captured in the system .\npromotions through to senior professional on the support side should already\nhave been communicated to the employees .\npromotions to manager and director where agreed at the final ena performance\nreview meeting on december 14 and should be attached . these can be\ncommunicated to the individuals , if you haven ' t already done so .\nno ena wide promotion memo is planned , therefore please feel free to\ncommunicate your departments promotions by separate memo if you believe\nappropriate .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.098+0000", "entityId": 6686, "properties": {"text": "Subject: model for insurance against cruel oil down side risk\nfred ,\ni have finished a model we talked about a few days ago .\nthe option we try to price is a digital on on an asian strip .\nif the average price of the prompt month crude oil in a specified time window\nfalls below the strike price , the option pays a lump sum of money secified by\nthe \" digital payout \" in the model .\nas a comparison , i also included european option on the asian strip .\nlet me know if you have any questions .\nzimin\nx 36388", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.103+0000", "entityId": 6687, "properties": {"text": "Subject: congratulations\nvince : congratulations on your promotion . i know it is well deserved ! i\nhave not seen you in a while since i am not riding the woodlands bus much\nthese days . i am expecting a baby for the end of february 2000 and it is\nmuch easier to drive than to ride the bus !\ntake care and congratulations again ,\ndarlene norris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.108+0000", "entityId": 6688, "properties": {"text": "Subject: congratulations on your promotion\ncongratulations on the much deserved recognition you have recently received\nfrom the enron executive committee .\nsue haynes\nenron staffing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.113+0000", "entityId": 6689, "properties": {"text": "Subject: new extension installed\nwe will receive a new employee on jan . 17 th 2000 .\nif possible we would like for his telephones and extensions\nto be ready .\nhis name is jose marquez .\nhis locations are eb 3130 c and ebl 968 .\nany questions please call kevin moore x 34710\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.118+0000", "entityId": 6690, "properties": {"text": "Subject: visa status\ni want to keep you informed about my visa status .\nmy current hlb visa expires on 15 th january , 2000 . my hlb visa extension\napplication has been submitted to ins by milenia soto , enron ' s immigration\nattorney . i spoke with milenia soto yesterday and came to know that she has\nnot received the receipt yet , however , she told me that it is perfectly legal\nto work based on the fact that application for extension has been submitted\nto ins .\nmilenia soto has received the receipts from ins of my change of status\napplication package which includes submission of applications for change of\nstatus , work permit , advanced parole and finger print . earlier , my i - 140\napplication was approved by ins during the first week of september , 1999 .\nif you need additional information and / or want to contact milenia soto , her\nphone number is ( 713 ) 522 0141 .\nsincerely ,\namitava dhar", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.123+0000", "entityId": 6691, "properties": {"text": "Subject: your approval is requested\nplease be informed that you have one or more srrs requests that are\noutstanding due to a pending action to approve or reject decision on your\npart . please go to the srrs ( lotus notes desktop icon ) and select the\n\" requests awaiting my approval \" option and complete the necessary action .\nmore srrs request information can be seen within the request by clicking on\n\" resource display \" .\nyour response will enable the srrs process to continue for eventual closure .\nthank you ,\ninformation risk management", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.128+0000", "entityId": 6692, "properties": {"text": "Subject: hello from chicago\ni wanted to pass this on to you as a group . richard is taking responsibility\nto ensure we have the appropriate resources to support our transaction\nbusiness .\nif you have questions or comments , or need further information regarding the\nattached , please contact me @ ( 312 ) 357 - 8869 .\nthanx !\nlaura\n- - - - - - - - - - - - - - - - - - - - - - forwarded by laura luce / corp / enron on 01 / 14 / 2000 10 : 06\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard tomaski\n01 / 13 / 2000 07 : 59 pm\nto : ed mcmichael / hou / ect @ ect , deirdre mccaffrey / hou / ect @ ect , steve\njackson / hou / ect @ ect , berney c aucoin / hou / ect @ ect\ncc : laura luce / corp / enron @ enron , barbara g dillard / corp / enron @ enron , gregg\npenman / corp / enron @ enron , kevin p radous / corp / enron @ enron , russell e\nmurrell / corp / enron @ enron\nsubject : hello from chicago\nhey guys , i just wanted to update everybody on what ' s going on up here in\nchicago . we ' ve finally got our computers hooked up , so we are off and\nrunning now . actually , we got quite of few projects going on up here ( yes ,\nthese are real projects ) and we are going to need the houston structuring\ngroup for support . i don ' t know if you guys are still short - handed and what\nkind of projects you may already have lined - up , but i wanted list out some of\nthe projects that we are currently working on .\ngas\nlrg project - deirde is currently working on this with russell\nnss storage - sean boyle helped value both their current and new nss . we are\ncurrently working on negotiating with people ' s for these , and i expect that\nthere may be additional requests in the future .\nmanlove summer withdraw program - yes this is not a typo . surprise ,\nsurprise . . . manlove can do a lot more than we thought . i ' ve talked to\ndeirdre about it and created a simple model , but i would like to better\nanalyze this with your help .\ncapital improvements - we ' ve got people ' s christmas list of capital projects\nthat we are going to help them analyze and seek if any of these make sense .\nsendout model - we would like to help them better optimize their morning\nsendout taking into account current market pricing and the enron supply deal .\npbr - we are not sure when or if people ' s will file a pbr , but i think that\nthere are a lot of things that we learned during our previous experience that\nwe can do to help them prepare for a competitive marketplace ( ie transport\ncustomers tariff restructuring )\npesc - people ' s is looking for assistance in understanding load following and\nhelping them build models to optimize their retail gas effort\nsan juan pricing - evan has been working with the desk to provide indicative\npricing with regard to pec hedging out some of their san juan production\nreserves\npower\npower project development - we have several power projects underway and the\nctg group ( billy lemmons ) is helping us create necessary models\npesc - the retail power stuff lives . i ' ve think that fallon has a new\nattitude on these deals and enron has committed to help them figure out this\nmarket .\npower plant balancing model - we have in our portfolio and will be offering\nbalancing / storage services for chicago area power projects . we would like to\nhave a model or at least a better understanding to help us with this endeavor .\nwe have resources in chicago dedicated to these projects , as well as the\nother stuff we ' re trying to do like negotiate contracts and set up the\nchicago back office function . we plan on adding our own structuring\nresources ( in chicago or houston ) , but we felt that we ought to start by\nfiguring out what support the houston office will be able to provide . i will\nbe in the office this monday ( jan 17 ) , so i hope to be able to catch up with\nyou and discuss some of these items then . feel free to contact me if you\nneed to before then at 312 . 357 . 8876 or pager 800 . 778 . 0291 . thanks\nrichard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.133+0000", "entityId": 6693, "properties": {"text": "Subject: access to research project tracking database\nkevin kindall brought to my attention that a number of new members in the\ngroup may need to get access to the research projects tracking database in\nlotus notes . access can be requested through use of the secutity resource\nrequest form accessed from lotus notes . just submit the form requesting\nthat you be added as a user of the research group ' s research projects\ntracking database .\nthanks ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.137+0000", "entityId": 6694, "properties": {"text": "Subject: re : new computer\njarod :\ncan you help her with the sun equipment ?\nshirley :\nwhat type equipment are you requesting for the other users\nthanks\nlyn\nshirley crenshaw\n01 / 17 / 2000 03 : 43 pm\nto : lyn malina / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kevin g moore / hou / ect @ ect , william\nsmith / corp / enron @ enron\nsubject : new computer\nhi lyn :\ni have not received an answer for the below request for another sun\ncomputer . did you get it ?\nwe also need to order another regular computer like the others that have\nbeen supplied to the research group . it will be for tanya tamarchenko\nand her location on the 19 th floor is eb 1940 . tanya has two offices and\ndoes not have a computer in her office on the 19 th floor .\nco # 0011 - rc # 100038\nthanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 17 / 2000\n03 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 12 / 2000 11 : 14 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : sun computer\nhi lyn ;\nthe research group is in need of another sun computer to be located at\nebl 951 . please let me know that eta .\nco . # 0011 - rc # 100038\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 12 / 2000\n11 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 07 / 2000 01 : 49 pm\nto : lyn malina / hou / ect @ ect\ncc : william smith / corp / enron @ enron , vince j kaminski / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nhi lyn :\nalex huang has requested a new pc and vince kaminski has ok ' d it . please\norder the computer as listed below in alex ' s request .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 07 / 2000\n01 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 07 / 2000 12 : 12 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nshirley ,\nok .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 07 / 2000\n12 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 07 / 2000 08 : 28 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : new pc\nhi shirley ,\ni would like to request for a new pc . my current pc is quite old with not\nenough memory . twice\ni ran out of memory and had to have it people coming to clean it for me .\ntheir suggestion is\nto either get a new hard drive or a new pc . given that dell has pentiumc iii\nprocessor at 800 mhz\non market , i would like to request a pc with process at 500 mhz or higher\nlevel .\nthank you very much .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.145+0000", "entityId": 6695, "properties": {"text": "Subject: new computer\nhi lyn :\ni have not received an answer for the below request for another sun\ncomputer . did you get it ?\nwe also need to order another regular computer like the others that have\nbeen supplied to the research group . it will be for tanya tamarchenko\nand her location on the 19 th floor is eb 1940 . tanya has two offices and\ndoes not have a computer in her office on the 19 th floor .\nco # 0011 - rc # 100038\nthanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 17 / 2000\n03 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 12 / 2000 11 : 14 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : sun computer\nhi lyn ;\nthe research group is in need of another sun computer to be located at\nebl 951 . please let me know that eta .\nco . # 0011 - rc # 100038\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 12 / 2000\n11 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 07 / 2000 01 : 49 pm\nto : lyn malina / hou / ect @ ect\ncc : william smith / corp / enron @ enron , vince j kaminski / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nhi lyn :\nalex huang has requested a new pc and vince kaminski has ok ' d it . please\norder the computer as listed below in alex ' s request .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 07 / 2000\n01 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 07 / 2000 12 : 12 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect , alex\nhuang / corp / enron @ enron\nsubject : new pc\nshirley ,\nok .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 07 / 2000\n12 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 07 / 2000 08 : 28 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : new pc\nhi shirley ,\ni would like to request for a new pc . my current pc is quite old with not\nenough memory . twice\ni ran out of memory and had to have it people coming to clean it for me .\ntheir suggestion is\nto either get a new hard drive or a new pc . given that dell has pentiumc iii\nprocessor at 800 mhz\non market , i would like to request a pc with process at 500 mhz or higher\nlevel .\nthank you very much .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.153+0000", "entityId": 6696, "properties": {"text": "Subject: enroncredit . com - credit pricing methodology\ndear all ,\nattached is a paper describing the proposed methodology for pricing the\n\" bankruptcy swaps \" the credit markets group is launching next week . the\nmethodology is intentionally simplistic - the emphasis has been on providing\ntransparent models to give prices in a quick , easy - to - understand manner ,\nrather than create any new \" rocket science \" . could one or all of you please\nreview the paper , and give feedback on the approach and advice on the areas\nstill under development . this will give us peace - of - mind before the big\nlaunch .\nbryan - could you reread this and outline the sections that need omitting or\nexpanding for publication on the website .\nmany thanks ,\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.159+0000", "entityId": 6697, "properties": {"text": "Subject: cera conference call - tuesday , january 25 , 2000\nkari :\nplease enroll vince kaminski , enron corp . for the conference call to be\nheld on tuesday , january 25 at 4 : 00 pm eastern time .\ninformation requested :\nname : vince kaminski\ncompany : enron corp .\ntelephone # : 713 - 853 - 3848\nhe will call in 10 - 15 minutes prior to the conference call .\nplease confirm his registration .\nthanks and have a great day !\nshirley crenshaw\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.164+0000", "entityId": 6698, "properties": {"text": "Subject: re : lsu seminar visit\njim ,\ni can send you copies of the reprints of some papers i wrote\nor co - authored . please , let me know how many copies do you need .\ni shall prepare power point presentations for the student meeting\nand for the faculty meeting .\nfor the students : review of my group ( things we work on ) with an intention\nof generating some interest among the students and soliciting resumes .\nfor the faculty meeting : challenges that energy markets pose to financial\nmodeling .\ni shall be able to e - mail the power point presentations later this month .\nvince\njim garven on 01 / 17 / 2000 04 : 00 : 25 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : lsu seminar visit\ndear vince ,\nwould you mind emailing to me a short biography / vita sometime when you get\na chance ? also , if you have a paper to circulate or any powerpoint slides\nthat you ' ll want to use either in your presentations to my students\nthursday afternoon , 2 / 3 , or to the faculty seminar on friday morning , 2 / 4 ,\nplease email these to me . this would be greatly appreciated .\nmy colleagues and i are looking forward to your visit on feb . 3 - 4 to lsu .\nsincerely ,\njim garven\njames r . garven\nwilliam h . wright , jr . endowed chair for financial services\ndepartment of finance\n2158 ceba\ne . j . ourso college of business administration\nlouisiana state university\nbaton rouge , la 70803 - 6308\nvoice ( 225 ) 388 - 0477 | fax : ( 800 ) 859 - 6361\ne - mail : jgarven @ lsu . edu\nhome page : http : / / garven . lsu . edu\nvita : http : / / garven . lsu . edu / dossier . html\nresearch paper archive : http : / / garven . lsu . edu / research . html\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.169+0000", "entityId": 6699, "properties": {"text": "Subject: re : lsu seminar visit\ndear vince ,\nwould you mind emailing to me a short biography / vita sometime when you get\na chance ? also , if you have a paper to circulate or any powerpoint slides\nthat you ' ll want to use either in your presentations to my students\nthursday afternoon , 2 / 3 , or to the faculty seminar on friday morning , 2 / 4 ,\nplease email these to me . this would be greatly appreciated .\nmy colleagues and i are looking forward to your visit on feb . 3 - 4 to lsu .\nsincerely ,\njim garven\njames r . garven\nwilliam h . wright , jr . endowed chair for financial services\ndepartment of finance\n2158 ceba\ne . j . ourso college of business administration\nlouisiana state university\nbaton rouge , la 70803 - 6308\nvoice ( 225 ) 388 - 0477 | fax : ( 800 ) 859 - 6361\ne - mail : jgarven @ lsu . edu\nhome page : http : / / garven . lsu . edu\nvita : http : / / garven . lsu . edu / dossier . html\nresearch paper archive : http : / / garven . lsu . edu / research . html\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.174+0000", "entityId": 6700, "properties": {"text": "Subject: global risk management operations\nrecognizing enron \u0001 , s increasing worldwide presence in the wholesale energy\nbusiness and the need to insure outstanding internal controls for all of our\nrisk management activities , regardless of location , a global risk management\noperations function has been created under the direction of sally w . beck ,\nvice president . in this role , sally will report to rick causey , executive\nvice president and chief accounting officer .\nsally \u0001 , s responsibilities with regard to global risk management operations\nwill mirror those of other recently created enron global functions . in this\nrole , sally will work closely with all enron geographic regions and wholesale\ncompanies to insure that each entity receives individualized regional support\nwhile also focusing on the following global responsibilities :\n1 . enhance communication among risk management operations professionals .\n2 . assure the proliferation of best operational practices around the globe .\n3 . facilitate the allocation of human resources .\n4 . provide training for risk management operations personnel .\n5 . coordinate user requirements for shared operational systems .\n6 . oversee the creation of a global internal control audit plan for risk\nmanagement activities .\n7 . establish procedures for opening new risk management operations offices\nand create key benchmarks for measuring on - going risk controls .\neach regional operations team will continue its direct reporting relationship\nwithin its business unit , and will collaborate with sally in the delivery of\nthese critical items . the houston - based risk management operations team under\nsue frusco \u0001 , s leadership , which currently supports risk management activities\nfor south america and australia , will also report directly to sally .\nsally retains her role as vice president of energy operations for enron\nnorth america , reporting to the ena office of the chairman . she has been in\nher current role over energy operations since 1997 , where she manages risk\nconsolidation and reporting , risk management administration , physical product\ndelivery , confirmations and cash management for ena \u0001 , s physical commodity\ntrading , energy derivatives trading and financial products trading .\nsally has been with enron since 1992 , when she joined the company as a\nmanager in global credit . prior to joining enron , sally had four years\nexperience as a commercial banker and spent seven years as a registered\nsecurities principal with a regional investment banking firm . she also owned\nand managed a retail business for several years .\nplease join me in supporting sally in this additional coordination role for\nglobal risk management operations .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.178+0000", "entityId": 6701, "properties": {"text": "Subject: re : resume\nok\nvince j kaminski\n01 / 17 / 2000 12 : 46 pm\nto : elizabeth grant / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : re : resume\nelizabeth ,\nplease , include jim fallon on the list .\nvince\nfrom : elizabeth grant 01 / 17 / 2000 09 : 39 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resume\nwill do !\n- elizabeth\nvince j kaminski\n01 / 17 / 2000 08 : 21 am\nto : elizabeth grant / hou / ect @ ect\ncc : grant masson / hou / ect @ ect , vince j kaminski / hou / ect @ ect , james b\nfallon / hou / ect @ ect\nsubject : resume\nelizabeth ,\ni would like to bring this guy in , not necessarily to hire him ,\nthough it ' s a possibility , but mostly to find out what cinergy is doing .\nwe should include some power traders and originators in the interview list .\ngrant masson can give you some hints .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 17 / 2000\n08 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall . brown @ robertwalters . com on 01 / 14 / 2000 02 : 48 : 42 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : resume\nvince ,\nhope all is well . this candidate would be interested in talking with you .\nregards ,\nmarshall brown\nrobert walters associates\n212 - 704 - 0596\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n- yu _ hai . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.184+0000", "entityId": 6702, "properties": {"text": "Subject: re : visit to enron\nyes you did and my assistant felicia solis is working on the schedule . she\nwill be contacting bob today to introduce herself and to let him know the\narrangements she is making .\n- elizabeth\nvince j kaminski\n01 / 17 / 2000 12 : 48 pm\nto : elizabeth grant / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : visit to enron\nelizabeth ,\nwe want to bring this guy for a formal interview on jan 24 . did i send you\nhis resume ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 17 / 2000\n12 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrobert lee on 01 / 17 / 2000 09 : 36 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : visit to enron\nhi , vince\ni haven ' t yet heard from hr . is there someone i should contact so i can\nfinalize my travel arrangements ?\ni ' m looking forward to the visit .\nthanks , bob lee\nvince j kaminski wrote :\n> bob ,\n>\n> human resources should contact you regarding this trip .\n> see you in 2 weeks .\n>\n> vince\n>\n> robert lee on 01 / 10 / 2000 07 : 13 : 08 am\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : re : visit to enron\n>\n> hi , vince\n>\n> this is to confirm my visit on jan . 24 . i am arriving in houston on\n> sunday , so i can be there at your convenience on monday . let me know\n> the desired time .\n>\n> thanks , bob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.190+0000", "entityId": 6703, "properties": {"text": "Subject: re : resume\ni appreciate your recommendation of van for a summer internship with enron .\ni have communicated with van and let her know that she will have a place on\nour interview schedule at rice .\ni will keep you updated regarding the status of van ' s application .\nthank you ,\nchristy young\nrecruiter\nenron\nvince j kaminski\n01 / 17 / 2000 07 : 39 am\nto : christy young / hou / ect @ ect , beth miertschin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\nsubject : resume\nchristy and beth ,\nvan worked with us during the summer and over the winter break .\nshe did an outstanding job .\ni would like to recommend her for another summer internship and\nalso keep her in mind for the future employment .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 17 / 2000\n07 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" van t . ngo \" on 01 / 16 / 2000 06 : 00 : 57 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : resume\ndear vince ,\nplease find attached a copy of my resume . i have\ntalked with christy young and beth miertschin , the\ncollege recruiters for the a of those ,\ni would be most interested in one of the \" finance\nrotations . \" i would be happy to explore one of\nthe number of groups within this area . ( please\nlet me know if this is sufficient or if you will\nneed me to give more specific indication of which\ndepartment i would like to be considered for an\ninternship . )\ni greatly appreciate your consideration regarding\nmy job opportunities with enron . please let me\nknow if there is anything else i can do to\nfacilitate this process . i look forward to our\nmeeting again .\nsincerely ,\nvan ngo\np . s . shirley , i have mailed to you my parking\npermit . please contact me if you had any problems\nwith it .\n- myresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.195+0000", "entityId": 6704, "properties": {"text": "Subject: marketing ideas for power 2000\ndear vince\ni am delighted that you have agreed to take part in the energy and power\nrisk management 4 th annual congress ? power 2000 ? which will be taking\nplace on 9 & 10 may 2000 in houston , tx at the houstonian .\nas you know energy and power risk management magazine has an excellent\nreputation in the energy community and we want to make this event as\nsuccessful as possible . we are currently in the process of launching the\nevent and researching the publications and associations mentioned during the\nresearch for the conference to make sure that we are getting the best\ncoverage . before we complete the marketing plan for the conference we want\nto be sure that we are reaching all the people who may be interested .\nwe constantly strive to improve the marketing of our events and therefore we\nask our speakers for further ideas and contacts . therefore please could you\nlet me know whether you could help with any of the following .\nare there any particular people that you need to send brochures to ? - we can\ncarry out any mailing on your behalf if you supply us with contact names and\naddresses , alternatively i can send you a quantity of brochures\ndo you have any in - house publications or a newsletter that we should insert\nthe course brochure into - or a diary date page that we could be included\non ?\nwould you like to write to your clients to invite them to attend ? we can\noffer them a 10 % discount and can send them a letter or if you prefer to\nwrite on your own letterhead we will organise the copying and distribution\nfor you .\nhave you any delegate lists from events you have spoken at or attended with\na similar target audience to whom we should be sending information about the\ncourse ?\ndo you have an internet site on which the course could be mentioned ?\ndo you have any other ideas ? any suggestions would be welcome .\nour marketing manager , caroline hyndman will contact you in the near future\nto discuss any ideas you may have . alternatively please give me a call on\n212 925 1864 ext 151 .\nthanks very much for your help in this matter .\nbest regards ,\nemma", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.200+0000", "entityId": 6705, "properties": {"text": "Subject: re : one more thing\nclayton ,\ni agree . this would happen when there is an insufficient pipeline capacity\nto move gas . the market developments you describe happen quite\noften and this is one of the reasons we want to have the model you are working\non .\nvince\nvince\nclayton vernon @ enron\n01 / 17 / 2000 09 : 30 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : one more thing\nvince -\ni forgot to mention to you one other development i propose , a theory i call\n\" uncoupling \" of basis . as an example , severe cold weather specific to the\nmidwest can result in an elevation of spot market prices at henry hub , where\nprices elsewhere in the northeast are such that the basis appears to be less\nthan the commodity charge to ship gas from louisiana to the northeast . this\ncan happen when gas is not being moved in the spot market from louisiana to\nthe northeast at that time . the notion of \" equilibrium \" cannot , in my view ,\nalways assume \" spot \" gas is flowing along all nodes of the network .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.205+0000", "entityId": 6706, "properties": {"text": "Subject: vince kaminski ' s discussion notes for the enterprise wide risk\nmanagement meeting , january 21\nattached please find the discussion notes for the offsite meeting on\nfriday , february 4 th .\nif you have any questions or comments , please let me know .\nvince kaminski ( by shirley crenshaw )\n3 - 3848", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.210+0000", "entityId": 6707, "properties": {"text": "Subject: global risk management initiative\nrick ,\ni read your memo regarding global risk management initiative . i am sending\nyou the\ninformation regarding a related initiative on which i have been working last\nyear and which\nis moving now into the implementation stage . it ' s enterprise - wide risk\nmanagement\nand it ' s really an effort to measure business risks consistently across the\ncompany .\ni hope my group can be helpful in designing the general approach to this\nproblem .\nplease , let me know what your thoughts are .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.215+0000", "entityId": 6708, "properties": {"text": "Subject: re : global risk management operations\nrick ,\ni read your memo regarding global risk management initiative . i am sending\nyou the\ninformation regarding a related initiative on which i have been working last\nyear and which\nis moving now into the implementation stage . it ' s enterprise - wide risk\nmanagement\nand it ' s really an effort to measure business risks consistently across the\ncompany .\ni hope my group can be helpful in designing the general approach to this\nproblem .\nplease , let me know what your thoughts are .\nvince\nenron north america corp .\nfrom : rick causey @ enron 01 / 17 / 2000 06 : 04 pm\nsent by : enron announcements @ enron\nto : all enron worldwide\ncc :\nsubject : global risk management operations\nrecognizing enron \u0001 , s increasing worldwide presence in the wholesale energy\nbusiness and the need to insure outstanding internal controls for all of our\nrisk management activities , regardless of location , a global risk management\noperations function has been created under the direction of sally w . beck ,\nvice president . in this role , sally will report to rick causey , executive\nvice president and chief accounting officer .\nsally \u0001 , s responsibilities with regard to global risk management operations\nwill mirror those of other recently created enron global functions . in this\nrole , sally will work closely with all enron geographic regions and wholesale\ncompanies to insure that each entity receives individualized regional support\nwhile also focusing on the following global responsibilities :\n1 . enhance communication among risk management operations professionals .\n2 . assure the proliferation of best operational practices around the globe .\n3 . facilitate the allocation of human resources .\n4 . provide training for risk management operations personnel .\n5 . coordinate user requirements for shared operational systems .\n6 . oversee the creation of a global internal control audit plan for risk\nmanagement activities .\n7 . establish procedures for opening new risk management operations offices\nand create key benchmarks for measuring on - going risk controls .\neach regional operations team will continue its direct reporting relationship\nwithin its business unit , and will collaborate with sally in the delivery of\nthese critical items . the houston - based risk management operations team under\nsue frusco \u0001 , s leadership , which currently supports risk management activities\nfor south america and australia , will also report directly to sally .\nsally retains her role as vice president of energy operations for enron\nnorth america , reporting to the ena office of the chairman . she has been in\nher current role over energy operations since 1997 , where she manages risk\nconsolidation and reporting , risk management administration , physical product\ndelivery , confirmations and cash management for ena \u0001 , s physical commodity\ntrading , energy derivatives trading and financial products trading .\nsally has been with enron since 1992 , when she joined the company as a\nmanager in global credit . prior to joining enron , sally had four years\nexperience as a commercial banker and spent seven years as a registered\nsecurities principal with a regional investment banking firm . she also owned\nand managed a retail business for several years .\nplease join me in supporting sally in this additional coordination role for\nglobal risk management operations .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.220+0000", "entityId": 6709, "properties": {"text": "Subject: a basic idea of price - offer matching clauses\nvince -\nhere is the basic idea i was alluding to :\nsuppose a car dealer promised to \" match any advertised price . \" then his\ncompetitor would feel the need to respond in kind . and so on , until all\ndealers advertised they would \" match any advertised price . \" now , consider one\nof these dealer ' s decision to perhaps lower his prices . if he does so ,\neveryone will immediately match his price , so his market share will remain\nunchanged , at whatever it was before , but his revenues ( and all other dealers\nas well ) would be lowered by the amount of his price reduction . so , the\ndealer rationally decides not to lower his prices to try to sell more cars .\nnow , suppose a limited partnership , where the partners contract to \" control \"\nwho they are in business with , by putting a \" right of first refusal \" clause\ninto the partnership ' s papers , whereby any partner wishing to sell his\ninterests must offer the remaining partners the right to match any offer the\npartner received from outside for his shares . now , suppose you are an\noutsider , considering doing your due diligence in the thought you might want\nto buy into the partnership . you know if your offer is a \" good \" one from your\nperspective , offering you the prospects of a fair rate of return , the\nexisting partners will match it , and you will get nothing in the deal but you\nwill have paid , from your own pocket , for your due diligence . conversely , if\nyou offer too much for the shares , then the other partners will not match\nyour offer and you will then realize you overpaid . in neither case can you\ncredibly assume you know more about the business than do the current\npartners . so , you ( basically ) don ' t make an offer . so , a partner ' s shares\nare seriously devalued by his partners having the right to match any offers\nhe receives for them . the \" right of first refusal \" clause precludes\neconomically efficient rebalancing of portfolios by rendering the shares\n( essentially ) illiquid .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.226+0000", "entityId": 6710, "properties": {"text": "Subject: network engineering and operations organizational chart\nshirely , please print this out for vice before the meeting .\nthanks ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 01 / 18 / 00 02 : 00\npm - - - - -\njohn griebling\nsent by : michol boyd\n01 / 18 / 00 01 : 41 pm\nto : ec employees - - all\ncc :\nsubject : network engineering and operations organizational chart\nthe network engineering and operations organization is taking shape . the\nattached organization chart reflects my direct reports and the major\ndisciplines within the engineering organization . please support this\nleadership team in executing our mission to support our current network as\nwell as deploy the gfn infrastructure and support systems .\nyou will notice that there are many leadership openings in the organization ,\nplease direct any input regarding external candidates for these positions to\npatty pennington .\nthe network engineering team is also attempting to recruit between 30 to 50\npeople ( as dictated by budget availability ) across the indicated disciplines\nby mid - year .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.231+0000", "entityId": 6711, "properties": {"text": "Subject: re : risk report on \" guide to electricxity hedging \" and request for\ngu est access to enrononline\ned ,\ni sent a message to louise kitchen who runs the enrononline effort .\nshe should be getting back to you shortly .\nvince\nekrapels on 01 / 18 / 2000 12 : 00 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : risk report on \" guide to electricxity hedging \" and request for gu\nest access to enrononline\ndear vince ,\ngreetings from boston , where we ' re doing all we can to help keep the price\nof gas high .\nas i may have told you earlier , i ' m writing a \" guide to electricity hedging \"\nfor risk publications similar to the report on oil . i had planned to write a\nsignificant section on enrononline , and in the midst of my research on the\ntopic was denied access by enron ' s gatekeeper . can you help get me in ?\nas always , the best from here .\ned krapels\n- - - - - original message - - - - -\nfrom : donna greif [ mailto : dcorrig @ ect . enron . com ]\nsent : tuesday , january 18 , 2000 12 : 37 pm\nto : ekrapels @ esaibos . com\nsubject : request for guest access\ndear mr . krapels :\nthank you for requesting guest access to enrononline . unfortunately , we are\nunable to give you quest access at this time .\nenrononline is exclusively for those companies who can transact wholesale\nenergy\ncommodities and related products .\nin addition , you had indicated within the comments section of your email\nthat\nyou are preparing a \" guide to electricity hedging \"\nfor risk publications . i have forwarded your inquiry to our public\nrelations\ndepartment along with your contact information .\nshould you not hear back from anyone within a reasonable amount of time ,\nplease\nfeel free to contact our call center at\n713 853 - help ( 4357 ) .\nsincerely ,\ndonna corrigan greif\nenrononline help desk\n713 / 853 - 9517\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.236+0000", "entityId": 6712, "properties": {"text": "Subject: risk report on \" guide to electricxity hedging \" and request for gu\nest access to enrononline\nlouise ,\nit would be a good commercial for enron . what can we do to help him and\nget free publicity ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 18 / 2000\n01 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nekrapels on 01 / 18 / 2000 12 : 00 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : risk report on \" guide to electricxity hedging \" and request for gu\nest access to enrononline\ndear vince ,\ngreetings from boston , where we ' re doing all we can to help keep the price\nof gas high .\nas i may have told you earlier , i ' m writing a \" guide to electricity hedging \"\nfor risk publications similar to the report on oil . i had planned to write a\nsignificant section on enrononline , and in the midst of my research on the\ntopic was denied access by enron ' s gatekeeper . can you help get me in ?\nas always , the best from here .\ned krapels\n- - - - - original message - - - - -\nfrom : donna greif [ mailto : dcorrig @ ect . enron . com ]\nsent : tuesday , january 18 , 2000 12 : 37 pm\nto : ekrapels @ esaibos . com\nsubject : request for guest access\ndear mr . krapels :\nthank you for requesting guest access to enrononline . unfortunately , we are\nunable to give you quest access at this time .\nenrononline is exclusively for those companies who can transact wholesale\nenergy\ncommodities and related products .\nin addition , you had indicated within the comments section of your email\nthat\nyou are preparing a \" guide to electricity hedging \"\nfor risk publications . i have forwarded your inquiry to our public\nrelations\ndepartment along with your contact information .\nshould you not hear back from anyone within a reasonable amount of time ,\nplease\nfeel free to contact our call center at\n713 853 - help ( 4357 ) .\nsincerely ,\ndonna corrigan greif\nenrononline help desk\n713 / 853 - 9517\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.241+0000", "entityId": 6713, "properties": {"text": "Subject: re : energy derivatives\nhi vince ,\nthanks for your call today - i look forward t speaking to you tomorrow .\ni ' ll be working at home in the mornng ( my time ) - trying to finish up my\nchapters ! - my number is 61 2 9460 3079 .\nbest regards .\nchris .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.249+0000", "entityId": 6714, "properties": {"text": "Subject: vince kaminski ' s bio\ngood morning jim :\nattached please find a short \" bio \" for vince kaminski . if you need anything\nelse , please let me know .\nthe presentations will be forthcoming .\nhave a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.257+0000", "entityId": 6715, "properties": {"text": "Subject: super saturday iv results !\ngood afternoon !\nattached is the list of associate candidates to whom offers have been\nextended from super saturday iv . please feel encouraged to call or e - mail to\ncongratulate them !\nlet me know if you have any questions ( ext . 3 - 6176 ) .\nthank you for all your help !\nelizabeth boudreaux\nps - i have also included the \" no offer \" list , just fyi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.261+0000", "entityId": 6716, "properties": {"text": "Subject: parking pass for van ngo\ngood morning louis :\nplease cancel the \" secom \" parking badge that was issued to van ngo\nfor parking in the 777 clay garage while she was working part time with\nthe research group during the holidays . the number on the card is 4280 .\ni will return the badge to you this morning .\nthe co . # is 0011 and the rc # is 100038 .\nthanks louis and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.266+0000", "entityId": 6717, "properties": {"text": "Subject: old and new extensions\nhello ,\nmay i please have several lines disconnected from my phone\nand several new lines added .\nyou can delete 36336 and 33135 .\nyou can delete 33376 and 39719\nalso 34768 .\nwill you please add 36615 and 34305\nwill you add please jose marquez extension ,\na new hire . ( a new number )\nalso add 39737 and 36286 .\nr . c . 100038\nco . # 0011\nthanks\nkevin moore\nany questions please feel free to call . x 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.271+0000", "entityId": 6718, "properties": {"text": "Subject: re : amit ' s visit\nsounds great .\nthere is another mit student , juan - carlos , who i would like to have accompany\namit on the 16 th . i ' ll speak to him to clear the date .\nall the best .\nstinson gibner @ ect\n01 / 17 / 00 09 : 57 am\nto : thomas d gros / hou / ect @ ect\ncc : jean mrha / enron communications @ enron communications , ravi\nthuraisingham / hou / ect @ ect , samer takriti / hou / azurix @ azurix , vince j\nkaminski / hou / ect @ ect , melissa jones / enron communications @ enron communications\nsubject : amit ' s visit\namit planning to spend the day of february 16 th at enron in order to give an\nupdate on his bandwidth pricing research . we will also try to spend some\ntime in more of a round - table discussion designed pick his brain on any other\nrelated issues on which he may be able to help us . i am corresponding with\namit to set up a more detailed agenda . please let me know if there are\nconflicts which should lead us to choose a different date .\nregards ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.275+0000", "entityId": 6719, "properties": {"text": "Subject: bearish pressure on prices to resume , with an end to cold weather\nin sigh\nhere is esai ' s latest natural gas fundwatch .\nedna o ' connell\noffice manager\nesai\n301 edgewater place , suite 108\nwakefield , ma 01880\n( 781 ) 245 - 2036\n( 781 ) 245 - 8706\nednao @ esaibos . com\n- ngol 1900 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.280+0000", "entityId": 6720, "properties": {"text": "Subject: inquery re : aluminium companies\nvince ,\nmargaret mentioned to me that you might be able to help me with the\nfollowings :\nwe ( central european origination , london office ) might start talking to two\naluminium companies in central europe . before we were to meet them , it would\nbe rather useful ( i suppose ) to find out what aluminium deals ( if any ) you\nclosed in the states . the most important issue would be whether you managed\nto index the price of power to the price of aluminium ; if yes , how .\nyour help would be much appreacited .\nmany thanks ,\njozsef", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.284+0000", "entityId": 6721, "properties": {"text": "Subject: congratulations on your promotion . lou\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.289+0000", "entityId": 6722, "properties": {"text": "Subject: promotion\nvince , i want to congratulate you on your promotion to managing director ! as\ni scanned the list of people who were promoted , i was so pleased to see your\nname on the list . as large as enron is , it is refreshing to see people like\nyou with incredible skill and talent receive deserving promotions . i have\ncertainly enjoyed working with you and the r & d team over the past year and\nlook forward to a successful 2000 as we break new ground for et & s . kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.293+0000", "entityId": 6723, "properties": {"text": "Subject: re : spreadsheet for george posey\nvince -\nhere is an analysis of the fund giving at the church .\nfirst off , it appears from the data that a special \" appeal \" for fund giving\nwas made ( from the pulpit ? ) on april 19 , 1998 and april 25 , 1999 , ( perhaps\ntied rhetorically into income taxes ? ) . then , by going back and incorporating\nobvious dates from the calendars for 1997 - 1999 , the following regression\nanalysis is made , where each effect is added independently :\ngiving this sunday = $ 4403\n+ a minor $ 3 weekly time trend ( i . e . , multiply by the number of weeks since\njan . 5 , 1997 )\n+ no pure effect from last week ' s contributions ( i . e . , denies first - order\nautoregressive effects )\n+ $ 2426 if easter sunday or the sunday nearest christmas\n+ $ 9695 if ( pastoral appeal ) april 19 , 1998 or april 25 , 1999\n- $ 340 if the sunday falls on the weekend of a monday federal holiday\n- $ 50 if the sunday following thanksgiving\n- $ 73 if a summer weekend ( june 1 thru august 31 )\nthe pure time trend is very small , so an annual projection based on all 3\nyears data would be for giving to increase only a minor amount ( $ 150 ) for\n2000 assuming a similar appeal for giving is made this april .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.298+0000", "entityId": 6724, "properties": {"text": "Subject: fx curve for rupee\nharry :\ni am krishna , just visiting our bombay office . can you send the rupee / us $\nforward curve ( upto atleast 2005 ) to this address asap ? we are working on a\ndeal for which we need this urgently . i will be back in houston next week and\ncan talk to you in more detail then . if you need to call here the # is\n91 - 022 - 8239856 ( ask for rajesh sivaraman ) .\nthanks ,\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.302+0000", "entityId": 6725, "properties": {"text": "Subject: poten & partners forecasts\nfyi marg .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret carson / corp / enron on 01 / 21 / 2000\n07 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndoug leach @ ect\n01 / 21 / 2000 07 : 00 am\nto : guy dayvault / corp / enron @ enron\ncc : margaret carson / corp / enron @ enron , rob bradley / corp / enron @ enron , jim\ngoughary / hou / ect @ ect , ted robinson / hou / ect @ ect , wade doshier / hou / ect @ ect ,\ndavid j botchlett / hou / ect @ ect , john l nowlan / hou / ect @ ect\nsubject : poten & partners\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 01 / 21 / 2000 06 : 58 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndoug leach\n01 / 20 / 2000 03 : 47 pm\nto : michael l brown / enron _ development @ enron _ development\ncc : david a terlip / enron _ development @ enron _ development , kevin\nbeasley / lon / ect @ ect , john chismar / sin / ect @ ect , michel decnop / sin / ect @ ect ,\nmaurizio la noce / enron _ development @ enron _ development , marc de la\nroche / hou / ect @ ect\nsubject : poten & partners\njust some of george gail ' s observations :\nhe expects wti crude prices to return to a range of $ 19 - $ 22 / barrel by 2 q 2000\n( brent $ 18 - $ 20 ) although emotions rather than fundamentals will continue to\ndrive the market .\nsaudi ' s sold cal 00 naphtha at $ 8 m / t over the platt ' s ag mean and the\nkuwaiti ' s are offer their naphtha at $ 11 m / t over the mean .\nenoc offered 700 , 000 tons of term naphtha and only sold 200 , 000 tons .\nadnoc ' s splitters should add even more naphtha supplies to the market .\nkoch has closed their rotterdam splitter due to poor economics . not\nnecessarily a permanent shutdown .\nhe expects the brent / dubai spread to return to more normal $ 1 - $ 1 . 25 / barrel .\nregarding condensate he predicts that actual demand will drive the market and\nthere will be less bottomfeeding by the japanese and other refiners . he does\nfeel the new splitters will reduce the worldwide volumes available ,\nbut that there will still be adequate supplies .\nhe thinks crack spreads for refiners will still be weak during cal 00 .\nalthough some resid demand will be displaced by natural gas or lng , he\nexpects fairly stable differentials to crude .\nhe expects strong us gasoline demand , but limits his demand growth projection\nto 1 % for the year .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.307+0000", "entityId": 6726, "properties": {"text": "Subject: auctions with an incumbent ' s right of first refusal\nshelley ,\nmy colleague , clayton vernon , who has a background in economics , wrote a\nshort summary of arguments\nagainst the rofr .\nwe are working on the second approach to the problem : we try to come up with\na numerical estimate of the\nvalue of this option . the fact that an incumbent shipper has this option has\ndistributional consequences :\nhe has something of value he never paid for . having a numerical estimate of\nthe value of this option\ncould help to argue against it . the value of such an option is case specific ;\nso we shall rather\nproduce a template you can use for valuation case by case .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 20 / 2000\n08 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n01 / 20 / 2000 08 : 29 am\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , zlu / hou / ect @ ect\nsubject : auctions with an incumbent ' s right of first refusal\nvince -\nhere is an essay on the issue you are discussing :\nthe adverse economic impact of \" rights of first refusal \"\nan option to \" first refuse \" to match a competitor ' s offer is a restraint of\nfree trade and an impediment to efficiency in the marketplace . this economic\nconclusion is unambiguous .\nif an \" incumbent \" has the right to match an offer made by a competitor , for\nan item or service of value , then few competitors will invest the time and\nexpense necessary to prepare and submit offers , those offers will be lower\nthan they would have been otherwise , and the contract will often be awarded\nto an inefficient incumbent instead of a more efficient challenger .\nin a traditional auction , where all bids are sealed and the item up for\nauction is awarded to the highest bidder , we can safely predict the item will\nbe awarded to the bidder who values it the most , at a price reflecting the\nfull value of the item up for auction . this is the efficient result in a\nmarket economy , because the financing of the high bid reflects resources\nfreely allocated to the high bidder . if the auction has open bids , we can\nagain safely predict the item to be awarded to the correct bidder , albeit at\na slightly lower price to the donor of the item since the bidder with the\nhighest valuation can simply increment by an infinitesimal amount the\nsecond - highest valuation .\nnow , in a modified auction , where an incumbent bidder has the right to match\nthe highest bid and retain the item for himself , each competing bidder must\njustify his own due diligence and bid preparation expenses against the\nfollowing , and likely , scenario : the incumbent does not spend himself for due\ndiligence , but instead uses these savings to help finance his matching the\ntop bid from a competitor .\nsimply put , the incumbent with a \" right of first refusal \" can be safely\npredicted to simply match their competitor ' s bid by \" rule of thumb . \" but the\nincumbent ' s valuation of the item up for auction can be less than the\nvaluation of the competitor , by the amount of the due diligence and\nadministrative expenses . and , the incumbent firm expropriates the expertise\nof his competitors , not only in their valuations themselves , a nontrivial\nfinancial exercise , but in any operational details required to be submitted\nalong with the bid .\nfurthermore , in an esoteric concept known as the \" winner ' s curse , \" a bidder\nrealizes that if his bid actually prevails , if the incumbent fails to match\nit , he almost certainly overbid .\ngiven this , most competitors will not even bother to bid in an auction when\nan incumbent has the right of first refusal , and those that submit a bid do\nnot rationally invest the time , expense and expertise necessary ; they may\njust \" fire off \" a \" low - ball \" bid . after all , in almost every conceivable\n\" state of the world \" arising from the auction the competitors expect to lose\nmoney . so , the incumbent almost always retains the contract at a\nbelow - market price , despite the incumbent not necessarily placing the highest\nvalue on the contract because the incumbent cannot put the contract to its\nmost efficient use .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.311+0000", "entityId": 6727, "properties": {"text": "Subject: re : spreadsheet for george posey\ngeorge ,\nthis is the first cut at the problem you gave us , done by my associate\nclayton vernon .\nplease , feel free to call him with any question . your friend should check\nwhat were the sermons\nhe gave on april 19 and april 25 , in 1998 and 1999 , respectively .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 20 / 2000\n02 : 49 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n01 / 20 / 2000 10 : 56 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : spreadsheet for george posey\nvince -\nhere is an analysis of the fund giving at the church .\nfirst off , it appears from the data that a special \" appeal \" for fund giving\nwas made ( from the pulpit ? ) on april 19 , 1998 and april 25 , 1999 , ( perhaps\ntied rhetorically into income taxes ? ) . then , by going back and incorporating\nobvious dates from the calendars for 1997 - 1999 , the following regression\nanalysis is made , where each effect is added independently :\ngiving this sunday = $ 4403\n+ a minor $ 3 weekly time trend ( i . e . , multiply by the number of weeks since\njan . 5 , 1997 )\n+ no pure effect from last week ' s contributions ( i . e . , denies first - order\nautoregressive effects )\n+ $ 2426 if easter sunday or the sunday nearest christmas\n+ $ 9695 if ( pastoral appeal ) april 19 , 1998 or april 25 , 1999\n- $ 340 if the sunday falls on the weekend of a monday federal holiday\n- $ 50 if the sunday following thanksgiving\n- $ 73 if a summer weekend ( june 1 thru august 31 )\nthe pure time trend is very small , so an annual projection based on all 3\nyears data would be for giving to increase only a minor amount ( $ 150 ) for\n2000 assuming a similar appeal for giving is made this april .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.316+0000", "entityId": 6728, "properties": {"text": "Subject: spreadsheet for george posey\nvince and clayton :\nattached is the spread sheet i worked up for george posey . feel free to\nedit or let me know and i will .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.321+0000", "entityId": 6729, "properties": {"text": "Subject: re : meeting ( fwd )\n- -\nbradley romine\nees / or stanford university\nbradley @ leland . stanford . edu\n- - - - - - - - - - forwarded message - - - - - - - - - -\ndate : thu , 20 jan 2000 12 : 09 : 05 - 0800 ( pst )\nfrom : bradley romine\nto : nick bambos\nsubject : re : meeting\nprofessor bambos ,\n3 pm on wed . is fine with them . so i ' ll see you then in your office\nin terman .\nbrad\non thu , 20 jan 2000 , nick bambos wrote :\n> brad ,\n>\n> yes , i would be happy to meet with them .\n> how about 3 pm on wed .\n>\n> thanks ,\n>\n> nick\n>\n> bradley romine wrote :\n> >\n> > hello professor bambos ,\n> > i was talking to some friends i have at enron about pricing\n> > options for bandwidth trading and other optimization algorithms for\n> > broadband networks . anyway they are interested in talking to you about\n> > your research . they will be in town next week tuesday and wednesday and\n> > would appreciate getting a chance to talk to you . are you available ?\n> >\n> > thanks ,\n> > brad\n> >\n> > - -\n> > bradley romine\n> > ees / or stanford university\n> > bradley @ leland . stanford . edu\n>\n- -\nbradley romine\nees / or stanford university\nbradley @ leland . stanford . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.325+0000", "entityId": 6730, "properties": {"text": "Subject: re : eci id for stinson\nsteve -\ncould you please escalate per our conversation\nthank you\npaula\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paula corey / enron communications on\n01 / 21 / 2000 08 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner @ ect\n01 / 21 / 2000 08 : 09 am\nto : timothy morita - mcvey / enron communications @ enron communications @ enron\ncc : paula corey / enron communications @ enron communications , jean mrha / enron\ncommunications @ enron communications\nsubject : re : eci id for stinson\ntimothy :\ni still have a problem . when i am on the eci network i cannot receive\nemail , and , even worse , i cannot even send email . this is not an\nacceptable situation . i need to have a fully functional email account on\nthe eci side as well as the ena side . don ' t tell me that its against\npolicy because i know that ravi thuraisingham has already be set up this way\nfor months . i don ' t care if mail from one network is forwarded to the\nother as i will have access in houston to both , but i can already see that i\nneed to have functional accounts on both sides , or it will be a continual\nthorn in my side when travelling to portland , etc . . .\nagain thanks for your help on getting this set up correctly ,\n- - stinson gibner\nx 34748\nfrom : timothy morita - mcvey @ enron communications on 01 / 19 / 2000 10 : 20 am pst\nto : stinson gibner / hou / ect @ ect @ enron\ncc :\nsubject : re : eci id\nthanks stinson ,\nthat should give me what i need .\ni understand that you will have two notes id ' s with the eci mail forwarded to\nyour \" stinson gibner / hou / ect @ ect @ enron \" address .\ni should be able to complete this today ( later today )\nthanks ,\ntimothy morita - mcvey\nlotus notes administrator\nenron communications , inc .\n503 . 886 . 0390\ntimothy _ morita - mcvey @ enron . net\nstinson gibner @ ect\n01 / 19 / 00 09 : 07 am\nto : timothy morita - mcvey / enron communications @ enron communications\ncc :\nsubject : eci id\ni must have written down your phone number incorrectly , it did not work .\nregarding my user id on the eci network , i would be set up in the same way\nas ravi thuraisingham with an id on both the ena and the eci networks . i am\nin the corp . research group but am spending about 80 % of my time in support\nof eci in the trading and origination areas .\nfeel free to contact me if you need any further info .\n- - stinson\nhouston x 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.330+0000", "entityId": 6731, "properties": {"text": "Subject: template for pricing the right of first refusal\nshelley and chris ,\ni have set up a template for pricing rofrs . the rofr is priced as a series\nforward start options .\na forward start option gives the holder the right to exercise the option but\nthe strike price\nis set at the money in future before the option expiration . the feature\nmimics the \" matching the best bid \"\nin the rofr . the underlying for the option is the \" best bid \" , which should\nbe closely related to the\nprice differential between the two hubs that the pipeline connects . therefore\nthe rofr is case dependent ,\nas vince pointed out . the volatility can be estimated from the \" best bid \"\nprice history .\nwith these inputs we can estimate the value of rofr . if you have any\nquestions concerning the model\nplease feel free to call me or vince .\nzimin lu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.336+0000", "entityId": 6732, "properties": {"text": "Subject: re : worldpower\nmark ,\ni have an inquiry from a publishing house who are preparing a book on the\nworld power markets .\nthey wanted us to sponsor it ( at the cost of 19 , 000 pounds ) but the reaction\nfrom our power desks\nwas lukewarm .\nthey are offering us an opportunity to advertise in this publocatio .\ni am attaching the message with the terms .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 21 / 2000\n12 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" isherwood production \" on 01 / 21 / 2000 06 : 40 : 08 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : worldpower\ndear mr , kaminski ,\ni have two advertising positions to offer you as follows :\n1 . outside back cover ( plus 200 personalised books ) o 6 , 950 . 00\n2 . inside front cover spread ( plus 200 personalised books ) o 7 , 950 . 00\nplease let me know which ( if any ) options you prefer .\nkind regards ,\nanna liza\nsales director\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nworldpower\nsuite 16 , imperial studios\nlondon , sw 6 2 ag\nunited kingdom\ninfo @ commodities - now . com\nwww . commodities - now . com\ntel : + 44 ( 0 ) 171 736 0774\nfax : + 44 ( 0 ) 171 736 1196\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.341+0000", "entityId": 6733, "properties": {"text": "Subject: projected fund giving\ngeorge -\nhere is one statistical method ( linear regression ) , applied to hosanna ' s fund\ngiving . the method is deterministic , where contributions each sunday are\nattempted to be explained by significant events on the church ' s and members '\ncalendars , and the method shoudl be considered in contrast to an anecdotal\none , where each sunday ' s giving might be estimated to be the average giving\nof the same sunday ( e . g . , each 2 nd sunday in january ) in the past .\nthe following effects are estimated independently by the computer ( they add\nand subtract with each other accordingly ; some sundays can have more than one\neffect \" in play \" ) :\n1 ) most positive for giving : an additional + $ 8 , 802 for special pastoral\nappeals ( 3 of them in the past 3 years )\n2 ) positive for giving : an additional + $ 2 , 551 easter and nearest - christmas\n\" sunday , \" an additional + $ 59 thanksgiving sunday , and a tiny additional + $ 1\neach week pure time trend .\n3 ) negative for giving : - $ 304 for sundays of monday federal holiday weekends ,\nand - $ 9 during the summer ( june 1 - aug 31 )\n4 ) \" wave \" : there is an $ 80 per week \" wave \" - giving $ 80 higher one week , $ 80\nlower the next , etc . . .\nthe computer can explain roughly 60 % of the absolute variation in giving the\npast 3 years using this approach . keep in mind , much of the information ,\nstatistically , is captured in the pastoral appeals , easter and christmas\nsundays , and holiday weekends . the rest of the variation cannot be explained\nby this simple model ( i . e . , it looks like \" noise \" ) .\nhere are the predictions for fund giving for the upcoming year . you can\ncut - and - paste these numbers to any file or spreadsheet you like . they may\nseem \" boring \" to you ; please remember they are the deterministic components\nof a process that involves a lot of volatility , and your church ' s actual\nexperience will predictably be volatile . these numbers are as - if the \" means \"\nof experiences dependent on the \" standard deviations . \"\n01 / 02 / 00 4611\n01 / 09 / 00 4699\n01 / 16 / 00 4394\n01 / 23 / 00 4705\n01 / 30 / 00 4701\n02 / 06 / 00 4702\n02 / 13 / 00 4703\n02 / 20 / 00 4400\n02 / 27 / 00 4710\n03 / 05 / 00 4706\n03 / 12 / 00 4708\n03 / 19 / 00 4709\n03 / 26 / 00 4710\n04 / 02 / 00 4711\n04 / 09 / 00 4712\n04 / 16 / 00 4713\n04 / 23 / 00 7265\n04 / 30 / 00 4672\n05 / 07 / 00 4717\n05 / 14 / 00 4718\n05 / 21 / 00 4719\n05 / 28 / 00 4416\n06 / 04 / 00 4717\n06 / 11 / 00 4713\n06 / 18 / 00 4714\n06 / 25 / 00 4715\n07 / 02 / 00 4716\n07 / 09 / 00 4718\n07 / 16 / 00 4719\n07 / 23 / 00 4720\n07 / 30 / 00 4721\n08 / 06 / 00 4722\n08 / 13 / 00 4723\n08 / 20 / 00 4724\n08 / 27 / 00 4725\n09 / 03 / 00 4432\n09 / 10 / 00 4742\n09 / 17 / 00 4738\n09 / 24 / 00 4739\n10 / 01 / 00 4740\n10 / 08 / 00 4742\n10 / 15 / 00 4743\n10 / 22 / 00 4744\n10 / 29 / 00 4745\n11 / 05 / 00 4746\n11 / 12 / 00 4747\n11 / 19 / 00 4748\n11 / 26 / 00 4808\n12 / 03 / 00 4750\n12 / 10 / 00 4752\n12 / 17 / 00 4753\n12 / 24 / 00 7305\n12 / 31 / 00 4711\nbest wishes ,\nclayton vernon\nmanager , research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.350+0000", "entityId": 6734, "properties": {"text": "Subject: california power\nrick & ted ,\none more thing to watch . california power prices next summer .\nwe see the possibility of higher prices and of spikes ( bad hydro conditions\nin california , growing demand for power ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.357+0000", "entityId": 6735, "properties": {"text": "Subject: energy derivatives book\nhi vince ,\nit was good to speak to you and grant the other day . plese find attached a\nblock of 3 chapters that are basically the middle of the book . this should\ngive you an idea at the level it is pitched - although these are probably\nsome of the the most technical of the chapters . julie who works for us will\nbe getting in contact with you soon to chase you up on your chapter !\ni ' ve asked julie to have a chat to you about a couple of other things at\nthe same time . i hope this is ok with you . julie and i will be making a\ntrip thru houston around the third week of february to try and visit some\nenergy companies . it ' s mainly a fact finding trip to see what the energy\ncompanies are doing and how we might be able to make use of our skills in a\ncommercial sense . would you recommend any people we should talk too ? also\nwe will be running a course on energy derivatives in houston at the end of\nmarch following the success of the course in new york last year and want to\nadvertise this . do you know of people who would be interested in such a\ncourse ?\nwe are currently putting together promotional material for the book - can\nyou please let julie know how you and grant would like to be advertised -\nyour official positions , etc .\nbest regards , and i look forward to reading your chapter soon .\nchris .\n- ed _ vince . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.362+0000", "entityId": 6736, "properties": {"text": "Subject: cameron payne\nvince , congratulations on your promotion . hope the litigation lawyers are\nleaving you alone .\ni ' m attaching a resume of a friend of mine , cameron payne . i don ' t know if\nyou are looking for anyone but cameron is pretty special , as you ' ll see from\nhis resume . call him or me if you ' re interested in talking to him . i ' m\nforwarding his resume to fastow and whalley , too , in case they see a fit .\ntake care . bob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.367+0000", "entityId": 6737, "properties": {"text": "Subject: re : parking pass for van ngo\ndone .\nshirley crenshaw @ ect\n01 / 19 / 2000 07 : 33 am\nto : louis allen @ enron\ncc : vince j kaminski / hou / ect @ ect , kevin g moore / hou / ect @ ect , william\nsmith / corp / enron @ enron\nsubject : parking pass for van ngo\ngood morning louis :\nplease cancel the \" secom \" parking badge that was issued to van ngo\nfor parking in the 777 clay garage while she was working part time with\nthe research group during the holidays . the number on the card is 4280 .\ni will return the badge to you this morning .\nthe co . # is 0011 and the rc # is 100038 .\nthanks louis and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.372+0000", "entityId": 6738, "properties": {"text": "Subject: continuation of spanish classes\nroy :\ni spoke with vince and he approved your continuing your spanish classes .\nif you need anything else , please let me know .\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.377+0000", "entityId": 6739, "properties": {"text": "Subject: re : worldpower\nmark ,\ni agree with you . they do not seem to have the market penetration we need .\nthe benefits don ' t justify the expense .\ni shall notify them .\nvince\nmark palmer @ enron\n01 / 21 / 2000 08 : 22 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : worldpower\ni think we should decline .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.382+0000", "entityId": 6740, "properties": {"text": "Subject: re : resume from a neural networks zealot\nceleste ,\nwe can use this guy as a help for enron broad band svc ' s .\nwe are getting many projects in this area .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 24 / 2000\n07 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkonstantin mardanov on 01 / 24 / 2000 12 : 06 : 42 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resume from a neural networks zealot\non wed , 20 oct 1999 , vince j kaminski wrote :\n> konstantin ,\n>\n> i am sending your resume to the analyst / associate program\n> with the recommendation to accept you as an intern in my group .\n>\n> vince\ndear dr . kaminski ,\nit has been a long time since i contacted you so i was wondering if\nmy resume had been considered for an internship in your group .\ni will appreciate it very much if you let me know when i should expect\nto learn about a decision on the issue .\nthank you for you time .\nsincerely ,\nkonstantin .\nkonstantin mardanov\ndepartment of physics , | 5012 duval st , apt . 206\nuniversity of texas @ austin , | austin , tx 78751 , u . s . a .\nrlm 7 . 316 , austin , tx 78712 |\nu . s . a . | phone : 001 ( 512 ) 374 - 1097\ne - mail : mardanov @ physics . utexas . edu\nurl ( almost obsolete ) : http : / / www . niif . spb . su / ~ mardanov\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.387+0000", "entityId": 6741, "properties": {"text": "Subject: meeting with bob butts\nthis is scheduled for 2 pm on thursday 27 th in his office ebl 906 . you are\nwelcome to join . i will give a overview of what we ( sandeep & co ) are trying\nto do for dpc ( dabhol power ) and ask him to clarify the mark - to - market issues\nrelated to those deals .\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.392+0000", "entityId": 6742, "properties": {"text": "Subject: risk 2000 - boston\ndear vince ,\ni apologise for sending another email . i was wondering if you could confirm\nyour talk title ( plus some bullet points ) for your presentation at our annual\nus congress . i have attached a condensed programme for the event - you are\nspeaking on stream three , part of the new research in derivatives modelling\nand analysis section .\nunfortunately we are printing the brochure at the end of the week and will\nneed these details by thursday 27 january .\nbest regards ,\noliver\ndirect : + 44 171 484 9880\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 171 484 9800 email : conf - ny @ msn . com\nwww . riskpublications . com\n- attl . htm\n- condensed . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.397+0000", "entityId": 6743, "properties": {"text": "Subject: mark - to - market\nbob ,\ni wanted to continue the analysis on mark - to - market that i had spoken to you\nabout on the phone .\ni thought that it was getting very difficult explaining the whole transaction\nby phone , so i am having krishnarao who is in vince ' s group explain the\ntransaction to you .\nkrishna has been helping us structure the deal here in india , and he has just\nreturned to houston from india after working with the team here .\nhe will seek an appointment with you to explain the transaction . i would\nlike you to please spend some time with him , and then based on the discussion\nplease send us a note detailing how sucha a transaction would be marked to\nmarket .\nplease cosider the fact that currently there are no such transactions from\nthe indian side . this is a very important transaction for us , and we may\nneed to repeat this in coming months , hence setting up the system to account\nfor these maybe well worth it . also , what i am concerned about is that there\nwill be an enron india ( eipl ) account in india based on indian gaap , and upon\nconsolidation there will be a us gaap accounting in the us . it is here that\nwe would like to have mark - to - market accounting . eipl is structured through\nmauritius , and then caymen islands .\nanother key question to consider is that when we m - t - m the transaction in the\nus there will be a tax accruing in the year of m - t - m ( say 2000 ) . however , in\nindia , as a result of the accrual accounting , there will not be any income\nshowing till the year 2002 or 2003 . we will need to know how that would get\ntreated , and whether there is a way to get credit for the tax payable in the\nus . i am also confused about whether us tax would be levied , since none of\nthe income is being brought back into the us ( remains overseas - subpart - f\nand other concerns ) .\nfinally , we have been working hard in structuring a fixed price contract and\ngetting a fixed for floating swap in the us ( this is still not allowed to\nindian corporates ) . i need you to think about this too , and see if some type\nof accounting will solve this issue . krishna knows what i am talking about ,\nand will brief you on the same .\nkrishna - please walk bob through the three structures we had worked here .\nlook forward to your help and comments . this is going to be an exciting\nproject for us all .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.402+0000", "entityId": 6744, "properties": {"text": "Subject: re : alberto jimenez ( analyst program )\nalberto ,\nwe would definitely be interested in talking to you when you get to\nhouston . i will have our assistant , shirley crenshaw , set up some time for\nyou to meet with people in our group , which would include myself , zimin lu ,\nand vince kaminski .\nbest regards ,\n- - stinson\n\" alberto jimenez crespo \" on 01 / 24 / 2000\n11 : 43 : 53 am\nplease respond to a _ jimenezcrespo @ mailcity . com\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : alberto jimenez ( analyst program )\ndear mr . gibner :\nit was very interesting talking to you during enron ' s recruiting weekend the\nfirst week of last december .\ni am starting as an analyst next february and i have alot of interest in real\noptions . i have done much of my research in the application of real options\nin the valuation of oil and mining properties using black - scholes , merton ,\nbinomial lattices , etc . i have also done forecast of commodity prices such as\ncopper and oil using both , a geometric brownian motion and a mean reverting\nprocess .\ni remember in our conversation you told me that your department is very\ninvolved with real options so i would like to know if there is an opportunity\nto talk either on the phone or once i am in houston the first week for the\norientation . because i am very interested in working in your department . i\nwon ' t be in houston until february 6 th , but you can reach me at 310 390 7817\nor ajimenez @ mines . edu\nlooking forward to hearing from you .\nsincerely ,\nalberto jimenez\nlycoshop . thousands of products ! one location !\nhttp : / / shop . lycos . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.406+0000", "entityId": 6745, "properties": {"text": "Subject: p . v . krishnarao ' s expenses\ngood afternoon sandeep :\ni sent krishna ' s expenses for his recent trip to our accounting dept . this\nmorning and expensed them to the research group ' s co and rc # .\nhowever , we need to be reimbursed for these expenses and i would like\nto know the best way to do this . our accounting dept . thought we should\njust send an invoice with the back up material to dabhol power co . asking\nthem to cut a check made payable to enron corp . and then it would be\ncredited to our co # and rc # .\nplease let me know if this is acceptable , and if so , who the invoice should\nbe made out to and where i should send it .\ni appreciate your assistance in this matter .\nhave a great day !\nshirley crenshaw\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.412+0000", "entityId": 6746, "properties": {"text": "Subject: re : risk 2000 - boston\noliver ,\ni apologize for the delay . i was traveling over the last few weeks .\nplease , feel free to edit my bullet points .\ni shall be back in the office on friday afternoon . in the meantime you can\nreach me on my cell\nphone : 713 410 5396\nmy name : vince kaminski ( not kaminsky )\nmanaging director\nenron corp .\nthe challenge of valuation of energy related derivatives\n- modeling the dynamics of energy prices\n- incomplete markets\n- complexity of the energy related contracts\n- embedded options\n- multiple layers if optionality\nvince kaminski\n\" oliver bennett \" on 01 / 24 / 2000 08 : 12 : 16 am\nplease respond to \" oliver bennett \"\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : risk 2000 - boston\ndear vince ,\ni apologise for sending another email . i was wondering if you could confirm\nyour talk title ( plus some bullet points ) for your presentation at our annual\nus congress . i have attached a condensed programme for the event - you are\nspeaking on stream three , part of the new research in derivatives modelling\nand analysis section .\nunfortunately we are printing the brochure at the end of the week and will\nneed these details by thursday 27 january .\nbest regards ,\noliver\ndirect : + 44 171 484 9880\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 171 484 9800 email : conf - ny @ msn . com\nwww . riskpublications . com\n- attl . htm\n- condensed . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.418+0000", "entityId": 6747, "properties": {"text": "Subject: organizational announcement\nenron is off to a fantastic start this year as we continue strong growth in\nour wholesale energy businesses and begin rapidly developing a global market\nfor premium broadband services . to help accomplish our goals in these\nbusinesses , the following management appointments are effective immediately :\nkevin p . hannon has been appointed chairman and ceo of enron global risk\nmanagement . in his new role , kevin will devote the vast majority of his time\nand efforts to building a successful bandwidth intermediation business for\nenron , in addition to providing global risk management oversight . kevin will\nreport to enron \u0001 , s office of the chairman and will serve on the executive\ncommittee . because of his efforts to build bandwidth intermediation\ncapabilities , he also will report to the office of the chairman of enron\nbroadband services .\ngreg whalley has been named president and coo of enron north america , where\nhe will fully dedicate his efforts to ena \u0001 , s continued growth and success .\ngreg will retain responsibility for ena \u0001 , s risk management functions but will\ntransition his global responsibilities to kevin .\nplease join us in congratulating greg and kevin in their new positions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.423+0000", "entityId": 6748, "properties": {"text": "Subject: aiesec\nvince ,\nmy name is shelly jones , i am the analyst recruiting manager for the\nassociate / analyst program . christy young passed on information from the\nuniversity of houston aiesec program . due to the restructuring of the\nassociate / analyst program and the new policies regarding the interview\nprocess , compensation , offers , etc . , we will not be participating in the\naiesec program this year . due to your past interest in the program , i have\nforwarded the literature on to you , via inter - office mail , for your\nconsideration .\nplease contact me if you have any questions .\nthank you for your time .\nshelly jones", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.428+0000", "entityId": 6749, "properties": {"text": "Subject: fw : luncheon meeting : asap\ndear mr . kaminski :\njust to bring you up to date . i am no longer with american general . i shall ,\ntherefore , appreciate an opportunity to meet with you for lunch at the\nearliest possible time . i can be reached at 713 - 722 - 7199 .\nthank you .\nmaruti more\n713 - 722 - 7199\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : friday , december 17 , 1999 8 : 55 pm\nsubject : re : luncheon meeting\nthank you for your response . i was very happy to hear from you .\ni am also taking next week off and will be back to work on december 27 th .\nplease do call me when you get back . would very much appreciate the\nopportunity to have a quick lunch with you , if possible . hope everything is\ngoing well .\nhave wonderful christmas holidays .\nregards\nmaruti more\n713 - 831 - 6209 ( o )\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski\ndate : friday , december 17 , 1999 3 : 35 pm\nsubject : re : luncheon meeting\nhello ,\ni shall be taking a few days off around xmas . i shall call you at the end\nof\ndecember\nwhen i get back to the office .\nwith best holiday wishes ,\nvince\n\" more \" on 12 / 01 / 99 09 : 28 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : luncheon meeting\ndear mr . kaminski :\nhow are you doing ? i want to find out if we can meet again for a quick\nlunch .\nyou might know that in maharashtra , india there is now a new chief\nminister\n( ceo of the state government ) . i am proud to say that he and i are from\nthe same\ntown , latur .\ni would really enjoy talking with you again , at your convenience .\ni will call you tomorrow to follow up .\nthank you .\nsincerely ,\nmaruti more\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski ; vkaminski @ aol . com\ndate : thursday , july 01 , 1999 6 : 16 am\nsubject : re : luncheon meeting\ndear mr . more ,\nlet ' s meet at 11 : 45 in the lobby of the enron building .\nwe can walk to one of the restaurants in the downtown area .\nvince kaminski\n( embedded enron capital & trade resources corp .\nimage moved\nto file : from : \" more \"\npicl 7002 . pcx ) 06 / 30 / 99 10 : 38 pm\nto : vince j kaminski / hou / ect\ncc :\nsubject : luncheon meeting\ndear mr . kaminski :\ni am looking forward to our luncheon meeting on this friday , july 2 ,\n1999\nat\n11 : 30 am . please let me know where we should meet . thank you for\ntaking time\nout\nfrom your busy schedule .\nsincerely ,\nmaruti more\ntel . : 713 - 831 - 6209\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.433+0000", "entityId": 6750, "properties": {"text": "Subject: candidate\nvince :\nhere is the resume of samer ' s friend in azurix .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 25 / 2000\n10 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : chonawee supatgiat @ azurix on 01 / 11 / 2000 03 : 47 pm\nto : stinson gibner @ ect\ncc :\nsubject : candidate\nhi dr . gibner , i just called you but you were not there . as you might\nremember , i am working with samer and you was the one who interviewed me for\nthis position . samer and i now keep our eyes open for the other job\npossibilities . i would like to know if there is a position available in enron\nresearch group that i might fit in ? my updated resume and transcript are\nattached in hector ' s e - mail . i am looking forward to hearing from you .\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / hou / azurix on\n01 / 11 / 2000 03 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhector campos @ ect 01 / 11 / 2000 11 : 26 am\nto : stinson gibner / hou / ect @ ect\ncc : chonawee supatgiat / hou / azurix @ azurix , chonawee @ umich . edu\nsubject : candidate\nstinson ,\nhere ' s my friend ' s information . he is looking for other opportunities within\nenron . i think he would be a good candidate for\nthe research group . his extension at azurix is 6 - 9654 .\n- hector\n- - - - - - - - - - - - - - - - - - - - - - forwarded by hector campos / hou / ect on 01 / 11 / 2000 11 : 22\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" chonawee supatgiat \" on 01 / 10 / 2000 09 : 50 : 36 am\nto : hector campos / hou / ect @ ect\ncc :\nsubject : here they are\nthank you , hector . attached are my resume and transcript .\n- chonawee\n- attl . htm\n- chonaweecv . doc\n- acadrep . txt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.438+0000", "entityId": 6751, "properties": {"text": "Subject: re : convergence of the research model\ni was curious about the accuracy of our credit reserve model as a function of\nthe\nnumber of simulations we use . this question , i think , is not so important\nwhen we\ncalculate credit reserve , because the assumptions underlying our model are\npretty\nrough anyway ( here i mean the assumptions regarding price processes ,\ncorrelations , etc . )\nthis question becomes more essential when we talk about calculating\nsensitivities of the\ncredit reserve to various factors . when the magnitude of the sensitivity is\ncomparable\nto the accuracy of calculation of the credit reserve , what is the accuracy of\nsuch sensitivity ?\ni performed a numerical experiment where i calculated the expected loss\nfor a simple portfolio with one counterparty ( sithe ind power ) for different\nnumber of simulations ( 10 , 100 , 1000 , 10000 , 100000 ) using old research\ncredit model .\nyou can see how the result converges and the relative error ( compared to the\nresult for 100000 simulations which is assumed to be the most accurate ) in\nthe\nattached file .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.443+0000", "entityId": 6752, "properties": {"text": "Subject: re : lsu seminar visit\nvince ,\nplease send a package of article reprints to the attention of joan payne at\nthe following address :\njoan payne\ndepartment of finance\ne . j . ourso college of business administration\nlouisiana state university\n2163 ceba\nbaton rouge , la 70803\nin your package , please indicate which presentation each reprint is\nintended for ; i . e . , whether it is for student consumption on thursday\nafternoon or finance faculty / doctoral student consumption on friday\nmorning . joan can make sure that we get the right number of copies\nproduced for the respective audiences .\nconcerning powerpoints - - just email these files to me and if it is all\nright with you i will make them available for download by the faculty and\nstudents on the class and research seminar webpages .\nthanks again for being willing to visit lsu and present your knowledge to\nour faculty and students .\nsincerely ,\njim garven\nat 01 : 39 pm 1 / 18 / 2000 + 0000 , you wrote :\n> jim ,\n>\n> i can send you copies of the reprints of some papers i wrote\n> or co - authored . please , let me know how many copies do you need .\n>\n> i shall prepare power point presentations for the student meeting\n> and for the faculty meeting .\n>\n> for the students : review of my group ( things we work on ) with an intention\n> of generating some interest among the students and soliciting resumes .\n>\n> for the faculty meeting : challenges that energy markets pose to financial\n> modeling .\n> i shall be able to e - mail the power point presentations later this month .\n>\n> vince\n>\n>\n>\n>\n>\n> jim garven on 01 / 17 / 2000 04 : 00 : 25 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : re : lsu seminar visit\n>\n>\n>\n> dear vince ,\n>\n> would you mind emailing to me a short biography / vita sometime when you get\n> a chance ? also , if you have a paper to circulate or any powerpoint slides\n> that you ' ll want to use either in your presentations to my students\n> thursday afternoon , 2 / 3 , or to the faculty seminar on friday morning , 2 / 4 ,\n> please email these to me . this would be greatly appreciated .\n>\n> my colleagues and i are looking forward to your visit on feb . 3 - 4 to lsu .\n>\n> sincerely ,\n>\n> jim garven\n>\n>\n> james r . garven\n> william h . wright , jr . endowed chair for financial services\n> department of finance\n> 2158 ceba\n> e . j . ourso college of business administration\n> louisiana state university\n> baton rouge , la 70803 - 6308\n>\n> voice ( 225 ) 388 - 0477 | fax : ( 800 ) 859 - 6361\n>\n> e - mail : jgarven @ lsu . edu\n> home page : http : / / garven . lsu . edu\n> vita : http : / / garven . lsu . edu / dossier . html\n> research paper archive : http : / / garven . lsu . edu / research . html\njames r . garven\nwilliam h . wright , jr . endowed chair for financial services\ndepartment of finance\n2158 ceba\ne . j . ourso college of business administration\nlouisiana state university\nbaton rouge , la 70803 - 6308\nvoice ( 225 ) 388 - 0477 | fax : ( 800 ) 859 - 6361\ne - mail : jgarven @ lsu . edu\nhome page : http : / / garven . lsu . edu\nvita : http : / / garven . lsu . edu / dossier . html\nresearch paper archive : http : / / garven . lsu . edu / research . html\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.448+0000", "entityId": 6753, "properties": {"text": "Subject: potential new analyst\nhi guys\na number of us interviewed a guy named matthew williams last week for an\nanalyst position . he has a phd in particle physics and experience with monte\ncarlo simulation ( albeit in fortran 77 ) from his academic work . he ' s also a\ngood communicator , having completed a postgrad course in acting , and has been\nactive in the theatre as performer and director .\nif he accepts our job offer then ( after discussion with dale and bryan ) we ' ve\ndecided to give him his first rotation in research here in london . i hope he\naccepts .\ni ' ll keep you posted .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.454+0000", "entityId": 6754, "properties": {"text": "Subject: risk management book order\nvince ,\nfyi , i ordered the risk management book you requested . it will be published\non june 2 nd , and we will receive it shortly thereafter .\njudy\n3 - 9584", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.460+0000", "entityId": 6755, "properties": {"text": "Subject: draft agenda for meeting between icf consulting and enron corp\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n01 / 27 / 2000 12 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" gabriel , steven vaol \" on 01 / 10 / 2000 02 : 25 : 00 pm\nto : pinnamaneni krishnarao / hou / ect @ ect , \" vikas , shree vaol \"\n, \" balakrishnan , s . tx 99 \"\ncc :\nsubject : draft agenda for meeting between icf consulting and enron corp\n>\nkrishna :\ni ' ve attached a draft agenda for the meeting we ' ve been discussing\n( tentatively for february ) . we ' ll try to contact you thursday of this week\nto get your comments . thanks .\n- steve gabriel & shree vikas\n= = = = = = = = = = = = = = = = = = = = = = = = = = =\nsteven a . gabriel , ph . d .\nindustrial address\nproject manager\nicf consulting\n9300 lee highway\nfairfax , va 22031 - 1207\ntel . ( 703 ) 218 - 2624\nfax ( 703 ) 934 - 3968\nsgabriel @ icfconsulting . com\nwww . icfconsulting . com\nacademic address\nprofessorial lecturer\ndept . of engineering management & systems engineering\nthe george washington university\nwashington , dc 20052\nsgabriel @ seas . gwu . edu\n- enron . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.469+0000", "entityId": 6756, "properties": {"text": "Subject: schedule to chelmsford\nhi all , here is what i have so far on the agenda front !\nshirley , we need travel arrangement to attend the meeting mentioned below .\nhere are our prelimnary schedule .\nplease try to check us all in at the double tree in chelmsford , ma where the\nmeeting will be .\nvince cannot attend . there will be four people from our group attending\nincluding myself , stinson , krishna and samer . only stinson and i will attend\nthe dinner on monday night . here is the suggest times by names :\nravi & stinson :\nleave houston around 12 : 00 pm on monday ( jan 31 , 2000 ) to be there for the\ndinner . try to get us in chelmsford , ma in time so that we can attend the\ndinner .\nleave chelmsford , ma around 2 : 00 pm thursday .\none full size rental car for all four of us . you can put this in either mine\nor stinson ' s name .\nkrishna & samer :\nleave houston around 5 : 00 pm to get in time to get a good night sleep to\nattend the meeting tue ( feb 1 ) :\nleave chelmsford , ma either wed 6 : 00 pm or thurs afternoon depending on\nindividual schedule . krishna and samer , please let shirely know when you want\nto get back . as long as you are there for tue and wed full day , you should\nget enough out of the meeting .\nshireley , please call me for more details .\nregards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 01 / 27 / 00 04 : 45\npm - - - - -\nphil markwart\n01 / 26 / 00 08 : 00 pm\nto : barb . vanbeyrer @ sycamorenet . com\ncc : ravi thuraisingham / enron communications @ enron communications , erik\nsimpson / enron communications @ enron communications , stinson gibner / hou / ect @ ect\nsubject : schedule\nplease copy the persons in the cc line with the schedule of 31 jan as soon as\nyou get it .\nat this point , you have told me :\n31 jan travel to chelmsford and dinner around 7 pm ?\n1 feb overall optical design considerations\n2 feb specific route designs\n3 feb more route design", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.476+0000", "entityId": 6757, "properties": {"text": "Subject: foreign language lessons\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 27 / 2000\n01 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nleandro ibasco @ enron\n01 / 27 / 2000 01 : 07 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : please distribute this message to the entire research group\nshirley ,\nkindly forward to the entire research group .\nhi ,\nvince has requested me to inform you that foreign language lessons are\navailable .\namong the languages offered are spanish , portugese , french , german , mandarin ,\nand japanese .\nother languages are possible . the lessons can be done in a small class or\nthrough a private tutor .\nthe schedule is quite flexible with the latest class being at 5 : 00 to 6 : 30\np . m .\nto arrange classes , please contact meilli sanford at ( 713 ) 464 - 8474 . they\nwould need an e - mail\napproval from vince to enroll .\nif you have any questions , please feel free to contact me .\nregards ,\nroy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.481+0000", "entityId": 6758, "properties": {"text": "Subject: the 1999 form w - 2 and retiree tax form 1099 - r\nthe 1999 form w - 2 and retiree tax form 1099 - r will be mailed to your address\nof record by january 31 , 2000 . if you have not received your form by february\n16 th , you may request , in writing , for a duplicate copy to be sent to you .\nplease note that a written request , including authorized signature is\nrequired .\nwhen requesting a duplicate form , please specify the year for which you need\na copy , sign your request , and include the following information :\nname\ncomplete mailing address\nphone number\nsocial security number\nyou may mail your request to :\nenron corp\neb 1667\np o box 1188\nhouston tx 77002\nor you may fax your request to 713 - 646 - 3755 .\nyour request will be processed within one week of receipt .\nif you have a question regarding the information on your form w 2 , please\ncontact ginger sinclair at 713 - 853 - 9567 . ginger will take a detailed message\nof your questions and someone from the payroll tax group will contact you as\nsoon as possible .\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.485+0000", "entityId": 6759, "properties": {"text": "Subject: rice / enron finance seminar series\njones graduate school research seminar series in finance\nsponsored by enron capital and trade resources\npaolo fulghieri\ninsead\nwill give a seminar at the jones school on monday , january 31 ,\n\" information production , dilution costs , and optimal\nsecurity design \"\nthe seminar will begin at 4 : 00 in room 115 .\nplease e - mail me if you would like an advance copy of the paper .\nstay tuned for an update of the spring seminar series schedule .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.490+0000", "entityId": 6760, "properties": {"text": "Subject: project with maria garcia\nvince ,\nhere is a brief about the project with maria garcia .\npromigas , in partnership with others , wants to acquire $ 80 mm tvcable\ncompany in mexico .\npromigas ' s ownership would be 25 % , i . e . , 20 mm . 10 mm of it would come from\ndebt .\nenron wants to participate this deal by offer promigas loan guarantee in\nexchange of call options\non 50 % promigas equity in tvcable .\nfollowing suggestions have been made :\n1 ) get a market quote for the loan guarantee ;\nuse credit risk model to price the guarantee internally ;\nneed to speak to vasant\n2 ) find a comparable company , study the volatility\nusing company value histogram from economics model ( crystal ball output ) ,\ni can fit a lognormal\ndistribution , then find the volatility\n3 ) calcalte the call option value , find braek - even strike .\nany inputs are extremely welcome .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.494+0000", "entityId": 6761, "properties": {"text": "Subject: logistics for the sycamore meeting in chelmsford next week\nhi barb , please add the following enron names to your list . i will call to\nconfirm this later today ( 1 / 28 / 00 ) . krishna and samer , please go ahead and\narrange the travel plans as per the following schedule and my e - mail before .\nkind regards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 01 / 28 / 00 11 : 10\nam - - - - -\nbarb . vanbeyrer @ sycamorenet . com\n01 / 28 / 00 08 : 56 am\nto : phil markwart / enron communications @ enron communications\ncc : ravi thuraisingham / enron communications @ enron communications , erik\nsimpson / enron communications @ enron communications , stinson gibner @ ect , john\ngriebling / enron communications @ enron communications , allan grimm / enron\ncommunications @ enron communications , dorn hetzel / enron communications @ enron\ncommunications , michael baker / enron communications @ enron communications ,\nnicole gilson / enron communications @ enron communications , hardeep\nluthra / contractor / enron communications @ enron communications ,\nlarry . sakauye @ sycamorenet . com , richard reichardt / enron communications @ enron\ncommunications , susan wadle / enron communications @ enron communications\nsubject : logistics for the sycamore meeting in chelmsford next week\nhi phil , here are the logistical details for our meetings next week at\nsycamore in chelmsord ( 10 elizabeth drive ) .\nhotel : double tree in lowell .\ntransportation : everyone should fly into boston monday afternoon / early\nevening . chelmsford is about 40 - 45 minutes from the airport , more in\ntraffic . i can arrange for a car service from the airport to the restaurant\nmonday night for everyone , and have the limo wait for you until we are\nthrough with dinner ( then everyone can leave there bags in the limo ) . if\nsome or all want to use this car service , i ' ll need their flight information\nby friday afternoon so i can make arrangements .\nhere is the agenda for next week :\nmonday : dinner at 7 : 30 pm - agresti ' s restaurant , 175 littleton rd ,\nwestford , ma . directions will immediately follow this email .\ntuesday meetings at sycamore 8 : 30 am - 5 : 00 pm\nplanning session :\n- enron ' s business drivers / vision\n- enron ' s optical networking architecture\n- dinner planned - - location tbd\nwednesday meetings at sycamore 8 : 30 am - 5 : 00 pm\nplanning session :\n- detailed route design\n- deployment planning\n- dinner planned - - location tbd ( boston ? )\nthursday meetings at sycamore 8 : 30 am - 4 : 00 pm\n- review detailed route designs\n- metro area services : access partners\n- depart for airport at 4 pm thursday , or friday morning\ndepending on flight availability\nas of this morning , here is the list of enron attendees that we are\nexpecting :\njohn griebling\ndorn hetzel\nphil markwart\nravi thuraisingham\nstinson gibner\nallan grimm\nerik simpson\nmike baker\nnicole gilson\nhardeep luthra\nrichard reichardt\nvalient employee ( i have no name as of today )\ncan you please let me know of any additions or changes to the attendee list ?\nand please send this email to anyone planning to attend that is not on the\ncc : ' d list . thanks .\nplease call me today , or over the weekend if you have any questions . my\ncell phone number is listed below . look forward to seeing everyone next\nweek !\nbarb\nbarbara van beyrer\nnational account manager\nsycamore networks\noffice : 503 - 977 - 6354\nmobile : 503 - 781 - 0693\nfax : 503 - 977 - 6185\nbarb . vanbeyrer @ sycamorenet . com\nwww . syacmorenet . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.499+0000", "entityId": 6762, "properties": {"text": "Subject: czesc ludmilo , wicku i wicusiu\nco slychac . w polsce zimno , ponuro , w gdansku aktualnie odwilz , co sprzyja\ngrypie . uciekamy przed grypa na tydzien do bialki tatrzanskiej pod\nzakopanem . bylismy tam w zeszlym roku przez 4 dni w zimie i bardzo nam sie\npodobalo . gory w zimie sa naprawde piekne . bylismy pierwszy raz w zimie w\ngorach od 25 lat .\nbardzo bedziemy chcieli wpasc jutro do pabianic ( albo w drodze powrotnej do\ngdanska ) . nie wiem , czy to sie uda , bo wieczor zapada bardzo wczesnie , a ja\nnie moge jezdzic w nocy . latwo sie mecze i szybki zasypiam . bylem u twoich\ndziewczyn we wrzesniu , przypominalem sobie stare czasy jak nocowalismy u was\nz rodzicami , ojciec siedzial na lezaku pod jablonia . ech .\nbylo , minelo . slyszalem , ze wicusiowi idzie nadzwyczajnie . pamietam , jakim ty\nbyles ulubienicem taty ( peptydy w juracie , pamietasz ) .\nmichal ze swoja narzeczona wybiera sie w lecie do ameryki . chcialby\npodszkolic sie w angielskim i przy okazji troche popracowac . oboje studiuja\nmedycyne na trzecim roku . jak myslisz , mogliby znalezc prace w houston ? czy\nmoglbys im w tym pomoc ? oni chcieliby tylko znalezc prace , nie chca was w\nniczym absorbowac .\nco o tym myslisz ?\njak bedziesz znowu w polsce , daj znac . musze z przyjemnoscia powiedziec , ze\npoglady polityczne eli , jadzi i nasze sa identyczne . nawet nie mamy sie o co\npoklocic . generalnie sie zgadzam z balcerowiczem , ale uwazam , ze\nreforma zdrowia jest do d . doznajemy tego na wlasnej skorze .\ntrzymajcie sie cieplo i do uslyszenia .\npa , pa adam t . chemat @ softel . gda . pl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.503+0000", "entityId": 6763, "properties": {"text": "Subject: energy book\nhi vince ,\ni have pulled a list of names together that i would like to send some\nsamples of our chapters of the book too , in the next couple of days , in\norder to try and get one or two sentence \" reviews \" for the dust jacket of\nthe book . i obviously won ' t say anything about enron ' s sponsorship until it\nis official sorted out , but is it ok if i indicate that yourself and grant\nare contributing material to the book ?\ni ' m proposing to send 5 or 6 chapters to the following - unless you have\nany objections or suggestions ?\ndavid shimko\nehud ronn\nhelyette geman\nmark garman\ndragana pilipovic\ncorwin joy\nilia bouchouev\nalexander edyleland\nsteve thomas\nhope the writing is going ok , and regards to grant .\nbest regards .\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.508+0000", "entityId": 6764, "properties": {"text": "Subject: credit applicatiions in grms\nthis note is from ted murphy ( not bjorn hagelman )\nmy understanding is that yet another meeting has been scheduled with the\nintent of diverting resources from the grms project to some other project .\nwhile i am not privy to the urgency of this other project , i do know that we\nhave a very large , multi - phase project going in grms .\ngrms stands for the global risk monitoring system . it is not intended to be\na commercial trading product not is its primary purpose for commercial\ndecision - making . conceptually , it is a risk warehouse for the primary\npurpose of rac due to the deficiency of current front office trading systems\nand their inability to provide timely , aggregated information useful to rac .\nrac has spent over a year developing a business plan scope and detailed task\nlist to accomplish its objectives . as a firm we are woefully behind our\npress clippings in our ability to aggregate and understand our risk profile .\nmy most recent sojorn in europe is a classic example of the current systems\ninabilty to aggregate and meet the needs of rac having abetted poor decision\nmaking and causing cash losses in well in excess of the grms budget or that\nof the market risk group in rac .\nthe grms project is a requirement that bill bradford and i have in order to\ndo our jobs . we have delegated authority to debbie brackett and rudi zipter\nto make decisions regarding priorities and as such meet regularly with\njonathon and his team as well as rick buy to provide updates . while progress\nis never as fast as we would like it , in every instance in which we have only\nto rely on rac , jonathon ' s team and research to make a deadline it haas been\nhit . the primary reason for any delays whatsoever has been the diversion of\nresources off the project or the reliance for cooperation from some other\nsource - most recently the it staff in london was a tremendous impediment to\ndeadlines .\nplease excuse the frustration that is apparently coming through in this note ,\nbut i feel like the boy with his finger in the dyke and no one is listening .\nalso , i have had several employees come to resignation over their frustration\non the lack of management support for this project , usually manifesting\nitself in the lack of resources or the diversion of resources devoted to it .\ni think we have proven collectively that we can organize a modular multiphase\nproject and provide tangible deliverables when not distracted . please let us\ndo our jobs . i do not denigrate the efforts of others , but i believe that\nthey must either submit their detailed requirements to us for our\nconsideration of their worthiness to put in our que or develop their own\nproject with their own resources .\nthank you for your consideration of this opinion . as it relates to things\nthat will effect the ability of market risk to do its job , please consult me\nas i would you .\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.512+0000", "entityId": 6765, "properties": {"text": "Subject: call option - promigas\nzimin , thanks for the meeting yesterday , your help is going to be very\nvaluable for the analysis of our deal .\nbelow you will find the names of the comparable companies you can use for the\nstudy of the volatility :\ncablevision\ncomcast\ncox communications\nmediaone group\nrogers communications\ntime warner\nmorgan stanley dean witter published a memorandum on january 5 / 00 \" us\ninvestment research : cable television \" where you can get detailed\ninformation on the performance of these companies\nwe will be working on the histogram during the weekend and we will be sending\nthe results to you as soon as possible .\nregarding the quotes for the loan guarantee we will be getting them on monday .\nplease let me know if you will need any additional information for the\nvolatility study\nthanks and regards ,\nmaria elena", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.517+0000", "entityId": 6766, "properties": {"text": "Subject: fwd : dinner for paula\nreturn - path :\nreceived : from rly - zbo 2 . mx . aol . com ( rly - zbo 2 . mail . aol . com [ 172 . 31 . 41 . 2 ] ) by\nair - zbol . mail . aol . com ( v 67 _ bl . 21 ) with esmtp ; fri , 28 jan 2000 17 : 38 : 20 - 0500\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 152 . 140 . 66 ] ) by\nrly - zbo 2 . mx . aol . com ( v 67 _ bl . 21 ) with esmtp ; fri , 28 jan 2000 17 : 38 : 03 - 0500\nreceived : from dservl . ect . enron . com ( dservl . ect . enron . com [ 172 . 16 . 1 . 37 ] ) by\nmailman . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / corp - 1 . 03 ) with esmtp id waal 4060 for\n; fri , 28 jan 2000 22 : 37 : 36 gmt\nreceived : from notes . ect . enron . com ( notes . ect . enron . com [ 172 . 16 . 4 . 33 ] ) by\ndservl . ect . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 ) with smtp id qaa 22343 for\n; fri , 28 jan 2000 16 : 38 : 01 - 0600 ( cst )\nreceived : by notes . ect . enron . com ( lotus smtp mta v 4 . 6 . 5 ( 863 . 2 5 - 20 - 1999 ) )\nid 86256874 . 007 c 528 f ; fri , 28 jan 2000 16 : 37 : 55 - 0600\nx - lotus - fromdomain : ect\nfrom : \" vince j kaminski \"\nto : vkaminski @ aol . com\nmessage - id :\ndate : fri , 28 jan 2000 16 : 37 : 55 - 0600\nsubject : dinner for paula\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\ncontent - disposition : inline\ncontent - transfer - encoding : 7 bit\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 28 / 2000\n04 : 37\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : marie thibaut @ enron communications on 01 / 26 / 2000 02 : 55 pm\nsent by : marie thibaut @ enron communications\nto : ametz @ uswebcks . com , steve lovett / enron communications @ enron\ncommunications , richard weeks / enron communications @ enron communications ,\nanthony mends / hou / azurix @ azurix , vince j kaminski / hou / ect @ ect\ncc : paula corey / enron communications @ enron communications\nsubject : dinner for paula\nalaina , richard , vince , tony , elizabeth and paula - following are directions\nto\npaula ' s birthday dinner ( 6 : 30 pm ) at my house on saturday night , the 29 th\nnote to all\ni hope these directions are somewhat clear but . . . . before you read my\ndirections\nplease be advised that it is a well known fact that marie thibaut has\nabsolutely\n\" no sense of direction \" ! !\ndirections to my house - coming in from beltway 8 north / sam houston tollway -\nexit onto tomball parkway / 249 n and exit towards fml 960 , turn right on 1960 ,\nstay on 1960 for approximately 3 miles .\nturn left on wunderlich ( there is a 24 hour gym on the corner ) stay on\nwunderlich until you come to 14515 trophy club condos - on the left side of\nstreet . turn left into the condos and press * 6070 at the gate entrance .\ncontinue to the left ( which bears slightly to the right ) , pass over 2 speed\nbumps until you come to the end of street . turn left and my unit is on the\nright side upstairs # 706 . call me at 281 - 587 - 2029 if you have trouble with my\ndirections .\ndirections to my house - coming in from i 45 - exit at 1960 going west , stay\non\n1960 for approximately 9 miles . turn right on wunderlich until you come to\nthe\n14515 trophy club condos - on the left side of street . turn left into the\ncondos and press * 6070 at the gate entrance . continue to the left ( which\nbears\nslightly to the right ) , pass over 2 speed bumps until you come to the end of\nstreet . turn left and my unit is on the right side upstairs # 706 . call me at\n281 - 587 - 2029 if you have trouble with my directions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.521+0000", "entityId": 6767, "properties": {"text": "Subject: work at enron\nhi , vince\ni just wanted to thank you for the opportunity to interview for a\nposition with your group . i find the work described very interesting and\nthe work environment very appealing .\ni think the retail area would be a good match with my skills and\ninterests , and i could make a contribution very quickly . i believe that\nthe power and options valuation areas would make a good fit as well , if\nthat matches your needs .\nthanks again ,\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.526+0000", "entityId": 6768, "properties": {"text": "Subject: saturday\non saturday i came to work and did some things that i needed to do .\nalso , there were some things left undone that i felt i should do .\nmainly the conference room - we will schedule all birthday ' s and meetings in\nthe large conference room therefore , i made the room look more spacious .\nalso on monday - we need to check with the painters too see if they are going\nto repair our walls .\nwe also need to get the additional pictures from the cage and get\nthem placed on the wall whereby the move can be completed .\nif either of you have any questions or know of more things to do please\nlet ' s get together and discuss .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.531+0000", "entityId": 6769, "properties": {"text": "Subject: computers from research group\ngood morning all :\nthis past weekend you moved two computers from ebl 972 b and 1972 g\nand were supposed to install them in ebl 941 and eb 1952 . what\nhappened ? there is no computer in eb 1941 and only the monitor in\neb 1952 . we need this equipment back . please install as soon as\npossible .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.536+0000", "entityId": 6770, "properties": {"text": "Subject: fwd : mark - to - market\nreturn - path :\nreceived : from rly - ygol . mx . aol . com ( rly - ygol . mail . aol . com [ 172 . 18 . 147 . 1 ] ) by\nair - ygo 5 . mail . aol . com ( v 67 _ bl . 21 ) with esmtp ; fri , 28 jan 2000 18 : 00 : 52 - 0500\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 152 . 140 . 66 ] ) by\nrly - ygol . mx . aol . com ( v 67 _ bl . 21 ) with esmtp ; fri , 28 jan 2000 18 : 00 : 36 - 0500\nreceived : from dservl . ect . enron . com ( dservl . ect . enron . com [ 172 . 16 . 1 . 37 ] ) by\nmailman . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / corp - 1 . 03 ) with esmtp id xaal 9726 for\n; fri , 28 jan 2000 23 : 00 : 07 gmt\nreceived : from notes . ect . enron . com ( notes . ect . enron . com [ 172 . 16 . 4 . 33 ] ) by\ndservl . ect . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 ) with smtp id raa 24406 for\n; fri , 28 jan 2000 17 : 00 : 32 - 0600 ( cst )\nreceived : by notes . ect . enron . com ( lotus smtp mta v 4 . 6 . 5 ( 863 . 2 5 - 20 - 1999 ) )\nid 86256874 . 007 e 6242 ; fri , 28 jan 2000 17 : 00 : 26 - 0600\nx - lotus - fromdomain : ect\nfrom : \" vince j kaminski \"\nto : vkaminski @ aol . com\nmessage - id :\ndate : fri , 28 jan 2000 17 : 00 : 29 - 0600\nsubject : re : mark - to - market\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\ncontent - disposition : inline\ncontent - transfer - encoding : 7 bit\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 28 / 2000\n05 : 00\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : wade cline @ enron _ development on 01 / 28 / 2000 07 : 17 am ze 5 b\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc : sandeep kohli / enron _ development @ enron _ development , vince j\nkaminski / hou / ect @ ect\nsubject : re : mark - to - market ( document link : vince j kaminski )\nsandeep ,\ncan dpc sell to mseb and have eipl buy an equivalent amount of power from mseb\nat another spot on their grid , and then eipl sell to the 3 rd party state ?\npinnamaneni krishnarao @ ect\n01 / 27 / 2000 04 : 00 pm\nto : sandeep kohli / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , wade\nsubject : re : mark - to - market ( document link : wade cline )\nsandeep :\ni met with bob today and discussed the deal structure we put together . on\nthe mark - to - market issue , bob and his colleague wess told me that as long as\npayments are tied to one particular plant , we cannot m - t - m them . they had same\nproblem with plants here in the us ( like the peaking plants ) and they had to\nseparate the plant from power sales to be able to m - t - m the assocated\ncashflows .\nwhat they did is : they sold power from the plant to an outside party and\nbought\nit back from them at completely different ( multiple ) locations . the buyback is\nnot tied to any specific plant and is marked to maket . even if enron can\nsomehow\nmark - to - market a deal with dpc , it can do so for only 50 % of the cashflows\nbecause only 50 % of dpc is owned by outsiders . and a simple loan to an\naffiliate cannot also be marked to market .\nbob was suggesting that if eipl buys options from dpc and from some other\nplants and in turn sells power to ap or karnataka then we could have a case\nfor\nm - t - m . politically dpc selling power to eipl may not be the best solution , to\nput it rather mildly !\nour alternatives , as i see them , are\n1 . do the deal as we structured it . the only difference is that enron doesn ' t\nmark it to market and income is earned only in 2002 - 03 .\n2 . do the deal as we structured it . eipl / enron then sells the contract to\nanother party at a profit . the problem , of course , is finding this party and\nforking part of the profit to them .\n3 . same deal , except revenue securitization is done through an outside party\nin\nindia ( not eipl ) .\nbob said he will think about the issues some more this week . let me know when\nyou will be here next week so we can meet with bob together . i will be going\nto\nboston for tuesday and / or wednesday ( feb . 1 - 2 ) . i can book an appt . with bob\nfor\nus .\nsandeep kohli @ enron _ development\n01 / 23 / 2000 09 : 45 pm\nto : robert butts , pinnamaneni krishnarao @ ect\ncc : vince kaminski , wade cline / enron _ development @ enron _ development , ananda\nmukerji , jaiprakash desai / enron _ development @ enron _ development\nsubject : mark - to - market\nbob ,\ni wanted to continue the analysis on mark - to - market that i had spoken to you\nabout on the phone .\ni thought that it was getting very difficult explaining the whole transaction\nby\nphone , so i am having krishnarao who is in vince ' s group explain the\ntransaction\nto you .\nkrishna has been helping us structure the deal here in india , and he has just\nreturned to houston from india after working with the team here .\nhe will seek an appointment with you to explain the transaction . i would like\nyou to please spend some time with him , and then based on the discussion\nplease\nsend us a note detailing how sucha a transaction would be marked to market .\nplease cosider the fact that currently there are no such transactions from the\nindian side . this is a very important transaction for us , and we may need to\nrepeat this in coming months , hence setting up the system to account for these\nmaybe well worth it . also , what i am concerned about is that there will be an\nenron india ( eipl ) account in india based on indian gaap , and upon\nconsolidation\nthere will be a us gaap accounting in the us . it is here that we would like\nto\nhave mark - to - market accounting . eipl is structured through mauritius , and\nthen\ncaymen islands .\nanother key question to consider is that when we m - t - m the transaction in the\nus\nthere will be a tax accruing in the year of m - t - m ( say 2000 ) . however , in\nindia , as a result of the accrual accounting , there will not be any income\nshowing till the year 2002 or 2003 . we will need to know how that would get\ntreated , and whether there is a way to get credit for the tax payable in the\nus .\ni am also confused about whether us tax would be levied , since none of the\nincome is being brought back into the us ( remains overseas - subpart - f and\nother\nconcerns ) .\nfinally , we have been working hard in structuring a fixed price contract and\ngetting a fixed for floating swap in the us ( this is still not allowed to\nindian\ncorporates ) . i need you to think about this too , and see if some type of\naccounting will solve this issue . krishna knows what i am talking about , and\nwill brief you on the same .\nkrishna - please walk bob through the three structures we had worked here .\nlook forward to your help and comments . this is going to be an exciting\nproject\nfor us all .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.541+0000", "entityId": 6771, "properties": {"text": "Subject: fwd : credit applicatiions in grms\nreturn - path :\nreceived : from rly - yho 3 . mx . aol . com ( rly - yho 3 . mail . aol . com [ 172 . 18 . 147 . 35 ] )\nby air - yho 3 . mail . aol . com ( v 67 _ bl . 21 ) with esmtp ; fri , 28 jan 2000 17 : 34 : 19\n- 0500\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 152 . 140 . 66 ] ) by\nrly - yho 3 . mx . aol . com ( v 67 _ bl . 21 ) with esmtp ; fri , 28 jan 2000 17 : 34 : 06 - 0500\nreceived : from dservl . ect . enron . com ( dservl . ect . enron . com [ 172 . 16 . 1 . 37 ] ) by\nmailman . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / corp - 1 . 03 ) with esmtp id waal 2938 for\n; fri , 28 jan 2000 22 : 33 : 40 gmt\nreceived : from notes . ect . enron . com ( notes . ect . enron . com [ 172 . 16 . 4 . 33 ] ) by\ndservl . ect . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 ) with smtp id qaa 21960 for\n; fri , 28 jan 2000 16 : 34 : 05 - 0600 ( cst )\nreceived : by notes . ect . enron . com ( lotus smtp mta v 4 . 6 . 5 ( 863 . 2 5 - 20 - 1999 ) )\nid 86256874 . 007 bf 6 c 3 ; fri , 28 jan 2000 16 : 34 : 00 - 0600\nx - lotus - fromdomain : ect\nfrom : \" vince j kaminski \"\nto : vkaminski @ aol . com\nmessage - id :\ndate : fri , 28 jan 2000 16 : 33 : 56 - 0600\nsubject : credit applicatiions in grms\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\ncontent - disposition : inline\ncontent - transfer - encoding : 7 bit\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 28 / 2000\n04 : 33\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbjorn hagelmann\n01 / 28 / 2000 09 : 25 am\nto : william s bradford / hou / ect @ ect , jonathan le / hou / ect @ ect , gary\nhickerson / hou / ect @ ect , philippe a bibi / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : rick buy / hou / ect @ ect , mike mcconnell / hou / ect @ ect\nsubject : credit applicatiions in grms\nthis note is from ted murphy ( not bjorn hagelman )\nmy understanding is that yet another meeting has been scheduled with the\nintent\nof diverting resources from the grms project to some other project .\nwhile i am not privy to the urgency of this other project , i do know that we\nhave a very large , multi - phase project going in grms .\ngrms stands for the global risk monitoring system . it is not intended to be a\ncommercial trading product not is its primary purpose for commercial\ndecision - making . conceptually , it is a risk warehouse for the primary purpose\nof rac due to the deficiency of current front office trading systems and their\ninability to provide timely , aggregated information useful to rac .\nrac has spent over a year developing a business plan scope and detailed task\nlist to accomplish its objectives . as a firm we are woefully behind our press\nclippings in our ability to aggregate and understand our risk profile . my\nmost\nrecent sojorn in europe is a classic example of the current systems inabilty\nto\naggregate and meet the needs of rac having abetted poor decision making and\ncausing cash losses in well in excess of the grms budget or that of the market\nrisk group in rac .\nthe grms project is a requirement that bill bradford and i have in order to do\nour jobs . we have delegated authority to debbie brackett and rudi zipter to\nmake decisions regarding priorities and as such meet regularly with jonathon\nand\nhis team as well as rick buy to provide updates . while progress is never as\nfast as we would like it , in every instance in which we have only to rely on\nrac , jonathon ' s team and research to make a deadline it haas been hit . the\nprimary reason for any delays whatsoever has been the diversion of resources\noff\nthe project or the reliance for cooperation from some other source - most\nrecently the it staff in london was a tremendous impediment to deadlines .\nplease excuse the frustration that is apparently coming through in this note ,\nbut i feel like the boy with his finger in the dyke and no one is listening .\nalso , i have had several employees come to resignation over their frustration\non\nthe lack of management support for this project , usually manifesting itself in\nthe lack of resources or the diversion of resources devoted to it .\ni think we have proven collectively that we can organize a modular multiphase\nproject and provide tangible deliverables when not distracted . please let us\ndo\nour jobs . i do not denigrate the efforts of others , but i believe that they\nmust either submit their detailed requirements to us for our consideration of\ntheir worthiness to put in our que or develop their own project with their own\nresources .\nthank you for your consideration of this opinion . as it relates to things\nthat\nwill effect the ability of market risk to do its job , please consult me as i\nwould you .\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.549+0000", "entityId": 6772, "properties": {"text": "Subject: status\nstinson ,\nas you requested , i spoke with brad mcsherry concerning the position , salary ,\nand immediate supervisor . i asked brad to provide a formal letter of offer\nand informed him that i needed it before the end of business friday .\nunfortunately , i have not received the letter thus far . although the job was\nwell defined , i felt that the administrative details of the position were not\nclearly laid out . for example , i specifically asked last week who my manager\nwould be and was told that it would be you . however , i later found out ( by\nchance ) that this was not the case . also , it was unclear whether i would be\nin the research group or in enron communications .\nalthough these two issues are not critical and under normal circumstances\nwould be resolved , given previous confusion regarding my role and\ncompensation with the research group , i feel less comfortable accepting the\nposition . to be specific , there was an unnecessary struggle regarding my\ninterview reimbursement and there were problems regarding my bonus . in\ngeneral i feel that there has been a significant lack of communication and\nrespect .\ntherefore i feel that i am left with the decision not to make the move to\nenron and feel that it would be in everyone ' s best interest not to pursue\nthis any further . thank you .\n- samer\n[ brad , as i indicated on friday please do not perform any kind of transfer .\nthanks . ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.553+0000", "entityId": 6773, "properties": {"text": "Subject: color copier information\nkevin ,\nplease see the following websites for features and specifications of the\ncolor copiers currently available to enron and pricing is on an attacment @\nthe bottom of the mesage . let me know if you would like to meet with any of\nthe reps or if vince / mike / shirley or yourself would want to take a trip to\nthe vendor location for demonstrations on any of the equipment listed below .\nthese color copiers are only supported by the vendor and the lease would be\nbetween your group and the relative vendor . response times have been\nspecified as 4 hr from the time the call is placed to the vendor tech\narriving during normal business hours . after hours service is available @\npremium rates , yet to be quoted = let me know if you require this after hours\nservice pricing .\nepsc key - op does not currently support color copier equipment and as such ,\nsomeone in your group would receive the necessary training for low level\nmaintenance { jams / toner / staples etc } . you would also need to store the\nnecessary supplies for the selected color copier .\nlanier 5706\nwebsite : - - > http : / / www . lanier . com / ps / products / wkgrp / c 5706 . html\ncanon clc 900\nwebsite : - - > http : / / www . usa . canon . com / corpoffice / copiers / clc 900 . html\nlanier 5710\nwebsite : - - > http : / / www . lanier . com / ps / products / hivol / c 5710 . html\ncanon clcl 150\nwebsite : - - > http : / / www . usa . canon . com / corpoffice / copiers / clcl 150 . html\n{ we have one of these installed @ 3 acl 612 }\ncanon clc 2400\nwebsite : - - > http : / / www . usa . canon . com / corpoffice / copiers / clc 2400 . html\ncanon clcl 000\nwebsite : - - > http : / / www . usa . canon . com / corpoffice / copiers / clcl 000 . html\n{ we have some of these installed @ 3 acl 8 & 3 aco 9 }\npricing\nplease see attached winzip file : - - >\nthanks , iain russell @ 713 - 853 - 6861\ncontracts supervisor administration\nenron property & services corp .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.559+0000", "entityId": 6774, "properties": {"text": "Subject: fyi = re : color copier\nkevin ,\nupdate : one vendor has not provided enough information for me to give you an\n\" apples to apples \" comparison , so i have sent him an urgent e - mail message\nfor him to provide clarification on some points .\nall being well , we will have the info . to you sometime on monday = if the\nvendor i mentioned above does not get back to me on monday , i will send you\nthe quote i have on file from danka .\nthanks for your patience , iain . . . . . . . . . . . . . . . . .\niain russell\n01 / 19 / 2000 02 : 10 pm\nto : kevin g moore / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , carole rogers / epsc / hou / ect @ ect\nsubject : re : color copier\nkevin ,\ni have sent a request to our vendors to provide us with quotes on the color\ncopier equipment available and will contact you as soon as i receive the bids .\nthanks , iain . . . . . . . . . . . . . . . . .\nkevin g moore\n01 / 19 / 2000 07 : 23 am\nto : iain russell / epsc / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : color copier\nhello iain ,\ni need your expertise again .\nour department is in need of a color\ncopier .\nwe need a color copier that can handle\nour daily work - load .\nthis printer will be for the use of research and\nthe trading floors .\nas you may already know we use a lot of maps ,\ncharts , graphs etc . .\nplease inform me as soon as possible .\nthanks\nkevin moore\nwhat i need is cost .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.569+0000", "entityId": 6775, "properties": {"text": "Subject: re : additional bloomberg terminal for weather group on 31 st floor\njason ,\nthere was a problem with the request . i could not approve it ( the system would\nnot let me do it ) . there must have been a mistake in the way it was\nsubmitted ) .\nplease , ask shirley to resubmit .\nvince\nfrom : jason sokolov 01 / 28 / 2000 08 : 51 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : additional bloomberg terminal for weather group on 31 st floor\nvince ,\na few weeks ago we talked about installing an additional bloomberg terminal\non the 31 st floor for mike ' s weather team .\ni have submitted a security request , and we are now waiting for your\napproval .\ncould you , please , go over that request and give mike roberts and me your\nfeedback ?\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.576+0000", "entityId": 6776, "properties": {"text": "Subject: ees retail risk meeting 1 / 31\nthis is to confirm a meeting scheduled for today , at 3 : 00 p . the location of\nthe meeting is eb 2868 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by veronica valdez / hou / ect on 01 / 31 / 2000\n09 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nveronica valdez\n01 / 28 / 2000 04 : 22 pm\nto : vince j kaminski / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , jonathan\nle / hou / ect @ ect , grant masson / hou / ect @ ect , dennis benevides / hou / ees @ ees ,\nronnie chahal / hou / ees @ ees , james d steffes / hou / ees @ ees\ncc : shirley crenshaw / hou / ect @ ect , la donna finnels - neal / hou / ees @ ees , vladimir\ngorny / hou / ect @ ect , marcia a linton / hou / ees @ ees\nsubject : meeting\nplease have your assistant call me to coordinate the meeting listed below .\nas per the message , we would like to schedule it on monday , january 31 .\nthanks ,\nveronica\n- - - - - - - - - - - - - - - - - - - - - - forwarded by veronica valdez / hou / ect on 01 / 28 / 2000\n04 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : vladimir gorny 01 / 27 / 2000 06 : 03 pm\nto : veronica valdez / hou / ect @ ect\ncc :\nsubject : meeting\nveronica ,\ncould you please assist me in coordinating the meeting :\ntopic : ees retail risks\ntime : monday\ninvitees : vince kaminski , tanya tamarchenko , jonathan le , grant mason , dennis\nbenevides , ronnie chahal and jim steffes\ni would also like to send the following presentation to the participants\nthanks , vlady .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.580+0000", "entityId": 6777, "properties": {"text": "Subject: re : bryan seyfried visiting houston\ni have scheduled the meeting for friday , february 11 at 9 : 00 am .\nhave a great day !\nshirley\nvince j kaminski\n01 / 31 / 2000 08 : 52 am\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect , danya\nmoody / lon / ect @ ect\ncc :\nsubject : bryan seyfried visiting houston\nshirley ,\ncan you please set up the meeting .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2000\n08 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndanya moody\n01 / 31 / 2000 08 : 32 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : bryan seyfried visiting houston\nhi vince\nbryan seyfried will be in houston on the 9 , 10 & 11 th february and was hoping\nto arrange an hour with you on one of these days . he is available any time\nexcept the morning of 10 th february .\ncould you please let me know if this is possible and if so what time suits\nyou .\nthanks\ndanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.585+0000", "entityId": 6778, "properties": {"text": "Subject: re : stressing correlations\nhi , everybody ,\nfollowing up on our discussions on stressing correlations i made a\nspreadsheet and a dll .\nhere is what it does :\nin the input ( \" main \" sheet ) the user has to specify :\n- the size of the correlation matrix ;\n- the row and column for the element he wants to stress ( row = 1 and col = 3 in\nthe example )\n- the integer number n _ iter ;\n- the original correlation matrix .\nin the output ( see sheet \" results \" ) we see 2 columns :\n- the first column contains possible correlation values ( from - 1 to 1 ,\nn _ iter + 1 numbers ) for the element ( 1 , 3 ) ,\n- the second column contains the smallest eigenvalue for the \" stressed \"\ncorrelation matrix\n( which is the same as the original matrix except the elements ( 1 , 3 ) and ( 3 , 1 )\nwhich take values from - 1 to 1 ) .\nthus , the user can see which values for the chosen element ( 1 , 3 ) are\npermitted\n( those for which the smallest eigenvalue is positive ( marked green in the\nexample ) .\nthe user might decide that he wants to assign the correlation which is \" not\npermitted \" to this particular element\n( the smallest eigenvalue is negative ) . then the user might have a few options :\n1 . all the elements of the correlation matrix will be modified so that the\nchosen element has the\ndesired correlation in it , but the change in the correlation matrix is the\n\" smallest \" possible\n( in the sense of matrix norm ) ( this is my next step to do for this\nspreadsheet ) .\n2 . just one column ( and the corresponding row , of course ) will change , while\nthe rest of the matrix\nwill stay unchanged ( kevin ' s suggestion ) . in this case the user have to\nchoose which column ( and row )\nhe prefers to modify ( in my example - column - row 1 or column - row 3 ) .\nwe can discuss this approach with risk control and see how they like it . i\nsend you only the spreadsheet with an example now .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.590+0000", "entityId": 6779, "properties": {"text": "Subject: re : real options e & p course\nlarry ,\ni sent the information to mark ruane , 713 853 3569 .\nhe is the best customer at enron for real options applications .\nvince\nlarry chorn on 01 / 25 / 2000 12 : 30 : 17 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : real options e & p course\nvince :\nas you requested , we mailed you a brochure about our upcoming course\n( 2 / 22 - 4 / 4 ) in houston .\nwe are now following up with that mailing to identify remaining\nattendees for the session . i wanted to make sure that we did not\noverlook anyone at enron , so i am dropping you this email to see if you\nhave anyone there in mind as an attendee .\nbest regards ,\nlarry chorn\n972 . 814 . 5342\nwww . realoptions - software . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.594+0000", "entityId": 6780, "properties": {"text": "Subject: chicago partners\ni have received an inquiry through one of our employees ( david barr )\nfrom chicago partners , a consulting firm in chicago . they specialize , among\nother\nthings , in regulatory economics and could be useful as experts in our\ndiscussions with\nthe government and regulatory agencies .\none of the partners , christopher culp , is a well known commodity markets\nexpert .\nplease , let me know if you are interested .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.599+0000", "entityId": 6781, "properties": {"text": "Subject: re : fw : luncheon meeting : asap\nhello mr . kaminski ,\ni am available to meet with you for lunch this week on tuesday ( 2 / 1 ) ,\nwednesday ( 2 / 2 ) . or friday ( 2 / 4 ) . which day would be more convenient for you ?\nplease let me know .\ni am planning to meet with mr . chris holmes ( introduced by a mutual family\nfriend ) of enron ' s energy services next week . mr . holmes also suggested that\ni meet with you .\nlooking forward to the meeting . i will call you to follow up . for convenience\ni am attaching my latest resume .\nthank you .\nmaruti more\n713 - 722 - 7199\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ndate : tuesday , january 25 , 2000 12 : 39 pm\nsubject : re : fw : luncheon meeting : asap\nhello ,\ni shall be traveling this week . i shall be glad to meet\nyou for lunch next week . please give me a call monday\nat 713 853 3848 .\nvince\n\" more \" on 01 / 25 / 2000 10 : 27 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : luncheon meeting : asap\ndear mr . kaminski :\njust to bring you up to date . i am no longer with american general . i\nshall ,\ntherefore , appreciate an opportunity to meet with you for lunch at the\nearliest\npossible time . i can be reached at 713 - 722 - 7199 .\nthank you .\nmaruti more\n713 - 722 - 7199\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : friday , december 17 , 1999 8 : 55 pm\nsubject : re : luncheon meeting\nthank you for your response . i was very happy to hear from you .\ni am also taking next week off and will be back to work on december 27 th .\nplease do call me when you get back . would very much appreciate the\nopportunity\nto have a quick lunch with you , if possible . hope everything is going\nwell .\nhave wonderful christmas holidays .\nregards\nmaruti more\n713 - 831 - 6209 ( o )\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski\ndate : friday , december 17 , 1999 3 : 35 pm\nsubject : re : luncheon meeting\nhello ,\ni shall be taking a few days off around xmas . i shall call you at the\nend of\ndecember\nwhen i get back to the office .\nwith best holiday wishes ,\nvince\n\" more \" on 12 / 01 / 99 09 : 28 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : luncheon meeting\ndear mr . kaminski :\nhow are you doing ? i want to find out if we can meet again for a quick\nlunch .\nyou might know that in maharashtra , india there is now a new chief\nminister\n( ceo of the state government ) . i am proud to say that he and i are\nfrom the\nsame\ntown , latur .\ni would really enjoy talking with you again , at your convenience .\ni will call you tomorrow to follow up .\nthank you .\nsincerely ,\nmaruti more\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski ; vkaminski @ aol . com\ndate : thursday , july 01 , 1999 6 : 16 am\nsubject : re : luncheon meeting\ndear mr . more ,\nlet ' s meet at 11 : 45 in the lobby of the enron building .\nwe can walk to one of the restaurants in the downtown area .\nvince kaminski\n( embedded enron capital & trade resources corp .\nimage moved\nto file : from : \" more \"\npicl 7002 . pcx ) 06 / 30 / 99 10 : 38 pm\nto : vince j kaminski / hou / ect\ncc :\nsubject : luncheon meeting\ndear mr . kaminski :\ni am looking forward to our luncheon meeting on this friday ,\njuly 2 ,\n1999\nat\n11 : 30 am . please let me know where we should meet . thank you for\ntaking\ntime\nout\nfrom your busy schedule .\nsincerely ,\nmaruti more\ntel . : 713 - 831 - 6209\n- attl . htm\n- more @ home . doc\n- bio @ homel . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.603+0000", "entityId": 6782, "properties": {"text": "Subject: re : energy book\nchris ,\nno problem . feel free to mention our names .\nvince\nchris strickland on 01 / 28 / 2000 03 : 54 : 17 am\nto : vince j kaminski / hou / ect @ ect , les , jules\ncc :\nsubject : energy book\nhi vince ,\ni have pulled a list of names together that i would like to send some\nsamples of our chapters of the book too , in the next couple of days , in\norder to try and get one or two sentence \" reviews \" for the dust jacket of\nthe book . i obviously won ' t say anything about enron ' s sponsorship until it\nis official sorted out , but is it ok if i indicate that yourself and grant\nare contributing material to the book ?\ni ' m proposing to send 5 or 6 chapters to the following - unless you have\nany objections or suggestions ?\ndavid shimko\nehud ronn\nhelyette geman\nmark garman\ndragana pilipovic\ncorwin joy\nilia bouchouev\nalexander edyleland\nsteve thomas\nhope the writing is going ok , and regards to grant .\nbest regards .\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.607+0000", "entityId": 6783, "properties": {"text": "Subject: cell phone\nfor the next two days , you can call me on the cell # 832 - 724 - 6346 .\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.612+0000", "entityId": 6784, "properties": {"text": "Subject: white marker board wall for eb 19 c 2\ngood morning all :\ni don ' t know where this request should go , would you please direct me in\nthe right direction ?\nconference room eb 19 cl has one whole wall that is a white marker board .\nwe would like to see about having a wall like this installed in 19 c 2 . please\nlet me know the costs and time involved . vince kaminski has approved .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.616+0000", "entityId": 6785, "properties": {"text": "Subject: new analyst joining research group\nall\non monday 21 st february a new analyst will be joining enron europe , and will\nhave his first rotation in the london research group .\nmatthew williams has a phd in high energy physics , having carried out his\nresearch at imperial college london and cern . his academic experience\nincludes extensive monte carlo simulation as part of his research on the\nphenomenology of supersymmetry theories .\nmatthew will be working with me on issues arising from the optimisation and\ncontrol of dynamic systems , which we expect to include power generation\nscheduling and gas flow .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.621+0000", "entityId": 6786, "properties": {"text": "Subject: revised 10 cpm color copier information\nkevin ,\ni revised the cost on the 10 cpm tab under cpi : - - >\nthanks , iain . . . . . . . . . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by iain russell / epsc / hou / ect on 02 / 01 / 2000\n10 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncolor copier information\nfrom : iain russell on 01 / 31 / 2000 11 : 45 pm\nto : kevin g moore / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , carole rogers / epsc / hou / ect @ ect\nsubject : color copier information", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.625+0000", "entityId": 6787, "properties": {"text": "Subject: re : lsu seminar visit\ndear vince ,\ni just left voice mail for you . we are interested in obtaining copies of\nthe papers you ' ll be using as the basis for your presentations on thursday\nand friday so that we can get these materials distributed . can you call me\nat 225 - 388 - 0447 so we can discuss this ? i would also like to be able to go\nover the schedule with you just to make sure that we are on the same page .\nthanks for taking the time to visit us . we are looking forward to your visit .\nsincerely ,\njim garven\njames r . garven\nwilliam h . wright , jr . endowed chair for financial services\ndepartment of finance\n2158 ceba\ne . j . ourso college of business administration\nlouisiana state university\nbaton rouge , la 70803 - 6308\nvoice ( 225 ) 388 - 0477 | fax : ( 800 ) 859 - 6361\ne - mail : jgarven @ lsu . edu\nhome page : http : / / garven . lsu . edu\nvita : http : / / garven . lsu . edu / dossier . html\nresearch paper archive : http : / / garven . lsu . edu / research . html\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.629+0000", "entityId": 6788, "properties": {"text": "Subject: re : publishing my real options work\nsteve ,\nwe can accelerate the process . we need some internal approvals .\nplease , talk to richard lewis and let him know i think it ' s ok\nto publish it because it is a very high level theoretical paper .\nvince\nsteven leppard\n02 / 01 / 2000 09 : 56 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : publishing my real options work\nvince\nwhat are the chances of , say , risk publishing my work before the june\nconference ? do they have peer review etc . ?\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.634+0000", "entityId": 6789, "properties": {"text": "Subject: re : kellogg class information on real options\njodi ,\nchris can set up a conference call with myself , stinson gibner and zimin lu\nto discuss\nthe real option applications . my assistant shirley crenshaw , 3 - 5290 , will be\nglad to help him .\nvince\nenron capital management\nfrom : jodi coulter 02 / 01 / 2000 11 : 36 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : kellogg class information on real options\nvince -\nper my voicemail , the following is the message i received from chris swenson\nabout the kellogg class he is trying to form . please let me know if you\nwould be able to help him . thanks .\njodi\nx 56318\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jodi coulter / hou / ect on 02 / 01 / 2000 11 : 05\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" christopher p . swenson \" on 01 / 25 / 2000 06 : 42 : 58 pm\nto : jodi coulter / hou / ect @ ect\ncc :\nsubject : hello\nhi jodi ,\ni have been remiss in keeping up with you and letting you know what is\ngoing on\nin my little world here at kellogg .\nin other matters , life at kellogg has me very busy at the moment . i am taking\na full load , including fin decisions and am helping prof . petersen write a new\nclass called advanced valuation , which will be offered in the spring . a big\npart of the focus of this class is going to be on real options , which is cool\nstuff . and as poor as my timing is , i would like to ask you a\nquestion / favor .\nfor purposes of this class , do you think it would be possible to obtain\nsome of\nenron ' s thoughts on real options ? i was thinking , for example , that a\nfuel - switching analysis would be neat to included in the case packet . of\ncourse , none of the numbers or names need be real - - only the concepts . well ,\nlet me know what you think of that - - who knows , enron might actually like the\nfree exposure .\nall the best ,\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.639+0000", "entityId": 6790, "properties": {"text": "Subject: chicago partners\ndavis ,\ni sent out the memo . no reaction yet .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.643+0000", "entityId": 6791, "properties": {"text": "Subject: wayne tow ' s resume\nkathy / greg / john - do we need the skills described in the attached resume on\nthe project team or in the permanent support group or in the esupply group ?\nthere are no personal recommendations associated this resume .\nvince - thanks for keeping us in mind !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa becker / corp / enron on 02 / 01 / 2000\n01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n01 / 31 / 2000 09 : 04 am\nto : melissa becker / corp / enron @ enron\ncc :\nsubject : wayne tow ' s resume\nmelissa ,\nplease , take a look at this resume . any interest ?\ni got it from a headhunter ( i don ' t know her ,\nit was a cold call on her part and she did not make a good impression ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2000\n09 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nleewells @ swbell . net on 01 / 25 / 2000 05 : 34 : 57 pm\nplease respond to leewells @ swbell . net\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : wayne tow ' s resume\nhi there mr . kaminski ! it was a pleasure to speak with you today . i look\nforward to lunch one day soon at brennans .\nwayne tow is a brilliant man , he worked for many years for a man i know\nwell . this man says , wayne is as good as it get , and he could do\nanything that is assigned to him , and do it at a level in which he was\nalways amazed .\nhe loves the e - commerce area , and this is what he wants to do\nthank you , vince .\nlee wells\n- wayne 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.648+0000", "entityId": 6792, "properties": {"text": "Subject: benefits - personal days\ngood morning all :\nthe question has arisen as to whether enron has \" personal days \" , that ,\nyou can take in case of repair problems at home ; car problems ; sick spouse ,\nsick child , etc .\ni checked with hr and the policy manual and the answer is \" no \" , but they\ncan be designated at the discretion of the supervisor . i talked this over\nwith vince and he has decided that the research group will be allowed\ntwo ( 2 ) personal days per year to take care of personal business and\nnot have to take a vacation day , discretionary day , or leave of absence .\nif you have advance notice ( such as an air conditioner repair scheduled ) ,\nplease let me know when you are going to take these days . if an\nemergency arises with no notice , please call in and let me know that you\nare taking a personal day . it will be coded on your time sheet .\nthese two personal days will in no way cancel or take the place of , \" funeral\nleave \" , \" family leave \" , or \" civic duty leave \" . they are just a way of being\nable to take care of repair problems and other personal problems that arise .\nthese should be very beneficial and i am sure very much appreciated by\nall of us .\nif you have any questions , please call me .\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.652+0000", "entityId": 6793, "properties": {"text": "Subject: benefits - personal days\nvince :\nis the following all right to send to the group ?\n* * * * * * * *\ngood morning all :\nthe question has arisen as to whether enron has \" personal days \" , that ,\nyou can take in case of repair problems at home ; car problems ; sick spouse ,\nsick child , etc .\ni checked with hr and the policy manual and the answer is \" no \" , but they\ncan be designated at the discretion of the supervisor . i talked this over\nwith vince and he has decided that the research group will be allowed\ntwo ( 2 ) personal days per year to take care of personal business and\nnot have to take a vacation day , discretionary day , or leave of absence .\nif you have advance notice ( such as an air conditioner repair scheduled ) ,\nplease let me know when you are going to take these days . if an\nemergency arises with no notice , please call in and let me know that you\nare taking a personal day . it will be coded on your time sheet .\nthese two personal days will in no way cancel or take the place of , \" funeral\nleave \" , \" family leave \" , or \" civic duty leave \" . they are just a way of being\nable to take care of repair problems and other personal problems that arise .\nthese should be very beneficial and i am sure very much appreciated by\nall of us .\nif you have any questions , please call me .\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.657+0000", "entityId": 6794, "properties": {"text": "Subject: employment authorization\nhi vince ,\nlast evening i received the employment authorization card from ins , valid for\none year . it seems milenia soto has submitted all the applications but for\nsome reason she did not receive the receipts .\ni really appreciate your help and support .\nwith regards ,\namitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.665+0000", "entityId": 6795, "properties": {"text": "Subject: new computer\nhello again ,\nlyn i will like to add to the previous request\nanother computer and flat screen .\nthe location for the equipment will be eb 3130 c .\nthe r . c . and company is below .\nany additional please call x 34710 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 02 / 03 / 2000 06 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n02 / 01 / 2000 11 : 47 am\nto : lyn malina / hou / ect @ ect\ncc :\nsubject : new computer\nhello lyn\ni am in need of another computer .\ni will also need a flat screen monitor . ( large )\nthe location is eb 3130 a .\nthe co . # is 0011 .\nthe r . c . # is 100038 .\nthe computer is needed a . s . a . p .\nlyn , please give me a estimated time of arrival .\nthank you\nkevin moore\nx 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.673+0000", "entityId": 6796, "properties": {"text": "Subject: re : aiesec\nbiliana ,\ni have prior commitments on saturday , february the 5 th . please , send me more\ninformation about the following saturday . there is a remote possibility i\nshall have\nto go to london that weekend . otherwise , i shall be glad to join you .\nvince\nbiliana pehlivanova on 01 / 28 / 2000\n11 : 54 : 58 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : aiesec\ndear mr . kaminski ,\nthe following are the personal and work e - mail addresses of the polish\ntrainees in college station .\nsylwester rutkowski sylwesterr @ usa . net , sylwester . rutkowski @ destia . com\npatricia dalecka pdalecka @ hotmail . com , patrycia . dalecka @ destia . com\ndanusia mas danusia . mas @ destia . com\nlidia olczyk lolczyk @ usa . net , lidia . olczyk @ destia . com\nrobert lyczak rlyczak @ yahoo . com , robert . lyczak @ destia . com\ni would like to invite you to join us for a paintball game next saturday ,\nfeb 5 th . the purpose of this event is to develop team building among our\nstudent members , board of advisors , and corporate clients .\nin addition , i would like to invite you to participate in our mock\nsales day on saturday , feb . 12 th . during this day , the new members will\nfirst receive training on aiesec sales / knowledge and then role play with our\nboard of advisors and alumni acting as company\nrepresentatives . sharing your aiesec and work experience would be a\nvaluable contribution to our training program .\ni will get in touch with you regarding these events in the beginning of\nnext week , as soon as i have the time and place finalized .\ni appreciate your interest in working with us .\nbest regards ,\nbiliana pehlivanova\nvice president of incoming exchange\naiesec houston", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.678+0000", "entityId": 6797, "properties": {"text": "Subject: wall street journal subscription\ngood morning mary sue :\ncan you please get the wall street journal for kevin kindall ? it should\nbe delivered to the 19 th floor along with the rest .\nco . # 0011 , rc # 100038\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.683+0000", "entityId": 6798, "properties": {"text": "Subject: organization announcement\nenron purchases billions of dollars of products through its wholly owned\nsubsidiaries and venture companies worldwide . historically , the company has\nconducted these purchases in a highly fragmented , decentralized manner\nallowing each of the operating units the discretion to source their\nrequirements in a manner that optimizes unit performance . today , however ,\nwith the implementation of sap and the profound explosion in\ninternet / intranet - based technologies , we believe the company should change\nits direction and focus on aggregating its demand for goods and strategically\nsourcing these requirements on a global basis . we believe that there are\nsignificant cash savings to be extracted by the company and also commercial\npotential for the formation of a highly profitable , business - to - business\ne - commerce venture .\neffective february 1 , 2000 , enron will form a new global strategic sourcing\nunit . this new unit will consolidate the current successful strategic\nsourcing initiatives underway in the gas pipeline group , global asset\noperations and enron corp . initially , global strategic sourcing will focus\non aggregating enron \u0001 , s internal , joint venture and business partner demand\nfor products and services with the objective of creating a future\nbusiness - to - business e - commerce venture .\nit gives us great pleasure to announce that george wasaff , managing director ,\nwill lead this new global initiative . george will report directly to mike\nmcconnell , chief executive officer for global technology .\ngeorge has been with enron for fourteen years and has held many senior\nexecutive positions , the most recent of which was managing director of enron\nsouth america ' s wholesale operations . george was also the interim chief\nexecutive officer of elektro from july 1998 through june 1999 and chief\nexecutive officer of transportadora de gas del sur s . a . ( \" tgs \" ) from june\n1995 through february 1998 . george has also held numerous commercial\npositions including vice president and country manager , mexico for enron\ninternational and vice president of marketing for transwestern pipeline\ncompany .\nplease join us in supporting this new global initiative and congratulating\ngeorge in his new role with the company .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.687+0000", "entityId": 6799, "properties": {"text": "Subject: re : wayne tow ' s resume\nwe are supposed to get back to the headhunter .\nyou can send her an e - mail ( please see the first message at the bottom of the\npage\nfor the address ) .\nvince\ngreg nikkel @ enron\n02 / 02 / 2000 11 : 39 am\nto : kathy kokas / corp / enron @ enron\ncc : melissa becker / corp / enron @ enron , john gillespie / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect\nsubject : re : wayne tow ' s resume\ni will set - up a phone interview with him to assess his qualifications and\ninterest in the hr application support lead position .\nvince , how was it left with the headhunter on how to contact him ?\ngreg\nfrom : kathy kokas 02 / 02 / 2000 09 : 16 am\nto : melissa becker / corp / enron @ enron\ncc : greg nikkel / corp / enron @ enron , john gillespie / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect\nsubject : re : wayne tow ' s resume\nsince i only talk to a very few headhunters that we ' ve already done business\nwith and who have provided good people , i ' ll say \" no , i have no current\nneeds \" which is what i tell every headhunter that calls ( at least one a day ) .\nkk\nmelissa becker\n02 / 01 / 2000 02 : 01 pm\nto : kathy kokas / corp / enron @ enron , greg nikkel / corp / enron @ enron , john\ngillespie / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : wayne tow ' s resume\nkathy / greg / john - do we need the skills described in the attached resume on\nthe project team or in the permanent support group or in the esupply group ?\nthere are no personal recommendations associated this resume .\nvince - thanks for keeping us in mind !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melissa becker / corp / enron on 02 / 01 / 2000\n01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n01 / 31 / 2000 09 : 04 am\nto : melissa becker / corp / enron @ enron\ncc :\nsubject : wayne tow ' s resume\nmelissa ,\nplease , take a look at this resume . any interest ?\ni got it from a headhunter ( i don ' t know her ,\nit was a cold call on her part and she did not make a good impression ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2000\n09 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nleewells @ swbell . net on 01 / 25 / 2000 05 : 34 : 57 pm\nplease respond to leewells @ swbell . net\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : wayne tow ' s resume\nhi there mr . kaminski ! it was a pleasure to speak with you today . i look\nforward to lunch one day soon at brennans .\nwayne tow is a brilliant man , he worked for many years for a man i know\nwell . this man says , wayne is as good as it get , and he could do\nanything that is assigned to him , and do it at a level in which he was\nalways amazed .\nhe loves the e - commerce area , and this is what he wants to do\nthank you , vince .\nlee wells\n- wayne 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.692+0000", "entityId": 6800, "properties": {"text": "Subject: storage model security\nstinson ,\ni have added a time bomb and security file check to the model .\nwe are ready to release it to brad , and improve the model from his feed back .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.697+0000", "entityId": 6801, "properties": {"text": "Subject: re : cost sharing of subscription to poten ' s fuel oil report\nwe have an interest in sharing some of the cost of choice 2 and have zero\ninterest in choice 3 . pls advise in advance what you think this will amount\nto .\nthanks ,\nd\nguy dayvault @ enron\n02 / 03 / 2000 03 : 15 pm\nto : doug leach / hou / ect @ ect , david j botchlett / hou / ect @ ect , ron\nirvine / lon / ect @ ect , niamh clarke / lon / ect @ ect , dale snyder / hou / ect @ ect\ncc : margaret carson / corp / enron @ enron , vince j kaminski / hou / ect @ ect , david a\nsubject : cost sharing of subscription to poten ' s fuel oil report\nall :\nideally we will split this cost evenly among as many p & l ' s as need the\nreport , minimizing everyone ' s cost by sharing a single subscription .\nplease tell me whether you can justify sharing the cost and if so , the rc\ncode & co # for me to allocate your cost share . please indicate your choice\nof the three cost choices .\nattached note below clarifies poten ' s proposal on the $ 10 , 000 / yr subscription .\nessentially we have three choices :\n1 . for $ 2700 / yr , the standard edition ( 11 issues , excluding the monthly\n\" special feature \" article )\n2 . for $ 3800 / yr the premium edition , ( standard edition plus the monthly\n\" special feature \" article , as in three attached examples )\n3 . for $ 10 , 000 / yr the premium edition plus quarterly forward price view for\n36 months .\npoten explains that 85 % of their subscribers take the premium service . no\none has ever asked for the $ 10 , 000 / yr long - term price forecast . i have an\ninterest in a longer term price forecast and hope that it may be useful to\nothers in the corporation .\nthe example copies attached include the following special feature articles :\n99 feb - analysis of resid trades in the eastern mediterranean\n99 sep - patterns of fuel oil trade in the western hemisphere\n99 dec - analysis of the resid market in chile\none either takes all or none of them for the incremental $ 1100 / yr . some may\nbe useless , others perhaps quite valuable . your call .\nregards\nguy\n\" axelrod , larry \" on 02 / 03 / 2000 02 : 43 : 59 pm\nto : guy dayvault / corp / enron @ enron\ncc : fuel share group\nsubject : enron / fuel oil service\ndear guy ,\nit was a pleasure speaking to you today .\nas discussed , poten is pleased to offer enron the following two - part\nfuel - oil related service :\n( 1 ) a one - year subscription to poten ' s fuel oil in world markets ( premium\nedition ) , and\n( 2 ) a forecast of delivered crude prices and fuel oil prices in northwest\neurope ( brent and 1 % s fob fuel oil ) , the mediterranean ( bonny light and 1 % s\nfob fuel oil ) , and singapore ( dubai and hsfo - 380 cst ) . the forecasts would\nbe provided four times a year and provide average quarterly price\nprojections over the forward 36 - month period . the forecast prices would be\naccompanied by brief textual commentary . the forecasts would be issued over\nthe course of the one - year fuel oil in world markets subscription period .\nthe fee for the two - part service is us $ 10 , 000 , payable in two equal\ninstallments\ni look forward to hearing from you .\nbest regards ,\nlarry\nl . axelrod\nphone 212 - 230 - 2038\nfax 212 - 355 - 0295\ndoug leach @ ect\n02 / 03 / 2000 01 : 52 pm\nto : guy dayvault / corp / enron @ enron\ncc :\nsubject : re : poten ' s fuel oil report\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 02 / 03 / 2000 01 : 52 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndale\nsnyder\n02 / 03 / 2000 01 : 44 pm\nto : doug leach / hou / ect @ ect\ncc : david j botchlett / hou / ect @ ect , ron irvine / lon / ect @ ect , niamh\nclarke / lon / ect @ ect\nsubject : re : poten ' s fuel oil report\nwe have an interest in sharing in the expenses of this information the only\nquestion being which information and at what cost . can see what the monthly\nnewsletter describes which is relatively cheap but what considerable\ninformation does one get for the usd 10 k yr report ? how many ways will we\nsplit the costs ? psl advise and thx\ndoug leach\n02 / 03 / 2000 07 : 08 am\nto : dale snyder / hou / ect @ ect\ncc :\nsubject : poten ' s fuel oil report\ni have no interest . do you ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 02 / 03 / 2000 07 : 08 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nguy dayvault @ enron\n02 / 02 / 2000 03 : 35 pm\nto : niamh clarke / lon / ect @ ect , doug leach / hou / ect @ ect , margaret\ncarson / corp / enron @ enron\ncc :\nsubject : poten ' s fuel oil report\nniamh & doug & margaret :\ni want to chat about this and will call you , but the essence is :\ncan you justify sharing the cost of subscribing to poten ' s monthly fuel oil\nreport ?\nattached below are 3 example copies that include their standard 12 month\nprice forecasts . the cost is $ 3800 / yr .\nas an added service for a total of $ 10 , 000 / yr , poten will include a quarterly\nupdate of their 36 month forward view on crude oil and fo prices with a brief\njustification for their view . this would include the standard monthly price\nforecast for the prompt 12 months and quarterly prices for the following 24\nmonths for far east , med and nwe . ( i expect a more descriptive email from\npoten , but i think this is the essence of their \" custom \" offer . )\nthe example copies attached include the following special features :\n99 feb - analysis of resid trades in the eastern mediterranean\n99 sep - patterns of fuel oil trade in the western hemisphere\n99 dec - analysis of the resid market in chile\nthese type of features are produced monthly and run a spectrum of subjects\nrelated to fuel oil .\ni have a hard time justifying the cost of the newsletter and the price\nforecast without the considered recommendation of colleagues such as yourself\nregarding the utility of such a report . the best way to show your\nrecommendation is with money . if it is not worth any money to anyone else in\nene , then i have to question its validity and utility to me as well . doug ,\nwould this perhaps be useful to any other business units that have exposure\nto fo prices ?\nbest regards\nguy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by guy dayvault / corp / enron on 02 / 02 / 2000\n03 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" axelrod , larry \" on 01 / 24 / 2000 03 : 38 : 53 pm\nto : guy dayvault / corp / enron @ enron\ncc : fuel share group\nsubject : poten ' s fuel oil report\nguy ,\nit was a pleasure speaking to you today .\nthree samples of fuel oil in world markets are attached .\nlet me know if you think the report could be useful to you .\nregards ,\nlarry\nphone 212 - 230 - 2038\n> > >\n- 99 dec . doc\n- 99 sep . doc\n- 99 feb . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.702+0000", "entityId": 6802, "properties": {"text": "Subject: cost sharing of subscription to poten ' s fuel oil report\nall :\nideally we will split this cost evenly among as many p & l ' s as need the\nreport , minimizing everyone ' s cost by sharing a single subscription .\nplease tell me whether you can justify sharing the cost and if so , the rc\ncode & co # for me to allocate your cost share . please indicate your choice\nof the three cost choices .\nattached note below clarifies poten ' s proposal on the $ 10 , 000 / yr subscription .\nessentially we have three choices :\n1 . for $ 2700 / yr , the standard edition ( 11 issues , excluding the monthly\n\" special feature \" article )\n2 . for $ 3800 / yr the premium edition , ( standard edition plus the monthly\n\" special feature \" article , as in three attached examples )\n3 . for $ 10 , 000 / yr the premium edition plus quarterly forward price view for\n36 months .\npoten explains that 85 % of their subscribers take the premium service . no\none has ever asked for the $ 10 , 000 / yr long - term price forecast . i have an\ninterest in a longer term price forecast and hope that it may be useful to\nothers in the corporation .\nthe example copies attached include the following special feature articles :\n99 feb - analysis of resid trades in the eastern mediterranean\n99 sep - patterns of fuel oil trade in the western hemisphere\n99 dec - analysis of the resid market in chile\none either takes all or none of them for the incremental $ 1100 / yr . some may\nbe useless , others perhaps quite valuable . your call .\nregards\nguy\n\" axelrod , larry \" on 02 / 03 / 2000 02 : 43 : 59 pm\nto : guy dayvault / corp / enron @ enron\ncc : fuel share group\nsubject : enron / fuel oil service\ndear guy ,\nit was a pleasure speaking to you today .\nas discussed , poten is pleased to offer enron the following two - part\nfuel - oil related service :\n( 1 ) a one - year subscription to poten ' s fuel oil in world markets ( premium\nedition ) , and\n( 2 ) a forecast of delivered crude prices and fuel oil prices in northwest\neurope ( brent and 1 % s fob fuel oil ) , the mediterranean ( bonny light and 1 % s\nfob fuel oil ) , and singapore ( dubai and hsfo - 380 cst ) . the forecasts would\nbe provided four times a year and provide average quarterly price\nprojections over the forward 36 - month period . the forecast prices would be\naccompanied by brief textual commentary . the forecasts would be issued over\nthe course of the one - year fuel oil in world markets subscription period .\nthe fee for the two - part service is us $ 10 , 000 , payable in two equal\ninstallments\ni look forward to hearing from you .\nbest regards ,\nlarry\nl . axelrod\nphone 212 - 230 - 2038\nfax 212 - 355 - 0295\ndoug leach @ ect\n02 / 03 / 2000 01 : 52 pm\nto : guy dayvault / corp / enron @ enron\ncc :\nsubject : re : poten ' s fuel oil report\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 02 / 03 / 2000 01 : 52 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndale\nsnyder\n02 / 03 / 2000 01 : 44 pm\nto : doug leach / hou / ect @ ect\ncc : david j botchlett / hou / ect @ ect , ron irvine / lon / ect @ ect , niamh\nclarke / lon / ect @ ect\nsubject : re : poten ' s fuel oil report\nwe have an interest in sharing in the expenses of this information the only\nquestion being which information and at what cost . can see what the monthly\nnewsletter describes which is relatively cheap but what considerable\ninformation does one get for the usd 10 k yr report ? how many ways will we\nsplit the costs ? psl advise and thx\ndoug leach\n02 / 03 / 2000 07 : 08 am\nto : dale snyder / hou / ect @ ect\ncc :\nsubject : poten ' s fuel oil report\ni have no interest . do you ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 02 / 03 / 2000 07 : 08 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nguy dayvault @ enron\n02 / 02 / 2000 03 : 35 pm\nto : niamh clarke / lon / ect @ ect , doug leach / hou / ect @ ect , margaret\ncarson / corp / enron @ enron\ncc :\nsubject : poten ' s fuel oil report\nniamh & doug & margaret :\ni want to chat about this and will call you , but the essence is :\ncan you justify sharing the cost of subscribing to poten ' s monthly fuel oil\nreport ?\nattached below are 3 example copies that include their standard 12 month\nprice forecasts . the cost is $ 3800 / yr .\nas an added service for a total of $ 10 , 000 / yr , poten will include a quarterly\nupdate of their 36 month forward view on crude oil and fo prices with a brief\njustification for their view . this would include the standard monthly price\nforecast for the prompt 12 months and quarterly prices for the following 24\nmonths for far east , med and nwe . ( i expect a more descriptive email from\npoten , but i think this is the essence of their \" custom \" offer . )\nthe example copies attached include the following special features :\n99 feb - analysis of resid trades in the eastern mediterranean\n99 sep - patterns of fuel oil trade in the western hemisphere\n99 dec - analysis of the resid market in chile\nthese type of features are produced monthly and run a spectrum of subjects\nrelated to fuel oil .\ni have a hard time justifying the cost of the newsletter and the price\nforecast without the considered recommendation of colleagues such as yourself\nregarding the utility of such a report . the best way to show your\nrecommendation is with money . if it is not worth any money to anyone else in\nene , then i have to question its validity and utility to me as well . doug ,\nwould this perhaps be useful to any other business units that have exposure\nto fo prices ?\nbest regards\nguy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by guy dayvault / corp / enron on 02 / 02 / 2000\n03 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" axelrod , larry \" on 01 / 24 / 2000 03 : 38 : 53 pm\nto : guy dayvault / corp / enron @ enron\ncc : fuel share group\nsubject : poten ' s fuel oil report\nguy ,\nit was a pleasure speaking to you today .\nthree samples of fuel oil in world markets are attached .\nlet me know if you think the report could be useful to you .\nregards ,\nlarry\nphone 212 - 230 - 2038\n> > >\n- 99 dec . doc\n- 99 sep . doc\n- 99 feb . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.706+0000", "entityId": 6803, "properties": {"text": "Subject: greg whalley ' s new office location\ngreg whalley and i have moved to the 33 rd floor .\ngreg ' s new office location is eb 3324 - steno # 549\ni ' m located at eb 3322 - steno # 598\nmany thanks ,\nliz taylor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.710+0000", "entityId": 6804, "properties": {"text": "Subject: your talk on 2 / 7 / 00 ( monday ) ( fwd )\nvince : a minor revision of my earlier email shown below . the last line\nshould read ' i will be waiting in my office from 6 : 30 - 6 : 50 for your call\n. . . ' my office phone is 713 743 4716 . sorry that i have to resend this\nemail . ed\n- - - - - - - - - - forwarded message - - - - - - - - - -\ndate : thu , 3 feb 2000 08 : 17 : 40 - 0600 ( cst )\nfrom : edward kao\nto : vince j kaminski\nsubject : your talk on 2 / 7 / 00 ( monday )\ndear vince :\ni would like to send out an annoucement about your talk in my risk\nmanagement in the energy sector course on february 7 , monday . is it\ncorrect that the name of your talk will be \" commodity trading in the\nenergy sector \" . you indicated that you would be using transparencies so\nwe have a projector ready for you . please let me know if there is\nanything else you need for the talk . please also confirm this at your\nearliest convenience so that i can get announcement sent out soon . thanks\nin advance for the talk . we all look forward to meeting you monday .\nbest regards , ed\nps . the class meet 7 : 00 - 8 : 20 pm at 117 meclcher hall . as we originally\nplanned , i will be waiting in my office from 6 : 30 - 6 : 50 and greet you at\nthe parking lot ie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.715+0000", "entityId": 6805, "properties": {"text": "Subject: update - rofr\nper our meeting , i added a switch so that the pipeline can accept or reject\nthe best bid\nif the best bid is not the cap rate .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.719+0000", "entityId": 6806, "properties": {"text": "Subject: prob of default for e rating 7 as of 2 / 3 / 00\nvincent ,\ni got the e - rating and default probabilities for promigas from the credit\ngroup .\ncould you plug in these numbers to the loan guarantee model ?\npromigas is rated as bb .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 02 / 04 / 2000 08 : 41 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ntanya rohauer\n02 / 04 / 2000 07 : 27 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : prob of default for e rating 7 as of 2 / 3 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.724+0000", "entityId": 6807, "properties": {"text": "Subject: revised : restricted list\nneither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\nadrian resources\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncostilla energy cose\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nesenjay exploration esnj\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nquanta services inc . pwr\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nrhythms netconnection inc . rthm\nsaxon petroleum , inc . sxn cn\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntitan exploration texp\ntranscoastal marine services , inc . tcms\nzargon oil & gas zar cn\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in the policy for the benefit of any party other than\nena / rac / egf , whether for his / her own account or the account of any third\nparty , where such position relates to ( i ) any commodity , financial\ninstrument , security , equity , financial asset or liability which falls within\nsuch employee ' s responsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.729+0000", "entityId": 6808, "properties": {"text": "Subject: lsu visit ( resume )\nmr . kaminski ,\nit was a pleasure and honor to have lunch with you . i also enjoyed your\npresentation in our graduate class . i hope you enjoyed your visit to\nbaton rouge . come back to visit us sometime ! !\nattached is my resume as you suggested . thank you for your interest in\nlsu and me .\nsincerely ,\ndatren l . williams\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.734+0000", "entityId": 6809, "properties": {"text": "Subject: energy operations promotions\ni am pleased to announce the following promotions effective february 1 within\nena energy operations . these individuals have been promoted in recognition\nof their outstanding performance and their contributions to the continuing\nsuccess of enron north america . please join me in congratulating these\nemployees on their promotions .\npromotions to senior director\nkristin albrecht serves as business controller for ena \u0001 , s power business .\nalong with leslie reeves , kristin ensures that power transactions are handled\naccurately and smoothly from beginning to end . kristin \u0001 , s primary focus is on\nrisk controls and daily reporting of positions and p & l for east power\ntrading , west power trading and genco operations .\nbrenda herod serves as business controller for ena \u0001 , s assets business , working\nwith the gas assets group and the texas trading desk . her responsibilities\ninclude global contracts and facilities , risk management , confirmations , gas\nscheduling , volume management , settlements and regulatory compliance for\nhouston pipeline , lrc and enron midstream services .\nleslie reeves is a business controller for ena \u0001 , s power business , working\nclosely with kristin albrecht in managing mid and back office support for the\neast , west and genco power trading groups . her primary responsibilities are\ndocumentation and settlements , with a focus on contract administration , cash\nforecasting and cash management .\nmary solmonson leads ena \u0001 , s global database management group , collecting and\nvalidating information on our customers , contracts , pipelines and facilities ,\nas well as published prices . these activities support overall energy\noperations responsibilities from risk to logistics to settlement . in\naddition , mary has been instrumental in the promotion and implementation of\nthe global systems across enron to provide control , consistency , and common\ndata throughout the organization .\npromotions to director\nscott pleus serves as business controller for enron \u0001 , s emerging products .\nthese businesses include bandwidth , pulp and paper , and weather . his primary\nresponsibilities include day - to - day functions of risk management ,\nconfirmations , pulp and paper scheduling , and settlements as well as long\nterm system development .\nsheri thomas led ena \u0001 , s natural gas off - system settlements function throughout\n1999 . her responsibilities included cash forecasting , collections , and\naccountability for receivables and payables for ena \u0001 , s gas business in the\neast , west and central regions of the us . sheri accepted a new assignment in\njanuary 2000 and is now managing the enron online operations .\npromotions to manager\nbennett kaufman manages the risk management administration function for the\nequity trading and debt trading groups . he has also had experience in\nsupporting the options book for natural gas derivatives trading . prior to\njoining enron in early 1998 , bennett worked in trading operations for\ninvestment banking firms in new york .\nrichard mckeel is the systems integration analyst within global database\nmanagement , overseeing the change management process and new software\ndevelopment needed to interface the global applications with strategic\nsystems \u0001 ) sitara , unify , enpower , solarc , sap , and enrononline .\nother promotions\nspecialist to senior specialist : analyst to specialist :\nsylvia campos \u0001 ) deal compliance contract records tara eslick \u0001 ) financial\ntrading risk management\nkam keiser \u0001 ) gas risk management - central desk victoria versen \u0001 ) gas\nlogistics - east desk\nphillip love \u0001 ) risk controls operational analysis\njeff coats \u0001 ) gas risk management - central desk\nmonica lande \u0001 ) west power risk management ( portland ) senior clerk to staff :\ntrang le \u0001 ) strategic operations \u0001 ) project unify\njohn postlewaite \u0001 ) east power risk management anthony campos \u0001 ) deal\ncompliance contract records\ndiane seib \u0001 ) documentation ( calgary ) kori loibl \u0001 ) gas risk management -\nfinancial books\ndonnie vinson \u0001 ) west power risk management ( portland )\nimelda frayre \u0001 ) strategic operations - project sitara\nclerk to senior clerk :\nstaff to specialist :\nleslie smith \u0001 ) information & records management\namy degeyter \u0001 ) power documentation melinda whalen \u0001 ) documentation ( calgary )\nmichael nguyen \u0001 ) emerging products risk management\nsherlyn schumack \u0001 ) logistics volume management\nkarie hastings \u0001 ) strategic operations - project sitara\nin addition , peggy hedstrom and brent price were promoted to vice president ,\nas announced in the memo issued by enron corp . office of the chairman . peggy\nleads energy operations for enron canada , with responsibility for risk\nmanagement , documentation and gas logistics . peggy also serves as a key\ninterface with canadian pipelines as a member of several industry\ncommittees . brent is the senior business controller for gas trading\noperations in the u . s . his responsibilities include risk management ,\nconfirmations , volume management and settlements for the east , west and\ncentral regions . he also provides operational expertise in the due diligence\nphase of the evaluations of joint ventures and acquisitions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.739+0000", "entityId": 6810, "properties": {"text": "Subject: mit student ' s thesis writeups\nhi vince , krishna & i talked to this student while were at sycamore\nnetworks . he appears to be very qualified for our ebs analytics group .\nsycamore has a professional services team that provides consulting on network\noptimization modeling , etc . they do this to push their products , etc . . . . one\nof the professional in that group highly recommended this student . we are\ncurrently working with the same professional at sycamore to perform our\nintial network design analysis ( since the deadline was today ! ) . i have\narranged for the mit student ' s visit to houston along with the two standford\nstudents this month . i have handed over the task of arranging such visits to\nelisabeth grant . she will arrange everything and charge our rc so that we can\nallocate to john griebling later . stinson and i think that is the most\neffective way of doing this .\nregards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 07 / 00 01 : 16\npm - - - - -\nsalal @ mit . edu\n02 / 04 / 00 08 : 33 am\nto : pkrishan @ enron . com\ncc : ravi thuraisingham / enron communications @ enron communications ,\nbrett . leida @ sycamore . net\nsubject : writeups\nhi krishan , ravi ,\ni apologize for the delay in mailing the writeups - - some unforeseen\ncomplications completely shot the last 1 - 1 / 2 day . i am attaching pdf\nversions of :\n1 . the first two chapters of my thesis , which should help\nget a sense of what we are trying to do .\n2 . two more technical modeling writeups for services i am\nattempting to model .\nthe writeups are , as i mentioned before , works in progress , and\nincomplete , and therefore i apologize in advance for confusions\nthat might arise . i also request that you not circulate these widely\nfor obvious reasons .\nthanks very much ,\nsalal\nsalal humair\nmassachvsetts institvte of technology\noperations research center\nrooms e 40 - 130 , 5 - 332 a\nx 3 - 3014 , x 5 - 9727\n- expexp . pdf\n- fedex . pdf\n- thesis . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.744+0000", "entityId": 6811, "properties": {"text": "Subject: re : risk report on \" guide to electricxity hedging \" and request fo r\ngu est access to enrononline\ned ,\nlouise must be very busy . i sent her another message regarding your request .\ni shall call her if there is no reply from her within 3 days .\nplease , let me know .\nvince\nekrapels on 02 / 04 / 2000 01 : 58 : 59 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : risk report on \" guide to electricxity hedging \" and request fo r\ngu est access to enrononline\ndear vince ,\ni have not heard from louise and assume i cannot access enrononline . as a\nresult , i have written what i can discern in the attached draft chapter for\nthe risk guide to electricity hedging . could you review the enrononline\nsection and let me know if i have any factual errors ? obviously , i welcome\nany other comments you might have .\ndon ' t warry about any textual problems - - me editors will catch those .\nenglish is , after all , my thrid language ( he said , defensively ) .\nsorry i couldn ' t gain access . enrononline looks interesting and the stock\nmarket seems to be giving you a strong pat on the back . well done .\nthanks for your help .\ned krapels\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vkamins @ ect . enron . com ]\nsent : tuesday , january 18 , 2000 2 : 44 pm\nto : ekrapels\ncc : vince j kaminski\nsubject : re : risk report on \" guide to electricxity hedging \" and request\nfor gu est access to enrononline\ned ,\ni sent a message to louise kitchen who runs the enrononline effort .\nshe should be getting back to you shortly .\nvince\nekrapels on 01 / 18 / 2000 12 : 00 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : risk report on \" guide to electricxity hedging \" and request for gu\nest\naccess to enrononline\ndear vince ,\ngreetings from boston , where we ' re doing all we can to help keep the price\nof gas high .\nas i may have told you earlier , i ' m writing a \" guide to electricity hedging \"\nfor risk publications similar to the report on oil . i had planned to write a\nsignificant section on enrononline , and in the midst of my research on the\ntopic was denied access by enron ' s gatekeeper . can you help get me in ?\nas always , the best from here .\ned krapels\n- - - - - original message - - - - -\nfrom : donna greif [ mailto : dcorrig @ ect . enron . com ]\nsent : tuesday , january 18 , 2000 12 : 37 pm\nto : ekrapels @ esaibos . com\nsubject : request for guest access\ndear mr . krapels :\nthank you for requesting guest access to enrononline . unfortunately , we are\nunable to give you quest access at this time .\nenrononline is exclusively for those companies who can transact wholesale\nenergy\ncommodities and related products .\nin addition , you had indicated within the comments section of your email\nthat\nyou are preparing a \" guide to electricity hedging \"\nfor risk publications . i have forwarded your inquiry to our public\nrelations\ndepartment along with your contact information .\nshould you not hear back from anyone within a reasonable amount of time ,\nplease\nfeel free to contact our call center at\n713 853 - help ( 4357 ) .\nsincerely ,\ndonna corrigan greif\nenrononline help desk\n713 / 853 - 9517\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.749+0000", "entityId": 6812, "properties": {"text": "Subject: fortune most admired ranking\ncongratulations ! for an unprecedented five years in a row , enron has been\nranked the \" most innovative company in america \" by fortune magazine . in\naddition , for the first time , enron has also been ranked # 1 in \" quality of\nmanagement , \" topping general electric and omnicom group , and our \" employee\ntalent \" has been ranked # 2 , behind goldman sachs and ahead of cisco\nsystems . america ' s most admired management team is paired with the best and\nbrightest employee talent . that winning combination has led to enron ' s\nfive - year \" most innovative \" sweep . the \" most admired \" list will appear in\nfortune ' s feb . 21 issue , available on newsstands feb . 8 .\nyou are the reason we have achieved such consistent recognition . you bring\nthe innovative ideas to enron and create new business opportunities . you\ncontribute to our quality management team . and you are the outstanding\nemployee talent that makes enron such an exciting and successful company .\nkeep up your outstanding work , and we look forward to even greater\nachievements in 2000 !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.754+0000", "entityId": 6813, "properties": {"text": "Subject: re : personal\ndear mr . kaminski :\nthank you very much for meeting with me again today over lunch . i appreciated\nthe opportunity to catch up with you .\nplease find attached my current resume ( both a short and a long version ) . i\nhave worked as a trader , portfolio risk manager , and a stock analyst . i have\ntraded derivatives , bonds , and stocks , and managed insurance and pension\ninvestment portfolios to maximize risk - adjusted returns . let me highlight\nsome of my work experiences .\ntrading and risk management\na . . structured , negotiated , and traded otc interests rate swaps ,\ncross - currency swaps , swaptions , and exchange - traded equity index futures and\noptions . made powerpoint presentations to garp and the uoh on credit\nderivatives .\nb . . developed investment hedging program utilizing exchanged - traded bond\nfutures and interest rate swaps .\nc . . traded and managed pension and insurance fixed income portfolios to\nmaximize total return and funding ratios . bonds traded : treasuries , agencies ,\nmbs / cmos , abs , corporate , yankees , and foreign .\nd . . traded and managed stock mutual portfolios for total return .\ne . . created a computer program to quantify the attribution of total\nreturn for fixed income portfolios relative to market returns .\nf . . programmed investment compliance rules to monitor the management of\ndomestic and global stock , bond and money market mutual funds .\ng . . supervised market risks , credit risks , legal risks , and operations\nrisks of derivatives , bonds , money market securities , and equities .\npolicy , reporting and projects\na . . developed investment policy guidelines to manage fixed income\nportfolios .\nb . . rewrote derivatives policy manual .\nc . . prepared a 20 - page powerpoint slide presentation on india for the\nsenior management .\nd . . prepared and presented investment reports to cios , investment\ncommittees , and boards of trustees\ni shall , therefore , appreciate your help in connecting me with the right\nindividual within enron for a job interview to work as a financial\ntrader / risk manager . i can provide excellent references upon request .\nthank you for the lunch .\nsincerely ,\nmaruti d . more , cfa\n713 - 722 - 7199\nmore @ insync . net\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ndate : tuesday , january 25 , 2000 12 : 39 pm\nsubject : re : fw : luncheon meeting : asap\nhello ,\ni shall be traveling this week . i shall be glad to meet\nyou for lunch next week . please give me a call monday\nat 713 853 3848 .\nvince\n\" more \" on 01 / 25 / 2000 10 : 27 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : luncheon meeting : asap\ndear mr . kaminski :\njust to bring you up to date . i am no longer with american general . i\nshall ,\ntherefore , appreciate an opportunity to meet with you for lunch at the\nearliest\npossible time . i can be reached at 713 - 722 - 7199 .\nthank you .\nmaruti more\n713 - 722 - 7199\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : friday , december 17 , 1999 8 : 55 pm\nsubject : re : luncheon meeting\nthank you for your response . i was very happy to hear from you .\ni am also taking next week off and will be back to work on december 27 th .\nplease do call me when you get back . would very much appreciate the\nopportunity\nto have a quick lunch with you , if possible . hope everything is going\nwell .\nhave wonderful christmas holidays .\nregards\nmaruti more\n713 - 831 - 6209 ( o )\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski\ndate : friday , december 17 , 1999 3 : 35 pm\nsubject : re : luncheon meeting\nhello ,\ni shall be taking a few days off around xmas . i shall call you at the\nend of\ndecember\nwhen i get back to the office .\nwith best holiday wishes ,\nvince\n\" more \" on 12 / 01 / 99 09 : 28 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : luncheon meeting\ndear mr . kaminski :\nhow are you doing ? i want to find out if we can meet again for a quick\nlunch .\nyou might know that in maharashtra , india there is now a new chief\nminister\n( ceo of the state government ) . i am proud to say that he and i are\nfrom the\nsame\ntown , latur .\ni would really enjoy talking with you again , at your convenience .\ni will call you tomorrow to follow up .\nthank you .\nsincerely ,\nmaruti more\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski ; vkaminski @ aol . com\ndate : thursday , july 01 , 1999 6 : 16 am\nsubject : re : luncheon meeting\ndear mr . more ,\nlet ' s meet at 11 : 45 in the lobby of the enron building .\nwe can walk to one of the restaurants in the downtown area .\nvince kaminski\n( embedded enron capital & trade resources corp .\nimage moved\nto file : from : \" more \"\npicl 7002 . pcx ) 06 / 30 / 99 10 : 38 pm\nto : vince j kaminski / hou / ect\ncc :\nsubject : luncheon meeting\ndear mr . kaminski :\ni am looking forward to our luncheon meeting on this friday ,\njuly 2 ,\n1999\nat\n11 : 30 am . please let me know where we should meet . thank you for\ntaking\ntime\nout\nfrom your busy schedule .\nsincerely ,\nmaruti more\ntel . : 713 - 831 - 6209\n- attl . htm\n- bio @ home . doc\n- more @ home . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.761+0000", "entityId": 6814, "properties": {"text": "Subject: new employee\nshirley :\ndon ' t panic , but we have a new employee , chonawee supatgiat , who is starting\non feb . 8 th ( yes , today ) . sorry about the short notice , but he just\naccepted on the 7 th at 5 p . m . he will be primarily supporting ebs ( enron\nbroadband services ) and reporting to ravi , but we will need to find a spot\nfor him on the 19 th floor . he can even use my office temporarily if needed\nsince i have a desk on 44 as well .\ni ' ll talk to you about the specifics in the morning .\nthanks ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.766+0000", "entityId": 6815, "properties": {"text": "Subject: new 22 cpm color copier information\nkevin ,\ni am not sure by what date you require a color copier but if you can wait\nuntil april , lanier has let me know that they are going to release their new\n22 copy per minute color copier @ that time . please look @ the attached\nspreadsheet and compare the cost with the $ 24 cpm canon copier sent to you\non 01 / 31 / 2000 :\nlet me know what you think .\nthanks , iain . . . . . . . . . . . . . . . . .\niain russell\n02 / 01 / 2000 10 : 11 am\nto : kevin g moore / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\nsubject : revised 10 cpm color copier information\nkevin ,\ni revised the cost on the 10 cpm tab under cpi : - - >\nthanks , iain . . . . . . . . . . . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by iain russell / epsc / hou / ect on 02 / 01 / 2000\n10 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncolor copier information\nfrom : iain russell on 01 / 31 / 2000 11 : 45 pm\nto : kevin g moore / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , carole rogers / epsc / hou / ect @ ect\nsubject : color copier information", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.771+0000", "entityId": 6816, "properties": {"text": "Subject: new computers\nhi lyn :\nhope things are going better for you !\nthe research group is getting one new employee beginning february\n21 , 2000 , that needs a computer . we also have an employee that needs\na new computer because the one she has does not have enough memory .\nwe need at least 64 meg memory with a large screen ( 17 \" ) .\nnames and locations :\nyana kristal ebl 947 ( replace computer she now has )\nshalesh ganjoo ebl 951 ( new analyst rotating - 2 / 21 / 00 )\nco . # : 0011\nrc # : 100038\napprover : vince kaminski , managing director , research\nif you need anything else , please let me know .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.778+0000", "entityId": 6817, "properties": {"text": "Subject: fyi : energy operations promotions\nhi vince , scott pleus ( listed below in the director promotion section ) is\nbandwidth - trading backoffice person we \u0001 , ve been working with . i have known\nscott from ebs since he and i started around the same time . in fact , i was\none of the first people to talk to sally beck about booking some of our\nnetwork positions \u0001 * at which time i met scott . i know we have discussed this\nmatter many times before , but this is a specific example of how people at all\nfunctional areas are benefiting from ebs ' rapid ' growth . ' scott has been at\nenron for about the same time i have been . he came from another energy\ncompany ' s backoffice before that .\nas for my specific situation , after our discussion yesterday , i understand\nclearly what happened . it appears bad luck had a lot to do with it ! ! !\nthanks for looking into the promotion in the first place and i am certain\nthat you ' ll push the promotion through at the earliest convenience of the hr\nfolks !\nkind regards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 08 / 00 09 : 22\nam - - - - -\nsally beck @ enron\nsent by : enron announcements @ enron\n02 / 07 / 00 07 : 01 am\nto : all ena domestic employees\ncc :\nsubject : energy operations promotions\nena energy operations\nsally beck vice president of energy operations\ni am pleased to announce the following promotions effective february 1 within\nena energy operations . these individuals have been promoted in recognition\nof their outstanding performance and their contributions to the continuing\nsuccess of enron north america . please join me in congratulating these\nemployees on their promotions .\npromotions to senior director\nkristin albrecht serves as business controller for ena \u0001 , s power business .\nalong with leslie reeves , kristin ensures that power transactions are handled\naccurately and smoothly from beginning to end . kristin \u0001 , s primary focus is on\nrisk controls and daily reporting of positions and p & l for east power\ntrading , west power trading and genco operations .\nbrenda herod serves as business controller for ena \u0001 , s assets business , working\nwith the gas assets group and the texas trading desk . her responsibilities\ninclude global contracts and facilities , risk management , confirmations , gas\nscheduling , volume management , settlements and regulatory compliance for\nhouston pipeline , lrc and enron midstream services .\nleslie reeves is a business controller for ena \u0001 , s power business , working\nclosely with kristin albrecht in managing mid and back office support for the\neast , west and genco power trading groups . her primary responsibilities are\ndocumentation and settlements , with a focus on contract administration , cash\nforecasting and cash management .\nmary solmonson leads ena \u0001 , s global database management group , collecting and\nvalidating information on our customers , contracts , pipelines and facilities ,\nas well as published prices . these activities support overall energy\noperations responsibilities from risk to logistics to settlement . in\naddition , mary has been instrumental in the promotion and implementation of\nthe global systems across enron to provide control , consistency , and common\ndata throughout the organization .\npromotions to director\nscott pleus serves as business controller for enron \u0001 , s emerging products .\nthese businesses include bandwidth , pulp and paper , and weather . his primary\nresponsibilities include day - to - day functions of risk management ,\nconfirmations , pulp and paper scheduling , and settlements as well as long\nterm system development .\nsheri thomas led ena \u0001 , s natural gas off - system settlements function throughout\n1999 . her responsibilities included cash forecasting , collections , and\naccountability for receivables and payables for ena \u0001 , s gas business in the\neast , west and central regions of the us . sheri accepted a new assignment in\njanuary 2000 and is now managing the enron online operations .\npromotions to manager\nbennett kaufman manages the risk management administration function for the\nequity trading and debt trading groups . he has also had experience in\nsupporting the options book for natural gas derivatives trading . prior to\njoining enron in early 1998 , bennett worked in trading operations for\ninvestment banking firms in new york .\nrichard mckeel is the systems integration analyst within global database\nmanagement , overseeing the change management process and new software\ndevelopment needed to interface the global applications with strategic\nsystems \u0001 ) sitara , unify , enpower , solarc , sap , and enrononline .\nother promotions\nspecialist to senior specialist : analyst to specialist :\nsylvia campos \u0001 ) deal compliance contract records tara eslick \u0001 ) financial\ntrading risk management\nkam keiser \u0001 ) gas risk management - central desk victoria versen \u0001 ) gas\nlogistics - east desk\nphillip love \u0001 ) risk controls operational analysis\njeff coats \u0001 ) gas risk management - central desk\nmonica lande \u0001 ) west power risk management ( portland ) senior clerk to staff :\ntrang le \u0001 ) strategic operations \u0001 ) project unify\njohn postlewaite \u0001 ) east power risk management anthony campos \u0001 ) deal\ncompliance contract records\ndiane seib \u0001 ) documentation ( calgary ) kori loibl \u0001 ) gas risk management -\nfinancial books\ndonnie vinson \u0001 ) west power risk management ( portland )\nimelda frayre \u0001 ) strategic operations - project sitara\nclerk to senior clerk :\nstaff to specialist :\nleslie smith \u0001 ) information & records management\namy degeyter \u0001 ) power documentation melinda whalen \u0001 ) documentation ( calgary )\nmichael nguyen \u0001 ) emerging products risk management\nsherlyn schumack \u0001 ) logistics volume management\nkarie hastings \u0001 ) strategic operations - project sitara\nin addition , peggy hedstrom and brent price were promoted to vice president ,\nas announced in the memo issued by enron corp . office of the chairman . peggy\nleads energy operations for enron canada , with responsibility for risk\nmanagement , documentation and gas logistics . peggy also serves as a key\ninterface with canadian pipelines as a member of several industry\ncommittees . brent is the senior business controller for gas trading\noperations in the u . s . his responsibilities include risk management ,\nconfirmations , volume management and settlements for the east , west and\ncentral regions . he also provides operational expertise in the due diligence\nphase of the evaluations of joint ventures and acquisitions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.786+0000", "entityId": 6818, "properties": {"text": "Subject: receipts from visit\ndear vince ,\nthanks again for taking the time to visit . ? both faculty and students got a\nlot out of your presentations .\ni have a favor to ask concerning the expense reimbursement process . ? can you\nmail all travel and lodging receipts to my secretary joan payne at the\nfollowing address :\njoan payne\ndepartment of finance\n2163 ceba\nlouisiana state university\nbaton rouge , la ? 70803\nthanks ,\njim garven\njames r . garven\nwilliam h . wright , jr . endowed chair for financial services\ndepartment of finance\n2158 ceba\ne . j . ourso college of business administration\nlouisiana state university\nbaton rouge , la ? 70803 - 6308\nvoice ( 225 ) 388 - 0477 ? | ? fax : ( 800 ) 859 - 6361\ne - mail : ? jgarven @ lsu . edu\nhome page : http : / / garven . lsu . edu\nvita : http : / / garven . lsu . edu / dossier . html\nresearch paper archive : http : / / garven . lsu . edu / research . html\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.792+0000", "entityId": 6819, "properties": {"text": "Subject: dr . kaminski ,\nthank you for giving me an opportunity to talk with you and zimin . it ' s my\ngreat pleasure to meet with you\nand your group members .\ni met zimin last week . we had a wonderful talk . after our meeting , i handed\nin him my current resume .\nhe may already forwarded my resume to you . if not , i will be very happy to\nsend you a copy .\nby talking with you , zimin and by attending your presentation yesterday at\nuh , i find i am really interesting the\nfields that you are working on . i am deeply impressed by the research works\nyour team have done and i am\nlooking forward i am able to become one of your members . i am also looking\nforward to be able to do researches\nunder your guidance .\ni strongly feel that your research department provides the kind of jobs and\nenvironments that i have been looking\nfor a long time . my career objective matches your research fields and\ndirections . i believe my training in mathematics\nand computer science will provide me some necessary backgrounds in energy\nrisk management . i am also sure that\nby working with you , i can greatly expand my it skills and experiences . i\nalso can learn tremendously from\nyou and your research teams .\ncurrently after finishing my programing work as an it spcialist , i am\nreading john hull ' s book and try to catch up necessary\nbackground in finance and related fields . i am also readingyour \" managing\nenergy price risk \" book .\nthank you for giving me a copy of this book .\nagain , thank you for giving me this opportunity and i am looking forward to\nworking in your team .\njohn hou\n713 - 853 - 1600", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.797+0000", "entityId": 6820, "properties": {"text": "Subject: research family outing and volleyball game\nhello everyone :\nstart practicing ! we are going to have an outing and volleyball game for\nthe research employees and their families ! .\ndetails are as follows :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.801+0000", "entityId": 6821, "properties": {"text": "Subject: gaming of neta prices - constraints on the mccoy strategy\nfyi ( bm = balancing market in his email ) .\ni ' m still on eklavya ' s back to produce a white paper analysis of possible\ntrading stretagies under neta and their likely implications for prices and\nvolatilities . i ' ll forward it on as soon as ( if ever ) i receive it .\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 02 / 09 / 2000\n03 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\neklavya sareen 09 / 02 / 2000 14 : 43\nto : ect london uk power trading , enron london power analytics , ect london uk\ngas and power origination , paul dawson / lon / ect @ ect\ncc :\nsubject : gaming of neta prices - constraints on the mccoy strategy\ni believe most people are now familiar with the mccoy strategy for\nmanipulating imbalance prices in a favourable direction :\n1 ) take a massive long or short position in forward trading\n2 ) choose physical production decisions to drive system\ni ) long if forward market postion is long\nii ) short if forward market postion is short\n3 ) if system is long it needs to accept bids , if system is short it needs to\naccept offers\n4 ) if forward market postion is long submit very large postive bids to the bm\nto drive ssp high - ssp is price received for spilling power to the bm ( going\ninto bm long )\n5 ) if forward market postion is short submit very small ( even negative )\noffers to the bm to drive sbp low - sbp is price paid for purchasing power\nfrom bm ( going into bm short )\nthe neta programme intends to tag transmission cosntraint related trades in\nthe bm . according to disg 24 \" tagging constraint trades \" ( 21 dec 99 ) option\n3 ( a ) [ the option that is proposed to be adopted ] , paragraph 2 . 3 ( p . 4 ) :\n\" in the relevant settlement period , all accepted offers and bids volumes that\ncan be arbitraged , i . e . where a volume has been bid higher than the price at\nwhich a volume has been offered , are eliminated ; \"\none of the implications of the above procedure is that the highest bids ( the\nmccoy bids ) and the lowest offers ( the mccoy offers ) are likely to be\neliminated from the calculation of imbalance prices . this will make it harder\nto pursue the mccoy strategy successfully .\nthoughts and comments welcome .\nthanks ,\neklavya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.806+0000", "entityId": 6822, "properties": {"text": "Subject: ny march real options conference\nplease find attached the final program for an exciting conference on \" real\noptions valuation in the new economy : internet / e - commerce ,\nr & d / pharmaceuticals , energy . \" the conference , organised in new york city\nmarch 13 - 15 by the real options group and co - sponsored by ernst & young\nllp , is addressed to a corporate audience .\nthe chairman of the conference is prof . michael j . brennan of ucla who will\ndeliver the opening address , and the keynote speaker is prof . stewart c .\nmyers of mit . many of the world / s thought leaders in real options\nanalysis , along with prominent experts from many leading corporations will\nalso share their ideas and experiences .\nplease note that the deadline for hotel registration is february 21 ( see\nthe attached brochure for hotel details ) and conference fees increase by\n20 % for those registering after march 1 . the ( full ) conference brochure and\non - line conference registration are available at our website www . rogroup . com\nwe hope that you will be able to participate and would appreciate it if you\ncould also communicate this announcement among other interested colleagues .\nin fact , it would be most helpful to us and would be greatly appreciated , if\nyou could send me ( also cc . to amicaliz @ sda . uni - bocconi . it ) a list of 5 - 10\ncolleagues to whom we can send the electronic version of the brochure .\nbest wishes ,\nlenos trigeorgis\npresident , real options group\n- rognyconference . pdf\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.811+0000", "entityId": 6823, "properties": {"text": "Subject: march ny real options conference\nplease find attached the final program for an exciting conference on \" real\noptions valuation in the new economy : internet / e - commerce ,\nr & d / pharmaceuticals , energy . \" the conference , organised in new york city\nmarch 13 - 15 by the real options group and co - sponsored by ernst & young\nllp , is addressed to a corporate audience .\nthe chairman of the conference is prof . michael j . brennan of ucla who will\ndeliver the opening address , and the keynote speaker is prof . stewart c .\nmyers of mit . many of the world / s thought leaders in real options\nanalysis , along with prominent experts from many leading corporations will\nalso share their ideas and experiences .\nplease note that the deadline for hotel registration is february 21 ( see\nthe attached brochure for hotel details ) and conference fees increase by\n20 % for those registering after march 1 . the ( full ) conference brochure and\non - line conference registration are available at our website www . rogroup . com\nwe hope that you will be able to participate and would appreciate it if you\ncould also communicate this announcement among other interested colleagues .\nin fact , it would be most helpful to us and would be greatly appreciated , if\nyou could send me ( also cc . to amicaliz @ sda . uni - bocconi . it ) a list of 5 - 10\ncolleagues to whom we can send the electronic version of the brochure .\nbest wishes ,\nlenos trigeorgis\npresident , real options group\n- rognyconference . pdf\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.815+0000", "entityId": 6824, "properties": {"text": "Subject: australian energy 2000\ndear vince ,\ni hope you are well and that things round at enron aren ' t too hectic . it is\nmy pleasure to invite you to speak at energy any help would be gratefully received .\nthis event will be thoroughly marketed through both energy & power risk\nmanagement magazine and our extensive database . it is my aim to attract the\nleading market players by providing a first - class programme with top - rated\nspeakers , making this a highly worthwhile event for the energy industry .\ni have attached a copy of the programme for your information .\nunfortunately my schedule for this event is very tight . please let me know\nif you would like to participate by reurn email as it is unlikely that we\ncan speak on the phone as i am currently based in hong kong . if you would\nlike to send a colleague , then i would be happy to discuss this but it\nwould be great if you could complete the eprm grand slam by addressing our\nthree major annual events on three different continents !\ni look forward to hearing from you soon .\nyours sincerely ,\njoel hanley\nproducer , eprm conferences & courses\n- australianenergy 2000 . doc\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\neprm conferences\nrisk publications\nhong kong\ntel : 852 2545 2710\nfax : 852 2545 7317\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.820+0000", "entityId": 6825, "properties": {"text": "Subject: re : credit trading brought to you by bryan seyfried\nted ,\ni ' m happy to sign off on the basis discussed with bryan at the end of last\nweek and outlined in the attached memo .\nregards\nfernley\nfrom : ted murphy 08 / 02 / 2000 22 : 16\nto : steve w young / lon / ect @ ect , fernley dyson / lon / ect @ ect , michael r\nbrown / lon / ect @ ect , william s bradford / hou / ect @ ect , john sherriff / lon / ect @ ect ,\nvince j kaminski / hou / ect @ ect\ncc : rick buy\nsubject : credit trading brought to you by bryan seyfried\nmy understanding is that bryan will be in houston to present his strategy\nregarding credit trading for approval under an interim trading policy -\nsigned off by jeff and rick . before making any recommendation to jeff , rick\nwants to be sure that the people on the list above are comfortable with the\nactivity and will be willing to signoff on the approval . given that bryan\nwill be physically here , i am requesting that you e - mail your concurrence to\nme no later than tommorrow . otherwise rac will not present to jeff for\napproval .\nthank you for your help in puttting this together and making it a success !\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.824+0000", "entityId": 6826, "properties": {"text": "Subject: re : credit trading brought to you by bryan seyfried\ni am happy that the legal issues have been addressed and discussed with bryan\nand john and i will sign off on the approval .\nmichael\nfrom : ted murphy 08 / 02 / 2000 22 : 16\nto : steve w young / lon / ect @ ect , fernley dyson / lon / ect @ ect , michael r\nbrown / lon / ect @ ect , william s bradford / hou / ect @ ect , john sherriff / lon / ect @ ect ,\nvince j kaminski / hou / ect @ ect\ncc : rick buy\nsubject : credit trading brought to you by bryan seyfried\nmy understanding is that bryan will be in houston to present his strategy\nregarding credit trading for approval under an interim trading policy -\nsigned off by jeff and rick . before making any recommendation to jeff , rick\nwants to be sure that the people on the list above are comfortable with the\nactivity and will be willing to signoff on the approval . given that bryan\nwill be physically here , i am requesting that you e - mail your concurrence to\nme no later than tommorrow . otherwise rac will not present to jeff for\napproval .\nthank you for your help in puttting this together and making it a success !\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.829+0000", "entityId": 6827, "properties": {"text": "Subject: london meeting\ndear vince\ncould you let me know when you are able to meet riskcare ? i will try to\nreach you in houston , otherwise i will give anjam ' s office a call\ntomorrow .\nregards\nmanuel\nmanuel rensink\nriskcare - financial technology services\npiercy house\n7 copthall avenue\nlondon\nhttp : / / www . riskcare . com\ntel : + 44 ( 0 ) 20 7562 3400\nfax : + 44 ( 0 ) 20 7562 3401\nabout riskcare\nsince riskcare ' s inception in 1994 , we have specialised in providing\npre - eminent services and pioneering tools to the financial markets\nindustry .\nriskcare offers :\n* a range of hands - on technology services for systems implementation\nand operation , including development , integration , support , technical\nskills and software selection\n* a range of financial engineering services , including model\nvalidation , risk advisory , analytics integration , development of pricing\nmodels for derivative instruments and front office analytics such as\nwillow , a revolutionary tool for option pricing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.834+0000", "entityId": 6828, "properties": {"text": "Subject: re : receipts from visit\njim ,\nthanks again for the invitation to visit lsu .\nshirley will fedex the receipts tomorrow .\nvince\n\" james r . garven \" on 02 / 08 / 2000 07 : 00 : 50 pm\nto : vince j kaminski\ncc :\nsubject : receipts from visit\ndear vince ,\nthanks again for taking the time to visit . ? both faculty and students got a\nlot out of your presentations .\ni have a favor to ask concerning the expense reimbursement process . ? can you\nmail all travel and lodging receipts to my secretary joan payne at the\nfollowing address :\njoan payne\ndepartment of finance\n2163 ceba\nlouisiana state university\nbaton rouge , la ? 70803\nthanks ,\njim garven\njames r . garven\nwilliam h . wright , jr . endowed chair for financial services\ndepartment of finance\n2158 ceba\ne . j . ourso college of business administration\nlouisiana state university\nbaton rouge , la ? 70803 - 6308\nvoice ( 225 ) 388 - 0477 ? | ? fax : ( 800 ) 859 - 6361\ne - mail : ? jgarven @ lsu . edu\nhome page : http : / / garven . lsu . edu\nvita : http : / / garven . lsu . edu / dossier . html\nresearch paper archive : http : / / garven . lsu . edu / research . html\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.839+0000", "entityId": 6829, "properties": {"text": "Subject: credit model status update\nbill ,\ni am forwarding a memo from vincent tang about the new credit model .\nenglish may be imperfect but the message is clear .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 10 / 2000\n02 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvincent tang\n02 / 08 / 2000 02 : 43 pm\nto : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect\ncc :\nsubject : credit model status update", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.843+0000", "entityId": 6830, "properties": {"text": "Subject: ed krapels\nlouise ,\nsome time ago i sent you a message regarding ed krapels . he is writing a book\non energy\ncommodity markets and would like to learn more about eol .\ncan you give him a call and chat with him for 10 minutes . he is a good\nfriend of enron and\nit would be free ad for us .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.848+0000", "entityId": 6831, "properties": {"text": "Subject: re : interviewing candidates for research\nsteve ,\ni am speaking at a conference either on monday or tuesday . i shall let you\nknow tomorrow\nthe details of my schedule .\nwe can always invite them to visit with enron in the evening .\nsteven leppard\n02 / 10 / 2000 11 : 27 am\nto : vince j kaminski / hou / ect @ ect\ncc : dale surbey / lon / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : interviewing candidates for research\nhi vince\ndo you think you will be able to find the time to carry out some interviewing\non monday 21 st february ? are there any times you ' d particularly like me to\navoid ?\nthe first people i ' m inclined to invite in are the candidates whose cvs i ' ve\nattached below . i ' d like to hear what you think before i invite them along .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.853+0000", "entityId": 6832, "properties": {"text": "Subject: re : energy derivatives\nhi vince ,\nhope all is well with you . i ' m looking forward to seeing you again next\nweek and meeting with grant . can you guys do me favour ? i ' m sending out\nsome sample chapters to the people who responded positively ( all of them ! )\nto my request for some feedback on the book . chapter 1 has an ' overview ' of\nthe book with just a couple of sentences on each chapter . could you please\nwrite a sentence or two for your chapter ?\ni ' m including what i have already written so that you can see the style .\nmany thanks and best regards .\nchris .\n2 overview of this book\nthis book aims to provide an in - depth understanding of the pricing and risk\nmanagement of energy derivatives . in the remainder of this chapter we give\nan overview of the fundamental principals needed to model and price energy\nassets , and which underlie the rest of the book . as well as introducing\nthe techniques that underlie the black - scholes modelling framework we\ndiscuss the numerical techniques of trinomial trees and monte carlo\nsimulation for derivative pricing which are used extensively later in the\nbook .\nin chapter 2 we analyse spot energy prices . apart from describing\nempirical prices we propose a number of processes that can be used to model\nthe prices . we look at the well - know process of gbm as well as mean\nreversion , stochastic volatility and jump processes , discussing each , and\nshowing how they can be simulated and their parameters estimated .\nchapter 3 , written by vince kaminski and grant masson of enron capital and\ntrade .\nchapter 4 examines forward curves in the energy markets . although such\ncurves are well understood and straight forward in the world debt markets\nthe difficulty of storage in many energy markets leads to less well defined\ncurves . what we do in this chapter\nchapter 5 presents an overview of the common and not - so - common derivative\nstructures in the energy markets and discusses their uses . examples of\nproducts analysed in this chapter include a variety of swaps , caps , floors\nand collars , as well as energy swaptions , compound options , asian ( or\naverage rate ) options , barriers , lookbacks , and ladder options .\nchapter 6 investigates single and multi - factor models of the energy spot\nprice and the pricing of some standard energy derivatives . closed form\nsolutions for forward prices , forward volatilities , and european option\nprices are derived and presented for all the models in this chapter\nincluding a three factor stochastic convenience yield and interest rate\nmodel with jumps .\nchapter 7 shows how the prices of path dependent and american style options\ncan be evaluated for the models in chapter 6 . simulation schemes are\ndeveloped for the evaluation of european style options and applied to a\nvariety of path dependent options . in order to price options which\nincorporate early exercise opportunities , a trinomial tree scheme is\ndeveloped . this tree is built to be consistent with the observed forward\ncurve and can be used to price exotic as well as standard american style\noptions .\nchapter 8 develops a new methodology for valuing energy options based on\nmodelling the market observed forward curve . the approach results in a\nmulti - factor model that is able to capture realistically the evolution of a\nwide range of energy forward curves and where the user defined volatility\nstructures can be of an extremely general form . closed - form solutions are\ndeveloped for pricing standard european options and efficient monte carlo\nschemes for exotic options . the chapter finishes with a discussion of the\nvaluation of american style options .\nchapter 9 focuses on the risk management of energy derivative positions .\nin this chapter we discuss the management of price risk for institutions\nthat sell options or other derivatives to a client and who is then faced\nwith the problem of managing the risk through time . we begin with delta\nhedging a portfolio containing derivatives and look at extensions to gamma\nhedging - using the models from chapters 5 and 7 . the general model of\nchapter 7 ideally suited to multi - factor hedging and this is also\ndiscussed .\nchapter 10 looks at the key risk - management concept of value at risk\napplied to portfolios containing energy derivative portfolios . after\ndiscussing the concept of the measure , we look at how the key inputs\n( volatilities , covariances , correlations , etc ) can be estimated . we then\ncompare the fours major methodologies for computing var ; delta ,\ndelta - gamma , historical simulation and monte - carlo simulation . finally , we\nlook at testing the var estimates for various underlying energy market\nvariables .\nfinally , we finish with credit risk in energy markets in chapter 11 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.858+0000", "entityId": 6833, "properties": {"text": "Subject: re : aiesec\ndear mr . kaminski ,\nwe will be glad to have you with us this saturday for the mock sales day .\nthis event is part of our recruitment process . so far this semester the\nrecruitment has been very successful - we have 16 new members , compared to 10\nexperienced ones .\nthe next goal is to keep these people interested in what we do and build the\naieseec spirit in them . i hope that this saturday will greatly contribute to\nthat .\nhere is the schedule so far :\n9 : 00 - 10 : 00 breakfast\n10 : 00 - 12 : 00 sales training session\n12 : 00 - 1 : 00 lunch break ( board of advisors and alumni coming )\n1 : 00 - 3 : 30 practice sales calls\nsome details :\ni don ' t have the training program finalized yet , but i ' m sure it will be\ngood . i have a teacher from uh program for excellence in selling and the\nlocal committee president , tim , organizing it . it should be interactive and\nmotivating : ) . if you are interested you are more than welcome to come in\nthe morning and have fun with us .\ni ' m inviting the board of advisors members and some alumni to join us at\nnoon . lunch will be provided . our members are cooking ! and it is a very\ninternational crowd ! so far we have german meatballs , some venesuelan soup\n( don ' t remember the name , but it ' s supposed to be very good and a lot of it ) ,\nspanish tortilla de patata and other international dishes .\nthe part when you would help is the practise sales calls . this is a way to\nprovide experience to our new members , we are inviting our board of advisors ,\nalumni and everyone who is interested in aiesec to play as company\nrepresentatives . i will give you case scenarios , everyone will have an office\nand the new members will have to \" sell \" aiesec to you . one of the goals of\nthe organization is to create as many exchange opportunities as possible , so\nthe new members will try to get you to sign a contract for taking an\ninternational intern into your imaginary company .\ni hope you find it interesting : ) .\ndirections to uh , college of business :\ntake i - 45 south , exit spur 5 , at the street light at the end of the freeway\ntake a right , at calhoun street light take a right again , the college of\nbusiness will be on your left hand side . park in the parking lot in front\n( you don ' t need a permit on the weekends ) .\nplease , let me know if you are coming and what time and i will make sure\nsomeone will meet you at the entrance of the building .\nthank you for your time ,\nbiliana\nat 04 : 01 pm 2 / 2 / 00 - 0600 , you wrote :\n>\n>\n> biliana ,\n>\n> i have prior commitments on saturday , february the 5 th . please , send me more\n> information about the following saturday . there is a remote possibility i\nshall\n> have\n> to go to london that weekend . otherwise , i shall be glad to join you .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> biliana pehlivanova on 01 / 28 / 2000\n> 11 : 54 : 58 am\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : aiesec\n>\n>\n>\n> dear mr . kaminski ,\n>\n> the following are the personal and work e - mail addresses of the polish\n> trainees in college station .\n>\n> sylwester rutkowski sylwesterr @ usa . net , sylwester . rutkowski @ destia . com\n> patricia dalecka pdalecka @ hotmail . com , patrycia . dalecka @ destia . com\n> danusia mas danusia . mas @ destia . com\n> lidia olczyk lolczyk @ usa . net , lidia . olczyk @ destia . com\n> robert lyczak rlyczak @ yahoo . com , robert . lyczak @ destia . com\n>\n> i would like to invite you to join us for a paintball game next saturday ,\n> feb 5 th . the purpose of this event is to develop team building among our\n> student members , board of advisors , and corporate clients .\n>\n> in addition , i would like to invite you to participate in our mock\n> sales day on saturday , feb . 12 th . during this day , the new members will\n> first receive training on aiesec sales / knowledge and then role play with our\n> board of advisors and alumni acting as company\n> representatives . sharing your aiesec and work experience would be a\n> valuable contribution to our training program .\n>\n> i will get in touch with you regarding these events in the beginning of\n> next week , as soon as i have the time and place finalized .\n>\n> i appreciate your interest in working with us .\n>\n> best regards ,\n>\n> biliana pehlivanova\n> vice president of incoming exchange\n> aiesec houston\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.862+0000", "entityId": 6834, "properties": {"text": "Subject: re : trip to houston\nanother student invited by tom gros to come next wednesday .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 10 / 2000\n05 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaulo rocha e oliveira on 02 / 10 / 2000 12 : 04 : 56 pm\nto : \" stinson gibner \"\ncc :\nsubject : re : trip to houston\nstinson ,\nthank you for your e - mail . my phone number is ( 617 ) 492 - 9551 . i don ' t\nhave a currect resume , but if i did it would say that i graduated from\nprinceton university in 1996 ( mathematics ) , and came straight to mit for a\nphd in operations management at the sloan schoolof management . in my first\nthree years i took all the required coursework in mathematics ,\noptimization , stochastic processes , etc . , as well as a number of courses in\npsychology ( at mit and harvard ) . i am working with prof . gabriel bitran ,\nand i am interested in the mathematical modeling of service operations . in\nparticular , i am interested in the interaction between customers and\ncompanies ( hence the interest in psychology ) . the ( tentative ) title of my\nphd thesis is \" pricing substitute products on the internet \" , and i am\nsending you the summary which i sent to tom gros a few weeks ago that will\ngive you an idea of what this research is about .\nthanks again , and i ' m looking forward to meeting you and your research\ngroup next week .\npaulo\npricing substitute products on the internet\nobjective :\nto develop new tools to decide pricing policies for goods and services sold\non\nthe internet .\nmotivation :\nthis reseach is motivated by the fact that traditional choice and optimization\nmodels are not appropriate for internet - related businesses . the technological\ninnovations associated with the internet brought about an overload of\ninformation\nwhich inevitably affects the ways in which consumers make choices .\nfurthermore ,\ncompanies have a great deal of influence on how much information consumers can\nhave access to .\nthe problem of pricing substitute products is an important strategic issue\nfaced\nby internet companies . consumers usually search for generic products ( e . g ,\nvcrs\nor computers ) without knowing exactly what they will buy . companies can show\ndifferent products and different prices to each consumer . this type of\nflexibility\nwas not available until the internet came about .\nthe problem of pricing substitute products is not unique to the internet . the\nmethodology developed by this research should be transferrable to a number of\nother settings , such as pricing services . services are unique , and there are\nmany cases where customers will only buy one of many services offered by a\ngiven company . our model will help companies decide which services to offer\nto which customers and how much to charge for these services .\nresearch strategy :\nour research strategy is to divide the pricing problem into two components\nwhich can be combined to generate optimal pricing strategies . these\ncomponents are choice models and optimization models .\nchoice models :\nchoice models describe how customers make choices . the management literature\ndraws on two main sources for these models : psychology and economics . the\ncommon approach in psychology models is to use what are called heuristic\nelimination methods . these methods consist of the elimination of options\nbased on the sequential eliminations of features until only one choice\nremains .\nthese methods tend to be very context - specific and do not lend themselves very\neasily to mathematical analysis . economists focus on utility - maximing models\nthat are significantly more mathematically tractable than psychological\nmodels .\nthe most common economic model of choice is the logit model . the problem with\nthese types of models is that they are not very accurate reflections of how\nconsumer make choices on the internet . the first step in our research will\nbe\nto develop choice models that capture the interactions going on between\ncustomers\nand companies on the internet .\noptimization :\ntraditionally , the optimization problem consists of maximizing revenue over a\ncertain planning horizon . on the internet , the problem of maximizing revenue\nstill exists , but there is also a need to learn about customers . short term\nprofit is based on sales , but long term profit is based on how well you know\nyour customers and are able to retain them . the optimization problem must\ntherefore include a short term component ( sales ) and a long term component\n( learning ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.867+0000", "entityId": 6835, "properties": {"text": "Subject: trip to houston\nhere is some information on one of the students invited to enron next week by\ntom gros .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 10 / 2000\n05 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" juan - carlos o . ferrer \" on 02 / 10 / 2000 04 : 17 : 17 pm\nto : stinson . gibner @ enron . com\ncc :\nsubject : trip to houston\nhi stinson , i am juan - carlos ferrer , also ph . d . student working with gabriel\nbitran and going to houston with amit and paulo on the 16 th . paulo told me\nthat you are interested in some information of us before going to houston .\nwell , i am form chile , married , and father of two girls ( 3 and 2 ) . i\ngraduated from the engineering school at the catholic university of chile in\n1995 having followed the track in computer science during the last 3 years of\nschool . then , late in 1995 , i was hired by the industrial engineering\ndepartment as a full - time assistant professor of management science , where i\nwas teaching and doing research until june 1997 . in august 1997 i came to\nboston to join the operations management group in the sloan school of\nmanagement here at mit . i already finished courses and qualifiers\nrequirements of my program , so now i am trying to come up with an interesting\nresearch topic to develop my ph . d . thesis .\ni have been dealing with some interesting topics during the last months but\nsince enron appears as an opportunity to find a more challenging and\nappealing problem to me i decided to explore it . my intention in going to\nvisit enron is to have a better understanding of the bandwidth business in\norder to define a problem to work with . i would really like to do a thesis\nthat involves internet issues and yield management models , in the line of\namit ' s work .\nany other information or question you need , please feel free to contact me .\nlooking forward to meeting you on the 16 th .\njuan carlos ferrer\n? ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n? ? ? ? ? ? ? ? ? juan - carlos o . ferrer\n? ? ? ph . d . student , operations management\n? ? ? ? sloan school of management - m . i . t .\n? ? ? ? of : ( 617 ) 253 - 3597 fax : ( 617 ) 258 - 7579\n? ? ? ? ? ? http : / / web . mit . edu / jferrer / www /\n? ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.872+0000", "entityId": 6836, "properties": {"text": "Subject: my resume\nvince :\nattached please find my resume .\nthanks ,\nding\n6 - 7072", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.878+0000", "entityId": 6837, "properties": {"text": "Subject: paper\nhey vince ,\ni understand that alex butler has sent you a copy of the schwartz paper . i\nhave a copy of my paper attached to this e - mail . it was good to see you\nagain and i hope you enjoyed your visit to lsu .\nsincerely ,\ntom arnold\n- gopop . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.886+0000", "entityId": 6838, "properties": {"text": "Subject: the real options conference\nshirley ,\nplease , forward my bio to crystal .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 11 / 2000\n08 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncrystal barry on 02 / 09 / 2000 05 : 05 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : the real options conference\ndear vince ,\nas the above event is drawing closer , i thought i would write a quick email\nto finalise a few things with you . i understand that you would like a guest\nto attend , please can you let me know their name and job title . also , if you\ncould send me your conference checklist i would appreciate it , so that i can\nfinalise details with my audio visual company .\nin the meantime , if there is anything i can do for you , please do not\nhesitate to let me know on 0171 - 915 - 5116 .\nkind regards\ncrystal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.893+0000", "entityId": 6839, "properties": {"text": "Subject: thanks for your help ! !\nvince ,\nmy apologies for writing to you after such a long gap . i wanted to thank you\nfor the book you sent , as well as al the help that is been rendered by\nkrishna towards our efforts here\nour efforts here are becoming more intense and i will continue to need your\ngroup help as we proceed along the way .\nseparately i have not yet forgotten about the training we had spoken about .\nhowever , give the intensity of our current effort we may need to hold on to\nthat for some months . in the meantime we will continue to work together .\nonce again i would like to thank you and krishna for all your help and\nsupport .\nthanks and best regards\nsandeep", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.898+0000", "entityId": 6840, "properties": {"text": "Subject: re : ed krapels\nlouise ,\nthanks . his e - mail address is ekrapels @ esaibos . com . the company\ncoordinates are as follows :\nesai\n301 edgewater place , suite 108\nwakefield , ma 01880\n( 781 ) 245 - 2036\n( 781 ) 245 - 8706\nvince\nlouise kitchen\n02 / 11 / 2000 05 : 13 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : ed krapels\nabsolutely - i can ' t find the previous email but it may have been lost during\nthe few days they moved my email box from london to houston - i know i had a\nlot of lost emails - do you have his phone number and email and we can sort\nout a password for a few days for him too .\nlouise\nvince j kaminski\n10 / 02 / 2000 22 : 15\nto : louise kitchen / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : ed krapels\nlouise ,\nsome time ago i sent you a message regarding ed krapels . he is writing a book\non energy\ncommodity markets and would like to learn more about eol .\ncan you give him a call and chat with him for 10 minutes . he is a good\nfriend of enron and\nit would be free ad for us .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.902+0000", "entityId": 6841, "properties": {"text": "Subject: re : ed krapels\nabsolutely - i can ' t find the previous email but it may have been lost during\nthe few days they moved my email box from london to houston - i know i had a\nlot of lost emails - do you have his phone number and email and we can sort\nout a password for a few days for him too .\nlouise\nvince j kaminski\n10 / 02 / 2000 22 : 15\nto : louise kitchen / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : ed krapels\nlouise ,\nsome time ago i sent you a message regarding ed krapels . he is writing a book\non energy\ncommodity markets and would like to learn more about eol .\ncan you give him a call and chat with him for 10 minutes . he is a good\nfriend of enron and\nit would be free ad for us .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.907+0000", "entityId": 6842, "properties": {"text": "Subject: energydesk . com 2000 : meeting to review the new initiative with a\ndemonstration of the latest implementation , with a view to identify the\nvalue we can add from the research group [ exact time tbc ]\nexact time and location tbc for a mutually convenient time", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.911+0000", "entityId": 6843, "properties": {"text": "Subject: public affairs organizational announcement\ni am pleased to announce the following changes in the government and\nregulatory affairs organization :\nrick shapiro \u0001 ) managing director of government affairs for the americas .\nrick is currently leading the government and regulatory affairs teams for the\nus and canada . he will now assume responsibility for north and south\namerica . ricardo charvel ( senior director of government affairs for\nmexico ) , jose bestard ( vice president of government affairs for south\namerica ) , and joe hillings ( vice president of federal government affairs )\nwill now report to rick . rick and his team will support enron \u0001 , s north\namerican business units as well as the caribbean and southern cone regions .\nmark schroeder \u0001 ) vice president government affairs for europe , asia and\nafrica . mark is currently leading the government and regulatory affairs\nteams for enron europe . he will now assume the additional responsibility of\nsupporting the apachi and india organizations . jane wilson will now focus\nher attention on enron india and will report to mark as will our government\nand regulatory affairs teams serving the apachi region .\nmike terraso \u0001 ) vice president environment , health & safety and chief\nenvironmental officer . mike is currently serving as vice president of\nenvironment , health and safety for the gas pipeline group . mike has\nincreasingly become involved in environmental issues facing enron \u0001 , s\nbusinesses around the world . mike will retain his current responsibilities\nand will assume leadership of the environmental affairs team .\njohn hardy \u0001 ) vice president global project finance . john will report\ndirectly to me and will continue his current responsibilities representing\nenron before us and multilateral project finance agencies .\nplease join in me in congratulating these individuals on their\nresponsibilities .\nattached is a revised organization chart reflecting these changes .\nattachment :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.916+0000", "entityId": 6844, "properties": {"text": "Subject: charlie weldon\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 02 / 11 / 2000\n03 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharlene jackson @ enron\n02 / 11 / 2000 03 : 13 pm\nto : celeste roberts / hou / ect @ ect , ginger b gamble / hou / ect @ ect , jana\ngiovannini / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : charlie weldon\ncharlie weldon is a candidate who was a summer associate last year . i have\nmade the one and only exception for him on the starting date . he works with\nmike roberts and they had prearranged for him to work on a special project\nduring hurricane season . unfortunately , the project can ' t be delayed due to\nthe timing of hurricane season . he will start in june to work on this\nproject . it is not a project that a summer associate could work on so it is\nnot taking a job from one of them .\nmike totally understands the rationale for the starting date , etc . and has\npromised in blood that charlie will start the orientation with his class and\nwill not be pulled out to work on any projects during the 4 week\norientation . he is also someone that they would take into their group after\norientation .\nmike is drafting a letter that he will sign in blood indicating his promise\nre orientation . please keep an eye out for this individual when we send out\nthe material regarding starting dates , etc .\nwe need to also make sure charlie understands that he must attend the entire\norientation .\nmike also promises to sing our praises about how great we are ( smile - this is\nmy addition mike did not say that , but i am sure he will do it )\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.920+0000", "entityId": 6845, "properties": {"text": "Subject: charlie weldon\ncharlene ,\nthank you for accomodating our request to start charlie weldon in his\nrotation in the research group earlier than the incoming associate official\nstart date of august 7 th .\nas we discussed , the business purpose for this request is related to the\nproject we have earmarked for him , which is linked to the hurricane season ,\nwhich starts in june .\nand you have my e - handshake that we will release him to participate in the\nregularly organized orientation activities scheduled for august .\nwe expect he will report on wednesday , june 21 st .\nthanks again ,\n- - mike roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.925+0000", "entityId": 6846, "properties": {"text": "Subject: summer internship position\nceleste ,\ni would like to ask you for a favor . we would like to have sevil as an intern\nin our group\nthis summer . she prepares a ph . d . dissertation on transmission : a critical\nissue to the power\nmarkets everywhere .\ni have also a few other students i would like to take in as summer interns . i\nshall send you\nthe resumes in separate messages .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 11 / 2000\n12 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsevil yaman on 02 / 10 / 2000 10 : 22 : 28 pm\nto : vkamins @ enron . com\ncc :\nsubject : summer internship position\nhi dr . kaminski ,\nas i told you last monday in dr . kao ' s class i am\nlooking for a summer internship position in your group\nin which i can use my economics background together\nwith my quantitative skills and knowledge in\nelectricity markets . currently , i am a third year\nph . d . student at the economics department of the\nuniversity of houston . at the end of this semester\ni ' ll be completing my coursework and starting to write\nmy dissertation which analyzes the access pricing\nissue in network industries , especially in electricity\ntransmission .\ni would like to give you a few examples from my\ncoursework . in addition to basic statistics i - ii and\neconometrics i - ii , i have taken \" macroeconomic\nmodeling and forecasting \" ( time series ) class in which\ni learned rats . in \" applied econometrics \" class , it\nwas given a great deal of attention to the case method\nlearning approach that involved extensive computer\nanalysis . we were taught sas . as a term paper i worked\non electricity demand forecasting . this semester i am\ntaking \" special topics in applied econometrics \" course\nin which i am being taught qualitative dependent\nmodels , mle , panel data techniques , and so on , and as\nsoftware stata . moreover , this semester i am also\ntaking \" options theory and its applications \" class and\nauditing dr . kao ' s class . i definitely agree with you\nin what you mentioned in your lecture last monday\nabout the understanding of the options theory as a\nnecessity in the energy sector .\nbesides , i spent my last summer in the oil and gas\nunit of the world bank as a research assistant . this\nwork experience in which i had great exposure to the\nenergy market issues and my own research area , which\nis regulation of transmission pricing ( congestion\npricing ) , made me believe that the ongoing\nrestructuring of the electricity sector , especially\nthe transmission network issue , could be well\nunderstood by working in the industry .\ndr . kaminski , attached you can find my resume . i would\nbe glad if you could find a chance to review it and\nget back to me soon .\nmany thanks ,\n= = = = =\nsevil yaman\ndepartment of economics\nuniversity of houston\nhouston , tx 77204 - 5882\n( 713 ) 743 - 3814 / 3817\ndo you yahoo ! ?\ntalk to your friends online with yahoo ! messenger .\nhttp : / / im . yahoo . com\n- resume - sevil . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.930+0000", "entityId": 6847, "properties": {"text": "Subject: workshop\ndear vince ,\ni would be delighted if you agreed to share with me\na one - day workshop before a major icbi conference\nin berlin , on june 19 . the topics would be similar ; we\nmay add real options . could you answer me before\ntuesday ?\nkind regards\nhelyette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.934+0000", "entityId": 6848, "properties": {"text": "Subject: purchase of license for software\nhello all !\nplease order visual studio ( visual basics and c + + ) for chonawee supatgiat\na new manager with the research group .\nthe information you will need to order this package is as follows :\nco . # : 0011\nrc # : 100038\nhead of research\ndepartment : vince kaminski\nname : chonawee supatgiat\ntitle : manager\nlocation : eb 1942\nphone : 5 - 8756\nif you need anything else , please let me know .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.939+0000", "entityId": 6849, "properties": {"text": "Subject: internal guest access to enrononline\nvince ,\nfollowing is an internal guest id and password which will allow you view only\naccess to enrononline .\nplease note , the user id and password are case sensitive .\nuser id : eol 59545\npassword : welcome !\nif you have any difficulties logging in , please contact the enrononline\nhelpdesk at 713 - 853 - help ( 4357 )\nwith any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.944+0000", "entityId": 6850, "properties": {"text": "Subject: re : re : workshop\nthis is great news for me and even more so\nfor icbi ( or the other way around . . ) .\ncould you call me today before 11 . 30 p . m\nparis time or to - morrow between 3 and 5 . 30 p . m\nparis time ? i think i do not have the right numbers\nfor you any more\nhelyette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.949+0000", "entityId": 6851, "properties": {"text": "Subject: re : workshop\nhelyette ,\ni shall be glad to join you .\nvince\ngemanix @ aol . com on 02 / 12 / 2000 11 : 27 : 56 am\nto : vkamins @ enron . com\ncc :\nsubject : workshop\ndear vince ,\ni would be delighted if you agreed to share with me\na one - day workshop before a major icbi conference\nin berlin , on june 19 . the topics would be similar ; we\nmay add real options . could you answer me before\ntuesday ?\nkind regards\nhelyette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.953+0000", "entityId": 6852, "properties": {"text": "Subject: re : fas 133 offsite\nzimin lu will also be attending from research . he will be responsible for a\nlot of the options modeling that may be required as part of the fas 133\nprocess .\nvasant\nfrom : paige b grumulaitis 02 / 08 / 2000 10 : 17 am\nto : vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : fas 133 offsite\nthis is the offsite i was referring to . this is for enron contracts that\napply not customer ' s issues or product design . please let me know who we can\nget to help us along the way .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paige b grumulaitis / hou / ect on 02 / 08 / 2000\n10 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : donna jones 02 / 07 / 2000 05 : 58 pm\nto : paige b grumulaitis / hou / ect @ ect , ron baker / corp / enron @ enron , li n\nchan / hou / ect @ ect , georgeanne hodges / hou / ect @ ect , mary lynne\nruffer / hou / ect @ ect , jeff nogid / hou / ect @ ect , roger g\nleworthy / enron _ development @ enron _ development , james j\nbrown / aa / corp / enron @ enron , kimberly scardino / aa / corp / enron @ enron , patty\ngrutzmacher / aa / corp / enron @ enron , donald . l . avant @ us . arthur . andersen . com , nina\nnguyen / hou / ees @ ees , sally beck / hou / ect @ ect\ncc : dawn rodriguez / aa / corp / enron @ enron , shirley tijerina / corp / enron @ enron ,\nrenee ingram / hou / ect @ ect , tracey bouillion / aa / corp / enron @ enron , patti\nthompson / hou / ect @ ect\nsubject : fas 133 offsite\nenron implementation offsite\ndoubletree hotel - tba\nwednesday , february 16 , 2000\n8 : 30 am - 5 : 00 pm\nyou are invited to an enron implementation offsite to discuss fas 133 . the\nsession will focus on the development and enhancement of the\npost - implementation fas 133 functional processes . we will then further\ndevelop the implementation plan for the detailed development of these\nprocesses and systems requirements . your participation in this stage is\nvital , as the final process will impact all of us .\nquestions regarding content can be directed to paige grumulaitis at x 36271 or\nron baker at x 35562 . please rsvp to donna jones at x 33175 by friday ,\nfebruary 11 th so she may have an accurate count for seating and\nrefreshments .\nwe look forward to working with you at the offsite .\nron baker & paige grumulaitis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.958+0000", "entityId": 6853, "properties": {"text": "Subject: re : agenda for next week\nben ,\ni spoke with anjam and gave him the information about my trip .\nhere is the short summary :\n1 . if you are free for dinner on sunday , i would be glad to meet with you\n( as well\nas anjam and steve ) . i would like to review what ' s going on in houston and\nlondon .\n2 . we can arrange the interviews for all the candidates you lined up monday\nafternoon\n( tuesday and wednesday mornings are the alternative dates ) . we treat the\ninterviews as internal\nto the research group and we shall arrange full interview schedules at a\nlater day for those candidates\nwho pass our internal test .\n3 . please , feel free to put on my agenda other meetings you think might be\nuseful .\nplease , coordinate the meetings with anjam and steve . i am busy on tuesday\nafternoon\n( i a speak at a conference ) .\nvince\nbenjamin parsons\n02 / 14 / 2000 08 : 18 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : agenda for next week\nvince ,\ncould you give me an idea of your agenda for next week ' s london visit - in\nparticular which day ( s ) would be best to bring some candidates in for\ninterviews for my old role .\nthanks\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.962+0000", "entityId": 6854, "properties": {"text": "Subject: invitation to sunday dinner with vince @ 6 . 30 pm\nhi steve & ben ,\nwe are planning an early sunday dinner ( one of the few evening slots that are\nfree in vince ' s schedule ) at :\ndiverso restaurant\n85 piccadilly\nlondon wlv 9 hd\ntel : 020 7491 2222\nit ' s just a few yards to the left of park lane hotel on park lane , close to\nhyde park corner underground and we ' ve been there before . vince would like\nto discuss the latest developments and it seems like the best opportunity to\ndo so . please let me know if you can make it and i can make sure the table\nis booked accordingly .\nregards ,\nanjam\nx 35383\np . s . vince will be staying at the park lane hotel , telephone number 0171 499\n6321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.967+0000", "entityId": 6855, "properties": {"text": "Subject: exploratory interview for grant masson ' s support for power trading\nhi kathy :\nattached is the resume for lance cunningham , who is a phd candidate from\nthe university of texas .\ngrant masson would like to bring him in for an exploratory interview at his\nconvenience . the position he would be interviewing for is : manager ,\ntransmission / power trading support , reporting to grant masson .\nthe interviewees would be :\ngrant masson *\nvince kaminski *\nmartin lin\nzimin lu\ngeorge hopley *\nbill rust\nit is essential that the ones marked with an asterik interview him , but it\nwould be great if the others could also .\nif you need any more information , please let me know .\nthanks and have a great day !\n- enron gm . doc\n- lcunningham resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.971+0000", "entityId": 6856, "properties": {"text": "Subject: amit , paulo , and juan carlos , feb . 16\nall :\nthe meeting on wednesday , feb . 16 th , with the students from m . i . t . is\nscheduled to be held in 19 c 2 . please let me know if you are planning to\nattend all or part of the day so i will know a rough headcount to expect .\n( samer and chonawee : please plan to come . )\nas i understand it , there are two goals for the day :\n1 . transfer any useful tools or knowledge from amit .\n2 . evaluate the other two students to see if there is value in establishing\nan ongoing relationship with them .\nagenda\n9 : 00 a . m . - 9 : 45 a . m . overview of ebs ( for paulo and juan carlos )\n10 : 00 - 10 : 30 review background and research interests of paulo and juan\ncarlos\n10 : 30 - 11 : 30 roundtable discussion of possible common areas of interest .\nlunch\n12 : 30 - 2 : 00 amit dhadwal - review of model for pricing spot bandwidth\n2 : 00 - 3 : 30 roundtable discussion of current model an possible future areas\nof research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.979+0000", "entityId": 6857, "properties": {"text": "Subject: visiting enron\ndr . kaminski , i would like to thank you very much for taking care of amy and\nme\nduring our trip to houston . what i saw at enron communication was nothing\nshort\nof revolutionary . more than that , i was impressed with the drive of the\npeople ,\ntheir kindness , and their proficiency . i look forward to meeting you again in\nstanford during the last weekend of february . i will send you an email next\nweek , so that we can arrange a meeting between you and prof . bambos .\nall the best wishes ,\ngiuseppe\n- -\n: : giuseppe a paleologo : : http : / / www . stanford . edu / ~ gappy\n\" what a waste it is to lose one ' s mind . or not to have a mind is being\nvery wasteful . how true that is . \"\n- vice president dan quayle winning friends while\nspeaking to the united negro college fund , 5 / 9 / 89 -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.986+0000", "entityId": 6858, "properties": {"text": "Subject: ljm pricing\nvince :\nhere are the files for pricing the deal without and with credit risk :\n1 ) without credit risk :\n2 ) with credit risk : ( two factor model )\ntalk to you tomorrow 1 : 00 pm .\nthanks .\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.992+0000", "entityId": 6859, "properties": {"text": "Subject: re : referral\ncan you advise as to whether or not li xiao referred alex to you last\nsummer . i need to know this in order to process\nan employee referral ( under old plan ) for her .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by linda vargo / hou / ect on 02 / 14 / 2000 02 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nli xiao @ enron\n02 / 14 / 2000 11 : 19 am\nto : linda vargo / hou / ect @ ect\ncc :\nsubject : re : referral\nhi , linda ,\ni wonder if you heard from vince kaminski regarding my referral for alex\nhuang .\nthanks ,\nli x 39635\n- - - - - - - - - - - - - - - - - - - - - - forwarded by li xiao / corp / enron on 02 / 14 / 2000 11 : 12 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nlinda vargo @ ect\n01 / 17 / 2000 04 : 29 pm\nto : li xiao / enron _ development @ enron _ development\ncc :\nsubject : re : referral\ni am waiting for feedback from vince kaminsky . as soon as i know something ,\ni will advise .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:36.997+0000", "entityId": 6860, "properties": {"text": "Subject: day rates forward market\nenclosed for your review is a draft copy of the four examples that i am\nconsidering showing to aa as we request that they consider the chances of our\ntrading partners / customers receiving hedge treatment from trades such as\nthese . please review this writing , make suggestions and comments and either\nemail those changes back to me or fax them to me at 713 - 646 - 8416 . if you\nwould rather send your recommendations via courier , send them to eb 3585 b .\nmartin , please suggest wording for insurance products that meet the same\nneeds of the customer as the derivative examples . outline any significant\nissues and send me those recommendations by thursday at noon if possible .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.001+0000", "entityId": 6861, "properties": {"text": "Subject: ljm model\nryan :\nthis is the updated spreadsheet for pricing the ljm options disregarding any\ncredit issues . it produces exactly the same results as before . the only\ndifference tis the place it gets the model ' s c code . i am placing all the\ncode related to this deal on a specific directory on the \" o \" drive now .\nplease use this version on future pricing . i will delete the old code .\nthanks\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.007+0000", "entityId": 6862, "properties": {"text": "Subject: re : storage model : simple issues\nbrad ,\nhere are my thoughts on your concerns .\n* you needs curve inputs . this is an it job . i can help you for the curves\nbefore the system is properly set up .\n* intrinsic value vs time value :\nthe intrinsic value depends on how you allocate the volumes . if you have a\nrough idea about the allocation as\nyou did in the spreadsheet , we can calucate the intrinsic value within the\nmodel . the difference between the\ntotal and the intrinsic will be the ( option ) time value . however , by\npre - allocating volumes , you killed some options .\nin the storage model , volumes are allocated dynamically , therefore it is\nhard to distinguish the intrinsic vs . time value .\n* factor of loading : factor of loadings are used to give historical\ncorrelation matrix . the three factors correspond to\nparalle shift , slopping and curveture . the covariance matrix in the model\nis expressed in the form\ncovar = row ( vol _ { i } ) * ( correl ( i , j ) ) * colum ( vol _ { j } ) where vols are\nthe implied volatilities from the vol curve .\n( correl ( i , j ) ) = l * l ' + residue ( small )\nwhere l is the factor of loading matrix . so in a simple words , the factor of\nloadings ( say , 60 x 3 ) are a simplier way for us to\nremember the historical correlation matrix ( say , 60 x 60 ) .\nlet me know if i can offer further help .\nzimin\nbrad horn 02 / 15 / 2000 07 : 15 am\nto : zimin lu / hou / ect @ ect\ncc : sandra henderson / hou / ect @ ect\nsubject : storage model : simple issues\nzimin :\nthanks for your time with the revised storage valuation . your right to\npoint out the similarity to market bids . here are some basic questions tied\nto implementation and calibration :\nmodel infrastructure / it support : i obviously need to re - build my link to the\nforward curves as the model is not working in my new location . short - term\n( aprox 1 month ) , i ' d like to establish a link to the ena database egsprod 32\nin order to fetch the long - dated price and volatility curves . my link to ena\nforward curves would then be quickly severed in favor of the curves generated\nby the new bridgeline entity ( database name and data structure yet to be\ndefined ) . however , its not clear to me what is required in this two stage\nprocess to support your model . any definition of model input or minimum\nsupport requirements you provide is appreciated . i ' ll then work with sandra\nhenderson , an enron employee providing our it support , to ensure the model\ncontinues to work regardless any downstream system changes that may take\nplace as we build and establish our separate trading systems or databases .\nmeanwhile , is there anything you think you can do to ensure im up and running\nquickly ?\nsandra : linking excel spreadsheets to bridgeline forward curves will be key\nto all our pricing projects , not just the storage model supplied by research .\nintrinsic vs extrinsic value : it would be helpful to decompose the model ' s\ncalculated storage price and to distinguish intrinsic vs extrinsic ( time or\noption ) value . i could easily link a new spreadsheet tab to your model\ninputs and to calculate the intrinsic value , and then through a simple\ndifference i could determine the extrinsic value . ive included a simple\nspreadsheet calculation for the intrinsic value for review . i wanted to\nshare this with you to ask the following :\ndoes the nature of the model define intrinsic and extrinsic value differently\nthan the simple difference proposed ?\ndo you think it would make sense to do the simple value decomposition in the\nbackcode c - code via . dll in order to ensure run - time is faster ?\nmy goal here is straightforward : a ) to better understand the model and its\nsensitivities . ; and b ) to determine if and when the option approach is\nassociating significant value above and beyond the simple present value of\nthe time spreads .\nfactor loadings : what are some of the thoughts or insights you can offer with\nregards to factor loadings and how i should interpret the graph of the 3\nfactors calculated ? factor loadings have always been a mystery to me . for\nexample , what problems should i be looking for as a warning against\nmispricing ? what , if anything , is implied about 1 day price change or\nexpected curve re - shapings ( after all , curve - reshapings are key to storage\nvaluation ! ! ! ) ?\ncalibration : we are preparing a simple summary of descriptive statistics\nwhich should allow me to refine some of the model inputs . i ' ll share the\ndata when we are and model results once im up and running .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.012+0000", "entityId": 6863, "properties": {"text": "Subject: zero curve generator for uk gilts\nanjam ,\nhere is the model for fitting the term structure of uk gilts .\nthe basic idea is as follows :\ndirty price _ { ith gilt } = sum _ { j } c _ { i } / 2 * discount factor ( t _ { j , i } ) +\n100 * discount factor ( t _ { ni , i }\nusing a five parameters analytical form for the discount factors , and\nminimizing the sum of\nabsolute errors , i can derive a smooth zero curve . the model needs an\ninitial guess\nfor the parameters , this may require some experience . the log file can help\nyou to see\nhow well the optimization works .\nlet me know if you have any questions .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.016+0000", "entityId": 6864, "properties": {"text": "Subject: presentation on equilibrium modeling for gas market\nhi kim :\nyou and your associates are invited to attend this meeting .\nif you have any questions , please call me .\nthanks !\nshirley\n* * * * * * * * * * * * *\nthe following presentation will be this friday , the 18 th of february from\n1 : 00 pm to 3 : 00 pm in eb 19 c 2 ( our large conference room ) .\nplease plan to attend this presentation by icf consulting .\nagenda for presentation by icf consulting\n1 . qualifications for icf consulting ( 6 slides )\na . energy consulting background ( 2 slides )\nb . experience with computational market equilibrium modeling methodolgies ( 2\nslides )\nc . experience of key icf individuals ( 2 slides )\n2 . description of enron \u0001 , s modeling interests ( to be discussed with enron )\n3 . icf \u0001 , s intertemporal , interregional equilibrium model of the north american\nnatural gas analysis\nsystem ( nangas ) ( 14 slides )\na . overview of nangas ( 2 slides )\nb . upstream components ( 3 slides )\nc . downstream components ( 4 slides )\nd . computation of market equilibrium prices , quantities , and flows ( 5 slides )\n4 . potential modeling consulting ( 9 slides )\na . assistance in developing market equilibrium models for the energy sector\n( 1 slide )\nb . investigate alternative market equilibrium models for energy applications\ni . models of imperfect competition ( e . g . , nash - cournot , etc . ) ( 3 slides )\nii . models of auctions in market forecasting ( 1 slide )\nii . models that incorporate stochastic inputs ( e . g . , stochastic\nprogramming ) to take into account risk ( 2 slides )\nc . actions items ( to be completed in consultation with enron ) ( 2 slides )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.021+0000", "entityId": 6865, "properties": {"text": "Subject: re : power 2000\nzimin ,\nyou are the lst . feel free to register as my guest .\nvince\nzimin lu\n02 / 14 / 2000 02 : 59 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : power 2000\nvince ,\ncould you take me as your guest for the power 2000 conference if\nno one has asked already ?\nthere are a few interesting topics i would like to hear .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.026+0000", "entityId": 6866, "properties": {"text": "Subject: energy book\nhi grant ,\nhope all is well with you . i trust you got my message via the voicemail\nthat ileft with vince late friday afternoon about my inability to travel -\ni ' m trying to rearrange my trip for a couple of week ' s time when my ear has\ncleared up , and i look forward to meeting with you one day .\ni wrote to vince last week asking for a favour , but i ' m not sure ifhe is\nthere in houston . i know that you guys are probably very busy but i was\nwondering if you can write a few sentences for me . i ' m sending out some\nsample chapters to the people who responded positively ( all of them ! ) to my\nrequest for some feedback on the book . chapter 1 has an ' overview ' of the\nbook with just a couple of sentences on each chapter . could you please\nwrite a sentence or two for your chapter ?\ni ' m including what i have already written ( although i think it has changed\nslightly from this version ) so that you can see the style .\nmany thanks and best regards .\nchris .\n2 overview of this book\nthis book aims to provide an in - depth understanding of the pricing and risk\nmanagement of energy derivatives . in the remainder of this chapter we give\nan overview of the fundamental principals needed to model and price energy\nassets , and which underlie the rest of the book . as well as introducing\nthe techniques that underlie the black - scholes modelling framework we\ndiscuss the numerical techniques of trinomial trees and monte carlo\nsimulation for derivative pricing which are used extensively later in the\nbook .\nin chapter 2 we analyse spot energy prices . apart from describing\nempirical prices we propose a number of processes that can be used to model\nthe prices . we look at the well - know process of gbm as well as mean\nreversion , stochastic volatility and jump processes , discussing each , and\nshowing how they can be simulated and their parameters estimated .\nchapter 3 , written by vince kaminski and grant masson of enron capital and\ntrade .\nchapter 4 examines forward curves in the energy markets . although such\ncurves are well understood and straight forward in the world debt markets\nthe difficulty of storage in many energy markets leads to less well defined\ncurves . what we do in this chapter\nchapter 5 presents an overview of the common and not - so - common derivative\nstructures in the energy markets and discusses their uses . examples of\nproducts analysed in this chapter include a variety of swaps , caps , floors\nand collars , as well as energy swaptions , compound options , asian ( or\naverage rate ) options , barriers , lookbacks , and ladder options .\nchapter 6 investigates single and multi - factor models of the energy spot\nprice and the pricing of some standard energy derivatives . closed form\nsolutions for forward prices , forward volatilities , and european option\nprices are derived and presented for all the models in this chapter\nincluding a three factor stochastic convenience yield and interest rate\nmodel with jumps .\nchapter 7 shows how the prices of path dependent and american style options\ncan be evaluated for the models in chapter 6 . simulation schemes are\ndeveloped for the evaluation of european style options and applied to a\nvariety of path dependent options . in order to price options which\nincorporate early exercise opportunities , a trinomial tree scheme is\ndeveloped . this tree is built to be consistent with the observed forward\ncurve and can be used to price exotic as well as standard american style\noptions .\nchapter 8 develops a new methodology for valuing energy options based on\nmodelling the market observed forward curve . the approach results in a\nmulti - factor model that is able to capture realistically the evolution of a\nwide range of energy forward curves and where the user defined volatility\nstructures can be of an extremely general form . closed - form solutions are\ndeveloped for pricing standard european options and efficient monte carlo\nschemes for exotic options . the chapter finishes with a discussion of the\nvaluation of american style options .\nchapter 9 focuses on the risk management of energy derivative positions .\nin this chapter we discuss the management of price risk for institutions\nthat sell options or other derivatives to a client and who is then faced\nwith the problem of managing the risk through time . we begin with delta\nhedging a portfolio containing derivatives and look at extensions to gamma\nhedging - using the models from chapters 5 and 7 . the general model of\nchapter 7 ideally suited to multi - factor hedging and this is also\ndiscussed .\nchapter 10 looks at the key risk - management concept of value at risk\napplied to portfolios containing energy derivative portfolios . after\ndiscussing the concept of the measure , we look at how the key inputs\n( volatilities , covariances , correlations , etc ) can be estimated . we then\ncompare the fours major methodologies for computing var ; delta ,\ndelta - gamma , historical simulation and monte - carlo simulation . finally , we\nlook at testing the var estimates for various underlying energy market\nvariables .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.031+0000", "entityId": 6867, "properties": {"text": "Subject: re : enron opportunities\nthanks vince . we will follow up with this lsu graduate .\nhope you are doing well .\nregards ,\nlynn dunphy\nvince j kaminski\n02 / 15 / 2000 08 : 53 am\nto : lynn dunphy / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : enron opportunities\nlynn ,\ni am forwarding you the resume of a very bright and motivated young man\nwho attended a lecture i gave recently at lsu .\ni think we should consider him for an analyst position .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 15 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" richard c . iles \" on 09 / 14 / 2000 11 : 14 : 56 am\nplease respond to \" richard c . iles \"\nto :\ncc :\nsubject : enron opportunities\ndr . kaminski :\n?\nhere is my resume and cover letter .\n?\nthanks ,\n?\nrichard iles\n- enron cover and resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.036+0000", "entityId": 6868, "properties": {"text": "Subject: enron opportunities\nlynn ,\ni am forwarding you the resume of a very bright and motivated young man\nwho attended a lecture i gave recently at lsu .\ni think we should consider him for an analyst position .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 15 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" richard c . iles \" on 09 / 14 / 2000 11 : 14 : 56 am\nplease respond to \" richard c . iles \"\nto :\ncc :\nsubject : enron opportunities\ndr . kaminski :\n?\nhere is my resume and cover letter .\n?\nthanks ,\n?\nrichard iles\n- enron cover and resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.040+0000", "entityId": 6869, "properties": {"text": "Subject: thank you , i am on board\nvince :\ni have just finished talking with rick . he will have the hr person to\nworkout the details and get me on board this week . thank you so much for\nyour help . i would like to let you know that your help meant a great deal\nfor me , i am not taking it lightly . i will do my best to get the work down\nand live up to yours and rick ' s expectations .\nthank you again .\nding .\n6 - 7072", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.045+0000", "entityId": 6870, "properties": {"text": "Subject: re : referral\nvince :\naccording to alex , li xiao gave your email address to alex . did li xiao\ntalk to you first about alex ? i don ' t know for certain . alex contacted you\nin march , interviewed once , but nothing came of it . after gary left , li xiao\nsuggested to alex that he try again , and the rest is history .\ngrant .\nvince j kaminski\n02 / 15 / 2000 08 : 58 am\nto : grant masson / hou / ect @ ect\ncc :\nsubject : re : referral\ngrant ,\ndid li xiao refer alex to us ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 15 / 2000\n08 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlinda vargo\n02 / 14 / 2000 02 : 39 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : referral\ncan you advise as to whether or not li xiao referred alex to you last\nsummer . i need to know this in order to process\nan employee referral ( under old plan ) for her .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by linda vargo / hou / ect on 02 / 14 / 2000 02 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nli xiao @ enron\n02 / 14 / 2000 11 : 19 am\nto : linda vargo / hou / ect @ ect\ncc :\nsubject : re : referral\nhi , linda ,\ni wonder if you heard from vince kaminski regarding my referral for alex\nhuang .\nthanks ,\nli x 39635\n- - - - - - - - - - - - - - - - - - - - - - forwarded by li xiao / corp / enron on 02 / 14 / 2000 11 : 12 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nlinda vargo @ ect\n01 / 17 / 2000 04 : 29 pm\nto : li xiao / enron _ development @ enron _ development\ncc :\nsubject : re : referral\ni am waiting for feedback from vince kaminsky . as soon as i know something ,\ni will advise .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.049+0000", "entityId": 6871, "properties": {"text": "Subject: martin lin ' s rotation into jim ' s group\nhi paul and anad , please make the appropriate arrangements ( via enron corp .\naa pool ) to \" rotate \" martin lin into my group . as you know , i am heading up\nthe ebs research unit that is reporting to vince kaminski and stinson gibner\n( md & vp of enron research group , respectively ) . martin will work for jim\nirvine and report to him on a day - to - day basis . martin will spend most of\nhis time at jim ' s office location . this arrangement is very similar to samar\nkhleif ' s role in portland with john mcclain ' s broadband delivery group .\nmartin has already discussed his rotation with jim irvine and scheduled to\nstart on march 1 , 00 . ebs research will be working very closely with jim\nirvine and john griebling in the area of network planning and model\ndevelopment ( traffic engineering in telecom - speak ) . martin has a ph . d . in\nelectrical engineering and has been working within research supporting\nelectricity transmission analysis and modeling .\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.054+0000", "entityId": 6872, "properties": {"text": "Subject: revised speaker contact details for power 2000\n? attached is the revised speaker contact details for the power 2000\nconference in houston this upcoming may .\nplease contact me with any questions you may have . ?\n?\nregards ,\namy lamonsoff ?\nconference coordinator ?\npower 2000 ?\n?\n- power 2000 speaker contact details . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.058+0000", "entityId": 6873, "properties": {"text": "Subject: energy book vl . 0\nvince :\ni have rewritten the paragragh for chapter 3 . please read and return your\ncomments .\nthanks ,\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 02 / 16 / 2000 02 : 48\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchris strickland on 02 / 15 / 2000 05 : 28 : 42 am\nto : grant masson @ ect , vkamins @ ect\ncc :\nsubject : energy book\nhi grant ,\nhope all is well with you . i trust you got my message via the voicemail\nthat ileft with vince late friday afternoon about my inability to travel -\ni ' m trying to rearrange my trip for a couple of week ' s time when my ear has\ncleared up , and i look forward to meeting with you one day .\ni wrote to vince last week asking for a favour , but i ' m not sure ifhe is\nthere in houston . i know that you guys are probably very busy but i was\nwondering if you can write a few sentences for me . i ' m sending out some\nsample chapters to the people who responded positively ( all of them ! ) to my\nrequest for some feedback on the book . chapter 1 has an ' overview ' of the\nbook with just a couple of sentences on each chapter . could you please\nwrite a sentence or two for your chapter ?\ni ' m including what i have already written ( although i think it has changed\nslightly from this version ) so that you can see the style .\nmany thanks and best regards .\nchris .\n2 overview of this book\nthis book aims to provide an in - depth understanding of the pricing and risk\nmanagement of energy derivatives . in the remainder of this chapter we give\nan overview of the fundamental principals needed to model and price energy\nassets , and which underlie the rest of the book . as well as introducing\nthe techniques that underlie the black - scholes modelling framework we\ndiscuss the numerical techniques of trinomial trees and monte carlo\nsimulation for derivative pricing which are used extensively later in the\nbook .\nin chapter 2 we analyse spot energy prices . apart from describing\nempirical prices we propose a number of processes that can be used to model\nthe prices . we look at the well - know process of gbm as well as mean\nreversion , stochastic volatility and jump processes , discussing each , and\nshowing how they can be simulated and their parameters estimated .\nchapter 3 , written by vince kaminski , grant masson and ronnie chahal of\nenron corporation , discusses volatility estimation in energy commodity\nmarkets . this chapter builds on the previous one . it examines in detail\nthe methods , merits and pitfalls of the volatility estimation process\nassuming different pricing models introduced in chapter 2 . examples\nfrom crude , gas , and electricity markets are used to illustrate the\ntechnical and interpretative aspects of calculating volatility .\nchapter 4 examines forward curves in the energy markets . although such\ncurves are well understood and straight forward in the world debt markets\nthe difficulty of storage in many energy markets leads to less well defined\ncurves . what we do in this chapter\nchapter 5 presents an overview of the common and not - so - common derivative\nstructures in the energy markets and discusses their uses . examples of\nproducts analysed in this chapter include a variety of swaps , caps , floors\nand collars , as well as energy swaptions , compound options , asian ( or\naverage rate ) options , barriers , lookbacks , and ladder options .\nchapter 6 investigates single and multi - factor models of the energy spot\nprice and the pricing of some standard energy derivatives . closed form\nsolutions for forward prices , forward volatilities , and european option\nprices are derived and presented for all the models in this chapter\nincluding a three factor stochastic convenience yield and interest rate\nmodel with jumps .\nchapter 7 shows how the prices of path dependent and american style options\ncan be evaluated for the models in chapter 6 . simulation schemes are\ndeveloped for the evaluation of european style options and applied to a\nvariety of path dependent options . in order to price options which\nincorporate early exercise opportunities , a trinomial tree scheme is\ndeveloped . this tree is built to be consistent with the observed forward\ncurve and can be used to price exotic as well as standard american style\noptions .\nchapter 8 develops a new methodology for valuing energy options based on\nmodelling the market observed forward curve . the approach results in a\nmulti - factor model that is able to capture realistically the evolution of a\nwide range of energy forward curves and where the user defined volatility\nstructures can be of an extremely general form . closed - form solutions are\ndeveloped for pricing standard european options and efficient monte carlo\nschemes for exotic options . the chapter finishes with a discussion of the\nvaluation of american style options .\nchapter 9 focuses on the risk management of energy derivative positions .\nin this chapter we discuss the management of price risk for institutions\nthat sell options or other derivatives to a client and who is then faced\nwith the problem of managing the risk through time . we begin with delta\nhedging a portfolio containing derivatives and look at extensions to gamma\nhedging - using the models from chapters 5 and 7 . the general model of\nchapter 7 ideally suited to multi - factor hedging and this is also\ndiscussed .\nchapter 10 looks at the key risk - management concept of value at risk\napplied to portfolios containing energy derivative portfolios . after\ndiscussing the concept of the measure , we look at how the key inputs\n( volatilities , covariances , correlations , etc ) can be estimated . we then\ncompare the fours major methodologies for computing var ; delta ,\ndelta - gamma , historical simulation and monte - carlo simulation . finally , we\nlook at testing the var estimates for various underlying energy market\nvariables .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.063+0000", "entityId": 6874, "properties": {"text": "Subject: cvs of candidates for rac support role\nthese three guys will all be available for interview monday afternoon .\nregards\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.067+0000", "entityId": 6875, "properties": {"text": "Subject: ljm update\nvince / stinson :\ni just came back from a meeting with accounting ( ryan siueck ) and credit ( rod\nnelson - works with bill bradford ) in which we presented the two - factor model\nfor calculating credit loss on our ljm ' s position . rod seemed positive with\nthe model conceptual approach . he will position bill bradford on that .\naccounting will have a meeting with aa to discuss the treatment on credit\nreserves on this deal tomorrow 9 : 00 am . they feel my participation is not\nnecessary .\nat year - end the difference on both valuations - without and with credit risk\n- indicates a credit loss of about 100 mm .\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.073+0000", "entityId": 6876, "properties": {"text": "Subject: re : tanya vacation\nvince ,\ni just found out that none of my vacation days from the last year is in the\ncomputer system\n( it says that i have 0 c / over days ) .\nit was november 3 , 1999 when i asked your approval to carry over 12 vacation\ndays to the next year .\ni was thinking that if you ( or hr ) do not approve i could at least take these\ndays in 1999 .\ni know that your tried to help me and sent to brad mcsherry the\njustification for me to carry over 10 days .\ni bothered you a few times in november and december 1999 and since your\nresponse was optimistic\ni did not take any of those 10 days in 1999 . but i never heard from hr .\nnow i am not sure - may be these days are not in the system by mistake .\ni would like to take 5 of them in march ( from 3 / 13 / 00 to 3 / 17 / 00 ) .\nwhat is your advice ? should i contact brad mcsherry ? even negative response\nfrom hr in november or\ndecember last year would be better than loosing vacation days .\ni really appreciate your help ,\ntanya .\ntanya tamarchenko\n12 / 02 / 99 12 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : tanya vacation\nhi , vince ,\nsorry to bother again with my question .\ni first e - mailed my question a month ago ( on nov . 3 ) .\nsince we still have not heard from hr , is it fair to assume that i can carry\nover my 10 vacation days to the next year ?\nif not - i have to take 5 days before dec . 17 , because then i go on vacations\nanyhow . i would really prefer not to take off\nmost of december , there are quite a lot of things going on .\nthank you for your help in resolving this question .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.081+0000", "entityId": 6877, "properties": {"text": "Subject: re : monday night rodeo suite - the judds\nvince ,\nyou are welcome to the twenty tickets if you like . please advise me asap .\nmany thanks ,\nliz taylor\nx 31935\nvince j kaminski\n02 / 15 / 2000 05 : 30 pm\nto : liz m taylor / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : monday night rodeo suite - the judds\nliz ,\ni would be glad to use some tickets for the group members .\nvince\nliz m taylor\n02 / 15 / 2000 05 : 18 pm\nto : jeffrey a shankman / hou / ect @ ect , james b fallon / hou / ect @ ect , jere c\noverdyke / hou / ect @ ect , vince j kaminski / hou / ect @ ect , george\nmcclellan / hou / ect @ ect , lynda clemmons / hou / ect @ ect , gary\nhickerson / hou / ect @ ect , louise kitchen / lon / ect @ ect\ncc :\nsubject : monday night rodeo suite - the judds\ni have twenty suite tickets available for monday night , february 21 rodeo\nactivities featuring \" the judds . \" please let me know if you would like to\nutilize any of these tickets for your group and / or customers .\nmany thanks ,\nliz taylor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.087+0000", "entityId": 6878, "properties": {"text": "Subject: vmi agreements\nhi richard , here is a marked up version from our lawyer . please have your\npeople look at it and if it seems fine make the changes and send a signed\ncopy back to me .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 17 / 00 06 : 21\npm - - - - -\nmark holsworth @ enron\n02 / 17 / 00 04 : 10 pm\nto : ravi thuraisingham / enron communications @ enron communications , gene\ndiers / corp / enron @ enron\ncc :\nsubject : vmi agreements\nplease find attached my redlining of the vmi agreelment . please review it\nand send it to the vendor for their review .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.093+0000", "entityId": 6879, "properties": {"text": "Subject: fasbl 33 presentation\nhello all :\npaige grumulaitis will give an fasbl 33 training session on tuesday , march\n7 , 2000 from 1 : 30 - 5 : 30 pm in eb 46 cl .\nplease mark your calendars .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.098+0000", "entityId": 6880, "properties": {"text": "Subject: re : nj alliance\nmichael lassle is in charge of our lighting best - practices . he is the person\nmr . eaton should contact . michael is in houston and his number is\n( 713 ) 853 - 5023 .\nosman\nvince j kaminski @ ect\n02 / 17 / 2000 07 : 55 am\nto : \" william eaton \"\ncc : osman sezgen / hou / ees @ ees\nsubject : re : nj alliance\nbill ,\ni forwarded your message to my associate , osman sezgen , who supports our\nenergy services group . he will e - mail you the name of a contact at\nenron .\nvince kaminski\n\" william eaton \" on 02 / 16 / 2000 08 : 25 : 02 pm\nto : shelm @ globalcloud . net\ncc : steing @ conedsolutions . com , robert . blake @ conectiv . com ,\nmarianne . abdul @ conectiv . com , bekmank @ conedenergy . com , david l\nfairley / hou / ect @ ect , robinsonm @ conedenergy . com , nwilson @ delmarva . com ,\nhudsonw @ detroitedison . com , cndavis @ duke - energy . com ,\nhbburnham @ duke - energy . com , jhickman @ duke - energy . com ,\npaul . skurdahl @ engageenergy . com , james mackey / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , mrollhei @ enron . com , hnmorris @ metromediaenergy . com ,\nnpalmer @ execpc . com , chibbard @ noresco . com , mhuang @ usgen . com ,\nbshay @ powerdirect . com , cmidura @ pseg . com , ghallam @ energy . twc . com\nsubject : nj alliance\naesp members and utility affiliates ,\nwe are looking for a good fit with one of the utilities intent on doing\nbusiness in the nj , ct , pa , ny territory . our qualifications and company\nprofile may be previewed at our web site , www . lightsourceonline . com . email\ncontact information in response to this message .\nthanks ,\nbill eaton\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.102+0000", "entityId": 6881, "properties": {"text": "Subject: re : speakers for a ceo meeting with nebraska governor johanns\nmargaret ,\ni have an economist in my group and asked her if she feels qualified to make a\npresentation on this topic . i shall keep you posted . i think it would help\nenron to oblige .\nvince\nmargaret carson @ enron\n02 / 16 / 2000 02 : 24 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : speakers for a ceo meeting with nebraska governor johanns\nvince , i could work up a talk on everything they are looking for\nexcept the area of energy impacts on agri - customers . . . does ena have\nsome specialist that look at this slice of the energy marke that could\nhelp me respondt ? thanks margaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret carson / corp / enron on 02 / 16 / 2000\n02 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbeth jensen\n02 / 16 / 2000 01 : 19 pm\nto : margaret carson / corp / enron @ enron\ncc : rob wilson / et & s / enron @ enron , larry deroin / npng / enron @ enron , bill\ncordes / et & s / enron @ enron , mike mcgowan / et & s / enron @ enron , beth\njensen / npng / enron @ enron\nsubject : speakers for a ceo meeting with governor johanns\nhello margaret . we are looking for a speaker for a meeting that is being\narranged with nebraska governor johanns during the first week in april .\nthe potential topic is a national perspective on pricing pressures / trends on\nnatural gas , electricity and oil and their impact on agricultural production\ncosts , as well as types of risk managment tools that are being used to offset\nthe price fluctuations .\ndo you know of anyone , either within the corporation or outside , who would be\navailable to travel to omaha to make this presentation ?\ni would appreciate any assistance that you could provide , margaret .\nthanks ,\nbeth jensen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.107+0000", "entityId": 6882, "properties": {"text": "Subject: elements of power ( 4 )\ndear colleagues :\nwe are writing to remind you of an opportunity for in - depth education on\nelectric power restructuring in texas through a training workshop offered\nby the university of houston .\nwith the passage of senate bill 7 , texas is moving forward with electric\npower restructuring . what will the new marketplace look like ? how will it\nfunction ? how will existing business opportunities be affected , and what\nnew ones are likely to emerge ? join us for a comprehensive two - day\ntraining workshop march 1 - 2 , 2000 that addresses these issues and\naccommodates both new and experienced professionals . hosted by the energy\ninstitute at the university of houston ' s college of business\nadministration , the training workshop features an introductory day that\nwill refresh participants on the basics of the electric power market and\nkey aspects of the restructuring process in texas and the u . s . the second\nday targets advanced issues in the emerging marketplace and case studies\nfor practicioners . the training workshop will be held at the center for\nexecutive development at the uh - cba . instructors are ms . dottie anderson\nand mr . jim stanton , each with extensive experience in the power industry\nand ercot implementation , and dr . michelle michot foss , director of the\nenergy institute ( see biographies , following workshop details ) . to\nregister , return the form below with your information . payment , or an\nindication of payment , must be received by monday , february 28 . for more\ninformation , contact energyinstitute @ uh . edu or telephone 713 - 743 - 4634 .\nthis workshop is appropriate for new and / or advanced professionals in\noperations , trading , marketing , planning , public and regulatory affairs and\nin related fields such as law and accounting .\nnew era in electric power value creation\nenergy institute\nuniversity of houston - - college of business administration\ncenter for executive development facilities\nmelcher hall - - main campus\nregistration ( return by february 28 , 2000 with payment or indication of\npayment )\nworkshop pricing :\nfull course , march 1 and 2 - - $ 950 per person ( government agencies and\nnonprofits , $ 475 per person ) ; for groups of 3 or more from a single\norganization , $ 900 per person ( $ 425 for government agencies and nonprofits )\nadvanced audiences , march 2 only - - $ 700 ( government agencies and\nnonprofits , $ 350 ) ; for groups of 3 or more from a single organization , $ 650\nper person ( $ 375 for government agencies and nonprofits )\nfee includes all workshop materials , meals , refreshments and parking at\nuh - cba . sorry , we do not accept credit card payment . lodging for\nout - of - town participants is available at the university of houston hilton\nhotel at your own cost . you may contact the hilton at 713 - 741 - 2447 for\nreservation information .\nname ( s ) and title ( s ) :\norganization :\naddress :\ntelephone / fax / e - mail for contact :\ntotal payment and form of payment :\nceu credit desired ( yes / no ) :\ntraining workshop details\nmarch 1 , 2000 - - principles\n8 : 30 - 9 : 30 introduction and workshop overview\n9 : 30 - 10 : 30 regulatory framework : national electricity reliability council\n( nerc ) , federal energy regulatory commission ( ferc ) , and electric\nreliability council of texas ( ercot )\n10 : 30 - 10 : 45 break\n10 : 45 - 12 : 00 operational , marketing and trading basics\n12 : 00 - 1 : 00 lunch\n1 : 00 - 1 : 30 texas senate bill 7 overview\n1 : 30 - 2 : 00 public utility commission ( puc ) - texas basic rule making\n2 : 00 - 3 : 00 ercot independent system operator ( iso ) functions and governance\n3 : 00 - 3 : 15 break\n3 : 15 - 5 : 00 ercot issues by committee\n* restructuring policy development\n* ancillary services\n* single control area\n* settlement / registration\n* congestion management\n* standard interconnection agreement\n5 : 00 - 6 : 30 social\nmarch 2 - - advanced application\n8 : 30 - 12 : 00 regional transmission organizations ( rtos ) and the ferc notice\nof proposed rulemaking ( nopr )\nfuture of isos\nstatus of the nopr , public comments made\nisos under development : ercot , midwest , desert star\n12 : 00 - 1 : 00 lunch\n1 : 00 - case studies\n* changing electricity providers : town hall issues\nbringing together the elements of regulatory activity , market power and\nrestructuring to the retail level , this exercise allows the participants to\nmake active decisions as our experimental \" town \" weighs the option of\nseparating from its traditional electricity provider and treading the\nwaters of competition . our group will assume roles centered around\n\" regulators , \" \" power marketers , \" the present \" investor owned utility \" and\nthe \" town \" itself . a town meeting will be convened in which each entity is\nallowed to present their issues in an effort to persuade municipal\ndecision - makers that theirs is the best option . embedded in the exercise is\nthe regulatory and operational framework that is built into the modules\nleading up to this participatory segment . frequent references to the basic\nmaterials provided to the workshop participants will be encouraged in the\nprocess of moderating discussions that the workshop facilitators will\nimplement .\n* congestion management\ncongestion management is one of the most critical components of ercot\nimplementation . a number of approaches exist for pricing electricity\nduring periods of high demand . each methodology bears important\nconsequences for both providors and customers . workshop participants will\nparticipate in construction of a virtual transmission grid and experiment\nwith different methods of managing congestion .\n4 : 00 re - cap , q & a\ninstructors\nms . dottie anderson\nms . anderson has over 19 years experience in the energy industry with\nextensive experience in federal and state regulatory policy analysis and\nadvocacy on behalf of natural gas and electric companies . she is currently\npresident and managing principal of consulting firm specializing in policy\ndevelopment and strategic analysis and planning for the electric and\nnatural gas industries . ms . anderson served as member of steering\ncommittee responsible for coordinating the stakeholder process in the pjm\nrestructuring meetings and also actively participated in developing the\ngovernance structure for pjm . she was a member of stakeholder group that\ndesigned wholesale market rules for texas in 1996 and currently serves as\none of the power marketer segment representatives on the ercot technical\nadvisory committee and chair of the congestion management working group\ndeveloping a congestion management mechanism for use when texas begins its\nretail access pilot in june 2001 . she has participated in ercot technical\nadvisory committees ad hoc committees on transmission adequacy and\npossible impacts of future electric market changes on the independent\nsystem operator and now involved in the broad - based stakeholder processes\nto restructure markets in texas in response to legislation passed in may\n1999 . she also is chair of nerc market interface committee a standing\ncommittee addressing commercial business practices and standards in the\nelectric industry and their interface with reliability . in collaboration\nwith ercot iso staff , ms . anderson developed training seminar for\nconducting business in ercot under the puct ' s open access transmission\nrules and participated as a course instructor on the transition from nerc\nto naero . she also participated as a course instructor in the annual ercot\niso operator training program . she participated as a member of government\ninterface issues task force , a group participating in nerc restructuring\nprocess by addressing issues related to federal legislation and\nparticipation by canada in a north american self - regulation reliability\norganization . ms anderson is a certificated search conference manager by\nnew mexico state university for completion of training in designing and\nmanaging search conferences and participative design workshops conducted by\ndr . merrelyn emery , australian national university .\nmr . jim stanton\nmr . stanton has 15 years in the electric power industry , divided between\nstate agencies , investor owned utilities and power marketing . his\nbackground in generation , transmission and systems operations has proven\nvaluable in the constantly changing world of power . combining a bs in\nmanagement with a working knowledge of the commercial electric power\nbusiness gives mr . stanton a unique view of the operational challenges of\nthe industry , and most especially , the people who make it work on a daily\nbasis . mr . stanton is a certified system operator in the southwest power\npool and with the north american reliability council . he is currently\ninvolved with policy development in both ercot and the midwest independent\nsystem operator .\ndr . michelle michot foss\ndr . michot foss has been an analyst of u . s . and foreign energy and non - fuel\nresource development and environmental issues for nearly 21 years . she has\na particular focus on policy and regulatory frameworks for energy\ncommercialization and energy business enterprise strategy and firm / industry\nstructure . dr . michot foss has been involved extensively in research and\nconsulting on north american natural gas and electric power restructuring\nand convergence and development of continental cross - border trade and\nrelated issues . she is participating in ercot technical advisory committee\nworkshops and committee processes for sb 7 implementation . dr . michot foss\nspeaks and writes frequently on energy issues and energy sector\nrestructuring in north and south america , western europe , japan and other\nworld regions .\nabout the energy institute\nthe institute is engaged in business and public policy issues associated\nwith commercial energy development worldwide . major portfolio areas for\nthe institute are worldwide gas and power market development ( with emphasis\non north america , the northern andes , western europe , the black\nsea / caucasus / caspian region and east asia ) , best practices in energy sector\nreform , special topics in energy technology and markets and energy\ncommodity trading and marketing and the energy business enterprise of the\nfuture . in addition , the institute provides research and training\ninitiatives in the u . s . , canada , mexico and latin america , china , the nis\nregion , and other countries and is developing both a non - degree\nprofessional commercial practices program and an international training\nprogram on oil and gas sector reform and commercial development . faculty\nmembers are drawn from business administration , law , economics , geosciences\nand engineering . the institute is underwritten by leading oil , gas and\nelectric power companies and consultancies . with the center for global\nstudies at the houston advanced research center , the institute published\nthe guide to electric power in texas as a public service for electric power\nrestructuring . the guide is recognized as one of the most widely used\nresources by business and government participants .\n* * * * * * * * * *\n\" this e - mail contains information which is privileged , confidential and\nprotected\nfrom disclosure . please do not disclose the contents or take copies without\ncontacting us first . thank you . \"\nmichelle michot foss , ph . d .\ndirector , energy institute\ncollege of business administration\nuniversity of houston\nhouston , tx 77204 - 6283\ntel : 713 - 743 - 4634\nfax : 713 - 743 - 4881\nplease note our new email addresses !\ne - mail : mmfoss @ uh . edu\nweb : http : / / www . uh . edu / energyinstitute /\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\ncba energy institute\nuniversity of houston\n4800 calhoun , mh 320\nhouston , tx 77204 - 6283\n( 713 ) 743 - 4634\nfx : ( 713 ) 743 - 4881\nemail : energyinstitute @ uh . edu\nweb : www . uh . edu / energyinstitute", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.112+0000", "entityId": 6883, "properties": {"text": "Subject: power 2000\nto all whom it may concern :\ni would like to register my associate zimin lu as my guest\nat power 2000 conference in houston in may . thanks .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 17 / 2000\n08 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n02 / 16 / 2000 12 : 58 pm\nto : vince j kaminski / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect\nsubject : power 2000\nvince :\ni tried to register zimin and they said that you would have to do it - since\nyou are the speaker and the spot is your free spot .\nyou can email them the information . they will need :\nname : zimin lu\ntitle : director\ncompany : enron corp .\naddress : 1400 smith street ebl 967\nphone : 713 - 853 - 6388\nconference name : power 2000 - houston , tx - may 9 & 10 , 2000\nemail the information to : conf @ risk . co . uk\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 02 / 16 / 2000\n12 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n02 / 15 / 2000 02 : 22 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : power 2000\nshirely ,\ncould you register me for the power 2000 conference in houston as vince ' s\nguest ?\nsince vince is a speaker , i can attend for free .\nzimin\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : power 2000\nzimin ,\nyou are the lst . feel free to register as my guest .\nvince\nzimin lu\n02 / 14 / 2000 02 : 59 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : power 2000\nvince ,\ncould you take me as your guest for the power 2000 conference if\nno one has asked already ?\nthere are a few interesting topics i would like to hear .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.116+0000", "entityId": 6884, "properties": {"text": "Subject: re : credit reserve update\nwe have not done any recent analysis since the end of january or maybe even\nthe end of december . i will have rod nelson and tanya rohauer relook at the\nimpact of the changing yield curve on credit reserve .\nwe have a lot of improvements we need to make on our current methodology when\nwe have the time and resources to dedicate to it .\nbill\nvince j kaminski\n02 / 17 / 2000 10 : 14 am\nto : william s bradford / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : credit reserve update\nbill ,\nmost recent vincent ' s update on what ' s going on with the credit model .\nanother issue . i am increasingly concerned with our general approach to the\ngeneration\nof probabilities of default . recent developments in the credit markets are\nlikely to\nchange completely the dynamics and levels of interest rate spreads . i am\ncurious if\nyou looked at the credit reserve based on the current yield curves ( as of the\nlast few days ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 17 / 2000\n09 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvincent tang\n02 / 15 / 2000 05 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc : grant masson / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect\nsubject : credit reserve update", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.121+0000", "entityId": 6885, "properties": {"text": "Subject: ebs research telecom rercruiting effot\nhi , vince please put your best effort in making sure that we differentiate\nsummer interns and associates that ebs research will be hiring . i am talking\nabout compensation here . ken rice mentioned that ebs is in the process of\ndeveloping a technical equivalent of our aa pool . ebs research people can\npotentially rotate through this pool in the future . i just don ' t want to\nrisk losing people like giuseppe ( & get the word out that we are low - ballers )\nbecause we have to fit them into certain set of categories that was designed\nfor the energy business . i realize that you have estabilished such\ndifferentiation for research as a whole , but i think that would have to be\nmoved up a notch in the case of ebs .\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.126+0000", "entityId": 6886, "properties": {"text": "Subject: following our stanford relationship\nhi vince , i talked to tom gros today and metioned our desire to estabilish a\nstrategic relationship with nick bambos and his research effort . tom is very\nexcited about the idea and was willing to cut the check . i suggested that we\nhave more of a strategic relationship in mine ( enron / stanford ) and he\nagreed to that as well . tom mentioned that greg whalley was interested in\nestabilishing such a relationship . vince , could you follow this up and\nground this ? if you need any help in doing the leg work , i ' ll happy to do\nthat .\ntom is excited about ebs research ' s role to support all of ebs including\nbandwidth trading . he seems very interested in being our sponsor on the ebs\nside . that would be very beneficial to us since he is involved in all senior\nmanagement decision through kevin hannon . vince , i would suggest that you\ntry to setup a meeting with kevin hannon and tom to discuss this further .\ntom is also very interested in the new product development effort that larry\nand i have been kicking around for some time . he wanted us to sit back and\nthink of structured products with better margins that blend & extend that\nthey are selling . he wanted to know now much more resource that we need in\nthat front . for this , i would like to get someone like meera natarajan . she\nis an originator currently working in ees and have talked to zimin and\nstinson . she is sufficiently analytical with commercial mind set to help with\nnew product ideas and to ground them .\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.131+0000", "entityId": 6887, "properties": {"text": "Subject: your trip\nhi vince ,\nthe following has been organised for you :\nsunday\n6 . 45 pm dinner at diverso restaurant 85 piccadilly 0207 491 2222 with ben ,\nsteve , anjam\nmonday\nclear until noon\n12 pm lunch with dale surbey at olivetto or olivo\n2 . 30 pm interviews start\n6 . 30 pm\nor 7 pm approximate time for end of interviews\ntuesday\nclear until 10 am\n10 am to 12 pm energydesk . com meeting with mikael nordstrum\nafternoon clear\nwednesday\n9 am to 10 . 30 am riskcare meeting in nel 002 with michael curran , anjam and dale\n11 . 30 am to 12 pm meeting with john sherriff\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.136+0000", "entityId": 6888, "properties": {"text": "Subject: invitation to sunday dinner with vince @ 6 . 45 pm\ndinner changed to 6 . 45 pm - 6 . 30 pm is too early for them . table for 4 booked\nunder vince ' s name .\nregards ,\nanjam\nx 35383\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 17 / 02 / 2000 17 : 55\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n14 / 02 / 2000 15 : 48\nto : steven leppard / lon / ect @ ect , benjamin parsons / lon / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : invitation to sunday dinner with vince @ 6 . 30 pm\nhi steve & ben ,\nwe are planning an early sunday dinner ( one of the few evening slots that are\nfree in vince ' s schedule ) at :\ndiverso restaurant\n85 piccadilly\nlondon wlv 9 hd\ntel : 020 7491 2222\nit ' s just a few yards to the left of park lane hotel on park lane , close to\nhyde park corner underground and we ' ve been there before . vince would like\nto discuss the latest developments and it seems like the best opportunity to\ndo so . please let me know if you can make it and i can make sure the table\nis booked accordingly .\nregards ,\nanjam\nx 35383\np . s . vince will be staying at the park lane hotel , telephone number 0171 499\n6321", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.141+0000", "entityId": 6889, "properties": {"text": "Subject: iv rene ledis fifth floor se 5018\ninterview schedule\n17 . 00 - 17 . 30 vince kaminski & anjam ahmad\n17 . 30 - 18 . 00 ben parsons\n18 . 00 - 18 . 30 stephen leppard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.146+0000", "entityId": 6890, "properties": {"text": "Subject: iv for rama gatiganti rm fifth floor se 5001\ninterview schedule\n16 . 30 - 17 . 00 vince kaminski & anjam ahmad\n17 . 00 - 17 . 30 ben parsons\n17 . 30 - 18 . 00 stephen leppard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.151+0000", "entityId": 6891, "properties": {"text": "Subject: reschedule - meeting with riskcare to discuss joint ventures\n( michael curran , manuel rensink & richard haddow )\nvince j kaminski / hou / ect wants to reschedule a meeting .\non 02 / 23 / 2000 03 : 00 : 00 am cst\nfor 2 hours\nwith : anjam ahmad / lon / ect ( chairperson )\nvince j kaminski / hou / ect ( invited )\nshirley crenshaw / hou / ect ( invited )\ndale surbey / lon / ect ( invited )\nstinson gibner / hou / ect ( invited )\nmeeting with riskcare to discuss joint ventures ( michael curran , manuel\nrensink & richard haddow )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.155+0000", "entityId": 6892, "properties": {"text": "Subject: meeting with riskcare to discuss joint ventures ( michael curran ,\nmanuel rensink & richard haddow )\nmichael curran ( head of research ) , manuel rensink and richard haddow\n( director of technology services ) in attendance . contact number : 020 7562\n3400", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.160+0000", "entityId": 6893, "properties": {"text": "Subject: aiesec polska - eurolds 2000\njarek ,\nczy enron moze pomoc w organizacji tej imprezy ?\nbylaby to dobra okazja nawiazania wielu pozytecznych kontaktow .\nwicek\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 17 / 2000\n08 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" andrzej wodnicki \" on 02 / 16 / 2000 02 : 50 : 05 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : aiesec polska - eurolds 2000\nszanowny panie kaminski !\nnazywam sie andrzej wodnicki i jestem czlonkiem stowarzysznia studentow\naiesec przy szkole glownej handlowej ( dawnej sgpis ) .\nprosze o poswiecenie paru chwil na przeczytanie tego maila .\n( kontakt do pana otrzymalem od kolegi , ktory organizowal prezentacje firmy\nenron na sgh , a posrednio od pana jarka astramowicza , przedstawiciela enron\nna polske . )\nw imieniu aiesec polska chcialbym zwrocic sie do pana z wielka prosba pomocy\nprzy wydarzeniu , ktore w tym roku organizujemy .\naiesec polska , a w szczegolnosci aiesec przy szkole glownej handlowej ma\nzaszczyt organizowac w tym roku european leadership development seminar . jest\nto seminarium na temat przywodztwa skierowne do obecnych i przyszlych\nczlonkow rad wykonawczych komitetow lokalnych aiesec w calej europie .\npo raz pierwszy aiesec polska ma mozliwosc organizacji takiego wydarzenia i\nstanowi ono dla nas olbrzymie wyzwanie .\nprzygotowywalismy sie do niego od kilku lat i obecnie jestesmy juz w koncowej\nfazie organizacji eurolds 2000 .\nprojekt rozpoczyna sie 7 marca 2000 roku oficjalnym otwarciem przez pana\nprezydenta aleksandra kwasniewskiego w sali kongresowej . pozniej odbeda sie\ndyskusje panelowe ( udzial wielu znakomitych gosci - m . in jan krzysztof\nbielecki , jacek saryusz wolski , andrzej olechowski ) oraz wyklady i\nprezentacje regionow polski w auli spadochronowej szkoly glownej handlowej , a\nnastepnie delegaci udadza sie do hotelu mrongovia na szkolenia , casy i\nwyklady na temat przywodztwa . ( szczegolowy program eurolds 2000 przesylam w\nzalaczniku . )\njak do tej pory staralismy sie mozliwie najwiecej dokonac wlasnymi silami ,\njednak obecnie na 3 tygodnie przed tym wydarzeniem stoimy przed pewnym\nproblemem i stad tez pojawil sie pomysl skontaktowania pana , jako osoby ,\nktora moglaby nam wydatnie pomoc .\nchcielibysmy poprosic pana o wsparcie finansowe .\nwspolpracujemy juz z wieloma firmami i instytucjami ( m . in . deloitte & touche ,\narthur andersen , fundusz phare , fundacja konrada adenauera oraz wieloma\ninnymi ) , jednak na obecnym etapie organizacji projektu wciaz brakuje nam\n12000 $ .\npoczatkowo chcielismy nawiazac kontakt z pania eileen price z londynu , jednak\nwydaje nam sie , ze pan jako zalozyciel aiesec w polsce powienien po pierwsze\no takim wydarzeniu wiedziec , a po drugie mamy nadzieje , ze moze nam pan pomoc .\nbardzo prosze o odpowiedz ,\nz powazaniem\nandrzej wodnicki\nprezydent eurolds 2000\naiesec szkola glowna handlowa\n- attl . htm\n- eurolds _ prezentacja . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.165+0000", "entityId": 6894, "properties": {"text": "Subject: re : summer internship position\nravi ,\ncharlene wants the entire batch of potential summer intern resumes sent to\nher in one step .\ni want to complete this by friday . catch me after lunch to talk about it .\nvince\nravi thuraisingham @ enron communications on 02 / 17 / 2000 10 : 11 : 36 am\nto : vince kaminski\ncc : april hodgson / enron communications @ enron communications , matt\nharris / enron communications @ enron communications , stinson gibner / hou / ect @ ect ,\ncharlene jackson @ enron , celeste roberts / hou / ect @ ect\nsubject : re : summer internship position\nhi vince , paulo oleira ( one of the m . i . t attending our meeting on wed ) ' s\nresearch interest turned out to be a match for april hodgeson ( vp of content\norigination ) . i had him talk to april ( stinson was on the call as well ) to\ndiscuss his research interest and what he would likely to do for april . i\nsuggested ( and april agrees ) that paulo would intern with her and matt and\nperform research on how end users ( consumers and business ) improved\nexperience with epowered content can be quantified . this may include\nperforming control experiments at m . i . t . we decided not to over specify what\nhe would do since it is likely to change as soon as he arrives . i suggested\nonce he starts , he will work with april and matt harris ( vp enterprise\norigination ) and they will define what the student needs to complete for the\ninternship .\naddiontionally , tom gros agrees that this type of research are needed and\nthis is a great way to start .\ni will proceed to have recruiting contact the student with an offer to start\naround may 22 , 2000 unless someone tells me otherwise .\nregards ,\nravi .\np . s . charlene , please include paulo in your may 22 , 2000 start group . paulo\nwill report to me within ebs research group but will work on a day - to - day\nbasis with april and matt . as you ' ve mentioned that compensation is somewhat\nfixed but please keep in mind that this person is a phd candidate with very\nspecialized skill set . please contact vince before extending an offer that\nmay be too low , etc .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 17 / 00 09 : 27\nam - - - - -\ncharlene jackson @ enron\n02 / 17 / 00 08 : 25 am\nto : vince j kaminski / hou / ect @ ect\ncc : celeste roberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect , ravi\nthuraisingham / enron communications @ enron communications @ ect\nsubject : re : summer internship position\nceleste ,\nwe need to make sure that the interns in vince ' s group are coordinated and\nincorporated with the rest of the summer associates . they should be offered\nthe same starting dates , i believe they are may 22 , 2000 june 5 , 2000 . i am\nnot sure about the june date . would you check and let vince know . they\nshould also be offered the same starting salary package as the others . they\nwill be included in training ( a few days ) and any other events we host .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.169+0000", "entityId": 6895, "properties": {"text": "Subject: organizational changes\nas enron ' s broadband services business grows , we will continue to position\nthe company to take advantage of the significant opportunities in this market\nand meet the needs of our global customers . with that in mind , we ' ve made a\nnumber of changes within the office of the chairman of enron broadband\nservices aimed at providing a better focus on the key objectives of the\norganization .\njoe hirko and ken rice , previously co - ceos of enron broadband services , will\ncontinue to jointly manage the strategic direction of the company . joe will\ncontinue as ceo and will be responsible for the primary executive management\nof ebs as well as network build - out , bos development , cross - market\ncapabilities and staff functions . ken will assume the role of chief\ncommercial officer and will be responsible for developing the commercial\nfunctions of the organization .\nin addition , kevin hannon has been named chief operating officer and will be\nresponsible for the day - to - day operations of ebs . kevin was most recently\nceo of global risk management and , prior to that position , he was president\nand coo of enron north america , where he has been instrumental in developing\nenron ' s trading and risk management business in gas , electricity and other\nemerging markets . greg whalley , president and coo of ena , will again assume\nhis responsibilities for global risk management .\nplease join us in congratulating joe , ken , kevin and greg in their new roles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.174+0000", "entityId": 6896, "properties": {"text": "Subject: interviews for a new candidate\nelizabeth :\nwe have yet another candidate allen humbolt who we want to interview . his\nskills seem to match our requirements very well . we appreciate your help in\nsetting up interviews for him with the following people :\nvince kaminski\nstinson gibner\ngrant masson\nvasant shanbhogue\nronnie chahal\nosman sezgen\njohn henderson ( ees )\nanoush farhangi\nand myself .\nthanks ,\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.179+0000", "entityId": 6897, "properties": {"text": "Subject: follow up / cultivation for mit\nmit / sloan team :\ni am pleased to announce that the two candidates below were extended offers\nfor enron ' s summer associate program :\nhakeem sanusi 617 - 576 - 7570 hsanusi @ mit . edu offer pending\njozef lieskovsky 617 - 905 - 5633 jlieskov @ mit . edu offer pending\nas we discussed , there were a number of excellent candidates that we met\nwhile interviewing for summer associates . in an effort to strengthen our\nname on campus and to cultivate relationships with these individuals , we want\nto make a concerted effort to keep up with them for our fall recruiting\neffort . i have attached a template for us to use and refer to for both the\noffers and the cultivations . this serves as a two - fold communication tool :\na tool for the team members to use in contacting the candidates and a tool\nfor me to use when tracking any issues or concerns the candidates may have .\nplease feel free to add to it and e - mail it back to me or give me a call\n( ext . 37632 ) and i will update it .\ni will also be using this to report back to a & a management .\nbelow are the names of the candidates that made it to the second round . we\nwant to call on all of them .\nblaise nietcho 617 - 225 - 2598 blaise @ mit . edu\nrocco paduano 617 - 742 - 2085 rpaduano @ mit . edu\nsamuel vainstein 617 - 266 - 7257 samuva @ mit . edu\ndiego silva robert 617 - 441 - 6999 dsilva @ mit . edu\nshould you have any questions , please feel free to give me a call .\nthanks ,\nkaren marshall\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.183+0000", "entityId": 6898, "properties": {"text": "Subject: summer intern : paulo oliveira\nvince : here is the information that i have on paulo . he would be slated\nto work for the summer with april hodgeson and matt harris on how streaming\nmedia products may add value to advertising or some related area .\nactually , he would also be a good fit for helping to think ways to analyze\nour enron on - line data . i have asked if he can send a resume . in the\nmean time , most of his relevant information is attached below .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 17 / 2000\n11 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaulo rocha e oliveira on 02 / 10 / 2000 12 : 04 : 56 pm\nto : \" stinson gibner \"\ncc :\nsubject : re : trip to houston\nstinson ,\nthank you for your e - mail . my phone number is ( 617 ) 492 - 9551 .\ni graduated from princeton university in 1996 ( mathematics ) , and came\nstraight to mit for a\nph . d . in operations management at the sloan schoolof management . in my first\nthree years i took all the required coursework in mathematics ,\noptimization , stochastic processes , etc . , as well as a number of courses in\npsychology ( at mit and harvard ) . i am working with prof . gabriel bitran ,\nand i am interested in the mathematical modeling of service operations . in\nparticular , i am interested in the interaction between customers and\ncompanies ( hence the interest in psychology ) . the ( tentative ) title of my\nphd thesis is \" pricing substitute products on the internet \" , and i am\nsending you the summary which i sent to tom gros a few weeks ago that will\ngive you an idea of what this research is about .\nthanks again , and i ' m looking forward to meeting you and your research\ngroup next week .\npaulo\npricing substitute products on the internet\nobjective :\nto develop new tools to decide pricing policies for goods and services sold\non\nthe internet .\nmotivation :\nthis research is motivated by the fact that traditional choice and\noptimization\nmodels are not appropriate for internet - related businesses . the technological\ninnovations associated with the internet brought about an overload of\ninformation\nwhich inevitably affects the ways in which consumers make choices .\nfurthermore ,\ncompanies have a great deal of influence on how much information consumers can\nhave access to .\nthe problem of pricing substitute products is an important strategic issue\nfaced\nby internet companies . consumers usually search for generic products ( e . g .\nvcrs\nor computers ) without knowing exactly what they will buy . companies can show\ndifferent products and different prices to each consumer . this type of\nflexibility\nwas not available until the internet came about .\nthe problem of pricing substitute products is not unique to the internet . the\nmethodology developed by this research should be transferable to a number of\nother settings , such as pricing services . services are unique , and there are\nmany cases where customers will only buy one of many services offered by a\ngiven company . our model will help companies decide which services to offer\nto which customers and how much to charge for these services .\nresearch strategy :\nour research strategy is to divide the pricing problem into two components\nwhich can be combined to generate optimal pricing strategies . these\ncomponents are choice models and optimization models .\nchoice models :\nchoice models describe how customers make choices . the management literature\ndraws on two main sources for these models : psychology and economics . the\ncommon approach in psychology models is to use what are called heuristic\nelimination methods . these methods consist of the elimination of options\nbased on the sequential elimination of features until only one choice\nremains .\nthese methods tend to be very context - specific and do not lend themselves very\neasily to mathematical analysis . economists focus on utility - maximing models\nthat are significantly more mathematically tractable than psychological\nmodels .\nthe most common economic model of choice is the logit model . the problem with\nthese types of models is that they are not very accurate reflections of how\nconsumer make choices on the internet . the first step in our research will\nbe\nto develop choice models that capture the interactions going on between\ncustomers\nand companies on the internet .\noptimization :\ntraditionally , the optimization problem consists of maximizing revenue over a\ncertain planning horizon . on the internet , the problem of maximizing revenue\nstill exists , but there is also a need to learn about customers . short term\nprofit is based on sales , but long term profit is based on how well you know\nyour customers and are able to retain them . the optimization problem must\ntherefore include a short term component ( sales ) and a long term component\n( learning ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.189+0000", "entityId": 6899, "properties": {"text": "Subject: re : lsu visit ( resume )\ndatren ,\ni am forwarding your resume to our analyst / associate program .\ni talked to them about my needs for the summer and i don ' t see any problem .\nthey should contact you shortly .\nvince kaminski\ndatren williams on 02 / 05 / 2000 03 : 46 : 43 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : lsu visit ( resume )\nmr . kaminski ,\nit was a pleasure and honor to have lunch with you . i also enjoyed your\npresentation in our graduate class . i hope you enjoyed your visit to\nbaton rouge . come back to visit us sometime ! !\nattached is my resume as you suggested . thank you for your interest in\nlsu and me .\nsincerely ,\ndatren l . williams\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.197+0000", "entityId": 6900, "properties": {"text": "Subject: re : our discussion\nmike ,\nthere might be a place for steve in our unit supporting ees . i shall forward\nthe resume to my associates supporting the facility management\neffort .\nthanks for thinking about us .\nvince\np . s . krishna , osman ,\ncan you take a look at the attached resume ? steve has no finance background\nbut his engineering background is very strong .\nvince\nmichael l miller @ enron _ development\n02 / 17 / 2000 07 : 52 am\nsent by : michael linn miller @ enron _ development\nto : vince j kaminski @ ect , stinson gibner @ ect\ncc : aspijk @ texas . net\nsubject : our discussion\nvince & stinson ,\ni was given your names by lynn dunphy in recruiting and am taking the liberty\nof forwarding you the attached cv . steve roeder is a former collegiate\nswimmer and currently coach of the master ' s swimming program in the woodlands\n( my wife is president of the program ) . he is also currently employed at air\nliquide usa ( or one of its subsidiaries ) over in the galleria area . as a\nconsequence of air liquide ' s pending merger with boc , steve believes that\nthere will be significant personnel reductions sometime during 2000 and is\ntaking action now to try to locate his next professional challenge .\nlynn suggested there might be a fit with your group and i would be grateful\nif you could have a look and let me know whether you might be interested .\nalternatively , if you don ' t see a fit ( or are adequately staffed at the\nmoment ) , i would be grateful for any suggestions you might have as to whom i\nmight contact internally on steve ' s behalf .\nmany thanks in advance .\nm . l . miller\nvice president - mergers & acquisitions\ncalme region\n( 713 ) 345 5272\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael linn miller / enron _ development on\n02 / 17 / 2000 07 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" roeder , steve \" on 02 / 10 / 2000 03 : 14 : 18 pm\nto : \" ' michael . l . miller @ enron . com ' \"\ncc :\nsubject : our discussion\nmike -\nthanks for taking the time to talk last evening . ? i really appreciated it . ?\n( by the way , how is life in the white house now that you are living with a\npresident ? ? is air force one all that it is cracked up to be ? )\nplease see the attached document . ? by reading between the lines , hopefully\none can see that , whereas my training has been highly technical , my desire to\ntransform my career into the business side of a high - technology application\nis set in this good foundation ( rather than limited by it ) .\nthanks again for your support .\n>\nsteve roeder\ntechnology manager\nair liquide america\n713 624 8777\n713 624 8350 fax\nsteve . roeder @ airliquide . com\n- steve . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.204+0000", "entityId": 6901, "properties": {"text": "Subject: re : summer internship position\nhi vince , paulo oleira ( one of the m . i . t attending our meeting on wed ) ' s\nresearch interest turned out to be a match for april hodgeson ( vp of content\norigination ) . i had him talk to april ( stinson was on the call as well ) to\ndiscuss his research interest and what he would likely to do for april . i\nsuggested ( and april agrees ) that paulo would intern with her and matt and\nperform research on how end users ( consumers and business ) improved\nexperience with epowered content can be quantified . this may include\nperforming control experiments at m . i . t . we decided not to over specify what\nhe would do since it is likely to change as soon as he arrives . i suggested\nonce he starts , he will work with april and matt harris ( vp enterprise\norigination ) and they will define what the student needs to complete for the\ninternship .\naddiontionally , tom gros agrees that this type of research are needed and\nthis is a great way to start .\ni will proceed to have recruiting contact the student with an offer to start\naround may 22 , 2000 unless someone tells me otherwise .\nregards ,\nravi .\np . s . charlene , please include paulo in your may 22 , 2000 start group . paulo\nwill report to me within ebs research group but will work on a day - to - day\nbasis with april and matt . as you ' ve mentioned that compensation is somewhat\nfixed but please keep in mind that this person is a phd candidate with very\nspecialized skill set . please contact vince before extending an offer that\nmay be too low , etc .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 17 / 00 09 : 27\nam - - - - -\ncharlene jackson @ enron\n02 / 17 / 00 08 : 25 am\nto : vince j kaminski / hou / ect @ ect\ncc : celeste roberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect , ravi\nthuraisingham / enron communications @ enron communications @ ect\nsubject : re : summer internship position\nceleste ,\nwe need to make sure that the interns in vince ' s group are coordinated and\nincorporated with the rest of the summer associates . they should be offered\nthe same starting dates , i believe they are may 22 , 2000 june 5 , 2000 . i am\nnot sure about the june date . would you check and let vince know . they\nshould also be offered the same starting salary package as the others . they\nwill be included in training ( a few days ) and any other events we host .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.210+0000", "entityId": 6902, "properties": {"text": "Subject: re : visiting enron\ngiuseppe ,\nthanks a lot . i would appreciate if you could set up a meeting with prof .\nbambos .\nwe talked to him during our last visit and we would like to follow up with\nsome\nspecific proposals regarding research projects enron could sponsor .\nvince\ngiuseppe andrea paleologo on 02 / 14 / 2000 03 : 20 : 52 pm\nplease respond to gappy @ stanford . edu\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : visiting enron\ndr . kaminski , i would like to thank you very much for taking care of amy and\nme\nduring our trip to houston . what i saw at enron communication was nothing\nshort\nof revolutionary . more than that , i was impressed with the drive of the\npeople ,\ntheir kindness , and their proficiency . i look forward to meeting you again in\nstanford during the last weekend of february . i will send you an email next\nweek , so that we can arrange a meeting between you and prof . bambos .\nall the best wishes ,\ngiuseppe\n- -\n: : giuseppe a paleologo : : http : / / www . stanford . edu / ~ gappy\n\" what a waste it is to lose one ' s mind . or not to have a mind is being\nvery wasteful . how true that is . \"\n- vice president dan quayle winning friends while\nspeaking to the united negro college fund , 5 / 9 / 89 -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.215+0000", "entityId": 6903, "properties": {"text": "Subject: move to the research area\nhi shalesh :\nthe move team has informed me that they will not be able to move your\ntelephone until wednesday , the 23 rd . i have asked them to bring you\nboxes by friday , but i have not heard back from them . your computer\nis here , but without a telehone , you may not want to move down here\nuntil the 23 rd .\njust to let you know .\nhave a great day !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.219+0000", "entityId": 6904, "properties": {"text": "Subject: re : tanya vacation\nbrad ,\ncan we reverse this entry ? i shall call you later today regarding tanya .\nvine\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 17 / 2000\n08 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntanya tamarchenko\n02 / 16 / 2000 10 : 13 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : tanya vacation\nvince ,\ni just found out that none of my vacation days from the last year is in the\ncomputer system\n( it says that i have 0 c / over days ) .\nit was november 3 , 1999 when i asked your approval to carry over 12 vacation\ndays to the next year .\ni was thinking that if you ( or hr ) do not approve i could at least take these\ndays in 1999 .\ni know that your tried to help me and sent to brad mcsherry the\njustification for me to carry over 10 days .\ni bothered you a few times in november and december 1999 and since your\nresponse was optimistic\ni did not take any of those 10 days in 1999 . but i never heard from hr .\nnow i am not sure - may be these days are not in the system by mistake .\ni would like to take 5 of them in march ( from 3 / 13 / 00 to 3 / 17 / 00 ) .\nwhat is your advice ? should i contact brad mcsherry ? even negative response\nfrom hr in november or\ndecember last year would be better than loosing vacation days .\ni really appreciate your help ,\ntanya .\ntanya tamarchenko\n12 / 02 / 99 12 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : tanya vacation\nhi , vince ,\nsorry to bother again with my question .\ni first e - mailed my question a month ago ( on nov . 3 ) .\nsince we still have not heard from hr , is it fair to assume that i can carry\nover my 10 vacation days to the next year ?\nif not - i have to take 5 days before dec . 17 , because then i go on vacations\nanyhow . i would really prefer not to take off\nmost of december , there are quite a lot of things going on .\nthank you for your help in resolving this question .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.224+0000", "entityId": 6905, "properties": {"text": "Subject: re : summer internship position\nceleste ,\nwe need to make sure that the interns in vince ' s group are coordinated and\nincorporated with the rest of the summer associates . they should be offered\nthe same starting dates , i believe they are may 22 , 2000 june 5 , 2000 . i am\nnot sure about the june date . would you check and let vince know . they\nshould also be offered the same starting salary package as the others . they\nwill be included in training ( a few days ) and any other events we host .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.229+0000", "entityId": 6906, "properties": {"text": "Subject: storage book . . .\nravi :\nsamer and i met this morning with sara ledbetter . she is starting the\ngroundwork for setting up a storage book and a streaming book for tracking\nthe e - powered products positions . they are having a meeting on next\ntuesday to discuss this . samer will attend . this is a good opportunity to\nstart compiling the data that we will need for some of john grieblings\nquestions .\n- - stinson\np . s . sara also asked if we knew anyone who would be interested in managing\nthe storage book . any suggestions ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.233+0000", "entityId": 6907, "properties": {"text": "Subject: re : meeting with mark schroeder\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n02 / 18 / 2000 08 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\najay . khandelwal . ftmba 99 - 00 @ cranfield . ac . uk on 02 / 18 / 2000 06 : 07 : 50 am\nto : \" pinnamaneni krishnarao \"\ncc :\nsubject : re : meeting with mark schroeder\nhi mr . rao !\nthanks a lot for your mail .\ni would be meeting mark and mr . paul dawson on lst march and would let you\nknow the outcome of the meeting .\nin the mean time i am enjoying my mba program and hope that the outcome of\nthe meeting would be positive .\nbest regards\najay\n| | \" pinnamaneni krishnarao \" |\n| | |\n| | |\n| | 17 / 02 / 00 08 : 20 am |\n| | |\n| |\n| to : ajay . khandelwal . ftmba 99 - 00 @ cranfield . ac . uk |\n| cc : ( bcc : ajay khandelwal / cusom ) |\n| subject : meeting with mark schroeder |\nhi ajay !\nhope you are doing well . i was wondering if you met with mark and what\nyou\nguys decided . let me know either way . if it doesn ' t work out with mark , i\nwill\narrange something else through our research group .\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.238+0000", "entityId": 6908, "properties": {"text": "Subject: reschedule - iv amit bartarya first floor sel 002 ( 21 feb 16 : 00 gmt )\ninterview schedule\n16 . 00 - 16 . 30 vince kaminski & anjam ahmad\n16 . 30 - 17 . 00 ben parsons\n17 . 00 - 17 . 30 stephen leppard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.243+0000", "entityId": 6909, "properties": {"text": "Subject: iv kirstee hewitt fifth floor se 5005\nintervew schedule\n17 . 30 - 18 . 00 vince kaminski & anjam ahmad\n18 . 00 - 18 . 30 ben parsons\n18 . 30 - 19 . 00 stephen leppard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.247+0000", "entityId": 6910, "properties": {"text": "Subject: re : aiesec polska - eurolds 2000\ndrogi panie andrzeju ,\nprobuje skontaktowac sie z jarkiem astramowiczem , by znalezc sposob\ndofinansowania waszej imprezy .\njedyna mozliwosc , by to zrobic jest poprzez enron poland . mnie byloby\nbardzo trudno usprawiedliwic to z mojego budzetu .\nw . kaminski\n\" andrzej wodnicki \" on 02 / 16 / 2000 02 : 50 : 05 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : aiesec polska - eurolds 2000\nszanowny panie kaminski !\nnazywam sie andrzej wodnicki i jestem czlonkiem stowarzysznia studentow\naiesec przy szkole glownej handlowej ( dawnej sgpis ) .\nprosze o poswiecenie paru chwil na przeczytanie tego maila .\n( kontakt do pana otrzymalem od kolegi , ktory organizowal prezentacje firmy\nenron na sgh , a posrednio od pana jarka astramowicza , przedstawiciela enron\nna polske . )\nw imieniu aiesec polska chcialbym zwrocic sie do pana z wielka prosba pomocy\nprzy wydarzeniu , ktore w tym roku organizujemy .\naiesec polska , a w szczegolnosci aiesec przy szkole glownej handlowej ma\nzaszczyt organizowac w tym roku european leadership development seminar . jest\nto seminarium na temat przywodztwa skierowne do obecnych i przyszlych\nczlonkow rad wykonawczych komitetow lokalnych aiesec w calej europie .\npo raz pierwszy aiesec polska ma mozliwosc organizacji takiego wydarzenia i\nstanowi ono dla nas olbrzymie wyzwanie .\nprzygotowywalismy sie do niego od kilku lat i obecnie jestesmy juz w koncowej\nfazie organizacji eurolds 2000 .\nprojekt rozpoczyna sie 7 marca 2000 roku oficjalnym otwarciem przez pana\nprezydenta aleksandra kwasniewskiego w sali kongresowej . pozniej odbeda sie\ndyskusje panelowe ( udzial wielu znakomitych gosci - m . in jan krzysztof\nbielecki , jacek saryusz wolski , andrzej olechowski ) oraz wyklady i\nprezentacje regionow polski w auli spadochronowej szkoly glownej handlowej , a\nnastepnie delegaci udadza sie do hotelu mrongovia na szkolenia , casy i\nwyklady na temat przywodztwa . ( szczegolowy program eurolds 2000 przesylam w\nzalaczniku . )\njak do tej pory staralismy sie mozliwie najwiecej dokonac wlasnymi silami ,\njednak obecnie na 3 tygodnie przed tym wydarzeniem stoimy przed pewnym\nproblemem i stad tez pojawil sie pomysl skontaktowania pana , jako osoby ,\nktora moglaby nam wydatnie pomoc .\nchcielibysmy poprosic pana o wsparcie finansowe .\nwspolpracujemy juz z wieloma firmami i instytucjami ( m . in . deloitte & touche ,\narthur andersen , fundusz phare , fundacja konrada adenauera oraz wieloma\ninnymi ) , jednak na obecnym etapie organizacji projektu wciaz brakuje nam\n12000 $ .\npoczatkowo chcielismy nawiazac kontakt z pania eileen price z londynu , jednak\nwydaje nam sie , ze pan jako zalozyciel aiesec w polsce powienien po pierwsze\no takim wydarzeniu wiedziec , a po drugie mamy nadzieje , ze moze nam pan pomoc .\nbardzo prosze o odpowiedz ,\nz powazaniem\nandrzej wodnicki\nprezydent eurolds 2000\naiesec szkola glowna handlowa\n- attl . htm\n- eurolds _ prezentacja . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.252+0000", "entityId": 6911, "properties": {"text": "Subject: resume and available dates for amy ward\nvince : here is an electronic version of amy ward ' s resume .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 18 / 2000\n01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\namy ruth ward on 02 / 18 / 2000 12 : 02 : 22 pm\nto : stinson gibner\ncc :\nsubject : re : thanks for coming to houston\nstinson ,\ni am pleased to hear your hr department is putting together an offer for\nsummer employment . i enjoyed everyone i interviewed with while in houston\nand appreciated you taking the time to put together this day .\nas requested , i am attaching an electronic version of my resume . ( note it\nis a slightly more updated one then the one i gave you earlier . ) it is in\nmicrosoft word format .\nmy dates of availability are wed . , july 5 through fri . , september 15 ( 10\n1 / 2 weeks ) .\nsincerely ,\namy ward\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.257+0000", "entityId": 6912, "properties": {"text": "Subject: steven roeder ( chemical engineer )\nvince ,\ni do not think that there is match with our group but i forwarded steve ' s\nresume\nto ford cooper and joe phalen of the water group .\nregards ,\nosman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.262+0000", "entityId": 6913, "properties": {"text": "Subject: resumes\ncharlene ,\ni am sending you as promised the information i have about 3 of our summer\ninterns .\ni shall fax you this morning two additional resumes i have in hard copy .\nin the case of paulo rocha we don ' t have a formal\nresume , just a letter from him with the summary of his skills .\nthanks for your help . enron desperately needs this talent .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.267+0000", "entityId": 6914, "properties": {"text": "Subject: re : conference room\nkevin\nyes , it ' s a good idea .\nvince\nkevin g moore\n02 / 18 / 2000 06 : 56 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc :\nsubject : conference room\ngoodmorning vince ,\nwe added a bookcase to the conference room on the 19 th floor\nhowever , due to the departments growth i think we could use\nanother one .\nvince , in the long run it would save us some time .\nplease let me know if this is okay !\nthanks\nkevin\nmoore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.271+0000", "entityId": 6915, "properties": {"text": "Subject: re : vmi agreements\nhi vince , mark holsworth reviewed our contract on such a short notice . i\nthank mark for responding to our short - notice request . it turns out that we\nneed to get this database to move forward on a number of things and have\nlegal save some time for us is an excellent help . as mentioned below , it\nappears that pennwell ' s folks want to chat some more about this .\nmark , can you schedule a conference call with these people to finalise this\ncontract . i will be out of town all week next week on a lock - down deal\nmeeting . vince may be able to get on the conference call . i would greatly\nappreciate it if you could help us close this one !\nregards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 20 / 00 12 : 38\nam - - - - -\nrussell @ pennwell . com\n02 / 18 / 00 06 : 16 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc : toni . turnerbudd @ sbtglaw . com\nsubject : re : vmi agreements\nravi -\ni would like to schedule a conference call between you , me , pennwell ' s\ncounsel ( toni turner budd ) , and enron ' s counsel to discuss your changes and\nfinalize the kmi end - user license agreement . i propose that we have the\nconference call at 2 : 00 pm cst this monday , february 21 . please let me know\nif you are available at this time and , if not , propose an alternative time\nfor the call . in addition , please provide me with a telephone number where\ni can reach you for the conference call .\npennwell is looking forward to finalizing the license agreement and\ndelivering the kmi data to enron .\nyours truly ,\nrussell iorio\nmanager of business development\npennwell corporation\n1421 south sheridan road\ntulsa , ok 74112\nrussell @ pennwell . com\n( 918 ) 831 - 9122 direct\n( 918 ) 831 - 9476 fax\n- - - - - original message - - - - -\nfrom : ravi _ thuraisingham @ enron . net\n[ mailto : ravi _ thuraisingham @ enron . net ]\nsent : thursday , february 17 , 2000 6 : 30 pm\nto : rmack @ kmicorp . com ; mpass @ kmicorp . com ;\nrussell @ pennwell . com\ncc : kristina _ lund @ enron . net ;\nstinson _ gibner @ ect . enron . net ; vince _ kaminski @ enron . net ;\nearl _ harvey @ enron . net ; tracy _ williams @ enron . net\nsubject : vmi agreements\n>\nhi richard , here is a marked up version from our lawyer .\nplease have your\npeople look at it and if it seems fine make the changes\nand send a signed\ncopy back to me .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications\non 02 / 17 / 00 06 : 21 pm\n- - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | mark |\n| | holsworth @ enr |\n| | on |\n| | |\n| | 02 / 17 / 00 |\n| | 04 : 10 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n- |\n|\n|\n| to : ravi thuraisingham / enron\ncommunications @ enron communications , |\n| gene diers / corp / enron @ enron\n|\n| cc :\n|\n| subject : vmi agreements\n|\n- |\nplease find attached my redlining of the vmi agreelment .\nplease review it and\nsend it to the vendor for their review .\n( see attached file : 2 - 14 - 2000 eula . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.276+0000", "entityId": 6916, "properties": {"text": "Subject: re : storage book . . .\nhi stinson , shales ' initial in road to ebs was through david cox ( after\nvince ' s suggest to talk to david , i think ) . what shalesh did at the time was\nto put a four page concept on trading storage as a commodity in the new\nnetworked world . he has keen interest in such an idea and has done some\nwork . he will be a good fit unless that person has to be in ebs under jean\netc . . . . if so , we are not ready to let shalesh go ! he can support that\neffort , but i need him to get the supply & demand work in real - time user\nfriendly form for jean ' s traders before shalesh ventures onto something\nelse . i did promising that i will get him involved in some juicy stuff like\nnew product / deals etc . . . . this may be his non - it stuff that he can do . . . . .\nwhat do you think ?\nravi .\nstinson gibner @ ect\n02 / 18 / 00 10 : 10 am\nto : ravi thuraisingham / enron communications @ enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : storage book . . .\nravi :\nsamer and i met this morning with sara ledbetter . she is starting the\ngroundwork for setting up a storage book and a streaming book for tracking\nthe e - powered products positions . they are having a meeting on next\ntuesday to discuss this . samer will attend . this is a good opportunity to\nstart compiling the data that we will need for some of john grieblings\nquestions .\n- - stinson\np . s . sara also asked if we knew anyone who would be interested in managing\nthe storage book . any suggestions ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.281+0000", "entityId": 6917, "properties": {"text": "Subject: re : summer intern : paulo oliveira\nvince , both matt and april think that this type of research would be\nvalue - additive to ebs . i will be out all next week in a meeting with john\ngriebling and other on a deal that is being worked out . i understand that\nyou are following up with hr on all of our summer intern offers . please make\nsure palo is given an offer and that he will work with april and matt ( he did\ntalk to matt ) on the topics that april and i suggested .\nregards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 20 / 00 12 : 41\nam - - - - -\nmatt harris\n02 / 17 / 00 08 : 08 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc : april hodgson / enron communications @ enron communications\nsubject : re : summer intern : paulo oliveira\nlooks interesting .\ni would guess that there is a ton of research available ( from @ home , aol ,\nroadrunner , real , microsoft , etc . ) on broadband ' s impact on the strategic\nvalue of web properties . compiling this would be very helpful .\nmh\nravi thuraisingham\n02 / 17 / 00 12 : 15 pm\nto : april hodgson / enron communications @ enron communications , matt\nharris / enron communications @ enron communications\ncc :\nsubject : summer intern : paulo oliveira\nhi april & matt , here is additional information on the summer intern that\ni ' ve mentioned .\nmatt , i know you know nothing about this ! my discussion with april on the\npossible research topic let me ( & april ) to believe that you would provide\ngreat input on what the student can work on while he is here .\nregards ,\nravi .\nebs research\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 17 / 00 02 : 09\npm - - - - -\nstinson gibner @ ect\n02 / 17 / 00 11 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc : ravi thuraisingham / enron communications @ enron communications , thomas d\ngros / hou / ect @ ect\nsubject : summer intern : paulo oliveira\nvince : here is the information that i have on paulo . he would be slated\nto work for the summer with april hodgeson and matt harris on how streaming\nmedia products may add value to advertising or some related area .\nactually , he would also be a good fit for helping to think ways to analyze\nour enron on - line data . i have asked if he can send a resume . in the\nmean time , most of his relevant information is attached below .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 17 / 2000\n11 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaulo rocha e oliveira on 02 / 10 / 2000 12 : 04 : 56 pm\nto : \" stinson gibner \"\ncc :\nsubject : re : trip to houston\nstinson ,\nthank you for your e - mail . my phone number is ( 617 ) 492 - 9551 .\ni graduated from princeton university in 1996 ( mathematics ) , and came\nstraight to mit for a\nph . d . in operations management at the sloan schoolof management . in my first\nthree years i took all the required coursework in mathematics ,\noptimization , stochastic processes , etc . , as well as a number of courses in\npsychology ( at mit and harvard ) . i am working with prof . gabriel bitran ,\nand i am interested in the mathematical modeling of service operations . in\nparticular , i am interested in the interaction between customers and\ncompanies ( hence the interest in psychology ) . the ( tentative ) title of my\nphd thesis is \" pricing substitute products on the internet \" , and i am\nsending you the summary which i sent to tom gros a few weeks ago that will\ngive you an idea of what this research is about .\nthanks again , and i ' m looking forward to meeting you and your research\ngroup next week .\npaulo\npricing substitute products on the internet\nobjective :\nto develop new tools to decide pricing policies for goods and services sold\non\nthe internet .\nmotivation :\nthis research is motivated by the fact that traditional choice and\noptimization\nmodels are not appropriate for internet - related businesses . the technological\ninnovations associated with the internet brought about an overload of\ninformation\nwhich inevitably affects the ways in which consumers make choices .\nfurthermore ,\ncompanies have a great deal of influence on how much information consumers can\nhave access to .\nthe problem of pricing substitute products is an important strategic issue\nfaced\nby internet companies . consumers usually search for generic products ( e . g .\nvcrs\nor computers ) without knowing exactly what they will buy . companies can show\ndifferent products and different prices to each consumer . this type of\nflexibility\nwas not available until the internet came about .\nthe problem of pricing substitute products is not unique to the internet . the\nmethodology developed by this research should be transferable to a number of\nother settings , such as pricing services . services are unique , and there are\nmany cases where customers will only buy one of many services offered by a\ngiven company . our model will help companies decide which services to offer\nto which customers and how much to charge for these services .\nresearch strategy :\nour research strategy is to divide the pricing problem into two components\nwhich can be combined to generate optimal pricing strategies . these\ncomponents are choice models and optimization models .\nchoice models :\nchoice models describe how customers make choices . the management literature\ndraws on two main sources for these models : psychology and economics . the\ncommon approach in psychology models is to use what are called heuristic\nelimination methods . these methods consist of the elimination of options\nbased on the sequential elimination of features until only one choice\nremains .\nthese methods tend to be very context - specific and do not lend themselves very\neasily to mathematical analysis . economists focus on utility - maximing models\nthat are significantly more mathematically tractable than psychological\nmodels .\nthe most common economic model of choice is the logit model . the problem with\nthese types of models is that they are not very accurate reflections of how\nconsumer make choices on the internet . the first step in our research will\nbe\nto develop choice models that capture the interactions going on between\ncustomers\nand companies on the internet .\noptimization :\ntraditionally , the optimization problem consists of maximizing revenue over a\ncertain planning horizon . on the internet , the problem of maximizing revenue\nstill exists , but there is also a need to learn about customers . short term\nprofit is based on sales , but long term profit is based on how well you know\nyour customers and are able to retain them . the optimization problem must\ntherefore include a short term component ( sales ) and a long term component\n( learning ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.285+0000", "entityId": 6918, "properties": {"text": "Subject: re : ebs research telecom rercruiting effot\nhi kristy , please track down electronic form of the four students that we\ninterviewed ( 2 stanford , 2 mit ) . if you need help , feel free to talk to\nvince to find out which one he has etc . . . .\nvince , there will be salal from mit coming in march 5 th ( i think , kristy\nplease confirm ) . he is very qualified and most like a good fit . so , please\nlet hr know that we may add a couple , etc .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 20 / 00 12 : 46\nam - - - - -\nvince j kaminski @ ect\n02 / 18 / 00 08 : 24 am\nto : ravi thuraisingham / enron communications @ enron communications @ enron\ncc : stinson gibner / hou / ect @ ect\nsubject : re : ebs research telecom rercruiting effot\nravi ,\nour compensation for summer interns is very generous . it ' s more than what an\nengineering student expects .\nvince\np . s . any progress on the resumes in electronic form ? i want to send a\npackage to charlene today .\nvince\nravi thuraisingham @ enron communications on 02 / 17 / 2000 02 : 34 : 01 pm\nto : vince kaminski , stinson gibner / hou / ect @ ect\ncc :\nsubject : ebs research telecom rercruiting effot\nhi , vince please put your best effort in making sure that we differentiate\nsummer interns and associates that ebs research will be hiring . i am talking\nabout compensation here . ken rice mentioned that ebs is in the process of\ndeveloping a technical equivalent of our aa pool . ebs research people can\npotentially rotate through this pool in the future . i just don ' t want to\nrisk losing people like giuseppe ( & get the word out that we are low - ballers )\nbecause we have to fit them into certain set of categories that was designed\nfor the energy business . i realize that you have estabilished such\ndifferentiation for research as a whole , but i think that would have to be\nmoved up a notch in the case of ebs .\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.290+0000", "entityId": 6919, "properties": {"text": "Subject: re : march real options conference\nvince . thanks for getting back to me . i will have my secretary try to\nset up something among the three of us . gary , as vince cannot make a call\non wednesday , i will have my assistant call you to try to find a suitable\ntime . rachel , gary jackson ' s phone number is 423 751 2593 and vince\nkaminski ' s secretary ' s number is given below .\nat 03 : 34 pm 2 / 21 / 00 - 0600 , you wrote :\n>\n>\n> peter ,\n>\n> i am in london till wednesday afternoon . i shall be back at the office on\n> thursday .\n>\n> please , feel free to call my secretary , shirley crenshaw 713 853 5290 , to\n> schedule\n> a conference call . i cannot access my calendar from london and don ' t know my\n> commitments for this day .\n>\n> vince\n>\n>\n>\n>\n>\n> peter tufano on 02 / 18 / 2000 03 : 56 : 33 pm\n>\n> to : vince j kaminski / hou / ect @ ect , gljackson 2 @ tva . gov\n> cc :\n> subject : re : march real options conference\n>\n>\n>\n> dear vince and gary ,\n>\n> we are all speaking at the march real options session in ny . my work in\n> real options in the energy field has come , to a large part , from my\n> casewriting in your two organizations , so i feel that we should probably\n> allocate more time toward your presentations and less to mine . while we\n> have a two hour block among the three of us , i think we can freely\n> re - arrange things to produce the best result . would you two like to\n> schedule a brief conference call to coordinate our talks ? i am free\n> virtually all of next wednesday 2 / 23 , perhaps we could talk at 10 am ( est )\n> or 2 pm ( est ) ? i am happy to arrange the call , if you send me your phone\n> numbers . thanks .\n>\n> peter tufano\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> prof . peter tufano\n> harvard business school\n> morgan hall 377\n> soldiers field\n> boston , massachusetts 02163\n> phone : ( 617 ) 495 - 6855\n> fax : ( 617 ) 496 - 6592\n> email : ptufano @ hbs . edu\n> http : / / www . people . hbs . edu / ptufano\n>\nprofessor peter tufano\nharvard business school\nmorgan 377\nsoldiers field\nboston , ma 02163\nphone ( 617 ) 495 - 6855\nfax ( 617 ) 496 - 6592\nemail ptufano @ hbs . edu\nhttp : / / www . people . hbs . edu / ptufano", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.295+0000", "entityId": 6920, "properties": {"text": "Subject: re : vmi agreements\nravi ,\nmaybe stinson can get on this conference call . i shall be at the office on\nthursday\nonly this week .\nvince\nravi thuraisingham @ enron communications on 02 / 20 / 2000 01 : 13 : 06 am\nto : vince kaminski , mark holsworth / corp / enron @ enron\ncc : laura beneville , kristy carnes / enron communications @ enron communications ,\nkristy carnes / enron communications @ enron communications\nsubject : re : vmi agreements\nhi vince , mark holsworth reviewed our contract on such a short notice . i\nthank mark for responding to our short - notice request . it turns out that we\nneed to get this database to move forward on a number of things and have\nlegal save some time for us is an excellent help . as mentioned below , it\nappears that pennwell ' s folks want to chat some more about this .\nmark , can you schedule a conference call with these people to finalise this\ncontract . i will be out of town all week next week on a lock - down deal\nmeeting . vince may be able to get on the conference call . i would greatly\nappreciate it if you could help us close this one !\nregards ,\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 20 / 00 12 : 38\nam - - - - -\nrussell @ pennwell . com\n02 / 18 / 00 06 : 16 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc : toni . turnerbudd @ sbtglaw . com\nsubject : re : vmi agreements\nravi -\ni would like to schedule a conference call between you , me , pennwell ' s\ncounsel ( toni turner budd ) , and enron ' s counsel to discuss your changes and\nfinalize the kmi end - user license agreement . i propose that we have the\nconference call at 2 : 00 pm cst this monday , february 21 . please let me know\nif you are available at this time and , if not , propose an alternative time\nfor the call . in addition , please provide me with a telephone number where\ni can reach you for the conference call .\npennwell is looking forward to finalizing the license agreement and\ndelivering the kmi data to enron .\nyours truly ,\nrussell iorio\nmanager of business development\npennwell corporation\n1421 south sheridan road\ntulsa , ok 74112\nrussell @ pennwell . com\n( 918 ) 831 - 9122 direct\n( 918 ) 831 - 9476 fax\n- - - - - original message - - - - -\nfrom : ravi _ thuraisingham @ enron . net\n[ mailto : ravi _ thuraisingham @ enron . net ]\nsent : thursday , february 17 , 2000 6 : 30 pm\nto : rmack @ kmicorp . com ; mpass @ kmicorp . com ;\nrussell @ pennwell . com\ncc : kristina _ lund @ enron . net ;\nstinson _ gibner @ ect . enron . net ; vince _ kaminski @ enron . net ;\nearl _ harvey @ enron . net ; tracy _ williams @ enron . net\nsubject : vmi agreements\n>\nhi richard , here is a marked up version from our lawyer .\nplease have your\npeople look at it and if it seems fine make the changes\nand send a signed\ncopy back to me .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications\non 02 / 17 / 00 06 : 21 pm\n- - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | mark |\n| | holsworth @ enr |\n| | on |\n| | |\n| | 02 / 17 / 00 |\n| | 04 : 10 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n- |\n|\n|\n| to : ravi thuraisingham / enron\ncommunications @ enron communications , |\n| gene diers / corp / enron @ enron\n|\n| cc :\n|\n| subject : vmi agreements\n|\n- |\nplease find attached my redlining of the vmi agreelment .\nplease review it and\nsend it to the vendor for their review .\n( see attached file : 2 - 14 - 2000 eula . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.300+0000", "entityId": 6921, "properties": {"text": "Subject: re : guest access to enrononline\ned ,\ni am glad i got it resolved . hope you will like the system .\nvince\nekrapels on 02 / 18 / 2000 03 : 43 : 54 pm\nto : donna greif / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : guest access to enrononline\ndear donna , thanks for your help , and to vince as well . i ' ll access the site\nnext week , when i ' m back from a holiday weekend .\ned krapels\n- - - - - original message - - - - -\nfrom : donna greif [ mailto : donna . greif @ enron . com ]\nsent : friday , february 18 , 2000 10 : 53 am\nto : ekrapels @ esaibos . com\nsubject : guest access to enrononline\nattention : esai\ned krapels\nthank you for your interest in enrononline .\nas requested , following is a guest password that will allow you temporary\nview\nonly access to enrononline . please note , the user id and password are\ncase\nsensitive .\nguest user id : ena 61296\nguest password : tr 84 byl 3\nin order to apply for transaction status with enrononline , your company\nneeds to\ncomplete a password application and registration form for a master user\naccount .\neach master user will be able to grant various levels of access for\nadditional\nusers .\nto obtain a password application and registration form , you can visit\nour\nwebsite at www . enrononline . com and select the ? how to register ? link , or\ncall\nour helpdesk at 713 / 853 - help ( 4357 ) .\nwe hope you will find that enrononline provides an easy and more efficient\nway\nto do business with enron . we look forward to transacting with you online .\nsincerely ,\ndonna corrigan greif\nenrononline helpdesk\n713 / 853 - help ( 4357 )\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.305+0000", "entityId": 6922, "properties": {"text": "Subject: resume and available dates for amy ward\nfyi\nvince\np . s . charlene , i am in london till wednesday . if you have any questions you\ncan contact stinson gibner\nx 3 - 4748 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 21 / 2000\n09 : 49 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n02 / 18 / 2000 01 : 58 pm\nto : vince j kaminski / hou / ect @ ect\ncc : ravi thuraisingham / enron communications @ enron communications\nsubject : resume and available dates for amy ward\nvince : here is an electronic version of amy ward ' s resume .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 18 / 2000\n01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\namy ruth ward on 02 / 18 / 2000 12 : 02 : 22 pm\nto : stinson gibner\ncc :\nsubject : re : thanks for coming to houston\nstinson ,\ni am pleased to hear your hr department is putting together an offer for\nsummer employment . i enjoyed everyone i interviewed with while in houston\nand appreciated you taking the time to put together this day .\nas requested , i am attaching an electronic version of my resume . ( note it\nis a slightly more updated one then the one i gave you earlier . ) it is in\nmicrosoft word format .\nmy dates of availability are wed . , july 5 through fri . , september 15 ( 10\n1 / 2 weeks ) .\nsincerely ,\namy ward\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.313+0000", "entityId": 6923, "properties": {"text": "Subject: re : cv of rodney greene re quantitative positions .\namy ,\nyes , i am interested . i am in london now , but i shall contact him on\nthuirsday .\nvince\namy fitzpatrick\n02 / 21 / 2000 03 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : cv of rodney greene re quantitative positions .\nvince -\nwould you have any interest in this candidate ?\nkind regards -\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy fitzpatrick / lon / ect on 21 / 02 / 2000\n09 : 34 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n18 / 02 / 2000 19 : 50\nto : amy fitzpatrick / lon / ect @ ect\ncc :\nsubject : re : cv of rodney greene re quantitative positions .\nprobably a bit to techy for me but maybe a good fit for vince kaminski in\nhouston research .\nbs\namy fitzpatrick\n17 / 02 / 2000 12 : 52\nto : david port / corp / enron @ enron , david weekes / lon / ect @ ect , steve w\nyoung / lon / ect @ ect , bryan seyfried / lon / ect @ ect\ncc :\nsubject : cv of rodney greene re quantitative positions .\nany thoughts on this candidate ?\nkind regards -\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy fitzpatrick / lon / ect on 17 / 02 / 2000\n12 : 52 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : simon bragg\n17 / 02 / 2000 12 : 36\nto : \" ' amy . fitzpatrick @ enron . com ' \"\ncc :\nsubject : cv of rodney greene re quantitative positions .\nhi amy\na colleague of mine interviewed someone last week who is a phd whose\nbackground is as a developer within catastrophe risk management . he is\nlooking to move into more of a quantitative role which will utilise his\ndeveloping skills and also his statistical and theoretical knowledge as\nwell . the issue is that he is based in chicago and i wondered if there\nwould be any interest from your headquarters there .\nplease find attached his details .\nspeak to you soon .\nregards\nsimon\n- do 075530 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.321+0000", "entityId": 6924, "properties": {"text": "Subject: re : cv of rodney greene re quantitative positions .\nvince -\nwould you have any interest in this candidate ?\nkind regards -\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy fitzpatrick / lon / ect on 21 / 02 / 2000\n09 : 34 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n18 / 02 / 2000 19 : 50\nto : amy fitzpatrick / lon / ect @ ect\ncc :\nsubject : re : cv of rodney greene re quantitative positions .\nprobably a bit to techy for me but maybe a good fit for vince kaminski in\nhouston research .\nbs\namy fitzpatrick\n17 / 02 / 2000 12 : 52\nto : david port / corp / enron @ enron , david weekes / lon / ect @ ect , steve w\nyoung / lon / ect @ ect , bryan seyfried / lon / ect @ ect\ncc :\nsubject : cv of rodney greene re quantitative positions .\nany thoughts on this candidate ?\nkind regards -\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy fitzpatrick / lon / ect on 17 / 02 / 2000\n12 : 52 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : simon bragg\n17 / 02 / 2000 12 : 36\nto : \" ' amy . fitzpatrick @ enron . com ' \"\ncc :\nsubject : cv of rodney greene re quantitative positions .\nhi amy\na colleague of mine interviewed someone last week who is a phd whose\nbackground is as a developer within catastrophe risk management . he is\nlooking to move into more of a quantitative role which will utilise his\ndeveloping skills and also his statistical and theoretical knowledge as\nwell . the issue is that he is based in chicago and i wondered if there\nwould be any interest from your headquarters there .\nplease find attached his details .\nspeak to you soon .\nregards\nsimon\n- do 075530 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.327+0000", "entityId": 6925, "properties": {"text": "Subject: presentation - integrating market risk and credit risk\nall ,\ni will be giving a 40 min presentation on the above topic at the eprm energy\n2000 conference in april . the bulletpoints are :\nbalancing market risk and credit risk to achieve a reliable estimation of\ntotal risk\nincorporating market risk into a credit risk model\ncalculating probability of default using credit risk and market risk\nrefining business practice to reflect credit risk and market risk evaluations\nmy proposed approach is to quickly step through the practical process of\nmodelling credit risk , resulting in measures for expected loss and\ncredit - var ; then show how default probs can be calculated using bond and\nequity data . finally i ' ll describe how credit risk can be mitigated using\ncredit derivatives - plugging enroncredit . com of course .\nany other ideas for broad topics and / or specific points to mention will be\nappreciated . the presentation has to be submitted next week .\nmany thanks ,\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.331+0000", "entityId": 6926, "properties": {"text": "Subject: news article on enron\nindia : enron aftermath\nbusiness line - 02 / 21 / 2000\nabhay mehta\ncopyright ( c ) 2000 kasturi source : world reporter ( tm ) -\nasia intelligence wire\npower play\na study of the enron project\n* publishers : orient longman , new delhi * price : rs . 195\nthe enron power project at dabhol in ratnagiri district of maharashtra has\nbeen mired in nationwide controversy ever since the\ninception of the project proposal in 1992 ; and the sordid tale ends only\nin 1997 , with the supreme court of india refusing to even\nadmit an appeal against the bombay high court decision , of december 1996 ,\nwhich while commenting that \" this case has\nhighlighted to the people as to how even after 50 years of independence ,\npolitical considerations outweigh the public interest and\nthe interest of the state and to what extent the government can go to\njustify its actions not only before the public but even before\nthe courts of law \" - yet dismissed a public interest petition against the\nproject on the ( purely technical ) ground of res judicata , even\nthough new facts , new arguments , new evidence of the violation of the laws\nof the land had been advanced by the petitioners .\nthe fact that the fresh violations of the law were not even considered and\nrecorded , despite the petitioners adducing the required\nevidence , can only be termed as strange , perhaps bizarre .\nabhay mehta ' s simple , factual documentation - in fact a chronological\nnarration - of all events , including the process of bending all\nrules , of subverting the law for promoting a project involving\nunparalleled future liabilities for maharashtra , indeed for the whole of\nindia - is not only masterly , it is devastating .\nit is a short , pithy book which deserves to be read from cover to cover by\nall thinking citizens of this country . barring the\nconcluding chapter , the epilogue , there are no personal comments , only\nfacts , disseminated from the original papers , mostly ' secret '\ndocuments .\nall documentation has been carefully , faithfully recorded , including\nextracts from supposedly ' top secret ' minutes of cabinet\ncommittee meetings ; and the specific violations of the law ( which were\nopposed by a few public spirited civil servants , much to\ntheir disadvantage ) have been pointed up . apart from an introductory\n' primer on electricity ' - introduced for the benefit of the\nlayman , explaining some technical issues relating to electricity\ngeneration , transmission and distribution - and the background of the\nevents of 1991 , the foreign exchange crisis , and the aftermath of the\ncrisis , the other fifteen chapters , three appendices and fourteen\nannexes of the small book ( of 226 pages ) packs in an enormous volume of\nfactual information . the strange saga of the enron\nproject , and the sheer magnitude of the future problems this one single\nproject poses for the country , need to be briefly recounted\nhere , for essentially , it is the coming generation which would have to\nface the problem .\nthe mseb has contracted to buy - and if not used , to pay for - 2000 mw of\nelectricity ( for a period of 20 years ) from the\ndabhol power company ( the legal entity set up by enron , as an unlimited\nliability company registered in india , through a maze of\nintricate crossholdings of equity by half a dozen or more ' front '\ncompanies registered in various tax - free havens .\nabhay mehta has indicated the total payments to enron over 20 years amount\nto $ 35 billion ( at 1998 exchange rates , around rs .\n1 , 25 , 000 crores ) over the life of the project . one must record that : ( a )\ncrude oil / oil product prices have as of writing , more than\ndoubled since the above calculations were made . a per the ' doctored '\nfigures presented by the company ( and its advocate ) , the\ncharge per unit of electricity supplied , at the 1998 level of prices , was\nto 4 . 39 cent ( per unit ) as ' capacity charge ' and 3 . 43 cents\n( per unit ) for ' energy costs ' .\nthe former is indexed to the us inflation rate , and the latter to\ninternational fuel prices . the former may be assumed to have gone\nup only marginally ( rounded to 4 . 4 cents per unit ) ; we know that fuel\nprices have more than doubled internationally over 1999 .\nassuming the ' fuel costs ' to have increased less than 100 per cent - even\nthough international prices have more than doubled - we\nmay assume ( for 1999 ) energy costs of 6 . 85 cents per units , making for a\ntotal payment of 11 . 25 us cents per unit of electricity\nsupplied by the dabhol power company ( dpc ) to mseb in late 1999 , in phase\ni of the project .\nwithin another two years , at 2000 mw , the annual offtake ( for 365 days x\n24 hours / day ) would be 17 . 52 billion kwh ; and at\n11 . 25 cents per unit , the total payment amounts to $ 1 . 97 billion annually ;\nfor 20 years , this workout to $ 39 . 4 billion .\nthis is not counting any further inflation in either energy costs or\ncapacity charge . at today ' s exchange rate - about rs . 43 . 5 per us\ndollar - in rupee terms this works out to wore than rs . 175 , 000 crores ( as\ncompared to rs . 125 , 000 crores indicated by abhay\nmehta ) . this is the cost to mseb in rupee ; and to the country in foreign\nexchange as payment to just one project authority , for\nsupply of part of the power required in maharashtra .\nthe really significant point to note in this connection is that this\npayment - and considerably more , depending on ( a ) future increase\nin ' capacity charges ' depending on us inflation rate , and international\nprices of lngaphtha ( for ' fuel costs ' ) , and ( b ) depreciation of\nthe exchange rate of the rupee vis - a - vis the us dollar - is obligatory ;\nthe assets of the mseb , the maharashtra government\nindeed , all assets of the government of india ( present and future ) are\nmortgaged to enron , by way of sovereign guarantees\nextended by both governments .\nthe other significant point in this connection is that - as predicted by\nall independent indian experts as well as the world bank - the\nenron project he forced the mseb to cut its offtake of tata electric\ncompany ' s and its own much cheaper thermal power\nalready ; in a postscript dated august 1999 , abhay mehta has indicated that\nalready , the mseb had stopped buying between 200\nand 250 mw of power from tata electric ( available at rs . 1 . 80 per unit )\nand has had to backdown its own chandrapur thermal\npower station ( cost of this power being rs . 1 . 20 per unit ) , while forced\nto buy more expensive enron power at rs . 5 per unit .\nthe loss to mseb on this count alone comes to rs . 460 crore per year .\nthis had in fact , been predicted earlier even by the world bank .\nit is pointless here to go into the details of how precisely all this was\ncontrived , by a deliberate campaign of ' disinformation ' , of\nblatant lies , of sidelining of expert opinion , not only of independent\nexperts but also the goi ' s own official advisers in this matter ,\nnamely , the central electricity authority as well as that of the world\nbank , which was resolutely opposed to this project . the\ndetailed facts , the letters exchanged in the above context , the pressure\ntactics adopted , the flouting of all procedures norms , even\nstatutory provisions of the electricity ( supply ) act , are all carefully\ndocumented by abhay mehta .\nmehta correctly concludes : \" we frequently blame external agencies - like\nthe world bank - for all our problems , when , as a\nmatter of fact , we ourselves are our own worst enemies . in the instant\ncase , the world bank not only advised the government of\nindia against the project , it stood resolutely firm in its assessment of\nthe total inadvisability of this project . in fact , one must note\nhere that in 1996 , neighbouring pakistan , which had entered into a\nsomewhat similar mou with enron , cancelled the project ( and\nthe power purchase agreement with enron ) , for a $ 670 million , 782 mw\nresidual oil - fuelled power plant , even though that\nagreement had stipulated enron power supply at a fixed rate of 6 . 4 us\ncents per kwh over a 30 year period . ( note the\nestimated rate of 11 . 25 cents per kwh for dabhol power for the mseb in\ndecember 1999 , which works out to around rs . 5\nper unit ) .\none could go on ; but one must leave the reader to go through abhay mehta ' s\ncrisp , factual , matter of fact narration of the enron\nsaga , and switch over to the point made by him in the epilogue to the\nstory , about ' the next round of scams ' .\nfor quite some time , the ruling elite in india has been intent on\n' privatising ' all public enterprises ; and even ' utilities ' are no\nexception . the ' unbundling ' of infrastructure with a view to privatisation\nof all the ' profitable ' segments . all this - as per the current\n' disinformation campaign ' - is supposedly in the interest of\nrationalisation and greater efficiency of poorer supply .\nthe author has referred in this context to the acquisition from the\ngovernment - by the torrent group - of the ahmedabad and\nsurat electricity companies at less than one - tenth of the market value of\nthe assets of thee facilities . again , much like the enron\nsaga , all objections by the finance department of the gujarat government\nwere overruled .\nand , abhay mehta has predicated that this onslaught - the break - up of\npower utilities into three segments , generation , transmission\nand distribution , - with a view to their privatisation is likely to be the\nnew thrust by the ruling elite , for reasons that do not require to\nbe spelt out .\nthough mehta had the examples of the torrent group takeover of ahmedabad\nand surat electricity companies , and of the break\nup of the orissa state electricity board before him , yet his statement can\nbe stated today to be prophetic ; the upseb is now on\nthe firing line . the recent strike by the workers and engineers of the\nupseb in protest of the announced up government decision\nto trifurcate the upseb ; and the union minister of power , mr . rangarajan\nkumaramangalam ' s statement that the upseb is a\nloss making , inefficient unit and that privatisation of the facilities\nafter the trifurcation - need to be noted .\nthat 40 per cent of the dues of the upseb are from the up government ; that\ntariffs for up electricity supply are fixed by the up\ngovernment and not by the upseb ; that the upseb does not have the cash\neven for routine maintenance as a result of the above\n- these are facts that nobody is prepared even to consider . that the\nremedy for upseb lies in a different kind of reform and\nrestructuring , is not even to be debated . the whole idea is to privatise\nthe profitable segments , and to leave the public sector entity\nwith all the problem areas , including rural energy supply . it is against\nthis background that abhay mehta ' s book needs to be widely\ndisseminated , read , and its implications understood .\nwhat is at stake is not a ' utility ' here or a psu there . what is at stake\nis the future of some 80 per cent of the have - nots in this\ncountry .\nwhat is at stake is the ' pillory ' of the assets of the nation for private\naggrandisement .\narun ghosh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.336+0000", "entityId": 6927, "properties": {"text": "Subject: re : aiesec polska - eurolds 2000\ndrogi panie andrzeju ,\nprosze powolac sie na mnie .\nw . kaminski\nandrzej wodnicki on 02 / 22 / 2000 04 : 02 : 42 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : aiesec polska - eurolds 2000\ndrogi panie kaminski !\nbardzo przepraszam za klopot . wiem , ze jest pan niezmiernie\nzajetym czlowiekiem . jednak chcialem zapytac sie pana o jeszcze\njedna kluczowa dla nas sprawe , ze wzgledy na termin naszego\nwydarzenia - 7 marzec 2000 .\nmianowicie , czy byloby mozliwe , aby w\nrozmowie z panem astramowiczem powolac sie na pana .\nwydaje mi sie , ze bardzo by nam pana nazwisko pomoglo .\nbardzo liczymy na pana pomoc ,\npozdrawiam\nandrzej wodnicki", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.340+0000", "entityId": 6928, "properties": {"text": "Subject: new recruit : matthew williams work and training plan\nattached . those in the us please feel free to resize the document to your\nprinter ' s content .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.345+0000", "entityId": 6929, "properties": {"text": "Subject: re : signature ' s\nkevin ,\ni would like to see the expense reports to monitor\nthe rate at which we approach our group budget limits .\nthanks .\nvince\nkevin g moore\n02 / 22 / 2000 08 : 48 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\ncc :\nsubject : signature ' s\nhello everyone ,\nstarting today , 2 / 22 / 00 mike roberts signed a expense report .\nvince , i need to know from you if this is okay and do you want to see\nthem ?\nalso shirley , if mike signs for anything else other than a expense report ,\ni will pass it by your desk whereby you can know exactly what it is .\nthanks\nkevin moore\nplease inform . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.349+0000", "entityId": 6930, "properties": {"text": "Subject: h - ib visa application\nchonawee : further to our telephone conversation this morning , i am attaching\na visa questionnaire that i need you to complete and return to me\nimmediately , together with the documents listed at the bottom of the form .\nas explained , i will send everything to our attorney ' s office in the hope\nthat they can file for the h - ib prior to reaching the cap , but in the event\nthis does not go through , your h - ib will not be available until october ,\n2000 . as your opt does not expire until november 1 , 2000 , we will still have\nthe opportunity to get you an h - ib before your opt runs out .\nplease bring these documents to me in eb 3694 .\nmargaret daffin x 57843", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.354+0000", "entityId": 6931, "properties": {"text": "Subject: re : kmi end - user license agreement ( enron ' s agreement for project\nservices\nhi gene , looks like you are dealing with the subject . thanks for moving this\nforward . kmi is dancing around relatively minor issues that i think we should\nbe able to overcome . essentially , the issue is that we will not resell their\ndatabase or misrepresent it . they want to put in all this restriction about\nnot using it for trading , exchange , etc . stretches our possible usage of this\ndatabase . it appears from your e - mail that the attament therein is our\nstandard agreement that we get our vendors to sign . at this point , i am\nhappy with whatever it takes to get those guys to close the deal .\nthank you very much for the prompt service ,\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.359+0000", "entityId": 6932, "properties": {"text": "Subject: re : rotation information\nmartin , i am working right here with jim irvine and discussed your rotation .\nyou will report to me , with ' client ' reporting role to jim where you will do\nmost of the work . you will remain in houston working on the 19 th floor for\nnow until we find you a place on either 44 th or 45 th . jim irvine will be\nasking john griebling for network planning office space in houston . you will\nget an office in that area . jim will work from portland but will hold an\noffice in houston . until the office space on ebs floors happens , you need to\nremain on the 19 th . we will allocate you to jim ' s & john griebling ' s group\nfull time . you will have ebs computers , cell phone , etc . to be fully\nconnected on the ebs side . you will work initially on the trffic engineering\nside to support day - to - day fire - fighting like analysis . i will supervise you\nwith repect to guidance on what to do etc . . . jim will direct what will get\ndone . both jim and i will support traffic engineering work but jim is\nultimately responsible for deliverables .\nour technical operational research specialists ( samer , chonawee , and two\nothers from stanford & mit ) will focus on next generation algorithms for ebs .\nsuch an algorithm is currently being specified . this will depend on how the\ntrading market will develop . we know that existing off - shelf codes won ' t be\nsufficient . the development period for these algorithms will anywhere from 3\nmonths to 9 months depending on the complexity . this is in - line with when ebs\nanticipates trade volumes to really pickup . i hope this helps .\nregards ,\nravi .\nmartin . lin @ enron . com\n02 / 23 / 00 02 : 06 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc :\nsubject : rotation information\nravi ,\nthe associate program has a procedure that requires information on new\nrotations . i just wanted to clarify some details of my rotation to ebs , esp\ngiven the retained ties to research . will jim irvine be my supervisor with\nebs\nbeing the company billed for my time ? that is , will my connection to research\nbe informal and understood , rather than having some actual reporting function ?\nthis is with respect to the a / a pool .\nthanks ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.364+0000", "entityId": 6933, "properties": {"text": "Subject: caida ' metrics ' wg meeting , 2 mar 00\nhi vince , i ( and possibly stinson as well ) will be attending this initial\nmeeting looks like kick - off type of meeting . i will try to attend to drill\ninto what they can offer and what we have committed . make sure that we get\nfrom the arrangement n john griebling & jim irvine ' s perspective and ours .\ni ' ll fire off additional information as i get them .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 23 / 00 10 : 51\nam - - - - -\nnevil @ ipn . caida . org\n02 / 22 / 00 12 : 16 pm\nto : members @ caida . org\ncc : nevil @ caida . org , ( bcc : ravi thuraisingham / enron communications )\nsubject : caida ' metrics ' wg meeting , 2 mar 00\nhello caida members :\nupdate on the caida working groups . .\na . ' metrics @ caida . org ' mailing list\nb . wg charters , meeting on 2 mar 00\na . ' metrics @ caida . oeg ' mailing list\ni ' ve set up a single mailing list with this name , for discussions on wg\ntopics , passive measurements , etc . to start with it ' s a moderated list\n( i . e . you have to be a member of the list to post to it , you join by sending\nemail to nevil @ caida . org asking to be added to the ' metrics ' list ) , with\nthe following initial set of members :\nsue moon ,\nbrett watson ,\nhans - werner braun ,\nmatt mathis ,\nian graham ,\ntony mcgregor ,\njohn cleary ,\njoerg micheel ,\nkevin thompson ,\njambi gambar ,\ndaniel mcrobb ,\ndavid moore ,\nsean mccreary\nrene hatem ,\nshankar rao ,\ncindy bickerstaff ,\njeff sedayao ,\nsteve feldman ,\nbill woodcock\ntwo questions for caida members :\ni . who else would you suggest be invited to join the list ?\nii . should the list continue to be moderated , or should it\nbe changed into an open list ?\nb . ' working group ' developments\nfollowing the caida members ' meeting on 8 feb 00 i ' ve attempted to define\nexactly what problem we could consider getting an ietf working group\nstarted on . my summary of the existing ietf wgs with interests in metrics\nis given below ( appendix b ) , but it seems unlikely that we could get a\nnew ietf wg started .\ni believe that we should instead run a single caida working group\non ' network metrics , ' rather than the two proposed earlier . my draft\nof its charter is appended below . it focuses on producing educational\nmaterial about network measurement , and on developing new metrics - these\nwere the two areas of greatest interest amongst the caida members .\nthe wg co - chairs are\nsue moon ( sprintlabs ) and brett watson ( mfn / abovenet )\nyou are invited to attend the first wg meeting .\nthe agenda is as follows . .\nagenda for caida wg meeting on : thursday 2 mar 00\n- - - - - - - - - - - - - - - - -\n10 am - 4 pm , abovenet , downtown sjc ( see below for details )\n- - - - - - - - - - - - - - - - - - - - - - - -\n1 . review wg charter\n- is it reasonable as set out in the draft ?\n- what should be removed or added ?\n2 . work through revised charter in detail\n- identify the work required for each part\n- determine who ' s willing to work on it\n- attempt to determine delivery times\n3 . discussion of new metrics\n- first attempt at making a list of metrics to be considered\n4 . anything else ?\nlocation : abovenet is located in the knight - ridder building ,\nattached to the fairmont hotel complex . the address is\n50 w . san fernando st .\nsan jose , ca 95113\nrsvp : to help us with organising the meeting , please send email to\nnevil @ caida . org telling us how many will attend from\nyour organisation .\ncheers , nevil\nnevil brownlee visiting researcher\nphone : ( 619 ) 822 0893 caida , san diego\ncaida network metrics working group : draft charter , tue 23 feb 00\ngoals :\n1 education\n+ faq on what does ' measuring the internet actually mean ? '\n- why measure anyway ?\n- what can be measured ? how ? where ? by whom ?\n- active vs passive , end - to - end vs provider network only ,\napplication vs transport layer\n- rating schemes : provider ' net performance ' pages , internet\n' weather map ' s , keynote , etc .\npublish as caida web pages , or maybe as an info rfc\n+ survey paper on metrics and internet measurement\n- current measurement efforts ( surveyor , ripe test traffic ,\namp , iperf , at & t , keynote , skitter , . . . )\n- current tools\npublish as caida web pages\n2 service metrics\n+ define new metrics\n- taxonomy of current metrics ( ippm , rtfm , itu , . . )\n- summary of metrics used for current services\n- gather information / ideas about new / emerging services ,\nespecially diffserv - based ones\n- make list of new metrics , either to improve measurement of\nexisting services or to support new ones\n[ list of ' metrics ' questions ( appendix a ) goes here ]\n+ organise experimental implementation / testing of tools\nfor new metrics\n+ make recommendations on implementation\n- define core set of ' really useful ' metrics\n- recommend that caida implement these as a\n' service measurement toolkit '\n+ publish new metric definitions through ippm or rtfm\n+ produce document \" measurement requirements for hardware / software\nvendors . \" publish on caida web pages\nappendix a : questions from the earlier draft caida wg charters\na . what types of network - and transport - layer metrics are being\nused by isps in engineering and operating their networks ?\nby customers for verifying service guarantees ?\nb . what new services are being ( or are likely to be ) offered , e . g .\ndiffserv ? is there a need for higher - layer metrics to better\nmonitor and manage these services ?\nc . will these new differentiated transport - and\napplication - layer services need new metrics ?\nd . how can the service metrics be measured in a multi - isp\nenvironment ?\ne . how can customers verify these measurements ?\nf . what requirements would service measurement introduce for\nequipment vendors ?\ng . how relevant are specific techniques ( e . g . which flow ) and\npoints of measurement to specific users ( isp , customer , etc . )\nrequirements ?\nh . how do these metrics relate to network behavior as perceived\nby users ? how do they correlate with performance ?\nappendix b : background on the ietf working groups\n* rtfm wg : realtime traffic flow measurement\nrtfm is concerned with passive measurements of two - way traffic flows ,\nspecified in terms of their end - point attributes . its primary goal was\nto produce an improved traffic flow measurement model considering at least the\nfollowing needs :\na . wider range of measurable quantities , e . g . those\nrelating to ipv 6 , and to class of service\nb . simpler ways to specify flows of interest\nc . better ways to control access to measured flow data\nd . strong focus on data reduction capabilities\ne . efficient hardware implementation\n* ippm wg : ip performance measurement\nthe ippm wg charter is to develop a set of standard metrics that can\nbe applied to the quality , performance , and reliability of internet\ndata delivery services . these metrics will be designed such that they\ncan be performed by network operators , end users , or independent\ntesting groups . it is important that the metrics not represent a value\njudgement ( i . e . define \" good \" and \" bad \" ) , but rather provide unbiased\nquantitative measures of performance .\nrfcs\nframework for ip performance metrics ( rfc 2330 )\nmetrics :\nconnectivity ( rfc 2678 ) ,\none - way delay ( rfc 2679 ) , one - way packet loss ( rfc 2680 )\nround - trip delay ( rfc 2681 )\ni - ds\nbulk transfer capacity ( 2 x )\ninstantaneous packet delay variation\none - way loss patterns\n* other wgs\nthe rmonmib wg is thinking about ' application performance\nmeasurement . ' this is clearly a hard problem ( e . g . does this just\nmean response - time measurement , can it be done by passive means , how\nshould the measurements be presented , etc . ) .\nin short\n- rtfm provides a good distributed measuring system for traffic\nvolumes\n- ippm has concentrated on transport - layer behaviour of the\ncurrent , best - effort internet .\n- rmonmib is beginning to consider application - layer measurement\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.369+0000", "entityId": 6934, "properties": {"text": "Subject: follow up\nmark ,\nover the past several months vince and paul have had some contact with the\nauthors of this upcoming risk management book . vince and his group are\nwriting a chapter and the forward , and enron australia will contribute\naus $ 10 , 000 in support of the book . there are a number of apparent legal\nissues associated with completing / publicizing this book and marge suggested\nthat this is an area of interest to you . i handle public relations for\napachi and will try to contact you within the next couple of days to seek\nyour guidance .\nthanks ,\njohn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john ambler / enron _ development on\n02 / 23 / 2000 08 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlacima on 02 / 21 / 2000 12 : 29 : 28 pm\nto : john ambler / enron _ development @ enron _ development\ncc :\nsubject : follow up\nhi john ,\nnice talking with you last week .\nthe following are some of the items that we discussed during own phone\ncall :\n- attached is a copy of the introduction of the book . section 1 . 2\nprovides a content overview\n- we are planning to market the book globally , and feel the market size\nis\naround 3000\n- the authors names are dr chris stickland and dr les clewlow\n- mini bio of authors : dr . les clewlow and dr chris strickland hold\nassociate research positions at both the school of finance and economics ,\nuniversity of technology , sydney and the financial options research centre ,\nuniversity of warwick , uk . together , they have over 20 years combined\nexperience in the financial and energy derivative markets and have\npublished many articles in academic and trade journals . they are the\nauthors of the book \" implementing derivatives models \" ( wiley , 1998 ) and\neditors of \" exotic options : the state of the art \" ( itp , 1998 ) . their\nforthcoming book \" energy derivatives : pricing and risk management \" is due\nto be published during the second quarter 2000 . currently , their interests\nare concentrated in the energy derivatives area , where they have developed\na wide range of pricing tools for electricity options and other energy\nderivatives .\ncould you please provide responses to the following :\n- would it be ok if we use the logo for enron , the global company ?\n- what will you need from us before printing ? if you need to review the\nbook jacket or the manuscript , please let us know .\n- if enron needs to review anything , how long will it take for enron to\nturn it around ?\n- we are putting together a leaflet advertising our energy course . we\nwould like to mention the forthcoming book and that it is being sponsored\nby enron . . . is this ok with you ? no logo will be used .\n- we would like to produce a leaflet / brochure advertising the book as\nwell , but this will follow after we have the book cover designed . should i\nwork with andrew at stokes account ex . on this ?\n- how do we handle the money side of things ?\nthe manuscript is not fully completed , but we may begin typesetting any day\nnow . i think it will take about 3 - 4 weeks to typeset and then another 3\nweeks to print and bind . sometime in late april ?\nit looks like we will be in houston around the 7 th of march . . . will you be\naround either the 7 th or 8 th ?\ni hope you are enjoying your time at home .\nlet me know if you need anything further .\ntake care ,\njulie\n- intro . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.374+0000", "entityId": 6935, "properties": {"text": "Subject: associate and analyst program contacts\nassociate and analyst programs ( the \u0001 & programs \u0001 8 ) are administered globally .\nlisted below is the contact information for the offices that utilize the\nprograms . please do not hesitate to contact the individuals identified with\nany questions , placement needs or hiring needs .\nhouston / portland / australia\nceleste roberts , program director . manages the daily operations . her\nassistant is dolores muzzy and can be reached at ext . 3 - 6245 .\nginger gamble . overall responsibility for associate recruiting . candidates\ninterested in the associate program can forward their inquiries and resumes\nto ginger at ebl 191 . ginger can also be reached at ext . 3 - 7583 or by e - mail\nat ginger . b . gamble @ enron . com .\nshelly jones . overall responsibility for analyst recruiting . candidates\ninterested in the analyst program can forward their inquiries and resumes to\nshelly at ebl 175 . shelly can also be reached at ext . 3 - 0943 or by e - mail at\nshelly . jones @ enron . com .\njana giovannini . responsible for operations and expenses . jana can be\nreached at ext . 3 - 9233 or by e - mail at jana . giovannini @ enron . com . jana is\nlocated at ebl 187 .\nshannon rodgers . responsible for associate rotations . associates and hiring\nmanagers who need information on rotations and associate availability should\ncontact shannon at extension 3 - 3853 or by e - mail at shannon . rodgers @ enron . com\n. shannon is located at ebl 186 a .\nelizabeth boudreaux . responsible for analyst rotations . analysts and hiring\nmanagers who need information on rotations and analyst availability should\ncontact elizabeth at ext . 3 - 6176 or by e - mail at\nelizabeth . boudreaux @ enron . com . elizabeth is located at ebl 186 b .\nargentina / bolivia / brazil\nmiguel padron . responsible for associate and analyst rotations , operations\nand expenses . his assistant is rosely nassar and can be reached at 5503 - 1243 .\ndisneau santiago . responsible for associate and analyst recruitment .\ndisneau \u0001 , s assistant is marlene muniz and can be reached at 5503 - 1244 .\ncalgary\ndawn doucet . responsible for associate and analyst recruiting and rotations .\ncandidates interested in either the associate or analyst programs can forward\ntheir inquiries and resumes to dawn in the calgary office . dawn can be\nreached at ( 403 ) 974 - 6724 , the fax number is ( 403 ) 974 - 6985 or by e - mail at\ndawn . doucet @ enron . com .\nlondon\nelizabeth barrett , director of european program . she can be reached at + 44\n20 7783 7701 .\nsophie kingsley . responsible for day to day management of the european\nprogram , both pre / post hire , including associate and analyst rotations and\ninternational transfers . sophie can be reached at + 44 20 7783 7975 or by\ne - mail at skingsley @ enron . com .\nindia\nranen sengupta and dick liebert . responsible for associate and analyst\nrecruiting and rotations . candidates interested in either the associate or\nanalyst programs can forward their inquiries and resumes to ranen sengupta or\ndick liebert . ranen can be reached at ext . 6 - 7967 and his e - mail is\nranen . sengupta @ enron . com . dick leibert \u0001 , s extension is 6 - 7145 and his e - mail\nis dick . liebert @ enron . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.378+0000", "entityId": 6936, "properties": {"text": "Subject: reminder : all - employee meeting\nthis is a reminder to join ken lay , jeff skilling and joe sutton for an\nall - employee meeting hosted in the london office on monday , feb . 28 , 2000 .\nthe meeting will begin at 4 p . m . london time ( 10 a . m . houston time ) . ken ,\njeff and joe will discuss enron ' s year - end financial and operating results\nand the company ' s outlook for 2000 and beyond .\nusing enron broadband services ' video streaming capabilities , the meeting\nwill be streamed live to the desktop for employees in houston , omaha ,\nportland , calgary , new york , stockholm , amsterdam and frankfurt . to view the\nmeeting , you must have ip - tv and a sound card installed on your computer . if\nyou are not able to view the meeting live using ip - tv , a videotape will be\navailable after the meeting . u . k . and european employees may contact mary\ngopalan for a copy of the video . u . s . and other international employees may\ncontact mary clark by email to reserve a copy .\nif you plan to watch the meeting using ip - tv , you can test your ip - tv prior\nto the meeting using the instructions below . if you experience technical\ndifficulties , please contact your pc help desk .\nfollowing are instructions for launching ip - tv by company lan and / or location :\nei employees in three allen center -\nstart menu . . . . programs . . . general information . . . iptv icon\nees and omaha employees -\nstart menu . . . . programs . . . cisco iptv viewer . . . iptv icon\nena houston , corp houston , new york , calgary and portland ( does not include\nebs and pge in portland )\nstart menu . . . programs . . . . iptv viewer icon\nlondon -\nmenu option : start . . . programs . . . utilities . . . iptv viewer /\nfrankfurt / stockholm / amsterdam -\nstart menu . . . programs . . . cisco iptv viewer . . . cisco iptv viewer\nfor the first time , the question and answer session will be open to all\nemployees worldwide using espeak . you can submit your questions in advance\non the espeak web site at ethink . enron . com or during the meeting from 4 to 6\np . m . london time ( 10 a . m . to noon houston time ) . ken , jeff and joe will\nattempt to answer as many questions as possible in the time available . all\nespeak questions and those submitted by london employees during the meeting\nwill be included in an espeak transcript following the meeting .\nmark your calendar for this global employee communications event . see you\nthere .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.383+0000", "entityId": 6937, "properties": {"text": "Subject: re : options training classes\nfor those of you who did not see the memos from jeff that went out on\nfebruary 17 th . & february 22 nd . regarding the upcoming options training\nclassed , i have attached both memos below :\ni have the books at my desk for those of you that have not received your\ncopy .\nthere will be a third memo in the next couple of days with regards to the\nlocation of the classes .\nif you have any other questions , please feel free to contact me .\n- brenda\nx 31914", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.388+0000", "entityId": 6938, "properties": {"text": "Subject: re : sevil yaman\ngreat ! let me know how she performs .\nat 02 : 54 am 2 / 23 / 2000 - 0600 , you wrote :\n>\n>\n> hi michelle ,\n>\n> thanks for your input . we are moving ahead to offer sevil a summer\n> internship with us .\n>\n> vince\n>\n>\n>\n>\n> michelle michot foss on 02 / 21 / 2000 05 : 29 : 36 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : sevil yaman\n>\n>\n>\n> hi - - one of the ph . d . - econ students over here , sevil yaman , has been\n> talking with you . she ' s interested in a summer internship that will help\n> her \" ground \" her dissertation . with our help , sevil has become totally\n> corrupted ( ! ) . i have successfully impacted her view of the world re .\n> academic economics v . industry . she would like her diss to be as relevant\n> as possible , and with that in mind already moved from a pure electricity\n> transmission pricing topic to focusing more on congestion management and\n> trying to address practical market problems . she has in mind to work in\n> industry when her degree is finished . i recommend her to you highly . she\n> is extremely bright and competent , needs some guidance and input to get\n> going in the right direction to finish up . talk soon - -\n>\n> michelle\n> * * * * * * * * * *\n> \" this e - mail contains information which is privileged , confidential and\n> protected\n> from disclosure . please do not disclose the contents or take copies without\n> contacting us first . thank you . \"\n>\n> michelle michot foss , ph . d .\n> director , energy institute\n> college of business administration\n> university of houston\n> houston , tx 77204 - 6283\n> tel : 713 - 743 - 4634\n> fax : 713 - 743 - 4881\n> please note our new email addresses !\n> e - mail : mmfoss @ uh . edu\n> web : http : / / www . uh . edu / energyinstitute /\n>\n>\n>\n>\n>\n* * * * * * * * * *\n\" this e - mail contains information which is privileged , confidential and\nprotected\nfrom disclosure . please do not disclose the contents or take copies without\ncontacting us first . thank you . \"\nmichelle michot foss , ph . d .\ndirector , energy institute\ncollege of business administration\nuniversity of houston\nhouston , tx 77204 - 6283\ntel : 713 - 743 - 4634\nfax : 713 - 743 - 4881\nplease note our new email addresses !\ne - mail : mmfoss @ uh . edu\nweb : http : / / www . uh . edu / energyinstitute /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.393+0000", "entityId": 6939, "properties": {"text": "Subject: patricia tlapek\nbrad ,\nas per our previous discussions , vince wanted me to give you the background\non our request to bring patricia tlapek into the research group at the very\ntop end of the manager group . the justification for this was not only her\nextraordinary performance in setting up our technical analysis section but\nalso our reliance on her to build this group and expand its scope .\nthis memo is in response to your request today to document our reasoning .\nthis past year patricia was extremely successful in building internal\nclientele for her products and recommendations - she is now widely relied on\nby gas , power , crude and equity marketers , as well as traders from the\ncalgary office . in addition , she developed and presented seminars to bring\ntraders up to speed on techniques in technical analysis .\nalso this last year patricia built and populates daily the research group ' s\nintranet site on technical analysis .\nas a crowning achievement ( but just the beginning ) , patricia was given the\nauthority to actually trade natural gas as jeff shankman , managing director ,\nauthorized her book for technical analysis trading .\ncurrently , we are proceeding with the expansion of her group personnel - wise\nand she is agressively working to gain authority from other groups to trade\nlive books on other energy commodities and energy - related equities .\nfor these reasons , we want to peg patricia ' s salary at the top of the pay\nscale .\nthanks for expediting this effort .\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.398+0000", "entityId": 6940, "properties": {"text": "Subject: re : loan pc\ncharlotte ,\ni confirmed today with your colleague stuart at x 34073 and he arranged for\nthe cpu to be removed .\nplease call me if you have any questions . thanks !\nmartina x 34327\nvince j kaminski\n24 / 02 / 2000 15 : 28\nto : charlotte baldock / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , anjam ahmad / lon / ect @ ect , martina\nangelova / lon / ect @ ect\nsubject : re : loan pc\ncharlotte ,\ni am back in houston . please , contact anjam ahmad and / or\nmartina angelova . they will be able to help you .\nvince kaminski\ncharlotte baldock\n02 / 24 / 2000 05 : 22 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : loan pc\nvince\ncan you confirm that you will returning the loan pc to it support today\nplease ?\nthanks\ncharlotte", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.402+0000", "entityId": 6941, "properties": {"text": "Subject: re : curves for south america\nremi ,\nno problem . my assistant shirley crenshaw will call you friday to set up a\nmeeting .\nvince\nremi collonges @ enron _ development\n02 / 24 / 2000 09 : 10 am\nto : vince j kaminski @ ect , grant masson @ ect\ncc :\nsubject : curves for south america\nvince and grant ,\ni have been made responsible for all gas and power curves in south america\n( plus books development , reporting , . . . . . . . ) . i have somewhat started but ,\nsince i am new on the job , i ' d love to receive advice , guidance ( and at some\nstage help ) from you . would you be available for a meeting next week ,\npreferably thursday or friday ? i ' m planning to be in houston these days .\nremi collonges\n( 55 ) 11 5503 1200", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.407+0000", "entityId": 6942, "properties": {"text": "Subject: re : caida ' metrics ' wg meeting , 2 mar 00 ( fwd )\nhi amy , jim irvine ( ebs head of network planning ) and i ( team lead , ebs\nresearch ) will attend the meeting . we will have our assistances ( christine\nblair & kristy carnes , respectively ) arrange the trip . we will plan to come\nin the night before and return on march 2 , 00 .\nalso , either vince kaminski ( md and head of enron research ) or stinson gibner\n( vp , enron research ) may also attend . they will let me know shortly if they\nplan to attend .\nregards ,\nravi .\np . s . our company name has been changed to enron broadband services\nkristy , christine please make the appropriate travel arrangements . the place ,\ntime , etc . are listed .\namy @ sdsc . edu\n02 / 24 / 00 07 : 07 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc :\nsubject : caida ' metrics ' wg meeting , 2 mar 00 ( fwd )\nhi ravi ,\ni wanted to follow up directly with you and see if you or anyone at enron\nhad any interest in participating in the proposed caida \" metrics \" working\ngroup meeting ?\nplease let me know .\namy e . blanchard\ncaida\n% % % % % % % % % % % % %\ne - mail : amy @ caida . org\nphone : ( 858 ) 534 - 8338\nfax : ( 858 ) 534 - 5117\nb . wg charters , meeting on 2 mar 00\ni believe that we should instead run a single caida working group\non ' network metrics , ' rather than the two proposed earlier . my draft\nof its charter is appended below . it focuses on producing educational\nmaterial about network measurement , and on developing new metrics - these\nwere the two areas of greatest interest amongst the caida members .\nthe wg co - chairs are\nsue moon ( sprintlabs ) and brett watson ( mfn / abovenet )\nyou are invited to attend the first wg meeting .\nthe agenda is as follows . .\nagenda for caida wg meeting on : thursday 2 mar 00\n- - - - - - - - - - - - - - - - -\n10 am - 4 pm , abovenet , downtown sjc ( see below for details )\n- - - - - - - - - - - - - - - - - - - - - - - -\n1 . review wg charter\n- is it reasonable as set out in the draft ?\n- what should be removed or added ?\n2 . work through revised charter in detail\n- identify the work required for each part\n- determine who ' s willing to work on it\n- attempt to determine delivery times\n3 . discussion of new metrics\n- first attempt at making a list of metrics to be considered\n4 . anything else ?\nlocation : abovenet is located in the knight - ridder building ,\nattached to the fairmont hotel complex . the address is\n50 w . san fernando st .\nsan jose , ca 95113\nrsvp : to help us with organising the meeting , please send email to\nnevil @ caida . org telling us how many will attend from\nyour organisation .\ncheers , nevil\nnevil brownlee visiting researcher\nphone : ( 619 ) 822 0893 caida , san diego\ncaida network metrics working group : draft charter , tue 23 feb 00\ngoals :\n1 education\n+ faq on what does ' measuring the internet actually mean ? '\n- why measure anyway ?\n- what can be measured ? how ? where ? by whom ?\n- active vs passive , end - to - end vs provider network only ,\napplication vs transport layer\n- rating schemes : provider ' net performance ' pages , internet\n' weather map ' s , keynote , etc .\npublish as caida web pages , or maybe as an info rfc\n+ survey paper on metrics and internet measurement\n- current measurement efforts ( surveyor , ripe test traffic ,\namp , iperf , at & t , keynote , skitter , . . . )\n- current tools\npublish as caida web pages\n2 service metrics\n+ define new metrics\n- taxonomy of current metrics ( ippm , rtfm , itu , . . )\n- summary of metrics used for current services\n- gather information / ideas about new / emerging services ,\nespecially diffserv - based ones\n- make list of new metrics , either to improve measurement of\nexisting services or to support new ones\n[ list of ' metrics ' questions ( appendix a ) goes here ]\n+ organise experimental implementation / testing of tools\nfor new metrics\n+ make recommendations on implementation\n- define core set of ' really useful ' metrics\n- recommend that caida implement these as a\n' service measurement toolkit '\n+ publish new metric definitions through ippm or rtfm\n+ produce document \" measurement requirements for hardware / software\nvendors . \" publish on caida web pages\nappendix a : questions from the earlier draft caida wg charters\na . what types of network - and transport - layer metrics are being\nused by isps in engineering and operating their networks ?\nby customers for verifying service guarantees ?\nb . what new services are being ( or are likely to be ) offered , e . g .\ndiffserv ? is there a need for higher - layer metrics to better\nmonitor and manage these services ?\nc . will these new differentiated transport - and\napplication - layer services need new metrics ?\nd . how can the service metrics be measured in a multi - isp\nenvironment ?\ne . how can customers verify these measurements ?\nf . what requirements would service measurement introduce for\nequipment vendors ?\ng . how relevant are specific techniques ( e . g . which flow ) and\npoints of measurement to specific users ( isp , customer , etc . )\nrequirements ?\nh . how do these metrics relate to network behavior as perceived\nby users ? how do they correlate with performance ?\nappendix b : background on the ietf working groups\n* rtfm wg : realtime traffic flow measurement\nrtfm is concerned with passive measurements of two - way traffic flows ,\nspecified in terms of their end - point attributes . its primary goal was\nto produce an improved traffic flow measurement model considering at least the\nfollowing needs :\na . wider range of measurable quantities , e . g . those\nrelating to ipv 6 , and to class of service\nb . simpler ways to specify flows of interest\nc . better ways to control access to measured flow data\nd . strong focus on data reduction capabilities\ne . efficient hardware implementation\n* ippm wg : ip performance measurement\nthe ippm wg charter is to develop a set of standard metrics that can\nbe applied to the quality , performance , and reliability of internet\ndata delivery services . these metrics will be designed such that they\ncan be performed by network operators , end users , or independent\ntesting groups . it is important that the metrics not represent a value\njudgement ( i . e . define \" good \" and \" bad \" ) , but rather provide unbiased\nquantitative measures of performance .\nrfcs\nframework for ip performance metrics ( rfc 2330 )\nmetrics :\nconnectivity ( rfc 2678 ) ,\none - way delay ( rfc 2679 ) , one - way packet loss ( rfc 2680 )\nround - trip delay ( rfc 2681 )\ni - ds\nbulk transfer capacity ( 2 x )\ninstantaneous packet delay variation\none - way loss patterns\n* other wgs\nthe rmonmib wg is thinking about ' application performance\nmeasurement . ' this is clearly a hard problem ( e . g . does this just\nmean response - time measurement , can it be done by passive means , how\nshould the measurements be presented , etc . ) .\nin short\n- rtfm provides a good distributed measuring system for traffic\nvolumes\n- ippm has concentrated on transport - layer behaviour of the\ncurrent , best - effort internet .\n- rmonmib is beginning to consider application - layer measurement\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.411+0000", "entityId": 6943, "properties": {"text": "Subject: re : stanford or - summer interns\nravi ,\ni shall leave the decision to stinson and you .\nvince\nravi thuraisingham @ enron communications on 02 / 23 / 2000 11 : 39 : 01 am\nto : stinson gibner / hou / ect @ ect , vince kaminski\ncc :\nsubject : stanford or - summer interns\nhi this is one of the junior phd students that we ' ve visited in stanford .\nare we interested in bringing him to enron research and or ebs research .\ni ' ll have to think about his role in ebs .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 23 / 00 11 : 32\nam - - - - -\nshikhar @ stanford . edu\n02 / 20 / 00 07 : 24 pm\nto : ravi . thuraisingham . enron _ communications @ enron . com\ncc : ravi . thuraisingham @ enron . com , ( bcc : ravi thuraisingham / enron\ncommunications )\nsubject : stanford or - summer interns\nhi ravi :\nplease find attached my resume for the summer internship program . i\napologize for the delay . we actually lost your contact info . please let me\nknow if you will need any additional information and / or a cover letter\nbesides the resume and i can send it right away .\nthanks\nregards ,\nshikhar\n- - - - - - - - - - - - - - - - - - - - - - - -\nshikhar ranjan\nphd student\nmanagement science & engineering\nstanford university ca\n( 650 ) 497 5762\n- resumeo 0 - ene . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.416+0000", "entityId": 6944, "properties": {"text": "Subject: re : mba polish speakers\ndoes he know any of the names identified by sophie ?\nsidney cox\n2000 - 02 - 23 19 : 31\nto : jarek astramowicz / war / ect @ ect , jarek dybowski / war / ect @ ect , krzysztof\nforycki / war / ect @ ect , sophie kingsley / lon / ect @ ect , sophie kingsley / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : mba polish speakers\nvince was in the office today and i mentioned to him the difficulties we are\nhaving in finding good quality polish mbas .\nvince has kindly agreed to make contacts and forward some names to us .\nsid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.422+0000", "entityId": 6945, "properties": {"text": "Subject: ceo meeting with governor johanns\nto margaret and beth ,\nin order to ensure a comprehensive speech to goveror johanns , i am in the\nprocess of compiling some preliminary research on the impacts of energy\nprices on agri - business in nebraska . before i can make a decision of whether\ni can accept this offer to speak , i would like to finish this preliminary\nstudy .\ni need to know the deadline of your request . can you give me a better\nunderstanding as to the duration of the speech and the type of forum in which\ni will be speaking ? should i expect a q & a after the speech ? who will be in\nthe audience ? what companies and ceo ' s will be attending the meeting ? who\nwill be speaking on energy derivatives ? please let me know when you need my\ndecision .\nregards ,\nmaureen raymond - castaneda", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.427+0000", "entityId": 6946, "properties": {"text": "Subject: re : mit offers\nkaren ,\nthe total of 5 offers . i sent you 2 cvs electronically , 2 hard copies to\ncharlene .\npaulo ' s resume will follow .\nvince\nkaren marshall\n02 / 22 / 2000 03 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc : charlene jackson / corp / enron @ enron , ginger b gamble / hou / ect @ ect , celeste\nroberts / hou / ect @ ect\nsubject : mit offers\nvince ,\ndo you want 3 offers extended or 5 ? i just noticed that you plan to fax two\nadditional resumes . if so , when can i expect the additional resumes ?\nkaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen marshall / hou / ect on 02 / 22 / 2000\n03 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkaren marshall\n02 / 22 / 2000 03 : 37 pm\nto : vince j kaminski / hou / ect @ ect\ncc : charlene jackson / corp / enron @ enron , ginger b gamble / hou / ect @ ect , celeste\nroberts / hou / ect @ ect\nsubject : mit offers\nvince ,\ni will handle the offer letters for the candidates . i have the resumes for\ndarten williams and sevil yaman . i know you only provided the e - mail memo\nfor paulo rocha , but i really need his resume in order to capture the\nnecessary information for his offer letter .\nplease have him e - mail it to me at karen . marshall @ enron . com\nthanks ,\nkaren marshall\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.436+0000", "entityId": 6947, "properties": {"text": "Subject: fw : application for open positions within enron\ndear mr . kaminski :\njust wanted to let you know that i have submitted my slightly revised resume\n( attached ) for the following open positions within enron . i am seeking an\nopportunity to have a job interview with the right individuals . i know you\nhave been trying to help me . this is a good time for a meeting with someone\nwithin these departments .\n1 . . credit analyst , spec sr , job # 000010220 , dept : trade credit : tony\nvasut\n2 . . manager , job # 0000102374 , dept : ena consolidated reporting : tony\nvasut\n3 . . director , b 8828 , dept : investments / ventures - broadband services\n4 . . compliance manager , job # 0000102317 , dept : due diligence / asset\nmanagement\ni shall , therefore , appreciate your guidance on how i can come in for a job\ninterview . as you know , i am really interested in working for enron , hence\nrequest for your help .\nthank you .\nsincerely ,\nmaruti d . more , cfa\n1 . .\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : monday , february 07 , 2000 10 : 18 pm\nsubject : re : personal\ndear mr . kaminski :\nthank you very much for meeting with me again today over lunch . i appreciated\nthe opportunity to catch up with you .\nplease find attached my current resume ( both a short and a long version ) . i\nhave worked as a trader , portfolio risk manager , and a stock analyst . i have\ntraded derivatives , bonds , and stocks , and managed insurance and pension\ninvestment portfolios to maximize risk - adjusted returns . let me highlight\nsome of my work experiences .\ntrading and risk management\na . . structured , negotiated , and traded otc interests rate swaps ,\ncross - currency swaps , swaptions , and exchange - traded equity index futures and\noptions . made powerpoint presentations to garp and the uoh on credit\nderivatives .\nb . . developed investment hedging program utilizing exchanged - traded bond\nfutures and interest rate swaps .\nc . . traded and managed pension and insurance fixed income portfolios to\nmaximize total return and funding ratios . bonds traded : treasuries , agencies ,\nmbs / cmos , abs , corporate , yankees , and foreign .\nd . . traded and managed stock mutual portfolios for total return .\ne . . created a computer program to quantify the attribution of total\nreturn for fixed income portfolios relative to market returns .\nf . . programmed investment compliance rules to monitor the management of\ndomestic and global stock , bond and money market mutual funds .\ng . . supervised market risks , credit risks , legal risks , and operations\nrisks of derivatives , bonds , money market securities , and equities .\npolicy , reporting and projects\na . . developed investment policy guidelines to manage fixed income\nportfolios .\nb . . rewrote derivatives policy manual .\nc . . prepared a 20 - page powerpoint slide presentation on india for the\nsenior management .\nd . . prepared and presented investment reports to cios , investment\ncommittees , and boards of trustees\ni shall , therefore , appreciate your help in connecting me with the right\nindividual within enron for a job interview to work as a financial\ntrader / risk manager . i can provide excellent references upon request .\nthank you for the lunch .\nsincerely ,\nmaruti d . more , cfa\n713 - 722 - 7199\nmore @ insync . net\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ndate : tuesday , january 25 , 2000 12 : 39 pm\nsubject : re : fw : luncheon meeting : asap\nhello ,\ni shall be traveling this week . i shall be glad to meet\nyou for lunch next week . please give me a call monday\nat 713 853 3848 .\nvince\n\" more \" on 01 / 25 / 2000 10 : 27 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : luncheon meeting : asap\ndear mr . kaminski :\njust to bring you up to date . i am no longer with american general . i\nshall ,\ntherefore , appreciate an opportunity to meet with you for lunch at the\nearliest\npossible time . i can be reached at 713 - 722 - 7199 .\nthank you .\nmaruti more\n713 - 722 - 7199\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : friday , december 17 , 1999 8 : 55 pm\nsubject : re : luncheon meeting\nthank you for your response . i was very happy to hear from you .\ni am also taking next week off and will be back to work on december 27 th .\nplease do call me when you get back . would very much appreciate the\nopportunity\nto have a quick lunch with you , if possible . hope everything is going\nwell .\nhave wonderful christmas holidays .\nregards\nmaruti more\n713 - 831 - 6209 ( o )\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski\ndate : friday , december 17 , 1999 3 : 35 pm\nsubject : re : luncheon meeting\nhello ,\ni shall be taking a few days off around xmas . i shall call you at the\nend of\ndecember\nwhen i get back to the office .\nwith best holiday wishes ,\nvince\n\" more \" on 12 / 01 / 99 09 : 28 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : luncheon meeting\ndear mr . kaminski :\nhow are you doing ? i want to find out if we can meet again for a quick\nlunch .\nyou might know that in maharashtra , india there is now a new chief\nminister\n( ceo of the state government ) . i am proud to say that he and i are\nfrom the\nsame\ntown , latur .\ni would really enjoy talking with you again , at your convenience .\ni will call you tomorrow to follow up .\nthank you .\nsincerely ,\nmaruti more\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski ; vkaminski @ aol . com\ndate : thursday , july 01 , 1999 6 : 16 am\nsubject : re : luncheon meeting\ndear mr . more ,\nlet ' s meet at 11 : 45 in the lobby of the enron building .\nwe can walk to one of the restaurants in the downtown area .\nvince kaminski\n( embedded enron capital & trade resources corp .\nimage moved\nto file : from : \" more \"\npicl 7002 . pcx ) 06 / 30 / 99 10 : 38 pm\nto : vince j kaminski / hou / ect\ncc :\nsubject : luncheon meeting\ndear mr . kaminski :\ni am looking forward to our luncheon meeting on this friday ,\njuly 2 ,\n1999\nat\n11 : 30 am . please let me know where we should meet . thank you for\ntaking\ntime\nout\nfrom your busy schedule .\nsincerely ,\nmaruti more\ntel . : 713 - 831 - 6209\n- attl . htm\n- bio @ home . doc\n- more @ home . doc\n- consultant . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.443+0000", "entityId": 6948, "properties": {"text": "Subject: re : [ fwd : stanford meeting ]\nvince ,\nif that doesn ' t work we can meet on saturday . no problem .\nmy cellular phone is 650 - 796 - 8163 . i will have it on ,\nfriday after 11 am .\nlooking forward to seeing you ,\nnick\nvince . j . kaminski @ enron . com wrote :\n>\n> nick ,\n>\n> the plan is ok , subject to unforeseen complications .\n> my flight from london was delayed and i had to spend a night in newark , nj .\n> my schedule for today was disrupted and i had to postpone my departure till\n> friday\n> morning . i should be at san francisco around 10 : 00 a . m . if there is no\n> delay .\n> i should be able to meet you at noon at your office .\n>\n> please , confirm the meeting both to my office e - mail address and my private\n> address\n> ( vkaminski @ aol . com ) . can you give me the phone number\n> at which i can reach you on friday if there is a delay ?\n>\n> look forward to meeting you .\n>\n> vince\n>\n> nick bambos on 02 / 24 / 2000 02 : 31 : 38 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc : bambos @ stanford . stanford . edu\n> subject : [ fwd : stanford meeting ]\n>\n> vince , is this plan ok ? thanks . nick\n>\n> nick bambos wrote :\n> >\n> > vince ,\n> >\n> > friday is fine . we can have lunch at the faculty club - you ' ll\n> > be my guest . shall we meet in my office in packard 238 and\n> > walk to the faculty club ?\n> >\n> > nick\n> >\n> > vince . j . kaminski @ enron . com wrote :\n> > >\n> > > nick ,\n> > >\n> > > i shall be in stanford for parents ' weekend ( my son is a junior at\n> > > stanford ) .\n> > > i plan to be on the campus friday through sunday this week . i shall be\n> glad\n> > > to meet you anytime during the weekend . what about a lunch on friday ?\n> > > i would like to talk to you about enron underwriting research projects\n> by\n> > > the graduate students\n> > > at your department .\n> > >\n> > > you can reach me at stanford at my son ' s phone number : 650 497 6938 .\n> > > please , let me know if you are free for lunch and i shall make the\n> > > reservation\n> > >\n> > > vince\n> > >\n> > > nick bambos on 02 / 22 / 2000 12 : 54 : 15 pm\n> > >\n> > > to : vince . j . kaminski @ enron . com\n> > > cc : ravi . thuraisingham . enron _ communications @ enron . com ,\n> gappy @ stanford . edu\n> > > subject : stanford meeting\n> > >\n> > > dear vince ,\n> > >\n> > > giuseppe tells me that you will be visiting stanford soon\n> > > and you you would like to meet with me . i would definitely\n> > > be glad to meet you and talk further .\n> > >\n> > > would you please let me know about the time of your visit\n> > > and your availability to meet . i look forward to seeing you .\n> > >\n> > > best regards ,\n> > >\n> > > nick\n> > >\n> > > ps : giuseppe and amy came back very impressed by you are doing at\n> enron !\n> > > thanks for hosting them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.448+0000", "entityId": 6949, "properties": {"text": "Subject: ljm\nvince / stinson :\nthe following is an update on ljm deal :\n1 ) i participated on a conference call with aa ( jitendra and others ) and our\naccounting / credit group ( wes , bill bradford and others ) yesturday , in which\nwe discussed the best approach for definining credit reserves at year - end for\nthe puts we own .\n2 ) a big chunck of the meeting was dedicated to explain aa the details of the\ndeal . little progress was made on achieving the meeting ' s goal .\n3 ) apparently , accounting did want to expose the calculation we made for puts\nvalue that considers credit risk - the two factor model we developed . that\nline of action was implied on a pre - meeting we had early that morning . from\nmy understanding , accounting argues that we should not make any credit\nreserve because we could not liquidate our position by year - end .\n4 ) at a certain point jintendra suggested me to use a two factor\nmc - simulation for calculating the position with credit risk . the approach is\nactually a more simplified version of the model we have . i and nobody\nmentioned the results we got from our 2 - factor model .\n5 ) at that same afternoon i knew from accounting that we are in a process of\nunwinding our position .\nthese are the main points . please let me know if need more details .\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.453+0000", "entityId": 6950, "properties": {"text": "Subject: re : thank you\nsevil .\nwe are looking forward to having you here .\nif you want , you can stop by one day and i shall introduce you\nto grant masson with whom you will be working this summer .\nvince\nsevil yaman on 02 / 23 / 2000 10 : 09 : 30 am\nto : vkamins @ enron . com\ncc :\nsubject : thank you\nhi dr . kaminski ,\nyesterday , i learned from shannon rogers at the associate - analyst program\nthat i was offered a summer associate / internship position in your group . i\nam already very excited about this position and look forward to working in\nyour group . many thanks for your consideration .\nsevil yaman\ndepartment of economics\nuniversity of houston\nhouston , tx 77204 - 5882\n( 713 ) 743 - 3814 / 3817", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.460+0000", "entityId": 6951, "properties": {"text": "Subject: light switch for eb 1939\ngood morning all :\nmaureen raymond castaneda is officed in ebl 939 . she has terrible migraine\nheadaches which are made worse by light . we would like to get a price on\nhaving an on / off switch installed in her room . as of now , they have removed\nthe light bulbs , but said that may not completely answer the problem as some\none may see that they are out and request they be replaced .\ni think the answer ( if it is not too expensive ) would be to have a switch\ninstalled .\nplease let me know .\nour co . # is 0011 and our rc # is 100038 .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.467+0000", "entityId": 6952, "properties": {"text": "Subject: capm and cost of capital\ngreetings from the global association of risk professionals ! ! we are\nputting together a panel for our march meeting related to one of the\nfollowing topics ; cost of capital , estimating risk premium , and capm\napproaches to measuring risk . currently , we have steve mann , an assistant\nprofessor of finance at tcu , is scheduled to speak and we are seeking\nadditional volunteers for our panel . if you are interested please respond\nvia email . if your organization would like to host the event , please let me\nknow so that arrangements can be made .\nfyi , we have identified resources in new york city that would come to\nhouston to speak , and we are in need of a sponsor ( or suggestions ) to cover\nthe general expense of bringing these individuals to houston .\nsteve mann is an assistant professor of finance at the neeley school at tcu ,\nwhere he teaches courses in derivatives and corporate finance . his primary\narea of research is trading , with focus on the risk & reward of market\nmaking in derivative contracts , as well as behavioral aspects of trading ,\nand liquidity measurement . his publications to date include papers in the\nreview of financial studies , the journal of business , and the journal of\nfutures markets .\nlooking forward to your response .\nrespectfully ,\nfrank hayden\ngarp\nthe information in this email is confidential and may be legally privileged .\nit is intended solely for the addressee . access to this email by anyone else\nis unauthorized .\nif you are not the intended recipient , any disclosure , copying , distribution\nor any action taken or omitted to be taken in reliance on it , is prohibited\nand may be unlawful . when addressed to our clients any opinions or advice\ncontained in this email are subject to the terms and conditions expressed in\nthe governing kpmg client engagement letter .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.472+0000", "entityId": 6953, "properties": {"text": "Subject: organizational announcement\nin case you have not already heard through the extensive grapevine , i am\nindeed leaving the company to take a challenging position in product\ndevelopment for panamsat , the satellite communications company . i would like\nto thank all of you - many friends that i ' m leaving behind at enron .\nplease stop by and visit when you ' re in the northeast ( i ' ll be working in\ngreenwich ct ) , and my permanent email address is\ndinos @ oskar . uchicago . edu\nall the best ,\ndinos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.476+0000", "entityId": 6954, "properties": {"text": "Subject: risk magazine - enron sponsored issue on energy derivatives\ni have recently come on board as treasurer , enron india . prior to joining ,\ni was with reliance industries , a petrochemical conglomerate in india .\nthe central banking authorities are now thinking of permitting\ncorporates to hedge their oil and other related risks . i believe the\nliterature published\nby risk in collaboration with enron has come to be considered as an\nindustry standard . would it be possible to arrange for two copies to be sent\nacross to us .\nthanx n regards\ng . subramaniam\ntreasurer ,\nenron india pvt . ltd .\n36 , maker chambers vi ,\nnariman point ,\nmumbai 400 021", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.481+0000", "entityId": 6955, "properties": {"text": "Subject: re : march real options conference\ngary , peter ,\nthis is a copy of my london presentation . i expect to\nmake some minor changes to this presentation for march 13 .\nvince\nvince kaminski\n\" jackson , gary l . \" on 02 / 27 / 2000 03 : 07 : 13 pm\nto : vince j kaminski / hou / ect @ ect , \" ' peter tufano ' \"\ncc : \" demars , suzanne \"\nsubject : re : march real options conference\n>\nthis is a draft of what i was thinking of presenting . i was not planning to\ngo over any specific options or opas ( these are covered by confidentiality\nclauses and i have to be careful from a competitive standpoint ) but to give\nthe audience a few of the \" real world \" applications and challenges . i\nwelcome any thoughts or comments .\ngary\n> - - - - - - - - - -\n> from : peter tufano [ smtp : ptufano @ hbs . edu ]\n> sent : friday , february 18 , 2000 4 : 56 pm\n> to : vkamins @ ect . enron . com ; gljackson 2 @ tva . gov\n> subject : re : march real options conference\n>\n> dear vince and gary ,\n>\n> we are all speaking at the march real options session in ny . my work in\n> real options in the energy field has come , to a large part , from my\n> casewriting in your two organizations , so i feel that we should probably\n> allocate more time toward your presentations and less to mine . while we\n> have a two hour block among the three of us , i think we can freely\n> re - arrange things to produce the best result . would you two like to\n> schedule a brief conference call to coordinate our talks ? i am free\n> virtually all of next wednesday 2 / 23 , perhaps we could talk at 10 am ( est )\n> or 2 pm ( est ) ? i am happy to arrange the call , if you send me your phone\n> numbers . thanks .\n>\n> peter tufano\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> prof . peter tufano\n> harvard business school\n> morgan hall 377\n> soldiers field\n> boston , massachusetts 02163\n> phone : ( 617 ) 495 - 6855\n> fax : ( 617 ) 496 - 6592\n> email : ptufano @ hbs . edu\n> http : / / www . people . hbs . edu / ptufano\n>\n- real options valuation in the new economy . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.486+0000", "entityId": 6956, "properties": {"text": "Subject: re : march real options conference\n>\nthis is a draft of what i was thinking of presenting . i was not planning to\ngo over any specific options or opas ( these are covered by confidentiality\nclauses and i have to be careful from a competitive standpoint ) but to give\nthe audience a few of the \" real world \" applications and challenges . i\nwelcome any thoughts or comments .\ngary\n> - - - - - - - - - -\n> from : peter tufano [ smtp : ptufano @ hbs . edu ]\n> sent : friday , february 18 , 2000 4 : 56 pm\n> to : vkamins @ ect . enron . com ; gljackson 2 @ tva . gov\n> subject : re : march real options conference\n>\n> dear vince and gary ,\n>\n> we are all speaking at the march real options session in ny . my work in\n> real options in the energy field has come , to a large part , from my\n> casewriting in your two organizations , so i feel that we should probably\n> allocate more time toward your presentations and less to mine . while we\n> have a two hour block among the three of us , i think we can freely\n> re - arrange things to produce the best result . would you two like to\n> schedule a brief conference call to coordinate our talks ? i am free\n> virtually all of next wednesday 2 / 23 , perhaps we could talk at 10 am ( est )\n> or 2 pm ( est ) ? i am happy to arrange the call , if you send me your phone\n> numbers . thanks .\n>\n> peter tufano\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> prof . peter tufano\n> harvard business school\n> morgan hall 377\n> soldiers field\n> boston , massachusetts 02163\n> phone : ( 617 ) 495 - 6855\n> fax : ( 617 ) 496 - 6592\n> email : ptufano @ hbs . edu\n> http : / / www . people . hbs . edu / ptufano\n>\n- real options valuation in the new economy . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.490+0000", "entityId": 6957, "properties": {"text": "Subject: re : aiesec polska - eurolds 2000\nczesc wicek ,\ndzieki za notke .\nspotkalem sie z ta osoba w ubieglym tygodniu - niestety ale wczesniej bylem\nna urlopie i nikt mi nie sygnalizowal nic na ten temat .\na . wodnicki niestety pomieszal fakty i moj numer kontaktowy dostal od ciebie a\nnie twoj ode mnie - tak jak pisze w swojej notatce .\nbiorac pod uwage , ze pozostalo niecale 7 dni od dnia mojego z nim spotkania\ndo dnia rozpoczecia - nie bylo fizycznej mozliwosci wprowadzenia enron\nformalnie jako sponsora - zwlaszcza biorac pod uwage , ze caly pr dept . jest\nzaangazowany w otwarcie siedziby w londynie jutro i pojutrze a aiesec\npotrzebowal ode mnie decyzje i pieniadze w piatek czyli dwa dni temu .\njedyne co moglem zrobic ( i zrobilem ) to wprowadzilem ich do kilku innych\ninstytucji ( czytaj kolegow z hz ) ktorzy mogli podjac decyzje szybciej .\npan andrzej wodnicki niestety przyznal sie do organizacyjnego balaganu w\nwyniku ktorego zagubiono moje namiary telefoniczne i faksowe , a nikt nie\npomyslal o zajzeniu do ksiazki telefonicznej po numer naszego biura w\nwarszawie . drugi problem to to ze zabral sie on za organizacje dodatkowych\nsrodkow na dwa tygodnie przed rozpoczeciem imprezy .\nniestety nic wiecej instytucjonalnie nie moglem dla nich zrobic .\nzasugerowalem tez , ze gdyby nie dopieli calego finansowania to jeszcze moge\nsprobowac zebrac mala grupe ludzi , ktorzy mogliby ew . dofinansowac brakujaca\nkwote jako darowizne indywidualna - ale biorac pod uwage kto jest w komitecie\nhonorowym i ze kwasniewski jest glownym sponsorem - taka forma moze byc\npolitycznie niewlasciwa .\nmam od nich dostac jakas informacje w przyszlym tygodniu czy dzieki moim\ndzialaniom cos im sie uda czy tez beda nadal potrzebowac pomocy .\npech - ale niestety zawiedli organizacyjnie .\npozdrowienia - jarek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.495+0000", "entityId": 6958, "properties": {"text": "Subject: tips\nfyi - us inflation - linked bond\ni can not replicate the nominal yield and inflation adjected cash flow\ncalculation from bloomberg . so i called the bond analytics group .\ni got to the point that they admit that they have made mistakes in their\ncalculation , and promised to fix it .\nonce i got the issues settled , there will be a better us inflation model .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.500+0000", "entityId": 6959, "properties": {"text": "Subject: re : meeting on the 20 th of march\nfyi .\nshirley ( 3 - 5290 ) is making travel arrangements for me .\nit makes sense for all of us to stay in the same hotel ,\nirrespective of individual travel arrangements\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 29 / 2000\n07 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" rudy , robert \" on 02 / 28 / 2000 08 : 20 : 10 pm\nto : \" ' vince j kaminski ' \"\ncc :\nsubject : re : meeting on the 20 th of march\ndear vince ,\nthanks for your note . i look forward to seeing you on the 20 th .\nwe usually recommend our visitors to stay at the park hyatt on battery\nstreet . it ' s a 5 minute cab ride ( or an easy 15 minute walk ) to our\noffices . should you decide to walk , it is important that you take sansome\nstreet rather than montgomery . they are one block apart , but one goes up to\nthe top of telegraph hill and ends before continuing at the bottom of a\ncliff and the other is relatively flat and is continuous . there are\ndetailed directions on our website ( www . kmv . com ) .\nsee you on the 20 th .\nregards ,\nrob\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , february 28 , 2000 9 : 35 am\nto : robert . rudy @ kmv . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : meeting on the 20 th of march\nrobert ,\nthis is to confirm the meeting on march the 20 th at 9 : 00 a . m . enron will be\nrepresented by\nbill bradford , bryan seyfried , , vasant shanbhogue and myself .\ncould you , please , advise me what is the best hotel where we could stay\novernight ,\nclose to your location ?\nvince kaminski\nenron corp .\n1400 smith street , room 1962\nhouston , tx 77251 - 1188\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.505+0000", "entityId": 6960, "properties": {"text": "Subject: meeting on the 20 th of march\nrobert ,\nthis is to confirm the meeting on march the 20 th at 9 : 00 a . m . enron will be\nrepresented by\nbill bradford , bryan seyfried , , vasant shanbhogue and myself .\ncould you , please , advise me what is the best hotel where we could stay\novernight ,\nclose to your location ?\nvince kaminski\nenron corp .\n1400 smith street , room 1962\nhouston , tx 77251 - 1188\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.510+0000", "entityId": 6961, "properties": {"text": "Subject: re : tanya ' s vacation\nshirley ,\ni am going to take 5 vacation days in march , 3 / 13 / 00 - 3 / 17 / 00 .\nthese are the days that i did not use in 1999 and vince approved\nthat i take them this year .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.516+0000", "entityId": 6962, "properties": {"text": "Subject: no job\nyou have probably heard that our group is being broken up . some people were\nput in other groups but i was not fortunate enough to be one of those\npeople . hr will try for the month of march to find a position for me within\nenron but that is not likely to happen .\ntomorrow is my last full day here - i will be in and out for the month of\nmarch .\ni am informing nice people that i like and you are one of those .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.521+0000", "entityId": 6963, "properties": {"text": "Subject: off duty days\ngood morning all :\nmost of you do this , but just in case , please advise me of any off duty\ndays , i . e . vacation , sick , personal , jury duty , etc . as soon as possible ,\neither before or as soon as you take them .\nalso , i am making new wallet info cards and if you have not sent me\nyour home telephone number , or if you have a new one , please let\nme know as soon as possible .\nthanks and have a great day !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.528+0000", "entityId": 6964, "properties": {"text": "Subject: re : risk magazine - enron sponsored issue on energy derivatives\nyes , i will have sam send him two copies .\nsam : can you send the below enron employee 2 copies of \" the book \"\nthanks !\nvince j kaminski\n02 / 28 / 2000 08 : 21 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : risk magazine - enron sponsored issue on energy derivatives\nshirley ,\ndo we still have some copies left ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 28 / 2000\n08 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngopalakrishnan subramaniam @ enron _ development\n02 / 25 / 2000 11 : 24 pm\nsent by : subramaniam gopalakrishnan @ enron _ development\nto : vince j kaminski @ ect\ncc :\nsubject : risk magazine - enron sponsored issue on energy derivatives\ni have recently come on board as treasurer , enron india . prior to joining ,\ni was with reliance industries , a petrochemical conglomerate in india .\nthe central banking authorities are now thinking of permitting\ncorporates to hedge their oil and other related risks . i believe the\nliterature published\nby risk in collaboration with enron has come to be considered as an\nindustry standard . would it be possible to arrange for two copies to be sent\nacross to us .\nthanx n regards\ng . subramaniam\ntreasurer ,\nenron india pvt . ltd .\n36 , maker chambers vi ,\nnariman point ,\nmumbai 400 021", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.533+0000", "entityId": 6965, "properties": {"text": "Subject: resumes\nkaren ,\ni have forwarded all the resumes to charlene jackson about 10 days ago .\ni am resending 4 resumes ( in the case of paolo it ' s a copy of his e - mail\nmessage )\ni have in electronic format . the resume for gappy will be faxed to you .\nthanks for your help .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.537+0000", "entityId": 6966, "properties": {"text": "Subject: re : research group\nthanks vince ,\ni will get on it right away !\n/ 28 / 2000 11 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n02 / 28 / 2000 11 : 05 am\nto : kevin g moore / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : research group\nkevin ,\ni think it ' s very important .\nit is important that our work area looks neat .\nvince\nkevin g moore\n02 / 28 / 2000 11 : 01 am\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc :\nsubject : research group\nhello vince ,\nvince , before i get with delores on the matter of the\ndepartment i wanted to ask you how important it\nthat we get the walls repaired ?\nis the research department satisfactory or is\nthere anything else that i can do ?\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.541+0000", "entityId": 6967, "properties": {"text": "Subject: re : research group\nkevin ,\ni think it ' s very important .\nit is important that our work area looks neat .\nvince\nkevin g moore\n02 / 28 / 2000 11 : 01 am\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc :\nsubject : research group\nhello vince ,\nvince , before i get with delores on the matter of the\ndepartment i wanted to ask you how important it\nthat we get the walls repaired ?\nis the research department satisfactory or is\nthere anything else that i can do ?\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.552+0000", "entityId": 6968, "properties": {"text": "Subject: re : light switch for eb 1939\ndolores :\nvince said to go ahead and do it . it is a health need .\nher eb # is 1939 and our co . # is 0011 and rc # 100038 .\nthanks for your prompt response !\nhave a great day !\nshirley\ndolores sustaita\n02 / 28 / 2000 09 : 06 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : light switch for eb 1939\nf . y . i . , please read below .\ndolores\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dolores sustaita / epsc / hou / ect on\n02 / 28 / 2000 09 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron property & services corp .\nfrom : charles upshaw 02 / 28 / 2000 08 : 32 am\nto : dolores sustaita / epsc / hou / ect @ ect\ncc :\nsubject : re : light switch for eb 1939\napprox . $ 500 .\ndolores sustaita\n02 / 25 / 2000 02 : 31 pm\nto : shirley crenshaw / hou / ect @ ect , charles upshaw / epsc / hou / ect @ ect\ncc :\nsubject : light switch for eb 1939\ncharles ,\ncan you help with cost estimate ?\ndolores\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dolores sustaita / epsc / hou / ect on\n02 / 25 / 2000 02 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n02 / 24 / 2000 08 : 56 am\nto : pat scarborough / epsc / hou / ect @ ect , dolores sustaita / epsc / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kevin g moore / hou / ect @ ect , william\nsmith / corp / enron @ enron\nsubject : light switch for eb 1939\ngood morning all :\nmaureen raymond castaneda is officed in ebl 939 . she has terrible migraine\nheadaches which are made worse by light . we would like to get a price on\nhaving an on / off switch installed in her room . as of now , they have removed\nthe light bulbs , but said that may not completely answer the problem as some\none may see that they are out and request they be replaced .\ni think the answer ( if it is not too expensive ) would be to have a switch\ninstalled .\nplease let me know .\nour co . # is 0011 and our rc # is 100038 .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.559+0000", "entityId": 6969, "properties": {"text": "Subject: re : nick bambos\nsounds great . let me know how i can help .\ntom\nvince j kaminski @ ect\n02 / 28 / 00 11 : 42 am\nto : thomas d gros / hou / ect @ ect\ncc : ravi thuraisingham / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : nick bambos\ntom ,\ni got sick and had to reschedule the meeting with nick bambos .\ni shall meet him on saturday this week . i shall talk to him about the\nfollowing :\n1 . financing research projects by graduate students ( $ 100 k per year , spread\nover several projects )\n2 . inviting nick to visit enron\n3 . i can mention the possibility of nick consulting for us . given his status ,\ninvolvement in the internet 2 project ,\nand views that closely parallel enron ' s vision , it makes sense to have him\nworking for us . he could\nbe a very effective voice supporting our initiatives .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.564+0000", "entityId": 6970, "properties": {"text": "Subject: re : martin lin support for jim\nhi stinson , i have sent an e - mail to martin to give him heads up on what to\nexpect in terms of transition . i have talked to jim about this and we are in\nagreement on the following schedule for martin .\nfirst two week martin will just read up stuff and get up to speed . i have\nsuggested some reading material . if you guys can do the same .\ni ' ll set up a meeting for all of us with jim . jim and i will draft a game\nplan document to outline major areas of work that we need to support from the\ntraffic engineering perpective ( this will involve our or guys , stinson and\ni ) . martin will be on jim ' s team supporting general network planning\n( through this work i am doing right now for project hamachi , i will support\njim on other similar initiatives ) projects . martin will work with jim and me\non this . stinson , i will e - mail a draft of our game plan once i have\nsomething on paper . after that we can distribute the document to tom\ngros / jean mrha ( trading ) and ted seitz for information .\nravi .\nstinson gibner @ ect\n02 / 29 / 00 01 : 57 pm\nto : ravi thuraisingham / enron communications @ enron communications @ enron\ncc :\nsubject : martin lin support for jim\nravi :\nsince you are spending time with jim irvine , can you find out what martin lin\nneeds to do to start coming up to speed in supporting jim ? martin is ready\nto transition , but needs to find out what he will be working on . will jim\nbe in houston anytime soon or should martin go to portland to talk to him ,\netc . . .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.569+0000", "entityId": 6971, "properties": {"text": "Subject: [ amy @ sdsc . edu : re : caida ' metrics ' wg meeting , 2 mar 00 ( fwd ) ]\nvince , stinson , looks like just me and jim irvine attending this one may\nsuffice since this is a working group meeting . as the note describes below ,\nthere will be a separate trip for you guys and me to determine long - term\ninvolvement , etc . . . let me now when to schedule .\nvince and stinson may want to\nwait until kc claffy or i can visit portland , or have several enron\nreps visit san diego for demos and related discussions .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 29 / 00 01 : 28\npm - - - - -\ntmonk @ caida . org\n02 / 29 / 00 09 : 18 am\nto : ravi thuraisingham / enron communications @ enron communications\ncc : amy @ caida . org , tmonk @ caida . org\nsubject : [ amy @ sdsc . edu : re : caida ' metrics ' wg meeting , 2 mar 00 ( fwd ) ]\nravi ,\nhi , amy forwarded me your note . since thursday is the kick off\ndiscussions for the new working group , it might not be the ideal venue\nfor enron to get acquainted with caida . vince and stinson may want to\nwait until kc claffy or i can visit portland , or have several enron\nreps visit san diego for demos and related discussions .\nwe have been talking to stan hanks for some time about enron ' s\ninterests in passive measurement and are in the process of implementing\nsome of the performance features in coralreef that he has described as\nrelevant to enron . examples of existing coralreef analyses on oc 3 / 12\nlinks can be found at :\n( real - time )\nhttps : / / anala . caida . org / aix /\n( post - processed traces )\nwe are also working to better tune the skitter tool for reachability\nanalysis and for use by providers , an example of some existing\nanalyses can be found at\nfor end - to - end measurements , including those relating to service level\nguarantees , we are working to make skping and sktrace more useful to\nproviders and their noc personnel , see\nanother tool of relevance to providers is our cflowd which analyzes\nflow export data from cisco routers , see\nhttp : / / www . caida . org / tools / cflowd / .\nwe would appreciate the opportunity to talk with enron personnel about\nhow to make these tools more relevant and useful to your needs ,\nhowever , it is doubtful that we will have time to discuss specific\ntools on thursday .\nwe look forward to meeting you soon !\ntake care ,\ntracie monk\ndirector , caida\n858 / 822 - 0943\n- - - - - - - - - - forwarded message - - - - - - - - - -\nto : amy @ sdsc . edu\ncc : christine _ blair @ enron . net , kristy _ carnes @ enron . net\ndate : thu , 24 feb 2000 19 : 52 : 00 - 0600\nsubject : re : caida ' metrics ' wg meeting , 2 mar 00 ( fwd )\nhi amy , jim irvine ( ebs head of network planning ) and i ( team lead , ebs\nresearch ) will attend the meeting . we will have our assistances ( christine\nblair\n& kristy carnes , respectively ) arrange the trip . we will plan to come in the\nnight before and return on march 2 , 00 .\nalso , either vince kaminski ( md and head of enron research ) or stinson gibner\n( vp , enron research ) may also attend . they will let me know shortly if they\nplan to attend .\nregards ,\nravi .\np . s . our company name has been changed to enron broadband services\nkristy , christine please make the appropriate travel arrangements . the place ,\ntime , etc . are listed .\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | amy @ sdsc . edu |\n| | |\n| | 02 / 24 / 00 |\n| | 07 : 07 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| |\n| to : ravi thuraisingham / enron communications @ enron\ncommunications |\n| cc :\n|\n| subject : caida ' metrics ' wg meeting , 2 mar 00\n( fwd ) |\nhi ravi ,\ni wanted to follow up directly with you and see if you or anyone at enron\nhad any interest in participating in the proposed caida \" metrics \" working\ngroup meeting ?\nplease let me know .\namy e . blanchard\ncaida\n% % % % % % % % % % % % %\ne - mail : amy @ caida . org\nphone : ( 858 ) 534 - 8338\nfax : ( 858 ) 534 - 5117\nb . wg charters , meeting on 2 mar 00\ni believe that we should instead run a single caida working group\non ' network metrics , ' rather than the two proposed earlier . my draft\nof its charter is appended below . it focuses on producing educational\nmaterial about network measurement , and on developing new metrics - these\nwere the two areas of greatest interest amongst the caida members .\nthe wg co - chairs are\nsue moon ( sprintlabs ) and brett watson ( mfn / abovenet )\nyou are invited to attend the first wg meeting .\nthe agenda is as follows . .\nagenda for caida wg meeting on : thursday 2 mar 00\n- - - - - - - - - - - - - - - - -\n10 am - 4 pm , abovenet , downtown sjc ( see below for details )\n- - - - - - - - - - - - - - - - - - - - - - - -\n1 . review wg charter\n- is it reasonable as set out in the draft ?\n- what should be removed or added ?\n2 . work through revised charter in detail\n- identify the work required for each part\n- determine who ' s willing to work on it\n- attempt to determine delivery times\n3 . discussion of new metrics\n- first attempt at making a list of metrics to be considered\n4 . anything else ?\nlocation : abovenet is located in the knight - ridder building ,\nattached to the fairmont hotel complex . the address is\n50 w . san fernando st .\nsan jose , ca 95113\nrsvp : to help us with organising the meeting , please send email to\nnevil @ caida . org telling us how many will attend from\nyour organisation .\ncheers , nevil\nnevil brownlee visiting researcher\nphone : ( 619 ) 822 0893 caida , san diego\ncaida network metrics working group : draft charter , tue 23 feb 00\ngoals :\n1 education\n+ faq on what does ' measuring the internet actually mean ? '\n- why measure anyway ?\n- what can be measured ? how ? where ? by whom ?\n- active vs passive , end - to - end vs provider network only ,\napplication vs transport layer\n- rating schemes : provider ' net performance ' pages , internet\n' weather map ' s , keynote , etc .\npublish as caida web pages , or maybe as an info rfc\n+ survey paper on metrics and internet measurement\n- current measurement efforts ( surveyor , ripe test traffic ,\namp , iperf , at & t , keynote , skitter , . . . )\n- current tools\npublish as caida web pages\n2 service metrics\n+ define new metrics\n- taxonomy of current metrics ( ippm , rtfm , itu , . . )\n- summary of metrics used for current services\n- gather information / ideas about new / emerging services ,\nespecially diffserv - based ones\n- make list of new metrics , either to improve measurement of\nexisting services or to support new ones\n[ list of ' metrics ' questions ( appendix a ) goes here ]\n+ organise experimental implementation / testing of tools\nfor new metrics\n+ make recommendations on implementation\n- define core set of ' really useful ' metrics\n- recommend that caida implement these as a\n' service measurement toolkit '\n+ publish new metric definitions through ippm or rtfm\n+ produce document \" measurement requirements for hardware / software\nvendors . \" publish on caida web pages\nappendix a : questions from the earlier draft caida wg charters\na . what types of network - and transport - layer metrics are being\nused by isps in engineering and operating their networks ?\nby customers for verifying service guarantees ?\nb . what new services are being ( or are likely to be ) offered , e . g .\ndiffserv ? is there a need for higher - layer metrics to better\nmonitor and manage these services ?\nc . will these new differentiated transport - and\napplication - layer services need new metrics ?\nd . how can the service metrics be measured in a multi - isp\nenvironment ?\ne . how can customers verify these measurements ?\nf . what requirements would service measurement introduce for\nequipment vendors ?\ng . how relevant are specific techniques ( e . g . which flow ) and\npoints of measurement to specific users ( isp , customer , etc . )\nrequirements ?\nh . how do these metrics relate to network behavior as perceived\nby users ? how do they correlate with performance ?\nappendix b : background on the ietf working groups\n* rtfm wg : realtime traffic flow measurement\nrtfm is concerned with passive measurements of two - way traffic flows ,\nspecified in terms of their end - point attributes . its primary goal was\nto produce an improved traffic flow measurement model considering at least the\nfollowing needs :\na . wider range of measurable quantities , e . g . those\nrelating to ipv 6 , and to class of service\nb . simpler ways to specify flows of interest\nc . better ways to control access to measured flow data\nd . strong focus on data reduction capabilities\ne . efficient hardware implementation\n* ippm wg : ip performance measurement\nthe ippm wg charter is to develop a set of standard metrics that can\nbe applied to the quality , performance , and reliability of internet\ndata delivery services . these metrics will be designed such that they\ncan be performed by network operators , end users , or independent\ntesting groups . it is important that the metrics not represent a value\njudgement ( i . e . define \" good \" and \" bad \" ) , but rather provide unbiased\nquantitative measures of performance .\nrfcs\nframework for ip performance metrics ( rfc 2330 )\nmetrics :\nconnectivity ( rfc 2678 ) ,\none - way delay ( rfc 2679 ) , one - way packet loss ( rfc 2680 )\nround - trip delay ( rfc 2681 )\ni - ds\nbulk transfer capacity ( 2 x )\ninstantaneous packet delay variation\none - way loss patterns\n* other wgs\nthe rmonmib wg is thinking about ' application performance\nmeasurement . ' this is clearly a hard problem ( e . g . does this just\nmean response - time measurement , can it be done by passive means , how\nshould the measurements be presented , etc . ) .\nin short\n- rtfm provides a good distributed measuring system for traffic\nvolumes\n- ippm has concentrated on transport - layer behaviour of the\ncurrent , best - effort internet .\n- rmonmib is beginning to consider application - layer measurement\n- - - - - end of forwarded message - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.574+0000", "entityId": 6972, "properties": {"text": "Subject: re : fw : stanford or - summer intern\nthis guy has basic quant skills , etc . but at ebs we would need interns\npossible from mba schools , not phd . i think he is a summer intern fit for\nenron research and we can loop him into ebs research as we need help ( which\nis likely ) .\nravi .\nvince j kaminski @ ect\n02 / 29 / 00 08 : 23 am\nto : stinson gibner / hou / ect @ ect\ncc : ravi thuraisingham / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect\nsubject : fw : stanford or - summer intern\nstinson ,\nshould we get him as well ?\nit seems he has the right skills .\nwe might have maxed out on the\nnumber of summer interns through\nthe a / a program . we would have to\nhire him directly .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 29 / 2000\n08 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shikhar ranjan \" on 02 / 28 / 2000 02 : 31 : 39 pm\nto : ravi _ thuraisingham @ enron . net\ncc : vince j kaminski / hou / ect @ ect\nsubject : fw : stanford or - summer intern\nhi ravi :\ni had sent an email about a week back with my resume for the summer\ninternship . i think the address i sent it to was not correct , so i am\nresending it . i will also tell the others in the group to send there resumes\nto you . thanks .\nregards ,\nshikhar\n- - - - - - - - - - - - - - - - - - - - - - - -\nshikhar ranjan\nphd student\nmanagement science & engineering\nstanford university ca\n( 650 ) 497 5762\n- - - - - original message - - - - -\nfrom : shikhar ranjan\nto :\ncc :\nsent : sunday , february 20 , 2000 5 : 24 pm\nsubject : stanford or - summer interns\n> hi ravi :\n>\n> please find attached my resume for the summer internship program . i\n> apologize for the delay . we actually lost your contact info . please let me\n> know if you will need any additional information and / or a cover letter\n> besides the resume and i can send it right away .\n>\n> thanks\n>\n> regards ,\n> shikhar\n> - - - - - - - - - - - - - - - - - - - - - - - -\n> shikhar ranjan\n> phd student\n> management science & engineering\n> stanford university ca\n> ( 650 ) 497 5762\n>\n- resumeo 0 - ene . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.578+0000", "entityId": 6973, "properties": {"text": "Subject: material for thu 2 mar wg meeting\nfyi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 29 / 00 01 : 15\npm - - - - -\nnevil @ ipn . caida . org\n02 / 28 / 00 10 : 35 pm\nto : metrics @ caida . org\ncc : ( bcc : ravi thuraisingham / enron communications )\nsubject : material for thu 2 mar wg meeting\nhello all :\nappended below you ' ll find a summary of ideas that people have contributed\nsince we at caida began to get the metrics wg started . some of this\nmaterial has already appeared on the metrics mailing list , the older\nmaterial comes from personal emails . i ' m posting it again to give us all\nsome more ideas to think about .\nfor those who are able to attend the wg meeting in san jose this thursday\n( 2 mar ) , i ' d like to spend time in the morning getting to know about\nattendees interests and experience in making internet measurements .\ni suggest that a good way to do this would be to have each group give a\nshort ( 10 minutes , response times , and this gets even more interesting . . . you only need\n> to be able to see traffic in one direction ( from client to server ) to\n> get a fairly accurate round - trip time from the client to the server\n> ( irrespective of how far away the client is from your measurement\n> host ) , because of tcps three - way handshake for connection\n> establishment ; when you see the opening syn , you wait for the client\n> to ack the server ' s syn ack and you have the client - > server round - trip\n> time . i think you ' ve actually already done some of this ? we could\n> also potentially try to correlate dns queries and tcp connections ,\n> perhaps determining some probabilities in a given environment of a\n> host initiating a tcp connection to a host for which it just received\n> an a record , and track various application - level response times ( i ' d\n> personally love to have a lot of data on the ratio of dns response\n> time to tcp transfer time for http connections ) . even if the\n> measurement makes no attempt to discern what constitutes a web\n> transaction to the user ( a full page , usually many tcp connections ) .\n>\n> anyway , i think there are some fairly interesting things we can\n> measure with simple techniques , these are just some simple ones .\n> there may be some interesting things we could do by digging into\n> payloads of a few of the other highly - utilized applications , but doing\n> it for tcp is a nightmare perfomance - wise . but we now have the basic\n> infrastructure to do things with dns over udp . we can probably cover\n> any open udp protocol without incurring performance penalties that\n> would make it completely unusable . snmp , for example . . . while its\n> application is limited , network service providers would find\n> round - trip time information for snmp packets from their network\n> management stations to agents very useful . i think there are some\n> rudimentary things we can do with tcp as well , and i also think some\n> sites would be interested in having some rudimentary information . for\n> example , a weighted ( by traffic ) round - trip time distribution for tcp\n> traffic to / from all networks with which you communicated ( say at / 24\n> granularity ) . this gives sites a notion of how close they are to\n> those they talk to most frequently . with a little more work , we could\n> probably make reasonable bandwidth estimates for every end network for\n> which we see tcp data ( we could certainly get a reasonable number for\n> the maximum observed bandwidth ) .\n>\n> these methods also decouple the measurement from the traffic . while we\n> all know the value of that , i think it ' s significant in that active\n> probers can be run on the same host , decoupled from the actual\n> measurement , and with timestamps coming from kernel space ( bpf ) . i ' ve\n> been thinking about this for a long time , because eventually i ' d like\n> skitter ( and other tools ) to be able to do use tcp packets for probing ,\n> with no need for things like ip firewall code ; if i can just properly\n> time non - blocking connects , and count on the passive tool to see the syn\n> and syn ack , i can use any tcp port for round - trip time measurements and\n> not trick my kernel by sending tcp packets on a raw socket . i need\n> feedback from the passive tool for tracing like skitter ( it needs to\n> know when a reply has been seen from a hop and when the destination has\n> been reached ) , but it ' s not difficult ( simple bytestream - oriented ipc is\n> sufficient ) .\n>\n> going further , i like the idea proposed by some others ( maybe funded at\n> this point , i ' m not tracking it ) of instrumenting the freenix tcp / ip\n> stacks . a lot of useful information could be pulled from the stack .\n> but eventually someone ' s going to have to come up with what pieces of\n> information are desirable enough for someone to want their stack\n> instrumented ( and it ' ll have to be somewhere between what ' s currently\n>\n> implemented and a full - blown metering system like rtfm ) . and i think in\n> the interim , there are a lot of things we could do using libpcap on our\n> local machines , non - promiscuous and in user space ( safe , easy to\n> implement and test ) . to me the benefits here are :\n>\n> - a user is likely to have a tangible , well - understood relationship\n> with their workstation ( understood by them ) . this is particularly\n> true for those of us with network expertise . so it ' s at least\n> plausible that we can find correlations of measurements with\n> user experience in a fairly short period of time , helping us hone in\n> on what ' s useful . even if we only find weak correlations ( for\n> whatever reason ) , once a correlation exists , more people will be\n> interested in helping with development because it ' ll be something\n> they ' ll use personally .\n> - we ' re essentially guaranteed to see traffic in both directions .\n>\n> i ' d personally be interested in trying to find some small sets of\n> information that correlate to user experiences , so that it doesn ' t\n> take a terabyte of disk and 64 processors to deal with data from say\n> 10 , 000 desktops . : - )\n>\n> anyway , just some random thoughts . the hard part for me at the moment\n> is thinking about useful generalizations and infrastructure to support\n> them . . .\ncindy bickerstaff responded . .\n> we ' re just starting to capture the mss and window size negotiations between\n> timeit and servers to get an idea of what is typical or usual . wonder if\n> daniel ' s code could do that too from the various traffic monitoring points\n> caida has out there ? the data could be used to fill in some parameters for\n> trying to model some of the passive data collected . since a typical web page\n> has many elements between a single client and server the first or base page\n> gives you a starting idea of what to expect and the subsequent elements are\n> like repeat measurements of the same path over a very short time interval .\n> since there is a strong time of day / week effect ( volumes and perf ) , the\n> short duration of the data collection from a single web page ( incl .\n> elements ) might give some options for modeling ( and maybe getting a better\n> estimate of packet loss ) . i ' ve really enjoyed joining the e 2 e - interest group\n> for the ideas on factors and the references to past modeling attempts ( e . g .\n> mathis , et . al . paper . . . ack its bulk transfer focus ) .\npaul krumviede highlighted the difficulty of agreeing on details\nof how to measure common metrics like availability , reliability ,\nthroughput and latency .\n> an example was throughput . since it was proposed\n> that this be measured using a tcp file transfer of\n> random data , one concern was what does this do\n> to latency ? and where does this get measured ? as\n> many customers of this service would not be large\n> businesses , measuring this from the customer end\n> of a 56 - or 64 - kbps circuit was almost certain to\n> drive end - to - end latency measurements beyond\n> defined bounds . measuring it from within points in\n> the provider ' s network ( s ) might show figures that the\n> customers could never see themselves .\n>\n> the compromise was to define the throughput metric\n> as ocurring at access link loads of no more than 50 %\n> of the bit rate . but how does one measure that ? and\n> so on . . .\n>\n> given that this discussion was recognized as being the\n> prelude to the imposition of minimal slas , as part of the\n> \" certification \" process for service providers , this may be\n> an illustration of the perils of discussing slas and metrics\n> in some interchangable form . but they may not be easy\n> to separate in the minds of some .\ncarter bullard said\n> i ' m specifically interested in bridging\n> rtfm and ippm work , particularly to describe how an\n> rtfm can be a generic connectivity monitor . ippm\n> describes type - p - unidirection and bidirectional\n> connectivity , and a single point rtfm can detect\n> these conditions , but standard descriptions for how\n> this can be done would be very useful .\n>\n> personally , one of the things that i ' m interested\n> in is tcp based streaming services performance , such\n> as that seen in internet radio distribution , and of\n> course ip telephony wireline performance metrics would\n> be very good to describe .\nnevil brownlee comments that he ' s also very interested in\ndeveloping the rtfm meter as a platform for more general measurements .\ntwo areas seem interesting ( apart from getting more information\nfrom tcp streams ) : ~\n+ qos / difserv performance\n( what metrics do we need to characterise this ? )\n+ ipsec ( what metrics will still be useful when we can ' t\nlook at port numbers ? what kinds of traffic can still be\nidentified ? )\ncurtis villamizar said\n> i ' m particularly interested in the work on dos at\n> http : / / www . cs . washington . edu / homes / savage / traceback . html and would\n> like to see that on the agenda .\nthis would provide a general way of determining where packets came from ,\nnot just a tool for tracing dos attacks .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.583+0000", "entityId": 6974, "properties": {"text": "Subject: hello\nhello , vince .\ni haven ' t heard from you in a while .\nwe have a new issue monthly pay agency this morning . here it is :\nissuer : fed . national mortg . assoc .\nterm : 5 yr final , non call 1 year\ncoupon : 7 . 26 %\nmaturity : 3 / 14 / 2005\ncallable : 3 / 14 / 2001 @ par\ninterest : monthly starting on 4 / 14 / 2000\nrating : aaa ( moodys )\nthis new issue won ' t be in long . no cost or commission to buy . give me a\ncall .\ndavid c . walkup\nfinancial consultant\n713 - 658 - 1685\n800 - 456 - 9712\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party . for your protection , avoid sending\nidentifying information , such as account , social security or card numbers to\nus or others . further , do not send time - sensitive , action - oriented\nmessages , such as transaction orders , fund transfer instructions , or check\nstop payments , as it is our policy not to accept such items electronicall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.588+0000", "entityId": 6975, "properties": {"text": "Subject: re : aiesec polska - eurolds 2000\nszanowny panie kaminski ! ! !\nbardzo dziekuje za okazana pomoc !\nmimo wielu bledow , ktore popelnilismy , a przede wszystkim to , ze zglosilismy\nsie do pana astramowicza zbyt pozno , bardzo nam pomogl . european leadership\ndevelopment seminar 2000 w polsce sie odbedzie , i postaramy sie , zeby bylo\nto wydarzenie na wysokim poziomie ! ! !\njeszcze raz bardzo dziekuje i postaram sie aby nastepne mozliwe informacje o\nnaszych projektach szybciej docieraly do firmy takiej jak enron , a w\nszczegolnosci do takiej osoby jak pan i pan jarek astramowicz .\nbardzo dziekuje\nz powazaniem\nandrzej wodnicki\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : awodni @ sgh . waw . pl\ncc : vince . j . kaminski @ enron . com\ndate : 23 lutego 2000 09 : 37\nsubject : re : aiesec polska - eurolds 2000\n>\n> drogi panie andrzeju ,\n>\n> prosze powolac sie na mnie .\n>\n> w . kaminski\n>\n>\n>\n>\n> andrzej wodnicki on 02 / 22 / 2000 04 : 02 : 42 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : aiesec polska - eurolds 2000\n>\n>\n>\n> drogi panie kaminski !\n>\n> bardzo przepraszam za klopot . wiem , ze jest pan niezmiernie\n> zajetym czlowiekiem . jednak chcialem zapytac sie pana o jeszcze\n> jedna kluczowa dla nas sprawe , ze wzgledy na termin naszego\n> wydarzenia - 7 marzec 2000 .\n>\n> mianowicie , czy byloby mozliwe , aby w\n> rozmowie z panem astramowiczem powolac sie na pana .\n> wydaje mi sie , ze bardzo by nam pana nazwisko pomoglo .\n> bardzo liczymy na pana pomoc ,\n>\n>\n> pozdrawiam\n>\n> andrzej wodnicki\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.593+0000", "entityId": 6976, "properties": {"text": "Subject: fw : stanford or - summer intern\nstinson ,\nshould we get him as well ?\nit seems he has the right skills .\nwe might have maxed out on the\nnumber of summer interns through\nthe a / a program . we would have to\nhire him directly .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 29 / 2000\n08 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shikhar ranjan \" on 02 / 28 / 2000 02 : 31 : 39 pm\nto : ravi _ thuraisingham @ enron . net\ncc : vince j kaminski / hou / ect @ ect\nsubject : fw : stanford or - summer intern\nhi ravi :\ni had sent an email about a week back with my resume for the summer\ninternship . i think the address i sent it to was not correct , so i am\nresending it . i will also tell the others in the group to send there resumes\nto you . thanks .\nregards ,\nshikhar\n- - - - - - - - - - - - - - - - - - - - - - - -\nshikhar ranjan\nphd student\nmanagement science & engineering\nstanford university ca\n( 650 ) 497 5762\n- - - - - original message - - - - -\nfrom : shikhar ranjan\nto :\ncc :\nsent : sunday , february 20 , 2000 5 : 24 pm\nsubject : stanford or - summer interns\n> hi ravi :\n>\n> please find attached my resume for the summer internship program . i\n> apologize for the delay . we actually lost your contact info . please let me\n> know if you will need any additional information and / or a cover letter\n> besides the resume and i can send it right away .\n>\n> thanks\n>\n> regards ,\n> shikhar\n> - - - - - - - - - - - - - - - - - - - - - - - -\n> shikhar ranjan\n> phd student\n> management science & engineering\n> stanford university ca\n> ( 650 ) 497 5762\n>\n- resumeo 0 - ene . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.599+0000", "entityId": 6977, "properties": {"text": "Subject: re : thank you\ndr . kaminski ,\ni can stop by any thursday or friday to meet grant . i think that will\nbe great for me to understand better what you are doing in your group\nand i will be doing this summer . could you let me know which day would\nwork for you , please ?\nsevil yaman\ndepartment of economics\nuniversity of houston\nhouston , tx 77204 - 5882\n( 713 ) 743 - 3814 / 3817\non thu , 24 feb 2000 vince . j . kaminski @ enron . com wrote :\n>\n> sevil .\n>\n> we are looking forward to having you here .\n> if you want , you can stop by one day and i shall introduce you\n> to grant masson with whom you will be working this summer .\n>\n> vince\n>\n>\n>\n>\n>\n> sevil yaman on 02 / 23 / 2000 10 : 09 : 30 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : thank you\n>\n>\n>\n> hi dr . kaminski ,\n>\n> yesterday , i learned from shannon rogers at the associate - analyst program\n> that i was offered a summer associate / internship position in your group . i\n> am already very excited about this position and look forward to working in\n> your group . many thanks for your consideration .\n>\n>\n> sevil yaman\n> department of economics\n> university of houston\n> houston , tx 77204 - 5882\n> ( 713 ) 743 - 3814 / 3817\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.604+0000", "entityId": 6978, "properties": {"text": "Subject: re : chicago partners\ndavid ,\ni sent a message with information to several different units but no\nresponse so far . i think people need a specific need to focus\nand i shall keep the chicago partners in mind when a relevant\nproject arrives . i shall resend the message with attachments on\ncp in a few weeks as a reminder .\nvince\nvince\ndavid _ barr @ enron . net on 03 / 01 / 2000 10 : 15 : 57 am\nto : vkamins @ enron . com\ncc :\nsubject : chicago partners\nvince ,\nhope this finds you well . i am sure you are more than busy but i wanted to\nsee\nwhere we stand with feedback regarding me coordinating a potential\npresentation\nby chris culp at cp risk management .\nregards ,\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.609+0000", "entityId": 6979, "properties": {"text": "Subject: cera conference call - - scheduled for wednesday , march 8 , 2000 -\ncera conference call\ncera conference call : wed , march 01 , 2000\ntitle : cera conference call - - scheduled for wednesday , march 8 , 2000\nauthor : cera\ne - mail category : conference call\nproduct line : north american gas , north american power , refined products ,\nurl : http : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1109 ,\nhttp : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1110 ,\nhttp : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1111 ,\nconference call and web presentation\nscheduled for wednesday , march 8 , 2000\ntopic\nnortheast us energy markets : implications of the winter price spikes\ncera is pleased to invite you to participate in a conference call and web\npresentation with our experts on global energy . we will be discussing :\n* understanding the winter price spikes in electric power , natural gas , and\noil products markets in the northeast us\nnetscape navigator 3 . 02 or higher ; or sun hot java ( tm )\n* close all desktop applications and disable your screen saver\ntechnical assistance\nif you are calling from the united states and are experiencing difficulties\nduring the call , you may signal for technical assistance by pressing * 0\n( star , zero ) on your telephone keypad after you have connected to the audio\nportion of the conference . international callers please re - dial into the\ncall , asking the operator for assistance before giving the confirmation code .\nfor more information\nfor more information , please contact kari paakaula via e - mail at\nkpaakaula @ cera . com or via telephone at ( 617 ) 441 - 1362 .\na recording of this call will be available until april 8 , 2000 . to access\nthis recording , please call 1 - 888 - 203 - 1112 ( within the us ) or ( 719 ) 457 - 0820\n( outside the us ) . please use confirmation number 915415 to access the call .\n* * end * *\nfollow url for html version of this message only .\nnote : should the above url not work , please use the following :\nhttp : / / www . cera . com / client / nap / cc / 022900 _ 16 / nap _ cc _ 022900 _ 16 _ ab . html [ for\nnorth american electric power clients ]\nhttp : / / www . cera . com / client / nag / cc / 022900 _ 16 / nag _ cc _ 022900 _ 16 _ ab . html [ for\nnorth american natural gas clients ]\nhttp : / / www . cera . com / client / rp / cc / 022900 _ 16 / rp _ cc _ 022900 _ 16 _ ab . html [ for\nrefined products clients ]\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.613+0000", "entityId": 6980, "properties": {"text": "Subject: re : trip to san francisco 3 / 19 - 3 / 20 / 00\nbryan ,\ni talked to vasant about the model review in london . he thought that he could\naccomplish this from houston ,\nbut i think direct communication makes things much easier . i think his trip\nto london\nmakes a lot of sense . kmv confirmed the meeting on the 20 th . we hope to get\nmore information about\nthe scope of their model and assess its the applicability to your business .\nvasant , after a few days of immersion in your operations , will be able to\nassess better the usefulness of the\nmodel .\nvince\nbryan seyfried\n02 / 29 / 2000 03 : 35 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : trip to san francisco 3 / 19 - 3 / 20 / 00\nvince - it is highly unlikely that i can make the trip but i spoke with\nvasant today and he will try to get to london beforehand and will have good\nidea of our needs . hopefully this will not cause too many problems .\nbs\nshirley crenshaw\n29 / 02 / 2000 15 : 57\nto : william s bradford / hou / ect @ ect , bryan seyfried / lon / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , robert . rudy @ kmv . com\ncc :\nsubject : trip to san francisco 3 / 19 - 3 / 20 / 00\nhello all :\nattached is a copy of vince kaminski ' s itinerary for the trip to san francisco\non march 20 , 2000 .\nplease make your plans accordingly . if you need anything else , please\nlet me know\nthanks !\nshirley\nadm . coord .\n713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.618+0000", "entityId": 6981, "properties": {"text": "Subject: off site with john griebling ' s optical network engineers\nhi shirley , please give me a few dates form end of march to first week in\napril to do an offsite for vince ' s direct reports ( including myself ) and\nselected ebs research people . this includes , vince direct report from our\nresearch group and the following people from ebs research :\nravi , stinson , samer , chinowee .\nthe agenda will include : research people giving several mini presentations on\ntrading , market development ( history of nat gas , electricity , etc . ) , pricing ,\netc . . .\njohn ' s people will do similar mini presentations on optical network\nengineering , optical components , provisioning , telecom markets , pricing ,\netc . . . .\nif scott yeager can make it , he will do his magic via quick motivational\nspeech on the vision of ebs , etc . .\nit is will be strictly technical to technical professional meeting to get to\nknow each others group . so , do not include others unles stinson or i look at\nthe additions case - by - case .\njohn suggested scott yeager ' s summar house in denver for this event . please\nfollow this up with scott ' s assistant ( scott may not know about this if john\nhas not told him so you should explain the intend , etc . ) to get in touch with\nscott . i ' ll cc this e - mail to give scott a heads up .\nwe can do half day friday and all day saturday . or , we can do the whole\nweekend and people will have an option to bring family to nearby hotel\n( family expense in not on ebs ) . we will have to sort all this out when we\nhave a chance to talk to john & scott .\ni just wanted to get the ball rolling but getting dates and place first .\nthanks ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.623+0000", "entityId": 6982, "properties": {"text": "Subject: bonds\nhello , vince .\nwe still have the 2 other bonds in our inventory . are you interested ?\ndavid c . walkup\nfinancial consultant\n713 - 658 - 1685\n800 - 456 - 9712\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party . for your protection , avoid sending\nidentifying information , such as account , social security or card numbers to\nus or others . further , do not send time - sensitive , action - oriented\nmessages , such as transaction orders , fund transfer instructions , or check\nstop payments , as it is our policy not to accept such items electronicall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.627+0000", "entityId": 6983, "properties": {"text": "Subject: re : job application\nthank you .\nnurit\nnurit krausz , ph . d . http : / / www . ma . utexas . edu / users / nurit /\ndept . of mathematics phone : ( 512 ) 471 - 7170\nuniversity of texas at austin office : rlm 11 . 170 hours : mwf 8 : 30 - 10\non thu , 2 mar 2000 , vince j kaminski wrote :\n>\n>\n> nurit ,\n>\n> we shall schedule a phone interview for you sometimes next week .\n> my assistant , shirley crenshaw ( 713 853 5290 ) , will call you to discuss the\n> timing .\n>\n> vince kaminski\n>\n>\n>\n>\n>\n>\n> nurit krausz on 03 / 01 / 2000 10 : 44 : 00 am\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc : nurit krausz\n> subject : job application\n>\n>\n>\n>\n> dear dr . kaminski ,\n>\n> i currently hold a post - doctorate position in the mathematics\n> department at the university of texas at austin ( with a ph . d .\n> in theoretical physics ) . although my position here is renewable\n> until summer 2001 , i would like to move on to a more dynamic field\n> where i can still use my analytical skills and mathematical knowledge .\n> since attending a series of lectures on mathematical finance given\n> by dr . marc potters last summer i started studying the subject on my\n> own and found it intriguing and challenging .\n>\n> i am interested in a position in your group ( rac ) at enron .\n> last fall in a career seminar at ut you mentioned that people who are\n> interested can send you their resume . if this is still relevant , please\n> find below my resume ( in word 97 and text formats ) .\n> thank you for your time .\n>\n> yours ,\n> nurit krausz\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> nurit krausz , ph . d . http : / / www . ma . utexas . edu / users / nurit /\n> dept . of mathematics phone : ( 512 ) 471 - 7170\n> university of texas at austin office : rlm 11 . 170 hours : mwf 8 : 30 - 10\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> resume\n>\n> nurit krausz\n> university of texas\n> department of mathematics\n> austin , tx 78712\n> phone : ( 512 ) 471 - 7170\n> e - mail : nurit @ math . utexas . edu\n> http : / / rene . ma . utexas . edu / users / nurit /\n>\n> objective\n>\n> a position in the field of mathematical finance utilizing broad\n> mathematical knowledge , innovative thinking and creativity .\n>\n> summary of qualifications\n>\n> with extensive academic background and research experience ,\n> combined with experience as an engineer in the israeli air force ,\n> i possess the following :\n> * deep mathematical and scientific knowledge .\n> * strong analytical and problem - solving skills .\n> * proven ability to quickly become an expert in new subjects .\n> * ability to present clearly and effectively complicated subjects .\n> * ability to work productively both independently and in teams .\n>\n> academic positions\n>\n> 1998 - present : post - doctorate position at the university of texas\n> at austin , department of mathematics .\n>\n> education\n>\n> 1994 - 1998 : d . sc . in physics at the technion - israel inst . of tech .\n> research thesis : quantum dynamics on non - compact group manifolds .\n> supervisor : prof . m . marinov .\n>\n> 1992 - 1994 : m . sc . in physics at the technion - israel inst . of tech .\n> research thesis : a study of scintillation in doped silica glass\n> for detection of neutrino oscillation .\n> supervisor : prof . j . goldberg .\n> the experiments were performed at cern during the summer of 1993 .\n> * performed the design , testing , and installation of the experimental\n> setup from remote - controlled mechanical equipment to sophisticated\n> electronics .\n> * performed statistical data analysis and critical interpretation of\n> results using software developed at cern ( paw ) .\n> * solved a complicated problem of track reconstruction through an\n> unusually shaped magnet for the chorus collaboration at cern , and\n> delivered a computer code ready for implementation , still in use\n> today .\n>\n> 1985 - 1989 : b . sc . in aeronautical engineering cum laude at the\n> technion - israel institute of technology .\n>\n> military service\n>\n> 1989 - 1992 : aeronautic design engineer in the israeli air force .\n> rank : first lieutenant .\n> * designed and supervised numerous prototype installations of\n> electronic equipment and changes in combat planes .\n> * wrote procedures for harsh environmental durability tests for cockpit\n> and avionics bay - mounted equipment .\n> * negotiated and supervised manufacturing of parts with contractors .\n> * attended project management , engineering and product reliability\n> and maintenance courses .\n> * programmed simulations of ammunition trajectories from moving\n> aircrafts .\n>\n> teaching experience :\n>\n> 1998 - present : lecturer at the university of texas\n> undergraduate courses : precalculus , calculus , linear algebra\n> graduate course : theory of lie groups\n>\n> 1992 - 1997 physics department , technion , teaching assistant\n> undergraduate course : elementary lab in mechanics\n> graduate courses : group theory for physics ,\n> introduction to particle physics , relativistic quantum mechanics .\n>\n> computer knowledge :\n>\n> unix and windows os , most common word processors , excel ,\n> maple , mathematica , fortran , html , latex .\n>\n> publications :\n>\n> 1 . j . goldberg and n . krausz , response of cerium - doped silica glass\n> in a beam at cern , proceedings of the scifi conference , notre dame\n> university , notre dame , indiana ( 1993 ) .\n> 2 . n . krausz and m . s . marinov , quantal dynamics on non - compact\n> groups , proceedings of the 5 th international wigner symposium ,\n> world scientific ( 1998 ) , 398 .\n> 3 . n . krausz and m . s . marinov , exact evolution operator on\n> non - compact group manifolds , quant - ph / 9709050 ,\n> submitted to j . of math . phys .\n> 4 . n . krausz , spherical averages in minkowski space , in preparation .\n> 5 . n . krausz , quantum field theory in minkowski space , in preparation .\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.633+0000", "entityId": 6984, "properties": {"text": "Subject: thank - you . . .\ndear dr . kaminski :\ni enjoyed our discussion this morning . it sounds like there is a great deal\nof overlap between enron business units and my interests . i am very much\nlooking forward to meeting you and your colleagues . thank - you for the\ninvitation to interview with your group .\nsincerely ,\nrodney greene\nwork : 312 - 692 - 8129 rgreene @ heliosgroup . com\nhome : 773 - 881 - 7142 rodneyg @ interaccess . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.638+0000", "entityId": 6985, "properties": {"text": "Subject: job application\ndear dr . kaminski ,\ni currently hold a post - doctorate position in the mathematics\ndepartment at the university of texas at austin ( with a ph . d .\nin theoretical physics ) . although my position here is renewable\nuntil summer 2001 , i would like to move on to a more dynamic field\nwhere i can still use my analytical skills and mathematical knowledge .\nsince attending a series of lectures on mathematical finance given\nby dr . marc potters last summer i started studying the subject on my\nown and found it intriguing and challenging .\ni am interested in a position in your group ( rac ) at enron .\nlast fall in a career seminar at ut you mentioned that people who are\ninterested can send you their resume . if this is still relevant , please\nfind below my resume ( in word 97 and text formats ) .\nthank you for your time .\nyours ,\nnurit krausz\nnurit krausz , ph . d . http : / / www . ma . utexas . edu / users / nurit /\ndept . of mathematics phone : ( 512 ) 471 - 7170\nuniversity of texas at austin office : rlm 11 . 170 hours : mwf 8 : 30 - 10\nresume\nnurit krausz\nuniversity of texas\ndepartment of mathematics\naustin , tx 78712\nphone : ( 512 ) 471 - 7170\ne - mail : nurit @ math . utexas . edu\nhttp : / / rene . ma . utexas . edu / users / nurit /\nobjective\na position in the field of mathematical finance utilizing broad\nmathematical knowledge , innovative thinking and creativity .\nsummary of qualifications\nwith extensive academic background and research experience ,\ncombined with experience as an engineer in the israeli air force ,\ni possess the following :\n* deep mathematical and scientific knowledge .\n* strong analytical and problem - solving skills .\n* proven ability to quickly become an expert in new subjects .\n* ability to present clearly and effectively complicated subjects .\n* ability to work productively both independently and in teams .\nacademic positions\n1998 - present : post - doctorate position at the university of texas\nat austin , department of mathematics .\neducation\n1994 - 1998 : d . sc . in physics at the technion - israel inst . of tech .\nresearch thesis : quantum dynamics on non - compact group manifolds .\nsupervisor : prof . m . marinov .\n1992 - 1994 : m . sc . in physics at the technion - israel inst . of tech .\nresearch thesis : a study of scintillation in doped silica glass\nfor detection of neutrino oscillation .\nsupervisor : prof . j . goldberg .\nthe experiments were performed at cern during the summer of 1993 .\n* performed the design , testing , and installation of the experimental\nsetup from remote - controlled mechanical equipment to sophisticated\nelectronics .\n* performed statistical data analysis and critical interpretation of\nresults using software developed at cern ( paw ) .\n* solved a complicated problem of track reconstruction through an\nunusually shaped magnet for the chorus collaboration at cern , and\ndelivered a computer code ready for implementation , still in use\ntoday .\n1985 - 1989 : b . sc . in aeronautical engineering cum laude at the\ntechnion - israel institute of technology .\nmilitary service\n1989 - 1992 : aeronautic design engineer in the israeli air force .\nrank : first lieutenant .\n* designed and supervised numerous prototype installations of\nelectronic equipment and changes in combat planes .\n* wrote procedures for harsh environmental durability tests for cockpit\nand avionics bay - mounted equipment .\n* negotiated and supervised manufacturing of parts with contractors .\n* attended project management , engineering and product reliability\nand maintenance courses .\n* programmed simulations of ammunition trajectories from moving\naircrafts .\nteaching experience :\n1998 - present : lecturer at the university of texas\nundergraduate courses : precalculus , calculus , linear algebra\ngraduate course : theory of lie groups\n1992 - 1997 physics department , technion , teaching assistant\nundergraduate course : elementary lab in mechanics\ngraduate courses : group theory for physics ,\nintroduction to particle physics , relativistic quantum mechanics .\ncomputer knowledge :\nunix and windows os , most common word processors , excel ,\nmaple , mathematica , fortran , html , latex .\npublications :\n1 . j . goldberg and n . krausz , response of cerium - doped silica glass\nin a beam at cern , proceedings of the scifi conference , notre dame\nuniversity , notre dame , indiana ( 1993 ) .\n2 . n . krausz and m . s . marinov , quantal dynamics on non - compact\ngroups , proceedings of the 5 th international wigner symposium ,\nworld scientific ( 1998 ) , 398 .\n3 . n . krausz and m . s . marinov , exact evolution operator on\nnon - compact group manifolds , quant - ph / 9709050 ,\nsubmitted to j . of math . phys .\n4 . n . krausz , spherical averages in minkowski space , in preparation .\n5 . n . krausz , quantum field theory in minkowski space , in preparation .\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.642+0000", "entityId": 6986, "properties": {"text": "Subject: re : a very good candidate\nok , will get that started . we ' ll let you know when rodney can be available\nfor a trip to houston and will follow up with you to obtain the complete\ninterviewer list .\n- elizabeth\nvince j kaminski\n03 / 01 / 2000 09 : 31 am\nto : elizabeth grant / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : a very good candidate\nelizabeth ,\nwe got a very good candidate we would like to bring over for an interview .\nhe came through an agency on london ( the address is on the resumes ) .\nthe contact at the agency is anthony regamey .\nplease , contact them to arrange an interview in houston . please , include\nme , stinson gibner , vasant shanbhogue , tom gros ( ebs ) , jean mrha ,\nbrad blesie . we shall think about some other names later .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.651+0000", "entityId": 6987, "properties": {"text": "Subject: re : saturday lunch\nnick ,\nthanks for your message . saturday , 11 : 45 at the terman is fine with\nme . see you there .\nvince\nnick bambos on 03 / 01 / 2000 12 : 32 : 24 pm\nto : vince . j . kaminski @ enron . com\ncc : vkaminski @ aol . com , lorriep @ stanford . edu\nsubject : saturday lunch\nvince ,\nunfortunately , the faculty club is closed on saturday .\n> > > lorrie , could you please make reservations\nfor 2 at , say , spieto ' s . < < < <\ni am looking forward to seeing you on saturday . shall\nwe meet at the terman ground floor lobby at 11 : 45 ?\ni think the packard building is locked on saturday .\nthanks ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.657+0000", "entityId": 6988, "properties": {"text": "Subject: re : tom halliburton\ndear all :\na few words about tom . he is a power engineer type who has previously worked\nat northwestern us and new zealand utilities on various projects including\nasset planning and hydro scheduling . he was hired by ei structuring to\noversee modeling efforts using sddp , henwood , etc . because of the recent\nimplosion at ei apache , tom ' s group has effectively evaporated , and thus he\nis looking for a new home . he has some finance background from having to\ndo asset evaluation for utility rate filings . he has almost no options\nexperience . he seems to have quite a bit of experience in some classes of or\nproblems .\nclearly the most obvious fit is with my group , but the idea is for you all to\nsee if tom has a tool set that may be of use to other research projects .\nand , as usual , the personality fit is the other aspect to examine .\nthis is meant to be casual . if the consensus is positive , then i will explore\nthe formalities of such a transfer .\nthanks ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.662+0000", "entityId": 6989, "properties": {"text": "Subject: ravi ' s schedule for next week\nproject hamachi lives on ! john griebling asked the crew to come back for\nmarch 7 - 10 th .\nkristy , please book me to come back to project hamachi ( omin hotel in\nbroomfield ) . that is , i need to come back to broomfield , co next week tues :\narrive at omin hotel and be in the office here at 12 : 00 noon march 7 th ,\n2000 . so i need to take the earliest flight out of houston to get to denver\nairport in time to get to the hotel checked in , etc . . . . so i need to land\n~ 10 am .\ni ' ll come back to houston end of day friday .\nthanks ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.667+0000", "entityId": 6990, "properties": {"text": "Subject: off work\nall\ni will be taking the following days off work :\nthursday 9 th march ( all day )\nfriday 10 th march ( all day )\nmonday 13 th march ( all day )\ntuesday 14 th march ( all day )\nwednesay 15 th march ( morning only )\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.672+0000", "entityId": 6991, "properties": {"text": "Subject: wallet size telephone cards for the research group\nhi dee :\nper our conversation , i am attaching the listing of the research group .\nwe would like 50 sets of the wallet size telephone cards made up .\nour co . # is 0011 and our rc # is 100038 .\nif you have any questions , please call me at 3 - 5290 .\nthanks and have a great day !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.677+0000", "entityId": 6992, "properties": {"text": "Subject: risk contact\nsteve ,\ni talked to sh ? n about your paper .\nplease , feel free to contact her directly and discuss\nthe publication options .\nvince\nsh ? n millie\nrisk books\n28 - 29 haymarket\nlondon swly 4 rx\nphone : 44 ( 0 ) 171 484 9740\nfax : 44 ( 0 ) 171 484 9758\ne - mail : shan @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.682+0000", "entityId": 6993, "properties": {"text": "Subject: april lst party !\nthis is primarily for enron researchers , psuedo - researchers ( spouses ) , and\nquasi - researchers ( kids ) . wannabe - researchers will be strictly bounded in\nnumber !\nhope you can come with your family . please reply asap so we can plan .\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.687+0000", "entityId": 6994, "properties": {"text": "Subject: voila\nhey guys , the model just converged , beautifully . thanks for having the guts\nto try something big .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.692+0000", "entityId": 6995, "properties": {"text": "Subject: meeting during energy expo\nthis will confirm our meeting at your office on 16 th of march 2000\nat 8 am .\nwe will be at the energy expo booth nbr . 931 on the 14 th \u000f - 16 th\nand staying at the allen park inn on allen parkway if you need to\nreach us .\nliam leahy\nfor\ndr . robert e . brooks\ndirect line ( 323 ) 913 - 3355\nmain line ( 323 ) 663 - 4831\nhttp : / / gpcm . rbac . com /\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.697+0000", "entityId": 6996, "properties": {"text": "Subject: the light at the end of tunnel !\nhi all ,\nafter all the hard work , we are at time of harvesting ! but as we all know\nthat there still a few more hurdles ahead of us in order to release credit\nreserve model at end of march , but on the bright side , vince kaminski has\npromised us a big feast after we push the product out of door . so let commit\nour self to do one last dash to the finish line !\nhere i composed a list of task that we need to accomplish for the release ,\nlet hit the items on the list and get it over with\ncontinue the comparison test between old and new model winston\ntesting of theoretical deals ! finish the comparison between the theoretical\nvalue and model valuation ! tanya t . winston j .\nmaking the default probability table a configurable component and runtime\nparameter . winston j . , ramesh g .\nsimulation dimension change for different analysis requirement , default path\n5000 max and price path 1000 max . winston\ninterface to run the credit reserve in grms system ( for now ) ramesh\nrun time option , applying stress scenario on input curves for any or all\ncurves ( sensitivity analysis ) winston\nruntime option , curve replacement for any or all curves ( attribution\nanalysis ) winston\nvalidation of different insurance plan tanya , winston\nintra - month position validation to see the impact of excluding of\nintra - manoth position on credit reserve vicent tang , ramesh\nexchange deals handling ( are they using the highest e - rating ? ) ramesh\nsaving credit reserve result , please grant winston and xiaojun the privilege\nto save the result into production database , ramesh , winston , xiaojun\ncredit reserve on legal id , based on the data clean up of all spreadsheets (\nnot scheduled ) !\ndeployment plan . one credit instance at any time until we get out new\ncomputing server ( probably in april time frame )\nthis list may be an ever changing list and may also incomplete , please let me\nknow if i missed anything or any deletions and additions ! please let me know\nif anything i can clarify .\nthanks !\njonathan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.701+0000", "entityId": 6997, "properties": {"text": "Subject: our meeting next week\nvince and grant ,\nfirst let me apologize for cancelling our meeting with you this friday . i\nhope we can reschedule next week as i ' ll arrive in houston monday mid - day .\ni ' d love to talk to you as i know the knowledge base in your group related to\nmy new responsibilities is huge . will you be able to free up some time of\nsome of your team members to help us ?\nas an example , i ' d like to show you our position book ( cash ) . it ' s far from\nbeing perfect . i ' d like to know whether we should persevere and improve it\nor whether there are some models in ena that we could copycat . . . .\ni look forward to seeing you next week ,\nremi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.706+0000", "entityId": 6998, "properties": {"text": "Subject: re : risk european energy 2000\nsteve ,\nno problem .\ngrant will speak in place , but risk may not be aware of it yet .\nyou can just register as my guest .\nvince\nsteven leppard\n03 / 03 / 2000 06 : 03 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : risk european energy 2000\nhi vince\ndo you get your regular freebie \" ticket \" for the risk conference in\namsterdam ? ( you know what i ' m going to ask next . . . ) it looks like there ' s\nsome interesting stuff , and attending would certainly broaden my horizons .\nwould you kindly consider bringing me along ?\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.710+0000", "entityId": 6999, "properties": {"text": "Subject: msl 50 confirmation\nthank you for your involvement with the 2000 isuzu msl 50 bike tour , a texas\ncycling tradition . check the bottom of this email for a custom donation\nletter that you can use for on - line donations in your name .\nhere is a copy of the information you submitted :\nisuzu msl 50 contribution confirmation\ncontribution on behalf of : john norden / jnorden @ enron . com\ndescription : donations\namount : $ 25 . 00\norder _ id : 9910\nname : wincenty j . kaminski\ncompany : enron\naddressl : 1400 smith\naddress 2 : ebl 962\ncity : houston\nstate : tx\nzip : 77002\ncountry : united states of america\nphone : 281 367 5377\ne - mail : vkamins @ enron . com\naccount name : wincenty j . kaminski\ncard type : visa\ntotal : $ 25 . 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.715+0000", "entityId": 7000, "properties": {"text": "Subject: ms 150\ndear friends and family ,\non april 15 and 16 i will be joining thousands of riders and volunteers on\nthe ms 150 which is a two day bike tour from houston to austin covering 182\nmiles dedicated to end the devastating effects of multiple sclerosis .\nmultiple sclerosis is a disease that is total unpredictable . symptoms may be\nmild such as numbness in the limbs , or severe paralysis or loss of vision .\nmost people with ms are diagnosed between the ages of 20 and 40 but the\nunpredictable physical and emotional effects can be lifelong\nmy wife , ilene was diagnosed with ms almost three years ago ; at first i was\nat a loss of how i could support her . that was until i heard of the ms 150 ,\nwhich is one of the greatest challenges of my life . it is my choice to\nparticipate in the ms 150 , ilene does not have a choice , as she has to live\nwith ms every day .\nthis will be my third year riding in the ms 150 raising money for the\nnational ms society to fight multiple sclerosis . in 1998 my goal was simple .\nit was to raise money and ride the 182 miles on my own . i succeeded in my\nendeavor by completing the ride on my own steam and raising $ 6 , 000 . in 1999\ni raised my goal to $ 10 , 000 and finished the tour . not only did i meet my\ngoal , but surpassed it by raising $ 15 , 000 to fight this devastating disease\nwith the help of my friends and family . this year my goal is even greater !\nmy wife and i are once again asking for your help . this year on the 2000 ms\n150 bike tour , my goal is to raise $ 20 , 000 .\nenron is a big supporter of the ms 150 . for the past two years we were the\nlargest bike team and biggest fundraiser of any corporate team nationally .\nlast year we raised $ 310 , 000 with 300 riders . enron will match dollar for\ndollar on all contributions donated in my name . using this secure , fast and\neasy web page you can make a tax - deductible donation ( if clicking on the link\nbelow does not work you can cut and paste the link to your browser ) .\nmail = jnorden % 40 enron % 2 ecom\nif you would prefer to send a check it should be made out to the national ms\nsociety and sent to the address below .\ni appreciate your continued support of the ms society and the isuzu ms 150\nbike tour . the funds raised on the isuzu ms 150 bike tour provides\nequipment , financial assistance , self - help groups , counseling , information\nand resources , as well as education for people with ms and their families .\nyour support truly makes a difference in the lives of people with multiple\nsclerosis .\nfor additional information on ms http : / / www . nmss . org\nfor additional information the ms 150 http : / / www . msl 50 . org\nthank you for your support ,\njohn norden\njohn norden\ndirector technology\nenron\n1400 smith st\nhouston tx 77002\n713 / 853 - 3240", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.719+0000", "entityId": 7001, "properties": {"text": "Subject: re : financial engineering associates\nit is the special package for options with multiple assets and options on\naverages .\n- - stinson\nvince j kaminski\n03 / 06 / 2000 03 : 31 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : financial engineering associates\nstinson ,\nwhat is spav ? is it the basket option model ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 06 / 2000\n03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : karla feldman 03 / 06 / 2000 01 : 50 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : financial engineering associates\nvince and stinson ,\ni checked the file and the maintenance that automatically renews on 4 / 1 / 2000\nis for the following products :\nall 4 of your @ global licenses\nspav\nswing\ni will go ahead and contact fea and see about getting the renewal invoice for\nthese . i ' ll send it to shirley for payment once i have it .\nthe products : @ interest , seapc , and seapp have not been on maintenance for a\nwhile . fea told us a couple of years ago i believe that they do not have\nmaintenance available for these products any longer . so , you don ' t need to\nworry about cancelling @ interest .\nalso , just fyi - your @ energy . 1 and @ energy . 2 licenses have maintenance\nthrough 10 / 20 / 2000 .\nif you have any questions , please let me know . otherwise , i will proceed\nwith contacting fea about you renewal of the @ global , spav , and swing\nlicenses .\nthanks ,\nkarla", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.724+0000", "entityId": 7002, "properties": {"text": "Subject: re : financial engineering associates\nkarla ,\nthanks . here are helyette ' s coordinates :\nhelyette geman\nuniversite de paris - dauphine\nplace du marechal de lattre - de - tassigny\n75775 paris cedex 16\nphone : 33 1 44 054 943 ( o )\n33 1 46 040 110 ( h ) ( f )\nfax : 33 1 44 054 937\ngeman @ cidmail . services . dauphine . fr\nhelyette . geman @ dauphine . fr\nvince\nfrom : karla feldman 03 / 06 / 2000 01 : 50 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : financial engineering associates\nvince and stinson ,\ni checked the file and the maintenance that automatically renews on 4 / 1 / 2000\nis for the following products :\nall 4 of your @ global licenses\nspav\nswing\ni will go ahead and contact fea and see about getting the renewal invoice for\nthese . i ' ll send it to shirley for payment once i have it .\nthe products : @ interest , seapc , and seapp have not been on maintenance for a\nwhile . fea told us a couple of years ago i believe that they do not have\nmaintenance available for these products any longer . so , you don ' t need to\nworry about cancelling @ interest .\nalso , just fyi - your @ energy . 1 and @ energy . 2 licenses have maintenance\nthrough 10 / 20 / 2000 .\nif you have any questions , please let me know . otherwise , i will proceed\nwith contacting fea about you renewal of the @ global , spav , and swing\nlicenses .\nthanks ,\nkarla", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.728+0000", "entityId": 7003, "properties": {"text": "Subject: re : fwd : australian energy 2000\ndear vince ,\ni am truly grateful . that would be excellent .\nmany thanks ,\njoel\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : eprmconf @ asiarisk . com . hk\ncc : vince j kaminski ; vkaminski @ aol . com\ndate : 02 march 2000 14 : 56\nsubject : re : fwd : australian energy 2000\n>\n>\n> joel ,\n>\n> i shall be glad to take all the remaining sections .\n>\n> i have spoken on this subject several times so it will\n> relatively easy to prepare it .\n>\n> vince\n>\n>\n>\n>\n>\n> vkaminski @ aol . com on 02 / 29 / 2000 09 : 27 : 19 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : fwd : australian energy 2000\n>\n>\n>\n>\n> return - path :\n> received : from rly - ydol . mx . aol . com ( rly - ydol . mail . aol . com [ 172 . 18 . 150 . 1 ] )\nby\n> air - ydo 3 . mail . aol . com ( v 69 . 17 ) with esmtp ; tue , 29 feb 2000\n: 30 : 22 - 0500\n> received : from srol . imsbiz . com ( srol . imsbiz . com [ 206 . 161 . 62 . 5 ] ) by\n> rly - ydol . mx . aol . com ( v 69 . 17 ) with esmtp ; tue , 29 feb 2000\n9 : 51 - 0500\n> received : from joel ( [ 210 . 176 . 232 . 92 ] ) by srol . imsbiz . com ( 8 . 8 . 8 / 8 . 8 . 8 )\nwith\n> smtp id kaao 0361 for ; wed , 1 mar 2000 10 : 29 : 44 + 0800\n> message - id :\n> x - sender : eprmconf @ pop . asiarisk . com . hk\n> x - mailer : qualcomm windows eudora light version 3 . 0 . 5 ( 32 )\n> date : wed , 01 mar 2000 10 : 32 : 41 + 0800\n> to : vkaminski @ aol . com\n> from : joel hanley\n> subject : re : australian energy 2000\n> in - reply - to :\n> mime - version : 1 . 0\n> content - type : multipart / mixed ;\n>\n> dear vince ,\n> i am delighted to be working with you at last . i can confirm the lessons\n> learned session , and i shall leave it up to you to consider the content .\n> the session will last one hour , including q the second topic\n> will\n> > be \" value - at - risk \" ( please , feel free to make this title more specific ) .\n> >\n> > i look forward to meeting you in australia in july .\n> >\n> > vince\n> >\n> >\n>\n>\n>\n>\n> ps . as of friday 3 rd march , i shall be back in my london office where my\n> email address is hanley @ risk . co . uk and my number is + 44 207 484 9885 .\n>\n> ( see attached file : varseml . doc )\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.733+0000", "entityId": 7004, "properties": {"text": "Subject: optical network engineering & enron research offsite meeting\nhi john , as per our discussion and e - mails , i am suggesting the following\ndates for the subject offsite : april 14 & 15 th ( friday & sat ) . place and\nagenda to follow once this date is nailed up . the heads of each group will\ndecide who will attend . we would also invite kevin hannon , scott yeager , tom\ngros , ted seitz and jean mrha once the dates and agenda are agreed upon by\nthe technical folks .\nas before , the idea is to introduce the two of the most technical groups\nwithin enron and to exchange ideas and issues . the enron research team will\nprovide trading and modeling presentations and the optical network\nengineering team will present networking and components related topics .\ntake away from the two days will be to provide john griebling ' s group with\nbetter understanding about how the trading markets have developed in general\nand energy markets in particular via enron ( i . e . , how the sausage was\nmade ! ) . likewise , john ' s group will provide us with better understanding of\noptical networking from a technical perspective . particularily , how ebs is\nplanning to develop the puplic switched optical network ( pson ) that john has\n' branded ' our pooling point based network !\nplease reply asap if these two days ( april 14 & 15 ) will work . additionally ,\njohn , is the original suggestion to hold it in scott yeager ' s cabin somewhere\nup in colorado mts . still holds ? if yes , i should probably let scott know !\nif not , i ' ll try to find other places - - any suggestions , anyone ?\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.738+0000", "entityId": 7005, "properties": {"text": "Subject: re : off site with john griebling ' s optical network engineers\nravi ,\nsounds good .\nvince\nravi thuraisingham @ enron communications on 03 / 06 / 2000 12 : 44 : 08 pm\nto : shirley crenshaw / hou / ect @ ect , vince kaminski\ncc :\nsubject : re : off site with john griebling ' s optical network engineers\njohn can ' t do it till after april 10 th . so we will shoot for april 13 , etc .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 06 / 00 12 : 32\npm - - - - -\njohn _ griebling @ palm . net\n03 / 02 / 00 09 : 58 am\nplease respond to john _ griebling\nto : ravi thuraisingham / enron communications @ enron communications\ncc :\nsubject : re : off site with john griebling ' s optical network engineers\ni won ' t be available until after april 10 th .\nravi _ thuraisingham @ enron . net wrote on 3 / 1 / 00 12 : 29 :\nhi shirley , please give me a few dates form end of march to first week\nin april\nto do an offsite for vince ' s direct reports ( including myself ) and\nselected ebs\nresearch people . this includes , vince direct report from our research\ngroup and\nthe following people fr", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.742+0000", "entityId": 7006, "properties": {"text": "Subject: re : network planning\nstinson , i had a discussion with jim and he said that the company ' s name is\nmill three . they provide modeling tools for tiered qos and the like for\nnetwork planning . he said that the code is written in c and that we should\nbe able to work with it . he will get us the contact name and we can get a\npresentation for us . jim said that he arranged for this before he met me and\nlearned of our ( ebs research ) role in this matter . i made it clear to jim\nthat john griebling had asked us to set up this group to do modeling and that\nwe are in the process of arranging for 4 or modeling experts to reside in\nhouston . from now on jim and i will work hand and hand on such issues along\nwith you to make sure that we initiate development efforts as soon as\npossible to utilize krishna , samer and co . asap . . .\ni ' ll take care of arranging a meeting with these consultatants asap .\nmy involvement in hamachi is through jim irvine . jim and i are working very\nwell together due to our engineering background . jim has been a network\n( communications ) engineer in the army for about 20 years . for hamachi , there\nwere gap analysis that needed to be done w . r . t . network reach and when and\nwhere the network will be available ( ebs ' and hamachi ' s ) . additionally , we\nwould look at when tom gros wanted pooling points up and running , we would\nthen look at hamachi ' s pooling point sites and come up with requests to\nchange dates or third party involvements .\nfor the most part , our efforts has been to interview hamachi network\ndevelopers about their plans and put the data together in a manner that we\ncan summarize for john . additionally , we ' ve had two meetings with sycamore\n( they have offices in denver ) on their products and brett gave a presentation\non his effort to jim , etc . . . . more details later when we meet .\nravi .\nstinson gibner @ ect\n03 / 02 / 00 08 : 52 am\nto : ravi thuraisingham / enron communications @ enron communications @ enron\ncc :\nsubject : network planning\nravi :\ni was told by john bloomer that there is a group of consultants in the\nportland office from a company called ( i think ) m 3 i . they are doing\nnetwork consumption and operations modelling . jim irvine or shawna meyer\nwere given as enron contacts on this project . we need to find out what\nexactly this group is doing and see if we should get samer and either you or\nme to go , find out the details , and get a brain dump of what they have\naccomplished to see if it can be used in our modelling efforts .\ncan you find out what jim knows about this project and get back to me ?\nthanks ,\n- - stinson\nps how is hamachi going , and what has been your role there ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.747+0000", "entityId": 7007, "properties": {"text": "Subject: important : mountain top meetings scheduled for next week\nfyi .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 06 / 00 12 : 46\npm - - - - -\njeanette busse\n03 / 01 / 00 03 : 02 pm\nto : dayne relihan / enron communications @ enron communications , dorn\nhetzel / enron communications @ enron communications , jeanette busse / enron\ncommunications @ enron communications , jim irvine / enron communications @ enron\ncommunications , john bloomer / enron communications @ enron communications , john\ngriebling / enron communications @ enron communications , kelly williams / enron\ncommunications @ enron communications , kenny burroughs / enron\ncommunications @ enron communications , kevin kohnstamm / enron\ncommunications @ enron communications , laura beneville / enron\ncommunications @ enron communications , phil sisneros / enron communications @ enron\ncommunications , ravi thuraisingham / enron communications @ enron communications ,\nrob kolosvary / enron communications @ enron communications , scott smith / enron\ncommunications @ enron communications , steve elliott / enron communications @ enron\ncommunications , steve mcnear / enron communications @ enron communications , tom\nhuntington / enron communications @ enron communications , rebecca lynch / enron\ncommunications @ enron communications , david cox / enron communications @ enron\ncommunications , kenton erwin / enron communications @ enron communications\ncc : john griebling / enron communications @ enron communications , sheryl\nlara / enron communications @ enron communications , nicole gilson / enron\ncommunications @ enron communications , jennifer adams / enron\ncommunications @ enron communications\nsubject : important : mountain top meetings scheduled for next week\nteam ,\njohn griebling requests the following individuals return to the omni hotel at\ninterlocken in broomfield , co for mountain top meetings to begin at 12 : 00 pm\n( noon ) on march 7 th in the mountain top suite # 1139 . . please be prepared to\nstay in broomfield co at the omni hotel through march 10 th , 3 : 00 pm .\nthe mountain top teams are assembled as follows :\nrequired technical team attendance required contract negotiation team\nlaura beneville steve elliott\nkenny burroughs john griebling\njim irvine tom huntington\ndayne relihan kenton erwin\nphil sisneros\nrebecca lynch ( new team member ) contract negotiation team ( attendance\nrequested )\njeanette busse david cox\nscott smith dorn hetzel\nravi thuraisingham\nrob kolosvary\nkelly williams ( approved by kenny burroughs )\nplease let me know if you have any questions , i can be reached on my cell\nphone at 503 - 887 - 6397 .\nbest regards ,\njeanette\njeanette a . busse\nproject manager , strategic alliances\nenron broadband services , inc . ( formerly enron communications )\n2100 sw river parkway , suite 600\nportland , or 97201\noffice : 503 . 886 . 0214 fax : 503 . 886 . 0434\nemail : jeanette _ busse @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.751+0000", "entityId": 7008, "properties": {"text": "Subject: re : off site with john griebling ' s optical network engineers\napril 13 , 14 is better for me as well . i ' ll toss these dates to john\ngriebling ' s people .\nravi .\nshirley crenshaw @ ect\n03 / 02 / 00 01 : 30 pm\nto : ravi thuraisingham / enron communications @ enron communications @ enron\ncc : vince j kaminski / hou / ect @ ect , kristy carnes / enron communications @ enron\ncommunications\nsubject : re : off site with john griebling ' s optical network engineers\nravi :\ni previously told you that the weekend of march 31 st would be allright for\nthis , however , i just found out that krishna has planned a research party\nat his house ( it is for all of research on saturday , april 1 and vince told\nhim it would be allright - it is his daughter ' s birthday ) . it looks now like\nvince\nand his reports will be unable to do this until the weekend of the 13 and\n14 th\nof april .\nplease advise .\nshirley\nravi thuraisingham @ enron communications on 03 / 01 / 2000 12 : 56 : 25 pm\nto : shirley crenshaw / hou / ect @ ect @ enron\ncc :\nsubject : re : off site with john griebling ' s optical network engineers\nyes .\nshirley crenshaw @ ect\n03 / 01 / 00 12 : 54 pm\nto : ravi thuraisingham / enron communications @ enron communications @ enron\ncc :\nsubject : re : off site with john griebling ' s optical network engineers\nravi :\ndoes this include vince and all of his direct reports ?\nravi thuraisingham @ enron communications on 03 / 01 / 2000 12 : 29 : 00 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , vince kaminski , john _ griebling @ palm . net ,\nscott yeager / enron communications @ enron communications , kristy carnes / enron\ncommunications @ enron communications , dorn _ hetzel @ palm . net\nsubject : off site with john griebling ' s optical network engineers\nhi shirley , please give me a few dates form end of march to first week in\napril to do an offsite for vince ' s direct reports ( including myself ) and\nselected ebs research people . this includes , vince direct report from our\nresearch group and the following people from ebs research :\nravi , stinson , samer , chinowee .\nthe agenda will include : research people giving several mini presentations on\ntrading , market development ( history of nat gas , electricity , etc . ) , pricing ,\netc . . .\njohn ' s people will do similar mini presentations on optical network\nengineering , optical components , provisioning , telecom markets , pricing ,\netc . . . .\nif scott yeager can make it , he will do his magic via quick motivational\nspeech on the vision of ebs , etc . .\nit is will be strictly technical to technical professional meeting to get to\nknow each others group . so , do not include others unles stinson or i look at\nthe additions case - by - case .\njohn suggested scott yeager ' s summar house in denver for this event . please\nfollow this up with scott ' s assistant ( scott may not know about this if john\nhas not told him so you should explain the intend , etc . ) to get in touch with\nscott . i ' ll cc this e - mail to give scott a heads up .\nwe can do half day friday and all day saturday . or , we can do the whole\nweekend and people will have an option to bring family to nearby hotel\n( family expense in not on ebs ) . we will have to sort all this out when we\nhave a chance to talk to john & scott .\ni just wanted to get the ball rolling but getting dates and place first .\nthanks ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.756+0000", "entityId": 7009, "properties": {"text": "Subject: re : project brainstorming for paulo\napril , i ' ll be in colorado until march 10 . we can schedule next week or you\ncan talk to him directly . currently , ebs research is helping kevin howard\nand scott yeager ( indirectly via kevin ) in their effort to assess the value\nof an eyeball . paulo ' s research will complement this effort . the research\nthat paulo will perform for you will be part of a bigger picture work that\nkevin howard has aked stinson and i to support . you can call me on my cell\n713 - 516 - 5440 while i am in co .\nregards ,\nravi .\napril hodgson\n03 / 02 / 00 07 : 13 pm\nto : stinson gibner / hou / ect @ ect @ enron\ncc : ravi thuraisingham / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect @ enron\nsubject : re : project brainstorming for paulo\ni will be in my office friday and next tuesday . other than that i will be\ntraveling so please call me on one of those days and we can discuss this\nfurther . i was in houston this week and will be back in houston 3 / 14 -\n3 / 16 . let me know what works for you .\nregards\nstinson gibner @ ect\n03 / 02 / 00 10 : 03 am\nto : april hodgson / enron communications @ enron communications\ncc : ravi thuraisingham / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect\nsubject : project brainstorming for paulo\napril :\npaulo is the mit ph . d . student who talked with you by phone a couple of weeks\nago . he is interested in trying to better define what type of project he\nmight do over the summer with ebs . recall that he is interested in the\npsychological / customer behavior issues related to web commerce as compared to\ntraditional commerce . perhaps the easiest way to proceed would be for you ,\nme , ravi , and vince to get together to discuss possibilities . we could then\ninclude paulo by phone to get his initial reactions / suggestions . after an\ninitial assessment , we could then plan on another visit for paulo .\nplease let me know what your schedule would allow .\nthanks ,\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 02 / 2000\n08 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaulo rocha e oliveira on 02 / 28 / 2000 12 : 19 : 18 pm\nto :\ncc :\nsubject : re : next meeting\nstinson -\nthanks for your reply . i just got a call from someone at enron today about\nsummer employment , so i think a meeting with april and your group would be\nvery appropriate at this time .\ni am available to meet with april any day this coming month , except march\n9 , march 10 , and march 17 - 30 .\nplease let me know what works for you .\nthanks again ,\npaulo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.760+0000", "entityId": 7010, "properties": {"text": "Subject: re : managing energy price risk\nlet me think about a similar publication . zimin , any ideas ?\nvince\ngopalakrishnan subramaniam @ enron _ development\n03 / 06 / 2000 04 : 34 am\nsent by : subramaniam gopalakrishnan @ enron _ development\nto : vince j kaminski @ ect\ncc :\nsubject : managing energy price risk\nthanx a million . the book is just superb . would there be any similar\nliterature on the interest rate front ? ?\nregards\ng . subbu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.765+0000", "entityId": 7011, "properties": {"text": "Subject: rodeo\nvince ,\nit was a pleasure to meet you last week at our rodeo night . i am glad you\ncould join us .\ni am going to fax you the invitation to the houston symphony partners party\nthat we discussed . i hope you can attend .\nkeep in touch and let ' s get together for lunch and / or seeing \" american\nbeauty . \"\njana phillips\n713 - 658 - 9296", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.769+0000", "entityId": 7012, "properties": {"text": "Subject: more dalton baby info\nfinal update . . . . .\ni went to see dorothy , tim and the new baby on sunday . he is absolutely\nbeautiful and dorothy and tim couldn ' t be prouder parents . his name\nis . . . . . drake andrew dalton and that name suits him just fine ! thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.774+0000", "entityId": 7013, "properties": {"text": "Subject: interview candidate allen humbolt\ndear elizabeth :\nwe interviewed allen last week for my group . the consensus is that there is\nnot a sufficiently good match between his skills and our requirements , so we\nwill not extend an offer to him . i would appreciate if you can send him a\nthank you note conveying our decision .\nthanks ,\nkrishna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.778+0000", "entityId": 7014, "properties": {"text": "Subject: thanks for the interview\ndear vince ,\nthanks for the interview with enron . i appreciated your time and the\nconversation that we had together . i really enjoyed my time at enron and\nbelieve that it is the type of company that i would like to work for . more\nspecifically i enjoyed meeting the people in the research group and feel\nthat i could make a contribution and fit in well . i look forward to\nhearing from you or an enron representative .\nsincerely ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.783+0000", "entityId": 7015, "properties": {"text": "Subject: removal of caps on resale of transmission\non march 16 , martin lin will be participating in a panel discussion with dick\no ' neill of ferc , a rep . of morgan stanley , and ed cazalet of apx on \" market\nturmoil , trading and risk management \" ( harvard electricity group ) . at the\npresent time , except in several limited regions , marketers do not have the\nability to hedge transmission risk by reselling it above cost . last year , we\napproached dick o ' neill ' s staff about the possibility of lifting the cap on\nresales of transmission , but they were not inclined to proceed absent the use\nof certain restrictions . there have been several recent developments in\npower and gas , as discussed in the attached memo . it would be helpful for\nmartin to discuss these recent orders as necessary in order to attempt to\ngain support from dick o ' neill for the idea of lifting the cap for power .\nafter martin ' s discussion , we should consider reapproaching ferc to seek\napproval .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.788+0000", "entityId": 7016, "properties": {"text": "Subject: energy derivative courses\ndear vince / grant ,\nit was good to meet and talk with you both this morning - very interesting .\nhere are the details of the course ( actually there are two seperate\ncourses , one on var ) that i promised you .\ni hope to see you both again later in the month .\nbest regards .\nchris .\ncourse 1 : energy derivatives : pricing and risk management\n-\ncourse leaders : dr les clewlow and dr chris strickland\nhouston : 29 - 30 march 2000\nlondon : 3 - 4 april 2000\nfee : stg 1950 / usd 2950\nthis is an intermediate course aimed at the energy professional who is\nfamiliar with energy derivative products but who requires the mathematical\nfoundations of derivative pricing and an understanding of the pricing and\nrisk management of energy derivatives .\nthis course assumes that participants are familiar with standard basic\noption pricing theory ( the black - scholes formula , monte carlo simulation ,\nand the use of binomial trees for option pricing ) .\nthe format for the course will follow our usual highly practical and\nsuccessful style of alternate sessions of lectures and excel based computer\nworkshops . to facilitate intensive interaction , the course will be limited\nto a maximum of 15 participants so early booking is advisable .\nthe excel based computer workshops deal with oil and gas as well as\nelectricity derivatives and contain detailed calculations for pricing and\nrisk management . at the end of the 2 days , participants leave with a\ndiskette containing answers to all the workshops as well as valuable code\nfor pricing and simulation .\nregistration fee includes : pre - course reading , course materials , copies of\nrelevant research materials , diskette with fully worked solutions to\ncomputer workshops , lunch and refreshments . additionally , each attendee\nwill receive a free copy of clewlow and strickland ' s forthcoming book\n\" energy derivatives : pricing and risk management \" which includes\nvaluable contributions from enron ' s vince kaminski and grant masson .\nupon registration , participants will be sent a pack containing relevant\npre - course reading .\ncourse outline\nday 1 , am : introduction to energy derivatives modelling\nenergy derivatives - structures and applications\nfundamentals of modeling and pricing\nanalysing energy data\nspot price behaviour\nbuilding forward curves - assessing available models\nthe relationship between the spot price and forward curve dynamics\nworkshop : analysing the properties of energy data - mean reversion ,\nvolatility structures , jumps\nday 1 , pm : spot price models and pricing by simulation and trees\nreview of spot price models\nthe pros and cons of spot price models\npricing standard options , swaptions , caps , floors , and collars\nsimulation for spot price models\npricing exotic options ( barriers , lookbacks , asians , etc . )\nbuilding and using trees for energy derivatives\nbuilding trees consistent with the forward curve\npricing options in trees\nworkshop : using simulation and trinomial trees to price energy\nderivatives\nday 2 , am : forward curve based models\nforward curve dynamics and forward curve models\nthe relationship to spot price dynamics\nmulti - factor forward curve models\nvolatility function interpretation and estimation\npricing standard energy options\npricing energy swaptions\npricing energy exotics using simulation\nworkshop : using simulation to implement multi - factor models and price\nenergy options\nday 2 , pm : risk management of energy derivatives\nenergy market risk and hedging\ncomputing hedge sensitivities\ndetermining the hedge instruments\nhedging a energy derivatives book\nvalue - at - risk in energy markets - the pros and cons of the approaches\ncredit risk in energy markets - issues and models\nworkshop : hedging an energy portfolio\nplease feel free to e - mail us to register for this course and we will\ncontact you regarding payment .\ncourse 2 : var for energy markets\ncourse leaders : dr les clewlow and dr chris strickland\nhouston : 31 march 2000\nlondon : 5 april 2000\nfee : stg 950 / usd 1950\nthis is an intermediate course aimed at the energy professional who is\nfamiliar with energy derivative products but who requires an understanding\nof the theory and calculation of value at risk for energy derivative\nportfolios .\nthe format for the course will follow our usual highly practical and\nsuccessful style of alternate sessions of lectures and excel based computer\nworkshops . to facilitate intensive interaction the course will be limited\nto a maximum of 15 participants so early booking is advisable .\nthe excel based computer workshops deal with oil and gas as well as\nelectricity derivatives . at the end of the course participants leave with a\ndiskette containing answers to all the workshops as well as valuable code\nfor pricing and var calculations .\nregistration fee includes : pre - course reading , course materials , copies of\nrelevant research materials , diskette with fully worked solutions to\ncomputer workshops , lunch and refreshments . additionally , each attendee\nwill receive a free copy of clewlow and strickland ' s forthcoming book\n\" energy derivatives : pricing and risk management \" .\nupon registration , participants will be sent a pack containing relevant\npre - course reading .\ncourse outline\nday 1 , am : understanding the var methodologies and issues\nwhat is var ?\nuses of var\ntypes of var methodologies\nimplications of applying the riskmetrics assumptions in energy markets\ndelta var , historical simulation\nlinear and non linear instruments\nworkshop : applying simple var methodologies in the energy market\nday 1 , pm : calculation of energy portfolio var using simulation\nmodelling the energy forward curve - single and multi - factor\nmodelling the joint behaviour of different energies simultaneously\ncalculation of covariances and correlations\nincorporating jumps\ndetailed example var calculation for an energy portfolio\nworkshop : simulating energy forward curves and calculation of var for an\nenergy portfolio .\ndr . les clewlow and dr chris strickland hold associate research positions\nat both the school of finance and economics , university of technology ,\nsydney and the financial options research centre , university of warwick ,\nuk . together they have over 20 years combined experience in the financial\nand energy derivative markets and have published many articles in academic\nand trade journals . they are the authors of the book \" implementing\nderivatives models \" ( wiley , 1998 ) and editors of \" exotic options : the state\nof the art \" ( itp , 1998 ) . their forthcoming book , \" energy derivatives :\npricing and risk management , \" is due to be published during the second\nquarter 2000 . currently , their interests are concentrated in the energy\nderivatives area , where they have developed a wide range of pricing tools\nfor electricity options and other energy derivatives .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.792+0000", "entityId": 7017, "properties": {"text": "Subject: re : eastern\nunless we can model the protection in some form we will not know what our\ntrue exposure is . so i need our team reassessing how we can\nmodel the benefit of the credit proctection . please keep working on this .\njohn\nsoma ghosh\n07 / 03 / 2000 17 : 57\nto : john sherriff / lon / ect @ ect\ncc : william s bradford / hou / ect @ ect , tanya rohauer / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , bryan seyfried / lon / ect @ ect\nsubject : re : eastern\njohn ,\nwe are currently not modelling the effect of insurance on eastern on an\nindividual risk basis . i have spoken at length with houston research &\ncredit risk management on this given that the portfolio of risk is\ndynamic , specific allocation of protection is not appropriate . as i mentioned\nin my earlier message there is $ 135 mm cap on any one loss , assuming no losses\nhave occured prior to that .\ni am happy to discuss this further with you if required .\nbill , i ' d appreciate any comments you may have re . the above .\nregards ,\nsoma\njohn sherriff\n06 / 03 / 2000 15 : 06\nto : soma ghosh / lon / ect @ ect , bryan seyfried / lon / ect @ ect , mariano\ngentilini / lon / ect @ ect\ncc :\nsubject : re : eastern\nsoma\nhow are we modeling the affect of the insurance packages on the eastern deal ?\njohn\nsoma ghosh\n06 / 03 / 2000 11 : 53\nto : john sherriff / lon / ect @ ect\ncc :\nsubject : re : eastern\nthe protection is not a fixed allocation of protection to individual\ncounterparties but covers the global portfolio of risk . enron has in place 3\ntranches of credit insurance covering up to $ 135 mm per event . whilst the\ninsurance is not counterparty specific , it would be available for credit loss\non eastern provided that losses had not been incurred prior to an eastern\nloss . i have already discussed with houston credit risk management at this\npoint in time there has been no resolution in finding an appropriate way to\nallocate protection by name .\nsummary of insurance :\nenron absorbs the first $ 10 mm of losses in any one year capped at the\naggregate of $ 30 mm over a ten year period .\naegis absorbs the next $ 35 mm of losses for the same ten year period .\nchubb will pick up the next $ 50 mm losses for any single event and $ 100 mm in\nlosses in the aggregate for 5 years\nrsa takes the next $ 50 mm for losses in excess of $ 95 mm over a five year\nperiod & covers the top 9 counterparties by exposure\nregards ,\nsoma\njohn sherriff\n03 / 03 / 2000 18 : 16\nto : soma ghosh / lon / ect @ ect\ncc :\nsubject : re : eastern\nsoma\nhow does the company ' s credit insurance ( done by houston last year ) affect\nthis exposure ?\njohn\nsoma ghosh\n03 / 03 / 2000 16 : 24\nto : john sherriff / lon / ect @ ect\ncc : david weekes / lon / ect @ ect , steve w young / lon / ect @ ect , barry\npearce / lon / ect @ ect , fernley dyson / lon / ect @ ect , william s\nbradford / hou / ect @ ect , rick buy / hou / ect @ ect , oliver gaylard / lon / ect @ ect\nsubject : re : eastern\nplease note that total exposure $ number is $ 979 . 8 mm not $ 783 . 2 mm .\napologies ,\nsoma\n- - - - - - - - - - - - - - - - - - - - - - forwarded by soma ghosh / lon / ect on 03 / 03 / 2000 16 : 22\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsoma ghosh\n03 / 03 / 2000 16 : 17\nto : john sherriff / lon / ect @ ect\ncc : david weekes / lon / ect @ ect , steve w young / lon / ect @ ect , barry\npearce / lon / ect @ ect , fernley dyson / lon / ect @ ect , william s\nbradford / hou / ect @ ect , rick buy / hou / ect @ ect , oliver gaylard / lon / ect @ ect\nsubject : re : eastern\njohn , as requested :\ntotal exposure as at 29 feb 2000 : o 620 . 9 mm ( $ 783 . 2 mm )\neurocash i monetezation : - ol 24 . 7 mm ( - $ 196 . 1 mm )\nless credit derivatives : o 40 . 0 mm ( $ 63 . 1 mm )\ntotal net exposure as at 29 feb 2000 : o 456 . 2 mm ( $ 713 . 9 mm )\nnet month on month increase : ol 25 . 4 mm ( $ 197 . 9 mm )\ntotal value of eastern group guarantee : o 520 mm ( $ 820 . 6 mm )\namount backed by txu : zero\nas well as the increase in overall exposure , please note the change in shape\nof the exposure month on month most notably credit exposure now peaking at\nthe front end of the transaction ( ex credit derivs . the max exposure is at\nday 1 ) , compare to max . exp . at feb 2005 for month end jan . .\nshape of profile & increase in mtm primarily due to :\n- power curve downward shift at front end yrs 0 - 11\n- power curve upward shift at back end yrs 12 - 18\n- gas curve upward shift yrs 1 - 5 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.797+0000", "entityId": 7018, "properties": {"text": "Subject: the storage revolution has begun\nnetwork world fusion focus : amy larsen decarlo\non storage in the enterprise\ntoday ' s focus : the storage revolution has begun\n03 / 07 / 00\ndear wincenty kaminski ,\ntoday ' s focus : the storage revolution has\nbegun\nby amy larsen decarlo\nbelieve the hype . we are in the middle of a storage revolution .\nvirtually overnight , businesses have gone from storing gigabytes to\nterabytes of data , and the number of users accessing that information is\nskyrocketing . the subsequent requirements are forcing companies to\nrethink their storage strategies and to recognize the importance of\nstorage management in the equation of efficient information delivery .\nit isn \u0001 , t just the volume of data or the higher scalability demands that\nare changing how businesses handle storage . the premium that companies\nplace on much of their enterprise information is having a profound\neffect on their storage requirements . businesses demand fault - tolerant\nstorage systems that deliver swift and reliable data access to their\nemployees , suppliers and customers .\nbut given the fact that hard disk capacity requirements , on average ,\ndouble every 12 months , while processor speeds double every 18 months ,\ncompanies are left with a quandary : how can they manage the\nproliferation of stored information efficiently enough to compensate for\nthe differential between capacity requirements and processor speeds ?\nthe simple answer to this question is to institute a well - executed\nstorage management plan that anticipates capacity requirements in\nadvance and leverages the best technologies and techniques to support\nthose needs . bear in mind that the majority of storage costs come not\nfrom the equipment but from the implementation and support of those\nsystems .\nthere are several ways to efficiently manage storage . one of the best\nroutes is consolidation that is , pooling resources and managing\nstorage as a system , as opposed to a decentralized collection of file\nservers . this may sound like a throwback to an earlier era , when\nenterprise storage resided on mainframes . but it \u0001 , s actually a\nprogressive step , as the consolidation has more to do with centralizing\nthe planning , management , and ongoing support of storage systems than it\ndoes with the physical location of the files .\nnext , it is important to recognize that not all information is equally\nimportant to the organization . consequently , storage requirements vary\nby business application . as in all areas of it , it is important to make\nstorage implementation decisions based on business needs .\nbusinesses trying to more efficiently manage storage are looking for\nalternatives to the distributed file server storage model . they want to\nspeed access to stored files and remove bandwidth - intensive backup and\nrecovery operations from the lan .\nnetwork - attached storage ( nas ) supplies it professionals with one\nanswer , giving workstations and servers a way to gain direct access to\nstored data . nas devices , which have been widely available for years ,\nare optimized to process i / o transactions . though they promise better\nperformance , they don \u0001 , t remove backups from the transport network .\ninstead , they supply a relatively easy - to - deploy solution to cross -\nplatform storage problems for most heterogeneous environments .\nmany consider storage - area networks ( san ) to be the best long - term\nanswer to current and future storage challenges . because sans are\ndesigned with a topology separate from the corporate data network , they\nalleviate many of the availability and performance issues associated\nwith more traditional storage models . yet , given the early deployment\nstage most companies are still in , many of those capabilities are still\nlargely untested in a production environment .\nthis newsletter will examine how , through effective storage management ,\nit professionals can reduce support costs and improve service delivery\nto their customers . this newsletter will not focus on items like the\nleast expensive tape drive or the fast tape library . instead , it will\nlook at how businesses can reduce inefficiencies and leverage emerging\ntechnologies to resolve their particular storage application issues .\nultimately , the goal is to identify storage technology options and\npractices that work in real - world environments .\nto contact amy larsen decarlo :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\namy larsen decarlo is an analyst with enterprise management associates\nin boulder , colo . , ( http : / / www . . com ) , a leading\nanalyst and market research firm focusing exclusively on all aspects of\nenterprise management . she focuses on storage management , application\nmanagement , and security . in her position , she oversees market research\nand contributes to custom project work in her focal coverage areas .\nprior to joining ema , amy spent five years covering enterprise\nmanagement for industry trade magazines , including informationweek and\ndata communications . she can be reached at\nmailto : decarlo @ . com\nfor related links - - click here for network world ' s home page :\nhttp : / / www . nwfusion . com\nthe national storage industry consortium ( nsic )\nhttp : / / www . nsic . org\nthe distributed management task force ( dmtf )\nhttp : / / www . dmtf . org\nstorage systems standards working group of the ieee\nhttp : / / www . ssswg . org\nthe ietf\nhttp : / / www . ietf . org\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.801+0000", "entityId": 7019, "properties": {"text": "Subject: fyi : sycamore support on network planning\nfyi :\nnote that the person mentioned in the text below ( ming lung lee ) is very\nexperienced in traditional traffic engineering work . he comes from mci where\nhe was responsible for modeling traffic etc . it appears that sycamore\nfinally got him . one time they had lost him to corvis ( another optical\nequipment company ) , i guess sycamore went back to him with a better deal ! as\nsoon as this guy is available , i ' ll set up an all day technical meeting to\nhash out what needs to be done as far as optimization algorithm development\nis concerned . i want to produce a technical requirement document to clearly\noutline what needs to be done to support dynamic , optical - switched - circuits\nbased trading and streaming media applications , etc . having such an industry\nexpert help us will help ' justify ' internally all the the effort on the\ntraffic analysis side that john griebling has asked us to support . keep in\nmind that even though he is an expert in the field , the field that we need to\nplay in has not develop yet . even the emerging data based traffic ( as opposed\nto voice where blocking of traffic is allowed ) analysis is an order of\nmagnitude more difficult ( due to uncertain load ) , let alone trading such load\n( which we are planning to do ! ) .\nravi .\n. . . sycamore hired a guy per griebling ' s request , to work with you on the\ndesign / planning piece of the business . he will be contracted out to enron\nfor a period of 6 months initially . he lives in sf but will be traveling to\nwhereever you need him . jim , griebling wanted us to set up a meeting\nbetween you guys for wednesday morning , if you have time . his name is ming\nlung lee and he comes to us from mci . let me know what works .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 07 / 00 11 : 09\nam - - - - -\nkristin . bethurem @ sycamorenet . com\n03 / 07 / 00 09 : 44 am\nto : ravi thuraisingham / enron communications @ enron communications ,\nkristin . bethurem @ sycamorenet . com\ncc : jim irvine / enron communications @ enron communications ,\nbarb . vanbeyerer @ sycamorenet . com , brett . leida @ sycamorenet . com\nsubject : re : pooling point profiles\nhi ravi . fair enough , we will make sure we keep you guys in the loop . let\nbarb / me know which items we can offload to you guys .\nfirst thing to be done is barb will schedule a call between us and you all\nto gain a better understanding of a number we are trying to back into with\nthe metro solutions ( there are alot of options on our side and we need some\nguidelines ) . i already talked to john about this this morning so we need to\nmake some headway on that number . also , we are scheduled for a conference\ncall wednesday morning with griebling to discuss where we are at with\ninitial solutions for metro . would you like to join us ?\nthursday night , we have a dinner tentatively planned ( talk with griebling\nabout who , where , etc . ) . friday we will be meeting all day at the omni in\ninterlocken .\nravi and jim , per my conversations with john , he is going to run point on\nthe metro solutions . dorn is swamped with other activities . as for the\nswitching piece , we discussed our routing software on monday and i think\nthat is all we are going to do until ahi is done then we will set up a\nmeeting between our guys and the ahi folks . the expectation is that this\nmeeting will occur in the next 30 days .\nalso , sycamore hired a guy per griebling ' s request , to work with you on the\ndesign / planning piece of the business . he will be contracted out to enron\nfor a period of 6 months initially . he lives in sf but will be traveling to\nwhereever you need him . jim , griebling wanted us to set up a meeting\nbetween you guys for wednesday morning , if you have time . his name is ming\nlung lee and he comes to us from mci . let me know what works .\nthe best ways to reach me are my cell phone or text pager . cell is\n303 - 619 - 2485 and pager is 888 - 467 - 6167 - - you can send me a text message\nfrom either your pager ( if you have a 2 way ) or press 3 to get an operator .\nthanks , kristin\n- - - - - original message - - - - -\nfrom : ravi _ thuraisingham @ enron . net [ mailto : ravi _ thuraisingham @ enron . net ]\nsent : monday , march 06 , 2000 9 : 52 am\nto : kristin . bethurem @ sycamorenet . com\ncc : jim _ irvine @ enron . net ; barb . vanbeyerer @ sycamorenet . com ;\nbrett . leida @ sycamorenet . com\nsubject : re : pooling point profiles\nhi kristin , jim and i will be in broomfield , co from tueday late ~ 10 am\nuntil\nfriday end of day . we would appriciate being in the loop of any discussion\nthat\nyou may have with john and dorn ( provided that they can be shared with us ) .\nboth\njohn and dorn are very busy and you can help alleviate some of the\ncongestion by\nsend information directly to jim barb . vanbeyerer @ sycamorenet . com\nsubject : pooling point profiles\nkristin\nattached is the sanitized file promised .\nwhat is the status on next weeks meeting and more specifically , what is the\nlocation ?\njim\n- - - - - forwarded by jim irvine / enron communications on 03 / 03 / 00 03 : 40 pm\n- - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | andre bourque |\n| | |\n| | 03 / 03 / 00 |\n| | 01 : 27 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n|\n|\n|\n| to : jim irvine / enron communications @ enron communications\n|\n| cc :\n|\n| subject : pooling point profiles\n|\n|\njim :\nas part of your vendor negotiation requirements .\nandre f . bourque\nenron broadband services\n- - - - - forwarded by andre bourque / enron communications on 03 / 03 / 00 01 : 28 pm\n- - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | andre bourque |\n| | |\n| | 03 / 02 / 00 |\n| | 05 : 42 pm |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n|\n|\n|\n| to : ravi thuraisingham / enron communications @ enron\ncommunications |\n| cc : rob kolosvary / enron communications @ enron communications ,\n|\n| lisa rosenberg / enron communications @ enron communications , andre\n|\n| bourque / enron communications @ enron communications , john\n|\n| griebling / enron communications @ enron communications , laura\n|\n| beneville / enron communications @ enron communications\n|\n| subject : pooling point profiles\n|\n|\nravi :\nas per your request , the attached profiles have been sanitized of their\nsources .\nregards ,\nandre f . bourque\nenron broadband services\n( see attached file : pooling point profiles . xls )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.806+0000", "entityId": 7020, "properties": {"text": "Subject: welcome\nnetwork world fusion focus : jason meserve on\nsecurity and bug patch alert\ntoday ' s focus : bug alert : welcome\n03 / 06 / 00\ndear wincenty kaminski ,\ntoday ' s focus : bug alert : welcome\nby jason meserve\nwelcome to the security and bug patch alert newsletter !\ngiven the recent spate of high - profile denial - of - service and hack\nattacks and the large number of people who have signed up for this\nnewsletter before this first edition has been even published , it is\nclear that security is a major concern in the it community as it\nshould be .\nwith technology now being looked upon as a profit rather than cost\ncenter , it departments face more pressure to keep critical systems up\nand running as well as secure . no chief information officer or network\nmanager wants to have to tell the ceo that their e - commerce site has\nbeen broken into and customer credit card data copied . stories like that\ntend to stick in a potential customer \u0001 , s mind more than an expensive\nsuper bowl ad .\nit \u0001 , s hard enough to keep up with the latest new technologies , never mind\nlatest security patch for your operating system or e - commerce\napplication . but we \u0001 , re here to help .\nonce a week we \u0001 , ll publish a list of patches and alerts from all the\nmajor vendors and security organizations with links to the source . we \u0001 , ll\nalso provide other ( hopefully ) useful resources for the security -\nconscious it manager .\ncomments and suggestions are always welcome ! send mail to\njmeserve @ nww . com .\nnow on with the latest patches and alerts :\nsecurity glitch hits foundry switches\nfrom this week \u0001 , s network world : a security problem has cropped up in\nfoundry networks \u0001 , serveriron switches that make the devices susceptible\nto denial - of - service attacks .\nread the story :\ndownload the patch :\nhttp : / / www . foundrynet . com / bugtraq . html\n* * * * * * * *\nnew version of apache web server released\nthe apache server project released version 1 . 3 . 12 of the popular apache\nweb server this week . the new release fixes what apache calls a cross -\nsite scripting problem that could allow malicious html tags to be\ninserted into client - side scripts . download the new version at :\nhttp : / / www . apache . org / dist /\n* * * * * * * *\nproblem with linux htdig package\nboth freebsd and debian are reporting a problem with the htdig package\nthat runs on their respective platforms . the problem is with the\nhtsearch and could allow a user to read any file on the local machine\naccessible to the user id that the script is running under ( which in\nmost cases is \u0001 + nobody \u0001 , ) .\nfor more information from debian :\nhttp : / / www . debian . org / security /\nto download a patch from freebsd :\nhttp : / / www . freebsd . org / ports /\n* * * * * * * *\nnmh linux package patched\nversions of nmh prior to 1 . 0 . 3 have a vulnerability that could allow\nmalicious users to modify the mime headers in a mail message that may\ncause nmh \u0001 , s mshow command to execute arbitrary commands . a patch is\navailable at :\n* * * * * * * *\nzombie zapper 1 . 1 available\nzombie zapper 1 . 1 helps shut down the troj _ trinoo denial - of - service\nclient on windows nt and unix machines . more information at :\n* * * * * * * *\nproblem with mysql password authentication\naccording to the makers of freebsd , a vulnerability in the mysql\ndatabase server ( prior to version 3 . 22 . 32 ) could allow anyone that can\nconnect to the database to access it without a password . more\ninformation at :\n* * * * * * * *\nto contact jason meserve :\n- - - - - - - - - - - - - - - - - - - - - - - - -\njason meserve is a staff writer with network world , covering search\nengines , portals , videoconferencing , ip multicast and document management .\nhe also oversees the \" security alerts \" page on fusion\n( http : / / www 2 . nwfusion . com / security / bulletins . html ) . jason can be reached\nat mailto : jmeserve @ nww . com .\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.811+0000", "entityId": 7021, "properties": {"text": "Subject: re : invitation to my house\ntony ,\ngreat . i look forward to visiting you and your wife on april the 22 nd .\nno dietary restrictions .\nvince\nfrom : anthony mends @ enron communications on 03 / 07 / 2000 03 : 52 pm\nto : vince j kaminski / hou / ect @ ect @ enron\ncc :\nsubject : re : invitation to my house\nvince ,\napril 22 is fine . thanks for accepting the invitation . do you have any\ndietary restrictions or preferences ? please it is no trouble to tell us ( my\nwife would be doing the cooking but i can speak for her ) . please let me know .\nthank you ,\ntony .\nvince j kaminski @ ect\n03 / 07 / 00 10 : 00 am\nto : anthony mends / enron communications @ enron communications @ enron\ncc : vince j kaminski / hou / ect @ ect , vkaminski @ aol . com\nsubject : re : invitation to my house\nanthony ,\nthanks for the invitation . what about april 22 ? i have committed to different\nspeaking engagements , charities , off - sites etc . for all the saturdays prior to\nthis date .\nvince\nfrom : anthony mends @ enron communications on 03 / 06 / 2000 02 : 18 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation to my house\nvince ,\ni hope you are well . sorry i have not been in touch but i have been swamped\ntrying to build my organization simultaneously as i endeavor to understand\nebs and navigate its political terrain . quite interesting . i shall tell you\nmore later .\nmy wife , elisabeth and i would love to have you for dinner at our house any\nsaturday at you convenience . would please let me know which saturday would\nbe suitable ? we are both looking forward to it so please let me know .\nthanks ,\ntony", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.816+0000", "entityId": 7022, "properties": {"text": "Subject: dinner with vince kaminski\ngood morning mr . saksena :\nreservations have been made for 6 : 00 pm , the evening of thursday ,\nmarch 9 at latour d ' argent restaurant . the restaurant is located at 2011\nella blvd at t . c . jester blvd . men are required to wear a coat .\ndirections to restaurant :\ncoming from downtown houston :\ntake i - 45 north to 610 west .\ntake 610 west to ella blvd exit .\ngo south ( back under the freeway )\non ella blvd to 2011 ella at t . c . jester .\nvince will meet you at the restaurant .\nif you have any questions , please call me .\nthanks .\nshirley crenshaw\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.821+0000", "entityId": 7023, "properties": {"text": "Subject: re : invitation to my house\nanthony ,\nthanks for the invitation . what about april 22 ? i have committed to different\nspeaking engagements , charities , off - sites etc . for all the saturdays prior to\nthis date .\nvince\nfrom : anthony mends @ enron communications on 03 / 06 / 2000 02 : 18 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation to my house\nvince ,\ni hope you are well . sorry i have not been in touch but i have been swamped\ntrying to build my organization simultaneously as i endeavor to understand\nebs and navigate its political terrain . quite interesting . i shall tell you\nmore later .\nmy wife , elisabeth and i would love to have you for dinner at our house any\nsaturday at you convenience . would please let me know which saturday would\nbe suitable ? we are both looking forward to it so please let me know .\nthanks ,\ntony", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.825+0000", "entityId": 7024, "properties": {"text": "Subject: updated - restricted list\nneither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\n3 tec energy corp . tten\nadrian resources\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncostilla energy cose\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nesenjay exploration esnj\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nquanta services inc . pwr\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nrhythms netconnection inc . rthm\nsaxon petroleum , inc . sxn cn\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntitan exploration texp\ntranscoastal marine services , inc . tcms\nzargon oil & gas zar cn\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in the policy for the benefit of any party other than\nena / rac / egf , whether for his / her own account or the account of any third\nparty , where such position relates to ( i ) any commodity , financial\ninstrument , security , equity , financial asset or liability which falls within\nsuch employee ' s responsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.830+0000", "entityId": 7025, "properties": {"text": "Subject: friday brown bag on derivative pricing\ndear everyone ,\nwe understand the as members of enron research group , all of us are working\non very interesting projects , some of which are ground - breaking , and we all\nkeep a very keen mind on any development of new technology . we also find\nout , through our own experience , that at this age of information explosion ,\nit becomes more and more difficult to have enough time and energy to keep\nabreast with most of the exciting stuff taking place in this department , let\nalone in the industry . it is also our personal experience that many a\nproject we are working on has partially been attempted by other members of\nthis group .\nas a remedy , we propose that the research group start an informal brown bag\nlunch group meeting , once every two weeks on friday , for about 50 minutes .\nit is hoped that it will provide a forum for us to facilitate with new\ntechnology and development , as well as with each other \u0001 , s work , so that we do\nnot have to reinvent the wheels .\nwe envision the following : in this meeting ( or seminar ) , each one of us will\ntake turns to make presentations to the group . the topics could range from\ntheoretical consideration to practical implementation , be it option pricing ,\nprocess modelling , insurance issue , or monte carlo simulation , or anything\none finds fascinating . the presentation material could be papers you have\nbeen reading recently , projects you are working on , some problem that\nbothers you , or an idea that is fascinating . you choose your own\npresentation style . it could be\neverything - you - always - wanted - to - know - but - were - afraid - to - ask , hand waving\nstyle , or it can involve nitty - gritty , detailed derivations , anyway a style\nthat suits you and the topic . or it can simply be a dry - run for your\npresentation at the next risk conference . zimin and alex will take upon the\nresponsibility of organizing the seminar .\nwe hope the seminar will be up and running in two - three weeks . for that\npurpose your support will be greatly appreciated . please let either zimin or\nalex know if you are interested in giving a presentation to the group and\nprovide a tentative schedule . surely the rest of the group will be happy to\nhear your presentation .\nwe encourage everyone to participate this brown bag meeting , either to give a\ntalk or just sit in .\nzimin lu\nalex huang", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.834+0000", "entityId": 7026, "properties": {"text": "Subject: re : copier on 32 nd floor\nkevin ,\nplease let me know when your move date has been \" firmed up \" . can you let me\nknow the location that you want to install the new copier at { i will need to\ncheck for the necessary power outlet } ? listed below are some of the latest\ngeneration \" heavy duty \" copiers that enron has been installing as replacement\nfor older equipment such as the xerox 5388 etc . feel free to try them out for\nthe specific task that you have on a daily basis and let me know what you\nthink { we can discuss relevant speeds & associated $ costs after you have\ntested these copiers } :\nfyi : there are 2 other models from lanier : the 5355 and the 5365 . both of\nthese are the \" toshiba 70 series \" digital copier rebranded as \" lanier \" . if\nthe one of the toshiba 70 series listed above meets your criteria , the 5300\nseries from lanier is a better cost option between the two different brands .\nif possible , would you be available to meet next week to discuss further ? i\nwould like to invite a member of the ena finance group to go over cost\nallocations for the new copier , regardless of which copier selected .\nthanks , iain . . . . . . . . . . . . . . . . . . . .\nkevin g moore\n03 / 08 / 2000 11 : 22 am\nto : iain russell / epsc / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect , liz m taylor / hou / ect @ ect\ncc :\nsubject : copier on 32 nd floor\nhello iain ,\nwell time is drawing near for another move\nfor us .\nthe problem is we do not have a heavy duty\ncopier for the floor .\nwe do need a copier .\nplease inform me as how we can work through\nthis , maybe we can split the cost with others on the floor .\nthe move is schedule sometime at the end of the month .\ni will keep you informed . . . . . . . .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.839+0000", "entityId": 7027, "properties": {"text": "Subject: d - g energy systems\nvince & stinson ,\njust wanted to keep you informed of the status . helyette has said that she\nwill send a proposal by saturday .\nkarla\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karla feldman / hou / ect on 03 / 08 / 2000 01 : 22\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeman on 03 / 08 / 2000 12 : 27 : 06 pm\nto : \" karla feldman \"\ncc :\nsubject : re : enron - contract\ndear ms feldman ,\nthank you for your email . vince kaminski had\nmentioned your name to me and i am pleased to\nget in contact with you .\ni am making slight adjustments in the license to\nmake it as admissible to you as possible ( it has been\nsold so far to major utilities in europe ) . my husband\nand second passport are us and i am using the help\nof a lawyer in my family .\ni will email you a license proposal by saturday .\nsincerely\nat 15 : 57 06 / 03 / 00 - 0600 , you wrote :\n>\n>\n> dear ms . geman ,\n>\n> hello . my name is karla feldman . i work at enron corp . as a contract\n> administrator . vince kaminski and stinson gibner have asked me to contact\nyou\n> to obtain additional information pertaining to the purchase of the d - g energy\n> systems application . they are interested in purchasing one ( 1 ) license .\n>\n> could you please send me , or have your attorney here in the states send me\nthe\n> pricing and your software license agreement for our review ?\n>\n> my address is :\n>\n> karla feldman\n> enron corp .\n> 1400 smith street , room 2262\n> houston , texas 77002\n>\n> my phone number is ( 713 ) 853 - 6754\n> my fax number is ( 713 ) 646 - 8545\n> my e - mail address is : karla . feldman @ enron . com\n>\n> thank you very much . i look forward to hearing from you or your attorney .\n>\n> karla feldman\n> enron corp .\n> contract administration\n>\nh , lyette geman\nprofessor of finance\nuniversity paris ix dauphine and essec", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.844+0000", "entityId": 7028, "properties": {"text": "Subject: meeting\ntracy ,\nconfirming the meeting tomorrow , thursday , 1 : 30 p . m .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.848+0000", "entityId": 7029, "properties": {"text": "Subject: meeting for friday on storage\nhi mark , i have not met you yet but heard a lot of good things about you . i\nwould like to discuss with you and possibly with john bloomer and richard\nreichardt about the ebs research ' s role in supporting the storage market\ndevelopment from the origination and trading perspective . there are several\npeople in various groups that are talking about storage but here is what ' s my\ntake on our involvement - - please correct me or suggest otherwise .\nshalesh ganjoo is our lead analyst on this effort . in addition to his effort\nwith your group , he is presently supporting jean mrha with pricing and\nstandardization for a traded storage maret - - stinson gibner is directly\nsupervising him in this effort .\nshalesh came to us through referal from david cox - - david discovered him at\none of his speaking engagements . shalesh had talked to david about traded\nstorage market development some time last october and david refered shalesh\nto enron research group . we hired shalesh for general analyst position and\nnow he is pulled into all aspect of this storage effort . currently , he is\nour point person ( with stinson or i supervising his effort ) who is supporting\njean mrha and you on the subject . kara knop has aproached shalesh with\nrequest for some support and shalesh and she are sorting out each other \u0001 , s\nrole in this regard . as per my discussion today with david , we need to\ncoordinate this storage effort from the perspective of modeling market\nassessment etc . for this i suggest shalesh and his effort so that all parties\ninvolved can benefit from collective effort within one central source . based\non david ' s and my assessment of shalesh ' s capabilities , i would like to\nsuggest that the commercial heads use shalesh for his creative thinking ,\nunderstanding of the market and analytical capabilities and not just for data\ngathering and simple research effort . we can add other staff as we see the\nneed and as you request them .\nplease respond this e - mail with your comments if this sounds like aplan , so\nthat we can support this effort efficiently and in a scalable manner .\nkind regards ,\nravi .\na bit about ebs research group\njohn bloomer and richard reichardt have met me and are aware of my role and\nstinston gibner ' s role in ebs . i lead a team of quantitative professionals\nvia a group we are calling ebs research . this group reports to stinson\ngibner ( vp ) and vince kaminski ( md and head of enron research ) . stinson and\nvince are the original founders of enron corp research that has been charged\nwith model development efforts to support enron energy trading and other\nenron business . enron research is involved in all aspects of enron buinesses\n( ees , international , corporate affairs such as fas 133 and other accounting\nand new product ( derivatives ) development , etc . ) .\nwithin ebs research , there serveral professionals supporting kevin howard\n( cfo office ) , john griebling , tom gros and jean mrha , david cox ( via boris ) ,\nand the war room . our main area of focus is with jean mrha ( trading ) and\njohn griebling ( optical network design and optimization , etc . ) . we play a\nkey role with john griebling ' s go forward network design and implementation\nthrough our responsiblity to provide traffic engineering analysis and\nmodeling effort .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 08 / 00 09 : 31\nam - - - - -\nshalesh ganjoo @ ect\n03 / 07 / 00 08 : 01 pm\nto : mark s palmer / enron communications @ enron communications\ncc : ravi thuraisingham / enron communications @ enron communications @ enron\nsubject : meeting for friday on storage\ndear mark ,\ni am looking forward to presenting my competitive analysis on the storage\nmarket on friday to you and others . ravi thurasingham will be calling you to\nfind out if we ( research group ) can assist your group in any other way .\nplease let me know if you need any information before we meet . thank you .\nsincerely ,\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.853+0000", "entityId": 7030, "properties": {"text": "Subject: thanks\npaige ,\nthanks a lot for your presentation . it was an eye - opener in many cases .\ni shall schedule a meeting with you next week to discuss how we can help you\nin this project . i have some ideas i would like to run by you .\nvince\np . s . shirley , please see if monday is ok for 30 mins ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.858+0000", "entityId": 7031, "properties": {"text": "Subject: gt symposium on qcf , april 7\nplease share the following announcement with your associates .\ngeorgia institute of technology symposium on\nquantitative and computational finance\nfriday , april 7 th , 2000\nauditorium of marc bldg . on the georgia tech campus\nsponsored by\nthe dupree college of management ,\nthe college of engineering school of industrial and systems engineering ,\nand the college of sciences school of mathematics .\nprogram :\n12 : 30 - 12 : 40 welcome\nmichael thomas , provost of georgia tech\n12 : 40 - 12 : 45 introduction of the first speaker\n12 : 45 - 1 : 30 walter j . muller iii , bank of america\n\" interest rate models for pricing fixed income\nsecurities \"\n1 : 30 - 1 : 40 q & a and introduction of the second speaker\n1 : 40 - 2 : 25 steven l . allen , chase manhattan bank\n\" management of market risk - - what can we learn\nfrom the experiences of 1997 and 1998 ? \"\n2 : 25 - 2 : 45 break\n2 : 45 - 2 : 50 introduction of the third speaker\n2 : 50 - 3 : 35 billy thornton , invesco capital management\n\" optimal portfolio construction and risk control \"\n3 : 35 - 3 : 45 q & a and introduction of the fourth speaker\n3 : 45 - 4 : 30 ron dembo , algorithmics , inc .\n\" measuring the risk of a large financial institution \"\n4 : 30 - 4 : 40 q & a and introduction of the fifth speaker\n4 : 40 - 5 : 25 alexander eydeland , southern company energy marketing l . p .\n\" energy derivatives \"\n5 : 25 - 5 : 40 closing / extra time\n5 : 45 - 6 : 30 reception\nshort biographies of the speakers are given below .\nregistration :\nthere is no charge for attendance at the symposium .\nhowever , space is limited , so we do encourage you to\nlet us know that you will be attending . please send the\nfollowing information before wednesday , april 5 , 2000 .\nconference : \" qcf \"\nfirst name :\nlast name :\ncompany / institution :\ndepartment :\naddress :\ncity :\nstate / province :\nzip / postal code :\nphone :\nfax :\nemail :\nto\nrobert kertz\ne - mail : kertz @ math . gatech . edu\nfax : 404 - 894 - 4409\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nlodging :\nyou can make your own hotel arrangements with one of the many hotels in\ntown . some hotels close by tech ' s campus are :\nholiday inn express ( 404 - 881 - 0881 ) ,\ndays inn , 683 peachtree street ( 404 - 874 - 9200 ) ,\nrenaissance hotel , w . peachtree street ( 404 - 881 - 6000 ) ,\nmarriott courtyard , 1132 techwood drive ( 404 - 607 - 1112 ) , and\nregency suites , 975 west peachtree street ( 404 - 876 - 5003 ) .\nin all cases , ask about the georgia tech rate .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nlocation :\nthe conference will be held in the first floor auditorium of the\nmanufacturing research center ( marc bldg . ) , 813 ferst drive ,\non the georgia tech campus in atlanta , georgia .\nmap :\na map of campus can be found on the web at http : / / gtalumni . org . the\nconference is in the manufacturing research center ( # 126 on the map ) ,\nwhich is the rectangular building directly north of the groseclose\nbuilding ( # 56 on the map ) and the instructional center ( # 55 on the map ) .\ndirections :\n( additonal directions can be found at the website\nassociated with the marc building )\nby marta : take the north - south marta train ( $ 1 . 50 ) to the north avenue\nexit . the station is on the northeast corner of west peachtree and north\navenue . walk west along north avenue past the varsity and over the\nexpressway . after the football stadium , take the steps up and enter the\ncampus . walk diagonally across the campus and ask some students where to\nfind the manufacturing research center .\nby car , if you are entering atlanta from i - 20 or while traveling north on\ni - 75 or i - 85 :\ni - 75 and i - 85 merge in atlanta to form i - 75 / 85 . ( if you are on i - 20 , go\nnorth on i - 75 / 85 in the center of atlanta . ) exit the expressway at exit\n100 which is the spring street and west peachtree street exit . turn left\nat the second light onto west peachtree street . turn left at the first\nlight onto north avenue . travel west on north avenue and follow the signs\nto the \" center for the arts \" . these signs will ask you to turn right onto\ntech parkway which is the second traffic light along the gt campus , then\nturn right at the first light , and then you are forced to turn either\nright or left onto ferst drive . now go to the parking directions section\nbelow .\nby car , if you are entering atlanta while traveling south on i - 75 or\ni - 85 :\ni - 75 and i - 85 merge in atlanta to form i - 75 / 85 . exit the expressway at\nexit 100 which is the north avenue exit . turn right at the top of the\nramp onto north avenue . travel west on north avenue and follow the signs to\nthe \" center for the arts . \" these signs will ask you to turn right onto tech\nparkway which is the second traffic light along the gt campus , then turn\nright at the first light , and then you are forced to turn either right or\nleft onto ferst drive . now go to the parking directions section below .\nparking directions :\nturn right onto ferst street , then turn left into the student center\ndriveway which is the second driveway on your left . there is a fee of $ 4 .\nwalk north past the instructional center to the manufacturing research\ncenter .\nfor further information , please contact\nprofessor robert kertz\nby email at kertz @ math . gatech , edu ,\nby fax at 404 - 894 - 4409 ,\nby phone at 404 - 894 - 4311 or\nby regular mail at\nprofessor robert kertz\nschool of mathematics\ngeorgia institute of technology\natlanta , ga 30332 - 0160 .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nbiographies of speakers\nsteven l . allen\nmanaging director , market risk management for derivatives\nchase manhattan bank , new york\nsteve allen is a managing director in the market risk management group of\nthe chase manhattan bank , heading the derivatives product team . he began\nhis career in 1967 with chase , where his assignments included deputy director\nof management science and manager of modeling and systems for the asset -\nliability committee . from 1981 through 1991 , he was director of research for\nchase ' s trading activities , in charge of the development of models and\nanalytics . his risk management career began in 1991 with the north american\ndivision of union bank of switzerland , where he was market risk manager for\nfixed income products . he took his current position in 1995 with chemical\nbank , rejoining chase by benefit of merger .\nsteve studied mathematics as an undergraduate at columbia college and as a\ngraduate student at new york university ' s courant institute . he currently\nteaches risk management in the masters program in mathematics in finance at\ncourant . he is co - author of \" valuing fixed income investments and derivative\nsecurities \" .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nron s . dembo\npresident and chief executive officer\nalgorithmics , inc .\ntoronto\nron dembo is president and chief executive officer of algorithmics , inc . ,\na leading provider of innovative enterprise - wide financial risk management\nsoftware , which he founded in 1989 . before founding algorithmics ,\nhe created and managed a group at goldman sachs responsible for\nfixed income optimization modeling . prior to that , he held several\npositions in academia . from 1976 to 1986 , he served as an assistant and\nassociate professor of operations research in computer science at\nyale university , and as a visiting professor for operations research at\nthe massachusetts institute of technology .\ndr . dembo obtained a ph . d . in operations research from the university of\nwaterloo , ontario ( 1975 ) . he has written and published over 50 technical\npapers on finance and mathematical optimization and holds two patents\nfor portfolio replication . his latest book on risk , \" seeing tomorrow :\nweighing financial risk in everyday life , which he co - authored with\nandrew freeman , was published in may 1998 by wiley in the u . s . in october\nof 1998 , dr . dembo was honored with ernst model review ; and\nprice verification .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nbilly thornton\ndirector of quantitative research\ninvesco capital management\n1360 peachtree street\natlanta , ga 30309\nbilly thornton is a partner at invesco and director in the\nquantitative research group .\nbilly began his career in 1979 as a management consultant at\nandersen consulting , before joining bellsouth as a regulatory\neconomic analyst in 1981 . billy next moved into academia as a\nfinance professor teaching corporate finance for the undergraduate ,\ngraduate and executive programs at goizueta school of business ,\nemory university . while a professor at emory , he spent a year as\na visiting scholar at the federal reserve bank of atlanta researching\nspecial projects . continuing to teach corporate finance , billy joined\nclark atlanta university in 1995 . during this time , he also worked as\na consultant with watson wyatt worldwide performing asset allocation\nconsulting , and executive education and training .\nbilly joined invesco in 1998 to head invesco ' s department of quantitative\nresearch . his team of analysts performs statistical modeling , researches\ninvestment strategies , and sets risk management controls .\nbilly earned a b . s . in mathematics from clark atlanta university in 1977\nand an m . s . in statistics from carnegie - mellon university in 1979 . he\ngraduated from harvard university , earning a ph . d in financial economics\nin 1989 jointly from the harvard business school and harvard department\nof economics , and also receiving his m . s . in business economics in 1987 .\nbilly was a member of both leadership atlanta , class of 1994 , and\nleadership georgia , class of 1996 .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.863+0000", "entityId": 7032, "properties": {"text": "Subject: ebs ' s approach to storage trading\nhi ravi - -\nthanks for you note . i would be very interested in a meeting to establish an\nebs - wide approach to storage . it ' s a huge opportunity .\nwe could expand the 2 : 30 pm friday meeting to include all interested ebs\npeople and discuss the topics below . could shalesh coordinate this meeting\nand also coordinate the ongoing effort firm - wide ? have i omitted anything\nbelow ?\nas i see it , here are the key storage initiatives that ebs should undertake ,\nand who is involved up to this point .\n1 . - establish storage contract terms and pricing\nwho ' s involved : virawan , jean mrha beach\na . define terms for storage needed for ebs products ( mediacast ,\nmediatransport , and new products )\nb . define general terms for other storage contracts\n2 . - establish storage pooling points ( spp )\nwho ' s involved : shalesh , richard reichardt , mark palmer , kara knop\nwho ' s needed : other designated people from bloomer and griebling groups , jim\ncrowder ' s group input on alliances\na . define technology needed\nservers , storage devices\ncontrol software for physical delivery\nb . decide optimal spp locations\nat / near existing bandwidth trading pooling points\nat / near existing ebs city pops\nat a hosting partner location\nc . engage optimal partners to create spp\nibm\nibm global services\ntivioli ( storage management software )\nemc\nsun\ncompaq\nexisting storage portal vendors ( e . g . storage networks )\n3 . - establish storage trading benchmark\nwho ' s involved : unknown\nwho ' s needed : research group\na . define unit of measure for trading contract ( e . g . , terabyte - month )\nb . establish pricing mechanisms\n4 . - identify ( and monetize ) storage market opportunites\nwho ' s involved : unknown\nwho ' s needed : cox ' s group , bloomer ' s group\na . storage intermediation opportunities\nb . establish virtual storage portal service for ebs\nravi thuraisingham\n03 / 08 / 00 11 : 00 am\nto : mark s palmer / enron communications @ enron communications , jean mrha / enron\ncommunications @ enron communications , john bloomer / enron communications @ enron\ncommunications , richard reichardt / enron communications @ enron communications\ncc : kara knop , stinson gibner / hou / ect @ ect , vince kaminski , david cox / enron\ncommunications @ enron communications , shalesh . ganjoo @ enron . com\nsubject : meeting for friday on storage\nhi mark , i have not met you yet but heard a lot of good things about you . i\nwould like to discuss with you and possibly with john bloomer and richard\nreichardt about the ebs research ' s role in supporting the storage market\ndevelopment from the origination and trading perspective . there are several\npeople in various groups that are talking about storage but here is what ' s my\ntake on our involvement - - please correct me or suggest otherwise .\nshalesh ganjoo is our lead analyst on this effort . in addition to his effort\nwith your group , he is presently supporting jean mrha with pricing and\nstandardization for a traded storage maret - - stinson gibner is directly\nsupervising him in this effort .\nshalesh came to us through referal from david cox - - david discovered him at\none of his speaking engagements . shalesh had talked to david about traded\nstorage market development some time last october and david refered shalesh\nto enron research group . we hired shalesh for general analyst position and\nnow he is pulled into all aspect of this storage effort . currently , he is\nour point person ( with stinson or i supervising his effort ) who is supporting\njean mrha and you on the subject . kara knop has aproached shalesh with\nrequest for some support and shalesh and she are sorting out each other \u0001 , s\nrole in this regard . as per my discussion today with david , we need to\ncoordinate this storage effort from the perspective of modeling market\nassessment etc . for this i suggest shalesh and his effort so that all parties\ninvolved can benefit from collective effort within one central source . based\non david ' s and my assessment of shalesh ' s capabilities , i would like to\nsuggest that the commercial heads use shalesh for his creative thinking ,\nunderstanding of the market and analytical capabilities and not just for data\ngathering and simple research effort . we can add other staff as we see the\nneed and as you request them .\nplease respond this e - mail with your comments if this sounds like aplan , so\nthat we can support this effort efficiently and in a scalable manner .\nkind regards ,\nravi .\na bit about ebs research group\njohn bloomer and richard reichardt have met me and are aware of my role and\nstinston gibner ' s role in ebs . i lead a team of quantitative professionals\nvia a group we are calling ebs research . this group reports to stinson\ngibner ( vp ) and vince kaminski ( md and head of enron research ) . stinson and\nvince are the original founders of enron corp research that has been charged\nwith model development efforts to support enron energy trading and other\nenron business . enron research is involved in all aspects of enron buinesses\n( ees , international , corporate affairs such as fas 133 and other accounting\nand new product ( derivatives ) development , etc . ) .\nwithin ebs research , there serveral professionals supporting kevin howard\n( cfo office ) , john griebling , tom gros and jean mrha , david cox ( via boris ) ,\nand the war room . our main area of focus is with jean mrha ( trading ) and\njohn griebling ( optical network design and optimization , etc . ) . we play a\nkey role with john griebling ' s go forward network design and implementation\nthrough our responsiblity to provide traffic engineering analysis and\nmodeling effort .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 08 / 00 09 : 31\nam - - - - -\nshalesh ganjoo @ ect\n03 / 07 / 00 08 : 01 pm\nto : mark s palmer / enron communications @ enron communications\ncc : ravi thuraisingham / enron communications @ enron communications @ enron\nsubject : meeting for friday on storage\ndear mark ,\ni am looking forward to presenting my competitive analysis on the storage\nmarket on friday to you and others . ravi thurasingham will be calling you to\nfind out if we ( research group ) can assist your group in any other way .\nplease let me know if you need any information before we meet . thank you .\nsincerely ,\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.867+0000", "entityId": 7033, "properties": {"text": "Subject: packet analysis software\nhi stinson , as per our discussion , here is the e - mail from jim on the\nsubject . i convinced jim that this type of modeling effort is our gig and he\ncompletely agrees . as per jim ' s suggestion , he and i will talk more on the\nproduct while we are in denver . i suspect that we will arrange for the vendor\nto come to houston and do a presentation on the product and install the\nproduct on our machines . as for additional development we should get john\nbloomer and jim together in a meeting and hash out the requirements from john\nbloomer ' s perspective .\nusing vince ' s analogy , this tool allows us to deternime the size of the cargo\nspace needed for fedex - like delivery ( our streaming media products ) . whereas ,\nthe optical light path switching ( ds - 3 , oc - 3 , oc - 12 and oc - 48 ) based trading\nwill reserve the underlying airline routes , etc . so the packet based stuff\nis looking at the required capacity from ip layer ( network and transport :\nlevel 3 and 4 ) requirements . the optical light path is level 1 & 2 based\nrequirements . that is this tool will allow john bloomer to size ( actually we\nwill do the analysis for him ) the capacity requirement that he would need for\nthe products that he is developing .\nthat is my take on the difference , we ' ll find out otherwise .\nonce i finish off this discussion with jim in denver , i suggest putting\nmartin lin on the job to find out more about the product and do the leg work\nto arrange for vendor demo and software installation . martin will keep samer\nand chonawee updated on the information that he gathers . martin please start\nchecking on the web about this company and other similiar produts . i will get\nyou contact number for ebs and the vendor as soon as jim provides them to\nme .\navici uses this product . avici is a next generation router vendor that is\nselling terabit routers . ebs is an investor in that company .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 08 / 00 03 : 47\npm - - - - -\njim irvine\n03 / 08 / 00 12 : 33 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc :\nsubject :\nravi\nattached is an overview of what opnet technologies itdg and modeler ( v ) 7 . 0\noffers out of the box . as previously mentioned , we have purchased this s / w\nand are discussing potential co - development of module ( s ) currently not\nsupported . my belief is we can spin up a couple of your studs and develop\nour own stuff faster @ a fraction of the cost . avici , used opnet to develop\na circuit emulation model for their tsr and cisco used opnet for mpls and dpt\nmodeling . these guys are willing brides at this point . we just need to\nclearly identify their role in the network performance management and\nmodeling space . we will have to talk more in denver .\nmy flight arrives @ 10 : 00 ish and i am told that rental cars are scarce .\njim\n- - - - - forwarded by jim irvine / enron communications on 03 / 08 / 00 10 : 18 am - - - - -\nmvaghedi @ mil 3 . com\n01 / 12 / 00 02 : 10 pm\nto : jim irvine / enron communications @ enron communications\ncc :\nsubject :\n- version 7 . 0 capability list - final - vl . 3 . 00 . doc\nmani vaghedi\nmil 3 , inc .\nitdg sales engineer\ntel . ( 408 ) 562 - 5757 ext . 3200\nfax : ( 408 ) 562 - 5758\nmvaghedi @ mil 3 . com\nhttp : / / www . mil 3 . com\n* * * * * * * * * * * * * * * * * * * * * *\nplease attend the industry ' s most informative decision support seminar\nregister today for free seminar at www . mil 3 . com / seminars . html\n* * * * * * * * * * * * * * * * * * * * * *\n- att 2 . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.871+0000", "entityId": 7034, "properties": {"text": "Subject: engineering meetings in broomfield co on march 9 and 10\nhi stinson , as per our discussion , which we will expand upon when we meet\nlater today , my currently role in hamachi is better characterize as\ncombination of deal support ( from the engineering perpsective ) , facilitating\nmy work with jean mrha ( via erik simpson ) on the initial load forecast and\ngeneral requirements document development . none of this is technical by any\nmeans . if anything , it is more like engineering consulting ( from deal\nperspective ) by ebs research to john ' s group . i will bring it up with john\ntomorrow night about bringing our technical guys on such road trips so that\nthey can get involved with his group even though no optimization modeling\nwork may need to be done . for this i will use samer and / or chonawee but we\nneed to be certain that they are available on such on - call basis as stated\nbelow . john is very clear and specific about who he ask to be at such\nmeeting and when , etc . normally he does not want any deviations . so if we\nput someone on such jobs , they have to be able to travel on - call anywhere ,\nany place . that is the time pressure he is working with .\nhe want me to be the primary contact for such deal support effort . but i will\nask to bring along our technical guys on such trips so that they are plugged\nin etc . . .\ni will recommend this to john for the next deal that he is planning .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 08 / 00 10 : 57\nam - - - - -\njeanette busse\n03 / 08 / 00 10 : 52 am\nto : ravi thuraisingham / enron communications @ enron communications , jim\nirvine / enron communications @ enron communications , dayne relihan / enron\ncommunications @ enron communications , tom huntington / enron\ncommunications @ enron communications\ncc : john griebling / enron communications @ enron communications\nsubject : engineering meetings in broomfield co on march 9 and 10\nhello all ,\njohn griebling has requested your attendance at engineering meetings at the\nomni hotel in the colorado boardroom on thursday and friday , march 9 & 10 ,\n8 am - 6 pm both days . the engineering work could possibly overflow into the\nweekend . you will need to fly out the evening of wednesday march 8 th .\nplease let me know if you have any questions .\njeanette\njeanette a . busse\nproject manager , strategic alliances\nenron broadband services , inc . ( formerly enron communications )\n2100 sw river parkway , suite 600\nportland , or 97201\noffice : 503 . 886 . 0214 fax : 503 . 886 . 0434\nemail : jeanette _ busse @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.876+0000", "entityId": 7035, "properties": {"text": "Subject: concerning the move to the 32 nd floor\ngoodmorning liz ,\nhopefully your morning is going well .\nliz , we are currently moving up to the 32 nd floor\nas you are already aware of .\ni had been speaking with brenda concerning\nthe move however , things has changed since then .\nliz , i need for you to understand the importance\nof me knowing exactly when and where we will move .\nfirst of all - the space , we have several machines\nthat must move with us .\nsecondly - we must make arrangements for our satellite ,\nthe cable may need adjusting .\nthirdly - i need to know where every copy machine is located\non the floor and hopefully we are closest to the largest one .\nplease liz , these are most important .\nwe prepare for morning meetings daily and we are the first to get\nhere to work , so if any problems occur we try and tackle them beforehand .\nplease i know that you are very busy however , this will really be helpful\nin making our move a success .\nmaybe we can meet and discuss ?\nthank you\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.880+0000", "entityId": 7036, "properties": {"text": "Subject: your job application to enron research group\ndear mr . palmer :\nthank you for your interest in the research group at enron . we recieved your\nresume and discussed your qualifications within the research group .\nunfortunately , there is not a good match between our job requirements and\nyour skills .\nonce again , thank you for your interest in our company and best wishes for\nyour future .\nregards ,\np . v . krishnarao .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.885+0000", "entityId": 7037, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n03 / 08 / 2000 03 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect , william smith / corp / enron @ enron\nsubject : vacation\nvince :\ni would like to take the following days as vacation :\nwednesday , march 15 th\nfriday , march 31 st .\nplease let me know if this is ok with you .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.889+0000", "entityId": 7038, "properties": {"text": "Subject: ebs research office space on 45 th or 43 rd floor\nhi stinson , as per my discussion , here is e - mail to let vince know about the\nsubject .\nwe have requested the following office spaces for network planning ( jim\nirvine ) - - optimization work , etc . and other ebs support personnel .\nfor network planning and traffic engineering :\n- 1 director level space ( to be used by jim and other ebs research people\nas needed when jim is not there ) and four other cube space ( chonowee , martin\nlin , and two students .\nfor other ebs activities :\n- 3 or 4 summer interns and analysts level space for other ebs people ( roman\nand other students ) .\nthis is what kristy is going to request and get it into the office space\nrequest loop . we should be able to get into most of the space that i have\nrequested .\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.895+0000", "entityId": 7039, "properties": {"text": "Subject: re : maureen raymond - castaneda extension\nmaureen ,\ni apologize that your phone was disconnected in error . at this time your\nphone is working and your voice mail box needs to be set up . i would like to\nadd however , i do not appreciate your disrespect and unreasonable demands\nplaced on my employees . they were not the cause of this problem and can only\nrelay your information to the appropriate group .\nenron has values of respect , integrity , communication and excellence . i\nwould appreciate you taking the time to review them .\nrobert knight\ndirector voice communications\nstella l ely\n03 / 08 / 2000 11 : 08 am\nto : move - team / epsc / hou / ect @ ect , telephone mods / corp / enron @ enron , dolores\nsustaita / epsc / hou / ect @ ect , robert knight / hou / ect @ ect\ncc :\nsubject : maureen raymond - castaneda extension\nplease reinstate maureen ' s extension immediately , if possible . it was\ndisconnected this past weekend when we had it taken off of the phone at eb\n3073 f . her extension was on two phones at two different locations and should\nnot have been disconnected at eb 1939 . her extension no . is 30396 . sorry\nfor the confusion . please let me know timing asap .\nthank you .\nstella ely", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.900+0000", "entityId": 7040, "properties": {"text": "Subject: copier on 32 nd floor\nhello iain ,\nwell time is drawing near for another move\nfor us .\nthe problem is we do not have a heavy duty\ncopier for the floor .\nwe do need a copier .\nplease inform me as how we can work through\nthis , maybe we can split the cost with others on the floor .\nthe move is schedule sometime at the end of the month .\ni will keep you informed . . . . . . . .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.904+0000", "entityId": 7041, "properties": {"text": "Subject: customer profiling meeting - amendment\nbob shults is scheduled to be in atlanta , ga on the 17 th of march and would\nlike to reschedule the \" customer profiling meeting \" , to friday , march 24 th at\n1 : 30 p . m . , location to be announced . if you are unable to attend please let\nme know .\nlydia\n3 - 9975", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.909+0000", "entityId": 7042, "properties": {"text": "Subject: customer profiling meeting - amendment\nbob shults is scheduled to be in atlanta , ga on the 17 th of march and would\nlike to reschedule the \" customer profiling meeting \" , to tuesday , march 24 st\nat t 1 : 30 p . m . , location to be announced . if you are unable to attend please\nlet me know .\nlydia\n3 - 9975", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.913+0000", "entityId": 7043, "properties": {"text": "Subject: customer profiling meeting\nbob shults is scheduled to be in atlanta , ga on the 17 th of march and would\nlike to reschedule the \" customer profiling meeting \" , to tuesday , march 21 st\nat t 1 : 30 p . m . , location to be announced . if you are unable to attend please\nlet me know .\nlydia\n3 - 9975", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.918+0000", "entityId": 7044, "properties": {"text": "Subject: upcoming energy conference - kaminski requirements\nvince :\ni sent you itinerary to her , but did not send a photo or the handouts .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 09 / 2000\n01 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dawn scovill \" on 02 / 29 / 2000 09 : 20 : 48 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : upcoming energy conference - kaminski requirements\ngood morning , shirley ! i ' m missing some things from mr . kaminski w / regard\nto\nhis presentation in miami in a few weeks . at your earliest convenience ,\ncould you please forward the following :\n* pr photo - either electronic or i ' ll scan & return\n* handouts - either electronic or mail clean copy to the address below\n* copy of his flight itinerary , so we know when to expect him\nall the contact info you need is as follows :\ndawn scovill , conference coordinator\n\" powerful new ideas 2000 \"\npmb # 216 , 2480 s . congress avenue\nwest palm beach , fl 33406\nphone ( 561 ) 439 - 7682 - fax ( 561 ) 439 - 7055 - email dawn @ perfectmeeting . com\ni would really appreciate your prompt attention - i ' m working toward getting\nthe room set - ups & conference book finalized . thanks for your help . look\nforward to a great conference ! !\ndawn\nfrom : dawn scovill , event coordinator\ndesigns event consulting\ndawn @ perfectmeeting . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.923+0000", "entityId": 7045, "properties": {"text": "Subject: re : energy derivative courses\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 10 / 2000\n07 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n03 / 10 / 2000 07 : 06 am\nto : lacima @ enron\ncc :\nsubject : re : energy derivative courses\nhi julie :\nhere is the information you requested :\nname : vince kaminski\ntitle : managing director and head of research\ncompany : enron corp .\naddress : 1400 smith street - ebl 962\nhouston , tx 77002\ntelephone : ( 713 ) 853 - 3848 ( vince ) - ( 713 ) 853 - 5290 ( shirley )\nfax : ( 713 ) 646 - 2503\nif you need anything else , please let me know .\nthanks and have a great day !\nshirley\nadministrative coordinator\nenron corp . research\nlacima @ compuserve . com > on 03 / 09 / 2000 04 : 09 : 20 pm\nto : enron\ncc :\nsubject : energy derivative courses\ndear shriley ,\nthank you for registering vince kaminski for the energy courses to be held in\nhouston ,\n29 - 31 march .\nto complete the registration , could you please provide and confirm the\nfollowing details :\nname : vince kaminski\nposition :\ncompany : enron corporate research\naddress :\nphone : 713 / 853 - 5290\nfax :\nwe will invoice you for the course fees , and upon payment , we will forward\nthe pre - course\nreading material via email .\nthe course will be held at the hyatt in downtown houston .\nplease contact me if you require additional information .\nsincerely ,\njulie brennan\nlacima consultants\n- - - - - - - - - - - - - forwarded message - - - - - - - - - - - - - - - - -\nfrom : \" shirley crenshaw \" , internet : shirley . crenshaw @ enron . com\nto : [ unknown ] , chris _ strickland\ndate : 3 / 8 / 100 5 : 20 pm\nre : energy derivative courses\ngood afternoon professor strickland :\nplease register vince kaminski for both the energy derivatives : pricing\nand risk management course and the v @ r course , scheduled for\nmarch 29 , 30 and 31 st .\nplease forward method of payment preferred .\nthank you very much .\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 08 / 2000\n04 : 18\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 08 / 2000 10 : 02 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : energy derivative courses\nshirley ,\nplease , enroll me in this course .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 08 / 2000\n10 : 02\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchris strickland on 03 / 07 / 2000 12 : 20 : 40 pm\nto : vince j kaminski / hou / ect @ ect , grant masson\ncc :\nsubject : energy derivative courses\ndear vince / grant ,\nit was good to meet and talk with you both this morning - very interesting .\nhere are the details of the course ( actually there are two seperate\ncourses , one on var ) that i promised you .\ni hope to see you both again later in the month .\nbest regards .\nchris .\ncourse 1 : energy derivatives : pricing and risk management\n-\ncourse leaders : dr les clewlow and dr chris strickland\nhouston : 29 - 30 march 2000\nlondon : 3 - 4 april 2000\nfee : stg 1950 / usd 2950\nthis is an intermediate course aimed at the energy professional who is\nfamiliar with energy derivative products but who requires the mathematical\nfoundations of derivative pricing and an understanding of the pricing and\nrisk management of energy derivatives .\nthis course assumes that participants are familiar with standard basic\noption pricing theory ( the black - scholes formula , monte carlo simulation ,\nand the use of binomial trees for option pricing ) .\nthe format for the course will follow our usual highly practical and\nsuccessful style of alternate sessions of lectures and excel based computer\nworkshops . to facilitate intensive interaction , the course will be limited\nto a maximum of 15 participants so early booking is advisable .\nthe excel based computer workshops deal with oil and gas as well as\nelectricity derivatives and contain detailed calculations for pricing and\nrisk management . at the end of the 2 days , participants leave with a\ndiskette containing answers to all the workshops as well as valuable code\nfor pricing and simulation .\nregistration fee includes : pre - course reading , course materials , copies of\nrelevant research materials , diskette with fully worked solutions to\ncomputer workshops , lunch and refreshments . additionally , each attendee\nwill receive a free copy of clewlow and strickland ' s forthcoming book\n\" energy derivatives : pricing and risk management \" which includes\nvaluable contributions from enron ' s vince kaminski and grant masson .\nupon registration , participants will be sent a pack containing relevant\npre - course reading .\ncourse outline\nday 1 , am : introduction to energy derivatives modelling\nenergy derivatives - structures and applications\nfundamentals of modeling and pricing\nanalysing energy data\nspot price behaviour\nbuilding forward curves - assessing available models\nthe relationship between the spot price and forward curve dynamics\nworkshop : analysing the properties of energy data - mean reversion ,\nvolatility structures , jumps\nday 1 , pm : spot price models and pricing by simulation and trees\nreview of spot price models\nthe pros and cons of spot price models\npricing standard options , swaptions , caps , floors , and collars\nsimulation for spot price models\npricing exotic options ( barriers , lookbacks , asians , etc . )\nbuilding and using trees for energy derivatives\nbuilding trees consistent with the forward curve\npricing options in trees\nworkshop : using simulation and trinomial trees to price energy\nderivatives\nday 2 , am : forward curve based models\nforward curve dynamics and forward curve models\nthe relationship to spot price dynamics\nmulti - factor forward curve models\nvolatility function interpretation and estimation\npricing standard energy options\npricing energy swaptions\npricing energy exotics using simulation\nworkshop : using simulation to implement multi - factor models and price\nenergy options\nday 2 , pm : risk management of energy derivatives\nenergy market risk and hedging\ncomputing hedge sensitivities\ndetermining the hedge instruments\nhedging a energy derivatives book\nvalue - at - risk in energy markets - the pros and cons of the approaches\ncredit risk in energy markets - issues and models\nworkshop : hedging an energy portfolio\nplease feel free to e - mail us to register for this course and we will\ncontact you regarding payment .\ncourse 2 : var for energy markets\ncourse leaders : dr les clewlow and dr chris strickland\nhouston : 31 march 2000\nlondon : 5 april 2000\nfee : stg 950 / usd 1950\nthis is an intermediate course aimed at the energy professional who is\nfamiliar with energy derivative products but who requires an understanding\nof the theory and calculation of value at risk for energy derivative\nportfolios .\nthe format for the course will follow our usual highly practical and\nsuccessful style of alternate sessions of lectures and excel based computer\nworkshops . to facilitate intensive interaction the course will be limited\nto a maximum of 15 participants so early booking is advisable .\nthe excel based computer workshops deal with oil and gas as well as\nelectricity derivatives . at the end of the course participants leave with a\ndiskette containing answers to all the workshops as well as valuable code\nfor pricing and var calculations .\nregistration fee includes : pre - course reading , course materials , copies of\nrelevant research materials , diskette with fully worked solutions to\ncomputer workshops , lunch and refreshments . additionally , each attendee\nwill receive a free copy of clewlow and strickland ' s forthcoming book\n\" energy derivatives : pricing and risk management \" .\nupon registration , participants will be sent a pack containing relevant\npre - course reading .\ncourse outline\nday 1 , am : understanding the var methodologies and issues\nwhat is var ?\nuses of var\ntypes of var methodologies\nimplications of applying the riskmetrics assumptions in energy markets\ndelta var , historical simulation\nlinear and non linear instruments\nworkshop : applying simple var methodologies in the energy market\nday 1 , pm : calculation of energy portfolio var using simulation\nmodelling the energy forward curve - single and multi - factor\nmodelling the joint behaviour of different energies simultaneously\ncalculation of covariances and correlations\nincorporating jumps\ndetailed example var calculation for an energy portfolio\nworkshop : simulating energy forward curves and calculation of var for an\nenergy portfolio .\ndr . les clewlow and dr chris strickland hold associate research positions\nat both the school of finance and economics , university of technology ,\nsydney and the financial options research centre , university of warwick ,\nuk . together they have over 20 years combined experience in the financial\nand energy derivative markets and have published many articles in academic\nand trade journals . they are the authors of the book \" implementing\nderivatives models \" ( wiley , 1998 ) and editors of \" exotic options : the state\nof the art \" ( itp , 1998 ) . their forthcoming book , \" energy derivatives :\npricing and risk management , \" is due to be published during the second\nquarter 2000 . currently , their interests are concentrated in the energy\nderivatives area , where they have developed a wide range of pricing tools\nfor electricity options and other energy derivatives .\n- - - - - - - - - - - - - - - - - - - - - - - internet header - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsender : shirley . crenshaw @ enron . com\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 152 . 140 . 66 ] )\nby spamgaaa . compuserve . com ( 8 . 9 . 3 / 8 . 9 . 3 / sun - 1 . 9 ) with esmtp id raal 8057\nfor ; wed , 8 mar 2000 17 : 20 : 18 - 0500 ( est )\nreceived : from dservl . ect . enron . com ( dservl . ect . enron . com [ 172 . 16 . 1 . 37 ] )\nby mailman . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / corp - 1 . 03 ) with esmtp id waal 9791\nfor ; wed , 8 mar 2000 22 : 19 : 39 gmt\nreceived : from notes . ect . enron . com ( notes . ect . enron . com [ 172 . 16 . 4 . 33 ] )\nby dservl . ect . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 ) with smtp id qaa 23887\nfor ; wed , 8 mar 2000 16 : 20 : 16 - 0600 ( cst )\nreceived : by notes . ect . enron . com ( lotus smtp mta v 4 . 6 . 5 ( 863 . 2 5 - 20 - 1999 ) )\nid 8625689 c . 007 ab 2 ce ; wed , 8 mar 2000 16 : 20 : 11 - 0600\nx - lotus - fromdomain : ect\nfrom : \" shirley crenshaw \"\nto : chris _ strickland @ compuserve . com\nmessage - id :\ndate : wed , 8 mar 2000 16 : 20 : 09 - 0600\nsubject : energy derivative courses\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\ncontent - disposition : inline", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.928+0000", "entityId": 7046, "properties": {"text": "Subject: optical network engineering & enron research offsite meeting\nravi ,\nthe proposed dates work for me .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 09 / 2000\n05 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n03 / 09 / 2000 02 : 22 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : optical network engineering & enron research offsite meeting\nvince ,\ni will not be able to attend on this weekend ( april 15 ) , but i think the main\npoint is for john ' s guys to meet the rest of our group . most of them know\nme already .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 09 / 2000\n02 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nravi thuraisingham @ enron communications on 03 / 06 / 2000 04 : 29 : 34 pm\nto : john _ griebling @ palm . net , dorn _ hetzel @ palm . net , vince kaminski\ncc : stinson gibner / hou / ect @ ect , kenny burroughs / enron communications @ enron\ncommunications , jim irvine / enron communications @ enron communications\nsubject : optical network engineering & enron research offsite meeting\nhi john , as per our discussion and e - mails , i am suggesting the following\ndates for the subject offsite : april 14 & 15 th ( friday & sat ) . place and\nagenda to follow once this date is nailed up . the heads of each group will\ndecide who will attend . we would also invite kevin hannon , scott yeager , tom\ngros , ted seitz and jean mrha once the dates and agenda are agreed upon by\nthe technical folks .\nas before , the idea is to introduce the two of the most technical groups\nwithin enron and to exchange ideas and issues . the enron research team will\nprovide trading and modeling presentations and the optical network\nengineering team will present networking and components related topics .\ntake away from the two days will be to provide john griebling ' s group with\nbetter understanding about how the trading markets have developed in general\nand energy markets in particular via enron ( i . e . , how the sausage was\nmade ! ) . likewise , john ' s group will provide us with better understanding of\noptical networking from a technical perspective . particularily , how ebs is\nplanning to develop the puplic switched optical network ( pson ) that john has\n' branded ' our pooling point based network !\nplease reply asap if these two days ( april 14 & 15 ) will work . additionally ,\njohn , is the original suggestion to hold it in scott yeager ' s cabin somewhere\nup in colorado mts . still holds ? if yes , i should probably let scott know !\nif not , i ' ll try to find other places - - any suggestions , anyone ?\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.933+0000", "entityId": 7047, "properties": {"text": "Subject: re : mountaintop meetings next week\nravi ,\nit ' s fine with me . i think the expense is justified ( as it ' s equal to the\ncost of the alternative ) .\nvince\nravi thuraisingham @ enron communications on 03 / 09 / 2000 12 : 44 : 01 pm\nto : stinson gibner / hou / ect @ ect , vince kaminski\ncc :\nsubject : mountaintop meetings next week\nfyi , i may have to stay over weekend . vince , if that is the case , i may have\nto bring my wife or allow her to go to her sister for a week etc . i may ask\njohn to cover some of that cost as ( i think ) he is done with other people .\ni ' ve seen other guys family members showup . this cost would equal what ebs\nwould have spend to send me home and bring me back again , etc .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 09 / 00 12 : 36\npm - - - - -\njeanette busse\n03 / 09 / 00 10 : 16 am\nto : dayne relihan / enron communications @ enron communications , dorn\nhetzel / enron communications @ enron communications , jeanette busse / enron\ncommunications @ enron communications , jim irvine / enron communications @ enron\ncommunications , john bloomer / enron communications @ enron communications , john\ngriebling / enron communications @ enron communications , kelly williams / enron\ncommunications @ enron communications , kenny burroughs / enron\ncommunications @ enron communications , kevin kohnstamm / enron\ncommunications @ enron communications , laura beneville / enron\ncommunications @ enron communications , phil sisneros / enron communications @ enron\ncommunications , ravi thuraisingham / enron communications @ enron communications ,\nrob kolosvary / enron communications @ enron communications , scott smith / enron\ncommunications @ enron communications , steve elliott / enron communications @ enron\ncommunications , steve mcnear / enron communications @ enron communications , tom\nhuntington / enron communications @ enron communications , kenton erwin / enron\ncommunications @ enron communications , rebecca lynch / enron communications @ enron\ncommunications , stewart seeligson / enron communications @ enron communications\ncc : sheryl lara / enron communications @ enron communications , judy timson / enron\ncommunications @ enron communications , cheryl kondo / enron communications @ enron\ncommunications\nsubject : mountaintop meetings next week\nteam ,\nall meetings with hamachi during march 14 - 17 are located at the hamachi\ncampus .\nnegotiations\n- - the negotiation meeting room is 21 - 10 . this is in building 2000 ( main\nbuilding with circular drive ) , the conference room is on the ground floor ,\nright hand side .\n- - all morning drinks , lunches and afternoon refreshments are scheduled ( 20\npeople )\n- - the schedule is as follows :\ntue 3 / 14 1 : 00 pm - until both parties agree to end .\nwed 3 / 15 9 : 00 am - until both parties agree to end .\nthu 3 / 16 9 : 00 am - until both parties agree to end .\nfri 3 / 17 9 : 00 am - 3 : 00 pm\nthe negotiation team includes :\njohn griebling\nsteve elliott\nstewart seeligson\ntom huntington\nkenton erwin\nbreakout meetings\nthe following rooms reserved for full days , tuesday through friday in\nbuilding 3000 .\n34 a - 302\n34 a - 702\n34 a - 703\n34 a - 705\n- - coffee , lunch and afternoon drinks for 25 people , starting tuesday @ lpm\nis also scheduled for delivery in 34 a - 302 as well .\nthe breakout team participants include :\nlaura beneville\njeanette busse\nkenny burroughs\njim irvine\nrebecca lynch\ndayne relihan\nscott smith\nravi thuraisingham\nrob kolosvary\nkelly williams\nplease let me know if you have any questions .\njeanette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.938+0000", "entityId": 7048, "properties": {"text": "Subject: re : storage meeting\ndear rex ,\ni believe there might be a few additions to this core group . i have spoken\nwith sherron watkins and she is handling the storage side of the deal from\nproduct development perspective ( john bloomer ' s team ) and so she would need\nto be a part of this core group . i am trying to determine who else is\ninvolved with storage within ebs so that we don ' t replicate our efforts . i\nam hoping that after tomorrow ' s meeting we will have a better picture of how\nto go forward on this project . please let me know if you need any further\ninformation regarding this project . thank you very much for your interest\nand i look forward to meeting you in the near future .\nsincerely ,\nshalesh ganjoo\nrex _ shelby @ enron . net on 03 / 09 / 2000 01 : 52 : 25 pm\nto : shalesh . ganjoo @ enron . com , mark _ s _ palmer @ enron . net\ncc : jim _ crowder @ enron . net\nsubject : re : storage meeting\nshalesh , mark - -\nthanks for pulling this together . is the core team mark , mary , kara , mike ,\nvirawan , and shalesh ? i know that there is a lot of interest in this topic ,\nbut\nyou folks will need to carefully control the noise level from all the input .\nlet me know how i can help . best regards .\n- - rex\nshalesh . ganjoo @ enron . com on 03 / 09 / 2000 01 : 05 : 56 pm\nto : mark s palmer / enron communications @ enron communications , jim\ncrowder / enron\ncommunications @ enron communications , jean mrha / enron\ncommunications @ enron\ncommunications , kara knop / enron communications @ enron communications ,\nstinson _ gibner @ enron . com , vince _ j _ kaminski @ enron . com , david cox / enron\ncommunications @ enron communications , shalesh . ganjoo @ enron . com , john\nbloomer / enron communications @ enron communications , john griebling / enron\ncommunications @ enron communications , richard reichardt / enron\ncommunications @ enron communications , scott yeager / enron\ncommunications @ enron communications , david berberian / enron\ncommunications @ enron communications , rex shelby / enron\ncommunications @ enron\ncommunications , mike haney / enron communications @ enron communications ,\nravi\nthuraisingham / enron communications @ enron communications\ncc :\nsubject : re : storage meeting\nladies and gentlemen ,\nstinson just pointed out that i forgot to mention that the meeting is\nscheduled\nfor tomorrow ( 10 th of march 2000 ) between 2 : 30 pm and 4 : 30 pm . it may seem\nlike\na very short notice ; however , we ( mark , mary , kara , mike , virawan and myself )\nhad initially set this time and date last week . in the future i will make\nsure\nthat everyone is notified early . sorry for any inconvenience this may have\ncaused . thank you .\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.944+0000", "entityId": 7049, "properties": {"text": "Subject: prof . at rice\nhere is this prof ' s home page at rice . his name is richard baraniuk .\nhttp : / / www - dsp . rice . edu / ~ richb /\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.953+0000", "entityId": 7050, "properties": {"text": "Subject: re : storage meeting\nladies and gentlemen ,\nstinson just pointed out that i forgot to mention that the meeting is\nscheduled for tomorrow ( 10 th of march 2000 ) between 2 : 30 pm and 4 : 30 pm . it\nmay seem like a very short notice ; however , we ( mark , mary , kara , mike ,\nvirawan and myself ) had initially set this time and date last week . in the\nfuture i will make sure that everyone is notified early . sorry for any\ninconvenience this may have caused . thank you .\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.960+0000", "entityId": 7051, "properties": {"text": "Subject: storage meeting\nladies and gentlemen ,\ndue to unavailability of conference rooms on the 44 th floor i have reserved a\nconference room on the 19 th floor from 2 : 30 pm to 4 : 30 pm . the room number\nis 19 c 2 . i realize some people might not be able to attend , so please let me\nknow and i will e - mail you a summary of the discussions after the meeting . i\nwould also like to suggest that we make this a regularly scheduled meeting\nand have it bi - weekly or monthly . this will allow everyone to share their\nopinions and knowledge to direct or redirect our efforts based on the market\nsituation . please let me know if you have any comments or suggestions .\nthank you .\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.965+0000", "entityId": 7052, "properties": {"text": "Subject: brad romine\nceleste ,\ni was under the impression i sent you a message regarding brad romine but\ni cannot find a copy in my msg folder . there might have been a glitch in the\ncc - mail\nand the message did not go through and wasn ' t stored .\ni wanted to make the following points :\n1 . brad will not show up on march 15 . he is still working on his dot - com\nbusiness and wants to\npursue this opportunity .\n2 . my recommendation is that we should draw a line in the sand . either brad\nor a stipend\nrefund check should show up on march 15 .\n3 . i told brad that a failure to show up on march 15 will not imperil his\nfuture employment opportunities\nwith enron . we just need clarity and ability to plan our human resource\nneeds . if he decides to re - apply\nat some point in the future , we shall not hold his decision to pursue him\nentrepreneurial plans against him .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.970+0000", "entityId": 7053, "properties": {"text": "Subject: re : returning you call\nceleste ,\nwe shall match the tuition cost . we are very anxious to have gappy here at\nenron\nsupporting ebs .\nvince\nceleste roberts\n03 / 08 / 2000 06 : 49 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : returning you call\nwould you be willing to pay for this ? since he is a ph . d . and specifically\nfor your group , this should be your call . let me know if your business unit\nagree to pick up this additional cost .\nceleste\n- - - - - - - - - - - - - - - - - - - - - - forwarded by celeste roberts / hou / ect on 03 / 08 / 2000\n06 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngiuseppe andrea paleologo @ stanford . edu on 03 / 06 / 2000\n03 : 23 : 24 pm\nplease respond to gappy @ stanford . edu\nsent by : gappy @ stanford . edu\nto : celeste roberts\ncc :\nsubject : re : returning you call\nms . roberts , thanks for the quick reply ! i received the offer on thursday ,\nand i\nam very excited about joining enron this summer . my research group is\nestablishing a long term collaboration with dr . kaminski and dr . gibner , and i\nhope to help foster this relationship this summer .\ni would just like to discuss one issue that is very specific to my status of\ninternational student . as an international student , i am required to enroll\npart\ntime at stanford university during the summer quarter in order to be\nconsidered\neligible for a summer internship ( \" optional practical training \" ) . the cost of\nthe part - time tuition will be approx . $ 2300 for this academic year . the past\nsummer , my employer ( at it would be of\ncourse\nvery much appreciated ( given the notoriously precarious financial condition of\nph . d . students ) . yet , to make things clear , please rest assured that my\nacceptance of your offer is not conditioned on your reply regarding this\nissue ,\nand that i intend to be at enron this summer .\nall the best ,\ngiuseppe\n- -\n: : giuseppe a paleologo : : http : / / www . stanford . edu / ~ gappy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.974+0000", "entityId": 7054, "properties": {"text": "Subject: re : vacation\nvince :\ni just found out that it is friday , april 7 and not friday , march 31 st\nthat i want to take for vacation . is this alright ?\nthanks !\nshirley\nvince j kaminski\n03 / 08 / 2000 06 : 18 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n03 / 08 / 2000 03 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect , william smith / corp / enron @ enron\nsubject : vacation\nvince :\ni would like to take the following days as vacation :\nwednesday , march 15 th\nfriday , march 31 st .\nplease let me know if this is ok with you .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.979+0000", "entityId": 7055, "properties": {"text": "Subject: re : tanya ' s vacation\neverybody ,\nfyi : i will be out tomorrow 3 / 10 / 00 and all next week ( 3 / 13 - 3 / 17 ) on vacation .\ngrant and vincent can handle urgent matters while i am away .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.983+0000", "entityId": 7056, "properties": {"text": "Subject: new update on ppi model for inflation book - final version\ndear all ,\nattached is anjam ' s reasoning and final version of the uk ppi pllu model .\nthe uk inflation book ' s main exposure is to two ppi indexes - the pllu and\nthe dzcv through year 2010 . both are ppi output indexes with very comparable\nbaskets . the only significant difference between the two is the presence of\nenergy in the pllu ( 7 . 6 % ) . the model in use escalates the two indexes by the\nsame factors . however , with the energy price fluctuations in recent years\ndifferent models for the two indexes would reflect better the nature of their\ndrivers . anjam concentrated on the pllu index first and he will shortly\nconstruct one for the dzcv based on the same methodology , but without the\nbrent crude curve .\nthe new model achieves the two main objectives of the ppi curve : it is\nsignificantly more robust and stable than the existing one , and it is\nconsiderably less sensitive to the input coefficients . this will result in us\nhaving more confidence in our monthly p & l as well as less fluctuations .\nbest regards ,\nmartina\nx 34327\nanjam ahmad\n10 / 03 / 2000 11 : 59\nto : martina angelova / lon / ect @ ect\ncc :\nsubject : new update on ppi model for inflation book\ndear all ,\ni followed up on the suggestions of happening babe at the conference call as\nfollows : -\n1 ) use less data\nunfortunately , kicking out only 1990 makes the overall equation a lot less\nrobust , in fact dramatically so , and so eliminates the possibility of using\nless data . the model tested was the rpi ( month + 15 ) ppi pre - empts the moves in rpi by about 8 months . the\nmagnitude of the oscillations is also reduced . this shows that if we had\nmore detail in our rpi forward curve , then the ppi model would reflect those\npeaks and humps adequately .\nconclusion\ni therefore propose that we use the model that incorporates rpi , rpi [ t + 15 ]\nand deviations of brent crude from long - term average . the new model is\nplotted below in burgundy and can be compared to the old ppi which is\ndepicted in blue .\nplease note that all this analysis only applies to pllu , and that a separate\nstudy will be needed for the dzcv ppi index .\nregards ,\nanjam\nx 35383\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 09 / 03 / 2000 16 : 52\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n08 / 03 / 2000 14 : 03\nto : martina angelova / lon / ect @ ect , harry arora / hou / ect @ ect , maureen\nraymond / hou / ect @ ect , zimin lu / hou / ect @ ect , farouk lalji / hou / ect @ ect\ncc : trena mcfarland / lon / ect @ ect , dale surbey / lon / ect @ ect , stinson\ngibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , leandro\nibasco / corp / enron @ enron\nsubject : update on ppi model for inflation book\ndear all ,\nwe thought it might be useful to incorporate brent crude as an explanatory\nvariable for ppi ; it was found that deviations of dated brent crude from the\nlong - term average of $ 18 . 80 was the best form of the variable to use ( for\npredictions the brent forward curve produced by the global products group is\nused ) . the three new equations developed were : -\npllu ( t ) = a . rpi ( t ) + b . rpi ( t + n ) + c . ( datedbrentcrude - 18 . 8 ) + constant ,\nwhere n is 14 , 15 or 16\n[ reddish curves ]\nr - squared approx 0 . 49\nf - stat approx 32\nthe chart below shows what our projected pllu curve would be given this\nequation , and also the three best relations from before which were based upon\ncurrent and future rpi :\npllu ( t ) = a . rpi ( t ) + b . rpi ( t + n ) + constant , where n is 14 , 15 or 16\n[ greenish curves ]\nr - squared approx 0 . 47\nf - stat approx 45\ncomparison of models\nas you can see , the two equations differ in the very short - term and very\nlong - term ; the inclusion of deviations of brent crude leads to short - term\npredictions of 3 . 0 % to 3 . 2 % over the next six months . the greenish curves\npredict pllu in the range of 2 . 5 % to 2 . 8 % over the next six months .\nthe curves are then very similar until 2009 , when the models including crude\nbreak - away to the upside , relative to the falling rpi curve . the model based\npurely on rpi hugs the rpi curve much more closely in the longer term . this\nis only important to the extent that we have large positions beyond 2009\n( which we don ' t ) .\nsuggestion\nwhat could be useful now is a differently - specified model designed to\nforecast only the next 3 months , using auto - regressive or auto - regressive\nerror terms . this model would be far more accurate in the near - term , and we\ncould include this information onto the front of this long - term model . this\nmay be useful , despite the fact that most of our exposure is in future time\nbuckets .\nback - testing\nall the models give similar visual and statistical performance over the data\nsample used ( based mainly on 1990 s \" new paradigm \" economy ) .\nhopefully we can discuss these and other points later in the tele - conference ;\nyour ideas on this would be appreciated .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.987+0000", "entityId": 7057, "properties": {"text": "Subject: restricted list\nneither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\n3 tec energy corp . tten\nadrian resources adrrf\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncostilla energy cose\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nesenjay exploration esnj\nfirstworld communications inc . fwis\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nquanta services inc . pwr\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nsaxon petroleum , inc . sxn cn\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntitan exploration texp\ntranscoastal marine services , inc . tcms\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in the policy for the benefit of any party other than\nena / rac / egf , whether for his / her own account or the account of any third\nparty , where such position relates to ( i ) any commodity , financial\ninstrument , security , equity , financial asset or liability which falls within\nsuch employee ' s responsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.992+0000", "entityId": 7058, "properties": {"text": "Subject: candidate evaluation , wendi germani\nplease complete the attached form and also let me know if you have an\ninterest in proceeding with wendi .\nthanks !\npam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:37.996+0000", "entityId": 7059, "properties": {"text": "Subject: re : 1 / 2 day\nkevin ,\ni ' m scheduled to attend the quarterly new - hire orientation all day on 16\nmarch . i had planned to work the morning rush and then go over there . can\nwe cover the noon and 2 : 00 p . m . tasks ?\nsam\nkevin g moore @ ect\n03 / 10 / 2000 07 : 51 am\nto : shirley crenshaw / hou / ect @ ect , mike a roberts / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , william smith / corp / enron @ enron\ncc :\nsubject : 1 / 2 day\ngoodmorning shirley ,\nreminder : i have a doctor ' s appointment\non the 16 th of march .\nmy appointment is for 11 : 30 am .\ni plan to leave around 11 : 00 a . m .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.001+0000", "entityId": 7060, "properties": {"text": "Subject: global technology organization changes\nas the global technology group moves forward in accomplishing its goals of\ndeveloping worldwide technology standards , ecommerce opportunities and global\nplatforms , we continue to make changes in the organization to enhance\ncommunication and maximize our intellectual capital . with that in mind , we\nare pleased to announce the following organization changes within global\ntechnology :\njay fitzgerald , md ecommerce , will be moving to enron north america and will\nhave responsibility for all of ena \u0001 , s ecommerce initiatives . although this\nwill be a big loss for global technology , jay will provide immediate benefits\nto the explosion of ebusiness opportunities that are developing in the ena\nlines of business . jay will report to greg whalley .\nsteve horn , vp investments , will be moving into global technology to head the\necommerce ventures group responsible for ecommerce merchant investing . the\nscope of this new group will include investing in the following areas :\nstrategic sourcing / procurement / demand aggregation / asset disposition businesses\necommerce enabling technologies\nglobal ecommerce opportunities outside of ebs / ena / ee . ebs , ee and ena will\nbe evaluating and making equity investments within their specific business\nunits .\nexamining houston technology business opportunities not directly related to\nenron \u0001 , s business .\nsteve will report directly to me in his new role .\njenny rub has accepted the newly formed position of vp of infrastructure for\nenron corp . her responsibilities include managing all it infrastructure\nsupport activities . jenny will report to philippe bibi . jenny is currently\nvp and cio for the gas pipeline group and she will be transitioning out of\nthat role as she completes several important initiatives .\nbeth perlman has recently relocated to the united states as vp of ena \u0001 , s\napplication development , rac and treasury applications . she was previously\nheading up application development for enron europe . she will report to\nphilippe bibi .\ndan bruce , vp , is responsible for it support in the international regions ,\nee & cc and asset operations . he will report to philippe bibi .\njohn pavetto , vp , will be responsible for all ecommerce initiatives outside\nof enrononline . john will report to philippe bibi .\njay webb , sr . director , will continue to lead the enron online team reporting\nto philippe bibi .\narshak sarkissian , sr . director , has accepted a position with ebs \u0001 , s strategic\ndevelopment group and will be transitioning his responsibilities over the\ncourse of the next few weeks . he will report to scott yeager .\nplease join me in congratulating everyone on their new positions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.006+0000", "entityId": 7061, "properties": {"text": "Subject: corrected : new update on ppi model for inflation book\ndear all ,\ni followed up on the suggestions at the conference call as follows : -\n1 ) use less data\nunfortunately , kicking out only 1990 makes the overall equation a lot less\nrobust , in fact dramatically so , and so eliminates the possibility of using\nless data . the model tested was the rpi ( month + 15 ) ppi pre - empts the moves in rpi by about 8 months . the\nmagnitude of the oscillations is also reduced . this shows that if we had\nmore detail in our rpi forward curve , then the ppi model would reflect those\npeaks and humps adequately .\nconclusion\ni therefore propose that we use the model that incorporates rpi , rpi [ t + 15 ]\nand deviations of brent crude from long - term average . the new model is\nplotted below in burgundy and can be compared to the old ppi which is\ndepicted in blue .\nthe new model achieves the two main objectives of the ppi curve : it is\nsignificantly more robust and stable than the existing one , and it is\nconsiderably less sensitive to the input coefficients , which results in us\nhaving more confidence in our monthly p it was found that deviations of dated brent crude from the\nlong - term average of $ 18 . 80 was the best form of the variable to use ( for\npredictions the brent forward curve produced by the global products group is\nused ) . the three new equations developed were : -\npllu ( t ) = a . rpi ( t ) + b . rpi ( t + n ) + c . ( datedbrentcrude - 18 . 8 ) + constant ,\nwhere n is 14 , 15 or 16\n[ reddish curves ]\nr - squared approx 0 . 49\nf - stat approx 32\nthe chart below shows what our projected pllu curve would be given this\nequation , and also the three best relations from before which were based upon\ncurrent and future rpi :\npllu ( t ) = a . rpi ( t ) + b . rpi ( t + n ) + constant , where n is 14 , 15 or 16\n[ greenish curves ]\nr - squared approx 0 . 47\nf - stat approx 45\ncomparison of models\nas you can see , the two equations differ in the very short - term and very\nlong - term ; the inclusion of deviations of brent crude leads to short - term\npredictions of 3 . 0 % to 3 . 2 % over the next six months . the greenish curves\npredict pllu in the range of 2 . 5 % to 2 . 8 % over the next six months .\nthe curves are then very similar until 2009 , when the models including crude\nbreak - away to the upside , relative to the falling rpi curve . the model based\npurely on rpi hugs the rpi curve much more closely in the longer term . this\nis only important to the extent that we have large positions beyond 2009\n( which we don ' t ) .\nsuggestion\nwhat could be useful now is a differently - specified model designed to\nforecast only the next 3 months , using auto - regressive or auto - regressive\nerror terms . this model would be far more accurate in the near - term , and we\ncould include this information onto the front of this long - term model . this\nmay be useful , despite the fact that most of our exposure is in future time\nbuckets .\nback - testing\nall the models give similar visual and statistical performance over the data\nsample used ( based mainly on 1990 s \" new paradigm \" economy ) .\nhopefully we can discuss these and other points later in the tele - conference ;\nyour ideas on this would be appreciated .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.011+0000", "entityId": 7062, "properties": {"text": "Subject: interview thanks\ndear dr . kaminski :\nthank - you once again for inviting me to interview for a position in your\ncorporate research group . i very much enjoyed meeting you and your\ncolleagues . i was quite ? impressed by the excellent quality of the people\nand the entrepreneurial spirit at enron . the ongoing projects in support of\nenergy and broadband ? marketing as well as insurance ? are very interesting\nto me . i definitely would like to be a part of these efforts . thank - you\nagain for the opportunity to interview with your group .\n?\nsincerely ,\nrodney greene", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.015+0000", "entityId": 7063, "properties": {"text": "Subject: daily rates - jackups\njohn :\nclaudio put together a spreadsheet for cheking the change on a composed\njackup index against the change on individual categories of jackups and\nsemis . he did not weighted the index because we think we will benefit from a\nsimpler index price calculation by taking the straight average .\nthe results show a good r - square between the general index and individual\njackup categories - on the range of 0 . 7 - 0 . 8 . only one category displayed a\npoor r - square - about 0 . 3 . for semis of 4 tht and 5 th generation , however , we\nnoticed a degradation on the hedge effectiveness - r - squares about 0 . 2 - 0 . 3 .\nyou may verify each regression by changing the choice cell ( ax 2 on analysis ) .\nclaudio is also starting to analyze how gas and crude past moving averages ,\n12 month swaps on gas / crude , and rigs utilization explains the daily rates .\nwe will forward the results as soon as we finish .\nplease call me or claudio if you have questions .\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.020+0000", "entityId": 7064, "properties": {"text": "Subject: stewart seeligson joins ebs\nhi stinson & vince this is the person that kevin howard told me about - - kevin\ndid the finacing portion of the deals mentioned blow and stewart was the\ncommercial counterpart . he will be heading up hamachi towards its closure\nthis week .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 13 / 00 02 : 20\npm - - - - -\nebs office of the chairman\nsent by : dolph selten\n03 / 13 / 00 01 : 47 pm\nto : ec employees - - all @ enron communications\ncc :\nsubject : stewart seeligson joins ebs\nwe are pleased to announce that stewart seeligson has joined ebs relocating\nafter more than 4 years from enron europe in london . stewart started with\nenron nearly six years ago as an associate in ect in houston . in europe ,\nstewart was successful in playing a key role in sutton bridge , originating a\nnumber of highly structured transactions including the eastern deals and more\nrecently co - led enron ' s commercial activities in spain especially the\ndevelopment of a 1200 mw ccgt which is expected to begin construction later\nthis year .\nstewart will assist in developing , managing and leading several of our more\ncomplicated mission critical commercial transactions . in particular , stewart\nwill focus on those transactions which require multiple functions across ebs ,\na role stewart excelled in at enron europe . stewart will report directly to\nken rice as a vice president , but will work directly with each of the\ncommercial business unit leaders on a project specific basis .\nplease welcome stewart to the ebs team .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.025+0000", "entityId": 7065, "properties": {"text": "Subject: new businesses in london : weather & insurance\nhi vince ,\ntalking to the staff in london , i heard that lynda clemmons and a few of the\nkey weather desk members left to start their own business . i am hearing that\nlondon may gain more independence from houston and gain its own book and ,\ninterestingly , also having ideas about developing the insurance / insurance\nderivatives market . i therefore thought this might be a useful opportunity\nto formalise a gradual transfer of responsibility for weather deal pricing\nfrom joe to myself plus start talking to vasant about the new markets on the\ninsurance side . i will call you later to discuss this with you .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.030+0000", "entityId": 7066, "properties": {"text": "Subject: re : candidate evaluation , wendi germani\npam ,\nwe don ' t think wendi has skills required for this job .\nvince\nfrom : pam wilson @ enron communications on 03 / 10 / 2000 12 : 27 pm\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , jonathan\ndavis / hou / ect @ ect\ncc :\nsubject : candidate evaluation , wendi germani\nplease complete the attached form and also let me know if you have an\ninterest in proceeding with wendi .\nthanks !\npam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.034+0000", "entityId": 7067, "properties": {"text": "Subject: internship opportunity\ndear mr . kaminski ,\nit was very nice to talk with you saturday morning during the \" voleyball\nevent \" . thanks a lot for offering your help in passing my resume to the\nenrononline business people . i am very excited about the possibility of\nbeing part of the team involved with e - commerce at enron . please find my\nresume and cover letter attached .\nhope you have a good trip to california next week !\nthanks a lot\ncarla di castro\n( paulo issler ' s spouse )\n- cover letter - enron . doc\n- resumenovo . doc\ncarla di castro\nphone ( 281 ) 565 - 4283\npager ( 281 ) 527 - 6073", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.040+0000", "entityId": 7068, "properties": {"text": "Subject: summer position\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 13 / 2000\n01 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\namy ruth ward on 03 / 13 / 2000 01 : 31 : 54 pm\nto : celeste roberts / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : summer position\ndear celeste and stinson ,\ni am writing to refuse enron ' s offer for a summer position . after several\nconversations with my advisor at stanford , we have decided that i should\nremain at stanford to work on my dissertation .\nthank you again for taking the time to show me around enron .\nsincerely ,\namy ward", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.045+0000", "entityId": 7069, "properties": {"text": "Subject: visit to enron\ntom ,\ni am forwarding to you a copy of the message from nick bambos . i shall try to\ncatch you\nfor a few minutes today ( monday ) to close the loop on this effort .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 13 / 2000\n11 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 03 / 12 / 2000 05 : 32 : 35 pm\nto : vince . j . kaminski @ enron . com , bambos @ stanford . stanford . edu\ncc :\nsubject : visit to enron\nhello vince ,\nit was nice seeing you at stanford and many thanks for the lunch\nwe had together . i really enjoyed our discussions , both at the\ntechnical level and otherwise .\ni promised to send you an e - mail regarding possible dates for\na visit to enron . i delayed it for a week till my schedule was\nclearer . let ' s see if we can get a match with your schedule -\nmine is rather terrible :\nfriday , 21 st of april looks good . but april 23 rd is easter\nsunday , so that may make it difficult for some people at enron\nto be around . let me know if that is the case . i am willing to\nvisit then , because the week after that i am scheduled to be in\njapan and in the previous weeks i am all committed on fridays .\nfriday , 19 th of may is the next possibility , but this probably\nis too far out . the main problem is that i am operating within\na window of opportunity for attracting top students for this\nresearch . this window closes by the end of april , and it would be\nimportant for the student support funds to be in place then , so\nthat i can make hard commitments to students and attract top\ntalent . i am already reviewing files of students who have\napproached me for phd advising , and i am in a mode of doing \" soft\ncommitments to star - level students \" to get this research and its\npotential on their radar screen . top students are highly sought\nafter by advisors and i want to be an early player in this\ncompetition .\ndoes my visit to enron have to happen before we can set up the\nproject and student support at stanford ? if so , doing it before the\nend of april is important for getting top people . if the visit can\nhappen after we get the ball rolling , then we can schedule it in may .\ni assume there will be multiple visits both ways when the project gets\ngoing . please let me know what you think .\nbest regards ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.050+0000", "entityId": 7070, "properties": {"text": "Subject: re : texas finance festival\nfyi : below is some information on the 2 nd annual texas finance festival .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cindy justice / hou / ect on 03 / 13 / 2000 09 : 52\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 03 / 13 / 2000 09 : 43 : 51 am\nto : cindy justice\ncc : bill petty\nsubject : re : texas finance festival\ncindy ,\nyes , it ' s just around the corner and we have our very best program ever .\nour web site is up at\ncheck it out . actually , i was waiting for the final version of the program\nfrom sheridan to post it before getting in touch with you this week . we\nare planning on a room capacity group of 45 - 50 folks and are finalizing the\nplans for entertainment for friday and saturday night on the riverwalk .\nbill is handling the arrangements this year and i ' ll pass this message on\nto him as well .\ndo you think we could get an enron speaker for saturday ' s luncheon ? last\nyear was fabulous and would be hard to top but we ' d like to try . san\nantonio should be a bit easier on the speaker too . let me know what your\nthoughts are on everything including the speaker .\nbill and i are leaving town wed afternoon to go to a harvard conference so\nmaybe we could talk before then .\nwe ' re getting excited and want to get you guys involved for it is your\npersonal ( and financial ) support that makes the conference really work .\njohn\nat 01 : 09 pm 3 / 10 / 00 - 0600 , you wrote :\n>\n>\n> john -\n>\n> i haven ' t heard from you in a while and realized that the texas finance\nfestival\n> is around the corner on april 7 & 8 . how are things going ?\n>\n> cindy justice\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.054+0000", "entityId": 7071, "properties": {"text": "Subject: re : green card for paulo\nstinson ,\nyes , makes perfect sense . brad can start the process .\nvince\nstinson gibner\n03 / 10 / 2000 02 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : green card for paulo\nvince :\nnow that paulo is a manager , i think we can start the process for trying to\nget him a permanent resident status .\nshould i contact brad mcsherry about this ?\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.059+0000", "entityId": 7072, "properties": {"text": "Subject: re : training courses\nshirley ,\nno problem .\nvince\nshirley crenshaw\n03 / 13 / 2000 12 : 08 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : training courses\nvince :\nkevin moore and jose marquez would like to take a course entitled\n\" wellhead to burnertip \" which is scheduled monthly . the first course\navailable would be may 18 th and the cost would be $ 600 . 00 each .\nis this ok ?\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.067+0000", "entityId": 7073, "properties": {"text": "Subject: class request : xl 97 range - 567 excel 97 , range names and database\nfeatures , william smith\nyour approval is required for william smith to attend the following class .\nto grant approval , send a reply to \" lpharr @ enron . com \" ( notesmail : lerea\npharr / hou / ect @ ect ) .\nbe sure to include employee ' s name and class number in reply .\nexcel 97 , range names and database features\nsession dates & times :\n4 / 11 / 2000 8 : 30 : 00 am - 11 : 30 : 00 am\nlocation : eb 572\nno show / participant fee : $ 110 . 00\nif you have any questions , please call the technology training coordinator at\n713 - 853 - 1816 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.075+0000", "entityId": 7074, "properties": {"text": "Subject: class request : xl 97 - 564 excel 97 , introduction , william smith\nyour approval is required for william smith to attend the following class .\nto grant approval , send a reply to \" lpharr @ enron . com \" ( notesmail : lerea\npharr / hou / ect @ ect ) .\nbe sure to include employee ' s name and class number in reply .\nexcel 97 , introduction\nsession dates & times :\n3 / 23 / 2000 8 : 30 : 00 am - 3 : 00 : 00 pm\nlocation : eb 568\nno show / participant fee : $ 150 . 00\nif you have any questions , please call the technology training coordinator at\n713 - 853 - 1816 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.081+0000", "entityId": 7075, "properties": {"text": "Subject: interview thanks . . .\nvince and stinson ,\nit seems we made a good impression to rodney . can we have him\nworking for our sub - group ?\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 13 / 2000 08 : 35 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" rodney greene \" on 03 / 13 / 2000 12 : 05 : 57 am\nto :\ncc :\nsubject : interview thanks . . .\ndear dr . lu :\nthank - you for meeting with me to discuss opportunities in your derivative\npricing group . i very much enjoyed talking with you . the projects you are\nworking on are quite interesting to me . it appears to me the resources and\nculture at enron are excellent for accomplishing quality value - adding work .\ni would very much like to be a part of your group . thank - you once again for\nmeeting with me . and it goes without saying - lunch was great !\nsincerely ,\nrodney greene\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.086+0000", "entityId": 7076, "properties": {"text": "Subject: re : choosing the riskfree rate\ndear all ,\ni completeley agree with ben that treasuries are the most liquid and reliable\nbenchmarks . i also think that fmas have their own advantages and\ndisadvantages .\nhowever , it looks like it would be very difficult for us to avoid using libor\nas benchmark - at least to price anything related to capital markets ( for\nexample , credit default swaps ) . our prices will always be different from\nthat on capital markets if we use benchmarks different from the market .\nas a half - way solution we can have different benchmarks - for example , use\nanything , that we decide is closest to risk - free , to value products\nsignificantly different from that priced on capital markets , and libor for\neverything priced on capital markets .\nwe can adjust by manipulating other coefficients ( event , liquidity ,\nrecovery ) for our purposes , but it looks like benchmark should be libor .\nto avoid negative default probabilites ( for highly rated reference entities )\nwe can add cost fo repo and haircuts ( as all bankers do ) .\nlet us continue our discussion on this .\nslava\nbenjamin parsons\n13 / 03 / 2000 20 : 07\nto : bryan seyfried / lon / ect @ ect , martin mcdermott / lon / ect @ ect , viacheslav\ndanilov / lon / ect @ ect , stuart ffoulkes / lon / ect @ ect , eklavya sareen / lon / ect @ ect ,\ntomas valnek / lon / ect @ ect , john metzler / lon / ect @ ect , simon brooks / lon / ect @ ect ,\nkonstantin malinovski / lon / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect , vince j kaminski / hou / ect @ ect , steven\nleppard / lon / ect @ ect , jitendra patel / lon / ect @ ect , william s\nbradford / hou / ect @ ect , harry arora / hou / ect @ ect\nsubject : choosing the riskfree rate\ndear all ,\nfollowing on from the discussions had with vince et al a few weeks ago ,\nregarding the problems inherent in using treasuries as our benchmark riskfree\ncurve , i ' ve written the attached short document . my preliminary conclusions\nare as follows :\nrecent turmoil in the treasury market mostly hit 10 and 30 - year bonds .\ntreasuries are still the most liquid curve , and that used by banks for\nbenchmarking risky debt .\nthere is a considerable a liquidity / scarcity premium inherent within the\ncorporate - treasury spread , which we are not taking into account . more\naccurate measurement of this premium should allow us to calculate bankruptcy\nprices based on treasuries , which are consistent with the market .\nall further comments are welcome of course .\nregards\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.090+0000", "entityId": 7077, "properties": {"text": "Subject: introduction of the european gas advisory service and european po\nwer advisory service\nto : european gas and power clients\nfrom : peter hughes , cera senior director ; scott foster , cera director ; simon\nblakey , cera director ; mack brothers , cera director\ndate : 14 march 2000\nre : introduction of the european gas advisory service and european power\nadvisory service\nfor the past 15 years , cera ' s european gas and power retainer advisory\nservice has been primarily a natural gas service , with a small component\nrelated to electric power issues . in recognition of the changing industry\nand regulatory environment for electric power , we have significantly added\nto our electric power capabilities in europe over the past three years , in\nterms of both staff and of the depth and breadth of our research . based on\nstrong client demand for a dedicated team and service focused on the\nimpending sea change for the power industry and our desire not to lessen the\nservice we provide to the natural gas industry and market in europe , cera is\npleased to announce the launch of the european power advisory service as of\n1 april 2000 . this new service , in combination with our existing european\ngas advisory service , will maintain cera ' s thought leadership and provide\nclients with an \" early warning \" system in these fast changing and important\nmarkets .\nthe two teams will continue to work closely together , which will allow them\nto identify and analyze the important aspects of \" convergence \" between the\ngas and electric power markets while highlighting and researching the\nindependent issues in each market .\neuropean gas advisory service\nthe european gas advisory service will continue to provide clients with\nindependent analysis and insight on the changing dynamics of the european\ngas market . it offers decision makers clear and comprehensive analysis on\nthe future energy landscape and the challenges posed by the emerging\ncompetitive environment in europe . the focus is on market fundamentals , the\nimpact of european union and national policies , the changing industry\nstructure , and strategic responses .\nthe deliverables include :\nthe semi - annual european gas watch\neuropean gas decision briefs\neuropean gas private reports\neuropean gas energy signposts\ninteractive media conference calls\ndedicated european gas website - highlighting cera ' s current thinking and\nmarket fundamentals on the gas sector in europe on a country - by - country\nbasis .\nattendance at european gas roundtables ( optional )\neuropean power advisory service\nthe european power advisory service will provide clients with independent\nanalysis and insight on the changing dynamics of the european power market .\nthe service will review the market fundamentals for the european electricity\nmarket and will provide clients with a framework for understanding and\ninterpreting the major changes taking place in the market . european power\nadvisory service will present cera ' s view of the dynamics and assessment of\nthe opportunities being created in the market .\nthe deliverables will include :\na semi - annual european power watch\neuropean power decision briefs\neuropean power private reports\neuropean power energy signposts\ninteractive media conference calls\ndedicated european power website - highlighting cera ' s current thinking and\nmarket fundamentals on the power sector in europe on a country - by - country\nbasis .\nattendance at european power roundtable ( optional )\nwe are pleased at this opportunity to enhance cera ' s coverage of a rapidly\nchanging market and look forward to providing you with deeper and broader\nperspectives on the future of european energy .\nif you have any questions regarding this exciting transition , please contact\nmack brothers * in our paris office at + 33 ( 0 ) 1 42 44 10 10 . also please\nnote the upcoming european gas and european power roundtable sessions\nscheduled for monday 5 june 2000 in paris . these roundtables commence at 9\na . m . and include dinner that evening .\n* cera is pleased to announce that as of 1 april 2000 mack brothers will be\nmoving from our cambridge office to our paris office to head the commercial\nteam for european energy .\n* * end * *\nthis electronic message and attachments , if any , contain information from\ncambridge energy research associates , inc . ( cera ) which is confidential and\nmay be privileged . unauthorized disclosure , copying , distribution or use of\nthe contents of this message or any attachments , in whole or in part , is\nstrictly prohibited .\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.095+0000", "entityId": 7078, "properties": {"text": "Subject: the lure of the san\nnetwork world fusion focus : amy larsen decarlo\non storage in the enterprise\ntoday ' s focus : the lure of the san\n03 / 14 / 00\ndear wincenty kaminski ,\ntoday ' s focus : the lure of the san\nby amy larsen decarlo\ne - business is changing how businesses value information . information\nhas become a strategic asset that gives companies an edge over their\nmarket rivals . companies use intelligence to identify new markets and\nmake contact with prospective customers . in this media - saturated era ,\ninformation itself is packaged and sold as a product . this makes the\nability to supply users with fast access to stored information on a\ncontinuous basis absolutely crucial .\ncompanies are clearly coming to a crossroads in their storage\nimplementations . with estimates for internet storage capacity needs\ndoubling every three months , it professionals are hungry for a scalable\nsolution to help them consolidate control of stored information . they\noften look to storage - area networks ( san ) as a better option to manage\ntheir information storage systems than distributed models .\ntoday , most organizations rely on a distributed storage model that uses\nfile servers to process i / o requests from end users and other\napplication servers . in this model , all requests for data go through\nthe file server that owns the attached storage disks , and only one file\nserver can tap data on a particular disk via a scsi bus .\nthis model has several shortcomings . first , the amount of data a\nserver can access is restricted to the number of disks supported by the\nbus , which limits the capacity of a single file server . second , because\nthe server processes each i / o request , it risks becoming a bottleneck .\nthird , this server model carries some daunting availability limitations ,\nbecause only one file server is allowed to access a set of disks . if\nthat file server or any of its scsi connections fails , then users and\nother application servers lose access to the stored files .\nthis model carries other major disadvantages . distributed file servers\nrely on the data transport network to run backup and recovery operations\nwhich can eat up bandwidth and slow normal network transmissions to a\ncrawl . finally , this decentralized setup is difficult to manage from\nboth a logical and a physical perspective . file server based storage\nsystems are distributed throughout the enterprise , so it is often\ndifficult to assess current and future capacity needs . and because\nthese servers use a parallel cabling scheme to link the file server to\nthe disk array , they can also be cumbersome to set up and manage .\nsans promise to mitigate the problems that plague conventional file\nservers , largely through consolidation of control . these specialized\nstorage networks claim higher availability , faster performance ,\ncentralized management , and by their architecture , the capability to\nremove bandwidth - intensive data backup and recovery operations from the\nlan . this frees up the lan for normal data communications and ensures\nsmoother back - up operations .\nusing high - speed transports like fibre channel , sans offer a high -\nperformance network optimized for moving storage data . sans also make\nway for new storage implementations like lan - free backup . and , because\nfibre channel can support distances of up to 10 kilometers , san devices\ncan be widely distributed , but also centrally managed as one network .\nyet , as was the case with lans in their younger years , sans are still\ndeveloping . vendors are still working out major product interoperability\nissues , while companies deploying san technology struggle with how to\nmerge the very different worlds of storage and networks and manage both\ntogether . ultimately the hope is that , like lans , sans will develop into\na mature and highly manageable solution that supplies substantial\nbenefits at lower costs .\ngiven that storage deployment and ongoing support costs can total 10\ntimes the acquisition price for the equipment , the consolidated\nmanagement capabilities of a san may deliver the biggest benefit to\nbusiness .\nto contact amy larsen decarlo :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\namy larsen decarlo is an analyst with enterprise management associates\nin boulder , colo . , ( http : / / www . . com ) , a leading\nanalyst and market research firm focusing exclusively on all aspects of\nenterprise management . she focuses on storage management , application\nmanagement , and security . in her position , she oversees market research\nand contributes to custom project work in her focal coverage areas .\nprior to joining ema , amy spent five years covering enterprise\nmanagement for industry trade magazines , including informationweek and\ndata communications . she can be reached at\nmailto : decarlo @ . com\nfor related links - - click here for network world ' s home page :\nhttp : / / www . nwfusion . com\nstorage networking industry association ( snia ) :\nhttp : / / www . snia . org\nfibre channel industry association ( fcia ) :\nhttp : / / www . fibrechannel . com\nscsi trade association ( sta )\nhttp : / / www . scsita . org\nother storage - related articles from network world :\nlegato primes storage resource mgmt , network world , 03 / 13 / 00\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.099+0000", "entityId": 7079, "properties": {"text": "Subject: benzene forward curve & hedge calculator\nnew market we are trying to develop in benzene swaps - possibly hedging with\nfinancial naphtha and physical toluene .\nrgds ,\nanjam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 14 / 03 / 2000 10 : 35\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n14 / 03 / 2000 10 : 34\nto : robert brewis / lon / ect @ ect , stuart bland / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , hrvoje paver / lon / ect @ ect , stinson\ngibner / hou / ect @ ect , tracy wallace / lon / ect @ ect\nsubject : benzene forward curve & hedge calculator\ndear all ,\nattached is the spreadsheet \" benzenecurves . xls \" ( also available in\ns : \\ research \\ globalproducts ) that will hopefully allow you to derive a\nmid - curve for benzene based upon our existing naphtha curve produced by\ntracy . the previous hedge ratio analysis is still part of the new\nspreadsheet .\nfor clarity a graph of the curve based on 1996 through 2000 data is depicted\nbelow :\ni can also provide confidence bands on the regression model , if this can\nassist in deciding the bid - offer spread for the forward curve , but this is\nslightly more involved - let me know you ' d like this .\nregards ,\nanjam\nx 35383\nattachment :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.104+0000", "entityId": 7080, "properties": {"text": "Subject: re : hello\nhello ,\ni just received your message .\nare still in nyc ? i like it a lot .\ni wish my job was associated with traveling .\naccording to saturday meeting - i will be there .\nhave a save trip back home .\npatrycja\nfrom : vkaminski @ aol . com save address - block sender\nto : pdalecka @ hotmail . com save address\ncc : vkaminski @ aol . com save address\nsubject : re : hello\ndate : mon , 13 mar 2000 23 : 22 : 26 est\nreply reply all forward delete previous next close\nhello patrycja ,\ngreetings from the big apple .\nsaturday works for me . let ' s meet at 4 : 00 p . m . at carrabba ' s . it ' s an\nitalian\nrestaurant on i - 45 in the woodlands . after you pass conroe , take the\nresearch\nforest exit ( 5 - 10 miles past conroe ) and stay on the feeder road . go\nthrough\nthe lights ( research forest intersection with i - 45 ) . as you continue along\nthe feeder road you will pass on your right the woodlands mall and the\nexxonmobil building , . the restaurant will be on your right , about 200 - 300\nyards before the next lights ( i - 45 and sawdust ) .\ni shall have my cell phone with me ( 713 898 9960 ) . in case you arrive early\nyou can stop at my home : 10 snowbird place , ( 281 ) 367 5377 . i shall send you\nlater the instructions how to get there . i shall leave home around 3 : 45 .\nlook forward to meeting you .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.108+0000", "entityId": 7081, "properties": {"text": "Subject: ravi thuraisingham ' s skytel two way pager number\nhere is the pager number that has been setup via jim irvine .\nemail : 8776804806 @ skytel . com\ndirect dial :\n800 dial : 1 - 800 - 759 - 8352 box # 877 - 680 - 4806\ni can be reached at this pager if you need to get me asap .\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.113+0000", "entityId": 7082, "properties": {"text": "Subject: williams licenses prosrm capacity management system from pros\nrevenue management\nsince i left , i don ' t know where this project stands . however , thought you\nmight want to see this .\nhope all is well .\nregards ,\nstephanie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie miller / corp / enron on 03 / 15 / 2000\n10 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntrobison @ prosrm . com on 03 / 15 / 2000 10 : 38 : 31 am\nto : smiller @ enron . com\ncc :\nsubject : williams licenses prosrm capacity management system from pros\nrevenue management\ntina robison\ncorporate communications\npros revenue management\n713 - 335 - 5397 - fax\n713 - 335 - 5813 - phone\ntrobison @ prosrm . com\n- williams . pros . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.117+0000", "entityId": 7083, "properties": {"text": "Subject: full circle : asps the new big blue ?\nnetwork world fusion focus : mike jude and nancy meachim\non application service providers\ntoday ' s focus : full circle : asps the new big blue ?\n03 / 15 / 00\ndear wincenty kaminski ,\ntoday ' s focus : full circle : asps the new\nbig blue ?\nby mike jude and nancy meachim\nthe terms \u0001 & asp \u0001 8 and \u0001 & ibm \u0001 8 may have more in common than being three -\nletter acronyms .\nremember big blue of the early \u0001 + 60 s ? the vision , then , was centralized\ncomputing . mainframe computers hosted complex , expensive applications\nthat end users accessed via dumb terminals . it infrastructure ,\nespecially memory , was expensive and needed to be controlled . with\ncomputing resources centralized , ibm reasoned , they were easier to\nmaintain .\nof course , ibm got it wrong , in that computers became a cheap commodity .\nand users weren \u0001 , t happy simply using dumb terminals . they wanted a\nbigger share in all that technology offered . so , as memory prices fell ,\nso did the idea of central control . dumb terminals were transformed into\nintelligent desktop machines that could store applications and data . the\nglass house populated by white - smocked technicians went out of fashion .\nlooking back on those times , many of us would shake our heads and wonder\nhow ibm could have been so wrong . but maybe big blue wasn \u0001 , t so far off .\nthanks to the advent of application service providers , centralized\ncomputing is making a comeback . asps offer centralized application\nmanagement .\nthe market started as a way to offer the benefits of server\nadvertisement protocol and other complex enterprise resource planning\nsoftware to small companies or companies with less technical savvy . but\nasps now host all kinds of applications , including small , multilicensed\nprograms whose images are downloaded to end users on demand . but , the\nprinciple remains the same : central control makes support much more\nefficient and usually cheaper . how about that , ibm ?\nto be fair , the dynamics of an asp are very different from old\ncentralized mainframe operations . an asp doesn \u0001 , t just host and support\nan application for general distribution over an in - house proprietary\nnetwork . unlike the ibm vision , an asp is very dependent on network\nservice . it is also very sensitive to service levels . in the \u0001 + 60 s , if\nthe mainframe let you down , you ended up twiddling your thumbs for an\nhour or so , and your only recourse was that white - smocked fellow .\nnowadays , users start to scream if service is interrupted for even a\nminute . and woe to the asp who brings down a customer operation . the\nworld of the asp is much more complex than that of the old \u0001 + 60 s shop .\nhowever , if one could magically transport a computer user from the \u0001 + 60 s\nto the wonderful new 2000 s , would it seem all that different to him ? in\nan ideal asp world , a la scott mcnealy \u0001 , s vision , users would sit down\nat a semidumb terminal , download the application du jour , and start\nworking . what did the \u0001 + 60 s user do ? kind of the same thing !\nso you are probably wondering , what is the point ? just this : ibm \u0001 , s\nproblem was leaving the customer out of the equation . and look what\nhappened . customers rebelled . they didn \u0001 , t buy ibm \u0001 , s spiel . it became\nthe \u0001 & in \u0001 8 thing to hate ibm . why ? because the guys in white smocks\ncouldn \u0001 , t spell service and didn \u0001 , t care about customers .\nto be successful , asps need to learn from the past . they need to tattoo\nservice on the forehead of each of their employees . there are too many\nchoices , today , for customers to put up with inferior service . that \u0001 , s\none big difference from the \u0001 + 60 s . customers now can literally choose\nany service provider in the world . just being big doesn \u0001 , t cut it these\ndays .\nto contact mike jude and nancy meachim :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsenior consultant michael jude and research director nancy meachim are\nwith enterprise management associates in boulder , colo . ,\n( http : / / www . . com ) , a leading analyst and market\nresearch firm focusing exclusively on all aspects of enterprise\nmanagement . jude has over 18 years of experience in the\ntelecommunications industry , most recently with us west , where he was a\nmanager of public policy . mike can be reached at\nmailto : jude @ . com . meachim focuses on e - business\nmanagement . she is currently conducting a research study on asp\nmanagement that is due to be released in april . nancy ' s email address\nis mailto : meachim @ . com .\nfor related links - - click here for network world ' s home page :\nhttp : / / www . nwfusion . com\nbuzz : application otsourcing , network world fusion , 09 / 27 / 99\nasp research page , network world\nall about asps\ninformation center for application service providers , their customers\nand delivery partners . includes resources , events and news . the asp\nindustry consortium .\nhttp : / / www . aspindustry . org /\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.122+0000", "entityId": 7084, "properties": {"text": "Subject: linux - - hit or miss ?\nnetwork world fusion focus : phil hochmuth\non linux\ntoday ' s focus : will linux be a hit or miss on the corporate desktop ?\n03 / 15 / 00\ndear wincenty kaminski ,\ntoday ' s focus : will linux be a hit or miss\non the corporate desktop ?\nby phil hochmuth\nso far this year , the buzz about linux in enterprise networks has\nfocused on servers and embedded systems , with the growth of linux\nsevers being most heralded . according to idc , a research firm based in\nframingham , mass . , linux was the fastest - growing server operating\nsystem last year , with a 93 % growth rate over the year before . linux\nwas the second most - shipped operating system in 1999 after windows nt ,\ncapturing 24 % of new licenses shipped .\nas for the embedded market , linux has emerged as an ideal platform for\nnetwork appliances , because the system can be modified to handle\nspecialized , dedicated tasks very well . companies such as cobalt\nnetworks , picazo and progressive systems have announced linux - based\nappliances , ranging from web servers to pbxs to firewalls .\nbut what of the open source hacker \u0001 , s dream of \u0001 & linux on every desktop ? \u0001 8\nsure , linux on the desktop has become more accessible than ever , with\ncolorful , shrink - wrapped boxes of caldera , red hat and corel linux now\navailable at places like compusa . however , analysts have said that\nlinux \u0001 , s growth in the enterprise will be limited to the macro and micro\nareas of network servers and embedded operating systems .\naccording to idc , linux currently runs on only 4 % of u . s . desktops . the\nhold microsoft windows has on the desktop market will remain strong ,\nanalysts say , despite such factors as microsoft \u0001 , s antitrust problems\nand the surging popularity of linux .\neven some linux executives are skeptical of their product \u0001 , s desktop\nfuture . recently , suse ceo roland dyroff downplayed linux \u0001 , s future on\ndesktops . dyroff said , \u0001 & given the lack of applications available , we\nreally can ' t claim it as being competitive on the desktop yet . \u0001 8\na recent survey by survey . com gives more hope for linux desktops .\naccording to the survey of 1 , 640 enterprise network managers , open\nsource operating systems are used on 10 % of desktops , with the number\njumping to a surprising 23 % of enterprise desktops by 2002 .\ndespite the mix of numbers being thrown around , two important factors\nthat will determine the success of linux as an enterprise client\ndesktop are : a standardized , easy - to - use graphical user interface ( gui )\nand available applications .\none company that is working to make linux more user friendly is palo\nalto - based eazel , which is designing a next - generation file management\nsystem and user interface to run on top of the linux kernel . according\nto eazel \u0001 , s web site , the company \u0001 , s goal is to bring linux to the masses\nand \u0001 & do it in a way that appeals to today ' s linux users and to mere\nmortals . \u0001 8\nthe company was founded by a group of former apple executives , and is\nallied with the gnome project , which has been doing extensive linux\ndesktop environment development for several years . eazel is due to have\na product out by the middle of this year . with an intuitive , icon - based\nfile management environment , eazel is hoping its user interface will be\nan improvement over the two current linux guis , gnome and kde , and will\nhelp standardized the look and feel of linux for \u0001 & regular \u0001 8 users . for\nenterprise mangers who have already embraced linux on the server side ,\nthis development will be worth keeping an eye on .\non the applications side , several office productivity suites have been\navailable for some time , such as sun \u0001 , s staroffice suite and koffice for\nthe kde desktop . corel has also ported its office products , such as\nwordperfect , over to linux to complement its own distribution of the\noperating system . while there have been recent rumors ( started by linux\ncare vice president arthur tyde ) that microsoft is working on a port of\nms office to linux , microsoft officials deny this .\nwhile linux may never supplant windows as the industry - standard desktop ,\nthere should be plenty of opportunity for linux pcs in enterprise nets\nin the future .\nto contact phil hochmuth :\n- - - - - - - - - - - - - - - - - - - - - - - - -\nphil hochmuth is a writer and researcher for network world , and a former\nsystems integrator . you can reach him at mailto : phochmut @ nww . com .\nfor related links - - click here for network world ' s home page :\nhttp : / / www . nwfusion . com\nstaroffice software from sun\nhttp : / / www . sun . com / staroffice\ncorel linux os\nhttp : / / www . corel . com / freedom / freedom . htm\neazel\nhttp : / / www . eazel . com\ngnome - - the gnu network object model environment\nhttp : / / www . gnome . org\nkoffice - - the integrated office suite for kde , the k desktop\nenvironment\nhttp : / / koffice . kde . org /\ncobalt networks , inc .\nhttp : / / www . cobaltnetworks . com\nprogressive systems\nhttp : / / www . progressive - systems . com\npicazo\nhttp : / / www . picazo . com\nother linux - related articles from network world :\nactive directory upgrade requires strong game plan , network world ,\n03 / 13 / 00\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.126+0000", "entityId": 7085, "properties": {"text": "Subject: btrieve free ride ends\nnetwork world fusion focus : dave kearns on novell netware\ntoday ' s focus : btrieve free ride ends\n03 / 14 / 00\ndear wincenty kaminski ,\ntoday ' s focus : btrieve free ride ends\nby dave kearns\nnetware has shipped with btrieve ( originally a flat - file database\nsystem , now grown into a full - fledged relational database system ) since\nthe days of netware 2 some 12 years ago . many independent software\nvendors have relied on this and constructed their netware applications\nto use the built - in facilities btrieve afforded .\noriginally licensed from its creator , softcraft , novell bought btrieve\noutright in the late \u0001 + 80 s , then sold it off 10 years later to some of\nthe original developers , now incorporated as pervasive software .\npervasive has , essentially , retired the btrieve name in favor of\n\" pervasive sql 2000 , \" a true relational database system which\nnevertheless still purports to support applications written to the\nbtrieve 6 . x specification .\na major change has been introduced in netware 5 . 1 , however . there is no\nlonger an unlimited - use version of the database included . novell still\nuses btrieve technology for ( among other things ) its installed products\ndatabase ( sys : system \\ products . dat is the file ) , but netware 5 . 1\nincludes only a two - user license for sql 2000 enough for the\nadministrator to add new products and services , but not enough for any\nbtrieve - based applications the network might be running .\nthere is an unlimited - use version of sql 2000 included , but it \u0001 , s an\nevaluation version only . it will time out after 90 days . full - use\nlicenses may be purchased from pervasive software ( or your software\nvendors may provide them ) , but unsuspecting network administrators\ncould be caught off - guard when applications stop working .\nfor the adventurous , there is an unlimited - use version of btrieve 6 . 10\nincluded with the netware 5 . 1 distribution . but novell admits it hasn ' t\ntested the software with netware 5 . 1 , it may not work , and the real\nkiller most current applications ( such as computer associates\narcserve ) require btrieve 6 . 15 .\ncheck the applications you ' re using before doing that upgrade to\nnetware 5 . 1 , and calculate the additional costs of obtaining the\nrequisite number of sql 2000 licenses . then , decide if that ' s what you\nwant to do , or if switching to a different application is the better\nchoice .\nto contact dave kearns :\n- - - - - - - - - - - - - - - - - - - - - - -\ndave kearns is the word wrangler for virtual quill , a writing agency\nserving the computer and networking industries . if your target\ncustomer doesn ' t know your product , doesn ' t know its uses and doesn ' t\nknow he needs it , he ' s not going to buy it . from books to reviews ,\nmarketing to manuals , vq can help you and your business . virtual quill\n- \" words to sell by . . . \" find out more at : http : / / www . vquill . com / , or\nby e - mail at mailto : info @ vquill . com .\nfor related links - - click here for network world ' s home page :\nhttp : / / www . nwfusion . com\npervasive . sql \u0001 v 2000 product family sdk\nunderstanding pervasive . sql 2000 , a white paper ( pdf )\nmigration guide 6 to pervasive . sql . doc\n% 20 to % 20 pervasive . sql . pdf\nother netware - related articles from network world :\nactive directory upgrade requires strong game plan , network world ,\n03 / 13 / 00\nmicrosoft exec sketches future for win 2000 , network world , 03 / 13 / 00\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.131+0000", "entityId": 7086, "properties": {"text": "Subject: videoconferencing picture clears up\nnetwork world fusion focus : neal weinberg on product review of the week\ntoday ' s focus : videoconferencing picture clears up\n03 / 14 / 00\ndear wincenty kaminski ,\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ this newsletter sponsored\nby w . quinn ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\nhow to regain the 30 % of nt / 2000 server space that ' s wasted\nfree ! get a grip on spiraling disk consumption and regain 30 % or more\nof your site \u0001 , s enterprise storage capacity . wquinn ' s storagecentral\nlets you : monitor , track and control user disk consumption ; identify and control what types of\nfiles your users can write to your servers .\nget a grip on your nt / 2000 storage space - - free eval :\nl\ncopy and paste urls that break in two lines and remove extra spaces .\ntoday ' s focus : videoconferencing picture clears up\nby neal weinberg\nif you \u0001 , ve been turned off by the jumpy frames and poor audio quality\nassociated with real - time videoconferencing , the reviewmeister has good\nnews for you . there \u0001 , s a new generation of videoconferencing end - point\ndevices that provide business - quality pictures and sound for under\n$ 12 , 000 .\nwe grabbed a box of popcorn and tested eight videoconferencing systems ,\nusing 384 k bit / sec isdn and ip connections .\nin the category of videoconferencing appliances that is , standalone\nsystems that go in a conference room for group video sessions with\ncolleagues or business partners polycom \u0001 , s viewstation mp was the\nclear winner .\nthe polycom viewstation provided outstanding video and audio quality .\nin addition , it was easy to install , configure and use .\nin the category of pc - based products , which are especially good for\nvirtual collaboration from your desktop , vcon \u0001 , s mc 800 was the hands -\ndown winner , based on its high - quality components .\nthe beauty of these products is they allow you to have a real - time\nvideo image of the person you \u0001 , re conferencing with in one corner of\nthe screen , with the rest of the space available for data collaboration .\nif you \u0001 , re in the market for a system , be sure to get one with a sony\nevi d 30 / 31 video camera ; an unidirectional boundary microphone , like\nthe audio technica ; and a quality sound mixer . and look for remote\nadministration and system management tools . for example , the\nviewstation allows you to upgrade software , change settings , or change\naddress book entries directly from the administrator \u0001 , s system .\nmost systems will allow you to transmit over isdn or ip , but we found\nperformance over ip was dragged down by ip \u0001 , s overhead requirements . for\nthe complete product review , go to :\nof course , there \u0001 , s more to videoconferencing than end points , so we\nwhipped up an implementation guide that lays out the network topology ,\nbandwidth and quality - of - service issues .\nbased on our testing , the reviewmeister says now is the time to start\npilot - testing a videoconferencing system . your chief information\nofficer will love it when you tell him you can slash your company \u0001 , s\nairline and hotel bills because you \u0001 , ve got people from all over the\ncompany in virtual rather than face - to - face meetings .\nnext week : we loaded windows 2000 on a pc and a server and ran gigabit\nethernet to the desktop . guess where the bottleneck was ?\nto contact neal weinberg :\n- - - - - - - - - - - - - - - - - - - - - -\nneal weinberg is features editor at network world , in charge of product\nreviews , buyer ' s guides , technology primers , how - tos , issue - oriented\nfeature stories and the technology insider series . you can reach him at\nmailto : nweinber @ nww . com .\nfor related links - - click here for network world ' s home page :\nhttp : / / www . nwfusion . com\nvideoconferencing picture clears up , network world , 03 / 13 / 00\nbut implementation is still fuzzy , network world , 03 / 13 / 00\nhow we did it , network world , 03 / 13 / 00\nsubscription services\nto subscribe or unsubscribe to any network world e - mail newsletters ,\ngo to :\nto change your email address , go to :\nsubscription questions ? contact customer service by replying to this\nmessage .\nother questions / comments\nhave editorial comments ? write jeff caruso , newsletter editor , at :\nmailto : jcaruso @ nww . com\nfor advertising information , write jamie kalbach , account executive ,\nat : mailto : jkalbach @ nww . com\nnetwork world fusion is part of idg . net , the idg online network .\nit all starts here :\nhttp : / / www . idg . com\ncopyright network world , inc . , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.136+0000", "entityId": 7087, "properties": {"text": "Subject: video conference scheduling\nin order to improve the video conferencing services offered to the enron\ncommunity , the video conference group will be implementing the following\nprocedural changes . these changes will be effective immediately .\nconference scheduling :\nplease route all video conference requests via email to ' videoconference '\n( one word ) or by phone to 713 - 345 - 8500 ( x 5 - 8500 ) . once room reservations are\ncomplete , conferences will be scheduled and confirmation notices sent to the\nrequestor via email . each requestor will receive a confirmation notice the\nbusiness day preceding scheduled conferences .\nthe following information will be required for all conference requests :\nrequestor name and contact number\nsites to be included in the conference\nsite contact names along with associated phone numbers\ndate , time and duration of conference\ncompany number / rc or cost center of requestor\npreferred conference rooms ( near - end and far - end )\ntechnical problems :\nshould problems arise during a video conference , call 713 - 345 - 8555 and a\ntechnician will be immediately dispatched\nthanks in advance for your cooperation ,\nvideo conferencing support", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.142+0000", "entityId": 7088, "properties": {"text": "Subject: career opportunities @ enron\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jens gobel / corp / enron on 03 / 15 / 2000 09 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngordian kemen on 03 / 15 / 2000 09 : 13 : 47 am\nto : jens . gobel @ enron . com\ncc :\nsubject : re : bei enron\nhi jens ,\nanbei findest du meinen cv in englisch als pdf - file .\nein treffen in austin wuerde mir gut passen . diesen feitag wegen sehr spaeter\nankunft ausgenommen , ginge es prinzipiell an beiden wochenenden . ich muesste\nallerdings vorher noch abklaeren , was meine schwiegereltern konkret an events\ngeplant haben . wann wuerde es dir denn passen ? ich gebe dir jetzt auf jeden\nfall schon mal die telefonnr . meiner in - laws : ( 512 ) 301 - 9819 , damit wir uns\nnicht verpassen . bist du in austin oder mobil erreichbar ?\nschoene gruesse und vielen dank fuer dein engagement .\ngordian\n- gordianresume . pdf\n- - - - - - - - -\ngordian kemen , dipl . - volksw .\nuniversit , t mannheim | | university of mannheim\nlehrstuhl f _ r finanzierung | | chair of finance\nl 5 , 2\nd - 68131 mannheim\ngermany\nfon : + 49 621 181 - 1524\nfax : + 49 621 181 - 1519\nmailto : g . kemen @ uni - mannheim . de\n- - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.147+0000", "entityId": 7089, "properties": {"text": "Subject: us news archive @ ft . com\nreliable country intelligence for a challenging world\nwith country reports supporting your decisions , you \u000f ' re\nworking with the best source of country intelligence\navailable . turn to the economist intelligence unit at :\nhttp : / / store . eiu . com\ndear ft . com user\nft . com \u000f ' s global archive can provide the answer to a multitude\nof business queries :\n* access information from more than 1 , 200 us business news\npublications\n* simultaneously search multiple sources e . g . business and\nindustry papers , business wire , and the pr newswire - usa .\n* obtain a global view by searching across more than 6 million\narticles worldwide .\nwith a variety of search options and powerful software , you will\nbe able to find the information you need in no time at all .\nfor the definitive answer to your business - related query , visit\nand bookmark this page :\nrch . jsp\nregards ,\nft . com\nwhy not forward this e - mail to a friend or colleague who may\nfind this information useful ?\nif you no longer wish to receive further e - mails from us\nplease send an e - mail to ft . com . unsubscribe @ newsbyemail . ft . com\nwith the single word \" unsubscribe \" as the subject of the\nmessage . your name will then be removed from our mailing\nlist .\nif you have forgotten your password for ft . com simply visit\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.154+0000", "entityId": 7090, "properties": {"text": "Subject: re : video conference scheduling\nhello all :\nthe enron corp . research group has a standing reservation on thursdays\nfrom 11 : 30 - 1 : 00 pm in conference room eb 30 cl . we understand the\nagreement to be that unless top management requests this conference\nroom we will have it . if for some reason you do need to move us , we would\nappreciate it if you would find us a substitute room .\nthe following information is per your request .\nrequesters name : shirley crenshaw , sam smith , kevin moore\nsites to be included : london and portland\nsite contact names : london : ben parsons - 207 - 783 - 7041\nportland : michael schilmoeller - 3 - 3135\ndate , time & length : every thursday , from 11 : 30 - 1 : 00 pm\nco . name : enron corp . research group\nco . # : 0011\nco . rc # : 100038\nconference room : we have a standing reservations for eb 30 cl\nno . of people : 30 - 35\nif you need anything else , please let me know\nthanks and have a great day !\nshirley crenshaw\n3 - 5290\nenron north america corp .\nfrom : videoconference . @ enron 03 / 15 / 2000 06 : 13 pm\nsent by : enron announcements @ enron\nto : all enron downtown\ncc :\nsubject : video conference scheduling\nin order to improve the video conferencing services offered to the enron\ncommunity , the video conference group will be implementing the following\nprocedural changes . these changes will be effective immediately .\nconference scheduling :\nplease route all video conference requests via email to ' videoconference '\n( one word ) or by phone to 713 - 345 - 8500 ( x 5 - 8500 ) . once room reservations are\ncomplete , conferences will be scheduled and confirmation notices sent to the\nrequestor via email . each requestor will receive a confirmation notice the\nbusiness day preceding scheduled conferences .\nthe following information will be required for all conference requests :\nrequestor name and contact number\nsites to be included in the conference\nsite contact names along with associated phone numbers\ndate , time and duration of conference\ncompany number / rc or cost center of requestor\npreferred conference rooms ( near - end and far - end )\ntechnical problems :\nshould problems arise during a video conference , call 713 - 345 - 8555 and a\ntechnician will be immediately dispatched\nthanks in advance for your cooperation ,\nvideo conferencing support", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.159+0000", "entityId": 7091, "properties": {"text": "Subject: enron media / advertising\nsimon ,\nplease forward a copy of my ken rice presentation to vince kaminski . send\nhim the version with the white background .\nvince :\nthanks again for meeting with me today and i am pleased that you are\ninterested in discussing this opportunity in more detail .\nfeel free to contact me should you have any questions . as discussed , the\nenron media / advertising idea is being developed under ebs , but should\ndevelop into its own business unit .\nenron media / advertising :\n- advertising risk book\n- physical trades , supported by excess inventory from cable networks , radio ,\nnetwork tv , etc .\n- media buying service\n- alliances with advertising agencies to sell enron ' s \" eyeballs \" from our\ncustomer / server - isp relationships i . e . , us west\n- agencies could endorse ebs to their customers ( ford gm , procter & gamble ,\netc . ) and become an extended enterprise for ebs and our ein applications\n- enron ' s capital , to fund content development for the networks and\nhollywood , which in turn would provide content for our pipes with licensing\nand syndication rights .\n- an enron on line b to b opportunity ( you may want to review the following\nsites : doubleclick . com , agency . com , adauction . com )\nmark and kal :\nvince and i are meeting on tuesday , march 28 th @ 3 : 00 pm to further discuss\nthe development of the enron media / advertising concept . can you join us to\nprovide a customer and agency perspective ?\nregards ,\nmichael p . horning", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.164+0000", "entityId": 7092, "properties": {"text": "Subject: idea : please take a look\ndear mr . kaminski ,\nthank you for calling . briefly , about ideaglobal . com : we ' ve been providing\nunbiased market analysis since 1989 , and today our customers include the\nfed , the us treasury , the imf , 25 foreign central banks , and over 1 , 700\ndealing rooms worldwide . we emphasize sales and trading strategies rather\nthan just provide market news .\nattached , please find 2 samples of our daily research : today ' s issue of our\nmorning faxes financial markets today and fixed income today . we also have\nintraday market coverage on bloomberg : idea > go , reuters , and\nbridge / telerate .\nif the info looks interesting , we would be glad to arrange a 30 - day free\ntrial for you ? for your reference , please see our price list . i look\nforward to your reply .\nbest regards ,\nvadim pokhlebkin\naccount manager\nvpokhlebkin @ ideaglobal . com\ntel . + 1 212 571 4332\nfax + 1 212 571 4334\nideaglobal . com\n140 broadway , 21 st floor\nnew york , ny 10005 , usa\nany views expressed in this message are those of the individual sender ,\nexcept where the sender specifically states them to be the views of\nideaglobal . com . this email , its content and any files transmitted with it\nare intended solely for the addressee ( s ) and may be legally privileged\nand / or confidential . access by any other party is unauthorized without the\nexpress written permission of the sender . if you have received this email in\nerror you may not copy or use the contents , attachments or information in\nany way . please destroy it and contact the sender via the ideaglobal . com\nswitchboard in one of the following three offices : new york + 1 212 571 4332 ;\nlondon + 44 171 430 2888 ; singapore + 65 332 0700\n- fmto 316 a . pdf\n- fito 316 a . pdf\n- onesheet . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.173+0000", "entityId": 7093, "properties": {"text": "Subject: australian energy 2000\ndear vince ,\ndzien dobry . many thanks for agreeing to take the remainder of the var\nseminar - it is a great help . i asked raymond yeow of enron australia if he\nwould chair day one but he said that you would be a bigger draw and perhaps\nbetter placed . to this end , i am hoping that you would consider chairing day\none ' s plenary session and trading stream . you can blame raymond for\nrecommending you ! i appreciate that this is asking even more of you than\nyou originally signed up for but you seem to be famous in this small market\nand it would be great if you could do it .\ni apologise for imposing once again but look forward to hearing back from\nyou when you get a chance . as ever , let me know if you have any questions .\nbest regards ,\njoel", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.180+0000", "entityId": 7094, "properties": {"text": "Subject: re : presentation\ndawn ,\ni met david sobotka from koch this morning and we talked about coordinating\nour presentations .\nthis means there will be changes intended to avoid overlaps . sorry for that .\nthe portions of my presentation\nwill survive ( those about valuation paradigms ) and i shall add a few more\npages on accounting treatment of weather derivatives\nplus more specific examples . david will cover primarily market evolution +\nplus examples of some\nstandard structures , and we shall both give more interesting examples of\nspecific deals executed by our companies .\ni shall send you an updated version of my part next week . let me know what\nthe deadline is .\nvince\n\" dawn scovill \" on 03 / 14 / 2000 07 : 53 : 47 am\nto : \" vince j kaminski \"\ncc :\nsubject : re : presentation\nthanks - - would you like me to include these in the conference book ? or do\nyou anticipate changes ?\ndawn\nfrom : dawn scovill , conference coordinator\n\" powerful new ideas 2000 \"\ndawn @ perfectmeeting . com\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto :\ncc : shirley crenshaw ; vince j kaminski\n; vince j kaminski\nsent : monday , march 13 , 2000 1 : 56 pm\nsubject : presentation\n>\n>\n> dawn ,\n>\n> i am sending you an electronic version of my presentation .\n>\n> vince kaminski\n>\n> ( see attached file : fplo 400 . ppt )\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.184+0000", "entityId": 7095, "properties": {"text": "Subject: re : hello\nhello vince ,\nhow are you this week ?\nmy week is pretty relaxing - i am taking the training for the very last\nproduct of my company , called voicenet , and i will achieve the highest state\nof initiation with destia ( viatel ) products , ha . . .\nunfortunatelly i have not been promoted for business vip representative ( the\nposition associated with t - 1 ) as i do not have any experience with it .\ni am blaming myself because i cannot discipline myself to study consequently\nevery day for gmat .\nall the best to you and see you on saturday .\npatrycja\n- - - - - original message - - - - -\nfrom : vkaminski @ aol . com [ mailto : vkaminski @ aol . com ]\nsent : tuesday , march 14 , 2000 5 : 26 pm\nto : patrycja . dalecka @ destia . com\nsubject : re : hello\nhello ,\nstill in new york . leaving tomorrow night for houston . see you on saturday .\ni shall send you more detailed directions on friday .\ntake care .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.189+0000", "entityId": 7096, "properties": {"text": "Subject: ne gov . johanns mtg\nvince , fyi on nebraska , this note i recently sent to maureen .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rob wilson / et & s / enron on 03 / 16 / 2000 02 : 31\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : rob wilson 03 / 07 / 2000 03 : 19 pm\nto : maureen raymond / hou / ect @ ect\ncc : beth jensen / npng / enron @ enron , mike mcgowan / et & s / enron @ enron , dee\nsvatos / npng / enron @ enron , julie mccoy / et & s / enron @ enron , virginia\no ' neill / et & s / enron @ enron\nsubject : ne gov . johanns mtg\nmaureen ,\nthe energy ceo roundtable hosted by gov . johanns has been scheduled for\napril 20 th 10 a . m . - 2 p . m . does this date work for you ? as we have\ndiscussed , your presentation would provide the governor and his guests with a\nnational / global perspective on pricing trends for natural gas , electricity\nand oil and their impact on agricultural production costs . we may also\ninclude a hedging presentation , but have not committed to do so yet .\nyour presentation would be scheduled at the start of the meeting , w / an\nanticipated length of twenty minutes . a university of ne ag economist will\nprovide a state perspective for the group . following the conclusion of both\npresentations time would be allotted for questions . we expect approximately\n20 people to attend the roundtable .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.194+0000", "entityId": 7097, "properties": {"text": "Subject: re : bei enron\ngordian kemen on 03 / 15 / 2000 09 : 13 : 47 am\nto : jens . gobel @ enron . com\ncc :\nsubject : career opportunities @ enron\nhi vince ,\nfollowing up to our chat on the phone .\ngordian kemen will be arriving in austin on the 16 th . he will be staying in\naustin for 2 weeks . he would very much appreciate to have the opportunity to\nhave a talk with you to find out if there is a place for him at enron . you\ncan reach him under ( 512 ) 301 - 9819 ( his parents in law ' s phone number ) .\nthanks a lot for you help and attention ,\njens\n- gordianresume . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.199+0000", "entityId": 7098, "properties": {"text": "Subject: re : conference call on friday , march 17 th\nshirley ,\n11 : 00 am ca - time is fine ( 1 : 00 pm tx - time ) .\ni ' ll be at 650 725 - 5525 .\nmy cell phone number is 650 796 - 8163 .\nplease call me there if plans change .\nthanks ,\nnick\nshirley . crenshaw @ enron . com wrote :\n>\n> hello nick :\n>\n> i agree e - mail is much easier .\n>\n> there is a two - hour time difference between calif and texas , i . e . , 1 : 00 pm\n> texas time - 11 : 00 am calif time .\n>\n> would tomorrow at 11 : 00 am calif time be ok with you ( 1 : 00 pm texas ) ?\n> this time is fine for vince , tom gros and stinson gibner .\n>\n> can they call you and if so , what number ?\n>\n> please let me know .\n>\n> thanks !\n>\n> shirley\n> 713 - 853 - 5290\n>\n> nick bambos on 03 / 16 / 2000 12 : 28 : 58 pm\n>\n> to : shirley . crenshaw @ enron . com\n> cc : bambos @ stanford . stanford . edu\n> subject : re : visit to enron\n>\n> shirley ,\n>\n> it ' s easier to communcate by e - mail , since i am moving from\n> meeting to meeting ( but i have the laptop always with me ) .\n>\n> please give me a phone number that i could call tomorrow .\n> what is the time difference between california and your\n> location ? i think it ' s 2 hours ( ca - > tx ) - is that right ?\n>\n> i can do the conference call any time from 9 - 11 ca time .\n> would that be ok on your side ?\n>\n> thanks ,\n>\n> nick\n>\n> vince . j . kaminski @ enron . com wrote :\n> >\n> > nick ,\n> >\n> > we can close the loop on our commitment to support the research projects\n> > before your visit to enron .\n> >\n> > my assistant , shirley crenshaw , will call you to set up a conference\n> call\n> > with me , stinson gibner ,\n> > and tom gros from enron broadband services to discuss all the isssues .\n> > friday this week would work for\n> > both tom and me . i think we need about 15 minutes .\n> >\n> > vince\n> >\n> > p . s . shirley , nick ' s phone number is 650 796 8163 ( cell ) , 650 - 725 - 5525\n> > ( office ) .\n> >\n> > nick bambos on 03 / 12 / 2000 05 : 32 : 35 pm\n> >\n> > to : vince . j . kaminski @ enron . com , bambos @ stanford . stanford . edu\n> > cc :\n> > subject : visit to enron\n> >\n> > hello vince ,\n> >\n> > it was nice seeing you at stanford and many thanks for the lunch\n> > we had together . i really enjoyed our discussions , both at the\n> > technical level and otherwise .\n> >\n> > i promised to send you an e - mail regarding possible dates for\n> > a visit to enron . i delayed it for a week till my schedule was\n> > clearer . let ' s see if we can get a match with your schedule -\n> > mine is rather terrible :\n> >\n> > friday , 21 st of april looks good . but april 23 rd is easter\n> > sunday , so that may make it difficult for some people at enron\n> > to be around . let me know if that is the case . i am willing to\n> > visit then , because the week after that i am scheduled to be in\n> > japan and in the previous weeks i am all committed on fridays .\n> >\n> > friday , 19 th of may is the next possibility , but this probably\n> > is too far out . the main problem is that i am operating within\n> > a window of opportunity for attracting top students for this\n> > research . this window closes by the end of april , and it would be\n> > important for the student support funds to be in place then , so\n> > that i can make hard commitments to students and attract top\n> > talent . i am already reviewing files of students who have\n> > approached me for phd advising , and i am in a mode of doing \" soft\n> > commitments to star - level students \" to get this research and its\n> > potential on their radar screen . top students are highly sought\n> > after by advisors and i want to be an early player in this\n> > competition .\n> >\n> > does my visit to enron have to happen before we can set up the\n> > project and student support at stanford ? if so , doing it before the\n> > end of april is important for getting top people . if the visit can\n> > happen after we get the ball rolling , then we can schedule it in may .\n> > i assume there will be multiple visits both ways when the project gets\n> > going . please let me know what you think .\n> >\n> > best regards ,\n> >\n> > nick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.204+0000", "entityId": 7099, "properties": {"text": "Subject: conference call on friday , march 17 th\nhello nick :\ni agree e - mail is much easier .\nthere is a two - hour time difference between calif and texas , i . e . , 1 : 00 pm\ntexas time - 11 : 00 am calif time .\nwould tomorrow at 11 : 00 am calif time be ok with you ( 1 : 00 pm texas ) ?\nthis time is fine for vince , tom gros and stinson gibner .\ncan they call you and if so , what number ?\nplease let me know .\nthanks !\nshirley\n713 - 853 - 5290\nnick bambos on 03 / 16 / 2000 12 : 28 : 58 pm\nto : shirley . crenshaw @ enron . com\ncc : bambos @ stanford . stanford . edu\nsubject : re : visit to enron\nshirley ,\nit ' s easier to communcate by e - mail , since i am moving from\nmeeting to meeting ( but i have the laptop always with me ) .\nplease give me a phone number that i could call tomorrow .\nwhat is the time difference between california and your\nlocation ? i think it ' s 2 hours ( ca - > tx ) - is that right ?\ni can do the conference call any time from 9 - 11 ca time .\nwould that be ok on your side ?\nthanks ,\nnick\nvince . j . kaminski @ enron . com wrote :\n>\n> nick ,\n>\n> we can close the loop on our commitment to support the research projects\n> before your visit to enron .\n>\n> my assistant , shirley crenshaw , will call you to set up a conference call\n> with me , stinson gibner ,\n> and tom gros from enron broadband services to discuss all the isssues .\n> friday this week would work for\n> both tom and me . i think we need about 15 minutes .\n>\n> vince\n>\n> p . s . shirley , nick ' s phone number is 650 796 8163 ( cell ) , 650 - 725 - 5525\n> ( office ) .\n>\n> nick bambos on 03 / 12 / 2000 05 : 32 : 35 pm\n>\n> to : vince . j . kaminski @ enron . com , bambos @ stanford . stanford . edu\n> cc :\n> subject : visit to enron\n>\n> hello vince ,\n>\n> it was nice seeing you at stanford and many thanks for the lunch\n> we had together . i really enjoyed our discussions , both at the\n> technical level and otherwise .\n>\n> i promised to send you an e - mail regarding possible dates for\n> a visit to enron . i delayed it for a week till my schedule was\n> clearer . let ' s see if we can get a match with your schedule -\n> mine is rather terrible :\n>\n> friday , 21 st of april looks good . but april 23 rd is easter\n> sunday , so that may make it difficult for some people at enron\n> to be around . let me know if that is the case . i am willing to\n> visit then , because the week after that i am scheduled to be in\n> japan and in the previous weeks i am all committed on fridays .\n>\n> friday , 19 th of may is the next possibility , but this probably\n> is too far out . the main problem is that i am operating within\n> a window of opportunity for attracting top students for this\n> research . this window closes by the end of april , and it would be\n> important for the student support funds to be in place then , so\n> that i can make hard commitments to students and attract top\n> talent . i am already reviewing files of students who have\n> approached me for phd advising , and i am in a mode of doing \" soft\n> commitments to star - level students \" to get this research and its\n> potential on their radar screen . top students are highly sought\n> after by advisors and i want to be an early player in this\n> competition .\n>\n> does my visit to enron have to happen before we can set up the\n> project and student support at stanford ? if so , doing it before the\n> end of april is important for getting top people . if the visit can\n> happen after we get the ball rolling , then we can schedule it in may .\n> i assume there will be multiple visits both ways when the project gets\n> going . please let me know what you think .\n>\n> best regards ,\n>\n> nick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.209+0000", "entityId": 7100, "properties": {"text": "Subject: re : current address for brad romine\nvince :\ni have left brad two messages at this cell phone # - he has not responded .\nany suggestions ?\nvince j kaminski\n03 / 16 / 2000 08 : 58 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : current address for brad romine\nshirley ,\ni have his cell phone : 650 814 9966 .\nvince\nshirley crenshaw\n03 / 13 / 2000 02 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : current address for brad romine\nvince :\ndo you have a current address for brad ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 13 / 2000\n02 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarol coats\n03 / 13 / 2000 01 : 59 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : current address for brad romine\nshirley , is there any possibility that you might have an updated current\naddress for brad ? if not , would vince know ?\nthanks much ,\ncarol", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.214+0000", "entityId": 7101, "properties": {"text": "Subject: oracle nt client software upgrade - manual upgrade steps\nthis weekend , the enron global information technologies department will be\ndistributing a new version of the oracle 8 i client . due to the mobile\nenvironment of our user base , not all machines will receive the automatic\nupdate . if you are a user of an oracle based application and your machine is\nnot available to the network this weekend , you can manually upgrade your\nmachine via the following steps :\n1 ) click on start - programs - utilities\n2 ) then click on \" install oracle 8 i client \" .\nif you are a user of microsoft excel spreadsheets or microsoft access\ndatabases that retrieve information from our oracle databases , you can\nmanually convert your oracle odbc connections to the proper drivers via the\nfollowing steps :\n1 ) click on start - programs - utilities\n2 ) then click on \" update odbc data source names to oracle 8 i \" .\nif you do not see these icons , there is another icon under start - programs -\nutilities called \" update start menu \" that will re - populate your start menu .\nthank you for your co - operation -\nscott williamson\ndirector , database infrastructure\nenron global technology", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.220+0000", "entityId": 7102, "properties": {"text": "Subject: re : high - end desktop computing ?\nshirley ,\nyes , it will be a swap of one machine for another .\nvince\nshirley crenshaw\n03 / 17 / 2000 12 : 17 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : high - end desktop computing ?\nvince :\nis this ok to order ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 17 / 2000\n12 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n03 / 17 / 2000 09 : 34 am\nto : mark davidson / corp / enron @ enron , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : high - end desktop computing ?\nmark -\nshirley will order an 800 mhz machine with 512 mb of ram , and a large ( 17 \" + )\nflat - screen monitor for me .\nclayton\nmark davidson\n03 / 17 / 2000 08 : 52 am\nto : clayton vernon / corp / enron @ enron\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : high - end desktop computing ?\nclayton -\nsorry it took so long to get back to you . there are a couple of things to\nkeep in mind :\n- enron it supports enron equipment .\n- all equipment must be purchased through \" enron it purchasing \"\nour current high end desktop is a 800 mhz pentium iii machine with 128 m of\nram . you can bump up the ram to whatever you feel is appropriate . when the lghz processors come out ( in the very near future ) that will become our\nstandard .\nwhat we want to avoid is getting equipment that we do not have a image for .\nthe \" image \" is the complete package of software that we put on a machine when\nit is deployed . if you go out and buy a machine that we do not have a image\nfor , we can ' t support it for a multitude of reasons .\nhopefully this answered your questions / concerns .\nif not , please call me so that we can discuss this further .\nthanks\nmark davidson\nx 39038\nclayton vernon\n03 / 14 / 2000 03 : 39 pm\nto : mark davidson / corp / enron @ enron\ncc :\nsubject : high - end desktop computing ?\nmark -\ni have developed a model for enron that requires ultra - high - end pc\nperformance ( it does many calculations in excel ) , and my boss has authorized\nme to buy whatever pc i need . i ' m looking at the compaq 850 , but richard ( our\nfloor rep ) says no pc ' s over the 600 series will be supported by it . i need\nto resolve this issue ; we are sophisticated buyers , we know the type of\nmachine we want , and we have the money to pay for it .\nsincerely ,\nclayton vernon\nmanager , research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.226+0000", "entityId": 7103, "properties": {"text": "Subject: d - g energy systems\nvince ,\ni just wanted to keep you informed - i have not received a contract from d - g\nenergy systems yet . they had said they would send it last weekend but it\nnever came . i sent helyette geman an e - mail yesterday asking the status but\nshe has not responded yet .\nkarla", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.231+0000", "entityId": 7104, "properties": {"text": "Subject: re : eott options\ntracy ,\nattached is a spreadsheet model which contains both black - scholes and\namerican option valuation models . these are the generally accepted methods\nfor valuation of options on equity . the \" european \" option prices assume\nthat the option holder can exercise his options only at maturity , while the\n\" american \" style options can be exercised at any time during their life .\ni have assumed in the examples that the underlying equity units have a market\nvalue of $ 13 . 00 and that the options are struck at this level . the\nvolatility input is the other main assumption . eott has been trading\nrecently with a volatility ranging between 30 % to 40 % although looking\nfurther back , the range is much wider .\nto run the model , you must be linked with the options library . i am not\nsure what lan you are connected with , but you can coordinate with zimin lu\n( x 36388 ) for help with loading the option library add - in module . on the ena\nlan it is located under o : \\ research \\ exotica \\ xll \\ exotica . xll . this is\nloaded in excel using the tools / add - ins and browse to reach the add - in\nlocation .\n- - stinson\nx 34748\np . s . i will mail you a hard - copy of a plot showing recent eott volatility\nas well . if you would like us to help you in running specific examples ,\nplease let me , vince , or zimin know .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.235+0000", "entityId": 7105, "properties": {"text": "Subject: today ' s idea\ndear mr . kaminski ,\nattached , there are 2 new samples of our daily market research : today ' s\nissue of the morning faxes fixed income today and financial markets today .\nwe also have intraday market coverage , on bloomberg : idea > go , reuters : idus ,\nand bridge / telerate .\nif the info looks useful , we ' d like to arrange a free 30 - day trial for you\nand your colleagues . for your reference , please find our price list\nattached . i look forward to your reply .\nbest regards ,\nvadim pokhlebkin\naccount manager\nvpokhlebkin @ ideaglobal . com\ntel . + 1 212 571 4332\nfax + 1 212 571 4334\nideaglobal . com\n140 broadway , 21 st floor\nnew york , ny 10005 , usa\nany views expressed in this message are those of the individual sender ,\nexcept where the sender specifically states them to be the views of\nideaglobal . com . this email , its content and any files transmitted with it\nare intended solely for the addressee ( s ) and may be legally privileged\nand / or confidential . access by any other party is unauthorized without the\nexpress written permission of the sender . if you have received this email in\nerror you may not copy or use the contents , attachments or information in\nany way . please destroy it and contact the sender via the ideaglobal . com\nswitchboard in one of the following three offices : new york + 1 212 571 4332 ;\nlondon + 44 171 430 2888 ; singapore + 65 332 0700\n- fito 317 a . pdf\n- fmto 317 n . pdf\n- onesheet . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.240+0000", "entityId": 7106, "properties": {"text": "Subject: re : presentation\ndavid ,\ni am leaving for vacation this weekend and i haven ' t received the copy of\nyour presentation yet .\nthe window during which i could make changes to my presentation is closing\nvery fast . let ' s\ndo the following : i shall keep my presentation as is ( this means that i shall\nuse the copy of my\npresentation i sent to dawn scovill and you this week ) . if there is an\noverlap between our presentations , so be it .\ndawn , please use the copy of my presentation i sent you earlier this week .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 17 / 2000\n04 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 16 / 2000 08 : 02 am\nto : \" dawn scovill \" @ enron\ncc : sobotkad @ kochind . com , vince j kaminski / hou / ect @ ect\nsubject : re : presentation\ndawn ,\ni met david sobotka from koch this morning and we talked about coordinating\nour presentations .\nthis means there will be changes intended to avoid overlaps . sorry for that .\nthe portions of my presentation\nwill survive ( those about valuation paradigms ) and i shall add a few more\npages on accounting treatment of weather derivatives\nplus more specific examples . david will cover primarily market evolution +\nplus examples of some\nstandard structures , and we shall both give more interesting examples of\nspecific deals executed by our companies .\ni shall send you an updated version of my part next week . let me know what\nthe deadline is .\nvince\n\" dawn scovill \" on 03 / 14 / 2000 07 : 53 : 47 am\nto : \" vince j kaminski \"\ncc :\nsubject : re : presentation\nthanks - - would you like me to include these in the conference book ? or do\nyou anticipate changes ?\ndawn\nfrom : dawn scovill , conference coordinator\n\" powerful new ideas 2000 \"\ndawn @ perfectmeeting . com\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto :\ncc : shirley crenshaw ; vince j kaminski\n; vince j kaminski\nsent : monday , march 13 , 2000 1 : 56 pm\nsubject : presentation\n>\n>\n> dawn ,\n>\n> i am sending you an electronic version of my presentation .\n>\n> vince kaminski\n>\n> ( see attached file : fplo 400 . ppt )\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.244+0000", "entityId": 7107, "properties": {"text": "Subject: confirmation of 3 / 20 9 a . m . meeting at kmv in san francisco\ndear mr . kaminski :\nthank you for your phone messages , confirming that you and mr . bill bradford\nwill be meeting with mr . robert rudy ( managing director - head of client\nservice ) this monday , march 20 th , from 9 a . m . - 12 p . m . we are looking\nforward to seeing you , and hopefully we ' ll even have some sunny weather for\nyou .\nattached are the directions to our office . please be sure to note that our\ndress code is business casual , so please do not feel obligated to wear a\nsuit and tie .\n>\nplease let me know if you have any questions .\nsincerely ,\nkristina j . wun\nmarketing coordinator\nkmv llc\n1620 montgomery street , suite 140\nsan francisco , california 94111\n415 - 765 - 5988 ( direct line )\n415 - 296 - 9669 ( general line )\n415 - 296 - 9458 ( fax line )\nwun @ kmv . com\n- directions to kmv . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.249+0000", "entityId": 7108, "properties": {"text": "Subject: fwd : re : optical network engineering & enron research offsite meeti\nng\nfyi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 03 / 17 / 00 09 : 10\nam - - - - -\njohn _ griebling @ palm . net\n03 / 17 / 00 06 : 29 am\nplease respond to john _ griebling\nto : scott yeager / enron communications @ enron communications , dorn @ palm . net ,\ndiane _ hetzel @ palm . net\ncc : ( bcc : ravi thuraisingham / enron communications )\nsubject : fwd : re : optical network engineering & enron research offsite meeti\nng\nscott ,\nwe are definitely going to do the network engineering / research\noff - site in breckenridge the weekend of april 21 - 22 - 23 ( fri , sat , sun ) .\nthere will be 25 - 30 people . we will plan on meeting and lodging\nfacilities in town . let us know if you want to arrange a social event\nor activity at your place for the group . my assistant , sheryl lara ,\nwill be coordinating with you . she will also be publishing agenda and\nattendee invites as soon as we finalize these next week .\n- - forwarded message - -\nhi vince , here is the official ' go ' signal from john griebling . sheryl\nand\nshirely please plan the space etc . together . please plan on about 25\nto 30\npeople .\nregards ,\nravi .\np . s . vince , john and stinson , i will send another e - mail with the\nproposed\nag", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.253+0000", "entityId": 7109, "properties": {"text": "Subject: re : argentina power & gas market modelling\nteam ,\nfor me it \u0001 % s ok . let us know the confimed date early , so we can arrange our\nclasses .\nthanks\ndiego\njulian poole\n03 / 17 / 2000 10 : 35 am\nto : michael guerriero / enron _ development @ enron _ development\ncc : vince j kaminski @ ect , grant masson @ ect , jeff\nkabel / enron _ development @ enron _ development , rodolfo\nfreyre / enron _ development @ enron _ development , diego\nhollweck / enron _ development @ enron _ development , bernardo\nandrews / enron _ development @ enron _ development , mario aguilar\nbenitez / enron _ development @ enron _ development , santiago\nsubject : re : argentina power & gas market modelling\nall ,\nlet ' s arrange a conference call next week to discuss the process .\nhow does tuesday afternoon fit everyone ' s schedule ?\njulian\nenron international\nfrom : michael guerriero 03 / 17 / 2000 03 : 49 pm\nto : vince j kaminski @ ect , grant masson @ ect , jeff\nkabel / enron _ development @ enron _ development , julian\npoole / enron _ development @ enron _ development , rodolfo\nfreyre / enron _ development @ enron _ development , diego\nhollweck / enron _ development @ enron _ development , bernardo\nandrews / enron _ development @ enron _ development , mario aguilar\nbenitez / enron _ development @ enron _ development , santiago\ncc :\nsubject : argentina power & gas market modelling\ni would like to initiate a team to address the continued improvement of the\nargentine power & gas market models . i spoke with vince this morning and we\nreviewed that history of work to date and what we will need to do from here .\na summary is as follows :\nteam :\nba members : julian poole lead\nmario benitez associate\nba associates : diego hollweck associate\nbernardo andrews associate\nsantiago porta associate\nhouston members : to be named .\ntime schedule : as soon as possible . completed before june 1 , 2000 winter in\nargentina .\nscope of work :\npower model : advance the current model from basic load forecasting to\nincorporate weather , hydrology , improved short term and long term forecasting .\nnatural gas model : build a supply and demand load forecasting model\nincorporating weather , thermal demand , pipeline flow rates , well head\nsupply , improved short term and long term forecasting .\nphase i - data request\npower\nhistoric weather : temperature - daily , hourly , min , max , average\nhumidity\nprecipitation\ncloud cover\nregionally\nforward weather : temperature - daily , hourly , min , max , average\nhumidity\nprecipitation\ncloud cover\nregionally\nhistoric hydrology : reservoir levels\nreservoir capacity\ncurrent hydrology : reservoir levels\nremote monitoring : aireal , pressure device , laser\nsnow pack : density volume and mass\npower supply : current and future capacity\ntransmission\ncapacity : current and future capacity\nnatural gas data list to be developed\nphase ii - power model development\nphase iii - natural gas model development\nwe will take advantage of the fact that the associates are in houston for the\nnext two weeks . vince is out next week but we can start with a process\ndiscussion with grant masson next week . julian please get a meeting scheduled\nas soon as possible . we should immediately start collecting data .\nthanks\nmfg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.259+0000", "entityId": 7110, "properties": {"text": "Subject: re : argentina power & gas market modelling\nokay\njulian poole\n03 / 17 / 2000 10 : 35 am\nto : michael guerriero / enron _ development @ enron _ development\ncc : vince j kaminski @ ect , grant masson @ ect , jeff\nkabel / enron _ development @ enron _ development , rodolfo\nfreyre / enron _ development @ enron _ development , diego\nhollweck / enron _ development @ enron _ development , bernardo\nandrews / enron _ development @ enron _ development , mario aguilar\nbenitez / enron _ development @ enron _ development , santiago\nsubject : re : argentina power & gas market modelling\nall ,\nlet ' s arrange a conference call next week to discuss the process .\nhow does tuesday afternoon fit everyone ' s schedule ?\njulian\nenron international\nfrom : michael guerriero 03 / 17 / 2000 03 : 49 pm\nto : vince j kaminski @ ect , grant masson @ ect , jeff\nkabel / enron _ development @ enron _ development , julian\npoole / enron _ development @ enron _ development , rodolfo\nfreyre / enron _ development @ enron _ development , diego\nhollweck / enron _ development @ enron _ development , bernardo\nandrews / enron _ development @ enron _ development , mario aguilar\nbenitez / enron _ development @ enron _ development , santiago\ncc :\nsubject : argentina power & gas market modelling\ni would like to initiate a team to address the continued improvement of the\nargentine power & gas market models . i spoke with vince this morning and we\nreviewed that history of work to date and what we will need to do from here .\na summary is as follows :\nteam :\nba members : julian poole lead\nmario benitez associate\nba associates : diego hollweck associate\nbernardo andrews associate\nsantiago porta associate\nhouston members : to be named .\ntime schedule : as soon as possible . completed before june 1 , 2000 winter in\nargentina .\nscope of work :\npower model : advance the current model from basic load forecasting to\nincorporate weather , hydrology , improved short term and long term forecasting .\nnatural gas model : build a supply and demand load forecasting model\nincorporating weather , thermal demand , pipeline flow rates , well head\nsupply , improved short term and long term forecasting .\nphase i - data request\npower\nhistoric weather : temperature - daily , hourly , min , max , average\nhumidity\nprecipitation\ncloud cover\nregionally\nforward weather : temperature - daily , hourly , min , max , average\nhumidity\nprecipitation\ncloud cover\nregionally\nhistoric hydrology : reservoir levels\nreservoir capacity\ncurrent hydrology : reservoir levels\nremote monitoring : aireal , pressure device , laser\nsnow pack : density volume and mass\npower supply : current and future capacity\ntransmission\ncapacity : current and future capacity\nnatural gas data list to be developed\nphase ii - power model development\nphase iii - natural gas model development\nwe will take advantage of the fact that the associates are in houston for the\nnext two weeks . vince is out next week but we can start with a process\ndiscussion with grant masson next week . julian please get a meeting scheduled\nas soon as possible . we should immediately start collecting data .\nthanks\nmfg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.266+0000", "entityId": 7111, "properties": {"text": "Subject: re : thomas knudsen\nsteve ,\nyes , please arrange the interview . the resume is very interesting .\ni shall be on vacation all of next week ; you can make arrangements\nfor the following week , monday through thursday . please , include\nstinson , grant and vasant .\nvince\nsteven leppard\n03 / 17 / 2000 03 : 36 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : thomas knudsen\nhi vince\ni met with thomas this morning ( i gave you his cv before , though i don ' t know\nif you had time to read it ) . he ' s extremely interested in moving to enron ,\nand accepts that our work is far less academic than his postdoc research ,\nalthough far broader than his investment banking quant experience . he\nremains interested , and emphasised he wants to stay close to the traders , but\nwants to look at new markets and products . i think we should seriously\nconsider hiring him . he is ( understandably ) reluctant to move to houston ,\nbut there ' s no doubt that there is plenty of ( unnmet ) demand for derivatives\npricing ( and thinking ) here in london .\nwould you be interested in my setting up a videoconference in the next couple\nof weeks so you have a chance to chat with him ? i ' m meeting with him again\non tuesday at an academic quant finance seminar organised by lane at king ' s\ncollege . i ' ve attached his cv for your reference .\nall the best ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.274+0000", "entityId": 7112, "properties": {"text": "Subject: thomas knudsen\nhi vince\ni met with thomas this morning ( i gave you his cv before , though i don ' t know\nif you had time to read it ) . he ' s extremely interested in moving to enron ,\nand accepts that our work is far less academic than his postdoc research ,\nalthough far broader than his investment banking quant experience . he\nremains interested , and emphasised he wants to stay close to the traders , but\nwants to look at new markets and products . i think we should seriously\nconsider hiring him . he is ( understandably ) reluctant to move to houston ,\nbut there ' s no doubt that there is plenty of ( unnmet ) demand for derivatives\npricing ( and thinking ) here in london .\nwould you be interested in my setting up a videoconference in the next couple\nof weeks so you have a chance to chat with him ? i ' m meeting with him again\non tuesday at an academic quant finance seminar organised by lane at king ' s\ncollege . i ' ve attached his cv for your reference .\nall the best ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.280+0000", "entityId": 7113, "properties": {"text": "Subject: re : fwd : happy st . patricks day\njana ,\ngreat attachment . thanks .\nsaturday , march 25 works for me . i shall call or e - mail you from california to\ntalk about the time . early afternoon would be great .\nvince\njlpnymex @ aol . com on 03 / 17 / 2000 10 : 58 : 54 am\nto : vkamins @ enron . com\ncc :\nsubject : fwd : happy st . patricks day\nvince ,\nhow about saturday , march 25 ? call or email me next week , to let me know what\ntime would be good for you . have a good trip to california and a happy st .\npatrick ' s day today !\njana\nreturn - path :\nreceived : from rly - ydol . mx . aol . com ( rly - ydol . mail . aol . com [ 172 . 18 . 150 . 1 ] ) by\nair - ydol . mail . aol . com ( v 70 . 19 ) with esmtp ; fri , 17 mar 2000 10 : 06 : 51 - 0500\nreceived : from mta 3 . rcsntx . swbell . net ( mta 3 . rcsntx . swbell . net\n[ 151 . 164 . 30 . 27 ] ) by rly - ydol . mx . aol . com ( v 70 . 19 ) with esmtp ; fri , 17 mar 2000\n10 : 06 : 26 - 0500\nreceived : from postoffice . swbell . net ( [ 207 . 193 . 12 . 192 ] ) by\nmta 3 . rcsntx . swbell . net ( sun internet mail server\nsims . 3 . 5 . 2000 . 01 . 05 . 12 . 18 . p 9 ) with esmtp id\nfor jlpnymex @ aol . com ; fri , 17 mar\n2000 09 : 04 : 52 - 0600 ( cst )\ndate : fri , 17 mar 2000 08 : 57 : 53 + 0000\nfrom : ckcrews @ swbell . net\nsubject : happy st . patricks day\nto : jana\nreply - to : ckcrews @ swbell . net\nmessage - id :\nmime - version : 1 . 0\nx - mailer : mozilla 4 . 05 [ en ] c - sbis - nc 404 ( winnt ; u )\ncontent - type : multipart / mixed ; boundary = \" - - - - - - - - - - - - eed 862 df 35 cd 73 flfo 74403 a \"\n- stpat . exe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.284+0000", "entityId": 7114, "properties": {"text": "Subject: re : resume of carla di castro\nvince ,\nwe have many associates that we have to place within business units .\nthereafter , if there are additional hiring needs , we will consider her\nresume .\nregards ,\nshannon\nvince j kaminski\n03 / 16 / 2000 05 : 32 pm\nto : shannon rodgers / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : resume of carla di castro\nshannon ,\ni realize that the program is full . if i find a group interested in her ,\nwould you consider re - inviting her ?\nvince\nshannon rodgers\n03 / 16 / 2000 01 : 52 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : resume of carla di castro\nvince ,\nthank you for forwarding the resume of carla di castro . currently , our\nsummer associate internship program is full . i have responded to carla to\ninform her of the program ' s status .\nregards ,\nshannon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.289+0000", "entityId": 7115, "properties": {"text": "Subject: storage model audit\nvince ,\nenclosed please find the storage model documentation , the c - code and\nfront - end spread sheet .\nafter your inputs and comments we can send it out .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.293+0000", "entityId": 7116, "properties": {"text": "Subject: dear ms . feldman ,\nplease find enclosed a proposal for the d - g energy\nsoftware license agreement in which enron may be\ninterested . we deliberately left blank the appendix 2\nrelated to the number of sites and workstations it\nwould cover , in order to let dr . kaminski decide what\nis best for enron .\nsincerely\n- appendices . doc\n- contract . doc\nh , lyette geman\nprofessor of finance\nuniversity paris ix dauphine and essec", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.298+0000", "entityId": 7117, "properties": {"text": "Subject: re : high - end desktop computing ?\nhi mark :\nplease order an 800 mhz machine with 512 mb of ram , and a large ( 17 \" + )\nflat - screen monitor for clayton vernon . our co . # is 0011 and our rc # is\n100038 . ( is the large screen a 17 \" or a 20 \" ? )\nif you need anything else , please let me know .\nthanks mark and have a great day !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 20 / 2000\n07 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 17 / 2000 04 : 25 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , clayton vernon / corp / enron @ enron , vasant\nshanbhogue / hou / ect @ ect\nsubject : re : high - end desktop computing ?\nshirley ,\nyes , it will be a swap of one machine for another .\nvince\nshirley crenshaw\n03 / 17 / 2000 12 : 17 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : high - end desktop computing ?\nvince :\nis this ok to order ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 17 / 2000\n12 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n03 / 17 / 2000 09 : 34 am\nto : mark davidson / corp / enron @ enron , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : high - end desktop computing ?\nmark -\nshirley will order an 800 mhz machine with 512 mb of ram , and a large ( 17 \" + )\nflat - screen monitor for me .\nclayton\nmark davidson\n03 / 17 / 2000 08 : 52 am\nto : clayton vernon / corp / enron @ enron\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : high - end desktop computing ?\nclayton -\nsorry it took so long to get back to you . there are a couple of things to\nkeep in mind :\n- enron it supports enron equipment .\n- all equipment must be purchased through \" enron it purchasing \"\nour current high end desktop is a 800 mhz pentium iii machine with 128 m of\nram . you can bump up the ram to whatever you feel is appropriate . when the lghz processors come out ( in the very near future ) that will become our\nstandard .\nwhat we want to avoid is getting equipment that we do not have a image for .\nthe \" image \" is the complete package of software that we put on a machine when\nit is deployed . if you go out and buy a machine that we do not have a image\nfor , we can ' t support it for a multitude of reasons .\nhopefully this answered your questions / concerns .\nif not , please call me so that we can discuss this further .\nthanks\nmark davidson\nx 39038\nclayton vernon\n03 / 14 / 2000 03 : 39 pm\nto : mark davidson / corp / enron @ enron\ncc :\nsubject : high - end desktop computing ?\nmark -\ni have developed a model for enron that requires ultra - high - end pc\nperformance ( it does many calculations in excel ) , and my boss has authorized\nme to buy whatever pc i need . i ' m looking at the compaq 850 , but richard ( our\nfloor rep ) says no pc ' s over the 600 series will be supported by it . i need\nto resolve this issue ; we are sophisticated buyers , we know the type of\nmachine we want , and we have the money to pay for it .\nsincerely ,\nclayton vernon\nmanager , research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.303+0000", "entityId": 7118, "properties": {"text": "Subject: re : presentation\nwill do - - thank you very much .\ndawn\nfrom : dawn scovill , event coordinator\ndesigns event consulting\ndawn @ perfectmeeting . com\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto :\ncc : ; vince j kaminski\n;\nsent : friday , march 17 , 2000 5 : 38 pm\nsubject : re : presentation\n>\n>\n> david ,\n>\n> i am leaving for vacation this weekend and i haven ' t received the copy of\nyour\n> presentation yet .\n> the window during which i could make changes to my presentation is closing\nvery\n> fast . let ' s\n> do the following : i shall keep my presentation as is ( this means that i\nshall\n> use the copy of my\n> presentation i sent to dawn scovill and you this week ) . if there is an\noverlap\n> between our presentations , so be it .\n>\n> dawn , please use the copy of my presentation i sent you earlier this week .\n>\n> vince\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 17 / 2000\n04 : 33\n> pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> vince j kaminski\n> 03 / 16 / 2000 08 : 02 am\n>\n> to : \" dawn scovill \" @ enron\n> cc : sobotkad @ kochind . com , vince j kaminski / hou / ect @ ect\n> subject : re : presentation ( document link : vince j kaminski )\n>\n> dawn ,\n>\n> i met david sobotka from koch this morning and we talked about\ncoordinating our\n> presentations .\n> this means there will be changes intended to avoid overlaps . sorry for\nthat . the\n> portions of my presentation\n> will survive ( those about valuation paradigms ) and i shall add a few more\npages\n> on accounting treatment of weather derivatives\n> plus more specific examples . david will cover primarily market evolution +\nplus\n> examples of some\n> standard structures , and we shall both give more interesting examples of\n> specific deals executed by our companies .\n>\n> i shall send you an updated version of my part next week . let me know what\nthe\n> deadline is .\n>\n> vince\n>\n>\n>\n> \" dawn scovill \" on 03 / 14 / 2000 07 : 53 : 47 am\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : presentation\n>\n>\n> thanks - - would you like me to include these in the conference book ? or do\n> you anticipate changes ?\n>\n> dawn\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> from : dawn scovill , conference coordinator\n> \" powerful new ideas 2000 \"\n> dawn @ perfectmeeting . com\n>\n>\n> - - - - - original message - - - - -\n> from : vince j kaminski\n> to :\n> cc : shirley crenshaw ; vince j kaminski\n> ; vince j kaminski\n> sent : monday , march 13 , 2000 1 : 56 pm\n> subject : presentation\n>\n>\n> >\n> >\n> > dawn ,\n> >\n> > i am sending you an electronic version of my presentation .\n> >\n> > vince kaminski\n> >\n> > ( see attached file : fplo 400 . ppt )\n> >\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.308+0000", "entityId": 7119, "properties": {"text": "Subject: re : presentation\nif you would like a hard copy of the presentation to be included in the\nconference book , i ' ll need it before friday , march 24 . thank you both for\nall your time\nsent : thursday , march 16 , 2000 9 : 02 am\nsubject : re : presentation\n>\n> dawn ,\n>\n> i met david sobotka from koch this morning and we talked about\n> coordinating our presentations .\n> this means there will be changes intended to avoid overlaps . sorry for\n> that . the portions of my presentation\n> will survive ( those about valuation paradigms ) and i shall add a few more\n> pages on accounting treatment of weather derivatives\n> plus more specific examples . david will cover primarily market evolution +\n> plus examples of some\n> standard structures , and we shall both give more interesting examples of\n> specific deals executed by our companies .\n>\n> i shall send you an updated version of my part next week . let me know what\n> the deadline is .\n>\n> vince\n>\n>\n>\n>\n> \" dawn scovill \" on 03 / 14 / 2000 07 : 53 : 47 am\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : presentation\n>\n>\n> thanks - - would you like me to include these in the conference book ? or do\n> you anticipate changes ?\n>\n> dawn\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> from : dawn scovill , conference coordinator\n> \" powerful new ideas 2000 \"\n> dawn @ perfectmeeting . com\n>\n>\n> - - - - - original message - - - - -\n> from : vince j kaminski\n> to :\n> cc : shirley crenshaw ; vince j kaminski\n> ; vince j kaminski\n> sent : monday , march 13 , 2000 1 : 56 pm\n> subject : presentation\n>\n>\n> >\n> >\n> > dawn ,\n> >\n> > i am sending you an electronic version of my presentation .\n> >\n> > vince kaminski\n> >\n> > ( see attached file : fplo 400 . ppt )\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.312+0000", "entityId": 7120, "properties": {"text": "Subject: re : many\nhello helyette ,\ni am in california this week , vacationing with my family . it is a spring\nbreak week at stanford and we shall spend a few days in calistoga , north of\nnapa valley , a place famous for mineral water and geysers .\ni shall talk to karla when i come back to houston about the speeding up the\nprocess on our side . our lawyers typically sit on a contract for a few weeks\nunless we put a lot of pressure on them . american lawyers tend to be very\nmeticulous : this is why the city of los angeles alone has more lawyers than\nentire japan . i think about two sites for your software : houston and europe\n( most likely london ) .\ni shall be honored to chair a session during the bachelier world congress at\ncollege de france . please , let me know which session you have in mind for me .\nthe repeat the francfort presentation in paris on october 4 & 5 is fine with\nme . i think the frankfurt presentation went quite well and it will be nice to\nwork wih you and alex again .\nregards\nvince\np . s . i shall keep my office cell phone on all the time , in case you need to\ncall me : 713 410 5396", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.316+0000", "entityId": 7121, "properties": {"text": "Subject: re : argentina power & gas market modelling\nokay\njulian poole\n17 / 03 / 2000 10 : 35 am\nto : michael guerriero / enron _ development @ enron _ development\ncc : vince j kaminski @ ect , grant masson @ ect , jeff\nkabel / enron _ development @ enron _ development , rodolfo\nfreyre / enron _ development @ enron _ development , diego\nhollweck / enron _ development @ enron _ development , bernardo\nandrews / enron _ development @ enron _ development , mario aguilar\nbenitez / enron _ development @ enron _ development , santiago\nsubject : re : argentina power & gas market modelling\nall ,\nlet ' s arrange a conference call next week to discuss the process .\nhow does tuesday afternoon fit everyone ' s schedule ?\njulian\nenron international\nfrom : michael guerriero 03 / 17 / 2000 03 : 49 pm\nto : vince j kaminski @ ect , grant masson @ ect , jeff\nkabel / enron _ development @ enron _ development , julian\npoole / enron _ development @ enron _ development , rodolfo\nfreyre / enron _ development @ enron _ development , diego\nhollweck / enron _ development @ enron _ development , bernardo\nandrews / enron _ development @ enron _ development , mario aguilar\nbenitez / enron _ development @ enron _ development , santiago\ncc :\nsubject : argentina power & gas market modelling\ni would like to initiate a team to address the continued improvement of the\nargentine power & gas market models . i spoke with vince this morning and we\nreviewed that history of work to date and what we will need to do from here .\na summary is as follows :\nteam :\nba members : julian poole lead\nmario benitez associate\nba associates : diego hollweck associate\nbernardo andrews associate\nsantiago porta associate\nhouston members : to be named .\ntime schedule : as soon as possible . completed before june 1 , 2000 winter in\nargentina .\nscope of work :\npower model : advance the current model from basic load forecasting to\nincorporate weather , hydrology , improved short term and long term forecasting .\nnatural gas model : build a supply and demand load forecasting model\nincorporating weather , thermal demand , pipeline flow rates , well head\nsupply , improved short term and long term forecasting .\nphase i - data request\npower\nhistoric weather : temperature - daily , hourly , min , max , average\nhumidity\nprecipitation\ncloud cover\nregionally\nforward weather : temperature - daily , hourly , min , max , average\nhumidity\nprecipitation\ncloud cover\nregionally\nhistoric hydrology : reservoir levels\nreservoir capacity\ncurrent hydrology : reservoir levels\nremote monitoring : aireal , pressure device , laser\nsnow pack : density volume and mass\npower supply : current and future capacity\ntransmission\ncapacity : current and future capacity\nnatural gas data list to be developed\nphase ii - power model development\nphase iii - natural gas model development\nwe will take advantage of the fact that the associates are in houston for the\nnext two weeks . vince is out next week but we can start with a process\ndiscussion with grant masson next week . julian please get a meeting scheduled\nas soon as possible . we should immediately start collecting data .\nthanks\nmfg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.321+0000", "entityId": 7122, "properties": {"text": "Subject: re : time keeping\nhi brad :\ni am it for our group ! however , it might be a good idea to train sam smith\nalso .\nplease let us know .\nthanks !\nshirley\n3 - 5290\nfrom : brad mcsherry on 03 / 20 / 2000 05 : 38 pm\nto : lydia cannon / hou / ect @ ect , rosalinda resendez / hou / ect @ ect , donna\nbaker / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : time keeping\nlydia / rosie / donna / shirley ,\nwe are looking to implement sap hr by 7 / 1 / 00 . there is a time keeping module\nin the program . please send me a list of the time keepers for your groups .\ndo not forget to send your own name if you keep time . time keepers will be\ncontacted in the near future for training on the new system .\nthank you for your help ,\nbrad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.326+0000", "entityId": 7123, "properties": {"text": "Subject: re : move research employee from one location to another on the 19 th\nfloor\nshirley ,\nyour request has been scheduled for march 23 rd .\nerica : )\nshirley crenshaw\n03 / 17 / 2000 12 : 16 pm\nto : move - team / epsc / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , william\nsmith / corp / enron @ enron , kevin g moore / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , clayton vernon / corp / enron @ enron\nsubject : move research employee from one location to another on the 19 th floor\nhello all :\nattached is a churn request to move clayton vernon from ebl 943 to ebl 952 .\nhe will need 3 boxes and labels delivered to his ebl 943 location , a few\ndays before you schedule his move .\nif you need any other information , please let me know .\nthanks and have a great weekend !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.330+0000", "entityId": 7124, "properties": {"text": "Subject: risk 2000 , 12 - 15 june , boston - speaker confirmation\nthank you for agreeing to speak at risk magazine ' s annual us congress , risk\n2000 , taking place in boston between 12 - 15 june 2000 .\n?\ncould you please return this email with your full postal address and contact\ndetails so we can send you hard copies of the brochure , inform you of\ncongress and hotel locations and let you know when we will need a copy of\nyour presentation . if you are part of a panel discussion , myself or the\npanel moderator will contact you shortly .\n?\nin the meantime the full brochure can be viewed and / or downloaded from the\nfollowing web address -\n?\nwww . riskpublications . com / risk 2000 us\n?\nif you have any further questions , please don ' t hesitate to contact me .\n?\nbest regards ,\n?\noliver bennett\nsenior conference producer\n?\n?\ndirect : + 44 ( 0 ) 20 7484 9880\n?\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 ( 0 ) 20 7484 9800 ? email : oliver @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.335+0000", "entityId": 7125, "properties": {"text": "Subject: ppi index short - term models\nhi martina i believe that the\nforecasts are accurately reflecting this . please see graphs below :\nboth models really need our rpi curve to be linked ( at the moment i have just\ncopied the 2 . 3 % number forward ) . because the auto - regressive error term is\nnot very important , we can run the models forward with reasonable\nconfidence . as i mentioned , i don ' t think we can really run this model more\nthan 12 months , in fact , i think we should run for 9 - 12 months and blend the\nnext 3 - 4 months out with the long - term model .\nhope i can fix the long - term ones now with some new insight !\nregards ,\nanjam\nx 35383\npllu : dzcv :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.339+0000", "entityId": 7126, "properties": {"text": "Subject: uk inflation and storage model\nhi zimin ,\ninflation :\ni am also spending a lot of time looking at short - term auto - regressive models\nfor ppi and long - term , more fundamentally - based models . this work is\nimportant because we have potentially a large positive p & l that may be\nunlocked by moving to our new indicative uk ppi curves . john sherriff and\ntrena are keen that any models i produce are vetted / approved in houston , so i\nwill forward to stinson or yourself initially for review once ready and\ndocumented .\nstorage :\nthanks for the current storage model . due to the complexity of the\nmodelling issues involved , i would strongly support a visit by you to help me\nmeet the needs of the london customers in this matter , and am happy to act as\nthe anchor for information flow in the mean time .\nregards ,\nanjam\nx 35383\nzimin lu\n21 / 03 / 2000 19 : 31\nto : anjam ahmad / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : us inflation and storage model\nanjam ,\nthanks a lot . after getting that book i will redo the us inflation model .\nour exposure\nto cpi inflation risk is huge ( think about how many contracts signed by ees ) ,\nso the\nus model is very important .\nthe storage model is going through aduit by prof . d . duffie . we are adding\nfeatures\nto it . i can send you the current version . maybe it is worthwhile for me to\ngo to london\nto discuss with the users about the valuation .\nzimin\nanjam ahmad\n03 / 21 / 2000 11 : 31 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : book\nhi zimin ,\nyou ' re book has arrived and i posted it today . also , wanted to ask what you\ncould give me and natasha regarding the new storage model ?\nthanks ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.344+0000", "entityId": 7127, "properties": {"text": "Subject: spanish power option pricing\nhi paul / cassim ,\nfurther to our meeting yesterday regarding power options , that we may use to\ncapture short - term volatility from regulatory caps being adhered to or\nbroken , i have attached a spreadsheet that should assist in nailing down the\nvalue .\narbitrary distribution\nthe first issue to address is converting the price scenarios for the average\nof the q 2 - q 3 swap into a volatility equivalent . this is achieved by fitting\na normal distribution that matches the one specified for mean and standard\ndeviation . the graph below illustrates the method for the numbers discussed\nyesterday . in this example , the annualised volatility is coming up as\napproximately 23 % .\npricing & implied volatility\nthe pricing is as for a regular asian option . the payoff depends on the\naverage of the daily prices for spanish power for q 2 and q 3 . the valuation\nusing 23 % volatility is showing about 15 . 3 pta per kwh .\ni will schedule a meeting to allow us to take this forward .\nregards ,\nanjam\nx 35383\nspreadsheet :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.348+0000", "entityId": 7128, "properties": {"text": "Subject: new information about transfers\nhi , vince ,\ni had a chance to talk to my direct boss tom moore ( director ) about the\npossibility of transfers to research group .\nhe had a positive reaction , he thinks me is a good fit for the research .\nhope this is useful information .\nregards\nningya\n( 3 - 5248 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.353+0000", "entityId": 7129, "properties": {"text": "Subject: miscellaneous items\ngood morning tom :\nplease furnish the following information to me for the research directory :\nname : tom halliburton\ntitle :\nlocation : ebl 957\nphone # : 5 - 8539\nhome address :\nhome telephone :\nwife ' s name :\nyour birthday :\nalso for your information , there will be a research group staff meeting\nevery thursday from 11 : 30 am to 1 : 00 pm in eb 30 cl . lunch will be\nprovided .\nplease let me know what kind of sandwich or salad you would like and\nwhat you would like to drink .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.357+0000", "entityId": 7130, "properties": {"text": "Subject: re : time keeping\nplease arrange for time - keeping training for kevin moore .\nthanks ,\nmike roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.362+0000", "entityId": 7131, "properties": {"text": "Subject: re : time keeping\nwhat about me !\ni may need this in the future . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 03 / 21 / 2000 08 : 12\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n03 / 21 / 2000 07 : 27 am\nto : brad mcsherry / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , william smith / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect\nsubject : re : time keeping\nhi brad :\ni am it for our group ! however , it might be a good idea to train sam smith\nalso .\nplease let us know .\nthanks !\nshirley\n3 - 5290\nfrom : brad mcsherry on 03 / 20 / 2000 05 : 38 pm\nto : lydia cannon / hou / ect @ ect , rosalinda resendez / hou / ect @ ect , donna\nbaker / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : time keeping\nlydia / rosie / donna / shirley ,\nwe are looking to implement sap hr by 7 / 1 / 00 . there is a time keeping module\nin the program . please send me a list of the time keepers for your groups .\ndo not forget to send your own name if you keep time . time keepers will be\ncontacted in the near future for training on the new system .\nthank you for your help ,\nbrad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.367+0000", "entityId": 7132, "properties": {"text": "Subject: issue 4\n- http : / / www . financewise . com / risk\nriskbrief issue 4\nfrom financewise : the only dedicated financial search engine\n22 march 2000\ndear riskbrief subscribers\nthe fourth edition is here , and this month ' s theme is weather .\nweather derivatives is increasingly a hot topic on the web at the\nmoment . four sites have been launched in the last three months ,\nincluding tradeweather . com , weather - risk . com and . com .\nalong with the weather trading site from liffe ( i - wex . com ) ,\nlaunched in january , and the introduction last september of\nweather futures on the chicago mercantile exchange ( cme ) , there is\nsomething of a rush on .\nto provide you with an online resource to weather risk , we have\nan introductory guide , two site reviews , 22 articles and an\nexclusive book offer .\nhttp : / / www . tradeweather . com ( see site reviews )\nhttp : / / www . weather - risk . com ( see site reviews )\nhttp : / / www . . com\nhttp : / / www . i - wex . com\nhttp : / / www . cme . com / news / weather 921 . html\nhow fast will the weather derivatives market grow ? will there be\nenough liquidity ? let us know what you think .\nin the meantime , please enjoy the rest of this month ' s issue ,\nwith 14 articles on currency trading , e - trading , and news of conferences ,\njobs and more .\nregards\nrob minto\nproducer , financewise\nrminto @ risk . co . uk\nbefore you forget , why not forward this e - mail to a\ncolleague / friend now , who might find our coverage of\nrisk management on the web a useful resource ?\ncontents :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n> > weather risk guide\n> > site reviews\n> > articles and features : weather risk , e - trading , currency trading\n> > new # 1 site\n> > book special offer : insurance and weather risk\n> > conferences & training\n> > new jobs\nplease view the newsletter online and get the full story :\nthis month ' s sponsor :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncredit :\nthe new forum for international credit markets .\nwith its mix of news , features , data and technical articles ,\ncredit magazine is a vital source of information for all investors ,\nissuers and market professionals operating in the global\ncredit markets .\nsubscribe before april to claim a 40 % discount\nhttp : / / www . creditmag . com\nweather risk guides :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nintroduction to weather derivatives from the cme . a market history ,\nplus a discussion of pricing and analyzing weather contracts .\nan overview article from james roemer of the weatherrisk institute .\nbob dischel ' s site on weather derivatives , with articles , links and\nseminar details .\nhttp : / / www . wxpx . com\nfor further links to weather derivatives online see the html version :\nsite reviews :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nwho is doing what on the web ? a double helping of site reviews this month :\n- new bond trading site from jp morgan bear stearns , chase\nmanhattan and moneyline\n- weather derivatives trading & info : enron ' s weather - risk . com\n& tradeweather . com\n- foreign - exchange trading from financial market solutions\n- the french tr , sor site covering sovereign bond issues\n- algorithmic ' s risk management methodology - ' mark - to - future '\n- rent applications and analytical tools from cygnifi , a new web\noffering from jp morgan , bridge & sybase\n- revamped inventure . com site - provider of data & analytics\n- keep up to date on new - issue markets with s & p ' s new site\narticles & features :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n14 new articles and features have been added to the financewise\nrisk management special report . the new supplements are :\n- electronic trading\n- currency risk\ncontinuing our theme of weather , we also have two editions of\nweather risk . these 22 articles include glossaries and technical\narticles on data and forecasting , options pricing , emissions\ntrading and weather - linked bonds .\n# 1 site\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nthe new # 1 site on financewise is the picture of risk site\nfrom risk metrics , displacing finmath . com ( triple # 1 award winner )\nas the most visited site in february . click below to view the\nlatest rankings\nhttp : / / www . financewise . com / rankings\nbook special offer : exclusive\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nand completing our weather coverage for this month , there is a\n10 % discount available exclusive to riskbrief subscribers on :\n\" insurance and weather derivatives\nfrom exotic options to exotic underlyings \"\nfor further details and information see :\nthere are other special offers available on the risk books site :\nhttp : / / www . riskbooks . com\nconferences & training\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nfull details are now online for risk 2000 . risk ' s 6 th annual us\nderivatives and risk management congress will be held in boston\non june 13 & 14 . keynote speakers : myron scholes and jeffrey skilling .\njobs\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nthis month , the search term \" jobs \" has moved up to 5 th position in the\nfinancewise rankings .\nhttp : / / www . financewise . com / rankings\nif you were one of those searching for \" jobs \" , don ' t forget our own\njob search section . it currently holds 46 treasury and risk management , a\nrecord 29 additions since the last brief .\nvisit the job search and select the job category\n\" finance : treasury and risk mgmt \" .\nhttp : / / www . financewise . com / jobs\n* * *\nalso :\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nplease e - mail us if there is anything you would like to see\nin this newsletter , or any questions that you would like\naddressed . riskbrief now reaches over 1200 subscribers\nworldwide . so if you have something interesting to say , or\nan opinion to share with all your fellow subscribers send\nyour comments to :\nrminto @ risk . co . uk\np . s . also suggest sites for us to review / index\nif this has been forwarded to you , please subscribe to\nreceive your own copy at :\nare you registered with financewise ? if not , please click :\nhttp : / / www . financewise . com\nyou will then have the full functionality of the site .\nif you have any problems with this newsletter , please\ncontact me :\nrminto @ risk . co . uk\nto unsubscribe , write to financewise - unsubscribe @ listbot . com\nto unsubscribe , write to financewise - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.372+0000", "entityId": 7133, "properties": {"text": "Subject: class speaker\nvincent ,\nwe met last year when you were visiting the university , and talking\nprimarily with our finance faculty . as you may have heard , i tried to call\nto talk with you about the possiblity of a guest speaker in my class on real\noptions from your group at enron . naturally , i would be delighted if you\ncould speak , but i could also appreciate the possibility that someone else\nmight also be a good choice .\ni have attached a copy of the course syllabus for your information .\nthis is the first time this course has been offered at ut , and i was\nmotivated to do so because of the \" buzz \" regarding the topic in industry . i\nhave about 30 mba students in the class , many of whom were in the energy\nfinance classes offered by sheridan titman and ehud ronn ( both of whom have\nbeen very supportive of the development of this class ) . my own background\nis decision analysis rather than finance , so i tend to approach the topic\nwith that perspective . as you can see , i have covered both traditional\ndecison analysis topics and a review of the options literature . at the\npresent time , i don ' t think there is a really complete textbook that fits\nthe course at the mba level , so i ' ve tried to focus on how to do things in\npractice , and have provided software ( dpl , spreadsheets , @ risk , etc ) as\ntools for the students to use .\nthe course is scheduled on thursday afternoons from 3 : 30 to 6 : 30 ,\nwhich is a time that i chose to make possible the participation of some\nexecutive mba students from houston ( 3 are participating ) . i look forward\nto hearing from you about the possiblity of a speaker , or any other\nsuggestions that you might have .\njames s . dyer\nfondren centennial chair in business\ndepartment of management science and information systems\ncba 5 . 202\nthe university of texas at austin\naustin , texas 78712 - 1175\nemail : j . dyer @ bus . utexas . edu\ntelephone : 512 - 471 - 5278\nfax : 512 - 471 - 0587", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.376+0000", "entityId": 7134, "properties": {"text": "Subject: re : enron offsite - the great divide - april 27 , 28 , 29 and 30 th\nhello all :\nfyi !\nhow is the headcount coming ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 23 / 2000\n09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" steve collins \" on 03 / 23 / 2000 09 : 41 : 19 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : enron offsite - the great divide - april 27 , 28 , 29 and 30 th\nhello !\nthe 29 th will be fine - - if we can definitely get everything in by then . i\njust worry a little when we start getting less than a month out . we need to\nmake sure that our conference services office has enough time to detail all\nof your functions properly so that everything flows smoothly .\nalso please know that the availability of those $ 274 airfares is also not\nguaranteed until booked ( you know how those airlines are about changing fares\naround ) . we need to be able to book a specific class of service to get that\nfare , so once those are gone the fare cannot be guaranteed . do you want me\nto get started with the air contract ?\nplease keep me posted ! thanks !\nsteve\nsteve collins\nnational sales manager\nthe village at breckenridge / great divide lodge\n( 800 ) 332 - 0424 or ( 970 ) 453 - 3156 direct\nscollins @ vailresorts . com\n> > > \" shirley crenshaw \" 03 / 23 / 00 08 : 12 am > > >\ngood morning steve :\ni received your voice mail and the flight information sounds great !\ni need to update you as to the status of everything at present .\nthe contract is fine , however , i am not authorized to sign it , so if it is\nallright , we are putting \" john griebling ' s \" name in my place . he will\nsign\nthe contract and we will put the charges on his credit card .\nhowever , john is out of town and will not be back in until tomorrow . this\nmay cut it a little close as to getting everything back to you by monday ,\nthe 27 th . is there a possibility of getting this deadline pushed back a\ncouple of days ? we are also having a problem getting a commitment from\nthe\ntop management people - they are all out of town at present . this does not\ninvolve very many - only 3 or 4 people , but we need to get a definate\ncount\nso that we won ' t be short on rooms . if everyone can come , it looks like\nwe\nmight need at least 39 rooms .\nwe should be able to have everthything to you by the 29 th - is this a\nproblem ?\nplease let me know as soon as possible .\nthanks and have a great day !\nshirley crenshaw\ntelephone : 713 - 853 - 5290\nfax : 713 - 646 - 2503\ne - mail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.382+0000", "entityId": 7135, "properties": {"text": "Subject: sat\nvince ,\ni hope you are having a great trip . i look forward to hearing about it .\nlet ' s aim for the 5 : 00 show , if that is ok with you . i always have so many\nerrands to run , i don ' t want to run late for the movie .\ntalk to you saturday a . m . - - 713 - 355 - 8311\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.391+0000", "entityId": 7136, "properties": {"text": "Subject: moody ' s upgrade\nto the great and powerful research group :\nas you may know , moody ' s has recently upgraded enron from baa 2 to baal .\nwe had been on watch for an upgrade for a while and after their intitial\ncredit meeting , they still had questions primarily related to our control of\nmarket and credit risk . to that end , jeff mcmahon and tim despain had rick\nbuy , bill bradford and i meet with eight members of the moody ' s team . the\nquestions centered around policy and procedure in the wholesale businesses .\nwe discussed var , stress testing and potential credit exposure . to make a\nlong story short , subsequent to that meeting , they reconvened their committee\nand announced the upgrade .\ni want you to know how critical your contribution was to the discussion and\nwill continue to be as the bar gets raised . i am sure that next year they\nwill continue to be concerned with our risk management capabilities as well\nas extensions of our current platform - tail risk , intra day risk ,\noperational risk , and enterprise wide risk .\nthank you for your efforts in supporting rac - it has tangible benefits .\nted\np . s . - there is still lots of interesting opportunities to extend the\nparadigm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.397+0000", "entityId": 7137, "properties": {"text": "Subject: referral\nvince -\ni work in the caribbean structuring group and previously worked at entergy\npower marketing on the structuring desk with gary zhu . i am attaching the\nresume of a friend from entergy who holds a phd in operations research . he\nis considering a move from entergy and from speaking with li xiao i thought\nthat your group might be a good fit for him . please call with any questions\n( x 67446 ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.401+0000", "entityId": 7138, "properties": {"text": "Subject: rice seminar\nhello all :\nfyi :\njones graduate school research seminar series in finance\nsponsored by enron corp .\nalon brav\nfuqua school of business\nduke university\nwill give a seminar at the jones school on friday , march 31 ,\n\" competing theories of financial anomalies \"\n* the seminar will begin at 3 : 15 pm in room 115 .\n* note the slightly early start time to accommodate an early flight .\na pdf of the paper is available through the seminar website\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.406+0000", "entityId": 7139, "properties": {"text": "Subject: rice / enron finance seminar series\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.411+0000", "entityId": 7140, "properties": {"text": "Subject: friday brown bag on derivative pricing\nhello all :\nif you think any of your people would be interested in the following - please\npass the messages on .\nthanks !\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nmessage one\ndear everyone ,\nwe understand the as members of enron research group , all of us are working\non very interesting projects , some of which are ground - breaking , and we all\nkeep a very keen mind on any development of new technology . we also find\nout , through our own experience , that at this age of information explosion ,\nit becomes more and more difficult to have enough time and energy to keep\nabreast with most of the exciting stuff taking place in this department , let\nalone in the industry . it is also our personal experience that many a\nproject we are working on has partially been attempted by other members of\nthis group .\nas a remedy , we propose that the research group start an informal brown bag\nlunch group meeting , once every two weeks on friday , for about 50 minutes .\nit is hoped that it will provide a forum for us to facilitate with new\ntechnology and development , as well as with each other \u0001 , s work , so that we do\nnot have to reinvent the wheels .\nwe envision the following : in this meeting ( or seminar ) , each one of us will\ntake turns to make presentations to the group . the topics could range from\ntheoretical consideration to practical implementation , be it option pricing ,\nprocess modelling , insurance issue , or monte carlo simulation , or anything\none finds fascinating . the presentation material could be papers you have\nbeen reading recently , projects you are working on , some problem that\nbothers you , or an idea that is fascinating . you choose your own\npresentation style . it could be\neverything - you - always - wanted - to - know - but - were - afraid - to - ask , hand waving\nstyle , or it can involve nitty - gritty , detailed derivations , anyway a style\nthat suits you and the topic . or it can simply be a dry - run for your\npresentation at the next risk conference . zimin and alex will take upon the\nresponsibility of organizing the seminar .\nwe hope the seminar will be up and running in two - three weeks . for that\npurpose your support will be greatly appreciated . please let either zimin or\nalex know if you are interested in giving a presentation to the group and\nprovide a tentative schedule . surely the rest of the group will be happy to\nhear your presentation .\nwe encourage everyone to participate this brown bag meeting , either to give a\ntalk or just sit in .\nzimin lu\nalex huang\nmessage two\ndear everyone ,\nit looks like the proposed bblop has great support and is to have a great\nstart . vince , grant , , amitava , kevin , clayton and chonawee have promised\nto give presentations to us . vince will kindly deliver the inaugural\npresentation next friday ( march 31 ) on new methodology for option pricing\n( precise title\ntba ) . bblop will start at 12 noon and last about 45 to 50 minutes . let ' s\nmake this a new enron tradition !\nbest regards .\nzimin ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.417+0000", "entityId": 7141, "properties": {"text": "Subject: re : kmv visit\ndear mr . seyfried ,\ni am following up on the attached message from vasant shanbhogue who visited\nwith us in san francisco recently . i will be in london on friday , march\n31 st , and would be happy to drop by your offices to provide additional\ninformation on our products .\nat this point , the best time for me would be in the late afternoon ( 2 pm to\n3 pm ? ) .\nplease let me know if you would still like to meet and if this time will\nwork for you .\nregards ,\nrob\n- - - - - original message - - - - -\nfrom : vasant shanbhogue [ mailto : vasant . shanbhogue @ enron . com ]\nsent : friday , march 24 , 2000 10 : 56 am\nto : rudy @ kmv . com\ncc : bryan seyfried ; william s bradford ; vince j kaminski\nsubject : kmv visit\nhi robert ,\nfollowing up on our visit to your office , vince kaminski and i are very\ninterested in your products . bryan seyfried , who is heading up the credit\ntrading operations in london , would like you to visit the london office when\nyou\nare there next friday . he would like to discuss technical implementation\ndetails at that time , in addition to the overall framework . i will also\ngive\nyou a call to set up a time to have a more technical ( options modeling )\nconversation over the phone .\nthanks ,\nvasant shanbhogue\nvice president , research\nenron corp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.421+0000", "entityId": 7142, "properties": {"text": "Subject: re : meeting today and trip to houston\nomar , thanks for the presentation and the e - mail . as i tried to emphasize on\nthe phone call , there will be short - term and long - term efforts to utilize\nopnet . often the short - term needs rules at ebs . we will sort out what they\nduring our discussion in houston . i am confirming the meeting in houston\n6 - 8 th .\ni shall ask shirely crenshaw to arrange for a conference room on the 19 th\nfloor . the meeting will be held all day from april 6 th , 7 th and half day 8 th .\nthe 8 th is a saturday and the meeting will be held to wrap things up if\nneeded .\nravi .\nbackground info . for enron research people . opnet is a simulation tool that\nmany in the industry use to do capacity planning to ip based applications and\nservices on a network . detail adenda will follow .\ni wanted to take the opportunity to thank you for the time we had this\nmorning to discuss the performance engineering program at ebs . i think\nyou ' ll find that the value to enron from the overall approach is quite\nhigh . i have a much better picture now of some of the short term drivers\nthat need to be addressed as we move forward . as i work with you , i think\nwe ' ll quickly emerge with a clear picture of what needs to be done and when .\nas soon as you confirm your schedule for april 6 - 8 , i ' ll book my travel to\nget to houston . i ' ve already put in a call to opnet technologies to have\nthem get a resource out to houston on one of those days for a demonstration\nand q & a about the opnet toolset .\ni ' ll compose an agenda for us to use during that meeting in houston and get\nit out to you next week .\nif there are any questions , please email me at\nozaidi @ lucent . com\nyou can also call me at 503 778 0653 . i am also pageable at 1 800 467 1467 .\nhave a great weekend and i look forward to hearing from you next week about\nthe april 6 - 8 meeting .\nbest wishes . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.426+0000", "entityId": 7143, "properties": {"text": "Subject: re : forecast rates !\nhi vince ,\nthank you for sending me the email from don reid regarding the turkey fx and\ncpi curve . i received the same email last week and the request has been\ntaken care of . in fact , he had a very short time line for the request and\nhad subsequently used outside forecasts for the bid . if the deal goes\nthrough rac , i ' m sure we ' ll get another request for the curve , but for now ,\ndon said that he doesn ' t need a forecast from us .\nregards ,\nfarouk z . lalji", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.430+0000", "entityId": 7144, "properties": {"text": "Subject: re : e - mail address chnage\nthanks for your message , your account has been updated .\nshould you wish to make any changes to your personal account on www . cera . com ,\ngo to :\nhttp : / / www . cera . com / cfm / edit / account . cfm\nsincerely ,\ncera webmaster\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , march 27 , 2000 9 : 59 am\nto : webmaster @ cera . com\ncc : vince j kaminski\nsubject : e - mail address chnage\nto all whom it may concern :\nplease change my e - mail address from\nvkamins @ ect . enron . com\nto\nvkamins @ enron . com\nvincent kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.435+0000", "entityId": 7145, "properties": {"text": "Subject: re : risk 2000 , 12 - 15 june , boston - speaker confirmation\noliver ,\nthanks a lot for your message .\nhere is the information you requested :\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\nvince\n\" oliver bennett \" on 03 / 21 / 2000 11 : 00 : 16 am\nplease respond to \" oliver bennett \"\nto : \" zou , zhou \" , \" young , derek \" ,\n\" walter gontarek \" , \" vince j kaminski \"\n, \" steven e shreve \" ,\n\" stephen ross \" , \" staley , mark \" , \" selvaggio ,\nrobert \" , \" ross mayfield \" ,\n\" ritchken , peter \" , \" prasad nanisetty \"\n, \" philipp schoenbucher \"\n, \" pesco , anthony \"\n, \" merrell hora \" , \" mark\nd ames \" , \" lirtzman , harris \"\n, \" leslie rahl \" , \" john\nmcevoy \" , \" john hull \" , \" joe\npimbley \" , \" jeremy berkowitz \" ,\n\" javaid , masood ( mlmam ) \" , \" ethan berman \"\n, \" browne , sid \" , \" bob\nmaynard \" , \" amarger , regis \"\n, \" derman , emanuel \" ,\n, , ,\n, , ,\n, , ,\n, , ,\n, ,\n, , ,\n, , ,\n, ,\n, ,\n, , ,\n, , ,\n, ,\n, ,\n, ,\n, , ,\n, ,\n, , ,\n, , ,\n, , ,\n, , ,\n, , ,\n, ,\n, ,\n, ,\n,\ncc :\nsubject : risk 2000 , 12 - 15 june , boston - speaker confirmation\nthank you for agreeing to speak at risk magazine ' s annual us congress , risk\n2000 , taking place in boston between 12 - 15 june 2000 .\n?\ncould you please return this email with your full postal address and contact\ndetails so we can send you hard copies of the brochure , inform you of\ncongress and hotel locations and let you know when we will need a copy of\nyour presentation . if you are part of a panel discussion , myself or the\npanel moderator will contact you shortly .\n?\nin the meantime the full brochure can be viewed and / or downloaded from the\nfollowing web address -\n?\nwww . riskpublications . com / risk 2000 us\n?\nif you have any further questions , please don ' t hesitate to contact me .\n?\nbest regards ,\n?\noliver bennett\nsenior conference producer\n?\n?\ndirect : + 44 ( 0 ) 20 7484 9880\n?\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 ( 0 ) 20 7484 9800 ? email : oliver @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.439+0000", "entityId": 7146, "properties": {"text": "Subject: final details for energy course\nhi ,\njust wanted to let you know some final details about the course :\ncourse titles : \" energy derivatives : pricing and risk management \" and / or\n\" var for energy markets \"\nvenue details :\ndates : 29 - 31 march\nlocation : hyatt regency downtown houston , 1200 louisiana street , houston\nphone : 713 - 654 - 1234\nschedule :\ncontinental breakfast : 8 . 30 am\nstart : 9 am\nbeverage break : 10 . 30 - 11 . 00\nbuffet lunch served in course room : 12 . 30 - 1 . 30 pm\nsnack break : 3 . 30 - 4 . 00 pm\nend : approx . 5 . 30 pm\ncourse leaders : dr les clewlow and dr chris strickland , lacima consultants\nplease let me know if you need anything further .\nthanks and enjoy the course !\nsincerely ,\njulie\nlacima consultants", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.444+0000", "entityId": 7147, "properties": {"text": "Subject: re : offsite meeting - - great divide lodge - - invited guest list\nhi sheryl , please add david cox ' s name in the list . additionally , please\ninclude chonawee supatgiat for research .\nonce john approves the current list and we get some feed back by talking to\npeople ' s admin to book attendees time .\nravi .\nhere is the latest version of the agenda .\nsheryl lara\n03 / 27 / 00 04 : 59 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / enron communications , john\ngriebling / enron communications @ enron communications , ravi thuraisingham / enron\ncommunications @ enron communications\ncc : shirley crenshaw / hou / ect @ ect\nsubject : offsite meeting - - great divide lodge - - invited guest list\ngentlemen :\nattached please find the \" proposed \" final invitees list for the technical ,\nresearch , and operations offsite meeting to be held april 27 - 29 , 2000 at the\ngreat divide lodge in breckenridge , colorado . i am working with shirley\ncrenshaw to secure cost - efficient travel and meeting arrangements for the\nentire group . in order to secure a group rate , we must make sure we have a\n\" final headcount \" in place . please let me know by tuesday , march 28 th at\n12 : 00 noon if you have any additions or corrections to the attached list .\nmany thanks in advance for your prompt attention !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.448+0000", "entityId": 7148, "properties": {"text": "Subject: offsite meeting - - great divide lodge - - invited guest list\ngentlemen :\nattached please find the \" proposed \" final invitees list for the technical ,\nresearch , and operations offsite meeting to be held april 27 - 29 , 2000 at the\ngreat divide lodge in breckenridge , colorado . i am working with shirley\ncrenshaw to secure cost - efficient travel and meeting arrangements for the\nentire group . in order to secure a group rate , we must make sure we have a\n\" final headcount \" in place . please let me know by tuesday , march 28 th at\n12 : 00 noon if you have any additions or corrections to the attached list .\nmany thanks in advance for your prompt attention !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.452+0000", "entityId": 7149, "properties": {"text": "Subject: enron research and ebs engineering and operations group technical\nforum\njoe ,\ni would like to invite you to an off - site meeting of john griebling ' s\norganization\nand the research group .\ndate : april 27 - april 29\nlocation : breckenridge , colorado\nas you know , john griebling is managing the network design and construction\nproject\ncurrently under way in ebs . the research group is actively involved in this\neffort\nwhich requires advanced quantitative skills in the area of stochastic\noptimization and\nstochastic processes ( for modeling and forecasting internet traffic flows ) .\nthe objective of this meeting is to develop common language and accomplish\ntransfer\nof skills between the two groups , to facilitate cooperation on this project\nin the future .\nwe are inviting ken rice and kevin hannon to this meeting . we would\nappreciate if you could\nspeak , together with kevin and ken , on strategic directions of ebs . it is\nimportant for a group\nof technical people , with relatively specialized technical skills , to\nunderstand the big picture .\ni am attaching the preliminary agenda for this meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.458+0000", "entityId": 7150, "properties": {"text": "Subject: enron research and ebs engineering and operations group technical\nforum\nkevin ,\ni would like to invite you to an off - site meeting of john griebling ' s\norganization\nand the research group .\ndate : april 27 - april 29\nlocation : breckenridge , colorado\nas you know , john griebling is managing the network design and construction\nproject\ncurrently under way in ebs . the research group is actively involved in this\neffort\nwhich requires advanced quantitative skills in the area of stochastic\noptimization and\nstochastic processes ( for modeling and forecasting internet traffic flows ) .\nthe objective of this meeting is to develop common language and accomplish\ntransfer\nof skills between the two groups , to facilitate cooperation on this project\nin the future .\nwe are inviting ken rice and joe hirko to this meeting . we would appreciate\nif you could\nspeak , together with joe and ken , on strategic directions of ebs . it is\nimportant for a group\nof technical people , with relatively specialized technical skills , to\nunderstand the big picture .\ni am attaching the preliminary agenda for this meeting .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.463+0000", "entityId": 7151, "properties": {"text": "Subject: enron research and ebs engineering and operations group technical\nforum\nken ,\ni would like to invite you to an off - site meeting of john griebling ' s\norganization\nand the research group .\ndate : april 27 - april 29\nlocation : breckenridge , colorado\nas you know , john griebling is managing the network design and construction\nproject\ncurrently under way in ebs . the research group is actively involved in this\neffort\nwhich requires advanced quantitative skills in the area of stochastic\noptimization and\nstochastic processes ( for modeling and forecasting internet traffic flows ) .\nthe objective of this meeting is to develop common language and accomplish\ntransfer\nof skills between the two groups , to facilitate cooperation on this project\nin the future .\nwe are inviting joe hirko and kevin hannon to this meeting . we would\nappreciate if you could\nspeak , together with joe and kevin , on strategic directions of ebs . it is\nimportant for a group\nof technical people , with relatively specialized technical skills , to\nunderstand the big picture .\ni am attaching the preliminary agenda for this meeting .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.472+0000", "entityId": 7152, "properties": {"text": "Subject: off - site : john griebling ' s organization and research group\njeff ,\ni would like to invite you to an off - site meeting of john griebling ' s\norganization\nand the research group .\ndate : april 27 - april 29\nlocation : breckenridge , colorado\nas you know , john griebling is managing the network design and construction\nproject\ncurrently under way in ebs . the research group is actively involved in this\neffort\nwhich requires advanced quantitative skills in the area of stochastic\noptimization and\nstochastic processes ( for modeling and forecasting internet traffic flows ) .\nthe objective of this meeting is to develop common language and accomplish\ntransfer\nof skills between the two groups , to facilitate cooperation on this project\nin the future .\nwe are also inviting to this off - site senior management of ebs and plan to\nhave\non the agenda several presentations about strategic directions of ebs . the\neffort\nof network design and construction currently under way is unprecedented in\nterms\nof its scope and complexity and it is important for technical people , who\noften have\nhighly specialized technical skills , to understand the broad picture .\ni would appreciate if you could join us for friday afternoon ( april 28 ) and\nsaturday ( april 29 ) . i understand that you have commitments on thursday and\nfriday\nmorning . we have reorganized the tentative agenda of the meeting to devote\nfriday afternoon to more general topics .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.477+0000", "entityId": 7153, "properties": {"text": "Subject: re : ed krapels\njust thought you ' d like to know we are not having a grat deal of success with\ncontacting ed - let us know if there is anything else i can do ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by louise kitchen / hou / ect on 27 / 03 / 2000\n13 : 42 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : rahil jafry on 27 / 03 / 2000 13 : 40\nto : louise kitchen / hou / ect @ ect\ncc : david forster / hou / ect @ ect\nsubject : re : ed krapels\nboth dave and i have left messages for this guy ( e - mail as well as voice\nmail ) on 4 different occassions - without any response .\nlouise kitchen\n03 / 27 / 2000 01 : 21 pm\nto : rahil jafry / hou / ect @ ect\ncc :\nsubject : re : ed krapels\nhave you managed to get hold of him yet ?\nvince j kaminski\n11 / 02 / 2000 17 : 23\nto : louise kitchen / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : ed krapels\nlouise ,\nthanks . his e - mail address is ekrapels @ esaibos . com . the company\ncoordinates are as follows :\nesai\n301 edgewater place , suite 108\nwakefield , ma 01880\n( 781 ) 245 - 2036\n( 781 ) 245 - 8706\nvince\nlouise kitchen\n02 / 11 / 2000 05 : 13 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : ed krapels\nabsolutely - i can ' t find the previous email but it may have been lost during\nthe few days they moved my email box from london to houston - i know i had a\nlot of lost emails - do you have his phone number and email and we can sort\nout a password for a few days for him too .\nlouise\nvince j kaminski\n10 / 02 / 2000 22 : 15\nto : louise kitchen / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : ed krapels\nlouise ,\nsome time ago i sent you a message regarding ed krapels . he is writing a book\non energy\ncommodity markets and would like to learn more about eol .\ncan you give him a call and chat with him for 10 minutes . he is a good\nfriend of enron and\nit would be free ad for us .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.484+0000", "entityId": 7154, "properties": {"text": "Subject: re :\nthank you\nvince j kaminski @ ect\n03 / 27 / 2000 01 : 02 pm\nto : tasha lair / hr / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : re :\ntasha ,\nyes , i think li xiao deserves the bonus .\nvince kaminski\ntasha lair @ enron\n03 / 21 / 2000 02 : 24 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\nvince ,\nlinda vargo asked me because i am the administrator of employee referral\nprogram to contact you on whether or not li xiao is eligible for a bonus on\nhis referral of alex huang . i have informed linda that the decision up to\nyou . if you feel that alex huang was hired as a result of li bringing him to\nthe attention of enron then the bonus is due . linda and yourself have\ncommunicated via e - mail on this issue in early february and it appears from\nthat correspondence that li did encourage alex to e - mail his resume to you .\nplease advise as to whether or not you want to award the bonus .\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.493+0000", "entityId": 7155, "properties": {"text": "Subject: re :\ntasha ,\nyes , i think li xiao deserves the bonus .\nvince kaminski\ntasha lair @ enron\n03 / 21 / 2000 02 : 24 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\nvince ,\nlinda vargo asked me because i am the administrator of employee referral\nprogram to contact you on whether or not li xiao is eligible for a bonus on\nhis referral of alex huang . i have informed linda that the decision up to\nyou . if you feel that alex huang was hired as a result of li bringing him to\nthe attention of enron then the bonus is due . linda and yourself have\ncommunicated via e - mail on this issue in early february and it appears from\nthat correspondence that li did encourage alex to e - mail his resume to you .\nplease advise as to whether or not you want to award the bonus .\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.499+0000", "entityId": 7156, "properties": {"text": "Subject: re : forecast rates !\nvince ,\nwe responded to kellie and osman on march 21 . don reid decided that he did\nnot need a curve for turkey at this time .\nregards ,\nmaureen\nvince j kaminski\n03 / 27 / 2000 06 : 14 pm\nto : kellie fleeks / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , maureen raymond / hou / ect @ ect , farouk\nlalji / hou / ect @ ect\nsubject : re : forecast rates !\nkellie ,\ni was on vacation last week . sorry for the delay in getting back to you .\ni am forwarding this request to maureen raymond who is handling such requests .\nvince kaminski\nto : vince j kaminski @ ect\ncc :\nsubject : forecast rates !\nvince ,\nyour name was given as a contact to get information on some exchange rates .\ndon reid is needing some information on forecast rates and inflation rates\nfor turkish ponds for the years 2000 - 2006 . if you can help me we really\nwould appreciate it , we need it as soon as possible . thank you in advance\nfor your help .\nkellie\n5 . 5205", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.504+0000", "entityId": 7157, "properties": {"text": "Subject: april futures contract\nvince and vasant :\nfor the record , the april hh future closed last monday at $ 2 . 72 , and is now\ntrading at $ 2 . 97 , a 9 % rise in less than one week .\nfor the record , enron ' s technical \" experts \" strongly advised selling this\ncontract last week , predicting a \" collapse . \"\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.508+0000", "entityId": 7158, "properties": {"text": "Subject: hello all ,\nthe program for the 2000 texas finance festival has been formalized and can\nbe found on our web site at\ni do need to remind you of a few things before we converge on san antonio .\nfirst , be sure to contact the convention hotel and make your reservations .\nat last count there were only 6 rooms left . second , i need a completed\napplication form from everyone so that we can get an accurate meal count .\ni am attaching the program announcement so you can fill out the appropriate\nboxes for meals and numbers of guests in the event you have not sent in a\nform .\nremember that we are starting the conference off with a luncheon on friday\nso plan on arriving early friday or coming in on thursday evening if you\ncan . our hotel is right on the river and there are lots of restaurants and\ninteresting things to visit in the immediate area ( the alamo is across the\nplaza from the hotel ) .\nwe are making plans for spouses and children to attend both the dinner on\nfriday and saturday evenings . the friday evening dinner begins at 6 p . m .\nso that we can be done in plenty of time for our private guided tour of the\nalamo at 8 : 00 p . m . for saturday we are still working out plans for the\nevening so stay tuned .\nthere will be more information later as the conference nears . looking\nforward to seeing you all and in beautiful , sunny san antonio .\njohn\n- announcerev . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.513+0000", "entityId": 7159, "properties": {"text": "Subject: re : thursday night ' s dinner ( and friday also )\nhello all :\nbad news ! most of the really nice restaurants in breckenridge close on the\n22 nd of april . we may have to have all the dinners at the hotel . do you\nhave\nany other suggestions ?\ni will check with scott yeager ' s wife again today to see if she perhaps knows\nof another good restaurant that may be open , but the owner of pierre ' s told\nme most of them close and open again for the summer season in may .\nthanks !\nshirley\nsheryl lara @ enron communications\n03 / 28 / 2000 06 : 29 pm\nto : ravi thuraisingham / enron communications @ enron communications\ncc : shirley crenshaw / hou / ect @ ect , shirley\nsubject : re : final list of invited participants to offsite meeting\nravi :\ncan you answer shirley ' s question . are you planning to have the entire group\ngo to dinner , or just senior management ? please let us know your plan .\nsheryl\n- - - - - forwarded by sheryl lara / enron communications on 03 / 28 / 00 07 : 24 pm - - - - -\nshirley crenshaw @ ect\n03 / 28 / 00 03 : 15 pm\nto : sheryl lara / enron communications @ enron communications @ enron\ncc :\nsubject : re : final list of invited participants to offsite meeting\nsheryl :\ni am going to call pierre ' s restaurant and make reservations for thursday\nnight - will everyone on the list be attending or just part ?\nthanks !\nsheryl lara @ enron communications\n03 / 28 / 2000 03 : 09 pm\nto : shirley crenshaw / hou / ect @ ect , ravi thuraisingham / enron\ncommunications @ enron communications\ncc :\nsubject : final list of invited participants to offsite meeting\nhere it is ! ! !\nthe final list of participants .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.517+0000", "entityId": 7160, "properties": {"text": "Subject: enron research and ebs engineering and operations group technical\nforum\nscott :\nthis is the memo that vince sent to the \" top \" management for the offsite .\ni am sending it to you for your information . glad you can be there on\nthursday evening .\n* * * * * * * * * * * *\ni would like to invite you to an off - site meeting of john griebling ' s\norganization\nand the research group .\ndate : april 27 - april 29\nlocation : breckenridge , colorado\nas you know , john griebling is managing the network design and construction\nproject\ncurrently under way in ebs . the research group is actively involved in this\neffort\nwhich requires advanced quantitative skills in the area of stochastic\noptimization and\nstochastic processes ( for modeling and forecasting internet traffic flows ) .\nthe objective of this meeting is to develop common language and accomplish\ntransfer\nof skills between the two groups , to facilitate cooperation on this project\nin the future .\nwe are inviting ken rice and kevin hannon to this meeting . we would\nappreciate if you could\nspeak , together with kevin and ken , on strategic directions of ebs . it is\nimportant for a group\nof technical people , with relatively specialized technical skills , to\nunderstand the big picture .\ni am attaching the preliminary agenda for this meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.522+0000", "entityId": 7161, "properties": {"text": "Subject: michael sergeev ' s rotation\nhi mike , as per our discussion i have managed to find a place for michael in\nebs ' d . c . office . it is likely that he will work for me on the ebs side but\nwill live in d . c . i will finalize that later . vince had mentioned that it\nis okay with him as long as it is okay with you . so please double check with\nvince on this .\ni suggest the following transition :\nstart date in d . c . may 1 , 2000\nfrom now till the start date , michael will slowly transition into my group\nbut make sure that your activities are transitioned into someone else . but i\nwould like to propose the may 1 , 2000 date as hard start so that michael will\nhave to start moving few days before that , etc .\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.527+0000", "entityId": 7162, "properties": {"text": "Subject: @ ect . enron . com email notification !\nwe are one @ enron . com !\nplease be aware of the following senders were automatically notified to ( a ) .\nstop sending internet mail to your @ ect . enron . com address and to ( b ) . send\nfuture internet communications to vince . j . kaminski @ enron . com :\nj _ martin @ baylor . edu , cantekin @ mail . utexas . edu\nreminder :\nyour @ ect . enron . com address should not be used any longer and will be\ndeactivated soon . so please make sure these contacts switch to your new\n@ enron . com address . if you have subscribed to mailing lists , please make\nsure to update your addresses there as well .\nand\nyour shortname @ enron . com address ( i . e . jsmith @ enron . com ) will continue to\nwork , even though your formal address is longname @ enron . com ( i . e .\njohn . smith @ enron . com )\nplease do not reply to this message as it was automatically generated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.532+0000", "entityId": 7163, "properties": {"text": "Subject: vince kaminski ' s bio\nhello amy :\nattached please find vince kaminski ' s \" bio \" . he is working on his\npresentation .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.536+0000", "entityId": 7164, "properties": {"text": "Subject: summer internship\nhi vince ,\ni am writing you at this time to inquire as to the potential of renewing my\ninternship at enron for the summer of 2000 .\nwhile the date of my request is later than i would have wished , the reason\nis that i had originally planned to go back to turkey this summer and get\nmy mandatory military duty done . however , i now realize i can put it off to\na further date . that left me wondering if you believe there is a project\nthat i can get involved in this summer and be useful . if that were the\ncase , i would be more than happy to postpone my military duty and spend the\nsummer with the research group . i discussed this with dr . ronn , and he is\nvery supportive of this idea .\ni apologize again for bringing up this issue late , and look forward to\nhearing from you .\nbest regards ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.541+0000", "entityId": 7165, "properties": {"text": "Subject: update\nhello all ,\nthe program for the 2000 texas finance festival has been formalized and can\nbe found on our web site at\ni do need to remind you of a few things before we converge on san antonio .\nfirst , be sure to contact the convention hotel and make your reservations .\nat last count there were only 6 rooms left . second , i need a completed\napplication form from everyone so that we can get an accurate meal count .\ni am attaching the program announcement so you can fill out the appropriate\nboxes for meals and numbers of guests in the event you have not sent in a\nform .\nremember that we are starting the conference off with a luncheon on friday\nso plan on arriving early friday or coming in on thursday evening if you\ncan . our hotel is right on the river and there are lots of restaurants and\ninteresting things to visit in the immediate area ( the alamo is across the\nplaza from the hotel ) .\nwe are making plans for spouses and children to attend both the dinner on\nfriday and saturday evenings . the friday evening dinner begins at 6 p . m .\nso that we can be done in plenty of time for our private guided tour of the\nalamo at 8 : 00 p . m . for saturday we are still working out plans for the\nevening so stay tuned .\nthere will be more information later as the conference nears . looking\nforward to seeing you all and in beautiful , sunny san antonio .\njohn - announcerev . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.546+0000", "entityId": 7166, "properties": {"text": "Subject: an apology\nkevin -\ni need to apologize to you for speaking out - of - turn yesterday about\nwork - in - progress . any model our group has of the natural gas system remains\ncompletely untested and unvalidated . i have not been asked by any one of my\nsuperiors , vasant or wince , to give advice to anyone at enron concerning\nnatural gas ; i am not an expert in trading natural gas . my work exists within\na large and professional group , and , to the point , vince alone will decide\nwhen , and if , any gas model is suitable for dissemination within enron .\nsincerely ,\nclayton vernon\nmanager , research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.551+0000", "entityId": 7167, "properties": {"text": "Subject: re : is this data of interest to any of you ?\nyannis ,\nit makes a lot of sense to get this info .\nalso , you are welcome to make a presentation to the group this thursday at\nlunch .\nplease , call shirley crenshaw ( x 3 - 5290 ) to coordinate and order sandwich\nyou would like to have .\nvince\njoe , can you , please , babysit this presentation ( make sure we have all the\naudiovisual\nequipment we need , etc . ) .\nvince\nyannis tzamouranis\n03 / 28 / 2000 02 : 50 pm\nto : yannis tzamouranis / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : is this data of interest to any of you ?\nfyi :\nthe following file describes the contents of the monthly energy review\n( application , current , and historical ) .\nthe data is available through a doe site and we can get it for free and\nincorporate it in the lim database , if there is interest .\nreview the attached file ( look for keywords of interest ) and let us know\nwhether need dictates loading these datasets .\nfor the\nmarket analysis and infomration management group ,\nyannis c . tzamouranis\nenron it", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.556+0000", "entityId": 7168, "properties": {"text": "Subject: re : the research lunch\ni would be very willing to make a presentation to you . this coming thursday\nunfortunately , i have a sick day scheduled ( babies will do this kind of thing\nto you ) and will not come into the office .\nwould it be more practical to make the presentation to a select group of a\nfew ( possibly ) interested individuals ? this might give us more shceduling\nflexibility and would also seem more appropriate , knowing that what i have is\na set of suggestions for development and no earth - shuttering , live product .\nplease let me know if this accomodates your needs ,\nyannis\njoseph hrgovcic\n03 / 29 / 2000 09 : 35 am\nto : yannis tzamouranis / hou / ect @ ect\ncc :\nsubject : re : the research lunch\nyannis ,\nshirley will know the room in which the lunch is scheduled . let her know\nwhat audio - visual materials you ' ll need . keep in mind that the research group\nis now about 40 people , some of whom will be watching the presentation on\nvideo from portland and from london . the best platform would be to get a\npc - video or pc - screen link - up , so that everyone , including people watching\nremotely , can see your computer ' s monitor on a big screen .\nthe itinerary for the lunch is that we meet at 11 : 30 and eat lunch and trade\nnews for the first 30 - 45 minutes , and then at 12 : 00 or 12 : 30 at the latest ,\nwe have a presentation . we try to wrap up by 1 : 00 , so that what we discussed\nyesterday should make for a very good presentation in pretty much every way .\nfrom my experience , the audio - visual people need at least an hour advance\nwarning to get the screens linked up . let me know if you need any help in\ngetting you and jenny the things you need .\njoe\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 03 / 29 / 2000\n09 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 29 / 2000 09 : 31 am\nto : yannis tzamouranis / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : re : is this data of interest to any of you ?\nyannis ,\nit makes a lot of sense to get this info .\nalso , you are welcome to make a presentation to the group this thursday at\nlunch .\nplease , call shirley crenshaw ( x 3 - 5290 ) to coordinate and order sandwich\nyou would like to have .\nvince\njoe , can you , please , babysit this presentation ( make sure we have all the\naudiovisual\nequipment we need , etc . ) .\nvince\nyannis tzamouranis\n03 / 28 / 2000 02 : 50 pm\nto : yannis tzamouranis / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : is this data of interest to any of you ?\nfyi :\nthe following file describes the contents of the monthly energy review\n( application , current , and historical ) .\nthe data is available through a doe site and we can get it for free and\nincorporate it in the lim database , if there is interest .\nreview the attached file ( look for keywords of interest ) and let us know\nwhether need dictates loading these datasets .\nfor the\nmarket analysis and infomration management group ,\nyannis c . tzamouranis\nenron it", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.561+0000", "entityId": 7169, "properties": {"text": "Subject: re : greetings\ndear professor boyle ,\ni shall be glad to speak at the conference on energy derivatives in may in\ntoronto .\ni shall call you thursday morning ( houston time )\nto discuss the details .\nvince\nphelim boyle on 03 / 28 / 2000 06 : 23 : 07 pm\nto : vkamins @ enron . com\ncc :\nsubject : greetings\ni am sorry i missed your call today .\ni will be in london tomorrow night by around 11 . 30 ( uk time )\ni will be teaching on a risk course and staying at\nthe grosvenor house hotel ;\nphone 44 ( 0 ) 20 7499 6363\nfax 44 ( 0 ) 20 7499 3341\nit would be great if you can come to our conference\ni will be happy to discuss it with you\nbest wishes\nphelim p boyle\n- -\nphelim p boyle\ndirector\ncentre for advanced studies in finance ,\nuniversity of waterloo ,\nwaterloo , ontario\ncanada n 2 l 3 gl\ntel 519 885 1211 ( 6513 )\nfax 519 888 7562", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.566+0000", "entityId": 7170, "properties": {"text": "Subject: invoice for energy derivatives courses\nshirley ,\nplease , pay .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 29 / 2000\n12 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlacima @ compuserve . com > on 03 / 28 / 2000 02 : 49 : 43 pm\nto : shirley\ncc : vince\nsubject : invoice for energy derivatives courses\nshirley ,\nplease find attached the invoice for the energy derivatives courses . if i\nshould forward this to someone in accounts , please let me know who i should\ncontact and i will take care of it .\nthanks ,\njulie\nlacima consultants\n- enron 28 _ 03 _ 00 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.571+0000", "entityId": 7171, "properties": {"text": "Subject: re : invoice for energy derivatives courses\ni already did - you signed it this morning .\nthanks !\nvince j kaminski\n03 / 29 / 2000 12 : 33 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : invoice for energy derivatives courses\nshirley ,\nplease , pay .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 29 / 2000\n12 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlacima @ compuserve . com > on 03 / 28 / 2000 02 : 49 : 43 pm\nto : shirley\ncc : vince\nsubject : invoice for energy derivatives courses\nshirley ,\nplease find attached the invoice for the energy derivatives courses . if i\nshould forward this to someone in accounts , please let me know who i should\ncontact and i will take care of it .\nthanks ,\njulie\nlacima consultants\n- enron 28 _ 03 _ 00 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.577+0000", "entityId": 7172, "properties": {"text": "Subject: re : off - site : john griebling ' s organization and research group\nvince , jeff does plan to attend the off - site in breckenridge . i ' m not sure\nexactly what time he ' ll arrive on friday , 4 / 28 , but will send those details\nwhen available . thanks , srs\nvince j kaminski @ ect\n03 / 27 / 2000 04 : 43 pm\nto : jeff skilling / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , ravi\nthuraisingham / enron communications @ enron communications , sherri\nsera / corp / enron @ enron , katherine brown / corp / enron @ enron , ken rice / enron\ncommunications @ enron communications , kevin hannon / enron communications @ enron\ncommunications , joe hirko / enron communications @ enron communications , john\ngriebling / enron communications @ enron communications\nsubject : off - site : john griebling ' s organization and research group\njeff ,\ni would like to invite you to an off - site meeting of john griebling ' s\norganization\nand the research group .\ndate : april 27 - april 29\nlocation : breckenridge , colorado\nas you know , john griebling is managing the network design and construction\nproject\ncurrently under way in ebs . the research group is actively involved in this\neffort\nwhich requires advanced quantitative skills in the area of stochastic\noptimization and\nstochastic processes ( for modeling and forecasting internet traffic flows ) .\nthe objective of this meeting is to develop common language and accomplish\ntransfer\nof skills between the two groups , to facilitate cooperation on this project\nin the future .\nwe are also inviting to this off - site senior management of ebs and plan to\nhave\non the agenda several presentations about strategic directions of ebs . the\neffort\nof network design and construction currently under way is unprecedented in\nterms\nof its scope and complexity and it is important for technical people , who\noften have\nhighly specialized technical skills , to understand the broad picture .\ni would appreciate if you could join us for friday afternoon ( april 28 ) and\nsaturday ( april 29 ) . i understand that you have commitments on thursday and\nfriday\nmorning . we have reorganized the tentative agenda of the meeting to devote\nfriday afternoon to more general topics .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.585+0000", "entityId": 7173, "properties": {"text": "Subject: model validation\ntrena ,\ni have received your message . please , send the model for review to zimin lu .\nmaureen raymond\nand myself will work with zimin to review the model .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.592+0000", "entityId": 7174, "properties": {"text": "Subject: re : here it goes !\nsteve ,\ntaking summer interns is the best way to screen and identify good candidates\nat low cost and low risk . i would take this person in ,\nassuming you can still run it by the analyst / associate program . they closed\nthe books\nfor the summer .\nlet me know if you run into any roadblock . i shall try help you from here .\nvince\nsteven leppard\n03 / 29 / 2000 08 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : here it goes !\nvince\ndo you have any views on taking summer interns here in the research group in\nlondon ? one of our analysts has recommended a friend of hers ( resume\nattached ) . i ' m sure we could dream up some work for an intern , so let me\nknow what you think .\nmany thanks ,\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 03 / 29 / 2000\n03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzuzana strmenova\n02 / 23 / 2000 10 : 51 am\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : here it goes !\nthanks , a lot steve .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.598+0000", "entityId": 7175, "properties": {"text": "Subject: welcome to pjm - customer - info\n- -\nwelcome to the pjm - customer - info mailing list !\nplease save this message for future reference . thank you .\nif you ever want to remove yourself from this mailing list ,\nyou can send mail to with the following\ncommand in the body of your email message :\nunsubscribe pjm - customer - info\nor from another account , besides vince . j . kaminski @ enron . com . :\nunsubscribe pjm - customer - info vince . j . kaminski @ enron . com .\nif you ever need to get in contact with the owner of the list ,\n( if you have trouble unsubscribing , or have questions about the\nlist itself ) send email to .\nthis is the general rule for most mailing lists when you need\nto contact a human .\nhere ' s the general information for the list you ' ve subscribed to ,\nin case you don ' t already have it :\nthis mailing list is maintained by the pjm interconnection l . l . c .\nto communicate information about pjm and pjm ' s upcoming events .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.602+0000", "entityId": 7176, "properties": {"text": "Subject: thomas knudsen interview\nguys\ni ' m out of the office until wednesday next week . i ' ll chase you up for\nfeedback on your video interview with thomas next week ( if i don ' t get any\nfrom grant before then ) .\ni thought i ' d better clear up the fact that you ' re the only research people\n( except me ) to have spoken to thomas so far . although vince agrees that he ' s\na strong candidate , anjam was strongly opposed to thomas ' s being brought in\nfor interview . i thought last night ' s video interview was a reasonable way\nto get an objective view from other research guys .\ncheers ,\nsteve\n( thomas ' s cv attached for dale ' s reference :\n)", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.607+0000", "entityId": 7177, "properties": {"text": "Subject: re : summer internship\ncantekin ,\nthe summer associate program has closed but i shall check to see\nif i can get one extra place .\nvince\n\" cantekin dincerler \" on 03 / 28 / 2000 11 : 48 : 53 am\nplease respond to cantekin @ mail . utexas . edu\nto : vkamins @ ect . enron . com\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : summer internship\nhi vince ,\ni am writing you at this time to inquire as to the potential of renewing my\ninternship at enron for the summer of 2000 .\nwhile the date of my request is later than i would have wished , the reason\nis that i had originally planned to go back to turkey this summer and get\nmy mandatory military duty done . however , i now realize i can put it off to\na further date . that left me wondering if you believe there is a project\nthat i can get involved in this summer and be useful . if that were the\ncase , i would be more than happy to postpone my military duty and spend the\nsummer with the research group . i discussed this with dr . ronn , and he is\nvery supportive of this idea .\ni apologize again for bringing up this issue late , and look forward to\nhearing from you .\nbest regards ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.611+0000", "entityId": 7178, "properties": {"text": "Subject: darden case study on \" the transformation of enron \"\nshirley ,\nplease , provide this info .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 30 / 2000\n02 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : sherri sera @ enron 03 / 30 / 2000 12 : 47 pm\nto : lou l pai / hou / ees @ ees , gene humphrey / hou / ect @ ect , ken rice / enron\ncommunications @ enron communications , andrew s fastow / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : karen owens / hou / ees @ ees , bert frazier / hou / ect @ ect , mercedes estrada / enron\ncommunications @ enron communications , bridget maronge / hou / ect @ ect , mark\npalmer / corp / enron @ enron , katherine brown / corp / enron @ enron , fabricio\nsoares / hou / ect @ ect\nsubject : darden case study on \" the transformation of enron \"\ngentlemen ,\njeff has asked that each of you make time to meet with professors bruner and\nbodily regardig the above referenced case ( i have attached a project overview\nfor your review ) .\nthey are scheduled to be in houston on tuesday , april 18 , to begin conducting\ninterviews ( some of which may be videotaped ) . please let me know your\navailablility on that date .\nthanks for your help , and please don ' t hesitate to call me ( x 3 - 5984 ) should\nyou need additional information . srs", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.616+0000", "entityId": 7179, "properties": {"text": "Subject: re : energy derivatives conference - may 29 , toronto\namy :\nattached please find a short \" bio \" for dr . kaminski . please let me know\nif i can help further .\namy aldous on 03 / 30 / 2000 11 : 24 : 13 am\nto : vince . j . @ uwaterloo . ca . kaminski @ enron . com\ncc : shirley . crenshaw @ enron . com\nsubject : energy derivatives conference - may 29 , toronto\ndear mr . kaminski ,\ni have just spoken with phelim boyle , who was very pleased to report that\nyou will be speaking at our energy derivatives conference in toronto on may\n29 .\ni understand that the title of your presentation is \" current challenges in\npricing and risk management of energy derivatives . \" would you also be\navailable and willing to join a panel discussion / question and answer period\nat the end of the day ?\nspeakers , with tentative titles , to follow you are :\ncorwin joy ( positron , houston )\n\" modeling physical assets : real option theory applied to generation assets \"\ndavid emanuel ( williams , tulsa )\n\" modeling issues in power markets \"\nshijie deng ( georgia institute of technology , atlanta )\n\" research on pricing electricity derivatives and the basic models \"\nmelanie cao ( queen ' s university , kingston ontario )\n\" equilibrium pricing of weather derivatives \"\npanel discussion\nperhaps ms . crenshaw could send me your short biographical sketch , by email\nor fax ( 519 ) 888 - 7562 so that i can proceed with promoting this event as\nsoon as possible .\nmany thanks ,\namy\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\namy aldous , conference co - ordinator\ncentre for advanced studies in finance\nuniversity of waterloo\nwaterloo , on n 2 l 3 gl\ntel : ( 519 ) 888 - 4567 ext . 5728\nfax : ( 519 ) 888 - 7562\nemail : aaldous @ uwaterloo . ca\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.620+0000", "entityId": 7180, "properties": {"text": "Subject: re : brazil\nfyi . this is a deal i ' ve been helping them value correctly .\nhere remi is , ostensibly the head of trading in brazil , and he doesn ' t even\nknow what a digital option is . scary !\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 03 / 30 / 2000 10 : 23\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nremi collonges @ enron _ development\n03 / 29 / 2000 07 : 53 am\nto : grant masson / hou / ect @ ect\ncc :\nsubject : re : odebrecht / ita deal\nthanks for taking the time to look at this transaction . i ' m currently trying\nto understand what a digital option is , but besides this i can say you ' ve got\nit right .\nremi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.625+0000", "entityId": 7181, "properties": {"text": "Subject: norway visit : research agenda\ndear all ,\ni would like to make myself available for some meetings at the oslo office\nduring my visit on friday pm , monday and tuesday . i believe bjarne will be\navailable on tuesday , if not monday , and so would like to arrange the trading\nand origination meetings for tuesday ( so that he can attend ) and maybe go\nthrough the energydesk issues on monday . i will also give a presentation ,\nprobably on monday .\ntrading : options & volatility curves\nit would be useful to meet with the traders along with bjarne ' s team to help\nus improve our understanding of the valuation / hedging issues encountered in\ntrading options ( both european and asian ) . i hope to discuss the vol curves\nand will bring the example of the recent work done for the uk electricity\ndesk where a monthly volatility curve generator and initial half - hourly\nforward volatility curve have been developed .\norigination :\nany issues arising in complex deals ( e . g . dry reservoir , user - time contracts )\netc . perhaps with didrik .\nenergydesk . com\nto support the on - going effort to ensure the accuracy of the energydesk . com\nsystems , i hope to help james stephen nail - down the reasons for some of the\ndiscrepancies between the energydesk . com valuation and the oslo book ( for\nthis i hope to meet with trond ) .\nexotic options :\nif everything runs smoothly , i plan to roll - out the new asian model which\nshould also help us in improving our electricity volatility curve .\ni will be in the oslo office from friday afternoon , and available all day\nmonday and tuesday . i will be staying at the grand hotel and probably\ncontactable on my mobile : 07747 86813 .\nlook forward to meeting you soon !\nregards ,\nanjam\nx 35383\np . s . i will be contactable on my mobile for any urgent queries from london\ncustomers : 07747 868131 , or reachable through catherine / maret ( x 2570 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.630+0000", "entityId": 7182, "properties": {"text": "Subject: re : summer intern\nhi steve ,\nthanks for the fyi ; i ' d be happy to interview him if you need a second\nopinion at the telephone interview you ' re arranging next week .\nregards ,\nanjam\nsteven leppard\n29 / 03 / 2000 17 : 19\nto : anjam ahmad / lon / ect @ ect\ncc :\nsubject : re : here it goes !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 03 / 29 / 2000\n05 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 29 / 2000 03 : 45 pm\nto : steven leppard / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : here it goes !\nsteve ,\ntaking summer interns is the best way to screen and identify good candidates\nat low cost and low risk . i would take this person in ,\nassuming you can still run it by the analyst / associate program . they closed\nthe books\nfor the summer .\nlet me know if you run into any roadblock . i shall try help you from here .\nvince\nsteven leppard\n03 / 29 / 2000 08 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : here it goes !\nvince\ndo you have any views on taking summer interns here in the research group in\nlondon ? one of our analysts has recommended a friend of hers ( resume\nattached ) . i ' m sure we could dream up some work for an intern , so let me\nknow what you think .\nmany thanks ,\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 03 / 29 / 2000\n03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzuzana strmenova\n02 / 23 / 2000 10 : 51 am\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : here it goes !\nthanks , a lot steve .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.634+0000", "entityId": 7183, "properties": {"text": "Subject: @ ect . enron . com email notification !\nwe are one @ enron . com !\nplease be aware of the following senders were automatically notified to ( a ) .\nstop sending internet mail to your @ ect . enron . com address and to ( b ) . send\nfuture internet communications to vince . j . kaminski @ enron . com :\njim . dyer @ bus . utexas . edu , john @ sava . com\nreminder :\nyour @ ect . enron . com address should not be used any longer and will be\ndeactivated soon . so please make sure these contacts switch to your new\n@ enron . com address . if you have subscribed to mailing lists , please make\nsure to update your addresses there as well .\nand\nyour shortname @ enron . com address ( i . e . jsmith @ enron . com ) will continue to\nwork , even though your formal address is longname @ enron . com ( i . e .\njohn . smith @ enron . com )\nplease do not reply to this message as it was automatically generated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.638+0000", "entityId": 7184, "properties": {"text": "Subject: darden case study on \" the transformation of enron \"\nsherri :\nvince kaminski is available from 2 : 00 pm - 5 : 00 pm on tuesday , april 18 .\nsherri : as a side note , professor bodily was visiting with vince yesterday\nand was impressed with the pictures that are in each of the elevators -\nshowing enron ' s \" vision and values \" . he asked me if i could possibly\nfind out how he could get copies of the prints . are they available anywhere ,\nand to anyone ? did our graphics dept . do them ?\nif you have any information , please let me know .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 30 / 2000\n02 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 30 / 2000 02 : 33 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : darden case study on \" the transformation of enron \"\nshirley ,\nplease , provide this info .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 30 / 2000\n02 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : sherri sera @ enron 03 / 30 / 2000 12 : 47 pm\nto : lou l pai / hou / ees @ ees , gene humphrey / hou / ect @ ect , ken rice / enron\ncommunications @ enron communications , andrew s fastow / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : karen owens / hou / ees @ ees , bert frazier / hou / ect @ ect , mercedes estrada / enron\ncommunications @ enron communications , bridget maronge / hou / ect @ ect , mark\npalmer / corp / enron @ enron , katherine brown / corp / enron @ enron , fabricio\nsoares / hou / ect @ ect\nsubject : darden case study on \" the transformation of enron \"\ngentlemen ,\njeff has asked that each of you make time to meet with professors bruner and\nbodily regardig the above referenced case ( i have attached a project overview\nfor your review ) .\nthey are scheduled to be in houston on tuesday , april 18 , to begin conducting\ninterviews ( some of which may be videotaped ) . please let me know your\navailablility on that date .\nthanks for your help , and please don ' t hesitate to call me ( x 3 - 5984 ) should\nyou need additional information . srs", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.643+0000", "entityId": 7185, "properties": {"text": "Subject: re : jeff skilling does msl 50\nvince , thank you so much for your generous pledge . please make your check\npayable to \" national ms society , \" and send it to me at eb 5008 a at your\nconvenience . thanks again , srs\nvince j kaminski @ ect\n03 / 30 / 2000 09 : 02 am\nto : sherri sera / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : jeff skilling does msl 50\nsherri ,\ni can pledge $ 2 per mile .\nvince\nenron north america corp .\nfrom : sherri sera @ enron 03 / 29 / 2000 11 : 13 am\nto : j mark metts / na / enron @ enron , dolores fisher / na / enron @ enron , jeffrey\nsherrick / corp / enron @ enron , christina grow / corp / enron @ enron , kenneth\nlay / corp / enron @ enron , jeff skilling / corp / enron @ enron , joseph w\nsutton / enron _ development @ enron _ development , james m\nbannantine / enron _ development @ enron _ development , cliff baxter / hou / ect @ ect ,\nsanjay bhatnagar / enron _ development @ enron _ development , rick buy / hou / ect @ ect ,\nrichard causey / corp / enron @ enron , diomedes\nchristodoulou / enron _ development @ enron _ development , james\nderrick / corp / enron @ enron , andrew s fastow / hou / ect @ ect , peggy\nfowler / enron @ gateway , mark frevert / lon / ect @ ect , kevin hannon / enron\ncommunications @ enron communications , ken harrison / enron @ gateway , david\nhaug / enron _ development @ enron _ development , joe hirko / enron\ncommunications @ enron communications , stanley horton / corp / enron @ enron , kurt s\nhuneke / enron _ development @ enron _ development , larry l\nizzo / enron _ development @ enron _ development , steven j kean / hou / ees @ ees , mark\nkoenig / corp / enron @ enron , rebecca p mark / hou / azurix @ azurix , mike\nmcconnell / hou / ect @ ect , rebecca mcdonald / enron _ development @ enron _ development ,\njeffrey mcmahon / hou / ect @ ect , lou l pai / hou / ees @ ees , ken rice / enron\ncommunications @ enron communications , john sherriff / lon / ect @ ect , greg\nwhalley / hou / ect @ ect , thomas e white / hou / ees @ ees , brenda\ngarza - castillo / enron _ development @ enron _ development , marcia\nmanarin / enron _ development @ enron _ development , susan skarness / hou / ect @ ect ,\nstacy guidroz / enron _ development @ enron _ development , beena\npradhan / enron _ development @ enron _ development , karen k heathman / hou / ect @ ect ,\nsharron westbrook / corp / enron @ enron , molly\nbobrow / enron _ development @ enron _ development , rosane\nfabozzi / enron _ development @ enron _ development , stephanie\nharris / corp / enron @ enron , bridget maronge / hou / ect @ ect , mary\ntrosper / enron @ gateway , nicki daw / lon / ect @ ect , carol ann brown / enron\ncommunications @ enron communications , dolly henrici / enron @ gateway , ann\njoyner / corp / enron @ enron , elaine\nrodriguez / enron _ development @ enron _ development , nancy young / enron\ncommunications @ enron communications , cindy stark / corp / enron @ enron , sherryl\nstone / enron _ development @ enron _ development , mary e\ngarza / enron _ development @ enron _ development , maureen mcvicker / hou / ees @ ees ,\njoannie williamson / corp / enron @ enron , rosalee fleming / corp / enron @ enron , marsha\nlindsey / hou / azurix @ azurix , cathy phillips / hou / ect @ ect , loretta\nbrelsford / enron _ development @ enron _ development , sue ford / hou / ect @ ect , karen\nowens / hou / ees @ ees , dorothy dalton / enron communications @ enron communications ,\nlauren urquhart / lon / ect @ ect , pam benson / enron _ development @ enron _ development ,\nliz m taylor / hou / ect @ ect , judy g smith @ ees , katherine brown / corp / enron @ enron ,\nvanessa groscrand / corp / enron @ enron , cindy olson / corp / enron @ enron , bobbie\npower / corp / enron @ enron\ncc : danny mccarty / lon / ect @ ect , philippe a bibi / hou / ect @ ect , david w\ndelainey / hou / ect @ ect , mark e haedicke / hou / ect @ ect , michael\nkopper / hou / ect @ ect , john j lavorato / cal / ect @ ect , jere c overdyke / hou / ect @ ect ,\ngreg piper / corp / enron @ enron , jeffrey a shankman / hou / ect @ ect , richard\ndimichele / enron communications @ enron communications , jay\nfitzgerald / corp / enron @ enron , jim fallon / hou / ect @ ect , rebecca\ncarter / corp / enron @ enron , david cox / enron communications @ enron communications ,\ntom gros / enron communications @ enron communications , marty sunde / hou / ees @ ees ,\ndan leff / hou / ees @ ees , jim crowder / enron communications @ enron communications ,\nmary ann long / enron communications @ enron communications , charlene\njackson / corp / enron @ enron , jeremy blachman / hou / ees @ ees , mark s\nmuller / hou / ees @ ees , michael burke / houston / eott @ eott , john b\nechols / hou / ees @ ees , gene humphrey / hou / ect @ ect , drew c lynch / hou / ect @ ect ,\namanda k martin / hou / azurix @ azurix , ted murphy / hou / ect @ ect , mark\npalmer / corp / enron @ enron , paula rieker / corp / enron @ enron , rob\nwalls / enron _ development @ enron _ development , david berberian / enron\ncommunications @ enron communications , scott yeager / enron communications @ enron\ncommunications , stephen barth / enron communications @ enron communications , john\nbloomer / enron communications @ enron communications , kenny burroughs / enron\ncommunications @ enron communications , kevin garland / enron communications @ enron\ncommunications , john griebling / enron communications @ enron communications ,\nkevin howard / enron communications @ enron communications , kristina\nmordaunt / enron communications @ enron communications , everett plante / enron\ncommunications @ enron communications , david reece / enron communications @ enron\ncommunications , james reece / enron communications @ enron communications , rex\nshelby / enron communications @ enron communications , claudia johnson / enron\ncommunications @ enron communications , kevin kohnstamm / enron\ncommunications @ enron communications , steve luginbill / enron\ncommunications @ enron communications , jean mrha / enron communications @ enron\ncommunications , brad nebergall / enron communications @ enron communications ,\nraymond bowen / hou / ect @ ect , janet r dietrich / hou / ect @ ect , jeff\ndonahue / hou / ect @ ect , gary hickerson / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , george mcclellan / hou / ect @ ect , julia murray / hou / ect @ ect ,\nbrian redmond / hou / ect @ ect , colleen sullivan / hou / ect @ ect\nsubject : jeff skilling does msl 50\nwell , the bike is inspected , a few training rides have been made , and the\ncamping gear is being dusted off ( yes , he is actually camping at the\nfairgrounds in lagrange ! ) . now all our fearless leader ( and incidentally ,\nthe national multiple sclerosis society ' s 2000 man of the year ) , jeff\nskilling , needs is your help in raising money for ms .\nenron ' s msl 50 dream team is bigger than some townships in these parts - over\n350 enron employees , led by jeff , will ride from houston to austin under the\nenron flag april 15 - 16 , and the team ' s goal is to raise $ 350 , 000 . i am\nchallenging ( is begging a better word ? ) each of you to pledge a certain\namount per mile - i . e . , $ 1 , $ 2 , $ 5 , it ' s your call . i ' ll even give you a\nbreak on the calculation and use 150 miles , even though jeff swears it ' s\ncloser to 170 miles ( you know how he is with numbers ) . of course , a flat\npledge is also appreciated . and don ' t forget , enron will match your pledge\nto this very worthy cause 1 - 1 .\ni hope you will join the team and help enron maintain its status as the top\nmoney raiser of all msl 50 rides in the nation ! thank you for your\nconsideration . if you have any questions , please don ' t hesitate to call me .\nsherri x 3 - 5984", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.648+0000", "entityId": 7186, "properties": {"text": "Subject: re : summer internship\nvince ,\ni appreciate your inquiry regarding an extra spot in the summer associate\npool . i am looking forward to hearing from you soon .\nbest regards ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n> - - - - - original message - - - - -\n> from : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\n> sent : wednesday , march 29 , 2000 8 : 34 am\n> to : cantekin @ mail . utexas . edu\n> cc : vince j kaminski ; vasant shanbhogue\n> subject : re : summer internship\n>\n>\n>\n>\n> cantekin ,\n>\n> the summer associate program has closed but i shall check to see\n> if i can get one extra place .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" cantekin dincerler \" on 03 / 28 / 2000\n> 11 : 48 : 53 am\n>\n> please respond to cantekin @ mail . utexas . edu\n>\n> to : vkamins @ ect . enron . com\n> cc : ( bcc : vince j kaminski / hou / ect )\n> subject : summer internship\n>\n>\n>\n> hi vince ,\n>\n> i am writing you at this time to inquire as to the potential\n> of renewing my\n> internship at enron for the summer of 2000 .\n>\n> while the date of my request is later than i would have\n> wished , the reason\n> is that i had originally planned to go back to turkey this\n> summer and get\n> my mandatory military duty done . however , i now realize i can\n> put it off to\n> a further date . that left me wondering if you believe there\n> is a project\n> that i can get involved in this summer and be useful . if that were the\n> case , i would be more than happy to postpone my military duty\n> and spend the\n> summer with the research group . i discussed this with dr .\n> ronn , and he is\n> very supportive of this idea .\n>\n> i apologize again for bringing up this issue late , and look forward to\n> hearing from you .\n>\n> best regards ,\n>\n> - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n> cantekin dincerler\n>\n> doctoral candidate\n> the university of texas at austin\n> graduate school of business\n> department of finance\n> office : ( 512 ) 471 - 1676\n> fax : ( 512 ) 471 - 5073\n> home : ( 512 ) 472 - 5356\n> http : / / uts . cc . utexas . edu / ~ cantekin\n> - - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.652+0000", "entityId": 7187, "properties": {"text": "Subject: class speaker\nvince ,\nas a reminder , i am hoping that you can identify a speaker for my\nclass at ut on real options ( perhaps you ! ) . i look forward to hearing from\nyou .\njim\njames s . dyer\nfondren centennial chair in business\ndepartment of management science and information systems\ncba 5 . 202\nthe university of texas at austin\naustin , texas 78712 - 1175\nemail : j . dyer @ bus . utexas . edu\ntelephone : 512 - 471 - 5278\nfax : 512 - 471 - 0587", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.657+0000", "entityId": 7188, "properties": {"text": "Subject: re : texas finance festival ( urgent request )\npeggy ,\nfriday ( lunch , supper ) , sat ( breakfast , lunch ) . one person .\nvince kaminski\npeggy davies on 03 / 30 / 2000 04 : 21 : 36 pm\nplease respond to peggy davies\nto : andres almazan , murray carlson\n, kent daniel , wayne\nferson , denis gromb , john hund\n, narasimhan jegadeesh , cindy\njustice , matthias kahl ,\nvince kaminski , anthony lynch\n, thomas noe ,\nrobert parrino , manju puri ,\nehud ronn , laura starks ,\nandrew subra , steathis tompaidis\ncc :\nsubject : texas finance festival ( urgent request )\ntexas finance festival attendee\nplease respond to the below request asap\nin preparing for the texas finance festival , we are needing to finalize the\nmeal counts . while we are excited about everyone coming , we do not want to\npay for meals ( expensive ones by the way when on the riverwalk in san\nantonio ) if someone will not be in attendance . please indicate below the\nmeals you will be inattendance . if you have family / significant others coming\nwith you , please indicate the total number including yourself . thanks for\nyour help . bill petty\nnumber to attend\nfriday lunch friday supper saturday\nbreakfast saturday lunch saturday supper\nrfc 822 header\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nreturn - path :\nreceived : from ccc _ petty ( ccc - petty . baylor . edu [ 129 . 62 . 162 . 79 ] )\nby ccisol . baylor . edu ( 8 . 9 . 1 / 8 . 9 . 1 ) with smtp id oaa 21931\nfor ; thu , 30 mar 2000 14 : 35 : 32 - 0600 ( cst )\nmessage - id :\ndate : 30 mar 00 14 : 34 : 59 - 0600\nfrom : bill petty\nsubject : texas finacne festival ( urgent request )\nto : peggy davies\nx - mailer : quickmail pro 1 . 5 . 4 ( windows 32 )\nx - priority : 3\nmime - version : 1 . 0\nreply - to : bill petty\ncontent - type : text / plain ; charset = \" us - ascii \"\ncontent - transfer - encoding : 8 bit\nx - mime - autoconverted : from quoted - printable to 8 bit by ccisol . baylor . edu id\noaa 21931\nstatus :\npeggy davies\nadministrative assistant\ndepartment of finance , insurance , fax ( 254 ) 710 - 1092\npeggy _ davies @ baylor . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.661+0000", "entityId": 7189, "properties": {"text": "Subject: us gas storage growth\nhuge growth in natural gas storage tracked\nas the natural gas market approaches 30 tcf per year , demand for natural\ngas storage capacity will rise exponentially . although the snowball has just\nstarted rolling , current plans by natural storage operators will boost\nworking capacity by 430 bcf , or 10 % , and will raise peak - day deliverability\n11 . 8 bcf per day , or 13 . 8 % , according to a new survey by intelligence press .\nintelligence press ' new multimedia research package provides a comprehensive\nlook at all current activity on 458 storage fields with additional key\ninformation on 101 lng facilities . among them are 38 proposed natural gas\nstorage fields and 15 storage expansion projects . depleted fields capture the\nlargest share of the proposed fields with 24 , followed by aquifers with six ,\nand salt domes and salt beds with four each . altogether the proposed new\nfields account for about 329 bcf in working capacity and 9 . 7 bcf per day in\ndeliverability . proposed and potential expansions represent an increase of\nabout 100 . 5 bcf of working capacity and 2 . 1 bcf per day in deliverability .\nbut these projects are just the tip of the iceberg . regulatory changes ,\nshifting natural gas flows and increases in demand due to growth in the\neconomy and particularly in natural gas fired power generation are expected\nto cause significant additional storage growth in the next decade . for more\ninformation go to : www . intelligencepress . com\nrbac\ngpcm natural gas market forecasting system\n- - - - - original message - - - - -\nfrom : enerfax daily [ smtp : enerfax @ fastband . com ]\nsent : friday , march 31 , 2000 1 : 52 am\nto : * * aaaenerfax\nsubject : enerfax daily ( http : / / www . enerfax . com / )\n- atto 0002 . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.666+0000", "entityId": 7190, "properties": {"text": "Subject: presentation\ngeorge ,\nthis is the presentation i promised .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.670+0000", "entityId": 7191, "properties": {"text": "Subject: a visit\nprofessor vincent kaminski\nvice president of research\nenron corp .\ndear professor kaminski\ni , masayuki fujita was the only japanese attendee of the energy\nderivatives seminar\nin houston last december and a member of japanese consultation firm :\nmitsubishi research\ninstitute , inc . i would be very honored if you can meet with me 17 or 18\napril after\nattending energy trading summit in 12 th - 14 th . as you know , japanese\nelectricity trading is\non the way of deregulation beneficial to the consumers from a long stage of\nthe nine major\ncompanies ' regional monopoly . we are giving a hand to help the ministry and\nindustry to\nfind the right course of them . i and my colleague yamada , who will attend risk\npublications monte calro seminar in four seasons hotel , would like to visit\nyou and your\ncompany for studying the sophisticated risk management at enron . in return ,\nwe may give\nyou the information about recent institutional progress and major electricity\ncompanies\nresponse in japan .\nwe are now personally translating your book \" managing energy price risk \"\nsecond\nedition and wondering if you have not given the right to publish in japanese\nand nay give\nus the chance to help you introduce modern technology to manage energy risk\nin the\njapanese energy industry .\ni do not hope japanese english power prevent me to pass my sincerity to\nyou and i can\nvisit you soon .\nbest regards ,\nmasayuki fujita\nprincipal financial engineer\nfinancial technologies section\nmitsubishi research institute , inc .\n3 - 6 otemachi 2 - chome , chiyoda - ku\ntokyo 100 - 8141\njapan\ntel + 81 - 3 - 3277 - 0582\nfax + 81 - 3 - 3277 - 0521", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.675+0000", "entityId": 7192, "properties": {"text": "Subject: uk swap rpi model\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 31 / 2000 01 : 44 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nmartina angelova\n03 / 22 / 2000 02 : 59 pm\nto : zimin lu / hou / ect @ ect\ncc : anjam ahmad / lon / ect @ ect , trena mcfarland / lon / ect @ ect\nsubject : uk swap rpi model\nhi zimin !\nplease find attached the rpi model i developed by bootstrapping rpi swaps .\nthe structure of this particular swap is :\nsemi / semi act / 365 f\n>\n> yoyukrpi = ( ukrpi ( p - 2 ) / ukrpi ( p - 14 ) - 1 ) / 2\n> p = payment month\n>\nthe first payment is the latest known historical rpi , february 2000 . you will\nnotice that i have assumed constant cashflows between the quoted years ( as\nopposed to interpolating swaps which distorts the curve a lot ) .\nplease find below a graphic comparison between the rpi curve produced by\nswaps and the one produced by the gilt market .\nlooking forward to your comments .\nbest regards ,\nmartina\nx 34327", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.682+0000", "entityId": 7193, "properties": {"text": "Subject: ppi index short - term models\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 31 / 2000 01 : 43 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n03 / 21 / 2000 04 : 10 pm\nto : martina angelova / lon / ect @ ect , trena mcfarland / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , stinson gibner / hou / ect @ ect , zimin\nlu / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : ppi index short - term models\nhi martina i believe that the\nforecasts are accurately reflecting this . please see graphs below :\nboth models really need our rpi curve to be linked ( at the moment i have just\ncopied the 2 . 3 % number forward ) . because the auto - regressive error term is\nnot very important , we can run the models forward with reasonable\nconfidence . as i mentioned , i don ' t think we can really run this model more\nthan 12 months , in fact , i think we should run for 9 - 12 months and blend the\nnext 3 - 4 months out with the long - term model .\nhope i can fix the long - term ones now with some new insight !\nregards ,\nanjam\nx 35383\npllu : dzcv :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.686+0000", "entityId": 7194, "properties": {"text": "Subject: uk ppi curve generator with smoothing\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 31 / 2000 01 : 43 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n03 / 28 / 2000 02 : 08 pm\nto : martina angelova / lon / ect @ ect , trena mcfarland / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , mary thambiah / lon / ect @ ect , zimin lu / hou / ect @ ect ,\nstinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : uk ppi curve generator with smoothing\nhi martina & trena ,\ni think this is a reasonable smoothing method between the short and long - term\nmodels - let me know if you need me to explain it . i also included the\nshort - term models so this is now a self - standing spreadsheet , but probably\nstill needs cleaning up a bit .\nzimin & stinson :\nwe agreed on short - term and long - term models for dzcv and pllu ppi indices in\na meeting with dale and trena and a simple smoothing is employed to give the\nresults as follows . blue and red curves are the proposed dzcv and pllu ppi\nindex forward curves whilst rpi is the market - derived black curve .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.690+0000", "entityId": 7195, "properties": {"text": "Subject: uk inflation presentation\ndeal all ,\nplease find attached a copy from a presentation on uk inflation we gave this\nmorning to john sherriff , president & coo enron europe . it summarizes the\nresults of our work on inflation so far . as you know the long term models\nstill remain to be approved . as today is quarter end and there is a\nsignificant p & l effect on a mtm basis john sherriff would like to proceed as\nsoon as possible with the new curves .\nthank you all for all your help !\nbest regards ,\nmartina\nx 34327", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.695+0000", "entityId": 7196, "properties": {"text": "Subject: re : houston visit with vince kaminski\ngood afternoon shirley ,\nit is great that vince is available on 4 / 19 . w . r . t . the attached from\nvince , let ' s go for the afternoon slot on 4 / 19 . i look forward to seeing\nyou both @ lpm on 4 / 19 . have a great w / e .\nmany thanks ,\nsoussan\n( 914 ) 253 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , march 31 , 2000 12 : 53 pm\nto : faizs @ texaco . com\ncc : vince . j . kaminski @ enron . com ; shirley . crenshaw @ enron . com\nsubject : re : houston visit\nsoussan ,\nmy assistant , shirley crenshaw , will call you regarding the time of the\nmeeting .\nright now the afternoon is open .\ni look forward to meeting you on the 19 th .\nvince\n- - - - - original message - - - - -\nfrom : shirley crenshaw [ mailto : shirley . crenshaw @ enron . com ]\nsent : friday , march 31 , 2000 1 : 00 pm\nto : faizs @ texaco . com\nsubject : houston visit with vince kaminski\ngood afternoon :\nvince kaminski is available on wednesday , april 19 th from 8 : 00 - 11 : 00 am\nand 1 : 00 - 4 : 00 pm . please let me know what time is more convenient for\nyou .\nshirley crenshaw\nadministrative coordinator\n713 - 853 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 31 / 2000\n11 : 50\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" faiz , soussan \" on 03 / 30 / 2000 02 : 31 : 18 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny & hope all is well . as you may recall from the rog real\noptions conference in ny , i ' d indicated the opportunity to visit with you\nnext time i ' m in houston . i ' ll be there during 4 / 18 - 4 / 21 & wonder if we can\npls meet on wed . 4 / 19 in your offices . would appreciate it if you can pls\nlet me know whether you ' re available then ( i ' m flexible on the schedule\nparticulars ) . if not , pls let me know whether 4 / 18 ( afternoon ) , 4 / 20\n( afternoon ) , or 4 / 21 ( morning ) will work for you .\ni really look forward to the opportunity & would appreciate to learn more\nabout how you ' ve instigated the real options thinking in enron and\nespecially its integration within the organizational & incentive matters .\nmany thanks ,\nsoussan faiz\nmgr . of global valuation services\ntexaco inc .\n( 914 ) 253 - 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.702+0000", "entityId": 7197, "properties": {"text": "Subject: re : lunch\njohn ,\nthanks . see you on monday .\nvince\nenron north america corp .\nfrom : john goodpasture @ enron 03 / 31 / 2000 01 : 11 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : lunch\nwe are confirmed for lunch this coming monday , april 3 . i ' ll meet you in the\nlobby at 11 : 15 and drive us to otto ' s barbecue on memorial .\nthanks , jng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.710+0000", "entityId": 7198, "properties": {"text": "Subject: houston visit with vince kaminski\ngood afternoon :\nvince kaminski is available on wednesday , april 19 th from 8 : 00 - 11 : 00 am\nand 1 : 00 - 4 : 00 pm . please let me know what time is more convenient for you .\nshirley crenshaw\nadministrative coordinator\n713 - 853 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 31 / 2000\n11 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" faiz , soussan \" on 03 / 30 / 2000 02 : 31 : 18 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny & hope all is well . as you may recall from the rog real\noptions conference in ny , i ' d indicated the opportunity to visit with you\nnext time i ' m in houston . i ' ll be there during 4 / 18 - 4 / 21 & wonder if we can\npls meet on wed . 4 / 19 in your offices . would appreciate it if you can pls\nlet me know whether you ' re available then ( i ' m flexible on the schedule\nparticulars ) . if not , pls let me know whether 4 / 18 ( afternoon ) , 4 / 20\n( afternoon ) , or 4 / 21 ( morning ) will work for you .\ni really look forward to the opportunity & would appreciate to learn more\nabout how you ' ve instigated the real options thinking in enron and\nespecially its integration within the organizational & incentive matters .\nmany thanks ,\nsoussan faiz\nmgr . of global valuation services\ntexaco inc .\n( 914 ) 253 - 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.716+0000", "entityId": 7199, "properties": {"text": "Subject: re : houston visit\nsoussan ,\nmy assistant , shirley crenshaw , will call you regarding the time of the\nmeeting .\nright now the afternoon is open .\ni look forward to meeting you on the 19 th .\nvince\n\" faiz , soussan \" on 03 / 30 / 2000 02 : 31 : 18 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny & hope all is well . as you may recall from the rog real\noptions conference in ny , i ' d indicated the opportunity to visit with you\nnext time i ' m in houston . i ' ll be there during 4 / 18 - 4 / 21 & wonder if we can\npls meet on wed . 4 / 19 in your offices . would appreciate it if you can pls\nlet me know whether you ' re available then ( i ' m flexible on the schedule\nparticulars ) . if not , pls let me know whether 4 / 18 ( afternoon ) , 4 / 20\n( afternoon ) , or 4 / 21 ( morning ) will work for you .\ni really look forward to the opportunity & would appreciate to learn more\nabout how you ' ve instigated the real options thinking in enron and\nespecially its integration within the organizational & incentive matters .\nmany thanks ,\nsoussan faiz\nmgr . of global valuation services\ntexaco inc .\n( 914 ) 253 - 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.720+0000", "entityId": 7200, "properties": {"text": "Subject: presentation at ut\nvince ,\ni appreciate your response to my request for you to speak to my\nclass on real options . i thought you might enjoy the following exchange of\nemails that occurred yesterday . perhaps some of these issues could be\naddressed in your talk .\njim\n- - - - - original message - - - - -\nfrom : sheridan titman\nsent : friday , march 31 , 2000 9 : 11 am\nto : jim dyer\nsubject : re : real options course feedback\njim :\nyour student has raised some difficult questions . i would recommend ehud ,\nbut i thought that the finance people have the answers in cases with\ncomplete markets and that we rely on the decision science people for cases\nwith incomplete markets .\nif it would help , i can come in at 6 pm after my class in a couple of weeks .\nsheridan\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu\n- - - - - original message - - - - -\nfrom : jim dyer\nsent : thursday , march 30 , 2000 4 : 37 pm\nto : sheridan titman\nsubject : re : real options course feedback\nsheridan ,\nwhich of your classes do you want to miss ? just kidding . actually\nyou probably told me that before . can you suggest someone else who would be\na good choice to discuss the use of option theory in the context of\nincomplete markets , and to address some of the types of questions raised in\nthe note from the student ?\njim\n- - - - - original message - - - - -\nfrom : sheridan titman\nsent : thursday , march 30 , 2000 5 : 58 pm\nto : jim dyer\nsubject : re : real options course feedback\njim :\ni teach at the same time as you do .\nsheridan\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu\n- - - - - original message - - - - -\nfrom : jim dyer\nsent : thursday , march 30 , 2000 11 : 32 am\nto : sheridan titman\nsubject : fw : real options course feedback\nsheridan ,\nsee the comments below . i don ' t mean to put you on the spot , and\nhave not announced anything in class , but i am hoping that you could visit\nmy class for about an hour one thursday afternoon to discuss your views\nregarding applications of option pricing concepts to \" real options \" . as a\nreminder , i ' ve attached a course outline . chris kenyon from schlumberger is\nspeaking on april 13 , and vince kaminski has tentatively agreed to speak on\napril 20 .\ni am going to be out of town on april 27 , so that leaves either next\nthursday ( april 6 ) or may 4 . would either of those times work for you ? i ' m\nnot thinking of any preparation , but more of an informal discussion of the\n\" philosophical issues \" related to real options work .\njim\n- - - - - original message - - - - -\nfrom : jim dyer\nsent : thursday , march 30 , 2000 1 : 24 pm\nto : ' jclevenger @ optionii . bus . utexas . edu '\nsubject : re : real options course feedback\njosh ,\nsome very thoughtful observations . as you know , i had invited one\nfinance professor to our class on arundel , but he was out of town . i do\nplan to invite sheridan titman to discuss the issue of using the option\nmodels in situations where there is no underlying security that is traded .\ni do think it is important to face that issue , which is actually covered at\na theoretical level in our last couple of readings .\nthe issue of volatility is also an excellent issue for further\ndiscussion , as you suggest . so far , we ' ve been looking at cases where\nvolatility is \" given \" . the problem of finding an \" objective \" measure of\nvolatility for a project reminds me of the problem of finding the correct\nrisk adjusted discount rate , which is not surprising since the concepts are\nalmost two sides of the same plate . one approach , of course , is to do some\nmodeling using traditional decision analysis tools , including subjective\nprobabilities , but the finance people who write options articles don ' t like\nto think about such ideas .\ni ' ll try to address these issues in more detail as the semester\ncontinues . i think it was important to surface some of these points early ,\nand to come back to them after we have seen how to apply the methods in a\nnaive sort of way .\nthanks for the feedback and comments .\njim\n- - - - - original message - - - - -\nfrom : jclevenger @ optionii . bus . utexas . edu\nsent : thursday , march 30 , 2000 8 : 42 am\nto : jim . dyer @ bus . utexas . edu\ncc : josh - clevenger @ reliantenergy . com\nsubject : real options course feedback\nafter overcoming the initial ( i hope ) overload of materials and tools\npresented\nthus far in the semester , it appears to me that you are achieving the\nobjective\nof making us comfortable with optionality valuation as applied to a variety\nof\nproblems which are outside the borders defined by a liquid market of traded\nfinancial elements .\nas a constructive feedback , you have been forthright with us in marking off\nareas of this subject which are still controversial . i also realize that\nrightly so , real - world application of this type of analysis without a robust\nunderstanding of finance may degenerate into a succession of assumptions\nthat\nresult in a \" house of cards \" effect . my opinion at this point is that two\nissues are of potentially \" make - or - brake \" importance if i am to persuade my\nsuperiors to accept these methods for valuations outside the realm of\nprojects\nwhose value is primarily driven by the value of commodities backed by\nfinancial\ninstruments . these issues are easy to guess :\n1 ) discounting and risk free rates : i do not sense that anyone in the\nclass\nhas put forth convincing arguments as to the proper application of time\nvalue\nquestions in the absence of liquidity . is there someone within the finance\ndepartment that can present a firmer position on this question ?\n2 ) volatility : i found winston ' s examples on this metric succinct . i would\nrecommend that in future years you dedicate some hours of class time to this\nsubject . my criticism again relates to messy problems . i anticipate\narguments\nagainst real option applications based on the dispute of volatility\nmeasures .\nif i were a conservative financial manager , i would argue that :\n* * * two - a : implied volatility derived from an industry specific slice of\nequity\noptions is a shotgun approach - - the projects being valued are of a tranche\nwhich may in fact have a significantly different outcome variance than the\nweighted average measured by the equities utilized . oil , gas and electricty\nare\ngood examples the major players are competing on many different levels of\nthe\nvalue chain . smaller companies do exist which are dedicated to one strata ,\nbut\nwhat about projects that want to exploit opportunies across strata in a\nvertically integrated company ?\n* * * two - b : based on the following skepticism - if a real option value is\nbeing\nproposed for a new business venture ( some new unexploited opportunity , )\nthere is\nsome paradox embedded in the increased value based on high volatility in new\nventures and the high risk of failure . this skepticism is likely to be less\nacute in high - tech sectors where the huge upside of new ventures is paraded\nbefore us daily by nasdq touts . it is a much harder sell to \" mature \"\nindustries .\nof particular interest in the power industry are investments centered around\nopportunities arising from restructuring of electricity and natural gas\nsectors\nas regulation is removed . a large proportion of the risk is embedded in\nongoing\nchanges of public policy on an international basis . as an intentionally\nscrewed - up example , can anyone other than a financial genius correctly asses\nvolatility for u . s . companies investing in seed projects in mexico based on\nspeculation of the inevitable dismantling of the national utility ( cfe ) and\npemex ?\njames s . dyer\nfondren centennial chair in business\ndepartment of management science and information systems\ncba 5 . 202\nthe university of texas at austin\naustin , texas 78712 - 1175\nemail : j . dyer @ bus . utexas . edu\ntelephone : 512 - 471 - 5278\nfax : 512 - 471 - 0587", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.725+0000", "entityId": 7201, "properties": {"text": "Subject: re : class request : xl 97 chart - 574 excel 97 , charting , william smith\napproved\nvince kaminski\n\" ecthou - domwebl \" on 03 / 31 / 2000 09 : 38 : 08 am\nto : vkamins @ enron . com\ncc :\nsubject : class request : xl 97 chart - 574 excel 97 , charting , william smith\nyour approval is required for william smith to attend the following class .\nto grant approval , send a reply to \" lpharr @ enron . com \" ( notesmail : lerea\npharr / hou / ect @ ect ) .\nbe sure to include employee ' s name and class number in reply .\nexcel 97 , charting\nsession dates & times :\n4 / 21 / 2000 8 : 30 : 00 am - 11 : 30 : 00 am\nlocation : eb 572\nno show / participant fee : $ 110 . 00\nif you have any questions , please call the technology training coordinator at\n713 - 853 - 1816 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.730+0000", "entityId": 7202, "properties": {"text": "Subject: re : d - g energy\nkarla ,\nwe may use 1 workstation in london , 1 in houston .\nyes , please call ms . geman and ask for more detailed price information .\nvince\nfrom : karla feldman 03 / 20 / 2000 01 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : d - g energy\nhello vince ,\ni didn ' t know if that was your correct e - mail address listed below on\nreceiving from outside the company , so i thought i would forward this with a\ncouple of comments .\nshe states below that she has enclosed a proposal , however , the only pricing\ni really see is in the software license agreement , article 2 , which states\nthat the license fee is $ 100 , 000 and lists out when you must pay for it . it\nthen states in article 3 that the fees are set forth in appendix 1 , but there\nare no prices in appendix 1 .\ni have reviewed the actual terms and conditions to the license and am going\nto prepare it as we usually do to send to mark holsworth for review . in the\nmeantime , do you want me to go back to ms . geman and ask her for more\ndetailed pricing information or do you have what you need ? also , in appendix\n2 , you will need to list the number of sites and workstations you want to\nhave .\nplease let me know .\nthanks ,\nkarla\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karla feldman / hou / ect on 03 / 20 / 2000 01 : 11\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeman on 03 / 18 / 2000 04 : 39 : 43 am\nto : karla . feldman @ enron . com\ncc : vkamins @ enron . com\nsubject :\ndear ms . feldman ,\nplease find enclosed a proposal for the d - g energy\nsoftware license agreement in which enron may be\ninterested . we deliberately left blank the appendix 2\nrelated to the number of sites and workstations it\nwould cover , in order to let dr . kaminski decide what\nis best for enron .\nsincerely\n- appendices . doc\n- contract . doc\nh , lyette geman\nprofessor of finance\nuniversity paris ix dauphine and essec", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.735+0000", "entityId": 7203, "properties": {"text": "Subject: re : presentation\nthanks !\nyou are probably familar with the format . . . 15 - 20 minutes for the\npresentation\nfollowed by 20 - 30 minutes for q & a .\nsee you at 7 : 30 am thursday in the lobby of the sonesta for breakfast !\nghw\n\" vince j kaminski \" on 03 / 31 / 2000 12 : 48 : 58 pm\nto : george wayne @ fpl\ncc : \" vince j kaminski \" , vkaminski @ aol . com\nsubject : presentation\ngeorge ,\nthis is the presentation i promised .\nvince\n( see attached file : fplo 400 . ppt )\n- fplo 400 . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.739+0000", "entityId": 7204, "properties": {"text": "Subject: re : enron broadband services\ndear stinson ,\ni apologize for the delay in responding . i was away wed - sun and\njust returned . thank you very much for your email . i plan to make\na firm decision on my future plans sometime in the later half of\napril , and would be extremely interested in getting an offer from\nenron . i think the opportunities at enron are very exciting and\nthere is room for some real contribution to the group .\nbest wishes ,\nsalal\n| >\n| >\n| > salal ,\n| >\n| > hope everything is going well with your thesis . we enjoyed hearing\nabout\n| > your research topics during your visit to houston and feel that you could\nad\n* d\n| > many new ideas to the innovative environment that we are cultivating at\nebs .\n| > i regret being a bit slow to get back to you after your visit . please\nlet\n* me\n| > know if you are still available and interested in coming to ebs . if so ,\ni\n| > will work on getting a formal offer out to you asap . if not , we would\nsti\n* ll\n| > be interested in staying in touch in case you would be interested in\nworking\n| > with us at some point in the future .\n| >\n| > best regards ,\n| >\n| > - - stinson\n| >\n| >\nsalal humair\nmassachvsetts institvte of technology\noperations research center\nrooms e 40 - 130 , 5 - 332 a\nx 3 - 3014 , x 5 - 9727\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.744+0000", "entityId": 7205, "properties": {"text": "Subject: your visit with vince kaminski - enron corp . research\ndear mr . fujita :\nwe would be very honored to have you visit with enron . dr . kaminski is\navailable all day on monday , april 17 and from 3 : 30 - 5 : 00 pm on tuesday ,\napril 18 . please let me know which day and time is convenient for you .\nthank you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nresearch group\n713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.749+0000", "entityId": 7206, "properties": {"text": "Subject: re : a visit\ndear mr . fujita :\nthank you for you interest in enron . i shall be honored if you visit enron\nand i shall invite other employees of the company to the meeting .\nplease , call my assistant , shirley crenshaw ( 713 853 5290 ) to discuss the\nexact time of your visit . she will be trying to reach you from our end .\nthe copy right for the book belongs to the risk magazine . i shall give you\nthe contact at the company\nwith whom you can discuss the japanese version issues .\nsincerely ,\nvince kaminski\nmasayuki fujita on 03 / 31 / 2000 08 : 36 : 00 am\nto : vkamins @ enron . com\ncc : eugenio perez\nsubject : a visit\nprofessor vincent kaminski\nvice president of research\nenron corp .\ndear professor kaminski\ni , masayuki fujita was the only japanese attendee of the energy\nderivatives seminar\nin houston last december and a member of japanese consultation firm :\nmitsubishi research\ninstitute , inc . i would be very honored if you can meet with me 17 or 18\napril after\nattending energy trading summit in 12 th - 14 th . as you know , japanese\nelectricity trading is\non the way of deregulation beneficial to the consumers from a long stage of\nthe nine major\ncompanies ' regional monopoly . we are giving a hand to help the ministry and\nindustry to\nfind the right course of them . i and my colleague yamada , who will attend risk\npublications monte calro seminar in four seasons hotel , would like to visit\nyou and your\ncompany for studying the sophisticated risk management at enron . in return ,\nwe may give\nyou the information about recent institutional progress and major electricity\ncompanies\nresponse in japan .\nwe are now personally translating your book \" managing energy price risk \"\nsecond\nedition and wondering if you have not given the right to publish in japanese\nand nay give\nus the chance to help you introduce modern technology to manage energy risk\nin the\njapanese energy industry .\ni do not hope japanese english power prevent me to pass my sincerity to\nyou and i can\nvisit you soon .\nbest regards ,\nmasayuki fujita\nprincipal financial engineer\nfinancial technologies section\nmitsubishi research institute , inc .\n3 - 6 otemachi 2 - chome , chiyoda - ku\ntokyo 100 - 8141\njapan\ntel + 81 - 3 - 3277 - 0582\nfax + 81 - 3 - 3277 - 0521", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.754+0000", "entityId": 7207, "properties": {"text": "Subject: re : stinson vacation plans\nstinson ,\nno problem .\nvince\nstinson gibner\n03 / 31 / 2000 05 : 28 pm\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : stinson vacation plans\nvince ,\ni would like to plan on taking 6 days of vacation on june 2 through june 9 th .\nthanks ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.759+0000", "entityId": 7208, "properties": {"text": "Subject: your approval is requested\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.764+0000", "entityId": 7209, "properties": {"text": "Subject: last minute things\ntff participants ,\nwe are looking forward to seeing everyone in san antonio this friday .\nattached is a welcome letter that indicates the meeting room and describes\nthe two evenings ( friday dinner and tour of the alamo and saturday barbeque\ndinner at a ranch outside of san antonio ) . we have arranged for five\nhorses for the brave at heart and a hayride for the interested so come with\njeans and boots .\nsee you friday\njohn\n- welcomel . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.768+0000", "entityId": 7210, "properties": {"text": "Subject: re : risk 2000 panel discussion , boston\noliver ,\nmakes sense to me .\nvince\n\" oliver bennett \" on 04 / 03 / 2000 09 : 49 : 13 am\nplease respond to \" oliver bennett \"\nto : , \" vince j kaminski \" ,\ncc :\nsubject : risk 2000 panel discussion , boston\njust a quick email to start some discussion about the panel session you are\ninvolved in during risk 2000 in boston on 13\nsimilarly it is often interesting to hear the panel ' s comments on one\nindividual ' s more specific area of knowledge .\n?\nconseqently if you could return this email ( to all panel members ) with\ntopics you feel should be covered , any particular areas you would personally\nlike to focus on , any proposed changes to the actual panel structure , and\npossibly additonal panel members you think should be there , that would be a\ngood start . i am still in the process of looking for a moderator and if\nanyone has any suggestions , please let me know .\n?\n( the talk title is effectively applying weather derivatives )\n?\nbest regards ,\n?\noliver ?\n?\n?\ndirect : + 44 ( 0 ) 20 7484 9880\n?\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 ( 0 ) 20 7484 9800 ? email : oliver @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.773+0000", "entityId": 7211, "properties": {"text": "Subject: re : energy derivatives conference - may 29 , toronto\ngood morning amy :\nvince kaminski will need the following :\nan lcd projector to hook up to a lap tap for his presentation\nhe will have dinner with the conference organizers and speakers on the 29 th .\nhe will need 2 nights ( the 28 th and the 29 th ) hotel reservations .\nhe will send you an abstract shortly .\nthanks and have a great day !\nshirley crenshaw\n713 - 853 - 5290\namy aldous on 03 / 31 / 2000 10 : 50 : 11 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : energy derivatives conference - may 29 , toronto\nms . crenshaw ,\nthank you for sending the bio so quickly . it ' s exactly what i was looking\nfor .\nwe are planning to compile the conference speakers ' papers for distribution\nto the participants . while i will not need dr . kaminski ' s contribution for\nseveral weeks , an abstract of his presentation as soon as possible would be\nvery useful to the conference organizers .\ni will also need the following information :\n- dr . kaminski ' s audio / video equipment requirements for his presentation\n- will he be joining the conference organizers and speakers for dinner on\nmay 29 ?\n- which nights will he be staying in toronto ? i will reserve a room at the\nconference hotel\n- any dietary restrictions or special requests\nyour help is much appreciated .\nbest wishes ,\namy\nat 11 : 50 am 3 / 30 / 00 - 0600 , you wrote :\n>\n> amy :\n>\n> attached please find a short \" bio \" for dr . kaminski . please let me know\n> if i can help further .\n>\n>\n> ( see attached file : vincent kaminski bio . doc )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\namy aldous , conference co - ordinator\ncentre for advanced studies in finance\nuniversity of waterloo\nwaterloo , on n 2 l 3 gl\ntel : ( 519 ) 888 - 4567 ext . 5728\nfax : ( 519 ) 888 - 7562\nemail : aaldous @ uwaterloo . ca\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.778+0000", "entityId": 7212, "properties": {"text": "Subject: contract agreement for energy derivatives\ni work with john ambler in apachi pr , and have been assisting vince with\nefforts on the energy derivatives book , which lacima consultants is\npublishing and to which vince is contributing a chapter . attached is the\ndraft contract agreement , which requires your legal review and approval .\ncould you kindly look it over and let me know your comments . when we have\nyour approval , we will send lacima a copy for their signature , after which\nvince will sign the document . we will ensure that your office has a copy for\nyour records .\nif you wish to speak to me , please do not hesitate to call me at ext . 66503 .\nthank you for your kind assistance .\nhabiba", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.783+0000", "entityId": 7213, "properties": {"text": "Subject: re : contract agreement\nhabiba ,\nlooks good to me . pleasure to work with you .\nvince\nhabiba bayi @ enron _ development\n04 / 03 / 2000 06 : 23 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : contract agreement\nhi ,\nattached is the draft copy of the agreement for your review . i will call\nlacima in london in the morning to fill in the gaps for the name of the book ,\nthe date they intend to publish it and the name of the person who will sign\non their behalf . as soon as i get your comments back , i will send the copy\nto david , our attorney , and copy you as well .\nthank you .\nhabiba", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.787+0000", "entityId": 7214, "properties": {"text": "Subject: your riskmetrics site password\ndear kaminski ,\nthank you for registering .\nyour requested username is polonia and your password is riskdata .\nyou may use this login to :\n- access picture of risk at http : / / www . riskmetrics . com / por / index . cgi\n- use the longrun forecast engine at\n- use the data directory at http : / / www . riskmetrics . com / data / view / index . cgi\n- access the creditmetrics datasets at\n- access the riskmetrics datasets at\n- read our technical documents at\n- read our monitors at http : / / www . riskmetrics . com / research / monitors / index . cgi\n- read the corporatemetrics publications at\n- read risk management : a practical guide at\nplease let us know if you have any questions or concerns ,\nrmg web services\nweb @ riskmetrics . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.792+0000", "entityId": 7215, "properties": {"text": "Subject: orillion and ebs visit\n* * * * * confirmation of meeting with orillion * * * * *\ngentlemen :\ni have spoken with jerry sellers of orillion and he will be visiting with ebs\non tuesday , april 25 , 2000 for about half a day . orillion is scheduled to be\nat ebs from 1 : 00 - 4 : 00 p . m . in conference room 45 cl . the following\nindividuals will participate on behalf of orillion . they are as follows :\njerry sellers , chairman\nterry lindsey , president\nprofessor ken dick , technical advisory board at university of nebraska\norillion would like to propose the following discussion topics :\n1 . introduce orillion to ebs\n2 . engage in technical discussions\n3 . discussions on how orillion can help ebs\nparticipants from ebs :\narshak sarkissian for scott yeager\nvince kaminski\njohn griebling\njames reece\ndavid reece\neverette plante\ndiane hetzel\ndorn hetzel\nravi thuraisingham", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.796+0000", "entityId": 7216, "properties": {"text": "Subject: uk rpi model\nhi zimin !\nplease find attached for your review the uk rpi model , derived by\nbootstrapping rpi swaps .\nit ' s a very simple model and here are its specifics :\nswap structure\npayment : semi / semi act / 365 f\n>\n> yoyukrpi = ( ukrpi ( p - 2 ) / ukrpi ( p - 14 ) - 1 ) / 2\n> p = payment month\n>\nthe first payment is the latest known historical rpi , february 2000 , 2 . 32 % .\nassumptions\n* constant cashflows between the quoted years ( as opposed to interpolating\nswaps which distorts the curve a lot ) . this explains the atrocious look of\nthe \" raw \" curve . it is then smoothed with a macro , which anjam wrote .\n* mid point of the swaps is used for deriving the curve ;\n* discount rate is libor and i solve for the coupon rate , which is the rpi\nyoy rate ;\n* the above is solved separately for each quoted period ( e . g . 2 yrs , 5 yrs )\nand rpi rates are determined for the incremental portion .\nby forecasting rpi in the above method we are able to lock in and deliver the\nforecasted levels .\nlooking forward to your comments and seeing you in london !\nbest regards ,\nmartina\nx 34327", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.805+0000", "entityId": 7217, "properties": {"text": "Subject: re : bei enron\nanjam ,\ncan you , please , invite gordian kemen to an interview in london ?\nstinson , zimin , vasant and krishna can interview\nhim from houston ( video conference ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 04 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njens gobel @ enron\n03 / 16 / 2000 05 : 36 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : bei enron\ngordian kemen on 03 / 15 / 2000 09 : 13 : 47 am\nto : jens . gobel @ enron . com\ncc :\nsubject : career opportunities @ enron\nhi vince ,\nfollowing up to our chat on the phone .\ngordian kemen will be arriving in austin on the 16 th . he will be staying in\naustin for 2 weeks . he would very much appreciate to have the opportunity to\nhave a talk with you to find out if there is a place for him at enron . you\ncan reach him under ( 512 ) 301 - 9819 ( his parents in law ' s phone number ) .\nthanks a lot for you help and attention ,\njens\n- gordianresume . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.813+0000", "entityId": 7218, "properties": {"text": "Subject: re : your visit with vince kaminski - enron corp . research\ndear mr . fujita :\nprofessor kaminski will be delighted to have dinner with you and your\ncolleague mr . yamada . i have put you on his calendar at 3 : 00 pm . with\ndinner to follow in early evening .\nplease let me know if you would like me to make dinner reservations\nfor you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research group\n713 / 853 - 5290\nmasayuki fujita on 04 / 04 / 2000 11 : 07 : 19 am\nto : shirley crenshaw\ncc :\nsubject : re : your visit with vince kaminski - enron corp . research\nshirley crenshaw\nadministrative coordinator\nresearch group\nenron corp\ndear ms . crenshaw ,\ni am very glad to see professor kaminski let me meet with him . i offer to\nvisit you around 3 p . m . on 17 th monday . i wonder if we can invite him for a\ndinner that night because my colleague mr . yamada who also wishes to meet\nwith him will attend a risk publication ' s seminar up to 5 p . m . on that day .\nplease let professor kaminski know we understand this offer may affect on\nhis private time and we do not insist on it . i am very much looking forward\nto seeing him .\nbest regards ,\nmasayuki fujita\nprincipal financial engineer\nfinancial technologies section\nmitsubishi research institute , inc .\n3 - 6 otemachi 2 - chome , chiyoda - ku\ntokyo 100 - 8141\njapan\ntel + 81 - 3 - 3277 - 0582\nfax + 81 - 3 - 3277 - 0521", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.819+0000", "entityId": 7219, "properties": {"text": "Subject: re : ( no subject )\ngreat ,\nplease , let me know . there are several good films playing currently .\nvince\njlpnymex @ aol . com on 04 / 04 / 2000 10 : 09 : 28 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : ( no subject )\nvince ,\ni will check with david and get back with you . i still want to hear about\nyour california trip .\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.823+0000", "entityId": 7220, "properties": {"text": "Subject: fwd : hea renewals & crawfish boil teaser\nshirley ,\nplease , enroll me in this organization .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 04 / 2000\n10 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njlpnymex @ aol . com on 03 / 22 / 2000 04 : 24 : 33 pm\nto : nalexander @ texasmonthly . emmis . com , blackj @ wellsfargo . com ,\nrdyerlaw @ houston . rr . com , sgoldfield @ tmh . tmc . edu , ggulen @ uh . edu ,\nlesley . guthrie @ cpa . state . tx . us , elizabethherring @ pzlqs . com ,\nrobyn _ howard @ aimfunds . com , vkamins @ enron . com , mmfoss @ uh . edu ,\nadrian . a . nunez @ usa . conoco . com , jack _ plunkett @ plunkettresearch . com ,\njames . stanton @ et . pge . com , dstowers @ watersinfo . com , woodybc @ bp . com\ncc :\nsubject : fwd : hea renewals tue , 21 mar 2000 17 : 20 : 25 - 0500\nreceived : from cobaltl . crescentcon . com ( cobaltl . crescentcon . com\n[ 208 . 244 . 126 . 12 ] ) by rly - ydol . mx . aol . com ( v 70 . 21 ) with esmtp ; tue , 21 mar\n2000 17 : 20 : 07 - 0500\nreceived : ( from httpd @ localhost ) by cobaltl . crescentcon . com ( 8 . 9 . 3 / 8 . 9 . 3 ) id\nqaao 2187 ; tue , 21 mar 2000 16 : 20 : 06 - 0600\ndate : tue , 21 mar 2000 16 : 20 : 06 - 0600\nmessage - id :\nto : jlpnymex @ aol . com\nfrom : houston energy association\nsubject : hea renewals & crawfish boil teaser\ndear hea member :\nthis week is the absolute last week you can renew and be included in the\nannual\ndirectory . just call the office ( 713 / 651 - 0551 ) and if you have no changes ,\nyou\ncan renew with your credit card over the phone .\nalso , our next event is april 11 th at woodrow ' s on chimney rock . hea is\nproud\nto announce that the new york mercantile exchange ( nymex ) is our corporate\nsponsor of the 8 th annual crawfish boil . nymex is celebrating their 10 th\nanniversary of natural gas futures trading , and will be awarding several door\nprizes that evening . this will be the last event at which to purchase one of\nthe remaining raffle tickets for the harley davidson sportster which will be\nawarded to some lucky winner at energy extravaganza on may 6 , 2000 .\nso renew your dues , and watch your fax and email for more details about april\n11 th !\nthis message was sent by :\nteresa knight , executive director\nhouston energy association ( hea )\nphone : ( 713 ) 651 - 0551\nfax : ( 713 ) 659 - 6424\ntknight @ houstonenergy . org\nif you would like to have your email address removed from our mailing list ,\nplease click the link below to the hea home page , where you will find a\nmini - form to remove your name automatically .\nhttp : / / www . houstonenergy . org /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.828+0000", "entityId": 7221, "properties": {"text": "Subject: re : ( no subject )\njana ,\nnext week would work for me .\ni am flying to san antonio from florida . i shall be back on sunday .\nwhat about friday or saturday next week ?\nvince\njlpnymex @ aol . com on 04 / 04 / 2000 09 : 59 : 01 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : ( no subject )\nvince ,\nnice to hear from you . we will miss you on thursday evening .\nwould you still like to join us for a movie sometime ?\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.833+0000", "entityId": 7222, "properties": {"text": "Subject: re : greetings from london ( to enron )\niris ,\nplease , feel free to give me a call when you have a few minutes .\ni shall be glad to chat with you .\nvince\niris . mack @ paribas . com on 03 / 30 / 2000 02 : 24 : 27 am\nto : vkamins @ enron . com\ncc : denis . autier @ paribas . com\nsubject : greetings from london ( to enron )\ndear dr . kaminski ,\nhow are you ? it was nice to meet you at the real options conference in\nnyc .\ni was intrigued by some of the comments in your conference talk . in\nparticular , by your use of real options to hedge financial options . this is\nsomething i am interested in as well .\nwhen you have some time , could we chat about this topic in a bit more\ndetail ?\nthanks for your time and consideration . hope to hear from you soon .\nregards ,\niris mack\n- - - - - - - - - - - - - - - -\nthis message is confidential ; its contents do not constitute a\ncommitment by bnp paribas group * except where provided\nfor in a written agreement between you and bnp paribas group * .\nany unauthorised disclosure , use or dissemination , either\nwhole or partial , is prohibited . if you are not the intended\nrecipient of the message , please notify the sender immediately .\n* bnp paribas group is a trading name of bnp sa and paribas sa\nce message est confidentiel ; son contenu ne represente en\naucun cas un engagement de la part du groupe bnp paribas *\nsous reserve de tout accord conclu par ecrit entre vous et le\ngroupe bnp paribas * . toute publication , utilisation ou diffusion ,\nmeme partielle , doit etre autorisee prealablement . si vous n ' etes\npas destinataire de ce message , merci d ' en avertir immediatement\nl ' expediteur .\n* le groupe bnp paribas est le nom commercial utilise par bnp sa et paribas sa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.838+0000", "entityId": 7223, "properties": {"text": "Subject: re : ( no subject )\njana ,\nsorry , i shall be in florida this thursday .\ni am speaking at a conference in key biscayne .\ntalk to you soon .\nvince\njlpnymex @ aol . com on 03 / 28 / 2000 09 : 32 : 16 am\nto : doris . a . abernathy @ ucm . com , nalexander @ texasmonthly . emmis . com ,\nblackj @ wellsfargo . com , ckcrews @ swbell . net , rclark @ nymex . com ,\nkcdunnagan @ aol . com , rdyerlaw @ houston . rr . com , ggulen @ uh . edu ,\nlesley . guthrie @ cpa . state . tx . us , elizabethherring @ pzlqs . com ,\neric . hoffman @ esso . com , khcnb @ arkansas . net , michael . jacobs @ hq . doe . gov ,\nvkamins @ enron . com , info @ . com , kimmorrell @ excite . com ,\nadrian . a . nunez @ usa . conoco . com , elizabeth _ oldroyd @ americancentury . com ,\nwoodybc @ bp . com\ncc :\nsubject : ( no subject )\ndear friends :\nit is time for rockin ' at rockefellers which benefits the houston symphony !\nthis is your chance to dance , your date to associate , and your option to\nauction !\njoin us thursday , april 6 , from 7 - 10 p . m . at the legendary rockefeller hallon\nhistoric washington avenue at heights blvd . dance the night away to the\nsounds of sammy relford and friends and enjoy an open bar and light hors\nd ' oeuvres , and a silent auction full of unique , celebrity items . tickets are\n$ 20 in advance , and $ 25 at the door . invite your friends , and join us there !\njana phillips", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.844+0000", "entityId": 7224, "properties": {"text": "Subject: re : hello\ndavid ,\nanother trip in the cards . you can catch me at the office on wed\nor next week at home .\nvince\n\" walkup , david c ( houstonas as 582 ) \" on 04 / 03 / 2000\n03 : 43 : 31 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : hello\ni am tentatively planning on being in the woodlands wednesday . should i\nstop by the house that night or do we need to get together tomorrow or\nwednesday morning ?\ndavid c . walkup\nfinancial consultant\n713 - 658 - 1685\n800 - 456 - 9712\n> - - - - - - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : monday , april 03 , 2000 4 : 35 pm\n> to : dwalkup @ pclient . ml . com\n> subject : re : hello\n>\n>\n> david ,\n>\n> can you stop by on wednesday ?\n>\n> i shall be gone for a few days after this day .\n>\n> vince\n>\n>\n>\n>\n>\n> \" walkup , david c ( houstonas as 582 ) \" on\n> 04 / 03 / 2000\n> 01 : 21 : 45 pm\n>\n> to : \" ' vincent kaminski ' \"\n> cc :\n> subject : hello\n>\n>\n> hello , vince .\n>\n> i guess you are still traveling a lot . i just wanted to say hello and see\n> when we can get together and look at getting some more money deposited\n> into\n> the cma for future investments .\n>\n> get back with me when you can .\n> david c . walkup\n> financial consultant\n> 713 - 658 - 1685\n> 800 - 456 - 9712\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n>\n>\n>\n>\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party . for your protection , avoid sending\n> identifying information , such as account , social security or card numbers\n> to\n> us or others . further , do not send time - sensitive , action - oriented\n> messages , such as transaction orders , fund transfer instructions , or check\n> stop payments , as it is our policy not to accept such items electronicall\n>\n>\n>\n>\n>\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party . for your protection , avoid sending\nidentifying information , such as account , social security or card numbers to\nus or others . further , do not send time - sensitive , action - oriented\nmessages , such as transaction orders , fund transfer instructions , or check\nstop payments , as it is our policy not to accept such items electronicall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.848+0000", "entityId": 7225, "properties": {"text": "Subject: re : for vince j kaminski ' s approval\napproved\nvince kaminski\ninformation risk management\n04 / 05 / 2000 03 : 50 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : for vince j kaminski ' s approval\nbelow you will find a copy of a request that is awaiting your approval .\nplease advise us as to your approval or rejection of this request by way of\nemail , since your system does not allow you to open the icon that was\nsubmitted by way of a doc link .\ni thank you in advance for your cooperation in this matter .\nleola barnett\ninformation risk management\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n04 / 05 / 2000 03 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system pending vp approval\nresource request how to find the status of this request . . .\ngeneral information initials :\nrequestor : jason sokolov / hou / ect phone : ( 713 ) 853 - 6286\nrequested for : jason sokolov / hou / ect\nrequest type : update access\nrc # : 100038 wo # :\ncompany # : 0011 priority : high\nmanager : mike a roberts vp : vince j kaminski\nlocation :\nin the request processing section , see the status column for each requested\nresource .\nlook at the overall status of the request in the title bar above . the status\nwill display closed when your request is complete .\nclick the \" status \" button below .\ncomments :\nrequest # : jsov - 4 f 8 r 44\nsubmitted : 01 / 04 / 2000 01 : 58 : 37 pm\nname cost status implementation comments\napplication / database\nbloomberg $ 1 , 800 . 00 monthly not started\nrequest processing path\nprocessed by status when comments\nmanager approved 01 / 20 12 : 57 pm\nvp\nsecurity\nimplementation\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n2\n3\n4\n5\n6 jason sokolov\njason sokolov\njason sokolov\njason sokolov\nmike a roberts 01 / 04 / 2000 01 : 56 : 27 pm\n01 / 04 / 2000 01 : 57 : 47 pm\n01 / 04 / 2000 01 : 58 : 30 pm\n01 / 04 / 2000 01 : 58 : 37 pm\n01 / 20 / 2000 12 : 57 : 16 pm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.853+0000", "entityId": 7226, "properties": {"text": "Subject: for vince j kaminski ' s approval\nbelow you will find a copy of a request that is awaiting your approval .\nplease advise us as to your approval or rejection of this request by way of\nemail , since your system does not allow you to open the icon that was\nsubmitted by way of a doc link .\ni thank you in advance for your cooperation in this matter .\nleola barnett\ninformation risk management\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n04 / 05 / 2000 03 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system pending vp approval\nresource request how to find the status of this request . . .\ngeneral information initials :\nrequestor : jason sokolov / hou / ect phone : ( 713 ) 853 - 6286\nrequested for : jason sokolov / hou / ect\nrequest type : update access\nrc # : 100038 wo # :\ncompany # : 0011 priority : high\nmanager : mike a roberts vp : vince j kaminski\nlocation :\nin the request processing section , see the status column for each requested\nresource .\nlook at the overall status of the request in the title bar above . the status\nwill display closed when your request is complete .\nclick the \" status \" button below .\ncomments :\nrequest # : jsov - 4 f 8 r 44\nsubmitted : 01 / 04 / 2000 01 : 58 : 37 pm\nname cost status implementation comments\napplication / database\nbloomberg $ 1 , 800 . 00 monthly not started\nrequest processing path\nprocessed by status when comments\nmanager approved 01 / 20 12 : 57 pm\nvp\nsecurity\nimplementation\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n2\n3\n4\n5\n6 jason sokolov\njason sokolov\njason sokolov\njason sokolov\nmike a roberts 01 / 04 / 2000 01 : 56 : 27 pm\n01 / 04 / 2000 01 : 57 : 47 pm\n01 / 04 / 2000 01 : 58 : 30 pm\n01 / 04 / 2000 01 : 58 : 37 pm\n01 / 20 / 2000 12 : 57 : 16 pm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.858+0000", "entityId": 7227, "properties": {"text": "Subject: marketpoint business plan summary\nvince :\nthanks very much for your interest in our marketpoint product , and thanks\nfor the hour you gave me this morning . as promised , i am enclosing our\nexecutive summary and first chapter from our business plan for you to take\nforward to your management as a prospective enron - marketpoint investment\ncollaboration . i want to reiterate that should enron elect to be the lead\ninvestor here , you will be exclusive in your industry if you want . if enron\nwants to be the lead and ensure the entire second round of resources we\nneed , we would not offer and investment opportunity to other trading\ncompanies , pipelines , or electrics until the third or subsequent rounds and\nthen only with your participation as a marketpoint board member . i am aware\nyou have coinvested with sap in the past and that you might want to coinvest\nwith them again . i presume you would not have a problem with\nnon - competitors such as epri , our management consulting service provider\npartner , or our vc partner ( but i would want guidance from you in this\narena ) . i think you would find our vc partner very suitable and very\nattractive . they have done several interesting energy and trading plays ,\nand they would provide good management skills i believe . i hope we can move\nforward together . i am looking forward to a positive response . thanks\nagain and best regards .\ndale nesbitt\nps : you might hear from drew ries of your investments group . i spoke with\nhim after speaking with you about many of the same issues .\n- longexecsum . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.863+0000", "entityId": 7228, "properties": {"text": "Subject: re : carl tricoli\ni think i will coordinate with zimin , and have guadalupe do some research on\nequities linked to corn price . initially , there will be some scenario\nanalysis done , and we can explore the possible use of options theory .\nvasant\nvince j kaminski\n04 / 05 / 2000 02 : 41 pm\nto : carl tricoli / corp / enron @ enron\ncc : zimin lu / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : carl tricoli\ncarl ,\ndepends if it is more like financial or insurance type hedging .\ni shall leave it to vasant to decide .\nvince\ncarl tricoli @ enron\n04 / 05 / 2000 11 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect , vince j kaminski / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , christopher a helfrich / hou / ect @ ect\nsubject : re : carl tricoli\nvince , thank you for the response . in the interim , we met with vasant\nshanbhogue yesterday and explained the deal and what we needed . should\nvasant continue to work on it , or would you still like us to loop in zimin\nlu ?\nvince j kaminski @ ect\n04 / 05 / 2000 10 : 11 am\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , carl tricoli / corp / enron @ enron\nsubject : carl tricoli\nzimin ,\ncarl tricoli ( 5 - 8958 ) will call you regarding help on ethanol ( hedging ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.867+0000", "entityId": 7229, "properties": {"text": "Subject: re : carl tricoli\ncarl ,\ndepends if it is more like financial or insurance type hedging .\ni shall leave it to vasant to decide .\nvince\ncarl tricoli @ enron\n04 / 05 / 2000 11 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect , vince j kaminski / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , christopher a helfrich / hou / ect @ ect\nsubject : re : carl tricoli\nvince , thank you for the response . in the interim , we met with vasant\nshanbhogue yesterday and explained the deal and what we needed . should\nvasant continue to work on it , or would you still like us to loop in zimin\nlu ?\nvince j kaminski @ ect\n04 / 05 / 2000 10 : 11 am\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , carl tricoli / corp / enron @ enron\nsubject : carl tricoli\nzimin ,\ncarl tricoli ( 5 - 8958 ) will call you regarding help on ethanol ( hedging ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.872+0000", "entityId": 7230, "properties": {"text": "Subject: cme and catex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 04 / 05 / 2000\n04 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlucy ortiz\n04 / 05 / 2000 04 : 02 pm\nto : joseph hrgovcic / hou / ect @ ect\ncc :\nsubject : cme and catex\nspotlight report\nexchange products seeing slow trading\ngavin souter\n03 / 20 / 2000\nbusiness insurance\npage 3\ncopyright ( c ) 2000 crain communications , inc . all rights\nreserved .\nexchange - based insurance products developed in recent years have\nbeen somewhat slow to get off the ground .\nalthough several exchanges have offered derivative contracts since\nthe mid - 1990 s to cover insurance risks , none so far has posted a\nsignificant volume of trades .\nfew insurers , reinsurers or policyholders have been drawn away\nfrom the traditional insurance markets , where capacity remains\nabundant and relatively cheap .\nas long as those traditional markets manage to weather major\nnatural catastrophes , the allure of the exchange - based products will\nremain limited , observers say .\nalso stifling the growth of the exchange - based contracts is the\nlimited number of contracts available , one expert noted . dealers , he\nsaid , are unable to secure a suitable hedge by laying off one\ncontract against another .\nalthough the various exchanges have had a good opportunity to\nestablish a widely used set of new risk financing products , that has\nnot been achieved , said morton lane , senior managing director ,\ncapital markets division at gerling global financial products in\nnew york .\nthe main problem with the existing exchanges is that they do not\noffer a sufficiently diverse array of products , he said . the only way\nto control the risks in the catastrophe options is to have a diversified\nportfolio of other contracts , and none of the exchanges currently\noffers a sufficiently broad range of options to provide for that\nhedge , he said .\nflorida windstorm options , for example , cannot be bought and then\nhedged in the same way that international business machines corp .\nstock options contracts can be hedged with ibm stock , mr . lane\nexplained .\nthe exchanges might be more attractive to investors if , in addition to\nnatural catastrophe options , they included options on other risks , he\nsaid . those might include , for example , satellite , aviation and crop\nindexes , mr . lane said . \" for the insurance buyer , such exchange\ninstruments would not represent the perfect risk transfer vehicle , but\nas long as they are quantifiable and indexable , they may represent a\ngood surrogate , \" he said .\nthe exchanges could also be used to create a derivatives market for\nover - the - counter securitized deals , if there are regular issuers of\ncatastrophe bonds , mr . lane said .\nthe soft insurance market has also hindered the growth of\nexchange - based insurance products , said sean f . mooney , senior\nvp and chief economist at guy carpenter & co . , the reinsurance\nbrokerage unit of marsh inc . in new york .\n\" the traditional market has been so competitive that people are not\nlooking for other ways of doing business , \" he said .\nat least in concept , the exchange - based deals are generally similar\nto the mortgage - backed securities that have been a huge success\nsince they were introduced in the 1970 s . \" there is a belief that\nalternative means of transferring risks will grow , but it is difficult to\npredict when , \" mr . mooney said .\ncurrently , the trading that is taking place typically involves\nestablished insurers and reinsurers , so the exchanges have not\nbrought substantial new capacity to the marketplace , he said .\nguy carpenter provided the index for the bermuda commodities\nexchange reinsurance products . the bce did not take off ,\nhowever , and was suspended last year after two years of little\nactivity .\nthe oldest of the insurance - related , exchange - based derivative\nproducts are the catastrophe options traded on the chicago board\nof trade , which began trading the options in 1996 .\ninitially , there was substantial interest in the options , but the soft\ntraditional market has hampered use of the contracts to hedge\ncatastrophe exposures , said carlton purty , an independent broker\nat the cbot who trades in options .\nno catastrophe option trades have been completed at the cbot\nso far this year , he said . last year , there was increased interest in\nthe contracts because of hurricane floyd , but few contracts were\ntraded , mr . purty said .\n\" i think a major , major catastrophe will have to happen before they\nreally take off , \" he said .\nthe contracts offer real protection , and options dealers are keen to\ntrade in a new niche , but the conventional insurance and reinsurance\nmarkets are so soft that few companies are turning to alternative\ncoverage options , mr . purty said .\nthe catastrophe risk exchange , located in princeton , n . j . , has\nradically changed its structure since it was originally announced in\nmid - 1996 , and it is well positioned to expand , said frank sweeney ,\nchief operating officer .\ncatex initially planned to be a computer - based facility for\nreinsurers that would enable them to exchange catastrophe risks\nand to build balanced portfolios .\nbut by the time the exchange was operational in november 1996 , it\nwas clear that most reinsurers and insurers interested in catex\nwanted only to buy and sell conventional reinsurance , mr . sweeney\nsaid .\nalthough there was some interest in risk swapping , only a handful of\nrisks were posted on the system , and none was traded , mr .\nsweeney said .\nconsequently , catex has become chiefly a \" cash for cover \"\nexchange , he said , noting that the risks reinsured on the exchange\ninclude property catastrophe coverage , aviation and liability\ncoverages . catex also trades industry loss warranties , where\ncoverage is triggered by an actual loss combined with an industry\nloss over an agreed threshold .\nother adjustments to the exchange included making it accessible\nthrough the internet in november 1998 . and late last year , catex\noffered users the ability to set up smaller networks , allowing them\nform groups whose members do business only with one another .\nsince its inception , catex has completed about 450 trades ,\ntotaling $ 400 million in premium and more than $ 3 billion in limits ,\nhe said . catex ' s roughly 160 subscribers include reinsurers ,\ninsurers and corporate entities that purchase coverage through their\ncaptives , mr . sweeney said .\n\" we obviously have a long way to go , but we are pretty satisfied\nwith what we have achieved so far , \" mr . sweeney said .\nthe exchange sees increased activity after major losses , as cedents\nseek to buy replacement coverage to offset depletions in their\nexisting cover , he said . for example , mr . sweeney said , there was\na flurry of activity after the european windstorms in december last\nyear .\nlast september , the chicago mercantile exchange entered the field\nof insurance - related derivatives when it began offering weather\nderivatives .\nthus far , 420 futures contracts have been traded , said larry\ngrannan , senior director in product marketing at the cme .\nsuch contracts are designed to allow businesses to hedge against\nweather - related losses . for example , a utility may sell less power in\na mild winter , and it would be able to use the futures to hedge a\nresultant fall in revenues .\nthe exchange first offered heat - based indexes for atlanta , chicago ,\ncincinnati and new york . in january , it added philadelphia , dallas ,\ndes moines , las vegas , tucson and portland , and it began offering\ncontracts based on cold weather .\ncurrently , most of the trades are between securities dealers\nthemselves , but , eventually , the contracts will likely be used more\nextensively by utilities and insurers , mr . grannan said .\nin addition , the futures contracts could be used as hedges for\nover - the - counter securitized deals , he said .\ncopyright , 2000 dow jones & company , inc . all rights reserved .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.876+0000", "entityId": 7231, "properties": {"text": "Subject: weather deriv . presentation\nvince ,\nhere is the info we discussed . if you need anything else , let me know\njoe\nx 33914\nour london group ' s web page :\nhttp : / / www . weather - risk . com /\n( especially check out the press presentations section ; it has a lot of good\ngeneral info )\npdo ' s\nhttp : / / www . srh . noaa . gov / bro / pdo . htm\nmore general info :\n( has a bit more on precip derivatives than usual , given the audience )\nfinally , according to our traders , cme trading activity is down to a couple\nof deals a month .\ni ' ll try to dig up some specific articles , but i suspect most of them are in\none way or another cme\npress releases so that they will gloss over the low liquidity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.881+0000", "entityId": 7232, "properties": {"text": "Subject: lunch with it and credit\ntanya ,\ncan you coordinate , in my absence , the lunch with it\nand credit .\nwe need the body count and reservation at the restaurant for the 14 th .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.886+0000", "entityId": 7233, "properties": {"text": "Subject: re : test\ntom ,\nthe conference in new york is held on may 18 and may 19 . i can visit wharton\nthe day before .\nvince kaminski\n\" piazze , thomas \" on 04 / 05 / 2000 08 : 40 : 55 am\nto : \" ' vince j kaminski ' \"\ncc :\nsubject : re : test\nvince : i enjoyed talking with you yesterday and look forward to receiving\ninformation relative to your visit to campus .\ntom piazze\n> - - - - - original message - - - - -\n> from : vince j kaminski [ smtp : vince . j . kaminski @ enron . com ]\n> sent : tuesday , april 04 , 2000 4 : 52 pm\n> to : piazzet @ wharton . upenn . edu\n> subject : test\n>\n>\n>\n> test\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.890+0000", "entityId": 7234, "properties": {"text": "Subject: re : sorry\nsee you at 11 : 30 in the hyatt lobby .\nvince j kaminski @ ect\n04 / 05 / 2000 03 : 01 pm\nto : michael j popkin / enron _ development @ enron _ development\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : sorry\nmonday 4 / 10 looks fine .\nvince\nmichael j popkin @ enron _ development\n04 / 05 / 2000 02 : 55 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : sorry\nvince ,\ni am not totally clear from your note on your availability . are you free\nnext monday ( 4 / 10 ) ?\nmichael\nvince j kaminski @ ect\n04 / 05 / 2000 02 : 45 pm\nto : michael j popkin / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : sorry\nmichael ,\nnext week starting friday . outr on thu and fri .\nvince\nmichael j popkin @ enron _ development\n04 / 05 / 2000 12 : 54 pm\nto : vince j kaminski @ ect\ncc :\nsubject : sorry\nvince ,\nsorry about lunch yesterday . i hope you got the message in time that i was\nout sick . i ' d like to rescheduel . when are you free ?\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.895+0000", "entityId": 7235, "properties": {"text": "Subject: summer rotation in rac\nvince ,\ni had a lunch meeting with rudi and vladi from rac , and i also met with ted\nmurphy .\nthey are supposed to get back with me by friday to confirm the proposed\nsummer rotation .\nso far i have a very positive impression of the group , and the projects that\nthey are involved in .\nthey also told me that rac and research people are often working on projects\ntogether , so i am sure that my ties with research are not going to go away\nwith me rotating to rac .\ni will keep you posted on further developments .\ncoordially ,\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.900+0000", "entityId": 7236, "properties": {"text": "Subject: re : energy derivatives conference - may 29 , toronto\nhi amy :\nthat is fine , vince was going to come on the 28 th anyway , but he will probably\nneed to come earlier - please let me know what time you have scheduled\nthe dinner so i can make his airline reservations .\nthanks !\nshirley\namy aldous on 04 / 06 / 2000 09 : 10 : 01 am\nto : \" shirley crenshaw \"\ncc :\nsubject : re : energy derivatives conference - may 29 , toronto\nhi shirley ,\ni just realized that i goofed on the dinner - it will be held on sunday ,\nmay 28 th instead of the 29 th . sorry about that !\ni hope your day is going well so far .\namy\nat 07 : 59 am 4 / 4 / 00 - 0500 , you wrote :\n>\n>\n> good morning amy :\n>\n> vince kaminski will need the following :\n>\n> an lcd projector to hook up to a lap tap for his presentation\n> he will have dinner with the conference organizers and speakers on the\n29 th .\n> he will need 2 nights ( the 28 th and the 29 th ) hotel reservations .\n>\n> he will send you an abstract shortly .\n>\n> thanks and have a great day !\n>\n> shirley crenshaw\n> 713 - 853 - 5290\n>\n>\n>\n>\n>\n>\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\namy aldous , conference co - ordinator\ncentre for advanced studies in finance\nuniversity of waterloo\nwaterloo , on n 2 l 3 gl\ntel : ( 519 ) 888 - 4567 ext . 5728\nfax : ( 519 ) 888 - 7562\nemail : aaldous @ uwaterloo . ca\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.907+0000", "entityId": 7237, "properties": {"text": "Subject: pjm two - settlement & market - based regulation market trials announ\nced\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\npjm two - settlement & market - based regulation market trials\npjm will be conducting two - settlement and regulation market trials in\npreparation for the implementation of its two - settlement and regulation\nmarkets\non june 1 , 2000 . the market trials are designed to provide pjm market\nparticipants the opportunity to submit generation offers , regulation offers ,\ndemand bids ( fixed and price - sensitive ) , increment offers , and decrement bids\nusing pjm emkt . pjm will clear the markets and provide the ability for pjm\nmarket participants to view two - settlement and regulation market results using\npjm emkt .\npjm will conduct three sets of market trials . the first and second trials will\nbe conducted on april 19 and on april 27 . the final market trials will be\nconducted on business days between may 15 and may 24 , 2000 .\nall pjm market participants are eligible to participate in the market trials\nfor\ntwo - settlement and regulation and must register in advance .\nregister now ! ! ! ! ( http : / / www . pjm . com / twoset / form _ twoset _ reg . html )\ndetails of the market trails are described in the attached document .\n>\n- 2 g 3 dol ! . doc\nquestions may be directed to pjm customer service at ( 610 ) 666 - 8980 .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.911+0000", "entityId": 7238, "properties": {"text": "Subject: thanks again\nvince and stinson ,\ni would like to thank you for helping me trying to find an internship . i\nreally appreciate the attention you gave to me .\ni am happy to tell you that i found an internship in my area of interest\nwith mfrgroup . it is a consulting company that provides management\nconsulting , advisory , finance , operations management and information\ntechnology services . i will be helping them to develop a new business\nrelated with e - commerce b - to - b .\nfrom now on , i will be concentrating my efforts in finding a full time\nposition , because i will graduate at the end of the year . i do not want to\nmiss enron ' s deadline , and i am still very interested in enrononline\nbusiness . please keep me updated if any opportunity arises .\nthanks again\ncarla di castro\nps : vince , i tried to call you today , but it looks like you will be out of\nthe office until monday . i just wanted to say thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.919+0000", "entityId": 7239, "properties": {"text": "Subject: re : copy room\nkevin ,\nyou have full charge . thanks for volunteering .\nliz\nkevin g moore\n04 / 06 / 2000 07 : 50 am\nto : barbara lewis / hou / ect @ ect , mike a roberts / hou / ect @ ect , frances\nortiz / hou / ect @ ect , liz m taylor / hou / ect @ ect , vince j kaminski / hou / ect @ ect ,\nshirley crenshaw / hou / ect @ ect\ncc :\nsubject : copy room\nto whom it may concern :\ni would like to know who will be responsible for keeping up with\nthe copy room near my area . eb 32 copy rooml\ni am aware that this is something that must be decided by\nwhoever is in charge however , i would like to participate in keeping this\nroom operational .\nplease note that i use this room more often than anyone else\nand i pay more attention to what is needed there on a daily basis .\ni am not asking for full charge over the room but i would like to assist\nwhereby , it will always be operational .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.927+0000", "entityId": 7240, "properties": {"text": "Subject: eprm training course\ndear vince ,\n?\ni hope you are well . i am leaving risk at the end of next week and before i\nleave i am producing the mathematics for energy derivatives training course .\ni have written a programme and attached it to this email and i wondered\nwhether you could have a look at it and let me know what you think . i also\nwondered whether you would be interested in speaking at the course .\n?\ni will give you a call on monday to it .\n?\nbest regards ,\n?\nvicky\n- mthsprg . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.933+0000", "entityId": 7241, "properties": {"text": "Subject: ees implementation\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nvalued customer :\nees production cut - over\nthe production ees application will be made available to the registered users\non\nmonday april 17 , 2000 for day - ahead scheduling . the production system will be\npreloaded with all schedules submitted through the current scheduling process\nto\nthat point ( pjm identifiers for these pre - loaded schedules will be provided\nthrough the usual scheduling practices ) . hourly schedules may be entered\nbeginning april 18 , 2000 .\nthe sandbox will be made unavailable at the time of production implementation .\nprior to april 17 , the https : / / eestest . pjm . com url will be reserved for the\nsandbox . beginning april 17 , the https : / / ees . pjm . com url will point to the\nproduction ees application .\nregistration\nusers with accounts on the sandbox will automatically have accounts on the\nproduction system . if you have not registered , please complete the\nauthorization and registration forms located at\nhttp : / / www . pjm . com / ees / ees _ index . html . the contact designated on the ees\nauthorization form will be faxed a list of user id ' s and passwords upon\ncompletion of the registration process .\nees support\npjm is enthusiastic about providing the responsive support you and your\ntechnical staff require . please contact our customer hotlines with your\nfunctional and technical inquiries .\n* functional support : ( 610 ) 666 - 8980\n* technical support : ( 610 ) 666 - 8886\n* email : eeshelp @ pjm . com\nquestions may be directed to pjm customer service at ( 610 ) 666 - 8980 .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.937+0000", "entityId": 7242, "properties": {"text": "Subject: enron net works\nit is becoming increasingly clear that the development of ecommerce will have\na significant and continuing impact on the conduct of business in a broad\narray of industries . through enrononline , enron has quickly become a major\ncatalyst for the transition to the web in the gas and electric industries .\nenrononline has been an enormous success since its launch . since launch , we\nhave completed 67 , 043 transactions on line , with a total dollar value of over\n$ 25 billion . enrononline is now the largest ecommerce site in the world .\nwe believe that the competitive success of enrononline is due to one very\nspecific reason . in addition to providing a web - based platform for\ntransactions , enron acts as principal to provide direct liquidity to the\nsite . we stand ready at all times , in any market conditions , to buy and sell\nat the posted price . this converts a \u0001 & bulletin board \u0001 8 ( the more typical\necommerce concept ) into a true market . there are very few , if any ,\ncompetitors that can provide this capability .\nwe are increasingly convinced that this competitive advantage can be\ndramatically expanded to other products and other geographies . if we are\ncorrect , this could provide an enormous new opportunity for growth for enron .\naccordingly , we are initiating a major new effort to capture this\nopportunity . effective today we are creating a new business , enron net\nworks , to pursue new market development opportunities in ecommerce across a\nbroad range of industries . it is likely that this business will ultimately\nbe our fifth business segment , joining transmission mike\nmcconnell , chief operating officer ; and jeff mcmahon , chief commercial\nofficer . these individuals will comprise the office of the chairman for\nenron net works and remain on the executive committee of enron corp .\nreplacing greg whalley as president and chief operating officer of enron\nnorth america is dave delainey , who will also join enron \u0001 , s executive\ncommittee .\nglobal technology will remain intact but will now be a part of enron net\nworks . it will maintain all of the same businesses and services as it did as\nan enron global function . philippe bibi will remain the chief technology\nofficer for all of enron corp . and continues to be responsible for the\ndevelopment of worldwide technology standards and platforms .\nenrononline , headed by louise kitchen , will also remain intact and will now\nbe a part of enron net works . the success of enrononline enables us to\nutilize this site as a model as we explore other markets . in addition , the\nfollowing individuals are included in enron net works along with their\ncurrent ecommerce initiatives : harry arora , public financial securities ; jay\nfitzgerald , new markets identification ; bruce garner , metals ; and greg piper ,\npulp and paper .\nover the next several weeks we will complete staffing and organizational\ndesign and will provide full details on this exciting new business\nopportunity .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.942+0000", "entityId": 7243, "properties": {"text": "Subject: job spec for junior quant\nhi dale ,\nplease see the job spec that i plan to get posted on the enron europe\ninternet site - please could you review before i hand over to hr ?\nthanks ,\nanjam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.946+0000", "entityId": 7244, "properties": {"text": "Subject: re : ( no subject )\njana ,\nsounds perfect . look forward to meeting\nyou on saturday . any suggestions regarding the movie ?\nvince\njlpnymex @ aol . com on 04 / 07 / 2000 08 : 28 : 53 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : ( no subject )\nvince\nyou missed a really fun party last night . the turnout was even better than\nwe had hoped - - about 250 people .\nhow about saturday , april 15 for a 5 : 00 pm ( or so ) movie and then dinner ?\nhave a good weekend , and i hope to see you tuesday evening at the hea / nymex\ncrawfish boil !\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.951+0000", "entityId": 7245, "properties": {"text": "Subject: academic seeks job\nfind below resume and email from someone who has built an electric generation\ncommitment optimization model and is job - hunting .\nhis skills look pretty good .\nshould we bring him for an interview ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 10 / 2000\n10 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : samer takriti @ enron communications on 04 / 07 / 2000 03 : 32 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : fw : resume\nanother one .\n- samer\n- - - - - forwarded by samer takriti / enron communications on 04 / 07 / 00 03 : 34 pm\n- - - - -\n\" stephen schwartz \"\n02 / 02 / 00 10 : 14 am\nto : \" samer takriti \"\ncc :\nsubject : fw : resume\n- - - - - original message - - - - -\nfrom : jorge f valenzuela [ mailto : \" jorgev + \" @ pitt . edu ]\nsent : monday , january 31 , 2000 9 : 46 pm\nto : stakrit @ ei . enron . com ; stakrit @ ei . enron . com\nsubject : resume\ndear dr . takriti ,\nmy name is jorge valenzuela . we met last year in the workshop , \" the new\ngeneration of unit commitment models \" . after your presentation , we had a\nbrief conversation . i defended my ph . d . dissertation in industrial\nengineering at the university of pittsburgh last december . currently , i am\nteaching at the business school of the university of pittsburgh , but my\ninterest is to work for an electric power company such as enron .\nduring the last three years , my work has revolved around modeling of\nelectric power systems . my ph . d . dissertation deals with the scheduling of\ngenerating units under the new operating environment . i have proposed a\nformulation that includes the option of trading at market - clearing prices\nwith a power pool . i model the market - clearing price by a stochastic\nprocess based on the stochastic processes of the generating unit\navailabilities and the aggregate load . i use probabilistic dynamic\nprogramming to obtain the schedule that maximizes the expected profit .\nin my resume , herewith attached , i have listed some other work that i have\ndone in modeling electric power systems . i would like to add that i am a\nvery versatile person with strong background in operations research ,\nstatistics , and information technology .\nplease call or e - mail me if you think that your company could make use of\na person as me . thank you very much for your kind consideration .\nbest regards ,\njorge valenzuela\n215 sandy dr .\nglenshaw , pa 15116\ntelephone : ( 412 ) 492 - 9886\nemail : jorgev @ pitt . edu\nenclosure\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.956+0000", "entityId": 7246, "properties": {"text": "Subject: re : lunch with it and credit\ntanya ,\nyes , we were talking about wednesday . my mistake .\nwednesday , april 19 works for me . let ' s do it then .\nvince\ntanya tamarchenko\n04 / 10 / 2000 02 : 13 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : lunch with it and credit\nshirley ,\nhere is the list of people who is going to attend this lunch :\ncredit : bill bradford , tanya rohauer , debbie bracket ( 3 ) ;\nresearch : vince kaminski , grant masson , vincent tang , tanya tamarchenko ( 4 ) ;\nit : jonathan le , ganapathy ramesh , winston jia , virendra patel , andrew\nchampion\n( and may be a few more , jonathan promised to get back with me with the\nheadcount ) ;\nrisk control : rudi zipter , ted murphy ( 2 ) .\ni understand that we were going to go not on 14 th , but next week .\nvince : would you like to do it on wednesday , april 19 , or friday , april 21 ?\nshirley , can you , please , make a reservation after vince ' s reply ?\nthank you ,\ntanya .\nvince j kaminski\n04 / 05 / 2000 02 : 51 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : lunch with it and credit\ntanya ,\ncan you coordinate , in my absence , the lunch with it\nand credit .\nwe need the body count and reservation at the restaurant for the 14 th .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.960+0000", "entityId": 7247, "properties": {"text": "Subject: re : monte carlo techniques\nzimin ,\nthis is the course description i got from hal . can you follow up with him\nto schedule a date for a high level presentation ? i think we should keep\nit to only 90 minutes or so . maybe you and kevin kindall can be the\npresenters .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 11 / 2000\n04 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nharold bertram\n04 / 11 / 2000 08 : 38 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : re : monte carlo techniques\nstinson , i feel i would benefit from understanding the monte carlo techniques\nand what it applies to , as well as when it is used these mc techniques . i think\ni could get several people interested . thanks , hal\nstinson gibner\n04 / 10 / 2000 09 : 40 am\nto : harold bertram / hou / ect @ ect\ncc :\nsubject : monte carlo techniques\nhal ,\nactually , i am no longer scheduled to speak at the risk conference on m - c\ntechniques . we could probably put together an internal training for you if\nyou want . i ' ll bring this up with vince at our staff meeting tomorrow .\nit would be helpful if you can describe for me the intended audience and the\ntypes of applications that would interest them .\nthanks ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.965+0000", "entityId": 7248, "properties": {"text": "Subject: re : wti crude price and ny harbor resid prices vs henry hub and new\nyork city gate gas by month\nmichael .\nthanks a lot for a very quick response . it looks fine .\nplease , forward it to margaret carson . please , explain the data source . she\nmay expect nymex as the data source for natgas and wti .\nvince\nmichael sergeev\n04 / 11 / 2000 09 : 41 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : wti crude price and ny harbor resid prices vs henry hub and new\nyork city gate gas by month\nvince , here ' s the numbers and two charts . the charts represent the same\ninformation but have different styles . one has all of the prices on the same\nscale , and the other has crude and resid on one scale and natural gas on\nanother .\nms", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.969+0000", "entityId": 7249, "properties": {"text": "Subject: wti crude price and ny harbor resid prices vs henry hub and new\nyork city gate gas by month\nmichael ,\ncan you , please , provide this information .\nlet me take a look at it before it ' s released .\nthanks .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2000\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret carson @ enron\n04 / 06 / 2000 04 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : wti crude price and ny harbor resid prices vs henry hub and new york\ncity gate gas by month\nvince i am doing some advocacy for ena to refute a law suit about\nchanges in\ngas prices spiking in new york in dec 1999 - jan / mar 2000 compared to\ndec 1998 - jan / mar 1999 .\nfor the december 1998 through march 2000 16 month period can you\nplease have someone in your group\nprovide me with a set of avg monthly prices for wti oil and ny harbor\nresid vs henry hub and ny city gate avg monthly prices during this\nperiod ? thanks for helping us out on this . margaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.974+0000", "entityId": 7250, "properties": {"text": "Subject: breckenridge offsite\nhello all :\nfyi . the breckenridge offsite has officially been cancelled .\nsheryl lara and i are notifying everyone today .\nthanks .\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.978+0000", "entityId": 7251, "properties": {"text": "Subject: re : resco database and customer capture\nsteve ,\nkrishna from my group . krishna can also advise you on resco participation .\nvince\nsteven r meyers @ ees\n04 / 11 / 2000 04 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resco database and customer capture\nvince ,\ni was not going to be involved directly in the meeting . who from either your\ngroup or from resco marketing should participate ?\nthanks ,\nsteve\nvince j kaminski @ ect\n04 / 11 / 2000 08 : 27 am\nto : steven r meyers / hou / ees @ ees\ncc : pinnamaneni krishnarao / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : resco database and customer capture\nsteve ,\nit makes sense to meet with abacus . retail marketing is very data intensive .\nif you set up a meeting with them ,\nplease , let me know .\nvince\nsteven r meyers @ ees\n04 / 11 / 2000 08 : 17 am\nto : timothy edward vail / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect\nsubject : resco database and customer capture\ntim ,\ni hope things are going well in resco . i think somebody from resco ( or\nresearch ) may be interested in the email i received below from brad davids .\nbrad is now working at abacus who works with residential customer patterns as\nwell as predictive modelling . he ' s going to be here the 25 and 26 of this\nmonth . i ' m not sure who is responsible for resco marketing , but i think they\nwould find this interesting . who should i send this to ? please let me know\nif anybody in resco may have any interest .\nthanks ,\nsteve\nps : vince , simply an fyi since they do focus on modelling and research .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven r meyers / hou / ees on 04 / 11 / 2000\n08 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbradley davids on 04 / 10 / 2000 08 : 35 : 32 pm\nto : \" ' steven . r . meyers @ enron . com ' \"\ncc :\nsubject : re : possible meeting ?\nsteve :\ni ' ll see if i can get in on the 25 th . . . will let you know , but i think\nit ' ll work .\njust to give you a very brief overview so you can think about who might be\ninterested , abacus has the largest transactional database of consumer buying\nbehavior in the world ( 89 million us households , 3 billion + purchases ) ,\nalong with sophisticated modeling capabilities to help predict customer\nresponse to various offers at the household level . given the critical need\nto reduce customer acquisition costs in retail energy markets , we believe\nthat our data and modeling can help energy retailers target their direct\nmarketing efforts toward the residential customers most likely to respond to\nwhatever the offer is - - improving the efficiency of mailings and other\npromotional campaigns ( so there is an efficiency angle , see ! )\nbecause our data allow the modeling of future buying behavior based on\nactual purchases , our results tend to be significantly more predictive than\ndemographic - based models . so far , the the response from utilities and \" new\nentrants \" i ' ve been talking to so far has been quite positive , and we have\nsome tests of our data underway , but we ' re interested in talking to as many\nplayers in the market as possible as we develop specific products to meet\nutility needs .\ni can provide more background if desired to whoever might be interested , but\ni guess the key immediate question is whether it might be worthwhile to\narrange a short meeting sometime on the 25 th of april with whoever at enron\nmight have interest in hearing what we ' re up to , and ( most importantly )\nlistening to what your data needs might be as you enter new markets .\nthanks very much for any help . . . i look forward to catching up and\nhearing how things are going for you .\nregards ,\nbrad davids\n303 - 410 - 5531\n- - - - - original message - - - - -\nfrom : steven . r . meyers @ enron . com [ mailto : steven . r . meyers @ enron . com ]\nsent : monday , april 10 , 2000 12 : 13 pm\nto : brad . davids @ abacus - direct . com\nsubject : re : possible meeting ?\nit ' d be great to meet on the 25 th in the afternoon . i have a flight in the\nevening . i ' m interested in hearing about life at abacus . i too have heard\nthat enron is getting back into the residential market . what type of\ndatabase do you have ? i might be able to find somebody for you to talk\nwith here .\n- steve\nbradley davids on 04 / 10 / 2000 12 : 04 : 00 pm\nto : \" steve meyers ( e - mail ) \"\ncc :\nsubject : possible meeting ?\nsteve :\nsorry we ' ve been unable to hook up . . . i can probably get down there on\nthe 25 th , if you ' re going to be in town that afternoon ? would love to catch\nup - - both on how things are going with ees and tell you about my new life .\nalso , i ' m hearing rumors that enron is about to get back into the\nresidential market in a big way - - you know anything about that ? anybody i\nshould talk to there about my huge database of consumer buying behavior ?\nthanks - - looking forward to connecting . . . i ' ll be travelling most of this\nweek , but you can leave a vm and let me know when i can call you , or try me\non the cell at 303 - 886 - 3458 .\nbest ,\nbrad davids\nbradley j . davids\nassociate vice president , utilities\nabacus direct , a division of doubleclick , inc .\n11101 west 120 th avenue\nbroomfield , co 80021 usa\ne - mail brad . davids @ abacus - direct . com\ntel 303 . 410 . 5531\nfax 303 . 410 . 5300\nwww . doubleclick . net\nwww . abacus - direct . com\n( see attached file : c . dtf )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.983+0000", "entityId": 7252, "properties": {"text": "Subject: re : resco database and customer capture\nsteve ,\nit makes sense to meet with abacus . retail marketing is very data intensive .\nif you set up a meeting with them ,\nplease , let me know .\nvince\nsteven r meyers @ ees\n04 / 11 / 2000 08 : 17 am\nto : timothy edward vail / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect\nsubject : resco database and customer capture\ntim ,\ni hope things are going well in resco . i think somebody from resco ( or\nresearch ) may be interested in the email i received below from brad davids .\nbrad is now working at abacus who works with residential customer patterns as\nwell as predictive modelling . he ' s going to be here the 25 and 26 of this\nmonth . i ' m not sure who is responsible for resco marketing , but i think they\nwould find this interesting . who should i send this to ? please let me know\nif anybody in resco may have any interest .\nthanks ,\nsteve\nps : vince , simply an fyi since they do focus on modelling and research .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven r meyers / hou / ees on 04 / 11 / 2000\n08 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbradley davids on 04 / 10 / 2000 08 : 35 : 32 pm\nto : \" ' steven . r . meyers @ enron . com ' \"\ncc :\nsubject : re : possible meeting ?\nsteve :\ni ' ll see if i can get in on the 25 th . . . will let you know , but i think\nit ' ll work .\njust to give you a very brief overview so you can think about who might be\ninterested , abacus has the largest transactional database of consumer buying\nbehavior in the world ( 89 million us households , 3 billion + purchases ) ,\nalong with sophisticated modeling capabilities to help predict customer\nresponse to various offers at the household level . given the critical need\nto reduce customer acquisition costs in retail energy markets , we believe\nthat our data and modeling can help energy retailers target their direct\nmarketing efforts toward the residential customers most likely to respond to\nwhatever the offer is - - improving the efficiency of mailings and other\npromotional campaigns ( so there is an efficiency angle , see ! )\nbecause our data allow the modeling of future buying behavior based on\nactual purchases , our results tend to be significantly more predictive than\ndemographic - based models . so far , the the response from utilities and \" new\nentrants \" i ' ve been talking to so far has been quite positive , and we have\nsome tests of our data underway , but we ' re interested in talking to as many\nplayers in the market as possible as we develop specific products to meet\nutility needs .\ni can provide more background if desired to whoever might be interested , but\ni guess the key immediate question is whether it might be worthwhile to\narrange a short meeting sometime on the 25 th of april with whoever at enron\nmight have interest in hearing what we ' re up to , and ( most importantly )\nlistening to what your data needs might be as you enter new markets .\nthanks very much for any help . . . i look forward to catching up and\nhearing how things are going for you .\nregards ,\nbrad davids\n303 - 410 - 5531\n- - - - - original message - - - - -\nfrom : steven . r . meyers @ enron . com [ mailto : steven . r . meyers @ enron . com ]\nsent : monday , april 10 , 2000 12 : 13 pm\nto : brad . davids @ abacus - direct . com\nsubject : re : possible meeting ?\nit ' d be great to meet on the 25 th in the afternoon . i have a flight in the\nevening . i ' m interested in hearing about life at abacus . i too have heard\nthat enron is getting back into the residential market . what type of\ndatabase do you have ? i might be able to find somebody for you to talk\nwith here .\n- steve\nbradley davids on 04 / 10 / 2000 12 : 04 : 00 pm\nto : \" steve meyers ( e - mail ) \"\ncc :\nsubject : possible meeting ?\nsteve :\nsorry we ' ve been unable to hook up . . . i can probably get down there on\nthe 25 th , if you ' re going to be in town that afternoon ? would love to catch\nup - - both on how things are going with ees and tell you about my new life .\nalso , i ' m hearing rumors that enron is about to get back into the\nresidential market in a big way - - you know anything about that ? anybody i\nshould talk to there about my huge database of consumer buying behavior ?\nthanks - - looking forward to connecting . . . i ' ll be travelling most of this\nweek , but you can leave a vm and let me know when i can call you , or try me\non the cell at 303 - 886 - 3458 .\nbest ,\nbrad davids\nbradley j . davids\nassociate vice president , utilities\nabacus direct , a division of doubleclick , inc .\n11101 west 120 th avenue\nbroomfield , co 80021 usa\ne - mail brad . davids @ abacus - direct . com\ntel 303 . 410 . 5531\nfax 303 . 410 . 5300\nwww . doubleclick . net\nwww . abacus - direct . com\n( see attached file : c . dtf )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.987+0000", "entityId": 7253, "properties": {"text": "Subject: re : your visit with vince kaminski - enron corp . research\ndear mr . fujita :\ni will be glad to make the dinner arrangements . i will make reservations at\nthe \" latour d ' argent \" restaurant located at 2011 ella blvd at t . c . jester .\nfor 6 : 30 pm on the 17 th . they do require a coat .\ni believe most of the cabs will know where it is - but just in case :\n\" take i - 45 north to 610 east , go to the ella blvd exit and turn left ( back\nunder the freeway ) on ella blvd . go to 2011 ella blvd . ( on the right ) . \"\nlook forward to having you at enron .\nthank you .\nsincerely ,\nshirley crenshaw\n713 - 853 - 5290\nmasayuki fujita on 04 / 05 / 2000 11 : 44 : 48 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : your visit with vince kaminski - enron corp . research\ndear ms . crenshaw :\nwe are very glad to see professor kaminski has taken our proposal to have\na dinner on\n17 th . i would like to take your very kind offer to arrange the place to have\ndinner . we\nare now arranging to stay four seasons hotel . it is just a second time to\nvisit houston\nand we will not have a car , but may use a taxi between hotel and restaurant .\nplease give\nus a recommendations . i wonder if four seasons have a good one .\nbest regards ,\nmasayuki fujita\nprincipal financial engineer\nfinancial technologies section\nmitsubishi research institute , inc .\n3 - 6 otemachi 2 - chome , chiyoda - ku\ntokyo 100 - 8141\njapan\ntel + 81 - 3 - 3277 - 0582\nfax + 81 - 3 - 3277 - 0521\n> dear mr . fujita :\n>\n> professor kaminski will be delighted to have dinner with you and your\n> colleague mr . yamada . i have put you on his calendar at 3 : 00 pm . with\n> dinner to follow in early evening .\n>\n> please let me know if you would like me to make dinner reservations\n> for you .\n>\n> sincerely ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron corp . research group\n> 713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.992+0000", "entityId": 7254, "properties": {"text": "Subject: visit ?\ndear vince ,\ni very much enjoyed speaking with you at lunch , if only briefly , at the\n\u0001 see\nhttp : / / www . stern . nyu . edu / ~ fdiebold .\nthe upshot : it seems to me that we would both benefit from a more\nextensive conversation . i\nwould be happy to visit you in houston to learn more about your\noperations , and to tell you more\nabout mine . please do let me know if you are interested .\nbest regards ,\nfrank diebold\n- -\nfrancis x . diebold\narmellino professor of finance\nstern school of business\nnew york university\n44 west 4 th street , k - mec , suite 9 - 190\nnew york , ny 10012 - 1126\nfdiebold @ stern . nyu . edu\nhttp : / / www . stern . nyu . edu / ~ fdiebold\n( 212 ) 998 - 0799 office telephone\n( 610 ) 585 - 4057 voicemail\n( 212 ) 998 - 0351 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:38.997+0000", "entityId": 7255, "properties": {"text": "Subject: invoice for ordered papers\nyou have ordered the following papers :\n- wp w 7613\nfoundations of technical analysis : computational algorithms , statistical\ninference , and empirical implementation\n- wp w 6250\npricing and hedging derivative securities in incomplete markets : an\ne - aritrage model\nthe total cost ( excluding shipping ) is :\n$ us 10\nshipping address :\nif you ordered papers for electronic delivery and experienced problems\ndownloading them , browse the following url ( s ) to download your paper\norders . the url ( s ) are valid for 7 days .\nif you receive duplicate bills , please send a note to .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.005+0000", "entityId": 7256, "properties": {"text": "Subject: re : test\nshirley ,\nplease , remind me about making arrangements for this trip later this week .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2000\n09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" piazze , thomas \" on 04 / 05 / 2000 02 : 47 : 10 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : test\nvince : my schedule indicates that should be a good day to be on campus , so\nlet ' s plan for it .\nplease forward to me those brief topic write - ups you promised so that i can\nschedule appropriate faculty to meet with you .\nthanks .\ntom\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : wednesday , april 05 , 2000 11 : 08 am\n> to : piazzet @ wharton . upenn . edu\n> cc : vince . j . kaminski @ enron . com ; shirley . crenshaw @ enron . com\n> subject : re : test\n>\n>\n> tom ,\n>\n> the conference in new york is held on may 18 and may 19 . i can visit\n> wharton\n> the day before .\n>\n> vince kaminski\n>\n>\n>\n>\n> \" piazze , thomas \" on 04 / 05 / 2000 08 : 40 : 55 am\n>\n> to : \" ' vince j kaminski ' \"\n> cc :\n> subject : re : test\n>\n>\n> vince : i enjoyed talking with you yesterday and look forward to receiving\n> information relative to your visit to campus .\n>\n> tom piazze\n>\n> > - - - - - original message - - - - -\n> > from : vince j kaminski [ smtp : vince . j . kaminski @ enron . com ]\n> > sent : tuesday , april 04 , 2000 4 : 52 pm\n> > to : piazzet @ wharton . upenn . edu\n> > subject : test\n> >\n> >\n> >\n> > test\n> >\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.013+0000", "entityId": 7257, "properties": {"text": "Subject: re : ( no subject )\njana ,\n\" cotton mary \" sounds good . it ' s a film by ismail merchant who collaborated\non \" a room with a view \" , \" howard ' s view \" , and other well known movies .\nit ' s a story about two anglo - indian sisters .\nvince\njlpnymex @ aol . com on 04 / 11 / 2000 08 : 02 : 45 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : ( no subject )\nvince ,\nthe angelika has several movies that would be good . i am familiar with all\nbut one - - \" cotton mary . \" do you know anything about it ?\nif you still haven ' t seen \" american beauty \" , that is fine with us . just let\nme know what sounds good to you . we are flexible when it comes to movies .\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.017+0000", "entityId": 7258, "properties": {"text": "Subject: re : proposed darden interview schedule - april 18\nsherri :\n2 : 00 pm on the 18 th of april is fine for vince kaminski .\nhis \" bio \" is attached . if you need anything else , please let me know .\nshirley\nenron north america corp .\nfrom : sherri sera @ enron 04 / 11 / 2000 03 : 42 pm\nto : bert frazier / hou / ect @ ect , karen owens / hou / ees @ ees , jewel meeks / enron\ncommunications @ enron communications , mercedes estrada / enron\ncommunications @ enron communications , bridget maronge / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\ncc :\nsubject : proposed darden interview schedule - april 18\nladies , i ' m trying to finalize this schedule prior to my vacation 4 / 13 - 14 .\nplease confirm that the time proposed below will work for your executive .\nadditionally , would you please e - mail me a bio for your executive ; the\nprofessors have requested it .\nthanks for your help . srs\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherri sera / corp / enron on 04 / 11 / 2000\n03 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sherri sera 03 / 31 / 2000 05 : 15 pm\nto : gene humphrey / hou / ect @ ect , lou l pai / hou / ees @ ees , ken rice / enron\ncommunications @ enron communications , andrew s fastow / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : bert frazier / hou / ect @ ect , karen owens / hou / ees @ ees , jewel meeks / enron\ncommunications @ enron communications , mercedes estrada / enron\ncommunications @ enron communications , bridget maronge / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : proposed darden interview schedule - april 18\nbelow is proposed schedule for the darden case video - taped interviews ; an\nhour has been scheduled for each of you ( except vince , for whom 1 - 1 / 2 hours\nhas been requested ) , however , you may be finished in less time . the location\nis yet to be determined , but will most likely take place in a vacant office\nof 50 m .\nplease let me know of any conflicts with this proposed schedule . i ' ll send\nalong additional information as it becomes available . thank you and have a\nnice weekend . srs\n8 : 00 a gene humphrey\n9 : 00 a lou pai\n10 : 00 a ken rice\n11 : 00 a andy fastow\n12 : 00 p break\n2 : 00 p vince kaminski\n3 : 30 p jeff skilling", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.022+0000", "entityId": 7259, "properties": {"text": "Subject: invoice for ordered papers\nshirley ,\nthe invoice for papers i have ordered on - line .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2000\n01 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnber working paper catalog on 04 / 11 / 2000 10 : 09 : 59 am\nto : vkamins @ enron . com\ncc :\nsubject : invoice for ordered papers\nyou have ordered the following papers :\n- wp w 7613\nfoundations of technical analysis : computational algorithms , statistical\ninference , and empirical implementation\n- wp w 6250\npricing and hedging derivative securities in incomplete markets : an\ne - aritrage model\nthe total cost ( excluding shipping ) is :\n$ us 10\nshipping address :\nif you ordered papers for electronic delivery and experienced problems\ndownloading them , browse the following url ( s ) to download your paper\norders . the url ( s ) are valid for 7 days .\nif you receive duplicate bills , please send a note to .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.026+0000", "entityId": 7260, "properties": {"text": "Subject: 4 : 00 pm budget meeting\ndave will continue to have the friday afternoon \" budget meetings \" with one\nchange : effective april 21 , 2000 the time will change from\n4 : 00 pm to 3 : 00 pm .\ndate : fridays this friday , aril 14 , 2000 remains at 4 : 00 pm\ntime : 3 : 00 pm - 4 : 00 pm\nlocation : 3321\ntopic : budget meeting\nif you have any questions / conflicts , please feel free to call me or bev\n( 5 - 7857 ) .\nthanks ,\nkay 3 - 0643", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.031+0000", "entityId": 7261, "properties": {"text": "Subject: resume , cv . , etc .\ndear mr . kaminski :\nas explained over the phone , i have been doing political , economic , and\nstrategic analysis for terry thorn , formerly head of government affairs for\nei . most of my work has been focussed on asia , a region in which i have deep\nexperience and speak major languages . wtih the restructuring of the\nasia - pacific group , terry is moving to a new function and i am seeking a new\nrole . since i have been based in washington , dc , with more frequent trips to\nasia than to houston , i still feel as though i don ' t know my way around the\ncompany , a disadvantage in my current situation . several people have\nrecommended that i talk to you about your shop , but more generally if you\nhave any ideas about where i might fit in , i would appreciate them .\ni am attaching my resume , cv and a biographical sketch as you requested ,\nedith terry\nenron / dc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.035+0000", "entityId": 7262, "properties": {"text": "Subject: re : hi\nvince :\ni think full time employment starting in about six months seems to be the\nbest option . it is probably best to get my dissertation wrapped up before\ntaking on additional commitments .\nregards\nzeigham\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : zkhokher @ mail . utexas . edu\ncc : vince . j . kaminski @ enron . com ;\nstinson . gibner @ enron . com\ndate : tuesday , april 11 , 2000 10 : 25 am\nsubject : re : hi\nzeigham ,\nwe discussed two options ( not necessarily mutually exclusive ) :\n1 . summer internship\n2 . full employment .\nare you interested exclusively in full employment ?\ni need the answer asap , as we are going to discuss the additional summer\nintern positions this afternoon .\nvince\nzkhokher @ mail . utexas . edu on 04 / 11 / 2000 01 : 06 : 14 pm\nto :\ncc :\nsubject : hi\nvince :\nit was very nice talking to you at the texas finance festival and i think\nthe telecom market that enron is entering is very interesting and very\nlucrative . i would be very interested in working in that segment for\nenron .\nhowever , i talked to sheridan about this oppurtunity and he said that it\nis probably going to be another six months before i finish my\ndissertation . so while i am definitely interested , the start date will\nprobably have to be around that time .\nat any rate , it was a pleasure meeting you again and hopefully once i have\ndefended my dissertation we can discuss employment oppurtunities in\ngreater detail .\nregards\nzeigham\nzkhokher @ mail . utexas . edu\n512 - 471 - 1676", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.041+0000", "entityId": 7263, "properties": {"text": "Subject: re : hi\nzeigham ,\nwe discussed two options ( not necessarily mutually exclusive ) :\n1 . summer internship\n2 . full employment .\nare you interested exclusively in full employment ?\ni need the answer asap , as we are going to discuss the additional summer\nintern positions this afternoon .\nvince\nzkhokher @ mail . utexas . edu on 04 / 11 / 2000 01 : 06 : 14 pm\nto :\ncc :\nsubject : hi\nvince :\nit was very nice talking to you at the texas finance festival and i think\nthe telecom market that enron is entering is very interesting and very\nlucrative . ? i would be very interested in working in that segment for enron .\n?\nhowever , i talked to sheridan about this oppurtunity and he said that it is\nprobably going to be another six months before i finish my dissertation . ? so\nwhile i am definitely interested , the start date will probably have to be\naround that time . ?\n?\nat any rate , it was a pleasure meeting you again and hopefully once i have\ndefended my dissertation ? we can discuss employment oppurtunities in greater\ndetail .\n?\n?\nregards\nzeigham\nzkhokher @ mail . utexas . edu\n512 - 471 - 1676", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.045+0000", "entityId": 7264, "properties": {"text": "Subject: yvan chaxel\nyour name was listed by yvan as a reference on his application for a graduate\nschool tuition loan . your assistance in this process is greatly appreciated .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.050+0000", "entityId": 7265, "properties": {"text": "Subject: free two week ft - online trial\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 12 / 2000\n12 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrita hartfield @ enron\n04 / 12 / 2000 10 : 32 am\nto : mike a roberts / hou / ect @ ect , mary solmonson / hou / ect @ ect , amy\noberg / hou / ees @ ees , john a cote / hou / ect @ ect , elizabeth linnell / hou / ees @ ees ,\nlynnette barnes / hou / ees @ ees , bruce ferrell / hou / ect @ ect , amr\nibrahim / enron _ development @ enron _ development , fiona grant / lon / ect @ ect , michael\ngrimes / enron _ development @ enron _ development , kyran hanks / lon / ect @ ect , julia\nkazibwe / enron _ development @ enron _ development , patrick keene / hou / ees @ ees , harry\nkingerski / hou / ees @ ees , valeria lima / enron _ development @ enron _ development ,\nrobert neustaedter / enron _ development @ enron _ development , carol\nnorth / enron _ development @ enron _ development , mike g\ncc :\nsubject : free two week ft - online trial\nenron has been given a two week free trail [ until 4 / 25 / 00 ] for ft online .\nthe free trial has unlimited users so please feel free to pass this along to\nanyone who may be interested .\nvarious persons within enron currently purchase selected hard copies of ft ' s\nnewsletters for 18 , 331 british pounds . it would be much more efficient and\ncheaper if all eleven newsletters [ 13 , 617 british pounds for 2 users plus\nincremental costs for each additional user ] were purchased on - line and the\ncost shared amoung the users .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita hartfield / corp / enron on 04 / 12 / 2000\n11 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvanessa . norton @ ft . com ( vanessa norton ) on 04 / 12 / 2000 03 : 54 : 04 am\nto : rhartfi @ enron . com\ncc :\nsubject :\ndear rita\nfollowing our conversation yesterday , i am pleased to offer you two weeks\ntrial\naccess to our 22 online energy newsletters .\nthe prices for a years subscription to our online newsletters are as follows :\nproduct number of users price ( for all eleven newsletters together )\noil market report 2 o 9 , 530 . 00\naisa gas report 3 ol 1 , 120 . 00\nuk gas report 4 ol 2 , 180 . 00\npower in aisa 5 ol 3 , 240 . 00 ( o 900 . 00 per extra user )\ninternational coal report 10 ol 7 , 740 . 00 ( o 734 . 00 per extra user )\npower in latin america 25 o 28 , 750 . 00 ( o 544 . 00 per extra user )\nmiddle east energy\neuropean energy report\nafrican energy\nglobal private power\nglobal water report\nthe prices include a multiple product discount ( for example , 2 users for all\neleven newsletters would normally be ol 3 , 617 . 00 ) and as you will see the price\nfor extra users decreases by quantity of users to the publications .\nyour trial will last until 25 / 4 / 00 .\nplease find enclosed the access codes to ft energy online .\ngo to www . online . ftenergy . com\nclick on login and type in the following :\niu enront\npassword : enront\nthe current functionality of the service includes a fully searchable archive\nthat goes back to the first issue , an advanced full text search , acrobat pdf\nfiles of the printed newsletter that can be downloaded for personal use in its\noriginal printed version and the ability to download tables in csv format into\nexcel files .\nplease do not hesitate to contact me if you have any further questions about\nthe service or wish to have prices for individual publications sent .\ni look forward to your comments .\nyours sincerely\nvanessa norton ( + 44 207 896 2282 )\nft energy online\n* please visit the web site of the financial times at : *\n* http : / / www . ft . com *\n* *\n* this e - mail is intended for the use of the addressee only and may *\n* contain confidential information . if you are not the intended *\n* recipient , you are hereby notified that any use or dissemination *\n* of this communication is strictly prohibited . *\n* if you receive this transmission in error , please notify us *\n* immediately then delete this e - mail .\n* *\n* *\n* postmaster @ ft . com *\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.055+0000", "entityId": 7266, "properties": {"text": "Subject: talon\nvince :\nhere is the document sent by ryan today . i did not have the chance to look at\nit yet .\npaulo issler\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paulo issler / hou / ect on 04 / 12 / 2000 04 : 19\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nryan siurek @ enron\n04 / 12 / 2000 10 : 05 am\nto : paulo issler / hou / ect @ ect\ncc :\nsubject : re : draft analysis\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ryan siurek / corp / enron on 04 / 12 / 2000\n10 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital management\nfrom : trushar patel 04 / 11 / 2000 09 : 49 am\nto : ryan siurek / corp / enron @ enron\ncc :\nsubject : re : draft analysis\n- - - - - - - - - - - - - - - - - - - - - - forwarded by trushar patel / corp / enron on 04 / 11 / 2000\n09 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nian . c . dsouza @ us . pwcglobal . com on 04 / 04 / 2000 01 : 42 : 34 pm\nto : trushar . patel @ enron . com\ncc : steven . j . stampf @ us . pwcglobal . com , timothy . luehrman @ us . pwcglobal . com\nsubject : re : draft analysis\nhi trushar\nplease find attached our draft analysis . it is still very preliminary as we\nhave not been provided the latest version of legal documents and so the\nanalysis\nreflects our understanding of the economics of the transaction as outlined to\nus\nbased on discussions with enron and available prior draft documentation . .\nthe analysis uses the enron share price as of march 28 , 2000 ( $ 72 . 81 ) and\nassumes the ljm 2 distribution is based on $ 30 m or 25 % irr . we anticipated\nthat\nthis might reach 30 % irr based on enron discussions with ljm 2 .\nplease call steve stampf ' s phone number for tomorrow ' s conference call at\n9 . 30 am\nour time on 212 597 3162 .\nregards\n( see attached file : raptor v 5 . ppt )\nthe information transmitted is intended only for the person or entity to which\nit is addressed and may contain confidential and / or privileged material . any\nreview , retransmission , dissemination or other use of , or taking of any action\nin reliance upon , this information by persons or entities other than the\nintended recipient is prohibited . if you received this in error , please\ncontact the sender and delete the material from any computer .\n- raptor v 5 . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.060+0000", "entityId": 7267, "properties": {"text": "Subject: re : resco database and customer capture\nsteve :\nosman has been working on setting up this meeting and its agenda . i already\ninformed john henderson about this as he is the main person from resco . both\nosman and i will be involved from the research modeling angle . osman will\ncontact you today regarding this .\nthanks ,\nkrishna .\nvince j kaminski\n04 / 11 / 2000 05 : 27 pm\nto : steven r meyers / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect\nsubject : re : resco database and customer capture\nsteve ,\nkrishna from my group . krishna can also advise you on resco participation .\nvince\nsteven r meyers @ ees\n04 / 11 / 2000 04 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resco database and customer capture\nvince ,\ni was not going to be involved directly in the meeting . who from either your\ngroup or from resco marketing should participate ?\nthanks ,\nsteve\nvince j kaminski @ ect\n04 / 11 / 2000 08 : 27 am\nto : steven r meyers / hou / ees @ ees\ncc : pinnamaneni krishnarao / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : resco database and customer capture\nsteve ,\nit makes sense to meet with abacus . retail marketing is very data intensive .\nif you set up a meeting with them ,\nplease , let me know .\nvince\nsteven r meyers @ ees\n04 / 11 / 2000 08 : 17 am\nto : timothy edward vail / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect\nsubject : resco database and customer capture\ntim ,\ni hope things are going well in resco . i think somebody from resco ( or\nresearch ) may be interested in the email i received below from brad davids .\nbrad is now working at abacus who works with residential customer patterns as\nwell as predictive modelling . he ' s going to be here the 25 and 26 of this\nmonth . i ' m not sure who is responsible for resco marketing , but i think they\nwould find this interesting . who should i send this to ? please let me know\nif anybody in resco may have any interest .\nthanks ,\nsteve\nps : vince , simply an fyi since they do focus on modelling and research .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven r meyers / hou / ees on 04 / 11 / 2000\n08 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbradley davids on 04 / 10 / 2000 08 : 35 : 32 pm\nto : \" ' steven . r . meyers @ enron . com ' \"\ncc :\nsubject : re : possible meeting ?\nsteve :\ni ' ll see if i can get in on the 25 th . . . will let you know , but i think\nit ' ll work .\njust to give you a very brief overview so you can think about who might be\ninterested , abacus has the largest transactional database of consumer buying\nbehavior in the world ( 89 million us households , 3 billion + purchases ) ,\nalong with sophisticated modeling capabilities to help predict customer\nresponse to various offers at the household level . given the critical need\nto reduce customer acquisition costs in retail energy markets , we believe\nthat our data and modeling can help energy retailers target their direct\nmarketing efforts toward the residential customers most likely to respond to\nwhatever the offer is - - improving the efficiency of mailings and other\npromotional campaigns ( so there is an efficiency angle , see ! )\nbecause our data allow the modeling of future buying behavior based on\nactual purchases , our results tend to be significantly more predictive than\ndemographic - based models . so far , the the response from utilities and \" new\nentrants \" i ' ve been talking to so far has been quite positive , and we have\nsome tests of our data underway , but we ' re interested in talking to as many\nplayers in the market as possible as we develop specific products to meet\nutility needs .\ni can provide more background if desired to whoever might be interested , but\ni guess the key immediate question is whether it might be worthwhile to\narrange a short meeting sometime on the 25 th of april with whoever at enron\nmight have interest in hearing what we ' re up to , and ( most importantly )\nlistening to what your data needs might be as you enter new markets .\nthanks very much for any help . . . i look forward to catching up and\nhearing how things are going for you .\nregards ,\nbrad davids\n303 - 410 - 5531\n- - - - - original message - - - - -\nfrom : steven . r . meyers @ enron . com [ mailto : steven . r . meyers @ enron . com ]\nsent : monday , april 10 , 2000 12 : 13 pm\nto : brad . davids @ abacus - direct . com\nsubject : re : possible meeting ?\nit ' d be great to meet on the 25 th in the afternoon . i have a flight in the\nevening . i ' m interested in hearing about life at abacus . i too have heard\nthat enron is getting back into the residential market . what type of\ndatabase do you have ? i might be able to find somebody for you to talk\nwith here .\n- steve\nbradley davids on 04 / 10 / 2000 12 : 04 : 00 pm\nto : \" steve meyers ( e - mail ) \"\ncc :\nsubject : possible meeting ?\nsteve :\nsorry we ' ve been unable to hook up . . . i can probably get down there on\nthe 25 th , if you ' re going to be in town that afternoon ? would love to catch\nup - - both on how things are going with ees and tell you about my new life .\nalso , i ' m hearing rumors that enron is about to get back into the\nresidential market in a big way - - you know anything about that ? anybody i\nshould talk to there about my huge database of consumer buying behavior ?\nthanks - - looking forward to connecting . . . i ' ll be travelling most of this\nweek , but you can leave a vm and let me know when i can call you , or try me\non the cell at 303 - 886 - 3458 .\nbest ,\nbrad davids\nbradley j . davids\nassociate vice president , utilities\nabacus direct , a division of doubleclick , inc .\n11101 west 120 th avenue\nbroomfield , co 80021 usa\ne - mail brad . davids @ abacus - direct . com\ntel 303 . 410 . 5531\nfax 303 . 410 . 5300\nwww . doubleclick . net\nwww . abacus - direct . com\n( see attached file : c . dtf )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.064+0000", "entityId": 7268, "properties": {"text": "Subject: re : chase\nchris ,\nwe don ' t have yet any report on broadband that might help you , developed\ninternally\nby my group . we are working on a tutorial and we shall send you a copy when\nit ' s ready .\nthe person who can give you an introduction to this market is ravi\nthuraisingham .\nvince\nchris holmes @ ees\n04 / 05 / 2000 09 : 55 pm\nsent by : chris holmes @ ees\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : chase\nvince :\ni am working now in ees as the chase national account manager and am\ndeveloping new products to sell chase . one of the products i am working on\nintegrates the provision of broad band with a package of computer\nhardware and software for a company ' s employees .\ni can explain more if you are interested .\ni understand you put together a report on broadband which has helped educate\npeople as to the technology and economics . can i get a copy ? .\nalso do you have any analyses on chase that might help me detect other\nopportunities ?\nis there anyone on your staff with whom i should talk ?\nthanks\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.069+0000", "entityId": 7269, "properties": {"text": "Subject: a visit\njoe ,\nthis is a message from the japanese guy interested in energy risk management .\nplease , let me know if you want somebody from your organization at the\nmeeting . he will be here\nnext monday at 3 : 00 p . m .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 12 / 2000\n06 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmasayuki fujita on 03 / 31 / 2000 08 : 36 : 00 am\nto : vkamins @ enron . com\ncc : eugenio perez\nsubject : a visit\nprofessor vincent kaminski\nvice president of research\nenron corp .\ndear professor kaminski\ni , masayuki fujita was the only japanese attendee of the energy\nderivatives seminar\nin houston last december and a member of japanese consultation firm :\nmitsubishi research\ninstitute , inc . i would be very honored if you can meet with me 17 or 18\napril after\nattending energy trading summit in 12 th - 14 th . as you know , japanese\nelectricity trading is\non the way of deregulation beneficial to the consumers from a long stage of\nthe nine major\ncompanies ' regional monopoly . we are giving a hand to help the ministry and\nindustry to\nfind the right course of them . i and my colleague yamada , who will attend risk\npublications monte calro seminar in four seasons hotel , would like to visit\nyou and your\ncompany for studying the sophisticated risk management at enron . in return ,\nwe may give\nyou the information about recent institutional progress and major electricity\ncompanies\nresponse in japan .\nwe are now personally translating your book \" managing energy price risk \"\nsecond\nedition and wondering if you have not given the right to publish in japanese\nand nay give\nus the chance to help you introduce modern technology to manage energy risk\nin the\njapanese energy industry .\ni do not hope japanese english power prevent me to pass my sincerity to\nyou and i can\nvisit you soon .\nbest regards ,\nmasayuki fujita\nprincipal financial engineer\nfinancial technologies section\nmitsubishi research institute , inc .\n3 - 6 otemachi 2 - chome , chiyoda - ku\ntokyo 100 - 8141\njapan\ntel + 81 - 3 - 3277 - 0582\nfax + 81 - 3 - 3277 - 0521", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.073+0000", "entityId": 7270, "properties": {"text": "Subject: sample day - ahead lmp postings\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nfrom 04 / 10 / 00 through 05 / 12 / 00 , pjm will be posting sample day - ahead prices\nproduced using the two - settlement software and\ngeneration bids and ties schedules as bid into the pjm real time market .\nperturbations may be applied to the demand bids in order\nto illustrate the impact of total demand mws bid on day - ahead lmps ( such\nperturbations will be discussed in the day - ahead case description\nfile ) . sample prices will be posted for weekdays only . these prices are for\nillustration purposes only . they will not be used in any pjm\nsettlements . sample lmps will be posted in a csv file using the following name\nconvention yyyymmdd - da . csv . the names of files initially\nposted for 4 / 10 / 00 and 4 / 11 / 00 have been changed to this name convention .\nquestions may be directed to pjm customer service at ( 610 ) 666 - 8980 .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.078+0000", "entityId": 7271, "properties": {"text": "Subject: ees organizational announcement\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n04 / 12 / 2000 12 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nosman sezgen @ ees\n04 / 12 / 2000 11 : 58 am\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : ees organizational announcement\n- - - - - - - - - - - - - - - - - - - - - - forwarded by osman sezgen / hou / ees on 04 / 12 / 2000 11 : 57\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlou pai and tom white\n04 / 12 / 2000 11 : 40 am\nsent by : karen owens\nto : all ees employees\ncc :\nsubject : ees organizational announcement\nat the core of ees \u0001 , s success has been our willingness to adapt to and embrace\nchange . tom and i are reminded of this again as we announce the departure of\njohn echols , whose extraordinary capabilities have been instrumental to the\nsuccessful launch of ees , and to our tremendous growth in the two - and - a - half\nyears since then . john is continuing his career at enron .\nmarty sunde , currently managing director of sales joe earle , president\nand ceo of enron facility services ; kevin hughes , vice president and chief\naccounting officer ; dan leff , managing director of account and delivery\nmanagement ; danny mccarty , managing director of ees - europe ; mark muller ,\nmanaging director of corporate development ; vicki sharp , managing director\nand general counsel ; and beth tilney , managing director of marketing ,\ncommunications and human resources .\nthank you for your continued commitment to ees . we \u0001 , ve just completed a great\nquarter and are well positioned to meet or exceed our targets this year ! in\nfact , this is the seventh consecutive quarter for record levels of new\ncontracting activity and we \u0001 , ve more than doubled our first quarter sales of\n1999 . keep up the great work !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.082+0000", "entityId": 7272, "properties": {"text": "Subject: maths course\ndear vince ,\n?\nfurther to our telephone conversation , that you very much for agreeing to\nparticipate in the financial mathematics training course . as discussed i\nwould be delighted if you could present the following sessions :\n?\npractical techniques to price exotic energy options\n?\nevaluating methodologies for pricing exotics\n? ? ? assessing the pros and cons of a partial differential equation\n? ? ? applying multi - factor models to price exotic energy derivatives\n? ? ? building trees for pricing and hedging exotics\npricing\n? ? ? asian options\n? ? ? bermudan and american style options\n? ? ? spread and spark spread options\n? ? ? multi - commodity options\npractical example : ? ? ? pricing swing options\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? using monte carlo techniques to value swing\noptions\npractical example : ? ? ? pricing a multi - commodity option\n?\nanalysing approaches to weather derivatives valuation\n?\nunderstanding the mechanics of weather derivatives\n? ? ? heating and cooling degree day swaps\n? ? ? precipitation contracts\napplying probablistic approaches to pricing weather derivatives\n? ? ? stochastics\n? ? ? monte carlo techniques\nusing historical methodologies and black - scholes for pricing weather\nderivatives\nvalusing long term transactions\npractical example\n?\nplease could you let me know by the close of business on thursday if you\nwould like to make any changes to the bullet points . i have printed out your\nbiography below and please could you also let me know if you would like to\nmake any changes to it .\n?\nvince kaminski , enron capital & trade resources\nvince kaminski is vice president and head of research at enron risk\nmanagement and trading , a unit of enron capital & trade resources . mr\nkaminksi joined enron in 1992 . previously he was vice president in the\nresearch department at salomon brothers .\n?\nthanks again vince and i ? look forward to speaking to you on friday .\n?\nbest regards ,\n?\nvicky", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.087+0000", "entityId": 7273, "properties": {"text": "Subject: re : infocast ' s valuing electric power assets and companies : a real\noptions perspective\ngood morning ,\ni am sorry , to hear that you will not be able to join us - would know of\nanybody else at enron who would possibly be interested in presenting at our\nconference ?\nthank you for your assistance in this matter - - - - - britta - - - -\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , april 13 , 2000 6 : 08 am\nto : brittab @ . com\ncc : vince j kaminski\nsubject : re : infocast ' s valuing electric power assets and companies : a\nreal options perspective\nbritta ,\nthanks for your message .\ni have several commitments at the time of the conference\nand have to decline with regret .\nvince\n\" britta bothe \" on 04 / 12 / 2000 03 : 52 : 46 pm\nplease respond to\nto :\ncc :\nsubject : infocast ' s valuing electric power assets and companies : a real\noptions\nperspective\ndear mr . kaminsky ,\nas i mentioned on your voice mail , infocast is going to host an ? valuing\nelectric power assets and companies : a real options perspective ? conference\nto be held on july 31 - august 2 , 2000 , in chicago , il - i would like to\nexplore your or your organization ' s possible participation at this event\nwith you . this conference has been designed to bring together industry\nprofessionals , like you , to provide the latest details on a \" real options \"\napproach to electric power asset valuation .\ni have attached a draft program outline for your review . if you or someone\nelse at your company is interested in presenting on one of the topics please\nlet me know .\ni truly appreciate your taking the time to review the conference schedule\nand hope that you will consider participating . i am running behind schedule\nin finalizing this program . i will call you on tomorrow to follow up with\nyou on this invitation . in the meantime , if you have any questions or\nsuggestions , please do not hesitate to contact me at ( 818 ) 888 - 4445 , ext .\n30 . i hope you can join us for this event .\nsincerely ,\nbritta bothe\ninfocast\nconference manager\n( see attached file : ea & cv , program outline , scenario 1 . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.091+0000", "entityId": 7274, "properties": {"text": "Subject: re : infocast ' s valuing electric power assets and companies : a real\noptions perspective\nbritta ,\nthanks for your message .\ni have several commitments at the time of the conference\nand have to decline with regret .\nvince\n\" britta bothe \" on 04 / 12 / 2000 03 : 52 : 46 pm\nplease respond to\nto :\ncc :\nsubject : infocast ' s valuing electric power assets and companies : a real\noptions perspective\ndear mr . kaminsky ,\nas i mentioned on your voice mail , infocast is going to host an \u0001 & valuing\nelectric power assets and companies : a real options perspective \u0001 8 conference\nto be held on july 31 - august 2 , 2000 , in chicago , il - i would like to\nexplore your or your organization ' s possible participation at this event\nwith you . this conference has been designed to bring together industry\nprofessionals , like you , to provide the latest details on a \" real options \"\napproach to electric power asset valuation .\ni have attached a draft program outline for your review . if you or someone\nelse at your company is interested in presenting on one of the topics please\nlet me know .\ni truly appreciate your taking the time to review the conference schedule\nand hope that you will consider participating . i am running behind schedule\nin finalizing this program . i will call you on tomorrow to follow up with\nyou on this invitation . in the meantime , if you have any questions or\nsuggestions , please do not hesitate to contact me at ( 818 ) 888 - 4445 , ext .\n30 . i hope you can join us for this event .\nsincerely ,\nbritta bothe\ninfocast\nconference manager\n- ea & cv , program outline , scenario 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.096+0000", "entityId": 7275, "properties": {"text": "Subject: re : chase\nvince : thanks very much . i will call ravi\nchris\nvince j kaminski @ ect\n04 / 12 / 2000 10 : 36 am\nto : chris holmes @ enron\ncc :\nsubject : re : chase\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 12 / 2000\n10 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 12 / 2000 10 : 11 am\nto : chris holmes / hou / ect @ ees\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : chase\nchris ,\nwe don ' t have yet any report on broadband that might help you , developed\ninternally\nby my group . we are working on a tutorial and we shall send you a copy when\nit ' s ready .\nthe person who can give you an introduction to this market is ravi\nthuraisingham .\nvince\nchris holmes @ ees\n04 / 05 / 2000 09 : 55 pm\nsent by : chris holmes @ ees\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : chase\nvince :\ni am working now in ees as the chase national account manager and am\ndeveloping new products to sell chase . one of the products i am working on\nintegrates the provision of broad band with a package of computer\nhardware and software for a company ' s employees .\ni can explain more if you are interested .\ni understand you put together a report on broadband which has helped educate\npeople as to the technology and economics . can i get a copy ? .\nalso do you have any analyses on chase that might help me detect other\nopportunities ?\nis there anyone on your staff with whom i should talk ?\nthanks\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.100+0000", "entityId": 7276, "properties": {"text": "Subject: re : movie\njana ,\nwe should have tomorrow the movie schedule for the weekend .\nsaturday around 5 : 00 p . m . would work for me .\nvince\njlpnymex @ aol . com on 04 / 13 / 2000 09 : 49 : 11 am\nto : vkamins @ enron . com\ncc :\nsubject : movie\nvince\nlet ' s talk tomorrow and see what time that movie starts and when we should\nmeet , ok ?\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.105+0000", "entityId": 7277, "properties": {"text": "Subject: ebs goes live ! . . . 15 , 000 will be impacted on 7 / 1 / 00\nenron broadband services is the latest addition to the enron sap rollout .\nthe apollo and beyond project team and enron ' s business units are currently\npreparing for the project ' s final implementation . apollo and beyond is an\nenron initiative tasked with laying a common financial , human resources ,\nproject management , and procurement foundation throughout the majority of\nenron ' s businesses .\nebs \" go - live \"\non april lst , enron broadband services supplemented their current sap\nfunctionality with hr online and sap hr , including payroll and organizational\nstructure management . hr online enables the ebs population to enter their\nown time , view and update their personal information , and view their vacation\ntime and individual payroll information via enron ' s intranet .\nadditionally , this implementation enhanced the sap financial , project and\nprocurement processes that ebs has had in operation since april 1 , 1999 .\nthese enhancements included an ebs pilot of b 2 b , a web - based requisitioning\ntool . among the benefits of these enhancements will be improved information\nflow across business units currently on sap .\njuly 1 \" go - live \"\nthis final apollo and beyond implementation will directly impact more than\n15 , 000 enron employees and contractors - - odds are that you are one of them !\npeople impacted on july lst include :\nall enron employees paid out of corporate payroll in houston , excluding\nazurix employees\nthe financial communities of enron energy services , enron investment\npartners , enron north america , enron renewable energy corporation , gas\npipeline group , global finance , and global products .\nthe project management communities of enron north america , gas pipeline\ngroup , global asset operations , global finance , and global products .\nthe human resources communities of corporate , global e & p , enron energy\nservices , enron engineering and construction company , enron investment\npartners , enron north america , enron renewable energy corporation ( houston\nonly ) , the international regions , gas pipeline group , global finance , and\nglobal products .\ngeneral sap training will be available in late april via the enron intranet .\nadditional , specific , sap classes and workshops are scheduled to begin in may\nand continue through august . information on the project can be obtained\nthrough the enron intranet at http : / / sap . enron . com and by contacting business\nunit representatives currently working with the project . a list of business\nunit representatives is located on the intranet site .\nadditional information related to the july lst implementation will be\ncommunicated to you over the next few months .\nthank you .\nmelissa becker\nproject leader , apollo and beyond", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.109+0000", "entityId": 7278, "properties": {"text": "Subject: bob lee starting june 5 , 2000\nbob lee ' s official starting date is june 5 , 2000 .\nshirley ,\nbob will be reporting to zimin lu and primarily supporting ena . we will\nneed to find a desk for him as well as set up his phone and pc ( can we use\nravi ' s ? ) . elizabeth grant ( x 57583 ) has handled him on the hr recruiting\nside and has his contact information .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.114+0000", "entityId": 7279, "properties": {"text": "Subject: research group , recruiting\nceleste ,\ni attach some brief job candidate descriptions for the types of people we are\nlooking for at the bs / ms level .\nosman sezgen ( supporting ees ) and p . v . krishnarao ( supporting ees , ebs , and\ngpg ) both said that they are willing to help in interviewing , recruiting , or\nreviewing resumes . i also would make myself available ( ebs , ena ) and\nwould be especially willing to help at the schools i attended , caltech and\nrice ( both on your target list ) .\nlet us know what we can do to help .\nbest regards ,\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.122+0000", "entityId": 7280, "properties": {"text": "Subject: maths course\ndear vince ,\n?\ni just wondered whether you have had chance to look at your bullet points\nand bio for the maths course . if so please could could email them to me as\nsoon as possible . could you also let me know whether your company\naffiliation should now be enron north america .\n?\nthanks vince and best regards ,\n?\nvicky", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.129+0000", "entityId": 7281, "properties": {"text": "Subject: talon\nfind attached the mc model for talon . a copy of this spreadsheet may be found\non o : \\ research \\ custom \\ projects \\ talon \\\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.134+0000", "entityId": 7282, "properties": {"text": "Subject: gas & power marketing & trading study\nvincent ,\ni enjoyed meeting with you yesterday and discussing our gas & power\nmarketing & trading study . we really hope that enron is able to participate\nthis year and we will work with you to address your concerns . i believe\nthat the problem last year was primarily due to concerns over releasing data\nin general and not our study in particular .\ni am attaching an electronic copy of the latest version of the input sheet\nfor the study . it is far easier to read on a computer than in print .\nplease remember that enron does not need to answer every question to\nparticipate and that all results are reported back in a blinded format . the\nonly data points identified by company are the data points for the company\nvalues of the company receiving the report .\nif you have any further questions regarding the report , please do not\nhesitate to call john stephenson or myself at ( 713 ) 523 - 8001 . have a great\nweekend and thank you for your efforts to enable enron to participate in\nthis year ' s study .\nsincerely ,\nrichard murphy\nrmurphy @ navigantconsulting . com\n( 713 ) 523 - 8001\n- 2000 input sheet . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.138+0000", "entityId": 7283, "properties": {"text": "Subject: monday ' s newsletter\nhello vince !\ni ' m working with michael sergeev to produce this next issue of the\nnewsletter . do you have a suggestion for the kaminski column on page one ?\nif so , please tell me what you ' d like to use and i ' ll get it ready either\ntoday or monday morning .\nat some point , when you have a couple of minutes , we should sit down and talk\nabout your philosophy regarding the newsletter and what you would like to see\nin the future . i ' d like to get a little creative with it once i know your\nthoughts on this .\nbest regards ,\nsam\np . s . - note that i am \" william smith \" in the lotus notes system . there is\nalso a \" will smith \" that works in it . we forward each other ' s mail all the\ntime ! : - )\nss", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.143+0000", "entityId": 7284, "properties": {"text": "Subject: re : new web address\nshannon ,\nthanks for the message . see you soon in houston .\nyour message serves as a useful reminder .\ni have to start work on my presentation .\nvince\n\" shannon burchett \" on 04 / 11 / 2000 02 : 35 : 29 pm\nplease respond to \" shannon burchett \"\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : new web address\nemail background - primary templete dfw addressgood morning vince ,\nhope all is going great with you there .\ntoday we launched a new version of our web site . the permanent url is . . .\nwww . risklimited . com\nmy email address remains the same , sburchett @ risklimited . com\nhope to see you at one of the upcoming houston conferences .\ncheers ,\nshannon\nrisk limited corporation\nbox 612666 dallas , texas 75261 usa tel : 972 . 245 . 8300 fax : 972 . 245 . 8318\nwww . risklimited . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.147+0000", "entityId": 7285, "properties": {"text": "Subject: re : visit ?\nfrank ,\nwe shall be glad to meet you in houston . i am sure that we can find many\ninteresting\ntopics to discuss\nwe can pay for your trip to houston . i shall call you next week to discuss\nthe details .\nvince\n\" francis x . diebold \" on 04 / 11 / 2000 04 : 15 : 40 pm\nto : vince kaminski\ncc :\nsubject : visit ?\ndear vince ,\ni very much enjoyed speaking with you at lunch , if only briefly , at the\n\u0001 see\nhttp : / / www . stern . nyu . edu / ~ fdiebold .\nthe upshot : it seems to me that we would both benefit from a more\nextensive conversation . i\nwould be happy to visit you in houston to learn more about your\noperations , and to tell you more\nabout mine . please do let me know if you are interested .\nbest regards ,\nfrank diebold\n- -\nfrancis x . diebold\narmellino professor of finance\nstern school of business\nnew york university\n44 west 4 th street , k - mec , suite 9 - 190\nnew york , ny 10012 - 1126\nfdiebold @ stern . nyu . edu\nhttp : / / www . stern . nyu . edu / ~ fdiebold\n( 212 ) 998 - 0799 office telephone\n( 610 ) 585 - 4057 voicemail\n( 212 ) 998 - 0351 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.152+0000", "entityId": 7286, "properties": {"text": "Subject: bonds\nthe difference is $ 4 , 391 . you can send more if you would like to add to\nthe tax - free money fund .\nthank you\nkeith hazlewood\nedward jones\np . o . box 9479\nthe woodlands , tx 77387", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.156+0000", "entityId": 7287, "properties": {"text": "Subject: re : power point slides about enron\nvince - please ask your associate to contact laura valencia in my group - she\ncan give you the recent lq anaylst slides and the enron . com year end\npresentation on the web ( these two should give you enough for a \" basic \" ene\npitch . mark\nvince j kaminski @ ect\n04 / 14 / 2000 08 : 54 am\nto : mark koenig / corp / enron @ enron , m rajgopal / corp / enron @ enron\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : power point slides about enron\nmark ,\ni want to ask you for a favor .\none of my associates , stinson gibner , is making a presentation to the mba\nstudents at\ntexas a & m university next week .\ndo you have a power point general presentation about enron , emphasizing our\ngrowth ,\ncreativity and employment opportunities ? we could use it for presentations\nwe make on campuses to business and science students . there are many\npresentations available on our intranet site , but the are outdated .\nit was nice meeting you in san antonio .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.161+0000", "entityId": 7288, "properties": {"text": "Subject: re : enroncredit . com\nalex worked with jitendra on var review in the past . he did not strike me as\na dynamic person . i cannot use him for my group , and i am lukewarm about\ngetting him for research group . if bryan wants to hire him directly for his\nkmv experience , then we can work with him .\nvasant\nvince j kaminski\n04 / 14 / 2000 03 : 55 pm\nto : vasant shanbhogue / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : enroncredit . com\nvasant , tanya\nany interest ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 14 / 2000\n03 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelanie doyle\n03 / 10 / 2000 04 : 33 am\nto : vince j kaminski / hou / ect @ ect\ncc : brad mcsherry / hou / ect @ ect\nsubject : re : enroncredit . com\nhi\nthis guy has applied to credit . com in houston , i spoke to him yesterday and\nthen passed my comments to bryan seyfried . bryan suggested he may be of\ninterest to you . i let this this guy know that he would hear from us either\nway and if we want to pursue the application we would invite him for\ninterviews in houston .\nplease give me a call if you need more information .\nmelanie\n00 44 171 783 7740 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melanie doyle / lon / ect on 10 / 03 / 2000 10 : 26\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n08 / 03 / 2000 07 : 51\nto : brad mcsherry / hou / ect @ ect\ncc : melanie doyle / lon / ect @ ect\nsubject : re : enroncredit . com\nlet ' s start getting these guys in to interview . melanie can do initial\ntelephone interviews and then coordinate with brad to ensure we are seeing\nthe best people . i would like to move as quickly as practical .\nbs\nfrom : brad mcsherry on 07 / 03 / 2000 13 : 17 cst\nto : bryan seyfried / lon / ect @ ect\ncc :\nsubject : enroncredit . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brad mcsherry / hou / ect on 03 / 07 / 2000 01 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalexander . c . davidson @ us . arthurandersen . com on 03 / 03 / 2000 01 : 55 : 23 pm\nto : brad . mcsherry @ enron . com\ncc :\nsubject : enroncredit . com\ndear mr . mcsherry :\ni am responding to your search for credit risk professionals on\nthe\nenroncredit . com website . after working for seven years on credit\nrisk\nmanagement in a research and consulting capacity , i would like to transfer\nmy\nexperience in assessing credit risk modeling , information technology\nand\nmethodology in complex top - tier institutions to an active credit\ntrading\nmanagerial environment . i am excited about being involved in\ntrading ,\norigination , risk management and r & d of credit derivatives .\ni have seven years of experience in credit risk measurement and\nmanagement . i\nhave helped design , test and implement credit value - at - risk systems with\nkmv\ncorp and with a major japanese bank . i was a major contributor at kmv\nin\ndesigning the expected default frequency model and i am thoroughly familiar\nwith\nits assumptions , strengths , weaknesses and applications . i did the\nempirical\nresearch that lies behind the kmv default correlation model , the private\nfirm\nedf model and i interfaced with j . p . morgan ( now r . m . g . ) personnel during\nthe\ncreation of the creditmetrics documentation .\ni have excellent analytical , quantitative , statistical and programming\nskills .\ni studied finance extensively when i was a graduate student and i studied\ncredit\nrisk theory while i worked with kmv and arthur andersen . i am eager to join\nthe\ncredit derivative team at enroncredit . com where i am certain that my\ncombination\nof quantitative research skills , credit risk consulting experience\nand\ntechnology expertise make me uniquely qualified to support the\ncredit\nderivatives trading and risk management function .\ni have included my resume with this e - mail . please e - mail me or call me\nat\n201 - 420 - 0191 ( home ) and 212 - 708 - 4027 ( work ) so that we can discuss\nthis\nopportunity further .\n( see attached file : alex . doc )\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .\n- alex . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.165+0000", "entityId": 7289, "properties": {"text": "Subject: re : enroncredit . com\nvasant , tanya\nany interest ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 14 / 2000\n03 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelanie doyle\n03 / 10 / 2000 04 : 33 am\nto : vince j kaminski / hou / ect @ ect\ncc : brad mcsherry / hou / ect @ ect\nsubject : re : enroncredit . com\nhi\nthis guy has applied to credit . com in houston , i spoke to him yesterday and\nthen passed my comments to bryan seyfried . bryan suggested he may be of\ninterest to you . i let this this guy know that he would hear from us either\nway and if we want to pursue the application we would invite him for\ninterviews in houston .\nplease give me a call if you need more information .\nmelanie\n00 44 171 783 7740 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melanie doyle / lon / ect on 10 / 03 / 2000 10 : 26\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n08 / 03 / 2000 07 : 51\nto : brad mcsherry / hou / ect @ ect\ncc : melanie doyle / lon / ect @ ect\nsubject : re : enroncredit . com\nlet ' s start getting these guys in to interview . melanie can do initial\ntelephone interviews and then coordinate with brad to ensure we are seeing\nthe best people . i would like to move as quickly as practical .\nbs\nfrom : brad mcsherry on 07 / 03 / 2000 13 : 17 cst\nto : bryan seyfried / lon / ect @ ect\ncc :\nsubject : enroncredit . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by brad mcsherry / hou / ect on 03 / 07 / 2000 01 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalexander . c . davidson @ us . arthurandersen . com on 03 / 03 / 2000 01 : 55 : 23 pm\nto : brad . mcsherry @ enron . com\ncc :\nsubject : enroncredit . com\ndear mr . mcsherry :\ni am responding to your search for credit risk professionals on\nthe\nenroncredit . com website . after working for seven years on credit\nrisk\nmanagement in a research and consulting capacity , i would like to transfer\nmy\nexperience in assessing credit risk modeling , information technology\nand\nmethodology in complex top - tier institutions to an active credit\ntrading\nmanagerial environment . i am excited about being involved in\ntrading ,\norigination , risk management and r & d of credit derivatives .\ni have seven years of experience in credit risk measurement and\nmanagement . i\nhave helped design , test and implement credit value - at - risk systems with\nkmv\ncorp and with a major japanese bank . i was a major contributor at kmv\nin\ndesigning the expected default frequency model and i am thoroughly familiar\nwith\nits assumptions , strengths , weaknesses and applications . i did the\nempirical\nresearch that lies behind the kmv default correlation model , the private\nfirm\nedf model and i interfaced with j . p . morgan ( now r . m . g . ) personnel during\nthe\ncreation of the creditmetrics documentation .\ni have excellent analytical , quantitative , statistical and programming\nskills .\ni studied finance extensively when i was a graduate student and i studied\ncredit\nrisk theory while i worked with kmv and arthur andersen . i am eager to join\nthe\ncredit derivative team at enroncredit . com where i am certain that my\ncombination\nof quantitative research skills , credit risk consulting experience\nand\ntechnology expertise make me uniquely qualified to support the\ncredit\nderivatives trading and risk management function .\ni have included my resume with this e - mail . please e - mail me or call me\nat\n201 - 420 - 0191 ( home ) and 212 - 708 - 4027 ( work ) so that we can discuss\nthis\nopportunity further .\n( see attached file : alex . doc )\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .\n- alex . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.170+0000", "entityId": 7290, "properties": {"text": "Subject: re : edith terry\nvince :\nthank you very much . i hope i get a chance to meet you sometime ,\ncheers ,\nedith terry\nenron / dc\nvince j kaminski @ ect\n04 / 14 / 2000 01 : 46 pm\nto : scott tholan / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect ( bcc : edith terry / enron _ development )\nsubject : edith terry\nscott ,\ni spoke briefly with edith terry from our dc office . there is not a good fit\nfor my group\nbut she could be a great asset for you .\ni have her resume in case you are hiring and would like to take a look at\nher .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.175+0000", "entityId": 7291, "properties": {"text": "Subject: edith terry\nscott ,\ni spoke briefly with edith terry from our dc office . there is not a good fit\nfor my group\nbut she could be a great asset for you .\ni have her resume in case you are hiring and would like to take a look at\nher .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.179+0000", "entityId": 7292, "properties": {"text": "Subject: meeting with vince set for 1 pm monday , april 17\nmaureen , thank you very much for taking time away from your project to talk\nwith me this morning . since the management decision to close info central , i\nhave been doing small projects that , while necessary , do not require my\neducation , knowledge or research capabilities .\ni appreciate your suggestion that i speak to vince since i am anxious to\nreturn to contributing at a higher level . i am attaching my resume in the\nhope that it will trigger ideas for possible ways that i can use my abilities\nin the research department . i have worked as an information specialist for\n14 years , doing research for people at all levels in both the pharmaceutical\nand energy industries . i have focused most heavily on business research , but\nlearn quickly and can branch out in whatever direction necessary for a\nproject .\ni ' m looking forward to meeting with vince on monday afternoon . thanks again\nfor your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.183+0000", "entityId": 7293, "properties": {"text": "Subject: re : maths course\nvicky ,\nmy affiliation is enron corp . my assistant , shirley crenshaw , will send you\nan updated version of my bio .\nhere are the bullet points :\npractical techniques to price exotic energy options\ndefinition of an exotic option\n- pay - off profile\n- price process assumptions\n- different sources of risk\ndifferent types of exotic options used in the energy industry\n- asian options\n- spread options\n- basket options\n- swing options\nevaluating methodologies for pricing exotics\n? ? ? - assessing the pros and cons of different techniques\n- approximations of closed - form formulas\n- monte carlo techniques\n- trees\n- numerical solutions of pdes\n? ? ? - applying multi - factor models to price exotic energy derivatives\n? ? ? - building trees for pricing and hedging exotics\npractical examples\n?\nanalysing approaches to weather derivatives valuation\n?\ndefinition of a weather derivative\nwhy does energy industry need weather derivatives ?\n- hedging volume / price risk as opposed to hedging exclusively price risk\n- the energy industry ' s exposure to weather : numerical estimates\ndifferent types of weather derivatives used in the energy industry\n? ? ? - heating and cooling degree day swaps and options\n? ? ? - precipitation contracts\n- hurricane contracts\n- financial options contingent on weather\n- digital options\nvaluation controversy : actuarial valuation vs . valuation based on the\nblack - scholes paradigm\nuse of monte carlo techniques in valuation of weather derivatives\nvaluing long term transactions\npractical example\nplease , feel free to edit my bullet points to improve my english .\nit was a pleasure working with you and i hope our roads will cross at some\npoint .\nthe best of luck to you .\nvince\n\" vicky windsor \" on 04 / 13 / 2000 01 : 00 : 18 pm\nplease respond to \" vicky windsor \"\nto :\ncc :\nsubject : maths course\ndear vince ,\n?\ni just wondered whether you have had chance to look at your bullet points\nand bio for the maths course . if so please could could email them to me as\nsoon as possible . could you also let me know whether your company\naffiliation should now be enron north america .\n?\nthanks vince and best regards ,\n?\nvicky", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.188+0000", "entityId": 7294, "properties": {"text": "Subject: re : wednesday lunch - credit group\nhi , everybody ,\nget ready for our lunch meeting : this wednesday , april 19 , the\n\" new credit model development and testing team \" is going to go to vincent ' s\nrestaurant .\nthe address is 2701 w . dallas , the reservation is made for 11 : 30 a . m .\nsee you there ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.193+0000", "entityId": 7295, "properties": {"text": "Subject: re : projects i will be working on or assisting in\nstinson , shalesh & martin will be on loan / attached to my group for the next\nfew months . this similar to the arrangement that i had originally at ebs .\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.198+0000", "entityId": 7296, "properties": {"text": "Subject: thomas knudsen : interviews cancelled\ndear all ,\ni just got a call from thomas who wants to cancel the interviews scheduled\nfor today - he told me that he would call me at the beginning of may ( after\nhis holidays ) to arrange them . i did mention that there was a risk that the\nposition may be filled by then , but he seemed unperturbed by this .\nregards ,\nanjam\nx 35383\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 17 / 04 / 2000 09 : 28\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n14 / 04 / 2000 09 : 57\nto : dale surbey / lon / ect @ ect , benjamin parsons / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc : steven leppard / lon / ect @ ect , stinson gibner / hou / ect @ ect , kate\nbruges / lon / ect @ ect\nsubject : interviews for thomas knudsen\ndear all ,\nwe need to see thomas on monday or tuesday as he is going on holiday after\nthat . can we arrange to meet him on monday afternoon ? suggest 45 minutes\neach . starting from 3 pm : -\nmonday 17 th april\nslotl : 3 pm\nslot 2 : 3 . 45 pm\nslot 3 : 4 . 15 pm\nslot 4 : 5 pm\nvince - please could you let me know which slot you prefer - we can try video\nconference , but i can ' t guarantee availability , so we may have to fall back\nto telephone interview for you .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.205+0000", "entityId": 7297, "properties": {"text": "Subject: enhanced energy scheduler tool in production today\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nthe new pjm enhanced energy scheduler ( ees ) will go into production at 10 : 00\nthis morning 4 / 17 / 00 at https : / / ees . pjm . com / mui / index . htm . schedules may be\nsubmitted for energy that begins on or after tomorrow , 4 / 18 / 00 . for questions\nplease contact pjm at 610 - 666 - 2270 .\nquestions may be directed to pjm customer service at ( 610 ) 666 - 8980 .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.210+0000", "entityId": 7298, "properties": {"text": "Subject: enron in europe : emerging europe : enron plugs on in poland - - -\npower market ' s vast . . .\nvicek - sadzilem , ze moze bedziesz chcial to przeczytac .\npozdrowienia - jarek\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jarek astramowicz / war / ect on 2000 - 04 - 17\n17 : 15 - - - - - - - - - - - - - - - - - - - - - - - - - - -\niona maclean\n2000 - 04 - 13 08 : 23\nto : jackie gentle / lon / ect @ ect , eric shaw / lon / ect @ ect , jarek\nastramowicz / war / ect @ ect , brian stanley / eu / enron @ enron , philip\ndavies / lon / ect @ ect , ed cattigan / eu / enron @ enron , nigel\nberesford / eu / enron @ enron , andrew morrison / lon / ect @ ect\ncc :\nsubject : enron in europe : emerging europe : enron plugs on in poland - - - power\nmarket ' s vast . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by iona maclean / lon / ect on 13 / 04 / 2000 07 : 23\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : djcustomclips @ djinteractive . com 13 / 04 / 2000\n07 : 30\nplease respond to nobody @ maill . djnr . com\nto : 96939 @ mailman . enron . com\ncc : ( bcc : iona maclean / lon / ect )\nsubject : enron in europe : emerging europe : enron plugs on in poland\n- - - power market ' s vast . . .\nemerging europe :\nenron plugs on in poland\n- - -\npower market ' s vast potential holds allure , but an uncertain future\n- - -\nafter six years , profit from company ' s power operations remains years\naway\nby elizabeth williamson\n04 / 13 / 2000\nthe wall street journal europe\n9\n( copyright ( c ) 2000 , dow jones & company , inc . )\nnowa sarzyna , poland - - from a small power plant humming among the\nbirches near the ukrainian border , enron corp . has staked its claim on\nthe polish energy market .\nyet after six years , the company is still seeking a mother lode .\nthe houston - based energy producer and trader entered poland in 1994 ,\nnabbed one of the first power - trading licenses to go to a foreign\ncompany and began work on elektrocieplownie nowa sarzyna , poland ' s first\nnew , foreign - operated heat - and - power plant .\nother companies followed , including electricite de france , rwe ag of\ngermany , vattenfall ab of sweden and tractebel sa of belgium .\nthe prize could be a rich one . all of these companies hope to profit\nas poland sells its state energy assets and frees prices before joining\nthe european union .\na wholesale power bourse is due to open in warsaw in july . and the\ncountry ' s transmission links to markets east and west could make poland\nthe power - trading hub of central europe .\nbut after six years in poland , enron has yet to earn a profit . net\nincome from nowa sarzyna , which is to begin commercial production later\nthis month , is at least five years away . power - trading operations might\ngenerate profits next year , if the new bourse gets moving . but that is\n\" one big question mark , \" says jarek astramowicz , enron poland ' s\npresident .\nindeed , despite its promise , poland ' s energy sector remains a\nsizzling tangle of aging plants , archaic market agreements and complex ,\nshifting regulations .\nenron , with $ 40 billion ( 41 . 69 billion euros ) in annual revenue , is\nan innovator and an investment bellwether for its peers . but in a power\nmarket as negatively charged as poland ' s , the company also is an example\nof how shaky market conditions can keep even the savviest competitors\noffline .\n\" these are very large operations and to some extent they can bear\nsome risks , \" says pawel kaminski , energy - sector operations officer at\nthe world bank in warsaw . \" but eventually they have to generate some\nreturn . \"\nenron pioneered wholesale gas and electricity trading in the u . s . it\nentered europe in 1989 , setting up in london as the u . k . ' s energy sector\nliberalized . it entered the nordic market in 1996 , and today is the nord\npool ' s largest - volume trader .\nenron says it takes about two years to find a site and obtain permits\nfor a power plant , and a further 29 months for construction .\njust four years after entering the u . k . , enron finished its\n1 , 875 - megawatt teesside plant . teesside ' s capacity and cost , at gbp 795\nmillion ( 1 . 32 billion euros ) , are many times larger than nowa sarzyna ' s .\nyet teesside was completed in only two - thirds the time . the company\ndeclines to compare development times in various countries .\n\" i wouldn ' t necessarily put poland into the same category as russia , \"\nsays philip davies , regulatory and government - affairs manager at enron\neurope in london . \" but obviously , given poland ' s ( planned economy ) past ,\nit probably takes a bit longer to work through the regulatory process\nand get to the starting point . \"\nat nowa sarzyna , it took enron nearly twice the usual time to reach\nthe starting point , even though mr . astramowicz already knew the site ,\nand the polish power industry ' s rules .\nthe nowa sarzyna plant was mr . astramowicz ' s brainchild , and he\nburned out the engine in his first bmw as he traveled between warsaw and\nthe town to craft the deal . a freelance energy - sector entrepreneur\nbefore joining enron , mr . astramowicz sold his interest in nowa sarzyna\nto enron in 1998 .\nenron has spent $ 132 million to build nowa sarzyna , a 116 - megawatt ,\ngas - fired combined heat - and - power plant . quiet , clean and efficient , the\nplant stands in stark contrast to most of poland ' s belching , coal - fired\nbehemoths . when it starts up this month , it will sell its electricity to\nthe polish power grid , the country ' s high - voltage network , under a\n20 - year power - purchase agreement , or ppa , that enron won in 1997 . steam\noutput goes to organika , the chemical company next door , and helps heat\nthe town of nowa sarzyna .\nthe nowa sarzyna plant is more than 80 % financed by commercial - bank\nloans for which the only collateral is the plant ' s concluded contracts .\n\" they were betting on their good name , \" says michael davies , a\npartner with allen & overy , the warsaw law firm that advised enron\npoland ' s lenders . \" they are pushing envelopes all the time . \"\nthat is especially true in a market with 30 % overcapacity , where an\nenergy law didn ' t even exist until 1997 .\nsays peter bisztyga , emerging europe utilities analyst at solomon\nsmith barney in london : \" because enron signed a ppa , they are ok . . .\n( but ) i ' m really not sure building nowa sarzyna was such a good idea . \"\nmr . bisztyga says enron could have generated a faster return by\nrenovating an existing power plant . but , he acknowledges , nowa sarzyna\n\" allowed enron to get into the polish market early and stamp their name\non it . \"\nin 1994 , polish power plants weren ' t for sale . energy asset\nprivatization , discussed for years , began in earnest only this year . by\n2002 , the polish government proposes to sell off stakes in dozens of\npower plants , 33 distribution companies and the polish power grid , a\n12 , 000 - kilometer national transmission network of high - voltage lines .\nthe assets have a total book value of 33 billion zlotys ( 8 . 4 billion\neuros ) , but murky regulations have driven prices down .\n\" the regulations don ' t promote competition and so you don ' t really\nknow the price of electricity , \" says bengt wegemo , president of\nvattenfall poland . earlier this year , vattenfall paid $ 235 million for\n55 % in warsaw - based elektrocieplownie warszawskie , promising $ 340\nmillion in investment in the heat - and - power plant over the next 10\nyears .\ninvestors hope the new power market will bring clarity over pricing .\nultimately , 170 licensed energy traders and 200 large power users will\ntrade on the bourse , setting the wholesale price of electricity . the\npolish bourse will be modeled on its nordic counterpart . enron , the nord\npool ' s largest trader , hopes to post polish trading profits by 2001 .\nbut first , say market experts , poland ' s 1997 energy law must be\namended to ease functioning of the bourse , and free up access to\npoland ' s distribution network .\nfurther , the government says it must solve the competition problem\nposed by the polish power grid ' s power - purchase agreements , which\naccount for 70 % of energy sales in poland . some state - owned plants used\nthe agreements as collateral to secure modernization financing . when\nprices are freed , these plants might go bankrupt if forced to compete\nwith plants that didn ' t spend money to modernize .\nthe government is contemplating a special fund to compensate the\nmodernized plants for their extra costs . though nowa sarzyna is a\nprivate plant , the price enron must charge for its power is about twice\nwhat outmoded plants charge .\n\" we are hoping that continuous , efficient operation of the plant will\ngenerate us a ( bigger ) profit , \" mr . astramowicz says .\nanother problem is cross - border power trading , where contradictory\nlegislation essentially gives a monopoly to the polish power grid , also\nknown as pse . enron and others protest that pse shouldn ' t compete with\nelectricity - market participants who contract with it for transmission\nservice .\npse intends to stay in the trading business , says marek zerka , pse ' s\nvice president . in late march , pse and local company kulczyk holding\nsigned an agreement with preussenelektra ag of germany to export\nelectricity and coal to eu countries via germany .\n\" this is great news , \" mr . astramowicz says . \" if this joint venture\ngets access to pse ' s cross - border transmission capacity . . . i would\nexpect pse to confirm open access to all market participants . \"\nenron and others are pushing hard for that access . \" as soon as the\nmarket becomes open , free and non - discriminatory , we will come out at a\ndecent profit , \" mr . astramowicz says .\nfolder name : enron in europe\nrelevance score on scale of 100 : 78\nto review or revise your folder , visit http : / / www . djinteractive . com or\ncontact dow jones customer service by e - mail at custom . news @ bis . dowjones . com\nor by phone at 800 - 369 - 7466 . ( outside the u . s . and canada , call 609 - 452 - 1511\nor contact your local sales representative . )\ncopyright ( c ) 2000 dow jones & company , inc . all rights reserved", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.215+0000", "entityId": 7299, "properties": {"text": "Subject: re : summer internship\nshirley ,\ncantekin will be joining us again this summer as a summer intern . he will\nbe starting around the end of may .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 17 / 2000\n12 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" cantekin dincerler \" on 04 / 14 / 2000 03 : 52 : 04 pm\nplease respond to\nto : \" ' stinson gibner ' \"\ncc :\nsubject : re : summer internship\nstinson ,\ni have received the offer , thank you . i am looking forward to being there\nagain and getting involved in some interesting projects . i bet it will be\nfun .\nas to when i can start , i think i can start around the end of may . i can\ngive you a more precise date after i figure out the schedule regarding my\nassistanship obligations .\nps : could you give some idea about the kind of projects that we ' ll be\nworking on ? i might do some advance reading if you could point out some\nreferences .\nbest regards ,\ncantekin\n> cantekin ,\n>\n> you should be getting an offer of a summer internship within\n> the next few days .\n> if you don ' t , please let me know .\n>\n> i think you will be working with me on a combination of enron\n> broadband services\n> and enron north america projects and am looking forward to\n> having your help .\n> some of the projects should be a lot of fun .\n>\n>\n> when are available to start so i can plan ahead for you ?\n>\n> best regards ,\n>\n> stinson\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.224+0000", "entityId": 7300, "properties": {"text": "Subject: re : vacation\nvincent :\ncongratulations ! please take whatever time is necessary .\ni hope the complications are only with the in - laws and not the police / u . s .\nimmigration , etc .\nlet me know if there is anything we can do for you .\nregards ,\ngrant .\nvincent tang on 04 / 17 / 2000 12 : 40 : 26 pm\nto : grant . masson @ enron . com\ncc :\nsubject : ?\nhi , grant ,\nhow are you ? hope everything is going well .\nmy wedding ceremony was very good but the whole\nprocess is more complex than i expected . it might\ntake several more days . so i am wondering , if it is\nnot too much a trouble for you , i would like to extend\nmy vacation several more days . please let me know .\nbest regards ,\nvincent\ndo you yahoo ! ?\nsend online invitations with yahoo ! invites .\nhttp : / / invites . yahoo . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.232+0000", "entityId": 7301, "properties": {"text": "Subject: request from our mexico city office\nvince do you or someone else down on the trading floor have a copy\nof this book ricardo can borrow ? ? ? if not any other ideas where i\ncan get it > thx margaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret carson / corp / enron on 04 / 18 / 2000\n04 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nricardo charvel\n04 / 18 / 2000 04 : 02 pm\nto : margaret carson / corp / enron @ enron\ncc :\nsubject : request\nmargaret ,\nfirst of all i apologize for not sending you the information to complete the\nchart that you gave me . i have been travelling because of work and then\nvacation , maybe i spent 3 or 4 full working days in the office in the last 4\nweeks . now that i am going through my to do list i cannot find that page\nthat you gave me . could you please send it to me again ?\non the other hand i was wondering if maybe within enron possibly at info\ncentral or with one of your friends at the trading desk you could get me a\ncopy of a book titled : chicago board of trade commodity\ntrading manual\nisbn : 1579580025\npublisher : fitzroy dearborn publishers , incorporated\npub . date : december 1997\nit si not in stock at the dot com libraries and it will take them a long\ntime to deliver . i need this bbok in order to produce a document that steve\nkean requested from me a couple of weeks ago .\nthank you very much for your help .\nbest ,\nricardo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.237+0000", "entityId": 7302, "properties": {"text": "Subject: confirm participation at real options conference at cambridge\nu . - urgent\nthe attached file contains the tentative program for two back - to - back real\noptions conferences ( a professional one for july 5 - 6 , and the standard\nannual academic one for july 7 - 8 ) at cambridge u .\nyour name has been provisionally included on the program . please check all\nthe information relating to you and confirm your participation as listed\n( or advice us of desired changes immediately ) .\nthank you .\nlenos\n- 4 thconfsessions . doc\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.241+0000", "entityId": 7303, "properties": {"text": "Subject: rdi conference - may 17 - 19 , 2000\nhi ,\ni ' d like to make a personal invitation to you to attend rdi ' s annual user\nconference at torrey pines in la jolla , just north of san diego . we are\nplanning two sessions for gpcm users ( and prospective users ) which i think\nyou will find very interesting and useful . plus we are also going to\nschedule individual sessions for those that would like them , as was quite\nsuccessful last year . the details are included in the attached word file\nbelow . i ' ve also included the program in pdf format . the last page is a\nsignup form you can fill out and fax in to rdi if you haven ' t already done\nso .\nplease let me and mike know how many are coming from your team . you can\nreply to this e - mail to let us know .\nlooking forward to seeing you there .\ni think it ' s going to be fun .\nbob brooks\nmike farina\n- rdi _ conference _ gpcm _ breakout . doc\n- rdi user conf . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.246+0000", "entityId": 7304, "properties": {"text": "Subject: re : video conference with ross mcintyre\nnick :\nwe are unable to get a vc location for 10 : 30 am , however , we can have one\nat 11 : 00 am . houston time . is there anyway that we could push the interview\nto 11 : 00 am ? i know you have to make reservations for your conference room\nalso . if not , we will have to do a phone interview .\nplease let me know .\nthanks !\nshirley crenshaw\nadministrative coordinator\nresearch group\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 18 / 2000\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 18 / 2000 10 : 01 am\nto : nick mooney / lon / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect , vince j kaminski / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , mark tawney / hou / ect @ ect\nsubject : re : video conference with ross mcintyre\nnick ,\nwe may have problems getting the vc location in houston on short notice .\nwe are currently on stand - by . we shall default , if we have no other choice ,\nto a phone interview .\nvince\nenron capital & trade resources corp . - europe\nfrom : nick mooney 04 / 18 / 2000 09 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc : mark tawney / hou / ect @ ect\nsubject : video conference with ross mcintyre\nvince ,\nyou should have received an invitation through lotus notes which outlines the\nvc location for the conference call tomorrow . it is schedule for 4 : 30 pm uk\ntime ( 10 : 30 am houston time )\nross ' s background is from investment banking ex dresner bank , he has a phd in\nmathematical and is currently with speedwell weather derivatives where he has\nbeen developing weather derivative pricing and portfolio optimisation tools\nwhich they have been marketing to end - users with weather risks .\nthe attached word documents are articles that he has written for publication .\nregards\nnick mooney\n- mcs . doc\n- analytic . doc\n- par . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.250+0000", "entityId": 7305, "properties": {"text": "Subject: re : video conference with ross mcintyre\nnick ,\nwe may have problems getting the vc location in houston on short notice .\nwe are currently on stand - by . we shall default , if we have no other choice ,\nto a phone interview .\nvince\nenron capital & trade resources corp . - europe\nfrom : nick mooney 04 / 18 / 2000 09 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc : mark tawney / hou / ect @ ect\nsubject : video conference with ross mcintyre\nvince ,\nyou should have received an invitation through lotus notes which outlines the\nvc location for the conference call tomorrow . it is schedule for 4 : 30 pm uk\ntime ( 10 : 30 am houston time )\nross ' s background is from investment banking ex dresner bank , he has a phd in\nmathematical and is currently with speedwell weather derivatives where he has\nbeen developing weather derivative pricing and portfolio optimisation tools\nwhich they have been marketing to end - users with weather risks .\nthe attached word documents are articles that he has written for publication .\nregards\nnick mooney\n- mcs . doc\n- analytic . doc\n- par . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.255+0000", "entityId": 7306, "properties": {"text": "Subject: re : thomas knudsen\nsteve ,\ni shall talk to anjam about it . our impression here in houston is that thomas\nis quite qualified\nand we are very interested in him . a few days will not make much difference\nin the hiring process .\nvince\nsteven leppard\n04 / 17 / 2000 03 : 50 am\nto : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : thomas knudsen\ndale , vince\nas you all know i have attempted to get thomas knudsen interviewed as a\nresult of prof lane hughston ' s recommendation ( lane is an acquaintance of\nvince and me , and is a very senior figure in the world of quant finance ) .\nanjam vetoed the idea of interviewing thomas since he was \" too old and too\nexperienced \" . since i felt that thomas has some merit , i asked houston to\nhave an informal chat with thomas . houston wish to pursue the interview\nprocess further , and anjam has set about setting up the interviews . i ' m\nsomewhat concerned about the way in which anjam is going about this , since it\nseems he ' s trying to put up barriers to these interviews .\ni received a concerned email from thomas knudsen this morning in which he\nrecounts some strange conversations with anjam . he says he received a call\nfrom anjam on thursday ( 13 th april ) evening ( outside office hours ) , asking\nhow he got his cv into enron ( i ' d shown anjam the email and cv back in early\nfebruary ) , and how anjam could contact him ( despite the fact he was\ncontacting him at that moment ) .\nanjam then called thomas on his work number ( bad form ) on friday 14 th asking\nthomas to come in for interviews on monday ( one working day ' s notice ) .\nthomas told anjam he was going on holiday on wednesday of this week , and that\nhe ' d have to see if he could make time given the need to tidy up some things\nat work . he said he ' d contact anjam on monday ( today ) to confirm his\navailability .\ntoday ( 17 th april ) thomas called anjam to say he couldn ' t make it , and that\nhe wouldn ' t be able to make it for two weeks ( not so serious , he thought ,\ngiven that we ' re losing time to easter anyway ) . anjam told thomas that the\nposition might be filled in two weeks ' time .\nthomas is concerned about missing the boat , and i for one didn ' t even realise\nit was leaving so soon !\ncan anyone shed any light on this ?\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.260+0000", "entityId": 7307, "properties": {"text": "Subject: re : possible hire ?\nkathy ,\nthanks for your message . we are very interested in talking to keith .\nplease , give him my phone number / e - mail address\nand he can contact me directly .\nvince\n\" kathy ensor \" on 04 / 18 / 2000 11 : 32 : 27 am\nto :\ncc :\nsubject : possible hire ?\ndear vince ,\na faculty member in our department , namely dr . keith baggerly ,\nis interested in pursuing other employment . he is currently an\nassistant professor in our program and a highly valued member of\nour department . we hate to lose him , however his interest has shifted\nfrom the academic arena to one of high level but practical application\nand development of statistical methodologies including\nstochastic modeling .\nkeith is actually a graduate of our ph . d . program ; he was in the same\ngroup of students as martin lawera . keith spent several years at los\nalamos national lab before we recruited him back to rice . he has\nbeen on our faculty now for three years and it is my expectation\n( and that of my colleagues ) that if he remained he would receive\ntenure .\nkeith has a strong interest in financial models and the background\nto support his interest . he is also a leading expert in statistical\ncomputing , empirical likelihood , categorical models and areas\nof statistics falling under the general bailiwick of \" data mining \" .\nhe is a creative thinker .\ni do not know if there are possibilities for keith within your group ,\nhowever\ni believe it is an excellent match of talent and objectives . would you\nhave an interest in speaking with keith ? if so , i will suggest that he\ncontact you .\nbest regards ,\nkathy ensor\nkatherine bennett ensor e - mail : ensor @ rice . edu\nprofessor and chair or :\nkathy @ stat . rice . edu\ndepartment of statistics , ms 138 phone # : ( 713 ) 348 4687\nrice university dept . # : ( 713 )\n348 6032\nhouston , tx 77251 - 1892 fax # : ( 713 ) 348 5476", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.266+0000", "entityId": 7308, "properties": {"text": "Subject: video conference with ross mcintyre\nvince ,\nyou should have received an invitation through lotus notes which outlines the\nvc location for the conference call tomorrow . it is schedule for 4 : 30 pm uk\ntime ( 10 : 30 am houston time )\nross ' s background is from investment banking ex dresner bank , he has a phd in\nmathematical and is currently with speedwell weather derivatives where he has\nbeen developing weather derivative pricing and portfolio optimisation tools\nwhich they have been marketing to end - users with weather risks .\nthe attached word documents are articles that he has written for publication .\nregards\nnick mooney\n- mcs . doc\n- analytic . doc\n- par . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.271+0000", "entityId": 7309, "properties": {"text": "Subject: marking chairs\nhello all :\nunfortunately , in the last two weeks we have had two of our research \" chairs \"\ndisappear from their location . we have reported this to security , but in all\nlikelihood they will be almost impossible to locate .\nfacilities has told us that they are not responsible for missing chairs and we\nwill have to order new ones . since they are very expensive , we have\ndecided to \" mark \" our chairs underneath the seat with a location or name .\nsam is going to order some \" silver or white \" markers and we will begin\nmarking\neach chair .\nit is a shame we have to do this , but know of no other alternative . we will\nlet you\nknow when this will take place .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.276+0000", "entityId": 7310, "properties": {"text": "Subject: re : replacement of stolen chairs\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 18 / 2000 01 : 22\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nreggie wilson\n04 / 18 / 2000 12 : 57 pm\nto : kevin g moore / hou / ect @ ect\ncc : william smith / corp / enron @ enron , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\nsubject : re : replacement of stolen chairs\nkevin ,\nif you guys had aerons ( mesh ) and / or vecta ( leather ) chairs , my group\ntypically will not be responsible for the replacement of those chairs as i ' m\nnot aware of who has taken the chairs or where they may have gone . my group\ndoes not stock these chairs , therefore we order as requested by business\nunits and charge your co / rc . there will be two chairs delivered to the\nlocations mentioned below , however , they will not be the vecta or aeron\nchairs .\nyou may want to contact enron security and maybe they can investigate further .\nthanks ,\nreggie\nkevin g moore\n04 / 18 / 2000 10 : 54 am\nto : reggie wilson / epsc / hou / ect @ ect , william smith / corp / enron @ enron , shirley\ncrenshaw / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : replacement of stolen chairs\nhi reggie ,\nwe spoke regarding the chairs on monday .\nplease , we need these chairs as soon as possible , without being charged .\nwe paid for all new chairs each time we moved and it ' s not fair we pay again .\nthanks\nkevin moore\np . s . these chairs were taken . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 18 / 2000 10 : 46\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : william smith @ enron 04 / 18 / 2000 10 : 00 am\nto : reggie wilson / epsc / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , kevin g moore / hou / ect @ ect\nsubject : replacement of stolen chairs\nreggie ,\nthere may already be a request floating around for a standard black office\nchair for ebl 972 d . it was stolen over a weekend several weeks ago . in\naddition to that one , my own chair at eb 3132 a was stolen this past weekend .\ncould you come up with a couple of decent ones for us ?\nif you need to charge them to us , our numbers are 0011 and 100038 . as\nalways , call me if you need to at x 58322 .\nthanks !\nsam smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.281+0000", "entityId": 7311, "properties": {"text": "Subject: replacement of stolen chairs\nhi reggie ,\nwe spoke regarding the chairs on monday .\nplease , we need these chairs as soon as possible , without being charged .\nwe paid for all new chairs each time we moved and it ' s not fair we pay again .\nthanks\nkevin moore\np . s . these chairs were taken . . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 18 / 2000 10 : 46\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : william smith @ enron 04 / 18 / 2000 10 : 00 am\nto : reggie wilson / epsc / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , kevin g moore / hou / ect @ ect\nsubject : replacement of stolen chairs\nreggie ,\nthere may already be a request floating around for a standard black office\nchair for ebl 972 d . it was stolen over a weekend several weeks ago . in\naddition to that one , my own chair at eb 3132 a was stolen this past weekend .\ncould you come up with a couple of decent ones for us ?\nif you need to charge them to us , our numbers are 0011 and 100038 . as\nalways , call me if you need to at x 58322 .\nthanks !\nsam smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.286+0000", "entityId": 7312, "properties": {"text": "Subject: presentation to dave delainey\ngood morning :\nvince ' s direct reports will give a presentation to dave delainey , monday ,\napril 24 th at 3 : 00 pm in conference room eb 3321 .\nthis presentation will be an update of the one that was given to greg\nwhalley .\nif you have any questions , please call me .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.290+0000", "entityId": 7313, "properties": {"text": "Subject: project\nrichard ,\ni would like to inform you that we decided against participation in your\nproject .\nthanks for your interest in having enron involved in the study .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.295+0000", "entityId": 7314, "properties": {"text": "Subject: e & p company model\nmark ,\ndid you have a chance to review the e & p company model\n( the old cash flow mode ) and determine if it can be used\nby fred lagrasta ' group .\nplease , let me know .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.301+0000", "entityId": 7315, "properties": {"text": "Subject: re : confirm participation at real options conference at cambridge\nu . - urgent\nvince\ncan you please check with steve leppard and ask him to confirm , and send to\nme his position and title of his talk ( if different from yours ) ?\nthanks very much again\nlenos\nat 05 : 14 _ _ 04 / 19 / 00 - 0500 , you wrote :\n>\n>\n> lenos ,\n>\n> my busy schedule does not allow me to attend .\n>\n> i would like , however , to recommend my colleague who works\n> in london , steve leppard .\n> he can make a very interesting and original presentation on real options .\n> please , let me know what you think .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> lenos trigeorgis on 04 / 18 / 2000 09 : 29 : 18 pm\n>\n> to : lenos . trigeorgis @ rogroup . com\n> cc : ( bcc : vince j kaminski / hou / ect )\n> subject : confirm participation at real options conference at cambridge\n> u . - urgent\n>\n>\n>\n> the attached file contains the tentative program for two back - to - back real\n> options conferences ( a professional one for july 5 - 6 , and the standard\n> annual academic one for july 7 - 8 ) at cambridge u .\n>\n> your name has been provisionally included on the program . please check all\n> the information relating to you and confirm your participation as listed\n> ( or advice us of desired changes immediately ) .\n>\n> thank you .\n>\n> lenos\n>\n>\n>\n> attachment converted : \" c : \\ drive _ e \\ eudora \\ attach \\ 4 thconfsessionsl 2 . doc \"\n>\n>\n> lenos trigeorgis\n> professor of finance\n> university of cyprus\n> dept of business\n> 75 kallipoleos , po box 20537\n> cy 1678 nicosia cyprus\n>\n> tel : + 357 2 892261\n> fax : 339063\n>\n>\n>\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.306+0000", "entityId": 7316, "properties": {"text": "Subject: aram ' s visit\njesus ,\nfriday , april 28 , works for me . i am free between 8 : 00 - 10 : 30 to meet with\naram .\nwould you like to meet him for lunch or dinner ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.311+0000", "entityId": 7317, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2000\n12 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhao peng on 04 / 19 / 2000 11 : 52 : 53 am\nto : shirley crenshaw\ncc :\nsubject : re : telephone interview with the enron corp . research group\ndear shirley :\nit is my pleasure to have the opportunity to interview with enron . i will\nbe available at 412 - 661 - 3393 at 4 : 30 pm eastern time . please let me know if\nthere is any change about this sechedule . thanks .\nhao\n- - on wednesday , april 19 , 2000 , 11 : 29 am - 0500 shirley crenshaw\nwrote :\n>\n>\n> hello hao :\n>\n> the enron corp . research group would like to interview you by telephone\n> tomorrow , thursday , april 20 , at 3 : 30 pm central standard time ( 4 : 30\n> eastern time ) .\n>\n> please let me know if this is satisfactory to you and what telephone\n> number they may reach you at .\n>\n> the interview will include the following members of the research group :\n>\n> vince kaminski managing director\n> stinson gibner vice president\n> vasant shanbhogue vice president\n> zimin lu director\n> tanya tamarchenko manager\n>\n> if you have any questions , please let me know\n>\n> thanks you very much and look forward to hearing from you .\n>\n> shirley crenshaw\n> administrative coordinator\n> enron corp . research\n> 713 / 853 - 5290\n> email : shirley . crenshaw @ enron . com\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.320+0000", "entityId": 7318, "properties": {"text": "Subject: re : ruewan ' s resume\nno interest for global risk markets . his background does not address the\nneeds .\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.328+0000", "entityId": 7319, "properties": {"text": "Subject: cv - keith baggerly\ni have attached a copy of my cv as a postscript file .\nif you need further info , or a different format , please\nlet me know .\nenjoy !\nkeith baggerly\nasst professor , statistics\nrice university\n( 713 ) 348 - 5282\nkabagg @ stat . rice . edu\n- 00 apr . ps", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.334+0000", "entityId": 7320, "properties": {"text": "Subject: interview with ruewan jayasuriya\ngood morning ruwan :\nthe enron corp . research group would very much like to interview you on\nfriday , april 28 . the following schedule has been set up . please let me\nknow if it is not convenient for you .\nfriday , april 28 th :\n1 : 00 pm vasant shanbhogue\n1 : 30 pm vince kaminski\n2 : 00 pm stinson gibner\n2 : 30 pm krishna krishnarao\n3 : 00 pm zimin lu\n3 : 30 pm tanya tamarchenko\nall interviews will be conducted in conference room eb 1938 .\nplease come to the reception desk in the lobby of the enron bldg . and ask\nfor me . they will call me and i will meet you in the 19 th floor elevator\nlobby .\nif you have any questions , please do not hesitate to call me .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2000\n09 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 19 / 2000 08 : 56 am\nto : shirley crenshaw / hou / ect @ ect\ncc : pushkar shahi / hou / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect\nsubject : ruewan ' s resume\nshirley ,\nplease set up an informal interview :\nvk\nvs\nsg\nkp\nzl\ntt\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 19 / 2000\n08 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npushkar shahi\n04 / 18 / 2000 04 : 52 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : ruewan ' s resume\nvince :\nas discussed , i am forwarding ruwan ' s resume to you . ruwan is very excited\nabout meeting with you and elaborating on his qualifications . please let me\nknow a convenient time for next friday ( 4 / 28 / 00 ) when he could visit with\nyou ( or any other day next week at your convenience ) .\ni have briefly explained to him the nature of the job at enron research\nlaying special stress on quantitative , programming and modelling experience .\nruwans seems very interested in that kind of work .\nsincerely ,\npushkar shahi\nfinancial trading", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.338+0000", "entityId": 7321, "properties": {"text": "Subject: power 2000\npower 2000 - may 8 - 11\n?\nplease note to hand in the following by no later than april 24 :\n?\npresentation ( s ) ( if you are not giving one , please advise )\nbiography\nspeaker checklist\n?\nas some portions of materials have already been handed over , please only\nturn in what you haven ' t already submitted . please also note that if\nemailing a powerpoint presentation , please email it in a 97 version or\nlower . ? ? ? ? ? ? ?\n?\nit is urgent that all your materials be sent by this monday , as the\nconference is rapidly approaching . if you have any questions , please contact\nme to further discuss . i will be out of the office this thursday and friday\nbut will be returning on monday . ?\n?\n?\nregards ,\namy lamonsoff\nconference coordinator\nt ( 212 ) 925 - 1864 xl 48\nf ( 212 ) 925 - 7585\nalamonsoff @ watersinfo . com\n? ? ? ? ? ? ? ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.343+0000", "entityId": 7322, "properties": {"text": "Subject: re : real options conference in cambridge\nsteve\nthanks for agreeing to talk . i attach the program to see the other speakers\nand style ( it is addressed to a professional autience )\nplease give me a suitable title for the talk ( replacing kaminski \u0001 % s slot on\njuly 6 / energy session ) and the details of your position\nthanks\nlenos\nat 05 : 01 _ _ 04 / 20 / 00 + 0100 , steven leppard wrote :\n>\n>\n> dear prof trigeorgis\n>\n> vince kaminski has suggested that i would be a suitable speaker at your july\n> conference in cambridge , and i ' d be happy to come along if required . please\n> could you send me appropriate details , and the audience type expected .\n>\n> many thanks .\n>\n> yours sincerely ,\n> steve leppard\n>\n>\n>\n>\n- 4 thconfsessions . doc\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.347+0000", "entityId": 7323, "properties": {"text": "Subject: re : confirm participation at real options conference at cambridge\nu . - urgent\ni ' d love to . it ' d be good to get to know lenos .\ncheers ,\nsteve\nvince j kaminski\n04 / 20 / 2000 02 : 09 pm\nto : steven leppard / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : confirm participation at real options conference at cambridge\nu . - urgent\nsteve ,\nare you interested in speaking at this conference ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 20 / 2000\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlenos trigeorgis on 04 / 19 / 2000 05 : 32 : 27 pm\nto : \" vince j kaminski \"\ncc :\nsubject : re : confirm participation at real options conference at cambridge\nu . - urgent\nvince\ncan you please check with steve leppard and ask him to confirm , and send to\nme his position and title of his talk ( if different from yours ) ?\nthanks very much again\nlenos\nat 05 : 14 _ _ 04 / 19 / 00 - 0500 , you wrote :\n>\n>\n> lenos ,\n>\n> my busy schedule does not allow me to attend .\n>\n> i would like , however , to recommend my colleague who works\n> in london , steve leppard .\n> he can make a very interesting and original presentation on real options .\n> please , let me know what you think .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> lenos trigeorgis on 04 / 18 / 2000 09 : 29 : 18 pm\n>\n> to : lenos . trigeorgis @ rogroup . com\n> cc : ( bcc : vince j kaminski / hou / ect )\n> subject : confirm participation at real options conference at cambridge\n> u . - urgent\n>\n>\n>\n> the attached file contains the tentative program for two back - to - back real\n> options conferences ( a professional one for july 5 - 6 , and the standard\n> annual academic one for july 7 - 8 ) at cambridge u .\n>\n> your name has been provisionally included on the program . please check all\n> the information relating to you and confirm your participation as listed\n> ( or advice us of desired changes immediately ) .\n>\n> thank you .\n>\n> lenos\n>\n>\n>\n> attachment converted : \" c : \\ drive _ e \\ eudora \\ attach \\ 4 thconfsessionsl 2 . doc \"\n>\n>\n> lenos trigeorgis\n> professor of finance\n> university of cyprus\n> dept of business\n> 75 kallipoleos , po box 20537\n> cy 1678 nicosia cyprus\n>\n> tel : + 357 2 892261\n> fax : 339063\n>\n>\n>\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.352+0000", "entityId": 7324, "properties": {"text": "Subject: re : confirm participation at real options conference at cambridge\nu . - urgent\nsteve ,\nare you interested in speaking at this conference ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 20 / 2000\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlenos trigeorgis on 04 / 19 / 2000 05 : 32 : 27 pm\nto : \" vince j kaminski \"\ncc :\nsubject : re : confirm participation at real options conference at cambridge\nu . - urgent\nvince\ncan you please check with steve leppard and ask him to confirm , and send to\nme his position and title of his talk ( if different from yours ) ?\nthanks very much again\nlenos\nat 05 : 14 _ _ 04 / 19 / 00 - 0500 , you wrote :\n>\n>\n> lenos ,\n>\n> my busy schedule does not allow me to attend .\n>\n> i would like , however , to recommend my colleague who works\n> in london , steve leppard .\n> he can make a very interesting and original presentation on real options .\n> please , let me know what you think .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> lenos trigeorgis on 04 / 18 / 2000 09 : 29 : 18 pm\n>\n> to : lenos . trigeorgis @ rogroup . com\n> cc : ( bcc : vince j kaminski / hou / ect )\n> subject : confirm participation at real options conference at cambridge\n> u . - urgent\n>\n>\n>\n> the attached file contains the tentative program for two back - to - back real\n> options conferences ( a professional one for july 5 - 6 , and the standard\n> annual academic one for july 7 - 8 ) at cambridge u .\n>\n> your name has been provisionally included on the program . please check all\n> the information relating to you and confirm your participation as listed\n> ( or advice us of desired changes immediately ) .\n>\n> thank you .\n>\n> lenos\n>\n>\n>\n> attachment converted : \" c : \\ drive _ e \\ eudora \\ attach \\ 4 thconfsessionsl 2 . doc \"\n>\n>\n> lenos trigeorgis\n> professor of finance\n> university of cyprus\n> dept of business\n> 75 kallipoleos , po box 20537\n> cy 1678 nicosia cyprus\n>\n> tel : + 357 2 892261\n> fax : 339063\n>\n>\n>\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.357+0000", "entityId": 7325, "properties": {"text": "Subject: masayuki fujita from the mitsubishi research institute\ni have been at enron for eight months and work under sally beck .\nin december i attended the exotic energy derivatives conference , where i met\nmasayuki fujita from the mitsubishi research institute . he is doing research\non the deregulation of the japanese power market . we had lunch together and\nchatted for some time about his work ( i worked in a japanese company for 8\n1 / 2 years and speak fluent japanese , so we got along easily ) .\nhe was in houston this week and came by to visit . on monday , we met with\nvince kaminski and grant masson and later had dinner with them . sally\nsuggested that i introduce him to alan aronowitz and you . of course , you\nwere out of town , but we did meet with alan who said you would probably want\nto meet him back in tokyo anyway .\nwould you like for me to set something up ?\nregards ,\neugenio", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.361+0000", "entityId": 7326, "properties": {"text": "Subject: re : aram ' s visit\njesus ,\ni yalked to aram . i have him on my calendar from 8 : 30 till 10 : 00 on friday .\na dinner / lunch on fri would work for me .\nvince\njesus melendrez @ enron\n04 / 20 / 2000 09 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : aram ' s visit\nvince ,\ni asked my assistant to schedule the meetings with aram and she will\ncontacting your asst . . as far as lunch or diner , i would be interested . i\nwill visit with aram in the next few days or if you do , you might want to ask\nhim . i believe he is coming for a wedding and he might have a tight schedule\nbut lets ask . hope all is going well . jgm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.366+0000", "entityId": 7327, "properties": {"text": "Subject: thanks\ndear mr . kaminski :\nthank you very much for the interview today . it was a great opportunity for\nme to learn more about your company , and my pleasure to speak with you . i\nfeel that the position is very interesting and challenging . i am confident\nthat i can make solid contributions to the company with my background and\nthe training received from the mscf program .\nthanks again , and i am looking forward to hearing from you soon .\nsincerely ,\nhao peng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.370+0000", "entityId": 7328, "properties": {"text": "Subject: re : summer internship\nshirley ,\nfyi . it looks like cantekin will be starting on may 22 ( summer intern ) .\ncan we find him space on 19 ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 20 / 2000\n02 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" cantekin dincerler \" on 04 / 20 / 2000 11 : 21 : 11 am\nplease respond to\nto : \" ' stinson gibner ' \"\ncc :\nsubject : re : summer internship\nstinson ,\ni just received a word from associate & analyst program that the official\nstarting dates are may 22 , and june 2 . they seem to be strict about this .\nhopefully i ' ll make it to may 22 .\nregards ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n> - - - - - original message - - - - -\n> from : stinson gibner [ mailto : stinson . gibner @ enron . com ]\n> sent : thursday , april 13 , 2000 5 : 13 pm\n> to : cantekin @ mail . utexas . edu\n> subject : summer internship\n>\n>\n>\n>\n> cantekin ,\n>\n> you should be getting an offer of a summer internship within\n> the next few days .\n> if you don ' t , please let me know .\n>\n> i think you will be working with me on a combination of enron\n> broadband services\n> and enron north america projects and am looking forward to\n> having your help .\n> some of the projects should be a lot of fun .\n>\n>\n> when are available to start so i can plan ahead for you ?\n>\n> best regards ,\n>\n> stinson\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.375+0000", "entityId": 7329, "properties": {"text": "Subject: re : summer internship\nvince ,\ni just wanted to tell you that i am looking forward to being there again and\nthank you for giving me this opportunity to contribute and learn . official\nstarting dates ( as i was told by a vasant shanbhogue\n> subject : re : summer internship\n>\n>\n>\n>\n> cantekin ,\n>\n> the summer associate program has closed but i shall check to see\n> if i can get one extra place .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" cantekin dincerler \" on 03 / 28 / 2000\n> 11 : 48 : 53 am\n>\n> please respond to cantekin @ mail . utexas . edu\n>\n> to : vkamins @ ect . enron . com\n> cc : ( bcc : vince j kaminski / hou / ect )\n> subject : summer internship\n>\n>\n>\n> hi vince ,\n>\n> i am writing you at this time to inquire as to the potential\n> of renewing my\n> internship at enron for the summer of 2000 .\n>\n> while the date of my request is later than i would have\n> wished , the reason\n> is that i had originally planned to go back to turkey this\n> summer and get\n> my mandatory military duty done . however , i now realize i can\n> put it off to\n> a further date . that left me wondering if you believe there\n> is a project\n> that i can get involved in this summer and be useful . if that were the\n> case , i would be more than happy to postpone my military duty\n> and spend the\n> summer with the research group . i discussed this with dr .\n> ronn , and he is\n> very supportive of this idea .\n>\n> i apologize again for bringing up this issue late , and look forward to\n> hearing from you .\n>\n> best regards ,\n>\n> - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n> cantekin dincerler\n>\n> doctoral candidate\n> the university of texas at austin\n> graduate school of business\n> department of finance\n> office : ( 512 ) 471 - 1676\n> fax : ( 512 ) 471 - 5073\n> home : ( 512 ) 472 - 5356\n> http : / / uts . cc . utexas . edu / ~ cantekin\n> - - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.379+0000", "entityId": 7330, "properties": {"text": "Subject: pres . to delainy\nsorry vince , please use this file instead of the earlier one .\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.383+0000", "entityId": 7331, "properties": {"text": "Subject: dave d . presentation\nvince ,\nhere it is . i did not include a slide about london . let me know if you\nthink it is needed .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.388+0000", "entityId": 7332, "properties": {"text": "Subject: updated presentation\ni added guadalupe ' s experience .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.394+0000", "entityId": 7333, "properties": {"text": "Subject: delainey presentation g . masson\nvince :\nhere is tanya ' s and my presentation . it is a bit long and deliberately a bit\nbombastic . this is deliberate to hammer home the fact that my group provides\npower trading support for 5 continents as well as support for corporate level\nrisk control . if i have over done it , please let me know or else feel free\nto make modificaitons .\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.399+0000", "entityId": 7334, "properties": {"text": "Subject: updated org chart\nvince ,\ni updated my part of the org chart with the following changes .\n1 . corrected samer ' s title to director ( he was hired by azurix as a director\nand has retained that title )\n2 . corrected spelling of samar khleif ' s name .\n3 . added vacant analyst under zimin\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.404+0000", "entityId": 7335, "properties": {"text": "Subject: maureen ' s presentation\nhere it is !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.409+0000", "entityId": 7336, "properties": {"text": "Subject: storage book / luken ' s storage model\nplease plan to attend a meeting on thursday , april 27 , from 3 : 00 - 5 : 00 p . m .\nto discuss luken ' s storage model and , more importantly , where we want to go\nwith a storage book . this meeting will be in eb - 30 cl .\nany questions , contact mark breese ( ext . 3 - 6751 ) or gerri irvine ( ext .\n3 - 6145 ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.414+0000", "entityId": 7337, "properties": {"text": "Subject: re : energy and e - business : a brief history of the future\njames ,\ni hall appreciate a copy of \" a brief history of the future . \"\nvince kaminski\nenron\n\" j . p . rosenfield \" on 04 / 24 / 2000 12 : 16 : 25 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : energy and e - business : a brief history of the future\nmr . vincent j . kaminski\nmanaging director\nenron capital dan yergin , joe stanislaw and julian west of\ncera ; andy lippman of mit ' s media lab ; susan desanti of the ftc ; and others . ?\nparticipation is limited .\nfor more details or to enroll in the summit and / or the e - squared retainer\nservice , please visit http : / / www . cera . com / offerings / ret / e 2 / .\nplease feel free to contact me , or my colleague tim fitzgerald at\n617 - 441 - 2679 ; email to tfitzgerald @ cera . com if you have any questions or\nfurther considerations\nsincerely ,\njames rosenfield\nexecutive vice president\nour relationship with you is very important to us . ? if you wish not to\nreceive future e - mail notifications , please send a reply to this message with\n\" donotemail \" as the subject of your message . (\nmailto : info @ cera . com ? subject = donotemail )\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.419+0000", "entityId": 7338, "properties": {"text": "Subject: energy derivatives conference - toronto , may 29\ndetails of the upcoming energy derivatives conference are now posted at\ni look forward to receiving your papers by may 5 .\nthank you ,\namy ( for p . p . boyle )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\namy aldous , conference co - ordinator\ncentre for advanced studies in finance\nuniversity of waterloo\nwaterloo , on n 2 l 3 gl\ntel : ( 519 ) 888 - 4567 ext . 5728\nfax : ( 519 ) 888 - 7562\nemail : aaldous @ uwaterloo . ca\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.423+0000", "entityId": 7339, "properties": {"text": "Subject: energy extravaganza - 2 weeks away !\nenergy extravaganza is just two weeks away - saturday , may 6 , 2000 ! if you\nhaven ' t bought your ticket or asked your company to sponsor a table , do so\nand\nlet us know . there are still spots available for both , and you won ' t want to\nmiss this exciting evening ! there will be magic , dinner , dancing and some\nwonderful silent auction items for the taking ! bid on condos in maui , lake\ntahoe and a log home in angelfire ! there will be golf and hunting packages ,\nsports memorabilia , and pamper packages for your significant other !\nthere are still a limited number of raffle tickets left for a chance at that\nnew\n2000 harley davidson 1200 custom sportster , so call the hea office if you\nwould\nlike to buy one or to purchase your gala tickets . don ' t delay - we want to\nsee\nyou there !\nthis message was sent by :\nteresa knight , executive director\nhouston energy association ( hea )\nphone : ( 713 ) 651 - 0551\nfax : ( 713 ) 659 - 6424\ntknight @ houstonenergy . org\nif you would like to have your email address removed from our mailing list ,\nplease click the link below to the hea home page , where you will find a\nmini - form to remove your name automatically .\nhttp : / / www . houstonenergy . org /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.428+0000", "entityId": 7340, "properties": {"text": "Subject: last day notification\nshelia walton , hr , told me that my last day with my department will be june\n30 . meanwhile i talked last week to ebs , enrononline , and ees . i was most\ninterested in the ees talk with harold buchanan who needs to know that he has\nthe most complete list of potential customers and then information about\nthose customers .\nany happenings from your talks ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.436+0000", "entityId": 7341, "properties": {"text": "Subject: re : monday presentation corrected\ni made a few changes to make ebs projects slide more uniform and fixed\nspelling of one name for ena projects slide .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.443+0000", "entityId": 7342, "properties": {"text": "Subject: re : monday presentation\ni have made one correction to guadalupe ' s degree - - - it is actually ma , law\nand diplomacy rather than ms , finance .\nhere is the corrected version .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.449+0000", "entityId": 7343, "properties": {"text": "Subject: aram\nrick ,\naram is coming to houston , in my view , to explore the possibility of coming\nback to enron\n( given uncertain situation under the scottish rule at the old pacificorp ) .\ni shall suggest that he meet with you and / or ted murphy as well .\ni can wait for karen to come back . it ' s not urgent . we are still working on\nthe volumetric risk module and the team is making a very good progress .\nthey gave a presentation today to rick carson and me .\nwe have to decide what comes next ( asset / liability model or\noperational risk model ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.453+0000", "entityId": 7344, "properties": {"text": "Subject: schedule for aram sogomonian\nfollowing is the schedule for aram sogomonian :\nfriday , april 28 - eb 2935\n8 : 30 - 9 : 30 . - vince kaminski\n9 : 30 - 10 : 30 - andrea reed\n10 : 30 - 11 : 30 - carl tricoli\n11 : 30 - 12 : 30 - jesus ' melendrez", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.460+0000", "entityId": 7345, "properties": {"text": "Subject: a resume for your consideration\nvince , stinson :\ni gave a talk to a bunch of uh mba students taking a course on options . one\nof the more interesting of the inevitable stream of resumes is the enclosed .\nperhaps an ebs hire ?\ngrant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 04 / 24 / 2000 08 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" matthew crouse \" on 04 / 21 / 2000 05 : 06 : 08 pm\nto : grant . masson @ enron . com\ncc :\nsubject : uh lecture and potential career opportunity\ndr . masson ,\ni attended your lecture at uh and enjoyed it tremendously . if possible , i\nwould like to investigate a career opportunity with your group in particular\nor enron in general . would you please review my resume and / or forward to\npotentially interested parties ?\nin tandem will all of enron ' s other propaganda efforts , your top - notch\nlecture at uh spurred me to do some soul searching . i currently work at\nduke energy trading and marketing , but have been extremely impressed with\nenron ' s cutting - edge research and market - leading position .\ni have a ph . d in electrical engineering from rice ( statistical signal\nprocessing ) with two years of experience at duke relating to the valuation ,\nrisk management , and risk measurement of financial derivatives and physical\nassets . i seek a similar position that would allow me to leverage my\nquantitative skills and grow within in the corporation .\ni believe i would be a great fit with enron and hope you would consider me\nfor a potential position .\nbest regards ,\nmatt crouse\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com\n- matt crouse cv . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.465+0000", "entityId": 7346, "properties": {"text": "Subject: re : summer\nvan ,\nthanks for your message . we are taking a number of interns this summer , but\nthe a & a\nprogram has closed the books for this year . we were able to reopen the list\nto add one candidate a few weeks ago , but cannot do it again . we promised it\nwould be the last addition .\nvince\nvan ngo on 04 / 23 / 2000 11 : 42 : 54 am\nto : vince kaminski\ncc :\nsubject : summer\ndear vince ,\ni ' m writing to let you know that i have been in touch with christy young from\nthe a & a program and will be finding out my assignment for this summer soon . ?\ni am very excited to be back at enron , and i hope to see the research team\nagain .\ni ' d also like to inquire about summer positions within research . ? will the\nresearch group be taking on another intern this summer ? ? since i know there\nis no busier place at enron than the research group , if there is a position\navailable for this summer that you are looking to fill or that may be open\nfor consideration , i would love to connect you to another rice student .\nplease let me know if the group is considering receiving a new intern this\nsummer . ? if so , i would be thrilled to put you in touch with brad aimone , a\nsenior chemical engineering student here at rice who will be graduating with\nboth his b . s . and his masters in chemical engineering next may . ? brad has\ngained extensive laboratory research experience over the past two years . ? his\nacademic focus gives him a strong mathematical , quantitative background and\nexcellent computer skills . ? i believe his skills are transferable and\nrelevant to the group , and he is a deeply dedicated individual . ? if the\nresearch group is looking for a summer intern , i hope it will continue\nenron ' s strong support and recruit of rice university students .\nplease feel free to contact brad directly to pursue this discussion . ( as i\nrealize the summer months are not far off , if it is easier , an arrangement\nthrough prostaff may be made similar to my work extension at the end of last\nsummer ) . ? i have attached a copy of his resume for your review . ? brad will be\nin houston this summer . ? his contact information is given below .\njames bradley ( brad ) aimone\n6320 main , houston , tx ? 77005\n713 - 630 - 8035\nimaknee @ rice . edu\n?\nalso , please feel free to contact me if you have any questions . ? i sincerely\nhope that you will have the opportunity to discover the contributions brad\ncan make to the research group . ? i certainly know that he would gain\ntremendously from the experience as i did last summer .\nthank you very much for your consideration .\nsincerely ,\nvan\nph : 713 - 630 - 8038\n- brad _ resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.473+0000", "entityId": 7347, "properties": {"text": "Subject: re : summer\ndear vince ,\nthank you for your prompt response . i do realize\nthat the a i was inquiring about\nthe possibility of hiring on an individual basis .\nagain , i greatly appreciate your time . i look\nforward to seeing you soon !\nregards ,\nvan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.478+0000", "entityId": 7348, "properties": {"text": "Subject: re : security - after hours access\ntony ,\nno problem .\nvince\nanthony _ mends @ enron . net on 04 / 24 / 2000 09 : 54 : 49 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : security - after hours access\nvince ,\nthank you for honoring us at our home on saturday . it was a real pleasure to\nshare an evening with you . we hope we shall be able to do it again with your\nfamily when the opportunity arises .\ni am forwarding to you a request from john young who works in my group as a\ndocumentation specialist . kindly review his request and let me know if you are\nable to grant it .\ntony\nenron broadband services\n713 - 853 - 3939\n- - - - - forwarded by anthony mends / enron communications on 04 / 24 / 00 08 : 37 am\n- - - - -\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| | john young |\n| | |\n| | 04 / 21 / 00 |\n| | 11 : 28 am |\n| | |\n| - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - >\n| |\n| to : anthony mends / enron communications @ enron\ncommunications |\n| cc : shirley crenshaw / hou / ect @ ect , krista\nreed / contractor / enron |\n| communications @ enron\ncommunications |\n| subject : security - after hours\naccess |\ntony ,\nearl harvey and i are located on the 19 th floor inside the corporate research\ngroup ' s area , which is in a secured area . they are a very supportive and\ncooperative group , and conditions here are ideal for research , analysis , and\nwriting . i don ' t want to jeopardize their security in any way , but , if\npossible , i would like to be added to the after hours and weekend access list\nfor situations such as meeting deadlines and research and that if you did not concur with my request , then\nthere\nwould be no reason to copy him at all .\nthanks ,\njay\n713 - 853 - 5941", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.482+0000", "entityId": 7349, "properties": {"text": "Subject: japanese power market\nanother article i thought you might find interesting .\nregards ,\neugenio\nreview of energy policies kicks off\nasahi shimbun\napril 25 , 2000\na government advisory panel on monday embarked on a\ncomprehensive review of energy - related policies .\n` ` we want to come up with feasible policies and at the\nsame time clearly present reasons for those policies , ' '\nyoichi kaya , a professor emeritus at the university of\ntokyo , told a meeting of the coordination subcommittee\nunder the advisory committee for energy , an advisory\npanel to minister of international trade and industry\ntakashi fukaya . kaya chairs the subcommittee .\nthe nuclear development policy , including the\ngovernment ' s goal for building new nuclear power plants ,\nis expected to be a focus of the discussions .\na spate of nuclear accidents have made construction of\nplants increasingly difficult , and the nation ' s power\nsuppliers have reduced the number of new nuclear power\nplants expected to be in operation by fiscal 2010 from 20\nto 13 .\nthe subcommittee , set up for the first time in about 10\nyears , is made up of about 30 members , and members of\nanti - nuclear nongovernmental organizations have been\nincluded for the first time .\nsome members told monday ' s meeting that the\ngovernment must stop taking the nuclear development\npolicy for granted and seriously look into the possibility\nof introducing renewable energy , such as wind and solar\npower .\nalso on the agenda will be energy saving measures .\nenergy consumption in the residential and commercial\nsector , made up of homes and offices , and in the\ntransportation sector , which includes cars and trucks , has\nalmost doubled over the past 25 years .\nat monday ' s meeting , many members stressed the need\nto change public consciousness toward the use of\nenergy .\nmiti plans to present studies on how life would be\naffected by compulsory energy saving measures such as\nautomatically turning off air conditioners at certain\ntemperatures or vehicle engines when they are idle .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.486+0000", "entityId": 7350, "properties": {"text": "Subject: enrondirectfinance . com usernames and passwords\nthe enrondirectfinance website was launched this morning . for access ,\nplease use the following :\nurl = www . enrondirectfinance . com\nusername = enroninternal\npassword = astros\nreal player v 7 . 0 and adobe acrobat v 4 . 0 are required to view deal\ninformation . free downloads these programs are available on the\nenrondirectfinace website .\nif you have any technical difficulties , please contact the enrondirectfinance\ntechnical help desk at 3 - 9438 .\nplease direct comments regarding the website to any of the following\nindividuals :\nharry arora 3 - 6750\njeff bartlett 3 - 5629\nsuresh raghavan 3 - 4217", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.491+0000", "entityId": 7351, "properties": {"text": "Subject: re : real options conference in cambridge\nsteve\ngiven the practitioner audience , i would prefer a less technical\npresentation . perhaps if you can talk about use of real options at enron in\ngeneral , and then give some examples ( graphically - - no notation ) of\ndiagrammatic representation might be good . remember there are many talks\nand the capacity of the audience to absorb notation , grammar , and technical\ndetail is limited .\nhow about a more generic title \" real options at enron ? \"\nplease give me your title within enron please\nat 11 : 07 d _ 04 / 25 / 00 + 0100 , steven . leppard @ enron . com wrote :\n>\n>\n> lenos\n>\n> i ' d like to give a talk entitled \" diagrammatic representation of real\n> options in enron \" , in which i will give a brief run - down of a diagrammatic\n> technique i have developed for representing real option deals . my notation\n> allows originators , managers and quants to communicate unambiguously , while\n> still appreciating the complexity and subtlety of real optionality . i have\n> defined a \" diagrammatic grammar \" which guarantees that the pricing of the\n> deal follows immediately and automatically from the diagram .\n>\n> i propose to introduce the symbols and grammar , then go on to present some\n> suitable examples of diagrams . if appropriate i ' ll talk about the links\n> with dynamic programming . ( i will need some guidance as to how much\n> technical detail i can go into based on the audience . )\n>\n> all the best ,\n> steve\n>\n>\n>\n>\n> ( embedded enron capital & trade resources corp .\n> image moved\n> to file : from : lenos trigeorgis\n> pic 29415 . pcx )\n> 04 / 20 / 2000 08 : 45 pm\n>\n>\n>\n>\n>\n>\n> to : \" steven leppard \"\n> cc : \" vince j kaminski \"\n>\n> subject : re : real options conference in cambridge\n>\n>\n> steve\n>\n> thanks for agreeing to talk . i attach the program to see the other speakers\n> and style ( it is addressed to a professional autience )\n>\n> please give me a suitable title for the talk ( replacing kaminski \u0001 % s slot on\n> july 6 / energy session ) and the details of your position\n>\n> thanks\n>\n> lenos\n>\n> at 05 : 01 _ _ 04 / 20 / 00 + 0100 , steven leppard wrote :\n> >\n> >\n> > dear prof trigeorgis\n> >\n> > vince kaminski has suggested that i would be a suitable speaker at your\n> july\n> > conference in cambridge , and i ' d be happy to come along if required .\n> please\n> > could you send me appropriate details , and the audience type expected .\n> >\n> > many thanks .\n> >\n> > yours sincerely ,\n> > steve leppard\n> >\n> >\n> >\n> >\n> ( see attached file : 4 thconfsessions . doc )\n>\n> lenos trigeorgis\n> professor of finance\n> university of cyprus\n> dept of business\n> 75 kallipoleos , po box 20537\n> cy 1678 nicosia cyprus\n>\n> tel : + 357 2 892261\n> fax : 339063\n>\n>\n>\n> attachment converted : \" c : \\ drive _ e \\ eudora \\ attach \\ pic 29415 . pcx \"\n>\n> attachment converted : \" c : \\ drive _ e \\ eudora \\ attach \\ 4 thconfsessionsl 7 . doc \"\n>\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.496+0000", "entityId": 7352, "properties": {"text": "Subject: re : real options conference in cambridge\nlenos\ni ' d like to give a talk entitled \" diagrammatic representation of real options\nin enron \" , in which i will give a brief run - down of a diagrammatic technique\ni have developed for representing real option deals . my notation allows\noriginators , managers and quants to communicate unambiguously , while still\nappreciating the complexity and subtlety of real optionality . i have defined\na \" diagrammatic grammar \" which guarantees that the pricing of the deal\nfollows immediately and automatically from the diagram .\ni propose to introduce the symbols and grammar , then go on to present some\nsuitable examples of diagrams . if appropriate i ' ll talk about the links with\ndynamic programming . ( i will need some guidance as to how much technical\ndetail i can go into based on the audience . )\nall the best ,\nsteve\nenron capital & trade resources corp .\nfrom : lenos trigeorgis\n04 / 20 / 2000 08 : 45 pm\nto : \" steven leppard \"\ncc : \" vince j kaminski \"\nsubject : re : real options conference in cambridge\nsteve\nthanks for agreeing to talk . i attach the program to see the other speakers\nand style ( it is addressed to a professional autience )\nplease give me a suitable title for the talk ( replacing kaminski \u0001 % s slot on\njuly 6 / energy session ) and the details of your position\nthanks\nlenos\nat 05 : 01 _ _ 04 / 20 / 00 + 0100 , steven leppard wrote :\n>\n>\n> dear prof trigeorgis\n>\n> vince kaminski has suggested that i would be a suitable speaker at your july\n> conference in cambridge , and i ' d be happy to come along if required . please\n> could you send me appropriate details , and the audience type expected .\n>\n> many thanks .\n>\n> yours sincerely ,\n> steve leppard\n>\n>\n>\n>\n- 4 thconfsessions . doc\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.501+0000", "entityId": 7353, "properties": {"text": "Subject: re : video conference for interview : stig faltinsen\nhi shirley ,\ni hope you had a pleasant easter break . . . . for the video interview for stig\nfaltinsen , if we do friday 28 th april , the only slot available is from 5 pm\nonwards london time - can vince do from 5 pm to 5 . 30 pm ?\nregards ,\nanjam\nx 35383\nvince j kaminski\n25 / 04 / 2000 16 : 25\nto : anjam ahmad / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : video conference for interview : stig faltinsen\nanjam ,\nsorry , i am busy on thursday .\ni shall ask shirley to contact you . friday 9 : 30 to 10 : 30 my time would work .\nvince\nvince\nanjam ahmad\n04 / 25 / 2000 09 : 51 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : video conference for interview : stig faltinsen\nhi vince ,\nthis candidate was forwarded from the norway office . he is finishing his phd\nin cambridge but is available soon . if you are free on thursday before the\nregular weekly meeting that would be good - would 3 pm or 4 pm work for you\n( 9 am or 10 am your time ) to set up the video interview ?\nregards ,\nanjam\nx 35383\ncv attached :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.506+0000", "entityId": 7354, "properties": {"text": "Subject: re : real options conference in cambridge\nsteve ,\nrisk will give you more exposure in the peer group faster .\nshan left ( i think they are firing people at risk - a normal development\nfor a successful company that got ahead of itself ) .\nif risk does not work , i shall talk to phelim about speeding the publication .\nvince\nsteven leppard\n04 / 25 / 2000 08 : 06 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : real options conference in cambridge\nhi vince\nthe person i was dealing with ( shan millie ) passed on my paper to her\nsuccessor , and i ' ve heard nothing since . the plan was to try and publish the\narticle in risk ' s \" game choices \" real options book , which is being published\nin june , along with a summary version for the magazine .\ni ' m supposed to be waiting for them to get back to me , and it ' s not been at\nthe front of my mind until now . i think i ' ll chase them up .\ninterestingly at a recent risk course phelim boyle expressed an interest in\nmy work to appear in one the the journals he edits , i think it ' s decision\nscience or something like that . do you think this would be a more\nappropriate home for the work ?\none more thing that may be of interest to you is that i ' ve now worked forward\nrecursive dp into my notation too . it ' s simply a matter of putting the\ndecision nodes on the left hand side of the value symbols !\nshould i chase risk , or pursue the peer reviewed phelim boyle option ?\nsteve\nvince j kaminski\n04 / 25 / 2000 02 : 00 pm\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : re : real options conference in cambridge\nsteve ,\nhow are the discussions with risk about an article progressing ?\nvince\nsteven leppard\n04 / 25 / 2000 05 : 07 am\nto : lenos trigeorgis @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : real options conference in cambridge\nlenos\ni ' d like to give a talk entitled \" diagrammatic representation of real options\nin enron \" , in which i will give a brief run - down of a diagrammatic technique\ni have developed for representing real option deals . my notation allows\noriginators , managers and quants to communicate unambiguously , while still\nappreciating the complexity and subtlety of real optionality . i have defined\na \" diagrammatic grammar \" which guarantees that the pricing of the deal\nfollows immediately and automatically from the diagram .\ni propose to introduce the symbols and grammar , then go on to present some\nsuitable examples of diagrams . if appropriate i ' ll talk about the links with\ndynamic programming . ( i will need some guidance as to how much technical\ndetail i can go into based on the audience . )\nall the best ,\nsteve\nenron capital & trade resources corp .\nfrom : lenos trigeorgis\n04 / 20 / 2000 08 : 45 pm\nto : \" steven leppard \"\ncc : \" vince j kaminski \"\nsubject : re : real options conference in cambridge\nsteve\nthanks for agreeing to talk . i attach the program to see the other speakers\nand style ( it is addressed to a professional autience )\nplease give me a suitable title for the talk ( replacing kaminski \u0001 % s slot on\njuly 6 / energy session ) and the details of your position\nthanks\nlenos\nat 05 : 01 _ _ 04 / 20 / 00 + 0100 , steven leppard wrote :\n>\n>\n> dear prof trigeorgis\n>\n> vince kaminski has suggested that i would be a suitable speaker at your july\n> conference in cambridge , and i ' d be happy to come along if required . please\n> could you send me appropriate details , and the audience type expected .\n>\n> many thanks .\n>\n> yours sincerely ,\n> steve leppard\n>\n>\n>\n>\n- 4 thconfsessions . doc\nlenos trigeorgis\nprofessor of finance\nuniversity of cyprus\ndept of business\n75 kallipoleos , po box 20537\ncy 1678 nicosia cyprus\ntel : + 357 2 892261\nfax : 339063", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.511+0000", "entityId": 7355, "properties": {"text": "Subject: re : houston visit\nthank you very much for your prompt reply . pls let me know if you ' re going\nto be in ny , otherwise i look forward to seeing you soon in houston .\nsoussan\n( 914 ) 253 - 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , april 25 , 2000 11 : 23 am\nto : faizs @ texaco . com\nsubject : re : houston visit\nsoussan ,\nit looks fine .\nlook forward to meeting you again in houston or new york .\nvince\n\" faiz , soussan \" on 04 / 25 / 2000 09 : 29 : 34 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\ndear vince ,\nfirstly , i really appreciate your time and our meeting last week . learning\nabout enron ' s use of leading - edge practices was quite enlightening and i\ntruly benefited from our visit .\nsecondly , i ' ve summarized my key \" take - aways \" as stated below . before\nconveying it to my management , however , i really appreciate it if you can\npls review my conclusions and ensure that they are not miss - stated .\nagain , thanks so much for your time and wisdom . i was also honored that\nyou\ngave me a copy of the \" managing energy price risk \" book and shall reference\nit with interest . thank you .\ni really look forward to seeing you again next time i ' m in houston .\nbest regards ,\nsoussan\n( 914 ) 253 - 4187\nps . the latest fortune article on ene is a great read and substantiates\nthe\ncompany ' s innovative and creative approach to business .\n- - - - - -\nas you may know , i was invited to visit with enron ( ene ) last week . i met\nwith vince kaminski , the vp and head of research in the risk management\ngroup of ene . vince who used to be with salomon brothers and at & t is the\n\" brain \" of ene w . r . t . their analytical tools for pricing of commodities ,\nhedging , optimization of financial and physical transactions , as well as\nthe\nvalue - at - risk systems . in addition , vince has received the 1999 james h .\nmcgraw award for energy risk management ( energy risk manager of the year )\nand is well published . he is the key contributor to a best - selling\npublication by risk books entitled : managing energy price risk .\nour meeting was mainly focused on gaining additional insights re\nleading - edge practices within ene . my key findings are summarized below :\n1 . ene does not use corporate price premises . they use market price info\nonly and adhere to mark - to - market accounting .\n2 . ene uses the \" heath , jarrow , and morton \" methods for modeling price\ndynamics ( i ' ve asked bic for a copy of the associated paper ) . they have\ntheir own \" home - grown \" software , however , they periodically review selected\nexternal developments for internal inclusion and advancement .\n3 . vince ' s group comprises of mathematicians , physicists , and operations\nresearchers who are responsible for the development and advancement of\nene ' s\nrisk management tools . these models are religiously used by the traders ,\nrisk managers , and bus across ene .\n4 . investment proposals are screened , risked , and \" roved \" by a separate\ncorporate group ( similar to our special studies and with business and real\noptions skills ) who work in conjunction with the bus . all evaluations and\ntransactions are marked - to - market .\n5 . ene does not use efficient - frontier portfolio concepts . they \" vc fund \"\nany opportunity that has a credible value proposition and can stand on its\nown . they believe that with the current plentiful liquidity in the market ,\nproject - financing in not an issue for a \" good \" opportunity . however , they\nclosely monitor the development of each opportunity , within their deep\nportfolio , at the corporate level and know how to \" fail fast \" .\n6 . the employee reward system is based on p & ls as well as the creation of\nnew business .\n7 . most employees have stock options .\ni really enjoyed my visit and hope to meet with vince again the next time\ni ' m in houston .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.516+0000", "entityId": 7356, "properties": {"text": "Subject: re : thank you\nvince ,\nyou were a most gracious guest , and we were honored to have you in our home .\ni am happy that you are tony ' s friend , and it was a great pleasure for me to\nget to know you also .\nand again , thank you very much for the lovely bouquet of roses .\nelisabeth .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.522+0000", "entityId": 7357, "properties": {"text": "Subject: publishable research . . . . . .\nvince :\nthe enclosed is from another of the people in the audience of my kao\npresentation . i talked to him , and he seemed slightly flaky . however , any\nresearch he does would be free . he ' s looking for direction . i doubt we\nwould want to waste our time and effort on him , but i thought i should send\nthis to you on the off chance that you might have a need for such a guy .\n( maybe doing some research for trish ? )\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 04 / 25 / 2000 05 : 54\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteve j on 04 / 22 / 2000 10 : 02 : 11 pm\nto : grant masson\ncc :\nsubject : publishable research . . . . . .\nhi grant ,\nthanks for writing . i have attached my resume and\ntranscripts for your perusal .\nas you can see , my background is not finance . i became\ninterested in finance via trading the markets . so my\nresearch interests initially revolved around the central\nconcept of trading . . . . pricing , technical type thinking ,\ninsider transactions , volume , and such . but with exposure ,\nmy interests have grown and i have discovered that i really\nenjoy economics . also there are many issues in finance\nthat sound interesting as i am exposed to them . the point\nis , i am too early in my career to set strict limits on my\ninterests .\nmy goals are to get introduced to research and to new\nideas , to associate with good people , and to work on\nstrengthening my weaknesses . i am interested in starting\nto build a network within the field of finance and\nespecially quantitative finance . ultimately , i have to\nprepare myself for independent research in order to succeed\nin my field .\nthis brings me to my final point . publications are\nimportant for me . thus i would want to work on topics that\nenron would be willing to publish . i would be willing to\nwork on proprietary models , as long as there was a portion\nof the research that could be written up for publication\nwithout jeapordizing the proprietary aspects of the model .\njust to let you know . i was not in dr . kao ' s energy class .\ni took his stochastic processes class . dr . kao just\nmentioned your talk to me as he thought i might be\ninterested in meeting you and learning more about what is\nbeing done at enron .\nthanks again . if you need any more info or want anything\nclarified , just write me .\nsteve\n- - - grant masson wrote :\n>\n>\n> steve :\n>\n> send me your resume and research interests , and i will\n> circulate them .\n>\n> regards ,\n> grant .\n>\n>\n>\n= = = = =\ni believe in a free internet ! ! ! more importantly , i believe in a safe ,\nsecure and private internet ! !\ndo you yahoo ! ?\nsend online invitations with yahoo ! invites .\nhttp : / / invites . yahoo . com\n- r _ t 2 . 1 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.527+0000", "entityId": 7358, "properties": {"text": "Subject: please add our contact information to your database . what follows are a\ncouple of active searches , should you become aware of interested\nindividuals .\nchief executive officer\nlocation : san diego , ca\ncompany : * * rates . com\ncompensation : targeted compensation in the > $ 200 k base range plus extensive\nstock ownership and bonus .\ndescription : the board of directors of * * rates . com is seeking a dynamic\nand experienced executive for the position of ceo of this pre - ipo internet\ncompany . the ceo would play a key role in the business strategy of a highly\nentrepreneurial and fast - growing company and answer directly to the board of\ndirectors . this individual must be smart , highly motivated team leader able\nto offer strong business strategies , especially involving the rapid growth\nof operations and resulting financial challenges . the ceo must be\nexpansion - capable and have experience with business start ups , growing\nbusinesses and the ability to get the company to a public offering\nthe chief executive officer for this 1 - year start - up , b 2 b e - commerce , single\nlocation company must be able to commercially launch the company in the\nenergy industry , and ultimately expanding into other market niches while\nmaking this company a market leader in the internet rate comparison market .\n* * rates . com is a california c corporation company with an industry leading\nboard of directors and advisory board . the company in the process of\nassembling a management team , finalizing the business plan and taking the\nrate comparison service to market . the initially targeted electric and\nnatural gas industries have over $ 200 billion in annual revenues . currently ,\nthe three largest internet rate comparison companies have little or no\nmarket share in the energy industry .\npossible candidates can come from a variety of experiences , but experience\nin starting up an energy company or leading - edge technology company is\ncritical .\nrequirements : the candidate must have 8 - 15 years of executive management\nexperience ( i . e . , ceo , president , sr . vice - president , partner level\nconsultancy ) in the private sector either with a deregulated energy company ,\na large consulting or a services oriented firm . extensive background in\neither the energy field , high technology , including telecommunications ,\nsystems software , e - commerce development or e - commerce . must have a strong\nbackground in business development and building relationships with large\ncompanies . strong visionary with proven leadership qualities and capable of\nbuilding a company . degree essential .\ncomputer literate in word processing / budget formats / and e - mail necessary\ngroup and people skills essential organizational and planning skills a must\nover all must be a self - starter and a communicator must be willing to travel\nin states as necessary .\nposition title : director of acquisitions department : corporate development\nlocation : dc reports to : vice president , acquisitions\nposition summary :\nthe person holding this position serves as a transaction team leader for\nlarge acquisition projects within the energy group , performing all\nactivities and managing all resources necessary to successfully acquire\noperating power plants , or gas assets . working largely through\nself - direction , he or she manages the project team for an assigned project\nand establishes and adheres to budgets and schedules . due to high deal\nflow , the energy group needs two directors of acquisitions , and has one open\nposition .\nprincipal duties and responsibilities :\n1 . manages the project team for an assigned project . successfully manages\nthe project through signing of an asset purchase agreement .\n2 . manages development of and inputs to , project / proposal economic\nprojections . obtains sign - off on pro forma inputs from appropriate company\nofficers .\n3 . identifies problems and solicits input from appropriate team members\nand / or senior management on project issues . develops alternative solutions\nand assesses the alternatives in the context of project and corporate\nobjectives . chooses and implements the best solutions .\n4 . establishes project budgets and schedules and manages expenditures to\nbudgeted levels .\n5 . plans and organizes tasks and short - term goals for the project team\nmembers to ensure the project stays on schedule . coordinates activities of\nteam members ( including third parties ) from different disciplines to ensure\nactivities with overlapping disciplinary impacts are performed efficiently .\n6 . represents the project and the company in discussions with interested\nparties , at lender meetings , etc . , and develops appropriate relationships\nwith individuals involved .\n7 . identifies key issues associated with an acquisition and its potential\n\u0001 & fatal flaws . \u0001 8\n8 . assists in maintaining relations with investment banks and legal firms to\nassure that company receives all appropriate \u0001 advanced degree in business or related field preferred .\n2 . strong analytical skills , experience in building and managing pro formas .\n3 . substantial record of successfully managing and participating in the\ndevelopment or acquisition and financial closing of independent power\nprojects or merchant plants .\n4 . excellent oral and written communication skills .\n5 . ability to function in a team environment with multiple and changing\npriorities , as either leader or team member .\ninterview with : chief financial officer\nvice president , acquisitions\nmanaging director , development\ndirector , acquisitions\nasian sales manager position .\nselling turbomachinery controls throughout asia . the best location for this\nposition is in singapore . all\ncandidates for this position should have a proven track record selling\ncontrols in the region .\nthe asian sales manager will be responsible for growing i & c systems product\nline ( direct sales ) throughout asia . this will include sales of control\nsystems through engine and turbine packagers and rebuilders . company will\nalso pursue sales directly to end - users with the best candidates being the\noil & gas producers and power companies . the company will emphasize gas\nturbine applications including compressor and generator drives . the company\nis interested in developing alliances with large users such as ongc ,\npetronos , and caltex , as well as pursuing the individual retrofits with\nenergy companies . retrofit opportunities will not be limited to this\ncompany ' s machines . the company will retrofit any gas turbine . we will also\nretrofit gas or diesel engines .\nthe company expects sales results and then growth plans for leveraging these\nearly successes . as they grow , additional sales personnel may be added and\nthey will report to the asian sales manager .\ncompany hot buttons :\n1 . familiar with asian oil & gas and power generation markets .\n2 . strong technical understanding of control systems and turbomachinery\napplications .\n3 . well organized , self - managed individual .\n4 . ability to manage and direct other sales people .\n5 . ability to work with key customers , to understand their turbomachinery\nrequirements and communicate i & c solutions .\n6 . ability to achieve early sales results and to develop sustained sales\ngrowth .\n7 . ability to develop long - term alliances with key customers , as well as ,\nsales opportunities on individual control retrofit projects .\n8 . strong understanding of sales & marketing principles with the ability to\nimplement these principles .\n9 . ability to work well with people of various cultural backgrounds .\n10 . the asian sales manager will be based in singapore and report to the\ndirector of sales and marketing , located in houston , texas .\nan undergraduate degree in electrical or mechanical engineering is required .\na graduate degree is business is also desirable .\nregards ,\ndave weir , sr . managing partner\nieg , inc .\n215 - 957 - 9012 fax . 215 - 957 - 1753 or 215 - 957 - 6090\nwebsite : www . iegsearch . com\nemail : dgweir @ iegsearch . com or dgweir @ aol . com\ndave weir , sr . managing partner\nieg , inc .\n215 - 957 - 9012 fax . 215 - 957 - 1753 or 215 - 957 - 6090\nwebsite : www . iegsearch . com\nemail : dgweir @ iegsearch . com or dgweir @ aol . comdave weir , sr . managing partner\nieg , inc .\n215 - 957 - 9012 fax . 215 - 957 - 1753 or 215 - 957 - 6090\nwebsite : www . iegsearch . com\nemail : dgweir @ iegsearch . com or dgweir @ aol . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.534+0000", "entityId": 7359, "properties": {"text": "Subject: hello vince ,\ni enjoyed talking with you this morning . per our conversation , here is\nnorberto valdes ' resume . i will call you in about an hour to make sure you\nreceived it . thank you and let me know when you would like to meet him .\nsincerely ,\nlisa ford\n281 ) 913 - 2076\n( see attached file : resumen 4 . doc )\n- resumen 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.541+0000", "entityId": 7360, "properties": {"text": "Subject: re : video conference for interview : stig faltinsen\nanjam ,\nsorry , i am busy on thursday .\ni shall ask shirley to contact you . friday 9 : 30 to 10 : 30 my time would work .\nvince\nvince\nanjam ahmad\n04 / 25 / 2000 09 : 51 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : video conference for interview : stig faltinsen\nhi vince ,\nthis candidate was forwarded from the norway office . he is finishing his phd\nin cambridge but is available soon . if you are free on thursday before the\nregular weekly meeting that would be good - would 3 pm or 4 pm work for you\n( 9 am or 10 am your time ) to set up the video interview ?\nregards ,\nanjam\nx 35383\ncv attached :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.549+0000", "entityId": 7361, "properties": {"text": "Subject: re : the transportion model worked\ngreat to hear that . you are right , we should include rho ( done ) and theta\n( to do ) for the cost term .\nzimin\nenron north america corp .\nfrom : kenneth shulklapper 04 / 26 / 2000 12 : 07 pm\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : it worked\nzimin ,\nthe model worked well today . hopefully it will continue the same in the\nfuture .\ndo we need to make a similar change in the model to \" drift \" to account for\nchanges on the demand charges over time ?\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.553+0000", "entityId": 7362, "properties": {"text": "Subject: e & p model\nvince - attached is the most recent e & p version of the old corporate cash\nflow model that i could find . note that \" most recent \" still dates it back a\nfew years . a couple caveats : i did try to clean it up somewhat from old\nmacros , but no guarntees offered . also , some of the underlying methodology\nis not what we would probably currently use , such as for pricing , stochastic\nprocesses , and perhaps decline rates .\nplease let me know if i can provide any additional help .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.557+0000", "entityId": 7363, "properties": {"text": "Subject: london telephonhe numbers change\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 26 / 2000\n12 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanjam ahmad\n04 / 26 / 2000 11 : 44 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : london telephonhe numbers change\nhi shirley ,\nplease could you forward this to houston research . . . may explain difficulty\nin calling london .\nthanks ,\nanjam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 26 / 04 / 2000 16 : 54\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe general announcement\n20 / 04 / 2000 15 : 41\nplease respond to european it support / lon / ect\nto : ect london\ncc :\nsubject : very important - \" change of telephone numbers \" this weekend ! ! !\nas you are no doubt aware , this weekend ( 22 nd april 2000 ) the 0171 and 0181\nlondon dialling codes are being replaced by 0207 and 0208 respectively .\nsince our move to enron house all external customers should have been made\naware of the new 020 7783 telephone numbers .\nwe are however still receiving calls on the old 0171 numbers .\nplease be aware that these 0171 numbers will be cease to operate on the 22\napril 2000 .\nfrom this date , calls made to the old 0171 numbers will reach an announcement\nadvising them to call enron ' s new switchboard number : 020 7783 0000 .\nplease ensure that your external contacts are made aware of the correct\nnumber convention :\n020 7783 xxxx\ndetails of new phone and fax numbers are as follows :\nclick here - - > < - - to access the personal fax numbers ( surname k - z ) details\nin the \" non - commercial bulletin board \" database on ectlon - ln 2 / ect .\nif you access the enron network via ' ras ' , you must ensure that the ras\nnumber is updated in your laptop settings .\nthe old ras number was 0171 316 6666 . this has changed to 020 7783 6666 .\nfrom the 22 april 00 oftel ' s ' big number ' day you will no longer be able to\ndial 0171 and 0181 numbers . the new 0207 and 0208 numbers must be used in\ntheir place . current users of the new code will know that at present you\nmust use the new area code as well as the new number .\nfrom the 22 april 00 you will be able to dial either the local number on it ' s\nown i . e . 7783 0000 or the area code and local number i . e . 020 7783 0000 .\nif you have any questions please contact european it support on 36777", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.562+0000", "entityId": 7364, "properties": {"text": "Subject: re : response from lenos\nsteve ,\ni shall e - mail you my standard real option spin presentation + plus a\npresentation on enron\n( for analysts ) . you can use a few slides to introduce the company .\ni would prefer not to disseminate the information about the use of amc . the\nindustry\ndoes not know about it yet and i consider it a very powerful tool ( given its\nflexibility ) .\ni have the files on my laptop . i shall bring it to work to morrow\nand send it to you .\nplease , remind me about it on thursday ( old age and the hectic pace here start\nshowing up ) .\nvince\nsteven leppard\n04 / 26 / 2000 05 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : response from lenos\nvince\nlenos got back to me , and said he ' d prefer a high - level overview of real\noptions in enron , perhaps using my notation to express the ideas . he wants\nme to keep away from the technicalities of my work .\nwould you send me your ( usual ) powerpoint presentation on real options , and\ni ' ll look at manipulating it to include my diagrams . my own efforts to date\nhave been on fairly limited power plant modelling / asset development , and i\nobviously don ' t have the high - level view you have . this will ensure i get\nthe full range of real option type deals in my presentation .\nif required i could present the real option problems i have analysed , namely :\n1 . maintenance scheduling in power plant operation ;\n2 . gas storage ;\n3 . power plant asset development , which would include ( 1 ) as a sub - tree .\ni will also need your advice on whether i can talk about the fact that we\nprefer american monte carlo to build our trees . i haven ' t used amc myself up\ntill now , i ' ve been carrying out static optimizations , with different price\ncurve scenarios being run through .\ni ' m still working on selling the full stochastic dynamic programming approach\n- people are just getting to the stage of accepting my deterministic dp , and\nthey ' re still being supplied with useful products , as per my \" real options\nstrategy \" document .\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.566+0000", "entityId": 7365, "properties": {"text": "Subject: actuarial course material\nhi dale ,\ni just talked to the actuarial education company and found that the combined\nmaterial packs ( cmps ) are priced per course as follows : -\n101 statistical modelling :\n102 financial mathematics\n103 stochastic modelling\n104 survival models\n105 actuarial mathematics\n106 actuarial mathematics ii\n107 economics\n108 finance and financial reporting\n109 financial economics\n302 life insurance\n303 general insurance\nhaving reviewed , i think the most suitable ones to order are suggested in\nblue . this adds up to o 525 for the sub - set in blue ; alternatively we can\nstick to 103 through 106 for o 356 - > i suggest we go for the smaller sub - set\nto start off with .\nregards ,\nanjam\nx 3583", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.571+0000", "entityId": 7366, "properties": {"text": "Subject: re :\ngordon ,\nit was a pleasure talking to you .\ni shall ask my assistant to send you the reprint .\nvince kaminski\nshirley , can you , please , send a copy of the paper on credit risk management\n( reprint from the risk book ) .\ngordon rausser on 04 / 26 / 2000 12 : 02 : 02 pm\nto : vkamins @ enron . com\ncc :\nsubject :\nvince :\nthank you very much for the useful information you provided me today .\nas you suggested , i wish to request a copy of the reprint that was\npublished last year in risk .\ngordon rausser\nrobert gordon sproul distinguished professor\ndean , college of natural resources\nuniversity of california\n101 giannini hall , mc 3100\nberkeley , ca 94720\nphone : 510 - 642 - 7171\nfax : 510 - 642 - 4612\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.575+0000", "entityId": 7367, "properties": {"text": "Subject: allocations\nbecky ,\nplease , take a look at the allocations sheet .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.580+0000", "entityId": 7368, "properties": {"text": "Subject: re : letter\nlarrissa ,\ni spoke with joe pokalsky . he will be glad\nto help you .\nplease , call him at the number 770 393 7411 .\nvince\nlarrissa sharma\n04 / 26 / 2000 08 : 20 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : letter\nvince ,\nthe letter was perfect . thanks for the trouble .\nmy name however is spelt with a double \" r \" . = = > larrissa sharma .\nlarrissa .\nvince j kaminski\n04 / 25 / 2000 09 : 19 am\nto : larrissa sharma / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : letter\nlarrissa ,\nplease , take a look at the letter .\nmy assistant is on vacation , she will be back tomorrow .\nplease , check the spelling of your first name . it was inconsistent in the\noriginal letter from the lawyer .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.585+0000", "entityId": 7369, "properties": {"text": "Subject: james aimone\njames aimone is a canditate for a summer position supporting the ena option\npricing and valuation team .\nhe will be at enron , friday april 28 from 2 : 30 to 4 : 00 .\nschedule of interviews :\nstinson gibner 2 : 30 - 2 : 45\nzimin lu 2 : 45 - 3 : 00\npaulo issler 3 : 00 - 3 : 15\nelizabeth grant 3 : 30 - 4 : 00\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.589+0000", "entityId": 7370, "properties": {"text": "Subject: interview on friday , may 5 th\ngood morning norberto :\nenron corp . research would like you to come in for an informal interview\nfriday , may 5 , beginning at 1 : 30 pm . following is a tentative schedule :\nvasant shanbhogue 1 : 30 pm\nvince kaminski 1 : 45 pm\nclayton vernon 2 : 00 pm\nstinson gibner 2 : 15 pm\ntanya tamarchenko 2 : 30 pm\ngrant masson 2 : 45 pm\nplease let me know if these times work for you .\nthank you !\nshirley crenshaw\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.594+0000", "entityId": 7371, "properties": {"text": "Subject: summer intern\nwe can hire the person as a summer intern\ndirectly ( outside the a & a pool ) .\nshirley , please arrange a phone interview\nas in the case of other candidates osman found .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 26 / 2000\n09 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nosman sezgen @ ees\n04 / 25 / 2000 05 : 41 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : summer intern\nfyi .\nosman\n- - - - - - - - - - - - - - - - - - - - - - forwarded by osman sezgen / hou / ees on 04 / 25 / 2000 05 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\namyn saleh on 04 / 10 / 2000 06 : 11 : 50 pm\nto : \" osman sezgen \"\ncc :\nsubject : re : job opportunities at enron\nhi osman ,\nhope you are doing well . thank you for replying to my phone call . i have\nattached my resume to this email and would be extremely grateful if you\ncould pass it around to hiring managers . thank you and i look forward to\nhearing from you .\nregards ,\namyn saleh\n- amyn saleh ' s resume . doc\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\namyn saleh\n( 510 ) 644 - 9642\namyn @ uclink 4 . berkeley . edu\nicq : 51792087", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.598+0000", "entityId": 7372, "properties": {"text": "Subject: interview with hao peng\nhello kathy :\nthe research group would like to bring hao peng in for an interview . his\nresume is attached .\nthe following would be included in the interview schedule . since all of\nthem are in the research group ( with the exception of hr ) we can have the\ninterviews in ebl 938 .\nvince kaminski\nstinson gibner\nzimin lu\npaulo issler\ngrant masson\nkrishna krishnarao\nvasant shanbhogue\nhr ?\nmr . peng ' s availability is flexible with the exception of may 2 and may 4 ( he\nhas finals ) .\nif you need anything else , please let me know .\nthanks !\nshirley\n- cover - enron . doc\n- resume - gsia . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.603+0000", "entityId": 7373, "properties": {"text": "Subject: re : storage book / luken ' s storage model\njust a reminder about the storage meeting today , april 27 . it is still\nscheduled for 3 : 00 pm in 30 cl .\nthank you .\ngeraldine irvine\n04 / 24 / 2000 11 : 44 am\nto : zimin lu / hou / ect @ ect , stinson gibner / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , hunter s shively / hou / ect @ ect , colleen\nsullivan / hou / ect @ ect , scott neal / hou / ect @ ect , phillip k allen / hou / ect @ ect ,\nthomas a martin / hou / ect @ ect , jim schwieger / hou / ect @ ect , chris\ngaskill / corp / enron @ enron , bhavna pandya / hou / ect @ ect , jeffrey a\nshankman / hou / ect @ ect , sean boyle / corp / enron @ enron , ed mcmichael / hou / ect @ ect\ncc : mark breese / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , airam\narteaga / hou / ect @ ect , kimberly brown / hou / ect @ ect , laura\nharder / corp / enron @ enron , barbara lewis / hou / ect @ ect\nsubject : storage book / luken ' s storage model\nplease plan to attend a meeting on thursday , april 27 , from 3 : 00 - 5 : 00 p . m .\nto discuss luken ' s storage model and , more importantly , where we want to go\nwith a storage book . this meeting will be in eb - 30 cl .\nany questions , contact mark breese ( ext . 3 - 6751 ) or gerri irvine ( ext .\n3 - 6145 ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.608+0000", "entityId": 7374, "properties": {"text": "Subject: re : other matters\nkate wagner is setting up a happy hr . for him on friday . i will let you know\ndetails . also , i think andrea is having a brunch on sunday .\nmr\nvince j kaminski\n04 / 27 / 2000 07 : 22 am\nto : mark ruane / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : other matters\nmark ,\ni called rick to let him know . it ' s not an interview yet . aram is coming for\na\nwedding but i think he wants to explore the opportunity of coming back\nto enron . the conversation may lead to an interview\nat some point .\nhe will talk to andrea as well .\ndo you plan to organize something for aram ?\ni would be glad to join .\nvince\nfrom : mark ruane\n04 / 26 / 2000 05 : 53 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : other matters\ni heard that you were going to be interviewing aram ? what ' s the job ?\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.613+0000", "entityId": 7375, "properties": {"text": "Subject: interview with enron corp . research group\ngood afternoon mr . ball :\nthe enron corp . research group would like to conduct an informal interview\nwith you at your convenience . please give me some dates and times within\nthe next 2 weeks that you might be available and i will arrange the schedule .\nthe people that will be interviewing you are :\nvince kaminski managing director\nstinson gibner vice president\ngrant masson vice president\nvasant shanbhogue vice president\nkrishna krishnarao director\nzimin lu director\ntanya tamarchenko manager\nalex huang manager\neach individual interview will last approximately 15 - 20 minutes , so we\nprobably\nshould allow at least 3 hours .\nif you would prefer to call me with some dates and times - i can check\nthe calendars while we are talking .\nlook forward to hearing from you .\nthank you .\nshirley crenshaw\nadministrative coordinator\nresearch group\n713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.618+0000", "entityId": 7376, "properties": {"text": "Subject: greg ball interview\nshirley :\ncould you please organize interviews for mr . ball with the usual research\nsuspects , including alex huang and tanya tamerchenko ?\nmr . ball ' s phone numbers are on his enclosed resume . thanks .\ngrant .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nvince :\ni talked to this guy briefly . i think he is desparate to get out of unocal\nbefore they downsize him out of a job .\nhe has a decent resume and the attached comment from don winslow is\ninteresting .\ngrant .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngrant - here ' s the resume of the guy that called . sorry for the delay . here\nare don winslow ' s comments :\n\" greg was my predecessor in the risk mgt dept at unocal . he reminds me\nsomewhat of remi ' s cousin - mild mannered , physics phd . he is brilliant and\nexpresses himself well . i think he might fit in vince ' s group better than\nin your group . he has not had much exposure to commercial transactions . he\nwas in bill bradford ' s mba class . he graduated # 1 . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.622+0000", "entityId": 7377, "properties": {"text": "Subject: re : telephone interview with the research group\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 27 / 2000\n01 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntammy ting - yuan wang on 04 / 27 / 2000 12 : 36 : 13 pm\nto : shirley crenshaw\ncc :\nsubject : re : telephone interview with the research group\ndear ms . crenshaw ,\nthank you for giving me a chance to talk to you .\nhowever , i have already got an offer from another\ncompany . i will start working as a full time after i\ngraduate in may .\nthank you for taking time reviewing my resume .\nhave a nice day .\nsincerely ,\ntammy wang\n- - - shirley crenshaw\nwrote :\n>\n>\n> good morning tammy :\n>\n> the enron corp . research group would like to conduct\n> a telephone\n> interview with you at your convenience . this will\n> be as a \" summer\n> intern \" with the research group .\n>\n> please let me know your availability on monday , may\n> lst or thursday ;\n> may 4 th .\n>\n> the persons who will be interviewing you are :\n>\n> vince kaminski managing director\n> stinson gibner vice president\n> krishna krishnarao director\n> osman sezgen manager\n>\n> i look forward to hearing from you .\n>\n> thank you and have a great day\n>\n> shirley crenshaw\n> administrative coordinator\n> 713 - 852 - 5290\n>\n>\n>\n>\ndo you yahoo ! ?\ntalk to your friends online and get email alerts with yahoo ! messenger .\nhttp : / / im . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.627+0000", "entityId": 7378, "properties": {"text": "Subject: interview with norberto valdes\nhello all :\nnorberto telephoned me this morning and will not be able to come on\nfriday , may 5 th . we have rescheduled the interview for monday , may 1 .\nthe times are as follows :\nvasant shanbhogue 1 : 00 pm\nvince kaminski 1 : 15 pm\nclayton vernon 1 : 30 pm\nstinson gibner 1 : 45 pm\ntanya tamarchenko 2 : 00 pm\ngrant masson 2 : 15 pm\nthey will be conducted in ebl 938\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.631+0000", "entityId": 7379, "properties": {"text": "Subject: telephone interview with the enron corp . research group\ngood morning yongcho :\nthe enron corp . research group would like to conduct a telephone\ninterview with you at your convenience . this would be for a full - time\nposition with the research group .\nplease let me know your availability monday , may 1 or thursday , may\n4 .\nthe persons who will be interviewing you are :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao director\nosman sezgen manager\ni look forward to hearing from you .\nthank you\nshirley crenshaw\nadministrative coordinator\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.636+0000", "entityId": 7380, "properties": {"text": "Subject: telephone interview with the research group\ntammy :\nplease excuse the error on the email below . i misunderstood - the position\nwill be a full - time position with the research group .\nlook forward to hearing from you . thanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 27 / 2000\n09 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 27 / 2000 09 : 41 am\nto : dasyuan @ yahoo . com\ncc :\nsubject : telephone interview with the research group\ngood morning tammy :\nthe enron corp . research group would like to conduct a telephone\ninterview with you at your convenience . this will be as a \" summer\nintern \" with the research group .\nplease let me know your availability on monday , may lst or thursday ;\nmay 4 th .\nthe persons who will be interviewing you are :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao director\nosman sezgen manager\ni look forward to hearing from you .\nthank you and have a great day\nshirley crenshaw\nadministrative coordinator\n713 - 852 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.641+0000", "entityId": 7381, "properties": {"text": "Subject: telephone interview with the research group\npraveen :\nplease excuse the error on the email below . i misunderstood - the position\nwill be a full time position with the research group .\nplease let me hear from you .\nthanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 27 / 2000\n09 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 27 / 2000 09 : 39 am\nto : praveen @ wam . umd . edu\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , osman sezgen / hou / ees @ ees\nsubject : telephone interview with the research group\ngood morning praveen :\nthe enron corp . research group would like to conduct a telephone\ninterview with you at your convenience . this will be as a \" summer\nintern \" with the research group .\nplease let me know your availability on monday , may lst or thursday ;\nmay 4 th .\nthe persons who will be interviewing you are :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao director\nosman sezgen manager\ni look forward to hearing from you .\nthank you and have a great day\nshirley crenshaw\nadministrative coordinator\n713 - 852 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.646+0000", "entityId": 7382, "properties": {"text": "Subject: telephone interview with enron corp . research\ngood morning amyn :\nthe enron corp . research group would like to conduct a telephone\ninterview with you at your convenience . this will be as a \" summer\nintern \" with the research group .\nplease let me know your availability on monday , may lst or thursday ;\nmay 4 th .\nthe persons who will be interviewing you are :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao director\nosman sezgen manager\ni look forward to hearing from you .\nthank you and have a great day\nshirley crenshaw\nadministrative coordinator\n713 - 852 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.650+0000", "entityId": 7383, "properties": {"text": "Subject: website : data _ research _ pub\nplease approve or reject this request .\nthank you ,\ninformation risk management ( et )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n04 / 28 / 2000 09 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\ndirectory line item pending access processing\ndirectory name : website : data _ research _ pub\nservice type : grant\nexpiration date :\ncomments : this is an urgent request . please process asap .\nsecurity processing\nprocessing status :\ne - mail message :\ncomments / justification : 04 / 28 / 00 emailed vince kaminski for approval\ngeneral information request : kgme - 4 jlej 2\nrequested by : kevin g moore / hou / ect phone : 713 / 853 - 4710\nrequested for : jose marquez employee type :\ncompany : 100038 rc # : 0011\npriority : high\ncomments / justification : he needs access to the y drive\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1\n2 information risk management\ninformation risk management 04 / 28 / 2000 09 : 32 : 58 am\n04 / 28 / 2000 09 : 33 : 46 am", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.655+0000", "entityId": 7384, "properties": {"text": "Subject: this summer ' s houston visits 2\nhi vince ,\none of my only windows of opportunity right now is to schedule the houston\nvisit for monday 10 th july for a single week only .\nregards ,\nanjam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 28 / 04 / 2000 11 : 33\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteven leppard\n28 / 04 / 2000 10 : 15\nto : vince j kaminski / hou / ect @ ect , dale surbey / lon / ect @ ect\ncc : anjam ahmad / lon / ect @ ect , benjamin parsons / lon / ect @ ect , kirstee\nhewitt / lon / ect @ ect , matthew d williams / lon / ect @ ect , steven\nleppard / lon / ect @ ect\nsubject : this summer ' s houston visits\nvince , dale\nhere are our proposals for houston visits from our group :\nkirstee all of july , all of september . ( kirstee ' s personal commitments mean\nshe needs to be in the uk for august . )\nben all of october . ( no crossover with kirstee , ensures var / credit cover\nin london office . )\nsteve 2 - 3 weeks in july , first 3 weeks of september .\nanjam to be arranged at anjam and houston ' s mutual convenience .\nmatt not a permanent research group member . i ' m asking richard ' s group to\npay for his visit , probably in august .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.660+0000", "entityId": 7385, "properties": {"text": "Subject: some municipal bonds for you to look at . . . . .\ni called out muni desk to have them take a look at the current munis avaiable\nthat looked best at this time to invest $ 50 , 000 going out to 30 years for\nyou . the following is what they came up with . . . .\npecos co tx cert of obl w / a coupon 5 . 5 % matures in 02 / 01 / 11 callable at par\non 02 / 01 / 07 offered at $ 101 . 964 - aaa rated\nbrownsville util rev w / a coupon of 5 . 25 % maturing in 09 / 01 / 15 callable at par\non 09 / 01 / 05 offered at $ 97 . 425 - aaa rated\nalvin tx isd psf w / a coupon of 5 . 75 % maturing in 08 / 15 / 22 callable at par on\n08 / 15 / 10 offered at par - aaa rated\nhouston tx air revs w / a coupon of 5 . 00 % maturing in 07 / 01 / 28 callable at par\non 07 / 01 / 08 offered at 86 . 479 - aaa rated\nremember , these are subject to change , but if these interest you and they are\nnot still available , i will see if there is something comparable .\ntalk to you soon . please call me with any questions . thanks , julie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.665+0000", "entityId": 7386, "properties": {"text": "Subject: interviews\nhi vince ,\nthanks for taking the time off to meet with me last week . i did enjoy\nmeeting you and your co - workers in the research group .\ni do realize my background may not be the best fit for the type of work\ndone in your division . i ' ll be job hunting over the next several weeks ,\nand would really appreciate it if you could let let me know if something\nopens up at enron . thanks again and best regards .\nruwan - -\n*\nruwan jayasuriya\neconomics department ruwan @ rice . edu\nrice university http : / / www . ruf . rice . edu / ~ ruwan\nhouston , tx 77005\n*", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.670+0000", "entityId": 7387, "properties": {"text": "Subject: re : telephone interview with the research group\nfyi :\npraveen will be available on thursday , may 4 at 10 : 00 am houston time .\ncall him at 301 / 422 - 0889 .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 28 / 2000\n08 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmellacheruvu venkata praveen on 04 / 27 / 2000 08 : 58 : 47 pm\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : telephone interview with the research group\ndear ms . crenshaw ,\nthe interviewers can call me at ( 301 ) 422 0889 . please do inform\nthem accordingly . thank you for setting up the interview .\nregards ,\npraveen mellacheruvu .\non thu , 27 apr 2000 shirley . crenshaw @ enron . com wrote :\n>\n> praveen :\n>\n> i have scheduled the conference call for thursday , may 4 at 11 : 00 am ( est )\n> 10 : 00 am ( central ) . it will be better if they can call you . please le me\n> know\n> what number you can be reached at .\n>\n> if this is not allright , please let me know .\n>\n> thanks and have a great day !\n>\n> shirley crenshaw\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.675+0000", "entityId": 7388, "properties": {"text": "Subject: re :\ndear navroz\nthanks for getting back to me . the reason there has been a dialogue ( not , i\nshould point out , with nick , but with shan millie ) , is that my work is of\nquite a large size , and needs to find an appropriate home . the question is\nshould it go into a compilation book , or somehow be published in the\nmagazine ? i was awaiting some feedback from risk on the best course of\naction .\nwe were hoping to publish a cut down version in the magazine , and a full\nversion in risk ' s upcoming \" game choices \" book , but i ' ve heard nothing from\nyour organisation until now ( and i fear we ' ve now missed the boat on the game\nchoices book deadline ) . i ' m attaching the full internal enron document for\nyour reference , and i ' d appreciate your thoughts on how best to put the\narticle in your journal . since the subject is highly diagrammatic , i ' m\nconcerned that 4000 words may be too many when coupled with diagrams ! ( it is\ncurrently only 6000 words , but is around 25 a 4 pages long . ) if you can give\nme some guidance on the issue of publishing extensive diagrams as part of the\ntext , i ' ll get to work chopping my work around until it suits your preferred\nformat .\nshan millie gave me some good feedback on general points of style and clarity\nin my writing , but incorporating these would actually make the article longer\nrather than shorter . i think you ' d better look the document over before i do\nfurther work on it .\ni look forward to your response .\nmany thanks ,\nsteve leppard\nenron capital & trade resources corp .\nfrom : \" navroz patel \"\n04 / 28 / 2000 03 : 25 pm\nplease respond to \" navroz patel \"\nto :\ncc :\nsubject :\ndear steven ,\nmy name is navroz patel and i am the technical assistant at risk magazine . i\nam contacting you with regards to your initial dialogue with nick dunbar .\nwe would be grateful if you could email to both of the addresses below a\ncopy of your ' real options ' article for our consideration .\nplease note that articles must have full references , be approximately 4000\nwords in length , and the attachment should be in ms word or pdf format .\nnpatel @ risk . co . uk\nndunbar @ risk . co . uk\n?\nthank you for your interest .\nyours sincerely ,\nnavroz patel .\ntechnical assistant , risk magazine .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.680+0000", "entityId": 7389, "properties": {"text": "Subject: re : real options\njim ,\ni am scheduled to arrive in austin on may 4 at 10 : 32 a . m .\ni shall be glad to join you and a group of your colleagues for lunch .\ni am flying back to houston friday morning and we can meet for dinner after\nthe class .\ni shall have a power point presentation on my pc . i can also\nprepare a set of transparencies if this is more convenient for you .\nvince\njim dyer on 04 / 27 / 2000 05 : 44 : 51 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc : sheridan titman\nsubject : real options\nvince ,\ni am traveling at this time , attending a nsf meeting in washington .\nhowever , i wanted to touch base regarding plans for your presentation in my\nclass on real options next thursday ( may 4 ) . as you recall , the class is\nfrom 3 : 30 to 6 : 30 , and you could plan to take a significant part of that\ntime for your presentation . sheridan titman has agreed to join us after his\nclass at about 6 : 00 for a 30 minute \" panel discussion \" with the students on\nissues related to real options in practice . l\ni am not sure about your travel plans , but we would be happy to plan\nlunch on thursday with several of my colleagues . i would also be delighted\nto be your host for dinner on thursday night if that is convenient for you .\ni ' ll be back in my office on monday , and will look forward to\nhearing from you .\njim\njames s . dyer\nfondren centennial chair in business\ndepartment of management science and information systems\ncba 5 . 202\nthe university of texas at austin\naustin , texas 78712 - 1175\nemail : j . dyer @ bus . utexas . edu\ntelephone : 512 - 471 - 5278\nfax : 512 - 471 - 0587", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.685+0000", "entityId": 7390, "properties": {"text": "Subject: this summer ' s houston visits\nrichard has agreed to pay for matt ' s visit , so here ' s the schedule so far :\nkirstee all of july , all of september . ( kirstee ' s personal commitments mean\nshe needs to be in the uk for august . )\nben all of october . ( no crossover with kirstee , ensures var / credit cover\nin london office . )\nsteve 2 - 3 weeks in july , first 3 weeks of september .\n( no crossover with matt , ensures power cover in london office . )\nmatt a couple of weeks in august . ( preferably the hottest ones . )\nanjam to be arranged at anjam and houston ' s mutual convenience .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 04 / 28 / 2000\n04 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteven leppard\n04 / 28 / 2000 10 : 15 am\nto : vince j kaminski / hou / ect @ ect , dale surbey / lon / ect @ ect\ncc : anjam ahmad / lon / ect @ ect , benjamin parsons / lon / ect @ ect , kirstee\nhewitt / lon / ect @ ect , matthew d williams / lon / ect @ ect , steven\nleppard / lon / ect @ ect\nsubject : this summer ' s houston visits\nvince , dale\nhere are our proposals for houston visits from our group :\nkirstee all of july , all of september . ( kirstee ' s personal commitments mean\nshe needs to be in the uk for august . )\nben all of october . ( no crossover with kirstee , ensures var / credit cover\nin london office . )\nsteve 2 - 3 weeks in july , first 3 weeks of september .\nanjam to be arranged at anjam and houston ' s mutual convenience .\nmatt not a permanent research group member . i ' m asking richard ' s group to\npay for his visit , probably in august .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.689+0000", "entityId": 7391, "properties": {"text": "Subject: move locations\nsorry ,\nthe churn has been turned in as of 4 / 15 / 00 therefore locations\nare as follows .\ntricia tlapek - eb 3273 a\nvince kaminski - eb 3273 b\nsam smith - eb 3273 c\nmichael sergeev - eb 3274 a\njason sokolov - eb 3274 b\nvacant - eb 3274 c\nthis is where all equipment and items should be labelled .\ni am so sorry that we could not make changes on short notice .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.694+0000", "entityId": 7392, "properties": {"text": "Subject: friday brown bag for options pricing\nhello everyone ,\ntoday we have grant masson spreaking in our options pricing seminar series .\ngrant ' s topic is \" marginal value at risk \" . it will be held at 12 noon at\n19 c 2 .\nwe thank you for your participation .\nzimin lu\nalex huang", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.698+0000", "entityId": 7393, "properties": {"text": "Subject: churn list\nvince ,\nhere is your new location on the 32 nd floor .\nhave a wonderful morning !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 28 / 2000 07 : 48\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n04 / 28 / 2000 07 : 49 am\nto : lisa b cousino / hou / ect @ ect , heather choate / hou / ect @ ect\ncc :\nsubject : churn list\ngoodmorning ,\ntoday is the day for the great move .\nwell i certainly hope this is not a bother .\ni have a few changes since a few members has\nleft our group .\nnew locations\nsam smith - eb 3274 a\nelena chilkina - eb 3274 b ( michael sergeev )\npatricia tlapek - eb 3273 a\nvince kaminski - eb 3273 b\neb 7273 c - vacant ( roman zadorozhny )\nif you are not able to make changes on the churn list ,\nplease be aware that we are going to label all items to\nthe locations listed , whereby these items will be at the\nlocations listed above .\nplease if you need more information feel free to call\nx 34710 .\nhope this day be a good one for you !\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.703+0000", "entityId": 7394, "properties": {"text": "Subject: updated electricity homepage ( great links - university of queensl\nand - australia )\nhi vince ,\nhave a look at my homepage which i have been updating ( see energy markets ) :\nregards glen dixon\npart - time phd student - department of mathematics ( university of\nqueensland )\np . s i am hopefully attending the australian risk conference where you are a\nspeaker in july 2000 ( sydney ) . hope to hear you speak .\nglen w . dixon\nproject officer - procurement profiling\nqueensland purchasing\ndepartment of public works\n\" important\nthis electronic message and any attachments are supplied in\ngood faith and are believed to be free of year 2000 or other date related\nproblems ( i . e . year 2000 compliance ) . the department of public works\nforwards this message and attachments to you on the basis that you use them\nat your own risk . the department accepts no responsibility for damage or\nloss ( arising from negligence or otherwise ) which may occur through the use\nor transmission of this message and attachments and recommends that you\nconduct your own independent tests to determine year 2000 compliance before\nuse .\nthe contents of this electronic message and any attachments\nare intended only for the addressee and may contain privileged or\nconfidential information . they may only be used for the purposes for which\nthey were supplied . if you are not the addressee , you are notified that any\ntransmission , distribution , downloading , printing or photocopying of the\ncontents of this message or attachments is strictly prohibited . the\nprivilege or confidentiality attached to this message and attachments is not\nwaived , lost or destroyed by reason of a mistaken delivery to you . if you\nreceive this message in error please notify the sender by return e - mail or\ntelephone .\nthank you . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.708+0000", "entityId": 7395, "properties": {"text": "Subject: re : visit to enron\nthanks . i will be flying back from tokyo on that day , so unfortunately i ' ll\nmiss bambos . if my schedule changes , i ' ll let you know .\nall the best ,\ntom\nvince j kaminski @ ect\n05 / 01 / 00 09 : 05 am\nto : thomas d gros / hou / ect @ ect , stinson gibner / hou / ect @ ect , ravi\nthuraisingham / enron communications @ enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : visit to enron\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2000\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 05 / 01 / 2000 04 : 26 : 30 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : visit to enron\nvince ,\nhow are you ? hope all is well .\nis there any chance we can schedule my visit to enron on friday , may 19 ,\nor friday , may 26 ?\nby the end of april i was able to attract a top new student to work on the\nproject .\nthe other one for the coming year will be giuseppe . by spending the summer\nat enron , he will be in a position to bring the new one up to speed and\ncreate an intellectual team here at stanford to look at these problems .\ni must move ahead soon to put the project in place and get the work going .\ntalk to you soon ,\nnick\nvince . j . kaminski @ enron . com wrote :\n>\n> nick ,\n>\n> we can close the loop on our commitment to support the research projects\n> before your visit to enron .\n>\n> my assistant , shirley crenshaw , will call you to set up a conference call\n> with me , stinson gibner ,\n> and tom gros from enron broadband services to discuss all the isssues .\n> friday this week would work for\n> both tom and me . i think we need about 15 minutes .\n>\n> vince\n>\n> p . s . shirley , nick ' s phone number is 650 796 8163 ( cell ) , 650 - 725 - 5525\n> ( office ) .\n>\n> nick bambos on 03 / 12 / 2000 05 : 32 : 35 pm\n>\n> to : vince . j . kaminski @ enron . com , bambos @ stanford . stanford . edu\n> cc :\n> subject : visit to enron\n>\n> hello vince ,\n>\n> it was nice seeing you at stanford and many thanks for the lunch\n> we had together . i really enjoyed our discussions , both at the\n> technical level and otherwise .\n>\n> i promised to send you an e - mail regarding possible dates for\n> a visit to enron . i delayed it for a week till my schedule was\n> clearer . let ' s see if we can get a match with your schedule -\n> mine is rather terrible :\n>\n> friday , 21 st of april looks good . but april 23 rd is easter\n> sunday , so that may make it difficult for some people at enron\n> to be around . let me know if that is the case . i am willing to\n> visit then , because the week after that i am scheduled to be in\n> japan and in the previous weeks i am all committed on fridays .\n>\n> friday , 19 th of may is the next possibility , but this probably\n> is too far out . the main problem is that i am operating within\n> a window of opportunity for attracting top students for this\n> research . this window closes by the end of april , and it would be\n> important for the student support funds to be in place then , so\n> that i can make hard commitments to students and attract top\n> talent . i am already reviewing files of students who have\n> approached me for phd advising , and i am in a mode of doing \" soft\n> commitments to star - level students \" to get this research and its\n> potential on their radar screen . top students are highly sought\n> after by advisors and i want to be an early player in this\n> competition .\n>\n> does my visit to enron have to happen before we can set up the\n> project and student support at stanford ? if so , doing it before the\n> end of april is important for getting top people . if the visit can\n> happen after we get the ball rolling , then we can schedule it in may .\n> i assume there will be multiple visits both ways when the project gets\n> going . please let me know what you think .\n>\n> best regards ,\n>\n> nick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.713+0000", "entityId": 7396, "properties": {"text": "Subject: power trading\nhi folks :\nvery glad to hear about the new developments . just to recap what we\ndiscussed this morning about different things you need to look into to set up\ntrading operations and the contacts :\n1 . licence to trade : regulatory people : i guess you know about this part\nbetter than me .\n2 . trading & risk mgmt : global risk mgmt oversight : john sherrif in london\nhas the overall responsibility outside western hemisphere . research group can\nhelp with the structuring models used for trading .\n3 . risk conrols : before trading group is operational , it needs to get the\nauthorization from the board of directors of enron along with total position\nlimits and possibly value @ risk limits . these limits are typically by\ncommodity type and by region . risk assessment & control ( rac ) under rick buy\nperforms the internal control function ensuring that the businesses adhere to\nthese trading limits . ted murphy is the vp in rac overseeing the trading\noperations . the value @ risk models come from the research group , but\nday - to - day monitoring of the numbers is done by ted ' s group .\n4 . credit risk : a credit reserve number is computed for each deal ( again , the\nmodels are created by research ) and is transferred to the credit group under\nbill bradford ( also in rac ) . this is basically like buying insurance from the\ncorp . , so that if there is a couterparty default , the loss is covered by the\nreserve pool of the credit dept .\n5 . legal : the name i was given is alan aronowitz for legal help .\n6 . back office : initially can survive with excel spreadsheets . you should\ncontact the it though when the plans finalize to talk about systems .\naustralia is the most recent place where we set up the trading operations .\nyou can talk to paul quilky , the trader there to talk about these issues\n( mention to him that grant masson in research gave his name ) .\nbarry pierce in london was incharge of back office at the begin there .\ni can coordinate for talking with people next week . give me a call monday if\npossible . i hadn ' t the time to search for the presentation stuff today . will\ndo it next week .\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.718+0000", "entityId": 7397, "properties": {"text": "Subject: re : visit to enron\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2000\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 05 / 01 / 2000 04 : 26 : 30 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : visit to enron\nvince ,\nhow are you ? hope all is well .\nis there any chance we can schedule my visit to enron on friday , may 19 ,\nor friday , may 26 ?\nby the end of april i was able to attract a top new student to work on the\nproject .\nthe other one for the coming year will be giuseppe . by spending the summer\nat enron , he will be in a position to bring the new one up to speed and\ncreate an intellectual team here at stanford to look at these problems .\ni must move ahead soon to put the project in place and get the work going .\ntalk to you soon ,\nnick\nvince . j . kaminski @ enron . com wrote :\n>\n> nick ,\n>\n> we can close the loop on our commitment to support the research projects\n> before your visit to enron .\n>\n> my assistant , shirley crenshaw , will call you to set up a conference call\n> with me , stinson gibner ,\n> and tom gros from enron broadband services to discuss all the isssues .\n> friday this week would work for\n> both tom and me . i think we need about 15 minutes .\n>\n> vince\n>\n> p . s . shirley , nick ' s phone number is 650 796 8163 ( cell ) , 650 - 725 - 5525\n> ( office ) .\n>\n> nick bambos on 03 / 12 / 2000 05 : 32 : 35 pm\n>\n> to : vince . j . kaminski @ enron . com , bambos @ stanford . stanford . edu\n> cc :\n> subject : visit to enron\n>\n> hello vince ,\n>\n> it was nice seeing you at stanford and many thanks for the lunch\n> we had together . i really enjoyed our discussions , both at the\n> technical level and otherwise .\n>\n> i promised to send you an e - mail regarding possible dates for\n> a visit to enron . i delayed it for a week till my schedule was\n> clearer . let ' s see if we can get a match with your schedule -\n> mine is rather terrible :\n>\n> friday , 21 st of april looks good . but april 23 rd is easter\n> sunday , so that may make it difficult for some people at enron\n> to be around . let me know if that is the case . i am willing to\n> visit then , because the week after that i am scheduled to be in\n> japan and in the previous weeks i am all committed on fridays .\n>\n> friday , 19 th of may is the next possibility , but this probably\n> is too far out . the main problem is that i am operating within\n> a window of opportunity for attracting top students for this\n> research . this window closes by the end of april , and it would be\n> important for the student support funds to be in place then , so\n> that i can make hard commitments to students and attract top\n> talent . i am already reviewing files of students who have\n> approached me for phd advising , and i am in a mode of doing \" soft\n> commitments to star - level students \" to get this research and its\n> potential on their radar screen . top students are highly sought\n> after by advisors and i want to be an early player in this\n> competition .\n>\n> does my visit to enron have to happen before we can set up the\n> project and student support at stanford ? if so , doing it before the\n> end of april is important for getting top people . if the visit can\n> happen after we get the ball rolling , then we can schedule it in may .\n> i assume there will be multiple visits both ways when the project gets\n> going . please let me know what you think .\n>\n> best regards ,\n>\n> nick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.723+0000", "entityId": 7398, "properties": {"text": "Subject: re : this summer ' s houston visits 2\nanjam ,\nit makes sense to come to houston for a longer time period .\ni think that you should spend here at least 3 weeks .\nvince\nanjam ahmad\n04 / 28 / 2000 05 : 47 am\nto : vince j kaminski / hou / ect @ ect , dale surbey / lon / ect @ ect\ncc :\nsubject : this summer ' s houston visits 2\nhi vince ,\none of my only windows of opportunity right now is to schedule the houston\nvisit for monday 10 th july for a single week only .\nregards ,\nanjam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 28 / 04 / 2000 11 : 33\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteven leppard\n28 / 04 / 2000 10 : 15\nto : vince j kaminski / hou / ect @ ect , dale surbey / lon / ect @ ect\ncc : anjam ahmad / lon / ect @ ect , benjamin parsons / lon / ect @ ect , kirstee\nhewitt / lon / ect @ ect , matthew d williams / lon / ect @ ect , steven\nleppard / lon / ect @ ect\nsubject : this summer ' s houston visits\nvince , dale\nhere are our proposals for houston visits from our group :\nkirstee all of july , all of september . ( kirstee ' s personal commitments mean\nshe needs to be in the uk for august . )\nben all of october . ( no crossover with kirstee , ensures var / credit cover\nin london office . )\nsteve 2 - 3 weeks in july , first 3 weeks of september .\nanjam to be arranged at anjam and houston ' s mutual convenience .\nmatt not a permanent research group member . i ' m asking richard ' s group to\npay for his visit , probably in august .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.729+0000", "entityId": 7399, "properties": {"text": "Subject: it compliance\nafter 23 years of service to enron , alberto gude retired on april 30 , 2000 .\non behalf of the many personnel that knew and worked with alberto , i want to\nthank him for his dedication to enron and also for his friendship and\nmentoring that he provided to so many . we wish alberto , his wife maria , and\ntheir children steven and michelle all our very best .\nfollowing alberto \u0001 , s retirement , the following organizational changes will\ntake place immediately within the it compliance group .\nandrew parsons , senior director , will be responsible for all corp . it\ncompliance activities . andrew will report directly to me .\nmark thibodeaux , director , will continue working primarily on information\nsecurity evaluations and technical reviews . mark has 16 years of experience\nas an it security expert and ten years as a cpa .\nstephen simpson recently joined it compliance as a director . steve came to\nenron with 8 years of experience in arthur andersen \u0001 , s computer risk\nmanagement practice . steve will focus on application risk management .\nthe corp . it compliance group is responsible for enterprise wide information\ntechnology reviews and it risk management compliance activities . these\nactivities include ensuring that our systems and related processes are\nsecure , available , operating with integrity and are adhering to audit\nstandards developed in conjunction with arthur andersen .\nplease join me in congratulating andrew , mark and steve on their new\nresponsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.734+0000", "entityId": 7400, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\nhello yong cho :\nsorry it has taken me so long to get back with you .\nthursday , may 4 is a good time for the telephone interview . would\n3 : 30 pm ( houston time - 1 : 30 pm california time ) be ok with you ?\nplease let me know . they will call you at 408 - 541 - 3502 .\nthe position title is : sr . specialist .\nthanks and have a great day !\nshirley crenshaw\n713 - 853 - 5290\nyongcho 70 @ aol . com on 04 / 27 / 2000 02 : 59 : 19 pm\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : telephone interview with the enron corp . research group\ndear shirley crenshaw ,\nhi . this is yong cho . i ' m very excited to have the interview offer from\nenron . either 5 / 1 or 5 / 4 will do . if i should choose one , i prefer 5 / 4 .\ni ' m in my office from 10 am - 6 pm ( pt ) . you can set a time at your convenience\nand just let me know . my number here is 408 - 541 - 3502 . i would like to know\nhow long it will take , and also exact job title i ' m interviewing for . thank\nyou very much for your help .\nsincerely ,\nyong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.738+0000", "entityId": 7401, "properties": {"text": "Subject: re : letter\nthanks a lot for the letter . appreciate your help .\nthanks ,\nlarrissa .\nvince j kaminski\n04 / 25 / 2000 09 : 19 am\nto : larrissa sharma / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : letter\nlarrissa ,\nplease , take a look at the letter .\nmy assistant is on vacation , she will be back tomorrow .\nplease , check the spelling of your first name . it was inconsistent in the\noriginal letter from the lawyer .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.743+0000", "entityId": 7402, "properties": {"text": "Subject: weekly meetings\nmaureen ,\nthis is to remind you that we scheduled , at your request ,\nregular weekly meetings . we are supposed to meet every\nfriday at 8 : 00 a . m .\nif i am not at the office , the meeting will be rescheduled .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.748+0000", "entityId": 7403, "properties": {"text": "Subject: approval ( sent by nguyen griggs )\nuser requests acces to / research / erg / basis / basisnw . . . . . please indicate if\nyou approve .\nthanks\nngriggs\nirm\no : / research / erg / basis / basisnw . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n05 / 02 / 2000 01 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system pending security processing\nresource request how to process a request . . .\ngeneral information initials :\nrequestor : kimberly brown / hou / ect phone : 713 - 853 - 5193\nrequested for : kimberly brown / hou / ect\nrequest type : update access\nrc # : 0765 wo # :\ncompany # : 413 priority : high\nlocation : houston 1 . click to see what is being requested or see the resource\nrequest ( s ) section below .\n2 . click to process the request .\ncomments :\nthis is urgent request # : kbrn - 4 jxkk 6\nsubmitted : 05 / 02 / 2000 09 : 59 : 11 am\nname cost status implementation comments\ndirectory / resource / other\no : / research / erg / basis / basisnw . . . . not started\nrequest processing path\nprocessed by status when comments\nsecurity\nimplementation\nother security information\nreq ' s location :\nnetwork login id : unix login id :\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1\n2 kimberly brown\nkimberly brown 05 / 02 / 2000 09 : 59 : 08 am\n05 / 02 / 2000 09 : 59 : 11 am", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.756+0000", "entityId": 7404, "properties": {"text": "Subject: o : \\ research \\ exotica access\nour records indicate that you are the owners / approvers for the\no : \\ research \\ exotica folder . if this is correct , please reply back with your\nconfirmation to information risk management .\nin an effort to update our files as well as to do some cleanup on the\ndirectory membership , we are including the current membership list for the\nfollowing nt groups . please review the membership list and advise if any\ndeletions are required .\ngroup name group description\ndata _ exotica change access to o : \\ reasearch \\ exotica , ohara , scarlet\ndata _ exotica _ ro read - only access to o : \\ reasearch \\ exotica , ohara , scarlet\ndatapwr _ exoticarw change access to m : \\ exotica\ndata _ exotica\nuser id full name\nadhar amitava dhar / hou / ees\nbtiner brent tiner / corp / enron\nclandry chad landry / hou / ect\ncuus charles uus / hou / ect\ndmaxwel david maxwell / hou / ect\ndvitrel david vitrella\ngmasson grant masson / hou / ect\njbuss jd buss / hou / ect\nkhopper kevin hopper / hou / ect\nmlay mark lay / hou / ect\nmvasque miguel vasquez / hou / ect\npkrishn pinnamaneni krishnarao / hou / ect\npzadoro pavel zadorozhny / hou / ect\nsgibner stinson gibner / hou / ect\nthall d todd hall / hou / ect\nttamarc tanya tamarchenko / hou / ect\nvguggen victor guggenheim / hou / ect\nvkamins vince j kaminski / hou / ect\nvngo van t ngo\nvshanbh vasant shanbhogue / hou / ect\nzlu zimin lu / hou / ect\ndata _ exotica _ ro\nuser id full name\nadhar amitava dhar / hou / ees\naseveru allan severude / hou / ect\nbchan betty chan / hou / ect\nbdavis 6 brian davis / corp / enron\ncconsta chris constantine / hou / ect\ncgarci 2 christine garcia / enron _ development\nclandry chad landry / hou / ect\ncliverm carl livermore / hou / ect\ncschwab clarence schwab / ny / ect\nctricol carl tricoli / corp / enron\ncuus charles uus / hou / ect\ndanders derek anderson / hou / ect\ndbillot david billot / hou / ect\ndumbowe denae umbower / hou / ect\nepao eva pao / hou / ect\nfkarbar frank karbarz / hou / ect\nicaplan ilan caplan / hou / ect\njgreene john greene / hou / ect\njkinnem jeff kinneman / hou / ect\njkrishn jayant krishnaswamy / hou / ect\njmrha jean mrha / hou / ect\nkmccoy kelly mccoy / hou / ect\nljegana lenine jeganathan / hou / ect\nmbradle michael w bradley / hou / ect\nmcisner michelle d cisneros / hou / ect\nmdaya madhur dayal / hou / ect\nmrodrig mark anthony rodriguez / hou / ect\nosezge osman sezgen / hou / ees\npghosh partho ghosh\ns _ prandle phillip c randle / hou / ect\nsgoldma stephanie goldman / hou / ect\nsharril steve harris / hou / ect\nslewis susan r lewis / hou / ect\nsreyes selena reyes / hou / ect\nsrivas sandy rivas / hou / ect\nsrosman stewart rosman / hou / ect\nssmith 7 sarah smith / corp / enron\nssreera sai sreerama / hou / ect\ntbersan tracee bersani\ntbrown tony brown / hou / ect\ntermserv terminal server test account\nteslick tara eslick / hou / ect\ntlee twana lee / corp / enron\ntnguye 2 tovinh nguyen / hou / ect\nvmendan vernon mendanha / hou / ect\nwlewis william patrick lewis / hou / ect\ndatapwr _ exoticarw\nuser id full name\nbkaufma bennett kaufman / hou / ect\nborourk brian o ' rourke / hou / ect\nbspecto brian spector / hou / ect\ndreck daniel reck / hou / ect\nebaughm edward d baughman / hou / ect\nfhayden frank hayden\ngmasson grant masson / hou / ect\ngmcclel george mcclellan / hou / ect\nkcompea karla compean / hou / ect\nketter kyle etter / hou / ect\nkhopper kevin hopper / hou / ect\nmdalia minal dalia / hou / ect\nmgimble mathew gimble / hou / ect\nphickey patrick h hickey / hou / ect\npkrishn pinnamaneni krishnarao / hou / ect\nrtomask richard tomaski / hou / ect\nsgibner stinson gibner / hou / ect\nvkamins vince j kaminski / hou / ect\nvsabo valarie sabo / pdx / ect\nvshanbh vasant shanbhogue / hou / ect\nzlu zimin lu / hou / ect\nthanks !\ninformation risk management / audit\nlupita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.763+0000", "entityId": 7405, "properties": {"text": "Subject: re : approval for restricted websit : web _ research _ pub\napproved .\nvince kaminski\ninformation risk management\n05 / 02 / 2000 09 : 04 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : approval for restricted websit : web _ research _ pub\nper kevin moore , please approve elena chilkina ' s access for the following\nrestricted website : web _ research _ pub .\nthank you ,\ninformation risk management ( et )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n05 / 02 / 2000 09 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\ndirectory line item pending access processing\ndirectory name : website : web _ research _ pub\nservice type : grant\nexpiration date :\ncomments : will send to vince kaminski for approval .\nsecurity processing\nprocessing status :\ne - mail message :\ncomments / justification :\ngeneral information request : kgme - 4 jtf 4 c\nrequested by : kevin g moore / hou / ect phone : 713 / 853 - 4710\nrequested for : elena chilkina / hou / ect employee type :\ncompany : 100038 rc # : 0011\npriority : high\ncomments / justification : she will need the same as michael sergeev . a few has\nbeen listed there may be\nsome others that are not listed . please apply .\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1 information risk management 05 / 02 / 2000 09 : 03 : 15 am", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.770+0000", "entityId": 7406, "properties": {"text": "Subject: re : memory\nhello andy ,\ni received your e - mail .\ni would like to request memory for the printer on the\n19 th floor .\nthe printer name is bandit .\ncompany number - 0011\nr . c . number - 100038\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 05 / 02 / 2000 09 : 00\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 02 / 2000 08 : 55 am\nto : kevin g moore / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : memory\nkevin ,\nmakes sense\nvince\nkevin g moore\n05 / 02 / 2000 08 : 10 am\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : memory\ngoodmorning ,\nshirley , we are in need of a printer that will allow us to print\nseveral pages , none of the printers on this floor will permit\nus to do that without adding memory .\ni even sent the print - out to bandit and it also needs more memory to\nprint these pages .\nwhat we are printing is 189 pages .\nmike would like to print these pages , so instead of paying for\nmemory on someone else ' s printer could we add memory to\none of our own .\nplease inform . . . . . . . . . .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 05 / 02 / 2000 08 : 01\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandy sikes @ enron\n05 / 01 / 2000 02 : 41 pm\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : memory\nkevin - please reply with a company numbern and rc number to charge the cost\nof the order to . it ' s about $ 100 .\nthanks , andy\nenron it purchasing\n- - - - - - - - - - - - - - - - - - - - - - forwarded by andy sikes / corp / enron on 05 / 01 / 2000 02 : 38\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandy sikes\n05 / 01 / 2000 02 : 40 pm\nto : andy sikes / corp / enron @ enron\ncc :\nsubject : memory\n- - - - - - - - - - - - - - - - - - - - - - forwarded by andy sikes / corp / enron on 05 / 01 / 2000 02 : 37\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore @ ect\n05 / 01 / 2000 11 : 04 am\nto : enron it purchasing @ enron\ncc :\nsubject : memory\ni would like to request more memory for the printer\nblue - sky on the 32 nd floor .\nthe printer is a laser jet 8100 n .\nthe printer is located in front of eb 3240 b .\nwe need more memory a . s . a . p\nthanks\nkevin moore .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.774+0000", "entityId": 7407, "properties": {"text": "Subject: approval for restricted websit : web _ research _ pub\nper kevin moore , please approve elena chilkina ' s access for the following\nrestricted website : web _ research _ pub .\nthank you ,\ninformation risk management ( et )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n05 / 02 / 2000 09 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\ndirectory line item pending access processing\ndirectory name : website : web _ research _ pub\nservice type : grant\nexpiration date :\ncomments : will send to vince kaminski for approval .\nsecurity processing\nprocessing status :\ne - mail message :\ncomments / justification :\ngeneral information request : kgme - 4 jtf 4 c\nrequested by : kevin g moore / hou / ect phone : 713 / 853 - 4710\nrequested for : elena chilkina / hou / ect employee type :\ncompany : 100038 rc # : 0011\npriority : high\ncomments / justification : she will need the same as michael sergeev . a few has\nbeen listed there may be\nsome others that are not listed . please apply .\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1 information risk management 05 / 02 / 2000 09 : 03 : 15 am", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.780+0000", "entityId": 7408, "properties": {"text": "Subject: visit to enron\ngrant and vince ,\nthanks for arranging my visit to enron . i was impressed by the nature and\nscope of work in the group and the people i met . i look forward to hearing\nfrom you later in the week .\na few peple asked me the method i used to value asian options . it is an\napproximate method based on geometrical averaging with an adjusted exercise\nprice , as described by gordon gemmill in option pricing : an international\nperspective , mcgraw - hill , london , 1993 , pages 242 - 248 .\nregards ,\ngreg\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.785+0000", "entityId": 7409, "properties": {"text": "Subject: re : bruno repetto interview with enron corp . research group\nbruno repetto will be in the office on may 11 beginning at 1 : 00 pm .\nfollowing is the interview schedule :\nvince kaminski 1 : 00 pm\nstinson gibner 1 : 30 pm\ngrant masson 2 : 00 pm\nvasant shanbhogue 2 : 30 pm\nkrishna krishnarao 3 : 00 pm\nzimin lu 3 : 30 pm\ntany tamarchenko 4 : 00 pm\nall interviews will be conducted in ebl 938 .\nthe calendars that i have access to have already been marked .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.789+0000", "entityId": 7410, "properties": {"text": "Subject: re : real options\nvince ,\nif you take a cab , ask them to take you to the college of business\nbuilding at the corner of 21 st and speedway . the main entrance to the\nbusiness school is on speedway , across from the old gymnasium . come in the\nmain entrance , which has a large , glass structure , and you will be on the\nsecond floor . go to your left and ride up the first set of escalators to\nthe third floor . when you step off of the escalators , you ' ll be facing\nnorth and continue in that direction through two sets of glass doors into\nthe northern side of the building . this is where most faculty offices are\nfound . my office is 3 . 218 , which is in the northwest corner of the\nbuilding .\nif you have any problems , you should be able to ask directions from\nmost anyone in the halls . i will look for you around 11 : 00 on thursday , and\nwill be happy to provide any other transportation that you need . please let\nme know if you have any other questions .\njim\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , may 02 , 2000 9 : 23 am\nto : jim . dyer @ bus . utexas . edu\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com ;\nshirley . crenshaw @ enron . com\nsubject : re : real options\njim ,\ni can take a cab or get a rental car from the airport ( thanks for your\nkind offer ) .\ni shall appreciate , however , if you could drop me off at the hotel before\ndinner .\nthe time allocation for my speech is about right . i think i shall need\nabout 90\nminutes .\nplease let me know where we can meet on thursday . i shall be at an\noff - site\non wednesday but you can reach me on my cell phone ( 713 410 5396 )\nand by sending a cc message to my aol address : vkaminski @ aol . com .\ni look forward to meeting you .\nvince\njim dyer on 05 / 01 / 2000 01 : 42 : 44 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc : sheridan titman\nsubject : re : real options\nvince ,\ni could pick you up at the airport , or you could rent a car and come\nto campus . i have made tentative plans for us to go to lunch with some\nother faculty between 11 : 30 and 12 : 00 , and then you would have some time to\nvisit with sheridan and perhaps with some other faculty members as well\nbetween lunch and my class .\nsheridan and a guest speaker from his class , suresh sundaresan from\ncolumbia , will be joining us for dinner . i could provide transportation to\nyour hotel , and pick you up for dinner as well if you consider that to be\nthe most convenient alternative .\ni will have a pc available in the classroom , with office 2000 and\nwindows nt . you could use powerpoint with no difficulty from that machine ,\nif that ' s most convenient . you could simply email the presentation , and i\nwould have it for you if you prefer .\nhow much time would you like ? i would like to reserve about 30\nminutes at the end for a general discussion of issues related to real\noptions , and about 30 minutes at the beginning of class for some remarks\nregarding the final assignment and a class evaluation by the students\n( which\nis required for all classes ) . at some point , we should take a brief break ,\nso that would leave approximately 1 . 5 to 2 hours for your presentation if\nyou would like that flexibility . otherwise , i could take up the \" slack \" .\ni look forward to seeing you on thursday .\njim\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , april 28 , 2000 11 : 21 am\nto : jim . dyer @ bus . utexas . edu\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : re : real options\njim ,\ni am scheduled to arrive in austin on may 4 at 10 : 32 a . m .\ni shall be glad to join you and a group of your colleagues for lunch .\ni am flying back to houston friday morning and we can meet for dinner\nafter\nthe class .\ni shall have a power point presentation on my pc . i can also\nprepare a set of transparencies if this is more convenient for you .\nvince\njim dyer on 04 / 27 / 2000 05 : 44 : 51 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc : sheridan titman\nsubject : real options\nvince ,\ni am traveling at this time , attending a nsf meeting in washington .\nhowever , i wanted to touch base regarding plans for your presentation in my\nclass on real options next thursday ( may 4 ) . as you recall , the class is\nfrom 3 : 30 to 6 : 30 , and you could plan to take a significant part of that\ntime for your presentation . sheridan titman has agreed to join us after\nhis\nclass at about 6 : 00 for a 30 minute \" panel discussion \" with the students on\nissues related to real options in practice . l\ni am not sure about your travel plans , but we would be happy to plan\nlunch on thursday with several of my colleagues . i would also be delighted\nto be your host for dinner on thursday night if that is convenient for you .\ni ' ll be back in my office on monday , and will look forward to\nhearing from you .\njim\njames s . dyer\nfondren centennial chair in business\ndepartment of management science and information systems\ncba 5 . 202\nthe university of texas at austin\naustin , texas 78712 - 1175\nemail : j . dyer @ bus . utexas . edu\ntelephone : 512 - 471 - 5278\nfax : 512 - 471 - 0587", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.794+0000", "entityId": 7411, "properties": {"text": "Subject: re : 1 . your thur . / fri . austin trip ; 2 . presentation of my\nrisk - management optimization model ; 3 . enron on - line\nvince ,\n> i shall definitely attend you presentation at power 2000 .\nthanks , i appreciate it .\n> i shall ask about a guest accounton eol . typically , such an account allows\n> an outside user to take a look at the system , but i don ' t think the traders\n> will allow\n> systematic access to the price data over a long period of time by a third\n> party .\ni quite understand , and will appreciate the ability to use the system while\nthe permission is applicable .\n> would you like to meet with me , alex , helyette for dinner tuesday ?\ni would be delighted to join you , alex and helyette for dinner tue . when\nthat info is available , please advise when and where .\nlook forward to seeing you tue . best ,\nehud\nehud i . ronn\ndepartment of finance\ncollege and graduate school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.799+0000", "entityId": 7412, "properties": {"text": "Subject: re : 1 . your thur . / fri . austin trip ; 2 . presentation of my\nrisk - management optimization model ; 3 . enron on - line\nehud ,\nsorry i shall miss you on thursday .\ni shall definitely attend you presentation at power 2000 .\ni shall ask about a guest accounton eol . typically , such an account allows\nan outside user to take a look at the system , but i don ' t think the traders\nwill allow\nsystematic access to the price data over a long period of time by a third\nparty .\nvince\n\" ehud i . ronn \" on 05 / 01 / 2000 05 : 54 : 50 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : 1 . your thur . / fri . austin trip ; 2 . presentation of my\nrisk - management optimization model ; 3 . enron on - line\nvince ,\ngreetings .\ni am following up at this time with respect to the above issues we\ndiscussed in san antonio .\n1 . i am leaving thur . morn for philadelphia , and shall not be back until\nlate fri . ( my etd is 9 : 40 a . m . , which i understand is less than an hour\nbefore your arrival . . . ) thus i shall regrettably miss your current ut\nvisit , which we had hoped to also use as an opportunity to present / discuss\nmy enterprise - wide risk management model .\n2 . that said , i shall be presenting an abridged version of this model at\npower 2000 ' s first day , 5 / 9 4 : 15 - 4 : 55 p . m . while i realize you ' ll be\nvery busy over power 2000 ' s two days , should your schedule permit , i should\nmost welcome the opportunity for you to see the model .\n3 . per your suggestion in san antonio , i would like to take this\nopportunity to inquire whether i might obtain an enron on - line account to\nobtain electricity prices quoted by enron .\ni look forward to seeing you at power 2000 . best regards ,\nehud\nehud i . ronn\ndepartment of finance\ncollege and graduate school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.804+0000", "entityId": 7413, "properties": {"text": "Subject: making room for \" summer interns \"\nhello all :\ni have some \" good \" news and i have some \" bad \" news . the \" good \" news\nis that we are growing ! the \" bad \" news is that we are running out of space .\ntherefore , just for the summer we need to use jose ' s and joe ' s offices\non the 19 th floor for \" summer \" interns .\ni will have to remove the extensions from those offices so they won ' t be\nringing all the time . however , we can put them back after the summer is\nover .\ni hope this is not too inconvenient for you , but with roman and jason needing\nspaces on the 19 th floor , and another new hire coming on board , we are left\nwithout any extra spaces .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.808+0000", "entityId": 7414, "properties": {"text": "Subject: thomas knudsen\nall\ni ' ve been informed by thomas knudsen that he no longer wishes to pursue his\napplication to join our research group .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.814+0000", "entityId": 7415, "properties": {"text": "Subject: organizational changes\ngiven the evolution of a number of our businesses , we have decided to make an\norganizational change . the change is in response to a number of factors .\nfirst , as a part of our new initiative in enron net works , it is becoming\nclear that we have the opportunity to quickly expand enron \u0001 , s underlying\nbusiness model to other commodity markets . such an expansion requires a\ncoordinated focus on strategy as we select and develop these opportunities .\nsecond , the success of enrononline and the continued expansion of our\nwholesale activities in north america and europe have increased the\ncoordination requirements across our north american and european operations .\nas a result of these two factors , we are making the following organizational\nchanges effective immediately :\ncliff baxter will move from enron north america to enron corp . as executive\nvice president and chief strategy officer .\nmark frevert will become chairman and ceo of north america , replacing cliff .\nin addition , mark will remain chairman of enron europe .\njohn sherriff will become president and ceo of enron europe .\nwe are confident that these changes will increase the effectiveness of our\norganization . please join us in congratulating cliff , mark and john on their\nnew responsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.819+0000", "entityId": 7416, "properties": {"text": "Subject: re : real options\nvince ,\nthanks again for coming to austin to speak with my class . i am sure\nthat they appreciated hearing about the use of real options at enron , and i\nthink it was a very fine way to finish the semester .\nalong with my colleagues from finance , i appreciate the strong\nsupport that enron has provided to the college of business administration .\nwe appreciate the relationship , and look forward to seeing you in austin\nagain next year .\njim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.824+0000", "entityId": 7417, "properties": {"text": "Subject: re : energy course\njulie ,\nno objections . please , include our names .\nvince\n\" julie \" on 05 / 05 / 2000 04 : 22 : 29 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : energy course\ndear vince ,\nthanks for attending the energy derivatives course , and i hope you found it\nvaluable .\nthere ' s been some interest from other course attendees to put together a\ncontact list and distribute it to one another . i ' m contacting you to see if\nyou or zimin lu have any objection to being included on the list . we will\ninclude only details that you approve , such as name , company name , address\nand email if you wish .\nwe would like to send out the list early next week , so please let us know .\nthanks ,\njulie\nps - how ' s the chapter ?\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.829+0000", "entityId": 7418, "properties": {"text": "Subject: re : real options openings ?\nvince ,\nthanks very much - i ' m looking forward to it ,\nchris\nat 09 : 25 am 5 / 8 / 00 - 0500 , you wrote :\n>\n> chris ,\n>\n> we shall make arrangements to bring you over for an interview .\n> our hr department will contact you later this week .\n>\n>\n> vince\n>\n>\n>\n>\n>\n> christopher m kenyon on 05 / 05 / 2000 07 : 56 : 11 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : real options openings ?\n>\n>\n> dear vince kaminski ,\n> i was auditing prof dyer ' s real options class on thursday when you\n> spoke\n> on enron ' s activities in this area . i would be interested in exploring the\n> possibility of joining the group that works on real options in response to\n> and in anticipation of enron ' s business requirements . i ' m currently\n> working in the development and application of real options methodology at\n> schlumberger . in particular i ' ll be speaking at an industry real options\n> valuation conference in london ( http : / / www . iqpc . co . uk / finance / rov / ) and i\n> just had the paper accepted for publication in operations research . could\n> you pass my resume on to the relevant people to have a look at ?\n>\n> thanks in advance ,\n>\n> chris kenyon\n>\n> ( see attached file : cmkenyon _ cv _ mayo 0 . doc )\n>\n>\n>\n>\n>\n> attachment converted : \" c : \\ eudora \\ attach \\ cmkenyon _ cv _ mayo 01 . doc \"\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.836+0000", "entityId": 7419, "properties": {"text": "Subject: interview with the research group\nhi kathy and elizabeth :\nvince kaminski would like to bring chris kenyon in for a formal interview\nwith the research group . we would like to bring him in on monday ,\nmay 15 th , or monday , wednesday , thursday , and friday of the week of\nmay 22 - 26 th . if these dates do not work for chris , please let me know . .\nthe interview participants would be :\nvince kaminski\nstinson gibner\nzimin lu\nvasant shanbhogue\ngrant masson\npaul issler\nkrishna krishnarao\nif you need any other information , please let me know .\nthanks and have a great day !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 05 / 08 / 2000\n09 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 08 / 2000 09 : 25 am\nto : christopher m kenyon @ enron\ncc : stinson gibner / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : real options openings ?\nchris ,\nwe shall make arrangements to bring you over for an interview .\nour hr department will contact you later this week .\nvince\nchristopher m kenyon on 05 / 05 / 2000 07 : 56 : 11 am\nto : vkamins @ enron . com\ncc :\nsubject : real options openings ?\ndear vince kaminski ,\ni was auditing prof dyer ' s real options class on thursday when you spoke\non enron ' s activities in this area . i would be interested in exploring the\npossibility of joining the group that works on real options in response to\nand in anticipation of enron ' s business requirements . i ' m currently\nworking in the development and application of real options methodology at\nschlumberger . in particular i ' ll be speaking at an industry real options\nvaluation conference in london ( http : / / www . iqpc . co . uk / finance / rov / ) and i\njust had the paper accepted for publication in operations research . could\nyou pass my resume on to the relevant people to have a look at ?\nthanks in advance ,\nchris kenyon\n- cmkenyon _ cv _ mayo 0 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.841+0000", "entityId": 7420, "properties": {"text": "Subject: re : real options openings ?\nshirley ,\naustin . please , set up an interview with me , stinson , zimin , vasant , grant ,\npaulo , krishna . sometimes next week .\nlet ' s make it a formal interview ( coordinated through elizabeth grant ) .\nvince\nshirley crenshaw\n05 / 08 / 2000 09 : 27 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : real options openings ?\nvince :\nis this gentleman in houston ? when do you want to bring him over - next\nweek ?\nthanks !\nvince j kaminski\n05 / 08 / 2000 09 : 25 am\nto : christopher m kenyon @ enron\ncc : stinson gibner / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : real options openings ?\nchris ,\nwe shall make arrangements to bring you over for an interview .\nour hr department will contact you later this week .\nvince\nchristopher m kenyon on 05 / 05 / 2000 07 : 56 : 11 am\nto : vkamins @ enron . com\ncc :\nsubject : real options openings ?\ndear vince kaminski ,\ni was auditing prof dyer ' s real options class on thursday when you spoke\non enron ' s activities in this area . i would be interested in exploring the\npossibility of joining the group that works on real options in response to\nand in anticipation of enron ' s business requirements . i ' m currently\nworking in the development and application of real options methodology at\nschlumberger . in particular i ' ll be speaking at an industry real options\nvaluation conference in london ( http : / / www . iqpc . co . uk / finance / rov / ) and i\njust had the paper accepted for publication in operations research . could\nyou pass my resume on to the relevant people to have a look at ?\nthanks in advance ,\nchris kenyon\n- cmkenyon _ cv _ mayo 0 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.845+0000", "entityId": 7421, "properties": {"text": "Subject: re : resume - norberto valdes\nelizabeth ,\nyes , she referred norberto to us . we had an informal interview\nwith him .\nwe would like to invite him for a round of formal interviews later this week .\nplease include me , tanya tamarchenko , ted murphy , krishnarao pinnamaneni ,\ngrant masson .\ni asked liza to talk to you to set up formal arrangements with enron\nhr ( a contract , fee schedule approval , etc . ) .\ni shall ask you for help next week when we have more information :\nseveral members of our group from london will rotate through our houston\noffice this summer . we shall need help in making living arrangements ,\nincluding apartments , car , etc . also , we have an employee from india\nrotating through our group this summer . please , let me know\nwho is the best person in hr to ask for assistance .\nvince\nfrom : elizabeth grant 05 / 05 / 2000 08 : 10 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : resume - norberto valdes\nvince ,\nlisa woods ford ( independent recruiter ) tells me that she has referred this\nresume to you . any interest in setting norberto up for interviews ?\n- elizabeth\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elizabeth grant / hou / ect on 05 / 05 / 2000\n08 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnvaldes @ txuenergy . com on 05 / 03 / 2000 09 : 32 : 29 am\nto : elizabeth . grant @ enron . com\ncc :\nsubject : norberto ' s resume\ndear elizabeth\nper our conversation here is norberto ' s resume . thanks .\nlisa ford\n( see attached file : resumen 4 . doc )\n- resumen 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.852+0000", "entityId": 7422, "properties": {"text": "Subject: contacts at uh for \" econo - physics \"\nvince ,\nthese are the contacts from uh .\ni would recommend that for a first contact the following people be involved :\nlarry pinsky ( physicschair )\njoe mccauley ( professor )\ngeorge reiter ( professor )\ntheir coordinates and some schedules are below . if larry is out of town ,\nprof . gunaratne would be a good alternative .\nplease let me know how i can help further .\nyannis\n- - - - - - - - - - - - - - - - - - - - - - forwarded by yannis tzamouranis / hou / ect on 05 / 08 / 2000\n03 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" prof . lawrence pinsky \" on 05 / 08 / 2000 09 : 10 : 54 am\nto : yannis . tzamouranis @ enron . com\ncc : jenni @ mailman . enron . com , jmccauley @ uh . edu , greiter @ uh . edu , gemunu @ uh . edu\nsubject : contacts at uh for \" econo - physics \"\nyannis :\nlet me give you the names and contact information regarding the\nappropriate personnel here to include in an initial discussion regarding\nthe prospects for developing a program here in ( we have to find a better\nname ) \" econo - physics . \" for an initial meeting it is reasonable to include\nprofessores mccauley and reiter as well as myself , if i am available . if i\nam not available you should consider including professor gemunu gunaratne ,\nour current associate chair and a theoreticial with an interest in this\narea in his own right .\nprofessor joseph mccauley\nphone : 713 743 3528\nfax : 713 743 5389\nemail : jmccauley @ uh . edu\nprofessor george reiter\nphone : 713 743 3527\nfax : 713 743 3589\nemail : greiter @ uh . edu\nprofessor & chair lawrence pinsky\nphone : 713 743 3552\nfax : 713 743 3589\nemail : pinsky @ uh . edu\nor an alternate for me :\nassociate professor and associate chair gemunu gunaratne\nphone : 713 743 3534\nfax : 713 743 3589\nemail : gemunu @ uh . edu\nalso , fyi , one other new faculty member with a potential interest in this\nfield is :\nassistant professor ( effective 6 / 1 / 2000 ) kevin bassler\nphone : 713 743 3568\nfax : 713 743 3589\nemail : bassler @ uh . edu\ngeneral administrative contact :\nms . jennifer chin - davis , department business administrator\nphone : 713 743 3524\nfax : 713 743 3589\nemail : jenni @ shasta . phys . uh . edu\nfyi , i will be in houston may 17 - 24 , june 9 , 19 - 23 . if the meeting is held\non another date , please include prof . gunaratne in my place . . .\nlarry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.860+0000", "entityId": 7423, "properties": {"text": "Subject: joe mccauley ' s papers\nvince ,\nas promised , these are a couple of references that i have for joe mccauley ' s\npapers .\nwhether the specific papers are of interest to what exactly we ' re doing or\nnot , i cannot say . on the other hand , given uh ' s drive to create an\n\" econophysics \" specialization within the physics department , i thought we\ncould both help them * and * drive it towards a direction that it could be of\nuse to us . i think that they would very much like to hear what the industry\nwould like to see from such a specialization . some of the things that have\nbeen discussed as course offerings would be :\nbasic physics courses ( mechanics , nonlinear dynamics , stat . physics , math\nmethods )\nvarious finance courses like options , banking , etc .\nstatistics , math methods , and statistical physics ( that could teach topics\nlike brownian motion , lognormal distributions , fractals , levy flights , and\nstatistics of ' large deviations ' , which are of interest\ncomp science ( java , c + + , data structures , algorithms )\nmonte carlo simulations\netc\nsetting up some sort of exchange , where at minimum we could get summer\ninterns from this program , would also be beneficial to both sides . even\nbetter , a wider collaboration between enron and the physics department could\nbe set up .\nafter this message ,\ni will inform joe mccauley and larry pinsky ( departmental chair person ) of\nyour suggestions on how to proceed .\ni will send shirley their contact information to arrange for a visit at the\nbeginning of june .\nthanks ,\nyannis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.866+0000", "entityId": 7424, "properties": {"text": "Subject: development of a program in \" econo - physics \"\ngood afternoon professors :\ni am the administrative coordinator for the enron corp . research group .\nyannis tzamouranis spoke with vince kaminski about meeting with you to\ndiscuss the development of a program for the u of h .\ni understand from your email that you will be available wednesday , may\n24 th . if this is correct , and if professors mccauley and reiter will also be\navailable that date , we would like to schedule a meeting at 4 : 00 pm on the\n24 th of may at vince kaminski ' s enron office .\nif this is not acceptable , please let me know .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research group\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . comi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.870+0000", "entityId": 7425, "properties": {"text": "Subject: enron storage analysis model audit\nprofessor darrel duffie\n450 miramonte avenue\npalo alto , ca 94306\nmay 8 , 2000\ndear professor duffie ,\ni enclosed with this e - mail enron storage analysis model ( sam ) for your\nreview . the attached files include :\n1 ) a brief documentation of the model ( sam . doc ) , 2 ) c - code of the main\nroutines , 3 ) excel spreadsheet interface ,\n4 ) sam _ audit . dll .\ndr . vince kaminski , dr . stinson gibner and myself have spent about one year\nin developing this model .\nwith traders \u0001 , feedback incorporated , the model results are close to reality .\nalthough there are features to be included ,\nwe believe the model is ready for your review . we look forward to your\ncomments and suggestions .\nplease feel free to contact me should you need additional detail .\nsincerely ,\nzimin lu\ndirector , enron research\nzlu @ enron . com\n713 - 853 - 6388\nenclosures", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.875+0000", "entityId": 7426, "properties": {"text": "Subject: risk boston\nplease read the attached important information .\n?\nthank you\n?\nregards\ncatriona clowes\nconference co - ordinator\ntel + 44 ( 0 ) 20 7484 9864\n- chase . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.880+0000", "entityId": 7427, "properties": {"text": "Subject: re : meeting w kevin hannon\nvince and stinson :\ncarol brown called and we have scheduled the meeting for 4 : 00 pm on\nthursday , may 11 .\nit will be in kevin ' s office at eb 4508 .\nthanks !\nshirley\nstinson gibner\n05 / 08 / 2000 04 : 42 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : meeting w kevin hannon\nshirley ,\ncould you call carol brown and set up a time for vince and i to meet with\nkevin hannon later this week ?\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.886+0000", "entityId": 7428, "properties": {"text": "Subject: it resources\nguys , in response to the offsite , beth perleman is now a dedicated ena\nresource on the it side of the business . she will be joining the ena\nmanagement team of which you are all a part . she will participate in the\nfriday management meeting to address it issues and opportunities . on friday\nmay 18 th , beth will go over her management team and her available resources .\nat every friday meeting , she will present the current project queue ( with\nassociated cost / capital budget and sponser ) and the management team will set\npriorities and necessary incremental resources .\nregards\ndelainey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.890+0000", "entityId": 7429, "properties": {"text": "Subject: re : development of a program in \" econo - physics \"\nhello shirley ,\ni ' d understood from yannis that he ' d proposed a brown bag lunch where i ' d\ngive a talk and then the discussion about various possibilities would\nfollow . i ' m here until about mid - may and then will go on leave in europe\nfor a year . i could be available to make trips back and forth from time to\ntime to get things started .\nbest regards ,\njoe mccauley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.894+0000", "entityId": 7430, "properties": {"text": "Subject: confirmation of meeting\nvince : thanks for introducing me as a speaker at the power 2000 conference .\nas per our conversation , please find enclosed my resume .\ni will come to your office at 1 : 30 pm , friday , may 12 , 2000 . please let me\nknow if the dress code is casual or formal .\nthanks again for taking the time to talk to me regarding opportunities at\nenron .\n>\nsanjeev k khanna , m . sc . , p . eng .\ndirector , quantitative risk management\npg & e energy trading\n1100 louisina street , # 1000\nhouston , tx 77094\nemail : sanjeev . khanna @ et . pge . com\ntel : ( 713 ) 371 6647 , pager 800 - 526 - 4095 , cell ( 281 ) 302 - 8468\npg & e energy trading and any other company referenced herein which uses the\npg & e name or logo are not the same company as pacific gas and electric\ncompany , the california utility . these companies are not regulated by the\ncalifornia public utilities commission , and customers do not have to buy\nproducts from these companies in order to continue to receive quality\nregulated services from the utility .\n- . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.900+0000", "entityId": 7431, "properties": {"text": "Subject: linear programming software purchase\nvince ,\ni ' d like to purchase some copies of the xpress lp solver for the gas storage\noptimization model . we have previously discussed the purchase of cplex , but\nafter trialing both systems , have found some worthwhile advantages with\nxpress . if others find planner / cplex best suited to their application , i\nsee no problem is their use of a different system - both have strengths , and\nit is likely that i would use planner / cplex myself on some future project if\nwe were to have both systems available .\nxpress is particularly suited to my application because it handles special\nordered sets . this is a very efficient way of representing the storage\nratchets as the integer search process is able to use the extra information\nprovided by the set , rather than just using binary integer variables to\nrepresent the ratchets .\nplanner is a c + + interface for cplex . it has some significant limitations ,\nand does not permit access to all cplex features .\ndash optimization have made the following offer :\nall software purchases made by enron this year will be at 30 % off the list\nprice - we do not need to make a single purchase of any specific quantity of\nlicenses to obtain this discount .\n90 days of full maintenance services will be provided with the purchase .\nthe emosl utility will be provided at no cost .\nthe xbsl system will be provided at no cost when it is released in a few\nweeks time .\nfor the gas storage optimization model , i would like to purchase :\none development license , hyper version , with modeller , primal / dual simplex ,\nmip search , dlls , emosl and xbsl when available .\nlist price $ 10 , 000 discounted price $ 7 , 000\ntwo run time licenses for above ,\nlist price total $ 8 , 000 discounted price $ 5 , 600\ntotal cost $ 12 , 600\ni ' ve used the usually security request system to set the purchase process\ngoing , should you agree to this .\ntom .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.905+0000", "entityId": 7432, "properties": {"text": "Subject: re : price process parameter esimator\nmichael , i think you mean price process parameter esimator .\nit is under o : \\ research \\ exotica \\ prices \\ reversion 97 _ trend . xls\ntanya\n\" michael schilmoeller \" on 05 / 11 / 2000 05 : 04 : 20\npm\nto : ttamarc @ enron . com\ncc : gmasson @ enron . com , vkamins @ enron . com , mike _ niman @ pgn . com\nsubject : price process simulator\nhi tanya ,\nhope things go well for you . can i get a copy of the price process simulator\nyou wrote ? it would be helpful in developing a plant dispatch module for\nmonet , the power systems simulation model i co - authrored .\nthank you ,\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.909+0000", "entityId": 7433, "properties": {"text": "Subject: re : bandwidth + +\nstinson ,\nlet ' s bring up these two ideas at the meeting with john bloomer\n( to discuss the other product ideas ) .\nvince\nsteven leppard\n05 / 11 / 2000 08 : 38 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : bandwidth + +\nvince\nif it ' s new ebs products you ' re after , how about a real - time bandwidth swing\ncontract with automatic exercise ? the customer pays for the minimum\n( baseload ) bandwidth they need for their ( say ) videoconference , with a\npremium on top that automatically buys them extra bandwidth as it becomes\navailable from the system . they are guaranteed a minimum quality they can\nlive with , and ( more than likely ) they get improved quality much of the time\nfor a bargain price .\nwe get to charge for the use of bandwidth that would otherwise be idle .\nsteve\nvince j kaminski\n05 / 11 / 2000 02 : 09 pm\nto : steven leppard / lon / ect @ ect\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : bandwidth + +\nsteve ,\ni think personally it ' s a great idea , though my son , who studies\ncomputer science , poured a bucket of icy water on me . computers\nare becoming very cheap and most companies have already a lot of\nspare capacity on their systems .\nbut we can always try . we shall take this idea , to the person in ebs\nresponsible for the\nnew products and ask him to talk directly to you to discuss the details .\nebs is dying to come up with some new products .\nvince\nsteven leppard\n05 / 11 / 2000 03 : 56 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : bandwidth + +\nvince , stinson\nhave any investigations been made of the issue of trading ( spare ) processing\npower ? such a proposal would have natural synergies with the bandwidth\nbusiness , since the jobs to be processed would need to be piped around , as\nwould their results .\nobvious technical and legal problems are :\n1 . standardisation . ( java ? )\n2 . security and confidentiality .\njust a thought that ' s been buzzing around my head for a while .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.914+0000", "entityId": 7434, "properties": {"text": "Subject: conference\nsteve ,\nthe slides are ok . how are the negotiations with risk proceeding ?\nthey had recently many changes ( firing people ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.919+0000", "entityId": 7435, "properties": {"text": "Subject: steve ' s trip to houston\ndale , richard ,\ni am ready to cover the cost of steve ' s trip to houston ( one month in the\nsummer ) .\ni think very highly of steve and think about coaching him a bit to expand his\nhorizons . i see him as a very valuable asset of enron and a great leader\nin not too distant future . he needs exposure to more diverse business\nproblems and areas of research . i think it will be in the best interest of\nthe company\nto devote some resources to foster his development .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.923+0000", "entityId": 7436, "properties": {"text": "Subject: home page - new - risk solutions ( http : / / www . marshweb . com / home / ho\nmepg . nsf / alldo\n>\ndear vincent ,\nhope all is well across the atlantic . you may have seen this already but\nthought i would pass it on just in case . also socgen just pulled off a\nweather deal for a japanease company looking to protect against wind damage\non their flower crop .\nweather is definatly picking up on this side too with more interest every\nday .\nhope all is well ,\ndamian goodburn\noffice - 44 20 7847 1829\nmobile - 07971 825 309\n- home page - new - risk solutions . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.927+0000", "entityId": 7437, "properties": {"text": "Subject: re : credit . com cv ' s\nshirley ,\nhow are we doing on bringibg these people to houston for an interview ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 11 / 2000\n08 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n05 / 10 / 2000 04 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : credit . com cv ' s\nvince thanks for helping out . . . . . we really need more dedicated assistance .\nzak is probably more pure research and his son phil would possibly be on the\ndesk . . . . . let ' s discuss after you have met them . .\nvince j kaminski\n05 / 08 / 2000 10 : 46 pm\nto : rosalinda resendez / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , bryan\nseyfried / lon / ect @ ect\nsubject : re : credit . com cv ' s\nrosie ,\nwe are making arrangements to bring them to houston for an\ninterview .\nvince\nrosalinda resendez\n05 / 08 / 2000 11 : 10 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : credit . com cv ' s\nvince ,\ni ' ve been asked to forward these resumes to you .\nrosie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rosalinda resendez / hou / ect on 05 / 08 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlouise\nbratby\n05 / 08 / 2000 10 : 11 am\nto : rosalinda resendez / hou / ect @ ect\ncc :\nsubject : credit . com cv ' s\nrosalinda\ni work with melanie doyle in london hr . i have two candidates who i ' m trying\nto arrange ( for bryan seyfried ) to come in and see vince kaminski however i ' m\nfinding it difficult to co - ordinate from this end . would it be possible for\nyou to forward these cv ' s on to vince ' s assistant as i ' m not sure who the\ncorrect person is .\nthanks for your help and if you need more details my number is 44 20 7783\n6945 .\nregards\nlouise", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.932+0000", "entityId": 7438, "properties": {"text": "Subject: re : summer visits\nsteve ,\ni can pick up the cost of your trip from the research group budget .\nthe more i think about it , the more i am convinced it would be difficult\nto justify 2 trips per person . i think that we should go for one contiguous\nstay per person and make a good\neffort to make these trips productive .\nvince\nsteven leppard\n05 / 11 / 2000 03 : 41 am\nto : vince j kaminski / hou / ect @ ect\ncc : dale surbey / lon / ect @ ect\nsubject : summer visits\nvince\nthanks for offering to look my presentation over . the deadline for\nsubmission has been extended until tomorrow ( friday ) , so there ' s less of a\nhurry .\nas regard our summer visits , we ' ll need to speak to dale over the budget .\npersonal commitments mean it ' s difficult for me to take two whole months to\nvisit , so if the cost is prohibitive i may need to make just one shorter\nvisit . i ' d obviously like to spend longer , and two visits seems to be the\nonly way i can do it . i believe the situation is similar for kirstee .\ni ' ve persuaded richard to pay for matt ' s visit in its entirety , and i ' ve no\ndoubt that rac / credit trading will pick up the bills for ben and kirstee .\nit ' s difficult to think who ' d be the natural group to pay for me . i honestly\nthink i ' ll have difficulty persuading , e . g . richard , that it ' s worth his\nwhile to pay for my visit . i get the impression he thinks i ' m doing ok\nwithout the need to go to houston for further training .\ni ' m interviewing a candidate for bjorn ' s model review role during today ' s\nvideoconference , so we ' ll need to speak beforehand or perhaps friday .\nall the best ,\nsteve\nvince j kaminski\n05 / 10 / 2000 01 : 54 pm\nto : steven leppard / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect\nsubject : conference\nsteve ,\ni am tied up at the power 2000 conference .\ni shall get back to you with my comments on thursday morning .\ni also want to talk to you tomorrow about finalizing the dates of the summer\nrotations . we are talking to hr here about apartments , car rentals ,\nand other arrangements for the london team for the summer . i promised\nto give them the names and dates by the end of the week .\nsorry for the delay in sending you my comments .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.936+0000", "entityId": 7439, "properties": {"text": "Subject: re : yvan ' s application\nthanks for your help , vince .\nmolly\nvince j kaminski\n05 / 11 / 2000 08 : 29 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : yvan ' s application\nmolly ,\ni am enclosing my recommendation letter for yvan chaxel .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.942+0000", "entityId": 7440, "properties": {"text": "Subject: interview schedule for sanjeev khanna\nhello all :\nsanjeev khanna spoke with vince at the \" power 2000 \" conference and vince\nhas invited him to come in for an informal interview . he will be in the\noffice friday\nafternoon , may 12 th . with the exception of vince , each of you might spend\nat least 15 min with the individual . all interviews will be in ebl 938\nthe schedule is below and his resume is attached .\nvince 1 : 00 pm ( 5 min )\nvasant 1 : 15 pm\namitava 1 : 30 pm\nstinson 1 : 45 pm\ntanya 2 : 00 pm\nzimin 2 : 15 pm\npaulo 2 : 30 pm\nkrishna 2 : 45 pm\ngrant 3 : 00 pm\npg & e energy trading and any other company referenced herein which uses the\npg & e name or logo are not the same company as pacific gas and electric\ncompany , the california utility . these companies are not regulated by the\ncalifornia public utilities commission , and customers do not have to buy\nproducts from these companies in order to continue to receive quality\nregulated services from the utility .\n- . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.947+0000", "entityId": 7441, "properties": {"text": "Subject: summer at enron\nhi vince : if you or your human resources department tries to reach me ,\nplease call me at new home phone ( 713 ) 647 - 7161 , or email me at\nekao @ uh . edu , or eckao @ aol . com\nmonday , 5 / 15 will be my moving day . otherwise i can be reached at my home\nphone . regards , ed", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.955+0000", "entityId": 7442, "properties": {"text": "Subject: yvan ' s application\nmolly ,\ni am enclosing my recommendation letter for yvan chaxel .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.962+0000", "entityId": 7443, "properties": {"text": "Subject: independent variables for ene regressions\nbrad ,\nas we discussed , it ' s very difficult to find drivers of the ene stock ' s\nbehaviours . we investigated about 30 comparable stocks , 10 capital market\nindices , and three energy commodity indices . regular regressions as well as\nregressions with different legs and leads were performed . some variables\nshow significant correlated with ene stock during particular time periods ,\nbut most of those correlation disappears when we tested them over different\nor longer time periods .\nonly two variables , s & p utility index ( spxu ) and dow jones utility\nindex ( util ) , show stable and significant relationship with ene stock ( a\nsummary of these relationship can be found in the attached file\n\" outputsummary \" ) . but as you can see , the r 2 are below 30 % . also , the ? durbin - watson statistics tell us to be careful about autocorrelation . ? basically , the regression analysis so far confirms our original opinion - - ? it ' s hard , if not impossible , to find out any real driver of the ene stock . ? after enron added new core business several month ago , the stock behaved more ? or less like a tele _ comm stock , which suggests that enron stock has entered ? into a new phase . to capture , at least trying to capture , its ? characteristics in the new phase , we need a lit bit more time to cumulate the ? market date . ? ? let me know if you need me investigate more variables or you come up with ? some new thoughts . ? ? ? ? vincent ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.968+0000", "entityId": 7444, "properties": {"text": "Subject: mr . big shot !\nvince -\ni couldn ' t have been more pleased than when i saw your name on the managing\ndirector promotion list last january - who says nice guys finish last !\ni ' ve had the announcement in my \" to do \" folder all this time , waiting for me\nto catch up enough to send you this message , but i guess you ' re no stranger\nto that scenario . . . .\nnothing stochastic about it , you ' re simply the best !\nbetty : )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.972+0000", "entityId": 7445, "properties": {"text": "Subject: re : brad romine\nthat is fine . i look forward to visiting with him .\nceleste\nvince j kaminski\n05 / 12 / 2000 08 : 56 am\nto : celeste roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : brad romine\nceleste ,\nas you may know , brad romine ' s dot . com venture fell apart .\nthe offer from enron looks much better now . i have arranged for him\na number of different interviews ( including one with you ) . i think we should\nnot be too\npunitive and give him the 2 nd chance . i am setting up for him interviews with\nrac ,\nebs and greg whalley and he should be able to negotiate a good first rotation .\nplease , give me a call if you have any other question .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.976+0000", "entityId": 7446, "properties": {"text": "Subject: recommendation for john gordon\ndear vince ,\ni am writing to bring to your attention a gsia student , john gordon , who is\ncurrently being considered for enron ' s associates program . my understanding\nis that mark courtney and andrew miles at enron are championing john as a\nlate addition to the program .\nwhile i know enron doesn ' t routinely recruit at gsia , john would be an ideal\ncandidate if you are willing to make an exception . he is a terrific finance\nstudent with a strong transcript ; including an a + in my options class . since\njohn has an engineering / energy background , he asked early on for additional\nbackground reading about finance and energy . john is personable and\noutgoing . normally the job market for someone of john ' s caliber would have\nalready cleared , but i have been told that there are dual career issues at\nplay here .\ni would be very appreciative if you would take a look at john . a copy of\nhis resume is attached to this email .\nbest regards ,\nduane\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 @ andrew . cmu . edu\n- john gordon ' s resume", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.981+0000", "entityId": 7447, "properties": {"text": "Subject: brad romine\ngreg ,\nas you may know , brad romine ' s dot . com venture fell apart .\nthe offer from enron looks much better now . i have arranged for him\na number of different interviews ( including one with you ) . i think we should\nnot be too\npunitive and give him the 2 nd chance . i am also setting up for him interviews\nwith rac\nand ebs and he should be able to negotiate a good first rotation .\nplease , give me a call if you have any other question .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.985+0000", "entityId": 7448, "properties": {"text": "Subject: re : visit to enron\nnick ,\nthe airport is about 30 minutes by cab from the office ( 1400 smith ) .\nthe best hotel is either hyatt regency downtown or doubletree\ndowntown ( it is important to emphasize downtown when making\nreservations ) . the hotels are within a walking distance\nfrom the enron building .\nwe can make reservations for dinner around 6 : 30 - 7 : 00\nin a resturant within 10 minutes by car from the hotel .\nby the way , we shall be very glad to reimburse you for the trip related\nexpenses .\nvince\nnick bambos on 05 / 11 / 2000 05 : 31 : 53 pm\nto : vince . j . kaminski @ enron . com\ncc : stinson . gibner @ enron . com\nsubject : re : visit to enron\nvince ,\nyes , that would be ideal . but let me call first my travel agent to\nsee if there is a flight that would satisfy all the other\nconstraints . what time should i be at enron on thursday , and how far is\nthe airport from your offices ?\nthanks ,\nnick\nvince . j . kaminski @ enron . com wrote :\n>\n> nick ,\n>\n> can you come to houston thursday night and meet me , stinson and\n> kevin hannon ( one of top 3 executives at enron broadband services )\n> for dinner ?\n>\n> vince\n>\n> nick bambos on 05 / 10 / 2000 10 : 49 : 46 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc : stinson . gibner @ enron . com\n> subject : re : visit to enron\n>\n> vince ,\n>\n> many thanks for arranging that . yes , friday 05 / 26 / 00 is good .\n> i ' m blocking off in my calendar may 26 for the visit .\n>\n> again , many thanks . i look forward to seeing you and stinson\n> in two weeks .\n>\n> nick\n>\n> vince . j . kaminski @ enron . com wrote :\n> >\n> > nick ,\n> >\n> > thanks for your message . the best date for a visit to enron\n> > would be friday , may the 26 th . please , let me know if this date would\n> work\n> > for you .\n> >\n> > vince\n> >\n> > nick bambos on 05 / 01 / 2000 04 : 26 : 30 am\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : visit to enron\n> >\n> > vince ,\n> >\n> > how are you ? hope all is well .\n> >\n> > is there any chance we can schedule my visit to enron on friday , may 19 ,\n> > or friday , may 26 ?\n> >\n> > by the end of april i was able to attract a top new student to work on\n> the\n> > project .\n> > the other one for the coming year will be giuseppe . by spending the\n> summer\n> > at enron , he will be in a position to bring the new one up to speed and\n> > create an intellectual team here at stanford to look at these problems .\n> >\n> > i must move ahead soon to put the project in place and get the work\n> going .\n> >\n> > talk to you soon ,\n> >\n> > nick\n> >\n> > vince . j . kaminski @ enron . com wrote :\n> > >\n> > > nick ,\n> > >\n> > > we can close the loop on our commitment to support the research\n> projects\n> > > before your visit to enron .\n> > >\n> > > my assistant , shirley crenshaw , will call you to set up a conference\n> > call\n> > > with me , stinson gibner ,\n> > > and tom gros from enron broadband services to discuss all the isssues .\n> > > friday this week would work for\n> > > both tom and me . i think we need about 15 minutes .\n> > >\n> > > vince\n> > >\n> > > p . s . shirley , nick ' s phone number is 650 796 8163 ( cell ) , 650 - 725 - 5525\n> > > ( office ) .\n> > >\n> > > nick bambos on 03 / 12 / 2000 05 : 32 : 35 pm\n> > >\n> > > to : vince . j . kaminski @ enron . com , bambos @ stanford . stanford . edu\n> > > cc :\n> > > subject : visit to enron\n> > >\n> > > hello vince ,\n> > >\n> > > it was nice seeing you at stanford and many thanks for the lunch\n> > > we had together . i really enjoyed our discussions , both at the\n> > > technical level and otherwise .\n> > >\n> > > i promised to send you an e - mail regarding possible dates for\n> > > a visit to enron . i delayed it for a week till my schedule was\n> > > clearer . let ' s see if we can get a match with your schedule -\n> > > mine is rather terrible :\n> > >\n> > > friday , 21 st of april looks good . but april 23 rd is easter\n> > > sunday , so that may make it difficult for some people at enron\n> > > to be around . let me know if that is the case . i am willing to\n> > > visit then , because the week after that i am scheduled to be in\n> > > japan and in the previous weeks i am all committed on fridays .\n> > >\n> > > friday , 19 th of may is the next possibility , but this probably\n> > > is too far out . the main problem is that i am operating within\n> > > a window of opportunity for attracting top students for this\n> > > research . this window closes by the end of april , and it would be\n> > > important for the student support funds to be in place then , so\n> > > that i can make hard commitments to students and attract top\n> > > talent . i am already reviewing files of students who have\n> > > approached me for phd advising , and i am in a mode of doing \" soft\n> > > commitments to star - level students \" to get this research and its\n> > > potential on their radar screen . top students are highly sought\n> > > after by advisors and i want to be an early player in this\n> > > competition .\n> > >\n> > > does my visit to enron have to happen before we can set up the\n> > > project and student support at stanford ? if so , doing it before the\n> > > end of april is important for getting top people . if the visit can\n> > > happen after we get the ball rolling , then we can schedule it in may .\n> > > i assume there will be multiple visits both ways when the project gets\n> > > going . please let me know what you think .\n> > >\n> > > best regards ,\n> > >\n> > > nick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.990+0000", "entityId": 7449, "properties": {"text": "Subject: enron mid - year 2000 performance management process\nenron ' s mid - year 2000 performance management process has begun . during this\nprocess , you will be required to select suggested reviewers who can provide\nperformance related feedback on you and you may also be requested to provide\nfeedback on fellow employees . you will need to do this by accessing the\nperformance management system ( pep ) at http : / / pep . enron . com .\nany questions should be directed to the pep help desk at the following\nnumbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nto log on to pep , enter your user id and password provided below .\nonce you have logged on , you will be immediately prompted to change to a\nsecure password .\nyour user id & password are :\nuser id : wkamins 2910\npassword : welcome", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:39.996+0000", "entityId": 7450, "properties": {"text": "Subject: greg , fyi - jeff asked me to forward this to you for your review . srs\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sherri sera / corp / enron on 05 / 15 / 2000\n04 : 25 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" joseph a . cherian \" on 05 / 09 / 2000 08 : 10 : 19 am\nto : \" jeffrey k . skilling \"\ncc : vince j kaminski , \" robert a . jarrow \"\n, \" robert c . merton \"\nsubject :\nmr . jeffrey k . skilling\npresident and c . o . o . ,\nenron corp .\ndear jeff ,\nthis email is from robert jarrow ( cornell ) and myself ( joe cherian ) . i hope\nyou recall meeting / lunching with bob jarrow & me when you keynoted at my\n1999 math finance day conference here at boston university . i wanted to\nintroduce you to skg inc . , a startup that is focused on providing an\ninnovative service to the electronic trading community . messers kuppuswamy\nseshadhri , sriketan mahanti , and gaurav mallik are the principal founders\nof skg , inc . bob jarrow and i represent the company ' s scientific advisory\nboard . nobel laureate robert merton , who also sat on our table during your\nkeynote address , very kindly serves as an ad hoc senior advisor to skg and\nhas been an invaluable resource to skg , including putting us in touch with\njp morgan . coincidentally , the c . o . o . of jp morgan capital corp . ed\ncolloton , in an april 7 meeting told us he would introduce us to the c . f . o .\nof enron online , whom he knows and at which he felt skg would have huge\nvalue - adding opportunities . however , given ed ' s busy travel schedule , i\ndon ' t believe he has been able to do that yet . hence this joint decision by\nbob jarrow and myself to send you this email .\nskg ' s solution is to provide dynamic pricing and value maximization in\nelectronic trading of securities / commodities on ecns and atss ( alternative\ntrading systems ) . it achieves this through a process of \" strategic\nnegotiation \" using automated agents ( intelligent software manifestations ) .\nour system should not be viewed as an ecn , but rather as an enhancement to\nany extant trading system , be it an ecn , ats , clob , nasdaq , etc . our\ninitial system design has been conducted for financial instruments trading ,\ne . g . bonds / equities , but our strategy is as much applicable to energy / power\ninstruments trading , high speed communications bandwidth trading , and other\nweb - based commodities trading , which we believe is of interest to enron\nonline .\nskg is superior to existing solutions in the following way :\n1 ) it considers multiple attributes , e . g . , price , time , volatility ,\nbandwidth . ( in high speed communication bandwidth scenarios , for example ,\nthe dimensions could be price , bandwidth size , time for which bandwidth\navailable , continguity of the allocation , and such . )\n2 ) it involves dynamic matching as opposed to \" static \" matching .\n3 ) it is multi - lateral .\n4 ) it adapts itself dynamically to changing market conditions .\n5 ) it allows traders to make important trade - offs , as they do in\ntraditional markets .\ncurrently , skg is involved in discussions with the heads of trading at\nfidelity , putnam investments , lehman bros . , kpmg , meridien research ,\nsalomon smith barney , jp morgan , state street , banc of america , mckinsey ,\ncitizens power , and a host of other folks .\nwe think we have a value - adding service to provide to enron online or any\nother enron subsidiary that the skg offering matches and that you deem fit .\nskg ' s founders and i will be very happy to provide you or your\nrepresentative ( s ) with more details , including a demo of the prototype , in\na meeting . we are therefore hopeful that you will be able to arrange\nsomething appropriate .\nthanks very much , jeff ! we look forward to hearing from you .\nwith warm regards ,\njoseph cherian and robert jarrow\ncc : professor robert c . merton\njoseph a . cherian\nassociate professor of finance\nboston university school of management\n595 commonwealth avenue , room 522 h\nboston , ma 02215\ntel : 617 - 353 - 2679 ( o )\n617 - 353 - 6667 ( fax )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.000+0000", "entityId": 7451, "properties": {"text": "Subject: re : dash request\ndavid ,\nthanks . i cc you on my message to john sherriff .\nplease , let me know what you think about my comments .\nvince\ndavid gorte\n05 / 15 / 2000 10 : 58 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : dash request\nvince ,\ni ' ll send you the dash that was done previously for the used lng tanker , the\nmystic lady ( now renamed as the hoegh galleon ) . the analysis used in this\ntransaction was not detailed due the short time - frame we had to analyze this\ntransaction as well as to enron ' s right to terminate this charter for\nconvenience .\nwe are presently working on the analysis for a second , new - build lng tanker .\nwhen this analysis has progressed far enough that we have a draft dash , i\nwill forward it to you ( this may be later this week ) .\nregards ,\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.005+0000", "entityId": 7452, "properties": {"text": "Subject: re : lng may 19 decision\njohn ,\nthis is the update on what i have done for the lng transactions .\n1 . i was not involved in the lng ship project . i shall read the dash\nand give you my comments . without looking at the details , i think that the\ndecision\nto charter a tanker removes one significant risk we have at the elba island\nproject ( please , see point 2 ) .\n2 . elba island . i am working with doug rotenberbg , brad hitch , scott earnest\n( sally beck ' s organization ) and rac to set up the book for the elba island\ntransaction . the next step\nwill be to expand the book to capture all the enron ' s lng - related positions\nin one place and\nto look for natural risk offsets and possible hedges . a working group is\nmeeting to close a few\nremaining gaps tomorrow ( tuesday ) at 8 : 30 .\na few comments on the book design and my view of the project :\na . the current thinking is that lng will be sourced for the elba island\nfacility\nby buying marginal cargos on the fob basis . marginal cargos will represent\nsupply from excess capacity that has not been committed under long - term\ncontracts or became available due to some short - term frictions .\nthe fob cargos are typically selling at a significant discount to the\nlong - term\ncontract prices . the economics of the deal , as represented by the book we are\nsetting up , will reflect the assumption that not only we can locate marginal\ncargos\nbut that we shall be able to do it on a regular basis , arranging shipping and\ncoordinating\nthe facility schedule and natural gas transactions in the us . in other words ,\nwe have a significant logistical and operational risk in this transaction .\nb . the transaction will cover the period of 17 years ( with an extension\noption of\n5 years ) . even if we can lock - in the lng volumes over this time period , we\nhave no ability to lock - in the other side of the spread ( us gas prices ) for\nsuch a long tenor . this is\nessentially a tolling transaction with exposure to the lng - nat gas spread\nand\ni would not recommend locking - in only one leg of the spread .\none solution would be to cover , let ' s say , 50 % of he lng volumes for the\nfirst\n5 years and lock - in the nat gas side on the us market side .\nc . the book we are setting up will be based on many managerial assumptions\nregarding sources of lng , shipping rates , schedules , etc . i would set up a\nbig prudence reserve\nin case we mark it to market .\nd . my group will work on valuation of some options we have in the elba island\ndeal\n( that are good for enron ) and on the hedging strategy for the lng positions .\nlong - term lng contracts are typically based on the japanese crude cocktail\nthat\ncorrelates very well with brent .\nvince\njohn sherriff\n05 / 14 / 2000 01 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc : lauren urquhart / lon / ect @ ect\nsubject : lng may 19 decision\nvince\ni haven ' t spoken to you for awhile but hope the world is treating you well .\nanyway with greg moving to his\nnew role i have ( i hope only temporarily ) staff trading oversight for the\neastern hemishere plus lng .\ni understand that your group is taking a first cut at developing curves for\nlng and lng ship values . i also understand\nthat another lng ship decision is on the dockets for may 19 ( not very far\naway ) . anway i understand this\nis a big decision but i still have gotten very little info yet . can you\nplease let me know where you stand now ?\ni will ask my assistant lauren to set up a time that i can speak with you in\nthe next couple of days and if you\nhave anything for me to review before then she can get it faxed to me as well .\nlook forward to connecting with you vince .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.010+0000", "entityId": 7453, "properties": {"text": "Subject: energy in europe congress 2000\n8 th floor , 29 bressenden place london swle 5 dr tel : + 44 171 915 5100 fax :\n+ 44 171 915 5101 conference bookings : + 44 171 915 5103\ndate : may 15 , 2000\nfrom : tanuja tulsiani phone : 44 171 915 5173\nfax : 44 171 915 5101\nre : energy in europe congress 2000 , berlin\nurgent - urgent - urgent - urgent - urgent - urgent - urgent\nmessage\ndear energy in europe speaker\nas the conference in berlin draw closer , i would like to remind you that we\nurgently need to receive a copy of your presentation materials by friday ,\n26 th may 2000 .\nif you could please send me a hard copy of your talk text or copies of any\nslides you plan to use , as soon as possible i would be most grateful . i am\nsure you are aware of the importance of documentation , even if you plan to\nspeak off the cuff please try and supply at least an outline of your proposed\nspeech . if this material doesn ' t reach me by 26 th may i am afraid they will\nnot form part of the delegate packs . you can send a hard copy either by post\nor fax to the above address and details or you can e - mail it to me at the\nfollowing address : ttulsi @ icbi . co . uk .\nif you have already sent copies of your presentation then please ignore this\nfax . should you have any queries , please do not hesitate to contact me , and i\nlook forward to seeing you in berlin shortly .\nkind regards\ntanuja tulsiani\ntanuja tulsiani\nlogistics manager\n!\n!\n!\n!", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.015+0000", "entityId": 7454, "properties": {"text": "Subject: re : lng may 19 decision\nvince - thanks for the update . what i am not sure of is what if any decision\nhas to be\nmade on may 19 . it seems to me that the mystic lady and elba island deals\nhave already\nbeen approved and executed - but it is quite likely i am missing a detail or\ntwo .\njohn\nvince j kaminski\n15 / 05 / 2000 17 : 14\nto : john sherriff / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , david gorte / hou / ect @ ect , rick\nbuy / hou / ect @ ect , ted murphy / hou / ect @ ect\nsubject : re : lng may 19 decision\njohn ,\nthis is the update on what i have done for the lng transactions .\n1 . i was not involved in the lng ship project . i shall read the dash\nand give you my comments . without looking at the details , i think that the\ndecision\nto charter a tanker removes one significant risk we have at the elba island\nproject ( please , see point 2 ) .\n2 . elba island . i am working with doug rotenberbg , brad hitch , scott earnest\n( sally beck ' s organization ) and rac to set up the book for the elba island\ntransaction . the next step\nwill be to expand the book to capture all the enron ' s lng - related positions\nin one place and\nto look for natural risk offsets and possible hedges . a working group is\nmeeting to close a few\nremaining gaps tomorrow ( tuesday ) at 8 : 30 .\na few comments on the book design and my view of the project :\na . the current thinking is that lng will be sourced for the elba island\nfacility\nby buying marginal cargos on the fob basis . marginal cargos will represent\nsupply from excess capacity that has not been committed under long - term\ncontracts or became available due to some short - term frictions .\nthe fob cargos are typically selling at a significant discount to the\nlong - term\ncontract prices . the economics of the deal , as represented by the book we are\nsetting up , will reflect the assumption that not only we can locate marginal\ncargos\nbut that we shall be able to do it on a regular basis , arranging shipping and\ncoordinating\nthe facility schedule and natural gas transactions in the us . in other words ,\nwe have a significant logistical and operational risk in this transaction .\nb . the transaction will cover the period of 17 years ( with an extension\noption of\n5 years ) . even if we can lock - in the lng volumes over this time period , we\nhave no ability to lock - in the other side of the spread ( us gas prices ) for\nsuch a long tenor . this is\nessentially a tolling transaction with exposure to the lng - nat gas spread\nand\ni would not recommend locking - in only one leg of the spread .\none solution would be to cover , let ' s say , 50 % of he lng volumes for the\nfirst\n5 years and lock - in the nat gas side on the us market side .\nc . the book we are setting up will be based on many managerial assumptions\nregarding sources of lng , shipping rates , schedules , etc . i would set up a\nbig prudence reserve\nin case we mark it to market .\nd . my group will work on valuation of some options we have in the elba island\ndeal\n( that are good for enron ) and on the hedging strategy for the lng positions .\nlong - term lng contracts are typically based on the japanese crude cocktail\nthat\ncorrelates very well with brent .\nvince\njohn sherriff\n05 / 14 / 2000 01 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc : lauren urquhart / lon / ect @ ect\nsubject : lng may 19 decision\nvince\ni haven ' t spoken to you for awhile but hope the world is treating you well .\nanyway with greg moving to his\nnew role i have ( i hope only temporarily ) staff trading oversight for the\neastern hemishere plus lng .\ni understand that your group is taking a first cut at developing curves for\nlng and lng ship values . i also understand\nthat another lng ship decision is on the dockets for may 19 ( not very far\naway ) . anway i understand this\nis a big decision but i still have gotten very little info yet . can you\nplease let me know where you stand now ?\ni will ask my assistant lauren to set up a time that i can speak with you in\nthe next couple of days and if you\nhave anything for me to review before then she can get it faxed to me as well .\nlook forward to connecting with you vince .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.020+0000", "entityId": 7455, "properties": {"text": "Subject: re : 1 . 00 pm tomorrow ?\nlauren ,\n1 : 00 p . m . is fine . 713 853 3848\nvince\nlauren urquhart\n05 / 15 / 2000 12 : 08 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : 1 . 00 pm tomorrow ?\nhi vince\ni have just spoken to john .\nhe ' s requested we move your phone call to 1 . 00 pm houston time - 7 . 00 pm uk\ntime .\ndoes this suit you ?\nlauren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.025+0000", "entityId": 7456, "properties": {"text": "Subject: re : recommendation for john gordon\nvince ,\nthanks for your quick action on this . i try to be selective about sending\nout recommendations proactively , but in john ' s case i am very confident that\nhe will add a lot of value to whoever hires him . on a different topic i was\npleased to see that you will also be on the eprm program again in the fall .\nduane\n- - on monday , may 15 , 2000 , 9 : 28 am - 0500 \" vince j kaminski \"\nwrote :\n>\n>\n> celeste ,\n>\n> i am forwarding you a letter from prof . duane seppi from carnegie mellon\n> university .\n> i have known duane for many years and i know that he does not make his\n> recommendations without very good reasons .\n>\n> i would recommend looking at john gordon as a very strong candidate :\n> i think he will make a terrific contribution to enron .\n>\n>\n> vince\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 15 / 2000\n09 : 25\n> am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> ds 64 @ maill . andrew . cmu . edu on 05 / 12 / 2000 01 : 30 : 14 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : recommendation for john gordon\n>\n>\n>\n> dear vince ,\n>\n> i am writing to bring to your attention a gsia student , john gordon , who\nis\n> currently being considered for enron ' s associates program . my\nunderstanding\n> is that mark courtney and andrew miles at enron are championing john as a\n> late addition to the program .\n>\n> while i know enron doesn ' t routinely recruit at gsia , john would be an\nideal\n> candidate if you are willing to make an exception . he is a terrific\nfinance\n> student with a strong transcript ; including an a + in my options class .\nsince\n> john has an engineering / energy background , he asked early on for\nadditional\n> background reading about finance and energy . john is personable and\n> outgoing . normally the job market for someone of john ' s caliber would\nhave\n> already cleared , but i have been told that there are dual career issues at\n> play here .\n>\n> i would be very appreciative if you would take a look at john . a copy of\n> his resume is attached to this email .\n>\n> best regards ,\n> duane\n>\n> * * * * * * * *\n> duane seppi\n>\n> graduate school of industrial administration\n> carnegie mellon university\n> pittsburgh pa 15213 - 3890\n>\n> tel . ( 412 ) 268 - 2298\n> fax ( 412 ) 268 - 8896\n>\n> email ds 64 @ andrew . cmu . edu\n>\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.029+0000", "entityId": 7457, "properties": {"text": "Subject: telephone interview with enron corp . research group\ngood morning todd :\ndavid hunker has suggested that you might be a good fit with the research\ngroup of enron corp . with this in mind , we would like to conduct and\ninformal\ntelephone interview with you at your convenience .\nif you could give me some times and dates during the week of may 22 nd ,\ni will coordinate the interview . please let me know the telephone number\nthat you may be reached at , also .\nthe interviewers would be :\nvince kaminski managing director and head of research\nstinson gibner vice president , research\nzimin lu director , research\nthanks .\nshirley crenshaw\nadminstrative coordinator\nresearch group\n713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.034+0000", "entityId": 7458, "properties": {"text": "Subject: churn list\nhere is the requested churn list .\nany questions please call kevin moore @ 34710\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.039+0000", "entityId": 7459, "properties": {"text": "Subject: meeting regarding \" gary hickerson trading \"\nhello all :\nvince would like to schedule a meeting on tuesday , may 23 at 3 : 00 pm\nin conference room ebl 938 . this will be to discuss the subject topic .\nplease let me know if you are available .\nthanks\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.045+0000", "entityId": 7460, "properties": {"text": "Subject: re : lng may 19 decision\njohn ,\nyes . i have additional info about this transaction .\nvince\njohn sherriff\n05 / 16 / 2000 10 : 47 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : lng may 19 decision\nthanks vince - i understand we are on at lpm your time today to review this .\njohn\nvince j kaminski\n16 / 05 / 2000 14 : 48\nto : john sherriff / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : lng may 19 decision\njohn ,\nsorry for the confusion .\nthis is a second tanker on which very few details\nare available . the lng group is working as we speak\nto provide some information for joe sutton before\nhis departure for paris this ( tuesday ) afternoon .\nthere is no dash on this 2 nd tanker yet . i asked dave gorte\non monday to send me one and was not told that\nhe can provide me with the mystic lady dash as the closest\nsubstitute .\nvince\njohn sherriff\n05 / 16 / 2000 12 : 20 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : lng may 19 decision\nvince - thanks for the update . what i am not sure of is what if any decision\nhas to be\nmade on may 19 . it seems to me that the mystic lady and elba island deals\nhave already\nbeen approved and executed - but it is quite likely i am missing a detail or\ntwo .\njohn\nvince j kaminski\n15 / 05 / 2000 17 : 14\nto : john sherriff / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , david gorte / hou / ect @ ect , rick\nbuy / hou / ect @ ect , ted murphy / hou / ect @ ect\nsubject : re : lng may 19 decision\njohn ,\nthis is the update on what i have done for the lng transactions .\n1 . i was not involved in the lng ship project . i shall read the dash\nand give you my comments . without looking at the details , i think that the\ndecision\nto charter a tanker removes one significant risk we have at the elba island\nproject ( please , see point 2 ) .\n2 . elba island . i am working with doug rotenberbg , brad hitch , scott earnest\n( sally beck ' s organization ) and rac to set up the book for the elba island\ntransaction . the next step\nwill be to expand the book to capture all the enron ' s lng - related positions\nin one place and\nto look for natural risk offsets and possible hedges . a working group is\nmeeting to close a few\nremaining gaps tomorrow ( tuesday ) at 8 : 30 .\na few comments on the book design and my view of the project :\na . the current thinking is that lng will be sourced for the elba island\nfacility\nby buying marginal cargos on the fob basis . marginal cargos will represent\nsupply from excess capacity that has not been committed under long - term\ncontracts or became available due to some short - term frictions .\nthe fob cargos are typically selling at a significant discount to the\nlong - term\ncontract prices . the economics of the deal , as represented by the book we are\nsetting up , will reflect the assumption that not only we can locate marginal\ncargos\nbut that we shall be able to do it on a regular basis , arranging shipping and\ncoordinating\nthe facility schedule and natural gas transactions in the us . in other words ,\nwe have a significant logistical and operational risk in this transaction .\nb . the transaction will cover the period of 17 years ( with an extension\noption of\n5 years ) . even if we can lock - in the lng volumes over this time period , we\nhave no ability to lock - in the other side of the spread ( us gas prices ) for\nsuch a long tenor . this is\nessentially a tolling transaction with exposure to the lng - nat gas spread\nand\ni would not recommend locking - in only one leg of the spread .\none solution would be to cover , let ' s say , 50 % of he lng volumes for the\nfirst\n5 years and lock - in the nat gas side on the us market side .\nc . the book we are setting up will be based on many managerial assumptions\nregarding sources of lng , shipping rates , schedules , etc . i would set up a\nbig prudence reserve\nin case we mark it to market .\nd . my group will work on valuation of some options we have in the elba island\ndeal\n( that are good for enron ) and on the hedging strategy for the lng positions .\nlong - term lng contracts are typically based on the japanese crude cocktail\nthat\ncorrelates very well with brent .\nvince\njohn sherriff\n05 / 14 / 2000 01 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc : lauren urquhart / lon / ect @ ect\nsubject : lng may 19 decision\nvince\ni haven ' t spoken to you for awhile but hope the world is treating you well .\nanyway with greg moving to his\nnew role i have ( i hope only temporarily ) staff trading oversight for the\neastern hemishere plus lng .\ni understand that your group is taking a first cut at developing curves for\nlng and lng ship values . i also understand\nthat another lng ship decision is on the dockets for may 19 ( not very far\naway ) . anway i understand this\nis a big decision but i still have gotten very little info yet . can you\nplease let me know where you stand now ?\ni will ask my assistant lauren to set up a time that i can speak with you in\nthe next couple of days and if you\nhave anything for me to review before then she can get it faxed to me as well .\nlook forward to connecting with you vince .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.051+0000", "entityId": 7461, "properties": {"text": "Subject: marketpoint business plan summary\ngreg ,\ne - commerce related proposal from dale nesbitt .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 16 / 2000\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dale nesbitt \" on 04 / 06 / 2000 01 : 47 : 15 am\nto :\ncc :\nsubject : marketpoint business plan summary\nvince :\nthanks very much for your interest in our marketpoint product , and thanks\nfor the hour you gave me this morning . as promised , i am enclosing our\nexecutive summary and first chapter from our business plan for you to take\nforward to your management as a prospective enron - marketpoint investment\ncollaboration . i want to reiterate that should enron elect to be the lead\ninvestor here , you will be exclusive in your industry if you want . if enron\nwants to be the lead and ensure the entire second round of resources we\nneed , we would not offer and investment opportunity to other trading\ncompanies , pipelines , or electrics until the third or subsequent rounds and\nthen only with your participation as a marketpoint board member . i am aware\nyou have coinvested with sap in the past and that you might want to coinvest\nwith them again . i presume you would not have a problem with\nnon - competitors such as epri , our management consulting service provider\npartner , or our vc partner ( but i would want guidance from you in this\narena ) . i think you would find our vc partner very suitable and very\nattractive . they have done several interesting energy and trading plays ,\nand they would provide good management skills i believe . i hope we can move\nforward together . i am looking forward to a positive response . thanks\nagain and best regards .\ndale nesbitt\nps : you might hear from drew ries of your investments group . i spoke with\nhim after speaking with you about many of the same issues .\n- longexecsum . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.060+0000", "entityId": 7462, "properties": {"text": "Subject: lng meeting\nbjorn :\nthe lng meeting will be held tomorrow the 17 th of may at 11 : 00 pm\nhouston time . the phone number for the conference room is :\n713 / 853 - 3135\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.066+0000", "entityId": 7463, "properties": {"text": "Subject: lng meeting\nhello all :\nthe lng meeting that was to be held this morning has been changed to\ntomorrow , wednesday , the 17 th at 11 : 00 am in ebl 938 .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.070+0000", "entityId": 7464, "properties": {"text": "Subject: re : operational risk\nmichael ,\nthe science of measuring operational risk is in its early stages of\ndevelopment .\nthere are really no cook - book solutions . one has to use creativity and a lot\nof common sense .\nvince\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : operational risk\nmr . kaminsky ,\nrecently , i read articles published by garp and monographs in a book\npublished by garp . although they are excellent sources of introduction to\noperational risk , none of them have any details on the \" how to . \"\nif you know of a good book or book ( s ) could you recommend one ?\nthank you .\nmichael kim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.074+0000", "entityId": 7465, "properties": {"text": "Subject: re : real options presentation\nthanks for the comments grant . the presentation is for a couple of external\nconferences that vince volunteered me for - vince has ok ' d the content , and\nstinson raised exactly the same issues as you . unfortunately i just don ' t\nseem to be getting any response from risk whatsoever on the publication of my\narticle , so these conferences will be the public debut for my real options\nnotation .\nof course the discounting / risk neutrality thing is where the real judgement\nsits . when questions arise i ' ll take the line that while research formulates\nthe models using appropriate derivatives / market based valuation methods , we\nwork with our rac group which considers the discounting to be associated with\nvarious risks , and chooses these rates appropriately . the notation makes\nclear which uncertainties we are exposed to at different stages of the deals ,\nwhich assists in choosing the rates .\nin practice i ' m not yet at the stage where originators are using my notation\nyet - another reason i can ' t say too much about its actual use at the\nconference . i ' m producing various tools for deterministic hydro\noptimization , gbm swing option valuation , and deterministic dp optimization\nfor genset dispatch which people want right now - i ' m working in the\nbackground on the kind of modelling my notation demands . people are getting\nto know me as a guy who can solve their immediate problems , and they ' ll be\nmore likely to listen when i start rolling out the \" proper \" options - based\nmodels . my notation is currently used only in the specs i ' m writing for the\ntools i ' m producing .\ni ' ll be turning dale ' s spreadsheet - based power plant spread model into an\namerican monte carlo tool , which will then be available for inclusion in\nother models . i think by the end of the summer the real options theoretical\nwork will start to bear fruit , one year after i initially proposed the\nnotation . with the quant it group i ' m co - creating in place , i may yet see\nthe automated diagramming / pricing tool made real .\nthanks also for the pointer to tom halliburton . the use of the lingo\nlp / integer package is something i ' ve been presented with for the teesside\nplant operation optimizer , rather than something i chose . the perm ( physical\nenergy risk mgt ) group just got a couple of analysts to hack it together\n( including natasha danilochkina ) , then asked me to tidy it up when it didn ' t\nwork . they are going to use their existing faulty model for now ( to meet\ntheir project deadlines ) , and i ' m sketching out a proper mathematical spec\nfor the problem .\ni ' ve persuaded ( ! ) them that this sort of business - critical system should be\ndeveloped properly by research , and they now seem happy to fall into line .\ntheir wilton plant optimizer was developed by one peter morawitz , the guy i\nhoped to recruit into research , and they obviously didn ' t realise he was\nbetter than average at quantitative modelling . anyway they now accept that\ndoing it properly will take months rather than weeks , and i ' ll have a freer\nhand in my choice of modelling tool - so a chat with tom would be extremely\nvaluable .\ncheers ,\nsteve\nenron capital is\nthis an internal enron or external presentation ? if external , i would say it\nis just at the limit before sliding into proprietary stuff . perhaps that ' s\nwhy you ' ve neatly almost entirely avoided questions about discounting and\nrisk - neutrality or lack of it ?\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.079+0000", "entityId": 7466, "properties": {"text": "Subject: re : lng may 19 decision\njohn ,\nsorry for the confusion .\nthis is a second tanker on which very few details\nare available . the lng group is working as we speak\nto provide some information for joe sutton before\nhis departure for paris this ( tuesday ) afternoon .\nthere is no dash on this 2 nd tanker yet . i asked dave gorte\non monday to send me one and was not told that\nhe can provide me with the mystic lady dash as the closest\nsubstitute .\nvince\njohn sherriff\n05 / 16 / 2000 12 : 20 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : lng may 19 decision\nvince - thanks for the update . what i am not sure of is what if any decision\nhas to be\nmade on may 19 . it seems to me that the mystic lady and elba island deals\nhave already\nbeen approved and executed - but it is quite likely i am missing a detail or\ntwo .\njohn\nvince j kaminski\n15 / 05 / 2000 17 : 14\nto : john sherriff / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , david gorte / hou / ect @ ect , rick\nbuy / hou / ect @ ect , ted murphy / hou / ect @ ect\nsubject : re : lng may 19 decision\njohn ,\nthis is the update on what i have done for the lng transactions .\n1 . i was not involved in the lng ship project . i shall read the dash\nand give you my comments . without looking at the details , i think that the\ndecision\nto charter a tanker removes one significant risk we have at the elba island\nproject ( please , see point 2 ) .\n2 . elba island . i am working with doug rotenberbg , brad hitch , scott earnest\n( sally beck ' s organization ) and rac to set up the book for the elba island\ntransaction . the next step\nwill be to expand the book to capture all the enron ' s lng - related positions\nin one place and\nto look for natural risk offsets and possible hedges . a working group is\nmeeting to close a few\nremaining gaps tomorrow ( tuesday ) at 8 : 30 .\na few comments on the book design and my view of the project :\na . the current thinking is that lng will be sourced for the elba island\nfacility\nby buying marginal cargos on the fob basis . marginal cargos will represent\nsupply from excess capacity that has not been committed under long - term\ncontracts or became available due to some short - term frictions .\nthe fob cargos are typically selling at a significant discount to the\nlong - term\ncontract prices . the economics of the deal , as represented by the book we are\nsetting up , will reflect the assumption that not only we can locate marginal\ncargos\nbut that we shall be able to do it on a regular basis , arranging shipping and\ncoordinating\nthe facility schedule and natural gas transactions in the us . in other words ,\nwe have a significant logistical and operational risk in this transaction .\nb . the transaction will cover the period of 17 years ( with an extension\noption of\n5 years ) . even if we can lock - in the lng volumes over this time period , we\nhave no ability to lock - in the other side of the spread ( us gas prices ) for\nsuch a long tenor . this is\nessentially a tolling transaction with exposure to the lng - nat gas spread\nand\ni would not recommend locking - in only one leg of the spread .\none solution would be to cover , let ' s say , 50 % of he lng volumes for the\nfirst\n5 years and lock - in the nat gas side on the us market side .\nc . the book we are setting up will be based on many managerial assumptions\nregarding sources of lng , shipping rates , schedules , etc . i would set up a\nbig prudence reserve\nin case we mark it to market .\nd . my group will work on valuation of some options we have in the elba island\ndeal\n( that are good for enron ) and on the hedging strategy for the lng positions .\nlong - term lng contracts are typically based on the japanese crude cocktail\nthat\ncorrelates very well with brent .\nvince\njohn sherriff\n05 / 14 / 2000 01 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc : lauren urquhart / lon / ect @ ect\nsubject : lng may 19 decision\nvince\ni haven ' t spoken to you for awhile but hope the world is treating you well .\nanyway with greg moving to his\nnew role i have ( i hope only temporarily ) staff trading oversight for the\neastern hemishere plus lng .\ni understand that your group is taking a first cut at developing curves for\nlng and lng ship values . i also understand\nthat another lng ship decision is on the dockets for may 19 ( not very far\naway ) . anway i understand this\nis a big decision but i still have gotten very little info yet . can you\nplease let me know where you stand now ?\ni will ask my assistant lauren to set up a time that i can speak with you in\nthe next couple of days and if you\nhave anything for me to review before then she can get it faxed to me as well .\nlook forward to connecting with you vince .\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.084+0000", "entityId": 7467, "properties": {"text": "Subject: exmar credit\njohn ,\nbill bradford is on vacation . i passed your question regarding exmar credit\nrating\nto debbie brackett .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.089+0000", "entityId": 7468, "properties": {"text": "Subject: s . tamarchenko\nteresa ,\nit ' s ok to hire s . tamarchenko as a summer temporary employee .\nwe need all the help we can get this summer .\ni assume it will be 40 hrs a week , as long as ut conforms with all the\nexternal\nand internal regulations .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.094+0000", "entityId": 7469, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n05 / 16 / 2000 09 : 14 am\nto : vince j kaminski / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect , william smith / corp / enron @ enron\nsubject : vacation\nvince ;\nif it is allright , i would like to take a day of vacation , friday , may 19 th .\nthanks .\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.099+0000", "entityId": 7470, "properties": {"text": "Subject: re : energy book and articles\nvince ,\nthat ' s good news . anything you need from me please feel free to ask - if we\ncan get the ball rolling soon we can time things well with the publication\nof the book ( my diary says that there are 2 weeks until the contract goes\nout on you and grant . . . ) .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : chris strickland\ncc : vince j kaminski ;\nsent : wednesday , may 17 , 2000 12 : 53 am\nsubject : re : energy book and articles\n>\n>\n> chris ,\n>\n> yes , i mentioned it to both the us - editor and robin .\n> they were very interested and i don ' t think there should be any problem\n> with this initiative .\n>\n> i shall follow up with another message to jane locke and robin lancaster .\n>\n> vince\n>\n>\n>\n>\n> \" chris strickland \" on 05 / 15 / 2000 06 : 00 : 00 pm\n>\n> please respond to \" chris strickland \"\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : energy book and articles\n>\n>\n> vince ,\n>\n> thanks , i would be very interested to have a look .\n>\n> my question was a bit vague - i meant to ask if you had spoken to the\neditor\n> about the series of articles ?\n>\n> best regards .\n>\n> chris .\n>\n>\n> - - - - - original message - - - - -\n> from : vince j kaminski\n> to : chris strickland\n> cc : vince j kaminski\n> sent : tuesday , may 16 , 2000 8 : 15 am\n> subject : re : energy book and articles\n>\n>\n> >\n> >\n> > chris ,\n> >\n> > yes , i was a keynote speaker . i shall send you my presentation .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" chris strickland \" on 05 / 15 / 2000 06 : 31 : 14 am\n> >\n> > please respond to \" chris strickland \"\n> >\n> > to : \" vincejkaminski \"\n> > cc :\n> > subject : energy book and articles\n> >\n> >\n> >\n> > dear vince\n> >\n> > thanks for your voice mail last week . did you get to talk to eprm in\n> houston\n> > last week ?\n> >\n> > best regards .\n> >\n> > chris .\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.104+0000", "entityId": 7471, "properties": {"text": "Subject: pjm adds ny prices to edata\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\npjm has launched a pilot version of edata which includes data from the\nnew york independent system operator . the beta - test period for the pilot is\nexpected to last approximately 90 days as pjm evaluates the success of using\ncross - iso data in edata . if the pilot proves successful , pjm may add data\nfrom\nother isos in the future .\nthis pilot version of edata is a result of the collaboration among the\nisos created by the memorandum of understanding signed last year . through the\niso mou process , stakeholders have asked the isos to improve seams issues ,\ncreate like user interfaces , and make it easier to do business between the\nisos .\nthe addition of other iso data to edata has several benefits to users\nincluding\nconsolidated information , ease of use , less technical support required , and\nimproved customer service . real - time prices , forecasted / actual loads , tie\nline\nschedules , and transmission limits are all possible types of information that\nmay be included in the future .\nedata was implemented in october 1998 . there are currently more that\n1700 registered users representing over 200 companies . users include\nmarketers ,\nutilities , control areas , state and federal regulators , educational\norganizations , financial institutions and others . the tool continues to\nattract\n30 to 40 new registered users each week . normally , 100 - 300 users are\nsimultaneously logged onto the system . to become an edata user , submit new\nuser\ninformation from the edata log in screen from the pjm web site at www . pjm . com .\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.109+0000", "entityId": 7472, "properties": {"text": "Subject: two - settlement xml / csv conversion utilities\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nthe two - settlement xml / csv conversion utilities are now available for\ndownload\nfrom the pjm web site . the zip file containing the required programs and\nexamples can be downloaded from\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.114+0000", "entityId": 7473, "properties": {"text": "Subject: vince and stinson ,\ni got this resume from my friend ming sit who has a ph . d . from stanford .\nplease take a look at his resume to see if we can use him . i classify him as\na structurer , but things may change after all these years .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 05 / 17 / 2000 04 : 08 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sit , ming \" on 05 / 17 / 2000 02 : 41 : 50 pm\nto : \" zimin lu ( e - mail ) \"\ncc :\nsubject :\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.118+0000", "entityId": 7474, "properties": {"text": "Subject: thank you for power 2000\nhi vince\njust wanted to thank you for your participation at power 2000 last week and\nfor contributing to the success of the conference . the feedback we received\nwas absolutely glowing and we were delighted with the smooth - running of the\nevent . thank you for being a key part of that . as always , your presentations\nwent down extremely well and your presence at our events makes a big\ndifference , as people are alwyas keen to hear both form you personally and\nfrom enron as a company .\nas i mentioned to you , i have recently been given the responsibility of\ncreating and developing a new conference stream in the financial technology\nsector under the waters brand , so i would like to take this opportunity to\nsay how much i have enjoyed working with you in the past couple of years and\nto wish you the best of luck in the future . please stay in touch and if you\ncome to new york , please let me know so i can take you out for a drink !\nbest regards and thank you again both for your patience in helping me\nresearch topics and for being so willing to participate at our events .\nemma\n?\n?\nemma wolfin\nmanager , waters conferences\ntel 212 925 1864 ext 151", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.123+0000", "entityId": 7475, "properties": {"text": "Subject: pricing default and our may 22 conference call\n>\ndear vince :\ni spoke with ms crenshaw yesterday afternoon about a conference call about\ndeveloping internet course material . if you have already discussed this\nwith your colleagues , it might be helpful if you could very briefly outline\nthe questions and issues they might raise in the conference call so that i\ncan be a bit better prepared .\nms crenshaw also mentioned that you never received my earlier email\nregarding the credit spread model i developed with stathis and sergey . my\nearlier email follows , and the nondisclosure agreement is attached .\ni look forward to talking with you next week .\nregards ,\nsheridan\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu\n> - - - - - original message - - - - -\n> from : sheridan titman\n> sent : friday , may 05 , 2000 12 : 48 pm\n> to : ' vince . j . kaminski @ enron . com '\n> cc : stathis tompaidis\n> subject : pricing default\n>\n>\n> dear vince :\n>\n> i really enjoyed meeting with you yesterday and learned a lot from our\n> discussions .\n>\n> the ut office of technology licensing and intellectual property has given\n> us the attached form which they would like you to sign before we send you\n> a copy of our paper on pricing default . please let me know if this is\n> agreeable to you .\n>\n> i hope we have the opportunity to work with you in the future , either on\n> the debt pricing models or on the other issues we discussed .\n>\n> i look forward to hearing from you .\n>\n> regards ,\n>\n> sheridan\n>\n> >\n> sheridan titman\n> department of finance\n> college of business administration\n> university of texas\n> austin , texas 78712 - 1179\n>\n> 512 - 232 - 2787 ( phone )\n> 512 - 471 - 5073 ( fax )\n>\n> titman @ mail . utexas . edu\n>\n- nondisclosure agreement . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.127+0000", "entityId": 7476, "properties": {"text": "Subject: garp fas 133 training\ngarp\nphilip merrill\n973 - 258 - 1540\ngarpnyl @ home . com\nmay 19 , 2000\nfor immediate release\ngarp announces fas 133 training series\ngarp , the global association of risk professionals , today announces that\nthey will present a series of training sessions to educate the public about\nfas 133 accounting for derivative and hedging instruments .\nthe standard has been changed and amended significantly in the last two\nyears . this program is being offered because garp recognizes the need to\neducate the public as to the implications of this complex and significant\nfinancial reporting requirement .\nthe series will consist of basic training sessions and an advanced seminar .\ngarp members philip merrill and benton brown will present the basic training\nsessions . fasb staff members , legal , tax and technology specialists will\njoin mr . merrill and mr . brown at an advanced seminar scheduled for july .\nthe basic training sessions will update participants as to the definition of\na derivative , cash flow hedging , fair value hedging , foreign exchange\nhedging , and elements of implementation . this course will cover the\nprerequisites for successful participation in the advanced seminar . the\nbasic will also help facilitate participation in the garp fas 133 sessions .\nthe first basic training seminar will be held june 28 , 2000 at the new york\nsociety of security analysts headquarters in the world trade center .\nregistration and other detailed information are available from philip\nmerrill at garpnyl @ home . com , or on www . garp . com .\nthe advanced seminar will cover more complex issues relating to fasb staff\naccounting interpretations , tax , legal and technology implications and\nadvanced risk management tools and techniques . participants in the advanced\nseminar should have mastered the content of the basic training session .\nthe following people should attend : risk managers , accountants , auditors ,\nlawyers , tax specialists , credit , compliance , technology and other risk\nprofessionals .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.132+0000", "entityId": 7477, "properties": {"text": "Subject: executive program on credit risk modeling\nsubject : announcement : executive program on credit risk modeling\ncredit risk modeling for financial institutions\noctober 15 - 20 , 2000\nat stanford university business school\nrisk management specialists , stanford business school professors of finance\ndarrell duffie and kenneth singleton will be repeating their successful\nexecutive program on credit risk pricing and risk management for financial\ninstitutions . the course is created for risk managers , research staff , and\ntraders with responsibility for credit risk or credit - related products ,\nincluding bond and loan portfolios , otc derivative portfolios , and credit\nderivatives .\nthis program includes :\n* valuation models for defaultable bonds , otc derivatives , and credit\nderivatives , with empirical applications to corporate and sovereign markets\n* empirical and theoretical assessments of models for measuring credit\nrisk , with correlation , for portfolios\n* the strengths and limitations of current practice in credit risk\nmeasurement\n* practical issues in implementing credit modeling and risk systems\n* estimation of default and transition probabilities , and the\ncorrelations among the default risks of publicly traded companies , from\nhistorical data\napplication form :\ncredit risk modeling for financial institutions\nstanford , october 15 - 20 , 2000\nthis form may be completed and returned by email , or may be printed and sent\nby fax to :\nstanford gsb executive education programs\nfax number : 650 723 3950\nyou may also apply and see more detailed information by visiting our web\nsite at :\nwww . gsb . stanford . edu / exed / crm\napplications will be acknowledged upon receipt . if you have not received an\nacknowledgement within two weeks , please contact us .\nplease complete all sections . all information is kept strictly confidential .\nname :\nput an x beside one , please : male : female :\ncitizenship :\njob title :\ncompany :\nyour company ' s main activity :\nbusiness mailing address :\nbusiness phone ( all codes please ) :\nbusiness fax :\nemail address :\nhome address :\nhome phone :\nnickname for identification badge :\nemergency contact name :\nemergency contact phone :\ntitle of person to whom you report :\nyour job responsibilities and experience related to this course : ( please\nprovide a brief job summary here , or attach and send a biographical summary\ncontaining information relevant to your purpose and qualifications for the\ncourse . )\ncollege or university education : please list , by degree :\ncollege or university dates degree granted\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplease note :\nall classes and discussions are conducted in english .\nin order to reserve a place in the course , the program fee of us $ 7 , 500 is\ndue upon notification of acceptance . this fee covers the tuition , single\nroom , meals , and all course materials ( including a proprietary manuscript on\ncredit risk pricing and measurement ) .\nour refund policy is available upon request .\nplease state the source from which you heard about this course :\nname and date :\nif you would like a hard copy brochure and application form , please contact :\n( make sure to include your mailing address )\nshelby m . kashiwamura\nprogram manager\nexecutive education\nstanford graduate school of business\n( 650 ) 723 - 9356 phone\n( 650 ) 723 - 3950 fax\nkashiwamura _ shelby @ gsb . stanford . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.137+0000", "entityId": 7478, "properties": {"text": "Subject: re : fax machine request ~ 05 - 19 - 2000\nkevin ,\nper your request , please see below :\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nnew facsimile machine information\nplease take a look @ the following and let me know , which fax machine you\nchoose or if you need information on something smaller , then i will have the\nvendor contact you directly to finalise installation . an enron director or\nabove { with signature authority to legally bind enron to a contract } will\nhave to sign off on the contract paperwork before the fax machine can be\ninstalled . delivery times on new machines are normally 3 - 5 working days but\neither vendor listed below will be able to provide a \" loaner \" should you have\na business need . please discuss the fax machine install date with the rep\nwhen ordering the equipment .\nif there is no existing fax line present , you will need to send a notes - mail\nto the move team { erica @ x 3 - 3185 or janelle @ x 5 - 7917 } requesting the\ninstallation of a new fax line . the move team can be found in the notes - mail\n\" ect address book \" .\nif you are an ees employee , you must first get new equipment approval from\nees budget control . contact susan mcleroy @ x 5 - 8066 or via notes - mail .\nif you are an ebs employee , you must first get new equipment approval from\nebs purchasing & budget control . contact paula corey @ x 3 - 9948 or martha\nreyna @ x 3 - 3491 . you can reach both of these people via notes - mail .\nif you are an ena employee , you must first get new equipment approval from\nena finance & budget control . contact lorie belsha @ x 3 - 9617 or via\nnotes - mail .\na note on the fax machines listed below :\nall the machines listed below come with a 2 nd paper tray and upgraded memory\n{ maxed by model ~ see below } as an enron standard from each vendor .\nall the fax machines listed below have a modem speed rated @ 33 . 6 kbps versus\nthe canon laserclass 7500 { example only } @ 14 . 4 kbps = new fax machine should\nbe noticeably quicker .\ndocument feeder capacity of the machines listed below are the same as the\ncanon laserclass 7500 { example only }\nmaintenance = models listed below have maintenance / repair coverage included\nin monthly $ total . there is no separate agreement ! toner / drum cartridges +\npaper + line charges are extra { not quoted }\ncontract pricing can change without warning , so please let me know asap if a\nvendor quotes you a different price to those listed below against the various\nmodels .\nif the fax machine is to be used in a trading type environment , here are some\nconsiderations :\nno more than 20 people per fax machine = take a look @ the fax machine\nplacement on eb 30 or eb 31 .\ndisregard any fax machine that does not have a 33 . 6 k modem and jbig\ncompression { or equivalent } .\nlook for memory upgrades & 2 nd paper tray included in monthly cost . { models\nquoted are loaded } .\nmaintenance is to be included in monthly cost { models quoted are covered } .\n* * * * * * * * * * * * * * * * * * * * *\nfrom pitney bowes\npb 2050\ncost : $ 95 . 00 per month on rental\nenron specs : this model has 10 megs of memory + a 2 nd paper tray as standard .\npitney bowes weblink , click here - - >\nthere are several of these fax machines located through out the enron\nbuilding and 3 allen center , including some on trading floors .\n* * * * * * * * * * * * * * * * * * * * *\npb 9930\ncost : $ 76 . 00 per month on rental\nenron specs : this model has 10 megs of memory + a 2 nd paper tray as standard .\npitney bowes weblink , click here - - >\nthere are several of these fax machines located through out the enron\nbuilding and 3 allen center , including some on trading floors .\n* * * * * * * * * * * * * * * * * * * * *\npb 9830\ncost : $ 55 . 00 per month on rental\nenron specs : this model has 5 megs of memory + a 2 nd paper tray as standard .\npitney bowes weblink , click here - - >\n* * * * * * * * * * * * * * * * * * * * *\nfrom panasonic communications direct\nuf - 885\ncost : $ 75 . 00 per month\nclick below for machine details { similar to the uf - 880 with 8 megs of memory +\n2 nd tray = no handset } :\nthere are several of these fax machines located through out the enron\nbuilding including some on trading floors .\n* * * * * * * * * * * * * * * * * * * * *\nthe above machines are designed for workgroup use .\nq ) how many people will be using this fax machine ?\nq ) how much usage will this fax machine have ?\n{ i . e . heavy = 40 faxes per day @ 20 pages / 60 faxes per day @ 2 - 3 pages or a\nlot less ? if \" heavy \" , either the pb 2050 , pb 9930 or uf 885 / uf 895 should fit\nyour needs = if 15 - 40 , the pb 9830 would probably be a better fit }\n* * * * * * * * * * * * * * * * * * * * *\ncontract details\nthe fax programs are an agreement between each end user of the fax machine\nand the relevant vendor , as follows :\npitney bowes\n36 month rental .\n30 day notice for termination of contract .\nno penalty for early termination of contract = call pb rep . and have the\nmachine picked up , making sure a receipt is given to you by the collecting\nrep .\nupgrade / downgrade available = $ 0 penalty .\nrep will be happy to discuss details with you and answer any questions on\nthese points .\npanasonic communications\n36 month lease rental .\n30 day notice for termination of contract before term expiration .\nno penalty for early termination of contract for office / department / location\nclosure .\nupgrade / downgrade available = $ 0 penalty .\nrep will be happy to discuss details with you and answer any questions on\nthese points .\n* * * * * * * * * * * * * * * * * * * * *\nplease note the following\nthe facsimile machine agreement is between the enron business unit / department\nrequesting the facsimile machine and the vendor .\nthe user or requester of the fax machine is responsible for invoice payment .\nenron property & services corporation is not responsible for the coding ,\nprocessing or payment of facsimile { fax } machine invoices .\nin order to return any old fax machine equipment , you must contact the\nleasing company that supplied the equipment and send them a certified letter\nthat terminates the agreement . if you terminate a contract within the\noriginal agreement period , you may be liable for penalty charges as a lot of\nfax machines are on a non - cancellable lease agreement . the vendor who\nsupplied the fax equipment will be able to let you know of any outstanding $\namounts for your existing equipment .\nif you are asked to pay outstanding $ amounts , be aware that some vendors\ninclude the cost of outright purchase of the old fax equipment = from the\ncontracts i have reviewed so far , you are under no obligation to purchase the\nold equipment .\nikon contact name for returns :\nbeth frank : phone = new # - - > 409 - 441 - 1262 { previously 281 - 355 - 6274 }\nbeth frank fax # = new # - - > 409 - 441 - 1266 { previously 281 - 355 - 5496 }\nbeth frank e - mail address ~ eafrank @ aol . com\nmarimon business systems contact name for returns :\ndon scott : phone = 713 - 686 - 6601\ndon scott fax # = 713 - 686 - 6676\n{ no e - mail address available }\n* * * please call me or e - mail me if it is a different vendor name on the\nmachine and i will respond with a contact name * * *\ncharges for fax machines are dependant upon manufacturer & model , with the\nperson responsible for the fax machine , paying the invoice . you must notify\nthe vendor of any changes relating to fax machine assignment { even if it is\nwithin the same group } = who the machine has been reassigned to { contact\nname } , the new contact phone # and the location of the machine .\n* * * * * * * * * * * * * * * * * * * * *\nfax machine supplies\nreplacement toner cartridges : most of these are available to enron through\ncorporate express @ savings over the fax vendor invoice price . these savings\ncan be significant , so please e - mail me if you would like more details .\n* * * * * * * * * * * * * * * * * * * * *\nplease call me if you have any questions .\nthanks , iain russell @ 713 - 853 - 6861\ncontracts supervisor administration\nenron property & services corp .\n* * * * * * * * * * * * * * * * * * * * *\n* * * * * * * * * * * * * * * * * * * * *\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nkevin g moore\n05 / 19 / 2000 12 : 42 pm\nto : iain russell / epsc / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : fax machine\niain ,\nplease , i am in need of a fax machine .\nit was brought to my attention that you\nmay have one available .\nplease inform me concerning this\nmatter , we need one a . s . a . p . .\nthanks\nkevin moore\nx 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.143+0000", "entityId": 7479, "properties": {"text": "Subject: re : cplex floating license\nsamer ' s suggestion makes a lot of sense . we can start with something like one\nfloating dev . license + 2 opl licenses and buy more later based on actual\nusage . on the pricing agreement , it probably makes sense to get a guarantee\non the discounts for additional licenses for one year ( or till dec . ) . i am\ndefinitely interested and can provide the share of funding necessary from my\nclients .\nthanks ,\nkrishna .\nfrom : samer takriti @ enron communications on 05 / 19 / 2000 11 : 14 am\nto : ravi thuraisingham / enron communications @ enron communications\ncc : chonawee supatgiat / corp / enron @ enron , pinnamaneni\nkrishnarao / hou / ect @ ect @ enron , samer _ takriti @ enron . net , stinson\ngibner / hou / ect @ ect @ enron , tom halliburton / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect\nsubject : re : cplex floating license\nchonawee and i just had a phone conversation with cplex . there are other\nalternatives ( products ) that may help in saving time and cost . chonawee and i\nfeel that one floating develoment license , and one or two opl ( a package on\nsale that provides modeling and optimization features ) licenses will do . in\naddition , we need floating deployment licenses . for the development licenses ,\nthe charges should be split \" equally \" between the different groups that may\nask for optimization help ( although it is hard to predict who may ask for\nfuture help ) . we are suggesting equally since these licenses are used to\ndevelop the needed solution but are not ( in general ) used to run the\nsoftware . the deployment licenses can be charged on per - use basis for\ndifferent groups .\ncplex is going to send us a new quote . we ' ll make the decision soon after\nthat .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.148+0000", "entityId": 7480, "properties": {"text": "Subject: virus update : please read\nthere are many different variations of the \" iloveyou \" computer virus still\nbeing reported . the it infrastructure team is continually updating our virus\nsoftware as new versions become available , but it is extremely important that\nyou do not open any attachments that you do not regularly receive from\nbusiness associates . even business associates you are very familiar with\ncould be sending you the virus without knowing it , so unless you are\nexpecting an email from them with an specified attachment please do not open\nit . if you are unsure whether to open an attachment please do not open it .\ncall your helpdesk to ask any questions and to get verification if required .\nwe may need you to log out and log back in during the day as new anti virus\nupdates become available . we appreciate your cooperation while we all work\nto keep enron ' s computing environment secure .\nplease note the following enron policies regarding viruses :\nemail\nmalicious code ( virus ) screening\nin addition to the enron requirement for email attachments ( received and\nsent ) to be screened for malicious code ( viruses , trojan horses , etc . ) , users\nof enron information resources are required to detach email attachments that\nare received on to their hard drive for local virus screening purposes .\nall executables ( * . bat , * exe , * . com , * . vbs ) files should never be launched\nfrom email without first consulting with it .\nvirus alerts\nthe internet is constantly being flooded with information about computer\nviruses and trojan horses . however , within among real virus notices are\ncomputer virus hoaxes . while these hoaxes do not infect systems , they are\nstill time consuming and costly to handle . it only wastes bandwidth and\nunnecessarily alarms other computer users .\nplease , do not perpetuate unconfirmed warnings about viruses and trojan\nhorses . if you receive an invalidated warning , don ' t pass it to all your\nfriends , pass it to your it computer security manager to validate first .\nenron\ninformation risk management\n713 - 853 - 5536", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.153+0000", "entityId": 7481, "properties": {"text": "Subject: re : cplex floating license\nchonawee and i just had a phone conversation with cplex . there are other\nalternatives ( products ) that may help in saving time and cost . chonawee and i\nfeel that one floating develoment license , and one or two opl ( a package on\nsale that provides modeling and optimization features ) licenses will do . in\naddition , we need floating deployment licenses . for the development licenses ,\nthe charges should be split \" equally \" between the different groups that may\nask for optimization help ( although it is hard to predict who may ask for\nfuture help ) . we are suggesting equally since these licenses are used to\ndevelop the needed solution but are not ( in general ) used to run the\nsoftware . the deployment licenses can be charged on per - use basis for\ndifferent groups .\ncplex is going to send us a new quote . we ' ll make the decision soon after\nthat .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.158+0000", "entityId": 7482, "properties": {"text": "Subject: ps on the new xmim tool for excel\nwhen you install this , you need to change the xmim server from \" xmimhost \" to\n\" limbo \" ( port is still 0 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.165+0000", "entityId": 7483, "properties": {"text": "Subject: xpress and cplex runtime comparison results\nvince ,\nfyi\nbelow is the comparison of the computation time results from cplex and xpress\noptimization softwares .\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n05 / 19 / 2000 03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n05 / 17 / 2000 05 : 48 pm\nto : samer _ takriti @ enron . net , stinson gibner / hou / ect @ ect , ravi\nthuraisingham / enron communications @ enron communications\ncc : tom halliburton / corp / enron @ enron , pinnamaneni krishnarao / hou / ect @ ect ,\nming - lung . lee @ sycamorenet . com , ming 888 lee @ aol . com\nsubject : xpress and cplex runtime comparison results\nhi ,\ni have tested both cplex and xpress - mp optimization software in solving our\nnetwork design problem .\nxpress is more user friendly hence it takes less developing time . however ,\ncplex performs significantly better\nin term of computation time , especially in integer programming .\nas a result , eventhougth xpress is easier to use and cheaper , i would\nrecommend our ebs group to use cplex .\nplease let me know what do you think . . .\nthe test problem has 10 nodes , 77 cables , 5 cable speed .\nthe table below represents the computation time in seconds for solving this\nproblem .\nthe second column indicates if the general integer variables are relaxed ( but\nstill keep the binary variables ) .\nthe \" lp \" column represents the computational time when solving relaxed\nproblem ( no binary & integer variable constraints ) .\nxpress took too much time in solving case 4 and 6 so i had to stop the\nprocess and report the best solutions it found .\nbelow are the graph .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.170+0000", "entityId": 7484, "properties": {"text": "Subject: re : visit to enron\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 05 / 19 / 2000\n11 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 05 / 19 / 2000 11 : 33 : 29 am\nto : stinson . gibner @ enron . com\ncc :\nsubject : re : visit to enron\nstinson ,\n> 1 . will you be able to arrive in houston by , say , 6 p . m . on thursday so\n> that we can schedule a dinner meeting that evening ?\ni ' m arriving at the george bush airport in houston next thursday at 5 : 15 pm .\ni could then take a taxi to the hotel or the restaurant . how long would it\ntake me to get there ? is there a \" rush hour \" problem at that time ?\n> also , if you are\n> returning on friday , what time is your flight ? i don ' t want to book\n> meetings too late in the afternoon for you , if you will need to leave for\n> the airport .\ni ' m flying out of houston on friday at 6 : 45 pm . is there a rush hour problem\non the freeways at that time ? what time should i leave from enron to be at the\nairport at 6 pm ?\n> 2 . would you be amenable to giving a 45 minute presentation on friday ?\n> this would be an effective way of introducing you to many more people in\n> ebs , including many of the traders . the topic could be of your choice and\n> could be related to networks or the future of the internet .\ni hope i ' ll have opportunities to give talks at enron in subsequent visits\nalong the research path . in this first visit i was hoping to understand better\nthe research goals of enron and brainstorm with people about what are the\ntop challenges and opportunities for our research collaboration . identifying\nthe best research problems in terms of\n1 ) highest innovation potential and\n2 ) highest projected impact\nwould be at the top of my list . it might be unprofessional on my side to\ntalk to an audience that i don ' t have any prior information about and is\nvery diverse anyway ; it could actually be \" dangerous . \" i would feel much more\ncomfortable to do that in my second visit , after i have understood the\nenvironment\nbetter and i have some results to talk about . i would like to be in a\nposition to \" impress \" people when i give my first talk at enron . ( besides ,\ni will have to prepare good slides for such a talk and i am totally swamped\nall next week . )\n> 3 . do you have time to draft a short letter of understanding that vince\n> could use to document the support being given to you and the uses which\n> would be made of our contribution to your research effort ?\ni ' m swamped , but i ' ll try to put something together .\ni look forward to seeing you next week .\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.174+0000", "entityId": 7485, "properties": {"text": "Subject: re : credit . com cv ' s\ncould we talk on monday pls . obtain the feedback of your team .\nthanks for the assistance\nvince j kaminski\n08 / 05 / 2000 22 : 46\nto : rosalinda resendez / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , bryan\nseyfried / lon / ect @ ect\nsubject : re : credit . com cv ' s\nrosie ,\nwe are making arrangements to bring them to houston for an\ninterview .\nvince\nrosalinda resendez\n05 / 08 / 2000 11 : 10 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : credit . com cv ' s\nvince ,\ni ' ve been asked to forward these resumes to you .\nrosie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rosalinda resendez / hou / ect on 05 / 08 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlouise\nbratby\n05 / 08 / 2000 10 : 11 am\nto : rosalinda resendez / hou / ect @ ect\ncc :\nsubject : credit . com cv ' s\nrosalinda\ni work with melanie doyle in london hr . i have two candidates who i ' m trying\nto arrange ( for bryan seyfried ) to come in and see vince kaminski however i ' m\nfinding it difficult to co - ordinate from this end . would it be possible for\nyou to forward these cv ' s on to vince ' s assistant as i ' m not sure who the\ncorrect person is .\nthanks for your help and if you need more details my number is 44 20 7783\n6945 .\nregards\nlouise", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.178+0000", "entityId": 7486, "properties": {"text": "Subject: re : exmar deal\ndear vince ,\nthis is the final version of the dash that was presented to jeff and joe on\nfriday . please let me know if i can be of more help .\nbest regards ,\nfarhad ahad\nvince j kaminski @ ect\n05 / 16 / 2000 01 : 34 pm\nto : farhad ahad / corp / enron @ enron\ncc : john sherriff / lon / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , david gorte / hou / ect @ ect\nsubject : exmar deal\nfarhad ,\nplease , cc - mail to john sherriff in london the dash of the exmar transaction\nwhen it becomes official .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.184+0000", "entityId": 7487, "properties": {"text": "Subject: exmar purchase decision\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rick buy / hou / ect on 05 / 22 / 2000 01 : 34 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\njohn sherriff\n05 / 22 / 2000 01 : 21 pm\nto : rick buy / hou / ect @ ect , joe gold / lon / ect @ ect , david\nhaug / enron _ development @ enron _ development , doug\nrotenberg / enron _ development @ enron _ development , rick\nbergsieker / enron _ development @ enron _ development , vince j kaminski / hou / ect @ ect\ncc :\nsubject : exmar purchase decision\ni just got off the phone with jeff skilling to make my pitch for doing the\nexmar deal . he said that he generally understands the logic of the deal but\nsimply\nwants the risk management discipine applied to analzing the position ( a\nreiteration of what rick buy had said in our meeting today ) . i would simply\nask vince ' s team to take a quick look tommorow at valuing the ships as stand\nalone positions with a guess at the volatility based on historical price\nmovements . this would\nbe much easier than the rainbow option approach and would allow us to roughly\nlook at the value of the options on the other two ships . in other words we\ncould look at two ship long positions with some implied volatilities and\nalso estimate daily vars on the ships as if they were mark to market\n( although i agree with david that we will not likely be able to mark the\nships because they will be treated as leases ) .\njohn\njohn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john sherriff / lon / ect on 22 / 05 / 2000 19 : 05\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\njoe gold\n22 / 05 / 2000 18 : 58\nto : john sherriff / lon / ect @ ect\ncc :\nsubject : exmar purchase decision\njohn ,\nafter spending a few minutes with our shipping experts in the coal and oil\ngroups , i have a slightly different angle on the exmar lng vessel decision .\ni would ideally like to spend the time to analyse this purchase as we do\npower and gas positions . unfortunately , we do not have that luxury and\nsometimes , in absence of true analytics , the most rudimentary measures can\nprovide the best decision tools . here is how we would make the decision :\n1 ) our shipping expert confirms that $ 140 million for a 135 , 000 ton ship\nrepresents a good price relative to new build costs over the last three years\nand that quotes have been trending up past that number recently . he also\nconfirms that the current trough is the result of the default of several far\neast buyers and that new lng orders and other ship building ( cruise liners )\nhave reduced the over capacity . his experience and historic analysis has\nsuggested that the pricing cycle for lng ships lasts for a significant\nperiod . new efficiency measures should reduce new build prices ( and allow\nfor a lower trough ) , but not by an extreme amount versus the $ 140 million\ncost of this vessel .\npierre normally likes to roll time charters ; however , this is difficult in an\nilliquid shipping market like lng . he would purchase this ship if the lng\nshipping book were his to manage . he estimates the ship could be sold in a\ndistressed sale for $ 110 million and could be potentially time chartered on a\nlong term basis at a value of up to $ 200 million .\n2 ) our development teams in spain , italy and turkey have been trying to\nsolve the big question - gas . in each country , the key to developing a\nmerchant plant is securing gas flexibility or at least securing negotiating\nleverage with the monopoly gas supplier . it is questionable whether or not\nthis decision will have an immediate impact on arcos . the plant ' s time line\nand the realities of the lng supply market may require that we commit to gas\nnatural before any source of 3 to 5 year gas can be secured . the shear\nthreat of being able to bring spot or term lng to these markets will improve\nour negotiating leverage and / or allow us to create flexibility . going\nforward , however , other potential plant opportunities in spain , and elsewhere\nin the med region , may have the capacity to utilise these vessels . i think\nthat this flexibility is worth at least $ 25 million to me .\n3 ) i would summarise : upside $ 60 + $ 25 = $ 85 million\ndownside ( $ 30 ) + $ 25 = ( $ 5 ) million\ni would do it .\ni will leave the rest to you .\njoe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.191+0000", "entityId": 7488, "properties": {"text": "Subject: re : fmrc\nmark ,\nthanks for the info . i shall check it out .\nvince\nmark courtney\n05 / 17 / 2000 03 : 48 pm\nto : vince j kaminski / hou / ect @ ect\ncc : joe gordon / corp / enron @ enron\nsubject : fmrc\nvince ,\ni ran across this during my recruiting at vanderbilt . it is headed by hans\nstoll , one of the leading derivative academicians in the country . i looked\nat their website briefly and thought you might be interested . i have also\nforwarded some email correspondence between dr . stoll and joe gordon , one of\nour associates and a former student of his at owen school . we have been very\nsuccessful lately in recruiting at vanderbilt , both at the undergrad and mba\nlevels , and have gotten some high quality people . please let me know if you\nhave any interest in this and i would be glad to follow up with dr . stoll or\nhelp out in any way i can .\nthank you ,\nmark courtney\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark courtney / hou / ect on 05 / 17 / 2000 03 : 42\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : joe gordon @ enron 05 / 11 / 2000 11 : 33 am\nto : mark courtney / hou / ect @ ect\ncc :\nsubject : re : fmrc\nmark - -\ni dropped the ball as far as getting someone to the april meeting , but i\nwould to try to get this going .\nthanks ,\njoe\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joe gordon / corp / enron on 05 / 11 / 2000 08 : 42\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhans stoll on 03 / 20 / 2000 12 : 22 : 36 pm\nto : \" ' joe . gordon @ enron . com ' \"\ncc :\nsubject : re : fmrc\njoe ,\nthanks for your note .\nthe purpose of the fmrc is to stimulate research on financial markets and to\nprovide a link between academic research , real world issues and regulation .\nmembers of the center sit on the advisory board and help direct the research\nof the center . they send an unlimited number of participants to center\nconferences . our center is unique in its mix of academics , practitioners and\nregulators . for members , such as enron , it provides a window on the academic\nworld , and would give enron an opportunity to stimulate research in the use\nof markets in heretofore unusual commodities .\nmore information on the center can be found at\nhttp : / / mba . vanderbilt . edu / fmrc /\ncenter members include , nyse , nasdaq , cme , some high tech trading firms ,\nmerrill lynch . . . .\njoining the center usually requires a top management decision , but i would\napproach it through the research and the trading areas . one way to start is\nto see if anyone in a position to recommend joining the center would like to\nattend this year ' s conference on april 13 - 14 . the program is on the web\nsite . ( membership is $ 10 , 000 per year )\nappreciate your interest and help .\nlet me know if we should provide more detail to someone .\nregards ,\nhans\n- - - - - original message - - - - -\nfrom : joe . gordon @ enron . com [ mailto : joe . gordon @ enron . com ]\nsent : monday , march 20 , 2000 10 : 45 am\nto : hans . stoll @ owen . vanderbilt . edu\nsubject : fmrc\ndr . stoll :\nsorry for the delay , but we haven ' t forgotten about your interest in having\nenron participate in the fmrc . our holdup is determining who is the\nappropriate contact person at enron ( that , and neglect ) . we ' re not sure if\nwe should approach someone from trading , research , senior management , etc .\nalso , any additional information on the role the participating firms play\nwould be helpful .\nthanks ,\njoe gordon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.198+0000", "entityId": 7489, "properties": {"text": "Subject: reviewer approval\nplease note that your employees have suggested the following people to\ncomplete a feedback form on their behalf . you will need to access the\nperformance management system ( pep ) to either approve or decline these\nsuggested reviewers . once you have approved the suggested reviewers they\nwill be notified and can begin completing the feedback form .\nyour list of employees that have suggested reviewers are listed below :\ndate suggested : may 19 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : kollaros , alexios", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.202+0000", "entityId": 7490, "properties": {"text": "Subject: prc review : list of key projects\nhi dale & vince ,\nfor your benefit i have compiled a shortlist of the main projects worked on\nover the past five months :\n1 ) inflation curve modelling ( february and march )\n2 ) uk power monthly vol curve generator\n3 ) nordic power monthly vol curve generator\n4 ) energydesk . com models & support\n5 ) compound options for uk power desk ( options to build power stations )\n6 ) continental power non - generic options ( using arbitrary trader - specified\ndistributions )\n7 ) global products : non - generic options modelling and new commodity forward\ncurve construction ( benzene fwd curve from naphtha )\n8 ) exotic options library upgrade / model test / bug fixes ( e . g . testing new / old\nasian models )\n9 ) continental gas volatility curve construction\nthe best summary for this is in the attached presentation that i gave to the\nlondon and oslo staff recently .\nregards ,\nanjam\nx 35383\npresentation attached :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.207+0000", "entityId": 7491, "properties": {"text": "Subject: dear mr . kaminski ,\nit was really a pleasure to meet you during\nthe risk event . i hope we ' ll have more chances to\ntalk in the future .\ni will be glad to invite you when you will visit\ncalifornia . my home number is ( 408 ) - 996 - 2631 .\nsincerely ,\nalex ulitsky .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nalex ulitsky , ph . d .\nalex @ eplanning . com\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.211+0000", "entityId": 7492, "properties": {"text": "Subject: enron global finance org changes\nrecently , jeff mcmahon , executive vice president and treasurer of enron\ncorp . , accepted the position of chief commercial officer of enron net works .\njeff ' s many accomplishments at enron global finance ( \" egf \" ) include over $ 30\nbillion of closed financings and an upgrade of enron ' s credit rating by\nmoody ' s to baal . we wish jeff well in his new endeavor .\nben glisan , vice president and head of egf ' s structured finance business ,\nwill assume jeff ' s responsibilities as vice president and treasurer of enron\ncorp . ben joined enron in 1996 from arthur andersen where he was responsible\nfor managing structured transactions with enron . prior to arthur andersen ,\nben worked at coopers & lybrand providing accounting and finance services\nprincipally to financial institutions . ben will be a member of the enron\ncorp . executive committee .\nfor additional details regarding egf ' s organizational changes , please see the\nattached memo .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.216+0000", "entityId": 7493, "properties": {"text": "Subject: telephone interview with ming sit\nthe telephone interview with ming sit has been scheduled for tuesday ,\nmay 23 rd at 12 : 30 pm houston time . it will be in ebl 9 c 2 .\nkrishna will find out if he will call you or if you should call him at work .\nthanks\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.221+0000", "entityId": 7494, "properties": {"text": "Subject: re : ming sit\nvince ,\nthanks for the update . if there is anything i can facilitate or bring more\ninfo about ming ,\nplease let me know .\nzimin\nvince j kaminski\n05 / 22 / 2000 01 : 15 pm\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : ming sit\nzimin ,\nsome feedback i have received on ming .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 22 / 2000\n01 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npinnamaneni krishnarao\n05 / 22 / 2000 12 : 35 pm\nto : dennis benevides / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , ronnie chahal / hou / ees @ ees\nsubject : re : ming sit\ndennis :\ni talked to ming for only short time and am concerned about the cons scott\nmentioned . i would like to know what your assessment is like . also , i would\nlike vince , ronnie & myself to talk to ming over the phone . can we call him\ndirectly and talk to him ? please let me know how strongly you feel about\nhaving him as a support person .\nthanks ,\nkrishna .\nx 35485\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : re : ming sit\nkrisna :\nare you still interested in hiring ming sit , through the research group . if\nso , please proceed and assign him to support ees . please let me know if i\nneed to provide any information .\nthanks\ndennis\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dennis benevides / hou / ees on 05 / 22 / 2000\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames w lewis\n05 / 21 / 2000 11 : 44 am\nto : dennis benevides / hou / ees @ ees\ncc : scott stoness / hou / ees @ ees\nsubject : re : ming sit\ni like db ' s suggestion . let ' s do it .\nenron energy services\nfrom : dennis benevides 05 / 19 / 2000 03 : 31 pm\nphone no : 713 853 - 9609\nto : scott stoness / hou / ees @ ees\ncc : james w lewis / hou / ees @ ees\nsubject : re : ming sit\ngot a little scared at your first sentence i read \" he is no replacement for\njay but he could be for dennis b . . \" ? ? .\nanyway :\ni think he would be a good fit withing the group . krisna has offered to hire\nhim in the research group , he has good programing background and is excited\nabout working for enron instead of a utility such as pacificcorp . he\nexpressed interest in applying his skill to make $ $ $ $ .\ni suggest bringing him in in research as a first alternative . i see three\npotential applications where we can use his skills to evaluate best longer\nterm fit :\ncontinuing ronnie ' s model building role , but with a focus within neil ' s group\nto tie rm systems together\nbridge the lack of phd econometrics expertise we have as are result of the\ndeparture of anoush .\nrisk management systems infrastructure development .\nscott stoness\n05 / 19 / 2000 02 : 02 pm\nto : james w lewis / hou / ees @ ees\ncc : dennis benevides / hou / ees @ ees\nsubject : ming sit\nhe is no replacement for jay but he could be a dennis b employee .\npros :\nengineer so would be good at math\nhis boss hired him a 2 nd time ( 1 at txu and again at pacificor again ) so he\nmust be reliable\nphd in economics and engineering ( good ) from stanford ( ugh : ) : ) : ) )\ncons :\ndoes not understand tariffs . i asked him and he said he is not experienced .\ni probed too and he does not understand regulatory that well .\ndoes not understand ancillary services ( which is surprising to me since he\nstarted out as an plant operation side of hk power )\nhas limited people management skills ( he described 1 analyst he works with\nthat is not capable that he has to jump into the excel spreadsheet and fix it\nfor him and he cannot give him feedback because it is a utility mentality )\nhe is not a good communicator ( i asked him to describe what he did in hk\npower and it took him forever to explain because he expected me to know that\nplant operations meant planning the start up of oil plants ) .\noverall :\ni suspect that he is a very solid guy when it comes to analysis but not\nparticularly creative or good at communication and leadership . he would be a\ngreat support person .\ni would hire for analysis but not as a potential leader . go", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.225+0000", "entityId": 7495, "properties": {"text": "Subject: re : ming sit\ndennis :\ni talked to ming for only short time and am concerned about the cons scott\nmentioned . i would like to know what your assessment is like . also , i would\nlike vince , ronnie & myself to talk to ming over the phone . can we call him\ndirectly and talk to him ? please let me know how strongly you feel about\nhaving him as a support person .\nthanks ,\nkrishna .\nx 35485\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : re : ming sit\nkrisna :\nare you still interested in hiring ming sit , through the research group . if\nso , please proceed and assign him to support ees . please let me know if i\nneed to provide any information .\nthanks\ndennis\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dennis benevides / hou / ees on 05 / 22 / 2000\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames w lewis\n05 / 21 / 2000 11 : 44 am\nto : dennis benevides / hou / ees @ ees\ncc : scott stoness / hou / ees @ ees\nsubject : re : ming sit\ni like db ' s suggestion . let ' s do it .\nenron energy services\nfrom : dennis benevides 05 / 19 / 2000 03 : 31 pm\nphone no : 713 853 - 9609\nto : scott stoness / hou / ees @ ees\ncc : james w lewis / hou / ees @ ees\nsubject : re : ming sit\ngot a little scared at your first sentence i read \" he is no replacement for\njay but he could be for dennis b . . \" ? ? .\nanyway :\ni think he would be a good fit withing the group . krisna has offered to hire\nhim in the research group , he has good programing background and is excited\nabout working for enron instead of a utility such as pacificcorp . he\nexpressed interest in applying his skill to make $ $ $ $ .\ni suggest bringing him in in research as a first alternative . i see three\npotential applications where we can use his skills to evaluate best longer\nterm fit :\ncontinuing ronnie ' s model building role , but with a focus within neil ' s group\nto tie rm systems together\nbridge the lack of phd econometrics expertise we have as are result of the\ndeparture of anoush .\nrisk management systems infrastructure development .\nscott stoness\n05 / 19 / 2000 02 : 02 pm\nto : james w lewis / hou / ees @ ees\ncc : dennis benevides / hou / ees @ ees\nsubject : ming sit\nhe is no replacement for jay but he could be a dennis b employee .\npros :\nengineer so would be good at math\nhis boss hired him a 2 nd time ( 1 at txu and again at pacificor again ) so he\nmust be reliable\nphd in economics and engineering ( good ) from stanford ( ugh : ) : ) : ) )\ncons :\ndoes not understand tariffs . i asked him and he said he is not experienced .\ni probed too and he does not understand regulatory that well .\ndoes not understand ancillary services ( which is surprising to me since he\nstarted out as an plant operation side of hk power )\nhas limited people management skills ( he described 1 analyst he works with\nthat is not capable that he has to jump into the excel spreadsheet and fix it\nfor him and he cannot give him feedback because it is a utility mentality )\nhe is not a good communicator ( i asked him to describe what he did in hk\npower and it took him forever to explain because he expected me to know that\nplant operations meant planning the start up of oil plants ) .\noverall :\ni suspect that he is a very solid guy when it comes to analysis but not\nparticularly creative or good at communication and leadership . he would be a\ngreat support person .\ni would hire for analysis but not as a potential leader . go", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.230+0000", "entityId": 7496, "properties": {"text": "Subject: re : credit . com cv ' s\nmy feedback :\nphilip has an excellent cv and background - - - phd coursework at university\nof chicago , and work experience at long term capital ( hopefully he learned\nsomething ) . his views are somewhat idealistic - - - his aim is to make\nbid - offers in any product , and he could not really address how he would\nhandle illiquidity . nevertheless , if bryan needs traders , he can fit the\nrole .\nzak seemed somewhat unfocused . he has worked on a variety of projects , but\ndoes not have any specific view in mind as to what he would like to do . he\nseemed very academically oriented , and might be hard to communicate and work\nwith . i do not see him working in the trenches , and i do not see him leading\nthe group either . he would be a good person to brainstorm ideas with .\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 05 / 22 / 2000\n08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n05 / 20 / 2000 09 : 35 am\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : re : credit . com cv ' s\ncould we talk on monday pls . obtain the feedback of your team .\nthanks for the assistance\nvince j kaminski\n08 / 05 / 2000 22 : 46\nto : rosalinda resendez / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , bryan\nseyfried / lon / ect @ ect\nsubject : re : credit . com cv ' s\nrosie ,\nwe are making arrangements to bring them to houston for an\ninterview .\nvince\nrosalinda resendez\n05 / 08 / 2000 11 : 10 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : credit . com cv ' s\nvince ,\ni ' ve been asked to forward these resumes to you .\nrosie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rosalinda resendez / hou / ect on 05 / 08 / 2000\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlouise\nbratby\n05 / 08 / 2000 10 : 11 am\nto : rosalinda resendez / hou / ect @ ect\ncc :\nsubject : credit . com cv ' s\nrosalinda\ni work with melanie doyle in london hr . i have two candidates who i ' m trying\nto arrange ( for bryan seyfried ) to come in and see vince kaminski however i ' m\nfinding it difficult to co - ordinate from this end . would it be possible for\nyou to forward these cv ' s on to vince ' s assistant as i ' m not sure who the\ncorrect person is .\nthanks for your help and if you need more details my number is 44 20 7783\n6945 .\nregards\nlouise", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.234+0000", "entityId": 7497, "properties": {"text": "Subject: re : book review\ngreat job vince . i know people will be knocking themselves over for the\nbook . i know for a fact that the consultants can make a lot of money just\n' reselling ' stuff that are in the book ! i know first hand since d & t did that\nwith even the first version .\ni think the fas 133 article by some out - of - work nuclear engineer was the bomb !\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.239+0000", "entityId": 7498, "properties": {"text": "Subject: re : from george huan , ut austin mba\nthanks a lot !\ngeorge huan\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : xiaojun huan\ncc : vince . j . kaminski @ enron . com\nsent : 5 / 22 / 00 1 : 18 pm\nsubject : re : from george huan , ut austin mba\ngeorge ,\ni have resent your resume to the risk management group . please ,\ngive them a few more days .\nvince\nxiaojun huan on 05 / 22 / 2000 01 : 08 : 07 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : from george huan , ut austin mba\ndear mr . kaminski :\nhow are you doing ?\ni called you on may 11 th about my first rotational assignment . you\nrecommended risk management and asked me to email you my resume .\nit seems like risk management group are not very interested in me ,\nbecause\ni\nhaven ' t received any feedback from them yet . do you think i should wait\nfor\na few days or call them ?\ni do appreciate your help , which will make a difference on my career\npath .\nsincerely\nxiaojun george huan\nmba 2000 , ut austin\ntel : ( 512 ) 477 - 8690\n>\n( see attached file : resume - george huan . doc )\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.244+0000", "entityId": 7499, "properties": {"text": "Subject: re : 1 . power 2000 ; 2 . my proposed 5 / 25 houston visit\nehud ,\nthanks fro your message .\nwhat about june 22 ? i have several trips in between may 25 and june 22 .\nvince\n\" ehud i . ronn \" on 05 / 16 / 2000 02 : 47 : 49 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : 1 . power 2000 ; 2 . my proposed 5 / 25 houston visit\nvince ,\ngreetings .\n1 . thanks again for hosting the dinner at power 2000 . congratulations\nalso on a thoughtful keynote address , a copy of which i picked up on the\nway out of the conference .\n2 . my family and i are leaving on a family trip 5 / 25 thru 6 / 4 . thus , i\nwould like to reschedule my proposed houston visit , and presentation of the\n\" enterprise - wide risk management \" model to enron ' s research dept . , to the\nnext mutually - convenient date .\nbest ,\nehud\nehud i . ronn\ndepartment of finance\ncollege and graduate school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.248+0000", "entityId": 7500, "properties": {"text": "Subject: pricing default and our may 22 conference call\njulia ,\ni am sending you a copy of the nondisclosure agreement i received from a\nprofessor at ut\naustin . three ut academics developed a model that may be useful in our pricing\napplications . they envisage the possibility of either selling this model to\nenron or of joint research\neffort in this area .\ncan you , please , take a look at the attached legal document .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 22 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsheridan titman on 05 / 17 / 2000 08 : 56 : 42 am\nto : sheridan titman ,\n\" ' vince . j . kaminski @ enron . com ' \"\ncc : \" ' vkaminski @ aol . com ' \" , \" ' shirley crenshaw ' \"\nsubject : pricing default and our may 22 conference call\n>\ndear vince :\ni spoke with ms crenshaw yesterday afternoon about a conference call about\ndeveloping internet course material . if you have already discussed this\nwith your colleagues , it might be helpful if you could very briefly outline\nthe questions and issues they might raise in the conference call so that i\ncan be a bit better prepared .\nms crenshaw also mentioned that you never received my earlier email\nregarding the credit spread model i developed with stathis and sergey . my\nearlier email follows , and the nondisclosure agreement is attached .\ni look forward to talking with you next week .\nregards ,\nsheridan\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu\n> - - - - - original message - - - - -\n> from : sheridan titman\n> sent : friday , may 05 , 2000 12 : 48 pm\n> to : ' vince . j . kaminski @ enron . com '\n> cc : stathis tompaidis\n> subject : pricing default\n>\n>\n> dear vince :\n>\n> i really enjoyed meeting with you yesterday and learned a lot from our\n> discussions .\n>\n> the ut office of technology licensing and intellectual property has given\n> us the attached form which they would like you to sign before we send you\n> a copy of our paper on pricing default . please let me know if this is\n> agreeable to you .\n>\n> i hope we have the opportunity to work with you in the future , either on\n> the debt pricing models or on the other issues we discussed .\n>\n> i look forward to hearing from you .\n>\n> regards ,\n>\n> sheridan\n>\n> >\n> sheridan titman\n> department of finance\n> college of business administration\n> university of texas\n> austin , texas 78712 - 1179\n>\n> 512 - 232 - 2787 ( phone )\n> 512 - 471 - 5073 ( fax )\n>\n> titman @ mail . utexas . edu\n>\n- nondisclosure agreement . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.253+0000", "entityId": 7501, "properties": {"text": "Subject: mike ' s laptop\nvince ,\ncheck it out !\nthanks for your advice on strategic problem - solving\nthanks again\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 05 / 24 / 2000\n07 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhenry moreno\n05 / 23 / 2000 06 : 00 pm\nto : mike a roberts / hou / ect @ ect\ncc : grace e warren / hou / ect @ ect , kevin g moore / hou / ect @ ect , david\nwile / hou / ect @ ect , chris bowling / hou / ect @ ect , john p tollefsen / hou / ect @ ect ,\nbob hillier / na / enron @ enron , roberto deleon / corp / enron @ enron , mark\nhall / hou / ect @ ect\nsubject : re : request for help\nmr . roberts ,\ni am glad we were able to reach a practical solution for you without going\ntoo much against the grain of enron corp . ' s it policy and standards .\nthanks to david wile and mark hall in formulating a solution that addresses\neveryone ' s needs .\nin summary ,\nyour contingency and recovery machine ( laptop ) will be imaged for win 2000\napplications will be evaluated for compatibility\nthis will allow you to use the machine as a back - up to gather weather data\noff the internet ( via independent dial - out line ) in case the normal enron\nnetwork architecture is unavailable .\ni will follow - up to make sure we capture the one exception to the policy and\nstandard that surfaced ( local admin rights on the laptop for development\nactivity ) . irm / roberto deleon will facilitate with a risk acceptance request\nform .\nthanks again ,\nhenry moreno\ninformation risk management ( irm )\nfrom : mike a roberts 05 / 23 / 2000 10 : 29 am\nto : henry moreno / hou / ect @ ect\ncc : grace e warren / hou / ect @ ect , kevin g moore / hou / ect @ ect\nsubject : request for help\nwhat i have :\na . i have an ibm thinkpad and a cd for windows 98\nb . i got the ibm from richard weeks . i bought the windows 98 .\nc . i have a valid business need to get windows 98 on the ibm\na . my job requires a totally independent backup to access data off the\ninternet and process same for trader ' s report\nb . this must be done 7 days per week in the early am .\nc . i have new equipment that doesn ' t run on nt\ni . audio file generator ( nomad )\nii . video file generator ( intel )\nd . i will also be loading office 2000 ( which i have )\nthe problem :\na . when i travel , terminal server doesn ' t work ( last time i spent several\n$ hundred trying )\nb . on the weekends , terminal server unacceptably slow ( requiring someone to\ncome in sat & sun )\nc . when we move internally , things go wrong ( this monday we got switched from\n100 megabytes to 10 mega bytes ) - trader ' s report not ready on time\nd . i currently have no stand - alone backup for contingency purposes\nwhat i need :\ni need help putting windows 98 put on my thinkpad\n( when i reformatted and loaded , it did not recognize the modem )\nthere should be no security risk because this system will be totally\nindependent of enorn system ( just usinf the phone )\ncan you approve someone to help me load it up ? ? ? thank you .\nmike roberts\nvice president , research\nx 3 - 5701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.259+0000", "entityId": 7502, "properties": {"text": "Subject: ipps in ercot\njim ,\ncan we meet on friday to discuss this topic .\nthe person who supports power , grant masson ,\nwill be out for the next two days .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.264+0000", "entityId": 7503, "properties": {"text": "Subject: your king ' s college london conference\nhi lane\ni * will * be free to speak at your conference on 12 th july , so put my name\ndown . i will give a talk on my \" diagrammatic approach to real options \" .\nwill you have a laptop projector available ? do you require any advance\nsubmission of material ?\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.271+0000", "entityId": 7504, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.276+0000", "entityId": 7505, "properties": {"text": "Subject: reviewer approval\nplease note that your employees have suggested the following people to\ncomplete a feedback form on their behalf . you will need to access the\nperformance management system ( pep ) to either approve or decline these\nsuggested reviewers . once you have approved the suggested reviewers they\nwill be notified and can begin completing the feedback form .\nyour list of employees that have suggested reviewers are listed below :\ndate suggested : may 19 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : kollaros , alexios\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : krishnarao , pinnamaneni v", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.281+0000", "entityId": 7506, "properties": {"text": "Subject: re : real options article\nsteve ,\nthe journal of risk is a more technical and serious publication\nthan risk magazine .\nif the article is published it will give you more exposure in\nthe academic circles . i think it will be a significant\naccomplishment .\non the downside , it does not receive the same wide circulation as risk\namong the practitioners .\ni can also see the reason behind the recommendation given\nby navroz : the article is fairly long for risk .\nsteven leppard\n05 / 23 / 2000 05 : 39 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : real options article\nvince\nany thoughts on this proposal ?\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 05 / 23 / 2000\n11 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" navroz patel \"\n05 / 23 / 2000 11 : 37 am\nplease respond to \" navroz patel \"\nto :\ncc :\nsubject : real options\nsteven ,\nafter further consultation with the technical editor , we feel that your work\nwould find a more suitable environment for exposure in the journal of risk .\n?\nif you email a copy of your work ( to the editor - in - chief , philippe jorion )\nand outline what has happened to :\n?\n? pjorion @ uci . edu\n?\nthen i am sure that they will be keen to give due consideration .\n?\nthank you for your interest and sorry for the delay in coming to this\ndecision .\n?\nbest wishes ,\n?\nnavroz patel ,\ntechnical assistant , risk magazine .\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.289+0000", "entityId": 7507, "properties": {"text": "Subject: re : super saturday , june 3 , 2000\ndave ,\ni will be glad to participate .\nvince\nenron north america corp .\nfrom : david w delainey 05 / 23 / 2000 02 : 11 pm\nsent by : kay chapman\nto : sally beck / hou / ect @ ect , raymond bowen / hou / ect @ ect , wes\ncolwell / hou / ect @ ect , janet r dietrich / hou / ect @ ect , jeff donahue / hou / ect @ ect ,\nw david duran / hou / ect @ ect , mark e haedicke / hou / ect @ ect , gary\nhickerson / hou / ect @ ect , mike jakubik / hou / ect @ ect , scott\njosey / corp / enron @ enron , john j lavorato / corp / enron @ enron , rodney\nmalcolm / hou / ect @ ect , george mcclellan / hou / ect @ ect , julia murray / hou / ect @ ect ,\njere c overdyke / hou / ect @ ect , david oxley / hou / ect @ ect , kevin m\npresto / hou / ect @ ect , brian redmond / hou / ect @ ect , jeffrey a\nshankman / hou / ect @ ect , john thompson / lon / ect @ ect , james a ajello / hou / ect @ ect ,\nedward ondarza / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc : patti thompson / hou / ect @ ect , marsha schiller / hou / ect @ ect , shirley\ntijerina / corp / enron @ enron , christy chapman / hou / ect @ ect , tina\nrode / hou / ect @ ect , janette elbertson / hou / ect @ ect , stella l ely / hou / ect @ ect ,\nnicole mayer / hou / ect @ ect , tonai lehr / corp / enron @ enron , kimberly\nhillis / hou / ect @ ect , ana alcantara / hou / ect @ ect , yolanda ford / hou / ect @ ect ,\ncarolyn george / corp / enron @ enron , donna baker / hou / ect @ ect , rhonna\npalmer / hou / ect @ ect , felicia doan / hou / ect @ ect , katherine benedict / hou / ect @ ect ,\nbarbara lewis / hou / ect @ ect , terrellyn parker / hou / ect @ ect , dusty warren\npaez / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , nicki daw / na / enron @ enron , kay\nchapman / hou / ect @ ect\nsubject : super saturday , june 3 , 2000\nduring our off - site at columbia lakes recently , we identified areas in ena\nwhere significant gaps exist that need filling at the analyst and associate\nlevel . we have scheduled an off - cycle super saturday on june 3 , 2000 and i\nwould like your participation as an interviewer . we will need approximately\n25 - 30 interviewers to fill approximately 30 associate & analyst positions . i\nam counting on everyone making themselves available on the third to\nfacilitate this priority action item .\nted bland will be forwarding information concerning the event to each of you\nearly next week .\nthank you for your participation .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.296+0000", "entityId": 7508, "properties": {"text": "Subject: possible summer internship with enron\ngood morning ainsley :\na copy of your resume was forwarded to vince kaminski and the research\ngroup of enron corp . they are very interested in talking with you about the\npossibility of a summer internship with the research group .\nplease let us know if you would be interested and we will arrange either\na telephone interview or bring you into the office for an interview .\nyou may contact me at :\nshirley crenshaw\nadministrative coordinator\nenron corp . research\ntelephone : 713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com\nlook forward to hearing from you ainsley .\nsincerely ,\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.301+0000", "entityId": 7509, "properties": {"text": "Subject: re : telephone interview\nhi darlene :\nvince kaminski and the research group would like to bring todd perry in\nfor an interview .\nthey have already had a \" telephone interview \" and feel like he may be a\ngood fit somewhere in the research group . a copy of his resume is attached .\nhe will be able to come on friday , june 2 .\nplease contact him and arrange his travel . when this is completed , call\nme and we will set up the interview schedule .\nthe interviewers would be :\nvince kaminski\nstinson gibner\nkrishna krishnarao\ngrant masson\nzimin lu\nvasant shanbhogue\nif you have any questions , please call me .\nthanks !\nshirley\ntodd a . perry\n- resume 2 . doc\ntodd a . perry\ndepartment of finance 541 . 346 . 1341 ( voice )\nlundquist college of business 541 . 346 . 3341 ( fax )\n1208 university of oregon\neugene , or 97403 - 1208\nhttp : / / darkwing . uoregon . edu / ~ taperry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.305+0000", "entityId": 7510, "properties": {"text": "Subject: re : resume\nthanks , vince - -\nvince j kaminski\n05 / 22 / 2000 03 : 43 pm\nto : colleen sullivan / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : resume\ncolleen ,\nwe are looking at some fab 133 related issues and we need all the help we can\nget .\nwe can hire ainsley as a temp ( outside the a & a pool - they closed the list\nfor the summer ) .\nwe shall contact her directly and ask if she is interested .\nvince\np . s . shirley , please set up a phone interview for me and datren .\nfrom : colleen sullivan 05 / 19 / 2000 11 : 26 am\nto : jean mrha / enron communications @ enron communications , robert\nsuperty / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect , hunter s\nshively / hou / ect @ ect , scott neal / hou / ect @ ect , phillip k allen / hou / ect @ ect ,\nfred lagrasta / hou / ect @ ect , craig breslau / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , sally beck / hou / ect @ ect , brad mcsherry / hou / ect @ ect ,\ngeorge smith / hou / ect @ ect , edward terry / hou / ect @ ect , katherine l\nkelly / hou / ect @ ect , randall l gay / hou / ect @ ect , beth perlman / hou / ect @ ect , ed\nmcmichael / hou / ect @ ect , stephanie miller / corp / enron @ enron\ncc :\nsubject : resume\nif you are looking for any summer interns , please take a look at this\nstudent ' s resume . she ' s a junior at ut in the honors business program ,\nextremely intelligent , with great potential . my sister was one of her\nteachers at humble high school and speaks very highly of her character ,\nintelligence and drive . she always tells me to remember her name because\ni ' ll hear it again some day . if you know of anyone else who may be\ninterested , let me know and i will forward her resume to them .\n- resume _ gaddis . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.310+0000", "entityId": 7511, "properties": {"text": "Subject: address\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 23 / 2000\n06 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkeith alan baggerly @ stat . rice . edu on 05 / 23 / 2000\n09 : 46 : 41 am\nsent by : kabagg @ stat . rice . edu\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : address\nvince ,\nthanks for chatting with me yesterday ! just a brief note\nabout info we talked about that i would find useful :\na ) your papers\nb ) the latest version of managing energy price risk\nc ) data\nthanks !\nkeith\nmy address is :\nkeith baggerly\n4038 drummond\nhouston , tx 77025", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.314+0000", "entityId": 7512, "properties": {"text": "Subject: re : managing energy price risk articles\nross ,\ni shall call risk on thursday .\nvince\nshirley , please , remind me about it .\nfrom : ross prevatt 05 / 23 / 2000 12 : 19 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : managing energy price risk articles\nhi vince , i have a quick question for you . the eol folks want to put a\ncouple of articles from the risk book ( managing energy price risk ) on the\ninternet . i told them that would be a copywrite violation . is there\nsomeone at risk they could call to get permission for this , or is it even\nworth calling ? thanks\nross", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.319+0000", "entityId": 7513, "properties": {"text": "Subject: norberto\nelizabeth ,\ni want to discuss the issue of the compensation of norberto with my boss .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.323+0000", "entityId": 7514, "properties": {"text": "Subject: re : cplex\ni agree . i ( or chonawee ) will go ahead and place the order for cplex . i think\nthat this will provide us with a great set of tools .\n- samer\npinnamaneni krishnarao @ ect\n05 / 24 / 00 01 : 34 pm\nto : samer takriti / enron communications @ enron communications @ enron , tom\nhalliburton / corp / enron @ enron\ncc : grant masson / hou / ect @ ect , stinson gibner / hou / ect @ ect , chonawee\nsupatgiat / corp / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : cplex\ni talked to vince about the optimization software issue . vince said that if\nthere are technical reasons for having two different packages and the\nbenefits outweigh the costs of maintaining two licenses , we can go ahead and\nbuy both . in my view , it is a great advantage to have both , as each has its\nown strengths relative to the other . we have spent some time trying to come\nup with one package that solves all of our problmes without success . there is\nno point is wasting more time on this effort . let ' s go ahead and purchase\nboth .\nkrishna .\nfrom : samer takriti @ enron communications on 05 / 24 / 2000 10 : 22 am\nto : tom halliburton / corp / enron @ enron\ncc : grant masson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , chonawee supatgiat / corp / enron @ enron\nsubject : re : cplex\ntom ,\nvince prefers to have one software package ( if possible ) . it is my\nunderstanding that special ordered sets are recognized automatically\n( internally ) by cplex . this seems to be the case for both cplex and osl\naccording to ampl ' s web page and other references ( check\nlorderedsetsfeature ) . as a result , the cplex people feel that there is no\nneed to provide the user with the tools to represent special - ordered sets in\nopl . as a matter of fact , the incapability of xpress to recognize them\nautomatically concerns me .\nif you have special requirements , c code may be used to pass the information\nto the solver ( which is straight forward ; all of chonawee ' s testing was done\nthis way ) . chonawee ' s benchmark shows a superior performance by cplex ( which\nyou indicated yourself in an earlier message ) .\nif you feel that xpress is the only way to go , then feel free to purchase it\n( the purchase order is on hold for the time being ) . however , we need to check\nwith vince first . i strongly feel that we should have one solver in order to\nminimize cost and contractual headaches .\nlet us try to get this issue resolved by this afternoon . thanks .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.328+0000", "entityId": 7515, "properties": {"text": "Subject: friday brown bag for options pricing\nhello , researchers :\nthis friday we have paulo issler speaking on \" implied trees and edgworth\nbinomial trees \" .\ntime : 12 noon , may 26 ; place : 19 c 2 .\nthe brown bag series has been a success thanks to your participation . hope to\nsee you again this friday .\nzimin ,\nalex .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.333+0000", "entityId": 7516, "properties": {"text": "Subject: reviewer approval\nplease note that your employees have suggested the following people to\ncomplete a feedback form on their behalf . you will need to access the\nperformance management system ( pep ) to either approve or decline these\nsuggested reviewers . once you have approved the suggested reviewers they\nwill be notified and can begin completing the feedback form .\nyour list of employees that have suggested reviewers are listed below :\ndate suggested : may 19 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : kollaros , alexios\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : krishnarao , pinnamaneni v\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : shanbhogue , vasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.338+0000", "entityId": 7517, "properties": {"text": "Subject: re : possible summer internship with enron\nhello ainsley :\nwe are so glad you are interested ! i spoke with vince kaminski and the\nprocedure is to usually conduct a telephone interview first . this will let\nus know exactly where your interests are and establish where you might\nfit within our organization .\nplease let me know your availability and the best time to reach you on\nthursday ( the 25 th ) or friday ( the 26 th ) afternoon from 1 : 00 pm to 5 : 00 pm .\nalso please let me have the telephone number where you may reached\nand we will call you . it is easier that way since there will be several of\nus involved in the interview . the interview will usually last an hour or an\nhour and a half .\nthank you ainsley !\nsincerely ,\nshirley crenshaw\n713 - 853 - 5290\n\" ainsley gaddis \" on 05 / 23 / 2000 07 : 21 : 43 pm\nto : \" shirley crenshaw \"\ncc :\nsubject : re : possible summer internship with enron\nhello ms . crenshaw ,\nthank you so much for getting back to me so quickly . i am very interested\nin meeting with mr . kaminski and the research group . i am available to come\ninto the office any time wednesday , thursday or friday . please let me know\nwhat time is most convenient for you . i look forward to hearing from you\nsoon !\nsincerely ,\nainsley gaddis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.343+0000", "entityId": 7518, "properties": {"text": "Subject: professor bambos ' itinerary\nhello all :\nattached please find the itinerary for professor bambos . if any corrections\nneed to be made , please let me know .\nthanks and have a great day !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.348+0000", "entityId": 7519, "properties": {"text": "Subject: cplex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tom halliburton / corp / enron on 05 / 25 / 2000\n09 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n05 / 22 / 2000 11 : 56 am\nto : grant masson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron\ncc :\nsubject : cplex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n05 / 22 / 2000 11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : samer takriti @ enron communications on 05 / 22 / 2000 11 : 46 am\nto : stinson gibner / hou / ect @ ect\ncc : chonawee supatgiat / corp / enron @ enron , ravi thuraisingham / enron\ncommunications @ enron communications\nsubject : cplex\nstinson ,\nkrishna mentioned that tom wants to buy ( may have bought ) xpress . tom ' s\nargument is that xpress ' s language allows the user to express special ordered\nsets ( certain types of constraints ) in a convenient fashion . chonawee and i\njust talked to two of cplex ' s consultants ( whom i know personally ) . they both\nmentioned that these sets are recognized and handled implicitly within cplex .\nas a result , there is no need for their modeling language to express these\nconstraints explicitly .\nas a result , i feel that we should go with cplex . both chonawee and krishna\nseem to have the same impression . i need to get a final vote on this one so\nthat we can order the licenses . this has been dragging on for too long .\n- samer\n[ chonawee , my address book does not recognize ena users . please forward to\ngrant , krishna , and tom ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.352+0000", "entityId": 7520, "properties": {"text": "Subject: eol\ndan ,\ni am forwarding you the summary of the information for eol that we can\nprovide . i shall talk to risk magazine to settle the\ncopyright issues .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 25 / 2000\n05 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mike a roberts 05 / 25 / 2000 02 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : eol\nvince -\nas a follow - up to this afternoon ' s telephone conversation , the following four\ncategories of information were discussed with dan diamond for inclusion in\nthe research group ' s contribution to eol content :\n1 . published articles authored by research group members\na . mostly risk magazine stuff\nb . copyright issues\n2 . research intelligence articles\na . backlog of around 50 articles\nb . needs screening prior to release\nc . review system in place for future articles\nd . weekly\n3 . technical analysis\na . cross commodity analyses\nb . intranet material ready for internet\nc . generic informative content available\n4 . streaming video of weather\na . daily 2 - 3 minutes capsule\nb . toned - down verson of whats given to traders\nc . energy - focused\n- - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.357+0000", "entityId": 7521, "properties": {"text": "Subject: storage model back - testing\nbrad ,\nwith your success in automation of the testing , we can go ahead to test\nstorage cycles as follows\napril 95 - march 96\napril 96 - march 97\napril 97 - march 98\napril 98 - march 99\napril 99 - march 00\nthis way we can collect 5 years data for further analysis .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.361+0000", "entityId": 7522, "properties": {"text": "Subject: re : conference may 31 on energy derivatives in toronto\nphelim ,\ni shall be glad to join you for dinner on sunday .\ni shall be also available for the panel discussion .\ni would like to thank you one more time for the invitation\nto speak at the conference .\nvince\nphelim boyle on 05 / 12 / 2000 03 : 47 : 59 pm\nto : vince . j . kaminski @ enron . com , amy aldous ,\npconcessi @ deloitte . com , ross raymond - cmmrcl ops\ncc :\nsubject : conference may 31 on energy derivatives in toronto\nvince\nthanks again for agreeing to speak at our conference .\nit is attracting considerable interest . .\nis it possible for you to send us copies of your slides by may 18 to meet our\ndeadline for\npreparing the material . ? if you have ? a related paper available that covers\nsome of the same material that would do instead but\nnaturally we would prefer the slides .\ni would like to mention again the ? ? the pre - conference dinner at\n7 pm on sunday may 30 for the speakers\nwe hope very much you can be present\ni was also hoping you would be available for the last ? session of the day to\nbe panel member\nthe provisional title ? is\nmanaging risk in illiquid markets\nthe chair is pat concessi of deloitte and touche\nthe panel last from 3 . 30 until 4 . 30 and we would like panel members should\nspeaker for\na few minutes and take questions from the floor .\nin the meantime if you have any questions please let amy or myself know\nsincerely\nphelim p boyle\n?\n- -\nphelim p boyle\ndirector\ncentre for advanced studies in finance ,\nuniversity of waterloo ,\nwaterloo , ontario\ncanada n 2 l 3 gl\ntel ? 519 885 1211 ( 6513 )\nfax 519 888 7562\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.366+0000", "entityId": 7523, "properties": {"text": "Subject: risk 2000 panel discussion\nhello everyone :\nvince kaminski would be available for a conference call on wednesday ,\nmay 31 at 10 : 00 or 11 : 00 am est . the rest of the day is rather full .\nplease let me know if either time is convenient for you . if not , maybe we\ncould do it on june 1 - he is free most of the day with the exception of\n12 : 30 - 2 : 00 est .\nlook forward to hearing from you .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.370+0000", "entityId": 7524, "properties": {"text": "Subject: risk 2000 panel discussion\ndear all ,\n?\nwould like to set a conference call to discuss content for the panel\ndiscussion at risk 2000 in boston on 14 june . perhaps i can suggest\nwednesday 31 may at noon est . i ' m on london time and am quite flexible if\nyou would like to do earlier or indeed on another day .\n?\nthe panellists are -\n?\nvince kaminski , enron corp\nrichard jefferis , koch energy trading\nsteven bramlet , aquila\n?\nthe discussion topic is ' effectively applying weather derivatives '\n?\ni think we need to establish a series of questions around which to\nfacilitate discussion . we currently don ' t have a moderator and perhaps one\nof you could take this role on .\n?\ni look forward to hearing from you .\n?\nthanks , oliver\n?\n?\n?\ndirect : + 44 ( 0 ) 20 7484 9880\n?\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 ( 0 ) 20 7484 9800 ? email : oliver @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.375+0000", "entityId": 7525, "properties": {"text": "Subject: here ' s your chance\nwhat do we need to know to make ebs a successful business ?\nwe need to identify 5 to 10 critical issues in order to help m . i . t . professor\ngabriel bitran get his students focused on areas of interest to ebs .\nyour suggestions for interesting and useful research topics are due by next\nwednesday morning , may 31 . tom gros will then forward the topics to\nprofessor bitran .\nstinson\np . s .\ni really need your help on this .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.379+0000", "entityId": 7526, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.384+0000", "entityId": 7527, "properties": {"text": "Subject: final dates for houston visits\ndear all ,\nshirley has kindly arranged the accommodation for these new dates - i ' d be\ngrateful if we could stick to the dates that you confirmed to me below as it\nwill be next to impossible to change these again . of course , it should be\nfine for you to arrive a day early to lose your jet lag and depart a day late\nso that you get a full week in the office .\nmatthew williams mon 31 st july through friday 18 th august\nsteve leppard mon 21 st aug through fri 15 th sep\nkirstee hewitt mon 18 th sep through friday 13 th oct\nben parsons mon 16 th oct through friday 10 th nov\nlet me know if you have any more logistical questions - i might even be able\nto suggest some nice restaurants ! for cars , i think that is best arranged\nfrom london when the flight is booked . by the way , you will all need a full\nuk drivers licence to hire the car and a passport with more than a six ( ? )\nmonths to go before expiry .\nshirley - would it be best to use the usual 3 coupons on the guest car park\nticket method for parking ?\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.388+0000", "entityId": 7528, "properties": {"text": "Subject: re : re [ 4 ] : greetings from london ( to enron )\niris ,\nwe can invite you for an interview to houston .\nwhat would be a the time for you ?\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 11 : 32 : 04 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 4 ] : greetings from london ( to enron )\nhi ,\nthank you for your prompt response . i am interested in any contacts you\nmay have in your rolodex .\nalso , i would be opened to talk to enron as well . please let me know\nmore\ndetails .\nkind regards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 16 : 19 gmt\nto : iris mack\ncc : vince . j . kaminski , stinson . gibner , grant . masson , pinnamaneni . krishnarao ,\nvasant . shanbhogue\nbcc :\nsubject : re : re [ 2 ] : greetings from london ( to enron )\niris ,\ni shall go through my rolodex and try to find some good leads for you . i left\ninvestment banking 8 years ago and this field changes very fast .\nalternatively , would you be interested in a company like enron\nor another energy company in houston ?\nplease , let me know .\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 09 : 20 : 01 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 2 ] : greetings from london ( to enron )\nhi ,\nhow are you ? thank you kindly for your email . sorry i have not\nresponded\nsooner .\ncurrently i am working in derivatives structured products and risk\nmanagement at bnp paribas in london . although i currently enjoy living and\nworking in london , i may need to return to the states - because of my mother ' s\nfailing health .\ndo you know of any good contacts at investment banks that i may forward\nmy\ndetails to ?\nfor your information , i have attached my cv . ( please see attached file :\niris marie mack . doc ) .\nthank you in advance for your time and consideration .\nkind regards ,\niris mack\n44 ( 0 ) 20 7595 8665 ( work )\n44 ( 0 ) 20 7229 9986 ( home )\n( see attached file : iris marie mack . doc )\ninternet\nfrom : vince . j . kaminski @ enron . com on 04 / 04 / 2000 15 : 03 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : greetings from london ( to enron )\niris ,\nplease , feel free to give me a call when you have a few minutes .\ni shall be glad to chat with you .\nvince\niris . mack @ paribas . com on 03 / 30 / 2000 02 : 24 : 27 am\nto : vkamins @ enron . com\ncc : denis . autier @ paribas . com\nsubject : greetings from london ( to enron )\ndear dr . kaminski ,\nhow are you ? it was nice to meet you at the real options conference\nin\nnyc .\ni was intrigued by some of the comments in your conference talk . in\nparticular , by your use of real options to hedge financial options . this\nis\nsomething i am interested in as well .\nwhen you have some time , could we chat about this topic in a bit more\ndetail ?\nthanks for your time and consideration . hope to hear from you soon .\nregards ,\niris mack\n- - - - - - - - - - - - - - - -\nthis message is confidential ; its contents do not constitute a\ncommitment by bnp paribas group * except where provided\nfor in a written agreement between you and bnp paribas group * .\nany unauthorised disclosure , use or dissemination , either\nwhole or partial , is prohibited . if you are not the intended\nrecipient of the message , please notify the sender immediately .\n* bnp paribas group is a trading name of bnp sa and paribas sa\nce message est confidentiel ; son contenu ne represente en\naucun cas un engagement de la part du groupe bnp paribas *\nsous reserve de tout accord conclu par ecrit entre vous et le\ngroupe bnp paribas * . toute publication , utilisation ou diffusion ,\nmeme partielle , doit etre autorisee prealablement . si vous n ' etes\npas destinataire de ce message , merci d ' en avertir immediatement\nl ' expediteur .\n* le groupe bnp paribas est le nom commercial utilise par bnp sa et paribas\nsa\n( see attached file : iris marie mack . doc )\n- iris marie mack . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.393+0000", "entityId": 7529, "properties": {"text": "Subject: re : possible summer internship with enron\nvince and datren :\ni have scheduled a telephone interview with ainsley this afternoon ( thursday )\nat 2 : 00 pm . her telephone no . is 281 - 852 - 9116 .\nyou can use conference room ebl 938 .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 05 / 25 / 2000\n07 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ainsley gaddis \" on 05 / 24 / 2000 04 : 09 : 07 pm\nto :\ncc :\nsubject : re : possible summer internship with enron\nhi ms . crenshaw !\nthe best time for the interview would be tomorrow , thursday , around 2 : 00 .\nyou can reach me at 281 - 852 - 9116 . talk to you then !\nsincerely ,\nainsley gaddis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.397+0000", "entityId": 7530, "properties": {"text": "Subject: re : rice / enron finance seminar series\nthank you , vince . we look forward to another successful seminar series .\ni will check into getting a mug design and get cost figures for you . we ' ll\nget something done this summer so that we are ready to go for the fall .\nbbo\nat 02 : 45 pm 5 / 25 / 00 - 0500 , you wrote :\n> barbara ,\n>\n> we shall extend the funding for the seminar in the fall for the next\n> season .\n>\n> i shall be glad to cover the cost of a coffee mug with our logos . can you\n> identify a\n> producer who can come up with a design ?\n> i think that we may use the company that produces\n> rice memorabilia .\n>\n> i shall run the design through our pr department and then we can have it\n> produced .\n>\n> vince\n>\n>\n>\n>\n>\n> barbara ostdiek on 05 / 24 / 2000 01 : 15 : 12 pm\n>\n> to : vince . j . kaminski @ enron . com ( vince kaminski )\n> cc :\n> subject : rice / enron finance seminar series\n>\n>\n> vince :\n>\n> i have checked with our accounting folks and it looks like the balance in\n> the seminar account is under $ 5000 . this will get us going in the fall so\n> we have some flexibility for the next enron funding - whatever works best\n> on your end .\n>\n> also , i am interested in pursuing the idea of designing some sort of a gift\n> - a coffee cup perhaps - to give to our seminar guests . i think we could\n> do something neat with the enron and rice / jgs logos that folks would be\n> happy to display on their shelf or desk top . what do you think ?\n>\n> as always , thank you so much for your support of our efforts over here . it\n> is truly appreciated .\n>\n> bbo\n>\n>\n>\n> barbara ostdiek 713 - 348 - 5384 ( voice )\n> assistant professor of finance 713 - 348 - 5251 ( fax )\n> jones graduate school of management ostdiek @ rice . edu\n> rice university www . ruf . rice . edu / ~ ostdiek /\n> 6100 main street - ms 531\n> houston , tx 77005 - 1892\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.403+0000", "entityId": 7531, "properties": {"text": "Subject: re : australian energy risk 2000\nlucie ,\nyes , i have received the package .\nvince\n\" lucie deathridge \" on 05 / 24 / 2000 05 : 31 : 09 pm\nplease respond to \" lucie deathridge \"\nto :\ncc :\nsubject : australian energy risk 2000\nthank you for agreeing to speak at the australian energy risk 2000\nconference in sydney in july . last week i sent a speaker pack to you . i\nwould be grateful if you would confirm receipt of this by return of email .\nin the event that you have not received it please let me know immediately\nand send me your full contact details . i am the co - ordinator of this\nconference and please do not hesitate to contact me if you have any queries .\nregards\nlucie deathridge\nconference co - ordinator\nrisk publications\n?\ntel : ( + 44 ) ( 0207 ) 484 9867", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.407+0000", "entityId": 7532, "properties": {"text": "Subject: re : executive program on credit risk modeling\ntanya ,\nplease , ask him to make the arrangements .\nvince\ntanya tamarchenko\n05 / 25 / 2000 11 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : executive program on credit risk modeling\nyes , i think it is useful for vincent to attend the program .\ntanya .\nvince j kaminski\n05 / 22 / 2000 09 : 50 am\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : executive program on credit risk modeling\ntanya ,\nanother thought .\nshould vincent go as well ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 22 / 2000\n09 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 22 / 2000 08 : 10 am\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : executive program on credit risk modeling\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 22 / 2000\n08 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kashiwamura , shelby \" on 05 / 18 / 2000\n02 : 03 : 19 pm\nto : \" isero , alicia \" , \" kashiwamura , shelby \"\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : executive program on credit risk modeling\nsubject : announcement : executive program on credit risk modeling\ncredit risk modeling for financial institutions\noctober 15 - 20 , 2000\nat stanford university business school\nrisk management specialists , stanford business school professors of finance\ndarrell duffie and kenneth singleton will be repeating their successful\nexecutive program on credit risk pricing and risk management for financial\ninstitutions . the course is created for risk managers , research staff , and\ntraders with responsibility for credit risk or credit - related products ,\nincluding bond and loan portfolios , otc derivative portfolios , and credit\nderivatives .\nthis program includes :\n* valuation models for defaultable bonds , otc derivatives , and credit\nderivatives , with empirical applications to corporate and sovereign markets\n* empirical and theoretical assessments of models for measuring credit\nrisk , with correlation , for portfolios\n* the strengths and limitations of current practice in credit risk\nmeasurement\n* practical issues in implementing credit modeling and risk systems\n* estimation of default and transition probabilities , and the\ncorrelations among the default risks of publicly traded companies , from\nhistorical data\napplication form :\ncredit risk modeling for financial institutions\nstanford , october 15 - 20 , 2000\nthis form may be completed and returned by email , or may be printed and sent\nby fax to :\nstanford gsb executive education programs\nfax number : 650 723 3950\nyou may also apply and see more detailed information by visiting our web\nsite at :\nwww . gsb . stanford . edu / exed / crm\napplications will be acknowledged upon receipt . if you have not received an\nacknowledgement within two weeks , please contact us .\nplease complete all sections . all information is kept strictly confidential .\nname :\nput an x beside one , please : male : female :\ncitizenship :\njob title :\ncompany :\nyour company ' s main activity :\nbusiness mailing address :\nbusiness phone ( all codes please ) :\nbusiness fax :\nemail address :\nhome address :\nhome phone :\nnickname for identification badge :\nemergency contact name :\nemergency contact phone :\ntitle of person to whom you report :\nyour job responsibilities and experience related to this course : ( please\nprovide a brief job summary here , or attach and send a biographical summary\ncontaining information relevant to your purpose and qualifications for the\ncourse . )\ncollege or university education : please list , by degree :\ncollege or university dates degree granted\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nplease note :\nall classes and discussions are conducted in english .\nin order to reserve a place in the course , the program fee of us $ 7 , 500 is\ndue upon notification of acceptance . this fee covers the tuition , single\nroom , meals , and all course materials ( including a proprietary manuscript on\ncredit risk pricing and measurement ) .\nour refund policy is available upon request .\nplease state the source from which you heard about this course :\nname and date :\nif you would like a hard copy brochure and application form , please contact :\n( make sure to include your mailing address )\nshelby m . kashiwamura\nprogram manager\nexecutive education\nstanford graduate school of business\n( 650 ) 723 - 9356 phone\n( 650 ) 723 - 3950 fax\nkashiwamura _ shelby @ gsb . stanford . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.412+0000", "entityId": 7533, "properties": {"text": "Subject: parking at 777 clay\nhi louis :\nwe will have several employees from the london office coming to houston\nthis summer ( they will be rotating ) beginning 7 / 31 / 00 . can we get a parking\nspace at 777 clay for them ? we only need one for 7 / 31 / 00 - 11 / 30 / 00 ( 4\nmonths ) .\nthe other alternative would be the stickers for allen center . do you still\nhave\nthem ?\nplease let me know .\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.416+0000", "entityId": 7534, "properties": {"text": "Subject: re : fax machine request ~ 05 - 19 - 2000\nwe received the new fax machine on yesterday .\nwe will also send it back today - may 26 , 2000\nwe will not use the fax machine as planned .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 05 / 26 / 2000 09 : 46\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n05 / 23 / 2000 05 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : fax machine request ~ 05 - 19 - 2000\ngoodmorning vince ,\nthis is a very much needed fax machine .\nmike gave approval for the new fax machine , also i spoke with shirley\nconcerning this matter .\nwe have some new clients that requires faxes with long distance locations\nand the new fax machine will ensure that it reaches them in record time .\nthanks\nkevin moore\nfyi\n- - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 05 / 23 / 2000 05 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\niain russell\n05 / 22 / 2000 02 : 10 pm\nto : kevin g moore / hou / ect @ ect\ncc : mike a roberts / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , lorie\nbelsha / hou / ect @ ect\nsubject : re : fax machine request ~ 05 - 19 - 2000\nkevin ,\njan lynn from pitney bowes will be contacting this afternoon to finalise\npaperwork + installation of the machine .\nthanks , iain . . . . . . . . . . . . . . . . . . .\nkevin g moore\n05 / 22 / 2000 01 : 46 pm\nto : iain russell / epsc / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\ncc :\nsubject : re : fax machine request ~ 05 - 19 - 2000\ni would like to request fax machince model - pb 9930 .\nthe location for this fax will be eb 3240 however , if arrival time is\n24 hours the location will be eb 3270 a .\nthanks\nkevin moore\nr . c . # 100038\nco . # 0011\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 05 / 22 / 2000 01 : 39\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\niain russell\n05 / 19 / 2000 01 : 23 pm\nto : kevin g moore / hou / ect @ ect , lorie belsha / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , mike a roberts / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : fax machine request ~ 05 - 19 - 2000\nkevin ,\nper your request , please see below :\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nnew facsimile machine information\nplease take a look @ the following and let me know , which fax machine you\nchoose or if you need information on something smaller , then i will have the\nvendor contact you directly to finalise installation . an enron director or\nabove { with signature authority to legally bind enron to a contract } will\nhave to sign off on the contract paperwork before the fax machine can be\ninstalled . delivery times on new machines are normally 3 - 5 working days but\neither vendor listed below will be able to provide a \" loaner \" should you have\na business need . please discuss the fax machine install date with the rep\nwhen ordering the equipment .\nif there is no existing fax line present , you will need to send a notes - mail\nto the move team { erica @ x 3 - 3185 or janelle @ x 5 - 7917 } requesting the\ninstallation of a new fax line . the move team can be found in the notes - mail\n\" ect address book \" .\nif you are an ees employee , you must first get new equipment approval from\nees budget control . contact susan mcleroy @ x 5 - 8066 or via notes - mail .\nif you are an ebs employee , you must first get new equipment approval from\nebs purchasing & budget control . contact paula corey @ x 3 - 9948 or martha\nreyna @ x 3 - 3491 . you can reach both of these people via notes - mail .\nif you are an ena employee , you must first get new equipment approval from\nena finance & budget control . contact lorie belsha @ x 3 - 9617 or via\nnotes - mail .\na note on the fax machines listed below :\nall the machines listed below come with a 2 nd paper tray and upgraded memory\n{ maxed by model ~ see below } as an enron standard from each vendor .\nall the fax machines listed below have a modem speed rated @ 33 . 6 kbps versus\nthe canon laserclass 7500 { example only } @ 14 . 4 kbps = new fax machine should\nbe noticeably quicker .\ndocument feeder capacity of the machines listed below are the same as the\ncanon laserclass 7500 { example only }\nmaintenance = models listed below have maintenance / repair coverage included\nin monthly $ total . there is no separate agreement ! toner / drum cartridges +\npaper + line charges are extra { not quoted }\ncontract pricing can change without warning , so please let me know asap if a\nvendor quotes you a different price to those listed below against the various\nmodels .\nif the fax machine is to be used in a trading type environment , here are some\nconsiderations :\nno more than 20 people per fax machine = take a look @ the fax machine\nplacement on eb 30 or eb 31 .\ndisregard any fax machine that does not have a 33 . 6 k modem and jbig\ncompression { or equivalent } .\nlook for memory upgrades & 2 nd paper tray included in monthly cost . { models\nquoted are loaded } .\nmaintenance is to be included in monthly cost { models quoted are covered } .\n* * * * * * * * * * * * * * * * * * * * *\nfrom pitney bowes\npb 2050\ncost : $ 95 . 00 per month on rental\nenron specs : this model has 10 megs of memory + a 2 nd paper tray as standard .\npitney bowes weblink , click here - - >\nthere are several of these fax machines located through out the enron\nbuilding and 3 allen center , including some on trading floors .\n* * * * * * * * * * * * * * * * * * * * *\npb 9930\ncost : $ 76 . 00 per month on rental\nenron specs : this model has 10 megs of memory + a 2 nd paper tray as standard .\npitney bowes weblink , click here - - >\nthere are several of these fax machines located through out the enron\nbuilding and 3 allen center , including some on trading floors .\n* * * * * * * * * * * * * * * * * * * * *\npb 9830\ncost : $ 55 . 00 per month on rental\nenron specs : this model has 5 megs of memory + a 2 nd paper tray as standard .\npitney bowes weblink , click here - - >\n* * * * * * * * * * * * * * * * * * * * *\nfrom panasonic communications direct\nuf - 885\ncost : $ 75 . 00 per month\nclick below for machine details { similar to the uf - 880 with 8 megs of memory +\n2 nd tray = no handset } :\nthere are several of these fax machines located through out the enron\nbuilding including some on trading floors .\n* * * * * * * * * * * * * * * * * * * * *\nthe above machines are designed for workgroup use .\nq ) how many people will be using this fax machine ?\nq ) how much usage will this fax machine have ?\n{ i . e . heavy = 40 faxes per day @ 20 pages / 60 faxes per day @ 2 - 3 pages or a\nlot less ? if \" heavy \" , either the pb 2050 , pb 9930 or uf 885 / uf 895 should fit\nyour needs = if 15 - 40 , the pb 9830 would probably be a better fit }\n* * * * * * * * * * * * * * * * * * * * *\ncontract details\nthe fax programs are an agreement between each end user of the fax machine\nand the relevant vendor , as follows :\npitney bowes\n36 month rental .\n30 day notice for termination of contract .\nno penalty for early termination of contract = call pb rep . and have the\nmachine picked up , making sure a receipt is given to you by the collecting\nrep .\nupgrade / downgrade available = $ 0 penalty .\nrep will be happy to discuss details with you and answer any questions on\nthese points .\npanasonic communications\n36 month lease rental .\n30 day notice for termination of contract before term expiration .\nno penalty for early termination of contract for office / department / location\nclosure .\nupgrade / downgrade available = $ 0 penalty .\nrep will be happy to discuss details with you and answer any questions on\nthese points .\n* * * * * * * * * * * * * * * * * * * * *\nplease note the following\nthe facsimile machine agreement is between the enron business unit / department\nrequesting the facsimile machine and the vendor .\nthe user or requester of the fax machine is responsible for invoice payment .\nenron property & services corporation is not responsible for the coding ,\nprocessing or payment of facsimile { fax } machine invoices .\nin order to return any old fax machine equipment , you must contact the\nleasing company that supplied the equipment and send them a certified letter\nthat terminates the agreement . if you terminate a contract within the\noriginal agreement period , you may be liable for penalty charges as a lot of\nfax machines are on a non - cancellable lease agreement . the vendor who\nsupplied the fax equipment will be able to let you know of any outstanding $\namounts for your existing equipment .\nif you are asked to pay outstanding $ amounts , be aware that some vendors\ninclude the cost of outright purchase of the old fax equipment = from the\ncontracts i have reviewed so far , you are under no obligation to purchase the\nold equipment .\nikon contact name for returns :\nbeth frank : phone = new # - - > 409 - 441 - 1262 { previously 281 - 355 - 6274 }\nbeth frank fax # = new # - - > 409 - 441 - 1266 { previously 281 - 355 - 5496 }\nbeth frank e - mail address ~ eafrank @ aol . com\nmarimon business systems contact name for returns :\ndon scott : phone = 713 - 686 - 6601\ndon scott fax # = 713 - 686 - 6676\n{ no e - mail address available }\n* * * please call me or e - mail me if it is a different vendor name on the\nmachine and i will respond with a contact name * * *\ncharges for fax machines are dependant upon manufacturer & model , with the\nperson responsible for the fax machine , paying the invoice . you must notify\nthe vendor of any changes relating to fax machine assignment { even if it is\nwithin the same group } = who the machine has been reassigned to { contact\nname } , the new contact phone # and the location of the machine .\n* * * * * * * * * * * * * * * * * * * * *\nfax machine supplies\nreplacement toner cartridges : most of these are available to enron through\ncorporate express @ savings over the fax vendor invoice price . these savings\ncan be significant , so please e - mail me if you would like more details .\n* * * * * * * * * * * * * * * * * * * * *\nplease call me if you have any questions .\nthanks , iain russell @ 713 - 853 - 6861\ncontracts supervisor administration\nenron property & services corp .\n* * * * * * * * * * * * * * * * * * * * *\n* * * * * * * * * * * * * * * * * * * * *\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nkevin g moore\n05 / 19 / 2000 12 : 42 pm\nto : iain russell / epsc / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : fax machine\niain ,\nplease , i am in need of a fax machine .\nit was brought to my attention that you\nmay have one available .\nplease inform me concerning this\nmatter , we need one a . s . a . p . .\nthanks\nkevin moore\nx 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.421+0000", "entityId": 7535, "properties": {"text": "Subject: re : risk 2000 panel discussion\nmy phone 816 - 467 - 3569\n- - - - - original message - - - - -\nfrom : shirley crenshaw [ mailto : shirley . crenshaw @ enron . com ]\nsent : friday , may 26 , 2000 9 : 17 am\nto : oliver @ risk . co . uk ; jefferid @ kochind . com ; sbramlet @ utilicorp . com\ncc : vince j kaminski\nsubject : risk 2000 panel discussion\ngood morning gentlemen :\ni will go ahead and schedule the conference call for wednesday , may 31 st\nat 11 : 00 am est ( 10 : 00 cst ) . please let me know the telephone numbers\nyou may be reached at and vince will call you .\nif you find you cannot do this , please let me know .\nthanks and have a wonderful weekend .\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 05 / 26 / 2000\n08 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n05 / 25 / 2000 03 : 54 pm\nto : oliver @ risk . co . uk , jefferid @ kochind . com , sbramlet @ utilicorp . com\ncc :\nsubject : risk 2000 panel discussion\nhello everyone :\nvince kaminski would be available for a conference call on wednesday ,\nmay 31 at 10 : 00 or 11 : 00 am est . the rest of the day is rather full .\nplease let me know if either time is convenient for you . if not , maybe we\ncould do it on june 1 - he is free most of the day with the exception of\n12 : 30 - 2 : 00 est .\nlook forward to hearing from you .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.425+0000", "entityId": 7536, "properties": {"text": "Subject: itinerary\nphelim ,\nfyi\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.430+0000", "entityId": 7537, "properties": {"text": "Subject: risk 2000 panel discussion\ngood morning gentlemen :\ni will go ahead and schedule the conference call for wednesday , may 31 st\nat 11 : 00 am est ( 10 : 00 cst ) . please let me know the telephone numbers\nyou may be reached at and vince will call you .\nif you find you cannot do this , please let me know .\nthanks and have a wonderful weekend .\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 05 / 26 / 2000\n08 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n05 / 25 / 2000 03 : 54 pm\nto : oliver @ risk . co . uk , jefferid @ kochind . com , sbramlet @ utilicorp . com\ncc :\nsubject : risk 2000 panel discussion\nhello everyone :\nvince kaminski would be available for a conference call on wednesday ,\nmay 31 at 10 : 00 or 11 : 00 am est . the rest of the day is rather full .\nplease let me know if either time is convenient for you . if not , maybe we\ncould do it on june 1 - he is free most of the day with the exception of\n12 : 30 - 2 : 00 est .\nlook forward to hearing from you .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.434+0000", "entityId": 7538, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.439+0000", "entityId": 7539, "properties": {"text": "Subject: re : mid year prc\nsoma ,\nyes , no problem .\nvince\nsoma ghosh\n05 / 26 / 2000 08 : 43 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mid year prc\nvince ,\nmay i put you down as one of my reviewers for my final prc within rac ?\nsoma", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.444+0000", "entityId": 7540, "properties": {"text": "Subject: new gas models preliminary schedule for next week\nvince ,\nhere are the topics that our london folks are interested in .\nhave a good weekend .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 05 / 26 / 2000 02 : 41 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp . - europe\nfrom : anjam ahmad 05 / 26 / 2000 08 : 12 am\nto : natasha danilochkina / lon / ect @ ect , haakon olafsson / lon / ect @ ect , mark\njones / lon / ect @ ect\ncc : zimin lu / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : new gas models preliminary schedule for next week\ndear all ,\nplease could you confirm your availability for meetings next week as follows : -\nwednesday 31 st may\noverview of uk gas products to be revalued\na ) wet gas swing deals ( teeside delivery )\nb ) liquids extraction options\ntime : 9 . 30 am to 11 . 30 am ( 1 1 / 2 hrs ) , swl 001\nzimin , anjam , natasha\nwednesday 31 st may\noverview of uk gas products to be revalued\nc ) virtual storage ( enbank )\nd ) dry gas swing deals\ntime : 3 pm to 4 . 30 pm ( 1 1 / 2 hrs ) , nel 002\nzimin , anjam , natasha\nwednesday 31 st may\nsimulation of uk gas forward curve\ntime : 5 pm to 6 pm ( 1 hr ) , nel 002\nzimin , anjam , natasha , haakon\nthursday lst june\nmodel modifications to accomodate uk products\ntime : 9 . 30 am to 11 . 00 am , nwl 003\nzimin , natasha , anjam\nfriday 2 nd june\nit requirements for trading / rm model\na ) booking / mtm\nb ) exposures and hedge ratios calculation\ntime : 9 . 30 am to 11 am , nwl 003\nzimin , mark jones , natasha\ninvitations to follow . . .\nthanks ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.448+0000", "entityId": 7541, "properties": {"text": "Subject: super saturday june 3 , 2000\ngentlemen - thanks for your support of ena ' s super saturday next week . i\nhave attached a preliminary schedule ( which will change i ' m surebut i will\nkeep you updated ) for your review . thanks again . ted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.453+0000", "entityId": 7542, "properties": {"text": "Subject: re : prospective 6 / 22 houston visit\nehud ,\njune 22 works for me . do you want to firm it up ?\nvince\n\" ehud i . ronn \" on 05 / 25 / 2000 06 : 45 : 49 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : prospective 6 / 22 houston visit\nvince ,\nmany thanks for your e - mail .\n> what about june 22 ? i have several trips in between may 25 and june 22 .\ni thank you for the invitation . may i at this time acquire an \" option \" to\nvisit on that date , with the finalization of the visit ' s timing to be\ncompleted early next month ?\nthanks and best regards ,\nehud\nehud i . ronn\ndepartment of finance\ncollege and graduate school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.458+0000", "entityId": 7543, "properties": {"text": "Subject: summer intern for the research group\nelizabeth ,\ncan you please direct me to someone to assist us in making an offer to a\nyoung lady we just interviewed ? we would like to bring her in as a summer\nintern the same way that we brought in james bradley aimone .\nshe will be reporting to stinson gibner and i believe she is available right\naway .\ni am attaching her resume .\nthanks for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.463+0000", "entityId": 7544, "properties": {"text": "Subject: move on may 30 th\nplease note : the weather team will move on may 30 th .\nwe will return to our location near the kitchen eb 3240 however ,\neach person in the group will have a desk in the area .\nwe will know longer be in separate locations .\nmike roberts eb 3240 a\njose marquez eb 3240 b\nkevin moore eb 3240 c\nvince kaminski eb 3240 d\npatricia tlapek eb 3240 e\nsam smith eb 3240 f\nelena chilkina eb 3240 g\nplease pack your desk on tuesday for the churn tuesday night .\nif you did not sit in this area listed above before , space is limited .\nplease label all boxes , telephones , computers , etc .\nthanks\nkevin moore\nany questions please call kevin moore x 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.471+0000", "entityId": 7545, "properties": {"text": "Subject: july conference on real options\nplease find attached the programs for two back - two - back conferences on real\noptions at cambridge university in uk . the two conferences are separate but\ncomplementary events . the first conference , co - sponsored with andersen\nconsulting and morgan stanley dean witter , on july 5 - 6 , is a professional\nconference on real options valuation in the information economy :\ninternet / high - tech / telecom , r & d / pharma , energy . for info . and online\nregistration see www . rogroup . com .\nthe second is the 4 th annual international conference on real options :\ntheory meets practice ( the annual industry event where academics and\npractitioners get together to share the latest developments on theory and\napplications ) , co - organized with u . cambridge on july 7 - 8 . for info . and\nonline registration see www . realoptions . org\namong the two events , we are pleased to present an extensive array of\npractitioner and academic presentations , sharing of experiences by corporate\nexecutives , and panel discussions by experts from leading organizations and\nuniversities . our keynote speaker this year will be myron s . scholes ,\nco - developer of the black - scholes option valuation .\ninterested participants must register for the conference ( preferably on\nline ) and indicate hotel preferences ( among 5 - 6 hotels ) by june 15\n( latest ) .\nwe look forward to seeing you at this exciting event , and would appreciate\nif you share this with interested colleagues .\n- camjuly 2000 profconference . doc\n- conf 4 program . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.475+0000", "entityId": 7546, "properties": {"text": "Subject: our mtg\nstinson , vince and vasant -\ni need to push our mtg back until this afternoon - i ' m just finishing a major\nmanipulation i needed to make of the data , and i need to rest a few hours\nbefore running the first analysis . sorry .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.480+0000", "entityId": 7547, "properties": {"text": "Subject: re : hello from london\nzimin ,\ni have a copy of the article .\ni agree with you . the model is\nessentially the same ( in intentions ) .\ni shall distributed the copy of the paper\nto the trades here . it explains\nwell the logic behind the model and it ' s\nan independent source .\nvince\nzimin lu\n05 / 30 / 2000 10 : 44 am\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : re : hello from london\nvince ,\ni got the article . i can make a copy for you when i get back .\nthe article is pretty much for marketing purpose . my reading\nfrom that paper is as follows :\n1 . solve optimal exercise bounday using stocastic dp ;\n2 . runing price trajectory to tracking storage level to give average storage\ncycling ;\nour model addresses the same issues , althrough maybe the implementation is\nnot quite the same .\ni will fax to you if i can find the article here .\nregards ,\nzimin\nvince j kaminski\n05 / 30 / 2000 09 : 56 am\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : hello from london\nzimin ,\nthere was an interesting article on gas storage modeling\nby people from camminus in the march issue\nof energy and power risk management .\nplease , see if you can get this article .\nvince\nzimin lu\n05 / 30 / 2000 04 : 59 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc : anjam ahmad / lon / ect @ ect\nsubject : hello from london\nvince and stinson ,\ni am in the london office this week . things are quite nice here . my host\nanjam arranged a full itinerary for me .\ntuesday is reserved for anjam to talk about various subjects including\ninflation modeling , power vol curve ,\nmean reverting price & vol model , and i will talk about the spot and\nmulti - factor models , xll . wednesday , i\nwill concentrate on the gas storage model with natasha danilochkina .\nthursday and friday i will talk to\nhaakan olafsson , mark jones , anjam , and natasha about uk gas forward curve\nsimulation , gas swing model ,\nand implementation issues of uk virtural storage model . i will give you a\nfull report when i get back .\nit is cold and rainy here in london . it makes me feel sunny and hot houston\nactually is not that bad .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.485+0000", "entityId": 7548, "properties": {"text": "Subject: re : conference\nphelim ,\nthanks again for the invitation to speak at the conference .\nthe program was very interesting and i learned a lot .\ni hope you can visit us in houston sometimes in the next few months .\nvince\nphelim boyle on 05 / 30 / 2000 10 : 11 : 26 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : conference\nvince\nthank you very much for coming to the conference and for\nyour excellent overview\nit was a pleasure meeting you\ni hope we can stay in touch\nphelim\n- -\nphelim p boyle\ndirector\ncentre for advanced studies in finance ,\nuniversity of waterloo ,\nwaterloo , ontario\ncanada n 2 l 3 gl\ntel 519 885 1211 ( 6513 )\nfax 519 888 7562", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.489+0000", "entityId": 7549, "properties": {"text": "Subject: re : alpbacher finanzsymposium 2000 - invitation for a speech on\n\" weatherderivatives \"\ndear mr . enthofer ,\ni regret to decline your kind invitation to speak at the alpbacher\nfinanzsymposium .\ni have another engagement in the beginning of october in paris .\nvince kaminski\nfinance trainer on 05 / 30 / 2000 08 : 02 : 42 am\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : alpbacher finanzsymposium 2000 - invitation for a speech on\n\" weatherderivatives \"\ndear mr . kaminski !\nwe are the organizer of the alpbacher finanzsymposium which is a top event\nfor austrian corporate and banking executives every year and takes place in\nthe mountains of tirol from 4 th to 6 th of october 2000 . it hosts\napproximately 500 participants . this year ` s topic is \" balance sheet\nprotection \" .\nwe kindly ask you , if you are interested in presenting \" your latest research\ninto the application of weather risk management techniques \" at the symposium .\ndate and location : friday , october 6 th 2000 , 9 . 30 a . m . alpbach - tirol ,\ncongress centrum .\nwe would highly appreciate to welcome you in alpbach in october - please give\nus notice as soon as possible . we will come back to you with organizational\ndetails .\nyours sincerely\nhannes enthofer\nhannes enthofer\nfinance trainer international gmbh\nam hundsturm 11\na - 1050 wien\ntel : + 431 5455277 - 0\nfax : + 431 5455277 - 20\ne - mail : enthofer @ financetrainer . com\nweb : www . financetrainer . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.494+0000", "entityId": 7550, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.498+0000", "entityId": 7551, "properties": {"text": "Subject: tage\npaul :\njust to let you know i have made reservations for thursday night , june 1\nat latour d ' argent restaurant . it is located at 2011 ella blvd @ t . c .\njester .\nplease let mr . m aragos know that a coat is required for dinner .\nif you need directions , please let me know .\nthank you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nresearch group\nenron corp .\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.503+0000", "entityId": 7552, "properties": {"text": "Subject: risk 2000 panel discussion\ndraft agenda attached . please mark up at will .\n>\n- boston risk conference agenda . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.507+0000", "entityId": 7553, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\nghosh , soma timothy davies may 31 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.512+0000", "entityId": 7554, "properties": {"text": "Subject: re : super saturday interviews\nvince -\nthat is not a problem . we will not schedule you for a dinner . thanks for\nyour help with interviews !\nbeth\nvince j kaminski\n05 / 31 / 2000 06 : 04 pm\nto : beth miertschin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : super saturday interviews\nbeth ,\nplease , let me know about friday night . i want to know if i should\ndress up for dinner . i am very busy and i would be glad to skip dinner\nif you have enough people to cover it .\nvince\nfrom : beth miertschin 05 / 31 / 2000 05 : 19 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : super saturday interviews\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beth miertschin / hou / ect on 05 / 31 / 2000\n05 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beth miertschin 05 / 31 / 2000 01 : 51 pm\nto : kevin ruscitti / hou / ect @ ect , tom adams / hou / ees @ ees , harold\nbertram / hou / ect @ ect , ted c bland / hou / ect @ ect , w tom byargeon / hou / ect @ ect ,\nrogers herndon / hou / ect @ ect , kevin mcgowan / corp / enron @ enron , cindy\nskinner / hou / ect @ ect , mark tawney / hou / ect @ ect , greg woulfe / hou / ect @ ect ,\nmatthew arnold / hou / ect @ ect , keith holst / hou / ect @ ect , elspeth\ninglis / corp / enron @ enron , kim melodick / hou / ect @ ect , sheila walton / hou / ect @ ect ,\njanet r dietrich / hou / ect @ ect , gary hickerson / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , george mcclellan / hou / ect @ ect , julia murray / hou / ect @ ect ,\njere c overdyke / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect , fran l\nmayes / hou / ect @ ect , dave hill / corp / enron @ enron , brad mcsherry / hou / ect @ ect ,\ntoni graham / corp / enron @ enron , james a ajello / hou / ect @ ect , phillip k\nallen / hou / ect @ ect , edward d baughman / hou / ect @ ect , sally beck / hou / ect @ ect , bob\ncrane / hou / ect @ ect , david oxley / hou / ect @ ect , kevin m presto / hou / ect @ ect ,\ndaniel reck / hou / ect @ ect , hunter s shively / hou / ect @ ect , cedric\nburgher / corp / enron @ enron\ncc : ginger b gamble / hou / ect @ ect , shelly jones / hou / ect @ ect\nsubject : super saturday interviews\nthank you for volunteering to interview this super saturday , june 3 rd . we\nare working on the interview schedule and you will be receiving an interview\npacket no later than friday morning . please let us know as soon as possible\nif you have any conflicts and will not be able to participate .\nwe appreciate your support of the associate / analyst program .\nbeth miertschin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.517+0000", "entityId": 7555, "properties": {"text": "Subject: great divide lodge\nvince and shirley :\ni have spoken with steve collins the national sales manager at great divide\nlodge . he has agreed to honor our $ 6000 . 00 credit as long as we fulfill the\nfollowing two requirements :\nconfirm reservations prior to july 31\nhold event prior to thanksgiving\nthe appropriate contact number is 970 . 453 . 3152 steven collins\nthanks for working with us on that .\npaula", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.522+0000", "entityId": 7556, "properties": {"text": "Subject: miscellaneous items\nvince :\nhere are several items that you need to know about .\n1 . paul johnson said that monday night would be fine for the dinner with\nspyros .\n2 . lucy deathridge from risk called and needed your presentation for the\nboston conference by this evening in order to have copies made . i told\nher\nyou were in meetings and had been very busy , i did not know whether your\npresentation was ready or not . we can have 500 copies made from the\ncopy center and overnight them to her next week , but you won ' t be here on\nthe 9 th to do this . do you have any suggestions ?\n3 . i have been trying to schedule a meeting that mike roberts called about\nregarding e - online . he said to schedule it for friday at 11 : 30 am . i\ncalled\nmark palmer and he knew nothing about the meeting , but said he would\nbe here at 11 : 30 am . however , i have been unable to reach dan diamond .\nmike said that you might have his cell phone ?\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.528+0000", "entityId": 7557, "properties": {"text": "Subject: friday off\n- - - - - - - - - - - - - - - - - - - - - - forwarded by maureen raymond / hou / ect on 05 / 31 / 2000\n02 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nleandro ibasco @ enron\n05 / 31 / 2000 09 : 59 am\nto : shirley crenshaw / hou / ect @ ect , vanessa carranza / corp / enron @ enron\ncc : vasant shanbhogue / hou / ect @ ect , harry arora / hou / ect @ ect , suresh\nraghavan / corp / enron @ enron , jeff bartlett / hou / ect @ ect , maureen\nraymond / hou / ect @ ect\nsubject : friday off\nhi ,\nplease note that i will be taking a vacation day on friday , june 2 to study\nfor the cfa exams .\nregards ,\nroy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.533+0000", "entityId": 7558, "properties": {"text": "Subject: hello\ndear vince ,\ni just wanted to let you know that i ' m working here for the summer . i ' m with\nctg ( commercial transactions ) in the industrial services group on the 30 th\nfloor . i ' m excited to be back at enron and look forward to a great summer .\ni ' m also happy to know that it is working out with the new members who have\njoined research . i hope you had a very nice memorial day weekend and an even\nbetter birthday . happy ( belated ? ) birthday !\nwarmest regards ,\nvan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.538+0000", "entityId": 7559, "properties": {"text": "Subject: weather derivatives : under cover\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 06 / 01 / 2000\n12 : 53 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : lucy ortiz 06 / 01 / 2000 08 : 58 am\nto : mark tawney / hou / ect @ ect , steven vu / hou / ect @ ect , brando\nhayden / hou / ect @ ect , david kistler / hou / ect @ ect , gary taylor / hou / ect @ ect , paul\nr henry / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , rajib saha / hou / ect @ ect ,\nmichael nguyen / hou / ect @ ect , tony harris / hou / ect @ ect , seth\nhurwitz / corp / enron @ enron , timothy m norton / hou / ect @ ect , nick mooney , ingrid\nwees , catherine woolgar / lon / ect @ ect , victoria bedingfield , raymond\nyeow / enron _ development @ enron _ development , christian\ncc :\nsubject : weather derivatives : under cover\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lucy ortiz / hou / ect on 06 / 01 / 2000 08 : 56 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndjcustomclips @ djinteractive . com on 06 / 01 / 2000 09 : 21 : 18 am\nplease respond to nobody @ maill . djnr . com\nto : 126812 @ mailman . enron . com\ncc :\nsubject : weather derivatives : under cover\nbusiness\nunder cover\nmartin waller\n05 / 31 / 2000\nthe times of london\n2 w\n31\n( copyright times newspapers ltd , 2000 )\ncorney & barrow , the mainly city wine bar chain , is going into the\nderivatives market . the chain is thought to be the first in the\nhospitality industry to take a position against our atrocious\nweather .\nsarah heward , the managing director , got the idea after meeting a\nbunch of customers who had just left garban to set up their own\nbusiness , speedwell weather derivatives . about half her wine bars\nhave outside terraces which have understandably not proven too\npopular of late .\n\" they set me up with a hedge - my counterparty is enron us , \" says\nheward . this safeguards a modest pounds 15 , 000 of turnover .\nfolder name : weather derivatives\nrelevance score on scale of 100 : 94\nto review or revise your folder , visit http : / / www . djinteractive . com or\ncontact dow jones customer service by e - mail at custom . news @ bis . dowjones . com\nor by phone at 800 - 369 - 7466 . ( outside the u . s . and canada , call 609 - 452 - 1511\nor contact your local sales representative . )\ncopyright ( c ) 2000 dow jones & company , inc . all rights reserved", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.543+0000", "entityId": 7560, "properties": {"text": "Subject: risk 2000 boston - speaker reception 12 june 2000\nthere will be a drinks reception taking place on monday 12 june 2000 between\n6 . 00 - 7 . 00 pm in the lower level of the congress center - for speakers ,\nsponsors and exhibitors of risk 2000 , boston\n?\nplease let me know if you would like to attend so we can guage numbers .\n?\nbest regards ,\noliver\n?\n?\n?\ndirect : + 44 ( 0 ) 20 7484 9880\n?\nrisk publications , 28 - 29 haymarket , london swly 4 rx\nfax : + 44 ( 0 ) 20 7484 9800 ? email : oliver @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.548+0000", "entityId": 7561, "properties": {"text": "Subject: reviewer approval\nplease note that your employees have suggested the following people to\ncomplete a feedback form on their behalf . you will need to access the\nperformance management system ( pep ) to either approve or decline these\nsuggested reviewers . once you have approved the suggested reviewers they\nwill be notified and can begin completing the feedback form .\nyour list of employees that have suggested reviewers are listed below :\ndate suggested : may 24 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : crenshaw , shirley j\ndate suggested : may 19 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : kollaros , alexios\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : krishnarao , pinnamaneni v\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : shanbhogue , vasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.553+0000", "entityId": 7562, "properties": {"text": "Subject: uk gas desk\nhi vince & stinson ,\nfor your information , jonathan whitehead is moving to the japan opportunity -\ntomorrow is his last day as head of uk gas trading . the new head of uk gas\nis moving over from continental trading team , and his name is david gallagher .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.558+0000", "entityId": 7563, "properties": {"text": "Subject: re : saturday\njana ,\nsaturday looks good . i shall be involved in job interviews at enron\nall saturday and should be done by 5 p . m .\nwe can go the angelica movie center . i shall check the program\ntonight and call you tomorrow to review the options .\nvince\njlpnymex @ aol . com on 06 / 01 / 2000 10 : 56 : 38 am\nto : vkamins @ enron . com\ncc :\nsubject : saturday\nvince ,\nhow are you ? are we still on for saturday ?\nlet me know what movie looks good . we saw \" mi 2 \" and really liked it . we\nalso saw \" small time crooks \" and it was slow .\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.563+0000", "entityId": 7564, "properties": {"text": "Subject: eprm understanding and applying fin math - houston\nplease register me as vince kaminski ' s free guest at the houston session of\nthe above conference on 31 / 8 and 1 / 9 .\nmany thanks ,\nsteve leppard\nenron europe research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.567+0000", "entityId": 7565, "properties": {"text": "Subject: univ of texas\njulia ,\nthe lawyers at ut at austin have some questions regarding your corrections\nto the non - disclosure agreement .\nspecifically , they want to discus the arbitration provision . the name of the\nlawyer at ut\nis gene bartley , 512 471 2995 .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.572+0000", "entityId": 7566, "properties": {"text": "Subject: re : var\nlet ' s meet at 4 : 00 .\nvince j kaminski\n06 / 01 / 2000 09 : 19 am\nto : john arnold / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , jim\nschwieger / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect\nsubject : var\njohn ,\nwe have been working for the last few days on var related issues .\nthe focus is on jim schwieger ' s storage book as of 5 / 25 and 5 / 26\nwhere we had some counterintuitive results . this book is a good\ncandidate for a systematic review of the var process .\nit seems that the problem arises from forward - forward vols used by the var\nsystem . you can see in the attached spreadsheet that the var , on a cumulative\nbasis ,\njumps on jan 04 , when an abnormal ff vol hits a relatively large position .\nthis ff vol is also much different from the previous day number producing a\nbig\njump in var .\nthis row ( jan 04 ) is in magenta font in the attached spreadsheet . please , look\nat column d .\nthe abnormal ff vol may result from one of the two factors :\na . a bug in the code . we are working with the person in it who wrote the\ncode to review it .\nb . a poorly conditioned forward vol curve ( a kink or discontinuity in\nthe fwd vol curve will do it ) . one solution i can\npropose , is to develop for\nthe traders a fwd - fwd vol generator allowing them to\nreview the fwd vol curve\nbefore it is posted . if it produces a weird fwd - fwd vol ,\nit can be smoothed .\ncan you meet at 4 p . m . to review our findings ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.578+0000", "entityId": 7567, "properties": {"text": "Subject: re : parking space at 777 clay street for summer interns\nhi louis :\nwe will take it !\nlisted below are the individuals that will be using the spot .\njune lst - july 30 th vince kaminski\njuly 31 st - august 18 th matthew williams ( london )\naugust 21 st - sept . 15 th steven leppard ( london )\nsept . 18 th - oct . 13 th kirstee hewitt ( london )\noct . 16 th - nov . 10 th ben parsons ( london )\njune lst - july 30 th should be billed to vince kaminski - co . # 0011 and\nrc # 100038\njuly 31 st - nov . 10 th should be billed to the london office - i have\nrequested their co # and rc # and will forward it to you when i get it .\nthanks louis !\nshirley crenshaw\n3 - 5290\nlouis allen @\nect\n06 / 01 / 2000 10 : 11 am\nto : shirley crenshaw / hou / ect @ ect @ enron\ncc :\nsubject : re : parking space at 777 clay street for summer interns\nhi shirley ,\ni have one ( 1 ) space available at 777 clay garage .\nplease let me know who the summer intern is thats needing a space .\nplease advise asap .\nthanks , louis\nshirley crenshaw @ ect\n05 / 15 / 2000 11 : 36 am\nto : louis allen @ enron\ncc :\nsubject : parking space at 777 clay street for summer interns\ngood morning louis :\nwe would like to requst a parking spot at 777 clay street for the months of\njune , july , august and september .\nwe will have 3 employees from the london office that will be rotating on\nspecial assignment to our group .\nis there a way that we can go ahead and reserve the spot and i will let\nyou know the car information and driver information as they come ?\nour co . # is 0011 and our rc # is 100038 .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.584+0000", "entityId": 7568, "properties": {"text": "Subject: change of payroll status for elena chilkina\nteresa :\nplease change elena chilkina ' s payroll record to reflect non - exempt instead\nof exempt in order for her to be paid overtime . vince kaminski has approved\nthis action .\nher time site is : 0428\nif you need anything else , please let me know .\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.592+0000", "entityId": 7569, "properties": {"text": "Subject: re : energy conference - sydney\nchris ,\nthanks for the invitation . i shall be glad to meet you and your family in\nsydney at your home .\ni am enclosing the draft of my part of the chapter . it ' s more than\npreliminary but i hope\nto improve it greatly over the weekend . i shall forward you a new version on\nsunday evening\nmy time . grant is moving along on his part . i hope it reduces the penalty to\nbroken knee - caps .\ni shall send you a longer message from home to give you an update on my\nconversations\nwith eprm regarding the articles .\nvince\n\" chris strickland \" on 06 / 01 / 2000 07 : 45 : 53 am\nplease respond to \" chris strickland \"\nto : \" vincejkaminski \"\ncc : \" julie \"\nsubject : energy conference - sydney\nhi vince ,\n?\njust a friendly reminder that the hired guns are making their way up to\nhouston to visit with you and grant .\n?\ni was reading the promotional material for the eprm conference here in july .\ni wanted to invite you to dinner at my apartment on the evening between the\nmain conference and the post - conference seminars ( 18 th july ) . we have a\npretty spectacular view of the harbour here that you might enjoy .\n?\nbest regards .\n?\nchris .\n?\ndr chris strickland\n?\nschool of finance and economics , university of technology , sydney\nfinancial options research centre , university of warwick , uk\n?\ndirector , lacima consultants ltd\nwww . lacima . co . uk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.599+0000", "entityId": 7570, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\nghosh , soma timothy davies may 31 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nyuan , ding richard l carson jun 02 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.604+0000", "entityId": 7571, "properties": {"text": "Subject: re : address\nconfirmed\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 02 , 2000 03 : 21 pm\nto : deangelo , david j .\ncc : vince . j . kaminski @ enron . com\nsubject : address\nvincent kaminski\nmanaging director\nenron corp .\n1400 smith street , room 1962\nhouston , tx 77251 - 1188\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.609+0000", "entityId": 7572, "properties": {"text": "Subject: managing enron ' s relationships with the universities\njeff ,\ni would like to get on your calendar ( together with jeff shankman ) for 15 -\n30 minutes\nto discuss the results of my visit at the wharton school with tom piazze .\na separate message about this visit will follow .\ni would like also to talk to you about the way we manage our relationships\nwith\ndifferent universities . historically , we were rather passive customers of\nthe academic institutions , trying to hire the best students and limiting our\npresence\non the campuses mostly to the recruiting trips and campus receptions .\nwe should rethink the way we work with universities . the efforts to get\nthe best students look more and more like a hand - to - hand combat and often we\nare not\nvery successful . it is critical that we increase our presence on the campuses\nand this can be accomplished in a number of different ways :\n1 . involvement in research projects . for example , we are currently\nunderwriting two research\nprojects at stanford university , involving ph . d . students of professor\nnicholas bambos\n( a top expert on communications networks ) . we shall participate in formulation\nof the projects ' objectives and will be given access to the results .\ninvolvement in research projects allows us to obtain\naccess to current scientific developments in the leading universities and\nalso to lock - up some very\npromising students . most companies in the high tech industries have such\nprograms .\n2 . lectures and presentations by enron employees . practically every\npresentation\ni have made so far at different universities resulted in a number of resumes\nand hiring decisions .\nit is important that students get exposed to enron early in their academic\nprogram . in many cases ,\nthe best students have already made up their mind by the time we approach\nthem during their\nsenior years .\n3 . visits by faculty members in enron .\ncloser cooperation with the universities has many advantages in addition to\ngetting the best students\nand obtaining access to current research . the universities are very important\nin shaping public opinion\non the issues critical to enron ' s future ( especially in the area of\nderegulation and design of new markets ) .\ncurrently , the relationships with many leading academic centers depend on\npersonal commitment of a number\nof overworked enron employees . in many cases , there is no continuity and\nfocus .\ni want to recommend a creation of a special function ( vp or md level )\nresponsible for coordinating\nour relationships with the universities . this function would be separate from\nour analyst / associate\nprogram . i have many ideas how this function could be structured .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.613+0000", "entityId": 7573, "properties": {"text": "Subject: reviewer approval\nplease note that your employees have suggested the following people to\ncomplete a feedback form on their behalf . you will need to access the\nperformance management system ( pep ) to either approve or decline these\nsuggested reviewers . once you have approved the suggested reviewers they\nwill be notified and can begin completing the feedback form .\nyour list of employees that have suggested reviewers are listed below :\ndate suggested : may 24 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : crenshaw , shirley j\ndate suggested : jun 01 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : gibner , peyton s\ndate suggested : may 19 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : kollaros , alexios\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : krishnarao , pinnamaneni v\ndate suggested : may 22 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : shanbhogue , vasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.618+0000", "entityId": 7574, "properties": {"text": "Subject: pjm / ftrs ' meeting this thursday 6 / 8\nftr team ,\nthe pre - bid meeting arrangements are as follows :\nlocation : eb 3125 a\ndate : 6 / 8 ( thursday )\ntime : 8 : 30 am to 2 : 00 pm cdt\nbreakfast : provided\nlunch : sandwiches\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.624+0000", "entityId": 7575, "properties": {"text": "Subject: re : storm\ndale ,\nomer muften ( with the structuring group ) asked us to help in evaluating the\ndifferent options embedded in the storm contract . however , he promised to\nprovide us with the forward curves regarding the dark fiber ( in europe ) . we\nare still waiting to receive those . in addition , it seems that the deal\nstructure has \" just \" changed . i will give you a call to discuss .\n- samer\nstinson gibner @ ect\n06 / 01 / 00 04 : 33 pm\nto : samer takriti / enron communications @ enron communications\ncc : cantekin dincerler / hou / ect @ ect , dale surbey / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : storm\nsamer :\ncan you please contact dale surbey in london and let him know what you and\ncantekin doing for the storm transaction .\nhe can be reached by london tie line by dialing 830 3 6726 .\nthanks ,\nstinson\ndale :\ni will be on travel for the next 2 weeks . samer should be able to help\nyou . his extension is 34791 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.629+0000", "entityId": 7576, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\ncrenshaw , shirley j wincenty j . kaminski may 24 , 2000\nghosh , soma timothy davies may 31 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nyuan , ding richard l carson jun 02 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.634+0000", "entityId": 7577, "properties": {"text": "Subject: resume for bruce james\ndr . kaminski :\nplease find attached my resume and cover letter .\nsincerely ,\nbruce james\n- jameslett 60 . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.640+0000", "entityId": 7578, "properties": {"text": "Subject: pr resume\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bjorn hagelmann / hou / ect on 06 / 05 / 2000\n06 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nproan @ mindspring . com on 06 / 02 / 2000 10 : 02 : 34 pm\nto : bjorn hagelmann / hou / ect @ ect\ncc :\nsubject : pr resume\nbjorn ,\nit was good to talk to you on yesterday . i was contacted by jason sokolov\nthis morning and he advised me to forward my resume to you . the best day\nfor me to interview would be friday , june 9 th . i hope to hear from you\nsoon .\nphil roan\n( 713 ) 759 - 1741 ( h )\n( 713 ) 544 - 7469 ( w )\nproan @ mindspring . com\nroanp @ kochind . com\n- quant resume _ 4 . dot", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.645+0000", "entityId": 7579, "properties": {"text": "Subject: got book and papers , thanks !\nthe fedex people dropped them off last\nweek , and i ' m happily reading away .\nthanks !\nkeith baggerly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.650+0000", "entityId": 7580, "properties": {"text": "Subject: re : risk book translation\ndear professor kaminski ,\nthanks for spending your very valuable time to take trouble to arrange our\ncontact with the risk\nstaffs . i will appreciate very much .\nmasayuki fujita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.655+0000", "entityId": 7581, "properties": {"text": "Subject: re : enron site / mepr 2\nsorry vince\none must have got away !\nwill contact dan shortly .\nconrad\nat 08 : 04 am 6 / 5 / 00 - 0500 , you wrote :\n>\n> conrad ,\n>\n> thanks for your message .\n>\n> there are 3 papers enron contributed to the last mepr .\n>\n> there is also another paper on electricity i contributed to the \" red book \"\n> on us\n> power markets , as well as a paper or credit risk management , and a paper\n> on weather derivatives . all these papers included in other risk books were\n> written by enron\n> employees .\n>\n> we would like them included as well , if technically possible .\n>\n>\n> i think that offering other energy related books through our site , in\n> addition to mepr 2 ,\n> is fine , but i would leave the decision to dan diamond , who is responsible\n> for the project .\n>\n>\n> vince\n>\n>\n>\n>\n>\n> conrad gardner on 06 / 05 / 2000 07 : 08 : 36 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : enron site / mepr 2\n>\n>\n> > date : mon , 05 jun 2000 13 : 02 : 02\n> > to : vince kaminski\n> > from : conrad gardner\n> >\n> > dear vince\n> >\n> > thanks for the call and email on friday . i will contact masuyuki and\n> follow\n> it from there .\n> >\n> > regarding the enron site , i think it is absolutely fine to put up the two\n> enron chapters ( i ' ll provide pdfs ) , and prevent any customer leakages from\n> your site by the use of \" submit \" buttons . as mentioned , i ' ll offer a 20 %\n> discount on mepr 2 to customers but would you be interested in some of other\n> energy titles ? - please let me know .\n> >\n> > many thanks\n> >\n> > conrad gardner\n> >\n> head of book publishing\n> risk books\n> haymarket house\n> 28 - 29 haymarket\n> london\n> swly 4 rx\n> direct tel : + 44 ( 020 ) 7 484 9750\n> main tel : + 44 ( 020 ) 7 484 9700\n> fax : + 44 ( 020 ) 7 484 9758\n> e - mail : conrad @ risk . co . uk\n> www . riskpublications . com\n>\n>\n>\n>\n>\n>\n>\nhead of book publishing\nrisk books\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ndirect tel : + 44 ( 020 ) 7 484 9750\nmain tel : + 44 ( 020 ) 7 484 9700\nfax : + 44 ( 020 ) 7 484 9758\ne - mail : conrad @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.660+0000", "entityId": 7582, "properties": {"text": "Subject: wharton event - junel 0 - insead\nbryan ,\ni shall call you later today when i have a chance to read the message from\nben .\ni wanted to ask you for a favor ( on a very short notice ) . we are talking to\nthe wharton school\nabout setting up a relationship with them and getting involved in one or\nmore research projects\nwith them .\none of the potential topics is emerging technologies . the wharton offers a\nsymposium in paris on june 10\non high tech acquisitions and it would make a lot of sense if you\n( or somebody from london you could identify ) could attend and help us to\nevaluate the usefulness\nof this project .\ni am enclosing the message from the person in wharton running this program .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 05 / 2000\n09 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntomczyk @ wharton . upenn . edu ( michael tomczyk ) on 05 / 18 / 2000 10 : 56 : 08 am\nto : vkamins @ enron . com\ncc : thomas . piazze @ wharton . upenn . edu\nsubject : wharton event - junel 0 - insead\nvincent ,\nit was truly a pleasure getting to know you in our meeting yesterday , and i\nlook forward to the prospect of exchanging views in the future on a variety\nof topics pertaining to emerging technologies .\nper our discussion , i ' ve enclosed three files that include an invitation ,\nagenda and rsvp form for the june 10 symposium on high tech acquisitions at\ninsead . if you or the individual ( s ) who will be attending have any\nquestions , please email : phanish puranam at : phanis 20 @ wharton . upenn . edu or\nyou can call him at 215 - 898 - 1231 .\nthis initiative will be expanded during the coming year and i believe that\nenron ' s involvement will give the company access to some of the early\nresearch in progress as it unfolds , and of course , if you become involved\nas a partner in the emerging technologies program you would have\nopportunities to help guide the direction of the research which is one of\nthe partnership \" benefits . \"\nour next upcoming events are scheduled for :\nfriday , september 8\n\" what next on the internet ? \"\nthis is a faculty update day with industry partners also invited .\nwe will co - sponsor this with wharton ' s major e - business initiative .\nmajor issues addresses include \" new economics of the web \" and\n\" internet , anywhere . \"\nfriday , october 20\n\" first mover advantage , shakeouts & survival strategies \"\ndesigned by the et core group and\npresented in collaboration with the e - commerce forum .\nas i indicated during our discussion , participation in the emerging\ntechnologies management research program is by invitation and on behalf of\nour core faculty , i am pleased to extend an invitation for enron to join\nthe program .\nto assist in your decision , we recommend having a representative attend the\nsymposium in paris on june 10 to \" test drive \" the program .\ni ' ll send you a formal invitation which you are free to accept at your\nconvenience , should you agree that enron ' s participation in the et program\nwould be of value .\nplease call or email if you have any comments or questions .\nbest regards ,\nmichael\n- insead workshop invitation lett - insead workshop agendal . doc - rsvp\nform . doc\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.666+0000", "entityId": 7583, "properties": {"text": "Subject: re : ff vols from historical fwd price curves\nwinston ,\ni am sending you ffd vol curves which are calculated based on 1 month ( 18\nlog - returns )\nof data with 0 . 97 decay factor . these vols give $ 3 . 14 m in var for\nstorage - prc ( versus 3 . 37 in production\nfor 5 / 30 / 00 ) .\ntell me what i need to change in the format so that it is convenient for you .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.670+0000", "entityId": 7584, "properties": {"text": "Subject: re : jcc\nthat this email constitutes your groups ( vince kaminski ' s ) sign - off on using\nthis hedge ratio to hedge jcc and jcc - based products ?\nthanks in advance ,\nmarc de la roche\nkevin kindall @ enron\n06 / 06 / 2000 02 : 18 pm\nto : marc de la roche / hou / ect @ ect\ncc : grant masson / hou / ect @ ect\nsubject : re : jcc & brent\ngood afternoon . i have performed a review of the jcc data that you sent\nsome time ago . the study was done using several different excel workbooks ,\nand are available upon request . relevant charts are embedded in the\npowerpoint attachment . questions / comments welcome .\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.676+0000", "entityId": 7585, "properties": {"text": "Subject: agenda & pre - work for valuation visioning session\nattached is a copy of the agenda for thursday ' s meeting . in preparation for\nthe meeting , please think about and be prepared to discuss what \" valuation \"\nmeans to you in the systems you support or the job you do .\nif you have any questions , feel free to contact me at 5 - 9353 .\nthanks .\nchris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.681+0000", "entityId": 7586, "properties": {"text": "Subject: re : follow up\ndale ,\ni have passed on the information you gave me but you have to realize that\ni acted just as a go - between . i shall be glad to remind our new business unit\nabout your proposal . i have already asked a few times .\ni shall be traveling this week , wed - fri . i shall be back in the office on\nmonday .\nvince\n\" dale nesbitt \" on 06 / 06 / 2000 02 : 03 : 18 am\nto : \" vincent kaminski \"\ncc :\nsubject : follow up\nvince :\njust wanted to make sure you know we are still vitally interested in getting\ntogether with you and the key enron people . thanks so much for all your\nhelp . i understand how busy you and the new person are , but i hope you are\ninterested enough to find a slot for us . i think it will benefit you as\nwell as us .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.686+0000", "entityId": 7587, "properties": {"text": "Subject: re : risk 2000 panel discussion\nsteve ,\na meeting at 8 : 00 - 8 : 15 is fine with me .\nvince\n\" bramlett , stephen \" on 06 / 06 / 2000 08 : 24 : 08 am\nto : \" ' vince j kaminski ' \" , \" bramlett , stephen \"\ncc : jefferid @ kochind . com , oliver @ risk . co . uk\nsubject : re : risk 2000 panel discussion\nvince - thanks for the update . i ' ve been pulled into a 7 : 00 am breakfast\nwhich i must attend . chances are i could catch up with everyone between\n8 : 00 and 8 : 15 . i apologize , but two of my breakfast dates are taking\nspecial flights in just for the breakfast - or i wouldn ' t inconvenience\neveryone .\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , june 06 , 2000 8 : 11 am\nto : bramlett , stephen\ncc : jefferid @ kochind . com ; oliver @ risk . co . uk ; vince j kaminski\nsubject : re : risk 2000 panel discussion\nsteve ,\nthis looks fine . i think we are meeting at 7 : 45 a . m . on the 14 th\nnext to the general reception area .\nvince\n\" bramlett , stephen \" on 06 / 05 / 2000 06 : 28 : 36 pm\nto : \" ' jefferis , dick ' \" , \" bramlett , stephen \"\n, vince j kaminski / hou / ect @ ect ,\n\" ' oliver @ risk . co . uk ' \"\ncc :\nsubject : re : risk 2000 panel discussion\ngentlemen ,\nplease see the edit of my outline below .\nalso , what time did we agree to meet on the 14 th ?\nsuccesses and failures ( stephen bramlett )\nrisk consideration directed at the enterprise level . what makes for a\nsuccessful application ?\nlong - term view of managing weather\nidentifying the corporate objectives\nlost opportunities\ntrading desks at utilities\ninsurance comparisons\nproduct managers\ntarget audience scale of the failure\ntreasury\nenterprise risk management\ncfo\nassistance of wall street\nlink to stock prices\nearnings smoothing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.690+0000", "entityId": 7588, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\ncarson , richard l richard b buy may 22 , 2000\ncrenshaw , shirley j wincenty j . kaminski may 24 , 2000\nghosh , soma timothy davies may 31 , 2000\nkaminski , wincenty j . john j lavorato jun 05 , 2000\nthuraisingham , ravi vasant shanbhogue may 30 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nyuan , ding richard l carson jun 02 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.695+0000", "entityId": 7589, "properties": {"text": "Subject: the installation of the equipment you ordered is completed\n- - - automatic notification system ( request # : ebut - 4 kpqew )\nrequested for : vince j kaminski\nrequested by : kevin g . moore\nthe installation of the equipment ( see below ) has been completed .\n18 in tft 8020 flatpanel opal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.704+0000", "entityId": 7590, "properties": {"text": "Subject: eol trade size discrepancies\nvince -\ni have discovered the two sources of discrepancy in the \" transaction dollars \"\non eol , between my numbers and those of eol . first , eol records all index\ntrades with the henry hub price ( since the index price isn ' t , inadvertently ,\nrecorded with the trade , as i told you ) , whereas i went back and appended the\ncontemporaneous index price to the trades . second , eol ignores all basis\ntrades in reporting transaction dollars , whereas i append a rough size to\nthem of the \" price \" as the basis , times the quantity .\ni ' m sorry i wasn ' t ready in time with my numbers ; i took the task of accuracy\nvery seriously .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.712+0000", "entityId": 7591, "properties": {"text": "Subject: re : bandwidth writing\ny ' all ,\nstinson forwarded a copy to me last week . part 1 . 1 was published in this\npast monday ' s edition as is . i would suggest that unless you see some major\nerror , don ' t suggest changes to samer that would delay the publication of\npart 2 , scheduled for this coming monday .\nsam\nshirley crenshaw @ ect\n06 / 07 / 2000 10 : 14 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , grant masson / hou / ect @ ect ,\ntanya tamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , vincent\ntang / hou / ect @ ect , alexios kollaros / hou / ees @ ees , martin lin / hou / ect @ ect ,\nmaureen raymond / hou / ect @ ect , osman sezgen / hou / ees @ ees , paulo\nissler / hou / ect @ ect , patricia tlapek / hou / ect @ ect , farouk lalji / hou / ect @ ect ,\namitava dhar / corp / enron @ enron , alex huang / corp / enron @ enron , ronnie\nchahal / hou / ees @ ees , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , leandro ibasco / corp / enron @ enron , yanna\ncrystal / corp / enron @ enron , jose marquez / corp / enron @ enron , samer\ntakriti / corp / enron @ enron , chonawee supatgiat / corp / enron @ enron , shalesh\nganjoo / hou / ect @ ect , tom halliburton / corp / enron @ enron , elena\nchilkina / corp / enron @ enron , cantekin dincerler / hou / ect @ ect , brad\naimone / na / enron @ enron , datren williams / na / enron @ enron , eloise\nmeza / na / enron @ enron , sevil yaman / corp / enron @ enron , sofya\ntamarchenko / na / enron @ enron , bob lee / na / enron @ enron , ainsley\ngaddis / na / enron @ enron\ncc :\nsubject : bandwidth writing\nhello all :\nsamer takriti has requested that the attached document be forwarded to\nyou for your feedback . vince would like to put this in the research\nnewsletter .\nif you feel changes need to be made , please feel free to do so .\nthanks !\n- fiber . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.718+0000", "entityId": 7592, "properties": {"text": "Subject: resume of phil roan , koch weather desk\nshirley ,\nphil roan , the quantitative analyst from koch ' s weather derivatives group\nwill be here on the afternoon of friday june 16 , beginning say , at 1 : 30 or\n2 : 00 . vince asked me to ask you to put a set of interviews together ( as i\nunderstand , vince himself will be unavailable that day ) .\nmark tawney should see him ; someone from weather marketing and / or\nstructuring should see him , e . g . gary taylor and / or michael nguyen ; some more\npeople from research should grill him on technical and meteorology issues ,\ne . g . vasant and / or zimin as well as mike roberts or someone on his team . phil\nhas only been a \" quant \" since the departure of koch ' s previous weather quant\nin february ; before that he was koch ' s weather \" risk manager \" . i am still not\nsure what the distinction means , but we do need to find out how much he knows\nabout option pricing and meteorology . even though his expressed desire is to\nfocus on weather derivatives , we should also assess how useful he would be\nfrom research group ' s perspective , since research will likely be his official\nhome .\nfinally , jere overdyke and / or someone else from his group ( george carrick ,\nif available ) should also get a chance to meet with him . i ' ve already spoken\nwith phil , but i ' d like to sit in with either vasant or zimin or mike when\nthey interview him , since i wasn ' t able to ask any technical questions .\nif i ' m counting correctly , that should amount to five interview sessions ,\nperhaps less if we interview in groups of two . phil ' s resume is enclosed\nbelow .\njoe\np . s . i will also forward this to jason sokolov . he will let you know if any\npeople from rac would also like to meet with him .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 06 / 07 / 2000\n08 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , joseph\nhrgovcic / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : resume of phil roan , koch weather desk\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 06 / 05 / 2000 01 : 54\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" roan , philip \" on 06 / 05 / 2000 08 : 33 : 00 am\nto : \" jason sokolov ( e - mail ) \"\ncc :\nsubject :\njason ,\nhere ' s the attachment we discussed . i ' ll call you this afternoon .\nphil roan\nroanp @ kochind . com\n( 713 ) 544 - 7469\n> - - - - - original message - - - - -\n> from : proan @ mindspring . com [ smtp : proan @ mindspring . com ]\n> sent : sunday , june 04 , 2000 8 : 07 pm\n> to : pr @ work\n> subject :\n>\n> >\n- philip f roan . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.723+0000", "entityId": 7593, "properties": {"text": "Subject: wharton event - junel 0 - insead\nvince ,\nbryan has been unable to find anyone suitable to attend this symposium on\nsaturday , so has suggested i attend , which i am happy to do . my only\nreservation is that my knowledge of this area is very limited , so it is\nlikely i would just be an observer , rather than a participant . anyway just so\nthat i am adequately prepared could you briefly describe our current\nrelationship with this project , and also suggest any reading , like a magazine\nor paper , that would quickly aid my understanding of the topics to be\ndiscussed .\nmany thanks ,\nben\n- - - - - - - - - - - - - - - - - - - - - - forwarded by benjamin parsons / lon / ect on 08 / 06 / 2000\n08 : 36 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n06 / 06 / 2000 16 : 46\nto : benjamin parsons / lon / ect @ ect\ncc :\nsubject : wharton event - junel 0 - insead\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bryan seyfried / lon / ect on 06 / 06 / 2000\n16 : 48 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 06 / 2000 15 : 13\nto : bryan seyfried / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : wharton event - junel 0 - insead\nbryan ,\ni shall call you later today when i have a chance to read the message from\nben .\ni wanted to ask you for a favor ( on a very short notice ) . we are talking to\nthe wharton school\nabout setting up a relationship with them and getting involved in one or\nmore research projects\nwith them .\none of the potential topics is emerging technologies . the wharton offers a\nsymposium in paris on june 10\non high tech acquisitions and it would make a lot of sense if you\n( or somebody from london you could identify ) could attend and help us to\nevaluate the usefulness\nof this project .\ni am enclosing the message from the person in wharton running this program .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 05 / 2000\n09 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntomczyk @ wharton . upenn . edu ( michael tomczyk ) on 05 / 18 / 2000 10 : 56 : 08 am\nto : vkamins @ enron . com\ncc : thomas . piazze @ wharton . upenn . edu\nsubject : wharton event - junel 0 - insead\nvincent ,\nit was truly a pleasure getting to know you in our meeting yesterday , and i\nlook forward to the prospect of exchanging views in the future on a variety\nof topics pertaining to emerging technologies .\nper our discussion , i ' ve enclosed three files that include an invitation ,\nagenda and rsvp form for the june 10 symposium on high tech acquisitions at\ninsead . if you or the individual ( s ) who will be attending have any\nquestions , please email : phanish puranam at : phanis 20 @ wharton . upenn . edu or\nyou can call him at 215 - 898 - 1231 .\nthis initiative will be expanded during the coming year and i believe that\nenron ' s involvement will give the company access to some of the early\nresearch in progress as it unfolds , and of course , if you become involved\nas a partner in the emerging technologies program you would have\nopportunities to help guide the direction of the research which is one of\nthe partnership \" benefits . \"\nour next upcoming events are scheduled for :\nfriday , september 8\n\" what next on the internet ? \"\nthis is a faculty update day with industry partners also invited .\nwe will co - sponsor this with wharton ' s major e - business initiative .\nmajor issues addresses include \" new economics of the web \" and\n\" internet , anywhere . \"\nfriday , october 20\n\" first mover advantage , shakeouts & survival strategies \"\ndesigned by the et core group and\npresented in collaboration with the e - commerce forum .\nas i indicated during our discussion , participation in the emerging\ntechnologies management research program is by invitation and on behalf of\nour core faculty , i am pleased to extend an invitation for enron to join\nthe program .\nto assist in your decision , we recommend having a representative attend the\nsymposium in paris on june 10 to \" test drive \" the program .\ni ' ll send you a formal invitation which you are free to accept at your\nconvenience , should you agree that enron ' s participation in the et program\nwould be of value .\nplease call or email if you have any comments or questions .\nbest regards ,\nmichael\n- insead workshop invitation lett - insead workshop agendal . doc - rsvp\nform . doc\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.727+0000", "entityId": 7594, "properties": {"text": "Subject: summer associate mentor\nthe summer associate program is a critical component of our recruiting\nefforts . we appreciate you acting as a mentor for the following summer\nassociate .\nvince ,\na reception to introduce you to the summer associates is scheduled for june\n22 nd . the reception will be held from 6 : 00 pm until 7 : 30 pm at sierra ' s\ngrill located at 4704 montrose ( 713 - 942 - 7757 ) . we have also provided the\nsummer associate with your name and phone number ; however , we encourage you\nto contact guiseppe prior to the reception if possible .\nplease rsvp your attendance to cheryl kuehl at x 39804 or by email .\nthank you\ncharlene jackson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.732+0000", "entityId": 7595, "properties": {"text": "Subject: ftr team ,\nthe copy of the auction results that you got at yesterday ' s meeting is\nincorrect . what happened was when i tried to sort the entire page , i only\nhighlighted the related column and expected excel 98 would sort the whole\npage . ( as steve told me before , i should highlight the whole thing if i try\nto do sorting in excel ) . i appolized for the misleading and have redone the\nwhole thing . thanks for the patience . wish you all have a great weekend .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.737+0000", "entityId": 7596, "properties": {"text": "Subject: australian energy risk 2000\nas australian energy risk 2000 is approaching . i am emailing you with\nregards to your presentation . the deadline date is monday 12 june . if this\nis going to be a problem please let me know i will be out of the office from\nmonday 12 , until monday 19 june , on which date i will be putting the\npresentation pack together to send to the printers . if your presentation is\ncomplete could you please email it to ldeathridge @ risk . co . uk as a\npowerpoint file asap .\nif you have any problems in doing this please do not hesitate to contact me\nby email or on ( 020 ) 7484 9867 . i will reply to any queries when i return .\nregards\nlucie deathridge\nconference co - ordinator\nrisk publications\n?\ntel : ( + 44 ) ( 020 ) 7484 9867\nhttp : / / www . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.741+0000", "entityId": 7597, "properties": {"text": "Subject: rotation of leandro \" roy \" ibasco\nhello celeste :\nplans are in the works to rotate roy ibasco from the research group into\nhenry arora ' s group . vanessa carranza is handling the churn request . i am\nnot sure of the rotation date , but we need his desk by the 15 th for gwyn\nkoepke .\nyou probably already know all of this , but just in case .\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.746+0000", "entityId": 7598, "properties": {"text": "Subject: re : moving roy ibasco\nhi vanessa :\nyou will need to fill out a \" churn request \" and forward it to the \" move team \"\nthey will take care of everything that you put on the form . i am attaching a\ncopy\nof the form for your information . the receiving department is responsible\nfor\ndoing this . he will need boxes to pack his belongings ( ask him how many\nhe needs - he will have to do the packing ) . the only item that moves other\nthan his personal items , is his telephone . the computer , chair , etc .\nbelongs to\nthe research group .\nif you have any questions , or need help , please let me know .\nthanks !\nvanessa carranza @ enron\n06 / 08 / 2000 04 : 47 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : moving roy ibasco\nshirley -\ni need to have roy ibasco ' s things moved to eb 2930 c from ebl 948 and have it\ncharged to co / rc 413 - 1708 . please give me a call if you have any questions !\nthanks -\nvanessa c\n3 - 5030", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.751+0000", "entityId": 7599, "properties": {"text": "Subject: reviewer approval\nplease note that your employees have suggested the following people to\ncomplete a feedback form on their behalf . you will need to access the\nperformance management system ( pep ) to either approve or decline these\nsuggested reviewers . once you have approved the suggested reviewers they\nwill be notified and can begin completing the feedback form .\nyour list of employees that have suggested reviewers are listed below :\ndate suggested : jun 09 , 2000\nfeedback due date : jun 16 , 2000\nemployee name : roberts , michael a", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.756+0000", "entityId": 7600, "properties": {"text": "Subject: career opportunity\ndear mr . kaminski :\ni recently sent you a copy of my resume and am just\nfollowing up to see if it reached you without any problems ? i know you\nare a very busy professional and i would like to apologize for any\ninconvienence i have caused . i am just very dedicated in trying to\nobtain a career with your very well - respected company . i would really\nlike to put my expereince and education to work for enron , as well as\nestablish my life around the company . i am looking for an entry - level\npostion if that ' s what it takes to bulid my life and family enron\ncorporation . once again mr . kaminski , i am deeply apologetic for taking\nup any of your time . any information you could help me with about my\nresume would be greatly appreciated . thank you for your valuable time .\nwarmest regards ,\neric hilton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.761+0000", "entityId": 7601, "properties": {"text": "Subject: akamai\nkevin ,\ni have followed up on your request to identify a potential hire\nfrom akamai ( a person familiar with their technology ) . we can start\ndiscussions with the targets in a few days .\nplease , let me know which unit in ebs is a potential hiring agent .\nif it ' s research , who inside ebs can sponsor this position ? we have to\ndiscuss\nthe responsibilities and job description .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.766+0000", "entityId": 7602, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\ncarson , richard l richard b buy may 22 , 2000\ncrenshaw , shirley j wincenty j . kaminski may 24 , 2000\nghosh , soma timothy davies may 31 , 2000\nkaminski , wincenty j . david w delainey jun 05 , 2000\npeyton , john a randal t maffett jun 05 , 2000\nthuraisingham , ravi vasant shanbhogue may 30 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nyuan , ding richard l carson jun 02 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.771+0000", "entityId": 7603, "properties": {"text": "Subject: re : insead high - tech acquisitions workshop\nben\nthanks for attending . i was on \" vacation \" last week ( driving from ca to\nhouston )\nand could not answer your first message regardoing insead conference in time .\nthe objective was to find out more about the he workshop on high - tech\nacquisitions\nand evaluate the usefulness of the program for enron . i shall be making a\nrecommendation\nto jeff skilling that we should work with wharton as a partner in a number of\ndifferent research projects .\ni shall try to catch you next week to find out what was said about valuation\nof small high - tech firms .\nvince\nbenjamin parsons\n06 / 12 / 2000 05 : 50 am\nto : vince j kaminski / hou / ect @ ect\ncc : bryan seyfried / lon / ect @ ect\nsubject : insead high - tech acquisitions workshop\nvince\ni attended the workshop on high - tech acquisitions at insead on saturday\nalongside participants from cisco , eads , razorfish and cable + wireless , and\nacademics from insead and wharton . the basic premise was to discuss and get\nfeedback from practitioners about the research project , and a phd study which\nis currently underway at wharton . the discussions were very interesting -\nespecially as this was my first exposure to this area .\nexamples of the discussions raised include\nwhy firms acquire new businesses instead of developing them in - house\nwhat degree of post - acquisition integration was optimal\ndifficulties of us firms acquiring euro / asian high - tech companies\nhow to value small high - tech firms\nhow to quantify the success / failure of an acquisition\nmy feeling is that further work with them in this area would be beneficial to\nenron because it would help the development of the academic research and give\nus first - hand access to the results . plus it would enable us to learn from\nthe mistakes of others , through meeting practitioners at such workshops and\nhaving greater access to the case studies . i guess it could also aid our\nrealignment within the high - tech / communication industry to be seen in such\nstudies .\nregards\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.776+0000", "entityId": 7604, "properties": {"text": "Subject: hea sporting clays tournament - august 15 , 2000\nhea ' s annual sporting clays tournament is just around the corner , august 15 ,\n2000 at the american shooting centers . watch your fax for all the details ,\nbut prepare for the same format as last year with registration starting at\n1 : 30 p . m . ( late registration after 2 : 45 earns 2 shot penalty ! ) and the action\nbeginning at 3 : 30 p . m . warm up with the two - man flush at 1 : 30 . reservation\nand pre - payment required by august 9 th ! a \" private drawing \" for a new\nshotgun will be held for reservations / payments received by august 1 , 2000 -\nso make your plans now to participate .\nafter the competition , dinner will be again in the air conditioned pavilion\nwith thousands of dollars in door prizes ! non shooters pay $ 40 per person\nfor dinner , drinks and door prizes . luck of the draw ( randomly selected\nteams ) pay $ 80 per person - 50 targets , dinner , drinks & door prizes . blast\nmasters ( make your own 4 shooter team ) pay $ 115 per person - 100 targets ,\ndinner , drinks & door prizes .\ncontributions , corporate sponsors and volunteers are needed . if interested ,\nplease contact one of our three tournament chairs - jim cody ( 713 / 230 - 3550 ) ,\njeff eatherton ( 713 / 230 - 7286 ) or kemp jones ( 713 / 207 - 5189 ) . thanks again to\nour sponsors from last year . details will be faxed out and available on our\nwebsite friday ( june 16 ) . or call eva pollard at the hea office\n( 713 / 651 - 0551 ) or jim cody for more information .\nthis message was sent by :\nteresa knight , executive director\nhouston energy association ( hea )\nphone : ( 713 ) 651 - 0551\nfax : ( 713 ) 659 - 6424\ntknight @ houstonenergy . org\nif you would like to have your email address removed from our mailing list ,\nplease click the link below to the hea home page , where you will find a\nmini - form to remove your name automatically .\nhttp : / / www . houstonenergy . org /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.780+0000", "entityId": 7605, "properties": {"text": "Subject: re : summer associate mentor\nginger however , we encourage you\nto contact guiseppe prior to the reception if possible .\nplease rsvp your attendance to cheryl kuehl at x 39804 or by email .\nthank you\ncharlene jackson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.786+0000", "entityId": 7606, "properties": {"text": "Subject: followup\n- - - - - - - - - - - - - - - - - - - - - - forwarded by patricia tlapek / hou / ect on 06 / 12 / 2000\n03 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarcharts @ aol . com on 06 / 09 / 2000 10 : 01 : 59 am\nto : patricia . tlapek @ enron . com , mike . roberts @ enron . com\ncc :\nsubject : followup\ngood morning ,\ni enjoyed visiting you yesterday afternoon to discuss the opportunity at\nenron . sounds exciting , challenging and a good use of a lot of my skills and\nexperience . i look forward to further talks , hopefully this coming week .\ni mentioned a couple web sites and don ' t know if they came through clearly on\nthe phone with my sore throat .\nthe neural network approach to timing can be found at\nhttp : / / www . pfr . com / ptonline /\nthe introductory piece on technical analysis i wrote for forbes . com and the\nglossary can be found at htttp : / / www . forbes . com / tool / html / 00 / jun / 0603 / feat . htm\ni am also working with long time friend and neighbor steve nison with his\nsite and you can see the first on line lesson for free at\nhttp : / / www . candlecharts . com /\nhave a nice weekend . hope to hear from you next week .\nbruce m . kamich , cmt\nbarcharts @ aol . com\n732 - 463 - 8438", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.791+0000", "entityId": 7607, "properties": {"text": "Subject: re : prospective 6 / 22 houston visit\nehud ,\nwe can meet for dinner on the 21 st . then you can visit with us on the 22 nd\nin the morning and have individual meetings . at 11 : 30 you can meet the entire\nresearch group at our weekly lunch meeting . we can continue\nindividual meetings in the afternoon .\nplease , make a reservation at hyatt regency downtown or double tree\ndowntown ( there are several hotels with the same names ) .\nvince\n\" ehud i . ronn \" on 06 / 09 / 2000 02 : 01 : 09 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : prospective 6 / 22 houston visit\nvince ,\n> june 22 works for me . do you want to firm it up ?\nif it ' s not too late , i do .\ni believe the \" game plan \" was for me to come in the previous evening . if\nyou confirm the date , please advise at your convenience how you see the\n6 / 21 - 6 / 22 schedule .\nbest ,\nehud\nehud i . ronn\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.796+0000", "entityId": 7608, "properties": {"text": "Subject: summary of last 6 months projects\ndear dale , stinson & vince ,\ni would like to take this opportunity to communicate some information to\nsummarise the projects of the past six months . firstly , by all accounts it\nhas been an amazing few months for me - i believe that i have kept a large\nnumber of commercial group heads very happy . however , not all are aware of\nmy activities , so , many people ( e . g . john sherriff , richard lewis , steve\nyoung etc . ) will not know of everything i have done . for example the amount\nof work that i put into the inflation models and the extent to which i was\ncritical for the successful building of those curves and the consequent\nimpact ( o 7 + million for ql ) and similar large p & l swings for eastern contract\noptionality ( short virtual power station ) based upon my uk power vol curve\ngenerator .\nfor your benefit , i have compiled a shortlist of the main projects worked on\nover the past five / six months :\n1 ) inflation curve modelling ( february and march + april internal audit +\njune external audit )\n2 ) uk power monthly vol curve generator & ideas for half - hourly vol curve\n3 ) nordic power monthly vol curve generator\n4 ) energydesk . com models & support\n5 ) real options : options to build / extend power stations ( e . g . wessex deal ,\nanti - freeze project )\n6 ) continental power non - generic options ( using arbitrary trader - specified\ndistributions )\n7 ) global products : non - generic options modelling and new commodity forward\ncurve construction ( benzene fwd curve from naphtha )\n8 ) exotic options library upgrade / model test / bug fixes ( e . g . testing new / old\nasian models )\n9 ) continental gas volatility curve construction\n10 ) communication objective i : two presentations to enron europe staff , one\nto oslo office\n11 ) communication objective ii : meetings to gather information and present\nresults\n12 ) fas 133 : working with internal and external auditors on matching\nfinancial and physical ( accrual ) hedges - hedge effectiveness\n13 ) oslo trip : bringing oslo up to speed on exotica and option valuation\n14 ) houston research staff : co - ordinating communication / meetings to maximise\nproductivity\n15 ) valuation / marketing of power put options for banks that hold senior and\nsub debt in merchant power plant\nmeeting breakdown :\ninitiated by me it is\nclear that i have been critical to large p & l sensitive projects and hope that\ni can continue to help enhance earnings going forward .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.803+0000", "entityId": 7609, "properties": {"text": "Subject: soma ghosh prc mid year review\ntim davies has requested that i contact you regarding soma ghosh ' s prc mid\nyear review .\nyou will recall that you were asked to do a review for soma and to date this\nis still outstanding . i would be grateful if you could do this at some stage\ntoday as our review meeting will be held tomorrow .\nthank you for your assistance\nclaire dunnett\n37462", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.810+0000", "entityId": 7610, "properties": {"text": "Subject: travel announcement\nenron global travel management ( a division of global strategic sourcing ) is\npleased to announce that american express corporate cardholders can now view\naccount details online .\nhighlights of this service include :\nreview previously billed , current , and unbilled charges\nreview corporate direct payments and personal payments applied to your\naccount\ndispute a charge online , if needed\naccess customer service 24 hours a day , 7 days a week\nto log on to american express online services :\ngss has prepared a special registration / log on page for corporate cardmembers\nfor your convenience . to access it , go to http : / / travel . enron . com and click\non the corporate card button .\ncardmembers with cards issued within the last 45 days , need to call american\nexpress customer service to enroll . the number is 1 - 800 - 297 - 1234 .\nif you have already registered your personal american express card in the\namerican express online services program :\nplease click on the \" check your bill \" link and login using your existing user\nid and password . you will be able to add your american express corporate\ncard to your existing registration by clicking on the \" update your online\nprofile \" link which appears on the left hand menu bar once you are logged in .\nwe hope you enjoy using american express online services .\nfor questions or additional information , contact tracy ramsey ( director ,\nglobal travel management ) at 713 / 853 - 6457 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.816+0000", "entityId": 7611, "properties": {"text": "Subject: re : seneca lake storage\ndeirdre ,\ni run two senarios using two different curves .\ni got $ 1 . 39 / mmbtu per year for if - cng / north , and\n$ 1 . 41 / mmbtu per year for if - cng / n _ cityga .\ntherefore if we look at 20 years time horizon , the storage\ncan generate $ 1 . 40 * 1 . 4 * 20 = 39 . 2 mm dollars .\nlet us discuss if you have any questions .\nzimin\nenron north america corp .\nfrom : deirdre mccaffrey 06 / 12 / 2000 10 : 45 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : seneca lake storage\nzimin -\nthe gas assets group is looking at investing in a storage facility in western\nny . here are the specs :\ntotal capacity : 1 , 400 , 000 mmbtus\nmdqw : 140 , 000 mmbtus\nmdiq : 70 , 000 mmbtus\ninjection fuel : 1 . 5 %\ninjection fee : $ . 003\nw / d fuel : 0 %\nw / d fee : $ . 003\ninjection curve : cng north city gate\nw / d curve : cng north pool point\nplease call with any questions - x 39685 .\nthanks - deirdre", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.821+0000", "entityId": 7612, "properties": {"text": "Subject: aga for 6 / 16 / 00 is predicted at 82\ni will keep runing my aga model ( the molecule model ) for awhile . for the last\ntwo weeks the numbers that came out from the model are in the lucky side .\nsee the following table .\nthe following figures shows the overall fit .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.825+0000", "entityId": 7613, "properties": {"text": "Subject: sap ids - coming soon ! ! !\nyour sap id and password will be communicated to you on june 22 . this\nid / password combination will enable you to . . .\naccess ehronline to modify your personal information , view your pay advice ,\naccess your individual time sheet , and view your benefit elections .\nenter financial , procurement , project management , and / or human resources\ninformation based on the system security you have been assigned .\ncurrent sap users receiving this e - mail will be receiving a new id to replace\ntheir current one as part of the 7 - 1 - 00 implementation - - the new id will be\na \" p # \" ( personnel number ) generated from sap hr .\nif you have questions or comments , please call the coe sap hotline at\n713 - 345 - 4 sap ( 4727 ) or visit our web site at http : / / sap . enron . com / coe .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.830+0000", "entityId": 7614, "properties": {"text": "Subject: followup from iris mack\nhi ,\nthank you for your email . i am indeed interested in exploring\nopportunities in your group - research ( quantitative modeling ) .\njust a note to let you know that i am not in the pure quantitative\nresearch\ngroup here at bnp paribas - but in the derivatives structured products . i do\nsome of my own modeling and basic excel programming . i used to do a lot of\nfortran programming . however , i am not a very good c / c + + programmer .\nhope this gives you further details about my skills and interests .\nthank you ,\niris\nin\niris ,\nat this point it ' s my group : research , i . e . quantitative modeling .\nplease , let me know what your interests are and i shall try to line up\nother groups for the interview .\nvince\niris . mack @ bnpparibas . com on 06 / 09 / 2000 02 : 33 : 50 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 10 ] : greetings from london ( to enron )\nhi ,\ni will be out of the country until wednesday afternoon - london time .\nmaybe we can chat then .\nalso , could you please tell me about the group ( s ) that are interested\nin\nspeaking with me .\nthanks ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 06 / 06 / 2000 20 : 31 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 8 ] : greetings from london ( to enron )\niris ,\nleaving for ca in a few minutes . i shall get back to you monday .\nvince\niris . mack @ bnpparibas . com on 06 / 06 / 2000 10 : 36 : 46 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 8 ] : greetings from london ( to enron )\nhi ,\nthanks for your email . begining of july - what about july 4 th week ?\ncould you give me a bit more info regarding the best days for you and\nyour\ncolleagues .\nthanks ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 06 / 06 / 2000 14 : 29 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 6 ] : greetings from london ( to enron )\niris ,\nthe beginning of july would be better for us . please , let me know what\nis your availability .\nvince\niris . mack @ bnpparibas . com on 06 / 06 / 2000 02 : 30 : 49 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 6 ] : greetings from london ( to enron )\nhi ,\nthank you for your email . how many days do we need ?\ni have checked my calendar . and think that i should be able to come on\nmonday june 19 th ( tuesday june 20 th - if you need more than one day ) . .\ni can fly from london to houston during the following weekend to\narrive in\ntime for monday morning .\nlet me know if these days are good for you and your colleagues .\nregards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 18 : 33 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 4 ] : greetings from london ( to enron )\niris ,\nwe can invite you for an interview to houston .\nwhat would be a the time for you ?\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 11 : 32 : 04 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 4 ] : greetings from london ( to enron )\nhi ,\nthank you for your prompt response . i am interested in any contacts\nyou\nmay have in your rolodex .\nalso , i would be opened to talk to enron as well . please let me know\nmore\ndetails .\nkind regards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 16 : 19 gmt\nto : iris mack\ncc : vince . j . kaminski , stinson . gibner , grant . masson ,\npinnamaneni . krishnarao ,\nvasant . shanbhogue\nbcc :\nsubject : re : re [ 2 ] : greetings from london ( to enron )\niris ,\ni shall go through my rolodex and try to find some good leads for you . i\nleft\ninvestment banking 8 years ago and this field changes very fast .\nalternatively , would you be interested in a company like enron\nor another energy company in houston ?\nplease , let me know .\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 09 : 20 : 01 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 2 ] : greetings from london ( to enron )\nhi ,\nhow are you ? thank you kindly for your email . sorry i have not\nresponded\nsooner .\ncurrently i am working in derivatives structured products and risk\nmanagement at bnp paribas in london . although i currently enjoy living and\nworking in london , i may need to return to the states - because of my\nmother ' s\nfailing health .\ndo you know of any good contacts at investment banks that i may\nforward my\ndetails to ?\nfor your information , i have attached my cv . ( please see attached\nfile :\niris marie mack . doc ) .\nthank you in advance for your time and consideration .\nkind regards ,\niris mack\n44 ( 0 ) 20 7595 8665 ( work )\n44 ( 0 ) 20 7229 9986 ( home )\n( see attached file : iris marie mack . doc )\ninternet\nfrom : vince . j . kaminski @ enron . com on 04 / 04 / 2000 15 : 03 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : greetings from london ( to enron )\niris ,\nplease , feel free to give me a call when you have a few minutes .\ni shall be glad to chat with you .\nvince\niris . mack @ paribas . com on 03 / 30 / 2000 02 : 24 : 27 am\nto : vkamins @ enron . com\ncc : denis . autier @ paribas . com\nsubject : greetings from london ( to enron )\ndear dr . kaminski ,\nhow are you ? it was nice to meet you at the real options conference\nin\nnyc .\ni was intrigued by some of the comments in your conference talk . in\nparticular , by your use of real options to hedge financial options . this\nis\nsomething i am interested in as well .\nwhen you have some time , could we chat about this topic in a bit more\ndetail ?\nthanks for your time and consideration . hope to hear from you soon .\nregards ,\niris mack\n- - - - - - - - - - - - - - - -\nthis message is confidential ; its contents do not constitute a\ncommitment by bnp paribas group * except where provided\nfor in a written agreement between you and bnp paribas group * .\nany unauthorised disclosure , use or dissemination , either\nwhole or partial , is prohibited . if you are not the intended\nrecipient of the message , please notify the sender immediately .\n* bnp paribas group is a trading name of bnp sa and paribas sa\nce message est confidentiel ; son contenu ne represente en\naucun cas un engagement de la part du groupe bnp paribas *\nsous reserve de tout accord conclu par ecrit entre vous et le\ngroupe bnp paribas * . toute publication , utilisation ou diffusion ,\nmeme partielle , doit etre autorisee prealablement . si vous n ' etes\npas destinataire de ce message , merci d ' en avertir immediatement\nl ' expediteur .\n* le groupe bnp paribas est le nom commercial utilise par bnp sa et paribas\nsa\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n- iris marie mack . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.835+0000", "entityId": 7615, "properties": {"text": "Subject: vince ,\nthis morning i got a call from richard bryant , director of computational\nfinance\nprogram at carnegie mellon university ( the program kevin and i went through ) .\nhe ' s interested in getting enron involved with their program designing and\n( more critically i guess ) campus recruiting effort . i gave him your phone\nnumber\nand email . you can expect to hear something from him soon .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.839+0000", "entityId": 7616, "properties": {"text": "Subject: security question\ndear guys\nhaving been out of the office for a couple of days , i ' ve found myself the\nvictim of theft ( again ) . this time my desk drawer key has been stolen from\nits \" hiding place \" under my telephone . i * always * lock my drawers and keep\nthe key in the same place , but on arriving in the office today i found the\ndrawers unlocked , and the key missing . although there ' s nothing sensitive on\nor around my desk , i ' m concerned about the security implications of someone\nsniffing around the office in this manner . i also found the papers on my\ndesk extensively reshuffled last week .\nlast year , in our old office , i had my only two real options books stolen\nfrom among the many and varied books on my desk . that couldn ' t have been a\nrandom theft , and i fear this isn ' t either . i can ' t understand who ' d be so\ninterested in a research guy ' s belongings !\ncan we ask security to check their surveillance footage for any suspicious\nactivity around my desk ?\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.844+0000", "entityId": 7617, "properties": {"text": "Subject: re : move computer from the research group 19 th floor to the 44 th\nfloor\nshirley -\ni spoke with janelle duree ( manager - move team ) , she is investigating the\nmystery of the missing phone and will call me back with status - if you can\ntake care of the pc , i think we look good on the phone . i also spoke with\npaul racicot to make sure we are all of the same mind and he is set as well .\np\nshirley crenshaw @ ect\n06 / 15 / 00 02 : 06 pm\nto : emmanuel mangin / corp / enron @ enron\ncc : clayton vernon / corp / enron @ enron , paula corey / enron communications @ enron\ncommunications , vince j kaminski / hou / ect @ ect\nsubject : move computer from the research group 19 th floor to the 44 th floor\nhi emmanuel :\nwe need a computer installed on the 44 th floor tomorrow , if at all possible .\nwe have a new summer intern coming on monday the 19 th and the\ncomputer and everything else has disappeared from his desk .\nthe location is eb 4444 b .\nthe computer we are moving is clayton vernon ' s old computer . he is\nfinishing up moving his files to his new computer as i am writing this .\nplease call me in the morning and we will talk further .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.849+0000", "entityId": 7618, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nplease note that there is only two days remaining to complete feedback in the\nsystem\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\ncarson , richard l richard b buy may 22 , 2000\ncrenshaw , shirley j wincenty j . kaminski may 24 , 2000\nganjoo , shalesh peyton s gibner jun 15 , 2000\nghosh , soma timothy davies may 31 , 2000\nkaminski , wincenty j . david w delainey jun 05 , 2000\noverdyke , jere c . david w delainey jun 12 , 2000\npeyton , john a randal t maffett jun 05 , 2000\nthuraisingham , ravi vasant shanbhogue may 30 , 2000\nvernon , clayton j vasant shanbhogue may 26 , 2000\nyuan , ding richard l carson jun 02 , 2000\nzipter , rudi c theodore r murphy may 25 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.854+0000", "entityId": 7619, "properties": {"text": "Subject: intranet site\ndear dale / all ,\nthanks for the interest . . . i have already contacted intranet development\nabout updates - they don ' t have to do much except publish the document and\nmaybe add some headings , so it resources are not really a problem . as you\nsuggest , what would be great is if we can get some more content in terms of\nwell - explained introductions to various topics like value - at - risk , credit\nrisk and so on . it should not be at too high a level and will probably have\nto be written specifically for this purpose . if you have time to put any\ninteresting material together ( word docs , text files or power point\npresentations ) , please do pass it on to me and i will collate for the update .\nregards ,\nanjam\nx 35383\ndale surbey\n15 / 06 / 2000 10 : 13\nto : anjam ahmad / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , kirstee\nhewitt / lon / ect @ ect , benjamin parsons / lon / ect @ ect , steven leppard / lon / ect @ ect ,\nmatthew d williams / lon / ect @ ect\nsubject : re : e - commerce & continental europe\nanjam ,\nthis would be a good opportunity to update the content on the intranet site\nand expand the coverage into new areas . can you arrange some it resources\nfor us ? if everyone in research works on developing the content , we just\nneed it to publish it out to the intranet .\nthoughts ? ?\n- dale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.859+0000", "entityId": 7620, "properties": {"text": "Subject: re : e - commerce & continental europe\nanjam ,\nthis would be a good opportunity to update the content on the intranet site\nand expand the coverage into new areas . can you arrange some it resources\nfor us ? if everyone in research works on developing the content , we just\nneed it to publish it out to the intranet .\nthoughts ? ?\n- dale\nenron europe\nfrom : anjam ahmad 15 / 06 / 2000 10 : 01\nto : sven becker / fra / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , joe gold / lon / ect @ ect\nsubject : e - commerce & continental europe\nhi sven ,\nthanks a lot for your note - i think it would be great to see what we can do\nto help you & joe ' s business units . plenty of our knowledge is no longer\nproprietary in that quite a lot of this information is now in the public\ndomain - we can sit down and discuss this on thursday afternoon if that works\nfor you .\nregards ,\nanjam\nx 35383\nsven becker\n14 / 06 / 2000 19 : 10\nto : anjam ahmad / lon / ect @ ect\ncc : clemens mueller / lon / ect @ ect\nsubject : re : research group intranet site\nanjam , congratulations on your initiative . i appreciate that you share this\ninformation throughout enron .\nas you may know , my group is working with joe ' s business units to create\nso - called market hubs .\ni see great potential in sharing some of the information that you have\nacucmulated and that is not proprietary to enron .\ni would appreciate if we could sit down tomorrow and talk about the\npossibility to leverage on the existing know - how .\nregards\nsven\nplease respond to anjam ahmad / lon / ect\nto : ect europe\ncc :\nsubject : research group intranet site\nresearch group intranet site\nfollowing the recent lunch presentations , there has been considerable\ninterest from enron europe staff in improving their quantitative skills ,\nhelping to maintain our competitive advantage over competitors . we have\nrecently created the research group ' s intranet site which you can find on the\nenron europe home page under london research group . the site contains an\nintroduction to the group and also information on :\nderivatives pricing\nrisk management\nweather derivatives\nextensive links\nweather derivatives\ncredit risk\nextensive links database\nif you have any questions or issues on quantitative analysis ( including\nhedging and risk management of derivatives ) please don ' t hesitate to get in\ntouch .\nregards ,\nanjam ahmad\nresearch group\nfirst floor enron house\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.863+0000", "entityId": 7621, "properties": {"text": "Subject: enron europe research group intranet site\nannounced to enron europe with very positive response .\nhope to catch up with you soon ( probably july ) ,\nanjam\nx 35383\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 15 / 06 / 2000 09 : 20\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : enron europe general announcement 14 / 06 / 2000\n18 : 53\nplease respond to anjam ahmad / lon / ect\nto : ect europe\ncc :\nsubject : research group intranet site\nresearch group intranet site\nfollowing the recent lunch presentations , there has been considerable\ninterest from enron europe staff in improving their quantitative skills ,\nhelping to maintain our competitive advantage over competitors . we have\nrecently created the research group ' s intranet site which you can find on the\nenron europe home page under london research group . the site contains an\nintroduction to the group and also information on :\nderivatives pricing\nrisk management\nweather derivatives\ncredit risk\nextensive links database\nif you have any questions or issues on quantitative analysis ( including\nhedging and risk management of derivatives ) please don ' t hesitate to get in\ntouch .\nregards ,\nanjam ahmad\nresearch group\nfirst floor enron house\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.868+0000", "entityId": 7622, "properties": {"text": "Subject: e - commerce & continental europe\nhi sven ,\nthanks a lot for your note - i think it would be great to see what we can do\nto help you & joe ' s business units . plenty of our knowledge is no longer\nproprietary in that quite a lot of this information is now in the public\ndomain - we can sit down and discuss this on thursday afternoon if that works\nfor you .\nregards ,\nanjam\nx 35383\nsven becker\n14 / 06 / 2000 19 : 10\nto : anjam ahmad / lon / ect @ ect\ncc : clemens mueller / lon / ect @ ect\nsubject : re : research group intranet site\nanjam , congratulations on your initiative . i appreciate that you share this\ninformation throughout enron .\nas you may know , my group is working with joe ' s business units to create\nso - called market hubs .\ni see great potential in sharing some of the information that you have\nacucmulated and that is not proprietary to enron .\ni would appreciate if we could sit down tomorrow and talk about the\npossibility to leverage on the existing know - how .\nregards\nsven\nplease respond to anjam ahmad / lon / ect\nto : ect europe\ncc :\nsubject : research group intranet site\nresearch group intranet site\nfollowing the recent lunch presentations , there has been considerable\ninterest from enron europe staff in improving their quantitative skills ,\nhelping to maintain our competitive advantage over competitors . we have\nrecently created the research group ' s intranet site which you can find on the\nenron europe home page under london research group . the site contains an\nintroduction to the group and also information on :\nderivatives pricing\nrisk management\nweather derivatives\nextensive links\nweather derivatives\ncredit risk\nextensive links database\nif you have any questions or issues on quantitative analysis ( including\nhedging and risk management of derivatives ) please don ' t hesitate to get in\ntouch .\nregards ,\nanjam ahmad\nresearch group\nfirst floor enron house\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.873+0000", "entityId": 7623, "properties": {"text": "Subject: pac enrollment\nlast year the enron political action committee ( pac ) launched a campaign to\nbecome a \" million dollar pac \" . enron employees , who provide all of the\nfunding for the pac , responded and the enron pac reached its objective ,\nbecoming one of the largest corporate pacs . this year we face a new\nchallenge . with the sale of eog , the announced sale of pge and normal\nemployee turnover , we have lost a significant number of consistent\ncontributors . we are seeking your support . if you are not a member , please\njoin . if you are a member , we hope you will consider increasing your\ncontribution .\nthe enron pac is an essential tool in our effort to promote sound public\npolicy . our pac funds support local , state and federal candidates , of both\nparties , who support open markets , deregulation and customer choice . amounts\ncontributed may be used to make political contributions in connection with\nfederal and state elections and are subject to the limits of the federal\nelection campaign act . while our pac has grown thanks to our employee\ncontributions , it still generates just a fraction of the expenditures of\nthose who oppose these ideals .\nthis year , as always , we face challenges and opportunities for every one of\nour businesses , including such issues as taxation and regulation of\ne - commerce , electric industry restructuring , regulation of derivatives ,\ninternational trade and investment legislation , pipeline safety , local and\nstate decisions affecting the siting and interconnection of power plants and\na variety of environmental and tax issues . enron has a long and successful\ntrack record of supporting and advancing good public policy . that track\nrecord depends on access to and regular communication with , decision makers .\nthe pac provides that access - - it shows policy makers that real voters care\nabout what they are doing .\none of the best things about enron is that we don \u0001 , t just take things as they\nare . we challenge the status quo . we ask why . we change things . the pac\nhelps us do that . we need you to help the pac . sign up today - and please\nconsider the following contribution guidelines :\nmanager $ 500 / year\ndirector $ 750 / year\nsr . director / general manager $ 1 , 000 / year\nvice president $ 2 , 500 / year\nsr . vp / managing director $ 3 , 500 / year\nexecutive committee $ 5 , 000 / year\nall contributions are voluntary and these guidelines are merely suggestions .\nyou are free to contribute more or less than the guidelines suggested and\nenron will not favor or disadvantage anyone by reason of the amount of their\ncontribution or their decision not to contribute . you may refuse to\ncontribute without fear of reprisal .\nonly u . s . citizens and resident - aliens living in the u . s . can contribute to\nthe enron pac . the maximum contribution is $ 5 , 000 per year per individual .\nan individual may not contribute more than $ 25 , 000 to all federal candidates\nand committees within a calendar year . the law requires that enron report\nname , address , employer and occupation for every person who contributes over\n$ 200 / year .\nno portion of any contribution is deductible as a charitable contribution for\nfederal income tax purposes .\nthanks for your support ! sign up now , or revise your current contribution\nlevel by connecting with the pac intranet site :\nhttp : / / pacmembers . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.877+0000", "entityId": 7624, "properties": {"text": "Subject: volumetric optionality model changes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 06 / 15 / 2000 08 : 19 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nnatasha danilochkina\n06 / 15 / 2000 05 : 26 am\nto : david gallagher / lon / ect @ ect , peter crilly / lon / ect @ ect , richard\nlewis / lon / ect @ ect , haakon olafsson / lon / ect @ ect , tony fricker / lon / ect @ ect ,\nandrew fairley / lon / ect @ ect , matthew nicholas / lon / ect @ ect , david\nredmond / lon / ect @ ect , steven mccarthy / lon / ect @ ect , dale surbey / lon / ect @ ect ,\nmatthew nimmo / lon / ect @ ect , matthew ferguson / lon / ect @ ect\ncc : anjam ahmad / lon / ect @ ect , zimin lu / hou / ect @ ect , steven\nleppard / lon / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : volumetric optionality model changes\nas a result of meetings with zimin lu ( houston research ) and anjam ahmad in\nearly june , the gas desk together with research will be revising the models\nfor pricing options on volume ( swing ) and similar products .\nthe idea is to have a consistent method that can be applied to all contracts .\nthis will affect :\nflat price gas swing options\nindexed gas swing options\nj - block contract\nmodified thermbank contract\nenbank ( virtual storage )\nthe new feature that will be introduced into all models is ability for\nreal - time mtm ( and prospectively - sensitivities calculations ) .\nthe work will be carried out as follows :\nnatasha danilochkina : problem definition , contracts / products summary ,\nfunctional specification\nanjam ahmad : zimin ' s model modifications / implementation and houston / london\ninteraction\nstart date : june 16 th , 2000\nend date : tbc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.882+0000", "entityId": 7625, "properties": {"text": "Subject: re : london research prc\ndale ,\nthanks for the update . i fully concur with all the rankings .\nit seems things are going well with the research group in\nlondon and this is , to a very large extent , your contribution .\ni think that anjam has improved a lot . i don ' t think , however ,\nthat he can run the group in the future . steve emerged as a natural\nleader and has overwhelming support in the organization .\nvince\ndale surbey\n06 / 15 / 2000 02 : 28 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : london research prc\nvince ,\nwe had the prc preranking for rac and research in london yesterday . here ' s\nhow everyone came out :\nsteven - superior : no controversy here . steve received consistently strong\nfeedback ( ranked as either superior or excellent in all categories ) . the\nonly rough spot was teamwork , arising from the friction between anjam and\nhimself .\nanjam - excellent : anjam received rankings of superiors or excellents in all\ncategories . several reviewers commented that anjam ' s performance in the\nareas of producing results in a timely manner and communication have\nimproved . i felt the overall ranking of excellent was justified based on\nthis feedback , even though in terms of leadership i don ' t rate him high\nenough to run the group here .\nstinsen provided the most insightful comment on anjam ' s performance :\n\" technically superior but lets his quest for a leadership position detract\nfrom his overall performance \" .\non a related topic , anjam has been taking random days off , typically on short\nnotice , so i suspect he ' s interviewing for a new job . given his inability to\nwork with steven ( especially in the future when stephen heads the group ) ,\nthis may be the best long - term solution . any thoughts ?\nben - superior : another non - controversial ranking . ben received\nconsistently high marks from all the groups he supports , especially in the\narea of non - technical skills .\ni nominated ben for promotion to senior specialist . even though he was\npromoted at year end , he ' s taken on a lot of responsibility training kirstee\nand helping manage the other quant resources in brian ' s group . also , since\nkirstee was hired in at the same level as ben , a mid - year promotion is\nappropriate since he ' s effectively her supervisor .\nkirstee - strong : only limited feedback in the 2 months she ' s been here .\nhigh marks for technical / quantitative , strong in the \" soft \" skills . i think\nthe strong rating is the right message for early in the game - gives her a\ntarget for improvement for the rest of the year .\n- dale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.887+0000", "entityId": 7626, "properties": {"text": "Subject: today ' s discussion\nanjam , thanks for organising this - and vince thanks for making yourself\navailable for the discussion .\ni am working for joe gold and my group is concerned with adding the web as an\nadditional sales and communication channel for our european business units .\nthrough the web we are also able to convey a more local image , rather than\npresenting ourselves as a texan company through enron . com .\nto set you into perspective about what we have in mind i have attached a\nbrief presentation which has been the basis for the sign off of the project .\nwe intend to display a wide training section for the following reasons :\ndocument our know - how base\neducate the market participants\ngenerate great stickiness ( participants should know that if they need to know\ns . th . on energy risk mgt . they should go to enron )\nlater on : have the option to commercialise this area .\ni look forward to our discussion .\nkind regards\nsven becker", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.891+0000", "entityId": 7627, "properties": {"text": "Subject: dr . kaminski ,\non wednesday , june 14 th i attended your presentation entitled \" the challenge\nof valuation of energy related derivatives \" at the risk 2000 conference in\nboston . can you please e - mail me the slides you presented .\nalso , you mentioned that the method you used to calculate volatility for\nenergy prices was not the \" normal \" method . can you please tell me , or give\nme a reference to the method that you did use .\nthank you ,\naaron gould\nsenior risk management analyst\npseg services corporation\naaron . gould @ pseg . com\n1 - 973 - 456 - 3527", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.896+0000", "entityId": 7628, "properties": {"text": "Subject: re : re [ 10 ] : greetings from london ( to enron )\nteresa ,\ni would like to invite iris for an interview in houston .\nshe works currently in london can you call her\nand ask when she is planning to visit the states .\nwe could pay the airfare from a location in the states .\ni would hate to pay the lst class ticket from london to houston ,\nthough i would go for it , if necessary ( i don ' t\nwant a candidate to think that we are that cheap ) .\nbusiness class is a standard\nfor business related , cross - atlantic flights .\ni would be more comfortable if you could negotiate this issue .\nthanks\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 16 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 12 / 2000 03 : 51 pm\nto : iris . mack @ bnpparibas . com @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : re [ 10 ] : greetings from london ( to enron )\niris ,\nat this point it ' s my group : research , i . e . quantitative modeling .\nplease , let me know what your interests are and i shall try to line up\nother groups for the interview .\nvince\niris . mack @ bnpparibas . com on 06 / 09 / 2000 02 : 33 : 50 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 10 ] : greetings from london ( to enron )\nhi ,\ni will be out of the country until wednesday afternoon - london time .\nmaybe we can chat then .\nalso , could you please tell me about the group ( s ) that are interested in\nspeaking with me .\nthanks ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 06 / 06 / 2000 20 : 31 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 8 ] : greetings from london ( to enron )\niris ,\nleaving for ca in a few minutes . i shall get back to you monday .\nvince\niris . mack @ bnpparibas . com on 06 / 06 / 2000 10 : 36 : 46 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 8 ] : greetings from london ( to enron )\nhi ,\nthanks for your email . begining of july - what about july 4 th week ?\ncould you give me a bit more info regarding the best days for you and\nyour\ncolleagues .\nthanks ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 06 / 06 / 2000 14 : 29 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 6 ] : greetings from london ( to enron )\niris ,\nthe beginning of july would be better for us . please , let me know what\nis your availability .\nvince\niris . mack @ bnpparibas . com on 06 / 06 / 2000 02 : 30 : 49 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 6 ] : greetings from london ( to enron )\nhi ,\nthank you for your email . how many days do we need ?\ni have checked my calendar . and think that i should be able to come on\nmonday june 19 th ( tuesday june 20 th - if you need more than one day ) . .\ni can fly from london to houston during the following weekend to\narrive in\ntime for monday morning .\nlet me know if these days are good for you and your colleagues .\nregards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 18 : 33 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 4 ] : greetings from london ( to enron )\niris ,\nwe can invite you for an interview to houston .\nwhat would be a the time for you ?\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 11 : 32 : 04 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 4 ] : greetings from london ( to enron )\nhi ,\nthank you for your prompt response . i am interested in any contacts\nyou\nmay have in your rolodex .\nalso , i would be opened to talk to enron as well . please let me know\nmore\ndetails .\nkind regards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 16 : 19 gmt\nto : iris mack\ncc : vince . j . kaminski , stinson . gibner , grant . masson ,\npinnamaneni . krishnarao ,\nvasant . shanbhogue\nbcc :\nsubject : re : re [ 2 ] : greetings from london ( to enron )\niris ,\ni shall go through my rolodex and try to find some good leads for you . i\nleft\ninvestment banking 8 years ago and this field changes very fast .\nalternatively , would you be interested in a company like enron\nor another energy company in houston ?\nplease , let me know .\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 09 : 20 : 01 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 2 ] : greetings from london ( to enron )\nhi ,\nhow are you ? thank you kindly for your email . sorry i have not\nresponded\nsooner .\ncurrently i am working in derivatives structured products and risk\nmanagement at bnp paribas in london . although i currently enjoy living and\nworking in london , i may need to return to the states - because of my\nmother ' s\nfailing health .\ndo you know of any good contacts at investment banks that i may\nforward my\ndetails to ?\nfor your information , i have attached my cv . ( please see attached\nfile :\niris marie mack . doc ) .\nthank you in advance for your time and consideration .\nkind regards ,\niris mack\n44 ( 0 ) 20 7595 8665 ( work )\n44 ( 0 ) 20 7229 9986 ( home )\n( see attached file : iris marie mack . doc )\ninternet\nfrom : vince . j . kaminski @ enron . com on 04 / 04 / 2000 15 : 03 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : greetings from london ( to enron )\niris ,\nplease , feel free to give me a call when you have a few minutes .\ni shall be glad to chat with you .\nvince\niris . mack @ paribas . com on 03 / 30 / 2000 02 : 24 : 27 am\nto : vkamins @ enron . com\ncc : denis . autier @ paribas . com\nsubject : greetings from london ( to enron )\ndear dr . kaminski ,\nhow are you ? it was nice to meet you at the real options conference\nin\nnyc .\ni was intrigued by some of the comments in your conference talk . in\nparticular , by your use of real options to hedge financial options . this\nis\nsomething i am interested in as well .\nwhen you have some time , could we chat about this topic in a bit more\ndetail ?\nthanks for your time and consideration . hope to hear from you soon .\nregards ,\niris mack\n- - - - - - - - - - - - - - - -\nthis message is confidential ; its contents do not constitute a\ncommitment by bnp paribas group * except where provided\nfor in a written agreement between you and bnp paribas group * .\nany unauthorised disclosure , use or dissemination , either\nwhole or partial , is prohibited . if you are not the intended\nrecipient of the message , please notify the sender immediately .\n* bnp paribas group is a trading name of bnp sa and paribas sa\nce message est confidentiel ; son contenu ne represente en\naucun cas un engagement de la part du groupe bnp paribas *\nsous reserve de tout accord conclu par ecrit entre vous et le\ngroupe bnp paribas * . toute publication , utilisation ou diffusion ,\nmeme partielle , doit etre autorisee prealablement . si vous n ' etes\npas destinataire de ce message , merci d ' en avertir immediatement\nl ' expediteur .\n* le groupe bnp paribas est le nom commercial utilise par bnp sa et paribas\nsa\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n- iris marie mack . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.902+0000", "entityId": 7629, "properties": {"text": "Subject: re : followup from iris mack\nhi again ,\ni thought it might be helpful if i forwarded a document which describes\nsome of the hybrid structured products i have been contemplating . please\nrefer\nto the attached files .\nin addition , any further information regarding my coming to houston ?\nregards ,\niris\n( see attached file : hybrid structured products . doc )\n( see attached file : diagram of aircraft delivery options . doc )\n- - - - - - - - - - - - - - - -\nthis message is confidential ; its contents do not constitute a\ncommitment by bnp paribas group * except where provided\nfor in a written agreement between you and bnp paribas group * .\nany unauthorised disclosure , use or dissemination , either\nwhole or partial , is prohibited . if you are not the intended\nrecipient of the message , please notify the sender immediately .\n* bnp paribas group is a trading name of bnp sa and paribas sa\nce message est confidentiel ; son contenu ne represente en\naucun cas un engagement de la part du groupe bnp paribas *\nsous reserve de tout accord conclu par ecrit entre vous et le\ngroupe bnp paribas * . toute publication , utilisation ou diffusion ,\nmeme partielle , doit etre autorisee prealablement . si vous n ' etes\npas destinataire de ce message , merci d ' en avertir immediatement\nl ' expediteur .\n* le groupe bnp paribas est le nom commercial utilise par bnp sa et paribas sa\n- hybrid structured products . doc\n- diagram of aircraft delivery options . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.907+0000", "entityId": 7630, "properties": {"text": "Subject: re : interest\ndavid ,\nplease , call shirley crenshaw ( my assistant ) ,\nextension 5 - 5290 to set it up .\nvince\ndavid p dupre\n06 / 15 / 2000 05 : 18 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : interest\nwhat time ( s ) are you available over the next few days ?\nthanks\ndavid\n3 - 3528\nvince j kaminski\n06 / 15 / 2000 05 : 16 pm\nto : david p dupre / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : interest\ndavid ,\nplease , stop by to chat about it for a few minutes .\nvince\ndavid p dupre\n06 / 15 / 2000 11 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : interest\nmay we meet to discuss my interest in joining your group ?\ni have a strong quantitative discipline and am highly numerate .\nthanks\ndavid 3 - 3528\n- - - - - - - - - - - - - - - - - - - - - - forwarded by david p dupre / hou / ect on 06 / 15 / 2000 11 : 53\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : david p dupre / hou / ect @ ect\ncc :\nsubject : re : interest\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.912+0000", "entityId": 7631, "properties": {"text": "Subject: re : opportunities at enron\nvince kaminski ,\ni am one of the stanford students that you interviewed last october .\ni really apologize for contacting you that late , but for\nsome reason when i wrote the email that i transcribe below i did not send\nit , and just realized about that until now .\nalso , i want to thank you again for opening the\npossibility of a summer internship at enron .\nregards ,\njorge picazo\n> vince kaminski ,\n>\n> i am one of the students that you interviewed at stanford university\n> last october .\n>\n> during our meeting i asked for the possibility of an internship position\n> at enron during this summer , and you asked me to send you an email\n> by february .\n>\n> however and after a long talk with my advisor , i have decided to focus\n> on my academic research during the summer , and i am writing to let you\n> know about my decision .\n>\n> in any case , i really want to thank you for opening the possibility of a\n> summer internship at enron . if my academic duties had not keep me at\n> stanford , i am sure that it would have been a great experience .\n>\n> thanks anyway ,\n>\n> jorge picazo\n>\n>\n>\n>\n> > hello ,\n> >\n> > my name is vince kaminski and i am in charge of quantitative research at\nenron\n> > corp . i shall visit the stanford campus on october 21 and 22 ( thursday and\n> > friday )\n> > and hope to talk to a number of faculty members about recruiting stanford\n> > graduates for enron .\n> >\n> > i shall be accompanied by two other enron employees : greg whalley , a\nstanford\n> > graduate , head of risk management at enron and my boss , and celeste\nroberts ,\n> > head of our associate / analyst program .\n> >\n> > if you are interested in meeting with me and two other members of the\nenron\n> > team to talk about opportunities at enron , send me a message to two\ne - mail\n> > addresses : vkaminski @ aol . com ( home ) and vkamins @ enron . com ( office ) . i\nshall\n> > send you in the beginning of the next week information about the time and\n> > place of the meeting .\n> >\n> > you can also reach me at ( 713 ) 853 3848 .\n> >\n> > vince kaminski\n> >\n=\njorge a . picazo hidalgo\nph . d . candidate adress : 1600 villa st apt 391\ndepartment of statistics 94041 , mountain view ca\nstanford university\nsequoia hall rm 237 phone : ( 650 ) 965 - 4119\nm . s . email : jpicazo @ leland . stanford . edu\ndepartment of engineering - economic jpicazo @ stat . stanford . edu\nsystems and operations research\nstanford university\n=", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.916+0000", "entityId": 7632, "properties": {"text": "Subject: re : followup\nvince ,\ni have left a message w / bruce requesting the password for the neural network\nsite , and am waiting for his reply .\ntrish\nvince j kaminski\n06 / 16 / 2000 10 : 16 am\nto : patricia tlapek / hou / ect @ ect\ncc :\nsubject : re : followup\ntrish ,\ni could not access his neural network site .\nit requires access password .\nvince\nfrom : patricia tlapek 06 / 12 / 2000 03 : 57 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : followup\n- - - - - - - - - - - - - - - - - - - - - - forwarded by patricia tlapek / hou / ect on 06 / 12 / 2000\n03 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarcharts @ aol . com on 06 / 09 / 2000 10 : 01 : 59 am\nto : patricia . tlapek @ enron . com , mike . roberts @ enron . com\ncc :\nsubject : followup\ngood morning ,\ni enjoyed visiting you yesterday afternoon to discuss the opportunity at\nenron . sounds exciting , challenging and a good use of a lot of my skills and\nexperience . i look forward to further talks , hopefully this coming week .\ni mentioned a couple web sites and don ' t know if they came through clearly on\nthe phone with my sore throat .\nthe neural network approach to timing can be found at\nhttp : / / www . pfr . com / ptonline /\nthe introductory piece on technical analysis i wrote for forbes . com and the\nglossary can be found at htttp : / / www . forbes . com / tool / html / 00 / jun / 0603 / feat . htm\ni am also working with long time friend and neighbor steve nison with his\nsite and you can see the first on line lesson for free at\nhttp : / / www . candlecharts . com /\nhave a nice weekend . hope to hear from you next week .\nbruce m . kamich , cmt\nbarcharts @ aol . com\n732 - 463 - 8438", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.924+0000", "entityId": 7633, "properties": {"text": "Subject: network design optimization .\nfyi ,\nattached document is a specification of the network design optimization\nprogram . just in case you want to see how it looks like .\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n06 / 19 / 2000 02 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n06 / 19 / 2000 02 : 34 pm\nto : phil markwart / enron communications @ enron communications\ncc : samer _ takriti @ enron . net\nsubject : network design optimization .\nphil ,\nthe optimization engine is ready and the graphical user interface is almost\ndone . attached please find the updated network design optimization\nspecification . it contains some additions and modifications to the old\nspecification i sent you a while ago . the major changes are :\n1 . the program now also supports ring design . and it can solve to optimality\n2 . the graphical user interface is handled by visual basic on a pc . ( not on\nthe web browser as in the previous spec . ) .\nplease take a look at the specification document and let me know if there is\nanything you want to add / change / remove . . . etc .\nmoreover , please do not forget to send us a test example .\nwe are buying cplex and will install it on our network . hopefully our it\nteams can configure your machine to run it in a few weeks .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.930+0000", "entityId": 7634, "properties": {"text": "Subject: energy : oil drilling : survey finds producers plan to spend more\nthan originally planned in . . .\nsurvey finds producers plan to spend more than originally planned in 2000\n06 / 19 / 2000\npetroleum finance week\n( c ) 2000 phillips business information , inc .\noil and gas producers plan to increase their worldwide exploration and\nproduction expenditures by more than they anticipated\nat the beginning of the year , lehman brothers inc . found in a mid - year\nupdate of its annual e & p survey . \" the 326 companies\nwe surveyed are planning on an 18 . 2 percent increase , versus a 10 . 2 percent\nrise budgeted in december , \" said james d .\ncrandell , who follows oil services and drilling for the new york investment\nbanker .\nhe emphasized that the gain by the 326 producers in lehman ' s survey reflects\nincreases in budgets for 2000 and not\nunderspending of budgets during 1999 . \" among the companies that were\nincluded in our december 1999 and may 2000\nsurveys , global spending actually came in slightly above what was estimated\nto have been spent during 1999 in december . it\nalso indicates that nearly $ 6 billion has been added to 2000 worldwide\nexploration budgets since december , \" crandell said .\nthe survey ' s respondents said that they planned to increase u . s . e & p\nexpenditures by 17 . 6 percent , up from 15 . 9 percent\nearlier in the year . crandell said that the greater increase was driven\nalmost entirely by independent producers . \" in our survey ,\n227 independents indicated e & p spending growth in 2000 of 26 . 1 percent\nversus a 22 . 9 percent increase budgeted for the\nyear in december , \" he indicated . \" some 40 percent of the independents we\nsurveyed have increased their u . s . e & p budgets ,\nwhile about 23 percent plan on spending less than what they indicated last\ndecember . higher natural gas prices and increased\ncash flow are the main drivers behind this . \"\ncrandell said that anadarko petroleum corp . ( nyse : apc ) , apache corp . ( nyse :\napa ) , bhp petroleum , h . s . resources inc .\n( nyse : hse ) , mcmoran exploration co . ( nyse : ran ) , mdu resources group inc .\n( nyse : mdu ) , mitchell energy and\ndevelopment corp . ( nyse : mnd . a and mnd . b ) , santa fe snyder corp . ( nyse :\nsfs ) , stone energy corp . ( nyse : sgy ) and\ntitan exploration inc . - now pure resources inc . ( nyse : prs ) - were among\nthe larger independents to make the most\nsignificant upward revisions . the ones that significantly reduced planned\nu . s . e & p outlays for the year included barrett\nresources corp . ( nyse : brr ) , belco oil and gas corp . ( nyse : bog ) , burlington\nresources inc . ( nyse : br ) , coastal corp .\n( nyse : cgp ) , forcenergy inc . ( nyse : fen ) , houston exploration co . ( nyse :\nhex ) , kerr - mcgee corp . ( nyse : kmg ) , mariner\nenergy corp . and williams production co .\nthe survey found that major oil companies plan about the same percentage\ngain in their 2000 u . s . e & p expenditures ( 8 . 8\npercent ) at midyear as they did at the beginning of the year ( 8 . 4 percent ) .\namong the 14 companies in this category , 31\npercent made meaningful increases in their 2000 e & p spending estimates\nduring the first six months , including amerada hess\ncorp . ( nyse : ahc ) , conoco inc . ( nyse : coc . a and coc . b ) , occidental petroleum\ncorp . ( nyse : oxy ) and total fina elf s . a .\n( nyse : tot ) . another 19 percent - including eni spa ( nyse : e ) , royal\ndutch / shell ( nyse : rdp and stt ) and texaco inc .\n( nyse : tx ) - scaled back their domestic spending estimates , while the\nremaining 50 percent of the majors in the survey\nremained the same .\n' the increase in canada . . . is nothing short of staggering . . . '\n\" the increase in canada indicated by the 85 companies in our survey is\nnothing short of staggering , \" crandell continued . of\nthe 85 companies that he contacted , 44 . 7 percent budgeted higher\nexpenditures for 2000 than for 1999 . \" compared with\ndecember , 41 percent of them have increased their estimated spending in 2000\nby more than 10 percent , while 20 percent\nhave reduced it by more than 10 percent . the remaining 39 percent have kept\nit within 10 percent of what was originally\nestimated , \" crandell said . talisman energy inc . ( nyse : tlm ) led the group\nwith a huge increase , followed by anderson\nexploration ltd . ( tse : axl ) , gulf canada resources ltd . ( nyse : gou ) , murphy\noil corp . ( nyse : mur ) , pan canadian\npetroleum ltd . ( tse : pcp ) and shell canada ltd . ( tse : shc ) . like their u . s .\ncounterparts , producers above the border raised\ntheir 2000 e & p budgets in response to higher gas prices and increased cash\nflow , according to the lehman analyst .\nhe said that foreign upstream budgets were an area of surprise : \" the 14 . 9\npercent gain indicated by the 99 oil and gas\ncompanies that have operations outside the united states and canada was well\nabove the 5 . 7 percent increase for 2000\nestimated last december . as in other geographies , there were more companies\nthat increased budgets than decreased them . \"\noverall , crandell said that 33 percent of the surveyed companies raised\ntheir 2000 e & p budgets by more than 10 percent , 43\nestimated expenditures in roughly the same range and 24 percent indicated\nthat they would spend less than originally planned .\nhe said that the larger increases were driven by some big companies which\nmaterially increased their budgets , including\ntexaco , petroleos brasileiros s . a . , petroleos mexicanos s . a . and repsol ypf\ns . a . ( nyse : rep ) among the multinationals and\namerada hess , apache , premier oil plc . and woodside energy among mid - sized\ncompanies .\ncrandell noted that while respondents ' average price assumptions rose during\n2000 ' s first six months ( to $ 22 . 04 from $ 19 . 25\nper barrel of crude oil and to $ 2 . 58 from $ 2 . 38 per thousand cubic feet of\nnatural gas ) , they still trail current prices and what\nlehman brothers estimates for the year ( $ 28 per barrel of crude and $ 3 . 30\nper mcf of gas ) . \" this suggests a stronger second\nhalf than expected , should companies raise budgets further to reflect the\nhigher prices , \" he said .\n- nick snow in washington\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john peyton / hou / ect on 06 / 19 / 2000 07 : 36\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndjcustomclips @ djinteractive . com on 06 / 19 / 2000 08 : 27 : 26 pm\nplease respond to nobody @ maill . djnr . com\nto : 1346 @ wctopics . djnr . com\ncc :\nsubject : energy : oil drilling : survey finds producers plan to spend more than\noriginally planned in . . .\nsurvey finds producers plan to spend more than originally planned in\n2000\noil and gas producers plan to increase their worldwide exploration and\nproduction expenditures by more than they anticipated at the beginning\nof the\nyear , lehman brothers inc . found in a mid - year update of its annual e & p\nsurvey . \" the 326 companies we . . .\npublished by : petroleum finance week\ndate : 06 / 19 / 2000\nword count : 894\nrelevance score on scale of 100 : 80\nfolder name : energy : oil drilling\nfull - text article available at\nc = ptry\narticles are included at no charge for flat - fee corporate customers . ( under\nstandard pricing , charges apply . for details , click the $ icon on the dow\njones interactive home page , located at http : / / www . djinteractive . com . )\nto review or revise your folder , visit http : / / www . djinteractive . com or\ncontact dow jones customer service by e - mail at custom . news @ bis . dowjones . com\nor by phone at 800 - 369 - 7466 . ( outside the u . s . and canada , call 609 - 452 - 1511\nor contact your local sales representative . )\ncopyright ( c ) 2000 dow jones & company , inc . all rights reserved", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.935+0000", "entityId": 7635, "properties": {"text": "Subject: iraq and crude output\nan interesting piece of information from the oil markets .\niraq is trying to extract concessions from the us and threatens to shut down\nproduction as of oct 1 ( just in time for the us elections ) .\nthe source of this info is phil verlaeger ( an oil analyst ) .\nhe is very good but excessively concerned with iraqi machinations .\nhe is the source of news ( reported by friedman of the new york times in\nhis op - ed columns ) about massive iraqi trading in the\noil futures markets . i personally discount this info : the volume and\ntransparency of\nthe oil markets would not support this type of huge scale operations by\nsaddam ' s\ngovernment . there may be some trading by iraqi officials on the side .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.940+0000", "entityId": 7636, "properties": {"text": "Subject: re : pricing credit on thousands of names\nwe can continue the discussion in tuesday ' s conference call , but i discussed\nwith ben about the issues below , and here are some thoughts . this is not a\ncomplete approach , but only a starting point for discussion .\nthe main task is to build a pricing system for many names .\nthis has two components - - -\n1 ) how to price a single name ?\n1 . 1 ) how to price a liquid single name ?\n1 . 2 ) how to price an illiquid single name ?\n2 ) how to efficiently apply the methodology to multiple names ?\nthe approach i would take for 1 . 1 is\na ) define a small set of liquid names\nb ) apply each of the different models we have , say , the six models ben has\nmentioned below , to these names\nc ) include market prices , if any , for these names\nd ) sit with traders , get trader ' s intuition on where each liquid name should\nprice and note this on the spectrum of prices obtained in ( b ) and ( c )\ne ) try to determine attributes of the names that may explain the dispersion\nof the trader prices across the models\nf ) quantify these attributes , if possible\ng ) try a different set of liquid names and repeat the process , and see if the\ndecisions in the last round still make sense\nthe approach for 1 . 2 may be\na ) define a small set of illiquid names\nb ) apply each of the different models we have to these names\nc ) sit with traders , get trader ' s intuition on where each illiquid name\nshould price and note this on the spectrum of prices obtained in ( b )\nd ) try to determine attributes of the names that may explain the dispersion\nof the trader prices across the models\ne ) check if these are similar to the attributes identified for liquid names\nf ) define a master set of liquid names\ng ) look for relationships ( by analyzing cross - section of data ) between\nattributes or prices of illiquid names to those of liquid names\nonce a mapping has been defined for an illiquid name to a set of liquid names\nand their attributes , then this mapping can be entered into a table , and the\npricing can be automated for all names ( in theory ) ! the success will depend\non the success of the round - table sessions for the approaches for 1 . 1 and\n1 . 2 .\nbuilding a new fundamental model is always a worthwhile task , but we can get\ngoing with the above approaches immediately in parallel with developing any\nnew models that we may build . new models can be added to the suite of\nexisting models . i do not believe there will ever be a single model that will\nanswer all questions for all names , but rather we can refine the mappings and\nrelative choices among models over time , which would mean continuing\nround - table sessions with traders . limited data makes calibration very hard ,\nso i would continually ask the question \" what do we calibrate ? \" throughout\nthe discussions for 1 . 1 and 1 . 2 , and this may help guide us to new models .\nvasant\nbenjamin parsons\n06 / 19 / 2000 04 : 11 am\nto : ect london credit trading\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , amitava\ndhar / corp / enron @ enron , steven leppard / lon / ect @ ect , grant masson / hou / ect @ ect ,\ndale surbey / lon / ect @ ect , david a wall / risk mgmt / lon / ect @ ect , jitendra j\npatel / lon / ect @ ect , oliver gaylard / lon / ect @ ect\nsubject : pricing credit on thousands of names\nall -\nour challenge for the next few months is to build an automated system to\nprovide differential pricing on thousands of credits [ 5 , 000 by year - end ] .\nmost of these credits will be illiquid in terms of market price information ,\nmaking the challenge harder , and the end result more important in terms of\ncompetitive pricing advantage . what we need is an overall strategy for how we\nplan to achieve this from the quantitative perspective .\ncurrently we have several models for credit pricing either in use or under\ndevelopment :\nfmc model ( default probability approach ) . using bloomberg ' s fair market ( par\nyield ) curves , probabilities are generated from the risky - libor , then\ndefault / bankruptcy swap prices computed using expectation methodology .\nfmc model ( credit spread approach ) . using the fmcs , then directly taking the\nlibor credit spread at each tenor , adjusting for basis and compounding\ndifferences .\nbond model ( fmc approach ) . taking the fmcs as benchmark curves , the model\nregresses the input bonds ( specific to a name ) on the two best fitting\nbenchmarks . the result is a zero yield curve with the same shape as the fmcs ,\nbut with the level tweaked for the specific issuer . prices are then generated\nusing both spread and probability approaches . under testing .\nbond model ( spline approach ) . taking only the bonds specific to an issuer ,\nthe model fits an exponential cubic spline to the zero - coupon price curve ,\nthen builds a zero yield curve from this . under testing .\nmarket prices . for certain liquid names , or sectors / ratings , cds market\nprices are used , then recovery and event discount used to get bankruptcy swap\nprices .\nkmv . using expected default frequencies ( edfs ) from the kmv model and\ndatabase , we will build a model to price default swaps , making appropriate\nrisk adjustments . kmv is being installed now , so model will be worked on next .\neach of these models returns a price ( credit default and bankruptcy ) , and the\naccuracy of the price depends on many factors - liquidity and regulatory\ndifferences between bond and cds markets , recovery assumptions , risk premia ,\ncapital charges , etc . the aim will be to accurately price as many liquid\nnames as possible , based upon these models , then use these prices , alongside\nother financial information , as the backbone to a full automated pricing\nsystem .\nour inputs to the proposed pricing system for a specific name are model and\nmarket prices for all issuers , alongside name - specific ' soft ' data from\ncredit reports and financial statements . if the credit is liquid enough , a\nprice will be generated from their own information only . otherwise , the\ncredit will be mapped onto a subset of liquid credits , with financial\ninformation and historical price movements providing the mapping and weights .\nthe model price will then be periodically adjusted to align itself with\nmarket ( or trader ) prices , and this adjustment will feed back into the\nweighting and mapping composition . in loose terms , we could think of the\nsystem price for an illiquid credit as being a weighted average of liquid\nmarket prices ( bonds , equities , default swaps ) , where the weightings are\ncalibrated using credit analysis , financial ratios , etc .\nthe key steps to implementing such a system will be :\nestablishing what exactly we want to ' predict ' - is it a price , a rating , a\nprobability , or a score ? we will need a clean market history to calibrate to ,\nwhich we only really have for ratings . we will then need to develop a mapping\nfrom rating / score to price .\ngetting and cleaning the historical financial and credit data required to\ncalibrate the model .\nbuilding the mechanics of the model , ie , the calibration methodology . neural\nnets / fuzzy logic seem the obvious candidates , but which exact methods and\nsoftware packages to use ?\ndetermining an automated methodology for mapping names with limited\ninformation into the model .\ngetting the \" true \" market price , in order to feed back an error . at present\nsuch a price exists for very few credits .\nallocating resources to the development . mckinsey claimed such a system would\ntake 6 - 10 man - months to develop .\nfurther ideas or comments are requested , as we need to develop our strategy\nasap . the model description above is fairly vague , as we don ' t yet have the\nknowledge needed to fill in the specific details . further help will be\nespecially required on this if we are to continue to move at ' internet speed ' .\nregards\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.944+0000", "entityId": 7637, "properties": {"text": "Subject: re : equity investment fair value in turkey\njohn ,\nit seems to me that using a risk - free rate is not appropriate . i shall\nelaborate on my\nposition and send you a longer message this afternoon ( my time ) .\nvince\nenron capital & trade resources corp . - europe\nfrom : john bottomley 06 / 19 / 2000 05 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc : john sherriff / lon / ect @ ect , dale surbey / lon / ect @ ect\nsubject : equity investment fair value in turkey\nvince ,\njohn sherriff recommended that i contact you regarding an interesting ( and\npotentially contentious ) option valuation issue we are currently dealing with\nin london . we hold longish term options in a private company in turkey which\nis currently seeking to ipo . the issue we are discussing with rac is which\ndiscount rate ( i . e . , risk - free ? and if so turkish or us ? ) should we use to\nvalue these options\nfirst , some additional information .\noption characteristics :\n- - 116 , 000 options ( representing 9 % of the company )\n- - term : minimum of 3 years but possibly longer - - still being renegotiated\n- - strike price : 20 % below the upcoming ipo price ( either priced in us $ or\nturkish lire )\nwe currently hold the above number of options with a fixed price of $ 118 . 75\nper option but 34 , 800 expire on july 15 , 2000 with the remainder expiring on\ndecember 15 , 2000 . the company ' s investment bankers ( abn / amro rothchilds )\nare concerned regarding the strike price because it values the company at\n$ 118 million and they believe the company is worth approx $ 300 million . due\nto such a large \" valuation gap \" , they originally encouraged us to exercise\nall of the options by the end of june ( ipo target date in late sept / early\noct ) . our counter - proposal is to \" swap \" instrinsic value for time value by\nrepricing the options strike higher while extending their term .\nwe are currently negotiating with rac the most appropriate discount rate to\nuse to value the options . we are arguing that the us risk free is the most\nappropriate discount rate and their current position is that the company ' s\nhistorical senior debt cost ( 18 % ) is the more appropriate number to use\n( although admit that this is not justifiable - - only a proxy )\na few key points :\n- - rac is valuing the options via crystal ball simulations such that this \" to\nbe negotiated \" discount rate is used to calculate the pv of the future\noptions intrinsic value in 3 years\n( i . e . , for black - scholes , a higher discount rate yields a higher value but\nthe opposite is true using crystal ball simulation )\n- - the model simulates both an ipo / no ipo case and in the case of no ipo we\nhave put options for our equity priced at a fixed 17 % return\n- - the model assigns a 30 % illiquidity discount\n- - in the simulated cases where the options are out - of - the - money , we\nobviously do not exercise .\nwe understand that for black - scholes option valuation , one needs to be able\nto construct a comparable portfolio of cash flows using equity futures and\nthe risk free in order for the valuation to hold . and here is where we reach\nour difficulty : since the company doesn ' t currently trade on a public market\nand since equity futures do not exist for turkish equities , rac is arguing\nthat a us risk free is not appropriate to use . our argument is that the\nnon - ipo scenario , a 30 % illiquidity discount and a us $ based option\nvolatility are already in the factored into the simulation . as such , we feel\nrac ' s approach is double counting .\nif you managed to get through the above , your a patient man ! i ' ll give you a\ncall today or tomorrow after you ' ve had a chance to digest the information .\nregards ,\njohn bottomley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.949+0000", "entityId": 7638, "properties": {"text": "Subject: re : real options\nhi navroz\nhaving presented my real options work at a recent conference , i think i can\nsee my way clear to producing a much reduced version ( 3 or 4 pages ) of my\n\" diagrammatic real options \" paper . would risk still be interested in such a\nshortened article ?\ncheers ,\nsteve\nenron capital & trade resources corp .\nfrom : \" navroz patel \"\n05 / 23 / 2000 11 : 37 am\nplease respond to \" navroz patel \"\nto :\ncc :\nsubject : real options\nsteven ,\nafter further consultation with the technical editor , we feel that your work\nwould find a more suitable environment for exposure in the journal of risk .\n?\nif you email a copy of your work ( to the editor - in - chief , philippe jorion )\nand outline what has happened to :\n?\n? pjorion @ uci . edu\n?\nthen i am sure that they will be keen to give due consideration .\n?\nthank you for your interest and sorry for the delay in coming to this\ndecision .\n?\nbest wishes ,\n?\nnavroz patel ,\ntechnical assistant , risk magazine .\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.954+0000", "entityId": 7639, "properties": {"text": "Subject: mg metals : quant analysis & risk\nhi eric ,\nthanks for getting back to me - i believe there are a number of issues to\naddress to ensure that the integration goes smoothly from a risk management\nand quantitative analysis perspective , and i have put together a ( by no means\nexhaustive ) list : -\ni ) seamless transfer of front and middle office systems from an exotic\noptions linking perspective ( e . g . their spreadsheets link to different option\npricing add - ins )\nii ) development of volatility curves and factor analysis to ensure that we\ncan capture metals risk in our var system ( we will require historical data\nfor this ) .\niii ) ensure that mg staff on quant and risk side become familiar with our\nmethods and systems and vice versa\nthese tasks will involve a significant degree of cross - communication with\nrelevant contacts within mg metals , and so i look forward to starting on the\nprocess as soon as possible - i hope to play a full part from a quantitative\nresearch and risk management perspective to ensure that everything goes\nsmoothly in this exciting new development , so please do not hesitate to\ninvolve me .\nbest regards ,\nanjam ahmad\nresearch\nx 35383\nenron europe\nfrom : anjam ahmad 15 / 06 / 2000 16 : 18\nto : eric gadd / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : quant analysis & structuring for metals business\ndear eric ,\ni understand from dale that you are co - ordinating the integration of mg\nmetals into enron europe . dale and i thought it would be a good idea to\nensure that we are fully prepared from a quantitative research and\nstructuring perspective so that we can \" hit the ground running \" when they do\narrive . i would be grateful if you could provide a contact person in mg\nmetals that may look after this area , or someone who may find it useful to\ndiscuss and identify their possible future modelling requirements .\nthanks & regards ,\nanjam ahmad\nresearch\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.958+0000", "entityId": 7640, "properties": {"text": "Subject: initial collection of research material for your web sites\ndear sven the packets cover electricity and gas markets and modelling ,\nderegulation & exchanges , weather derivatives and value - at - risk / risk\nmanagement / case studies . this is by no means final , and i hope to supplement\nwith some more ideas over the next few days . once you have considered the\nmaterial , i can fine - tune the type of material that is relevant for you and\nthen we can look at starting to put something together , after which we can\npass on to mike roberts\nif you need some simple articles on pricing options or an explanation on how\nto calculate volatility , then i am sure we can put that together for you .\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.963+0000", "entityId": 7641, "properties": {"text": "Subject: pricing credit on thousands of names\nall -\nour challenge for the next few months is to build an automated system to\nprovide differential pricing on thousands of credits [ 5 , 000 by year - end ] .\nmost of these credits will be illiquid in terms of market price information ,\nmaking the challenge harder , and the end result more important in terms of\ncompetitive pricing advantage . what we need is an overall strategy for how we\nplan to achieve this from the quantitative perspective .\ncurrently we have several models for credit pricing either in use or under\ndevelopment :\nfmc model ( default probability approach ) . using bloomberg ' s fair market ( par\nyield ) curves , probabilities are generated from the risky - libor , then\ndefault / bankruptcy swap prices computed using expectation methodology .\nfmc model ( credit spread approach ) . using the fmcs , then directly taking the\nlibor credit spread at each tenor , adjusting for basis and compounding\ndifferences .\nbond model ( fmc approach ) . taking the fmcs as benchmark curves , the model\nregresses the input bonds ( specific to a name ) on the two best fitting\nbenchmarks . the result is a zero yield curve with the same shape as the fmcs ,\nbut with the level tweaked for the specific issuer . prices are then generated\nusing both spread and probability approaches . under testing .\nbond model ( spline approach ) . taking only the bonds specific to an issuer ,\nthe model fits an exponential cubic spline to the zero - coupon price curve ,\nthen builds a zero yield curve from this . under testing .\nmarket prices . for certain liquid names , or sectors / ratings , cds market\nprices are used , then recovery and event discount used to get bankruptcy swap\nprices .\nkmv . using expected default frequencies ( edfs ) from the kmv model and\ndatabase , we will build a model to price default swaps , making appropriate\nrisk adjustments . kmv is being installed now , so model will be worked on next .\neach of these models returns a price ( credit default and bankruptcy ) , and the\naccuracy of the price depends on many factors - liquidity and regulatory\ndifferences between bond and cds markets , recovery assumptions , risk premia ,\ncapital charges , etc . the aim will be to accurately price as many liquid\nnames as possible , based upon these models , then use these prices , alongside\nother financial information , as the backbone to a full automated pricing\nsystem .\nour inputs to the proposed pricing system for a specific name are model and\nmarket prices for all issuers , alongside name - specific ' soft ' data from\ncredit reports and financial statements . if the credit is liquid enough , a\nprice will be generated from their own information only . otherwise , the\ncredit will be mapped onto a subset of liquid credits , with financial\ninformation and historical price movements providing the mapping and weights .\nthe model price will then be periodically adjusted to align itself with\nmarket ( or trader ) prices , and this adjustment will feed back into the\nweighting and mapping composition . in loose terms , we could think of the\nsystem price for an illiquid credit as being a weighted average of liquid\nmarket prices ( bonds , equities , default swaps ) , where the weightings are\ncalibrated using credit analysis , financial ratios , etc .\nthe key steps to implementing such a system will be :\nestablishing what exactly we want to ' predict ' - is it a price , a rating , a\nprobability , or a score ? we will need a clean market history to calibrate to ,\nwhich we only really have for ratings . we will then need to develop a mapping\nfrom rating / score to price .\ngetting and cleaning the historical financial and credit data required to\ncalibrate the model .\nbuilding the mechanics of the model , ie , the calibration methodology . neural\nnets / fuzzy logic seem the obvious candidates , but which exact methods and\nsoftware packages to use ?\ndetermining an automated methodology for mapping names with limited\ninformation into the model .\ngetting the \" true \" market price , in order to feed back an error . at present\nsuch a price exists for very few credits .\nallocating resources to the development . mckinsey claimed such a system would\ntake 6 - 10 man - months to develop .\nfurther ideas or comments are requested , as we need to develop our strategy\nasap . the model description above is fairly vague , as we don ' t yet have the\nknowledge needed to fill in the specific details . further help will be\nespecially required on this if we are to continue to move at ' internet speed ' .\nregards\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.968+0000", "entityId": 7642, "properties": {"text": "Subject: additional resources\nben and i have been discussing the possibility of getting more dedicated\nsupport from houston on our project . we are wondering what the possibility\nis of having either amitava or vasant come over for 8 - 12 weeks to help get\nthings jumpstarted on the the credit scoring and modeling front as well as\nprovide some guidance on the clo part of the business and potentially hiring\nan additional full time resource . if there is any possibility , it would be\nhugely valuable given the long lead times to get someone from the city in and\nintegrated in addition to the significant cost .\nlet me know your thoughts\nbs", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.972+0000", "entityId": 7643, "properties": {"text": "Subject: re : your presentation\nvince ,\ni ' m very happy you found the presentation useful .\ni ' m working very closely with adam kulick who you probably know .\nplease let me know if you have any questions or if you have any difficulty\nopening the file .\nbest regards ,\nalla\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , june 19 , 2000 1 : 43 pm\nto : gil , alla\ncc : vince j kaminski\nsubject : your presentation\nalla ,\ni enjoyed your presentation at risk 2000 last week .\ni would appreciate an electronic copy of the documentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\n- riskcongress . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.977+0000", "entityId": 7644, "properties": {"text": "Subject: dr . kaminski :\n?\nyou probably won ' t remember my name , but i am the ph . d . student that took\nyou back to the airport after your visit to louisiana state university\nduring the previous academic year .\n?\ni received my m . s . in finance in may of last year , and chose to ? remain at\nlsu to work on my ph . d . at that time , i intended to pursue a career\nin ? teaching and research at a four year college or university . ? in\npart ? because of your visit , ? and my ? primary interest in normative research ,\nmy ? plans have changed . ? while i ? still want to earn my ph . d . , ? i plan to\npursue a career in research in the private sector .\n?\nas you know , ph . d . programs in financial economics are designed to train\nfuture academics . ? not surprisingly , they emphasize methods to approach the\ntypes of questions that are of interest to finance academics . ? what did\nsurprise me , however , was that these areas of interest often had little to\ndo with what i imagined to be the concerns of practitioners in the real\nworld . ? as you mentioned in your discussion , academic researchers know\nlittle about what their counterparts in the private sector\n?\nin light of my objective , i feel i would get the most out of the remainder\nof my doctoral studies if i took some time off to work in the private sector\nto see first hand the ? types of challenges i can expect to face as a\nresearcher in corporate america . ? as my primary interests revolve around the\nuse of derivatives and financial engineering in corporate risk management ,\nenron , as the leading innovator in these areas , would be an ideal place to\nlearn . ? i was wondering if you were aware of any openings at the company\nthat might provide me with the exposure i am looking for . ? if there are no\nsuch positions or opportunities , any advice or suggestions you could give\nme , ? such as whether or not you think such a \" sabbatical \" ( for lack of a\nbetter term ) would be helpful , or information on private sector careers for\nph . d . ' s would be greatly appreciated . ?\n?\ni am sending a current copy of my vita as an attachment . ? if you have any\nquestions my e - mail address is sgreen @ finance . lsu . edu . ? thanks for your help\nand advice .\n?\n?\ncordially ,\n?\n?\n?\n?\nshane green\n?\n?\n? ? ? ? ?\n- vita . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.981+0000", "entityId": 7645, "properties": {"text": "Subject: the neural network site\nwww . pfr . com / ptonline ? and username : june ? with password : ? ? trend : change", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.986+0000", "entityId": 7646, "properties": {"text": "Subject: re : prospective 6 / 22 houston visit\nprofessor ronn :\nthank you for your email and i wish to respond as follows :\ni have left a message with our travel agency asking if they can get you a\nhotel reservation closer into town . i will let you know .\ni have ordered an overhead projector and the room already has a screen\ninstalled . however , there is really not room for a lectern . the overhead\nwill\nsit on the end of the large conference table and most have room to use part\nof the table for their presentation copies .\ni will be glad to make copies for you , however , it would be a big help if you\ncould email me a copy of your presentation on wednesday . thursday\nmornings around here get pretty hectic sometimes and we may not have\ntime to make the copies .\ni hope this meets with your approval . please let me know if you need\nanything else .\nwe look forward to your visit .\nregards ,\nshirley crenshaw\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.991+0000", "entityId": 7647, "properties": {"text": "Subject: guiseppe paleologo / ext 39189 / eb 4444 b\nvince and shirley -\ni have verified that his phone is in and working at stinson ' s former desk .\nplease let me know if i may be of further assistance\nthank you\npaula\n- - - - - forwarded by paula corey / enron communications on 06 / 19 / 00 07 : 25 am - - - - -\njanelle duree @ ect\n06 / 19 / 00 06 : 59 am\nto : paula corey / enron communications @ enron communications , martha\nreyna / enron communications @ enron communications , guiseppe\npaleologo / na / enron @ enron\ncc :\nsubject : guiseppe paleologo / ext 39189 / eb 4444 b\nsorry for the inconvenience , please advise if we can be of further\nassistance .\nthank you for your patience .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by janelle duree / hou / ect on 06 / 19 / 2000 06 : 58\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlinda richard\n06 / 15 / 2000 04 : 49 pm\nto : janelle duree / hou / ect @ ect\ncc : kathy brooks / na / enron @ enron\nsubject : guiseppe paleologo / ext 39189 / eb 4444 b\njanelle ,\nfms records show that ext . 39189 was installed on 6 / 1 for mr . paleologo ,\nthere is no record to indicate the phone was ever puded .\ni have requested to kathy brooks to re - install the phone . kathy says that\nshe will reseach to find out why the phone was picked up and she will let me\nknow .\nthanks\nlinda", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:40.996+0000", "entityId": 7648, "properties": {"text": "Subject: re : introduction\ni would be very happy to participate . thank you for thinking of us .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.003+0000", "entityId": 7649, "properties": {"text": "Subject: re : test\navi ,\nthese are my coordinates\nvince\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\non 06 / 20 / 2000 01 : 34 : 49 pm\nto : \" vince j kaminski \"\ncc :\nsubject : re : test\nvince :\ngot the message !\nkind regards\navi\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\navi i . hauser phd mba\ncds director\n100 international drive mt olive nj 07828 - 1383\n+ 1 973 691 3664 ( office )\n+ 1 973 347 8189 ( fax )\n+ 1 973 727 3622 ( car + slow paging )\nhauser @ cdsusa . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.011+0000", "entityId": 7650, "properties": {"text": "Subject: introduction\nmark , mike ,\ni have scheduled a video conference with this gentleman on thursday this week\nat 3 : 30\np . m . can you join me for this conversation ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 20 / 2000\n04 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\non 06 / 20 / 2000 03 : 12 : 53 pm\nto : \" vince j kaminski \"\ncc : richard . larsen @ effem . com\nsubject : introduction\nvince :\nas way of introduction , i wanted to write a bit about mars inc . and then\nabout cds ,\nthe unit i head . mars is a private company , considered to be the largest\nprivately owned\nmanufacturing company in the world . mars is not in the habit of disclosing\nits\nfinances ,\nso the best i could do is refer to forbes ' estimate of $ 15 billion annual\nrevenue and\nto the profit margins of similar companies between 5 - 12 % . mars is in the\nbusiness of\nmanufacturing confectionery ( m & m , dove bar , skittles , twix , - all ( r ) )\nfood ( uncle ben rice ( r ) ) pet food ( pedigree , whiskas waltham ( r ) ) and other\nproducts .\nmars has prospered during the years because of a unique philosophy that\nemphasizes the\nlong term goals of the company . part of the philosophy is to look for win - win\nsolutions with\nits suppliers , customers and partners .\nas can be understood from the nature of the company , a large chunk of its\nexpenses\ngoes towards purchasing commodity like products , and hence the history of\nresearching\nthose commodities and the weather that influences their supply and the demand\n( people\neat less ice cream in the winter and less chocolate in the summer ) .\ncds has a history of few decades in forecasting weather and has been very\nsuccessful ,\nwith an envious track record , in helping mars get a competitive advantage in\nthese arenas .\ncds is a global group ( in 4 countries across two continents ) which supports\nthe\npurchasing\nfunction and the corporate at large in these and other arenas . it is a\nmultidiscipline and\nmultinational team with a lot to offer .\nnot having a ready access to the energy markets , and with a risk profile based\non\nmanufacturing expertise , mars has decided to look for potential partners in\nthis\narea .\nenron presence in the market place certainly makes it an interesting party to\ntalk to .\nin talking to enron , we are careful to suggest that mars is not committing to\nanything\nat this point , and all we are after is to find out if there is an interest to\npursue the opportunity\nwe discussed in the future .\ni am looking forward to our video conference call .\nkind regards ,\navi\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\navi i . hauser phd mba\ncds director\n100 international drive mt olive nj 07828 - 1383\n+ 1 973 691 3664 ( office )\n+ 1 973 347 8189 ( fax )\n+ 1 973 727 3622 ( car + slow paging )\nhauser @ cdsusa . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.017+0000", "entityId": 7651, "properties": {"text": "Subject: introduction\nvince :\nas way of introduction , i wanted to write a bit about mars inc . and then\nabout cds ,\nthe unit i head . mars is a private company , considered to be the largest\nprivately owned\nmanufacturing company in the world . mars is not in the habit of disclosing\nits\nfinances ,\nso the best i could do is refer to forbes ' estimate of $ 15 billion annual\nrevenue and\nto the profit margins of similar companies between 5 - 12 % . mars is in the\nbusiness of\nmanufacturing confectionery ( m & m , dove bar , skittles , twix , - all ( r ) )\nfood ( uncle ben rice ( r ) ) pet food ( pedigree , whiskas waltham ( r ) ) and other\nproducts .\nmars has prospered during the years because of a unique philosophy that\nemphasizes the\nlong term goals of the company . part of the philosophy is to look for win - win\nsolutions with\nits suppliers , customers and partners .\nas can be understood from the nature of the company , a large chunk of its\nexpenses\ngoes towards purchasing commodity like products , and hence the history of\nresearching\nthose commodities and the weather that influences their supply and the demand\n( people\neat less ice cream in the winter and less chocolate in the summer ) .\ncds has a history of few decades in forecasting weather and has been very\nsuccessful ,\nwith an envious track record , in helping mars get a competitive advantage in\nthese arenas .\ncds is a global group ( in 4 countries across two continents ) which supports\nthe\npurchasing\nfunction and the corporate at large in these and other arenas . it is a\nmultidiscipline and\nmultinational team with a lot to offer .\nnot having a ready access to the energy markets , and with a risk profile based\non\nmanufacturing expertise , mars has decided to look for potential partners in\nthis\narea .\nenron presence in the market place certainly makes it an interesting party to\ntalk to .\nin talking to enron , we are careful to suggest that mars is not committing to\nanything\nat this point , and all we are after is to find out if there is an interest to\npursue the opportunity\nwe discussed in the future .\ni am looking forward to our video conference call .\nkind regards ,\navi\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\navi i . hauser phd mba\ncds director\n100 international drive mt olive nj 07828 - 1383\n+ 1 973 691 3664 ( office )\n+ 1 973 347 8189 ( fax )\n+ 1 973 727 3622 ( car + slow paging )\nhauser @ cdsusa . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.022+0000", "entityId": 7652, "properties": {"text": "Subject: re : it was nice meeting you at the informs meeting .\ni enjoyed talking to you in the slc conference . thank you for the reference\nto your recent publication . let me find out about rice seminars and any\ninterest within our group and get back to you .\nregards ,\nkrishna .\nuryasev @ aol . com on 06 / 18 / 2000 05 : 58 : 38 am\nto :\ncc :\nsubject : it was nice meeting you at the informs meeting .\ndear dr . krishnarao ,\nit was nice meeting you at the informs meeting . if it is of interest , you can\ndownload my recent papers and reports in the area of risk management and\nfinancial engineering from\nfurther , i give the list of recent downloadable publications related to the\nrisk management and financial engineering .\n1 . uryasev , s . conditional value - at - risk : optimization algorithms and\napplications . financial engineering news , no . 14 , february , 2000 .\n2 . uryasev , s . introduction to the theory of probabilistic functions and\npercentiles ( value - at - risk ) . research report 2000 - 7 . ise dept . , university of\nflorida , may 2000 .\n3 . chekhlov , a . , uryasev , s . , and m . zabarankin . portfolio optimization with\ndrawdown constraints . research report 2000 - 5 . ise dept . , university of\nflorida , april 2000 .\n4 . palmquist , j . , uryasev , s . , and p . krokhmal . portfolio optimization with\nconditional value - at - risk objective and constraints . research report 99 - 14 .\nise dept . , university of florida , november 1999 .\n5 . andersson , f . and s . uryasev . credit risk optimization with conditional\nvalue - at - risk criterion . research report 99 - 9 . ise dept . , university of\nflorida , august 1999 .\n6 . uryasev , s . and r . t . rockafellar . optimization of conditional\nvalue - at - risk . research report 99 - 4 . ise dept . , university of florida , june\n1999 .\ni am e - mailing to you from japan . i am for three month at the center for\nresearch in advanced financial technology , tokyo institute of technology .\nhere in japan , i am collaborating with my colleges on new classification\ntechniques . suppose you have some data set ( e . g . , a data set of financial\nrecords of companies ) and you want to rate the companies based on this ( or\nsome other information ) . linear programming and semi - definite programming\nmethods are used for this purpose . with these techniques we are able to\ncalculate credit rating of investment companies ( aaa , bbb , \u0001 ( ) . similar\ntechniques can be used for scoring of credit card applications and other\nclassification problems .\ni am interested in applied projects in energy , risk management , and financial\nengineering area . i will be happy to collaborate with you on this subject . i\nam looking for financial support for phd students who may work on your\napplications . also , i will be interested in to give a presentation at your\ncompany or at the rice university , as we discussed .\nbest regards ,\nstan uryasev\nprof . stanislav uryasev\nuniversity of florida , ise\npo box 116595\n303 weil hall\ngainesville , fl 32611 - 6595\ne - mail : uryasev @ ise . ufl . edu\nurl : www . ise . ufl . edu / uryasev", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.026+0000", "entityId": 7653, "properties": {"text": "Subject: mid - year 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the mid - year 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s )\nthat have been identified for you . your feedback plays an important role in\nthe performance management process , and your participation is very critical\nto the success of enron ' s performance management goals .\nplease provide feedback on the employee ( s ) listed below by accessing the\nperformance management system ( pep ) and completing an online feedback form as\ndescribed in the \" performance management quick reference guide \" . you may\nbegin your feedback input immediately . please have all feedback forms\ncompleted by the date noted below .\nif you have any questions regarding pep or your responsibility in the\nprocess , please call the pep help desk at the following numbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following list of employees is a cumulative list of all feedback\nrequests , by operating company , that have an \" open \" feedback status . an\nemployee ' s name will no longer appear once you have completed the feedback\nform and select the \" submit \" button in pep .\nreview group : enron\nfeedback due date : jun 16 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nahmad , anjam dale surbey may 22 , 2000\ncarson , margaret m james d steffes may 26 , 2000\ncarson , richard l richard b buy may 22 , 2000\ncrenshaw , shirley j wincenty j . kaminski may 24 , 2000\nganjoo , shalesh peyton s gibner jun 15 , 2000\nghosh , soma timothy davies may 31 , 2000\nkaminski , wincenty j . david w delainey jun 05 , 2000\noverdyke , jere c . david w delainey jun 12 , 2000\npeyton , john a randal t maffett jun 05 , 2000\nrotenberg , douglas m . david l . haug jun 15 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.031+0000", "entityId": 7654, "properties": {"text": "Subject: names\nbryan ,\nthe person from citibank :\nalla gil , ( 212 ) 723 6275\nalla . gil @ ssmb . com\ni am attaching the resume of iris mack .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.037+0000", "entityId": 7655, "properties": {"text": "Subject: re : molecular electronics corp . working lunch\nken ,\ni shall be glad to join you for lunch with mec .\nvince kaminski\nkenneth lay @ enron on 06 / 20 / 2000 04 : 23 : 31 pm\nsent by : rosalee fleming @ enron\nto : philippe a bibi / hou / ect @ ect , jay fitzgerald / corp / enron @ enron , steven j\nkean / hou / ees @ ees , joe hirko / enron communications @ enron communications , david\nberberian / enron communications @ enron communications , rex shelby / enron\ncommunications @ enron communications , mike mcconnell / hou / ect @ ect , greg\nwhalley / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mark lay / hou / ect @ ect\ncc : vanessa groscrand / corp / enron @ enron\nsubject : molecular electronics corp . working lunch\non tuesday , july 25 , i am meeting with molecular electronics corp . ( mec ) to\ndiscuss the opportunity for establishing this newly formed company in\nhouston . for those of you that are not familiar with mec , they are\nconsidered one of the premier companies in the area of molecular computing .\nmec has approached enron to discuss a possible alliance that would facilitate\ntheir development and , in particular , location in the houston area . mec\nrepresents the frontier of computing technology .\ni would like to invite you to participate in a working lunch discussion of\nthe opportunities and obstacles facing a company that is seeking to change an\nindustry . i would appreciate it if you could join us on july 25 from 11 : 30\nto 1 : 30 in eb 49 cl for this informal roundtable with the ceo of mec , harvey\nplotnick and one of the founders , jim tour .\nwill you please let vanessa groscrand know if you can attend at 713 - 853 - 1769\nor please reply by e - mail to me .\nken lay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.041+0000", "entityId": 7656, "properties": {"text": "Subject: re : summer associate mentor\nhello ,\nthis is regarding my mentee . i talked to him today . giuseppe did not receive\nthe invitation to the thursday\nreception .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 20 / 2000\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 12 / 2000 08 : 29 am\nto : ginger b gamble / hou / ect @ ect\ncc : cheryl kuehl / corp / enron @ enron , vince j kaminski / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : re : summer associate mentor\nginger however , we encourage you\nto contact guiseppe prior to the reception if possible .\nplease rsvp your attendance to cheryl kuehl at x 39804 or by email .\nthank you\ncharlene jackson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.046+0000", "entityId": 7657, "properties": {"text": "Subject: mentor / summer associate program\nas a reminder , the summer associate program is an integral and critical part\nof our recruiting efforts . you have been asked to act as mentors for summer\nassociates who attend the schools for which you have recruiting\nresponsibility . you were invited to meet the summer associates at a\nreception being held at the sierra grill , located at 4704 montrose , on\nthursday , june 22 nd from 6 : 00 p . m . to 7 : 30 p . m .\nto date several of you have not responded . please respond to cheryl kuehl\n( ext . 3 - 9804 ) by tuesday , june 20 th . if you are unable to attend , please\nadvise cheryl that you intend to make other arrangements to meet your summer\nassociate so that she may advise the associate not to look for you at the\nreception . we thank you for your co - operation and your efforts to assist\nwill not go unnoticed .\njeff and joe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.051+0000", "entityId": 7658, "properties": {"text": "Subject: sabbatical\ndr . kaminski :\n?\ni had intended to contact you regarding a position at enron this summer , but\nthe department really needed me to teach a section of undergraduate\ncorporate finance this summer . ? if all goes well , and ? there is a place for\nme at enron , i would be able to start after the summer session ends in\nlate ? july . ?\n?\ni ? discussed the possibility of a sabbatical at enron with drs . tom arnold\nand alex butler , both of whom send their regards , and they both felt the\nexperience would be invaluable given my research and career objectives . ? dr .\narnold and i agreed that a sabbatical of 1 - 2 years would be optimal . ? i feel\nthat it would be difficult to get a good idea of where the company is\nheaded , and to show how i can be a valuable team member in helping it get\nthere ? in much less than a year . ? he was afraid that the university would\nbegin to grumble if i was gone for much more than 2 years . ? any suggestions ?\n?\nthank you again for your help , and i look forward to hearing from you .\n?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ?\n?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cordially ,\n?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? shane green", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.055+0000", "entityId": 7659, "properties": {"text": "Subject: re :\nshane ,\nthanks for your message . as a matter of fact , i expected your resume in time\nfor our summer internship program .\nwe shall be glad to invite you for an interview . how long \" sabbatical \" do you\nenvisage ?\nvince\np . s . shirley , please , call shane to arrange an interview with hr .\n\" shane green \" on 06 / 19 / 2000 02 : 14 : 00 pm\nto :\ncc :\nsubject :\ndr . kaminski :\n?\nyou probably won ' t remember my name , but i am the ph . d . student that took\nyou back to the airport after your visit to louisiana state university\nduring the previous academic year .\n?\ni received my m . s . in finance in may of last year , and chose to ? remain at\nlsu to work on my ph . d . at that time , i intended to pursue a career\nin ? teaching and research at a four year college or university . ? in\npart ? because of your visit , ? and my ? primary interest in normative research ,\nmy ? plans have changed . ? while i ? still want to earn my ph . d . , ? i plan to\npursue a career in research in the private sector .\n?\nas you know , ph . d . programs in financial economics are designed to train\nfuture academics . ? not surprisingly , they emphasize methods to approach the\ntypes of questions that are of interest to finance academics . ? what did\nsurprise me , however , was that these areas of interest often had little to\ndo with what i imagined to be the concerns of practitioners in the real\nworld . ? as you mentioned in your discussion , academic researchers know\nlittle about what their counterparts in the private sector\n?\nin light of my objective , i feel i would get the most out of the remainder\nof my doctoral studies if i took some time off to work in the private sector\nto see first hand the ? types of challenges i can expect to face as a\nresearcher in corporate america . ? as my primary interests revolve around the\nuse of derivatives and financial engineering in corporate risk management ,\nenron , as the leading innovator in these areas , would be an ideal place to\nlearn . ? i was wondering if you were aware of any openings at the company\nthat might provide me with the exposure i am looking for . ? if there are no\nsuch positions or opportunities , any advice or suggestions you could give\nme , ? such as whether or not you think such a \" sabbatical \" ( for lack of a\nbetter term ) would be helpful , or information on private sector careers for\nph . d . ' s would be greatly appreciated . ?\n?\ni am sending a current copy of my vita as an attachment . ? if you have any\nquestions my e - mail address is sgreen @ finance . lsu . edu . ? thanks for your help\nand advice .\n?\n?\ncordially ,\n?\n?\n?\n?\nshane green\n?\n?\n? ? ? ? ?\n- vita . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.059+0000", "entityId": 7660, "properties": {"text": "Subject: seminar mugs\nvince :\ncan your secretary forward to debra thomas the enron\nlogo in a word document that debra can use in a design for the rice / enron\nfinance seminar series mugs ?\nhope your summer is going well .\nthank you again for your kind assistance .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.064+0000", "entityId": 7661, "properties": {"text": "Subject: re : prospective 6 / 22 houston visit\nehud ,\nwe shall make reservations for dinner at vincent ' s\non west dallas ( 2701 west dallas , 713 528 4313 ) .\nwe shall make reservations fro 7 : 00 p . m .\nyou can call me on my cell phone ( 713 410 5396 ) if there is a problem .\nwe shall have about 25 - 30 people at the meeting on thu at\n11 : 30 .\nsee you tomorrow .\nvince\n\" ehud i . ronn \" on 06 / 19 / 2000 02 : 32 : 36 pm\nto : vince . j . kaminski @ enron . com\ncc : shirley . crenshaw @ enron . com\nsubject : re : prospective 6 / 22 houston visit\nvince ,\ngreetings , and thanks for your 6 / 12 e - mail .\n> we can meet for dinner on the 21 st . then you can visit with us on the 22 nd\n> in the morning and have individual meetings . at 11 : 30 you can meet the\n> entire\n> research group at our weekly lunch meeting . we can continue\n> individual meetings in the afternoon .\ni thank you once again for your invitation and look forward to my visit\nthis wed . my current schedule calls for a hobby arrival on wed . at 6 : 23\np . m . , in time for the dinner scheduled for that evening . ( i can take a cab\ndirectly to the restaurant if you ' re scheduling a circa 6 : 45 - 7 p . m .\ndinner . ) further , i have tentatively set up the thur . return flight to\naustin at 3 : 38 p . m . , and that can be modified as desired .\n> please , make a reservation at hyatt regency downtown or double tree\n> downtown ( there are several hotels with the same names ) .\nwhen i made the room reservation last mon . 6 / 12 , it turned out that these\nhotels showed no vacancy ( is there a conference in town ? ) , so the nearest i\ncould obtain is the hilton houston plaza ( 6633 travis ) some 3 . 5 miles away\nfrom enron . ( if it is important that i stay at the closer hotels , shirley\nmight ascertain whether enron ' s travel agent can obtain a room there . )\ni take this opportunity to request of shirley that , subject to your\napproval , an overhead projector , screen and small lectern be made available\nfor the room where the 11 : 30 luncheon meeting takes place . also , since i\nwould like each participant to have his / her own copy , i would ask her to\nadvise me as to the number of participants expected to attend , or\nalternatively , shirley could make copies of the presentation handout when i\nbring the \" master \" copy in thur . morn .\ni look forward to seeing you wed . and thur . best regards ,\nehud\nehud i . ronn\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.069+0000", "entityId": 7662, "properties": {"text": "Subject: re : backtesting for different percentiles\nvlady , i enclosed the file with 2 backtesting plots ( you saw them before ) .\nthe following table shows what was the percentage of the days when pnl fell\nbelow var 95 , var 90 , var 85 .\nthese results are based on the real ng forward prices from 1 / 1 / 99 to 6 / 7 / 00\nfor 2 different portfolios :\n- portfolio 1 contained the positions equal to ng - price - prc portfolio\npositions on 6 / 6 / 00 ,\n- portfolio 2 consists of the positions equal to storage - prc positions on\n5 / 25 / 00 .\nportfolio 1\nvar 95 var 90 var 85\nimplied vols 2 . 93 4 . 11 5 . 57\nhistorical vols with decay = 1 7 . 62 12 . 02 15 . 54\nhistorical vols withdecay = 0 . 97 6 . 75 12 . 02 15 . 54\nhistorical vols withdecay = 0 . 94 6 . 45 12 . 02 15 . 54\nportfolio 2\nvar 95 var 90 var 85\nimplied vols 4 . 1 6 . 74 9 . 97\nhistorical vols with decay = 1 7 . 04 11 . 14 15 . 84\nhistorical vols withdecay = 0 . 97 6 . 74 10 . 56 16 . 13\nhistorical vols withdecay = 0 . 94 7 . 04 11 . 14 15 . 84\nthis shows that when we have more observations ( columns corresponding to\nvar 90 and var 85 )\ncompared to the column corresponding to var 95 the frequency of curve shift\nbeing lower than var\nbecomes closer to the theoretical value ( 5 % , 10 % and 15 % ) . the numbers in the\ncolumn \" var 85 \" are\nvery close to 15 % . this is the argument in favor of using historical vols .\nand also the results do not depend on the decay factor in this experiment .\nalso notice : the numbers in column \" var 95 \" are higher than 5 % and this is an\nindication of fat tails .\nlet me know if you have any questions .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.074+0000", "entityId": 7663, "properties": {"text": "Subject: re : hi\nthank you very much , vince .\ni do it right now .\nyou will be receiving a recommendation form shortly .\nmany thanks again . have a good evening .\nli\nvince j kaminski @ ect\n06 / 20 / 2000 04 : 10 pm\nto : li xiao / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : hi\nlixiao ,\ni shall be glad to help and give you a good recommendation .\nplease , give my name as a recommender to the a / a pool .\nvince\nli xiao @ enron\n06 / 20 / 2000 04 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : hi\nhi , vince ,\nhow are you ?\njust last week , i got admission from u . of chicago mba program , so did yvan ,\nby the way .\nnow , i am applying loan from enron a / a pool .\nthe person who is in charge of this told me that it needs three\nrecommendations from current boss and previous boss for the application , and\nthat the requirement includes all prc rankings in either ' excellent ' or\n' superior ' , that i didn ' t achieve in the first rotation in research .\ngetting loan is cricial at the stage . i wonder if you can be one of my\nrecommenders .\nthis will be a big help .\nthank you .\nli x 39635", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.079+0000", "entityId": 7664, "properties": {"text": "Subject: it security and standards notice\ninformation risk management \u0001 ) it security and standards notice\npasswords\nthe key to maintaining information and systems security is the use of\nwell - selected and guarded passwords . please remember , your password is our\nfirst line of defense . it is important that :\n? your password should be unique and only known to you .\n? your password should never be shared with someone else .\n? a password must never be written down ( i . e . post - it notes ) , stored in files\non personal computers , at workstations , hidden under keyboards , configured on\nterminal hot - keys , etc .\n? passwords must be changed every 60 days .\nstrong password selection criteria will soon be automated for all employees .\nfor instructions on selecting a good password or to the view the company\npassword policy and standards , click here :\nplease keep in mind that the enron conduct of business affairs holds\nemployees responsible for password security . information risk management\nconducts periodic audits to ensure compliance with company policy .\nfor any problems encountered concerning password controls , please call your\nappropriate help desk ( available : 24 hrs . / day , 7 days / week ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.084+0000", "entityId": 7665, "properties": {"text": "Subject: re : equity investment fair value in turkey\njohn ,\nplease , give me another day to elaborate . it ' s quite hectic here .\nvince\nenron capital & trade resources corp . - europe\nfrom : john bottomley 06 / 21 / 2000 03 : 41 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : equity investment fair value in turkey\nvince ,\nany further thoughts on your end ?\njohn\nvince j kaminski\n19 / 06 / 2000 15 : 45\nto : john bottomley / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect\nsubject : re : equity investment fair value in turkey\njohn ,\nit seems to me that using a risk - free rate is not appropriate . i shall\nelaborate on my\nposition and send you a longer message this afternoon ( my time ) .\nvince\nenron capital & trade resources corp . - europe\nfrom : john bottomley 06 / 19 / 2000 05 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc : john sherriff / lon / ect @ ect , dale surbey / lon / ect @ ect\nsubject : equity investment fair value in turkey\nvince ,\njohn sherriff recommended that i contact you regarding an interesting ( and\npotentially contentious ) option valuation issue we are currently dealing with\nin london . we hold longish term options in a private company in turkey which\nis currently seeking to ipo . the issue we are discussing with rac is which\ndiscount rate ( i . e . , risk - free ? and if so turkish or us ? ) should we use to\nvalue these options\nfirst , some additional information .\noption characteristics :\n- - 116 , 000 options ( representing 9 % of the company )\n- - term : minimum of 3 years but possibly longer - - still being renegotiated\n- - strike price : 20 % below the upcoming ipo price ( either priced in us $ or\nturkish lire )\nwe currently hold the above number of options with a fixed price of $ 118 . 75\nper option but 34 , 800 expire on july 15 , 2000 with the remainder expiring on\ndecember 15 , 2000 . the company ' s investment bankers ( abn / amro rothchilds )\nare concerned regarding the strike price because it values the company at\n$ 118 million and they believe the company is worth approx $ 300 million . due\nto such a large \" valuation gap \" , they originally encouraged us to exercise\nall of the options by the end of june ( ipo target date in late sept / early\noct ) . our counter - proposal is to \" swap \" instrinsic value for time value by\nrepricing the options strike higher while extending their term .\nwe are currently negotiating with rac the most appropriate discount rate to\nuse to value the options . we are arguing that the us risk free is the most\nappropriate discount rate and their current position is that the company ' s\nhistorical senior debt cost ( 18 % ) is the more appropriate number to use\n( although admit that this is not justifiable - - only a proxy )\na few key points :\n- - rac is valuing the options via crystal ball simulations such that this \" to\nbe negotiated \" discount rate is used to calculate the pv of the future\noptions intrinsic value in 3 years\n( i . e . , for black - scholes , a higher discount rate yields a higher value but\nthe opposite is true using crystal ball simulation )\n- - the model simulates both an ipo / no ipo case and in the case of no ipo we\nhave put options for our equity priced at a fixed 17 % return\n- - the model assigns a 30 % illiquidity discount\n- - in the simulated cases where the options are out - of - the - money , we\nobviously do not exercise .\nwe understand that for black - scholes option valuation , one needs to be able\nto construct a comparable portfolio of cash flows using equity futures and\nthe risk free in order for the valuation to hold . and here is where we reach\nour difficulty : since the company doesn ' t currently trade on a public market\nand since equity futures do not exist for turkish equities , rac is arguing\nthat a us risk free is not appropriate to use . our argument is that the\nnon - ipo scenario , a 30 % illiquidity discount and a us $ based option\nvolatility are already in the factored into the simulation . as such , we feel\nrac ' s approach is double counting .\nif you managed to get through the above , your a patient man ! i ' ll give you a\ncall today or tomorrow after you ' ve had a chance to digest the information .\nregards ,\njohn bottomley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.089+0000", "entityId": 7666, "properties": {"text": "Subject: re : important - prc mtg\nhi dorn & john , as you discovered recently , i am still ' officially ' in vince\nkaminski ' s group ( my original enron corp . group ) . this holds true for shalesh\nganjoo as well . i did not explicitly pick dorn or john as reviewers thinking\nthat they will show up automatically as a result of my assumed reporting\nstructure .\nso , vince has agreed to ' host ' the review in his group and proceed to\ntransfer me over to ebs officially when this quarter is overs ( apprently that\nwas scheduled to be automatic ) . in the mean time , vasant , stinson or vince\nwould like to get a e - mail from either dorn or john regarding my performance\nfrom their perspective for consideration as soon as possible .\ni had plan on being on vacation starting tomorrow and have made arrangement\nwith my family already . since i am not reviewing shalesh directly ( since he\nis in research under stionson ) , i am assuming i don ' t have to attend the\nreview meetin tommorrow . i ' ll be on the road starting in the morning . if i\nchange this , i am told at home , that i will be in the market for another\nfamily ! i can phone in if that is okay .\nkayla , could you page me with the details ?\nregards ,\nravi .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.093+0000", "entityId": 7667, "properties": {"text": "Subject: sap id - here it is ! ! ! ! !\nthe following sap id and password allows you to access pay , benefit , and\npersonal data via ehronline . do not provide this id / password to anyone as it\nenables modification to direct deposit account information .\nthe sap system and ehronline will be available beginning\nfriday , june 23 at 8 : 00 am for time entry .\nfull sap functionality for financials will be available on july 5 , 2000 .\nyou will be asked to change your password at the initial logon . your new\npassword should meet the following criteria :\nmust be 6 - 8 characters long\ncan include numbers and letters\ncan not include ' enron ' in your password .\nthe system will require you to change your password every 90 days .\nthe following address will connect you to ehronline beginning friday , june 23\nat 8 : 00 am , http : / / ehronline . enron . com\n( must use internet explorer , version 4 . 01 or higher to access this link . )\nhow do i get help ? :\nsap support :\ncall the coe sap hotline at 713 - 345 - 4 sap ( 4727 ) .\nfor quick reference tools , security request processes , after hours contact\ninformation and other general information , go to the coe web site via\ninternet explorer using the following url address :\nhttp : / / sap . enron . com / coe\nfor troubleshooting and go - live tips , go to the following web site , via\ninternet explorer , using the following url address :\nhttp : / / sap . enron . com / coe\nclick on sap , then click on troubleshooting and go - live tips\ntraining :\ncontact your site manager if you were not able to attend a sap training\nclass , and would like to attend one ,\nfor approval and role assignment .\nfor interactive web based training for ehronline time entry , go to the\nfollowing web site , via internet explorer ,\nusing the following url address :\nselect the \" new users click here to register \" link", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.098+0000", "entityId": 7668, "properties": {"text": "Subject: re : contact information\neric ,\nthank you for your message . the only other message in my mailbox\nfrom you is dated 6 / 11 / 2000 and contains a reference to a resume i cannot\nlocate . i checked the log of all the messages and could not find any other\ncommunication from you .\nplease , send a message with a resume again and we shall go from there .\nvince kaminski\neric hilton on 06 / 21 / 2000 08 : 37 : 58 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : contact information\ndear mr . kaminski ,\ni sent my resume to your well respected company a few weeks ago\nin regards to establishing a long - lasting career with them . i never\nreceived a response and was wondering if you knew who was in charge of\nthe electric power disbatching / scheduling department or know of who i\nmay contact to inquire this information ? i know you are a very busy\nprofessional and i apologize for the inconvenience . thank you for your\nvaluable time .\nwarmest regards ,\neric hilton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.103+0000", "entityId": 7669, "properties": {"text": "Subject: contact information\ndear mr . kaminski ,\ni sent my resume to your well respected company a few weeks ago\nin regards to establishing a long - lasting career with them . i never\nreceived a response and was wondering if you knew who was in charge of\nthe electric power disbatching / scheduling department or know of who i\nmay contact to inquire this information ? i know you are a very busy\nprofessional and i apologize for the inconvenience . thank you for your\nvaluable time .\nwarmest regards ,\neric hilton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.107+0000", "entityId": 7670, "properties": {"text": "Subject: candidate to bring in for interviews with the research group\nhello toni :\nthe research group would like to bring bruce r . james in for an exploratory\ninterview sometime next week ( june 26 - 30 ) .\nthe individuals who would be interviewing him are :\nvince kaminski managing director\nstinson gibner vice president\ngrant masson vice president\nvasant shanbhogue vice president\np . v . krishnarao director\nzimin lu director\ntanya tamarchenko manager\nplease ask bruce to give you several dates within next week that would\naccommodate him and we can coordinate his dates with vince ' s schedule\nand the schedules of the rest of the group . just call me when you have some\ndates and times .\nhis resume is attached .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.111+0000", "entityId": 7671, "properties": {"text": "Subject: risk chapters\nconrad - - i am working on development of enrononline ' s web site . i got your\nname from vince kaminski . could you send me the pdf files of the chapters\nthat you and vince discussed for posting on enrononline along with any\ncopyright information ?\nthanks\nkal shah\n001 713 853 9354\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kal shah / hou / ect on 06 / 21 / 2000 12 : 39 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 21 / 2000 12 : 39 pm\nto : kal shah / hou / ect @ ect\ncc :\nsubject : re : enron site / mepr 2\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 21 / 2000\n12 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nconrad gardner on 06 / 05 / 2000 09 : 16 : 05 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : enron site / mepr 2\nsorry vince\none must have got away !\nwill contact dan shortly .\nconrad\nat 08 : 04 am 6 / 5 / 00 - 0500 , you wrote :\n>\n> conrad ,\n>\n> thanks for your message .\n>\n> there are 3 papers enron contributed to the last mepr .\n>\n> there is also another paper on electricity i contributed to the \" red book \"\n> on us\n> power markets , as well as a paper or credit risk management , and a paper\n> on weather derivatives . all these papers included in other risk books were\n> written by enron\n> employees .\n>\n> we would like them included as well , if technically possible .\n>\n>\n> i think that offering other energy related books through our site , in\n> addition to mepr 2 ,\n> is fine , but i would leave the decision to dan diamond , who is responsible\n> for the project .\n>\n>\n> vince\n>\n>\n>\n>\n>\n> conrad gardner on 06 / 05 / 2000 07 : 08 : 36 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : enron site / mepr 2\n>\n>\n> > date : mon , 05 jun 2000 13 : 02 : 02\n> > to : vince kaminski\n> > from : conrad gardner\n> >\n> > dear vince\n> >\n> > thanks for the call and email on friday . i will contact masuyuki and\n> follow\n> it from there .\n> >\n> > regarding the enron site , i think it is absolutely fine to put up the two\n> enron chapters ( i ' ll provide pdfs ) , and prevent any customer leakages from\n> your site by the use of \" submit \" buttons . as mentioned , i ' ll offer a 20 %\n> discount on mepr 2 to customers but would you be interested in some of other\n> energy titles ? - please let me know .\n> >\n> > many thanks\n> >\n> > conrad gardner\n> >\n> head of book publishing\n> risk books\n> haymarket house\n> 28 - 29 haymarket\n> london\n> swly 4 rx\n> direct tel : + 44 ( 020 ) 7 484 9750\n> main tel : + 44 ( 020 ) 7 484 9700\n> fax : + 44 ( 020 ) 7 484 9758\n> e - mail : conrad @ risk . co . uk\n> www . riskpublications . com\n>\n>\n>\n>\n>\n>\n>\nhead of book publishing\nrisk books\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ndirect tel : + 44 ( 020 ) 7 484 9750\nmain tel : + 44 ( 020 ) 7 484 9700\nfax : + 44 ( 020 ) 7 484 9758\ne - mail : conrad @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.116+0000", "entityId": 7672, "properties": {"text": "Subject: marketing for your espeak session\nvince :\nthanks for your time earlier this week ; i ' m looking forward to your espeak\nevent .\nsarah and i met with our etv contact yesterday , and we will be able to put a\nbulleted list on the elevator screens to advertise your espeak . please let\nme know what you would like us to post for you , and we will do the rest !\nwe also have plans to market specifically to the trader community here at\nenron , so you should get a high participation rate , especially from those\ngroups .\nthanks , again .\n- er", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.125+0000", "entityId": 7673, "properties": {"text": "Subject: re : prospective 6 / 22 houston visit\nhi professor ronn :\ni have ordered a flip chart and markers and an overhead projector .\nthere were 11 pages in your presentation and they look fine . we have\nalready made the copies .\ni believe everything is set - if you think of anything else , please let me\nknow .\nenjoy your dinner tonight and we will see you tomorrow .\nregards ,\nshirley crenshaw\n\" ehud i . ronn \" on 06 / 21 / 2000 02 : 03 : 03 pm\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : prospective 6 / 22 houston visit\nshirley :\n> please let me know if you need\n> anything else .\nthere is one additional item i would request : if the room does not contain\na blackboard or whiteboard , i would appreciate a flip chart and markers .\ni am faxing you my presentation handout for tomorrow . i would be grateful\nif your produced copies in sufficient number for tomorrow ' s 11 : 30 a . m .\nmeeting ; vince advises me the number of attendees will be in the 25 - 30\nrange . i will also bring along a \" master copy \" in case the trasmission\nunduly mangles the fax .\nthanks ,\nehud\nehud i . ronn\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.132+0000", "entityId": 7674, "properties": {"text": "Subject: re : visit\nvince ,\n> please , give me a call when you land on my regular and cell phone .\n> i shall proceed to the restaurant ( about 10 minutes from the office ) .\n> please , keep the copies of all the receipts .\n10 - 4 . see you approx . 7 p . m . this evening .\nehud\nehud i . ronn\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.136+0000", "entityId": 7675, "properties": {"text": "Subject: re : var for 1 . 5 years for frozen portfolio\nvince , i sent it to you yesterday , sending again , let me know if you don ' t\nget it .\ntanya .\ntanya tamarchenko\n06 / 20 / 2000 02 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : backtesting : using historical vols versus implied", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.141+0000", "entityId": 7676, "properties": {"text": "Subject: skunkworks meeting - bi - weekly\nshirley and i have scheduled the skunkworks ' meetings with scott tholan\nbeginning wednesday , july 5 from 2 : 00 to 3 : 30 . this meeting will take place\nevery other wednesday ( same time and place ) for the next few months . these\nmeetings will be held in ebl 938 . please mark your calendar , and if you have\nany serious conflicts , please let either shirley or me know .\nthanks ,\nsharon\n5 - 7212", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.147+0000", "entityId": 7677, "properties": {"text": "Subject: accomplishments / self evaluation\nprc is just around the corner and dave has not been provided the\naccomplishment / self evaluation from some of you . this serves as a reminder to\nplease provide dave with a list of accomplishments / self evaluation for the\npast six ( 6 ) months as soon as possible .\nthanks in advance for your prompt attention to this matter . if you have any\nquestions , please feel free to call kay 3 - 0643 .\nthanks ,\nkay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.152+0000", "entityId": 7678, "properties": {"text": "Subject: deadline information : ehronline is now available\ntoday is a big day for enron ! this morning , we are rolling out the next step\ntoward empowering our most valuable resource - - you . as of this morning ,\nmost of you have access to the new ehronline intranet site .\nthe new ehronline functionality ( a feature of the sap implementation ) is very\neasy to use and is accessible through the enron intranet ( at\nhttp : / / ehronline . enron . com ) . using ehronline , not only can you enter your\nown time , but also maintain your profile , and update personal data , including\nhome address , phone numbers , w - 4 changes and emergency contact information .\nadditionally , you will be able to view your individual pay advice and benefit\nelections .\nremember the deadline for time entry is 3 : 00 pm cst , on june 30 th - - all time\nmust be submitted and ready for payroll processing . because this is the\nfirst period using sap to record time , please work closely with your\ntimekeeper to ensure the deadline is met . by now , you should have received a\nnote from your timekeeper . however , if you have not and are unsure who your\ntimekeeper is , please call the site manager for your business unit . their\nnames and numbers are listed below .\nbecause of the size of this rollout , we have to expect a few \" bumps in the\nroad . \" so , we \u0001 , re asking you to be patient and work with us over the next few\nweeks . if you have questions , are experiencing problems , or would like more\ninformation , please contact the center of expertise ( coe ) .\ncenter of expertise ( coe )\nthe center of expertise can help answer many of your questions and provide\nyou with assistance if you are experiencing problems . the coe is available\n24 hours a day from monday at 7 : 00 am cst through friday at 7 : 00 pm cst . you\ncan contact the coe :\nvia phone at ( 713 ) 345 - 4 sap ( 4727 )\ncoe website : sap . enron . com ( contains job aids , instructional materials ,\nforms and policies )\nvia lotus notes at sap coe / corp / enron\nvia internet email at sap . coe @ enron . com\nbu site managers\nenron north america\ncindy morrow , ( 713 ) 853 - 5128\nyvonne laing , ( 713 ) 853 - 9326\nglobal products\nshelly stubbs , ( 713 ) 853 - 5081\nyvonne laing , ( 713 ) 853 - 9326\nglobal finance\njill erwin , ( 713 ) 853 - 7099\nyvonne laing , ( 713 ) 853 - 9326\ngas pipeline group\nmichael sullivan , ( 713 ) 853 - 3531\ngreg lewis , ( 713 ) 853 - 5967\ndiane eckels , ( 713 ) 853 - 7568\nglobal e & p\ndiane eckels , ( 713 ) 853 - 7568\nenron energy services\nbobby mahendra , ( 713 ) 345 - 8467\ndaler wade , ( 713 ) 853 - 5585\ncorporate\ntodd peikert , ( 713 ) 853 - 5243\nenron renewable energy corp\njoe franz , ( 713 ) 345 - 5936\ndaler wade , ( 713 ) 853 - 5585\nenron investment partners\nyvonne laing , ( 713 ) 853 - 9326\njob aids and reference guides\nfinally , the apollo & beyond training team has developed several useful\nreference guides that you can access via the sap website at sap . enron . com\nalso , a brochure will be delivered to your mailstop today . this brochure\nprovides step by step instructions on how you can use ehronline to view and\nupdate your personal information .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.156+0000", "entityId": 7679, "properties": {"text": "Subject: re : your questions and requests to judy schlesinger\nthanks susan :\nhowever , vince has not received his financial times at all this week . i have\ncalled everyday and they tell me they will send a recovery copy , but so far\nwe have not received one . is there anyway we could get a copy for him\ntoday ?\nyour help will be greatly appreciated .\nthanks !\nenron north america corp .\nfrom : susan l kennedy 06 / 21 / 2000 05 : 12 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : your questions and requests to judy schlesinger\nshirley ,\nplease find the below answers to the questions you had sent to judy .\nfinancial times - vince ' s subscription does not exprire until january 4 , 2001\nvince ' s subscription to power finance & risk - what you recieved was not a\nrenewal , it was for a free trial that began on june 5 th and ends on june 26 .\nplease disregard it . his subscription that we recently renewed does not\nexpire until march 26 , 2001 .\ni have sent in payment for vince ' s renewal for oxford energy forum .\nif there is anything else that i can help you with , please do not hesitate to\ncall me .\nsusan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.161+0000", "entityId": 7680, "properties": {"text": "Subject: fortnightly on - line\ndear mr . kaminski ,\nthis is to inform you that your \" public utilities fortnightly \" on - line\nsubscription is now ready for your use . this on - line service is good for 30\ndays .\nuser name - 2000208\npassword - quality\nthank you .\njanet clark\ncustomer service rep", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.165+0000", "entityId": 7681, "properties": {"text": "Subject: re : your guest for financial mathematics\namy ,\nthanks . steve will contact you directly to give you all\nthe details .\nvince\n\" amy lamonsoff \" on 06 / 22 / 2000 05 : 32 : 49 am\nto :\ncc :\nsubject : your guest for financial mathematics\nhello -\ni hope you are well today . i understand that you would like to bring steve\nleppard as your guest for financial mathematics . could you please provide me\nwith his complete contact details and which training course he will be\nattending .\n?\n?\nmany thanks -\namy\n?\nps - hope you enjoyed risk 2000 in boston and it was nice to see you again .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.169+0000", "entityId": 7682, "properties": {"text": "Subject: factor loadings\nfyi . . jeff\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffrey a shankman / hou / ect on 06 / 22 / 2000\n07 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ted murphy\n06 / 21 / 2000 05 : 43 pm\nto : rick buy , john j lavorato / corp / enron @ enron , jeffrey a\nshankman / hou / ect @ ect , mark frevert / na / enron @ enron\ncc :\nsubject : factor loadings\ni hope that the following clears up some of the confusion regarding the\nabove - captioned process .\nfactor loadings are an input to value - at - risk ( var ) . generally , you can\nconsider them the determinants of relationships between curves , and points on\ncurves based on trader inputs . these pertain to all curves not just north\namerican natural gas . there is a specific program which calculates these\nrelationships which requires a considerable amount of processing time ( 3\nhours per run ) as well as another few man - days to evaluate the results .\nthere is no \" ideal \" or recommended period in which these must be updated .\nmore frequent is \" better \" . given the amount of time it takes to refresh , it\nwas \" agreed \" a long time ago amongst rac , research , it and operations that\nit would be done every 2 weeks . no commercial input was received . the roles\nwere to be simple as they are with most roles in and around var and other\nrisk management controls :\nresearch specifies the math\nit codes the program\noperations runs the program\nrac evaluates the results\nthe process has been run every two weeks on the second thursday of every\nmonth since february ( as it had been prior ) and rac has rejected the results\nbecause the results did not reflect the underlying math because of the\ncomplexity of the math and the continuing addition of new products and\ncurves . this created the need to recode the application from scratch . rac\ncontinued to agitate to get this done , particularly knowing that the pressure\non the efficacy of var would be questioned as we went into the volatile\nperiod of 2000 ( e - mails from rudi zipter available upon request ) . the new\ncode was implemented last thursday and the results were accepted resulting in\nan approximate 10 % difference in var .\nrac had requested that the code be re - written on 6 / 10 / 99 @ 7 : 44 am with a\ntarget completion date of 8 / 2 / 99 . this was discussed and accepted by\nphillipe bibi on 6 / 17 / 99 in a meeting in his conference room with rick buy ,\ndan bruce , jonathon le , ted murphy , bill bradford , debbie brackett and rudi\nzipter along with the rest of our task list .\nwe have resolved that the process will continue as stated and will\ncommunicate to you the results .\nthere are dozens of other processes that are important to the calculation and\ninterpretation of var that need to be implemented , enhanced , improved or\nrewritten altogether . for example , the jump - diffusion factors for north\namerican power have not been refreshed in 2000 . the prioirty is dependent on\nthe level of precision required .\ni will provide a comprehensive list of those processes in due course .\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.174+0000", "entityId": 7683, "properties": {"text": "Subject: re : improve communication\nzimin ,\ni will make sure that you have the opportunity to present your contributions .\nit makes also sense to ask paulo every time to say a few words .\nvince\nzimin lu\n06 / 22 / 2000 10 : 06 am\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : re : improve communication\nvince ,\nthanks for your reply . that is what i feel too : vince knows what we are\ndoing , so he does not have to ask us again .\nin another dimension , i want to make sure that people like paulo get enough\nincentive to perform . the group meeting , i\nthink , will provide a sense of accomplishment when other members in the group\nknow what we have been through .\nthanks again for your understanding .\nzimin\nvince j kaminski\n06 / 21 / 2000 06 : 30 pm\nto : zimin lu / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : re : improve communication\nzimin ,\nsorry if you get this impression . the real reason is that i treat\nthe lunch meetings as an opportunity to get updates on things\nthat are going on at more remote locations . i interact with each of the\nmembers of your group daily and i know what ' s going on .\ni agree with you , however , that the lunch meetings are not exclusively\nfor my benefit , but also for the benefit of the other members of\nthe group . i shall make sure that you have the opportunity\nto communicate your contribution to the company .\nvince\nzimin lu\n06 / 20 / 2000 02 : 47 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : improve communication\nvince and stinson ,\nthe valuation group has accomplished a lot during last six months . the\nnumber of\nprojects we are working on is keeping increasing . however , when comes to the\nstaff meeting ( thursday lunch meeting ) , we are often left out for updating\nour projects .\nthis makes me feel that what we are doing is no longer interesting or worth\nmentioning .\ni am hoping that we can get more exposure , despite we are still in the old\neconomy .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.178+0000", "entityId": 7684, "properties": {"text": "Subject: the business of power\njune 23 , 2000\ninternational electric industry conference\nfor the past five years , the association of power exchanges ( apex )\nhas held its business meetings in different locations around the\nworld . for the first time , an industry conference is being held to\ncompliment these meetings , providing a means to connect industrial\nelectricity exchanges , isos and pools with senior leaders in the\nworldwide electric industry .\nfor more information we have attached an adobe acrobat pdf file . the\ndocument requires adobe acrobat reader 2 . 1 or higher . the latest\nversion is available to download from http : / / www . adobe . com .\nor view our website : http : / / www . apex 2000 conf . com .\n# 12 - apex 2000 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.182+0000", "entityId": 7685, "properties": {"text": "Subject: re : running credit model\nsteve ,\nin order to be able to test the new credit model as well as to answer credit\ngroup ' s\nquestions regarding the outputs from this model research needs to be able to\ndo the following :\n1 . run credit model independently of the other runs . it is quite ok for now\nto be able to run it just for small artificial portfolios .\n2 . debug the code to see what actual values are used during the run time .\nplease , let me know if your team can help us .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.187+0000", "entityId": 7686, "properties": {"text": "Subject: mark keeter presentation - proposal - solution\nthe july 6 th meeting from 2 : 30 till 4 : 30 is being held in eb 45 cl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.191+0000", "entityId": 7687, "properties": {"text": "Subject: restructuring today - 6 / 23\nmark ,\nplease , tale a look at the attached newsletter . an interesting story on\ngaming cal\npx . let me know if you have problems opening the document .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 23 / 2000\n05 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenergy info source on 06 / 23 / 2000 07 : 24 : 22 am\nto :\ncc :\nsubject : restructuring today - 6 / 23\nenergy info source - http : / / www . energyinfosource . com - is privileged to\nmake available to you a free trial subscription to restructuring today\nuntil july 11 .\nrestructuring today is the leading daily trade newsletter focused solely\non the deregulation , restructuring and convergence of the electric , natural\ngas and telecommunications industries , with a special focus on emerging\nmarkets .\nyou do not need to do anything to continue to receive this trial . however ,\nif you do not want to receive any more trial issues , please reply to us\nand with the word \" cancel \" in the subject line .\nrestructuring today has distinctive industry news and analysis which energy\ninfo source can ' t deliver from the wire services , and at only $ 487 ( regular\nprice for an individual subscription ) for 250 issues each year , we consider\nit a bargain . as a special offer to energy info source users , restructuring\ntoday is offering $ 50 off the regular subscription price .\nact before july 14 to receive your $ 50 off !\ncheck out the attached sample , and if you ' d like to order an annual\nsubscription ,\nchoose your favorite way :\n- hit reply and fill out the subscriber information below .\n- for fastest service call 888 - 986 - 2250 today !\n- there ' s a handy subscription coupon on the last page of each issue of\nrestructuring today .\nfor credit card orders , please use the subscription coupon in the back\nof the sample issue or call 888 - 986 - 2250 .\nfor more information , feel free to email us at custsvc @ energyinfosource . com\nor call us at 888 - 986 - 2250 .\nrequires acrobat reader 3 . 1 or higher . the latest version is available\nfree at :\n- - - - - - - - - - - - - - - - - - - - - -\nplease begin my subscription to restructuring today right away !\nname :\ntitle :\ncompany :\nbilling address :\naddress cont . :\ncity :\nst :\nzip :\ncountry : usa\nphone :\nfax :\nemail address :\n[ ] bill me\n[ ] call me for my credit card information\n- rto 00623 - eis . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.196+0000", "entityId": 7688, "properties": {"text": "Subject: summer part time employee\nadd her to the distribution list for associate social functions .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by celeste roberts / hou / ect on 06 / 23 / 2000\n05 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 23 / 2000 09 : 56 am\nto : celeste roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , elena chilkina / corp / enron @ enron , mike a\nroberts / hou / ect @ ect\nsubject : summer part time employee\nceleste ,\ni have talked to you last evening about elena chilkina ,\nan mba rice student who works for us part - time during the academic year ,\nand full time this summer .\nshe asked if she could participate in the program for summer associates .\n( presentations , social meetings ) ,\ni would appreciate if you could help her .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.200+0000", "entityId": 7689, "properties": {"text": "Subject: new timesheet procedures\nhello everyone :\njust when you get used to something it changes !\nas you may have heard , enron is implementing a new time entry system as part\nof the july 1 sap implementation . time entry for the june 16 th - 30 th period\nmust be entered into sap by 3 : 00 pm cst on june 30 th . as your timekeeper , i\nwill assist with this process and ensure that we meet this very important\ndeadline .\ni will continue to do the time sheets for the 19 th floor and for osman and\nsamer .\nsam smith and / or kevin moore will be responsible for the timesheets for the\nweather group on the 32 nd floor .\ntime can be entered in sap in two ways :\n? you can enter your time yourself using the new ehronline feature ; or ,\n? timekeepers can enter time on your behalf .\nif you are unsure as to which approach you should use , please call me .\nplease remember that all time for this period must be submitted before 3 : 00\npm cst , on june 30 th .\nfor those of you using ehronline :\nfirst of all , congratulations on taking this next step toward enron \u0001 , s vision\nof empowering the employee . by using the new ehronline feature , you are\nhelping enron to realize the value in this sap implementation . hopefully ,\nyou too , will receive value from having instant access to your personal\ninformation .\nthe new ehronline functionality is :\n? easy to use\n? accessible through the enron intranet at ehronline . enron . com\nusing this feature , you can not only enter your own time , but also maintain :\n? your profile information ( skills , education , and experience )\n? home address\n? phone numbers\n? w - 4 changes\n? emergency contact information\nadditionally , you will be able to view your individual pay advice and benefit\nelections .\nyou will receive your personal id and password via e - mail from sap _ security\nby june 22 nd . because of the confidentiality of the information accessible\nusing ehronline , it is important that you keep your id and password\nconfidential . if you do not receive your information by the end of the day\non june 22 nd , please call the coe at ( 713 ) 345 - 4 sap to obtain your id and\npassword .\nthe apollo & beyond team has teamed with ebs to deliver training on how to\nenter time using ehronline via ebs \u0001 , new product enroncast . this tool is\navailable to you on your desktop . you can access enroncast at\nwww . enroncast . com and follow the instructions .\nstep by step guides - http : / / sap . enron . com / coe\n? enter time via ehronline ( employee ) step by step procedure\n? correct time via ehronline ( employee ) step by step procedure\n? enter time via ehronline ( non - employee contractor ) step by step procedure\n? correct time via ehronline ( non - employee contractor ) step by step procedure ]\nfor those of you who need me to enter your time :\nattached is a manual time entry form that i must have completed and returned\nby june 28 th . please estimate the last two days of the period as accurately\nas possible . if necessary , i can make corrections on the next time entry\nperiod . if you do not want to use this form , i will have hard copies at my\ndesk and will be glad to help you fill them\nout . i know this is creating more work for everyone , but what can i say ?\nwhere can you get help ?\ni am here to help you with the new coding necessary on your timesheet . also ,\nif you do not know which absence or attendance type you should use , please\ncome see me or give me a call .\nif you have other questions or are experiencing problems , you can also get\nhelp from any of the following places :\ncenter of expertise ( coe )\nthe center of expertise can help answer many of your questions and provide\nyou with assistance if you are experiencing problems . the coe is available\n24 hours a day from monday at 7 : 00 am cst through friday at 7 : 00 pm cst . you\ncan contact the coe at ( 713 ) 345 - 4 sap .\ndedicated support personnel\nduring the time period right after the initial \u0001 & go live \u0001 8 the project team has\ndedicated additional resources to help support you . these resources can be\ncontacted at :\nmarla hernandez at x 39763 for now and after 6 / 22 at x 31645 at workstation #\neb 3661 b\nmark timmons at 57919 for now , pager number 888 - 620 - 3896 , at workstation #\neb 3667 a\nregards ,\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.206+0000", "entityId": 7690, "properties": {"text": "Subject: re : replied resume\nvince / sally\nit appears that the implied vol on this one is quite high . perhaps we can\nlower our var using historical vols .\ni would be happy to interview him . his resume does not appear to be\nresearch - worthy by any stretch so i guess rac or ops might be a fit\nshould i forward his resume to tony vasut and bring him in to see a couple of\nracs and a couple of ops as sort of a first exploratory interview ? ?\nsally - pls advise your thoughts .\nvince - is this the price of being a risk management rock star ?\nted\nvince j kaminski\n06 / 23 / 2000 08 : 18 am\nto : sally beck / hou / ect @ ect , michael e moscoso / hou / ect @ ect , bob\nshults / hou / ect @ ect , ted murphy / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : replied resume\ni am forwarding a resume of one candidate who is very\npersistent and quite aggressive .\nplease , take a look at him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 23 / 2000\n08 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\neric hilton on 06 / 22 / 2000 11 : 20 : 11 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : replied resume\nmr . kaminski ,\n? ? ? ? ? ? ? i sent an actual resume via the postal service . i guess you never\nreceived it . thank you for your patience .\na few features i possess that suggest that i may be a representative your\nwell established company would value are :\n? seven - plus years as a manager / junior executive of logistics in a fast - paced ,\ndemanding , and constantly evolving retail industry .\nexperience in effectively developing and implementing policies and tasks\nunder marketing , logistics , brand management , and best practices .\nba degree in marketing with a 3 . 88 gpa from the university of san moritz ,\nlondon england .\nextensive knowledge in management with the ability to effectively manage\nmultiple tasks , as well as multiple associates , to achieve specific goals in\nresearch and brand management within the company ' s deadline .\nseven - plus years effectively implementing and teaching dynamic and successful\ncustomer service .\nwith my current employer , i am in charge of logistics research and\nreports / data collection , as well as responsible for developing new and\nsuccessful ideas and implementing them under constantly evolving brand\nmanagement and best practices .\ntraveling to london , england and extensively finishing my degree indicates\nthat i am willing to go the \u0001 & extra mile \u0001 8 to achieve and obtain my goals .\nperhaps , mr . kaminiski , ? i am an associate you need at your well - respected\ncompany . i would be very happy to meet with you , at your convenience , to\ndiscuss the possibility of putting my education and experience to work for\nenron .\nthank you for your consideration . i look forward to hearing from you . i have\nattached my resume to this email formatted under microsoft word .\nwarmest regards ,\neric hilton\n?\n- my resume", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.210+0000", "entityId": 7691, "properties": {"text": "Subject: replied resume\ni am forwarding a resume of one candidate who is very\npersistent and quite aggressive .\nplease , take a look at him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 23 / 2000\n08 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\neric hilton on 06 / 22 / 2000 11 : 20 : 11 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : replied resume\nmr . kaminski ,\n? ? ? ? ? ? ? i sent an actual resume via the postal service . i guess you never\nreceived it . thank you for your patience .\na few features i possess that suggest that i may be a representative your\nwell established company would value are :\n? seven - plus years as a manager / junior executive of logistics in a fast - paced ,\ndemanding , and constantly evolving retail industry .\nexperience in effectively developing and implementing policies and tasks\nunder marketing , logistics , brand management , and best practices .\nba degree in marketing with a 3 . 88 gpa from the university of san moritz ,\nlondon england .\nextensive knowledge in management with the ability to effectively manage\nmultiple tasks , as well as multiple associates , to achieve specific goals in\nresearch and brand management within the company ' s deadline .\nseven - plus years effectively implementing and teaching dynamic and successful\ncustomer service .\nwith my current employer , i am in charge of logistics research and\nreports / data collection , as well as responsible for developing new and\nsuccessful ideas and implementing them under constantly evolving brand\nmanagement and best practices .\ntraveling to london , england and extensively finishing my degree indicates\nthat i am willing to go the \u0001 & extra mile \u0001 8 to achieve and obtain my goals .\nperhaps , mr . kaminiski , ? i am an associate you need at your well - respected\ncompany . i would be very happy to meet with you , at your convenience , to\ndiscuss the possibility of putting my education and experience to work for\nenron .\nthank you for your consideration . i look forward to hearing from you . i have\nattached my resume to this email formatted under microsoft word .\nwarmest regards ,\neric hilton\n?\n- my resume", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.215+0000", "entityId": 7692, "properties": {"text": "Subject: re : testiing component var\nnaveen ,\nas we discussed yesterday , i would like to see the results of components var\ntesting .\ni got some from sunil today for agg - gas .\nin addition if you can send me component var results for ng - price for some\ndate ,\nas well as ng positions , forward price curve , forward volatility curve for\nng - price - prc for that\nsame date , i can verify the numbers .\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.223+0000", "entityId": 7693, "properties": {"text": "Subject: impending visit july 5 - 7\nvince :\ni plan to be in houston on july 5 - 7 . i would like very much to get together\nwith you and perhaps your investment guy on friday morning on the 7 th if you\nand / or he have the time or perhaps on the 5 th in the afternoon . i would\nlike to continue the discussions about your using marketpoint and about your\ninvestment guy considering marketpoint if he is interested . when you see\nthe progress we have made , i think you will agree that it merits\nconsideration as a part of enrononline . com as well as a profitable\ninvestment in its own right . it is still in the situation where it can be\nprovided exclusively to whomever i choose ; i have been very , very careful\nhow i have promoted it so that i do not get committed to a second - rate\npartner .\ni also have what i think is a fundamentally new , general markovian forward\noptionality evaluator . i wrote my ph . d . dissertation at stanford in the\n1970 s ( defended with honors ) in semi - markovian decision processes during the\nheyday of that research , and i have seen direct applications in optionality\nevaluation . i think you will be fascinated to see and review it . it is\npresently implemented in prototype form and it could be made available to\nthe first large retainer client on an exclusive basis who is sufficiently\ninterested . if you want to be that retainer client , that would be of\ninterest to me .\ngive me a shout via return email or by my cell phone at 650 . 218 . 3069\nregarding schedule . i am out of town this week but available via email or\nphone at the above addresses .\ni really hope we can get together that week if we possibly can . thanks very\nmuch for considering my request , and thanks very much for being the go\nbetween with your investment guy . i deeply appreciate it . i hope to see\nyou on the 5 th or 7 th .\ndale nesbitt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.230+0000", "entityId": 7694, "properties": {"text": "Subject: re : eprm articles\nchris ,\nthanks for the invitation . the evening of july the 18 th is fine with me .\nthe list looks fine and it can be easily expanded , if the first set of\narticles is well received . i shall prepare a list of topics that occupy us\nevery day and that we could write about without revealing the details of our\nproprietary research .\nplease , feel free to send the message from lacima . i think that it ' s better\nfor us to sign the articles with our names , giving our respective\naffiliations . in this way , enron gets the credit , but not the liability if\nthere is any error in an article .\nhope to see you soon .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.235+0000", "entityId": 7695, "properties": {"text": "Subject: associate & analyst prc update\nthe prc process for the associate & analyst programs has been revised . the\noffice of the chairman , in conjunction with the heads of each operating\ncompany , has established a prc committee for the associates and one for the\nanalysts . each committee will oversee the respective prc meetings . details\nof the process are as follows :\ni . prc committee members\nassociate prc committee\nsally beck don w . black dan catagnola\npaul chivers ed coats dave duran\nbob hayes sean homes fred kelly\ndick leibert sean long scott neal\nozzie pagan kevin presto brad richter\nmark ruane jim steffes\nanalyst prc committee\ndave bowers federico cerisoli ed coats\ndavid crews brenda herod rogers herndon\nben jacoby steve jernigan william gehle\njay lewis ( james w ) paul mead mike norris\nrockey storie jon thomsen emilio vicens\nii . meeting logistics\nenron will hold eastern hemisphere associate and analyst prc meetings on july\n17 th in london . the prc for the eastern hemisphere will include europe , india\nand asia and will be chaired by john sherriff .\nthe western hemisphere associate and analyst prc meetings will be held on\njuly 19 th in houston . the prc for the western hemisphere will include south\namerica , calgary , portland , houston and australia ( houston administers it )\nand will be chaired by joe sutton . the analyst prc will be conducted from\n8 : 00 a . m . to 12 : 30 p . m . , and the associate prc will be conducted from 1 : 30\np . m . to 6 : 30 p . m .\niii . process\neach prc representative has been randomly assigned 15 to 17 associates or\nanalysts that they will represent in the prc meeting . please note the prc\nrep is not representing only those individuals who may work in his or her\nspecific opco but individuals that work throughout the organization . the prc\nrep will continue to represent the assigned associates or analysts during\ntheir entire tenure with the program .\nthe prc reps are expected to contact the prc supervisor and gather\nperformance information ( including pre - ratings if available ) .\nthe program will prepare a binder for each prc rep that includes consolidated\nfeedback from the pep system for their assigned associates or analysts and\nwill provide this to the prc representatives on july 7 th .\nassociates and analysts will be pre - rated by their business unit supervisor\nusing the six performance ratings ( superior - issues ) and the management\nprofessional feedback form as detailed in the pep system . the pre - ratings\nmust be loaded into pep by july 6 th .\nthe associate and analyst ratings will be cross - calibrated by tenure at the\nmeeting as follows :\nassociates :\nlevel 1 : 0 to 6 months\nlevel 2 : 7 to 12 months\nlevels 3 & 4 will be reviewed together : 13 months + .\nanalysts :\nlevel 1 : 0 to 6 months\nlevel 2 : 7 to 12 months\nlevel 3 : 13 to 24 months\nlevel 4 and 5 will be reviewed together : 25 months +\nthe rating determined in the global cross calibration meeting is final , and\ncannot be changed once the meeting has ended .\nfollowing the global associate and analyst prc , the associates \u0001 , and the\nanalysts \u0001 , supervisors will obtain the final rating from the prc\nrepresentative . the supervisors must ensure that an evaluation session is\nconducted and the final rating is communicated to each associate and analyst\nby september 15 th . the completed form must be signed by the associate or\nanalyst and returned to terry bosien in human resources by 9 / 18 / 00 .\niv . promotions\nall promotions must be recommended in the prc .\nassociates are eligible for promotion to manager at their 18 and 24 month\nanniversary .\ntiming . anniversaries that occur from april lst through september 30 th\nshould be recommended in the july prc and those that occur from october lst\nthrough march 31 st should be recommended in the december prc . if the\npromotion is granted it would become effective on the lst of the month\nfollowing the prc , or on the associate \u0001 , s anniversary date , whichever is later .\nassociates promoted after march 31 st for the july prc and after september\n30 th for the december prc will be evaluated as associates for prc purposes ,\nnot as a manager ( i . e . an associate was promoted to manager effective april lst . in the july prc the individual should be evaluated as an associate not\nas a manager ) .\n2 nd year analysts are to be recommended for promotion to 3 rd year analysts\nafter completing the 2 nd year , utilizing the same timing criteria outlined\nabove ( i . e . , an analyst who completes the 2 nd year on september 30 th should\nbe recommended for promotion to 3 rd year analyst in the july prc ) .\n3 rd year analysts may be recommended for promotion to associate after\ncompleting the 3 rd year , utilizing the same timing criteria outlined above\n( i . e . , an analyst who completes the 3 rd year on september 30 th should be\nrecommended for promotion to associate in the july prc ) .\nplease call terry bosien at 713 / 853 - 5230 or celeste roberts at 713 / 853 - 0555\nif you have any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.239+0000", "entityId": 7696, "properties": {"text": "Subject: update - reimbursement of individually billed items\nthe use of cell phones and pagers has increased dramatically in the past few\nyears . as a result the accounts payable department has seen a rapid increase\nin the number of invoices and vendors . with the higher volume , we have\nreviewed our processes in order to continue our rapid payment cycle .\nalthough we encourage vendors to address their invoices to individual\nemployees , they often mail invoices directly to accounts payable . at times\nthey fail to list the individual who uses the pager or cell phone . in these\ncases we return the invoice to the vendor . if the employee is designated , we\ntry to track him / her down and forward the invoice . the high level of\nemployee movement among jobs and locations at enron has made this\nincreasingly challenging . either way , we end up doing something less\nproductive than paying invoices .\nto maintain satisfactory response to our vendors and to reduce time necessary\nfor research , we request that employees who have pagers , cell phones , and\nother individually billed items such as licenses , subscriptions , etc . , pay\nfor them by personal check or charge card ( if applicable \u0001 * payment instructions\nare usually indicated on the invoice ) and request reimbursement through\nemployee expense reports .\nby submitting these charges on your expense report , you can help us reduce\nthe amount of time spent researching and forwarding invoices , the number of\nchecks generated by treasury , the number of vendors in our database , and the\nturnaround time for payment of invoices .\nincidentally , accounts payable is currently installing a corporate - wide\nweb - based expense reporting system similar to what enron international has\nused for the past year . this will make it even easier to file your expense\nreport and receive quick reimbursement .\nwe \u0001 , d like to make this effective immediately . if you have any questions or\nsuggestions , please contact the accounts payable department .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.243+0000", "entityId": 7697, "properties": {"text": "Subject: managing energy price risk - - second edition\ndear vince : i just wanted to thank you for supplying a copy of the book .\nthe article on the natural gas market is just what i ' ve been looking for .\nthe new addition , coupled with the first version ' s discussion of the\nvolatility of the gas market in the mid 90 ' s should be very helpful in\nconvincing these government watchdog types that basis adjustments in\npricing formulas are not some sinister plot to deprive the feds of their\nroyalties . or should if there is any rationality in government .\nthanks again for your help .\nbest regards ,\nsteve williams\neog resources", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.248+0000", "entityId": 7698, "properties": {"text": "Subject: re : alex ' s article\nvince ,\ndid you make any more corrections after stinson ? he sent me the file , i\nremoved the comments , and have put it on the page .\nsam\nvince j kaminski @ ect\n06 / 26 / 2000 10 : 35 am\nto : william smith / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : alex ' s article\nsam ,\nstinson ' s corrections are in red . mine are in magenta . remove\nall redundant comments .\nvince\nenron north america corp .\nfrom : william smith @ enron 06 / 26 / 2000 08 : 52 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : alex ' s article\nvince ,\nwas alex ' s article okay to include in the newsletter ? i ' d like to use it\ntoday unless you believe otherwise .\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.253+0000", "entityId": 7699, "properties": {"text": "Subject: - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 26 / 2000\n10 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" gould , aaron \" on 06 / 16 / 2000 02 : 54 : 03 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject :\ndr . kaminski ,\non wednesday , june 14 th i attended your presentation entitled \" the challenge\nof valuation of energy related derivatives \" at the risk 2000 conference in\nboston . can you please e - mail me the slides you presented .\nalso , you mentioned that the method you used to calculate volatility for\nenergy prices was not the \" normal \" method . can you please tell me , or give\nme a reference to the method that you did use .\nthank you ,\naaron gould\nsenior risk management analyst\npseg services corporation\naaron . gould @ pseg . com\n1 - 973 - 456 - 3527", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.258+0000", "entityId": 7700, "properties": {"text": "Subject: request for two powerpoint presentations from risk 2000 conferenc e\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 26 / 2000\n10 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" bryson , allen \" on 06 / 26 / 2000 09 : 17 : 07 am\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : request for two powerpoint presentations from risk 2000 conferenc e\nvince ,\ni would like to receive copies of both your energy risk and weather\npresentations from the risk 2000 conference in boston .\nthanks ,\nallen bryson\nconoco", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.263+0000", "entityId": 7701, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\ndear :\nthank you for giving me an opportunity to have an interview with enron corp .\ni am looking forward to hearing the result from you . in case you\nare interested in reading some of my works , you can go to\nbest regards ,\nseksan .\n- - - - - original message - - - - -\nfrom : shirley . crenshaw @ enron . com [ mailto : shirley . crenshaw @ enron . com ]\nsent : tuesday , june 20 , 2000 4 : 45 pm\nto : centered @ engin . umich . edu\ncc : vince j kaminski ; pinnamaneni krishnarao ; osman sezgen\nsubject : re : telephone interview with the enron corp . research group\nseksan :\nthis friday , the 23 rd , at 2 : 30 pm eastern time ( 1 : 30 pm central ) would work\nfine . please let me have the telephone number you can be reached at .\nregards ,\nshirley crenshaw\nseksan kiatsupaibul on 06 / 20 / 2000 03 : 19 : 37 pm\nto : shirley crenshaw\ncc : vince j kaminski , pinnamaneni krishnarao\n, osman sezgen\nsubject : re : telephone interview with the enron corp . research group\ndear :\nthank you for giving an opportunity to have an interview with enron corp .\nthis friday afternoon from lpm to 4 pm eastern time would be good for me .\nplease let me know whether or not the time is also convenient for you .\nbest regards ,\nseksan .\non tue , 20 jun 2000 , shirley crenshaw wrote :\n>\n>\n> good afternoon mr . kiatsupaibul :\n>\n> the enron corp . research group would like to conduct a telephone\ninterview\n> with you at your convenience .\n>\n> please let me know your availability this friday , the 23 rd and during the\nweek\n> of june 26 - 30 th and i will shedule the interview .\n>\n> the interviewers would be :\n>\n> vince kaminski managing director\n> p . v . krishnarao director\n> osman sezgen manager\n>\n> look forward to hearing from you .\n>\n> regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron corp . research\n> 713 / 853 - 5290\n> email : shirley . crenshaw @ enron . com\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.268+0000", "entityId": 7702, "properties": {"text": "Subject: resume - rabi de\nvince , thanks for returning my call . here ' s rabi ' s resume for your review . as\ni mentioned , i worked with rabi for a little over a year at shell and was\nvery impressed with both his abilities and work ethic . if you would like any\nfurther info from me , please do not hesitate to give me a call .\nthanks .\nbill\n( for human resources )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bill berkeland / corp / enron on 06 / 26 / 2000\n11 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrabi de on 06 / 25 / 2000 08 : 24 : 07 pm\nto : bill . berkeland @ enron . com\ncc :\nsubject : resume\ndear bill :\nthank you very much for volunteering to circulate my resume within enron . as\nyou know , i am interested in exploring career opportunities in financial\nengineering within enron . i am particularly interested in joining the\nresearch group headed by dr . vince kaminski .\nenron continues to innovate its way through the energy and telecom\nmarketplace using its substantial intellectual capital . the enclosed resume\ndetails my experience , academic background , and contributions in the area of\nrisk modeling and management . understanding risk is a core competency of\nenron and i am excited about the possibility of working , learning , and\ngrowing with the very best in the industry .\nplease forward my resume within enron as you see fit . thank you in advance\nfor any referrals or recommendations you may be able to provide .\nbest regards ,\nrabi s . de\ndo you yahoo ! ?\nget yahoo ! mail - free email you can access from anywhere !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.273+0000", "entityId": 7703, "properties": {"text": "Subject: interview with enron corp .\ngood morning mr . parsons :\nthe enron corp . research dept . would like to conduct a telephone\ninterview with you at your convenience .\nthe interviewers would be :\nvince kaminski managing director\np . v . krishnarao director\nosman sezgen manager\nplease give me some dates and times either this week or july 5 , 6 & 7\nof next week that you would be available and i will coordinate the\ncalendars .\nlook forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.278+0000", "entityId": 7704, "properties": {"text": "Subject: re : running credit model\ntanya ,\nalthough i ' m quite comfortable with providing support for running the model ,\nand assisting in providing the tools to enable easier analysis of the\nresults , i ' m not entirely comfortable with supporting a java debug\nenvironment within your team ( including ad - hoc training ) , when we have\nfacilities within the it development team to do it here .\ni ' d like to meet with you to discuss this , as this seems to be an ongoing\nissue , and would like to understand the ground rules by which your team\noperates in conjunction with it in general .\nregards\nsteve\ntanya tamarchenko\n23 / 06 / 2000 15 : 48\nto : stephen stock / hou / ect @ ect\ncc : grant masson / hou / ect @ ect , vince j kaminski / hou / ect @ ect , debbie r\nbrackett / hou / ect @ ect\nsubject : re : running credit model\nsteve ,\nin order to be able to test the new credit model as well as to answer credit\ngroup ' s\nquestions regarding the outputs from this model research needs to be able to\ndo the following :\n1 . run credit model independently of the other runs . it is quite ok for now\nto be able to run it just for small artificial portfolios .\n2 . debug the code to see what actual values are used during the run time .\nplease , let me know if your team can help us .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.282+0000", "entityId": 7705, "properties": {"text": "Subject: re : chapter 3 revisions\ngrant ,\nsorry for the silence . it ' s definately not a commentary on your work - i ' ve\nbeen travelling back and forward between sydney and london like a yo - yo and\ntrying to tidy up things on our end . i ' ve been working on incoporating your\nmaterial and will spend all of tomorrow on this ( hopefully ! ) so that i can\nask for the last few amendments before the w / end .\nmany thanks and best regards .\nchris .\n- - - - - original message - - - - -\nfrom : grant masson\nto : chris strickland\nsent : tuesday , june 27 , 2000 8 : 54 am\nsubject : re : chapter 3 revisions\n>\n>\n>\n> chris :\n>\n> i can ' t decide if i should take your silence over the past several weeks\nto mean\n> that you are getting stuck into finishing up the book or you are just so\n> thoroughly disgusted with our work that you would like to wash your hands\nof us .\n>\n> i ' ve been stuck on trying to get the last figure mentioned in the chapter\ninto a\n> format that i like . the problem is the volatility found in the\nregressions is\n> on the order of several hundred percent , and so when i plot the historical\ndata\n> next to a simulated curve over the course of the year , the simulated curve\ntends\n> to drift up or down stupidly both in the jump diffusion and garch + jump\ndiffusion\n> model . any suggestions would be accepted with pleasure . i wonder if i\nshould\n> skip the figure . it seems a pity to do so however , because otherwise the\nlast\n> section comes off as a bit of an afterthought , and i would like to present\na\n> practical example . again any guidance would be appreciated .\n>\n> anyway , i am sending you a somewhat improved draft now ( minus only the\nlast\n> figure ) , rather than sit on the whole thing while i stew on this bit , i\nhope\n> this will be useful to you . because i am leaving for holidays at the end\nof the\n> week , i can guarantee you that you will have a final draft before then .\n>\n> regards ,\n> grant .\n> ( see attached file : cs 260600 . doc )\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.287+0000", "entityId": 7706, "properties": {"text": "Subject: impending visit\nvince :\ni sent you an email a couple of days ago to inquire if we might get together\nat your offices on july 5 or july 7 in houston to follow up our earlier\ndiscussions . i notice i have two email addresses for you , so i am sending\nthis to both . i am not sure the earlier transmission got to you .\nwould you be available the afternoon of the 5 th or the morning of the 7 th to\ncontinue our earlier discussions ? give me an email or phone shout at\n650 . 218 . 3069 .\nthanks\ndale nesbitt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.291+0000", "entityId": 7707, "properties": {"text": "Subject: european power web call replay\nmr . vincent j . kaminski\nmanaging director\nenron capital & trade resources corp .\ndear mr . kaminski :\non june 8 last , we held a special web - based conference call pertaining to a\nnew cera multiclient study , \" the future of european power : electricity\nwithout borders \" . ? participants in this complimentary call learned first - hand\nsome of the initial results of the study , and how the study provides a\nframework for evaluating current and future company strategies .\nwe are pleased to announce the availability of the recorded presentation on\nour website . ? to view the presentation , please visit our website at : ?\nthe presentation focused on the study scope and approach , and its underlying\nanalysis . ? in addition , the link above will also provide access to the\nprospectus for the study , including the deliverables and enrollment\ninformation . ? if your organization has not yet enrolled in the study , we urge\nyou to consider doing so at this time .\nshould you have any questions either about this study , or about any aspect of\ncera ' s european power services then please contact me by reply email or\ndirectly by phone in paris at + 33 1 42 44 10 18 .\nsincerely ,\ndavid callanan\ndcallanan @ cera . com\nshould you have trouble reaching the website using the link above , please go\nto ? http : / / www . cera . com / offerings / mcs / eurpow 99 / ?\nour relationship with you is very important to us . ? if you wish not to\nreceive e - mail notifications from cera , please send a reply to this message\nwith \" donotemail \" as the subject of your message . (\nmailto : info @ cera . com ? subject = donotemail )\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.296+0000", "entityId": 7708, "properties": {"text": "Subject: all about current and near future gas / power markets\nit ' s all here .\ncomments appreciated .\nbest regards ,\njhherbert\n- june 2000 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.301+0000", "entityId": 7709, "properties": {"text": "Subject: pre - ranking\nbelow is your spreadsheet . this one has your direct reports on\nit . . . . . . . . . . . the other spreadsheet i sent to your vp / directors didn ' t show\nthis .\nfyi\nthx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.305+0000", "entityId": 7710, "properties": {"text": "Subject: it ' s time for prc\nit ' s time once again to administer the research group ' s prc ! !\nattached you will find a list of your ee ' s . pls take a moment to pre - rank\nyour employees using the consolidated feedback from their mid - year\nperformance reviews . on the spreadsheet below , there is a category titled\n\" ranking \" , please place your recommended ranking in this column and e - mail it\nback to me by noon this friday .\nvince will be meeting with you all on friday to discuss these pre - rankings .\non wednesday , 7 / 5 at 9 a , pls join vince and i in room ebl 938 to formalize\nyour employee rankings .\nthe ranking categories are as follows :\nsuperior\nexcellent\nstrong\nsatisfactory\nneeds improvement\nissues\nadditionally , i know that there have been many changes in staff and\nreportships over the last 6 months . if you see that you are missing someone\nor someone is reporting to the wrong person , just let me know and i ' ll get it\ncorrected asap .\ncall me with any questions or concerns !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.310+0000", "entityId": 7711, "properties": {"text": "Subject: re : request for two powerpoint presentations from risk 2000 confe\nrenc e\ni did not get the attachments . it may be better to send to my home email - -\nfirewall issues . my home email is\nbrysonpa @ hal - pc . org\nthanks\nallen\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : tuesday , june 27 , 2000 7 : 56 am\n> to : r - allen . bryson @ usa . conoco . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : request for two powerpoint presentations from risk 2000\n> conferenc e\n>\n>\n> allen ,\n>\n> i responded to your message from home .\n>\n> please , let me know if you did not receive the attachments .\n> aol malfunctions sometimes .\n>\n> vince\n>\n>\n>\n>\n>\n> \" bryson , allen \" on 06 / 26 / 2000 09 : 17 : 07 am\n>\n> to : \" ' vkamins @ enron . com ' \"\n> cc :\n> subject : request for two powerpoint presentations from risk 2000\n> conferenc\n> e\n>\n>\n> vince ,\n>\n> i would like to receive copies of both your energy risk and weather\n> presentations from the risk 2000 conference in boston .\n>\n> thanks ,\n>\n> allen bryson\n> conoco\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.315+0000", "entityId": 7712, "properties": {"text": "Subject: re : contact\nvince ,\ndavid ' s parents are coming to visit the weekend of the 7 th .\ni will check with david , but i think the weekend of the 29 th is fine . i will\nget back to you as soon as i can .\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.323+0000", "entityId": 7713, "properties": {"text": "Subject: re : contact\njana ,\na correction . i am going to spend one week in australia and i have\njust realized that i have to leave on friday , july the 14 th , at night ,\nto arrive in sydney on sunday morning .\nmaybe we can meet on friday the 7 th ( we would like to invite you\nto dinner and then we can have a glass of wine outside , the weather\nand mosquitoes permitting ) .\nalternatively , we can meet during the weekend of july the 29 th .\nvince\njlpnymex @ aol . com on 06 / 26 / 2000 01 : 27 : 41 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : contact\nvince ,\nthe weekend of july 15 , 2000 is fine for us . which day is better for\nyou - - friday or saturday ?\ndo you want to go to the woodlands for a show , or just visit ? also , let me\nknow if i can bring something .\nthanks and we look forward to meeting your family .\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.331+0000", "entityId": 7714, "properties": {"text": "Subject: pozdrowienia\npiotr ,\ndziekuje za wiadomosc . bede prawdopodobnie w londynie\nw koncu wrzesnia . ciesze sie , ze wszystko idzie\npomyslnie .\nodezwij sie , jesli bedziesz przyjezdzal do stanow .\nrozmawialem ostatnio z twoim kolega , avi hauser .\nwicek\nwincenty kaminski\n10 snowbird\nthe woodlands , tx 77381\nphone : ( 281 ) 367 5377 ( h )\n( 713 ) 853 3848 ( o )\ncell : ( 713 ) 898 9960\n( 713 ) 410 5396 ( office mobile phone )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.336+0000", "entityId": 7715, "properties": {"text": "Subject: re : interview with enron corp .\ncliff :\nthank you for replying and we want to wish you the best in your new\nendeavor . texaco is also a good company and i am sure you will\nbe pleased .\nbest of luck !\nsincerely ,\nshirley crenshaw\ncliff parsons on 06 / 27 / 2000 02 : 05 : 13 pm\nto : shirley crenshaw\ncc : vince j kaminski , pinnamaneni krishnarao\n, osman sezgen ,\ncp 38 @ andrew . cmu . edu\nsubject : re : interview with enron corp .\ndear ms . crenshaw :\ni recently accepted a quant position with texaco in houston . lara berry\nfrom enron contacted me just after that , and i told her of the situation .\ni agreed to send her my resume ( which i did ) and keep in touch .\nenron is a fabulous corporation with exciting opportunities . mr . kaminski\nis very well known in the energy field , and i have read some of his\nmaterial . i am extremely pleased that you all would be interested in me ;\nhowever , i have given my word to texaco .\nthe texaco position offers a lot of opportunity and risk . this is the kind\nof challenge for which i am looking . if things do not work out , however , i\nwould definitely contact enron again and cherish any opportunity for an\ninterview .\nthank you very much ,\ncliff parsons\n- - on monday , june 26 , 2000 , 11 : 27 am - 0500 shirley crenshaw\nwrote :\n>\n>\n> good morning mr . parsons :\n>\n> the enron corp . research dept . would like to conduct a telephone\n> interview with you at your convenience .\n>\n> the interviewers would be :\n>\n> vince kaminski managing director\n> p . v . krishnarao director\n> osman sezgen manager\n>\n> please give me some dates and times either this week or july 5 , 6 & 7\n> of next week that you would be available and i will coordinate the\n> calendars .\n>\n> look forward to hearing from you .\n>\n> regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron corp . research\n> 713 / 853 - 5290\n> email : shirley . crenshaw @ enron . com\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.340+0000", "entityId": 7716, "properties": {"text": "Subject: re : enron offsite\nlet ' s do it ! august 18 - 20 is our first choice !\nplease send me all the information and then we will discuss the particulars .\ni will get vince to sign it immediately .\nthanks steve !\nshirley\n\" steve collins \" on 06 / 27 / 2000 02 : 22 : 27 pm\nto :\ncc :\nsubject : re : enron offsite\nhello again !\ni promise i am not running ! the deal that we worked out with the general\nmanager ( tom pratt ) is that enron has a $ 6000 credit with the great divide\nlodge that will expire on 8 / 1 / 00 . you can either use that credit for\nindividual rooms prior to 8 / 1 / 00 , or we have agreed that we can apply that\namount to a meeting prior to the thanksgiving holiday in 2000 if the contract\nis signed before 8 / 1 / 00 .\nat this point , august 18 - 20 is available , but the 25 - 28 is not . if we can\nget this signed prior to 7 / 31 / 00 , your $ 6000 credit would be able to be\napplied to this event .\nplease let me know if this will work for you . thanks !\nsteve\nsteve collins\nnational sales manager\nthe village at breckenridge / great divide lodge\n( 800 ) 332 - 0424 or ( 970 ) 453 - 3156 direct\nscollins @ vailresorts . com\n> > > \" shirley crenshaw \" 06 / 27 / 00 01 : 06 pm > > >\nhello steve :\nplease don ' t run ! i know after the last fiasco with an enron offsite you are\nprobably running for the hills !\ni do want to apologize to you and thank you for all of your assistance even\nthough we were unable to make the trip .\nhowever , i understand there has been an arrangement made with enron ,\nthat if we book a time and come before thanksgiving we can recoup the money\nthat we forfeited ? please let me know if i am understanding this correctly .\nif so , we have been told that our group can use this for an offsite .\nwe are looking at the weekends of august 18 , 19 and 20 or august 25 ,\n26 and 27 th . there will be approximately 12 people .\nplease let me know your understanding of the arrangement and the\navailability of the dates mentioned .\nlook forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\ntelephone : 713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.345+0000", "entityId": 7717, "properties": {"text": "Subject: re : tanya ' s vacation\nthis is just to let you know that i am going to go on vacation from 7 / 26 / 00\nto 8 / 8 / 00 .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.349+0000", "entityId": 7718, "properties": {"text": "Subject: re : i ' ll be gone for a month\nsofya :\nsounds like fun - be careful and have a great time . we will see you when\nyou return on the 31 st .\nshirley\nsofya tamarchenko @ enron\n06 / 27 / 2000 11 : 23 am\nto : shirley crenshaw / hou / ect @ ect , grant masson / hou / ect @ ect , maureen\nraymond / hou / ect @ ect\ncc :\nsubject : i ' ll be gone for a month\ngood morning :\ni am leaving houston this weekend to go to camp , so friday june 30 will be my\nlast day . i will be at camp for a month , but i can be back at work on monday\njuly 31 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.354+0000", "entityId": 7719, "properties": {"text": "Subject: re : chapter 3\ngentlemen ,\nthankyou for your fine effort . i ' ll e - mail thru thurs eve ( sydney time ) what\nwe have done to incorporate it into our material ( which wasn ' t toooo\npainful ) to see if it is ok with you . a couple of quick questions though .\nvince - your section had a number of footnote numbers , but no actual\nfootnotes - can you please resend them ?\ngrant - i agree it would be good to have the final figure . what happens if\nyou plot the historical data and the simulations on the same graph - but\nwith different axis ?\nmany thanks and best regards .\nchris .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.358+0000", "entityId": 7720, "properties": {"text": "Subject: dale nesbitt\ngreg ,\ndale nesbitt is a consultant who develops pricing models ( spot and fwd )\nprices for e - commerce sites . he will be in houston in the beginning of july .\nany interest in meeting him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 28 / 2000\n05 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 06 / 11 / 2000 03 : 17 : 23 pm\nto : vkamins @ enron . com\ncc :\nsubject : dale nesbitt\no :\ncc :\nsubject : re : follow up\nvince :\nthanks for your help in this matter . i dont want to be a bother to you . i\nknow you are doing your best to put this together as a go between .\nas you might suspect , i am in a hurry to put together the right hearing at\nenron because marketpoint is just now being completed - - u . s . and world oil\nand gas and north american electricity . we have just signed up our first\nweb provider ( e - acumen . com ) , who is preparing to vend our north american\nelectric generation data base over their website . i believe we are an\nintegral part of their offering . it wont be long before marketpoint needs\nthe capitalization to meet our growing customer needs professionally and\nquickly , particularly when we sign up one or more vertical portals to vend\nor offer fundamental forward projections from our models . i a loath to do\nso without the capitalization and staffing we need . also , i am loath to do\nso without the market reach that a partner like enron could render instantly\navailable .\ni also would be eager during my next trip to houston to continue the\ndiscussion with you regarding how marketpoint might benefit enron directly .\ni plan to be there the last week in june .\nthanks again for all your help and support .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.363+0000", "entityId": 7721, "properties": {"text": "Subject: video conference with the mars corp . \" cds \" group - avi hauser\ngood morning :\nthere will be a video conference this friday , june 30 at 11 : 30 am with\navi hauser of the cds group of mars corp .\nthe subject will be : commodity development services opportunity\nin the emerging energy markets .\nthe video conference will be in eb 2802 a\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.367+0000", "entityId": 7722, "properties": {"text": "Subject: introduction\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 28 / 2000\n07 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\non 06 / 20 / 2000 03 : 12 : 53 pm\nto : \" vince j kaminski \"\ncc : richard . larsen @ effem . com\nsubject : introduction\nvince :\nas way of introduction , i wanted to write a bit about mars inc . and then\nabout cds ,\nthe unit i head . mars is a private company , considered to be the largest\nprivately owned\nmanufacturing company in the world . mars is not in the habit of disclosing\nits\nfinances ,\nso the best i could do is refer to forbes ' estimate of $ 15 billion annual\nrevenue and\nto the profit margins of similar companies between 5 - 12 % . mars is in the\nbusiness of\nmanufacturing confectionery ( m & m , dove bar , skittles , twix , - all ( r ) )\nfood ( uncle ben rice ( r ) ) pet food ( pedigree , whiskas waltham ( r ) ) and other\nproducts .\nmars has prospered during the years because of a unique philosophy that\nemphasizes the\nlong term goals of the company . part of the philosophy is to look for win - win\nsolutions with\nits suppliers , customers and partners .\nas can be understood from the nature of the company , a large chunk of its\nexpenses\ngoes towards purchasing commodity like products , and hence the history of\nresearching\nthose commodities and the weather that influences their supply and the demand\n( people\neat less ice cream in the winter and less chocolate in the summer ) .\ncds has a history of few decades in forecasting weather and has been very\nsuccessful ,\nwith an envious track record , in helping mars get a competitive advantage in\nthese arenas .\ncds is a global group ( in 4 countries across two continents ) which supports\nthe\npurchasing\nfunction and the corporate at large in these and other arenas . it is a\nmultidiscipline and\nmultinational team with a lot to offer .\nnot having a ready access to the energy markets , and with a risk profile based\non\nmanufacturing expertise , mars has decided to look for potential partners in\nthis\narea .\nenron presence in the market place certainly makes it an interesting party to\ntalk to .\nin talking to enron , we are careful to suggest that mars is not committing to\nanything\nat this point , and all we are after is to find out if there is an interest to\npursue the opportunity\nwe discussed in the future .\ni am looking forward to our video conference call .\nkind regards ,\navi\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\navi i . hauser phd mba\ncds director\n100 international drive mt olive nj 07828 - 1383\n+ 1 973 691 3664 ( office )\n+ 1 973 347 8189 ( fax )\n+ 1 973 727 3622 ( car + slow paging )\nhauser @ cdsusa . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.371+0000", "entityId": 7723, "properties": {"text": "Subject: yesterday ' s power outage\nas you are painfully aware , we had a power outage wednesday morning in the\nenron building . this outage was caused by localized structural failure of\nthe raised floor in our 34 th floor data center . this resulted in disruption\nto the power distribution system servicing the phone switch and a number of\nena servers .\nas a cautionary move , enron online was interrupted while the extent of the\nfailure was assessed , resulting in the system being unavailable from 11 : 23 to\n11 : 39 . all enron building telephones and voicemail were unavailable for\napproximately one hour and 20 minutes and certain ena trading systems were\nunavailable for over two hours . during this time the power was stabilized\nand systems were restored . immediate steps are being taken to correct this\nproblem .\nwe apologize for this inconvenience .\nif you have any questions in regard to this outage , please call philippe bibi\nat x 37698 or bill donovan at x 35459", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.376+0000", "entityId": 7724, "properties": {"text": "Subject: 6 / 30 aga forecast at 66\nmike ,\nmy number for next week is 66 ( from seasonal holt - winter model , shw ) .\ni am also fitting aga to an arimax model . as discussed , i need weighted\ntemperature\ndata for east , west and production areas . i would appreciate if you could\nprovide that data .\nafter that , i could add forward price curve as explainatory variables .\nsince aga is a market mover , it is important to have an accurate model .\nzimin\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : re : revised aga forecast for 6 / 23 is 65\ncame in at 73\nwhat do have for next week ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.381+0000", "entityId": 7725, "properties": {"text": "Subject: revised aga forecast for 6 / 23 is 65\nmike ,\ni refit the molecular model incorporated last week ' s data , the revised number\nfor this week is 65 ,\n( dropped 3 bcf compared to last fit ) , see graph .\nlet us see what is the real number today .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.386+0000", "entityId": 7726, "properties": {"text": "Subject: re : portcalc methodology\nkeith ,\nboth power and emrs use a c library provided ( also implemented ) by research\ngroup . the methodology of greek calculations in power portcalc has not\nchanged for more than 6 years since i joined enron 6 years ago . vince\nkaminski , stinson gibner or grant masson should be able to help you with both\nquestions .\nzhiyong\nkeith bowie\n06 / 28 / 2000 04 : 22 am\nto : zhiyong wei / hou / ect @ ect\ncc : brian hudson / lon / ect @ ect\nsubject : portcalc methodology\nzi\ni ' ve been asked by risk management :\na ) who in research originally signed off the portcalc formulae\nb ) for a copy of the documentation of the methodology ( greek calculations ,\netc . )\nhope you can help on both counts .\nthanks\nkeith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.390+0000", "entityId": 7727, "properties": {"text": "Subject: re : next visit to houston\ned ,\ni shall be available on both days . what about wednesday ,\njuly 12 , between 1 : 30 and 4 : 00 . please , let me know\nwhat time would work for you .\nit will be nice to see you again .\nvince\np . s . by the way , did you have a chance to take a look at the eol ?\n\" edward krapels \" on 06 / 28 / 2000 02 : 49 : 41 pm\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : next visit to houston\ndear vince ,\ni will be returning to houston during the week of july 10 .\nesai and weather services international have launched - - after more than 18\nmonths of r & d - - our service , called energycast power trader and energycast\ngas trader , for power traders in nepool and pjm . i would be happy to review\nthe service with you as well as take you on a tour of our web site . are you\navailable on july 12 - 13 ?\nsincerely ,\ned krapels\n- 61900 _ wsiesai _ energycast . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.395+0000", "entityId": 7728, "properties": {"text": "Subject: enron metals\nhi tanya\nthanks for your time last week - i ' ve been travelling a bit but i ' m now back\nin london at mg to commence obtaining information for you .\ni ' m not really sure where to start on this , so initially i propose to get :\na complete data set ( i . e . all live trades from all entities ) which includes\nprices and volatilities\na separate file of options\nany written valuation methodologies used by the core systems\nthere is a project to obtain a data feed from an mg system called mercur .\nthis is their risk management system but we are proposing to use it along the\nlines of a data warehouse , not a risk system . i ' d be happy to talk you\nthrough any other current issues .\nlet me know if there ' s anything else you need at present .\nregards", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.401+0000", "entityId": 7729, "properties": {"text": "Subject: hello\nhi vince ,\nhow are you . it was really a pleasure meeting you and talking to you at\nthe toronto energy derivative conference . thank you for speaking with\nme about the possibility of visiting your research group . it will be\ngreat if i could have such opportunity whenever you see your schedule\nfits . i am very much open for the last week of july and early august .\ni ' m looking forward to hearing from you soon .\nbest ,\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.405+0000", "entityId": 7730, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\ndear mr . kaminski , mr . krishnarao and mr . sezgen ,\ni was very pleased to have an wonderful telephone interview with you .\nit ' s exciting and challenging . i like it .\ni talked to my financial engineering program classmate , bob lee who\nwas just hired by enron recently . he told me he is very impressed by\nyour company and very excited to work there .\ni believe i ' m a strong candidate for this position . i ' d like to share\nmore my background and experience with you .\ni look forward to meeting you . thank you .\np . s . thank shirley for her coordinate work . when i come to houston ,\ni may need her help again .\nsincerely ,\njeff he", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.411+0000", "entityId": 7731, "properties": {"text": "Subject: re : enron site / mepr 2\nfyi ,\nmy message to risk .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 28 / 2000\n05 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 05 / 2000 08 : 04 am\nto : conrad gardner @ enron\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , daniel\ndiamond / hou / ect @ ect\nsubject : re : enron site / mepr 2\nconrad ,\nthanks for your message .\nthere are 3 papers enron contributed to the last mepr .\nthere is also another paper on electricity i contributed to the \" red book \" on\nus\npower markets , as well as a paper or credit risk management , and a paper\non weather derivatives . all these papers included in other risk books were\nwritten by enron\nemployees .\nwe would like them included as well , if technically possible .\ni think that offering other energy related books through our site , in\naddition to mepr 2 ,\nis fine , but i would leave the decision to dan diamond , who is responsible\nfor the project .\nvince\nconrad gardner on 06 / 05 / 2000 07 : 08 : 36 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : enron site / mepr 2\n> date : mon , 05 jun 2000 13 : 02 : 02\n> to : vince kaminski\n> from : conrad gardner\n>\n> dear vince\n>\n> thanks for the call and email on friday . i will contact masuyuki and follow\nit from there .\n>\n> regarding the enron site , i think it is absolutely fine to put up the two\nenron chapters ( i ' ll provide pdfs ) , and prevent any customer leakages from\nyour site by the use of \" submit \" buttons . as mentioned , i ' ll offer a 20 %\ndiscount on mepr 2 to customers but would you be interested in some of other\nenergy titles ? - please let me know .\n>\n> many thanks\n>\n> conrad gardner\n>\nhead of book publishing\nrisk books\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ndirect tel : + 44 ( 020 ) 7 484 9750\nmain tel : + 44 ( 020 ) 7 484 9700\nfax : + 44 ( 020 ) 7 484 9758\ne - mail : conrad @ risk . co . uk\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.416+0000", "entityId": 7732, "properties": {"text": "Subject: b 2 b at enron\ntom ,\ni am sending you the information about our new b 2 b unit .\ni have talked yesterday with greg whalley who is heading the new\nunit about the e - commerce project at wharton and recommended that enron join\nthis program .\ni have sent him this morning a copy of the materials you gave me .\nthe meeting with jeff skilling has been pushed till the 2 nd half of july .\ni talked to him briefly twice that jeff shankman and i want to discuss with\nhim building a relationship with wharton . jeff shankman is , by the way , a\ngreat friend of\nyour institution .\nvince\n* * * * * * * * * * * * * * * * * * * * * * *\ncompanies & finance : the americas : enron sees bricks and\nbytes mix reshaping energy market : purchase of mg only\na start in\nbuilding b 2 b platforms , writes hillary durgin :\ncompanies financial times ; 16 - jun - 2000 12 : 00 : 00 am ;\n604 words\nby hillary durgin\nif jeffrey skilling is right ,\nenron ' s acquisition of mg is only the tip of the iceberg .\nenron ' s president and\nchief operating officer is engineering a fundamental\nstrategy shift at the\nhouston energy company , aimed at making it a dominant\n\" new economy \"\nplayer across various industrial markets .\nthe dollars 446 m acquisition last month of mg , the\nuk - based metals trader ,\nis only the first of more than dollars lbn in estimated\nnew investments the\ncompany is targeting . it is seeking vehicles on which to\nbuild\nbusiness - to - business ( b 2 b ) platforms in sectors such as\nlogistics , chemicals ,\nagricultural products and pulp & paper .\nmr skilling wants to take the business model the company\ndeveloped in\nnatural gas and power and apply it to other wholesale\ncommodity markets . he\nargues the electronic platforms it creates will not only\nbecome the principal\nb 2 b sites for those sectors , but reshape those\nindustries .\nas an example , he points to enron ' s new e - commerce\nplatform , enrononline ,\nwhich has changed the way the company does business with\nits customers\nwhile significantly increasing sales .\nthe company - the largest wholesale merchant of natural\ngas and power - saw\nwholesale , physical deliveries of natural gas surge 53\nper cent in the first\nquarter .\ncritics argue that enron ' s move away from its familiar\nenergy business into\nnew industries , where the learning curve is steep and the\ncompetition\nentrenched , is risky . yet a number of industry analysts\npoint out enron has\nproved it understands markets and how to manage risks\nwhile becoming the\nlargest importer of coal in the uk , the largest trader of\ngas and power in the\nus and grabbing an advantage in bandwidth .\n\" it ' s a prudent strategy , but it ' s got to be done in an\norderly way , \" says ronald\nbarone , analyst with paine - webber in new york . \" what\nthey ' re doing here is\nwhat they ' ve been incredibly successful at doing , \" he\nadds , noting that enron\nposted dollars 1 . 3 bn in earnings before interest and\ntaxes ( ebit ) from its\nwholesale energy and services business in 1999 , up 34 per\ncent from the\nprevious year .\nearnings from that division accounted for two - thirds of\nthe company ' s overall\nincome before interest and taxes last year , and mr barone\nsees the unit ' s ebit\nincreasing 15 - 30 per cent annually over several years .\nas with gas and power and now broadband , where enron is\nstandardising\ncontracts and creating a market in bandwidth , it wants to\ncreate markets by\nentering as a physical player and providing merchant ,\nrisk management and\nfinancial services over the internet .\n\" we will provide electronic commerce , but we will provide\nliquidity and we will\nprovide settlement , or fulfilment of that contract , \" mr\nskilling says . \" that is an\nextremely powerful model . if you look at other b 2 b sites ,\nthey don ' t do that . \"\nmr skilling argues enron ' s e - commerce platform will\ntriumph over the other ,\nbulletin board - type exchanges , where striking a deal\ndepends on two parties\nhooking up and working through uncertainties over timing ,\nprice , credit and\nfulfilment .\nnot everyone shares that view . some energy companies , for\nexample , would\nrather not do business with a competitor . bp amoco\nrecently purchased a 3\nper cent stake in altra energy technologies , a houston -\nbased , neutral\nwholesale energy exchange . with koch industries and\namerican electric\npower , it also committed to carry out a fixed volume of\ntransactions on the\nsite to lend it liquidity .\njust as in gas and power and now broadband and metals ,\nenron believes it\nneeds networks of strategic physical assets . in acquiring\nmg , enron got a\nstable of warehouses , lending it a strong physical\nposition .\n\" it should provide ( mg ) with a more vibrant , more active\nphysical spot market\nin more markets in the world , \" says greg whalley , chief\nexecutive officer of\nenron net works , the new division enron is launching to\nidentify and enter\ncommodity markets . he argues that in metals and other\nmarkets , enron will\ndeliver better pricing , price risk management services ,\ncross - commodity\ntransactions and flexible transactions for a wider range\nof customers .\nmr skilling says there are significant rewards for\nrestructuring an industry .\n\" if you can take that platform , and you use the\ncapabilities the bricks bring to\nthe table , e - commerce the industry and change the\nstructure , you ' re selling for\nmore than a 50 multiple . \"\ncopyright , the financial times limited", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.424+0000", "entityId": 7733, "properties": {"text": "Subject: re : loan recommendation form\nli ,\ni shall take care of it thursday .\nplease , call me at the end of the day .\nvince\nli xiao @ enron\n06 / 27 / 2000 11 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : loan recommendation form\nhi , vince ,\ni was told by molly that she hasn ' t received the recommendation form from you\nyet .\nsince i got admission late from the school , now i am short of time of getting\ni - 20 which needs loan approval ,\nand getting visa status transferred ( from h - 1 to f - 1 ) which requires i - 20 and\nloan approval\nand normally takes around 45 days through ins ( immigration naturalization\nservice ) .\nnow , i am trying to push every step to speed up the process in order to\ncatch up the school opening at beginning of sept .\ni know i just told you this late last week . nevertheless , i am writing to see\nif you can squeeze some time to finish the recommendation form anytime soon .\nit will be a big help .\nthank you very much , vince .\nhave a good day .\nsincerely ,\nli x 39635", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.432+0000", "entityId": 7734, "properties": {"text": "Subject: dinner for summer interns\nvince ,\nthursday , july 27 , seems to work for everyone for our summer intern\ndinner . i have also told this date to\ndatren\nainsley\ncantekin\nbrad\ngiuseppe and\nseville\nand asked mike roberts to tell his two summer interns .\nplease let me know if we are overlooking anyone .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.437+0000", "entityId": 7735, "properties": {"text": "Subject: re : chapter 3 revisions\ndear vince and grant ,\nplease find attached our butchering of your work ( only joking . . . ) . we ' ve\ntied the chapter in with what has gone before and changed some of your\nnotation so that it is consistent with ours .\nvince ; could you please send thru the footnotes referred to in the chapter\nat your convenience . could you also please supply a full reference for\nroutledge , seppi , spatt ( 1999 ) .\ngrant ; i hope you don ' t mind we ' ve called pdjd just jd ( to fit in more with\nour work ) . please also can you supply the last figure before you disappear !\ndo you want us to write the summary ?\nmany thanks again for all your efforts . it ' s all looking good .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : grant masson\nto : chris strickland\nsent : tuesday , june 27 , 2000 8 : 54 am\nsubject : re : chapter 3 revisions\n>\n>\n>\n> chris :\n>\n> i can ' t decide if i should take your silence over the past several weeks\nto mean\n> that you are getting stuck into finishing up the book or you are just so\n> thoroughly disgusted with our work that you would like to wash your hands\nof us .\n>\n> i ' ve been stuck on trying to get the last figure mentioned in the chapter\ninto a\n> format that i like . the problem is the volatility found in the\nregressions is\n> on the order of several hundred percent , and so when i plot the historical\ndata\n> next to a simulated curve over the course of the year , the simulated curve\ntends\n> to drift up or down stupidly both in the jump diffusion and garch + jump\ndiffusion\n> model . any suggestions would be accepted with pleasure . i wonder if i\nshould\n> skip the figure . it seems a pity to do so however , because otherwise the\nlast\n> section comes off as a bit of an afterthought , and i would like to present\na\n> practical example . again any guidance would be appreciated .\n>\n> anyway , i am sending you a somewhat improved draft now ( minus only the\nlast\n> figure ) , rather than sit on the whole thing while i stew on this bit , i\nhope\n> this will be useful to you . because i am leaving for holidays at the end\nof the\n> week , i can guarantee you that you will have a final draft before then .\n>\n> regards ,\n> grant .\n> ( see attached file : cs 260600 . doc )\n>\n- ed _ co 3 _ volatility . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.441+0000", "entityId": 7736, "properties": {"text": "Subject: re : next visit to houston\nyes and so would the northeast trader john suarez\nvince j kaminski\n06 / 29 / 2000 04 : 07 pm\nto : george hopley / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : next visit to houston\ngeorge ,\nwould you like to take a like at the service ( see below ) .\nthe meeting is on july 12 at 2 : 30 ( 19 th floor ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 29 / 2000\n04 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" edward krapels \" on 06 / 29 / 2000 03 : 53 : 40 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\ngood to hear from you and i ' m glad you ' re available . how is wednesday at\n2 : 30 ?\ni did look at eol and am not surprised to see its quality . i was unable to\nsay much about it in my risk electricity hedging and trading report because\nof deadline pressures . how is the site doing ? i am intrigued by the\ncompetition for trading platforms and was astonished to hear that goldman ,\nmorgan , bp and shell were going to launch a site to compete with yours . talk\nabout a shotgun marriage !\nif we have time next week , i could step you through our website - -\nwww . weathereffects . com . i ' m very proud of what we ' ve done . i can ' t give out\na password yet but would be happy to walk through the site with you over the\nphone using my password . it ' s a very ambitious site - - with state - of - the - art\nwsi weather ( seasonal , 6 - 10 , and day to day ) driving a good load model for\npjm and nepool . esai contributes oil and gas input price forecasts , capacity\njudgments , and \" herding \" ideas to develop power price forecasts for same\ntime periods . after one month ' s full - bore effort , i ' m pleased with the\nresults ( e . g . , we forecast nepool onpeak to be $ 43 and it turned out $ 46 ) .\nhave a great weekend .\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , june 28 , 2000 5 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\ni shall be available on both days . what about wednesday ,\njuly 12 , between 1 : 30 and 4 : 00 . please , let me know\nwhat time would work for you .\nit will be nice to see you again .\nvince\np . s . by the way , did you have a chance to take a look at the eol ?\n\" edward krapels \" on 06 / 28 / 2000 02 : 49 : 41 pm\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : next visit to houston\ndear vince ,\ni will be returning to houston during the week of july 10 .\nesai and weather services international have launched - - after more than 18\nmonths of r & d - - our service , called energycast power trader and energycast\ngas trader , for power traders in nepool and pjm . i would be happy to review\nthe service with you as well as take you on a tour of our web site . are you\navailable on july 12 - 13 ?\nsincerely ,\ned krapels", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.446+0000", "entityId": 7737, "properties": {"text": "Subject: storage story\nsee my storage story that begins on 1 . plus you might find the issue to be\nof interest . i will be doing little occasionally fee pieces for the\ntransportation &\nstorage report and will be having lunch with them tomorrow so any thoughts\nyou have on my piece or the report would be appreciated .\nbest regards ,\njhherbert\n- tso 6 - 29 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.450+0000", "entityId": 7738, "properties": {"text": "Subject: re : from today ' s paper\nclayton ,\nit translates into a credit risk for those on the other side of the hedge .\nmany producers have a long history of poor timing of hedges .\ni could give you quite a long list . they definitely need a bright\nadviser who will tell them the price of gas two years from now .\nvince\nclayton vernon @ enron\n06 / 29 / 2000 01 : 02 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : from today ' s paper\nvince :\nhere ' s an amazing factoid in today ' s paper related to the issue of how much\nmoney you can \" make \" ( sic ) by hedging :\n. . .\nother companies analysts say are saddled with hedges include el paso energy\ncorp . and coastal corp . , which are merging .\na coastal official declined to comment on the company ' s forward positions .\nalthough el paso is known for its pipeline business , it produces gas as\nresult of its $ 6 . 2 billion acquisition last year of sonat . \" more than 90\npercent \" of that gas is hedged through the rest of the year , said bruce\nconnery , vice president of investor relations . the forward contracts are for\n$ 2 . 40 , he said .\nhedging in the current market plays to the company ' s primary aim of meeting\ninvestors ' expectations , connery said .\n\" our first goal is to deliver the earnings goal that we set out , and that\ndictates that we hedge out commodity volatility , \" he said .\n. . .\n$ 2 . 40 ? ? ? are you kidding ? ? ? ?\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.455+0000", "entityId": 7739, "properties": {"text": "Subject: usaee conference update from louise burke\ncontent - transfer - encoding : binary\ndate : thu , 29 jun 2000 16 : 38 : 24 edt\nsubject : u : \\ wp 60 \\ usaeekaminska . doc\nmime - version : 1 . 0\ncontent - type : application / vms - rms ; vms - fdl = \" system ; source vax / vms ; ; file ;\nallocation 54 ; best _ try _ contiguous no ; bucket _ size 0 ; contiguous no ;\ndeferred _ write no ; extension 0 ; global _ buffer _ count 0 ; mt _ block _ size 0 ;\nmax _ record _ number 0 ; maximize _ version no ; organization sequential ; read _ check\nno ; supersede no ; write _ check no ; ; record ; block _ span yes ; carriage _ control\ncarriage _ return ; control _ field _ size 0 ; format stream ; size 0 ; ; area 0 ;\nallocation 54 ; best _ try _ contiguous no ; bucket _ size 0 ; contiguous no ;\nexact _ positioning no ; extension 0 ; position none ; volume 0 ; \" ; mr - type = msword ;\nname = msword\ncontent - disposition : attachment ; filename = msword\nimportance : normal\nal - format : msword\nal - type : document\n- msword", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.461+0000", "entityId": 7740, "properties": {"text": "Subject: re : ebs var transaction policy\nthat would be great .\nb .\nvince j kaminski @ ect\n06 / 29 / 00 10 : 27 am\nto : barry pearce / enron communications @ enron communications\ncc : stinson gibner / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , grant\nmasson / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : ebs var transaction policy\nbarry ,\nstinson forwarded your message to me . i am meeting ted murphy today and i\nshall bring it up with him .\nwe have unit at research ( tanya tamarchenko , reporting to grant mason ) who is\nresponsible for\nv @ r support .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 29 / 2000\n10 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n06 / 29 / 2000 09 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : ebs var transaction policy\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 06 / 29 / 2000\n09 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarry pearce @ enron communications\n06 / 29 / 2000 09 : 09 am\nto : stinson gibner / hou / ect @ ect , dale surbey / lon / ect @ ect , ted\nmurphy / hou / ect @ ect\ncc : lou casari / enron communications @ enron communications , john echols / enron\ncommunications @ enron communications , jim fallon / enron communications @ enron\ncommunications\nsubject : ebs var transaction policy\nhey you guys ,\nwe are trying to implement a ' var transaction ' policy - and would like your\nopinion .\nthis is going to be tough - because i ' m not sure we have implemented a\nsimiliar policy across any of our other ' books ' - that is - we looking to\nbring in all the accrual / operational assets as well as the mtm stuff\n( lambdas ) . to have a real - live ' configuration ' of the system .\nif assets / routes / servers etc . . . are added - what is the impact on the ' value '\nof the system and what it ' s worth .\njohn has attached a draft below - for your review and thoughts .\ni can see how this works in a trading environment - when you actually know\nthe var of your whole trading portfolio . however - i ' ve not seen this done\nwith a mixture of mtm & accrual assets . add the spice of a ' operational\nsystem ' valuation - and this will be tough to quantify and model .\nstep 1 - configure system and value it\nstep 2 - calculate a var on this . we will need to do some work here !\nstep 3 - calculate the incremental var of new deals / amendements / reconfigs etc\n- tough . . . .\nsee what you think ?\nb .\njohn echols\n06 / 28 / 00 05 : 41 pm\nto : jim fallon / enron communications @ enron communications , barry pearce / enron\ncommunications @ enron communications , lou casari / enron communications @ enron\ncommunications\ncc :\nsubject : policies\nhere is a first rough draft of a \" value @ risk \" transaction policy .\ni would like you to start looking at where we are going on the policy and get\nsome early thinking going on limits for the v @ r . for example , should we\neffectively shut down all server relocations without approval , or allow some\nlevel of mb of storage to be moved around or reconfigured ?\ni need some commercial and industry realism for this . we may need rick\npaiste or your industry helpers ( marquardt , etc . to help us ) .\nbarry , lou , i need your input .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.468+0000", "entityId": 7741, "properties": {"text": "Subject: re : next visit to houston\ngeorge ,\nwould you like to take a like at the service ( see below ) .\nthe meeting is on july 12 at 2 : 30 ( 19 th floor ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 29 / 2000\n04 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" edward krapels \" on 06 / 29 / 2000 03 : 53 : 40 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\ngood to hear from you and i ' m glad you ' re available . how is wednesday at\n2 : 30 ?\ni did look at eol and am not surprised to see its quality . i was unable to\nsay much about it in my risk electricity hedging and trading report because\nof deadline pressures . how is the site doing ? i am intrigued by the\ncompetition for trading platforms and was astonished to hear that goldman ,\nmorgan , bp and shell were going to launch a site to compete with yours . talk\nabout a shotgun marriage !\nif we have time next week , i could step you through our website - -\nwww . weathereffects . com . i ' m very proud of what we ' ve done . i can ' t give out\na password yet but would be happy to walk through the site with you over the\nphone using my password . it ' s a very ambitious site - - with state - of - the - art\nwsi weather ( seasonal , 6 - 10 , and day to day ) driving a good load model for\npjm and nepool . esai contributes oil and gas input price forecasts , capacity\njudgments , and \" herding \" ideas to develop power price forecasts for same\ntime periods . after one month ' s full - bore effort , i ' m pleased with the\nresults ( e . g . , we forecast nepool onpeak to be $ 43 and it turned out $ 46 ) .\nhave a great weekend .\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , june 28 , 2000 5 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\ni shall be available on both days . what about wednesday ,\njuly 12 , between 1 : 30 and 4 : 00 . please , let me know\nwhat time would work for you .\nit will be nice to see you again .\nvince\np . s . by the way , did you have a chance to take a look at the eol ?\n\" edward krapels \" on 06 / 28 / 2000 02 : 49 : 41 pm\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : next visit to houston\ndear vince ,\ni will be returning to houston during the week of july 10 .\nesai and weather services international have launched - - after more than 18\nmonths of r & d - - our service , called energycast power trader and energycast\ngas trader , for power traders in nepool and pjm . i would be happy to review\nthe service with you as well as take you on a tour of our web site . are you\navailable on july 12 - 13 ?\nsincerely ,\ned krapels", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.475+0000", "entityId": 7742, "properties": {"text": "Subject: re : next visit to houston\ned ,\nwednesday , july 12 , 2 : 300 will work for me .\ni shall be glad to review your website - -\nwww . weathereffects . com . i shall invite some\npeople who work on electricity in\nmy group to join me .\nvince\n\" edward krapels \" on 06 / 29 / 2000 03 : 53 : 40 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\ngood to hear from you and i ' m glad you ' re available . how is wednesday at\n2 : 30 ?\ni did look at eol and am not surprised to see its quality . i was unable to\nsay much about it in my risk electricity hedging and trading report because\nof deadline pressures . how is the site doing ? i am intrigued by the\ncompetition for trading platforms and was astonished to hear that goldman ,\nmorgan , bp and shell were going to launch a site to compete with yours . talk\nabout a shotgun marriage !\nif we have time next week , i could step you through our website - -\nwww . weathereffects . com . i ' m very proud of what we ' ve done . i can ' t give out\na password yet but would be happy to walk through the site with you over the\nphone using my password . it ' s a very ambitious site - - with state - of - the - art\nwsi weather ( seasonal , 6 - 10 , and day to day ) driving a good load model for\npjm and nepool . esai contributes oil and gas input price forecasts , capacity\njudgments , and \" herding \" ideas to develop power price forecasts for same\ntime periods . after one month ' s full - bore effort , i ' m pleased with the\nresults ( e . g . , we forecast nepool onpeak to be $ 43 and it turned out $ 46 ) .\nhave a great weekend .\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , june 28 , 2000 5 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\ni shall be available on both days . what about wednesday ,\njuly 12 , between 1 : 30 and 4 : 00 . please , let me know\nwhat time would work for you .\nit will be nice to see you again .\nvince\np . s . by the way , did you have a chance to take a look at the eol ?\n\" edward krapels \" on 06 / 28 / 2000 02 : 49 : 41 pm\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : next visit to houston\ndear vince ,\ni will be returning to houston during the week of july 10 .\nesai and weather services international have launched - - after more than 18\nmonths of r & d - - our service , called energycast power trader and energycast\ngas trader , for power traders in nepool and pjm . i would be happy to review\nthe service with you as well as take you on a tour of our web site . are you\navailable on july 12 - 13 ?\nsincerely ,\ned krapels", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.479+0000", "entityId": 7743, "properties": {"text": "Subject: enronoptions - your stock option program\nit is amazing and yet not surprising how much enron has accomplished in the\nfirst six months of this year . you continue to make it happen . we recognize\nthat you work hard every day to accomplish enron \u0001 , s business goals , and we are\npleased that many of you have shared in the company \u0001 , s financial success\nthrough enron stock options .\nas you may know , the current employee stock option program ( also known as the\nall employee stock option program or aesop ) began in 1994 and provided value\nto participants through 2000 . employees who have participated in this\nprogram from its inception have realized a 1 , 119 % increase in the value of\ntheir stock options ( assuming a stock price of $ 70 ) over the life of the\nprogram .\nenron stock options are a valuable part of your total compensation package\nand a contributing factor to your performance and to enron \u0001 , s continued\nsuccess . therefore , the enron executive committee and the compensation and\nmanagement development committee of the enron board of directors have decided\nto continue to offer stock options as a part of your compensation package .\non may 1 , 2000 , the committee approved an employee stock option program for\ncalendar years 2001 - 2005 ( enronoptions \u0001 ) your stock option program ) . it is\nexpected that enronoptions \u0001 ) your stock option program will be granted ,\neffective on or about december 29 , 2000 , for those employees who are eligible\non that date ( please see note below ) . the new program , which is subject to\nfinal approval by enron \u0001 , s board of directors , is as follows :\n? enronoptions \u0001 ) your stock option program will give stock options to\neligible full - time and part - time regular employees in domestic and\ninternational companies / locations .\n? the grant of non - qualified stock options will equal 25 % of annual base\nsalary ( 5 % of annual base salary for each year of a 5 - year period ) on\ndecember 29 , 2000 . ( salary calculation and value may vary in some\ninternational locations . )\n? the board will grant the stock options on december 29 , 2000 .\n? eligible employees hired in subsequent years will receive a prorated grant\nof stock options .\nwhy commit your talent and energy to enron ? enronoptions \u0001 ) your stock option\nprogram , among other good reasons \u0001 ( that \u0001 , s why .\nin the coming weeks , you will be receiving more details about enronoptions \u0001 )\nyour stock option program . to provide information and answer your questions ,\nwe will introduce a special link on the human resources web - site , host\nseveral espeak sessions and continue to communicate with you on a regular\nbasis . in the meantime , if you have immediate questions , please contact your\nhuman resources representative .\nnote : in addition to final approval by enron \u0001 , s board of directors , granting\nof options will be subject to new york stock exchange and state and federal\nregulatory requirements . it is expected that enronoptions \u0001 ) your stock\noption program will be available to most enron employees ; however , some enron\ncompanies \u0001 , employees may not be eligible due to legal , accounting , tax , labor\nor business issues . as you know , enron changes to meet the needs of the\nmarketplaces we serve . given that need to change , we will continue to refine\nthe eligibility for enronoptions \u0001 ) your stock option program and will\ncommunicate more details throughout the year with final eligibility being\ndetermined on december 29 , 2000 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.484+0000", "entityId": 7744, "properties": {"text": "Subject: re : purchase\ndavid ,\ncan you use my mm funds to cover thislast purchase ?\ni need to request another check from pwj\nand it takes always time .\nvince\n\" walkup , david c ( houstonas as 582 ) \" on 06 / 29 / 2000\n10 : 52 : 54 am\nto : \" ' vincent kaminski ' \"\ncc :\nsubject : purchase\nwe made the cd purchase for you today . don ' t forget to mail the check . i\nmailed you the receipt from the deposit . i will call you towards the end of\njuly and we can discuss your stock option exercise on 8 / 12 .\nthanks for coming by the office yesterday and have a great trip to\naustralia .\ndavid c . walkup\nsenior financial consultant\n713 - 658 - 1685\n800 - 456 - 9712\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party . for your protection , avoid sending\nidentifying information , such as account , social security or card numbers to\nus or others . further , do not send time - sensitive , action - oriented\nmessages , such as transaction orders , fund transfer instructions , or check\nstop payments , as it is our policy not to accept such items electronicall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.489+0000", "entityId": 7745, "properties": {"text": "Subject: please keep in touch\nhi ,\njust like to say that it has been great meeting and working with you all . i\nwill be leaving enron effective july 5 th to do investment banking in hong\nkong . i will initially be based in new york and will be moving to hong kong\nafter a few months . do contact me when you are in the vicinity . i don ' t\nknow my contact details yet and would let you know once i get it . in the\nmeantime , i will always be checking my e - mail at royibasco @ yahoo . com . please\nlet me know what your e - mail addresses are and keep in touch !\nbest regards ,\nroy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.494+0000", "entityId": 7746, "properties": {"text": "Subject: hello\nshirley ,\ncan you , please , call him and ask what would be best timing .\nthe last week of july would be best . i would like grant , alex , zimin , krishna\nand stinson\nto meet him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 29 / 2000\n08 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshijie deng on 06 / 29 / 2000 12 : 00 : 37 am\nto : vkamins @ enron . com\ncc :\nsubject : hello\nhi vince ,\nhow are you . it was really a pleasure meeting you and talking to you at\nthe toronto energy derivative conference . thank you for speaking with\nme about the possibility of visiting your research group . it will be\ngreat if i could have such opportunity whenever you see your schedule\nfits . i am very much open for the last week of july and early august .\ni ' m looking forward to hearing from you soon .\nbest ,\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.498+0000", "entityId": 7747, "properties": {"text": "Subject: re : telephone interview with the research group\nhi mike :\nthanks for responding so quickly . i have scheduled the telephone interview\nfor thursday , july 6 at 10 : 00 am houston time ( 8 : 00 az time )\nthey interviews usually last from 45 minutes to an hour .\nwe will call you at 520 / 325 - 9730 .\nthanks and have a great 4 th of july\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.503+0000", "entityId": 7748, "properties": {"text": "Subject: re : phone interview\nthere will be a telephone interview with jerzy jarosz ( resume attached\nbelow ) on wednesday , july 5 at 4 : 30 pm houston time .\nhe would like you to call him at his home - telephone # : 416 / 237 - 0977\ni have reserved ebl 938 for this interview .\nif you have any questions , please call me .\nthanks !\nshirley crenshaw\nvince j kaminski\n06 / 27 / 2000 10 : 11 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : phone interview\nshirley ,\nplease , set up a phone interview with this person .\nstinson , krishna , zimin .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.507+0000", "entityId": 7749, "properties": {"text": "Subject: telephone interview with the research group\ngood morning mr . catanese :\nyour resume was forwarded to the research group and they would like\nto conduct a telephone interview with you at your convenience . we would\nprefer the week of july 5 - 7 ( monday and tuesday , the 3 rd and 4 th are\nholidays ) , if at all possible .\nplease let me know your availability and where you may be reached by\nphone and i will coordinate the calendars .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\np . v . krishnarao director\nosman sezgen manager\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinate\nenron corp . research group\n713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.512+0000", "entityId": 7750, "properties": {"text": "Subject: telephone interview with the research group\ngood morning mr . catanese :\nyour resume was forwarded to the research group and they would like\nto conduct a telephone interview with you at your convenience . we would\nprefer the week of july 5 - 7 ( monday and tuesday , the 3 rd and 4 th are\nholidays ) , if at all possible .\nplease let me know your availability and where you may be reached by\nphone and i will coordinate the calendars .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\np . v . krishnarao director\nosman sezgen manager\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinate\nenron corp . research group\n713 / 853 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 06 / 29 / 2000\n08 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 28 / 2000 05 : 19 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : mike catanese ' s resume\nshirley ,\nplease , arrange a phone interview .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 28 / 2000\n05 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n06 / 12 / 2000 07 : 28 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mike catanese ' s resume\nvince :\nthis is from ronnie chahal - does he fit anywhere ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 06 / 12 / 2000\n07 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlaura r arnold @ ees\n06 / 09 / 2000 04 : 40 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : mike catanese ' s resume\nshirley ,\nronnie chahal suggested i forward this resume to you so that you could\nforward it to the appropriate person within research . please let me know if\nyou need any additional information .\nthanks ,\nlaura arnold\nx 39540\n- - - - - - - - - - - - - - - - - - - - - - forwarded by laura r arnold / hou / ees on 06 / 09 / 2000\n04 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njunel 789 @ aol . com on 05 / 08 / 2000 12 : 00 : 30 am\nto : larnold @ enron . com\ncc :\nsubject : mike catanese ' s resume\ni am a ph . d . physicist and have worked for the last five years in\npost - doctoral researcher positions in astrophysics . a few months ago , i\nrealized that i had reached the limit of my academic career options , at least\nfor the near future . after reading about careers in the private sector and\ndiscussing possibilities with some family members and friends , it became\napparent that my technical and mathematical skills could be transferred to\nthe private sector , with better long - term career options and a more dynamic\nworkplace environment than in academic research . the energy industry is\nparticularly attractive as it begins to deregulate . i have been directed to\nenron by several different people as a very forward - thinking and growing\ncompany and one which values its employees .\nbecause of my statistical and mathematical skills , i am interested in a\nposition as a quantitative analyst . however , if there are other areas where\nthe people at enron think i could contribute , i am open to other options . my\nother experience , such as project management , is outlined in my resume . i\nhave worked in a collaboration of 30 astrophysicists from the us , ireland ,\nand england and i am a capable independent worker as well . i have excellent\nwritten and oral communication skills and have made presentations to\naudiences ranging from technical experts to school - aged children .\nthank you again for your time and effort in passing this resume on . i look\nforward to talking with you .\nsincerely ,\nmike catanese\n- mike ' s short resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.517+0000", "entityId": 7751, "properties": {"text": "Subject: re : b 2 b at enron\ntom ,\ngreg ' s phone number is 713 853 5220 . he is very difficult to reach\n( frequent trips ) .\nyou may find this information useful : greg is a west point graduate\nand spent a few years in the military , before obtaining an mba from stanford .\nhe is a very dynamic person and a very pragmatic thinker .\ni hope you have a great holiday weekend .\nvince\n\" piazze , thomas \" on 06 / 29 / 2000 08 : 51 : 48 am\nto : \" ' vince j kaminski ' \"\ncc : \" gerrity , thomas \" , \" lohse , gerald lee \"\n, \" wind , yoram \" , \" harker ,\npatrick \" , \" amit , raffi \" ,\n\" ' shankman , jeff ' \" , \" macmillan , ian \"\nsubject : re : b 2 b at enron\nvince : thanks for this message and update on your recent actions to\nestablish a closer research relationship between enron and wharton . we are\nanxious to work with your firm on many fronts and appreciate all that you\nand jeff shankman are doing to facilitate closure on a number of\ninitiatives .\nthe below article is very interesting and reinforces the entrepreneurial\nculture of enron ; it also points out one more reason why our faculty is so\ninterested in collaborating with you and other executives as the company\nmoves into this new space .\ni would like to call greg whalley after the 4 th of july weekend to establish\ncontact and begin a dialogue regarding his interest in joining our efforts\nas a corporate partner . will you please provide me contact information ?\nplease let me know if there is any additional information or material you\nwill need prior to your meeting with jeff skilling . we are anxious to learn\nhow he responds to your suggestions .\nthanks again for all that you are doing . hope you have a great 4 th of\njuly ! !\ntom\n> - - - - - original message - - - - -\n> from : vince j kaminski [ smtp : vince . j . kaminski @ enron . com ]\n> sent : wednesday , june 28 , 2000 9 : 53 am\n> to : piazzet @ wharton . upenn . edu\n> cc : vince j kaminski\n> subject : b 2 b at enron\n>\n>\n>\n> tom ,\n>\n> i am sending you the information about our new b 2 b unit .\n> i have talked yesterday with greg whalley who is heading the new\n> unit about the e - commerce project at wharton and recommended that enron\n> join\n> this program .\n>\n> i have sent him this morning a copy of the materials you gave me .\n>\n> the meeting with jeff skilling has been pushed till the 2 nd half of july .\n> i talked to him briefly twice that jeff shankman and i want to discuss\n> with\n> him building a relationship with wharton . jeff shankman is , by the way , a\n> great\n> friend of\n> your institution .\n>\n>\n> vince\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> companies & finance : the americas : enron sees bricks and\n> bytes mix reshaping energy market : purchase of mg\n> only a\n> start in\n> building b 2 b platforms , writes hillary durgin :\n>\n>\n>\n>\n> companies financial times ; 16 - jun - 2000 12 : 00 : 00 am ;\n> 604\n> words\n> by hillary durgin\n>\n> if jeffrey skilling is right ,\n>\n> enron ' s acquisition of mg is only the tip of the\n> iceberg .\n> enron ' s president and\n> chief operating officer is engineering a fundamental\n> strategy shift at the\n> houston energy company , aimed at making it a dominant\n> \" new\n> economy \"\n> player across various industrial markets .\n>\n> the dollars 446 m acquisition last month of mg , the\n> uk - based\n> metals trader ,\n> is only the first of more than dollars lbn in\n> estimated new\n> investments the\n> company is targeting . it is seeking vehicles on which\n> to\n> build\n> business - to - business ( b 2 b ) platforms in sectors such\n> as\n> logistics , chemicals ,\n> agricultural products and pulp & paper .\n>\n> mr skilling wants to take the business model the\n> company\n> developed in\n> natural gas and power and apply it to other wholesale\n> commodity markets . he\n> argues the electronic platforms it creates will not\n> only\n> become the principal\n> b 2 b sites for those sectors , but reshape those\n> industries .\n>\n> as an example , he points to enron ' s new e - commerce\n> platform ,\n> enrononline ,\n> which has changed the way the company does business\n> with its\n> customers\n> while significantly increasing sales .\n>\n> the company - the largest wholesale merchant of\n> natural gas\n> and power - saw\n> wholesale , physical deliveries of natural gas surge 53\n> per\n> cent in the first\n> quarter .\n>\n> critics argue that enron ' s move away from its familiar\n> energy business into\n> new industries , where the learning curve is steep and\n> the\n> competition\n> entrenched , is risky . yet a number of industry\n> analysts\n> point out enron has\n> proved it understands markets and how to manage risks\n> while\n> becoming the\n> largest importer of coal in the uk , the largest trader\n> of\n> gas and power in the\n> us and grabbing an advantage in bandwidth .\n>\n> \" it ' s a prudent strategy , but it ' s got to be done in\n> an\n> orderly way , \" says ronald\n> barone , analyst with paine - webber in new york . \" what\n> they ' re\n> doing here is\n> what they ' ve been incredibly successful at doing , \" he\n> adds ,\n> noting that enron\n> posted dollars 1 . 3 bn in earnings before interest and\n> taxes\n> ( ebit ) from its\n> wholesale energy and services business in 1999 , up 34\n> per\n> cent from the\n> previous year .\n>\n> earnings from that division accounted for two - thirds\n> of the\n> company ' s overall\n> income before interest and taxes last year , and mr\n> barone\n> sees the unit ' s ebit\n> increasing 15 - 30 per cent annually over several years .\n>\n> as with gas and power and now broadband , where enron\n> is\n> standardising\n> contracts and creating a market in bandwidth , it wants\n> to\n> create markets by\n> entering as a physical player and providing merchant ,\n> risk\n> management and\n> financial services over the internet .\n>\n> \" we will provide electronic commerce , but we will\n> provide\n> liquidity and we will\n> provide settlement , or fulfilment of that contract , \"\n> mr\n> skilling says . \" that is an\n> extremely powerful model . if you look at other b 2 b\n> sites ,\n> they don ' t do that . \"\n>\n> mr skilling argues enron ' s e - commerce platform will\n> triumph\n> over the other ,\n> bulletin board - type exchanges , where striking a deal\n> depends\n> on two parties\n> hooking up and working through uncertainties over\n> timing ,\n> price , credit and\n> fulfilment .\n>\n> not everyone shares that view . some energy companies ,\n> for\n> example , would\n> rather not do business with a competitor . bp amoco\n> recently\n> purchased a 3\n> per cent stake in altra energy technologies , a\n> houston -\n> based , neutral\n> wholesale energy exchange . with koch industries and\n> american\n> electric\n> power , it also committed to carry out a fixed volume\n> of\n> transactions on the\n> site to lend it liquidity .\n>\n> just as in gas and power and now broadband and metals ,\n> enron\n> believes it\n> needs networks of strategic physical assets . in\n> acquiring\n> mg , enron got a\n> stable of warehouses , lending it a strong physical\n> position .\n>\n>\n> \" it should provide ( mg ) with a more vibrant , more\n> active\n> physical spot market\n> in more markets in the world , \" says greg whalley ,\n> chief\n> executive officer of\n> enron net works , the new division enron is launching\n> to\n> identify and enter\n> commodity markets . he argues that in metals and other\n> markets , enron will\n> deliver better pricing , price risk management\n> services ,\n> cross - commodity\n> transactions and flexible transactions for a wider\n> range of\n> customers .\n>\n> mr skilling says there are significant rewards for\n> restructuring an industry .\n>\n> \" if you can take that platform , and you use the\n> capabilities\n> the bricks bring to\n> the table , e - commerce the industry and change the\n> structure ,\n> you ' re selling for\n> more than a 50 multiple . \"\n>\n> copyright , the financial times limited\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.521+0000", "entityId": 7752, "properties": {"text": "Subject: re : hello\nshijie ,\nthanks for your message . my assistant will call you to discuss the timing\nof the visit .\nvince\nshijie deng on 06 / 29 / 2000 12 : 00 : 37 am\nto : vkamins @ enron . com\ncc :\nsubject : hello\nhi vince ,\nhow are you . it was really a pleasure meeting you and talking to you at\nthe toronto energy derivative conference . thank you for speaking with\nme about the possibility of visiting your research group . it will be\ngreat if i could have such opportunity whenever you see your schedule\nfits . i am very much open for the last week of july and early august .\ni ' m looking forward to hearing from you soon .\nbest ,\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.526+0000", "entityId": 7753, "properties": {"text": "Subject: component var\ntanya ,\nsome stability tests were performed on the simulation .\n( 1 ) the window size of the averaging in the simulation was changed from 10 to\n20 for ng - price ( the biggest book in gas ) for effective date june - 28 . as you\ncan see in the file 28 ng - price _ windowsize , the component var numbers are very\nsimilar .\n( 2 ) to look at a calculational comparison , i looked at the storage - prc book\n( which has no gamma position ) for effective date of 27 th and ( a ) calculated\nffvols , and ( b ) calculated the riskmetrics var ( the correlations are very high\nacross the term structure ) and compared to the component var code\ncalculation , and again the two nubers are comparable , given the different\nmodes of calculation .\nnaveen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.530+0000", "entityId": 7754, "properties": {"text": "Subject: shalesh\njim ,\nclarification regarding shalesh ' transfer to ebs .\nthe request to rotate shalesh out of research into ebs\ncame from ravi thuraisingham . my understanding was that it was\nfully coordinated with you and i was more than happy to oblige .\nshalesh is concerned that his integrity is being questioned and i can assure\nyou that he was not the instigator of the move .\nmy impression is that shalesh is doing a very good job and ravi is very happy\nhim . i shall be glad to keep him in the research group in his current role .\nhave a good 4 th of july .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.540+0000", "entityId": 7755, "properties": {"text": "Subject: phone number in france :\nmes amis ,\nin case of emergencies , you can reach me after july 3 at 011 33 4 50 02 22\n12 .\nfrance is 7 hours later than houston , i . e . 11 : 00 am in houston is cocktail\nhour ( 6 : 00 pm ) in france .\naffecteusement ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.547+0000", "entityId": 7756, "properties": {"text": "Subject: a \" bit \" of history on the fourth of july\nhello everyone :\nvince asked me to send this to you . it definately is eye opening and heart\nwrenching . we sometimes forget the price that was paid for our wonderful\ncountry .\nhave a wonderful 4 th of july !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.553+0000", "entityId": 7757, "properties": {"text": "Subject: re : li xiao\nthanks so much , vince .\nmolly\nvince j kaminski\n06 / 29 / 2000 11 : 06 am\nto : molly magee / hou / ect @ ect\ncc :\nsubject : re : li xiao\nmolly ,\nmy recommendation letter .\nvince\nenron north america corp .\nfrom : molly magee 06 / 22 / 2000 10 : 39 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : li xiao\nvince : li has selected you as a reference on her application for a graduate\nschool tuition loan . thanks for taking the time to participate in this\nprocess .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.557+0000", "entityId": 7758, "properties": {"text": "Subject: re : enron offsite\nhi steve :\nlisted below is the information you will need . if i have left out anything ,\nplease let me know .\n* * * * * * * * * *\nfriday , august 18 th\n2 : 00 - 4 : 00 pm arrival in denver ( two separate flights )\ncan you arrange for shuttle to pick up ?\n6 : 30 - 8 : 00 pm dinner at the lodge\nsaturday , august 19 th\nwe will need a conference room that will hold 12 - 15 people .\nfrom 8 : 00 am until 4 : 00 pm .\n8 : 00 am breakfast buffet set up in meeting room\n10 : 00 am break - bring in fresh coffee and water\n11 : 30 - 1 : 00 pm lunch ( lunch buffet in meeting room ? )\n1 : 00 pm meeting resumes\n2 : 30 pm break - bring in coffee , juice , cokes and water\n4 : 00 pm meeting ends .\nwe will need an overhead projector and an lcd projector .\nwe will have dinner somewhere in the village on saturday night ,\nany suggestions ?\nsunday , august 20 th\n8 : 00 - 11 : 00 check out and return to denver for flight to houston\ncan you arrange shuttle to denver ?\n* * * * * * * * * * *\nsteve : some of the guys may bring their family ( will share the same room )\nand stay a couple of days after the meeting ends . is there a problem with\nthem staying on at the lodge ? if not , please let me know how soon you\nneed to know how long they plan on staying .\nthis is all i can think of right now . if anything else comes up i will let\nyou\nknow .\nthanks and have a great day !\nshirley crenshaw\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com\n\" steve collins \" on 06 / 27 / 2000 02 : 58 : 37 pm\nto :\ncc :\nsubject : re : enron offsite\nrates are a little higher in august than they are in april ( august is high\nseason for summer ) , but i can do those rooms at $ 125 ( your april rate was\n$ 105 ) .\nwhat kind of meeting space will you need ? if you can get me a tentative\nagenda , i will get the contract drawn up right away .\nthanks again !\nsteve\n> > > 06 / 27 / 00 01 : 28 pm > > >\nlet ' s do it ! august 18 - 20 is our first choice !\nplease send me all the information and then we will discuss the\nparticulars .\ni will get vince to sign it immediately .\nthanks steve !\nshirley\n\" steve collins \" on 06 / 27 / 2000 02 : 22 : 27 pm\nto :\ncc :\nsubject : re : enron offsite\nhello again !\ni promise i am not running ! the deal that we worked out with the general\nmanager ( tom pratt ) is that enron has a $ 6000 credit with the great divide\nlodge that will expire on 8 / 1 / 00 . you can either use that credit for\nindividual rooms prior to 8 / 1 / 00 , or we have agreed that we can apply that\namount to a meeting prior to the thanksgiving holiday in 2000 if the\ncontract is signed before 8 / 1 / 00 .\nat this point , august 18 - 20 is available , but the 25 - 28 is not . if we can\nget this signed prior to 7 / 31 / 00 , your $ 6000 credit would be able to be\napplied to this event .\nplease let me know if this will work for you . thanks !\nsteve\nsteve collins\nnational sales manager\nthe village at breckenridge / great divide lodge\n( 800 ) 332 - 0424 or ( 970 ) 453 - 3156 direct\nscollins @ vailresorts . com\n> > > \" shirley crenshaw \" 06 / 27 / 00 01 : 06 pm > > >\nhello steve :\nplease don ' t run ! i know after the last fiasco with an enron offsite you\nare\nprobably running for the hills !\ni do want to apologize to you and thank you for all of your assistance even\nthough we were unable to make the trip .\nhowever , i understand there has been an arrangement made with enron ,\nthat if we book a time and come before thanksgiving we can recoup the money\nthat we forfeited ? please let me know if i am understanding this\ncorrectly .\nif so , we have been told that our group can use this for an offsite .\nwe are looking at the weekends of august 18 , 19 and 20 or august 25 ,\n26 and 27 th . there will be approximately 12 people .\nplease let me know your understanding of the arrangement and the\navailability of the dates mentioned .\nlook forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\ntelephone : 713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.562+0000", "entityId": 7759, "properties": {"text": "Subject: re : eol phase 2\nmichael ,\nplease , contact zimin lu .\nvince kaminski\nmichael danielson\n06 / 30 / 2000 01 : 10 pm\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc : angela connelly / lon / ect @ ect , savita puthigai / na / enron @ enron\nsubject : eol phase 2\nthanks for your help on content for eol phase 2 .\nan additional piece of content that we are trying to include in our scope is\nan options calculator . this would be an interactive tool to teach less\nsophisticated counterparties about options . we would like to collaborate\nwith someone in research to refine our approach ( and make sure we ' re using\nthe right formulas ) . who should we contact in research for this ?\nattached is a mock - up of what we have in mind . . .\n- calculator prototype . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.567+0000", "entityId": 7760, "properties": {"text": "Subject: control and echelon\nvery interesting websites . thanks for keeping me updated ! - scott\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott tholan / corp / enron on 06 / 29 / 2000\n05 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n06 / 29 / 2000 10 : 37 am\nto : scott tholan / corp / enron @ enron\ncc :\nsubject : control\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 29 / 2000\n10 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 06 / 28 / 2000 11 : 11 : 37 pm\nto : vkamins @ enron . com\ncc :\nsubject : control\nsto\na : political control technologies - summary of interim study", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.571+0000", "entityId": 7761, "properties": {"text": "Subject: re : impending visit\nvince :\nwould friday morning july 7 at 9 : 00 am work for you ? give me an email shout\nif so . thanks .\ndale nesbitt\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : june 28 , 2000 2 : 19 pm\nto : dale . nesbitt @ marketpointinc . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : impending visit\ndale ,\nsorry for a delay in responding to your message .\ni shall talk to the head of our b 2 b unit on friday this week and\nshall remind him about your visit .\ni hope he can make a decision at this time whether he is interested\nin pursuing this opportunity\nvince\n\" dale nesbitt \" on 06 / 27 / 2000 11 : 26 : 05 pm\nto : \" vincent kaminski \" , \" vince . j . kaminski \"\ncc :\nsubject : impending visit\nvince :\ni sent you an email a couple of days ago to inquire if we might get\ntogether\nat your offices on july 5 or july 7 in houston to follow up our earlier\ndiscussions . i notice i have two email addresses for you , so i am sending\nthis to both . i am not sure the earlier transmission got to you .\nwould you be available the afternoon of the 5 th or the morning of the 7 th\nto\ncontinue our earlier discussions ? give me an email or phone shout at\n650 . 218 . 3069 .\nthanks\ndale nesbitt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.576+0000", "entityId": 7762, "properties": {"text": "Subject: re : ebs var transaction policy\ni have two things biting me .\nfirst is time . i need to turn a draft for hannon and rice asap . so , the\nvalue of a deliberative approach to coming up with a v @ r policy will quickly\nevaporate if we take 2 weeks to study what the policy should say .\nsecond , i have a unique situation . our concept of v @ r is really unlike the\nrest of enron ' s today . what happens today is that network engineers\nunilaterally make decisions about deployment , configuration and other matters\nwhich effect the longs and shorts of our asset / contract portfolio that they\nview strictly from a network operating standpoint .\na good example was a decision to move our primary terapop ( three large\nservers storing 165 gigabytes each ) from portland to la . the servers are\nalready in place and purchased , so no capital was involved . but the\ndecision has huge ramifications on the future la / new york and other bandwidth\nusage , and that cost money . now it could be that the la / new york cost is\ncheaper than the portland / new york cost , the whole point is no one knows .\nwhat our \" value - at - risk \" policy attempt to corral is these types of decisions\nand put them into the hands of the risk management group , where the decision\nwill be made with at least some economic work behind it .\ni really see the ebs v @ r policy to be misnamed , since we don ' t really have\nthe math done to calc v @ r . it really is a volumetric - based control policy\nthat says you can ' t make network changes over xx amount of megabytes ( a\nstorage measure ) or oc - 3 equivalents ( a bandwidth measure ) without risk\nmanagement making or approving the decision . i do believe that with\nresearch ' s help , we can in time actually calculate the v @ r impact of such\ndecisions . at that time , the policy should be modified to set metrics based\non the v @ r calculations .\nso if you have an open enough mind to let us co - op your word for a minute ,\nwe need to start turning the minds of the network industry people into\nthinking about their decisions as having value effects . said directly ,\nkevin hannon has given me authority to write a policy to move control over\nsignificant network changes from the field to the trading floor , and i am\ngoing to issue something now to effectuate that . . . . . .\nso . . . i really want your views on what we are doing , but thought you needed\nsome flavor and an sense of the urgency . if you can weigh in , do so\nquickly . . . . .\nbarry pearce\n06 / 30 / 00 04 : 47 am\nto : john echols / enron communications @ enron communications , lou casari / enron\ncommunications @ enron communications\ncc :\nsubject : re : ebs var transaction policy\npositive . . . .\n- - - - - forwarded by barry pearce / enron communications on 06 / 30 / 00 04 : 49 am\n- - - - -\nted murphy @ ect\n06 / 29 / 00 11 : 33 am\nto : barry pearce / enron communications @ enron communications @ enron\ncc :\nsubject : re : ebs var transaction policy\nbarry ,\nconceptually , i see no reason that a process like this can not be\nimplemented . in some way we have attempted to do so through the enron corp\ntransaction approval process ( tap ) . i have forwarded to john a copy of this ,\nalong with the risk management policy . i ' ll let him share with you if ok ( i\nreally don ' t want to act as the firm ' s in - house kinko ' s ! ! ) . we have taken\nthe first step and done poorly on follow - up steps to create a very easy to\nfollow process for anything other than direct funded capital . however , some\nprocess around a greater number of assets / deals is better than none . i\nagree that i have not seen a really good fully baked one implemented , but i\nthink it is wrong not to try .\nthe only concerns i have is that , given that we want to have \" standard \"\nmetrics and approval processes around the firm , ebs creates a process / metric\nwhich is complementary to and integrates with processes / metrics that the\nother business units are subjected to .\nted\nbarry pearce @ enron communications\n06 / 29 / 2000 09 : 09 am\nto : stinson gibner / hou / ect @ ect , dale surbey / lon / ect @ ect , ted\nmurphy / hou / ect @ ect\ncc : lou casari / enron communications @ enron communications , john echols / enron\ncommunications @ enron communications , jim fallon / enron communications @ enron\ncommunications\nsubject : ebs var transaction policy\nhey you guys ,\nwe are trying to implement a ' var transaction ' policy - and would like your\nopinion .\nthis is going to be tough - because i ' m not sure we have implemented a\nsimiliar policy across any of our other ' books ' - that is - we looking to\nbring in all the accrual / operational assets as well as the mtm stuff\n( lambdas ) . to have a real - live ' configuration ' of the system .\nif assets / routes / servers etc . . . are added - what is the impact on the ' value '\nof the system and what it ' s worth .\njohn has attached a draft below - for your review and thoughts .\ni can see how this works in a trading environment - when you actually know\nthe var of your whole trading portfolio . however - i ' ve not seen this done\nwith a mixture of mtm & accrual assets . add the spice of a ' operational\nsystem ' valuation - and this will be tough to quantify and model .\nstep 1 - configure system and value it\nstep 2 - calculate a var on this . we will need to do some work here !\nstep 3 - calculate the incremental var of new deals / amendements / reconfigs etc\n- tough . . . .\nsee what you think ?\nb .\njohn echols\n06 / 28 / 00 05 : 41 pm\nto : jim fallon / enron communications @ enron communications , barry pearce / enron\ncommunications @ enron communications , lou casari / enron communications @ enron\ncommunications\ncc :\nsubject : policies\nhere is a first rough draft of a \" value @ risk \" transaction policy .\ni would like you to start looking at where we are going on the policy and get\nsome early thinking going on limits for the v @ r . for example , should we\neffectively shut down all server relocations without approval , or allow some\nlevel of mb of storage to be moved around or reconfigured ?\ni need some commercial and industry realism for this . we may need rick\npaiste or your industry helpers ( marquardt , etc . to help us ) .\nbarry , lou , i need your input .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.582+0000", "entityId": 7763, "properties": {"text": "Subject: re : pre - meeting weathereffects site cruise\nsold ! i ' ll initiate the call .\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 3 : 44 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : pre - meeting weathereffects site cruise\ned ,\nthursday works for me . what about 10 : 30 my time ?\nvince\n\" edward krapels \" on 06 / 30 / 2000 02 : 43 : 00 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc :\nsubject : re : pre - meeting weathereffects site cruise\nhow about thursday , july 6 ?\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 3 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : pre - meeting weathereffects site cruise\ned ,\na correction . i shall spend an entire day at prc ( performance review )\non friday , july 7 . can we do on another day\nvince\n\" edward krapels \" on 06 / 30 / 2000 12 : 40 : 59 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc :\nsubject : re : pre - meeting weathereffects site cruise\ni ' ll still be here in boston so we ' d do it over the phone . ok ?\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 12 : 11 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : pre - meeting weathereffects site cruise\ned ,\nwill you be in houston on that day or we shall do it over the phone ?\nvince\n\" edward krapels \" on 06 / 30 / 2000 09 : 13 : 04 am\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : pre - meeting weathereffects site cruise\nvince ,\nhow about a pre - meeting web site cruise on friday , july 7 at 11 am edt ?\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 9 : 52 am\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : next visit to houston\ned ,\njuly 12 , 2 : 30 it is . i would like the pre - meeting site cruise .\nhow can we arrange it ?\nvince\n\" edward krapels \" on 06 / 30 / 2000 04 : 00 : 53 am\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\nwe ' re all set for 2 : 30 on july 12 . how about a pre - meeting web site cruise\non friday , july 7 at 11 am edt ?\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , june 29 , 2000 5 : 04 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\nwednesday , july 12 , 2 : 300 will work for me .\ni shall be glad to review your website - -\nwww . weathereffects . com . i shall invite some\npeople who work on electricity in\nmy group to join me .\nvince\n\" edward krapels \" on 06 / 29 / 2000 03 : 53 : 40 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\ngood to hear from you and i ' m glad you ' re available . how is wednesday at\n2 : 30 ?\ni did look at eol and am not surprised to see its quality . i was unable to\nsay much about it in my risk electricity hedging and trading report because\nof deadline pressures . how is the site doing ? i am intrigued by the\ncompetition for trading platforms and was astonished to hear that goldman ,\nmorgan , bp and shell were going to launch a site to compete with yours . talk\nabout a shotgun marriage !\nif we have time next week , i could step you through our website - -\nwww . weathereffects . com . i ' m very proud of what we ' ve done . i can ' t give out\na password yet but would be happy to walk through the site with you over the\nphone using my password . it ' s a very ambitious site - - with state - of - the - art\nwsi weather ( seasonal , 6 - 10 , and day to day ) driving a good load model for\npjm and nepool . esai contributes oil and gas input price forecasts , capacity\njudgments , and \" herding \" ideas to develop power price forecasts for same\ntime periods . after one month ' s full - bore effort , i ' m pleased with the\nresults ( e . g . , we forecast nepool onpeak to be $ 43 and it turned out $ 46 ) .\nhave a great weekend .\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , june 28 , 2000 5 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\ni shall be available on both days . what about wednesday ,\njuly 12 , between 1 : 30 and 4 : 00 . please , let me know\nwhat time would work for you .\nit will be nice to see you again .\nvince\np . s . by the way , did you have a chance to take a look at the eol ?\n\" edward krapels \" on 06 / 28 / 2000 02 : 49 : 41 pm\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : next visit to houston\ndear vince ,\ni will be returning to houston during the week of july 10 .\nesai and weather services international have launched - - after more than 18\nmonths of r & d - - our service , called energycast power trader and energycast\ngas trader , for power traders in nepool and pjm . i would be happy to review\nthe service with you as well as take you on a tour of our web site . are you\navailable on july 12 - 13 ?\nsincerely ,\ned krapels", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.587+0000", "entityId": 7764, "properties": {"text": "Subject: re : mg metals : additional areas to look at\ndear richard ,\nthanks for your message - i just met lloyd fleming who is setting up meetings\nfor me and getting me some of the information requested . houston research\nhas started on this process , but i believe that i will take over from here -\ni am in houston in 10 days time and will also discuss initial findings with\nthem .\nregards ,\nanjam hmad\nlondon research\nx 35383\nrichard sage\n30 / 06 / 2000 09 : 50\nto : anjam ahmad / lon / ect @ ect\ncc :\nsubject : mg metals : additional areas to look at\nphil redman will come to see you to capture appropriate tasks on the overall\nproject plan and identify dependencies .\ni hope lloyd has kept you up to date so far .\ni have added you to the address list for daily updates affecting the support\nfunctions .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard sage / lon / ect on 30 / 06 / 2000 09 : 50\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : anjam ahmad 30 / 06 / 2000 09 : 46\nto : lloyd fleming / lon / ect @ ect , richard sage / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , bjorn\nhagelmann / hou / ect @ ect , dale surbey / lon / ect @ ect , tanya tamarchenko / hou / ect @ ect\nsubject : mg metals : additional areas to look at\ndear lloyd & richard ,\ni have been discussing with eric gadd about two particular areas of concern\nthat will affect the london research group . i believe there are a number of\nissues to address to ensure that the integration goes smoothly from a risk\nmanagement and quantitative analysis perspective , and i have put together a\n( by no means exhaustive ) list : -\ni ) seamless transfer of front and middle office systems from an exotic\noptions linking perspective ( e . g . their spreadsheets link to different option\npricing add - ins )\nii ) development of volatility curves and factor analysis to ensure that we\ncan capture metals risk in our var system ( we will require historical data\nfor this ) . i am sure bjorn will be looking to the research group to assist\nin this matter .\niii ) ensure that mg staff on quant and risk side become familiar with our\nmethods and systems and vice versa\nthese tasks will involve a significant degree of cross - communication with\nrelevant contacts within mg metals , and so i look forward to starting on the\nprocess as soon as possible - i hope to play a full part from a quantitative\nresearch and risk management perspective to ensure that everything goes\nsmoothly in this exciting new development , so please do not hesitate to\ninvolve me .\nbest regards ,\nanjam ahmad\nresearch\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.592+0000", "entityId": 7765, "properties": {"text": "Subject: mg metals : additional areas to look at\ndear lloyd & richard ,\ni have been discussing with eric gadd about two particular areas of concern\nthat will affect the london research group . i believe there are a number of\nissues to address to ensure that the integration goes smoothly from a risk\nmanagement and quantitative analysis perspective , and i have put together a\n( by no means exhaustive ) list : -\ni ) seamless transfer of front and middle office systems from an exotic\noptions linking perspective ( e . g . their spreadsheets link to different option\npricing add - ins )\nii ) development of volatility curves and factor analysis to ensure that we\ncan capture metals risk in our var system ( we will require historical data\nfor this ) . i am sure bjorn will be looking to the research group to assist\nin this matter .\niii ) ensure that mg staff on quant and risk side become familiar with our\nmethods and systems and vice versa\nthese tasks will involve a significant degree of cross - communication with\nrelevant contacts within mg metals , and so i look forward to starting on the\nprocess as soon as possible - i hope to play a full part from a quantitative\nresearch and risk management perspective to ensure that everything goes\nsmoothly in this exciting new development , so please do not hesitate to\ninvolve me .\nbest regards ,\nanjam ahmad\nresearch\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.597+0000", "entityId": 7766, "properties": {"text": "Subject: sap expense report form\nwith the implementation of sap , the employee expense report form has been\nmodified to reflect the new coding system . the procedures for its use are\nunchanged , but there are some cosmetic differences . one item to note : the\nform no longer requires entry of your social security number ; instead use\nyour new personnel number assigned through human resources ( see\nhttp : / / hrweb . enron . com ) . for electronically submitted expense reports , enter\nthe same number on the receipt envelope .\nthe form is now available at the sap website . to access the form :\nfrom the enron home page , go to the sap intranet site http : / / sap . enron . com\nchoose one of the following paths :\nclick on quick reference tools on the left menu\nclick drop - down arrow for accounts payable forms\nclick sap expense report form\nclick on forms and procedures library on the left menu\nclick drop - down arrow for accounts payable forms\nclick sap expense report form\nwait for it to load\nclick enable macros ( or yes , allow macros )\nafter you enter the data , save as excel workbook ( . xls file extension ) with a\nnew filename . do not save as excel template ( . xlt extension ) .\nyou may print the spreadsheet for submission to accounts payable , or attach\nit to notes for electronic submission . instructions are available at the\nwebsite , on the same drop down box as the form .\nif you have any questions , contact the center of expertise ( coe ) at 713\n345 - 7427 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.602+0000", "entityId": 7767, "properties": {"text": "Subject: restricted stock deferral opportunity - reminder\nthis message is to remind you of your opportunity to defer restricted stock\nthat may be released to you during 2001 into the enron corp . 1994 deferral\nplan ( or the enron expat . services , inc . deferral plan for expatriates ) .\ninformation concerning this opportunity was delivered to you earlier this\nweek .\nif you want to participate in this program , please complete an election form\nat your earliest convenience . forms should be returned to my attention\n( ebl 614 or via facsimile 713 - 646 - 4858 ) .\ni will be away from the office next week ; please do not hesitate to call\nrenee ratcliff ( 713 - 345 - 7960 ) or mary mckendree ( 713 - 345 - 8085 ) with any\nquestions .\nthank you !\nkim bolton\nexecutive compensation\n713 - 853 - 7084", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.606+0000", "entityId": 7768, "properties": {"text": "Subject: lance cunningham\nthis offer has been extended . lance want to take a few days to make his\ndecision . he will have a decision by 7 / 6 at 5 p . he ' s going to call\nme . . . . and i ' ll let you know . thx\n- - - - - - - - - - - - - - - - - - - - - - forwarded by teresa bien / corp / enron on 06 / 30 / 2000\n04 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : grant masson @ ect 06 / 30 / 2000 11 : 26 am\nto : vince j kaminski / hou / ect @ ect\ncc : teresa bien / corp / enron @ enron\nsubject : lance cunningham\nvince :\ni have left a message with teresa and have sent the following terse note to\nlance to let him know that we are moving .\nas we discussed , i asked teresa to offer 90 k + 10 k signing bonus .\nregards ,\ngrant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 06 / 30 / 2000 11 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : grant masson 06 / 30 / 2000 11 : 21 am\nto : lbcunningham @ mail . utexas . edu\ncc :\nsubject : enron\nlance :\ni am going on vacation tomorrow , but i wanted to get in touch with you before\ni left .\ni have asked hr to extend an offer to you . teresa bien should be sending you\nan offer letter via fedex . of course , with the july 4 th weekend , i ' m not sure\nwhen you will get it .\nif you have questions , i suggest that you call vince kaminski at 713 853\n3848 .\nregards ,\ngrant masson .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.610+0000", "entityId": 7769, "properties": {"text": "Subject: re : internship\ndr . kaminski :\nsounds good . you all have a nice weekend and 4 th .\n- - shane\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : friday , june 30 , 2000 2 : 33 pm\nsubject : re : internship\n>\n> shane ,\n>\n> monday would work for us .\n>\n> my assistant will contact you wednesday to arrange the interviews .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shane green \" on 06 / 30 / 2000 11 : 33 : 53 am\n>\n> to :\n> cc :\n> subject : internship\n>\n>\n>\n> dr . kaminski :\n>\n> i just wanted to touch base and see if i needed to snail mail a copy of\nmy\n> resume or get in touch with anyone else over at enron .\n>\n> the finance department at lsu will be sending out financial award letters\n> to new ph . d . students before long , and my interning at enron would free\nup\n> some additional departmental funds . in addition , if i will be here in\n> baton rouge during the fall , i will need to pay my tuition next month . i\n> am able to pursue an internship in large part because of the department ' s\n> cooperation and assurance that when i return i will still have a research\n> and or teaching assistantship to help fund the completion of ph . d . i have\n> been told that such cooperation and assurances are rare at lsu , so i am\n> trying to rock the boat as little as possible .\n>\n> i realize until i receive an offer from enron my internship ( i say\n> internship rather than sabbatical because lsu will not continue to pay me\n> my stipend while i am away ) is not assured until an offer has been\n> extended by enron . i understand that there are procedures and protocols\n> that must be followed before this occurs , and i would be willing to do\n> whatever is necessary to move to the next step in that process .\n>\n> i will be in houston on july 8 & 9 for my wife ' s grandmother ' s 80 th\n> birthday . if it would be convenient , i could be in town on the preceding\n> friday , or following monday for a visit and / or interview . if not , given\n> the relatively close proximity between baton rouge and houston , i would\nbe\n> happy to come at another time .\n>\n> thanks again ,\n> shane green\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.615+0000", "entityId": 7770, "properties": {"text": "Subject: re : internship\nshane ,\nmonday would work for us .\nmy assistant will contact you wednesday to arrange the interviews .\nvince\n\" shane green \" on 06 / 30 / 2000 11 : 33 : 53 am\nto :\ncc :\nsubject : internship\ndr . kaminski :\n?\ni just wanted to touch base and see if i needed to snail mail a copy of my\nresume or get in touch with anyone else over at enron . ?\n?\nthe finance department at lsu will be sending out financial award letters to\nnew ph . d . students before long , and my interning at enron would free up some\nadditional departmental funds . ? in addition , if i will be here in baton\nrouge during the fall , i will need to pay my tuition next month . ? i am able\nto pursue an internship in large part because of the department ' s\ncooperation and assurance that when i return i will still have a research and\nor teaching assistantship to help fund the completion of ph . d . ? i have been\ntold that such cooperation and assurances are rare at lsu , so i am trying to\nrock the boat as little as possible .\n?\ni realize until i receive an offer from enron my internship ( i say\ninternship rather than sabbatical because lsu will not continue to pay me my\nstipend while i am away ) is not assured until an offer has been extended by\nenron . ? i understand that there are procedures ? and protocols that must be\nfollowed before this occurs , and i would be willing to do whatever is\nnecessary to move to the next step in that process .\n?\ni will be in houston on july 8 & 9 for my wife ' s grandmother ' s 80 th\nbirthday . ? if it would be convenient , i could be in town ? on the preceding\nfriday , or following monday for a visit and / or interview . ? if not , given the\nrelatively close proximity between baton rouge and houston , i would be happy\nto come at another time .\n?\nthanks again ,\nshane green\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.619+0000", "entityId": 7771, "properties": {"text": "Subject: re : visit to houston and vince kaminski ' s research group\nvince - thanks for the note . i ' ll mention downtown for sure when making a\nreservation .\nshijie\non fri , 30 jun 2000 , vince j kaminski wrote :\n>\n>\n> shijie ,\n>\n> a note : in both cases makes a reservation explicitly at a downtown hotel .\n> there are hotels with the same names elsewhere in houston .\n>\n> vince\n>\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 30 / 2000\n02 : 44\n> pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> shirley crenshaw\n> 06 / 30 / 2000 02 : 25 pm\n>\n> to : shijie deng @ enron\n> cc : ( bcc : vince j kaminski / hou / ect )\n> subject : re : visit to houston and vince kaminski ' s research group\n( document\n> link : vince j kaminski )\n>\n> shijie :\n>\n> i spoke with vince and he said friday the 28 th of july would be fine for\n> your visit to enron .\n>\n> please let me know your itinerary when you have it confirmed . there\n> are two hotels downtown houston , the doubletree and the hyatt regency\n> that are very close to the enron bldg .\n>\n> if you need help with anything , please let me know .\n>\n> look forward to having you at enron .\n>\n> regards ,\n>\n> shirley crenshaw\n>\n>\n>\n>\n>\n>\n>\n>\n> shijie deng on 06 / 30 / 2000 10 : 15 : 43 am\n>\n> to : shirley crenshaw\n> cc :\n> subject : re : visit to houston and vince kaminski ' s research group\n>\n>\n>\n> shirley ,\n>\n> thank you for your message . i ' m fine with 7 / 28 ( friday ) . i could fly in\n> to houston early evening on 7 / 27 . please let me know after you confirm\n> the date with vince . thanks !\n>\n> shijie\n>\n> shi - jie deng\n> assistant professor\n> school of isye\n> georgia institute of technology\n>\n> office phone : ( 404 ) 894 - 6519\n> e - mail : deng @ isye . gatech . edu\n> home page : http : / / www . isye . gatech . edu / ~ deng\n>\n> on fri , 30 jun 2000 , shirley crenshaw wrote :\n>\n> >\n> >\n> > good morning professor deng :\n> >\n> > i am vince kaminski ' s assistant and he has asked me to coordinate your\n> > visit to enron . the last week in july would be best for vince and his\ngroup .\n> > especially the 24 th , 26 th , 27 th , or 28 th . tuesday , the 25 th is already\n> filling\n> > up . please let me know which day would work for you .\n> >\n> > best regards ,\n> >\n> > shirley crenshaw\n> > administrative coordinator\n> > enron corp . research group\n> > 713 / 853 - 5290\n> > email : shirley . crenshaw . com\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.624+0000", "entityId": 7772, "properties": {"text": "Subject: re : visit to houston and vince kaminski ' s research group\nshijie :\ni spoke with vince and he said friday the 28 th of july would be fine for\nyour visit to enron .\nplease let me know your itinerary when you have it confirmed . there\nare two hotels downtown houston , the doubletree and the hyatt regency\nthat are very close to the enron bldg .\nif you need help with anything , please let me know .\nlook forward to having you at enron .\nregards ,\nshirley crenshaw\nshijie deng on 06 / 30 / 2000 10 : 15 : 43 am\nto : shirley crenshaw\ncc :\nsubject : re : visit to houston and vince kaminski ' s research group\nshirley ,\nthank you for your message . i ' m fine with 7 / 28 ( friday ) . i could fly in\nto houston early evening on 7 / 27 . please let me know after you confirm\nthe date with vince . thanks !\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng\non fri , 30 jun 2000 , shirley crenshaw wrote :\n>\n>\n> good morning professor deng :\n>\n> i am vince kaminski ' s assistant and he has asked me to coordinate your\n> visit to enron . the last week in july would be best for vince and his\ngroup .\n> especially the 24 th , 26 th , 27 th , or 28 th . tuesday , the 25 th is already\nfilling\n> up . please let me know which day would work for you .\n>\n> best regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron corp . research group\n> 713 / 853 - 5290\n> email : shirley . crenshaw . com\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.629+0000", "entityId": 7773, "properties": {"text": "Subject: lance cunningham\nvince :\ni have left a message with teresa and have sent the following terse note to\nlance to let him know that we are moving .\nas we discussed , i asked teresa to offer 90 k + 10 k signing bonus .\nregards ,\ngrant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 06 / 30 / 2000 11 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : grant masson 06 / 30 / 2000 11 : 21 am\nto : lbcunningham @ mail . utexas . edu\ncc :\nsubject : enron\nlance :\ni am going on vacation tomorrow , but i wanted to get in touch with you before\ni left .\ni have asked hr to extend an offer to you . teresa bien should be sending you\nan offer letter via fedex . of course , with the july 4 th weekend , i ' m not sure\nwhen you will get it .\nif you have questions , i suggest that you call vince kaminski at 713 853\n3848 .\nregards ,\ngrant masson .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.638+0000", "entityId": 7774, "properties": {"text": "Subject: re : shalesh\njim ,\ni agree with you . it just burns your time and mine . i shall take care of it\nwhen ravi comes back from vacation .\nvince\nfrom : jim fallon @ enron communications on 06 / 29 / 2000 06 : 38 pm\nto : vince j kaminski / hou / ect @ ect @ enron\ncc :\nsubject : re : shalesh\nvince ,\nravi never said a word to me and should have closely coordinated with me -\notherwise he should have used his own name . i have a problem with ravi\nacting in that manner . no one is questioning shalesh ' integrity but the\nassociate analyst program called me and stated that shalesh told them that i\nhad requested the move . if he did that he should not have used my name . i\nam very sensitive to analysts moving within a rotation . it has happened to\nme numerous times and i do not appreciate the disruption it can cause . if\nyou need shalesh for any reason then he will not be moving .\nregards\njim\nvince j kaminski @ ect\n06 / 29 / 00 05 : 39 pm\nto : jim fallon / enron communications @ enron communications , celeste\nroberts / hou / ect @ ect , ravi thuraisingham / enron communications @ enron\ncommunications\ncc : vince j kaminski / hou / ect @ ect\nsubject : shalesh\njim ,\nclarification regarding shalesh ' transfer to ebs .\nthe request to rotate shalesh out of research into ebs\ncame from ravi thuraisingham . my understanding was that it was\nfully coordinated with you and i was more than happy to oblige .\nshalesh is concerned that his integrity is being questioned and i can assure\nyou that he was not the instigator of the move .\nmy impression is that shalesh is doing a very good job and ravi is very happy\nhim . i shall be glad to keep him in the research group in his current role .\nhave a good 4 th of july .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.646+0000", "entityId": 7775, "properties": {"text": "Subject: your riskmetrics site password\ndear ,\nthank you for registering .\nyour requested username is vincek and your password is longrun .\nyou may use this login to :\n- use the data directory at http : / / www . riskmetrics . com / products / data / index . cgi\n- access the creditmetrics datasets at\n. html\n- access the riskmetrics datasets at\ntml\n- read our technical documents at\n- read our monitors at http : / / www . riskmetrics . com / research / journals / index . cgi\n- read risk management : a practical guide at\nplease let us know if you have any questions or concerns ,\nrmg web services\nweb @ riskmetrics . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.652+0000", "entityId": 7776, "properties": {"text": "Subject: re : visit to houston and vince kaminski ' s research group\nshirley ,\ni just booked my flights and the hotel . i ' ll be arriving houston on\nthe evening of 7 / 27 and leaving on 7 / 29 . i ' ll stay at the doubletree\nhouston allen center for two nights . looking forward to meeting you at\nenron .\nregards ,\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.657+0000", "entityId": 7777, "properties": {"text": "Subject: your visit to sydney in july\nvince\ni support raymond ' s email and would welcome the opportunity to have you give\na presentation ( formal or informal ) to the trading group on latest research\ninitiatives in houston . please let us know your schedule so that we do not\noverly burden you during your visit . look forward to seeing you and catching\nup over a beer .\nthnx\npaul\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paul quilkey / enron _ development on\n07 / 05 / 2000 08 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nraymond yeow\n07 / 04 / 2000 08 : 21 pm\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development , kirsty hogarth / enron _ development , elliott\nkatz / enron _ development , david gray / enron _ development\nsubject : your visit to sydney in july\ndear vince ,\nhi ! , it ' s only two weeks until the aust energy risk ( 17 - 19 july ) seminar in\nsydney .\nis risk organising your hotel ?\notherwise , kirsty can organise for you ,\neg harbour view at the regent or convenience to the seminar location at the\nsheraton ?\nwe would like to make sure that you have all the necessary \" comforts \" of home\nwhen you are with us ,\nelliott & david can set up a desk for you in the office / trading room with\nphone etc\nso you can use one of our pc to access email or plug in your laptop .\nplease let elliott or david kmow your requirements .\nhow long will you be with us ?\nis this your first trip to sydney ?\nthere are several of us in the office who would like to take you for a\nmeal ( s ) / show you the sights etc and\ndiscuss the latest research findings with you whilst you are in sydney eg var .\nhear from you soon .\nraymond\n725 pm 4 july", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.661+0000", "entityId": 7778, "properties": {"text": "Subject: your visit to sydney in july\ndear vince ,\nhi ! , it ' s only two weeks until the aust energy risk ( 17 - 19 july ) seminar in\nsydney .\nis risk organising your hotel ?\notherwise , kirsty can organise for you ,\neg harbour view at the regent or convenience to the seminar location at the\nsheraton ?\nwe would like to make sure that you have all the necessary \" comforts \" of home\nwhen you are with us ,\nelliott & david can set up a desk for you in the office / trading room with\nphone etc\nso you can use one of our pc to access email or plug in your laptop .\nplease let elliott or david kmow your requirements .\nhow long will you be with us ?\nis this your first trip to sydney ?\nthere are several of us in the office who would like to take you for a\nmeal ( s ) / show you the sights etc and\ndiscuss the latest research findings with you whilst you are in sydney eg var .\nhear from you soon .\nraymond\n725 pm 4 july", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.666+0000", "entityId": 7779, "properties": {"text": "Subject: invites for australian energy risk 2000 july 17 - 18\ndear lucie ,\nwhen i agreed to speak at the above conference , it was agreed that enron\ncould bring another staff member to attend gratis . however , i noticed that\nenron is actually providing two speakers - dr vince kamainski and myself . it\nwould be appreciated if we could instead of sending two staff members to the\nsame seminar that enron sends one staff member to the aust energy seminar and\none staff member to the risk 2000 - sydney seminar in august 22 - 23 . the\nlength & pricing are similar for both the seminars .\nupon your reply , i will supply the names of the staff members , there is\nstrong internal competition to go .\nthank you , raymond\n715 pm 4 july\n\" lucie deathridge \" on 05 / 25 / 2000 09 : 30 : 25 am\nplease respond to \" lucie deathridge \"\nto :\ncc :\nsubject : australian energy risk 2000\nthank you for agreeing to speak at the australian energy risk 2000\nconference in sydney in july . last week i sent a speaker pack to you . i\nwould be grateful if you would confirm receipt of this by return of email .\nin the event that you have not received it please let me know immediately\nand send me your full contact details . i am the co - ordinator of this\nconference and please do not hesitate to contact me if you have any queries .\nregards\nlucie deathridge\nconference co - ordinator\nrisk publications\n?\ntel : ( + 44 ) ( 0207 ) 484 9867", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.671+0000", "entityId": 7780, "properties": {"text": "Subject: re : mg integration support - daily update # 6\nhi richard ,\nlloyd fleming introduced me to the key personnel on the trading and risk side\nat mg today ; i spent most of today discussing forward curves and option\nvolatilities with tim jones , russell plackett and jon barrett . i hope to be\nable to get historical data from david thompson to facilitate forward curve\nanalysis for our var models . also discussed valuation issues ( e . g . option on\ncalendar spread that they need a model for ) . also was able to get a good\nunderstanding of trading strategies and nuances of aluminum , copper and\nnickel markets .\nregards ,\nanjam\nx 35383\nrichard sage\n04 / 07 / 2000 02 : 37\nto : stop : mike jordan / lon / ect @ ect , andrew cornfield / lon / ect @ ect , naomi\nconnell / lon / ect @ ect , stephen wood / lon / ect @ ect , tim\npoullain - patterson / lon / ect @ ect , andrea m kerch / lon / ect @ ect , janine\njuggins / lon / ect @ ect , lloyd fleming / lon / ect @ ect , tim davies / lon / ect @ ect , david\nhardy / lon / ect @ ect , barry sangster / lon / ect @ ect , robert campbell / lon / ect @ ect ,\nalex holland / lon / ect @ ect , michael heap / lon / ect @ ect , phil redman / lon / ect @ ect ,\nfiona grant / lon / ect @ ect , toby knight / lon / ect @ ect , melissa laing / lon / ect @ ect ,\njeanie slone / lon / ect @ ect , beth apollo / lon / ect @ ect , mark\npickering / lon / ect @ ect , suzanne lane / lon / ect @ ect , stephen evans / lon / ect @ ect ,\nniamh o ' regan / lon / ect @ ect , anjam ahmad / lon / ect @ ect , fernley\ndyson / lon / ect @ ect , eric gadd / lon / ect @ ect\ncc :\nsubject : re : mg integration support - daily update # 6\ndeal entry\nthe need for 3 data - entry clerks becomes clearer when we understand that\nbetween 200 and 2000 manual deal tickets are written each day which then have\nto be keyed in .\nromulus\nthe trading assets of rudolf wolff in london and new york were bought after\nclose of play on friday .\nincluded with the metals trading is a proprietary fx desk , and a softs desk ,\ntrading coffee , cocoa , and sugar .\nthe softs people are expected to arrive in enron house at the end of july .\neol\ntwo metals trades have been executed on eol .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.676+0000", "entityId": 7781, "properties": {"text": "Subject: re : eol phase 2\ndeal all ,\ni have written the option pricing formula for european ( euro ) , american\n( amer ) and asian ( agc ) options .\ni have also cited the references for each option . the function names in ( )\nare the option models in the\nenron exotica options library . you do not have to have outside programmer\nto duplicate our work , since we have\nconstructed and tested these models .\nif you have any questions , please let me know .\nzimin\nvince j kaminski\n06 / 30 / 2000 02 : 31 pm\nto : michael danielson / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , zimin lu / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : eol phase 2\nmichael ,\nplease , contact zimin lu .\nvince kaminski\nmichael danielson\n06 / 30 / 2000 01 : 10 pm\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc : angela connelly / lon / ect @ ect , savita puthigai / na / enron @ enron\nsubject : eol phase 2\nthanks for your help on content for eol phase 2 .\nan additional piece of content that we are trying to include in our scope is\nan options calculator . this would be an interactive tool to teach less\nsophisticated counterparties about options . we would like to collaborate\nwith someone in research to refine our approach ( and make sure we ' re using\nthe right formulas ) . who should we contact in research for this ?\nattached is a mock - up of what we have in mind . . .\n- calculator prototype . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.681+0000", "entityId": 7782, "properties": {"text": "Subject: re : your visit to sydney in july\npaul , raymond ,\nthanks for your message .\nsorry i did not get in touch with you earlier . the last few weeks were very\nhectic . i am starting\nright now my preparations for the presentation i am going to give at the\nconference .\nhere are the details of my itinerary ( i shall send you a copy tomorrow ) . i\narrive sunday morning\nand leave saturday morning . the conference takes place on monday and tuesday .\non wednesday , i am making a presentation at the workshop on value - at - risk . i\nwould\nlike to stay at the conference for the duration : it ' s a great learning\nopportunity for me .\non thursday and friday , as well as in the evenings ( except for the evening\nof july 18 ) , i am at you disposal .\ni would like to take advantage of this trip and learn as much as i can\nabout the australian markets and discuss with you the research agenda .\ni shall be glad to make several presentation .\ni can repeat my workshop presentation on value - at - risk as well as cover\nadditional\ntopics .\nvince\npaul quilkey @ enron _ development\n07 / 04 / 2000 05 : 23 am\nto : vince j kaminski @ ect\ncc :\nsubject : your visit to sydney in july\nvince\ni support raymond ' s email and would welcome the opportunity to have you give\na presentation ( formal or informal ) to the trading group on latest research\ninitiatives in houston . please let us know your schedule so that we do not\noverly burden you during your visit . look forward to seeing you and catching\nup over a beer .\nthnx\npaul\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paul quilkey / enron _ development on\n07 / 05 / 2000 08 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nraymond yeow\n07 / 04 / 2000 08 : 21 pm\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development , kirsty hogarth / enron _ development , elliott\nkatz / enron _ development , david gray / enron _ development\nsubject : your visit to sydney in july\ndear vince ,\nhi ! , it ' s only two weeks until the aust energy risk ( 17 - 19 july ) seminar in\nsydney .\nis risk organising your hotel ?\notherwise , kirsty can organise for you ,\neg harbour view at the regent or convenience to the seminar location at the\nsheraton ?\nwe would like to make sure that you have all the necessary \" comforts \" of home\nwhen you are with us ,\nelliott & david can set up a desk for you in the office / trading room with\nphone etc\nso you can use one of our pc to access email or plug in your laptop .\nplease let elliott or david kmow your requirements .\nhow long will you be with us ?\nis this your first trip to sydney ?\nthere are several of us in the office who would like to take you for a\nmeal ( s ) / show you the sights etc and\ndiscuss the latest research findings with you whilst you are in sydney eg var .\nhear from you soon .\nraymond\n725 pm 4 july", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.686+0000", "entityId": 7783, "properties": {"text": "Subject: re : friday morning meeting ?\nvince :\n7 am at hyatt regency downtown would be perfect . i will see you in the lobby\nat 7 am .\nbest regards , dale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , july 05 , 2000 3 : 23 pm\nto : dale . nesbitt @ marketpointinc . com\ncc : vince . j . kaminski @ enron . com ; shirley . crenshaw @ enron . com\nsubject : re : friday morning meeting ?\ndale ,\nfriday is a bad day ( performance review committee all day ) .\nwhat about 7 : 00 at the office or breakfast meeting at 7 : 00 ? we can meet\nat hyatt regency downtown ( smith street ) .\nvince\n\" dale nesbitt \" on 07 / 05 / 2000 12 : 13 : 59 am\nto : \" vince . j . kaminski \"\ncc :\nsubject : friday morning meeting ?\nvince :\ncan we get together friday morning july 7 at 800 am at your office ? that\nwould be particularly convenient for me . i will have to leave downtown at\nabout 945 to catch a plane . that will ensure that i wont take up too much\nof your time ! ! thanks for your efforts here , and thanks for being patient\nwith me .\ndale nesbitt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.691+0000", "entityId": 7784, "properties": {"text": "Subject: interesting article about enron in japan ' s electricity newspaper\njapan ' s electricity newspaper ( \" denki shimbun \" , the equivalent of megawatt\ndaily ) has been running a series of articles about the new century . several\nof these have focused on the power industry in the u . s . a friend of mine ran\nacross one on enron that was published on april 13 and sent it to me . i\nthought you would find it interesting .\nthe article focuses on ees in particular and about how we try to succeed by\nbeing first to meet our clients ' changing needs . it also describes how we\nuse derivatives and risk management to reduce costs and stay competitive .\nthe article also briefly mentions the new office in japan .\nthe most interesting thing about the article is how incredibly positive it is\nabout enron . given what i have read and heard about how nervous the japanese\nare about deregulation of the industry , i really did not expect such praise .\ndenki shimbun also has a web site at \" www . shimbun . denki . or . jp \" . they have\nsmall summaries of the important articles of the day ( the site , however , is\ncompletely in japanese ) . another interesting site is\n\" www . criepi . denken . or . jp \" , the english home site of japan ' s central research\ninstitute of electric power industry ( denryoku chuo kenkyuujou ) . the site\nhas many links to other english - language sites related to the power industry\nin japan .\nregards ,\neugenio", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.696+0000", "entityId": 7785, "properties": {"text": "Subject: numbers for sharad agnihotri\nhi dale ( i would also like to arrange for a direct reporting line to\nme for sharad .\nregards ,\nanjam\nx 35383\np . s . kate : i have attached the agencies terms and conditions below :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 05 / 07 / 2000 16 : 21\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : alex blair\n05 / 07 / 2000 15 : 29\nto : \" ' anjam ahmad ' \"\ncc :\nsubject : numbers\nanjam ,\n? ? ? ? ? ? ? as requested please find enclosed details on sharad ' s numbers :\n? ? ? ? ? ? ? basic salary : o 40 , 000\n? ? ? ? ? ? ? car allowance : o 3 , 500\n? ? ? ? ? ? ? ( paid in cash )\n? ? ? ? ? ? ? annual bonus : ol 3 , 000 ( this bonus was paid for ? ? ? ? ? ? ?\n99 - 00 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 8 mths work april - dec )\ntotal o 56 , 500\nsharad has been informed that his bonus payments for year 00 - 01 will be\nfloored at o 25 , 000 . ? sharad ' s expectations therefore are to receive a base\nsalary of between o 57 . 5 - o 60 k plus bonus .\ni hope this is of use and ask that if you have any questions that you do not\nhesitate to call .\nalex blair\nsenior consultant\nalex . blair @ alexmann . com\ntel : 0207 891 6671\nfax : 0207 905 1313\nweb :\n\" the alexander mann group has a stated policy for the use of electronic\nmail which is rigorously enforced throughout the group . the contents of\nthis e mail should meet the requirements of the policy - if you would\nlike further details please forward this message to info @ alexmann . com\nor call 0207 242 9000 .\nthe information contained in this electronic mail message is\nconfidential . it is intended solely for the use of the individual or\nentity to whom it is addressed and others authorised to receive it . if\nthe reader of this message is not the intended recipient , you are hereby\nnotified that any use , copying , dissemination or disclosure of this\ninformation is strictly prohibited . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.701+0000", "entityId": 7786, "properties": {"text": "Subject: department presentation , friday 7 th july , 8 : 45 am\nthe fame of the research department is spreading all over europe !\nbest regards ,\nmartina\n- - - - - - - - - - - - - - - - - - - - - - forwarded by martina angelova / lon / ect on 05 / 07 / 2000\n15 : 29 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron information technology\nfrom : enron europe general announcement 05 / 07 / 2000\n15 : 27\nplease respond to european t & d / lon / ect\nto : ect frankfurt , ect helsinki , ect london , ect madrid , ect oslo , ect\nteesside , ect warsaw\ncc :\nsubject : department presentation , friday 7 th july , 8 : 45 am\nmaureen raymond - casta \u000f eda ,\nsenior international economist , research department , houston\nwill be presenting\napproach to country risk\nfriday 7 th july\n8 : 45 am - breakfast and questions to ms . raymond - casta \u000f eda\n9 : 00 am - presentation will start\nenron house , fifth floor , auditorium\nit is not necessary that you book a place , however if you have any questions\nplease contact european t & d .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.706+0000", "entityId": 7787, "properties": {"text": "Subject: corp and muni bonds\nhere ' s what i found . pls let me know if i can help you with anything . i\nchecked on the bonds that we spoke with you about earlier . the call date was\nin august so i just passed on it . these look pretty good .\nthanks , julie\n- kaminsky 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.711+0000", "entityId": 7788, "properties": {"text": "Subject: re : vince kaminski ' s oct . 11 presentation - - \" enron day at the\nenergy finance program \"\ncindy ,\noctober 11 would work for me . this is the date of my visit to austin to make\na presentation ehud ' s mba class .\nif you need me to go to austin an a different day , please , let me know . i\nshall be glad to help you , my schedule\npermitting .\nvince\ncindy justice\n07 / 05 / 2000 03 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : vince kaminski ' s oct . 11 presentation - - \" enron day at the energy\nfinance program \"\nvince -\nchristy young is the ut mba recruiter . she is taking a couple of weeks off to\nget married and will return on july 19 th as christy meador . in her absence ,\ni wanted to make sure we coordianted our efforts with you .\nbelow are a few key ut recruiting dates . ideally , we would like for your\npresentation to occur a week or so before our interview list is due to the\ncareer services office . this will allow for additional candidates to submit\ntheir resumes for our review before we turn in the interview list .\nwed . , sept . 13 - corporate presentation & reception - alumni center\nfri . , sept . 22 - eye ' s of texas career fair - campus\nthurs . , sept . 28 - enron interview list due to career services office\nwed . , oct . 11 - pre - interview reception - selected candidates only\nthurs . , oct . 12 - first round interviews\nfri . , oct . 13 - second round interviews\nsat . , oct . 28 - super saturday for ut candidates\nplease let me know what works best with your schedule . note that october 11\nis the same date as our pre - interview reception .\nwe look forward to working with you on this .\nthanks ,\ncindy justice\nx 57339\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cindy justice / hou / ect on 07 / 05 / 2000 03 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nceleste roberts\n07 / 05 / 2000 11 : 57 am\nto : cindy justice / hou / ect @ ect , shelly jones / hou / ect @ ect\ncc :\nsubject : vince kaminski ' s oct . 11 presentation - - \" enron day at the energy\nfinance program \"\ncan you guys followup with him to coordinate an enron reception following a\npresentation that vince kaminiski will give during their annual ut\nfoundations of energy finance class . we do want to do this , and of course\nneed to coordinate with vince and your dates on campus to ensure that we have\nno conflicts .\ni am not sure if this falls into the associate or analyst camp . you can best\ndetermine who the appropriate contact should be . leave me an e - mail to\nconfirm .\nceleste\n- - - - - - - - - - - - - - - - - - - - - - forwarded by celeste roberts / hou / ect on 07 / 05 / 2000\n11 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ehud i . ronn \" on 07 / 05 / 2000 10 : 35 : 57 am\nto : celeste roberts / hou / ect @ ect , celeste roberts / hou / ect @ ect\ncc :\nsubject : vince kaminski ' s oct . 11 presentation - - \" enron day at the energy\nfinance program \"\nceleste ,\ngreetings .\nas you may recall , i am the director of the univ . of texas center for\nenergy finance ( cefer ) . i would like at this time to initiate planning for\nyour colleague vince kaminski ' s annual presentation to the ut foundations\nof energy finance class which i will be presenting as usual the first half\nof the fall semester .\nthus , to begin , i wonder whether either the above is your current e - mail\naccount , and , with the departure of meryl barnett ( with whom i believe we\ncoordinated this in the past ) , whether this is an issue within your scope .\nwith respect to this reception , i appreciate that there may be other enron\nreceptions scheduled for this fall . however , if you so choose , i would\nlike to afford you the opportunity of scheduling an enron reception\nfollowing vince ' s presentation . if you would indeed like to do so , i\nsuggest we coordinate with vince the date for the presentation / reception .\nsincerely ,\nehud\nehud i . ronn\nprofessor of finance\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.716+0000", "entityId": 7789, "properties": {"text": "Subject: contact info\ni will be in one of these two places - -\nmy home : 011 91 80 3312635\nmy in - laws ' home : 011 91 80 5262719\nyou can also contact me by email at vshanbh @ yahoo . com , but it is better to\ncall since i do not have easy access to a computer , and there may be a delay\nwith reading email .\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.721+0000", "entityId": 7790, "properties": {"text": "Subject: vacation\ngoodmorning ,\ni will be out of the office on\nvacation for the next few days .\nthanks\nkevin moore\nsee you when i return .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.725+0000", "entityId": 7791, "properties": {"text": "Subject: re : windows 2000 - alcar\nbrenda ,\nwhat test are we supposed to carry out ?\nis monday next week ok ?\nvince\nfrom : brenda cassel @ enron on 07 / 05 / 2000 10 : 28 am\nto : dan feather / sa / enron @ enron , vince j kaminski / hou / ect @ ect , hector\ncampos / hou / ect @ ect\ncc :\nsubject : windows 2000 - alcar\nhello ,\ni am on the qa team for the win 2 k roll - out . we need your help in testing\n\" alcar \" in a windows 2000 environment .\nthis testing is crucial to the success of converting all pc ' s from nt 4 to\nwindows 2000 . we ask that you make an appointment to come to our offices\n( eb 2224 b ) to preform the test . it should not take more than 15 minutes .\nplease e - mail me as soon as possible .\nthanks ,\nbrenda cassel\nqa - w 2 k\nx 36226", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.732+0000", "entityId": 7792, "properties": {"text": "Subject: aga for 7 / 7 is forecasted at 68\nthe aga weekly change for the week ending on 7 / 7 is at 68 .\nthe model predicted 66 for 6 / 30 , it came out at 69 .\nthe following graph depicts the past performance .\nmike ,\nwhere can i get the temperature data ? i believe the model can be further\nimproved by incorporating some\nexplanatory variables like temperature .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.740+0000", "entityId": 7793, "properties": {"text": "Subject: willow tree\nhi vince -\nthis is so you can respond to my email . please let me know if you have\nany further questions or comments regarding willow or if you would like\nto proceed in discussing a purchase .\nregards ,\nmichael curran\nhead of research\nriskcare - financial technology services\npiercy house\n7 copthall avenue\nlondon ec 2 r 7 nj\ntel : + 44 ( 0 ) 20 7562 3419\nfax : + 44 ( 0 ) 20 7562 3401\nmailto : mcurran @ riskcare . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.747+0000", "entityId": 7794, "properties": {"text": "Subject: re : pre - meeting weathereffects site cruise\nvince ,\nyou ' re right . it is wednesday ! see you then .\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , july 06 , 2000 12 : 14 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; mike a roberts\nsubject : re : pre - meeting weathereffects site cruise\ned ,\nthis is a terrific site . i look forward to another presentation .\none question . you mentioned tuesday in our phone conversation .\ni have the presentation scheduled for wednesday next week .\nplease , double check the time and date .\nvince\n\" edward krapels \" on 06 / 30 / 2000 03 : 15 : 43 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : pre - meeting weathereffects site cruise\nsold ! i ' ll initiate the call .\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 3 : 44 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : pre - meeting weathereffects site cruise\ned ,\nthursday works for me . what about 10 : 30 my time ?\nvince\n\" edward krapels \" on 06 / 30 / 2000 02 : 43 : 00 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc :\nsubject : re : pre - meeting weathereffects site cruise\nhow about thursday , july 6 ?\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 3 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : pre - meeting weathereffects site cruise\ned ,\na correction . i shall spend an entire day at prc ( performance review )\non friday , july 7 . can we do on another day\nvince\n\" edward krapels \" on 06 / 30 / 2000 12 : 40 : 59 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc :\nsubject : re : pre - meeting weathereffects site cruise\ni ' ll still be here in boston so we ' d do it over the phone . ok ?\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 12 : 11 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : pre - meeting weathereffects site cruise\ned ,\nwill you be in houston on that day or we shall do it over the phone ?\nvince\n\" edward krapels \" on 06 / 30 / 2000 09 : 13 : 04 am\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : pre - meeting weathereffects site cruise\nvince ,\nhow about a pre - meeting web site cruise on friday , july 7 at 11 am edt ?\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , june 30 , 2000 9 : 52 am\nto : ekrapels @ esaibos . com\ncc : vince j kaminski\nsubject : re : next visit to houston\ned ,\njuly 12 , 2 : 30 it is . i would like the pre - meeting site cruise .\nhow can we arrange it ?\nvince\n\" edward krapels \" on 06 / 30 / 2000 04 : 00 : 53 am\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\nwe ' re all set for 2 : 30 on july 12 . how about a pre - meeting web site cruise\non friday , july 7 at 11 am edt ?\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , june 29 , 2000 5 : 04 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\nwednesday , july 12 , 2 : 300 will work for me .\ni shall be glad to review your website - -\nwww . weathereffects . com . i shall invite some\npeople who work on electricity in\nmy group to join me .\nvince\n\" edward krapels \" on 06 / 29 / 2000 03 : 53 : 40 pm\nplease respond to\nto : \" ' vince j kaminski ' \"\ncc : \" jeffrey shorter \\ ( e - mail \\ ) \"\nsubject : re : next visit to houston\nvince ,\ngood to hear from you and i ' m glad you ' re available . how is wednesday at\n2 : 30 ?\ni did look at eol and am not surprised to see its quality . i was unable to\nsay much about it in my risk electricity hedging and trading report because\nof deadline pressures . how is the site doing ? i am intrigued by the\ncompetition for trading platforms and was astonished to hear that goldman ,\nmorgan , bp and shell were going to launch a site to compete with yours . talk\nabout a shotgun marriage !\nif we have time next week , i could step you through our website - -\nwww . weathereffects . com . i ' m very proud of what we ' ve done . i can ' t give out\na password yet but would be happy to walk through the site with you over the\nphone using my password . it ' s a very ambitious site - - with state - of - the - art\nwsi weather ( seasonal , 6 - 10 , and day to day ) driving a good load model for\npjm and nepool . esai contributes oil and gas input price forecasts , capacity\njudgments , and \" herding \" ideas to develop power price forecasts for same\ntime periods . after one month ' s full - bore effort , i ' m pleased with the\nresults ( e . g . , we forecast nepool onpeak to be $ 43 and it turned out $ 46 ) .\nhave a great weekend .\ned\n- - - - - original message - - - - -\nfrom : vince j kaminski [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , june 28 , 2000 5 : 29 pm\nto : ekrapels @ esaibos . com\ncc : vince j kaminski ; shirley crenshaw\nsubject : re : next visit to houston\ned ,\ni shall be available on both days . what about wednesday ,\njuly 12 , between 1 : 30 and 4 : 00 . please , let me know\nwhat time would work for you .\nit will be nice to see you again .\nvince\np . s . by the way , did you have a chance to take a look at the eol ?\n\" edward krapels \" on 06 / 28 / 2000 02 : 49 : 41 pm\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : next visit to houston\ndear vince ,\ni will be returning to houston during the week of july 10 .\nesai and weather services international have launched - - after more than 18\nmonths of r & d - - our service , called energycast power trader and energycast\ngas trader , for power traders in nepool and pjm . i would be happy to review\nthe service with you as well as take you on a tour of our web site . are you\navailable on july 12 - 13 ?\nsincerely ,\ned krapels", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.752+0000", "entityId": 7795, "properties": {"text": "Subject: contacting iris mack\nvince ,\niris mack finally returned my call . her message said she had been in\ncalifornia on a job interview and it looks like she may take the\nposition . i will contact her to get the details and confirm if she is\noff the market .\ntoni graham\nstaffing consultant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by toni graham / corp / enron on 07 / 06 / 2000\n09 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : teresa bien 06 / 22 / 2000 01 : 51 pm\nto : toni graham / corp / enron @ enron\ncc :\nsubject : re : re [ 10 ] : greetings from london ( to enron )\nfyi . can you look in to this for him ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by teresa bien / corp / enron on 06 / 22 / 2000\n01 : 49 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n06 / 16 / 2000 10 : 14 am\nto : teresa bien / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : re [ 10 ] : greetings from london ( to enron )\nteresa ,\ni would like to invite iris for an interview in houston .\nshe works currently in london can you call her\nand ask when she is planning to visit the states .\nwe could pay the airfare from a location in the states .\ni would hate to pay the lst class ticket from london to houston ,\nthough i would go for it , if necessary ( i don ' t\nwant a candidate to think that we are that cheap ) .\nbusiness class is a standard\nfor business related , cross - atlantic flights .\ni would be more comfortable if you could negotiate this issue .\nthanks\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 06 / 16 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n06 / 12 / 2000 03 : 51 pm\nto : iris . mack @ bnpparibas . com @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : re [ 10 ] : greetings from london ( to enron )\niris ,\nat this point it ' s my group : research , i . e . quantitative modeling .\nplease , let me know what your interests are and i shall try to line up\nother groups for the interview .\nvince\niris . mack @ bnpparibas . com on 06 / 09 / 2000 02 : 33 : 50 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 10 ] : greetings from london ( to enron )\nhi ,\ni will be out of the country until wednesday afternoon - london time .\nmaybe we can chat then .\nalso , could you please tell me about the group ( s ) that are interested in\nspeaking with me .\nthanks ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 06 / 06 / 2000 20 : 31 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 8 ] : greetings from london ( to enron )\niris ,\nleaving for ca in a few minutes . i shall get back to you monday .\nvince\niris . mack @ bnpparibas . com on 06 / 06 / 2000 10 : 36 : 46 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 8 ] : greetings from london ( to enron )\nhi ,\nthanks for your email . begining of july - what about july 4 th week ?\ncould you give me a bit more info regarding the best days for you and\nyour\ncolleagues .\nthanks ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 06 / 06 / 2000 14 : 29 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 6 ] : greetings from london ( to enron )\niris ,\nthe beginning of july would be better for us . please , let me know what\nis your availability .\nvince\niris . mack @ bnpparibas . com on 06 / 06 / 2000 02 : 30 : 49 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 6 ] : greetings from london ( to enron )\nhi ,\nthank you for your email . how many days do we need ?\ni have checked my calendar . and think that i should be able to come on\nmonday june 19 th ( tuesday june 20 th - if you need more than one day ) . .\ni can fly from london to houston during the following weekend to\narrive in\ntime for monday morning .\nlet me know if these days are good for you and your colleagues .\nregards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 18 : 33 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : re [ 4 ] : greetings from london ( to enron )\niris ,\nwe can invite you for an interview to houston .\nwhat would be a the time for you ?\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 11 : 32 : 04 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 4 ] : greetings from london ( to enron )\nhi ,\nthank you for your prompt response . i am interested in any contacts\nyou\nmay have in your rolodex .\nalso , i would be opened to talk to enron as well . please let me know\nmore\ndetails .\nkind regards ,\niris\ninternet\nfrom : vince . j . kaminski @ enron . com on 25 / 05 / 2000 16 : 19 gmt\nto : iris mack\ncc : vince . j . kaminski , stinson . gibner , grant . masson ,\npinnamaneni . krishnarao ,\nvasant . shanbhogue\nbcc :\nsubject : re : re [ 2 ] : greetings from london ( to enron )\niris ,\ni shall go through my rolodex and try to find some good leads for you . i\nleft\ninvestment banking 8 years ago and this field changes very fast .\nalternatively , would you be interested in a company like enron\nor another energy company in houston ?\nplease , let me know .\nvince\niris . mack @ bnpparibas . com on 05 / 25 / 2000 09 : 20 : 01 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re [ 2 ] : greetings from london ( to enron )\nhi ,\nhow are you ? thank you kindly for your email . sorry i have not\nresponded\nsooner .\ncurrently i am working in derivatives structured products and risk\nmanagement at bnp paribas in london . although i currently enjoy living and\nworking in london , i may need to return to the states - because of my\nmother ' s\nfailing health .\ndo you know of any good contacts at investment banks that i may\nforward my\ndetails to ?\nfor your information , i have attached my cv . ( please see attached\nfile :\niris marie mack . doc ) .\nthank you in advance for your time and consideration .\nkind regards ,\niris mack\n44 ( 0 ) 20 7595 8665 ( work )\n44 ( 0 ) 20 7229 9986 ( home )\n( see attached file : iris marie mack . doc )\ninternet\nfrom : vince . j . kaminski @ enron . com on 04 / 04 / 2000 15 : 03 gmt\nto : iris mack\ncc : vince . j . kaminski\nbcc :\nsubject : re : greetings from london ( to enron )\niris ,\nplease , feel free to give me a call when you have a few minutes .\ni shall be glad to chat with you .\nvince\niris . mack @ paribas . com on 03 / 30 / 2000 02 : 24 : 27 am\nto : vkamins @ enron . com\ncc : denis . autier @ paribas . com\nsubject : greetings from london ( to enron )\ndear dr . kaminski ,\nhow are you ? it was nice to meet you at the real options conference\nin\nnyc .\ni was intrigued by some of the comments in your conference talk . in\nparticular , by your use of real options to hedge financial options . this\nis\nsomething i am interested in as well .\nwhen you have some time , could we chat about this topic in a bit more\ndetail ?\nthanks for your time and consideration . hope to hear from you soon .\nregards ,\niris mack\n- - - - - - - - - - - - - - - -\nthis message is confidential ; its contents do not constitute a\ncommitment by bnp paribas group * except where provided\nfor in a written agreement between you and bnp paribas group * .\nany unauthorised disclosure , use or dissemination , either\nwhole or partial , is prohibited . if you are not the intended\nrecipient of the message , please notify the sender immediately .\n* bnp paribas group is a trading name of bnp sa and paribas sa\nce message est confidentiel ; son contenu ne represente en\naucun cas un engagement de la part du groupe bnp paribas *\nsous reserve de tout accord conclu par ecrit entre vous et le\ngroupe bnp paribas * . toute publication , utilisation ou diffusion ,\nmeme partielle , doit etre autorisee prealablement . si vous n ' etes\npas destinataire de ce message , merci d ' en avertir immediatement\nl ' expediteur .\n* le groupe bnp paribas est le nom commercial utilise par bnp sa et paribas\nsa\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n( see attached file : iris marie mack . doc )\n- iris marie mack . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.756+0000", "entityId": 7796, "properties": {"text": "Subject: interview schedule for seksan kiatsupaibul\nattached please find the interview packet for the above - referenced person .\nthe interview will happen friday , july 7 , 2000 . print all three documents\nfor your hard copies . if you have any questions , or conflicts of schedule ,\nplease do not hesitate to contact me .\nshawn grady\n59385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.761+0000", "entityId": 7797, "properties": {"text": "Subject: re : telephone interview with enron corp . research dept .\ndear shirley :\nconfirming that i will be waiting for the telephone interview at 1 pm\ntomorrow . ? i would like to give you my cell phone number , 713 / 907 - 6717 , as a\nback - up measure . ? please note that my first preference is to receive the call\nat my home number , 713 / 669 - 0923 .\nsincerely ,\nrabi de\n?\n? shirley . crenshaw @ enron . com wrote :\ndear rabi :\ni have scheduled the telephone interview for 1 : 00 pm on friday , july 7 th .\nwe will call you at 713 / 669 - 0923 . if there are any changes , please let\nme know .\nsincerely ,\nshirley crenshaw\n713 - 853 - 5290\nrabi deon 06 / 26 / 2000 10 : 37 : 24 pm\nto : shirley crenshaw\ncc :\nsubject : re : telephone interview with enron corp . research dept .\ndear ms . crenshaw :\nthanks for your prompt response . ? july 6 or 7 th will work best for me . . ? i\nwould prefer to be called at my home number . ? please let me know the\nschedule and other details , if any .\nsincerely ,\nrabi de\n? shirley crenshawwrote :\ngood afternoon mr . de :\nyour resume has been forwarded to the enron corp . re ! search dept . and\nthey would like to conduct a telephone interview with you at your\nconvenience .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\ngrant masson vice president\np . v . krishnarao director\npaulo issler manager\nplease give me some dates and times this week or july 5 , 6 , and 7 th when\nyou might be available and i will coordinate with the other calendars .\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com\ndo you yahoo ! ?\nget yahoo ! mail - free email you can access from anywhere !\ndo you yahoo ! ?\nsend instant messages & get email alerts with yahoo ! messenger .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.765+0000", "entityId": 7798, "properties": {"text": "Subject: tage\nvince ,\ni have the information you requested concerning spyros maragos . please call\nme at your convenience .\npaul johnson\n( 281 ) 497 - 8595", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.770+0000", "entityId": 7799, "properties": {"text": "Subject: interview with the research group\ngood morning toni :\nthe research group would like to bring in jerzy jarosz for an exploratory\ninterview at his convenience . .\nthe interviewers from the research group would be :\nvince kaminski\np . v . krishnarao\nzimin lu\npaulo issler\ntanya tamarchenko\nstinson gibner\ngrant masson ( if the interview is after the 18 th of july )\nvasant shanbhogue ( if the interview is after the 21 st of july )\nfrom other departments :\nted murphy\nbill bradford\ngary hickerson\nhis resume is attached .\nif you need any other information , please let me know .\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.775+0000", "entityId": 7800, "properties": {"text": "Subject: michael catanese\nvince ,\nmr . catanese is not ready yet . his statistics is rusty , and he only finishes\n11 chapters of john hull ( 18 chapters are minimal\nto be serious ) .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.780+0000", "entityId": 7801, "properties": {"text": "Subject: re : internship\nshane :\nsorry , i have been on vacation . i just returned today .\ncould you please send me a copy of your resume by email ?\ni have tentatively scheduled the following interviews :\n8 : 30 am vince kaminski\n9 : 00 am p . v . krishnarao\n9 : 30 am stinson gibner\n10 : 00 am tanya tamarchenko\n10 : 30 am paulo issler\n11 : 00 am zimin lu\n11 : 30 am human resources\nyou should be free to return to baton rouge by 1 : 00 pm .\nif this schedule is not ok , please let me know .\nthanks !\nregards ,\nshirley crenshaw\nadminitrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com\n\" shane green \" on 07 / 06 / 2000 10 : 05 : 13 am\nto :\ncc :\nsubject : internship\nms . crenshaw ,\n?\ni just wanted to touch base and see if you had any information concerning my\nvisit to enron on monday . ? i will be in my office at lsu for the rest of ? the\nday with a couple exceptions . ? i teach corporate finance from 2 : 30 - 3 : 30 , ? and\nwill ? go to lunch at around 1 . ? you can contact me here at ( 225 ) 388 - 6335 . ?\nif this is not convenient , you can send me an e - mail , or leave a message on\nmy home phone at ( 225 ) 744 - 3201 , and i can get in ? touch with you tomorrow .\n?\nthanks ,\nshane green", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.786+0000", "entityId": 7802, "properties": {"text": "Subject: enron / stanford program\nhello vince , stinson ,\nthank you very much for hosting my visit at enron . i had a\nvery pleasant time there , and i found the meetings very\ninformative .\nas discussed during my visit at enron , i am sending you below\na draft of the letter that would be needed to get the program\nin place and rolling , and start the students working on it .\nit took a while to find out what the appropriate process was\nand how the letter should be structured . sorry for the delay .\nif i may , i ' d like to visit enron again , sometime in august ,\nto define the research agenda more precisely and prioritize\nthe problems to look at . i ' m in frequent contact with giuseppe ,\nwho is impressed by the environment there . we are trying to formulate\nthe research issues and problems to study , that would be of interest\nto enron . the plan is this :\n1 ) by august , giuseppe will have been there for almost 2 months\nand will probably have a relatively good understanding of the enron problem\nspace .\n2 ) i will work together with giuseppe till august to formulate a set of\ngood problems of :\na ) high practical importance\nb ) high innovation potential\nc ) serious scope .\n3 ) i could visit in august ( say mid - august or so ) to :\na ) discuss these problems with you and get your feedback\nb ) prioritize the problems and evaluate their impact\nc ) make sure we ' re on the same page regarding research strategy\nand execution path .\ni hope we can fully set up the program at stanford before then , so\nthat i can bring on board one more ph . d . student to start his\ndoctoral work in this area .\ni ' m all excited about our collaboration . i am even thinking of\nstarting a research seminar at stanford , specifically on these\nresearch issues !\ntalk to you soon .\nbest regards ,\nnick\ndraft of letter to be sent from enron to stanford .\nprof . nicholas bambos\n420 terman engineering center\nmanagement science & eng . dept . and\nelectrical engineering department\nstanford university\nstanford , ca 94305\ndear nick ,\nwe are happy to provide gift funds of $ 100 , 000 per year , over\nthree years , to support a program in your research group , related\nto bandwidth markets / trading and networking technologies .\nenron would like to support research activities in the above\nmentioned area , including pd . d . student work , research seminars etc .\nthere may also be opportunities to have the supported ph . d . students\ndo summer internships at enron , related to their research interests .\nplease find enclosed a check of $ 100 , 000 payable to stanford university\nfor supporting this research effort in your group during the first year .\nbest regards ,\nname and title", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.793+0000", "entityId": 7803, "properties": {"text": "Subject: re : oracle tables which contain the position and curves information\nfor enron ' s var system\nandreas ,\nas we discussed today , i am sending you some information on how the positions\nand curves\nare stored in our database . in the enclosed file you ' ll find the list of\ncolumns for 4 tables and\n2 quarries as an example . 3 of these tables contain the positions\ninformation , 1 table has the curves information .\nramesh ( who supports our var model from it side ) will send you the\ndescription of these tables .\nregards ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.797+0000", "entityId": 7804, "properties": {"text": "Subject: re : price processes for ng\ngrant & vince ,\ni am sending you the results of fitting different price process models into ng\nprompt month prices . the fit is quite good for some models .\nwe might think of using these mean - reverting jump - diffusion models in our\ncredit model .\ni should examine other contracts behavior ( beyond prompt month ) as well .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.802+0000", "entityId": 7805, "properties": {"text": "Subject: re :\nlloyd ,\ni think that we can arrange a few video conference meetings instead .\ni don ' t see a justification for extending the stay over the weekend if we\nhave an alternative solution .\nvince\nenron capital & trade resources corp . - europe\nfrom : lloyd fleming 07 / 06 / 2000 12 : 37 pm\nto : vince j kaminski / hou / ect @ ect\ncc : maureen raymond / hou / ect @ ect\nsubject :\nvince\ni met maureen yesterday and had a useful discussion on her role within\nenron . i think it would be very helpful to promote the research group\nfunction of the company , particularly given maureen ' s background , if she\ncould be introduced to some of the main traders down at mg . unfortunately\nshe won ' t have time to meet with mg unless we can schedule some meetings on\nmonday .\nwould you be happy for her to extend her stay here till monday to allow the\nmeetings to take place ?\nregards", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.806+0000", "entityId": 7806, "properties": {"text": "Subject: new expense account forms\nhello all :\nalong with the inception of the new sap time keeping , we also have new\nexpense account forms .\nthey will no longer use your social security number as the id on your\nexpense accounts , they want you to use your new employee # that was\nsent to you by email to access hronline .\nin order for anita and myself to continue to do your expense reports , we\nwill need your new employee # .\nplease send this number to me as soon as possible .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.810+0000", "entityId": 7807, "properties": {"text": "Subject: re :\nlloyd ,\nyes , this would be very useful . i was told that we should not do any official\nbusiness with\nmg until july 15 . i don ' t want to violate those rules of engagement and go\nbeyond casual contacts .\nafter the 15 th all the stops are off .\nvince\nfrom : lloyd fleming 07 / 07 / 2000 01 : 51 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re :\nno problem - i do think this could wait until mg are more closely integrated\nin any case . a useful first step might be an email to relevant trading\nstaff at mg outlining briefly what maureen does and how she can provide a\nservice to them . would you like me to send her a list of potential people to\nemail ?\nregards\nlloyd\nvince j kaminski\n06 / 07 / 2000 23 : 39\nto : lloyd fleming / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , maureen raymond / hou / ect @ ect\nsubject : re :\nlloyd ,\ni think that we can arrange a few video conference meetings instead .\ni don ' t see a justification for extending the stay over the weekend if we\nhave an alternative solution .\nvince\nenron capital & trade resources corp . - europe\nfrom : lloyd fleming 07 / 06 / 2000 12 : 37 pm\nto : vince j kaminski / hou / ect @ ect\ncc : maureen raymond / hou / ect @ ect\nsubject :\nvince\ni met maureen yesterday and had a useful discussion on her role within\nenron . i think it would be very helpful to promote the research group\nfunction of the company , particularly given maureen ' s background , if she\ncould be introduced to some of the main traders down at mg . unfortunately\nshe won ' t have time to meet with mg unless we can schedule some meetings on\nmonday .\nwould you be happy for her to extend her stay here till monday to allow the\nmeetings to take place ?\nregards", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.815+0000", "entityId": 7808, "properties": {"text": "Subject: a few times still available\nwe still have a few time slots available for appointments with bob brooks\nwhile he is in houston next week . there are open slots on tuesday ( morning\nand afternoon ) and wednesday morning . please reply to this e - mail with\npreferred date and time or call bob at 323 - 663 - 4831 to schedule .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.819+0000", "entityId": 7809, "properties": {"text": "Subject: lng models\ncan you guys please take a look , and eric , please show to farzad . . . . jeff\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffrey a shankman / hou / ect on 07 / 07 / 2000\n07 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmerritt thomas 07 / 06 / 2000 12 : 00 pm\nto : jeffrey a shankman / hou / ect @ ect\ncc :\nsubject : lng models\njeff ,\nhere are some models which i received from rotenberg ' s lng group when i was\nin houston last month . i haven ' t had the opportunity to really take a look\nat them , but you will probably want to pass them along to your lng people .\nthanks ,\nmerritt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.824+0000", "entityId": 7810, "properties": {"text": "Subject: houston visit\ndear research and related group team members ,\ni will be visiting the houston office from monday 10 th july and hope to have\nanother very useful information exchange , including updating you all on the\nactivities in the london office by means of a presentation . for those of you\nwho are unfamiliar with me , i have been looking after quantitative analysis\nfor the european markets for the last 3 + years , in particular focusing on\nderivatives pricing and risk management techniques ( e . g . load forecasting ,\ninflation curve building , financial options on real power stations etc . ) -\nlook forward to meeting you all again soon .\nbest regards ,\nanjam ahmad\nresearch group\nenron europe\ncellular : ( 07747 ) 868131", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.829+0000", "entityId": 7811, "properties": {"text": "Subject: ewrm update , july 7 th .\nrick\nattached please find the project update .\nthanks ,\nding .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.833+0000", "entityId": 7812, "properties": {"text": "Subject: rabi de phone interview\nshirley ,\nlet ' s act on it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 07 / 2000\n05 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n07 / 07 / 2000 01 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : rabi de phone interview\nvince ,\nwe had phone interview with rabi de . my impression is good . we should invite\nhim for a formal interview .\nhe is a hands on person with wide range of experience ( energy financing ,\nderivatives trading , hedging , etc ) .\nhe communicates very well and expressed interest in financial engineering &\nmodeling .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.838+0000", "entityId": 7813, "properties": {"text": "Subject: baylor professors lunch\ni ' m sorry . . . try this .\nbeth\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beth miertschin / hou / ect on 07 / 07 / 2000\n05 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beth miertschin 07 / 07 / 2000 05 : 01 pm\nto : mitchell taylor / corp / enron @ enron , bill w brown / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : shelly jones / hou / ect @ ect , geynille dillingham / hou / ect @ ect\nsubject : baylor professors lunch\non wednesday , july 12 dr . john martin , chair of finance department , and dr .\nbill petty , chair of entrepreneurship department , of baylor university will\nbe at the enron building to discuss future sponsorship of the texas finance\nfestival and to talk about recruiting .\nthey have asked me to invite all of you to lunch with us on that day so that\nthey might have a chance to visit with you all as well . please let me know\nif you are available for lunch on july 12 at noon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.845+0000", "entityId": 7814, "properties": {"text": "Subject: re : 2001 headcount information\ndawn :\ni am resending this - i forgot the staffing summary by location .\nsorry !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 07 / 07 / 2000\n03 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndawn derr @ enron\n07 / 07 / 2000 10 : 45 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : 2001 headcount information\nshirley ,\nget it to me as soon as you can . thanks .\ndawn\nshirley crenshaw @ ect\n07 / 07 / 2000 09 : 11 am\nto : dawn derr / corp / enron @ enron\ncc :\nsubject : re : 2001 headcount information\ndawn :\ni apologize , i have not been able to pin vince down . however , he did take\nit with him this morning ( he will be in prc meetings all day . ) and i told him \\\nyou needed it yesterday .\ni hope it is not too late . let me know .\nthanks\nshirley\ndawn derr @ enron\n07 / 05 / 2000 04 : 09 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : 2001 headcount information\nshirley ,\ni need the headcount information for vince ' s group no later than thursday ,\njuly 6 . let me know if this is a problem .\ndawn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.851+0000", "entityId": 7815, "properties": {"text": "Subject: lets meet and greet !\nhello everyone :\nsince we have so many new employees , vince thought it would\nbe a good idea for the research group to have an offsite social\nso that we might get to know each other better and to celebrate\na great first half !\nwhen : tuesday , july 11 th\nwhere : ninfa ' s across the street .\ntime : 5 : 30 pm - 7 : 30 pm\nwhat : snacks , drinks and fellowship\nmore to follow - mark your calendars !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.859+0000", "entityId": 7816, "properties": {"text": "Subject: re : 2001 headcount information\ndawn :\nhere it is !\ndawn derr @ enron\n07 / 07 / 2000 10 : 45 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : 2001 headcount information\nshirley ,\nget it to me as soon as you can . thanks .\ndawn\nshirley crenshaw @ ect\n07 / 07 / 2000 09 : 11 am\nto : dawn derr / corp / enron @ enron\ncc :\nsubject : re : 2001 headcount information\ndawn :\ni apologize , i have not been able to pin vince down . however , he did take\nit with him this morning ( he will be in prc meetings all day . ) and i told him \\\nyou needed it yesterday .\ni hope it is not too late . let me know .\nthanks\nshirley\ndawn derr @ enron\n07 / 05 / 2000 04 : 09 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : 2001 headcount information\nshirley ,\ni need the headcount information for vince ' s group no later than thursday ,\njuly 6 . let me know if this is a problem .\ndawn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.865+0000", "entityId": 7817, "properties": {"text": "Subject: business trip to houston\ndear all ,\ni will be in the houston office from monday 10 th july through wednesday 19 th\njuly and stopping in ny on the return leg to meet staff at mg metals ny on\nthursday 20 th july at the suggestion of lloyd fleming who is co - ordinationg\nthe rac activities for the integration of mg metals . i will probably take a\nday of leave on friday 21 st which would mean that i will be back in the\nlondon office on monday 24 th july .\nregards ,\nanjam\np . s . as usual i will be contactable on my cellular : ( 07747 ) 868131 or through\nlotus notes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.870+0000", "entityId": 7818, "properties": {"text": "Subject: the solution presentation , text , & budget\nvincent :\nattached are the three documents i used in the presentation : the power\npoint slides , the budget , and the written description .\nif you have any questions , you can e - mail me or call at 972 - 727 - 0999 , or\nmy cell phone at 214 - 213 - 2205 .\nthanks for the support , and i look forward to working with you .\nmak\n- the text portion of the final solution presentation . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.875+0000", "entityId": 7819, "properties": {"text": "Subject: check out\nhere is the rfc that was written in 1994 about the internet of 2020 i\nmentioned .\ni hope you find it as enlightening as i did , and enjoy it as well .\nclick\nhere : http : / / info . internet . isi . edu / in - notes / rfc / files / rfcl 607 . txt\nmak", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.879+0000", "entityId": 7820, "properties": {"text": "Subject: additional attachments\nvince :\ni forgot to attach the final slam report , the file of the white paper ,\nthe white paper calculations . the final slam report discusses the\navailability of service level agreement monitoring , and nms generally that\nmeet ebs ' s needs .\ni am convinced that at a minimum ebs would gain the foundation of a great\nnms that will be critical to the success of ebs , and that ebs could actually\ngain the distributed machine tool that could be the foundation of the\ninternet of the 21 st century . i hope we get the chance to prove this .\nlet me know if i can be of further assistance .\nmak\n- final s l a m report september 1999 . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.884+0000", "entityId": 7821, "properties": {"text": "Subject: my gratitude\ndear :\ni would like to express my gratitude to you for giving me an opportunity to\nhave an interview with enron . i have to accept that enron provides an\nexcellent working environment . i am looking forward to hearing good news\nfrom the research group . if there is anything else that i can do to\naccelerate the process , don ' t hesitate to e - mail me .\nbest regards ,\nseksan .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.888+0000", "entityId": 7822, "properties": {"text": "Subject: re : request for suggestions : vince ' s visit to sydney in july\ndear vince ,\nafter getting our heads together here ,\nwe would much apprecaite if you could share the research group ' s latest on\n- - -\n- var ie \" . . . repeat my workshop presentation on value - at - risk . . . \"\nas well as cover additional topics viz .\n- discuss , with application , enrons internal v @ r model , and how this is used\ninternally .\n- discuss volatility modelling , and whether it is possible to maintain and\ntrade a term structure of volatility in electricity\n- modelling forward curves with reference to associated markets ( eg oil ) .\ncan we gain some insights through spreads to related market curves ( spark ) .\ni assume your hotel is booked already . catching the taxi is the best way to\nget to your hotel .\nsince you are arriving on the weekend , if you need to contact me - my mobile\nis 0417 - 692295 , home tel / fax\nis 9232 - 8892\nrgds raymond\n- - - - - - - - - - - - - - - - - - - - - - forwarded by raymond yeow / enron _ development on\n07 / 07 / 2000 04 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n07 / 06 / 2000 09 : 20 am\nto : paul quilkey / enron _ development @ enron _ development\ncc : raymond yeow / enron _ development @ enron _ development , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : your visit to sydney in july\npaul , raymond ,\nthanks for your message .\nsorry i did not get in touch with you earlier . the last few weeks were very\nhectic . i am starting\nright now my preparations for the presentation i am going to give at the\nconference .\nhere are the details of my itinerary ( i shall send you a copy tomorrow ) . i\narrive sunday morning\nand leave saturday morning . the conference takes place on monday and tuesday .\non wednesday , i am making a presentation at the workshop on value - at - risk . i\nwould\nlike to stay at the conference for the duration : it ' s a great learning\nopportunity for me .\non thursday and friday , as well as in the evenings ( except for the evening\nof july 18 ) , i am at you disposal .\ni would like to take advantage of this trip and learn as much as i can\nabout the australian markets and discuss with you the research agenda .\ni shall be glad to make several presentation .\ni can repeat my workshop presentation on value - at - risk as well as cover\nadditional\ntopics .\nvince\npaul quilkey @ enron _ development\n07 / 04 / 2000 05 : 23 am\nto : vince j kaminski @ ect\ncc :\nsubject : your visit to sydney in july\nvince\ni support raymond ' s email and would welcome the opportunity to have you give\na presentation ( formal or informal ) to the trading group on latest research\ninitiatives in houston . please let us know your schedule so that we do not\noverly burden you during your visit . look forward to seeing you and catching\nup over a beer .\nthnx\npaul\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paul quilkey / enron _ development on\n07 / 05 / 2000 08 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nraymond yeow\n07 / 04 / 2000 08 : 21 pm\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development , kirsty hogarth / enron _ development , elliott\nkatz / enron _ development , david gray / enron _ development\nsubject : your visit to sydney in july\ndear vince ,\nhi ! , it ' s only two weeks until the aust energy risk ( 17 - 19 july ) seminar in\nsydney .\nis risk organising your hotel ?\notherwise , kirsty can organise for you ,\neg harbour view at the regent or convenience to the seminar location at the\nsheraton ?\nwe would like to make sure that you have all the necessary \" comforts \" of home\nwhen you are with us ,\nelliott & david can set up a desk for you in the office / trading room with\nphone etc\nso you can use one of our pc to access email or plug in your laptop .\nplease let elliott or david kmow your requirements .\nhow long will you be with us ?\nis this your first trip to sydney ?\nthere are several of us in the office who would like to take you for a\nmeal ( s ) / show you the sights etc and\ndiscuss the latest research findings with you whilst you are in sydney eg var .\nhear from you soon .\nraymond\n725 pm 4 july", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.893+0000", "entityId": 7823, "properties": {"text": "Subject: subscribe\nthis message has been automatically generated in response to your\nmckinseyquarterly . com registration .\nyou requested notification about new articles in the categories\nlisted below . to confirm your enrollment , please reply to this\nmessage and remove any / all characters that may preceed the\nword subscribe .\nsubscribe economic - performance\nsubscribe retail\nsubscribe environment\nsubscribe countries\nsubscribe strategy\nsubscribe interviews\nsubscribe financial - institutions\nsubscribe energy\nsubscribe telecommunications\nsubscribe corporate - finance\nsubscribe electronic - commerce", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.897+0000", "entityId": 7824, "properties": {"text": "Subject: re : short - sell vs exercise\nchonawee ,\nas i have pointed out , short - selling the stock may be a bad\ndecision because of tax implications ( ignoring the legal aspects ) .\nsuppose the strike is $ 70 and you were granted an atm option .\nyou sell short at $ 70 ten lots ( one lot = 100 shares ) . the price goes to\n$ 100 .\nyou lose $ 30 x 1000 = $ 30 , 000 on your short position . option exercise\ngives you $ 30 , 000 . this is before taxes . you pay taxes\non your option income ( it ' s treated as ordinary income ) . the tax is\n28 % x $ 30 , 000 = $ 8 , 400 . you can use only $ 3 , 000 of your loss against\nordinary income . this saves you only $ 840 in taxes .\nof course , if you have capital gains , you can use losses on your option\nposition\nas an offset .\nthe remaining part of your capital loss is carried forward and you get the\ntax benefits over time ( less the time value of money ) , assuming you have\nincome in the\nfuture ( or capital gains ) .\nnot so good .\nby the way , valuation and optimal exercise of employee stock options\nis a very interesting and difficult problem .\nvince\nchonawee supatgiat @ enron\n07 / 10 / 2000 11 : 40 am\nto : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : short - sell vs exercise\nbelow is my writing that was originally planned to post somewhere . it\nexplains how to handle a special type of call options which can be exercised\nbut cannot be sold . ( as we know that it is never optimal to exercise a call\noption before its maturity ) . however , after taking vince ' s comments on the\nordinary income / capital loss tax offsetting issue , i think this is not a good\narticle anymore . i guess i could just throw this article away . : - )\n- chonawee\nshort - selling is better than exercising your employee stock options\nin general , the sensible time to exercise your employee stock option is when\nyou speculate that ene is going down or its growth rate is extremely low . in\nfact , when exercising the options , you are speculating that ene would never\nreach this point ( plus interest ) again during the 10 years maturity date or\nuntil you leave the company . if you do not anticipate that , you should hold\non to your options because you can gain higher profit by delaying your\nexercise .\nhowever , if you believe that ene is reaching its peak . then , instead of\nexercising the options , you should short - sell ( or sell ) the stocks in that\namount . after short - selling , when you feel that the stock starts to go up ,\nyou can buy them back ( to cover ) , make profit , and still keep the options . on\nthe other hand , if the stock does not go down as expect , you can exercise the\noptions to cover your short position anytime .\nlet us take a look at a simple case where there are no taxes , no dividends ,\nand zero risk - free rate . suppose that ene follows a simple sample path as\nfollow\nif you exercise 100 ene options with a grant price of 45 when ene reaches 70 ,\nyou would earn ( 70 - 45 ) * 100 = $ 2 , 500 . but if you short sell 100 ene at 70 , no\nmatter how much ene is in the future , you can exercise the options to cover\nthe short position and still earn ( 70 - 45 ) * 100 = $ 2 , 500 . the advantage of\nshort - selling comes when ene at the period 2 is 60 . at this point , you can\ncover your short position , get ( 70 - 60 ) * 100 = $ 1 , 000 , and still keep your\noptions or you can exercise the options and gain $ 2 , 500 . that is , you still\nkeep the flexibility of your options when you short - sell . in conclusion , the\nonly sensible time to exercise your employee stock options is to cover your\nshort position .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.903+0000", "entityId": 7825, "properties": {"text": "Subject: re : vol rollup\njohn ,\nwe can approach this problem this way . basically you are asking how\nthe total variance ( 66 % ) 2 * 143 are distributed among 113 days and the last ? 30 days . assuming volatility for the first period is simgal and that in the ? last 30 ? days is sigma 2 , then ? ? ( 66 % ) 2 * 143 = sigmal 2 * 113 + sigma 22 * 30\nfuthermore , we can use nov - 00 implied volatility as a proxy to sigmal , then\nwe can\ncalculate sigma 2 which is the volatility for dec - 00 contract in the last 30\ndays .\nsigam 2 = sqrt ( ( 66 % ) 2 * 143 - sigmal 2 * 113 ) / 30 .\nmake sense ?\nzimin\njohn disturnal\n07 / 09 / 2000 04 : 10 pm\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : vol rollup\nzimin , i am trying to understand what the near winter ng implied vols will\nlook like as they approach expiration . for example , is it possible to infer\nwhat the implied volatility of the deco 0 ng contract will look like with 30\ndays to expiry given we know current vol ( 66 % ) and term to maturity ( 143\ndays ) ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.907+0000", "entityId": 7826, "properties": {"text": "Subject: re : request for two powerpoint presentations from risk 2000 confe\nrenc e\ni was wandering whether the document was resent . i still have not seen\nanything at either email address .\nthanks ,\nallen bryson\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : tuesday , june 27 , 2000 7 : 56 am\n> to : r - allen . bryson @ usa . conoco . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : request for two powerpoint presentations from risk 2000\n> conferenc e\n>\n>\n> allen ,\n>\n> i responded to your message from home .\n>\n> please , let me know if you did not receive the attachments .\n> aol malfunctions sometimes .\n>\n> vince\n>\n>\n>\n>\n>\n> \" bryson , allen \" on 06 / 26 / 2000 09 : 17 : 07 am\n>\n> to : \" ' vkamins @ enron . com ' \"\n> cc :\n> subject : request for two powerpoint presentations from risk 2000\n> conferenc\n> e\n>\n>\n> vince ,\n>\n> i would like to receive copies of both your energy risk and weather\n> presentations from the risk 2000 conference in boston .\n>\n> thanks ,\n>\n> allen bryson\n> conoco\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.912+0000", "entityId": 7827, "properties": {"text": "Subject: real options conference - speaker confirmation\ndear steven ,\nfurther to our conversation i am delighted that you will be speaking at the\nforthcoming real options conference which will take place on monday 27 th &\ntuesday 28 th november in central london .\ni have attached the pdf of the conference vince spoke at in february and the\ndraft programme of the november conference .\nas discussed could you please email me with a suggested talk title and\nbetween 5 and 8 bullet points to be included in the conference programme .\nit would be great if you could emphasise the practicality of your talk and\nthat you will be using your own experience of working with real options at\nenron as part of the talk .\nif you do have the delegate list from the iqpc conference it would be useful\nto see who attended so that we can improve on our marketing for the\nconference in november . you can either email me or fax it to me on 020 7393\n0313 .\ni look forward to receiving your talk in the next day or so .\nkind regards\njulia\njulia shaw\nsenior conference producer\ntel : 020 7915 5650\nfax : 020 7915 5001\nemail : jshaw @ iirltd . co . uk\nweb address : www . iir - conferences . com\n- prog 3 . pdf\n- talktitles . rtf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.916+0000", "entityId": 7828, "properties": {"text": "Subject: re : research dept contact\nplease contact stinson gibner ( vp ) , vince kaminski ( md of enron research ) or\none their technical staff who did the model development : samer takriti or\nchonawee supatgiat . as i mentioned in our meeting , enron research is staffed\nwith some of the best risk model developers and ebs has engaged them to\ndevelop optimization tools for trading and customer pricing activities . phil\nmarkwart has been our optical engineering expert who helped specify the\nrequirements for the research group .\nravi .\np . s . for those who don ' t know dan , he is part of the team ( dan please correct\nme if i am wrong here ! ) that will be responsible for developing a trading\nsystem for bandwidth trading org . he has also began to look at the\noptimization needs of the system .\ndan cummings\n07 / 10 / 00 09 : 33 am\nto : ravi thuraisingham / enron communications @ enron communications\ncc :\nsubject : research dept contact\nravi , who ' s working on the optimization engine you mentioned friday ?\ndan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.921+0000", "entityId": 7829, "properties": {"text": "Subject: ena meeting and event expenditure approval process\nthe approval process initiated in 1998 for all meeting and event expenditures\nin excess of $ 5 , 000 has enabled ena to better assess the business value of\nevents , accurately track our activities and save money . these events include\ncustomer and employee meetings , and trade shows .\nena has made some modifications to the process , which are described in this\nmemo .\nthe $ 5 , 000 threshold remains in effect for all customer events . however , the\nthreshold for approval for employee meetings and events has been lowered to\n$ 2 , 000 , and some additional requirements must be met prior to approval .\nplease be sure to follow the procedures described below for all meetings and\nevents , so we can continue to successfully manage these events .\n1 ) prior to making any commitments to customers or vendors , all customer\nevents with anticipated costs in excess of $ 5 , 000 , and all employee events\nwith anticipated costs in excess of $ 2 , 000 must be reviewed by the ena public\nrelations ( pr ) department and approved by the ena office of the chairman\n2 ) the pr department will handle the site search and hotel contract\nnegotiations for all such events . once this is completed , the pr department\nwill work with you to plan and produce your event in its entirety ; or they\ncan provide as much or as little assistance as you require . the pr department\nwill be responsible for helping you achieve the best value for your program\nand ena .\n3 ) a completed expenditure request form ( see attached ) and supporting\ndocumentation is required for each event . employee meetings require a\ndetailed agenda as part of the event documentation prior to approval . please\nsubmit the completed expenditure request form and documentation to the pr\ndepartment at eb 3642 , or work with pr department employees to complete the\nform .\n4 ) after pr review , the expenditure will be submitted to the ena office of\nthe chairman for final approval .\nadditionally , the pr department can assist in the procurement of tickets for\nvarious local sporting events and concerts .\nif you have any questions regarding this process , would like assistance\nplanning an event , or need tickets for a houston event , please contact dorie\nhitchcock in the pr department at ( 713 ) 853 - 6978 .\nthank you for your cooperation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.926+0000", "entityId": 7830, "properties": {"text": "Subject: united way executive breakfasts\nplease join us for one of the executive breakfasts at depelchin children \u0001 , s\ncenter , our adopted agency for this year and one of the more than 80\ncommunity organizations supported by the united way of the texas gulf coast .\nthe executive breakfasts will focus on our 2000 campaign . to reach our goal\nof $ 2 , 310 , 000 , it will take the active leadership and support of each of\nyou . we look forward to seeing all of you at one of the breakfasts .\nevent : executive breakfast\ndate : thursday , august 3 , 2000 ( hosted by joe sutton )\nor\nfriday , august 4 , 2000 ( hosted by jeff skilling )\ntime : 7 : 45 - 9 : 00 a . m .\nlocation : depelchin children \u0001 , s center\n100 sandman ( close to memorial and shepherd intersection )\ntransportation : bus will depart from the enron building ( andrews street side )\npromptly at 7 : 30 a . m .\nnote : bus transportation is encouraged , due to limited onsite parking .\nhowever , if you should need to drive , a map will be provided .\nplease r . s . v . p . no later than wednesday , july 26 to confirm your attendance\nand bus transportation to jessica nunez\nat 853 - 1918 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.931+0000", "entityId": 7831, "properties": {"text": "Subject: anthony dayao happy hour\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anthony dayao / hou / ect on 07 / 10 / 2000 10 : 00\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncherylene r westbrook\n07 / 06 / 2000 04 : 47 pm\nto : cindy cicchetti / hou / ect @ ect , giselle james / corp / enron @ enron , terry\nfurches / corp / enron @ enron , xochil moreno / hou / ect @ ect , linda shoup / hou / ect @ ect ,\nkim ladish / corp / enron @ enron , cheryl oliver / corp / enron @ enron , angelina v\nlorio / hou / ect @ ect , diana ovalle / corp / enron @ enron , peggy mccurley / hou / ect @ ect\ncc : anthony dayao / hou / ect @ ect , beth perlman / hou / ect @ ect\nsubject : anthony dayao happy hour\nassistants :\nplease forward to your groups asap .\nthanks ,\ncheri x 3 - 6477", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.935+0000", "entityId": 7832, "properties": {"text": "Subject: pjm files load reduction pilot program with ferc\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nthe pjm interconnection , l . l . c . filed the pjm customer load reduction pilot\nprogram with the federal energy regulatory commission ( ferc ) on friday july 7 .\nthis innovative program pays participants to reduce their own load or operate\nbackup generation to produce a beneficial load reduction for the grid during\npjm\nemergency events at times of peak demand .\n\" we are excited about this program that will provide an important resource\nduring times of high electricity usage . the program will augment the region ' s\nwell - established emergency procedures \" stated bruce balmat , vice president ,\nsystem operations . the pilot program was developed in response to a may 17 ,\n2000\nferc notice and is in effect through september 30 , 2000 .\na full description of the program and pjm ' s filing , including participation\nrequirements and procedures , can be found on the pjm website ( www . pjm . com ) .\nthose interested in participating in the program should complete a\nregistration\nform indicating their load reduction plan . those who are not already pjm\nmembers , will become special non - voting members with membership fees waived .\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.941+0000", "entityId": 7833, "properties": {"text": "Subject: interview schedule for greg mikkelson\nattached please find the interview packet for the above - referenced person .\nthe interview will happen tuesday , july 11 , 2000 . print all three documents\nfor your hard copies . if you have any questions , or conflicts of schedule ,\nplease do not hesitate to contact me .\nliz alvarado\n58983", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.946+0000", "entityId": 7834, "properties": {"text": "Subject: enron open positions\ndear mr . kaminski :\ni would like to explore the opportunity to join\nenron investment partners . i understand that enron has $ 20 million fund set\nup to finance start - ups , and gene humphreys and his assistant john godbold\nare trying to attract minority - owned start - up firms . i also learned that\nenron has plans to increase the size of this fund to $ 200 million . i can find\nthese opportunities for enron around the globe . given my background as a\nchartered financial analyst , with hands - on experience in investment\nmanagement covering financial derivatives , fixed income , and equity , i can be\na valuable resource to do the due diligence , origination , valuation , and\nmonitoring of these start - ups . would you please help me arrange a meeting\nwith either gene humphreys , ted murphy , or may be ken lay ?\ni am pasting below the job opportunities open at enron . i am also interested\nin these positions and would like to meet with the hiring manager .\ni will give you a call to follow up .\nthank you .\nsincerely ,\nmaruti more\n832 - 251 - 7267\njob 0000104282 details\nmanager / director\nessential functions : candidates will be responsible for helping\nfacilitate the transaction approval process for domestic and international\ninvestments . these investments include , but are not limited to , private\nequity , project development , venture capital , and structured credits .\ncandidates will work with business developers and underwriters in\nidentifying , understanding , and documenting transaction risks . they will also\nassist in preparing transaction approval documentation . in addition , they\nwill oversee the valuation , modeling , and simulation process for investments .\nthe primary focus is to identify and measure key risk factors from both a\nquantitative and a qualitative perspective with an emphasis on fundamental\nanalysis . the candidate must be able to assist in management and training of\ndepartmental staff and in formulation of investment valuation policies and\nprocedures .\nessential requirements : ? strong interpersonal skills ?\nunderstanding of transaction structuring and credit risk issues ?\nunderstanding of finance and valuation methodologies . ? proficiency with\nexcel cash flow models ? experience with financial statement analysis ?\nunderstanding of statistics and simulation techniques ( monte carlo ) .\npreferred skills : na .\nspecial characteristics : the ideal candidate will possess an\nundergraduate degree in finance , accounting , or economics , and an mba .\nrelevant experience could include credit analysis or valuation / finance\nexperience . manager / director in the risk assessment department of a $ 20\nbillion energy company .\ncontact : please email resumes to corpjobsl @ enron . com , please\nrefer to job no . 104282 when responding .\njob id 0000104282\ndepartment capital pricing / risk an\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 05 - jun - 00\nto submit your resume for this position :\nonline enter your resume id : no resume id ? you can create a\nresume on - line , deposit it in our database , and receive a resume id using our\nresume builder .\nyour resume id will allow you to submit your resume\nonce , but route it to up to 20 open positions . enron does not process resumes\nthat are not sent in response to specific positions .\nif you have an existing resume in electronic format ,\nthe resume builder allows you to cut and paste your whole resume .\nfax our fax number is 1 - 888 - 588 - 7152 .\nyou must tell us which jobs you ' re interested in , or\nwe will not be able to process your resume . write on your resume ( or on a\nseparate page ) all of the jobs ids of the jobs you ' re interested in pursuing .\nan equal opportunity and affirmative action employer\ntop of page copyright 1997 - 1999 enron corp . all rights\nreserved . contact us .\njob 0000104281 details\nstaff / spec / sr spec\nessential functions : \" snapshot \" preparation - responsible for\npreparation of quarterly asset \" snapshots \" which provides enron ' s senior\nmanagement with summarized operational and financial information on selected\nmerchant portfolio investments . responsibilities associated with preparation\nof snapshots include : researching publicly traded companies , calculating key\nfinancial data , updating and analyzing graphical summaries of performance ,\nreviewing press releases for recent events data , updating stock prices from\nbloomberg ? weekly underwriters report - full responsibility for updating and\ndistributing weekly underwriters ' report . involves regular interaction with\nexecutive vice president , london office personnel , as well as several vice\npresidents within underwriting group within rac . ? various projects - will be\nutilized on special projects on an as needed basis\nessential requirements : accounting / finance / economics degree with\n0 - 4 years business experience . excellent computer skills - excel ,\npowerpoint , bloomberg , word research skills and the ability to interact with\na variety of personnel and departments . excellent organization skills . self\nstarter , quick learner . must be team player . good writing skills with the\nability to concisely summarize operational and financial results .\npreferred skills : na .\nspecial characteristics : . entry level position with the\nopportunity to gain familiarity with all of enron ' s portfolio assets . future\nadvancement in asset and portfolio management possible for candidate who\nexhibits competence and creativity .\ncontact : please email resumes to enajobsl @ enron . com , please refer\nto job no . 104281 when responding .\njob id 0000104281\ndepartment due diligence / asset mgmt\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 05 - jun - 00\njob 0000102789 details\nsr specialist\nessential functions : in this position candidates will model , run\nmonte - carlo simulations , evaluate capital investments . these investments will\ncover a wide range . candidates will be responsible for the validation of\nmodels as well as insuring the accuracy and integrity of the model and\nunderlying assumptions . the primary focus will be to provide an objective\nvaluation for an investment by identifying and measuring key risk factors\nfrom both a quantitative as well as qualitative perspective . ? understanding\nof valuation techniques applied to equity or structured financial products . ?\nunderstanding of cash flow models and option pricing models . ? proficiency in\nexcel . ? understanding of project finance and risk mitigation techniques . ?\nexperience with financial statement analysis and pro forma statements . ?\nunderstanding of statistics and application to financial analysis .\nessential requirements : na .\npreferred skills : ? understanding of simulation methodologies\nsuch as montecarlo . ? exposure to statistical analysis software such as\ncrystal ball or @ risk . the ideal candidate will possess an undergraduate\ndegree in finance , accounting , or economics and have 2 to 3 years of\nfinancial modeling experience and an mba / cpa .\nspecial characteristics : na .\ncontact : please do not contact the hiring manager . please no\nfaxes . send resumes via e - mail to corpjobsl @ enron . com or mail to enron , attn :\ntvasut - eb 3628 , 1400 smith st . , houston , tx 77002 . please refer to job #\n102789\njob id 0000102789\ndepartment capital pricing / risk an\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 17 - mar - 00\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.952+0000", "entityId": 7835, "properties": {"text": "Subject: resume greg mikkelson\nvince ,\ni will contact you shortly to confirm that greg is able to make it in\ntomorrow . thanks .\nhave a good day\nchris williams\nena staffing\nx 39866\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chris williams / hou / ect on 07 / 10 / 2000\n10 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : chris williams 07 / 10 / 2000 09 : 52 am\nto : kevin mcgowan / corp / enron @ enron\ncc :\nsubject : resume greg mikkelson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chris williams / hou / ect on 07 / 10 / 2000\n09 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : chris williams 06 / 26 / 2000 09 : 00 am\nto : kevin mcgowan / corp / enron @ enron\ncc :\nsubject : resume greg mikkelson\nkevin ,\nthis is an internal referral from steve douglas . greg does have a good\nresearch background and a pretty impressive education , too . any interest in\nspeaking with him regarding a research type position within your group ?\nchris\nx 39866\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chris williams / hou / ect on 06 / 26 / 2000\n08 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ted c bland 06 / 21 / 2000 06 : 51 am\nto : dave hill / corp / enron @ enron , chris williams / hou / ect @ ect , sheila\nwalton / hou / ect @ ect , larry burton / hou / ees @ ees , daniel\ncc :\nsubject : resume ( ms word )\nplease look over the attached resume . steve douglas referred mr . mikkelson\nto us . sheila , he may have a fit in kaminski ' s group . dave , ? . chris ,\nmaybe coal ' s emmissions group ? . dan , do you see a fit ? larry , an help ?\nthanks . ted\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ted c bland / hou / ect on 06 / 21 / 2000 06 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephen h douglas 06 / 20 / 2000 05 : 39 pm\nto : ted c bland / hou / ect @ ect\ncc :\nsubject : resume ( ms word )\nas discussed .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephen h douglas / hou / ect on 06 / 20 / 2000\n06 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngregory matthew mikkelson on 06 / 20 / 2000 12 : 35 : 40 pm\nto : sdougla @ enron . com\ncc :\nsubject : resume ( ms word )\nhowdy steve .\n- r , sum ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.956+0000", "entityId": 7836, "properties": {"text": "Subject: re : interview request\nkevin ,\nyes , i am available . please send a resume to shirley crenshaw .\nshirley will call you to set up the time .\nvince\nfrom : kevin mcgowan @ enron 07 / 10 / 2000 09 : 28 am\nto : vince j kaminski / hou / ect @ ect , george hopley / hou / ect @ ect\ncc :\nsubject : interview request\ni am trying to schedule an interview with a gentleman who is currently a\nprofessor at rice . we are interested in possibly hiring him in a research\ncapacity in the coal and emissions group . would you have time to interview\nhim tom ' w ? let me know if you can .\nthank you\nkevin mcgowan x - 3 - 7499", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.961+0000", "entityId": 7837, "properties": {"text": "Subject: oleg bodnar\nshirley ,\nplease , put oleg bodnar on jeff shankman ' s and john arnold ' s schedules\nfor an interview . he should be already on john lavorato ' s schedule .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.969+0000", "entityId": 7838, "properties": {"text": "Subject: seminar mugs\nvince :\nour pr staff has put together a great design for the finance seminar\nmugs . we need to get a clean copy of the enron logo , if possible . the\ndesign is in adobe pagemaker if your people can find a logo that can be\npulled into that format . they can send it directly to me and i will make\nsure it gets to the right place .\nthanks so much .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.977+0000", "entityId": 7839, "properties": {"text": "Subject: the main list should be :\nmichael farmer - ceo merchanting ( michael . farmer @ mgmcc . co . uk )\nthomas boettcher ( thomas . boettcher @ mgmcc . co . uk )\nmichael hutchinson - chairman mg ltd ( michael . hutchinson @ mgltd . co . uk )\ntim jones - md mg ltd - head of trading ( tim . jones @ mgltd . co . uk )\nrussell plackett - head of options trading ( russell . plackett @ mgltd . co . uk )\nchristian schirmeister - director of marketing\n( christian . schirmeister @ mgltd . co . uk )\nalex heath - it development ( alex . heath @ mgltd . co . uk )\nphil bacon - head of concentrates trading ( philip . bacon @ mgusa . com )\njo robertson - senior executive ( joe . robertson @ mgusa . com )\ntom mckeever - chairman mg plc ( tom . mckeever @ mgplc . co . uk )\nregards\nvince j kaminski\n07 / 07 / 2000 22 : 04\nto : lloyd fleming / lon / ect @ ect\ncc : maureen raymond / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re :\nlloyd ,\nyes , this would be very useful . i was told that we should not do any official\nbusiness with\nmg until july 15 . i don ' t want to violate those rules of engagement and go\nbeyond casual contacts .\nafter the 15 th all the stops are off .\nvince\nfrom : lloyd fleming 07 / 07 / 2000 01 : 51 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re :\nno problem - i do think this could wait until mg are more closely integrated\nin any case . a useful first step might be an email to relevant trading\nstaff at mg outlining briefly what maureen does and how she can provide a\nservice to them . would you like me to send her a list of potential people to\nemail ?\nregards\nlloyd\nvince j kaminski\n06 / 07 / 2000 23 : 39\nto : lloyd fleming / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , maureen raymond / hou / ect @ ect\nsubject : re :\nlloyd ,\ni think that we can arrange a few video conference meetings instead .\ni don ' t see a justification for extending the stay over the weekend if we\nhave an alternative solution .\nvince\nenron capital & trade resources corp . - europe\nfrom : lloyd fleming 07 / 06 / 2000 12 : 37 pm\nto : vince j kaminski / hou / ect @ ect\ncc : maureen raymond / hou / ect @ ect\nsubject :\nvince\ni met maureen yesterday and had a useful discussion on her role within\nenron . i think it would be very helpful to promote the research group\nfunction of the company , particularly given maureen ' s background , if she\ncould be introduced to some of the main traders down at mg . unfortunately\nshe won ' t have time to meet with mg unless we can schedule some meetings on\nmonday .\nwould you be happy for her to extend her stay here till monday to allow the\nmeetings to take place ?\nregards", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.983+0000", "entityId": 7840, "properties": {"text": "Subject: btu ' s daily power report - eastern edition\nattached is the latest issue of btu ' s daily power report : eastern edition\ne - mail : info @ btu . net\nphone : 732 - 758 - 8222\nfax : 732 - 758 - 8286\n- peo 71100 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.988+0000", "entityId": 7841, "properties": {"text": "Subject: may 9 / 10 , 2000 seminar\nmy name is guillermo c ? novas , and i am regulatory and government affairs\ndirector for enron am , rica del sur ( argentina ) .\ni understand you spoke in a seminar that took place on may 9 / 10 where it was\ndiscussed : 1 ) effective power price modelling ; 2 ) applying a real option\napproach for the valuation of power plants .\none consultant and researcher , who shares enron ' s belief in open markets and\ncompetition ( and therefore is helping us to open argentine energy markets ) ,\nasked me if we could send him a copy of the booklet or slides that you and\nother speakers presented during the seminar .\nif this is feasible , i would appreciate if you could send a copy of the\nmaterial to me at enron am , rica del sur , located at : av . eduardo madero 900 -\npiso 17 ( 1106 ) - buenos aires - argentina\nplease , do not hesitate to contact me should you have any questions or\nrequire further information . i can be reached at the following number :\n5411 - 4891 - 3600\nsincerely ,\nguillermo .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.993+0000", "entityId": 7842, "properties": {"text": "Subject: re : b . brandfass\nbarbara ,\nmy apologies . i was traveling and then we had the usual end of the quarter\npandemonium .\ni am sending you my presentations and would like to get back to you with\nsome questions regarding your products .\nvince\n\" barbara e . brandfass \" on 07 / 10 / 2000 04 : 15 : 33 pm\nto :\ncc : \" amir sadr \"\nsubject : b . brandfass\nhello vince ,\n?\nsorry to be a bother but do you have those materials from your talk in may ?\n?\ni look forward to hearing from you .\n?\nthank you ,\n?\nbarbara e . brandfass , chief of business development\npanalytix , inc . , www . panalytix . com\n212 974 1022 , b @ panalytix . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:41.997+0000", "entityId": 7843, "properties": {"text": "Subject: re : steve leppard\ndale ,\nmy recommendation is to make steve the head of the research unit in london .\nwe were talking originally about september but i think we should accelerate\nthis process .\nof course , anjam will be very unhappy about it , but we cannot manage around\nhim\nany longer .\ni think that the promotion should be combined with a salary increase .\ni would like to offer him a significant increase that\ngoes with expanded responsibilities and much higher visibility .\na salary increase will also bring him closer to the market .\nwe see the market for technical people going through the roof in\npractically every location\nwhere we operate .\na contract is not a good solution in my view . it creates a sense of false\nsecurity for\nboth an employee and the company .\ni shall send a message to john sherriff with my recommendation . i shall cc\nyou .\ni would appreciate if you could bring it up with john as well .\nvince\ndale surbey\n07 / 11 / 2000 10 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : steve leppard\nhi vince ,\nhr is working on a mid - year salary review for london people that have a\nnoticeable gap between their compensation at enron and what we would have to\npay in the market for a replacement . they highlighted steve as someone with\na potential gap - particularly in light of what we ' re seeing in our quant\nrecruiting effort for credit trading and research .\ni ' d like your opinion on the best way to make sure we keep steve happy and\nkeep him at enron . there are several things i see we can do :\n1 ) give him a mid - year pay increase to move him closer to market . i ' m not\nsure this is the best way to go , especially if we only offer him a token\nsalary increase .\n2 ) offer him more responsibility : what are your thoughts on timing for\nmaking steve the official head of the london research team ? with my move to\nebs , should we accelerate this ? i think this is good way to keep him happy\nand motivated , and then follow up with a more meaningful salary review at\nyear - end ( as part of the regular process ) that takes into account his greater\nresponsibility .\n3 ) we have some people that we ' re trying to get under long - term ( 3 - yr )\ncontract with a 12 - month notice clause . obviously anyone signing one of\nthese will want significant up - front compensation for being handcuffed .\nwe ' ve not had a lot of success with these here in london , and i would prefer\nto keep steve happy so he wants to stay with enron rather than contractually\nbinding him to the job .\ni ' d value your thoughts on this .\nthanks ,\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.002+0000", "entityId": 7844, "properties": {"text": "Subject: steve leppard\nhi vince ,\nhr is working on a mid - year salary review for london people that have a\nnoticeable gap between their compensation at enron and what we would have to\npay in the market for a replacement . they highlighted steve as someone with\na potential gap - particularly in light of what we ' re seeing in our quant\nrecruiting effort for credit trading and research .\ni ' d like your opinion on the best way to make sure we keep steve happy and\nkeep him at enron . there are several things i see we can do :\n1 ) give him a mid - year pay increase to move him closer to market . i ' m not\nsure this is the best way to go , especially if we only offer him a token\nsalary increase .\n2 ) offer him more responsibility : what are your thoughts on timing for\nmaking steve the official head of the london research team ? with my move to\nebs , should we accelerate this ? i think this is good way to keep him happy\nand motivated , and then follow up with a more meaningful salary review at\nyear - end ( as part of the regular process ) that takes into account his greater\nresponsibility .\n3 ) we have some people that we ' re trying to get under long - term ( 3 - yr )\ncontract with a 12 - month notice clause . obviously anyone signing one of\nthese will want significant up - front compensation for being handcuffed .\nwe ' ve not had a lot of success with these here in london , and i would prefer\nto keep steve happy so he wants to stay with enron rather than contractually\nbinding him to the job .\ni ' d value your thoughts on this .\nthanks ,\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.007+0000", "entityId": 7845, "properties": {"text": "Subject: sharad agnihotri : telephone chat following the offer\nhi kate ,\nthanks for setting up the telephone informal discussion with sharad so that i\ncan make him more comfortable with what ' s on offer - i really think it will\nmake the difference . as you mentioned , the agency fee goes up from 25 % to\n30 % at 50 , 000 , hence the offer of 49 , 000 . i guess , as you mentioned , we can\nkeep in reserve the possibility of an element of sign on bonus to get him\nover the decision hump .\nregards & thanks ,\nanjam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.011+0000", "entityId": 7846, "properties": {"text": "Subject: reimbursement of individually billed items\nthe memo distributed on june 27 on reimbursement of individually billed items\nrequires\nclarification . the intent of the memo was to give employees an alternate\nmethod\nof paying for pagers , cell phones , etc . employees can continue to submit\nthese\ninvoices to accounts payable for processing or pay these items with their\ncorporate\namerican express card and request reimbursement through an expense report .\neither\nway is an acceptable way to process these small dollar high volume invoices .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.017+0000", "entityId": 7847, "properties": {"text": "Subject: re : ganapathy ramesh\nrick ,\nthe it person tanya would like to have dedicated to the mg effort is\nganapathy ramesh .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 11 / 2000\n02 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntanya tamarchenko\n07 / 11 / 2000 02 : 41 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : ganapathy ramesh\nvince ,\nramesh is he it guy , who can help us with mg var .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.021+0000", "entityId": 7848, "properties": {"text": "Subject: resume of a former fx trader\ni am forwarding the resume of wendell licon who works for enron\nin the hr department ( executive compensation ) . he used to be an\nfx trader . i am thinking about moving him to research when his current boss\nis ready to release him .\ni think , however , that you\nshould take a look at him as well and see if he fits your needs .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 11 / 2000\n04 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwendell licon @ enron\n07 / 11 / 2000 04 : 04 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : resume\nvince ,\nper your request , i ' ve attached a copy of my resume . please let me know if\nyou have any questions .\nregards ,\nwendell", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.026+0000", "entityId": 7849, "properties": {"text": "Subject: re : baylor professors lunch\nbeth ,\ni would appreciate it . see you at 11 : 45 tomorrow .\nvince\nfrom : beth miertschin 07 / 11 / 2000 03 : 05 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : baylor professors lunch\nyes vince , i will drive and you are welcome to ride with me if you would\nlike . i can meet you in the lobby about 11 : 45 tomorrow .\nbeth\nvince j kaminski\n07 / 11 / 2000 02 : 51 pm\nto : beth miertschin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : baylor professors lunch\nbeth ,\nthanks . you can always track me down on my cell phone\n713 410 5396 in case i am mia .\nalso , will you drive ? please , let me know .\nvince\nfrom : beth miertschin 07 / 11 / 2000 02 : 26 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : baylor professors lunch\ntry this vince and i ' m sorry !\nbeth\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beth miertschin / hou / ect on 07 / 11 / 2000\n02 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beth miertschin 07 / 11 / 2000 09 : 40 am\nto : mitchell taylor / corp / enron @ enron , bill w brown / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : shelly jones / hou / ect @ ect , geynille dillingham / hou / ect @ ect , sheila\npardo / hou / ect @ ect\nsubject : baylor professors lunch\nthe lunch with the baylor professors will be tomorrow , july 12 th , at\ndamian ' s . the reservation is for 12 : 00 pm and you are welcome to meet us in\nthe lobby around 11 : 45 or meet us at the restaurant . please let me know\nwhere we should look for you so we don ' t inadvertently leave you .\ni look forward to seeing you all then and thanks for your support and\nparticipation .\nbeth miertschin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beth miertschin / hou / ect on 07 / 11 / 2000\n09 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beth miertschin 07 / 07 / 2000 05 : 01 pm\nto : mitchell taylor / corp / enron @ enron , bill w brown / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : shelly jones / hou / ect @ ect , geynille dillingham / hou / ect @ ect\nsubject : baylor professors lunch\non wednesday , july 12 dr . john martin , chair of finance department , and dr .\nbill petty , chair of entrepreneurship department , of baylor university will\nbe at the enron building to discuss future sponsorship of the texas finance\nfestival and to talk about recruiting .\nthey have asked me to invite all of you to lunch with us on that day so that\nthey might have a chance to visit with you all as well . please let me know\nif you are available for lunch on july 12 at noon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.030+0000", "entityId": 7850, "properties": {"text": "Subject: re : efa meetings\nhey vince ,\nthanks for your reply . i ' ll see what becomes of the session and keep you\ninformed . as to the paper , tim crack and i have a revised version of the\npaper i gave you . we have since found out that by using certainty\nequivalence , our model is more robust . for example , if one has an asset\npricing model that incorporates mean , variance , and skewness ( harvey and\nsiddique , jf june , 2000 ) and a binomial model that incorporates mean ,\nvariance , and skewness ( johnson , paulukiewicz , and mehta , rqfa , 1997 ) , our\nmodel allows you to price options under the real world measure . the\nbenefit is that one can take all of the model parameters from historical\ndata that is non - risk neutralized .\nfrom a pricing perspective , there isn ' t a tremendous benefit in a\nmean - variance world ( variance stays the same in risk neutral or risky\nmeasure ) . however , in the mean - variance - skewness world , there is a benefit\nbecause we do not believe ( although we ' re still hunting down an appropriate\ncite ) skewness is the same under risk - neutral and risky measure . given we\ncan only measure the skewness in our risky world , our model becomes much\nmore significant .\ni would certainly appreciate comments on the version of the paper you\nhave and would also pass on the new version of the paper if you would like\nto see it .\nthanks again ,\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.035+0000", "entityId": 7851, "properties": {"text": "Subject: re : efa meetings\ntom ,\nthanks for your message .\ni shall be glad to attend the meeting ( of course a lot may happen between\nnow and then and we may have many unexpected developments\nin a company as dynamic as enron ) .\ni want to get back to you at some point with comments on your paper .\nvince\ntom arnold on 07 / 03 / 2000 05 : 19 : 48 pm\nto : vkamins @ enron . com\ncc :\nsubject : efa meetings\nhello vince ,\na colleague and i are hoping to have a panel discussion on energy\nsecurities for the coming eastern finance association meetings ( april\n25 - 28 , 2001 in charleston , south carolina ) . i was wondering if you or\nsomeone you know at enron would be interested in participating in such a\nmeeting . i realize that you may not be able to plan this far in advance\nand would certainly not be offended in the least if you cannot participate .\nwe already appreciate you taking time out of your schedule this past\nsemester to visit lsu .\ni hope all is going well and wish you continued success in your ventures ,\ntom arnold", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.039+0000", "entityId": 7852, "properties": {"text": "Subject: re : var priorities\nvince\nthanks for the quick response . agree on # 5 just bear in mind it says scope\nnot implement so it is more of a development of a project .\nre ; mg i will keep tanya apprised of travel plans and give her the option to\nbe in or out as you two see fit .\nted\nvince j kaminski\n07 / 11 / 2000 03 : 57 pm\nto : ted murphy / hou / ect @ ect\ncc : tanya tamarchenko / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : var priorities\nted ,\nitem # 5 will require help from it . my understanding is that currently we are\nreceiving the\npositions aggregated to a daily level .\nalso , i talked to tanya about visiting mg in new york . she is leaving for\nvacation on the 26 th of july\nand can go for a day to nyc prior to this date .\ni think that it makes a lot of sense for her to visit mg and to kick\nthe tires . i asked her to coordinate the trip with you : it makes sense\nfor both of you to go together . i may join you depending on my availability .\nvince\nfrom : ted murphy\n07 / 11 / 2000 03 : 20 pm\nto : vince j kaminski / hou / ect @ ect , john sherriff / lon / ect @ ect\ncc :\nsubject : var priorities\nvince / john ,\nbelow is a brief summary of near - term projects for the enhancement of var and\nthe use of var . as you can tell some are not directly research issues ( some\nrequire the guidance but not direct work product ) , and are very north\namerican wholesale - centric .\nvince ,\ni think that the only one in which progress requires your input to get kick\nstarted is # 5 . all others are in progress with tanya / grant involved through\njeff shankman ' s regular meeting .\nwe would like to get your input as to your priorities ( we were thinking top\n5 ? ) and then start knocking some of them out . it is not meant to be\nexhaustive and is focused on fixes as opposed to overhauls .\nthanks\nted\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ted murphy / hou / ect on 07 / 11 / 2000 03 : 10 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ted murphy\n06 / 28 / 2000 07 : 45 am\nto : rick buy\ncc :\nsubject : var priorities\nrick ,\nthis is my initial attempt to summarize our meeting with john . the next\nsteps would be to solicit feedback from other interested parties and scope\nthe resources and responsibilities .\nted\nrick buy , john lavorato and i met to discuss priorities as it relates to the\ncalculation of var . we are making the following recommendations\n1 ) inclusion of monthly index positions into var calculations as the\nindicies set in north american natural gas\n2 ) development of a methodology to re - run correlations ( factor loadings )\nincluding criteria , responsibilities and acceptance / rejection criteria\n3 ) development of process by which to analyze the output of factor loading\nprocess . database to store output and management reports .\n4 ) finalize debate on the calculation of forward / forward volatility\n5 ) scope a project to analyze the possibility of calculating hourly\nvolatility for power .\nit was further recommended that we continue to not include unpriced index\npositions in var calculation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.044+0000", "entityId": 7853, "properties": {"text": "Subject: timesheets\nhello everyone :\nwell it is almost that time again ! i am going to try something different . i\nam\nforwarding you the time sheet by email . save the document to whatever\ndrive you want to and then fill out any off duty time or overtime that you\nhad\nand return to me by email . i will need this by the 15 and 30 ( or 31 st ) of\neach\nmonth .\nthis may work better than hand delivering .\nlet me know what you think .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.049+0000", "entityId": 7854, "properties": {"text": "Subject: associate prc , martin lin\ndave ,\nyou are representing martin lin , an associate currently in the research\ngroup , at the mid - year prc . we would like to promote martin to a manager\nposition in the research group , so you will need to nominate him for\npromotion at the prc meeting for us .\nmartin has spent the last four months supporting ebs . his primary project\nhas been development of a simulation model for analyzing the capability of\nthe media - cast product running on the ebs network . this type of analysis is\ncritical to understanding what types of bottlenecks we might encounter in\ntrying to service , for example , the blockbuster deal . martin has already\ncome up to speed so that he is able to largely replace an expensive\ncontractor from lucent who is under contract to support this modelling\neffor . prior to supporting ebs , martin used his engineering skills ( b . s .\ncaltech , ph . d . u . of texas in ee ) to create models of regional power\ntransmission networks in order to better understand possible congestion\nconstraints .\nin our internal pre - ranking meeting we felt that martin was deserving of a\nrating of superior due to his technical excellence , his excellent attitude\nand work ethic , and his ability to move projects forward with minimal\nsupervision .\nregards ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.054+0000", "entityId": 7855, "properties": {"text": "Subject: tw capacity options\nwe ' re at the point in the project where we are soliciting comments on a draft\nferc filing we ' d like to file at the end of the month . if you would , please\nreview our filing , with particular emphasis on product definition , position\nmanagement and how we described in footnote [ generally ] how the marketplace\nwould evaluate the option fees .\nyou help in this project is greatly appreciated .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffery fawcett / et & s / enron on 07 / 12 / 2000\n03 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : susan scott 07 / 12 / 2000 03 : 19 pm\nto : steven harris / et & s / enron @ enron , jeffery fawcett / et & s / enron @ enron , kevin\nhyatt / et & s / enron @ enron , lorraine lindberg / et & s / enron @ enron , tk\nlohman / et & s / enron @ enron , michele lokay / et & s / enron @ enron , christine\nstokes / et & s / enron @ enron , bill cordes / et & s / enron @ enron , mary kay\nmiller / et & s / enron @ enron , julia white / et & s / enron @ enron , shelley\ncorman / et & s / enron @ enron , sstojic @ gbmdc . com , mary darveaux / et & s / enron @ enron ,\nglen hass / et & s / enron @ enron , drew fossum @ enron , john\nbuchanan / et & s / enron @ enron , ramona betancourt / et & s / enron @ enron\ncc : tony pryor / et & s / enron @ enron , brian hensley / et & s / enron @ enron\nsubject : tw capacity options\nattached for your review is a draft of transport options filing that\nincorporates the comments and suggestions i ' ve received since last week .\nplease provide any further suggestions / changes to me as soon as possible , but\nin no case later than close of business , friday , july 14 .\nthe timeline i ' ve discussed with tw commercial for this project is as follows :\nfinal draft comments friday , july 14\ncirculate draft to customers ,\ncustomer meetings , time for\ncustomers to respond , informal\ndiscussion with ferc mon . july 17 - wed . july 26\nfinal internal review / edit of filing thursday , july 27\nferc filing monday , july 31\nplease let me know your comments on this proposed timeline as well . thank\nyou .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.060+0000", "entityId": 7856, "properties": {"text": "Subject: re : pre - submitted question on espeak\nerin ,\na book by martha amram and nalin kulatilaka is an excellent\nnon - technical introduction to real options and it contains all the most\nimportant\nreferences to more advanced books and papers .\nthe book has an endorsement by jeff skilling on the cover page .\nthe research group offered several one - day seminars on real options\nand applications to the energy industry . we still have a few binders with\nthe presentation materials available if you are interested .\nwe plan to repeat the seminar sometimes in the fall .\nthe first part of the seminar ( about 4 hours in the morning ) covers general\nconcept of real options\nand their applicability to the energy business .\nthe second , more technical afternoon session , covers stochastic processes used\nto model price uncertainty in the energy markets and specific case\nstudies ( valuation of natural gas storage facilities and of peaking gas - fired\npower plants ) .\nthe real options approach has been developed specifically to address the\nproblem of making\ninvestment decisions under uncertainty . nobody in this field claims that this\nis a\nperfect tool , but it represents a significant progress compared to other\ntechniques developed\nearlier .\ndiscounted cash flow analysis that tries to incorporate uncertainty through\nanalysis of several , in most cases , arbitrary scenarios ( most likely ,\noptimistic ,\npessimistic ) . these scenarios don ' t identify explicitly the risk drivers\nand don ' t specify the future proactive management decisions .\nthe real , option approach is very powerful because it allows to ( 1 ) capture\nuncertainty in an explicit way and ( 2 ) to design investment projects that\nallow to exploit future positive developments and reduce future exposures to\ndownside risk .\nthis approach allows also create a link between investment decisions and\nfuture\noperational decisions . forward - looking investment decisions create options\nthat are exercised\nin the future through active management of a project .\nthe real options technology relies heavily on advanced statistical tools to\ncome\nup with the representation of future possible states of the world . the real\nchallenge is\nto use these tools in a sensible way . i have seen in my career ( almost 30\nyears\nof applying mathematical tools to business and economic problems ) many quants\narmed with\npowerful computers who reminded me of monkeys armed with hammers . the\nchallenge is not\nto run mechanically thousands of simulations based on arbitrary assumptions\nbut to translate in a creative way the insights of people who understand\nspecific businesses\ninto parsimonious quantitative models . it is especially critical to\nstress - test the assumptions\nof any model and to ask the question if the outcome of a model depends\ncritically on any set of assumptions .\nif this is the case one should use common sense to examine the underlying\nassumptions .\ni remember that in the early eighties quite a few models simulated the\ndynamics of oil prices ,\nbut all the stochastic scenarios represented fluctuations around a very\noptimistic upward trend .\none would have been better off stepping back and asking a simple question\nwhat economics 101\nteaches about cartels and the dynamics of supply and demand .\nenron north america corp .\nfrom : erin rice @ enron 06 / 27 / 2000 03 : 52 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : pre - submitted question on espeak\ngood news ! there is already a question waiting for your july 12 espeak\nsession . i have pasted it below , although you don ' t have to respond until\nthe actual event . don ' t forget to send a bulleted list of discussion topics\nif you would still like us to advertise the event on the elevator screens .\nthanks .\n- er\nsubmitted by breineck\ni was doing some reading about the application of real options in the\nevaluation of non - financial assets . would you recommend any texts or articles\nfor a\nmore in - depth study of this area ? is quantification of risk or uncertainty\nthe major challenge in using this concept ? can statistical tools be used with\nthis to do\na sort of sensitivity analysis ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.065+0000", "entityId": 7857, "properties": {"text": "Subject: thank you\nbill / mitch / vince ,\ni just wanted to personally thank you all for joining us today for lunch . we\nhave much to look forward to at baylor and with the dedication i ' ve already\nwitnessed , it looks like we are headed in the right direction .\nthank you again for your support\nshelly jones\nassociate & analyst program", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.073+0000", "entityId": 7858, "properties": {"text": "Subject: interview schedule for jeff lei he\nattached please find the interview packet for the above - referenced person .\nthe interview will happen friday july 14 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsean\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.080+0000", "entityId": 7859, "properties": {"text": "Subject: our meeting\nvince :\ni enjoyed meeting you last week to discuss my application to join your group .\nplease keep my inquiry confidential for now .\nif selected , i think your group would greatly benefit from my diverse\nskill - set including modeling skills utilizing excel , access , and\nbloomberg as well as graphing , statistical , and other quantitative abilities ,\nespecially in the meteorology field .\ni am particularly interested in being able to discover vital information\nwhich may affect the markets ( e . g . pulp / paper , interest rates , weather ) as\nwell as arriving at a new variable which captures all market variables into\none which may be followed and forecasted for each of the groups .\nfurthermore , i am truly committed to adding value to your group , including\nmaking significant contributions ,\nand am sanguine about my ability to ensure that these achievements are\nwell - received .\ni have met many people at enron thus far and am able to utilize these\nstrategic alliances by knowing who may be able\nto assist your group in the quest for information on different projects . by\naccessing information quickly , both internal and\nexternal to the firm , the group would be able to extraordinarily benefit from\nthis diligence in addition , by seeking greater efficiencies in my work ,\ni have been able to be instrumental in accumulating additional\nresponsibilities .\nmost importantly , i have the mathematical acumen and insight to ensure the\ncontinued growth and prosperity of your group .\nas a research - oriented individual , i am clearly interested in pursuing a\nposition in your group .\nif selected , i would be able to bring my diverse experience , including\nfinancial modeling and derivatives , from my tenure at\nenron and cibc world markets .\ni look forward to meeting with select members of your group .\nthanks ,\ndavid\n3 - 3528", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.086+0000", "entityId": 7860, "properties": {"text": "Subject: re : giuseppe cell phone\nstinson ,\nno problem .\nvince\nstinson gibner\n07 / 12 / 2000 11 : 26 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : giuseppe cell phone\nvince ,\ncan i loan to giuseppe my cell phone for the summer ?\nstinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 07 / 12 / 2000\n11 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : samer takriti @ enron communications on 06 / 28 / 2000 10 : 49 am\nto : stinson gibner / hou / ect @ ect @ enron\ncc :\nsubject : re : bandwidth trading feature set\ni will be on the call . i may disconnect around 4 : 00 to attend the traders '\ndaily meeting .\na couple of issues :\n1 . would it be possible to get gappy a cell phone for the summer ? he does not\nhave a phone at home . i think the reason for avoiding installing a phone in\nhis apartment is the increasing cost of his houston stay .\n2 . it is getting noisier here . gappy and i are wandering if we could get\noffice space downstairs ( that we share ) . we will maintain presence on 44 , but\nwe will be able to discuss when needed .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.091+0000", "entityId": 7861, "properties": {"text": "Subject: timesheets\nhello all :\ni am afraid i did not allow enough time to do the time sheets by asking for\nthem by the 15 th and 31 st . i really need these sheets by the 13 th and 28 th\nof each month as it takes a good half day to enter all the new times in the\ntime sheets .\ni am resending this , because as of now i have received very few timesheets\nand i really need to start imputting the time .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 07 / 12 / 2000\n11 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n07 / 11 / 2000 03 : 12 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , grant masson / hou / ect @ ect ,\ntanya tamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , alexios\nkollaros / hou / ees @ ees , martin lin / hou / ect @ ect , maureen raymond / hou / ect @ ect ,\nosman sezgen / hou / ees @ ees , paulo issler / hou / ect @ ect , patricia\ntlapek / hou / ect @ ect , farouk lalji / hou / ect @ ect , amitava dhar / corp / enron @ enron ,\nalex huang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , yanna crystal / corp / enron @ enron , jose\nmarquez / corp / enron @ enron , samer takriti / corp / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron , elena chilkina / corp / enron @ enron , cantekin\ndincerler / hou / ect @ ect , brad aimone / na / enron @ enron , datren\nwilliams / na / enron @ enron , sevil yaman / corp / enron @ enron , sofya\ntamarchenko / na / enron @ enron , bob lee / na / enron @ enron , ainsley\ngaddis / na / enron @ enron , gwyn koepke / na / enron @ enron , guiseppe\npaleologo / na / enron @ enron , hector campos / hou / ect @ ect , anita\ndupont / na / enron @ enron , youyi feng / na / enron @ enron , v charles\nweldon / hou / ect @ ect\ncc :\nsubject : timesheets\nhello everyone :\nwell it is almost that time again ! i am going to try something different . i\nam\nforwarding you the time sheet by email . save the document to whatever\ndrive you want to and then fill out any off duty time or overtime that you\nhad\nand return to me by email . i will need this by the 15 and 30 ( or 31 st ) of\neach\nmonth .\nthis may work better than hand delivering .\nlet me know what you think .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.096+0000", "entityId": 7862, "properties": {"text": "Subject: re : confidential\nyannis ,\nyes , very much . please stop by this week or during the week\nof the 24 th . i am in australia next week .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.101+0000", "entityId": 7863, "properties": {"text": "Subject: re : steve leppard\nvince ,\ni agree - i ' ll talk with sherriff when he gets back to london next week .\n- dale\nvince j kaminski\n11 / 07 / 2000 20 : 49\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : steve leppard\ndale ,\nmy recommendation is to make steve the head of the research unit in london .\nwe were talking originally about september but i think we should accelerate\nthis process .\nof course , anjam will be very unhappy about it , but we cannot manage around\nhim\nany longer .\ni think that the promotion should be combined with a salary increase .\ni would like to offer him a significant increase that\ngoes with expanded responsibilities and much higher visibility .\na salary increase will also bring him closer to the market .\nwe see the market for technical people going through the roof in\npractically every location\nwhere we operate .\na contract is not a good solution in my view . it creates a sense of false\nsecurity for\nboth an employee and the company .\ni shall send a message to john sherriff with my recommendation . i shall cc\nyou .\ni would appreciate if you could bring it up with john as well .\nvince\ndale surbey\n07 / 11 / 2000 10 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : steve leppard\nhi vince ,\nhr is working on a mid - year salary review for london people that have a\nnoticeable gap between their compensation at enron and what we would have to\npay in the market for a replacement . they highlighted steve as someone with\na potential gap - particularly in light of what we ' re seeing in our quant\nrecruiting effort for credit trading and research .\ni ' d like your opinion on the best way to make sure we keep steve happy and\nkeep him at enron . there are several things i see we can do :\n1 ) give him a mid - year pay increase to move him closer to market . i ' m not\nsure this is the best way to go , especially if we only offer him a token\nsalary increase .\n2 ) offer him more responsibility : what are your thoughts on timing for\nmaking steve the official head of the london research team ? with my move to\nebs , should we accelerate this ? i think this is good way to keep him happy\nand motivated , and then follow up with a more meaningful salary review at\nyear - end ( as part of the regular process ) that takes into account his greater\nresponsibility .\n3 ) we have some people that we ' re trying to get under long - term ( 3 - yr )\ncontract with a 12 - month notice clause . obviously anyone signing one of\nthese will want significant up - front compensation for being handcuffed .\nwe ' ve not had a lot of success with these here in london , and i would prefer\nto keep steve happy so he wants to stay with enron rather than contractually\nbinding him to the job .\ni ' d value your thoughts on this .\nthanks ,\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.106+0000", "entityId": 7864, "properties": {"text": "Subject: monte - carlo library\nstinson ,\ni have created a directory ( o : \\ research \\ common \\ projects \\ options \\ mclib )\nto hold our monte - carlo models we developed in the past .\ni have the following mc models :\n1 . asian option with two - point vol structure\n2 . asian barrier option\n3 . asian spread option\n4 . time spread option\n5 . asian digital option\ndo we want to include models using american monte - carlo ?\ni have\n1 . american spread option\n2 . option on min or max of n assets with n as an input\n3 . omicron option model with 3 price processes\ni suggest that all of us save a copy of monte - carlo models in this directory ,\nfrom these ,\nwe can build a general monte - carlo library . we can also calculate the mc\ngreeks more\nefficiently now .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.111+0000", "entityId": 7865, "properties": {"text": "Subject: powerisk 2000 - october 3 rd - 6 th - paris\ndear mr kaminski\ni am delighted to say that the printed conference brochure is now available\nand our logistics team will be mailing them out , along with the speaker\nguideline packs ( including information on hotel discounts etc ) , in the next\ncouple of weeks . you will also no doubt receive copies via our main mailing\ncampaign .\nin the interim , please find attached a shortened pdf copy of the conference\nbrochure for your perusal . ( i did not want to send you the complete 12 pages\nas it would clog up your email ! ) the full colour version can be found on our\nwebsite at www . icbi . uk . com / powerisk\ni hope you agree that the speaker plenum and line - up of topics is possibly\none of the best ever and not surprisingly the event is already drawing strong\ninternational interest . in particular the executive summit day on e - business\nand power trading is taking numerous bookings . i would be happy for you to\nattend either the summit day or one of our two intensive post conference\nworkshops , but in order to avoid overcrowding on the day ask that all\nreservations be made in advance .\ni am certain that you have friends or colleagues who would be interested in\nattending the conference this year , and would like to ask that you email the\nenclosed details to them . to make things easy , i have attached a booking form\nwhich should be faxed to + 44 20 7915 5101 . icbi would be happy to offer a 10 %\ndiscount on registrations received through speaker recommendations .\nfinally for any enquiries relating to travel or hotel matters please contact\nour logistics manager clare capel on + 44 20 7915 5198 . of course for any\nprogramme related issues , please drop me an email or call me on + 44 20 7915\n5194 .\ni look forward to seeing you in october for what promises to be excellent and\ninformative week .\nkind regards\nrosemary fitzgerald\ndirector , powerisk 2000\n+ 44 20 7915 5194\nfax : + 44 20 7915 5101\nemail : rosef @ icbi . co . uk\n!\n- poweriska 300 . pdf\n- speakerreg . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.116+0000", "entityId": 7866, "properties": {"text": "Subject: re : sharad update\nhi kate ,\nfirstly it was very useful to hold the informal discussion with him . sharad\nseemed hesitant due to the offer not being what he expected . he asked me\nsome questions about the \" bonus culture \" at enron and suggested that it was\nnot as good as at investment banks that he is interviewing with . i sold him\non the value he can extract from the excellence within the research group and\nthe ability to join a growing organisation at a critical point in , but he\nstill seemed reticent saying that he \" needs time \" which i understood to mean\nthat he was looking for a better offer elsewhere . he is a great candidate\nand it would be a real shame to lose him , given the difficulty of getting\ngood candidates .\ni discussed this with vince and given how much we need him in research in\nlondon and vince agreed to discuss the possibility of an element of guarantee\nor sign on to help him make the right decision .\ni think vince will call you or dale to discuss this .\nregards ,\nanjam\ntel : 713 345 9991\n[ p . s . vince , kate bruges is on extension 37354 , dale is on 36726 ]\nkate bruges\n13 / 07 / 2000 11 : 02\nto : anjam ahmad / lon / ect @ ect\ncc :\nsubject : sharad\nhi anjam\nhow did your conversation go yesterday ?\nregards\nkate", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.122+0000", "entityId": 7867, "properties": {"text": "Subject: organizational announcement : industrial origination , ctg , and ena\ntreasury\neffective immediately , ray bowen will take over leadership of the industrial\norigination group responsible for enron north america \u0001 , s origination\nactivities in the industrial market including pulp & paper , metals , refining ,\nand petrochemicals . as part of the industrial origination group , jim ajello ,\nwill continue to lead the origination effort in the metals , refining , and\npetrochemical sector . edward ondarza maintains oversight of origination in\nthe pulp and paper sectors . rodney malcolm retains primary responsibility\nfor leading the execution of transactions and delivery of the outsource\nsolutions to industrial customers .\nwhen the commercial transactions group was created approximately a year ago ,\nthe objective was to create an internal emphasis on the development of\ntransaction execution skills that are necessary to execute complex ,\nstructured transactions and to foster better deal quality . we believe that\nthe primary objectives of the ctg have been achieved , and in order to better\nposition the organization for the remainder of 2000 and in response to ray\nbowen \u0001 , s new position , the following changes will be made in the commercial\ntransactions group organization .\ntransaction development : transaction development , which was created to\nprovide focused deal execution capability to the origination groups , will be\nmerged into each respective origination group and report solely to the group\nleaders .\nportfolio management : all activities surrounding portfolio investments will\nreport to jeff donahue . jeff will be responsible for ena \u0001 , s \u0001 & capital book \u0001 8\nand will have a high level of involvement in existing portfolio investments\nand will work closely with ena treasury and the various origination groups to\nassure that new transactions ( a ) incorporate appropriate risk / return\ncharacteristics , ( b ) are evaluated in the context of market based pricing\nsignals , and ( c ) incorporate a specific investment plan which includes\nsyndication of the investment , if applicable , and a specific exit strategy .\nportfolio management includes restructuring / special assets ( randy\nmaffett / dick lydecker ) and capital structuring ( andrea reed ) . steve pruett\n( energy capital resources ) , chuck ward ( generation investments ) , don miller\n( merchant generation ) , and chris helfrich ( coal and industrial ) will continue\nto be responsible for day to day asset management for performing investments\nand will report to their respective origination units with a dual report to\njeff . jeff will retain his corporate development and principal investments\nactivities .\ncommodity structuring : commodity structuring including berney aucoin ( power )\nand ed mcmichael ( gas ) will report to janet dietrich . janet will retain\nresponsibility for east midstream origination . commodity structuring will\ncontinue to work to facilitate and structure the highest priority and highest\nvalue transactions across the entire ena organization .\ntechnical / oec : the technical group ( wayne mays / bob virgo ) , which provides\ntechnical support to industrial and power generation asset development\nactivities , and oec ( lead by mark dobler ) will report directly to the ena\noffice of the chairman .\nin addition to these changes , joe deffner has been named ena \u0001 , s chief\nfinancial officer and will head ena treasury . in this role he will be\nresponsible for managing ena \u0001 , s balance sheet and the sourcing of capital in\nthe bank and capital markets . joe will report jointly to the ena office of\nthe chairman and to enron corp . global finance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.127+0000", "entityId": 7868, "properties": {"text": "Subject: updating your profile information in the gis system\nas the global vp / md mid - year prc draws closer , i want to take the opportunity\nto stress to you the importance of updating your profile information in the\ngis system . details on your current responsibilities , employment history ,\nskills and education should have been updated by 7 july 2000 . for those of\nyou that have not opened your profile in gis , i urge you to do so as soon as\npossible to ensure that your profiles are current and complete .\ngis is accessible via the hrweb home page on the intranet . you may go to\nhrweb . enron . com and look for the gis link , or just type eglobal . enron . com on\nthe command line of the browser .\nyour timely response to this request is greatly appreciated .\nthank you ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.132+0000", "entityId": 7869, "properties": {"text": "Subject: feedback from your espeak\nvince :\ni had a phone call from joe phelan late yesterday . he was thrilled that you\nhad answered his question so thoroughly . i ' ve talked to a few other people\nwho really got a lot out of your session , including someone who wants to come\nwork for you !\nthanks , again , for giving us some of your time .\n- er", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.137+0000", "entityId": 7870, "properties": {"text": "Subject: resume for wichai narongwanich\ni was able to retrieve his resume . please print out a hard copy for your\nfiles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.142+0000", "entityId": 7871, "properties": {"text": "Subject: interview schedule for wichai narongwanich\nattached please find the interview packet for the above - referenced person .\nthe interview will happen friday july 14 , 2000 . please print both documents\nfor your hard copies . hardcopies of the resume will be delivered via runner .\nif you have any questions , or conflicts of schedule , please do not hesitate\nto contact me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.147+0000", "entityId": 7872, "properties": {"text": "Subject: names\nsheila ,\ni am attaching the list of people who are top retention priority .\nthe list is in the spreadsheet and the names are in the highlighted cell\n( red background ) .\ni am also attaching the resume you asked for .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.153+0000", "entityId": 7873, "properties": {"text": "Subject: re : request for suggestions : vince ' s visit to sydney in july\nraymond ,\ni shall call you on sunday after my arrival in sydney .\nlook forward to meeting you again .\ni shall be ready to speak on all the topics you mentioned .\nvince\nraymond yeow @ enron _ development\n07 / 09 / 2000 09 : 07 pm\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development @ enron _ development , shirley crenshaw @ ect\nsubject : re : request for suggestions : vince ' s visit to sydney in july\ndear vince ,\nafter getting our heads together here ,\nwe would much apprecaite if you could share the research group ' s latest on\n- - -\n- var ie \" . . . repeat my workshop presentation on value - at - risk . . . \"\nas well as cover additional topics viz .\n- discuss , with application , enrons internal v @ r model , and how this is used\ninternally .\n- discuss volatility modelling , and whether it is possible to maintain and\ntrade a term structure of volatility in electricity\n- modelling forward curves with reference to associated markets ( eg oil ) .\ncan we gain some insights through spreads to related market curves ( spark ) .\ni assume your hotel is booked already . catching the taxi is the best way to\nget to your hotel .\nsince you are arriving on the weekend , if you need to contact me - my mobile\nis 0417 - 692295 , home tel / fax\nis 9232 - 8892\nrgds raymond\n- - - - - - - - - - - - - - - - - - - - - - forwarded by raymond yeow / enron _ development on\n07 / 07 / 2000 04 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n07 / 06 / 2000 09 : 20 am\nto : paul quilkey / enron _ development @ enron _ development\ncc : raymond yeow / enron _ development @ enron _ development , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : your visit to sydney in july\npaul , raymond ,\nthanks for your message .\nsorry i did not get in touch with you earlier . the last few weeks were very\nhectic . i am starting\nright now my preparations for the presentation i am going to give at the\nconference .\nhere are the details of my itinerary ( i shall send you a copy tomorrow ) . i\narrive sunday morning\nand leave saturday morning . the conference takes place on monday and tuesday .\non wednesday , i am making a presentation at the workshop on value - at - risk . i\nwould\nlike to stay at the conference for the duration : it ' s a great learning\nopportunity for me .\non thursday and friday , as well as in the evenings ( except for the evening\nof july 18 ) , i am at you disposal .\ni would like to take advantage of this trip and learn as much as i can\nabout the australian markets and discuss with you the research agenda .\ni shall be glad to make several presentation .\ni can repeat my workshop presentation on value - at - risk as well as cover\nadditional\ntopics .\nvince\npaul quilkey @ enron _ development\n07 / 04 / 2000 05 : 23 am\nto : vince j kaminski @ ect\ncc :\nsubject : your visit to sydney in july\nvince\ni support raymond ' s email and would welcome the opportunity to have you give\na presentation ( formal or informal ) to the trading group on latest research\ninitiatives in houston . please let us know your schedule so that we do not\noverly burden you during your visit . look forward to seeing you and catching\nup over a beer .\nthnx\npaul\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paul quilkey / enron _ development on\n07 / 05 / 2000 08 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nraymond yeow\n07 / 04 / 2000 08 : 21 pm\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development , kirsty hogarth / enron _ development , elliott\nkatz / enron _ development , david gray / enron _ development\nsubject : your visit to sydney in july\ndear vince ,\nhi ! , it ' s only two weeks until the aust energy risk ( 17 - 19 july ) seminar in\nsydney .\nis risk organising your hotel ?\notherwise , kirsty can organise for you ,\neg harbour view at the regent or convenience to the seminar location at the\nsheraton ?\nwe would like to make sure that you have all the necessary \" comforts \" of home\nwhen you are with us ,\nelliott & david can set up a desk for you in the office / trading room with\nphone etc\nso you can use one of our pc to access email or plug in your laptop .\nplease let elliott or david kmow your requirements .\nhow long will you be with us ?\nis this your first trip to sydney ?\nthere are several of us in the office who would like to take you for a\nmeal ( s ) / show you the sights etc and\ndiscuss the latest research findings with you whilst you are in sydney eg var .\nhear from you soon .\nraymond\n725 pm 4 july", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.158+0000", "entityId": 7874, "properties": {"text": "Subject: assume i will not be chairing . . .\ndear joel ,\nas i have not received any reply yet re email below ,\ni have arranged other appts for myself on monday\nand will not be chairing any seesions .\nrgds raymond\n345 pm ; 14 july\n- - - - - - - - - - - - - - - - - - - - - - forwarded by raymond yeow / enron _ development on\n07 / 14 / 2000 03 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nraymond yeow\n07 / 12 / 2000 07 : 39 pm\nto : \" joel hanley \"\ncc :\nsubject : re : is there any chance you could chair a session at the conference ?\ndear joel ,\nwill be glad to help out but had a look at the stream 2 on monday\nand it is 1120 am - 520 pm covering three sessions ! ! !\ncould i suggest that i take the 1120 am - lunch session and you can find another\nspeaker ( s ) from day 2\nto chair the afternoon session ( s ) .\ni am flexible if you need me to take a different time on the monday .\nrgds raymond\n\" joel hanley \" on 07 / 12 / 2000 03 : 37 : 39 am\nplease respond to \" joel hanley \"\nto :\ncc :\nsubject : is there any chance you could chair a session at the conference ?\nraymond ,\nby the way , is there any chance you could chair a session at the conference ?\nglenn labhart from the us has unfortunately dropped out so i am hoping you\ncould chair stream two on day one ( monday 17 th ) . please let me know asap . it\nwould be a great help is you ' re available .\nbest wishes ,\njoel .\ndirect : + 44 ( 0 ) 20 7484 9885\n?\nwww . riskpublications . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.164+0000", "entityId": 7875, "properties": {"text": "Subject: fyi - lacima run a 2 day course - uts on weather derivatives - first\nw / e sept\n- - - - - - - - - - - - - - - - - - - - - - forwarded by raymond yeow / enron _ development on\n07 / 14 / 2000 08 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" chris strickland \" on 07 / 14 / 2000 05 : 01 : 12 am\nplease respond to \" chris strickland \"\nto : \" shane dallmann \"\ncc : \" julie \" , \" les \" , \" raymond yeow \"\n, \" paul quilkey \"\nsubject : run a 2 day course - uts on weather derivatives - first w / e sept\nhi shane ,\nthanks for your e - mail . we actually sent the 9 of the 11 chapters off to the\ntypesetter today and i will forward you our word documents in the morning .\ni ' ve been travelling a lot to the uk at the moment and so haven ' t spent much\ntime with the student myself . are you going to te energy confernece next\nweek , perhaps we can meet up there ?\ngood to hear about the weather . we are actually going to run a two day\ncourse thru uts on weather derivatives the first weekend of september . feel\nfree to tell your potential clients about it if you think it will bring up\nthe industry knowledge . maybe we can associate your name with the course\nsomehow which might help both of us ?\nc .\n- - - - - original message - - - - -\nfrom : shane dallmann\nto :\ncc : paul quilkey ; raymond yeow\nsent : thursday , july 13 , 2000 1 : 56 pm\n>\n>\n>\n> chris ,\n>\n> how are things going ? i see that you are presenting at australian energy\nrisk\n> 2000 along with vince kaminski who will be out from the us\n>\n> i was wondering how the book is going and whether we ' re likely to get a\ncopy\n> ( just notes would do ) any time soon . or are you still waiting on those\nslack\n> enron people to finish it ? ( maybe you can corner him while he ' s here ) . if\ni\n> remember correctly from when you were here , you were going to give us a\ncopy of\n> the notes and then we were going to sit down and decide what exactly we\nwanted\n> you to cover in an in - house course .\n>\n> paul also told me about a student of yours that was going to get in touch\nwith\n> me but i have not heard anything yet .\n>\n> enron australia is also going to launch weather in the next couple of\nweeks and\n> would like to invite you and les along , so can you send me an address we\ncan\n> send invitations to if you ' re interested .\n>\n> regards ,\n>\n> shane\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.173+0000", "entityId": 7876, "properties": {"text": "Subject: re : agenda for ny mg metals visit\nlloyd ,\nno problem . i wanted to make sure that everybody realizes how\ndetailed - oriented our tasks are\nand that we have to be in direct communication with our counterparties .\nvince\nenron capital & trade resources corp . - europe\nfrom : lloyd fleming 07 / 14 / 2000 10 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc : richard sage / lon / ect @ ect , vince j kaminski / hou / ect @ ect , anjam\nahmad / lon / ect @ ect , bjorn hagelmann / hou / ect @ ect , ted murphy / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : agenda for ny mg metals visit\nvince ,\ni certainly think anjam & tanya should visit ny , but i simply had a concern\nthat some of the questions being asked had already been covered by anjam /\nmyself and andreas but had somehow not been communicated .\nmy message was not intended to convey any another impression . i ' ve also now\nspoken with anjam\n2 . information on exotic options structures ( existing\n3 . the data flow ( are we going to get data from london or ny ) .\n4 a . storage of positions information at mg . how to extract the positions\ninfo from\nmg database into spreadsheets .\n4 b . existing positions structure for each metal .\n5 . introduction to concentrates trading business , key personnel .\nbest regards ,\ntanya & anjam\n713 853 3997", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.180+0000", "entityId": 7877, "properties": {"text": "Subject: see page 1\nbest regards ,\njhherbert\n- gd . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.185+0000", "entityId": 7878, "properties": {"text": "Subject: re : numbers for sharad agnihotri\ndale ,\nto follow up on my earlier message . anjam expressed his concern\nthat sharad is holding off on our offer . i would consider bumping it up to\n55 , 000\nwith a sign - on bonus . we badly need fresh talent .\ni shall be in australia next week . if you need\nany additional intervention from us , please , call stinson .\nvince\nvince j kaminski\n07 / 06 / 2000 08 : 56 am\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : numbers for sharad agnihotri\ndale ,\ni was very impressed with sharad and i think that we should consider paying\noffering him\no 50 , 000 . i am not sure about guaranteed bonus . what do you think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 06 / 2000\n08 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp . - europe\nfrom : anjam ahmad 07 / 05 / 2000 10 : 56 am\nto : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect\ncc : kate bruges / lon / ect @ ect\nsubject : numbers for sharad agnihotri\nhi dale ( i would also like to arrange for a direct reporting line to\nme for sharad .\nregards ,\nanjam\nx 35383\np . s . kate : i have attached the agencies terms and conditions below :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 05 / 07 / 2000 16 : 21\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : alex blair\n05 / 07 / 2000 15 : 29\nto : \" ' anjam ahmad ' \"\ncc :\nsubject : numbers\nanjam ,\n? ? ? ? ? ? ? as requested please find enclosed details on sharad ' s numbers :\n? ? ? ? ? ? ? basic salary : o 40 , 000\n? ? ? ? ? ? ? car allowance : o 3 , 500\n? ? ? ? ? ? ? ( paid in cash )\n? ? ? ? ? ? ? annual bonus : ol 3 , 000 ( this bonus was paid for ? ? ? ? ? ? ?\n99 - 00 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 8 mths work april - dec )\ntotal o 56 , 500\nsharad has been informed that his bonus payments for year 00 - 01 will be\nfloored at o 25 , 000 . ? sharad ' s expectations therefore are to receive a base\nsalary of between o 57 . 5 - o 60 k plus bonus .\ni hope this is of use and ask that if you have any questions that you do not\nhesitate to call .\nalex blair\nsenior consultant\nalex . blair @ alexmann . com\ntel : 0207 891 6671\nfax : 0207 905 1313\nweb :\n\" the alexander mann group has a stated policy for the use of electronic\nmail which is rigorously enforced throughout the group . the contents of\nthis e mail should meet the requirements of the policy - if you would\nlike further details please forward this message to info @ alexmann . com\nor call 0207 242 9000 .\nthe information contained in this electronic mail message is\nconfidential . it is intended solely for the use of the individual or\nentity to whom it is addressed and others authorised to receive it . if\nthe reader of this message is not the intended recipient , you are hereby\nnotified that any use , copying , dissemination or disclosure of this\ninformation is strictly prohibited . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.190+0000", "entityId": 7879, "properties": {"text": "Subject: re : agenda for ny mg metals visit\nhi ted and vince ,\nthank you for conveying our thoughts exactly - tanya and i hope to close the\ncircle with you at 4 pm , ted .\nregards ,\nanjam and tanya\nfrom : ted murphy\n14 / 07 / 2000 16 : 02\nto : vince j kaminski / hou / ect @ ect\ncc : richard sage / lon / ect @ ect , vince j kaminski / hou / ect @ ect , anjam\nahmad / lon / ect @ ect , bjorn hagelmann / hou / ect @ ect , ted murphy / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , stinson gibner / hou / ect @ ect , steve w young / lon / ect @ ect ,\neric gadd / lon / ect @ ect , david port / market risk / corp / enron @ enron\nsubject : re : agenda for ny mg metals visit\ni agree with vince . ideally , this visit would supplement rather than\nduplicate effort . however , on the front end , i would prefer a little\noverkill to underkill - especially with respect to the var process . i would\ndefer to anjam / tanya ' s opinion as to what is necessary to get an initial\ncomfort level . remember that this is the first cut , but it will need to be\nrefined over time to the point where it is credible enough to force someone\nto take a position down based on the calculatiion . if this causes some\nheartburn please refer those people to me .\nted\nvince j kaminski\n07 / 14 / 2000 09 : 04 am\nto : lloyd fleming / lon / ect @ ect\ncc : richard sage / lon / ect @ ect , vince j kaminski / hou / ect @ ect , anjam\nahmad / lon / ect @ ect , bjorn hagelmann / hou / ect @ ect , ted murphy / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : agenda for ny mg metals visit\nlloyd ,\nspeaking from experience , i think that it ' s critical for tanya and anjam to\nvisit mg in new york\nand establish direct relationship with technical people . merging two risk\nmanagement systems\nrequires handling many very technical issues and face to face discussions\nbetween it and quants\nwill be very helpful .\nvince\nfrom : lloyd fleming 07 / 14 / 2000 03 : 42 am\nto : tanya tamarchenko / hou / ect @ ect\ncc : andreas . barschkis @ mgusa . com @ enron , richard sage / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect , anjam ahmad / lon / ect @ ect , bjorn hagelmann / hou / ect @ ect ,\nted murphy / hou / ect @ ect , dale surbey / lon / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : agenda for ny mg metals visit\ntanya ,\ni think most of your queries can be dealt with on the phone - i ' ll be at mg\nwith andreas today and we ' ll call you . most of these points have already\nbeen covered with anjam in any case . i ' m also attaching a file downloaded\nfrom mercur ( mg ' s risk aggregation system ) showing monthly total positions\nfor each metal in each entity . you can fairly easily create tables and graph\nwhat you want to see . we can talk today about getting a full deal download .\nregards\ntanya tamarchenko\n13 / 07 / 2000 22 : 45\nto : andreas . barschkis @ mgusa . com @ enron\ncc : dale surbey / lon / ect @ ect , lloyd fleming / lon / ect @ ect , richard\nsage / lon / ect @ ect , vince j kaminski / hou / ect @ ect , anjam ahmad / lon / ect @ ect ,\nstinson gibner / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , ted\nmurphy / hou / ect @ ect\nsubject : agenda for ny mg metals visit\nhi andreas ,\nhere are the issues we would like to discuss on our thursday meeting in ny :\n1 . inputs for options valuation , in particular the origins of volatility\ncurves ;\n2 . information on exotic options structures ( existing\n3 . the data flow ( are we going to get data from london or ny ) .\n4 a . storage of positions information at mg . how to extract the positions\ninfo from\nmg database into spreadsheets .\n4 b . existing positions structure for each metal .\n5 . introduction to concentrates trading business , key personnel .\nbest regards ,\ntanya & anjam\n713 853 3997", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.195+0000", "entityId": 7880, "properties": {"text": "Subject: re : agenda for ny mg metals visit\ni agree with vince . ideally , this visit would supplement rather than\nduplicate effort . however , on the front end , i would prefer a little\noverkill to underkill - especially with respect to the var process . i would\ndefer to anjam / tanya ' s opinion as to what is necessary to get an initial\ncomfort level . remember that this is the first cut , but it will need to be\nrefined over time to the point where it is credible enough to force someone\nto take a position down based on the calculatiion . if this causes some\nheartburn please refer those people to me .\nted\nvince j kaminski\n07 / 14 / 2000 09 : 04 am\nto : lloyd fleming / lon / ect @ ect\ncc : richard sage / lon / ect @ ect , vince j kaminski / hou / ect @ ect , anjam\nahmad / lon / ect @ ect , bjorn hagelmann / hou / ect @ ect , ted murphy / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : agenda for ny mg metals visit\nlloyd ,\nspeaking from experience , i think that it ' s critical for tanya and anjam to\nvisit mg in new york\nand establish direct relationship with technical people . merging two risk\nmanagement systems\nrequires handling many very technical issues and face to face discussions\nbetween it and quants\nwill be very helpful .\nvince\nfrom : lloyd fleming 07 / 14 / 2000 03 : 42 am\nto : tanya tamarchenko / hou / ect @ ect\ncc : andreas . barschkis @ mgusa . com @ enron , richard sage / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect , anjam ahmad / lon / ect @ ect , bjorn hagelmann / hou / ect @ ect ,\nted murphy / hou / ect @ ect , dale surbey / lon / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : agenda for ny mg metals visit\ntanya ,\ni think most of your queries can be dealt with on the phone - i ' ll be at mg\nwith andreas today and we ' ll call you . most of these points have already\nbeen covered with anjam in any case . i ' m also attaching a file downloaded\nfrom mercur ( mg ' s risk aggregation system ) showing monthly total positions\nfor each metal in each entity . you can fairly easily create tables and graph\nwhat you want to see . we can talk today about getting a full deal download .\nregards\ntanya tamarchenko\n13 / 07 / 2000 22 : 45\nto : andreas . barschkis @ mgusa . com @ enron\ncc : dale surbey / lon / ect @ ect , lloyd fleming / lon / ect @ ect , richard\nsage / lon / ect @ ect , vince j kaminski / hou / ect @ ect , anjam ahmad / lon / ect @ ect ,\nstinson gibner / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , ted\nmurphy / hou / ect @ ect\nsubject : agenda for ny mg metals visit\nhi andreas ,\nhere are the issues we would like to discuss on our thursday meeting in ny :\n1 . inputs for options valuation , in particular the origins of volatility\ncurves ;\n2 . information on exotic options structures ( existing\n3 . the data flow ( are we going to get data from london or ny ) .\n4 a . storage of positions information at mg . how to extract the positions\ninfo from\nmg database into spreadsheets .\n4 b . existing positions structure for each metal .\n5 . introduction to concentrates trading business , key personnel .\nbest regards ,\ntanya & anjam\n713 853 3997", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.200+0000", "entityId": 7881, "properties": {"text": "Subject: 7 - 1 - 00 to 7 - 15 - 00 off duty and overtime report\noops ! forgot to attach !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 07 / 14 / 2000\n11 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n07 / 14 / 2000 11 : 53 am\nto : vasant shanbhogue / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , amitava dhar / corp / enron @ enron , maureen\nraymond / hou / ect @ ect , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , osman sezgen / hou / ees @ ees , elena chilkina / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : 7 - 1 - 00 to 7 - 15 - 00 off duty and overtime report\nattached is the off duty and overtime that was reported to me for the above\npay period . you are the only ones in our group that had these reported .\nplease review and if there is an error , please let me know by next monday\nthe 17 th and i can correct it . otherwise , we cannot correct it until the\nnext pay\nperiod .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.205+0000", "entityId": 7882, "properties": {"text": "Subject: seating on the 32 nd floor\nmike roberts eb 3240 a\njose marquez eb 3240 b\nkevin moore eb 3240 c\nvince kaminski eb 3240 d\npatricia tlapek eb 3240 e\nwilliam smith eb 3240 f\nelena chilkina eb 3240 g\nopen\neb 3239 f\ncharlie weldon eb 3239 e\nopen\neb 3274 a\nopen eb 3273 a\nthese are the only seats we have on the 32 nd floor .\nthe two open spaces are being used by another group temporally .\nif you need additional information please feel free to call x 34710 .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.209+0000", "entityId": 7883, "properties": {"text": "Subject: re : 7 / 14 - - crude oil and nat gas\nfyi\n1 . george hopefully will get us some peaking data soon\n2 . george likes tricia ' s new format ( based on meeting with arnold yesterday\nafternoon which went well )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 07 / 14 / 2000\n07 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge hopley\n07 / 13 / 2000 09 : 07 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : re : 7 / 14 - - crude oil and nat gas\ni thought today ' s analysis was good perspective . i found some records of\npeaking\nproduction which will forward over tomorrow .\ngeorge\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george hopley / hou / ect on 07 / 13 / 2000 08 : 54\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngeorge hopley\n07 / 13 / 2000 08 : 52 pm\nto : patricia tlapek / hou / ect @ ect\ncc :\nsubject : re : 7 / 14 - - crude oil and nat gas\nnice commentary on gas\nfrom : patricia tlapek 07 / 13 / 2000 08 : 49 pm\nto : patricia tlapek / hou / ect @ ect\ncc : ( bcc : george hopley / hou / ect )\nsubject : 7 / 14 - - crude oil and nat gas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.214+0000", "entityId": 7884, "properties": {"text": "Subject: understanding and applying financial mathematics\nhello -\nthis email is a reconfirmation that you have received the speaker package i\nhave sent you last month regarding the above titled training course . if you\nhave not received it , please contact me asap and i will send you all the\ninformation needed for the training . also , please remember to hand in the\nfollowing :\nyour biographical details\nspeaker checklist\ncopy of your presentation for our documentation printed materials ( please\nkeep in mind that you will need to bring your presentation with you at the\ntraining , as we will not have it pre - downloaded ) .\nplease keep in mind the deadline of july 27 and please call or email me with\nany questions you have .\n?\nregards ,\namy lamonsoff\ntraining coordinator\n?\nt ( 212 ) 925 - 1864 xl 48\nf ( 212 ) 925 - 7585\nalamonsoff @ watersinfo . com\n?\nrisk waters group\n270 lafayette street , suite 700\nnew york , ny 10012", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.218+0000", "entityId": 7885, "properties": {"text": "Subject: trial of weathereffects web site\nmike ,\nfollowing up on my phone call , we ' re ready to do the following :\n1 . assign a login and password to enron for a trial evaluation of the\nwww . weathereffects . com power trader web service .\n2 . initiate a daily bilateral conference call at a morning time to be\ndetermined . to ensure that your traders and analysts are ready for such a\ncall , we will await your response to this email before initiating the\nservice .\n3 . we will also pdf certain energy analysis files to you ( eg , the daily gas\nmarket file ) so you can see the evolution of our day to day thinking on the\nmarkets .\na reminder that the power service currently deals with nepool and pjm and\nwill initiate coverage of nypp in september .\ni look forward to hearing from you .\ned krapels\ndirector , esai gas and power services", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.223+0000", "entityId": 7886, "properties": {"text": "Subject: pac reminder\nlast month you received an email about enrolling in the enron pac . the\nresponse has been positive .\nthank you to those of you that have already enrolled or made a change to your\ncurrent contribution !\nif you have not had an opportunity to visit the enrollment site , please\nconsider taking a moment to do so . the link to the website is at the end of\nthis message .\nsome of you may have experienced problems launching the site or enrolling .\nwe apologize for any trouble that you may have had . the enrollment works\nbest in either internet explorer or netscape . the most frequent problems\nwere a result of the lotus notes web browser that many employees have\ninstalled as a default browser . if this is your case , please copy and paste\nthe link at the end of this message into either internet explorer or netscape .\nas a reminder - following is the original message regarding the pac\nenrollment :\nlast year the enron political action committee ( pac ) launched a campaign to\nbecome a \" million dollar pac \" . enron employees , who provide all of the\nfunding for the pac , responded and the enron pac reached its objective ,\nbecoming one of the largest corporate pacs . this year we face a new\nchallenge . with the sale of eog , the announced sale of pge and normal\nemployee turnover , we have lost a significant number of consistent\ncontributors . we are seeking your support . if you are not a member , please\njoin . if you are a member , we hope you will consider increasing your\ncontribution .\nthe enron pac is an essential tool in our effort to promote sound public\npolicy . our pac funds support local , state and federal candidates , of both\nparties , who support open markets , deregulation and customer choice . amounts\ncontributed may be used to make political contributions in connection with\nfederal and state elections and are subject to the limits of the federal\nelection campaign act . while our pac has grown thanks to our employee\ncontributions , it still generates just a fraction of the expenditures of\nthose who oppose these ideals .\nthis year , as always , we face challenges and opportunities for every one of\nour businesses , including such issues as taxation and regulation of\ne - commerce , electric industry restructuring , regulation of derivatives ,\ninternational trade and investment legislation , pipeline safety , local and\nstate decisions affecting the siting and interconnection of power plants and\na variety of environmental and tax issues . enron has a long and successful\ntrack record of supporting and advancing good public policy . that track\nrecord depends on access to and regular communication with , decision makers .\nthe pac provides that access - - it shows policy makers that real voters care\nabout what they are doing .\none of the best things about enron is that we don \u0001 , t just take things as they\nare . we challenge the status quo . we ask why . we change things . the pac\nhelps us do that . we need you to help the pac . sign up today \u0001 ) and please\nconsider the following contribution guidelines :\nmanager $ 500 / year\ndirector $ 750 / year\nsr . director / general manager $ 1 , 000 / year\nvice president $ 2 , 500 / year\nsr . vp / managing director $ 3 , 500 / year\nexecutive committee $ 5 , 000 / year\nall contributions are voluntary and these guidelines are merely suggestions .\nyou are free to contribute more or less than the guidelines suggested and\nenron will not favor or disadvantage anyone by reason of the amount of their\ncontribution or their decision not to contribute . you may refuse to\ncontribute without fear of reprisal .\nonly u . s . citizens and resident - aliens living in the u . s . can contribute to\nthe enron pac . amounts contributed may be used to make contributions in\nconnection with federal and state elections and are subject to the\nlimitations of the federal election campaign act . the maximum contribution\nis $ 5 , 000 per year per individual . an individual may not contribute more\nthan $ 25 , 000 to all federal candidates and committees within a calendar\nyear . the law requires that enron report name , address , employer and\noccupation for every person who contributes over $ 200 / year .\nno portion of any contribution is deductible as a charitable contribution for\nfederal income tax purposes .\nthanks for your support ! sign up now , or revise your current contribution\nlevel by connecting with the pac intranet site :\nhttp : / / pacmembers . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.227+0000", "entityId": 7887, "properties": {"text": "Subject: hea sporting clays tourney - august 15 , 2000\nthis member favorite is just a few weeks away , and there ' s still time for you\nto register and be eligible for the private drawing for a remington 1187 !\njust send in your form and payment by august 1 , and remember you must be\npresent to win !\nthe sporting clays committee and hea want to thank this year ' s sponsors to\ndate and encourage other companies to participate if possible . if you ' d like\nto join this elite list , contact jim cody ( 713 / 230 - 3550 ) , t . kemp jones\n( 713 / 207 - 5189 ) or jeff eatherton ( 713 / 529 - 5247 ) .\nduke field services ; coral energy / tejas energy ; sanchez oil el\npaso field services ; reliant energy gas transmission ; reliant energy field\nservices ; mitchell gas services ; coastal field services ; and reliant energy\npipeline services . the continued success of this tournament through the\nenhanced quality of the prizes , dinner and services are made affordable only\nthrough your contributions and we appreciate your support !\nother door prizes this year include a browning citori and several other\nguns ! all prizes will be awarded during dinner in the air conditioned\npavilion . the two man flush will be shot from a newly covered deck , and\nother areas on the courses have been covered as well .\nso visit the website , www . houstonenergy . org , and fill out a registration\nform under \" next event \" . that ' s august 15 at the american shooting centers\n( 16500 westheimer parkway ) , and choose between 50 and 100 targets . even\nnon - shooters can come out , eat dinner , have some drinks and possibly win a\ndoor prize and have lots of fun . if you have other questions , contact eva\npollard at 713 / 651 - 0551 .\nthis message was sent by :\nteresa knight , executive director\nhouston energy association ( hea )\nphone : ( 713 ) 651 - 0551\nfax : ( 713 ) 659 - 6424\ntknight @ houstonenergy . org\nif you would like to have your email address removed from our mailing list ,\nplease click the link below to the hea home page , where you will find a\nmini - form to remove your name automatically .\nhttp : / / www . houstonenergy . org /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.232+0000", "entityId": 7888, "properties": {"text": "Subject: var methodology change\ngentlemen ,\nbelow is a plan of action for moving along with the var methodology change\nrelated to forward - forward volatility :\n1 . finalize the methodology proposed ( research / market risk )\n- determine the time period used to calculated forward - forward vols vs .\ncorrelations ( 20 days vs . 60 days )\n- stabilize the calculation for curves and time periods where the curve does\nnot change based on historical prices , implying volatility of 0 %\n2 . get approval for the methodology change from rick buy ( see draft of the\nmemo attached ) - john lavorato and john sherriff\n3 . develop and implement the new methodology in a stage environment\n( research / it )\n4 . test the new methodology ( market risk , traders )\n5 . migrate into production ( research / it )\nplease let me know if this is reasonable and meets everyone ' s expectations .\nvlady .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.237+0000", "entityId": 7889, "properties": {"text": "Subject: real options 2000\n?\nplease find enclosed the complete conference agenda for real options 2000 :\ncapitializing on uncertainty and volatility in the new millennium ,\nscheduled in chicago , il on september 25 - 26 , 2000 ( interactive\nworkshops available the 24 th , 26 th ( evening ) & 27 th ) . please\nreview this information and feel free to forward to any colleagues\nor associates that would have an interest in this topic with my contact\ninformation .\nif you have questions , or wish to register yourself or any colleagues ,\n( three or more receive a discount ) , do not hesitate to call me\ndirectly @ 212 . 885 . 2695 . otherwise , i will be in contact in a couple\nof days to follow - up .\nbest regards ,\nneda zoko\n- real options sept . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.241+0000", "entityId": 7890, "properties": {"text": "Subject: pr department\nvince , i received this inquiry about you . i am forwarding it to you so you\ncan respond to it or politely tell them your not interested .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cindy derecskey / corp / enron on 07 / 18 / 2000\n12 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" alex . bandini \" on 07 / 18 / 2000 11 : 10 : 23\nam\nplease respond to\nto :\ncc :\nsubject :\ndear sir / madam ,\ni am writing on behalf of petroleum economics ltd , an energy consultancy\nfirm based in london . we are currently updating our lists of contact\naddresses , and i would be most grateful if you could pass on contact details\nfor mr vince kaminski , your head of quantitative research .\nyours faithfully\nalex bandini\nalex bandini\npetroleum economics limited\ntel : + 44 ( 0 ) 20 - 7553 - 2000\nfax : + 44 ( 0 ) 20 - 7553 - 2001\ne - mail : alex . bandini @ petroleum - economics . com\nhttp : / / www . petroleum - economics . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.247+0000", "entityId": 7891, "properties": {"text": "Subject: contract summaries\nattached are the contract summaries for elba island term sheet , the heogh\ngalleon and exmar charter parties and the option contract on the 3 rd and 4 th\nvessel .\ni hope to finish summaries on eco - electrica and jose soon .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.252+0000", "entityId": 7892, "properties": {"text": "Subject: department of energy is deploying a corporate portal at facilitie s\nacross the country\nstar information technology brings has the tools needed to help energy\ncompanies gain knowledge . if it ' s information from oasis to market prices .\nthe events that change prices such as weather and more are always just one\nclick away with star information technologys ' powerful portal tools . our\nportal products are the difference between seeing and doing . hosting dynamic\napplications such as on - line reports , calendars , e - mail , and commerce\nservices create a one - stop shop for users to go about almost all of their\ndaily tasks : analyzing customer trends , checking schedules , viewing revenue -\nor project - related performance metrics , and buying or selling products .\ncombining all the information relevant to users ' work with the ability to\nact on that information enables organizations to get more done .\nfive government agencies deploy plumtree corporate portal at hundreds of\nfacilities -\nthe naval air systems command ( navair ) , department of energy ( doe ) ,\ndepartment of defense , national institutes of health and army public affairs\ncenter are deploying a corporate portal at facilities across the country as\npart of ongoing governmental initiatives to maximize efficiency , develop\nmore online content and provide private sector levels of customer service .\nthe plumtree corporate portal integrates regulatory , enforcement and\nincident database reports , enterprise applications and internet services\ninto the agencies ' portals as portal gadgets ( tm ) , plug - in modules that embed\ncomponents of applications and interactive internet services in a\npersonalized portal page . the portal growth in the public sector is driven\nby its success applying business technology to the specific challenges of\ngovernment , empowering federal agencies to simplify access to their data ,\nreduce paperwork , benefit from the resources on the internet and share\ninformation securely with their employees , contractors and constituencies .\nfor more information on how star information technology can help your\nbusiness turn knowledge into power contact us today at 508 - 359 - 6891 ext 115 .\nchristopher k . heisler\nproduct manager\n508 - 359 - 6892 ext 115\nwww . starit . com\ncheisler @ starit . com\nwe make knowledge power", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.258+0000", "entityId": 7893, "properties": {"text": "Subject: electricity conference update\nhere it is ! . . . . apex 2000 conference news no . 2\n( http : / / www . apex 2000 conf . com / update 2 . html ) . updates on current speaker and\npresentation list , details for the partner program and social activities and\nyour apex 2000 conference registration form\nif you do not have website access and would like to receive a pdf formatted\nupdate please email us at apex 2000 @ incentre . net\n( mailto : apex 2000 @ incentre . net ) .\nall inquiries and requests should be directed to the apex 2000 conference\noffice at apex 2000 @ incentre . net ( mailto : apex 2000 @ incentre . net ) or ( 403 )\n244 - 4487 .\nkathleen cheney\napex 2000 conference coordinator\nlist 7", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.262+0000", "entityId": 7894, "properties": {"text": "Subject: request for visit and meeting\nthese guys are looking to come in the first few weeks of august . what is\nyour availability ?\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 07 / 20 / 2000 08 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos eduardo machado @ enron _ development\n07 / 18 / 2000 06 : 28 pm\nto : grant masson @ ect\ncc : gabriel sanchez - sierra / enron _ development @ enron _ development\nsubject : request for visit and meeting\nhi grant , we met briefly a couple of months ago . i work with pedro in the\ncolombia office . we are working closely with ecopetrol ( colombia ' s\nstate - owned oil company ) on a very important deal , and some of their highest\nranking officials ( 3 of them ) will like to visit our head quarters in early\naugust , to share some ideas on risk management tools ( very general concepts\nthat can obviously be disclosed ) .\nmy assumption is that vince and your - self are the perfect people to have the\nmeeting with . several consulting firms have advice ecopetrol to get in touch\nwith enron when referring to advance risk management techniques . do you think\nthis is possible ? please let me know , this means a great deal for this\noffice , but i also know you guys are extremely busy . thanks ,\ncarlos e", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.267+0000", "entityId": 7895, "properties": {"text": "Subject: operating & strategic plan 2001 - 2003\none more update . i think we finally have the file where we want it . please\nuse the file attached .\nthanks again .\ndawn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dawn derr / corp / enron on 07 / 20 / 2000 11 : 15\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndawn derr\n07 / 17 / 2000 11 : 02 am\nto : rob walls / na / enron @ enron , monica reasoner / hou / ect @ ect , greek\nrice / corp / enron @ enron , larry dallman / gpgfin / enron @ enron , christine\nschlaudraff / corp / enron @ enron , rodney faldyn / corp / enron @ enron , sally\nbeck / hou / ect @ ect , suzanne brown / hou / ect @ ect , mark koenig / corp / enron @ enron ,\nelizabeth linnell / hou / ees @ ees , j mark metts / na / enron @ enron , charlene\njackson / corp / enron @ enron , gary mccumber / hou / ect @ ect , robert\njohansen / corp / enron @ enron , paul clayton / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , billie akhave / epsc / hou / ect @ ect , cynthia\nbarrow / hr / corp / enron @ enron , sharon aulds / hr / corp / enron @ enro\ncc :\nsubject : operating & strategic plan 2001 - 2003\nplease use the budget format sheet attached below . there is an error in the\nexecutive summary sheet of the original file . hope this does not cause\nanyone undue problems .\nthanks .\ndawn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dawn derr / corp / enron on 07 / 17 / 2000 12 : 01\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndawn derr\n07 / 14 / 2000 03 : 17 pm\nto : rob walls / na / enron @ enron , monica reasoner / hou / ect @ ect , greek\nrice / corp / enron @ enron , larry dallman / gpgfin / enron @ enron , christine\nschlaudraff / corp / enron @ enron , rodney faldyn / corp / enron @ enron , sally\nbeck / hou / ect @ ect , suzanne brown / hou / ect @ ect , mark koenig / corp / enron @ enron ,\nelizabeth linnell / hou / ees @ ees , j mark metts / na / enron @ enron , charlene\njackson / corp / enron @ enron , gary mccumber / hou / ect @ ect , robert\njohansen / corp / enron @ enron , paul clayton / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , billie akhave / epsc / hou / ect @ ect , cynthia\nbarrow / hr / corp / enron @ enron , sharon aulds / hr / corp / enron @ enron\ncc : elaine schield / corp / enron @ enron , terry west / corp / enron @ enron\nsubject : operating & strategic plan 2001 - 2003\nattached are the guidelines and the budget template for the 2001 - 2003\noperating & strategic plan .\na budget template should be completed for each cost center in your\narea / group that will be utilized for 2001 . all budgets are due to corp .\nfinancial planning no later than close of business august 14 , 2000 .\nwhile corporate financial planning has attempted to make the process as easy\nas possible , we know questions will arise . please feel free to contact me at\nx 37775 with any questions or problems .\nthanks in advance .\ndawn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.271+0000", "entityId": 7896, "properties": {"text": "Subject: vince kaminski\ngood morning mr . bandini :\ni am dr . kaminski ' s assistant and he has asked me to forward a copy of\nhis \" bio \" and the following information to you .\ndr . kaminski ' s email address : vkamins @ enron . com\ntelephone number : 713 / 853 - 3848\nthank you for your interest .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : scrensh @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.277+0000", "entityId": 7897, "properties": {"text": "Subject: ( no subject )\nvince ,\nhere are the overview powerpoint slides for the investment and strategic\nrelationship management firm , azure capital , i mentioned in my voice\nmail . the transactions they completed in their past lives at csfb and\nalready in the new firm , as well as their advisory board are probably\nthe strongest evidence of their capabilities .\nhope all is well .\nblake\n- azure slides . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.282+0000", "entityId": 7898, "properties": {"text": "Subject: re : real world option pricing\ntom ,\nthanks . i shall try to pick up the paper tonight .\nthe e - mail caught me in a better place than an air conditioned place .\ni am in australia and it ' s winter here .\nvince\ntom arnold on 07 / 20 / 2000 11 : 44 : 43 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : real world option pricing\nhey vince ,\nsince i saw you last , the \" real world option princing \" paper has taken on\nsome more interesting results . tim crack and i would certainly like your\ncomments on the previous version and current version because we feel there\nare still more areas to explore , such as , value at risk . here is where you\ncan download the paper :\ni hope this e - mail finds you in air conditioned room away from the heat .\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.290+0000", "entityId": 7899, "properties": {"text": "Subject: re : real world option pricing\nhey vince ,\nsince i saw you last , the \" real world option princing \" paper has taken on\nsome more interesting results . tim crack and i would certainly like your\ncomments on the previous version and current version because we feel there\nare still more areas to explore , such as , value at risk . here is where you\ncan download the paper :\ni hope this e - mail finds you in air conditioned room away from the heat .\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.297+0000", "entityId": 7900, "properties": {"text": "Subject: re : status\nclayton ,\nwe can discuss your request when i come back to the office on monday .\nregarding the trip to portland . such a trip requires an explicit prior\npermission from your boss ,\nmyself in his absence , or stinson in my and vasant ' s absence .\nin case you did not ask for such a permission before , the request is denied .\nvince\nclayton vernon @ enron\n07 / 20 / 2000 03 : 12 pm\nto : vasant shanbhogue / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : status\nvasant -\ni hope you had a wonderful vacation back home , and are rested and recovered\nfrom the long flight back .\ni wanted to give you an update of the eol project , the gas model , and of my\nintentions here at enron .\nsoftware ( in compiled c on the unix platform ) has been developed and debugged\nto listen to the eol trades , process them , book them , and file them away . in\naddition , software has been developed and debugged to mark these to market on\na continual basis , and to store the entirety of open positions on eol in a\ndynamic matrix facilitating analysis . it has yet to get back with me on how\nthe software can be informed of those trades ultimately rejected for credit\npurposes .\nthese data files are stored in a format for reading by excel or by sas , for\nwhich i have written the data step program and basic tabulation routines\nelucidating the structure of the data .\ni am in the process of documenting all of this for you .\nwith regards the gas model and its slow performance on the compaq , dell has\nagreed to loan me one of their competing machines to the compaq , to see if\nthe performance issue of the lp is related to the compaq . i have been\nresearching this issue with it here and with compaq and dell . the new machine\nwill be here any day now ( no financial obligation to anyone ) , and i will be\nable to immediately ascertain whether the problem the model is having is\ncompaq - specific .\ni am also in the process of documenting the gas model for you .\ni ' ve tried to do my best for you , vasant , but i have been frustrated by not\nonly the death of my mother but some internal systems in it here . just the\nother day , sas could not open a full query of the eol database because there\nwasn ' t enough free space on the server ' s hard drive for the workfiles . in\ndiscussing some of these issues with some good friends of mine in power\ntrading , people whom i have known for over 10 years , they indicated they were\nubiquitous here . the power traders have similar pc ' s to my new one , and they\nhave complained from day 1 that theirs are slower than their old ones . also ,\nthere remains a large frustration with the development of data warehouses ;\nduring my brief tenure here it has gone through two differing proposals as to\nhow to address this . when i have been told of tools available for real - time\ndata harvesting , my requests for such have typically been met with \" well , we\nhave it , but we haven ' t really tested it yet . \" an example is the weather : we\nstill do not record to disk the hourly nws observations from the goes\nsatellite .\nmy interests here are to help enron to do well , because i will do well only\nif enron does well . these aren ' t empty words - my ira is 100 % invested in the\nenron stock fund . i believe my best contributions to enron will be in the\nareas of systems as well as modeling , and the difficulty working in the\nresearch group , in terms of systems development , is that , frankly , few people\nat enron seem to care what a researcher thinks about our systems . we aren ' t\ndirectly generating revenues for enron , and we aren ' t really their customers ,\nexcept in our relatively small deparrtmental infrastructure expenses .\nas it happens , power trading posted an opening for a modeling and forecasting\nperson , and i spoke with them and they asked me to take the job , reporting to\ngeorge hopley . it is a wonderful opportunity for me , vasant , as they are\ninterested in large system modelng of power grids as well as improving their\ntraders ' access to real - time fundamentals data . i was completely candid with\nkevin presto regarding my shortcomings here in research - i told him you were\ndisgusted with me because i repeatedly failed to meet time deadlines . they\nalso understand i have yet to be at enron for 1 year , and thus may only bid\non a job with your permission . we agree the move is good for enron ; we all\nwork for enron , and your acquiescence to the move does not endorse it but\nmerely permit it . they are comfortable with me - they have known me for years\nas a hard worker , honest and unpretensive . they have already ordered a\nstate - of - the - art unix workstation and server for me , and they have told me\nthey will commit whatever resources are necessary for me to be successful ,\nincluding hiring an analyst to work for me . and , i have already been able to\nteach their analysts improved techniques for data harvesting and analysis i\nhave learned here .\nso , i am requesting your permission to bid for this job opening . it would be\na lateral move in position and salary , and i would commit to you to help you\nin any way possible in the future with regards the gas model or the eol\ndatabase . i will continue to work on their improvement , and complete their\ndocumentation .\nas it happens , i am away on enron business in portland monday and tuesday ,\nand will be back wednesday . i had wanted to talk face - to - face instead of by\nemail , but enron business supercedes - i am on a team designing the data\nwarehouse for floor trader support .\nclayton .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.301+0000", "entityId": 7901, "properties": {"text": "Subject: status\nvasant -\ni hope you had a wonderful vacation back home , and are rested and recovered\nfrom the long flight back .\ni wanted to give you an update of the eol project , the gas model , and of my\nintentions here at enron .\nsoftware ( in compiled c on the unix platform ) has been developed and debugged\nto listen to the eol trades , process them , book them , and file them away . in\naddition , software has been developed and debugged to mark these to market on\na continual basis , and to store the entirety of open positions on eol in a\ndynamic matrix facilitating analysis . it has yet to get back with me on how\nthe software can be informed of those trades ultimately rejected for credit\npurposes .\nthese data files are stored in a format for reading by excel or by sas , for\nwhich i have written the data step program and basic tabulation routines\nelucidating the structure of the data .\ni am in the process of documenting all of this for you .\nwith regards the gas model and its slow performance on the compaq , dell has\nagreed to loan me one of their competing machines to the compaq , to see if\nthe performance issue of the lp is related to the compaq . i have been\nresearching this issue with it here and with compaq and dell . the new machine\nwill be here any day now ( no financial obligation to anyone ) , and i will be\nable to immediately ascertain whether the problem the model is having is\ncompaq - specific .\ni am also in the process of documenting the gas model for you .\ni ' ve tried to do my best for you , vasant , but i have been frustrated by not\nonly the death of my mother but some internal systems in it here . just the\nother day , sas could not open a full query of the eol database because there\nwasn ' t enough free space on the server ' s hard drive for the workfiles . in\ndiscussing some of these issues with some good friends of mine in power\ntrading , people whom i have known for over 10 years , they indicated they were\nubiquitous here . the power traders have similar pc ' s to my new one , and they\nhave complained from day 1 that theirs are slower than their old ones . also ,\nthere remains a large frustration with the development of data warehouses ;\nduring my brief tenure here it has gone through two differing proposals as to\nhow to address this . when i have been told of tools available for real - time\ndata harvesting , my requests for such have typically been met with \" well , we\nhave it , but we haven ' t really tested it yet . \" an example is the weather : we\nstill do not record to disk the hourly nws observations from the goes\nsatellite .\nmy interests here are to help enron to do well , because i will do well only\nif enron does well . these aren ' t empty words - my ira is 100 % invested in the\nenron stock fund . i believe my best contributions to enron will be in the\nareas of systems as well as modeling , and the difficulty working in the\nresearch group , in terms of systems development , is that , frankly , few people\nat enron seem to care what a researcher thinks about our systems . we aren ' t\ndirectly generating revenues for enron , and we aren ' t really their customers ,\nexcept in our relatively small deparrtmental infrastructure expenses .\nas it happens , power trading posted an opening for a modeling and forecasting\nperson , and i spoke with them and they asked me to take the job , reporting to\ngeorge hopley . it is a wonderful opportunity for me , vasant , as they are\ninterested in large system modelng of power grids as well as improving their\ntraders ' access to real - time fundamentals data . i was completely candid with\nkevin presto regarding my shortcomings here in research - i told him you were\ndisgusted with me because i repeatedly failed to meet time deadlines . they\nalso understand i have yet to be at enron for 1 year , and thus may only bid\non a job with your permission . we agree the move is good for enron ; we all\nwork for enron , and your acquiescence to the move does not endorse it but\nmerely permit it . they are comfortable with me - they have known me for years\nas a hard worker , honest and unpretensive . they have already ordered a\nstate - of - the - art unix workstation and server for me , and they have told me\nthey will commit whatever resources are necessary for me to be successful ,\nincluding hiring an analyst to work for me . and , i have already been able to\nteach their analysts improved techniques for data harvesting and analysis i\nhave learned here .\nso , i am requesting your permission to bid for this job opening . it would be\na lateral move in position and salary , and i would commit to you to help you\nin any way possible in the future with regards the gas model or the eol\ndatabase . i will continue to work on their improvement , and complete their\ndocumentation .\nas it happens , i am away on enron business in portland monday and tuesday ,\nand will be back wednesday . i had wanted to talk face - to - face instead of by\nemail , but enron business supercedes - i am on a team designing the data\nwarehouse for floor trader support .\nclayton .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.306+0000", "entityId": 7902, "properties": {"text": "Subject: joe h .\nvince ,\nmark tawney called and said that he needs to make a salary adjustment for joe\nhrgovcic . it appears that he has an outside offer . i told him that we\nwould support this , within reason , and that you would be the person to\nultimately o . k . this request on the research side . he is also interested\nin moving joe out of research and formally onto the weather desk . again , i\ntold him that it would have to be discussed with you on your return next week .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.310+0000", "entityId": 7903, "properties": {"text": "Subject: credit support value for mg and paperco\nfind below a spreadsheet with my very rough calculation of the value of\ncredit support for mg and paperco .\nmy approach is as follows :\n1 . assume all contracts can be modelled as financial swaps .\n2 . spread the notional trading volumes over the estimated swap tenors .\n3 . calculate the value of defaulting at each period of the swap ( the\ndefault option ) using black ' s formula .\n4 . treat the value of the default options as risky cash flows . that is\ntreat this value just like you would an annuity stream . by discounting back\nthis stream of cash flows at the original risky rate and at the risk - reduced\nrate , i find the value of credit enhancement as the difference in the two\nnpv ' s .\nplease give your comments , especially if this makes no sense to you .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.315+0000", "entityId": 7904, "properties": {"text": "Subject: re : manabu matsumoto\nhi lucy / natalie\ngiven that manabu is perceived as the \" specialist \" type , and probably\nshouldn ' t go straight into the gas trading group , this may have implications\nfor research headcount if he ' s considered a good non - a & a hire .\ni ' ll be spending the next couple of weeks canvassing opinions from various\nvps and mds over their preferred size , role and style of research group for\neurope . i think we should delay manabu ' s second round interviews for a while .\ncheers ,\nsteve\nlucy page\n07 / 20 / 2000 07 : 38 pm\nto : steven leppard / lon / ect @ ect\ncc : natalie cilliers / lon / ect @ ect\nsubject : manabu matsumoto\nsteve ,\ni am out of the office tomorrow and was just wondering if you ' d had a chance\nto think about the interview list for manabu ?\nif you get a list together , natalie will be able start working on it -\nalternatively i will catch up with you on monday .\nnatalie - just so you know manabu will be coming in for second round but not\nfor the a & a programme - probably a specialist in steve ' s group ( we ' ll pass it\nover to commercial support next week )\ncheers\nlucy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.319+0000", "entityId": 7905, "properties": {"text": "Subject: cmu students\ni have given your email to richard bryant , who is the director of the comp .\nfin . program at cmu . no doubt he will be in touch . here ' s a link :\ni feel that i should mention something : from my experience at cmu , there are\nthree types of students . those that work very very hard and are basically\nethical ; those that cheat their way through school , and the sharks . it is\nvery difficult to distinguish between the groups when interviewing . in my\nclass of about 30 students , there were three sharks , about six or seven hard\nworkers , and then there was everyone else . anyway , for what its worth !\n- kevin k .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.324+0000", "entityId": 7906, "properties": {"text": "Subject: re : var for metals\nted , anjam ' s and myself ' s meeting at mg in ny office on 7 / 20 / 00 was\nproductive .\ni am working on a summary of this discussions ( 1 a version layout )\nand will send it to you after consulting with anjam .\nregards ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.328+0000", "entityId": 7907, "properties": {"text": "Subject: var for metals\nit is my preference to have an aggregated var methodology for the metals\nbusiness as soon as possible ( version la ) . i do not want to poison progress\nwith my opiniion , but i think that the critical first step is to find a way\nto aggregate positions in coarse buckets , perhaps sacrificing precision for\nspeed , based on \" rules \" that oerations can deliver , research can stand behind\nand commercial will accept . , and using an equally coarse var calculation\n( the equivalent of ad - hoc var ? ) that can be delivered to the \" official books\nand records \" on a daily basis . this i believe would be acceptable for a 2 - 3\nmonth time frame ( at which time we get versionlb ) as opposed to waiting 2 - 3\nmonths to implement a better process and have nothing in the interim .\nultimately , i would look for version 2 a to be delivered and very defendable\nby 1 / 1 / 01 . this will require indulgence and compromise on all fronts but i\ncannot conceive of a better way . please let me know if this is consistent\nwith your understanding . a critical point from my perspective is that the mg\ncommercial team and metal operations staff understand their role in making\nthis happen and willingness to accept the consequences . i look for you to\ntake the lead as leader of the integration to do so . if you need any input\nfrom the rest of us to underscore the importance please let us know . as i\nalluded to on the phone , the people in houston that have been involved in the\nvar process have been through an extraordinary period of detailed scrutiny of\nvar by commercial and have been hindered by the lack of basic understanding\nby all parties as their responsibilities . given the distance and the newness\nof the metals personell , i fear that this could set us all up for some\nsurprises and some very uncomfortable communication , much of which is not\nentirely necessary .\nthanks\nted\neric gadd\n07 / 21 / 2000 11 : 46 am\nto : ted murphy / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect\ncc : richard sage / lon / ect @ ect\nsubject : attached fax\nted and bjorn -\nwe plan to release draft recommendations on metal position limits by close of\nbusiness on 24 july and have asked vince to prepare a v @ r computational\nmethodology prior to the 7 / 8 aug bod meeting .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.333+0000", "entityId": 7908, "properties": {"text": "Subject: tropical cyclones\ndear all ,\nyesterday , i mentioned to vince the inhouse modelling capabilities and the\nimpact weather and the weather forecast can have on some of enron ' s\noperations and risk management positions . for this reason i have attached\nthree files , two of those show to tropical cyclones off the coasts of\naustralia , i . e . rachel and drena . tropical cyclones pose a significant risk ,\nand an early warning system can be part of a better risk strategy .\nplease , note that the modelling system has been further improved since the\nsimulation was done .\nalso , we can focus on another large problem and associated risk . dust storms\ncan pose a significant risk to a number of industries , and the prediction\nof such events has been very difficult , if not impossible . for this reason a\ngis database has been developed and coupled to the nwp model , which\nallows prediction of such events in realtime . for the depicted event an\nestimated 6 million tonnes of top soil was lost , and with it $ $ .\nmaybe we can set up a conference call to discuss\n* the above mentioned points\n* further improvments in forecasting based on the high resolution forecasts\n* weather and climate on a global perspective for enron\n* how to further improve the forecast for enron\nregards ,\nchristian\nps : i tried to sent of this e - mail last night , but their appears to be a\nlimit of 10 mb , so i will send off the individual files . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.338+0000", "entityId": 7909, "properties": {"text": "Subject: re : status\nvince -\nunderstood .\ni am going to request two days of vacation , for monday and tuesday .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.343+0000", "entityId": 7910, "properties": {"text": "Subject: executive solicitation - united way 2000\n\u0001 & who wants to help millions ? \u0001 8 is our theme for enron \u0001 , s 2000 houston united\nway campaign , which officially kicks off on august 9 , 2000 . last year , enron\nachieved a 17 percent increase overour 1998 campaign . this success would not\nhave been possible without the support of all levels of management .\nenron \u0001 , s executive solicitation begins today , and we are counting on your\nleadership and strong support this year . your generous contribution will\nenable united way agencies in our community to continue providing quality\nprograms and services .\nour goal this year is $ 2 , 310 , 000 \u0001 ) a challenging goal , but we believe it is\nachievable with your help . including the dollar for dollar corporate match ,\nenron \u0001 , s total pledge to united way in 2000 will be more than $ 4 . 5 million .\nto get there , we invite you to \u0001 & help millions \u0001 8 by making your pledge in one\nof the following way :\n? alexis de tocqueville society ( gifts of $ 10 , 000 or more ) \u0001 ) every member of\nenron \u0001 , s executive committee is a member of this elite group . last year ,\nenron was houston \u0001 , s leader with 39 members and ranked in the top 25\nnationally . members are recognized at a dinner hosted by the united way .\n? chairman \u0001 , s club \u0001 ) the giving levels in this united way group are :\n? diamond \u0001 ) $ 7 , 500 - $ 9 , 999\n? platinum \u0001 ) $ 5 , 000 - $ 7 , 499\n? gold \u0001 ) $ 2 , 500 - $ 4 , 999\n? silver \u0001 ) $ 1 , 500 - $ 2 , 499\n? bronze \u0001 ) $ 1 , 000 - $ 1 , 499\nby pledging 1 . 2 percent or more of your annual base salary of $ 90 , 000 or\nmore , you also will qualify as a member of enron \u0001 , s \u0001 & make a difference club . \u0001 8\nan exciting edition to our campaign this year is that we have implemented an\nelectronic pledging system . please click on the united way link ,\nhttp : / / unitedway . enron . com to learn more about this year \u0001 , s campaign and make\nyour contribution . you will find that it is a very easy process and only\ntakes a few moments to complete . please make your electronic pledge no later\nthan monday , august 7 . if you have any questions at all regarding the\ncampaign or the new e - pledging , please contact kathy mayfield , campaign\ncoordinator at 713 - 853 - 3264 .\nlast year , enron \u0001 , s executive team pledged a total of $ 2 . 9 million , including\nthe corporate match , which accounted for approximately 66 percent of the\ntotal enron dollars pledged . enron also ranked among the highest in per\ncapita giving for large companies for the 10 th straight year . this is a\ntremendous achievement , and you played a significant role in making it a\nreality . let \u0001 , s continue the momentum in 2000 .\ntogether we will make a positive difference in the lives of many people in\nneed in our community as we all join in \u0001 & who wants to help millions ? \u0001 8 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.347+0000", "entityId": 7911, "properties": {"text": "Subject: john martin , energy finance article\nvince ,\nf . y . i . i have not talked to john martin about it yet . i don ' t know if you\nhave any interest .\nstinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 07 / 24 / 2000\n10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njohn martin on 07 / 21 / 2000 07 : 36 : 31 pm\nto : stinson gibner\ncc :\nsubject : re : your call\nmy number is 254 - 710 - 4473 ( office ) and 254 - 757 - 0852 ( home ) . the editor of\nthe journal of applied corporate finance is doing a special issue on energy\nfinance for the fall and i want to see if you and vince would like to put\nsomething together describing enron ' s basic business model . i would love\nto join you if you would like and i can actually draft the paper with your\nhelp . i ' ll get in touch with you on monday . have a great weekend .\njohn\np . s . mitch taylor was in class today and did his usual great job . i sure\nenjoy using enron as my \" premier company example \" .\nat 04 : 48 pm 7 / 20 / 00 - 0500 , you wrote :\n>\n>\n> john ,\n>\n> i misplaced your phone number . please let me have it , and i promise to give\n> you a call . i ' d love to hear what you have in mind .\n>\n>\n> best regards ,\n>\n> stinson\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.351+0000", "entityId": 7912, "properties": {"text": "Subject: schedule interview for stephen bennett\nfriday , august 4 , 2000\ninterview begins at 9 : 00 a . m .\n9 : 00 a . m . vince kaminski - ebl 962\n10 : 00 a . m . john lavarato - no interview\n11 : 15 a . m . mike roberts / jose marquez\n( luncheon interview )\n3 : 00 p . m . hunter shively - eb 32 c 2\n3 : 15 p . m . jeff shankman - eb 32 c 2\n3 : 30 p . m . john arnold - eb 32 c 2\n3 : 45 p . m . toni graham -\nitinerary and resume will follow . . . . . .\nthanks\nkevin moore\nplease note : do not offer mr . bennett a position without john lavarato\napproval", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.356+0000", "entityId": 7913, "properties": {"text": "Subject: historical curve databases & historical ff vols\ndear all ,\nas promised , i cleaned up the data and put it into 6 spreadsheet files ( we\nwill do gold and cocoa separately ) . i also ran 10 , 20 , 30 and 60 day fwd fwd\nvolatility calculations based on historical log return data - you can see the\nresults at the bottom of the sheet called \" log returns \" for each of the six\nspreadsheets attached below .\nthe data in the files is ready for pca analysis . we can use either the fwd\nfwd vols from recent history or implied option quotes to complete the\nanalysis .\nregards ,\nanjam\np . s . we have already done the pca on aluminum h ( high grade , so please don ' t\nrepeat the analysis for that one )\nfinal files :\nal _ h :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.360+0000", "entityId": 7914, "properties": {"text": "Subject: volatility curves - linked from reuters\nhi tanya ,\nattached are the live reuters - linked volatility curves . please don ' t\nre - establish links , as i don ' t think that your telerate connection works in\nthe same way as ours in london . i will get back to you on cleaning up the\nhistorical forward curve database as i complete each metal . we can talk at\n5 pm as we agreed .\nregards ,\nanjam\np . s . i think the fast dial is : 830 5383 or 830 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.365+0000", "entityId": 7915, "properties": {"text": "Subject: thursday summer intern dinner\nvince :\nis it ok to send the following out to the interns ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.369+0000", "entityId": 7916, "properties": {"text": "Subject: sap timesheets\nhello everyone :\nthanks to krishna we have come up with a plan that i believe is going to\nsave everyone some time . we have created an excel spreadsheet , with\nthe time sheet form , and there is a tab for each of you , in alphabetical\norder\nby first name across the bottom of the spreadsheet .\nthe spreadsheet is saved in o : \\ research \\ common \\ sap timesheets \\ mmm - dd .\n( mmm = month and dd = 15 th or end of the month time period - i . e . , this time\nperiod is 7 / 16 - 7 / 31 / 00 ) . the regular 8 hour days have already been entered\nfor each of you . therefore , if you have no exceptions you just need to type\nin\nyour name in the bottom right corner by the place marked ( emp sign ) , and save\nit .\nif you do have exception time , simply open that particular pay period and\nshow the exception time ( off - duty , vacation , overtime , sick time , jury time ,\nfamily\ntime , etc . ) that you may have had during that pay period . some of the codes\nhave already been entered for you , the rest are listed at the bottom of the\nspreadsheet and just change the ones that are already there for whatever\napplies .\nif you are an exempt employee you need only show your off - duty time\nor exception time . if you are non - exempt you must show all hours worked\nand if you have overtime , you must add that to the 8 hours regular time .\nthere is no code for non - exempt overtime .\nthis should make it much easier for everyone . however , i will need you to\nfill out this timesheet form by the 13 th and 29 th of each month . i will\ntry and remind you by email the day before .\ni would still appreciate your emailing me of any vacation , hod day , or any\nother\noff - duty that you know about before hand , that way if you are out of pocket\nfor any\nreason and cannot fill in one of the forms , i will be able to fill in your\ntimesheet for you .\nif you have any questions or suggestions , please let me know .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.374+0000", "entityId": 7917, "properties": {"text": "Subject: quantitative position\nvince\nwe happened upon this fellow through strickland . what are your thoughts on\nthe background ? we are still working to formulate our requirements in the\noffice but consider this person worth talking to .\npaul\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paul quilkey / enron _ development on\n07 / 26 / 2000 09 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" simon hurst \" on 07 / 25 / 2000 10 : 10 : 23 pm\nplease respond to \" simon hurst \"\nto :\ncc :\nsubject : quantitative position\ndear paul ,\n?\nmy friend chris strickland has informed me that enron is looking for a\nquantitative analyst . i am ? interested in talking to you about this position .\ni have attached my resume for your perusal . i am currently on holidays and\ncan be ? contacted from ? monday 31 st july . my contact details are contained\nwithin my attached resume . i look forward to talking to you .\n?\nyours sincerely ,\nsimon hurst .\n?\n?\n- srh resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.379+0000", "entityId": 7918, "properties": {"text": "Subject: re : corrections to chap . 3 from grant masson\ngrant ,\nthanks for that . i hope you had a good holiday - we were all very jealous of\nyou at dinner the other evening .\ni made some changes for it to fit in with our notation , etc , but apart from\nthat its a fin piece of work . if you could just answer the questions posed\nby vince , and send me the final figure then we are a go ( all of ours are now\nfinished ) . would you be happy with the following ?\n3 . 5 summary\nin this chapter we have discussed volatility modelling and estimation in the\nenergy commodity markets , emphasising the difference between this market and\nfinancial markets . we discuss the estimation of volatility from both\nhistorical and implied data , again from the perspective of the energy user .\nwe further discussed a number of stochastic volatility models and have shown\nhow to estimate the models via ordinary least squares and maximum\nlikelihood . we have tested our estimation techniques on a number of\nexamples drawn from energy markets including electricity , gas and crude oil .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : grant masson\nto : chris strickland\nsent : tuesday , july 25 , 2000 9 : 08 am\nsubject : re : corrections to chap . 3 from grant masson\n>\n>\n> chris :\n>\n> i understand from vince that ronnie did not send you anything . apologies\nfor\n> that . i will get the last section rewritten quickly and off to you within\nthe\n> next couple of days . sorry that this has taken so long , and frankly ,\napologies\n> for the poor quality of my bit . if you have any suggestions on how to\nimprove\n> it , please let me . likewise , i hope that you will make changes as you\nsee fit\n> to improve and clarify things .\n>\n> regards ,\n> grant .\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.384+0000", "entityId": 7919, "properties": {"text": "Subject: aga forecast for 7 / 21 is 42\nvince & stinson ,\nthe number comes out from the time series model is 42 , compared with mike ' s\n61 .\nlast year ' s number ( true ) was 41 ( 7 / 23 / 99 ) , and 26 ( 7 / 30 / 99 ) . therefore the\ncurve is down - sloping dramatically .\nlet us see what happen tomorrow .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.389+0000", "entityId": 7920, "properties": {"text": "Subject: energycast\ndear vince ,\ni hope your trip to australia was successful . it ' s one of my favorite places\nto go .\ni ' ve copied you on the email to mike initiating enron ' s trial service to\nenergycast . thanks for helping to set this up .\nwould you ask the authorities in enron to refresh my access to enrononline ?\nmy guest user id as ena 61296 and my guest password was tr 84 byl 3 . they no\nlonger work , probably because i haven ' t visited the site in months as we\nwere in full development mode on energycast .\nvince , you will note in our website references to forward prices of power in\nnepool , nypp , and pjm . we use reuters as a reference - - not satisfactory . if\nyour traders like energycast and enron became a client , would enron consider\nlinking its prices to our site ? we have to improve over the reuters quotes\nand regard enrononline or bloomberg as the best candidates . over time , as\nour service spreads i believe this could help generate deal flow for your\ntraders .\nlet me know what you think .\ned", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.395+0000", "entityId": 7921, "properties": {"text": "Subject: enron trial of energycast service\nmike ,\nhere are the particulars of the trial run of our service , including the\ntimes for the telephone contact from wsi . remember this will be a bilateral ,\nnot a conference , call .\non the esai side , while i will be out of town , peter ingraham ( 781 245 2036 )\nis available to answer questions or take suggestions . we look forward to\nworking with you next week .\ned\n- - - - - original message - - - - -\nfrom : shorter , jeffrey [ mailto : jshorter @ wsicorp . com ]\nsent : tuesday , july 25 , 2000 11 : 36 am\nto : bosse , john ; ed krapels ( e - mail ) ; peter ingraham ( e - mail )\ncc : weather effects\nsubject :\ned ,\nwe are set with a evaluation of the service covering the period from\nmonday to thursday july 31 to aug 3 . we will activate the web access on\nfriday afternoon and initiate calls monday morning . the call schedule is :\nshort range : 8 : 40 east coast time\nmid range : 9 : 20 east coast time\nif there is a conflict with these times , please notify me . we will need a\nnumber to call into , typically we call directly onto the trading floor . the\nusername and password are the same as the initial viewing :\nusername : enron\npassword : stroso 0 ( zero zero )\nit is important to make the point this is for evaluation purposes since we\nare not under a contract with liability issues addressed .\ni am sure enron will love it like the rest of our clients ! !\njeff\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\njeffrey a . shorter , ph . d .\nvice president\nwsi - weathereffects\n55 walkers brook road\nreading , ma 01867\njshorter @ wsicorp . com\n781 - 205 - 7385 ( direct voice )\n781 - 942 - 2000 ( switchboard )\n781 - 942 - 2571 ( fax )\n617 - 320 - 4653 ( cell )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.401+0000", "entityId": 7922, "properties": {"text": "Subject: kirstee ' s role in london\nvince :\nthis is precisely the concern i have for kirstee . steve tells me that she is\nvery imaginative and eager to try to add value , but she has no local\nsupervisor to help push some of her ideas . i will give you an update of our\ndiscussion later and solicit your suggestions .\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 07 / 25 / 2000 09 : 07\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkirstee hewitt\n07 / 25 / 2000 08 : 48 am\nto : grant masson / hou / ect @ ect\ncc :\nsubject : meeting today\nhi grant - as anjam has set up a meeting for 9 : 30 your time how about we try\nand talk afterwards . originally we said 10 : 00 your\ntime but i guess that the mg meeting will take longer than half an hour . are\nyou free around 10 : 30 your time ?\ni think some of the communication problems i originally had with anjam have\nbeen resolved ( although it was a difficult situation to interpret ) however , i\nwould very much like to discuss the situation that i am in concerning my\nimmediate management .\ni have felt that over the last month i have been floundering a little and\nhave not really been able to turn to anyone in london for direction\nconcerning var ( although as expected steve has been very helpful to give me\nan idea on how to proceed theoretically ) . i do have many of my own ideas\nalthough i think i need to obtain some kind of authority to start any\nsubstantial work . at the moment i feel like i am doing a lot of small things\nand am worried that at some stage someone is going to ask the question -\nwhat exactly does she do over there in research ? ? ?\ni have talked to rodrigo lamas ( rac model validation new hire ) and he has\nhelped me to focus on some points i had already made .\nas a quick summary i have drawn up a memo which outlines some of the points i\nthink need to be addressed as far as the var model is concerned ( i could do a\nsimilar memo for the credit reserve model but to start have focused my\ncomments on market risk ) .\nit is a bit rough and ready ( pls excuse any appalling spelling mistakes ! ) but\ni think it will help you to see what i have been thinking about since i have\nbeen here .\ni do think that the most important issue is that concerning the origin of the\nvol / price curves and how they are constructed .\ncheers\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.406+0000", "entityId": 7923, "properties": {"text": "Subject: v @ r methodology for metal positions\nvince -\nit seems like we should be able use mg ' s v @ r methodology as version 1 . a if\nthe credit component is eliminated and the hold period is conformed to our\none day interval . could we do this and achieve an approximation of where you\nwant to be with the completion of anjam and tamara ' s work ? when submitting a\nrequest for interim metals trading policy to rick buy and jeff skilling , i ' d\nvery much like to represent that , while our methodology may be imperfect , we\nhave ways + means of tracking v @ r right now that will be upgraded to enron\nstandards in very short order . thoughts ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.411+0000", "entityId": 7924, "properties": {"text": "Subject: mg metals var preliminary modella - subject to minor\nupdating / correcting\ndear all ,\ni am leaving the office now , and sending you the preliminary model la for mg\nmetals var that tanya , cantekin , kirstee have put together . we are now in a\nposition to look at the var by metal for positions as of 19 th july 2000 ,\nsubject to some data that needs updating / correcting ; we still need to update\nsome information / data flow processes as follows : -\ni ) factor loadings for silver , gold , cocoa beans and tc ( treatment charge for\ncopper concentrate )\nii ) check correlations between nickel and alu and nickel and copper ( i got\ndifferent answers to houston )\niii ) ensure latest forward price curves are included ( perhaps through live\nlink to telerate / reuters )\niiia ) price for silver is wrong ( units should be $ per troy ounce ) , and\nsimilarly for gold ( price should be $ per troy ounce ) , also we need cocoa\nbean forward curve\niv ) find a better way to extract positional information from mg metals / link\nto the spreadsheet in an automated fashion\nv ) add \" minor \" metals like cobalt , palladium , platinum , cadmium etc . ( n . b . we\nhave 1 , 093 troy ounces of palladium short posn and 3 , 472 troy ounces platinum\nlong as of 19 th july )\nplease feel free to add to this list if i have missed anything ; i believe\nthat we have most of the bases covered in respect of issues to resolve ahead\nof the deadline of 7 th august and fully expect that we will deliver .\nregards ,\nanjam ahmad\nx 35383\nspreadsheet :\np . s . the dll the spreadsheet requires is in\no : \\ research \\ common \\ from _ vsh \\ value @ risk \\ ccode \\ debug \\ varcsnl . dll - > most of you\nhave access to this .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.415+0000", "entityId": 7925, "properties": {"text": "Subject: re : final pivot table for mg metals globals positions data\ndear all ,\nplease see attached spreadsheet - we will have to think of a way to automate\nthe position update - right now it ' s a manual process to convert the text\nfile that andreas sends us to proper spreadsheet format and then pivot table\nthe results - only takes about 20 minutes to do this however . note that the\nversion la var model links via vlookup to the spreadsheet attached ( as you\nknow , we have to use vlookup because mg does not necessarily have positions\nin all forward months , whilst the pivot table only produces numbers for\nforward months with a position ) .\nregards ,\nanjam\nx 35383\npositions as of 19 th july\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 25 / 07 / 2000 20 : 41\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : anjam ahmad 25 / 07 / 2000 19 : 17\nto : cantekin dincerler / hou / ect @ ect\ncc : tanya tamarchenko / hou / ect @ ect , kirstee hewitt / lon / ect @ ect , grant\nmasson / hou / ect @ ect , andreas . barschkis @ mgusa . com @ enron\nsubject : re : positions data\nour pivot table ; we noticed that copper position for 19 th july has option\nincluded but this is not reported in mercur - i guess we should include the\n5 , 248 tonnes for the copper option for 2000 . 09 , but we won ' t show any gamma .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 25 / 07 / 2000 19 : 18\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : anjam ahmad 25 / 07 / 2000 19 : 14\nto : tanya tamarchenko / hou / ect @ ect\ncc : cantekin dincerler / hou / ect @ ect , andreas . barschkis @ mgusa . com @ enron\nsubject : re : positions data\nhi tanya ,\nwe are using the data for 19 th july from andreas - see file attached . we are\nusing this because we can reconcile to mercur print out that we got from\nandreas last wednesday . if you don ' t mind , perhaps cantekin can try again\nwith this new sheet attached . we already looked at it , but would like to see\nwhat cantekin can come up with independently . i think the positions changed\na lot from 3 rd july ( your data ) to 19 th july .\nthanks ,\nanjam & kirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.423+0000", "entityId": 7926, "properties": {"text": "Subject: re : mg metals : summary of var methodology and current status\ndear all ,\nanjam and myself had a highly productive and informative set of meetings\nwith andreas barkchis of mg metals ny on thursday 20 th july in the ny\noffice . firstly we should say \" thanks \" to andreas for being so helpful in\naddressing out numerous requests for information - we look forward to\nestablishing a solid working relationship with him going forward .\nfind below a summary of version _ 1 a for initial rough calculation of mg\nmetal ' s var .\nalso anjam , kirstee ( from london side ) and cantekin , grant , vince and myself\n( houston side ) have been working for last 2 days on the spreadsheet var\nmodel .\nthe current status of this effort and a plan for future progress is\nsummarized in the enclosed document :\nv @ r methodology for mg metals positions\nversion _ 1 a\nintroduction\nthis document describes the initial rough model for calculations\nvalue - at - risk for mg metals . this model will be implemented in a spreadsheet ,\nwhich will serve as a prototype for the risktrac implementation .\nrisk factors\nthe following positions represent most of mg metal \u0001 , s risk and will be covered\nby version _ 1 a :\n- base metals \u0001 , positions including :\n- aluminium ;\n- copper ;\n- gold ;\n- lead ;\n- nickel ;\n- silver ;\n- tin ;\n- zinc ;\nrisk related to these positions will be quantified by simulating forward\nprices for each metal .\n- copper concentrate ;\nrisk related to these positions will be quantified by simulating tc charges .\n- cocoa beans ;\nrisk related to these positions will be quantified by simulating forward\nprices for cocoa beans .\ntherefore these 10 curves will drive the risk : price curves for aluminium ,\ncopper , gold , lead , nickel , silver , tin , zinc and cocoa beans plus tc curve\nfor copper concentrate .\nassumptions and simplifications :\n- for each metal we are going to use a single price curve or all types of\nproducts ( physical , financial , lme traded , comex traded , scrap , alloy , stock ,\netc . ) ;\n- delta , gamma approach for risk on options \u0001 , positions ;\ncomponents required to implement v @ r model :\n- current forward prices available from mercur ;\n- current implied volatilities available through reuters ;\n- current positions from mercur ;\n- history of prices required to calculate factor loadings and correlations\nacross commodities ;\nmethodology\nversion _ 1 a will be based on risk matrix approach . we will calculate principal\ncomponents for each metal and cocoa beans to take in account the correlations\nalong the term structure . we will also calculate the correlations across\ncommodities based on prompt month prices history for last 3 months .\nportfolio hierarchy\neach position will be assigned to one of the following portfolios under the\nwhole portfolio agg - metals :\n- mg metal\n- mg metal\n- mg metall recycling gmbh , ffm ;\nunder each of these sub - portfolio there will be the following sub - portfolios :\n- comex ;\n- frame contract ;\n- lme ;\n- lme alloy ;\n- lme metal index ;\n- option call ;\n- option put ;\n- physical ;\n- physical alloy ;\n- physical real ;\n- physical scrap ;\n- price part . ;\n- prov . billing ;\n- stock ;\n- stock alloy ;\n- stock comex ;\n- stock physical ;\n- stock scrap ;", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.430+0000", "entityId": 7927, "properties": {"text": "Subject: metals cross correlations\ndear all ,\ni have completed the cross - correlation study for the seven metals we have\ndata for - will complete for gold , silver and cocoa . i have also attached\nthe spreadsheet . correlations based on log - returns , 21 , 42 or 63 business\ndays for either front month only or average of entire futures curve - please\nsee data below or drill into spreadsheet . we can choose the most appropriate\ntime - bucket and whether to use front month or \" average of curve \" data .\nregards ,\nanjam\nx 35383\nspreadsheet :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.435+0000", "entityId": 7928, "properties": {"text": "Subject: fwd fwd volatility for metals var\nhi tanya ,\ni think using the 60 business day fwd fwd vols based on historical data is\nreasonable , to ensure consistency with the amount of data we use to estimate\nthe eigenvalues . i am just finishing the correlations study .\nregards ,\nanjam\nx 35383\nzinc :\nlead :\naluminum h :\naluminum s :\ntin :\ncopper :\nnickel :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.439+0000", "entityId": 7929, "properties": {"text": "Subject: mg metals - london research responsibility\ndear all ,\nplease ensure that all requests for metals research support in london are\ndirected / forwarded to me in the first instance ( e . g . option pricing , var ) .\nthis is to ensure speediest response time and to avoid duplication of effort\nas well as confusion on the part of our mg counterparts due to multiple\n( duplicated ) requests for information .\ntanya and i are currently developing version la of the var models for mg\nmetals . vince , ted and mg metals are looking to tanya and i to provide\nleadership in this area for the integration effort and after production of\nvar v . 1 a , i will look to pass on responsibility for mg metals var systems\nintegration to kirstee hewitt for the london side .\nregards ,\nanjam ahmad\nresearch\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.444+0000", "entityId": 7930, "properties": {"text": "Subject: earthsat summer seminar\nfyi\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 07 / 26 / 2000\n05 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntodd decook\n07 / 25 / 2000 01 : 07 pm\nto : mike a roberts / hou / ect @ ect , jose marquez / corp / enron @ enron\ncc :\nsubject : earthsat summer seminar\n- - - - - - - - - - - - - - -\nthe earthsat summer seminar can be downloaded from the following site . . .\n?\n?\njust click on the above link to download the file , or copy the link and\npaste it for the url address in the browser of your choice .\n?\nif you have any questions or problems downloading this file , please contact\nme ( scott gay ) or dave birmingham at ( 301 ) 231 - 0664 .\n?\n- scott\n- - -\nscott gay ( sgay @ earthsat . com )\nstaff meteorologist / computer support\ncropcast services\nearth satellite corporation\nphone : ( 301 ) 231 - 0664\nfax : ? ? ? ? ( 301 ) 231 - 5246\n?\n?\n- imageo 01 . gif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.448+0000", "entityId": 7931, "properties": {"text": "Subject: re : asset auctions\nstinson :\ni don ' t think chonawee can do much in this time frame . it ' s your call if you\nwant to go through the motions .\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 07 / 26 / 2000 09 : 21\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nderek davies\n07 / 25 / 2000 05 : 35 pm\nto : grant masson / hou / ect @ ect\ncc :\nsubject : re : asset auctions ?\ngrant ,\nthanks for all your help .\nthe auction is scheduled to commence a week wednesday ( aug 2 / 2000 ) .\nderek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.453+0000", "entityId": 7932, "properties": {"text": "Subject: re : book notes\nvince : look forward to meeting you . . .\namy\nvince j kaminski @ ect\n07 / 24 / 2000 08 : 33 am\nto : amy oberg / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : book notes\namy ,\ni received your voice - mail message . i was traveling last week and unable\nto answer it directly .\ni shall be glad to join you on thursday for the presentation ( 3 p . m .\non my calendar ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.458+0000", "entityId": 7933, "properties": {"text": "Subject: re : mec\nmark ,\none option is to talk to a number of physicists in my group who might be\ninterested .\nvince\nenron investment partners\nfrom : mark lay 07 / 26 / 2000 07 : 57 am\nto : rex shelby / enron communications @ enron communications , steven j\nkean / hou / ees @ ees , mike mcconnell , vince j kaminski / hou / ect @ ect , philippe a\nbibi / hou / ect @ ect\ncc : kenneth lay / corp / enron @ enron , fabricio soares / hou / ect @ ect\nsubject : mec\nthank you for participating in yesterday ' s meeting . we spoke with harvey and\njim after the meeting and they took to speed to market comments to heart .\nthere is an opportunity for enron to participate with mec in the early\ndevelopment of their company , but it seems the one thing they want is the one\nthing we also want , people . i would appreciate your thoughts and comments on\nthe possiblity of creating a small team that could work directly with mec as\npart of a potential investment and strategic relationship . given our\nresource constraints , this would most likely be part of the organization that\nsees the greatest strategic impact from mec ' s development .\nmark\nx 37408", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.464+0000", "entityId": 7934, "properties": {"text": "Subject: re : new powermod 97 . xls\nmarty :\nabsolutely yes ! we are now using option functions in the exotic options\nlibrary ( in r : \\ exotica which everybody in risk management has access to )\ninstead of the old visual basic code in the powermod file . this improved the\ncalculation speed for options quite a bit .\nwe are also embarking on a new project to develop the next generation\nstructuring and pricing models . i will discuss about this project in more\ndetail with you soon and get your input , but the main goals i see now are :\n1 . superior performance ( speed ) to enable fast pricing especially for the\nunderwriting group ,\n2 . proper documentation for easy maintenance and ability to quickly adapt to\nmeet future needs , and\n3 . security / access control to the files .\nthe first stage in this process is to take inventory of what we have : i am\ndocumenting the current structuring models . this step is important not only\nfor developing our next generation models but also for the aa audit of all\nthe ees pricing models .\nkrishna .\nto : maureen craig / hou / ees @ ees , pinnamaneni krishnarao / hou / ect @ ect , dennis\nbenevides / hou / ees @ ees\ncc :\nsubject : new powermod 97 . xls\nany performance improvement to be expected ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marty sunde / hou / ees on 07 / 26 / 2000 10 : 14\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\npinnamaneni krishnarao @ ect\n07 / 24 / 2000 01 : 37 pm\nto : dennis benevides / hou / ees @ ees , james w lewis / hou / ees @ ees , neil\nhong / hou / ees @ ees\ncc : marty sunde / hou / ees @ ees , alexios kollaros / hou / ees @ ees\nsubject : new powermod 97 . xls\nwe have made enhancements to powermod 97 . xls model to enable proper processing\nfrom the batch model . these changes should not affect current functionality\nof this file . we will be putting the new version into production later today .\nplease contact me or alex kollaros ( x 39806 ) with your comments or problems .\nthanks ,\nkrishna\nx 35485 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.472+0000", "entityId": 7935, "properties": {"text": "Subject: re : ena analysts and associates\ni shall be attending the bi - monthly meetings . we always have a significant\nnumber of associates\nrotating through my group and supporting different units of enron .\nvince kaminski\nenron north america corp .\nfrom : david w delainey 07 / 26 / 2000 10 : 17 am\nsent by : kay chapman\nto : sally beck / hou / ect @ ect , tim belden / hou / ect @ ect , raymond\nbowen / hou / ect @ ect , christopher f calger / pdx / ect @ ect , wes colwell / hou / ect @ ect ,\njanet r dietrich / hou / ect @ ect , jeff donahue / hou / ect @ ect , w david\nduran / hou / ect @ ect , mark e haedicke / hou / ect @ ect , gary hickerson / hou / ect @ ect ,\nmike jakubik / hou / ect @ ect , scott josey / corp / enron @ enron , john j\nlavorato / corp / enron @ enron , rodney malcolm / hou / ect @ ect , george\nmcclellan / hou / ect @ ect , rob milnthorp / cal / ect @ ect , julia murray / hou / ect @ ect ,\njere c overdyke / hou / ect @ ect , david oxley / hou / ect @ ect , kevin m\npresto / hou / ect @ ect , brian redmond / hou / ect @ ect , jeffrey a\nshankman / hou / ect @ ect , c john thompson / corp / enron @ enron , max\nyzaguirre / na / enron @ enron , james a ajello / hou / ect @ ect , edward\nondarza / hou / ect @ ect , vince j kaminski / hou / ect @ ect , beth perlman / hou / ect @ ect ,\nmark frevert / na / enron @ enron , jean mrha / na / enron @ enron , julie a\ngomez / hou / ect @ ect\ncc : patti thompson / hou / ect @ ect , catherine dumont / pdx / ect @ ect , marsha\nschiller / hou / ect @ ect , mollie gustafson / pdx / ect @ ect , shirley\ntijerina / corp / enron @ enron , christy chapman / hou / ect @ ect , tina\nrode / hou / ect @ ect , janette elbertson / hou / ect @ ect , stella l ely / hou / ect @ ect ,\nnicole mayer / hou / ect @ ect , tonai lehr / corp / enron @ enron , kimberly\nhillis / hou / ect @ ect , ana alcantara / hou / ect @ ect , yolanda ford / hou / ect @ ect ,\ncarolyn george / corp / enron @ enron , donna baker / hou / ect @ ect , rhonna\npalmer / hou / ect @ ect , felicia doan / hou / ect @ ect , barbara lewis / hou / ect @ ect ,\npilar cerezo / na / enron @ enron , terrellyn parker / hou / ect @ ect , dusty warren\npaez / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , nicki daw / na / enron @ enron ,\ncherylene r westbrook / hou / ect @ ect , kay chapman / hou / ect @ ect , lillian\ncarroll / hou / ect @ ect , venita coleman / corp / enron @ enron , melissa\njones / na / enron @ enron ( bcc : ted c bland / hou / ect )\nsubject : ena analysts and associates\ni have just received word from ted bland that no one has responded to this\nmemo . please re - read the following memo and respond to ted by july 31 , 2000 .\nthanks in advance for your prompt attention to this matter .\nas you know the ena otc is actively working with the analyst and associate\nprogram to develop greater talent flow into ena . we are presently working on\na number of initiatives to improve how this is working and significantly\nimprove communication flow and responsiveness . however in this regard we also\nneed you to help make sure we have clear lines of communication within ena\nregarding a & a resource levels , performance , rotations and retention efforts .\nin this regard we would like for each of you to take the lead for your\ngroups needs and ensure that any requests , questions or concerns about a & a ' s\nin your area are passed through you to either ted bland ( ena recuitment team\nlead - x 35275 ) or jana giovannani ( ena liaison from the aa program - x 39233 )\nor myself . it is important that we are discerning about what we do with our\na & a resources and plan carefully and accurately for our future needs , in this\nregard we need for you personally ( or a senior member of your team who you\nmay optionally delegate this task to ) will take the time to review any a & a\nresource requests from your team before passing them onto us .\nin addition , given the importance of these resources , we will be inviting you\nto a regular bi - monthly meeting to discuss ena a & a matters . we will confirm\nthe first date in due course . in the meantime if you would like to volunteer\nanother senior member of your team to assume this reponsibility please supply\ntheir name as soon as possible .\nplease call with any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.477+0000", "entityId": 7936, "properties": {"text": "Subject: ena analysts and associates\ni have just received word from ted bland that no one has responded to this\nmemo . please re - read the following memo and respond to ted by july 31 , 2000 .\nthanks in advance for your prompt attention to this matter .\nas you know the ena otc is actively working with the analyst and associate\nprogram to develop greater talent flow into ena . we are presently working on\na number of initiatives to improve how this is working and significantly\nimprove communication flow and responsiveness . however in this regard we also\nneed you to help make sure we have clear lines of communication within ena\nregarding a & a resource levels , performance , rotations and retention efforts .\nin this regard we would like for each of you to take the lead for your\ngroups needs and ensure that any requests , questions or concerns about a & a ' s\nin your area are passed through you to either ted bland ( ena recuitment team\nlead - x 35275 ) or jana giovannani ( ena liaison from the aa program - x 39233 )\nor myself . it is important that we are discerning about what we do with our\na & a resources and plan carefully and accurately for our future needs , in this\nregard we need for you personally ( or a senior member of your team who you\nmay optionally delegate this task to ) will take the time to review any a & a\nresource requests from your team before passing them onto us .\nin addition , given the importance of these resources , we will be inviting you\nto a regular bi - monthly meeting to discuss ena a & a matters . we will confirm\nthe first date in due course . in the meantime if you would like to volunteer\nanother senior member of your team to assume this reponsibility please supply\ntheir name as soon as possible .\nplease call with any questions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.481+0000", "entityId": 7937, "properties": {"text": "Subject: london research group\njohn ,\ni am writing to you regarding the management of the london research group .\nas you know , dale surbey , who was managing the london unit of the research\ngroup ,\nis moving to ebs . dale did a terrific job helping me to develop the pool of\ntalent we have currently\nin london .\ngiven that dale is likely to be transfered to houston , it ' s time\nto nominate one member of the research group for a management position .\nmy recommendation is steve leppard . steve emerged not only as the most\ntechnically qualified member of the group but also as a natural leader ,\nhighly\nrespected by his peers and internal customers . steve has a very high energy\nlevel\nand is very efficient as a manager and as coach of new talent .\nhis promotion is likely to cause anjam ' s departure form enron . i value\ntechnical\nskills of anjam , but in spite of my loyalty to him , don ' t think he is the\nsame caliber\nas steve . however , i would not like to lose him and think about moving him to\nhouston\nfor 2 years . i think that the opportunity to work in houston , would be a\nsufficient\nincentive to keep him in enron . by the way , his performance feedback has\ngreatly improved .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.486+0000", "entityId": 7938, "properties": {"text": "Subject: re : probation period - matthew williams\nhi karen\ni ' m happy for matt to be made permanent - all relevant feedback is contained\nin his prc .\ncheers ,\nsteve\nkaren tamlyn\n07 / 26 / 2000 10 : 50 am\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : probation period - matthew williams\nnotice of end of probationary period\ni am writing to inform you that the six month probationary period for matthew\nwilliams is due to end on the on the 21 st august 2000 .\nif you are happy to pass their probationary period please reply confirming\nthis giving any feedback you deem necessary .\nhowever , if you are unsure and wish to either extend or fail the probationary\nperiod please contact sophie kingsley immediately to discuss further .\nmany thanks\nkaren tamlyn\nhr\next . 34310", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.490+0000", "entityId": 7939, "properties": {"text": "Subject: re : sharad agnihotri\nkate ,\nhas the paperwork been finalized yet ? let me know if we ' ve agreed a start\ndate yet .\nthanks ,\ndale\nkate bruges\n18 / 07 / 2000 12 : 52\nto : dale surbey / lon / ect @ ect , anjam ahmad / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : sharad agnihotri\ni have just spoken to alex blair from alexander mann who met with sharad this\nmorning .\nsharad has verbally accepted our revised offer and is expected to return the\npaperwork tomorrow . i will let you know as soon as i get a start date from\nhim .\nregards\nkate", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.495+0000", "entityId": 7940, "properties": {"text": "Subject: re : please find home for brainful candidate\nshirley ,\nplease , arrange a phone interview . zimin , stinson , and myself .\nhe may be a good candidate for tanya .\nvince\nstinson gibner\n07 / 20 / 2000 11 : 16 am\nto : pinnamaneni krishnarao / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : please find home for brainful candidate\nany interest ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 07 / 20 / 2000\n11 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstephanie miller @ enron\n07 / 20 / 2000 10 : 49 am\nto : stinson gibner / hou / ect @ ect , joe williamson / gco / enron @ enron\ncc :\nsubject : please find home for brainful candidate\nattached for your review is a resume a friend of mine came across . thought\nyou might want to review .\nregards ,\nstephanie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie miller / corp / enron on 07 / 20 / 2000\n11 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndebbie chance\n07 / 20 / 2000 09 : 42 am\nto : stephanie miller / corp / enron @ enron\ncc :\nsubject : please find home for brainful candidate\nstephanie ,\ncame by way of friend of a friend - looks very good on paper . he has\nidentified an interest in the following jobs that were posted in the net .\nyou know everyone here - could you identifiy the appropriate people to call\nattention to this candidate ?\nresume attached below .\nthanks ,\ndc\n1 . economic advisor\ncontact : respond to enron corp , human resources 235 , p . o . box 3330 , omaha ,\nne\n68103 - 0330 or e - mail : dea . crum @ enron . com as a . doc or . txt attachment . please\ninclude this requisition number : 104776\n| | |\n| job id | 0000104776 |\n| | |\n| | |\n| department | systems optimization team |\n| | |\n| | |\n| company | gas pipeline group |\n| | gas pipeline group |\n| | |\n2 . manager\ncontact : please do not contact the hiring manager . no faxes please . send\nresumes\nvia e - mail to tony . vasut @ enron . com or mail to enron , attn : tvasut - eb 3628 ,\n1400\nsmith st . , houston , tx 77002 . please refer to job # 104486\n( embedded image moved to file : pico 4224 . pcx )\n| | |\n| job id | 0000104486 |\n| | |\n| | |\n| department | trade credit |\n| | |\n| | |\n| company | corporate staff |\n| | risk assessment and control |\n| | |\n3 . manager\ncontact : to submit resume for consideration , please e - mail it to\nbholcomb @ enron . com if possible . plain text in the message or an attached\nword . doc are acceptable . please use no columns , italics or underlines . if\nunable\nto email , bholcomb @ enron . com , fax it to ( 713 ) 646 - 2169 , attn : ebl 013 a or mail\nit\nto b . holcomb , ebl 013 a , p . o . box 1188 , houston , tx . 77251 - 1188\n| | |\n| job id | 0000104778 |\n| | |\n| | |\n| department | asset operations & svcs |\n| | |\n| | |\n| company | wholesale , retail & comm |\n| | enron energy services |\n| | |\n4 . gas trading support generalist\ncontact : please email resume to mark . broadfoot @ enron . com or if email is\nunavailable , respond to mark broadfoot eb 3617 a . reference job id # 0000104730 in\nemail subject . resumes not accepted from agents . global technology hot job\n( embedded image moved to file : picl 9645 . pcx )\n| | |\n| job id | 0000104730 |\n| | |\n| | |\n| department | infrastructure & integrat |\n| | |\n| | |\n| company | global functions |\n| | technology |\n| | |\n5 . risk management analyst\ncontact : to be considered for this position , please e - mail your resume as a\n. doc\nor . txt attachment with your salary history to enajobs 4 @ enron . com . ( please\neliminates italics , underlining , multiple margins or side - by - side columns . )\nplease indicate on the email subject line your name and the job id # . resumes\nwith salary history will receive priority review .\n| | |\n| job id | 0000104631 |\n| | |\n| | |\n| department | global facilities |\n| | |\n| | |\n| company | wholesale , retail & comm |\n| | north america |\n| | |\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.501+0000", "entityId": 7941, "properties": {"text": "Subject: rabi de\nshirley ,\nvince decided to have rabi de for a formal interview . could you co - ordinate\nwith hr\nto arrange this ? thanks .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 07 / 26 / 2000 11 : 01 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n07 / 07 / 2000 05 : 03 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : rabi de phone interview\nshirley ,\nlet ' s act on it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 07 / 2000\n05 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n07 / 07 / 2000 01 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : rabi de phone interview\nvince ,\nwe had phone interview with rabi de . my impression is good . we should invite\nhim for a formal interview .\nhe is a hands on person with wide range of experience ( energy financing ,\nderivatives trading , hedging , etc ) .\nhe communicates very well and expressed interest in financial engineering &\nmodeling .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.510+0000", "entityId": 7942, "properties": {"text": "Subject: re :\nvince ,\nsorry for getting back a little late . i have been in touch with kirstee to\nfigure out how to treat positions data which is the primary cause for\nfluctuations . apparently , as of 7 / 19 , mg still has july position . this may be\nspot or balance of the month , or some settlement issue . this indeed is what\nwe are trying to find out / verify ( it may be an error too ) . kirstee is going\nto get back to me on this . if it is not an error , then anjam ' s latest results\n( $ 5 . 5 million total var ) are reasonable given all the assumptions and the\nmissing pieces . i will keep you posted .\ncantekin\nvince j kaminski\n07 / 26 / 2000 10 : 12 am\nto : cantekin dincerler / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , ted murphy / hou / ect @ ect\nsubject : re :\ncantekin ,\ncan you figure out the reason for cocoa beans var fluctuations ?\nthe same is true of aluminum . i assume this is the position change .\nvince\ncantekin dincerler\n07 / 26 / 2000 09 : 28 am\nto : anjam ahmad / lon / ect @ ect , kirstee hewitt / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject :\nanjam and kirstee ,\nas i have suspected the position as of 6 / 30 vs 7 / 19 makes the difference . the\nfirst table first column is my var number with 6 / 30 position and gold & silver\nprices , the second column is your var with 7 / 19 position and dummy\ngold & silver prices . the second table first column is my var with 7 / 19\nposition and 6 / 30 gold & silver prices , the second column is as before .\ni would ask you to plug the gold and silver prices and see what kind of\nnumbers you get in order to verify we are on the same page . please refer to\nmodelvar 2000 . xls that i have sent you for gold & silver prices and\nvolatilities .\nthank you ,\ncantekin\ntable 1\ntable 2", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.518+0000", "entityId": 7943, "properties": {"text": "Subject: update on mg var model\nhi vince ,\nthanks for the e - mail . we have included live links to price curves through\nreuters quotes via telerate bridge but we still have static curves for gold\nand cocoa . kirstee is talking to andreas in ny to obtain position files on a\ndaily basis , addressing point 2 ) in your e - mail , as well as looking into\nlonger term integration issues . cantekin and i have agreed the correct\ncorrelations for the metals between us , but cantekin is currently checking\nthe correlations for silver and gold . preliminary results based on positions\nas of 19 th july are as follows :\nwe noticed that position mapping at the front months can change var\nsignificantly .\nas you stated , kirstee hewitt will now be assuming responsibility for further\nmodifications to the model on the london side and to this end i have ensured\nthat kirstee is put in touch with key personnel like andreas ( andreas will be\nin the london office next week ) and has access to all the information she\nneeds .\nregards ,\nanjam ahmad\nresearch\nx 35383\nspreadsheet :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.523+0000", "entityId": 7944, "properties": {"text": "Subject: re :\ncantekin ,\ncan you figure out the reason for cocoa beans var fluctuations ?\nthe same is true of aluminum . i assume this is the position change .\nvince\ncantekin dincerler\n07 / 26 / 2000 09 : 28 am\nto : anjam ahmad / lon / ect @ ect , kirstee hewitt / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject :\nanjam and kirstee ,\nas i have suspected the position as of 6 / 30 vs 7 / 19 makes the difference . the\nfirst table first column is my var number with 6 / 30 position and gold & silver\nprices , the second column is your var with 7 / 19 position and dummy\ngold & silver prices . the second table first column is my var with 7 / 19\nposition and 6 / 30 gold & silver prices , the second column is as before .\ni would ask you to plug the gold and silver prices and see what kind of\nnumbers you get in order to verify we are on the same page . please refer to\nmodelvar 2000 . xls that i have sent you for gold & silver prices and\nvolatilities .\nthank you ,\ncantekin\ntable 1\ntable 2", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.527+0000", "entityId": 7945, "properties": {"text": "Subject: anjam and kirstee ,\nas i have suspected the position as of 6 / 30 vs 7 / 19 makes the difference . the\nfirst table first column is my var number with 6 / 30 position and gold & silver\nprices , the second column is your var with 7 / 19 position and dummy\ngold & silver prices . the second table first column is my var with 7 / 19\nposition and 6 / 30 gold & silver prices , the second column is as before .\ni would ask you to plug the gold and silver prices and see what kind of\nnumbers you get in order to verify we are on the same page . please refer to\nmodelvar 2000 . xls that i have sent you for gold & silver prices and\nvolatilities .\nthank you ,\ncantekin\ntable 1\ntable 2", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.532+0000", "entityId": 7946, "properties": {"text": "Subject: john sherriff ' s copper position\nted , bjorn ,\nany info about this position ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 26 / 2000\n08 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp . - europe\nfrom : anjam ahmad 07 / 26 / 2000 03 : 55 am\nto : esther gerratt / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , andreas . barschkis @ mgusa . com @ enron , tanya\ntamarchenko / hou / ect @ ect\nsubject : john sherriff ' s copper position\nhi esther ,\ni just talked to john sherriff about his \" enron \" copper position . i suspect\nthat this is not currently being captured within the mg mercur position\ndatabase - he would like to have that included in the var spreadsheet and\nshown as a separate line . do you have any information regarding this deal\n( i . e . position sizes , qualities etc . ) or be able to direct me to someone who\nmay be able to assist in getting this information ?\nthanks ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.536+0000", "entityId": 7947, "properties": {"text": "Subject: sas\nto the group :\nif you wish to use sas , there are a few simple things you need to do :\n1 ) you need to get a unix password if you don ' t already have one ( your user\nid will be the same as on the nt network , but a different password is issued )\n2 ) you need a program called \" exceed \" on your pc . request it from it ( you\nalready have this if you are already a user of lim on the unix platform )\n3 ) you need an \" ftp \" program on your pc . you can go to www . download . com and\ndownload one ( i like wsftp )\n4 ) exceed is funny in the way it runs . when you invoke exceed ( or lim\nadvanced user ( under infobases ) if you already have this ) it will install\nitself the first time , and will then \" disappear \" to the taskbar . you need to\n* right * click on the taskbar on exceed , and then choose \" tools \" and \" client\nstartup \" and then \" new . \"\nyou will enter a box which should already be set for rexec and an xwindow\nemulation . you need to specify the host type as sun , enter your user name and\npassword , set the host name to :\ncapers . ect . enron . com\nand then , on the command line , type the following ( carefully ) :\n/ usr / openwin / bin / xterm - display @ d\nthen , use the file menu to save this as capers . xs and then click on the run !\nmenu . within a second or two , a window will open up with you logged into the\nserve capers . you are now on a unix server , and the directory is your home\ndirectory . from here , if you simply type \" sas \" the 3 windows for an\ninteractive session with sas should open on your desktop . you are in business .\n5 ) you also need to install your ftp . follow the procedures with the\nsoftware , and then create a new session called \" enron \" where you choose as\nthe server simply \" earth \" ( do not add any further descriptors such as\n. enron . com ) . supply your user name and * unix * password , check the \" remember\npassword \" box , and the default communication setups should be correct ( eg ,\nhost type as \" automatic detect \" ) .\nwhen you invoke ftp and connect to enron , it will put you in your home\ndirectory on the unix system , the same directory your xwindow comes up in\nunder exceed .\nif you have any problems , i ' ll be happy to help\nclayton\nps i have a complete set of new sas manuals i am happy to loan out if you ' ll\njust write your name down when you take them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.541+0000", "entityId": 7948, "properties": {"text": "Subject: risk and purchasing meeting - eb 4438\nthis is scheduled to be a short ( 1 hour ) meeting to discuss risk and\npurchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.546+0000", "entityId": 7949, "properties": {"text": "Subject: re : allan roberts email\njim ,\nthanks . i shall drop him an e - mail .\nvince\njames . w . petrie . jr @ us . arthurandersen . com on 07 / 27 / 2000 05 : 51 : 31 pm\nto : vkamins @ enron . com\ncc : allan . roberts @ uk . arthurandersen . com\nsubject : allan roberts email\nvince - it was a pleasure to meet you this afternoon . as promised , please\nfind\nallan ' s email address above . we look forward to working with enron and mit on\nfinding better ways to value companies .\nif you have any questions , please feel free to contact me .\njim\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames w . petrie , jr .\nknowledge sharing director\nenergy industry knowledge services group\narthur andersen llp - houston office\nvoice = = > 713 . 237 . 2357 , fax = = > 713 . 237 . 5673\njames . w . petrie . jr @ us . arthurandersen . com\n- - - - - - - - - -\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.550+0000", "entityId": 7950, "properties": {"text": "Subject: re : mec\nsteve ,\ni spoke with david ealier today . he is planning a meeting with jim tour to\ndue diligence the technology .\ni would like to put together a team to drive mec ' s strategy , including a\nconsolidation in houston . we would trade this commitment for warrants in the\ncompany and a right to participate in future fundings . effectively , our team\ncould help drive the strategy for the company and due diligence a possible\ninvestment at the same time .\nthanks ,\nmark\nsteven j kean @ ees\n07 / 26 / 2000 05 : 11 pm\nto : mark lay / hou / ect @ ect\ncc : rex shelby / enron communications @ enron communications @ ect , mike\nmcconnell @ ect , vince j kaminski / hou / ect @ ect , philippe a bibi / hou / ect @ ect ,\nkenneth lay / corp / enron @ enron @ ect , fabricio soares / hou / ect @ ect\nsubject : re : mec\ni think it would be useful to verify their view that they are really only 2 - 3\nyears from commercial production . ideally , we could get that confirmation\nfrom someone familiar with the technology but without any financial interest\nin its success . their technology pitch sounded good , but i don ' t know enough\nto recognize the potential shortcomings . i want to feel comfortable that you\nall feel this is real , then i would be happy to have me and my team spend\nsome time with them .\nto : rex shelby / enron communications @ enron communications , steven j\nkean / hou / ees @ ees , mike mcconnell , vince j kaminski / hou / ect @ ect , philippe a\nbibi / hou / ect @ ect\ncc : kenneth lay / corp / enron @ enron , fabricio soares / hou / ect @ ect\nsubject : mec\nthank you for participating in yesterday ' s meeting . we spoke with harvey and\njim after the meeting and they took to speed to market comments to heart .\nthere is an opportunity for enron to participate with mec in the early\ndevelopment of their company , but it seems the one thing they want is the one\nthing we also want , people . i would appreciate your thoughts and comments on\nthe possiblity of creating a small team that could work directly with mec as\npart of a potential investment and strategic relationship . given our\nresource constraints , this would most likely be part of the organization that\nsees the greatest strategic impact from mec ' s development .\nmark\nx 37408", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.555+0000", "entityId": 7951, "properties": {"text": "Subject: re : mec\nmark ,\nsteve ' s comment has many merits . i think stinson gibner and grant masson\n( physics ph . d . ' s ) can help to identify\nacademic and industry sources to validate some of the claims .\non the other hand , even if our guests were wrong by a factor of 2 or 3 in\ntheir time estimates , the technology\nthey develop will bring about a technological revolution with enormous\npotential payoffs . it make sense to\nstay close to them and to explore potential investment opportunities .\nvince\nsteven j kean @ ees\n07 / 26 / 2000 05 : 11 pm\nto : mark lay / hou / ect @ ect\ncc : rex shelby / enron communications @ enron communications @ ect , mike\nmcconnell @ ect , vince j kaminski / hou / ect @ ect , philippe a bibi / hou / ect @ ect ,\nkenneth lay / corp / enron @ enron @ ect , fabricio soares / hou / ect @ ect\nsubject : re : mec\ni think it would be useful to verify their view that they are really only 2 - 3\nyears from commercial production . ideally , we could get that confirmation\nfrom someone familiar with the technology but without any financial interest\nin its success . their technology pitch sounded good , but i don ' t know enough\nto recognize the potential shortcomings . i want to feel comfortable that you\nall feel this is real , then i would be happy to have me and my team spend\nsome time with them .\nto : rex shelby / enron communications @ enron communications , steven j\nkean / hou / ees @ ees , mike mcconnell , vince j kaminski / hou / ect @ ect , philippe a\nbibi / hou / ect @ ect\ncc : kenneth lay / corp / enron @ enron , fabricio soares / hou / ect @ ect\nsubject : mec\nthank you for participating in yesterday ' s meeting . we spoke with harvey and\njim after the meeting and they took to speed to market comments to heart .\nthere is an opportunity for enron to participate with mec in the early\ndevelopment of their company , but it seems the one thing they want is the one\nthing we also want , people . i would appreciate your thoughts and comments on\nthe possiblity of creating a small team that could work directly with mec as\npart of a potential investment and strategic relationship . given our\nresource constraints , this would most likely be part of the organization that\nsees the greatest strategic impact from mec ' s development .\nmark\nx 37408", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.559+0000", "entityId": 7952, "properties": {"text": "Subject: re : american gas association\nmike ,\nplease , draft a message to js , dd and jl outlining the aga\nbenefits and costs . this will be their decision .\nvince\nfrom : mike a roberts 07 / 27 / 2000 09 : 10 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : american gas association\nvince - - -\nthis project is getting lost in the cracks\nshould we meet with dave delainy to get it off high center ? ?\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 07 / 27 / 2000\n09 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nelizabeth linnell @ ees\n07 / 27 / 2000 08 : 41 am\nto : mike a roberts / hou / ect @ ect\ncc : richard shapiro / hou / ees @ ees\nsubject : re : american gas association\nplease see the string of messages below .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by elizabeth linnell / hou / ees on 07 / 27 / 2000\n08 : 36 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarolyn cooney @ enron\n07 / 27 / 2000 08 : 35 am\nto : elizabeth linnell / hou / ees @ ees\ncc :\nsubject : re : american gas association\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carolyn cooney / corp / enron on 07 / 27 / 2000\n09 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : allison navin 07 / 26 / 2000 05 : 23 pm\nto : cynthia sandherr / corp / enron @ enron\ncc : carolyn cooney / corp / enron @ enron\nsubject : re : american gas association\ni actually called stan horton ' s office yesterday to find out if they knew\nanything about the aga membership , and cindy stark who works with stan\ninformed me that stan cancelled our associate membership with aga effective\njanuary , 2000 . i called jay copan with aga back and left him a voicemail\nwith the information . i asked him to call me if he had any questions and i\nhave not heard back from him . i ' ll considered it closed unless i hear back\nfrom him .\nfrom : cynthia sandherr 07 / 25 / 2000 08 : 08 pm\nto : carolyn cooney / corp / enron @ enron\ncc : allison navin / corp / enron @ enron\nsubject : re : american gas association\nthis is a joe hillings issue .\ncarolyn cooney\n07 / 25 / 2000 11 : 01 am\nto : allison navin / corp / enron @ enron\ncc : cynthia sandherr / corp / enron @ enron\nsubject : re : american gas association\ni believe that stan horton ' s office handled the dues for aga .\nfrom : allison navin 07 / 25 / 2000 10 : 33 am\nto : cynthia sandherr / corp / enron @ enron\ncc : carolyn cooney / corp / enron @ enron\nsubject : american gas association\njay copan with american gas assn . called . julie caboose suggested that he\ntalk with you about enron ' s aga dues . ( he spoke to rick shapiro who said\nthat he has no knowledge of the dues situation ) . please call at 202 - 824 - 7020 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.564+0000", "entityId": 7953, "properties": {"text": "Subject: bios of mit participants\nvince : bios from mit participants did arrive - - - see below . amy\ndonald r . lessard\ndeputy dean ; epoch foundation professor of international management\noffice e 52 - 474\ntel 617 - 253 - 6688\n? ? ? ? ? ? ? ? ? ? ?\nlessard ' s current research is focused on the shaping and managing of risks in\nlarge engineering projects , the globalization of financial services , and\nknowledge development within multinational firms . as deputy dean , lessard\ncoordinates sloan ' s research centers and provides faculty leadership for its\ninternational initiatives , institutional partnerships and executive\neducation . the international initiatives include joint programs with tsinghua\nand fudan universities and lingnan ( university ) college in china , as well as\nprograms in taiwan and singapore . lessard is also the faculty director for\nthe mit - wide partnership between merrill lynch and mit .\ngeneral expertise international corporate strategy and finance\ns . p . kothari\ngordon y billard professor of accounting and finance\noffice e 52 - 325\ntel 617 - 253 - 0994\n? ? ? ? ? ? ? ? ? ? ? ?\nkothari is an editor of the journal of accounting & economics , and his\nresearch work has been widely published in leading accounting and finance\njournals . past research has focused on the relation between financial\ninformation and security prices , accounting for executive stock options ,\ntests of security - price performance and market efficiency , corporate uses of\nderivatives for hedging and speculation , and issues surrounding executive\ncompensation . recent published research includes : \" the relation between\nearnings and cash flows \" ( with patty dechow and ross watts ) , journal of\naccounting \" a market - based evaluation of discretionaryaccrual\nmodels \" ( with wayne guay and ross l . watts ) , journal of accounting research ,\n1996 ; \" another look at the cross - section of expected returns \" ( with jay\nshanken and richard sloan ) , journal of finance , 1995 ; and \" measuring\nlong - horizon security price performance \" ( with jerold b . warner ) , journal of\nfinancial economics , 1997 .\ngeneral expertise accounting , india , stock trading", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.568+0000", "entityId": 7954, "properties": {"text": "Subject: re : aluminium asian digital options\nanjam ,\nwe can use moment matching to find the \" effective \" volatility and dividend\nyield for the average .\nthen we can apply the european digital option formula . attached please find\nthe c - code i did\nfor asian spread option , when i find the effective vol and drift for both\naverages then find the option\nvalue by calling the european spread option . you can do just the same for\nthe asian digital option .\nit would be nice to do a monte - carlo , just checking the accuracy of the\napproximation .\nit was nice to have you here , we are impressed by the work you have done .\nkeep up the good work .\nzimin\nenron capital & trade resources corp . - europe\nfrom : anjam ahmad 07 / 27 / 2000 10 : 14 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : aluminium asian digital options\nhi zimin ,\nrussell placket of mg metals just talked to me about the issue of pricing a\nstrip of twelve monthly asian digital options on lme aluminium . as i\nunderstand , the payoff to the customer is a fixed cash amount that wil be\npaid if the average of the closing prices of aluminium for a month are\ngreater than the strike agreed in advance , where holiday days do not\ncontribute to the average .\nrussell mentioned that this would be a set of 12 monthly options starting in\njan - 01 , and that the lme price for jan - 01 of $ 1572 . 5 ( which is the future\nconverging to the spot price on the 3 rd wednesday in jan 01 ) can be used as a\nproxy / estimate for the average for the month .\ndo you have a model for asian digitals or should i proceed with monte carlo\nto price this , maybe using european digital option model as control variate ?\nthanks ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.573+0000", "entityId": 7955, "properties": {"text": "Subject: eol guest account access\nattention : esai\ned krapels\nthank you for your interest in enrononline .\nthe following is a guest password that will allow you temporary view only\naccess to enrononline . please note , the user id and password are case\nsensitive .\nguest user id : ena 61296\nguest password : welcome !\nin order to apply for transaction status with enrononline , your company needs\nto complete a password application and registration form for a master user\naccount . each master user will be able to grant various levels of access for\nadditional users .\nto obtain a password application and registration form , you can visit our\nwebsite at www . enrononline . com and select the \u0001 & how to register \u0001 8 link , or call\nour helpdesk at 713 / 853 - help ( 4357 ) . alternatively , you may click on the\nattached documents , complete the forms , and fax to 713 - 646 - 8511 .\njust a reminder , in order to access enrononline , shockwave needs to be\ninstalled . the shockwave installer can be found within \" about enrononline \"\non the home page . after opening \" about enrononline \" , using right scroll bar ,\ngo to the bottom . click on \" download shockwave \" and follow the directions .\nafter loading shockwave , shut down and reopen browser ( i . e . microsoft\ninternet explorer / netscape ) .\nwe hope you will find that enrononline provides an easy and more efficient\nway to do business with enron . we look forward to transacting with you online .\nsincerely ,\ndanny lee\nenrononline helpdesk\n713 / 853 - help ( 4357 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.577+0000", "entityId": 7956, "properties": {"text": "Subject: energycast\nplease could you sort out an guest id for one month .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by louise kitchen / hou / ect on 27 / 07 / 2000\n13 : 59 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n26 / 07 / 2000 09 : 05\nto : louise kitchen / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : energycast\nlouise ,\ncan we grant him guest access to eol again ? he is he same\nperson who requested it a few weeks ago . evidently he was busy\nworking on another project .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 26 / 2000\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" edward krapels \" on 07 / 25 / 2000 11 : 09 : 47 am\nplease respond to ekrapels @ esaibos . com\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : energycast\ndear vince ,\ni hope your trip to australia was successful . it ' s one of my favorite places\nto go .\ni ' ve copied you on the email to mike initiating enron ' s trial service to\nenergycast . thanks for helping to set this up .\nwould you ask the authorities in enron to refresh my access to enrononline ?\nmy guest user id as ena 61296 and my guest password was tr 84 byl 3 . they no\nlonger work , probably because i haven ' t visited the site in months as we\nwere in full development mode on energycast .\nvince , you will note in our website references to forward prices of power in\nnepool , nypp , and pjm . we use reuters as a reference - - not satisfactory . if\nyour traders like energycast and enron became a client , would enron consider\nlinking its prices to our site ? we have to improve over the reuters quotes\nand regard enrononline or bloomberg as the best candidates . over time , as\nour service spreads i believe this could help generate deal flow for your\ntraders .\nlet me know what you think .\ned", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.581+0000", "entityId": 7957, "properties": {"text": "Subject: important united way reminder\nreminder !\nthe united way executive breakfasts are one week away . please rsvp if you\nhave not already done so .\ndate : thursday , august 3 , 2000 ( hosted by joe sutton )\nor\nfriday , august 4 , 2000 ( hosted by jeff skilling )\ntime : 7 : 45 - 9 : 00 a . m .\nlocation : depelchin children \u0001 , s center\n100 sandman ( near memorial and shepherd intersection )\nrsvp : reply directly to this email or call jessica nunez , 853 - 1918 by\nmonday , july 31\ntransportation : bus will depart from the enron building ( andrews street\nside ) promptly at 7 : 30 a . m . bus transportation is encouraged , due to limited\nonsite parking . however , if you should need to drive , directions to depelchin\nare below .\nexecutive solicitation\nexecutive solicitation kicked - off on july 24 and is well underway . as you\nknow , participation by enron \u0001 , s executive team is vital to the success of the\ncampaign . to make your contribution , please click on the following united\nway link , http : / / unitedway . enron . com or go directly to internet explorer or\nnetscape and type in http : / / unitedway . enron . com in the address field . either\noption should take you to enron \u0001 , s united way 2000 campaign site where you\nshould be able to make your pledge within minutes . please call kathy\nmayfield , enron \u0001 , s campaign coordinator at 713 / 853 - 3264 if you have any\ndifficulties at all accessing the site .\nwe look forward to seeing you next week !\ndirections to depelchin children \u0001 , s center \u0001 ) 100 sandman ( 713 - 861 - 8136 )\nfrom downtown houston\n? take prairie ( which turns into memorial ) or allen parkway west to shepherd .\n? turn right on shepherd .\n? turn left on feagan ( which is the first light after memorial . )\n? turn left on sandman and drive down a couple of blocks .\nfrom the galleria area\n? take 610 north to the woodway / memorial exit . exit and turn right on woodway .\n? woodway will turn into memorial and stay on memorial until you see the\nshepherd exit .\n? exit shepherd and turn left on shepherd .\n? turn left on feagan ( which is the first light after memorial . )\n? turn left on sandman and drive down a couple of blocks .\nfrom north of downtown\n? take 45 or 59 south to i - 10 . go west on i - 10 .\n? take the shepherd / durham exit and go through the shepherd intersection to\ndurham . go left under the freeway on durham .\n? turn right on feagan ( which will be a light . )\n? turn left on sandman and drive down a couple of blocks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.587+0000", "entityId": 7958, "properties": {"text": "Subject: re : london research group\ni ' d do it as soon as possible . your call on exactly when .\nregards\nrichard\nvince j kaminski\n27 / 07 / 2000 17 : 11\nto : richard lewis / lon / ect @ ect\ncc : john sherriff / lon / ect @ ect , vince j kaminski / hou / ect @ ect , grant\nmasson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe gold / lon / ect @ ect , dale\nsurbey / lon / ect @ ect\nsubject : re : london research group\nrichard ,\nplease , let me know what the timetable is . i would like to talk to anjam a\nfew days before\nto break the news to him . i hope i can save him for the company and offer him\na position in houston .\nwe desperately need skills he has .\nvince\nrichard lewis\n07 / 27 / 2000 02 : 20 am\nto : dale surbey / lon / ect @ ect\ncc : john sherriff / lon / ect @ ect , vince j kaminski / hou / ect @ ect , grant\nmasson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe gold / lon / ect @ ect\nsubject : re : london research group\ni agree with dale - no point in delaying .\ndale surbey\n27 / 07 / 2000 08 : 13\nto : john sherriff / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , richard lewis / lon / ect @ ect , grant\nmasson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe gold / lon / ect @ ect\nsubject : re : london research group\njohn ,\ni propose accelerating steve ' s move to head the research group here . it\nmakes sense to include this as part of the mid - year prc process by giving him\na tangible reward along with his performance feedback .\nthoughts ?\n- dale\njohn sherriff\n27 / 07 / 2000 06 : 44\nto : vince j kaminski / hou / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , richard\nlewis / lon / ect @ ect , grant masson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe\ngold / lon / ect @ ect\nsubject : re : london research group\nvince - i agree with your conclusion here . we are still trying to fill\ndale ' s structuring role as well so part of the question is\nhow we announce steve ' s lead research role relative to when we know who will\ntake dale ' s spot . perhaps we should just\nmove forward with the steve announcement the day that dale moves full time to\nebs . i will ask richard lewis to take the lead\nin working with you on finalizing the decision and communcicating the changes\nto the organization .\nbut i do want to reinforce how pleased we are to have steve here . he is a\nwonderfull asset to our efforts .\nthanks !\njohn\nvince j kaminski\n26 / 07 / 2000 22 : 18\nto : john sherriff / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , richard\nlewis / lon / ect @ ect , grant masson / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : london research group\njohn ,\ni am writing to you regarding the management of the london research group .\nas you know , dale surbey , who was managing the london unit of the research\ngroup ,\nis moving to ebs . dale did a terrific job helping me to develop the pool of\ntalent we have currently\nin london .\ngiven that dale is likely to be transfered to houston , it ' s time\nto nominate one member of the research group for a management position .\nmy recommendation is steve leppard . steve emerged not only as the most\ntechnically qualified member of the group but also as a natural leader ,\nhighly\nrespected by his peers and internal customers . steve has a very high energy\nlevel\nand is very efficient as a manager and as coach of new talent .\nhis promotion is likely to cause anjam ' s departure form enron . i value\ntechnical\nskills of anjam , but in spite of my loyalty to him , don ' t think he is the\nsame caliber\nas steve . however , i would not like to lose him and think about moving him to\nhouston\nfor 2 years . i think that the opportunity to work in houston , would be a\nsufficient\nincentive to keep him in enron . by the way , his performance feedback has\ngreatly improved .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.591+0000", "entityId": 7959, "properties": {"text": "Subject: re : london research group\nrichard ,\nplease , let me know what the timetable is . i would like to talk to anjam a\nfew days before\nto break the news to him . i hope i can save him for the company and offer him\na position in houston .\nwe desperately need skills he has .\nvince\nrichard lewis\n07 / 27 / 2000 02 : 20 am\nto : dale surbey / lon / ect @ ect\ncc : john sherriff / lon / ect @ ect , vince j kaminski / hou / ect @ ect , grant\nmasson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe gold / lon / ect @ ect\nsubject : re : london research group\ni agree with dale - no point in delaying .\ndale surbey\n27 / 07 / 2000 08 : 13\nto : john sherriff / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , richard lewis / lon / ect @ ect , grant\nmasson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe gold / lon / ect @ ect\nsubject : re : london research group\njohn ,\ni propose accelerating steve ' s move to head the research group here . it\nmakes sense to include this as part of the mid - year prc process by giving him\na tangible reward along with his performance feedback .\nthoughts ?\n- dale\njohn sherriff\n27 / 07 / 2000 06 : 44\nto : vince j kaminski / hou / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , richard\nlewis / lon / ect @ ect , grant masson / hou / ect @ ect , stinson gibner / hou / ect @ ect , joe\ngold / lon / ect @ ect\nsubject : re : london research group\nvince - i agree with your conclusion here . we are still trying to fill\ndale ' s structuring role as well so part of the question is\nhow we announce steve ' s lead research role relative to when we know who will\ntake dale ' s spot . perhaps we should just\nmove forward with the steve announcement the day that dale moves full time to\nebs . i will ask richard lewis to take the lead\nin working with you on finalizing the decision and communcicating the changes\nto the organization .\nbut i do want to reinforce how pleased we are to have steve here . he is a\nwonderfull asset to our efforts .\nthanks !\njohn\nvince j kaminski\n26 / 07 / 2000 22 : 18\nto : john sherriff / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , richard\nlewis / lon / ect @ ect , grant masson / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : london research group\njohn ,\ni am writing to you regarding the management of the london research group .\nas you know , dale surbey , who was managing the london unit of the research\ngroup ,\nis moving to ebs . dale did a terrific job helping me to develop the pool of\ntalent we have currently\nin london .\ngiven that dale is likely to be transfered to houston , it ' s time\nto nominate one member of the research group for a management position .\nmy recommendation is steve leppard . steve emerged not only as the most\ntechnically qualified member of the group but also as a natural leader ,\nhighly\nrespected by his peers and internal customers . steve has a very high energy\nlevel\nand is very efficient as a manager and as coach of new talent .\nhis promotion is likely to cause anjam ' s departure form enron . i value\ntechnical\nskills of anjam , but in spite of my loyalty to him , don ' t think he is the\nsame caliber\nas steve . however , i would not like to lose him and think about moving him to\nhouston\nfor 2 years . i think that the opportunity to work in houston , would be a\nsufficient\nincentive to keep him in enron . by the way , his performance feedback has\ngreatly improved .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.595+0000", "entityId": 7960, "properties": {"text": "Subject: venue change - very important ! !\nunderstanding and applying financial mathematics venue change - london ,\nseptember 21 & 22 :\nplease note that i am faxing you a form which states a venue change for the\nabove listed course . just to reconfirm , the training course will now be held\nat the following location : ?\nthe white hall hotel\n2 - 5 montague street ?\nlondon\nwclb 5 bu ?\nt 011 44 207 580 2224 ?\nf 011 44 207 580 5554\nplease contact venue search to arrange your accommodations - 011 44 208 541\n5656\n?\nto confirm your acknowledgement of this venue change , please either fax back\nthe form or respond to this email . please contact me with any questions you\nhave regarding the change .\n?\nregards ,\namy lamonsoff ?\nconference coordinator ?\nt ( 212 ) 925 - 1864 xl 48\nf ( 212 ) 925 - 7585 ?\nalamonsoff @ watersinfo . com\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.600+0000", "entityId": 7961, "properties": {"text": "Subject: financial mathematics - houston , august 31 and september 1\n?\n- speaker chase - vince kaminski . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.605+0000", "entityId": 7962, "properties": {"text": "Subject: re : enron / stanford program\nnick ,\nvince asked me to coordinate the planning for you august visit to enron .\nvince and i are free almost any date except august 14 and 15 th , but we would\nlike to try and schedule your visit at a time when you could meet with other\nkey ebs executives such as kevin hannon and perhaps ken rice and john\nechols . if you could send me a few of your preferred choices of dates , i\nwill try to optimize getting you on the calendars of these individuals .\nby the way , giuseppe is doing a great job and has already made a very good\nimpression on everyone he has worked with . it ' s been a real pleasure having\nhim here for the summer .\nregards ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.609+0000", "entityId": 7963, "properties": {"text": "Subject: visit by professor shijie deng on friday , july 28 , 2000\nprofessor shijie deng , assistant professor , school of industrial and systems\nengineering , georgia institute of technology will be spending friday , july\n28 , 2000 with the research group . he will be doing a presentation from 1 : 00\npm to 2 : 30 pm in conference room 49 c 4 . his field of expertise is :\nfinancial asset pricing and real options valuation\nfinancial engineering applications in energy commodity markets\ntransmission pricing in electric power systems\napplications of contract theory in supply chain modeling\nplease plan to attend .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.616+0000", "entityId": 7964, "properties": {"text": "Subject: re : visit to houston and vince kaminski ' s research group\nvince ,\nthanks for the update . i ' m looking forward to meeting you too .\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng\non thu , 27 jul 2000 vince . j . kaminski @ enron . com wrote :\n>\n> shijie ,\n>\n> we would like you to meet tomorrow morning , starting at 9 : 00 , with a few\n> members of the\n> group . around 11 : 15 we shall go to lunch ( myself , stinson gibner and zimin\n> lu ) .\n> at 1 : 00 we would like you to make a presentation to the research group on\n> the topic\n> of your choice . after 2 : 30 we shall continue with individual meetings .\n>\n> we shall give you an agenda with the names and times when you arrive .\n>\n> you can come to the lobby of the enron building ( 1400 smith )\n> between 8 : 30 and 9 : 00 and call me ( 3 - 3848 ) or my assistant ,\n> shirley crenshaw ( 3 - 5290 ) , to be admitted to the building .\n> we are on the 19 th floor .\n>\n> look forward to meeting you .\n>\n> vince kaminski\n>\n>\n>\n>\n>\n>\n> shijie deng on 07 / 27 / 2000 10 : 10 : 03 am\n>\n> to : shirley . crenshaw @ enron . com\n> cc : vince kaminski\n> subject : re : visit to houston and vince kaminski ' s research group\n>\n>\n>\n> hi shirley ,\n>\n> an overhead would be good . thanks .\n> btw , is there happen to be an agenda for my visit ? thank you .\n>\n> shijie\n>\n> shi - jie deng\n> assistant professor\n> school of isye\n> georgia institute of technology\n>\n> office phone : ( 404 ) 894 - 6519\n> e - mail : deng @ isye . gatech . edu\n> home page : http : / / www . isye . gatech . edu / ~ deng\n>\n> on fri , 7 jul 2000 shirley . crenshaw @ enron . com wrote :\n>\n> >\n> > shijie :\n> >\n> > thanks for the information .\n> >\n> > please let me know if you need av equipment , i . e . , lcd projector ,\n> overhead\n> > projector , etc .\n> >\n> > thanks !\n> >\n> > shirley\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> > shijie deng on 07 / 03 / 2000 11 : 40 : 05 am\n> >\n> > to : shirley . crenshaw @ enron . com\n> > cc : vince kaminski\n> > subject : re : visit to houston and vince kaminski ' s research group\n> >\n> >\n> >\n> > shirley ,\n> >\n> > i just booked my flights and the hotel . i ' ll be arriving houston on\n> > the evening of 7 / 27 and leaving on 7 / 29 . i ' ll stay at the doubletree\n> > houston allen center for two nights . looking forward to meeting you at\n> > enron .\n> >\n> > regards ,\n> >\n> > shijie\n> >\n> > shi - jie deng\n> > assistant professor\n> > school of isye\n> > georgia institute of technology\n> >\n> > office phone : ( 404 ) 894 - 6519\n> > e - mail : deng @ isye . gatech . edu\n> > home page : http : / / www . isye . gatech . edu / ~ deng\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.620+0000", "entityId": 7965, "properties": {"text": "Subject: re : visit to houston and vince kaminski ' s research group\nshijie ,\nwe would like you to meet tomorrow morning , starting at 9 : 00 , with a few\nmembers of the\ngroup . around 11 : 15 we shall go to lunch ( myself , stinson gibner and zimin\nlu ) .\nat 1 : 00 we would like you to make a presentation to the research group on the\ntopic\nof your choice . after 2 : 30 we shall continue with individual meetings .\nwe shall give you an agenda with the names and times when you arrive .\nyou can come to the lobby of the enron building ( 1400 smith )\nbetween 8 : 30 and 9 : 00 and call me ( 3 - 3848 ) or my assistant ,\nshirley crenshaw ( 3 - 5290 ) , to be admitted to the building .\nwe are on the 19 th floor .\nlook forward to meeting you .\nvince kaminski\nshijie deng on 07 / 27 / 2000 10 : 10 : 03 am\nto : shirley . crenshaw @ enron . com\ncc : vince kaminski\nsubject : re : visit to houston and vince kaminski ' s research group\nhi shirley ,\nan overhead would be good . thanks .\nbtw , is there happen to be an agenda for my visit ? thank you .\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng\non fri , 7 jul 2000 shirley . crenshaw @ enron . com wrote :\n>\n> shijie :\n>\n> thanks for the information .\n>\n> please let me know if you need av equipment , i . e . , lcd projector , overhead\n> projector , etc .\n>\n> thanks !\n>\n> shirley\n>\n>\n>\n>\n>\n>\n>\n>\n>\n> shijie deng on 07 / 03 / 2000 11 : 40 : 05 am\n>\n> to : shirley . crenshaw @ enron . com\n> cc : vince kaminski\n> subject : re : visit to houston and vince kaminski ' s research group\n>\n>\n>\n> shirley ,\n>\n> i just booked my flights and the hotel . i ' ll be arriving houston on\n> the evening of 7 / 27 and leaving on 7 / 29 . i ' ll stay at the doubletree\n> houston allen center for two nights . looking forward to meeting you at\n> enron .\n>\n> regards ,\n>\n> shijie\n>\n> shi - jie deng\n> assistant professor\n> school of isye\n> georgia institute of technology\n>\n> office phone : ( 404 ) 894 - 6519\n> e - mail : deng @ isye . gatech . edu\n> home page : http : / / www . isye . gatech . edu / ~ deng\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.625+0000", "entityId": 7966, "properties": {"text": "Subject: grant ,\nwould you take a look at the following correlation matrix ? does it make sense ?\nps : this is an updated correlation matrix with gold and silver correlations .\ni used bloomberg ' s generic closest month gold and silver contract prices for\nthe correlation analysis .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.630+0000", "entityId": 7967, "properties": {"text": "Subject: re : your comments on metals var model\ndear andreas ,\nthanks for the very useful response and information on positions . i have\nhanded over primary responsibility for metals var to kirstee hewitt ( at least\nas far as london is concerned ) and she will follow up on the points you\nkindly reported , although i am of course available to assist where\nnecessary . tanya will remain the point of contact for var modelling in\nhouston , and of course kirstee and tanya will work together on this to\nresolve these and further issues . i would be happy to help set up meetings\nfor you in the london office when you visit next week , with kirstee , myself\nand anyone else that you would like to meet with and we very much look\nforward to your visit - please let me know if you need any help with the\narrangements .\nregards ,\nanjam\n0207 783 5383\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 27 / 07 / 2000 08 : 40\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : andreas . barschkis @ mgusa . com 27 / 07 / 2000 00 : 36\nto : anjam . ahmad @ enron . com , kirstee . hewitt @ enron . com\ncc : bjorn _ hagelmann @ mgusa . com\nsubject : re : varmodel _ live . xls\nanjam ,\nthanks for your var model .\ni would like to point out the following :\n1 ) position data : i noted that the outright ( longs + shorts ) for copper\ninclude positions which we should not use , i . e . r . wolff quantities . this\npositions are imputed into the system at their integrity ( some legs / hedges\nare missing )\nthis affects copper and lead position for now . the issues should be have\nbeen sorted out by the end of this month , ie next week . so in copper you\nhave 25 , 487 mt to much and with lead you have 13 , 579 mt to much . ( as of june\n19 )\n2 ) looking at copper position you calculate a var of - 3 , 100 , 568 with a\ntotal outright of 63 . 765 mt .\nthis seams too low . if i calculate 63765 x 1807 x 3 . 99 % = 4 . 218 mil . us $ . var\n( outright qty x price levelx risk factor , riskfactr as per mercur ) .\nin my view we have been understating var in mercur because we do not\nconsider the spread position correctly ( i . e . in detail ) . on a position like\nthat i would expect a figure of around 6 mil us $ .\ni guess the issue is in the volatility and in the holding period .\n3 ) your correlation matrix for the commodities is not final i assume as\nmany fields are blank .\nlets talk tomorrow on the phone .\nattached please find the position summary for the last week # 30 ( since june\n19 ) as requested by kirstee .\n( see attached file : mgposw 30 . xls )\nandreas barschkis\nmg metal & commodity corp .\n520 madison avenue , 28 th floor\nnew york , ny 10022\ntel : + 1 . 212 . 715 . 5628\ncel : + 1 . 917 . 679 . 8287\nfax : + 1 . 212 . 715 . 5608\ne - mail : andreas . barschkis @ mgusa . com\nanjam . ahmad @ e\nnron . com to : andreas . barschkis @ mgusa . com\ncc : kirstee . hewitt @ enron . com\n07 / 26 / 2000 subject : zipped varmodel _ live . xls\n11 : 37 am\nhi andreas ,\nthis is the semi - final spreadsheet - have only to include price curves for\ngold and cocoa . kirstee and i would welcome your comments .\nregards ,\nanjam\n- mgposw 30 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.638+0000", "entityId": 7968, "properties": {"text": "Subject: re : sddp\nvince ,\ni ' ll send him one of the manuals , and perhaps a paper on sddp .\ntom\nvince j kaminski @ ect\n07 / 28 / 2000 10 : 53 am\nto : tom halliburton / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : sddp\ntom ,\ncan you send the info regarding sddp to john ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 28 / 2000\n10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n07 / 19 / 2000 06 : 41 pm\nto : \" o ' brien john \" @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : sddp\njohn ,\ni shall e - mail the information about sddp from houston .\nvince\n\" o ' brien john \" on 07 / 18 / 2000 01 : 47 : 41 am\nto : vkamins @ enron . com\ncc :\nsubject : sddp\nvincent ,\nyou kindly suggested that i email you with regard to some information you\nhave on the sddp system ( i ' m not sure if i ' ve got the abbreviation correct ,\nbut it ' s something that is currently used in south america ) .\nyour presentation was very interesting and informative .\nkind regards ,\njohn o ' brien\nmanager , treasury & risk management\nsnowy hydro trading pty ltd\nlevel 17 , bligh house\n4 bligh street\nsydney nsw 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.646+0000", "entityId": 7969, "properties": {"text": "Subject: re : sddp\ntom ,\ncan you send the info regarding sddp to john ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 07 / 28 / 2000\n10 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n07 / 19 / 2000 06 : 41 pm\nto : \" o ' brien john \" @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : sddp\njohn ,\ni shall e - mail the information about sddp from houston .\nvince\n\" o ' brien john \" on 07 / 18 / 2000 01 : 47 : 41 am\nto : vkamins @ enron . com\ncc :\nsubject : sddp\nvincent ,\nyou kindly suggested that i email you with regard to some information you\nhave on the sddp system ( i ' m not sure if i ' ve got the abbreviation correct ,\nbut it ' s something that is currently used in south america ) .\nyour presentation was very interesting and informative .\nkind regards ,\njohn o ' brien\nmanager , treasury & risk management\nsnowy hydro trading pty ltd\nlevel 17 , bligh house\n4 bligh street\nsydney nsw 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.654+0000", "entityId": 7970, "properties": {"text": "Subject: enron and the new economy value research lab\ngentlemen :\nenron is exploring the possibility of becoming involved in a research\nendeavor called the new economy value research lab . the lab is the result of\na joint effort between mit ' s sloan school of management and arthur andersen\n( aa ) . its purpose is to develop \" quantitative valuations of the intangible\nassets wall street finds increasingly important in the new economy \" ( business\nweek , 2 / 7 / 00 ) . clearly , as enron continues to shift from a hard asset to\nintangible asset based organization , the question of \" how to \" accurately and\nappropriate measure and value our intangible assets is becoming increasingly\nimportant .\nlast week , steve kean , vince kaminski , marie hejka , and myself met with a\nteam from aa , the deputy dean of the sloan school , and mit ' s lead\naccounting / finance professor to discuss the intent of the lab , expected\noutcomes , and how enron may be involved . post that meeting , the decision was\nmade to continue to explore participation in the lab . enron now needs to 1 )\ndefine our corporate measurement and valuation process needs , and 2 ) identify\nvalue attributes important to enron and the industries in which we operate .\nonce defined , a follow up meeting will be held with mit and next steps will\nbe determined .\nyour expertise and assistance could significantly impact the inputs and\noutcomes of these next steps . please schedule time on tuesday august 1 from\n2 : 00 to 3 : 30 to attend the next meeting , during which we will begin to\nidentify needs and define value attributes . location will be eb 49 c 4 . please\nnotify me if you are unable to attend .\nlastly , to assist with preparation for this meeting , i am attaching notes\nfrom a recently published book entitled cracking the value code : how\nbusinesses are creating wealth in the new economy ( may 2000 , boulton , libert ,\nsamek - arthur andersen ) .\nshould you like more information on the lab , previous meeting , book or other ,\nplease feel free to contact me .\ni look forward to meeting you .\nregards ,\namy oberg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.658+0000", "entityId": 7971, "properties": {"text": "Subject: risk and purchasing meeting\ndue to time constraints on mr . kaminski ' s schedule during the time that you\nall are in town from portland , the meeting being held on august 9 , 2000 in\neb - 45 cl must be held to one hour ( 2 : 00 - 3 : 00 pm )\nplease have your questions , comments , and / or materials ready in advance and\nexpect this to be a fast paced meeting .\nkristin j . harrelson\nenron broadband services , inc .\nprocurement , logistics , and contracts\n1400 smith , suite eb - 4573 a\nhouston , tx 77002\nphone : 713 . 853 . 6814\nfax : 713 . 646 . 8582\ncell : 713 . 594 . 1385\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.663+0000", "entityId": 7972, "properties": {"text": "Subject: value lab meeting on the lst of august\namy :\nbelow are the individuals vince wants to include in this meeting . do you\nwant me to send the email out or is it better coming from you ? i have\nreserved ebl 9 cl , however , since most of the guys are located on an\nupper floor we may want to see if we can get something up there .\nlet me know .\nattendees\namy oberg\nvince kaminski\nrick causey\nrick buy\nmark koenig", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.668+0000", "entityId": 7973, "properties": {"text": "Subject: address\nallan ,\ni am sending you my coordinates . i expect to be in london around\nseptember the 20 th .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.673+0000", "entityId": 7974, "properties": {"text": "Subject: re : eol guest account access\ni ' ve logged on . thanks for your help .\n- - - - - original message - - - - -\nfrom : danny . lee @ enron . com [ mailto : danny . lee @ enron . com ]\nsent : thursday , july 27 , 2000 5 : 07 pm\nto : ekrapels @ esaibos . com\nsubject : eol guest account access\nattention : esai\ned krapels\nthank you for your interest in enrononline .\nthe following is a guest password that will allow you temporary view only\naccess to enrononline . please note , the user id and password are case\nsensitive .\nguest user id : ena 61296\nguest password : welcome !\nin order to apply for transaction status with enrononline , your company\nneeds to complete a password application and registration form for a master\nuser account . each master user will be able to grant various levels of\naccess for additional users .\nto obtain a password application and registration form , you can visit our\nwebsite at www . enrononline . com and select the \" how to register \" link , or\ncall our helpdesk at 713 / 853 - help ( 4357 ) . alternatively , you may click on\nthe attached documents , complete the forms , and fax to 713 - 646 - 8511 .\njust a reminder , in order to access enrononline , shockwave needs to be\ninstalled . the shockwave installer can be found within \" about enrononline \"\non the home page . after opening \" about enrononline \" , using right scroll\nbar , go to the bottom . click on \" download shockwave \" and follow the\ndirections . after loading shockwave , shut down and reopen browser ( i . e .\nmicrosoft internet explorer / netscape ) .\nwe hope you will find that enrononline provides an easy and more efficient\nway to do business with enron . we look forward to transacting with you\nonline .\nsincerely ,\ndanny lee\nenrononline helpdesk\n713 / 853 - help ( 4357 )\n( see attached file : na pa ver 2 web . doc ) ( see attached file :\nregistration _ form . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.678+0000", "entityId": 7975, "properties": {"text": "Subject: correction : risk and purchasing meeting - - august 8 th\ncorrection - - - this meeting is being held on august 8 th ( not aug . 9 th ) sorry\nfor the mistake .\nkristin j . harrelson\nenron broadband services , inc .\nprocurement , logistics , and contracts\n1400 smith , suite eb - 4573 a\nhouston , tx 77002\nphone : 713 . 853 . 6814\nfax : 713 . 646 . 8582\ncell : 713 . 594 . 1385\nkristin harrelson\n07 / 28 / 00 12 : 54 pm\nto : denise bradley / enron communications , eric merten / enron communications ,\njim mandis / enron communications , michael moore / enron communications , paula\ncorey / enron communications , richard weeks / enron communications , tobin\ncarlson / enron communications\ncc : diane cutsforth / enron communications @ enron communications , shirley\ncrenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : risk and purchasing meeting\ndue to time constraints on mr . kaminski ' s schedule during the time that you\nall are in town from portland , the meeting being held on august 9 , 2000 in\neb - 45 cl must be held to one hour ( 2 : 00 - 3 : 00 pm )\nplease have your questions , comments , and / or materials ready in advance and\nexpect this to be a fast paced meeting .\nkristin j . harrelson\nenron broadband services , inc .\nprocurement , logistics , and contracts\n1400 smith , suite eb - 4573 a\nhouston , tx 77002\nphone : 713 . 853 . 6814\nfax : 713 . 646 . 8582\ncell : 713 . 594 . 1385\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.683+0000", "entityId": 7976, "properties": {"text": "Subject: revenue management meeting\nplease plan to attend a revenue management science kick - off meeting on\nwednesday , august 23 , from 10 : 30 - 5 : 00 p . m . located in the enron building\nconference room 49 cl . the purpose of this meeting will be to identify and\nprioritize our forecasting and optimization efforts for revenue management .\nyour attendance in houston for this meeting is critical . we will send out\nan agenda prior to the meeting . please call kim watson at 713 - 853 - 3098 , by\nfriday , august 18 , if you are unable to attend . lunch will be provided .\nwe look forward to seeing you there .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.688+0000", "entityId": 7977, "properties": {"text": "Subject: recruiting at cmu computational finance program\nvince ,\nthanks for the prompt reply . i ' ll plan to call early next week .\nrick\n- - - - - original message - - - - -\nfrom : \" vince j kaminski \"\nto : \" rick bryant \"\ncc : \" vince j kaminski \" ; \" kevin kindall \"\nsent : friday , july 28 , 2000 9 : 05 am\nsubject : re : recruiting at cmu computational finance program\n>\n>\n> rick ,\n>\n> thanks for your message . i am familiar with the computational finance\nprogram\n> and value its high quality .\n>\n> please , call me next week . the best time is between 7 : 00 and 8 : 30 a . m .\n> cst .\n>\n> vince\n>\n>\n>\n>\n>\n>\n>\n> \" rick bryant \" on 07 / 26 / 2000 01 : 27 : 23 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc : \" kevin kindall \" , \" ken keeley \"\n,\n> \" sanjay srivastava \"\n> subject : recruiting at cmu computational finance program\n>\n>\n>\n> vince ,\n>\n> greetings ! i am the director of the ms in computational finance program\nat\n> carnegie mellon . i am following up on a conversation i had with kevin\n> kindall , a graduate of our program , who gave me your e - mail address and\n> suggested i contact you as the individual making the recruiting decisions\n> for the research group at enron .\n>\n> in speaking with the director of the career opportunity center at the\n> business school , i am told that although an alison bailey from enron\n> ( mary . alison . bailey @ enron . com ) has arranged for a sizable block of rooms\nin\n> which to conduct interviews on campus on december 11 th , there is as yet no\n> indication of whether the comp finance students will have opportunity to\n> compete for these spaces .\n>\n> we are regarded by many in the industry as the top quantitative finance\n> program in the country . focused on derivative pricing , econometrics , var\n> and portfolio management , our graduates should be an excellent fit for\nyour\n> business . i would be happy to talk with you further about our\n> rogram ( http : / / student . gsia . cmu . edu / mscf / ) as well as our students '\ninterest\n> in enron ( the name comes up a lot ! ) . also , if you are interested , we run\na\n> \" speaker series \" on most friday ' s during the fall and spring that would\n> give you ( or another in your group ) the opportunity to address our\nstudents\n> in an area of interest . such a meeting would , i think , help you better\n> understand the careers our students are preparing to pursue as well as\ngive\n> our students first hand knowledge of enron and its future .\n>\n> when might be a good time to contact you by telephone ?\n>\n> thank you for your time .\n>\n> rick\n>\n> richard l . bryant\n> director , computational finance program\n> carnegie mellon university\n> graduate school of industrial administration\n> pittsburgh , pa 15213\n> phone / fax ( 412 ) 268 - 4592 / ( 412 ) 268 - 6837\n> http : / / fastweb . gsia . cmu . edu / mscf\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.692+0000", "entityId": 7978, "properties": {"text": "Subject: reminder\nstinson ( and vince - - don ' t think your e - mail address is correct )\nthis is just a reminder about the \" care package \" of enron cases and\nmaterials that you guys were going to send to me .\nstinson , please convey this request on to vince because i think the e - mail\naddress i have is an old one .\nthanks and have a great weekend .\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.697+0000", "entityId": 7979, "properties": {"text": "Subject: re : recruiting at cmu computational finance program\nrick ,\nthanks for your message . i am familiar with the computational finance program\nand value its high quality .\nplease , call me next week . the best time is between 7 : 00 and 8 : 30 a . m .\ncst .\nvince\n\" rick bryant \" on 07 / 26 / 2000 01 : 27 : 23 pm\nto : vince j kaminski / hou / ect @ ect\ncc : \" kevin kindall \" , \" ken keeley \" ,\n\" sanjay srivastava \"\nsubject : recruiting at cmu computational finance program\nvince ,\ngreetings ! i am the director of the ms in computational finance program at\ncarnegie mellon . i am following up on a conversation i had with kevin\nkindall , a graduate of our program , who gave me your e - mail address and\nsuggested i contact you as the individual making the recruiting decisions\nfor the research group at enron .\nin speaking with the director of the career opportunity center at the\nbusiness school , i am told that although an alison bailey from enron\n( mary . alison . bailey @ enron . com ) has arranged for a sizable block of rooms in\nwhich to conduct interviews on campus on december 11 th , there is as yet no\nindication of whether the comp finance students will have opportunity to\ncompete for these spaces .\nwe are regarded by many in the industry as the top quantitative finance\nprogram in the country . focused on derivative pricing , econometrics , var\nand portfolio management , our graduates should be an excellent fit for your\nbusiness . i would be happy to talk with you further about our\nrogram ( http : / / student . gsia . cmu . edu / mscf / ) as well as our students ' interest\nin enron ( the name comes up a lot ! ) . also , if you are interested , we run a\n\" speaker series \" on most friday ' s during the fall and spring that would\ngive you ( or another in your group ) the opportunity to address our students\nin an area of interest . such a meeting would , i think , help you better\nunderstand the careers our students are preparing to pursue as well as give\nour students first hand knowledge of enron and its future .\nwhen might be a good time to contact you by telephone ?\nthank you for your time .\nrick\nrichard l . bryant\ndirector , computational finance program\ncarnegie mellon university\ngraduate school of industrial administration\npittsburgh , pa 15213\nphone / fax ( 412 ) 268 - 4592 / ( 412 ) 268 - 6837\nhttp : / / fastweb . gsia . cmu . edu / mscf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.701+0000", "entityId": 7980, "properties": {"text": "Subject: again , i should have also sent the following mail yesterday .\n. . . i guess now i should also apologise for filling up your mail box !\nhave a good weekend ,\nkirstee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kirstee hewitt / lon / ect on 28 / 07 / 2000\n20 : 22 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : kirstee hewitt 27 / 07 / 2000 18 : 10\nto : cantekin dincerler / hou / ect @ ect\ncc : grant masson / hou / ect @ ect\nsubject :\nhi - i have run the model for the 26 th and have the following results :\ni have also updated the correlations to include silver and the gold .\nthe tc delta ( treatment charges ) are positions only for copper conentrate and\ndo not\ncontain any positions due to zinc or lead .\ncould you take a look at the figues as this is the first time i have done a\nfull run and\nwould like to make sure that i have done things correctly .\ni will definitely call to discuss the prices for gold and cocoa beans - the\ntc price curve is\nanother issue however , at the moment we do not have anything other than a\nspot price and\na 1 year price so i think we will probably have to set it as a constant .\ni have to talk to andreas soon as he is awaiting my comments on point ( 2 ) of\nhis email that\ni forwarded in my last mail .\nalso , you will can see that i have subtracted any positions that are from r\nwolf in the mercur download -\nthis was point ( 1 ) of his note .\nas a quick question ?\ndo you think it is worth including zinc concentrate ( 18400 dmt ) and lead\nconcentrate ( 920 dmt ) ?\ni think we may need to check the tc price for these and the conversion for\nthe one given in the model for copper as\ni think that the original historical price file ( tchistory ) is quoted in c / lb\n- i guess this is cents / pound ? rather\nthan $ / dmt which is the units that position is quoted in .\nspeak to you soon\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.706+0000", "entityId": 7981, "properties": {"text": "Subject: var numbers for the 26 th\nhi vince ,\ni apologise that i did not send you the following mail . . .\nkirsteee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kirstee hewitt / lon / ect on 28 / 07 / 2000\n20 : 21 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : kirstee hewitt 27 / 07 / 2000 20 : 33\nto : andreas . barschkis @ mgusa . com\ncc : bjorn hagelmann / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : var numbers for the 26 th\nhi andreas ,\ni have run the var model for the 26 th july and have attached a zip file of\nthe results :\nthe total var is $ 4 , 170 , 653 and the cu position is $ 1 , 852 , 876 .\ni have had trouble getting hold of you so i thought i would summarised what i\nwanted to talk about ( also i thought\ni would give your ears a rest ! )\nbasically it is wrt the second point in your mail yesterday ( we briefly\ndiscussed it earlier ) .\nthe fax you sent me to explain the risk calculation suggested that you use a\n5 day period of adjustment to calculate\nthe risk ( in this case it is called capital at risk ) . the var calculation for\nour model is for a one day holding period which means that your risk factor\nwill be reduced by a factor equal the sqrt ( 5 ) or 2 . 24 .\nsince :\nold risk factor ( % ) = 1 . 65 * ( std of the price movement ) = 3 . 99 %\nnew daily risk factor = 3 . 99 / 2 . 24 = 1 . 78 % which actually equates to std\nof approx 1 . 1 % a day .\ni am happy with this as a estimate of the vol as the annualized spot vol we\nare showing for cu is approx 19 % which equates to approx 1 . 2 % daily .\nusing this new risk factor for the daily var the cu positions would give a\nvar ( for the 19 th ) of approx $ 2 m which is less that the\nfigure we estimated ( $ 3 , 100 , 568 ) .\nthe other thing is that by taking net numbers we are disregarding the term\nstructure of the price curve / vol curve and position\ncurve and are hence collapsing everything into a one factor model which means\nthat it is difficult to compare the numbers .\ni hope that this helps to explain our number .\nhopefully we can talk tomorrow ,\ncheers\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.710+0000", "entityId": 7982, "properties": {"text": "Subject: mg var\nhi - i just wanted to thank cantekin for his help this week to get me up to\nspeed with the project he has been extremely\nhelpful and more importantly patient ! !\ncheers\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.715+0000", "entityId": 7983, "properties": {"text": "Subject: mg var results for the 27 th july\nhi ,\ni have run the var with updated factor loadings for the gold , silver and cocoa\nbean positions . the biggest change in var from\nadding this information has been to the cocoa bean position which has\nincreased from approx $ 45 , 900 to $ 506 , 553 .\nthe overal var has not changed by very much as the position file i was sent\nfrom andreas had not changed from the 26 th - i\nhave queried this and it will not be a problem to re - run the numbers on\nmonday if i recieve a further file .\nthe var summary for all the metals is as follows :\nalso , after having a conversation with bjorn about stress / scenario analysis i\nthought i might quickly try to set up a few scenarios to\nsee how sensitive the var is to a position change in aluminium , nickel and\ncopper .\ni have only applied position increases ( thge direction of the shifts are\ndependent on the monthly outright position direction ) up until dec 2000 .\nthe shifts and results are given in the following attached spreadsheet .\nit is interesting that the individual var ' s are particuarly sensitive to\nincreasing the position for nickel .\ni would like to discuss these results on monday and any further suggestions\nfor senarios would also be gratefully recieved .\nhave a good weekend ,\nkirstee .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.720+0000", "entityId": 7984, "properties": {"text": "Subject: rice math course : hector\nvince ,\nin case i forget by monday : hector campos asked if he can take a course in\npde ' s at rice this fall . it would meet tues and thurs . mornings and would\ncost about $ 3000 . i ' ll try to catch you on monday to see what you think .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.725+0000", "entityId": 7985, "properties": {"text": "Subject: requirements for clayton\nhi vince ,\ni have communicated the following requirements to clayton . please give me\nyour thoughts on additions / modifications .\nfor eol model ,\n1 . working program , with easily usable interface\n2 . user docs , for new user to easily start using system\nplus includes details about program structure and modules\n3 . reports for tabulation of data by commodity , counterparty , period , etc .\nshould be easy to run daily .\n4 . time series description , including graphs , plus some time series analysis\n( say , relationship of volume to time of day , day of week )\n5 . cross commodity trading relationships ( identify potential arbitrage )\nfor gas model ,\n1 . calibrate model\n2 . user docs , with complete description of data", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.729+0000", "entityId": 7986, "properties": {"text": "Subject: time sheets ! ! !\nhello everyone !\nnot very many of you have filled out your timesheet in the excel spreadsheet\nif you cannot access the \" o \" drive . you will need to fill out one by hand\nuntil\nyou can get access .\nwhichever way - i need them today ! !\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.736+0000", "entityId": 7987, "properties": {"text": "Subject: re : clayton vernon\nthanks for the e - mail . please let me know if clayton does not honor his\ncommitment to complete his current project . i am giving clayton an\nopportunity ( next 6 months ) to prove he can add value to our operation\ncreating state of the art decision support tools . if he fails , i will take\nthe necessary steps .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.743+0000", "entityId": 7988, "properties": {"text": "Subject: rooming list for enron offsite\ncandice :\nlisted below are the individuals that will be attending the offsite , august\n18 -\n20 , 2000 .\nvince kaminski\nstinson gibner\np . v . krishnarao\ngrant masson\nzimin lu\nvasant shanbhogue\nmike roberts\nmaureen raymond castaneda\ntanya tamarchenko\nosman sezgen\nsamer takriti\nshirley crenshaw\nregards ,\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.749+0000", "entityId": 7989, "properties": {"text": "Subject: telephone interview with the enron corp . research group\ngood afternoon mr . xu\nyour resume has been forwarded to the research group with enron corp .\nthey would like to conduct a telephone interview with you at your convenience .\nplease let me know your available dates and times along with the telephone\nnumber you may be reached at and they will call you .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\nzimin lu director\nlook forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.754+0000", "entityId": 7990, "properties": {"text": "Subject: candidate decisions\nvince :\nthey are already asking for evaluations on the following individuals most\nof whom were just interviewed yesterday ! however , i do not know who\nbruce kamich is - i don ' t remember his interview at all .\ncan you give me something to tell toni .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 07 / 28 / 2000\n11 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : toni graham @ enron 07 / 28 / 2000 02 : 39 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : candidate decisions\nshirley ,\ncould you please give me a yes , no , maybe decision on the following\ncandidates interviewed :\nbruce kamich\nphilip roan\njerzy jarosz\nbruce james\noleg bondar\nthanks\ntoni", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.758+0000", "entityId": 7991, "properties": {"text": "Subject: clayton vernon\nkevin ,\nvasant and i talked to clayton about his request for transfer . clayton\nreceived a conditional approval contingent\nupon completion of the current project he works on . vasant will formulate\nexact definition of the deliverables\nand we will hold clayton to it . if he fails to deliver the request for\ntransfer will be rejected . anything else\nwould be highly demoralizing to everybody .\nclayton has so far produced exactly zero ( no single output was delivered )\nthough he was advertising\nthe projects inside and outside the group as completed . i want you to be\naware of it , because i have\nserious doubts regarding clayton ' s integrity .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.763+0000", "entityId": 7992, "properties": {"text": "Subject: re : clayton vernon\ni have some concerns regarding vernon being able to transfer even if he is\ntemporarily successful with deliverables defined for him . according to enron\npolicy , an employee can only transfer if he is in satisfactory standing or\nbetter . this is to prevent problem employees being moved from one\norganization to the another . this sounds like a \" work ethic \" issue to me and\nthe chances that it would continue in another department are great even if he\nis temporarily successful . but if kevin presto knows the situation and he\nstill wants vernon in the end , i will push for an exception as this satisfies\nour obligation to be forthright . please keep me informed of clayton ' s\nprogress as time goes on so we do not get criticized for passing on a problem\nemployee . thanks .\nsheila\nvince j kaminski\n07 / 28 / 2000 08 : 35 am\nto : kevin m presto / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , sheila walton / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect\nsubject : clayton vernon\nkevin ,\nvasant and i talked to clayton about his request for transfer . clayton\nreceived a conditional approval contingent\nupon completion of the current project he works on . vasant will formulate\nexact definition of the deliverables\nand we will hold clayton to it . if he fails to deliver the request for\ntransfer will be rejected . anything else\nwould be highly demoralizing to everybody .\nclayton has so far produced exactly zero ( no single output was delivered )\nthough he was advertising\nthe projects inside and outside the group as completed . i want you to be\naware of it , because i have\nserious doubts regarding clayton ' s integrity .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.768+0000", "entityId": 7993, "properties": {"text": "Subject: missing prc information\nvince , the following information is missing from your employee profile which\nwill be used at the md prc meeting on 8 / 15 / 00 :\ncurrent responsibilities\nprevious experience at enron\nplease go into your gis file and update by end of business day monday , july\n31 st .\nif you have any questions or problems getting into your file , please call\nkathy schultea at ext 33841 .\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.772+0000", "entityId": 7994, "properties": {"text": "Subject: ethink about it : july 31 , 2000\nvince\nthis correspondence is sent to you in response to the below question\npertaining to the type of research that should be introduced to enron .\non tuesday , april 4 th , 2000 , a local newspaper in my area , \" the bakersfield\ncalifornia \" ran an article pertaining to the 50 million dollars of funding\nfrom the u . s . congress set aside to study deep sea floor extraction of\nmethane hydrate . this study will focus on methane hydrates as an energy\nsource and the technologies needed for safe , efficient development .\naccording to this article , the ice - like deposits of frozen methane have an\nenergy potential equal to more than twice that of all other fossil fuels\ncombined .\ni can fax you a copy of this newspaper article if you would like to read it .\nsend me you fax number or call me at enron wind corp . 661 - 823 - 6433 .\nalso when i was in engineering student back in 1985 , i did an independent\nsenior level study on a proposed method which possibly could be used to\nextract hydrate from the sea floor . if you are interested , i could e - mail you\na copy of my thesis explaining this proposed method .\ncarl colditz\ntest engineer\nenron wind corp .\n13681 chantico road\ntehachapi , ca 93561\n661 - 823 - 6433\n661 - 823 - 6804 ( fax )\ncarl . colditz @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carl colditz / ewc / enron on 07 / 31 / 2000\n11 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe ethink team\nfrom : ethink on 07 / 28 / 2000 05 : 58 pm cdt\nsent by : enron announcements\nto : all enron worldwide\ncc :\nsubject : ethink about it : july 31 , 2000\nhere \u0001 , s what you \u0001 , ve been missing on ethink :\nfor the answers , consult the archives for the referenced espeak session .\n\" ene ' s market capitalization is currently around $ 50 b . what do you expect\nthe market cap to be in five years ? what needs to happen to get there ? \"\n- thomas myers\nken lay , office of the chairman , 7 / 14 / 00\n\" given appropriate latitude and funding , what is the one kind of research\nthat you would like to introduce to enron - - and what kind of talent would\nyou need ? \"\n- yannis tzamouranis\nvince kaminski , enron research , 7 / 12 / 00\ndo you still believe that nothing can travel faster than light ? a recent\nexperiment conducted in princeton , nj has proved this wrong .\nreliant says it will file a plan with the texas puc to break into two\npublicly traded companies .\nwant to learn more ? get the rest of these stories at the enron edge .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.777+0000", "entityId": 7995, "properties": {"text": "Subject: daily natural gas price outlook\nvince . . .\ncan you believe it ?\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 07 / 31 / 2000\n10 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" edward krapels \" on 07 / 31 / 2000 08 : 57 : 56 am\nplease respond to\nto :\ncc :\nsubject : daily natural gas price outlook\ntoday \u0001 , s esai daily natural gas price outlook will be delayed due to\nunexpected illness of the weather forecaster . we will post our analysis as\nsoon as we gather all the necessary information .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.782+0000", "entityId": 7996, "properties": {"text": "Subject: organisational announcement - introducing enron global markets\nas evidenced by an exceptionally strong performance in the second quarter ,\nenron \u0001 , s wholesale energy businesses in north america and europe continue to\nexperience tremendous growth . the opportunities to continue to grow our\nnatural gas and power businesses have never been better and it is critical to\nenron \u0001 , s future success that we remain focused on expanding these businesses\nand maintaining the strong momentum we have in these markets .\nit is equally important that we continue to develop new businesses outside of\ngas and electricity , which can make significant contributions to our earnings\ngrowth . we have made significant progress in developing these businesses in\nnorth america , europe , and most recently in our new net works business unit .\nincluded in these global businesses are our efforts in crude and products ,\ncoal , emissions , insurance , currency , equity trading , interest rates , credit\ntrading , paper and pulp , and metals .\nwhile significant progress has been made in these efforts we need to\naccelerate the growth of these new businesses while continuing to\naggressively expand our core gas and electricity businesses in north america\nand europe . in order to accomplish these two objectives and to capitalize on\nthe increasingly global opportunities in these new businesses we are today\nannouncing the formation of a new business unit \u0001 ) enron global markets . this\nnew business unit will focus on markets and commodities which are global in\nscope , but outside our traditional gas and power markets . this new core\nbusiness unit will operate in parallel with and in close coordination with\nthe north american and european businesses .\nenron global markets will be headed by mike mcconnell , president and chief\nexecutive officer , and jeff shankman , chief operating officer . they will\nreport to mark frevert who will be chairman of enron global markets . mark ,\nmike and jeff will comprise the office of the chairman for enron global\nmarkets .\nincluded in this new business unit and reporting to the office of the\nchairman will be the following businesses and their leaders :\n- global crude and products : john nowlan\n- coal : george mcclellan\n- currency , equities , interest rate and agricultural trading : gary hickerson\n- insurance and weather : jere overdyke\nenron \u0001 , s metals business and enron credit . com will remain the responsibility\nof enron europe . the paper and pulp business will continue to reside in north\namerica .\nwith the departure of mike mcconnell from enron net works , we are pleased to\nannounce the following appointments in that business unit :\n- jeff mcmahon : president and chief operating officer\n- louise kitchen : chief commercial officer\n- philippe bibi : chief technology officer\njeff , louise and philippe , along with greg whalley , will comprise the office\nof the chairman for enron net works .\nwith jeff shankman \u0001 , s departure from enron north america \u0001 , s natural gas\noperation , all of jeff \u0001 , s direct reports will report to john lavorato .\nwe are also pleased to announce the following changes to the enron north\namerica office of the chairman . john lavorato will join the ena office of\nthe chairman as chief operating officer . dave delainey will assume the role\nof president and chief executive officer . mark frevert will retain his role\nas chairman of enron north america in addition to his role as chairman of\nboth enron global markets and enron europe .\nplease join us in congratulating everyone in their new assignments and in\nsupporting the new enron global markets organisation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.786+0000", "entityId": 7997, "properties": {"text": "Subject: re :\njeff ,\nthe meeting is scheduled for wednesday afternoon .\nvince\nfrom : jeffrey a shankman 07 / 31 / 2000 12 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc : barbara lewis / hou / ect @ ect\nsubject :\nplease make sure our meeting with skilling gets onto my calendar . thanks .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.791+0000", "entityId": 7998, "properties": {"text": "Subject: re : interview schedule change for bruce james\nsean ,\ni think we should invite bruce for additional interviews . i think that he\ndoes not have\nthe skills required in my unit , but he could contribute in other areas .\nhere is the list of potential interviewees :\njohn echols\nted murphy\nmark ruane\nvince\nsean grady @ enron\n07 / 26 / 2000 02 : 17 pm\nto : grant masson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , william s\nbradford / hou / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , zimin lu / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , david\nport / market risk / corp / enron @ enron\ncc : toni graham / corp / enron @ enron , shirley crenshaw / hou / ect @ ect , rita\nhennessy / na / enron @ enron , dorothy youngblood / hou / ect @ ect\nsubject : interview schedule change for bruce james\nattached please find the interview packet for the above - referenced person .\nthe interview will happen thursday july 27 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsean grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.795+0000", "entityId": 7999, "properties": {"text": "Subject: re : interview with rabi s . de on friday , august 11 , 2000\nanita :\ni believe that zimin was the one that asked me to bring him in . maybe you\ncan check with him as to whether there is anyone else he wants you to\ninclude .\nthanks !\nanita dupont @ enron\n07 / 31 / 2000 10 : 26 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : interview with rabi s . de on friday , august 11 , 2000\nvince :\nshawn grady from hr staffing called me and asked me to schedule interviews\nwith the people in research . he also mentioned that i should email you to\nfind out if you want anyone from any other department to interview rabi . i\nam currently scheduling interviews with you , krishna , grant , stinson , zimin\nand vasant . is their anyone else in research that you want to interview\nhim ? please get back to me and i will set up the appts . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.799+0000", "entityId": 8000, "properties": {"text": "Subject: re : reminder\nthanks . i downloaded a lot of stuff from the hbs site including cases ,\netc . looking forward to working with you .\nat 03 : 15 pm 7 / 31 / 00 - 0500 , you wrote :\n>\n>\n> john ,\n>\n> my new e - mail address is vkamins @ enron . com .\n>\n> i am compiling the information for you . i should be able to send it in a few\n> days .\n>\n> vince\n>\n>\n>\n>\n>\n> \" john d . martin \" on 07 / 28 / 2000 02 : 41 : 42 pm\n>\n> to : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\n> cc :\n> subject : reminder\n>\n>\n>\n> stinson ( and vince - - don ' t think your e - mail address is correct )\n>\n> this is just a reminder about the \" care package \" of enron cases and\n> materials that you guys were going to send to me .\n>\n> stinson , please convey this request on to vince because i think the e - mail\n> address i have is an old one .\n>\n> thanks and have a great weekend .\n>\n> john\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.804+0000", "entityId": 8001, "properties": {"text": "Subject: regulatory var\ntentative agenda for the research lunch meeting on wednesday , august 2 nd at\n11 : 30 am :\nobjective : develop a methodology and a model for estimating risks of the ees\nregulatory portfolio .\ndiscussion items :\n1 . elements of the regulatory portfolio\n- transmission and distribution ( t & d ) positions\n- bundled tariffs ( full utility tariffs that are in place prior to\nderegulation )\n- competitive transition charges ( ctc ) positions\n- diversification between the three risk elements\n2 . risk drivers in each bucket ( scott stoness of ees to provide more detail )\n- t & d : interest rates\n- bundled tariffs : regulatory decisions , power prices , interest rates ,\ninflation\n- ctc : power prices , fuel prices , generation valuation , generation stack ,\nregulatory decisions\n3 . position aggregation parameters ( scott stoness of ees to provide\nsuggestions )\n- by nerc region\n- by state\n- by utility\n- by utility tariff\n4 . model environment\n- excel\n- grms / risktrac\n- other\n5 . var parameters\n- correlations\n- factor loadings ( 1 - factor model ? )\n- other\n6 . ees specific issues\n- the size of ctc positions is impacted by the roll - off date , which is\nsubject to change due to a number of factors ( jump diffusion ? )\n- t & d and bundled tariffs do not move daily , but rather once every 2 - 3 years\n( event driven ? )\nthanks , vlady .\nps : shirley , could you please make the lunch arrangements accordingly .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.808+0000", "entityId": 8002, "properties": {"text": "Subject: var for cob 28 th july 2000\nhi all ,\ni have run the var model for the positions at close fo business 28 th of july .\nthe model is attached below .\nas a summary the results are as follows :\nand as a comparison the previous days figures were :\nthis shows some increase in var for aluminium , copper and lead . the prices\nfor gold and cocoa beans have not been updated\nas we still do not have a live feed to bloomberg / reuters . i will be working\non this with cantekin and andreas should also be able to\nprovide some more historical data .\nalso , after having a discussion with andreas here in london we should\nprobably reduce the vol we are using for tc - we are taking the cu price\nvol as a proxy which is a too high . however , assuming the the other\nassumptions we have made around the tc ( ie simulating a parallel shift in\nthe curve and\nincluding no term structure to the price curve ) the vol estimate is a\nconservative one .\ncheers\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.813+0000", "entityId": 8003, "properties": {"text": "Subject: computer\nrecently a new person moved into our\nspace on 32 nd floor .\nbeing that the gentleman is there , i decided\nto move our computer out of his working space .\nthe computer will be moved to desk in our area\nuntil the new hire arrives .\nfyi\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.818+0000", "entityId": 8004, "properties": {"text": "Subject: re : reminder\nthanks , so much for your support !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.823+0000", "entityId": 8005, "properties": {"text": "Subject: reminder\nhello everyone :\nvince has asked me to send the following as a reminder :\n* * * * * * * * * * * * * * * *\nthis is another reminder about the responsibility we have as a group for\ncleaning the conference rooms after meetings . for many visitors to enron\na conference room maybe the first and the last exposure to the company .\nlast thursday , some members of the group left , leaving behind their lunch\nboxes\non the table . please , don ' t embarrass me by having to point out to you that\nyour mothers\ndon ' t work here .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.830+0000", "entityId": 8006, "properties": {"text": "Subject: payroll\nelena chilkina was not paid for the following days ,\njuly 3 and 4 .\nplease any questions contact shirley crenshaw\nor kevin moore .\nif more information is needed feel free to call x 34710 .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.838+0000", "entityId": 8007, "properties": {"text": "Subject: sddp model\njohn ,\nattached is a copy of the sddp methodology manual , written by the\ndevelopers . the model was developed by mario pereira , who is the proprietor\nof psri ( power systems research inc ) in rio de janeiro . their web site is :\nwww . psr - inc . com where you can find more information about the company and\ncontact details . mario and most of the staff speak english , so phone calls\nare possible .\ndevelopment of sddp was originally done on a world bank contract to compare\nthe benefits of new generation and transmission system interconnections in\ncentral america . it has since found much wider application . the code runs\non a pc , and is licensed to a number of consultants , power companies , etc .\nwhile i was with ecnz in wellington , new zealand , we purchased a copy around\n1994 .\nthe model works with weekly or monthly time steps , with a time horizon of\nfrom 1 to 10 years , for mid to long range planning of hydro thermal power\nsystems . it represents loads in each period as from one to five load blocks ,\nso it is not a chronological model . this type of model can not handle\nthermal plant ramp rates and similar chronological system constraints . i ' m\nnot sure how important that would be to you . the optimization phase of the\nmodel takes into account hydrological uncertainty using a form of stochastic\ndynamic programming with sampling . this phase sets up a function for water\nvalue in each large reservoir in the system . the simulation phase uses a\nnumber of hydrological outcomes to collect statistics on how the system would\noperate . the water values can be used with the short term optimization mode\nof sddp or in some other more detailed short term optimization model .\nmost constraints found in hydro systems can be modelled . many transmission\nconstraints can be modelled . a dc load flow option can be used to determine\nbus nodal prices .\na visual basic user interface is provided which reads and writes text files .\nif you ' d like to know more about sddp , you could call me here in houston .\n( tel 001 713 345 8539 )\nyours\ntom halliburton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.847+0000", "entityId": 8008, "properties": {"text": "Subject: re : message 1\nquentin ,\nthanks for your message . we are always looking for new employees\nwith the right skills .\nplease , send me your resume and i shall determine what is the best\nway to arrange an interview . we can interview you in sydney and then\nbring you to houston for another round of interviews .\nvince\n\" qkerr \" on 07 / 30 / 2000 07 : 20 : 28 pm\nto : \" vincent kaminski \"\ncc :\nsubject : message 1\ndear dr . kaminski\nthis is quentin kerr from australia , i just came back from the sydney ' s\nconference . glen dixon has told me that you are interested in my work . it is\nalways my honor to work with you . i am currently a phd student at the\nmathsmatics department of the university of queensland ( aiming to finish my\nthesis at the end of this year ) . my research interest is financial\nmathematics , in particular , energy market modeling and derivatives pricing .\nnow i send you copies of my first paper ( submitted to the applied\nmathematical finance ) and my talk ( the full version of the academic paper\nwill be available in 2 weeks ) . any comment will be appreciated .\nps : attached with the talk at the conference .\nbest regard\nquentin\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 622 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- conl . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.854+0000", "entityId": 8009, "properties": {"text": "Subject: message 4\ndear dr . kaminski ,\nthis is a message of discussing the problem in lacima ' s paper . i think that\nglen dixon has told you there is a fault in the paper written by dr . clewlow\nand dr . strickland . it is understandable to have some errors in their work .\npeople always make mistakes .\nactually , i found the problem in appendix a of their paper . they can ' t prove\nthe eq . a 4 rigorously . there is something wrong in mathematical\ninterpretation . if you like , i can give you a full analysis of this problem .\nps : attached with their paper .\nbest regard\nquentin\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 622 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- energy _ single _ factor . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.858+0000", "entityId": 8010, "properties": {"text": "Subject: message 2\ni am sorry to send you the multi - email , because the mail server doesn ' t have\nenough memory . it always cause some troubles .\nps : attached with my paper entitled \" multireset american - style put options\nvaluation and optimal resetting \" .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 622 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- multiresets . ps", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.863+0000", "entityId": 8011, "properties": {"text": "Subject: message 3\nps : attached with the flyer of the conference .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 622 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- engy . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.867+0000", "entityId": 8012, "properties": {"text": "Subject: message 1\ndear dr . kaminski\nthis is quentin kerr from australia , i just came back from the sydney ' s\nconference . glen dixon has told me that you are interested in my work . it is\nalways my honor to work with you . i am currently a phd student at the\nmathsmatics department of the university of queensland ( aiming to finish my\nthesis at the end of this year ) . my research interest is financial\nmathematics , in particular , energy market modeling and derivatives pricing .\nnow i send you copies of my first paper ( submitted to the applied\nmathematical finance ) and my talk ( the full version of the academic paper\nwill be available in 2 weeks ) . any comment will be appreciated .\nps : attached with the talk at the conference .\nbest regard\nquentin\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 622 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- conl . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.872+0000", "entityId": 8013, "properties": {"text": "Subject: re : sddp\nvince\nmany thanks for you help with this - look forward to receiving the info on\nsddp .\nkind regards ,\njohn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.877+0000", "entityId": 8014, "properties": {"text": "Subject: ng prices\nmargaret ,\nplease find attached texas and louisiana wellhead prices ( daily , monthly and\nquarterly ) . we had data available starting 1983 and the information source is\nnatural gas intelligence . information on uk \" beach \" prices will be available\nfor the following locations : teesside , bacton and st . fergus . would you like\nto have data on a specific one ?\nsincerely ,\nelena\nelena chikina\nenron research group\nvince j kaminski @ ect\n08 / 01 / 2000 07 : 52 am\nto : mike a roberts / hou / ect @ ect\ncc : elena chilkina / corp / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : vince does your group have a monthly or a quarterly price\nhistory in nominal terms\nfor a us onshore louisiana natural gas price ( or a texas wellhead price ) and\na uk landed beach price for the past 15 years ? i am gathering historical data\nfor jim o hara for our colombia pipeline in south america and these are among\nthe series of data they are seeking . they would like the data\nfrom a published source in an electronic file if possible . . their timetable\nis by cob weds this week . thank you for your help . margaret\nmike do you agree with me ? please , ask elena to check what price info is\navailable at xmim .\nvince\nmargaret ,\nthe prices going back 15 years are not too informative ( for the first 5\nyears ) , as he industry was still regulated .\nwe shall try to get you the us series as soon as possible .\nvince\nmargaret carson @ enron\n07 / 31 / 2000 04 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc : kyran hanks / lon / ect @ ect\nsubject : vince does your group have a monthly or a quarterly price history in\nnominal terms\nfor a us onshore louisiana natural gas price ( or a texas wellhead price ) and\na uk landed beach price for the past 15 years ? i am gathering historical data\nfor jim o hara for our colombia pipeline in south america and these are among\nthe series of data they are seeking . they would like the data\nfrom a published source in an electronic file if possible . . their timetable\nis by cob weds this week . thank you for your help . margaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.881+0000", "entityId": 8015, "properties": {"text": "Subject: uk gas data\nhi vince ,\ni only just got forwarded this request - i can deal with the uk gas data\nrequirments .\nregards ,\nanjam\nx 35383\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kyran hanks / lon / ect on 01 / 08 / 2000 09 : 21\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret carson @ enron\n31 / 07 / 2000 22 : 12\nto : vince j kaminski / hou / ect @ ect\ncc : kyran hanks / lon / ect @ ect\nsubject : vince does your group have a monthly or a quarterly price history in\nnominal terms\nfor a us onshore louisiana natural gas price ( or a texas wellhead price ) and\na uk landed beach price for the past 15 years ? i am gathering historical data\nfor jim o hara for our colombia pipeline in south america and these are among\nthe series of data they are seeking . they would like the data\nfrom a published source in an electronic file if possible . . their timetable\nis by cob weds this week . thank you for your help . margaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.886+0000", "entityId": 8016, "properties": {"text": "Subject: re : economic espionage act presentation - august 15 th\nscott ,\ni shall attend .\nvince\nenron north america corp .\nfrom : scott tholan 08 / 01 / 2000 04 : 49 pm\nsent by : sharon purswell\nto : john j lavorato / corp / enron @ enron , jeffrey a shankman / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , greg whalley / hou / ect @ ect , steven j kean / hou / ees @ ees ,\njim fallon / enron communications @ enron communications , russell woody / enron\ncommunications @ enron communications , john brindle , david oxley / hou / ect @ ect\ncc : alan aronowitz / hou / ect @ ect , mark e haedicke / hou / ect @ ect\nsubject : economic espionage act presentation - august 15 th\nyou are cordially invited to attend a presentation entitled : \" acquiring\ninformation : trade secrets and the economic espionage act ( eea ) \" . daniel\nwaltz , of the law firm patton boggs llp , is a leading expert on the eea and\nwill deliver what promises to be an interesting and informative segment .\ncongress passed the eea in 1996 , and it will increasingly shape how corporate\namerica collects , uses , and protects valued information . in addition to\nexplaining some of the intricacies of the eea , dan waltz will include\n\" hypothetical \" corporate case studies ( some actually torn from the headlines )\nto illustrate his points .\nthis event is sponsored by ena ' s competitive analysis and business controls\n( cabc ) group and is supported by ena legal . this event kicks - off cabc ' s\ncompetitive intelligence standards program , which seeks to raise awareness of\nissues relevant both to enron ' s practitioners and senior consumers of\ncompetitive intelligence . this particular speaking engagement is designed to\nraise awareness of the eea ' s legal guidelines , as well as to stimulate\nthought both on the collection opportunities against our competitors as well\nas how we might better protect enron ' s own proprietary information . i\nbelieve the topic of the eea is especially relevant , given that we find\nourselves amidst the big bang of this new information age .\nall cabc staff is being asked to attend this presentation , and we are\ninviting a small number of other enron employees who are engaged in aspects\nof serious competitive intelligence . select executives like yourselves are\nbeing invited to attend , and i would welcome any suggestions of others that\nyou think might benefit from attending this event .\nthe eea presentation is set for august 15 , 1 : 30 - 3 : 00 pm , in the 50 th floor\nconference room . please rsvp to either myself or sharon purswell . hope to\nsee you there .\np . s . by the way , our next speaker segment in the ci standards program will\nconcentrate on the guidelines and implications of the \" foreign corrupt\npractices act ( fcpa ) , \" and will likely be scheduled for the fall .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.891+0000", "entityId": 8017, "properties": {"text": "Subject: ena fileplan\nvince :\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 01 / 2000\n08 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsarah bolken @ enron\n08 / 01 / 2000 08 : 08 am\nsent by : sara bolken @ enron\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ena fileplan\nwe are records and information management consultants from millican &\nassociates , who have been hired by carolyn gilley , ena ' s records manager , to\nformulate a fileplan for all of ena ' s business records . the approach we ' ve\ntaken to develop this fileplan is to perform a generic inventory of each ena\ndepartment ' s records . now , we generally meet with an executive ( usually a\nvice president or director ) within each group to first explain this project\nand seek permission to perform the inventory , and then to ask that executive\nto designate someone within his / her area to serve as our working contact . the\ncontact is usually someone who is very familiar with their department ' s\nrecord , and can be a manager or support staff .\nthere are a number of reasons we are working on this ena fileplan project .\nenron , as i am sure you know , creates volumes of paper and electronic\nrecords - - much of it has never been captured . many departments are keeping\nrecords well beyond their legal retention requirements , taking up valuable\nand expensive office space . the fileplan , once completed , will document what\nis being created , who has responsibility for it , and how long it must be\nmaintained .\nduring our inventory we will attempt to capture both paper and electronic\nrecords . we ' ll also try to identify any computer systems your area ( s ) use .\nthe inventory itself is non - invasive , in that we do not open or look into\nfile cabinets or desk drawers . it ' s simply an interview process where the\ncontact answers a few easy , simple questions .\nplease feel free to contact me if you have any questions . thank you .\nsara bolken\nx 35150", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.895+0000", "entityId": 8018, "properties": {"text": "Subject: houston research opportunity\nhi vince ,\nthank you for offering the opportunity in houston to me last week . i guess i\nwould interested to discuss it further with you - one question i have is\nabout which commercial groups within the houston office you were looking for\nadditional research coverage on ? please let me know when you might be free\nto talk - the best times for me would be from between 12 pm and 5 pm houston\ntime ( i am usually home from 3 pm houston time ) .\nregards ,\nanjam\nx 35383\nhome : 0208 877 9741", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.901+0000", "entityId": 8019, "properties": {"text": "Subject: anjam\nvince ,\nlet me know when you ' ve talked to anjam about moving to houston . i need to\ndo his performance review this week and it would be good to get this on the\ntable with him before then .\nthanks\n- dale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.906+0000", "entityId": 8020, "properties": {"text": "Subject: re : interview with research dept . candidate rabi s . de on august\n11 , 2000\nplease note that dennis benevides has been added to the interview schedule\nfor rabi de on august 11 , 2000 .\n9 : 00 - 9 : 30 am vince kaminiski\n9 : 30 - 10 : 00 am stinson gibner\n10 : 00 - 10 : 30 am grant masson\n10 : 30 - 11 : 00 am krishna krishnarao\n11 : 00 - 11 : 30 am tanya tamarchenko\n11 : 30 - 1 : 00 pm lunch with tanya tamarchenko and zimin lu\n1 : 00 - 1 : 30 pm zimin lu\n1 : 30 - 2 : 00 pm vasant shanbhogue\n2 : 00 - 2 : 30 pm paulo issler\n2 : 45 - 3 : 15 pm dennis benevides\nthe following interview schedule has been set up for rabi s . de by sean\ngrady , hr staffing :\n9 : 00 - 9 : 30 am vince kaminiski\n9 : 30 - 10 : 00 am stinson gibner\n10 : 00 - 10 : 30 am grant masson\n10 : 30 - 11 : 00 am krishna krishnarao\n11 : 00 - 11 : 30 am tanya tamarchenko\n11 : 30 - 1 : 00 pm lunch with tanya tamarchenko and zimin lu\n1 : 00 - 1 : 30 pm zimin lu\n1 : 30 - 2 : 00 pm vasant shanbhogue\n2 : 00 - 2 : 30 pm paulo issler\nplease call me if you have any questions or if a conflict develops and you\nneed to change your interview time . thanks . anita\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 08 / 01 / 2000 02 : 21\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npinnamaneni krishnarao @ ect\n07 / 31 / 2000 05 : 30 pm\nto : anita dupont / na / enron @ enron\ncc :\nsubject : re : interview with research dept . candidate rabi s . de\nanita :\ncan you add dennis benevides ( assistant kathy bass ) to interview rabi de ?\nsorry for the late request .\nthanks ,\nkrishna\nanita dupont @ enron\n07 / 31 / 2000 03 : 49 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect ,\npaulo issler / hou / ect @ ect\ncc :\nsubject : interview with research dept . candidate rabi s . de\nthe following interview schedule has been set up for rabi s . de by sean\ngrady , hr staffing :\n9 : 00 - 9 : 30 am vince kaminiski\n9 : 30 - 10 : 00 am stinson gibner\n10 : 00 - 10 : 30 am grant masson\n10 : 30 - 11 : 00 am krishna krishnarao\n11 : 00 - 11 : 30 am tanya tamarchenko\n11 : 30 - 1 : 00 pm lunch with tanya tamarchenko and zimin lu\n1 : 00 - 1 : 30 pm zimin lu\n1 : 30 - 2 : 00 pm vasant shanbhogue\n2 : 00 - 2 : 30 pm paulo issler\nplease call me if you have any questions or if a conflict develops and you\nneed to change your interview time . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.911+0000", "entityId": 8021, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\ndear kevin :\ndr . kaminski , stinson gibner and zimin lu will interview you at the same time\nin a group interview , which will last approximately 1 hour .\nif it meets with your approval , i have scheduled the telephone interview for\nthis friday , august 4 at 1 : 00 pm . they will call you at 713 - 630 - 0768 .\nfyi . the research group is responsible for option modeling , building systems\nfor risk quantification and management , development of optimization systems ,\nassisting with statistical analysis and anything that requires advanced math ,\nfor\nall of enron .\nif you have any other questions , please let me know .\nregards ,\nshirley crenshaw\nadministrative assistant\nenron corp . research\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com\nningbo xu on 08 / 01 / 2000 11 : 30 : 44 am\nto : \" ' shirley crenshaw ' \"\ncc : \" ' kevinxu 98 @ yahoo . com ' \"\nsubject : re : telephone interview with the enron corp . research group\ndear shirley ,\nsorry for getting back with you until today . i have been out of town since\nlast friday and didn ' t have access to emails .\ni appreciate the opportunities to talk with mr . kaminski , mr . gibner , and\nmr . lu and look forward to their phone calls . as to the date and time , i\nwill be available all day this friday and any day next week . please let me\nknow when they will be available so that i can arrange schedule to\naccommodate . i can be reached at 713 - 630 - 0768 .\nalso , i have a couple of questions that i hope to get your help :\n1 . will the interview be a group interview or each of them will talk with me\nindividually ?\n2 . what ' s the role of the research group at enron ?\nthank you very much and look forward to hearing from you .\nkevin xu\n- - - - - original message - - - - -\nfrom : shirley crenshaw\nto : xuni @ olin . wustl . edu\nsent : 7 / 28 / 00 11 : 45 am\nsubject : telephone interview with the enron corp . research group\ngood afternoon mr . xu\nyour resume has been forwarded to the research group with enron corp .\nthey would like to conduct a telephone interview with you at your\nconvenience .\nplease let me know your available dates and times along with the\ntelephone\nnumber you may be reached at and they will call you .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\nzimin lu director\nlook forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.916+0000", "entityId": 8022, "properties": {"text": "Subject: re : interview schedule change for bruce james\nvince , i am forwarding this information over to tony vasut , who recruits for\nrac , to contact the people listed below . thanks for the feedback .\ntoni\n- - - - - - - - - - - - - - - - - - - - - - forwarded by toni graham / corp / enron on 08 / 01 / 2000\n11 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsean grady\n07 / 31 / 2000 04 : 01 pm\nto : toni graham / corp / enron @ enron\ncc :\nsubject : re : interview schedule change for bruce james\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sean grady / na / enron on 07 / 31 / 2000 03 : 59\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n07 / 31 / 2000 03 : 46 pm\nto : sean grady / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : interview schedule change for bruce james\nsean ,\ni think we should invite bruce for additional interviews . i think that he\ndoes not have\nthe skills required in my unit , but he could contribute in other areas .\nhere is the list of potential interviewees :\njohn echols\nted murphy\nmark ruane\nvince\nsean grady @ enron\n07 / 26 / 2000 02 : 17 pm\nto : grant masson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , william s\nbradford / hou / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , zimin lu / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , david\nport / market risk / corp / enron @ enron\ncc : toni graham / corp / enron @ enron , shirley crenshaw / hou / ect @ ect , rita\nhennessy / na / enron @ enron , dorothy youngblood / hou / ect @ ect\nsubject : interview schedule change for bruce james\nattached please find the interview packet for the above - referenced person .\nthe interview will happen thursday july 27 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsean grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.920+0000", "entityId": 8023, "properties": {"text": "Subject: re : time\ndavid :\ni have you scheduled for 2 : 00 pm , monday , august 7 th . in vince ' s office .\nregards ,\nshirley\ndavid p dupre\n08 / 01 / 2000 08 : 46 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : time\n2 pm is good for monday the 7 th .\nthanks\ndavid\nshirley crenshaw\n08 / 01 / 2000 08 : 44 am\nto : david p dupre / hou / ect @ ect\ncc :\nsubject : re : time\ndavid :\nvince would like to talk with you alone for now . monday , the 7 th is a pretty\ngood day . let me know what times you might be available .\nthanks !\nshirley\ndavid p dupre\n07 / 31 / 2000 05 : 26 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : time\nhi ,\ni wanted to inquire as to which day ( s ) might be convenient to meet with vince\nand his colleagues .\nmany thanks\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.925+0000", "entityId": 8024, "properties": {"text": "Subject: re : interview with research dept . candidate rabi s . de , friday ,\naugust 11 , 2000\ni apologize for not putting the date of this interview . for everyone but\ntanya and paulo , the interview time is already entered on your calendars for\naugust 11 , 2000 . again , sorry for the oversite .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 08 / 01 / 2000 09 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner @ ect\n08 / 01 / 2000 09 : 12 am\nto : anita dupont / na / enron @ enron\ncc :\nsubject : re : interview with research dept . candidate rabi s . de\non which day are the interviews ?\nanita dupont @ enron\n07 / 31 / 2000 03 : 49 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant\nmasson / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect ,\npaulo issler / hou / ect @ ect\ncc :\nsubject : interview with research dept . candidate rabi s . de\nthe following interview schedule has been set up for rabi s . de by sean\ngrady , hr staffing :\n9 : 00 - 9 : 30 am vince kaminiski\n9 : 30 - 10 : 00 am stinson gibner\n10 : 00 - 10 : 30 am grant masson\n10 : 30 - 11 : 00 am krishna krishnarao\n11 : 00 - 11 : 30 am tanya tamarchenko\n11 : 30 - 1 : 00 pm lunch with tanya tamarchenko and zimin lu\n1 : 00 - 1 : 30 pm zimin lu\n1 : 30 - 2 : 00 pm vasant shanbhogue\n2 : 00 - 2 : 30 pm paulo issler\nplease call me if you have any questions or if a conflict develops and you\nneed to change your interview time . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.929+0000", "entityId": 8025, "properties": {"text": "Subject: re : enron / stanford program\nstinson ,\nhow about monday , august 21 st or monday , aug . 28 ?\nmondays are especially effective , because i would like to\ncome on saturday and work over the weekend together with\ngiuseppe before the meetings on monday .\nstinson gibner wrote :\n>\n> nick ,\n>\n> vince asked me to coordinate the planning for you august visit to enron .\nvince\n> and i are free almost any date except august 14 and 15 th , but we would\nlike to\n> try and schedule your visit at a time when you could meet with other key ebs\n> executives such as kevin hannon and perhaps ken rice and john echols . if\nyou\n> could send me a few of your preferred choices of dates , i will try to\noptimize\n> getting you on the calendars of these individuals .\n>\n> by the way , giuseppe is doing a great job and has already made a very good\n> impression on everyone he has worked with . it ' s been a real pleasure\nhaving him\n> here for the summer .\ni ' m very happy to hear that . he is also very excited to be there working with\nyour team !\nthanks ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.935+0000", "entityId": 8026, "properties": {"text": "Subject: wharton partnership\njeff ,\ni am sending you a recommendation regarding our cooperation with the wharton\nschool , following my visit with tom piazze in may . tom is a corporate\nrelations officer\nat wharton .\nrecommendation .\ni am writing to you to recommend joining the wharton partnership .\nthe partnership is an umbrella program established to coordinate\nwharton school initiatives for industry - academic cooperation . currently ,\nthe partnership supports alliances with approximately 200 companies\nworldwide .\nthe recommended annual contribution by enron is between $ 100 k - 150 k ,\nthat puts us in the top bracket of contributing companies , such as ge ,\ncitigroup ,\ngoldman , sachs & co . , intel , and many others . the contribution is executed\nthrough\ngrants to different research projects that would directly benefit enron . the\nchoice\nof the projects is at our discretion and can be changed over time\ndepending on the business needs .\nbenefits to enron .\nenron can benefit from the partnership by :\n- gaining advance access to current academic research\n- significantly increasing our presence and visibility on the campus ,\nenhancing our recruiting efforts\n- taking our message directly to influential academics who have significant\ninfluence on public opinion\n- gaining access to high quality executive education programs\nspecific programs .\nthe partnership functions through involvement in different research projects .\ni have\nidentified a few projects that will maximize the benefit to enron .\n1 . webi ( wharton e - business initiative ) . this programs provides an umbrella\nfor different initiatives in the area of curriculum development , research\nand\ncorporate engagement related to e - commerce .\nmain benefits : access to e - commerce research and\nenhanced recruitment opportunities .\n2 . emerging technologies management research program . interdisciplinary\nprogram addressing issues facing companies in new markets : managing\nintellectual\nproperty , participating in emerging technologies , selecting the optimal\norganizational structures .\nbenefits to enron : access to financial technology in the area of\nvaluation of\nintangible assets and new forms of business organizations .\n3 . risk management and decision process center . development of techniques for\nassessment and management of non - traditional risks ( risks outside the\nscope\nof traditional insurance contracts and capital markets instruments ) .\nbenefits to enron : access to new risk management tools , dissemination\nof information about our capabilities in this area .\npotential users of the program at enron .\nmy group could coordinate the cooperation with the risk management and\ndecision process center .\ngreg whalley is a potential customer for webi . several different units of\nenron can be involved\nwith emerging technologies management research program .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.940+0000", "entityId": 8027, "properties": {"text": "Subject: re : harvard business school case studies\nvince -\nthe only one i can find is the dhabol one . do you still want that one\nalone ? i ' m sorry we don ' t have the others .\nbeth\nvince j kaminski\n07 / 31 / 2000 04 : 17 pm\nto : beth miertschin / hou / ect @ ect\ncc :\nsubject : re : harvard business school case studies\nbeth ,\nthanks .\ndhabol is one . there should be 2 more case studies we used .\none about old egs , the 2 nd about tva options .\n2 - 3 copies will be sufficient .\nvince\nfrom : beth miertschin 07 / 31 / 2000 03 : 44 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : harvard business school case studies\ntry this . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by beth miertschin / hou / ect on 07 / 31 / 2000\n03 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beth miertschin 07 / 31 / 2000 03 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : harvard business school case studies\nvince -\ni just found some copies ! how many do you need and i will have them\ndelivered to you .\nthey are the case about the dabhol project in india . is that the one you\nwere thinking of ?\nbeth\nvince j kaminski\n07 / 31 / 2000 03 : 10 pm\nto : beth miertschin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : harvard business school case studies\nbeth ,\ni have a favor to ask . do we have copies of harvard business school\ncase studies about enron ? we use these case studies during super saturdays .\ni need a few copies . this is for prof . john martin .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.945+0000", "entityId": 8028, "properties": {"text": "Subject: var update memo\nhi grant ,\nas requested i have sent a quick summary document giving an up - to - date\ndescription of the var model .\ni may well have missed some points but cantekin has worked closely with me on\nany changes so it is worth\nconsulting him on any details i have missed .\nthanks\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.949+0000", "entityId": 8029, "properties": {"text": "Subject: big rumor\nvince -\ni know you ' re very busy , so you might not have heard this . . .\napparently , the board will meet this week to approve the sale of * all * of\nenron international ' s assets to a member of hte saudi royal family , the same\nprince who once invested heavily in citicorp to bail it out .\nthe source of this is someone i trust .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.954+0000", "entityId": 8030, "properties": {"text": "Subject: computer\nhello again ,\nthe computer i mentioned earlier will\nremain at the location eb 3239 d however ,\nit belongs to us ,\ni got with chris and it is not really in\nhis way at this point .\nfyi - computer # 002813\nmonitor # 202803\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.959+0000", "entityId": 8031, "properties": {"text": "Subject: preface for book\nvince ,\n?\nhope you are well .\n?\nwe spoke a while ago about who should write the preface for the book , and\nyou kindly offered that you would provide this . ? is this still possible ? ? we\nrealise that you are extremely busy , so chris and les went ahead and wrote\nsomething , which is below , and if you want to review , change or re - write ? the\npreface , that would be very appreciated . ? let me know what your thoughts are .\n?\nthanks ,\njulie\n( we ' re getting close )\n?\n?\npreface\n?\n?\n?\none of our main objectives in writing energy derivatives : pricing and risk\nmanagement has been to bring together as many of the various approaches for\nthe pricing and risk management energy derivatives as possible , to discuss\nin - depth the models , and to show how they relate to each other . ? in this\nway we hope to help the reader to analyse the different models , price a wide\nrange of energy derivatives , or to build a risk management system which uses\na consistent modelling framework . ? we believe that for practitioners this\nlast point is very important and we continue to stress in our articles and\npresentations the dangers of having flawed risk management and giving\narbitrage opportunities to your competitors by using ad - hoc and inconsistent\nmodels for different instruments and markets ( see also others who propose\nconsistent models ? ) . ? however , it is not our wish to concentrate on one\nparticular model or models , at the exclusion of the others because we\nbelieve that the choice should rest with the user ( although it will probably\nbe clear from our discussions the model ( s ) we prefer ) . ? we therefore try and\ngive as clear account as possible of the advantage and disadvantages of all\nthe models so that the reader can make an informed choice as to the models\nwhich best suit their needs .\n?\nin order to meet our objectives the book is divided into 11 chapters . ? in\nchapter 1 we give an overview of the fundamental principals needed to model\nand price energy derivatives which will underpin the remainder of the book . ?\nin addition to introducing the techniques that underlie the black - scholes\nmodelling framework we outline the numerical techniques of trinomial trees\nand monte carlo simulation for derivative pricing , which are used throughout\nthe book .\n?\nin chapter 2 we discuss the analysis of spot energy prices . ? as well as\nanalysing empirical price movements we propose a number of processes that\ncan be used to model the prices . ? we look at the well - know process of\ngeometric brownian motion as well as mean reversion , stochastic volatility\nand jump processes , discussing each and showing how they can be simulated\nand their parameters estimated .\n?\nchapter 3 , written by vince kaminski , grant masson and ronnie chahal of\nenron corp . , discusses volatility estimation in energy commodity markets . ?\nthis chapter builds on the previous one . ? it examines in detail the methods ,\nmerits and pitfalls of the volatility estimation process assuming different\npricing models introduced in chapter 2 . ? examples from crude , gas , and\nelectricity markets are used to illustrate the technical and interpretative\naspects of calculating volatility .\n?\nchapter 4 examines forward curves in the energy markets . ? although such\ncurves are well understood and straight - forward in the most financial\nmarkets , the difficulty of storage in many energy markets leads to less well\ndefined curves . ? in this chapter we describe forward price bounds for energy\nprices and the building of forward curves from market instruments . ? we\noutline the three main approaches which have been applied to building\nforward curves in energy markets ; the arbitrage approach , the econometric\napproach , and deriving analytical values by modelling underlying stochastic\nfactors .\n?\nchapter 5 presents an overview of structures found in the energy derivative\nmarkets and discusses their uses . ? examples of products analysed in this\nchapter include a variety of swaps , caps , floors and collars , as well as\nenergy swaptions , compound options , asian options , barrier options , lookback\noptions , and ladder options .\n?\nchapter 6 investigates single and multi - factor models of the energy spot\nprice and the pricing of some standard energy derivatives . ? closed form\nsolutions for forward prices , forward volatilities , and european option\nprices both on the spot and forwards are derived and presented for all the\nmodels in this chapter including a three factor , stochastic convenience\nyield and interest rate model .\n?\nchapter 7 shows how the prices of path dependent and american style options\ncan be evaluated for the models in chapter 6 . ? simulation schemes are\ndeveloped for the evaluation of european style options and applied to a\nvariety of path dependent options . ? in order to price options which\nincorporate early exercise opportunities , a trinomial tree scheme is\ndeveloped . ? this tree is built to be consistent with the observed forward\ncurve and can be used to price exotic as well as standard european and\namerican style options .\n?\nchapter 8 describes a methodology for valuing energy options based on\nmodelling the whole of the market observed forward curve . ? the approach\nresults in a multi - factor model that is able to realistically capture the\nevolution of a wide range of energy forward curves . ? the user defined\nvolatility structures can be of an extremely general form . ? closed - form\nsolutions are developed for pricing standard european options , and efficient\nmonte carlo schemes are presented for pricing exotic options . ? the chapter\ncloses with a discussion of the valuation of american style options .\n?\nchapter 9 focuses on the risk management of energy derivative positions . ?\nin this chapter we discuss the management of price risk for institutions\nthat trade options or other derivatives and who are then faced with the\nproblem of managing the risk through time . ? we begin with delta hedging a\nportfolio containing derivatives and look at extensions to gamma hedging \u0001 )\nillustrating the techniques using both spot and forward curve models . ? the\ngeneral model presented in chapter 8 is ideally suited to multi - factor\nhedging of a portfolio of energy derivatives and this is also discussed .\n?\nchapter 10 examines the key risk management concept of value at risk ( var )\napplied to portfolios containing energy derivative products . ? after\ndiscussing the concept of the measure , we look at how the key inputs\n( volatilities , covariances , correlations , etc ) can be estimated . ? we then\ncompare the fours major methodologies for computing var ; delta , delta - gamma ,\nhistorical simulation and monte - carlo simulation , applying each to the same\nportfolio of energy options . ? in this chapter we also look at testing the\nvar estimates for various underlying energy market variables .\n?\nfinally , in chapter 11 we review modelling approaches to credit risk . ? we\nlook in detail at two quite different approaches , creditmetrics ( j . p . morgan\n( 1997 ) ) and creditrisk + ( credit suisse financial products ( 1997 ) ) for which\ndetailed information is publicly available . ? together these provide an\nextensive set of tools with which to measure credit risk . ? we present\nnumerical examples of applying these techniques to energy derivatives .\n?\nbefore we begin we stress that the models and methods we present in this\nbook are tools which should be used with the benefit of an understanding of\nhow both the \u0001 + tool \u0001 , and the market works . ? the techniques we describe are\ncertainly not \u0001 & magic wands \u0001 8 which can be waved at data and risk management\nproblems to provide instant and perfect solutions . ? to quote from the\nriskmetrics technical document \u0001 & \u0001 ( no amount of sophisticated analytics will\nreplace experience and professional judgement in managing risk . \u0001 8 . ? however ,\nthe right tools , correctly used make the job a lot easier !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.964+0000", "entityId": 8032, "properties": {"text": "Subject: cera monthly summary - - july 2000 - cera monthly summary\ncera monthly summary : sent wed , august 02 , 2000\ntitle : cera monthly summary - - july 2000\nauthor : cera\ne - mail category : monthly summary\nproduct line : monthly summary ,\nurl : http : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1298 ,\ntable of contents\nasia pacific energy\nafter the panic : east asia three years later\nurl : http : / / www . cera . com / client / ap / pr / 070700 _ 10 / ap _ pr _ 070700 _ 10 _ ab . html\nstate government finances in india : a looming crisis or a driver for\naccelerated energy sector reform ?\nurl : http : / / www . cera . com / client / ap / db / 070700 _ 15 / ap _ db _ 070700 _ 15 _ ab . html\ncera insight \u0001 * china ' s power sector : uneven recovery , uneven reform\nurl : http : / / www . cera . com / client / ap / alt / 070700 _ 13 / ap _ alt _ 070700 _ 13 _ ab . html\ncera insight : the second phase of deregulation in japan ' s power industry . . .\nurl : http : / / www . cera . com / client / ap / db / 072500 _ 16 / ap _ db _ 072500 _ 16 _ ab . htm\nclimate change and environment\ncera watch : moving toward more diversified strategies\nurl : http : / / www . cera . com / client / cce / wch / 072500 _ 18 / cce _ wch _ 072500 _ 18 _ ab . html\nenergy & e - business\nretail energy : pioneering a nonenergy brand in europe\nurl : http : / / www . cera . com / client / e 2 / alt / 071300 _ 15 / e 2 _ alt _ 071300 _ 15 _ ab . html\ndisruptive technology , industry structure , and competitive advantage\nurl : http : / / www . cera . com / client / e 2 / pr / 072000 _ 10 / e 2 _ pr _ 072000 _ 10 _ ab . html\nenergy and e - business : reflections on the cera summit\nurl : http : / / www . cera . com / client / e 2 / db / 072800 _ 15 / e 2 _ db _ 072800 _ 15 _ ab . html\neurasia energy\nrussia ' s governors could make or break energy industry reform\nurl : http : / / www . cera . com / client / fsu / db / 071000 _ 15 / fsu _ db _ 071000 _ 15 _ ab . html\nturkish ipps near approval\nurl : http : / / www . cera . com / client / fsu / alt / 072100 _ 16 / fsu _ alt _ 072100 _ 16 _ ab . html\neuropean gas\nrunning fast to stay still : gas prices in central europe\nurl : http : / / www . cera . com / client / eg / alt / 070300 _ 15 / eg _ alt _ 070300 _ 15 _ ab . html\nsignposts to a high demand path for natural gas : . . .\nurl : http : / / www . cera . com / client / eg / alt / 070700 _ 11 / eg _ alt _ 070700 _ 11 _ ab . html\nretail energy : pioneering a nonenergy brand in europe\nurl : european gas clients :\neuropean power\nfirst cracks in \" fortress france \" : how long before the french market opens ?\nurl : http : / / www . cera . com / client / ep / db / 071100 _ 10 / ep _ db _ 071100 _ 10 _ ab . html\nretail energy : pioneering a nonenergy brand in europe\nurl : http : / / www . cera . com / client / ep / alt / 071300 _ 15 / ep _ alt _ 071300 _ 15 _ ab . html\nturkish ipps near approval\nurl : http : / / www . cera . com / client / ep / alt / 072100 _ 16 / ep _ alt _ 072100 _ 16 _ ab . html\nforum for it strategy\nwhite paper :\nurl : http : / / www . cera . com / client / fits / pr / 073100 _ 12 / fits _ pr _ 073100 _ 12 _ ab . html\nsummary of discussions :\nurl : http : / / www . cera . com / client / fits / pr / 072800 _ 15 / fits _ pr _ 072800 _ 15 _ ab . html\nglobal energy\nmiddle east peacemaking : what comes next ?\nurl : http : / / www . cera . com / client / ge / alt / 072600 _ 18 / ge _ alt _ 072600 _ 18 _ ab . html\nlatin america energy\nmexico elections : the pan triumvirate\nurl : http : / / www . cera . com / client / la / alt / 070300 _ 16 / la _ alt _ 070300 _ 16 _ ab . html\nbrazil downstream oil logistics : opportunities with open access ?\nurl : http : / / www . cera . com / client / la / db / 072500 _ 19 / la _ db _ 072500 _ 19 _ ab . html\nargentine power markets : june prices rise with increased demand . . .\nurl : http : / / www . cera . com / client / la / alt / 072700 _ 12 / la _ alt _ 072700 _ 12 _ ab . html\ncoal bed methane in western canada - - a sleeping giant ?\nurl : http : / / www . cera . com / client / nag / db / 070600 _ 12 / nag _ db _ 070600 _ 12 _ ab . html\nnorth american gas\nmonthly briefing : the pressure remains\nurl : http : / / www . cera . com / client / nag / alt / 071400 _ 15 / nag _ alt _ 071400 _ 15 _ ab . html\na quiet energy crisis ( this op - ed article ran in the washington post on july\n21 , 2000 )\nurl : http : / / www . cera . com / client / nag / alt / 072600 _ 16 / nag _ alt _ 072600 _ 16 _ ab . html\nnorth american electric power\na quiet energy crisis ( this op - ed article ran in the washington post on july\n21 , 2000 )\nurl : http : / / www . cera . com / client / nap / alt / 072600 _ 16 / nap _ alt _ 072600 _ 16 _ ab . html\nrefined products\nmonthly briefing : refined products line \u0001 * north american markets\nurl : http : / / www . cera . com / client / rp / alt / 071400 _ 18 / rp _ alt _ 071400 _ 18 _ ab . html\nrefined products line \u0001 * european markets\nurl : http : / / www . cera . com / client / rp / alt / 072000 _ 14 / rp _ alt _ 072000 _ 14 _ ab . html\nmarket update\nurl : http : / / www . cera . com / client / rp / alt / 072700 _ 17 / rp _ alt _ 072700 _ 17 _ ab . html\nretail energy forum\ncera insight : the second phase of deregulation in japan ' s power industry . . .\nurl : http : / / www . cera . com / client / ref / db / 072500 _ 16 / ref _ db _ 072500 _ 16 _ ab . html\nweathering the summer price volatility and highs - - how will retail marketers\nfare ?\nurl : http : / / www . cera . com / client / ref / alt / 072700 _ 16 / ref _ alt _ 072700 _ 16 _ ab . html\nwestern energy\npower market caps : lower prices at higher risk ?\nurl : http : / / www . cera . com / client / ce / alt / 070700 _ 16 / ce _ alt _ 070700 _ 16 _ ab . html\nthe west : keeping its fingers crossed\nurl : http : / / www . cera . com / client / ce / alt / 072600 _ 16 / ce _ alt _ 072600 _ 16 _ ab . html\nworld oil\noil market politics : the saudi dilemma\nurl : http : / / www . cera . com / client / wo / alt / 070600 _ 18 / wo _ alt _ 070600 _ 18 _ ab . html\nafter the panic : east asia three years later\nurl : http : / / www . cera . com / client / wo / pr / 070700 _ 10 / wo _ pr _ 070700 _ 10 _ ab . html\nopec : arguing over output\nurl : http : / / www . cera . com / client / wo / alt / 071800 _ 18 / wo _ alt _ 071800 _ 18 _ ab . html\n* * end * *\nplease follow url at top of page for a listing of the above reports with\nassociated summaries and links to full reports . note : should the above url\nnot work , please use the following url :\naccount changes\nto edit your personal account information , including your e - mail\naddress , etc . go to : http : / / eprofile . cera . com / cfm / edit / account . cfm\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.969+0000", "entityId": 8033, "properties": {"text": "Subject: re : contingencies\nsteve ,\ni shall call you tomorrow about it . my preference is to move anjam to houston\nfor some time . anjam knows a lot about our business and specific positions\nand it ' s better to prevent a potential leak . i have discussed this issue\nwith dale and richard and they concurred .\ni don ' t expect anjam to act irrationally but it ' s better to be safe than\nsorry .\nvince\nsteven leppard\n08 / 02 / 2000 03 : 08 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : contingencies\nhi vince\nif you ' re currently engaged in drawing up contingency plans for the anjam\nsituation , have you arranged for a \" snapshot \" of his computer directories to\nbe taken ? we all tend to use our personal areas ( on our h : drives ) for\ndevelopment , and obviously there ' ll be a few years of work in anjam ' s\ndirectories . i wouldn ' t want him to wipe it all out in a fit of bad temper .\nalthough our it dept . obviously makes backups , i don ' t know how long they are\nkept for .\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.974+0000", "entityId": 8034, "properties": {"text": "Subject: order confirmation\nthank you for your order . instructions regarding any electronic product\npurchases and a full order summary are listed below , beginning after the\nspecial announcement .\nspecial announcement\nintroducing hbr onpoint , an indispensible new resource from \" harvard\nbusiness review \" that makes it faster and easier to put important\nmanagement thinking to work .\nhbr onpoint gives you :\n* a quick overview of critical management concepts\n* different experts ' views on a given topic\n* the context critical for sharing and applying the knowledge you ' ve\nacquired\nto learn more and pick up a free article overview , visit our web site :\nyour order contains adobe acrobat files . you can download and print these\nfiles by using the temporary url listed below . the url will expire in 24\nhours . feel free to use the url from your office or home computer . to go\nimmediately to the temporary web page , click on the link below , or copy\nand paste the url in to your browser .\nbelow you will find your order information . if you have any questions\nconcerning this order , please e - mail us at orderreceipt @ hbsp . harvard . edu\n( or just reply to this message ) . for technical inquiries , email us at\ntechhelp @ hbsp . harvard . edu\nyour order reads as follows :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncustomer ' s web id : 299070\nsold - to no : a 49227\nsold - to information :\nfirst name : wincenty\nlast name : kaminski\ninstitution / company name : enron corp\njob title : managing director\nmail stop / dept . : ebl 962\naddress : 1400 smith\naddress :\ncity : houston\nstate : tx\nzip / postal code : 77002\ncountry : united states\nemail address : vkamins @ enron . com\nphone number : 713 853 3848\nfax number : 713 646 2503\nattn :\nname of person who placed order : wincenty kaminski\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbill - to information :\nfirst name : wincenty\nlast name : kaminski\ninstitution / company name : enron corp\njob title : managing director\nmail stop / dept . : ebl 962\naddress : 1400 smith\naddress :\ncity : houston\nstate : tx\nzip / postal code : 77002\ncountry : united states\nemail address : vkamins @ enron . com\nphone number : 713 853 3848\nfax number : 713 646 2503\nattn :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nship - to information :\nfirst name : wincenty\nlast name : kaminski\ninstitution / company name : enron corp\njob title : managing director\nmail stop / dept . : ebl 962\naddress : 1400 smith\naddress :\ncity : houston\nstate : tx\nzip / postal code : 77002\ncountry : united states\nemail address : vkamins @ enron . com\nphone number : 713 853 3848\nfax number : 713 646 2503\nattn :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\norder\nprod . # product title quantity price total\n98506 strategy as a portfo . . . 1 $ 5 . 50 $ 5 . 50\n97305 what ' s it worth ? : a . . . 1 $ 5 . 50 $ 5 . 50\n97306 using apv : a better . . . 1 $ 5 . 50 $ 5 . 50\nsub - total : $ 16 . 50\nsurcharge : $ 0 . 00\nshipping and handling : $ 0 . 00\ngst : $ 0 . 00\ntax : $ 0 . 00\ngrand total : $ 16 . 50\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntotal due : $ 0 . 00 ( pre - paid by visa )\nshipping method : non - shippable , pdfs\n* please note that there is applicable sales tax in ca , ct , il , ma , md , and\ntn for the products you have ordered . if you are ordering from one of\nthese states , the amount shown on your invoice and / or credit card\nstatement will be slightly higher than the total listed above , to reflect\nthe applied sales tax . *\nlistservs are a great way to keep up with what ' s going on at the harvard\nbusiness publishing web site . right now , we offer 3 alerts : management\nalert , strategy alert , or hr / training alert . each of these e - mail\n combines a specially selected excerpt with\nannouncements of new and bestselling products from ourextensive catalog .\nyou can also find out what ' s coming up in both harvard business review and\nharvard managementupdate newsletter . to subscribe to one or more of these\nfree services , follow the link below . and thank you for ordering from\nharvard business school publishing , the power of ideas at work .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.979+0000", "entityId": 8035, "properties": {"text": "Subject: re : preface for book\njulie ,\nthe introduction looks fine . i have made some cosmetic changes\n( typos and split infinitives that slipped by ) . you can safely ignore most of\nthem .\nenglish is not even my second language .\nthe corrections are in pink .\nvince\n\" julie \" on 08 / 01 / 2000 07 : 43 : 10 am\nto : \" vincejkaminski \"\ncc :\nsubject : preface for book\nvince ,\n?\nhope you are well .\n?\nwe spoke a while ago about who should write the preface for the book , and\nyou kindly offered that you would provide this . ? is this still possible ? ? we\nrealise that you are extremely busy , so chris and les went ahead and wrote\nsomething , which is below , and if you want to review , change or re - write ? the\npreface , that would be very appreciated . ? let me know what your thoughts are .\n?\nthanks ,\njulie\n( we ' re getting close )\n?\n?\npreface\n?\n?\n?\none of our main objectives in writing energy derivatives : pricing and risk\nmanagement has been to bring together as many of the various approaches for\nthe pricing and risk management energy derivatives as possible , to discuss\nin - depth the models , and to show how they relate to each other . ? in this\nway we hope to help the reader to analyse the different models , price a wide\nrange of energy derivatives , or to build a risk management system which uses\na consistent modelling framework . ? we believe that for practitioners this\nlast point is very important and we continue to stress in our articles and\npresentations the dangers of having flawed risk management and giving\narbitrage opportunities to your competitors by using ad - hoc and inconsistent\nmodels for different instruments and markets ( see also others who propose\nconsistent models ? ) . ? however , it is not our wish to concentrate on one\nparticular model or models , at the exclusion of the others because we\nbelieve that the choice should rest with the user ( although it will probably\nbe clear from our discussions the model ( s ) we prefer ) . ? we therefore try and\ngive as clear account as possible of the advantage and disadvantages of all\nthe models so that the reader can make an informed choice as to the models\nwhich best suit their needs .\n?\nin order to meet our objectives the book is divided into 11 chapters . ? in\nchapter 1 we give an overview of the fundamental principals needed to model\nand price energy derivatives which will underpin the remainder of the book . ?\nin addition to introducing the techniques that underlie the black - scholes\nmodelling framework we outline the numerical techniques of trinomial trees\nand monte carlo simulation for derivative pricing , which are used throughout\nthe book .\n?\nin chapter 2 we discuss the analysis of spot energy prices . ? as well as\nanalysing empirical price movements we propose a number of processes that\ncan be used to model the prices . ? we look at the well - know process of\ngeometric brownian motion as well as mean reversion , stochastic volatility\nand jump processes , discussing each and showing how they can be simulated\nand their parameters estimated .\n?\nchapter 3 , written by vince kaminski , grant masson and ronnie chahal of\nenron corp . , discusses volatility estimation in energy commodity markets . ?\nthis chapter builds on the previous one . ? it examines in detail the methods ,\nmerits and pitfalls of the volatility estimation process assuming different\npricing models introduced in chapter 2 . ? examples from crude , gas , and\nelectricity markets are used to illustrate the technical and interpretative\naspects of calculating volatility .\n?\nchapter 4 examines forward curves in the energy markets . ? although such\ncurves are well understood and straight - forward in the most financial\nmarkets , the difficulty of storage in many energy markets leads to less well\ndefined curves . ? in this chapter we describe forward price bounds for energy\nprices and the building of forward curves from market instruments . ? we\noutline the three main approaches which have been applied to building\nforward curves in energy markets ; the arbitrage approach , the econometric\napproach , and deriving analytical values by modelling underlying stochastic\nfactors .\n?\nchapter 5 presents an overview of structures found in the energy derivative\nmarkets and discusses their uses . ? examples of products analysed in this\nchapter include a variety of swaps , caps , floors and collars , as well as\nenergy swaptions , compound options , asian options , barrier options , lookback\noptions , and ladder options .\n?\nchapter 6 investigates single and multi - factor models of the energy spot\nprice and the pricing of some standard energy derivatives . ? closed form\nsolutions for forward prices , forward volatilities , and european option\nprices both on the spot and forwards are derived and presented for all the\nmodels in this chapter including a three factor , stochastic convenience\nyield and interest rate model .\n?\nchapter 7 shows how the prices of path dependent and american style options\ncan be evaluated for the models in chapter 6 . ? simulation schemes are\ndeveloped for the evaluation of european style options and applied to a\nvariety of path dependent options . ? in order to price options which\nincorporate early exercise opportunities , a trinomial tree scheme is\ndeveloped . ? this tree is built to be consistent with the observed forward\ncurve and can be used to price exotic as well as standard european and\namerican style options .\n?\nchapter 8 describes a methodology for valuing energy options based on\nmodelling the whole of the market observed forward curve . ? the approach\nresults in a multi - factor model that is able to realistically capture the\nevolution of a wide range of energy forward curves . ? the user defined\nvolatility structures can be of an extremely general form . ? closed - form\nsolutions are developed for pricing standard european options , and efficient\nmonte carlo schemes are presented for pricing exotic options . ? the chapter\ncloses with a discussion of the valuation of american style options .\n?\nchapter 9 focuses on the risk management of energy derivative positions . ?\nin this chapter we discuss the management of price risk for institutions\nthat trade options or other derivatives and who are then faced with the\nproblem of managing the risk through time . ? we begin with delta hedging a\nportfolio containing derivatives and look at extensions to gamma hedging \u0001 )\nillustrating the techniques using both spot and forward curve models . ? the\ngeneral model presented in chapter 8 is ideally suited to multi - factor\nhedging of a portfolio of energy derivatives and this is also discussed .\n?\nchapter 10 examines the key risk management concept of value at risk ( var )\napplied to portfolios containing energy derivative products . ? after\ndiscussing the concept of the measure , we look at how the key inputs\n( volatilities , covariances , correlations , etc ) can be estimated . ? we then\ncompare the fours major methodologies for computing var ; delta , delta - gamma ,\nhistorical simulation and monte - carlo simulation , applying each to the same\nportfolio of energy options . ? in this chapter we also look at testing the\nvar estimates for various underlying energy market variables .\n?\nfinally , in chapter 11 we review modelling approaches to credit risk . ? we\nlook in detail at two quite different approaches , creditmetrics ( j . p . morgan\n( 1997 ) ) and creditrisk + ( credit suisse financial products ( 1997 ) ) for which\ndetailed information is publicly available . ? together these provide an\nextensive set of tools with which to measure credit risk . ? we present\nnumerical examples of applying these techniques to energy derivatives .\n?\nbefore we begin we stress that the models and methods we present in this\nbook are tools which should be used with the benefit of an understanding of\nhow both the \u0001 + tool \u0001 , and the market works . ? the techniques we describe are\ncertainly not \u0001 & magic wands \u0001 8 which can be waved at data and risk management\nproblems to provide instant and perfect solutions . ? to quote from the\nriskmetrics technical document \u0001 & \u0001 ( no amount of sophisticated analytics will\nreplace experience and professional judgement in managing risk . \u0001 8 . ? however ,\nthe right tools , correctly used make the job a lot easier !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.984+0000", "entityId": 8036, "properties": {"text": "Subject: statistician position open\nfeel free to circulate this to get a statistician for us .\nthanks ,\nkrishna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.989+0000", "entityId": 8037, "properties": {"text": "Subject: interview schedule for stephen bennett\nattached please find the interview packet for the above - referenced person .\nthe interview will happen friday august 4 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsean grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.994+0000", "entityId": 8038, "properties": {"text": "Subject: brownsville peaker data\nhey guys ,\nfurther to our meeting , here ( courtesy of john t ) are the addresses to view\nthe peaker data for our upcoming testing :\na . o : \\ _ dropbox \\ peakerdata \\ peakersl 999 . htm\nb . o : \\ _ dropbox \\ peakerdata \\ peakers 2000 . htm\nat the present time , these pages display on microsoft internet explorer only .\ntype in the above urls in the address area of your ie . the pages refresh\nautomatically once every minute .\ncheers , - - scott", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:42.998+0000", "entityId": 8039, "properties": {"text": "Subject: contact for sam audit\nvince & stinson ,\nfor your information , professor duffie assigned taiichi , his ph . d . student\nto work on the audit back in may .\ni will contact with him about the progress .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 08 / 02 / 2000 10 : 50 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nhoshino @ leland . stanford . edu on 05 / 25 / 2000 09 : 14 : 52 pm\nplease respond to hoshino @ leland . stanford . edu\nto : zimin . lu @ enron . com\ncc :\nsubject : it worked !\ndear zimin ,\nit was nice talking to you on the phone today\nand thank you for the tip . i manually created \" c : \\ temp \"\nand that was it . the spreadsheet works now . with pentium\n200 mhz and 80 m memory , it runs within 5 minutes .\nvery best regards ,\n/ ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~\ntaiichi hoshino\nph . d . candidate\nees & or\nstanford university\nthe shadows apt # 171\n750 north shoreline blvd .\nmountain view ca 94043\nhome tel / fax ) 650 - 960 - 1993\n/ ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~ / ~", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.004+0000", "entityId": 8040, "properties": {"text": "Subject: re : mscf speaker series / recruitment\nthanks for your message . a call sometimes between 7 : 00 and 8 : 00\nis fine . i come to the office around 7 : 00 traffic permitting .\nvince\npierre - philippe ste - marie on 08 / 02 / 2000 07 : 38 : 42 am\nto : vkamins @ enron . com\ncc :\nsubject : mscf speaker series / recruitment\ndear mr . kaminsky ,\nmr . bryant informed me of the possibility of having you as a guest speaker\nfor our speaker series . it would be a great honor and a pleasure for me to\nhelp you organize a trip to pittsburgh . would it be possible to give you a\ncall tomorrow ( thursday ) at 7 . 00 am central time ?\nsincerely ,\npierre - philippe ste - marie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.008+0000", "entityId": 8041, "properties": {"text": "Subject: confidential : valuation of collateralized mortgages\ndear vince ,\nwe have just received the signed confidentiality agreement . according to\nthe terms in the agreement , i am sending you an attachment with the pdf\nfile of the paper discussing the valuation of collateralized debt . we\nwould be glad to discuss further about a possible collaboration at your\nconvenience .\nplease let me know if you have any trouble deciphering the attachment .\nwith best regards ,\nstathis\nstathis tompaidis\nassistant professor\nmsis department , cba 5 . 202\nmccombs school of business\nuniversity of texas at austin\naustin , tx 78752 - 1175\ntel . 512 - 4715252\nfax . 512 - 4710587\nstathis . tompaidis @ bus . utexas . edu\n- paper . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.013+0000", "entityId": 8042, "properties": {"text": "Subject: research memo on mg var\ndear all :\ncomments on this document should be directed to vince and / or me .\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.018+0000", "entityId": 8043, "properties": {"text": "Subject: var for cob lst aug 2000\nhi ,\ni have run the var for cob lst aug 2000 . a summary of the results is as\nfollows :\ni have also attached the model .\nagain the prices for cocoa beans and gold have not been updated since the\n26 th july . the gamma positions for the metals have been\nadded to check the effect on the var . the change was small :\ndelta var - $ 4 , 899 , 196\ndelta / gamma var - $ 4 , 780 , 797\nthis is not a live daily feed as andreas mannually created the file for me\ntoday so that we could do this check .\nregards\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.022+0000", "entityId": 8044, "properties": {"text": "Subject: re : monday aug . 7\nstinson ,\nno problem .\nvince\nstinson gibner\n08 / 02 / 2000 12 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : monday aug . 7\nvince ,\nmay i take a vacation day next monday , aug . 7 th ?\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.027+0000", "entityId": 8045, "properties": {"text": "Subject: sap time sheets on the o : \\ research \\ common drive\nhello everyone :\nif you were not able to access the spreadsheet we created for your time ,\non the o : \\ research \\ common \\ sap timesheets site , please let me know .\nif a box came up with \" read only \" on it , you may not have access to the o : \\\ndrive . let me know and i will issue an srrs request for access .\nthanks .\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.032+0000", "entityId": 8046, "properties": {"text": "Subject: software license\nvince ( ii ) d - g is unable to provide effective technical support ; or ( iii )\nif d - g agrees to release it sooner .\nbefore i have our attorney add these things to the agreement , we need to\ndiscuss the escrow situation . vince mentioned that you had suggested that\nyour attorney keep the software in escrow . is your attorney a u . s .\nattorney ? it seems like i may have recalled that way back in march you might\nhave said you had a friend or relative that was an attorney . is that the\nsame person ? does this attorney work for a large firm , small firm , or solo\npractitioner ? basically , if you could just provides some additional\ninformation about your attorney , i would appreciate it .\nwe normally would use an escrow company to put the software in escrow . we\nhave dealt with a company here in the u . s . called dsi technology . i will\ncheck into that pending your answer regarding your attorney .\nonce we decide what we want to do regarding placing the software in escrow ,\nwe will red - line the agreement to reflect such changes and e - mail it back to\nyou for your review .\ni look forward to hearing from you .\nkarla feldman\nenron corp .\ncontract administration\n( 713 ) 646 - 7554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.037+0000", "entityId": 8047, "properties": {"text": "Subject: meeting confirmed : mit / aa new value research lab\nthis will confirm the meeting requested below . please note , all invitees are\nnot available , but the confirmed meeting time is the best time for most of\nthe invitees .\ndate : thursday - august 10\ntime : 11 : 00 a to noon\nplace : conference room 4741\nconfirmed attendees : rick causey\nmarie hejka\nsteve kean\namy oberg\nmark palmer\nmark ruane\nthanks for your help , everyone .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carol moffett / hou / ees on 08 / 03 / 2000 04 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : carol moffett 08 / 02 / 2000 03 : 44 pm\nphone no : 713 - 853 - 6658 phone\n888 - 782 - 3518 pager\neb 613 b\nto : ginger dernehl / hou / ees @ ees , shirley crenshaw / hou / ect @ ect , karen k\nheathman / hou / ect @ ect , sharron westbrook / corp / enron @ enron , laura\ngutierrez / hou / ect @ ect , laura valencia / corp / enron @ enron , patty\npennington / enron communications @ enron communications\ncc : steven j kean / hou / ees @ ees , vince j kaminski / hou / ect @ ect , rick\nbuy / hou / ect @ ect , richard causey / corp / enron @ enron , mark ruane / hou / ect @ ect ,\nmark koenig / corp / enron @ enron , mark palmer / corp / enron @ enron , amy\noberg / hou / ees @ ees , marie hejka / corp / enron @ enron\nsubject : meeting request : mit / aa new value research lab\ngood afternoon . i am assisting amy oberg with setting up a meeting among the\nindividuals listed below . would you be so kind as to review their calendars\nand let me know if they are available during any of the suggested meeting\ntimes .\nmeeting topic : mit / aa new value research lab\nmeeting purpose : follow up to discussion from 8 / 1 / 00 ; rick causey to brief\ngroup on\nconversations w / aa regarding \" where they intend to go with this effort \" .\nattendees : steve kean\nvince kaminski\nrick buy\nrick causey\nmark ruane\nmark koenig\nmark palmer\namy oberg\nmarie hejka\nsuggested meeting dates and times :\nthursday - august 10 anytime between 8 : 00 a and 10 : 00 a\nthursday - august 10 11 : 00 to noon\nfriday - august 11 anytime between 8 : 00 a and 9 : 30 a\nfriday - august 11 1 : 00 p to 2 : 00 p\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.042+0000", "entityId": 8048, "properties": {"text": "Subject: re : backwardation hedge strategy\nwendy ,\ni did not . i shall send somebody to your location to pick it up .\nvince\nwendy king @ enron\n08 / 03 / 2000 01 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : backwardation hedge strategy\nhi vince ,\njust curious if you had a chance to review the docs i sent yet ?\nthx\nwendy\nx 35814", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.047+0000", "entityId": 8049, "properties": {"text": "Subject: united way executive solicitation\nas you know , enron \u0001 , s united way executive solicitation is well under way .\naugust 9 th is the target date to achieve 100 % participation and finalize the\ncommitment from our executives and is also the date for the kickoff of the\ncompany wide drive . we have a way to go to meet this objective . as of\naugust 3 rd less than 25 % of our executives have turned in their pledge .\nenron \u0001 , s united way goal for the year is $ 2 . 3 million ( before the corporate\nmatch ) . ena \u0001 , s share of this goal is $ 346 , 500 . while these are aggressive\ngoals , they are very doable , and if everyone contributes their fair share , we\ncan easily surpass these goals .\nalong with focusing on meeting our financial goals , i \u0001 , d like to have 100 %\nparticipation throughout the organization . this is especially important\namong our executives . we define \" participation \" as an employee who has\ncompleted their pledge on - line and made a contribution , no matter what the\nlevel .\ni am a proud member of the alexis de tocqueville society , which is a\ncontributor of $ 10 , 000 or more and have pledged significantly more this year\nthan last year . enron has 39 members of this society , only 5 of which are\nfrom ena . i would like to see this number increase significantly and if you\nare able , i would like you to consider stepping up to this level . given the\nfact that enron executives are highly compensated with generous options and\nbonus program , i encourage each of you to at least become a member of the\n\" make a difference \" club , which is a contribution of 1 . 2 % of your annual\nsalary . i would also challenge each of you to increase your pledge this\nyear , regardless of your level of giving last year .\nwith the campaign going on - line with electronic pledging , i \u0001 , ll need the\nsupport of you and your campaigners to increase participation levels across\nthe ena organization and reach our financial goals . whatever your decision\nregarding the level of your pledge , we need 100 % participation from our\nexecutives in order to set a good example for the rest of ena . your\ncontribution to the united way will continue to make a difference in our\ncommunity . when you give , you change a life right here in our community .\nplease join me in setting the standard for ena by giving generously and\ngetting your pledges in by august 9 th .\nlog - in to system on netscape or explorer - - unitedway . enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.052+0000", "entityId": 8050, "properties": {"text": "Subject: ppa auction\nthe government of alberta power purchase arrangement auction of the regulated\ngeneration plants and units commenced wednesday , august 2 nd , and will\ncontinue through a number of rounds over a number of days and possibly\nweeks . enron canada power corp . ( ecpc ) , a wholly - owned subsidiary of enron\ncanada corp . , is an invited bidder participating in the auction . for\nstrategic corporate purposes and as a result of restrictions imposed under\nthe auction participation agreement and the auction rules ( compliance with\nwhich is secured by a us $ 27 mm bid deposit ) , any information , details or\nspeculation regarding ecpc ' s involvement in the auction , including whether\necpc is participating or continuing to participate in the auction or has\nwithdrawn from the auction at any time , the plants or units ecpc is or is not\nbidding on , the amounts ecpc is bidding or is approved for bidding , and any\nother information whatsoever about the auction process is to be kept strictly\nconfidential . in particular , the auction has been followed closely by the\nmedia and may be of interest to shareholders , investors and other\nconstituents , and such communications are prohibited until after the auction\nhas been completed and the winning bidders have been announced by the\ngovernment of alberta .\nif you have any questions or concerns , please contact peter keohane , enron\ncanada corp . , at 403 - 974 - 6923 or peter . keohane @ enron . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.061+0000", "entityId": 8051, "properties": {"text": "Subject: mg memo\ni am sending you an updated version of the mg var memo , following the\ndiscussion\ngrant and i had with bjorn thursday evening .\nplease , let me know if you think more changes are required .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.069+0000", "entityId": 8052, "properties": {"text": "Subject: reference on bruce kimich\nmike , below are some references on bruce . sorry for the delay . we needed\nto get the contact info from him . call me if you have questions .\nmcm : i was able to verify dates and position as well as a positive reference\nto his ability to work on a team , complete projects timely . and stated that\nhe was a \" great guy \" .\ndr . carl palash : was a co - manager at mcm . confirmed all that bruce listed\non his resume as what they had worked on and stated that bruce is considerate\nand that he would work with bruce or hire him if he had the opportunity in\nthe future .\ndavid krell : helped co - coordinate graduate level classes re : technical\nanalysis at rutgers . bruce is now the lead teacher and the course is highly\nregarded , gets positive reviews and has a full enrollment each time it is\noffered .\nsheila walton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.074+0000", "entityId": 8053, "properties": {"text": "Subject: enterprise risk management\ndear vince ,\n?\nthanks for your call the other day regarding eprm ' s upcoming enterprise risk\nmanagement conference . we seem to be making progress and are pulling\ntogether some interesting subjects for inclusion this year . i am currently\nat a stage where there are plenty of possible sessions and over the next\nweek i will be able to decide of which will stay and which will go .\n?\ni have attached a file that gives an indication of the topics that have been\nidentified so far . although i have bullet points for the sessions i would\nfirst like to identify interested parties and then work with them to develop\na session that reflects their particular expertise and experience . i also\nthink that by continuously developing the points we can make greater\nallowances for continuity between each participant .\n?\nbased on our discussion i would be extremely interested in inviting you to\nlead a session on the main conference . you seemed to have an interesting\nview on operational risk and the particular challenges that are presented\nwithin the energy industry . this session will run on thursday , november\n16 th . the title is reasonably broad at this stage and any suggestions are\nwelcome .\n?\nyour overall views on the current conference content is also welcome and if\nyou feel that another session is more suited to your work do not hesitate to\ncontact me . i look forward to speaking with you soon .\n?\nyours sincerely ,\n?\npaul bristow\nsenior course and conference producer , energy & power risk management\n+ 44 ( 0 ) 20 7484 9883\n- maildoc . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.078+0000", "entityId": 8054, "properties": {"text": "Subject: enron recruiting / mscf speaker series\nvince ,\npierre has informed me that ( if you can so co - ordinate with alison bailey )\nyou would like to move the recruiting event on campus for comp finance to\nnov 3 in order to co - ordinate with pierre ' s invitation to speak in the mscf\nspeaker series the same day . i contacted our recruiting center about\navailability on that date and have forwarded below his response . let me\nknow how else i can help and , again , thanks for your kind words about the\nprogram and you obvious interest in meeting with us .\nrick\nrichard l . bryant\ndirector , computational finance program\ncarnegie mellon university\ngraduate school of industrial administration\npittsburgh , pa 15213\nphone / fax ( 412 ) 268 - 4592 / ( 412 ) 268 - 6837\nhttp : / / fastweb . gsia . cmu . edu / mscf\n- - - - - original message - - - - -\nfrom : \" ken keeley \"\nto : \" rick bryant \"\ncc : \" sally e gould \"\nsent : thursday , august 03 , 2000 1 : 32 pm\nsubject : re : fw : mscf speaker series\nenron currently has 8 interview rooms scheduled on december 11 , 2000 . . . as\nwe have 10 interview rooms available to us and as on 11 / 3 we currently have\nnine rooms booked , if enron wants to move all 8 schedules to 11 / 3 , we\nprobably will not be able to host them on - campus unless [ the firm currently\nholding the rooms ] moves off ( and there is a possibility of that - this is\nlike a game of dominos ) . however , enron could interview off campus , but\nthat is not as convenient for the students and it increases the cost for the\nemployer . if enron wants to move only one or two schedules to 11 / 3 for just\ncomp finance , we would find a way to accomodate them . our recruiting\ncoordinator , sally gould , will do everything she can to make this work for\nenron . please suggest that enron re - contact her as soon as they know what\ntheir preferences are . alison knows how to reach her .\n> ken keeley , ph . d .\n> director , career opportunities center\n> graduate school of industrial administration\n> carnegie mellon university\n> tel : 412 - 268 - 3092\n> fax : 412 - 268 - 4146\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.083+0000", "entityId": 8055, "properties": {"text": "Subject: mscf speaker series\nmscf speaker series\ndear mr . kaminsky , i have included the web page of the list of confirmed\nspeakers , most of them are people i worked with as a fixed income bond\noptions trader . ? having you as a speaker would ? give a chance to the mscf\nstudents to gain insight in an area ( commodities ) and in a field\n( research ) ? in which many are ? interested .\nofficial invitation\n?\n?\n?\nthe first event is next friday !\n?\nfirst event :\naugust 11 , 2000\n10 : 30 to 12 : 30 a . m . fast lab\ndavid hartney & jerry hanweck\nvice president , futures and option sales ?\nj . p . morgan\nn . b .\nthere will be free caps and a copy of the treasury bond basis . priority will\nbe given to mscf students .\n?\n? ?\nprice and hedging volatility contracts\nseptember 1 , 2000\ndmitry pugachevsky\ndeutsche bank\ndmitry pugachesky is a director with otc derivatives research of deutsche\nbank , where his research is primarily focussed on credit derivatives . prior\nto joining deutsche bank , dmitry worked for six years with global analytics\ngroup of bankers trust . there he developed models for emerging markets ,\ninterest rates , and equity derivatives and also participated in actual\ntrading and structuring of interest rate options . he received his phd in\napplied mathematics from carnegie mellon university specializing in control\ntheory for stochastic processes . he has published several papers on\nmodelling in emerging markets and on valuation for passport options .\na measurement framework for bank liquidity risk\nseptember 15 , 2000\nraymond cote\nvice president , finrad inc . nbc\nraymond cote is vice president , financial engineering at finrad inc . , a\nmontreal - based consulting firm offering financial management solutions that\ncombine advisory and systems development services to & corporations and\nfinancial institutions .\nabstract :\nliquidity risk , as opposed to credit and market risks , has received little\nattention in professional or academic journals . we argue that analyzing bank\nliquidity risk can be viewed as a variation of credit risk analysis . after\nintroducing some concepts and definitions , the presentation defines a\nframework allowing to measure a bank ' s structural liquidity risk . it then\nshows that combining the framework with modern credit risk measurement tools\nleads to a liquidity risk var measure . the presentation then offers\nconcluding comments on the integration of the liquidity risk measurement\nframework within enterprise - wide risk management .\nswaps , spreads and bonds\nseptember 29 , 2000\nchris leonard\nsenior trader\nfixed income arbitrage ?\noctober 27 , 2000\nchuck mchugh\nvice president , nbc - new york\nfund management and market efficiency\nnovember 10 , 2000\nandrea lee\nportfolio manager , freiss associates\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhttp : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.088+0000", "entityId": 8056, "properties": {"text": "Subject: var for cob 2 nd aug 2000\nhi vince ,\ni was waiting for a comment about the email below before sending it to the\nfull mailing list . basically it suggests that the\ncopper option position may well have increased the var by more than $ 500 , 000 .\nhowever , given that the portfoilo has also\nchanged from the lst of august it is difficult to asses the actual change due\nto the option only .\nregards\nkirstee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kirstee hewitt / lon / ect on 03 / 08 / 2000\n17 : 29 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : kirstee hewitt 03 / 08 / 2000 16 : 29\nto : cantekin dincerler / hou / ect @ ect , grant masson / hou / ect @ ect\ncc :\nsubject : var for cob 2 nd aug 2000\nhi all ,\nthe cu option position has entered the mg books for the 2 nd aug . the delta is\n35299 $ / mt for dec 2000 . the cu var has gone up\nfrom $ 2 , 245 , 000 to $ 3 , 306 , 000 . i estimated that the portfolio for the lst\nwould increase to approx $ 3 , 039 , 000 so this seems sensible .\nthe overall var change is from $ 4 , 780 , 796 to $ 5 , 991 , 569 . again , the estimate\nfor the lst aug was for an increase in var to ~ $ 5 , 476 , 000 .\nall estimates were based on a delta of 32 , 0004 / dmt .\nthere has also been some increase in the var for aluminium which will effect\nthe overall total .\na summary is as follows :\nregards ,\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.093+0000", "entityId": 8057, "properties": {"text": "Subject: meeting confirmation / discussion points\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n08 / 03 / 2000 08 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndavid foti @ ees\n08 / 02 / 2000 05 : 06 pm\nto : pinnamaneni krishnarao / hou / ect @ ect , minal dalia / hou / ees @ ees , sanjay\nagarwal / hou / ees @ ees , naveen andrews / corp / enron @ enron\ncc : scott stoness / hou / ees @ ees\nsubject : meeting confirmation / discussion points\ntariff var project kick - off meeting\ntime : 8 / 3 ; 2 - 3 pm\nlocation : eb 612\n= = = = = = = = = = = = =\nper the 8 / 2 lunch meeting between research , rac , and the tariff group , there\ndeveloped a consensus to :\ndevelop a high level value - at - risk model within a 4 - 8 week time frame to use\nfor initial risk measurement and hedging purposes\naccommodate links for critical variables such as interest rates , load growth ,\nand inflation\nprovide \" knobs \" for less quantifiable factors such as rate case frequency ,\nrate methodology , etc .\ncollaborate with the tariff forecasting team , to have consistent assumptions\nand logic .\nproposed agenda for our meeting :\ndiscuss the relationship of this project to other ongoing projects\nreview existing t & d forecast model ( decide whether it ' s a starting point or\nnot - attached for your review )\ndiscuss approach ( methodology and technology )\nassign responsibilities\ndevelop project guidelines and timeline\nsee worksheets , \" diagram \" , \" graph \" , \" exposure \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.097+0000", "entityId": 8058, "properties": {"text": "Subject: re : preface for book\njulie ,\nno problem . it ' s your call but chris should also be mentioned as number one .\nvince\n\" julie \" on 08 / 03 / 2000 03 : 06 : 28 pm\nto : \" vince j kaminski \"\ncc :\nsubject : re : preface for book\nvince ,\nthanks for this . ? ?\n?\nare you ok with us using your name for this ? ?\n?\njulie\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : julie @ lacima . co . uk\nsent : wednesday , august 02 , 2000 2 : 11 pm\nsubject : re : preface for book\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 02 / 2000\n08 : 16\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 02 / 2000 08 : 09 am\nto : ? ? \" julie \" @ enron\ncc : ? ? vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : ? re : preface for book ? ( document link : vince j kaminski )\njulie ,\nthe introduction looks fine . i have made some cosmetic changes\n( typos and split infinitives that slipped by ) . you can safely ignore most of\nthem .\nenglish is not even my second language .\nthe corrections are in pink .\nvince\n( see attached file : introo 802 . doc )\n\" julie \" on 08 / 01 / 2000 07 : 43 : 10 am\nto : ? ? \" vincejkaminski \"\ncc :\nsubject : ? preface for book\nvince ,\nhope you are well .\nwe spoke a while ago about who should write the preface for the book , and ?\nyou\nkindly offered that you would provide this . is this still ? possible ? we\nrealise that you are extremely busy , so chris and les went ? ahead and wrote\nsomething , which is below , and if you want to review , change or ? re - write the\npreface , that would be very appreciated . let me know ? what your thoughts\nare .\nthanks ,\njulie\n( we ' re getting close )\npreface\none of our main objectives in ? writing energy derivatives : pricing and risk\nmanagement has been to bring ? together as many of the various approaches\nfor the\npricing and risk management ? energy derivatives as possible , to discuss\nin - depth\nthe models , and to show how ? they relate to each other . in this ? way we hope\nto\nhelp the reader to analyse the different models , price a wide ? range of\nenergy\nderivatives , or to build a risk management system which uses a ? consistent\nmodelling framework . we ? believe that for practitioners this last point is\nvery\nimportant and we continue ? to stress in our articles and presentations the\ndangers of having flawed risk ? management and giving arbitrage opportunities\nto\nyour competitors by using ? ad - hoc and inconsistent models for different\ninstruments and markets ( see also others who propose consistent ? models ? ) .\nhowever , it is not ? our wish to concentrate on one particular model or\nmodels ,\nat the exclusion of ? the others because we believe that the choice should\nrest\nwith the user ? ( although it will probably be clear from our discussions the\nmodel ( s ) we ? prefer ) . we therefore try and give ? as clear account as possible\nof the advantage and disadvantages of all the ? models so that the reader can\nmake an informed choice as to the models which ? best suit their needs .\nin order to meet our objectives the ? book is divided into 11 chapters . ? in\nchapter 1 we give an overview of the fundamental principals needed to ?\nmodel and\nprice energy derivatives which will underpin the remainder of the ? book . in\naddition to introducing ? the techniques that underlie the black - scholes\nmodelling framework we outline ? the numerical techniques of trinomial trees\nand\nmonte carlo simulation for ? derivative pricing , which are used throughout the\nbook .\nin chapter 2 we discuss the ? analysis of spot energy prices . as ? well as\nanalysing empirical price movements we propose a number of processes ? that\ncan\nbe used to model the prices . ? we look at the well - know process of geometric\nbrownian motion as well as ? mean reversion , stochastic volatility and jump\nprocesses , discussing each and ? showing how they can be simulated and their\nparameters estimated .\nchapter 3 , written by vince ? kaminski , grant masson and ronnie chahal of\nenron\ncorp . , discusses volatility ? estimation in energy commodity markets . ? this\nchapter builds on the previous one . it examines in detail the methods , ?\nmerits\nand pitfalls of the volatility estimation process assuming different ? pricing\nmodels introduced in chapter 2 . ? examples from crude , gas , and electricity\nmarkets are used to illustrate ? the technical and interpretative aspects of\ncalculating volatility .\nchapter 4 examines forward curves ? in the energy markets . although ? such\ncurves\nare well understood and straight - forward in the most financial ? markets , the\ndifficulty of storage in many energy markets leads to less well ? defined\ncurves .\nin this chapter we ? describe forward price bounds for energy prices and the\nbuilding of forward ? curves from market instruments . we ? outline the three\nmain\napproaches which have been applied to building forward ? curves in energy\nmarkets ; the arbitrage approach , the econometric approach , and ? deriving\nanalytical values by modelling underlying stochastic factors .\nchapter 5 presents an overview of ? structures found in the energy derivative\nmarkets and discusses their uses . examples of products analysed in this\nchapter include a variety of swaps , caps , floors and collars , as well as\nenergy\nswaptions , compound options , asian options , barrier options , lookback\noptions ,\nand ladder options .\nchapter 6 investigates single and ? multi - factor models of the energy spot\nprice\nand the pricing of some standard ? energy derivatives . closed form ? solutions\nfor forward prices , forward volatilities , and european option prices ? both on\nthe spot and forwards are derived and presented for all the models in ? this\nchapter including a three factor , stochastic convenience yield and interest\nrate model .\nchapter 7 shows how the prices of ? path dependent and american style options\ncan\nbe evaluated for the models in ? chapter 6 . simulation schemes are ? developed\nfor the evaluation of european style options and applied to a variety ? of\npath\ndependent options . in order ? to price options which incorporate early\nexercise\nopportunities , a trinomial ? tree scheme is developed . this tree ? is built to\nbe\nconsistent with the observed forward curve and can be used to ? price exotic\nas\nwell as standard european and american style options .\nchapter 8 describes a methodology ? for valuing energy options based on\nmodelling\nthe whole of the market observed ? forward curve . the approach results ? in a\nmulti - factor model that is able to realistically capture the evolution of a\nwide range of energy forward curves . ? the user defined volatility structures\ncan be of an extremely general ? form . closed - form solutions are ? developed\nfor\npricing standard european options , and efficient monte carlo ? schemes are\npresented for pricing exotic options . the chapter closes with a discussion of\nthe valuation of american style options .\nchapter 9 focuses on the risk ? management of energy derivative positions . ?\nin\nthis chapter we discuss the management of price risk for institutions ? that\ntrade options or other derivatives and who are then faced with the problem ?\nof\nmanaging the risk through time . ? we begin with delta hedging a portfolio\ncontaining derivatives and look ? at extensions to gamma hedging ?\nillustrating\nthe techniques using both spot and ? forward curve models . the general ? model\npresented in chapter 8 is ideally suited to multi - factor hedging of a ?\nportfolio\nof energy derivatives and this is also discussed .\nchapter 10 examines the key risk ? management concept of value at risk ( var )\napplied to portfolios containing ? energy derivative products . after ?\ndiscussing\nthe concept of the measure , we look at how the key inputs ? ( volatilities ,\ncovariances , correlations , etc ) can be estimated . we then compare the fours\nmajor ? methodologies for computing var ; delta , delta - gamma , historical\nsimulation and ? monte - carlo simulation , applying each to the same portfolio\nof\nenergy ? options . in this chapter we also ? look at testing the var estimates\nfor\nvarious underlying energy market ? variables .\nfinally , in chapter 11 we review ? modelling approaches to credit risk . ? we\nlook\nin detail at two quite different approaches , creditmetrics ( j . p . morgan\n( 1997 ) )\nand ? creditrisk + ( credit suisse financial ? products ( 1997 ) ) for which\ndetailed\ninformation is publicly available . together these provide an extensive set ?\nof\ntools with which to measure credit risk . we present numerical examples of\napplying these techniques to energy derivatives .\nbefore ? we begin we stress that the models and methods we present in this\nbook\nare tools ? which should be used with the benefit of an understanding of how\nboth\nthe ? tool ? ? and the market works . the ? techniques we describe are certainly\nnot\n? magic wands ? which can be waved at ? data and risk management problems to\nprovide instant and perfect solutions . to quote from the riskmetrics\ntechnical\ndocument ? ? no amount of sophisticated analytics will replace experience and\nprofessional judgement in managing risk . ? . ? however , the right tools ,\ncorrectly\nused make the job a lot ? easier !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.103+0000", "entityId": 8059, "properties": {"text": "Subject: professor bitran ' s visit\ncolleagues ,\nprofessor gabriel bitran of mit will be visiting enron on wednesday 9 august .\nhe\nwill be here all morning . he would like to meet and discuss with us some of\nthe\nissues and problems that are of interest to ebs . the goal is to suggest a\nresearch subject for one of his students that is of interest to ebs and its\nbusiness . please let me know if you are interested in meeting him . i suggest\nhaving one open meeting ( perhaps one hour ) in which all of us can sit down and\ndiscuss the issues with him .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.107+0000", "entityId": 8060, "properties": {"text": "Subject: dr . gabriel bitran\nvince ,\nfyi .\nprof . gabriel bitran of the m . i . t . management science department is planning\nto visit ebs on wednesday , aug . 9 , to discuss research topics which might be\nof interest to ebs . ( this is amit dhadwal ' s advisor . ) he still has 25 k of\nfunding to use for research , but we are having a hard time coming up with a\nmutually suitable topic . i have asked samer to work with him in trying to\ncome up with a research subject .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.112+0000", "entityId": 8061, "properties": {"text": "Subject: \" help millions \" - pledge today !\nthank you for attending one of the executive breakfasts held at depelchin\nchildren \u0001 , s center this week . seeing is believing . i hope you enjoyed seeing\nfirst hand how the dollars you give really do make a difference .\nas was mentioned in the breakfasts , it is very easy to make your contribution\nthis year by simply clicking on the united way link ,\nhttp : / / unitedway . enron . com or go directly to internet explorer or netscape\nand type in unitedway . enron . com in the address field . either option should\ntake you directly to enron \u0001 , s united way 2000 campaign site . pledge cards\nwill not be distributed this year , so please make your pledge electronically\n- it only takes minutes !\nplease call me at 713 / 853 - 3264 if you have questions or have any difficulties\nat all accessing the site .\nthanks again ! your participation is important to the success of the campaign .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.116+0000", "entityId": 8062, "properties": {"text": "Subject: pjm customer load reduction pilot program approved\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\naugust 4 , 2000\nnorristown , pa :\nthe members committee of pjm interconnection , llc approved a customer load\nreduction pilot program following approval last week by the federal energy\nregulatory commission ( ferc ) . the program targets existing on - site generation\nand load management programs at facilities such as hospitals , hotels ,\nfactories ,\nand stores during emergency conditions . after september 30 th , the end of the\ntrial period for the program , the program will be evaluated to determine its\nsuccess . the evaluation will explore program improvements in order to enhance\nthe program as a way to address potential capacity shortfalls next summer .\nrelated procedures for interconnecting generation under 10 mw will be discussed\nthrough pjm ' s committee process for additional advisory input and will be\nrefiled for further consideration by the ferc after the stakeholder process .\nthe pilot program was designed through a collaborative fast - track effort of\nthe\npjm distributed generation user group . currently , there are 35 participants\nregistered for the program representing a total of 61 . 5 mw . the smallest of\nthese generators represents 200 kw and the largest represents 15 mw . this user\ngroup ' s efforts are consistent with the federal energy regulatory commission ' s\nrecent initiative to support interim procedures to assist with the on - going\nefforts to maintain a reliable electric power system during the summer months .\ndistributed generation benefits the system by either reducing demand or\nproviding additional generating resources . the pilot program is designed to\nprovide additional flexibility during times of peak demand . it is not meant\nto\nreplace pjm ' s successful generation interconnection process which deals with\ngeneration projects applying to become part of regional capacity or to\ninterfere\nwith the active load management ( \" alm \" ) programs that are in operation .\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.121+0000", "entityId": 8063, "properties": {"text": "Subject: fw : final revised document . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffrey a shankman / hou / ect on 08 / 04 / 2000\n01 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" piazze , thomas \" on 08 / 04 / 2000 01 : 50 : 31 pm\nto : \" ' shankman , jeff ' \"\ncc :\nsubject : fw : final revised document . thanks .\njeff : good talking with you earlier this week and happy to hear that your\nconversation with jeff skilling was such a positive one . i am looking\nforward to working with you , vince and mark palmer in the near future to put\nin place a comprehensive plan to maximize the enron / wharton relationship in a\nnumber of different areas . i also know that a number of the faculty will be\nextremely pleased to learn of this news and will be quick to get the ball\nrolling .\nas promised , i am forwarding a document outlining all on campus sponsorship\nopportunities , minus the student business plan competition , for the upcoming\nschool year . please review and pass it on the celeste roberts , for whom i do\nnot have an accurate e - mail address . there are a number of student\nconferences that you may wish to consider participating in as a means for\ngetting the enron name in front of them . please don ' t hesitate to contact me\nwith any questions you may have or requests for additional information .\ni will also contact the career management office and ask that they call\nceleste to discuss career orientation panel sessions . i know that you must\nplan your schedule well in advance and will do my best to facilitate that\nprocess .\nthanks again for all you are doing to bring our two institutions together .\nit is important and makes a big difference .\nlook forward to hearing from you soon .\ntom\n- - - - - original message - - - - -\nfrom : henley , nadina\nsent : friday , july 28 , 2000 9 : 54 am\nto : piazze , thomas\nsubject : final revised document . thanks .\n>\n- opportunities . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.126+0000", "entityId": 8064, "properties": {"text": "Subject: re : var for cob 2 nd aug 2000\nhi vince ,\ni have sent a mail to andreas with a full list of all the assumed units\nwithin our model . he has sent some historical\ndata for cocoa beans and noticed that they were being quoted in gbp / mt so\neven currency units seem to be important .\nthank you for pointing this out ,\nkirstee\nvince j kaminski\n04 / 08 / 2000 15 : 45\nto : kirstee hewitt / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , cantekin dincerler / hou / ect @ ect , grant\nmasson / hou / ect @ ect\nsubject : re : var for cob 2 nd aug 2000\nhi kirstee ,\nthanks again for all your work on mg . one think to double check is units .\nplease , make sure that the prices are quoted in the same units our positions\ncome in .\none potential source of confusion arises from the fact that we are dealing\nwith different\ncultures ( metric system vs . english measures ) .\nvince\nenron capital & trade resources corp . - europe\nfrom : kirstee hewitt 08 / 03 / 2000 11 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : var for cob 2 nd aug 2000\nhi vince ,\ni was waiting for a comment about the email below before sending it to the\nfull mailing list . basically it suggests that the\ncopper option position may well have increased the var by more than $ 500 , 000 .\nhowever , given that the portfoilo has also\nchanged from the lst of august it is difficult to asses the actual change due\nto the option only .\nregards\nkirstee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kirstee hewitt / lon / ect on 03 / 08 / 2000\n17 : 29 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : kirstee hewitt 03 / 08 / 2000 16 : 29\nto : cantekin dincerler / hou / ect @ ect , grant masson / hou / ect @ ect\ncc :\nsubject : var for cob 2 nd aug 2000\nhi all ,\nthe cu option position has entered the mg books for the 2 nd aug . the delta is\n35299 $ / mt for dec 2000 . the cu var has gone up\nfrom $ 2 , 245 , 000 to $ 3 , 306 , 000 . i estimated that the portfolio for the lst\nwould increase to approx $ 3 , 039 , 000 so this seems sensible .\nthe overall var change is from $ 4 , 780 , 796 to $ 5 , 991 , 569 . again , the estimate\nfor the lst aug was for an increase in var to ~ $ 5 , 476 , 000 .\nall estimates were based on a delta of 32 , 0004 / dmt .\nthere has also been some increase in the var for aluminium which will effect\nthe overall total .\na summary is as follows :\nregards ,\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.131+0000", "entityId": 8065, "properties": {"text": "Subject: re : var for cob 2 nd aug 2000\nhi kirstee ,\nthanks again for all your work on mg . one think to double check is units .\nplease , make sure that the prices are quoted in the same units our positions\ncome in .\none potential source of confusion arises from the fact that we are dealing\nwith different\ncultures ( metric system vs . english measures ) .\nvince\nenron capital & trade resources corp . - europe\nfrom : kirstee hewitt 08 / 03 / 2000 11 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : var for cob 2 nd aug 2000\nhi vince ,\ni was waiting for a comment about the email below before sending it to the\nfull mailing list . basically it suggests that the\ncopper option position may well have increased the var by more than $ 500 , 000 .\nhowever , given that the portfoilo has also\nchanged from the lst of august it is difficult to asses the actual change due\nto the option only .\nregards\nkirstee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kirstee hewitt / lon / ect on 03 / 08 / 2000\n17 : 29 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : kirstee hewitt 03 / 08 / 2000 16 : 29\nto : cantekin dincerler / hou / ect @ ect , grant masson / hou / ect @ ect\ncc :\nsubject : var for cob 2 nd aug 2000\nhi all ,\nthe cu option position has entered the mg books for the 2 nd aug . the delta is\n35299 $ / mt for dec 2000 . the cu var has gone up\nfrom $ 2 , 245 , 000 to $ 3 , 306 , 000 . i estimated that the portfolio for the lst\nwould increase to approx $ 3 , 039 , 000 so this seems sensible .\nthe overall var change is from $ 4 , 780 , 796 to $ 5 , 991 , 569 . again , the estimate\nfor the lst aug was for an increase in var to ~ $ 5 , 476 , 000 .\nall estimates were based on a delta of 32 , 0004 / dmt .\nthere has also been some increase in the var for aluminium which will effect\nthe overall total .\na summary is as follows :\nregards ,\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.136+0000", "entityId": 8066, "properties": {"text": "Subject: osman sezgen\nsteve kromer is requesting that osman spend 1 day / week in san francisco .\nsteve heads the risk analytics group for enery asset management under steve\nmeyers . i will find from marty why they are setting up shop in sf .\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n08 / 04 / 2000 04 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc : dave roberts / hou / ees @ ees , osman sezgen / hou / ees @ ees\nsubject : osman sezgen\nkrishna ,\nosman has informed me that he has been requested to provide research services\nto a larger number of clients in ees , leaving him less time to contribute to\nour work here at the eam desk . while i am happy for him and believe that the\ncompany will benefit from his services , i am concerned that he may not be\navailable at a crucial time in the development of the eam option strategy .\nthe eam desk is continuing to develop standard models for the bulk of our ecm\nprojects . we have hired 4 people in the past month and all of them will be\nworking by early september . osman provides an important link for our new\nstaff to several core areas of our business . first , his experience with\nmodeling and energy analysis are invaluable . second , as we move to treating\nour projects as options , and pricing them as such , osman will be needed to\nassist us in creating auditable methods to assess savings volatility .\ni am expecting two of the team members to start in san francisco in the near\nfuture . my request is for osman to be available to this team for one day a\nweek for the next several months , preferably until christmas .\nthank you for your consideration of this matter .\nsteve kromer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.142+0000", "entityId": 8067, "properties": {"text": "Subject: re : mit / aa lab - next meeting\namy ,\ni think that rick causey wants simply to obtain more information to make a\nreasonable decision .\nwe should cancel the meeting for the time being and let rick obtain\nclarification of some issues from aa . i would agree that aa came up with a\nrather\nvague concept of what they want to accomplish .\nvince\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mit / aa lab - next meeting\nvince : can you shed any light on this ? i ' m confused ( really confused ) . . . .\ndo you think this means the decision to go ahead / not is going to be made only\nby kean , buy and koening ? and\ndo you think this means that we shouldn ' t meet on thurs ?\npersonally , i think enron really needs to meet on thurs to buckle down and\nstart developing some idea of needs / wants with regard to the outcomes of the\nlab .\nfrom a practical perspective , if we can ' t get what we want from this whole\nthing , rick ' s issue of \" where aa is going with this \" is really a mute point ,\nisn ' t it ? so a working meeting might really be worth the effort .\nwould appreciate your insight and advice .\nthanks .\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy oberg / hou / ees on 08 / 07 / 2000 09 : 15 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard causey @ enron\n08 / 07 / 2000 09 : 07 am\nto : amy oberg / hou / ees @ ees\ncc :\nsubject : re : mit / aa new value research lab\ni have discussed with aa and they are following up . if i am the agenda , i\nwould cancel the meeting and when i hear from aa , i will e mail everyone . i\nwould suggest we not hold a meeting until kean , buy , koenig and i can all\ncome so that we can truly move forward ( or decide not to ) . let me know what\nyou decide . thanks . rick\nto : richard causey / corp / enron @ enron\ncc :\nsubject : mit / aa new value research lab\nrick : just wanted to highlight that you are the agenda for this meeting ( see\ninitial notice , agenda ) . let me know if there ' s anything i can do for you .\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy oberg / hou / ees on 08 / 07 / 2000 08 : 19 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : carol moffett 08 / 03 / 2000 04 : 21 pm\nphone no : 713 - 853 - 6658 phone\n888 - 782 - 3518 pager\neb 613 b\nto : richard causey / corp / enron @ enron , marie hejka / corp / enron @ enron , steven j\nkean / hou / ees @ ees , amy oberg / hou / ees @ ees , mark palmer / corp / enron @ enron , mark\nruane / hou / ect @ ect , vince j kaminski / hou / ect @ ect , rick buy / hou / ect @ ect , mark\nkoenig / corp / enron @ enron\ncc : sharron westbrook / corp / enron @ enron , christie connell / corp / enron @ enron ,\nmaureen mcvicker / hou / ees @ ees , laura gutierrez / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , karen k heathman / hou / ect @ ect , joannie\nwilliamson / corp / enron @ enron\nsubject : meeting confirmed : mit / aa new value research lab\nthis will confirm the meeting requested below . please note , all invitees are\nnot available , but the confirmed meeting time is the best time for most of\nthe invitees .\ndate : thursday - august 10\ntime : 11 : 00 a to noon\nplace : conference room 4741\nconfirmed attendees : rick causey\nmarie hejka\nsteve kean\namy oberg\nmark palmer\nmark ruane\nthanks for your help , everyone .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carol moffett / hou / ees on 08 / 03 / 2000 04 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : carol moffett 08 / 02 / 2000 03 : 44 pm\nphone no : 713 - 853 - 6658 phone\n888 - 782 - 3518 pager\neb 613 b\nto : ginger dernehl / hou / ees @ ees , shirley crenshaw / hou / ect @ ect , karen k\nheathman / hou / ect @ ect , sharron westbrook / corp / enron @ enron , laura\ngutierrez / hou / ect @ ect , laura valencia / corp / enron @ enron , patty\npennington / enron communications @ enron communications\ncc : steven j kean / hou / ees @ ees , vince j kaminski / hou / ect @ ect , rick\nbuy / hou / ect @ ect , richard causey / corp / enron @ enron , mark ruane / hou / ect @ ect ,\nmark koenig / corp / enron @ enron , mark palmer / corp / enron @ enron , amy\noberg / hou / ees @ ees , marie hejka / corp / enron @ enron\nsubject : meeting request : mit / aa new value research lab\ngood afternoon . i am assisting amy oberg with setting up a meeting among the\nindividuals listed below . would you be so kind as to review their calendars\nand let me know if they are available during any of the suggested meeting\ntimes .\nmeeting topic : mit / aa new value research lab\nmeeting purpose : follow up to discussion from 8 / 1 / 00 ; rick causey to brief\ngroup on\nconversations w / aa regarding \" where they intend to go with this effort \" .\nattendees : steve kean\nvince kaminski\nrick buy\nrick causey\nmark ruane\nmark koenig\nmark palmer\namy oberg\nmarie hejka\nsuggested meeting dates and times :\nthursday - august 10 anytime between 8 : 00 a and 10 : 00 a\nthursday - august 10 11 : 00 to noon\nfriday - august 11 anytime between 8 : 00 a and 9 : 30 a\nfriday - august 11 1 : 00 p to 2 : 00 p\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.147+0000", "entityId": 8068, "properties": {"text": "Subject: re : transport model\nken and greg ,\nthe gamma and cross gamma from our spread option appear to be correct .\none anomaly i found is the price change as function of maturity , see attached\nfigure .\nit is odd , isn ' t it ? and the seeming gamma anomaly is largely because of\nthis .\nzimin\nenron north america corp .\nfrom : kenneth shulklapper 08 / 07 / 2000 11 : 40 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : transport model\nzimin ,\ni have been looking at the new transport model and there are some returns in\nthe greek calculations that i am not comfortable with . i have looked through\nthe formulas and do not see inconsistencies , but we are getting significantly\nhigher gamma values in ' out years ' than in the ' near months / years ' . rho also\nseems to be very high throughout the curve . we are prepared to release this\nmodel to be used on the floor , but would like you to sign off on the\ncalculations . i know that you have a meeting on this on wednesday , and\nwanted to get you the model to review early .\na good example that i am talking about is on the tab \" longterm 9 \" . this is\nthe kingsgate to malin deal that we worked on previously .\nplease give me ( or greg couch ) a call with any questions .\nthanks .\nken\n3 - 7009\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth shulklapper / hou / ect on 08 / 07 / 2000\n10 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : victor guggenheim 08 / 07 / 2000 10 : 54 am\nto : kenneth shulklapper / hou / ect @ ect\ncc :\nsubject : transport model", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.152+0000", "entityId": 8069, "properties": {"text": "Subject: re : subscription renewal\nbarbara ,\nyes , i would like to renew the\nsubscription .\nthanks for the reminder .\nvince\nbarbara lee @ enron\n08 / 04 / 2000 03 : 37 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : subscription renewal\nesource\naugust 4 , 2000\ndear vince ,\nthis is to inform you that your subscription to operational risk is up for\nrenewal . if you would like to renew please let me know and i will take care\nof it . the price for this publication .\n? 1 year $ 795 . 00\n? 2 years\n? 3 years\nif you should have any questions , please do not hesitate to call me at ext .\n3 - 7928 .\nthank you for using esource .\nsincerely ,\nbarbara", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.160+0000", "entityId": 8070, "properties": {"text": "Subject: bob lee ' s bio\nvince ,\nhere ' s bob ' s bio . it ' s pretty short , but i expanded his picture a bit to\ncompensate . i also had to convert it from third person to first , so it ' s a\nlittle \" i \" heavy .\nsam\n- - - - - - - - - - - - - - - - - - - -\ni joined the pricing and evaluation technology group in june , 2000 . i \u0001 , m\ncurrently working on pricing models for commodity options and time series\nanalysis to relate commodity and equity prices .\ni have completed an m . s . in financial engineering at the university of\nmichigan in april , 2000 and have also been an independent organization\ndevelopment consultant for 15 years with extensive work in electric and gas\nutilities . prior to that , i managed a methods development group for a\nnuclear reactor manufacturer for 16 years .\nfrom a few years back , i \u0001 , ve earned a bs ( aero . eng . ) from rensselaer\npolytechnic institute , an ms ( nuclear science ) from vanderbilt university and\na ph . d . ( nuclear engineering ) from rensselaer .\nwhen away from enron , my outside interests include yoga and grandchildren .\n_ _ _ _ _ _ _ _ _ _ _", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.170+0000", "entityId": 8071, "properties": {"text": "Subject: reuters : ecommerce\nmr kaminski ,\nthe 4 reports that you ordered : european gas market , european electricity\nmarket , uk gas market and uk electricity market has now been processed . you\nshould get the 4 reports in the next week or so .\nalso , just to let you know we have just produced 23 ecommerce reports\ncovering all aspects of ecommerce . these reports are very extensive and\nhave all the latest data on ecommerce which is available exclusively within\nthese reports .\ni have also enclosed a brochure with the title of all the ecommerce reports .\nif you have any queries of if i can be of further assistance to you in the\nfuture , please do not hesitate to contact me directly .\nregards ,\nmiss . mychau phan\nenergy account manager\nreuters business insight\n85 fleet street\nlondon ec 4 p 4 al .\ntel : ( + 44 ) 20 675 7288 / 0990\nfax : ( + 44 ) 20 7675 0991\nmphan @ rbi - reports . com\nwebsite : http : / / www . . com / energy\n- ecommerce cat . . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.175+0000", "entityId": 8072, "properties": {"text": "Subject: re : enron - nevrl - aa meeting on july 27\nprofessor kothari :\nthank you for the communique . your recollection regarding a \" next step \" for\nenron is correct - we are currently working\nto define enron ' s key issues and research questions . the group will reconvene\nthis week . following that meeting , i\nwill provide an update to you regarding our progress .\nwith regards ,\namy oberg\n\" s . p . kothari \" on 08 / 07 / 2000 07 : 43 : 41 am\nto : aoberg @ enron . com\ncc :\nsubject : enron - nevrl - aa meeting on july 27\ndear amy :\nthank you and your colleagues for taking the time to video - conference with\nus at mit and aa professionals associated with nevrl . i enjoyed the\nexchange and was left impressed by the technical savvy and keen interest in\nresearch on part of enron . i look forward to hearing from you sometime\nsoon .\nas i recall , we agreed that enron would forward a few issues / questions that\nnevrl could potentially address . once we have a meeting of minds on the\nset of issues , we can discuss further how best to collaborate and\naccomplish our goals . i believe both sides would benefit immensely . mit\nfaculty can research questions relevant to industry and you might receive\nsome answers you are looking for !\nwith best regards ,\ns . p .\n- - - - - - - - - - - - - -\nprofessor s . p . kothari phone : ( 617 ) 253 - 0994\ngordon y billard professor fax : ( 617 ) 253 - 0603\nof accounting e - mail : kothari @ mit . edu\nsloan school of management , e 52 - 325 web : http : / / web . mit . edu / kothari / www /\nmassachusetts institute of technology\n50 memorial drive\ncambridge , ma 02142 - 1347\n- - - - - - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.179+0000", "entityId": 8073, "properties": {"text": "Subject: re : anita dupont resume\noooopppss !\nplease disregard the e - mail below as i see now that shirley has already sent\nthe job description to norma villarreal .\nmy apologies .\nirma alvarez\next . 3 - 1543\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sheila walton / hou / ect on 08 / 07 / 2000 11 : 20\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sheila walton 08 / 07 / 2000 10 : 58 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , norma villarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nmr . kaminski ,\nin sheila walton ' s absence ( she is on vacation this week ) , please go ahead\nand have shirley crenshaw forward the job description that you would like\nposted to norma villarreal for handling .\nif you or shirley require any additional assistance before forwarding your\nmaterial to norma , please feel free to contact me .\nthank you .\nirma alvarez\nena hr coordinator\next . 3 - 1543\nvince j kaminski\n08 / 07 / 2000 08 : 29 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , norma\nvillarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nsheila ,\nno , we have to go through the posting phase first .\ni shall ask shirley to provide the job description .\nvince\nfrom : sheila walton 08 / 04 / 2000 02 : 44 pm\nto : vince j kaminski / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nvince , alice has strong qualities for a sr admin asst . vince , have we posted\nthis position on the job posting board ? if so , great . if not , we need to\npost this opening to prove that we have given an opportunity to all existing\nenron employees before we go outside to external candidates . otherwise ,\nexisting employees have a valid complaint that we are limiting their\nadvancement within enron but hiring externally . if we have not posted this ,\ni will have the recruiter contact shirley so shirley can give us a job\ndescription . then we can post and interview anita simultaneously . please\nlet me know asap if this has been posted . thanks .\nsheila walton\nvince j kaminski\n08 / 02 / 2000 08 : 48 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : anita dupont resume\nsheila ,\ni would like to hire anita dupont as a senior admin assistant , reporting\nto shirley .\nplease , call me about it after you review the resume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 02 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n08 / 02 / 2000 08 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : anita dupont resume\nvince :\nhere is the resume you requested . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.184+0000", "entityId": 8074, "properties": {"text": "Subject: job description for sr . adm . asst - research group posting\nnorma :\nhere is the \" job description \" that vince asked me to provide .\nlet me know if you need anything else .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 07 / 2000\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 07 / 2000 08 : 29 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , norma\nvillarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nsheila ,\nno , we have to go through the posting phase first .\ni shall ask shirley to provide the job description .\nvince\nfrom : sheila walton 08 / 04 / 2000 02 : 44 pm\nto : vince j kaminski / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nvince , alice has strong qualities for a sr admin asst . vince , have we posted\nthis position on the job posting board ? if so , great . if not , we need to\npost this opening to prove that we have given an opportunity to all existing\nenron employees before we go outside to external candidates . otherwise ,\nexisting employees have a valid complaint that we are limiting their\nadvancement within enron but hiring externally . if we have not posted this ,\ni will have the recruiter contact shirley so shirley can give us a job\ndescription . then we can post and interview anita simultaneously . please\nlet me know asap if this has been posted . thanks .\nsheila walton\nvince j kaminski\n08 / 02 / 2000 08 : 48 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : anita dupont resume\nsheila ,\ni would like to hire anita dupont as a senior admin assistant , reporting\nto shirley .\nplease , call me about it after you review the resume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 02 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n08 / 02 / 2000 08 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : anita dupont resume\nvince :\nhere is the resume you requested . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.189+0000", "entityId": 8075, "properties": {"text": "Subject: re : anita dupont resume\nsheila walton is out of the office this week . i will be the hr representative\nhandling this group in her absence . please send the job description to me ,\nnorma villarreal , so that i can begin the process .\nplease call me if you have any questions on this or any other hr related\nissue .\nthank you\nnorma villarreal\nx 31545\nvince j kaminski\n08 / 07 / 2000 08 : 29 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , norma\nvillarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nsheila ,\nno , we have to go through the posting phase first .\ni shall ask shirley to provide the job description .\nvince\nfrom : sheila walton 08 / 04 / 2000 02 : 44 pm\nto : vince j kaminski / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nvince , alice has strong qualities for a sr admin asst . vince , have we posted\nthis position on the job posting board ? if so , great . if not , we need to\npost this opening to prove that we have given an opportunity to all existing\nenron employees before we go outside to external candidates . otherwise ,\nexisting employees have a valid complaint that we are limiting their\nadvancement within enron but hiring externally . if we have not posted this ,\ni will have the recruiter contact shirley so shirley can give us a job\ndescription . then we can post and interview anita simultaneously . please\nlet me know asap if this has been posted . thanks .\nsheila walton\nvince j kaminski\n08 / 02 / 2000 08 : 48 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : anita dupont resume\nsheila ,\ni would like to hire anita dupont as a senior admin assistant , reporting\nto shirley .\nplease , call me about it after you review the resume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 02 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n08 / 02 / 2000 08 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : anita dupont resume\nvince :\nhere is the resume you requested . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.194+0000", "entityId": 8076, "properties": {"text": "Subject: re : anita dupont resume\nsheila ,\nno , we have to go through the posting phase first .\ni shall ask shirley to provide the job description .\nvince\nfrom : sheila walton 08 / 04 / 2000 02 : 44 pm\nto : vince j kaminski / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : re : anita dupont resume\nvince , alice has strong qualities for a sr admin asst . vince , have we posted\nthis position on the job posting board ? if so , great . if not , we need to\npost this opening to prove that we have given an opportunity to all existing\nenron employees before we go outside to external candidates . otherwise ,\nexisting employees have a valid complaint that we are limiting their\nadvancement within enron but hiring externally . if we have not posted this ,\ni will have the recruiter contact shirley so shirley can give us a job\ndescription . then we can post and interview anita simultaneously . please\nlet me know asap if this has been posted . thanks .\nsheila walton\nvince j kaminski\n08 / 02 / 2000 08 : 48 am\nto : sheila walton / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : anita dupont resume\nsheila ,\ni would like to hire anita dupont as a senior admin assistant , reporting\nto shirley .\nplease , call me about it after you review the resume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 02 / 2000\n08 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n08 / 02 / 2000 08 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : anita dupont resume\nvince :\nhere is the resume you requested . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.199+0000", "entityId": 8077, "properties": {"text": "Subject: re : outage tracker option and background\nkarl ,\nthanks a lot . i have passed this information to grant masson\nwho worked here on a related problem .\nhe will get in touch with you regarding this technology .\nvince\nkarl tomlinson @ enron _ development\n07 / 24 / 2000 06 : 00 pm\nto : vince j kaminski @ ect\ncc :\nsubject : outage tracker option and background\nvince ,\nto follow up on the idea of a means for effectively tracking instantanious\nplant faliure utilising either system frequency or connection point voltage .\nthe system frequency phase shift across a network will probably be the best\noption as this would allow alll significant deviations to be tracked along\nwith relative network performance from a few points .\ni am currently chasing nemmco ( au system operator ) to get hold of a few weeks\nof 4 second metering data for the whole system to see if there is enough\nmeasurement consistency to prove one of the ideas .\nthe idea follows along the lines ( literally ! ) that when a unit fails it will\nintroduce a shock into the system and reduce system frequency , which is then\nreacted to by frequency control services offered in by generators . the drop\nin frequency is noticable across the whole network and as one option may\nchange the phase shift across the whole grid . the phase shift across the\nnetwork is constantly changing due to loads and power factor correctrion\ndevices switching on and off , however a unit failure may be distinct .\nthe second option relates to how a unit fails , whereby if a circuit breaker\nis involved as in the case of uncontrolled shutdowns , then the outage will\ncause an rf pulse that should propogate across some of the network .\ntransformers will attenuate the pulse , however it should be detectable many\nmiles away from the fault location . measure the arrival time at several point\non the network , work out the shift and backtrack on the network . part of the\nsolution is already proven in lightning trackers . the solution may be made\nmore simple by detecting the exact point on the sinewave that the unit failed\n( i . e . measuring the three phases at lmhz and then sending the data through a\ndsp ) . this solution is more complex , however this should allow unit failure\nto be pinpointed to a station . the timing base for each of the nodes may be\nsourced from gps timing , self locating at the same time !\nwill send you some links and documents for potentail hardware and setups .\nkarl .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.204+0000", "entityId": 8078, "properties": {"text": "Subject: cplex\nstinson ,\nenclosed are the details of the cplex purchase . if everyone agrees , i will\nassume that ebs is responsible for 1 / 3 of the cost ( with taxes etc . must be\nclose to $ 15 , 000 ) .\nkrishna and grant , what do you think ?\n- samer\n\" kim turley \" on 05 / 25 / 2000 02 : 22 : 30 pm\nplease respond to\nto :\ncc :\nsubject : revised ilog quote 5 - 25 - 00\nhi chonawee ,\nyou are right , i did make a mistake on the calculation , though it isn ' t\nexactly 2 / 3 of the previous 3 pak quote . sorry about that and so glad you\ncaught it . i multiplied by 1 . 5 and i meant to use 1 . 3 . we have discounted\ndeployment paks which we discount by quantity . our chart starts with a 3\npak so i took that number from our price list and multiplied by 1 . 3 to get\n14 , 560 . 00 . for 2 deployments , i take $ 4 , 500 for one , plus 10 % off for the\nsecond license 4 , 050 , then times 1 . 3 = 11 , 115 . 00 . here is the revised\nquote . i checked the other numbers again and they are correct . again , i am\nsorry for the mistake .\nregards ,\n* * * * * * * * * * * * * * * * * * * * * * * * * * * *\nmay 25 , 2000\nenron corporation\na single user cplex v 6 . 6 development license with callable library and\nmixed integer , 2 cplex floating deployment licenses with mixed integer and\n2\nopl studios , all with first year ' s maintenance and on win nt on an intel\npc .\nonce you have a cplex development license with maintenance and update\nservices , then you can purchase deployment licenses ( run time / license\nderivative works )\nitem 1 description fee\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n1 1 cplex floating development license ,\ncallable library , mixed integer $ 15 , 300 . 00\n2 maintenance on item 1 2 , 295 . 00\n3 2 opl studio 10 , 000 . 00\n4 maintenance on item 3 3 , 000 . 00\n5 2 cplex floating deployment / mixed integer 11 , 115 . 00\n6 maintenance on item 5 1 , 667 . 25\n- - - - - - - - - - - -\ntotal $ 43 , 377 . 25\nthe cost of ( optional ) annual maintenance and update services is\n15 % of the license fees .\nthe customer is responsible for and must add any applicable sales tax ,\nvalue - added ( ad valorem ) tax , duty or other transaction tax associated with\nthe sale .\nthis quotation is firm for 30 days and subject to the terms of the ilog\nlicense agreement and the ilog maintenance agreement .\norder information\nfax a purchase order ( with clear shipping and billing address ) to\nmatch the above items , attention kim turley . as soon as we receive your\npurchase order , we will ship the software and simultaneously send you an\ninvoice by\nseparate mail for payment .\npayment terms are net 30 .\nregards ,\nkim turley\nilog direct sales\nilog inc . , lake tahoe office\n889 alder avenue , suite 200\nincline village , nv 89451 , usa\nphone : ( 775 ) 832 - 1960 , ext . 130\nfax : ( 775 ) 831 - 7755\nemail : kturley @ ilog . com\nhave you downloaded your free copy of opl studio ?\nif not , please visit : http : / / www . ilog . com / products / oplstudio /\nilog : powering your software\nhttp : / / www . ilog . com http : / / www . cplex . com\nask me about our\n- ampl training june 15 - 16\n- next opl studio training , june 2000\np . s . from now until june 30 , 2000 , any ilog cplex licensee may\nacquire ilog opl studio for just $ 5 , 000 ( 50 % discount ) . ask me\nabout the details !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.209+0000", "entityId": 8079, "properties": {"text": "Subject: re : software license\noh , ok , i didn ' t know that . - wish i lived in france for august then . as\nlong as it is ok with you that we don ' t get this purchased soon . i just\nwanted to make sure i did everything i could to get the software for you .\nthanks ,\nkarla\nvince j kaminski\n08 / 08 / 2000 09 : 35 am\nto : karla feldman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : software license\nkarla ,\naugust is a vacation month in france .\ni would not count on a response any time soon .\nvince\nfrom : karla feldman on 08 / 08 / 2000 09 : 34 am\nto : geman @ dauphine . fr\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : software license\nms . geman ,\ni am just following up to see if you had received my previous message\nforwarded below and whether you have a response so that we can move forward\nwith this contract ?\nthank you ,\nkarla feldman\n- - - - - forwarded by karla feldman / hou / ect on 08 / 08 / 2000 09 : 23 am - - - - -\nkarla feldman\n07 / 28 / 2000 01 : 41 pm\nto : geman @ dauphine . fr\ncc :\nsubject : software license\ndear ms . geman ,\ni met with vince kaminski yesterday regarding picking back up with the\nlicense agreement we were working on back in march . he relayed some\nadditional requirements which need to be added to the agreement , which\ninclude the following :\n1 . the price agreed upon is $ 90 , 000 .\n2 . d - g will provide system support .\n3 . no later than 12 months of execution of the agreement , d - g will provide\nthe source code to enron . in the meantime , the source code is to be in\nescrow . additionally , the source code would be released sooner than the 12\nmonths if any of the following conditions occur : ( i ) d - g goes out of\nbusiness ; ( ii ) d - g is unable to provide effective technical support ; or ( iii )\nif d - g agrees to release it sooner .\nbefore i have our attorney add these things to the agreement , we need to\ndiscuss the escrow situation . vince mentioned that you had suggested that\nyour attorney keep the software in escrow . is your attorney a u . s .\nattorney ? it seems like i may have recalled that way back in march you might\nhave said you had a friend or relative that was an attorney . is that the\nsame person ? does this attorney work for a large firm , small firm , or solo\npractitioner ? basically , if you could just provides some additional\ninformation about your attorney , i would appreciate it .\nwe normally would use an escrow company to put the software in escrow . we\nhave dealt with a company here in the u . s . called dsi technology . i will\ncheck into that pending your answer regarding your attorney .\nonce we decide what we want to do regarding placing the software in escrow ,\nwe will red - line the agreement to reflect such changes and e - mail it back to\nyou for your review .\ni look forward to hearing from you .\nkarla feldman\nenron corp .\ncontract administration\n( 713 ) 646 - 7554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.214+0000", "entityId": 8080, "properties": {"text": "Subject: re : software license\nkarla ,\naugust is a vacation month in france .\ni would not count on a response any time soon .\nvince\nfrom : karla feldman on 08 / 08 / 2000 09 : 34 am\nto : geman @ dauphine . fr\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : software license\nms . geman ,\ni am just following up to see if you had received my previous message\nforwarded below and whether you have a response so that we can move forward\nwith this contract ?\nthank you ,\nkarla feldman\n- - - - - forwarded by karla feldman / hou / ect on 08 / 08 / 2000 09 : 23 am - - - - -\nkarla feldman\n07 / 28 / 2000 01 : 41 pm\nto : geman @ dauphine . fr\ncc :\nsubject : software license\ndear ms . geman ,\ni met with vince kaminski yesterday regarding picking back up with the\nlicense agreement we were working on back in march . he relayed some\nadditional requirements which need to be added to the agreement , which\ninclude the following :\n1 . the price agreed upon is $ 90 , 000 .\n2 . d - g will provide system support .\n3 . no later than 12 months of execution of the agreement , d - g will provide\nthe source code to enron . in the meantime , the source code is to be in\nescrow . additionally , the source code would be released sooner than the 12\nmonths if any of the following conditions occur : ( i ) d - g goes out of\nbusiness ; ( ii ) d - g is unable to provide effective technical support ; or ( iii )\nif d - g agrees to release it sooner .\nbefore i have our attorney add these things to the agreement , we need to\ndiscuss the escrow situation . vince mentioned that you had suggested that\nyour attorney keep the software in escrow . is your attorney a u . s .\nattorney ? it seems like i may have recalled that way back in march you might\nhave said you had a friend or relative that was an attorney . is that the\nsame person ? does this attorney work for a large firm , small firm , or solo\npractitioner ? basically , if you could just provides some additional\ninformation about your attorney , i would appreciate it .\nwe normally would use an escrow company to put the software in escrow . we\nhave dealt with a company here in the u . s . called dsi technology . i will\ncheck into that pending your answer regarding your attorney .\nonce we decide what we want to do regarding placing the software in escrow ,\nwe will red - line the agreement to reflect such changes and e - mail it back to\nyou for your review .\ni look forward to hearing from you .\nkarla feldman\nenron corp .\ncontract administration\n( 713 ) 646 - 7554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.219+0000", "entityId": 8081, "properties": {"text": "Subject: software license\nms . geman ,\ni am just following up to see if you had received my previous message\nforwarded below and whether you have a response so that we can move forward\nwith this contract ?\nthank you ,\nkarla feldman\n- - - - - forwarded by karla feldman / hou / ect on 08 / 08 / 2000 09 : 23 am - - - - -\nkarla feldman\n07 / 28 / 2000 01 : 41 pm\nto : geman @ dauphine . fr\ncc :\nsubject : software license\ndear ms . geman ,\ni met with vince kaminski yesterday regarding picking back up with the\nlicense agreement we were working on back in march . he relayed some\nadditional requirements which need to be added to the agreement , which\ninclude the following :\n1 . the price agreed upon is $ 90 , 000 .\n2 . d - g will provide system support .\n3 . no later than 12 months of execution of the agreement , d - g will provide\nthe source code to enron . in the meantime , the source code is to be in\nescrow . additionally , the source code would be released sooner than the 12\nmonths if any of the following conditions occur : ( i ) d - g goes out of\nbusiness ; ( ii ) d - g is unable to provide effective technical support ; or ( iii )\nif d - g agrees to release it sooner .\nbefore i have our attorney add these things to the agreement , we need to\ndiscuss the escrow situation . vince mentioned that you had suggested that\nyour attorney keep the software in escrow . is your attorney a u . s .\nattorney ? it seems like i may have recalled that way back in march you might\nhave said you had a friend or relative that was an attorney . is that the\nsame person ? does this attorney work for a large firm , small firm , or solo\npractitioner ? basically , if you could just provides some additional\ninformation about your attorney , i would appreciate it .\nwe normally would use an escrow company to put the software in escrow . we\nhave dealt with a company here in the u . s . called dsi technology . i will\ncheck into that pending your answer regarding your attorney .\nonce we decide what we want to do regarding placing the software in escrow ,\nwe will red - line the agreement to reflect such changes and e - mail it back to\nyou for your review .\ni look forward to hearing from you .\nkarla feldman\nenron corp .\ncontract administration\n( 713 ) 646 - 7554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.223+0000", "entityId": 8082, "properties": {"text": "Subject: var , reporting and resources meeting\nthe below meeting is going to take place today in eb 32 c 2 .\nthanks ,\nrain\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rita hennessy / na / enron on 08 / 08 / 2000\n09 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarbara lewis @ ect\n06 / 19 / 2000 10 : 25 am\nto : sally beck / hou / ect @ ect , vladimir gorny / hou / ect @ ect , grant\nmasson / hou / ect @ ect , michael e moscoso / hou / ect @ ect , ted murphy / hou / ect @ ect ,\nbeth perlman / hou / ect @ ect , stephen stock / hou / ect @ ect\ncc : patti thompson / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , maria\nsandoval / hou / ect @ ect , rita hennessy / na / enron @ enron , cherylene r\nwestbrook / hou / ect @ ect , giselle james / corp / enron @ enron\nsubject : reoccurring meeting\nthe meeting to discuss \" var , reporting and resources ii \" will take place\nevery tuesday at 3 : 00 p . m . beginning june 27 , 2000 .\nplease adjust your schedule to reflect this weekly reoccurring meeting .\nmany thanks ,\nbarbara lewis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.228+0000", "entityId": 8083, "properties": {"text": "Subject: enterprise risk management conference\nit appears that things are filling up fast . among the open topics listed ,\n\" techniques for the clarification and quantification of operational risk\nwithin the energy industry \" and \" var , stress testing , and extreme value\ntheory within an enterprise risk management framework \" seem to be the best .\nwe have liberty to suggest our own topic , maybe along the lines of\nasset / liability management . do you have a preference ?\n- kevin k .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 08 / 08 / 2000\n04 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" paul bristow \" on 08 / 08 / 2000 10 : 28 : 37 am\nplease respond to \" paul bristow \"\nto :\ncc :\nsubject : enterprise risk management conference\ndear kevin ,\n?\nfollowing our telephone conversation , please find attached a summary of\ntopics proposed for inclusion in the forthcoming enterprise risk management\nconference . last year the event attracted over eighty delegates and more are\nexpected this year . the conference will be held in houston on thursday 16 th\nand friday 17 th november , with a pre - conference seminar on the 15 th . as we\ndiscussed , i would be delighted to invite enron to lead a session . i would\nbe happy to consider any of the available sessions or if you have a session\nthat you feel is currently missing from the programme , do not hesitate to\nmake a suggestion .\n?\ni have attached a file that gives an indication of the topics that have been\nidentified so far . although i have bullet points for the sessions i would\nfirst like to identify interested parties and then work with them to develop\na session that reflects their particular expertise and experience . i also\nthink that by continuously developing the points we can make greater\nallowances for continuity between each participant .\n?\ni look forward to speaking with you soon .\n?\nyours sincerely ,\n?\npaul bristow , senior course and conference producer , eprm\n+ 44 ( 0 ) 20 7484 9883\n- maildoc . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.233+0000", "entityId": 8084, "properties": {"text": "Subject: re :\nthank you ! ! !\nvince j kaminski @ ect\n08 / 08 / 2000 09 : 56 am\nto : ashley baxter / corp / enron @ enron\ncc :\nsubject :\nashley ,\nthe web site address of the prof at berkeley i contacted .\nhttp : / / www . ieor . berkeley . edu : 80 / ~ oren /\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.238+0000", "entityId": 8085, "properties": {"text": "Subject: re : hello from vince kaminski at enron\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 08 / 2000\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shmuel oren \" on 08 / 08 / 2000 08 : 14 : 59 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello from vince kaminski at enron\ndear vince\ni will be happy to meet with you . please let me know when you will be here .\ni will check among our students who may be interested . i have a ph . d .\nstudent that is very good but he is still in the pipeline .\nshmuel .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto : ; ;\nsent : tuesday , august 08 , 2000 10 : 59 am\nsubject : hello from vince kaminski at enron\n> shmuel ,\n>\n> i hope you remember me . i visited you together with aram sogomonian , a\n> good friend of mine , a few years ago . i am currently responsible , among\n> other things , for recruiting graduates with finance and / or technical\n> backgrounds at the university of berkeley . i would be glad to give you a\n> call and talk more about the details of our program . my colleague ,\n> ashleybaxter , from the analyst / associate program at enron would join me\n> as well .\n>\n> i am sending you a copy of the brochure about the analyst / associate\n> program .\n>\n> vince kaminski\n>\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.243+0000", "entityId": 8086, "properties": {"text": "Subject: hello from vince kaminski at enron\nshmuel ,\ni hope you remember me . i visited you together with aram sogomonian , a\ngood friend of mine , a few years ago . i am currently responsible , among\nother things , for recruiting graduates with finance and / or technical\nbackgrounds at the university of berkeley . i would be glad to give you a\ncall and talk more about the details of our program . my colleague ,\nashleybaxter , from the analyst / associate program at enron would join me\nas well .\ni am sending you a copy of the brochure about the analyst / associate\nprogram .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\n- enronl . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.248+0000", "entityId": 8087, "properties": {"text": "Subject: enterprise risk\npaul bristow gave me a call a few minutes ago , and is sending over some\ninfo . i also received an email yesterday relating to operational risk .\nevidently cibc has purchased some software to help quantify there exposure .\n- kevin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 08 / 08 / 2000\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" tao , xin \" on 08 / 07 / 2000 12 : 26 : 00 pm\nto : undisclosed - recipients : ;\ncc :\nsubject : press release - netrisk announces sale of riskopstm software to c\nanadian imperial bank of commerce and erste bank\n> please find attached an update on our most recent riskops sales . in\n> addition , we are currently implementing riskops at a continental european\n> financial insitution and a tokyo based japanese financial institution ,\n> neither of whom are more members . we hope to issue a press release on\n> these clients in the near future .\n>\n> kind regards ,\n>\n> lara swann\n>\n>\n>\n> >\n>\n> netrisk announces sale of riskopstm software\n> to canadian imperial bank of commerce and erste bank\n>\n>\n> greenwich , ct . july 11 , 2000 - netrisk , inc . , the risk management software\n> and advisory firm , today announced that both canadian imperial bank of\n> commerce ( cibc ) and erste bank have purchased licenses to its riskops ( tm )\n> software product for measuring and managing enterprise - wide operational\n> risk . operational risk includes the risk of direct and indirect loss from\n> causes as diverse as rogue trading to technology failures to improper\n> sales practices .\n>\n> erste bank , the second largest austrian bank , and canadian imperial bank\n> of commerce , the second largest canadian bank , plan to use riskops ( tm ) on\n> a continuing basis to help evaluate and quantify their firm - wide\n> operational risk capital . the results will be integrated into their\n> risk - adjusted return on capital ( raroc ) and consolidated enterprise\n> ( market , credit and operational ) risk measures . these measures will help\n> both banks to better allocate resources , evaluate individual business\n> units on a risk - adjusted basis and improve strategic decision - making .\n>\n> \" we are delighted to continue our working relationships with cibc and\n> erste bank by offering the riskops ( tm ) solution to complete their\n> operational risk measurement and management processes , \" says dan mudge , a\n> founding partner of netrisk . \" operational risk has been at the forefront\n> of the regulators ' minds and both cibc and erste bank are taking leading\n> positions in the industry by quantifying capital at risk by business\n> line . \"\n>\n> \" riskops ( tm ) has enabled us to comprehensively measure and manage\n> operational risk for each of our businesses , \" says tony peccia , head of\n> operational risk management at cibc . \" riskops ( tm ) gives us the tools we\n> need not only for capital allocation purposes but also for strategic\n> decision making . \"\n>\n> \" the formal inclusion of operational risk into our overall risk management\n> framework has required a significant commitment of erste bank .\n> riskops ( tm ) will be used to estimate capital at risk for each business ,\n> thereby creating an incentive for stronger risk management within the\n> bank , \" says franz reif head of risk management of erste bank . \" in\n> addition , we plan to work with swiss re new markets to evaluate our risk\n> financing alternatives to ensure our capital is being used most\n> efficiently . \"\n>\n> \" netrisk is pleased to continue its leadership role in helping the\n> financial services industry develop methods and tools to quantify and\n> manage operational risk , \" said rob ceske , head of netrisk ' s operational\n> risk management division . \" as another example , the data standards we are\n> developing in conjunction with multinational operational risk exchange ( tm )\n> ( more ( tm ) ) , which includes cibc , will significantly benefit the industry ' s\n> ability to exchange loss and risk data . \"\n>\n> riskops ( tm ) incorporates a database of published operational risk losses\n> from the financial services industry , combined with web - based software to\n> allow users to understand operational risk , analyze loss probabilities ,\n> scale these losses to their firm and determine operational risk profiles ,\n> including operational capital - at - risk . the product displays graphical\n> analyses of the causes , effects , probabilities and severities of\n> operational risk , specific descriptions of events and measures to help\n> senior management and risk managers understand and quantify the sources of\n> operational risk . riskops ( tm ) is available via the internet , by means of\n> any standard browser .\n>\n> about netrisk\n> netrisk ' s mission is to bring cost - effective , practical , leading edge risk\n> solutions to its clients . to do so it is creating on - line communities and\n> risk analytic software delivered via the internet . products and services\n> offered by netrisk include : riskops - internet - based operational risk\n> management solution ; crystal box - interactive performance and risk\n> reporting for the investment professional ; and risk advisory - enterprise\n> risk management consulting , advice and solutions to the financial services\n> industry . gene shanks , the former president of bankers trust , founded\n> netrisk , inc . in 1997 . netrisk has offices in greenwich , ct ; new york\n> city ; and london . additional information on netrisk is available at\n> http : / / www . netrisk . com / and on more at morexchange . org .\n>\n> about canadian imperial bank of commerce\n> canadian imperial bank of canada is canada ' s number two bank . its 1350\n> branches a range of banking services , including checking and savings\n> accounts , investment products , mortgages and other loans , and credit cards\n> to consumers and small to mid - sized businesses . in addition , the bank\n> underwrites and sells life , credit , personal property / casualty , and\n> non - medical health insurance . cibc world markets provides investment\n> banking and other financial services in north america , europe and latin\n> america .\n> about erste bank\n> erste bank is austria ' s oldest and second - largest commercial bank . the\n> bank is doing business in six core segments : retail banking , corporate\n> banking , treasury , trading and sales , and real estate financing and asset\n> management . it has approximately 300 branches with international offices\n> in new york , hong kong , and london . as austrian banks consolidate , erste\n> bank is increasing its presence in eastern europe . it has subsidiaries in\n> croatia and hungary and acquired 52 % of the shares in ceska sporitelna ,\n> the second largest bank in the czech republic from the czech government .\n> one of erste bank ' s largest shareholders is savings foundation\n> anteilsverwaltung sparkasse .\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.253+0000", "entityId": 8088, "properties": {"text": "Subject: re :\njoe ,\ni have written to pal quilkey to invite christian werner to houston\nfor a week to discuss how much of his research we can use .\nvince\njoseph hrgovcic\n08 / 01 / 2000 06 : 51 pm\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject :\nvince ,\ni have inquired into christian ' s climate models . it seems to me like a long\nterm project . chiristian says that his model might be able to do better than\nthe australian met given that they ignore some of the variables he uses and\nthat they are an \" old boy ' s network \" resistant to new developments , but i\ndon ' t think the same can be said of most other weather services . as far as\nthe nws goes , they run their model on a cray , they have several very talented\nphd ' s working on it full - time , and even then , they can only get a dozen or\nso runs per night . in other words , it ' s a huge system . replicating something\neven close to that will not be an easy task .\nthat being said , i think there are related applications that we could look\ninto . since i ' ve already promised the rac group and the weather desk ' s pjm\ntraders to put together a vector autoregressive model of daily temperatures ,\ni think it makes sense to see if something better than a var model can be put\ntogether , perhaps a very stripped down version of the kind of model christian\nhas . what i have in mind is something that would give us say , up to several\ndozens of \" possible \" temperature forecasts every morning , which would be\ncalculated using actual climate models ( as opposed to time series models ) . i\nwould not use this as a forecasting tool ( the nws model results would make a\nfar better \" best guess \" ) , but our ensemble could still be used to provide a\ndistribution of temperature scenarios . this ensemble would have several uses :\n1 ) we could price the book for the ensemble of runs and thereby obtain a\nmore realistic daily v @ r for the weather book ( and eventually interface that\nwith the power desk ' s v @ r calculations )\n2 ) we could use the ensemble of forecasts to relate temperature forecasts to\nweek - ahead cdd and hdd distributions ( for use in our demand swaps )\n3 ) if freese - notis were to give us one of their qualitative forecasts ,\ne . g . , \" expect the trough to recede \" we could sort through the different monte\ncarlo scenarions , find one in which the trough in question is receding , and\nuse corresponding output statistics to download the actual temperatures\ncorresponding to that scenario . up till now , we haven ' t found a good way of\ngetting a numerical fix on what different forecasts actually mean\ntemperature - wise\n4 ) we could use the associated visualization routines that come with such\nmodels to get animations of the evolution of historical weather patterns . the\ntraders could use these in order to look for historical periods which roughly\nmatch current weather conditions and get an idea of what could happen ;\nalthough these meteorological models would not be good for simulating\nmonth - ahead or season - ahead weather ( trust me on this ) we could still use the\nvisualization technology to do to analogous seasonal animations .\njust today , i ' ve spoken with dr . jacobsen of stanford university , who has\nwritten one of the more recent textbooks on climate forecasting , and who\nworked with ucla ' s general circulation model . he says that getting a\nsimplified version of mm 5 ( which is itself a simplified , limited - area version\nof the gcm models that nws , cola , and ucla use ) would take several months to\nimplement , assuming the people involved are already well versed in the\ntechnology . also , i have contacted aer , a massachusetts - based weather\nconsulting firm , and they tell me that they have a mm 5 model running daily\n( only one run per night ) , and also some smaller pc models up and running .\nthey are of course willing to work with us for a fee . their mm 5 version runs\non a $ 200 , 000 parallel processor .\ni am open to your suggestions ( or objections as the case may be ) . i ' m not\nsure how the costs would be apportioned given that this would benefit all of\nenron , and not just the weather desk .\ni am scheduled to go to boston next week anyway , and would like to use the\nopportunity to visit with aer . i will of course coordinate any projects with\nchristian ( if we get something like this up and running it will be more\nlikely that he can get the computing power he needs to run his own australian\nmodel ) .\njoe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.258+0000", "entityId": 8089, "properties": {"text": "Subject: t . v .\nwe are in need of a 9 inch t . v . set .\nthe set will be located betweeneb 3240 e and\neb 3240 f .\nr . c . # 100038\nco . # 0011\nplease if any more information is needed\nplease call me x 34710 .\nalso please provide e . t . a .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.263+0000", "entityId": 8090, "properties": {"text": "Subject: houston research opportunity\ndear vince i would like to make\nthe suggestion that we make this opportunity a one - year assignment working\nwith tanya , and then re - evaluate the situation at the end of the year in\nterms a new role for me in houston thereafter , subject to mutual agreement .\nthe alternative situation of resigning from enron europe and re - joining enron\ncorp is too dramatic and requires me to \" burn bridges \" and my return to enron\neurope would be difficult . also , i would lose the valuable support\nstructures available to me in london . the amount of any fixed costs\n( flights , modest cargo , a few months of mortgage carrying cost ) are entirely\nreasonable , not excessive given my single status and not so great that they\njustify making the contract a three year ( local ) one .\ni would expect that on the basis of almost 3 1 / 2 years solid experience &\nvalue - added at enron europe , the value of several million pounds i have\nidentified & justified to external auditors for enron europe this year and an\n\" excellent \" rating ( my fourth making my 3 1 / 2 yr average rating also\n\" excellent \" ) , i could reasonably be expected to justify a fair deal ( i . e . my\nexisting enron europe salary & benefits package plus a reasonable one - off\nallowance to cover unavoidable additional personal expenses ) .\nregards & thanks again for the opportunity ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.269+0000", "entityId": 8091, "properties": {"text": "Subject: re : thank you\ndear vince ,\nit was our privilege to have you here .\npaul ' s wife had a baby yesterday , and paul will be back on thursday . so\nmaybe item 3 can wait until paul ' s return .\nas for ( 2 ) , yes - i will need a ps reader : o )\nagain , let us check paul ' s diary on his return before fixing a time for\nquentin kerr\n1 1 . the resume you sent to me and grant looks quite good .\ni think it makes sense to interview this person and we can help\nyou with a phone interview .\nis this simon ? ? ?\nthanks\nraymond\nvince j kaminski @ ect\n08 / 08 / 2000 06 : 30 am\nto : paul quilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : thank you\npaul & raymond ,\nit took more than a few days to catch up after i came back from australia .\nthere are few things i would like to bring up to your attention .\nfirst of all , i would like to thank you for your hospitality . i learned a lot\nabout the australian markets and was greatly impressed with the\nquality of the people at the sydney office .\n1 . the resume you sent to me and grant looks quite good .\ni think it makes sense to interview this person and we can help\nyou with a phone interview .\n2 . i have received another resume that looks very promising . i am\nvery interested in this guy and would be ready to bring him over\nto the states where we lack desperately technical talent .\ncan you help us by interviewing him in sydney ?\nthe main determination i need from you is whether he can\nfunction in a company like enron . as any good academic\nhe sent his resume in a ps format and i shall fax you a copy in case\nyou don ' t have a postscript reader on your system .\n3 . christian werner does some really neat things on\nthe weather front . i would like to determine if he can help\nus to upgrade our systems . can we bring him to houston\nfor a week to discuss the weather forecasting technology with mike\nroberts and joe hrgovcic ? i think that he could learn a lot\nfrom mike and other weather guys here how we translate\nweather info into business - related information . i shall be glad to\nunderwrite the cost of this trip .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.274+0000", "entityId": 8092, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 n 2 qjb\norder for : amitava dhar\nwe need to order the latest version of the \" sas \" manuel .\nenron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.278+0000", "entityId": 8093, "properties": {"text": "Subject: matlab at enron\nhello vince :\ni ' m the territory manager for the mathworks , we develop matlab technical\nsoftware . we ' ve recently developed tools well suited for energy trading\nindustry .\nenron has used our products in the past , but all of those end - users have\nleft enron .\nrisk management and research groups at southern energy , txu , dynegy , el\npaso energy , koch , calpine , reliant and others have recently started using\nour products in the following ways .\n1 . create sophisticated option pricing models , risk analysis models , and\nstress analysis models . creating gui front ends for the end - users .\n2 . pull in data from odbc , corba , and sas databases to evaluate .\n3 . visualize the results and quantify the solution .\n4 . compile these models and distribute these applications to their\ntraders , analysists and managers with no distribution costs .\nwho should i contact at your company to discuss enron ' s situation to see if\nour can help enron as it has with our other energy customers ?\nthank you for your time and help .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nscott wakefield\nthe mathworks , inc .\nphone : ( 508 ) 647 - 7282\nfax : ( 508 ) 647 - 4275\ne - mail : swakefield @ mathworks . com\nhttp : / / www . mathworks . com\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nmatlab news group :\nnews : comp . soft - sys . matlab\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nvisit the new mathworks store and buy matlab , simulink\nand all of our products online\nhttp : / / www . mathworks . com / store /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.283+0000", "entityId": 8094, "properties": {"text": "Subject: re : ( no subject )\nthanks vince .\nvince j kaminski wrote :\n> blake ,\n>\n> i forwarded the azure presentation to greg whalley recommending\n> that he takes a look at it .\n>\n> vince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.292+0000", "entityId": 8095, "properties": {"text": "Subject: ( no subject )\ngreg ,\nblake johnson sent me this proposal ( i think some of his friends are\nthe founders of this group ) . it looks like a good project for brad romine\nto evaluate it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 09 / 2000\n01 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nblake johnson on 07 / 20 / 2000 01 : 02 : 59 pm\nplease respond to blakej @ stanford . edu\nto : vkamins @ enron . com\ncc :\nsubject : ( no subject )\nvince ,\nhere are the overview powerpoint slides for the investment and strategic\nrelationship management firm , azure capital , i mentioned in my voice\nmail . the transactions they completed in their past lives at csfb and\nalready in the new firm , as well as their advisory board are probably\nthe strongest evidence of their capabilities .\nhope all is well .\nblake\n- azure slides . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.300+0000", "entityId": 8096, "properties": {"text": "Subject: re : enron / stanford program\nnick ,\nsorry for the delay in my reply . august the 21 st will work the best , since\njim fallon ( head trader for bandwidth ) will be out the following week . we\nwill set up a meeting with him . kevin hannon is out , however , and there is\nno need for you to stay for dinner if you prefer to head back earlier in the\nafternoon .\nshould you want help in making any travel arrangements , our assistant\nshirley crenshaw ( 713 853 5290 ) would be happy to help you .\nthanks and look forward to your visit ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.306+0000", "entityId": 8097, "properties": {"text": "Subject: professor bambos ' visit to enron on monday , august 21 st\nvince / stinson :\ni have made the following appointments for professor bambos :\nmonday , august 21 st\n9 : 00 am jim fallon\n2 : 00 pm john echols\njohn echols ' assistant would like me to send her an email concerning the\nsubject / reason for the visit with john .\nplease let me know .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.311+0000", "entityId": 8098, "properties": {"text": "Subject: talk to us\nover the last several years , we ' ve received numerous questions and candid\ncomments from many of you on a wide range of topics during our espeak\nsessions and through the office of the chairman online mailbox and\nvoicemail . while espeak is an open , informal chat between employees and\nmanagement , the office of the chairman online mailbox and voicemail box are\ndesigned as confidential upward feedback tools for employees who choose\nanonymity . we are pleased that many of you have openly expressed your\nthoughts and your identity , which made it possible for us to quickly respond\nto your questions and concerns . this is the kind of work environment we all\nmust strive for at enron , and we encourage you to continue sending us\ncomments about the things that are important to you .\nmany times , however , we wanted to respond to those of you who contacted us\nanonymously with your good ideas , observations and questions . we now have a\nway to do this while maintaining your confidentiality . in the future , when\nwe receive an anonymous question or comment from an employee , both the\nquestion and our response will be posted on emeet . this will allow us to\nanswer all the questions that we receive , and it will give other employees an\nopportunity to provide their insight , if they choose to do so , since emeet is\nan open discussion board .\nremember : you can send your questions and comments to us in two ways :\n- email to office of the chairman , or\n- office of the chairman voicemail box at 713 - 853 - 7294 , which is a\nconfidential call\npromoting open and honest communication is consistent with our vision and\nvalues and absolutely vital to our continued success as a company . so don ' t\nbe hesitant or afraid to speak your mind . we want to hear from you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.315+0000", "entityId": 8099, "properties": {"text": "Subject: new procedures for enron it purchasing\nattention ! starting 06 / 22 / 00 , enron it purchasing will no longer be able to\nreceive orders for it equipment . to place an order , please proceed to the\nfollowing website : http : / / itcentral . enron . com any orders\nsent to enron it purchasing before this date will be processed - - you do not\nneed to enter another request . enron it purchasing will still be open to\nstatus requests , approval notifications and pricing inquiries . thank you\nvery much for your patience and cooperation !\nit sourcing and procurement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.321+0000", "entityId": 8100, "properties": {"text": "Subject: ola oladeji\nwe are in the process of placing our remaining new associates as they are\nhere for orientation and will be available for work august 28 . ola has yet\nto be placed and i am inquiring if there is any interest in him joining one\nof your groups . i know some of you expressed interest upon interviewing\nhim . if so , please advise as soon as possible . if you have any questions ,\nplease contact me at 3 - 4584 . thanks so much for your participation in the\nassociate program ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.326+0000", "entityId": 8101, "properties": {"text": "Subject: meeting to be rescheduled\nall :\nthe meeting scheduled for tomorrow from 11 - 12 : 00 to discuss enron ' s needs\nfrom the mit / aa new value research lab has been postponed to allow for\nadditional time to confer with aa . new date / time will be set once add ' l\ninformation is gathered .\nthanks .\namy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.331+0000", "entityId": 8102, "properties": {"text": "Subject: re : conversation w / andersen\nvince : forwarding this to you as an fyi - do you suppose you should sit in\nsince you ' ve already met victor ? just a thought . . .\nregards ,\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy oberg / hou / ees on 08 / 09 / 2000 10 : 31 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard causey @ enron\n08 / 09 / 2000 10 : 30 am\nto : amy oberg / hou / ees @ ees\ncc :\nsubject : re : conversation w / andersen\ni am in the process of setting up a conference call with my contact here as\nwell as victor burke . prelimainary indications are they have not finalized\ntheir objectives yet but i will discuss that further with them . i would\nstill strongly suggest rescheduling until everyone can attend and we can\nfully discuss our involvement .\nto : richard causey / corp / enron @ enron\ncc :\nsubject : conversation w / andersen\nrick :\nquick follow up - any response yet from your contacts at andersen ? we are\nholding off cancelling the thurs meeting w / hope they will get back to you by\neob wednesday .\npls let me know what the status is .\nthanks and regards ,\namy oberg\nrichard causey @ enron\n08 / 07 / 2000 09 : 07 am\nto : amy oberg / hou / ees @ ees\ncc :\nsubject : re : mit / aa new value research lab\ni have discussed with aa and they are following up . if i am the agenda , i\nwould cancel the meeting and when i hear from aa , i will e mail everyone . i\nwould suggest we not hold a meeting until kean , buy , koenig and i can all\ncome so that we can truly move forward ( or decide not to ) . let me know what\nyou decide . thanks . rick\nto : richard causey / corp / enron @ enron\ncc :\nsubject : mit / aa new value research lab\nrick : just wanted to highlight that you are the agenda for this meeting ( see\ninitial notice , agenda ) . let me know if there ' s anything i can do for you .\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy oberg / hou / ees on 08 / 07 / 2000 08 : 19 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : carol moffett 08 / 03 / 2000 04 : 21 pm\nphone no : 713 - 853 - 6658 phone\n888 - 782 - 3518 pager\neb 613 b\nto : richard causey / corp / enron @ enron , marie hejka / corp / enron @ enron , steven j\nkean / hou / ees @ ees , amy oberg / hou / ees @ ees , mark palmer / corp / enron @ enron , mark\nruane / hou / ect @ ect , vince j kaminski / hou / ect @ ect , rick buy / hou / ect @ ect , mark\nkoenig / corp / enron @ enron\ncc : sharron westbrook / corp / enron @ enron , christie connell / corp / enron @ enron ,\nmaureen mcvicker / hou / ees @ ees , laura gutierrez / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , karen k heathman / hou / ect @ ect , joannie\nwilliamson / corp / enron @ enron\nsubject : meeting confirmed : mit / aa new value research lab\nthis will confirm the meeting requested below . please note , all invitees are\nnot available , but the confirmed meeting time is the best time for most of\nthe invitees .\ndate : thursday - august 10\ntime : 11 : 00 a to noon\nplace : conference room 4741\nconfirmed attendees : rick causey\nmarie hejka\nsteve kean\namy oberg\nmark palmer\nmark ruane\nthanks for your help , everyone .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by carol moffett / hou / ees on 08 / 03 / 2000 04 : 03\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : carol moffett 08 / 02 / 2000 03 : 44 pm\nphone no : 713 - 853 - 6658 phone\n888 - 782 - 3518 pager\neb 613 b\nto : ginger dernehl / hou / ees @ ees , shirley crenshaw / hou / ect @ ect , karen k\nheathman / hou / ect @ ect , sharron westbrook / corp / enron @ enron , laura\ngutierrez / hou / ect @ ect , laura valencia / corp / enron @ enron , patty\npennington / enron communications @ enron communications\ncc : steven j kean / hou / ees @ ees , vince j kaminski / hou / ect @ ect , rick\nbuy / hou / ect @ ect , richard causey / corp / enron @ enron , mark ruane / hou / ect @ ect ,\nmark koenig / corp / enron @ enron , mark palmer / corp / enron @ enron , amy\noberg / hou / ees @ ees , marie hejka / corp / enron @ enron\nsubject : meeting request : mit / aa new value research lab\ngood afternoon . i am assisting amy oberg with setting up a meeting among the\nindividuals listed below . would you be so kind as to review their calendars\nand let me know if they are available during any of the suggested meeting\ntimes .\nmeeting topic : mit / aa new value research lab\nmeeting purpose : follow up to discussion from 8 / 1 / 00 ; rick causey to brief\ngroup on\nconversations w / aa regarding \" where they intend to go with this effort \" .\nattendees : steve kean\nvince kaminski\nrick buy\nrick causey\nmark ruane\nmark koenig\nmark palmer\namy oberg\nmarie hejka\nsuggested meeting dates and times :\nthursday - august 10 anytime between 8 : 00 a and 10 : 00 a\nthursday - august 10 11 : 00 to noon\nfriday - august 11 anytime between 8 : 00 a and 9 : 30 a\nfriday - august 11 1 : 00 p to 2 : 00 p\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.335+0000", "entityId": 8103, "properties": {"text": "Subject: re : houston research opportunity : anjam ' s plight\ngrant ,\ni agree . we shall give him an offer of a job in houston ( on the terms\nwe discussed with ) plus an option to stay in\nlondon , if he does not like houston . his choice . i think we extended a very\ngenerous offer to him\nand he may have an excessive perception of his contribution to enron .\nvince\nenron north america corp .\nfrom : grant masson 08 / 09 / 2000 02 : 41 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : houston research opportunity : anjam ' s plight\nvince :\ni got the following note from uk hr after had a call from them earlier\ntoday . i told them that the deal you and i communicated to anjam was firm\nand not negotiable ( with the exception of the issues regarding the flat\nrental ) . apparently , anjam is trying to play hard ball . what ' s your\ncommitment to anjam ? should we explore a package deal ? my vote is no .\ngrant .\ntara rozen\n08 / 09 / 2000 12 : 17 pm\nto : grant masson / hou / ect @ ect\ncc : melanie doyle / lon / ect @ ect\nsubject : houston research opportunity\ngrant\nunfortunately , we were unsuccessful in our attempt to convince anjam that he\nshould transfer on a local us package . the difficulty is not so much the\ncompensation and benefits , it seems more to do with the actual job and\nlong - term prospects . he will only , therefore , commit to 12 months and only on\nassignment terms .\nwe explained to anjam the rationales for transferring locally , ie not just\ncost but equitability among his peers . he is convinced that his skills and\nenron knowledge are valueable enough to warrant an assignment rather than a\nlocal deal . also , he was apparently told by vince that it was impossible for\nyou to find a local hire for this role as you were not paying the market\nrate .\nwould you like to move further with this ? if so , we can put together costs\nfor you for a 12 month assignment and see what you think . i am out tomorrow\nbut back in on friday and could do it for you then .\nlet us know !\nregards\ntara\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tara rozen / lon / ect on 09 / 08 / 2000 18 : 14\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelanie doyle\n08 / 08 / 2000 13 : 07\nto : tara rozen / lon / ect @ ect\ncc : madeline fox / lon / ect @ ect\nsubject : houston research opportunity\ntara ,\ncan we discuss tomorrrow ?\nthanks\nmel\n- - - - - - - - - - - - - - - - - - - - - - forwarded by melanie doyle / lon / ect on 08 / 08 / 2000 13 : 04\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : anjam ahmad 08 / 08 / 2000 12 : 08\nto : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\ncc : melanie doyle / lon / ect @ ect\nsubject : houston research opportunity\ndear vince i would like to make\nthe suggestion that we make this opportunity a one - year assignment working\nwith tanya , and then re - evaluate the situation at the end of the year in\nterms a new role for me in houston thereafter , subject to mutual agreement .\nthe alternative situation of resigning from enron europe and re - joining enron\ncorp is too dramatic and requires me to \" burn bridges \" and my return to enron\neurope would be difficult . also , i would lose the valuable support\nstructures available to me in london . the amount of any fixed costs\n( flights , modest cargo , a few months of mortgage carrying cost ) are entirely\nreasonable , not excessive given my single status and not so great that they\njustify making the contract a three year ( local ) one .\ni would expect that on the basis of almost 3 1 / 2 years solid experience &\nvalue - added at enron europe , the value of several million pounds i have\nidentified & justified to external auditors for enron europe this year and an\n\" excellent \" rating ( my fourth making my 3 1 / 2 yr average rating also\n\" excellent \" ) , i could reasonably be expected to justify a fair deal ( i . e . my\nexisting enron europe salary & benefits package plus a reasonable one - off\nallowance to cover unavoidable additional personal expenses ) .\nregards & thanks again for the opportunity ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.340+0000", "entityId": 8104, "properties": {"text": "Subject: an interesting resume\ni shall interview this candidate next week\n( a very preliminary interview ) to evaluate his potential\nand determine if he fits enron ' s culture .\ndo you see a need for a person with his skills in your area ( litigation\nsupport ) ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.345+0000", "entityId": 8105, "properties": {"text": "Subject: re : bfl - jim woods info\nal ,\nthanks . confirmed for wednesday , next week , 7 : 00 a . m .\nvince\nal arfsten on 08 / 09 / 2000 01 : 41 : 59 pm\nplease respond to arfsten @ bflassociates . com\nto : vince j kaminski\ncc :\nsubject : re : bfl - jim woods info\nvince : jim is confirmed to meet you at 7 : 00 a . m . next wednesday . he will go\nto the hostess stand at the atrium restaurant and await you . he is about 5 ' 6 \"\nbrownish hair , glasses , youthful appearance and will be in a sport jacket for\ncasual attire . i look forward to tallking with you again soon . al arfsten\nvince j kaminski wrote :\n> al ,\n>\n> wednesday next week is fine with me . i would prefer to meet earlier\n> rather than later . what about 6 : 45 or 7 : 00 ?\n>\n> vince\n>\n> al arfsten on 08 / 09 / 2000 11 : 38 : 46 am\n>\n> please respond to arfsten @ bflassociates . com\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : bfl - jim woods info\n>\n> vince : pursuant to bjorn ' s suggestion and my voice mail message ,\n> attached you will find the background information on jim woods . jim is\n> not a pure quant and enjoys much more the areas of strategic thinking\n> and related processes . from what i can tell , he enjoys the process of\n> creating an arguement for a client ' s position in some disputed matter .\n> he is looking forward to having an opportunity of meeting you . his\n> availability next week is only on wednesday . an early breakfast at the\n> hyatt would work great for him . please let me know if that might work .\n> if not , when ? al arfsten\n>\n> ( see attached file : wood jim . doc )\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> name : wood jim . doc\n> wood jim . doc type : winword file ( application / msword )\n> encoding : base 64\n> description : mac word 3 . 0", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.349+0000", "entityId": 8106, "properties": {"text": "Subject: interview schedule for rabi s . de\nattached please find the interview packet for the above - referenced person .\nthe interview will happen friday august 11 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsean grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.354+0000", "entityId": 8107, "properties": {"text": "Subject: resume - jeff andrews\nvince ,\nattached is the evaluation form and resume for your interview w / jeff andrews\nthis afternoon at 5 pm . i will bring him to your office at that time .\njeff is interviewing for a research position within the coal group . please\nfeel free to contact if there are any questions .\nthanks\nchris williams\nena staffing\nx 39866", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.358+0000", "entityId": 8108, "properties": {"text": "Subject: a chapter to be published in a book by clewlow / strickland\ndarrell ,\ngrant masson , ronnie chahal and myself made a contribution to the book\non energy derivatives to be published soon in australia ( a book by\nclewlow and strickland ) .\ngiven our growing workload and responsibilities , the quality of the paper is\nless\nthan satisfactory . i would like to make sure that there are no obvious and\nembarrassing errors in what we submit . i would appreciate if you could\ntake a quick look at the chapter and give us the feedback ( under the same\narrangement as in the previous cases ) .\nthanks for looking at our storage model . i shall give you a call within the\nnext few days to update you on our work and developments at enron .\nvince will start his senior year in 6 weeks . he wants to graduate and look\nfor work : he thinks getting an advanced degree in his field makes\nno economic sense . he spent the summer building his\nown computer ( 1000 mhz clock speed ) . i was the unskilled immigrant worker\ntoiling under his management .\ni hope everything is well at home and that your wife ' s company is doing great .\nregards .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.363+0000", "entityId": 8109, "properties": {"text": "Subject: the answer ! ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 08 / 09 / 2000\n03 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnathan mantua on 08 / 09 / 2000 03 : 21 : 37 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : re : pdo\ni ' m not sure what to think , other than we really don ' t have a\ncredible way to determine what will happen with the pdo . one factor\nthat provides insight into the climate outlook for the next few months\nand next few seasons is the expected changes with enso ( for which\nthere is some demonstrated skill in forecasting ) . the latest\nobservations show trends to near - normal enso conditions , with\nsome indication that ocean temperatures will likely be a bit\nwarmer than normal in the tropics . if this is true , i ' d expect a slight\nbias toward el nino - like climate over north america , which would\ntend to go against the continuation of cold phase pdo conditions .\nbest wishes ,\nnate mantua\nmrobert @ ect . enron . com wrote :\n> hi\n>\n> are you thinking we are moving into a cold phase pdo now ? ?\n>\n> thanks\n>\n> mike roberts\n- -\n~ ~ ~ ~ ~ ~ ~ ~ ~ ? nathan mantua email : mantua @ atmos . washington . edu ? ( 206 ) 616 - 5347 fax : ( 206 ) 616 - 5775 ? ? dept of atmospheric sciences , jisao ? university of washington ? box 354235 ? seattle wa 98195 - 4235 ? ? http : / / www . atmos . washington . edu / ~ mantua ? ~ ~ ~ ~ ~ ~ ~ ~ ~\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.368+0000", "entityId": 8110, "properties": {"text": "Subject: pdo index update\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 08 / 09 / 2000\n03 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnathan mantua on 08 / 09 / 2000 03 : 10 : 00 pm\nto : undisclosed - recipients : ;\ncc : ( bcc : mike a roberts / hou / ect )\nsubject : pdo index update\npdo index values are now updated through\njuly 2000 . note that the january and february 2000 values have changed\na bit from the last update , and this is due to changes in the\nreynolds optimally interpolated sst data from which this pdo\nindex is calculated .\nmy next update will be in november .\nyear jan feb mar apr may jun jul\n2000 - 1 . 99 - 0 . 82 0 . 29 0 . 35 - 0 . 05 - 0 . 43 - 0 . 66\nthe full data series is available via the web at url :\nbest wishes ,\nnate mantua\npdo index\nupdated standardized values for the pdo index , derived as the\nleading pc of monthly sst anomalies in the north pacific ocean ,\npoleward of 20 n . the monthly mean global average sst anomalies\nare removed to separate this pattern of variability from any\n\" global warming \" signal that may be present in the data .\nfor more details , see :\nzhang , y . , j . m . wallace , d . s . battisti , 1997 :\nenso - like interdecadal variability : 1900 - 93 . j . climate , 10 , 1004 - 1020 .\nmantua , n . j . and s . r . hare , y . zhang , j . m . wallace , and r . c . francis , 1997 :\na pacific interdecadal climate oscillation with impacts on salmon\nproduction . bulletin of the american meteorological society , 78 ,\npp . 1069 - 1079 .\n( available via the internet at url :\ndata sources for this index are :\nukmo historical sst data set for 1900 - 81 ;\nreynold ' s optimally interpolated sst for january 1982 - latest\nmissing value flag is - 9999\nyear jan feb mar apr may jun jul aug sep\noct nov dec\n1900 0 . 04 1 . 32 0 . 49 0 . 35 0 . 77 0 . 65 0 . 95 0 . 14 - 0 . 24 0 . 23\n- 0 . 44 1 . 19\n1901 0 . 79 - 0 . 12 0 . 35 0 . 61 - 0 . 42 - 0 . 05 - 0 . 60 - 1 . 20 - 0 . 33 0 . 16\n- 0 . 60 - 0 . 14\n1902 0 . 82 1 . 58 0 . 48 1 . 37 1 . 09 0 . 52 1 . 58 1 . 57 0 . 44 0 . 70\n0 . 16 - 1 . 10\n1903 0 . 86 - 0 . 24 - 0 . 22 - 0 . 50 0 . 43 0 . 23 0 . 40 1 . 01 - 0 . 24\n0 . 18 0 . 08 - 0 . 03\n1904 0 . 63 - 0 . 91 - 0 . 71 - 0 . 07 - 0 . 22 - 1 . 53 - 1 . 58 - 0 . 64 0 . 06\n0 . 43 1 . 45 0 . 06\n1905 0 . 73 0 . 91 1 . 31 1 . 59 - 0 . 07 0 . 69 0 . 85 1 . 26 - 0 . 03\n- 0 . 15 1 . 11 - 0 . 50\n1906 0 . 92 1 . 18 0 . 83 0 . 74 0 . 44 1 . 24 0 . 09 - 0 . 53 - 0 . 31\n0 . 08 1 . 69 - 0 . 54\n1907 - 0 . 30 - 0 . 32 - 0 . 19 - 0 . 16 0 . 16 0 . 57 0 . 63 - 0 . 96 - 0 . 23\n0 . 84 0 . 66 0 . 72\n1908 1 . 36 1 . 02 0 . 67 0 . 23 0 . 23 0 . 41 0 . 60 - 1 . 04 - 0 . 16\n- 0 . 41 0 . 47 1 . 16\n1909 0 . 23 1 . 01 0 . 54 0 . 24 - 0 . 39 - 0 . 64 - 0 . 39 - 0 . 68 - 0 . 89 - 0 . 02\n- 0 . 40 - 0 . 01\n1910 - 0 . 25 - 0 . 70 0 . 18 - 0 . 37 - 0 . 06 - 0 . 28 0 . 03 - 0 . 06 0 . 40\n- 0 . 66 0 . 02 0 . 84\n1911 - 1 . 11 0 . 00 - 0 . 78 - 0 . 73 0 . 17 0 . 02 0 . 48 0 . 43 0 . 29 0 . 20\n- 0 . 86 0 . 01\n1912 - 1 . 72 - 0 . 23 - 0 . 04 - 0 . 38 - 0 . 02 0 . 77 1 . 07 - 0 . 84 0 . 94\n0 . 56 0 . 74 0 . 98\n1913 - 0 . 03 0 . 34 0 . 06 - 0 . 92 0 . 66 1 . 43 1 . 06 1 . 29 0 . 73\n0 . 62 0 . 75 0 . 90\n1914 0 . 34 - 0 . 29 0 . 08 1 . 20 0 . 11 0 . 11 - 0 . 21 0 . 11 - 0 . 34\n- 0 . 11 0 . 03 0 . 89\n1915 - 0 . 41 0 . 14 - 1 . 22 1 . 40 0 . 32 0 . 99 1 . 07 0 . 27 - 0 . 05 - 0 . 43\n- 0 . 12 0 . 17\n1916 - 0 . 64 - 0 . 19 - 0 . 11 0 . 35 0 . 42 - 0 . 82 - 0 . 78 - 0 . 73 - 0 . 77 - 0 . 22\n- 0 . 68 - 1 . 94\n1917 - 0 . 79 - 0 . 84 - 0 . 71 - 0 . 34 0 . 82 - 0 . 03 0 . 10 - 0 . 22 - 0 . 40 - 1 . 75\n- 0 . 34 - 0 . 60\n1918 - 1 . 13 - 0 . 66 - 1 . 15 - 0 . 32 - 0 . 33 0 . 07 0 . 98 - 0 . 31 - 0 . 59\n0 . 61 0 . 34 0 . 86\n1919 - 1 . 07 1 . 31 - 0 . 50 0 . 08 0 . 17 - 0 . 71 - 0 . 47 0 . 38 0 . 06 - 0 . 42\n- 0 . 80 0 . 76\n1920 - 1 . 18 0 . 06 - 0 . 78 - 1 . 29 - 0 . 97 - 1 . 30 - 0 . 90 - 2 . 21 - 1 . 28 - 1 . 06\n- 0 . 26 0 . 29\n1921 - 0 . 66 - 0 . 61 - 0 . 01 - 0 . 93 - 0 . 42 0 . 40 - 0 . 58 - 0 . 69 - 0 . 78\n- 0 . 23 1 . 92 1 . 42\n1922 1 . 05 - 0 . 85 0 . 08 0 . 43 - 0 . 19 - 1 . 04 - 0 . 82 - 0 . 93 - 0 . 81 0 . 84\n- 0 . 60 0 . 48\n1923 0 . 75 - 0 . 04 0 . 49 0 . 99 - 0 . 20 0 . 68 1 . 16 0 . 84 - 0 . 24\n1 . 10 0 . 62 - 0 . 36\n1924 1 . 29 0 . 73 1 . 13 - 0 . 02 0 . 36 0 . 75 - 0 . 55 - 0 . 67 - 0 . 48\n- 1 . 25 0 . 24 0 . 11\n1925 - 0 . 05 - 0 . 14 0 . 20 0 . 86 0 . 79 - 1 . 08 - 0 . 06 - 0 . 86 0 . 52\n0 . 04 0 . 88 1 . 19\n1926 0 . 30 0 . 98 - 0 . 50 2 . 10 1 . 43 2 . 03 1 . 05 1 . 64 1 . 18\n1 . 65 1 . 00 1 . 06\n1927 1 . 07 1 . 73 0 . 15 - 0 . 18 0 . 30 0 . 69 - 0 . 31 - 0 . 73 - 0 . 41 - 0 . 62\n- 0 . 07 0 . 07\n1928 0 . 96 0 . 79 0 . 52 0 . 81 0 . 66 0 . 15 0 . 30 - 0 . 72 - 1 . 41\n- 1 . 31 0 . 14 0 . 98\n1929 0 . 97 0 . 52 0 . 50 0 . 55 1 . 07 0 . 50 - 0 . 06 - 0 . 69 0 . 45\n- 0 . 21 1 . 24 - 0 . 03\n1930 0 . 97 - 1 . 06 - 0 . 43 - 0 . 70 0 . 06 0 . 58 - 0 . 45 - 0 . 53 - 0 . 20 - 0 . 38\n- 0 . 31 1 . 20\n1931 0 . 08 1 . 56 1 . 13 1 . 28 1 . 66 0 . 39 1 . 49 0 . 02 - 0 . 01\n- 0 . 17 0 . 34 1 . 09\n1932 - 0 . 26 - 0 . 58 0 . 51 1 . 15 0 . 64 0 . 10 - 0 . 12 - 0 . 14 - 0 . 40 - 0 . 29\n- 0 . 88 0 . 02\n1933 0 . 29 0 . 02 0 . 15 - 0 . 05 - 0 . 50 - 0 . 68 - 1 . 81 - 1 . 56 - 2 . 28\n- 1 . 19 0 . 55 - 1 . 10\n1934 0 . 17 0 . 68 1 . 34 1 . 63 1 . 23 0 . 51 0 . 44 1 . 54 1 . 25\n2 . 10 1 . 63 1 . 67\n1935 1 . 01 0 . 79 - 0 . 11 1 . 10 0 . 99 1 . 39 0 . 68 0 . 63 0 . 98\n0 . 21 0 . 13 1 . 78\n1936 1 . 79 1 . 75 1 . 36 1 . 32 1 . 83 2 . 37 2 . 57 1 . 71 0 . 04\n2 . 10 2 . 65 1 . 28\n1937 0 . 00 - 0 . 49 0 . 38 0 . 20 0 . 53 1 . 75 0 . 11 - 0 . 35 0 . 63 0 . 76\n- 0 . 18 0 . 55\n1938 0 . 50 0 . 02 0 . 24 0 . 27 - 0 . 25 - 0 . 20 - 0 . 21 - 0 . 45 - 0 . 01\n0 . 07 0 . 48 1 . 40\n1939 1 . 36 0 . 07 - 0 . 39 0 . 45 0 . 98 1 . 04 - 0 . 21 - 0 . 74 - 1 . 10 - 1 . 31\n- 0 . 88 1 . 51\n1940 2 . 03 1 . 74 1 . 89 2 . 37 2 . 32 2 . 43 2 . 12 1 . 40 1 . 10\n1 . 19 0 . 68 1 . 96\n1941 2 . 14 2 . 07 2 . 41 1 . 89 2 . 25 3 . 01 2 . 33 3 . 31 1 . 99\n1 . 22 0 . 40 0 . 91\n1942 1 . 01 0 . 79 0 . 29 0 . 79 0 . 84 1 . 19 0 . 12 0 . 44 0 . 68 0 . 54\n- 0 . 10 - 1 . 00\n1943 - 0 . 18 0 . 02 0 . 26 1 . 08 0 . 43 0 . 68 - 0 . 36 - 0 . 90 - 0 . 49\n- 0 . 04 0 . 29 0 . 58\n1944 0 . 18 0 . 17 0 . 08 0 . 72 - 0 . 35 - 0 . 98 - 0 . 40 - 0 . 51 - 0 . 56\n- 0 . 40 0 . 33 0 . 20\n1945 - 1 . 02 0 . 72 - 0 . 42 - 0 . 40 - 0 . 07 0 . 56 1 . 02 0 . 18 - 0 . 27 0 . 10\n- 1 . 94 - 0 . 74\n1946 - 0 . 91 - 0 . 32 - 0 . 41 - 0 . 78 0 . 50 - 0 . 86 - 0 . 84 - 0 . 36 - 0 . 22 - 0 . 36\n- 1 . 48 - 0 . 96\n1947 - 0 . 73 - 0 . 29 1 . 17 0 . 70 0 . 37 1 . 36 0 . 16 0 . 30 0 . 58 0 . 85\n- 0 . 14 1 . 67\n1948 - 0 . 11 - 0 . 74 - 0 . 03 - 1 . 33 - 0 . 23 0 . 08 - 0 . 92 - 1 . 56 - 1 . 74 - 1 . 32\n- 0 . 89 - 1 . 70\n1949 - 2 . 01 - 3 . 60 - 1 . 00 - 0 . 53 - 1 . 07 - 0 . 70 - 0 . 56 - 1 . 30 - 0 . 93 - 1 . 41\n- 0 . 83 - 0 . 80\n1950 - 2 . 13 - 2 . 91 - 1 . 13 - 1 . 20 - 2 . 23 - 1 . 77 - 2 . 93 - 0 . 70 - 2 . 14 - 1 . 36\n- 2 . 46 - 0 . 76\n1951 - 1 . 54 - 1 . 06 - 1 . 90 - 0 . 36 - 0 . 25 - 1 . 09 0 . 70 - 1 . 37 - 0 . 08 - 0 . 32\n- 0 . 28 - 1 . 68\n1952 - 2 . 01 - 0 . 46 - 0 . 63 - 1 . 05 - 1 . 00 - 1 . 43 - 1 . 25 - 0 . 60 - 0 . 89 - 0 . 35\n- 0 . 76 0 . 04\n1953 - 0 . 57 - 0 . 07 - 1 . 12 0 . 05 0 . 43 0 . 29 0 . 74 0 . 05 - 0 . 63 - 1 . 09\n- 0 . 03 0 . 07\n1954 - 1 . 32 - 1 . 61 - 0 . 52 - 1 . 33 0 . 01 0 . 97 0 . 43 0 . 08 - 0 . 94\n0 . 52 0 . 72 - 0 . 50\n1955 0 . 20 - 1 . 52 - 1 . 26 - 1 . 97 - 1 . 21 - 2 . 44 - 2 . 35 - 2 . 25 - 1 . 95 - 2 . 80\n- 3 . 08 - 2 . 75\n1956 - 2 . 48 - 2 . 74 - 2 . 56 - 2 . 17 - 1 . 41 - 1 . 70 - 1 . 03 - 1 . 16 - 0 . 71 - 2 . 30\n- 2 . 11 - 1 . 28\n1957 - 1 . 82 - 0 . 68 0 . 03 - 0 . 58 0 . 57 1 . 76 0 . 72 0 . 51 1 . 59 1 . 50\n- 0 . 32 - 0 . 55\n1958 0 . 25 0 . 62 0 . 25 1 . 06 1 . 28 1 . 33 0 . 89 1 . 06 0 . 29 0 . 01\n- 0 . 18 0 . 86\n1959 0 . 69 - 0 . 43 - 0 . 95 - 0 . 02 0 . 23 0 . 44 - 0 . 50 - 0 . 62 - 0 . 85\n0 . 52 1 . 11 0 . 06\n1960 0 . 30 0 . 52 - 0 . 21 0 . 09 0 . 91 0 . 64 - 0 . 27 - 0 . 38 - 0 . 94 0 . 09\n- 0 . 23 0 . 17\n1961 1 . 18 0 . 43 0 . 09 0 . 34 - 0 . 06 - 0 . 61 - 1 . 22 - 1 . 13 - 2 . 01 - 2 . 28\n- 1 . 85 - 2 . 69\n1962 - 1 . 29 - 1 . 15 - 1 . 42 - 0 . 80 - 1 . 22 - 1 . 62 - 1 . 46 - 0 . 48 - 1 . 58 - 1 . 55\n- 0 . 37 - 0 . 96\n1963 - 0 . 33 - 0 . 16 - 0 . 54 - 0 . 41 - 0 . 65 - 0 . 88 - 1 . 00 - 1 . 03 0 . 45 - 0 . 52\n- 2 . 08 - 1 . 08\n1964 0 . 01 - 0 . 21 - 0 . 87 - 1 . 03 - 1 . 91 - 0 . 32 - 0 . 51 - 1 . 03 - 0 . 68 - 0 . 37\n- 0 . 80 - 1 . 52\n1965 - 1 . 24 - 1 . 16 0 . 04 0 . 62 - 0 . 66 - 0 . 80 - 0 . 47 0 . 20 0 . 59 - 0 . 36\n- 0 . 59 0 . 06\n1966 - 0 . 82 - 0 . 03 - 1 . 29 0 . 06 - 0 . 53 0 . 16 0 . 26 - 0 . 35 - 0 . 33 - 1 . 17\n- 1 . 15 - 0 . 32\n1967 - 0 . 20 - 0 . 18 - 1 . 20 - 0 . 89 - 1 . 24 - 1 . 16 - 0 . 89 - 1 . 24 - 0 . 72 - 0 . 64\n- 0 . 05 - 0 . 40\n1968 - 0 . 95 - 0 . 40 - 0 . 31 - 1 . 03 - 0 . 53 - 0 . 35 0 . 53 0 . 19 0 . 06 - 0 . 34\n- 0 . 44 - 1 . 27\n1969 - 1 . 26 - 0 . 95 - 0 . 50 - 0 . 44 - 0 . 20 0 . 89 0 . 10 - 0 . 81 - 0 . 66\n1 . 12 0 . 15 1 . 38\n1970 0 . 61 0 . 43 1 . 33 0 . 43 - 0 . 49 0 . 06 - 0 . 68 - 1 . 63 - 1 . 67 - 1 . 39\n- 0 . 80 - 0 . 97\n1971 - 1 . 90 - 1 . 74 - 1 . 68 - 1 . 59 - 1 . 55 - 1 . 55 - 2 . 20 - 0 . 15 0 . 21 - 0 . 22\n- 1 . 25 - 1 . 87\n1972 - 1 . 99 - 1 . 83 - 2 . 09 - 1 . 65 - 1 . 57 - 1 . 87 - 0 . 83 0 . 25 0 . 17\n0 . 11 0 . 57 - 0 . 33\n1973 - 0 . 46 - 0 . 61 - 0 . 50 - 0 . 69 - 0 . 76 - 0 . 97 - 0 . 57 - 1 . 14 - 0 . 51 - 0 . 87\n- 1 . 81 - 0 . 76\n1974 - 1 . 22 - 1 . 65 - 0 . 90 - 0 . 52 - 0 . 28 - 0 . 31 - 0 . 08 0 . 27 0 . 44\n- 0 . 10 0 . 43 - 0 . 12\n1975 - 0 . 84 - 0 . 71 - 0 . 51 - 1 . 30 - 1 . 02 - 1 . 16 - 0 . 40 - 1 . 07 - 1 . 23 - 1 . 29\n- 2 . 08 - 1 . 61\n1976 - 1 . 14 - 1 . 85 - 0 . 96 - 0 . 89 - 0 . 68 - 0 . 67 0 . 61 1 . 28 0 . 82\n1 . 11 1 . 25 1 . 22\n1977 1 . 65 1 . 11 0 . 72 0 . 30 0 . 31 0 . 42 0 . 19 0 . 64 - 0 . 55 - 0 . 61\n- 0 . 72 - 0 . 69\n1978 0 . 34 1 . 45 1 . 34 1 . 29 0 . 90 0 . 15 - 1 . 24 - 0 . 56 - 0 . 44 0 . 10\n- 0 . 07 - 0 . 43\n1979 - 0 . 58 - 1 . 33 0 . 30 0 . 89 1 . 09 0 . 17 0 . 84 0 . 52 1 . 00\n1 . 06 0 . 48 - 0 . 42\n1980 - 0 . 11 1 . 32 1 . 09 1 . 49 1 . 20 - 0 . 22 0 . 23 0 . 51 0 . 10\n1 . 35 0 . 37 - 0 . 10\n1981 0 . 59 1 . 46 0 . 99 1 . 45 1 . 75 1 . 69 0 . 84 0 . 18 0 . 42\n0 . 18 0 . 80 0 . 67\n1982 0 . 34 0 . 20 0 . 19 - 0 . 19 - 0 . 58 - 0 . 78 0 . 58 0 . 39 0 . 84 0 . 37\n- 0 . 25 0 . 26\n1983 0 . 56 1 . 14 2 . 11 1 . 87 1 . 80 2 . 36 3 . 51 1 . 85 0 . 91\n0 . 96 1 . 02 1 . 69\n1984 1 . 50 1 . 21 1 . 77 1 . 52 1 . 30 0 . 18 - 0 . 18 - 0 . 03 0 . 67\n0 . 58 0 . 71 0 . 82\n1985 1 . 27 0 . 94 0 . 57 0 . 19 0 . 00 0 . 18 1 . 07 0 . 81 0 . 44 0 . 29\n- 0 . 75 0 . 38\n1986 1 . 12 1 . 61 2 . 18 1 . 55 1 . 16 0 . 89 1 . 38 0 . 22 0 . 22\n1 . 00 1 . 77 1 . 77\n1987 1 . 88 1 . 75 2 . 10 2 . 16 1 . 85 0 . 73 2 . 01 2 . 83 2 . 44\n1 . 36 1 . 47 1 . 27\n1988 0 . 93 1 . 24 1 . 42 0 . 94 1 . 20 0 . 74 0 . 64 0 . 19 - 0 . 37 - 0 . 10\n- 0 . 02 - 0 . 43\n1989 - 0 . 95 - 1 . 02 - 0 . 83 - 0 . 32 0 . 47 0 . 36 0 . 83 0 . 09 0 . 05 - 0 . 12\n- 0 . 50 - 0 . 21\n1990 - 0 . 30 - 0 . 65 - 0 . 62 0 . 27 0 . 44 0 . 44 0 . 27 0 . 11 0 . 38 - 0 . 69\n- 1 . 69 - 2 . 23\n1991 - 2 . 02 - 1 . 19 - 0 . 74 - 1 . 01 - 0 . 51 - 1 . 47 - 0 . 10 0 . 36 0 . 65\n0 . 49 0 . 42 0 . 09\n1992 0 . 05 0 . 31 0 . 67 0 . 75 1 . 54 1 . 26 1 . 90 1 . 44 0 . 83\n0 . 93 0 . 93 0 . 53\n1993 0 . 05 0 . 19 0 . 76 1 . 21 2 . 13 2 . 34 2 . 35 2 . 69 1 . 56\n1 . 41 1 . 24 1 . 07\n1994 1 . 21 0 . 59 0 . 80 1 . 05 1 . 23 0 . 46 0 . 06 - 0 . 79 - 1 . 36 - 1 . 32\n- 1 . 96 - 1 . 79\n1995 - 0 . 49 0 . 46 0 . 75 0 . 83 1 . 46 1 . 27 1 . 71 0 . 21 1 . 16 0 . 47\n- 0 . 28 0 . 16\n1996 0 . 59 0 . 75 1 . 01 1 . 46 2 . 18 1 . 10 0 . 77 - 0 . 14 0 . 24\n- 0 . 33 0 . 09 - 0 . 03\n1997 0 . 23 0 . 28 0 . 65 1 . 05 1 . 83 2 . 76 2 . 35 2 . 79 2 . 19\n1 . 61 1 . 12 0 . 67\n1998 0 . 83 1 . 56 2 . 01 1 . 27 0 . 70 0 . 40 - 0 . 04 - 0 . 22 - 1 . 21 - 1 . 39\n- 0 . 52 - 0 . 44\n1999 - 0 . 32 - 0 . 66 - 0 . 33 - 0 . 41 - 0 . 68 - 1 . 30 - 0 . 66 - 0 . 96 - 1 . 53 - 2 . 23\n- 2 . 05 - 1 . 63\n2000 * - 1 . 99 - 0 . 82 0 . 29 0 . 35 - 0 . 05 - 0 . 43 - 0 . 66 - 999 - 999\n- 999 - 999 - 999\n* note that monthly values in the last year of the data\nset are subject to minor changes due to updated values\nin the reynold ' s optimally interpolated sst data used\nin creating this index .\nurl : ftp : / / ftp . atmos . washington . edu / mantua / pnw _ impacts / indices / pdo . latest\nif you have any questions about this time series , contact\nnathan mantua at : mantua @ atmos . washington . edu\n- pdo _ latest . gif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.373+0000", "entityId": 8111, "properties": {"text": "Subject: pdo ' s in the media\nmore about the pacific decadal oscillation . . .\nq . will we have a drought in southern california ?\na . if the pacific decadal oscillation has switched we are likely to have\n20 - 30 years with lower rainfall that\nwe have had since the late ' 70 ' s . we will still have winter rains , but\nthe number of really wet years is likely\nto decrease .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.378+0000", "entityId": 8112, "properties": {"text": "Subject: re :\ncraig ,\nthanks for the feedback . elena is doing really great and i think that she\nwill be\na great enron ' s asset .\nvince\ncraig breslau\n08 / 09 / 2000 09 : 19 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject :\ni wanted to give you some feedback . elena chilkina has gone way above the\ncall of duty to help me on a very important research project . i am trying to\nconduct some research on the global fuels market for jeff shankman . when i\nmentioned this to elena , she was extraordinarily helpful in helping me\ncompile some very useful information on very short notice . she was able to\nquickly define the scope of the project and gather some pertinent\ninformation . because this was not one of her regular assignments , she put in\nmany extra hours to help us out on this project .\ni just wanted to let you know about a job well done .\nregards ,\ncraig", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.383+0000", "entityId": 8113, "properties": {"text": "Subject: 3 hours vacation\nvince :\nif it is all right i would like to take a couple hours vacation in the\nmorning . my\ngrandson starts \" middle school \" ( 6 th grade ) and he wants me to take him .\ni should be in by 10 : 00 am .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.392+0000", "entityId": 8114, "properties": {"text": "Subject: re : houston research opportunity\ntara :\nthanks for the update . it seems anjam is playing hard ball a little . my\ninitial reaction is to be inflexible because it is a good offer , but on\nsecond thoughts , could you please give me an idea of what is meant by a\n12 - month assignment when you have a moment ? compensation , benefits ,\nresponsibilities , career path implications , etc .\nmany thanks !\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.399+0000", "entityId": 8115, "properties": {"text": "Subject: re :\ncraig -\nthanks for the feedback .\ni ' ve received similar reports from other research customers on various\nnon - recurring and on - going projects elena has been able to help out on .\nthe most recent member of a long line of rice mba candidates who have \" made a\ndifference \" in our research efforts , elena will be staying with us throughout\nthis next ( her final ) year .\nshe ' ll be working the morning shift .\nplease let us know if she , or any other member of our group can assist you in\nany way .\n- mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.405+0000", "entityId": 8116, "properties": {"text": "Subject: i wanted to give you some feedback . elena chilkina has gone way above the\ncall of duty to help me on a very important research project . i am trying to\nconduct some research on the global fuels market for jeff shankman . when i\nmentioned this to elena , she was extraordinarily helpful in helping me\ncompile some very useful information on very short notice . she was able to\nquickly define the scope of the project and gather some pertinent\ninformation . because this was not one of her regular assignments , she put in\nmany extra hours to help us out on this project .\ni just wanted to let you know about a job well done .\nregards ,\ncraig", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.410+0000", "entityId": 8117, "properties": {"text": "Subject: risk bucketing for p / l\nken and greg ,\nwhat we have been doing is absoutely fine under the assumption that the market\nconditions move relatively small ( where taylor series has fast convergence ) .\nhowever , we could run into troubles when the market has a big move .\nin order to have a error proof bucketing , we can use the following\nmethod ( finite - difference ) , let me\nknow what you guys think how to implement it to the transport book .\nsensitivity to risk parameters , or p / l attribution by risk bucket :\ntoday ' s premium = premium based on today ' s curves\nlast day ' s premium = premium based on last day ' s curves\nchange due to\ndeliverycurveshift = [ premium based on today ' s delivery price and last day ' s\nreceipt price , volatilities , interest rate , last ' s time to expiration etc ] -\nlast day ' s premium - today ' s change due to gammal\nreceiptcurveshift = [ premium based on today ' s receipt price and last day ' s\neverything else ] - last day ' s premium - today ' s change due to gamma 2\nvegal = [ premium based on today ' s delivery volatility and last day ' s\neverything else ] - last day ' s premium\nvega 2 = as above for gas volatility\nrho = as above for interest rate\neta = as above for correlation\ntheta = { [ premium based on today ' s days to expiration and last day ' s\neverything else ] - drift - last day ' s premium } / 365 . 25\n[ this is a daily theta . the sprdopt function returns an annualised theta . ]\ngammal = 0 . 5 last day ' s gammal ' * priceshiftl 2 ? ? gamma 2 = 0 . 5 last day ' s gamma 2 ' * priceshift 2 2\ndrift = [ ( exp ( last day ' s interest rate * ( today - last days ) / 365 . 25 ) ) - 1 ] *\nlast day ' s premium\npriceshiftl = today ' s delivery price - last day ' s delivery price\npriceshift 2 = today ' s receipt price - last day ' s receipt price\ngammal ' = theoretical gammal , i . e . gamma from spread option\ngamma 2 ' = theoretical gamma 2 , i . e . gamma from spread option calculation\nliquidation = premium of option which expired the day before , i . e . intrinsic\nvalue .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.415+0000", "entityId": 8118, "properties": {"text": "Subject: restricted list\nneither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\n3 tec energy corp . tten\nactive power acpw\nadrian resources adrrf\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncostilla energy cose\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nesenjay exploration esnj\nfirstworld communications inc . fwis\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nquanta services inc . pwr\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nsaxon petroleum , inc . sxn cn\nsouthwest royalties swroy\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntetonka drilling tdi\ntranscoastal marine services , inc . tcms\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in\nthe\npolicy for the benefit of any party other than ena / rac / egf , whether for\nhis / her own account or the account of any third party , where such position\nrelates to ( i ) any commodity , financial instrument , security , equity ,\nfinancial asset or liability which falls within such employee ' s\nresponsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.420+0000", "entityId": 8119, "properties": {"text": "Subject: re : research and development charges to gpg\nvera ,\nwe shall talk to the accounting group about the correction .\nvince\n08 / 09 / 2000 03 : 26 pm\nvera apodaca @ enron\nvera apodaca @ enron\nvera apodaca @ enron\n08 / 09 / 2000 03 : 26 pm\n08 / 09 / 2000 03 : 26 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : research and development charges to gpg\nper mail dated june 15 from kim watson , there was supposed to have occurred\na true - up of $ 274 . 7 in july for the fist six months of 2000 . reviewing july\nactuals , i was not able to locate this entry . would you pls let me know\nwhether this entry was made , if not , when do you intend to process it .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.425+0000", "entityId": 8120, "properties": {"text": "Subject: re : follow up on houston opportunity\nanjam ,\ni have another meeting . please , talk to grant .\ni shall catch him in the morning to review\nwhere we stand .\nvince\nenron capital & trade resources corp . - europe\nfrom : anjam ahmad 08 / 10 / 2000 08 : 41 am\nto : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\ncc :\nsubject : follow up on houston opportunity\nhi vince & grant ,\ni was wondering if you would have some time to discuss the opportunity\ntomorrow morning ( friday ) ? i am free from 10 am to 12 pm houston time .\nthanks ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.429+0000", "entityId": 8121, "properties": {"text": "Subject: yesterday\ni enjoyed meeting you both yesterday to discuss my sincere interest in the\nresearch group .\nsince many of the rotations for analysts are pre - determined , i think it is\nbest for me to wait until my candidacy\nfor the analyst program is finalized .\nthank you for your interest in my skill - set . i am enrolled in the cfa\nprogram , have completed numerous futures / options\ncourses in undergraduate school , and am confident that my profile will be\nwell - received after completing your in - house\nproject which will be utilized to test certain skills .\ni ' ll talk to you soon after my discussions with the analyst program .\nregards ,\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.434+0000", "entityId": 8122, "properties": {"text": "Subject: research dept . move\nhello everyone :\nattached is the churn relocation request for some office exchanges within\nthe research group on the 19 th floor . i have grouped them in sets of two\nwhich are the exchanges .\nthis is a very rush order . we would appreciate your getting to this as\nsoon as possible - the 15 th of august would be great , if possible .\nlet me know if there is something that you do not understand . thanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.438+0000", "entityId": 8123, "properties": {"text": "Subject: re : follow up on houston opportunity\nanjam :\n11 : 30 works for me . give me a call .\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.443+0000", "entityId": 8124, "properties": {"text": "Subject: gas transportation meeting - 8 / 16 / 00\nhello everyone :\na meeting has been scheduled between the addressees for wednesday ,\naugust 16 th at 4 : 00 pm in ebl 938 .\nif you have any questions , please let me know .\nregards ,\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.447+0000", "entityId": 8125, "properties": {"text": "Subject: e - mail addresses of nevrl video conference participants\nfollowing are email addresses of all who participated in the video conference\njuly 27 th for future reference .\nenron corp . arthur andersen\nsteve kean - skean @ enron . com\nvictor . a . burk @ us . arthurandersen . com\nvince kaminski - vkamins @ enron . com\nangela . a . minas @ us . arthurandersen . com\namy oberg - aoberg @ enron . com\nmarie hejka - mhejka @ enron . com\nedward . j . giniat @ us . arthurandersen . com\nbarry . d . libert @ us . arthurandersen . com\njames . w . petrie . jr @ us . arthurandersen . com\ngeorge . e . kronman @ us . arthurandersen . com\nallan . roberts @ arthurandersen . com\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.452+0000", "entityId": 8126, "properties": {"text": "Subject: 2000 chairman ' s award\neveryday heroes are all around us at enron , living our core values of\nrespect , integrity , communication and excellence in everything they do . some\nof these heroes make a big splash while others just quietly make a difference\nin the workplace around them . either way , these special individuals deserve\nto be recognized with a nomination for the 2000 chairman ' s award .\nas there is more than just one employee living the values at enron , this\naward program will honor 10 employees as members of the chairman ' s\nroundtable . from that group , the one individual most embodying our values\nwill be presented with the chairman ' s award at the management conference in\nsan antonio in november .\nthe beauty of this award program is that it is completely employee - driven\nfrom beginning to end . from your nominations , an international employee\ncommittee will select the chairman ' s roundtable and eventually , the\nchairman ' s award winner . your role of nominating our everyday heroes is\nextremely vital to the program ' s success . if someone has made a positive\nimpression on you , please take the time to complete a nomination form and\nsend it to charla reese by october 1 , 2000 . you may click here for a\nprintable form : http : / / home . enron . com / announce / chairman _ nom / form 3 . doc\nfor more information on the chairman ' s award , including details on last\nyear ' s roundtable members and previous winners , repit suliyono and bobbye\nbrown , please click here : http : / / home . enron . com / announce / chairman _ nom\nagain , this is a very special award at enron and we sincerely thank you for\nyour participation .\nken , jeff and joe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.457+0000", "entityId": 8127, "properties": {"text": "Subject: chairman ' s award - supervisor announcement\nhello to each of you . i would like to let you know that i will be\nfacilitating the 2000 chairman ' s award program , a vision & values initiative\ndesigned to recognize those employees who daily embody enron ' s values of\nrespect , integrity , communication and excellence . this is an annual ,\nemployee - driven award which encourages employees to nominate their everyday\nheroes .\na critical component of the award process , and one in which ken lay has given\nhis full support , is the employee selection committee . this year ' s selection\ncommittee is made up of a diverse representation from our workforce both in\nthe us and around the world . these individuals were chosen as last year ' s\nchairman ' s roundtable and have been invited to be part of this year ' s\nemployee selection committee . their infallible enthusiasm for enron ' s vision\n& values will support the seamless transition from recognized winners to\naward decision - makers which is necessary to sustain the spirit of the award .\nyou are being notified because one of your employees is on this important\ncommittee . the time commitment will be primarily during the first two weeks\nof october when we will meet either in person or via video / phone\nconferencing to review the nominations and select the winners .\ni hope you will congratulate and support them as this is a special honor to\nbe asked to serve on the employee selection committee . if you have any\nquestions at any time , please feel free to contact me via email or phone .\nwarm regards ,\ncharla reese\n713 . 853 . 5202\nmembers of the 2000 employee selection committee :\nbilli aherns - omaha , ne\nbobbye brown - portland , or\nkaren campos - houston , tx\njaiprakash desai - mumbai , india\ngary douthwaite - teeside , england\ndonna johnson - portland , or\njanis hansen - portland , or\ngene lauritsen - beatrice , ne\ndoug mcneilly - houston , tx\nkevin moore - houston , tx\nmason morris - jenkintown , pa\ncraig sutter - houston , tx\nsue tihista - mandan , nd", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.463+0000", "entityId": 8128, "properties": {"text": "Subject: re : research and development charges to gpg\nvera :\nin studying the below information , if i am understanding it correctly , only\n$ 199 . 7 was to be reversed back to the research group and it should\nhave occurred in july . do you not notice this entry either ?\nplease let me know .\nthanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 11 / 2000\n10 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 10 / 2000 02 : 25 pm\nto : vera apodaca / et & s / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect\nsubject : re : research and development charges to gpg\nvera ,\nwe shall talk to the accounting group about the correction .\nvince\n08 / 09 / 2000 03 : 26 pm\nvera apodaca @ enron\nvera apodaca @ enron\nvera apodaca @ enron\n08 / 09 / 2000 03 : 26 pm\n08 / 09 / 2000 03 : 26 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : research and development charges to gpg\nper mail dated june 15 from kim watson , there was supposed to have occurred\na true - up of $ 274 . 7 in july for the fist six months of 2000 . reviewing july\nactuals , i was not able to locate this entry . would you pls let me know\nwhether this entry was made , if not , when do you intend to process it .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.472+0000", "entityId": 8129, "properties": {"text": "Subject: re : houston research opportunity : anjam\nvince :\nhere is an explanation of what a 12 month package for anjam actually entails .\nit seems to me that anjam ' s interest in getting an expat package is mostly\nabout money . based on the uk hr ' s read of anjam , they think he will jump .\ni have a telephone conference with anjam at 11 : 00 . my stance will be 110 is\nfirm . we will help with the transition via a one time settlement : flat\nrental issues , 500 lbs of air shipping for moving furniture , maybe one trip\nback to uk a year , but no more . re : his concerns of having a place in london\nshould he want to return , i will say that vince would be far better at\nfinding a good spot for you than any hr type , so that part of the \" package \"\npromise is not particularly important .\nany guidelines for me to follow , coach ?\nregards ,\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 08 / 11 / 2000 08 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntara rozen\n08 / 11 / 2000 05 : 44 am\nto : grant masson / hou / ect @ ect\ncc : melanie doyle / lon / ect @ ect , jane allen / hou / ect @ ect\nsubject : re : houston research opportunity\ngrant\nnot sure if i told you that i work mon , wed , friday hence the delay in\nresponding . sorry if i forgot to tell you ! another contact name in my absence\nwho will be able to assist is jane allen in houston ( cc ' ed above ) .\nthree main reasons we try to stay away from assignments to the us for this\ntype / level of transfer are : 1 ) cost 2 ) equitability among other peers\n3 ) difficulty in transferring employee to local package from assignment\npackage . however , if this is truly a 12 month assignment with no intention of\nextension , we would normally do the following :\n12 month assignment\nlondon base , car allowance , and benefits and national insurance contribution\ncosts ( currently 12 . 2 % of all comp compared with 1 . 45 % of all comp plus 6 . 2 %\nup to max of $ 76 k of employers us contribution )\nhousing costs in houston paid if maintaining housing in the uk ( usually up to\n$ 1800 per month for single )\nutility costs if maintaining a house in the uk - up to $ 100 per month\nhome leave - two economy trips per year is standard\ntransportation to / from assignment - economy class\ntransportation in houston - we normally give this - up to $ 40 per day for\nrental car in addition to the person ' s car allowance as they normally do not\nrequire a car in the uk and take the car allowance as a cash benefit whereas\nthey will require a car in houston .\nshipment of goods - 500 lbs air\ntax assistance\ndisturbance allowance - normally pay approx $ 1000\nso , in terms of costs if you just compare a local us salary of manager on\n$ 100 k to a local uk manager on o 68 k the us total cost is approx $ 120 k . the uk\ncost is approx $ 230 k . then if you add the above costs to the assignment , you\nwill see an even greater increase in cost compared with the local peers , ie\napprox $ 280 k compared with $ 120 k . we do have the ability to change the above\nin any way as there is no set policy ; however , anjam has already brought up\nother people ' s assignments and i have a feeling he will do his best to find\nout what everyone else is receiving . if we make clear , though , that we are\nkeeping on uk payroll but not providing any assignment type allowances just\nin order for him to maintain his pension contributions for the year and at\nwhich point a decision will need to be made ( returns or moves to local us ) ,\nthen we may be able keep more consistency with your group while maintaining\nmore reasonable costs . not sure how you want to play this , though .\neven if he does go on assignment rather than transfer locally , there is still\nthe issue of whether or not a suitable job will be here at the end of the 12\nmonths . we will always do our best to find suitable postions but we cannot\nguarantee it . if he transfers to a local us contract , enron europe ' s\nresponsibility of finding suitable employment is pretty much nil .\ni hope this has made things clearer rather than more complicated . i honestly\nfeel that ajnam will absolutely not take this position if it is not on an\nassignment basis . he made it pretty clear that unless he could stay on uk\npayroll for 12 months , he would not transfer .\ncall me if you would like to discuss .\ntara - x 36763\nenron capital & trade resources corp .\nfrom : grant masson 09 / 08 / 2000 20 : 48\nto : tara rozen / lon / ect @ ect\ncc :\nsubject : re : houston research opportunity\ntara :\nthanks for the update . it seems anjam is playing hard ball a little . my\ninitial reaction is to be inflexible because it is a good offer , but on\nsecond thoughts , could you please give me an idea of what is meant by a\n12 - month assignment when you have a moment ? compensation , benefits ,\nresponsibilities , career path implications , etc .\nmany thanks !\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.478+0000", "entityId": 8130, "properties": {"text": "Subject: re : mid - year 2000 performance evaluation due\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 11 / 2000\n07 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 11 / 2000 07 : 49 am\nto : \" perfmgmt @ enron . com \" @ enron\ncc :\nsubject : re : mid - year 2000 performance evaluation due\ni haven ' t received yet the final performance evaluation results .\nthe usual practice is to defer the reviews till the final summary rankings\nare available .\nplease , let me know when i can expect it form the hr .\nthanks .\nvince kaminski\n\" perfmgmt @ enron . com \" < perfmgmt on 08 / 10 / 2000 05 : 16 : 14 pm\nto : vkamins @ enron . com\ncc :\nsubject : mid - year 2000 performance evaluation due\nsep 01 , 2000\nthe above date is when the mid - year 2000 performance evaluation forms for\ndirectors and below are due in human resources .\nif you have not already done so , supervisors should begin the process of\ngiving feedback to their employees . the evaluation forms used to provide\nfeedback to the employee can be obtained via the performance management\nsystem ( pep ) .\nto download the evaluation forms from pep , please follow the steps below :\n1 . log into pep at http : / / pep . enron . com .\n2 . under supervisor services , click supervisor evaluation forms .\n3 . right - click on each employee and choose ' save target as . . . ' or ' save link\nas . . . '\n4 . select your own personal directory , choose a file name to save to and\nclick ' save ' .\n5 . repeat for each employee .\n6 . now you can complete your evaluation forms from your personal directory\nand will not have to access pep to finalize the form .\nupon completion , please forward the signed evaluation forms to your hr\nrepresentative no later than friday , september lst 2000 .\nif you have any questions , please contact the pep help desk at the following\nnumbers :\nin the u . s . : 1 - 713 - 853 - 4777 , option 4\nin europe : 44 - 207 - 783 - 4040 , option 4\nin canada : 1 - 403 - 974 - 6724 ( canada employees only )\nor e - mail your questions to : perfmgmt @ enron . com\nyour employees that should receive mid - year evaluations are listed below :\ncrenshaw , shirley j\nganjoo , shalesh\ngibner , peyton s\nkollaros , alexios\nkrishnarao , pinnamaneni v\nmasson , grant s\nraymond , maureen j\nroberts , michael a\nsergeev , mikhail\nshanbhogue , vasant\nvernon , clayton j", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.482+0000", "entityId": 8131, "properties": {"text": "Subject: re : mscf speaker series\nkristin gandy is following up on this . she ' s the new carneige mellon\nrecruiter . sorry about the delay .\nalison\nvince j kaminski\n08 / 11 / 2000 03 : 59 pm\nto : mary alison bailey / hou / ect @ ect\ncc :\nsubject : re : mscf speaker series\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 11 / 2000\n04 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" pierre - philippe ste - marie \" on 08 / 11 / 2000 03 : 39 : 39 pm\nto :\ncc :\nsubject : re : mscf speaker series\nthx ,\nwe are very anxious to hear her answer\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\npstemarie . homestead . com\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : friday , august 11 , 2000 10 : 55 am\nsubject : re : mscf speaker series\n>\n> pierre - philippe ,\n>\n> i have contacted allison bailey to ask her to move her visit\n> to the campus to coincide with my presentation .\n> i hope to hear from her soon .\n>\n> vince kaminski\n>\n> p . s . nice web site\n>\n>\n>\n>\n>\n>\n>\n> \" pierre - philippe ste - marie \" on 08 / 10 / 2000 05 : 13 : 53\npm\n>\n> to :\n> cc :\n> subject : mscf speaker series\n>\n>\n>\n> dear mr . kaminsky ,\n>\n> just checking if there was any progress . . . or anything i could do to help\n> you .\n>\n> sincerely ,\n>\n> pierre - philippe ste - marie\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> pstemarie . homestead . com\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.490+0000", "entityId": 8132, "properties": {"text": "Subject: re : mscf speaker series\nthx ,\nwe are very anxious to hear her answer\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\npstemarie . homestead . com\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : friday , august 11 , 2000 10 : 55 am\nsubject : re : mscf speaker series\n>\n> pierre - philippe ,\n>\n> i have contacted allison bailey to ask her to move her visit\n> to the campus to coincide with my presentation .\n> i hope to hear from her soon .\n>\n> vince kaminski\n>\n> p . s . nice web site\n>\n>\n>\n>\n>\n>\n>\n> \" pierre - philippe ste - marie \" on 08 / 10 / 2000 05 : 13 : 53\npm\n>\n> to :\n> cc :\n> subject : mscf speaker series\n>\n>\n>\n> dear mr . kaminsky ,\n>\n> just checking if there was any progress . . . or anything i could do to help\n> you .\n>\n> sincerely ,\n>\n> pierre - philippe ste - marie\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> pstemarie . homestead . com\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.499+0000", "entityId": 8133, "properties": {"text": "Subject: re : mscf speaker series\npierre - philippe ,\ni have contacted allison bailey to ask her to move her visit\nto the campus to coincide with my presentation .\ni hope to hear from her soon .\nvince kaminski\np . s . nice web site\n\" pierre - philippe ste - marie \" on 08 / 10 / 2000 05 : 13 : 53 pm\nto :\ncc :\nsubject : mscf speaker series\ndear mr . kaminsky ,\n?\njust checking if there was any progress . . . or anything i could do to help\nyou .\n?\nsincerely ,\n?\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\npstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.505+0000", "entityId": 8134, "properties": {"text": "Subject: summer internship\nhi ,\ni ' d like to thank you for the opportunity of letting me work here this\nsummer . i ' ve learned a lot in the past three months and hopefully have been\nof some help around here . i was very impressed with this department , and\nenron itself , and i really appreciate the chance for me to have worked in\nsuch an environment .\nso anyway , thank you and i wish you and the department well ,\nbrad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.509+0000", "entityId": 8135, "properties": {"text": "Subject: research group accountant\nhi dawn :\nthe research group has moved around so much that we do not know\nwho to contact for accounting issues . we need to reverse some money\nback to one of the groups we are supporting , but do not know who to contact .\ndo you have a clue ?\nwe are also still using an sap corp . co # and rc # because we do not\nknow where to go to get the new ena # ' s .\nif you could help in this we would really appreciate it .\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.514+0000", "entityId": 8136, "properties": {"text": "Subject: do vidzenija !\nvince ,\ntoday is the last day of my internship here this summer . i have had a\nterrific summer . thank you so much for all of your support ! i have talked\nwith my supervisor from this group and i am pleased that he feels strongly\nand positively about my performance . of course , my job decision is a very\nimportant one for me and as i consider job offers in the upcoming months , a\nvariety of factors will be influencing my choice . certainly one of them will\nbe the positive experiece i have had with enron . but regardless of my\ndecision in future , i am so glad that i have had the opportunity to glimpse\ninto enron ' s business and culture . i have met some amazing people here , and\nmy experience with enron is something i will always take with me whereever i\ngo .\ni hope to hear from you again . please feel free to contact me at any time .\nmy email remains : vngo @ rice . edu and i will leave shirley my phone number as\nsoon as i know it !\ndeepest regards ,\nvan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.519+0000", "entityId": 8137, "properties": {"text": "Subject: telephone interview with the houston research group\ngood morning quentin :\nvince kaminski and the research group would like to conduct a telephone\ninterview with you sometime next week . considering the time difference\nbetween\nhouston and australia , it probably makes sense to try and schedule it very\nearly in the morning your time , say 7 : 00 am ? it would be 5 : 00 pm here in\nhouston .\nhow does next wednesday or thursday , ( 8 / 16 or 8 / 17 ) at 7 : 00 am your time\nsound ?\nalso , please let me know if you want to be reached at home or work .\nthanks quentin and have a great day !\nshirley crenshaw\nadministrative coordinator\nenron research\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.524+0000", "entityId": 8138, "properties": {"text": "Subject: re : my first draft\nquentin ,\ni forwarded your resume to our sydney office with a request\nto invite you for an introductory interview . i would also like to\narrange a phone interview with you sometimes next week .\nmy assistant will call you regarding the timing .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.528+0000", "entityId": 8139, "properties": {"text": "Subject: my first draft\ndear dr . kaminski\nthis is quentin kerr again from australia . as i mentioned brefore , my paper\nwill be ready soon . please find out the attachment with the draft of my\npaper ( hasn ' t submitted yet ) . there are always some errors in my paper .\nplease read it , give me some suggestions . any comments will be appreciated .\nby the way , i would like to ask you , have you received my resume ? i sent it\nto you about two weeks ago .\nps : attached with the pdf file .\nthanks\nquentin\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 622 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- jumpl . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.533+0000", "entityId": 8140, "properties": {"text": "Subject: interview & mike / christian\ndear vince ,\n1 .\nquentin kerr ,\nwe will be pleased to do the initial due diligence in an interview . phil\ntaylor is contacting quentin and getting him down our sydney office from his\nuniversity in the next state - queensland .\n2 .\nre : christian ,\nwe will be very glad for christain to interact with houston research on \" . .\nthe weather forecasting technology . . \"\nhowever , we are very skinny on w staff here ( like christian is our one &\nonly ) , and christian is doing much work for both the power & weather\nbusiness .\ni was thinking that we could run with our initial idea of having mike roberts\ncome to sydney .\nthere is still time before the olympics !\nwill keep you posted on quentin .\nregards\nraymond\nvince j kaminski @ ect\n08 / 08 / 2000 06 : 30 am\nto : paul quilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect\nsubject : thank you\npaul & raymond ,\nit took more than a few days to catch up after i came back from australia .\nthere are few things i would like to bring up to your attention .\nfirst of all , i would like to thank you for your hospitality . i learned a lot\nabout the australian markets and was greatly impressed with the\nquality of the people at the sydney office .\n1 . the resume you sent to me and grant looks quite good .\ni think it makes sense to interview this person and we can help\nyou with a phone interview .\n2 . i have received another resume that looks very promising . i am\nvery interested in this guy and would be ready to bring him over\nto the states where we lack desperately technical talent .\ncan you help us by interviewing him in sydney ?\nthe main determination i need from you is whether he can\nfunction in a company like enron . as any good academic\nhe sent his resume in a ps format and i shall fax you a copy in case\nyou don ' t have a postscript reader on your system .\n3 . christian werner does some really neat things on\nthe weather front . i would like to determine if he can help\nus to upgrade our systems . can we bring him to houston\nfor a week to discuss the weather forecasting technology with mike\nroberts and joe hrgovcic ? i think that he could learn a lot\nfrom mike and other weather guys here how we translate\nweather info into business - related information . i shall be glad to\nunderwrite the cost of this trip .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.538+0000", "entityId": 8141, "properties": {"text": "Subject: enron cost of capital\nvince -\ntim despain asked me to forward this information to you as part of the effort\nto establish enron ' s cost of capital . if you need any additional information\nor clarification , feel free to give me a call at x 57538 .\ncf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.543+0000", "entityId": 8142, "properties": {"text": "Subject: re : research and development charges to gpg\nhere it is !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 14 / 2000\n07 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 10 / 2000 02 : 25 pm\nto : vera apodaca / et & s / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect\nsubject : re : research and development charges to gpg\nvera ,\nwe shall talk to the accounting group about the correction .\nvince\n08 / 09 / 2000 03 : 26 pm\nvera apodaca @ enron\nvera apodaca @ enron\nvera apodaca @ enron\n08 / 09 / 2000 03 : 26 pm\n08 / 09 / 2000 03 : 26 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : research and development charges to gpg\nper mail dated june 15 from kim watson , there was supposed to have occurred\na true - up of $ 274 . 7 in july for the fist six months of 2000 . reviewing july\nactuals , i was not able to locate this entry . would you pls let me know\nwhether this entry was made , if not , when do you intend to process it .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.548+0000", "entityId": 8143, "properties": {"text": "Subject: research and development charges to gpg\ndawn :\nhere is the original notification . i will also send you the one where vera\nsays\nit was never done .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 14 / 2000\n07 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkimberly watson @ enron\n06 / 15 / 2000 03 : 26 pm\nto : kent miller / et & s / enron @ enron , martha janousek / et & s / enron @ enron , elaine\nconcklin / et & s / enron @ enron , vera apodaca / et & s / enron @ enron , rod\nhayslett / fgt / enron @ enron , vince j kaminski / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : research and development charges to gpg\nvince , krishna and i met to discuss the research and development cross\ncharges to gpg for january through june . these charges are based upon a\nbudgeted amount of allocating three resources to the gpg group ( two resources\nfor revenue management and one resource for gpg marketing ) . we have utilized\nthe r & d group some during the first half of the year , but not to the full\nextent of three resources . vince and krishna have agreed to reverse out some\nof the charges that were budgeted january through june . we will revisit this\nissue again toward the end of the year to determine if any adjustments are\nnecessary for july through december .\nthe budgeted amount january through june has been distributed between the nng\nand tw as follows :\nresearch and development\nbudget ( $ 000 ) nng tw et & s\njanuary $ 46 . 7 $ 46 . 7\nfebruary $ 26 . 1 $ 20 . 4 $ 46 . 5\nmarch $ 35 . 9 $ 10 . 2 $ 46 . 1\napril $ 34 . 8 $ 10 . 2 $ 45 . 0\nmay $ 36 . 4 $ 8 . 8 $ 45 . 2\njune $ 36 . 4 $ 8 . 8 $ 45 . 2\n$ 274 . 7\nout of the $ 274 . 7 budgeted for the first half of the year , $ 199 . 7 is to be\nreversed back to the research and development department . this reversal will\noccur in july . vince , vera apodaca ( ext . x 35980 ) will be our contact to\nhelp facilitate the reversal of these charges .\nelaine , the remaining $ 75 . 0 ( $ 274 . 7 - $ 199 . 7 ) is to be allocated with $ 50 . 0\ngoing to the revenue management work order and $ 25 . 0 remaining in o & m .\nif anyone has any questions or needs additional information , please don ' t\nhesitate to call me ( x 33098 ) . thanks , kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.552+0000", "entityId": 8144, "properties": {"text": "Subject: london visit\ni understand that you will be in london around 20 september . tom lewthwaite\nhas\nasked me to arrange a meeting between you , tom and julian leake . i understand\nthat you have met tom and julian before . i would also like to attend - i am\na\nmanager in our uk financial services practice with responsibilty for enron\nfrom\na uk financial services perspective . we would like to discuss any risk\nmanagement concerns that you may have and any internal initiatives with which\nwe\ncould assist .\nif you are happy to meet , i would be grateful if you could let me know how you\nto proceed ( whether i should arrange timings with you , your secretary , someone\nin london etc ) . you can contact me on + 44 20 7783 7446 ( at enron ' s london\noffices ) or on this e - mail address .\nkind regards\npaul day\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.557+0000", "entityId": 8145, "properties": {"text": "Subject: thank you\ndear dr . kaminsky :\ni want to thank you for interviewing me last friday and inviting me back for\na follow - up interview . it was a pleasure to meet you and other members of\nyour staff .\nmy interest in working for enron research was strengthened as a result of the\ninterview . i was most impressed by the quality and diversity of talents\nwithin your group . my proficiency in probabilistic analysis and experience in\nengineering and financial risk management fit nicely with the activities of\nyour group . i have a demonstrated ability to adapt my skills with changing\nbusiness needs . as a member of shell research , i supported internal clients\nfrom different business units . i am confident that i could make a significant\ncontribution to your organization over time .\ni want to reiterate my strong interest in working with you and your staff .\nyou provide the kind of opportunity i seek . i look forward to seeing you\nagain on my follow - up interview next week . again , thank you for the interview\nand your consideration .\nsincerely ,\nrabi s . de\n?\ndo you yahoo ! ?\nyahoo ! mail - free email you can access from anywhere !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.562+0000", "entityId": 8146, "properties": {"text": "Subject: phone time\ndear dr . kaminski\nthanks for your arrangement . i have received email from shirley . either\nwednesday or thursday will be fine to me . i am looking forward to talking to\nyou at that time . it is always my pleasure to work with you .\nbest wishes\nquentin kerr\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 625 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.566+0000", "entityId": 8147, "properties": {"text": "Subject: employees that are listed in the research time site that are not in\nthe research group\nhello everyone :\nin doing the sap timesheets this time i have discovered there are several\npeople listed in the 105896 cost center - org . unit # 1424 ( research ) that\nare no longer in the research group . shouldn ' t they be moved ?\nthey are :\nalexios kollaros 502373 now with the new power co .\nfarouk lalji 501609 analyst rotated out\nainsley gaddis 400250 summer intern returned to school ( last day the 11 th )\nmandeep chahal 502876 now with the new power co .\njames aimone 514849 summer intern returned to school ( last day the 11 th )\nroman zadorozhny 501778 now with another co . in enron\nplease let me know if i need to do anything .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.571+0000", "entityId": 8148, "properties": {"text": "Subject: phone time\ndear dr . kaminski\nthanks for your arrangement . i have received email from shirley . either\nwednesday or thursday will be fine to me . i am looking forward to talking to\nyou at that time . it is always my pleasure to work with you .\nbest wishes\nquentin kerr\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 625 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.575+0000", "entityId": 8149, "properties": {"text": "Subject: the garp 2001 convention : invitation to speak\ninvitation to speak\ngarp 2001\nthe 2 nd annual risk management convention\n13 th & 14 th february , 2001 \u0001 ) marriott world trade center , new york\ndear kaminski\nfurther to my telephone conversation today with your secretary , shirley\ncrenshaw , and on behalf of the global association of risk professionals , i\nhave great pleasure in inviting you to speak at our 2 nd annual risk\nmanagement convention \u0001 ) garp 2001 .\nthis event has rapidly establishing itself as the risk management industry \u0001 , s\nmost important meeting point . garp 2000 reflected the key concerns of risk\nmanagement experts world - wide , with over 400 attendees in its first year .\nthree simultaneous streams address traditional pricing and risk management\ntechniques , along with specialised streams addressing new sectors , such as\nthe corporate world and the insurance industry . with a speaker panel of over\n55 senior and executive financial professionals from investment banks ,\nregulatory bodies , asset management firms , academics , insurers / re - insurers ,\ncorporate and system providers this is the financial risk management event\nof the year .\nkey areas that this convention will consider include market risk ( stress\ntesting , liquidity , jump diffusion , evt ) , credit risk ( regulation , modeling ,\nstress testing , credit portfolio management , credit derivatives ) ,\noperational risk , ( regulation , data , modeling , validation , evt ) advanced\nasset & liability management , corporate / energy risk management and the\ninsurance & capital markets .\nfrom my research and discussions with experts in this arena your name was\nhighly recommended as a speaker for this event . below is the stream on\ncorporate / energy risk management and i had in mind one of the sessions\nbelow for you . also , the topic titles are provisional and i am open to\nsuggested alterations .\ncorporate / energy risk management\nmodelling corporate risk \u0001 ) risk management from a shareholder value\nperspective\nmeasuring energy risk \u0001 ) tackling price volatility , adapting var , scenario\nmodelling and regulatory requirements\nforward pricing \u0001 ) construction of the forward curve , correlations ,\ntransparency issues\nthe volatility challenge \u0001 ) modelling price volatility and examining the new\nproducts designed to stabilise volatility\nenergy credit risk management\ngarp is a not - for - profit , independent organisation of risk management\npractitioners and researchers from leading financial institutions\nworld - wide . garp \u0001 , s mission is to facilitate the exchange of information ,\ndeveloping educational programs and promoting standards in the area of\nfinancial risk management . for more information please refer to our web\nsite : www . garp . com\ni sincerely hope you will be able to accept this invitation and i look\nforward to hearing from you in due course . should you have any questions\nplease do not hesitate to contact me , otherwise i will call you again on to\ndiscuss this further .\nbest regards\nandreas\nps i have also attached a copy of garps 2000 program for your attention .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\n- draft programme . doc\n- g 2000 b & wlowr . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.580+0000", "entityId": 8150, "properties": {"text": "Subject: re : full version\ni ' ll have a look !\ni haven ' t much time , but can certainly\nget you a quick reaction , at least !\nbest , darrell\n> x - lotus - fromdomain : ect\n> from : \" vince j kaminski \"\n> to : duffie @ stanford . edu\n> date : thu , 10 aug 2000 14 : 04 : 47 - 0500\n> subject : full version\n> mime - version : 1 . 0\n> content - disposition : inline\n> x - uidl : 9 fef 7462 afa 5 d 4 ee 6 co 4 c 9 co 2 df 71 b 25\n> x - keywords :\n>\n>\n>\n> darrell ,\n>\n> grant just alerted me that i sent you only part of the text .\n>\n> here is the full chapter with an aged version of gran ' t part .\n> what i sent you represents an update of his contribution .\n>\n> sorry for that .\n>\n> vince\n>\n> ( see attached file : volo 720 . doc )\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.585+0000", "entityId": 8151, "properties": {"text": "Subject: organizational announcement\nto help accomplish our business goals , the following management appointments\nare effective immediately :\ntod lindholm , previously managing director - chief accounting officer for\nebs , will move to corporate as managing director and assume responsibility\nfor business risk management , it compliance as well as working on a number of\nspecial assignments for rick causey , executive vice president - chief\naccounting officer for enron corp .\njohn echols , currently managing director - risk systems development for ebs\nwill assume responsibility for accounting and administration for ebs as well\nas his current responsibilities and will report to the office of the chairman\nfor ebs .\neverett plante , currently vice president - chief information officer for ebs\nwill now report directly to the office of the chairman for ebs .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.589+0000", "entityId": 8152, "properties": {"text": "Subject: re : info help .\nhi niclas ,\ni am in the middle of preparing some presentations right now , so it might be\nmore productive to speak by phone ( 503 - 464 - 8430 ) . please leave your number ,\nif you get my voicemail .\nto get you started , you might see if you can get access to the ferc gads\ndatabase of plant forced and planned availability . it seems others in\nresearch have asked about this , so you may already have this at your\ndisposal . the eia has a good electronic database of plant for and por\navailable for free ( http : / / www . nerc . com / ~ esd / ) . i know alexios in re / ees has\nthis . if you wanted to do it the hard way , you can also ask jaison to access\nthe epa ' s cems data he has summarized on a machine there in research . it\ncontains hourly plant operation for every unit over about 50 mw , which you\ncould aggregate up .\nthe wscc 10 - year forecast of new plant construction and loads is a good place\nto start for plant construction information , but suffers from some notorious\n\" self - reporting \" error . it is available in pdf form from the web site\nhttp : / / www . wscc . com / . other sources that should be more near - term , but more\naccurate are the cec inventory of plants ( http : / / www . energy . ca . gov / ) and the\nbpa whitebook ( http : / / www . transmission . bpa . gov ) .\nas far as basic economic data is concerned , you can either rely on the\nreported utility forecasts for loads , or you can go to fundamental data . the\nultimate source of the census data collected by the us dept of commerce ,\nwhich you can buy on cdrom for cheap . it would have this kind of information\nby sic code , by zip code . you may also have access to one of the economic\nforecasting businesses ( wharton ' s wefa , dri , etc . ) they have this in highly\ndigested and complete form .\nbtw , tim heizenrader , who runs fundamental analysis and research on the west\ndesk , is a sharp cookie and should have all this under control . is your\nclient aware of this resource ?\ngive me a buzz and we can talk more ,\nmichael\n> > > niclas egmar / hou / ees @ enron 08 / 14 / 00 12 : 49 pm > > >\nmichael ,\ni ' m an analyst in the research group . i would like your help with finding\nsome information specific for the west coast . a new analyst on the west power\ndesk needs information on planned outages and planned new generation . he is\nstudying the long - term fundamentals of electricity volatility on the west\ncoastso so he also needs info on housing starts , computer sales or industrial\nproduction figures for computer manufacturing , growth of start - up companies ,\nand population stats .\nany help in finding the needed info would be greatly appreciated . contact me\nor daniel kang ( new analyst ) .\nniclas\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.594+0000", "entityId": 8153, "properties": {"text": "Subject: re : cairn gas purchase bid\nvince ,\ni ' m following up on our conversation late last week and i ' m interested to see\nwhat your group can advise , per doug leach ' s recommendation . as you can see\nhe is raising a major red flag in regards to our non - binding offer to cairn .\nsince , it was late the other night i didn ' t touch base with sandeep kohli ,\nbut bobby and i are probably the most knowledgeable in regards to the indian\ngas market . please let me know what information you may need from us to\nprovide some guidance .\nregards ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by douglas s parsons / enron _ development on\n08 / 15 / 2000 07 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbobby farris\n08 / 14 / 2000 10 : 19 pm\nto : douglas s parsons / enron _ development @ enron _ development\ncc :\nsubject : re : cairn gas purchase bid\nthere is no harm in seeing what kaminski ' s group will advise . do you have\nany problem in contacting them ?\nbobby\ndoug leach @ ect\n08 / 14 / 2000 07 : 45 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\ni strongly disagree with the pricing and structure of your non - binding offer\nto cairn . this reminds me of the debacle in brazil . you should have contacted\nvince kaminski ' s research group as we talked about before an offer was made .\nthis is a bad deal .\ndouglas s parsons @ enron _ development\n08 / 12 / 2000 01 : 51 am\nto : doug leach @ ect , marc de la roche @ ect\ncc :\nsubject : cairn gas purchase bid\ndoug & marc ,\nfyi , please let me know if you think we ' re totally off base . i appreciate\nyour help .\nregards ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by douglas s parsons / enron _ development on\n08 / 12 / 2000 01 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndouglas s parsons\n08 / 11 / 2000 06 : 24 am\nto : bobby farris / enron _ development @ enron _ development\ncc : f b virani / enron _ development @ enron _ development , ujjwal\ndey / enron _ development @ enron _ development , nilesh\nsubject : cairn gas purchase bid\nbobby ,\nafter meeting with cairn today in delhi , my perception is that our offer was\nreceived well . they were more open and relaxed then they were on wed .\nmorning and made several encouraging comments about our price range , ( once we\ntalked through the price movements ) , and the seriousness of our gas related\nactivities on the west coast of india , in light of the ioc agreement . i\nthink the overall package is attractive to them and no serious objections\nwere raised . we did talk to some extent about the guarantees , but we didn ' t\nget too far and they ' re willing to accept at this point that what ' s\nacceptable to the lng suppliers , should be suitable for their needs .\nhowever , they would like to understand the corporate structure and assets of\nenron energy marketing a little better and i told them i would get back to\nthem on that point .\ndavid and ajay were up in hazira yesterday looking at some property for their\ngas treatment facility , which apparently is across the road from pipeline\naccess . while there they went and looked at shell ' s proposed lng site after\nwalking the last 1 km , inaccessible to their 4 wd vehicle and not surprisingly\nfound a beach .\nin summary , here is what we offered on a non - binding basis :\nsix year production plateau\n85 % top\n$ 3 . 67 / mmbtu net , at a base of $ 18 / bbl brent , with point of sale at the\ntail - end of the gas processing plant\nfloor & cap of $ 15 . 50 - $ 27 . 00 / bbl\nprice movement : + / - $ 1 . 00 / bbl from the $ 18 / bbl base price ( on a 3 mo .\nrolling average ) equals + / - $ 0 . 145 / mmbtu fixed on a quarterly basis\nguarantees : same protection we ' re providing the lng suppliers under the\ntrust retention account\ni appreciate everyone ' s help in submitting this offer .\nthanks ,\ndoug", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.600+0000", "entityId": 8154, "properties": {"text": "Subject: re : cairn gas purchase bid\nvince - - shades of cuiba\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 08 / 15 / 2000 07 : 53 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : doug leach on 08 / 15 / 2000 07 : 52 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\nyou spoke to me once and i gave you my opinions which were contrary to your\nresultant offer to cairn . currently , i have better things to do with my time .\ndouglas s parsons @ enron _ development\n08 / 15 / 2000 12 : 10 am\nto : doug leach / hou / ect @ ect\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\ni talked to vince after we hung up and his only suggestion was to call\nsandeep kohli . i spoke with marc and yourself four times on this matter over\na 3 day period and given the timing , i put forth a non - binding offer , after\ndiscussing it further with bobby , based on the information i had that appears\nto position us close to our competitors offers . we haven ' t committed\nourselves and should we be selected for negotiations there are numerous\nvariables to affect the outcome . if you ' ve got any suggestions for a better\ndeal , please advise .\ndoug leach @ ect\n08 / 14 / 2000 07 : 45 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\ni strongly disagree with the pricing and structure of your non - binding offer\nto cairn . this reminds me of the debacle in brazil . you should have contacted\nvince kaminski ' s research group as we talked about before an offer was made .\nthis is a bad deal .\ndouglas s parsons @ enron _ development\n08 / 12 / 2000 01 : 51 am\nto : doug leach @ ect , marc de la roche @ ect\ncc :\nsubject : cairn gas purchase bid\ndoug & marc ,\nfyi , please let me know if you think we ' re totally off base . i appreciate\nyour help .\nregards ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by douglas s parsons / enron _ development on\n08 / 12 / 2000 01 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndouglas s parsons\n08 / 11 / 2000 06 : 24 am\nto : bobby farris / enron _ development @ enron _ development\ncc : f b virani / enron _ development @ enron _ development , ujjwal\ndey / enron _ development @ enron _ development , nilesh\nsubject : cairn gas purchase bid\nbobby ,\nafter meeting with cairn today in delhi , my perception is that our offer was\nreceived well . they were more open and relaxed then they were on wed .\nmorning and made several encouraging comments about our price range , ( once we\ntalked through the price movements ) , and the seriousness of our gas related\nactivities on the west coast of india , in light of the ioc agreement . i\nthink the overall package is attractive to them and no serious objections\nwere raised . we did talk to some extent about the guarantees , but we didn ' t\nget too far and they ' re willing to accept at this point that what ' s\nacceptable to the lng suppliers , should be suitable for their needs .\nhowever , they would like to understand the corporate structure and assets of\nenron energy marketing a little better and i told them i would get back to\nthem on that point .\ndavid and ajay were up in hazira yesterday looking at some property for their\ngas treatment facility , which apparently is across the road from pipeline\naccess . while there they went and looked at shell ' s proposed lng site after\nwalking the last 1 km , inaccessible to their 4 wd vehicle and not surprisingly\nfound a beach .\nin summary , here is what we offered on a non - binding basis :\nsix year production plateau\n85 % top\n$ 3 . 67 / mmbtu net , at a base of $ 18 / bbl brent , with point of sale at the\ntail - end of the gas processing plant\nfloor & cap of $ 15 . 50 - $ 27 . 00 / bbl\nprice movement : + / - $ 1 . 00 / bbl from the $ 18 / bbl base price ( on a 3 mo .\nrolling average ) equals + / - $ 0 . 145 / mmbtu fixed on a quarterly basis\nguarantees : same protection we ' re providing the lng suppliers under the\ntrust retention account\ni appreciate everyone ' s help in submitting this offer .\nthanks ,\ndoug", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.605+0000", "entityId": 8155, "properties": {"text": "Subject: interview schedule for ben zhang\nattached please find the interview packet for the above - referenced person .\nthe interview will happen thursday august 17 , 2000 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsean grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.609+0000", "entityId": 8156, "properties": {"text": "Subject: re : seminar series mug\nbarabara ,\nit looks great . it ' s a very nice design .\nvince\nbarbara ostdiek on 08 / 15 / 2000 10 : 26 : 12 pm\nto : vince . j . kaminski @ enron . com ( vince kaminski )\ncc :\nsubject : seminar series mug\nvince :\ni have attached the general design we are proposing for the enron seminar\nseries mug . we have a little refinement to do - spacing here and there a\ncouple type - o ' s but this is the idea . if you like it , we will put an order\nin .\ni ' ll put out an announcement on the seminar schedule shortly . so far the\nfall line up includes will goetzman - yale , lenard mirman - virgina , jeff\npontiff - u . of washington , george allyannis - darden , and charles lee -\ncornell .\nthank you .\nbbo\n- mugl 1 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.615+0000", "entityId": 8157, "properties": {"text": "Subject: vince ,\nthe book \" power economics \" can be downloaded from\nhttp : / / www . stoft . com /\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.623+0000", "entityId": 8158, "properties": {"text": "Subject: re : recruiting\nvince ,\nthank you so much for forwarding this information to me as well as making\nsome initial contacts on campus ! i was wondering if you could provide a two\nhour time slot in the next two weeks for the cal berkeley planning session\nwith the entire campus team here in the office ? i would like to get the\nentire team together prior to the career fair on the 8 th so that we can go\nover the strategy , dates on campus , and roles / responsibilities .\nalso , i know that you mentioned that the first couple of weeks in october\nwould be the best to target for the general information session . how does\nthe week of october 9 th look for you ? is there a certain day that works the\nbest ? i would like to work with your schedule to see if we can come up with\na date in that timeframe .\nthanks again for your help !\nashley\nvince j kaminski @ ect\n08 / 11 / 2000 01 : 42 pm\nto : ashley baxter / corp / enron @ enron\ncc :\nsubject : recruiting\nashley ,\nanother professor i contacted . his web page is\nhttp : / / are . berkeley . edu / ~ rausser /\ncan we firm up the trip date ? i shall be able to line up some meetings\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 11 / 2000\n01 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkamins @ ect . enron . com on 08 / 11 / 2000 01 : 44 : 52 pm\nto : rausser @ are . berkeley . edu , vkamins @ enron . com\ncc :\nsubject : recruiting\ngordon ,\nthis is the information about our recruiting program .\nvince\n- enronl . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.632+0000", "entityId": 8159, "properties": {"text": "Subject: re : info help .\nkrishna ,\nniclas introduces himself as an associate in the research group .\ni think we should clarify his status .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 15 / 2000\n05 : 53 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" michael schilmoeller \" on 08 / 15 / 2000 11 : 08 : 06\nam\nto : notes : niclas . egmar @ enron\ncc : vkamins @ enron . com , grant _ masson @ pgn . com , stinson _ gibner @ pgn . com\nsubject : re : info help .\nhi niclas ,\ni am in the middle of preparing some presentations right now , so it might be\nmore productive to speak by phone ( 503 - 464 - 8430 ) . please leave your number ,\nif you get my voicemail .\nto get you started , you might see if you can get access to the ferc gads\ndatabase of plant forced and planned availability . it seems others in\nresearch have asked about this , so you may already have this at your\ndisposal . the eia has a good electronic database of plant for and por\navailable for free ( http : / / www . nerc . com / ~ esd / ) . i know alexios in re / ees has\nthis . if you wanted to do it the hard way , you can also ask jaison to access\nthe epa ' s cems data he has summarized on a machine there in research . it\ncontains hourly plant operation for every unit over about 50 mw , which you\ncould aggregate up .\nthe wscc 10 - year forecast of new plant construction and loads is a good place\nto start for plant construction information , but suffers from some notorious\n\" self - reporting \" error . it is available in pdf form from the web site\nhttp : / / www . wscc . com / . other sources that should be more near - term , but more\naccurate are the cec inventory of plants ( http : / / www . energy . ca . gov / ) and the\nbpa whitebook ( http : / / www . transmission . bpa . gov ) .\nas far as basic economic data is concerned , you can either rely on the\nreported utility forecasts for loads , or you can go to fundamental data . the\nultimate source of the census data collected by the us dept of commerce ,\nwhich you can buy on cdrom for cheap . it would have this kind of information\nby sic code , by zip code . you may also have access to one of the economic\nforecasting businesses ( wharton ' s wefa , dri , etc . ) they have this in highly\ndigested and complete form .\nbtw , tim heizenrader , who runs fundamental analysis and research on the west\ndesk , is a sharp cookie and should have all this under control . is your\nclient aware of this resource ?\ngive me a buzz and we can talk more ,\nmichael\n> > > niclas egmar / hou / ees @ enron 08 / 14 / 00 12 : 49 pm > > >\nmichael ,\ni ' m an analyst in the research group . i would like your help with finding\nsome information specific for the west coast . a new analyst on the west power\ndesk needs information on planned outages and planned new generation . he is\nstudying the long - term fundamentals of electricity volatility on the west\ncoastso so he also needs info on housing starts , computer sales or industrial\nproduction figures for computer manufacturing , growth of start - up companies ,\nand population stats .\nany help in finding the needed info would be greatly appreciated . contact me\nor daniel kang ( new analyst ) .\nniclas\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.637+0000", "entityId": 8160, "properties": {"text": "Subject: re : o\nandrew ,\nvince and grant from research would like to have risktrack on their pcs .\ncan you install it for them ?\nappreciate it ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.641+0000", "entityId": 8161, "properties": {"text": "Subject: new value lab\nfyi . . . . . ajo\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy oberg / hou / ees on 08 / 16 / 2000 02 : 22 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard causey @ enron\n08 / 16 / 2000 01 : 42 pm\nto : amy oberg / hou / ees @ ees\ncc :\nsubject : re : update\ni have a conference call scheduled with them on friday . thanks\nto : richard causey / corp / enron @ enron\ncc :\nsubject : update\nrick : we ' re trying to reschedule the new value lab meeting . what ' s the status\nof your conversation w / your collegues at aa ?\nthanks .\namy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.647+0000", "entityId": 8162, "properties": {"text": "Subject: forecasting project\nper our monday meeting , the time line for completion of the \" phase i \"\nforecasting project ( hourly system load & next day load ) is as follows :\naug . 15 - sept . 15 ( data collection )\nsept . 15 - oct . 15 ( modeling )\noct . 15 - nov . 15 ( system development and testing )\nif any questions arise between now and the end of august , contact barbara\ndillard , but as of sept . 1 , i will be the chicago lead for this and other\nforecasting projects and will be available to handle any questions or issues .\nbest regards ,\nmark mixon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.653+0000", "entityId": 8163, "properties": {"text": "Subject: this is the daily total load and weather information we discussed at\nmonday ' s meeting . electric generation load has been removed from these\nsendout numbers .\n> >\njohn p . wirick , jr .\next . 4910\nthe information transmitted is intended only for the person\nor entity to which it is addressed and may contain confidential\nand / or privileged material . any review , retransmission ,\ndissemination or other use of , or taking of any action in\nreliance upon , this information by persons or entities other than the\nintended recipient is prohibited . if you received this in error , please\ncontact the sender and delete the material from any computer .\n- nsdata 2000 to enron . xls\n- pgdata 2000 to enron . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.657+0000", "entityId": 8164, "properties": {"text": "Subject: bi - weekly transmission update report\nenergy info source is privileged to make available to you a free sample\nissue of its bi - weekly transmission update report ( attached ) . this report\ncontains the latest iso , rto , utility , and merchant transmission news provided\nin pdf format delivered to you via email every other week all for only\n$ 75 / year for an individual subscription ( corporate subscriptions for multiple\nusers are available for $ 200 / year ) .\ncheck it out and if you ' d like to subscribe , click on the following link\nto order online or call us at 888 - 986 - 2250 to order by phone . we accept\nvisa / mastercard / american express or can invoice your company .\nviewing the report requires adobe acrobat reader 4 . 0 or higher , available\nfree at :\n- - - - - - - - - - - - - - - - - - - - - -\nif you want to be removed from our mailing list or for more information :\nenergy info source , inc .\nemail : custsvc @ energyinfosource . com\nphone : 888 - 986 - 2250\n- transo 7 _ 23 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.662+0000", "entityId": 8165, "properties": {"text": "Subject: re : full version\ndarrell ,\nthanks a lot . i really appreciate it . the text is below our usual\nstandards but we are completely swamped with work here .\nvince\ndarrell duffie on 08 / 15 / 2000 04 : 54 : 23 pm\nplease respond to darrell duffie\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : full version\ni ' ll have a look !\ni haven ' t much time , but can certainly\nget you a quick reaction , at least !\nbest , darrell\n> x - lotus - fromdomain : ect\n> from : \" vince j kaminski \"\n> to : duffie @ stanford . edu\n> date : thu , 10 aug 2000 14 : 04 : 47 - 0500\n> subject : full version\n> mime - version : 1 . 0\n> content - disposition : inline\n> x - uidl : 9 fef 7462 afa 5 d 4 ee 6 co 4 c 9 co 2 df 71 b 25\n> x - keywords :\n>\n>\n>\n> darrell ,\n>\n> grant just alerted me that i sent you only part of the text .\n>\n> here is the full chapter with an aged version of gran ' t part .\n> what i sent you represents an update of his contribution .\n>\n> sorry for that .\n>\n> vince\n>\n> ( see attached file : volo 720 . doc )\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.667+0000", "entityId": 8166, "properties": {"text": "Subject: research and development charges to gpg\njanice :\nhere is the memo i spoke to you about concerning the charges that need\nto be reversed .\nif you have any questions , please call me .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 16 / 2000\n09 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkimberly watson @ enron\n06 / 15 / 2000 03 : 26 pm\nto : kent miller / et & s / enron @ enron , martha janousek / et & s / enron @ enron , elaine\nconcklin / et & s / enron @ enron , vera apodaca / et & s / enron @ enron , rod\nhayslett / fgt / enron @ enron , vince j kaminski / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : research and development charges to gpg\nvince , krishna and i met to discuss the research and development cross\ncharges to gpg for january through june . these charges are based upon a\nbudgeted amount of allocating three resources to the gpg group ( two resources\nfor revenue management and one resource for gpg marketing ) . we have utilized\nthe r & d group some during the first half of the year , but not to the full\nextent of three resources . vince and krishna have agreed to reverse out some\nof the charges that were budgeted january through june . we will revisit this\nissue again toward the end of the year to determine if any adjustments are\nnecessary for july through december .\nthe budgeted amount january through june has been distributed between the nng\nand tw as follows :\nresearch and development\nbudget ( $ 000 ) nng tw et & s\njanuary $ 46 . 7 $ 46 . 7\nfebruary $ 26 . 1 $ 20 . 4 $ 46 . 5\nmarch $ 35 . 9 $ 10 . 2 $ 46 . 1\napril $ 34 . 8 $ 10 . 2 $ 45 . 0\nmay $ 36 . 4 $ 8 . 8 $ 45 . 2\njune $ 36 . 4 $ 8 . 8 $ 45 . 2\n$ 274 . 7\nout of the $ 274 . 7 budgeted for the first half of the year , $ 199 . 7 is to be\nreversed back to the research and development department . this reversal will\noccur in july . vince , vera apodaca ( ext . x 35980 ) will be our contact to\nhelp facilitate the reversal of these charges .\nelaine , the remaining $ 75 . 0 ( $ 274 . 7 - $ 199 . 7 ) is to be allocated with $ 50 . 0\ngoing to the revenue management work order and $ 25 . 0 remaining in o & m .\nif anyone has any questions or needs additional information , please don ' t\nhesitate to call me ( x 33098 ) . thanks , kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.671+0000", "entityId": 8167, "properties": {"text": "Subject: pjm publishes list of 1000 contingencies\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nto meet customer requests , pjm has published the pjm contingency list on the\nweb\nsite at www . pjm . com . the file can be found under pjm markets , market and\nsystem\ndata , under lmp model information . the list contains the approximately 1000\ncontingencies existing in the pjm energy management system . the contingencies\nare the possible occurrences against which pjm system operators must protect\nthe\ntransmission system .\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.676+0000", "entityId": 8168, "properties": {"text": "Subject: re : agenda for thursday ' s meeting\nhello all ,\ni look forward to this meeting . since the time vince and i last spoke , we\nhave really gained some traction in this area of improving our relationships\nwith universities . i am going to take the liberty of inviting mike rosen to\nthe meeting . mike has done a great job on several relationship - based special\nprojects , and i ' d like to hear his thoughts as we develop the angles of this\ninitiative .\nsee you tomorrow ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.680+0000", "entityId": 8169, "properties": {"text": "Subject: re : fw : chapter 3 revisions\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 08 / 16 / 2000 03 : 56\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : grant masson 08 / 16 / 2000 03 : 57 pm\nto : \" julie \" @ enron\ncc :\nsubject : re : fw : chapter 3 revisions\njulie :\nunfortunately , our reviewer has not come back to us with comments , so i am\nsending you the final version without the benefit of review .\nthe attached zipped file contains the second half of the chapter for which i\nwas responsible . vince will send you his half separately . putting them\ntogether should be a simple matter of cut and paste , assuming that vince has\nnot changed his equation , figure , or table numbering .\ni presume chris will be reading through the chapter once again for editorial\nreasons . there is one place where i would ask him for specific redaction :\ntable 3 . 6 \" model specifications \" on page 14 / 15 has a column labeled \" equation\nreference \" . some cells are blank because the equations specified have not\nbeen referenced previously in the parts i have written . nevertheless , the\nconcepts are surely introduced elsewhere in the book , and it may be helpful\nfor chris to insert the appropriate reference in this table . alternatively ,\none could simply delete the column .\nif i can help in any way , please do not hesitate to contact me .\nw ) 713 853 4768\nh ) 713 664 7260\nwork email : grant . masson @ enron . com\npersonal email : gmasson @ email . com\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.685+0000", "entityId": 8170, "properties": {"text": "Subject: fw : chapter 3 revisions\nhi grant ,\n?\nchris is travelling at the moment , so i ' m contacting you on his behalf with\nregards to the status of ? the completion of the chapter . ? we are dependent\non receiving this as soon as possible , since all the chapters have been\ntypeset and are now in the final stages of the edit process . ?\n?\nplease let us know when you can send this over . ?\n?\nalso , let us know if we can do anything .\n?\nsincerely ,\njulie brennan\n?\nlacima group\n?\n- - - - - original message - - - - -\nfrom : chris strickland\nto : grant masson\ncc : julie\nsent : friday , august 11 , 2000 8 : 49 am\nsubject : re : chapter 3 revisions\nhi grant ,\nthanks for that . sorry for he delay but i ' ve been away for a few days .\ntimely executon would be good - we have just got the proofs back for all the\nother chapters from the typesetters .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : grant masson\nto : chris strickland\nsent : wednesday , august 09 , 2000 9 : 14 am\nsubject : re : chapter 3 revisions\n>\n>\n> chris :\n>\n> my and ronnie ' s revisions are complete . ? vince is having a statistics guru\n> colleague review the material for glaring errors . ? he should be sending\nyou the\n> completed chapter within a day or so .\n>\n> regards ,\n> grant .\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.690+0000", "entityId": 8171, "properties": {"text": "Subject: load forecasting project schedule\nbased on the discussions we had on monday , august 14 th , the preliminary\nproject timeline shown below , and your request that some gas supply planning\npersonnel be available to review and assist with the work :\ndata collection : august 15 to september 14\nmodel design and building : september 15 to october 14\ninterface design and building : october 15 to november 15\ngas supply planning proposes the following schedule for visits to houston :\nketra schmitt : september 18 , 19 , 20 ( model structure )\njohn wirick : october 23 , 24 , 25 ( model test and interface basics )\njake norment : november 6 , 7 , 8 ( interface refinement )\nwe understand that we should fly into houston international and stay at\neither the hyatt downtown or the doubletree to be near the enron office at\n1400 smith street .\nlooking forward to an interesting and successful project .\njohn p . wirick , jr .\next . 4910\nthe information transmitted is intended only for the person\nor entity to which it is addressed and may contain confidential\nand / or privileged material . any review , retransmission ,\ndissemination or other use of , or taking of any action in\nreliance upon , this information by persons or entities other than the\nintended recipient is prohibited . if you received this in error , please\ncontact the sender and delete the material from any computer .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.694+0000", "entityId": 8172, "properties": {"text": "Subject: resid fx option\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 08 / 17 / 2000 09 : 57 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n08 / 17 / 2000 09 : 59 am\nto : stinson gibner / hou / ect @ ect , paulo issler / hou / ect @ ect\ncc :\nsubject : resid fx option\ni have created a directory residfx in\nwhere i put my monte - carlo model ( c project ) and calling spreadsheet for\nthe valuation .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.699+0000", "entityId": 8173, "properties": {"text": "Subject: russian investment climate : multimedia playback - cera multimedia\ncera multimedia : sent thu , august 17 , 2000\ntitle : russian investment climate : multimedia playback\nauthor : eurasia energy\ne - mail category : multimedia\nproduct line : eurasia energy ,\nurl : http : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1317 ,\nalternate url :\nin an august 10 , 2000 , cera multimedia conference call and web presentation ,\nthane gustafson , cera director , eurasia energy , john webb , cera associate ,\nand carolyn miles , cera associate , discuss :\nrussian investment climate : toward stability or fresh turmoil ? implications\nfor the energy sector\n* the russian investment climate under putin : where is it headed ?\n* the booming russian economy : how much energy and energy investment will it\nneed ?\n* the russian oil industry awash in profits : what is it doing with them ?\nto view and listen to a replay of this presentation , please click on the link\nabove .\naccount changes\nto edit your personal account information , including your e - mail\naddress , etc . go to : http : / / eprofile . cera . com / cfm / edit / account . cfm\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.705+0000", "entityId": 8174, "properties": {"text": "Subject: re : the garp 2001 convention : invitation to speak\nandreas ,\nthis looks ok . i look forward to receiving a formal confirmation from you .\nvince\n\" andreas simou \" on 08 / 17 / 2000 11 : 49 : 29 am\nto :\ncc :\nsubject : re : the garp 2001 convention : invitation to speak\ndear mr kaminski\nthank you very much for agreeing to speak at the garp 2001 convention .\ni will be sending you a formal letter of confirmation in the next few days ,\nin the meantime i have selected the session below for you and included some\npreliminary details ; are these correct ? i apologize if your details are not\ncorrect but this is the information that was available to me . is the title\nof the session to you liking , or would you like to ' spice it up ' a little ?\nmeasuring energy risk - tackling price volatility , adapting var , scenario\nmodelling and regulatory requirements\nvince kaminski , head of quantitative research , enron energy\nonce again , thank you for agreeing to participate and i look forward to\nworking with you on this event .\nkind regards\nandreas\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : thursday , august 17 , 2000 5 : 22 pm\nsubject : re : the garp 2001 convention : invitation to speak\nandreas ,\ni shall be glad to speak . i can address topic 2 or 4\n( energy risk or volatility ) .\nvince kaminski\n\" andreas simou \" on 08 / 15 / 2000 09 : 58 : 26\nam\nto :\ncc :\nsubject : the garp 2001 convention : invitation to speak\ninvitation to speak\ngarp 2001\nthe 2 nd annual risk management convention\n13 ( superscript : th ) & 14 ( superscript : th ) february , 2001 ? marriott world\ntrade center , new york\ndear kaminski\nfurther to my telephone conversation today with your secretary , shirley\ncrenshaw , and on behalf of the global association of risk professionals , i\nhave great pleasure in inviting you to speak at our 2 ( superscript : nd )\nannual risk management convention ? garp 2001 .\nthis event has rapidly establishing itself as the risk management\nindustry ' s most important meeting point . garp 2000 reflected the key\nconcerns of risk management experts world - wide , with over 400 attendees in\nits first year . three simultaneous streams address traditional pricing and\nrisk management techniques , along with specialised streams addressing new\nsectors , such as the corporate world and the insurance industry . with a\nspeaker panel of over 55 senior and executive financial professionals from\ninvestment banks , regulatory bodies , asset management firms , academics ,\ninsurers / re - insurers , corporate and system providers this is the financial\nrisk management event of the year .\nkey areas that this convention will consider include market risk ( stress\ntesting , liquidity , jump diffusion , evt ) , credit risk ( regulation ,\nmodeling , stress testing , credit portfolio management , credit\nderivatives ) , operational risk , ( regulation , data , modeling , validation ,\nevt ) advanced asset & liability management , corporate / energy risk\nmanagement and the insurance & capital markets .\nfrom my research and discussions with experts in this arena your name was\nhighly recommended as a speaker for this event . below is the stream on\ncorporate / energy risk management and i had in mind one of the sessions\nbelow for you . also , the topic titles are provisional and i am open to\nsuggested alterations .\ncorporate / energy risk management\nmodelling corporate risk ? risk management from a shareholder value\nperspective\nmeasuring energy risk ? tackling price volatility , adapting var ,\nscenario modelling and regulatory requirements\nforward pricing ? construction of the forward curve , correlations ,\ntransparency issues\nthe volatility challenge ? modelling price volatility and examining the\nnew products designed to stabilise volatility\nenergy credit risk management\ngarp is a not - for - profit , independent organisation of risk management\npractitioners and researchers from leading financial institutions\nworld - wide . garp ' s mission is to facilitate the exchange of information ,\ndeveloping educational programs and promoting standards in the area of\nfinancial risk management . for more information please refer to our web\nsite : www . garp . com\ni sincerely hope you will be able to accept this invitation and i look\nforward to hearing from you in due course . should you have any questions\nplease do not hesitate to contact me , otherwise i will call you again on\nto discuss this further .\nbest regards\nandreas\nps i have also attached a copy of garps 2000 program for your attention .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\n( see attached file : draft programme . doc )\n( see attached file : g 2000 b & wlowr . pdf )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.709+0000", "entityId": 8175, "properties": {"text": "Subject: initial meeting of the ena analyst and associate roundtable august\n18 , 2000\njust a reminder we will have the initial meeting of the ena / aa roundtable on\nfriday at 9 : 00 am in room eb 30 cl . again , the agenda is as follows :\ndiscussion of prc\nimmediate and future aa needs by business unit\nskill shortages\ncampus and off - cycle recruitment\nmottom 10 % management\nprojecting aa needs from core schools for summer 2001 intake\nexisting talent in specialist roles who should be in aa program\nideas / suggestions on how we improve the program / ena retention\nyour groups need to be represented and if you can ' t attend please send\nsomeone to represent you . those of you out of town need to call me if you\nhave any input . thanks again for all your support . ted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.714+0000", "entityId": 8176, "properties": {"text": "Subject: org announcement - enron global markets\nafter having conducted our first of several business reviews , enron global\nmarkets - office of the chairman would like to outline the following\norganizational changes effective immediately .\nthe global risk markets group under jere overdyke illustrates enormous\nopportunities given the size of those businesses . to better focus on the\ndifferent commercial functions and to capture market share and value , the\ngroup is being realigned . jere will continue to manage global risk markets\nand build on our insurance capabilities . mark tawney is responsible for our\nweather business and will now report to the egm office of the chairman .\nbrent price will be joining enron global markets as vice president of\noperations and chief accounting officer . he will report to the egm office of\nthe chairman , and to sally beck , vice president of global risk management\noperations . in his role as chief accounting officer , brent will also report\nto rick causey , executive vice president and chief accounting officer for\nenron corp . reporting to brent in his new position will be sheila glover ,\nbusiness controller for financial products ; todd hall , business controller\nfor weather ; and scott earnest , business controller for global products and\ncoal . in addition , tom myers will join brent ' s management team as director\nof accounting . brent and his team are responsible for all accounting , risk\nreporting and trading operations for all the businesses within egm .\ncindy skinner will join the enron global markets team with responsibility for\nhuman resources . she will also report to david oxley and the hr organization .\nplease join us in congratulating everyone in their assignments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.722+0000", "entityId": 8177, "properties": {"text": "Subject: re : cairn gas purchase bid\ndoug ,\ni shall be glad to meet you and help you with the project .\nmy assistant will call you to set up a meeting latter this week .\nvince\ndouglas s parsons @ enron _ development\n08 / 15 / 2000 08 : 05 am\nto : vince j kaminski @ ect\ncc :\nsubject : re : cairn gas purchase bid\nvince ,\ni ' m following up on our conversation late last week and i ' m interested to see\nwhat your group can advise , per doug leach ' s recommendation . as you can see\nhe is raising a major red flag in regards to our non - binding offer to cairn .\nsince , it was late the other night i didn ' t touch base with sandeep kohli ,\nbut bobby and i are probably the most knowledgeable in regards to the indian\ngas market . please let me know what information you may need from us to\nprovide some guidance .\nregards ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by douglas s parsons / enron _ development on\n08 / 15 / 2000 07 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbobby farris\n08 / 14 / 2000 10 : 19 pm\nto : douglas s parsons / enron _ development @ enron _ development\ncc :\nsubject : re : cairn gas purchase bid\nthere is no harm in seeing what kaminski ' s group will advise . do you have\nany problem in contacting them ?\nbobby\ndoug leach @ ect\n08 / 14 / 2000 07 : 45 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\ni strongly disagree with the pricing and structure of your non - binding offer\nto cairn . this reminds me of the debacle in brazil . you should have contacted\nvince kaminski ' s research group as we talked about before an offer was made .\nthis is a bad deal .\ndouglas s parsons @ enron _ development\n08 / 12 / 2000 01 : 51 am\nto : doug leach @ ect , marc de la roche @ ect\ncc :\nsubject : cairn gas purchase bid\ndoug & marc ,\nfyi , please let me know if you think we ' re totally off base . i appreciate\nyour help .\nregards ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by douglas s parsons / enron _ development on\n08 / 12 / 2000 01 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndouglas s parsons\n08 / 11 / 2000 06 : 24 am\nto : bobby farris / enron _ development @ enron _ development\ncc : f b virani / enron _ development @ enron _ development , ujjwal\ndey / enron _ development @ enron _ development , nilesh\nsubject : cairn gas purchase bid\nbobby ,\nafter meeting with cairn today in delhi , my perception is that our offer was\nreceived well . they were more open and relaxed then they were on wed .\nmorning and made several encouraging comments about our price range , ( once we\ntalked through the price movements ) , and the seriousness of our gas related\nactivities on the west coast of india , in light of the ioc agreement . i\nthink the overall package is attractive to them and no serious objections\nwere raised . we did talk to some extent about the guarantees , but we didn ' t\nget too far and they ' re willing to accept at this point that what ' s\nacceptable to the lng suppliers , should be suitable for their needs .\nhowever , they would like to understand the corporate structure and assets of\nenron energy marketing a little better and i told them i would get back to\nthem on that point .\ndavid and ajay were up in hazira yesterday looking at some property for their\ngas treatment facility , which apparently is across the road from pipeline\naccess . while there they went and looked at shell ' s proposed lng site after\nwalking the last 1 km , inaccessible to their 4 wd vehicle and not surprisingly\nfound a beach .\nin summary , here is what we offered on a non - binding basis :\nsix year production plateau\n85 % top\n$ 3 . 67 / mmbtu net , at a base of $ 18 / bbl brent , with point of sale at the\ntail - end of the gas processing plant\nfloor & cap of $ 15 . 50 - $ 27 . 00 / bbl\nprice movement : + / - $ 1 . 00 / bbl from the $ 18 / bbl base price ( on a 3 mo .\nrolling average ) equals + / - $ 0 . 145 / mmbtu fixed on a quarterly basis\nguarantees : same protection we ' re providing the lng suppliers under the\ntrust retention account\ni appreciate everyone ' s help in submitting this offer .\nthanks ,\ndoug", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.729+0000", "entityId": 8178, "properties": {"text": "Subject: re : cairn gas purchase bid\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by doug leach / hou / ect on 08 / 17 / 2000 09 : 59 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ndouglas s parsons @ enron _ development\n08 / 15 / 2000 09 : 30 am\nto : doug leach / hou / ect @ ect\ncc : marc de la roche / hou / ect @ ect\nsubject : re : cairn gas purchase bid\ni can appreciate and share your objective . earlier today i sent a separate\nnote to vince forwarding your concerns and asking again for his assistance .\ni ' ll start there and if needed i ' ll contact michael popkin ' s structuring\ngroup . however , before getting too many people involved i want to see what\nfeedback we get from cairn after they ' ve discussed the offers internally this\nweek .\ndoug leach @ ect\n08 / 15 / 2000 08 : 37 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect\nsubject : re : cairn gas purchase bid\ni gave you several clear alternatives such as contacting vince ' s structuring\ngroup , michael popkin ' s southern cone structuring group and a long discussion\nregarding the pricing and suggested \" collar . \" i also asked if you had spoken\nto your customer about what they were willing to pay , but that was a non\nstarter . trust me , i have seen almost every bad deal enron has entered into\nor attempted to enter into and i am trying to get metgas to objectively\nrelook at their offer to cairn become it becomes another bad deal .\ndouglas s parsons @ enron _ development\n08 / 15 / 2000 08 : 31 am\nto : doug leach / hou / ect @ ect\ncc :\nsubject : re : cairn gas purchase bid\nthat ' s fine , but don ' t you think i would also prefer not receiving criticism\nthat assumes i didn ' t do something and provides no clear alternative .\ndoug leach @ ect\n08 / 15 / 2000 07 : 52 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\nyou spoke to me once and i gave you my opinions which were contrary to your\nresultant offer to cairn . currently , i have better things to do with my time .\ndouglas s parsons @ enron _ development\n08 / 15 / 2000 12 : 10 am\nto : doug leach / hou / ect @ ect\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\ni talked to vince after we hung up and his only suggestion was to call\nsandeep kohli . i spoke with marc and yourself four times on this matter over\na 3 day period and given the timing , i put forth a non - binding offer , after\ndiscussing it further with bobby , based on the information i had that appears\nto position us close to our competitors offers . we haven ' t committed\nourselves and should we be selected for negotiations there are numerous\nvariables to affect the outcome . if you ' ve got any suggestions for a better\ndeal , please advise .\ndoug leach @ ect\n08 / 14 / 2000 07 : 45 am\nto : douglas s parsons / enron _ development @ enron _ development\ncc : marc de la roche / hou / ect @ ect , bobby\nsubject : re : cairn gas purchase bid\ni strongly disagree with the pricing and structure of your non - binding offer\nto cairn . this reminds me of the debacle in brazil . you should have contacted\nvince kaminski ' s research group as we talked about before an offer was made .\nthis is a bad deal .\ndouglas s parsons @ enron _ development\n08 / 12 / 2000 01 : 51 am\nto : doug leach @ ect , marc de la roche @ ect\ncc :\nsubject : cairn gas purchase bid\ndoug & marc ,\nfyi , please let me know if you think we ' re totally off base . i appreciate\nyour help .\nregards ,\ndoug\n- - - - - - - - - - - - - - - - - - - - - - forwarded by douglas s parsons / enron _ development on\n08 / 12 / 2000 01 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndouglas s parsons\n08 / 11 / 2000 06 : 24 am\nto : bobby farris / enron _ development @ enron _ development\ncc : f b virani / enron _ development @ enron _ development , ujjwal\ndey / enron _ development @ enron _ development , nilesh\nsubject : cairn gas purchase bid\nbobby ,\nafter meeting with cairn today in delhi , my perception is that our offer was\nreceived well . they were more open and relaxed then they were on wed .\nmorning and made several encouraging comments about our price range , ( once we\ntalked through the price movements ) , and the seriousness of our gas related\nactivities on the west coast of india , in light of the ioc agreement . i\nthink the overall package is attractive to them and no serious objections\nwere raised . we did talk to some extent about the guarantees , but we didn ' t\nget too far and they ' re willing to accept at this point that what ' s\nacceptable to the lng suppliers , should be suitable for their needs .\nhowever , they would like to understand the corporate structure and assets of\nenron energy marketing a little better and i told them i would get back to\nthem on that point .\ndavid and ajay were up in hazira yesterday looking at some property for their\ngas treatment facility , which apparently is across the road from pipeline\naccess . while there they went and looked at shell ' s proposed lng site after\nwalking the last 1 km , inaccessible to their 4 wd vehicle and not surprisingly\nfound a beach .\nin summary , here is what we offered on a non - binding basis :\nsix year production plateau\n85 % top\n$ 3 . 67 / mmbtu net , at a base of $ 18 / bbl brent , with point of sale at the\ntail - end of the gas processing plant\nfloor & cap of $ 15 . 50 - $ 27 . 00 / bbl\nprice movement : + / - $ 1 . 00 / bbl from the $ 18 / bbl base price ( on a 3 mo .\nrolling average ) equals + / - $ 0 . 145 / mmbtu fixed on a quarterly basis\nguarantees : same protection we ' re providing the lng suppliers under the\ntrust retention account\ni appreciate everyone ' s help in submitting this offer .\nthanks ,\ndoug", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.737+0000", "entityId": 8179, "properties": {"text": "Subject: fw : citi , wells , enron , sl and i 2 form a b 2 b venture\nfyi only !\n> - - - - - original message - - - - -\n> from : lubowski , andrzej\n> sent : tuesday , august 08 , 2000 12 : 42 pm\n> to : allen , paul ; dahir , victor ; gustafson , pete ; isaacson , bond ; mcewen ,\n> tony ; onoda , john ; pascarella , carl ; saeger , rebecca ; thompson ,\n> scott ( visausa ) ; vessey , paul\n> subject : citi , wells , enron , sl and i 2 form a b 2 b venture\n>\n> yesterday , citigroup , wells , enron , i 2 and sl corp . formed a new firm\n> . com inc . to streamline buying , selling and\n> facilitating payments in business - to - business e - commerce .\n> the announcement says that \" the new company will connect buyers and\n> sellers in e - marketplaces with payment processing , credit and other\n> services through multiple participating banks and financial services\n> companies . \"\n> while i don ' t fully understand yet what this new venture will do and how ,\n> and most importantly , what implications , if any , it may have on visa , i\n> have a feeling that this announcement is different than the mass of\n> publicity seeking b 2 b plays that we have seen in the last year .\n>\n> enron will provide its broadband network , which allows scalability , and\n> bypasses the congestion of the public internet . enron is highly praised\n> for its demonstrated ability to radically reorganize existing industries\n> ( energy , commodities , risk management , etc . ) .\n> sl builds customizable internet financial services platforms and have\n> heavyweight partners ( ibm , andersen ) , and invested clients ( citi , royal\n> bank of canada , andersen , allianz , fleetboston , jp morgan , state farm and\n> zurich financial ) .\n> its chairman and ceo , commenting on the venture said : \" so far , various\n> companies have separately offered individual financial services such as\n> sourcing credit , escrow and payments authentication and processing , but no\n> one has offered them all together in a multi - bank model . the lack of a\n> complete financial services solution for e - marketplaces has been a major\n> inefficiency for b 2 b e - commerce and a bottleneck for these e - marketplaces ,\n> restricting their transaction volume . . com will\n> offer a full package of financial services in an open system that can be\n> seamlessly integrated into any e - marketplace . \"\n>\n> my group , working with others , will try to get a better sense of the\n> nature of this new beast . on the surface , however , it looks like an\n> attempt to create a payment pipeline .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.742+0000", "entityId": 8180, "properties": {"text": "Subject: grms access\ngrant & vince ,\ni have approved your request for risktrac ( formerly grms ) access . in about a\nweek , contact your it help desk representative to verify the deployment onto\nyour desktop .\nthanks ,\nrudi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.746+0000", "entityId": 8181, "properties": {"text": "Subject: re : interview\nrahul ,\ni shall be glad to meet with you . please , give me a call\nwhen you get here .\nvince\nrahul kumar @ enron _ development\n08 / 16 / 2000 09 : 49 am\nto : vince j kaminski @ ect\ncc :\nsubject : interview\nvince ,\nwe had spoken a few weeks back , but were unable to meet due to our\nschedules . i will be back in houston next week ( august 21 st ) , and would\nappreciate the opportunity to meet with you and take your advice .\nas i may have mentioned to you , i am interested in exploring opportunities\nthat are more us focused . i think paula corey has already forwarded my\nresume to you . however , i have attached it to this note just in case .\ni would really appreciate the opportunity to meet with you next week , and\nwould be grateful if you could let me know what time fits best with your\nschedule . i look forward to hearing from you .\nregards ,\nrahul", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.751+0000", "entityId": 8182, "properties": {"text": "Subject: re : seminar series mug\nbarbara , i think you make valid points in your e - mail . the latest design you\nsent me looks fine and meets with our approval . thanks .\nmarge\nbarbara ostdiek on 08 / 17 / 2000 04 : 10 : 44 pm\nto : \" marge nadasky \"\ncc :\nsubject : re : seminar series mug\nat 03 : 58 pm 8 / 17 / 00 - 0500 , you wrote :\n> barbara , vince kaminski had forwarded me the artwork for the mug being\n> worked on\n> for the seminar series for review / comment . we in public relations were\n> wondering if you might be able to incorporate the enron logo in the design ?\n> could you please contact me and advise if this is possible ?\nwe tried to use both the enron logo and the rice university seal . it just\ndidn ' t work . there seemed to be a few problems . the first was color - as\nis , the mug will be black with metallic gold text ; introducing the other\ncolors was distracting . our admissions department uses a black and gold\nmug that is quite stunning and , it seems to go with \" finance . \" that was my\nmotivation . the second problem was that the logos themselves , even if it\nmade sense to do them in gold , made the design too busy - a lot of the\nappeal in these \" word \" mugs is the clean , linear look . finally , i think\nlack of company and competing business school logos increases the chances\nthat the academics who come to present their work at our workshop will\ndisplay this mug on their desk or on their shelves .\ni think the mug will look quite stunning and i think the display of finance\nterms will make it an interesting conversion piece - i ' ve never seen\nanything like it in academics , let alone in finance . i think enron ' s\nsponsorship of the seminar series will get noticed when people follow their\ninterest in the mugs to say \" what is this ? where ' d this come from ? \"\ni ' m hoping this version will be acceptable to you for our first shot at\nthis . please advise .\nbarbara ostdiek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.756+0000", "entityId": 8183, "properties": {"text": "Subject: re : seminar series mug\nmarge ,\nthe person at rice to work with is barbara ostdiek . her e - mail address\nis below ( on one of the messages appended at the bottom ) .\nvince\nmarge\nnadasky\n08 / 17 / 2000 10 : 13 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : seminar series mug\nvince , would it be possible for me to work with whomever is designing this\nmug to see if we could incorporate the enron logo into the design ? i agree\nwith mark that it would be preferable to have the logo somewhere on this .\nplease let me know .\nmarge , ext . 36631\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marge nadasky / hou / ect on 08 / 17 / 2000 10 : 10\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark palmer @ enron\n08 / 17 / 2000 09 : 40 am\nto : marge nadasky / hou / ect @ ect\ncc :\nsubject : seminar series mug\nlooks a little off - brand to me . do you think we need an enron logo ? can you\nhelp vince ? anything from the catalog they could personalize ?\nmark\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark palmer / corp / enron on 08 / 17 / 2000\n09 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n08 / 16 / 2000 05 : 14 pm\nto : mark palmer / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : seminar series mug\nmark ,\nrice univ . wants to produce a coffee mug for the participants of the workshop\nenron sponsors .\nplease , take a look at the proposed design . do we need any formal approval ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 16 / 2000\n05 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarbara ostdiek on 08 / 15 / 2000 10 : 26 : 12 pm\nto : vince . j . kaminski @ enron . com ( vince kaminski )\ncc :\nsubject : seminar series mug\nvince :\ni have attached the general design we are proposing for the enron seminar\nseries mug . we have a little refinement to do - spacing here and there a\ncouple type - o ' s but this is the idea . if you like it , we will put an order\nin .\ni ' ll put out an announcement on the seminar schedule shortly . so far the\nfall line up includes will goetzman - yale , lenard mirman - virgina , jeff\npontiff - u . of washington , george allyannis - darden , and charles lee -\ncornell .\nthank you .\nbbo\n- mugl 1 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.760+0000", "entityId": 8184, "properties": {"text": "Subject: allocations\nit is now official ! ! ! effective august 1 , 2000 , research is part of ena .\ncan you review the attached file and let me know if we need to update the\nallocation ? also , can you tell me which commercial teams in ena does\nresearch support ? if you have any questions , please call me at 5 - 7094 .\nthanx .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 08 / 17 / 2000 03 : 18 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 26 / 2000 01 : 12 pm\nto : becky pham / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : allocations\nbecky ,\nplease , take a look at the allocations sheet .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.765+0000", "entityId": 8185, "properties": {"text": "Subject: colorado\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 08 / 17 / 2000\n11 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : samer takriti @ enron communications on 08 / 17 / 2000 10 : 57 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : colorado\nstinson ,\ni prefer to skip the trip . as i said , it would feel a little uncomofortable\nand strange . thanks though .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.770+0000", "entityId": 8186, "properties": {"text": "Subject: re : full version\ni read the chapter . generally ,\ni like it , and find it non - controversial\nand well written . of course , this is\na huge topic and there are things\nthat you haven ' t discussed .\ni thought the amount of attention\npaid to ols and mle estimation\nwas a bit overboard , given that you\ndidn ' t really exploit it in your\nresults . if you were to state\nthe likelihood function for\nthe garch model , it might justify\nthe amount of attention to\ngave to estimation for\nsimple iid processes , which could then\nbe thought of as a simple lead - in\nand intuition builder to\nthe more interesting models that\nyou do actually use .\nby the way , in your discussion of\nsmiles , you discuss fat tails\nextensively . at least for equity markets ,\nwhile fat tails contribute , they don ' t do very\nmuch at all compared to the effect\nof risk premia , which you allude to briefly ,\nusing supply - demand language , at the\nend of that section .\nfor the impact of risk premia , see\njun pan ' s paper , which is available\nfrom her web page . but she covers\nonly sp 500 , ( as do most studies ) ,\nand your markets are obviously much different .\nthe chapter will be a good service to your readers !\nbest , darrell\n> x - lotus - fromdomain : ect\n> from : \" vince j kaminski \"\n> to : darrell duffie\n> cc : \" grant masson \" , \" vince j kaminski \"\n> date : wed , 16 aug 2000 16 : 37 : 53 - 0500\n> subject : re : full version\n> mime - version : 1 . 0\n> content - disposition : inline\n> x - uidl : 00453 eda 98 c 82 d 709 e 6123 af 537 e 4 f 63\n> x - keywords :\n>\n>\n>\n> darrell ,\n>\n> thanks a lot . i really appreciate it . the text is below our usual\n> standards but we are completely swamped with work here .\n>\n> vince\n>\n>\n>\n>\n>\n>\n>\n> darrell duffie on 08 / 15 / 2000 04 : 54 : 23 pm\n>\n> please respond to darrell duffie\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : full version\n>\n>\n> i ' ll have a look !\n>\n> i haven ' t much time , but can certainly\n> get you a quick reaction , at least !\n>\n> best , darrell\n>\n>\n> > x - lotus - fromdomain : ect\n> > from : \" vince j kaminski \"\n> > to : duffie @ stanford . edu\n> > date : thu , 10 aug 2000 14 : 04 : 47 - 0500\n> > subject : full version\n> > mime - version : 1 . 0\n> > content - disposition : inline\n> > x - uidl : 9 fef 7462 afa 5 d 4 ee 6 co 4 c 9 co 2 df 71 b 25\n> > x - keywords :\n> >\n> >\n> >\n> > darrell ,\n> >\n> > grant just alerted me that i sent you only part of the text .\n> >\n> > here is the full chapter with an aged version of gran ' t part .\n> > what i sent you represents an update of his contribution .\n> >\n> > sorry for that .\n> >\n> > vince\n> >\n> > ( see attached file : volo 720 . doc )\n>\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> darrell duffie\n> mail gsb stanford ca 94305 - 5015 usa\n> phone 650 723 1976\n> fax 650 725 7979\n> email duffie @ stanford . edu\n> web http : / / www . stanford . edu / ~ duffie /\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n>\n>\n>\n>\n>\n>\n>\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.774+0000", "entityId": 8187, "properties": {"text": "Subject: chapter 3\nvince and grant ,\n?\ncan you please send us your excel spreadsheets that were used for generated\nthe graphs ? ? we will need to edit them so that they will look like the\ngraphs in the rest of the book .\n?\nvince , when you send us your half , will you please provide us with the\nreferences and footnotes ?\n?\ngrant , thanks for your half .\n?\nlook forward to hearing from you soon ,\nthanks ,\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.779+0000", "entityId": 8188, "properties": {"text": "Subject: re : telephone interview with the houston research group\ndear dr . kaminski\ni am sorry i missed your phone call today . i was waiting for your call until\n7 : 50 am ( australia time ) this morning . my mother - in - law told me you ringed\nme at 8 : 05 . i guess we made a mistake at the time difference . i promise i\nwon ' t leave home tomorrow until i receive your call .\nyour faithfully\nquentin\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nquentin kerr , email : qkerr @ maths . uq . edu . au\nroom : 67 - 625 tel : ( 07 ) 33461428\ndepartment of mathematics , the university of queensland\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\nsent : tuesday , 15 august 2000 2 : 09\nsubject : re : telephone interview with the houston research group\n>\n> hi quentin :\n>\n> i have scheduled the interview for 7 : 00 am , thursday , august 17 ( your time\n> 5 : 00 pm wednesday , august 16 , our time ) . they will call you at your home ,\n> 011 - 61 - 7 - 38798780 .\n>\n> regards ,\n>\n> shirley crenshaw\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.784+0000", "entityId": 8189, "properties": {"text": "Subject: special epri mtg on ancillary services\ndear dr . kaminski ,\nthanks for your email address . would like to invite you or others from enron\nto our one - day planning meeting in houston , sept . 7 , to review state of the\nart assessment of ancillary services markets , hear preliminary research on\nrelated topics , and help define a course of research that epri could\nundertake .\nhere is one of our announcements . pls feel free to call with any questions .\n- - jeremy platt\n> re . ancillary services markets and management - -\n> changing market structures , pricing , settlement , operational and\n> cost issues\n>\n> epri has organized a workshop on ancillary services markets and management\n> issues , to be held september 7 in houston . file attached .\n>\n> dr . rajat deb , pres . of lcg consulting , is our featured\n> speaker / investigator . additional experts contributing to this special\n> workshop are :\n> * andy van horn , van horn consulting\n> * phillip mcleod , mhb consultants\n> * jens kure - jensen , encotech , and\n> * carl pechman , power economics\n>\n> >\n> this workshop is part of a program of epri research on ancillary services\n> markets and management topics . * you or your colleagues are welcome to\n> attend and contribute to the discussions . the workshop is timely , offers\n> unique content , and will help shape future work of value . we encourage you\n> to register promptly . please call me if you have any questions .\n>\n> if you are unable to attend or feel someone else in the company may have a\n> more direct responsibilty , please forward this note . thanks ,\n>\n> jeremy platt\n> manager , power and fuel markets\n> 650 / 855 - 2628\n>\n> dale gray\n> manager , generation asset management\n> 704 - 547 - 6016\n>\n> * background on epri research on ancillary services . epri , known formerly\n> as the electric power research institute , offers research on a wide range\n> of energy , technology , environmental and business / market topics . epri ' s\n> 2000 research on a / s is value package 64 . 3 , strategic value and\n> measurement of ancillary services . this value package is part of a larger\n> program of research ( a \" target \" ) , called understanding power and fuel\n> markets and generation response . other 2000 ancillary services projects\n> underway are : a report on markets and pricing ( now in preparation ) and a\n> demonstration this fall of measurement procedures at a generating site for\n> reactive supply and voltage control and for spinning and supplemental\n> reserves .\n>\n>\n>\n>\n- ancillary - wkshp . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.789+0000", "entityId": 8190, "properties": {"text": "Subject: professor bambos ' visit\nshirley :\nprofessor bambos has the following appointments :\njim fallon 9 : 00 am - 9 : 30 am per fallon ' s assistant lucy marshall - ext .\n34525\njohn echols 2 : 00 pm - 2 : 30 pm per echols ' assistant jo olsovsky - ext . 58064\nenron tour 2 : 30 pm - 3 : 30 pm per courtney votaw - ext . 39390\nanita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.793+0000", "entityId": 8191, "properties": {"text": "Subject: organisational announcement\nwe are pleased to announce that we have appointed michael brown as chief\noperating officer of enron europe .\nmichael joined enron \u0001 , s london legal department in 1995 and has played a key\nrole in the success of many of our large commercial ventures since then . in\njuly 1999 , he was made enron europe \u0001 , s general counsel . replacing michael in\nthe general counsel role will be mark evans who joined our legal department\nin 1995 .\nplease join us in congratulating michael and mark in their new roles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.798+0000", "entityId": 8192, "properties": {"text": "Subject: re : alex ' s paper\ncomments :\n1 . in the sentence between eqn . 3 and eqn . 4 , i think \" annualized\nvolatility \" should replace \" annualized standard deviation . \"\n2 . as to the comment , \" immediately we see something quite\ncounter - intuitive . \" i would disagree . i think that its quite intuitive\nthat this model should get closer to the black - scholes price as what is\ndefined as the \" jump \" component becomes just part of the main price\ndistribution , which happens if we define a jump to be only a 1 - sigma\nevent . the table does show , however , that the results of using this model\nare very sensitive to exactly how you choose to define a \" jump \" ( i . e . 2 - sigma\nor 3 - sigma . . . events ) , and this is one difficulty in using the model in\npractice .\n3 . in the paragraph after the table , i don ' t understand the argument about\nhedging the option . especially about buying a swap which would pay on the\ndifference between the strike and fs . this seems non - sensical .\n4 . i could not follow the logic of the last two sentences of the article , so\nthis point should probably be explained more clearly .\n- - stinson\nvince j kaminski\n08 / 18 / 2000 08 : 15 am\nto : grant masson / hou / ect @ ect , stinson gibner / hou / ect @ ect , alex\nhuang / corp / enron @ enron\ncc :\nsubject : alex ' s paper\nminor changes i made to alex ' s paper .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.802+0000", "entityId": 8193, "properties": {"text": "Subject: re : fw : citi , wells , enron , sl and i 2 form a b 2 b venture\nwicke ,\nthanks for a prompt reply . i am not planning any particular trip to houston\nyet . for the time being , i am about to leave for london , and then poland . i\nwill most likely be at the olympics in sydney in late september , and in ny\nin early october . mid - october could be the first realistic opportunity to\nvisit with enron , although i am looking forward to seeing you sooner in palo\nalto . i am simply curious whether and how we could leverage together core\ncompetencies and connectivity that both our companies seem to have or are\ndeveloping .\ni am senior vice president for visa usa , responsible for strategy and\nplanning . i would probably bring with me ( though i haven ' t discuss it yet )\npeople in charge of our network or / and our coo .\nbest ,\nandrzej\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , august 18 , 2000 6 : 24 am\nto : lubowski , andrzej\ncc : vince . j . kaminski @ enron . com\nsubject : re : fw : citi , wells , enron , sl and i 2 form a b 2 b venture\nandrzej ,\nthanks . please , send me the information about the dates\nwhen you plan to visit houston . also , the information about\nyour position / title / responsibilities ( as well as the info\nabout the other members of your team ) would be useful .\ni shall be in the bay area between the 10 th and the 20 th of october .\nhope to see your then .\nwicek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.808+0000", "entityId": 8194, "properties": {"text": "Subject: my new email address\nhello -\nplease note that i have a new email address :\nalamonsoff @ riskwaters . com\n?\nalso , if you have not already submitted a copy of your presentation for the\nfinancial mathematics training course , please let me know the status asap\nand if you are planning either to bring copies with you to the course or if\nyou will be submitting a copy to me . if you plan on bringing copies , please\nnote to bring 40 copies .\n?\n?\nregards ,\namy lamonsoff\ntraining course coordinator", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.813+0000", "entityId": 8195, "properties": {"text": "Subject: new book out : theory of financial risks\ndear colleague ,\nyou have recently downloaded a draft version of our book ,\nwe are pleased to announce that it is now available in print :\n* * * theory of financial risks * * *\n> from statistical physics to risk management\nby jean - philippe bouchaud ( commissariat a l ' energie atomique , saclay )\nand marc potters ( science & finance )\ncambridge university press ( 2000 )\nisbn 0 521 78232 5\nthe book is available in bookstores in europe and should be\navailable before october in the rest of the world . you can find out\nmore about it , including links to order it on - line , on our web site :\nhttp : / / www . science - finance . fr / book . html\nwe wish you a pleasant reading ,\nsincerely ,\njean - philippe bouchaud\nand marc potters\n- -\nscience & finance - - capital fund management\n109 - 111 rue victor hugo | book @ science - finance . fr\n92532 levallois | tel : + 33 . 1 . 41 . 27 . 91 . 11\nfrance | fax : + 33 . 1 . 47 . 39 . 04 . 47", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.818+0000", "entityId": 8196, "properties": {"text": "Subject: hello guys\nvince and stinson ,\njust got a copy of the attached paper and thought it may have some interest\nfor you guys .\non another note , i am putting together a workshop in the spring on the new\neconomy and business education and will be seeking out some enron network\npeople to join in the discussion ( 2 - hours on friday march 2 nd ) . i ' ll let\nyou know more as we work through the details . the idea is to \" brainstorm \"\nabout the new world you guys work in every day and its implications for\nwhat we should be doing . hope this is interesting to you and that you ' ll\nwant to spend the day with us .\ntake care and enjoy the weekend .\njohn\n- risk . pdf\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.827+0000", "entityId": 8197, "properties": {"text": "Subject: invitation - wharton et events\nmark ,\nfyi .\nwhat about going to wharton in october to attend the e - commerce conference ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 18 / 2000\n11 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntomczyk @ wharton . upenn . edu ( michael tomczyk ) on 08 / 15 / 2000 01 : 37 : 34 pm\nto : vkamins @ enron . com\ncc : thomas . piazze @ wharton . upenn . edu\nsubject : invitation - wharton et events\nvince hello ,\ni just wanted to followup up on our meeting at wharton and let you know\nthat there are two upcoming events that you may want to attend - or\ndesignate others from enron to attend . both of these events are good\nopportunities to \" test drive \" the emerging technologies program and see if\nthere is an interest in joining our partner group .\nseptember 8 - what next on the internet ?\nour next insight - building event will be held at wharton on friday ,\nseptember 8 and is entitled \" what next on the internet ? \"\nthis is primarily a wharton faculty event and we will be exploring 3 areas :\n1 ) the new economics on the web , 2 ) internet , anywhere , and 3 )\nimplications for ( academic ) research and education . speakers will include\njay walker ( priceline . com ) , david farber ( chief technologist at the fcc )\nand mohan sawhney ( kellog univ . , one of the nation ' s thought leaders on\ne - commerce ) , along with several senior wharton faculty members .\nthere will be considerable discussion on how the next generation of the\ninternet will evolve and the implications for management and management\nresearch . we are inviting our industry partners to join us at this event ,\nand participate in the discussion , which should contain some valuable\ninsights and also provides an opportunity to help set our research agenda .\nyou are most welcome to participate , or designate a colleague , if you like .\noctober 19 & 20 - winners & losers in the e - commerce shakeout\nthis will be a major impact conference to explore the coming internet\nshakeout , and apply some of the traditional shakeout measures to e - commerce\nand try to determine what we can expect . it should be an intriguing day .\nif you plan to attend please rsvp early since we are sure to be\n\" overbooked \" for this event . this is probably the best showcase for our\ninsight - building activities , if you would like to invite any colleagues\nhelp determine if it makes sense for enron to become a partner in the et\nprogram .\nif you ' d like to rsvp for you and any colleagues who would like to attend\none or both of the events described above , send me an email reply and i ' ll\nsend you a more detailed agenda and speaker description , etc .\ni ' ll be on vacation the rest of this week but if you have any questions or\ncomments you can call or email me next week .\nbest regards ,\nmichael\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.834+0000", "entityId": 8198, "properties": {"text": "Subject: cal berkeley recruiting\ncongratulations ! ! !\nyou have been nominated to join the cal berkeley campus team . beginning this\nfall , enron will head to the university of california at berkeley for the\nfirst time ! in addition to traditional analyst recruiting focusing on\nfinance , economics , and business majors , the analyst program will add a new\naddition to it ' s rotational program - the global technology track . the\nglobal technology track will provide a pipeline for mis , computer science and\nengineering majors to join enron and rotate within enron net works and ebs\ntechnology functions . therefore , we would like to create a recruiting team\nthat represents all aspects of enron including both it and business \" swat\nteams \" to help attack campus during career fairs , presentations , dinners , and\nother events searching for the ideal candidate .\nin the next week you will receive an invitation to the cal berkeley planning\nsession and kickoff . at that time we will review strategies , profiles , and\nevents to ensure that enron is able to attract the top candidates ! please\nmake every effort to attend .\nif you have any questions , please do not hesitate to contact me at 3 - 3589 .\nthanks ,\nashley baxter\nglobal technology track\nrecruiter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.838+0000", "entityId": 8199, "properties": {"text": "Subject: promotion for martin lin\nsheila ,\na reminder about promoting martin lin from associate to manager . do we have\nany leeway on his salary adjustment ? he is currently at 81 k , and i\nunderstand that his new salary can be made retroactive to aug . 1 , 2000 .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.843+0000", "entityId": 8200, "properties": {"text": "Subject: extreme value theory applied to weathet\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christian werner / enron _ development on\n19 / 08 / 2000 10 : 06 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristian werner on 19 / 08 / 2000 02 : 08 : 56\nto : vince . kaminski @ enron . com\ncc :\nsubject : extreme value theory applied to weather\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christian werner / enron _ development on\n19 / 08 / 2000 01 : 15 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristian werner on 19 / 08 / 2000 01 : 55 : 56\nto : vkamins @ enron . com\ncc :\nsubject : extreme value theory applied to weather\ndear vince ,\nback in july , when you visited our sydney office you mentioned extreme value\ntheory . i am wondering whether research is looking into the application\nof extreme value theory to power and esp . to weather . in a recent news\narticle it was highlighted that a trend in the industry towards t _ max , t _ min ,\netc .\ni am in particular referring to the news article below :\nin the past we have observed a similar trend where customers are asking for\nt _ max , t _ min , or below or above precipitation structures . the choice in the\npast has been the burn analysis on historical data . however , we are in\nparticular interested in the extreme events , and the application of evt could\nprovide a meaningful tool for the analysis .\nhas the research group looked into the application of evt to weather ? evt has\na long history of application in hydrology ( which would cover parts\nof the precipitation structures . . . ) . also , research ( esp . at eth in zuerich )\nis indicating the application of evt to v @ r . . . .\nthank you !\nregards ,\nchristian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.848+0000", "entityId": 8201, "properties": {"text": "Subject: re : invitation - wharton et events\ni agree . if you are going to send an rsvp , i suggest it be you , me , and\nchristie patrick . if any of us drop out , we ' ll be able to fill the space .\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.852+0000", "entityId": 8202, "properties": {"text": "Subject: sas online tutorial\nhi -\nwe have access to the sas online tutorial for the next 30 days . point your\nbrowser to\nand use the username \" enron \" and password \" enron \" to enter .\nthe way this product works is designed for a single user ( it sets a \" cookie \"\nallowing you to \" resume \" your place in the tutorial when you re - enter . )\nsince several of us may use it , we ' ll need to work around this , each of us\nremembering where we were before and recreating any sample data sets , etc\nnecessary for the lesson in progress .\nclayton\nps the module eis / olap will be a part of our installation next month , but is\nnot currently available\npps please remember to use your local browser to browse the sas online\ndocumentation . invoking a browser on the unix server is inefficient .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.857+0000", "entityId": 8203, "properties": {"text": "Subject: request submitted : access request ( scrw - 4 n 9 s 2 f )\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 21 / 2000\n01 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ninformation risk management\n08 / 16 / 2000 03 : 34 pm\nsent by : shirley crenshaw\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : request submitted : access request ( scrw - 4 n 9 s 2 f )\nthank you for your request .\nyou will be notified via email when your request has been processed . you can\ncheck the progress of your request by doing one of the following :\nin the srrs application , click on requests i have made . a listing of recent\nrequests will be appear sorted by resource name .\nclick on the request link below . this is a link to information regarding your\nrequest .\nbelow is a summary of your request .\nrequested for : vince j kaminski / hou / ect\nrequest date : 8 / 16 / 2000 3 : 32 : 19 pm\nrequest type : update access\nrequest link :\nrequested resources\ncomet\ngrms ( global risk management system )\nunlisted application / software\nif you have any questions , please contact information risk management at 35536", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.861+0000", "entityId": 8204, "properties": {"text": "Subject: t . v .\nplease what ' s the ststus ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 08 / 21 / 2000 11 : 27\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n08 / 08 / 2000 11 : 08 am\nto : darren p adamik / hou / ect @ ect , mike a roberts / hou / ect @ ect , william\nsmith / corp / enron @ enron , vince j kaminski / hou / ect @ ect\ncc :\nsubject : t . v .\nwe are in need of a 9 inch t . v . set .\nthe set will be located betweeneb 3240 e and\neb 3240 f .\nr . c . # 100038\nco . # 0011\nplease if any more information is needed\nplease call me x 34710 .\nalso please provide e . t . a .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.865+0000", "entityId": 8205, "properties": {"text": "Subject: great thanks so much re : avg . monthly electricity prices\ni appreciate all your great help . . . merci beaucoup margaret carson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.870+0000", "entityId": 8206, "properties": {"text": "Subject: long - term volatility curves\ngrant ,\ncan research in houston put together a comparison of the long - term volatility\ncurves for gas and power in north america and europe ? based on where europe\nis marked ( especially for the uk ) , i think we ' ll find a significant\ndifference out beyond 10 years . fundamentally , it seems like the long - term\nvol should be similar for a given commodity regardless of geographic location .\nhas research done any work on this in the past ? if not , we should study this\nsince long - term vol feeds into the var - based position limits .\ngive me a call so we can discuss .\nthanks\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.875+0000", "entityId": 8207, "properties": {"text": "Subject: li sun\nvince ,\nthanks for your response . apparently , we were under the incorrect impression\nthat your group would be taking li ( based on jeff ' s note below ) . we\napologize for not contacting you last friday to confirm prior to \" placing \" li\nin your group . i have faxed li ' s resume to you and hope that you will have\ntime to review it today . please call me back as soon as you can to discuss\nli ' s opportunities in your group .\nif vince is not interested in li for his group , we will consider li placed in\nena - gas trading ( original placement ) in john lavorato ' s organization . once\ni hear from vince one way or the other , the program will consider li ' s\nplacement final in either research or ena - gas trading . hopefully this will\nbe resolved by tuesday morning so that we may communicate to li her rotation\ninformation . if you have any questions , please let me know .\nthank you !\nvince j kaminski\n08 / 21 / 2000 01 : 03 pm\nto : jana giovannini / hou / ect @ ect\ncc :\nsubject : re : vikas dwivedi\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 21 / 2000\n01 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 21 / 2000 12 : 58 pm\nto : shelly butler / hou / ect @ ect\ncc : john j lavorato / corp / enron @ enron , jeffrey a shankman / hou / ect @ ect , hunter\ns shively / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : vikas dwivedi\nshelly ,\ni shall not accept anybody for a rotation without a prior interview .\nli was scheduled to meet with me last thursday but she never showed\nup . she did not call to cancel or to apologize for not showing up .\ni have not seen her resume .\nplease , assume she is not rotating into my group till further notice .\nvince\nfrom : shelly butler 08 / 18 / 2000 03 : 37 pm\nto : jeffrey a shankman / hou / ect @ ect\ncc : hunter s shively / hou / ect @ ect , john j lavorato / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , craig breslau / hou / ect @ ect , ina rangel / hou / ect @ ect\nsubject : vikas dwivedi\njeff ,\njust wanted to confirm that li will be placed in vince kaminski ' s group .\nvikas has been placed in ena middle market reporting to craig breslau .\nplease contact me at 3 - 4584 if you have any questions . thanks for your help ! !\nshelly\nfrom : jeffrey a shankman 08 / 18 / 2000 03 : 18 pm\nto : shelly butler / hou / ect @ ect\ncc : hunter s shively / hou / ect @ ect , john j lavorato / corp / enron @ enron\nsubject :\nshelly ,\nhunter spoke with li today and agrees that her first rotation should be in\nvince ' s group doing modelling , etc . this will give her the broadest\nexperience for a first rotation . i ' m sure the other person in question ,\nvikas , will do very well in hunter ' s group .\nthanks for your help .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.879+0000", "entityId": 8208, "properties": {"text": "Subject: colored printer taj mahal\nhello everyone .\nthis memo only applies to the research group on the 19 th floor that use\nthe colored printer \" taj mahal \" .\nvince has requested that i ask each of you to only use the colored printer\n\" taj mahal \" for presentations , newsletters , etc . that require at least 90 %\nof color . these cartridges are very expensive and several times we have\npicked up a copy of something that only had color on the first page and it\nwould be maybe 15 - 20 pages long . this is not cost effective .\nif you have something that has color on the first page , but not on the rest\nof the presentation , then please just print the first page on the color\nprinter\nand the rest on \" bandit \" or \" wagon \" .\nyour help will be greatly appreciated !\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.884+0000", "entityId": 8209, "properties": {"text": "Subject: please note that my email address has been changed to : jhanley @ riskwaters . com\nplease update your address books .\nthanks .\njoel .\ndirect : + 44 ( 0 ) 20 7484 9885\nwww . riskwaters . com\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.890+0000", "entityId": 8210, "properties": {"text": "Subject: tff 2001 meeting date question\nhello from texas ,\nwe are trying to set up our meeting date for the 2001 conference and have run\ninto a snag . we cannot get our san antonio hotel on the first weekend in\napril ( as last year ) . however , we can get the hotel and make all our \" fun \"\narrangements for the second weekend in april . however , this is easter\nweekend . the good news is that the room rates are substantially lower\nbecause it ' s a holiday . however , we are concerned that holding the meeting\non this particular friday - saturday will interfere with family plans such that\nsome or many of you may not be able to attend .\nmy related question to you is this :\ndoes holding the meeting on the second weekend in april ( easter weekend ) pose\na problem for you ? please give us your thoughts asap even if you think you\nmay not be able to attend this year ' s conference . we need your opinion to\nguide our decision .\nthanks and i hope to see you all again next april ( sometime ) !\njohn\np . s . we are very fortunate to have enron return as our corporate sponsor\nagain this year .\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.895+0000", "entityId": 8211, "properties": {"text": "Subject: re : hello guys\njohn ,\nthanks . i have reserved march the 2 nd for the meeting .\nvince\n\" john d . martin \" on 08 / 18 / 2000 02 : 02 : 31 pm\nto : vkamins @ enron . com , sgibner @ ect . enron . com\ncc :\nsubject : hello guys\nvince and stinson ,\njust got a copy of the attached paper and thought it may have some interest\nfor you guys .\non another note , i am putting together a workshop in the spring on the new\neconomy and business education and will be seeking out some enron network\npeople to join in the discussion ( 2 - hours on friday march 2 nd ) . i ' ll let\nyou know more as we work through the details . the idea is to \" brainstorm \"\nabout the new world you guys work in every day and its implications for\nwhat we should be doing . hope this is interesting to you and that you ' ll\nwant to spend the day with us .\ntake care and enjoy the weekend .\njohn\n- risk . pdf\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.901+0000", "entityId": 8212, "properties": {"text": "Subject: re : white wall board\nanita ,\nno problem .\nvince\nanita dupont @ enron\n08 / 18 / 2000 10 : 27 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : white wall board\nshirely :\namitava wants one of those wall size white marker boards for his office . how\ndo i go about ordering one of those ? anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.906+0000", "entityId": 8213, "properties": {"text": "Subject: computer - new location\nhello ,\ni need a computer and flat screen moved .\nthe location is eb 3240 e .\nonly - one computer and a flat screen needs to be moved to eb 3240 g .\nthe remaining flat screens should stay at the location eb 3240 e .\nr . c . 107043 - co . # 0413\nthanks\nkevin moore\nplease if at all possible let me know when this should take place .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.910+0000", "entityId": 8214, "properties": {"text": "Subject: rab graph\ni believe this will be helpful in your analysis .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael anderson / hou / azurix on 08 / 22 / 2000\n08 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : keith harris / wsx / azurix @ exchange on 08 / 03 / 2000 01 : 40 pm gdt\nto : michael anderson / hou / azurix @ azurix\ncc : colin skellett / wsx / azurix @ exchange\nsubject : fw : amended index graph\nmichael\ni have got csfb working on the amendment you asked for .\nin the meantime we have produced a graph which shows , as indices , market\nvalues of the water companies and the rab of the industry since\nprivatisation . the following points come out\n1 market values overtime have been 1 . 1 x rab\n2 the result is significantly skewed by the period between mid 1997 and end\n1998 when the ratio was cl . 5 x .\n3 the premium to rab is only found at a time when political uncertainty has\nbeen removed the companies are able to outperform the regulatory deal\nsignificantly . those days are gone - a fact witnessed by the decline in\nshare prices in the last year\njust to note that the graph we have produced here is a weighted average of\nwater companies - whereas the figures we did yesterday on the rab market\nvalue ratio is a straight average . obviously that influences the numbers a\nlittle .\non customerco . csfb have contacted around 7 energy companies . the result\nhas been positive and they are prepared to enter our journal exercise . i\nawait a revised fee proposal but csfb have been advised that it should be\nmore modest than the last one !\nkeith\n- - - - - original message - - - - -\nfrom : david kitchener\nsent : 03 august 2000 13 : 27\nto : keith harris\nsubject : amended index graph", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.916+0000", "entityId": 8215, "properties": {"text": "Subject: avg . monthly electricity prices for the past 13 months\nmargaret ,\nplease find attached file with average monthly prices for regions your\nrequested . this file gives more information than the previous ( yesterday )\none . as the one before , source for this file is megawatt daily , it includes\non - peak and off - peak prices and you can also see daily data that was\nconverted to monthly average data . there are two types of averages prices :\naverage and weighted average . weighted average takes into account number of\ntransactions of certain price .\nfor example : pjm had average price of $ 53 . 61 and weighted average price of\n$ 53 . 15 in august , it means that there were more transactions of lower price\nthan higher . also , megawatt daily has its own methodology and i am attaching\nit with this message .\nif you have any questions regarding prices or methodology , please contact\nsevil yaman ( 5 - 8083 ) or me ( 3 - 4305 ) .\nsincerely , elena\nenron research group\n3 - 4305", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.923+0000", "entityId": 8216, "properties": {"text": "Subject: seeking intelligent insight\nit looks to me like the market for distributed computing will displace heavy\niron within the next several years . the structure is still very early in its\ndevelopment , but i think there will be commercial opportunities for enron in\nbandwidth and electricity . i would be interested to know what issues you two\nwould see as the greatest hinderences and possibilities for these markets .\nif you would like , please feel free to comment on the attached documents .\nthanks ,\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.931+0000", "entityId": 8217, "properties": {"text": "Subject: li sun\ni ' ve asked vince to get involved with you about getting li into vince ' s\ngroup . this issue needs to be resolved by week ' s end - - we look like we don ' t\nhave our act together , and that bothers me . especially since we are about to\nmake a significant monetary investment at wharton , and we could have a new\nwharton recruit disgruntled .\nvince , can you set up a meeting with you , me and mark palmer to follow up\nwith our meeting with skilling ? thanks very much . . .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.937+0000", "entityId": 8218, "properties": {"text": "Subject: re : li sun\njeff ,\nno problem . we shall invite her for an interview . a / a programs has real\nproblems with logistics .\nvince\nfrom : jeffrey a shankman 08 / 22 / 2000 05 : 11 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : li sun\nhi vince , i ' m over in london so i ' m sorry for not calling this morning . i\nmet li last year and at wharton . i ' m sorry the a / a program did not contact\nyou earlier as they were supposed to . li is a great modeller and would love\nto work in your group . thanks for taking care of her . i ' ll be in touch\nlater . jeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.941+0000", "entityId": 8219, "properties": {"text": "Subject: re : improving option valuation precision in erms\nstinson ,\nzhiyong wei ' s group will need to make this change . please follow up with\nzhiyong and jeremy wong .\n- - allan .\nstinson gibner\n08 / 23 / 2000 09 : 54 am\nto : allan severude / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , paulo issler / hou / ect @ ect , eric\nmoon / hou / ect @ ect , ed mcmichael / hou / ect @ ect , zimin lu / hou / ect @ ect\nsubject : improving option valuation precision in erms\nallan ,\npaulo issler in our group , working with eric moon in structuring , recently\ntracked down the reason for a slight mis - match in option pricing in erms vs .\nthe structuring spreadsheets . it is due to the fact that the option\nvaluation functions in erms use a slightly less accurate approximation for\nthe cumulative normal distribution . we would be happy to work with the right\nperson to update the erms code in order to close this discrepancy . please\nlet me know how you would like to proceed .\nif you are not the correct person to address the mainenance of erms , please\nlet me know who to contact .\nthank you ,\nstinson gibner\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.946+0000", "entityId": 8220, "properties": {"text": "Subject: azuix deal valuation\nbob ,\nplease find the price sample simulator , and run different scenarios with\ndifferent trend assumptions .\nvince and stinson ,\nbob and i will show you some results by the end of the day .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.950+0000", "entityId": 8221, "properties": {"text": "Subject: improving option valuation precision in erms\nallan ,\npaulo issler in our group , working with eric moon in structuring , recently\ntracked down the reason for a slight mis - match in option pricing in erms vs .\nthe structuring spreadsheets . it is due to the fact that the option\nvaluation functions in erms use a slightly less accurate approximation for\nthe cumulative normal distribution . we would be happy to work with the right\nperson to update the erms code in order to close this discrepancy . please\nlet me know how you would like to proceed .\nif you are not the correct person to address the mainenance of erms , please\nlet me know who to contact .\nthank you ,\nstinson gibner\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.954+0000", "entityId": 8222, "properties": {"text": "Subject: re : seeking intelligent insight\nplease . my only risk is potnetial embarrassment .\nthanks ,\nmark\nvince j kaminski\n08 / 22 / 2000 02 : 47 pm\nto : mark lay / hou / ect @ ect\ncc :\nsubject : re : seeking intelligent insight\nmark ,\ni fully agree with you regarding general trends . i see great progress in\nsoftware\napplications that facilitate the process and make it almost painless to the\nend - user .\nwith you permission , i can show the material you sent me to my son , who\nstudies\ncomputer science , and ask him for his view .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.959+0000", "entityId": 8223, "properties": {"text": "Subject: propane prices\nvince ,\nplease find attached file with propane price statistics . there are two kinds\nof data : ( 1 ) prompt month futures prices , no location specified , starting\nfrom 1987 ; ( 2 ) index prices for different locations ( north sea , venezuela and\nsaudi arabia ) , starting 1988 . source of both is platts publications .\nplease notice that price of futures in given in us cents / gallon , and index\nprices in usd / mt .\nsincerely , elena", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.964+0000", "entityId": 8224, "properties": {"text": "Subject: re : extreme value theory applied to weathet\ndear vince and grant ,\ni am currently reviewing some of the more erecent references on evt and its\napplication . i get back to you shortly with some points regarding the\nusefulness of evt and how traders ( electricity and weather ) can benefit from\nevt .\ncheers ,\nchristian\nto : christian werner / enron _ development @ enron _ development\ncc :\nsubject : re : extreme value theory applied to weathet\nchristian :\nto my knowledge , the research group is examining evt primarily in the context\nof value at risk calculations . we have not looked at evt for power , because ,\nto date , we have been focussing on shorter term fundamental forecasting of\nprice excursions : i . e . given tomorrow ' s load forecasts and expected plant\ndispatch , we attempt to predict which lines will become constrained and how\nthe system will react to alleviate these constraints . i would be interested\nin your thoughts on how evt would benefit the traders however . as far as the\nweather goes , i would expect the weather desk to use evt at some level .\nclearly you should talk to joe hrgovcic , the researhc chap attached to the\nweather desk , for a more accurate assessment .\ncheers ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.968+0000", "entityId": 8225, "properties": {"text": "Subject: organizational announcement - introducing enron industrial markets\nwe are pleased to announce the creation of a new business unit \u0001 ) enron\nindustrial markets \u0001 ) within our wholesale energy business . enron industrial\nmarkets will be responsible for leading all worldwide business activities in\nthe paper , pulp , lumber , and steel markets , including trading , origination\nand energy outsourcing activities .\nenron industrial markets is being created to accelerate the growth of enron\nnorth america \u0001 , s existing paper , pulp , & lumber business and to establish and\ngrow a new business in the steel market . the formation of enron industrial\nmarkets will allow the enron north america and enron europe management to\ncontinue to focus its efforts on the aggressive expansion of our core gas and\nelectricity business . as a standalone business unit , enron industrial\nmarkets can accelerate the growth of the paper , pulp & lumber and steel\nbusinesses into major contributor \u0001 , s to enron \u0001 , s overall growth and , working\nclosely with enron networks , position enron as the leader in the\ntransformation of these industries into new economy markets .\nenron industrial markets will be headed by jeff mcmahon , president and chief\nexecutive officer , and ray bowen , chief operating officer . they will report\nto mark frevert who will be chairman of enron industrial markets . mark ,\njeff , and ray will comprise the office of the chairman for enron industrial\nmarkets .\nincluded in this new business unit and reporting to the office of the\nchairman will be the following individuals and their respective groups :\npulp , paper , & lumber origination bryan burnett\npulp , paper & lumber trading bob crane\nsteel trading greg hermans\ntransaction development rodney malcolm\nenron industrial markets has established an operating group to manage the\noperations of physical assets . this unit will temporarily report to the\nenron industrial markets office of the chairman .\ncoincident with the establishment of enron industrial markets , all energy\noutsourcing activities associated with industries other than paper , pulp ,\nlumber and steel will be the responsibility of enron energy services .\nwith jeff mcmahon \u0001 , s departure from enron networks , louise kitchen will assume\nthe role of president and chief operating officer .\nplease join us in congratulating these individuals for their new roles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.972+0000", "entityId": 8226, "properties": {"text": "Subject: letter for lloyd\nshirley ,\nplease , add the date at the right place .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.977+0000", "entityId": 8227, "properties": {"text": "Subject: re : recovery plan\nit would be funny if it were not quite so close to the truth !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.982+0000", "entityId": 8228, "properties": {"text": "Subject: re : follow - up interview on 8 / 21 / 00\nrabi ,\nthanks for your message .\neverybody who interviewed you was greatly impressed with your technical\nskills and professional attitude .\nwe shall extend an offer to you within a day or two .\nvince\nrabi de on 08 / 22 / 2000 02 : 57 : 37 pm\nto : vince kaminsky\ncc :\nsubject : follow - up interview on 8 / 21 / 00\ndear dr . kaminsky :\nthank you very much for arranging the follow - up interview with your internal\nclients . i visited mr . ted murphy and his staff at rac and mr . dennis\nbenevides at ees yesterday . i was impressed with level of risk technology\nemployed by enron to achieve its business objectives . i want to reiterate my\nstrong interest in joining your group , which is held in very high esteem both\ninside and outside of enron . ? i look forward to hearing from you .\nsincerely ,\nrabi s . de\ndo you yahoo ! ?\nyahoo ! mail - free email you can access from anywhere !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.986+0000", "entityId": 8229, "properties": {"text": "Subject: re : tff 2001 meeting date question\nvince ,\ni certainly understand . however , we are going to try to move the date up a\nweek or two to make sure there are no conflicts for anyone . we ' ve had some\ntrouble getting our hotel date even this far in advance . i ' ll be back in\ntouch when we get it ironed out .\njohn\nat 05 : 42 pm 8 / 23 / 00 - 0500 , you wrote :\n>\n> john ,\n>\n> easter may not work for me because i shall most likely\n> be visiting my son who goes to school in california ( we were spending\n> easter together for the last three years ) .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" john d . martin \" on 08 / 21 / 2000 01 : 42 : 14 pm\n>\n> to : aagrawal @ cba . ua . edu , andres almazan ,\n> bethel @ babson . edu , murat binay ,\n> abutler @ finance . bus . lsu . edu , tyrone . callahan @ bus . utexas . edu , murray\n> carlson , chapman @ eco . utexas . edu , kent\n> daniel , fdiebold @ stern . nyu . edu ,\n> lederington @ ou . edu , harperl @ u . washington . edu , sgillan @ tiaa - cref . org ,\n> stuart gillan , denis gromb ,\n> grullon @ rice . edu , jarradh @ oregon . uoregon . edu , jhartzel @ stern . nyu . edu ,\n> jhund @ mail . utexas . edu , daveike @ rice . edu , jegadees @ uiuc . edu ,\n> cindy . justice @ enron . com , matthias kahl\n> , vince . j . kaminski @ enron . com ,\n> zkhokher @ mail . utexas . edu , alynch @ debit . stern . nyu . edu , andras marosi\n> , \" john d . martin \"\n> , maxwell @ ba . ttu . edu , beth miertschin\n> , metrick @ wharton . upenn . edu , \" thomas h .\n> noe \" , parrino @ mail . utexas . edu , bill\n> petty , manju puri ,\n> ramnath @ rice . edu , rampini @ nwu . edu , steve _ rich @ baylor . edu ,\n> eronn @ mail . utexas . edu ( ehud i . ronn ) , kemal saatcioglu\n> , akin sayrak ,\n> sirri @ babson . edu , laura starks ,\n> suarez @ cemfi . es , \" a . subrahmanyam \" ,\n> stice @ mailhost . tcs . tulane . edu , titman @ mail . utexas . edu ,\n> stathis . tompaidis @ bus . utexas . edu , wangfa @ rice . edu ,\n> hong . yan @ bus . utexas . edu , beth miertschin ,\n> gwillard @ mit . edu\n> cc :\n> subject : tff 2001 meeting date question\n>\n>\n> hello from texas ,\n>\n> we are trying to set up our meeting date for the 2001 conference and have\n> run into a snag . we cannot get our san antonio hotel on the first weekend\n> in april ( as last year ) . however , we can get the hotel and make all our\n> \" fun \" arrangements for the second weekend in april . however , this is\n> easter weekend . the good news is that the room rates are substantially\n> lower because it ' s a holiday . however , we are concerned that holding the\n> meeting on this particular friday - saturday will interfere with family plans\n> such that some or many of you may not be able to attend .\n>\n> my related question to you is this :\n>\n> does holding the meeting on the second weekend in april ( easter weekend )\n> pose a problem for you ? please give us your thoughts asap even if you\n> think you may not be able to attend this year ' s conference . we need your\n> opinion to guide our decision .\n>\n> thanks and i hope to see you all again next april ( sometime ) !\n>\n> john\n>\n> p . s . we are very fortunate to have enron return as our corporate sponsor\n> again this year .\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.991+0000", "entityId": 8230, "properties": {"text": "Subject: re : recruiting at carnegie - mellon\njohn ,\ni haven ' t received the invitation yet to the sep 13 th meeting .\ni shall contact you thursday regarding the cmu presentation .\nvince\njohn b gordon @ enron\n08 / 23 / 2000 05 : 01 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : recruiting at carnegie - mellon\nvince :\ni understand that you are the lead recruiter for cmu . as you know , i am the\nonly alum from that school in enron ' s associate program . i assume i will be\njoining you for our corporate presentation on 9 / 13 at 7 : 30 am . please let me\nknow what i can do to help prepare for this event . enron and gsia are a\ngreat fit , so i want this recruiting effort to go well .\nare you also giving a talk / lecture to the computational finance students ? if\nso , what time ? maybe we can schedule a lunch with duane seppi . i look\nforward to hearing from you .\njohn gordon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:43.996+0000", "entityId": 8231, "properties": {"text": "Subject: re : hello from vince kaminski at enron\ndear vince .\ni sent you a reply earlier this month but i haven ' t heard from you about the\ndate of your visit . our department has a seminar every monday . if you can\nschedule your visit on a monday i would like to invite you to give a seminar\nwhich will be attended by many of our graduate students and faculty and will\ngive you an opportunity to tell them about your program . with sufficient\nlead - time i can advertise the seminar in the hass school to their financial\nengineering students .\nshmuel .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto : ; ;\nsent : tuesday , august 08 , 2000 10 : 59 am\nsubject : hello from vince kaminski at enron\n> shmuel ,\n>\n> i hope you remember me . i visited you together with aram sogomonian , a\n> good friend of mine , a few years ago . i am currently responsible , among\n> other things , for recruiting graduates with finance and / or technical\n> backgrounds at the university of berkeley . i would be glad to give you a\n> call and talk more about the details of our program . my colleague ,\n> ashleybaxter , from the analyst / associate program at enron would join me\n> as well .\n>\n> i am sending you a copy of the brochure about the analyst / associate\n> program .\n>\n> vince kaminski\n>\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.000+0000", "entityId": 8232, "properties": {"text": "Subject: re : martin lin\nstinson ,\nthank you for following up promptly with support on martin lin . i spoke with\nvince regarding a conversation i had with compenstation yesterday .\ncompensation has recently comleted an analysis for vince ' s group and\ndetermined that the appropriate salary for managers in research should be\n90 , 000 .\nthe following will be his pay structure :\neffective august 1 , 2000\njob title manager\nbase salary $ 90 , 000\nretention bonus $ 10 , 000 ( ending 8 / 1 / 2001 )\nplease provide a job title that you would feel appropriate for this positon .\nif you would like to discuss please let me know .\nnorma\nx 31545\nstinson gibner\n08 / 23 / 2000 08 : 46 am\nto : norma villarreal / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : martin lin\nnorma ,\nthanks for your excellent suggestion of using a retention bonus for martin\nlin in order to address both the issues of compensation and retention for\nhim . as i mentioned during our meeting , just my small team within research\nhas lost 3 people over about the last 2 years , and we have had a hard time\nrecruiting good candidates . last year we made an offer to a person\ngraduating from ut ( ms in computational finance ) of 75 k plus 25 k signing\nbonus . he replied that he would like to work at enron but was already in\nthe position of turning down an offer with a base salary above $ 100 k .\nmartin is a very skilled individual with a ph . d . in electrical engineering\nand almost two years experience at enron . he would be very difficult ( and\nexpensive ) to replace . for this reason i feel it necessary to be proactive\nin finding ways of retaining him as an employee .\nplease let me know if we have a green light to go forward with a 1 - year\nretention bonus of 10 k and a raise to 87 k base salary for mr . lin . i would\nplan to then give martin an additional raise at his next review period .\nregards ,\nstinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.006+0000", "entityId": 8233, "properties": {"text": "Subject: li sun\nvince ,\ni am so glad that your meeting went well with li yesterday . this is a\nconfirmation email to let everyone know that li sun will begin in vince ' s\norganization on monday , august 28 th . if you have any questions , please let\nme know . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jana giovannini / hou / ect on 08 / 23 / 2000\n10 : 00 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jana giovannini 08 / 21 / 2000 01 : 25 pm\nto : vince j kaminski / hou / ect @ ect\ncc : john j lavorato / corp / enron @ enron , jeffrey a shankman / hou / ect @ ect , hunter\ns shively / hou / ect @ ect , shelly butler / hou / ect @ ect , ina rangel / hou / ect @ ect\nsubject : li sun\nvince ,\nthanks for your response . apparently , we were under the incorrect impression\nthat your group would be taking li ( based on jeff ' s note below ) . we\napologize for not contacting you last friday to confirm prior to \" placing \" li\nin your group . i have faxed li ' s resume to you and hope that you will have\ntime to review it today . please call me back as soon as you can to discuss\nli ' s opportunities in your group .\nif vince is not interested in li for his group , we will consider li placed in\nena - gas trading ( original placement ) in john lavorato ' s organization . once\ni hear from vince one way or the other , the program will consider li ' s\nplacement final in either research or ena - gas trading . hopefully this will\nbe resolved by tuesday morning so that we may communicate to li her rotation\ninformation . if you have any questions , please let me know .\nthank you !\nvince j kaminski\n08 / 21 / 2000 01 : 03 pm\nto : jana giovannini / hou / ect @ ect\ncc :\nsubject : re : vikas dwivedi\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 21 / 2000\n01 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n08 / 21 / 2000 12 : 58 pm\nto : shelly butler / hou / ect @ ect\ncc : john j lavorato / corp / enron @ enron , jeffrey a shankman / hou / ect @ ect , hunter\ns shively / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : vikas dwivedi\nshelly ,\ni shall not accept anybody for a rotation without a prior interview .\nli was scheduled to meet with me last thursday but she never showed\nup . she did not call to cancel or to apologize for not showing up .\ni have not seen her resume .\nplease , assume she is not rotating into my group till further notice .\nvince\nfrom : shelly butler 08 / 18 / 2000 03 : 37 pm\nto : jeffrey a shankman / hou / ect @ ect\ncc : hunter s shively / hou / ect @ ect , john j lavorato / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , craig breslau / hou / ect @ ect , ina rangel / hou / ect @ ect\nsubject : vikas dwivedi\njeff ,\njust wanted to confirm that li will be placed in vince kaminski ' s group .\nvikas has been placed in ena middle market reporting to craig breslau .\nplease contact me at 3 - 4584 if you have any questions . thanks for your help ! !\nshelly\nfrom : jeffrey a shankman 08 / 18 / 2000 03 : 18 pm\nto : shelly butler / hou / ect @ ect\ncc : hunter s shively / hou / ect @ ect , john j lavorato / corp / enron @ enron\nsubject :\nshelly ,\nhunter spoke with li today and agrees that her first rotation should be in\nvince ' s group doing modelling , etc . this will give her the broadest\nexperience for a first rotation . i ' m sure the other person in question ,\nvikas , will do very well in hunter ' s group .\nthanks for your help .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.010+0000", "entityId": 8234, "properties": {"text": "Subject: re : li sun\njeff ,\ni met with li sun last night and i shall take her for the first rotation .\nshe comes across as a very smart and highly motivated person .\ni am planning to go with mark palmer to wharton in october to\nfinalize the deal .\nvince\nfrom : jeffrey a shankman 08 / 23 / 2000 06 : 31 am\nto : jana giovannini / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : li sun\ni ' ve asked vince to get involved with you about getting li into vince ' s\ngroup . this issue needs to be resolved by week ' s end - - we look like we don ' t\nhave our act together , and that bothers me . especially since we are about to\nmake a significant monetary investment at wharton , and we could have a new\nwharton recruit disgruntled .\nvince , can you set up a meeting with you , me and mark palmer to follow up\nwith our meeting with skilling ? thanks very much . . .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.015+0000", "entityId": 8235, "properties": {"text": "Subject: martin lin\nnorma ,\nthanks for your excellent suggestion of using a retention bonus for martin\nlin in order to address both the issues of compensation and retention for\nhim . as i mentioned during our meeting , just my small team within research\nhas lost 3 people over about the last 2 years , and we have had a hard time\nrecruiting good candidates . last year we made an offer to a person\ngraduating from ut ( ms in computational finance ) of 75 k plus 25 k signing\nbonus . he replied that he would like to work at enron but was already in\nthe position of turning down an offer with a base salary above $ 100 k .\nmartin is a very skilled individual with a ph . d . in electrical engineering\nand almost two years experience at enron . he would be very difficult ( and\nexpensive ) to replace . for this reason i feel it necessary to be proactive\nin finding ways of retaining him as an employee .\nplease let me know if we have a green light to go forward with a 1 - year\nretention bonus of 10 k and a raise to 87 k base salary for mr . lin . i would\nplan to then give martin an additional raise at his next review period .\nregards ,\nstinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.022+0000", "entityId": 8236, "properties": {"text": "Subject: options library links\nelena ,\nthe new research web page looks very nice .\nrecently i have a few users who called me about the links to exotica options\nlibrary .\ni checked , both links to exotica . doc and example spreadsheets do not work .\ni appreciate that if you could re - establish the links as soon as possible .\nthanks .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.026+0000", "entityId": 8237, "properties": {"text": "Subject: re : uk rab multiples\nvince ,\nwe have used the updated rab with initial rab around 80 % in the simulation .\nzimin\nvince j kaminski\n08 / 24 / 2000 08 : 47 am\nto : zimin lu / hou / ect @ ect , robert e lee / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , steven leppard / lon / ect @ ect\ncc :\nsubject : uk rab multiples\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 24 / 2000\n08 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael anderson @ azurix\n08 / 23 / 2000 07 : 48 pm\nto : vince j kaminski / hou / ect @ ect\ncc : keith . harris @ wessexwater . com\nsubject : uk rab multiples\ni talked with keith harris , our cfo at wessex , about the rab multiple graph i\ngave you . he expressed that the wessex people had originated the data and\nthat the graph was correct , to the best of their knowledge . the only ( but\nvery important correction ) is that they started the graph at an index of\n100 % , which does not imply a 100 % of rab multiple . rather , the initial rab\nmultiple was around 80 % , implying that the entire line should be taken down\nby 20 percentile points . thus the all time hime in late 98 should be closer\nto the 1 . 3 x rab that i had targeted during our discussion . please call keith\nif he has not yet contact you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.031+0000", "entityId": 8238, "properties": {"text": "Subject: re : uk rab multiples\nmichael ,\nthanks for the information . we shall have the\nresults for you by tomorrow morning .\nvince\nmichael anderson @ azurix\n08 / 23 / 2000 07 : 48 pm\nto : vince j kaminski / hou / ect @ ect\ncc : keith . harris @ wessexwater . com\nsubject : uk rab multiples\ni talked with keith harris , our cfo at wessex , about the rab multiple graph i\ngave you . he expressed that the wessex people had originated the data and\nthat the graph was correct , to the best of their knowledge . the only ( but\nvery important correction ) is that they started the graph at an index of\n100 % , which does not imply a 100 % of rab multiple . rather , the initial rab\nmultiple was around 80 % , implying that the entire line should be taken down\nby 20 percentile points . thus the all time hime in late 98 should be closer\nto the 1 . 3 x rab that i had targeted during our discussion . please call keith\nif he has not yet contact you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.036+0000", "entityId": 8239, "properties": {"text": "Subject: re : henwood query\nhi karolina ,\nyes , it might be more productive to talk on the phone . given our time\ndifference , why don ' t we plan on tomorrow ( friday ) 8 : 00 am pdt , 4 : 00 pm bdt ? my\nnumber in the states is 503 - 464 - 8430 . give me your number , too , so that i can\ncall back if i get hung up in a meeting or something .\nthe situation is complicated by the fact that the marginal cost is set by the\ncapacity increment of a plant that is on the margin in a particular hour , but\nin constructing the stack , increments of a plant may be scattered throughout\nthe stack , based on their respective incremental heat rates . ( this is why\nincrement heat rates must be strictly increasing in this model . ) results for\nthe capacity increments , however , are not available as output ; only each\nplant ' s aggregate values are reported .\ni had to construct the stack for a particular hour to answer question about a\nhomer city , ny plant we were studying a few years ago . attached is the sql\nquery you can import into ms access to do the same thing for you ( making\nappropriate modifications to the year , hour , etc . ) unfortunately , no henwood\ndocumentation on the output variables existed when i created this query , so i\ncan not really tell you what they represent anymore . an acquaintance of mine\nat entergy and i were lobbying to get henwood to provide some documentation ,\nso it may be available now .\nlet ' s talk and maybe we can help you out ,\nmichael\n> > > karolina potter / lon / ect @ enron 08 / 24 / 00 07 : 08 am > > >\nmichael ,\ni am an analyst in paul mead ' s continental power trading group in london . i am\ncurrently working on the project , which requires the use of emss , and\nexperience some difficulties interpreting the output results . steven leppard\nfrom our research group gave me your name as an expert in this system and\nconsequently the person to contact in case of problems .\ni have been running simulations for the dutch market and was asked to provide\nthe traders with some front - end screen graphs in order to interpret the\nnumerical results . one of the graphs is to show an hourly generation stack and\nsystem ' s marginal cost , as we only run cost based scenarios . to sort each\nstation ' s hourly generation i need its marginal cost . to my knowledge though ,\nmarginal cost is only generated for a systems marginal unit ( transarea\nmarginal units query , marg _ cost unit ) . therefore i was sorting the stations\naccording to the cost which i calculated based on the outputs from station\ndetail by hour query . the calculation was as follows :\nfor each hour , for each generating station :\n\" marginal cost \" [ o / mwh ] = ( generation _ cost [ oo 00 ] * 1000 ) / generation [ mwh ] -\nvom _ cost [ o / mwh ]\nthis i thought would include fuel cost and start up costs . however , a marginal\nstation which i get on the stack as a result of the above calculation is not a\nstation given in marginal station field in transarea marginal units query . i\nhave also looked into transarea _ data _ hr table and transarea _ data table but non\nof the costs there match my results .\ndo you happen to know what formula is used to determine marg _ cost and which\noutputs i should be using to obtain the right results ?\nit might be easier if we could discuss this issue on the phone . in this case\ncould you please send me your direct telephone number . i am struggling\nunderstanding what is going on and would appreciate your help very much .\nregards\nkarolina", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.044+0000", "entityId": 8240, "properties": {"text": "Subject: re : henwood query\nhi karolina ,\nyes , it might be more productive to talk on the phone . given our time\ndifference , why don ' t we plan on tomorrow ( friday ) 8 : 00 am pdt , 4 : 00 pm bdt ?\nmy number in the states is 503 - 464 - 8430 . give me your number , too , so that i\ncan call back if i get hung up in a meeting or something .\nthe situation is complicated by the fact that the marginal cost is set by the\ncapacity increment of a plant that is on the margin in a particular hour , but\nin constructing the stack , increments of a plant may be scattered throughout\nthe stack , based on their respective incremental heat rates . ( this is why\nincrement heat rates must be strictly increasing in this model . ) results for\nthe capacity increments , however , are not available as output ; only each\nplant ' s aggregate values are reported .\ni had to construct the stack for a particular hour to answer question about a\nhomer city , ny plant we were studying a few years ago . attached is the sql\nquery you can import into ms access to do the same thing for you ( making\nappropriate modifications to the year , hour , etc . ) unfortunately , no henwood\ndocumentation on the output variables existed when i created this query , so i\ncan not really tell you what they represent anymore . an acquaintance of mine\nat entergy and i were lobbying to get henwood to provide some documentation ,\nso it may be available now .\nlet ' s talk and maybe we can help you out ,\nmichael\n> > > karolina potter / lon / ect @ enron 08 / 24 / 00 07 : 08 am > > >\nmichael ,\ni am an analyst in paul mead ' s continental power trading group in london . i\nam currently working on the project , which requires the use of emss , and\nexperience some difficulties interpreting the output results . steven leppard\nfrom our research group gave me your name as an expert in this system and\nconsequently the person to contact in case of problems .\ni have been running simulations for the dutch market and was asked to provide\nthe traders with some front - end screen graphs in order to interpret the\nnumerical results . one of the graphs is to show an hourly generation stack\nand system ' s marginal cost , as we only run cost based scenarios . to sort each\nstation ' s hourly generation i need its marginal cost . to my knowledge though ,\nmarginal cost is only generated for a systems marginal unit ( transarea\nmarginal units query , marg _ cost unit ) . therefore i was sorting the stations\naccording to the cost which i calculated based on the outputs from station\ndetail by hour query . the calculation was as follows :\nfor each hour , for each generating station :\n\" marginal cost \" [ o / mwh ] = ( generation _ cost [ oo 00 ] * 1000 ) / generation [ mwh ] -\nvom _ cost [ o / mwh ]\nthis i thought would include fuel cost and start up costs . however , a\nmarginal station which i get on the stack as a result of the above\ncalculation is not a station given in marginal station field in transarea\nmarginal units query . i have also looked into transarea _ data _ hr table and\ntransarea _ data table but non of the costs there match my results .\ndo you happen to know what formula is used to determine marg _ cost and which\noutputs i should be using to obtain the right results ?\nit might be easier if we could discuss this issue on the phone . in this case\ncould you please send me your direct telephone number . i am struggling\nunderstanding what is going on and would appreciate your help very much .\nregards\nkarolina\n- text . htm\n- stack generator sql . txt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.051+0000", "entityId": 8241, "properties": {"text": "Subject: re : extreme value theory applied to weathet\nvince ,\nthanks for responding to christian . i had replied earlier and said that evt\nis based on iid events , and is therefore not useful in weather , where there\nis so much correlation going on . jitendra from aa raised the same issue\nyesterday .\njoe\nvince j kaminski\n08 / 22 / 2000 04 : 49 pm\nto : christian werner / enron _ development @ enron _ development\ncc : joseph hrgovcic / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : extreme value theory applied to weathet\nchristian ,\nabout two years ago i asked joe hrgovcic\nto look tinto evt applications . as far as i know\nhe is the only person in the group , in addition to me , looking at evt .\nvince\nchristian werner @ enron _ development on 08 / 18 / 2000 07 : 00 : 42 pm\nto : vince j kaminski @ ect\ncc :\nsubject : extreme value theory applied to weathet\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christian werner / enron _ development on\n19 / 08 / 2000 10 : 06 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristian werner on 19 / 08 / 2000 02 : 08 : 56\nto : vince . kaminski @ enron . com\ncc :\nsubject : extreme value theory applied to weather\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christian werner / enron _ development on\n19 / 08 / 2000 01 : 15 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristian werner on 19 / 08 / 2000 01 : 55 : 56\nto : vkamins @ enron . com\ncc :\nsubject : extreme value theory applied to weather\ndear vince ,\nback in july , when you visited our sydney office you mentioned extreme value\ntheory . i am wondering whether research is looking into the application\nof extreme value theory to power and esp . to weather . in a recent news\narticle it was highlighted that a trend in the industry towards t _ max , t _ min ,\netc .\ni am in particular referring to the news article below :\nin the past we have observed a similar trend where customers are asking for\nt _ max , t _ min , or below or above precipitation structures . the choice in the\npast has been the burn analysis on historical data . however , we are in\nparticular interested in the extreme events , and the application of evt could\nprovide a meaningful tool for the analysis .\nhas the research group looked into the application of evt to weather ? evt has\na long history of application in hydrology ( which would cover parts\nof the precipitation structures . . . ) . also , research ( esp . at eth in zuerich )\nis indicating the application of evt to v @ r . . . .\nthank you !\nregards ,\nchristian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.056+0000", "entityId": 8242, "properties": {"text": "Subject: risk management it offsite meeting notes\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n08 / 24 / 2000 10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : maureen craig @ ees 08 / 23 / 2000 06 : 19 pm\nto : dennis benevides / hou / ees @ ees , scott yeargain / hou / ees @ ees , ress\nyoung / hou / ees @ ees , timothy j hamilton / hou / ees @ ees , barend\nvanderhorst / hou / ees @ ees , ford cooper / hou / ees @ ees , megan corley / hou / ees @ ees ,\nsteven r meyers / hou / ees @ ees , burt bailey / hou / ees @ ees , dave\nroberts / hou / ees @ ees , james w lewis / hou / ees @ ees , mallik avs / hou / ees @ ees ,\ntravis julian / efs / ees @ ees , ryan tull / hou / ees @ ees , glenn dickson / hou / ees @ ees ,\nscott stoness / hou / ees @ ees , neil hong / hou / ees @ ees , sanjay agarwal / hou / ees @ ees ,\ndavid draper / hou / ees @ ees , monica hwang / hou / ees @ ees , cathy\npittenger / hou / ees @ ees , kenneth lee / hou / ees @ ees , pinnamaneni\nkrishnarao / hou / ect @ ect , osman sezgen / hou / ees @ ees , tony spruiell / hou / ees @ ees ,\nsean a holmes / hou / ees @ ees , wanda curry / hou / ect @ ect , meredith m\neggleston / hou / ees @ ees , chuck hahn / sfo / ees @ ees\ncc : marty sunde / hou / ees @ ees , mike harris / hou / ees @ ees , mohsin\nmanzoor / hou / ees @ ees , stephen douglass / hou / ees @ ees , john krakoski / hou / ees @ ees ,\nbrian haskett / hou / ees @ ees , kelly cunningham / hou / ees @ ees , bernard\nfelefli / hou / ees @ ees , rudy tobias / hou / ees @ ees , michael clark / hou / ees @ ees ,\nterry caudill / hou / ees @ ees , wpicker @ us . ibm . com , james welsh / hou / ees @ ees , james\njohnson / hou / ees @ ees , ben castro / hou / ees @ ees , carol moffett / hou / ees @ ees\nsubject : risk management it offsite meeting notes\nthe ees / ibm it team would again like to thank all of you for your vigorous\nparticipation in last weeks it needs analysis workshop . in particular , we\nwould like to extend appreciation to jay , dave roberts , and dennis for their\nbusiness presentations . thanks , as well , to meghan corley , barry\nvanderhorst , burt bailey , and glenn dickson for presenting their individual\narea needs , to meredith for overall assistance in creating and delivering the\nagenda , and to marty for his sponsorship and support .\nthe team is currently assimilating the results and formulating an action plan\nto address priority 1 , 2 , and 3 needs . actions to address many priority 1\nitems are underway . we will be reporting on this in marty ' s weekly staff\nmeeting .\nattached below are the results from the meeting , as well as copies of all\nmaterials that were presented . any additional feedback is welcome and\nencouraged .\napologies to any participants that do not appear on this distribution . one\nthing we failed to do was to take an attendees list . please forward to your\nteam mates , accordingly .\nthank you ,\nmaureen craig and john krakoski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.061+0000", "entityId": 8243, "properties": {"text": "Subject: re : introduction meeting : rac london quants and houston research\nrodrigo ,\ni think it is churrasco ' s , a south american restaurant .\ni shall make reservations for the 12 th . i shall also\narrange the meetings on tuesday with different units of the research group .\nvince\nrodrigo lamas\n08 / 24 / 2000 01 : 59 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : introduction meeting : rac london quants and houston research\nvince ,\nthank you very much .\ni would rather talk to your group on sep the 12 th ( tuesday ) .\ni hope i will be entitled to disturb them again during the rest of the week\nas well .\nwe can certainly go out for dinner . steven mentioned a brazilian restaurant he\nwent to and i am looking forward going there . this in case you are not\nvegetarian .\nthanks again ,\nrodrigo\nvince j kaminski\n24 / 08 / 2000 19 : 54\nto : rodrigo lamas / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : introduction meeting : rac london quants and houston research\nrodrigo ,\nwe shall be very glad to meet you .\nif you can dedicate one day to meeting the members of the research group i\ncould arrange a series of meetings with different units .\nwhat about sep the 11 th or sep the 12 th ( monday or tuesday ) ?\nif you are free one evening we can have dinner together .\nvince\nrodrigo lamas\n08 / 24 / 2000 11 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : introduction meeting : rac london quants and houston research\nvince ,\ni work for the market risk rac london group . i review the quantitative issues\narising from enron europe models .\ni am in this function given my background ( phd from imperial college - london )\nand also due to my past experience\nas risk manager for a brazilian investment bank and louis dreyfus .\nmy agenda includes the review of a number of deals ( wessex , tpl , eastern ,\n. . . ) , as well as the\nreview of the construction of european gas and power price curves and their\nrespective volatility curves .\ncurrently i am devoting most of my time to the analysis of the uk gas market ,\nits respective\nprice curve and term structure of volatility .\nbjorn and david suggested it could be very productive if i had the chance to\nmeet you and your team\nto discuss issues related to modelling prices and risk measurement tools .\ni will be in houston from the 10 th to 15 th september . i wonder if you could\nbook some time for me in\nyour agenda and also ask some members of your team to do the same .\nthanks ,\nrodrigo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.065+0000", "entityId": 8244, "properties": {"text": "Subject: revised budget allocations\nplease disregard the previous allocations , because i forgot enroncredit . com !\nhere goes :\nrac 20 %\nuk power 15 %\nuk gas 5 %\ncontinental power 15 %\ncontinental gas 3 %\nglobal products 7 %\nebs 10 %\nees 10 %\nenroncredit . com 15 %\nthat should do it .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 08 / 24 / 2000\n10 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteven leppard\n08 / 24 / 2000 10 : 46 am\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , grant masson / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , steven leppard / lon / ect @ ect\nsubject : budget\nhi dale\nfollowing discussions with vince , grant and stinson , we ' ve drawn up the\nproposed budget . we ' re working on the basis that research group headcount\nwill grow to 8 in the near future .\nbusiness trips us : 8\nbusiness trips europe : 10\ncomputer software and licences : gbp 10 , 000\noffice postage : gbp 350\nemployee recruitment fees : gbp 30 , 000 ( = 3 x 20 % x gbp 50 , 000 )\nprofessional subscriptions and memberships and books : gbp 15 , 000\ntraining courses : gbp 16 , 000 ( = 8 x gbp 2 , 000 )\nconferences : gbp 8 , 000 ( = 4 x gbp 2 , 000 )\nmobile phones : gbp 1 , 500 ( = 3 x gbp 500 = me + 2 floaters )\nhardware : gbp 10 , 000 ( = laptops , workstations )\nsuggested allocation as follows . . .\nrac 20 %\nuk power 20 %\nuk gas 5 %\ncontinental power 20 %\ncontinental gas 5 %\nglobal products 10 %\nebs 10 %\nees 10 %\n. . . unless you ' ve got any other views on this one ( i ' m happy to take advice\nhere ) .\nvince has said you can give him a call if you want to discuss any of these\npoints further , but i ' m happy to field initial queries ( i ' ll have to get used\nto it ! ) .\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.071+0000", "entityId": 8245, "properties": {"text": "Subject: budget\nhi dale\nfollowing discussions with vince , grant and stinson , we ' ve drawn up the\nproposed budget . we ' re working on the basis that research group headcount\nwill grow to 8 in the near future .\nbusiness trips us : 8\nbusiness trips europe : 10\ncomputer software and licences : gbp 10 , 000\noffice postage : gbp 350\nemployee recruitment fees : gbp 30 , 000 ( = 3 x 20 % x gbp 50 , 000 )\nprofessional subscriptions and memberships and books : gbp 15 , 000\ntraining courses : gbp 16 , 000 ( = 8 x gbp 2 , 000 )\nconferences : gbp 8 , 000 ( = 4 x gbp 2 , 000 )\nmobile phones : gbp 1 , 500 ( = 3 x gbp 500 = me + 2 floaters )\nhardware : gbp 10 , 000 ( = laptops , workstations )\nsuggested allocation as follows . . .\nrac 20 %\nuk power 20 %\nuk gas 5 %\ncontinental power 20 %\ncontinental gas 5 %\nglobal products 10 %\nebs 10 %\nees 10 %\n. . . unless you ' ve got any other views on this one ( i ' m happy to take advice\nhere ) .\nvince has said you can give him a call if you want to discuss any of these\npoints further , but i ' m happy to field initial queries ( i ' ll have to get used\nto it ! ) .\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.075+0000", "entityId": 8246, "properties": {"text": "Subject: confirmation of your online order\nwincenty j kaminski ( vkamins @ enron . com )\nthis email is to confirm your online order which was received on 24 - aug - 2000 .\nplease note that this does not constitute a receipt .\nif you have any queries or problems please e - mail\ndirectcustserve @ cup . cam . ac . uk ( customer services ) quoting order reference\nnumber web 5908 / ds 51002180 .\ntotals : 1 lines , 1 items , weight 0 . 630 kg , value gbp 30 . 00\ndelivery charge , air : gbp 5 . 00\ntotal cost : gbp 35 . 00\nshopping basket\ntheory of financial risks , from statistical physics to risk management ,\njean - philippe bouchaud ( hardback ) , isbn 0521782325\nquantity : 1 reference : kaminski cost : gbp 30 . 00 in stock", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.080+0000", "entityId": 8247, "properties": {"text": "Subject: re :\nshan ,\nit ' s nice to hear from you . congratulations on the new job .\nft is my favorite publication i never miss ( and i read a number\nof different ft publications , including ft energy collection ) .\nyou can contact harry arora ( x 6750 ) here in london who works on\nfinance related e - commerce projects . he may give you some useful\ncomments . i shall be myself very interested in the first issue\nof your new publication .\nregards\nvince\nshan . millie @ ft . com ( shan millie ) on 08 / 08 / 2000 08 : 50 : 45 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\nhullo , vince :\ni hope you ' re very well . as you can see , i am now working for the ft ' s\nmagazine publishing business ; i have responsibility for what ' s currently\ntermed\nthe expatriate division and i ' ve just passed my statutory probationary period\nof 3 months . apologies for not contacting you sooner - but i guess you knew\nyou ' d hear from me sooner or later , especially when i need help ! having\ngotten\nthru probation , i am set loose upon new projects . . . . . . i ' m investigating\nseveral\nideas for new magazine product and wondered if you would be able to comment on\none of them .\nvery basically , i want to develop a magazine product for the international\nprivate investor , specifically\no hnwis\no owner - managers\no results - oriented but intelligent investor with long - term investment goals\nand\na desire to be able to converse with their private bankers and / or brokers on\nsomething approaching equal terms\nthe product would be delivered monthly and cater to the developing breed of\nprivate international investor who prefers to make informed decisions - for\nthemselves . the product would aim to cover the major asset classes , including\nthe \" wilder shores \" such as hedge funds and emerging markets . i am working on\na\nportal site ( imaginatively entitled ftexpat . com ! ) , nested within ft . com , which\nwill launch in october ; international investment will be a significant channel\non the site , and a key distribution / marketing channel for this ( and future )\noffering . at this very early stage i am testing out the reaction to the notion\nof such a product - do you have one ? would you be able to suggest any other\ncontacts who might be willing / able to share their thoughts with me ? i know\nit ' s\nnot bang in your sphere but i ' m hoping you ' ll be interested enough to share\nyour thoughts with me .\nif you can give me a few pointers , i ' d be grateful . looking forward to hearing\nfrom you ,\nsh ? n\n44 - 20 - 7896 - 2310\n* please visit the web site of the financial times at : *\n* http : / / www . ft . com *\n* *\n* this e - mail is intended for the use of the addressee only and may *\n* contain confidential information . if you are not the intended *\n* recipient , you are hereby notified that any use or dissemination *\n* of this communication is strictly prohibited . *\n* if you receive this transmission in error , please notify us *\n* immediately then delete this e - mail .\n* *\n* *\n* postmaster @ ft . com *\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.084+0000", "entityId": 8248, "properties": {"text": "Subject: re : recruiting at carnegie - mellon\ni am so sorry that we keep missing one another . are you available at any\ntime tomorrow so i can come visit to talk about carnegie mellon recruiting\nthis fall ?\nkristin\nvince j kaminski @ ect\n08 / 23 / 2000 05 : 33 pm\nto : john b gordon / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , kristin gandy / na / enron @ enron\nsubject : re : recruiting at carnegie - mellon\njohn ,\ni haven ' t received the invitation yet to the sep 13 th meeting .\ni shall contact you thursday regarding the cmu presentation .\nvince\njohn b gordon @ enron\n08 / 23 / 2000 05 : 01 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : recruiting at carnegie - mellon\nvince :\ni understand that you are the lead recruiter for cmu . as you know , i am the\nonly alum from that school in enron ' s associate program . i assume i will be\njoining you for our corporate presentation on 9 / 13 at 7 : 30 am . please let me\nknow what i can do to help prepare for this event . enron and gsia are a\ngreat fit , so i want this recruiting effort to go well .\nare you also giving a talk / lecture to the computational finance students ? if\nso , what time ? maybe we can schedule a lunch with duane seppi . i look\nforward to hearing from you .\njohn gordon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.090+0000", "entityId": 8249, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nvince ,\nthank you for forwarding the following messages . i am sorry that i am just\nnow getting back to you , my lotus notes was down all afternoon yesterday .\nwe currently have the cal berkeley general presentation set for wednesday ,\noctober 18 th at 7 : 00 p . m . which works out well because it is just prior to\nthe time deadline for students to submit their resumes . the general\npresentation is a general overview of enron , the program , the interview\nprocess , as well as a chance for students to meet and chat with enron reps .\nsince this is the first year that we are recruiting from cal berkeley , i\nthink that it is important that i attend this event on campus so that i can\nanswer any interview process questions . i will check the schedule and see if\nit is possible to move the presentation to the 23 rd . the only negative is\nthat i will not be able to attend because i will be conducting interviews at\nrice that day . also , it is very difficult to find a location to hold the\npresentation , and i need to check on location availability on the 23 rd .\nhowever , i do think that we should take advantage of the seminar on campus .\nthis may mean that they are two seperate trips to campus . perhaps , we can\nalso set up some other presentations for the 23 rd or even the monday prior .\nalthough i would like to be able to attend the class / seminar presentations , i\ndon ' t think that it is as vital as the general presentation .\nwhat are your thoughts ?\nthanks ,\nashley\nvince j kaminski @ ect\n08 / 24 / 2000 08 : 58 am\nto : \" shmuel oren \"\ncc : vince j kaminski / hou / ect @ ect , ashley baxter / corp / enron @ enron\nsubject : re : hello from vince kaminski at enron\nshmuel ,\nthanks for the message . i am working with our recruiter , ashley baxter ,\nto finalize the date of the trip . i shall shoot for october the 23 rd\nif this date works for the rest of our team .\nvince\n\" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello from vince kaminski at enron\ndear vince .\ni sent you a reply earlier this month but i haven ' t heard from you about the\ndate of your visit . our department has a seminar every monday . if you can\nschedule your visit on a monday i would like to invite you to give a seminar\nwhich will be attended by many of our graduate students and faculty and will\ngive you an opportunity to tell them about your program . with sufficient\nlead - time i can advertise the seminar in the hass school to their financial\nengineering students .\nshmuel .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto : ; ;\nsent : tuesday , august 08 , 2000 10 : 59 am\nsubject : hello from vince kaminski at enron\n> shmuel ,\n>\n> i hope you remember me . i visited you together with aram sogomonian , a\n> good friend of mine , a few years ago . i am currently responsible , among\n> other things , for recruiting graduates with finance and / or technical\n> backgrounds at the university of berkeley . i would be glad to give you a\n> call and talk more about the details of our program . my colleague ,\n> ashleybaxter , from the analyst / associate program at enron would join me\n> as well .\n>\n> i am sending you a copy of the brochure about the analyst / associate\n> program .\n>\n> vince kaminski\n>\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.094+0000", "entityId": 8250, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nshmuel ,\nthanks for the message . i am working with our recruiter , ashley baxter ,\nto finalize the date of the trip . i shall shoot for october the 23 rd\nif this date works for the rest of our team .\nvince\n\" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello from vince kaminski at enron\ndear vince .\ni sent you a reply earlier this month but i haven ' t heard from you about the\ndate of your visit . our department has a seminar every monday . if you can\nschedule your visit on a monday i would like to invite you to give a seminar\nwhich will be attended by many of our graduate students and faculty and will\ngive you an opportunity to tell them about your program . with sufficient\nlead - time i can advertise the seminar in the hass school to their financial\nengineering students .\nshmuel .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto : ; ;\nsent : tuesday , august 08 , 2000 10 : 59 am\nsubject : hello from vince kaminski at enron\n> shmuel ,\n>\n> i hope you remember me . i visited you together with aram sogomonian , a\n> good friend of mine , a few years ago . i am currently responsible , among\n> other things , for recruiting graduates with finance and / or technical\n> backgrounds at the university of berkeley . i would be glad to give you a\n> call and talk more about the details of our program . my colleague ,\n> ashleybaxter , from the analyst / associate program at enron would join me\n> as well .\n>\n> i am sending you a copy of the brochure about the analyst / associate\n> program .\n>\n> vince kaminski\n>\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.099+0000", "entityId": 8251, "properties": {"text": "Subject: re : backtesting\nnaveen ,\nmost of these tests have been already coded . the code and the associated\nspreadsheets may have been lost inn the sands of time . please , check with\nvasant : it may save you some time .\nvince\nnaveen andrews @ enron\n08 / 23 / 2000 05 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : backtesting\nvince ,\ni am currently implementing the backtesting features into our\nrisk management system . i distributed the following document at our research\nmeeting today ; it outlines the conventional binomial test and some other\ntests , including the basle regulatory test . of course , no one test is\npowerful and the efficacy of these tests breakdown for low sample sizes ,\netc . if you can think of other tests to complement these , please let me know .\nregards\nnaveen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.104+0000", "entityId": 8252, "properties": {"text": "Subject: the garp 2001 convention\ndear mr kaminski\n?\nplease find attached important information concerning the garp 2001\nconvention , which will be held in new york between 13 th and 14 th february ,\n2001 .\n?\nplease respond by the 6 th september so that all your details are correctly\nput into the brochure and our web site . should you have any queries please\ndo not hesitate to contact me .\n?\ni look forward to working with you and to seeing you in new york in february .\n?\nkind regards\n?\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\n- kaminski . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.109+0000", "entityId": 8253, "properties": {"text": "Subject: re : london visit\npaul ,\nthanks for your message . i am in process of\nfinalizing my plans for the trip to london in the end of\nseptember . i delayed responding to you message till\ni had more specific information .\nunless there a major change in my schedule , i shall arrive\nin london on monday morning ( september 18 ) and leave on\nthursday in the evening .\nplease , let me know what would be convenient time\nto meet . you can send me an e - mail message and my secretary\nwill contact to confirm the date and place of the meeting .\nmy assistant ' s name is shirley crenshaw and her phone\nnumber is 713 853 5290 .\ni look forward to meeting you , tom and julian .\nvince kaminski\npaul . e . day @ uk . arthurandersen . com on 08 / 25 / 2000 11 : 53 : 02 am\nto : vince j kaminski / hou / ect @ ect\ncc : tom . o . lewthwaite @ uk . arthurandersen . com ,\njulian . leake @ uk . arthurandersen . com\nsubject : london visit\ni understand that you will be in london around 20 september . tom lewthwaite\nhas\nasked me to arrange a meeting between you , tom and julian leake . i understand\nthat you have met tom and julian before . i would also like to attend - i am\na\nmanager in our uk financial services practice with responsibilty for enron\nfrom\na uk financial services perspective . we would like to discuss any risk\nmanagement concerns that you may have and any internal initiatives with which\nwe\ncould assist .\nif you are happy to meet on this basis , i would be grateful if you could let\nme\nknow how you to proceed ( whether i should arrange timings with you , your\nsecretary , someone in london etc ) . you can contact me on + 44 20 7783 7446 ( at\nenron ' s london offices ) or on this e - mail address .\nkind regards\npaul day\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.114+0000", "entityId": 8254, "properties": {"text": "Subject: re : henwood query\ngood talking with you this morning . by all means , talk to grant masson about\nwho else is using the henwood model within enron .\nattached are the workbooks i mentioned . the \" details of jan and july . xls \"\nworkbook contains the resulting listing from the query i gave you yesterday\nand you can see how the supply curve was created from that . the supply curve\nbecomes nonsense at points for reasons i believe are related to reliability\ncommitment constrants , instead of pure economic dispatch , and to the\naggregate reporting problem i described in my note yesterday .\nthe workbook \" supply curve . xls \" has the simplistic , average supply curve i\nmentioned , constructed from fuel and vom costs . depending on the question\nyou are trying to answer , it may be an approach to consider .\nthe henwood contacts i had in mind are :\ntao guo , phd , senior \" algorithmist \" ( 916 - 569 - 0985 ) \u0002 \u0005 the one i was thinking\nof\nwenxiong huang , phd senior project consultant ( 916 - 569 - 0985 )\najit kulkarni , phd , software product manager ( 916 - 569 - 0985 ) \u0002 \u0005 more a trainer ,\nbut sharp\ncosimo coscia , senior consultant ( south australia ) 618 - 8357 - 1244 \u0002 \u0005 very\nresourceful\nwade schauer , staff consultant , ( 916 - 569 - 0985 ) \u0002 \u0005 best for questions about\nemss per se\nall have emails , of course . template : tguo @ hesinet . com\nalso , if you can not get satisfaction , contact eric toolson , vp\n( 916 - 569 - 0985 ) . he has a laconic style , but is very focused on customer\nsatisfaction and retention . and he has the pull to make things happen .\nregards ,\nmichael\n> > > karolina potter / lon / ect @ enron 08 / 24 / 00 07 : 08 am > > >\nmichael ,\ni am an analyst in paul mead ' s continental power trading group in london . i\nam currently working on the project , which requires the use of emss , and\nexperience some difficulties interpreting the output results . steven leppard\nfrom our research group gave me your name as an expert in this system and\nconsequently the person to contact in case of problems .\ni have been running simulations for the dutch market and was asked to provide\nthe traders with some front - end screen graphs in order to interpret the\nnumerical results . one of the graphs is to show an hourly generation stack\nand system ' s marginal cost , as we only run cost based scenarios . to sort each\nstation ' s hourly generation i need its marginal cost . to my knowledge though ,\nmarginal cost is only generated for a systems marginal unit ( transarea\nmarginal units query , marg _ cost unit ) . therefore i was sorting the stations\naccording to the cost which i calculated based on the outputs from station\ndetail by hour query . the calculation was as follows :\nfor each hour , for each generating station :\n\" marginal cost \" [ o / mwh ] = ( generation _ cost [ oo 00 ] * 1000 ) / generation [ mwh ] -\nvom _ cost [ o / mwh ]\nthis i thought would include fuel cost and start up costs . however , a\nmarginal station which i get on the stack as a result of the above\ncalculation is not a station given in marginal station field in transarea\nmarginal units query . i have also looked into transarea _ data _ hr table and\ntransarea _ data table but non of the costs there match my results .\ndo you happen to know what formula is used to determine marg _ cost and which\noutputs i should be using to obtain the right results ?\nit might be easier if we could discuss this issue on the phone . in this case\ncould you please send me your direct telephone number . i am struggling\nunderstanding what is going on and would appreciate your help very much .\nregards\nkarolina\n- text . htm\n- details of jan and july . xls\n- supply curve . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.118+0000", "entityId": 8255, "properties": {"text": "Subject: re : henwood query\ngood talking with you this morning . by all means , talk to grant masson about\nwho else is using the henwood model within enron .\nattached are the workbooks i mentioned . the \" details of jan and july . xls \"\nworkbook contains the resulting listing from the query i gave you yesterday\nand you can see how the supply curve was created from that . the supply curve\nbecomes nonsense at points for reasons i believe are related to reliability\ncommitment constrants , instead of pure economic dispatch , and to the aggregate\nreporting problem i described in my note yesterday .\nthe workbook \" supply curve . xls \" has the simplistic , average supply curve i\nmentioned , constructed from fuel and vom costs . depending on the question you\nare trying to answer , it may be an approach to consider .\nthe henwood contacts i had in mind are :\ntao guo , phd , senior \" algorithmist \" ( 916 - 569 - 0985 ) * the one i was thinking\nof\nwenxiong huang , phd senior project consultant ( 916 - 569 - 0985 )\najit kulkarni , phd , software product manager ( 916 - 569 - 0985 ) * more a trainer ,\nbut sharp\ncosimo coscia , senior consultant ( south australia ) 618 - 8357 - 1244 * very\nresourceful\nwade schauer , staff consultant , ( 916 - 569 - 0985 ) * best for questions about emss\nper se\nall have emails , of course . template : tguo @ hesinet . com\nalso , if you can not get satisfaction , contact eric toolson , vp\n( 916 - 569 - 0985 ) . he has a laconic style , but is very focused on customer\nsatisfaction and retention . and he has the pull to make things happen .\nregards ,\nmichael\n> > > karolina potter / lon / ect @ enron 08 / 24 / 00 07 : 08 am > > >\nmichael ,\ni am an analyst in paul mead ' s continental power trading group in london . i am\ncurrently working on the project , which requires the use of emss , and\nexperience some difficulties interpreting the output results . steven leppard\nfrom our research group gave me your name as an expert in this system and\nconsequently the person to contact in case of problems .\ni have been running simulations for the dutch market and was asked to provide\nthe traders with some front - end screen graphs in order to interpret the\nnumerical results . one of the graphs is to show an hourly generation stack and\nsystem ' s marginal cost , as we only run cost based scenarios . to sort each\nstation ' s hourly generation i need its marginal cost . to my knowledge though ,\nmarginal cost is only generated for a systems marginal unit ( transarea\nmarginal units query , marg _ cost unit ) . therefore i was sorting the stations\naccording to the cost which i calculated based on the outputs from station\ndetail by hour query . the calculation was as follows :\nfor each hour , for each generating station :\n\" marginal cost \" [ o / mwh ] = ( generation _ cost [ oo 00 ] * 1000 ) / generation [ mwh ] -\nvom _ cost [ o / mwh ]\nthis i thought would include fuel cost and start up costs . however , a marginal\nstation which i get on the stack as a result of the above calculation is not a\nstation given in marginal station field in transarea marginal units query . i\nhave also looked into transarea _ data _ hr table and transarea _ data table but non\nof the costs there match my results .\ndo you happen to know what formula is used to determine marg _ cost and which\noutputs i should be using to obtain the right results ?\nit might be easier if we could discuss this issue on the phone . in this case\ncould you please send me your direct telephone number . i am struggling\nunderstanding what is going on and would appreciate your help very much .\nregards\nkarolina", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.123+0000", "entityId": 8256, "properties": {"text": "Subject: re : introduction meeting : rac london quants and houston research\nhi vince ,\nthanks for organizing the meetings , and a special thanks for organizing the\nreservations for the dinner .\ni am looking forward the visit to houston .\nrodrigo\nvince j kaminski\n24 / 08 / 2000 20 : 25\nto : rodrigo lamas / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : introduction meeting : rac london quants and houston research\nrodrigo ,\ni think it is churrasco ' s , a south american restaurant .\ni shall make reservations for the 12 th . i shall also\narrange the meetings on tuesday with different units of the research group .\nvince\nrodrigo lamas\n08 / 24 / 2000 01 : 59 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : introduction meeting : rac london quants and houston research\nvince ,\nthank you very much .\ni would rather talk to your group on sep the 12 th ( tuesday ) .\ni hope i will be entitled to disturb them again during the rest of the week\nas well .\nwe can certainly go out for dinner . steven mentioned a brazilian restaurant he\nwent to and i am looking forward going there . this in case you are not\nvegetarian .\nthanks again ,\nrodrigo\nvince j kaminski\n24 / 08 / 2000 19 : 54\nto : rodrigo lamas / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : introduction meeting : rac london quants and houston research\nrodrigo ,\nwe shall be very glad to meet you .\nif you can dedicate one day to meeting the members of the research group i\ncould arrange a series of meetings with different units .\nwhat about sep the 11 th or sep the 12 th ( monday or tuesday ) ?\nif you are free one evening we can have dinner together .\nvince\nrodrigo lamas\n08 / 24 / 2000 11 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : introduction meeting : rac london quants and houston research\nvince ,\ni work for the market risk rac london group . i review the quantitative issues\narising from enron europe models .\ni am in this function given my background ( phd from imperial college - london )\nand also due to my past experience\nas risk manager for a brazilian investment bank and louis dreyfus .\nmy agenda includes the review of a number of deals ( wessex , tpl , eastern ,\n. . . ) , as well as the\nreview of the construction of european gas and power price curves and their\nrespective volatility curves .\ncurrently i am devoting most of my time to the analysis of the uk gas market ,\nits respective\nprice curve and term structure of volatility .\nbjorn and david suggested it could be very productive if i had the chance to\nmeet you and your team\nto discuss issues related to modelling prices and risk measurement tools .\ni will be in houston from the 10 th to 15 th september . i wonder if you could\nbook some time for me in\nyour agenda and also ask some members of your team to do the same .\nthanks ,\nrodrigo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.129+0000", "entityId": 8257, "properties": {"text": "Subject: enron open positions\nhello mr . kaminski ,\ncan we meet for a quick lunch again at your\nconvenience ? just to bring you up to date about my search for the right\nopportunity . also i noticed in the risk magazine that enron investment\npartners and aig have joined treasuryconnect as strategic partners to\ncapitalize on internet - based transaction execution of financial derivatives .\ni would like to explore if i can be any help to hank finkenstaedt , the\ndirector of enron investment partners .\nplease let me know what day and time might be\nconvenient for you .\nthank you .\nsincerely ,\nmaruti more\n832 - 251 - 7267\nmmore @ houston . rr . com\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : monday , july 10 , 2000 11 : 28 am\nsubject : enron open positions\ndear mr . kaminski :\ni would like to explore the opportunity to join\nenron investment partners . i understand that enron has $ 20 million fund set\nup to finance start - ups , and gene humphreys and his assistant john godbold\nare trying to attract minority - owned start - up firms . i also learned that\nenron has plans to increase the size of this fund to $ 200 million . i can find\nthese opportunities for enron around the globe . given my background as a\nchartered financial analyst , with hands - on experience in investment\nmanagement covering financial derivatives , fixed income , and equity , i can be\na valuable resource to do the due diligence , origination , valuation , and\nmonitoring of these start - ups . would you please help me arrange a meeting\nwith either gene humphreys , ted murphy , or may be ken lay ?\ni am pasting below the job opportunities open at enron . i am also interested\nin these positions and would like to meet with the hiring manager .\ni will give you a call to follow up .\nthank you .\nsincerely ,\nmaruti more\n832 - 251 - 7267\njob 0000104282 details\nmanager / director\nessential functions : candidates will be responsible for helping\nfacilitate the transaction approval process for domestic and international\ninvestments . these investments include , but are not limited to , private\nequity , project development , venture capital , and structured credits .\ncandidates will work with business developers and underwriters in\nidentifying , understanding , and documenting transaction risks . they will also\nassist in preparing transaction approval documentation . in addition , they\nwill oversee the valuation , modeling , and simulation process for investments .\nthe primary focus is to identify and measure key risk factors from both a\nquantitative and a qualitative perspective with an emphasis on fundamental\nanalysis . the candidate must be able to assist in management and training of\ndepartmental staff and in formulation of investment valuation policies and\nprocedures .\nessential requirements : ? strong interpersonal skills ?\nunderstanding of transaction structuring and credit risk issues ?\nunderstanding of finance and valuation methodologies . ? proficiency with\nexcel cash flow models ? experience with financial statement analysis ?\nunderstanding of statistics and simulation techniques ( monte carlo ) .\npreferred skills : na .\nspecial characteristics : the ideal candidate will possess an\nundergraduate degree in finance , accounting , or economics , and an mba .\nrelevant experience could include credit analysis or valuation / finance\nexperience . manager / director in the risk assessment department of a $ 20\nbillion energy company .\ncontact : please email resumes to corpjobsl @ enron . com , please\nrefer to job no . 104282 when responding .\njob id 0000104282\ndepartment capital pricing / risk an\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 05 - jun - 00\nto submit your resume for this position :\nonline enter your resume id : no resume id ? you can create a\nresume on - line , deposit it in our database , and receive a resume id using our\nresume builder .\nyour resume id will allow you to submit your resume\nonce , but route it to up to 20 open positions . enron does not process resumes\nthat are not sent in response to specific positions .\nif you have an existing resume in electronic format ,\nthe resume builder allows you to cut and paste your whole resume .\nfax our fax number is 1 - 888 - 588 - 7152 .\nyou must tell us which jobs you ' re interested in , or\nwe will not be able to process your resume . write on your resume ( or on a\nseparate page ) all of the jobs ids of the jobs you ' re interested in pursuing .\nan equal opportunity and affirmative action employer\ntop of page copyright 1997 - 1999 enron corp . all rights\nreserved . contact us .\njob 0000104281 details\nstaff / spec / sr spec\nessential functions : \" snapshot \" preparation - responsible for\npreparation of quarterly asset \" snapshots \" which provides enron ' s senior\nmanagement with summarized operational and financial information on selected\nmerchant portfolio investments . responsibilities associated with preparation\nof snapshots include : researching publicly traded companies , calculating key\nfinancial data , updating and analyzing graphical summaries of performance ,\nreviewing press releases for recent events data , updating stock prices from\nbloomberg ? weekly underwriters report - full responsibility for updating and\ndistributing weekly underwriters ' report . involves regular interaction with\nexecutive vice president , london office personnel , as well as several vice\npresidents within underwriting group within rac . ? various projects - will be\nutilized on special projects on an as needed basis\nessential requirements : accounting / finance / economics degree with\n0 - 4 years business experience . excellent computer skills - excel ,\npowerpoint , bloomberg , word research skills and the ability to interact with\na variety of personnel and departments . excellent organization skills . self\nstarter , quick learner . must be team player . good writing skills with the\nability to concisely summarize operational and financial results .\npreferred skills : na .\nspecial characteristics : . entry level position with the\nopportunity to gain familiarity with all of enron ' s portfolio assets . future\nadvancement in asset and portfolio management possible for candidate who\nexhibits competence and creativity .\ncontact : please email resumes to enajobsl @ enron . com , please refer\nto job no . 104281 when responding .\njob id 0000104281\ndepartment due diligence / asset mgmt\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 05 - jun - 00\njob 0000102789 details\nsr specialist\nessential functions : in this position candidates will model , run\nmonte - carlo simulations , evaluate capital investments . these investments will\ncover a wide range . candidates will be responsible for the validation of\nmodels as well as insuring the accuracy and integrity of the model and\nunderlying assumptions . the primary focus will be to provide an objective\nvaluation for an investment by identifying and measuring key risk factors\nfrom both a quantitative as well as qualitative perspective . ? understanding\nof valuation techniques applied to equity or structured financial products . ?\nunderstanding of cash flow models and option pricing models . ? proficiency in\nexcel . ? understanding of project finance and risk mitigation techniques . ?\nexperience with financial statement analysis and pro forma statements . ?\nunderstanding of statistics and application to financial analysis .\nessential requirements : na .\npreferred skills : ? understanding of simulation methodologies\nsuch as montecarlo . ? exposure to statistical analysis software such as\ncrystal ball or @ risk . the ideal candidate will possess an undergraduate\ndegree in finance , accounting , or economics and have 2 to 3 years of\nfinancial modeling experience and an mba / cpa .\nspecial characteristics : na .\ncontact : please do not contact the hiring manager . please no\nfaxes . send resumes via e - mail to corpjobsl @ enron . com or mail to enron , attn :\ntvasut - eb 3628 , 1400 smith st . , houston , tx 77002 . please refer to job #\n102789\njob id 0000102789\ndepartment capital pricing / risk an\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 17 - mar - 00\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.135+0000", "entityId": 8258, "properties": {"text": "Subject: mit team meeting\ngreetings , mit recruiting team !\neach of you has been chosen to represent enron for our fall 2000 recruiting\nefforts at mit university . as part of the team , you will be challenged with\nchoosing the best candidates from sloan ' s graduate school to join our\nassociate program .\nour first campus event will be on september 21 and interviews will be held on\ncampus november 7 and 8 . i hope you are all able to participate in the\nexciting process of recruiting young talent .\nwe will be more formally organising ourselves in the next couple of weeks .\ncurrently , we are planning to have a brief team meeting in order to make\nintroductions , inform you about the associate program , and discuss the fall\nrecruiting calendar . to that end , please contact me with any questions or\ncomments you may have .\nthe team meeting date is set for september lst at 10 am in room 11 c 2 .\nplease rsvp to me as soon as possible .\ni look forward to meeting you all soon .\nsincerely ,\nkristin gandy\nassociate recruiter\nx 53214", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.145+0000", "entityId": 8259, "properties": {"text": "Subject: dinner thur . evening ?\nvince ,\ngreetings .\ni have not been advised by amy lamonsoff of a planned risk dinner next\nthur . if there will not be such a dinner , would your schedule permit a\ndinner next thur . ?\nbest ,\nehud\nehud i . ronn\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.151+0000", "entityId": 8260, "properties": {"text": "Subject: re : follow - up\nthanks , vince , that is great information .\neric\nvince j kaminski @ ect\n08 / 25 / 2000 02 : 51 pm\nto : eric thode / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : follow - up\neric ,\nmandeep chahal , ainsley gaddis , sofya tamarchenko , elena chilkina , james\naimone\nshould not count . m . chahal was transferred to the new company , the rest are\nsummer interns\n( gone back to school ) , or part - time high school or college kids . i shall\nwalk around and remind the rest\nof the crowd about the deadline .\nvince\neric thode @ enron\n08 / 25 / 2000 02 : 31 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : follow - up\nvince - -\nwe have been working the last few days to get ena ' s united way participation\nrate up as high as possible . i called earlier about your cost center because\nthe following 16 employees were listed in power trading , but i believe are\npart of the research organization .\nif you have a chance , could you encourage them to log onto\nhttp : / / unitedway . enron . com on the intranet and make a contribution to the\nunited way . the deadline is today .\nthanks .\neric\nemployees in your cost center :\nainsley gaddis elena chilkina james aimone jose marquez\nkevin moore mandeep chahal maureen raymond osman sezgen\npaulo issler peyton gibner pinnamaneni krishnarao samer takriti\nsofya tamarchenko thomas halliburton william smith yana kristal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.155+0000", "entityId": 8261, "properties": {"text": "Subject: re : follow - up\neric ,\nmandeep chahal , ainsley gaddis , sofya tamarchenko , elena chilkina , james\naimone\nshould not count . m . chahal was transferred to the new company , the rest are\nsummer interns\n( gone back to school ) , or part - time high school or college kids . i shall\nwalk around and remind the rest\nof the crowd about the deadline .\nvince\neric thode @ enron\n08 / 25 / 2000 02 : 31 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : follow - up\nvince - -\nwe have been working the last few days to get ena ' s united way participation\nrate up as high as possible . i called earlier about your cost center because\nthe following 16 employees were listed in power trading , but i believe are\npart of the research organization .\nif you have a chance , could you encourage them to log onto\nhttp : / / unitedway . enron . com on the intranet and make a contribution to the\nunited way . the deadline is today .\nthanks .\neric\nemployees in your cost center :\nainsley gaddis elena chilkina james aimone jose marquez\nkevin moore mandeep chahal maureen raymond osman sezgen\npaulo issler peyton gibner pinnamaneni krishnarao samer takriti\nsofya tamarchenko thomas halliburton william smith yana kristal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.160+0000", "entityId": 8262, "properties": {"text": "Subject: cal berkeley career fair\nrecruiting season is quickly approaching and i wanted to go ahead and make\neveryone aware of the first event at cal berkely this fall . the cal berkeley\ncareer fair will take place on friday , september 8 th . we would like to take\nthree representatives on campus to discuss the analyst program as well as the\nglobal technology track . travel arrangements would involve leaving on\nthursday evening , september 7 th , to recruit on campus all day friday . if you\nthink that you may be available to help with this event , please click on the\nbutton below .\nwe will discuss this and other events / dates on campus this fall during the\nteam meeting on tuesday , august 29 th at 2 : 00 in 49 c 4 . at that time we will\nhave sign - up sheets so that you can attend events that best fit in your\nschedule . i will also follow up with an e - mail similar to this so that\neveryone is able to express their date / event preferences .\nthanks so much for helping recruit at cal berkeley this fall . if you have\nany questions , please feel free to contact me at 3 - 3589 .\nashley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.164+0000", "entityId": 8263, "properties": {"text": "Subject: british pound analysis\nvince ,\nthe attached report on the pound incorporates some minor edits from your\nversion . we will be inserting graphics into the report tomorrow to show\ninterest rate differentials , exchange rate movements , and growth rate\ndifferentials .\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.169+0000", "entityId": 8264, "properties": {"text": "Subject: floating lng terminal\nfolks ,\nas a follow - up to scott neal ' s inquiry this morning concerning\nportable / floating lng opportunities for california , i have learned that no\nsuch capability currently exists .\naccording to todd peterson of enron global lng , exploitation of this\nopportunity has been the topic of some industry articles but no one , as far\nas we know , has\nconstructed such a vessel .\ni did come across a proposed design for an lng floating terminal by the\nitalian company , tecnomare . i contacted them and they indicated that they\nhave not\nbuilt such a vessel . it is estimated that construction of such a vessel\nwould take 2 - 3 years , and as one might imagine , achieving the required\noperational and\nenvironmental performance in such a vessel would be quite substantial .\nattached is a link to a relatively brief description of the proposed vessel ,\nplease let me know if any further research is needed .\ncharlie weldon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.174+0000", "entityId": 8265, "properties": {"text": "Subject: re : accounting adjustment\nvince , many thanks ! i will let our accounting department know . kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.179+0000", "entityId": 8266, "properties": {"text": "Subject: accounting adjustment\nkim ,\nfyi . i checked on the progress of the accounting adjustment and was told it\nwould happen\nthis month .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.184+0000", "entityId": 8267, "properties": {"text": "Subject: giuseppe ' s bio\nvince ,\ni will take care of the few typos , capitalizations , etc . , but i wanted to get\nthis to you asap . he has a fine sense of humor !\nsam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by william smith / corp / enron on 08 / 28 / 2000\n12 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : giuseppe paleologo @ enron communications on 08 / 28 / 2000 12 : 11 pm\nto : william smith / corp / enron @ enron\ncc :\nsubject : re : hello !\ni landed in the research group as a summer associate at the end of june ,\nstraight from sunny palo alto , where i am pursuing a phd in management\nscience and engineering . since my area of research is the performance\nevaluation and economic analysis of communication networks , enron is \" the \"\nplace to be : enron broadband services has the first mover ' s advantage in this\nfield , and nearly every decision requires an understanding of both data\nnetworks and financial mathematics . enron has most of the needed skills to\nsucceed , and the right attitude . after two months here , i am more convinced\nthan ever that the best is still to come .\ni am from rome , italy , where i have spent most of my life ( my pre - columbian\nperiod , properly speaking ) . italy is the nation known among americans for\nhaving invented the pasta alfredo and for having elected a porn star as a\nmember of parliament . the former allegation is indeed false : pasta alfredo is\nquintessential american . about the latter , one of my dubious achievement is\nto have interviewed the aforementioned member of parliament about her\npolitical agenda , receiving predictably fuzzy answers .\nas many members of the research groups , my background is in physics . i fell\nin love with operation research and management science while working for a\nlarge it consulting firm in italy , and wanted to learn more . i have been a\nstudent at stanford university since then . studying there has been a very\nenjoyable experience , and i am sorry i will have to leave it sometime soon .\nmanagement science is not the only hobby in my life . i am an avid\nmotorcyclist , and am a lifelong student of argentine tango . i also like\nreading ( a skill i learned in lst grade and has never failed me ) , in\nparticular 20 th century english , italian and french poetry .\nwilliam smith @ enron\n08 / 11 / 00 02 : 10 pm\nto : giuseppe paleologo / enron communications @ enron communications\ncc :\nsubject : hello !\ngiuseppe ,\ni ' m sam smith and among other things i ' m the department newsletter editor .\nare you going to be leaving after today or will you be around next week ? if\nyou ' ll be around , i ' d love for you to write a short bio piece for the\nnewsletter . have a look at some recent issues for examples . if you ' ll be\nhere monday morning , i can get a quick photo .\nif not , then i ' m sorry i missed you !\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.188+0000", "entityId": 8268, "properties": {"text": "Subject: re : probability question from vince ' s article\nthank you , michael ! i ' m forwarding your answer to vince kaminski , and thank\nyou for reading !\nsam smith\n5 - 8322\nenron energy services\nfrom : michael kim @ ees 08 / 28 / 2000 02 : 50 pm\nto : william . smith @ enron . com\ncc :\nsubject : probability question from vince ' s article\nanswer is 0 . 2344\nit ' s been awhile since i studied probability . i think this is a conditional\nprobability problem .\nthank you .\nmike kim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.193+0000", "entityId": 8269, "properties": {"text": "Subject: re : enron open positions\nvince ,\njust fine . i will be there at 11 : 30 am on friday , september 8 , 2000 .\nsee you at the enron building .\nthank you .\nmaruti\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : mmore @ houston . rr . com\ncc : vince . j . kaminski @ enron . com\ndate : monday , august 28 , 2000 2 : 14 pm\nsubject : re : enron open positions\nmaruti ,\ndoes 11 : 30 enron building work for you ?\nvince\n\" more \" on 08 / 28 / 2000 01 : 25 : 54 pm\nto : \" vince j kaminski \"\ncc :\nsubject : re : enron open positions\nhello vince ,\nthank you very much for getting back to me .\nfriday , september 8 is fine with me . please let me know what time would be\nconvenient for you and where we can meet . i can come any time anywhere .\nsincerely ,\nmaruti\n832 - 251 - 7267\n- - - - - original message - - - - -\nfrom : vince j kaminski\nto : more\ncc : vince j kaminski\ndate : monday , august 28 , 2000 12 : 12 pm\nsubject : re : enron open positions\nmaruti ,\nwhat about september 8 , friday ?\nvince\n\" more \" on 08 / 25 / 2000 03 : 27 : 26 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : enron open positions", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.198+0000", "entityId": 8270, "properties": {"text": "Subject: re : enron open positions\nmaruti ,\nwhat about september 8 , friday ?\nvince\n\" more \" on 08 / 25 / 2000 03 : 27 : 26 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : enron open positions\nhello mr . kaminski ,\ncan we meet for a quick lunch again at your\nconvenience ? just to bring you up to date about my search for the right\nopportunity . also i noticed in the risk magazine that enron investment\npartners and aig have joined treasuryconnect as strategic partners to\ncapitalize on internet - based transaction execution of financial derivatives .\ni would like to explore if i can be any help to hank finkenstaedt , the\ndirector of enron investment partners .\nplease let me know what day and time might be\nconvenient for you .\nthank you .\nsincerely ,\nmaruti more\n832 - 251 - 7267\nmmore @ houston . rr . com\n- - - - - original message - - - - -\nfrom : more\nto : vince j kaminski\ndate : monday , july 10 , 2000 11 : 28 am\nsubject : enron open positions\ndear mr . kaminski :\ni would like to explore the opportunity to join\nenron investment partners . i understand that enron has $ 20 million fund set\nup to finance start - ups , and gene humphreys and his assistant john godbold\nare trying to attract minority - owned start - up firms . i also learned that\nenron has plans to increase the size of this fund to $ 200 million . i can find\nthese opportunities for enron around the globe . given my background as a\nchartered financial analyst , with hands - on experience in investment\nmanagement covering financial derivatives , fixed income , and equity , i can be\na valuable resource to do the due diligence , origination , valuation , and\nmonitoring of these start - ups . would you please help me arrange a meeting\nwith either gene humphreys , ted murphy , or may be ken lay ?\ni am pasting below the job opportunities open at enron . i am also interested\nin these positions and would like to meet with the hiring manager .\ni will give you a call to follow up .\nthank you .\nsincerely ,\nmaruti more\n832 - 251 - 7267\njob 0000104282 details\nmanager / director\nessential functions : candidates will be responsible for helping\nfacilitate the transaction approval process for domestic and international\ninvestments . these investments include , but are not limited to , private\nequity , project development , venture capital , and structured credits .\ncandidates will work with business developers and underwriters in\nidentifying , understanding , and documenting transaction risks . they will also\nassist in preparing transaction approval documentation . in addition , they\nwill oversee the valuation , modeling , and simulation process for investments .\nthe primary focus is to identify and measure key risk factors from both a\nquantitative and a qualitative perspective with an emphasis on fundamental\nanalysis . the candidate must be able to assist in management and training of\ndepartmental staff and in formulation of investment valuation policies and\nprocedures .\nessential requirements : ? strong interpersonal skills ?\nunderstanding of transaction structuring and credit risk issues ?\nunderstanding of finance and valuation methodologies . ? proficiency with\nexcel cash flow models ? experience with financial statement analysis ?\nunderstanding of statistics and simulation techniques ( monte carlo ) .\npreferred skills : na .\nspecial characteristics : the ideal candidate will possess an\nundergraduate degree in finance , accounting , or economics , and an mba .\nrelevant experience could include credit analysis or valuation / finance\nexperience . manager / director in the risk assessment department of a $ 20\nbillion energy company .\ncontact : please email resumes to corpjobsl @ enron . com , please\nrefer to job no . 104282 when responding .\njob id 0000104282\ndepartment capital pricing / risk an\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 05 - jun - 00\nto submit your resume for this position :\nonline enter your resume id : no resume id ? you can create a\nresume on - line , deposit it in our database , and receive a resume id using our\nresume builder .\nyour resume id will allow you to submit your resume\nonce , but route it to up to 20 open positions . enron does not process resumes\nthat are not sent in response to specific positions .\nif you have an existing resume in electronic format ,\nthe resume builder allows you to cut and paste your whole resume .\nfax our fax number is 1 - 888 - 588 - 7152 .\nyou must tell us which jobs you ' re interested in , or\nwe will not be able to process your resume . write on your resume ( or on a\nseparate page ) all of the jobs ids of the jobs you ' re interested in pursuing .\nan equal opportunity and affirmative action employer\ntop of page copyright 1997 - 1999 enron corp . all rights\nreserved . contact us .\njob 0000104281 details\nstaff / spec / sr spec\nessential functions : \" snapshot \" preparation - responsible for\npreparation of quarterly asset \" snapshots \" which provides enron ' s senior\nmanagement with summarized operational and financial information on selected\nmerchant portfolio investments . responsibilities associated with preparation\nof snapshots include : researching publicly traded companies , calculating key\nfinancial data , updating and analyzing graphical summaries of performance ,\nreviewing press releases for recent events data , updating stock prices from\nbloomberg ? weekly underwriters report - full responsibility for updating and\ndistributing weekly underwriters ' report . involves regular interaction with\nexecutive vice president , london office personnel , as well as several vice\npresidents within underwriting group within rac . ? various projects - will be\nutilized on special projects on an as needed basis\nessential requirements : accounting / finance / economics degree with\n0 - 4 years business experience . excellent computer skills - excel ,\npowerpoint , bloomberg , word research skills and the ability to interact with\na variety of personnel and departments . excellent organization skills . self\nstarter , quick learner . must be team player . good writing skills with the\nability to concisely summarize operational and financial results .\npreferred skills : na .\nspecial characteristics : . entry level position with the\nopportunity to gain familiarity with all of enron ' s portfolio assets . future\nadvancement in asset and portfolio management possible for candidate who\nexhibits competence and creativity .\ncontact : please email resumes to enajobsl @ enron . com , please refer\nto job no . 104281 when responding .\njob id 0000104281\ndepartment due diligence / asset mgmt\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 05 - jun - 00\njob 0000102789 details\nsr specialist\nessential functions : in this position candidates will model , run\nmonte - carlo simulations , evaluate capital investments . these investments will\ncover a wide range . candidates will be responsible for the validation of\nmodels as well as insuring the accuracy and integrity of the model and\nunderlying assumptions . the primary focus will be to provide an objective\nvaluation for an investment by identifying and measuring key risk factors\nfrom both a quantitative as well as qualitative perspective . ? understanding\nof valuation techniques applied to equity or structured financial products . ?\nunderstanding of cash flow models and option pricing models . ? proficiency in\nexcel . ? understanding of project finance and risk mitigation techniques . ?\nexperience with financial statement analysis and pro forma statements . ?\nunderstanding of statistics and application to financial analysis .\nessential requirements : na .\npreferred skills : ? understanding of simulation methodologies\nsuch as montecarlo . ? exposure to statistical analysis software such as\ncrystal ball or @ risk . the ideal candidate will possess an undergraduate\ndegree in finance , accounting , or economics and have 2 to 3 years of\nfinancial modeling experience and an mba / cpa .\nspecial characteristics : na .\ncontact : please do not contact the hiring manager . please no\nfaxes . send resumes via e - mail to corpjobsl @ enron . com or mail to enron , attn :\ntvasut - eb 3628 , 1400 smith st . , houston , tx 77002 . please refer to job #\n102789\njob id 0000102789\ndepartment capital pricing / risk an\ncompany corporate staff\nrisk assessment and control\nlocation houston , tx\ntype\nposting date 17 - mar - 00\n- attl . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.203+0000", "entityId": 8271, "properties": {"text": "Subject: re : follow - up interview on 8 / 21 / 00\ndear vince ,\nthank you very much for updating me on the status of my job application . ? i\ngot another good news last week . ? i am happy to inform you i passed the 2000\ncfa level i examination . the pass rate for level i examination this year is\n52 % . i look forward to hearing from you .\nsincerely ,\nrabi de\n?\n?\n? vince . j . kaminski @ enron . com wrote :\nrabi ,\nthanks for your message .\neverybody who interviewed you was greatly impressed with your technical\nskills and professional attitude .\nwe shall extend an offer to you within a day or two .\nvince\nrabi deon 08 / 22 / 2000 02 : 57 : 37 pm\nto : vince kaminsky\ncc :\nsubject : follow - up interview on 8 / 21 / 00\ndear dr . kaminsky :\nthank you very much for arranging the follow - up interview with your\ninternal clients . i visited mr . ted murphy and his staff at rac and mr .\ndennis benevides at ees yesterday . i was impressed with level of risk\ntechnology employed by enron to achieve its business objectives . i want to\nreiterate my strong interest in joining your group , which is held in very\nhigh esteem both inside and outside of enron . ? i look forward to h ! earing\nfrom you .\nsincerely ,\nrabi s . de\ndo you yahoo ! ?\nyahoo ! mail - free email you can access from anywhere !\ndo you yahoo ! ?\nyahoo ! mail - free email you can access from anywhere !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.208+0000", "entityId": 8272, "properties": {"text": "Subject: cal berkeley presentation\nhello vince and shirley ,\nthank you so much for your patience as i tried to shuffle dates and events\naround ! i have some great news . i was able to secure a room on campus at\nthe faculty club for the presentation on monday october 16 th at 7 : 00 - 9 : 00 .\nthat should work out perfectly as far as being about to present at the\nseminar from 3 : 30 - 5 : 00 . furthermore , i was able to adjust the resume drop\ndates so that we have through the week of the 16 th for students to submit\ntheir resumes .\ni will go into more detail about this tomorrow at the cal berkeley team\nmeeting . i have put together some booklets to hand out to the team\ntomorrow . vince , i have put some time into the agenda for you to welcome the\nteam and get everyone excited about cal recruiting this fall . thank you for\nall of your help ! please let me know if there is something that you would\nlike me to add to the agenda for tomorrow .\nthanks !\nashley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.213+0000", "entityId": 8273, "properties": {"text": "Subject: re : carnegie mellon team meeting\nunfortunately i do not have a phone right now so i will have to call as soon\nas they get me up and running . i went ahead and sent out the dates we have\non schedule currently with the intention that if we get new dates they will\nbe announced in the team meeting on thursday . hope that is okay . i needed\nto get a message out to participant soon so we don ' t get in a bind in a\ncouple of weeks .\nkristin\nvince j kaminski @ ect\n08 / 28 / 2000 11 : 02 am\nto : kristin gandy / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : carnegie mellon team meeting\nkristin ,\nwhat about the visit to the campus on nov . 3 ?\nany resolution ?\nvince\nkristin gandy @ enron\n08 / 28 / 2000 10 : 03 am\nto : vince j kaminski / hou / ect @ ect , kent densley / corp / enron @ enron , dorothy\nmccoppin / fgt / enron @ enron , kevin kindall / corp / enron @ enron , andre\nbeskrowni / enron communications @ enron communications , gaurav\nbabbar / hou / ect @ ect , john walt / corp / enron @ enron , john b gordon / na / enron @ enron ,\ndave cummings / enron @ gateway\ncc : judy nyegaard / hou / ect @ ect\nsubject : carnegie mellon team meeting\ngreetings , carnegie mellon recruiting team !\neach of you has been chosen to represent enron for our fall 2000 recruiting\nefforts at carnegie mellon university . as part of the team , you will be\nchallenged with choosing the best candidates from carnegie mellon ' s graduate\nschool to join our associate program .\nour first campus event will be on september 15 and interviews will be held on\ncampus december 11 and 12 . i hope you are all able to participate in the\nexciting process of recruiting young talent .\nwe will be more formally organising ourselves in the next couple of weeks .\ncurrently , we are planning to have a brief team meeting in order to make\nintroductions , inform you about the associate program , and discuss the fall\nrecruiting calendar . to that end , please contact me with any questions or\ncomments you may have .\nthe team meeting date is set for august 31 st at 10 am in room 19 c 2 .\nplease rsvp to me as soon as possible .\ni look forward to meeting you all soon .\nsincerely ,\nkristin gandy\nassociate recruiter\nx 53214", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.218+0000", "entityId": 8274, "properties": {"text": "Subject: carnegie mellon team meeting\ngreetings , carnegie mellon recruiting team !\neach of you has been chosen to represent enron for our fall 2000 recruiting\nefforts at carnegie mellon university . as part of the team , you will be\nchallenged with choosing the best candidates from carnegie mellon ' s graduate\nschool to join our associate program .\nour first campus event will be on september 15 and interviews will be held on\ncampus december 11 and 12 . i hope you are all able to participate in the\nexciting process of recruiting young talent .\nwe will be more formally organising ourselves in the next couple of weeks .\ncurrently , we are planning to have a brief team meeting in order to make\nintroductions , inform you about the associate program , and discuss the fall\nrecruiting calendar . to that end , please contact me with any questions or\ncomments you may have .\nthe team meeting date is set for august 31 st at 10 am in room 19 c 2 .\nplease rsvp to me as soon as possible .\ni look forward to meeting you all soon .\nsincerely ,\nkristin gandy\nassociate recruiter\nx 53214", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.223+0000", "entityId": 8275, "properties": {"text": "Subject: re : mscf speaker series\npierre ,\ni am working with kristin gandy on my trip . hopefully , she will be able to\nconfirm the\nnovember date in a day or two . kristin is taking care of all the\narrangements .\nvince\npierre - philippe ste - marie on 08 / 28 / 2000 09 : 34 : 47 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : mscf speaker series\ndear mr . kaminski ,\nany news yet about your trip to pittsburgh ? i would sure appreciate a\nmessage saying that everything is ok for early november ! !\npierre", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.228+0000", "entityId": 8276, "properties": {"text": "Subject: research group\nhello norma :\nin answer to your phone message i am sending you the following information .\nthere is one thing you probably need to be aware of . on the research\nlist , elena chilkina is shown as an analyst p / t , however , in the records she\nis shown as an \" adm coord \" . this was done so that she could be considered\nnon - exempt and receive overtime . however , her actual job is an analyst .\nalso , roman zadarozhny is an analyst that rotated out of our group 6 months\nago , but was never moved to the new group . he is now up for rotation again\nand vince said that we will just keep him until he finds a new rotation .\nif you have any questions , please call me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.233+0000", "entityId": 8277, "properties": {"text": "Subject: re : chapter\ndear vince ,\nthat ' s fine - i didn ' t know if yours had changed as grant ' s did - i have\nyour earlier part and that has already been type set .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : \" vince j kaminski \"\nto : \" chris strickland \"\ncc : \" vince j kaminski \"\nsent : tuesday , august 29 , 2000 5 : 18 am\nsubject : re : chapter\n>\n>\n> chris ,\n>\n> my part has not changed for some time ( since early july ) .\n>\n> i sent the last vintage of corrections to you when i was in sydney .\n> you can send the version you consider final to us just to double check .\n>\n> i took the liberty of sending our chapter to darrell duffie and he liked\nit .\n> what is more important he did not find any error .\n>\n>\n> i shell send you my comments on the article for robin in a day or so .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" chris strickland \" on 08 / 28 / 2000 02 : 55 : 31 pm\n>\n> please respond to \" chris strickland \"\n>\n> to : ,\n> cc :\n> subject : chapter\n>\n>\n>\n> hi vince ,\n>\n> how are things with you ? well i hope . do you have the latest version of\nyour\n> part of chapter 3 ? ( i think grant has sent thru a seperate , updated\nversion to\n> you , which has been typeset ) . everything else has been tied up and we\nwill go\n> with the version we have , unless we hear otherwise .\n>\n> many thanks and best regards .\n>\n> chris .\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.238+0000", "entityId": 8278, "properties": {"text": "Subject: re : chapter\nchris ,\nmy part has not changed for some time ( since early july ) .\ni sent the last vintage of corrections to you when i was in sydney .\nyou can send the version you consider final to us just to double check .\ni took the liberty of sending our chapter to darrell duffie and he liked it .\nwhat is more important he did not find any error .\ni shell send you my comments on the article for robin in a day or so .\nvince\n\" chris strickland \" on 08 / 28 / 2000 02 : 55 : 31 pm\nplease respond to \" chris strickland \"\nto : ,\ncc :\nsubject : chapter\nhi vince ,\n?\nhow are things with you ? well i hope . do you have the latest version of your\npart of chapter 3 ? ( i think grant has sent thru a seperate , updated version\nto you , which has been typeset ) . everything else has been tied up and we\nwill go with the version we have , unless we hear otherwise .\n?\nmany thanks and best regards .\n?\nchris .\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.243+0000", "entityId": 8279, "properties": {"text": "Subject: chapter\nhi vince ,\n?\nhow are things with you ? well i hope . do you have the latest version of your\npart of chapter 3 ? ( i think grant has sent thru a seperate , updated version\nto you , which has been typeset ) . everything else has been tied up and we\nwill go with the version we have , unless we hear otherwise .\n?\nmany thanks and best regards .\n?\nchris .\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.248+0000", "entityId": 8280, "properties": {"text": "Subject: joint probabilities\nmichael\ntables of joint probabilities for scenario 3 ( 8 % improvement rate during the\nregulatory cycle ) are attached .\ncall if you have any questions .\nbob x 35163", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.253+0000", "entityId": 8281, "properties": {"text": "Subject: re : hyundai merchant marine lng draft dash\njeff ,\ni don ' t think this transaction makes sense . we should not keep increasing our\nexposure\nin one area , given that we can deploy our capital in a more efficient way\nelsewhere ,\nwithout taking illiquid , long - term positions .\nvince\nfrom : jeffrey a shankman 08 / 29 / 2000 10 : 30 am\nto : eric gonzales / lon / ect @ ect , joe gold / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc :\nsubject : hyundai merchant marine lng draft dash\nhas any of you seen this ? ideas , comments , feedback ? thanks for the timely\nresponse . jeff\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffrey a shankman / hou / ect on 08 / 29 / 2000\n10 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : rick buy\n08 / 29 / 2000 08 : 37 am\nto : jeffrey a shankman / hou / ect @ ect\ncc :\nsubject : hyundai merchant marine lng draft dash\nthis is a draft of the dash we are putting together . michael tribolet works\nin my group and feel free to contact him if you have specific questions . i\nalso spoke with frevert re lng and he informed me that if project summer\nhapppens , lng goes with summer , if not , it is transferred to you . what\nhappens in the mean time is anyone ' s guess . lets discuss . rick\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rick buy / hou / ect on 08 / 29 / 2000 08 : 32 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael tribolet @ enron\n08 / 28 / 2000 08 : 15 pm\nto : rick buy / hou / ect @ ect\ncc :\nsubject : hyundai merchant marine lng draft dash\nhere is the draft of the dash . while having a positive npv , many of the\ntrials run are negative due to defaults .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.258+0000", "entityId": 8282, "properties": {"text": "Subject: re : forecasting project\nbarbara ,\nwe are in touch with ketra and john and we shall work with them when they are\nhere .\nvince\nbarbara g dillard @ enron\n08 / 29 / 2000 11 : 23 am\nto : mark mixon / hou / ees @ ees @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , laura\nluce / corp / enron @ enron , d . wear @ pecorp . com @ ees @ ect ,\nk . schmitt @ pecorp . com @ ees @ ect , j . wirick @ pecorp . com @ ees @ ect\nsubject : re : forecasting project\nmark :\nf . y . i . - i have been informed by ketra that she plans to be in the houston\noffice on monday september 18 th through wednesday september 20 th to meet with\nvince and stinston .\nhopefully we will be ready to continue phase i of the forecasting project .\ncan you make arrangements with vince and stinson ( hopefully they will be\navailable to meet ! ) .\nthanks !\nbarbara\n( 312 ) 541 - 1232", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.264+0000", "entityId": 8283, "properties": {"text": "Subject: apex conference 2000 update\napex 2000 is an opportunity to join colleagues from around the globe for a\nconference on relevant , timely and strategic issues facing our industry .\ndelegates and speakers from asia , australia , europe and north and south\namericas will be meeting in canada in october to discuss issues that will\nshape electrical deregulation in the foreseeable future . the conference is\nscheduled for october 25 and 26 , 2000 in kananaskis , near calgary , alberta .\nvisit the apex 2000 conference web site at\nhttp : / / www . apex 2000 conf . com / update 4 . html for more details and an updated\nlist of speakers and topics . registration space is limited ! don ' t miss out !\nplan to be a part of this forum on significant issues and opportunities\nfacing the electric industry as it moves through deregulation .\nany questions or inquiries should be forwarded to apex 2000 @ incentre . net or\nby phone at 1 - 403 - 244 - 4487 or by fax at 1 - 403 - 244 - 2340 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.268+0000", "entityId": 8284, "properties": {"text": "Subject: urgent\nthe associate and analyst recruiting department will be conducting a number\nof two hour workshops to review our recruiting and interview process for the\nfall on - campus recruiting effort . critical information regarding our\non - campus interview process , revised evaluation forms and program structure\nwill be reviewed during these two hours sessions .\nit is mandatory that all team members attend these workshops . all team\nmembers must attend in order to articulate and demonstrate the enron\nrecruiting process . knowing how busy schedules are , we have made\narrangements to present these workshops in two hours sessions for a total of\n40 workshops that will run during the last week of august , through the month\nof september and end at mid october .\nlisted below are the dates , location and times for each session . please\nselect a date and time and e - mail this information to my assistant , dolores\nmuzzy . we can accommodate 25 participants at a time . dolores will take\ndates and times on a first come , first serve basis . we have scheduled enough\nsessions to accommodate every member of both the associate and analyst\nrecruiting teams .\nin order to participate in the recruiting process , you must attend one of\nthese sessions . we will be tracking participation . cpe credits will also be\ngiven for attending this workshop .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.274+0000", "entityId": 8285, "properties": {"text": "Subject: ena analyst and associate \" brownbag \" presentations\nit is the intent of the office of the chairman to maintain a high quality\nflow of analysts and associates rotating through enron north america as well\nas provide them with up to date information on all the potential rotations in\nena . additionally , we would like to provide the ena aa ' s a forum for your\nrespective groups to promote your business unit as a viable alternative in\nthe rotation process . i need your assistance for this endeavor and want your\nrespective business unit to participate in the process by delivering an\ninformal presentation to the aa group which should include the following :\nyour business unit ' s current activities , purpose and interfaces with other\ndepartments\nrecent successes and current projects\nideas on the horizon\nopportunities in your business unit for aa ' s\nthe benifits of rotation in your business unit\nan open q & a session\nthese presentations should be informal and it is not necessary to have\nhandouts . the goal is to provide an open forum for the aa ' s and to have them\nask questions about each business unit . also , bringing one of your current\naa ' s with you to provide their insight might help stimulate discussion . ted\nbland will be contacting you to schedule your business unit for a\npresentation . the first \" brownbag \" will take place september 8 between\n12 : 00 pm and 1 : 00 pm in room 30 cl .\ndave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.278+0000", "entityId": 8286, "properties": {"text": "Subject: re : enron / stanford program\nhi vince , stinson\nthank you for hosting my visit to enron and arranging for me to meet\nwith you and other decision - makers at enron . the meetings been very\nproductive on my side , as i try to formulate the project more\nclearly .\nwe are entering the period that i have to set up the research assistantships\n( ra )\nfor next year for giuseppe and the other student i have committed to support\non this project . school starts in late september , but already i have to\nstart putting together the papers for the ras in the fall , as per departmental\nrequirement .\nwould it be possible to put the project in place soon , so that i can\ndo the raship papers for the students ? i expect i will start having\npressure from the department to do the paperwork for these raships early\nseptember , and i have to have them in place by the third week of september ,\njust before school starts .\ni am attaching below the same draft of a letter i had sent you in a previous\ne - mail , which would be required to set up the project at stanford . please ,\nlet me know how you would like to proceed .\nagain , thanks for your hospitality and i look forward to productive\ncollaboration\nduring the coming year and beyond .\nbest regards ,\nnick\nps : vince , i look forward to seeing you during your visit to the bay area\nin october .\ndraft of letter to be sent from enron to stanford .\nprof . nicholas bambos\n420 terman engineering center\nmanagement science & eng . dept . and\nelectrical engineering department\nstanford university\nstanford , ca 94305\ndear nick ,\nwe are happy to provide gift funds of $ 100 , 000 per year , over\nthree years , to support a program in your research group , related\nto bandwidth markets / trading and networking technologies .\nenron would like to support research activities in the above\nmentioned area , including pd . d . student work , research seminars etc .\nthere may also be opportunities to have the supported ph . d . students\ndo summer internships at enron , related to their research interests .\nplease find enclosed a check of $ 100 , 000 payable to stanford university\nfor supporting this research effort in your group during the first year .\nbest regards ,\nname and title", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.283+0000", "entityId": 8287, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nthat will be a great talk\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : tuesday , august 29 , 2000 5 : 01 pm\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> the date of our trip to berkeley has been set . it will be october 16 th and\n> 17 th\n> ( monday and tuesday ) .\n>\n> i shall be glad to make a presentation on energy derivatives markets\n> ( development of the markets in the us and europe , valuation difficulties ,\n> enron ' s role\n> in developing the forward markets for natural gas and electricity ) .\n>\n> please , let me know if this topic would be of interest to you . if this is\n> the\n> case , i shall follow with a title and an abstract .\n>\n> by the way , are you free for dinner on monday ?\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> great . our seminars are 3 : 30 to 5 pm . if it works for you please send me a\n> title and abstract .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from : \" vince j kaminski \"\n> to : \" shmuel oren \"\n> cc : \" vince j kaminski \" ; \" ashley baxter \"\n>\n> sent : thursday , august 24 , 2000 9 : 58 am\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> >\n> > shmuel ,\n> >\n> > thanks for the message . i am working with our recruiter , ashley baxter ,\n> > to finalize the date of the trip . i shall shoot for october the 23 rd\n> > if this date works for the rest of our team .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> >\n> > to : vince j kaminski / hou / ect @ ect\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> >\n> > dear vince .\n> > i sent you a reply earlier this month but i haven ' t heard from you about\n> the\n> > date of your visit . our department has a seminar every monday . if you\ncan\n> > schedule your visit on a monday i would like to invite you to give a\n> seminar\n> > which will be attended by many of our graduate students and faculty and\n> will\n> > give you an opportunity to tell them about your program . with sufficient\n> > lead - time i can advertise the seminar in the hass school to their\n> financial\n> > engineering students .\n> > shmuel .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to : ; ;\n> >\n> > sent : tuesday , august 08 , 2000 10 : 59 am\n> > subject : hello from vince kaminski at enron\n> >\n> >\n> > > shmuel ,\n> > >\n> > > i hope you remember me . i visited you together with aram sogomonian , a\n> > > good friend of mine , a few years ago . i am currently responsible ,\namong\n> > > other things , for recruiting graduates with finance and / or technical\n> > > backgrounds at the university of berkeley . i would be glad to give you\n> a\n> > > call and talk more about the details of our program . my colleague ,\n> > > ashleybaxter , from the analyst / associate program at enron would join\nme\n> > > as well .\n> > >\n> > > i am sending you a copy of the brochure about the analyst / associate\n> > > program .\n> > >\n> > > vince kaminski\n> > >\n> > >\n> > > vincent kaminski\n> > > managing director - research\n> > > enron corp .\n> > > 1400 smith street\n> > > room ebl 962\n> > > houston , tx 77002 - 7361\n> > >\n> > > phone : ( 713 ) 853 3848\n> > > fax : ( 713 ) 646 2503\n> > > e - mail : vkamins @ enron . com\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.287+0000", "entityId": 8288, "properties": {"text": "Subject: hello from enron\ndear dr . mcmullen ,\na few weeks ago i received a call from your university\nregarding employment opportunities at enron .\ni called back and summarized the needs of my group ( an ideal profile of a\ncandidate ) :\n1 . mathematical finance\n2 . computer programming ( c , c + + )\n3 . understanding of the energy markets\ni shall appreciate any information about potential candidates .\ni have also given some other suggestions regarding potential\nopportunities for graduates with different profiles .\nplease , feel free to call me . my number is 713 853 3848 .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.292+0000", "entityId": 8289, "properties": {"text": "Subject: hello from enron\ndear dr . mcmullen ,\na few weeks ago i received a call from your university\nregarding employment opportunities at enron .\ni called back and summarized the needs of my group ( an ideal profile of a\ncandidate ) :\n1 . mathematical finance\n2 . computer programming ( c , c + + )\n3 . understanding of the energy markets\ni shall appreciate any information about potential candidates .\ni have also given some other suggestions regarding potential\nopportunities for graduates with different profiles .\nplease , feel free to call me . my number is 713 853 3848 .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.296+0000", "entityId": 8290, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nshmuel ,\nthe date of our trip to berkeley has been set . it will be october 16 th and\n17 th\n( monday and tuesday ) .\ni shall be glad to make a presentation on energy derivatives markets\n( development of the markets in the us and europe , valuation difficulties ,\nenron ' s role\nin developing the forward markets for natural gas and electricity ) .\nplease , let me know if this topic would be of interest to you . if this is the\ncase , i shall follow with a title and an abstract .\nby the way , are you free for dinner on monday ?\nvince\n\" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\nto : \" vince j kaminski \"\ncc :\nsubject : re : hello from vince kaminski at enron\ngreat . our seminars are 3 : 30 to 5 pm . if it works for you please send me a\ntitle and abstract .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom : \" vince j kaminski \"\nto : \" shmuel oren \"\ncc : \" vince j kaminski \" ; \" ashley baxter \"\nsent : thursday , august 24 , 2000 9 : 58 am\nsubject : re : hello from vince kaminski at enron\n>\n>\n> shmuel ,\n>\n> thanks for the message . i am working with our recruiter , ashley baxter ,\n> to finalize the date of the trip . i shall shoot for october the 23 rd\n> if this date works for the rest of our team .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n>\n> dear vince .\n> i sent you a reply earlier this month but i haven ' t heard from you about\nthe\n> date of your visit . our department has a seminar every monday . if you can\n> schedule your visit on a monday i would like to invite you to give a\nseminar\n> which will be attended by many of our graduate students and faculty and\nwill\n> give you an opportunity to tell them about your program . with sufficient\n> lead - time i can advertise the seminar in the hass school to their\nfinancial\n> engineering students .\n> shmuel .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from :\n> to : ; ;\n>\n> sent : tuesday , august 08 , 2000 10 : 59 am\n> subject : hello from vince kaminski at enron\n>\n>\n> > shmuel ,\n> >\n> > i hope you remember me . i visited you together with aram sogomonian , a\n> > good friend of mine , a few years ago . i am currently responsible , among\n> > other things , for recruiting graduates with finance and / or technical\n> > backgrounds at the university of berkeley . i would be glad to give you a\n> > call and talk more about the details of our program . my colleague ,\n> > ashleybaxter , from the analyst / associate program at enron would join me\n> > as well .\n> >\n> > i am sending you a copy of the brochure about the analyst / associate\n> > program .\n> >\n> > vince kaminski\n> >\n> >\n> > vincent kaminski\n> > managing director - research\n> > enron corp .\n> > 1400 smith street\n> > room ebl 962\n> > houston , tx 77002 - 7361\n> >\n> > phone : ( 713 ) 853 3848\n> > fax : ( 713 ) 646 2503\n> > e - mail : vkamins @ enron . com\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.301+0000", "entityId": 8291, "properties": {"text": "Subject: texas a & m at galveston\ndr . bill mcmullen called you this morning and said that you had called\nthe school last week asking for courses that they scheduled for quantitive\nanalysis .\nthey gave your name to dr . mcmullen and he would like you to email\nhim exactly what you are looking for .\nhis email address is : mcmullew @ tamug . tamu . edu\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.305+0000", "entityId": 8292, "properties": {"text": "Subject: re : joint probabilities\nmichael\na table ( table 2 ) has been added with probabilities for rab > x , fx > y . at\nthe current currency level , approx 1 . 5 , all the numbers are multiplied by 1 / 2\nbecause the currency is equally likely to rise or fall . this may give a\npessimetic view of achieving a given stock price .\nlet me know when you want to get togetrher .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.310+0000", "entityId": 8293, "properties": {"text": "Subject: lng meeting\nvince ,\nbefore i contact the london staff about next wednesday ' s meeting , i was\nwondering if we could move it up a little bit . the reason is that by 2 pm in\nhouston it is 8 pm in london and i thought it might be difficult to round up\nthe crew in london at that time . please let me know if we have plans to\nchange the time .\nthanks ,\neric", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.315+0000", "entityId": 8294, "properties": {"text": "Subject: re : lng \" book \" meeting\ndoug ,\nwe were trying to get everybody together for today\nbut with no luck . wednesday next week is the first feasible\ndate .\nsorry for that .\nvince\ndoug arnell @ enron _ development\n08 / 29 / 2000 01 : 59 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski @ ect\nsubject : re : lng \" book \" meeting\ni ' m assuming that this meeting is tomorrow ( wednesday the 30 th ) not next\nwednesday .\nshirley crenshaw @ ect\n08 / 29 / 2000 09 : 06 am\nto : sally beck / hou / ect @ ect , eric groves / hou / ect @ ect , doug . arnell @ enron . com ,\nvince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : lng \" book \" meeting\nhello everyone :\nthe next lng \" book \" meeting has been scheduled for wednesday ,\nseptember 6 at 2 : 00 pm in ebl 9 c 2 .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.321+0000", "entityId": 8295, "properties": {"text": "Subject: lng \" book \" meeting\nhello bjorn :\nvince wanted me to include you in this meeting also . hope you can come .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 08 / 30 / 2000\n07 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n08 / 29 / 2000 09 : 06 am\nto : sally beck / hou / ect @ ect , eric groves / hou / ect @ ect , doug . arnell @ enron . com ,\nvince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : lng \" book \" meeting\nhello everyone :\nthe next lng \" book \" meeting has been scheduled for wednesday ,\nseptember 6 at 2 : 00 pm in ebl 9 c 2 .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.325+0000", "entityId": 8296, "properties": {"text": "Subject: transport fuel p / l\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 08 / 30 / 2000 11 : 06 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n08 / 30 / 2000 11 : 07 am\nto : colleen sullivan / hou / ect @ ect\ncc : andrew h lewis / hou / ect @ ect , greg couch / hou / ect @ ect\nsubject : transport fuel p / l\ncolleen ,\nafter looking into the transport deals for nbpl ( long term deal 1 , 2 , 25 , 26 ) ,\ni think i figured it out why\nwe see positive fuel p / l for deal 1 , 25 , and 26 and negative fuel p / l for deal\n2 .\nthe following plot shows nymex curve as of 8 / 23 / 00 :\nfor short term , nymex moved up compared to that of 8 / 22 / 00 , while the long\nterm nymex moved down .\nhere are the tenor for each deal :\ndeal 1 : start 01 - sep - 00 , end 22 - may - 09 , the above graph suggested a\npositve fuel p / l\ndeal 2 : start 01 - sep - 00 , end 28 - feb - 02 , the above graph suggested a\nsmall negative p / l\ndeal 25 : start 01 - may - 02 , end 28 - feb - 09 , the above graph suggested a\npositve fuel p / l\ndeal 26 : start 01 - mar - 09 , end 31 - may - 09 , the above graph suggested a\npositve fuel p / l\nthe transport book seems to be correct on these fuel p / ls .\nanother point worth to mention is that the fuel cost is related to index\nprice ( nymex + basis + index premium ) , to correctly interpret fuel p / l ,\nwe need to look at the index curve change .\nlet me know your thoughts on this .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.330+0000", "entityId": 8297, "properties": {"text": "Subject: re :\ni have you scheduled .\ndolores\nvince j kaminski\n08 / 30 / 2000 08 : 13 am\nto : dolores muzzy / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re :\ndolores\nplease , register me for a session on 9 / 29 / 2000 at 12 : 45 .\nvince kaminski\nceleste roberts\n08 / 29 / 2000 06 : 21 pm\nto : celeste roberts / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject :\nurgent\nthe associate and analyst recruiting department will be conducting a number\nof two hour workshops to review our recruiting and interview process for the\nfall on - campus recruiting effort . critical information regarding our\non - campus interview process , revised evaluation forms and program structure\nwill be reviewed during these two hours sessions .\nit is mandatory that all team members attend these workshops . all team\nmembers must attend in order to articulate and demonstrate the enron\nrecruiting process . knowing how busy schedules are , we have made\narrangements to present these workshops in two hours sessions for a total of\n40 workshops that will run during the last week of august , through the month\nof september and end at mid october .\nlisted below are the dates , location and times for each session . please\nselect a date and time and e - mail this information to my assistant , dolores\nmuzzy . we can accommodate 25 participants at a time . dolores will take\ndates and times on a first come , first serve basis . we have scheduled enough\nsessions to accommodate every member of both the associate and analyst\nrecruiting teams .\nin order to participate in the recruiting process , you must attend one of\nthese sessions . we will be tracking participation . cpe credits will also be\ngiven for attending this workshop .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.336+0000", "entityId": 8298, "properties": {"text": "Subject: re :\ndolores\nplease , register me for a session on 9 / 29 / 2000 at 12 : 45 .\nvince kaminski\nceleste roberts\n08 / 29 / 2000 06 : 21 pm\nto : celeste roberts / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject :\nurgent\nthe associate and analyst recruiting department will be conducting a number\nof two hour workshops to review our recruiting and interview process for the\nfall on - campus recruiting effort . critical information regarding our\non - campus interview process , revised evaluation forms and program structure\nwill be reviewed during these two hours sessions .\nit is mandatory that all team members attend these workshops . all team\nmembers must attend in order to articulate and demonstrate the enron\nrecruiting process . knowing how busy schedules are , we have made\narrangements to present these workshops in two hours sessions for a total of\n40 workshops that will run during the last week of august , through the month\nof september and end at mid october .\nlisted below are the dates , location and times for each session . please\nselect a date and time and e - mail this information to my assistant , dolores\nmuzzy . we can accommodate 25 participants at a time . dolores will take\ndates and times on a first come , first serve basis . we have scheduled enough\nsessions to accommodate every member of both the associate and analyst\nrecruiting teams .\nin order to participate in the recruiting process , you must attend one of\nthese sessions . we will be tracking participation . cpe credits will also be\ngiven for attending this workshop .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.341+0000", "entityId": 8299, "properties": {"text": "Subject: re : confidential\nsophie ,\ni think it ' s a fair deal .\nvince\nsophie kingsley 08 / 30 / 2000 11 : 49 am\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , michele small / lon / ect @ ect\nsubject : re : confidential\nboth ,\nthanks for your comments and comparisons , it is good to get context .\nbased on your comments here would be my proposal\no 63 , 500 basic salary -\nol 5 k kickers for each of the 2 years - these are paid as a lump sum on each\nanniversary guaranteed . therefore guaranteed salary is effectively o 78 , 500 -\nthis is completely separate and in addition to any performance bonus\nincrease the value of options to o 60 k to vest 1 / 3 as before - which leaves a\n1 / 3 ( $ 20 , 000 ) hanging out there at the end of the contract .\njust fyi - anjam is currently on o 68 , 000 but does not have an agreement , so\nthis would effectively put a 10 . 5 k gap between the two .\nlet me know your thoughts .\ndale surbey\n30 / 08 / 2000 16 : 09\nto : sophie kingsley / lon / ect @ ect\ncc :\nsubject : re : confidential\nsophie ,\nhere ' s vince ' s comments on your proposal for steve . also , what ' s a 2 - yr\nexec ? how do the kickers work - are they basically a guaranteed minimum\nbonus or incremental bonus ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 16 : 10\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n30 / 08 / 2000 14 : 21\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : confidential\ndale ,\nthanks for your message .\ni don ' t know the labor market in london that well but here the market\nfor quants is very hot . steve is in my view an exceptionally talented person\nand i would go an extra mile to retain him long - term for the company .\ni would adjust the base salary or the kicker upward a bit .\no 62 , 000 basic is what anjam is receiving currently ( if i remember\ncorrectly ) . steve has a much higher value\nto enron than anjam .\nvince\ndale surbey\n08 / 30 / 2000 07 : 49 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : confidential\nvince ,\nthis is the package hr is proposing for steven . what do you think ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 13 : 50\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsophie kingsley 29 / 08 / 2000 20 : 32\nto : dale surbey / lon / ect @ ect\ncc :\nsubject : confidential\nsorry dale , long day , here are the proposed numbers\n2 year exec\no 62 , 000 basic ( currently o 55 k )\nol 0 k each year kickers\n$ 50 , 000 worth of options to vest 1 / 3 1 / 3 1 / 3\nlet me know what you think .\nregards\nsophie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.346+0000", "entityId": 8300, "properties": {"text": "Subject: re : confidential\ndale ,\nthanks for your message .\ni don ' t know the labor market in london that well but here the market\nfor quants is very hot . steve is in my view an exceptionally talented person\nand i would go an extra mile to retain him long - term for the company .\ni would adjust the base salary or the kicker upward a bit .\no 62 , 000 basic is what anjam is receiving currently ( if i remember\ncorrectly ) . steve has a much higher value\nto enron than anjam .\nvince\ndale surbey\n08 / 30 / 2000 07 : 49 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : confidential\nvince ,\nthis is the package hr is proposing for steven . what do you think ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 13 : 50\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsophie kingsley 29 / 08 / 2000 20 : 32\nto : dale surbey / lon / ect @ ect\ncc :\nsubject : confidential\nsorry dale , long day , here are the proposed numbers\n2 year exec\no 62 , 000 basic ( currently o 55 k )\nol 0 k each year kickers\n$ 50 , 000 worth of options to vest 1 / 3 1 / 3 1 / 3\nlet me know what you think .\nregards\nsophie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.350+0000", "entityId": 8301, "properties": {"text": "Subject: re : vince ' s london visit\nhi wendy :\nwe have finally made arrangements for vince ' s trip in september . he will\nbe arriving in london monday the 18 th at 9 : 55 am .\nhe would like to set up a meeting with paul and julian sometime on tuesday ,\nthe 19 th . just let me know when it is convenient .\nthanks !\nshirley\nwendy . dunford @ arthurandersen . com on 08 / 29 / 2000 11 : 44 : 14 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : vince ' s london visit\nhi shirley\ni would be grateful if you could give me some dates and times when vince will\nbe\nfree to meet with paul day and julian leake , tom leuthwaite is not available\nto\nmeet unfortunately during the week that vince is here .\nkind regards\nwendy\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.358+0000", "entityId": 8302, "properties": {"text": "Subject: phil roan\nphil roan of koch ' s weather group has accepted a position with reliant\nworking for their power desk . he starts in a week . we tried to get him to\nreconsider , but he said that he was already committed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.365+0000", "entityId": 8303, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nashley ,\ni agree with you . two trips are the best solution , unless of course shmuel\nrearranges\nthe speaker list and the 16 th will work for the presentation as well .\ncoordinating so many different events is never easy . thanks for your\npatience .\nvince\nenron technology\nfrom : ashley baxter @ enron 08 / 30 / 2000 08 : 24 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : hello from vince kaminski at enron\nvince ,\nactually , the general presentation that i have scheduled for the faculty club\n( a dining / meeting room ) on campus is set for 7 : 00 p . m . - 9 : 00 p . m . on monday\nthe 16 th . i can attempt to change the presentation date again , however i\nfeel that it would be very unlikely that we are able to get another facility\nthat is near campus . at this point it may be better to plan on making two\nseperate trips so that we are able to handle both events . maybe we could\ncombine another presentation in during the same visit . what do you think ?\nashley\nvince j kaminski @ ect\n08 / 30 / 2000 08 : 03 am\nto : \" shmuel oren \" @ enron\ncc : vince j kaminski / hou / ect @ ect , ashley baxter / corp / enron @ enron , shirley\ncrenshaw / hou / ect @ ect\nsubject : re : hello from vince kaminski at enron\nshmuel ,\nlet ' s see if we can either rearrange the seminar speakers\nor change the date of our visit to the campus . ashley baxter , our coordinator\nis very efficient and\ngot a faculty room for a presentation on monday morning on the 16 th .\nvince\n\" shmuel oren \" on 08 / 29 / 2000 05 : 37 : 33 pm\nto :\ncc :\nsubject : re : hello from vince kaminski at enron\ndear vince . i spoke too soon . apparently the seminar slot on the 16 was\nalready filled . i will see if i can switch the speaker for that week to the\nfollowing week . in any case we are on for dinner on the 16 .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : tuesday , august 29 , 2000 5 : 01 pm\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> the date of our trip to berkeley has been set . it will be october 16 th and\n> 17 th\n> ( monday and tuesday ) .\n>\n> i shall be glad to make a presentation on energy derivatives markets\n> ( development of the markets in the us and europe , valuation difficulties ,\n> enron ' s role\n> in developing the forward markets for natural gas and electricity ) .\n>\n> please , let me know if this topic would be of interest to you . if this is\n> the\n> case , i shall follow with a title and an abstract .\n>\n> by the way , are you free for dinner on monday ?\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> great . our seminars are 3 : 30 to 5 pm . if it works for you please send me a\n> title and abstract .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from : \" vince j kaminski \"\n> to : \" shmuel oren \"\n> cc : \" vince j kaminski \" ; \" ashley baxter \"\n>\n> sent : thursday , august 24 , 2000 9 : 58 am\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> >\n> > shmuel ,\n> >\n> > thanks for the message . i am working with our recruiter , ashley baxter ,\n> > to finalize the date of the trip . i shall shoot for october the 23 rd\n> > if this date works for the rest of our team .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> >\n> > to : vince j kaminski / hou / ect @ ect\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> >\n> > dear vince .\n> > i sent you a reply earlier this month but i haven ' t heard from you about\n> the\n> > date of your visit . our department has a seminar every monday . if you\ncan\n> > schedule your visit on a monday i would like to invite you to give a\n> seminar\n> > which will be attended by many of our graduate students and faculty and\n> will\n> > give you an opportunity to tell them about your program . with sufficient\n> > lead - time i can advertise the seminar in the hass school to their\n> financial\n> > engineering students .\n> > shmuel .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to : ; ;\n> >\n> > sent : tuesday , august 08 , 2000 10 : 59 am\n> > subject : hello from vince kaminski at enron\n> >\n> >\n> > > shmuel ,\n> > >\n> > > i hope you remember me . i visited you together with aram sogomonian , a\n> > > good friend of mine , a few years ago . i am currently responsible ,\namong\n> > > other things , for recruiting graduates with finance and / or technical\n> > > backgrounds at the university of berkeley . i would be glad to give you\n> a\n> > > call and talk more about the details of our program . my colleague ,\n> > > ashleybaxter , from the analyst / associate program at enron would join\nme\n> > > as well .\n> > >\n> > > i am sending you a copy of the brochure about the analyst / associate\n> > > program .\n> > >\n> > > vince kaminski\n> > >\n> > >\n> > > vincent kaminski\n> > > managing director - research\n> > > enron corp .\n> > > 1400 smith street\n> > > room ebl 962\n> > > houston , tx 77002 - 7361\n> > >\n> > > phone : ( 713 ) 853 3848\n> > > fax : ( 713 ) 646 2503\n> > > e - mail : vkamins @ enron . com\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.373+0000", "entityId": 8304, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nshmuel ,\nlet ' s see if we can either rearrange the seminar speakers\nor change the date of our visit to the campus . ashley baxter , our coordinator\nis very efficient and\ngot a faculty room for a presentation on monday morning on the 16 th .\nvince\n\" shmuel oren \" on 08 / 29 / 2000 05 : 37 : 33 pm\nto :\ncc :\nsubject : re : hello from vince kaminski at enron\ndear vince . i spoke too soon . apparently the seminar slot on the 16 was\nalready filled . i will see if i can switch the speaker for that week to the\nfollowing week . in any case we are on for dinner on the 16 .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : tuesday , august 29 , 2000 5 : 01 pm\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> the date of our trip to berkeley has been set . it will be october 16 th and\n> 17 th\n> ( monday and tuesday ) .\n>\n> i shall be glad to make a presentation on energy derivatives markets\n> ( development of the markets in the us and europe , valuation difficulties ,\n> enron ' s role\n> in developing the forward markets for natural gas and electricity ) .\n>\n> please , let me know if this topic would be of interest to you . if this is\n> the\n> case , i shall follow with a title and an abstract .\n>\n> by the way , are you free for dinner on monday ?\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> great . our seminars are 3 : 30 to 5 pm . if it works for you please send me a\n> title and abstract .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from : \" vince j kaminski \"\n> to : \" shmuel oren \"\n> cc : \" vince j kaminski \" ; \" ashley baxter \"\n>\n> sent : thursday , august 24 , 2000 9 : 58 am\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> >\n> > shmuel ,\n> >\n> > thanks for the message . i am working with our recruiter , ashley baxter ,\n> > to finalize the date of the trip . i shall shoot for october the 23 rd\n> > if this date works for the rest of our team .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> >\n> > to : vince j kaminski / hou / ect @ ect\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> >\n> > dear vince .\n> > i sent you a reply earlier this month but i haven ' t heard from you about\n> the\n> > date of your visit . our department has a seminar every monday . if you\ncan\n> > schedule your visit on a monday i would like to invite you to give a\n> seminar\n> > which will be attended by many of our graduate students and faculty and\n> will\n> > give you an opportunity to tell them about your program . with sufficient\n> > lead - time i can advertise the seminar in the hass school to their\n> financial\n> > engineering students .\n> > shmuel .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to : ; ;\n> >\n> > sent : tuesday , august 08 , 2000 10 : 59 am\n> > subject : hello from vince kaminski at enron\n> >\n> >\n> > > shmuel ,\n> > >\n> > > i hope you remember me . i visited you together with aram sogomonian , a\n> > > good friend of mine , a few years ago . i am currently responsible ,\namong\n> > > other things , for recruiting graduates with finance and / or technical\n> > > backgrounds at the university of berkeley . i would be glad to give you\n> a\n> > > call and talk more about the details of our program . my colleague ,\n> > > ashleybaxter , from the analyst / associate program at enron would join\nme\n> > > as well .\n> > >\n> > > i am sending you a copy of the brochure about the analyst / associate\n> > > program .\n> > >\n> > > vince kaminski\n> > >\n> > >\n> > > vincent kaminski\n> > > managing director - research\n> > > enron corp .\n> > > 1400 smith street\n> > > room ebl 962\n> > > houston , tx 77002 - 7361\n> > >\n> > > phone : ( 713 ) 853 3848\n> > > fax : ( 713 ) 646 2503\n> > > e - mail : vkamins @ enron . com\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.378+0000", "entityId": 8305, "properties": {"text": "Subject: re : eprm article\nchris ,\nthis is very well written and will serve the reader well . a few comments .\n1 . when i think about the taxonomy of the var models , i typically use the\nclassification based on 3 categories :\na . variance / covariance method\nb . historical simulation\nc . monte carlo simulation .\ndelta approach is the way of representing a position in a nonlinear\ninstrument .\n2 . i would define monte carlo as an approach based on statistical simulation\nof behavior of\nall the market prices / rates , etc . , and revaluation of the entire portfolio .\nthe revaluation may be based on an approximation ( using taylor ' s expansion )\nthat may\ninvolve delta , delta / gamma , delta / gamma / omega or may be exact ( based on the\nsame\nmodel that produces the mark - to - market portfolio valuations ) .\nthe main benefit of using the mc simulation in the energy markets is the\nability to capture\nthe gapping behavior of the energy markets in a straightforward way . i would\nemphasize that\nthere are attempts to incorporate jumps in the v / c model ( i shall send you\nthe references\nfrom home ) .\n3 . i would mention that historical simulation may break down in the markets\nthat are evolving\nquickly ( new instruments for which we have no comparable prices ,\nbehavior of prices may change as markets mature or de - mature ) .\n4 . for bigger portfolios , virtually all methods require some level of\naggregation into\natomic , elemental instruments to reduce the dimensionality of the problem .\nthis process may be a source of a big error .\n5 . the computational burden of mc can be reduced through clever preprocessing\nof a portfolio that introduces no error . many swaps with the same underlying\ncan be aggregated into one positions ( they are portfolios of forwards and\nthey are linear\ninstruments ) .\nplease , feel free to use any comment ( or none ) .\nvince\n\" chris strickland \" on 08 / 28 / 2000 02 : 58 : 56 pm\nplease respond to \" chris strickland \"\nto :\ncc :\nsubject : eprm article\ndear vince ,\n?\nd you think you might be able to look at this in the next day or so ? robin\nis after something by the end of this week .\n?\nbest regards .\n?\nchris .\n?\n- eprm _ 01 _ var . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.383+0000", "entityId": 8306, "properties": {"text": "Subject: gpcm modeler news : august 31 , 2000\nnew gpcm pipeline schematics available on the web\nyou can now view gpcm pipeline schematics on the web by going to the gpcm\nwebsite , clicking \" gpcm pipelines \" and then clicking the code for the\npipeline you want . you can also go to that pipeline ' s website by clicking\nit ' s url . finally , by \" right - clicking \" the code you can copy the pipeline\nschematic ( a powerpoint file ) down to your local computer and use it there .\nonce you copy it down , if you put it into your gpcm 8 \\ maps sub - folder , you\ncan view it directly from your user interface in the data / pipelines form\n( click the has map box on ) . if you are a gpcm licensee and would like a\nzip file of the current set of maps , you can pick it up from the customer\nsupport area of the gpcm website ( http : / / gpcm . rbac . com ) .\nfrom http : / / www . enerfax . com :\nnatural gas markets in mexico\nnatural gas demand in mexico in the coming years could grow by up to 8 %\nannually . such demand could lead to natural gas imports approaching 2 bcf\nper day , according to government forecasts . in response , pemex proposes two\nactions : the first consists of measures to increase cross - border pipeline\ninfrastructure and capacity such as a new pipeline being built by coral\nenergy into pemex ' s supply hub at reynosa . the possibility of a new\npipeline to monterrey is still an option . a second measure is to implement\na gas - centric exploration and production program focused on five areas , two\nof which are dry natural gas basins , burgos and macuspana . this second\nmeasure is intended to reduce projected imports by up to 80 % . at present ,\npemex ' s 10 - year strategic plan does not contemplate a role for private\nproduction companies in capacities other than that of technical assistance .\nstorage report\nweek prev\nending prev prev year\n| region | 8 / 25 / 00 | week | diff | % full | year | % full\n| prod | 529 | 517 | 12 | 55 % | 749 | 78 %\n| east | 1254 | 1209 | 45 | 68 % | 1382 | 75 %\n| west | 361 | 366 | - 5 | 71 % | 390 | 77 %\n| | | | | | |\n| total | 2144 | 2092 | 52 | 65 % | 2521 | 76 %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.387+0000", "entityId": 8307, "properties": {"text": "Subject: re : address\nshirley ,\nthey are from the uk , arthur andersen . i could meet with them on monday .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 08 / 31 / 2000\n02 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nallan . roberts @ uk . arthurandersen . com on 08 / 31 / 2000 12 : 08 : 25 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : address\ni trust things are well in houston .\nthe reason for contacting you is to inquire as to your schedule during the\nweek\ncommencing monday 18 th september . i and several of my colleagues would very\nmuch like to meet up with you , however , we are tied up at a large conference\nbetween tuesday through to friday of that week .\nis there any chance in meeting with you on monday 18 th ? if so , i will brief\nyou\nmore fully on our people and will contact you to discuss an agenda .\nregards , allan\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.392+0000", "entityId": 8308, "properties": {"text": "Subject: focus group invitation - supervisors\ncharlene , karen :\nvince asked me to let you know that he will be unable to attend the lunch\non friday , september 8 th . he has a previous engagement that he cannot\nmiss . i tried contacting constance charles , but her voice mail box was\nfull .\nthanks .\nshirley crenshaw\nadministrative coordinator", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.396+0000", "entityId": 8309, "properties": {"text": "Subject: focus group invitation - supervisors\nvince ,\nthe associate & analyst programs are conducting focus group sessions to\ngather feedback regarding the mid - year 2000 prc process . you have been\nrandomly identified as a participant in the supervisors session .\norganizational development consultants from corporate human resources will\nfacilitate the sessions . we encourage your participation and welcome your\nfeedback as we prepare for the year - end performance assessment process . the\nlogistics are as follows :\nfriday , september 8 , 2000\n11 : 00 am - 12 : 30 pm\nlocation - eb 32 c 2\nplease rsvp to constance charles at 3 - 5614 or by email no later than\nwednesday , september 6 th at 12 : 00 noon . lunch will be provided .\ni look forward to receiving your feedback .\nthank you ,\ncharlene jackson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.402+0000", "entityId": 8310, "properties": {"text": "Subject: meeting with vince kaminski\nhello mr . roberts :\nvince kaminski will be arriving in london on monday , the 18 th of september\nat 9 : 55 am . he would be available to meet with you in the afternoon on the\n18 th .\nplease let me know if this is acceptable and who the individuals are that\nwill be attending the meeting . you also mentioned an agenda , which would\nbe great .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.407+0000", "entityId": 8311, "properties": {"text": "Subject: re : address\ni trust things are well in houston .\nthe reason for contacting you is to inquire as to your schedule during the\nweek\ncommencing monday 18 th september . i and several of my colleagues would very\nmuch like to meet up with you , however , we are tied up at a large conference\nbetween tuesday through to friday of that week .\nis there any chance in meeting with you on monday 18 th ? if so , i will brief\nyou\nmore fully on our people and will contact you to discuss an agenda .\nregards , allan\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.412+0000", "entityId": 8312, "properties": {"text": "Subject: informal exploratory interview with enron research group\nms . stone :\nyour resume was forwarded to the enron research group and they would\nlike to conduct an informal interview with you at your convenience .\nplease let me know your availability the week of september 11 th . the\nindividuals that would like to interview you are :\nvince kaminski\ngrant masson\nkevin kindall\ntanya tamarchenko\nthey will need approximately 30 minutes each ( 2 - 2 1 / 2 hours )\nyou may reach me at 713 / 853 - 5290 or by email : shirley . crenshaw @ enron . com\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.416+0000", "entityId": 8313, "properties": {"text": "Subject: re : martin lin\nnorma ,\nthanks for your message . approved .\nvince\nfrom : norma villarreal 08 / 30 / 2000 08 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc : grant masson / hou / ect @ ect\nsubject : martin lin\nper my voice mail to vince , martin lins offer letter will be provided to him\non thursday , august 31 , 2000 .\nhowever , a concern was shared regarding the retention bonus we originally\ndiscussed . therefore , based on his phd and market information we are able to\noffer him a base salary of 98 - 100 k and no retention bonus . we can discuss\nretention bonus after he begins his manager role in your group .\nif you would like to discuss further please feel free to call me . otherwise ,\nplease approve salary structure of base 98 , 000 with no bonus .\nthank you .\nnorma villarreal\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.421+0000", "entityId": 8314, "properties": {"text": "Subject: many\ndear vince ,\n1 . i apologize for not having got back to karla\nearlier but dauphine is not properly equipped yet .\n2 . the conference with samuelson , merton , heath ,\nross , mckean etc was spectacular . 512 academics\nand practitioners came to college de france and\nwere very grateful .\n3 . i was so worn out afterwards that i did not make\nit to houston . i just went to visit alex after a week\nconference on quantitative risk management\nwhere i was speaking at carnegie mellon\n4 . another former phd student of mine has been\ntesting and improving the software . he is great\nand modest ; giving the papers i referee and the\nconferences i go to , i do believe that we are still\nahead ( or way ahead ) today . we also beautifully\nsimplified the valuation of the hourly swings .\nobviously , in case of a problem , my reputation\nand your esteem would be more valuable\nthan 30 % of 90 , 000 usd ( to be shared . . . )\n5 . i declined risk in houston and newyork\nand am not sure i will have the pleasure\nto see you in london . in all cases , we\nshould coordinate for paris soon\nhelyette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.426+0000", "entityId": 8315, "properties": {"text": "Subject: software license\ndear ms . feldman ,\nplease receive all my apologies for not having\nanswered earlier your 2 emails , but i was in the\nstates for 6 weeks and could not access my\ndauphine email . in any case , the time was\nfruitfully used by my associates and myself to\nimprove the \" robustness \" of the product , from\na computer and mathematical standpoint .\nregarding your 3 points\n1 . we agree on the price of 90 , 000 usd\n2 . d - g will provide system support : we can do so\nby emailing anther version of the software , being\navailable on the phone and by email but we\ncannot promise unlimited support of all kinds\nwithout risking bankruptcy right away .\nmoreover , the $ 90 , 000 may be paid in 3 fractions\nand your risk would be quite minimal\n3 . regarding the escrow , we have been using so\nfar a small law firm with 5 partners ( none of my\nfamily ) in amherst : hart , reed , brown , golowich\nand kaplan . but we are not closed to anther\nsolution you would strongly prefer .\nbest regards\nhelyette geman , phd , phd\nd - g energy systems", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.431+0000", "entityId": 8316, "properties": {"text": "Subject: re : informal exploratory interview with enron research group\nvaleria :\nthank you for your prompt response .\ni have arranged the following schedule for your interviews . please let me\nknow if any of the times are inconvenient .\nwednesday , september 13 th :\n3 : 30 pm vince kaminski , managing director\n4 : 00 pm grant masson , vice president\n4 : 30 pm tanya tamarchenko , director\n5 : 00 pm kevin kindall , manager\nwhen you enter the lobby of the enron bldg . , go to the security area and\nthey will call me on the telephone to let us know you are here and will\ngive you a visitor ' s security pass .\nyour interviews will be held in ebl 938 .\nhave a great weekend and we will see you on the 13 th of september .\nbest regards ,\nshirley crenshaw\nvaleria . i . stone @ exxon . sprint . com on 09 / 01 / 2000 08 : 43 : 27 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : informal exploratory interview with enron research group\ndate : september 1 , 2000\nfrom : stone , v . i . ( valeria ) vistone - americas\nto : ext - shirley . crenshaw ( a ) enron . co shirlecl - fpexmail\nsubject : re : informal exploratory interview with enron research group\ni want to thank you for giving me this excellent opportunity to meet with\nenron research group . i would be my pleasure to visit with you any time\nafter 3 pm september 12 - 15 th . if this time frame is not suitable for you ,\nplease let me know . also , it would be preferable for me to schedule the\ninterview as late as you can in the afternoon or as early in the morning as\npossible .\nas i has already mentioned above , i am very honored by the interest\ndisplayed by enron research group in interviewing me . i believe your company\ndisplays an excellent example of the well respected leader of the energy\nindustry . enron ' s overall orientation of staying on the cutting edge of\ntechnology ( with such breathtaking projects as e - commerce development ) will\nmake the employment with enron very interesting , pleasant , and rewarding\nexperience . furthermore , it will provide me with an excellent opportunity to\nmake the contribution to your company ' s continuing growth and profit .\n- - - - - original message - - - - -\nfrom : fpexmail ( shirlecl )\nsent : thursday , august 31 , 2000 5 : 29 pm\nto : stone , v . i . ( valeria )\nsubject : informal exploratory interview with enron research group\nms . stone :\nyour resume was forwarded to the enron research group and they would\nlike to conduct an informal interview with you at your convenience .\nplease let me know your availability the week of september 11 th . the\nindividuals that would like to interview you are :\nvince kaminski\ngrant masson\nkevin kindall\ntanya tamarchenko\nthey will need approximately 30 minutes each ( 2 - 2 1 / 2 hours )\nyou may reach me at 713 / 853 - 5290 or by email : shirley . crenshaw @ enron . com\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.435+0000", "entityId": 8317, "properties": {"text": "Subject: reactions september is now live on - line\n> reactions\n> the latest edition of the financial magazine for the global insurance\n> market is now live at http : / / www . reactionsnet . com\n>\n> the world ' s leading insurance and reinsurance magazine . simply hit\n> the links at the bottom of each item to see the full article . you can\n> call or email us for help at any time on mailto : web - help @ euromoneyplc . com\n> or + 44 ( 0 ) 20 7779 8006 . the september issue of reactions is packed full\n> of news , views and figures :\n>\n> * cover report : the future for reinsurance : ignoring uncertainty and\n> danger\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 799\n> * cover report : are ratings agencies responsible for excess capital ?\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 800\n> * cover report : why not give the capital back ?\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 801\n> * cover report : m & a shakeout likely\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 802\n> * cover report : what the future industry will look like - the new\n> face of risk transfer\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 803\n>\n>\n> les rendez - vous de septembre ~ monte carlo 2000\n> the 44 th international meeting of insurers , reinsurers , brokers and\n> reinsurance consultants starts on september 3 rd , and you will be able to\n> keep right up to date with all the news by logging - on to the official\n> monte carlo website : http : / / www . rvs - monte - carlo . com .\n>\n> in association with guy carpenter [ http : / / www . guycarp . com ] ,\n> reactions will publish the rendez - vous reporter daily . it will be\n> available to read on - line should you not be able to attend in person -\n> simply go to the section headed \" newsletter \" to access these daily\n> updates . you can also read last year ' s archived reporters here .\n>\n> look out for our daily email news alerts , sent directly from monte\n> carlo next week !\n>\n>\n> other stories\n>\n> * profile : munich re - giant steps forward\n> munich re has kept as silent as a statue for many\n> years - even when confronted with the most innocent enquiries about its\n> strategy . but now the statue has come to life and is willing to talk about\n> how it maintains its position as the world ' s most powerful reinsurer .\n> simon challis went to munich to hear about it .\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 804\n>\n> * financial risks : the path to new risks\n> insurance companies and banks were once two separate and\n> distinct marketplaces . but now the dividing lines between the two are more\n> blurred than ever . this is creating new opportunities for both , but also a\n> fresh set of problems and challenges to be overcome .\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 805\n> * tax havens : financial paradise under threat\n> offshore domiciles and tax havens have created important\n> niches within insurance and finance and have become centres of excellence\n> for many industries . but the sun may soon disappear for these\n> jurisdictions as they come under pressure to change .\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 806\n> for a free trial to the leading authority on international\n> fund management , global investor magazine , please go to\n> http : / / www . . com / admin / registernow . asp , to see the\n> home page go to http : / / www . . com .\n>\n> * e - commerce : electronic re hits the screens\n> in a rapidly changing world , one thing at least has become\n> abundantly clear . insurers and reinsurers who fail to rise to the\n> challenges of internet technology will fall by the wayside .\n> http : / / www . reactionsnet . com / viewstory . asp ? id = 809\n> for specialist information on the internet economy visit our\n> sister publication evantage at http : / / www . evantagenow . com .\n>\n> * european insurance : all change in a unified market\n> the eu ' s non - life insurance markets are undergoing rapid\n> transformation , driven by the deregulation of the markets and advances in\n> information technology . http : / / www . reactionsnet . com / viewstory . asp ? id = 812\n>\n>\n> plus\n> * latin american insurance by susan drury\n> this brand new report analyses the growth and opportunities\n> for companies , products and alliances in the market . susan drury\n> forecasts the shape and direction of the latin american industry over the\n> next ten years .\n> https : / / ecommerce . waterside . net / reactions / la _ insurance . asp\n>\n> * @ risk : internet and ecommerce insurance and reinsurance legal issues\n> this guide is a vital point of reference for anyone involved\n> in the covering of internet related liabilities . for a reduced price of\n> 150 pounds you can ensure that you have the best information on risk\n> associated e - commerce insurance at your disposal .\n> https : / / ecommerce . waterside . net / reactions / risk . asp\n>\n> * ensurance\n> without a clear e - commerce strategy you are seriously\n> jeopardising the future competitiveness of your company . reactions\n> publishing group has produced the report to answer all your questions on\n> this new and expanding market .\n> https : / / ecommerce . waterside . net / reactions / ensurance . asp\n>\n> * reinsurance fourth edition by professor rl carter\n> the fully updated edition of the best selling guide to the\n> reinsurance market . a must read book for every executive and consultant\n> involved in the rapidly evolving reinsurance industry .\n> https : / / ecommerce . waterside . net / reactions / reins _ fourth . asp\n>\n> * euromoney plc provides a uniquely focussed on - line book and\n> information service for all financial markets professionals . to find the\n> best , most up - to - date selection of books and journals specifically for\n> your sector please go to http : / / www . euromoneyplc . com ( registration is\n> free ) or call us on + 44 ( 0 ) 20 7779 8673 .\n>\n>\n> http : / / www . reactionsnet . com\n>\n>\n> to advertise or link your company website to this industry\n> circular please contact andreas silberman\n> tel : + 44 ( 0 ) 20 7779 8186 or e - mail\n> mailto : asilberman @ euromoneyplc . com\n>\n> if you have any problems logging onto or using\n> www . reactionsnet . com please call our dedicated help desk\n> + 44 ( 0 ) 20 7779 8006 or email\n> mailto : web - help @ euromoneyplc . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.441+0000", "entityId": 8318, "properties": {"text": "Subject: re :\nthanks vince . . . jeff\nvince j kaminski\n09 / 01 / 2000 10 : 23 am\nto : jeffrey a shankman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re :\njeff ,\nchrist , mark and myself are planning to visit tom piazze in october . i talked\nto christy about wharton\nand she will be calling tom to set it up .\nvince\nfrom : jeffrey a shankman 09 / 01 / 2000 09 : 25 am\nto : vince j kaminski / hou / ect @ ect , mark palmer / corp / enron @ enron\ncc : celeste roberts / hou / ect @ ect , charlene jackson / corp / enron @ enron\nsubject :\nhi vince ,\ni just got off the phone with donna piazze at wharton , ( i don ' t know if there\nis a relationship with tom at wharton ) , and we were discussing there tiger\nteams . it is a required research program , 2 nd semester for mbas , and wharton\nwould love to have enron participate . i told her there is probably some real\nlife reasearch project we could have the students do . she did also mention\nthat it is one of the best recruiting tools under development at wharton . . i\ngave her your number .\nher number is 215 573 8394 . please call her when you get a chance within the\nweek .\nmark , can we get christy involved ? thanks everyone .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.446+0000", "entityId": 8319, "properties": {"text": "Subject: re : vol model\nfrom : pavel zadorozhny on 08 / 31 / 2000 06 : 45 pm\nto : grant masson / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , naveen\nandrews / corp / enron @ enron\ncc :\nsubject : vol model\nit ' s been a while since i put this together . some assumptions , such as those\nabout the current var methodology may not be correct . but my ideas and the\nmath involved are hopefully reasonable . let me know if you have any questions .\npavel , x 34778", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.452+0000", "entityId": 8320, "properties": {"text": "Subject: colleagues ,\ni will be leaving enron next week . friday , september 8 , will be my last day . i\nenjoyed knowing and working with you . for the time being , i can be reached at\ntakriti @ att . net .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.462+0000", "entityId": 8321, "properties": {"text": "Subject: change of coordinates\ndear friends and colleagues ,\neffective immediately , i have returned to the university of\npennsylvania .\nthe usual automatically - generated contact info should appear below ;\nplease update your files .\nbest regards ,\nfrank\n- -\nfrancis x . diebold\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ mail . sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 telephone\n( 215 ) 573 - 4217 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.470+0000", "entityId": 8322, "properties": {"text": "Subject: request for natural gas technical analysis\n- - - - - - - - - - - - - - - - - - - - - - forwarded by patricia tlapek / hou / ect on 09 / 03 / 2000\n10 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntim mckone @ enron\n08 / 30 / 2000 10 : 21 am\nto : mike a roberts / hou / ect @ ect\ncc : patricia tlapek / hou / ect @ ect , anna santucci / na / enron @ enron\nsubject : request for natural gas technical analysis\nhello mike ,\ni work in rodney malcolm ' s commercial transaction group , focusing on\ndeveloping energy management relationships with large volume industrial\nenergy consumers . due to the volatility and high price levels of the natural\ngas contract , these consumers of natural gas are extremely concerned about\nthis exposure , and they are asking for our assistance in helping them manage\nthis exposure . one of the tools that these customers are requesting is\ntechnical analysis of the natural gas contract so as to determine entry\npoints for their hedges .\nto the extent you could assist us with this analysis , we can proactively\nmeet these customer requests and increase our deal flow .\nplease advise as to the availability of your assistance .\nthank you , tim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.478+0000", "entityId": 8323, "properties": {"text": "Subject: rendez - vous reporter : sunday 3 rd september 2000\n> sunday 3 rd september 2000\n>\n> the monte carlo rendez - vous reporter from reactions , in association with\n> guy carpenter [ http : / / www . guycarp . com ] . simply click on the link next to\n> each headline to read the full story .\n>\n> top stories of the day :\n>\n> the only way is up for rates\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 659\n>\n> vox pops : testing the renewals air\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 660\n>\n> the view of the middleman\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 661\n>\n> new look rendez - vous\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 657\n>\n> please visit http : / / www . reactionsnet . com for all the latest news from the\n> world ' s largest insurance and reinsurance conference .\n>\n> alternatively , you can read these stories on the official rendez - vous\n> website at http : / / www . rvs - monte - carlo . com\n>\n>\n> book of the industry :\n>\n> reinsurance\n> fourth edition of professor robert l carter ' s industry - standard textbook .\n> https : / / ecommerce . waterside . net / reactions / reins _ fourth . asp\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.482+0000", "entityId": 8324, "properties": {"text": "Subject: hea ' s 34 th annual sports tournament\nvincent kaminski ,\nyou should have received a fax over the labor day weekend regarding our\nupcoming sports tournament . if you did not receive it , please visit our\nwebsite at www . houstonenergy . org and go to the \" next scheduled event \" , or\njust go directly to http : / / www . houstonenergy . org / public / sportscover . doc . for\nall the information you need . hope to see you there and don ' t delay in\nsending in your registration !\nthis message was sent by :\nteresa knight , executive director\nhouston energy association ( hea )\nphone : ( 713 ) 651 - 0551\nfax : ( 713 ) 659 - 6424\ntknight @ houstoneneryg . org\nif you would like to have your email address removed from our mailing list ,\nplease click the link below to the hea home page , where you will find a\nmini - form to remove your name automatically .\nhttp : / / www . houstonenergy . org /\nif you did not receive the attached file or it was corrupted , you can find it\nat : http : / / www . houstonenergy . org / public /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.487+0000", "entityId": 8325, "properties": {"text": "Subject: monday 4 th september 2000\n> monday 4 th september 2000\n>\n> the monte carlo rendez - vous reporter from reactions , in association with\n> guy carpenter [ http : / / www . guycarp . com ] . simply click on the link next to\n> each headline to read the full story .\n>\n> top stories of the day :\n>\n> haag ' s rendez - vous curtain call\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 666\n>\n> how lothar and martin changed the european landscape\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 669\n>\n> also :\n> holocaust haunts munich re\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 668\n> movie financing - mind the gap\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 670\n> uk insurers commit legal suicide\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 672\n> monaco claim victory\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 674\n> swiss re enjoys life in the us\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 667\n> yasuda and dai - ichi consider merger\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 671\n> reliance go it alone in india\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 673\n>\n>\n> please visit http : / / www . reactionsnet . com for all the latest news from the\n> world ' s largest insurance and reinsurance conference .\n>\n> alternatively , you can read these stories on the official rendez - vous\n> website at http : / / www . rvs - monte - carlo . com\n>\n>\n> book of the industry :\n>\n> reinsurance\n> fourth edition of professor robert l carter ' s industry - standard textbook .\n> https : / / ecommerce . waterside . net / reactions / reins _ fourth . asp\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.492+0000", "entityId": 8326, "properties": {"text": "Subject: re : rabi de ' s sign on bonus\nsorry vince i have been out of town . please give me a call tomorrow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.496+0000", "entityId": 8327, "properties": {"text": "Subject: re : confidential\nsophie - what do we need to do to implement this ?\nvince - do you want to go through this with steve while he ' s in houston ?\n- dale\nvince j kaminski\n30 / 08 / 2000 23 : 43\nto : sophie kingsley / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , michele\nsmall / lon / ect @ ect\nsubject : re : confidential\nsophie ,\ni think it ' s a fair deal .\nvince\nsophie kingsley 08 / 30 / 2000 11 : 49 am\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , michele small / lon / ect @ ect\nsubject : re : confidential\nboth ,\nthanks for your comments and comparisons , it is good to get context .\nbased on your comments here would be my proposal\no 63 , 500 basic salary -\nol 5 k kickers for each of the 2 years - these are paid as a lump sum on each\nanniversary guaranteed . therefore guaranteed salary is effectively o 78 , 500 -\nthis is completely separate and in addition to any performance bonus\nincrease the value of options to o 60 k to vest 1 / 3 as before - which leaves a\n1 / 3 ( $ 20 , 000 ) hanging out there at the end of the contract .\njust fyi - anjam is currently on o 68 , 000 but does not have an agreement , so\nthis would effectively put a 10 . 5 k gap between the two .\nlet me know your thoughts .\ndale surbey\n30 / 08 / 2000 16 : 09\nto : sophie kingsley / lon / ect @ ect\ncc :\nsubject : re : confidential\nsophie ,\nhere ' s vince ' s comments on your proposal for steve . also , what ' s a 2 - yr\nexec ? how do the kickers work - are they basically a guaranteed minimum\nbonus or incremental bonus ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 16 : 10\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n30 / 08 / 2000 14 : 21\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : confidential\ndale ,\nthanks for your message .\ni don ' t know the labor market in london that well but here the market\nfor quants is very hot . steve is in my view an exceptionally talented person\nand i would go an extra mile to retain him long - term for the company .\ni would adjust the base salary or the kicker upward a bit .\no 62 , 000 basic is what anjam is receiving currently ( if i remember\ncorrectly ) . steve has a much higher value\nto enron than anjam .\nvince\ndale surbey\n08 / 30 / 2000 07 : 49 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : confidential\nvince ,\nthis is the package hr is proposing for steven . what do you think ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 13 : 50\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsophie kingsley 29 / 08 / 2000 20 : 32\nto : dale surbey / lon / ect @ ect\ncc :\nsubject : confidential\nsorry dale , long day , here are the proposed numbers\n2 year exec\no 62 , 000 basic ( currently o 55 k )\nol 0 k each year kickers\n$ 50 , 000 worth of options to vest 1 / 3 1 / 3 1 / 3\nlet me know what you think .\nregards\nsophie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.501+0000", "entityId": 8328, "properties": {"text": "Subject: this\nhurricane elana\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.506+0000", "entityId": 8329, "properties": {"text": "Subject: rendez - vous reporter : tuesday 5 th september 2000\n> tuesday 5 th september 2000\n>\n> the monte carlo rendez - vous reporter from reactions , in association with\n> guy carpenter [ http : / / www . guycarp . com ] . simply click on the link next to\n> each headline to read the full story .\n>\n> top stories of the day :\n>\n> back to basics for employers re\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 675\n>\n> deconstructing the nature of risk\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 680\n>\n> also :\n> quackenbush report condemned\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 683\n> fremont moves to stem loses\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 684\n> independent toughs it out\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 677\n> xl to grow reinsurance business\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 679\n> taylor will stay in industry after leaving lloyd ' s\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 676\n> st paul re restructures\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 678\n> purkiss unveils alea\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 681\n> wurtt uk goes digital\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 682\n> unum boosts max re ' s premiums\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 685\n> alexander forbes to acquire in uk\n> http : / / www . reactionsnet . com / conferences / viewstory . asp ? id = 686\n>\n>\n>\n> please visit http : / / www . reactionsnet . com for all the latest news from the\n> world ' s largest insurance and reinsurance conference .\n>\n> alternatively , you can read these stories on the official rendez - vous\n> website at http : / / www . rvs - monte - carlo . com\n>\n>\n> book of the industry :\n>\n> reinsurance\n> fourth edition of professor robert l carter ' s industry - standard textbook .\n> https : / / ecommerce . waterside . net / reactions / reins _ fourth . asp\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.511+0000", "entityId": 8330, "properties": {"text": "Subject: maureen raymond has completed derivatives i - applied energy\nderivatives\nthank you for supporting maureen raymond in attending derivatives i - applied\nenergy derivatives on august 8 - 9 , 2000 .\n$ 800 has been charged to your company and rc . if you have any questions ,\nplease call the development center team at 713 - 853 - 0357 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.516+0000", "entityId": 8331, "properties": {"text": "Subject: re : d - g energy\nkarla ,\nthe wording you have below sounds reasonable as we would only use the code\nfor internal valuation purposes .\ni also checked with vince regarding the issues we discussed by phone\nyesterday . he would like to specify a 2 day response time for the software\nsupport . also , he would like to specify that the payment schedule be : 50 %\nat time of initial contract and 50 % at the time when the software is\nreleased . this would give them an incentive to release the software before\nthe full year is over if they want to accelerate the payment .\nthanks again for all the help ,\nstinson\nfrom : karla feldman on 09 / 06 / 2000 10 : 30 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : d - g energy\nstinson ,\nwhile trying to put together the agreements for d - g energy , i have an\nadditional question :\ni need to know exactly what yall plan to do with the source code once you\nhave it after the initial one year period is up ? there are still limitations\nas to what you can do with it , so i will need to know so we can try to revise\nthe contract so that you will be legal .\nfor example , in the language regarding release of the source code from\nescrow , it states that once you have the source code , you just have the\n\" right to use , copy and modify the source code , solely for our internal\npurposes in connection with support , maintenance and operation of the\nsoftware \" .\ndo yall plan to reverse engineer , decompile , etc ? do you plan on using any\nof their code to create our own product ? if so - i think these are going to\nbe a problem . the latter would be an infringement issue , unless we were to\ncontract to do so .\nplease let me know more details of your plan so i can see how we need to\nproceed in this area .\nthanks ,\nkarla\nx 67554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.520+0000", "entityId": 8332, "properties": {"text": "Subject: re : wednesday meeting\neric ,\nwe are looking at the model . i shall get back to you next week .\nvince\nenron north america corp .\nfrom : eric groves 09 / 06 / 2000 08 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : wednesday meeting\nvince ,\ni was wondering if you or someone in your group has had a chance to overview\nthe lng shipping model that i sent you . merritt thomas is sending me more\ndata to add the to model on all of the other ports and nautical miles . i\nwould like to to have your input on the functionality of this file before we\ngo farther .\nplease call with any questions or comments .\nthanks ,\neric\nvince j kaminski\n09 / 06 / 2000 08 : 26 am\nto : eric groves / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , scott earnest / hou / ect @ ect\nsubject : re : wednesday meeting\neric ,\ni think we can skip the meeting and discuss any issues between us .\nthe meeting was convened at the request of doug arnell , but jeff\nshankman thinks that there is no need for formal meetings : we can\nask them for the information directly on as needed basis .\nvince\nenron north america corp .\nfrom : eric groves 09 / 05 / 2000 11 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : wednesday meeting\nare we still having the meeting tomorrow ? at what time ?\nthanks ,\neric", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.525+0000", "entityId": 8333, "properties": {"text": "Subject: the garp 2001 convention\ndear garp 2001 speaker\n?\njust a gentle reminder that the information i requested for your\npresentation at the garp 2001 convention , was due in today . can i please\nhave this information by friday 8 th september so that i will have adequate\ntime to include all the details in the brochure , which is due to go to press\nvery shortly .\nthe information that i require as soon as possible is as follows :\n1 . confirmation of professional details ( including the speaker ' s name , job\ntitle , and organisation )\n2 . confirmation that the topic title is accurate and to your liking\n3 . bullet points for your presentation ( up to 5 to 6 bullet points - please\nas technical and detailed as possible )\n4 . contact details ( including telephone numbers , fax no , colleague / pa , full\naddress )\n?\nif you have any questions please do not hesitate to contact me , otherwise i\nlook forward to receiving the above information by friday 8 th september .\n?\nkind regards\n?\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.530+0000", "entityId": 8334, "properties": {"text": "Subject: fw : usaee conference\ndear mr . kaminski ,\nattached please find our vip speaker letter , two program announcements ,\nregistration form and hotel information . please complete the registration\nform and fax to 216 - 464 - 2768 .\nif you have questions or need additional information please contact us . we\nlook forward to seeing you later this month .\nkind regards .\ndave williams\nand\nmary novak\n- vip speaker letter . doc\n- final sec prog for pdf . pdf\n- usaee - iaee 2000 conference program 0728 . pdf\n- regform . doc\n- hotel & conference info . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.535+0000", "entityId": 8335, "properties": {"text": "Subject: re : wednesday meeting\neric ,\ni think we can skip the meeting and discuss any issues between us .\nthe meeting was convened at the request of doug arnell , but jeff\nshankman thinks that there is no need for formal meetings : we can\nask them for the information directly on as needed basis .\nvince\nenron north america corp .\nfrom : eric groves 09 / 05 / 2000 11 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : wednesday meeting\nare we still having the meeting tomorrow ? at what time ?\nthanks ,\neric", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.539+0000", "entityId": 8336, "properties": {"text": "Subject: re : confidential\nsophie ,\nthanks . i shall discuss this with steve as soon as we have the nomination\nform signed .\ni can do it while he is stioll here at houston .\nvince\nsophie kingsley 09 / 05 / 2000 10 : 37 am\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , michele small / lon / ect @ ect\nsubject : re : confidential\nwe need to get a nomination form signed by you & vince . once we have this\nyou guys can discuss the figures with steve and once everything is agreed we\nwill get the nomination form signed by sherriff and the agreement drawn up .\ni will get one up to you today / tomorrow .\ndale surbey\n05 / 09 / 2000 15 : 33\nto : vince j kaminski / hou / ect @ ect\ncc : sophie kingsley / lon / ect @ ect , michele small / lon / ect @ ect\nsubject : re : confidential\nsophie - what do we need to do to implement this ?\nvince - do you want to go through this with steve while he ' s in houston ?\n- dale\nvince j kaminski\n30 / 08 / 2000 23 : 43\nto : sophie kingsley / lon / ect @ ect\ncc : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , michele\nsmall / lon / ect @ ect\nsubject : re : confidential\nsophie ,\ni think it ' s a fair deal .\nvince\nsophie kingsley 08 / 30 / 2000 11 : 49 am\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , michele small / lon / ect @ ect\nsubject : re : confidential\nboth ,\nthanks for your comments and comparisons , it is good to get context .\nbased on your comments here would be my proposal\no 63 , 500 basic salary -\nol 5 k kickers for each of the 2 years - these are paid as a lump sum on each\nanniversary guaranteed . therefore guaranteed salary is effectively o 78 , 500 -\nthis is completely separate and in addition to any performance bonus\nincrease the value of options to o 60 k to vest 1 / 3 as before - which leaves a\n1 / 3 ( $ 20 , 000 ) hanging out there at the end of the contract .\njust fyi - anjam is currently on o 68 , 000 but does not have an agreement , so\nthis would effectively put a 10 . 5 k gap between the two .\nlet me know your thoughts .\ndale surbey\n30 / 08 / 2000 16 : 09\nto : sophie kingsley / lon / ect @ ect\ncc :\nsubject : re : confidential\nsophie ,\nhere ' s vince ' s comments on your proposal for steve . also , what ' s a 2 - yr\nexec ? how do the kickers work - are they basically a guaranteed minimum\nbonus or incremental bonus ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 16 : 10\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n30 / 08 / 2000 14 : 21\nto : dale surbey / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : confidential\ndale ,\nthanks for your message .\ni don ' t know the labor market in london that well but here the market\nfor quants is very hot . steve is in my view an exceptionally talented person\nand i would go an extra mile to retain him long - term for the company .\ni would adjust the base salary or the kicker upward a bit .\no 62 , 000 basic is what anjam is receiving currently ( if i remember\ncorrectly ) . steve has a much higher value\nto enron than anjam .\nvince\ndale surbey\n08 / 30 / 2000 07 : 49 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : confidential\nvince ,\nthis is the package hr is proposing for steven . what do you think ?\n- dale\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dale surbey / lon / ect on 30 / 08 / 2000 13 : 50\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nsophie kingsley 29 / 08 / 2000 20 : 32\nto : dale surbey / lon / ect @ ect\ncc :\nsubject : confidential\nsorry dale , long day , here are the proposed numbers\n2 year exec\no 62 , 000 basic ( currently o 55 k )\nol 0 k each year kickers\n$ 50 , 000 worth of options to vest 1 / 3 1 / 3 1 / 3\nlet me know what you think .\nregards\nsophie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.544+0000", "entityId": 8337, "properties": {"text": "Subject: vince ' s travel itinerary\nludmilla :\nhere is vince ' s travel itinerary for sunday to new york .\ndate 06 septembero 0\nbooking ref ze 56 tx\nkaminski / wincenty soc 0011 rl 0\nenron corp kaminski / wincenty\neb 1962\ne - tkt receipt\n* * review upgrade below * *\nservice date from to depart arrive\ncontinental airlines 10 sep houston tx new york ny 539 p 1000 p\nco 1672 a sun g . bush interco la guardia\nterminal c terminal m\ndinner non stop\nreservation confirmed 3 : 21 duration\naircraft : boeing 737 - 800\nseat 01 f no smoking confirmed kaminski / wincen\nfirst class upgrade is confirmed\nhotel 10 sep hilton millenium\n11 sep 55 church street\nnew york , ny 10007\nunited states of america\ntelephone : 212 - 693 - 2001\nfax : 212 - 571 - 2316\ntelex : tlx none\nconfirmation : 3110994415\nsingle room queen size bed\nrate : ral usd 339 . 00 per night\nguarantee given\nnonsmoking king enron corp\nto avoid billing cancel 24 hours prior to arrival hotel time\ncontinental airlines 11 sep new york ny houston tx 745 p 1033 p\nco 1963 a mon la guardia g . bush interco\nterminal m terminal c\nsnack non stop\nreservation confirmed 3 : 48 duration\naircraft : boeing 737 - 300\nseat 01 f no smoking confirmed kaminski / wincen\nfirst class upgrade is confirmed\nmiscellaneous 10 nov houston tx\nfri * * thank you for using the tap * *\nkaminski / wincenty soc 0011 rl 000\nco frequent flyer cowt 472179\nshirley crenshaw : 853 - 5290\nintl tvlrs : carry sos wallet card w / enronassistance info\ncall sos : in u . s 800 523 - 6586 / intl 215 245 - 4707 ( collect )\nthis is the passenger receipt for your electronic ticket", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.549+0000", "entityId": 8338, "properties": {"text": "Subject: * * get together * *\ndear friends :\nfall happy hour\nfriday , september 15 , 2000\nafter work : 5 : 30 pm - - 8 : 00 pm\nragin cajun - - on the patio\n( the new location )\nwestheimer at gessner\n( the randalls shopping center on the corner )\n832 - 251 - 7171\nfeel free to bring friends !\nhope to see you there ! !\njana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.556+0000", "entityId": 8339, "properties": {"text": "Subject: rice / enron finance seminar series\nrice / enron finance seminar series participants :\nwe are getting ready to kick off the 2000 / 2001 enron finance seminar series\nat rice university .\nyou can find the current schedule at http : / / www . ruf . rice . edu / ~ jgsfss / .\nnote that this is a new web address .\nfor your convenience , here are the dates and speakers lined up so far :\nsept 22 jeff pontiff , u . of washington\nsept 29 len mirman , u . of virginia\noct 6 charles lee , cornell\noct 13 george allayannis , darden\noct 20 william goetzmann , yale\nnov 17 yacine ait - sahalia , princeton ( joint seminar with rice economics )\nmar 9 paul schultz , notre dame\napr 27 luigi zingales , u . of chicago\nlined up for the spring but date not yet scheduled :\ntim bollerslev , duke university\nmatthew richardson , new york university\nas changes are made to the schedule , i will notify the distribution list .\nin addition , as we have done in the past , we will post the abstract and a\ndownloadable version of the paper ( if available ) to the website a week or\ntwo before the seminar . the website will also provide a link to the\nspeaker ' s homepage so you can access his or her biographical\ninformation . if the paper is not available at the website , i will send a\nhardcopy to interested jones school faculty , to felecia jones ( economics ) ,\nlatha ramchand ( university of houston ) , and vince kaminski ( enron ) .\ni will e - mail an announcement before each seminar , reminding you of the\nseminar date , time , and location . the distribution list will include\neveryone that receives this e - mail . please contact me at ostdiek @ rice . edu\nif you would like to be deleted from the mailing list or if you know of\nsomeone who should be added ( new phd students , new faculty , etc . ) .\nbbo\nbarbara ostdiek\nassistant professor of finance\njones graduate school of management\nrice university\n6100 main street - ms 531\nhouston , tx 77005 - 1892\n713 - 348 - 5384 ( voice )\n713 - 348 - 5251 ( fax )\nostdiek @ rice . edu\nwww . ruf . rice . edu / ~ ostdiek /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.564+0000", "entityId": 8340, "properties": {"text": "Subject: fw : eprm\n- - - - - original message - - - - -\nfrom : dave hall\nto :\nsent : tuesday , september 05 , 2000 8 : 53 pm\nsubject : eprm\n> dear mr clewlow\n>\n> thanks for your piece on var for inclusion in the october edition of\nenergy\n> & power\n> risk management .\n>\n> the article is attached . there are a few queries from the editor and\nmyself\n> written in bold in the text . you might find that some parts of the piece\n> have been edited to\n> conform to our ' house style ' , etc .\n>\n> comments and suggestions welcome .\n>\n> should we send this article to anybody else for their approval ?\n>\n> thanks and kind regards ,\n>\n>\n> dave hall\n> chief subeditor\n> energy & power risk management magazine\n> risk waters group\n> haymarket house\n> 28 - 29 haymarket\n> london\n> swly 4 rx\n> uk\n> tel : + 44 ( 0 ) 20 7484 9796\n> fax : + 44 ( 0 ) 20 7930 2238\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n- var . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.571+0000", "entityId": 8341, "properties": {"text": "Subject: re : many\nhelyette ,\nsorry for not getting back to you earlier . i took a few days off before my\nfamily goes back to california .\ni have arranged a replacement for you for the houston and new york risk\ncourses . my colleagues , stinson gibner and steve leppard , gave two\npresentations . i shall be speaking in london on thursday only . steve leppard\nwill make a presentation on friday in my place .\ni look forward to meeting you in london . i want to make sure that we can sit\ndown for a few minutes and talk about the paris presentations .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.576+0000", "entityId": 8342, "properties": {"text": "Subject: re : informal exploratory interview with enron research group\nvaleria :\n3 : 30 pm tomorrow the 9 th will be fine . we will have to change the schedule\na little bit , but i believe it will work .\nkevin kindall 3 : 30 pm\ngrant masson 4 : 00 pm\ntanya tamarchenko 4 : 30 pm\nvince kaminski 5 : 00 pm\nsame scenario - upon arrival in the lobby go to the security desk and ask\nfor me . i will meet you in the lobby of the 19 th floor .\nthanks so much for your flexibility !\nshirley crenshaw\nvaleria . i . stone @ exxon . sprint . com on 09 / 07 / 2000 08 : 56 : 24 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : informal exploratory interview with enron research group\ndate : september 7 , 2000\nfrom : stone , v . i . ( valeria ) vistone - americas\nto : ext - shirley . crenshaw ( a ) enron . co shirlecl - fpexmail\nsubject : re : informal exploratory interview with enron research group\nsure , tomorrow is fine with me . is it possible to schedule it at 3 : 30 pm ?\nand i am sure it is not an easy task to fit the schedule of several people to\nbe available at the same time window . so please feel free to let me know if\nyou will need to do another time adjustment .\n- - - - - original message - - - - -\nfrom : ext - shirley . crenshaw ( a ) enron . co\nsent : thursday , september 07 , 2000 9 : 47 am\nto : stone , v . i . ( valeria )\nsubject : re : informal exploratory interview with enron research group\nvaleria :\nplease do not think we are always this unorganized , but things just seem\nto be happening right now and it is disrupting everyone ' s schedule .\nwould you possibly be able to come tomorrow the 8 th ? kevin kindall\nwill not be here on the 15 th and he would definately like to interview you .\nthen vince kaminski will be gone for two weeks after the 15 th . it seems\nlike tomorrow might be the best time for everyone , if it is for you .\nwe can begin the interviews at 3 : 00 pm and probably end them at 5 : 00\nor 5 : 30 pm .\nplease let me know .\nthanks so much for your understanding .\n[ stone , v . i . ( valeria ) ] :\nregards ,\nshirley crenshaw\nvaleria . i . stone @ exxon . sprint . com on 09 / 07 / 2000 07 : 46 : 13 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : informal exploratory interview with enron research group\ndate : september 7 , 2000\nfrom : stone , v . i . ( valeria ) vistone -\namericas\nto : ext - shirley . crenshaw ( a ) enron . co shirlecl -\nfpexmail\nsubject : re : informal exploratory interview with enron research group\n[ stone , v . i . ( valeria ) ] 0\ndefinitely - any of these days sound good to me . the only concern that i\nhave , is that i have my graduate class on thursday night at 6 pm which is\nseptember the 14 th .\nso if you will schedule the interview on the 14 th of september , i would\nneed\nto leave around 5 : 15 pm so i could attend my class .\nit actually might be more convenient for me to meet with the interviewers\non\nthe 15 th of september . if this day does not fit the schedule of any of the\ninterested in interviewing individuals , i surely will be able to meet with\nthem on the 14 th .\ni will be looking forward to your reply .\nsincerely ,\nvaleria stone\n- - - - - original message - - - - -\nfrom : ext - shirley . crenshaw ( a ) enron . co\nsent : wednesday , september 06 , 2000 4 : 32 pm\nto : stone , v . i . ( valeria )\nsubject : re : informal exploratory interview with enron research group\nvaleria :\nwould you be able to do the interview on the 14 th or 15 th instead of the\n13 th ? vince kaminski , who would really like to interview you , has been\ncalled out of town on the 13 th . he will be back on the 14 th .\nalso grant masson is conducting an options seminar on the 13 th and\nwould not be able to interview you until after 5 : 00 pm .\nplease let me know if we can just push the interview to the same time\nframe only on the 14 th or 15 th .\nthanks !\nshirley crenshaw\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.580+0000", "entityId": 8343, "properties": {"text": "Subject: visit to carnegie mellon\ndear dr . kaminski :\npierre ste - marie tells me he has invited you to visit carnegie mellon . i\nwould just like to emphasize how much we hope you can arrange a visit . we\nhave had the good fortune of attracting outstanding students into our\nmaster ' s program in computational finance , and i think you will enjoy\nmeeting them . last year alexander eydeland visited , and at the conclusion\nof the year hired one of the students . i look forward to meeting you .\nsincerely yours ,\nsteve shreve\nsteven e . shreve\ndepartment of mathematical sciences\ncarnegie mellon university\npittsburgh , pa 15213 - 3890\ne - mail : shreve @ cmu . edu\ndirect telephone : 412 - 268 - 8484\ndepartment telephone : 412 - 268 - 2545\nfax : 412 - 268 - 6380", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.585+0000", "entityId": 8344, "properties": {"text": "Subject: re : weatherwise\nthanks , brian . do contact him , please . his number in houston should be\n( 713 ) 853 - 3400 , or 6 - 853 - 3400 on the direct line .\nmichael\nronnie : brian ' s number is 503 - 464 - 8516\n> > > brian soth 09 / 07 / 00 12 : 06 pm > > >\nmichael - we have a contract with weatherwise to launch the weatherproof bill\nhere in our service territory . the wpb is a hedge for customers and , to some\nextent , a weather hedge for us . we are not buying a typical enron - like hedge\nfrom them , however .\nif you want me to talk to ronnie i ' d be glad to .\n> > > michael schilmoeller 09 / 05 / 00 10 : 25 am > > >\nan associate of mine from research , ronnie chahal , is working for the enron\nsubsidiary newpower and was wondering if pge uses weatherwise , a derivatives\nprovider for weather hedges among other things . ronnie is trying to get some\nbackground on them . if any of you know whether pge uses this service , please\ncontact ronnie or me and let me know to whom ronnie could speak about pge ' s\nexperiences with weatherwise .\nthanks ,\nmichael\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.590+0000", "entityId": 8345, "properties": {"text": "Subject: re : var article\nles ,\nthe revised version of the var article looks fine .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.594+0000", "entityId": 8346, "properties": {"text": "Subject: clean fuels - gpg business segment\ndwight and i are working to develop an updated valuation for the mtbe and\nmethanol business segments . we would appreciate assistance from your group\nin assessing the market over the next 3 - 4 years .\nwith the octane shortage this summer , and the strong gas and oil price\nenvironment , mtbe prices are well above budgeted levels . how will\npolitical / environmental issues affect mtbe prices over the next few years .\nmethanol prices are also now very favorable , but it would seem that north\namerican methanol producers will be disadvantaged if gas prices in na remain\nhigher than the rest of the world .\nyour thoughts on these and any other factors affecting prices would be most\nhelpful . both dwight and i are available to meet with you or a member of\nyour group as soon as convenient .\nthanks , sorry we missed you today .\njng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.599+0000", "entityId": 8347, "properties": {"text": "Subject: re : faculty lunch\nalison ,\ni recommended inviting duane seppi and steven shreve . i would also invite\nbrian routledge .\ni don ' t know him but heard many good things about him . kevin kindall may have\nother recommendations .\nvince\nenron north america corp .\nfrom : mary alison bailey 09 / 08 / 2000 05 : 04 pm\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect , kevin\nkuykendall / hou / ect @ ect , kevin kuykendall / hou / ect @ ect\ncc : kristin gandy / na / enron @ enron\nsubject : faculty lunch\nkristin had said she was interested in a faculty lunch , and kevin said he\nwould host it . are there any professors you would recommend be invited ?\nhere is a list of finance faculty :\nrobert dammon rdl 9 @ andrew . cmu . edu 412 . 268 . 3696\nrichard green rgob @ andrew . cmu . edu 412 . 268 . 2302\ndavid heath heath @ andrew . cmu . edu 412 . 268 . 2545\nchristine parlour parlourc @ andrew . cmu . edu 412 . 268 . 5806\nbrian routledge rout @ andrew . cmu . edu 412 . 268 . 7588\nduane seppi ds 64 @ andrew . cmu . edu 412 . 268 . 2298\nsteven shreve shreve @ andrew . cmu . edu 412 . 268 . 8484\nchester spatt cs 9 z @ andrew . cmu . edu 412 . 268 . 8834\nchristopher telmer telmerc @ andrew . cmu . edu 412 . 268 . 8838\nstanley zin szoh @ andrew . cmu . edu 412 . 268 . 3700\n*", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.604+0000", "entityId": 8348, "properties": {"text": "Subject: re : your mail\ndear vince ,\nthe following message is from co - pi , prof . baichun xiao in long island\nuniversity .\nin this message , he told me how enron would be registered . to my best\nknowledge ,\nibm , lucent and other big companies have registered in nsf for long .\nyour kindly understanding is acknowledged very much .\ngood weekend ,\nyouyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by youyi feng / na / enron on 09 / 08 / 2000 03 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbaichun xiao on 09 / 07 / 2000 09 : 39 : 38 am\nto : youyi . feng @ enron . com\ncc :\nsubject : re : your mail\ndear youyi :\nthe person in charge of external grants in your company needs to contact\nnsf by calling the following numbers for institution registration .\nfastlane user support : 1 - 800 - 673 - 6188 .\nfastlane availability ( recording ) : 1 - 800 - 437 - 7408 .\nafter enron is registered ( i think it ' s a free registration ) , you provide\nthe following information to the enron official so he / she will send it to nsf .\nnsf will assign you a password for future access to electronic submission\n( called fastlane ) . since all proposals have to be submitted through\nfastlane after oct . 1 , 2000 , this is the must .\nname\nhighest degree\nyear conferred\npresent institution\ndepartment\nstreet address\ncity\nstate\nzip code\nsocial security number ( ssn )\nemail address\nbusiness phone number\nbusiness fax number\nfor more information , you may go to\nwww . fastlane . nsf . gov / fastlane . htm\nbaichun\nat 05 : 14 pm 9 / 6 / 00 - 0500 , you wrote :\n>\n> dear baichun ,\n>\n> i am having no idea about contacting nsf while the\n> managing director of this research group has kindly agreed\n> on doing anything he can to help us pursue fund rising .\n> please let me know how enron can put my profile into nsf ' s\n> database officially .\n>\n> the first four pages of the project application have been revised by\n> me . i do not\n> really know if you like the revision . appended is the primary\n> and description of the project document files .\n>\n> best regards ,\n>\n>\n> youyi\n>\n> ( see attached file : project summary . doc ) ( see attached file : project\n> description . doc )\n> attachment converted : \" c : \\ bcx \\ res \\ eudora \\ attach \\ project summary . doc \"\n>\n> attachment converted : \" c : \\ bcx \\ res \\ eudora \\ attach \\ project description . doc \"\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.609+0000", "entityId": 8349, "properties": {"text": "Subject: evaluation form\nmike ,\nplease , sign and return to me .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.613+0000", "entityId": 8350, "properties": {"text": "Subject: oral surgery\nvince , anita and kevin :\ni went to the dentist yesterday afternoon , and unfortunately , i am going to\nhave to have some oral surgery .\nit is scheduled for 9 : 30 am on thursday the 21 st of september , so i will\nprobably\nbe out the rest of the day . hopefully , i will return on friday , the 22 nd if\nall goes\nwell .\njust wanted to let you know .\nthanks !\nshirley\n* * * * * *\nanita and kevin :\ni will also be on vacation next wednesday , the 13 th for one day .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.618+0000", "entityId": 8351, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem . please , coordinate with kevin and anita .\nvince\nshirley crenshaw\n09 / 06 / 2000 03 : 30 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : vacation\nvince :\ni would like to take next wednesday , the 13 th as a vacation day , if it is\nalright . you will not be here .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.622+0000", "entityId": 8352, "properties": {"text": "Subject: ( no subject )\npierre - philippe ,\nthanks for your message . i shall be glad to make a presentation in early\nnovember . i understand the presentation are on fridays and november the 3 rd\nwould be the best date for me .\nif you prefer november the 10 th , we have to wait a few more days with the\ndecision . we have a management conference every year in san antonio and it\nwill be held either in the 2 nd or the 3 rd week of november . i shall know in a\nfew days . the same goes for november 9 , assuming it was not a mistake ( it ' s\nthursday ) .\ni shall be free for dinner on the day of the conference . thanks for the\ninvitation .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.627+0000", "entityId": 8353, "properties": {"text": "Subject: ( no subject )\ndear professor shreve ,\nthank you for your message . i shall be glad to make a presentation at\ncarnegie mellon . i am discussing with pierre ste - marie possible dates and it\nseems at this point that november the 3 rd would be the most convenient day .\nnovember the 10 th is an alternative date , but i need a few more days to make\na commitment .\nlook forward to meeting you .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.631+0000", "entityId": 8354, "properties": {"text": "Subject: the garp 2001 convention\ndear mr kaminski\nthank you very much for your prompt reply and for the information you sent\nme . i have incorporated this information in the program and am sending you\nit again for one last confirmation . ( in particular , i hope that i have your\njob title and organization name correct ? ) .\nmeasuring energy risk \u0001 ) tackling price volatility , adapting var , scenario\nmodelling and regulatory requirements\nthe challenge of modeling price dynamics in the energy markets .\n- seasonality\n- fat tails\n- jumps\n- mean ( or floor ) reversion\nprice volatility in the energy markets : definition and estimation\nadapting value - at - risk for the energy markets :\n- combination of physical and financial contracts\n- correct representation of price dynamics and inter - market price\nrelationships\n- capturing complexity of energy contracts\nhistorical vs . monte carlo simulation vs . scenario analysis . pros and cons\nof different approaches\nregulatory uncertainty and value - at - risk\nvince kaminski , managing director , research , enron corp .\nif there are no alterations required i will assume that everything is fine\nas it is and will proceed to the printers in due course . i also look forward\nto receiving a short biography of about fifty words in due course .\n?\nif you have any queries please do not hesitate to contact me , otherwise i\nlook forward to seeing you in new york in february .\n?\nkind regards\n?\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.636+0000", "entityId": 8355, "properties": {"text": "Subject: more hedge effectiveness testing\nvince ,\nhave you seen the latest version of our article ? in a nutshell , it\nestablishes both what ' s right and what ' s wrong with r - squared / regression .\nessentially , r - squared is fine provided that the amount of the derivative\noptimal , but otherwise it makes little sense .\nplease let me know what you think about this .\nregards ,\nandy\nandrew kalotay associates , inc .\n( 212 ) 482 - 0900\nandy @ kalotay . com\nvisit our web - site http : / / www . kalotay . com\n- fasl 33 article . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.640+0000", "entityId": 8356, "properties": {"text": "Subject: right of first refusal pricing\nlorrian and michel ,\nthe rofr option , which grants the shipper the right to lock in the\ntransportation rate ( max rate ) for next\na few years , is priced as a spread swaption .\ni priced two scenarios for you : the strip starts 1 ) nov . 1 - 00 and 2 ) nov . 1 - 01 .\nfor the first one i assume that the shipper makes decision on oct . 31 , 00 ( 54\ndays to maturity )\nand on oct . 31 , 01 ( 419 days to maturity ) for the second case .\nthe second case has longer time to expiration , therefore larger option time\nvalue . see the attached\nspreadsheets for more detail .\nlet me know if you have any questions .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.645+0000", "entityId": 8357, "properties": {"text": "Subject: technical corner\nfor when you return . . .\nsam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by william smith / corp / enron on 09 / 11 / 2000\n07 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngiuseppe _ paleologo @ enron . net on 09 / 08 / 2000 05 : 00 : 17 pm\nto : william . smith @ enron . com\ncc :\nsubject : technical corner\nhi will ( or sam ) ! i hope you had a good weekend ! the probability of the car\nbeing blue should be . . . . hemmm . . . . let ' s see . . . . 41 . 38 % ? ? ?\nby the way , do you know of any book on the collapse of ltcm ?\nciao ,\ngiuseppe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.649+0000", "entityId": 8358, "properties": {"text": "Subject: fw : mscf speaker series - november 3 rd confirmation\n- - - - - original message - - - - -\nfrom : pierre - philippe ste - marie\nto :\nsent : monday , september 11 , 2000 8 : 13 am\nsubject : mscf speaker series - november 3 rd confirmation\n> dear mr . kaminski ,\n>\n> it is a great pleasure and a great honor to schedule you on the mscf\n> speaker series list for november 3 rd , i will make reservation for 8\npersons\n> at a restaurant in pittsburgh for that evening . also , if you want i can\nbook\n> an hotel for you .\n>\n> let me know if you have anything in mind for the topic of the\npresentation .\n> there is no real guidelines as we like our speakers to have as much room\nas\n> possible . here is one of the past presentations that had an impact . one of\n> our speakers divided the presentation in two , the first part was\ntechnical ,\n> the second was more general , explaining what his firm was looking for when\n> hiring new employees .\n>\n> thank you very much for accepting our invitation .\n>\n> sincerely ,\n>\n>\n>\n>\n> pierre - philippe ste - marie\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> pstemarie . homestead . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.654+0000", "entityId": 8359, "properties": {"text": "Subject: projects completed and work in progress\ndear vince ,\nhi , i hope your having fun on you vacation ! i just want to drop you a line\nsince we haven ' t talked in a while and give you a progress update . first , i\nfeeling much better . eventhough i was out last week , i finished the\nfollowing curves :\ncanadian cpi\nphillippines fx and cpi\nmexican fx and cpi\nsaudi arabian fx and cpi\nguatemalan fx\nwe also helped london rac with finding information on the uk inflation model\nto backtest it . gwyn and yana kept me very busy last week . yana , who lives\nclose by me was nice enough to drop off work at night . gywn and i worked on\nthe curves over the phone .\nyesterday , i got a call from terry thorn , he needed economic information and\na presentation to give to egm management . i gave him a copy of the\nconforming assets presentation , he was very pleased . this week , i ' m working\non a urgent request from rac . the board has decided to resurrect dragon 2 ,\nso we are preparing all the curves for the apachi region . i ' m also working\non the metals presentation . see you thursday .\nregards ,\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.659+0000", "entityId": 8360, "properties": {"text": "Subject: thank you !\nfyi from valeria .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 12 / 2000\n10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvaleria . i . stone @ exxon . sprint . com on 09 / 12 / 2000 09 : 59 : 37 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : thank you !\ndate : september 12 , 2000\nfrom : stone , v . i . ( valeria ) vistone - americas\nto : ext - shirley . crenshaw ( a ) enron . co shirlecl - fpexmail\nsubject : thank you !\ndear shirley ,\ncan you please forward this thank you note to kevin kindall , grant masson ,\ntanya tamarchenko and\nvince kaminski for me .\ndear kevin , grant , tanya , and vince :\ni just wanted to thank you for the time you shared with me on friday ,\nseptember 8 th , regarding employment opportunities with enron . i enjoyed\nmeeting with you and discussing your company ' s structure and mission as well\nas the objectives of the research group . i was impressed by the fast - paced\nenvironment and dedication that were displayed by your group . it is apparent\nto me that your group greatly contributes to the overall success of enron .\ni am looking forward to hearing from you soon .\nsincerely ,\nvaleria stone\n- - - - - original message - - - - -\nfrom : ext - shirley . crenshaw ( a ) enron . co\nsent : thursday , september 07 , 2000 10 : 27 am\nto : stone , v . i . ( valeria )\nsubject : re : informal exploratory interview with enron research group\nvaleria :\n3 : 30 pm tomorrow the 9 th will be fine . we will have to change the schedule\na little bit , but i believe it will work .\nkevin kindall 3 : 30 pm\ngrant masson 4 : 00 pm\ntanya tamarchenko 4 : 30 pm\nvince kaminski 5 : 00 pm\nsame scenario - upon arrival in the lobby go to the security desk and ask\nfor me . i will meet you in the lobby of the 19 th floor .\nthanks so much for your flexibility !\nshirley crenshaw\nvaleria . i . stone @ exxon . sprint . com on 09 / 07 / 2000 08 : 56 : 24 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : informal exploratory interview with enron research group\ndate : september 7 , 2000\nfrom : stone , v . i . ( valeria ) vistone -\namericas\nto : ext - shirley . crenshaw ( a ) enron . co shirlecl -\nfpexmail\nsubject : re : informal exploratory interview with enron research group\nsure , tomorrow is fine with me . is it possible to schedule it at 3 : 30 pm ?\nand i am sure it is not an easy task to fit the schedule of several people\nto\nbe available at the same time window . so please feel free to let me know\nif\nyou will need to do another time adjustment .\n- - - - - original message - - - - -\nfrom : ext - shirley . crenshaw ( a ) enron . co\nsent : thursday , september 07 , 2000 9 : 47 am\nto : stone , v . i . ( valeria )\nsubject : re : informal exploratory interview with enron research group\nvaleria :\nplease do not think we are always this unorganized , but things just seem\nto be happening right now and it is disrupting everyone ' s schedule .\nwould you possibly be able to come tomorrow the 8 th ? kevin kindall\nwill not be here on the 15 th and he would definately like to interview you .\nthen vince kaminski will be gone for two weeks after the 15 th . it seems\nlike tomorrow might be the best time for everyone , if it is for you .\nwe can begin the interviews at 3 : 00 pm and probably end them at 5 : 00\nor 5 : 30 pm .\nplease let me know .\nthanks so much for your understanding .\n[ stone , v . i . ( valeria ) ! :\nregards ,\nshirley crenshaw\nvaleria . i . stone @ exxon . sprint . com on 09 / 07 / 2000 07 : 46 : 13 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : informal exploratory interview with enron research group\ndate : september 7 , 2000\nfrom : stone , v . i . ( valeria ) vistone -\namericas\nto : ext - shirley . crenshaw ( a ) enron . co shirlecl -\nfpexmail\nsubject : re : informal exploratory interview with enron research group\n[ stone , v . i . ( valeria ) ! 0\ndefinitely - any of these days sound good to me . the only concern that i\nhave , is that i have my graduate class on thursday night at 6 pm which is\nseptember the 14 th .\nso if you will schedule the interview on the 14 th of september , i would\nneed\nto leave around 5 : 15 pm so i could attend my class .\nit actually might be more convenient for me to meet with the interviewers\non\nthe 15 th of september . if this day does not fit the schedule of any of the\ninterested in interviewing individuals , i surely will be able to meet with\nthem on the 14 th .\ni will be looking forward to your reply .\nsincerely ,\nvaleria stone\n- - - - - original message - - - - -\nfrom : ext - shirley . crenshaw ( a ) enron . co\nsent : wednesday , september 06 , 2000 4 : 32 pm\nto : stone , v . i . ( valeria )\nsubject : re : informal exploratory interview with enron research group\nvaleria :\nwould you be able to do the interview on the 14 th or 15 th instead of the\n13 th ? vince kaminski , who would really like to interview you , has been\ncalled out of town on the 13 th . he will be back on the 14 th .\nalso grant masson is conducting an options seminar on the 13 th and\nwould not be able to interview you until after 5 : 00 pm .\nplease let me know if we can just push the interview to the same time\nframe only on the 14 th or 15 th .\nthanks !\nshirley crenshaw\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.663+0000", "entityId": 8361, "properties": {"text": "Subject: re : anjam ' s term sheet\ntara :\ni am forwarding it to vince for his approval . it looks good although i have\nthree questions :\n1 ) i presume that it is clear that enron pays housing up to 1500 / month .\nanjam does not get a check for 1500 to play with . utility bills are not\nincluded unless part of the rent , right ? this should be clarified ; as you\nknow , houston summers are a significant burden on the pocket - book .\n2 ) economy class plane . can we even do that ? i thought enron policy was for\na b - class ticket for flights over 6 hours .\n3 ) 500 lbs of transport . i don ' t know if this is a big ticket item , but i\nwould give him less , 250 say , if it would save enron considerable expense .\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.670+0000", "entityId": 8362, "properties": {"text": "Subject: ben zhang\nany suggestions ?\n- g\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 09 / 13 / 2000 09 : 06\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : toni graham @ enron 09 / 12 / 2000 09 : 33 pm\nto : grant masson / hou / ect @ ect\ncc :\nsubject : ben zhang\nwhat do you want to do ? my experience tells me that it ' s not about the\nmoney . his wife doesn ' t want to move .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by toni graham / corp / enron on 09 / 12 / 2000\n09 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmeastman @ qualitec . com on 09 / 12 / 2000 09 : 46 : 48 am\nto :\ncc :\nsubject : ben zhang\ntoni ,\ni spoke with ben this morning and he is asking me what he should do . he\nknows how good the opportunity is\nand this is something he really wants to do . however , his wife is having a\nhard time making the commitment . although he says she is not totally against\nit , she is obviously not 100 % sold . ben feels bad about keeping vince ,\ngrant , and other potential team members at enron waiting . he does not want\nto lose the opportunity , yet he needs some help in convincing his wife . i am\nopen for suggestions . is this somebody you really want and if so what can\nwe do get him ?\nthanks ,\nmike\nqualitec professional services , lp\naccounting - financial - energy risk - tax\nsearch consultants\nmike eastman , cpc\npresident\n281 - 647 - 9300 fax 281 - 647 - 0933\nemail - meastman @ qualitec . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.678+0000", "entityId": 8363, "properties": {"text": "Subject: enron opportunities\ndr . kaminski :\n?\nhere is my resume and cover letter .\n?\nthanks ,\n?\nrichard iles\n- enron cover and resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.685+0000", "entityId": 8364, "properties": {"text": "Subject: update on ut - enron activities : my conversation with rick causey\nvince ,\ngood morning .\nas you may know , last thur . enron honored this year ' s recipients of the\nenron mba excellence fund scholars at a dinner in austin . in addition to\nthe three recipients , business school dean may and several of my\ncolleagues , enron attendees included sally beck , cindy justice , karen\nmarshall ( newly - appointed coordinator of higher education initiatives for\nenron community relations dept . ) and rick causey .\ni write you at this time to advise you i had occasion to discuss two\ncurrent enron / ut issues with rick :\ni . spring 2001 conference participation by jeffrey k . skilling\nii . ut participation in enrontraining activities\nper my conversation with rick last thur . , i followed up on that discussion\nwith an e - mail this morn that touched on those two topics .\ni . with respect to the first , i wrote rick this morning that :\n1 . we at the ut center for energy finance education and research ( cefer )\nare planning a practitioner - industry conference in spring 2001 ( late feb .\nor early march ) to discuss four topics : risk management , deregulation ,\nreal options , and international / globalization .\n2 . the conference will kick off with a dinner / keynote address thur .\nevening , then continue all day fri .\n3 . i have had several discussions with you regarding conference timing ,\nstructure , participation and content .\n4 . further to rick ' s agreement to do so during our discussion last thur . ,\nin today ' s e - mail i asked rick to extend an invitation to jeff skilling to\nbe the keynote speaker at the thur . evening dinner .\nii . with respect to the second topic , rick and i also discussed ut\npartcipation in enron corp . internal training for incoming enron corp .\nanalysts and associates . consequently , i e - mailed rick this morning a\nspecific set of issues - - \" valuation and risk management in energy markets \"\n- - which my ut colleagues and i have covered in public as well as\ncustomized exec ed settings , and which we would be pleased to customize for\npresentation at enron . fyi , i am enclosing a copy of said topics at the\nend of this e - mail .\ni look forward to seeing you again soon , and to your ut visit on 10 / 11 . best ,\nehud\ntraining program : \" valuation and risk management in energy markets \"\ntarget audience : associates , analysts , traders , marketing / sales , risk\nmanagers , financial analysts\nprogram objectives :\n1 . understanding the physical and financial u . s . markets for electricity\nand natural gas\n2 . understanding the structuring , reverse engineering and valuation of\nexchange - traded and otc energy derivatives , including \" exotic \" options ,\nstructured products , and spread and basis products\n3 . promoting a common language between trading and marketing personnel\nregarding valuation and hedging of structured products\n4 . risk - management\nprogram contents :\ni . \" electricity 101 \"\n- - problems in pricing\n- - spot markets\n- - forward markets\n- - trading : basis , fixed - price , volatility\n- - markets : characteristics and participants\nii . valuation / structuring / hedging\n1 . fundamentals of forwards and futures contracts :\n- - forward contracts : definition , payoff diagram , pricing by arbitrage\n- - futures vs . forwards\n- - commodity futures\n- - swaps\n- - constructing forward curves : contrast with price forecast ; using the\nspark spread ; incorporating regional bases\n2 . introduction to option pricing :\n- - payoffs\n- - put - call parity\n- - binomial model\n- - black - scholes formula\n- - option \" sensitivities \" ( the \" greeks \" ) ; delta and gamma\n3 . uniqueness of energy derivatives :\n- - \" term structure \" of volatility\n- - convenience yield / seasonality\n- - basis\n4 . estimating volatility in energy markets :\n- - estimating volatility in financial markets\n- - hourly vs . daily vols\n- - historical or implied vols ?\n- - characterizing the volatility \" surface \" across time and strike\n5 . design and valuation of structured products in commodity markets :\n- - valuation of european call options in energy markets\n- - average options on oil futures contracts\n- - spread and basis products\n- - \" swing \" options in power markets\n- - weather derivatives\n6 . risk - management\n- - motivation for structured trades\n- - valuation of real options ( e . g . , valuation of power plant or gas field )\n- - value - at - risk ( one - and multi - factor models )\n- - repowering option\n7 . advanced topics ( for qualified audiences )\n- - relationship between forward prices and expected spot prices\n- - the importance of hedging volatility changes\n- - consistent method for estimating hourly , daily and monthly term\nstructures of volatility\n- - practical alternatives to vega - hedging\n- - applying options theory to the valuation of power plants\n- - valuation of \" swing \" options under ruthless and non - ruthless exercise\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.690+0000", "entityId": 8365, "properties": {"text": "Subject: membership in the nsf\nvince :\nkaren marshall from community relations called and said that you are the\none that needs to call the nsf and register yourself and enron with the\nfoundation . they will give you a password and you can pass it on to youyi .\nthe number below is the one that you call .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 14 / 2000\n03 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nyouyi feng @ enron\n09 / 07 / 2000 02 : 09 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : your mail\ndear shirley ,\ni appreciate you for forwarding this info further .\nbest regards ,\nyouyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by youyi feng / na / enron on 09 / 07 / 2000 02 : 04\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : youyi . feng @ enron . com\ncc :\nsubject : re : your mail\ndear youyi :\nthe person in charge of external grants in your company needs to contact\nnsf by calling the following numbers for institution registration .\nfastlane user support : 1 - 800 - 673 - 6188 .\nfastlane availability ( recording ) : 1 - 800 - 437 - 7408 .\nafter enron is registered ( i think it ' s a free registration ) , you provide\nthe following information to the enron official so he / she will send it to nsf .\nnsf will assign you a password for future access to electronic submission\n( called fastlane ) . since all proposals have to be submitted through\nfastlane after oct . 1 , 2000 , this is the must .\nname\nhighest degree\nyear conferred\npresent institution\ndepartment\nstreet address\ncity\nstate\nzip code\nsocial security number ( ssn )\nemail address\nbusiness phone number\nbusiness fax number\nfor more information , you may go to\nwww . fastlane . nsf . gov / fastlane . htm\nbaichun\nat 05 : 14 pm 9 / 6 / 00 - 0500 , you wrote :\n>\n> dear baichun ,\n>\n> i am having no idea about contacting nsf while the\n> managing director of this research group has kindly agreed\n> on doing anything he can to help us pursue fund rising .\n> please let me know how enron can put my profile into nsf ' s\n> database officially .\n>\n> the first four pages of the project application have been revised by\n> me . i do not\n> really know if you like the revision . appended is the primary\n> and description of the project document files .\n>\n> best regards ,\n>\n>\n> youyi\n>\n> ( see attached file : project summary . doc ) ( see attached file : project\n> description . doc )\n> attachment converted : \" c : \\ bcx \\ res \\ eudora \\ attach \\ project summary . doc \"\n>\n> attachment converted : \" c : \\ bcx \\ res \\ eudora \\ attach \\ project description . doc \"\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.695+0000", "entityId": 8366, "properties": {"text": "Subject: ben zhang timeframe\nhi ,\ncan and should we organize a tag - team baby sitting detail ? aghh ! another\nweekend that is not my own !\ngrant .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 09 / 14 / 2000 08 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : toni graham @ enron 09 / 13 / 2000 05 : 08 pm\nto : grant masson / hou / ect @ ect\ncc :\nsubject : ben zhang timeframe\ngrant , what do you think ? if you really want this guy , you may suggest\nsomeone in your group to \" entertain \" them while they are here .\nwhat do you think ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by toni graham / corp / enron on 09 / 13 / 2000\n04 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmeastman @ qualitec . com on 09 / 13 / 2000 02 : 05 : 53 pm\nto :\ncc :\nsubject : ben zhang timeframe\ntoni ,\ni spoke with ben today and he is planning to pay for a trip to bring his\nwife to houston this weekend and show her around in hopes of overcoming her\nhesitiation on moving . his question is whether enron will give him the time\nto bring her down here and then give an answer next week ? if you will let\nme know how you , grant , and vince feel about that .\nthanks ,\nmike\nqualitec professional services , lp\naccounting - financial - energy risk - tax\nsearch consultants\nmike eastman , cpc\npresident\n281 - 647 - 9300 fax 281 - 647 - 0933\nemail - meastman @ qualitec . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.699+0000", "entityId": 8367, "properties": {"text": "Subject: re : the garp 2001 convention\nandreas :\nhere it is :\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\nvince\n\" andreas simou \" on 09 / 15 / 2000 09 : 11 : 00 am\nto :\ncc :\nsubject : the garp 2001 convention\ndear garp speak\n?\ni am writing to request some information regarding the garp 2001 convention .\n?\ncan you please furnish me with your full postal address so that i can send\nyou a copy of the garp brochure in the near future .\n?\ni look forward to your response in due course .\n?\nkind regards\n?\nandreas\n?\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.704+0000", "entityId": 8368, "properties": {"text": "Subject: rice / enron seminar series\nfyi !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 15 / 2000\n02 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarbara ostdiek on 09 / 15 / 2000 02 : 39 : 53 pm\nto : ostdiek @ rice . edu\ncc :\nsubject : rice / enron seminar series\njones graduate school research seminar series in finance\nsponsored by enron corp .\njeff pontiff\nuniversity of washington\nwill give a seminar at the jones school on friday , september 22 , ?\n\u0001 & market valuation of tax - timing options : evidence from capital gains\ndistributions . \u0001 8\nthe seminar will begin at 3 : 30 in room 115 .\na word file with the paper is available through the seminar website\nhttp : / / www . ruf . rice . edu / ~ jgsfss / .\nthere have also been several updates to the schedule in the last week or ten\ndays .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.708+0000", "entityId": 8369, "properties": {"text": "Subject: re : hello from vince kaminski at enron\ngreat\nyou are on for the 23\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : friday , september 15 , 2000 6 : 04 pm\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> sorry for not getting back to you earlier .\n> if the 23 rd of october is still open , i can make the presentation on this\n> day .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 30 / 2000 08 : 18 : 15 am\n>\n> to :\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> originally you mentioned october 23 so i reserved that week which is still\n> open .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from :\n> to :\n> cc : ; ;\n>\n> sent : wednesday , august 30 , 2000 9 : 03 am\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> > shmuel ,\n> >\n> > let ' s see if we can either rearrange the seminar speakers\n> > or change the date of our visit to the campus . ashley baxter , our\n> > coordinator is very efficient and\n> > got a faculty room for a presentation on monday morning on the 16 th .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 29 / 2000 05 : 37 : 33 pm\n> >\n> > to :\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > dear vince . i spoke too soon . apparently the seminar slot on the 16 was\n> > already filled . i will see if i can switch the speaker for that week to\n> the\n> > following week . in any case we are on for dinner on the 16 .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to :\n> > cc : ;\n> > sent : tuesday , august 29 , 2000 5 : 01 pm\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > >\n> > > shmuel ,\n> > >\n> > > the date of our trip to berkeley has been set . it will be october 16 th\n> > and\n> > > 17 th\n> > > ( monday and tuesday ) .\n> > >\n> > > i shall be glad to make a presentation on energy derivatives markets\n> > > ( development of the markets in the us and europe , valuation\n> difficulties ,\n> > > enron ' s role\n> > > in developing the forward markets for natural gas and electricity ) .\n> > >\n> > > please , let me know if this topic would be of interest to you . if this\n> is\n> > > the\n> > > case , i shall follow with a title and an abstract .\n> > >\n> > > by the way , are you free for dinner on monday ?\n> > >\n> > > vince\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n> > >\n> > > to : \" vince j kaminski \"\n> > > cc :\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > > great . our seminars are 3 : 30 to 5 pm . if it works for you please send\nme\n> a\n> > > title and abstract .\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > shmuel s . oren , professor\n> > > dept . of industrial engineering\n> > > and operations research\n> > > 4117 etcheverry hall\n> > > university of california\n> > > berkeley , ca 94720 - 1777\n> > > e - mail : oren @ ieor . berkeley . edu\n> > > phone : ( 510 ) 642 - 1836 or 5484\n> > > fax : ( 510 ) 642 - 1403\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > >\n> > > - - - - - original message - - - - -\n> > > from : \" vince j kaminski \"\n> > > to : \" shmuel oren \"\n> > > cc : \" vince j kaminski \" ; \" ashley baxter \"\n> > >\n> > > sent : thursday , august 24 , 2000 9 : 58 am\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > > >\n> > > >\n> > > > shmuel ,\n> > > >\n> > > > thanks for the message . i am working with our recruiter , ashley\n> baxter ,\n> > > > to finalize the date of the trip . i shall shoot for october the 23 rd\n> > > > if this date works for the rest of our team .\n> > > >\n> > > > vince\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> > > >\n> > > > to : vince j kaminski / hou / ect @ ect\n> > > > cc :\n> > > > subject : re : hello from vince kaminski at enron\n> > > >\n> > > >\n> > > >\n> > > > dear vince .\n> > > > i sent you a reply earlier this month but i haven ' t heard from you\n> > about\n> > > the\n> > > > date of your visit . our department has a seminar every monday . if\nyou\n> > can\n> > > > schedule your visit on a monday i would like to invite you to give a\n> > > seminar\n> > > > which will be attended by many of our graduate students and faculty\n> and\n> > > will\n> > > > give you an opportunity to tell them about your program . with\n> > sufficient\n> > > > lead - time i can advertise the seminar in the hass school to their\n> > > financial\n> > > > engineering students .\n> > > > shmuel .\n> > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > > shmuel s . oren , professor\n> > > > dept . of industrial engineering\n> > > > and operations research\n> > > > 4117 etcheverry hall\n> > > > university of california\n> > > > berkeley , ca 94720 - 1777\n> > > > e - mail : oren @ ieor . berkeley . edu\n> > > > phone : ( 510 ) 642 - 1836 or 5484\n> > > > fax : ( 510 ) 642 - 1403\n> > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > >\n> > > > - - - - - original message - - - - -\n> > > > from :\n> > > > to : ; ;\n> > > >\n> > > > sent : tuesday , august 08 , 2000 10 : 59 am\n> > > > subject : hello from vince kaminski at enron\n> > > >\n> > > >\n> > > > > shmuel ,\n> > > > >\n> > > > > i hope you remember me . i visited you together with aram\n> sogomonian ,\n> > a\n> > > > > good friend of mine , a few years ago . i am currently responsible ,\n> > among\n> > > > > other things , for recruiting graduates with finance and / or\n> technical\n> > > > > backgrounds at the university of berkeley . i would be glad to give\n> > you\n> > > a\n> > > > > call and talk more about the details of our program . my colleague ,\n> > > > > ashleybaxter , from the analyst / associate program at enron would\n> join\n> > me\n> > > > > as well .\n> > > > >\n> > > > > i am sending you a copy of the brochure about the analyst /\n> associate\n> > > > > program .\n> > > > >\n> > > > > vince kaminski\n> > > > >\n> > > > >\n> > > > > vincent kaminski\n> > > > > managing director - research\n> > > > > enron corp .\n> > > > > 1400 smith street\n> > > > > room ebl 962\n> > > > > houston , tx 77002 - 7361\n> > > > >\n> > > > > phone : ( 713 ) 853 3848\n> > > > > fax : ( 713 ) 646 2503\n> > > > > e - mail : vkamins @ enron . com\n> > > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.713+0000", "entityId": 8370, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nshmuel ,\nsorry for not getting back to you earlier .\nif the 23 rd of october is still open , i can make the presentation on this\nday .\nvince\n\" shmuel oren \" on 08 / 30 / 2000 08 : 18 : 15 am\nto :\ncc :\nsubject : re : hello from vince kaminski at enron\noriginally you mentioned october 23 so i reserved that week which is still\nopen .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\nsent : wednesday , august 30 , 2000 9 : 03 am\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> let ' s see if we can either rearrange the seminar speakers\n> or change the date of our visit to the campus . ashley baxter , our\n> coordinator is very efficient and\n> got a faculty room for a presentation on monday morning on the 16 th .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 29 / 2000 05 : 37 : 33 pm\n>\n> to :\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> dear vince . i spoke too soon . apparently the seminar slot on the 16 was\n> already filled . i will see if i can switch the speaker for that week to\nthe\n> following week . in any case we are on for dinner on the 16 .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from :\n> to :\n> cc : ;\n> sent : tuesday , august 29 , 2000 5 : 01 pm\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> > shmuel ,\n> >\n> > the date of our trip to berkeley has been set . it will be october 16 th\n> and\n> > 17 th\n> > ( monday and tuesday ) .\n> >\n> > i shall be glad to make a presentation on energy derivatives markets\n> > ( development of the markets in the us and europe , valuation\ndifficulties ,\n> > enron ' s role\n> > in developing the forward markets for natural gas and electricity ) .\n> >\n> > please , let me know if this topic would be of interest to you . if this\nis\n> > the\n> > case , i shall follow with a title and an abstract .\n> >\n> > by the way , are you free for dinner on monday ?\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n> >\n> > to : \" vince j kaminski \"\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > great . our seminars are 3 : 30 to 5 pm . if it works for you please send me\na\n> > title and abstract .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from : \" vince j kaminski \"\n> > to : \" shmuel oren \"\n> > cc : \" vince j kaminski \" ; \" ashley baxter \"\n> >\n> > sent : thursday , august 24 , 2000 9 : 58 am\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > >\n> > >\n> > > shmuel ,\n> > >\n> > > thanks for the message . i am working with our recruiter , ashley\nbaxter ,\n> > > to finalize the date of the trip . i shall shoot for october the 23 rd\n> > > if this date works for the rest of our team .\n> > >\n> > > vince\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> > >\n> > > to : vince j kaminski / hou / ect @ ect\n> > > cc :\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > >\n> > > dear vince .\n> > > i sent you a reply earlier this month but i haven ' t heard from you\n> about\n> > the\n> > > date of your visit . our department has a seminar every monday . if you\n> can\n> > > schedule your visit on a monday i would like to invite you to give a\n> > seminar\n> > > which will be attended by many of our graduate students and faculty\nand\n> > will\n> > > give you an opportunity to tell them about your program . with\n> sufficient\n> > > lead - time i can advertise the seminar in the hass school to their\n> > financial\n> > > engineering students .\n> > > shmuel .\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > shmuel s . oren , professor\n> > > dept . of industrial engineering\n> > > and operations research\n> > > 4117 etcheverry hall\n> > > university of california\n> > > berkeley , ca 94720 - 1777\n> > > e - mail : oren @ ieor . berkeley . edu\n> > > phone : ( 510 ) 642 - 1836 or 5484\n> > > fax : ( 510 ) 642 - 1403\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > >\n> > > - - - - - original message - - - - -\n> > > from :\n> > > to : ; ;\n> > >\n> > > sent : tuesday , august 08 , 2000 10 : 59 am\n> > > subject : hello from vince kaminski at enron\n> > >\n> > >\n> > > > shmuel ,\n> > > >\n> > > > i hope you remember me . i visited you together with aram sogomonian ,\n> a\n> > > > good friend of mine , a few years ago . i am currently responsible ,\n> among\n> > > > other things , for recruiting graduates with finance and / or technical\n> > > > backgrounds at the university of berkeley . i would be glad to give\n> you\n> > a\n> > > > call and talk more about the details of our program . my colleague ,\n> > > > ashleybaxter , from the analyst / associate program at enron would join\n> me\n> > > > as well .\n> > > >\n> > > > i am sending you a copy of the brochure about the analyst /\nassociate\n> > > > program .\n> > > >\n> > > > vince kaminski\n> > > >\n> > > >\n> > > > vincent kaminski\n> > > > managing director - research\n> > > > enron corp .\n> > > > 1400 smith street\n> > > > room ebl 962\n> > > > houston , tx 77002 - 7361\n> > > >\n> > > > phone : ( 713 ) 853 3848\n> > > > fax : ( 713 ) 646 2503\n> > > > e - mail : vkamins @ enron . com\n> > > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.717+0000", "entityId": 8371, "properties": {"text": "Subject: out of the office\ni will be out of the office september 18 - 19 , 2000 and will return wednesday\nseptember 20 , 2000 . if you should need anything in the mean time please call\nsheila walton at x 30649 or the hr assistant ramona perkins at x 58165 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.722+0000", "entityId": 8372, "properties": {"text": "Subject: rabi de\ntoni :\nwe talked to rabi . he ' s sitting on the fence for some good reasons , and he\nhas to weigh what is fairly comfy job situation for one that starts out at a\nlower level but has more potential . wrt the green , vince verbally offered\nsalary of $ 105 k plus a guarantee that his bonus at year end would be a\nminimum of $ 15 k cash . that ' s in addition to the $ 15 k sign on bonus . vince\nsaid that we would not bother working up a revised offer letter unless and\nuntil rabi came back with a verbal ok . he will ponder the offer ; probably\nfor a few more days and get back with us . he may well call you to discuss\nthe exact details of the benefits . esop , 401 ( k ) contributions , etc .\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.727+0000", "entityId": 8373, "properties": {"text": "Subject: re : rabi de\nanything we can do ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 09 / 15 / 2000 08 : 34\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : toni graham @ enron 09 / 14 / 2000 07 : 36 pm\nto : grant masson / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect\nsubject : re : rabi de\ngrant , i did talk with tanya this evening however since i ' m on vacation\nfriday i wanted to outline here what rabi has discussed with me .\n1 ) title . . . . . he is currently at a vp level and we are offering him manager\n2 ) sign on bonus . . . . . . . . . . . the 15 k is not coving the lost bonus he will\nreceive at he current co ( $ 25 k )\n3 ) salary . . . . . . . . . . . he will receive a \" risk premium \" of approx 10 % befor\ntax . he is not able to quantify this for us and i was not able to get a\nnumber out of him as to what he is looking for .\nhe is very enthusiastic and wants to work for enron but wanted to see if we\ncould do anything to enhance our offer in these areas .\ntoni\nfrom : grant masson @ ect 09 / 14 / 2000 08 : 58 am\nto : toni graham / corp / enron @ enron\ncc :\nsubject : re : rabi de\ntoni :\ni am talking to vince today . please call me if there are any further\ndevelopments i should know about .\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.731+0000", "entityId": 8374, "properties": {"text": "Subject: command confirmation request ( 4 e 46 c 824 )\nyour command :\nsubscribe frbnyrmagl vince kaminski\nhas been received . you must now reply to this message ( as explained\nbelow ) to complete your subscription . the purpose of this confirmation\nprocedure is to check that the address listserv is about to add to the\nlist for your subscription is reachable . this is a typical procedure for\nhigh - volume lists and all new subscribers are subjected to it - you are\nnot being singled out . every effort has been made to make this\nverification as simple and painless as possible . thanks in advance for\nyour cooperation .\nto confirm the execution of your command , simply point your browser to\nthe following url :\nalternatively , if you have no www access , you can reply to the present\nmessage and type \" ok \" ( without the quotes ) as the text of your message .\njust the word \" ok \" - do not retype the command . this procedure will work\nwith any mail program that fully conforms to the internet standards for\nelectronic mail . if you receive an error message , try sending a new\nmessage to listserv @ peach . ease . lsoft . com ( without using the \" reply \"\nfunction - this is very important ) and type \" ok 4 e 46 c 824 \" as the text of\nyour message .\nfinally , your command will be cancelled automatically if listserv does\nnot receive your confirmation within 48 h . after that time , you must start\nover and resend the command to get a new confirmation code . if you change\nyour mind and decide that you do not want to confirm the command , simply\ndiscard the present message and let the request expire on its own .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.735+0000", "entityId": 8375, "properties": {"text": "Subject: re : joint probabilities\nbob -\nthanks for your help on this - it is exactly what we were looking for . i\nalso wanted to let you know that i will be revising some of these numbers and\nasking you to rerun the probability table . i hope that this is not a problem .\nthanks again\nbob lee @ enron\n08 / 31 / 00 11 : 00 am\nto : michael anderson / hou / azurix @ azurix\ncc : zimin lu / hou / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect\nsubject : re : joint probabilities\nthe attached spreadsheet has been updated to include probabilities for\nexceeding stated stock prices in each year .\nthese numbers represent the probability for all combinations of rab ratio and\nexchange rate . for example , 2003 shows a stock value of 7 . 38 for a rab = 1 . 1\nand fx = 1 . 5 . we previously showed the prob of exceeding a stock price of\n7 . 38 , and rab > 1 . 1 , fx > 1 . 5 as 14 % . the probability of exceeding 7 . 38 for\nall possible values of rab and fx is 35 % ( interpolating between 40 % and 27 %\nin the price table ) .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.741+0000", "entityId": 8376, "properties": {"text": "Subject: re : london visit\npaul ,\ni shall be in london in the beginning of october .\ni shall notify you about the timing of my trip later this week .\nvince\npaul . e . day @ uk . arthurandersen . com on 09 / 18 / 2000 03 : 29 : 50 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : london visit\ni understand this has been cancelled - no problem - life is kind of hectic\nhere\nanyway ! ! why don ' t we try to rearrange next time you ' re over ?\nkind regards\npaul day\nto : paul e . day\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\ndate : 25 / 08 / 2000 19 : 10\nfrom : vince . j . kaminski @ enron . com\nsubject : re : london visit\npaul ,\nthanks for your message . i am in process of\nfinalizing my plans for the trip to london in the end of\nseptember . i delayed responding to you message till\ni had more specific information .\nunless there a major change in my schedule , i shall arrive\nin london on monday morning ( september 18 ) and leave on\nthursday in the evening .\nplease , let me know what would be convenient time\nto meet . you can send me an e - mail message and my secretary\nwill contact to confirm the date and place of the meeting .\nmy assistant ' s name is shirley crenshaw and her phone\nnumber is 713 853 5290 .\ni look forward to meeting you , tom and julian .\nvince kaminski\npaul . e . day @ uk . arthurandersen . com on 08 / 25 / 2000 11 : 53 : 02 am\nto : vince j kaminski / hou / ect @ ect\ncc : tom . o . lewthwaite @ uk . arthurandersen . com ,\njulian . leake @ uk . arthurandersen . com\nsubject : london visit\ni understand that you will be in london around 20 september . tom lewthwaite\nhas\nasked me to arrange a meeting between you , tom and julian leake . i understand\nthat you have met tom and julian before . i would also like to attend - i am\na\nmanager in our uk financial services practice with responsibilty for enron\nfrom\na uk financial services perspective . we would like to discuss any risk\nmanagement concerns that you may have and any internal initiatives with which\nwe\ncould assist .\nif you are happy to meet on this basis , i would be grateful if you could let\nme\nknow how you to proceed ( whether i should arrange timings with you , your\nsecretary , someone in london etc ) . you can contact me on + 44 20 7783 7446 ( at\nenron ' s london offices ) or on this e - mail address .\nkind regards\npaul day\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.745+0000", "entityId": 8377, "properties": {"text": "Subject: fas 133 working group meeting - energy issues 9 / 20\ndear working group participant\nwe are stating up the garp fas 133 working group meetings again . the next\nmeeting is on wednesday september 20 from 6 : 30 - 8 : 30 central time in\nhouston .\nphone - in will be provided .\ngreetings from garp ! we are having the next meeting september 20 th at\nenron , from 6 : 30 pm until 8 : 30 pm . due to security we need everyone to rsvp ,\nincluding the names of any guest they may be bringing . please rsvp to\nrita . hennessy @ enron . com .\nthe meeting will cover sfas 133 and related risk management issues .\nsajjad rizvi and phillip merrill ( garp chairman relating to sfas 133 ) will\nbe presenting . attendence is anticipated to include risk\ncontrol / accounting / and quantitative analyst . below is the following\nagenda :\n\" fasl 33 and beyond ; an update on sfas 138 and eitf 98 - 10 \"\noverview of ? 4 major amendments to sfas 133 , that were made in 138 ,\naccounting for certain derivative instruments and certain hedging\nactivities\nimpact of the expanded definition of normal purchase normal sales\non the commodity transactions .\nupdate on all the recently finalized implementation issues from\ndig since the last garp meeting in may / june 2000 .\ndiscussion on ? eitf 98 - 10 issues on energy related contracts .\n? ? ? eitf 00 - t - capacity ? contract subject to ? lease accounting\ntreatment under sfas 13 .\n? ? ? eitf 96 - 17 - power contracts - long term\n? ? ? eitf 91 - 6 - ? power contracts - long term\noutline garp ' s role and methodology in dealing with the fasb regarding\nenergy related issues\noverview of fasb and dig rule making process and how garp can make\nimpact\ndiscussion to find common ground on issues relating to this new\naccounting rule\noutstanding issues in the energy industry , including capacity\nsales transactions , book - outs etc .\nprioritizing issues\nexplore various positions and how to take next steps\nthe issues presented by sfas 133 are very dynamic and the presenters have\nrequested that if you would like a particular issue raised at this meeting ,\nplease direct your interests and questions to sajjad rizvi at\nlima @ flash . net , or call sajjad at 281 - 579 - 3410\nagain , i would like to extend a thank you to our presenters and i look\nforward to your attendence .\nregards ,\nfrank hayden\ndirector - garp houston chapter", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.750+0000", "entityId": 8378, "properties": {"text": "Subject: you are now subscribed to the frbnyrmagl list\nmon , 18 sep 2000 18 : 42 : 47\nyour subscription to the frbnyrmagl list ( federal reserve bank of ny\nresearch publications ) has been accepted .\nplease save this message for future reference , especially if this is the\nfirst time you are subscribing to an electronic mailing list . if you ever\nneed to leave the list , you will find the necessary instructions below .\nperhaps more importantly , saving a copy of this message ( and of all\nfuture subscription notices from other mailing lists ) in a special mail\nfolder will give you instant access to the list of mailing lists that you\nare subscribed to . this may prove very useful the next time you go on\nvacation and need to leave the lists temporarily so as not to fill up\nyour mailbox while you are away ! you should also save the \" welcome\nmessages \" from the list owners that you will occasionally receive after\nsubscribing to a new list .\nto send a message to all the people currently subscribed to the list ,\njust send mail to frbnyrmagl @ peach . ease . lsoft . com . this is called\n\" sending mail to the list , \" because you send mail to a single address and\nlistserv makes copies for all the people who have subscribed . this\naddress ( frbnyrmagl @ peach . ease . lsoft . com ) is also called the \" list\naddress . \" you must never try to send any command to that address , as it\nwould be distributed to all the people who have subscribed . all commands\nmust be sent to the \" listserv address , \" listserv @ peach . ease . lsoft . com . it\nis very important to understand the difference between the two , but\nfortunately it is not complicated . the listserv address is like a fax\nnumber that connects you to a machine , whereas the list address is like a\nnormal voice line connecting you to a person . if you make a mistake and\ndial the fax number when you wanted to talk to someone on the phone , you\nwill quickly realize that you used the wrong number and call again . no\nharm will have been done . if on the other hand you accidentally make your\nfax call someone ' s voice line , the person receiving the call will be\ninconvenienced , especially if your fax then re - dials every 5 minutes . the\nfact that most people will eventually connect the fax machine to the\nvoice line to allow the fax to go through and make the calls stop does\nnot mean that you should continue to send faxes to the voice number .\npeople would just get mad at you . it works pretty much the same way with\nmailing lists , with the difference that you are calling hundreds or\nthousands of people at the same time , and consequently you can expect a\nlot of people to get upset if you consistently send commands to the list\naddress .\nyou may leave the list at any time by sending a \" signoff frbnyrmagl \"\ncommand to listserv @ peach . ease . lsoft . com . you can also tell listserv how\nyou want it to confirm the receipt of messages you send to the list . if\nyou do not trust the system , send a \" set frbnyrmagl repro \" command and\nlistserv will send you a copy of your own messages , so that you can see\nthat the message was distributed and did not get damaged on the way .\nafter a while you may find that this is getting annoying , especially if\nyour mail program does not tell you that the message is from you when it\ninforms you that new mail has arrived from frbnyrmagl . if you send a \" set\nfrbnyrmagl ack norepro \" command , listserv will mail you a short\nacknowledgement instead , which will look different in your mailbox\ndirectory . with most mail programs you will know immediately that this is\nan acknowledgement you can read later . finally , you can turn off\nacknowledgements completely with \" set frbnyrmagl noack norepro \" .\ncontributions sent to this list are automatically archived . you can get a\nlist of the available archive files by sending an \" index frbnyrmagl \"\ncommand to listserv @ peach . ease . lsoft . com . you can then order these files\nwith a \" get frbnyrmagl logxxxx \" command , or using listserv ' s database\nsearch facilities . send an \" info database \" command for more information\non the latter .\nimportant : this list is confidential . you should not publicly mention its\nexistence , or forward copies of information you have obtained from it to\nthird parties . please note that the \" give \" command is automatically\ndisabled for all archive files .\nmore information on listserv commands can be found in the listserv\nreference card , which you can retrieve by sending an \" info refcard \"\ncommand to listserv @ peach . ease . lsoft . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.754+0000", "entityId": 8379, "properties": {"text": "Subject: re : simulated trading\njana ,\ni shall be glad to join you .\nvince\njlpnymex @ aol . com on 09 / 12 / 2000 01 : 51 : 06 pm\nto : rsbaker @ duke - energy . com , blackj @ wellsfargo . com ,\nmartha @ plunkettresearch . com , dgriffin 240 @ earthlink . net , genieand @ hotmail . com ,\nrobyn _ howard @ aimfunds . com , agerhardt @ pkftexas . com , colgin @ campbellriggs . com ,\ncrowsley @ flash . net , carol _ fitzpatrick @ agc . com ,\ngburrows @ capstonefinancial . com , jhall @ harvardreit . com , jlpnymex @ aol . com ,\ncefi @ dynegy . com , clairta @ yahoo . com , mara _ smith @ aimfunds . com ,\nddenbina @ mpr . com , rdyerlaw @ houston . rr . com , edwards @ nwol . net ,\nsgoldfield @ tmh . tmc . edu , theath @ coral - energy . com , vkamins @ enron . com ,\ntknight @ houstonenergy . org , monica _ kolb @ aimfunds . com , lanejb @ wellsfargo . com ,\ninfo @ . com , elizabethmorrell @ excite . com ,\nkimmorrell @ excite . com , adrian . a . nunez @ usa . conoco . com ,\njack _ plunkett @ plunkettresearch . com , daricha @ ppco . com ,\nmroberts @ coral - energy . com , jstanton @ calpine . com ,\njstephenson @ navigantconsulting . com , dstowers @ watersinfo . com ,\nchtremel @ epri . com , reneeb @ swiftenergy . com , njfitzgerald @ coral - energy . com ,\ncthomso @ ppco . com , mwolper @ alum . mit . edu , carol _ mccutcheon @ oxy . com ,\nleesa . foster @ ipaper . com , woodybc @ bp . com , dzerba @ teldatasolutions . com\ncc :\nsubject : simulated trading\ndear friends and colleagues :\nnymex is hosting a cocktail reception and a simulated open outcry trading\n\" class \" :\nthursday , sept . 28 , 2000\n5 : 00 - 7 : 00 pm\nhouston center club\n( downtown - across from the 4 seasons )\nthis is being held in conjuction with the crude oil association . they charge\n$ 25 at the door .\nhowever , as a host i can have as many of my colleagues there for free !\nbut , i must know if you are coming by september 24 , 2000 c . o . b . , to give a\ncount to the houston center club .\ni hope you can all attend . please feel free to invite someone to come with\nyou . the simulated trading will be held three times during the evening , and\nis very interesting .\ni look forward to hearing from you , and seeing you on 9 / 28 !\njana\nps - call me if you have any questions", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.759+0000", "entityId": 8380, "properties": {"text": "Subject: a & a math majors\nvince ,\nthank you so much for meeting with me friday morning about the research\ngroup .\nafter leaving your office , i remembered an issue i have had with the analyst\n& associate program that might be of interest to you .\nduring a texas a & m recruiting meeting , i learned that we have expanded our\nlist of majors to include computer science . i wondered why math majors were\nnot mentioned , and was told that there was not a business need for math\nmajors . like liberal arts majors , they said math majors were only considered\non a person by person basis . in my opinion , math majors have many of the\nsame skills as finance majors , and can easily adjust to accounting rotations\nas well ( i did last summer , and finance majors in the program are forced to\nevery year . ) i think that enron is missing out on many qualified candidates\nby limiting their recruitment effort .\nat texas a & m the career center asks companies for a list of majors they are\ntargeting , and only allows those majors to sign up for interviews through the\ncareer center . i sent my resume to enron and asked to be included in the\ninterview process on campus . however , many other math majors had not heard\nof enron or the other companies , and assumed that there was no place for a\nmath major at a company like enron . many math majors want to continue their\neducation , become teachers , or work for an actuarial firm . however , many\nare undecided . we are constantly told of the many business possibilities\navailable to math majors by our teachers and staff , but many undergraduates\nare still not sure exactly what math majors can contribute in a business\nenvironment . by not mentioning math majors to the career center ( a very\nsimple and inexpensive step ) , enron is losing out on a very talented pool of\npeople . while it would be nice to get the math majors that knew about enron\nalready , had thoroughly researched all companies and determined that math\nmajors would fit perfectly , and went the extra step to send enron their\nresume outside the career center system , there are many qualified students\nwho do not do this , and opt for other companies who did mention math majors .\ni called a manager in the a & a program to suggest that we consider at least\nmentioning math majors to the career centers . i realize that it may cost\nmore to actively pursue them , talk to teachers , and attend math society\nevents . however , i told her that including them at the career center would\nbe very inexpensive for enron . she reiterated that they saw no business need\nfor math majors , and that if more upper level people began requesting them ,\nit would be considered . i searched for \" mathematics \" on the enron job\nwebsite , and had a surprising number of results . i know that your group\ncould use math majors as well . however , this still may be too small a number\nto merit a focus from the a & a recruiting department . i just wanted to bring\nit to your attention in case it was something that you felt should be changed .\nthanks ,\nheather johnson\nx 53240", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.764+0000", "entityId": 8381, "properties": {"text": "Subject: look forward to hearning from you .\nvince ,\nplease let me know what day might be convenient for you this week for a\nquick lunch if possible .\nthank you .\nmaruti\n- - - - - original message - - - - -\nfrom : more\nto : vince . j . kaminski @ enron . com\ndate : monday , august 28 , 2000 2 : 31 pm\nsubject : re : enron open positions\n> vince ,\n>\n> just fine . i will be there at 11 : 30 am on friday , september 8 , 2000 .\n>\n> see you at the enron building .\n>\n> thank you .\n>\n> maruti\n>\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com\n> to : mmore @ houston . rr . com\n> cc : vince . j . kaminski @ enron . com\n> date : monday , august 28 , 2000 2 : 14 pm\n> subject : re : enron open positions\n>\n>\n>\n> maruti ,\n>\n> does 11 : 30 enron building work for you ?\n>\n> vince\n>\n>\n>\n>\n>\n> \" more \" on 08 / 28 / 2000 01 : 25 : 54 pm\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : enron open positions\n>\n>\n>\n> hello vince ,\n>\n> thank you very much for getting back to me .\n>\n> friday , september 8 is fine with me . please let me know what time would be\n> convenient for you and where we can meet . i can come any time anywhere .\n>\n> sincerely ,\n>\n> maruti\n> 832 - 251 - 7267\n>\n>\n>\n>\n> - - - - - original message - - - - -\n> from : vince j kaminski\n> to : more\n> cc : vince j kaminski\n> date : monday , august 28 , 2000 12 : 12 pm\n> subject : re : enron open positions\n>\n>\n>\n> maruti ,\n>\n> what about september 8 , friday ?\n>\n> vince\n>\n>\n>\n>\n>\n> \" more \" on 08 / 25 / 2000 03 : 27 : 26 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : enron open positions\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.768+0000", "entityId": 8382, "properties": {"text": "Subject: ben zhang : nuts !\ni also heard from joe toussaint that ben ' s boss counter - offered with a bump\nin salary .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by grant masson / hou / ect on 09 / 18 / 2000 09 : 24\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" zhang , ben \" on 09 / 18 / 2000 07 : 58 : 58 am\nto : grant . masson @ enron . com\ncc :\nsubject : thanks\ndear mr . masson :\nthank you very much for offering me an opportunity to work in your group .\nhowever because of family reasons , i have to regrettably inform you that i\nwill not be able to make the move at this time . it has been a great\nexperience working with you on this process , and i greatly appreciate your\nhelp .\ni realized that this would have been a great opportunity for me , and i thank\nyou very much for everything . i hope you will still consider me for a\nposition in the future .\nsincerely ,\nben", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.773+0000", "entityId": 8383, "properties": {"text": "Subject: re : part - time work\ncantekin ,\ni shall call you tomorrow to discuss the details .\nvince\n\" cantekin dincerler \" on 09 / 18 / 2000 02 : 59 : 41 pm\nplease respond to\nto :\ncc :\nsubject : part - time work\nhi vince ,\ni promised to get back to you on the part - time work issue . sorry for the\ndelay , i got back to austin only last week . i talked to ehud about this and\nhe is ok with it . just wanted to let you know .\nbest ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\ncell : ( 512 ) 680 - 5355\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.778+0000", "entityId": 8384, "properties": {"text": "Subject: re : update\njohn ,\ni shall be traveling thu and fri this week and mon and tue next week .\nplease , give me a call tuesday morning and i shall carve out\nan hour from my schedule to discuss the paper . stinson will be gone for three\nweeks so\nwe have to do the work without him .\nalternatively , we can delay the conversation till next week .\nvince\n\" john d . martin \" on 09 / 12 / 2000 04 : 23 : 34 pm\nto : vkamins @ enron . com\ncc :\nsubject : update\nvince ,\nsorry i haven ' t been pressing you on the paper but there ' s always more to\ndo than we have time for . however , i had a phone call from the editor\nencouraging me to get the paper to him by christmas so it could serve as\nthe centerpiece of his energy issue . his comment to me was \" everyone wants\nto know what enron ' s doing \" . so , with that said i ' ll try to put together a\nlist of materials that i have collected and maybe we can have a phone\nconversation to get your ideas on a plan to put the paper together . the\nharvard cases do a nice job of laying out institutional and historical\ndetails but we will need a \" tack \" or theme to begin the writing process .\nby the way , we have managed to delay the spring texas finance festival one\nweek so that it will not coincide with easter ( hope you can now attend ) .\nwe didn ' t have too many problems with the easter weekend but there were\nsome and we would prefer not to use that weekend either .\nhope all is going well for you guys . tell stinson hello for me .\nyour friend ,\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.783+0000", "entityId": 8385, "properties": {"text": "Subject: re : presentation to faculty and students at berkeley\ncharlene ,\ni coordinate my schedule with ashley baxter from your organization , who is\nresponsible\nfor recruiting at berkeley . i have talked to her about this presentation a\nfew times . as you can see ,\nshe is on the distribution list .\nthe presentation is scheduled for the 23 rd of october . we have tried to\ncombine the presentation with\nanother recruiting trip , but we have to many conflicting schedules .\nvince\ncharlene jackson @ enron\n09 / 18 / 2000 02 : 34 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : presentation to faculty and students at berkeley\nvince when is your presentation scheduled ? i can get someone from my group\nbut since the recruiters are all on the road i would need a date so that they\nor i could coordinate with you . thanks\nvince j kaminski @ ect\n09 / 18 / 2000 01 : 26 pm\nto : steven j kean / na / enron @ enron\ncc : charlene jackson / corp / enron @ enron , celeste roberts / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , ashley baxter / corp / enron @ enron\nsubject : presentation to faculty and students at berkeley\nsteve ,\ni am a lead recruiter at the university of california at berkeley for\nenron analyst / associate program .\ni contacted several friends who work at berkeley and received an invitation\nfrom one of them to make a presentation at the weekly faculty seminar\nof the dept . of industrial engineering and operations research .\nthe students and faculty members from the business school will be also\ninvited .\nberkeley in general , and department of industrial engineering and operations\nresearch in\nparticular , are important centers of academic research on electricity markets\n( s . oren works very closely with severin borenstein ) .\nmy presentation will focus on the analyst / associate program . i shall also\nhave\nan opportunity to discuss the power markets in california ( i expect many\nquestions ) before many experts who are very important to shaping\npublic opinion and regulatory agenda .\nplease , let me know who in you group could help me in preparing this\npresentation\nand in presenting enron ' s point of view in a more effective way .\nvince\nfyi . the name of my friend who invited me :\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.787+0000", "entityId": 8386, "properties": {"text": "Subject: re : greetings\ncarlos ,\nvince kaminski , the head of our group is quite interested in meeting you and\ndiscussing ways in which we might be able to help your students . i will be\nout of the office until october 16 th . you can talk to vince before i get\nback or wait to see both of us ; whatever you wish . should you want to\nschedule a time to talk with vince , contact his assistant , shirley crenshaw ,\nat 713 853 5290 .\ni look forward to meeting you in person .\nstinson gibner\np . s .\nmy address at enron is :\np . o . box 1188\nhouston , tx 77251 - 1188\nthe physical address is 1400 smith street .\ncarlos ordonez on 09 / 15 / 2000 03 : 29 : 28 pm\nto : sgibner @ enron . com\ncc :\nsubject : greetings\ndear stinson ,\ni enjoyed our conversation this morning . i would love to meet with your\npeople to discuss collaborations that will be of mutual benefit to me\nand the students and postdocs and your company . i am available on mondays ,\nwednesdays or fridays , at just about any time ( early mornings or afternoons\nbest ) . we ' ll probably need up to a couple of hours .\nplease send me your address to mail you some info .\nbest ,\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.792+0000", "entityId": 8387, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nvince\nthe audience consist of mostly first year graduate students in industrial\nengineering and operations research some doctoral students and faculty . a\nshort introduction about opportunities for quantitative minded people at\nenron would be good . it would also be good if in your talk you can give some\ntechnical examples for people with a good analytic background but no much of\na financial engineering background . many of the first year graduate students\ngo for a masters degree and wonder what they can do with an or masters\ndegree .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : monday , september 18 , 2000 2 : 20 pm\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> thanks for the invitation to speak on october 23 rd .\n>\n> would you like me to split my presentation and devote\n> some time to the enron analyst / associate program ?\n>\n> i plan to make presentation on energy derivatives markets\n> ( development of the markets in the us and europe , valuation\n> challenges , enron ' s role in developing the forward markets for natural gas\n> and electricity ) .\n> i shall send you the bullet points in a few days .\n>\n> vince\n>\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 09 / 18 / 2000 09 : 51 : 29 pm\n>\n> to :\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> vince\n> please send me a title for the talk with your job title etc . and an\n> abstract\n> for your talk . you will have about an hour .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from :\n> to :\n> cc :\n> sent : friday , september 15 , 2000 6 : 04 pm\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> > shmuel ,\n> >\n> > sorry for not getting back to you earlier .\n> > if the 23 rd of october is still open , i can make the presentation on\nthis\n> > day .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 30 / 2000 08 : 18 : 15 am\n> >\n> > to :\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > originally you mentioned october 23 so i reserved that week which is\n> still\n> > open .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to :\n> > cc : ; ;\n> >\n> > sent : wednesday , august 30 , 2000 9 : 03 am\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > >\n> > > shmuel ,\n> > >\n> > > let ' s see if we can either rearrange the seminar speakers\n> > > or change the date of our visit to the campus . ashley baxter , our\n> > > coordinator is very efficient and\n> > > got a faculty room for a presentation on monday morning on the 16 th .\n> > >\n> > > vince\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > \" shmuel oren \" on 08 / 29 / 2000 05 : 37 : 33 pm\n> > >\n> > > to :\n> > > cc :\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > > dear vince . i spoke too soon . apparently the seminar slot on the 16\nwas\n> > > already filled . i will see if i can switch the speaker for that week\nto\n> > the\n> > > following week . in any case we are on for dinner on the 16 .\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > shmuel s . oren , professor\n> > > dept . of industrial engineering\n> > > and operations research\n> > > 4117 etcheverry hall\n> > > university of california\n> > > berkeley , ca 94720 - 1777\n> > > e - mail : oren @ ieor . berkeley . edu\n> > > phone : ( 510 ) 642 - 1836 or 5484\n> > > fax : ( 510 ) 642 - 1403\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > >\n> > > - - - - - original message - - - - -\n> > > from :\n> > > to :\n> > > cc : ;\n> > > sent : tuesday , august 29 , 2000 5 : 01 pm\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > > >\n> > > > shmuel ,\n> > > >\n> > > > the date of our trip to berkeley has been set . it will be october\n> 16 th\n> > > and\n> > > > 17 th\n> > > > ( monday and tuesday ) .\n> > > >\n> > > > i shall be glad to make a presentation on energy derivatives markets\n> > > > ( development of the markets in the us and europe , valuation\n> > difficulties ,\n> > > > enron ' s role\n> > > > in developing the forward markets for natural gas and electricity ) .\n> > > >\n> > > > please , let me know if this topic would be of interest to you . if\n> this\n> > is\n> > > > the\n> > > > case , i shall follow with a title and an abstract .\n> > > >\n> > > > by the way , are you free for dinner on monday ?\n> > > >\n> > > > vince\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > > \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n> > > >\n> > > > to : \" vince j kaminski \"\n> > > > cc :\n> > > > subject : re : hello from vince kaminski at enron\n> > > >\n> > > >\n> > > > great . our seminars are 3 : 30 to 5 pm . if it works for you please send\n> me\n> > a\n> > > > title and abstract .\n> > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > > shmuel s . oren , professor\n> > > > dept . of industrial engineering\n> > > > and operations research\n> > > > 4117 etcheverry hall\n> > > > university of california\n> > > > berkeley , ca 94720 - 1777\n> > > > e - mail : oren @ ieor . berkeley . edu\n> > > > phone : ( 510 ) 642 - 1836 or 5484\n> > > > fax : ( 510 ) 642 - 1403\n> > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > >\n> > > > - - - - - original message - - - - -\n> > > > from : \" vince j kaminski \"\n> > > > to : \" shmuel oren \"\n> > > > cc : \" vince j kaminski \" ; \" ashley baxter \"\n> > > >\n> > > > sent : thursday , august 24 , 2000 9 : 58 am\n> > > > subject : re : hello from vince kaminski at enron\n> > > >\n> > > >\n> > > > >\n> > > > >\n> > > > > shmuel ,\n> > > > >\n> > > > > thanks for the message . i am working with our recruiter , ashley\n> > baxter ,\n> > > > > to finalize the date of the trip . i shall shoot for october the\n> 23 rd\n> > > > > if this date works for the rest of our team .\n> > > > >\n> > > > > vince\n> > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > > > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> > > > >\n> > > > > to : vince j kaminski / hou / ect @ ect\n> > > > > cc :\n> > > > > subject : re : hello from vince kaminski at enron\n> > > > >\n> > > > >\n> > > > >\n> > > > > dear vince .\n> > > > > i sent you a reply earlier this month but i haven ' t heard from you\n> > > about\n> > > > the\n> > > > > date of your visit . our department has a seminar every monday . if\n> you\n> > > can\n> > > > > schedule your visit on a monday i would like to invite you to give\n> a\n> > > > seminar\n> > > > > which will be attended by many of our graduate students and\nfaculty\n> > and\n> > > > will\n> > > > > give you an opportunity to tell them about your program . with\n> > > sufficient\n> > > > > lead - time i can advertise the seminar in the hass school to their\n> > > > financial\n> > > > > engineering students .\n> > > > > shmuel .\n> > > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > > > shmuel s . oren , professor\n> > > > > dept . of industrial engineering\n> > > > > and operations research\n> > > > > 4117 etcheverry hall\n> > > > > university of california\n> > > > > berkeley , ca 94720 - 1777\n> > > > > e - mail : oren @ ieor . berkeley . edu\n> > > > > phone : ( 510 ) 642 - 1836 or 5484\n> > > > > fax : ( 510 ) 642 - 1403\n> > > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > > >\n> > > > > - - - - - original message - - - - -\n> > > > > from :\n> > > > > to : ; ;\n> > > > >\n> > > > > sent : tuesday , august 08 , 2000 10 : 59 am\n> > > > > subject : hello from vince kaminski at enron\n> > > > >\n> > > > >\n> > > > > > shmuel ,\n> > > > > >\n> > > > > > i hope you remember me . i visited you together with aram\n> > sogomonian ,\n> > > a\n> > > > > > good friend of mine , a few years ago . i am currently\nresponsible ,\n> > > among\n> > > > > > other things , for recruiting graduates with finance and / or\n> > technical\n> > > > > > backgrounds at the university of berkeley . i would be glad to\n> give\n> > > you\n> > > > a\n> > > > > > call and talk more about the details of our program . my\n> colleague ,\n> > > > > > ashleybaxter , from the analyst / associate program at enron would\n> > join\n> > > me\n> > > > > > as well .\n> > > > > >\n> > > > > > i am sending you a copy of the brochure about the analyst /\n> > associate\n> > > > > > program .\n> > > > > >\n> > > > > > vince kaminski\n> > > > > >\n> > > > > >\n> > > > > > vincent kaminski\n> > > > > > managing director - research\n> > > > > > enron corp .\n> > > > > > 1400 smith street\n> > > > > > room ebl 962\n> > > > > > houston , tx 77002 - 7361\n> > > > > >\n> > > > > > phone : ( 713 ) 853 3848\n> > > > > > fax : ( 713 ) 646 2503\n> > > > > > e - mail : vkamins @ enron . com\n> > > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.797+0000", "entityId": 8388, "properties": {"text": "Subject: re : hello from vince kaminski at enron\nshmuel ,\nthanks for the invitation to speak on october 23 rd .\nwould you like me to split my presentation and devote\nsome time to the enron analyst / associate program ?\ni plan to make presentation on energy derivatives markets\n( development of the markets in the us and europe , valuation\nchallenges , enron ' s role in developing the forward markets for natural gas\nand electricity ) .\ni shall send you the bullet points in a few days .\nvince\n\" shmuel oren \" on 09 / 18 / 2000 09 : 51 : 29 pm\nto :\ncc :\nsubject : re : hello from vince kaminski at enron\nvince\nplease send me a title for the talk with your job title etc . and an abstract\nfor your talk . you will have about an hour .\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : friday , september 15 , 2000 6 : 04 pm\nsubject : re : hello from vince kaminski at enron\n>\n> shmuel ,\n>\n> sorry for not getting back to you earlier .\n> if the 23 rd of october is still open , i can make the presentation on this\n> day .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 08 / 30 / 2000 08 : 18 : 15 am\n>\n> to :\n> cc :\n> subject : re : hello from vince kaminski at enron\n>\n>\n> originally you mentioned october 23 so i reserved that week which is still\n> open .\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> shmuel s . oren , professor\n> dept . of industrial engineering\n> and operations research\n> 4117 etcheverry hall\n> university of california\n> berkeley , ca 94720 - 1777\n> e - mail : oren @ ieor . berkeley . edu\n> phone : ( 510 ) 642 - 1836 or 5484\n> fax : ( 510 ) 642 - 1403\n> / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n>\n> - - - - - original message - - - - -\n> from :\n> to :\n> cc : ; ;\n>\n> sent : wednesday , august 30 , 2000 9 : 03 am\n> subject : re : hello from vince kaminski at enron\n>\n>\n> >\n> > shmuel ,\n> >\n> > let ' s see if we can either rearrange the seminar speakers\n> > or change the date of our visit to the campus . ashley baxter , our\n> > coordinator is very efficient and\n> > got a faculty room for a presentation on monday morning on the 16 th .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" shmuel oren \" on 08 / 29 / 2000 05 : 37 : 33 pm\n> >\n> > to :\n> > cc :\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > dear vince . i spoke too soon . apparently the seminar slot on the 16 was\n> > already filled . i will see if i can switch the speaker for that week to\n> the\n> > following week . in any case we are on for dinner on the 16 .\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > shmuel s . oren , professor\n> > dept . of industrial engineering\n> > and operations research\n> > 4117 etcheverry hall\n> > university of california\n> > berkeley , ca 94720 - 1777\n> > e - mail : oren @ ieor . berkeley . edu\n> > phone : ( 510 ) 642 - 1836 or 5484\n> > fax : ( 510 ) 642 - 1403\n> > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to :\n> > cc : ;\n> > sent : tuesday , august 29 , 2000 5 : 01 pm\n> > subject : re : hello from vince kaminski at enron\n> >\n> >\n> > >\n> > > shmuel ,\n> > >\n> > > the date of our trip to berkeley has been set . it will be october 16 th\n> > and\n> > > 17 th\n> > > ( monday and tuesday ) .\n> > >\n> > > i shall be glad to make a presentation on energy derivatives markets\n> > > ( development of the markets in the us and europe , valuation\n> difficulties ,\n> > > enron ' s role\n> > > in developing the forward markets for natural gas and electricity ) .\n> > >\n> > > please , let me know if this topic would be of interest to you . if this\n> is\n> > > the\n> > > case , i shall follow with a title and an abstract .\n> > >\n> > > by the way , are you free for dinner on monday ?\n> > >\n> > > vince\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > \" shmuel oren \" on 08 / 24 / 2000 08 : 59 : 38 am\n> > >\n> > > to : \" vince j kaminski \"\n> > > cc :\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > > great . our seminars are 3 : 30 to 5 pm . if it works for you please send\nme\n> a\n> > > title and abstract .\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > shmuel s . oren , professor\n> > > dept . of industrial engineering\n> > > and operations research\n> > > 4117 etcheverry hall\n> > > university of california\n> > > berkeley , ca 94720 - 1777\n> > > e - mail : oren @ ieor . berkeley . edu\n> > > phone : ( 510 ) 642 - 1836 or 5484\n> > > fax : ( 510 ) 642 - 1403\n> > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > >\n> > > - - - - - original message - - - - -\n> > > from : \" vince j kaminski \"\n> > > to : \" shmuel oren \"\n> > > cc : \" vince j kaminski \" ; \" ashley baxter \"\n> > >\n> > > sent : thursday , august 24 , 2000 9 : 58 am\n> > > subject : re : hello from vince kaminski at enron\n> > >\n> > >\n> > > >\n> > > >\n> > > > shmuel ,\n> > > >\n> > > > thanks for the message . i am working with our recruiter , ashley\n> baxter ,\n> > > > to finalize the date of the trip . i shall shoot for october the 23 rd\n> > > > if this date works for the rest of our team .\n> > > >\n> > > > vince\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > > \" shmuel oren \" on 08 / 23 / 2000 11 : 46 : 19 am\n> > > >\n> > > > to : vince j kaminski / hou / ect @ ect\n> > > > cc :\n> > > > subject : re : hello from vince kaminski at enron\n> > > >\n> > > >\n> > > >\n> > > > dear vince .\n> > > > i sent you a reply earlier this month but i haven ' t heard from you\n> > about\n> > > the\n> > > > date of your visit . our department has a seminar every monday . if\nyou\n> > can\n> > > > schedule your visit on a monday i would like to invite you to give a\n> > > seminar\n> > > > which will be attended by many of our graduate students and faculty\n> and\n> > > will\n> > > > give you an opportunity to tell them about your program . with\n> > sufficient\n> > > > lead - time i can advertise the seminar in the hass school to their\n> > > financial\n> > > > engineering students .\n> > > > shmuel .\n> > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > > shmuel s . oren , professor\n> > > > dept . of industrial engineering\n> > > > and operations research\n> > > > 4117 etcheverry hall\n> > > > university of california\n> > > > berkeley , ca 94720 - 1777\n> > > > e - mail : oren @ ieor . berkeley . edu\n> > > > phone : ( 510 ) 642 - 1836 or 5484\n> > > > fax : ( 510 ) 642 - 1403\n> > > > / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /\n> > > >\n> > > > - - - - - original message - - - - -\n> > > > from :\n> > > > to : ; ;\n> > > >\n> > > > sent : tuesday , august 08 , 2000 10 : 59 am\n> > > > subject : hello from vince kaminski at enron\n> > > >\n> > > >\n> > > > > shmuel ,\n> > > > >\n> > > > > i hope you remember me . i visited you together with aram\n> sogomonian ,\n> > a\n> > > > > good friend of mine , a few years ago . i am currently responsible ,\n> > among\n> > > > > other things , for recruiting graduates with finance and / or\n> technical\n> > > > > backgrounds at the university of berkeley . i would be glad to give\n> > you\n> > > a\n> > > > > call and talk more about the details of our program . my colleague ,\n> > > > > ashleybaxter , from the analyst / associate program at enron would\n> join\n> > me\n> > > > > as well .\n> > > > >\n> > > > > i am sending you a copy of the brochure about the analyst /\n> associate\n> > > > > program .\n> > > > >\n> > > > > vince kaminski\n> > > > >\n> > > > >\n> > > > > vincent kaminski\n> > > > > managing director - research\n> > > > > enron corp .\n> > > > > 1400 smith street\n> > > > > room ebl 962\n> > > > > houston , tx 77002 - 7361\n> > > > >\n> > > > > phone : ( 713 ) 853 3848\n> > > > > fax : ( 713 ) 646 2503\n> > > > > e - mail : vkamins @ enron . com\n> > > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.801+0000", "entityId": 8389, "properties": {"text": "Subject: re : dinner this fri . in london ?\nehud ,\ni had to cancel my trip to london . steve leppard will\ntake care of my presentations .\nvince\n\" ehud i . ronn \" on 09 / 18 / 2000 09 : 12 : 47 am\nto : lane hughston , vkamins @ enron . com ,\npnance @ teknecon . com , ds 64 @ cyrus . andrew . cmu . edu , steven . leppard @ enron . com ,\ngeman @ edu . essec . fr , chris . harris @ natpower . com\ncc :\nsubject : dinner this fri . in london ?\ncolleagues ,\ngreetings .\ni ' d like to plan a dinner subsequent to the adjournment of this week ' s eprm\nconference in london fri . 9 / 22 . whereas some of you have already notified\nme of your availability or travel plans , please advise whether you are\navailable for dinner on fri . 9 / 22 or sat . 9 / 23 .\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.806+0000", "entityId": 8390, "properties": {"text": "Subject: re : rabi de\nfyi , i do not send out a written offer package until the verbal offer issues\nare resolved and a final offer is made . so , i ' d like to put the details\nbelow in writing and send out to him for tuesday delivery . i ' m playing\nphone tag with him regarding the other details and will follow up with him\nagain in the morning .\nthanks\ntoni\nfrom : grant masson @ ect 09 / 15 / 2000 11 : 24 am\nto : toni graham / corp / enron @ enron\ncc : norma villarreal / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : rabi de\ntoni :\nwe talked to rabi . he ' s sitting on the fence for some good reasons , and he\nhas to weigh what is fairly comfy job situation for one that starts out at a\nlower level but has more potential . wrt the green , vince verbally offered\nsalary of $ 105 k plus a guarantee that his bonus at year end would be a\nminimum of $ 15 k cash . that ' s in addition to the $ 15 k sign on bonus . vince\nsaid that we would not bother working up a revised offer letter unless and\nuntil rabi came back with a verbal ok . he will ponder the offer ; probably\nfor a few more days and get back with us . he may well call you to discuss\nthe exact details of the benefits . esop , 401 ( k ) contributions , etc .\nregards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.810+0000", "entityId": 8391, "properties": {"text": "Subject: re : li sun : important notice : year - end prc preparation\nstinson ,\ni think it should be kevin kindall .\nvince\nstinson gibner\n09 / 18 / 2000 08 : 08 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : li sun : important notice : year - end prc preparation\nvince ,\nshould i be responsible for li sun ( for prc ) or do you want grant since she\nis primarily working for kevin kindall ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 09 / 18 / 2000\n08 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" the associate and analyst programs \" @ enron . com > on\n09 / 15 / 2000 06 : 13 : 49 pm\nto : \" sgibner @ enron . com \"\ncc :\nsubject : important notice : year - end prc preparation\ngood afternoon supervisors of associates and analysts :\nas you may be aware , the year - end prc for 2000 is quickly approaching and\nyour assistance is needed in ensuring a smooth process . it is imperative\nthat the\nperformance management team obtains the correct reviewing supervisor for the\nassociates and analysts in order to facilitate the prc process . the reviewing\nsupervisor is the person that will provide the associate / analyst their\nyear - end\nindividual performance feedback . you will be considered the reviewing\nsupervisor if you employ the individuals listed below as of october 1 , 2000 .\na comprehensive list of the associates and / or analysts currently in our\ndatabase\nindicates that you are the supervisor of the individuals listed below . please\nexamine the list and reply with \" no changes \" if the data is correct . if\nanalyst in your response . if you will not be the reviewing supervisor as of\noctober lst , please let us know so that we may follow up with the associates\nand\nanalysts .\nin order to meet the performance management team ' s deadline , your reply is\nneeded by friday , september 22 , 2000 . we appreciate your assistance in this\nmatter .\nour records show the following associates and analysts under your prc review .\nshalesh ganjoo , analyst\nli sun , associate\nmartin lin , associate\nthanks in advance for your cooperation . please feel free to call shelly\nbutler @\n713 - 853 - 4584 or jana giovannini @ 713 - 853 - 9233 with any questions you might\nhave .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.815+0000", "entityId": 8392, "properties": {"text": "Subject: re : access to o ; . . .\nplease , grant access as requested .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 09 / 19 / 2000\n03 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaniel muschar @\nenron\n09 / 19 / 2000 03 : 27 pm\nto : juan padron / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : access to o ; . . .\nvince has this under control . he will forward it to the security group .\ndaniel a . muschar\njuan padron\n09 / 19 / 2000 02 : 22 pm\nto : vince j kaminski / hou / ect @ ect\ncc : daniel muschar / aa / corp / enron @ enron\nsubject : access to o ; . . .\nvince , this e - mail is to request access to the o : / research / power\nmeteorlogy / weather temps / txtemps . xls file . . . i was told by tech - support to\ne - mail you with this request and everything would get squared away .\ndaniel , could you please advise on what to do next . thank you . . .\njuan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by juan padron / na / enron on 09 / 19 / 2000 02 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaniel\nmuschar\n09 / 19 / 2000 09 : 14 am\nto : juan padron / na / enron @ enron\ncc :\nsubject : access to o ; . . .\ni called security again and here is what is happening :\nthis request is waiting on the approver . stinson gibner :\nhere is the info on the user we are waiting on .\nstinson ? ? gibner\ncontact info company info\nphone : ( 713 ) 853 - 4748 employee type : enron employee\nemail : sgibner @ enron . com job title : vp research\nlocation : eb 1963 supervisor : kaminski , wincenty j\nfax : ( 713 ) 646 - 2503 contract company : ect resources corp\ncellular : company number : 0413\npager : cost center : 0000107043 click here for others in cost center\ncost center name : na - research group ena\ncity : houston\nbner or vince kaminski are the approvers for this directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.820+0000", "entityId": 8393, "properties": {"text": "Subject: access to o ; . . .\nvince , this e - mail is to request access to the o : / research / power\nmeteorlogy / weather temps / txtemps . xls file . . . i was told by tech - support to\ne - mail you with this request and everything would get squared away .\ndaniel , could you please advise on what to do next . thank you . . .\njuan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by juan padron / na / enron on 09 / 19 / 2000 02 : 17\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndaniel\nmuschar\n09 / 19 / 2000 09 : 14 am\nto : juan padron / na / enron @ enron\ncc :\nsubject : access to o ; . . .\ni called security again and here is what is happening :\nthis request is waiting on the approver . stinson gibner :\nhere is the info on the user we are waiting on .\nstinson ? ? gibner\ncontact info company info\nphone : ( 713 ) 853 - 4748 employee type : enron employee\nemail : sgibner @ enron . com job title : vp research\nlocation : eb 1963 supervisor : kaminski , wincenty j\nfax : ( 713 ) 646 - 2503 contract company : ect resources corp\ncellular : company number : 0413\npager : cost center : 0000107043 click here for others in cost center\ncost center name : na - research group ena\ncity : houston\nbner or vince kaminski are the approvers for this directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.824+0000", "entityId": 8394, "properties": {"text": "Subject: why johan dahl and the mri energy staffing group ?\nvince ,\nit was a pleasure talking with you earlier today . please read the documents i\nhave attached with this email . let ' s talk in the near future to continue our\nconversation . i am very confident that my team and i can be successful\nregarding any staffing need you have . ? i will give sheila in hr a call and\nsee if we can work out a contract . please visit our web site for up - to - date\ninformation at http : / / www . mrportland . com\nthank you for your time and have a nice day .\nsincerely ,\njohan dahl\ndirector energy staffing group\nphone : 1 - 503 - 287 - 8701 ext . 1153\nemail : jdahl @ mrportland . com\n- jcd - client broch - energy # 2 . doc\n- charter of ethical practice . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.830+0000", "entityId": 8395, "properties": {"text": "Subject: re : part - time work\nvince ,\nzimin and i talked briefly about the part - time work this morning . to recap ;\ni am willing to work 20 hours a week , however , i expressed my concern about\ncommuting every week . i asked if commuting once every two weeks ( and work\nout of austin every other week ) would be acceptable . as to the term of the\nwork , i suggested a 3 - mo period ( i have yet not talked to international\noffice which arranges work authorization using curricular practical training\nof which i have used up 9 months already ) , i might run into problems if i\nask for more . i also mentioned that i would do my best to accomodate your\npreferences . we did not discuss any other details .\ni shall be awaiting for your response on this matter .\nbest ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\ncell : ( 512 ) 680 - 5355\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\n> sent : monday , september 18 , 2000 5 : 50 pm\n> to : cantekin @ mail . utexas . edu\n> cc : vince . j . kaminski @ enron . com\n> subject : re : part - time work\n>\n>\n>\n> cantekin ,\n>\n> i shall call you tomorrow to discuss the details .\n>\n> vince\n>\n>\n>\n>\n>\n> \" cantekin dincerler \" on 09 / 18 / 2000\n> 02 : 59 : 41 pm\n>\n> please respond to\n>\n> to :\n> cc :\n> subject : part - time work\n>\n>\n> hi vince ,\n>\n> i promised to get back to you on the part - time work issue .\n> sorry for the\n> delay , i got back to austin only last week . i talked to ehud\n> about this and\n> he is ok with it . just wanted to let you know .\n>\n> best ,\n>\n> - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n> cantekin dincerler\n>\n> doctoral candidate\n> the university of texas at austin\n> graduate school of business\n> department of finance\n> office : ( 512 ) 471 - 1676\n> fax : ( 512 ) 471 - 5073\n> home : ( 512 ) 472 - 5356\n> cell : ( 512 ) 680 - 5355\n> http : / / uts . cc . utexas . edu / ~ cantekin\n> - - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.834+0000", "entityId": 8396, "properties": {"text": "Subject: re : part - time work\nzimin ,\ncan you call cantekin to discuss the details ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 09 / 19 / 2000\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n09 / 18 / 2000 05 : 50 pm\nto :\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : part - time work\ncantekin ,\ni shall call you tomorrow to discuss the details .\nvince\n\" cantekin dincerler \" on 09 / 18 / 2000 02 : 59 : 41 pm\nplease respond to\nto :\ncc :\nsubject : part - time work\nhi vince ,\ni promised to get back to you on the part - time work issue . sorry for the\ndelay , i got back to austin only last week . i talked to ehud about this and\nhe is ok with it . just wanted to let you know .\nbest ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\ncell : ( 512 ) 680 - 5355\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.839+0000", "entityId": 8397, "properties": {"text": "Subject: informal interview with the enron research group\ndr . neale :\nyour resume was forwarded to vince kaminski and the research group\nwith enron corp .\nthey would like to conduct an informal interview with you at your convenience .\non one of the following days :\nwednesday , sept 27\nfriday , sept 29\nmonday , oct 2\ntuesday , oct 3\nthursday , oct 12\nfriday , oct 13\nplease let me know what day and the time frame you are available .\nthe interviewers would be :\nvince kaminski managing director and head of research\nstinson gibner vice president . research\ngrant masson vice president , research\nvasant shanbhogue vice president , research\nzimin lu director , research\npaulo issler manager , research\nwe look forward to hearing from you .\nsincerest regards ,\nshirley crenshaw\nadministrative coordinator\nenron research department", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.843+0000", "entityId": 8398, "properties": {"text": "Subject: here ' s a list of materials\nvince ,\nhere is my list of collected materials . i would like to get copies of your\npapers on risk management as well ( can you send me cites ? )\nlook forward to talking with you next week .\nyour friend ,\njohn\n- enron corporation paper . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.848+0000", "entityId": 8399, "properties": {"text": "Subject: re : meeting\nsorry for the rescheduling . shalesh is unable to make it until late this\nafternoon . since what we have is informal and not urgent , perhaps we can\ncatch you for a few minutes just sometime late today or tomorrow before you\nleave . otherwise , it can wait until you return .\nthanks ,\nmartin\nvince j kaminski\n09 / 19 / 2000 08 : 36 am\nto : martin lin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : meeting\nmartin ,\nlet ' s try bet 1 and 2 : 30 .\nvince\nfrom : martin lin on 09 / 19 / 2000 08 : 30 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : meeting\nshalesh and i wanted to meet with you briefly , but this morning ' s timing\nisn ' t working out . are you available this afternoon , sometime after 5 pm ?\nthanks ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.852+0000", "entityId": 8400, "properties": {"text": "Subject: the mathworks visit on 10 / 18\nshirley ,\nplease , confirm and put on my calendar .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 09 / 20 / 2000\n01 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nscott wakefield on 09 / 20 / 2000 11 : 58 : 02 am\nto : vkamins @ enron . com\ncc : emcgoldrick @ mathworks . com , rbaker @ mathworks . com\nsubject : the mathworks visit on 10 / 18\nhello vince :\nmyself , eugene mcgoldrick , and rick baker are looking forward to meet with\nyou and your group on 10 / 18 at 2 : 00 pm . eugene is the financial products\nprogram manager and rick is a financial engineer and author of several of\ntoolboxes .\nwe want to understand the needs of your group to better demonstrate the\nproper tools . do you or members of your group have specific applications\nthat we can address ? please email me those items and i will coordinate the\npresentation with our group .\nwe would like to demonstrate how our tools can be used to rapidly develop\napplications , be integrated with databases and other applications ( olf ,\nodbc databases , excel , vb , etc . ) and then deploy those applications at no\ncost to your traders and analysts .\ni look forward to meeting you , please do not hesitate to contact me .\nthanks\nscott\nscott wakefield\nthe mathworks , inc .\nphone : ( 508 ) 647 - 7282\ne - mail : swakefield @ mathworks . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.857+0000", "entityId": 8401, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 pcl 4 f\norder for : maureen raymond\n1 x ( option : 128 mb upgrade for deskpro en 6600 $ 144 )\nenron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.862+0000", "entityId": 8402, "properties": {"text": "Subject: co - integration\nzimin ,\nandrea reed asked for our help in looking for end - users of steel which might\nbe used to take a commodity hedge position . she will work on identifying\npotential equities or indices which might be used , and then we will analyze\nthem for correlation or co - integration with steel prices . andrea should be\ncontacting you next week regarding the project . hector has done\nco - integration analysis in the past and has the tools to do this project .\nthanks ,\nstinson\nanrdrea : we will also need you to identify which steel prices / indices\nshould be used in this analysis .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.867+0000", "entityId": 8403, "properties": {"text": "Subject: sacramento weather station\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 09 / 20 / 2000\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nscott tholan @ enron\n09 / 19 / 2000 07 : 57 pm\nto : mark tawney / hou / ect @ ect , gary taylor / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc : chris clark / na / enron @ enron\nsubject : sacramento weather station\nhey guys ,\nwe ' re talking to a contractor ( s ) that can build us a weather station\n( hopefully very quickly ) for placement in sacramento , california . for a\nvariety of legal , contractor , and operational reasons , i need to confirm some\nof the following requirements as soon as possible so we can proceed :\na ) you need rainfall , snowfall , and temperature measurement from one ,\nhigh - accuracy commercially available weather station .\nb ) you need a daily feed of this data to enron ' s weather desk : does this\nmean one data dump at a set time per day ? alternatively , will you need to\ncheck the data real - time , perhaps at varying and multiple times during the\nday ?\nc ) we will be installing this station near sacramento , california : we will\nneed to know exactly what areas in / near sacramento are suitable for the site\nof the weather station . ( what again was the name of the town that you\nmentioned mark ? ) in the interest of time , i recommend that your weather\nexpert accompany our landman to select the site , which will allow our landman\nto more quickly lease and install the station .\nd ) you desire to have some independent security measures to deter or detect\ntampering . i suggest given the very short time fuse , that we first install\nthe station and then develop security measures .\ne ) we will feed the data directly to the enron weather desk . will any other\nparties require real - time access to this data ?\nplease forward responses directly to : chris clark / na / enron and myself .\nthanks , scott", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.875+0000", "entityId": 8404, "properties": {"text": "Subject: re : the garp 2001 convention\nandreas ,\ni shall be glad to serve as the chairman .\ni am currently located in enron n . a .\nit stands for enron north america . in enron the orgchart changes every\n3 months .\nvince\n\" andreas simou \" on 09 / 20 / 2000 06 : 38 : 09 am\nto :\ncc :\nsubject : the garp 2001 convention\ndear vince\n?\ni would like to invite you to chair the stream on energy and corporate risk\nmanagement at the garp convention . is this something that would be of\ninterest to you ?\n?\nalso , can i please confirm , because i am having a few it problems at\npresent , that the following title is correct for you :\nvince kaminski , managing director , research , enron corp .\ni look forward to your response in due course .\n?\nkind regards\n?\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.881+0000", "entityId": 8405, "properties": {"text": "Subject: re : informal interview with the enron research group\nfyi :\ni have arranged the following interview schedule and marked your calendars .\n( except paulo - i do not have access to his calendar ) . i have reserved eb\n1938 . a copy of his resume will be forthcoming .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 20 / 2000\n03 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n09 / 20 / 2000 03 : 37 pm\nto : \" nelson neale \" @ enron\ncc :\nsubject : re : informal interview with the enron research group\nmr . neale :\nthank you for responding so quickly . i have scheduled the following date and\ntimes . please let me know if they are convenient for you .\nfriday , september 29 th :\nvince kaminski 8 : 30 am\ngrant masson 9 : 00 am\nvasant shanbhogue 9 : 30 am\nzimin lu 10 : 00 am\npaulo issler 10 : 30 am\nstinson gibner will be out of the office for 3 weeks beginning monday , the\n25 th so he will be unable to interview you .\nwe should be through between 11 : 00 - 11 : 30 am . if you have any questions\nplease feel free to call me .\nwhen you come into the enron bldg . go to the security console and ask\nfor me . we are located on the 19 th floor and i will meet you at the elevator\nlobby on the 19 th floor .\nlook forward to hearing from you soon .\nregards ,\nshirley crenshaw\n713 - 853 - 5290\n\" nelson neale \" on 09 / 20 / 2000 03 : 18 : 45 pm\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : informal interview with the enron research group\nms . crenshaw :\nnice to hear from you ! i will be available on the following dates :\nfriday september 29 ( am or pm )\nmonday october 2 ( am )\nthursday october 12 ( am or pm )\nfriday october 13 ( am or pm )\nlet me know which of the above dates and times works best for the group . i\nlook forward to hearing from you .\nregards ,\nnelson neale\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nc . nelson neale , ph . d .\n2990 bissonnet , # 9106\nhouston , tx 77005\nph : 713 - 303 - 5973\nneneale @ hotmail . com\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.886+0000", "entityId": 8406, "properties": {"text": "Subject: re : spring 2001 conference participation by jeffrey k . skilling\nthanks for the note and i enjoyed seeing you the other night . we are working\nwith jeff ' s assistant on the date . it looks like it may be possible but\nthere are a few conflicts to dodge . we will be in touch soon . thanks\n\" ehud i . ronn \" on 09 / 20 / 2000 11 : 12 : 46 am\nto : rcausey @ enron . com , vkamins @ enron . com\ncc :\nsubject : spring 2001 conference participation by jeffrey k . skilling\nrick / vince ,\ngood morning .\nin my 9 / 14 e - mail , i advised you of the practitioner - industry cefer ( center\nfor energy finance education and research ) conference we are planning for\nspring 2001 . as you know , we would like to invite jeff skilling to be the\nkeynote speaker at the thur . evening dinner . the following day ' s four\ntopics consist of risk management , deregulation , real options , and\ninternational / globalization . the majority of invitees would be\n( predominantly u . s . - based ) energy - industry practitioners , as well as\nseveral academics .\ngiven lead time issues in these matters , we have reserved hotel rooms in\naustin for feb . 22 , 2001 . could i ask you to ascertain jeff skilling ' s\navailability for that evening ?\nthanks ,\nehud ronn\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.891+0000", "entityId": 8407, "properties": {"text": "Subject: re : university of texas conference on energy finance , february 2001\nsherri ,\nthanks . yes , it ' s february the 22 nd .\nvince\nenron north america corp .\nfrom : jeff skilling @ enron 09 / 20 / 2000 12 : 49 pm\nsent by : sherri sera @ enron\nto : vince j kaminski / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , richard causey / corp / enron @ enron\nsubject : re : university of texas conference on energy finance , february 2001\nvince , i am checking the date on jeff ' s calendar ( i ' m assuming the date is\nfebruary 22 ? ) . i am holding that date whole week for a trip abroad , but i\nthink we have some flexibility on that and am checking it out . i ' ll be back\nin touch as soon as i ' ve resolved that . srs\nvince j kaminski @ ect\n09 / 20 / 2000 11 : 41 am\nto : jeff skilling / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , richard causey / corp / enron @ enron\nsubject : university of texas conference on energy finance , february 2001\njeff ,\nour friends at the university of texas are planning a conference on energy\neconomics and finance in february of next year . they would like very much to\nhave\nyou as a keynote speaker .\ngiven our good , long - term relationship with ut , i would recommend\nthat you speak at this conference . i talked to prof . ehud ronn\na few times about the program and i think that this will be\nan excellent forum to present enron ' s accomplishments and\nagenda for the future .\ni am sure that rick causey will join me in making the same recommendation .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.895+0000", "entityId": 8408, "properties": {"text": "Subject: re : university of texas conference on energy finance , february 2001\nvince , i am checking the date on jeff ' s calendar ( i ' m assuming the date is\nfebruary 22 ? ) . i am holding that date whole week for a trip abroad , but i\nthink we have some flexibility on that and am checking it out . i ' ll be back\nin touch as soon as i ' ve resolved that . srs\nvince j kaminski @ ect\n09 / 20 / 2000 11 : 41 am\nto : jeff skilling / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , richard causey / corp / enron @ enron\nsubject : university of texas conference on energy finance , february 2001\njeff ,\nour friends at the university of texas are planning a conference on energy\neconomics and finance in february of next year . they would like very much to\nhave\nyou as a keynote speaker .\ngiven our good , long - term relationship with ut , i would recommend\nthat you speak at this conference . i talked to prof . ehud ronn\na few times about the program and i think that this will be\nan excellent forum to present enron ' s accomplishments and\nagenda for the future .\ni am sure that rick causey will join me in making the same recommendation .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.902+0000", "entityId": 8409, "properties": {"text": "Subject: presentation to faculty and students at berkeley\nvince - attached are the documents that steve references below . we ' ll keep\nyou on the distribution list for further documents as they ' re created .\nelizabeth\n- - - - - forwarded by elizabeth linnell / na / enron on 09 / 20 / 2000 09 : 40 am - - - - -\nsteven j kean\nsent by : steven j kean\n09 / 20 / 2000 09 : 21 am\nto : maureen mcvicker / na / enron @ enron , james d steffes / hou / ees @ ees , elizabeth\nlinnell / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : presentation to faculty and students at berkeley\nmaureen - - please send vince my california testimony and the talking point\npresentation for jeff skilling at the national press club .\neliz - - keep vince on the distribution list for the documents we are\ngenerating now to repond to the california situation .\n- - - - - forwarded by steven j kean / na / enron on 09 / 20 / 2000 09 : 18 am - - - - -\nvince j kaminski @ ect\n09 / 18 / 2000 01 : 26 pm\nto : steven j kean / na / enron @ enron\ncc : charlene jackson / corp / enron @ enron , celeste roberts / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , ashley baxter / corp / enron @ enron\nsubject : presentation to faculty and students at berkeley\nsteve ,\ni am a lead recruiter at the university of california at berkeley for\nenron analyst / associate program .\ni contacted several friends who work at berkeley and received an invitation\nfrom one of them to make a presentation at the weekly faculty seminar\nof the dept . of industrial engineering and operations research .\nthe students and faculty members from the business school will be also\ninvited .\nberkeley in general , and department of industrial engineering and operations\nresearch in\nparticular , are important centers of academic research on electricity markets\n( s . oren works very closely with severin borenstein ) .\nmy presentation will focus on the analyst / associate program . i shall also\nhave\nan opportunity to discuss the power markets in california ( i expect many\nquestions ) before many experts who are very important to shaping\npublic opinion and regulatory agenda .\nplease , let me know who in you group could help me in preparing this\npresentation\nand in presenting enron ' s point of view in a more effective way .\nvince\nfyi . the name of my friend who invited me :\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.906+0000", "entityId": 8410, "properties": {"text": "Subject: presentation to faculty and students at berkeley\nvince - -\nplease feel free to also call jeff dasovich ( 415 - 782 - 7822 ) in our san\nfransisco office . he has been very involved in the california market\ndiscussions and presented before ferc during their field hearings . he knows\nthe profs you are meeting with and has some great insights into our positions .\njeff also attended berkeley as an undergrad and is now attending their\nb - school in the evenings .\nthanks .\njim steffes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james d steffes / hou / ees on 09 / 20 / 2000\n09 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : steven j kean @ enron on 09 / 20 / 2000 09 : 21 am\nsent by : steven j kean @ enron\nto : maureen mcvicker / na / enron @ enron , james d steffes / hou / ees @ ees , elizabeth\nlinnell / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : presentation to faculty and students at berkeley\nmaureen - - please send vince my california testimony and the talking point\npresentation for jeff skilling at the national press club .\neliz - - keep vince on the distribution list for the documents we are\ngenerating now to repond to the california situation .\n- - - - - forwarded by steven j kean / na / enron on 09 / 20 / 2000 09 : 18 am - - - - -\nvince j kaminski @ ect\n09 / 18 / 2000 01 : 26 pm\nto : steven j kean / na / enron @ enron\ncc : charlene jackson / corp / enron @ enron , celeste roberts / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , ashley baxter / corp / enron @ enron\nsubject : presentation to faculty and students at berkeley\nsteve ,\ni am a lead recruiter at the university of california at berkeley for\nenron analyst / associate program .\ni contacted several friends who work at berkeley and received an invitation\nfrom one of them to make a presentation at the weekly faculty seminar\nof the dept . of industrial engineering and operations research .\nthe students and faculty members from the business school will be also\ninvited .\nberkeley in general , and department of industrial engineering and operations\nresearch in\nparticular , are important centers of academic research on electricity markets\n( s . oren works very closely with severin borenstein ) .\nmy presentation will focus on the analyst / associate program . i shall also\nhave\nan opportunity to discuss the power markets in california ( i expect many\nquestions ) before many experts who are very important to shaping\npublic opinion and regulatory agenda .\nplease , let me know who in you group could help me in preparing this\npresentation\nand in presenting enron ' s point of view in a more effective way .\nvince\nfyi . the name of my friend who invited me :\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.911+0000", "entityId": 8411, "properties": {"text": "Subject: university of texas conference on energy finance , february 2001\njeff ,\nour friends at the university of texas are planning a conference on energy\neconomics and finance in february of next year . they would like very much to\nhave\nyou as a keynote speaker .\ngiven our good , long - term relationship with ut , i would recommend\nthat you speak at this conference . i talked to prof . ehud ronn\na few times about the program and i think that this will be\nan excellent forum to present enron ' s accomplishments and\nagenda for the future .\ni am sure that rick causey will join me in making the same recommendation .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.915+0000", "entityId": 8412, "properties": {"text": "Subject: re : spring 2001 conference participation by jeffrey k . skilling\nehud ,\ni shall send a message to jeff ' s secretary today .\nvince\n\" ehud i . ronn \" on 09 / 20 / 2000 11 : 12 : 46 am\nto : rcausey @ enron . com , vkamins @ enron . com\ncc :\nsubject : spring 2001 conference participation by jeffrey k . skilling\nrick / vince ,\ngood morning .\nin my 9 / 14 e - mail , i advised you of the practitioner - industry cefer ( center\nfor energy finance education and research ) conference we are planning for\nspring 2001 . as you know , we would like to invite jeff skilling to be the\nkeynote speaker at the thur . evening dinner . the following day ' s four\ntopics consist of risk management , deregulation , real options , and\ninternational / globalization . the majority of invitees would be\n( predominantly u . s . - based ) energy - industry practitioners , as well as\nseveral academics .\ngiven lead time issues in these matters , we have reserved hotel rooms in\naustin for feb . 22 , 2001 . could i ask you to ascertain jeff skilling ' s\navailability for that evening ?\nthanks ,\nehud ronn\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.920+0000", "entityId": 8413, "properties": {"text": "Subject: spring 2001 conference participation by jeffrey k . skilling\nrick / vince ,\ngood morning .\nin my 9 / 14 e - mail , i advised you of the practitioner - industry cefer ( center\nfor energy finance education and research ) conference we are planning for\nspring 2001 . as you know , we would like to invite jeff skilling to be the\nkeynote speaker at the thur . evening dinner . the following day ' s four\ntopics consist of risk management , deregulation , real options , and\ninternational / globalization . the majority of invitees would be\n( predominantly u . s . - based ) energy - industry practitioners , as well as\nseveral academics .\ngiven lead time issues in these matters , we have reserved hotel rooms in\naustin for feb . 22 , 2001 . could i ask you to ascertain jeff skilling ' s\navailability for that evening ?\nthanks ,\nehud ronn\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.925+0000", "entityId": 8414, "properties": {"text": "Subject: \" enron day \" to be declared in spearman , texas\nvince , f . y . i\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 09 / 20 / 2000\n02 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n09 / 20 / 2000 02 : 28 pm\nto : cindy olson / corp / enron @ enron\ncc :\nsubject : \" enron day \" to be declared in spearman , texas\ncindy ,\nyou may or may not remember that i sent a short note to you last may\noutlining a fundraising effort for the hansford county library in spearman ,\ntexas . the community was challenged to raise $ 20 , 000 which i offered to\nmatch 2 to 1 . with enron foundations employee match , this grows to a total\nmathching ratio of $ 4 for every $ 1 raised by the community . ( of course ,\nbecause of the $ 15 , 000 / year limit , i have to spread my gifts over several\nyears in order to get the total amount matched by enron . )\nsherry benton , the librarian in spearman just called and gave me the great\nnews that the $ 20 , 000 in community donations has been achieved . in fact , i\nexpect that the total community number will come to almost $ 25 , 000 once all\nof the donations are received .\nin order to recognize our part in all this , the mayor of the town is planning\nto declare october 17 th as \" stinson gibner and enron day \" in spearman , and\nthey would like to have some public ceremony to bestow this recognition .\nthere will be coverage by the local radio station and newspaper and ,\npossibly , by the amarillo newspaper as well .\nthey are asking if a representative from enron ( other than myself ) would be\ninterested in coming to spearman for this event . please let me know if you\nor anyone else would be interested in doing this . spearman is about a 90\nminute drive north from the airport in amarillo , and it is possible to get\nthere and back to houston on the same day .\nthanks ,\nstinson gibner\nx 34748\np . s . is there any possibility of getting a one time raise on the $ 15 , 000 / year\nmatching cap so that i can have $ 40 , 000 matched in just two years instead of\nthree ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 09 / 20 / 2000\n02 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n05 / 05 / 2000 11 : 47 am\nto : cindy olson / corp / enron @ enron\ncc :\nsubject : thanks\ncindy ,\ni just received notification of enron ' s match of my $ 8000 donation to the\nhansford county library in spearman , texas . ( all old pipeline hands know\nspearman because both northern natural and transwestern pipelines run near by\nthe city . )\nyou may be interested to know what i am trying to accomplish there . the\nlibrary is one of the few independent public libraries in the state of texas\nas it is owned neither by the county nor city . it ' s budget is met through a\ncombination of city , county , and private contributions . a big part of their\nincome comes from the \" thrift shop , \" spearman ' s version of the blue bird\ncircle . in order to help the library continue to provide quality services\nto the community ( our library in spearman , population 3000 , is by all\naccounts much better than the one in nearby perryton , population 15000 ) , i\nam trying to help the library establish an endowment fund . we have set a\ngoal of raising $ 100 , 000 over the next 3 years . with enron ' s matching , i am\nplanning to provide about $ 80 , 000 of that amount with the other $ 20 , 000\ncoming from contributions from others in the local community .\ni am also investigating if the library can get any type of matching grant\nfrom other foundations , but it looks like most prefer to fund specific\nprojects rather than put funds towards endowments . let me know if you have\nany suggestions for us .\nthanks ,\nstinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.929+0000", "entityId": 8415, "properties": {"text": "Subject: re :\nthanks vince . i ' ll make the reservation , then send shirley the details to\nissue an invite to us all .\nsteve\nvince j kaminski\n09 / 20 / 2000 05 : 10 pm\nto : steven leppard / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re :\nsteve ,\ni shall talk to john sherriff about such issues . my intention\nis to vest you with maximum decision making powers . it makes most sense to\nme to make decisions where the information resides .\nplease , invite anjam or alternatively make reservations for dinner and\nlet shirley know . shirley can send an invitation to everybody in the group\non my behalf . it would be really bad to exclude anjam from the dinner .\nit\nvince\nsteven leppard\n09 / 20 / 2000 10 : 30 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re :\nthanks vince .\ndinner on sunday ok all round . do you want anjam along too ? i can ' t really\nask him , given our current relationship .\none other thing , have you had thoughts on reporting lines , who signs\nexpenses , etc . etc . , or are these issues to be resolved when you come over ?\ncheers ,\nsteve\nvince j kaminski\n09 / 20 / 2000 04 : 14 pm\nto : steven leppard / lon / ect @ ect\ncc :\nsubject :\nsteve ,\nsteve , this is the spreadsheet .\nalso , please , let shirley know if the dinner on sun is ok .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.934+0000", "entityId": 8416, "properties": {"text": "Subject: re :\nthanks vince .\ndinner on sunday ok all round . do you want anjam along too ? i can ' t really\nask him , given our current relationship .\none other thing , have you had thoughts on reporting lines , who signs\nexpenses , etc . etc . , or are these issues to be resolved when you come over ?\ncheers ,\nsteve\nvince j kaminski\n09 / 20 / 2000 04 : 14 pm\nto : steven leppard / lon / ect @ ect\ncc :\nsubject :\nsteve ,\nsteve , this is the spreadsheet .\nalso , please , let shirley know if the dinner on sun is ok .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.939+0000", "entityId": 8417, "properties": {"text": "Subject: vacation time available\nhere is a list of vacation time that i have at available for the ( research )\nweather team .\nmike roberts - 240 hours\njose marquez - 54 hours\nwilliam smith - 117 hours\nelena chilkina - 0 hours\nkevin moore - 53 hours\ncharlie weldon - 20 hours\njoe hrgovcic - 136 hours\nplease if you feel you are due more hours of vacation time ,\nplease inform me whereby , i can get your hours corrected .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.943+0000", "entityId": 8418, "properties": {"text": "Subject: powerisk 2000 - cocktail parties\nfor your information\nthanks\niona\n- - - - - - - - - - - - - - - - - - - - - - forwarded by iona maclean / lon / ect on 21 / 09 / 2000 15 : 00\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : tunuja tulsiani\n21 / 09 / 2000 14 : 50\nto :\ncc : rosemary fitzgerald , simon turner\nsubject : powerisk 2000 - cocktail parties\nimportant announcement\ntwo key social functions at powerisk 2000 *\nyour personal invitation\npowerisk 2000 has teamed up with three key industries partners to\nbring two important networking functions at this year ' s powerisk\n2000 . a full invitation has been sent to you in the post but please\nprint out and bring the two attached invitations with you in case\nyour postal copy does not reach you for any reason .\nthe first cocktail party will be held on tuesday 3 rd october\nbetween 6 pm and 9 pm and will be hosted by virtual credit services\nand true quote . com . this welcome cocktail party is open to all\ndelegates and speakers whether or not you are attending the\ne - commerce day on the tuesday . running until 9 pm , it should\nallow you time to attend even if you have a late evening flight .\nthe second cocktail party will be held on wednesday 4 th october\nat the palais brongniart , the home of parisbourse who will be\nhosting the function . transport to and from this event will be\nprovided for all delegates .\nthere is no need to reply * we look forward to seeing you at\nboth events .\nregards\nrosemary fitzgerald\npowerisk 2000 director", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.947+0000", "entityId": 8419, "properties": {"text": "Subject: re : follow on conversation w / aa\namy - -\nsteve kean and i finally got to discuss this the other day and we decided\nthat this effort would likely be too time consuming and costly , particularly\nfor certain key employees , to justify doing it . it obviously is an\ninteresting topic but one that would require alot of attention ( and possibly\nmoney ) to participate in fully . thanks for your attention to this .\nto : richard causey / corp / enron @ enron\ncc :\nsubject : follow on conversation w / aa\nrick - resending previous inquiry . waiting reply . thanks .\namy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amy oberg / hou / ees on 08 / 23 / 2000 08 : 14 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : amy oberg 08 / 21 / 2000 08 : 37 am\nphone no : 713 - 345 - 7381\nto : richard causey / corp / enron @ enron\ncc :\nsubject : follow on conversation w / aa\nrick :\ni ' m assuming you had conference call w / aa on friday re : the new value\nresearch lab effort - is that correct ? we are ready to regroup this week and\nhear the results of your conversation . pls advise as to your feedback and\navailability .\nthanks .\namy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.952+0000", "entityId": 8420, "properties": {"text": "Subject: summer associate offers for full - time associate positions\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 09 / 21 / 2000\n01 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nceleste roberts\n09 / 20 / 2000 05 : 30 pm\nto : stephen r horn / hou / ect @ ect , tony mataya / hou / ees @ ees , kevin\nkuykendall / hou / ect @ ect , stan dowell / hou / ees @ ees , patrick hickey / enron\ncommunications @ enron communications , scott porter / hou / ees @ ees , stinson\ngibner / hou / ect @ ect , heather kroll / hou / ect @ ect , mark s palmer / enron\ncommunications @ enron communications , ermes\nmelinchon / enron _ development @ enron _ development , rick\nsierra / enron _ development @ enron _ development , steve pearlman / enron\ncommunications @ enron communications , tammy l mulrooney / hou / ect @ ect , gustavo\njunqueira / hou / ect @ ect , catherine simoes / hou / ees @ ees , stephen\nthome / hou / ect @ ect , james w lewis / hou / ees @ ees , antonio jenkins\nlara / corp / enron @ enron , doug rotenberg / enron _ development @ enron _ development ,\nsamer takriti / enron communications @ enron communications , william\nkeeney / hou / ect @ ect , david j botchlett / hou / ect @ ect , larry ciscon / enron\ncommunications @ enron communications , jeanette reese / hou / ees @ ees , lance\nmccarthy / epsc / hou / ect @ ect , rudi zipter / hou / ect @ ect , thomas\nsuffield / na / enron @ enron , mark meier / corp / enron @ enron , bill w\nbrown / hou / ect @ ect , stinson gibner / hou / ect @ ect , grant masson / hou / ect @ ect\ncc :\nsubject : summer associate offers for full - time associate positions\nlisted below are the summer associates who will receive offers to join us\nfull - time . offers were made verbally on friday , september 15 and the offer\nletters were mailed out on tuesday , september 19 .\nthe associate offers by school are as follows :\nrice\nandrew adams\nshruti gandhi - gupta\nkenneth jett\njason sokolov\ndarren sanders\nnyu\nlucia barrantes\nchicago\nterrell benke\ntexas a & m\nmike seely\nucla\nvladimir blinov\n* * irina liskovets - visa issues , working with london to resolve and see if\nplacement there is possible\nmichigan\nluis bravo\nsherman \" alex \" james\nut\ncantekin dincerler\nsteven luong\nvanderbilt\ncharles donovan\nchung taek oh\nmaxim phillippov\ngeorgetown\nandrea gonzalez\ncornell\nmiriam kaggwa\nmit sloan\njosef lieskovsky\nyale\nbraden mcelroy\nstanford\nguiseppe paleologo\ndarden\nning pan\nthunderbird\nsteve west\nlsu\ndatren williams\nhouston\nsevil yaman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.957+0000", "entityId": 8421, "properties": {"text": "Subject: re : enron / stanford program\nstinson ,\ngreat ! i ' m looking forward to a very productive collaboration .\ni ' ll immediately start doing giuseppe ' s papers , for him to work\non the enron / stanford program .\nmany thanks to you and vince , and i hope to see you soon at stanford\nor enron . if i remember correctly , vince is visiting stanford in\noctober .\nbest regards ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i spoke with paul racicot , head of trading for ebs , north america this\n> morning . he said that he is happy to send the $ 100 , 000 for your program\n> from his budget . i have forwarded to him the draft letter to accompany\n> the funds and will try to follow up to make sure that the money is sent\n> promptly .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.961+0000", "entityId": 8422, "properties": {"text": "Subject: re : enron / stanford program\nnick ,\ni spoke with paul racicot , head of trading for ebs , north america this\nmorning . he said that he is happy to send the $ 100 , 000 for your program\nfrom his budget . i have forwarded to him the draft letter to accompany the\nfunds and will try to follow up to make sure that the money is sent promptly .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.967+0000", "entityId": 8423, "properties": {"text": "Subject: enron / stanford program\npaul ,\nthanks for putting in place the funding for our stanford relationship with\nnick bambos .\nbelow is a draft letter which should accompany the funds sent to stanford .\nby designating the funds as a gift to this specific research area , all the\nfunds can be used to support bandwidth and networking research without any\noverhead charge from the university . if you need any clarification or\nassistance , please contact vince , me , or nick bambos directly . nick ' s\nemail is bambos @ stanford . edu .\n- - stinson\nx 34748\ndraft of letter to be sent from enron to stanford .\nprof . nicholas bambos\n420 terman engineering center\nmanagement science & eng . dept . and\nelectrical engineering department\nstanford university\nstanford , ca 94305\ndear nick ,\nwe are happy to provide gift funds of $ 100 , 000 per year , over\nthree years , to support a program in your research group , related\nto bandwidth markets / trading and networking technologies .\nenron would like to support research activities in the above\nmentioned area , including pd . d . student work , research seminars etc .\nthere may also be opportunities to have the supported ph . d . students\ndo summer internships at enron , related to their research interests .\nplease find enclosed a check of $ 100 , 000 payable to stanford university\nfor supporting this research effort in your group during the first year .\nbest regards ,\nname and title", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.975+0000", "entityId": 8424, "properties": {"text": "Subject: re : primary curves missing from factor loading\ntanya ,\nwe are very close to generating factors for all primary curves . jin almost\nget it done .\nbut we are still waiting on the expiration dates for those london curves . if\nanyone can help , please help .\nalso , we have some curves that don ' t have futures . how to decide these\ncurves ' s expiration dates ?\nmatthew adams helped us deciding many curves expiration rules . but there are\nstill many primary curves that don ' t have expiration dates .\nif no expiration dates , then there will be no factor loadings . whoever wants\nto generate factor loadings then give us the expiration dates first ! : )\nwinston\ntanya tamarchenko\n09 / 21 / 2000 09 : 00 am\nto : bjorn hagelmann / hou / ect @ ect , wenyao jia / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kirstee hewitt / lon / ect @ ect , rodrigo\nlamas / lon / ect @ ect , xochitl figueroa / na / enron @ enron , manfred\nroenz / corp / enron @ enron , christian lebroc / corp / enron @ enron , bjorn\nhagelmann / hou / ect @ ect , homan amiry / lon / ect @ ect , naveen\nandrews / corp / enron @ enron\nsubject : re : primary curves missing from factor loading\nbjorn ,\nyou are absolutely right that we should run the factors for every primary\ncurve .\nit has been working for a while on this .\nthe problem is data , as always ( missing price curves , zero prices , not\nchanging prices , etc . )\nmost of these problems come from london curves , so winston and jin yu are\ndebugging the code ,\nfixing the problems for every curve .\nwinston ,\ndo you think we are ready to calculate factors for us curves ? ( while continue\nworking on the rest ) .\ntanya\nfrom : bjorn hagelmann\n09 / 20 / 2000 10 : 06 pm\nto : tanya tamarchenko / hou / ect @ ect , naveen andrews / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , kirstee hewitt / lon / ect @ ect , rodrigo\nlamas / lon / ect @ ect , xochitl figueroa / na / enron , manfred roenz / corp / enron ,\nchristian lebroc / corp / enron , bjorn hagelmann / hou / ect @ ect , homan\namiry / lon / ect @ ect\nsubject : re : primary curves missing from factor loading\ntanya , naveen :\ni am confused , i thought that when we identified primary curves they would\nthen have factors run against them . does this not distort what we are trying\nto do with the primary and var ?\nregards\nbjorn h .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bjorn hagelmann / hou / ect on 20 / 09 / 2000\n21 : 57 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nxochitl figueroa @ enron\n20 / 09 / 2000 18 : 16\nto : manfred roenz / corp / enron @ enron , christian lebroc / corp / enron @ enron , homan\namiry / lon / ect @ ect\ncc : bjorn hagelmann / hou / ect @ ect\nsubject : re : primary curves missing from factor loading\ni am in the same situation as manfred . i have one primary curve for southern\ncone gas and one for southern cone power and i am not getting factors for\neither . for my power curves i am getting wti factors and for gas i am\ngetting ng factors .\nbut i do agree with you manfred , i think all the primary curves should have\ntheir own factor loadings .\nxochitl\nmanfred roenz\n09 / 20 / 2000 05 : 33 pm\nto : christian lebroc / corp / enron @ enron , xochitl figueroa / na / enron @ enron , homan\namiry / lon / ect @ ect\ncc : bjorn hagelmann / hou / ect @ ect\nsubject : re : primary curves missing from factor loading\nchristian ,\nat least you have 2 curves that you get factors for . i get none . i have\nfour primary curves for coal but factors from nbsk are used . in emissions i\nhave one primary curve but wti factors are used . i think all the primary\ncurves should have their own factor loadings . xochitl , what factors are used\nfor your primary curves ?\nmanfred\nfrom : christian lebroc 09 / 20 / 2000 11 : 28 am\nto : homan amiry / lon / ect @ ect , manfred roenz / corp / enron @ enron , xochitl\nfigueroa / na / enron @ enron\ncc : bjorn hagelmann / hou / ect @ ect\nsubject : primary curves missing from factor loading\ni was in the process of setting up sunil ' s template for calculating\nco - variance on all liquids primary curves using the \" factor loading \" data .\nunfortunately , i did not get very far , because i noticed that the factor\nloading table contains only 2 ( wti & hu ) out of 13 liquids primary curves . i\nam concern that liquids var could conceivably be over or understated due to\nthe absence of 11 other curves which are listed below . please verify your\nperspective commodity desk on this issue .\n61 ny\nbrent\nc 2 gc\nc 3 gc\nc 5 xt\ncondensate\ndubaicrude\nic 4\nmtbe\nnc 4\nnxho\nchristian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.983+0000", "entityId": 8425, "properties": {"text": "Subject: powerisk 2000 - more cocktail info\n- - - - - - - - - - - - - - - - - - - - - - forwarded by iona maclean / lon / ect on 22 / 09 / 2000 12 : 24\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : simon turner\n22 / 09 / 2000 11 : 29\nto : keiron . ferguson @ accessenergy . nl , mcrosno @ altra . com , ed @ apx . com ,\nalaw @ avistaenergy . com , markw @ citizenspower . com ,\nchris _ strickland @ compuserve . com , hbrett @ cyberbuilding . com , geman @ dauphine . fr ,\ncharles . heard @ dc . com , chris . miller @ dc . com , gilbert . toppin @ dc . com ,\npat . breen @ dc . com , stuart . beeston @ dc . com , klaus . petzel @ dowjones . com ,\nsama @ dynegy . com , jdaly @ enermetrix . com , iona . maclean @ enron . com ,\nvkaminski @ enron . com , mwalsh @ envifi . com , mark @ fea . com ,\nbachar . samawi @ gen . pge . com , garman @ haas . berkeley . edu ,\nfgetman @ houstonstreet . com , dave . gardner @ innogy . com , stepheng @ ipe . uk . com ,\nlecoq _ sophie @ jpmorgan . com , ruckt @ kochind . com , les @ lacima . co . uk ,\nsimon @ localbloke . freeserve . co . uk , carlhans . uhle @ lpx . de , e . westre @ mvv . de ,\npwold @ . com , david . whitley @ nordpool . com ,\nlburke @ nymex . com , xavier . bruckert @ omgroup . com ,\naram . sogomonian @ pacificorp . com , peter . haigh @ pgen . com ,\nsven . otten @ preussenelektra . de , detlef _ r _ hallermann @ reliantenergy . com ,\nphil . saunders @ southernenergy - europe . nl ,\nalexander . eydeland @ southernenergy . com , juerg _ trueb @ swissre . com ,\nalang @ tfs - ln . co . uk , annunziata @ tradecapture . com ,\nmartin . stanley @ txu - europe . com , simon . harrington @ txu - europe . com ,\nrob @ weatherderivs . com\ncc :\nsubject : powerisk 2000 - important invitation\n* * high priority * *\ndear colleague\nplease find attached two invitations to cocktail parties to be held at\npowerisk 2000 .\nyou will receive a formal invitation by post . however , just in case this\ndoes not reach you by any chance , please print off the attached copies and\nbring these with you .\nthe cocktails will provide the opportunity to meet all other speakers and\ndelegates .\nwe look forward to seeing you next week .\nregards\nrosemary fitzgerald\npowerisk 2000\n- cocktail - invite . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.989+0000", "entityId": 8426, "properties": {"text": "Subject: hello vince\nvince ,\ncan i call you tuesday morning about our writing project ? i have to be in\naustin for a dental appointment on monday at noon and that will probably\nwipe out the day . give me a time and number where i can reach you .\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.993+0000", "entityId": 8427, "properties": {"text": "Subject: old email address\n> hello vince ,\n> nie bardzo wiem czy pisac po polsku czy po angielsku : )\n> co u ciebie slychac ?\n> u mnie troche zmian jak ze juz nie pracuje w scem , a przenioslem sie\n> do mieco ( a small marubeni backed energy - america trading company ) .\n> bardzo rozne od scem . najbardzij przypomina mi scem na poczatku z joe , jak\n> bylo 20 - 30 osob . sa i minusy i plusy . troche structure i research ale\n> przede wszystkim weather . trrovhe latam miedzy east i west bo sa officy\n> w obydwu miejscach . california jest ok w zimie : ) .\n> na bardziej personalnym froncie ; pamietasz dinner na ktory poszlismy\n> kiedys na conferencji w ny z catherine ( she used to work for williams -\n> works for morgan stanley now ) , we are dating ( for a while ) . it is a\n> good story how we met . so we owe you dinner : )\n> jak bylem w atlancie to pracowala dla mnie christa grey . bedzie teraz\n> konczyla grad school in international relations ( with eastern european\n> slant ) , i zastanawia sie czy sa jakies mozliwosci polaczenia tego co\n> robila ze \" wschodem \" . co robila to bylo przede wszystkim vb\n> implementations modeli , ( roznego rodzaju ) , web based data collections ,\n> basic research , teraz jest w gas structuring etc . she speaks russian\n> and was in ukraine / poland few times on peace corp assingments . she is very\n> bright and dedicated . myslalem zeby ja zwabic do californii ale ten\n> eastern european pociag jest u niej silniejszy niz u mnie : ) . i have here\n> resume , wiec jak bys myslal ze jest jakis fit i will foreward it to you .\n> troche tak mieszanka pisze , przepraszam\n> bede chyba w houston w pazdzierniku to moze bysmy sie mogli spotkac .\n> latwiej pewnie by bylo w ny ( mieszkam po nj stronie ( rent jest inny niz\n> w atlancie : ) ( 201 ) 222 - 0435 ) , wiec daj mi znac jakbys mial czas i ochote .\n> thanks\n> roman\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:44.998+0000", "entityId": 8428, "properties": {"text": "Subject: hello vince ,\nnie bardzo wiem czy pisac po polsku czy po angielsku : )\nco u ciebie slychac ?\nu mnie troche zmian jak ze juz nie pracuje w scem , a przenioslem sie do\nmieco ( a small marubeni backed energy - america trading company ) . bardzo\nrozne od scem . najbardzij przypomina mi scem na poczatku z joe , jak bylo\n20 - 30 osob . sa i minusy i plusy . troche structure i research ale przede\nwszystkim weather . trrovhe latam miedzy east i west bo sa officy w obydwu\nmiejscach . california jest ok w zimie : ) .\nna bardziej personalnym froncie ; pamietasz dinner na ktory poszlismy\nkiedys na conferencji w ny z catherine ( she used to work for williams -\nworks for morgan stanley now ) , we are dating ( for a while ) . it is a\ngood story how we met . so we owe you dinner : )\njak bylem w atlancie to pracowala dla mnie christa grey . bedzie teraz\nkonczyla grad school in international relations ( with eastern european\nslant ) , i zastanawia sie czy sa jakies mozliwosci polaczenia tego co robila\nze \" wschodem \" . co robila to bylo przede wszystkim vb implementations modeli\n, ( roznego rodzaju ) , web based data collections , basic research , teraz\njest w gas structuring etc . she speaks russian and was in ukraine / poland\nfew times on peace corp assingments . she is very bright and dedicated .\nmyslalem zeby ja zwabic do californii ale ten eastern european pociag jest u\nniej silniejszy niz u mnie : ) . i have here resume , wiec jak bys myslal ze\njest jakis fit i will foreward it to you .\ntroche tak mieszanka pisze , przepraszam\nbede chyba w houston w pazdzierniku to moze bysmy sie mogli spotkac .\nlatwiej pewnie by bylo w ny ( mieszkam po nj stronie ( rent jest inny niz w\natlancie : ) ( 201 ) 222 - 0435 ) , wiec daj mi znac jakbys mial czas i ochote .\nthanks\nroman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.004+0000", "entityId": 8429, "properties": {"text": "Subject: color copier\nthanks for your immediate response .\nthe problem seems to be the cost .\niain , i have the smallest group but we are\nwilling to pay what it takes for the copier .\non the other hand there may be other groups\nthat are larger and may not need the copier\nas much and are not willing to pay the cost .\nseems to me , the copier is a necessity for the floor ,\nit would save not only time , but money also\nin the long haul .\nwe have updated every possibility on the\n32 nd floor and this copier is needed for quick\npresentations , meetings , etc . and allows everyone\nnot to depend on color printers as much !\n( gives us choices )\nplease after today , once we get together regarding\nthis matter , i will let ina continue with the process ,\nwhereby , i can continue focusing on what is best\nfor my group as well as the floor .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.009+0000", "entityId": 8430, "properties": {"text": "Subject: important information about united healthcare - please read !\nto : houston area employees participating in the domestic medical plan benefits\nyou may have recently received communication from united healthcare ( uhc )\nconcerning memorial hermann health systems ' ( mhhs ) decision to terminate\ntheir contract with uhc in the houston / beaumont area . this communication\nalso included the names of physicians who will be dropped from the network\ndue to this action . it is our intent to help you understand the situation .\nit is our understanding that memorial herman health systems asked for a 40 %\nincrease in fees - a substantial increase that would have been passed on to\nyou and enron ! when united healthcare attempted to negotiate with a counter\nproposal , memorial hermann cancelled their contract .\nwhile this contractual arrangement was between the hospital system and uhc ,\nenron continues to support uhc in their ongoing contract negotiation\nefforts . at this time , it is only uhc which has been affected , however , it\nis our understanding that cigna has also been contacted by the hospital group\nand may be in contract negotiations at this time as well .\nmany doctors have obtained admission privileges to other area hospitals\nwithin the uhc network or have contracted directly with uhc including those\nwith admission privileges to the woodlands , sugarland and clear lake\nhospitals , to name a few . in a further effort to limit disruption to our\naffected employees and families who are enrolled in the uhc network or epo\noptions , enron has authorized uhc to process claims incurred between\nseptember 28 and december 31 , 2000 as if the termination of the memorial\nhermann health systems from the network had not occurred and in - network\nbenefits applied . office visits will have a $ 10 copayment and all other\ncharges will be covered at 90 % . hospital admissions will still need to be\npre - certified with uhc .\nthese steps have decreased the number of participants ' affected by primary\ncare physician disruption from 1 , 050 to 127 .\nif you need medical attention : you or your doctor / hospital must call uhc ' s\ncustomer service number so proper benefits can be verified . in some cases\nthe hospital or doctor may request payment at the time service is performed .\nif this should happen , please obtain an itemized statement and submit it to\nuhc with a claim form for prompt reimbursement . claim forms can be obtained\nby calling 1 - 800 - 332 - 7979 or in houston at 713 - 853 - 7979 ( press 1 ) .\nopen enrollment materials will be coming soon . take this opportunity to\nconsider your elections for 2001 .\nunited healthcare and enron hr are committed to assisting enron employees\nthrough this transition . we will communicate any further developments that\nmay impact you or your family .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.013+0000", "entityId": 8431, "properties": {"text": "Subject: re : re : software license\nms . geman ,\ni apologize for the delay , but i finally have drafted an escrow agreement for\nplacing the software in escrow with your attorneys . please review and have\nyour attorneys review and let me know if it is acceptable .\ni will be leaving the department i have been working in and moving to a\ndifferent enron subsidiary on october 13 . if at all possible , could we try\nto get the software license agreement and the escrow agreement wrapped up\nbefore i leave so that someone else does not have to try to pick up where i\nleft off ?\ni think we are just about in agreement on the software license portion .\nseems like the only outstanding question had to do with your concern\nregarding providing a response time of 2 business days . i do not have any\nanswers regarding that - maybe vince kaminski or stinson gibner can respond\non this issue .\ni look forward to hearing from you and trying to get this finalized within\nthe next 2 weeks if possible .\nthank you ,\nkarla feldman\nenron corp .\n( 713 ) 646 - 7554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.019+0000", "entityId": 8432, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 pks 7 y\norder for : maureen raymond\n1 x ( standard desktop $ 1319 )\nenron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.024+0000", "entityId": 8433, "properties": {"text": "Subject: nymex\nchris ,\nhere is the analysis you requested . let me know if i can be of any further\nassistance .\ncharlie weldon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.029+0000", "entityId": 8434, "properties": {"text": "Subject: accounting organizational changes\nin order to support enron \u0001 , s development of new business and desire to\nmaximize its return on invested capital ; the following organizational changes\nare taking place .\nthe current accounting groups supporting calme , apachi and south america\nactivities will be consolidated into one accounting group at enron corp .\nthis group will continue to provide accounting support to these international\nregions and related enron corp initiatives . jeff sommers , currently calme\nvice president and cao will head this accounting group . cassandra schultz ,\ncurrently apachi vice president and cao will join rick buy \u0001 , s risk assessment\nand control organization as a vice president in market risk management . kent\ncastleman , currently south america vice president and cao will become vice\npresident and cao of enron industrial markets .\nplease join us in congratulating everyone in their new assignments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.033+0000", "entityId": 8435, "properties": {"text": "Subject: nymex\nchris ,\nthe first file might have gone to a wrong chris long .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 09 / 27 / 2000\n05 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : v charles weldon 09 / 27 / 2000 12 : 22 pm\nto : christopher . long @ enron . com\ncc : mike a roberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : nymex\nchris ,\nhere is the analysis you requested . let me know if i can be of any further\nassistance .\ncharlie weldon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.038+0000", "entityId": 8436, "properties": {"text": "Subject: re : nymex volumes for rebuttal\nvince - i need these numbers by tomorrow am as we are at crunch time . thanks\n- chris\nmargaret carson\n09 / 27 / 2000 08 : 44 am\nto : chris long / corp / enron @ enron\ncc :\nsubject : nymex volumes for rebuttal\nchris i track physical volumes in markets not really financials . . . try\nvince kaminski vp in ena ' s\nresearch desk and his people will have this for you . . . . margaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.043+0000", "entityId": 8437, "properties": {"text": "Subject: re : mission impossible - hr associate groups recommendation and\nnext steps\ndavid ,\nno problem . we shall send the required fire power .\nthe person who will attend is amitava dhar .\nvince\np . s . amitava , please , take note .\ndavid oxley\n09 / 26 / 2000 11 : 38 am\nto : andrea yowman / corp / enron @ enron , bob sparger / corp / enron @ enron , gerry\ngibson / corp / enron @ enron , tim o ' rourke / corp / enron @ enron , ted c\nbland / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc : daniel brown / na / enron @ enron , tana cashion / na / enron @ enron , rhonna\npalmer / hou / ect @ ect , cindy olson / corp / enron @ enron\nsubject : mission impossible - hr associate groups recommendation and next\nsteps\nrhonna ,\nplease arrange a meeting later this week for all of those addressed by this\nmessage ( vince , it would great if one of your team could attend since we will\nneed some heavy statistical and analytical help to complete this project ) .\nthe prupose of the meeting will be to discuss and delegate next steps\nrequired to implement the hr associate groups recommendations for the\ndevelopment of an hr \" value index \" at enron .\ni would anticipate we will need approx 45 minutes .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.048+0000", "entityId": 8438, "properties": {"text": "Subject: re : meeting\nandrew ,\ni shall be glad to meet and discuss the project . it sounds intriguing .\nvince\nandrew miles @ enron\n09 / 22 / 2000 01 : 34 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : meeting\nhi vince !\nmaybe you remember me , my name is andrew miles and we worked together on a\nspeech for jeff skilling this past july . i am hoping that i can get on your\ncalendar for 30 minutes next week . i have been working with 3 other enron\nemployees for the past 6 months , developing a comprehensive innovation\nacceleration process for use by potentially all enron employees - and we\nwould really appreciate your input . we have presented the idea to quite a\nfew people in the company , and some outside of the company ( strategos\ninstitute ) , all of which have really liked the idea and provided key input .\nmany people have suggested that we run the idea by you .\nif you have some time next week , would you mind allowing me to explain our\nideas to you ? i will follow up with a telephone call .\nall the best ,\nandrew", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.053+0000", "entityId": 8439, "properties": {"text": "Subject: re :\nroman ,\ni shall be traveling next week ( europe again ) , mon thru fri .\nit ' s power 2000 conference in paris .\ni have many trips to different places later during october\n( berkeley , philadelphia , etc . ) . these are shorter , 1 - 2\nday trips . please , let me know when you come to houston .\ni shall keep you posted about my itinerary as\nit becomes more certain .\nvince\nroman kosecki on 09 / 27 / 2000 09 : 08 : 39 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re :\nthat is so much easier , isnt it ( i mean english )\nmy office number inb nj is ( 973 ) 733 - 2771\nin cal ( 562 ) 951 - 1790\nmy home number is ( 201 ) 222 - 0435\ni will be in ny till friday , and then will stay in long beach for a few\nweeks .\nhope you had a great time in poland .\nit would be really nice to have some italian pastry and a double espresso : )\nlet me know when you are in town .\nroman\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , september 27 , 2000 9 : 07 am\nto : roman kosecki\ncc : vkaminski @ aol . com\nsubject : re :\nroman ,\ni shall type in english ( faster ) .\ni was trying to locate you for some time after you left scem . i shall be\nglad to\nmeet for dinner / coffee and chat . please , send me your phone number .\ni have just come back from poland and go through my mail . i shall try to\nreach you later\nthis week .\nvince\nroman kosecki on 09 / 25 / 2000 12 : 06 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\nhello vince ,\nnie bardzo wiem czy pisac po polsku czy po angielsku : )\nco u ciebie slychac ?\nu mnie troche zmian jak ze juz nie pracuje w scem , a przenioslem sie do\nmieco ( a small marubeni backed energy - america trading company ) . bardzo\nrozne od scem . najbardzij przypomina mi scem na poczatku z joe , jak bylo\n20 - 30 osob . sa i minusy i plusy . troche structure i research ale przede\nwszystkim weather . trrovhe latam miedzy east i west bo sa officy w obydwu\nmiejscach . california jest ok w zimie : ) .\nna bardziej personalnym froncie ; pamietasz dinner na ktory poszlismy\nkiedys na conferencji w ny z catherine ( she used to work for williams -\nworks for morgan stanley now ) , we are dating ( for a while ) . it is a\ngood story how we met . so we owe you dinner : )\njak bylem w atlancie to pracowala dla mnie christa grey . bedzie teraz\nkonczyla grad school in international relations ( with eastern european\nslant ) , i zastanawia sie czy sa jakies mozliwosci polaczenia tego co\nrobila\nze \" wschodem \" . co robila to bylo przede wszystkim vb implementations\nmodeli\n, ( roznego rodzaju ) , web based data collections , basic research , teraz\njest w gas structuring etc . she speaks russian and was in ukraine / poland\nfew times on peace corp assingments . she is very bright and dedicated .\nmyslalem zeby ja zwabic do californii ale ten eastern european pociag jest\nu\nniej silniejszy niz u mnie : ) . i have here resume , wiec jak bys myslal ze\njest jakis fit i will foreward it to you .\ntroche tak mieszanka pisze , przepraszam\nbede chyba w houston w pazdzierniku to moze bysmy sie mogli spotkac .\nlatwiej pewnie by bylo w ny ( mieszkam po nj stronie ( rent jest inny niz w\natlancie : ) ( 201 ) 222 - 0435 ) , wiec daj mi znac jakbys mial czas i ochote .\nthanks\nroman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.058+0000", "entityId": 8440, "properties": {"text": "Subject: maac executive board files restructuring agreement\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nmaac executive board files restructuring agreement\nseptember 27 , 2000\nnorristown , pa :\nthe mid - atlantic area council ( maac ) , one of the ten regional reliability\ncouncils of the north american electric reliability councils ( nerc ) , filed a\nnew\nagreement on september 22 regarding the governance of maac with the federal\nenergy regulatory commission ( ferc ) . maac ' s basic purpose is to ensure the\nreliability of the interconnected bulk power system in the region . maac ' s\narea\nof responsibility covers the same geographical region as the control area\noperated by the pjm independent system operator ( pjm iso ) , consisting of all\nor\nparts of the states of pennsylvania , new jersey , maryland , delaware ,\nvirginia ,\nand the district of columbia . the maac restructuring process began years ago\nand\nis expected , with ferc approval , to be implemented on january 1 , 2001 .\n\" we are excited to be positioning the maac organization to address the needs\nof\nthe new competitive era , thanks to the interest and participation of the\nstakeholders for over two years . \" stated pete landrieu , maac executive board\nchair .\nphillip g . harris , regional manager of maac , commented \" the relationship\nbetween\nreliability and markets will be enhanced and strengthened by the maac\nrestructuring . we are also pleased to be making this change as effectively as\npossible through the use of existing pjm organizational and other resources . \"\nunder the filed agreement , a new maac members committee is chartered with the\ncreation of the approval process of the maac reliability principles and\nstandards . other new maac committees are chartered , most notably , a maac\nenergy\nmarket committee to serve as a forum for the discussion of the impact of\nreliability on the commercial market place , and the marketplace on\nreliability .\nthe agreement also provides for stakeholder representation on the maac board .\nappropriate amendments to existing pjm agreements will be discussed with the\npjm\nmembers and filed with the ferc .\nthe mid - atlantic area council was established in december 1967 to augment the\nreliability of the bulk electric supply systems of its members through\ncoordinated planning of generation and transmission facilities . the maac\nregion\nencompasses nearly 50 , 000 square miles from virginia to new york and from the\natlantic ocean to the great lakes . under the existing maac agreement and the\noperating agreement of pjm interconnection , l . l . c . , maac and pjm members are\nobligated to comply with maac and nerc operating and planning principles and\nstandards .\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.063+0000", "entityId": 8441, "properties": {"text": "Subject: re : telephone interview with the enron research group\nmr . yaralov :\ni want to apologize to you , i have had the flu and have been out of the\noffice . would you be able to receive the call in the morning ( thursday ,\nseptember 28 th ) at 8 : 30 am california time ( 10 : 30 am houston time ) ?\nwe will call you at your home , 213 / 250 - 5424 .\nplease let me know as soon as possible and i will arrange the interview .\nsincerest apologies !\nshirley crenshaw\n\" georgi yaralov \" on 09 / 25 / 2000 06 : 51 : 45 pm\nto :\ncc :\nsubject : re : telephone interview with the enron research group\ndear shirley crenshaw .\nunfortunately i did not get any response on my previous e - mail . i would like\nto find out if you want me to set up new time frames for the interview .\nplease let me know .\nsincerely ,\ngeorgi yaralov\n- - - - - original message - - - - -\nfrom :\nto :\nsent : wednesday , september 20 , 2000 8 : 50 am\nsubject : telephone interview with the enron research group\n> good morning mr . yaralov :\n>\n> your resume was forwarded to vince kaminski and the research group\n> with enron . they would like to schedule a telephone interview with you\n> at your convenience to see if there might be a fit somewhere within our\n> group .\n>\n> please let me know several time frames that might be acceptable to you\n> for this interview .\n>\n> the interviewers would be :\n>\n> stinson gibner ( before monday the 25 th ) vice president\n> grant masson ( after monday the 25 th ) vice president\n> zimin lu director\n> tanya tamarchenko director\n> vasant shanbhogue vice president\n>\n>\n> regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group\n> 713 - 853 - 5290\n> email : shirley . crenshaw @ enron . com\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.068+0000", "entityId": 8442, "properties": {"text": "Subject: vince kaminski ' s itinerary - week of 9 / 30 - 10 / 7 / 00\nprofessor martin :\nattached is vince ' s itinerary . let me know if you need anything else .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 27 / 2000\n11 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n09 / 27 / 2000 10 : 45 am\nto : \" john d . martin \" @ enron\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : hello vince\njohn ,\ni shall be in paris and london next week . we can schedule a call sometimes\nnext week . i shall ask my assistant to send you my itinerary . a late call\n( paris time )\nwould work for me . the time difference is 6 hours . this would mean a call\nsometimes around 3 - 4 p . m . our time .\nplease , indicate which day works best for you .\nvince\n\" john d . martin \" on 09 / 27 / 2000 09 : 45 : 50 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello vince\nvince ,\ngood morning . unfortunately i ' ll be in milwaukee visiting harley - davidson\nabout a book revision project both thursday and friday . how about early\nnext week . i appreciate your patience with me . when you suggested a time\nlast week i was \" unprepared \" and embarassed to call and expose my\nignorance . since then i have re - read the enron gas services case and have\na pretty good feel for how you guys have melded the physical and financial\nsides of the business . the other theme that i have heard many enron\nspeakers use is the \" de - regulation \" of markets . this certainly played a\nfactor in the power business and presumeably was behind the water business .\nif you ' ll let me know when it ' s convenient to call next week i ' ll have some\nnotes put together . i ' m teaching a class for a colleague on monday so\nanytime after that is great .\nthanks and hope you had a pleasant trip .\njohn\np . s . i saw that the univ of new orleans has an energy finance endowed\nchair for a financial economist open . if you ever decide to move back to\nthe life of poverty of an academic i would love to recommend you for such a\npost .\nat 08 : 26 am 9 / 27 / 00 - 0500 , you wrote :\n>\n> john ,\n>\n> what about thursday , 10 : 30 a . m . ? i have just come back from europe\n> last night and i am trying to organize my schedule for the next few days .\n>\n> my phone number is 713 853 3848 .\n>\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" john d . martin \" on 09 / 22 / 2000 01 : 57 : 47 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : hello vince\n>\n>\n> vince ,\n>\n> can i call you tuesday morning about our writing project ? i have to be in\n> austin for a dental appointment on monday at noon and that will probably\n> wipe out the day . give me a time and number where i can reach you .\n>\n> john\n>\n>\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.074+0000", "entityId": 8443, "properties": {"text": "Subject: update : ffvols\nted ,\nan update on the implementation for ffvols :\n( 1 ) in comparing 6 days of historical var calculations\n( with that of the implied ) for agg - gas , we have found that the historical var\ncalculations are consistently lower over this period , by roughly 17 mm . the\nimplied volatilities are much higher at this period , anticipating strong\nwinter prices .\n( 2 ) at this time , the consensus is not to relase the\nhistorical implementation into production , and the official line to traders\nwill be that the method is still in testing . the historical var is 19 . 2 mm\nand the implied is 37 mm for effective date of 09 / 25 .\n( 3 ) further testing is in progress on a hybrid methodology\n( which i mentioned last week , whereby historical vols are scaled by the ratio\nof prompt to historical - prompt volatilities ) , to atleast capture some\nimplied / forward effects . tanya ' s analysis on a fictitious portfolio\nindicates higher var numbers , but poorer backtesting in comparison to the\nhistorical approach . this approach serves as an intermediate , and seems\nappropriate in periods such as the current one , wherein the historical\nnumbers might be considerably lower than those of the implied .\n( 4 ) winston will start testing using these hybrid vols , and\nif the results are deemed satisfactory , that will be the production\nmethodology .\nof course , we will obtain all var numbers concurrently to serve as different\nindicators and beacons of risk . the production number will hopefully be a\nsensible compromise of the different methods .\nregards\nnaveen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.078+0000", "entityId": 8444, "properties": {"text": "Subject: re : book cover\nhabiba ,\nthanks for this , but i haven ' t heard a peep out of them yet , and i ' m\nconcerned since the book and cover are going to print in about a week . ? is\nit possible for me to contact them ?\n?\nthanks ,\njulie\n- - - - - original message - - - - -\nfrom : habiba . bayi @ enron . com\nto : julie @ lacima . co . uk\nsent : wednesday , september 27 , 2000 2 : 46 pm\nsubject : re : book cover\njulie ,\ni have forwarded your e : mails and information to london . ? they now have\nresponsibility for this project and they would be making the necessary\ndecisions . ? i have given them your contact information so that they can\ncoordinate efforts with you .\nthank you .\nhabiba\n\" julie \" on 09 / 27 / 2000 08 : 21 : 54 am\nto : ? ?\ncc :\nsubject : ? book cover\nhabiba ,\ncould you please let us know if we can use the book cover on our web ? page ?\nwe would like to put this on our web site next week .\nplease let us know .\nthanks ,\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.082+0000", "entityId": 8445, "properties": {"text": "Subject: your approval is overdue : access request for\ntom . halliburton @ enron . com\nthis request has been pending your approval for 2 days . please click\napproval to review and act upon this request .\nrequest id : 000000000003619\nrequest create date : 9 / 27 / 00 9 : 18 : 21 am\nrequested for : tom . halliburton @ enron . com\nresource name : unlisted application / software\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.088+0000", "entityId": 8446, "properties": {"text": "Subject: re : mathworks\nmolly ,\ni met lou in the building lobby last wednesday and he suggested that he\n( or his representatives ) join the mathworks presentation to my group ) .\nit ' s a good software package for mathematical modeling ,\nbut there is a limit to the number of different installations any group\ncan productively use .\ni shall take a look at some new features they offer\nand decide whether it ' s worth the effort .\nvince kaminski\nlou casari @ enron communications\n09 / 20 / 2000 02 : 10 pm\nsent by : molly carnes @ enron communications\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mathworks\ndo you know this person or this company ? they are want to set an appointment\nwith ebs and i believe , are wanting to meet with you , also . any feedback ?\nthanks .\nmolly carnes for lou casari\nenron broadband services\n713 - 853 - 1467 , room eb 4486 a\nmolly _ carnes @ enron . net\n- - - - - forwarded by molly carnes / enron communications on 09 / 20 / 00 02 : 09 pm\n- - - - -\nscottw @ mathworks . com\n09 / 20 / 00 08 : 46 am\nto : lou casari / enron communications @ enron communications\ncc :\nsubject : we ' ll be in houston\nhello mr . casari :\nmyself and our energy trading financial team will be visiting with the r & d\ngroup at enron the week of 10 / 16 / 00 . they have several applications can be\ndramatically improved with our tools .\nwe are very interested to understand the bandwidth trading market , to see\nif any additional challanges can be overcome with our tools .\ni would like to understand your challanges of modeling , simulating and\ndeploying applications to control risk .\nare you available to discuss these items prior to our visit ?\ni look forward to hearing from you .\nthanks\nscott wakefield", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.097+0000", "entityId": 8447, "properties": {"text": "Subject: re : exotic options presentation\nvince\nthe presentation is riddled with errors , which were pointed out at the\nconference . they ' re only there because i was working on the presentation at\nmidnight !\ni ' ll send a new version as soon as it ' s ready .\nsteve\nvince j kaminski\n09 / 28 / 2000 04 : 35 pm\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : re : exotic options presentation\nsteve ,\nthanks a lot .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.104+0000", "entityId": 8448, "properties": {"text": "Subject: re : mathworks\nmolly ,\nwe have a reasonably big room . 2 - 5 people is ok . it ' s ebl 938 .\nvince\nmolly carnes @ enron communications\n09 / 28 / 2000 03 : 10 pm\nto : vince j kaminski / hou / ect @ ect @ enron\ncc :\nsubject : re : mathworks\ni ' ve got in on the calendar for the 18 th at 2 : 00 . what ' s the location ? how\nmany can we bring ? 2 or 3 ?\nthanks .\nmolly carnes\nfor\nlouis casari\nvice president , mid office operations\nenron broadband services\n713 - 853 - 4302 , room eb 4492\nlou _ casari @ enron . net\nvince j kaminski @ ect\n09 / 28 / 00 10 : 39 am\nto : lou casari / enron communications @ enron communications @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , lou\ncasari / enron communications @ enron communications\nsubject : re : mathworks\nmolly ,\ni met lou in the building lobby last wednesday and he suggested that he\n( or his representatives ) join the mathworks presentation to my group ) .\nit ' s a good software package for mathematical modeling ,\nbut there is a limit to the number of different installations any group\ncan productively use .\ni shall take a look at some new features they offer\nand decide whether it ' s worth the effort .\nvince kaminski\nlou casari @ enron communications\n09 / 20 / 2000 02 : 10 pm\nsent by : molly carnes @ enron communications\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mathworks\ndo you know this person or this company ? they are want to set an appointment\nwith ebs and i believe , are wanting to meet with you , also . any feedback ?\nthanks .\nmolly carnes for lou casari\nenron broadband services\n713 - 853 - 1467 , room eb 4486 a\nmolly _ carnes @ enron . net\n- - - - - forwarded by molly carnes / enron communications on 09 / 20 / 00 02 : 09 pm\n- - - - -\nscottw @ mathworks . com\n09 / 20 / 00 08 : 46 am\nto : lou casari / enron communications @ enron communications\ncc :\nsubject : we ' ll be in houston\nhello mr . casari :\nmyself and our energy trading financial team will be visiting with the r & d\ngroup at enron the week of 10 / 16 / 00 . they have several applications can be\ndramatically improved with our tools .\nwe are very interested to understand the bandwidth trading market , to see\nif any additional challanges can be overcome with our tools .\ni would like to understand your challanges of modeling , simulating and\ndeploying applications to control risk .\nare you available to discuss these items prior to our visit ?\ni look forward to hearing from you .\nthanks\nscott wakefield", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.109+0000", "entityId": 8449, "properties": {"text": "Subject: re : london visit\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 28 / 2000\n10 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n09 / 18 / 2000 04 : 38 pm\nto : paul . e . day @ uk . arthurandersen . com @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : london visit\npaul ,\ni shall be in london in the beginning of october .\ni shall notify you about the timing of my trip later this week .\nvince\npaul . e . day @ uk . arthurandersen . com on 09 / 18 / 2000 03 : 29 : 50 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : london visit\ni understand this has been cancelled - no problem - life is kind of hectic\nhere\nanyway ! ! why don ' t we try to rearrange next time you ' re over ?\nkind regards\npaul day\nto : paul e . day\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\ndate : 25 / 08 / 2000 19 : 10\nfrom : vince . j . kaminski @ enron . com\nsubject : re : london visit\npaul ,\nthanks for your message . i am in process of\nfinalizing my plans for the trip to london in the end of\nseptember . i delayed responding to you message till\ni had more specific information .\nunless there a major change in my schedule , i shall arrive\nin london on monday morning ( september 18 ) and leave on\nthursday in the evening .\nplease , let me know what would be convenient time\nto meet . you can send me an e - mail message and my secretary\nwill contact to confirm the date and place of the meeting .\nmy assistant ' s name is shirley crenshaw and her phone\nnumber is 713 853 5290 .\ni look forward to meeting you , tom and julian .\nvince kaminski\npaul . e . day @ uk . arthurandersen . com on 08 / 25 / 2000 11 : 53 : 02 am\nto : vince j kaminski / hou / ect @ ect\ncc : tom . o . lewthwaite @ uk . arthurandersen . com ,\njulian . leake @ uk . arthurandersen . com\nsubject : london visit\ni understand that you will be in london around 20 september . tom lewthwaite\nhas\nasked me to arrange a meeting between you , tom and julian leake . i understand\nthat you have met tom and julian before . i would also like to attend - i am\na\nmanager in our uk financial services practice with responsibilty for enron\nfrom\na uk financial services perspective . we would like to discuss any risk\nmanagement concerns that you may have and any internal initiatives with which\nwe\ncould assist .\nif you are happy to meet on this basis , i would be grateful if you could let\nme\nknow how you to proceed ( whether i should arrange timings with you , your\nsecretary , someone in london etc ) . you can contact me on + 44 20 7783 7446 ( at\nenron ' s london offices ) or on this e - mail address .\nkind regards\npaul day\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.113+0000", "entityId": 8450, "properties": {"text": "Subject: re : lunch\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 28 / 2000\n10 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nallan . roberts @ uk . arthurandersen . com on 09 / 26 / 2000 09 : 41 : 47 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : lunch\nshirley ,\nthank you for your e - mail , i hope all has turned out well with vince and his\nfamily .\nthis is my first day back in the office , so the reason for contacting you is\nto\nacknowledge receipt of your note and to inquire as to when vince will next be\nin\nthe uk .\nplease contact me at you convenience ,\nallan\nto : allan roberts\ncc :\ndate : 18 / 09 / 2000 16 : 18\nfrom : shirley . crenshaw @ enron . com\nsubject : re : lunch\nallen :\ni apologize ! i tried to call on the numbers below , but they would not go\nthrough . i sent you an email explaining why vince was not there ,\nunfortunately\nit did not get to you in time !\nvince ' s wife and son were driving to california for his junior year at\nstanford .\nthey stopped in phoenix and his wife got sick . vince is afraid he will\nhave to\nfly out there and drive them on to calif .\nplease accept our deepest apologies and we will reschedule for october ,\nif it is ok .\nregards ,\nshirley crenshaw\nallan . roberts @ uk . arthurandersen . com on 09 / 18 / 2000 09 : 08 : 15 am\nto : shirley . crenshaw @ enron . com\ncc : chris . j . osborne @ uk . arthurandersen . com ,\nrichard . p . emerton @ uk . arthurandersen . com ,\nmike . pilgrem @ uk . arthurandersen . com ,\nangela . mindley @ uk . arthurandersen . com\nsubject : lunch\ndear shirley ,\nmy colleagues and i were expecting to lunch with vince today .\nunfortunately ,\nvince did not show .\nthe reason for contacting you is to inform you of the situation and to\nenquire\nas to whether everything is ok .\nhis plane arrived on time , but we have not heard from him today .\nif you need to contact me urgently , please call me on + 44 370 584 695 , or\nmy ea\nangela on + 44 7304 8102 .\nregards , allan\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if\nyou\nare not the addressee indicated in this message ( or responsible for\ndelivery of\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender\nby\nreply email . please advise immediately if you or your employer do not\nconsent to\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of\nmy\nfirm shall be understood as neither given nor endorsed by it .\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.118+0000", "entityId": 8451, "properties": {"text": "Subject: re : confirmation of meeting\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 28 / 2000\n10 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwendy . dunford @ arthurandersen . com on 09 / 20 / 2000 10 : 11 : 43 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : confirmation of meeting\nvince sounds very busy !\njust let me know when he is free and i will sort something out .\nthanks\nwendy\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.123+0000", "entityId": 8452, "properties": {"text": "Subject: technical corner paper\nvince ,\nas you suggested , i splited the paper into two parts , the first one\ndevotes to the fx market and second one to gas market . attached\nis the first part .\nlet me know if there is any mistakes in there , thanks .\nsam ,\nvince wants to publish this article in the next monday edition of the\nresearch intelligence .\nthanks .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.128+0000", "entityId": 8453, "properties": {"text": "Subject: stinson gibner & hector campos\nken lay gave a high profile presentation on the current natural gas supply\nand price situation at a recent conference held by the interstate oil and gas\ncompact commission , and some of the best graphs came from work that stinson\nand hector did ( see the attached , slides # 11 , # 12 , # 14 , & # 15 ) .\ni really appreciate their research and hope to be able to use their talents\nagain for presentations for the office of the chairman . .\n- rob\nrobert l . bradley jr .\ndirector , public policy analysis\nenron corp .\np . o box 1188 , room 4724 a\n[ 1400 smith street 77002 ]\nhouston , texas 77251 - 1188\n( p ) 713 - 853 - 3062\n( f ) 713 - 646 - 4702\nassistant : joan stransky 713 - 853 - 4702\njstrans @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.133+0000", "entityId": 8454, "properties": {"text": "Subject: biliana ' s resume\nmr . kaminski ,\nthank you for referring me to your recruitment\nrepresentative .\nattached is my resume . i would appreciate you letting\nme know the name of the hr person whom i can folow up\nwith .\nbest regards ,\nbiliana\n= = = = =\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nbiliana pehlivanova\nvice president of incoming exchange\naiesec houston\n713 743 - 4927\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ndo you yahoo ! ?\nyahoo ! photos - 35 mm quality prints , now get 15 free !\nhttp : / / photos . yahoo . com /\n- biliana ' s resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.138+0000", "entityId": 8455, "properties": {"text": "Subject: re : enron / stanford program\nnick ,\ni shall be in stanford oct 14 - 15 , visiting my family .\ni would be glad to meet you ( and possibly giuseppe - your call ) for lunch .\nplease , let mer know if you are free on one of these days . saturday would\nwork better for me .\nvince\nnick bambos on 09 / 21 / 2000 02 : 09 : 46 pm\nto : stinson . gibner @ enron . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : enron / stanford program\nstinson ,\ngreat ! i ' m looking forward to a very productive collaboration .\ni ' ll immediately start doing giuseppe ' s papers , for him to work\non the enron / stanford program .\nmany thanks to you and vince , and i hope to see you soon at stanford\nor enron . if i remember correctly , vince is visiting stanford in\noctober .\nbest regards ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i spoke with paul racicot , head of trading for ebs , north america this\n> morning . he said that he is happy to send the $ 100 , 000 for your program\n> from his budget . i have forwarded to him the draft letter to accompany\n> the funds and will try to follow up to make sure that the money is sent\n> promptly .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.143+0000", "entityId": 8456, "properties": {"text": "Subject: risk systems enhancements meeting 9 / 29 / 00 - 11 : 30 - 1 : 00 p . m . eb 2868\ntanya :\nfyi . this is the meeting you will be attending for vince tomorrow .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 28 / 2000\n10 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndorothy youngblood\n09 / 28 / 2000 09 : 11 am\nto : karen k heathman / hou / ect @ ect , jo corbitt / na / enron @ enron , rita\nhennessy / na / enron @ enron , cherylene r westbrook / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , peggy mccurley / hou / ect @ ect , patti thompson / hou / ect @ ect ,\ngiselle james / corp / enron @ enron\ncc :\nsubject : risk systems enhancements meeting 9 / 29 / 00 - 11 : 30 - 1 : 00 p . m . eb 2868\nladies ,\ngood morning ,\njust a reminder of the above referenced meeting will be held tomorrow\n9 / 29 / 2000 @ 11 : 30 a . m . - 1 : 00 p . m . lunch will be served .\nattendees :\nrick buy\nsally beck\nphilippe bibi ( or representative from his group )\nbill bradford\ndebbie brackett\nvince kaminski ( or representative from his group )\nted murphy\nbeth perlman\ndavid port\nstephen stock\nthank you in advance . .\ndorothy\n3 - 6114\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dorothy youngblood / hou / ect on 09 / 28 / 2000\n08 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndorothy youngblood\n09 / 21 / 2000 11 : 41 am\nto : karen k heathman / hou / ect @ ect , jo corbitt / na / enron @ enron , rita\nhennessy / na / enron @ enron , cherylene r westbrook / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , peggy mccurley / hou / ect @ ect , patti thompson / hou / ect @ ect ,\ngiselle james / corp / enron @ enron\ncc :\nsubject : risk systems enhancements meeting 9 / 22 / 00 - 11 : 30 - 1 : 00 p . m . eb 2868\nladies ,\njust a quick reminder about the meeting tomorrow . lunch will be served - - so\neach of your bosses or their representatives will be served . so they do not\nhave to worry about bringing their lunches . yeah ! ! ! ! !\nattendees :\nrick buy\nsally beck\nphilippe bibi ( or representative from his group )\nbill bradford\ndebbie brackett\nvince kaminski ( or representative from his group )\nted murphy\nbeth perlman\ndavid port\nstephen stock\nplease see below :\nmenu\nblackened chicken\nfettuccine\nfresh seasonal vegetables\nceasar salad w / assorted dressings\nfresh baked rolls w / butter\nbottled water\nassorted drinks\ncookies ( assorted )\nthank you very much in advance .\nthanks . . dy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dorothy youngblood / hou / ect on 09 / 21 / 2000\n10 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndorothy youngblood\n09 / 19 / 2000 12 : 52 pm\nto : karen k heathman / hou / ect @ ect , jo corbitt / na / enron @ enron , rita\nhennessy / na / enron @ enron , cherylene r westbrook / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , peggy mccurley / hou / ect @ ect , patti thompson / hou / ect @ ect ,\ngiselle james / corp / enron @ enron\ncc :\nsubject : risk systems enhancements meeting\nladies\nrick buy would like to have the above meeting on a weekly basis . debbie\nbrackett asked that i send an email to invite your bosses . the meeting will\nbe from 11 : 30 a . m . - 1 : 00 p . m . this meeting will be held each friday - room\neb 2868 for the rest of the year .\nattendees :\nrick buy\nbill bradford\ndebbie brackett\nphilippe bibi\nted murphy\ndavid port\nstephen stock\nvince kaminski\nbeth perlman\nsally beck\nthank you\ndorothy\n3 - 6114\n- - - - - - - - - - - - - - - - - - - - - - forwarded by dorothy youngblood / hou / ect on 09 / 19 / 2000\n12 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie r brackett\n09 / 11 / 2000 10 : 09 am\nto : dorothy youngblood / hou / ect @ ect\ncc :\nsubject : rac it improvement projects\n- - - - - - - - - - - - - - - - - - - - - - forwarded by debbie r brackett / hou / ect on 09 / 11 / 2000\n10 : 09 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrick buy @ enron\n09 / 07 / 2000 04 : 35 pm\nsent by : jo corbitt @ enron\nto : sally beck / hou / ect @ ect , philippe a bibi / hou / ect @ ect , debbie r\nbrackett / hou / ect @ ect , william s bradford / hou / ect @ ect , mike\njordan / lon / ect @ ect , vince j kaminski / hou / ect @ ect , ted murphy / hou / ect @ ect\ncc : john j lavorato / corp / enron @ enron , mike mcconnell / hou / ect @ ect , john\nsherriff / lon / ect @ ect\nsubject : rac it improvement projects", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.148+0000", "entityId": 8457, "properties": {"text": "Subject: re : mathworks\ngreat , please keep us informed .\nlouis casari\nvice president , mid office operations\nenron broadband services\n713 - 853 - 4302 , room eb 4492\nlou _ casari @ enron . net\nvince j kaminski @ ect\n09 / 28 / 00 10 : 39 am\nto : lou casari / enron communications @ enron communications @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , lou\ncasari / enron communications @ enron communications\nsubject : re : mathworks\nmolly ,\ni met lou in the building lobby last wednesday and he suggested that he\n( or his representatives ) join the mathworks presentation to my group ) .\nit ' s a good software package for mathematical modeling ,\nbut there is a limit to the number of different installations any group\ncan productively use .\ni shall take a look at some new features they offer\nand decide whether it ' s worth the effort .\nvince kaminski\nlou casari @ enron communications\n09 / 20 / 2000 02 : 10 pm\nsent by : molly carnes @ enron communications\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mathworks\ndo you know this person or this company ? they are want to set an appointment\nwith ebs and i believe , are wanting to meet with you , also . any feedback ?\nthanks .\nmolly carnes for lou casari\nenron broadband services\n713 - 853 - 1467 , room eb 4486 a\nmolly _ carnes @ enron . net\n- - - - - forwarded by molly carnes / enron communications on 09 / 20 / 00 02 : 09 pm\n- - - - -\nscottw @ mathworks . com\n09 / 20 / 00 08 : 46 am\nto : lou casari / enron communications @ enron communications\ncc :\nsubject : we ' ll be in houston\nhello mr . casari :\nmyself and our energy trading financial team will be visiting with the r & d\ngroup at enron the week of 10 / 16 / 00 . they have several applications can be\ndramatically improved with our tools .\nwe are very interested to understand the bandwidth trading market , to see\nif any additional challanges can be overcome with our tools .\ni would like to understand your challanges of modeling , simulating and\ndeploying applications to control risk .\nare you available to discuss these items prior to our visit ?\ni look forward to hearing from you .\nthanks\nscott wakefield", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.152+0000", "entityId": 8458, "properties": {"text": "Subject: re : your approval is overdue : access request for\ntom . halliburton @ enron . com\nauthorization granted .\nthe system is not accepting my id and password .\nvince kaminski\narsystem @ ect . enron . com on 09 / 28 / 2000 07 : 05 : 09 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : your approval is overdue : access request for\ntom . halliburton @ enron . com\nthis request has been pending your approval for 2 days . please click\napproval to review and act upon this request .\nrequest id : 000000000003619\nrequest create date : 9 / 27 / 00 9 : 18 : 21 am\nrequested for : tom . halliburton @ enron . com\nresource name : unlisted application / software\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.157+0000", "entityId": 8459, "properties": {"text": "Subject: hickerson / egm knowledge management\nfollowing our meeting with gary today , scott and i prepared the following\nwork plan . hopefully , this reflects the conversation and planning in today ' s\nmeetings .\nplease send comments and revisions .\ncordially ,\nrobert johnston\nmanager , political & sovereign risk\nenron north america\n713 - 853 - 9934", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.162+0000", "entityId": 8460, "properties": {"text": "Subject: re :\ncheers vince\nsee you there .\nsimon\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : simon turner\ncc : vince . j . kaminski @ enron . com ;\nvkaminski @ aol . com\ndate : fri 29 september 2000 3 : 28 : pm\nsubject : re :\n>\n> simon ,\n>\n> i shall bring a floppy to paris .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" simon turner \" on 09 / 29 / 2000 10 : 13 : 47 am\n>\n> please respond to \" simon turner \"\n>\n> to :\n> cc :\n> subject : re :\n>\n>\n> vince\n>\n> this works .\n>\n> are you attaching your presentation for next week ? ?\n>\n> thanks\n>\n> simon\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com\n> to : simon @ localbloke . freeserve . co . uk\n> cc : vince . j . kaminski @ enron . com\n> date : wed 27 september 2000 5 : 04 : pm\n>\n>\n> > test\n> >\n> > vince kaminski\n> >\n> >\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.167+0000", "entityId": 8461, "properties": {"text": "Subject: electricity prices\nvince ,\nplease find attached electricity prices file , let me know if you need any\nadditional information .\nsincerely , elena", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.172+0000", "entityId": 8462, "properties": {"text": "Subject: re :\nsimon ,\ni shall bring a floppy to paris .\nvince\n\" simon turner \" on 09 / 29 / 2000 10 : 13 : 47 am\nplease respond to \" simon turner \"\nto :\ncc :\nsubject : re :\nvince\nthis works .\nare you attaching your presentation for next week ? ?\nthanks\nsimon\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : simon @ localbloke . freeserve . co . uk\ncc : vince . j . kaminski @ enron . com\ndate : wed 27 september 2000 5 : 04 : pm\n> test\n>\n> vince kaminski\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.177+0000", "entityId": 8463, "properties": {"text": "Subject: re : informs national conference at san antonio\nvince ,\ncould you please send me the title and a 50 - word abstract of your\npresentation by the end of today ? i ' d like to forward them to the\norganizer as soon as possible so that we could make it into the printed\nconference program . thanks .\nshijie\non thu , 28 sep 2000 vince . j . kaminski @ enron . com wrote :\n>\n> shijie ,\n>\n> i would be interested in attending and giving a presentation .\n>\n> this would be also a good opportunity for both of us to meet\n> and discuss the plans for closer cooperation .\n>\n> vince\n>\n>\n> shijie deng on 09 / 25 / 2000 01 : 20 : 59 am\n>\n> to : vince kaminski\n> cc : shijie deng\n> subject : informs national conference at san antonio\n>\n>\n>\n> hi vince ,\n>\n> i ' ll be organizing a session at the informs national meeting in san\n> antonio ( nov 5 - 8 , 2000 , http : / / www . informs . org / conf / sanantonio 2000 ) on\n> modeling price volatility in electricity markets or financial engineering\n> approaches . i ' m just wondering if you or some member of your research\n> group would be interested in giving a presentation there . please let me\n> know . thanks .\n>\n> best wishes ,\n>\n> shijie\n>\n> shi - jie deng\n> assistant professor\n> school of isye\n> georgia institute of technology\n>\n> office phone : ( 404 ) 894 - 6519\n> e - mail : deng @ isye . gatech . edu\n> home page : http : / / www . isye . gatech . edu / ~ deng\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.182+0000", "entityId": 8464, "properties": {"text": "Subject: indication dates for sharad ' s visit\nhi vince ,\nhaving discussed with sharad , we think it would make sense for sharad to go\nto houston for a few weeks starting at the end of october . this would\noverlap with ben ' s visit in november and so some alternative arrangement\nwould have to be made for accommodation . if he goes after ben then there\nwill not be much time before the holidays meaning it would be left until\nearly next year . please let us know if these dates work for you , and if so\nthen we can talk about accommodation arrangements thereafter .\nout : sat 21 st october\nreturn : saturday 16 th december\nregards ,\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.187+0000", "entityId": 8465, "properties": {"text": "Subject: re : our workshop\nhelyette ,\nsorry for not getting back to you earlier .\nmy schedule was quite crazy over the last few days .\ni shall be in london on sunday meeting my group for dinner at 7 : 30 . can i\ncall you around\n6 : 00 - 6 : 30 ?\nvince\np . s . you can send a reply to my aol address .\nvince\ngemanix @ aol . com on 09 / 29 / 2000 11 : 27 : 51 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : our workshop\ndear vince ,\nour workshop has already 20 registered delegates ,\nwhich is very good given the french power situation .\nmoreover , french people tend to be fairly educated\nand we should coordinate a little bit .\ni am leaving in 30 minutes for 2 days . can we talk on sunday\nat 7 or 8 p . m my time ? my 2 numbers will be\n33 1 46040110 or 33 6 08074200\nalex would agree to speak for a while as we did in francfort .\nkarla sent me a proposal for the escrow problem . i had a\nfurther question in your direction regarding \" system support \" .\nkarla , as you know , would kindly like to wrap up the contract\nbefore moving to a new department and i will do my very\nbest to satisfy her wish and your feasible requests .\nkind regards\nhelyette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.192+0000", "entityId": 8466, "properties": {"text": "Subject: re : enron / stanford program\nnick ,\ndinner on sunday would work for me . i shall stay\nin the bay area till monday morning .\nvince\nnick bambos on 09 / 28 / 2000 08 : 33 : 38 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : enron / stanford program\nhi vince ,\ni am on the technical program committee of the infocom 2001 conference ,\nand we are meeting in new york city on saturday , october 14 th , to select\npapers for the conference program . i ' m leaving stanford on friday and\ngetting back on sunday .\nit might be a possibility to have dinner together on sunday , if that would\nwork for you . in that case i would have to reschedule my flight to land\nin sfo earlier than i ' m currently scheduled to land .\nwould dinner on sunday work for you ? any chance we can meet monday for\nlunch ?\ni look forward to seeing you .\nbest regards ,\nnick\nvince . j . kaminski @ enron . com wrote :\n>\n> nick ,\n>\n> i shall be in stanford oct 14 - 15 , visiting my family .\n> i would be glad to meet you ( and possibly giuseppe - your call ) for lunch .\n> please , let mer know if you are free on one of these days . saturday would\n> work better for me .\n>\n> vince\n>\n> nick bambos on 09 / 21 / 2000 02 : 09 : 46 pm\n>\n> to : stinson . gibner @ enron . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : enron / stanford program\n>\n> stinson ,\n>\n> great ! i ' m looking forward to a very productive collaboration .\n> i ' ll immediately start doing giuseppe ' s papers , for him to work\n> on the enron / stanford program .\n>\n> many thanks to you and vince , and i hope to see you soon at stanford\n> or enron . if i remember correctly , vince is visiting stanford in\n> october .\n>\n> best regards ,\n>\n> nick\n>\n> stinson . gibner @ enron . com wrote :\n> >\n> > nick ,\n> >\n> > i spoke with paul racicot , head of trading for ebs , north america this\n> > morning . he said that he is happy to send the $ 100 , 000 for your program\n> > from his budget . i have forwarded to him the draft letter to accompany\n> > the funds and will try to follow up to make sure that the money is sent\n> > promptly .\n> >\n> > - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.197+0000", "entityId": 8467, "properties": {"text": "Subject: re : hi :\nzeigham ,\nmike roberts from my group will help you .\nvince\non 09 / 22 / 2000 07 : 14 : 37 pm\nto :\ncc :\nsubject : hi :\nhi vince :\nthis zeigham khokher at the university of texas at austin , finance\ndepartment .\n?\ni need some publicly available data that unfortunately is not available\nhere . ? it is basically the historical prices for price of oil , gas and gold\nfutures contracts and options .\n?\nagain the data is strictly public info and not proprietary at all . ? let me\nknow if there is a central data person at enron who would be able to help . ?\nall help will be of course gratefully acknowledged .\n?\nhope all is well , i hear you will be giving a talk at ut this fall ? and look\nforward to seeing you then .\n?\nregards\nzeigham\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.202+0000", "entityId": 8468, "properties": {"text": "Subject: re : part - time work\ncantekin\nwe shall get back to you when i return from europe in a week .\nvince\n\" cantekin dincerler \" on 09 / 25 / 2000 12 : 46 : 51 pm\nplease respond to\nto :\ncc :\nsubject : re : part - time work\nvince ,\ni have received the full - time offer package from associate & analyst program\nlast week . apparently they have pretty tight deadlines . because of a certain\nclause in the contract , i may have to give them an answer by october 16 th .\nsince we discussed this before i left enron , i felt it would be a good idea\nto inform you of the recent developments .\ni am looking forward to hearing from you soon regarding both part - time and\nfull - time employment opportunities with the research group .\nbest ,\n- - - - - - - - - oooo - - - - - oooo - - - - - - - - - -\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\ncell : ( 512 ) 680 - 5355\nhttp : / / uts . cc . utexas . edu / ~ cantekin\n- - - - - - - - - - - - - oooo - - - - - oooo - - - - - - - - - -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.211+0000", "entityId": 8469, "properties": {"text": "Subject: departure of grant masson\nthe research group :\nit is with a deep sense of regret that i announce that grant masson will be\nleaving the research group and enron , effective today .\ngrant has been a very important part of the research group ' s growth and\nstability within enron and he will be deeply missed .\nwe wish him the very best in his new venture and want to send him off with\nall the \" good \" wishes and support that he deserves . however , since i\nwill be out of town all next week , we will postone the \" good luck and\nbest wishes \" party for grant until sometime within the next 3 weeks . an\nannouncement will be forthcoming at a later date .\nplease take a minute to wish grant the \" best \" .\nsincerely ,\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.219+0000", "entityId": 8470, "properties": {"text": "Subject: departure of grant masson\nthe research group :\nit is with a deep sense of regret that i announce that grant masson will be\nleaving the research group and enron , effective today .\ngrant has been a very important part of the research group ' s growth and\nstability within enron and he will be deeply missed .\nwe wish him the very best in his new venture and want to send him off with\nall the \" good \" wishes and support that he deserves . however , since i\nwill be out of town all next week , we will postone the \" good luck and\nbest wishes \" party for grant until sometime within the next 3 weeks . an\nannouncement will be forthcoming at a later date .\nplease take a minute to wish grant the \" best \" .\nsincerely ,\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.224+0000", "entityId": 8471, "properties": {"text": "Subject: biliana ' s resume\ngeynille ,\ni understand you are in charge of recruiting at the uofh . i am forwarding to\nyou the resume\nof one of the students of the university of houston .\nshe is involved with the international organization called aiesec and i was\nmost\nimpressed by her organizational skills and professional attitude . i used\nto work as a volunteer for this organization many years ago and i am\nstill helping their local chapter .\nas far as i know , she signed up for an interview with enron .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 09 / 29 / 2000\n02 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbiliana pehlivanova on 09 / 28 / 2000 06 : 02 : 20 pm\nto : vkamins @ enron . com\ncc :\nsubject : biliana ' s resume\nmr . kaminski ,\nthank you for referring me to your recruitment\nrepresentative .\nattached is my resume . i would appreciate you letting\nme know the name of the hr person whom i can folow up\nwith .\nbest regards ,\nbiliana\n= = = = =\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nbiliana pehlivanova\nvice president of incoming exchange\naiesec houston\n713 743 - 4927\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ndo you yahoo ! ?\nyahoo ! photos - 35 mm quality prints , now get 15 free !\nhttp : / / photos . yahoo . com /\n- biliana ' s resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.229+0000", "entityId": 8472, "properties": {"text": "Subject: vacation\nvince :\ni would like to take a day of vacation next friday , october 6 th if it ok .\nanita will be here .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.233+0000", "entityId": 8473, "properties": {"text": "Subject: fwd : abstract\nreturn - path :\nfrom : vkaminski @ aol . com\nfull - name : vkaminski\nmessage - id :\ndate : sun , 1 oct 2000 07 : 40 : 46 edt\nsubject : abstract\nto : deng @ isye . gatech . edu\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" part 2 _ 15 . 9 e 45 a 9 f . 27087 cbe _ boundary \"\nx - mailer : aol 3 . 0 16 - bit for windows sub 86\nshijie ,\ni am sending you the abstract for my informs presentation .\nvince\n* * * * *\nthe last three years were characterized by exceptionally high volatility of\nthe power prices in the us markets . the market developments have created a\nnumber of unique challenges for energy industry economists . one immediate\nquestion we have to answer is how to measure volatility of energy prices .\nalthough we can all agree that the prices in the power markets are\ncharacterized by high variability , the traditional measures used in financial\neconomics ( annualized standard deviation of log price returns ) may not fit\nwell electricity prices . the second challenge is to explain the sources of\nhigh price volatility and to answer the question to what extent it can be\nattributed to problems that can be addressed in the long run . such problems\ninclude flaws in market design that allow some market participants to abuse\nmarket power , limited availability and / or unequal access to transmission ,\ntemporary shortages of generation capacity . some factors underlying high\nvolatility of electricity prices may be of permanent nature and may be a\nnecessary price to pay for increased market efficiency and expanded customer\nchoice .\n- informs . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.239+0000", "entityId": 8474, "properties": {"text": "Subject: re : informs abstract ( fwd )\nshijie ,\nadditional changes .\nabstract :\nthe power market developments in the us have created several unique\nchallenges for energy industry economists . we discuss the major factors\nunderlying\nthe exceptionally high volatility of electricity prices . we feel that some of\nthem may reflect the flaws in power pools design and incomplete transition to\nfully deregulated markets in\ngeneration and transmission .\nthe title is fine .\nvince\nshijie deng on 10 / 01 / 2000 07 : 47 : 53 pm\nto : vkamins @ enron . com\ncc :\nsubject : re : informs abstract ( fwd )\n- - - - - - - - - - forwarded message - - - - - - - - - -\ndate : sun , 1 oct 2000 14 : 29 : 20 - 0400 ( edt )\nfrom : shijie deng\nto : vkaminski @ aol . com\ncc : shijie deng\nsubject : re : informs abstract\nvince ,\nthanks for the abstract ! for the purpose of the conference program\nlisting , the conference organizers need a title and an abstract which is\nlonger than 50 words . based on the abstract that you sent me , i took the\nliberty to make up a title and the 50 - word abstract ( attached below ) .\nplease make changes as you feel necessary and send them back to me . i ' ll\nsend them out to the organizers once i get your confirmation on this .\nbest ,\nshijie\ntitle : current challenges in modeling power price volatility\nauthor : dr . vince kaminski , head of quantitative research , enron capital &\ntrade resources\nabstract :\nthe power market developments in the us have created several unique\nchallenges for energy industry economists . we discuss the major factors\nunderlying\nthe exceptionally high volatility of electricity prices . we feel that some of\nthem may be a necessary price to pay for increased market efficiency and\nexpanded customer choice .\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng\non sun , 1 oct 2000 vkaminski @ aol . com wrote :\n> shijie ,\n>\n> i am sending you the abstract for my informs presentation .\n>\n> vince\n>\n>\n> * * * * *\n>\n>\n> the last three years were characterized by exceptionally high volatility of\n> the power prices in the us markets . the market developments have created a\n> number of unique challenges for energy industry economists . one immediate\n> question we have to answer is how to measure volatility of energy prices .\n> although we can all agree that the prices in the power markets are\n> characterized by high variability , the traditional measures used in\nfinancial\n> economics ( annualized standard deviation of log price returns ) may not fit\n> well electricity prices . the second challenge is to explain the sources of\n> high price volatility and to answer the question to what extent it can be\n> attributed to problems that can be addressed in the long run . such problems\n> include flaws in market design that allow some market participants to abuse\n> market power , limited availability and / or unequal access to transmission ,\n> temporary shortages of generation capacity . some factors underlying high\n> volatility of electricity prices may be of permanent nature and may be a\n> necessary price to pay for increased market efficiency and expanded customer\n> choice .\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.244+0000", "entityId": 8475, "properties": {"text": "Subject: re : informs abstract ( fwd )\n- - - - - - - - - - forwarded message - - - - - - - - - -\ndate : sun , 1 oct 2000 14 : 29 : 20 - 0400 ( edt )\nfrom : shijie deng\nto : vkaminski @ aol . com\ncc : shijie deng\nsubject : re : informs abstract\nvince ,\nthanks for the abstract ! for the purpose of the conference program\nlisting , the conference organizers need a title and an abstract which is\nlonger than 50 words . based on the abstract that you sent me , i took the\nliberty to make up a title and the 50 - word abstract ( attached below ) .\nplease make changes as you feel necessary and send them back to me . i ' ll\nsend them out to the organizers once i get your confirmation on this .\nbest ,\nshijie\ntitle : current challenges in modeling power price volatility\nauthor : dr . vince kaminski , head of quantitative research , enron capital &\ntrade resources\nabstract :\nthe power market developments in the us have created several unique\nchallenges for energy industry economists . we discuss the major factors\nunderlying\nthe exceptionally high volatility of electricity prices . we feel that some of\nthem may be a necessary price to pay for increased market efficiency and\nexpanded customer choice .\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng\non sun , 1 oct 2000 vkaminski @ aol . com wrote :\n> shijie ,\n>\n> i am sending you the abstract for my informs presentation .\n>\n> vince\n>\n>\n> * * * * *\n>\n>\n> the last three years were characterized by exceptionally high volatility of\n> the power prices in the us markets . the market developments have created a\n> number of unique challenges for energy industry economists . one immediate\n> question we have to answer is how to measure volatility of energy prices .\n> although we can all agree that the prices in the power markets are\n> characterized by high variability , the traditional measures used in\nfinancial\n> economics ( annualized standard deviation of log price returns ) may not fit\n> well electricity prices . the second challenge is to explain the sources of\n> high price volatility and to answer the question to what extent it can be\n> attributed to problems that can be addressed in the long run . such problems\n> include flaws in market design that allow some market participants to abuse\n> market power , limited availability and / or unequal access to transmission ,\n> temporary shortages of generation capacity . some factors underlying high\n> volatility of electricity prices may be of permanent nature and may be a\n> necessary price to pay for increased market efficiency and expanded customer\n> choice .\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.249+0000", "entityId": 8476, "properties": {"text": "Subject: abstract\nshmuel ,\nthis is the abstract for my presentation on the 23 rd of october .\ni am in london and paris this week . i can be reached at my\nprivate e - mail address vkaminski @ aol . com .\nplease , feel free to suggest modifications to the abstract .\nvince\n> the last three years were characterized by exceptionally high volatility of\n> the power prices in the us markets . the market developments have created a\n> number of unique challenges for energy industry economists . one immediate\n> question we have to answer is how to measure volatility of energy prices .\n> although we can all agree that the prices in the power markets are\n> characterized by high variability , the traditional measures used in\nfinancial\n> economics ( annualized standard deviation of log price returns ) may not fit\n> well electricity prices . the second challenge is to explain the sources of\n> high price volatility and to answer the question to what extent it can be\n> attributed to problems that can be addressed in the long run . such problems\n> include flaws in market design that allow some market participants to abuse\n> market power , limited availability and / or unequal access to transmission ,\n> temporary shortages of generation capacity . some factors underlying high\n> volatility of electricity prices may be of permanent nature and may be a\n> necessary price to pay for increased market efficiency and expanded customer\n> choice .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.254+0000", "entityId": 8477, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 pqqca\norder for : vince j kaminski\nmpl 600 microportable projector - $ 3910 -\nenron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.258+0000", "entityId": 8478, "properties": {"text": "Subject: re : joint probabilities\nbob -\ni ' ve edited our numbers a bit on the azurix analysis and would like you to\nre - run the joint probabilities tables .\nplease note that i ' ve got 2 cases in the model now - an optimistic case and a\npessimistic case . i hope you can run both cases . ( you will need to toggle\nfor case 1 or 2 - real complicated stuff ! ! )\nplease keep everything else the same ( ie , the currency probabilities , rab\nprobabilities , etc . )\nthanks for your help .\nmichael anderson\n646 - 9666", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.263+0000", "entityId": 8479, "properties": {"text": "Subject: restricted list\nneither ena / rac / egf employees nor family members or others living in their\nhousehold or financially dependent on the ena / rac / egf employee may purchase\nor sell securities of any entity ( or derivatives thereof ) listed on the\nrestricted list for your or their personal or related accounts or recommend\nthe purchase or sale of such securities to any person , except with the prior\napproval of the compliance department in consultation with the ena legal\ndepartment .\nin addition to the trading restrictions above , should you at any time possess\nnon - public material information about any public company , you , your family\nmembers and anybody that is financially dependent on you , are restricted from\ntrading in that issue , and you may not disclose the non - public material\ninformation to anyone that does not have a business need to know .\ncompany name stock symbol\n3 tec energy corp . tten\nactive power acpw\nadrian resources adrrf\nbeau canada exploration ltd bau cn\nbelco oil & gas corporation bog\nbonus resource services corp bou\nbrigham exploration bexp\ncanfibre group ltd . cfgl\ncarrizo oil & gas inc . crzo\ncrown energy croe\ncynet , inc . cyne\ncypress energy cyz\nfirstworld communications inc . fwis\nfuelcell energy , inc . fcel\nhanover compressor co . hc\nice drilling enterprises inc . idf\nindustrial holdings , inc . ihii\ninland resources , inc . inln\nkafus environmental industries , inc . ks\nnakornthai strip mill public co ltd nsm set\npaladin resources plc plr ld\nparadigm geophysical pgeof\nplace resources , inc . plg cn\nqueen sand resources , inc . qsri\nquicksilver resources inc . kwk\nsaxon petroleum , inc . sxn cn\nsouthwest royalties swroy\nstartech seh cn\nsyntroleum corp . synm\ntejon ranch corp . trc\ntetonka drilling tdi\ntranscoastal marine services , inc . tcms\nthe restricted list is solely for the internal use of ena / rac / egf . no one\nmay engage in discussions regarding whether a security is or is not on the\nrestricted list with persons outside ena / rac / egf without specific clearance\nfrom the compliance department in consultation with the ena legal department .\nin addition to the above , you are reminded that pursuant to enron corp . ' s\nrisk management policy ( \" policy \" ) , no ena / rac / egf employee may engage in the\ntrading of any \" position \" ( \" position \" means any commodity , financial\ninstrument , security , equity , financial asset or liability that are\nauthorized for trading in\nthe\npolicy for the benefit of any party other than ena / rac / egf , whether for\nhis / her own account or the account of any third party , where such position\nrelates to ( i ) any commodity , financial instrument , security , equity ,\nfinancial asset or liability which falls within such employee ' s\nresponsibility at ena / rac / egf or ( ii ) any energy commodity .\nthe prohibitions listed above do not replace or modify the policies set forth\nin ena ' s policies and procedures regarding confidential information and\nsecurities trading , enron corp . ' s risk management policy , or enron corp . ' s\nconduct of business affairs . should you have any questions regarding the\nabove , please contact me at ext . 31939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.268+0000", "entityId": 8480, "properties": {"text": "Subject: 2001 budget\ni need your help . . . i did a quick comparison for the 2000 and 2001 budget\nand i am showing a significant increase from last year . did we have an\nincrease in headcount ? i do not know your actual budget for 2000 . i used\nthe information for the last 5 months of 2000 budget to estimate for the year\n( see 2000 budget tab in the attached file ) . the attached file contains the\nfollowing tabs :\nbudget vs budget comparison of 2000 vs 2001\nallocation allocation - please allocate the rest of the 21 . 7 % to ena\n2000 budget estimated 2000 budget based on the last 5 months information\nresearch 2001 budget\nthe calculation for taxes and benefits does not equal to the calculation in\nyour template ( corp ) . plus , i have to add a & a overhead cost that corp will\nbill us for a & a program ( line 78 ) . can we meet to discuss the allocation to\nena and the increase in plan ? i am open all week except for wednesday\nbetween 10 and 11 . thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.274+0000", "entityId": 8481, "properties": {"text": "Subject: re : confirmation of meeting\ni ' ll probably be in houston sometime in the next couple of months , otherwise\nif\nyou let me know when you ' ll be in london we ' ll rearrange for then . . .\nhope to meet up eventually !\npaul\nto : paul e . day\ncc :\ndate : 02 / 10 / 2000 11 : 28\nfrom : vince . j . kaminski @ enron . com\nsubject : re : confirmation of meeting\npaul ,\nsorry for the late notice . please , let me know when you are coming to\nhouston .\ni shall be again in london sometimes in november .\nvince\npaul . e . day @ uk . arthurandersen . com on 10 / 02 / 2000 02 : 29 : 57 am\nto : shirley . crenshaw @ enron . com\ncc : vince . j . kaminski @ enron . com , wendy . dunford @ uk . arthurandersen . com\nsubject : re : confirmation of meeting\ni would very much like to meet vince , unfortunately i am in back to back\nmeetings all day today . maybe we could rearrange next time vince is in\nlondon\nor i am in houston .\nregards\npaul\nto : paul e . day\ncc :\ndate : 29 / 09 / 2000 17 : 52\nfrom : shirley . crenshaw @ enron . com\nsubject : re : confirmation of meeting\npaul :\nfyi .\nregards ,\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 29 / 2000\n11 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n09 / 29 / 2000 11 : 51 am\nto : wendy . dunford @ arthurandersen . com @ enron\ncc :\nsubject : re : confirmation of meeting ( document link : shirley crenshaw )\nwendy :\ni am so sorry for the late notice , but vince will be in london for 1 day\nonly ,\nmonday , october 2 nd . he has had some time freed up and if paul and\njulian could meet with him , they can call him at the grosvenor house ,\n870 - 400 - 8500 . his morning is already full , but lunch , dinner or afternoon\nwould work .\nregards ,\nshirley\nwendy . dunford @ arthurandersen . com on 09 / 18 / 2000 10 : 14 : 51 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : confirmation of meeting\nhi shirley\nthanks for getting back to me .\nregards\nwendy\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if\nyou\nare not the addressee indicated in this message ( or responsible for\ndelivery of\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender\nby\nreply email . please advise immediately if you or your employer do not\nconsent to\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of\nmy\nfirm shall be understood as neither given nor endorsed by it .\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if\nyou\nare not the addressee indicated in this message ( or responsible for\ndelivery of\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender\nby\nreply email . please advise immediately if you or your employer do not\nconsent to\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of\nmy\nfirm shall be understood as neither given nor endorsed by it .\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.279+0000", "entityId": 8482, "properties": {"text": "Subject: re : confirmation of meeting\ni would very much like to meet vince , unfortunately i am in back to back\nmeetings all day today . maybe we could rearrange next time vince is in london\nor i am in houston .\nregards\npaul\nto : paul e . day\ncc :\ndate : 29 / 09 / 2000 17 : 52\nfrom : shirley . crenshaw @ enron . com\nsubject : re : confirmation of meeting\npaul :\nfyi .\nregards ,\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 09 / 29 / 2000\n11 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n09 / 29 / 2000 11 : 51 am\nto : wendy . dunford @ arthurandersen . com @ enron\ncc :\nsubject : re : confirmation of meeting ( document link : shirley crenshaw )\nwendy :\ni am so sorry for the late notice , but vince will be in london for 1 day\nonly ,\nmonday , october 2 nd . he has had some time freed up and if paul and\njulian could meet with him , they can call him at the grosvenor house ,\n870 - 400 - 8500 . his morning is already full , but lunch , dinner or afternoon\nwould work .\nregards ,\nshirley\nwendy . dunford @ arthurandersen . com on 09 / 18 / 2000 10 : 14 : 51 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : confirmation of meeting\nhi shirley\nthanks for getting back to me .\nregards\nwendy\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if\nyou\nare not the addressee indicated in this message ( or responsible for\ndelivery of\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender\nby\nreply email . please advise immediately if you or your employer do not\nconsent to\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of\nmy\nfirm shall be understood as neither given nor endorsed by it .\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.283+0000", "entityId": 8483, "properties": {"text": "Subject: re : hi :\nthanks vince :\ncould you give me mike roberts contact information .\nzeigham\nzeigham khokher\ndoctoral candidate finance\nuniversity of texas at austin\nzkhokher @ mail . utexas . edu\n512 - 695 - 7164 ( cell )\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : friday , september 29 , 2000 3 : 33 pm\nsubject : re : hi :\nzeigham ,\nmike roberts from my group will help you .\nvince\non 09 / 22 / 2000 07 : 14 : 37 pm\nto :\ncc :\nsubject : hi :\nhi vince :\nthis zeigham khokher at the university of texas at austin , finance\ndepartment .\ni need some publicly available data that unfortunately is not available\nhere . it is basically the historical prices for price of oil , gas and\ngold futures contracts and options .\nagain the data is strictly public info and not proprietary at all . let me\nknow if there is a central data person at enron who would be able to help .\nall help will be of course gratefully acknowledged .\nhope all is well , i hear you will be giving a talk at ut this fall and\nlook forward to seeing you then .\nregards\nzeigham", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.288+0000", "entityId": 8484, "properties": {"text": "Subject: re : joint probabilities\nmichael\nthe updated probabilities are attached . the probability of reaching any fx\ntimes rab multiple are the same as the original analysis . the probabilities\nof reaching a given stock price are lower than the original analysis in both\nthe optimistic and pessimistic cases because the debt levels are higher , and\nhence the stock value is lower for any fx - rab value .\nbob lee\nx 35163", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.293+0000", "entityId": 8485, "properties": {"text": "Subject: reporting lines\nvince\ni ' ve just had a chat with richard , who feels strongly that the natural\nsynergies between , and independence of , research and structuring will be best\nserved if i report to tani .\ni expressed my concerns that i want to keep a strong link with :\n1 . accountability to the trader sense of urgency , and\n2 . traders ' willingness to spend money where necessary .\nrichard suggested that we have a strong \" dotted line \" of reporting in to him ,\nand that he will be available to support these areas . we ' ll meet regularly\nto keep richard in the loop .\ni filled richard in on the fact that i wish to change the nature , not just\nthe size , of the research group , which will involve significant changes in\nheadcount and investment in hardware / software .\ni ' ve no doubt that my main concerns of accountability and budget support will\nbe met whether i report to richard formally or informally .\ntani has indicated that she ' d be prepared to have research report to her if\nrequired .\nall the best ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.298+0000", "entityId": 8486, "properties": {"text": "Subject: re : university of texas conference on energy finance , february 2001\nvince ,\ngreetings .\ni write at this time to follow up on your kind intercession on our behalf\nwith jeff skilling ' s office regarding his participation in our spring\nconference . we have secured hotel rooms at the radisson hotel , will\nshortly have to provide a guarantee on those rooms , and would therefore\nlike to ascertain his participation as keynote speaker the evening of thur .\n2 / 22 .\nhope all is well . see you oct . 11 th , if not sooner . best ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.302+0000", "entityId": 8487, "properties": {"text": "Subject: hello from charles shen at williams co .\ndear vince :\nhow are you ? i am not sure whether you still remember\nme , we met in a conference last year in houston . after\nhaving been working for williams for about two years ,\nnow i am ready to make a move . i have heard enron is a\ngreat company , i am wondering whether there is any\nopportunity for me , either in research group or in\nstructure group\nhere is brief description about myself : right after i\ngot my ph . d . on finance and econometrics from duke\nuniversity in 1998 , i joined williams energy trading\ncompany as a quantitative analyst . now i am lead quant\nand in charge of the quantitative research group with\n7 highly talented people . i have done extensive\nresearch and modeling about electricity ,\nload - following deal and tolling deals .\nif you need any additional information , please feel\nfree to call me at 918 - 409 - 4308 . i look forward to\nhearing from you soon , thank you .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! photos - 35 mm quality prints , now get 15 free !\nhttp : / / photos . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.307+0000", "entityId": 8488, "properties": {"text": "Subject: re : abstract\nthanks\nvince . this is good but i also need a title . it would be good if you can as\npart of the talk present an example of a technical problem addressed by your\ngroup describing the problem and the general methodology employed or\ndeveloped . you can also start with an introduction about your organization\nand the program .\nshmuel\nshmuel s . oren , professor\ndept . of industrial engineering\nand operations research\n4117 etcheverry hall\nuniversity of california\nberkeley , ca 94720 - 1777\ne - mail : oren @ ieor . berkeley . edu\nphone : ( 510 ) 642 - 1836 or 5484\nfax : ( 510 ) 642 - 1403\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ;\nsent : monday , october 02 , 2000 6 : 44 am\nsubject : abstract\n> shmuel ,\n>\n> this is the abstract for my presentation on the 23 rd of october .\n> i am in london and paris this week . i can be reached at my\n> private e - mail address vkaminski @ aol . com .\n>\n> please , feel free to suggest modifications to the abstract .\n>\n>\n>\n> vince\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> > the last three years were characterized by exceptionally high volatility\n> of\n> > the power prices in the us markets . the market developments have created\n> a\n> > number of unique challenges for energy industry economists . one\nimmediate\n> > question we have to answer is how to measure volatility of energy\nprices .\n> > although we can all agree that the prices in the power markets are\n> > characterized by high variability , the traditional measures used in\n> financial\n> > economics ( annualized standard deviation of log price returns ) may not\n> fit\n> > well electricity prices . the second challenge is to explain the sources\n> of\n> > high price volatility and to answer the question to what extent it can\nbe\n> > attributed to problems that can be addressed in the long run . such\n> problems\n> > include flaws in market design that allow some market participants to\n> abuse\n> > market power , limited availability and / or unequal access to\ntransmission ,\n> > temporary shortages of generation capacity . some factors underlying high\n> > volatility of electricity prices may be of permanent nature and may be a\n> > necessary price to pay for increased market efficiency and expanded\n> customer\n> > choice .\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.311+0000", "entityId": 8489, "properties": {"text": "Subject: wharton entrepreneurship conference info .\nthis looks like a great opportunity for us . jeff\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffrey a shankman / hou / ect on 10 / 04 / 2000\n05 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkristin gandy @ enron\n10 / 04 / 2000 02 : 14 pm\nto : jeffrey a shankman / hou / ect @ ect\ncc :\nsubject : wharton entrepreneurship conference info .\ndo you want to participate in this event ?\nkristin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kristin gandy / na / enron on 10 / 04 / 2000\n02 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncassandra santos on 09 / 29 / 2000 01 : 04 : 21 pm\nto : celeste . roberts @ enron . com\ncc : kristin . gandy @ enron . com\nsubject : wharton entrepreneurship conference info .\ndear celeste and kristin :\ni am re - sending information regarding the wharton entrepreneurship\nconference and the opportunities to sponsor the conference as well as\nparticipate in the expo . we are expecting the conference to double in\nsize with more than 1000 attendees . in addition , we would like to\nemphasize that the spirit of entrepreneurship is alive and well outside\nof the \" dot . com \" world including in large , innovative companies such as\nenron . we have already lined up some smash hit speakers including\nchristy jones of trilogy and pcorder as well as anita roddick of the\nbody shop . we would be very interested to have the participation of\nenron in the conferences as a sponsor or at the very least , a\nparticipant in our career expo .\nthank you very much for your time and consideration .\nsincerely ,\ncassandra santos\nco - chair , wharton entrepreneurship conference\n215 . 732 . 7940 h\n215 . 498 . 3243 w\n- resend enron . doc\n- fundraising packet 2000 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.317+0000", "entityId": 8490, "properties": {"text": "Subject: elena chilkina\nhi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.322+0000", "entityId": 8491, "properties": {"text": "Subject: briefing robert johnston on metals\nvince ,\nsorry , i was not able to take your call this morning , to avoid distractions i\nwas editing a technical coner article on ppp out of my office . last friday ,\ni called robert johnston immediately after you told me to contact him to\nbrief him on nonferrous metals . i let him know that i was scheduled to speak\nabout metals in our research meeting on october 12 th . i also talked with him\na few weeks ago that i would like to meet with him and scott tholan to brief\nthem on metals . robert did not arrange the meeting . i arranged a meeting\nfor 10 : 30 tomorrow to take them both through the metals fundametals speech .\nthe london metals confererence sounds great , since i have five years\nexperience in metals fundamental analysis and pricing , i would also like to\nattend . many of my new research group customers are asking for my expertise\nin this new business for enron . i could certainly help our customers better\nby getting the latest information on metals . please let me know if this is\nok with you .\nregards ,\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.326+0000", "entityId": 8492, "properties": {"text": "Subject: enron image 2000 video is here\nenron ' s image 2000 video is now available\nwe think you will like enron ' s new corporate image video , which can be used\nfor employees , customers , suppliers , government officials , and other\naudiences who want to know about enron . the video features ken lay , jeff\nskilling and joe sutton who discuss four key business initiatives :\nbroadband ; wholesale energy ; energy outsourcing services and enrononline .\nthe look and feel represents our people , culture and new branding .\nmooresource has a large supply of standard vhs ( also known as ntsc ) copies ,\nwhich is the format used in the u . s . and some international locations , and\ncopies in pal , which is the format used in the u . k . and in most european\nlocations . there also are special pal formats ( pal - m and pal - n ) available\nfor locations in south america .\nyou may use the order form below or , for those of you who prefer to order\nelectronically , you may do so from mooresource using the following item\nnumbers . if you aren ' t familiar with mooresource , please go\ntohttp : / / home . enron . com : 84 / imgctr / and click on the mooresource button .\ninstructions for ordering will be provided there . if you have questions\nabout using mooresource , contact michael shea at 713 / 853 - 5418 .\norder a copy today .\nitem # description price\n43162 image video - vhs $ 4 . 25\n43163 image video - pal $ 8 . 25\n43164 image video - pal / m $ 15 . 00\n43165 image video - pal / n $ 15 . 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.331+0000", "entityId": 8493, "properties": {"text": "Subject: request for training session\nfolks ,\ni am a vice president with enron , and have been with the company some 6 years\nnow . i was hired through enron associate pool , and started off by marketing\npower on the east coast with jim fallon . currently i am working in the india\nregion , looking into different ways to develop merchant type activities in\nindia , anticipating the start of trading activities some time in the future .\none of my challenges is to make the team in india aware of the type of\nsophisticated operations and processes that we have in place for trading\nactivities , as well as the range of products we have to offer .\ni have been in conversation with mike mcconnell and jeff shankman on the\nglobal products side , and are planning a session to acquaint the team in\nindia with activities in that group . similarly , on the power side , we have\nbeen interacting with john sherriff ' s team in london .\ni feel that it will be very beneficial for some of the team members to get\nacquainted with the processes on the power trading side in houston , and to\nget an idea of the rac process , the research side , the back - offices , as well\nas the trading operations here . similarly , the team there could present to\nyou the state of the market in india , and give you an idea of the type of\nopportunities there . i am therefore eliciting your support to put together a\nsession in houston where they can be acquainted with these functions , as well\nas the people responsible for them in the us . there are three people in the\ngroup who would benefit from this exposure . one of them is from the\nassociate pool , while the other two are people hired locally in india .\ni have already spoken with our coo , wade cline in this regard , and seek your\nsupport in putting together an agenda for such a session . please let me know\nwho i should contact within your groups to discuss this further .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.338+0000", "entityId": 8494, "properties": {"text": "Subject: a computer and internet connection for you and your family\nas you know , technology is critical to enron ; it drives our success and will\ncontinue to do so in the future . technology has helped enron create new\nbusinesses like enron broadband services and enron net works , and it is\nresponsible for applications such as enrononline and enroncredit . com . you \u0001 , ve\nseen what technology can do at work . now we want you and your family to\nrealize its benefits at home .\nwith that in mind , we are excited to let you know that we are introducing the\nclickathome\nprogram , which will give each employee a computer for use at home . where\ntechnology permits , we will also subsidize an internet connection . with the\nclick of a mouse , a home computer plus internet access will put a world of\ninternet knowledge at your family \u0001 , s fingertips .\nwe have just signed an agreement with dell computer corporation to provide\nthe computer hardware . we wanted to let you know about the program now in\ncase you and your family were considering the purchase or upgrade of a home\ncomputer or internet connection in the next few months . the scope of\nclickathome includes the following :\n? basic package : dell desktop computer with a high - speed processor , floppy\ndisk drive , mouse , speakers , monitor , modem , cd - rom drive and windows 2000\nsoftware . employees will have the option to receive a subsidized internet\nconnection , including broadband , where commercially available .\n? participation : this program will be available to active regular full - time\nand regular part - time employees of enron and its wholly owned subsidiaries ;\nhowever , employees of some enron companies ( portland general electric , eott ,\nenron facility services ) may not be able to participate due to legal ,\naccounting , tax , labor or business reasons . eligibility includes being\nemployed at the time of implementation .\n? timing : u . s . employee sign - up will begin in early 2001 , with delivery of\nthe equipment and internet connection to follow shortly thereafter . delivery\nof equipment to participating non - u . s . employees is targeted for late 2001 .\ndetails about this program are still being finalized . to address some of\nyour initial questions , we \u0001 , ve posted a question - and - answer document on\nhttp : / / clickathome . enron . com . we will schedule an espeak session in the near\nfuture where you will have an opportunity to ask questions . or , you can\nsubmit your questions and comments to clickathome @ enron . com .\nwe are excited to extend our investment in technology to you and your\nfamily . we believe this program takes communication at enron to a new level\nby creating endless possibilities for you to experience and participate in\nthe broadband internet revolution . it is just another reason why we believe\nenron is a great place to work .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.346+0000", "entityId": 8495, "properties": {"text": "Subject: london research intranet\nfelipe\nfollowing our discussion please close down all intranet access to the london\nresearch group site . inaccuracies have been found in the content which may\nhave implications for our trading operations . closing the site will force\ntraders to contact our group direct , ensuring only correct information is\npassed .\nthe site will be completely overhauled over the coming months , so i see\nlittle benefit in reinstating access to the site in the near future .\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.353+0000", "entityId": 8496, "properties": {"text": "Subject: confirming your attendance - oct . 19 / 20 - wharton\nvince ,\nwe are delighted that you , christie ( and possibly mark palmer ) will be\nattending our upcoming wharton impact conference on october 19 - 20 . the\nfinal agenda is enclosed ( below ) - please note - unless we hear otherwise\nfrom you , we will assume that you will be attending both the dinner on oct .\n19 and the conference on oct . 20 .\nthis very timely event has generated enormous interest . we look forward to\nyour participation , and hope you will find this to be a valuable\ninsight - building experience .\nplease call or e - mail if you have any questions about any aspect of the\nconference .\nalso - i ' ll look forward to hearing some stories of your exploits during\nyour recent trip to poland . must have been extremely interesting !\nbest regards ,\nmichael tomczyk\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nwinners and losers in the e - commerce shakeout\nthurs . oct . 19 ( dinner ) and fri . oct . 20 ( conference )\nagenda\nwinners and losers in the e - commerce shakeout\nthursday , october 19 , 2000 ( dinner )\nfriday , october 20 ( conference )\nthe wharton school - philadelphia , pa\njointly sponsored by the\nwilliam and phyllis mack center on managing technological innovation ,\nwharton school\nmarketing science institute\nwharton e - business initiative ( webi )\nconference themes & objectives\ne - commerce is heading inextricably and rapidly toward an inevitable\nshakeout and consolidation that tends to characterize every major new\nindustry . this impact conference bringstogether a distinguished group of\nindustry and academic leaders to discuss what is required to survive the\ne - commerce shakeout , and what it takes to be a \" winner \" when the shakeout\nhits , full - force .\nshakeouts are spawned in the boom - and - bust environment of hot emerging\nmarkets . an unsustainable glut of competitors is attacted by the\ncontagious enthusiasm for the emerging technology . as competition\nintensifies and falling prices put pressure on margins there is a wave of\nailures and mergers that removes the weaker players .\nfew ecommerce markets - - whether e - tailing online exchanges or others - - - will\nbe exempted from the forces that cause shakeouts . this conference will\ncombine lessons from markets that have experienced shakeouts , with the\nlatest thinking about the unique features of e - commerce , to identify\nsuccessful strategies for surviving a shakeout .\nquestions to be addressed include :\n- are the patterns seen in previous shakeouts of high technology markets\napplicable to ecommerce ? what are the early warning signs of an impending\nshakeout ?\n- which ecommerce markets are most susceptible to a shakeout ? will there\nbe single or multiple winners ?\n- which companies are likely to survive ? what strategies will the winners\nuse ?\nthere is controversy and uncertainty about which factors will most\ncontribute to prospects for survival . how important are first mover\nadvantages and building brand equity ? what do incumbents have to do to\nprevail ? which business models are most robust ? how important is the\nability to manage strategic partnerships ?\nthese issues will be addressed with a program that encourages active\ndialogue and interaction and includes speakers from industry , academia and\nwall street .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nagenda\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\ndinner co - author of the best - selling books net\ngain and net worth )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nconference - riday , october 20\n8 : 00 - 8 : 30 a\ncontinental breakfast and\ndavid reibstein , woodside prof . of marketing , wharton school and director ,\nmarketing science institute )\n11 : 30 - 12 : 15 p\ntechnology investing , 15 things that should be true\n( stephen j . andriole , senior vice president and chief technology officer ,\nsafeguard scientifics )\n12 : 15 - 1 : 30\nworking lunch\nparticipants will work in small groups . half the group will be asked to\nselect an ecommerce firm with a strong likelihood of winning and identify\nthe most important reasons for success ; the other half will be asked to do\nthe same for a firm that is likely to fail .\n1 : 30 - 2 : 15\nsmall group reports\n2 : 15 - 3 : 00\nfinding a winning strategy\n( norman drapeau , chief executive officer of mro . com )\n3 : 00 - 3 : 15 break\n3 : 15 - 4 : 00\nliving through a consolidation\n( harry smilow , previously chief executive officer of telebank which is now\npart of e * trade )\n4 : 00 - 4 : 45\na view from wall street\n( henry blodget , first vice president and senior internet / e - commerce\nanalyst , merrill lynch )\n4 : 45 - 5 : 00\nsum up - what have we learned ? what do we need to learn ?\n5 : 00 adjourn\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\ndirections to the event & accommodations :\nthe dinner will be held at the inn at penn which is located at 3600 sansom\nstreet . there is also an entrance on walnut street between 36 h and 37 th .\nthe conference will be held in steinberg - dietrich hall which is located on\nlocust walk on the wharton campus in philadelphia . from the airport or\ntrain station take a taxi to the intersection of 37 th street and walnut ,\nwalk left onto the campus ( there is a broad paved walkway leading into the\ncampus from that intersection ) . at the first intersection you will see a\nlife sized bronze status of ben franklin sitting on a park bench reading a\nnewspaper . turn left at this intersection and steinberg - dietrich hall is\nthe first building on the right . there is a broad entrance with several\ndoors . also , any student can direct you to this building . go inside and\ntake the staircase down to the right - - room 350 is on the lower ( basement )\nlevel .\naccommodations\novernight accommodations are available at the inn at penn which is across\nthe street from the campus ( tel 215 - 222 - 0200 - mention you are here for\nthe emerging tech conference on e - commerce shakeouts , to receive the\n$ 164 / night wharton room rate ) . please make your reservations early because\nthe inn is often fully booked . we have reserved a set of rooms for this\nevent .\nif you stay at another hotel in center city , most hotels ( rittenhouse ,\nlatham , ritz carlton ) are approximately 15 minutes by taxi from the campus .\nthere is also a sheraton approximately 3 blocks from the campus , on\nchestnut st .\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129\nwebsite : http : / / emertech . wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.358+0000", "entityId": 8497, "properties": {"text": "Subject: re : wharton finance conference sponsorship information\ni ' d be interested to see who else is sponsoring the conference and who the\nother panelists would be . since it is a first year conference , the success\nof it is highly dependent on the people who are pulling it together . since\nthe deadline on the sponsorship form is sept . 8 , they should be able to give\nus an indication of other participants . do you want me to call suresh to\nfind out - he ' s been emailing me every other day about how interested he is\nin working for ebs anyway . the timing of it is good - the week after\neveryone comes for super saturday . i ' d also be interested in what tom says .\ni ' d only do a gold sponsorship - i don ' t think we need or want to be on more\nthan 1 panel - either the corporate finance or sales and trading .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\njeffrey a shankman @ ect\n10 / 05 / 00 10 : 55 am\nto : kristin gandy / na / enron @ enron\ncc : michele nezi marvin / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect , mark palmer / corp / enron @ enron\nsubject : re : wharton finance conference sponsorship information\nit ' s not necessarily an either / or decision . michelle , do you think this is a\ngood program ? kristin , can you call tom piazze at wharton , and ask him what\nhe thinks about the importance of our participation in this ?\njeff\nkristin gandy @ enron\n10 / 05 / 2000 08 : 56 am\nto : jeffrey a shankman / hou / ect @ ect\ncc :\nsubject : wharton finance conference sponsorship information\nhere is another conference we can participate in . would you rather do this\nconference or the entrepreneurship conference ?\nkristin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kristin gandy / na / enron on 10 / 04 / 2000\n08 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" suresh balasubramanian \" on 10 / 04 / 2000 02 : 09 : 56 pm\nplease respond to\nto :\ncc :\nsubject : wharton finance conference sponsorship information\nhi kristin\ni am following up on our conversation earlier with respect to enron\nparticipating in the whartons finance conference and the evening\nreception known as bullish on finance .\ni think this forum will be a great opprotunity for enron to reach\nthe students interested in finance and it also provides a great platform\nto talk about enrons unique position in the global financial\ncommunity .\nplease do consider the option of sponsoring a panel at the gold level .\nit provides a great value and essentially a full panel \" ownership \" to\ntalk about enrons acitivities .\ni would like to touch base with you early next week to hear you thoughts\nand feedback on these proposals .\nlooking forward to a great conference participation .\nkind regards\nsuresh\nsuresh balasubramanian\nmba class of 2001 the wharton business school\nph # : 215 - 893 - 9491\n- financel . con . enron . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.362+0000", "entityId": 8498, "properties": {"text": "Subject: energy finance critiques\ndavid ,\nhere are the reviews of the ut energy finance program that you requested :\nfrom jennifer martinez ( mba class of 1999 , energy finance taken fall of\n1998 ) :\nthe energy finance program 2 years ago was very good , especially considering\nit was the first year of the program . there were a lot of guest speakers\nfrom various energy companies who gave us a lot of practical knowledge about\nthe energy industry through case studies , lectures , etc . basically , we\nlearned all the same finance concepts and tools as in the regular finance\nclasses , but all the cases and examples were energy - related . the professors\nwere good for the most part but didn ' t have a great deal of practical\nindustry experience . if i had to guess the reason for decreased\nparticipation in the program , i would probably say it is the professors .\nronn and titman are great but known as being very technical and\nquantitative . some students prefer less technical professors and classes\nthat aren ' t limiting to the energy industry . also , the fact that the class\nmeets for 3 hours twice a week may not be so appealing . other than those\nthings , i can ' t imagine why there has been such a drop in enrollment . i\nespecially don ' t understand why every single person didn ' t drop for enron . i\nwonder if it has something to do with international status . ? ? ?\nfrom john massey ( mba class of 1999 , energy finance taken fall of 1998 ) :\nbottom line -\nut business schools is great - investment fund - best activity available to\nstudents\nenergy finance program - fairly weak -\nit was a watered down version of the futures options class crossed with a\nweak finance appendage -\nthe finance teacher was pathetic - both a poor teacher , ignorant about\nindustry specific analysis , devoid of industry experience , rude to outside\nlectures ( from industry )\nkeith brown was the only educator that was any good and he only had a small\nportion of the class time -\nway to make better :\nget teachers with practical industry experience -\nmake it a seminar class - focus on case studies , lectures - given by people\nfrom industry -\npromote the class within the business school - i felt like ut did a poor job\nof internally ( to students ) promoting the class -\n- - - - - - - - - - -\nfrom ross mesquita ( mba class of 1999 , energy finance taken fall of 1998 ) :\nto be honest , a great majority of the coursework was not energy specific .\nwhen energy applications were presented , it seemed more like general finance\nquestions were reworded to include energy lingo . we had some very good\nspeakers , but for the most part , i did not feel like the 6 hours of class had\nenough energy focus . i assumed that this would get better as the program\nprogressed .\none reason that may account for the decline in enrollment is that energy\nfinance is a very specific focus . i would have probably not enrolled in the\nenergy finance program had it been available in my first year . i did not\nknow enough about energy at that time and i had returned to b - school to\nconsider several career options - - i . e . , investment banking , corporate\nfinance , entrepreneurship , marketing , etc . as a new mba student , i would not\nwant to narrow my window of opportunities to only energy companies .\nhere is my perspective and probably something that is true of many mbas - -\nmy interest in enron brought me to the energy industry and not vice versa .\n- - - - - - - - - -\nfrom billy braddock ( mba class of 1999 , energy finance taken fall of 1998 ) :\ni was a participant in the inaugural energy finance program in the fall of\n1998 . the primary positives to the class revolved around outside\npanels / instruction . for example , enron sent representatives on 2 separate\noccasions to discuss particular topics ( vince kaminski and gary hickerson ) .\nother notable speakers were jeff sandefer ( independent business consultant\nand e & p professional ) , the beacon group , and encap investments . another good\nspeaker was a professor from ut ' s school of engineering . he brought a good\nperspective as to the \" basics \" of the energy business .\nthe class was structured via a team - based instruction approach , with 3\nprofessors team - teaching a 6 - hour credit course . none of the 3 professors\nhad any product knowledge of the energy business . of the 3 professors , 2\nwere research focussed / tenured with little credibility in \" teaching . \" one of\nthe professors primary focus of research was fixed income , while the other 2\nwere investments and corporate finance , respectively .\nas is the case for ut ' s finance program in general , and energy finance in\nparticular , ut is in dire need of teaching professors ( as opposed to research\nprofessors ) that have the ability to convey finance with practical examples\nand at a level that can be more easily be understood by students without a\nfinance background . particular to the energy program , ut needs to have more\ninstruction from energy professionals ( such as the instructors used for\nenron ' s internal learning programs ( ie . derivatives classes , etc . ) .\n- - - - - - - - - - - - - - - - - - - - - - -\nfrom bryan williams ( mba class of 1999 , energy finance taken fall of 1998 ) :\ni participated in the first energy finance class offered in fall of 1998 , at\nthe university of texas .\nthe curriculum was understandably \u0001 & rough around the edges \u0001 8 as 1998 was the\nfirst year the energy finance course was offered . however , the instruction\nalso suffered as none of the instructors had any energy background to speak\nof ( the 6 - credit hour class was team taught by three tenured professors ) .\ntwo of the three professors have co - authored textbooks , and the third\nprofessor \u0001 , s claim to fame is fixed income . as a group , the three professors\nare research - heavy ( as opposed to industry focused ) , and the team - teaching\nformat did not incent any one of the profs to be personably accountable for\nthe success of the class .\nthat said , the instructors did a good job attracting some top notch outside\nspeakers . among them : vince\nkaminski & gary hickerson , both of enron . they also dedicated one class\nperiod to a video conference call with the beacon group , an energy consulting\ngroup that i believe was recently acquired by goldman .\njeff sandefer , an independent businessman , an entreprenuership instructor ,\nand one of the foremost experts in the e\n- there are some experienced , brand - name professors ( e . g . sheridan titman )\nteaching in the program ;\ncons :\n- the program should give the students more exposures to energy companies\nsuch as enron . specifically , it might need to help students link to the\ninterview oppurtunites from these energy companies such as enron ;\nfrom george huan ( mba class of 2000 , energy finance taken fall of 1999 ) :\ncompanies expect mba students to have both general management ( new ideas ) and\nanalytic ( quantative ) skills . energy industry is no exception .\nenergy finance program offers financial strategy and risk managements courses\nwhich fit in the insudtry need . however , these two courses are far from\nenough to help students understand the dynemic of industrial transformation\nand excitements and opportunities in this industry . other management and\nquantitive courses are needed to complete this program .\nmy suggestions :\n1 ) seminars or lectures about energy industry and energy companies . before\nstudents make their decisions , let them know : what ' s happening and what ' s\ngoing to happen in this industry ; what the companies are doing now ; who\nthey are looking for .\n2 ) management and / or analytical courses should be included . such as :\nstrategy , financial enginering and real option .\n3 ) more industry connections . presentations and discussions .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom charlie weldon ( mba class of 2000 , energy finance taken in fall of 1999 )\nmy experience in the energy finance program overall was a positive\nexperience . the most rewarding part of the class was the guest speakers\nbrought in during dr . titman ' s portion of the class . this part of the course\nis taught in the second half of the semester and consisted of ~ 10 case\nclasses all focusing on the energy industry . two of the cases were based on\nenron , and overall the case selection in my opinion was very appropriate and\nwell thought out . value added by the professor was less than from the\nspeakers and cases .\nthe first eight weeks of the course covered futures and options . nearly all\nof the examples and problems discussed pertained directly to the energy\nindustry and special emphasis was placed on increasing the student ' s\nunderstanding of the supply and demand dynamics in the power market . the use\nof options and futures for speculating and / or hedging was stressed on\nnumerous occasions and a decent attempt at explaining how to value a power\nplant project .\ni believe that the university energy finance faculty are trying to\ncontinuously make improvements to the program . however , i do not believe\nthat they are moving fast enough or necessarily down the right path to\nimprovement . there is a strong need for more practical based training on\nenergy derivatives similar to the course taught by paradigm here at enron .\nthe focus of the university teachers is quite theoretical , due in large part\nto their background . while the theoretical basis is crucial to understanding\nthe basics , the real value of such a program in my opinion is the effective\nbridging of the theoretical with the practical all in one course .\nuntil measures are taken to inject practicality from someone with extensive\nindustry experience , i believe the energy finance program will continue to\nunderdeliver on its objectives . additionally , i believe that the course\nstructure should be changed to eliminate the need of having 3 consecutive\nhours of classroom instruction .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.367+0000", "entityId": 8499, "properties": {"text": "Subject: re : implementing term - structure of correlations for power\ntanya ,\nwhile there is seasonal correlations in power , especially for np - 15\nand sp - 15 ( same region ) , the term structure of correlations can be input .\nhowever , the same correlation structure with similar periodicity may not hold\nbetween np - 15 and , say , rlb ( neepool ) , though one would imagine that\nrelationship would still be seasonal ( summer / winter ) , with greater noise .\neven if the correlational term structure is to be done for power , different\nrules would have to be inputted for different regions .\nnaveen\ntanya tamarchenko @ ect\n10 / 05 / 2000 10 : 42 am\nto : vladimir gorny / hou / ect @ ect , naveen andrews / corp / enron @ enron\ncc : kirstee hewitt / lon / ect @ ect , debbie r brackett / hou / ect @ ect , wenyao\njia / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : implementing term - structure of correlations for power\nvlady\n2 ) correlations are periodic with a period of 1 year ( this means we can use\n12 correlation matrices calculated from\nfirst 12 forward contracts and apply these matrices to other forward months ) ;\n3 ) using decay factor makes the curves a little smoother .\nimplementation of multiple correlation matrices will not affect the speed of\ncalculations in var model significantly .\nplease , give me your response ,\nthanks ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.371+0000", "entityId": 8500, "properties": {"text": "Subject: re : factor loadings for primary curves\ntanya ,\ni went through the comparisons for the liquids curves and the\nappearance of clear parallel shifts , etc , do begin to emerge when fewer\nforward prices are used . it looks sensible . i have passed the graphs over\nto the liquids people , and i have asked them to identify rough term structure\nmonths when illiquidity begins for these curves . it might coincide with your\nassumptions . i am surprised by brent and dubai , which should be wti - clones .\nnaveen\ntanya tamarchenko @ ect\n10 / 04 / 2000 04 : 35 pm\nto : naveen andrews / corp / enron @ enron , vladimir gorny / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kirstee hewitt / lon / ect @ ect\nsubject : re : factor loadings for primary curves\nnaveen & vlady ,\njin yu finished debugging the vatrfacs code and now it calculates factor\nloadings for every \" primary \" curve ( except power curves ) .\ni am sending you the calculated factors :\nmost of them don ' t look good . 60 forward prices were used in calculations for\neach commodity .\ni reran the code using fewer forward prices depending on the commodity\n( 12 prices for c 3 gc , mtbe , nc 4 , so 2 ,\n17 prices for nxho , 18 - for sa ,\n24 for c 2 gc , lax _ jfk , ,\n30 - for condensate , dubaicrude , brent , ,\n48 for nsw , semichem - risi )\nthese results are in\nmost of them look much better .\nplease , review .\nwe will have to add a column in rms _ main _ curve _ list to specify how many\nforward prices we want to use for each commodity ,\nand then use the new factors in the var model .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.376+0000", "entityId": 8501, "properties": {"text": "Subject: re : current var issues\nhere are the current issues related to var and credit models :\n1 . factor loadings ( fl ) for all \" primary \" commodities :\n- the code is tested ;\n- factors loadings have been calculated for every primary curve and examined\nclosely by research ;\n- using different number of maturities for fl calculations ( it ) ;\n- selecting \" good \" curves , setting mappings for the others ( rac ) ;\n2 . reviewing power var model :\n- implementing term structure of correlations ( preliminary research is in\nprogress by research , to be implemented by it ) ;\n- implementing caps in var model ( it ) ;\n- jumps for intramonth prices ( re - examine prices behavior , research ) ;\n3 . historical ff vols ( research , rac ) ;\n4 . interest rate and fx :\n- preliminary research is completed ( research ) ;\n- implementation in risktrack ( it ) ;\n5 . credit model :\n- resolving the problem of identical runs giving different results ( it with\nresearch ' s help ) ;\n6 . mg metals var model :\n- merging with risktrack ( rac , it , research ) ;\n- refining the model ( research ) ;\n7 . var calculations for uk curves :\n- merging with risktrack , elimination spreadsheets ( rac , it , research ) ;\n- looking closely at var calculations for each commodity ;\n8 . merchant portfolio var :\n- unification with equity var model ;\n9 . fat tails modeling ( research ) ;\nlet me know what i missed .\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.380+0000", "entityId": 8502, "properties": {"text": "Subject: tanya ' s trip to stanford\nshirley ,\ni will be out of the office 10 / 16 / 00 - 10 / 23 / 00 .\ni will attend credit modeling classes at stanford on 10 / 16 trough 10 / 20 .\n10 / 23 / 00 i ' take as a vacation day .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.385+0000", "entityId": 8503, "properties": {"text": "Subject: enron global messaging announcement\nover the last few months , we have been discussing our standard e - mail\nplatform with you , our customer . your feedback from the various\ndemonstrations , surveys and technology showcases validated that e - mail is a\nvital part of your ability to communicate effectively . however , your\nfeedback also indicated that you need your e - mail client to have additional\nfunctionality and increased integration with other applications you use .\ntherefore , to meet the demands of our fast - paced business , enron net works is\nstandardizing our e - mail platform by deploying microsoft outlook 2000 to all\nthe business units we currently support for messaging . ( project plans for\nebs , ees and azurix are still being finalized and will be communicated\nseparately . )\nthis conversion from lotus notes to outlook 2000 will improve your ability to\ncommunicate and provide a more consistent look and feel across the standard\noffice applications you use on a daily basis . we are excited about this\nopportunity to provide a more robust , full function solution for your\nmessaging needs . to provide you with additional details about the\nconversion from lotus notes to outlook 2000 , we are including a list of\nfrequently asked questions about this project .\nhow does this project affect me ?\nyour current lotus notes e - mail system will be converted to microsoft outlook\n2000 .\nwhat is microsoft outlook 2000 ?\noutlook 2000 is the messaging client you will use to read your e - mail , update\nyour calendar and personal address book , record to do lists , etc .\nwhy are we switching to outlook 2000 ?\noutlook 2000 integrates more effectively with our new operating system ,\nwindows 2000 , and the microsoft products that enron currently uses . with\noutlook 2000 , we can provide you with a more robust mail platform including\nthe following new features :\ninstant messaging \u0001 ) ability to send person - to - person , immediate , pop - up\nmessages .\nimproved palm / ce synchronization \u0001 ) allows for simpler and quicker updates of\nyour hand held device from multiple places .\nconferencing server \u0001 ) ability to conduct video conferences from your desktop .\nweb access \u0001 ) ability to retrieve your enron e - mail via a browser .\nfax integration \u0001 ) ability to send / receive faxes from your e - mail inbox .\nvoice mail integration \u0001 ) ability to have your voice mail delivered to your\ne - mail inbox for retrieval .\nwhen will the outlook 2000 rollout start and when will i get it ?\nthe pilot will begin in late october with the production rollout beginning in\nlate november . we are finalizing our business unit rollout schedule .\nadditional information will be provided to all business units as it becomes\navailable . project updates will be posted on the project section of the it\ncentral web site at http : / / itcentral . enron . com . additionally , you may send\nquestions to outlook . 2000 @ enron . com , and a member of the project team will be\nhappy to address these individually .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.390+0000", "entityId": 8504, "properties": {"text": "Subject: re : options calculator\nhi , michael ,\ni will take a look .\nzimin\nmichael danielson\n10 / 06 / 2000 09 : 26 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : options calculator\nhere ' s the link to the options calculator :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.394+0000", "entityId": 8505, "properties": {"text": "Subject: re : dragon curves ( thai baht forecast )\nwe have prepared the attached two reports to accompany the thai baht forecast\nwe produced on 13 september 2000 ( the previous curve was dated 15 may 2000 ) .\nthe first report provides specific economic factors that formed the basis for\nour baht forecast decisions in september .\nthe second report is an analysis of ppp theory and foreign exchange\nforecasting with a detailed discussion of its propriety to the economic\noutlook and exchange rate forecast for thailand .\nregards ,\nmaureen raymond - castaneda and gwyn koepke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.399+0000", "entityId": 8506, "properties": {"text": "Subject: enron university affairs\nenron public affairs has launched a new initiative : enron university\naffairs . the overall mission of enron university affairs is to broaden the\ndepth and scope of our relationships with targeted universities through\nbuilding enron brand recognition on campuses , leveraging research exchanges\nbetween enron and the academic community , and identifying commercial\nopportunities for enron . this initiative should also further enron \u0001 , s efforts\nto hire and retain the world \u0001 , s most innovative employees .\nleading this initiative are christie patrick , vice president , mike rosen ,\ndirector and cindy derecskey , in conjunction with her position as public\naffairs coordinator will also work with the university affairs team .\nplease join me in congratulating christie , mike and cindy on their new\nresponsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.405+0000", "entityId": 8507, "properties": {"text": "Subject: overview of hr associates / analyst project\nper david ' s request , attached is an overview of the hr associates / analysts\nproject - creating a human resource value index . this document will provide\na brief , top - line overview of the following :\ndescription of the challenges\npeople involved\npositive outcomes\nhigh - level description of the process we suggest\nif you have any questions before our tuesday meeting please contact either\nmyself or dan brown .\nthanks ! tana cashion\ndavid oxley @ ect\n10 / 05 / 2000 10 : 20 am\nto : gerry gibson / corp / enron @ enron\ncc : andrea yowman / corp / enron @ enron , bob sparger / corp / enron @ enron , tim\no ' rourke / corp / enron @ enron , ted c bland / hou / ect @ ect , daniel\nbrown / na / enron @ enron , tana cashion / na / enron @ enron , rhonna palmer / hou / ect @ ect ,\ncindy olson / corp / enron @ enron , vince j kaminski / hou / ect @ ect , kay\nchapman / hou / ect @ ect , sarah a davis / hou / ect @ ect , marla barnard / enron\ncommunications @ enron communications , pam butler / hr / corp / enron @ enron , michelle\ncash / hou / ect @ ect , brian schaffer / corp / enron @ enron , suzanne brown / hou / ect @ ect ,\nrobert jones / corp / enron @ enron , neil davies / corp / enron @ enron\nsubject : re : mission impossible - hr associate groups recommendation and next\nsteps\ni notice my calender doesn ' t yet seem to have this meeting scheduled . i will\nask kay chapman ( since rhonna has now deserted me ! ) to help put a time\ntogether . drew / mary , fyi sorry i didn ' t get a chance to send you this before .\nlet me know if you want to attend , happy to have you there .\ngerry , can you help me put an agenda together so that everyone knows what we\nare looking to achieve here . in broad terms i am looking to do the following :\nupdate all on project we set hr associate group and their recommendations\ndiscuss their recommendations and look at any refinements or ideas we think\nwe should also incorporate ( see my thumb nail sketch notes inspired by\nassociate group below ) .\nreaffirm commitment to take this project forward and agree :\nteam for doing so\nresources and timimg\nmethodology for agreeing final version .\nmy ambition is that we ( but in particular andrea , bob , gerry , tim , tana , dan ,\nneil , myself and possibly suzanne if she can given the work she had already\ndone in this area ) all agree to contribute to this and get it done without\nthe need for a formation of a new team or group . obviously everyone welcome\nto participate .\ntana / dan ,\ncan you cicruclate a summary of your teams proposals to this group so we they\ncan review before meeting . could you also agree within your team who you\nwould like to attend this meeting ( i would suggest 2 or 3 of you attend\nrather than all ) .\nthanks\ndavid\ndavid oxley\n09 / 26 / 2000 11 : 38 am\nto : andrea yowman / corp / enron @ enron , bob sparger / corp / enron @ enron , gerry\ngibson / corp / enron @ enron , tim o ' rourke / corp / enron @ enron , ted c\nbland / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc : daniel brown / na / enron @ enron , tana cashion / na / enron @ enron , rhonna\npalmer / hou / ect @ ect , cindy olson / corp / enron @ enron\nsubject : mission impossible - hr associate groups recommendation and next\nsteps\nrhonna ,\nplease arrange a meeting later this week for all of those addressed by this\nmessage ( vince , it would great if one of your team could attend since we will\nneed some heavy statistical and analytical help to complete this project ) .\nthe prupose of the meeting will be to discuss and delegate next steps\nrequired to implement the hr associate groups recommendations for the\ndevelopment of an hr \" value index \" at enron .\ni would anticipate we will need approx 45 minutes .\ndavid", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.409+0000", "entityId": 8508, "properties": {"text": "Subject: dabhol power company caps\nvince\nwe have completed the valuation of the above interest rate caps as\nrequested . i have faxed a copy of the attached files to your attention at\n( 713 ) 646 2503 .\nplease let us know if we can help again .\nregards ,\nleslie abreo\nandrew kalotay associates , inc .\n61 broadway , ste 3025\nnew york ny 10006\nphone : ( 212 ) 482 0900\nfax : ( 212 ) 482 0529\nemail : leslie . abreo @ kalotay . com\nvisit aka ' s website at http : / / www . kalotay . com\n- cap valuation _ 0900 . doc\n- dabhol power co caps . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.414+0000", "entityId": 8509, "properties": {"text": "Subject: united healthcare contracting update\nto : houston area employees participating in domestic medical plan benefits\nfrom : enron human resources\nwe are pleased to pass along to you the fact that united healthcare ( uhc ) and\nmemorial herman health systems ( mhhs ) reached agreement on a long - term\ncontract . there will be no disruption in terms of accessing network\nservices from the hospital system or those providers who were scheduled to be\nterminated . employees currently electing uhc will receive a confirming\nletter shortly from uhc .\nas mentioned in our earlier memo , it is our understanding that cigna has also\nbeen contacted by mhhs and are now in contract negotiations .\nopen enrollment packages are in the mail and you should consider the above\nfacts when making your decision on your medical election .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.419+0000", "entityId": 8510, "properties": {"text": "Subject: resume of mark giancola\nattached is the resume of mark giancola . mark is the husband of penny pan , a\nuva business school student for whom i was mentor last summer . penny has\nreceived a permanent offer and is inclined to accept if her husband can find\nsuitable employment in houston . as you will see from his resume , mark has\nworked as an economist in the public and private sectors for the past 2 . 5\nyears . mark is interested in a role where he can use his abilities to\nanalyze political , credit currency and related risks . please let me know if\nyou have any interest . thanks , rich\njohn : is there a place here in enroncredit . com ?\n_ _ _ _ _ _ _ _ _\npenny mentioned that you might have some ideas about job opportunities\nin houston for someone with my background . as you know , penny was\npleased to receive an offer from enron and i plan to earnestly look into\nthe houston job market myself .\nthe weeks leading up to the annual imf / world bank meetings are one of\nthe busiest times of year for us , but now that they are over i have had a\nchance to update my resume ( attached ) . i would be grateful if you\nwould take a look and pass it on to anyone you think might be interested .\nas you will see , most of my background is policy related , and most\nrecently international economic policy . however the skills i have\ndeveloped have applicability in the private sector as well . for example , a\nlarge part of my job at the treasury involves sovereign risk analysis .\ntwo possible avenues i see for building on this knowledge are : 1 )\napplying my knowledge to decisions regarding allocation of global\nfinancial assets ; or 2 ) identifying risks facing a mutinational company and\ndeveloping strategies to reduce that risk .\ni should mention that in addition to my economics training i do understand\nbasic finance , and i am preparing to begin the cfa . i should also note\nthat the work environment here at the treasury is quite fast paced , with\nconstant deadlines and a great deal of pressure placed on economists . i\ntend to work 55 + hours per week so i do not expect i would need to\nadjust signifiantly if i were to move to the private sector .\ni greatly appreciate your taking the time to look at my resume and giving\nsome thought to where i might look . i welcome any comments and ideas\nyou might have .\nthanks ,\nmark giancola\np . s . the formatting on my resume seems to change whenever i e - mail it ;\nlet me know if you prefer that i fax it to you .\n- resume 8 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.425+0000", "entityId": 8511, "properties": {"text": "Subject: re : enron / stanford program\nvince ,\ni have managed to change my ticket and we can meet for dinner on sunday\n10 / 15 / 00 .\nshall we say at 7 pm ?\n> > > > giuseppe : can you please join us for dinner on sunday 10 / 15 . we ' d like to\nbriefly\ndiscuss the project too . could i please ask you to make reservations for 3 at\nil fornaio or some other nice place in palo alto ? preferably a quiet place\nwhere\nwe can talk .\n> nick ,\n>\n> dinner on sunday would work for me . i shall stay\n> in the bay area till monday morning .\n>\n> vince\n>\n> nick bambos on 09 / 28 / 2000 08 : 33 : 38 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : enron / stanford program\n>\n> hi vince ,\n>\n> i am on the technical program committee of the infocom 2001 conference ,\n> and we are meeting in new york city on saturday , october 14 th , to select\n> papers for the conference program . i ' m leaving stanford on friday and\n> getting back on sunday .\n>\n> it might be a possibility to have dinner together on sunday , if that would\n> work for you . in that case i would have to reschedule my flight to land\n> in sfo earlier than i ' m currently scheduled to land .\n>\n> would dinner on sunday work for you ? any chance we can meet monday for\n> lunch ?\n>\n> i look forward to seeing you .\n>\n> best regards ,\n>\n> nick\n>\n> vince . j . kaminski @ enron . com wrote :\n> >\n> > nick ,\n> >\n> > i shall be in stanford oct 14 - 15 , visiting my family .\n> > i would be glad to meet you ( and possibly giuseppe - your call ) for\n> lunch .\n> > please , let mer know if you are free on one of these days . saturday would\n> > work better for me .\n> >\n> > vince\n> >\n> > nick bambos on 09 / 21 / 2000 02 : 09 : 46 pm\n> >\n> > to : stinson . gibner @ enron . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : re : enron / stanford program\n> >\n> > stinson ,\n> >\n> > great ! i ' m looking forward to a very productive collaboration .\n> > i ' ll immediately start doing giuseppe ' s papers , for him to work\n> > on the enron / stanford program .\n> >\n> > many thanks to you and vince , and i hope to see you soon at stanford\n> > or enron . if i remember correctly , vince is visiting stanford in\n> > october .\n> >\n> > best regards ,\n> >\n> > nick\n> >\n> > stinson . gibner @ enron . com wrote :\n> > >\n> > > nick ,\n> > >\n> > > i spoke with paul racicot , head of trading for ebs , north america this\n> > > morning . he said that he is happy to send the $ 100 , 000 for your\n> program\n> > > from his budget . i have forwarded to him the draft letter to\n> accompany\n> > > the funds and will try to follow up to make sure that the money is sent\n> > > promptly .\n> > >\n> > > - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.429+0000", "entityId": 8512, "properties": {"text": "Subject: fwd : enron / stanford program\ncontent - transfer - encoding : 7 bit\nreturn - path :\nreceived : from rly - yco 3 . mx . aol . com ( rly - yco 3 . mail . aol . com [ 172 . 18 . 149 . 35 ] )\nby air - yco 5 . mail . aol . com ( v 76 _ rl . 8 ) with esmtp ; fri , 06 oct 2000 14 : 29 : 58\n- 0400\nreceived : from smtp . stanford . edu ( smtp . stanford . edu [ 171 . 64 . 14 . 23 ] ) by\nrly - yco 3 . mx . aol . com ( v 75 _ b 3 . 9 ) with esmtp ; fri , 06 oct 2000 14 : 28 : 30 - 0400\nreceived : from stanford . edu ( dialup - 209 . 245 . 133 . 121 . sanjosel . level 3 . net\n[ 209 . 245 . 133 . 121 ] ) by smtp . stanford . edu ( 8 . 9 . 3 / 8 . 9 . 3 ) with esmtp id laaol 053 ;\nfri , 6 oct 2000 11 : 28 : 25 - 0700 ( pdt )\nmessage - id :\ndate : fri , 06 oct 2000 11 : 33 : 46 - 0700\nfrom : nick bambos\nx - mailer : mozilla 4 . 7 [ en ] ( win 98 ; i )\nx - accept - language : en , el\nmime - version : 1 . 0\nto : vince . j . kaminski @ enron . com , vkaminski @ aol . com , gappy @ stanford . edu\nsubject : re : enron / stanford program\nreferences :\ncontent - type : text / plain ; charset = us - ascii\nvince ,\ni have managed to change my ticket and we can meet for dinner on sunday\n10 / 15 / 00 .\nshall we say at 7 pm ?\n> > > > giuseppe : can you please join us for dinner on sunday 10 / 15 . we ' d like to\nbriefly\ndiscuss the project too . could i please ask you to make reservations for 3 at\nil fornaio or some other nice place in palo alto ? preferably a quiet place\nwhere\nwe can talk .\n> nick ,\n>\n> dinner on sunday would work for me . i shall stay\n> in the bay area till monday morning .\n>\n> vince\n>\n> nick bambos on 09 / 28 / 2000 08 : 33 : 38 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : enron / stanford program\n>\n> hi vince ,\n>\n> i am on the technical program committee of the infocom 2001 conference ,\n> and we are meeting in new york city on saturday , october 14 th , to select\n> papers for the conference program . i ' m leaving stanford on friday and\n> getting back on sunday .\n>\n> it might be a possibility to have dinner together on sunday , if that would\n> work for you . in that case i would have to reschedule my flight to land\n> in sfo earlier than i ' m currently scheduled to land .\n>\n> would dinner on sunday work for you ? any chance we can meet monday for\n> lunch ?\n>\n> i look forward to seeing you .\n>\n> best regards ,\n>\n> nick\n>\n> vince . j . kaminski @ enron . com wrote :\n> >\n> > nick ,\n> >\n> > i shall be in stanford oct 14 - 15 , visiting my family .\n> > i would be glad to meet you ( and possibly giuseppe - your call ) for\n> lunch .\n> > please , let mer know if you are free on one of these days . saturday would\n> > work better for me .\n> >\n> > vince\n> >\n> > nick bambos on 09 / 21 / 2000 02 : 09 : 46 pm\n> >\n> > to : stinson . gibner @ enron . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : re : enron / stanford program\n> >\n> > stinson ,\n> >\n> > great ! i ' m looking forward to a very productive collaboration .\n> > i ' ll immediately start doing giuseppe ' s papers , for him to work\n> > on the enron / stanford program .\n> >\n> > many thanks to you and vince , and i hope to see you soon at stanford\n> > or enron . if i remember correctly , vince is visiting stanford in\n> > october .\n> >\n> > best regards ,\n> >\n> > nick\n> >\n> > stinson . gibner @ enron . com wrote :\n> > >\n> > > nick ,\n> > >\n> > > i spoke with paul racicot , head of trading for ebs , north america this\n> > > morning . he said that he is happy to send the $ 100 , 000 for your\n> program\n> > > from his budget . i have forwarded to him the draft letter to\n> accompany\n> > > the funds and will try to follow up to make sure that the money is sent\n> > > promptly .\n> > >\n> > > - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.434+0000", "entityId": 8513, "properties": {"text": "Subject: approval is overdue : access request for stephen . bennett @ enron . com\nthis request has been pending approval for 5 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000003991\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 3 / 00 12 : 31 : 22 pm\nrequested for : stephen . bennett @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.443+0000", "entityId": 8514, "properties": {"text": "Subject: approval is overdue : access request for peter . makkai @ enron . com\nthis request has been pending approval for 5 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000003997\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 3 / 00 1 : 14 : 27 pm\nrequested for : peter . makkai @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.449+0000", "entityId": 8515, "properties": {"text": "Subject: your approval is overdue : access request for\ntom . halliburton @ enron . com\nthis request has been pending your approval for 9 days . please click\napproval to review and act upon this request .\nrequest id : 000000000003619\nrequest create date : 9 / 27 / 00 9 : 18 : 21 am\nrequested for : tom . halliburton @ enron . com\nresource name : unlisted application / software\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.454+0000", "entityId": 8516, "properties": {"text": "Subject: progress\nfyi\n1 - 2 days is optimistic , but we have core value of optimism !\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 10 / 09 / 2000\n02 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat @ enron\n10 / 09 / 2000 12 : 16 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : progress\nmike ,\ndoug , an it guy , asked around and he could not find any software that can do\nthe job .\ni am still working on the code . the program should be ready in 1 - 2 days .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.458+0000", "entityId": 8517, "properties": {"text": "Subject: thanks\nmaureen - thanks for your outstanding presentation on friday . sorry again for\nthe difficulties in scheduling .\ni can see some excellent collection opportunities for our group as a result\nof your presentation and look forward to discussing them with you on my\nreturn . we think we can get excellent info on production & exports in\nrussia , as well as good insight into anti - dumping out of dc and the wto .\nlabor unrest , environmental problems , civil unrest are other possibilities .\nfyi , the speeches from today ' s lme seminar will be posted on the lme website\ntomorrow . you may be particularly interested in the outlooks for aluminum ,\nnickel , and copper .\nrj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.464+0000", "entityId": 8518, "properties": {"text": "Subject: vince ,\nhere is a rough schedule as we had discussed . we can work the details once i\nget there .\nthanks again for all your efforts . look forward to my stint in houston .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.472+0000", "entityId": 8519, "properties": {"text": "Subject: re : exotica ( second request )\nthanks anjam .\nthat ' s looks great .\nsorry about the second request .\ni didn ' t realise you were in a meeting .\nthanks ,\nsharad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.477+0000", "entityId": 8520, "properties": {"text": "Subject: re : exotica ( second request )\nplease see attached :\nenron europe\nfrom : sharad agnihotri 09 / 10 / 2000 11 : 56\nto : anjam ahmad / lon / ect @ ect\ncc : steven leppard / lon / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : exotica ( second request )\nanjam ,\ni have tried to call you on your mobile but with no success .\nplease make sure you send me the exotica code .\nsharad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.482+0000", "entityId": 8521, "properties": {"text": "Subject: reply from charles shen\nshirley :\nthank you very much for the e - mail . attached please\nfind the copy of my resume , please treat it with high\nconfidentiality .\ni would love to fly to houston this friday to talk to\nvince and other people in enron , and i will fly from\ntulsa , oklahoma to houston . when you make the flight\nreservation , please make sure to use my legal name\n\" yingquan shen \" .\nif you have any questions , please feel free to let me\nknow .\nsincerely ,\ncharles\n- - - shirley . crenshaw @ enron . com wrote :\n> mr . shen :\n>\n> vince kaminski and the research group would like to\n> bring you in for an\n> interview this friday , if possible . please forward\n> me a copy of your\n> resume , as soon as possible , and i will have our hr\n> dept . contact you .\n>\n> thank you .\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research dept .\n> 713 / 853 - 5290\n>\n>\n>\n>\n>\ndo you yahoo ! ?\nget yahoo ! mail - free email you can access from anywhere !\nhttp : / / mail . yahoo . com /\n- charles _ shen . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.486+0000", "entityId": 8522, "properties": {"text": "Subject: fwd : hello from charles shen at williams co .\nmr . shen :\nvince kaminski and the research group would like to bring you in for an\ninterview this friday , if possible . please forward me a copy of your\nresume , as soon as possible , and i will have our hr dept . contact you .\nthank you .\nshirley crenshaw\nadministrative coordinator\nenron research dept .\n713 / 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.491+0000", "entityId": 8523, "properties": {"text": "Subject: fwd : hello from charles shen at williams co .\ntoni ,\ni would like to bring two people for an interview\none of them sent me a message that is attached below .\ni am including the info about the 2 nd gentleman below .\ni would like to include myself , vasant shnabhogue , tanya tamarchenko\nstinson gibner , zimin lu , paulo issler , alex tang on the interview list .\nit would be great if we could bring them this week on friday . tanya\nwill be at a training course next week . this means that if friday this week\nis too aggressive ,\nwe should shoot for interviews in 2 weeks .\nsorry for a short notice .\nvince\njermakyan , martin\n410 brightmore downs\nalpharetta , ga 30005\nphone : ( 770 ) 753 - 9341 ( h )\n( 404 ) 402 - 8957 ( c )\nmartin @ electraparners . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 09 / 2000\n09 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 07 / 2000 05 : 55 : 11 pm\nto : vkamins @ enron . com\ncc :\nsubject : fwd : hello from charles shen at williams co .\nreturn - path :\nreceived : from rly - zco 2 . mx . aol . com ( rly - zco 2 . mail . aol . com [ 172 . 31 . 33 . 2 ] ) by\nair - zco 2 . mail . aol . com ( v 76 _ rl . 8 ) with esmtp ; wed , 04 oct 2000 13 : 43 : 33 - 0400\nreceived : from web 9407 . mail . yahoo . com ( 23 . 0 / 24 . 129 . 136 . 216 . in - addr . arpa\n[ 216 . 136 . 129 . 23 ] ) by rly - zco 2 . mx . aol . com ( v 75 _ b 3 . 9 ) with esmtp ; wed , 04 oct\n2000 13 : 43 : 06 - 0400\nmessage - id :\nreceived : from [ 151 . 142 . 252 . 11 ] by web 9407 . mail . yahoo . com ; wed , 04 oct 2000\n10 : 43 : 02 pdt\ndate : wed , 4 oct 2000 10 : 43 : 02 - 0700 ( pdt )\nfrom : charles shen\nsubject : hello from charles shen at williams co .\nto : vkamins @ ect . enron . com\ncc : vkaminski @ aol . com\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\nx - mailer : unknown\ndear vince :\nhow are you ? i am not sure whether you still remember\nme , we met in a conference last year in houston . after\nhaving been working for williams for about two years ,\nnow i am ready to make a move . i have heard enron is a\ngreat company , i am wondering whether there is any\nopportunity for me , either in research group or in\nstructure group\nhere is brief description about myself : right after i\ngot my ph . d . on finance and econometrics from duke\nuniversity in 1998 , i joined williams energy trading\ncompany as a quantitative analyst . now i am lead quant\nand in charge of the quantitative research group with\n7 highly talented people . i have done extensive\nresearch and modeling about electricity ,\nload - following deal and tolling deals .\nif you need any additional information , please feel\nfree to call me at 918 - 409 - 4308 . i look forward to\nhearing from you soon , thank you .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! photos - 35 mm quality prints , now get 15 free !\nhttp : / / photos . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.496+0000", "entityId": 8524, "properties": {"text": "Subject: reply from charles at williams\nvince :\nthank you very much for your e - mail , i look forward to\ntalking to you very soon .\nsincerely ,\ncharles\n- - - vkaminski @ aol . com wrote :\n> charles ,\n>\n> thanks for your message . i have just come back from\n> europe and i am going\n> through my mail . i shall call you either on sunday\n> or monday after i recover\n> a bit .\n>\n>\n> vince\ndo you yahoo ! ?\nyahoo ! photos - 35 mm quality prints , now get 15 free !\nhttp : / / photos . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.500+0000", "entityId": 8525, "properties": {"text": "Subject: re : mscf speaker series\npierre - philippe ,\nfriday would be beter .\nvince\npierre - philippe ste - marie on 10 / 09 / 2000 10 : 11 : 37 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : mscf speaker series\ndear mr . kaminski ,\nit goes without saying that whoever come with you is invited for dinner .\nwould you prefer to have dinner on thursday night or friday night . i think\nit would be better friday night as we could discuss the presentation .\nsincerely ,\npierre - philippe ste - marie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.505+0000", "entityId": 8526, "properties": {"text": "Subject: re : mscf speaker series\npierre - philippe ,\nyes , we are ready . i shall be accompanied by one person from\nour analyst / associate program and i would like to ask you if she can be\ninvited\nto dinner as well .\nwe plan to come thursday night and leave on sat morning to avoid potential\nflight delay risk .\nvince\npierre - philippe ste - marie on 10 / 08 / 2000 06 : 55 : 27 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : mscf speaker series\nhi mr . kaminski ,\njust touching base for the 3 rd of november . is everything ready ?\nsincerely ,\npierre - philippe ste - marie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.509+0000", "entityId": 8527, "properties": {"text": "Subject: enron in india\nmark ,\ntwo points .\n1 . you probably know about it already . abhay mehta , the author of \" power\nplay \" , is on a\ntour of the united states . please , take a look at the information about a\nmeeting last sunday\nat stanford university . the web site address is given below . my wife went to\nthe presentation and told me it was quite critical about enron . about 40\npeople attended .\n2 . i was approached by john martin , a professor of finance at baylor , to\nwrite jointly an\nacademic paper on enron for a financial journal . he wanted to work on an\narticle on ebs .\ni have suggested a different topic : enron - case study of a company\nreinventing itself .\ni made a few points to john :\na . enron ' s evolution did not just happen by accident .\nit was a result of implementation of a far - reaching\nstrategy developed by the management .\nb . in the process of its evolution enron changed its environment . i came up\nwith a term\n\" proactive evolution \" , as opposed to \" reactive evolution . \"\nc . the strategy included many elements , including emphasis on the quality\nof human resources , changing corporate attitudes to risk taking and employee\nempowerment .\nd . there are very few companies that match enron ' s experience and\naccomplishemnts .\nthe paper could become a standard reading at the mba courses on corporate\nstrategy\nand would help greatly our recruiting efforts .\nwriting the paper would require interviews with ken , jeff and a few other key\nplayers .\nlet me know what you thing about it . john is really excited about this paper .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 09 / 2000\n08 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 07 / 2000 05 : 29 : 41 pm\nto : vkamins @ enron . com\ncc :\nsubject : enron\nhttp : / / www . stanford . edu / group / sia /\nstanford india association", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.514+0000", "entityId": 8528, "properties": {"text": "Subject: re : fyi : uk var issues\nvince ,\nuk var breached the limit last week .\nuk traders asked us to review the correlations across uk gas and power as\nwell as the correlations across efa slots .\nwe did part of the work last week .\nnow we ' ll update the correlations based on historical prices .\ntanya .\nrichard lewis\n10 / 08 / 2000 07 : 31 am\nto : tanya tamarchenko / hou / ect @ ect\ncc : oliver gaylard / lon / ect @ ect , james new / lon / ect @ ect , steven\nleppard / lon / ect @ ect , rudy dautel / hou / ect @ ect , kirstee hewitt / lon / ect @ ect ,\nnaveen andrews / corp / enron @ enron , david port / market risk / corp / enron @ enron , ted\nmurphy / hou / ect @ ect , simon hastings / lon / ect @ ect , paul d ' arcy / lon / ect @ ect , amir\nghodsian / lon / ect @ ect\nsubject : re : var correlation scenarios\nthanks tanya , these are interesting results . i am on vacation next week , so\nhere are my current thoughts . i am contactable on my mobile if necessary .\ngas to power correlations\ni see your point about gas to power correlation only affecting var for the\ncombined gas and power portfolio , and this raises an interesting point : at a\nconservative 30 % long term correlation , combined var is olmm less than\npreviously expected - so how does this affect the limit breach ? strictly\nspeaking , we are still over our uk power limit , but the limit was set when we\nwere assuming no gas power correlation and therefore a higher portfolio var .\na suggested way forward given the importance of the spread options to the uk\ngas and power books -\ncan we allocate to the gas and power books a share of the reduction in\nportfolio var - ie [ reduction = portfolio var - sum ( power var + gas var ) ] ?\nalso , if i understand your mail correctly , matrix 1 implies 55 % gas power\ncorrelation is consistent with our correlation curves , and this reduces total\nvar by ol . 8 mm .\nefa slot correlations\nthe issue of whether our existing efa to efa correlation matrix is correct is\na separate issue . i don ' t understand where the matrix 2 efa to efa\ncorrelations come from , but i am happy for you to run some historical\ncorrelations from the forward curves ( use the first 2 years , i would\nsuggest ) . our original matrix was based on historicals , but the analysis is\nworth doing again . your matrix 2 results certainly indicate how important\nthese correlations are .\nclosing thoughts\nfriday ' s trading left us longer so i would not expect a limit breach on\nmonday . we are still reviewing the shape of the long term curve , and i ' d\nlike to wait until both simon hastings and i are back in the office ( monday\nweek ) before finalising this .\nregards\nrichard\ntanya tamarchenko\n06 / 10 / 2000 22 : 59\nto : oliver gaylard / lon / ect @ ect , richard lewis / lon / ect @ ect , james\nnew / lon / ect @ ect , steven leppard / lon / ect @ ect , rudy dautel / hou / ect @ ect , kirstee\nhewitt / lon / ect @ ect , naveen andrews / corp / enron @ enron , david port / market\nrisk / corp / enron @ enron , ted murphy / hou / ect @ ect\ncc :\nsubject : re : var correlation scenarios\neverybody ,\noliver sent us the var number for different correlations for uk - power\nportfolio separately from uk - gas portfolio .\nfirst , if var is calculated accurately the correlation between power and gas\ncurves should not affect var number for power and var number for gas , only\nthe aggregate number will be affected . the changes you see are due to the\nfact that we use monte - carlo simulation method ,\nwhich accuracy depends on the number of simulations . even if we don ' t change\nthe correlations but use different realizations of random numbers ,\nwe get slightly different result from the model .\nso : to see the effect of using different correlations between gas and power\nwe should look at the aggregate number .\ni calculated weighted correlations based on 2 curves i got from paul . as the\nweights along the term structure i used the product of price , position and\nvolatility for each time bucket for gas and each of efa slots . the results\nare shown below :\ninserting these numbers into the original correlation matrix produced\nnegatively definite correlation matrix , which brakes var engine .\ncorrelation matrix for any set of random variables is non - negative by\ndefinition , and remains non - negatively definite if calculated properly based\non any historical data .\nhere , according to our phone discussion , we started experimenting with\ncorrelations , assuming the same correlation for each efa slot and et elec\nversus gas . i am sending you the spreadsheet which summaries the results . in\naddition to the aggregate var numbers for the runs oliver did , you can see\nthe var numbers based on correlation matrix 1 and matrix 2 . in matrix 1 the\ncorrelations across efa slots are identical to these in original matrix .\ni obtained this matrix by trial and error . matrix 2 is produces by naveen\nusing finger ' s algorithm , it differs from original matrix across efa slots as\nwell\nas in power versus gas correlations and gives higher var than matrix 1 does .\nconcluding : we will look at the historical forward prices and try to\ncalculate historical correlations from them .\ntanya .\noliver gaylard\n10 / 06 / 2000 01 : 50 pm\nto : richard lewis / lon / ect @ ect , james new / lon / ect @ ect , steven\nleppard / lon / ect @ ect , rudy dautel / hou / ect @ ect , kirstee hewitt / lon / ect @ ect ,\nnaveen andrews / corp / enron @ enron , tanya tamarchenko / hou / ect @ ect , david\nport / market risk / corp / enron @ enron\ncc :\nsubject : var correlation scenarios\nthe results were as follows when changing the gas / power correlations :\ncorrelation var - uk power book var - uk gas book\n0 . 0 ol 0 . 405 mm o 3 . 180 mm\n0 . 1 ol 0 . 134 mm o 3 . 197 mm\n0 . 2 ol 0 . 270 mm o 3 . 185 mm\n0 . 3 ol 0 . 030 mm o 3 . 245 mm\n0 . 4 cholesky decomposition failed ( not positive definite )\n0 . 5 cholesky decomposition failed ( not positive definite )\n0 . 6 cholesky decomposition failed ( not positive definite )\n0 . 7 cholesky decomposition failed ( not positive definite )\n0 . 8 cholesky decomposition failed ( not positive definite )\n0 . 9 cholesky decomposition failed ( not positive definite )\n1 . 0 cholesky decomposition failed ( not positive definite )\npeaks and off peaks were treated the same to avoid violating the matrix ' s\nintegrity .\ninteresting to note that for a higher correlation of 0 . 2 the power var\nincreases which is counter to intuition . this implies that we need to look\ninto how the correlations are being applied within the model . once we can\nderive single correlations from the term structure , is the next action to\nunderstand how they are being applied and whether the model captures the p + l\nvolatility in the spread option deals .\nfrom 0 . 4 onwards the var calculation failed .\noliver", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.518+0000", "entityId": 8529, "properties": {"text": "Subject: subscription renewals\nvince :\ndo you want to renew the below listed subscriptions ?\nplease let me know .\nthanks\nshirley\nshirley ,\ni hope you had a good weekend . the following subscriptions for vince are up\nfor renewal . please let me know which vince would like to renew :\nderivatives : tax regulation & finance\nderivatives quarterly\nderivatives strategy\nenergy economist\nfinancial markets institutions & instruments for us canada & mexico\njournal of derivatives\njournal of fixed income\nmathematical finance\nregulation / the cato review of business & government\nreview of financial studies\nswaps monitor\nnew york times\nsome we may have renewed already . call me with any questions .\nthank you\nsusan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.523+0000", "entityId": 8530, "properties": {"text": "Subject: boss ' s day\nhey everyone ,\ni know you may not be aware that boss ' s day oct . 16 , 2000\nwe will celebrate as a group in the staff meeting on oct . 19 th ,\nwith the big boss vince kaminski and all the others , however ,\nif you would like to do something special for our boss , please\ninform me whereby i can make arrangements .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.529+0000", "entityId": 8531, "properties": {"text": "Subject: recent projects\nhi vince ,\ni have been working on and / or planning to work on the following projects :\n1 . finished a gas daily swing option model for commodity structuring\ngroup ( sanjeev khanna ) . the model uses american monte carlo\nsimulation and dynamic programming techniques .\n2 . continue working on psim model . this includes reading power generation\nand operation books as well as thinking about ways to model power plant and\nits operation . the standard approach ( i . e . turn the plant on if power\nprice > total\ngeneration cost , else turn the plant off ) is not particularly good if the\nregional\ndemand is very high and the plant still has some un - utilized generation\ncapacity .\nthat is , the generation criteria is quite different depending on we model\npower\nplant from regional point view or from plant point of view . plan to have\nmeetings\nwith tom and lance .\n3 . started working on stochastic process parameter estimation . i will\nconcentrate\non four processes : gbm , mean reverting , jump diffusion , and jump diffusion\nwith\nmean reverting . i have looked at tanya ' s earlier work and decided to\ndiscretize\nthe processes slightly differently . it is hoped that this will give a more\nstable\nestimation .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.534+0000", "entityId": 8532, "properties": {"text": "Subject: invitees for grant ' s party\nvince :\nwhen do you want to try and have grant ' s party ?\nbelow is a list of people that he would like to invite .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 09 / 2000\n10 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" grant masson \" on 10 / 09 / 2000 10 : 09 : 46 am\nto : shirley . crenshaw @ enron . com\ncc : vince . kaminski @ enron . com\nsubject : invitees for grant ' s party\nshirley :\nvince suggested i send you a list of non - research folks whom i would like to\ninvite to the going away party .\nted murphy\ngeorge hopley\nbernie aucoin\nedith cross\nvlady gorny\nnaveen andrews\ndebbie brackett .\nthe above are the essentials . i also like to invite the following , but i\nrecognize that vince may want to control costs , so i will leave it up to you\nand him to invite or not .\nbill bradford\njim simpson ( structuring , works for bernie )\nrudi zipter\ngreg woulfe ( ebs trader , not a portland marketer ! )\nscott tholan\nkevin golden\nrebecca ? ? ? ( works with vlady ) .\ni will also try to invite terry lohrenz unless instructed not to .\ngive me a call at home if you have questions .\nregards ,\ngrant .\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.542+0000", "entityId": 8533, "properties": {"text": "Subject: re : erequest 3991\nthanks !\nvince j kaminski @ ect\n10 / 10 / 2000 05 : 06 pm\nto : jameika smikle / corp / enron @ enron\ncc : mike a roberts / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : erequest 3991\naproved in both cases .\nvince kaminski\nfrom : jameika smikle @ enron on 10 / 10 / 2000 04 : 19 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : erequest 3991\npeter makkai is also requesting this access .\n- - - - - forwarded by jameika smikle / corp / enron on 10 / 10 / 2000 04 : 19 pm - - - - -\njameika smikle\n10 / 10 / 2000 04 : 16 pm\nto : vince kaminski\ncc :\nsubject : erequest 3991\nstpehen bennett is requesting read / write access to o : \\ research\nplease advise .\njameika\nirm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.549+0000", "entityId": 8534, "properties": {"text": "Subject: re : power flow software question\nthanks . i ' ll let walter know if he calls . i just wanted to make sure things\nwere done correctly .\nmartin\nvince j kaminski @ ect\n10 / 10 / 00 03 : 25 pm\nto : martin lin / contractor / enron communications @ enron communications @ enron\ncc : vince j kaminski / hou / ect @ ect , walter coffer / hou / ect @ ect\nsubject : re : power flow software question\nmartin ,\nit ' s ok for walter to use remaining hours . no real cost to enron ,\njust the benefits .\nvince\nfrom : martin lin @ enron communications on 10 / 09 / 2000 03 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : power flow software question\nwalter coffer contacted me regarding whether we still have power flow\nsoftware available . we do have almost all of a 200 execution - hour license\nfor pss / e , which was purchased for the transmission congestion project last\nsummer . this was purchased by east power trading . should walter want to use\nthe remaining hours , who has authority to grant this ?\nthanks ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.555+0000", "entityId": 8535, "properties": {"text": "Subject: erequest password\nyour erequest ' s password is 4311\nto use this password , go to the erequest website and click on non - corp logon .\nput in your email address and the password above and click log in , and you\nwill log into erequest .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.559+0000", "entityId": 8536, "properties": {"text": "Subject: re : exploration data as the root of the energy ( oil ) supply chain\nand consulting\njohn ,\ncongratulations on a career move .\nyes , we were contacted regarding geophysical data gathering / transmission\nproject .\nwe asked our geophysicists for help and are shooting for\na meeting on thursday to run our ideas by them .\nvince\nfrom : john bloomer @ enron communications on 10 / 10 / 2000 10 : 20 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : exploration data as the root of the energy ( oil ) supply chain and\nconsulting\ngood morning vince :\n1 ) we met with some geophysical data gathering / transmission people last\nweek . i observed that there is an opportunity to get in the early steps of\nthe ( oil exploration ) energy supply chain - we can get at the key data\ndriving oil drilling earlier than anyone else by extending into this area of\nbroadband networking - to build a way to hedge oil and other energy trades .\ni asked adler or reichardt to present the idea to your team for validation .\nhave they contacted you yet ?\n2 ) i ' m converting to consultant - i ' ve had a great year here but need to get\nback north more often ( family ) . i will be converting to consultant status\nstarting next week . do not hesitate to call me if there is anything i can do\nfor you or your team to help out .\njohn bloomer cell 610 574 3945", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.564+0000", "entityId": 8537, "properties": {"text": "Subject: re : seismic data on oil & gas field development via satellite\nthere may be a business opportunity with this company , but i would not advise\nmaking an investment .\nkevin garland\nrichard reichardt\n10 / 10 / 00 12 : 30 pm\nto : mike mcconnell / hou / ect @ ect\ncc : larry lawyer / enron communications @ enron communications , tom gros / enron\ncommunications @ enron communications , vince j kaminski / hou / ect @ ect , kevin\ngarland / enron communications @ enron communications , richard dimichele / enron\ncommunications @ enron communications , ken rice / enron communications @ enron\ncommunications\nsubject : seismic data on oil & gas field development via satellite\nmike ,\nusing nasa satellite transmission of maritime data and establishing a houston\ndata center to consolidate and centrally process 3 d seismic data surveys for\noil and gas extraction , exploration and development could save the petroleum\nindustry more than $ 300 million dollars annually through reduced operational\nexpenses . added value in shortening the time to process and deliver the\nfinished surveys should generate more than $ 26 million per site ( based upon\n$ 15 / barrel for average oil well production to market 30 days sooner ) in\nrevenue . by re - selling this data to market analysts or by internally using\nthis data for forecasting future oil / gas production enron could increase the\naccuracy of forecasting reserves and production capabilities globally . by\nholding the data as exclusive ( or partially exclusive ) , enron would have a\nsignificant market advantage in futures pricing for oil and gas . ( vince ' s team\nis quantifying the valuation of this information )\nattached please find an updated version of the business case for seismic data\ntransfer via satellite , by a geophysicist at spacedata - william k . aylor ,\ncalculated using $ 22 / barrel oil .\nbased upon your availability , jon adler and i would like to make a\npresentation to you ( or your designated representative ) on the enron\npotential of this opportunity , sometime next week ( 17 - 20 october ) .\n- sdt business case 4 . pdf\nv . r . ,\nrichard reichardt\nenron broadband services\n( 713 ) - 345 - 8377 ( office )\n( 713 ) - 907 - 3767 ( mobile )\n1400 smith street , suite eb 4364\nhouston , texas 77002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.569+0000", "entityId": 8538, "properties": {"text": "Subject: updated credit support model\nlatest model\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 10 / 10 / 2000\n11 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandy west @ enron 10 / 06 / 2000 02 : 15 pm\nto : vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : updated credit support model\nattached is an updated credit support model that you were working with for\njodi coulter . the same sheets - paperco credit and data - are the sheets to\nkey on . please let me know if you have any questions .\nandy\nx . 37685", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.573+0000", "entityId": 8539, "properties": {"text": "Subject: agenda for mission possible meeting\nour agenda for the october 16 meeting starting at 10 : 00 a . m . has been\nattached for your review along with david ' s draft . as you will see , there is\na great deal to cover in a very limited amount of time .\ncheers ,\ntana / daniel", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.578+0000", "entityId": 8540, "properties": {"text": "Subject: re : subscription renewals\nsusan :\nvince would like to renew all of the below subscriptions , except the\n\" financial\nmarkets institutions & instruments for us canada & mexico \" .\nthanks !\nshirley\nenron north america corp .\nfrom : susan l kennedy 10 / 09 / 2000 03 : 27 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : subscription renewals\nshirley ,\ni hope you had a good weekend . the following subscriptions for vince are up\nfor renewal . please let me know which vince would like to renew :\nderivatives : tax regulation & finance\nderivatives quarterly\nderivatives strategy\nenergy economist\nfinancial markets institutions & instruments for us canada & mexico\njournal of derivatives\njournal of fixed income\nmathematical finance\nregulation / the cato review of business & government\nreview of financial studies\nswaps monitor\nnew york times\nsome we may have renewed already . call me with any questions .\nthank you\nsusan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.583+0000", "entityId": 8541, "properties": {"text": "Subject: management announcement\nwe are pleased to announce that cliff baxter has been named vice chairman of\nenron corp .\ncliff joined enron in 1991 and has served in a variety of leadership\npositions in enron corp . as well as enron \u0001 , s wholesale business , including sr .\nvice president of corporate development for enron corp . , chairman and ceo of\nenron north america , and chief strategy officer for enron corp .\nin his new role , cliff will focus on the strategic repositioning of the\ncompany as we continue to increase our return on invested capital .\ninitially , much of that activity will center on the disposition of certain\nassets . cliff \u0001 , s leadership and experience at both the corporate and\noperating company levels will enable him to lead the effort on this\ncompany - wide priority .\nplease join us in congratulating and supporting cliff in his new role .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.587+0000", "entityId": 8542, "properties": {"text": "Subject: enron in india\nhi vince ,\ni was not aware of the \" power play \" book tour . i ' ll check it out .\nas to the article with the baylor professor , i think it ' s a great idea . i ' d\nlike the university affairs team to get involved . if a visit is required ,\ninterviews , etc . , they should coordinate . that way , i think we ' ll have the\ngreatest opportunity to leverage the relationship .\nmark\n- - - - - forwarded by mark palmer / corp / enron on 10 / 10 / 2000 02 : 23 pm - - - - -\nvince j kaminski @ ect\n10 / 09 / 2000 09 : 08 am\nto : mark palmer / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : enron in india\nmark ,\ntwo points .\n1 . you probably know about it already . abhay mehta , the author of \" power\nplay \" , is on a\ntour of the united states . please , take a look at the information about a\nmeeting last sunday\nat stanford university . the web site address is given below . my wife went to\nthe presentation and told me it was quite critical about enron . about 40\npeople attended .\n2 . i was approached by john martin , a professor of finance at baylor , to\nwrite jointly an\nacademic paper on enron for a financial journal . he wanted to work on an\narticle on ebs .\ni have suggested a different topic : enron - case study of a company\nreinventing itself .\ni made a few points to john :\na . enron ' s evolution did not just happen by accident .\nit was a result of implementation of a far - reaching\nstrategy developed by the management .\nb . in the process of its evolution enron changed its environment . i came up\nwith a term\n\" proactive evolution \" , as opposed to \" reactive evolution . \"\nc . the strategy included many elements , including emphasis on the quality\nof human resources , changing corporate attitudes to risk taking and employee\nempowerment .\nd . there are very few companies that match enron ' s experience and\naccomplishemnts .\nthe paper could become a standard reading at the mba courses on corporate\nstrategy\nand would help greatly our recruiting efforts .\nwriting the paper would require interviews with ken , jeff and a few other key\nplayers .\nlet me know what you thing about it . john is really excited about this paper .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 09 / 2000\n08 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 07 / 2000 05 : 29 : 41 pm\nto : vkamins @ enron . com\ncc :\nsubject : enron\nhttp : / / www . stanford . edu / group / sia /\nstanford india association", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.591+0000", "entityId": 8543, "properties": {"text": "Subject: luncheon at cera roundtable in houston\ncambridge energy research associates ( cera ) is pleased that you will be\njoining us on wednesday , november 1 , 2000 for our roundtable sessions at the\nfour seasons hotel ? in houston , texas . ? during the roundtable day , our\nluncheon in between sessions will feature a special presentation from cera ' s\nlatin america energy expert , sondra scott , speaking about the future of\nmexico ' s energy industry .\nas a participant in cera ' s roundtables on november 1 , you are already\nregistered for this luncheon . ?\nwe look forward to your participation .\nsincerely ,\nalberto bullrich ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? lauren\nlaidlaw ? ? ? ? ? ? ? ?\nbusiness development ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? associate\n* * special update on \" brazil : market rules and power plays \" * *\nour multiclient study , \" brazil : market rules and power plays \" is now being\ncompleted . ? this study is a powerful tool to help evaluate current and future\nstrategies , test investment decisions , manage uncertainty , and capture\nopportunities in this exciting power market . it will serve as both a\nblueprint for your immediate business planning needs and a guide for\nmonitoring and enhancing your strategic planning for near - and long - term\ndevelopments . ? for more information on this study , please visit our website\nat http : / / eprofile . cera . com / offerings / mcs / brazpow /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.596+0000", "entityId": 8544, "properties": {"text": "Subject: re : enron / stanford program\npaul ,\nis there anything i can do to help get the $ 100 k that enron promised to dr .\nbambos ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 10 / 10 / 2000\n07 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 10 / 09 / 2000 12 : 04 : 19 am\nto : stinson . gibner @ enron . com\ncc :\nsubject : re : enron / stanford program\nhi stinson ,\ni am under pressure from the department to wrap up giuseppe ' s raship ,\nand i am probing to see how things are going on this matter on your\nside . i ' m deep in the red in terms of the deadline - way beyond it !\nwould it be possible to wrap this up this week ?\nmany thanks ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i spoke with paul racicot , head of trading for ebs , north america this\n> morning . he said that he is happy to send the $ 100 , 000 for your program\n> from his budget . i have forwarded to him the draft letter to accompany\n> the funds and will try to follow up to make sure that the money is sent\n> promptly .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.601+0000", "entityId": 8545, "properties": {"text": "Subject: re : risk ' s advanced stress testing course\ndear all ,\ni have been asked to give a talk on the use of copulas in stress testing\nat a risk conference .\nas i don ' t really work directly on those sorts of things anymore i would need\nsome help\nputting anything together - i am happy with the theory , i would just need to\npresent some results . it is a risk conference in london / new york in february .\nif i can ' t accept it soonish i ' ll have to turn it down .\nthe organiser has another person in mind and i don ' t want to give a rubbish\ntalk .\nregards ,\nsharad agnihotri\nplease respond to \" jean - pierre doggett \"\nto :\ncc :\nsubject : risk ' s advanced stress testing course\ndear sharad ,\ni attach a copy of the draft programme - please feel free to suggest any\namendments .\nto give you some context , we ' re pitching the course at more senior risk\nmanagers who are familiar with standard stress testing techniques so the\ncontent must be a significant step further e . g . alternative approaches ,\nincorporating credit risk etc .\nmy number is at the bottom of this message . thanks for your help ,\nj - p\njean - pierre doggett\nrisk conference producer\nrisk waters group\nphone : + 44 ( 0 ) 20 7484 9813\nfax + 44 ( 0 ) 20 7484 9800\ne - mail : jpdoggett @ riskwaters . com\nwww . riskwaters . com\n- stress testing draft . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.605+0000", "entityId": 8546, "properties": {"text": "Subject: datren williams acceptance\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 10 / 10 / 2000\n08 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarol coats\n09 / 29 / 2000 02 : 36 pm\nto : celeste roberts / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : datren williams acceptance\nceleste ,\ni just received datren williams ' acceptance with the following note attached :\n\" my graduation date ( ph . d . candidate from lsu ) is dec . 2000 . celeste roberts\nhas informed me that i would have the option of starting work feb . 2001 . i am\nunder the impression that i will start in feb . 2001 . my offer letter has a\nstart date\nof aug . 2001 . if this is a problem , please give me a call .\nlooking forward to working at enron .\nthanks a million ,\ndatren w . \"\nplease let me know if he may in fact start in feb . 2001 , and if so , do you\nhave\na specific date for him , or may he choose ?\nthanks , celeste ,\ncarol", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.610+0000", "entityId": 8547, "properties": {"text": "Subject: associate / analyst super saturday participation\nenron managing directors , vice presidents , directors , and managers who\nutilize the associate / analyst pool\nas a follow up from a \" save the date \" email regarding your participation in\nthe associate and analyst super saturday process , now is the time to select\nyour dates to attend and participate .\nbelow are the dates for super saturday weekends during the upcoming\nrecruiting season . if you are houston - based or if you know you will be in\nhouston on business at the appropriate times please click the link below to\nvolunteer .\n( when selecting dates please avoid selecting to interview candidates who\nattend the schools for which you are a team member . )\nassociates analysts\noctober 27 - 28 , 2000 november 3 - 4\nthunderbird , ut , georgetown , rice rice , ut , baylor , a & m , ou , florida , lsu ,\nuhcl\nnovember 10 - 11 , 2000 november , 17 - 18 , 2000\ncolumbia , stern nyu , ucla , darden , cornell penn , uva , vanderbilt , michigan ,\nhoward , auc ,\nvanderbilt , michigan uhmain\ndecember , 1 - 2 , 2000 december 8 - 9 , 20000\nchicago , kellogg , harvard , wharton , mit wellesley , overflow and re - schedules\nfrom previous s / s\nfriday , december 15 , 2000\ncarnegie mellon\nthank you for your support of the associate and analyst programs .\nshelly jones\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.615+0000", "entityId": 8548, "properties": {"text": "Subject: interview schedule for yingquan shen ( charles )\nplease be aware of the correction on candidate ' s name . thank you\nstephanie\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephanie summers / na / enron on 10 / 10 / 2000\n04 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstephanie summers\n10 / 10 / 2000 03 : 41 pm\nto : vince j kaminski / hou / ect @ ect , zimin lu / hou / ect @ ect , alex\nhuang / corp / enron @ enron , tanya tamarchenko / hou / ect @ ect , paulo\nissler / hou / ect @ ect\ncc : anita dupont / na / enron @ enron , shirley crenshaw / hou / ect @ ect , marlow\nanderson / corp / enron @ enron\nsubject : interview schedule for yingquan shen ( charles )\nplease find the interview packet for the above - referenced person . the\ninterview will occur on friday october 13 , 2000 . please print all three\ndocuments for your reference . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nstephanie\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.619+0000", "entityId": 8549, "properties": {"text": "Subject: interview schedule for shen ( charles ) yingquan\nplease find the interview packet for the above - referenced person . the\ninterview will occur on friday october 13 , 2000 . please print all three\ndocuments for your reference . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nstephanie\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.623+0000", "entityId": 8550, "properties": {"text": "Subject: re : bollerslev seminar\nexcellent . thank you .\nbbo\nat 03 : 19 pm 10 / 10 / 00 - 0500 , you wrote :\n> barbara ,\n>\n> noon will be fine . we shall just use the lunch hour .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> barbara ostdiek on 10 / 10 / 2000 12 : 53 : 34 pm\n>\n> to : vince . j . kaminski @ enron . com ( vince kaminski )\n> cc :\n> subject : bollerslev seminar\n>\n>\n> vince :\n>\n> i don ' t know if you noticed that we have tim bollerslev on the seminar\n> schedule for december 8 . in order for tim to get back to north carolina on\n> friday , we need to move the seminar time . i thought that the enron folks\n> might be interested in his talk so i wanted to get you input on a new\n> time . i know that 3 : 30 is best but would over the noon hour be second best\n> or would 2 : 00 be better ?\n>\n> thanks .\n>\n> bbo\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.628+0000", "entityId": 8551, "properties": {"text": "Subject: bollerslev seminar\nvince :\ni don ' t know if you noticed that we have tim bollerslev on the seminar\nschedule for december 8 . in order for tim to get back to north carolina on\nfriday , we need to move the seminar time . i thought that the enron folks\nmight be interested in his talk so i wanted to get you input on a new\ntime . i know that 3 : 30 is best but would over the noon hour be second best\nor would 2 : 00 be better ?\nthanks .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.633+0000", "entityId": 8552, "properties": {"text": "Subject: re : enron / stanford program\nvince ,\ni will call paul racicot tomorrow . can you try and do the same ?\nthanks ,\nstinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 10 / 10 / 2000\n07 : 59 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 10 / 09 / 2000 12 : 04 : 19 am\nto : stinson . gibner @ enron . com\ncc :\nsubject : re : enron / stanford program\nhi stinson ,\ni am under pressure from the department to wrap up giuseppe ' s raship ,\nand i am probing to see how things are going on this matter on your\nside . i ' m deep in the red in terms of the deadline - way beyond it !\nwould it be possible to wrap this up this week ?\nmany thanks ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i spoke with paul racicot , head of trading for ebs , north america this\n> morning . he said that he is happy to send the $ 100 , 000 for your program\n> from his budget . i have forwarded to him the draft letter to accompany\n> the funds and will try to follow up to make sure that the money is sent\n> promptly .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.640+0000", "entityId": 8553, "properties": {"text": "Subject: cal berkeley general presentation confirmation - 10 / 16 / 00\ncal berkeley\ngeneral presentation\nmonday , october 16 th\nthis note is to confirm that you are scheduled to attend the cal berkeley\ngeneral presentation on monday october 16 th . this e - mail should contain any\ninformation that you need to know pertaining to your trip . please print out\na hard copy and bring with you in case of emergency . if you have any\nquestions , there is a list of contacts listed below .\nonce again , thank you for offering to help with technology recruiting at cal\nberkeley . see you on campus !\nlara\nthe general presentation will be held :\nmonday , october 16 th\nthe faculty club\nseaborg room - 2 nd floor\n7 : 00 p . m . to 9 : 00 p . m .\n* * please plan on arriving at the general presentation by 6 : 00 p . m .\nthe general presentation is designed to educate the students on enron and the\nglobal technology track . following the presentation we will invite the\nstudents to ask questions about enron and the global technology track .\nplease plan to arrive at the general presentation by 6 : 00 p . m . it is\nbusiness casual attire .\nflight arrangements :\nyou are responsible for scheduling your own flight arrangements with your\npreferred airline provider . please schedule your flight to arrive to the san\nfrancisco airport on monday , october 16 th . please remember that there can\nbe significant traffic over the bay bridge and to get into town at least an\nhour prior to the event . please make all flight arrangements through the\ntravel agency in the park so that we are able to take advantage of discount\nfares . if you do not have a representative that you currently use at the\ntravel agency in the park - feel free to contact liz mendiola at 713 - 860 - 1140 .\nrental car arrangements :\nonce again , you are responsible for scheduling your own rental car\narrangements with your preferred provider . your travel agency in the park\nrepresentative should be able to assist you with rental car reservations .\nhotel arrangements :\nhotel reservations are currently being made by our representative at the\ntravel agency in the park .\nas soon as we have confirmation numbers , i will let you know .\nsan francisco airport to the faculty club\ntake 101 northbound\nexit to san francisco / oakland bay bridge\nexit to 1 - 80 east\nexit on university ave .\neast on university avenue for 1 . 5 miles to oxford st .\nright on oxford st . , left on durant ave . , left on piedmont\nyou will see parking on the right side\nonce again , thank you so much for helping with the general presentation .\nbelow are some last minute tips to keep in mind :\nplease remember to dress business casual .\nplease remember to bring some business cards for students .\ni have attached a pdf version of the global technology track brochure .\nplease forward all expense receipts to grace garcia . she will handle any\nexpenses incurred for this recruiting trip including : flight costs , hotel ,\ncar , food , valet , etc . however , you must turn in some sort of receipt - so\nbe sure and save them !\nashley baxter work : 713 - 853 - 3589\ncell : 281 - 793 - 0567\nlara berry work : 713 - 345 - 8320\ncell : 713 - 857 - 1034\ngrace garcia work : 713 - 853 - 7252\nsimone lewis work : 713 - 853 - 1645", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.648+0000", "entityId": 8554, "properties": {"text": "Subject: re : waco visit\ngreat . why don ' t you plan on getting here by 3 : 00 p . m . ( or sooner ) . we ' ll\ndo a little seminar at 4 for the faculty ( perhaps outlining your thoughts\non the paper we are preparing ) . we ' ll do the class 6 - 7 : 30 or so ( i ' ll get\nyou to your hotel for i teach until 10 pm ) . then we ' ll put in time tue\nworking on the paper .\njohn\nat 03 : 22 pm 10 / 10 / 00 - 0500 , you wrote :\n>\n> john ,\n>\n> per our discussion , nov 13 is fine .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" john d . martin \" on 10 / 09 / 2000 05 : 27 : 30 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : waco visit\n>\n>\n> vince ,\n>\n> i have penciled you in for nov 13 th for my class . does this work for you ?\n> this is a monday and i would suggest you come up monday afternoon , you can\n> give a brief talk to our department late in the afternoon , and then you can\n> talk to my ex mbas at 6 p . m . for an hour or so . i ' ll get you to the hotel\n> for the evening and we can work on the paper tuesday morning . i recommend\n> this mon noon through tue noon arrangement since i will be out of town the\n> weekend before the 13 th . if this needs reshuffling let me know . we ' ll\n> make it work .\n>\n> i look forward to talking with you later this week along with mark palmer .\n>\n> john\n>\n>\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.655+0000", "entityId": 8555, "properties": {"text": "Subject: tiger team info\nvince ,\nhere is the info re : tiger team . i haven ' t opened it yet , but i will have my\ngroup work on any of the general enron information requested .\nthanks for your time and input this morning !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 10 / 10 / 2000\n03 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npiazze on 10 / 10 / 2000 10 : 49 : 35 am\nto : \" ' christie . patrick @ enron . com ' \"\ncc :\nsubject : tiger team info\nchristie :\nnice talking with you and vince this morning . the project sounds very\nexciting and we look forward to working with enron .\nattached is info for your review . let me know if there is further info i\ncan provide to you .\nsincerely ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n( 215 ) 573 - 8394\n( 215 ) 573 - 5727 fax\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu\n- tiger team brochure 2000 - 2001 . doc\n- tiger host responsibilities . doc\n- non - disclosure - redraft 1 _ . doc\n- 2001 field application form 1 . doc\n- 2001 field application form 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.659+0000", "entityId": 8556, "properties": {"text": "Subject: tiger team application forms\nvince :\nthe application forms , as promised .\ngood talking to you and christie this morning . the project sounds very\nexciting and we look forward to working with enron .\nlet me know if there is further info we can provide .\nthanks ,\ndonna\n- 2001 field application form 1 . doc\n- 2001 field application form 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.664+0000", "entityId": 8557, "properties": {"text": "Subject: review of paper by titman , et al\nresending . . .\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 10 / 10 / 2000\n11 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvasant shanbhogue\n10 / 02 / 2000 02 : 04 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : review of paper by titman , et al", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.668+0000", "entityId": 8558, "properties": {"text": "Subject: re : planning for your energy finance class presentation wed . , 10 / 11\nehud ,\ni am flying back in the evening and dinner would be difficult .\ni shall be glad to join you for lunch ,\nshirley , as i understand gave you my requirements for the av .\nmy flight arrives at 8 : 30 a . m . i can meet you at your office in the morning\nand\nwe can talk about the conference and other issues .\nvince\n\" ehud i . ronn \" on 10 / 09 / 2000 09 : 23 : 55 am\nto : vkamins @ enron . com\ncc :\nsubject : planning for your energy finance class presentation wed . , 10 / 11\nvince ,\ngood morning .\nfurther to your forthcoming visit this wed . , i write to clarify last - minute\ndetails :\n1 . your eta / etd . will you be available to join us for lunch and / or dinner ?\n2 . your av requirements , if any . should you need either , we have an\noverhead projector as well as laptop capability ( either your laptop , or we\ncan with advance notice reserve a laptop if you bring floppies ) .\nbtw , any developments re jeff skilling ' s 2 / 22 conference keynote ?\nbest ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.673+0000", "entityId": 8559, "properties": {"text": "Subject: elena chilkha\nplease fill - out the evaluation sheets on elena chilkina .\nthanks sorry i didn ' t includ the evalutation form .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.678+0000", "entityId": 8560, "properties": {"text": "Subject: re : boss ' s day\nkevin ,\nno problem , a very good idea .\nplease , submit expenses to em for signature .\nvince\nkevin g moore\n10 / 10 / 2000 09 : 10 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , jose\nmarquez / corp / enron @ enron\ncc :\nsubject : boss ' s day\nwell vince ,\nthe group has responded and ready for action .\nvince , we would like to take mike to happy hour\nfor boss ' s day on the 16 th of oct .\nso if it is okay with you may we do so ?\ni am aware that you will be out on this particular\nday however , i would also like to ask anyone in\nthe research group to please join us as we celebrate\nwith mike .\nfyi : nothing fancy just a few drinks , laugher and conversation .\nthanks\nkevin moore\np . s . please inform . . . . . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 10 / 10 / 2000 09 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n10 / 09 / 2000 02 : 35 pm\nto : jose marquez / corp / enron @ enron , william smith / corp / enron @ enron , elena\nchilkina / corp / enron @ enron , v charles weldon / hou / ect @ ect , joseph\nhrgovcic / hou / ect @ ect\ncc :\nsubject : boss ' s day\nhey everyone ,\ni know you may not be aware that boss ' s day oct . 16 , 2000\nwe will celebrate as a group in the staff meeting on oct . 19 th ,\nwith the big boss vince kaminski and all the others , however ,\nif you would like to do something special for our boss , please\ninform me whereby i can make arrangements .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.683+0000", "entityId": 8561, "properties": {"text": "Subject: elena chilkina\nplease fill - out the evaluation sheets on elena chilkina .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.688+0000", "entityId": 8562, "properties": {"text": "Subject: re : long term demand forecast - looking for more information\nhi slava\ni ' m not sure who ' s looking after power - related stuff in houston at present .\nbest to let vince redirect your query .\nsteve\nviacheslav danilov\n11 / 10 / 2000 15 : 51\nto : steven leppard / lon / ect @ ect\ncc : graham mullin / lon / ect @ ect\nsubject : long term demand forecast - looking for more information\nhi steve ,\ni plan to spend next week building relatively simple long term ( 1 - 2 years )\ndemand forecast - it will be a starting point and will allow our guys to work .\nfor more detailed analysis i will need more information , particularly on\nrecent changes in demand in the sates ( california ) .\ni tried to contact vince , but probably he is very busy right now .\nplease , could you help me to find somebody in the houston who may provide any\nhelp .\nmany thanks ,\nslava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.693+0000", "entityId": 8563, "properties": {"text": "Subject: 21 st annual energy symposium - november 28 - 29 , 2000 , houston , texas\ndear vince ,\nthank you for taking the time to dine with chris and me back on monday 2\noctober .\nfurther to our dinner , i would like to forward you information on three\ntopics :\nthe partners who lead arthur andersen ' s relationship with enron are david\nduncan , based in houston , and simon prew , based in london ;\nour country managing partner for russia and\ndetails of our 21 st energy symposium are attached below .\nif you are interested in registering for our symposium please contact david\ndirectly .\nshould you require any further information on the topics we discussed over\ndinner ( strategy , value and risk ) please do not hesitate to contact us in\nhouston or london .\nregards , allan\n( embedded image moved to file : pic 20284 . pcx )\nthe energy symposium is one of the largest energy conferences in the world and\nwe are successful in attracting senior energy executives as speakers to this\n2 - day event . this year ' s event will be november 28 & 29 .\nthe energy symposium is much more that just an \" accounting conference . \"\nindustry leaders discuss a range of topics and share their perspectives on\nstrategic , economic , political , financial and operating issues .\nparticipants find the networking aspect of the symposium to be especially\nvaluable . there is ample time during the event for them to meet and talk with\ntheir counterparts and colleagues in the industry . and it is a premier\nmarketing opportunity for arthur andersen , where more than 300 partners and\nmanagers get to spend two days with 700 executives from the energy and\nutilities\nindustry in a forum .\nthe symposium check - in begins monday , november 27 at 6 p . m . , with a cocktail\nreception in the galleria ballroom foyer . arthur andersen personnel are\nencouraged to attend for an opportunity to network with colleagues , clients\nand\nprospective clients in an informal setting .\nthank you in advance and i look forward to seeing you and your clients in\nhouston .\nvictor a . burk\nmonday , november 27 , 2000\n6 - 10 p . m . opening reception\ntuesday , november 28 , 2000\n7 : 00 a . m . registration\n8 : 15 a . m . symposium wide opening and welcome\n8 : 30 a . m . opening plenary session\nglobal power companies : strategies for success\n10 : 00 a . m . break\n10 : 30 a . m . concurrent session i\ni - a the changing face of utilities : u . s . restructuring continues\ni - b bandwidth markets : opportunities & pitfalls\nnoon lunch and keynote presentation\n2 : 00 p . m . concurrent session ii\nii - a retail energy services : the new game\nii - b mergers & acquisitions : more to come ?\nii - c new business models and technologies : changing the supply\nchain\n3 : 30 p . m . break\n4 : 00 p . m . concurrent session iii\niii - a opportunities and risks in the emerging global emissions\ntrading market\niii - b oil field services : the new landscape\niii - c accounting and reporting outlook\n5 : 30 p . m . reception\nwednesday , november 29 , 2000\n7 : 00 a . m . registration\n8 : 00 a . m . breakfast roundtable discussions\nrt - 1 asia / pacific region\nrt - 2 caspian region\nrt - 3 bandwidth markets\nrt - 4 customer relationship management\nrt - 5 digital markets\nrt - 6 value creation in the e & p industry\n9 : 45 a . m . break\n10 : 15 a . m . concurrent session iv\niv - a trading and marketing : new products and new players\niv - b creating value in the e & p industry\n11 : 45 a . m . lunch and keynote presentation\n2 : 00 p . m . supply chain optimization workshop\n4 : 00 p . m . symposium adjourns\nthe printed program and registration materials will be mailed to more than\n10 , 000 people on our us oil and gas and utility mailing lists on october 2 . a\ncopy of the materials is attached below . in addition , you can always refer to\nour website , www . energysymposium . com , for any updates to the agenda .\n( see attached file : es _ 2000 . pdf )\nheadquarters : octel & network : 713 - 237 - 5400\nfax : 713 - 237 - 2214\nlotus notes : energy symposium hq or\nenergy . symposium @ arthurandersen . com\nsymposium in - charge : melissa l . spradley\noctel & network : 713 - 237 - 2385\nfax : 713 - 237 - 5673\nsymposium contact : mickey r . appel\noctel & network : 713 - 237 - 2472\nfax : 713 - 237 - 5673\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nthe uk firm of arthur andersen is authorised by the institute of chartered\naccountants in england and wales to carry on investment business . a list of\npartners is available at 1 surrey street , london , wc 2 r 2 ps ( principal place of\nbusiness ) .\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .\n- pic 20284 . pcx\n- es _ 2000 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.697+0000", "entityId": 8564, "properties": {"text": "Subject: re : matthew williams\nlet ' s agree the switch happens november lst and we will change sap to reflect\nspecialist status and matthew will be send a letter .\nmatt , can you just send me a note confirming you are ok with this and cc .\nkaren tamlyn who will make the change .\nregards\nsk\ndale surbey\n11 / 10 / 2000 18 : 21\nto : steven leppard / lon / ect @ ect\ncc : melanie doyle / lon / ect @ ect , sophie kingsley / lon / ect @ ect , tani\nnath / lon / ect @ ect , matthew d williams / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : matthew williams\ni agree - sounds like a good idea .\n- dale\nsteven leppard\n11 / 10 / 2000 18 : 05\nto : melanie doyle / lon / ect @ ect , sophie kingsley / lon / ect @ ect\ncc : tani nath / lon / ect @ ect , dale surbey / lon / ect @ ect , matthew d\nwilliams / lon / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : matthew williams\nall\nfollowing discussions between matt , vince kaminski , and me , matt has decided\nhe ' d like to make a longer - term commitment to research . with this in mind\nwe ' d like to request that matt is switched from a & a to the specialist track .\nvince and i feel this is clearly in the best interests of enron given matt ' s\nproven strengths in quant analysis .\nhow do we proceed ?\nall the best ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.702+0000", "entityId": 8565, "properties": {"text": "Subject: re : eprm article\njulie / vince\n?\ni worked on both the last couple of nights and made quite a few small\n\" improvements \" .\n?\nvince - if the 2 nd article ( eprm _ 02 _ mr . doc ) is ok with you then that is\nready .\n?\nthe 3 rd article needs fig 1 updating still will hopefully do that this w / e .\n?\nles .\n?\n- eprm _ 02 _ 03 . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.706+0000", "entityId": 8566, "properties": {"text": "Subject: resume of mark giancola\nrichard :\ni am vince kaminski ' s assistant , and vince received an email from you\nyesterday concerning employment for mark giancola . he forwarded the\nemail to maureen raymond , sr . economist with the research group .\nshe is currently looking for an associate economist and would very much\nlike to interview mark .\ncan you let us know the best way to approach this ? can you contact him\nor should i send him an email asking him to give us some dates he might\nbe available for an interview .\nyour quick response will be appreciated .\nthanks richard !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.711+0000", "entityId": 8567, "properties": {"text": "Subject: from vicky windsor\ndear vince ,\nhow are you ? well i hope .\ni hope you don \u0001 , t mind me writing to you . you may remember that 5 months ago\ni left risk publications and moved to a charity . having been here for only a\nfew months , i have decided that this job is not for me ( i miss the buzz of a\ncorporate office ) and i have decided to move back into the corporate sector .\nbecause of my previous experience and knowledge of the energy sector , i am\nvery interested in moving into this area . i have always thought that it\nwould be great to work for enron because it is such a dynamic company and i\nam planning to approach the london office to discuss any opportunities ,\nwhich might be available . i am particularly interested in product marketing\nand research , although i am very open - minded at the moment . i wondered\nwhether you could recommend the right person to speak to in london .\ni know that you are incredibly busy , but any help you can give me would be\nfantastic vince .\nthanks and best regards ,\nvicky windsor\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.716+0000", "entityId": 8568, "properties": {"text": "Subject: re : enron / stanford program\nvince ,\nare we on for dinner on sunday at 7 pm ?\nbest regards ,\nnick\nnick bambos wrote :\n>\n> vince ,\n>\n> i have managed to change my ticket and we can meet for dinner on sunday\n10 / 15 / 00 .\n> shall we say at 7 pm ?\n>\n> > > > > giuseppe : can you please join us for dinner on sunday 10 / 15 . we ' d like\nto briefly\n> discuss the project too . could i please ask you to make reservations for 3\nat\n> il fornaio or some other nice place in palo alto ? preferably a quiet place\nwhere\n> we can talk .\n> thanks ,\n>\n> nick\n>\n> vince . j . kaminski @ enron . com wrote :\n> >\n> > nick ,\n> >\n> > dinner on sunday would work for me . i shall stay\n> > in the bay area till monday morning .\n> >\n> > vince\n> >\n> > nick bambos on 09 / 28 / 2000 08 : 33 : 38 pm\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : enron / stanford program\n> >\n> > hi vince ,\n> >\n> > i am on the technical program committee of the infocom 2001 conference ,\n> > and we are meeting in new york city on saturday , october 14 th , to select\n> > papers for the conference program . i ' m leaving stanford on friday and\n> > getting back on sunday .\n> >\n> > it might be a possibility to have dinner together on sunday , if that would\n> > work for you . in that case i would have to reschedule my flight to land\n> > in sfo earlier than i ' m currently scheduled to land .\n> >\n> > would dinner on sunday work for you ? any chance we can meet monday for\n> > lunch ?\n> >\n> > i look forward to seeing you .\n> >\n> > best regards ,\n> >\n> > nick\n> >\n> > vince . j . kaminski @ enron . com wrote :\n> > >\n> > > nick ,\n> > >\n> > > i shall be in stanford oct 14 - 15 , visiting my family .\n> > > i would be glad to meet you ( and possibly giuseppe - your call ) for\n> > lunch .\n> > > please , let mer know if you are free on one of these days . saturday\nwould\n> > > work better for me .\n> > >\n> > > vince\n> > >\n> > > nick bambos on 09 / 21 / 2000 02 : 09 : 46 pm\n> > >\n> > > to : stinson . gibner @ enron . com\n> > > cc : vince . j . kaminski @ enron . com\n> > > subject : re : enron / stanford program\n> > >\n> > > stinson ,\n> > >\n> > > great ! i ' m looking forward to a very productive collaboration .\n> > > i ' ll immediately start doing giuseppe ' s papers , for him to work\n> > > on the enron / stanford program .\n> > >\n> > > many thanks to you and vince , and i hope to see you soon at stanford\n> > > or enron . if i remember correctly , vince is visiting stanford in\n> > > october .\n> > >\n> > > best regards ,\n> > >\n> > > nick\n> > >\n> > > stinson . gibner @ enron . com wrote :\n> > > >\n> > > > nick ,\n> > > >\n> > > > i spoke with paul racicot , head of trading for ebs , north america\nthis\n> > > > morning . he said that he is happy to send the $ 100 , 000 for your\n> > program\n> > > > from his budget . i have forwarded to him the draft letter to\n> > accompany\n> > > > the funds and will try to follow up to make sure that the money is\nsent\n> > > > promptly .\n> > > >\n> > > > - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.721+0000", "entityId": 8569, "properties": {"text": "Subject: proposal\nchristie ,\nthanks for helping out . attached is a one page \" intro \" to the project that\nvince and i are undertaking . please let me know how you would like it\n\" transformed \" before passing it along to the leadership at enron .\nyou have the basic story - - enron ' s leadership purposefully and very\nsuccessfully transformed the company . we plan to document in broad strokes\nthe \" plan \" as it was set out , and trace its evolution through the history\nof enron ' s history . the final result will be a 20 - 40 page paper written in\nthe style of a harvard business review piece .\nplease let me know what else you may need . i ' ll put it together for you .\nthanks again ,\njohn\n- enronproposal . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.726+0000", "entityId": 8570, "properties": {"text": "Subject: tiger team\nhi vince !\nattached is part 1 for the \" tiger team \" application . nb : can shirley please\nfill in your fax number ?\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.731+0000", "entityId": 8571, "properties": {"text": "Subject: fw : eprm article\nany feedback on the latest article from chris for eprm ? ? please let me know\nwhen i can expect some feedback so i can get back to eprm , since they are\ngoing to press in a week .\n?\nthanks ,\njulie\n?\n?\n- - - - - original message - - - - -\nfrom : robin lancaster\nto : julie\nsent : wednesday , october 11 , 2000 10 : 52 am\nsubject : eprm article\njulie\ni know that chris is away and so siad to contact you with any problems . just\nwant to know the status of the article for this month ? the last e - mail from\nchris said it was getting a final look over from vince kaminski and i should\nexpect it a few days and that was last thursday . any news , as we ' re due to\ngo to press in a week and a day .\nrobin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.736+0000", "entityId": 8572, "properties": {"text": "Subject: \" we are one @ enron . com ! \" : final notice .\nplease be aware that the following internet domains for messaging will be\ndecommissioned on\noctober 14 , 2000 :\n@ ect . enron . com\n@ ei . enron . com\n@ enron . co . uk\nafter october 14 , 2000 , internet emails addressed to employees using the\nabove internet domain names will be no longer be delivered .\nplease note that this applies to enron employees worldwide .\nall employees must now use their @ enron . com internet address .\nsome employees are still receiving internet email , primarily subscriptions to\ninternet - based news / update services , addressed to their @ ect . enron . com ,\n@ ei . enron . com or @ enron . co . uk email address . as mails to these addresses\nwill no longer be delivered after october 14 , 2000 please contact the service\nproviders to specify your new @ enron . com internet address .\nany employees who are aware of the following should contact the resolution\ncenter on ext . 31411 immediately :\napplications / processes using @ ect . enron . com , @ ei . enron . com or @ enron . co . uk\ninternet addresses\ndistribution groups being addressed via the internet using @ ect . enron . com ,\ne . g . enron . london . developers @ ect . enron . com\nplease direct any questions to the resolution center at ext . 31411 .\nthanks for your cooperation .\nenron messaging administration", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.741+0000", "entityId": 8573, "properties": {"text": "Subject: re : options model\njeff ,\ni got 20 cents for the swith option per dth . my assumptions are as follows :\nprice curve assumption :\nwaha - - - if - waha\nla plata pool and tw ( ignacio ) - - if - epso / sj\ncalifornia border - - ngi - socal\ncorrelation assumption :\nwaha - sj 95 %\nsocal - sj 90 %\nsee the attached spreadsheet for more info . call me for questions .\nzimin\njeffery fawcett @ enron\n10 / 11 / 2000 02 : 56 pm\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : options model\nzimin ,\nwe ' re trying to price out a \" live \" options deal . here are the parameters :\nvolume : 32 , 000 dth / d\nterm : jan . 1 , 2002 through oct . 31 , 2006 ( 58 mos . )\nprice : one part rate , $ 0 . 2175 / dth , plus applicable fuel\nprimary receipt / delivery points : ( east - to - east transport )\nreceipt : la plata pool ( use san juan , blanco price equivalent )\ndelivery : waha area\noption :\nalternate delivery pnt . : california border ( east - to - west transport )\nprice :\nfloor - $ 0 . 2175 / dth , plus 4 . 75 % pipeline fuel , plus 50 % of the difference\nbetween the california border index\nprice and the san juan basin index price . specifically , we ' ll use :\n( socalgas large pkgs . minus tw ( ignacio , pts . south ) )\nan important things to consider :\nthis option is only for alternate firm deliveries . alternate firm is really\njust a glorified version of interruptible .\ncan you run the option model and tell me what is the dollar value of this\nrather \" unpure \" option ?\ni appreciate it . give me a call at 3 - 1521 if you have any questions . also ,\ncan you get us an answer by friday , 10 / 13 / 00 ? we ' re looking to get the\nproposal out to the customer by the end of the week if possible . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.746+0000", "entityId": 8574, "properties": {"text": "Subject: swaps monitor research .\nelena ,\nplease , review the energy related info in this database ( if any ) and talk to\nme\nabout it .\ni would like to do some research in this area and ask you to write a summary\nreport .\nnothing urgent .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n03 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrei osonenko on 10 / 11 / 2000 04 : 26 : 38 pm\nto : ( recipient list suppressed )\ncc :\nsubject : swaps monitor research .\nwe have today published information about the otc derivative activities of\nthe largest dutch dealers . this research is contained in the attached pdf\nfile .\nthrough our web site , swapsmonitor . com , you can obtain additional information\nabout otc derivatives dealers , including rankings and a database of\noutstandings going back to 1994 .\nas an e - mail subscriber to our research , you will automatically receive all\nfree research at the same time it is placed on our web site . if you wish to\nremove your name from the e - mailing list , please use the reply feature of\nyour e - mail application and type the word \" remove \" in the subject line .\nregards ,\n- dutch _ dealers . pdf\nandrei osonenko\nresearch department", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.753+0000", "entityId": 8575, "properties": {"text": "Subject: re : report research\ni have responded back to barbara and am sending her some written material .\nthank you .\nvince j kaminski\n10 / 12 / 2000 10 : 50 am\nto : mike a roberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect\ncc : mark tawney / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : report research\njoe , mike ,\nplease check with pr first if we want too talk to her\nand run it by mark . i think it is in our interest to be\nquotes extensively in the press .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n10 : 53 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenergywriter @ aol . com on 10 / 11 / 2000 10 : 54 : 39 am\nplease respond to energywriter @ aol . com\nto : energywriter @ aol . com\ncc :\nsubject : report research\ni am writing a management report on weather risk management . the story\nwill discuss different weather risk management tools used by power\nmarketers in the energy industry . it also looks at weather prediction\nand analysis services available to energy traders .\ni am looking for a list and description of the weather risk management\nproducts , and how each can benefit an energy trader . i would also like\nto know what traders ' reactions to significant weather are . and where\ncan i find a list of popular weather instruments with descriptions ?\ni appreciate any help you can give me . i would like to set up a chat\nwith you this week if you have the time , or simply email me your input .\nthanks in advance !\nbarbara drazga\nindependent journalist\npo box 472401\naurora , co 80047\n303 - 369 - 3533 tel .\n303 - 369 - 3510 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.757+0000", "entityId": 8576, "properties": {"text": "Subject: option p & l\ngentleman :\nthe erms system , as you know , has an excellent capability for\ndecomposing option p & l into the following components :\nnew deals\ncurve shift\ngamma\nvega\ntheta\nrho\ndrift\n2 nd order adjustments\nwhat i dont understand is the gamma component which is reported in dollars .\nthe unit of measure suggests that incremental changes in a contract position\nis being associated with specific prices . these prices are the effective buy\nor sell prices associated with the dynamic delta position .\nstated differently , the standard taylor expansion has incorporated a price\nvariable in such a way as to convert the unit of measure from gamma ' s\nstandard contract count to total gamma dolalrs . this is something i dont\nunderstand . to date , inquiries to the risk management accounting group has\nfurther revealed that the gamma component of p & l is not well understood .\nthis is what concerns me : bridgeline has 2 books with option exposures ( nymex\nand gas daily ) . both books dynamically hedged its positions during\nyesterdays large price move and , through anticipitory hedging in advance or\nduring the large price move , secured sufficient coverage to neutralize\nexpected changes in delta . however , our p & l from our underlying position did\nnot offset our gamma p & l . consequently , i have to ask why ? im hoping that a\nbrief look at the why gamma dollars are calculated may reveal something which\nwill better guide our hedging decisions .\nany help is appreciated", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.762+0000", "entityId": 8577, "properties": {"text": "Subject: mec advisory board meeting\nwe are still in discussions with mec about a transaction , but it seems to be\nmoving in the right direction . they have asked to set up an advisory meeting\nin december to meet the senior team members . mr . plotnick indicated that he\nexpects to have his cto in place by then . i am trying to arrange our first\nmeeting the week of december 5 or december 12 . please send me a short list\nof times you have available for a two hour meeting .\nonce again , i would like to thank each of you for your help with this\nproject .\nregards ,\nmark\nmark lay\nenron investment partners\n333 clay st . , suite 3800\nhouston , tx 77002\np 713 - 853 - 7408\nf 713 - 345 - 7670", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.767+0000", "entityId": 8578, "properties": {"text": "Subject: re : datren williams acceptance\nwhat a kind and thoughtful man you always are , vince . . . . i have always\nappreciated\nthat in you ! i just moved to another position this week - with sheila\nknudsen in ena\ncompensation , but i will always remember how wonderful you are with the\nassociates\nand analysts in the program , and will miss having the opportunity to touch\nbase with\nyou occasionally . thank you for being the special man you are !\ncarol\np . s . i doubt that you know who i am , but i had worked with the program for\ntwo years ,\nhaving been hired by mike smalling in october 1998 . when i first moved to\nhouston\n( from ohio ) and enron , i rode the # 35 bus for a short while . you helped me\nfind enron the first\nday i rode it , but i didn ' t know who you were until i saw you at our super\nsaturday\nactivities . you will never know how much that assistance meant to me - a\nshy ,\nstreet - dumb girl from toledo , ohio , in a city like houston , who didn ' t know\nhow to\nride a bus ! all of enron loves you , and i know why !\nvince j kaminski\n10 / 12 / 2000 04 : 32 pm\nto : carol coats / hou / ect @ ect\ncc :\nsubject : re : datren williams acceptance\ncarol ,\nthanks .\nvince\ncarol coats\n10 / 12 / 2000 04 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : re : datren williams acceptance\nyou are right , vince . . . . celeste and i did discuss it , and she approved his\nfeb . start date .\ndatren does know about that , so it sounds like it is cleared up .\nthanks so much , and we are sorry for the confusion !\ncarol\nvince j kaminski\n10 / 12 / 2000 03 : 58 pm\nto : stinson gibner / hou / ect @ ect\ncc : carol coats / hou / ect @ ect\nsubject : re : datren williams acceptance\nstinson ,\ni think it ' s a mistake . it should be february .\nvince\nstinson gibner\n10 / 10 / 2000 08 : 11 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : datren williams acceptance\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 10 / 10 / 2000\n08 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarol coats\n09 / 29 / 2000 02 : 36 pm\nto : celeste roberts / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : datren williams acceptance\nceleste ,\ni just received datren williams ' acceptance with the following note attached :\n\" my graduation date ( ph . d . candidate from lsu ) is dec . 2000 . celeste roberts\nhas informed me that i would have the option of starting work feb . 2001 . i am\nunder the impression that i will start in feb . 2001 . my offer letter has a\nstart date\nof aug . 2001 . if this is a problem , please give me a call .\nlooking forward to working at enron .\nthanks a million ,\ndatren w . \"\nplease let me know if he may in fact start in feb . 2001 , and if so , do you\nhave\na specific date for him , or may he choose ?\nthanks , celeste ,\ncarol", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.775+0000", "entityId": 8579, "properties": {"text": "Subject: re : datren williams acceptance\nyou are right , vince . . . . celeste and i did discuss it , and she approved his\nfeb . start date .\ndatren does know about that , so it sounds like it is cleared up .\nthanks so much , and we are sorry for the confusion !\ncarol\nvince j kaminski\n10 / 12 / 2000 03 : 58 pm\nto : stinson gibner / hou / ect @ ect\ncc : carol coats / hou / ect @ ect\nsubject : re : datren williams acceptance\nstinson ,\ni think it ' s a mistake . it should be february .\nvince\nstinson gibner\n10 / 10 / 2000 08 : 11 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : datren williams acceptance\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 10 / 10 / 2000\n08 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarol coats\n09 / 29 / 2000 02 : 36 pm\nto : celeste roberts / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : datren williams acceptance\nceleste ,\ni just received datren williams ' acceptance with the following note attached :\n\" my graduation date ( ph . d . candidate from lsu ) is dec . 2000 . celeste roberts\nhas informed me that i would have the option of starting work feb . 2001 . i am\nunder the impression that i will start in feb . 2001 . my offer letter has a\nstart date\nof aug . 2001 . if this is a problem , please give me a call .\nlooking forward to working at enron .\nthanks a million ,\ndatren w . \"\nplease let me know if he may in fact start in feb . 2001 , and if so , do you\nhave\na specific date for him , or may he choose ?\nthanks , celeste ,\ncarol", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.781+0000", "entityId": 8580, "properties": {"text": "Subject: re : power play book\nvince ,\nyou are a saint for lending me a copy of your book . i agree with you that we\ndon ' t want increase there revenues even by a $ 1 . 00 , although my\nrecommendation ( and mark palmer ' s as well ) is that we should pursue a\nrebuttal for the following reasons :\nas i mentioned i scoured the internet ( britannica . com , amazon . com , yahoo . com\nand dow jones ) and could not find one mention of the book , therefore mr .\nmehta ' s distribution must not be wide at all . consequently , his comments may\nnot have reached a large audience . issuing a rebuttal , may in fact , draw\nmore attention to the comments and issues then they are currently receiving .\ni believe we should proceed with caution , and respond accordingly ( with\ncounter comments ) only when comments are solicited from us . so far , we have\nnot received any telephone inquiries from media in relation to mr . mehta ' s\nenron bashing . may be we should ' leave the stones unturned ' .\nlet me know what you think . also , please contact me when it is convenient\nfor me to borrow the book from you .\nregards ,\ncindy\nvince j kaminski @ ect\n10 / 12 / 2000 03 : 38 pm\nto : cindy derecskey / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : power play book\ncindy ,\ni got a copy of the book and another one is on the way from our officer in\nindia .\ni can lend you the book and you can makes copies of the most important\nchapters .\ni don ' t think we should be buying too many copies and increasing the sales of\nthe book .\nin general , i think that we should counter the presentations made by mr .\nmehta . the person in charge of\nour dhabol operation is a stanford graduate and maybe he could obtain an\ninvitation\nto speak at the same forum and present the facts as they are . he should be\nhere for the management\nconference .\nvince\nfrom : cindy derecskey @ enron on 10 / 11 / 2000 01 : 30 pm\nto : vince j kaminski / hou / ect @ ect\ncc : christie patrick / hou / ect @ ect , michael b rosen / hou / ect @ ect\nsubject : power play book\ngood afternoon vince ,\nchristie patrick mentioned to me the conference that your wife recently\nattended at stanford . at this coference abahy mehta discussed his / her\nrecently published book ' power play ' - that certainly does not flatter\nenron . i have conducted a search on amazon . com , britannica . com and dow jones\nand i am coming up empty handed . would you be kind enough to briefly trouble\nyour wife to provide any other information she may remember , so i can narrow\nmy search .\ni greatly appreciate it .\nregards ,\ncindy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.787+0000", "entityId": 8581, "properties": {"text": "Subject: organization announcement\nwe are pleased to announce the following organization changes within enron\nglobal markets ( egm ) .\nlarry lawyer will be joining egm effective immediately to lead our new\nfinance activities . in this role , he will work with all commodity products ,\nassets , and teams worldwide to lever our existing businesses with this new\nfocus . larry has worked as treasurer and was responsible for 3 rd party\nfinancing for ebs for the last year . he has worked for enron for 4 1 / 2 years\nin various positions in the finance area . he will be reporting to the office\nof the chairman .\neric gonzales will be joining the lng team and will co - head this effort with\nrick bergsieker . we believe there is significant opportunity in the\nworldwide lng markets , and eric will direct all merchant activity and focus\non the atlantic regions of the world . he will also manage the lng shipping\nbook . eric is located in the london office and also has responsibility for\nleading the newly formed pool markets origination group reporting to joe\ngold .\nrick bergsieker has relocated to dubai , in the uae . he is responsible for\nall middle east activities and projects , managing the puerto rico assets and\nwill co - head the worldwide lng efforts . rick has over 20 years of lng\nexperience and together , he and eric will form an outstanding leadership team\nas we expand enron \u0001 , s lng activities around the world . they both will report\nto the office of the chairman .\njennifer fraser will come over and develop our market fundamentals group for\nall products in egm , much like ena natural gas and power fundamentals and\nintranet pages existing today . previously , jennifer was working in the mid\nmarket origination group . heather purcell will be joining this group\ndeveloping the commercial interface for our intranet page . heather was with\nazurix , where she worked on the platform interface for their ebusiness\ninitiatives .\ngary hickerson will be chairing our traders \u0001 , roundtable . this new group will\nbe comprised of traders across enron ' s wholesale trading and risk management\nbusinesses . this forum will give traders the opportunity to discuss topics\nimportant to their individual markets , and to learn and explore other markets\nin a macro sense . also , we will be forming a cross - commodity trading group .\ntraders who have shown extremely strong and consistent profitability will\nhave the opportunity to join this group and to exploit cross - commodity\nopportunities with a bias toward structural shifts in markets . this group\nwill not be involved in customer activity and will execute through our\nprincipal desks . gary will manage this new group , as well as continuing\nwith his current f / x , rates , equity , and agriculture initiatives .\nplease join us in congratulating everyone on their new positions .\norganization charts outlining the entire egm organization are available upon\nrequest from cathy phillips .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.791+0000", "entityId": 8582, "properties": {"text": "Subject: erisks event information\nthank you for registering for the erisks iconference\n\" quantifying mid - market default risk : estimation & validation of internal\ngrades for basle & securitization \"\nfeaturing eric falkenstein , vice president of moody ' s risk management\nservices\nthe iconference is scheduled for\nwednesday , october 18 , 2000 at 12 : 00 noon edt , 5 : 00 p . m . london .\nfollowing are the details you will need to access the event .\nyou may wish to save or print this page for future reference .\n1 . dial 1 - 800 - 275 - 3210 ( u . s . ) or 973 - 628 - 6885 ( international ) to listen to\nthe audio for this program . audio is available by telephone only .\n2 . wait for an operator and give the following code : \" erisks iconference . \"\nmusic will play until the webconference begins .\n3 . join the web - based portion of the program to see slides , participate in\npolls and ask questions .\n- open netscape or internet explorer 3 . 0 or higher .\n- enter the following web address : http : / / www . communicast . com / login\n4 . fill out the form on this page and enter the following confirmation\nnumber : 10006 .\n5 . click the \" communicast now \" button . in a few moments you will be placed\nin the erisks conference .\ncommunicast system requirements :\n- communicast requires the ability to run java applets .\n- netscape or internet explorer browsers 3 . 0 or higher .\nif this is your first communicast event , you may wish to test your computer .\nvisit http : / / www . communicast . com / login at any time and click the \" test \"\nbutton at the bottom of the page . for this conference , you may skip the last\nthree tests relating to streaming audio . you will not need realplayer to\nparticipate in this conference .\nif you require further assistance , contact support @ communicast . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.796+0000", "entityId": 8583, "properties": {"text": "Subject: re : matthew williams\ni ' m entirely ok with this . . . .\nmatt\nsophie kingsley 11 / 10 / 2000 19 : 04\nto : dale surbey / lon / ect @ ect\ncc : steven leppard / lon / ect @ ect , melanie doyle / lon / ect @ ect , tani\nnath / lon / ect @ ect , matthew d williams / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect , lucy page / lon / ect @ ect\nsubject : re : matthew williams\nlet ' s agree the switch happens november lst and we will change sap to reflect\nspecialist status and matthew will be send a letter .\nmatt , can you just send me a note confirming you are ok with this and cc .\nkaren tamlyn who will make the change .\nregards\nsk\ndale surbey\n11 / 10 / 2000 18 : 21\nto : steven leppard / lon / ect @ ect\ncc : melanie doyle / lon / ect @ ect , sophie kingsley / lon / ect @ ect , tani\nnath / lon / ect @ ect , matthew d williams / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : matthew williams\ni agree - sounds like a good idea .\n- dale\nsteven leppard\n11 / 10 / 2000 18 : 05\nto : melanie doyle / lon / ect @ ect , sophie kingsley / lon / ect @ ect\ncc : tani nath / lon / ect @ ect , dale surbey / lon / ect @ ect , matthew d\nwilliams / lon / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : matthew williams\nall\nfollowing discussions between matt , vince kaminski , and me , matt has decided\nhe ' d like to make a longer - term commitment to research . with this in mind\nwe ' d like to request that matt is switched from a & a to the specialist track .\nvince and i feel this is clearly in the best interests of enron given matt ' s\nproven strengths in quant analysis .\nhow do we proceed ?\nall the best ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.801+0000", "entityId": 8584, "properties": {"text": "Subject: open enrollment 2001\nopen enrollment 2001 is going on now through october 22 nd , 5 pm cst for\nregular full - time and regular part - time employees . your 2000 elections will\nautomatically rollover for 2001 , so if you don \u0001 , t want to make any changes , do\nabsolutely nothing ! annual elections for all flexible spending accounts will\nrollover too ! yes , you heard right \u0001 ) all 2000 elections will automatically\nrollover for 2001 , including spending accounts !\nto make it even more convenient , print your 2001 confirmation statement right\nfrom the web site and you \u0001 , re finished ! sound easy ? it is ! don \u0001 , t have your\npacket ? no problem ! you can access the enrollment 2001 web site and print\nyour personal worksheet right from your desktop . call benefits at\n1 - 800 - 332 - 7979 , option 1 , for additional information or assistance .\nconfirmation statements will be mailed to your home at the end of october and\nfinal changes for 2001 can be made via the web or ivr from 11 / 8 - 11 / 15 .\nlogon to www . enron . benefitsnow . com today !\nquick facts\n? 100 % default for all current elections and spending accounts \u0001 ) don \u0001 , t want\nto make a change ?\nthen do absolutely nothing \u0001 ) your 2000 annual election will rollover for\n2001 !\n? $ 250 medical deductible plan for employees residing outside of a network\narea\n? hmo plans going away \u0001 )\ncoventry health care of iowa ( formerly known as principal health care )\npresbyterian health plan\nhealthnet of oregon ( formerly known as qual / med )\nblue shield of california\n? orthodontia treatment is not considered a pre - existing condition under the\nenron corp . dental plan .\nthe plan will coordinate with other coverage based on coordination of\nbenefit ( cob ) rules .\n( contact metlife at 1 - 800 - 492 - 8588 for specific details and information )\n? new hires who make their 2000 elections by 10 / 16 will receive their 2001\npackets the first week of\nnovember for enrollment during 11 / 8 - 11 / 15 ; elections not in by 10 / 16 will\nrequire a manual enrollment\nfor 2000 and 2001 and must be made within 31 days of their hire date\n? provider directories can be accessed directly from the enrollment 2001 web\nsite or - 1 ) link directly\nto the providers through the hr / benefits intranet website or 2 ) go directly\nto the source by logging\non through the web at :\nwww . cigna . com www . vsp . com\nwww . provider . uhc . com / enron www . merck - medco . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.806+0000", "entityId": 8585, "properties": {"text": "Subject: re : from vicky windsor\nvicky ,\nplease , send me your resume .\ni shall forward it to a number of employees of enron in london\nwith my strongest recommendation . i shall send you the list\nof names . the resume will make it easier for me to\nidentify good targets .\nplease , make sure you will contact me if there is no reaction .\npeople here are very busy and , as you know , things fall through the cracks .\nvince\nvince\n\" vicky windsor \" on 10 / 11 / 2000 04 : 49 : 56 am\nto : vkamins @ enron . com\ncc :\nsubject : from vicky windsor\ndear vince ,\nhow are you ? well i hope .\ni hope you don \u0001 , t mind me writing to you . you may remember that 5 months ago\ni left risk publications and moved to a charity . having been here for only a\nfew months , i have decided that this job is not for me ( i miss the buzz of a\ncorporate office ) and i have decided to move back into the corporate sector .\nbecause of my previous experience and knowledge of the energy sector , i am\nvery interested in moving into this area . i have always thought that it\nwould be great to work for enron because it is such a dynamic company and i\nam planning to approach the london office to discuss any opportunities ,\nwhich might be available . i am particularly interested in product marketing\nand research , although i am very open - minded at the moment . i wondered\nwhether you could recommend the right person to speak to in london .\ni know that you are incredibly busy , but any help you can give me would be\nfantastic vince .\nthanks and best regards ,\nvicky windsor\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.810+0000", "entityId": 8586, "properties": {"text": "Subject: fw : aram g . sogomonian\nnorma ,\nthis is the resume of aram sogomonian i mentioned to you .\ni would like to bring him over to talk to kevin presto , george hopley\nalex huan , seville yaman , tom haliburton , myself .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n11 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sogomonian , aram \" on 10 / 11 / 2000 12 : 03 : 16 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : fw : aram g . sogomonian\n- aram g 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.815+0000", "entityId": 8587, "properties": {"text": "Subject: interview with the enron research group\ngood morning mr . giancola :\nyour resume was forwarded to vince kaminski , managing director and\nhead of research with enron .\nwe would like to bring you in for an informal interview at your convenience .\nthis would be for a position of \" economist \" or \" associate economist \" ,\nreporting to maureen raymond castaneda .\nplease give me some dates and times that would be convenient with you\nand i will have our hr rep contact you to schedule your coming to houston .\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.820+0000", "entityId": 8588, "properties": {"text": "Subject: cal berkeley general presentation confirmation - 10 / 16 / 00\nwe have been able to secure rooms at the claremont hotel in berkeley . please\nnote the confirmation numbers listed below . thanks !\nclaremont resort and spa - berkeley\n41 tunnel road\nberkeley , ca 94705\n510 - 843 - 3000\nfrom oakland airport : go straight out of the airport on airport blvd . turn\nright on hegenberger road . from hegenberger\nfollow signs for 880 north . follow hwy 880 north and follow signs for hwy 24\nto walnut creek . take the claremont avenue exit , turning\nleft at the bottom of the exit onto claremont . turn right on ashby avenue\n( 5 th stoplight ) and the hotel ' s entrance is two blocks ahead on the left .\nfrom san francisco airport : follow signs for hwy 101 north to san francisco ,\ntake hwy 80 east to the bay bridge to oakland .\ncross bay bridge on hwy 80 , follow to 580 east , and exit onto hwy 24 to\nberkeley / walnut creek . follow hwy 880 north and follow signs for\nhwy 24 to walnut creek . take the claremont avenue exit , turning left at the\nbottom of the exit onto claremont . turn right on ashby avenue\n( 5 th stoplight ) and the hotel ' s entrance is two blocks ahead on the left .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ashley baxter / corp / enron on 10 / 12 / 2000\n07 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlara marie berry\n10 / 10 / 2000 04 : 58 pm\nto : vince j kaminski / hou / ect @ ect , john pavetto / corp / enron @ enron , radu\ntutos / enron communications @ enron communications , denise\nrancour / corp / enron @ enron\ncc : ashley baxter / corp / enron @ enron , simone lewis / na / enron @ enron\nsubject : cal berkeley general presentation confirmation - 10 / 16 / 00\ncal berkeley\ngeneral presentation\nmonday , october 16 th\nthis note is to confirm that you are scheduled to attend the cal berkeley\ngeneral presentation on monday october 16 th . this e - mail should contain any\ninformation that you need to know pertaining to your trip . please print out\na hard copy and bring with you in case of emergency . if you have any\nquestions , there is a list of contacts listed below .\nonce again , thank you for offering to help with technology recruiting at cal\nberkeley . see you on campus !\nlara\nthe general presentation will be held :\nmonday , october 16 th\nthe faculty club\nseaborg room - 2 nd floor\n7 : 00 p . m . to 9 : 00 p . m .\n* * please plan on arriving at the general presentation by 6 : 00 p . m .\nthe general presentation is designed to educate the students on enron and the\nglobal technology track . following the presentation we will invite the\nstudents to ask questions about enron and the global technology track .\nplease plan to arrive at the general presentation by 6 : 00 p . m . it is\nbusiness casual attire .\nflight arrangements :\nyou are responsible for scheduling your own flight arrangements with your\npreferred airline provider . please schedule your flight to arrive to the san\nfrancisco airport on monday , october 16 th . please remember that there can\nbe significant traffic over the bay bridge and to get into town at least an\nhour prior to the event . please make all flight arrangements through the\ntravel agency in the park so that we are able to take advantage of discount\nfares . if you do not have a representative that you currently use at the\ntravel agency in the park - feel free to contact liz mendiola at 713 - 860 - 1140 .\nrental car arrangements :\nonce again , you are responsible for scheduling your own rental car\narrangements with your preferred provider . your travel agency in the park\nrepresentative should be able to assist you with rental car reservations .\nhotel arrangements :\nhotel reservations are currently being made by our representative at the\ntravel agency in the park .\nas soon as we have confirmation numbers , i will let you know .\nsan francisco airport to the faculty club\ntake 101 northbound\nexit to san francisco / oakland bay bridge\nexit to 1 - 80 east\nexit on university ave .\neast on university avenue for 1 . 5 miles to oxford st .\nright on oxford st . , left on durant ave . , left on piedmont\nyou will see parking on the right side\nonce again , thank you so much for helping with the general presentation .\nbelow are some last minute tips to keep in mind :\nplease remember to dress business casual .\nplease remember to bring some business cards for students .\ni have attached a pdf version of the global technology track brochure .\nplease forward all expense receipts to grace garcia . she will handle any\nexpenses incurred for this recruiting trip including : flight costs , hotel ,\ncar , food , valet , etc . however , you must turn in some sort of receipt - so\nbe sure and save them !\nashley baxter work : 713 - 853 - 3589\ncell : 281 - 793 - 0567\nlara berry work : 713 - 345 - 8320\ncell : 713 - 857 - 1034\ngrace garcia work : 713 - 853 - 7252\nsimone lewis work : 713 - 853 - 1645", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.825+0000", "entityId": 8589, "properties": {"text": "Subject: carnegie mellon speech\nfollowing are the reservations for the speech on friday november 3 :\nhotel : westin william penn hotel\n( 412 ) 281 - 7100\nconf . : kristin - 401220\nvince - 401221\nany questions , call me .\nalyse", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.829+0000", "entityId": 8590, "properties": {"text": "Subject: presentation for cal berkeley\nhello vince and john ,\ni wanted to forward to you both the current presentations for campus . we can\ntweak these however we feel appropriate to match cal berkeley on monday . i\nbelieve that we can probably expect about 30 - 50 students ( based on interest\nshown at the career fair ) . these tend to be fairly informal . i was thinking\nthat we could present in this order :\nvince gives the enron overview presentation ( 30 minutes )\njohn gives the global technology specific presentation ( 20 minutes )\nashley goes over recruiting information at the end ( 10 minutes )\nplease take a look at each presentation and speaker notes to ensure that you\nfeel comfortable with the layout and content . i am meeting with john today\nat 1 : 30 - vince if you would like to get together and discuss as well that\nwould be great .\nif you have any questions , please don ' t hesitate to contact me . 3 - 3589\nthanks ,\nashley\nvince , here is a copy of the current enron overview presentation . there are\nalso speaker notes that go into great detail .\njohn , here is a copy of the current technology presentation for carnegie\nmellon . the only changes will be to the recruiting dates at the end . there\nare also speaker notes that go into greater detail . - - - >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.834+0000", "entityId": 8591, "properties": {"text": "Subject: re : spring 2001 conference participation by jeffrey k . skilling\ni think he can do it , vince , but ut has asked him to speak at a leadership\nconference also on 2 / 16 , which rick causey is encouraging him to do . he has\nall the information ( i just sent it home in his mail as he returned this\nafternoon from a week of travel ) , so will press him to make a decision\ntomorrow . he may decide to do both or one or the other . . . i ' ll let you know\nas soon as i do . srs\nvince j kaminski @ ect\n10 / 12 / 2000 04 : 57 pm\nto : sherri sera / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , richard causey / corp / enron @ enron\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nsherri ,\nany resolution of the scheduling conflict jeff skilling had for february the\n22 nd ?\nour friends at ut are ready to make the reservations and send out invitations\nto this conference\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n05 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ehud i . ronn \" on 10 / 12 / 2000 10 : 12 : 56 am\nto : richard . causey @ enron . com , vince . j . kaminski @ enron . com\ncc :\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nrick / vince :\ngood morning .\nfurther to my discussions with vince during his visit to the energy finance\nprogram yesterday , i write at this time to inquire whether mr . skilling ' s\nassistant has been able to confirm his participation as 2 / 22 / 2001 keynote\nspeaker at our conference .\nwith thanks for your intercession on our behalf ,\nehud ronn\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.839+0000", "entityId": 8592, "properties": {"text": "Subject: re : spring 2001 conference participation by jeffrey k . skilling\nsherri ,\nany resolution of the scheduling conflict jeff skilling had for february the\n22 nd ?\nour friends at ut are ready to make the reservations and send out invitations\nto this conference\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n05 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ehud i . ronn \" on 10 / 12 / 2000 10 : 12 : 56 am\nto : richard . causey @ enron . com , vince . j . kaminski @ enron . com\ncc :\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nrick / vince :\ngood morning .\nfurther to my discussions with vince during his visit to the energy finance\nprogram yesterday , i write at this time to inquire whether mr . skilling ' s\nassistant has been able to confirm his participation as 2 / 22 / 2001 keynote\nspeaker at our conference .\nwith thanks for your intercession on our behalf ,\nehud ronn\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.844+0000", "entityId": 8593, "properties": {"text": "Subject: maureen raymoin ' ds review\nnorma ,\nmaureen raymond refuses to sign her review . can you , please , join us\ntomorrow to discuss it . i have a time slot available at 2 : 00 but i can\nreorganize my schedule\nto accommodate you .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.849+0000", "entityId": 8594, "properties": {"text": "Subject: re : conference : monetary policy in the new economy\nmaureen ,\nok .\nvince\nmaureen raymond\n10 / 11 / 2000 05 : 39 pm\nto : vince j kaminski / hou / ect @ ect , gary hickerson / hou / ect @ ect\ncc :\nsubject : conference : monetary policy in the new economy\ni would like to attend the following conference : \" monetary policy in the new\neconomy \" on october 19 th in washington dc . this is the topic of an annual\nconference on monetary policy . fed chairman alan greenspan is the keynote\nspeaker . also , former fed vice chairman manuel johnson and many prominent\nmonetary economists will be attending and participating in the debate on u . s .\nmonetary policy . the cost of the conference is $ 375 . while in washington ,\ni could also arrange meetings with the iif economist on our largest\ninvestment exposures . in addition , i could interview mark giancola and\npossibly some other candidates from johns hopkins school of advanced\ninternational studies for our group .\nregards ,\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.854+0000", "entityId": 8595, "properties": {"text": "Subject: re : new lacima publication\nfiona ,\nyes , this is correct . please , use vincent rather than vince .\ni used my full name on other publications .\nvince\n\" fiona j sperryn \" on 10 / 12 / 2000 10 : 34 : 42 am\nto :\ncc :\nsubject : new lacima publication\n?\ndear vince\n?\nlacima are pleased to announce the publication in october of their new book\n' energy derivatives - pricing and risk management ' by les clewlow and chris\nstrickland . please could you confirm that the address below is correct ? so\nthat we can send out a copy to you .\n?\nvince kaminski\nenron corp\n1400 smith street \u0001 ) ebl 962\nhouston , tx 77002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.860+0000", "entityId": 8596, "properties": {"text": "Subject: re : template for a proposal\nmark & todd\nvince and i have been working along those lines and have narrowed the search\nto ( 1 ) scripps institution of oceanography , ( 2 ) lamont - daugherty earth\nobservatory , and ( 3 ) cola - center for ocean , land and atmosphere . we have\ncontacted the principles at each of these institutions , made on - site visits\nto the facilities , and verbaly explored preliminary research program\nproposals .\nperhaps we could meet next week to coordinate this effort .\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.865+0000", "entityId": 8597, "properties": {"text": "Subject: re : japanese crude cocktail & prompt brent\nvince\nmarc and i spoke about the jcc brent relationship . i don ' t know enough about\njcc to have a view if putting jcc on eol is a good idea . would be interested\nto know the realtionship to brent and learn more about it . also spoke to john\nchismar about jcc . it sounds pretty non - liquid acc . to john .\nlet me know if there is something we can do .\nregards\nchris glaas\nenron capital & trade resources corp .\nfrom : marc de la roche 13 / 10 / 2000 13 : 18\nto : chris glaas / lon / ect @ ect\ncc : doug leach / hou / ect @ ect , kevin kindall / corp / enron @ enron\nsubject : re : japanese crude cocktail & prompt brent\nchris ,\nthanks for the response . the comment about hedgeing jcc with brent is right\non if the exercise is to hedge our own lng positions that we have tieds to\njcc . note that the high jcc correlation to prompt brent is not something that\nis obvious to non - enron lng - tied - to - jcc buyers . if you are an lng - tied - to - jcc\nbuyer , and you wish to hedge your purchases , wouldn ' t you want to be able to\ntransact ona a jcc contract ? my objective is to have a jcc contract on eol ,\nwhereby we , enron , take the jcc / brent risk ( which is why we asked vince\nkaminski ' s group to study the relationship and give us a hedge ratio to use ) .\ni ' m attaching a model used to calculate jcc for dabhol power co . ' s adgas and\noman lng contracts . basically what happens is that all the \" raw oil \" volumes\nimported into japan and added up and the total price is divide by the total\nvolume , and there is a yen / us $ foreighn exchange component as well . that is\njcc . it was designed by the japanese so that they could tie their lng imports\nto their average price of crude imports whereby the lng would be cheaper on\nan mmbtu basis .\ncomments ?\nbrgds ,\nmarc\nchris glaas\n10 / 13 / 2000 03 : 11 am\nto : marc de la roche / hou / ect @ ect\ncc :\nsubject : re : japanese crude cocktail & prompt brent\nmarc\nregarding putting jcc on eol i get a negative respons from our sing office .\nit is not a very liquid market . everyone is going the same way .\ni understand there is good correlation between brent and jcc . i know little\nabout jcc , but if there is good correlation u should be able to hedge\nyourself with brent . i need to know more about how jcc works in order to help\nu , if u require any help at all ?\nlet me know\nchris glaas\nenron capital & trade resources corp .\nfrom : marc de la roche 10 / 11 / 2000 03 : 16 pm\nto : chris glaas / lon / ect @ ect\ncc : doug leach / hou / ect @ ect , larry gagliardi / corp / enron @ enron\nsubject : japanese crude cocktail & prompt brent\nchris ,\nsome of egm ' s lng group ' s lng is priced using a jcc - based formula . there ' s\nalso a lot of other lng contracts that use jcc as the pricing basis . in june\nwe obtained sign - off from vince kaminski ' s group to hedge jcc using prompt\nbrent ( see the messages with the relevant hedge ratio below ) . can we set up a\ncontract on eol , using the prompt brent - jcc hedge ratio , to hedge jcc ?\nfyi , on a btu conversion basis :\ntherefore , to hedge 1000 mt of lng , a customer would need to transact on a\nhedge for 9000 bbl of jcc . can we list a jcc swap in 9000 bbl / month\nincrements ?\nthanks in advance ,\nmarc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by marc de la roche / hou / ect on 10 / 11 / 2000\n08 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall @ enron\n06 / 06 / 2000 03 : 47 pm\nto : marc de la roche / hou / ect @ ect\ncc :\nsubject : re : jcc & brent\nyes on both counts .\n- kevin k .\nfrom : marc de la roche @ ect 06 / 06 / 2000 02 : 50 pm\nto : kevin kindall / corp / enron @ enron\ncc : grant masson / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : jcc\nthat this email constitutes your groups ( vince kaminski ' s ) sign - off on using\nthis hedge ratio to hedge jcc and jcc - based products ?\nthanks in advance ,\nmarc de la roche\nkevin kindall @ enron\n06 / 06 / 2000 02 : 18 pm\nto : marc de la roche / hou / ect @ ect\ncc : grant masson / hou / ect @ ect\nsubject : re : jcc & brent\ngood afternoon . i have performed a review of the jcc data that you sent\nsome time ago . the study was done using several different excel workbooks ,\nand are available upon request . relevant charts are embedded in the\npowerpoint attachment . questions / comments welcome .\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.872+0000", "entityId": 8598, "properties": {"text": "Subject: seismic data via satellite\ni am preparing a summary or our thursday discussions to be used as a\nbackground piece for discussion / brainstorming with oil traders . i will\ncirculate this for review / correction later today , or , at the latest , monday .\ngreg , you mentioned that enron had participated in a speculative survey in\nthe gulf of mexico that was successful . it might be useful to get more info\non this . terms , return realized ( over what time frame ) , why we have not\ncontinued to do this , etc .\nalso , from your comments , many , if not most of the 3 - d surveys are in deep\nwater . i read recently that shell , i believe , is participating in a deep sea\ndrilling / extraction project in the gulf . what oil price is required to make\nthese kinds of projects viable financially ?\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.880+0000", "entityId": 8599, "properties": {"text": "Subject: re : option p & l\nbrad ,\ni was extreamly busy yesterday . sorry for answing your question till now .\nalthough i am not exactly sure how the system handle gamma , this is what i\nthink the system is doing :\ncurve shift = today ' s price - yesterady ' s price\np / l due to curve shift = today ' s market value using today ' s price curve ( with\neverything esle the same as yesterday ' s ) - yesterday ' s market value using\nyesterday ' s price curve .\nso p / l due to curve shift contains both delta and gamma and higher order\nterms .\nwe then use theoretical gamma ( meaning option model gamma : 0 . 5 * gamma * ( price\nchange ) 2 ) for gamma contribution and ? define delta = curve shift - theoretical gamma . ? ? therefore , the gamma may not be very accurate to explain the delta change , ? especially when you have big price change due to higher order contribution . ? ? let me know your thoughts on this . ? ? ? best wishes , ? ? zimin ? ? ? ? ? ? ? ? ? brad horn 10 / 12 / 2000 07 : 11 am ? ? to : zimin lu / hou / ect @ ect , stinson gibner / hou / ect @ ect ? cc : vince j kaminski / hou / ect @ ect , vladimir gorny / hou / ect @ ect , robert ? shiring / hou / ect @ ect , jay knoblauh / hou / ect @ ect ? subject : option p & l ? ? gentleman : ? the erms system , as you know , has an excellent capability for ? decomposing option p & l into the following components : ? ? new deals ? curve shift ? gamma ? vega ? theta ? rho ? drift ? 2 nd order adjustments ? ? what i dont understand is the gamma component which is reported in dollars . ? the unit of measure suggests that incremental changes in a contract position ? is being associated with specific prices . these prices are the effective buy ? or sell prices associated with the dynamic delta position . ? ? stated differently , the standard taylor expansion has incorporated a price ? variable in such a way as to convert the unit of measure from gamma ' s ? standard contract count to total gamma dolalrs . this is something i dont ? understand . to date , inquiries to the risk management accounting group has ? further revealed that the gamma component of p & l is not well understood . ? ? this is what concerns me : bridgeline has 2 books with option exposures ( nymex ? and gas daily ) . both books dynamically hedged its positions during ? yesterdays large price move and , through anticipitory hedging in advance or ? during the large price move , secured sufficient coverage to neutralize ? expected changes in delta . however , our p & l from our underlying position did ? not offset our gamma p & l . consequently , i have to ask why ? im hoping that a ? brief look at the why gamma dollars are calculated may reveal something which ? will better guide our hedging decisions . ? ? any help is appreciated ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.886+0000", "entityId": 8600, "properties": {"text": "Subject: re : mission impossible - hr associate groups recommendation and\nnext steps\nkay - friday is ok up to 4 : 00 pm for me . ted\nfrom : kay chapman 10 / 13 / 2000 12 : 52 pm\nto : tana cashion / na / enron @ enron\ncc : daniel brown / na / enron @ enron , gerry gibson / corp / enron @ enron , andrea\nyowman / corp / enron @ enron , bob sparger / corp / enron @ enron , tim\no ' rourke / corp / enron @ enron , ted c bland / hou / ect @ ect , tana\ncashion / na / enron @ enron , cindy olson / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , kay chapman / hou / ect @ ect , sarah a davis / hou / ect @ ect ,\nmarla barnard / enron communications @ enron communications , pam\nbutler / hr / corp / enron @ enron , michelle cash / hou / ect @ ect , brian\nschaffer / corp / enron @ enron , suzanne brown / hou / ect @ ect , robert\njones / corp / enron @ enron , neil davies / corp / enron @ enron\nsubject : re : mission impossible - hr associate groups recommendation and next\nsteps\nhow does next friday october 20 , 2000 , look for everyone ? ? ? i have morning\nand afternoon available . i even have a 10 : 00 am if you just want to move the\ndate and not the time .\nkay\ntana cashion @ enron 10 / 12 / 2000 02 : 28 pm\nto : kay chapman / hou / ect @ ect\ncc : daniel brown / na / enron @ enron , gerry gibson / corp / enron @ enron\nsubject : re : mission impossible - hr associate groups recommendation and next\nsteps\nwhat is the first availbale day that david can be at the meeting ? let ' s try\nto schedule a time that day . thanks - tana\nenron north america corp .\nfrom : kay chapman @ ect 10 / 12 / 2000 02 : 24 pm\nto : andrea yowman / corp / enron @ enron , bob sparger / corp / enron @ enron , tim\no ' rourke / corp / enron @ enron , ted c bland / hou / ect @ ect , daniel\nbrown / na / enron @ enron , tana cashion / na / enron @ enron , rhonna palmer / hou / ect @ ect ,\ncindy olson / corp / enron @ enron , vince j kaminski / hou / ect @ ect , kay\nchapman / hou / ect @ ect , sarah a davis / hou / ect @ ect , marla barnard / enron\ncommunications @ enron communications , pam butler / hr / corp / enron @ enron , michelle\ncash / hou / ect @ ect , brian schaffer / corp / enron @ enron , suzanne brown / hou / ect @ ect ,\nrobert jones / corp / enron @ enron , neil davies / corp / enron @ enron , gerry\ngibson / corp / enron @ enron\ncc :\nsubject : mission impossible - hr associate groups recommendation and next\nsteps\nthe monday october 16 , 2000 meeting at 10 : 00 am needs to be moved again .\nsorry for the inconvenience , but david oxley is going to be traveling . .\nthanks ,\nkay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.890+0000", "entityId": 8601, "properties": {"text": "Subject: re : power play book\nvince ,\ni ' m really feeling like a blind mouse about this because i haven ' t ( nor has\nchristie , mike and mark ) read mr . mehta ' s comments . i believe that we would\nbe better equipped to discuss the course of action that should be taken , if\nany , after we are well versed with mr . mehta and his perspectives .\nalthough , i do suggest that if we do decide to proceed , we should approach it\nby addressing the issues mr . mehta discussed under a different premise , i . e .\nsponsor a speaking engagement where one of the speakers ' topics would be\nrelated to mr . mehta ' s topic - allowing us to strategically tell our side of\nthe story without it appearing that this is a planned rebuttal . we should\nspecifically invite those who attended mr . mehta ' s engagement , but not limit\nit to this group .\nlet ' s all discuss this once our group has read mr . mehta ' comments .\nregard ,\ncindy\nvince j kaminski @ ect\n10 / 12 / 2000 04 : 37 pm\nto : cindy derecskey / corp / enron @ enron\ncc : mark palmer / corp / enron @ enron , christie patrick / hou / ect @ ect , michael b\nrosen / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : power play book\ncindy ,\ni had rather in mind targeting the same audiences to which mr . mehta spoke ,\nnot a general press release . i agree that a general message to the world\nwould\nattract attention .\nvince\nfrom : cindy derecskey @ enron on 10 / 12 / 2000 03 : 55 pm\nto : vince j kaminski / hou / ect @ ect\ncc : christie patrick / hou / ect @ ect , michael b rosen / hou / ect @ ect , mark\npalmer / corp / enron @ enron\nsubject : re : power play book\nvince ,\nyou are a saint for lending me a copy of your book . i agree with you that we\ndon ' t want increase there revenues even by a $ 1 . 00 , although my\nrecommendation ( and mark palmer ' s as well ) is that we should pursue a\nrebuttal for the following reasons :\nas i mentioned i scoured the internet ( britannica . com , amazon . com , yahoo . com\nand dow jones ) and could not find one mention of the book , therefore mr .\nmehta ' s distribution must not be wide at all . consequently , his comments may\nnot have reached a large audience . issuing a rebuttal , may in fact , draw\nmore attention to the comments and issues then they are currently receiving .\ni believe we should proceed with caution , and respond accordingly ( with\ncounter comments ) only when comments are solicited from us . so far , we have\nnot received any telephone inquiries from media in relation to mr . mehta ' s\nenron bashing . may be we should ' leave the stones unturned ' .\nlet me know what you think . also , please contact me when it is convenient\nfor me to borrow the book from you .\nregards ,\ncindy\nvince j kaminski @ ect\n10 / 12 / 2000 03 : 38 pm\nto : cindy derecskey / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : power play book\ncindy ,\ni got a copy of the book and another one is on the way from our officer in\nindia .\ni can lend you the book and you can makes copies of the most important\nchapters .\ni don ' t think we should be buying too many copies and increasing the sales of\nthe book .\nin general , i think that we should counter the presentations made by mr .\nmehta . the person in charge of\nour dhabol operation is a stanford graduate and maybe he could obtain an\ninvitation\nto speak at the same forum and present the facts as they are . he should be\nhere for the management\nconference .\nvince\nfrom : cindy derecskey @ enron on 10 / 11 / 2000 01 : 30 pm\nto : vince j kaminski / hou / ect @ ect\ncc : christie patrick / hou / ect @ ect , michael b rosen / hou / ect @ ect\nsubject : power play book\ngood afternoon vince ,\nchristie patrick mentioned to me the conference that your wife recently\nattended at stanford . at this coference abahy mehta discussed his / her\nrecently published book ' power play ' - that certainly does not flatter\nenron . i have conducted a search on amazon . com , britannica . com and dow jones\nand i am coming up empty handed . would you be kind enough to briefly trouble\nyour wife to provide any other information she may remember , so i can narrow\nmy search .\ni greatly appreciate it .\nregards ,\ncindy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.895+0000", "entityId": 8602, "properties": {"text": "Subject: enroncredit . com report for 12 . 10\nfyi `\n- - - - - - - - - - - - - - - - - - - - - - forwarded by benjamin parsons / lon / ect on 13 / 10 / 2000\n09 : 16 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkatja schilling\n13 / 10 / 2000 08 : 40\nto : john sherriff / lon / ect @ ect , deborah edwards / lon / ect @ ect , edmund\ncooper / lon / ect @ ect , ted murphy / hou / ect @ ect , william s bradford / hou / ect @ ect ,\neva hoeffelman / lon / ect @ ect , jackie gentle / lon / ect @ ect , steve w\nyoung / lon / ect @ ect , tim davies / lon / ect @ ect , mark pickering / lon / ect @ ect , denis\no ' connell / lon / ect @ ect , david a wall / risk mgmt / lon / ect @ ect , rod\nnelson / lon / ect @ ect , jeff kinneman / hou / ect @ ect , joanne wadey / lon / ect @ ect ,\nenroncredit . com london , enroncredit . com houston , michael r brown / lon / ect @ ect ,\nphilippe a bibi / hou / ect @ ect , louise kitchen / hou / ect @ ect , drew c\nlynch / lon / ect @ ect\ncc :\nsubject : enroncredit . com report for 12 . 10\n1 . credit quality\n2 . website", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.899+0000", "entityId": 8603, "properties": {"text": "Subject: re : power question\nsteve ,\nelena chilkina can give you historical data .\nhistorical fwd curves can be obtained from paulo\nor alex , among others . of course , our internal forward curves\nrepresent a very sensitive information .\nvince\nsteven leppard\n10 / 13 / 2000 10 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc : didier magne / lon / ect @ ect\nsubject : power question\nhi vince\nwho should i contact for power queries now grant has gone ? a colleague here\nin london ( didier magne ) is giving a talk on power / gas arbitrage , and the\nconsequent convergence of these markets .\ndo you have any presentations on this area , or illustrative figures on the\nincrease in power / gas correlation ?\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.905+0000", "entityId": 8604, "properties": {"text": "Subject: re : support for exotica\nsteve ,\ni have to draft an announcement and send it to john sheriff . i shall do it\nthis weekend .\nvince\nsteven leppard\n10 / 13 / 2000 09 : 27 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : support for exotica\nhi vince\ngood luck calling anjam . he never seems to answer his mobile when sharad\ncalls him to track him down . furthermore he ' s off work until tuesday .\ni ' ve had tani ask me what ' s happened to the announcement about my new\nappointment . any progress there ?\ncheers ,\nsteve\nvince j kaminski\n13 / 10 / 2000 14 : 44\nto : steven leppard / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : support for exotica\nsteve ,\ni am calling anjam to give him a deadline regarding move to houston .\nif he decides to stay in houston , you should meet with him to convey\nthe concerns regarding his performance .\nvince\nsteven leppard\n10 / 13 / 2000 03 : 50 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , tani nath / lon / ect @ ect\ncc : paulo issler / hou / ect @ ect , sharad agnihotri / lon / ect @ ect , zimin\nlu / hou / ect @ ect\nsubject : support for exotica\nall\nsharad ' s investigations of exotica ' s status in london have turned up a very\nconfused state of affairs . this isn ' t being helped by the fact that :\n1 . anjam is rarely at his desk , and can ' t be found anywhere in the building .\n2 . when he is around he isn ' t willing or able to provide all the information\nsharad might need to support exotica .\nthis is worrying since much of our business depends on the validity of\nexotica ' s valuations .\nsharad will now request information from anjam via email to leave a trail ,\nand i want to alert you to the fact that sharad will be cc ' ing you in on\nthese emails .\nif things don ' t improve soon , i may need to request some assistance in\nextracting this information from anjam .\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.910+0000", "entityId": 8605, "properties": {"text": "Subject: re : support for exotica\ni briefed vince this morning that we have supplied a fully functional exotica\noptions library to london office ( executable and source codes ) .\nif you have any questions , my team is ready to help .\nzimin\nsteven leppard\n10 / 13 / 2000 03 : 50 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , tani nath / lon / ect @ ect\ncc : paulo issler / hou / ect @ ect , sharad agnihotri / lon / ect @ ect , zimin\nlu / hou / ect @ ect\nsubject : support for exotica\nall\nsharad ' s investigations of exotica ' s status in london have turned up a very\nconfused state of affairs . this isn ' t being helped by the fact that :\n1 . anjam is rarely at his desk , and can ' t be found anywhere in the building .\n2 . when he is around he isn ' t willing or able to provide all the information\nsharad might need to support exotica .\nthis is worrying since much of our business depends on the validity of\nexotica ' s valuations .\nsharad will now request information from anjam via email to leave a trail ,\nand i want to alert you to the fact that sharad will be cc ' ing you in on\nthese emails .\nif things don ' t improve soon , i may need to request some assistance in\nextracting this information from anjam .\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.914+0000", "entityId": 8606, "properties": {"text": "Subject: re : support for exotica\nsteve ,\ni am calling anjam to give him a deadline regarding move to houston .\nif he decides to stay in houston , you should meet with him to convey\nthe concerns regarding his performance .\nvince\nsteven leppard\n10 / 13 / 2000 03 : 50 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , tani nath / lon / ect @ ect\ncc : paulo issler / hou / ect @ ect , sharad agnihotri / lon / ect @ ect , zimin\nlu / hou / ect @ ect\nsubject : support for exotica\nall\nsharad ' s investigations of exotica ' s status in london have turned up a very\nconfused state of affairs . this isn ' t being helped by the fact that :\n1 . anjam is rarely at his desk , and can ' t be found anywhere in the building .\n2 . when he is around he isn ' t willing or able to provide all the information\nsharad might need to support exotica .\nthis is worrying since much of our business depends on the validity of\nexotica ' s valuations .\nsharad will now request information from anjam via email to leave a trail ,\nand i want to alert you to the fact that sharad will be cc ' ing you in on\nthese emails .\nif things don ' t improve soon , i may need to request some assistance in\nextracting this information from anjam .\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.919+0000", "entityId": 8607, "properties": {"text": "Subject: nelson nele interview\nvice :\ni interviewed nelson last week . here is my feedback :\n1 ) very communicative\n2 ) good professional experience - works as a consultant\n3 ) good quantitative background\nhe lacks a background in finance , which may be a minus for a position in the\ngroup . i beleive he may be valuable for other areas that deal with emissions\nand pollutants .\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.924+0000", "entityId": 8608, "properties": {"text": "Subject: charles chen interview\nvince / tanya :\ni interviewed charles today 10 : 30 am . here are my impressions :\n1 ) excellent professional and managerial experience .\n2 ) very good technical background .\ndeal valuation and\nmodel implementation\n3 ) promisses to fit very well into the group ' s culture .\nthe only issues i see is that he would have to leave a high level position at\nhis current employee .\npaulo issler", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.929+0000", "entityId": 8609, "properties": {"text": "Subject: re : interview with the enron research group - reply\nmark :\nwhile we are anxious to fill this position , we certainly understand\nscheduling\nconflicts ! please let us know as soon as you have a definate time .\ndr . kaminski will be out of the office the next two weeks also . maybe the\nweek\nof the 30 th or the 6 th of november ?\nlook forward to hearing from you .\nsincerely ,\nshirley crenshaw\nmark . giancola @ do . treas . gov on 10 / 13 / 2000 08 : 47 : 57 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : interview with the enron research group - reply\ndate : 10 / 13 / 2000 09 : 42 am ( friday )\nfrom : mark giancola\nto : ex . mail ( \" shirley . crenshaw @ enron . com \" )\nsubject : interview with the enron research group - reply\nthanks for your message . our e - mail system was down all day\nyesterday so i was not able to respond until today .\ni am very interested in coming in for an interview . unfortunately , my\nschedule will make traveling on a weekday difficult for at least the next\ntwo weeks . i am travelling as part of the us delegation to the g - 20 on\nthe 24 th and 25 th and will be busy until then in preparation . immediately\nfollowing that trip i will be moving to a new office here in treasury and\nam not sure about my schedule .\ni would like to wait until next week when i have a better idea of my\nschedule to propose times to come to houston . please let me know if\nthere are time constraints on your side .\nthanks ,\nmark giancola\n> > > ex . mail . \" shirley . crenshaw @ enron . com \" 10 / 12 / 00 09 : 06 am > > >\ngood morning mr . giancola :\nyour resume was forwarded to vince kaminski , managing director and\nhead of research with enron .\nwe would like to bring you in for an informal interview at your\nconvenience .\nthis would be for a position of \" economist \" or \" associate economist \" ,\nreporting to maureen raymond castaneda .\nplease give me some dates and times that would be convenient with you\nand i will have our hr rep contact you to schedule your coming to\nhouston .\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.933+0000", "entityId": 8610, "properties": {"text": "Subject: re : from vicky windsor\ndear vince ,\ni ' ve attached my resume . thank you so much for your help . i really\nappreciate it .\nbest regards ,\nvicky\n> from : vince . j . kaminski @ enron . com\n> to : vjwindsor @ hotmail . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : from vicky windsor\n> date : thu , 12 oct 2000 15 : 55 : 57 - 0500\n>\n>\n> vicky ,\n>\n> please , send me your resume .\n>\n> i shall forward it to a number of employees of enron in london\n> with my strongest recommendation . i shall send you the list\n> of names . the resume will make it easier for me to\n> identify good targets .\n>\n> please , make sure you will contact me if there is no reaction .\n> people here are very busy and , as you know , things fall through the cracks .\n>\n> vince\n>\n>\n>\n> vince\n>\n>\n>\n>\n> \" vicky windsor \" on 10 / 11 / 2000 04 : 49 : 56 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : from vicky windsor\n>\n>\n> dear vince ,\n>\n> how are you ? well i hope .\n>\n> i hope you don ' t mind me writing to you . you may remember that 5 months ago\n> i left risk publications and moved to a charity . having been here for only\n> a\n> few months , i have decided that this job is not for me ( i miss the buzz of\n> a\n> corporate office ) and i have decided to move back into the corporate\n> sector .\n>\n> because of my previous experience and knowledge of the energy sector , i am\n> very interested in moving into this area . i have always thought that it\n> would be great to work for enron because it is such a dynamic company and i\n> am planning to approach the london office to discuss any opportunities ,\n> which might be available . i am particularly interested in product marketing\n> and research , although i am very open - minded at the moment . i wondered\n> whether you could recommend the right person to speak to in london .\n>\n> i know that you are incredibly busy , but any help you can give me would be\n> fantastic vince .\n>\n> thanks and best regards ,\n>\n>\n> vicky windsor\n>\n> get your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\n>\n> share information about yourself , create your own public profile at\n> http : / / profiles . msn . com .\n>\n>\n>\n>\n>\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- cv to vince kaminski 13 oct . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.938+0000", "entityId": 8611, "properties": {"text": "Subject: ieor monday seminar - october 23 , 2000\n?\n?\nindustrial engineering and operations research\nmonday seminar\nieor 298 - 1 - fall 2000\nmonday , october 23 , 2000\n- - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" volatility of electricity prices - measurement and analysis of underlying\ncauses \"\ndr . vincent kaminski\nmanaging director and head of research for enron corp .\n?\nabstract :\nthe last three years were characterized by exceptionally high volatility of\nthe power prices in the us markets . the market developments have created a\nnumber of unique challenges for energy industry economists . one immediate\nquestion we have to answer is how to measure volatility of energy prices .\nalthough we can all agree that the prices in the power markets are\ncharacterized by high variability , the traditional measures used in\nfinancial economics ( annualized standard deviation of log price returns ) may\nnot fit well electricity prices .\nthe second challenge is to explain the sources of high price volatility and\nto answer the question to what extent it can be attributed to problems that\ncan be addressed in the long run . such problems include flaws in market\ndesign that allow some market participants to abuse market power , limited\navailability and / or unequal access to transmission , temporary shortages of\ngeneration capacity . some factors underlying high volatility of electricity\nprices may be of permanent nature and may be a necessary price to pay for\nincreased market efficiency and expanded customer choice .\ntime and location : 3 : 30 - 5 : 00 p . m . - 3108 etcheverry\nrefreshments : 3 : 00 p . m . - 4 th floor hallway", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.942+0000", "entityId": 8612, "properties": {"text": "Subject: wharton\nhi jeff !\ni know you received the information below . additionally , i have 2 people\nfrom broadband services meeting us there friday ( one is traci warner who set\nup the rice u deal ) . further , i ' ll be meeting with amy briggs regarding the\nentrepeneurship conference nov 30 th and dec lst . i ' ve already spoken with\nher and tom piazze and both independently confirmed as you suspected that we\ncommitted to sponsor at the $ 10 , 000 level . this entitles us to banners ,\npanels , posters , and most importantly , a keynote address . i ' ll discuss the\nkeynote address with her but would appreciate your thoughts in advance as to\nhow you ' d like to see the keynote speech executed ( suggestions for topics ,\nproposed speaking candidates , when in the conference you ' d like to see\nenron ' s speech , etc ) . i ' ll review the trip with you when we return .\nthanks jeff !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 10 / 13 / 2000\n03 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" piazze , thomas \" on 10 / 13 / 2000 09 : 18 : 24 am\nto : \" amit , raffi \" , \" macmillan , ian \"\n, \" stamer , anne \" ,\n\" cieri , emily gohn \" , \" weigelt , keith w \"\n, \" piazze , donna \" ,\n\" tyler , cara \" , \" kunreuther , howard \"\n, \" wind , yoram \" ,\n\" baltes , michael \" , \" winter , sidney g \"\ncc : \" roberts , stacey \" , \" williams , dorothy\n( wharton ) \" , \" harker , patrick \"\n, \" ' kaminski , vince ' \" ,\n\" ' patrick , christie ' \" , \" ' shankman , jeff ' \"\nsubject : visit by enron , 19 october 2000\na team of key executives from enron will be on campus on the 19 th of october\nfor the purposes of meeting with key staff and faculty to learn more about\nthe school and how the firm can gain a greater presence here . included in\nthis group will be :\nvince kaminski , director of research\nchristie patrick , vp , university relations\nmike rosen , director , university affairs group\ni have developed a proposed agenda for the visit . please review and confirm\nthat you are available to meet with one or more of the enron team at the\ntimes specified . if so , please provide me a prefered meeting location . if\nnot , please alternate times and locations .\n8 : 00 - 9 : 00 breakfast with donna piazze and keith weigelt to discuss \" tiger\nteam fap project \" the ivy grill , inn at penn\n9 : 00 - 10 : 30 meeting with raffi amit , ian macmillan , emily cieri and anne\nstamer to discuss the sol c . snider entreprenuer center and its related\nprograms , the business plan competition and webi . . . 4 th floor conference room ,\nvance hall ? ? ?\n10 : 30 - 12 : 00 christie and mike hold discussions with cara tyler , bob bonner\nand pat rose regarding recruiting processes and procedures . . . cms conference\nroom\n10 : 30 - ? ? ? broadband executive meets with gerry mccartney and other\nuniversity officials to discuss campus needs , future usage projections , etc .\n10 : 30 - 11 : 30 vince meets with sid winter reference jones center and related\nresearch\n11 : 30 - 12 : 00 vince meets with howard kunruether to discuss risk management\n12 : 00 - 1 : 15 pm group lunch with jerry wind at faculty club to discuss the\ne - fellows program\n2 : 00 - 3 : 00 pm christie and mike meet with mike baltes to discuss co - branding\nissues with wharton and upenn\n5 : 00 pm all will attend the et conference dinner event\nplease confirm your willingness and availability to support this agenda .\nthanks for your help .\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.947+0000", "entityId": 8613, "properties": {"text": "Subject: visit by enron , 19 october 2000\na team of key executives from enron will be on campus on the 19 th of october\nfor the purposes of meeting with key staff and faculty to learn more about\nthe school and how the firm can gain a greater presence here . included in\nthis group will be :\nvince kaminski , director of research\nchristie patrick , vp , university relations\nmike rosen , director , university affairs group\ni have developed a proposed agenda for the visit . please review and confirm\nthat you are available to meet with one or more of the enron team at the\ntimes specified . if so , please provide me a prefered meeting location . if\nnot , please alternate times and locations .\n8 : 00 - 9 : 00 breakfast with donna piazze and keith weigelt to discuss \" tiger\nteam fap project \" the ivy grill , inn at penn\n9 : 00 - 10 : 30 meeting with raffi amit , ian macmillan , emily cieri and anne\nstamer to discuss the sol c . snider entreprenuer center and its related\nprograms , the business plan competition and webi . . . 4 th floor conference room ,\nvance hall ? ? ?\n10 : 30 - 12 : 00 christie and mike hold discussions with cara tyler , bob bonner\nand pat rose regarding recruiting processes and procedures . . . cms conference\nroom\n10 : 30 - ? ? ? broadband executive meets with gerry mccartney and other\nuniversity officials to discuss campus needs , future usage projections , etc .\n10 : 30 - 11 : 30 vince meets with sid winter reference jones center and related\nresearch\n11 : 30 - 12 : 00 vince meets with howard kunruether to discuss risk management\n12 : 00 - 1 : 15 pm group lunch with jerry wind at faculty club to discuss the\ne - fellows program\n2 : 00 - 3 : 00 pm christie and mike meet with mike baltes to discuss co - branding\nissues with wharton and upenn\n5 : 00 pm all will attend the et conference dinner event\nplease confirm your willingness and availability to support this agenda .\nthanks for your help .\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.952+0000", "entityId": 8614, "properties": {"text": "Subject: uoft\nrick ,\nthanks for your message . i shall talk to greg whalley about his\nparticipation .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.957+0000", "entityId": 8615, "properties": {"text": "Subject: re : var calibration issues\nwe are proposing the following changes to the calculation of ng correlations :\n1 . weight the data set ( 3 calendar months ) used in calculating correlations\n( most recent data weighed heavier )\n2 . use respective contract prices , instead of prompt month prices ( i . e . for\nnov - 00 correlations use nov contract prices for the last 3 months , as opposed\nto prompt month prices for the last three months .\ntanya ,\ni have confirmed with ted and he gave us green light to make both changes .\ndid we get an opinion from vince ?\nwinston ,\nit is my understanding , that this changes apply to ng correlations only , not\nthe correlations between commodities . we will test the changes in gas and\nthen decide on world - wide implementation . any estimate on timing of this\nimplementation ?\ncassandra ,\nted suggested that you and veronica should document this as a change in var\nparameters and inform all commercial desk heads of these changes . we intend\nto make them for na gas first , but ultimately make these changes consistent\nacross all commodity groups . let me know if you have questions .\nthanks , vlady .\nwenyao jia\n10 / 13 / 2000 03 : 43 pm\nto : vladimir gorny / hou / ect @ ect\ncc : tanya tamarchenko / hou / ect @ ect , jin yu / hou / ect @ ect\nsubject : re : var calibration issues\nvlady ,\nalso in the meeting , we identified that there are still some issures\nregarding to the correlation matrix calculations .\nsince different commodity has different expiration dates . when calculate\ncorrelation between two commodities , the two may have different prompt\nmonths . are we going to use prices on two different prompt months or are we\ngoing to use the prices on the same month disregarding prompt months .\nbecause above issues , jin is not going do any changes on the correlation\nmatrix calculation until above issures can be solved .\nthanks !\nwinston\ntanya tamarchenko\n10 / 13 / 2000 03 : 16 pm\nto : vladimir gorny / hou / ect @ ect\ncc : wenyao jia / hou / ect @ ect , jin yu / hou / ect @ ect , jin yu / hou / ect @ ect\nsubject : re : var calibration issues\nvlady , we met with winston and jin today regarding var calibration issues .\nthe outcome on this discussion is :\n1 . jin will put weights into calculation of factor loadings ;\n2 . jin will change the way factor loading are calculated . for each commodity\nthe prompt month contract will be selected for the effective date of vatrfacs\nrun .\nthen the historical prices will be collected for 3 month for all forward\ncontracts starting from\nselected prompt month contract . the variance - covariance matrix will be\ncalculated\nbased on these data , it will be converted into correlation matrix , then\nfactor loadings\nanalysis will be performed on the correlation matrix .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.963+0000", "entityId": 8616, "properties": {"text": "Subject: re : eprm\njulie ,\nsorry for the delay . i was traveling a lot the last few days .\ni shall send back my comments by saturday morning my time .\nvince\n\" julie \" on 10 / 13 / 2000 04 : 34 : 17 am\nto : \" vincejkaminski \"\ncc : \" lc \" , \" chris \"\nsubject : eprm\nvince ,\n?\ncould you please provide me with an indication on whether you will be able\nto review the latest eprm article in the next day or so ? ?\n?\nlook forward to hearing from you shortly .\n?\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.968+0000", "entityId": 8617, "properties": {"text": "Subject: eprm\nvince ,\n?\ncould you please provide me with an indication on whether you will be able\nto review the latest eprm article in the next day or so ? ?\n?\nlook forward to hearing from you shortly .\n?\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.976+0000", "entityId": 8618, "properties": {"text": "Subject: thanks from charles\ndear vince :\nit was great talking to you on friday . thank you very\nmuch for the opportunity and your time .\nafter having talked with you and other people in the\ngroup , i was very impressed by enron research group ' s\ndeep insights , high professionalism , and the friendly\nattitude . i really wish that i could have the\nopportunity to join the group and contribute to the\nfuture success of the research group with my solid\nbackground in finance and econometrics .\nif you have any questions , please feel free to let me\nknow . i look forward to hearing from you soon , thank\nyou very much .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! messenger - talk while you surf ! it ' s free .\nhttp : / / im . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.982+0000", "entityId": 8619, "properties": {"text": "Subject: program\ndonna ,\ni am sending you , as promised , the outline of the project . in case you have a\ndifficulty opening the attachment , i cc my assistant . she will be able to\nfax it to you on monday .\nvince\n- 2001 field application form 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.987+0000", "entityId": 8620, "properties": {"text": "Subject: re : seismic data via satellite\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bob lee / na / enron on 10 / 16 / 2000 11 : 46 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\ngregory p smith @ ect\n10 / 16 / 2000 10 : 06 am\nto : bob lee / na / enron @ enron\ncc :\nsubject : re : seismic data via satellite\nbob ,\nhere are a few comments on this note :\n1 . deal with seismic company was done by a mark peterson who is still with\nenron . i haven ' t caught up with him for details but it had to do with\nunderwriting ( risk of no sales ) seismic survey . timing is important .\ninterest may have picked up in new surveys and the survey company decided\nthat they didn ' t need enron anymore because they no longer saw a risk of no\nsales .\n2 . 3 - d surveys will happen where there is an abundance of e & p activity or\nbe spurred on by successes in a given basin . while activity continues in the\ngulf of mexico on the shelf , the major discoveries are being found in the\ndeep water . worldwide , the shallow water plays have been looked at and\nworked for years - they were accessible with the extraction technology of the\ntime . i don ' t think that deep water sedimentation / depositional systems were\ncompletely understood to even begin to try to justify looking in deep water .\nconcepts have evolved quite quickly . the point is that many deep water\naccumulations are incredibly large - billion barrel accumulations . these\nsizes are like those accumulations that were found decades ago when companies\nwere drilling surface structures . the large reserves are needed to pay for\nthe corresponding incredibly expensive costs of deepwater field development .\ni believe that finding and development costs ( $ / barrel ) are at least two to\nthree times shelf f & d costs in the gulf of mexico . this differential is\nprobably large with international projects ( and that doesn ' t take into\naccount political risk ) .\ni ' ll look forward to more involvement if and when this project / concept goes\nforward . feel free to forward this to all participants .\ngreg\nbob lee @ enron\n13 / 10 / 2000 08 . 30\nto : gregory p smith / hou / ect @ ect , richard reichardt / enron communications @ enron\ncommunications\ncc : vince j kaminski / hou / ect @ ect\nsubject : seismic data via satellite\ni am preparing a summary or our thursday discussions to be used as a\nbackground piece for discussion / brainstorming with oil traders . i will\ncirculate this for review / correction later today , or , at the latest , monday .\ngreg , you mentioned that enron had participated in a speculative survey in\nthe gulf of mexico that was successful . it might be useful to get more info\non this . terms , return realized ( over what time frame ) , why we have not\ncontinued to do this , etc .\nalso , from your comments , many , if not most of the 3 - d surveys are in deep\nwater . i read recently that shell , i believe , is participating in a deep sea\ndrilling / extraction project in the gulf . what oil price is required to make\nthese kinds of projects viable financially ?\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:45.992+0000", "entityId": 8621, "properties": {"text": "Subject: re : swaps monitor research .\nvince ,\ni reviewed all information available on the web site . there is a template\nthat shows what kind of data swapsmonitor provides on commodities , but\nunfortunately this template is a blank one and no example of the table given .\nto receive any actual data we have to subscribe to their service ( $ 200 -\nsingle delivery , $ 300 - annual subscription ) .\nbelow is the template that given for commodity derivatives :\nthe data in this database is derived from audited financial statements ,\nregulatory filings , reports to shareholders .\ni will be glad to write a summary report .\nsincerely ,\nelena\nvince j kaminski @ ect\n10 / 12 / 2000 03 : 47 pm\nto : elena chilkina / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\nsubject : swaps monitor research .\nelena ,\nplease , review the energy related info in this database ( if any ) and talk to\nme\nabout it .\ni would like to do some research in this area and ask you to write a summary\nreport .\nnothing urgent .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n03 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrei osonenko on 10 / 11 / 2000 04 : 26 : 38 pm\nto : ( recipient list suppressed )\ncc :\nsubject : swaps monitor research .\nwe have today published information about the otc derivative activities of\nthe largest dutch dealers . this research is contained in the attached pdf\nfile .\nthrough our web site , swapsmonitor . com , you can obtain additional information\nabout otc derivatives dealers , including rankings and a database of\noutstandings going back to 1994 .\nas an e - mail subscriber to our research , you will automatically receive all\nfree research at the same time it is placed on our web site . if you wish to\nremove your name from the e - mailing list , please use the reply feature of\nyour e - mail application and type the word \" remove \" in the subject line .\nregards ,\n- dutch _ dealers . pdf\nandrei osonenko\nresearch department", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.002+0000", "entityId": 8622, "properties": {"text": "Subject: seismic data via satellite\ni have attached a background piece to brief oil traders on this subject prior\nto a possible meeting with them .\nplease give me any comments on 1 ) accuracy 2 ) completeness and 3 ) coverage\nof the areas we want to explore .\nas a side note , i found some info on the web stating current proven oil\nreserves are 1 , 000 billion bbls . discovery of a 1 billion bbl field would\nadd only 0 . 1 % . while we will pursue the trading advantage option , it is not\nlooking promising that it has great short term value , given the long time\nframe and high cost of bringing deep water reserves to market .\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.016+0000", "entityId": 8623, "properties": {"text": "Subject: re : informs national conference at san antonio\nhi ,\ndetails of our session info . at the informs conference can be found at the\nfollowing link . it ' ll be in the afternoon of 11 / 6 ( monday ) .\nsince we have 5 speakers , i expect each of us will have no more than 20\nminutes to present . please keep that in mind and e - mail me if you have\nany questions . please also inform me if there will be any changes . look\nforward to seeing you all in san antonio .\nbest regards ,\nshijie\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.024+0000", "entityId": 8624, "properties": {"text": "Subject: technical corner article\na proposed technical corner article on the work we did fitting the new york\narea gas load data is attached for comment .\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.029+0000", "entityId": 8625, "properties": {"text": "Subject: boss ' s day\nvince ,\nhappy boss day ! you have been a wonderful boss , thank you .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 10 / 16 / 2000 08 : 49 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n10 / 16 / 2000 05 : 58 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , martin lin / hou / ect @ ect ,\nmaureen raymond / hou / ect @ ect , osman sezgen / hou / ees @ ees , paulo\nissler / hou / ect @ ect , amitava dhar / corp / enron @ enron , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , jose marquez / corp / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron , elena chilkina / corp / enron @ enron , sevil\nyaman / corp / enron @ enron , sofya tamarchenko / na / enron @ enron , bob\nlee / na / enron @ enron , gwyn koepke / na / enron @ enron , hector campos / hou / ect @ ect ,\nanita dupont / na / enron @ enron , youyi feng / na / enron @ enron , v charles\nweldon / hou / ect @ ect , shane green / hou / ees @ ees , yana kristal / corp / enron @ enron ,\npraveen mellacheruvu / hou / ees @ ees , li sun / na / enron @ enron , stephen\nbennett / na / enron @ enron , roman zadorozhny / hou / ees @ ees , lance\ncunningham / na / enron @ enron , shirley crenshaw / hou / ect @ ect , david\nryan / corp / enron @ enron , todd decook / corp / enron @ enron\ncc :\nsubject : boss ' s day\nreminder - let your boss know that\nyou care !\ntell him or her happy boss ' s day !\nhappy boss ' s day , vince , mike , vasant and stinson and also to you\nshirley ,\ni hope you all have a wonderful day .\nalso remember the weather team will be over at ninfa ' s for\n3 : 30 p . m . for happy hour . today\nyou are welcome to join us . . . . . . . . . . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.035+0000", "entityId": 8626, "properties": {"text": "Subject: tiger team\nmr . bayne :\nattached is the updated document . if you need anything else , please let\nme know .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.040+0000", "entityId": 8627, "properties": {"text": "Subject: baxter 16 oct . please review the following ticketed itinerary\nvince ,\nattached is a copy of my agenda for today ' s trip to berkeley . also , my cell\nphone number is 281 - 793 - 0567 .\nthanks ,\nashley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ashley baxter / corp / enron on 10 / 16 / 2000\n08 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndiane fitzgerald on 10 / 13 / 2000 05 : 36 : 50 pm\nto : \" ' ashley baxter @ 7136463011 ' \"\ncc : \" ' ashley . baxter @ enron . com ' \"\nsubject : baxter 16 oct . please review the following ticketed itinerary\nbaxter / ashley\neb 3614\netkt receipt\nenron broadband services\ndate : oct 13 2000\nservice date from to depart arrive\ncontinental airlines 16 oct houston tx san f ca 1155 a 158 p\nco 1511 y mon g . bush interco san francisco\nterminal c terminal s\nsnack non stop\nreservation confirmed 4 : 03 duration\naircraft : mcdonnell douglas all md - 80 series\nseat 09 d no smoking confirmed baxter / ashley ( i\ncontinental airlines 17 oct oakland ca houston tx 630 a 1229 p\nco 1720 y tue international g . bush interco\nterminal 1 terminal c\nsnack non stop\nreservation confirmed 3 : 59 duration\naircraft : boeing 737 - 500\nseat 07 a no smoking confirmed baxter / ashley ( i\naisle seat unavailable . req again at ck in . window confirmed\nyour etkt confirmation number is : m x n c v t\nmiscellaneous 16 dec houston tx\nsat * * thank you for using the tap * *\nreservation number ( s ) co / mxncvt\nbaxter / ashley soc 083 erl 028\nco frequent flyer cofcl 37772\nashley baxter 713 853 - 3589\nintl tvlrs : carry sos wallet card w / enronassistance info\ncall sos : in u . s 800 523 - 6586 / intl 215 245 - 4707 ( collect )\nthis is the passenger receipt for your electronic ticket .\nplease check - in with photo identification and with\neither ( 1 ) this receipt or ( 2 ) your confirmation number .\nyour etkt confirmation number is : m x n c v t\nregards ,\ndiana fitzgerald\n( 713 ) 650 - 8080 ext . 1152\n( 713 ) 860 - 1152 - direct line\nthe travel agency in the park", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.045+0000", "entityId": 8628, "properties": {"text": "Subject: program\ni forgot to attach the program file . here it is\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n10 / 17 / 2000 09 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n10 / 17 / 2000 09 : 13 pm\nto : mike a roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : program\nmike ,\nhere is third version of the program . it gives better results than the\nprevious versions you have . sorry for the delay , these past 2 days i have\nbeen busy meeting with people on the new ebs project . i think the result\nlooks reasonably good . you can try it . ( to run , type cow filename . jpg m )\nsmallcow . jpg : hand count 165 , program reports 140\ncow 2 . jpg : hand count 1 , program reports 1\ncow 3 . jpg : hand count 273 , program reports 244\ncow 4 . jpg : hand count 7 , program reports 7\ncow 5 . jpg : hand count 160 - 180 , program reports 165\n- chonawee\nyou can show it to the others by yourself or i can go with you . i will have\nto go to german consulate tomorrow morning and will be in the office around\n10 : 30 - 11 am .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.050+0000", "entityId": 8629, "properties": {"text": "Subject: program\nmike ,\nhere is third version of the program . it gives better results than the\nprevious versions you have . sorry for the delay , these past 2 days i have\nbeen busy meeting with people on the new ebs project . i think the result\nlooks reasonably good . you can try it . ( to run , type cow filename . jpg m )\nsmallcow . jpg : hand count 165 , program reports 140\ncow 2 . jpg : hand count 1 , program reports 1\ncow 3 . jpg : hand count 273 , program reports 244\ncow 4 . jpg : hand count 7 , program reports 7\ncow 5 . jpg : hand count 160 - 180 , program reports 165\n- chonawee\nyou can show it to the others by yourself or i can go with you . i will have\nto go to german consulate tomorrow morning and will be in the office around\n10 : 30 - 11 am .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.055+0000", "entityId": 8630, "properties": {"text": "Subject: completion of lng model review\njeff ,\nfyi . we completed the review of the lng model .\nthe copy of the review is available if you want to take a look at it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 17 / 2000\n04 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob lee @ enron\n10 / 16 / 2000 01 : 53 pm\nto : vince j kaminski / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : completion of lng model review\nthe review of eric groves ' lng model spreadsheet has been completed . no\nindependent model was available for use in the comparison ; however , the model\nappears complete and accurate in representating all important cost and\nrevenue elements .\nif this financial model is coupled with a optimization model for planning\nship usage in the future , additional variables may be needed to represent the\nvariability of trip times , weather factors , etc . a reference describing\nthese possible additions was provided .\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.060+0000", "entityId": 8631, "properties": {"text": "Subject: credit model\nvince and stinson ,\nwe met bill bradford yesterday , the credit model modification turns out to be\nthree projects .\n1 ) potential exposure calculator\nthis requres forward curves simulation and revaluation of all deals over\nthe tenor ( typically 20 years ) .\nit needs multi - factor hjm and gas - electricity joint factors of loading .\noutput from this model is the maximal loss amount and\nits confidence interval .\nexpected delivery time : 1 month\n2 ) include asian option model into the current xll calculation engine .\nthis is more concrete and simly to do .\nexpected delivery time : 2 weeks .\n3 ) incorporate krishna ' s \" eam \" option valuation into the credit model\nthis one is not yet urgent .\ni may need more resources to accomplish these tasks . paulo has difficulty\nto commit himself to even to the second task ,\nciting that he has other things to do . therefore i need your help in setting\nthe prorities .\nthanks ,\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.065+0000", "entityId": 8632, "properties": {"text": "Subject: parameter estimation\nvince ,\ni have put together a parameter estimation model , which is continuation of\ntanya ' s model .\nthe estimation process is more consistent now . attached are the model and a\nbrief\nwrite - up of the methods . if you see any problem / ways to improve it , please\nlet me know .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.070+0000", "entityId": 8633, "properties": {"text": "Subject: full - time offer terms\ncantekin ,\ndolores muzzy forwarded your e - mail . i apologize for not answering sooner\nbut i have been travelling .\nunfortunately , the terms of the associate program compensation package are\nnot negotiable . we have reviewed our terms and believe we are competitive\nwith our peers . i have spoken with vince kaminski who will be calling you to\ndiscuss .\ngiven that it has taken 6 days to respond to you , if you are still\nconsidering enron ' s offer of employment i will extend your deadline until\noctober 24 th .\nplease call if you have any other questions .\nsincerely ,\ncharlene jackson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.075+0000", "entityId": 8634, "properties": {"text": "Subject: re : invitation to speak at infocast ' s managing summer price volat\nilit y conference in houston\nthank you very much , mr . kaminsky !\nbritta bothe\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , october 17 , 2000 1 : 58 pm\nto : brittab @ infocastinc . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : invitation to speak at infocast ' s managing summer price\nvolatilit y conference in houston\ndear ms . bothe ,\ni have forwarded my message to one of my associates who\nspecializes in weather derivatives .\nvince kaminski\nbritta bothe on 10 / 17 / 2000 12 : 38 : 33 pm\nto : vkamins @ enron . com\ncc :\nsubject : invitation to speak at infocast ' s managing summer price volatilit\ny conference in houston\ndear ms . kaminsky :\nas i just mentioned on your voicemail , infocast is going to host a\nmanaging\nsummer price volatility course , january 30 - february 1 , 2001 in houston .\nthe course will focus on the various tools at hand to manage summer price\nand load volatility . our target audience for this event will primarily be\nrisk managers and managers in bulk power sales & purchase ( our secondary\ntarget audience is energy traders ) .\nattached you will find a draft program agenda for your review . please let\nme know if you or someone else at enron is interested in presenting at this\nevent . in particular , we are looking for someone to talk about weather\nderivatives .\ni appreciate you taking the time to review the conference schedule and i\nhope that i will have an opportunity to talk to you . unfortunately , i am\nrunning behind schedule in finalizing this program . i will call tomorrow\nto\nsee what your feedback is . if you have any questions or suggestions ,\nplease\ndo not hesitate to contact me at ( 818 ) 888 - 4445 ext . 30 .\nsincerely ,\nbritta bothe\ninfocast\nconference manager\n( 818 ) 888 - 4445 ext . 30\n>\n( see attached file : agenda 5 . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.080+0000", "entityId": 8635, "properties": {"text": "Subject: arthur andersen 21 st annual energy symposium\nshirley ,\nplease , register me for this conference .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 17 / 2000\n04 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsabrina whaley @ enron\n10 / 17 / 2000 10 : 09 am\nto : rick baltz / hou / ees @ ees , misty barrett / hou / ees @ ees , dennis\nbenevides / hou / ees @ ees , jeremy blachman / hou / ees @ ees , jim brown / hou / ees @ ees ,\nbrian keith butler / gco / enron @ enron , ford cooper / hou / ees @ ees , cory\ncrofton / hou / ees @ ees , wanda curry / enron @ gateway , meredith m\neggleston / hou / ees @ ees , mike harris / hou / ees @ ees , neil hong / hou / ees @ ees , kevin\nhughes / hou / ees @ ees , shawn kilchrist / na / enron @ enron , dana lee / hou / ees @ ees ,\ngayle w muench / hou / ees @ ees , mark s muller / hou / ees @ ees , nina\nnguyen / hou / ees @ ees , lou pai and tom white / hou / ees @ ees , lisa polk / hou / ees @ ees ,\ngeorge w posey / hou / ees @ ees , david saindon / corp / enron @ enron , scott\nstoness / hou / ees @ ees , wade stubblefield / hou / ees @ ees , marty sunde / hou / ees @ ees ,\nthomas e white / hou / ees @ ees , jim badum / hou / ees @ ees , ronnie\nshields / hou / ees @ ees , kristin albrecht / enron communications @ enron\ncommunications , cliff baxter / hou / ect @ ect , sally beck / hou / ect @ ect , lynn\nbellinghausen / enron _ development @ enron _ development , john\nberggren / enron _ development @ enron _ development , philippe a bibi / hou / ect @ ect ,\nkenny bickett / hou / azurix @ azurix , jeremy blachman / hou / ees @ ees , dan\nboyle / corp / enron @ enron , eric boyt / corp / enron @ enron , bob\nbutts / gpgfin / enron @ enron , rick buy / hou / ect @ ect , rick l carson / hou / ect @ ect ,\nrebecca carter / corp / enron @ enron , lou casari / enron communications @ enron\ncommunications , kent castleman / na / enron @ enron , becky caudle / hou / ect @ ect ,\ncraig childers / hou / ees @ ees , mary cilia / na / enron @ enron , wes\ncolwell / hou / ect @ ect , diane h cook / hou / ect @ ect , kathryn cordes / hou / ect @ ect ,\nlisa b cousino / hou / ect @ ect , wanda curry / enron @ gateway , glenn\ndarrah / corp / enron @ enron , lori denison / hou / azurix @ azurix , timothy j\ndetmering / hou / ect @ ect , jeff donahue / hou / ect @ ect , janell dye / corp / enron @ enron ,\nscott earnest / hou / ect @ ect , john echols / enron communications @ enron\ncommunications , meredith m eggleston / hou / ees @ ees , sharon e sullo / hou / ect @ ect ,\njill erwin / hou / ect @ ect , archie n eubanks / enron _ development @ enron _ development ,\nrodney faldyn / corp / enron @ enron , jim fallon / enron communications @ enron\ncommunications , stanley farmer / corp / enron @ enron , ellen fowler / enron\ncommunications @ enron communications , mark frevert / na / enron @ enron , mark\nfriedman / hou / ect @ ect , sonya m gasdia / hou / ect @ ect , stinson gibner / hou / ect @ ect ,\ngeorge n gilbert / hou / ect @ ect , david glassford / hou / azurix @ azurix , monte l\ngleason / hou / ect @ ect , ben f glisan / hou / ect @ ect , sheila glover / hou / ect @ ect ,\neric gonzales / lon / ect @ ect , vladimir gorny / hou / ect @ ect , david\ngorte / hou / ect @ ect , eve grauer / hou / ees @ ees , paige b grumulaitis / hou / ect @ ect ,\nbill gulyassy / na / enron @ enron , dave gunther / na / enron @ enron , mark e\nhaedicke / hou / ect @ ect , kevin hannon / enron communications @ enron communications ,\nstephen harper / corp / enron @ enron , susan harrison / hou / ect @ ect , john\nhenderson / hou / ees @ ees , brenda f herod / hou / ect @ ect , patrick hickey / enron\ncommunications @ enron communications , georgeanne hodges / hou / ect @ ect , sean a\nholmes / hou / ees @ ees , shirley a hudler / hou / ect @ ect , cindy hudler / hou / ect @ ect ,\ngene humphrey / hou / ect @ ect , steve\njernigan / enron _ development @ enron _ development , sheila kahanek / enron\ncommunications @ enron communications , vince j kaminski / hou / ect @ ect , steven j\nkean / na / enron @ enron , shawn kilchrist / na / enron @ enron , faith\nkillen / hou / ect @ ect , jeff kinneman / hou / ect @ ect , joe kishkill / sa / enron @ enron ,\ntroy klussmann / hou / ect @ ect , john j lavorato / corp / enron @ enron , david\nleboe / hou / ect @ ect , sara ledbetter / enron communications @ enron communications ,\nconnie lee / enron communications @ enron communications , billy\nlemmons / corp / enron @ enron , tod a lindholm / na / enron @ enron , mark e\nlindsey / gpgfin / enron @ enron , phillip d lord / lon / ect @ ect , drew c\nlynch / lon / ect @ ect , herman manis / corp / enron @ enron , keith\nmarlow / enron _ development @ enron _ development , arvel martin / hou / ect @ ect ,\nmichelle mayo / enron _ development @ enron _ development , mike\nmcconnell / hou / ect @ ect , stephanie mcginnis / hou / ect @ ect , monty mcmahen / enron\ncommunications @ enron communications , kellie metcalf / enron\ncommunications @ enron communications , trevor mihalik / na / enron @ enron , gayle w\nmuench / hou / ees @ ees , mark s muller / hou / ees @ ees , ted murphy / hou / ect @ ect , nina\nnguyen / hou / ees @ ees , roger ondreko / hou / ect @ ect , jere c overdyke / hou / ect @ ect ,\nbeth perlman / hou / ect @ ect , randy petersen / hou / ect @ ect , mark\npeterson / hou / ees @ ees , lisa polk / hou / ees @ ees , george w posey / hou / ees @ ees ,\nbrent a price / hou / ect @ ect , alan quaintance / corp / enron @ enron , monica\nreasoner / hou / ect @ ect , andrea v reed / hou / ect @ ect , stuart g\nrexrode / lon / ect @ ect , ken rice / enron communications @ enron communications , mark\nruane / hou / ect @ ect , jenny rub / corp / enron @ enron , mary lynne ruffer / hou / ect @ ect ,\nelaine schield / corp / enron @ enron , steven ( pge ) schneider / enron @ gateway ,\ncassandra schultz / na / enron @ enron , howard selzer / corp / enron @ enron , jeffrey a\nshankman / hou / ect @ ect , cris sherman / hou / ect @ ect , david\nshields / enron _ development @ enron _ development , ryan siurek / corp / enron @ enron ,\njeff skilling / corp / enron @ enron , dave sorenson / enron @ gateway , wade\nstubblefield / hou / ees @ ees , kevin sweeney / hou / ect @ ect , ken tate / enron\ncommunications @ enron communications , gail tholen / hou / ect @ ect , sheri\nthomas / hou / ect @ ect , carl tricoli / corp / enron @ enron , mark warner / hou / ect @ ect ,\ntodd warwick / hou / ect @ ect , greg whalley / hou / ect @ ect , stacey w\nwhite / hou / ect @ ect , jimmie williams / hou / ees @ ees , shona wilson / na / enron @ enron ,\nmark p wilson / lon / ect @ ect , steve w young / lon / ect @ ect\ncc : jennifer stevenson / aa / corp / enron @ enron , jane champion / aa / corp / enron @ enron\nsubject : arthur andersen 21 st annual energy symposium\nit is with great pleasure that i invite you to arthur andersen ' s 21 st annual\nenergy symposium . this year ' s conference will be held december 7 th and 8 th\nat the westin galleria hotel in houston . arthur andersen is offering a\nvaluable program with many of the industries top executives speaking on\nindustry wide applications .\na few weeks ago some of you may have received information regarding the\nregistration process . however , due to the level of enron ' s attendance , we\nhave arranged to facilitate your group ' s registration . if you would like to\nregister or would like more information about the symposium , please contact\nsabrina whaley at 853 - 7696 by october 31 , 2000 or forward your completed\nregistration form to her at eb 2355 . a copy of the symposium agenda has been\nattached for your information . the registration fee is $ 950 per person ;\nhowever , in the past we have given enron personnel interested in attending a\n50 % discount .\nwe are excited about the upcoming symposium and hope that you will be able to\nattend .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.086+0000", "entityId": 8636, "properties": {"text": "Subject: re : invitation to speak at infocast ' s managing summer price\nvolatilit y conference in houston\nthanks , vince - - it sounds like a good opportunity . if you ' d like i can call\nhim directly .\njoe\nvince j kaminski\n10 / 17 / 2000 03 : 55 pm\nto : joseph hrgovcic / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : invitation to speak at infocast ' s managing summer price volatilit y\nconference in houston\njoe ,\nany interest in speaking ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 17 / 2000\n04 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbritta bothe on 10 / 17 / 2000 12 : 38 : 33 pm\nto : vkamins @ enron . com\ncc :\nsubject : invitation to speak at infocast ' s managing summer price volatilit y\nconference in houston\ndear ms . kaminsky :\nas i just mentioned on your voicemail , infocast is going to host a managing\nsummer price volatility course , january 30 - february 1 , 2001 in houston .\nthe course will focus on the various tools at hand to manage summer price\nand load volatility . our target audience for this event will primarily be\nrisk managers and managers in bulk power sales & purchase ( our secondary\ntarget audience is energy traders ) .\nattached you will find a draft program agenda for your review . please let\nme know if you or someone else at enron is interested in presenting at this\nevent . in particular , we are looking for someone to talk about weather\nderivatives .\ni appreciate you taking the time to review the conference schedule and i\nhope that i will have an opportunity to talk to you . unfortunately , i am\nrunning behind schedule in finalizing this program . i will call tomorrow to\nsee what your feedback is . if you have any questions or suggestions , please\ndo not hesitate to contact me at ( 818 ) 888 - 4445 ext . 30 .\nsincerely ,\nbritta bothe\ninfocast\nconference manager\n( 818 ) 888 - 4445 ext . 30\n>\n- agenda 5 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.094+0000", "entityId": 8637, "properties": {"text": "Subject: esai gas / power alert on impact of gas prices on generation\ninvestment\nattached is an essay of the impact of gas prices on generation investment .\nif you have any questions or comments , feel free to contact me .\ned\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nedward n . krapels , phd\nmanaging director\nesai power and gas services\ntel 781 245 2036\ncell 617 899 4948\nekrapels @ esaibos . com\nwww . esai . com\n- esai gas alert 101800 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.101+0000", "entityId": 8638, "properties": {"text": "Subject: re : exotica . xla\nhi anjam ,\nthanks for the info .\ni ' m afraid that one thing i don ' t know is precisely how to build\ns : \\ research \\ exotica \\ excel \\ exotica . xla from the code you sent me .\ncould you send me instructions ?\nalso as you are very busy and away from your desk could you set up your lotus\nnotes\ncalendar so mary ward and joe kelsey\npermission can see your calendar so i can get in touch with you if anything\ncomes up . they can both see my calendar .\nthanks ,\nsharad\nenron europe\nfrom : anjam ahmad 17 / 10 / 2000 11 : 37\nto : sharad agnihotri / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , zimin\nlu / hou / ect @ ect , dale surbey / lon / ect @ ect\nsubject : exotica . xla\nin answer to your questions .\nanjam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anjam ahmad / lon / ect on 17 / 10 / 2000 09 : 20\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron europe\nfrom : sharad agnihotri 16 / 10 / 2000 13 : 59\nto : anjam ahmad / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , dale\nsurbey / lon / ect @ ect , tani nath / lon / ect @ ect , steven leppard / lon / ect @ ect\nsubject : exotica . xla\nhi anjam ,\ni have quite a few questions / requests regarding the exotics libarary :\n1 ) could you e - mail me instructions for building / compiling\ns : \\ research \\ exotica \\ excel \\ exotica . xla\nalso if there is any more source code that i need please could you e - mail me\nthat .\nyou have all the code ( c & vba ) that makes up the library now - please see\npreviou e - mails\n2 ) also could you e - mail me documents on the changes you have made to\ns : \\ research \\ exotica \\ excel \\ exotica . xla\nchanges are documented through aterations to comments on individual source\ncode files as is the current method in houston and as adopted by me in\nlondon - version control occurs at the individual file level rather than\nthrough soiurce safe\n3 ) the exotica . xla used in london and exotica . xll used in houston are quite\ndifferent . what regression testing has been done ?\nhow do we know if the two versions that we have been using produce the same\nresults .\ni have not recently compared the xll from houston with our xla - this would\nbe a useful exercise for you\n4 ) judging from the documentation there are quite a few more functions\navailable on the houston exotica\nlike asian spreads , quantos , digitals etc . is there any reason why they have\nnot been implemented in london ' s exotica . xla ?\nmaintenance and upgrades to london exotica to ensure compatability with\nhouston and vice versa is an on - going process - inevitably there will be some\nlag between a new model being implemented in houston and in london , as is the\ncase with asian spreads and digitals . quantos are already available - see\nvba code .\nthanks in advance ,\nsharad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.105+0000", "entityId": 8639, "properties": {"text": "Subject: newsletter , monday 23 oct .\nvince ,\ni see that you are flying around a lot this week , but i wanted to let you\nknow how it ' s going with the newsletter . i ' ve scheduled steve bigelow as the\n\" person of the week . \" regarding technical corner , i sent you a copy of\nmaureen ' s article for your review . bob lee told me he has also sent you\nsomething . i ' d appreciate your guidance on which one to use . i believe\nmaureen ' s is time - sensitive , so i ' d vote for that one if you ' ve had a chance\nto look it over .\ni ' m going to be out of town the rest of today and thursday - friday to attend\nmy uncle ' s funeral in illinois . if you fly over illinois , please wave ! : - )\nhave a safe trip ( s ) ,\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.110+0000", "entityId": 8640, "properties": {"text": "Subject: re : weekly international econ review\ngwyn ,\ni see no reason why we cannot include the article in monday ' s issue . of\ncourse , vince will need to review it as he does for everyone ' s material . i ' m\nforwarding a copy to him with this message .\nregarding the software , you can just initiate a security request online and\norder it . we can put issues online the old way until they set you up with\nthe new stuff . by the way , i ' m going to be gone thursday and friday , so when\nyour new issue is ready on friday , you should send it to elena . i know she\nwill be here at least in the morning .\nsam\ngwyn koepke\n10 / 17 / 2000 11 : 29 am\nto : william smith / corp / enron @ enron\ncc : maureen raymond / hou / ect @ ect\nsubject : re : weekly international econ review\nsam , this is great , thanks for taking care of that so quickly ! i will check\non the software needed and get back to you today .\nalso , maureen and i co - authored a paper on ppp and our thai forecast that\nmight be appropriate for the tech corner . i ' ve attached it below . please\nadvise if we can get this into the tech corner for next week .\nthanks ,\ngwyn\nfrom : william smith 10 / 17 / 2000 08 : 34 am\nto : gwyn koepke / na / enron @ enron\ncc :\nsubject : re : weekly international econ review\ngwyn ,\ni was successful in my efforts to put your new product on the web site ! have\na look ! i know elena may want to modify it a bit , but at least it ' s up\nthere . i have a couple of suggestions for your future efforts :\nget adobe acrobat 4 . 0 , full version ( not just the reader ) - - - this will allow\nyou to publish it in final form from your desk .\ndo you have access to the y : drive ? it ' s a drive mapped off of o : \\ research\nand all of the web pages are there . let me know , and if you don ' t , as long\nas you have rights to o : \\ research , i can come down and map if for you .\nthen , all you have to do is print the new edition to pdf , then save it to the\nsame spot each time , and it ' s automatically online .\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.114+0000", "entityId": 8641, "properties": {"text": "Subject: visit in november\nshirley ,\nplease , schedule a meeting , 30 minutes with him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 17 / 2000\n05 : 56 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos ordonez on 10 / 17 / 2000 02 : 56 : 07 pm\nto : stinson . gibner @ enron . com\ncc : vkamins @ enron . com\nsubject : visit in november\ndear stinson ,\nnovember is fast approaching and my schedule , and i am sure yours and\nvincents ' ,\nis filling up . i would love to visit with you guys again to discuss\npossibilites of collaborations . right now , i am busy nov : 3 in the\nafternoon , 6 , 10 in the morning , 15 , and any tuesday or thursday .\nplease let me know date and time for my visit as early as you can .\nbest ,\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.119+0000", "entityId": 8642, "properties": {"text": "Subject: position\ndear dr . kaminski\nmy name is jaesoo lew and i am referred by dr . wayne lee .\ncurrently i ' ve been working at aquila energy in kansas city as an pricing\nanalyst since july 2000 . since then , i have developed a natural gas storage\nvaluation model applying the swing options ( forest method ) pricing approach .\nthe price processes would be considered critical for the storage valuation\nsince a trinomial forest is required to value storage . also the c + +\nprogramming using excel dll has been developed , too .\ni attached my resume to this message for your consideration and am looking\nforward to talking about an opportunity at enron .\nmy home phone number is 913 - 649 - 0578 , dr . kaminski , i will wait your call in\nthis week as dr . lee informed me . if possible , please let me know your\nexpected calling day through the mail . i appreciate your consideration .\nthank you very much .\nsincerely ,\njaesoo lew\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- vitae 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.123+0000", "entityId": 8643, "properties": {"text": "Subject: good afternoon\nchristie ,\ni wanted to update you on my schedule for december as you are working to\narrange some time for vince and i to visit with the enron leadership group .\nwe had talked about the first week in december and that is good for me\nthrough wednesday dec 6 th . i will be at a conference at harvard on the 7 th\nand 8 th . however , the next couple of weeks are also possibilities if we\ncan squeeze in some time .\nthanks\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.128+0000", "entityId": 8644, "properties": {"text": "Subject: re : spring 2001 conference participation by jeffrey k . skilling\nvince , jeff has decided to decline this speaking opportunity . he is\nscheduled to speak at a leadership conference at ut on 2 / 16 , so given his\ntime limitations , he wants to pass on this one . sorry to be the messenger of\nbad news . srs\nvince j kaminski @ ect\n10 / 12 / 2000 04 : 57 pm\nto : sherri sera / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , richard causey / corp / enron @ enron\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nsherri ,\nany resolution of the scheduling conflict jeff skilling had for february the\n22 nd ?\nour friends at ut are ready to make the reservations and send out invitations\nto this conference\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n05 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ehud i . ronn \" on 10 / 12 / 2000 10 : 12 : 56 am\nto : richard . causey @ enron . com , vince . j . kaminski @ enron . com\ncc :\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nrick / vince :\ngood morning .\nfurther to my discussions with vince during his visit to the energy finance\nprogram yesterday , i write at this time to inquire whether mr . skilling ' s\nassistant has been able to confirm his participation as 2 / 22 / 2001 keynote\nspeaker at our conference .\nwith thanks for your intercession on our behalf ,\nehud ronn\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.133+0000", "entityId": 8645, "properties": {"text": "Subject: re : rotational opportunities within your group\nkate ,\nmy assistant , shirley crenshaw , will schedule a meeting .\nvince\nkate lucas\n10 / 17 / 2000 11 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : rotational opportunities within your group\ndear vince ,\ni am a rotating associate and would like to learn more about opportunities\nwithin your group . i have worked in rac and am currently in financial\ntrading . i believe the associate / analyst program may forward you my cv , but i\nthought it good to get in touch personally .\nplease let me know if there is someone with whom i could speak about the\ngroup and its needs for associates .\nwith best regards ,\nkate", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.137+0000", "entityId": 8646, "properties": {"text": "Subject: part - time work\nvince :\ni enjoyed the lunch and part of your presentation last week ( i had an other\nengagement to attend to , and hence could not make it to the rest of the\npresentation and reception following it ) .\ni appreciate the part - time offer , however , i must admit that i did not find\nthe terms very favorable . unlike a person who is permamently located in\nhouston , i would have the inconvenience and cost of commuting between austin\nand houston , and of accomodation both in austin and houston .\ni really would love to work in the research group and am sincere about this .\ni would just hope that you would consider compensating me at manager level\nso that i can cover transportation , accomodation expenses and more\nimportantly , justify the decision to devote at least half of my time to\nenron away from my thesis .\ni will be looking forward to hearing from you soon .\nbest ,\ncantekin dincerler\ndoctoral candidate\nthe university of texas at austin\ngraduate school of business\ndepartment of finance\noffice : ( 512 ) 471 - 1676\nfax : ( 512 ) 471 - 5073\nhome : ( 512 ) 472 - 5356\ncell : ( 512 ) 680 - 5355\nhttp : / / uts . cc . utexas . edu / ~ cantekin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.142+0000", "entityId": 8647, "properties": {"text": "Subject: fw : more energy amends\nfiona ,\n?\nplease find attached a brochure for the advertisement of the book . ? it ' s\nsimilar to the other material we sent , so i ' m assuming it will need the same\nmodifications . ? please pass along all the modifications as soon as\npossible . ? receiving the changes from enron is the ? only thing holding up the\nprinting of the book . ? please let us know if there is anything that you need\nfrom us .\n?\nsincerely ,\n?\njulie\n?\nlacima group\n- lres energ der a 4 flyer 2 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.146+0000", "entityId": 8648, "properties": {"text": "Subject: re : comments\nhi vince ,\nsorry to have missed you in paris . many thanks for your comments - they ' ve\nnow been incorporated and sent to eprm . things are crazy at the moment , but\nhopefully will calm down in a couple of weeks and we ' ll have time to catch\nup better .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\nsent : sunday , october 15 , 2000 11 : 06 am\nsubject : comments\n> julie ,\n>\n> sorry for the delay . here are he comments .\n>\n> vince\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> sorry for long delay in responding . i have a few comments . most are\nfocused\n> on the third article as here is till time to make modifications .\n>\n> 1 . in the second article , i would mention that the formulation of the\nmean\n> reversion process represents one of several possible equations that\ncapture\n> the same type of market evolution of prices over time .\n> 2 . one comment that applies to both articles . the problem is how one\ndefines\n> the time series of energy prices . the numbers used for australian nsw pool\n> prices seem to correspond to chronological prices . one alternative\napproach\n> is to build different time series for the corresponding time intervals for\n> each day . this would result in different price behavior and estimates of\n> jump . the choice is one of convenience and depends on actual problem under\n> investigation . one could argue that volumes of electricity traded during\n> different time slots represent different economic commodities .\n> figure 3 a ( jump frequency ) has units on the vertical axis that require\n> explanation . are we talking about an expected number of jumps in the total\n> number of half hourly periods in a year ? the same goes for f in table 2\n> ( article number 3 ) .\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.151+0000", "entityId": 8649, "properties": {"text": "Subject: request submitted : access request for leann . walton @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000005168\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 18 / 00 2 : 06 : 37 pm\nrequested for : leann . walton @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.156+0000", "entityId": 8650, "properties": {"text": "Subject: re : prosym license\nhi karolina ,\nthe last word i got was that grant masson was still coordinating the contract\nand would be the person to talk to about getting a copy of the license . i\nchecked to see if i had an electronic copy somewhere , but couldn ' t find\nanything . i suspect my copy was paper , and it would have been returned to\ngrant when i went back to portland general electric . probably didn ' t speak\nto the situation in london , anyway , because the real interest in london\ndidn ' t arise until after i would have gotten my copy .\ngrant is transitioning to his new job with el paso in london , so if you have\ndifficulty reaching him , check with vince kaminski , or if vince is\nunavailable , shriley crenshaw . shirley may know the person in enron legal or\ncontracts admin . who worked with grant on the henwood license .\nof course , eric t . would have a copy . if you run into problems with houston ,\nhave eric send you a fax . ( the license is relatively short as contracts go . )\nhope this helps ,\nmichael\n> > > karolina potter / lon / ect @ enron 10 / 18 / 00 07 : 44 am > > >\nmichael\ntwo weeks ago i attended hesi client symposium followed by advanced prosym\ncourse in sacramento . during that time i had an opportunity to get to know\nseveral people from both henwood energy services support and development\ngroups . one of them was eric toolson - head of client support in hesi , with\nwhom i discussed some issues in regards to our liaison with london based\nsupport team . i agreed to meet up with simon crisp back in london to agree\non a form of our working relationship .\nbefore i go to the meeting i would like to find out the following :\nthe text of enron ' s prosym license\nwhat service we are entitled to based on the license\ni am not sure if you are the person to ask about the above but if you could\nhelp me by either providing the license or directing to the appropriate\nperson within enron it would be much appreciated .\nmany thanks\nkarolina", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.161+0000", "entityId": 8651, "properties": {"text": "Subject: folks ,\nattached is a conservative ( and fairly rough ) estimate of the size of the\npetrochemicals and refining market that is potentially exposed to prolonged\ndrought in southern texas which could result in extremely low riverflows and\npossible curtailed production . the total annual revenue generated by these\nassets is no less than $ 20 b and could be substantially higher as the\nestimated capacity on some of these facilties is likely understated and other\nfacilties not yet identified are likely to be vulnerable .\nnote that this data does not include any facilities in the industrial\ncomplexes from houston northward and eastward as they are much less likely to\nexperience such a drought - induced interruption . the only facilties\nidentified thus far lie on or near the following rivers : brazos , colorado ,\nnavidad , guadalupe , and nueces .\nplease let me know if you have any questions / comments as we work to determine\nwhether or not a low riverflow insurance product is viable .\nthanks ,\ncharlie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.167+0000", "entityId": 8652, "properties": {"text": "Subject: personnel announcement\njordan h . mintz has been named vice president & general counsel for enron\nglobal finance and will be leaving the enron north america tax group .\nstephen h . douglas , sr . director , will head up tax services for ena . steve\ncame to ena ' s tax planning group from the charlotte , north carolina firm\nfennebresque , clark , swindell & hay in may , 1998 . he was previously\naffiliated with the skadden , arps law firm in new york city . steve received\nhis bs degree in finance and mathematics from trinity university ( 1987 ) , his\njd from the university of texas school of law ( 1990 ) and his llm in taxation\nfrom the new york university school of law ( 1993 ) .\nplease join me in congratulating jordan and steve in their new roles .\nrobert j . hermann , managing director & general tax counsel", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.172+0000", "entityId": 8653, "properties": {"text": "Subject: re : requests for help\nthanks vince .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.178+0000", "entityId": 8654, "properties": {"text": "Subject: requests for help\nkrishna ,\ni have received two additional requests for help from ees .\n1 . jeremy blachman called and asked us to increase very significantly the\nlevel of\nour support of ees . it probably makes sense to set up a meeting with jeremy\nasap\nand discuss specifics ( you , me , and it probably makes sense to invite marty\nsunde\nas well ) .\n2 . george posey called and asked fro help with statistical sampling of dublin\ncustomers . please , give him a call to set up a meeting .\ni shall call you tomorrow to discuss both requests .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.182+0000", "entityId": 8655, "properties": {"text": "Subject: re :\nlife . . . : )\nmaybe next time .\nroman\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : rkosecki @ mieco . com\nsent : 10 / 18 / 00 1 : 14 pm\nsubject : re :\nroman ,\nsorry . i am leaving for philadelphia this evening . leaving office around\n5\np . m . let ' s get together on another occasion .\nvince\nroman kosecki on 10 / 18 / 2000 02 : 09 : 28 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re :\nhi vince ,\ni am in houston now . will have to work late . but how about\ndrinks / food\nsome time around 7 - 8 or later ? i am staying at wyndham greenplace ( ? )\nand\nwill use taxi to get around .\nthanks\nroman\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : rkosecki @ mieco . com\nsent : 10 / 13 / 00 7 : 55 am\nsubject : re :\nroman\nthanks .\nmy home number is 281 367 5377\nvince\nroman kosecki on 10 / 13 / 2000 09 : 38 : 39 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re :\ni will be in houston on wed . willl give you a call\nroman\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , october 12 , 2000 2 : 43 pm\nto : rkosecki @ mieco . com\nsubject : re :\nroman ,\ndrinks after work would be better . i am flying back from ca on tue\nmorning .\nplease , call me at 713 853 3848 or 713 410 5396 ( cell )\nin the afternoon .\nvince\nroman kosecki on 10 / 12 / 2000 12 : 21 : 50 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject :\nhi vince\ni will be in houston for a few days next week ( like mon - wed ) . if you\nare\nback from your european trips maybe we can \" do \" lunch ?\nroman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.190+0000", "entityId": 8656, "properties": {"text": "Subject: meeting with vince kaminski and stinson gibner - november\ngood morning professor ordonez :\nvince and stinson are both free at the present , on wednesday , november\n8 th from 9 : 00 - 11 : 30 am . please let me know if any time during this period\nwould work for you .\nregards ,\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.197+0000", "entityId": 8657, "properties": {"text": "Subject: thanks again\nvince ,\ni thank you again for all your help . ? i will continue to search for job\nopportunities at enron , and hopefully be able to find a match for me .\nhow is your son doing ? is he still interested in computers ? there is a\npromising future for high - tech guys .\nregards ?\ncarla di castro\nmarketing\nmfr group , inc .\none riverway , ste 1900\nhouston , tx 77056 - 1951\nphone ( 713 ) 353 - 8180\noffice ( 713 ) 622 - 1120", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.202+0000", "entityId": 8658, "properties": {"text": "Subject: ees risk management presentations for october 25 .\nplease have your presentations to me by 10 am friday , october 20 , 2000 . it\ntakes a couple of days to get the materials back from the copy center . the\npresentations have to be put in new binders this time and it takes most of a\nday to put everything together in the binders . therefore , i have to have\nthe materials to the copy center by friday afternoon in order to get them\nback by monday afternoon or tuesday morning . i will need most of tuesday to\nget everything assembled in the binders . thus the necessity of having your\ncompleted presentations by friday morning .\nvince : basket options\nbinary ( digital ) options\nkrishna : barrier options\nother complex structures\nthanks for your help on this .\nregards ,\nanita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.207+0000", "entityId": 8659, "properties": {"text": "Subject: jaesoo lew\nvince : jaesoo lew has just returned my phone call . he is interested in\nmeeting with you and your group , and would like to do so on wednesday ,\n10 / 25 / 2000 . he had already made travel arrangements to fly to a conference\nin seattle on 10 / 25 , but is willing to come here for the interviews first and\nthen travel from houston to seattle for the seminar . he did ask if we would\nbe willing to reimburse him for the additional cost of the ticket , and i told\nhim i was sure that you would consider it .\ndr . lew asked that we schedule his flight into houston for some time after\n6 : 00 pm on tuesday , 10 / 24 / 2000 . i will work on the travel arrangements\ntomorrow morning , and keep you advised .\nplease call me with any questions ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.212+0000", "entityId": 8660, "properties": {"text": "Subject: re : interview for the research group\nvince : i apologize - - i had emailed shirley to let her know that toni had\nforwarded your email to me and that i would be handling this for you , but i\ndidn ' t copy you on the email .\nplease call me with any questions ,\nmolly\nx 34804\nvince j kaminski\n10 / 18 / 2000 03 : 14 pm\nto : molly magee / hou / ect @ ect\ncc :\nsubject : interview for the research group\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 18 / 2000\n03 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n10 / 18 / 2000 12 : 58 pm\nto : toni graham / corp / enron @ enron , stephanie summers / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : interview for the research group\nhello everyone :\nvince would like to bring jaesoo lew in next week for an exploratory interview\nwith the research group . the dates that would work best for us are :\nwednesday ,\nthe 25 th ( am ) , thursday , 26 th ( am ) and friday , 27 th ( am ) . please see if mr .\nlew\nis available for any of these times .\nthanks !\nshirley\n3 - 5290\n- vitae 2 . doc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 18 / 2000\n12 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n10 / 18 / 2000 12 : 29 pm\nto : stinson gibner / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : position\nshirley ,\ni would like to invite him to an interview next week . we should use his home\nphone\nnumber and / or private e - mail address .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 18 / 2000\n12 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jaesoo lew \" on 10 / 17 / 2000 09 : 59 : 01 pm\nto : vkamins @ enron . com\ncc :\nsubject : position\ndear dr . kaminski\nmy name is jaesoo lew and i am referred by dr . wayne lee .\ncurrently i ' ve been working at aquila energy in kansas city as an pricing\nanalyst since july 2000 . since then , i have developed a natural gas storage\nvaluation model applying the swing options ( forest method ) pricing approach .\nthe price processes would be considered critical for the storage valuation\nsince a trinomial forest is required to value storage . also the c + +\nprogramming using excel dll has been developed , too .\ni attached my resume to this message for your consideration and am looking\nforward to talking about an opportunity at enron .\nmy home phone number is 913 - 649 - 0578 , dr . kaminski , i will wait your call in\nthis week as dr . lee informed me . if possible , please let me know your\nexpected calling day through the mail . i appreciate your consideration .\nthank you very much .\nsincerely ,\njaesoo lew\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- vitae 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.217+0000", "entityId": 8661, "properties": {"text": "Subject: re : message from charles shen at williams\ncharles ,\ni am coordinating an offer fro you . i shall call you with\nthe details later this week .\nvince\ncharles shen on 10 / 18 / 2000 10 : 59 : 16 am\nto : vkamins @ enron . com\ncc : vkaminski @ aol . com\nsubject : message from charles shen at williams\ndear vince :\nhow are you ?\nit was very nice talking to you last friday , i was\nvery impressed by your group , and very interested in\nthis opportunity .\nif you need any additional information , please feel\nfree to call me at 918 - 409 - 4308 , i look forward to\nhearing from you very soon . thank you .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! messenger - talk while you surf ! it ' s free .\nhttp : / / im . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.222+0000", "entityId": 8662, "properties": {"text": "Subject: re : confidential\nmolly ,\nwe are in process of setting up an interview .\nvince\nenron north america corp .\nfrom : molly magee 10 / 18 / 2000 02 : 56 pm\nto : jlew @ kent . edu\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : confidential\ndr . lew : vince kaminski has asked me to contact you in connection with your\ninterest in enron . he would like to schedule a mutually convenient time for\nyou to visit houston and meet with his group . the dates that have been\nsuggested are : wednesday , 10 / 25 / 2000 ; thursday , 10 / 26 / 2000 ; or friday ,\n10 / 27 / 2000 . i hope that one of these dates will be convenient for you to\ncome in for interviews .\nyou may either respond to me by email , or phone me at 713 853 - 4804 , whichever\nis easier for you . i am also leaving a voicemail message for you at your\nhome phone number .\nwe hope to hear from you soon .\nmolly magee\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.228+0000", "entityId": 8663, "properties": {"text": "Subject: interview for the research group\nhello everyone :\nvince would like to bring jaesoo lew in next week for an exploratory interview\nwith the research group . the dates that would work best for us are :\nwednesday ,\nthe 25 th ( am ) , thursday , 26 th ( am ) and friday , 27 th ( am ) . please see if mr .\nlew\nis available for any of these times .\nthanks !\nshirley\n3 - 5290\n- vitae 2 . doc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 18 / 2000\n12 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n10 / 18 / 2000 12 : 29 pm\nto : stinson gibner / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : position\nshirley ,\ni would like to invite him to an interview next week . we should use his home\nphone\nnumber and / or private e - mail address .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 18 / 2000\n12 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jaesoo lew \" on 10 / 17 / 2000 09 : 59 : 01 pm\nto : vkamins @ enron . com\ncc :\nsubject : position\ndear dr . kaminski\nmy name is jaesoo lew and i am referred by dr . wayne lee .\ncurrently i ' ve been working at aquila energy in kansas city as an pricing\nanalyst since july 2000 . since then , i have developed a natural gas storage\nvaluation model applying the swing options ( forest method ) pricing approach .\nthe price processes would be considered critical for the storage valuation\nsince a trinomial forest is required to value storage . also the c + +\nprogramming using excel dll has been developed , too .\ni attached my resume to this message for your consideration and am looking\nforward to talking about an opportunity at enron .\nmy home phone number is 913 - 649 - 0578 , dr . kaminski , i will wait your call in\nthis week as dr . lee informed me . if possible , please let me know your\nexpected calling day through the mail . i appreciate your consideration .\nthank you very much .\nsincerely ,\njaesoo lew\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- vitae 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.233+0000", "entityId": 8664, "properties": {"text": "Subject: position\nshirley ,\ni would like to invite him to an interview next week . we should use his home\nphone\nnumber and / or private e - mail address .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 18 / 2000\n12 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jaesoo lew \" on 10 / 17 / 2000 09 : 59 : 01 pm\nto : vkamins @ enron . com\ncc :\nsubject : position\ndear dr . kaminski\nmy name is jaesoo lew and i am referred by dr . wayne lee .\ncurrently i ' ve been working at aquila energy in kansas city as an pricing\nanalyst since july 2000 . since then , i have developed a natural gas storage\nvaluation model applying the swing options ( forest method ) pricing approach .\nthe price processes would be considered critical for the storage valuation\nsince a trinomial forest is required to value storage . also the c + +\nprogramming using excel dll has been developed , too .\ni attached my resume to this message for your consideration and am looking\nforward to talking about an opportunity at enron .\nmy home phone number is 913 - 649 - 0578 , dr . kaminski , i will wait your call in\nthis week as dr . lee informed me . if possible , please let me know your\nexpected calling day through the mail . i appreciate your consideration .\nthank you very much .\nsincerely ,\njaesoo lew\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- vitae 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.238+0000", "entityId": 8665, "properties": {"text": "Subject: re : good morning\njohn ,\ni shall see christie tomorrow and i shall talk to her about\nthe project .\nfriday , feb 23 works for me .\nvince\n\" john d . martin \" on 10 / 18 / 2000 10 : 00 : 57 am\nto : vkamins @ enron . com\ncc :\nsubject : good morning\nvince ,\njust an update for you and a question . first , i have talked to christie\nand corresponded via e - mail . we don ' t have dates to talk to lay , skilling\nand fastow as yet but christie is working on it . i will prompt her again\nnext week .\nthe second item of business is a question . i want to see if we can move\nour meeting in spring ( business education and the new economy workshop )\nback a week to friday february 23 rd . one of the attendees has a conference\nhe wants to attend on march 2 nd . let me know asap if the 23 rd works for\nyou . i have committments from a number of folks for the workshop and i\nthink it will be great fun and a wonderful learning experience for us all .\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.243+0000", "entityId": 8666, "properties": {"text": "Subject: re : power conference\nsevil ,\nno problem .\nvince\nsevil yaman @ enron\n10 / 18 / 2000 10 : 42 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : power conference\nvince ,\nplease check the university of california energy institute web site (\nhttp : / / www . ucei . berkeley . edu / ucei / ) . you may already be aware of it but if\nyou are not , there are lots of paper that i am using as a reference and that\nyou might be interested in reading them . also , every year they are holding a\none day power conference in uc berkeley . i ' d like to attend the one in march\nof 2001 . is that fine ?\nsevil ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.247+0000", "entityId": 8667, "properties": {"text": "Subject: message from s . leppard\nhello vince ,\nsteve leppard sends his apologies as he will be unable to call into the\nproject update meeting today . steve will be at the enron direct office in\noxford today and tomorrow and said he will send you the summary spreadsheet\nat the end of this week .\nregards ,\nmary ward\ntel : + 44 ( 0 ) 20 778 34346\nfax : + 44 ( 0 ) 20 778 39062\nenroncredit . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.252+0000", "entityId": 8668, "properties": {"text": "Subject: energy book\nfiona ,\n?\nthanks for your message and the update . ? we haven ' t made any changes . ? i was\nreferring to the enron changes , and the electronic brochure i sent to you\nyesterday . ? in total , we have the following pieces which list the enron name :\n?\n- ? book cover\n- ? bios which are on the cover and in the \" preface \" section of the book\n- ? chapter 3 which was written by vince kaminski ' s group\n- ? electronic brochure\n?\nthe first 3 pieces are the most important since they have to do with the\nprinting of the book . ? if you could ? get the modifications to us by thursday ,\nthat would be great . ?\n?\nthanks , and look forward to hearing from you .\n?\njulie\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.257+0000", "entityId": 8669, "properties": {"text": "Subject: re : seismic data via satellite\nbob ,\ni ' ve just now had time to add some comments to your summary . my comments\nare in the attachment which encorporates your work .\ngreg\nbob lee @ enron\n16 / 10 / 2000 14 . 47\nto : gregory p smith / hou / ect @ ect , richard reichardt / enron communications @ enron\ncommunications , vince j kaminski / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : seismic data via satellite\ni have attached a background piece to brief oil traders on this subject prior\nto a possible meeting with them .\nplease give me any comments on 1 ) accuracy 2 ) completeness and 3 ) coverage\nof the areas we want to explore .\nas a side note , i found some info on the web stating current proven oil\nreserves are 1 , 000 billion bbls . discovery of a 1 billion bbl field would\nadd only 0 . 1 % . while we will pursue the trading advantage option , it is not\nlooking promising that it has great short term value , given the long time\nframe and high cost of bringing deep water reserves to market .\nbob lee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.261+0000", "entityId": 8670, "properties": {"text": "Subject: files in houston\nhi ,\ni am trying to retrieve some analysis that i did while i was in houston . it\nis very imporatant that i get these files asap as i need to continue the\ncorrelation analysis for the uk power / gas desk . i have put in a request to\nthe resolution center in houston to try and get a back up but\nwould like to know if anyone has any further suggestions ? i was not told that\nthe files in this folder were periodically deleted .\ni think tanya should have a copy of these files but do not know where she is\nlikely to store them .\nthanks in advance ,\nkirstee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.265+0000", "entityId": 8671, "properties": {"text": "Subject: credit model\npaulo ,\ni have talked to vince and stinson about the credit model enhancement and\nextension .\nwe will pull other reseource for the potential exposure model , so you will be\nrelieved from this more\nchallenging part of the project .\ndue to our limited manpower , everyone is overloaded with multiple tasks . so\nwe still think you\nare the best person for the short term project which is adding the asian\noption to the existing model ( ask\namitava for help if needed ) .\ni do not mind if you want to re - negotiate with the customer about the\ndelivery date , but keep in mind that ees\nhas done deals requiring the asian option valuation in the credit model .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.270+0000", "entityId": 8672, "properties": {"text": "Subject: re : option pricing challenge\nzimin ,\nto generalize your initial comment , for any process ds = mu ( s , t ) * s * dt +\nsigma ( s , t ) * s * dz ,\nthe delta - hedging argument leads to the black - scholes pde .\nthis is true for any arbitrary functions mu and sigma , and so includes gbm ,\nmean reversion , and others .\nthere is no problem with this , because in the risk - neutral world , which is\nwhat you enter if you can hedge ,\nthe drift of the \" actual \" process is irrelevant .\ni believe your concern is that you would like to see a different option price\nfor mean reversion process . this can only happen if the asset is not\nhedgeable , and so the actual dynamics then need to be factored into the\noption pricing . if you assume that the underlying is a non - traded factor ,\nthen the pde will have to reflect the market price of risk , and the drift of\nthe actual process is then reflected in the pde .\nvasant\nzimin lu\n10 / 17 / 2000 05 : 20 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , tanya\ntamarchenko / hou / ect @ ect\ncc :\nsubject : option pricing challenge\ndear all ,\ni have a fundamental question back in my mind since 95 . hope you can give\nme a convincing answer .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nin deriving bs differential equation , we assume the underlying follows gbm\nds = mu * s * dt + sigma * s * dz\nwhere mu is the drift , sigma is the volatility , both can be a function of s .\nthen we use delta hedging argument , we obtain the bs differential equation\nfor the option price , regardless\nof mu .\nwith the bs pde and boundary condition , we can derive bs formula . fine . no\nproblem .\nquestion comes here . suppose the underlying is traded security and follows ,\nsay , mean - reverting process\nds = beta ( alpha - s ) dt + sigma * s * dz\napparantly , this sde leads to a different probability distribution . however ,\nusing the delta hedging argument ,\nwe still get the same bs differential equation , with the same boumdary\ncondition , we get the same bs formula .\nnot fair !\nfrom another angle , i can derive the distribution from the bs pde for the\nunderlying , which is the lognormal distribution .\nmy thinking is : can i drive the distribution for any sde from the option pde\n? the answer should be yes , but got to be\nfrom a different pde rather than bs pde . then what we do about the\ndelta - hedging argument ?\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.275+0000", "entityId": 8673, "properties": {"text": "Subject: ameriflash newsletter\nnote from mark frevert\nwith the wide and varied activities of our three organizations , we created\nthis e - mail newsletter to keep everyone better informed about our various\nbusinesses . i hope you find it informative and more importantly , that you\nwill use this newsletter to help spread the word about the successes in your\ngroup .\nto provide content for future e - mails , contact michelle vitrella in our\npublic relations group via e - mail or call her at ext . 3 - 9767 . communication\nis one of the core enron values and i believe this is a great way to improve\ncommunication across our wholesale businesses .\nadditionally , i would like to again encourage everyone to take a few minutes\nto complete \u0001 & the pulse \u0001 8 survey . this annual survey regarding the work\nexperience at enron and how we can make it better is an important part of the\ntwo - way communication process at enron . please go to the enron intranet and\ntype survey . enron . com . it only takes a few minutes , it \u0001 , s confidential and\nyour comments will help make enron a better place to work .\nbusiness highlights\nnatural gas\nmiddle marketing \u0001 , s biggest trade of the year so far occurred this month . the\nsignificant transaction was a five year , multimillion dollar restructuring\nwith a subsidiary of formosa plastics , one of the world \u0001 , s largest producers\nof polyvinyl chloride .\nadditionally , continental airlines , the fifth largest us carrier , has hedged\na considerable amount ( 1 . 2 million barrels / month ) of crude oil . winter\nnymex hedges were put in place for the undisputed heavyweight chip champ of\nthe world , frito lay .\npulp & paper\nwith the acquisition of garden state paper and launch of clickpaper . com ,\nenron is creating an efficient spot physical market for pulp and paper\ncommodities . buyers and sellers will benefit from improved price\ntransparency and reliability and access to enron \u0001 , s online financial markets .\nimproved price transparency and the ability to imbed financial derivatives\ninto physical trading flows will facilitate the growth of enron \u0001 , s trading\nbusiness . to date , clickpaper . com has traded over 1 millions tons of pulp\nand paper product with a notional value of over $ 675 million .\nupstream origination\nupstream origination , headed by julie gomez and jean mrha , focuses on natural\ngas products to optimize commercial value associated with the natural gas\ngrid on the continent and in the gulf of mexico ( gom ) . through products such\nas storage , electric compression and producer services & outsourcing , ena\ncreates value for its customers and reconfigures the natural gas\ninfrastructure to be more efficient . in addition , upstream origination\ntransactions exploit the unique relationship between development of strategic\nassets through sophisticated financing structures and the utilization of the\nmarket information created by those assets .\n\u0001 & the pulse \u0001 8 survey results\nas of wednesday , october 18 , the total responses to \u0001 & the pulse \u0001 8 from\nena / egm / eim are 689 . this is approximately 30 % of all employees . since our\ngoal is a 100 % response rate , we have a long way to go ! please take a few\nminutes to log on and give enron your thoughts . the pulse is located at\nsurvey . enron . com on the enron intranet page .\nif you like competition , here are the results by group :\ncommercial - origination 131\nenergy operations 126\nrisk management and trading 106\nother / none of the above 91\nbus . analysis & rep . / fin . ops . 90\nlegal 46\ngas assets 37\nhuman resources 30\ntax 18\ntechnology / it 14\nwelcome\ntransferred into ena / eim / egm\nena - kathleen neal / hr , suzanne kelly / infocentral , tobias monk / finance direct\neim - eric connor / industrial energy group\negm - eric calub / global product mgmt\nnew hires ena / eim / egm\nena - lance cunningham / cts research , anita dupont / cts research , yvette\nhales / gas logistics \u0001 ) east , angela howell / equity trading , farid mithani / power\nrisk - credit\negm - heather purcell / enron global markets\nin the news\n\u0001 & no company illustrates the transformative power of innovation more\ndramatically than enron . over the past decade enron \u0001 , s commitment to the\ninvention \u0001 * and later domination \u0001 * of new business categories has taken it from a\n$ 200 million old - economy pipeline operator to a $ 40 billion new - economy\ntrading powerhouse . \u0001 8\nfrom \u0001 & the world \u0001 , s most admired companies , \u0001 8 fortune , monday , october 2\nnuggets & notes\n\u0001 & what \u0001 , s the message we \u0001 , re trying to get across ? \u0001 8 \u0001 ) ray bowen , coo eim\n\u0001 & i \u0001 , m not a micro - manager \u0001 8 - john lavorato , coo ena\n\u0001 & make it so , number one \u0001 8 \u0001 ) jeff shankman , coo egm\ncontest\nenron is \u0001 & the most innovative company \u0001 8 based on fortune magazine \u0001 , s most\nadmired survey . ena public relations is ready to put enron north america ,\nindustrial markets and global markets to the test . we need your creative\nminds to help name the new electronic newsletter we now call ameriflash . put\non your thinking caps and submit your ideas for a new name to\nmichelle . vitrella @ enron . com . the ena public relations team will narrow the\nlist to the top ten and then send it to our official judge , mark frevert , to\nmake the final decision . the winner will receive a gift certificate to any\npappas restaurant . good luck !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.279+0000", "entityId": 8674, "properties": {"text": "Subject: organizational changes\nchanges in enron ' s business require us to reevaluate how we approach the\nengineering and construction function within enron . specifically , enron\nenergy services ' ( ees ) business has grown dramatically and that requires\nconsiderable additional engineering and construction resources both to\ndevelop solutions for customers and to deliver those solutions to customers .\nadditionally , in light of enron ' s continued emphasis on increasing our return\non invested capital , we have been engaged in fewer large scale construction\nprojects around the world . historically , these projects have been a primary\nfocus of eecc ' s activities . consequently we are making the following\norganizational changes concerning eecc :\neecc ' s pipeline construction group , led by jerry martin , will become part of\nenron transportation services .\nnepco will continue to operate as a stand alone entity focused on power plant\nconstruction services to enron entities and third parties .\nthe remainder of eecc will become part of ees . larry izzo will report to the\nees office of the chairman .\nthese changes will better align our intellectual capital with the growth\nopportunities within enron and provide new and exciting opportunities for our\nemployees . please join us in supporting and implementing these changes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.284+0000", "entityId": 8675, "properties": {"text": "Subject: power 2000 / eprm 2001\nas a speaker at eprm ' s highly successful power 2000 event in houston , i am\nwriting to inform you of our 2001 annual congress and to introduce myself . i\nwill be responsible for the production of all north american eprm events\nhaving moved from our banking conference and training course division in\njuly . just to update you on the whereabouts of the eprm team , emma wolfin is\ndeveloping our technology events for waters conferences and joel hanley will\nbe starting his new role as an eprm journalist from november lst .\neprm 2001 will be held in houston on the 14 th , 15 th & 16 th of may and i am\nkeen to start the initial research as soon as possible . i intend to call\neach power 2000 speaker within the next two weeks . initially , i would like\nto provide you with advanced notice of the event and wish to clarify some\nissues .\nwhat current industry developments merit streams or pre / post conference\nseminars at eprm 2001 ?\nwhat research are you or your company involved in that would justify\ninclusion in eprm 2001 ?\naside from your own work , what subjects are currently at the cutting - edge of\nenergy risk management ?\nwho else would you recommend as a potential speaker ? ( regulatory bodies ,\nacademics , practitioners )\nany assistance at this initial stage of research is appreciated . you can\nemail me or call on + 44 20 7484 9883 . i look forward to working with you on\nthis event .\npaul bristow\nsenior conference producer , eprm conferences", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.292+0000", "entityId": 8676, "properties": {"text": "Subject: cal berkeley\nvince and john ,\ni wanted to send you a quick note and once again say thank you for attending\nthe cal berkeley presentation last week . i am sorry for the low attendance\non campus , however i did want to send some refreshing news . i just received\nthe resumes of students who would like to interview with enron . there were\n43 resumes submitted for the technologist position and 46 resumes submitted\nfor the analyst position .\nplease let me know if you have any questions .\nthanks ,\nashley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.299+0000", "entityId": 8677, "properties": {"text": "Subject: re : good morning\nthat ' s great .\njohn\np . s . bob parrino told me you were at ut last week . we academics really\nappreciate your willingness to share your experiences with us and our\nstudents .\nat 11 : 40 am 10 / 18 / 00 - 0500 , you wrote :\n>\n> john ,\n>\n> i shall see christie tomorrow and i shall talk to her about\n> the project .\n>\n> friday , feb 23 works for me .\n>\n> vince\n>\n>\n>\n>\n>\n> \" john d . martin \" on 10 / 18 / 2000 10 : 00 : 57 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : good morning\n>\n>\n> vince ,\n>\n> just an update for you and a question . first , i have talked to christie\n> and corresponded via e - mail . we don ' t have dates to talk to lay , skilling\n> and fastow as yet but christie is working on it . i will prompt her again\n> next week .\n>\n> the second item of business is a question . i want to see if we can move\n> our meeting in spring ( business education and the new economy workshop )\n> back a week to friday february 23 rd . one of the attendees has a conference\n> he wants to attend on march 2 nd . let me know asap if the 23 rd works for\n> you . i have committments from a number of folks for the workshop and i\n> think it will be great fun and a wonderful learning experience for us all .\n>\n> john\n>\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.304+0000", "entityId": 8678, "properties": {"text": "Subject: re : cover design / copy for energy derivatives publication\nfiona ,\nto answer your questions :\n1 . we approved chapter 3 for publication .\n2 . my current affiliation is enron n . a . grant left the company but my advice\nit to leave his bio as is ( it reflects his employment status when he was\nworking on the chapter ) .\ni don ' t think we should update the bio and advertise his new employer .\n3 . ad material is fine .\nvinnce", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.308+0000", "entityId": 8679, "properties": {"text": "Subject: book\nvince ,\n?\ni have made contact with fiona grant , director public relations and\ncommunications enron europe limited , and she mentioned that there are some\nchanges to your bios , which are located both on the cover and in the\npreliminary section in \" about the authors \" . ? we would appreciate it if you\ncould help in ? collecting or passing along these edits ? since these ? are ? the\nonly items delaying the printing of the book . ?\nthanks vince .\n?\nregards ,\njulie\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.313+0000", "entityId": 8680, "properties": {"text": "Subject: re : re : software license\nstinson ,\ni ' m not sure who was going to handle this project - tom moore or laine\nborgman . so , by this e - mail , i will ask the appropriate person to respond to\nyou . i have also given tom ' s name and e - mail address to ms . geman .\nthey will just need to change in article 17 of the software license agreement\nthe response time from 2 to 3 days and the software license part should be\ndone . the only thing that would leave then is ms . geman ' s response regarding\nthe escrow agreement as to whether it was agreeable to her and her law firm\n( who would be holding the source code in escrow ) . i ' m not sure whether ms .\ngeman has responded to tom about that or not . i have sent electronic copies\nof all of the documents to both tom and laine to finalize once ms . geman\nresponded .\ntom can be reached at : x 55552\nlaine can be reached at : x 56470\nthanks ,\nkarla\nstinson gibner @ ect\n10 / 20 / 00 01 : 39 pm\nto : karla feldman / enron communications @ enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : re : software license\nkarla ,\nsorry for the delay . i have been out for the last three weeks . vince\ntells me that he has talked to ms . geman and they agreed on a time of 3\nbusiness days for a response time .\nis there someone else now handling this project ?\nthanks ,\nstinson\nfrom : karla feldman on 09 / 27 / 2000 04 : 24 pm\nto : gemanix @ aol . com @ enron\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : re : software license\nms . geman ,\ni apologize for the delay , but i finally have drafted an escrow agreement for\nplacing the software in escrow with your attorneys . please review and have\nyour attorneys review and let me know if it is acceptable .\ni will be leaving the department i have been working in and moving to a\ndifferent enron subsidiary on october 13 . if at all possible , could we try\nto get the software license agreement and the escrow agreement wrapped up\nbefore i leave so that someone else does not have to try to pick up where i\nleft off ?\ni think we are just about in agreement on the software license portion .\nseems like the only outstanding question had to do with your concern\nregarding providing a response time of 2 business days . i do not have any\nanswers regarding that - maybe vince kaminski or stinson gibner can respond\non this issue .\ni look forward to hearing from you and trying to get this finalized within\nthe next 2 weeks if possible .\nthank you ,\nkarla feldman\nenron corp .\n( 713 ) 646 - 7554", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.318+0000", "entityId": 8681, "properties": {"text": "Subject: meeting to discuss research support to ees\nsharon / carol :\njeremy blachman called vince kaminski and requested a meeting to\ndiscuss additional research support for ees , as soon as possible . the\nparticipants in this meeting would be :\njeremy blachman\nmarty sunde\nvince kaminski\nkrishna krishnarao\nthe soonest vince and krishna are available would be thursday ,\noctober 26 at the following times :\n9 : 00 - 10 : 00 am\n1 : 00 - 3 : 00 pm\nand friday , october 27 th :\n8 : 30 - 10 : 30 am\n1 : 00 - 2 : 30 pm\nplease let me know what time would be best for marty and jeremy .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.323+0000", "entityId": 8682, "properties": {"text": "Subject: enron ' s new weather system , courtesy the research dept .\nv\nlast night , i tested our new system for real - time surveillance and messaging\nof the weather , and it delivers the data to desktops throughout the building\nmore than 6 1 / 2 minutes before the national weather service updates their\nwebpages . our current technology was web - scraping these pages via ftp , then\nparsing into a database . the impact of these 6 1 / 2 minutes for the hourly\npower traders is enormous - the weather stations upload their data around 53\nminutes after the hour , and we can now receive them within 2 minutes later .\nwe can now re - estimate our nonlinear stack model before the top of the hour ,\nwhen hourly power trading begins . otherwise , we would not have model results\nuntil around 15 minutes after the hour . notably , hourly power trading is , for\nall intents and purposes , concluded by then ( they trade for 10 - 15 minutes and\nmanage the scheduling for the next 30 or so miutes ) . so , effectively , we may\nnow be one * hour * ahead of where we were just a few days ago , in terms of\ninformation . people are very excited up here , from the cto on down - thanks\nfor letting it happen .\nc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.328+0000", "entityId": 8683, "properties": {"text": "Subject: transport model\nandy ,\nthe scale effect in the transport model can be explained .\ni use a european option to do the illustration .\ni raise the underlying and strike price by the same amount , use the fuel\npercentage to adjust the strike .\nthe net result is the intrinsic value decreases as the level goes up .\nif the fuel percentage is not very high , the option premium actually\nincreases with the level , although the\nintrinsic value decreases .\nif the fuel percentage is very high ( > 8 % ) , then we see a decreasing option\nprice .\nin the transport deal , fuel change is often below 5 % , so you will not see a\ndecreasing spread option price\nwhen nymex moves up . so i think the transport model still does what it\nshould do .\nzimin\nin the following exmaple , i used r = 6 % , vol = 20 % , t = 100 days , see spreadsheet\nfor details .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 10 / 20 / 2000 01 : 24 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n10 / 20 / 2000 10 : 45 am\nto : andrew h lewis / hou / ect @ ect\ncc : colleen sullivan / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : level effect in transport\nandy ,\nthe following spread sheet domenstrates the leve effect in transport\nvaluation .\ni add an \" nymex add - on \" to both delivery and receipt price curve before fuel\nadjustment , keep everything else the same . the transport value ( pv of the\nspread options )\nincreases when nymex add - on increases .\ni can visit you at your desk if you have further question .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.332+0000", "entityId": 8684, "properties": {"text": "Subject: interview schedule for aram sogomonian\nplease find the interview packet for the above - referenced person . the\ninterview will occur on wednesday october 25 , 2000 . please print both\ndocuments for your reference . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me . resume will be delivered via\nrunner .\nstephanie\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.336+0000", "entityId": 8685, "properties": {"text": "Subject: confirmation : arthur andersen 21 st annual energy symposium\nthank you for your event rsvp . we hope that the process was quick and simple .\nfor any further questions , please contact the event coordinator .\nyour confirmation number is : 49297\nyou are registered for : arthur andersen 21 st annual energy symposium\nevent date : tuesday , november 28 , 2000 7 : 00 : 00 am\nwestin galleria hotel\n5060 west alabama\nhouston , texas 77056\nfee information\nif you register on or before october 31 , the registration fee is $ 950 . 00 .\nafter that date , the registration fee is $ 1 , 200 . 00 . , $ 950 . 00\ntotal amount : $ 950 . 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.341+0000", "entityId": 8686, "properties": {"text": "Subject: enron year end 2000 performance management process\nenron ' s year - end 2000 performance management process opens on :\nwednesday , october 25 th .\nduring this process , you will be able to suggest reviewers who can provide\nfeedback on your performance . in addition , you may be requested to provide\nfeedback on fellow employees . to participate in the feedback process , access\nthe performance management system ( pep ) at http : / / pep . corp . enron . com . your\nuserid and password are provided below .\nthe system will be open for feedback from october 25 th - november 17 th , and\nhelp desk representatives will be available to answer questions throughout\nthe process . you may contact the help desk at :\nhouston : 1 - 713 - 853 - 4777 , option 4\nlondon : 44 - 207 - 783 - 4040 , option 4\ne - mail : perfmgmt @ enron . com\nduring the year - end prc process , employee profiles will be made available at\nmeetings . if you haven ' t already done so , we encourage you to update your\npersonal information and current responsibilities before the meeting process\nbegins on november 20 th . please access ehronline at\nhttp : / / ehronline . enron . com ( london users please go to http : / / home . enron . co . uk\n, click on quick links , and choose hr online ) .\nyour user id & password are :\nuser id : 90012910\npassword : welcome", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.345+0000", "entityId": 8687, "properties": {"text": "Subject: exotica ( yet again )\nhi guys\ni need some advice .\nsharad is in the process of finding differences between your and our versions\nof exotica . at some point we will need to migrate london office over to your\nmore up - to - date version , and i ' m concerned that there may be rac - style\nimplications . i ' m in favour of using the it testers to carry out formal\nregression testing , and they are apparently able to do this .\ndo we need to get our heads together to \" form a view \" before we involve rac\nor the business groups ?\nanjam tells sharad that london exotica was built using excel 95 , and that\nneither he nor zimin knows how to build / compile the xla using later versions\nof excel . is this true ? if so , then we need to migrate to xlls sooner\nrather than later because of the maintenance implications .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.350+0000", "entityId": 8688, "properties": {"text": "Subject: fwd : fw : will you be the difference ?\nfyi\njana\nreturn - path :\nreceived : from rly - yhol . mx . aol . com ( rly - yhol . mail . aol . com [ 172 . 18 . 147 . 33 ] )\nby air - yhol . mail . aol . com ( v 76 _ rl . 8 ) with esmtp ; wed , 18 oct 2000 18 : 57 : 48\n- 0400\nreceived : from texasmonthly . emmis . com ( texasmonthly . emmis . com\n[ 208 . 139 . 95 . 3 ] ) by rly - yhol . mx . aol . com ( v 76 _ rl . 19 ) with esmtp ; wed , 18 oct\n2000 18 : 56 : 49 - 0400\nsubject : fw : will you be the difference ?\nto : alexana @ wellsfargo . com , jlpnymex @ aol . com , kingair 500 @ aol . com ,\nmdesanto @ minddata . com , kwgre @ aol . com , pmarb @ yahoo . com\nx - mailer : lotus notes release 5 . 0 . 3 march 21 , 2000\nmessage - id :\nfrom : nalexander @ texasmonthly . emmis . com\ndate : wed , 18 oct 2000 18 : 15 : 34 - 0500\nx - mimetrack : serialize by router on tmnto 2 / aus / txmo ( release 5 . 0 . 4 a | july 24 ,\n2000 ) at 10 / 18 / 2000 05 : 54 : 02 pm\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\ntexas monthly : if you want to be big in texas .\nnancy alexander\naccount executive\n214 . 871 . 7704\n- - - - - forwarded by nancy alexander / aus / txmo on 10 / 18 / 00 06 : 14 pm - - - - -\nkaren burke\nto : sloansimmo @ yahoo . com ,\nccgarcia @ prodigy . net , cbsbcol @ aol . com ,\n10 / 18 / 00 sschrump @ ziplink . net , \" hosty , maria \"\n,\n02 : 10 pm yvonne anguiano\n,\ntanya . davis @ us . pwcglobal . com ,\n2 onza @ pdq . net , \" lisa elledge \"\n,\nproyecto 4 @ yahoo . com , \" hughes , jennifer \"\n, anita\nzmolek / aus / txmo @ txmo , nancy\nalexander / aus / txmo @ txmo\ncc :\nsubject : fw : will you be the\ndifference ?\ntexas monthly : if you want to be big in texas .\nkaren burke\n713 . 871 . 1643 phone\n713 . 871 . 0335 fax\n- - - - - forwarded by karen burke / aus / txmo on 10 / 18 / 2000 02 : 08 pm - - - - -\njacquelyne\no ' keefe to : bassw @ swbell . net , karen\nburke / aus / txmo @ txmo , elizabeth\nwallace fulghum / aus / txmo @ txmo , lanette\nvarnadoe / aus / txmo @ txmo ,\nsimmonds @ pdq . net\n10 / 18 / 2000 cc :\n11 : 15 am subject : fw : will you be the\ndifference ?\ntexas monthly : if you want to be big in texas .\njackie o ' keefe wallace\nretail advertising director\nphone 713 . 871 . 1762\nfax 713 . 871 . 0335\n- - - - - forwarded by jacquelyne o ' keefe wallace / aus / txmo on 10 / 18 / 00 11 : 14 am\n- - - - -\n\" karen\nthompson \" to : \" tim marron \"\n, \" suzanne waller \"\n, \" shelley smelley\nmarron \" ,\n. net > \" pammy poindexter \"\n, \" molly vaughan \"\n, \" melissa\ngarlington \"\n10 / 17 / 00\n, \" mary marron \"\n09 : 07 pm ,\n\" margie \\ \" aunt boggie \\ \" marron \"\n, \" liz rotan \"\n, \" julia \"\n, \" joanie seay \"\n, \" jenny clark\nbrown \" ,\n\" jackie wallace \"\n,\n\" gmommy clark \"\n, \" george kkempl 65 @ aol . com\n; jflesher @ kprc . com ;\nakdwyer @ yahoo . com\n; cara _ clement @ yahoo . com ;\nmerrie @ mail . evl . net ; krichardson @ texasnf . org\n; kprice @ texasnf . org ;\nddeleon @ texasnf . org ; rfreeman @ texasnf . org\n; dbadura @ texasnf . org ; karen\nthompson ; cmlucas @ swbell . net ;\nannie 319 @ aol . com ; bmratch @ yahoo . com ;\nsarah @ thedykes . com ; laura @ thebairds . com\n; mtucker @ datamate . com ;\ncolecaroline @ hotmail . com ;\nmark . m . meador @ us . arthurandersen . com ;\nrobert muse ; dmoriniere @ swbank . tx . com\n; joanna latham ; merritt\npappas ; chip rives ; reagan rives\n; angela hilary and corey pond\n;\njeffrey smith ; kent winfield\ndate : tuesday , october 17 , 2000 3 : 37 pm\nsubject : fw : will you be the difference ?\n>\n>\n> - - - - - original message - - - - -\n> from : jennifer . p . toomey @ us . arthurandersen . com\n> sent : tuesday , october 17 , 2000 3 : 53 pm\n> to : aford @ bpl . com ; birdsbecca @ aol . com ; bwilliamsl 236 @ austin . rr . com ;\n> ckmattingly @ hotmail . com ; cshirley @ ccj - law . com ; cwilliams @ texasnf . org ;\n> ewells @ nrsc . org ; jill . goldstein @ mbao 2 . bus . utexas . edu ; halejulie @ yahoo . com ;\n> hollyk 8 @ aol . com ; lsm 34 @ columbia . edu ; mtucker @ dpj . com ; sew 7 @ flash . net ;\n> elizabeth . reid @ turner . com ; rskappraiser @ email . msn . com ; tehunt @ aol . com ;\n> wdtiidd @ aol . com\n> subject : fw : will you be the difference ?\n>\n>\n>\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by jennifer p . toomey on 10 / 17 / 2000 03 : 55\n> pm\n> - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> to : brian _ seiler @ aimfunds . com , fritz _ weiss @ aimfunds . com ,\n> jean _ miller @ aimfunds . com , charles _ hebert @ aimfunds . com ,\n> sue _ hendrickson @ aimfunds . com , ralph _ terry @ aimfunds . com ,\n> gormanab @ mindspring . com , alysonfisher @ yahoo . com , amandam @ microsoft . com ,\n> adjohnso @ students . uiuc . edu , knocks @ ecsis . net , cbidding @ post . cis . smu . edu ,\n> mpblalock @ aol . com , gmbl @ compassbnk . com , bcahal @ acxiom . com , carle @ wt . net ,\n> cmiller @ rice . edu , connelly . mcgreevy @ gs . com , gnconnelly @ aol . com ,\n> dawn . beach @ bowne . com , aimeedodson @ aol . com , ddominic @ temmc . com ,\n> heather . k . doyle @ ac . com , aeasterby @ lrmm . com , ferikson @ mdanderson . org ,\n> rtfass @ fcflaw . com , fguinn @ flash . net , tina . hoffman @ petrocosm . com ,\n> rhurt @ lctn . com , wingram @ ddsep . com , jrcoastal @ aol . com , jennyv @ dpwpr . com ,\n> jbandctaylor @ mindspring . com , keasterby @ aglife . com , jkiani @ coair . com ,\n> kianim @ epenergy . com , kristen . kors @ weil . com , brittonk @ perryhomes . net ,\n> katek @ . com , clipscomb @ kma . com ,\n> kaymassmanlobb @ yahoo . com , mm 52 @ lucent . com , cjmandola @ aol . com ,\n> mikebid @ earthlink . net , nataliebiddinger @ yahoo . com , steven . w . murray @ ac . com ,\n> jpecher @ ect . enron . com , receskim @ perryhomes . net , jennifer p . toomey ,\n> cvanos @ texas . net , jennyv @ dpwpr . com , kwehner @ brobeck . com ,\n> elizabeth @ keen . com , david . d . wolf @ chase . com\n> cc :\n> date : 10 / 16 / 2000 09 : 00 am\n> from : jackie _ mcgreevy @ aimfunds . com\n> subject : fw : will you be the difference ?\n>\n>\n>\n>\n>\n> > the year is 1960 .\n> >\n> > jfk wins the election because he receives\n> >\n> > 1 more vote per precinct in illinois ( 8 , 858 votes )\n> > 3 more votes per precinct in missouri ( 9 , 880 votes )\n> > 3 more votes per precinct in new jersey ( 22 , 091 votes )\n> >\n> > without those 40 , 829 votes , the election goes to nixon .\n> >\n> > your vote does matter .\n> >\n> > experts say this will be the closest election since 1960 .\n> > we agree .\n> >\n> > what can you do about it ? join the bush e - train !\n> > ( 1 ) forward this e - mail to your friends and colleagues\n> > ( 2 ) then click on the link below and enter your e - mail :\n> > http : / / www . georgewbush . com / bn . asp ? pagemode = frontpagesignup\n> >\n> > our goal :\n> > 2 , 000 , 000 e - mail addresses to spread the word\n> > and get out the vote .\n> >\n> > be a part of history , get on the bush e - train and join\n> > what will become one of the largest grassroots\n> > movements ever .\n> >\n> > make the difference ! and receive the e - mail on\n> > nov . 8 that says , \" president - elect george w . bush\n> > thanks you . \"\n> >\n> >\n> > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> >\n> > paid for by bush - cheney 2000 , inc .\n> > http : / / www . georgewbush . com\n> >\n> >\n>\n=\n> = =\n> >\n> > to unsubscribe , please go here :\n> > http : / / www . georgewbush . com / unsubscribe . asp ? email = yolaa @ earthlink . net\n> >\n> > to change your e - mail address or any other subscription information ,\n> please go here :\n> > http : / / www . georgewbush . com / mygeorgew . asp\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>\n>\n>\n> * * * * * * * * * * * * * * * * * * * internet email confidentiality\nfooter * * * * * * * * * * * * * * * * * * *\n>\n> privileged / confidential information may be contained in this message . if\n> you\n> are not the addressee indicated in this message ( or responsible for\ndelivery\n> of\n> the message to such person ) , you may not copy or deliver this message to\n> anyone .\n> in such case , you should destroy this message and kindly notify the sender\n> by\n> reply email . please advise immediately if you or your employer do not\n> consent to\n> internet email for messages of this kind . opinions , conclusions and other\n> information in this message that do not relate to the official business of\n> my\n> firm shall be understood as neither given nor endorsed by it .\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.354+0000", "entityId": 8689, "properties": {"text": "Subject: re : interview with the enron research group - reply - reply\nmark :\ngood to hear from you ! i think it is a good idea for you to talk to maureen\nraymond - castaneda , enron ' s chief economist or dr . vince kaminski ,\nmanaging director and head of research . unfortunately both are out\nof the office at present . maureen will return on monday , the 23 rd and\nvince will return on wednesday , the 25 th .\nif you will be available for a telephone call on wednesday , the 25 th ,\nplease let me know when and the telephone number and i will arrange\nthe telephone interview .\nregards ,\nshirley crenshaw\n713 - 853 - 5290\nmark . giancola @ do . treas . gov on 10 / 20 / 2000 01 : 57 : 40 pm\nto : mark . giancola @ do . treas . gov , shirley . crenshaw @ enron . com\ncc :\nsubject : re : interview with the enron research group - reply - reply\ndate : 10 / 20 / 2000 02 : 54 pm ( friday )\nfrom : mark giancola\nto : ex . mail ( \" shirley . crenshaw @ enron . com \" , \" mark . giancola \" )\nsubject : re : interview with the enron research group - reply - reply\nshriley :\ni ' m terribly sorry it ' s taking me so long to get back to you . because i am\nmoving to a new office after my trip next week it is difficult to make\ndefinite plans . looking at my schedule now i would suggest tentatively\nthat i could come on friday november 3 . again , i would like to reconfirm\nwith you after i return from montreal a week from now .\ni would also be interested in having a phone conversation with someone\nwho can tell me in a bit more detail about enron ' s research group and this\nparticular position . that would be very helpful in preparing to come to\nhouston . please let me know if this is feasible .\nthanks for your patience .\nmark giancola\n> > > ex . mail . \" shirley . crenshaw @ enron . com \" 10 / 13 / 00 10 : 09 am > > >\nmark :\nwhile we are anxious to fill this position , we certainly understand\nscheduling\nconflicts ! please let us know as soon as you have a definate time .\ndr . kaminski will be out of the office the next two weeks also . maybe\nthe\nweek\nof the 30 th or the 6 th of november ?\nlook forward to hearing from you .\nsincerely ,\nshirley crenshaw\nmark . giancola @ do . treas . gov on 10 / 13 / 2000 08 : 47 : 57 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : interview with the enron research group - reply\ndate : 10 / 13 / 2000 09 : 42 am ( friday )\nfrom : mark giancola\nto : ex . mail ( \" shirley . crenshaw @ enron . com \" )\nsubject : interview with the enron research group - reply\nthanks for your message . our e - mail system was down all day\nyesterday so i was not able to respond until today .\ni am very interested in coming in for an interview . unfortunately , my\nschedule will make traveling on a weekday difficult for at least the next\ntwo weeks . i am travelling as part of the us delegation to the g - 20 on\nthe 24 th and 25 th and will be busy until then in preparation . immediately\nfollowing that trip i will be moving to a new office here in treasury and\nam not sure about my schedule .\ni would like to wait until next week when i have a better idea of my\nschedule to propose times to come to houston . please let me know if\nthere are time constraints on your side .\nthanks ,\nmark giancola\n> > > ex . mail . \" shirley . crenshaw @ enron . com \" 10 / 12 / 00 09 : 06 am > > >\ngood morning mr . giancola :\nyour resume was forwarded to vince kaminski , managing director and\nhead of research with enron .\nwe would like to bring you in for an informal interview at your\nconvenience .\nthis would be for a position of \" economist \" or \" associate economist \" ,\nreporting to maureen raymond castaneda .\nplease give me some dates and times that would be convenient with you\nand i will have our hr rep contact you to schedule your coming to\nhouston .\ni look forward to hearing from you .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.359+0000", "entityId": 8690, "properties": {"text": "Subject: offer to rakish ( sp ? )\nvince ,\nnorma called and said that rakish had requested stock options instead of a\nsigning bonus . she suggested giving $ 30 k worth of options which would vest\nover a 3 year period , and i told her that i am sure this would be fine with\nyou . it should cost us less than the offered cash bonus of $ 20 k .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.363+0000", "entityId": 8691, "properties": {"text": "Subject: london research\nthe enron europe research group has experienced rapid growth over the last\nyear as it has become clear that there are tremendous opportunities to\nutilize their unique quantitative skills in supporting both new and ongoing\nbusiness efforts in the london offices . because of this , we are appointing a\ngroup leader with the view to leveraging the group better across the many\nbusiness areas in enron europe which are benefiting from research support .\neffective immediately , steven leppard will take responsibility for\nspearheading research efforts in london and managing the london based\nresearch team . steve joined enron in early 1999 and has distinguished\nhimself through his many contributions including analysis of the \" supergoal \"\nscheduling system and development of a diagrammatic approach for real options\nanalysis . he holds a phd . in mathematical physics from kings college london\nand an honours degree in mathematics from imperial college . steve is also a\nblack - belt level instructor in kungfu .\nplease join us in congratulating steve on his new responsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.367+0000", "entityId": 8692, "properties": {"text": "Subject: update\nvince ,\na quick update on job candidates :\n1 ) nelson neale : relayed your request to norman , and told nelson that an\noffer is in progress . did not mention specific numbers to him .\n2 ) charles shen : left a message for him that we would get back to him next\nweek with details of an offer .\n3 ) interviewed by phone tom barkley at thunderbird ( brought to our attention\nby enron recruiters there ) . he looks very interesting so i am trying to\nschedule a visit to enron for him . he will finish t - bird in december ( mba )\nand has a bachelors with honours in mathematics .\nhave a great weekend .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.372+0000", "entityId": 8693, "properties": {"text": "Subject: fwd : update\nreturn - path :\nreceived : from rly - yeo 2 . mx . aol . com ( rly - yeo 2 . mail . aol . com [ 172 . 18 . 151 . 199 ] )\nby air - yeo 4 . mail . aol . com ( v 76 _ rl . 19 ) with esmtp ; fri , 20 oct 2000 14 : 52 : 34\n- 0400\nreceived : from postmaster . enron . com ( outbound 5 . enron . com [ 192 . 152 . 140 . 9 ] ) by\nrly - yeo 2 . mx . aol . com ( v 76 _ rl . 19 ) with esmtp ; fri , 20 oct 2000 14 : 52 : 16 - 0400\nreceived : from nahou - msmswolpx . corp . enron . com ( [ 172 . 28 . 10 . 37 ] ) by\npostmaster . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / postmaster - 1 . 00 ) with esmtp id naao 9683 for\n; fri , 20 oct 2000 13 : 52 : 16 - 0500 ( cdt )\nfrom : stinson . gibner @ enron . com\nreceived : from ene - mtaol . enron . com ( unverified ) by\nnahou - msmswolpx . corp . enron . com ( content technologies smtprs 4 . 1 . 5 ) with esmtp\nid for\n; fri , 20 oct 2000 13 : 52 : 16 - 0500\nsubject : update\nto : vkaminski @ aol . com\ncc : vince . j . kaminski @ enron . com\nx - mailer : lotus notes release 5 . 0 . 3 march 21 , 2000\nmessage - id :\ndate : fri , 20 oct 2000 13 : 52 : 12 - 0500\nx - mimetrack : serialize by router on ene - mtaol / enron ( release 5 . 0 . 3 ( intl ) | 21\nmarch 2000 ) at 10 / 20 / 2000 01 : 48 : 43 pm\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\nvince ,\na quick update on job candidates :\n1 ) nelson neale : relayed your request to norman , and told nelson that an\noffer is in progress . did not mention specific numbers to him .\n2 ) charles shen : left a message for him that we would get back to him next\nweek with details of an offer .\n3 ) interviewed by phone tom barkley at thunderbird ( brought to our\nattention by enron recruiters there ) . he looks very interesting so i am\ntrying to schedule a visit to enron for him . he will finish t - bird in\ndecember ( mba ) and has a bachelors with honours in mathematics .\nhave a great weekend .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.376+0000", "entityId": 8694, "properties": {"text": "Subject: request submitted : access request for chris . clark @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000005413\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 23 / 00 8 : 50 : 58 am\nrequested for : chris . clark @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.381+0000", "entityId": 8695, "properties": {"text": "Subject: request submitted : access request for brian . mihura @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000005412\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 23 / 00 8 : 49 : 45 am\nrequested for : brian . mihura @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.386+0000", "entityId": 8696, "properties": {"text": "Subject: request submitted : access request for jeremy . waggenspack @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000005411\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 23 / 00 8 : 48 : 43 am\nrequested for : jeremy . waggenspack @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.390+0000", "entityId": 8697, "properties": {"text": "Subject: request submitted : access request for john . f . anderson @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000005409\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 23 / 00 8 : 47 : 14 am\nrequested for : john . f . anderson @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.395+0000", "entityId": 8698, "properties": {"text": "Subject: re : associate / analyst super saturday participation\nplease read the following message regarding the associate and analyst super\nsaturday program . the message containing the details for each date and the\nlink to sign - up follows at the bottom of the message . jeff and mike would\nappreciate 100 % participation .\nthank you .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeffrey a shankman / hou / ect on 10 / 23 / 2000\n02 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jana giovannini 10 / 23 / 2000 11 : 54 am\nto : jeffrey a shankman / hou / ect @ ect , larry lawyer / enron communications @ enron\ncommunications\ncc : charlene jackson / corp / enron @ enron , julie braly / na / enron @ enron\nsubject : super saturday interviewers\njeff / larry ,\nto follow up on my voicemail , the associate and analyst program is in great\nneed of interviewers for october 28 th and november 4 th super saturdays .\nthese weekends are the most critical at this time . to date , we are in need\nof an additional 38 interviewers for october 28 th and 67 for november 4 th .\nin order to have a successful recruiting season , we would greatly appreciate\nyour assistance in getting more egm executives to participate in this\neffort . please contact me at x 39233 with any questions . thanks for your\ncontinued support .\nenron north america corp .\nfrom : shelly jones , recruiting manager @ enron\n10 / 10 / 2000 06 : 03 pm\nsent by : enron announcements @ enron\nto : all enron employees north america\ncc :\nsubject : associate / analyst super saturday participation\nenron managing directors , vice presidents , directors , and managers who\nutilize the associate / analyst pool\nas a follow up from a \" save the date \" email regarding your participation in\nthe associate and analyst super saturday process , now is the time to select\nyour dates to attend and participate .\nbelow are the dates for super saturday weekends during the upcoming\nrecruiting season . if you are houston - based or if you know you will be in\nhouston on business at the appropriate times please click the link below to\nvolunteer .\n( when selecting dates please avoid selecting to interview candidates who\nattend the schools for which you are a team member . )\nassociates analysts\noctober 27 - 28 , 2000 november 3 - 4\nthunderbird , ut , georgetown , rice rice , ut , baylor , a & m , ou , florida , lsu ,\nuhcl\nnovember 10 - 11 , 2000 november , 17 - 18 , 2000\ncolumbia , stern nyu , ucla , darden , cornell penn , uva , vanderbilt , michigan ,\nhoward , auc ,\nvanderbilt , michigan uhmain\ndecember , 1 - 2 , 2000 december 8 - 9 , 20000\nchicago , kellogg , harvard , wharton , mit wellesley , overflow and re - schedules\nfrom previous s / s\nfriday , december 15 , 2000\ncarnegie mellon\nthank you for your support of the associate and analyst programs .\nshelly jones\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.399+0000", "entityId": 8699, "properties": {"text": "Subject: hedge effectiveness test for fair value hedges\ngentlemen :\nwe have had favorable responses regarding the use of our volatility\nreduction method ( roger , i ' ve attached a copy of our article in case you\nhadn ' t seen it ) . however , there continued to be a quibble about how to\ncreate the set of data points that would be inputs into the testing process .\nlast week the consulting arm of a \" big five \" accounting firm indicated that\nthe following method proposed by us would be acceptable . we believe this\nmethod overcomes the statistical problems that arise from using interest\nrate differences from overlapping ( \" rolling \" ) quarters .\nmethod :\n1 ) calculate daily yield curve changes expressed as ratios , using historical\nrates from the most recent , say , two years . ( note : no overlap ) . this\nresults in a set of around 494 vectors of ratios ( approximately 247 trading\ndays per\nyear ) .\nexample :\nif the first three yield curves in the historical set look like this :\n19980801 6 . 5 6 . 6 6 . 7 . . . . . . . . . 7 . 2\n19980802 6 . 3 6 . 3 6 . 6 . . . . . . . . . 6 . 9\n19980803 6 . 6 6 . 8 6 . 9 . . . . . . . . . 7 . 1\nthen the change from 8 / 1 / 98 to 8 / 2 / 98 is :\n6 . 3 / 6 . 5 6 . 3 / 6 . 6 6 . 6 / 6 . 7 . . . . . . . . . . 6 . 9 / 7 . 1\nand the change from 8 / 2 / 98 to 8 / 3 / 98 is :\n6 . 6 / 6 . 3 6 . 8 / 6 . 3 6 . 9 / 6 . 6 . . . . . . . . . 7 . 1 / 6 . 9\n2 ) randomly select 62 of these \" ratio \" vectors ( approx . 62 trading days in a\nquarter ) .\n3 ) multiply these ratio vectors together to get a single vector ( ie , the 62\n6 mo ratios are multiplied together , the 62 lyr ratios are multiplied\ntogeter , etc . ) . the result represents a single quarterly yield curve\ntransformation . apply it to \" today ' s \" yield curve . the resulting yield\ncurve represents one simulated quarterly change in interest rates\n4 ) repeat steps 2 and 3 until an adequate number of yield curves are\ngenerated , say 100 .\n5 ) proceed with testing process .\ni would be interested in your comments .\nleslie abreo\nandrew kalotay associates , inc .\n61 broadway , ste 3025\nnew york ny 10006\nphone : ( 212 ) 482 0900\nfax : ( 212 ) 482 0529\nemail : leslie . abreo @ kalotay . com\nvisit aka ' s website at http : / / www . kalotay . com\n- fasl 33 article . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.407+0000", "entityId": 8700, "properties": {"text": "Subject: research reporting\ntani - are you happy having steve leppard and research reporting to you in\nlondon , with a thick dotted line to vince in houston . up to now it has\nreported to dale , so it makes sense to shift to you . steve wants a dotted\nline to commercial , which i ' m happy to have to me as he does o much work for\nus .\nrichard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.415+0000", "entityId": 8701, "properties": {"text": "Subject: interview - jaesoo lew 10 / 25 / 00\nattached please find the resume , interview schedule , and evaluation form for\njaesoo lew . jaesoo will be interviewing with vince kaminski ' s group on an\nexploratory basis on october 25 , 2000 . please contact me with any comments\nor concerns .\nthank you ,\ncheryl arguijo\nena recruiting\n713 - 345 - 4016", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.422+0000", "entityId": 8702, "properties": {"text": "Subject: info about enron ' s bandwidth market\ndear dr . kaminski ,\ni enjoyed your talk this afternoon at ieor very much .\ni wonder if you could point me to some information\nresource on enron ' s bandwidth market .\ni am a ph . d student at ieor . i work with professor\noren and professor varaiya from eecs department on\nthe topic of pricing the internet . in particular , i am designing\npricing mechanism in the framework of the diffserv\narchitecture which is the latest proposal made by\nietf to provide scalable service differentiation .\ni would very much like to get in touch with people\nin enron working on the similar topics .\nthank you very much .\njun shu\nhttp : / / www . ieor . berkeley . edu / ~ jshu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.427+0000", "entityId": 8703, "properties": {"text": "Subject: re : avistar systems\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 10 / 24 / 2000 01 : 08\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaige cox @ enron\n10 / 24 / 2000 08 : 54 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : re : avistar systems\nyou ' re welcome .\ni have vince on the list now . we are installing this week and over next\nweekend . we ' ll have to go to the location to see if we ' ll have to pull\nadditional cable to vince ' s desk . i wouldn ' t look for it to be in before next\nmonday .\nwith regards to the billing - - i will have stella ely get with you on that .\nthank you for all of the info\npaige\nkevin g moore @ ect\n10 / 24 / 2000 08 : 47 am\nto : mike a roberts / hou / ect @ ect , paige cox / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : avistar systems\ni really appreciate you speaking with gary regarding\nthe avistar system .\nplease inform me on what i need to do to make the process\ncontinue .\nthe location for the avistar is eb 3240 d .\nthe location belongs to vince kaminski .\nif you need more information please call x 34710 .\nif possible , would you please inform me as when to\nexpect the system connection date and time .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.431+0000", "entityId": 8704, "properties": {"text": "Subject: storage modeling\njohn ,\ni want to thank you for your compliment to the work that we have done for the\nliberty\ncounty storage facility valuation .\nyou and your talented associate ms . tian gave me a lot of valuable insights\nto understand all\nthe aspects of the deal , so it was also a great learning experience for me .\nif you think the research can help you in any way to your deals , storage ,\ntransport , mtbe , real options ,\nor whatever , just let me know , we will get the job done .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.436+0000", "entityId": 8705, "properties": {"text": "Subject: super saturday changes\nthe recruiting season has officially begun . the first super saturday weekend\nis the weekend of october 27 th and 28 th . we have undergone a rigorous\ninterview process on campus , which will allow us to focus on \u0001 however , we are still in need of interviewers for each\nof the super saturdays . please respond with your willingness to interview\nat : http : / / axis . enron . com / notice / ssinvite . asp\n( when selecting dates please avoid selecting to interview candidates who\nattend the schools for which you are a team member ) .\nwe thank you in advance for your participation and support of the program .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.441+0000", "entityId": 8706, "properties": {"text": "Subject: associate / analyst super saturday participation - additional request\nadditional interviewer participation is requested for october 28 & november\n4 .\nalso , please note the school / date changes ( in red ) . this change was\nnecessary due to the number of candidates participating in super saturday .\nif you have a change in your participation as a result of the date change ,\nplease contact john harrison , ext . 3 - 7811 for revisions .\nthank you\nshelly jones\nenron managing directors , vice presidents , directors , and managers who\nutilize the associate / analyst pool\nas a follow up from a \" save the date \" email regarding your participation in\nthe associate and analyst super saturday process , now is the time to select\nyour dates to attend and participate .\nbelow are the dates for super saturday weekends during the upcoming\nrecruiting season . if you are houston - based or if you know you will be in\nhouston on business at the appropriate times please click the link below to\nvolunteer .\n( when selecting dates please avoid selecting to interview candidates who\nattend the schools for which you are a team member . )\nassociates analysts\noctober 27 - 28 , 2000 november 3 - 4\nthunderbird , ut , georgetown , rice rice , ut , baylor , a & m , ou , florida , lsu ,\nuhcl\nnovember 10 - 11 , 2000 november , 17 - 18 , 2000\ncolumbia , stern nyu , ucla , darden , cornell penn , uva , vanderbilt , michigan ,\nhoward , auc ,\nvanderbilt , michigan uhmain and clear lake , lsu\ndecember , 1 - 2 , 2000 december 8 - 9 , 20000\nchicago , kellogg , harvard , wharton , mit wellesley , overflow and re - schedules\nfrom previous s / s\n-\nfriday , december 15 , 2000\ncarnegie mellon\nyale off - cycle candidates\nthank you for your support of the associate and analyst programs .\nshelly jones\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.446+0000", "entityId": 8707, "properties": {"text": "Subject: re : resume ,\nvince ,\nif you are interested in this candidate i would suggest that you talk to him\ndirectly . he probably is not a \" fit \" for the global technology track .\nthanks ,\nashley\nvince j kaminski @ ect\n10 / 24 / 2000 04 : 31 pm\nto : ashley baxter / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : resume ,\nashley ,\nanother student who responded after my presentation .\nwhat do you think ? should we talk to him ( research ) directly ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 24 / 2000\n04 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njinbaek kim on 10 / 23 / 2000 07 : 25 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : resume ,\ndear mr . kaminski ,\nhi ,\ni am a ph . d student at ieor department at u . c . berkeley .\nthanks for your presentation today .\nit gave me knowledge and interest in electricity markets ,\nand your company .\nas you mentioned in the presentation ,\ni send a resume to give me opportunity to learn more\nabout your company .\ni hope i can join the super saturday event .\njinbaek\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.451+0000", "entityId": 8708, "properties": {"text": "Subject: a message from joe sutton\ntoday , i announce my departure from enron . enron is a great company and i\nhave enjoyed working with our terrific employees over the last eight years .\ntogether , we have made enron a successful global company .\nwith enron \u0001 , s decreased emphasis on international asset development activity ,\nhowever , i have decided to pursue opportunities where i can make greater use\nof my skills and experience . i leave enron with wonderful memories of our\nemployees and the many successes we have achieved together . you have my best\nwishes for enron \u0001 , s continued success .\njoe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.456+0000", "entityId": 8709, "properties": {"text": "Subject: a message from ken lay and jeff skilling\nwith deep regret we announce that joe sutton , vice chairman of enron , has\ndecided to leave the company . joe has indicated his desire to pursue other\nopportunities in the energy asset development and operations business .\njoe has been instrumental in making enron a global company . we will miss his\nenergy and enthusiasm . we wish joe the very best as he pursues new endeavors .\nken and jeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.460+0000", "entityId": 8710, "properties": {"text": "Subject: 2000 projects\nin order to better understand the research group , can i get a list of\nprojects that your group works on during 2000 ? were these projects budgeted\nfor separately in 2000 ? if the answer is yes , can we do a comparison\nanalysis on these projects ( actual vs plan ) ? based on the 2001 plan , i do\nnot think we budgeted by project , but i have to ask . . . if you have any\nquestions , please call me at 5 - 7094 . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.466+0000", "entityId": 8711, "properties": {"text": "Subject: ameriflash newsletter\nmichell vitrella called and wanted to know if the \" research group \" would\nlike to submit an article for the next issue of the ena newsletter\n( \" ameriflash )\nthey need to have the article by tomorrow .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 24 / 2000\n10 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : michelle vitrella 10 / 24 / 2000 09 : 53 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ameriflash newsletter\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michelle vitrella / hou / ect on 10 / 24 / 2000\n09 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : ena public relations @ enron 10 / 19 / 2000\n08 : 25 pm\nsent by : enron announcements @ enron\nto : all _ ena _ egm _ eim\ncc :\nsubject : ameriflash newsletter\nnote from mark frevert\nwith the wide and varied activities of our three organizations , we created\nthis e - mail newsletter to keep everyone better informed about our various\nbusinesses . i hope you find it informative and more importantly , that you\nwill use this newsletter to help spread the word about the successes in your\ngroup .\nto provide content for future e - mails , contact michelle vitrella in our\npublic relations group via e - mail or call her at ext . 3 - 9767 . communication\nis one of the core enron values and i believe this is a great way to improve\ncommunication across our wholesale businesses .\nadditionally , i would like to again encourage everyone to take a few minutes\nto complete \u0001 & the pulse \u0001 8 survey . this annual survey regarding the work\nexperience at enron and how we can make it better is an important part of the\ntwo - way communication process at enron . please go to the enron intranet and\ntype survey . enron . com . it only takes a few minutes , it \u0001 , s confidential and\nyour comments will help make enron a better place to work .\nbusiness highlights\nnatural gas\nmiddle marketing \u0001 , s biggest trade of the year so far occurred this month . the\nsignificant transaction was a five year , multimillion dollar restructuring\nwith a subsidiary of formosa plastics , one of the world \u0001 , s largest producers\nof polyvinyl chloride .\nadditionally , continental airlines , the fifth largest us carrier , has hedged\na considerable amount ( 1 . 2 million barrels / month ) of crude oil . winter\nnymex hedges were put in place for the undisputed heavyweight chip champ of\nthe world , frito lay .\npulp & paper\nwith the acquisition of garden state paper and launch of clickpaper . com ,\nenron is creating an efficient spot physical market for pulp and paper\ncommodities . buyers and sellers will benefit from improved price\ntransparency and reliability and access to enron \u0001 , s online financial markets .\nimproved price transparency and the ability to imbed financial derivatives\ninto physical trading flows will facilitate the growth of enron \u0001 , s trading\nbusiness . to date , clickpaper . com has traded over 1 millions tons of pulp\nand paper product with a notional value of over $ 675 million .\nupstream origination\nupstream origination , headed by julie gomez and jean mrha , focuses on natural\ngas products to optimize commercial value associated with the natural gas\ngrid on the continent and in the gulf of mexico ( gom ) . through products such\nas storage , electric compression and producer services & outsourcing , ena\ncreates value for its customers and reconfigures the natural gas\ninfrastructure to be more efficient . in addition , upstream origination\ntransactions exploit the unique relationship between development of strategic\nassets through sophisticated financing structures and the utilization of the\nmarket information created by those assets .\n\u0001 & the pulse \u0001 8 survey results\nas of wednesday , october 18 , the total responses to \u0001 & the pulse \u0001 8 from\nena / egm / eim are 689 . this is approximately 30 % of all employees . since our\ngoal is a 100 % response rate , we have a long way to go ! please take a few\nminutes to log on and give enron your thoughts . the pulse is located at\nsurvey . enron . com on the enron intranet page .\nif you like competition , here are the results by group :\ncommercial - origination 131\nenergy operations 126\nrisk management and trading 106\nother / none of the above 91\nbus . analysis & rep . / fin . ops . 90\nlegal 46\ngas assets 37\nhuman resources 30\ntax 18\ntechnology / it 14\nwelcome\ntransferred into ena / eim / egm\nena - kathleen neal / hr , suzanne kelly / infocentral , tobias monk / finance direct\neim - eric connor / industrial energy group\negm - eric calub / global product mgmt\nnew hires ena / eim / egm\nena - lance cunningham / cts research , anita dupont / cts research , yvette\nhales / gas logistics \u0001 ) east , angela howell / equity trading , farid mithani / power\nrisk - credit\negm - heather purcell / enron global markets\nin the news\n\u0001 & no company illustrates the transformative power of innovation more\ndramatically than enron . over the past decade enron \u0001 , s commitment to the\ninvention \u0001 * and later domination \u0001 * of new business categories has taken it from a\n$ 200 million old - economy pipeline operator to a $ 40 billion new - economy\ntrading powerhouse . \u0001 8\nfrom \u0001 & the world \u0001 , s most admired companies , \u0001 8 fortune , monday , october 2\nnuggets & notes\n\u0001 & what \u0001 , s the message we \u0001 , re trying to get across ? \u0001 8 \u0001 ) ray bowen , coo eim\n\u0001 & i \u0001 , m not a micro - manager \u0001 8 - john lavorato , coo ena\n\u0001 & make it so , number one \u0001 8 \u0001 ) jeff shankman , coo egm\ncontest\nenron is \u0001 & the most innovative company \u0001 8 based on fortune magazine \u0001 , s most\nadmired survey . ena public relations is ready to put enron north america ,\nindustrial markets and global markets to the test . we need your creative\nminds to help name the new electronic newsletter we now call ameriflash . put\non your thinking caps and submit your ideas for a new name to\nmichelle . vitrella @ enron . com . the ena public relations team will narrow the\nlist to the top ten and then send it to our official judge , mark frevert , to\nmake the final decision . the winner will receive a gift certificate to any\npappas restaurant . good luck !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.474+0000", "entityId": 8712, "properties": {"text": "Subject: electricity summit at u . c . berkeley\nvince ,\ni just received this message . what do you think ? should i register to attend\nit ?\nsevil ,\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sevil yaman / corp / enron on 10 / 24 / 2000\n02 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npwpens on 10 / 24 / 2000 12 : 16 : 14 pm\nto : ( recipient list suppressed )\ncc :\nsubject : electricity summit at u . c . berkeley\nregister now to attend the\nelectricity summit at u . c . berkeley , november 13 , 2000\nu . c . berkeley ' s goldman school of public policy , with additional support\nfrom the u . c . berkeley ' s competition policy center and the u . c . energy\ninstitute , will host a meeting of industry representatives , policy makers ,\nconsumers representatives , legislators and researchers to discuss the\nelectricity restructuring experience and potential solutions to the\ndifficulties that california and other governments have encountered . the\nsummit will run from 12 : 30 - 6 pm with two roundtable discussions that will\ninclude a wide variety of viewpoints .\nfor registration information and further details , go to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.479+0000", "entityId": 8713, "properties": {"text": "Subject: garp 2001 convention\ndear garp 2001 speaker\n?\nthe program for the garp 2001 convention is nearly printed and i will be\nsending you a few copies of the program in the next few days . in the\nmeantime , you can find the program on our web site at www . garp . com\n?\nin addition , i am writing to inquire whether your organisation can establish\na web link to our program through your organisations ' web site . below is the\ninformation that is of most importance and that i would like included :\n?\ngarp 2001 - 2 nd annual risk ? management convention & exhibition , february\n12 th to 15 th february , 2001 , ? new york .\nfor full program details please visit www . garp . com or contact garp on tel .\n+ 44 ( 0 ) 20 ? 7626 9300 .\nof course , you could highlight your participation at this event , which will\ninclude a two - day convention with pre and post convention workshops and an\nasset management forum that will include over 80 senior financial and risk\nmanagement professionals . i have also attached a small logo that could be\nused as a link to the garp web site . can i please have the web address\nshould you , or your colleagues manage to establish a web link to the\nconvention . if you also feel that there are any important web sites that\nthis convention should be posted on , then i would appreciate it if you could\npass on this information .\n?\njust to keep you informed , already , within a week of the web site going\n' live ' , there have been about a dozen bookings and numerous inquiries . this\nis a very good sign that garp 2001 will be a great success and will out - do\ngarp 2000 .\n?\nof course , if you have any questions or queries , please do not hesitate to\ncontact me . i thank you in advance for your co - operation and i look forward\nto meeting you in new york in february .\n?\nkind regards\n?\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\n- garp 2001 . gif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.483+0000", "entityId": 8714, "properties": {"text": "Subject: inflation model review - final version\nthis morning a draft of rac ' s inflation model review was discussed with anjam .\nall points as presented in the draft were agreed upon .\nalso , four new points were amended as suggested by anjam :\nthe rpi short - term model could be improved by a combination of the\ninformation available from the gilts and rpi swaps market .\nadd : \" this is an issue across all enron ' s econometric models . \" to section\npllu and dzcv short - term , first point .\nto implement some of the suggestions requires additional statistical and\nprogramming resources .\nadditionnal human resources with advanced econometric modelling skills are\nrequired given the current workload of the european research team .\nplease find the final version attached .\nplease note that the short term solution has been to freeze the curve .\nthe medium to long term solution involves futher research towards a sounder\nand more efficient model .\ngiven the current workload of the european research group , it is necessary to\nhire a new member of staff with strong economics and econometrics background\nto address this issue properly .\nrac will communicate to the financial trading group and risk management the\nactions to take as the curve will be frozen .\nthanks ,\nrodrigo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.488+0000", "entityId": 8715, "properties": {"text": "Subject: in confidence / project status\nhi vince\ni ' d originally been told you wouldn ' t be back until wednesday , and so have\nanother meeting booked for 4 : 30 pm ( london time ) today . i really need to\nspeak with you about the situation here in london re anjam . to be blunt ,\nsharad , kirstee and i have all been tempted to just walk out of the office\nuntil anjam is removed . the major problems are :\n1 . i have no authority to demand anjam should cooperate with sharad , kirstee\netc . on their work . he does his best to impede their work , and i have no\nability to access his drives for data / spreadsheets .\n2 . anjam removes me from the cc lists in reply to all emails received by him ,\nin an attempt to remove me from the loop .\n3 . anjam continues to \" do business \" , and people in london still think he ' s\nhead of research .\n4 . pending your \" announcement \" , people will continue to go to anjam , and the\nbusiness will remain dependent on him .\n5 . we ' re severely under - resourced . i ' m still awaiting your review of the\nemail i drafted for john s , requesting additional resource . i can ' t make a\nbig recruitment drive until i have the authority to hire more .\ni honestly feel i can ' t do my job , and i ' m currently asking myself what i ' m\neven doing here .\nnotwithstanding the above , here is the current picture with our projects :\nsteve\n1 . initiated new pre - trade system for oil trading desk . hooked up relevant\nit resource with business people , keeping an overall eye on making sure the\nbusiness reqts get translated into it - speak .\n2 . enron direct demand forecasting system review .\n3 . initiated global supply / demand database with coal group .\n4 . constant firefighting across all desks .\nben\n1 . work on regression - based placement model .\n2 . general review of enroncredit . com ' s quant models .\nmatthew\n1 . ongoing work with engoal .\n2 . produced first prototype of gas capacity charge optimisation tool for\ncontinental gas desk . need to purchase local copy of cplex .\nkirstee\n1 . diverted from richard lewis ' s request for the uk gas / power vol curves to\nbe sorted out , onto eastern virtual power station restructuring project .\ninvolves extension runs of credit reserve model , and now it seems the model\nneeds to be extended .\n2 . constant var firefighting .\nslava\n1 . finished all regressions and model identification for uk gas and power\ndemand forecasting . we are now ready to start it implementation .\n2 . enron direct demand forecasting system review .\nsharad\n1 . exotica support / firefighting , made nearly impossible by anjam .\n2 . option on strip of metals futures for enron metal .\ni do hope we get a chance to speak and resolve some of these issues . i ' m\nreally not happy at present .\nbest regards ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.493+0000", "entityId": 8716, "properties": {"text": "Subject: re : fw : citi , wells , enron , sl and i 2 form a b 2 b venture\ngreat . we will be around . let ' s get together . please , give me a call\n( 650 - 570 - 6509 ) or / and let me know your phone number in palo alto .\nandrzej\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , october 24 , 2000 12 : 58 pm\nto : lubowski , andrzej\ncc : vince . j . kaminski @ enron . com\nsubject : re : fw : citi , wells , enron , sl and i 2 form a b 2 b venture\nandrzej ,\ni shall be in the bay area again for thanksgiving . i came to sf for one\nday to\ndo recruiting at berkeley . i hope you will feel better soon .\nvince\n\" lubowski , andrzej \" on 10 / 20 / 2000 12 : 45 : 25 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : fw : citi , wells , enron , sl and i 2 form a b 2 b venture\nwicku ,\ni hoped to hear from you . please , let me know whether your plans have\nchanged , and if so , when you are coming to palo alto .\ni spent theer weeks in europe in september ( had dinner with leszek and\newa ) ,\nand went to sydney as a guest of nbc . upon return i caught a flu , and\ntravelled heavily congested to new york , which led to some ear\nproblems . consequently i intend to stay put for several weeks , and will have\nto reschedule my trip to houston for dec . or january . hope to see you here\nbefore then .\nbest to all three of you .\nandrzej\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , august 18 , 2000 6 : 23 am\nto : lubowski , andrzej\ncc : vince . j . kaminski @ enron . com\nsubject : re : fw : citi , wells , enron , sl and i 2 form a b 2 b venture\nandrzej ,\nthanks . please , send me the information about the dates\nwhen you plan to visit houston . also , the information about\nyour position / title / responsibilities ( as well as the info\nabout the other members of your team ) would be useful .\ni shall be in the bay area between the 10 th and the 20 th of october .\nhope to see your then .\nwicek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.498+0000", "entityId": 8717, "properties": {"text": "Subject: re : resume ,\nthanks a lot ,\nand just let me know the schedule afterwards . . .\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non tue , 24 oct 2000 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> we shall invite you to an interview in houston .\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 10 / 23 / 2000 07 : 25 : 36 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : resume ,\n>\n>\n> dear mr . kaminski ,\n>\n> hi ,\n> i am a ph . d student at ieor department at u . c . berkeley .\n> thanks for your presentation today .\n> it gave me knowledge and interest in electricity markets ,\n> and your company .\n> as you mentioned in the presentation ,\n> i send a resume to give me opportunity to learn more\n> about your company .\n> i hope i can join the super saturday event .\n>\n> jinbaek\n>\n>\n> ( see attached file : resume . doc )\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.503+0000", "entityId": 8718, "properties": {"text": "Subject: re : opportunities\nlloyd ,\nyes , i would be very interested .\nvince\nlloyd will\n10 / 24 / 2000 02 : 45 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : opportunities\nvince would you be interested in this professional .\ni would be glad to facilitate a conference call .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lloyd will / hou / ect on 10 / 24 / 2000 02 : 43 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sheble , g . b . \" on 10 / 17 / 2000 04 : 52 : 57 pm\nto : \" ' lloyd . will @ enron . com ' \"\ncc :\nsubject : re : opportunities\nloyd\ni tried to call yesterday , but you were out of the office . my schedule\nfollows , would you want to pick a time for me to call you or send me a list\nof times to pick ?\ngerry\nfall 2000 teaching schedule\nee 553 mtwr 10 - 11 am curtis hall 308\nengr 161 mw 2 - 4 howe hall 2228\nother commitments\nm 11 - 12 ep & es\nm 1 - 2 office hours\nt 12 - 2 ep & es seminar\nt 2 - 3 office hours\nt 3 - 4 pserc\nt 5 - 6 epri - dod\nw 11 - 12 office hours\nw 4 - 9 dsm\nr 11 - 12 office hours\nf 11 - 12 p & t\nf 1 - 3 cas\nf 3 - 4 departmental meeting\n- - - - - original message - - - - -\nfrom : lloyd . will @ enron . com [ mailto : lloyd . will @ enron . com ]\nsent : monday , october 16 , 2000 8 : 00 am\nto : sheble , g . b .\nsubject : re : opportunities\ngive me a call any time to discuss things .\n713 - 853 - 3383 .\nthanks .\n\" sheble , g . b . \" on 10 / 15 / 2000 02 : 17 : 02 pm\nto : lloyd will / hou / ect @ ect\ncc :\nsubject : re : opportunities\nlloyd\ni am attaching another resume for your review , please pass it along if\nthere\nis any interest .\ni would also like to discuss opportunities with you as i expect to graduate\nwith my mba summer 2001 .\ncordially ,\ngerry\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngerald b . shebl ,\nprofessor , electrical and computer engineering\ndirector of complex adaptive systems program\n1115 coover hall\names , iowa 50011\nvoice : 515 . 294 . 3046\nfax : 515 . 294 . 4263\nemail : gsheble @ iastate . edu\nweb : http : / / www . ee . iastate . edu / ~ sheble /\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.512+0000", "entityId": 8719, "properties": {"text": "Subject: re : flight\nmolly ,\nit ' s ok ( even if the answer is ex post ) .\nvince\nenron north america corp .\nfrom : molly magee 10 / 19 / 2000 08 : 45 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : flight\nvince : would this be okay with you ?\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 10 / 19 / 2000 08 : 44\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : jlew @ kent . edu > 10 / 18 / 2000\n07 : 30 pm\nto : molly . magee @ enron . com\ncc : jlew @ kent . edu\nsubject : flight\ndear molly ,\ni asked about change of the departure city . they said i should send my ticket\nback to get a new ticket . since aquila provides the ticket , it ' s hard for me\nto change the departing place . if possible , can i ask you to arrange the one\nway flight from houston to seattle on the evening of 25 th ? i ' m sorry for\nthis .\nthank you very much .\nsincerely ,\njaesoo lew", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.519+0000", "entityId": 8720, "properties": {"text": "Subject: interview schedule for martin jermakyan\nplease find the interview packet for the above - referenced person . the\ninterview will occur on friday october 27 , 2000 . please print all three\ndocuments for your reference . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nstephanie\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.524+0000", "entityId": 8721, "properties": {"text": "Subject: re : stanford check\npaul ,\nthanks a lot .\nvince\nfrom : paul racicot @ enron communications on 10 / 20 / 2000 06 : 03 am\nto : stinson gibner / enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : stanford check\nfyi\n- - - - - forwarded by paul racicot / enron communications on 10 / 20 / 00 06 : 06 am\n- - - - -\nsteven batchelder\n10 / 19 / 00 04 : 36 pm\nto : paul racicot / enron communications @ enron communications , sally\nslaughter / enron communications @ enron communications\ncc :\nsubject : stanford check\njust wanted to let you know that the check went out fedex - priority\novernight . they should have it tomorrow morning .\nthe tracking number is 823038069157 and can be tracked at www . fedex . com\nsally ~ per our conversation i will interoffice you the airbill slip .\nif you need anything else , please let us know .\nthanks .\nsteven batchelder\naccountant\nenron broadband services\n713 - 345 - 9340\nsteven _ batchelder @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.528+0000", "entityId": 8722, "properties": {"text": "Subject: re : meeting re : wharton strategy\ni am sorry . . . . . . as per message below we are changing it to friday at 9 : 00 .\nvince j kaminski\n10 / 24 / 2000 04 : 43 pm\nto : jennifer burns / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : meeting re : wharton strategy\njennifer ,\ni can rearrange some other meetings . thursday , oct 26 @ 3 : 00 works for me .\nvince\njennifer burns\n10 / 24 / 2000 04 : 14 pm\nto : michele nezi marvin / enron communications @ enron communications , mark\npalmer / corp / enron @ enron , cindy derecskey / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , beth\nmiertschin / hou / ect @ ect , christie patrick / hou / ect @ ect , kristin\ngandy / na / enron @ enron\ncc :\nsubject : meeting re : wharton strategy\nlets try for friday , october 27 @ 9 : 00 am , please let me know if you are\navailable . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jennifer burns / hou / ect on 10 / 24 / 2000\n04 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njennifer burns\n10 / 23 / 2000 11 : 08 am\nto : michele nezi marvin / enron communications @ enron communications , sarah\nmulholland / hou / ect @ ect , mark palmer / corp / enron @ enron , kristin\ngandy / na / enron @ enron , beth miertschin / hou / ect @ ect , christie\npatrick / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc :\nsubject : meeting re : wharton strategy\njeff shankman would like to have a meeting re : wharton strategy . please let\nme know if you would be available thursday , october 26 @ 3 : 00 . i will get\nback with everyone to confirm a location . thanks !\njennifer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.533+0000", "entityId": 8723, "properties": {"text": "Subject: re : meeting re : wharton strategy\njennifer ,\ni am available for 30 minutes on fri , oct 30 . . a meeting at 8 : 30 would work\nbetter for me .\nvince\njennifer burns\n10 / 24 / 2000 04 : 14 pm\nto : michele nezi marvin / enron communications @ enron communications , mark\npalmer / corp / enron @ enron , cindy derecskey / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , beth\nmiertschin / hou / ect @ ect , christie patrick / hou / ect @ ect , kristin\ngandy / na / enron @ enron\ncc :\nsubject : meeting re : wharton strategy\nlets try for friday , october 27 @ 9 : 00 am , please let me know if you are\navailable . thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jennifer burns / hou / ect on 10 / 24 / 2000\n04 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njennifer burns\n10 / 23 / 2000 11 : 08 am\nto : michele nezi marvin / enron communications @ enron communications , sarah\nmulholland / hou / ect @ ect , mark palmer / corp / enron @ enron , kristin\ngandy / na / enron @ enron , beth miertschin / hou / ect @ ect , christie\npatrick / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc :\nsubject : meeting re : wharton strategy\njeff shankman would like to have a meeting re : wharton strategy . please let\nme know if you would be available thursday , october 26 @ 3 : 00 . i will get\nback with everyone to confirm a location . thanks !\njennifer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.538+0000", "entityId": 8724, "properties": {"text": "Subject: re : resume ,\njinbaek ,\nwe shall invite you to an interview in houston .\nvince\njinbaek kim on 10 / 23 / 2000 07 : 25 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : resume ,\ndear mr . kaminski ,\nhi ,\ni am a ph . d student at ieor department at u . c . berkeley .\nthanks for your presentation today .\nit gave me knowledge and interest in electricity markets ,\nand your company .\nas you mentioned in the presentation ,\ni send a resume to give me opportunity to learn more\nabout your company .\ni hope i can join the super saturday event .\njinbaek\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.543+0000", "entityId": 8725, "properties": {"text": "Subject: uc - berkeley graduate student\nashley ,\nthis is one resume i got today . i think that it makes sense to invite him\nfor an interview directly with my group . he does not qualify as an analyst\ncandidate .\nwhat do you think ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 24 / 2000\n04 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrajnish kamat on 10 / 23 / 2000 07 : 55 : 31 pm\nto : vkamins @ enron . com\ncc :\nsubject : uc - berkeley graduate student\ndr . vincent kaminski\nmanaging director and head of research\nenron corp .\ndear dr . kaminski ,\nit was a pleasure talking with you and attending your talk today .\ni am a graduate student in industrial engg . and operations\nresearch working with prof . shmuel oren\non topics in financial instrument pricing and design of\ncontracts in deregulated electricity markets . i am also\ndoing research in auction models and computable equilibrium\nmodels with applications in electricity market design .\ni am planning to graduate with a ph . d . in may 2001 and would\nappreciate hearing about any opportunities in your group at enron .\ni am attaching at copy of my resume ( file : cvrkamat . doc ) for your perusal .\nthanking you ,\nsincerely ,\nrajnish kamat\ngraduate student\nieor , uc - berkeley\n4135 , etcheverry hall\ndept . of industrial engineering and operations research\nuniversity of california at berkeley\nberkeley , ca , 94710\n- cvrkamat . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.547+0000", "entityId": 8726, "properties": {"text": "Subject: re : uc - berkeley graduate student\nrajnish ,\nwe shall invite you for an interview in houston .\nvince\nrajnish kamat on 10 / 23 / 2000 07 : 55 : 31 pm\nto : vkamins @ enron . com\ncc :\nsubject : uc - berkeley graduate student\ndr . vincent kaminski\nmanaging director and head of research\nenron corp .\ndear dr . kaminski ,\nit was a pleasure talking with you and attending your talk today .\ni am a graduate student in industrial engg . and operations\nresearch working with prof . shmuel oren\non topics in financial instrument pricing and design of\ncontracts in deregulated electricity markets . i am also\ndoing research in auction models and computable equilibrium\nmodels with applications in electricity market design .\ni am planning to graduate with a ph . d . in may 2001 and would\nappreciate hearing about any opportunities in your group at enron .\ni am attaching at copy of my resume ( file : cvrkamat . doc ) for your perusal .\nthanking you ,\nsincerely ,\nrajnish kamat\ngraduate student\nieor , uc - berkeley\n4135 , etcheverry hall\ndept . of industrial engineering and operations research\nuniversity of california at berkeley\nberkeley , ca , 94710\n- cvrkamat . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.552+0000", "entityId": 8727, "properties": {"text": "Subject: re : liquids limits oct . 20\njohn :\ni will be here most of the week , and am looking forward to working with niamh\nc . i will also check the availability of people in vince k . group as well as\nnaveen andrews in ours .\nregards\nbjorn h .\njohn l nowlan\n24 / 10 / 2000 10 : 32\nto : bjorn hagelmann / hou / ect @ ect\ncc : ted murphy / hou / ect @ ect\nsubject : re : liquids limits oct . 20\nbjorn , niamh clarke is going to come to houston from mon afternoon to friday\nnext week to work on nvar . she developed var models for mitsubishi and has\nlots of experience in this area . can you please provide her with the best\npeople we can from research and rac so we can try and get a better\nunderstanding and more confidence in our model . i ' m sure you agree with me\nthat if my group is going to make any progress we need to get this sorted .\nthanks in advance .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john l nowlan / hou / ect on 10 / 24 / 2000 09 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : bjorn hagelmann\n10 / 24 / 2000 07 : 31 am\nto : john l nowlan / hou / ect @ ect\ncc : scott earnest / hou / ect @ ect\nsubject : re : liquids limits oct . 20\ni think we need to sit down and talk about developing reporting that will\nshow the risk in the books . at this point and time it can be derived , but\nonly if you know what to look for . i would appreciate if you had some time to\ndo so .\nregards\nbjorn h\njohn l nowlan\n23 / 10 / 2000 13 : 10\nto : christian lebroc / corp / enron @ enron , scott earnest / hou / ect @ ect , bjorn\nhagelmann / hou / ect @ ect\ncc :\nsubject : re : liquids limits oct . 20\nlooking at these numbers i think the var model must be waaaaaaaaaay over\ncalcing something , most likely the spreads . the net and outright product\nposition are negligible . seems it would take one hell of a daily move to\nloose 12 . 7 on these positions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.557+0000", "entityId": 8728, "properties": {"text": "Subject: re : the newvatrfacs program and testing data\njin & winston ,\ni will look at the results of 2 runs ,\nbut i will not look at the code unless it is in our version control system\nsccs .\nplease , put all your version under this system , as we used to do , and as we\ndiscussed with you .\nthank you ,\ntanya\nfrom : jin yu 10 / 24 / 2000 12 : 31 am\nto : tanya tamarchenko / hou / ect @ ect\ncc : wenyao jia / hou / ect @ ect\nsubject : the newvatrfacs program and testing data\nhi , tanya :\ntwo versions of the newvatrfacs program : with ( v 2 ) and without ( vl ) weight\nare listed in the location :\n/ rms / prod / bin / tmp / vl and / rms / prod / bin / tmp / v 2 along with testing result for\nthe effdate = ' 20 - oct - 2000 ' .\nthe testing results of the factors for a given ng - cluster ( a constant list :\nclust . dat ) are listed in\n/ rms / prod / bin / tmp . ( the files with name like s * are the results of a test\nrun without \" weight \" , while the files with name like t * are the results of a\ntest run with \" weight \" ) .\nall source codes are listed there , including the makefile and the\nexcuteables . should you find any problem with the program , please let me\nknow .\njin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.564+0000", "entityId": 8729, "properties": {"text": "Subject: re : a / a program question\nvince ,\nthanks for the support .\ngwyn\nvince j kaminski @ ect\n10 / 24 / 2000 04 : 38 pm\nto : gwyn koepke / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : a / a program question\ngwyn ,\nno problem . please , continue with your current tutor .\nvince\ngwyn koepke @ enron\n10 / 23 / 2000 04 : 22 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : a / a program question\nvince ,\nthe a / a program does not have a contract in place with melly language\nservices . it appears that by the note below from my contact in the a / a - hr\ndepartment , the reimbursement policy appears to be driven by department , not\nenron at large .\nas i mentioned earlier , if i continue with my current tutor , but outside of\nthe melly language services , the cost to the department will decrease for me\nto take french classes .\npls advise if research will be able to continue to fund my lessons .\nmany thanks ,\ngwyn koepke\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 10 / 23 / 2000 04 : 19\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ivonne brown 10 / 23 / 2000 04 : 17 pm\nto : gwyn koepke / na / enron @ enron\ncc :\nsubject : re : a / a program question\ngwyn ,\nin the past the associate & analyst program use to pick - up the cost for the\nclasses , but they stopped doing so effective 1 / 99 . ( although , some business\nunits decided to continue paying for it - you may want to double check with\nyour business unit to whether or not they have a contract . the a / a dept does\nnot . ) please let me know if you have additional questions .\nthank you for your patience .\nsincerely ,\nivonne brown\ngwyn koepke\n10 / 23 / 2000 01 : 15 pm\nto : ivonne brown / na / enron @ enron\ncc :\nsubject : a / a program question\nivonne , have you been able to find an answer to the attached ? thanks !\ngwyn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 10 / 23 / 2000 01 : 14\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngwyn koepke\n10 / 19 / 2000 08 : 25 pm\nto : ivonne brown / na / enron @ enron\ncc :\nsubject : a / a program question\nivonne ,\ni am currently enrolled in a french language class thru enron and melly ' s\nlanguage services , and my group is paying the cost directly .\ni am considering quitting the melly ' s language program in favor of an outside\nprivate tutor , for a number of reasons . it will be cheaper too .\ni would like to know :\n1 . does enron have a contract in place with melly ' s language service , to be\nthe exclusive provider of language services to enron ?\n2 . will enron pay the costs of my language classes if they are held outside\nof the melly contract ( if any ) ?\ni just want to make sure that if i decide to \" drop out \" of the melly classes\nand sign up for other private tutoring courses , which will be less expensive\nthan the melly svc , that enron will not have a problem picking up the tab .\nvince kaminski , the md , wants to know this , to ensure there is no legal\nrestriction on who must provide these language services in order to secure\nenron reimbursement .\nthanks for your help .\ngwyn koepke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.570+0000", "entityId": 8730, "properties": {"text": "Subject: re : electricity summit at u . c . berkeley\nsevil ,\nyes , please , go ahead . we shall pay for the trip .\nvince\nsevil yaman @ enron\n10 / 24 / 2000 02 : 24 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : electricity summit at u . c . berkeley\nvince ,\ni just received this message . what do you think ? should i register to attend\nit ?\nsevil ,\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sevil yaman / corp / enron on 10 / 24 / 2000\n02 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npwpens on 10 / 24 / 2000 12 : 16 : 14 pm\nto : ( recipient list suppressed )\ncc :\nsubject : electricity summit at u . c . berkeley\nregister now to attend the\nelectricity summit at u . c . berkeley , november 13 , 2000\nu . c . berkeley ' s goldman school of public policy , with additional support\nfrom the u . c . berkeley ' s competition policy center and the u . c . energy\ninstitute , will host a meeting of industry representatives , policy makers ,\nconsumers representatives , legislators and researchers to discuss the\nelectricity restructuring experience and potential solutions to the\ndifficulties that california and other governments have encountered . the\nsummit will run from 12 : 30 - 6 pm with two roundtable discussions that will\ninclude a wide variety of viewpoints .\nfor registration information and further details , go to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.575+0000", "entityId": 8731, "properties": {"text": "Subject: headcount verification - deadline noon wednesday , oct 25 , 2000\nbecky :\nattached is the october \" revised \" research group headcount :\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 24 / 2000\n01 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbecky pham\n10 / 24 / 2000 11 : 57 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : headcount verification - deadline noon wednesday , oct 25 , 2000\nplease verify the attached file for accuracy , complete the blank columns and\nadd any new employees . if you have any questions , call me . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.581+0000", "entityId": 8732, "properties": {"text": "Subject: re : a / a program question\ngwyn :\njust because the a / a program does not have a contract does not mean\nthat enron does not . do you have a telephone number for melly ' s\nand i will call them directly and ask her if she has a contract .\nthanks !\nshirley\ngwyn koepke @ enron\n10 / 23 / 2000 04 : 22 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : a / a program question\nvince ,\nthe a / a program does not have a contract in place with melly language\nservices . it appears that by the note below from my contact in the a / a - hr\ndepartment , the reimbursement policy appears to be driven by department , not\nenron at large .\nas i mentioned earlier , if i continue with my current tutor , but outside of\nthe melly language services , the cost to the department will decrease for me\nto take french classes .\npls advise if research will be able to continue to fund my lessons .\nmany thanks ,\ngwyn koepke\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 10 / 23 / 2000 04 : 19\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ivonne brown 10 / 23 / 2000 04 : 17 pm\nto : gwyn koepke / na / enron @ enron\ncc :\nsubject : re : a / a program question\ngwyn ,\nin the past the associate & analyst program use to pick - up the cost for the\nclasses , but they stopped doing so effective 1 / 99 . ( although , some business\nunits decided to continue paying for it - you may want to double check with\nyour business unit to whether or not they have a contract . the a / a dept does\nnot . ) please let me know if you have additional questions .\nthank you for your patience .\nsincerely ,\nivonne brown\ngwyn koepke\n10 / 23 / 2000 01 : 15 pm\nto : ivonne brown / na / enron @ enron\ncc :\nsubject : a / a program question\nivonne , have you been able to find an answer to the attached ? thanks !\ngwyn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 10 / 23 / 2000 01 : 14\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngwyn koepke\n10 / 19 / 2000 08 : 25 pm\nto : ivonne brown / na / enron @ enron\ncc :\nsubject : a / a program question\nivonne ,\ni am currently enrolled in a french language class thru enron and melly ' s\nlanguage services , and my group is paying the cost directly .\ni am considering quitting the melly ' s language program in favor of an outside\nprivate tutor , for a number of reasons . it will be cheaper too .\ni would like to know :\n1 . does enron have a contract in place with melly ' s language service , to be\nthe exclusive provider of language services to enron ?\n2 . will enron pay the costs of my language classes if they are held outside\nof the melly contract ( if any ) ?\ni just want to make sure that if i decide to \" drop out \" of the melly classes\nand sign up for other private tutoring courses , which will be less expensive\nthan the melly svc , that enron will not have a problem picking up the tab .\nvince kaminski , the md , wants to know this , to ensure there is no legal\nrestriction on who must provide these language services in order to secure\nenron reimbursement .\nthanks for your help .\ngwyn koepke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.586+0000", "entityId": 8733, "properties": {"text": "Subject: time sensitive : executive impact & influence program survey\n* * * reminder * * *\nwe have not yet received your feedback . your input is\nvery valuable and to be included in the participant ' s\nsummary report , it must be received no later than close\nof business on wednesday , october 25 . without your\nfeedback , the participant may not receive a summary\nreport or be eligible to attend the program .\n* immediate action required - do not delete *\nexecutive impact & influence program\ndear vince kaminski ,\nas part of the executive impact and influence program ,\neach participant is asked to gather input on the\nparticipant ' s own management styles and practices as\nexperienced by their immediate manager , each direct\nreport , and up to eight colleagues / peers .\nyou have been requested to provide feedback for a\nparticipant attending the next program . your input\n( i . e . , a self assessment , if you are a participant in\nthis program , manager assessment , direct report\nassessment , or colleague / peer assessment ) will be\ncombined with the input of others and used by the\nprogram participant to develop an action plan to\nimprove his / her management styles and practices . if\nyou are providing feedback as a manager of the\nparticipant , please note that your feedback will be\nidentified in the summary report .\nit is important that you complete this assessment no\nlater than close of business on wednesday , october 25 .\nto begin the online administration process , you will\nneed the following internet address and password ( s ) .\nnote : if you are providing feedback for more than one\nperson , each password and participant name is\nindividually listed below .\nopen your internet browser e . g . , internet explorer or\nnetscape navigator , and please type or copy the url\naddress below into your internet browser ( please do not\ngo through lotus notes ) :\nwww . fsddatasvc . com / enron\nph 9 jbm ( mike roberts )\nif you experience technical problems , please call\ndennis ward at fsd data services , 713 - 942 - 8436 . if you\nhave any questions about this process , you may contact\ndebbie nowak at enron , 713 - 853 - 3304 , or christi smith\nat keilty , goldsmith & company , 858 - 450 - 2554 .\nthank you for your participation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.591+0000", "entityId": 8734, "properties": {"text": "Subject: matthew patteson , inventor\ncindy ,\nthis is our preliminary review of the documentation sent by mr . patteson .\none more person will take a look at it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 25 / 2000\n03 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n10 / 25 / 2000 01 : 16 pm\nto : vince j kaminski / hou / ect @ ect\ncc : zimin lu / hou / ect @ ect , kevin kindall / corp / enron @ enron\nsubject : matthew patteson , inventor\nvince ,\nafter reviewing the documents furnished by mr . patteson , i do not feel that\nenron should consider engaging in any testing , development , or licensing of\nhis proposed generator for the following reasons :\n1 . enron is not currently in the business of developing or manufacturing\nelectrical generation equipment and does not plan , as far as i know , to enter\nthis business . the one exception is our ownership in entities developing\nwind and solar , renewable energy .\n2 . enron does not have the proper facilities or expertise to test or develop\nmr . pattesons proposed generator .\n3 . there could be substantial risk in testing this generator as it would\ninvolve boiling of a flammable material under pressure .\n4 . i do not believe that the proposed generator will produce any significant\nquantity of electrical power . the generator produces power by induction .\nthat is , electric current is induced by a changing magnetic field . the\nmechanism powering the changing magnetic field is the movement of magnetic\ndipoles which are suspended in a boiling medium . as the boiling will\nproduce a somewhat random movement of the liquid , the \" movement \" or change in\nthe magnetic field will be highly random and thus not suitable for producing\na steady or reliable electrical current .\ni have asked martin lin to also review the documents to render an independent\nopinion of this proposal .\nrespectfully ,\ndr . stinson gibner\nphd . physics\nvp research , enron north america\np . s . kevin and zimin : if you have any interest in reviewing mr . patteson ' s\nproposal , please let me know .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.597+0000", "entityId": 8735, "properties": {"text": "Subject: super saturday\nshelly ,\nthese are the super saturdays i can help you with :\nnov 10\ndec 1\ndec 8\ndec 15\ni shall be traveling on two other days . one of these trips is related to\nrecruiting at cmu .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.605+0000", "entityId": 8736, "properties": {"text": "Subject: re : associate / analyst super saturday participation - additional\nrequest\nshelly ,\nthese are the super saturdays i can help you with :\nnov 10\ndec 1\ndec 8\ndec 15\ni shall be traveling on two other days . one of these trips is related to\nrecruiting at cmu .\nvince\nvince\nenron north america corp .\nfrom : shelly jones , recruiting manager @ enron\n10 / 24 / 2000 09 : 12 pm\nsent by : enron announcements @ enron\nto : ena employees\ncc :\nsubject : associate / analyst super saturday participation - additional request\nadditional interviewer participation is requested for october 28 & november\n4 .\nalso , please note the school / date changes ( in red ) . this change was\nnecessary due to the number of candidates participating in super saturday .\nif you have a change in your participation as a result of the date change ,\nplease contact john harrison , ext . 3 - 7811 for revisions .\nthank you\nshelly jones\nenron managing directors , vice presidents , directors , and managers who\nutilize the associate / analyst pool\nas a follow up from a \" save the date \" email regarding your participation in\nthe associate and analyst super saturday process , now is the time to select\nyour dates to attend and participate .\nbelow are the dates for super saturday weekends during the upcoming\nrecruiting season . if you are houston - based or if you know you will be in\nhouston on business at the appropriate times please click the link below to\nvolunteer .\n( when selecting dates please avoid selecting to interview candidates who\nattend the schools for which you are a team member . )\nassociates analysts\noctober 27 - 28 , 2000 november 3 - 4\nthunderbird , ut , georgetown , rice rice , ut , baylor , a & m , ou , florida , lsu ,\nuhcl\nnovember 10 - 11 , 2000 november , 17 - 18 , 2000\ncolumbia , stern nyu , ucla , darden , cornell penn , uva , vanderbilt , michigan ,\nhoward , auc ,\nvanderbilt , michigan uhmain and clear lake , lsu\ndecember , 1 - 2 , 2000 december 8 - 9 , 20000\nchicago , kellogg , harvard , wharton , mit wellesley , overflow and re - schedules\nfrom previous s / s\n-\nfriday , december 15 , 2000\ncarnegie mellon\nyale off - cycle candidates\nthank you for your support of the associate and analyst programs .\nshelly jones\nrecruiting manager", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.613+0000", "entityId": 8737, "properties": {"text": "Subject: vince ,\nliberty gas storage project - we appreciated the insight from zimin lu on the\nliberty gas storage project . i had originally thought that enron could\nnegotiate a deal directly with hng storage co . on the joint development of\nthese facilities . however , hngs has now retained wasserstein pirella to\n\" market \" the opportunity . [ fyi - wasserstein was the investment banker that\nhandled the recent sale of the market hub partners storage facilities , so\nthey certainly would have a current list of interested parties . ]\nunfortuneately , we will now have to participate in another \" auction \" if we\nare to pursue this further . i ' ll let you know what we decide to do .\nalaska / northern canada pipeline - i would like to discuss ways that enron\nmight enhance our prospect of participating in the initiative to bring\nsubstantial new gas reserves from alaska and northern canada to the lower\n48 . a large equity investment in a very expensive , regulated pipeline is not\nlikely to get much support within enron . instead , our competitive advantage\nmay best be realized through the efficient and creative utilization of the\nexisting us pipeline grid , ( \" backhaul \" on northern natural , expansion\nopportunities on northern border and nng , or even capacity exchanges with\nother pipeline operators ) .\ni think it would be very useful if we had the capability to model the impact\nof the evolving north american marketplace on that initiative , and vice\nversa . any insight we could develop on who will be the eventual \" winners \"\nand \" losers \" if / when that large volume of new gas enters the market would\nbe valuable .\ni will look forward to our discussion tomorrow ( thursday ) at 1 : 30 pm .\nregards , jng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.619+0000", "entityId": 8738, "properties": {"text": "Subject: message from charles shen at williams\ndear vince :\nhow are you ? thanks for coordinating an offer for me .\nas i told stinson early this week , i understand that\nit is a little bit tricky for enron in term of my\nstarting date . to be honest , i am very flexible\nmyself , it really depends on enron . if you want me to\nstart right now , then i would expect enron to\ncompensate for my this year ' s bonus . in this case , it\nis not quite fair for enron , since now we are already\nat the end of october .\nanother option is that we can work out an offer right\nnow , and i can start my new job right after i get my\nbonus from williams , which should be in the very\nbeginning of february . this choice is perfectly fine\nwith me . actually it might be even a little better for\nme since williams has had very good year this year .\nvince , i just want to tell you that i am very\ninterested in your group , and very excited about this\nopportunity . if you have any questions , please feel\nfree to call me at 918 - 409 - 4308 .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! messenger - talk while you surf ! it ' s free .\nhttp : / / im . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.625+0000", "entityId": 8739, "properties": {"text": "Subject: interview with the enron research group\nhello kenneth :\nnice talking to you this morning ! below is your interview schedule for\nmonday , oct . 30 th and directions to the enron bldg . . please let me know\nif you need any travel arrangements made .\ncoming from the northwest part of houston , your best bet would be to\ntake i - 45 into town . there is quite a bit of construction downtown , so you\nwill probably have to take the mckinney exit from i - 45 ( you will need to\nstay in the left lane as you approach town . exit mckinney to smith street ,\ntake a right on smith street go to andrews street , take a right on andrews\n( the enron bldg . is on the left ) , pass the enron bldg . cross \" ruthvan \" ( 1 st\nstop sign ) and pull into the allen center parking garage ( visitors area on\nyour right ) . come to the security desk on the lst floor of the enron bldg .\nand ask for me . they will call me and i will meet you in the elevator lobby\non the 19 th floor .\nmonday , october 30 th\n9 : 00 am vince kaminski , managing director , research\n9 : 30 am zimin lu , director\n10 : 00 am vasant , vice president\n10 : 30 am krishna krishnarao , director\n11 : 00 am paulo issler , manager\n11 : 30 am stinson gibner ( he will take you to lunch )\n1 : 00 pm molly mcgee ( hr recruiter )\nhave a safe trip .\nregards ,\nshirley crenshaw\n( 713 - 853 - 5290 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.629+0000", "entityId": 8740, "properties": {"text": "Subject: super saturday changes - update\ni am sure that all of you have seen the notice sent this morning from\ncharlene jackson , managing director of the associate and analyst program . i\nwanted to follow up with a note to all campus team mds and it team members to\nclarify any confusion surrounding super saturdays and technologist recruiting\nfor the global technology track . although the global technology track is\npart of the analyst and associate program - we will not be participating in\nthe super saturday events listed below . technologist candidates will be\nbrought into the office for a friday office visit .\nsuper saturdays were first initiated for commercial analyst and associate\nrecruiting because many enron representatives were not able to leave their\ndesks while the market was open during the workday . bringing candidates in\nduring the weekend works well in this situation because enron representatives\ncan fully participate in the office visit and candidates can still see the\noffice .\nhowever , many technology vps have suggested that seeing enron \" alive and in\naction \" during the week would be a high selling point for technologist\ncandidates . therefore , we have opted to have technology office visits on\nfridays . the first three office visits are listed below :\nnovember 10 th\ndecember lst\njanuary 19 th\nwe will be sending out more detailed information on how you can become more\ninvolved with technology office visits . i apologize for any confusion .\nplease feel free to contact me with any questions or comments . 3 - 3589 .\nthanks ,\nashley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ashley baxter / corp / enron on 10 / 25 / 2000\n08 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : charlene jackson 10 / 24 / 2000 09 : 20 pm\nsent by : enron announcements\nto : all enron employees north america\ncc :\nsubject : super saturday changes\nthe recruiting season has officially begun . the first super saturday weekend\nis the weekend of october 27 th and 28 th . we have undergone a rigorous\ninterview process on campus , which will allow us to focus on \u0001 however , we are still in need of interviewers for each\nof the super saturdays . please respond with your willingness to interview\nat : http : / / axis . enron . com / notice / ssinvite . asp\n( when selecting dates please avoid selecting to interview candidates who\nattend the schools for which you are a team member ) .\nwe thank you in advance for your participation and support of the program .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.634+0000", "entityId": 8741, "properties": {"text": "Subject: message from john martin\n- - - - - forwarded by cindy derecskey / corp / enron on 10 / 26 / 2000 06 : 32 am - - - - -\n\" john martin \"\n10 / 25 / 2000 06 : 58 pm\nto :\ncc :\nsubject : re : enron case study\ncindy ,\ngreat to hear from you and i look forward to getting our interviews done . i\nam answering this from a hotel in seattle so i don ' t have questions for you\nat this time but can get them together for you . i will contact vince next\nweek and get a set of questions together for each of the three individuals\nyou mentioned . i will have to talk to vince about others who would be of\ninterest to interview . i really appreciate your help in getting this\ntogether and i ' ll work hard to get everything together for you next week . i\ndon ' t have vince ' s e - mail address with me here so i would appreciate your\nforwarding this message on to him for me .\nthanks again ,\njohn\n- - - - - original message - - - - -\nfrom : cindy . derecskey @ enron . com [ mailto : cindy . derecskey @ enron . com ]\nsent : wednesday , october 25 , 2000 11 : 23 am\nto : j _ martin @ baylor . edu\ncc : christie . patrick @ enron . com ; vince . j . kaminski @ enron . com\nsubject : enron case study\nimportance : high\ngood morning mr . martin ,\ni would like to introduce myself . i currently work with christie patrick\nand michael b rosen in the enron university affairs department .\nin recent discussions with christie , she has suggested that i liaise with\nyou and our management in preparation for your and vince kaminski ' s case\nstudy . christie has forwarded recent emails sent by you suggesting a few\nconvenient times that work with your schedule . i will work with our\nmanagement and do my best to schedule one hour time slots for interviews\nthat fit with your outline .\ninitially , i will schedule interviews with : ken lay - chairman and ceo ,\njeff skilling - president and coo , and andy fastow - cfo . if you feel that\nyou may need to speak with additional management , we will definitely try to\nwork something out the same day , so you don ' t have to travel back here . i\nwill forward your project outline to the aforementioned participants once\nthe interviews are scheduled . do you anticipate drafting specific\nquestions ? if so , i would greatly appreciate a copy when convenient .\ni greatly look forward to working with you and i hope that we can touch\nbase very soon .\nregards ,\ncindy derecskey\nenron university affairs\n( 713 ) 853 - 5670", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.639+0000", "entityId": 8742, "properties": {"text": "Subject: re : info about enron ' s bandwidth market\ndear dr . kaminski ,\nthank you for the follow up . i will keep you posted\nwhen i hear from ebs .\njun\nat 05 : 41 pm 10 / 25 / 00 - 0500 , you wrote :\n> martin ,\n>\n> can you , please , call shu and provide him with information about ebs ?\n>\n> vince\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 25 / 2000\n> 05 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> jun shu on 10 / 23 / 2000 07 : 27 : 49 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : info about enron ' s bandwidth market\n>\n>\n> dear dr . kaminski ,\n>\n> i enjoyed your talk this afternoon at ieor very much .\n> i wonder if you could point me to some information\n> resource on enron ' s bandwidth market .\n>\n> i am a ph . d student at ieor . i work with professor\n> oren and professor varaiya from eecs department on\n> the topic of pricing the internet . in particular , i am designing\n> pricing mechanism in the framework of the diffserv\n> architecture which is the latest proposal made by\n> ietf to provide scalable service differentiation .\n> i would very much like to get in touch with people\n> in enron working on the similar topics .\n>\n> thank you very much .\n>\n> jun shu\n> http : / / www . ieor . berkeley . edu / ~ jshu\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.644+0000", "entityId": 8743, "properties": {"text": "Subject: info about enron ' s bandwidth market\nmartin ,\ncan you , please , call shu and provide him with information about ebs ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 25 / 2000\n05 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njun shu on 10 / 23 / 2000 07 : 27 : 49 pm\nto : vkamins @ enron . com\ncc :\nsubject : info about enron ' s bandwidth market\ndear dr . kaminski ,\ni enjoyed your talk this afternoon at ieor very much .\ni wonder if you could point me to some information\nresource on enron ' s bandwidth market .\ni am a ph . d student at ieor . i work with professor\noren and professor varaiya from eecs department on\nthe topic of pricing the internet . in particular , i am designing\npricing mechanism in the framework of the diffserv\narchitecture which is the latest proposal made by\nietf to provide scalable service differentiation .\ni would very much like to get in touch with people\nin enron working on the similar topics .\nthank you very much .\njun shu\nhttp : / / www . ieor . berkeley . edu / ~ jshu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.649+0000", "entityId": 8744, "properties": {"text": "Subject: re : yaron ' s resume\nkevin ,\ni would greatly appreciate if you could help me in this case . yaron ' s father\nhelped me\na lot to open many doors at berkeley .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 25 / 2000\n05 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncharlene jackson @ enron\n10 / 24 / 2000 05 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc : kevin hannon / enron communications @ enron communications , kristin\ngandy / na / enron @ enron , shelly jones / hou / ect @ ect\nsubject : re : yaron ' s resume\nvince ,\nkevin hannon is the executive lead for cornell and he needs to approve . i\nam not sure if they have already interviewed on campus . he should go through\nthe on - campus screening process before attending a super saturday . we are\nreserving the super saturday weekend for individuals that are highly likely\nto receive an offer . i will forward this to kevin and kristin gandy .\nalthough they are responsible for graduate recruiting at cornell , perhaps it\nis possible for him to interview when they go on campus .\ncharlene\nkevin and kristin ,\nplease see vince ' s message below . would it be possible for an undergraduate\nto interview while you are at cornell ? please let me know .\nthanks\nvince j kaminski @ ect\n10 / 24 / 2000 04 : 37 pm\nto : charlene jackson / corp / enron @ enron\ncc : mary alison bailey / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : yaron ' s resume\ncharlene ,\nplease , help . this is a son of a professor at berkeley who helps me a lot in\nthe recruiting process .\nhis son goes to cornell . can we invite him ( the son , not the professor ) to a\nsuper saturday ? i really want\nto repay the debt to his father who is very instrumental in my recruiting\nefforts .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 24 / 2000\n04 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shmuel oren \" on 10 / 23 / 2000 04 : 37 : 25 pm\nto :\ncc :\nsubject : yaron ' s resume\n?\n- yaron - resume 3 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.654+0000", "entityId": 8745, "properties": {"text": "Subject: re : john martin - baylor\ncindy ,\ni am in wharton on december 6 . other days prior to dec 6 are ok .\nvince\nfrom : mark palmer @ enron on 10 / 25 / 2000 10 : 33 am\nsent by : cindy derecskey @ enron\nto : vince j kaminski / hou / ect @ ect\ncc : christie patrick / hou / ect @ ect\nsubject : john martin - baylor\ngood morning vince ,\nchristie has suggested that i be the liaison for john martin and your\nresearch project ' enron - case study of a company reinventing itself ' .\nin john ' s lastest email , he suggested that the first week of december works\nwith his schedule - up to december 6 th - or the following couple of weeks\nafter dec . 8 th . do these dates work for you as well ? if so , i will proceed\nin booking one hour sessions with the following enron management :\nken lay\njeff skilling\nandy fastow\nif these dates do not work for you let me know when you are available and i\nwill try to coordinate with john , jeff , ken and andy . also , i will send an\nintroductory email to john .\ni ' m looking forward to hearing from you ,\ncindy derecskey\n3 - 5670", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.659+0000", "entityId": 8746, "properties": {"text": "Subject: re : enron finance conference sponsorship\nthis is great . . . . i ' ll get it on the calendar . . . . thanks .\nfrom : michele nezi marvin @ enron communications on 10 / 25 / 2000 02 : 13 pm\nto : kristin gandy , jeffrey a shankman / hou / ect @ ect\ncc :\nsubject : re : enron finance conference sponsorship\nthis is exciting news . suresh must really want a job with us ! ! jeff - are\nyou in to be the speaker on the panel ? it is friday , december 8 .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\n- - - - - forwarded by michele nezi marvin / enron communications on 10 / 25 / 00 02 : 11\npm - - - - -\nsureshb @ wharton . upenn . edu\n10 / 25 / 00 02 : 05 pm\nplease respond to sureshb\nto : michele nezi marvin / enron communications @ enron communications\ncc :\nsubject : re : enron finance conference sponsorship\nhi michele\ni am writing to confirm that enron will be participating in the\nsales / trading\npanel .\ni have some great news . we have decided to give enron the sponsorship\nspot for the sales and trading panel .\nkey benifits of being a panel sponsor\n- a big enron banner can be displayed indicating that you are the official\nsponsor of the entire sales / trading panel\n- mention in the program guide and all other conference material\n- in addition to the panelist spot on the sales / trading panel , enron\ngets to open the panel session with a 15 - 20 min presentation on general\ntrends in the sales and trading industry , an excellent opportunity\nfor a senior person from enron to address the audience .\nalso for folks from enron coming to the conference we have hotel rooms\nblocked at a discount price at the park hyatt .\ni will be getting you a lot of the details with regards to logistics for the\npanel and enrons participation in the conference in the coming weeks . .\nonce again , i would like to thank you for the sponsorship and presence at\nthe finance conference .\nlooking forward to it . .\nregards\nsuresh balasubramanian\n215 - 893 - 9491\n> - - - - - original message - - - - -\n> from : michele _ nezi _ marvin @ enron . net\n> [ mailto : michele _ nezi _ marvin @ enron . net ]\n> sent : friday , october 20 , 2000 5 : 31 am\n> to : sureshb @ wharton . upenn . edu\n> cc : kristin _ gandy @ enron . net ; jeffrey _ a _ shankman @ ect . enron . net\n> subject : enron finance conference sponsorship\n>\n>\n>\n>\n> please see attached for our sponsorship form . can you let me\n> know asap which\n> panel we are on - i think we would be a great contributer to\n> either the sales\n> and trading or corporate finance panels . looking forward to a\n> great conference .\n>\n> ( see attached file : finance conference form . doc )\n>\n> michele nezi marvin\n> manager\n> enron broadband services\n> ( 713 ) 853 - 6848\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.665+0000", "entityId": 8747, "properties": {"text": "Subject: re : yaron ' s resume\nalison ,\nthanks a lot .\nvince\nenron north america corp .\nfrom : mary alison bailey 10 / 25 / 2000 10 : 47 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : yaron ' s resume\ni promise we will do everything we can . right now kristin ' s assistant , alyse\nherasimchuk , has a call the cornell career office to put him on the\nschedule . if that doesn ' t work , kristin will ask for the interviewers to\nstay longer to interview him . will let you know as soon as we do .\nthanks for everything you do for us .\nalison\nvince j kaminski\n10 / 25 / 2000 10 : 02 am\nto : mary alison bailey / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : yaron ' s resume\nalison ,\ni appreciate it . i really need your help on this one . his father is very\nhelpful in my recruiting\nefforts at berkeley .\nvince\nenron north america corp .\nfrom : mary alison bailey 10 / 25 / 2000 09 : 38 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : yaron ' s resume\ncorrection - i was going too fast last night ( you said cornell not carneige\nmellon ) . cornell interviews are monday , october 30 & tuesday , october 31 . we\nare faxing shmuel oren ' s resume to kristin and checking to see if there is\nany time on the closed schedule , or if the interviewers will stay longer to\ninclude him . i will let you know today if we can make it work .\nsorry my first e - mail was incorrect .\nvince j kaminski\n10 / 24 / 2000 04 : 37 pm\nto : charlene jackson / corp / enron @ enron\ncc : mary alison bailey / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : yaron ' s resume\ncharlene ,\nplease , help . this is a son of a professor at berkeley who helps me a lot in\nthe recruiting process .\nhis son goes to cornell . can we invite him ( the son , not the professor ) to a\nsuper saturday ? i really want\nto repay the debt to his father who is very instrumental in my recruiting\nefforts .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 24 / 2000\n04 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shmuel oren \" on 10 / 23 / 2000 04 : 37 : 25 pm\nto :\ncc :\nsubject : yaron ' s resume\n?\n- yaron - resume 3 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.669+0000", "entityId": 8748, "properties": {"text": "Subject: re : baylor - enron case study\ncindy ,\nyes , i shall co - author this paper and i have planted the idea in john\nmartin ' s head .\nvince\nfrom : cindy derecskey @ enron on 10 / 25 / 2000 11 : 38 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : baylor - enron case study\nvince ,\ni forgot to inquire whether you would also like to be present during the\ninterview process with john martin and ken , jeff and andy ?\nlet me know . . . . thanks ,\ncindy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.674+0000", "entityId": 8749, "properties": {"text": "Subject: re : uc - berkeley graduate student\nthank you for your email .\ni look forward to hearing from you .\nsincerely ,\nrajnish\non tue , 24 oct 2000 vince . j . kaminski @ enron . com wrote :\n>\n> rajnish ,\n>\n> we shall invite you for an interview in houston .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> rajnish kamat on 10 / 23 / 2000 07 : 55 : 31 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : uc - berkeley graduate student\n>\n>\n> dr . vincent kaminski\n> managing director and head of research\n> enron corp .\n>\n> dear dr . kaminski ,\n> it was a pleasure talking with you and attending your talk today .\n> i am a graduate student in industrial engg . and operations\n> research working with prof . shmuel oren\n> on topics in financial instrument pricing and design of\n> contracts in deregulated electricity markets . i am also\n> doing research in auction models and computable equilibrium\n> models with applications in electricity market design .\n>\n> i am planning to graduate with a ph . d . in may 2001 and would\n> appreciate hearing about any opportunities in your group at enron .\n> i am attaching at copy of my resume ( file : cvrkamat . doc ) for your perusal .\n>\n> thanking you ,\n> sincerely ,\n>\n> rajnish kamat\n> graduate student\n> ieor , uc - berkeley\n>\n> 4135 , etcheverry hall\n> dept . of industrial engineering and operations research\n> university of california at berkeley\n> berkeley , ca , 94710\n>\n> ( see attached file : cvrkamat . doc )\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.679+0000", "entityId": 8750, "properties": {"text": "Subject: re : opportunities\nthanks vince .\ni have contacted him and have given him your phone number .\nhe will attempt to contact you thursady or friday .\ngood luck .\nvince j kaminski\n10 / 24 / 2000 03 : 59 pm\nto : lloyd will / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : opportunities\nlloyd ,\nyes , i would be very interested .\nvince\nlloyd will\n10 / 24 / 2000 02 : 45 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : opportunities\nvince would you be interested in this professional .\ni would be glad to facilitate a conference call .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lloyd will / hou / ect on 10 / 24 / 2000 02 : 43 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sheble , g . b . \" on 10 / 17 / 2000 04 : 52 : 57 pm\nto : \" ' lloyd . will @ enron . com ' \"\ncc :\nsubject : re : opportunities\nloyd\ni tried to call yesterday , but you were out of the office . my schedule\nfollows , would you want to pick a time for me to call you or send me a list\nof times to pick ?\ngerry\nfall 2000 teaching schedule\nee 553 mtwr 10 - 11 am curtis hall 308\nengr 161 mw 2 - 4 howe hall 2228\nother commitments\nm 11 - 12 ep & es\nm 1 - 2 office hours\nt 12 - 2 ep & es seminar\nt 2 - 3 office hours\nt 3 - 4 pserc\nt 5 - 6 epri - dod\nw 11 - 12 office hours\nw 4 - 9 dsm\nr 11 - 12 office hours\nf 11 - 12 p & t\nf 1 - 3 cas\nf 3 - 4 departmental meeting\n- - - - - original message - - - - -\nfrom : lloyd . will @ enron . com [ mailto : lloyd . will @ enron . com ]\nsent : monday , october 16 , 2000 8 : 00 am\nto : sheble , g . b .\nsubject : re : opportunities\ngive me a call any time to discuss things .\n713 - 853 - 3383 .\nthanks .\n\" sheble , g . b . \" on 10 / 15 / 2000 02 : 17 : 02 pm\nto : lloyd will / hou / ect @ ect\ncc :\nsubject : re : opportunities\nlloyd\ni am attaching another resume for your review , please pass it along if\nthere\nis any interest .\ni would also like to discuss opportunities with you as i expect to graduate\nwith my mba summer 2001 .\ncordially ,\ngerry\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngerald b . shebl ,\nprofessor , electrical and computer engineering\ndirector of complex adaptive systems program\n1115 coover hall\names , iowa 50011\nvoice : 515 . 294 . 3046\nfax : 515 . 294 . 4263\nemail : gsheble @ iastate . edu\nweb : http : / / www . ee . iastate . edu / ~ sheble /\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.684+0000", "entityId": 8751, "properties": {"text": "Subject: enron case study\ngood morning mr . martin ,\ni would like to introduce myself . i currently work with christie patrick and\nmichael b rosen in the enron university affairs department .\nin recent discussions with christie , she has suggested that i liaise with you\nand our management in preparation for your and vince kaminski ' s case study .\nchristie has forwarded recent emails sent by you suggesting a few convenient\ntimes that work with your schedule . i will work with our management and do\nmy best to schedule one hour time slots for interviews that fit with your\noutline .\ninitially , i will schedule interviews with : ken lay - chairman and ceo , jeff\nskilling - president and coo , and andy fastow - cfo . if you feel that you\nmay need to speak with additional management , we will definitely try to work\nsomething out the same day , so you don ' t have to travel back here . i will\nforward your project outline to the aforementioned participants once the\ninterviews are scheduled . do you anticipate drafting specific questions ? if\nso , i would greatly appreciate a copy when convenient .\ni greatly look forward to working with you and i hope that we can touch base\nvery soon .\nregards ,\ncindy derecskey\nenron university affairs\n( 713 ) 853 - 5670", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.689+0000", "entityId": 8752, "properties": {"text": "Subject: re : \" white paper \"\nvince & vasant ,\nthe enclosed document discusses the incorporation of detailed ensemble\noutputs into our mark - to - marketing routines . in the next few days i will\nschedule an update on smud and perhaps we could spend a few minutes\ndiscussing how to proceed with this .\njoe\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 10 / 26 / 2000\n12 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nplease respond to dchang @ aer . com\nto : joseph . hrgovcic @ enron . com\ncc :\nsubject : re : \" white paper \"\ndr . hrgovcic ,\nwe look forward to your comments .\nd . chang\njoseph . hrgovcic @ enron . com wrote :\n>\n> dr chang ,\n>\n> thank you for the white paper . i have distributed\n> it to most of the parties concerned ( the head of our research department is\n> away this week ) and am gathering feedback on how to proceed . i will be at a\n> conference next week , but i hope to get back to you on the week of the\n> 30 th .\n>\n> yours truly ,\n>\n> joseph hrgovcic", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.695+0000", "entityId": 8753, "properties": {"text": "Subject: presentation on metals\n- - - - - - - - - - - - - - - - - - - - - - forwarded by leann walton / na / enron on 10 / 26 / 2000 10 : 52\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalison sealy on 10 / 09 / 2000 10 : 37 : 40 am\nto : mraymon @ enron . com\ncc :\nsubject : presentation on metals\nhi maureen ,\nit was good to meet you last week and hear your presentation on the metals -\nfull of advice on what to think about and all the various things that affect\nthe market place . i am only sorry i had to dash off to the airport - good\njob i left when i did though as check - in took ages !\nanyway , please could you send me through a copy of that presentation either\non email or if it is located on the network somewhere then i could access it\nover the intranet ? i will be joining the lme conference tomorrow so am\ncurrently trying to do a bit of reading in preparation .\nthanks very much in advance & look forward to seeing the presentation over\nhere in london .\nkind regards\nalison", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.701+0000", "entityId": 8754, "properties": {"text": "Subject: meeting while in houston\n- - - - - - - - - - - - - - - - - - - - - - forwarded by leann walton / na / enron on 10 / 26 / 2000 10 : 51\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\npedro fernando manrique @ enron _ development\n09 / 26 / 2000 12 : 26 pm\nto : maureen raymond @ ect\ncc :\nsubject : meeting while in houston\nmaureen ,\ni just wanted to thank you for all your time and your great advice and\nsupport . i enjoyed talking to you and learning from your experience and also\nmeeting all these people involved in f / x trading activities .\ni just want to ask you if you could send me over the mail the latest forward\ncurves so that we use them to update our long - term plan . for the short term i\nwill contact pushkar going forward .\nthanks again and i look forward to talk to you again .\nregards ,\npedro fernando", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.706+0000", "entityId": 8755, "properties": {"text": "Subject: re : e - strategy for metals trading\n- - - - - - - - - - - - - - - - - - - - - - forwarded by leann walton / na / enron on 10 / 26 / 2000 10 : 50\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jeffrey a shankman @ ect on 10 / 25 / 2000 03 : 28 pm\nto : maureen raymond / hou / ect @ enron\ncc :\nsubject : re : e - strategy for metals trading\nthanks fo rthe update . jeff\nmaureen raymond @ enron\n10 / 25 / 2000 02 : 58 pm\nsent by : gwyn koepke @ enron\nto : john sherriff / lon / ect @ ect , larry lawyer / enron communications @ enron\ncommunications , jeffrey a shankman / hou / ect @ ect , mike\nmccullough / et & s / enron @ enron\ncc : bob schorr / hou / ect @ ect\nsubject : e - strategy for metals trading\nattached is an article from yesterday ' s ft regarding the efforts by a\nconsortia of four major international metals and mining producers to develop\nan internet marketplace for producers and consumers . as we come across this\ntype of information to keep you abreast of developments in the commodity\nmarkets , we will pass it along .\nmaureen raymond - castaneda", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.711+0000", "entityId": 8756, "properties": {"text": "Subject: re : nikkei and pko\n- - - - - - - - - - - - - - - - - - - - - - forwarded by leann walton / na / enron on 10 / 26 / 2000 10 : 48\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : darren delage @ enron on 10 / 24 / 2000 02 : 30 pm ze 9\nto : maureen raymond / hou / ect @ ect\ncc :\nsubject : re : nikkei and pko\nthis information has been most useful ! thank you maureen and please keep me\ninformed of any changes in pko policy , as we are right at levels were\neveryone is watching for intervention .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.716+0000", "entityId": 8757, "properties": {"text": "Subject: magic 15 , 000 level on nikkei\n- - - - - - - - - - - - - - - - - - - - - - forwarded by leann walton / na / enron on 10 / 26 / 2000 10 : 47\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : darren delage @ enron on 10 / 16 / 2000 02 : 53 pm ze 9\nto : maureen raymond / hou / ect @ ect\ncc :\nsubject : magic 15 , 000 level on nikkei\nmaureen ,\nhope all is well . thank you for your coverage last week . i certainly\nappreciate the value - added that you provide in your research . i had a quick\nquestion for you regarding any anticipated japan central bank intervention at\nthe 15 , 000 level in the nikkei .\nif i am understanding the mechanism correctly , bis reserve requirements fall\nbelow certain threshold and banks can no longer lend money and meet bis\nlending criteria due to improper reserve base . and this roughly happens at\n15 , 000 level ?\nreason i ask is goldman sachs put out an article suggesting that\nbreak - evenpoint for bank holding of stocks is roughly 12 , 000 - 12 , 500 a\ndifferent index level than the one you have mentioned .\ni can appreciate the difference between reserve liquidity and actual\nbreak - even on equity positions , but just wanted to clarify this point with\nyou , as we are trying to gain a complete understanding of how a trigger would\neffect japanese capital markets . and so , as i currently understand it , there\nare ( 2 ) trigger levels to watch :\n15 , 000 where banks fail bis criteria and hence cannot extend new loans with\nbis stamp of approval . clearly ctl bank would have incentive in restoring\nthis or else financial system would be thrown into turmoil .\n12500 where banks begin to take an actual loss on equity holdings\nis this right ?\nthanks maureen , take care ,\ndarren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.724+0000", "entityId": 8758, "properties": {"text": "Subject: the expertfinder is here ! !\nintroducing expertfinder . the expertfinder enables you to identify critical\nskills and mobilize enron ' s intellectual capital . by utilizing this powerful\nintranet search engine , you can locate people within the enron community by\norganization structure , skills , reporting relationships , languages , school\nattended , and prior work experience .\nto access expertfinder go to https : / expertfinder . enron . com on the enron\nintranet . expertfinder is only as good as the data stored in it . does your\ndata or the data for your business unit need updating ? go to\nehronline . enron . com or home . enron . co . uk / home . asp ( london only ) to update your\ndata today . view changes in expertfinder tomorrow !\ndue to the sensitivity of this data , we are initially previewing this tool to\nonly managing directors & above , as well as key people in the hr community .\nwe want your feedback on how expertfinder can be further enhanced . try it\nout and give us your thoughts by sending an email to expertfinder @ enron . com !\nfinally , you will have the opportunity to work with your hr leaders to review\nand expand the template that is used to store the types of skills that are\nrelevant for your business . if you want to be able to search on certain\ncriteria , let us know and the template will be updated immediately .\ngot information ? we provide the tool , expertfinder . enron . com , you provide\nthe data , ehronline . enron . com .\ntheexpertfinderand ehronline - helping to empower you !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.731+0000", "entityId": 8759, "properties": {"text": "Subject: john d . martin - chair of finance at baylor university\ngood afternoon ladies ,\ni am working with vince kaminski , director of research , enron corp . and john\nmartin , chair of finance at baylor university to schedule one hour time slots\nwith ken lay , jeff skilling and andy fastow .\nvince and john martin are jointly authoring a 20 - 40 page paper , written in\nthe style of a harvard business review piece , about ' transforming enron\ncorporation as an act of managerial will - the value of active management ' .\nattached below you will find a brief outline of the proposed case study ,\nalthough i have requested john martin to provide us with the specific\nquestions he will be asking all three participants .\nwe would like to schedule the one hour interviews on the following dates :\nmonday , december 4 th\ntuesday , december 5 th\nweek of december 11 th\nplease let me know at your earliest convenience which of the above - mentioned\ndates / times works best with everyone ' s calendar . thanks a million .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.736+0000", "entityId": 8760, "properties": {"text": "Subject: approval for reviewer\ncrenshaw , shirley j has suggested reviewers and submitted them for your\napproval . your may review / modify this list of reviewers by logging on to pep\nat http : / / pep . corp . enron . com and going to supervisor services . please\nremember , no feedback can be completed on crenshaw , shirley j until you have\napproved the list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.742+0000", "entityId": 8761, "properties": {"text": "Subject: re : further actions on anjam ' s departure\nanjam has told me he is not going to an energy competitor ( he mentioned\nweather derivatives as a the only overlap . i therefore see this as low risk\nfrom a security point of view , so let ' s make sure handover is thorough . you\nmight focus our security efforts on his access to weather - related info .\nrichard\nsteven leppard\n26 / 10 / 2000 17 : 06\nto : melanie doyle / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , dale surbey / lon / ect @ ect , richard\nlewis / lon / ect @ ect\nsubject : further actions on anjam ' s departure\nhi mel\nfurther to our earlier discussions here ' s the full list of actions we ' d like\nto put into place regarding anjam ' s departure :\nhr - type stuff :\n1 . get anjam off the trading floor as soon as possible . there is no need for\nhim to remain on the floor . this will need to be delayed until it number 1\nis completed ( cataloguing his work ) .\n2 . determine where anjam is heading . we need to know who is going to know\nour positions and curves next .\n3 . remove his security pass , and insist that he is always accompanied when in\nthe building . sharad is to sit with him while he catalogues his work .\nit - type stuff :\n1 . ask him to catalogue the contents of his h : drive , since the rest of the\ngroup will need to support his work in the future . this should take no more\nthan a day or two .\n2 . get it to obtain their backups of anjam ' s h : drive for weekly intervals\nover the last two months . this will allow us to determine what he has\ndeleted .\n3 . get it to provide a snapshot of anjam ' s notes folders , and provide records\nof mail sent out to the internet over the last couple of months . i ' m worried\nabout code / data he may have zipped up and mailed out .\n4 . ask it to use a utility program to determine what has been deleted from\nanjam ' s c : drives . there may be useful info here too .\n5 . revoke all internet access , whether via explorer or notes mail .\n6 . get a record of all files he has printed over the last couple of months .\nvince has ok ' d this lot , so let ' s do it asap .\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.747+0000", "entityId": 8762, "properties": {"text": "Subject: re : pound sterling economic analysis 30 august 2000\n- - - - - - - - - - - - - - - - - - - - - - forwarded by leann walton / na / enron on 10 / 26 / 2000 10 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmaureen raymond\n09 / 11 / 2000 04 : 01 pm\nto : trena mcfarland / lon / ect @ ect @ enron\ncc :\nsubject : re : pound sterling economic analysis 30 august 2000\nthanks ,\ni hope everything is fine in ny !\nsay hello to the big apple for me .\nregards ,\nmaureen\np . s . i still owe you sushi ! ! ! i worked until 7 : 30 p . m . on that friday in\nlondon when i invited\nyou out for drinks . by the time i called you were gone for the day . sorry .\ntrena mcfarland @ ect\n09 / 08 / 2000 03 : 39 pm\nto : maureen raymond / hou / ect @ enron\ncc :\nsubject : re : pound sterling economic analysis 30 august 2000\nthis was a great summary !\nt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.751+0000", "entityId": 8763, "properties": {"text": "Subject: re : research meeting\nsteve ,\nyes . i shall try to call you later this morning . i had a schedule from hell\nthe last few days .\nvince\nsteven leppard\n10 / 26 / 2000 08 : 45 am\nto : john sherriff / lon / ect @ ect , michael r brown / lon / ect @ ect , richard\nlewis / lon / ect @ ect , joe gold / lon / ect @ ect , tani nath / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , sarah jane white / lon / ect @ ect , lauren\nurquhart / lon / ect @ ect , kirsten nelz / lon / ect @ ect , sarah knott / lon / ect @ ect ,\nfiona stewart / lon / ect @ ect\nsubject : research meeting\nall\njohn sherriff has suggested we all get together in the near future to discuss\nthe demands being placed on the research group . i will be making a request\nfor additional resources , and the aim of the meeting is to determine the most\nappropriate size for the team .\nassistants : can we aim for week commencing 6 th november ?\nvince : would you like to teleconference in ?\nmany thanks\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.755+0000", "entityId": 8764, "properties": {"text": "Subject: research meeting\nall\njohn sherriff has suggested we all get together in the near future to discuss\nthe demands being placed on the research group . i will be making a request\nfor additional resources , and the aim of the meeting is to determine the most\nappropriate size for the team .\nassistants : can we aim for week commencing 6 th november ?\nvince : would you like to teleconference in ?\nmany thanks\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.760+0000", "entityId": 8765, "properties": {"text": "Subject: re : actions on anjam ' s resignation\ni will sit anjam down before he leaves and explain the confidentiality\nprovisions in his contract and that we will pursue them vigorously . melanie\n- can you give me a copy , steve , let me know when he is leaving - i ' ll do it\ncloser to the time .\nrichard\nsteven leppard\n26 / 10 / 2000 10 : 13\nto : dale surbey / lon / ect @ ect , vince j kaminski / hou / ect @ ect , melanie\ndoyle / lon / ect @ ect\ncc : richard lewis / lon / ect @ ect , simon hastings / lon / ect @ ect\nsubject : actions on anjam ' s resignation\nall\nmy preferred approach to dealing with anjam ' s departure is given below .\nthese recommendations are informed by the fact that i don ' t feel anjam has\nmuch to offer his next employer , except what code and data he can remove from\nenron :\nhr - type stuff :\n1 . get anjam off the trading floor as soon as possible . there is no need for\nhim to remain on the floor .\n2 . determine where anjam is heading . we need to know who is going to know\nour positions and curves next .\nit - type stuff :\n1 . ask him to catalogue the contents of his h : drive , since the rest of the\ngroup will need to support his work in the future . this should take no more\nthan a day or two .\n2 . get it to obtain their backups of anjam ' s h : drive for weekly intervals\nover the last two months . this will allow us to determine what he has\ndeleted .\n3 . get it to provide a snapshot of anjam ' s notes folders , and provide records\nof mail sent out to the internet over the last couple of months . i ' m worried\nabout code / data he may have zipped up and mailed out .\n4 . ask it to use a utility program to determine what has been deleted from\nanjam ' s c : drives . there may be useful info here too .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.764+0000", "entityId": 8766, "properties": {"text": "Subject: interview\ndear dr . kaminski\ni would like to thank for the interview opportunity at enron . it was very nice\nand pleasant to talk with very talented people .\ni wish this interview develop to the further stage of the opportunity .\nas matter of fact , i have started the current job at kansas city with an\ninternship expiring november 3 rd . i got an permanent job offer from them and i\nthink i should decide whether to accept the offer or not very soon . but after\ni visited enron , i feel that i want to pursue my career development at enron\nfor many reasons .\nso if the decision process is made soon , i will appreciate it greatly . ( i\napologize for the hurry . i already sent a message regarding my situation to\nmolly a minute ago . )\nthank you very much .\nsincerely ,\njaesoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.769+0000", "entityId": 8767, "properties": {"text": "Subject: fw : opportunities\ndear sir :\ni have attached my resume for your review . i have meetings from 8 - 9 , and\n10 - 2 tomorrow . when would it be best for me to call you ?\ncordially ,\ngerry\n- - - - - original message - - - - -\nfrom : lloyd . will @ enron . com [ mailto : lloyd . will @ enron . com ]\nsent : wednesday , october 25 , 2000 12 : 12 pm\nto : vince . j . kaminski @ enron . com\ncc : gsheble @ iastate . edu\nsubject : re : opportunities\nthanks vince .\ni have contacted him and have given him your phone number .\nhe will attempt to contact you thursady or friday .\ngood luck .\nvince j kaminski\n10 / 24 / 2000 03 : 59 pm\nto : lloyd will / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : opportunities ( document link : lloyd will )\nlloyd ,\nyes , i would be very interested .\nvince\nlloyd will\n10 / 24 / 2000 02 : 45 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : opportunities\nvince would you be interested in this professional .\ni would be glad to facilitate a conference call .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lloyd will / hou / ect on 10 / 24 / 2000 02 : 43\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sheble , g . b . \" on 10 / 17 / 2000 04 : 52 : 57 pm\nto : \" ' lloyd . will @ enron . com ' \"\ncc :\nsubject : re : opportunities\nloyd\ni tried to call yesterday , but you were out of the office . my schedule\nfollows , would you want to pick a time for me to call you or send me a list\nof times to pick ?\ngerry\nfall 2000 teaching schedule\nee 553 mtwr 10 - 11 am curtis hall 308\nengr 161 mw 2 - 4 howe hall 2228\nother commitments\nm 11 - 12 ep & es\nm 1 - 2 office hours\nt 12 - 2 ep & es seminar\nt 2 - 3 office hours\nt 3 - 4 pserc\nt 5 - 6 epri - dod\nw 11 - 12 office hours\nw 4 - 9 dsm\nr 11 - 12 office hours\nf 11 - 12 p & t\nf 1 - 3 cas\nf 3 - 4 departmental meeting\n- - - - - original message - - - - -\nfrom : lloyd . will @ enron . com [ mailto : lloyd . will @ enron . com ]\nsent : monday , october 16 , 2000 8 : 00 am\nto : sheble , g . b .\nsubject : re : opportunities\ngive me a call any time to discuss things .\n713 - 853 - 3383 .\nthanks .\n\" sheble , g . b . \" on 10 / 15 / 2000 02 : 17 : 02 pm\nto : lloyd will / hou / ect @ ect\ncc :\nsubject : re : opportunities\nlloyd\ni am attaching another resume for your review , please pass it along if\nthere\nis any interest .\ni would also like to discuss opportunities with you as i expect to graduate\nwith my mba summer 2001 .\ncordially ,\ngerry\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngerald b . shebl ,\nprofessor , electrical and computer engineering\ndirector of complex adaptive systems program\n1115 coover hall\names , iowa 50011\nvoice : 515 . 294 . 3046\nfax : 515 . 294 . 4263\nemail : gsheble @ iastate . edu\nweb : http : / / www . ee . iastate . edu / ~ sheble /\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n- short _ resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.774+0000", "entityId": 8768, "properties": {"text": "Subject: re : fw : opportunities\nvince\ni went through my secretary ' s things and found the following number :\n713 . 853 . 3848\nis this the number to use ?\nthanks\ngerry\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , october 26 , 2000 5 : 48 pm\nto : gsheble @ iastate . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : fw : opportunities\ngerry ,\nthe best time is morning , 7 : 30 to 8 : 30 central .\nvince\n\" sheble , g . b . \" on 10 / 26 / 2000 05 : 43 : 28 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : fw : opportunities\ndear sir :\ni have attached my resume for your review . i have meetings from 8 - 9 , and\n10 - 2 tomorrow . when would it be best for me to call you ?\ncordially ,\ngerry\n- - - - - original message - - - - -\nfrom : lloyd . will @ enron . com [ mailto : lloyd . will @ enron . com ]\nsent : wednesday , october 25 , 2000 12 : 12 pm\nto : vince . j . kaminski @ enron . com\ncc : gsheble @ iastate . edu\nsubject : re : opportunities\nthanks vince .\ni have contacted him and have given him your phone number .\nhe will attempt to contact you thursady or friday .\ngood luck .\nvince j kaminski\n10 / 24 / 2000 03 : 59 pm\nto : lloyd will / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : opportunities ( document link : lloyd will )\nlloyd ,\nyes , i would be very interested .\nvince\nlloyd will\n10 / 24 / 2000 02 : 45 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : opportunities\nvince would you be interested in this professional .\ni would be glad to facilitate a conference call .\nthanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lloyd will / hou / ect on 10 / 24 / 2000 02 : 43\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sheble , g . b . \" on 10 / 17 / 2000 04 : 52 : 57 pm\nto : \" ' lloyd . will @ enron . com ' \"\ncc :\nsubject : re : opportunities\nloyd\ni tried to call yesterday , but you were out of the office . my schedule\nfollows , would you want to pick a time for me to call you or send me a list\nof times to pick ?\ngerry\nfall 2000 teaching schedule\nee 553 mtwr 10 - 11 am curtis hall 308\nengr 161 mw 2 - 4 howe hall 2228\nother commitments\nm 11 - 12 ep & es\nm 1 - 2 office hours\nt 12 - 2 ep & es seminar\nt 2 - 3 office hours\nt 3 - 4 pserc\nt 5 - 6 epri - dod\nw 11 - 12 office hours\nw 4 - 9 dsm\nr 11 - 12 office hours\nf 11 - 12 p & t\nf 1 - 3 cas\nf 3 - 4 departmental meeting\n- - - - - original message - - - - -\nfrom : lloyd . will @ enron . com [ mailto : lloyd . will @ enron . com ]\nsent : monday , october 16 , 2000 8 : 00 am\nto : sheble , g . b .\nsubject : re : opportunities\ngive me a call any time to discuss things .\n713 - 853 - 3383 .\nthanks .\n\" sheble , g . b . \" on 10 / 15 / 2000 02 : 17 : 02 pm\nto : lloyd will / hou / ect @ ect\ncc :\nsubject : re : opportunities\nlloyd\ni am attaching another resume for your review , please pass it along if\nthere\nis any interest .\ni would also like to discuss opportunities with you as i expect to graduate\nwith my mba summer 2001 .\ncordially ,\ngerry\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngerald b . shebl ,\nprofessor , electrical and computer engineering\ndirector of complex adaptive systems program\n1115 coover hall\names , iowa 50011\nvoice : 515 . 294 . 3046\nfax : 515 . 294 . 4263\nemail : gsheble @ iastate . edu\nweb : http : / / www . ee . iastate . edu / ~ sheble /\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n( see attached file : short _ resume . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.780+0000", "entityId": 8769, "properties": {"text": "Subject: re : trying to find fat tails\nnaveen ,\ni was trying to find \" fat tails \" . i looked at ng prompt month prices '\nlog - returns for 5 years 9 months .\non the figure below you can see the comparison of empirical cumulative\nprobability function with normal\ncumulative for this time series ( standardized : mean subtracted , divided by\nstdev ) . the effect of fat tails\nis not pronounced so much . the \" fat tails \" effect was much more visible on\nyour plot when you looked at the\noct - 00 prices log - returns versus my time series of prompt month ' s prices .\nthe shape of the distribution is different from normal , though , and fits well\nwith the volatility switching model .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.785+0000", "entityId": 8770, "properties": {"text": "Subject: weather article has been approved - - need to send photos\ngary & seth ,\nthumbs up on the fow article . many thanks for working through it with me . . .\njoe\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 10 / 26 / 2000\n11 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njane sandiford on 10 / 25 / 2000 06 : 26 : 32 am\nto : joseph . hrgovcic @ enron . com\ncc :\nsubject : weather article - photos ?\ndear joseph ,\nthank you so much for sending me such an interesting article on the internet\nand weather derivatives . i really enjoyed reading it !\ni just have one final question - do you have a photograph of yourself ( or\nthe other authors ) that you could send me ? tif , gif or jpeg files are fine\nso long as they are 300 dpi .\nthanks again and i hope to hear from you soon .\nbest regards ,\njane\njane sandiford\ndeputy editor\nfow magazine\ntel : 0207 827 6493\nfax : 0207 827 6413\nemail : jsandiford @ fow . com\n* * disclaimer * *\nthe contents of this e - mail is sent to the addressee only and may contain\ninformation that is confidential .\npersons other than the addressee should not read , disclose , copy or otherwise\ndistribute this message except for delivery to the addressee .\nthis e - mail and its attachments ( if any ) have been scanned by trend micro\ninterscan viruswall v 3 . 4 .\n* * personal e - mails * *\nthe metal bulletin e - mail system scans all e - mails and deletes personal\nmessages which contain items of a sexual , racial or other inappropriate\nmatter without notifying the sender . therefore , the transmission of personal\nmessages , both incoming and outgoing , cannot be guaranteed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.790+0000", "entityId": 8771, "properties": {"text": "Subject: message from anjam s ahmad\ndear all ,\non 25 th october i announced my resignation from enron europe to pursue other\nopportunities . i just wanted to say that the past 3 1 / 2 years has been a\nvery interesting and positive experience for me , having been a key part of\nsuch a dynamic and fast - moving organisation . enron is by far the best\norganisation i have ever worked for , and i am proud to have had the\nopportunity to work here and become a shareholder . i have found it a real\npleasure to have worked with such talented and interesting individuals as\nexist within enron europe and enron corp in houston & portland and i\ngenuinely wish you the best of success going forward . i would also like to\ntake this opportunity to thank vince kaminski , john sherriff and richard\nlewis for hiring me in april 97 and thereafter offering such interesting and\nchallenging projects to work on .\ni have made some excellent friends at enron and hope to keep them - i have a\nbase in london and will probably be visiting houston soon , so please feel\nfree to stay in touch !\ncontact :\ne - mail : citywhizkid @ hotmail . com ( easy to remember ! )\nmobile : 0961 111 192\nhome : 020 8877 9741\naddress : apt 213 , compass house , riverside west , smugglers way , wandsworth ,\nlondon swl 8\ni will be at the talbot pub tomorrow friday 27 th october from 6 pm where i\nhope to catch up with you as a final farewell !\nbest wishes for the future !\nanjam\nx 35383", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.794+0000", "entityId": 8772, "properties": {"text": "Subject: further actions on anjam ' s departure\nhi mel\nfurther to our earlier discussions here ' s the full list of actions we ' d like\nto put into place regarding anjam ' s departure :\nhr - type stuff :\n1 . get anjam off the trading floor as soon as possible . there is no need for\nhim to remain on the floor . this will need to be delayed until it number 1\nis completed ( cataloguing his work ) .\n2 . determine where anjam is heading . we need to know who is going to know\nour positions and curves next .\n3 . remove his security pass , and insist that he is always accompanied when in\nthe building . sharad is to sit with him while he catalogues his work .\nit - type stuff :\n1 . ask him to catalogue the contents of his h : drive , since the rest of the\ngroup will need to support his work in the future . this should take no more\nthan a day or two .\n2 . get it to obtain their backups of anjam ' s h : drive for weekly intervals\nover the last two months . this will allow us to determine what he has\ndeleted .\n3 . get it to provide a snapshot of anjam ' s notes folders , and provide records\nof mail sent out to the internet over the last couple of months . i ' m worried\nabout code / data he may have zipped up and mailed out .\n4 . ask it to use a utility program to determine what has been deleted from\nanjam ' s c : drives . there may be useful info here too .\n5 . revoke all internet access , whether via explorer or notes mail .\n6 . get a record of all files he has printed over the last couple of months .\nvince has ok ' d this lot , so let ' s do it asap .\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.798+0000", "entityId": 8773, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 qhlkd\norder for : tom halliburton\nthis computer is required to run a software licence manager only . it will be\nrunning continously , but will not be used by any individual . the smallest ,\ncheapest machine suitable connecting to the enron network will be adequate .\nsecondhand hardware will be suitable .\nenron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.804+0000", "entityId": 8774, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ? s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.811+0000", "entityId": 8775, "properties": {"text": "Subject: approval for reviewer\nshanbhogue , vasant has suggested reviewers and submitted them for your\napproval . your may review / modify this list of reviewers by logging on to pep\nat http : / / pep . corp . enron . com and going to supervisor services . please\nremember , no feedback can be completed on shanbhogue , vasant until you have\napproved the list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.816+0000", "entityId": 8776, "properties": {"text": "Subject: re : copper curve\ntani ,\nno problem . we shall look at the curve on monday . i have organized a small\nteam to examine\nthe curve from different perspectives .\ncurve validation is normally a rac prerogative and i shall get them involved\non monday\nvince\ntani nath\n10 / 27 / 2000 11 : 40 am\nto : maureen raymond / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect , tim\npoullain - patterson , harry tefoglou / lon / ect @ ect , esther gerratt / lon / ect @ ect\nsubject : copper curve\nfollowing steve ' s note to you earlier today , i wanted to mention that we have\na fairly urgent need for review of the copper curve in particular , as there\nis a deal due for final pricing in the next few days .\ni am not sure what data you have received from enron metals in london , so i\nam asking tim poullain - patterson to ensure that you have the curves and the\neconomic justification proposed as soon as possible . please direct any\nquestions to him or to harry tefoglou . i will be in the tokyo office next\nweek , but available via e - mail .\nthanks in advance for your assistance ,\ntani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.825+0000", "entityId": 8777, "properties": {"text": "Subject: metals curves\nhi maureen\ni hope you ' re keeping well . london research has been asked to validate the\nlong - term copper ( and other ) forward curves being used by mg . clearly this\nlies outside our domain of expertise ( being economics ) , so i ' ve referred tani\nto you .\nspeak to you soon ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.833+0000", "entityId": 8778, "properties": {"text": "Subject: re : get together for dinner\nvasant ,\nthanks for the invitation . it works for me .\nvince\nvasant shanbhogue\n10 / 27 / 2000 01 : 49 pm\nto : massong @ epenergy . com , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : get together for dinner\nhi everyone ,\nbefore grant leaves houston , i wanted to have a small get - together at my\nhouse for dinner . since everybody is very busy , i want to schedule a date\nwell in advance , so i am suggesting saturday , dec 2 . this will be dinner\nwith family . please let me know if this works for you .\nthanks ,\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.839+0000", "entityId": 8779, "properties": {"text": "Subject: re : fw : opportunities\ngerry ,\ni may have unexpected meeting ( s ) in the morning .\nplease , keep trying and i shall try to call you as well .\nvince\n\" sheble , g . b . \" on 10 / 27 / 2000 09 : 09 : 16 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : fw : opportunities\nvince\nsince we were not able to connect this morning , would you identify any other\ntime as convenient for you ? should i try monday morning ?\nthank you\ngerry\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngerald b . shebl ,\nprofessor , electrical and computer engineering\ndirector of complex adaptive systems program\n1115 coover hall\names , iowa 50011\nvoice : 515 . 294 . 3046\nfax : 515 . 294 . 4263\nemail : gsheble @ iastate . edu\nweb : http : / / www . ee . iastate . edu / ~ sheble /\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.844+0000", "entityId": 8780, "properties": {"text": "Subject: martin jermakyan\nhi there ,\ni am favourably impressed by martin . i think he ' s an intelligent person\nand understands the power industry . he has good ideas about\nmodeling various of things ( even though he thinks that\ntechnical constraints are just technicalities and are easy to deal with ) .\nplease take note that he admitted he does not like to\nwrite code ( he has / had someone else doing it for him ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.849+0000", "entityId": 8781, "properties": {"text": "Subject: title\ndear mr . kaminski ,\n?\ni hope i got your title right . i looked everywhere for it and i could not\nfind it . in one of the numerous discussions i had with professor shreve\nabout you i remember having heard \" head of research \" . . . probably energy , but\nthat i could not recall . is this ok ? also i would like to have the title of\nthe conference , it is useful !\n?\nfinnally , there is a request for your e - mail by a phd student , do you allow\nme to provide this info ?\n?\n?\nsincerely ,\n?\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\npstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.854+0000", "entityId": 8782, "properties": {"text": "Subject: mscf speaker series\nmscf speaker series\nofficial invitation\n?\n?\nit is with great pleasure and some amount of pride that i announce the next\nevent in the speaker series . next friday we will have the honor to host a\nconference given by mr . vince kaminski head of research at enron corp . ?\n?\nthe ? sixth event is ? next friday ( nov 3 rd ) ! ?\nfrom : 11 . 30 - 13 . 30\nplease attend ! ! !\nthe next event in the\nstudent speaker series is :\nfriday , november 3 , 2000\n11 : 30 a . m . to 12 : 30 p . m . fast lab\n[ image ] vince kaminski\nenron corp .\ntentative student speaker series schedule 2000 - 2001\nthe following is a tentative schedule of the mscf student speaker series for\nthe 2000 - 2001 academic year . all events take place from 11 : 30 a . m . to 12 : 30\np . m . in the fast lab ( gsia 229 ) unless otherwise noted . updates are soon to\nfollow .\nvolatility curve and bond basis\naugust 11 , 2000\ndavid hartney & jerry hanweck\nvice president , futures and option sales j . p . morgan\nprice and hedging volatility contracts\nseptember 1 , 2000\ndmitry pugachevsky\ndeutsche bank\ndmitry pugachesky is a director with otc derivatives research of deutsche\nbank , where his research is primarily focussed on credit derivatives . prior\nto joining deutsche bank , dmitry worked for six years with global analytics\ngroup of bankers trust . there he developed models for emerging markets ,\ninterest rates , and equity derivatives and also participated in actual\ntrading and structuring of interest rate options . he received his phd in\napplied mathematics from carnegie mellon university specializing in control\ntheory for stochastic processes . he has published several papers on\nmodelling in emerging markets and on valuation for passport options .\na measurement framework for bank liquidity risk\nseptember 15 , 2000\nraymond cote\nvice president , finrad inc .\nraymond cote is vice president , financial engineering at finrad inc . , a\nmontreal - based consulting firm offering financial management solutions that\ncombine advisory and systems development services to & corporations and\nfinancial institutions .\nabstract :\nliquidity risk , as opposed to credit and market risks , has received little\nattention in professional or academic journals . we argue that analyzing bank\nliquidity risk can be viewed as a variation of credit risk analysis . after\nintroducing some concepts and definitions , the presentation defines a\nframework allowing to measure a bank ' s structural liquidity risk . it then\nshows that combining the framework with modern credit risk measurement tools\nleads to a liquidity risk var measure . the presentation then offers\nconcluding comments on the integration of the liquidity risk measurement\nframework within enterprise - wide risk management .\nthe impact of electronic trading on the uses of quantitative research in\nequity options\nseptember 22 , 2000\nscott morris\nhull group , quantitative research department\nquantitative research in investment management\noctober 6 , 2000\nraman srivastava & anna bulkovshteyn\nassistant vice president , & fixed income , quantitative analysts , putman\ninvestments\n[ image ]\ntba\nnovember 3 , 2000\nvince kaminski\nenron corp .\nfund management and market efficiency\nnovember 10 , 2000\nandrea dalton\nresearcher , friess associates\n( advisor to the brandywine funds ) .\ntba\nnovember 17 , 2000\njeff keifer & deb\naep\ntutorial on bridge\nnovember 24 , 2000\npierre ste - marie & punit rawal\nmscf students\na corporate risk management framework\ndecember 8 , 2000\ndarin aprati & brian moore\nmcdonald ' s\n[ image ] math speaker series schedule 2000 - 2001\n[ image ] speaker series student committee\n[ image ] previous speakers\n?\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ image ] http : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.859+0000", "entityId": 8783, "properties": {"text": "Subject: re : fw : opportunities\nvince\ni will call you on monday . i understand that unexpected meetings are a\nmatter of life in today ' s world .\ngerry\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , october 27 , 2000 3 : 12 pm\nto : gsheble @ iastate . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : fw : opportunities\ngerry ,\ni may have unexpected meeting ( s ) in the morning .\nplease , keep trying and i shall try to call you as well .\nvince\n\" sheble , g . b . \" on 10 / 27 / 2000 09 : 09 : 16 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : fw : opportunities\nvince\nsince we were not able to connect this morning , would you identify any\nother\ntime as convenient for you ? should i try monday morning ?\nthank you\ngerry\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ngerald b . shebl ,\nprofessor , electrical and computer engineering\ndirector of complex adaptive systems program\n1115 coover hall\names , iowa 50011\nvoice : 515 . 294 . 3046\nfax : 515 . 294 . 4263\nemail : gsheble @ iastate . edu\nweb : http : / / www . ee . iastate . edu / ~ sheble /\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.864+0000", "entityId": 8784, "properties": {"text": "Subject: forward oil prices\njohn ,\ni am forwarding to you the request by jens . we gave in the past\nour forward oil curves ( with approval of greg whalley ) to some academics .\nwhat is your position on this request ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 27 / 2000\n04 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njens gobel @ enron\n10 / 26 / 2000 12 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : forward oil prices\nvince ,\nas discussed on the phone , i am sending you the request that i have received\nfrom prof . buehler . prof . buehler is the\nhead of the faculty of finance at mannheim university in germany . currently ,\nhe is writing a study about the hedging\nstrategy that led to the metallgesellschaft debacle . for this study he would\nlike to get forward oil prices form us .\nthe forward oil prices should be for wti with cushing as the delivery point\nfor the time period july 1986 and december 1996\nwith remaining contract durations between one and ten years . it would be\nideal to get this data on a daily basis . weekly\nor monthly data is helpful as well , of course .\nsince mannheim university is among enron ' s tier one recruiting universities\nin germany , it would be great if we could help\nhim with some data . thanks a lot for your help .\njens\no . korn @ uni - mannheim . de on 10 / 10 / 2000 11 : 44 : 57 am\nto : jens . gobel @ enron . com\ncc :\nsubject : daten\nsehr geehrter herr goebel ,\nbezugnehmend auf ihr heutiges telefongespraech mit herrn prof .\nbuehler hat mich prof . buehler gebeten , ihnen genauer\ndarzustellen , welche daten idealerweise fuer unsere studie\nbenoetigt wuerden .\nzunaechst zum hintergrund . wir sind auf enron gestossen , weil\neduardo schwartz in einer seiner arbeiten die folgende datenquelle\nangibt :\n\" in addition to the publicly available futures data described above ,\nfor the purpose of this study enron capital and trade resources\nmade available some proprietary historical forward price curves\nfrom 1 / 15 / 93 to 5 / 16 / 96 . from these data ten forward prices were\nused in estimation , ranging in maturities from two months to nine\nyears \"\ndies laesst uns annehmen , dass enron bestimmte daten\nverfuegbar hat .\nnun zum idealen datensatz :\nforwardoelpreise ( am besten wti mit lieferung in cushing ) fuer\nrestlaufzeiten zwischen einem und zehn jahren fuer den zeitraum\njuli 1986 bis dezember 1996 . dabei waere eine hohe\ndatenfrequenz ideal ( taeglich , ansonsten woechentlich oder\nmonatlich ) . zusaetzlich waeren auch spotpreise fuer wti mit\nlieferung in cushing nuetzlich .\ndiese idealen datenanforderungen werden sich vermutlich nicht\nerfuellen lassen . jedoch waere uns auch schon geholfen , wenn ein\nkuerzerer zeitraum oder eine niedrigere datenfrequenz vorlaege .\nwir waernen ihnen sehr dankbar , wenn sie in erfahrung bringen\nkoennten , inwiefern solche daten von enron zu erhalten sind .\nherzlichen dank fuer ihre muehe und beste gruesse\nolaf korn\np . s . bei rueckfragen stehe ich ihnen jederzeit gern zur verfuegung\ndr . olaf korn\nuniversity of mannheim\nchair of finance\nd - 68131 mannheim\ngermany\ntel . : + + 49 / 621 / 181 - 1487\nfax . : + + 49 / 621 / 181 - 1519\ne - mail : o . korn @ uni - mannheim . de", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.869+0000", "entityId": 8785, "properties": {"text": "Subject: re : enron case study\n- - - - - original message - - - - -\nfrom : cindy . derecskey @ enron . com [ mailto : cindy . derecskey @ enron . com ]\nsent : wednesday , october 25 , 2000 11 : 23 am\nto : j _ martin @ baylor . edu\ncc : christie . patrick @ enron . com ; vince . j . kaminski @ enron . com\nsubject : enron case study\nimportance : high\ngood morning mr . martin ,\ni would like to introduce myself . i currently work with christie patrick\nand michael b rosen in the enron university affairs department .\nin recent discussions with christie , she has suggested that i liaise with\nyou and our management in preparation for your and vince kaminski ' s case\nstudy . christie has forwarded recent emails sent by you suggesting a few\nconvenient times that work with your schedule . i will work with our\nmanagement and do my best to schedule one hour time slots for interviews\nthat fit with your outline .\ninitially , i will schedule interviews with : ken lay - chairman and ceo ,\njeff skilling - president and coo , and andy fastow - cfo . if you feel that\nyou may need to speak with additional management , we will definitely try to\nwork something out the same day , so you don ' t have to travel back here . i\nwill forward your project outline to the aforementioned participants once\nthe interviews are scheduled . do you anticipate drafting specific\nquestions ? if so , i would greatly appreciate a copy when convenient .\ni greatly look forward to working with you and i hope that we can touch\nbase very soon .\nregards ,\ncindy derecskey\nenron university affairs\n( 713 ) 853 - 5670", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.874+0000", "entityId": 8786, "properties": {"text": "Subject: re : grant / anjam\nper a converstion with vince kaminski , anjam provided his resignation this\npast wednesday . therefore , we are on longer requesting activity on anjam .\nthank you for your follow up and assistance with anjam .\nnorma villarreal\nsr . hr represenative\n713 / 853 - 1845\ntara rozen\n10 / 09 / 2000 11 : 42 am\nto : norma villarreal / hou / ect @ ect\ncc : melanie doyle / lon / ect @ ect\nsubject : grant / anjam\nhi , norma\nwhat happened to grant ? did he leave enron for a competetor ?\ni assume vince is still interested in anjam even though anjam still hasn ' t\nagreed the offer . please confirm as i presume anjam is waiting until the last\npossible minute to accept .\nthanks\ntara", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.878+0000", "entityId": 8787, "properties": {"text": "Subject: bad supervisor : me !\nnorma ,\ni have attached an updated org chart for my team .\ni think the following changes need to be made\n1 . paulo issler is reporting to zimin lu\n2 . shalesh ganjoo is reporting to me ( who does the system show as his\nsupervisor , zimin ? )\nalso , i just found out that chonawee did not get his mid - year review . i\ndidn ' t realize that samer takriti never gave him a review . i have found all\nof the mid - year feedback for chonawee , but i don ' t have an official \" form \" to\nfill out for him to sign . can you send one to me , or what should i do ?\nthanks ,\nstinson\nx 34748\nnorma villarreal\n10 / 26 / 2000 08 : 30 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : re : peoplefinder feedback\nplease confrim that you are the supervisor for shalesh ganjoo . also , please\nsend an updated organizational chart of your group so that i can verify the\ncorrect information .\nthank you for your assistance in this matter .\nnorma villarreal\nx 31545\n- - - - - - - - - - - - - - - - - - - - - - forwarded by norma villarreal / hou / ect on 10 / 26 / 2000\n08 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : shalesh ganjoo 10 / 25 / 2000 09 : 29 pm\nto : norma villarreal / hou / ect @ ect\ncc :\nsubject : re : peoplefinder feedback\nfyi . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shalesh ganjoo / hou / ect on 10 / 25 / 2000\n09 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npeople . finder @ enron\n10 / 23 / 2000 10 : 19 am\nsent by : curtis fincher @ enron\nto : shalesh . ganjoo @ enron . com\ncc :\nsubject : re : peoplefinder feedback\nshalesh ,\nsap is showing ms . norma villarreal as your hr rep . we don ' t have the\nauthority to change supervisor names .\nplease work with your hr rep to correct this information .\nregards ,\ncurtis fincher\nshalesh . ganjoo @ enron . com on 10 / 21 / 2000 03 : 25 : 29 pm\nto : people . finder @ enron . com\ncc :\nsubject : peoplefinder feedback\nmy chain of command is :\nstinson gibner vp ( supervisor )\nvince kaminski md ( stinson ' s supervisor )\nplease correct this immediately . thank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.883+0000", "entityId": 8788, "properties": {"text": "Subject: performance\nat this point , monday december 4 th seems to be free for most of you\nwhose calendar i have .\nlet me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 30 / 2000\n07 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n10 / 30 / 2000 07 : 32 am\nto : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , zimin lu / hou / ect @ ect , maureen raymond / hou / ect @ ect ,\nmike a roberts / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , osman\nsezgen / hou / ees @ ees , tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : performance\ngood morning everyone .\nplease let me know which date you would prefer . december 4 or december 8 th .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 30 / 2000\n07 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnorma villarreal\n10 / 28 / 2000 10 : 47 am\nto : shirley crenshaw / hou / ect @ ect , stinson gibner / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , maureen raymond / hou / ect @ ect , zimin lu / hou / ect @ ect ,\nosman sezgen / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , ramona perkins / corp / enron @ enron\nsubject : performance\nthe research group will be conducting a performance review committee ( prc )\nmeeting in early december . all vice presidents , sr . directors and directors\nshould attend . shirley crenshaw will be contacting you to schedule the prc\nmeeting date and time . these are the current available dates :\ndecember 4 , 8 .\nin preparation for the meeting please submit recommended rankings and\npromotions to me based on employee feedback by november 29 , 2000 . please\nincluded analyst / associates ,\nif you have any questions please feel free to call me or ramona perkins at\nx 58165 .\nhere is some helpful information for you as we proceed throughout he\nperformance evaluation process\noctober 25 , 2000 - november 17 , 2000 ( 3 1 / 2 weeks ) :\nemployees will provide a list of accomplishments occurring after june 1 , 2000\nto their supervisors\nemployees will receive an email advising of access and passwords to pep\nsystem ( 10 / 25 )\nemployees identify selected reviewers on line and will submit to supervisor\nsupervisor will add and / or delete reviewers in order to capture a full 360\ndegree feedback\nsupervisor will submit and reviewers will receive an e : mail advising them of\ntheir reviewer role\nreviewers can decline or complete the review\nonce system closes on november 17 , 2000 ,\nprepare for research prc meeting ( print consolidate review , pre rank\nemployees , identify candidates for promotion and submit to hr )\nimportant dates ( i will notify you of any changes ) :\nseptember 30 , 2000 only employees before 10 / 1 / 00 will be included for pep and\nbonuses\noctober 15 , 2000 whomever is the supervisor for employees on 10 / 15 / 00 will be\nresponsible for their reviews\noctober 25 , 2000 pep system opens ( http : / pep . corp . enron . com )\noctober 30 - 31 , 2000 pep overview session at doubletree\nnovember 17 , 2000 pep system closes for feedback\nnovember 23 - 24 thanksgiving holiday\nnovember 29 , 2000 provide hr with pre - rankings and promotions\ndecember tbd , 2000 research prc\njanuary 31 , 2001 all reviews must be complete , signed and submitted to hr\nnorma\nsr . hr representative\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.889+0000", "entityId": 8789, "properties": {"text": "Subject: performance\ngood morning everyone .\nplease let me know which date you would prefer . december 4 or december 8 th .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 30 / 2000\n07 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnorma villarreal\n10 / 28 / 2000 10 : 47 am\nto : shirley crenshaw / hou / ect @ ect , stinson gibner / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , maureen raymond / hou / ect @ ect , zimin lu / hou / ect @ ect ,\nosman sezgen / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , ramona perkins / corp / enron @ enron\nsubject : performance\nthe research group will be conducting a performance review committee ( prc )\nmeeting in early december . all vice presidents , sr . directors and directors\nshould attend . shirley crenshaw will be contacting you to schedule the prc\nmeeting date and time . these are the current available dates :\ndecember 4 , 8 .\nin preparation for the meeting please submit recommended rankings and\npromotions to me based on employee feedback by november 29 , 2000 . please\nincluded analyst / associates ,\nif you have any questions please feel free to call me or ramona perkins at\nx 58165 .\nhere is some helpful information for you as we proceed throughout he\nperformance evaluation process\noctober 25 , 2000 - november 17 , 2000 ( 3 1 / 2 weeks ) :\nemployees will provide a list of accomplishments occurring after june 1 , 2000\nto their supervisors\nemployees will receive an email advising of access and passwords to pep\nsystem ( 10 / 25 )\nemployees identify selected reviewers on line and will submit to supervisor\nsupervisor will add and / or delete reviewers in order to capture a full 360\ndegree feedback\nsupervisor will submit and reviewers will receive an e : mail advising them of\ntheir reviewer role\nreviewers can decline or complete the review\nonce system closes on november 17 , 2000 ,\nprepare for research prc meeting ( print consolidate review , pre rank\nemployees , identify candidates for promotion and submit to hr )\nimportant dates ( i will notify you of any changes ) :\nseptember 30 , 2000 only employees before 10 / 1 / 00 will be included for pep and\nbonuses\noctober 15 , 2000 whomever is the supervisor for employees on 10 / 15 / 00 will be\nresponsible for their reviews\noctober 25 , 2000 pep system opens ( http : / pep . corp . enron . com )\noctober 30 - 31 , 2000 pep overview session at doubletree\nnovember 17 , 2000 pep system closes for feedback\nnovember 23 - 24 thanksgiving holiday\nnovember 29 , 2000 provide hr with pre - rankings and promotions\ndecember tbd , 2000 research prc\njanuary 31 , 2001 all reviews must be complete , signed and submitted to hr\nnorma\nsr . hr representative\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.894+0000", "entityId": 8790, "properties": {"text": "Subject: re : amitava is diverted\nwhere does this stand ? we really need amitavas full time focus .\nbenjamin parsons\n27 / 10 / 2000 07 : 50\nto : mike mumford / lon / ect @ ect\ncc : steven leppard / lon / ect @ ect , bryan seyfried / lon / ect @ ect , nigel\nprice / lon / ect @ ect\nsubject : re : amitava is diverted\npresumably if the eastern credit reserve issues take lots of his time away\nfrom enroncredit , we could extend his stay for another week ? especially as\nit ' s unlikely we could get vasant over in the foreseeable future .\nben\nmike mumford\n26 / 10 / 2000 18 : 20\nto : bryan seyfried / lon / ect @ ect\ncc : qlist\nsubject : amitava is diverted\nbryan ,\njust fyi - amitava will be diverted for an unspecified portion of his stay\nhere next week .\nthe did the initial coding for software / pricing systems used to value the\neastern deal . there are over - riding concerns there i or steve l . can fill\nyou in on if you like . problem could be monday morning or all week .\nwe could press for vasant to re - prioritize his time .\nany thoughts ? i haven ' t checked with ben about impacts yet . . .\nben ?\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.899+0000", "entityId": 8791, "properties": {"text": "Subject: re : copper curve\nted ,\ni agree . curve review has always been rac responsibility . please , let me know\nif we can assist you in any way .\nvince\nfrom : ted murphy\n10 / 29 / 2000 10 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : copper curve\ntani ,\nplease touch base with lloyd fleming as to whom from rac should review the\nmethodology . i view that it is the commercial team ' s responsibility to post\nthe curve , operations responsibility to gather objective information on the\nefficacy of the curve on a ( minimum ) monthly basis and report all highly\nsensitive curves , rac will not approve or disapprove a curve but question\nmethodology / motivations and subsequent changes and do so in a senior\nmanagement forum ( i . e . , we will tell on those who have suspect curves or\ncurve movements ) . obviously , we are looking for the best estimate of the\nvalue of those products in those time buckets today , we also favor object ,\nconsistent application of methodoology intra and inter commodity .\nted\nvince j kaminski\n10 / 27 / 2000 04 : 18 pm\nto : tani nath / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect , tim\npoullain - patterson / lon / ect @ ect , harry tefoglou / lon / ect @ ect , esther\ngerratt / lon / ect @ ect , maureen raymond / hou / ect @ ect , ted murphy / hou / ect @ ect\nsubject : re : copper curve\ntani ,\nno problem . we shall look at the curve on monday . i have organized a small\nteam to examine\nthe curve from different perspectives .\ncurve validation is normally a rac prerogative and i shall get them involved\non monday\nvince\ntani nath\n10 / 27 / 2000 11 : 40 am\nto : maureen raymond / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect , tim\npoullain - patterson , harry tefoglou / lon / ect @ ect , esther gerratt / lon / ect @ ect\nsubject : copper curve\nfollowing steve ' s note to you earlier today , i wanted to mention that we have\na fairly urgent need for review of the copper curve in particular , as there\nis a deal due for final pricing in the next few days .\ni am not sure what data you have received from enron metals in london , so i\nam asking tim poullain - patterson to ensure that you have the curves and the\neconomic justification proposed as soon as possible . please direct any\nquestions to him or to harry tefoglou . i will be in the tokyo office next\nweek , but available via e - mail .\nthanks in advance for your assistance ,\ntani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.904+0000", "entityId": 8792, "properties": {"text": "Subject: re : copper curve\ntani ,\nplease touch base with lloyd fleming as to whom from rac should review the\nmethodology . i view that it is the commercial team ' s responsibility to post\nthe curve , operations responsibility to gather objective information on the\nefficacy of the curve on a ( minimum ) monthly basis and report all highly\nsensitive curves , rac will not approve or disapprove a curve but question\nmethodology / motivations and subsequent changes and do so in a senior\nmanagement forum ( i . e . , we will tell on those who have suspect curves or\ncurve movements ) . obviously , we are looking for the best estimate of the\nvalue of those products in those time buckets today , we also favor object ,\nconsistent application of methodoology intra and inter commodity .\nted\nvince j kaminski\n10 / 27 / 2000 04 : 18 pm\nto : tani nath / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect , tim\npoullain - patterson / lon / ect @ ect , harry tefoglou / lon / ect @ ect , esther\ngerratt / lon / ect @ ect , maureen raymond / hou / ect @ ect , ted murphy / hou / ect @ ect\nsubject : re : copper curve\ntani ,\nno problem . we shall look at the curve on monday . i have organized a small\nteam to examine\nthe curve from different perspectives .\ncurve validation is normally a rac prerogative and i shall get them involved\non monday\nvince\ntani nath\n10 / 27 / 2000 11 : 40 am\nto : maureen raymond / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect , tim\npoullain - patterson , harry tefoglou / lon / ect @ ect , esther gerratt / lon / ect @ ect\nsubject : copper curve\nfollowing steve ' s note to you earlier today , i wanted to mention that we have\na fairly urgent need for review of the copper curve in particular , as there\nis a deal due for final pricing in the next few days .\ni am not sure what data you have received from enron metals in london , so i\nam asking tim poullain - patterson to ensure that you have the curves and the\neconomic justification proposed as soon as possible . please direct any\nquestions to him or to harry tefoglou . i will be in the tokyo office next\nweek , but available via e - mail .\nthanks in advance for your assistance ,\ntani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.910+0000", "entityId": 8793, "properties": {"text": "Subject: re : scifinance\ncurt ,\nthanks very much . yes , the same time will be fine .\nso i will be expecting you on nov . 10 at 11 : 30 am .\nyou can call shirley to get to our area . my office\nis at ebl 969 .\nzimin lu\n713 - 853 - 6388\nshirely ,\nplease mark the time on vince and stinson ' s schedule .\nand make an announcement to the group next week .\nthanks .\nzimin\nrandall on 10 / 30 / 2000 08 : 54 : 59 am\nto : zimin . lu @ enron . com\ncc : randall @ scicomp . com , \" johansen , david \"\nsubject : re : scifinance\nok . same time ?\nzimin . lu @ enron . com wrote :\n>\n> hello , curt ,\n>\n> i am just aware that our department head dr . kaminski is going to be out of\n> the town\n> on friday nov . 3 . if possible , can we reschedule your visit to nov . 10 ?\n>\n> sorry for any inconvenience , and let me know if this is ok .\n>\n> zimin lu\n> 713 - 853 - 6388\n>\n> randall on 10 / 19 / 2000 05 : 20 : 40 pm\n>\n> to : zimin . lu @ enron . com\n> cc : randall @ scicomp . com , \" johansen , david \"\n> subject : re : scifinance\n>\n> zimin . lu @ enron . com wrote :\n> >\n> > yes , nov . 3 . we do not have to work on saturday , thank you for\n> reminding\n> > me that .\n> >\n> > zimin\n>\n> you are welcome .\n>\n> shall we say 11 : 30 to allow some time for getting organized ?\n>\n> i usually use an old fashioned overhead transparency projector if you ' ve\n> got one . if they ' ve all been replaced by digital projectors , i can\n> bring one .\n>\n> i ' ll be in touch early that week , to get directions for parking etc .\n>\n> rgds ,\n> curt\n>\n> - -\n> + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +\n> | curt randall | scicomp inc . |\n> | e - mail : randall @ scicomp . com | 5806 mesa drive |\n> | voice : 512 - 451 - 1050 ext 202 | suite 250 |\n> | fax : 512 - 451 - 1622 | austin , texas 78731 |\n> + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +\n- -\n| curt randall | scicomp inc . |\n| e - mail : randall @ scicomp . com | 5806 mesa drive |\n| voice : 512 - 451 - 1050 ext 202 | suite 250 |\n| fax : 512 - 451 - 1622 | austin , texas 78731 |\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.915+0000", "entityId": 8794, "properties": {"text": "Subject: re : powerisk 2000 followup in re weatherdelta\nvince ,\ni will contact them and set up a meeting .\nalex\nvince j kaminski @ ect\n10 / 30 / 2000 10 : 21 am\nto : alex huang / corp / enron @ enron\ncc : joseph hrgovcic / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , lance cunningham / na / enron @ enron , sevil\nyaman / corp / enron @ enron , stinson gibner / hou / ect @ ect\nsubject : powerisk 2000 followup in re weatherdelta\nalex ,\ncan you set up a meeting to review this product . they have an office in\nhouston .\nplease , invite people on the distribution list .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n10 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndenton mike on 10 / 24 / 2000 10 : 14 : 04 am\nto : vkamins @ enron . com\ncc :\nsubject : powerisk 2000 followup in re weatherdelta\nmr . kaminski ,\n?\nnick perry and i were recently discussing the conference in paris , and we\ngathered that you had some interest in exploring possible uses of our new\nweatherdelta tool - kit . ? it is the only application that we know of , that\ncan ? model temperature , loads , and power prices in several locations\nsimultaneously : thus allowing the user to measure the value an risk in a\nvariety of financial instruments , physical obligations and assets . ? i have\nattached the product overview sheet , and would be happy to discuss its\ncapabilities with you at your convenience . ? ?\n?\nnick and i send our regards ,\n?\nvice president\nna strategic consulting\ncaminus\n747 third avenue , 18 th floor\nnew york , new york 10017\n( 212 ) 515 - 3667\n?\n?\n- weatherdelta . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.924+0000", "entityId": 8795, "properties": {"text": "Subject: re : meeting with you last week ?\nscott ,\nnot at all . i left to make a quick call and it required a number\nof follow - up calls .\nthe presentation was very interesting and professional .\none of the guidelines we have in my group is to avoid using too many software\npackages .\notherwise , everybody will have his own pet package and we shall lose\neconomies of scale .\ni shall talk to my associates about your product and get back to you .\nvince\nscott wakefield on 10 / 23 / 2000 12 : 09 : 46 pm\nto : vkamins @ enron . com\ncc :\nsubject : meeting with you last week ?\nhello vince ,\ni ' m writing to follow up with you regarding our meeting last week . did we\ndo something wrong in our presentation or in the set up of this presentation ?\nfor a group of 50 researchers we were expecting a larger crowd and also\nsome peole perhaps from your it department . also when you left i was\nwondering if we had offended you .\nthe ability to use our products to create open models , integrate databases ,\nc , vb , etc . and then quickly deploy them to others has been embraced by\nthe risk management world . we met the following day with a large group\nfrom ees and they seemed quite enthusiastic about the innovation possible\nwith our tools .\ni realize you are quite busy , but could you please let me know what\nhappened and how we can prevent this in the future ?\nthanks\nscott wakefield", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.931+0000", "entityId": 8796, "properties": {"text": "Subject: re : jcc\nkevin ,\nthanks for the heads - up . i ' m doing face - time with a customer on wednesday ,\nbut i ' m in all day tomorrow , thursday and friday ( i ' ve a got a deadline to\nmeet this pm ) . when would it be convenient to meet , and could we do it early\nin the morning so as to be able to conference ansguman srivastav ( enron\nindia ) into the meeting ?\nregards ,\nmarc\nkevin kindall @ enron\n10 / 30 / 2000 10 : 55 am\nto : marc de la roche / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : jcc\ngood morning . i apologize for the response delay . i ' ve gone back through\nthe analysis that i did back in april , and have thrown around some ideas with\nvince and stinson . the issue may be summarized as follows .\nthe hedge relationship was derived using jcc and prompt brent , and is valid\nfor jcc and prompt brent . no problems here . however , it will not be valid\nfor points far out on the forward curve . intuitively , this hedge\nrelationship will approach one as we move far out on the curve , but since\nthere is no data , i can not statistically determine this . one can imagine a\nterm structure of heding ratios that start at 0 . 67 and move to 1 . 0 , so that\nthe back end of the curves would move together , but how fast it converges to\none is anyone ' s guess .\nif there is a way of determining the historical jcc forward curve , then the\nhedge relationships may be estimated . however , i have been unable to\ndetermine a rigorous approach to building the jcc curve .\ni can explain this far better in person , and would like to talk as soon as\npossible at your convenience .\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.936+0000", "entityId": 8797, "properties": {"text": "Subject: re : forward oil prices\njohn ,\ni can extract the curves from the database .\nthanks .\nvince\njohn l nowlan\n10 / 30 / 2000 07 : 28 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : forward oil prices\nvince , i would have no problem in giving these numbers , do you have the\nnumbers to forward or would someone in our group need to help him ?\nvince j kaminski\n10 / 27 / 2000 04 : 24 pm\nto : john l nowlan / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stefan - jorg gobel / fra / ect @ ect\nsubject : forward oil prices\njohn ,\ni am forwarding to you the request by jens . we gave in the past\nour forward oil curves ( with approval of greg whalley ) to some academics .\nwhat is your position on this request ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 27 / 2000\n04 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njens gobel @ enron\n10 / 26 / 2000 12 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : forward oil prices\nvince ,\nas discussed on the phone , i am sending you the request that i have received\nfrom prof . buehler . prof . buehler is the\nhead of the faculty of finance at mannheim university in germany . currently ,\nhe is writing a study about the hedging\nstrategy that led to the metallgesellschaft debacle . for this study he would\nlike to get forward oil prices form us .\nthe forward oil prices should be for wti with cushing as the delivery point\nfor the time period july 1986 and december 1996\nwith remaining contract durations between one and ten years . it would be\nideal to get this data on a daily basis . weekly\nor monthly data is helpful as well , of course .\nsince mannheim university is among enron ' s tier one recruiting universities\nin germany , it would be great if we could help\nhim with some data . thanks a lot for your help .\njens\no . korn @ uni - mannheim . de on 10 / 10 / 2000 11 : 44 : 57 am\nto : jens . gobel @ enron . com\ncc :\nsubject : daten\nsehr geehrter herr goebel ,\nbezugnehmend auf ihr heutiges telefongespraech mit herrn prof .\nbuehler hat mich prof . buehler gebeten , ihnen genauer\ndarzustellen , welche daten idealerweise fuer unsere studie\nbenoetigt wuerden .\nzunaechst zum hintergrund . wir sind auf enron gestossen , weil\neduardo schwartz in einer seiner arbeiten die folgende datenquelle\nangibt :\n\" in addition to the publicly available futures data described above ,\nfor the purpose of this study enron capital and trade resources\nmade available some proprietary historical forward price curves\nfrom 1 / 15 / 93 to 5 / 16 / 96 . from these data ten forward prices were\nused in estimation , ranging in maturities from two months to nine\nyears \"\ndies laesst uns annehmen , dass enron bestimmte daten\nverfuegbar hat .\nnun zum idealen datensatz :\nforwardoelpreise ( am besten wti mit lieferung in cushing ) fuer\nrestlaufzeiten zwischen einem und zehn jahren fuer den zeitraum\njuli 1986 bis dezember 1996 . dabei waere eine hohe\ndatenfrequenz ideal ( taeglich , ansonsten woechentlich oder\nmonatlich ) . zusaetzlich waeren auch spotpreise fuer wti mit\nlieferung in cushing nuetzlich .\ndiese idealen datenanforderungen werden sich vermutlich nicht\nerfuellen lassen . jedoch waere uns auch schon geholfen , wenn ein\nkuerzerer zeitraum oder eine niedrigere datenfrequenz vorlaege .\nwir waernen ihnen sehr dankbar , wenn sie in erfahrung bringen\nkoennten , inwiefern solche daten von enron zu erhalten sind .\nherzlichen dank fuer ihre muehe und beste gruesse\nolaf korn\np . s . bei rueckfragen stehe ich ihnen jederzeit gern zur verfuegung\ndr . olaf korn\nuniversity of mannheim\nchair of finance\nd - 68131 mannheim\ngermany\ntel . : + + 49 / 621 / 181 - 1487\nfax . : + + 49 / 621 / 181 - 1519\ne - mail : o . korn @ uni - mannheim . de", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.941+0000", "entityId": 8798, "properties": {"text": "Subject: enron , case study at nordic business schools\ngood morning vince ,\ncould you please provide with some guidance in relation to mark ' s comments\ndirectly below . i don ' t have any recollection of recent case studies that we\ncould send oddbjorn tysnes - do you know of any ?\ni will send him a number of reprints of articles . please let me know if you\nhave anything at your fingertips . . . .\nregards ,\ncindy\n- - - - - forwarded by cindy derecskey / corp / enron on 10 / 30 / 2000 10 : 21 am - - - - -\nmark palmer\n10 / 30 / 2000 08 : 48 am\nto : christie patrick / hou / ect @ ect , michael b rosen / hou / ect @ ect , cindy\nderecskey / corp / enron @ enron\ncc :\nsubject : enron , case study at nordic business schools\ni don ' t want to spend a lot of time right now , from this office , pursuing\nthese opportunities . but , if we have some case studies \" on the shelf \" we\ncould send something to oddbjorn .\nthanks ,\nmark\n- - - - - forwarded by mark palmer / corp / enron on 10 / 30 / 2000 08 : 45 am - - - - -\noddbj > rn tysnes\n10 / 29 / 2000 01 : 36 pm\nto : \" ' mark . palmer @ enron . com ' \"\ncc : \" thor lien ( e - post ) \" , \" julie green ( e - post ) \"\n, j > rn bremtun\nsubject : enron , case study at nordic business schools\ndear mark ,\ni want to thank you for two very interesting days and a very pleasant\nevening in london at the european pr conference .\nas you may remember from the session \" ideas forum \" , i presented an idea of\nintroducing enron ' s transformation from an \" old \" industry / energy company to\nan innovative player in the \" new \" economy as a case study at the leading\nnordic business schools . i have later discussed the idea with enron ' s head\nof the nordic region , thor lien . he agrees that this could be a good way of\nraising the awareness of enron in the nordic business community . one reason\nfor this is that several professors of the nordic business schools are\nfrequent speakers at business conferences , they are very often sought by\nbusiness reporters to give comments etc . if enron becomes a \" top of mind \"\ninnovative company with these professors , it will help relation - building and\npr work towards the business community .\ni understood from you that some us business schools have developed similar\n( ? ) case studies on enron . do you or someone else in enron have access to\nsuch case studies ? if so , would it be possible for you to send us copies ? it\nwould be a great help for us .\nbest regards ,\noddbjorn tysnes", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.945+0000", "entityId": 8799, "properties": {"text": "Subject: jcc\ngood morning . i apologize for the response delay . i ' ve gone back through\nthe analysis that i did back in april , and have thrown around some ideas with\nvince and stinson . the issue may be summarized as follows .\nthe hedge relationship was derived using jcc and prompt brent , and is valid\nfor jcc and prompt brent . no problems here . however , it will not be valid\nfor points far out on the forward curve . intuitively , this hedge\nrelationship will approach one as we move far out on the curve , but since\nthere is no data , i can not statistically determine this . one can imagine a\nterm structure of heding ratios that start at 0 . 67 and move to 1 . 0 , so that\nthe back end of the curves would move together , but how fast it converges to\none is anyone ' s guess .\nif there is a way of determining the historical jcc forward curve , then the\nhedge relationships may be estimated . however , i have been unable to\ndetermine a rigorous approach to building the jcc curve .\ni can explain this far better in person , and would like to talk as soon as\npossible at your convenience .\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.950+0000", "entityId": 8800, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.955+0000", "entityId": 8801, "properties": {"text": "Subject: approval for reviewer\nkrishnarao , pinnamaneni v has suggested reviewers and submitted them for your\napproval . your may review / modify this list of reviewers by logging on to pep\nat http : / / pep . corp . enron . com and going to supervisor services . please\nremember , no feedback can be completed on krishnarao , pinnamaneni v until you\nhave approved the list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.959+0000", "entityId": 8802, "properties": {"text": "Subject: prc meeting\nhello everyone :\nit looks like friday , december 8 th is the day that you will have the prc\nmeeting listed below .\nmark your calendars - details later .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 10 / 30 / 2000\n01 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnorma villarreal\n10 / 28 / 2000 10 : 47 am\nto : shirley crenshaw / hou / ect @ ect , stinson gibner / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , maureen raymond / hou / ect @ ect , zimin lu / hou / ect @ ect ,\nosman sezgen / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , ramona perkins / corp / enron @ enron\nsubject : performance\nthe research group will be conducting a performance review committee ( prc )\nmeeting in early december . all vice presidents , sr . directors and directors\nshould attend . shirley crenshaw will be contacting you to schedule the prc\nmeeting date and time . these are the current available dates :\ndecember 4 , 8 .\nin preparation for the meeting please submit recommended rankings and\npromotions to me based on employee feedback by november 29 , 2000 . please\nincluded analyst / associates ,\nif you have any questions please feel free to call me or ramona perkins at\nx 58165 .\nhere is some helpful information for you as we proceed throughout he\nperformance evaluation process\noctober 25 , 2000 - november 17 , 2000 ( 3 1 / 2 weeks ) :\nemployees will provide a list of accomplishments occurring after june 1 , 2000\nto their supervisors\nemployees will receive an email advising of access and passwords to pep\nsystem ( 10 / 25 )\nemployees identify selected reviewers on line and will submit to supervisor\nsupervisor will add and / or delete reviewers in order to capture a full 360\ndegree feedback\nsupervisor will submit and reviewers will receive an e : mail advising them of\ntheir reviewer role\nreviewers can decline or complete the review\nonce system closes on november 17 , 2000 ,\nprepare for research prc meeting ( print consolidate review , pre rank\nemployees , identify candidates for promotion and submit to hr )\nimportant dates ( i will notify you of any changes ) :\nseptember 30 , 2000 only employees before 10 / 1 / 00 will be included for pep and\nbonuses\noctober 15 , 2000 whomever is the supervisor for employees on 10 / 15 / 00 will be\nresponsible for their reviews\noctober 25 , 2000 pep system opens ( http : / pep . corp . enron . com )\noctober 30 - 31 , 2000 pep overview session at doubletree\nnovember 17 , 2000 pep system closes for feedback\nnovember 23 - 24 thanksgiving holiday\nnovember 29 , 2000 provide hr with pre - rankings and promotions\ndecember tbd , 2000 research prc\njanuary 31 , 2001 all reviews must be complete , signed and submitted to hr\nnorma\nsr . hr representative\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.965+0000", "entityId": 8803, "properties": {"text": "Subject: lunch conversation\nvince ,\nwe wanted to thank you for your time and support today . we have been\nthinking about our conversation and it may be better to wait until december\nbefore you approached delainey . this time period would give us the\nopportunity to change his impression of our contributions to gas and power .\nplease let us know if you would advise differently .\nthank you ,\nkristin and john", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.970+0000", "entityId": 8804, "properties": {"text": "Subject: re : resume ,\nthanks for the heads up , vince . i ' ll coordinate with shirley .\nmolly\nvince j kaminski\n10 / 30 / 2000 09 : 52 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : resume ,\nmolly ,\ni would like to invite this student for an interview ,\nsometimes in late december when things slow down .\ninterviews with all my direct reports and george hopley .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n09 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n10 / 24 / 2000 04 : 32 pm\nto : jinbaek kim @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : resume ,\njinbaek ,\nwe shall invite you to an interview in houston .\nvince\njinbaek kim on 10 / 23 / 2000 07 : 25 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : resume ,\ndear mr . kaminski ,\nhi ,\ni am a ph . d student at ieor department at u . c . berkeley .\nthanks for your presentation today .\nit gave me knowledge and interest in electricity markets ,\nand your company .\nas you mentioned in the presentation ,\ni send a resume to give me opportunity to learn more\nabout your company .\ni hope i can join the super saturday event .\njinbaek\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.975+0000", "entityId": 8805, "properties": {"text": "Subject: re : uc - berkeley graduate student\nmolly ,\ni would like to invite this student for an interview ,\nsometimes in late december when things slow down .\ninterviews with all my direct reports and george hopley .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n09 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n10 / 24 / 2000 04 : 07 pm\nto : rajnish kamat @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : uc - berkeley graduate student\nrajnish ,\nwe shall invite you for an interview in houston .\nvince\nrajnish kamat on 10 / 23 / 2000 07 : 55 : 31 pm\nto : vkamins @ enron . com\ncc :\nsubject : uc - berkeley graduate student\ndr . vincent kaminski\nmanaging director and head of research\nenron corp .\ndear dr . kaminski ,\nit was a pleasure talking with you and attending your talk today .\ni am a graduate student in industrial engg . and operations\nresearch working with prof . shmuel oren\non topics in financial instrument pricing and design of\ncontracts in deregulated electricity markets . i am also\ndoing research in auction models and computable equilibrium\nmodels with applications in electricity market design .\ni am planning to graduate with a ph . d . in may 2001 and would\nappreciate hearing about any opportunities in your group at enron .\ni am attaching at copy of my resume ( file : cvrkamat . doc ) for your perusal .\nthanking you ,\nsincerely ,\nrajnish kamat\ngraduate student\nieor , uc - berkeley\n4135 , etcheverry hall\ndept . of industrial engineering and operations research\nuniversity of california at berkeley\nberkeley , ca , 94710\n- cvrkamat . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.980+0000", "entityId": 8806, "properties": {"text": "Subject: re : resume ,\nmolly ,\ni would like to invite this student for an interview ,\nsometimes in late december when things slow down .\ninterviews with all my direct reports and george hopley .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n09 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n10 / 24 / 2000 04 : 32 pm\nto : jinbaek kim @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : resume ,\njinbaek ,\nwe shall invite you to an interview in houston .\nvince\njinbaek kim on 10 / 23 / 2000 07 : 25 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : resume ,\ndear mr . kaminski ,\nhi ,\ni am a ph . d student at ieor department at u . c . berkeley .\nthanks for your presentation today .\nit gave me knowledge and interest in electricity markets ,\nand your company .\nas you mentioned in the presentation ,\ni send a resume to give me opportunity to learn more\nabout your company .\ni hope i can join the super saturday event .\njinbaek\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.984+0000", "entityId": 8807, "properties": {"text": "Subject: re : uc - berkeley graduate student\nvince ,\ni agree . if you think that this candidate would be good for your group\nspecifically - i would invite him in directly .\nhope all is well .\nashley\nvince j kaminski @ ect\n10 / 24 / 2000 04 : 09 pm\nto : ashley baxter / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : uc - berkeley graduate student\nashley ,\nthis is one resume i got today . i think that it makes sense to invite him\nfor an interview directly with my group . he does not qualify as an analyst\ncandidate .\nwhat do you think ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 24 / 2000\n04 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrajnish kamat on 10 / 23 / 2000 07 : 55 : 31 pm\nto : vkamins @ enron . com\ncc :\nsubject : uc - berkeley graduate student\ndr . vincent kaminski\nmanaging director and head of research\nenron corp .\ndear dr . kaminski ,\nit was a pleasure talking with you and attending your talk today .\ni am a graduate student in industrial engg . and operations\nresearch working with prof . shmuel oren\non topics in financial instrument pricing and design of\ncontracts in deregulated electricity markets . i am also\ndoing research in auction models and computable equilibrium\nmodels with applications in electricity market design .\ni am planning to graduate with a ph . d . in may 2001 and would\nappreciate hearing about any opportunities in your group at enron .\ni am attaching at copy of my resume ( file : cvrkamat . doc ) for your perusal .\nthanking you ,\nsincerely ,\nrajnish kamat\ngraduate student\nieor , uc - berkeley\n4135 , etcheverry hall\ndept . of industrial engineering and operations research\nuniversity of california at berkeley\nberkeley , ca , 94710\n- cvrkamat . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.990+0000", "entityId": 8808, "properties": {"text": "Subject: mscf speaker series\nmscf speaker series\nofficial invitation\n?\n?\nit is with great pride that i announce the next event in the speaker series .\nnext friday we will have the honor to host a conference given by mr . vince\nkaminski ? managing director research at enron corp .\n?\nthe next event in the\nstudent speaker series is :\nfriday , november 3 , 2000\n11 : 30 a . m . to 12 : 30 p . m . fast lab\n[ image ] vince kaminski\nmanaging director , research .\nenron corp .\ntentative student speaker series schedule 2000 - 2001\nthe following is a tentative schedule of the mscf student speaker series for\nthe 2000 - 2001 academic year . all events take place from 11 : 30 a . m . to 12 : 30\np . m . in the fast lab ( gsia 229 ) unless otherwise noted . updates are soon to\nfollow .\nvolatility curve and bond basis\naugust 11 , 2000\ndavid hartney & jerry hanweck\nvice president , futures and option sales j . p . morgan\nprice and hedging volatility contracts\nseptember 1 , 2000\ndmitry pugachevsky\ndeutsche bank\ndmitry pugachesky is a director with otc derivatives research of deutsche\nbank , where his research is primarily focussed on credit derivatives . prior\nto joining deutsche bank , dmitry worked for six years with global analytics\ngroup of bankers trust . there he developed models for emerging markets ,\ninterest rates , and equity derivatives and also participated in actual\ntrading and structuring of interest rate options . he received his phd in\napplied mathematics from carnegie mellon university specializing in control\ntheory for stochastic processes . he has published several papers on\nmodelling in emerging markets and on valuation for passport options .\na measurement framework for bank liquidity risk\nseptember 15 , 2000\nraymond cote\nvice president , finrad inc .\nraymond cote is vice president , financial engineering at finrad inc . , a\nmontreal - based consulting firm offering financial management solutions that\ncombine advisory and systems development services to & corporations and\nfinancial institutions .\nabstract :\nliquidity risk , as opposed to credit and market risks , has received little\nattention in professional or academic journals . we argue that analyzing bank\nliquidity risk can be viewed as a variation of credit risk analysis . after\nintroducing some concepts and definitions , the presentation defines a\nframework allowing to measure a bank ' s structural liquidity risk . it then\nshows that combining the framework with modern credit risk measurement tools\nleads to a liquidity risk var measure . the presentation then offers\nconcluding comments on the integration of the liquidity risk measurement\nframework within enterprise - wide risk management .\nthe impact of electronic trading on the uses of quantitative research in\nequity options\nseptember 22 , 2000\nscott morris\nhull group , quantitative research department\nquantitative research in investment management\noctober 6 , 2000\nraman srivastava & anna bulkovshteyn\nassistant vice president , & fixed income , quantitative analysts , putman\ninvestments\n[ image ]\ntba\nnovember 3 , 2000\nvince kaminski\nmanaging director , research .\nenron corp .\nfund management and market efficiency\nnovember 10 , 2000\nandrea dalton\nresearcher , friess associates\n( advisor to the brandywine funds ) .\ntba\nnovember 17 , 2000\njeff keifer & deb\naep\ntutorial on bridge\nnovember 24 , 2000\npierre ste - marie & punit rawal\nmscf students\na corporate risk management framework\ndecember 8 , 2000\ndarin aprati & brian moore\nmcdonald ' s\n[ image ] math speaker series schedule 2000 - 2001\n[ image ] speaker series student committee\n[ image ] previous speakers\n?\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ image ] http : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.995+0000", "entityId": 8809, "properties": {"text": "Subject: re : mscf speaker series\npierre - philippe ,\ni was under the impression the presentation will be at 3 : 30 . 11 : 30 is fine\nwith me\nbut want to confirm it .\nvince\n\" pierre - philippe ste - marie \" on 10 / 28 / 2000 12 : 22 : 36 am\nto : , , ,\n, , ,\n\" pierre - philippe ste - marie \" , ,\n\" punit rawal \" , ,\n, , ,\n, , ,\n, , ,\n, , ,\ncc :\nsubject : mscf speaker series\nmscf speaker series\nofficial invitation\n?\n?\nit is with great pleasure and some amount of pride that i announce the next\nevent in the speaker series . next friday we will have the honor to host a\nconference given by mr . vince kaminski head of research at enron corp . ?\n?\nthe ? sixth event is ? next friday ( nov 3 rd ) ! ?\nfrom : 11 . 30 - 13 . 30\nplease attend ! ! !\nthe next event in the\nstudent speaker series is :\nfriday , november 3 , 2000\n11 : 30 a . m . to 12 : 30 p . m . fast lab\n[ image ] vince kaminski\nenron corp .\ntentative student speaker series schedule 2000 - 2001\nthe following is a tentative schedule of the mscf student speaker series for\nthe 2000 - 2001 academic year . all events take place from 11 : 30 a . m . to 12 : 30\np . m . in the fast lab ( gsia 229 ) unless otherwise noted . updates are soon to\nfollow .\nvolatility curve and bond basis\naugust 11 , 2000\ndavid hartney & jerry hanweck\nvice president , futures and option sales j . p . morgan\nprice and hedging volatility contracts\nseptember 1 , 2000\ndmitry pugachevsky\ndeutsche bank\ndmitry pugachesky is a director with otc derivatives research of deutsche\nbank , where his research is primarily focussed on credit derivatives . prior\nto joining deutsche bank , dmitry worked for six years with global analytics\ngroup of bankers trust . there he developed models for emerging markets ,\ninterest rates , and equity derivatives and also participated in actual\ntrading and structuring of interest rate options . he received his phd in\napplied mathematics from carnegie mellon university specializing in control\ntheory for stochastic processes . he has published several papers on\nmodelling in emerging markets and on valuation for passport options .\na measurement framework for bank liquidity risk\nseptember 15 , 2000\nraymond cote\nvice president , finrad inc .\nraymond cote is vice president , financial engineering at finrad inc . , a\nmontreal - based consulting firm offering financial management solutions that\ncombine advisory and systems development services to & corporations and\nfinancial institutions .\nabstract :\nliquidity risk , as opposed to credit and market risks , has received little\nattention in professional or academic journals . we argue that analyzing bank\nliquidity risk can be viewed as a variation of credit risk analysis . after\nintroducing some concepts and definitions , the presentation defines a\nframework allowing to measure a bank ' s structural liquidity risk . it then\nshows that combining the framework with modern credit risk measurement tools\nleads to a liquidity risk var measure . the presentation then offers\nconcluding comments on the integration of the liquidity risk measurement\nframework within enterprise - wide risk management .\nthe impact of electronic trading on the uses of quantitative research in\nequity options\nseptember 22 , 2000\nscott morris\nhull group , quantitative research department\nquantitative research in investment management\noctober 6 , 2000\nraman srivastava & anna bulkovshteyn\nassistant vice president , & fixed income , quantitative analysts , putman\ninvestments\n[ image ]\ntba\nnovember 3 , 2000\nvince kaminski\nenron corp .\nfund management and market efficiency\nnovember 10 , 2000\nandrea dalton\nresearcher , friess associates\n( advisor to the brandywine funds ) .\ntba\nnovember 17 , 2000\njeff keifer & deb\naep\ntutorial on bridge\nnovember 24 , 2000\npierre ste - marie & punit rawal\nmscf students\na corporate risk management framework\ndecember 8 , 2000\ndarin aprati & brian moore\nmcdonald ' s\n[ image ] math speaker series schedule 2000 - 2001\n[ image ] speaker series student committee\n[ image ] previous speakers\n?\npierre - philippe ste - marie\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n[ image ] http : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:46.999+0000", "entityId": 8810, "properties": {"text": "Subject: re : ewrm outline\nvince\nthanks - based on a \" speed read \" it would appear that srm sits neatly in the\nvolumetric part of your framework . regarding systems i am keen to preserve\nthe work kevin has already done and i suspect we can eventually use the\nvisualization tools in the risktrac front end to display the results should\nwe require .\nto be honest , i feel a good deal more comfortable that there is already a\nframework and initiative in place - its very easy to feel like the \" angry\nlone voice \" in an effort like this - fortunately the practitioners of the art\nof risk management generally travel in a similar direction !\ni shall make sure our efforts remain in congruence .\nrgds\ndp\nvince j kaminski @ ect\n10 / 27 / 2000 04 : 21 pm\nto : david port / market risk / corp / enron @ enron\ncc :\nsubject : ewrm outline\ndavid ,\nthis is the outline of the ewrm project .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.004+0000", "entityId": 8811, "properties": {"text": "Subject: re : check\nvince ,\n?\noh . ? i sent an invoice to habiba for aus 5 k a while back , and she informed\nme that she passed it along to the people who are handling the agreement now\n( i take that as fiona grant in london ? ) . ? i will then send out another\ninvoice of aus 5 k in the next week or so for the remaining balance . ? should\ni have sent the invoice to you ?\n?\nthanks ,\njulie\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : monday , october 30 , 2000 9 : 12 pm\nsubject : re : check\njulie ,\na clarification . we had an agreement with chris and les to contribute ? aus\n10 , 000\nas a part of the cost .\nvince\n\" julie \" on 10 / 30 / 2000 12 : 32 : 14 pm\nto : ? ?\ncc :\nsubject : ? re : check\nvince ,\nthank you for your email .\nwe will send you a copy of the book as soon as it is available , which we\nare now estimating to be around 21 november ( no need to send us a cheque ;\nyou deserve it ) .\njust let us know if we should use a different address than your office ? in\nhouston .\nthanks again for all of your help .\njulie\n- - - - - original message - - - - -\nfrom : ? vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : monday , october 30 , 2000 2 : 16 ? pm\nsubject : check\njulie ,\nthis message was returned to me a few times when ? i sent it from my home\naddress .\nvince\n- - - - - - - - - - - - - - - - - - - - - - ? forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n08 : 00 am ? - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 28 / 2000 12 : 12 : 57 ? pm\nto : julie @ lacima . co . uk\ncc : vkaminski @ aol . com , vkamins @ enron . com\nsubject : ? check\njulie ,\nas the book is about to be released to the ? market , i would like to start\nthe\nprocess to issue the check to lacima . ? who will be the payee ( lacima ) and\nwhat\nis the ? address ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.009+0000", "entityId": 8812, "properties": {"text": "Subject: re : check\njulie ,\na clarification . we had an agreement with chris and les to contribute aus\n10 , 000\nas a part of the cost .\nvince\n\" julie \" on 10 / 30 / 2000 12 : 32 : 14 pm\nto :\ncc :\nsubject : re : check\nvince ,\n?\nthank you for your email . ?\n?\nwe will send you a copy of the book as soon as it is available , which we are\nnow estimating to be around ? 21 november ( no need to send us a cheque ; you\ndeserve it ) .\n?\njust let us ? know if we should use a different address than your office in\nhouston .\n?\nthanks again for all of your help .\n?\njulie\n?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : monday , october 30 , 2000 2 : 16 pm\nsubject : check\njulie ,\nthis message was returned to me a few times when i sent it from my home\naddress .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n08 : 00 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 28 / 2000 12 : 12 : 57 pm\nto : ? ? julie @ lacima . co . uk\ncc : ? ? vkaminski @ aol . com , vkamins @ enron . com\nsubject : ? check\njulie ,\nas the book is about to be released to the market , i would like to start\nthe\nprocess to issue the check to lacima . who will be the payee ( lacima ) and\nwhat\nis the address ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.014+0000", "entityId": 8813, "properties": {"text": "Subject: re : houston trip\ni extended the rental on the apartment until the 20 th of november .\nshirley\nvince j kaminski\n10 / 30 / 2000 01 : 31 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : houston trip\nshirley ,\ni hope it ' s ok with the apartment company .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n01 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp . - europe\nfrom : sharad agnihotri 10 / 30 / 2000 11 : 40 am\nto : paulo issler / hou / ect @ ect , zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : houston trip\nhi all ,\ni am hoping to come to houston from the 5 th to the 17 th of november .\nsorry about the short notice .\nlooking forward to seeing you .\nsharad agnihotri", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.020+0000", "entityId": 8814, "properties": {"text": "Subject: check\njulie ,\nthis message was returned to me a few times when i sent it from my home\naddress .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n08 : 00 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 28 / 2000 12 : 12 : 57 pm\nto : julie @ lacima . co . uk\ncc : vkaminski @ aol . com , vkamins @ enron . com\nsubject : check\njulie ,\nas the book is about to be released to the market , i would like to start the\nprocess to issue the check to lacima . who will be the payee ( lacima ) and what\nis the address ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.024+0000", "entityId": 8815, "properties": {"text": "Subject: request submitted : access request for mark . breese @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000005820\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 26 / 00 2 : 27 : 45 pm\nrequested for : mark . breese @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.030+0000", "entityId": 8816, "properties": {"text": "Subject: credit exposure model\nbill ,\nalex and i are working on the credit exposure model . we finished the initial\ndesign issues regarding\ninput and output . we would like to have a meeting with you to seek feedback .\nwe also preceeded\nto write the underlying model . so feedback at early stage can be important\nfor the later development .\npaulo issler is working on the short term enhancement to the credit loss\nmodel : adding asian option to\nthe model built by vasant and amitava .\nlet me know when is a good time for us to meet .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.035+0000", "entityId": 8817, "properties": {"text": "Subject: xms memo\nover the next several months enron will be phasing in a new expense - reporting\nproduct , concur technologies \u0001 , expense management system ( xms ) . you will be\nable to prepare your expense report , send it for approval , and transmit it\nfor payment using the intranet . it will be far more user - friendly than the\nexcel - based form currently in use and will provide a truly paperless\nprocess . in addition , the system efficiently integrates with the sap\naccounting system .\non october 16 , employees who used a prior version of the product upgraded to\nthe most current release . on october 30 , it will be available to enron corp\nemployees , company 0011 . the rollout to other groups will continue through\njanuary 2001 . rollout announcements will be made to each business unit .\nin houston , it central will provide four training sessions per week . to\nenroll in a class go to itcentral . enron . com and click on\nservices > training > schedules . those in outlying locations and those who prefer\non - line training can use leap by signing on to sap . enron . com and clicking on\ntraining , then leap . use xms ( lower case ) as the user id and password .\nwe are excited about this new system and hope you will find it useful . if\nyou have questions regarding its use contact it central at ( 713 ) 345 - 4727 or\nvisit their website .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.043+0000", "entityId": 8818, "properties": {"text": "Subject: approval for reviewer\ngibner , peyton s has suggested reviewers and submitted them for your\napproval . you may review / modify this list of reviewers by logging on to pep\nat http : / / pep . corp . enron . com and going to supervisor services . please\nremember , no feedback can be completed on gibner , peyton s until you have\napproved the list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.050+0000", "entityId": 8819, "properties": {"text": "Subject: approval for reviewer\nroberts jr , michael a has suggested reviewers and submitted them for your\napproval . you may review / modify this list of reviewers by logging on to pep\nat http : / / pep . corp . enron . com and going to supervisor services . please\nremember , no feedback can be completed on roberts jr , michael a until you\nhave approved the list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.056+0000", "entityId": 8820, "properties": {"text": "Subject: interviews for gary hickerson - wednesday , november 1 , 2000\nmike / vince :\nyour schedule to interview nancy beaty for gary hickerson ' s position is\nbelow :\nwednesday , november 1\nmike roberts 4 : 30 pm ebl 938\nvince kaminski 5 : 00 pm ebl 938\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.061+0000", "entityId": 8821, "properties": {"text": "Subject: kin tso - ut candidate for direct hire\nvince ,\njust wanted to follow up on our conversation yesterday regarding kin tso .\ncharlene actually called kin yesterday to let him know that your group was\ninterested in him as a direct hire and would be contacting him this week . as\nwe discussed , kin was told that his quantitative skills were a much better\nfit for your group instead of our rotating associate program . we let him\nknow that the associate program would not be making him an offer but he is\nbeing considered for a direct hire . kin was receptive and is looking forward\nto hearing from you . we will consider this issue closed from the associate\nand analyst program . we hope that you might find a direct hire fit for him\nin your area . if you have any additional questions , please let me know .\nthanks so much .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.065+0000", "entityId": 8822, "properties": {"text": "Subject: re : enron case study\noutstanding , cindy . thank you so much . i will get you some questions\nafter i talk with vince .\njohn\nat 01 : 44 pm 10 / 31 / 00 - 0600 , you wrote :\n>\n> good afternoon john ,\n>\n> i hope things are well with you . i am writing to update you on the status\n> of your meetings with andy fastow , ken lay and jeff skilling . i have\n> arranged the following meeting dates and times with ken lay and jeff\n> skilling , ( i am still trying to work with andy fastow ' s schedule ) :\n>\n> jeff skilling\n> december 4 th\n> 2 : 00 - 3 : 00 p . m .\n>\n> ken lay\n> december 4 th\n> 3 : 30 - 4 : 30 p . m .\n>\n> also , i will attempt to schedule the meeting with andy fastow for december\n> 4 th for convenience - this will also allow us to possibly schedule\n> additional meetings for the 5 th ( as needed ) . i will let you know as soon\n> as i ' m successful .\n>\n> regards ,\n>\n> cindy derecskey\n> university affairs\n> enron corp .\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.070+0000", "entityId": 8823, "properties": {"text": "Subject: approval is overdue : access request for grace . kim @ enron . com\nthis request has been pending approval for 2 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000006238\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 31 / 00 5 : 03 : 29 pm\nrequested for : grace . kim @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.075+0000", "entityId": 8824, "properties": {"text": "Subject: approval is overdue : access request for mark . breese @ enron . com\nthis request has been pending approval for 2 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000005820\napprover : stinson . gibner @ enron . com\nrequest create date : 10 / 26 / 00 2 : 27 : 45 pm\nrequested for : mark . breese @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.080+0000", "entityId": 8825, "properties": {"text": "Subject: re : weatherdelta demonstration scheduling\nalex ,\ni agree . let them make up the data . please , ask shirley to determine\nconvenient date and time .\nvince\nalex huang @ enron\n11 / 01 / 2000 03 : 59 pm\nto : vince j kaminski / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , lance cunningham / na / enron @ enron , sevil\nyaman / corp / enron @ enron , stinson gibner / hou / ect @ ect\ncc :\nsubject : re : weatherdelta demonstration scheduling\nhi all ,\ni got the following reply from mike denton .\ncan you let me know what time is most convenient for you so i will\narrange a time for the presentation ?\ni don ' t think we should provide them any data , unless you think otherwise .\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex huang / corp / enron on 11 / 01 / 2000 03 : 54\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndenton mike on 11 / 01 / 2000 03 : 05 : 48 pm\nto : alex . huang @ enron . com\ncc :\nsubject : re : weatherdelta demonstration scheduling\nmr . huang ,\nwe would be happy to demonstrate the features and functionality of the\nweatherdelta tool set for your team at enron . early next week ( tuesday or\nwednesday ) are both possible , as well as early the following week . the\ndemonstration can take 90 minutes or more , depending on the number of\nquestions and the level of detail .\nideally , you could provide us with some of your data and we could\ndemonstrate how to value a full - requirements contract to service that\nparticular load . to do this we will need one or more years of hourly\nconsumption data , and the general location of the load . ideal data formats\nare csv files of either 365 rows x 25 columns ( date , hrl , hr 2 . . ) or 8760 rows\nx 3 columns ( date , hr , load ) . in lieu of using your data , we will provide\nsample load data .\nplease feel free to call me and we can discuss schedules and the particulars\nof the product overview and demonstration .\nthank you for your interest ,\nmichael j . denton\nvp na strategic consulting\ncaminus corporation\n212 - 515 - 3667", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.085+0000", "entityId": 8826, "properties": {"text": "Subject: credit exposure model\nalex ,\ni have set up a meeting with bill bradford on monday , nov . 6 , at 10 : 00 am in\nhis office ( eb 2861 ) to\ndiscuss the credit exposure model specifications .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 11 / 01 / 2000 09 : 19 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : william s bradford on 10 / 31 / 2000 06 : 50 pm\nto : zimin lu / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , alex huang / corp / enron @ enron , dorothy\nyoungblood / hou / ect @ ect\nsubject : re : credit exposure model\ni am out of the office this week but will be back in the office all next\nweek . please coordinate a time with my assistant dorothy youngblood .\nzimin lu\n10 / 31 / 2000 02 : 44 pm\nto : william s bradford / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , alex huang / corp / enron @ enron\nsubject : credit exposure model\nbill ,\nalex and i are working on the credit exposure model . we finished the initial\ndesign issues regarding\ninput and output . we would like to have a meeting with you to seek feedback .\nwe also preceeded\nto write the underlying model . so feedback at early stage can be important\nfor the later development .\npaulo issler is working on the short term enhancement to the credit loss\nmodel : adding asian option to\nthe model built by vasant and amitava .\nlet me know when is a good time for us to meet .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.089+0000", "entityId": 8827, "properties": {"text": "Subject: re : my son\nkristin ,\ni think that we have done enough for this guy . all we can do is to give\nsomebody a chance .\nthe god helps those who help themselves .\nthanks for all your help and your efforts .\nvince\nkristin gandy @ enron\n11 / 01 / 2000 03 : 19 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : my son\nvince ,\ni left a message with one of yaron ' s roommates on thursday afternoon for him\nto call asap for an interview on sunday . i guess he took the wrong number\ndown but i do not understand this because the roommate read the number back\nto me and it was correct . when i did not hear from yaron i called on friday\nand left a voice mail with my cell and office numbers . i still did not hear\nfrom him and called again yesterday morning . i finally received a call at 4\npm yesterday but by that time my team and myself were half way back to\nhouston . sorry it did not work out . i have a call into charlene jackson as\nto how she wants me to proceed and i will get back with you .\nkristin\nvince j kaminski @ ect\n11 / 01 / 2000 08 : 40 am\nto : john goodpasture / ots / enron @ enron , kristin gandy / na / enron @ enron\ncc :\nsubject : my son\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 01 / 2000\n08 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shmuel oren \" on 10 / 31 / 2000 02 : 27 : 18 pm\nto :\ncc :\nsubject : my son\nvince\napparently the recruiter spoke to one of my son ' s roommates and left a phone\nnumber ( 713 ) 343 - 3214 which he tried several times and got busy signals .\ntoday she called just before you called me and left her cellphone number but\nhe was in classes all morning and got the message in the afternoon . i really\nappreciate your going out of your ? way to help . perhaps there will be another\nopportunity . ?\nshmuel ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.094+0000", "entityId": 8828, "properties": {"text": "Subject: re : my son\nvince ,\ni left a message with one of yaron ' s roommates on thursday afternoon for him\nto call asap for an interview on sunday . i guess he took the wrong number\ndown but i do not understand this because the roommate read the number back\nto me and it was correct . when i did not hear from yaron i called on friday\nand left a voice mail with my cell and office numbers . i still did not hear\nfrom him and called again yesterday morning . i finally received a call at 4\npm yesterday but by that time my team and myself were half way back to\nhouston . sorry it did not work out . i have a call into charlene jackson as\nto how she wants me to proceed and i will get back with you .\nkristin\nvince j kaminski @ ect\n11 / 01 / 2000 08 : 40 am\nto : john goodpasture / ots / enron @ enron , kristin gandy / na / enron @ enron\ncc :\nsubject : my son\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 01 / 2000\n08 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" shmuel oren \" on 10 / 31 / 2000 02 : 27 : 18 pm\nto :\ncc :\nsubject : my son\nvince\napparently the recruiter spoke to one of my son ' s roommates and left a phone\nnumber ( 713 ) 343 - 3214 which he tried several times and got busy signals .\ntoday she called just before you called me and left her cellphone number but\nhe was in classes all morning and got the message in the afternoon . i really\nappreciate your going out of your ? way to help . perhaps there will be another\nopportunity . ?\nshmuel ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.098+0000", "entityId": 8829, "properties": {"text": "Subject: alliance info alert : ferc report on western markets\nat its special meeting today , ferc released the results of its eagerly\nawaited probe into california ' s summer power crisis , concluding that under\ncertain circumstances , california ratepayers were subjected to unjust and\nunreasonable power rates due to california ' s \" seriously flawed \" market\nstructure and rules in conjunction with tight demand and supply conditions\nthroughout the west .\nthe ferc staff report on western markets and the causes of the summer 2000\nprice abormalities , entitled , part i of staff report on u . s . bulk power\nmarkets , is available at the following website :\nin response , ferc issued an order proposing a series of sweeping structural\nchanges to the california iso and px to help remedy the pricing problems , and\nsolicited public comment by november 22 . a technical conference has also\nbeen scheduled for november 9 , to discuss the proposed solutions and other\nremedies that might be suggested ( details tba ) . while all four commissioners\nsupported the order , the order stretched the commission . chairman hoecker\nand comm . breathitt expressed strong endorsements , while comms . hebert and\nmassey concurred , citing areas where they felt the commission had either\n\" over - reached \" or not gone far enough , as discussed below . a final order is\nexpected to be issued by year ' s end .\nat the same time , the commission warned california consumers of their\ncontinued risk of paying higher prices unless policy makers there resolve\nstate issues , such as : ( 1 ) immediately implementing the availability of day\nahead markets for power purchases ; ( 2 ) development of demand responses ; ( 3 )\nsiting of generation and transmission ; and ( 4 ) assurance of sufficient\nreserve requirements .\nhighlights of proposed california structural remedy\nin its order , ferc proposed a series of market overhauls , including :\n( 1 ) eliminating the state ' s mandatory requirement that the state ' s\ninvestor - owned utilities buy and sell electricity through the px , and allowing\nthese utilities to purchase electricity through forward contracts and other\nalternative mechanisms to manage supply risks .\n( 2 ) requiring market participants to schedule 95 percent of their\ntransactions in the day - ahead market and instituting a penalty charge for\nunder - scheduling ( in excess of five percent of hourly load requirements ) , in\norder to discourage over - reliance on the real - time spot market .\n( 3 ) establishing independent , non - stakeholder governing boards for the iso\nand px .\n( 4 ) modifying the current single price auction system by ( a ) imposing a\ntemporary $ 150 / mwh \" soft cap \" that prohibits supply bids in excess of $ 150\nfrom setting the market - clearing price for all bidders ; ( b ) requiring sellers\nbidding above $ 150 / mwh to report their bids to ferc on a confidential , weekly\nbasis and provide certain cost support ; and ( c ) requiring the iso and px to\nreport monthly information on such bids . the commission ' s price mitigation\nmeasures would remain in effect through december 31 , 2002 .\n( 5 ) declining to order retroactive refunds for the state ' s ratepayers and\nutilities , citing insufficient authority to do so , but subjecting sellers to\npotential refund liability for transactions from october 2 , 2000 until\ndecember 21 , 2002 , but no lower than their marginal or opportunity costs , if\nferc finds non - competitive behavior .\n( 6 ) encouraging accelerated state siting approval and introduction of demand\nresponse management programs .\nseparately , the draft order rejected the iso ' s request for an extension of\nits current purchase price cap authority , and the px ' s request for price\ncapping authority .\ncommissioner responses\ncomm . herbert reluctantly concurred , noting that his decision may change when\na final order is considered based on comments filed or testimony offered at\nthe november 9 meeting . he stressed that he would have preferred that the\norder address four areas : ( 1 ) eliminate all price controls in california\nmarkets ; ( 2 ) abolish the single price auction entirely ; ( 3 ) terminate the\n\" buy and sell \" mandate in the px ; and ( 4 ) direct the iso to address a long\nlist of cited problems in its january 2001 rto filing , rather than having the\ncommission prescribe specific remedies .\nhebert stated that while he was opposed in principle to the \" soft cap \"\nconcept , if one had to be adopted , then the soft cap should increase\nincrementally increase over time at specific pre - announced dates . he\nbelieves that this would serve to both encourage greater investment in\nfacilities and additional forward contracting as well as provide an incentive\nfor california regulators to address market design and other flaws . also , he\nwould not have disbanded the stakeholder governing boards at this time , but\nallow the iso and px to address this issue in their january 2001 rto\nfilings . in addition , he would not dictate risk management methods ,\npreferring instead that market participants determine appropriate actions on\ntheir own . finally , he advised californians not to be so environmentally\nfocused that they do not realize their tremendous need for generation\ncapacity .\ncomm . breathitt stated her approval of the order while warning that ferc\ncannot allow the events of this past summer to reverse or slow the progress\ntowards open and competitive markets . she noted that it was the commission ' s\njob to guide the market to self - correct and not to conduct \" command and\ncontrol . \" she also commended the managers of the iso and px , saying that\nthey have performed admirably . however , she noted she is awaiting comments\non the single price auction remedy and its accompanying confidential\nreporting requirements .\ncomm . massey concurred , but emphasized that he advocates a more aggressive\napproach . he feels that the congress has \" put its thumb on the scale \" in the\nfederal power act to protect consumers . stating that prices will continue to\nbe unreasonable in the future , he believes that this order moves in the right\ndirection , by proposing solutions to identified problems such as an over\nreliance on the spot market , lack of demand response , the need to\nreconstitute governance of the iso and px and the elimination of the buy / sell\nmandate . comm . massey specifically called for comments regarding whether the\n$ 150 / mwh soft cap went far enough , whether ferc has the legal authority to\nissue refunds and to determine whether there should be a requirement for a\ncertain percentage of forward contracting to hedge against the spot market\nprice volatility .\nfinally , chairman hoecker stated his strong support of the order , but noted\nthat this is \" no time to pull punches . \" he emphasized that the commission\nneeded frank comments from the industry . he echoed comm . breathitt ' s warning\nthat competition is at risk and that they needed to get the markets back on\ntrack . noting that the commission lacked authority to order refunds , he\nstated that the responsibility rests with congress . addressing\njurisdictional issues , he stated that siting problems encountered at the\nstate level are slowing the \" meandering transition \" to competition . he feels\nthat the state of california and ferc need to work together to resolve these\nproblems and that ferc is not attempting to usurp power . rather , california\nis part of a broader interstate market and is dependent on the western region\nfor reliable energy , thus placing the burden on federal action to make things\nwork , hoecker maintained . the chairman also said that the commission will\nfully investigate and act upon complaints of market power abuse or further\nevidence provided by staff ' s ongoing investigation .\nif you have any questions or comments , please call jack cashin at\n202 / 508 - 5499 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.103+0000", "entityId": 8830, "properties": {"text": "Subject: price caps\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vladimir gorny / hou / ect on 11 / 01 / 2000\n03 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tim belden 10 / 27 / 2000 05 : 40 pm\nto : john j lavorato / corp / enron , dave delainey , mike swerzbin / hou / ect @ ect ,\nrobert badeer / hou / ect @ ect , sean crandall / pdx / ect @ ect , tim belden / hou / ect @ ect ,\njeff richter / hou / ect @ ect , diana scholtes / hou / ect @ ect , tom alonso / pdx / ect @ ect ,\nmark fischer / pdx / ect @ ect , john m forney / hou / ect @ ect , paul choi / sf / ect @ ect ,\njohn malowney / hou / ect @ ect , holli krebs / hou / ect @ ect , greg wolfe / hou / ect @ ect ,\nchris h foster / hou / ect @ ect , stewart rosman / hou / ect @ ect , kim ward / hou / ect @ ect ,\ndebra davidson / pdx / ect @ ect , tim belden / hou / ect @ ect , lester\nrawson / pdx / ect @ ect , john zufferli / cal / ect @ ect , james d\nsteffes / na / enron @ enron , mary hain / hou / ect @ ect , christopher f\ncalger / pdx / ect @ ect , dave parquet , phillip k allen / hou / ect @ ect , vladimir\ngorny / hou / ect @ ect , monica lande / pdx / ect @ ect , elliot mainzer / pdx / ect @ ect , tim\nheizenrader / pdx / ect @ ect , cooper richey , stephen swain / pdx / ect @ ect , susan j\nmara / sfo / ees @ ees , steven j kean / na / enron @ enron , mark palmer / corp / enron @ enron\ncc : debra davidson / pdx / ect @ ect\nsubject : price caps\nthe following summarizes recent price cap events in california . i think that\ni have most of it right . if there is anything wrong or missing please let me\nknow . please don ' t share the attached spreadsheet with anyone outside of\nenron .\nregards ,\ntim\nnew cap specifics\non 10 / 26 / 2000 the iso board passed a motion by a vote of 13 - 10 to implement a\nnew price cap methodology .\nthe new methodology will become effective 11 / 3 / 2000 or as soon thereafter as\ncan be implemented . caiso staff has indicated that it will be difficult to\nachieve that start date . they have not yet indicated what an achievable date\nmight be .\nthe new price cap methodology will remain in place until :\ncomprehensive market changes have been implemented and the market has proven\nto be workably competitive under a variety of load conditions .\neither ferc or the iso board orders its removal .\ncap prices will be based on the average nymex l 3 d settlement average and the\nfollowing heat rate table :\nload level heat rate 4 . 00 gas example cap\n40 gw $ 250 / mwh $ 250 / mwh\ncaps will be rounded up to the nearest $ 5 / mwh increment .\ndemand bids and demand responsiveness programs are exempt from these caps .\nthe iso will post the price caps for each load level at least 48 hours prior\nto the beginning of each calendar month . based on the iso ' s two day - ahead\nsystem load forecast , the iso will post hourly caps at least 24 hours prior\nto the hour of delivery .\nferc context\nferc has delegated cap authority to the caiso until 11 / 15 / 2000 .\nthe iso has asserted that they don ' t need ferc authority since it is a bid\ncap rather than a sales cap . ferc regulates sales , not purchases , of\nelectricity and therefore can regulate sales prices but not purchase prices .\nthe iso has filed with ferc for an extension of the price cap authority .\nferc has to rule on the filing by 11 / 18 / 2000 . ( note that this is 3 days\nafter their authority expires )\nferc will release its proposed order on 11 / 1 / 2000 based on the results of its\n206 investigation of the california wholesale power markets . we don ' t know\nwhat they will find or what they will propose .\nthe proposed order will have a 30 day comment period , after which ferc will\nlikely issue a final order . ferc will be accepting oral comments on\n11 / 9 / 2000 in washington . enron still has to determine who will provide oral\ncomments .\nmany companies have filed at ferc advocating or opposing a litany of price\ncaps , cost based rates , and market redesign recommendations .\nit is likely that the price caps approved by the iso board will go into\neffect . how long they will remain in effect will depend on whether ferc\nextends the iso price cap authority and whether the final order stemming from\nthe current 206 investigation stipulates a specific price cap policy .\nimpact of price caps\nthe attached spreadsheet contains a table of likely maximum monthly prices at\ndifferent gas price levels . we think that this is the highest that markets\nwould clear since it assumes that each hour clears at the cap . it is hard to\nsay whether actual prices would clear significantly lower than the cap\nbecause we don ' t know whether sellers will offer below the cap or at the\ncap . the assumptions behind our analysis are detailed in the bullets below .\ntake actual historical loads from 1999 and 2000 .\ncalculate implied price cap for each hour using actual historical load , new\nprice cap methodology , and a range of gas prices .\ndivide historical hours into peak and off - peak buckets .\ncalculate average price for each month for peak hours and off - peak hours .\nfor example , we have two years worth of data for the months of january\nthrough september . each month has approximately 400 hours . for january\nthrough september , we took approximately 800 observations for each month ( 400\nfrom each year ) and calculated a simple average of all of the individual\nobservations .\nwe created a peak table and an off - peak table . the table shows the\ncalculated implied cap based off of the acutal loads at varying gas prices\nfor each month . this value represents what the month would clear at if each\nhour cleared at the cap ( based on historic loads ) . while any given hour\ncould be above this value , our calculation estimates the likely monthly\naverage cap value !\nthe blue shading indicates what the caps would be given current ( 10 / 27 / 2000\nnymex ) forward prices . the yellow shading indicates those forward power\nprices which are in excess of the proposed cap .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.107+0000", "entityId": 8831, "properties": {"text": "Subject: the ferc staff report on western markets and the causes of the\nsummer 2000 price abormalities , entit\nthe ferc staff report on western markets and the causes of the summer 2000\nprice abormalities , entitled , part i of staff report on u . s . bulk power\nmarkets , is available at the following website :\nhttp : / / www . ferc . fed . us / electric / bulkpower . htm . if you have any questions or\ncomments , please call jack cashin at 202 / 508 - 5499 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.111+0000", "entityId": 8832, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.116+0000", "entityId": 8833, "properties": {"text": "Subject: london visit\nhi maureen\nhow many days are you coming over for ? in addition to the couple of days\nyou ' ll be spending at brook hunt , i can see one further day with our metals\npeople , and one extra day with rodrigo ( from rac ) looking at our inflation\nmodel . do you have 4 + days ?\nall the best\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.120+0000", "entityId": 8834, "properties": {"text": "Subject: thank you for the opportunity\nhello vince ,\ni have heard you were sick . hope it is over .\nthank you for the opportunity to visit enron , again , and to speak to the\nguys . you have a good team . i wonder if you have come up with a decision\nregarding my employment ?\nlook forward to hearing from you .\nregards ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.125+0000", "entityId": 8835, "properties": {"text": "Subject: re : interview with the enron research group\nyou are quite welcome kin . we wish you the best in reaching your career\ngoals and we look forward to hearing from you in the future .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n\" kin tso \" on 11 / 01 / 2000 12 : 52 : 02 pm\nto :\ncc :\nsubject : re : interview with the enron research group\ndear shirley ,\nthank you so much for your email . after carefully considering my career\ngoals , i feel the associate program with a rotation in the enron\nresearch group is a better fit . i am really interested in enron and i\nwould try to contact your colleagues in the associate program about this\nissue before i schedule an interview with the enron research group . i\ntruly apologize for the inconvenience caused and i want to thank you\nagain for your kind assistance .\nregards ,\nkin tso\n512 - 619 - 5323\n- - - - - original message - - - - -\nfrom : shirley . crenshaw @ enron . com\nsent : tue 10 / 31 / 2000 12 : 16 pm\nto : kin tso\ncc : vince . j . kaminski @ enron . com ; stinson . gibner @ enron . com ;\nzimin . lu @ enron . com ; tanya . tamarchenko @ enron . com ; molly . magee @ enron . com\nsubject : interview with the enron research group\ngood morning kin :\nyour resume was forwarded to the research group with enron north\namerica and they would like you to come in for an informal\ninterview\nsometime next week . the following dates and times are available\nwithin\nour group . please let us know if either of these two dates fit\nyour\nschedule .\nmonday , november 6 th :\n8 : 00 am to 11 : 30 am\nfriday , november 10 th :\n8 : 00 am to 11 : 30 am\nsince we prefer these interviews to begin at 8 : 00 am , it would\nprobably\nbe best if you came the night before , spent the night at a hotel\ndowntown\nand then were able to be at the enron bldg by 8 : 00 am . please\nlet me\nknow if this is what you would like to do and we will make the\nhotel\nreservation .\ni look forward to hearing from you .\nbest regards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.129+0000", "entityId": 8836, "properties": {"text": "Subject: interviews scheduled for monday , november 6 th ( gary hickerson ' s\nposition )\ngood morning all :\nbelow are two more candidates for gary hickerson ' s tech position . they\nwill be here monday , november 6 th for interviews .\ncynthia shanley\nvince kaminski 8 : 30 am ebl 938\nmike roberts 9 : 00 am ebl 938\nchristopher burford\nvince kaminski 9 : 00 am ebl 9 c 2\nmike roberts 9 : 30 am ebl 9 c 2\nplease mark your calendars .\nthanks !\nshirley\nmolly :\ndo you have copies of the resumes for these two and the others that\nare being interviewed today and tomorrow ?\nthanks !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.134+0000", "entityId": 8837, "properties": {"text": "Subject: re : meet during cmu visit ?\naziz ,\nplease , contact me before or after the presentation and we can find\na time slot to chat later on friday .\nvince\nal 3 v on 10 / 31 / 2000 01 : 59 : 11 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : meet during cmu visit ?\ndr . kaminski :\ni am a ph . d . student here at carnegie mellon who has a long - standing\ninterest in the energy industry .\ni have recently developed the framework of a simple model for electricity\nprices that i would like your opinion on . could you please chalk out some\ntime for me during your cmu visit this friday ?\nunlike traditional electricty pricing models , which assume that the\nlog - price is a sum of a couple of stochastic factors , i assume that some\nfundamentals of the electricity market are driven by stochastic factors .\nnext , given the current values of these factors , price is determined by\neconomic forces of profit maximization by price setting electricity\ngenerators . unlike typical factor models , the factors in my model are\npotentially observable .\nthank you ,\naziz a . lookman\ngraduate school of industrial administration\n5000 forbes avenue\ncarnegie mellon university\npittsburgh , pa 15213\ntel : 412 - 268 - 3681\nfax : 412 - 268 - 6837\n( pls . mark the fax c / o jackie cavendish )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.142+0000", "entityId": 8838, "properties": {"text": "Subject: re : gsia visit\nduane ,\nsorry i will miss you . i have a meeting with chester already on my schedule .\nvince\nds 64 @ cyrus . andrew . cmu . edu on 10 / 31 / 2000 03 : 40 : 40 pm\nto : \" vince j kaminski \"\ncc : \" chester s spatt \" , \" pierre - philippe ste - marie \"\nsubject : gsia visit\nvince ,\nthis friday during your visit i will be in california for a cousin ' s\nwedding . i am having miserable luck connecting with you . however , while\nyou are at gsia , chester spatt ( one of my co - authors ) would like to meet\nwith you if your schedule permits . i am copying him on this email so you\ncan contact him directly . please also let peirre ( who is also copied on this\nemail ) know whatever you work out .\nsee you next time i hope ,\nduane\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.149+0000", "entityId": 8839, "properties": {"text": "Subject: re : mscf speaker series\npierre - philippe ,\nthe time of the presentation , 11 : 30 is fine with me .\ni shall arrive thu evening and i shall get to the hotel by cab . thanks\nfor your kind offer to meet me at the airport but i shall be arriving at late\nhour\nand don ' t want to inconvenience you . kevin kindall from enron will come with\nme .\ni shall also need a projector for my m / s power point presentation on\n\" volatility in the us power markets \" .\ni shall be very glad to meet with duane .\nvince\n\" pierre - philippe ste - marie \" on 10 / 30 / 2000 08 : 47 : 17 pm\nto :\ncc :\nsubject : re : mscf speaker series\ndear mr . kaminski ,\nthe presentation is scheduled on friday the 3 rd at 11 . 30 so that new york\nstudents can attend .\nwould you like me to get you at the airport ?\nif you want i can also organize a short meeting with professor seppi which\nis very interested in energy derivatives .\nmy goal is to make your trip to pittsburgh as pleasant as possible .\ntherefore if there is anything i can do to help ( i am sounding a little\nrepetitive . . . i know ) let me know .\nsincerely ,\npierre - philippe ste - marie\nhttp : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.156+0000", "entityId": 8840, "properties": {"text": "Subject: re : check\nvince ,\n?\nplease find attached an invoice that was sent to habiba back in september .\n?\nthanks ,\njulie\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : wednesday , november 01 , 2000 2 : 43 pm\nsubject : re : check\njulie ,\nyes , ? this is how we split this expense internally .\nplease , send it to me .\nvince\n\" julie \" on 10 / 31 / 2000 01 : 57 : 55 am\nto : ? ?\ncc :\nsubject : ? re : check\nvince ,\noh . i sent an invoice to habiba for aus 5 k a while back , and she ? informed\nme that she passed it along to the people who are handling the ? agreement\nnow ( i take that as fiona grant in london ? ) . i will then send ? out another\ninvoice of aus 5 k in the next week or so for the remaining ? balance .\nshould i have sent the invoice to you ?\nthanks ,\njulie\n- - - - - original message - - - - -\nfrom : ? vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : monday , october 30 , 2000 9 : 12 ? pm\nsubject : re : check\njulie ,\na clarification . we had an agreement with ? chris and les to contribute aus\n10 , 000\nas a part of the ? cost .\nvince\n\" julie \" on 10 / 30 / 2000 ? 12 : 32 : 14 pm\nto :\ncc :\nsubject : ? re : check\nvince ,\nthank you for your email .\nwe ? will send you a copy of the book as soon as it is available , which we\nare ? now estimating to be around 21 november ( no need to send us a cheque ;\nyou ? deserve it ) .\njust let us know if we should use a different address than ? your office in\nhouston .\nthanks again for all of your ? help .\njulie\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : ? julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : ? monday , october 30 , 2000 2 : 16 pm\nsubject : ? check\njulie ,\nthis message was returned to me a few times ? when i sent it from my ? home\naddress .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ? vince j kaminski / hou / ect on\n10 / 30 / 2000\n08 : 00 am ? - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 28 / 2000 ? 12 : 12 : 57 pm\nto : julie @ lacima . co . uk\ncc : vkaminski @ aol . com , vkamins @ enron . com\nsubject : ? check\njulie ,\nas the book is about to be released to ? the market , i would like to start\nthe\nprocess to issue the check ? to lacima . who will be the payee ( lacima ) and\nwhat\nis the ? address ?\nvince\n- enron 202 _ 18 _ 09 _ 00 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.160+0000", "entityId": 8841, "properties": {"text": "Subject: re : check\njulie ,\nyes , this is how we split this expense internally .\nplease , send it to me .\nvince\n\" julie \" on 10 / 31 / 2000 01 : 57 : 55 am\nto :\ncc :\nsubject : re : check\nvince ,\n?\noh . ? i sent an invoice to habiba for aus 5 k a while back , and she informed\nme that she passed it along to the people who are handling the agreement now\n( i take that as fiona grant in london ? ) . ? i will then send out another\ninvoice of aus 5 k in the next week or so for the remaining balance . ? should\ni have sent the invoice to you ?\n?\nthanks ,\njulie\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : monday , october 30 , 2000 9 : 12 pm\nsubject : re : check\njulie ,\na clarification . we had an agreement with chris and les to contribute ? aus\n10 , 000\nas a part of the cost .\nvince\n\" julie \" on 10 / 30 / 2000 12 : 32 : 14 pm\nto : ? ?\ncc :\nsubject : ? re : check\nvince ,\nthank you for your email .\nwe will send you a copy of the book as soon as it is available , which we\nare now estimating to be around 21 november ( no need to send us a cheque ;\nyou deserve it ) .\njust let us know if we should use a different address than your office ? in\nhouston .\nthanks again for all of your help .\njulie\n- - - - - original message - - - - -\nfrom : ? vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : monday , october 30 , 2000 2 : 16 ? pm\nsubject : check\njulie ,\nthis message was returned to me a few times when ? i sent it from my home\naddress .\nvince\n- - - - - - - - - - - - - - - - - - - - - - ? forwarded by vince j kaminski / hou / ect on 10 / 30 / 2000\n08 : 00 am ? - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvkaminski @ aol . com on 10 / 28 / 2000 12 : 12 : 57 ? pm\nto : julie @ lacima . co . uk\ncc : vkaminski @ aol . com , vkamins @ enron . com\nsubject : ? check\njulie ,\nas the book is about to be released to the ? market , i would like to start\nthe\nprocess to issue the check to lacima . ? who will be the payee ( lacima ) and\nwhat\nis the ? address ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.164+0000", "entityId": 8842, "properties": {"text": "Subject: re : kenneth parkhill\nstinson : norma has checked the internal equity in the group , and kenneth is\nfine in a senior specialist spot at that salary . i will be happy to extend\nan offer to him . did you discuss anything concerning the relocation package\nwith kenneth ?\nmolly\nx 34804\nstinson gibner\n11 / 01 / 2000 06 : 18 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : kenneth parkhill\nmolly ,\nwe would like to go ahead with an offer to kenneth . after talking to him\nagain , i think he will accept .\nwe would like to offer him the equivalent package to an incoming associate ,\nwhich i understand would be $ 76 k base and a signing bonus of $ 20 k .\nhe position would be a specialist or senior specialist ( whichever fits the\nsalary ) reporting to me .\nthanks for your help ,\nstinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.169+0000", "entityId": 8843, "properties": {"text": "Subject: todd kimberlain\nvince / vasant :\ndo you know who todd kimberlain is ? is he supposed to be in the research\ngroup and charged to our cost center ? he is .\ni have never heard of him , but when you pull his name up , it shows that he\nis reporting to mark tawny , but is in the research group and being charged\nto our cost center .\nhe is also on our time site , but i have not been doing his time . i hope\nsomebody\nhas !\nlet me know ,\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.173+0000", "entityId": 8844, "properties": {"text": "Subject: re : jaesoo lew\nvince , we should start working on the offer for jaesoo , should we ?\ntanya .\njlew @ kent . edu > on 11 / 01 / 2000 09 : 59 : 25 am\nto : tanya . tamarchenko @ enron . com\ncc : jlew @ kent . edu\nsubject : thanks\ndear tanya ,\nthank you very much for the offer .\nbasically , i can start at anytime if the condition is acceptable .\ncurrently i ' m in the middle of a decision that i can extend my internship or\naccept a job offer at here . but i think that decision should be done soon\nsince my original internship expires this week . so the exact time to start\nwork at enron depends on how quickly i can get your official offer including\nemployment condition .\ni hope this will help to your question . if you have any question on me , please\nfeel free to contact me .\nagain , i appreciate your decision .\nsincerely ,\njaesoo lew", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.178+0000", "entityId": 8845, "properties": {"text": "Subject: london exotica library migration\nfyi\n- exotic library :\nissue : the london version is different from the houston version .\nthe problem is that some bugs in the london version were found .\ntemporary solution : bugs were immediately fixed at a local level .\npermanent solution : the london exotic version will be replaced by the\nhouston exotic version .\nthe houston version is expected to be robust .\nsharad ( london research ) is spending this coming week in houston .\nwhen sharad is back to london , the houston version will replace the london\nversion .\napproach : steven leppard is designing a regression testing procedure that\nwill involve it to fully test the similarity of the two versions .\nthe procedure is expected to take at least one month from commencement .\nhopefully , no discrepancies will be found .\nin the adverse case it happens , it will be necessary to conduct an analysis\nto decide what is wrong .\nif necessary further testing and development has to take place .\nrodrigo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.183+0000", "entityId": 8846, "properties": {"text": "Subject: tim hiezenrader\nstinson gibner wanted me to pass along the name of the individual who worked\nwith me on the west desk :\ntim heizenrader\n503 - 464 - 7462\ni believe he is now in charge of fundamentals and research ( no relation to\nvince ' s research ) for tim beldin , vp , westdesk .\nmichael schilmoeller", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.188+0000", "entityId": 8847, "properties": {"text": "Subject: re : research allocation\nthank you", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.192+0000", "entityId": 8848, "properties": {"text": "Subject: re : research allocation\nbecky ,\ni gave the % % for egm to shirley . i assume she communicated this info to you\nalready .\ni assume egm includes f / x - i / r ( gary hickerson ) , weather , insurance ( jere\noverdyke ) ,\noil trading and coal .\nfor calme i don ' t have any info . let ' s split the cost evenly .\nvince\nbecky pham\n11 / 02 / 2000 02 : 11 pm\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : research allocation\nshirley ,\ngrm is now with egm group . egm wants to verify that the 17 . 5 % we are going\nto allocate to grm is for the insurance , jere overdyke group . egm seems to\nthink that their weather , mark tawney group , is receiving support from\nresearch . also , can we break out the support for calme ? calme is going to\nsplit into 3 bus and i am trying to determine who i need to bill for research\nsupports . if you have any questions , call me . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.197+0000", "entityId": 8849, "properties": {"text": "Subject: reactions november is now live on - line\nreactions\nthe latest edition of the financial magazine for the global insurance market\nis now live at http : / / www . reactionsnet . com\n?\n?\nyou can contact us for help at mailto : web - help @ euromoneyplc . com or + 44 ( 0 ) 20\n7779 8006 . ? the november issue of the world ' s leading insurance and\nreinsurance magazine is packed full of news , views and figures ; simply hit\nthe links at the bottom of each item to see the full article .\nthe november features\nrace - based underwriting : haunted by a racist past\nthe discovery of continued race - based underwriting in the us will cost life\ninsurers involved millions of dollars and do untold damage to their\nreputations - as well as severely embarrassing state regulators\nintegrated risk management : we can work it out\nthe new actuaries reckon they can measure abstruse business risks - and then\nintegrate them with known risks . ? but is there madness in their method ?\nmga business : the need for continuity\ncapital adequacy : that capital question\na . m . best ' s top 100 buyers and sellers in the us : a time of change\nbuyers - the 20 biggest risers and fallers ?\nsellers - the 20 biggest risers and fallers\nthe fall of reliance : errant insurer ' s battle for survival\nin the spotlight : harry rhulen\nfor more information about the sponsors of www . reactionsnet . com , please visit\ntheir official websites at :\nrenaissance re holdings ltd - http : / / www . renre . com /\nipc re ltd - http : / / www . ipcre . bm /\ngerling global financial products - http : / / www . ggfp . com /\ne - insuring your business\nthe park lane hotel , london january 26 , 2001\na one - day management symposium discussing insurance , the internet and your\nbusiness .\njoin mis training and reactions for a day of discussions , insight and\nknowledge transfer\ne - insurance and why you need it to protect your business\nthe legal realities and responsibilities you need to know about\nmanaging the risks and devising successful risk policies\nlive demonstration\nfor further information please contact daniel carney or alex johnson at mis\ntraining on 020 7779 7217 / 8097 .\n* plus ! * ? industry publications - read the executive summaries and order\nonline !\nrbi & reactions insurance management reports :\ndiversification of european insurance and financial services\ntrends in global commercial insurance - the impact of art\nrisk management - new challenges and new solutions\nopportunities in latin american insurance\nthe outlook for european teleinsurance\noutlook for insurance in germany\nuk einvestments\nreinsurance 4 th edition - industry - standard textbook\n@ risk - internet and e - commerce insurance and reinsurance legal issues\ne - nsurance - insurance and the internet revolution\nhttp : / / www . reactionsnet . com\nto advertise or link your company website to this industry circular please\ncontact nick lipinski\ntel : + 44 ( 0 ) 20 7779 8199 or e - mail mailto : nlipinski @ euromoneyplc . com\nif you have any problems logging onto or using ? www . reactionsnet . com please\ncall our dedicated help desk\n+ 44 ( 0 ) 20 7779 8006 or email mailto : web - help @ euromoneyplc . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.204+0000", "entityId": 8850, "properties": {"text": "Subject: reactions password reminder\n= = = = = = = = = = = = = = = = = reactions password reminder = = = = = = = = = = = = = = = = =\nhi ,\nwe do not seem to be able to see you on our systems , please try registering\nand you will automatically receive a username and password .\nif you have already registered on this website , then please let us know and\nwe will investigate further .\nregards .\nreactions support - euromoney publications plc .\ntel : + ( 44 ) 0171 779 8927 fax : + ( 44 ) 0171 779 8704\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.210+0000", "entityId": 8851, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.215+0000", "entityId": 8852, "properties": {"text": "Subject: approval for reviewer\nraymond , maureen j has suggested reviewers and submitted them for your\napproval . you may review / modify this list of reviewers by logging on to pep\nat http : / / pep . corp . enron . com and going to supervisor services . please\nremember , no feedback can be completed on raymond , maureen j until you have\napproved the list .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.222+0000", "entityId": 8853, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.226+0000", "entityId": 8854, "properties": {"text": "Subject: interview follow up from susan v . gonzalez\nnov . 2 , 2000\n?\nmichael roberts , vice president , reseach\nstinson gibner , vice president , reseach\nvincent kaminsik , managing director , research\nenron corp .\n?\ngentlemen ,\nthank you for the opportunity to learn about a new communication position\nwithin your group . ? ? based on our discussions , here are some initial\nthoughts / observations on the job and the task .\n?\n* daily email newsletter for primarily two audiences :\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1 . ? internal for employees available via the enron\nintranet\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2 . ? external for clients , industry at large\n?\n* also suggest the newsletter be sent to a targeted group of trade press . ? as\nthis information tool builds momentum and credibility , it will support the\nleadership positioning of ? enron ' s trading group . ? ? plus , it could become a\ndriver for media inquiries and ? requests for further information or\ninterviews with enron ? trading experts .\n?\n* i heard you wanting internal and external versions for both morning and\nafternoon distribution . ? ? that is an aggressive set of daily mailings . i\nwould want to review the scope of the content and look at the frequency . ?\njust like print publications , ? email newsletters are ? now the rage and too\nmany are ? landing in the email inboxes . ? ? my counsel would be to start with a\nmanageable number and do it well . ? you can always increase frequency . ?\ndifficult to cut back on frequency without it appearing as a take away or\nlack of commitment to the product . staffing ? ?\n?\n* invite outside industry analysts or clients to provide commentary .\n?\n* consider developing an \" editorial advisory board \" to govern the\ncontent . ? ? traders , ? legal department , communications dept . a\nmultidisciplinary group that ? can add value to the publication .\n?\n* suggest finding an ims or it resource from within enron to be assigned to\nthis communications effort . ? ? database set up for the email addresses ,\ntechnical issues arise ? for ? creating the links etc . ? managing an\ne - newsletter in my current position , i can ? tell you that a writer / editor has\nenough to do to compile content . ? ? you want mailings to go off without any\nglitches . ? or if there are glitches , he or she can ? solve quickly . ? what are\nthe implications of these mailings on the company ' s computer systems ? ?\n?\n* budget . ? although not a typical print publication , this effort should have\na budget . ? graphics , freelance or contract writing , photography ? any special\nsoftware or hardware needs associated with this effort ? ?\n?\n* review process . ? what is the review process for ? this publication . ? legal\nguidelines ? ? corporate guidelines with regards to style , graphics\netc . ? ? technical review of the material for accuracy ? ? a clear policy should\nbe established ? up front for the review process so everyone involved knows\nand understands their role and responsibilities ? towards this communication\neffort .\n?\n* have you surveyed what is out in the marketplace ? ? ? gather samples\nof ? newsletters that you like or don ' t like for discussion purposes .\n?\n* measurement / evaluation of the newsletter . ? ? how ? will the effectiveness of\nthe newsletter be measured ? ? hits on the website . ? inquiries from clients ? ?\ndon ' t have a quick answer but ? some goals should be set to measure against .\n?\n* maintenace of the mailing lists should reside with the individual groups\nparticipating in the newsletter . ? ? maintenance of the newsletter databases\nshould not be the responsibility of the communications representative . ? ? ?\n?\nthis sent to you in the spirit of exploring the position further . ? look\nforward to your feedback . ? ? thank you for your consideration . ?\n?\nsincerely ,\nsusan v . gonzalez\n11822 poplar creek\nhouston , tx ? 77077\n( 281 ) 497 - 7185 home\n( 281 ) 877 - 5853 work", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.230+0000", "entityId": 8855, "properties": {"text": "Subject: jaesoo lew\ntanya : although you and i didn ' t have an opportunity to talk this morning ,\nvince conveyed to me that an offer should be extended to jaesoo lew . he also\ntold me that jaesoo would be reporting to you . i need some information\nconcerning the position , so i am attaching a form that needs to be completed\nand returned to me as quickly as possible . in the meantime , i will contact\njaesoo to verbally offer him the position .\nplease call me with any questions .\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.235+0000", "entityId": 8856, "properties": {"text": "Subject: change of role\njust a quick note to say that i have now left the eprm / risk conference\ndivision after two and a half very happy years . i am however still at risk\nwaters group , where i am now working as a journalist on eprm magazine .\nfuture conference enquiries should go to paul bristow ( us - 212 925 6990 ) or\nfrances tully ( europe - + 44 ( 0 ) 20 7484 9731 ) .\nmany thanks for your work my events and i hope we can work together again in\nthe future . if you have any ideas on the writing side then i would always\nappreciate a call or email - my contact details all remain the same .\nbest regards ,\njoel .\njoel hanley\neprm magazine\ndirect : + 44 ( 0 ) 20 7484 9885\nwww . riskwaters . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.242+0000", "entityId": 8857, "properties": {"text": "Subject: fw : notes for var course\n> - - - - - original message - - - - -\n> from : mccarthy , jane j\n> sent : wednesday , 25 october 2000 16 : 55\n> to : ' vkaminski @ aol . com '\n> subject : notes for var course\n>\n> dr . kaminski ,\n>\n> i attended your var course in sydney in july , but when i went back to look\nat the notes recently i found that i am missing some sections ( e . g . optimal\ntechniques for measuring var , using monte carlo techniques to accurately\ncalculate var , evaluating the impact of volatility and extreme values on\nvar ) . would you be able to send me a copy of your notes , as i am about to\nembark on a var modelling exercise and i am sure they would be very useful .\n>\n> regards ,\n> jane mccarthy\n> manager market risk\n> bhp co . pty ltd .\n> lvl . 45 , 600 bourke street\n> melbourne , vic 3000\n> australia\n>\n> ph : 613 9 609 3860\n> fax : 613 9 609 3861\n> email : mccarthy . jane . j @ bhp . com . au\n>\n>\n>\neom\nnotice - this message contains information intended only for the use of the\naddressee named above . it may also be confidential and / or privileged . if\nyou are not the intended recipient of this message you are hereby notified\nthat you must not disseminate , copy or take any action in reliance on it . if\nyou have received this message in error please notify postmaster @ bhp . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.246+0000", "entityId": 8858, "properties": {"text": "Subject: re : action learning project and enron tour\nchristie ,\nlet ' s meet to discuss this project . i need more information from you about it .\nby the way , i shall meet bob westbrook on wednesday to discuss unrelated\nissues .\nvince\nchristie patrick\n11 / 02 / 2000 12 : 33 am\nto : cmiller @ rice . edu , cindy derecskey / corp / enron @ enron , michael b\nrosen / hou / ect @ ect , steven j kean / na / enron @ enron , vince j\nkaminski / hou / ect @ ect , grwhit @ rice . edu , westbro @ rice . edu , mark\npalmer / corp / enron @ enron\ncc :\nsubject : action learning project and enron tour\nhi carrie ,\nit was great meeting with you and dean whitaker again last friday , as well as\nmr . westbrook .\nas we discussed , i have submitted the action learning program materials to\nvince kaminski , our managing director of risk analysis and corporate\nresearch . i ' ll be following up with him , and his recommendations for project\nproposals next week .\nalso , i ' ve discussed with our university affairs team setting up the\nfaculty tours - - we ' re ready when you are ! ! the sooner the better - - i ' d love to\nget these in pretty immediately , and in any event , before the reception at\nthe end of the month . i \" ll have cindy derecskey in my group email you - - she\nis prepared to set these tours up .\ni look forward to continuing to develop the multiple potential dynamics of\nthe enron - rice relationship !\nthanks !\n- - christie .\nps : thanks so much for the crystal rice owl - - my participation as a judge in\nthe rice invitational case competition was my pleasure indeed !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 11 / 02 / 2000\n12 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarrie miller on 11 / 01 / 2000 12 : 47 : 17 pm\nto : christie _ patrick @ enron . com\ncc : grwhit @ rice . edu , westbro @ rice . edu\nsubject : action learning project and enron tour\nchristie ,\ni enjoyed visiting with you last week at the jones school . thanks for\ntaking time to come see us . i wanted to follow up with you regarding the\naction learning project program and enron tour . we hope to have enron as\npart of the program in 2001 . please let me know how i can help make this\nhappen . i look for the program to be full before the deadline of december lst . also , i am happy to help organize a group to tour enron . if you were\nto participate in the alp program , january / february might be a good time to\nput something together with key faculty and the alp team . let me know your\nthoughts .\nagain , many thanks for your continued support of the jones school . i look\nforward to hearing from you soon .\ncarrie\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncarrie chamberlin miller\ndirector of mba program\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 5260\nfax : ( 713 ) 348 - 5251\ne - mail : cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.252+0000", "entityId": 8859, "properties": {"text": "Subject: re : mscf speaker series\npierre - philippe ste - marie\nthanks . kevin kindall and , possibly , kristin gandy from enron will come with\nme .\nvince\n\" pierre - philippe ste - marie \" on 11 / 01 / 2000 09 : 37 : 13 pm\nto :\ncc : \" rick bryant \"\nsubject : re : mscf speaker series\ndear mr . kaminski ,\nthank you very much for changing your plane ticket , it was unhoped for .\neveryhting is now ready for your arrival . we will be at 10 . 30 am on friday at\nyour hotel . if you have not received your schedule yet here is the outline :\n10 . 30 on board for school\n11 . 00 - 11 . 30 presentation set up . brief brush up with students .\n11 . 30 - 14 . 00 presentation and lunch with students\n14 . 00 - 14 . 30 meeting with professor chester spatt\n15 . 00 - 15 . 30 meeting with coc officer\n15 . 30 - 16 . 00 brief tour of the school . ( the four department that sponsor the\nmscf program )\n16 . 00 back at the hotel to relax .\n18 . 30 the group will come at your hotel to go to the restaurant .\nhere is the roster for the evening .\n- kent garrett : one of the top seed of this year ' s class , versed in\nmathematic and computer science . will guide and drive you through the day .\n- ignacio delgado : another top student , master from yale . versed in finance ,\neconomics and computer science .\n- punit rawal : seasonned professional , worked in the financial industry for\nmany years prior to joining the program .\n- hisamitsu tanaka : another seasonned professional , worked in a major\njapanese bank for many years as a fx option trader / risk manager .\n- teresa holden : bright computer scientist , worked in an it group for many\nyears prior to joining the program .\n- frank quian : brilliant programmer , phd in microbiology form columbia .\n- rick bryant : director of the mscf program\n- pierre - philippe ste - marie : president of the speaker series ( that would be\nme ! )\nif there is anything else i can do , please tell me .\npierre - philippe ste - marie\nhttp : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.261+0000", "entityId": 8860, "properties": {"text": "Subject: spring 2001 energy finance conference participation\nlouise ,\nwould you consider being a keynote speaker at this conference ( feb 22\nevening ) ?\nthe conference will be held in austin .\nwe have a very good relationship with ut and we are helping them to organize\nthis conference .\ni shall be glad to provide you more information about the event .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 02 / 2000\n02 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ehud i . ronn \" on 11 / 02 / 2000 10 : 57 : 00 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : spring 2001 energy finance conference participation\nvince ,\nas promised , enclosed please find a brief description of the proposed feb .\n22 - 23 energy finance conference , suitable for dissemination to your\ncolleagues :\n\" as director of the center for energy finance education and research\n( cefer ) , my colleagues and i are planning a practitioner - industry\nconference in spring 2001 , feb . 22 - 23 , to discuss four topics : risk\nmanagement , deregulation , real options , and international / globalization .\nother than the univ . of texas participants and selected academics from\nother institutions , we expect most participants at the conference to be\nenergy practitioners from houston . the conference will begin with a dinner\nand address thur . evening , then continue all day fri . \"\ngiven the energy - finance focus of the conference , do you believe the\nnetworks topics is sufficiently energy - related ?\nbest ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.268+0000", "entityId": 8861, "properties": {"text": "Subject: hurricane warning derivatives\nfolks ,\nthis note is intended to update all who may be concerned on our progress\ntoward developing a commercial hurricane warning derivative product or line\nof products .\nit is clear that numerous entities have underlying exposures to hurricane\nwarning frequency and / or duration . it is our objective to develop derivative\nproducts that will enable these entities to effectively hedge this\nexposure . we have generated a partial brainstorm - style list of whom natural\ncounterparties might be according to their underlying exposure :\npro - hurricane anti - hurricane\nthe weather channel resorts\nhome depot cruise ships\nlowes riverboat casinos\ncnn chemical plants and refineries\nlocal tv stations u . s armed forces\ndry ice manufacturers athletic teams\nchainsaw manufacturers city governments\ninsect repellant manufacturers state governments\nit is obvious that there are numerous naturally offsetting parties but it is\nimportant to note that the pro - hurricane entities are more macro in nature\nwhile the anti - hurricane entities are typically more regional . thus , we have\ndocumented the frequency and duration data by regional location with the\nthought that the anti - hurricane entities would be interested in regional\nproducts and the pro - hurricane entities would likely be more interested in\nbundled regional products depending on their exposure .\nthus far , we have collected and documented all u . s hurricane warning data\nfrom 1980 - 2000 in the form of an excel database . the data can be sorted by\nyear , storm , or location on the u . s coastline . total hurricane warning\nduration as well as number of discrete hurricane warnings are the primary\ndata sets of interest for any given location ( or year or storm ) . the u . s\ncoast has been divided into 11 different geographic regions of roughly\nsimilar size . these regions are : new england , mid - atlantic , virginia , north\ncarolina , georgia / south carolina , east florida , west florida , florida\npanhandle , orleans / miss / bama , lousiana , and texas .\nwhile this data set may not yet be sufficient for price modeling purposes , it\nhas confirmed our expectation that hurricane warning frequency and duration\nis quite volatile and unpredictable . it is believed that this volaility ,\nwhen graphically depicted and mathematically represented , could be used to\neffectively demonstrate to would - be customers the impact of hurricane warning\nfrequency on their business financials . in many cases , businesses may be\nwell aware of their exposure but may not have quantified it and certainly\nprobably felt as if this was a risk they would have to wear themselves .\nas we move forward on the modeling front , the data will certainly need to be\nscrutinized to correct for any skewing factors such as political trends ,\nsatellite availability , population trends , etc . additionally , we need to go\nfurther back in time so long as the accuracy doesn ' t decline .\non the marketing front , i am certainly open to ideas . it is believed the\nweather channel would be the most natural party for such a product . given\nour positive relationship that we currently have with them , they might be the\neasiest sell . any and all ideas are welcome with regard to how and when\nwe should approach customers .\nplease respond with any questions , comments or concerns on this project .\nthanks ,\ncharlie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.273+0000", "entityId": 8862, "properties": {"text": "Subject: good news on endorsements\nvince & vasant ,\njeff skilling has said that enron would not make any endorsements of\nthird - party services , so please disregard my previous e - mail regarding aer\npress releases .\njoe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.277+0000", "entityId": 8863, "properties": {"text": "Subject: review and starting on october 2\nvince ,\nyou mentioned yesterday to send you an e - mail reminder to speak with norma .\ni appreciate your support . just as a reminder , i started on october 2 ,\nwhich was a monday . october 1 was a sunday .\nthanks for your support on this issue vince .\nsincerely ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.282+0000", "entityId": 8864, "properties": {"text": "Subject: request submitted : access request for tony . harris @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000006452\napprover : stinson . gibner @ enron . com\nrequest create date : 11 / 2 / 00 1 : 12 : 58 pm\nrequested for : tony . harris @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.286+0000", "entityId": 8865, "properties": {"text": "Subject: request submitted : access request for tony . harris @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000006452\napprover : stinson . gibner @ enron . com\nrequest create date : 11 / 2 / 00 1 : 12 : 58 pm\nrequested for : tony . harris @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.292+0000", "entityId": 8866, "properties": {"text": "Subject: re : dale nesbitt meeting tues\nmargaret ,\ni shall invite hunter shiveley . i think it will cover ena .\nvince\nmargaret carson @ enron\n11 / 02 / 2000 09 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc : james d steffes / na / enron @ enron\nsubject : dale nesbitt meeting tues\nvince do you plan on inviting anyone from the power issues side\n- - perhaps ben jacoby , julie gomez , jean mrha , scott neal to this meeting ?\nthanks margaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret carson / corp / enron on 11 / 02 / 2000\n09 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : john goodpasture 11 / 01 / 2000 05 : 53 pm\nto : vince j kaminski / hou / ect @ ect , margaret carson / corp / enron @ enron , mike\nmcgowan / et & s / enron @ enron , dave neubauer / et & s / enron @ enron , robert\nhill / npng / enron @ enron , shelley corman / et & s / enron @ enron\ncc : danny mccarty / lon / ect @ ect , bill cordes / et & s / enron @ enron , michael\nmoran / et & s / enron @ enron , rod hayslett / fgt / enron @ enron\nsubject : dale nesbitt meeting\nmargaret carson is going to join us in the meeting next week with nesbitt .\nvince will check with ena to see if they also want to attend . i would also\nlike to determine if ets and / or nbp would want to send a representative ( s ) ,\nalthough margaret said she would take copious notes for distribution to other\nkey players as necessary . we should ask nesbitt how he would structure a\ndeal for multiple clients ( eg . ets , nbp , ena , and maybe el paso ) .\n[ we need to remain aware of any \" affiliate \" issues that may result , and make\ncertain that we are in complete compliance with the regs . ]\ni will wait until after our meeting with nesbitt before deciding if / how to\napproach el paso . presumably , if asked to particpate , they would share the\ncost and have independent access to any working model that is developed .\njng\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john goodpasture / ots / enron on 11 / 01 / 2000\n04 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n10 / 30 / 2000 04 : 42 pm\nto : john goodpasture / ots / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : dale nesbitt\njohn ,\ni talked to dale nesbitt . he suggested that the best way to evaluate his\nmodel is to\ngo through a one week intensive project with assistance of somebody from his\ncompany .\nour cost is a flat fee of $ 12 , 500 that would be deducted from the purchase\nprice of $ 55 , 000 ,\nin case we buy the software package .\nthe price of 55 k is indicative and will be adjusted based on the required\nlevel of support .\ndale will be in houston next week . i have tentatively invited him to visit\nwith us on tuesday ,\nnovember 7 , at 3 : 00 p . m . he will adjust if you are busy at this time .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.296+0000", "entityId": 8867, "properties": {"text": "Subject: re : dale nesbitt meeting tues\nmargaret ,\ni shall try to invite hunter shiveley who is in charge of gas market\nfundamentals .\nvince\nmargaret carson @ enron\n11 / 02 / 2000 09 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc : james d steffes / na / enron @ enron\nsubject : dale nesbitt meeting tues\nvince do you plan on inviting anyone from the power issues side\n- - perhaps ben jacoby , julie gomez , jean mrha , scott neal to this meeting ?\nthanks margaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret carson / corp / enron on 11 / 02 / 2000\n09 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : john goodpasture 11 / 01 / 2000 05 : 53 pm\nto : vince j kaminski / hou / ect @ ect , margaret carson / corp / enron @ enron , mike\nmcgowan / et & s / enron @ enron , dave neubauer / et & s / enron @ enron , robert\nhill / npng / enron @ enron , shelley corman / et & s / enron @ enron\ncc : danny mccarty / lon / ect @ ect , bill cordes / et & s / enron @ enron , michael\nmoran / et & s / enron @ enron , rod hayslett / fgt / enron @ enron\nsubject : dale nesbitt meeting\nmargaret carson is going to join us in the meeting next week with nesbitt .\nvince will check with ena to see if they also want to attend . i would also\nlike to determine if ets and / or nbp would want to send a representative ( s ) ,\nalthough margaret said she would take copious notes for distribution to other\nkey players as necessary . we should ask nesbitt how he would structure a\ndeal for multiple clients ( eg . ets , nbp , ena , and maybe el paso ) .\n[ we need to remain aware of any \" affiliate \" issues that may result , and make\ncertain that we are in complete compliance with the regs . ]\ni will wait until after our meeting with nesbitt before deciding if / how to\napproach el paso . presumably , if asked to particpate , they would share the\ncost and have independent access to any working model that is developed .\njng\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john goodpasture / ots / enron on 11 / 01 / 2000\n04 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n10 / 30 / 2000 04 : 42 pm\nto : john goodpasture / ots / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : dale nesbitt\njohn ,\ni talked to dale nesbitt . he suggested that the best way to evaluate his\nmodel is to\ngo through a one week intensive project with assistance of somebody from his\ncompany .\nour cost is a flat fee of $ 12 , 500 that would be deducted from the purchase\nprice of $ 55 , 000 ,\nin case we buy the software package .\nthe price of 55 k is indicative and will be adjusted based on the required\nlevel of support .\ndale will be in houston next week . i have tentatively invited him to visit\nwith us on tuesday ,\nnovember 7 , at 3 : 00 p . m . he will adjust if you are busy at this time .\nplease , let me know what you think .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.301+0000", "entityId": 8868, "properties": {"text": "Subject: weather delta demonstration meeting\nthe weather delta demonstration will be held wednesday , november\n8 th from 10 : 00 - 11 : 30 am in ebl 9 c 2 .\nplease let me know if this is ok with everyone .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 03 / 2000\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n11 / 02 / 2000 01 : 06 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : weatherdelta demonstration scheduling\nshirley ,\ncan you schedule a meeting for the following people ?\nvince j kaminski , joseph hrgovcic , vasant shanbhogue , lance cunningham , sevil\nyaman , stinson gibner and i .\nthe preferred time is the week after next week .\nthanks a lot .\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex huang / corp / enron on 11 / 02 / 2000 01 : 04\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n11 / 01 / 2000 05 : 27 pm\nto : alex huang / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : weatherdelta demonstration scheduling\nalex ,\ni agree . let them make up the data . please , ask shirley to determine\nconvenient date and time .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.305+0000", "entityId": 8869, "properties": {"text": "Subject: re : digitals\npavel , many thanks for your note .\ni understand that digitals are not core enron business but as you know , i ' m\ntrying to explore digitals to give , for example , a company a guaranteed\nincome in year one ( to mop up expiring tax losses ) . this is offset by a\nguaranteed expense in year two . see attached hypothetical example . the\ndigital will reflect an underlying commodity to which a company is exposed to\nand would be part of a price risk management strategy , thereby giving it\n' commercial purpose ' .\ni would be interested in hearing from you generally on the subject - - the\nrational for using digitals and your knowledge of its use in other markets\n( electricity or other commoodity or in the banking sector ) .\nit seems to me that setting the srike is key and a ' value judgement ' or am i\nwrong , and are there curves and models which could help you substantiate\nthis ? in any event , do you have a feel for what an acceptable % of chance or\nlikelihood that a commodity price hits the strike on a digital before it\nbecomes non arm ' s length and does not pass the smell test ?\nvince , jarek suggested that you may be able to assist . your views would also\nbe appreciated .\ngillian .\nfrom : pavel zadorozhny on 02 / 11 / 2000 15 : 15 cst\nto : gillian lockwood / lon / ect @ ect\ncc :\nsubject : digitals\ndigital options are extremely uncommon in the crude oil market . nobody ever\nasked me to show quotes in the otc market . the only time we encountered them\nwas when producers , brought by our marketing team , wanted to sell a\nknock - outable swap , whereby they would get a higher swap price in exchange\nfor cancelling the swap if the price settled below a certain level . this\nstructure had a digital put embedded in it , although the customers didn ' t\nnecessarilly know that . the companies were us oil and gas producers : venoco ,\ntitan , magnum hunter , patiena oil & gas , belco , central resources . it was\nabout 1 year ago . in the otc market , at about the same time , i asked for\nquotes to hedge these transactions and sold a digital cal 00 $ 16 swaption to\nelf and strips of digital puts to somebody else that i cannot recall .\ni hope this helps .\npavel", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.310+0000", "entityId": 8870, "properties": {"text": "Subject: power crisis in the west\ndear vince ,\ni spoke with you briefly yesterday regarding grant masson . you informed me\nthat he is no longer an enron employee . i have also been informed that\ngrant has not yet been replaced .\ni am inquiring because infocast would like to have an enron representative\nspeak at an upcoming conference entitled \" power crisis in the west : status it is certainly\ngoing to be an exciting conference due to all of the controversy surrounding\nthe situation in san diego .\nkind regards ,\nnia mansell\ninfocast\nconference manager\n( 818 ) 888 - 4445 ext . 45\n( 818 ) 888 - 4440 fax\nniam @ . com\n>\n- power crisis in the west invite . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.314+0000", "entityId": 8871, "properties": {"text": "Subject: christmas baskets\nkevin :\ni do not know who half of these people are !\nmy list would be :\nmove team\nsusan kennedy and judy schlesinger ( order all of our subscriptions )\ndemonica lipscomb ( video scheduling - should include stuart )\ndave delainey\nmail room\nhelp desk ( our tech is : doug doring )\nfacilities help desk ( don ' t know who )\nmarriott ( trina - she takes care of all the lunches we order )\ni don ' t think we need to give the ozarka guy one , we have several\nwho deliver down here , it is not always the same one .\nvince probably has more , i will let you know .\nthanks !\nshirley\nkevin g moore\n11 / 03 / 2000 12 : 00 pm\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , stinson gibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : new listing\ngoodmorning everyone ,\nlast year we did quite a bit of christmas baskets , during the time we were in\nthe process of\nanother major move .\nwe are currently settled on all floors now , therefore our christmas basket\nlist will be cut more than half .\nhere are a list of the names that received baskets last year .\nmatt rodgers\nchris hyde\ndarren prager\ncharlie notis\nharvey freese\njon davis\nmaryam golnarghi\ndelores sustaita rodney keys iain\nrussell trina williams todd\nbutler pamela ford facilities\nrobert knight phillip randle mary\nmartinez daniel hornbuckle ( ozarka )\nguy move - team\ngreg whalley\nrichard weeks\nmary sue rose\nthere are several names boldly printed that probably will not receive the\nbaskets this year .\nthe christmas season is approaching therefore we must start preparing\n.\nplease note that i will be out on vacation dec 13 th - 18 th , if possible i\nwould like your list of names\nbefore my vacation begins whereby all baskets can arrive at their\ndestinations on time .\nthanks\nkevin moore\nplease any comments , question , answers - feel free to call x 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.319+0000", "entityId": 8872, "properties": {"text": "Subject: new listing\ngoodmorning everyone ,\nlast year we did quite a bit of christmas baskets , during the time we were in\nthe process of\nanother major move .\nwe are currently settled on all floors now , therefore our christmas basket\nlist will be cut more than half .\nhere are a list of the names that received baskets last year .\nmatt rodgers\nchris hyde\ndarren prager\ncharlie notis\nharvey freese\njon davis\nmaryam golnarghi\ndelores sustaita rodney keys iain\nrussell trina williams todd\nbutler pamela ford facilities\nrobert knight phillip randle mary\nmartinez daniel hornbuckle ( ozarka )\nguy move - team\ngreg whalley\nrichard weeks\nmary sue rose\nthere are several names boldly printed that probably will not receive the\nbaskets this year .\nthe christmas season is approaching therefore we must start preparing\n.\nplease note that i will be out on vacation dec 13 th - 18 th , if possible i\nwould like your list of names\nbefore my vacation begins whereby all baskets can arrive at their\ndestinations on time .\nthanks\nkevin moore\nplease any comments , question , answers - feel free to call x 34710", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.324+0000", "entityId": 8873, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 qqqzj\norder for : maureen raymond\n1 x ( compaq armada m 700 $ 3522 ) enron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.329+0000", "entityId": 8874, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.334+0000", "entityId": 8875, "properties": {"text": "Subject: re : action learning project and enron tour\nhi vince !\ni ' ll call you monday to further discuss this ! i ' ll be heading to atlanta for\na forbes conference and meeting at emory , but will call you at my first\nopportunity !\nthanks for the information about the meeting with bob !\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 11 / 04 / 2000\n11 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n11 / 02 / 2000 01 : 55 pm\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , vkaminski @ aol . com\nsubject : re : action learning project and enron tour\nchristie ,\nlet ' s meet to discuss this project . i need more information from you about it .\nby the way , i shall meet bob westbrook on wednesday to discuss unrelated\nissues .\nvince\nchristie patrick\n11 / 02 / 2000 12 : 33 am\nto : cmiller @ rice . edu , cindy derecskey / corp / enron @ enron , michael b\nrosen / hou / ect @ ect , steven j kean / na / enron @ enron , vince j\nkaminski / hou / ect @ ect , grwhit @ rice . edu , westbro @ rice . edu , mark\npalmer / corp / enron @ enron\ncc :\nsubject : action learning project and enron tour\nhi carrie ,\nit was great meeting with you and dean whitaker again last friday , as well as\nmr . westbrook .\nas we discussed , i have submitted the action learning program materials to\nvince kaminski , our managing director of risk analysis and corporate\nresearch . i ' ll be following up with him , and his recommendations for project\nproposals next week .\nalso , i ' ve discussed with our university affairs team setting up the\nfaculty tours - - we ' re ready when you are ! ! the sooner the better - - i ' d love to\nget these in pretty immediately , and in any event , before the reception at\nthe end of the month . i \" ll have cindy derecskey in my group email you - - she\nis prepared to set these tours up .\ni look forward to continuing to develop the multiple potential dynamics of\nthe enron - rice relationship !\nthanks !\n- - christie .\nps : thanks so much for the crystal rice owl - - my participation as a judge in\nthe rice invitational case competition was my pleasure indeed !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 11 / 02 / 2000\n12 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarrie miller on 11 / 01 / 2000 12 : 47 : 17 pm\nto : christie _ patrick @ enron . com\ncc : grwhit @ rice . edu , westbro @ rice . edu\nsubject : action learning project and enron tour\nchristie ,\ni enjoyed visiting with you last week at the jones school . thanks for\ntaking time to come see us . i wanted to follow up with you regarding the\naction learning project program and enron tour . we hope to have enron as\npart of the program in 2001 . please let me know how i can help make this\nhappen . i look for the program to be full before the deadline of december lst . also , i am happy to help organize a group to tour enron . if you were\nto participate in the alp program , january / february might be a good time to\nput something together with key faculty and the alp team . let me know your\nthoughts .\nagain , many thanks for your continued support of the jones school . i look\nforward to hearing from you soon .\ncarrie\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncarrie chamberlin miller\ndirector of mba program\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 5260\nfax : ( 713 ) 348 - 5251\ne - mail : cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.339+0000", "entityId": 8876, "properties": {"text": "Subject: wharton program for business journalists\nhi greg !\nhere is the information regarding the dec 13 th event at wharton . wharton is\nbeside itself with excitement at your acceptance , and communicated that with\njeff skilling at his visit there this past thursday .\nthey ' re also very interested in discussing their webi program with you and\nwould like to arrange to do that the day of your evening presentation , or\nperhaps the following day , whichever suits your schedule . this was also\ndiscussed with jeff skilling - - he is clearly interested in the program , but\nwill be especially looking to your input , along with that of vince kaminski ,\njeff shankman and me , in determining enron ' s decision to participate . as i\nmentioned previously , vince , jeff and i think enron ' s involcvement with webi\nholds very positive potential . financially , it involves a contribution of\n$ 250 , 000 for 4 years .\nplease see the request for your \" bio \" and desired inclusion of program\nmaterials , as well as the contact at wharton , toward the end of the message\nbelow .\nlet me know by email or voice mail ( 3 - 6117 ) how university affairs can\nfurther these efforts .\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 11 / 04 / 2000\n10 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" baltes , michael \" on 11 / 02 / 2000 12 : 29 : 05 pm\nto : \" ' christie _ patrick @ enron . com ' \"\ncc : \" piazze , thomas \" , \" spigonardo , joanne \"\nsubject : wharton program for business journalists\nchristie ,\nwe are delighted that greg whalley , ceo of enron bandwidth business , has\nagreed to be our featured dinner speaker at the upcoming wharton seminars for\nbusiness journalists on wednesday , december 13 , 2000 .\nper instructions from tom piazze , i ' ve attached some information regarding\nour seminars for business journalists , now in its 32 nd year\nhttp : / / www . wharton . upenn . edu / media / journalists / . as i ' d mentioned in our\nconversation a few weeks ago , we have a leader from business or government\nspeak each year at our sponsor ' s dinner , which is attended by all of the\nbusiness journalists ( about 50 ) and representatives from our corporate\nsponsors ( lists attached below ) . our last 3 speakers were mark walsh ,\nchairman of vertical net ; jason olim , ceo of cdnow ; and tom siebel , ceo of\nsiebel systems .\nabout 80 - 90 people are expected to attend this year ' s event . cocktails ,\ndinner and mr . whalley ' s presentation will be held on wednesday , dec . 13 ,\nfrom 6 : 00 to 9 p . m . in wharton ' s steinberg conference center , 38 th & spruce\nstreets , on the university of pennsylvania campus .\nas tom may have mentioned , this audience likes to hear about interesting\nindustry trends , or something companies are doing that is leading edge , and\nhasn ' t really hit the mainstream . past experience has shown that \" canned \"\ncorporate presentations do not go over so well with this group . however , you\nare certainly welcome to provide literature to the audience or other\nmaterials that may be appropriate . i would like to have a conversation with\nyou about your thoughts on a specific topic as we get closer to the event .\nin the meantime , we would like to have mr . whalley ' s bio and any other\ninformation you ' d like us to include in the course materials for the\njournalists . please try to keep this to about 2 - 3 pages , given all of the\nother material they ' ll have in their binders .\nyou may contact me or my colleague , joanne spigonardo , with any questions .\njoanne is handling the logistics for the event , so please direct those types\nof questions directly to her . she ' s at 215573 - 8599 .\nthanks again , and i hope you can join us on the 13 th .\nbest regards ,\nmike\n> >\n- pub & namelistbjs 200 . doc\n- final sponsor list . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.344+0000", "entityId": 8877, "properties": {"text": "Subject: re : weatherdelta demonstration scheduling\nhi all ,\nthe scheduled wednesday ( nov . 8 ) presentation has to be cancelled . even\nthough in his earlier message\nmike said wednesday is ok , now they will have problem sending people .\ni will try to reschedule the presentation to a later date .\nbest ,\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex huang / corp / enron on 11 / 07 / 2000 07 : 54\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndenton mike on 11 / 06 / 2000 04 : 31 : 19 pm\nto : alex . huang @ enron . com\ncc : \" scanlan , brian \" , \" rookley , cameron \"\nsubject : re : weatherdelta demonstration scheduling\nalex , i ' m glad that we had a chance to talk today about a weatherdelta\noverview . the 8 th is not really going to work well for us , due to recent\nreschedulings . several members of the weatherdelta team will be in or near\nhouston on the 14 th and 15 th of november ( i know that you said that week was\ntight ) , and could arrange to be in the several weeks following those dates .\ni have attached our standard non - disclosure agreement , which we will need to\nexecute prior to the product demonstration . i have also attached a reprint\nof a recent article , describing weatherdelta ' s approach and functionality .\nas soon as a meeting can be scheduled , a list of attendees would be very\nhelpful to us in preparing the appropriate materials .\nthank you again ,\nmichael denton\ncaminus\n212 - 515 - 3600\n- caminus nda - unilat . doc\n- weatherdelta - wp . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.350+0000", "entityId": 8878, "properties": {"text": "Subject: interviewing for the associate and analyst programs\nthe off - cycle department of the associate and analyst program is looking for\nvolunteer interviewers for the following dates :\nthursday , november 9 th from 9 : 00 a . m - 12 : 00 p . m\nthursday , november 16 th from 9 : 00 a . m . - 12 : 00 p . m .\nthursday , december 7 th from 9 : 00 a . m . - 1 : 00 p . m .\nover 50 candidates will be interviewing over these 3 days . the candidates\nwill be a combination of associates and analysts representing schools such as\nprinceton , harvard , university of north carolina , notre dame , university of\nillinois , emory and many others . each candidate will have 4 interviews .\npending the outcome of their interviews we will invite them to stay and\nattend super saturday that weekend . if for some reason we decide not to\nfurther pursue the candidate , we will fly them home that friday morning .\nalso there will be continental breakfast at from 7 : 45 a . m . to 8 : 45 a . m . ( for\nall three dates ) and a luncheon from 12 : 30 p . m . - 2 : 00 p . m . ( on nov . 9 and\nnov . 16 th ) , the lunch will be at 1 : 30 for the dec . 7 th . interviewers are\nwelcome to attend both the breakfast and the lunch on their interviewing\ndate . the interviewing , breakfast and lunch will take place at the\ndoubletree hotel downtown .\nwe are asking enron employees associate ( associates who have been with the\nprogram for at least one year ) level or higher to volunteer at least one\nhour to interview candidates ( this will be 2 interviews ) . if you can\nvolunteer for more than an hour or for more than just one of the stated\ndates , that would be great ! your help is needed ! please contact my\nassistant , cathy lira , at cathy . lira @ enron . com or x 54049 as soon as possible ,\nif you can volunteer any time for interviewing .\nif you have any questions please do not hesitate to contact me .\nonce again , thanks ,\nalthea\nalthea p . gordon , jd\nrecruiter\nassociate & analyst programs", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.356+0000", "entityId": 8879, "properties": {"text": "Subject: mark ,\nplease , check the following web - site . we can commisison a study from this guy .\nvince\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.364+0000", "entityId": 8880, "properties": {"text": "Subject: ethylene margin collar model\ndear all :\nlet us meet early this afternoon .\nhere is the overview of the model :\n1 ) the ethylene margin collars are priced using asian spread option .\nthe forward curve and volatility curve are provided by the desk .\nthe correlation between the ethylene and ethylene cost starts from the\nhistorical spot correlation 50 % and grows with the maturity .\n2 ) the overall 40 mm payout cap is modeled sepereately .\ni fitted the historical spread ( 10 years data ) to a mean reverting model\nwith stronger mean reverting strength on the floor side . the model\nproduces\ntrajectories that are statistically simular to the historical data .\nthen the expected payoff is computed through simulation .\nat the meeting we will discuss the assumptions and present the results .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.370+0000", "entityId": 8881, "properties": {"text": "Subject: re : power crisis in the west\ntim belden ' s office referred me to you . has grant masson been replaced ?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , november 06 , 2000 11 : 00 am\nto : niam @ infocastinc . com\nsubject : re : power crisis in the west\nnia ,\nplease , contact tim belden in our portland office .\nhis phone number is : ( 503 ) 464 - 3820\nvince\nnia mansell on 11 / 03 / 2000 12 : 46 : 52 pm\nto : vkamins @ enron . com\ncc :\nsubject : power crisis in the west\ndear vince ,\ni spoke with you briefly yesterday regarding grant masson . you informed me\nthat he is no longer an enron employee . i have also been informed that\ngrant has not yet been replaced .\ni am inquiring because infocast would like to have an enron representative\nspeak at an upcoming conference entitled \" power crisis in the west : status\nit is certainly\ngoing to be an exciting conference due to all of the controversy\nsurrounding\nthe situation in san diego .\nkind regards ,\nnia mansell\ninfocast\nconference manager\n( 818 ) 888 - 4445 ext . 45\n( 818 ) 888 - 4440 fax\nniam @ . com\n>\n( see attached file : power crisis in the west invite . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.375+0000", "entityId": 8882, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.380+0000", "entityId": 8883, "properties": {"text": "Subject: meeting with dale nesbitt - altos management partners\nthe meeting with dale nesbitt has now been scheduled for 2 : 00 pm tuesday ,\nnovember 7 , in eb 49 c 2 video conference room . your attendance is welcomed .\njng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.384+0000", "entityId": 8884, "properties": {"text": "Subject: re : amitava ' s visit\nbryan ,\ni am glad we could help . let me talk to vasant about amitava ' s support\nfor you .\nvince\nbryan seyfried\n11 / 05 / 2000 05 : 26 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc : steven leppard / lon / ect @ ect , markus fiala / lon / ect @ ect\nsubject : amitava ' s visit\nreally appreciate your freeing amitava up to provide critical input into the\nquantitative work we have undertaken . as you are aware much of the work\nrequires exploring uncharted territory and the team has confirmed the\nsignificant contribution that amitava ' s experience and expertise has provided\nin a very short timeframe .\nas you might expect , this quickly confirms that we really need more dedicated\nsupport from someone with amitava ' s background . it is imperative that we\nleverage his experience to speed up the process and apply critical insights\ninto our project . this will not only speed up the work considerably but also\nensure that we have put our best team on the difficult issues in front of us .\ni would like to discuss an arrangement where we can ensure amitava is more\nintegrated into our efforts . i realize it will be difficult to free him up\nbut maybe we can put something together which works for everybody .\nsome early ideas :\nhave amitava and family come over for 6 weeks of dedicated support . this\nshould allow us to develop the communication processes to run a global quant\neffort for the project and then continue with amitava a full time ec . com\nresource working from houston . this is likely my preference .\nor\nagree a schedule of regular trips which allows amitava to provide critical\ninsights and oversight of the project and give our team a resource to extract\nhis experience on an ongoing basis .\nlet ' s discuss before i talk to john about the practicalities\nthanks for your assistance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.389+0000", "entityId": 8885, "properties": {"text": "Subject: re : insurance derivs\nsteve ,\ni have a book edited by helyette regarding insurance derivatives .\ni shall make a few copies of the most important articles\nfor you .\nvince\nsteven leppard\n11 / 06 / 2000 05 : 39 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc : gillian lockwood / lon / ect @ ect\nsubject : insurance derivs\nvince , vasant\ni ' ve just been speaking to gillian lockwood from our tax group , who is\ninterested in your work on ins . derivs . have you any general articles on the\nprinciples of pricing these instruments ?\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.394+0000", "entityId": 8886, "properties": {"text": "Subject: re : in confidence\nsteve ,\nrac will be a bit unhappy about it . i think that bjorn will object to it .\nlet me talk to you tomorrow over the phone and discuss it .\nthe question is how to present it to rac in a such a way that\nrodrigo will not be put in a bad light .\nvince\nsteven leppard\n11 / 06 / 2000 06 : 37 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : in confidence\nhi vince\ni ' ve had a chat with rodrigo lamas , who is a bit unhappy in his current role\nin rac ( he wants to be a bit more proactive , and finds the inertia\nfrustrating ) . i would be very interested in bringing him into research with\nresponsibility for var / risk mgt , which is where his professional experience\nlies . he also has a phd in optimization from imperial college london which\ni ' m sure we can make use of .\nthere will obviously be some political issues involving such a move only 4\nmonths into his career at enron , and if you ' re able then i ' m sure he ' d\nappreciate a chat with you .\nwe ' re awaiting your response before rodrigo mentions this to anyone else .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.399+0000", "entityId": 8887, "properties": {"text": "Subject: sharad ' s houston visit\nsharad\nas expected we didn ' t get time to discuss in detail what to do in houston .\nwe have discussed the subject informally , but i ' m laying it out here for\nclarity , and for vince / stinson ' s information . here are my thoughts :\n1 . exotica . this is the top priority , as you ' d rightly identified yourself .\na . learn how to build xlls .\nb . catalogue functions in houston exotica not yet available in london .\nc . catalogue differences between inputs to london and houston exotica\nfunctions .\nd . produce london xll that allows current function calls to be used where\npossible , and incorporates new functions .\ne . update documentation as appropriate .\nif you do nothing else in your two weeks , i ' ll be very happy with this .\nmain contacts are paulo and zimin .\n2 . understand american monte carlo ( amc ) . the aim is to get a feel for amc ' s\ncharacteristics . before we embark on the use of amc for real option\nvaluation , i ' d like to understand how it behaves for financial options . i\nsuggest something like the following :\na . produce amc code for single gbm for american option . compare greeks\nagainst those from appropriate tree methods .\nb . two gbm spread option model , to compare against 1 - d numerical integration\nmethod . although the \" american \" bit of amc isn ' t going to be used here , it\nwill be interesting to think about the bucketing issue in price / payoff space\nand , again , the greeks .\nc . some form of mean reverting model , preferably two factor .\nd . hjm for pure financial option valuation .\nif you get somewhere on a - d , and amc behaves sensibly on pure financial\nmodels , then i ' ll be very keen to roll it out for real option valuations .\nvince / stinson - since i ' m expecting the worst from it i . t . o . email support ,\nwould you be good enough to print this email out and hand it to sharad ?\nmany thanks ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.404+0000", "entityId": 8888, "properties": {"text": "Subject: interview - thomas barkley 11 / 9 / 00\nattached please find the resume , interview schedule , and evaluation form for\nthomas barkley . thomas is interviewing on thursday , november 9 , 2000\nbeginning at 8 : 00 a . m . please contact me with any comments or concerns .\nthank you ,\ncheryl arguijo\nstaffing coordinator\n713 - 345 - 4016\n- thomasbarkley . pdf ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.408+0000", "entityId": 8889, "properties": {"text": "Subject: re : enron case study update\nwow ! all on the same day . that ' s super . thank you so very much . vince\nis coming up to baylor on monday of next week and we will hash out our\nquestion list then .\nthanks\njohn\nat 04 : 54 pm 11 / 6 / 00 - 0600 , you wrote :\n> good afternoon john ,\n>\n> i just want to drop you a line to update you re : andy fastow . i have\n> confirmed a one hour interview slot with mr . fastow in monday , december 4 th\n> from\n> 11 : 00 a . m . - noon . this is in addition to your schedule interviews with\n> mr . lay and mr . skilling - outline below .\n>\n> if you have any questions , please do not hesitate to contact me at\n> 713 - 853 - 5670 .\n>\n> regards ,\n>\n> cindy\n>\n>\n> - - - - - forwarded by cindy derecskey / corp / enron on 11 / 06 / 2000 04 : 49 pm - - - - -\n>\n> cindy\n> derecskey to : \" john martin \"\n> cc : vince j\nkaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\n> 10 / 31 / 2000 subject : re : enron case\nstudy ( document link : cindy derecskey )\n> 01 : 44 pm\n>\n>\n>\n>\n>\n> good afternoon john ,\n>\n> i hope things are well with you . i am writing to update you on the status\n> of your meetings with andy fastow , ken lay and jeff skilling . i have\n> arranged the following meeting dates and times with ken lay and jeff\n> skilling , ( i am still trying to work with andy fastow ' s schedule ) :\n>\n> jeff skilling\n> december 4 th\n> 2 : 00 - 3 : 00 p . m .\n>\n> ken lay\n> december 4 th\n> 3 : 30 - 4 : 30 p . m .\n>\n> also , i will attempt to schedule the meeting with andy fastow for december\n> 4 th for convenience - this will also allow us to possibly schedule\n> additional meetings for the 5 th ( as needed ) . i will let you know as soon\n> as i ' m successful .\n>\n> regards ,\n>\n> cindy derecskey\n> university affairs\n> enron corp .\n>\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.413+0000", "entityId": 8890, "properties": {"text": "Subject: background information\ntom ,\ncan you send me additional copies of the information about the webi program ?\ni want to distribute it internally .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.418+0000", "entityId": 8891, "properties": {"text": "Subject: re : enron case study update\ngood afternoon john ,\ni just want to drop you a line to update you re : andy fastow . i have\nconfirmed a one hour interview slot with mr . fastow in monday , december 4 th\nfrom\n11 : 00 a . m . - noon . this is in addition to your schedule interviews with mr .\nlay and mr . skilling - outline below .\nif you have any questions , please do not hesitate to contact me at\n713 - 853 - 5670 .\nregards ,\ncindy\n- - - - - forwarded by cindy derecskey / corp / enron on 11 / 06 / 2000 04 : 49 pm - - - - -\ncindy derecskey\n10 / 31 / 2000 01 : 44 pm\nto : \" john martin \"\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\nsubject : re : enron case study\ngood afternoon john ,\ni hope things are well with you . i am writing to update you on the status of\nyour meetings with andy fastow , ken lay and jeff skilling . i have arranged\nthe following meeting dates and times with ken lay and jeff skilling , ( i am\nstill trying to work with andy fastow ' s schedule ) :\njeff skilling\ndecember 4 th\n2 : 00 - 3 : 00 p . m .\nken lay\ndecember 4 th\n3 : 30 - 4 : 30 p . m .\nalso , i will attempt to schedule the meeting with andy fastow for december\n4 th for convenience - this will also allow us to possibly schedule additional\nmeetings for the 5 th ( as needed ) . i will let you know as soon as i ' m\nsuccessful .\nregards ,\ncindy derecskey\nuniversity affairs\nenron corp .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.422+0000", "entityId": 8892, "properties": {"text": "Subject: re : recruiting\na response from jean . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 11 / 06 / 2000\n03 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njean eisel on 11 / 06 / 2000 03 : 34 : 05 pm\nto : kevin . kindall @ enron . com\ncc : sgould @ andrew . cmu . edu\nsubject : re : recruiting\nhi kevin\nwow you sure do pack one e - mail .\ni will try to answer questions . . . after each of you . . . look in the email\nfor answers .\n- - on monday , november 06 , 2000 , 2 : 39 pm - 0600 kevin . kindall @ enron . com wrote :\n> hello . it was a pleasure to come back to cmu , and i enjoyed\n> interacting with the students . vince k . has expressed interest in\n> interviewing the computational finance students . enron will conduct first\n> round interviews with the mba students in december , and would like to set\n> up seperate interviews for the comp . fin . students . enron would like to\n> interview all the pittsburgh based comp . fin students , and we need to\n> select a date and a time .\nwe are excited that you want to interview the comp finance students .\ndo you want to do it in dec . or before ? let me know what best suits you .\nsince there are only 16 individuals in the pittsburgh area . . . we should be\nable to accomodate you . . . would you want one or two schedules . . ?\nwhat is the formal protocol in such matters ?\n>\nall you need to do is let me know some ideal dates . . . and you send a job\ndescription and names of the students you want to interview .\nwe will try to be as accomodating as possible .\n> enron is also interested in the ecommerce students as we have\n> ecommerce initiatives underway . it is my understanding that kristen\n> gandy will be the contact for such activities .\nif you can send me an e - mail address for kristen , i can get this strating\nasap .\n>\n> regarding a houston based satellite program , vince needs a proposal\n> in writing . would you be so kind as to send one ?\nwhat program is vince interested in having a satellite program ? when he was\nhere he seemed less intererted in comp finance and more interested in\ne - commerce .\ni sent a note to michael shamos and tridas discussing this .\nlet me know which program and i will see if we can work anything out ?\n> thanks so much , and i look forward to seeing you again in a few\n> weeks .\n>\nthanks kevin for you speedy response .\n>\n>\n>\n>\njean e . eisel , ph . d .\nassociate dean , admissions , coc and alumni relations\ngsia\ncarnegie mellon university\npittsburgh , pa 15213\n412 - 268 - 2277\n412 - 268 - 4146 ( fax )\ncurrently in the news : carnegie mellon university mba program ranked 14 th\nin business week ' s list of the best graduate schools of business in the\nunited states .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.427+0000", "entityId": 8893, "properties": {"text": "Subject: re : your visit to carnegie mellon\nkent ,\nthanks a lot . look forward to meeting you on campus .\nvince\n\" kent garrett \" on 11 / 05 / 2000 01 : 06 : 21 pm\nto :\ncc :\nsubject : your visit to carnegie mellon\nvince :\ni would like to personally thank you for spending the day with us at the\nmscf program at carnegie mellon . the time you spent talking to us about\nenron , and the energy industry in general , was very much appreciated . in\nfact , i believe some students who were not previously interested in energy\nare now interested because of the things about which you spoke . i have\nsigned up for an interview for the associate program at enron , and i hope to\nspeak to you again through involvement in the associate program . thanks\nagain .\nsincerely ,\nkent garrett\nkent garrett\nm . s . in computational finance\ncarnegie mellon university\n( 412 ) 362 - 7443", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.431+0000", "entityId": 8894, "properties": {"text": "Subject: re : your visit to enron\nfrank ,\nthanks a lot . are you planning to make a general presentation on your work\nin the weather area ? if this is the case , i would\ninvite to our lunch meeting the traders from the weather derivatives\ndesk .\nvince\n\" francis x . diebold \" on 11 / 04 / 2000 08 : 47 : 41 am\nto : shirley . crenshaw @ enron . com\ncc : vince kaminski\nsubject : re : your visit to enron\nshirley ,\nthe 21 st is perfect . i will go ahead and purchase my plane tickets . would\nyou\nplease make me a hotel reservation for the night of the 21 st ?\nmany thanks ,\nfrank diebold\nshirley . crenshaw @ enron . com wrote :\n> good morning professor diebold :\n>\n> i am vince kaminski ' s assistant and he has forwarded your emails to me\n> for scheduling purpose . unfortunately , we have a conflict on december\n> 14 th . can you possibly come on the 21 st ?\n>\n> i hope you have not already made your reservations . if i can do anything\n> to assist you , please let me know .\n>\n> best regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group\n> 713 - 853 - 5290\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 03 / 2000\n> 09 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n> vince j kaminski\n> 11 / 02 / 2000 04 : 30 pm\n>\n> to : \" francis x . diebold \" @ enron\n> cc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\n> subject : re : visit ? ( document link : shirley crenshaw )\n>\n> frank ,\n>\n> dec 14 would be better for us . we have already scheduled\n> an internal presentation on december 7 . please , go ahead and make a\n> reservation .\n> the best place to stay is hyatt regency downtown or doubletree downtown\n> ( within a walking distance to enron ) . it is important to specify the\n> downtown\n> location for both hotels .\n>\n> vince\n>\n> \" francis x . diebold \" on 11 / 02 / 2000 03 : 00 : 49 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : visit ?\n>\n> sounds good , vince . how about dec 7 ? the roundtrip coach fare , regardless\n> of\n> airline , is about $ 1900 . i hope that won ' t break the bank . once i have\n> your\n> approval , i ' ll go ahead and book it . best , frank\n>\n> vince . j . kaminski @ enron . com wrote :\n>\n> > frank ,\n> >\n> > yes , i would be very interested in meeting with you in houston in\n> december .\n> > the best day for visit would be thursday when my group has a lunch\n> meeting\n> > and you could meet the rest of the research unit .\n> >\n> > please , let me know what day would work for you . we shall be very glad to\n> > cover the cost of your trip .\n> >\n> > vince\n> >\n> > i\n> >\n> > \" francis x . diebold \" on 10 / 31 / 2000 01 : 01 : 11 pm\n> >\n> > to : vince kaminski\n> > cc :\n> > subject : visit ?\n> >\n> > hi vince ,\n> > are you still interested in my visiting for a day , perhaps in dec or\n> > jan ? i have begun a project on unobserved - components modeling of\n> > weather patterns , so it would be productive and fun to compare notes .\n> > best ,\n> > frank\n> >\n> > - -\n> > francis x . diebold\n> > wp carey professor\n> >\n> > department of economics\n> > university of pennsylvania\n> > 3718 locust walk\n> > philadelphia , pa 19104 - 6297\n> >\n> > fdiebold @ sas . upenn . edu\n> > http : / / www . ssc . upenn . edu / ~ diebold\n> >\n> > ( 215 ) 898 - 1507 telephone\n> > ( 215 ) 573 - 4217 fax\n>\n> - -\n> francis x . diebold\n> wp carey professor\n>\n> department of economics\n> university of pennsylvania\n> 3718 locust walk\n> philadelphia , pa 19104 - 6297\n>\n> fdiebold @ sas . upenn . edu\n> http : / / www . ssc . upenn . edu / ~ diebold\n>\n> ( 215 ) 898 - 1507 telephone\n> ( 215 ) 573 - 4217 fax\n- -\nfrancis x . diebold\nwp carey professor\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 telephone\n( 215 ) 573 - 4217 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.436+0000", "entityId": 8895, "properties": {"text": "Subject: re : your visit to enron\njoe ,\nfyi . please plan on attending . we should schedule a meeting with\nmark and the rest of the weather team .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 06 / 2000\n10 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" francis x . diebold \" on 11 / 04 / 2000 08 : 47 : 41 am\nto : shirley . crenshaw @ enron . com\ncc : vince kaminski\nsubject : re : your visit to enron\nshirley ,\nthe 21 st is perfect . i will go ahead and purchase my plane tickets . would\nyou\nplease make me a hotel reservation for the night of the 21 st ?\nmany thanks ,\nfrank diebold\nshirley . crenshaw @ enron . com wrote :\n> good morning professor diebold :\n>\n> i am vince kaminski ' s assistant and he has forwarded your emails to me\n> for scheduling purpose . unfortunately , we have a conflict on december\n> 14 th . can you possibly come on the 21 st ?\n>\n> i hope you have not already made your reservations . if i can do anything\n> to assist you , please let me know .\n>\n> best regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group\n> 713 - 853 - 5290\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 03 / 2000\n> 09 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n> vince j kaminski\n> 11 / 02 / 2000 04 : 30 pm\n>\n> to : \" francis x . diebold \" @ enron\n> cc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\n> subject : re : visit ? ( document link : shirley crenshaw )\n>\n> frank ,\n>\n> dec 14 would be better for us . we have already scheduled\n> an internal presentation on december 7 . please , go ahead and make a\n> reservation .\n> the best place to stay is hyatt regency downtown or doubletree downtown\n> ( within a walking distance to enron ) . it is important to specify the\n> downtown\n> location for both hotels .\n>\n> vince\n>\n> \" francis x . diebold \" on 11 / 02 / 2000 03 : 00 : 49 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : visit ?\n>\n> sounds good , vince . how about dec 7 ? the roundtrip coach fare , regardless\n> of\n> airline , is about $ 1900 . i hope that won ' t break the bank . once i have\n> your\n> approval , i ' ll go ahead and book it . best , frank\n>\n> vince . j . kaminski @ enron . com wrote :\n>\n> > frank ,\n> >\n> > yes , i would be very interested in meeting with you in houston in\n> december .\n> > the best day for visit would be thursday when my group has a lunch\n> meeting\n> > and you could meet the rest of the research unit .\n> >\n> > please , let me know what day would work for you . we shall be very glad to\n> > cover the cost of your trip .\n> >\n> > vince\n> >\n> > i\n> >\n> > \" francis x . diebold \" on 10 / 31 / 2000 01 : 01 : 11 pm\n> >\n> > to : vince kaminski\n> > cc :\n> > subject : visit ?\n> >\n> > hi vince ,\n> > are you still interested in my visiting for a day , perhaps in dec or\n> > jan ? i have begun a project on unobserved - components modeling of\n> > weather patterns , so it would be productive and fun to compare notes .\n> > best ,\n> > frank\n> >\n> > - -\n> > francis x . diebold\n> > wp carey professor\n> >\n> > department of economics\n> > university of pennsylvania\n> > 3718 locust walk\n> > philadelphia , pa 19104 - 6297\n> >\n> > fdiebold @ sas . upenn . edu\n> > http : / / www . ssc . upenn . edu / ~ diebold\n> >\n> > ( 215 ) 898 - 1507 telephone\n> > ( 215 ) 573 - 4217 fax\n>\n> - -\n> francis x . diebold\n> wp carey professor\n>\n> department of economics\n> university of pennsylvania\n> 3718 locust walk\n> philadelphia , pa 19104 - 6297\n>\n> fdiebold @ sas . upenn . edu\n> http : / / www . ssc . upenn . edu / ~ diebold\n>\n> ( 215 ) 898 - 1507 telephone\n> ( 215 ) 573 - 4217 fax\n- -\nfrancis x . diebold\nwp carey professor\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 telephone\n( 215 ) 573 - 4217 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.441+0000", "entityId": 8896, "properties": {"text": "Subject: re : thank you !\nfrank ,\nthanks a lot . look forward to meeting you again\non campus .\nvince\n\" frank qian \" on 11 / 05 / 2000 05 : 10 : 06 pm\nto :\ncc :\nsubject : thank you !\ndear mr . kaminski :\nit ' s a great pleasure to have you visiting us and a great honor to have\ndinner with you . i ' d like to thank you for your wonderful presentation . it ' s\nthe most interesting topic we had so far . this is not just my personal\nopinion , all my classmates i talked to agree with me . i like enron ' s style\nand culture and i think it played a big role in enron ' s success . i look\nforward to discuss career opportunities at enron during your on - campus\ninterview session .\nregards ,\nfrank qian\nfqian @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.446+0000", "entityId": 8897, "properties": {"text": "Subject: re : carnegie mellon\nkristin ,\nthe presentation went quite well .\nkevin and i would like to brief you about cmu in general . let ' s go out to\nlunch when\nyou come back .\nvince\nkristin gandy @ enron\n11 / 03 / 2000 03 : 55 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : carnegie mellon\nvince ,\ni wanted to email you and let you know how sorry i am that i was not able to\nmake your presentation at carnegie mellon . i really was looking forward to\nthe trip and the presentation but unfortunately since i have been on the road\na lot lately things started backing up in the office . after my meeting on\nthursday there was no way i would make the 6 pm flight and my original flight\nwould have put me in pittsburgh to late for the presentation .\nanyway , i hope you understand and i am looking forward to working with you in\ndecember for the interviews on campus . maybe once you return you can give me\na recap of the days events . in the meantime if you need any assistance\nplease do not hesitate to call .\nthank you ,\nkristin gandy\n713 - 345 - 3214", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.452+0000", "entityId": 8898, "properties": {"text": "Subject: re : spring 2001 energy finance conference participation\nehud ,\ni want to invite louise kitchen to this conference .\nshe is the president of enrononline .\ngreg whalley will be in london this day .\nvince\n\" ehud i . ronn \" on 11 / 02 / 2000 05 : 03 : 22 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : spring 2001 energy finance conference participation\nvince ,\n> given the energy - finance focus of the conference , do you believe the\nnetworks topics is sufficiently energy - related ?\nper my above concern , i ' d like to discuss the matter with you further .\nthanks ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.457+0000", "entityId": 8899, "properties": {"text": "Subject: pro opticus\nshirley ,\nplease , send this memo to the entire group and ask if this demo was given\nto anybody in our group .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 06 / 2000\n05 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin sweeney\n10 / 23 / 2000 06 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc : kara maloney / na / enron @ enron , mario de la ossa / na / enron @ enron , matt a\nbrown / hou / ect @ ect\nsubject : pro opticus\nvince ,\ni understand that you or someone in your group had a demo from the above\ngroup last friday . i was wondering if this was part of a push to bring more\noptions ' analytics to the traders ' desks , and if so , if you could explain\nwhat that effort looks like ? one of the global markets traders , mario de la\nossa also had a look at the software as he has used it in the past .\nthanks ,\nkevin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.462+0000", "entityId": 8900, "properties": {"text": "Subject: re : pro opticus\ni was not aware of the demo .\n- - stinson\nvince j kaminski\n11 / 06 / 2000 01 : 58 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : pro opticus\nstinson ,\nany insights ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 06 / 2000\n02 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin sweeney\n10 / 23 / 2000 06 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc : kara maloney / na / enron @ enron , mario de la ossa / na / enron @ enron , matt a\nbrown / hou / ect @ ect\nsubject : pro opticus\nvince ,\ni understand that you or someone in your group had a demo from the above\ngroup last friday . i was wondering if this was part of a push to bring more\noptions ' analytics to the traders ' desks , and if so , if you could explain\nwhat that effort looks like ? one of the global markets traders , mario de la\nossa also had a look at the software as he has used it in the past .\nthanks ,\nkevin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.468+0000", "entityId": 8901, "properties": {"text": "Subject: reactions website\nhttp : / / www . reactionsnet . com\nthank you for registering for a free trial to the reactions magazine website .\nyour user name and password are listed below - please keep this email or a\nprintout of these details as you will need them to access the site .\nif you have any problems logging on or using this site please feel free to\ncontact our help desk on + 44 ( 0 ) 20 7779 8006 or\nmailto : web - help @ euromoneyplc . com\nyour trial user name is : kaminski\nand your password is : 105006\nreactions is also available in hard copy format . if you wish to receive a\ncomplimentary copy , please email us your full mailing address .\nfor further informationon all sbscriptions , please call our hotline on + 44\n( 0 ) 20 7779 8999 ( uk ) or 1 - 800 437 9997 ( usa ) or\nmailto : hotline @ euromoneyplc . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.477+0000", "entityId": 8902, "properties": {"text": "Subject: re : avistar training\ni will keep you informed !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 11 / 06 / 2000 02 : 45\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : paige cox @ enron on 11 / 06 / 2000 01 : 21 pm\nto : kevin g moore / hou / ect @ ect , ian richardson / corp / enron @ enron\ncc : phillip daigle / corp / enron @ enron , cedric belt / corp / enron @ enron ,\nbwood @ avistar . com\nsubject : re : avistar training\nhi kevin ,\nbrian wood with avistar is going to be here next tuesday ( 11 / 14 ) . i have\nasked him to schedule some time to meet with you and vince , and whomever else\nneeds to be trained . i was not aware that you would be using the media\nserver , so i didn ' t arrange to have him spend any time with you when he was\nhere alst . i ' ll let you kow what time ( s ) he ' ll be available next tuesday .\nsorry for the delay\nian - - please ensure that vince kaminski is set up to use the media server\nthanks !\npaige\nkevin g moore @ ect\n11 / 06 / 2000 12 : 43 pm\nto : ian richardson / corp / enron @ enron , cedric belt / corp / enron @ enron\ncc : paige cox / corp / enron @ enron\nsubject : avistar training\nwe are still waiting on avistar training / set up .\nplease inform me on the situation .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.484+0000", "entityId": 8903, "properties": {"text": "Subject: re : meeting tuesday\ndale ,\nyour memory did not fail you .\nwe would like , however , to move the meeting to 2 p . m . tuesday .\ni left you a voice message about it . please call me s soon as\npossible to confirm .\nvince\n\" dale m . nesbitt \" on 11 / 02 / 2000 07 : 41 : 40 pm\nplease respond to\nto : \" vincent kaminski \\ ( e - mail \\ ) \"\ncc :\nsubject : meeting tuesday\nvince :\ni was writing to confirm the meeting you wanted to set up with me , yourself ,\nand mr . goodpasture for next tuesday . i believe it was set for 300 pm this\ncoming tuesday at your offices . ( i seem to have misplaced where i wrote the\nspecific time , so i wanted to be sure to reconfirm . ) please confirm if you\nget a second so that i can finalize my travel schedule . you can email or\nphone 650 . 218 . 3069 . thanks . i look forward to meeting with you again and\nwith mr . goodpasture .\ndale nesbitt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.491+0000", "entityId": 8904, "properties": {"text": "Subject: ethylene margin collar simulation model\ni set up the simulation model . the margin follows a mean - reverting process .\ni seperarted the data into two category , margin > 0 . 04 and margin < 0 . 04 .\nthen i estimate the mean reverting speed seperately for these two data sets .\ni got higher mean reverting speed than that i estimated using the whole data\nset .\nthe high mr speed surpresses the probability at high payout side .\nsince the mr speed is sensitive to where i divide the data , so bob will run\na few senarios .\ni put the overal settlement cap and floor into the montly premium\ncalculation , so the\nthe result in el 8 on the summary page is the ultimate answer to the deal\npricing .\ni also calculate the undiscounted payout distribution and overall collar\nworth .\nrelax the overall cap and floor will have a direct comparison with the spread\noption\napproach that bob and lee set up .\nlook like we got a reasonable model .\nstinson :\ni ' d like to have you check my set up for the simulation model .\nlee and douglas :\nyou can play with the model , and let me know what do you think .\nbob :\nwe need run different price curve senarios using the simulation model .\nplus different mr speed .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.496+0000", "entityId": 8905, "properties": {"text": "Subject: e - mail and voicemail retention policy\nas a reminder , ena \u0001 , s policy regarding retention of electronic mail , including\nlotus notes mail , internet e - mail , cc : mail and voicemail is as follows :\nmessage location maximum retention\ninbox 30 days\nmessage log / sent mail 30 days\ntrash rollover from inbox for 15 days\nbulletin boards 30 days\nfolders / archives e - mails placed in folders or archives \u0001 ) one year\nvoicemail 90 days\ne - mail and voicemail older than the maximum retention will be purged\nautomatically by it , which is responsible for monitoring compliance with this\npolicy . any exception to this policy requires approval by mark haedicke or\nrichard sanders .\nmark frevert and mark haedicke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.500+0000", "entityId": 8906, "properties": {"text": "Subject: associate & analyst super saturday friday night dinner\nparticipation\nthank you for volunteering your time for this weekend ' s super saturday . we\nappreciate your commitment to enron ' s recruiting success . at this time we do\nhave an adequate number of friday night dinner participants and will not need\nyou to sacrifice your friday evening . if you haven ' t already , we encourage\nyou to volunteer for one of our other future super saturdays .\nthank you again for your support and your participation .\nshelly jones\nrecruiting manager\nassociate & analyst programs", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.505+0000", "entityId": 8907, "properties": {"text": "Subject: risk assessment\nthis is to confirm the meeting setup for november 22 nd at 9 : 00 am w / mechelle\natwood and shawn kilchrist regarding risk assessment for 2001 . location is\nebl 962 . if you have any questions , please call me at x 58174 .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.510+0000", "entityId": 8908, "properties": {"text": "Subject: natural gas storage research\ni am working on a report aimed at energy marketers that will examine\nnatural gas storage : effects on energy trading . i am looking for people\nwho can talk about the importance of this subject to power marketers .\nplease contact me if you can inform me on any of the following subjects .\ni am interested in exploring the following issues :\n1 . storage process : transportation , injection , withdrawal\n2 . are all storage facilities connected to pipelines ?\n3 . description of types of storage facilities : salt caverns ,\nabove - ground tanks , inactive underground volcano , others\n4 . problems that limit underground reservoir effectiveness\n5 . historical storage data\n6 . contributing factors to storage levels : weather , generation demand ,\nreliability concerns\n7 . national map of storage facilities and capacities\n8 . terms definitions : base gas , working gas , underground storage ,\ntraditional storage , salt caverns , other relevant terms\n9 . impact of storage fluctuations on prices and energy trading\n10 . safety issues of natural gas storage\n11 . seasonal storage trends\n12 . total amount of national storage capacity\n13 . future storage capacity needs\n14 . lng as storage alternative\n15 . technology improvements\n16 . who regulated natural gas storage ?\n17 . list of storage facility owners\nif you are involved with natural gas storage , or are an energy trader\nwho is affected by natural gas storage , please contact me by november\n13 th . thank you in advance for your help !\nbarbara drazga\nindependent journalist\ndenver , colo .\ntel : 303 - 369 - 3533\nfax : 303 - 369 - 3510\nenergywriter @ aol . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.514+0000", "entityId": 8909, "properties": {"text": "Subject: contstraints on the shape of a smile\nstinson , vince , zimin ,\nhere ' s a brief document on constraints on the shape of a smile for a fixed\nexpiry date .\nthe constraints are neccessary and sufficient for no arbitrage in this case .\ni ' ve used a template created by dr . leppard which is why it looks so scary .\nif you need constraints in the time direction then i will have to think a\nlittle bit more about it .\ni think constraints in this direction are very model depenendent e . g .\nstochastic volatility and local volatility models\nwill throw up different constraints .\nsteve ,\ni am not sure if our traders ( or quants for that matter ) are aware of these\nconstraints\nand some desks are beginning to build smiles . . .\nregards\nsharad", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.519+0000", "entityId": 8910, "properties": {"text": "Subject: cera conference call : mexican energy in transition - - update - cera\nconference call\ncera conference call : sent tue , november 07 , 2000\ntitle : cera conference call : mexican energy in transition - - update\nauthor : latin america energy team\ne - mail category : conference call\nproduct line : latin american energy ,\nurl : http : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1414 ,\nalternative url :\nlatin america energy conference call and web\npresentation\na cambridge energy research associates conference call &\nweb presentation\ntopic\nmexican energy in transition - update\n* cera ' s view on the fox administration\n* cabinet announcements\n* mexico ' s energy sector dynamics\nformat\nat the time listed below , our speakers will address this\ntopic for approximately 30 minutes , with accompanying\ngraphics presented on the internet , followed by an open\nquestion and answer period .\nspeakers\nsondra scott , cera director , latin american energy\ntime\n11 : 00 a . m . eastern , thursday , november 16 , 2000\neligibility\nclients eligible to participate in this conference call\nare those who subscribe to the latin america energy\nretainer advisory service .\nto enroll\nto enroll , please contact ms . nelly rivera via fax at\n( 617 ) 576 - 8763 , or enroll via e - mail at nrivera @ cera . com\nbefore 4 : 00 p . m . , wednesday , november 15 , 2000 .\naudio netscape navigator 3 . 02 or\nhigher ; or sun hot java ( tm )\n* close all desktop applications and disable your screen\nsaver\ntechnical assistance\nu . s . callers : if you are experiencing difficulties\nduring the call , you may signal for technical assistance\nby pressing * 0 ( star , zero ) on your telephone keypad\nafter you have connected to the audio portion of the\nconference .\ninternational callers : please re - dial and ask the\noperator for assistance before giving the confirmation\ncode .\na recording of this call ( audio only ) will be available\nuntil december 16 , 2000 . to access this recording ,\nplease call 1 - 888 - 203 - 1112 ( within the u . s . ) or ( 719 )\n457 - 0820 ( outside the u . s . ) . please use confirmation\nnumber 403120 to access the call .\nfor more information , please contact nelly rivera via e -\nmail at nrivera @ cera . com or via telephone at ( 617 ) 441 -\n2642 .\n* * end * *\nfollow url for html version of this message only .\naccount changes\nto edit your personal account information , including your e - mail\naddress , etc . go to : http : / / eprofile . cera . com / cfm / edit / account . cfm\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.524+0000", "entityId": 8911, "properties": {"text": "Subject: cera conference call : ferc ' s order for california market : bold\ndecision of insufficient action ? - cera conference call\ncera conference call : sent tue , november 07 , 2000\ntitle : cera conference call : ferc ' s order for california market : bold\ndecision of insufficient action ?\nauthor :\ne - mail category : conference call\nproduct line : western energy , north american power ,\nurl : http : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1412 ,\nhttp : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 & m = 1413 ,\nalternative urls :\nwestern energy members :\nn . american electric power members :\nnorth american electric power and western energy\nconference call\na cambridge energy research associates conference call\ntopic\nferc ' s order for the california market :\nbold decision or insufficient action ?\n* a ferc vote for market solutions\n* where is the relief for retail customers ?\n* what ' s next for california and western wholesale\nmarkets ?\n* implications for the broader north american power\nmarket\nformat\nat the time listed below , our speakers will address this\ntopic for approximately 30 minutes , followed by an open\nquestion and answer period .\nspeakers\nlarry makovich , cera senior director , north american\nelectric power\nmike zenker , cera director , western energy\ntime\n1 : 00 p . m . eastern , monday , november 13 , 2000\neligibility\nclients eligible to participate in this conference call\nare those who subscribe to the north american electric\npower retainer advisory service or the western energy\nretainer advisory service .\nto enroll\nto enroll , please contact ms . kari paakaula via fax at\n( 617 ) 497 - 0423 , or enroll via e - mail at\nkpaakaula @ cera . com before 4 : 00 p . m . , friday , november\n10 , 2000 .\naudio\nfor the audio portion of the call , please call in on one\nof the following numbers approximately five ( 5 ) minutes\nbefore the call :\nwithin the united states : 1 - 800 - 946 - 0741\noutside the united states : ( 719 ) 457 - 2649\nconfirmation code : 640107\ntitle of the call : cera call\ntechnical assistance\nu . s . callers : if you are experiencing difficulties\nduring the call , you may signal for technical assistance\nby pressing * 0 ( star , zero ) on your telephone keypad\ninternational callers : please re - dial and ask the\noperator for assistance before giving the confirmation\ncode .\na recording of this call ( audio only ) will be available\nuntil december 13 , 2000 . to access this recording ,\nplease call 1 - 888 - 203 - 1112 ( within the u . s . ) or ( 719 )\n457 - 0820 ( outside the u . s . ) . please use confirmation\nnumber 640107 to access the call .\n* *\nfor more information , please contact kari paakaula via\ne - mail at kpaakaula @ cera . com or via telephone at ( 617 )\n441 - 1362 .\n* * end * *\nfollow url for html version of this message only .\naccount changes\nto edit your personal account information , including your e - mail\naddress , etc . go to : http : / / eprofile . cera . com / cfm / edit / account . cfm\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.528+0000", "entityId": 8912, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngandy , kristin h celeste c roberts nov 01 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.533+0000", "entityId": 8913, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.538+0000", "entityId": 8914, "properties": {"text": "Subject: note from maureen\nvince ,\nmaureen asked me to pass along her message that the meeting with brook / hunt\nwent very well today . she said this firm is top - notch and very thorough .\nshe will contact you tomorrow after her speech on metals is over ( planned for\nthe lunch hour ) .\ngwyn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.542+0000", "entityId": 8915, "properties": {"text": "Subject: re : thanks\nthanks for the update , vince . i have been trying to discuss this with you\nfor several days , but i know that you have been very busy . jaesoo told me\nthat he wanted a base of $ 90 k rather than the $ 85 k which you had authorized\nme to offer him , and i told him that i would have to discuss it with you and\nget back to him . i am glad that he has seen his way a little more clearly ,\nand i will call him tomorrow to finalize the offer .\nvince j kaminski\n11 / 07 / 2000 05 : 29 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : thanks\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 07 / 2000\n05 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njlew @ kent . edu > on 11 / 07 / 2000 07 : 19 : 20 am\nto : vince . j . kaminski @ enron . com\ncc : jlew @ kent . edu\nsubject : thanks\ndear dr . kaminski\nfirst of all , i would like to thank you for the offer from the enron .\ni really appreciate it .\nmolly and i talked about the salary the other day , but to be honest with you ,\ni ' m pleased with the possibility that i can work there where i want to work\nand the salary is the next .\nif this matter bothers you , please ignore it . i can accept the original offer .\ni ' m looking forward to seeing you soon .\nsincerely ,\njaesoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.547+0000", "entityId": 8916, "properties": {"text": "Subject: rodrigo lamas - best wishes\ni would like to take the opportunity to let you know i have resigned today .\ni wish you all the best in your carreer and in life .\nregards\nrodrigo lamas", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.551+0000", "entityId": 8917, "properties": {"text": "Subject: re : meeting nov 8 th\nvince ,\ni look forward to seeing you tomorrow around 3 : 30 / 3 : 45 . ?\nchristie ,\nmany thanks for helping get this organized . ? i am working on the tour list\nalso .\nthanks , carrie\nat 12 : 48 pm 11 / 7 / 00 - 0600 , you wrote :\nhi vince and carrie !\nper my voice mails to each of you , here are your respective phone numbers :\nvince kaminski : 713 - 853 - 3848\ncarrie miller : 713 - 348 - 5260 .\ni hope your respective schedules allow for a meeting at rice tomorrow to\ndiscuss rice ' s action learning program . please leave me a voice mail if\nthere is anything else i can do regarding this effort . ? ( 713 ) - 853 - 6117 .\nthanks !\n- - christie .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncarrie chamberlin miller\ndirector of mba program\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ? ( 713 ) 348 - 5260\nfax : ? ( 713 ) 348 - 5251\ne - mail : ? cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.555+0000", "entityId": 8918, "properties": {"text": "Subject: re : your visit to enron\nfrank ,\ngreat idea . i think it will be an opportunity to brainstorm about the problem .\nvince\n\" francis x . diebold \" on 11 / 06 / 2000 04 : 08 : 26 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : your visit to enron\nvince ,\nnow that ' s an interesting idea - - the problem is that i don ' t really have any\nwork yet , as i am just now beginning ! but yes , why don ' t i put a talk\ntogether\nas to what i ' m thinking about , why it ' s important , why existing methods may be\ninadequate , and how i think econometricians can contribute . does that sound\nok ?\nf .\nvince . j . kaminski @ enron . com wrote :\n> frank ,\n>\n> thanks a lot . are you planning to make a general presentation on your work\n> in the weather area ? if this is the case , i would\n> invite to our lunch meeting the traders from the weather derivatives\n> desk .\n>\n> vince\n>\n> \" francis x . diebold \" on 11 / 04 / 2000 08 : 47 : 41 am\n>\n> to : shirley . crenshaw @ enron . com\n> cc : vince kaminski\n> subject : re : your visit to enron\n>\n> shirley ,\n>\n> the 21 st is perfect . i will go ahead and purchase my plane tickets . would\n> you\n> please make me a hotel reservation for the night of the 21 st ?\n>\n> many thanks ,\n>\n> frank diebold\n>\n> shirley . crenshaw @ enron . com wrote :\n>\n> > good morning professor diebold :\n> >\n> > i am vince kaminski ' s assistant and he has forwarded your emails to me\n> > for scheduling purpose . unfortunately , we have a conflict on december\n> > 14 th . can you possibly come on the 21 st ?\n> >\n> > i hope you have not already made your reservations . if i can do anything\n> > to assist you , please let me know .\n> >\n> > best regards ,\n> >\n> > shirley crenshaw\n> > administrative coordinator\n> > enron research group\n> > 713 - 853 - 5290\n> >\n> > - - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on\n> 11 / 03 / 2000\n> > 09 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> >\n> > vince j kaminski\n> > 11 / 02 / 2000 04 : 30 pm\n> >\n> > to : \" francis x . diebold \" @ enron\n> > cc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\n> > subject : re : visit ? ( document link : shirley crenshaw )\n> >\n> > frank ,\n> >\n> > dec 14 would be better for us . we have already scheduled\n> > an internal presentation on december 7 . please , go ahead and make a\n> > reservation .\n> > the best place to stay is hyatt regency downtown or doubletree downtown\n> > ( within a walking distance to enron ) . it is important to specify the\n> > downtown\n> > location for both hotels .\n> >\n> > vince\n> >\n> > \" francis x . diebold \" on 11 / 02 / 2000 03 : 00 : 49 pm\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : visit ?\n> >\n> > sounds good , vince . how about dec 7 ? the roundtrip coach fare ,\n> regardless\n> > of\n> > airline , is about $ 1900 . i hope that won ' t break the bank . once i have\n> > your\n> > approval , i ' ll go ahead and book it . best , frank\n> >\n> > vince . j . kaminski @ enron . com wrote :\n> >\n> > > frank ,\n> > >\n> > > yes , i would be very interested in meeting with you in houston in\n> > december .\n> > > the best day for visit would be thursday when my group has a lunch\n> > meeting\n> > > and you could meet the rest of the research unit .\n> > >\n> > > please , let me know what day would work for you . we shall be very glad\n> to\n> > > cover the cost of your trip .\n> > >\n> > > vince\n> > >\n> > > i\n> > >\n> > > \" francis x . diebold \" on 10 / 31 / 2000 01 : 01 : 11 pm\n> > >\n> > > to : vince kaminski\n> > > cc :\n> > > subject : visit ?\n> > >\n> > > hi vince ,\n> > > are you still interested in my visiting for a day , perhaps in dec or\n> > > jan ? i have begun a project on unobserved - components modeling of\n> > > weather patterns , so it would be productive and fun to compare notes .\n> > > best ,\n> > > frank\n> > >\n> > > - -\n> > > francis x . diebold\n> > > wp carey professor\n> > >\n> > > department of economics\n> > > university of pennsylvania\n> > > 3718 locust walk\n> > > philadelphia , pa 19104 - 6297\n> > >\n> > > fdiebold @ sas . upenn . edu\n> > > http : / / www . ssc . upenn . edu / ~ diebold\n> > >\n> > > ( 215 ) 898 - 1507 telephone\n> > > ( 215 ) 573 - 4217 fax\n> >\n> > - -\n> > francis x . diebold\n> > wp carey professor\n> >\n> > department of economics\n> > university of pennsylvania\n> > 3718 locust walk\n> > philadelphia , pa 19104 - 6297\n> >\n> > fdiebold @ sas . upenn . edu\n> > http : / / www . ssc . upenn . edu / ~ diebold\n> >\n> > ( 215 ) 898 - 1507 telephone\n> > ( 215 ) 573 - 4217 fax\n>\n> - -\n> francis x . diebold\n> wp carey professor\n>\n> department of economics\n> university of pennsylvania\n> 3718 locust walk\n> philadelphia , pa 19104 - 6297\n>\n> fdiebold @ sas . upenn . edu\n> http : / / www . ssc . upenn . edu / ~ diebold\n>\n> ( 215 ) 898 - 1507 telephone\n> ( 215 ) 573 - 4217 fax\n- -\nfrancis x . diebold\nwp carey professor\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 telephone\n( 215 ) 573 - 4217 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.562+0000", "entityId": 8919, "properties": {"text": "Subject: re : recruiting\ngood afternoon . packing emails - - its just my style : )\ncurrently , it is my understanding that we would like to interview the comp .\nfin . students during the same period that we interview the mba ' s .\ntentatively speaking , one schedule should be sufficient . i will attempt to\nproduce an official job description shortly .\nkristen is out of town for the remainder of the week , so her response to any\ninquiries may be delayed . her contact info : kristin . gandy @ enron . com 713\n345 3214\nregarding the satellite program , vince is interested in the ecommerce\nprogram . we think that it would be easier to keep the program full as\ncompared to the comp . fin . program .\nit was a pleasure to be back in pittsburgh and i enjoyed meeting all the\nstudents from this year ' s comp . fin . class . i look forward to seeing you in\na few weeks .\n- kevin kindall\njean eisel on 11 / 06 / 2000 03 : 34 : 05 pm\nto : kevin . kindall @ enron . com\ncc : sgould @ andrew . cmu . edu\nsubject : re : recruiting\nhi kevin\nwow you sure do pack one e - mail .\ni will try to answer questions . . . after each of you . . . look in the email\nfor answers .\n- - on monday , november 06 , 2000 , 2 : 39 pm - 0600 kevin . kindall @ enron . com wrote :\n> hello . it was a pleasure to come back to cmu , and i enjoyed\n> interacting with the students . vince k . has expressed interest in\n> interviewing the computational finance students . enron will conduct first\n> round interviews with the mba students in december , and would like to set\n> up seperate interviews for the comp . fin . students . enron would like to\n> interview all the pittsburgh based comp . fin students , and we need to\n> select a date and a time .\nwe are excited that you want to interview the comp finance students .\ndo you want to do it in dec . or before ? let me know what best suits you .\nsince there are only 16 individuals in the pittsburgh area . . . we should be\nable to accomodate you . . . would you want one or two schedules . . ?\nwhat is the formal protocol in such matters ?\n>\nall you need to do is let me know some ideal dates . . . and you send a job\ndescription and names of the students you want to interview .\nwe will try to be as accomodating as possible .\n> enron is also interested in the ecommerce students as we have\n> ecommerce initiatives underway . it is my understanding that kristen\n> gandy will be the contact for such activities .\nif you can send me an e - mail address for kristen , i can get this strating\nasap .\n>\n> regarding a houston based satellite program , vince needs a proposal\n> in writing . would you be so kind as to send one ?\nwhat program is vince interested in having a satellite program ? when he was\nhere he seemed less intererted in comp finance and more interested in\ne - commerce .\ni sent a note to michael shamos and tridas discussing this .\nlet me know which program and i will see if we can work anything out ?\n> thanks so much , and i look forward to seeing you again in a few\n> weeks .\n>\nthanks kevin for you speedy response .\n>\n>\n>\n>\njean e . eisel , ph . d .\nassociate dean , admissions , coc and alumni relations\ngsia\ncarnegie mellon university\npittsburgh , pa 15213\n412 - 268 - 2277\n412 - 268 - 4146 ( fax )\ncurrently in the news : carnegie mellon university mba program ranked 14 th\nin business week ' s list of the best graduate schools of business in the\nunited states .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.566+0000", "entityId": 8920, "properties": {"text": "Subject: re : enron case study update\nfantastic . i look forward to receiving them . also , will you be keeping dec .\n5 th open , in case there is a need for you to meet with additional executives ?\nregards , cindy\n\" john d . martin \"\n11 / 06 / 2000 09 : 54 pm\nto : cindy . derecskey @ enron . com\ncc : vkamins @ enron . com\nsubject : re : enron case study update\nwow ! all on the same day . that ' s super . thank you so very much . vince\nis coming up to baylor on monday of next week and we will hash out our\nquestion list then .\nthanks\njohn\nat 04 : 54 pm 11 / 6 / 00 - 0600 , you wrote :\n> good afternoon john ,\n>\n> i just want to drop you a line to update you re : andy fastow . i have\n> confirmed a one hour interview slot with mr . fastow in monday , december 4 th\n> from\n> 11 : 00 a . m . - noon . this is in addition to your schedule interviews with\n> mr . lay and mr . skilling - outline below .\n>\n> if you have any questions , please do not hesitate to contact me at\n> 713 - 853 - 5670 .\n>\n> regards ,\n>\n> cindy\n>\n>\n> - - - - - forwarded by cindy derecskey / corp / enron on 11 / 06 / 2000 04 : 49 pm - - - - -\n>\n> cindy\n> derecskey to : \" john martin \"\n> cc : vince j\nkaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\n> 10 / 31 / 2000 subject : re : enron case\nstudy ( document link : cindy derecskey )\n> 01 : 44 pm\n>\n>\n>\n>\n>\n> good afternoon john ,\n>\n> i hope things are well with you . i am writing to update you on the status\n> of your meetings with andy fastow , ken lay and jeff skilling . i have\n> arranged the following meeting dates and times with ken lay and jeff\n> skilling , ( i am still trying to work with andy fastow ' s schedule ) :\n>\n> jeff skilling\n> december 4 th\n> 2 : 00 - 3 : 00 p . m .\n>\n> ken lay\n> december 4 th\n> 3 : 30 - 4 : 30 p . m .\n>\n> also , i will attempt to schedule the meeting with andy fastow for december\n> 4 th for convenience - this will also allow us to possibly schedule\n> additional meetings for the 5 th ( as needed ) . i will let you know as soon\n> as i ' m successful .\n>\n> regards ,\n>\n> cindy derecskey\n> university affairs\n> enron corp .\n>\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.571+0000", "entityId": 8921, "properties": {"text": "Subject: re : dinner with your training colleague 11 / 15 ?\nehud ,\nnovember 15 is a bad day for me . i shall be in san antonio for our\nannual management conference .\npractically everybody who counts in enron will be there .\nstill no response from louise . i shall catch her tomorrow\nin person .\nvince\n\" ehud i . ronn \" on 11 / 07 / 2000 09 : 04 : 36 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : dinner with your training colleague 11 / 15 ?\nvince ,\ngood morning .\nfurther to our conversation thereon during your austin visit 10 / 11 , i am\nwriting at this time to inquire whether we might schedule a circa 7 p . m .\ndinner next wed . 11 / 15 , to include the participation of your enron training\narm colleague . we could then discuss ut partcipation in enron training\nactivities , as well as the forthcoming spring 2001 conference .\nbest ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.580+0000", "entityId": 8922, "properties": {"text": "Subject: re : background information\ntom ,\nelectronic version is ok .\nvince\n\" piazze , thomas \" on 11 / 07 / 2000 10 : 25 : 45 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : background information\nvince : i will be happy to do so . do you wish to have it in hard copy or\nelectronically ? if in hard copy , how many copies ?\ntom\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nsent : monday , november 06 , 2000 6 : 00 pm\nto : piazzet @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsubject : background information\ntom ,\ncan you send me additional copies of the information about the webi\nprogram ? i want to distribute it internally .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.587+0000", "entityId": 8923, "properties": {"text": "Subject: fyi\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.591+0000", "entityId": 8924, "properties": {"text": "Subject: christmas list\nhello vince and mike\ni want to keep you informed .\nthis year all baskets will be done in a timely manner .\non last year we were going through a major move therefore\nmany people played key roles in keeping us together .\nthis year however , is a little different , as it is always nice\nto give unfortunately we can not give to everyone .\ni am sending a lists of who we have so far .\nthere are a few names on the list that i feel we should do something else\nfor this year .\nunder shirley ' s list of names .\n( not so expensive )\nthey are : move team who ?\nmail room who ?\nfacilities help desk who ?\nthere are other tokens of appreciation that we can get for them .\nplease note that you two are the only ones that have seen this e - mail so far\ni will need your approval for all baskets , however your input on the matter\nwill be\ngreatly appreciated . the list is not completed i am still waiting for\nadditions .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.596+0000", "entityId": 8925, "properties": {"text": "Subject: pro opticus\ngood morning all :\nbelow is an email from kevin sweeney inquiring about a software demo that\nhe thought might have been in our group . if anyone had this demo , please\nlet vince know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 06 / 2000\n05 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin sweeney\n10 / 23 / 2000 06 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc : kara maloney / na / enron @ enron , mario de la ossa / na / enron @ enron , matt a\nbrown / hou / ect @ ect\nsubject : pro opticus\nvince ,\ni understand that you or someone in your group had a demo from the above\ngroup last friday . i was wondering if this was part of a push to bring more\noptions ' analytics to the traders ' desks , and if so , if you could explain\nwhat that effort looks like ? one of the global markets traders , mario de la\nossa also had a look at the software as he has used it in the past .\nthanks ,\nkevin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.601+0000", "entityId": 8926, "properties": {"text": "Subject: organizational changes\nwe are making a number of significant organizational changes . these changes\nare intended to accomplish four key objectives :\nfirst , we need to realign all our wholesale businesses around the successful\nbusiness model developed over the last decade in north america and europe .\nthis model relies on extensive physical and transactional networks built\naround a relatively small strategic asset position .\nsecond , we need to significantly streamline corporate reporting\nrelationships . particularly with joe sutton \u0001 , s departure , the ability to\ndirectly manage the day - to - day activities of 15 independent business units\nhas become increasingly difficult .\nthird , we need to accomplish these changes without , in any way , compromising\nthe ongoing profitability of all our businesses and without delaying or\nhindering our effort to monetize a significant portion of our lower - yielding\nasset positions .\nand fourth , as always , we need to take advantage of the reorganization to\nredeploy our talent into our highest value opportunities .\nenron wholesale services\ntoday , we are forming enron wholesale services ( ews ) which will consolidate\nour global wholesale businesses . the closer alignment of our wholesale\nbusinesses will accomplish the following : ( 1 ) enhanced communication and\ncoordination across business units , ( 2 ) more rapid deployment of people to\nhigher valued opportunities , ( 3 ) more effective prioritization of\nopportunities across the wholesale business , and ( 4 ) more rapid extension of\nenron \u0001 , s wholesale business model and capabilities into new industries and\nmarkets .\nenron wholesale services will include our current north american , european\n( including japan and australia ) , global markets , and industrial markets\noperations , and will be expanded to include enron \u0001 , s net works business unit\nas well as a new unit \u0001 ) enron global assets . in addition , enron \u0001 , s merchant\nbusinesses outside of north america and europe will be integrated into this\nnew structure as described below .\nmark frevert , currently chairman of each of our wholesale units , will assume\nthe role of chairman and ceo of enron wholesale services . greg whalley ,\ncurrently chairman and ceo of enron net works , will join mark in the office\nof the chairman as president and chief operating officer .\nproviding further impetus for these organizational changes , several of our\ninternational business unit leaders have elected to move into new leadership\npositions :\nrebecca mcdonald , currently ceo of enron apachi , will join ews as president\nand ceo of enron global assets . enron global assets will have responsibility\nfor managing all of enron \u0001 , s existing energy asset portfolio outside of north\namerica and europe . joining rebecca in the office of the chairman as coo\nwill be jim hughes , currently coo of enron apachi . rebecca and jim will\nreport to the ews office of the chairman .\nsanjay bhatnagar , currently ceo of enron india , has joined ebs as ceo for the\nmiddle east and asia region . sanjay will be responsible for building our\nbroadband business in this region and the current ebs team in this region\nwill report to sanjay . in this role , sanjay will report to the ebs office of\nthe chairman . in addition , sanjay will continue to remain responsible for\nenron \u0001 , s wholesale energy business in india and will transition this business\ninto enron global assets in the near future .\ndiomedes christodoulou , currently co - ceo of enron south america , has joined\nebs as chief commercial officer . diomedes will be located in london and will\nfocus his origination activities on global opportunities , with near term\nattention to the wholesale and enterprise sectors . diomedes will report to\nthe ebs office of the chairman .\njim bannantine , currently co - ceo of enron south america , will be joining ees\nto lead ees \u0001 , commercial efforts outside north america and europe . in order\nto ensure a smooth transition for our south american businesses and to\nfacilitate our asset sales activities , jim will remain in south america for\nat least the next several months and continue to serve as ceo of enron south\namerica . throughout the transition , jim will report to cliff baxter and to\nthe office of the chairman of enron wholesale services . following the\ntransition , jim will join ees .\nin addition to these changes in our international asset operations\nactivities , we are making the following changes in our merchant wholesale\nbusinesses and the commercial support functions :\nenron net works\nlouise kitchen will assume greg \u0001 , s previous responsibilities as president and\nceo of enron net works , reporting into mark and greg .\nenron americas\nconcurrent with the transfer to enron global assets of responsibility for\noperating enron \u0001 , s south and central america asset base , all trading ,\nmarketing , and new asset development activities in these regions will report\ninto a new entity , enron americas . enron americas will have responsibility\nfor all wholesale merchant businesses across north , central and south\namerica . dave delainey , president and ceo , and john lavorato , chief\noperating officer will comprise the office of the chairman for enron\namericas .\nenron europe\nthe enron europe organization , which includes enron \u0001 , s businesses in australia\nand japan , and enron metals , remains unchanged under the leadership of john\nsherriff , president and ceo , and michael brown , chief operating officer .\nenron global markets\nenron global markets , under the leadership of mike mcconnell , president and\nceo , and jeff shankman , chief operating officer , will continue to have\nresponsibility for enron \u0001 , s middle east and lng operations . with the\nexception of ecoelectrica in puerto rico , all operating power plants and\nassociated personnel in the caribbean and central america will transfer to\nenron global assets . enron global markets will also continue to manage the\ncommodity businesses in crude and products , coal , weather , insurance ,\nequities , interest rates , foreign exchange , and agricultural products .\nenron industrial markets\nenron industrial markets \u0001 , organization , under the leadership of jeff mcmahon ,\npresident & ceo , and ray bowen , chief operating officer , remains unchanged .\ncommercial support for ews\nthe commercial support functions for ews will remain with , and be managed by ,\nthe individual business units . we are creating no incremental overhead in\nthe creation of ews , and in fact hope to reduce our operating costs by more\nefficient utilization and sharing of resources across ews .\nto this end we have asked several people to take on an expanded role across\news in addition to their ongoing roles within their business units . these\nnewly defined roles are as follows :\nmid and back office operations \u0001 ) sally beck will lead mid and back office\noperations across ews . these services will become part of enron net works ,\nwith sally reporting to louise kitchen and rick causey , executive vice\npresident and chief accounting officer . this alignment creates a coordinated\nservices organization with it and e - commerce platforms to support the\nwholesale businesses and to maximize opportunities to commercialize these\nservices . mid and back office services for all commercial activities will\ncontinue to be organized with dedicated operations controllers responsible\nfor specific commodities and / or geographic locations .\nlegal \u0001 ) mark haedicke will serve in the role of general counsel for ews .\nregulatory and government affairs \u0001 ) this function will remain organized on a\nregional basis . rick shapiro will support all ews businesses operating in\nthe americas , and mark schroeder , who is based in london , will support all\neuropean and eastern hemisphere operations . rick and mark will also continue\nto support all other enron businesses operating in their respective regions\nand will continue to report to steve kean , executive vice president and chief\nof staff .\npublic relations \u0001 ) this function is also organized primarily on a regional\nbasis . eric thode will have responsibility for north american activity ,\nenron net works , and enron industrial markets . jackie gentle will continue\nin her role for enron europe ( including japan and australia ) and john ambler\nwill have responsibility for activity outside north america and europe as\nwell as providing support for enron global markets and enron global assets .\nthese individuals will also continue to have a split reporting relationship\nto mark palmer , vice president of communications .\nbusiness analysis and reporting \u0001 ) wes colwell will expand his role to cover\news reporting in addition to his current role in north america .\nattached for your review is an organization chart for enron wholesale\nservices which summarizes the changes described here . as this organization\ncontinues to evolve we will keep you informed of any additional changes .\nenron global exploration and production\nand enron wind\nas part of our company - wide initiative to examine our assets and investments\naround the world , we are considering a variety of options with respect to\negep and ewc . as a consequence , we are putting these businesses under cliff\nbaxter \u0001 , s direction . jeff sherrick , ceo of egep , and jim noles , ceo of enron\nwind , will report to cliff .\ncorporate staff\nwe are consolidating the corporate staff functions : human resources ,\ngovernment affairs , public relations / communications and administration . in\nthat regard , cindy olson , executive vice president of human resources and\ncommunity relations , will report to steve kean , executive vice president and\nchief of staff .\ncommittee structure\nin light of the increased leadership opportunities created by enron \u0001 , s\ngrowth , the executive committee will be expanded to include more of our\nbusiness unit leaders . the primary role of this committee will continue to\nbe the communication of relevant information across enron \u0001 , s businesses and\nthe coordination of activities across those businesses . we will also be\ndrawing on this group to lead company - wide initiatives such as the\nperformance review process and evaluation and creation of new businesses .\nthe executive committee membership is shown on the attached list .\nwe are also forming a new committee \u0001 ) the enron corporate policy committee .\nthis group will be responsible for overall corporate policy , personnel\nmanagement policy and corporate strategy . the enron corporate policy\ncommittee membership is also shown on the attached list .\nwe are confident that these changes will align our talent and our capital to\nour highest return opportunities . please join us in congratulating and\nsupporting all of these individuals in their new roles .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.606+0000", "entityId": 8927, "properties": {"text": "Subject: super saturday participation and off - cycle interview request\nthank you for volunteering your time for this weekend ' s super saturday . we\nappreciate your commitment to enron ' s recruiting success . at this time we do\nhave an adequate number of interviewers and will not need you to sacrifice\nyour saturday . however , as last minute changes occur in the interview\nschedule we may have to contact you for back up .\nalthough we are in good shape so far for saturday , our off - cycle recruiting\ndepartment is looking for interview volunteers for the following dates :\nthursday , november 9 th from 9 : 00 a . m - 12 : 00 p . m\nthursday , november 16 th from 9 : 00 a . m . - 12 : 00 p . m .\nthursday , december 7 th from 9 : 00 a . m . - 1 : 00 p . m .\nover 50 candidates will be interviewing over these 3 days . the candidates\nwill be a combination of associates and analysts representing schools such as\nprinceton , harvard , university of north carolina , notre dame , university of\nillinois , emory and many others . each candidate will have 4 interviews .\npending the outcome of their interviews we will invite them to stay and\nattend super saturday that weekend . if for some reason we decide not to\nfurther pursue the candidate , we will fly them home that friday morning .\nwe are asking enron employees manager level or higher to volunteer at least\none hour to interview candidates ( you will see two candidates in that time ) .\nif you can volunteer for more than an hour or for more than just one of the\nstated dates , that would be great ! your help is needed ! please contact\ncathy lira , at cathy . lira @ enron . com or x 54049 as soon as possible , if you can\nvolunteer any time for interviewing .\nthanks again for your participation in the associate & analyst programs .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.610+0000", "entityId": 8928, "properties": {"text": "Subject: 3 - d seismic data and oil trading\na brief summary of the research evaluation of siesmic data financial impact\non oil trading is attached for transmittal to the client ( rich reichart ) .\nour conclusion is negative .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.614+0000", "entityId": 8929, "properties": {"text": "Subject: alliance ferc alert - regional market reports\nattached for your information are :\n1 . the ferc orders regarding the meeting to be held thursday , november 9 .\n2 . annoucement of a hearing in san diego on november 14 .\n3 . ferc report on bulk power markets in the southeast region\n4 . ferc report on bulk power markets in the midwest region\n5 . ferc report on bulk power markets in northeast region\nthese files will also be made available on the alliance of energy suppliers\nweb site - http : / / www . eei . org / alliance\nshould you have any questions concerning these reports , contact jack cashin\nat 202 - 508 - 5499 , or jcashin @ eei . org\nnancy tarr\nmanager , business development\nntarr @ eei . org\n- ferc 11 - 14 hearing . pdf\n- nov 9 panels . pdf\n- ferc . southeast . pdf\n- fercmidwest . pdf\n- fercnortheast . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.619+0000", "entityId": 8930, "properties": {"text": "Subject: re : ashley baxter - review\nneil ,\ni shall do the review with pleasure .\nvince\nneil davies @ enron\n11 / 07 / 2000 01 : 37 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : ashley baxter - review\nvince\nsorry i missed you off the list\nneil\n- - - - - - - - - - - - - - - - - - - - - - forwarded by neil davies / corp / enron on 11 / 07 / 2000\n01 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nneil davies\n11 / 07 / 2000 01 : 36 pm\nto : lara marie berry / corp / enron @ enron , marty chrisman / corp / enron @ enron ,\nshelly jones / hou / ect @ ect , simone lewis / na / enron @ enron , beth\nperlman / hou / ect @ ect\ncc :\nsubject : ashley baxter - review\nyou have all been selected from reviewers for ashley . our hr pre ranking will\ntake place on 14 november therefore i ' d be grateful if you could complete her\nreview by the close of business on 13 november\nthanks for your help with this .\nneil", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.623+0000", "entityId": 8931, "properties": {"text": "Subject: dram trading authority\nhere is the latest trading request :\nspecifically it requires the following to get it over the line :\nvince , your concurrence with a simplistic var calculation the start - up\nperiod\neverybody else , your signatures , or agreement to sign via email\nin addition , here is the commercial presentation which wil be attached to the\nrequest on its way to eb 5007\nmany thanks\ndp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.629+0000", "entityId": 8932, "properties": {"text": "Subject: re : invitation to present at risk ' s advanced stress testing course\njean - pierre ,\nsorry . i have previous commitments on these days .\nvince\n\" jean - pierre doggett \" on 11 / 07 / 2000 10 : 14 : 05 am\nplease respond to \" jean - pierre doggett \"\nto : \" risk conferences \"\ncc :\nsubject : invitation to present at risk ' s advanced stress testing course\ni would like to invite you to present a section on risk ' s course entitled ,\n\" practical application of advanced stress testing \" which will be held in\nlondon ( 5 & 6 february 2001 ) and new york ( 12 & 13 february 2001 ) .\n?\nyou have been recommended to me in the course of my research as an authority\nin this field so i would be delighted for you to present any of the sections\nthat are still available on the attached programme :\nfor london : sections 1 , 2 . 1 , 2 . 2 , 3 , 4 and\nfor new york : sections 1 , 2 . 1 , 2 . 2 , 4 and 8\nmy market research indicates that advanced stress testing is a highly\ninteresting theme for a wide range of senior quantitative analysts and risk\nmanagers . i anticipate the course to be technical and practical in nature\nand assume a high level of knowledge from the delegates . it aims to extend\nthe scope of accepted practices into the new areas of liquidity and credit\nrisk stress testing and complement var methods by introducing new risk\nmeasurement techniques that can be applied in an integrated context .\n?\nplease contact me as soon as possible with an indication of which section is\nmost suitable for your current interests . if you feel that you will not be\nable to participate on this occasion , i would welcome any speaker\nsuggestions you may have . please call me if you have any questions .\n?\nmany thanks ,\n?\njean - pierre doggett\nrisk conference producer\nrisk waters group\nphone : + 44 ( 0 ) 20 7484 9813\nfax + 44 ( 0 ) 20 7484 9800\ne - mail : jpdoggett @ riskwaters . com\nwww . riskwaters . com\n- stress testing draft . doc\n- stress testing draft . txt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.634+0000", "entityId": 8933, "properties": {"text": "Subject: re : enron tiger kick off\ndonna ,\njeff shankman will join me for the kickoff .\nwe would like to invite the students and faculty members to dinner ,\nfollowing the presentation .\nany recommendations regarding the restaurant ?\nvince\nfap on 11 / 08 / 2000 12 : 15 : 10 pm\nto :\ncc : weigelt , \" ' kemallor @ wharton . upenn . edu ' \"\n, thomas ,\n\" ' vkamins @ enron . com ' \"\nsubject : enron tiger kick off\ntiger team hosts , faculty , students and teaching assistants :\nthis is to confirm the date , time and location for the upcoming tiger team\nkick - off .\nthe enron project date will be wed . , dec 6 at vh 210 from 3 : 00 - 5 : 00 pm .\nthe purpose of the kick - off meeting is for the teams , faculty , ta ' s and\nhosts to meet , learn more about the hosting organization and to further\ndiscuss the project .\nfor hosts who may need a campus map , please see\nhttp : / / www . upenn . edu / fm / map . html\nfrom the 30 th street train station , it is a quick taxi ride to spruce st and\n37 th st .\nthe inn at penn , a new hotel , is one block from campus , if lodging is\nnecessary . the phone number there is 215 . 222 . 0200 . please mention you will\nbe at penn for business .\nthe address is :\nthe inn at penn\nsansom common\n3600 sansom street\nphiladelphia , pa 19104\nhosts , please let me know the names and titles of those representatives who\nwill be attending the kick - off . also , let me know if you will need\ntechnology ( laptop for ppt or overhead for slides ) for presentation\npurposes .\nif you have any questions , please feel free to contact me .\nsincerely ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n( 215 ) 573 - 8394\n( 215 ) 573 - 5727 fax\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.638+0000", "entityId": 8934, "properties": {"text": "Subject: re : background information\nvince : i will send to you later today the information you requested in\nelectronic form ; in the meantime , please discuss with jeff shankman . he just\nalerted me that he has procured the required funding and that jeff skilling\nhas agreed to enron joining the webi at the corporate partner level . i am to\ncall jeff shankman later today to discuss .\nthis is great news for the school and enron ! ! would not have been possible\nwithout your persistance and assistance and i thank you for it .\nwe will discuss more later .\ntom\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nsent : tuesday , november 07 , 2000 6 : 23 pm\nto : piazzet @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : background information\ntom ,\nelectronic version is ok .\nvince\n\" piazze , thomas \" on 11 / 07 / 2000 10 : 25 : 45 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : background information\nvince : i will be happy to do so . do you wish to have it in hard copy or\nelectronically ? if in hard copy , how many copies ?\ntom\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nsent : monday , november 06 , 2000 6 : 00 pm\nto : piazzet @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsubject : background information\ntom ,\ncan you send me additional copies of the information about the webi\nprogram ? i want to distribute it internally .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.643+0000", "entityId": 8935, "properties": {"text": "Subject: lunch presentation\nlondon is very pleased with the speech . thanks it was a great idea to\nprepare the presentation . both mike hutchinson and mike farmer were very\nplease .\nthanks ,\nmaureen\n- - - - - - - - - - - - - - - - - - - - - - forwarded by maureen raymond / hou / ect on 11 / 09 / 2000\n06 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmaria abello\n11 / 09 / 2000 03 : 20 am\nto : maureen raymond / hou / ect @ ect\ncc : kirsten ross / lon / ect @ ect\nsubject : lunch presentation\nhi maureen ,\nthanks very much for presenting yesterday . your presentation created much\ninterest and as always we look forward to your return to london office for\nanother talk . the viewing statistics on iptv were excellent and are as\nfollows :\ncurrent : 85\ncumulative : 110\ni have spoken to the audio visual team regarding the possibility of showing\nyour presenting on iptv in houston . it will take a couple of days to encode\nthe videotape , but as soon as this done , i will send a copy to you in\nhouston . they are also looking send the file to the relevant person in\nhouston so they can put in on iptv .\nif you have any questions at all , please do not hesitate to call me .\nkind regards and thanks again\nmaria abello\neuropean training and development\nenron europe ltd\nemail : maria . abello @ enron . com\n+ 44 ( 0 ) 207 783 4787", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.647+0000", "entityId": 8936, "properties": {"text": "Subject: re : christmas list\nwill do , vince\nthanks\nvince j kaminski\n11 / 08 / 2000 10 : 42 am\nto : kevin g moore / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : christmas list\nkevin ,\nthe donuts are a great idea . i think we should add jeff and john as well\n( baskets ) .\nvince\nkevin g moore\n11 / 07 / 2000 11 : 14 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : re : christmas list\nwhile the thought is still on my mind , so you want think i ' m\nbeing selfish .\nwhat i am thinking we could do is send the move team , help desk and\nfacilities\ncomplimentary donuts from the research group during the holiday season .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 11 / 07 / 2000 12 : 07\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n11 / 07 / 2000 11 : 02 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ e\ncc :\nsubject : re : christmas list\ni sent the last e - mail before asking this question .\nvince ,\nwhat about dave delainey , john lavorato and jeff shankman .\nplease inform . . . . . . . . . . . . . . . .\nkevin g moore\n11 / 07 / 2000 10 : 57 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc :\nsubject : christmas list\nhello vince and mike\ni want to keep you informed .\nthis year all baskets will be done in a timely manner .\non last year we were going through a major move therefore\nmany people played key roles in keeping us together .\nthis year however , is a little different , as it is always nice\nto give unfortunately we can not give to everyone .\ni am sending a lists of who we have so far .\nthere are a few names on the list that i feel we should do something else\nfor this year .\nunder shirley ' s list of names .\n( not so expensive )\nthey are : move team who ?\nmail room who ?\nfacilities help desk who ?\nthere are other tokens of appreciation that we can get for them .\nplease note that you two are the only ones that have seen this e - mail so far\ni will need your approval for all baskets , however your input on the matter\nwill be\ngreatly appreciated . the list is not completed i am still waiting for\nadditions .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.652+0000", "entityId": 8937, "properties": {"text": "Subject: 2001 group expenses\nguys , attached you will find a final cut on the ena 2001 expense budget .\nplease review and make any adjustments to your existing plan that are\nappropriate to hit the net ena target . in order to stay flat year on year , i\nsplit the remaining positive variance equally across the groups . as we had\ndiscussed earlier , these costs will not be allocated to the business units\nand will be tracked on the ena income statement below the line and the\naccountability managed by each of you . all outside variable costs ,\nspecifically related to specific deals , will be charged to the business units\neg ) outside legal and tax , outside technical expertise , facility costs ,\noutside research support , incremental back and mid office support for\nspecific asset management deals , specific entertainment , etc . i look at this\ncost structure as the minimum capacity charge we need to operate our business\nand evaluate / manage our risks .\nwes , can you please finalize the one page plan ( expenses and headcount ) for\neach group with these changes .\nregards\ndelainey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.656+0000", "entityId": 8938, "properties": {"text": "Subject: alliance info alert - ferc reporting\nattached is a summary of recent ferc activities ( pdf file ) and the weekly\nalliance express . the following is a summary of the most recent ferc meeting ,\nfollowed by a listing of the most recent ferc filings .\nin a brief meeting yesterday , ferc approved a final rule adopting section 203\nmerger filing requirements , generally as proposed , and extended the existing\nnyiso bid cap in its non - spinning reserves market and the related mandatory\nbidding requirement until such time that the new york market can be\ndetermined to be \" workably competitive . \" at the same time , ferc ordered a\ntechnical conference to explore changes to the nyiso reserves market , and\nurged market participants to reach a consensus on a preferred solution , next\nsteps , and deadlines for resolution / implementation . additional details are\nprovided below .\nferc updates , streamlines merger filing process\nferc unanimously approved its proposed order revising the reporting\nrequirements for mergers . however , comm . hebert did so with reservations , as\ndiscussed below . commission staff stated that the order closely follows the\nnotice of proposed rulemaking previously issued , but adds more detail and\nmore certainty to the industry . staff stated that the order is improved over\nthe proposed rule because it includes exemptions from reporting for certain\nentities and it more precisely defines geographical areas and products .\naccording to ferc , the draft order :\n- revises the commission ' s filing requirements to reflect existing merger\npolicy based on ferc ' s 1996 merger policy guidelines ;\n- provides more detail for the industry in developing competitive market\nanalyses . the rule continues the existing screening process for mergers with\npotential horizontal competitive concerns . in addition , the rule establishes\ninformational requirements for vertical competitive analyses .\n- streamlines filing requirements for transactions that do not raise\ncompetitive concerns ; and\n- reduces the industry ' s regulatory burden by eliminating outdated filing\nrequirements .\nthe rule will take effect 60 days after its publication in the federal\nregister .\ncommissioner reaction :\ncomm . hebert expressed reservations that , although he was voting for the\nrule , ferc should not be duplicating the department of justice ( doj ) and the\nfederal trade commission ( ftc ) market concentration analyses and that ferc\nshould follow the lead of anti - trust enforcement officials , who could also\nanalyze mergers faster and more confidentially . he also stated that ferc\nshould review the filings after the doj or the ftc review them , not before ,\nand that there should be a definite time frame for review . hebert did\nmention that he was pleased that rtos and the disposition of transmission\nassets would be exempt , that ancillary services would be considered as a\nseparate product and that the final rule opens the door for alternative\nmarket analysis .\ncomm . breathitt supported the final rule , stating that it should expedite the\napproval process and that the regulatory burden should be eased due to the\nfact that older , irrelevant requirements have been dropped . she indicated\nthat the final rule balanced the need for speedy decisions while protecting\nthe public interest by stating that the process will be \" efficient yet\nsufficient \" . the commissioner said that she was pleased the final rule\naddressed technical issues such as computer modeling as well as retail\ncompetition and one of her main concerns , confidentiality .\ncomm . massey fully supported the final rule , emphasizing that it would\nimprove response time , lessen the need to ask for more data and allow the\nindustry to better predict commission actions . like commissioner breathitt ,\nmassey was pleased that the order will allow market modeling analysis that\nwill better enable ferc to evaluate market concentration and allow applicants\nto point to other factors when concentration appears too high . massey also\nstated that the new rule includes the ability to address many of ferc ' s\nconcerns , such as future mergers when they occur in succession , retail\ncompetition , mitigation by the enlargement of markets through rtos and\nanalysis of ancillary services . in sum , he averred that the order will\nprovide ferc with the tools it needs for accurate analysis , while taking into\nconsideration the rapid changes in the industry .\nchairman hoecker also voiced his support and noted that he felt that this was\na very important rule . in response to comm . hebert , chairman hoecker said\nthat the doj and ftc actually wait for ferc ' s report before issuing their\nown , that the anti - trust enforcement agencies rely on ferc ' s expertise when\nreviewing mergers in the electric and gas industries . there is a major\npositive connection between industry consolidation and rtos and that both are\nreconfiguring the markets and effect how they work , he noted . because the\nrtos enlarge the size of the subject market , he indicated , rtos will help to\npreserve competition . therefore , more and larger rtos should allow for more\nmergers , he said . the chairman cautioned that this is not to imply that\njoining an rto is a requirement for a merger , but that it would certainly be\nviewed favorably .\nnyiso bid caps extended until ancillary service market shown to be workably\ncompetitive\nin a 3 - 1 decision , with comm . hebert dissenting , ferc extended the existing\nnyiso bid cap in its non - spinning reserves market and the related mandatory\nbidding requirement until such time as that market can be determined to be\n\" workably competitive . \" at the same time , ferc ordered a technical\nconference to explore changes to the nyiso reserves market , and urged market\nparticipants to reach a consensus on a preferred solution , next steps , and\ndeadlines for resolution / implementation .\nin so doing , ferc rejected certain aspects of nyiso ' s september 1 and 8 , 2000\ncompliance filing , submitted pursuant to its may 31 , 2000 order imposing a\ntemporary bid cap through october 31 . the iso ' s efforts to correct market\nflaws identified in the order and further strengthen market performance had\nnot yet satisfied the commission ' s directives , ferc concluded . ferc found\nthat while nyiso has achieved solid progress in certain areas , overall the\niso has not shown sufficient improvement to warrant raising and then\ngradually lifting the temporary bid cap in the iso ' s non - spinning reserve\nmarket by april 2001 , as the iso requested .\ncommissioner reaction :\ncomms . hoecker , massey and breathitt all endorsed the order as an \" imperfect\nsolution , \" yet a pragmatic approach toward resolving the flaws plaguing the\niso ' s market . comm . hebert faulted the commission for squandering an\nopportunity to incentivize additional supply by lifting the price controls .\nhoecker and breathitt joined hebert in expressing disappointment in the lack\nof the iso ' s progress , but contended that significant outstanding issues must\nbe resolved before the bid cap can be lifted .\nin other action , ferc accepted nyiso ' s and nepool ' s proposed emergency energy\ntransaction agreement , allowing nyiso and iso - ne to provide emergency service\nto each other ( ero 0 - 3638 - 000 ) ;\nstricken items included cae - 16 ( nepool ' s 64 th agreement amendment proposing\nthe elimination of in service and instituting new rules governing certain\nimport transactions ( ero 0 - 3577 - 000 ) ) .\n= = recent ferc filings = =\n( 1 ) rto developments\n* iso ne submitted its changes to market rule 17 , market monitoring ,\nreporting and market power mitigation , in compliance with the commission ' s\njuly 26 , 2000 order . erol - 368 - 000 . filed november 1 , 2000 .\n* iso ne submitted its special interim market rule in compliance with the\ncommission ' s july 26 , 2000 order . ero 0 - 369 - 000 . filed november 1 , 2000 .\n* illinois industrial energy consumers filed to intervene regarding dynegy ' s\nfiling to request approval for the withdrawal of the illinois power co . from\nthe miso . erol - 123 - 000 . filed november 6 , 2000 .\n* el segundo power filed a motion \" requesting order on request for rehearing\nby date certain \" in complaint that challenges the ca iso ' s ability to set the\nrates for the energy that it can compel generators to produce for reliability\nunder its standard form contract . ero 0 - 1830 - 001 . filed november 3 , 2000 .\n* ca iso filed an unbundled grid management charge in order to recover its\nadministrative and operating costs . erol - 313 - 000 . comments due by november\n22 , 2000 .\n* nepool submitted supplemental information related to its filing of the\nsixty - fourth agreement amending the nepool agreement , which proposed the\nelimination of in service . ero 0 - 3577 - 000 . comments due by november 14 , 2000 .\n( 2 ) oatt / transmission\n* duke energy filed an amendment to its catawba interconnection agreement\nwith north carolina electric membership coop . erol - 282 - 000 . comments due by\nnovember 21 , 2000 .\n* duke energy filed an amendment to its catawba interconnection agreement\nwith the saluda river electric coop . erol - 281 - 000 . comments due by november\n21 , 2000 .\n* duke energy filed an amendment to its catawba interconnection agreement\nwith north carolina municipal power agency no . 1 . erol - 280 - 000 . comments\ndue by november 21 , 2000 .\n* alliant energy , on behalf of ies utilities , interstate power and wisconsin\npower and light , filed new rates under its oatt to reflect the transfer of\ncertain transmission facilities to american transmission co . erol - 312 - 000 .\ncomments due by november 22 , 2000 .\n* wolverine power supply coop . filed to change its rate schedule ferc no . 4 ,\nwholesale service to member distribution coops , to make the debt\nrestructuring charge applicable to all energy delivered to its member coops ,\nto add standby service rates and to remove references to entities that no\nlonger exist . erol - 285 - 000 . comments due by november 21 , 2000 .\n* wolverine power supply coop . filed an amendment to its oatt to accommodate\nmichigan retail choice and to add delivery scheduling and balancing service\nas a new service for generators interconnected to its transmission system .\nerol - 286 - 000 . comments due by november 21 , 2000 .\n* potomac electric power filed a revised attachment h - 9 to the pjm oatt\nreducing the other supporting facilities charge for lower voltage deliveries\nin the pepco zone of pjm to southern maryland electric coop . erol - 336 - 000 .\ncomments due by november 22 , 2000 .\n* wolf hills energy filed a motion to intervene out of time to support the\ninterconnection and operation agreement between itself and american electric\npower service corp . and to deny the protest of tva . ero 0 - 3688 - 000 . filed\nnovember 6 , 2000 .\n( 3 ) complaints\n* aep and southwest power pool each filed an answer to enron ' s motion for\nsummary disposition regarding enron ' s complaint , in response to aep ' s updated\nmarket analysis , that aep service corp . administered the aep oasis and tariff\nin a manner favoring aep ' s merchant function . er 96 - 2495 - 015 , et . al . filed\nnovember 6 , 2000 .\n* potomac electric power ( pepco ) and the southern parties filed a motion to\nanswer the protest of southern maryland electric coop and panda - brandywine\nregarding pepco ' s divestiture of generation assets pursuant to restructuring\ninitiatives in maryland and the district of columbia . eco 0 - 141 - 000 and\nero 0 - 3727 - 000 . filed november 6 , 2000 .\n* dunkirk power , huntley power and oswego power filed a motion to answer\nprotests filed by numerous entities regarding ferc ' s jurisdiction over\nstation power . elo 0 - 113 - 000 . filed november 6 , 2000 .\n* allegheny energy supply and ppl montour filed an answer to protests\nregarding their purchase of certain jurisdictional facilities . ero 0 - 3727 - 000\nand eco 0 - 141 - 000 . filed november 6 , 2000 .\n( 4 ) mergers / corporate restructuring\n( 5 ) miscellaneous\n= = other news = =\n* s & p revises miso outlook to negative\n- allianceexpressl 10700 . doc\n- ffl 10300 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.661+0000", "entityId": 8939, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngandy , kristin h celeste c roberts nov 01 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nhewitt , kirstee l steven leppard nov 06 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nrosen , michael b christie a patrick nov 06 , 2000\nsun , li kevin kindall nov 09 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\nvillarreal , norma e sheila h walton oct 26 , 2000\nwalton , sheila h david oxley oct 27 , 2000\nwilliams , matthew steven leppard nov 08 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.667+0000", "entityId": 8940, "properties": {"text": "Subject: thursday instead friday\njohn sherriff ' s asst has moved the meeting . i hope this is still possible\nfor you .\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 09 / 11 / 2000\n08 : 05 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauren urquhart\n07 / 11 / 2000 09 : 16\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : thursday instead friday\nhi steve\nsteve , the research meeting has been moved to thursday at 3 . 00 pm .\ncan you please let vince know .\nthanks .\nlauren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.674+0000", "entityId": 8941, "properties": {"text": "Subject: re : dram trading authority\nvince\nthanks - i think this one is fairly hot at the moment - so as soon as you can\nget comfortable would be good !\nit might be worth spending some time together on it - let me know what you\nwould prefer\nrgds\ndp\nvince j kaminski @ ect\n11 / 08 / 2000 05 : 08 pm\nto : david port / market risk / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : dram trading authority\ndavid ,\nwhen do you need my signature . i missed the presentation last tuesday\n( i was sick ) and would like a day or two to review the product .\nvince\nfrom : david port @ enron\n11 / 08 / 2000 02 : 43 pm\nto : vince j kaminski / hou / ect @ ect , robbi rossi / enron communications @ enron\ncommunications , tanya rohauer / hou / ect @ ect , james ginty / enron\ncommunications @ enron communications , kristin albrecht / enron\ncommunications @ enron communications\ncc : ted murphy / hou / ect @ ect , barry pearce / enron communications @ enron\ncommunications , michael moulton / enron communications @ enron communications\nsubject : dram trading authority\nhere is the latest trading request :\nspecifically it requires the following to get it over the line :\nvince , your concurrence with a simplistic var calculation the start - up\nperiod\neverybody else , your signatures , or agreement to sign via email\nin addition , here is the commercial presentation which wil be attached to the\nrequest on its way to eb 5007\nmany thanks\ndp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.682+0000", "entityId": 8942, "properties": {"text": "Subject: technical writer position\njust a note to confirm that we will cease recruiting for the new technical\nwriter position that was being considered . i will notify the candidates who\nhave been interviewed , but please let me know if you would like us to do\nanything else .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.690+0000", "entityId": 8943, "properties": {"text": "Subject: resume : dipak agarwallah ph . d . econ .\nhere is a resume forwarded to our group . dipak has some industry\nexperience , but does not seem to have programming skills . any interest ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 11 / 09 / 2000\n10 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaulo issler\n11 / 07 / 2000 02 : 56 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : resume and cover letter\nstinson :\nper our conversation i am forwarding you dipak ' s resume .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by paulo issler / hou / ect on 11 / 07 / 2000 02 : 48\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nguido caranti @ enron _ development\n11 / 02 / 2000 01 : 44 pm\nto : paulo issler @ ect\ncc :\nsubject : resume and cover letter\npoulo , this is the info of the guy i talked to you about . please let me know\nwhat you think .\nthanks a lot\nguido\n- - - - - - - - - - - - - - - - - - - - - - forwarded by guido caranti / enron _ development on\n11 / 02 / 2000 01 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dipak agarwalla \" on 10 / 13 / 2000 11 : 36 : 22 am\nto : guido . caranti @ enron . com\ncc : a _ dipak @ hotmail . com\nsubject : resume and cover letter\nhi mr . caranti ,\nplease find the attached cover letter and resume . please let me know if you\nneed any further information and i look forward to talking to you on\nsaturday at 8 : 30 pm .\nthank you very much\ndipak\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- resume - dipak agarwalla . doc\n- cover letter - dipak agarwalla . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.697+0000", "entityId": 8944, "properties": {"text": "Subject: webi proposal\nvince : per your request , i am forwarding the electronic version of the webi\nproposal . as i mentioned to you yesterday , jeff shankman has procured funding\nfor enron to join at the corporate partner level , so you may wish to discuss\nthe matter with him prior to circulating this document . this funding is in\naddition to that which you and christie have already committed to other\nresearch and sponsorship activities at the school .\nplease let me know if i can be of any further help . i look forward to seeing\nyou again soon .\nby the way , i cast my vote on time and with no confusion ; let ' s hope the\noutcome is as we hoped it would be .\ntom >\n- webi proposal complete 5 - 26 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.701+0000", "entityId": 8945, "properties": {"text": "Subject: precious metals var\njason ,\nafter our brief discussion last night i think i should discuss a few of the\nissues i have with respect to calculating a var on the deal that you are\nproposing . the var model , as i illustrated , is set up to accept a term\nstructure of delta positions , prices and vols and it may be difficult to\ntranslate the ' silver mine ' position into these inputs .\ni do not think that we can simply take the net silver content of the mine and\nthen make some assumptions about vol and price . the var model\nalso assumes a certain amount of liquidity in the market and a 1 day holding\nperiod .\nto do this properly i would need to understand fully how the deal is priced\nas these sensitivities are ultimately what will effect the change in mtm\nin the future and that is essentially what var is supposed to predict .\nif you need me to work on this then you need to contact steve who will help\nto prioritise my time . i will also need to consult with vince kaminski and\ntanya tamarachenko in houston for advice .\nrac will also assist in the process .\nplease contact me if you have any further questions ,\nkirstee\nx 34529", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.707+0000", "entityId": 8946, "properties": {"text": "Subject: fw : aram g . sogomonian\nper my voice mail , attached is the resume for aram sogomonian . please\nschedule a telephone interview with john lavorato and aram sogomonian . if\nyou have any questions please let me know .\nnorma villarreal\nsr . human resource represenative\nx 31545\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 10 / 12 / 2000\n11 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" sogomonian , aram \" on 10 / 11 / 2000 12 : 03 : 16 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : fw : aram g . sogomonian\n- aram g 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.712+0000", "entityId": 8947, "properties": {"text": "Subject: re : forward oil prices\njens ,\ni think i have cc ' ed you on this . john nowlan approved and stinson gibner\nhas the curves available for you .\nvince\njens gobel @ enron\n11 / 10 / 2000 04 : 44 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : forward oil prices\nhi vince ,\nhave you already heard back from john nowlan ?\nthanks a lot for your help again . have a great weekend .\njens\njens gobel\n10 / 26 / 2000 12 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : forward oil prices\nvince ,\nas discussed on the phone , i am sending you the request that i have received\nfrom prof . buehler . prof . buehler is the\nhead of the faculty of finance at mannheim university in germany . currently ,\nhe is writing a study about the hedging\nstrategy that led to the metallgesellschaft debacle . for this study he would\nlike to get forward oil prices form us .\nthe forward oil prices should be for wti with cushing as the delivery point\nfor the time period july 1986 and december 1996\nwith remaining contract durations between one and ten years . it would be\nideal to get this data on a daily basis . weekly\nor monthly data is helpful as well , of course .\nsince mannheim university is among enron ' s tier one recruiting universities\nin germany , it would be great if we could help\nhim with some data . thanks a lot for your help .\njens\no . korn @ uni - mannheim . de on 10 / 10 / 2000 11 : 44 : 57 am\nto : jens . gobel @ enron . com\ncc :\nsubject : daten\nsehr geehrter herr goebel ,\nbezugnehmend auf ihr heutiges telefongespraech mit herrn prof .\nbuehler hat mich prof . buehler gebeten , ihnen genauer\ndarzustellen , welche daten idealerweise fuer unsere studie\nbenoetigt wuerden .\nzunaechst zum hintergrund . wir sind auf enron gestossen , weil\neduardo schwartz in einer seiner arbeiten die folgende datenquelle\nangibt :\n\" in addition to the publicly available futures data described above ,\nfor the purpose of this study enron capital and trade resources\nmade available some proprietary historical forward price curves\nfrom 1 / 15 / 93 to 5 / 16 / 96 . from these data ten forward prices were\nused in estimation , ranging in maturities from two months to nine\nyears \"\ndies laesst uns annehmen , dass enron bestimmte daten\nverfuegbar hat .\nnun zum idealen datensatz :\nforwardoelpreise ( am besten wti mit lieferung in cushing ) fuer\nrestlaufzeiten zwischen einem und zehn jahren fuer den zeitraum\njuli 1986 bis dezember 1996 . dabei waere eine hohe\ndatenfrequenz ideal ( taeglich , ansonsten woechentlich oder\nmonatlich ) . zusaetzlich waeren auch spotpreise fuer wti mit\nlieferung in cushing nuetzlich .\ndiese idealen datenanforderungen werden sich vermutlich nicht\nerfuellen lassen . jedoch waere uns auch schon geholfen , wenn ein\nkuerzerer zeitraum oder eine niedrigere datenfrequenz vorlaege .\nwir waernen ihnen sehr dankbar , wenn sie in erfahrung bringen\nkoennten , inwiefern solche daten von enron zu erhalten sind .\nherzlichen dank fuer ihre muehe und beste gruesse\nolaf korn\np . s . bei rueckfragen stehe ich ihnen jederzeit gern zur verfuegung\ndr . olaf korn\nuniversity of mannheim\nchair of finance\nd - 68131 mannheim\ngermany\ntel . : + + 49 / 621 / 181 - 1487\nfax . : + + 49 / 621 / 181 - 1519\ne - mail : o . korn @ uni - mannheim . de", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.716+0000", "entityId": 8948, "properties": {"text": "Subject: latest update on bp margin collar deal\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 11 / 10 / 2000 11 : 56 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee jackson 11 / 10 / 2000 10 : 40 am\nto : bob lee / na / enron @ enron , zimin lu / hou / ect @ ect\ncc : douglas s friedman / hou / ect @ ect\nsubject : margin collar\ni wanted to give you the status on the bp margin collar deal . we submitted a\nbid to bp yesterday where bp would pay enron just under $ 5 mm to assume the\ncontract . we have yet to have further discussions , so there ' s not much more\nto report than that . we greatly appreciate your help on this project . i\nfeel like we put together a very good bid , and measured the risks\nappropriately with limited time . i will keep you informed of how the\nnegotiations proceed .\nthanks again ,\nlee jackson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.721+0000", "entityId": 8949, "properties": {"text": "Subject: re : enron case studies\neric ,\ni have a number of case studies on enron but not the one on sutton bridge .\ni know that peter tufano was working on it but when i checked the hbs\nsite and tried to purchase it , i could not locate it .\nwhen i talked to peter a few months ago , he told me that the case study was\nready\nand he was going through enron ' s internal approvals .\ni cc mark palmer on it . maybe he knows about this specific case study .\ni wander if it was completed , given sutton bridge developments .\nvince\neric gadd\n11 / 10 / 2000 05 : 49 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : enron case studies\nvince -\nwhere might i find copies of the case studies enron has published ? i ' m\nparticularly interested in the sutton bridge publication for havard but would\nlike to know if there is a library of case studies .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.725+0000", "entityId": 8950, "properties": {"text": "Subject: cera conference call and web presentation : winter weather\nscenarios . . . - cera conference call\ncera conference call : sent fri , november 10 , 2000\ntitle : cera conference call and web presentation : winter weather scenarios . . .\nauthor : n . american gas team\ne - mail category : conference call\nproduct line : north american gas ,\nurl : http : / / www . cera . com / cfm / track / eprofile . cfm ? u = 5166 netscape navigator 3 . 02 or\nhigher ; or sun hot java ( tm )\n* close all desktop applications and disable your screen\nsaver\ntechnical assistance\nu . s . callers : if you are experiencing difficulties\nduring the call , you may signal for technical assistance\nby pressing * 0 ( star , zero ) on your telephone keypad\nafter you have connected to the audio portion of the\nconference .\ninternational callers : please re - dial and ask the\noperator for assistance before giving the confirmation\ncode .\na recording of this call ( audio only ) will be available\nuntil december 17 , 2000 . to access this recording ,\nplease call 1 - 888 - 203 - 1112 ( within the u . s . ) or ( 719 )\n457 - 0820 ( outside the u . s . ) . please use confirmation\nnumber 432374 to access the call .\nif you have any questions , please contact mary rice via\ne - mail at mrice @ cera . com , or via telephone at ( 617 ) 498 -\n9123 .\n* * end * *\nfollow url for html version of this message only .\naccount changes\nto edit your personal account information , including your e - mail\naddress , etc . go to : http : / / eprofile . cera . com / cfm / edit / account . cfm\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.730+0000", "entityId": 8951, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngandy , kristin h celeste c roberts nov 01 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nhewitt , kirstee l steven leppard nov 06 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\npham , bich anh t sarah brown nov 06 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nrosen , michael b christie a patrick nov 06 , 2000\nsun , li kevin kindall nov 09 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\ntawney , mark r jeffrey a shankman oct 26 , 2000\nwilliams , matthew steven leppard nov 08 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.734+0000", "entityId": 8952, "properties": {"text": "Subject: re : var for enroncredit . com\nbryan ,\nwe shall be glad to take a look at the system . to sign - off on the vendor\nprovided system we\nhave to look under the hood and review the algorithms . i hope the vendor will\nhave no objections to it .\nanother critical issue we have to solve on a short notice is to integrate the\nsystem you want to buy\nwith the rest of var / credit systems . we shall stand by to help in this\nendeavor .\nan alternative approach is to evaluate to what extent your positions can be\nrolled into the existing risk systems .\nvince\nbryan seyfried\n11 / 10 / 2000 03 : 20 am\nto : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect\ncc : ted murphy / hou / ect @ ect\nsubject : var for enroncredit . com\nvince / steve - - we are going to the board in december to ask for formal\nlimits . as you know one of the key limits at the board level is value at\nrisk . to that end , it is imperative that you are comfortable with our\napproach for calculating var . we have implemented a third party risk system\nwhich holds all of our positions and are in the process of putting the debt\npositions in . the system has a var engine which is being demo ' d by the\nvendor today . ben and kirstee are attending the demo and if they find the\ntechnology acceptable , i propose moving forward with implemantion of the\nmodule . pls . let me know if this sounds reasonable and how you would\nenvision implementing .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.740+0000", "entityId": 8953, "properties": {"text": "Subject: harvard business school pub order confirmation\norder confirmation notification\nthank you for ordering hbs materials . your order has been received and\nentered with the confirmation number 01928923 . the purchase order or\nreference number you provided is [ c ] kaminski , w . our projected ship date is\n11 / 13 / 00 , your order will be shipping via ups .\nper your request , your order will be shipped to the following address :\nwincenty kaminski\nenron corp\nmanaging director\nebl 962\n1400 smith\nhouston tx 77002\nwe appreciate your interest in harvard business school publishing . if we can\nbe\nof further assistance , please contact our customer service department at\n( 800 ) 988 - 0886 or ( 617 ) 783 - 7500 , by fax at ( 617 ) 783 - 7555 , or via email at\ncorpcustserv @ hbsp . harvard . edu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.745+0000", "entityId": 8954, "properties": {"text": "Subject: order confirmation\nthank you for your order . instructions regarding any electronic product\npurchases and a full order summary are listed below , beginning after the\nspecial announcement .\nspecial announcement\nintroducing hbr onpoint , an indispensible new resource from \" harvard\nbusiness review \" that makes it faster and easier to put important\nmanagement thinking to work .\nhbr onpoint gives you :\n* a quick overview of critical management concepts\n* different experts ' views on a given topic\n* the context critical for sharing and applying the knowledge you ' ve\nacquired\nto learn more and pick up a free article overview , visit our web site :\nbelow you will find your order information . if you have any questions\nconcerning this order , please e - mail us at orderreceipt @ hbsp . harvard . edu\n( or just reply to this message ) . for technical inquiries , email us at\ntechhelp @ hbsp . harvard . edu\nyour order reads as follows :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncustomer ' s web id : 431620\nsold - to no : 148820\nsold to information :\nfirst name : wincenty\nlast name : kaminski\ninstitution / company name : enron corp\njob title : managing director\nmail stop / dept . : ebl 962\naddress : 1400 smith\naddress :\ncity : houston\nstate : tx\nzip / postal code : 77002\ncountry : united states\nemail address : vkamins @ enron . com\nphone number : 713 853 3848\nfax number : 713 646 2503\nattn :\nname of person who placed order : wincenty kaminski\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbilling information :\nfirst name : wincenty\nlast name : kaminski\ninstitution / company name : enron corp\njob title : managing director\nmail stop / dept . : ebl 962\naddress : 1400 smith\naddress :\ncity : houston\nstate : tx\nzip / postal code : 77002\ncountry : united states\nemail address : vkamins @ enron . com\nphone number : 713 853 3848\nfax number : 713 646 2503\nattn :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshipping information :\nfirst name : wincenty\nlast name : kaminski\ninstitution / company name : enron corp\njob title : managing director\nmail stop / dept . : ebl 962\naddress : 1400 smith\naddress :\ncity : houston\nstate : tx\nzip / postal code : 77002\ncountry : united states\nemail address : vkamins @ enron . com\nphone number : 713 853 3848\nfax number : 713 646 2503\nattn :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\norder\nprod . # product title quantity price total\n297055 copper and zinc mark . . . 1 $ 6 . 50 $ 6 . 50\n293053 sally jameson : valui . . . 1 $ 6 . 50 $ 6 . 50\nsub - total : $ 13 . 00\nsurcharge : $ 0 . 00\nshipping and handling : $ 4 . 00\ngst : $ 0 . 00\ntax : $ 0 . 00\ngrand total : $ 17 . 00\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntotal due : $ 0 . 00 ( pre - paid by visa )\nshipping method : standard delivery u . s . , 48 states\n* please note that there is applicable sales tax in ca , ct , il , ma , md , and\ntn for the products you have ordered . if you are ordering from one of\nthese states , the amount shown on your invoice and / or credit card\nstatement will be slightly higher than the total listed above , to reflect\nthe applied sales tax . *\nmailing lists are a great way to keep up with what ' s going on at the\nharvard business publishing web site . right now , we offer 3 alerts :\nmanagement alert , strategy alert , or hr / training alert . each of these\ne - mail newsletters regularly combines a specially selected excerpt with\nannouncements of new and bestselling products from our extensive catalog .\nyou can also find out what ' s coming up in both harvard business review and\nharvard management update newsletter . to subscribe to one or more of\nthese free services , follow the link below . and thank you for ordering\nfrom harvard business school publishing , the power of ideas at work .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.750+0000", "entityId": 8955, "properties": {"text": "Subject: final version of the presentation\ngeorge ,\nhere is the presentation . i wasn ' t able to add a table showing the\ndistribution of bids by fuel type for april 2000 since the database is not\nupdated . also , in the map i didn ' t make those minor changes . because when i\ntry to erase those names , the map looks ugly . when i get back from california\nlet ' s get together and discuss the feedbacks from traders .\nsevil ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.756+0000", "entityId": 8956, "properties": {"text": "Subject: var for enroncredit . com\nrick and ted ,\nit looks more like foxes building chicken houses as opposed to foxes guarding\nchicken houses .\ni shall send a message to bryan saying that the research has to look under\nthe hood and examine the mechanics\nof the model in order to sign off on it . a dog and pony show is not\nsufficient . in any case , the decision to approve\nthe model should not be left to ben and kirstee .\nplease , let me know what your thinking is .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 10 / 2000\n01 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n11 / 10 / 2000 03 : 20 am\nto : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect\ncc : ted murphy / hou / ect @ ect\nsubject : var for enroncredit . com\nvince / steve - - we are going to the board in december to ask for formal\nlimits . as you know one of the key limits at the board level is value at\nrisk . to that end , it is imperative that you are comfortable with our\napproach for calculating var . we have implemented a third party risk system\nwhich holds all of our positions and are in the process of putting the debt\npositions in . the system has a var engine which is being demo ' d by the\nvendor today . ben and kirstee are attending the demo and if they find the\ntechnology acceptable , i propose moving forward with implemantion of the\nmodule . pls . let me know if this sounds reasonable and how you would\nenvision implementing .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.760+0000", "entityId": 8957, "properties": {"text": "Subject: re : looking for \" fat tails \" in time - series for ngi - socal\nnaveen ,\ni got ngi - socal prices for prompt , prompt + 1 , . . . , prompt + 59 contracts .\nfor each contract i calculated moving average based on 21 log - returns as\nwell as moving volatility . then i calculated normalized log - returns :\n[ return ( t ) - ave ( t ) ] / vol ( t )\nand compared the results to normal distribution .\ni could not find fat tails !\nvolatility changes a lot from day to day , so when people look at\nlog - returns ( not normalized ) it seems that there fat tails ( big spikes , large\nreturns more frequent than normal ) ,\nwhich comes from the fact that volatility is not constant ( at all ) .\nsee the spreadsheet is under o : \\ _ dropbox \\ tanya\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.765+0000", "entityId": 8958, "properties": {"text": "Subject: re : offer\nken ,\neither is really fine with me . i ' m glad to have you coming . i will be out\nof the office on nov . 21 and the 22 nd is likely to be a short day for most\npeople , so starting on nov . 27 would probably work the best for us .\n- - stinson\nkenneth parkhill on 11 / 10 / 2000 03 : 59 : 42 pm\nto : \" stinson gibner ( e - mail ) \"\ncc :\nsubject : offer\nstinson ,\ni have talked with folks here at fn , and i am happy to say that may be able\nto start at enron as soon as monday november 20 , the week of thanksgiving .\ni am in the process of wrapping up my existing projects , but it appears that\nthings are coming together well , and i may be able to leave a little earlier\nthan i had thought . would you prefer that i start the week after\nthanksgiving ?\nken\nkenneth l . parkhill , p . e . , ph . d .\nfreese & nichols , inc .\n4055 international plaza , suite 200\nfort worth , texas 76109 - 4895\n817 . 735 . 7391\n817 . 735 . 7491 ( fax )\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.769+0000", "entityId": 8959, "properties": {"text": "Subject: hiring at a vp level\njeff ,\ni want to bring aram sogomonian back to enron at a vp level .\naccording to new human resources procedures this decision requires\na support of three senior executives .\ni want to ask you to express your opinion on aram ( based on a phone interview\nor just on your past interactions with him ) . you can send a reply to norma\nvillarreal at h / r .\nthanks .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.774+0000", "entityId": 8960, "properties": {"text": "Subject: hiring aram at a vp level\nrick ,\ni want to bring aram sogomonian back to enron at s vp level .\naccording to new human resources procedures this decision requires\na support of three senior executives .\ni want to ask you to express your opinion on aram ( based on a phone interview\nor just on your past interactions with him ) . you can send a reply to norma\nvillarreal at h / r .\nthanks .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.779+0000", "entityId": 8961, "properties": {"text": "Subject: christmas baskets\nhere is the final list for christmas baskets for this year\nwith the exception of stinson gibner and vasant shanbhogue .\nany comments or questions please call x 34710 .\nthanks\nkevin moore\nwe still have plenty of time . . . . . .\ndeadline date : december 12 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.784+0000", "entityId": 8962, "properties": {"text": "Subject: re : charles shen\nmolly ,\nit would be tanya .\nvince\nenron north america corp .\nfrom : molly magee 11 / 09 / 2000 04 : 40 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : charles shen\nvince : we need some information to set up this position , and i don ' t think\nwe ever discussed to whom he would be reporting . is it you ?\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.791+0000", "entityId": 8963, "properties": {"text": "Subject: re :\nno problem vince , the thur mtg was cancelled .\nsteve\nvince j kaminski\n10 / 11 / 2000 14 : 48\nto : steven leppard / lon / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , tani nath / lon / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : re :\nsteve ,\ni assume it ' s 9 : 00 a . m . my time , monday .\nit works for me .\ni haven ' t responded in time to the\nyour message re thursday . i had a few back\nto back meetings in the morning and i read your message quite late\ninto the day .\nvince\nsteven leppard\n11 / 10 / 2000 04 : 25 am\nto : vince j kaminski / hou / ect @ ect , tani nath / lon / ect @ ect\ncc :\nsubject :\nvince , tani\nfyi .\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 10 / 11 / 2000\n10 : 27 - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncalendar entry\nresearch meeting w / - michael , john , tani , richard , joe , steve & vince kaminski\nbrief description :\ndate :\ntime :\n13 / 11 / 2000\n15 : 00 - 15 : 45\ndetailed description :\ninvitations\nphone / ext include\nchairperson : john sherriff / lon / ect 37359 yes\norganised by : lauren urquhart / lon / ect no\ninvitations sent to : tracie mccormack\nkirsten nelz\nsteven leppard\nthis meeting repeats starting on ( if the date occurs on a weekend the\nmeeting ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.799+0000", "entityId": 8964, "properties": {"text": "Subject: re : site license for power world\ni concur .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.805+0000", "entityId": 8965, "properties": {"text": "Subject: site license for power world\ngentlemen ,\ni recommend that we purchase this package and split the cost 3 ways between 3\npower trading desks .\ni think that we should go for option 3 ( ~ $ 15 , 000 ) .\nlance cunningham in my group looked at this software package and found it\nvery useful for modeling transmission problems .\nplease , feel free to ask him for technical details in support of this\nrecommendation .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 10 / 2000\n09 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlance cunningham @ enron on 11 / 09 / 2000 06 : 15 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : site license for power world\nvince ,\nwe have three options to increase our availability across enron for the power\nworld load flow software .\noption 1 , upgrade to a site license for the load flow software only . price\n$ 9 , 990 . 00\nthis would give all of enron the ability to perform load flows , but not\ndetermine marginal cost or available transfer capacity ( atc ) because only the\noptimal power flow ( opf ) version can perform that task .\noption 2 , site license for the load flow and purchase 1 opf package for\nwalter coffer ' s group . price $ 11 , 240 .\nthis would give all of enron the ability to perform load flows and one other\ngroup the ability to determine marginal cost and atc .\noption 3 , site license for load flows , opf and atc . price $ 14 , 990 . 00\nthis would give all of enron the ability to perform load flows , marginal\ncost , and atc .\nregards ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.810+0000", "entityId": 8966, "properties": {"text": "Subject: re : var for enroncredit . com\nvince ,\nthanks for effort . let me know what we need to do on this end\nted\nvince j kaminski\n11 / 10 / 2000 01 : 30 pm\nto : rick buy / hou / ect @ ect , ted murphy / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : var for enroncredit . com\nrick and ted ,\nit looks more like foxes building chicken houses as opposed to foxes guarding\nchicken houses .\ni shall send a message to bryan saying that the research has to look under\nthe hood and examine the mechanics\nof the model in order to sign off on it . a dog and pony show is not\nsufficient . in any case , the decision to approve\nthe model should not be left to ben and kirstee .\nplease , let me know what your thinking is .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 10 / 2000\n01 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbryan seyfried\n11 / 10 / 2000 03 : 20 am\nto : vince j kaminski / hou / ect @ ect , steven leppard / lon / ect @ ect\ncc : ted murphy / hou / ect @ ect\nsubject : var for enroncredit . com\nvince / steve - - we are going to the board in december to ask for formal\nlimits . as you know one of the key limits at the board level is value at\nrisk . to that end , it is imperative that you are comfortable with our\napproach for calculating var . we have implemented a third party risk system\nwhich holds all of our positions and are in the process of putting the debt\npositions in . the system has a var engine which is being demo ' d by the\nvendor today . ben and kirstee are attending the demo and if they find the\ntechnology acceptable , i propose moving forward with implemantion of the\nmodule . pls . let me know if this sounds reasonable and how you would\nenvision implementing .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.815+0000", "entityId": 8967, "properties": {"text": "Subject: lacima energy and weather derivatives courses by clewlow and\nstrickland\nplease find attached information ? for our next two courses and workshops : ?\nenergy derivatives : ? pricing and risk management and\nweather derivatives , which will be conducted in houston and in london in feb\n/ march 2001 . ? instructors will be dr les clewlow and dr chris strickland .\n?\nbecause the course requires intense interaction , the courses will be ? limited\nto a maximum of 15 people , so early registration is encouraged .\n?\nif you require further information , or would like to register for either or\nboth ? courses , please contact me via this email or our web site , ? www .\nlacimagroup . com\n- energy . pdf\n- weather . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.819+0000", "entityId": 8968, "properties": {"text": "Subject: vince ,\ni am writing about a student of mine who is on the job market\nthis year . when you stopped by my office , about 18 months ago\nyou asked if i had any students that might be appropriate for\nyour group . although i didn ' t at the time , now i do . this student has\nexcellent technical skills , including an m . s . in statistics\nand a ph . d . in economics by the end of the current academic\nyear . his dissertation research is on the investment behavior\nof independent power producers in the us . as a result of research\nassistance he has done for me , he knows the california market very well\nand is familiar with the other isos . i think he would be an excellent\nmatch for you . the only problem is that he will probably have many\nother options available . however , i definitely think he ' s worth a look .\nif you ' d like him to send you a cv , please let me know . thanks .\nfrank wolak\nprofessor frank a . wolak email :\nwolak @ zia . stanford . edu\ndepartment of economics phone : 650 - 723 - 3944\n( office )\nstanford university fax : 650 - 725 - 5702\nstanford , ca 94305 - 6072 phone : 650 - 856 - 0109 ( home )\nworld - wide web page : http : / / www . stanford . edu / ~ wolak cell phone : 650 - 814 - 0107", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.824+0000", "entityId": 8969, "properties": {"text": "Subject: re : looking for \" fat tails \" in time - series for ngi - socal\nvince ,\ni quite agree , we have to separate out price and position ,\nand that is what we have done with the historical simulations / evt ideas . we\nhave taken today ' s delta - gamma , hold that frozen , and gone back historically\nand looked at price changes and see what happens to portfolio changes .\ngarman and company have looked at gross historical portfolio changes , which i\nagree is not the best approach , due to the artificiality imposed by largest\nnet open positions ( nop ) , such as we have seen recently .\nregards\nnaveen\nvince j kaminski @ ect\n11 / 13 / 2000 10 : 31 am\nto : tanya tamarchenko / hou / ect @ ect\ncc : naveen andrews / corp / enron @ enron , vince j kaminski / hou / ect @ ect , vladimir\ngorny / hou / ect @ ect\nsubject : re : looking for \" fat tails \" in time - series for ngi - socal\ntanya , naveen ,\njust a thought . changes in the portfolio values may combine both the changes\nof prices and positions .\nthis happens if one tracks changes in the value of our historical gas\nportfolio . a big jump in\nthe volumetric position from day to day , combined with a moderate price\nmovement may produce an\nobservation that looks artificially big .\nif the volumetric position was frozen , it ' s just a scaling factor and there\nshould be\nno discrepancy between your numbers . of course , the correct approach\nis to separate the price process from the position changes .\nvince\ntanya tamarchenko\n11 / 13 / 2000 08 : 38 am\nto : naveen andrews / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , vladimir gorny / hou / ect @ ect\nsubject : re : looking for \" fat tails \" in time - series for ngi - socal\nnaveen ,\ni am trying to answer the question : what is the appropriate stochastic\nprocess to model the behavior\nof commodities ' prices in our var model . so what i do care about is the\nbehavior of log - returns .\nany help is appreciated .\ntanya .\nnaveen andrews @ enron\n11 / 10 / 2000 04 : 35 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , vladimir gorny / hou / ect @ ect\nsubject : re : looking for \" fat tails \" in time - series for ngi - socal\ntanya ,\nwe care about portfolio value changes , not log - returns of a\nsingle contract , which has extremes in the behavior and can be fit to a\nfat - tailed distribution . a 1 . 20 basis move , with 500 bcf position , is an\nextreme event , anyway you slice it . in the literature , as elsewhere , i agree\nfor a single contract log - returns , they don ' t divide by vols .\nregards\nnaveen\ntanya tamarchenko @ ect\n11 / 10 / 2000 04 : 17 pm\nto : naveen andrews / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , vladimir gorny / hou / ect @ ect\nsubject : re : looking for \" fat tails \" in time - series for ngi - socal\nnaveen ,\ni got ngi - socal prices for prompt , prompt + 1 , . . . , prompt + 59 contracts .\nfor each contract i calculated moving average based on 21 log - returns as\nwell as moving volatility . then i calculated normalized log - returns :\n[ return ( t ) - ave ( t ) ] / vol ( t )\nand compared the results to normal distribution .\ni could not find fat tails !\nvolatility changes a lot from day to day , so when people look at\nlog - returns ( not normalized ) it seems that there fat tails ( big spikes , large\nreturns more frequent than normal ) ,\nwhich comes from the fact that volatility is not constant ( at all ) .\nsee the spreadsheet is under o : \\ _ dropbox \\ tanya\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.828+0000", "entityId": 8970, "properties": {"text": "Subject: re : enron case studies\neric ,\ni have one on egs , one on dhabol and a recent one on\nentrepreneurship in enron . you can buy\nthe case studies from the hbs web - site .\nvince\neric gadd\n11 / 13 / 2000 05 : 36 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : enron case studies\nvince ,\nwhat case studies do you have on enron ?\nvince j kaminski\n10 / 11 / 2000 16 : 15\nto : eric gadd / lon / ect @ ect\ncc : mark palmer / corp / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : enron case studies\neric ,\ni have a number of case studies on enron but not the one on sutton bridge .\ni know that peter tufano was working on it but when i checked the hbs\nsite and tried to purchase it , i could not locate it .\nwhen i talked to peter a few months ago , he told me that the case study was\nready\nand he was going through enron ' s internal approvals .\ni cc mark palmer on it . maybe he knows about this specific case study .\ni wander if it was completed , given sutton bridge developments .\nvince\neric gadd\n11 / 10 / 2000 05 : 49 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : enron case studies\nvince -\nwhere might i find copies of the case studies enron has published ? i ' m\nparticularly interested in the sutton bridge publication for havard but would\nlike to know if there is a library of case studies .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.833+0000", "entityId": 8971, "properties": {"text": "Subject: re : attend pserc seminar on 11 / 30 and 12 / 1\nlance .\nperfect .\nvince\nlance cunningham @ enron on 11 / 13 / 2000 10 : 06 : 26 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : attend pserc seminar on 11 / 30 and 12 / 1\nvince ,\ni will be able to attend the pserc seminar on nov . 30 and dec . 1 . i also\npicked up some additional information from ut concerning pserc this past\nweekend while i was in austin .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.838+0000", "entityId": 8972, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngandy , kristin h celeste c roberts nov 01 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nhewitt , kirstee l steven leppard nov 06 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nleppard , steven dale surbey nov 06 , 2000\npatrick , christie a steven j kean nov 09 , 2000\npham , bich anh t sarah brown nov 06 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nrosen , michael b christie a patrick nov 06 , 2000\nsun , li kevin kindall nov 09 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\ntawney , mark r jeffrey a shankman oct 26 , 2000\nthuraisingham , ravi paul h racicot jr nov 12 , 2000\nwilliams , matthew steven leppard nov 08 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.842+0000", "entityId": 8973, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngandy , kristin h celeste c roberts nov 01 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nhewitt , kirstee l steven leppard nov 06 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nlamas vieira pinto , rodrigo david port oct 31 , 2000\npatrick , christie a steven j kean nov 09 , 2000\npham , bich anh t sarah brown nov 06 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nrosen , michael b christie a patrick nov 06 , 2000\nsun , li kevin kindall nov 09 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\ntawney , mark r jeffrey a shankman oct 26 , 2000\nthuraisingham , ravi paul h racicot jr nov 12 , 2000\nwilliams , matthew steven leppard nov 08 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.847+0000", "entityId": 8974, "properties": {"text": "Subject: fyi : ferc staff report on investigation of bulk power markets\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\nthe ferc staff recently released a report discussing markets in each of the\nregions titled \" investigation of bulk power markets \" . the report is not a ferc\norder .\nthe northeast region is discussed in a section of 100 pages in length . pjm is\ndiscussed in detail beginning on page 1 - 59 . there are some minor inaccuracies\nin\nthe report with respect to pjm , such as the 1999 peak load .\nthe report is a good first step in understanding the complex markets in the\nnortheast and their relationships among each other . the report also contains\nrecommendations and options for resolution of issues .\nthe complete report can be found at www . ferc . fed . us / newsl / staffreports . htm\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please send an e - mail to custsvc @ pjm . com .\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.851+0000", "entityId": 8975, "properties": {"text": "Subject: vince ,\ni ' ll have him e - mail you a cv .\ni ' d be happy to speak at the power risk conference .\nfrank\nprofessor frank a . wolak email :\nwolak @ zia . stanford . edu\ndepartment of economics phone : 650 - 723 - 3944\n( office )\nstanford university fax : 650 - 725 - 5702\nstanford , ca 94305 - 6072 phone : 650 - 856 - 0109 ( home )\nworld - wide web page : http : / / www . stanford . edu / ~ wolak cell phone : 650 - 814 - 0107", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.856+0000", "entityId": 8976, "properties": {"text": "Subject: re :\nfrank ,\ni am definitely interested in the resume . i can meet the candidate on campus\nwhen\ni visit my son . i am planning to come to palo alto around thanksgiving .\nalso , energy and power risk management ( an english publication )\norganizes every year in houston a power risk conference ( typically in may ) .\nthey ask me for recommendations regarding\nspeakers . would you be interested in participating ?\nvince\n\" frank a . wolak \" on 11 / 13 / 2000 08 : 44 : 57 am\nto : vkamins @ enron . com\ncc :\nsubject :\nvince ,\ni am writing about a student of mine who is on the job market\nthis year . when you stopped by my office , about 18 months ago\nyou asked if i had any students that might be appropriate for\nyour group . although i didn ' t at the time , now i do . this student has\nexcellent technical skills , including an m . s . in statistics\nand a ph . d . in economics by the end of the current academic\nyear . his dissertation research is on the investment behavior\nof independent power producers in the us . as a result of research\nassistance he has done for me , he knows the california market very well\nand is familiar with the other isos . i think he would be an excellent\nmatch for you . the only problem is that he will probably have many\nother options available . however , i definitely think he ' s worth a look .\nif you ' d like him to send you a cv , please let me know . thanks .\nfrank wolak\nprofessor frank a . wolak email :\nwolak @ zia . stanford . edu\ndepartment of economics phone : 650 - 723 - 3944\n( office )\nstanford university fax : 650 - 725 - 5702\nstanford , ca 94305 - 6072 phone : 650 - 856 - 0109 ( home )\nworld - wide web page : http : / / www . stanford . edu / ~ wolak cell phone : 650 - 814 - 0107", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.860+0000", "entityId": 8977, "properties": {"text": "Subject: summer internship\ndear mr . kaminski\ni am currently pursuing the m . s . in ieor at uc berkeley . i attended the\nspeech you gave some weeks ago .\ni am interested in summer internship positions available in enron . you will\nfind enclosed my resume .\nsincerely ,\nezequiel luis\neste mensaje fue enviado desde http : / / commcenter . infosel . com\ninternet gratis\nhttp : / / www . terra . com . mx / terralibre\n- resume elm . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.865+0000", "entityId": 8978, "properties": {"text": "Subject: re : lacima energy and weather derivatives courses by clewlow and\nstrickland\nsure :\ni think that would be a great opportunity to get more insights on modeling\nforward curves .\ni would like to participate on both courses if possible .\nmany thanks for remembering my name .\npaulo issler .\nvince j kaminski\n11 / 13 / 2000 08 : 15 am\nto : paulo issler / hou / ect @ ect , alex huang / corp / enron @ enron\ncc :\nsubject : lacima energy and weather derivatives courses by clewlow and\nstrickland\npaulo , alex ,\nany interest ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 13 / 2000\n08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" julie \" on 11 / 12 / 2000 02 : 05 : 40 pm\nto :\ncc :\nsubject : lacima energy and weather derivatives courses by clewlow and\nstrickland\nplease find attached information ? for our next two courses and workshops : ?\nenergy derivatives : ? pricing and risk management and\nweather derivatives , which will be conducted in houston and in london in feb\n/ march 2001 . ? instructors will be dr les clewlow and dr chris strickland .\n?\nbecause the course requires intense interaction , the courses will be ? limited\nto a maximum of 15 people , so early registration is encouraged .\n?\nif you require further information , or would like to register for either or\nboth ? courses , please contact me via this email or our web site , ? www .\nlacimagroup . com\n- energy . pdf\n- weather . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.869+0000", "entityId": 8979, "properties": {"text": "Subject: calendars and reviews\ncould all of you please give access to your calendars ( lotus organizer ) to\nanita dupont , and also make sure that if you step away from your desk that\nyour calendar indicates where you will be ? it has happened a few times\nrecently that people have come for appointments and the person has been away\nfrom his / her desk and anita could not get hold of the person . this does not\nportray a good image of the group . also , if you have cell phones , please\nmake sure anita has the number .\nalso , please make sure to complete your self - assessment performance review ,\nand either indicate list of projects worked on since june in there or at\nleast separately e - mail me a list .\nthanks ,\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.874+0000", "entityId": 8980, "properties": {"text": "Subject: marketpoint license agreement\njohn / vince :\ni really enjoyed the meeting the other day with you and a broad cross\nsection of your people . thank you very much for setting it up , and thank\nyou for giving me the opportunity to speak with your people .\nas i mentioned to john , i am sending you the license paperwork for\nmarketpoint . i have attached our standard license agreement for your\nconsideration . as i mentioned , the license agreement covers the entire\nbundled product , which includes\n? north american gas , short and long term\n? north american electricity , short and long term\n? world gas\n? western european gas\n? world oil\nwe are just finishing porting the world oil , world gas , and western european\ngas models over from our old ( now obsolete ) software system into\nmarketpoint , so they will not be fully tested and complete for a couple of\nmonths . however , the gas and electricity models for north america are\npresently complete and tested . that should allow us to give you an\nattractive price before the full worldwide toolkit is available throughout\nyour worldwide business .\nas i understood it , you will want the gas modeling capability first and will\nwant to defer decisions on electric or other capability . as i mentioned at\nthe meeting , we are prepared to offer that for approximately\nthe fully\nbundled price . as you read the license agreement , you will see that the\nsoftware licenses for $ 100 , 000 annually , the gas data for $ 5 , 000 , and the\nelectric data for $ 10 , 000 . marketpoint will agree to license you the gas\nmodel plus the data for\nthe software license plus the data license for a\ntotal of $ 55 , 000 annually . this is just under\nthe fully bundled price . i\nthink that is consistent with the discussions at our meeting , and from\nmarketpoint \u0001 , s perspective would provide a great basis to move forward\ntogether with enron . if or when enron ever desires to \u0001 & scale up \u0001 8 to another\nmodel or model ( s ) from the marketpoint portfolio , we will simply scale you\nup to the entire license agreement . this will allow you to decouple the gas\ndecision from any other decisions you might make . ( i will be glad to put\nthis additional pricing provision into the agreement if you decide to move\nforward . )\ni felt i was able to communicate the philosophy , scope , and operation of our\napproach during the meeting and to deliver you much of the information you\nmight need to evaluate whether marketpoint meets your needs . i thought you\nwere able to see the depth and sophistication of the product yet at the same\ntime its simplicity and effectiveness . i thought you were able to see the\nbenefits of the marketpoint dimension of economic equilibrium as a\ncomplement and supplement to other approaches you will assuredly use . i\nwould be interested in your impressions and those of your colleagues . i\nlook forward to your response and to moving ahead together . we view you as\na very important prospective customer and client and will work with you to\nearn and secure your business .\nif you decide to license marketpoint , we can arrange to transfer and mount\nmarketpoint and the short term narg model ( which is the model we suggest you\nbegin with ) and travel to houston to deliver our 1\nday training seminar .\nour clients are usually very fluent after that 1\nday training seminar .\nthereafter , we would want you to work with the short term narg model for a\nfew weeks while you get up to speed , very fluent , and very comfortable\nbefore you take delivery of the longer term version of narg several weeks\nlater .\nthanks again , and all the best . if there is some item from the meeting that\ni might have forgotten to send , please remind me . my notes don ' t show\nanything , but i was speaking a lot rather than writing notes during the\nmeeting and might have overlooked something someone wanted .\ndale nesbitt\npresident\nmarketpoint inc .\n27121 adonna ct .\nlos altos hills , ca 94022\n( 650 ) 218 - 3069\ndale . nesbitt @ marketpointinc . com\n- license . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.879+0000", "entityId": 8981, "properties": {"text": "Subject: request for historical curve information\nvince ,\nper our conversation this morning , i would appreciate the following\nhistorical curve information as soon as possible :\n1 . on february 17 , 2000 , what was the summer ' 00 strip for vent to ml 7 ,\ndemarc to ml 7 , and vent to chicago\n2 . on july 27 , 2000 , what was the august ' 00 strip for vent to chicago\n3 . on may 9 , 2000 , what was the may ' 00 strip for vent to chicago\n4 . on may 30 , 2000 , what was the june strip for vent to chicago\n5 . on june 29 , 2000 , what was july strip for vent to chicago\n6 . on sep . 29 , 2000 , what was the october strip for vent to ml 7\nthank you in advance for your prompt attention to this matter . please call\nme if you have any questions . thanks again !\nmike barry\n402 / 398 - 7105", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.884+0000", "entityId": 8982, "properties": {"text": "Subject: pserc iab meeting\ndear dennis ,\nvince kaminski forwarded your invitation to attend the pserc iab meeting . i\nlook forward to meeting you and attending the meeting . i am a manager in\nvince ' s research group and my background is in economics of power systems .\nsincerely ,\nlance b . cunningham , p . e .\nmanager\nenron north america", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.890+0000", "entityId": 8983, "properties": {"text": "Subject: my accomplishment\nattached please find a brief description of my accomplishment during 7 / 1 / 00\nto 11 / 14 / 00 , which might be useful for the pep system .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.899+0000", "entityId": 8984, "properties": {"text": "Subject: re : the next newsletter\ndear vince ,\nthank you ! i feel much better now .\nsam\nvince j kaminski @ ect\n11 / 15 / 2000 07 : 31 am\nto : william smith / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : the next newsletter\nsam ,\ngood thinking . i shall also write an article over the weekend so we shall\nhave one in reserve .\nvince\nenron north america corp .\nfrom : william smith @ enron 11 / 15 / 2000 07 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : elena chilkina / corp / enron @ enron\nsubject : the next newsletter\ngood morning , vince !\nas i will be on vacation ( tomorrow until monday the 27 th ) , i ' m enlisting\nelena chilkina ' s help in producing this monday ' s ( 20 nov . ) newsletter .\nhere ' s how i hope it will work :\ni ' ve asked alex huang to try to get his article to you by friday for your\nreview .\ni ' m attempting to get with sharad today to get his photo and remind him about\nthe bio piece for page one . he should be the feature for monday .\ni will also schedule a person and an article ( probably from charlie weldon )\nfor the 27 th . if alex ' s article is a two - parter , we ' ll just do part 2 that\nday instead .\nfor all submissions for this coming monday ' s issue , i would ask that they be\ne - mailed to elena chilkina\nif you notice something i may have missed , would you please let me know ?\nthank you !\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.906+0000", "entityId": 8985, "properties": {"text": "Subject: re : summer internship\nezequiel ,\ni have forwarded your resume to our analyst / associate program with a request\nto accept you as summer intern . if the summer program is full , my group\nwill hire you directly for the summer .\nvince\nezequiel luis on 11 / 13 / 2000 04 : 23 : 23 pm\nto : vkamins @ enron . com\ncc :\nsubject : summer internship\ndear mr . kaminski\ni am currently pursuing the m . s . in ieor at uc berkeley . i attended the\nspeech you gave some weeks ago .\ni am interested in summer internship positions available in enron . you will\nfind enclosed my resume .\nsincerely ,\nezequiel luis\neste mensaje fue enviado desde http : / / commcenter . infosel . com\ninternet gratis\nhttp : / / www . terra . com . mx / terralibre\n- resume elm . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.912+0000", "entityId": 8986, "properties": {"text": "Subject: summer internship\nhello charlene ,\ni am forwarding you a resume of a student from berkeley .\nwe would like very much to have him as a summer intern with my group .\nplease , let me know if your program can accommodate him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 15 / 2000\n07 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nezequiel luis on 11 / 13 / 2000 04 : 23 : 23 pm\nto : vkamins @ enron . com\ncc :\nsubject : summer internship\ndear mr . kaminski\ni am currently pursuing the m . s . in ieor at uc berkeley . i attended the\nspeech you gave some weeks ago .\ni am interested in summer internship positions available in enron . you will\nfind enclosed my resume .\nsincerely ,\nezequiel luis\neste mensaje fue enviado desde http : / / commcenter . infosel . com\ninternet gratis\nhttp : / / www . terra . com . mx / terralibre\n- resume elm . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.916+0000", "entityId": 8987, "properties": {"text": "Subject: re : seeking opportunity in computational finance\ndear vince :\nthanks for your response .\ni am not a programmer , nor a \" quant \" . i am an expert in excel and otherwise\nhave advanced skills in the remaining msoffice suite . beyond that i have\nextensive experience working with research and computer progamming personnel\non projects from networks to databases , and in particular , automation .\nfor instance , the first generation of the risk analytics system that i\ndesigned for quantlab was done in excel . in subsequent generations of the\nsystem , excel served only as the gui - given its extreme flexibility - and a\nsql database operated underneath ( compaq servers , raid array ) , integrating\nreal - time operations for all components of the system .\nthe research team at quantlab used many leading edge modelling\nmethodologies , such as genetic algorithms , neural networks , principal\ncomponent analysis , kernel density estimation , fast kernel regression ,\nhidden markov modelling and many other pattern recognition , walk - forward\nback testing , and other simulation techniques .\ni was the sole individual on a team of 17 that had any practical trading\nexperience , and therefore , felt that i played a critical role in the\napplication and implementation of each of the system components from data\nmining to research to signal generation to execution . beyond that , i was\nuniquely qualified to articulate the project ' s mission to investors , and\ntherefore , was highly successful in spearheading support - financial and\notherwise - from our network .\nalthought i did not ask specifically , i surmise from your question that you\nare leading a research effort . i believe that my skill set is best served\nas a liaison between research and trading , since i speak both languages . i\nbelieve that i possess great vision and enthusiasim that could be leveraged\nin a group , project or product management role to integrate and streamline\ndiverse systems and processes ; a common scenario in most proprietary\ndevelopment settings today .\nin closing , i would like to learn more about enron and the financial\ntechnology effort therein through further discussion with you , or if that is\nnot appropriate , someone to whom you would be comfortable referring me .\ni look forward to your thoughts .\nbest regards ,\npaul\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , november 14 , 2000 4 : 30 pm\nto : epr @ pipeline . com\nsubject : re : seeking opportunity in computational finance\npaul ,\ncan you give me more information about your computer skills ?\nmy group is very hands - on oriented and computer programming is a critical\nskill .\nvince\n\" paul rowady \" on 11 / 14 / 2000 04 : 09 : 43 pm\nto : \" vince kaminski \"\ncc :\nsubject : seeking opportunity in computational finance\ndear vince :\nin following up on my voicemail message today , i attach my resume below for\nyour review and consideration .\nit ' s ironic that you called while i was putting the message together . i\nwill keep it short and look forward to speaking to you at your convenience .\nbest regards ,\npaul\ne . paul rowady , jr .\n2300 west alabama , suite 69\nhouston , texas 77098\n713 - 807 - 8624 home / fax\n713 - 539 - 4541 mobile\nepr @ pipeline . com\n( see attached file : paul rowady 2 . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.921+0000", "entityId": 8988, "properties": {"text": "Subject: seeking opportunity in computational finance\ndear vince :\nin following up on my voicemail message today , i attach my resume below for\nyour review and consideration .\nit ' s ironic that you called while i was putting the message together . i\nwill keep it short and look forward to speaking to you at your convenience .\nbest regards ,\npaul\ne . paul rowady , jr .\n2300 west alabama , suite 69\nhouston , texas 77098\n713 - 807 - 8624 home / fax\n713 - 539 - 4541 mobile\nepr @ pipeline . com\n- paul rowady 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.925+0000", "entityId": 8989, "properties": {"text": "Subject: re : spring 2001 conference participation by jeffrey k . skilling\nrick ,\ni asked greg whalley and he declined ( he has a speaking\nengagement in london a day before ) .\ni have sent an invitation to louise kitchen and she has not\nreplied yet . i shall catch her at the management conference in san antonio\nand\nask for a commitment . it would help if you could mention this to her as well .\nvince\nrichard causey @ enron\n11 / 14 / 2000 09 : 30 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nwhere do we stand on this ? is someone else going to do it ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard causey / corp / enron on 11 / 14 / 2000\n09 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ehud i . ronn \" on 10 / 24 / 2000 04 : 29 : 05 pm\nto : richard . causey @ enron . com\ncc :\nsubject : re : spring 2001 conference participation by jeffrey k . skilling\nat 12 : 10 pm 10 / 13 / 00 - 0500 , you wrote :\n> in checking with jeff ' s assistant this morning , we hope to get clarity on\n> the schedule later today or monday ( at the latest , hopefully ! ) .\nto paraphrase daneil webster ' s famous quote , \" how stands our conference ? \"\nbest ,\nehud\nehud i . ronn\nprofessor of finance and jack s . josey professor in energy studies\ndirector , center for energy finance education and research\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.930+0000", "entityId": 8990, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n11 / 13 / 2000 10 : 21 am\nto : vince j kaminski / hou / ect @ ect\ncc : anita dupont / na / enron @ enron , kevin g moore / hou / ect @ ect\nsubject : vacation\nvince :\ni would like to take vacation next tuesday and wednesday , the 21 st and\n22 nd ?\nplease let me know if it is alright . anita will be here .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.936+0000", "entityId": 8991, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 r 3 sv 4\norder for : kate lucas\n1 x ( standard desktop $ 1262 ) enron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.941+0000", "entityId": 8992, "properties": {"text": "Subject: re : request for historical curve information\nsure :\ni am already taking care of that .\nthanks .\npaulo issler\nvince j kaminski\n11 / 15 / 2000 09 : 59 am\nto : paulo issler / hou / ect @ ect\ncc :\nsubject : request for historical curve information\npaulo ,\ncan you please , help him with this ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 15 / 2000\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : mike barry @ enron 11 / 15 / 2000 07 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : request for historical curve information\nvince ,\nper our conversation this morning , i would appreciate the following\nhistorical curve information as soon as possible :\n1 . on february 17 , 2000 , what was the summer ' 00 strip for vent to ml 7 ,\ndemarc to ml 7 , and vent to chicago\n2 . on july 27 , 2000 , what was the august ' 00 strip for vent to chicago\n3 . on may 9 , 2000 , what was the may ' 00 strip for vent to chicago\n4 . on may 30 , 2000 , what was the june strip for vent to chicago\n5 . on june 29 , 2000 , what was july strip for vent to chicago\n6 . on sep . 29 , 2000 , what was the october strip for vent to ml 7\nthank you in advance for your prompt attention to this matter . please call\nme if you have any questions . thanks again !\nmike barry\n402 / 398 - 7105", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.945+0000", "entityId": 8993, "properties": {"text": "Subject: anonymous reporting facilities\nthis is to remind you that various anonymous reporting facilities are\navailable for you to report violations of company policy and suspected\ncriminal conduct by any officer , employee , or agent of the company relating\nto the performance of his or her duties . these reporting facilities are also\navailable for your questions , messages , comments , and suggestions .\nany policy violation or criminal conduct may be reported by letter , e - mail ,\nor voice mail , as set forth below , describing the suspected violation or\ncriminal conduct with as much detail as possible to allow the company to\nconduct an investigation of the reported matter .\n1 . letters should be sent to the confidential post office box :\nenron compliance officer\nconfidential - conduct of business affairs\np . o . box 1188\nhouston , texas 77251 - 1188\n2 . e - mails should be sent to the office of the chairman \u0001 , s e - mail box :\nemployees with enron e - mail can access this box by sending an e - mail to the\noffice of the chairman . simply type \u0001 & office of the chairman \u0001 8 in the address\nbox , type your message , and send . your message will be completely\nanonymous . if , however , you copy your message and e - mail it to someone else ,\nthe copy will not be anonymous .\n3 . voice mail messages should be left with the office of the chairman\nphonemail box . you can access the office of the chairman phonemail box by\ncalling ( 713 ) 853 - 7294 . if you call from your extension or an outside line ,\nyour message will be completely anonymous . if , however , you access the\nphonemail box while you are in the phonemail system , your message will not be\nanonymous .\nyou may , but are not required to , identify yourself . if you would like to\nidentify yourself , please submit your name and phone number with your letter\nor message . all anonymously reported matters will be investigated and acted\nupon in the same manner as those that contain signatures .\nthe company takes great pride in ensuring that enron is a great place to\nwork . we encourage each employee to continue to conduct the business affairs\nof the company in accordance with all applicable laws and in a moral and\nhonest manner .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.950+0000", "entityId": 8994, "properties": {"text": "Subject: ameriflash newsletter\nbusiness highlights\ncoal trading\nthe liquidity in trading of the standard european coal agreement has\nincreased significantly over the last 6 weeks . many counterparties that\npreviously opted to stay on the sidelines finally chose to join the game .\nsince the contract ' s inception at the beginning of the year , enron has traded\na total of 5 . 3 million tons against the seca contract , of which 3 . 8 million\ntons has been traded via enrononline since july 2000 . we are 5 . 3 million\ntons of a total traded market of 5 . 8 million tons .\nprincipal investments\ntridium inc . , the leading provider of internet - based automation\ninfrastructure solutions , announced the close of a $ 20 million round of\ncapital funding . the funds will be used to increase tridium \u0001 , s sales and\ntechnical support offices in north america , expand its operations into europe\nand asia , and enhance its technology and products . kroad ventures , l . p . and\nenron north america each contributed $ 10 million in venture capital .\ncorporate development\nallegheny energy supply company , llc , a wholly owned subsidiary of allegheny\nenergy , inc . , announced the signing of a definitive agreement under which\nallegheny energy supply will purchase three enron natural gas - fired merchant\ngenerating facilities . the acquisition is expected to close in the 2 nd\nquarter of 2001 .\nperformance review\nthe deadline to provide feedback is friday , november 17 . if you have been\nselected to provide feedback on one of your fellow employees , please take the\ntime to fill out an evaluation online at www . pep . enron . com .\nin the news\n\" enron corp . , already north america ' s biggest , buyer and seller of natural\ngas and electric power is dead serious about its efforts to capture a big\nslice of the $ 400 billion global trade in pulp , paper and lumber . \"\n- reuters news service\n2000 chairman \u0001 , s award nominees\nplease join us in congratulating the ena / eim / egm / employees who have been\nrecognized as chairman \u0001 , s award nominees .\ncongratulations to :\nirma alvarez alan aronowitz rick bergseiker carol coats joya davis\nrufino durante\nsue foust julie gomez barbara gray jackie griffith john harrison gerri\nirvine\nkathy benedict michael kelley mike mcconnell dave nommensen ina norman\njuan padron\nveronica parra michael roberts rhonda robinson kevin sweeney helen\ntaylor stacey white\nextra kudos to barbara gray , who is a finalist for the 2000 chairman \u0001 , s\naward . barbara and ten other individuals are flying to san antonio from\naround the world to be honored at enron \u0001 , s annual management conference . one\nof these finalists will be recognized as the 2000 chairman \u0001 , s award winner .\nwelcome\nnew hires ena / eim / egm\nena \u0001 ) anil chandy , alejandra chavez\negm \u0001 ) marty cates , joanne underwood , brad miller\ntransfers to ena / eim / egm\nena \u0001 ) mark wadlington , jennifer blay - smith , georgian landau , kathryn bussell ,\njohn coleman , steven gillespie , clarissa garcia , ina rangel , farouk lalji ,\neva rainer , chuchu wang , smith day\negm \u0001 ) gloria solis , carmella jones , nancy haralson\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed outside of enron .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.954+0000", "entityId": 8995, "properties": {"text": "Subject: speech by chairman pat wood of puct - ctaee meeting - nov . 29 , 2000\ndear colleague :\nwe are honored to have chairman pat wood of the public utility commission of\ntexas as the distinguish speaker for the meeting of the central texas chapter\nof the united states association for energy economics . chairman wood is the\nmain architect of electric industry restructuring in texas and this meeting\noffers a unique opportunity to hear his speech entitled :\n\" texas ' future competitive electric industry \"\nplease mark your calendars and join us on wednesday , november 29 at 5 : 00 pm\nat the lower colorado river authority ' s board room , located at 3700 lake\naustin blvd ( hancock building ) , austin , texas . the meeting will open with\nrefreshments and chairman wood ' s presentation will begin at 5 : 30 pm . the\nmeeting is open to the public and is free . we extend a special invitation to\nall members of the usaee that reside in the central texas area . please plan\nto meet david deangelo , president of usaee , who we are fortunate to have as\nour special guest . david will be happy to answer any questions you have about\nthe iaee and usaee .\nabout the ctaee\nthe central texas association for energy economics ( ctaee ) focuses on current\nenergy events and research at the state , national , and international level .\nit is an excellent forum to meet , network , and exchange ideas in the regional\nenergy community . local programs will be held six to eight times a year .\nthe ctaee is a local chapter of an international association known as the\ninternational association for energy economics ( iaee ) . ctaee is a non - profit\norganization and is a totally non - partisan forum for stimulating discussion\nand dialogue on major energy policy and analysis issues . to provide\nexceptional meeting topics and dialogue we need your local membership . your\nparticipation in ctaee can bring new ideas to help promote effective energy\npolicy .\nabout the iaee and usaee\nthe international association for energy economics ( iaee ) , founded in 1977 ,\nprovides a forum for the exchange of ideas , experience and issues among\nprofessionals interested in energy economics . its scope is worldwide , as are\nits members , who come from diverse backgrounds - - corporate , academic ,\nscientific , and government . the united states association for energy\neconomics ( usaee ) is an affiliate of the international association for energy\neconomics . as a member of iaee you will gain a broader understanding of\nenergy economics , policymaking and theory . members are kept well informed by\niaee and usaee publications and conferences on events within the energy\nindustry and energy challenges that lie ahead . furthermore , membership\nprovides you with the opportunity to network within the largest association\nof energy professionals in the world .\nmina m . dioun , ph . d . neil\nmcandrews karl j . nalepa\nctaee president ctaee vice president\nctaee treasurer\n( 512 ) 473 - 3333 x - 2549 ( 512 )\n415 - 3227 ( 512 ) 463 - 8574\nmdioun @ lcra . org nmcandrew @ austin . rr . com\nkarl . nalepa @ rrc . state . tx . us\n- ctaee - meeting . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.959+0000", "entityId": 8996, "properties": {"text": "Subject: year end 2000 performance feedback\nnote : you will receive this message each time you are selected as a reviewer .\nyou have been selected to participate in the year end 2000 performance\nmanagement process by providing meaningful feedback on specific employee ( s ) .\nyour feedback plays an important role in the process , and your participation\nis critical to the success of enron ' s performance management goals .\nto complete requests for feedback , access pep at http : / / pep . corp . enron . com\nand select perform review under performance review services . you may begin\nproviding feedback immediately and are requested to have all feedback forms\ncompleted by friday , november 17 , 2000 .\nif you have any questions regarding pep or your responsibility in the\nprocess , please contact the pep help desk at :\nhouston : 1 . 713 . 853 . 4777 , option 4\nlondon : 44 . 207 . 783 . 4040 , option 4\nemail : perfmgmt @ enron . com\nthank you for your participation in this important process .\nthe following is a cumulative list of employee feedback requests with a\nstatus of \" open . \" once you have submitted or declined an employee ' s request\nfor feedback , their name will no longer appear on this list .\nreview group : enron\nfeedback due date : nov 17 , 2000\nemployee name supervisor name date selected\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandrews , naveen c rudi c zipter oct 31 , 2000\nbaxter , ashley david davies nov 02 , 2000\ncampos , hector o peyton s gibner nov 06 , 2000\ncarson , richard l richard b buy oct 30 , 2000\ncrenshaw , shirley j wincenty j kaminski oct 26 , 2000\ngandy , kristin h celeste c roberts nov 01 , 2000\ngorny , vladimir theodore r murphy ii nov 02 , 2000\nhewitt , kirstee l steven leppard nov 06 , 2000\nhickerson , gary j jeffrey a shankman nov 15 , 2000\nkindall , kevin vasant shanbhogue oct 30 , 2000\nleppard , steven dale surbey nov 06 , 2000\npatrick , christie a mark a palmer nov 09 , 2000\npham , bich anh t sarah brown nov 06 , 2000\nraymond , maureen j wincenty j kaminski nov 02 , 2000\nrosen , michael b christie a patrick nov 06 , 2000\nsun , li kevin kindall nov 09 , 2000\nsupatgiat , chonawee peyton s gibner oct 27 , 2000\ntamarchenko , tanya v vasant shanbhogue oct 26 , 2000\ntawney , mark r jeffrey a shankman oct 26 , 2000\nthuraisingham , ravi paul h racicot jr nov 12 , 2000\nwilliams , matthew steven leppard nov 08 , 2000\nyaman , sevil vasant shanbhogue oct 27 , 2000\nyuan , ding richard l carson oct 31 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.965+0000", "entityId": 8997, "properties": {"text": "Subject: year end 2000 feedback deadline\nprc meetings begin on monday , november 20 th . if you have not already done\nso , please go in to pep at http : / / pep . corp . enron . com and complete the\nrequests for feedback on the employees listed below .\nif you have any questions , please call the pep help desk at :\nhouston : 1 - 713 - 853 - 4777 , option 4\nlondon : 44 - 207 - 783 - 4040 , option 4\ne - mail : perfmgmt @ enron . com\nthank you for your participation .\nandrews , naveen c\nbaxter , ashley\ncampos , hector o\ncarson , richard l\ncrenshaw , shirley j\ngandy , kristin h\ngorny , vladimir\nhewitt , kirstee l\nhickerson , gary j\nkaminski , wincenty j\nkindall , kevin\nleppard , steven\npatrick , christie a\npham , bich anh t\nraymond , maureen j\nrosen , michael b\nsun , li\nsupatgiat , chonawee\ntamarchenko , tanya v\ntawney , mark r\nthuraisingham , ravi\nwilliams , matthew\nyaman , sevil\nyuan , ding", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.970+0000", "entityId": 8998, "properties": {"text": "Subject: tage resume submittal\nvince ,\ntwo candidates for your review . please call me .\n?\npaul johnson , cpc\npresident\n( 281 ) 497 - 8595\n?\nplease visit our website\n? www . austingrp . com\n- wood , shelly . doc\n- jpbresume 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.974+0000", "entityId": 8999, "properties": {"text": "Subject: f / u from iris mack , mba / phd to enron\nvince , iris received an error message when sending this to you so she ask i\nforward it to you . she is currently living in california .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by toni graham / corp / enron on 11 / 15 / 2000\n09 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" iris mack \" on 11 / 14 / 2000 11 : 20 : 15 pm\nto : vincent . kaminski @ enron . com\ncc :\nsubject : f / u from iris mack , mba / phd to enron\ndear dr . kaminski ,\nhow are you ? i seemed to have lost contact with you . the last contact\nwas with a ms . graham - regarding my coming to houston for an interview -\nwhile i was still living in london .\ni am now back in the states - where i spent the last few months working\nfor a dot . com . although this internet opportunity was interesting , it was\nnot a viable one . i guess part of the technology firm shake out .\ntherefore i am now interviewing again - with investment banks and\ninsurance companies . is enron still interested in having me come down for\nan interview ? if so , please let me know how to proceed .\nthank you in advance for your time and consideration .\nkind regards ,\niris mack\n925 . 933 . 7833\nget your private , free e - mail from msn hotmail at http : / / www . hotmail . com .\nshare information about yourself , create your own public profile at\nhttp : / / profiles . msn . com .\n- cv for iris mack , mba , phd . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.979+0000", "entityId": 9000, "properties": {"text": "Subject: re : summer internship\nvince ,\nwe have not started our spring hiring yet . however , we will review and let\nhim know we have an interest and tell him when we will be interviewing on\ncampus . thanks\nalthea and shelly ,\nplease keep track of his resume so that he is considered for a summer\nposition when we begin the spring recruiting . thanks\nvince j kaminski @ ect\n11 / 15 / 2000 07 : 39 am\nto : charlene jackson / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : summer internship\nhello charlene ,\ni am forwarding you a resume of a student from berkeley .\nwe would like very much to have him as a summer intern with my group .\nplease , let me know if your program can accommodate him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 15 / 2000\n07 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nezequiel luis on 11 / 13 / 2000 04 : 23 : 23 pm\nto : vkamins @ enron . com\ncc :\nsubject : summer internship\ndear mr . kaminski\ni am currently pursuing the m . s . in ieor at uc berkeley . i attended the\nspeech you gave some weeks ago .\ni am interested in summer internship positions available in enron . you will\nfind enclosed my resume .\nsincerely ,\nezequiel luis\neste mensaje fue enviado desde http : / / commcenter . infosel . com\ninternet gratis\nhttp : / / www . terra . com . mx / terralibre\n- resume elm . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.985+0000", "entityId": 9001, "properties": {"text": "Subject: good morning\nvince ,\nattached you will find a draft \" thought document \" based on our\nconversations yesterday . i think that it captures much of my\nrecollections . please edit it to your liking and pass it back to me . in\nthe next steps i have laid out a plan of action that should lead us to a\nsuccessful conclusion and a draft by christmas .\nlet me emphasize that this is a working document so feel free to modify it\nin whatever ways you think appropriate ( don ' t be bashful - - i want us to get\nthis right ) .\nhave a great day .\nyour friend ,\njohn\n- enroninterview . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:47.992+0000", "entityId": 9002, "properties": {"text": "Subject: 2001 budget for research\nsir ,\ni just got word that your bottom line needs to be 2 , 200 k . this is net of\ncorp charges and intercompany billings . in order to get to this number , we\nhave to reduce your budget by 83 k . do you have any suggestions in which\ncategory ( ies ) we need to reduce ?\nbudget 10 , 521 , 000\ni / c billings 8 , 238 , 000\nsubtotal 2 , 283 , 000\nper delainey 2 , 200 , 000\nneed to dec by 83 , 000\nhere are my suggestions based on oct expenses :\ncategory oct expense budget decrease yearly amount\nperiodical / subscription 5 , 200 10 , 000 3 , 000 36 , 000\ntuition and reimbursement 11 , 000 21 , 000 4 , 000 48 , 000\nthis will bring you to the bottom line suggested by delainey . please let me\nknow your decision by november 21 . if you have any questions , call me at\n5 - 7094 . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.000+0000", "entityId": 9003, "properties": {"text": "Subject: request submitted : access request for maureen . raymond @ enron . com\nvince :\nmaureen needed this access for her new lap top so she can take it with\nher on vacation . there was no one here to approve it , so i approved it\nfor you . hope that was ok .\nhave a great time !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 15 / 2000\n01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem @ mailman . enron . com on 11 / 15 / 2000 01 : 18 : 27 pm\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : request submitted : access request for maureen . raymond @ enron . com\nyou have received this email because the requester specified you as their vp .\nplease click\napproval to review and act upon this request .\nrequest id : 000000000007498\nrequest create date : 11 / 15 / 00 1 : 14 : 32 pm\nrequested for : maureen . raymond @ enron . com\nresource name : vpn\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.006+0000", "entityId": 9004, "properties": {"text": "Subject: request submitted : access request for mraymon @ enron . com\nyou have received this email because the requester specified you as their\nmanager . please click\napproval to review and act upon this request .\nrequest id : 000000000007494\nrequest create date : 11 / 15 / 00 12 : 57 : 59 pm\nrequested for : mraymon @ enron . com\nresource name : unlisted application / software\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.010+0000", "entityId": 9005, "properties": {"text": "Subject: holiday invitation\nplease click on the attached link to launch your holiday party invitation .\nhttp : / / invitation . enron . com\nplease direct any questions to dorie hitchcock via email .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.015+0000", "entityId": 9006, "properties": {"text": "Subject: 20 th annual ceraweek - \" shooting the rapids : strategies and risks\nfor the energy future \"\nmr . vincent j . kaminski\nmanaging director\nenron capital & trade resources corp .\ndear mr . kaminski :\ni am pleased to invite you to join my cera colleagues and me at our 20 th\nannual executive conference , \" shooting the rapids : strategies and risks for\nthe energy future \" to be held february 12 - 16 , 2001 in houston , texas . ? this\nis the premier international gathering offering senior executives new ideas ,\ninsights and strategic thinking on the issues facing the global energy\nindustry .\ni believe you will find the conference and related social events timely and\nof considerable value . ? our focus will be on the critical implications of the\ncurrent market turmoil for energy strategies , investment , regulatory\nbacklash , competitive dynamics , and industry structure . ? presentations cover\nall key regions and energy sectors - - oil , natural gas and power - - and their\ninterconnections . ? the conference is the centerpiece of ceraweek , a full week\nof senior level meetings designed to foster exchange and learning , as well as\ninformal interaction and networking . ? last year ' s participants included some\n1600 executives from over 57 countries .\ncomplete details on ceraweek 2001 can be found at ?\nhttp : / / www . cera . com / cfm / track / mc . cfm ? p = 670 & c = 2804 ? . to register , please go\ndirectly to http : / / www . cera . com / cfm / track / mc . cfm ? p = 781 email\nregister @ cera . com ; or call us at 1 ( 800 ) 879 - 2372 ext . 800 ( outside the u . s .\n( 617 ) 497 - 6446 ext . 800 ) . ? i hope you will join us !\nsincerely ,\ndaniel yergin\nchairman , cambridge energy research associates\nshould you experience problems reaching the web site using the links above ,\nplease go to http : / / www . cera . com / ceraweek /\nour relationship with you is very important to us . ? if you wish not to\nreceive future e - mail notifications , please send a reply to this message with\n\" donotemail \" as the subject of your message . (\nmailto : info @ cera . com ? subject = donotemail ) ? please indicate whether you wish\nto be removed from the conference list or alternatively from the list for any\nfuture cera notifications .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.020+0000", "entityId": 9007, "properties": {"text": "Subject: carnegie mellon recruiting\ni received the following email this afternoon .\n- kevin k .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 11 / 16 / 2000\n05 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsallygould on 11 / 16 / 2000 03 : 38 : 44 pm\nto : kevin . kindall @ enron . com\ncc :\nsubject : carnegie mellon recruiting\nkevin ,\njean eisel asked that i connect with you about recruiting comp . finance\nstudents .\nplease contact me with questions you might have about the recruiting\nprocess or if you have some dates in mind for coming to campus .\ni look forward to hearing from you .\nregards ,\nsally gould\nrecruiting coordinator\ngsia - carnegie mellon university\n412 - 268 - 1311\n412 - 268 - 4146 ( fx )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.024+0000", "entityId": 9008, "properties": {"text": "Subject: hr deadlines and action items\nplease forward to all your direct reports\n- - - - - - - - - - - - - - - - - - - - - - forwarded by norma villarreal / hou / ect on 11 / 16 / 2000\n11 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnorma villarreal\n11 / 16 / 2000 11 : 23 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , mike a roberts / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , maureen raymond / hou / ect @ ect\ncc : sheila walton / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : hr deadlines and action items\npep system for feedback\naction item\nemployees need to provide feedback on requested employees\nsupervisor ' s need to contact employee ' s requested reviewers ( via phone mail\nor email ) who have not submitted feedback .\ndeadline for pep feedback : friday , november 17 , 2000 cst\nopen enrollment for 20001 benefit election\naction item\nemployees who want change their benefit election need to go to\nwww . enron . benefitsnow . com or call 1 ( 800 ) 425 - 5864 . if you do not have your\n2001 enrolment personal worksheet which contains your personal identification\nnumber please contact benefits at 1 ( 800 ) 3327373 option 1 .\nextended deadline : friday , november 17 , 2000 , 5 p . m . cst\nbonus defferal election\naction item\nemployees wishing to receive stock options and phantom stock in lieu of all\nor a portion of the cash bonus received during 20001 can will need to access\nehronline . enron . com .\ndeadline : friday , december 8 , 2000 cst\nplease let me know if you have any questions .\nnorma villarreal\nhr generalist\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.030+0000", "entityId": 9009, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 r 5 mlm\norder for : vince j kaminski\n1 x ( standard desktop $ 1262 )\n1 x ( standard 21 \" monitor $ 739 ) enron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.034+0000", "entityId": 9010, "properties": {"text": "Subject: your approval is overdue : access request for mraymon @ enron . com\nthis request has been pending your approval for 2 days . please click\napproval to review and act upon this request .\nrequest id : 000000000007494\nrequest create date : 11 / 15 / 00 12 : 57 : 59 pm\nrequested for : mraymon @ enron . com\nresource name : unlisted application / software\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.040+0000", "entityId": 9011, "properties": {"text": "Subject: eol wti maket maker simulation model\nstinson ,\ni add the total p / l due to contract rollover . when the number of trades is\nlarge\nand the spread is not too small , the model prints a lot of money , dominated by\nthose trade earning the half of bo spread .\ni also wrote an explaination about the model on the front page . i think we\nare\nready to deliever the model v . 1 .\nthe next step is to incorporate the intra - day market movement by using high\nand low\nprices into the pricing . i will call you on monday .\nhappy thanksgivings !\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.045+0000", "entityId": 9012, "properties": {"text": "Subject: transmission roundtable\neveryone ,\nseveral of us have talked about starting an ongoing meeting that we can use\nas a platform to discuss various transmission issues .\ni invite everyone to our first meeting , i have received names from several\ndifferent sources for the invitation list . if any of you feel that others\nshould be present please let me know .\nvince has agreed that the research group will sponsor this activity and our\nfirst meeting is scheduled for friday , december 8 th . , from 11 : 30 - 1 : 00 .\nplease rsvp to anita dupont whether or not you will be able to attend and\nyour lunch preference for sandwiches or salads . anita ' s extension is 30329\nand her e - mail is adupont @ enron . com .\nregards ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.049+0000", "entityId": 9013, "properties": {"text": "Subject: mba career opportunity\ndear ? vincent kaminski :\n?\ni got your contact details from the web site for power marketers . i have a\nstrong interest in pursuing a career in the energy industry ? with a top\nenergy company like ? enron , where my abilities and qualifications can be\nfully applied for our mutual benefit .\ni am graduating in may with an mba ? degree with concentrations in finance and\ninformation systems . this summer i worked ? as an intern with structuring and\nanalytics group of ameren energy . ? this internship ? has been especially\nchallenging and has enhanced my professional competencies . while there , i\nwas afforded the opportunity to ? develop a forward view model ? for ? off -\npeak ? electricity price forecasting and analyze the data sets of a\nfundamental ? model to create forward price curves . both projects added value\nto the company and provided me with first - hand experience in the area of\nenergy trading and marketing as well as modeling techniques .\nin addition , i have an undergraduate degree in mechanical engineering and\ntwo years ' experience in power generating . with my work experience in energy\nfinance and exceptional academic and professional achievements , along with\nmy exemplary leadership and management potential and outstanding analytical ,\nbusiness communication , problem - solving and computer skills , i ' m convinced\nthat i will be able to make immediate contributions to your company .\ni am attaching my resume for your review . should you have any questions or\nneed clarification , please feel free to contact me at ( 504 ) 861 - 9110 or\nqchenl @ tulane . edu .\nas i have some offers with deadlines approaching , i would appreciate it if\nyou could give me a quick response . i also expect ? a base compensation above\n$ 75 k . i look forward to ? hearing from you soon .\n?\nbest regards ,\nqing ( christine ) chen\nmba 2001\na . b . freeman school of business\ntulane university\ntel : ( 504 ) 861 - 9110\n- resumeus . doc\n- resumeus txt . txt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.054+0000", "entityId": 9014, "properties": {"text": "Subject: meeting at wharton\ni am out of the office next week . please send details on the meeting at\nwharton to my assistant , danielle dees . she will make my travel\narrangements . i believe you were recommending a hotel as well .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.058+0000", "entityId": 9015, "properties": {"text": "Subject: re : smoothing methodology for extracting forward forward\nvolatilities\ntanya ,\nthe exponentials we tried earlier ( a + bexp ( - cx ) , etc , fit well but\ngave negative numbers in the bootstrapping .\ni tried a + b ( t + c ) ( - 1 ) , a standard power law , and as the ? accompanying graph shows ( for the 12 months ) , the fits are quite good . ? in this case , the ffvols do not become negative ( i believe this ? corresponds to your 0 beta ) . ? i would have preferred exp ( - t ) and variants ( can explain owing to ? mean - reverting vols ) , but the power law might be a practical alternative ? ( from an implementation standpoint ) . ? naveen ? ? ? ? ? ? ? ? tanya tamarchenko @ ect ? 11 / 17 / 2000 02 : 59 pm ? to : naveen andrews / corp / enron @ enron , alex huang / corp / enron @ enron ? cc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , vladimir ? gorny / hou / ect @ ect ? ? subject : re : smoothing methodology for extracting forward forward ? volatilities ? ? following up on our discussions i implemented one method for creating forward ? forward curve ? from implied vol curve . ? i sorted out 12 forward curves from an original forward vol curve , each of 12 ? curves corresponding ? to certain month . then i fitted each of 12 curves with a function : ? ? y = a + a / power ( x + b , beta ) ? ? i figured out that when beta is from ( 0 , . 5 ) the above function is suitable ? for performing our bootstrapping ? routine of deriving ff vols from implied , because : ? ? y ( x + t ) * y ( x + t ) * ( x + t ) - y ( x ) * y ( x ) * tx > 0 for all x , t . ? ? ( i have to double check on this again . also when beta > 0 . 5 there are some ? combinations of parameters a , a , b , beta ? for which above equality holds ) . even with restriction on beta this class of ? functions represents quite a variety of shapes . ? ? below you see the example of fitting as well as the example of ff vol curve ? constructed from implied vol curve for ng . ? ? i ' ll try this for power as well . ? ? any comments ? ? ? ? ? ? ? ? ? ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.063+0000", "entityId": 9016, "properties": {"text": "Subject: re krishnarao , pinnamaneni v review\ni made a mistake and put comments for another person into krishnar ' s prc .\nplease make sure that you ignore it if i can ' t get it fixed . below is what i\nintended to put in . my apologies .\ni will get my assistant to get it deleted and put this information in on\nmonday . it won ' t let me do it now . i guess it does not pay to leave 30 or\n40 reviews to the last day . paula : please fix this for me and let vince know\neither that it is fixed or cannot be fixed .\ninnovation / entrapraneurship\nno basis\ncommunicating goal setting\nno basis\nteam work / communication\nexcellent . very easy to work with and get along with .\nbusiness instincts\nexcellent . krishnar is consistent in asking to help out and asking what more\nhe could do to help us out .\nanalystical technical\nexcellent . krishnar has a very strong grasp of what we are doing and how it\nshould be done .\noverall\nexcellent . my interactions with krishnar have been limited but positive .\nkrishnar is always positive with a positive attitude to get the job done .\nstrengths :\nvery strong analytical skills with a desire to add value .\nareas for improvements\ni don ' t understand krisnar ' s role ( is leading all research people on our\nfloor or just some ) well and have had limited interaction with him . { all has\nbeen positive when it has ocurred } this suggests that krishnar might spend\nmore time define what his people are doing and getting feedback about their\nperformance , and developing the project scope better .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.068+0000", "entityId": 9017, "properties": {"text": "Subject: alp proposal\ncarrie ,\ni am sending you , as promised , the draft of my proposal . please , let me know\nif it meets your requirements . i shall be glad to revise it and send you the\nfinal version .\nvince kaminski\n* * * * * * * * * *\none of the most important trends in the energy industry during the last year\nwas proliferation of electronic , internet based , trading platforms for\nwholesale markets and for retail operations . websites such as\nwww . houstonstreet . com and www . altranet . com provide facilities for matching\nbuyers and sellers . the website operated by enron corp . ( enrononline )\nrepresents an alternative solution under which enron acts as a principal in\nevery transaction . on the retail ? side , many retail e - commerce companies\noffering auctions , reverse auctions and platforms for creation of buyers \u0001 ,\nclubs challenge incumbent utilities . the objective of this project is to\nevaluate the impact of e - commerce ( both at the wholesale and retail levels )\non the energy industry . the study will start with comparative analysis of\ndifferent wholesale trading and retail e - commerce business models and\nevaluation of their long - term viability . the next step will be assessment of\nthe impact of e - commerce on price dynamics , profit margins and the level of\ncompetition in different energy markets . a separate section will be devoted\nto analysis of reaction of companies and organizations affected by e - commerce\n( incumbent utilities , organized exchanges , energy brokers ) to the new\ncompetitive threat , and different strategies they implement to meet the\nchallenge . organized exchanges have accelerated in many cases the transition\nto screen - based trading that has been already replacing open outcry\ntechnology . power and natural gas marketers have created alliances ( with\nother industry players , software companies and electronic exchanges ) to\ncreate their own trading platforms . gas and electric utilities embarked on\ndevelopment of vertical and horizontal e - commerce platforms , offering\nservices to households and other companies in the energy industry . the\ncritical question is how quickly different companies should react to the\ncompetitive threats and how fast they should exploit opportunities created by\nthe internet based economy . it ' s quite obvious that the internet revolution\nwill change the energy industry ' s landscape during the next few years . the\nobjective of the project is to provide answers to the questions posed above ,\nbased on the currently available information . additionally , the participants\nshould come up with fallback strategies the energy companies should implement\nin case the currently ? expected trends fail to materialize .\n\u000f _", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.073+0000", "entityId": 9018, "properties": {"text": "Subject: eol wti maket maker simulation model\njohn ,\nhere is the spreadsheet zimin built for estimaing p / l from trading wti\nforwards . let zimin , vince , or i know if you have questions or comments .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 11 / 20 / 2000\n11 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n11 / 17 / 2000 04 : 37 pm\nto : stinson gibner / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : eol wti maket maker simulation model\nstinson ,\ni add the total p / l due to contract rollover . when the number of trades is\nlarge\nand the spread is not too small , the model prints a lot of money , dominated by\nthose trade earning the half of bo spread .\ni also wrote an explaination about the model on the front page . i think we\nare\nready to deliever the model v . 1 .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.077+0000", "entityId": 9019, "properties": {"text": "Subject: proposal\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.081+0000", "entityId": 9020, "properties": {"text": "Subject: re : pserc iab - who we are\ni have completed the requested questionaire .\nlance\nsjdemarco @ nyseg . com on 11 / 20 / 2000 12 : 56 : 14 pm\nto : james . stoupis @ us . abb . com , arun . arora @ tdb . alstrom . com , dakrummen @ aep . com ,\nbajarang . agrawal @ aps . com , mwtwominer @ bpa . gov , ctwedick @ bpa . gov ,\nphsiang @ caiso . com , james . crane @ exeloncorp . com , mwagee @ duke - energy . com ,\nalex . huang @ enron . com , lance . cunningham @ enron . com , ttayyib @ epri . com ,\nhamid . elahi @ ps . ge . com , huneault @ ireq . ca , mpotishnak @ iso - ne . com ,\nwong @ merl . com , rbs 2 @ pge . com , kip . morison @ powertechlabs . com ,\ndon - sevcik @ reliantenergy . com , dspelley @ srpnet . com , sti @ apk . net ,\nmarty . brett @ wheatland . com , dtbradshaw @ tva . gov , kwmorris @ tva . gov ,\namander @ tristategt . org , bill . muston @ txu . com , w . b . dietzman @ txu . com ,\npmccrory @ txu . com , philip . overholt @ ee . doe . gov , quintana @ wapa . gov ,\ntorgersn @ wapa . gov , paul . walter @ wepco . com , louis . p . matis @ xcelenergy . com\ncc : djray @ engr . wisc . edu\nsubject : pserc iab - who we are\none of the things i would like to accomplish over the next few weeks is for\nwe iab members to build a better working relationship . there have been many\nchanges to pserc over the past year , as well as many new iab members\njoining with their universities . i ' ve felt that i don ' t know most of the\niab members and that makes it difficult for me to feel like i ' m adequately\nrepresenting your needs to the pserc executive committee . i hope to meet\nmany of you in denver and get to know you better , but i think we all need\nto know each other better . i have an idea that might help us and it will\nonly take five minutes of your time .\nif you could take the time to fill out the following short questionnaire\nand email it back to me then i ' ll compile a list and distribute it to you .\ndepending upon when you respond i might be able to hand it out in denver ,\nbut i ' ll be sure to email you a copy later if i have to . this is , of\ncourse , perfectly voluntary , so if you ' re not interested its okay . if you\nwant to respond via a telephone call , i ' m at 607 - 762 - 8825 .\nemail this back to me at sjdemarco @ nyseg . com and copy dennis ray at\ndjray @ engr . wisc . edu .\nthank you very much , steve de marco ( iab chair )\n_ _ _ _\nyour name : lance b . cunningham , p . e .\nyour title : manager\nyour department or division : research , enron north america\nmain r & d related responsibilities of your department or division : market\nmodeling and options pricing\nthe stem area you ' re most interested in ( x one ) :\nmarkets ( xx )\nt & d technology\nsystems\nwhat do you hope to gain from attending the iab meeting : evaluation of pserc\nfor potential membership\nwould you like to add any specific agenda item to the closed iab meeting on\nthursday ?\nno\nare there any specific agenda items that you would like covered in the open\nfeedback session with both the university and industrial pserc members on\nfriday ?\nfuture research plans , applicability of research to industry ( perhaps a list\nof previous research projects )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.086+0000", "entityId": 9021, "properties": {"text": "Subject: mit financial engineering pro - seminar\nvince ,\ni have received a call from mit asking if enron would be interested in\nsponsoring a financial engineering pro - seminar .\nthis means that enron would propose a problem that would have its solution\ndeveloped by students in the financial engineering track . these students\nwould present the findings in the end .\ni think that enron has already sponsored a financial engineering pro - seminar .\ni remember something about real options at the time i was at school .\nplease , let me know if enron has the interest , specifically the research .\ntalking here at the weather desk , mark tawney expressed interest . if you\nagree , we ( the weather desk ) could co - sponsor this pro - seminar with the\nresearch . the idea , then , would be to propose a problem connected to weather\ntrading .\nplease , give me your thoughts about this issue .\nthanks ,\nclaudio", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.091+0000", "entityId": 9022, "properties": {"text": "Subject: forwarded email\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 11 / 20 / 2000\n04 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall\n11 / 07 / 2000 03 : 12 pm\nto : jean eisel\ncc :\nsubject : re : recruiting\ngood afternoon . packing emails - - its just my style : )\ncurrently , it is my understanding that we would like to interview the comp .\nfin . students during the same period that we interview the mba ' s .\ntentatively speaking , one schedule should be sufficient . i will attempt to\nproduce an official job description shortly .\nkristen is out of town for the remainder of the week , so her response to any\ninquiries may be delayed . her contact info : kristin . gandy @ enron . com 713\n345 3214\nregarding the satellite program , vince is interested in the ecommerce\nprogram . we think that it would be easier to keep the program full as\ncompared to the comp . fin . program .\nit was a pleasure to be back in pittsburgh and i enjoyed meeting all the\nstudents from this year ' s comp . fin . class . i look forward to seeing you in\na few weeks .\n- kevin kindall\njean eisel on 11 / 06 / 2000 03 : 34 : 05 pm\nto : kevin . kindall @ enron . com\ncc : sgould @ andrew . cmu . edu\nsubject : re : recruiting\nhi kevin\nwow you sure do pack one e - mail .\ni will try to answer questions . . . after each of you . . . look in the email\nfor answers .\n- - on monday , november 06 , 2000 , 2 : 39 pm - 0600 kevin . kindall @ enron . com wrote :\n> hello . it was a pleasure to come back to cmu , and i enjoyed\n> interacting with the students . vince k . has expressed interest in\n> interviewing the computational finance students . enron will conduct first\n> round interviews with the mba students in december , and would like to set\n> up seperate interviews for the comp . fin . students . enron would like to\n> interview all the pittsburgh based comp . fin students , and we need to\n> select a date and a time .\nwe are excited that you want to interview the comp finance students .\ndo you want to do it in dec . or before ? let me know what best suits you .\nsince there are only 16 individuals in the pittsburgh area . . . we should be\nable to accomodate you . . . would you want one or two schedules . . ?\nwhat is the formal protocol in such matters ?\n>\nall you need to do is let me know some ideal dates . . . and you send a job\ndescription and names of the students you want to interview .\nwe will try to be as accomodating as possible .\n> enron is also interested in the ecommerce students as we have\n> ecommerce initiatives underway . it is my understanding that kristen\n> gandy will be the contact for such activities .\nif you can send me an e - mail address for kristen , i can get this strating\nasap .\n>\n> regarding a houston based satellite program , vince needs a proposal\n> in writing . would you be so kind as to send one ?\nwhat program is vince interested in having a satellite program ? when he was\nhere he seemed less intererted in comp finance and more interested in\ne - commerce .\ni sent a note to michael shamos and tridas discussing this .\nlet me know which program and i will see if we can work anything out ?\n> thanks so much , and i look forward to seeing you again in a few\n> weeks .\n>\nthanks kevin for you speedy response .\n>\n>\n>\n>\njean e . eisel , ph . d .\nassociate dean , admissions , coc and alumni relations\ngsia\ncarnegie mellon university\npittsburgh , pa 15213\n412 - 268 - 2277\n412 - 268 - 4146 ( fax )\ncurrently in the news : carnegie mellon university mba program ranked 14 th\nin business week ' s list of the best graduate schools of business in the\nunited states .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.099+0000", "entityId": 9023, "properties": {"text": "Subject: recruiting\ni received this email some time ago , and may not have forward it to you . i\napologize for any oversight on my part . i ' ll also forward the email that i\nsent as a response .\nthis , coupled with the information from sally gould , should get the comp .\nfin . interview process started .\n- kevin k .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 11 / 20 / 2000\n04 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njean eisel on 11 / 06 / 2000 03 : 34 : 05 pm\nto : kevin . kindall @ enron . com\ncc : sgould @ andrew . cmu . edu\nsubject : re : recruiting\nhi kevin\nwow you sure do pack one e - mail .\ni will try to answer questions . . . after each of you . . . look in the email\nfor answers .\n- - on monday , november 06 , 2000 , 2 : 39 pm - 0600 kevin . kindall @ enron . com wrote :\n> hello . it was a pleasure to come back to cmu , and i enjoyed\n> interacting with the students . vince k . has expressed interest in\n> interviewing the computational finance students . enron will conduct first\n> round interviews with the mba students in december , and would like to set\n> up seperate interviews for the comp . fin . students . enron would like to\n> interview all the pittsburgh based comp . fin students , and we need to\n> select a date and a time .\nwe are excited that you want to interview the comp finance students .\ndo you want to do it in dec . or before ? let me know what best suits you .\nsince there are only 16 individuals in the pittsburgh area . . . we should be\nable to accomodate you . . . would you want one or two schedules . . ?\nwhat is the formal protocol in such matters ?\n>\nall you need to do is let me know some ideal dates . . . and you send a job\ndescription and names of the students you want to interview .\nwe will try to be as accomodating as possible .\n> enron is also interested in the ecommerce students as we have\n> ecommerce initiatives underway . it is my understanding that kristen\n> gandy will be the contact for such activities .\nif you can send me an e - mail address for kristen , i can get this strating\nasap .\n>\n> regarding a houston based satellite program , vince needs a proposal\n> in writing . would you be so kind as to send one ?\nwhat program is vince interested in having a satellite program ? when he was\nhere he seemed less intererted in comp finance and more interested in\ne - commerce .\ni sent a note to michael shamos and tridas discussing this .\nlet me know which program and i will see if we can work anything out ?\n> thanks so much , and i look forward to seeing you again in a few\n> weeks .\n>\nthanks kevin for you speedy response .\n>\n>\n>\n>\njean e . eisel , ph . d .\nassociate dean , admissions , coc and alumni relations\ngsia\ncarnegie mellon university\npittsburgh , pa 15213\n412 - 268 - 2277\n412 - 268 - 4146 ( fax )\ncurrently in the news : carnegie mellon university mba program ranked 14 th\nin business week ' s list of the best graduate schools of business in the\nunited states .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.106+0000", "entityId": 9024, "properties": {"text": "Subject: re : carnegie mellon recruiting\ngood afternoon . i have forwarded your email to kristin gandy . she is\nheading up our cmu recruiting effort . some contact info : ( 713 ) 345 3214 ,\nkristin . gandy @ enron . com\nwe are very interested in the comp . fin . students , and would tentatively\nlike to interview them in december , probably the week of the 11 th , and around\nthe same time that we come to interview the mba ' s .\ni ' m uncertain as to the proper path forward . could you provide some details ?\nregards ,\nkevin kindall\nsallygould on 11 / 16 / 2000 03 : 38 : 44 pm\nto : kevin . kindall @ enron . com\ncc :\nsubject : carnegie mellon recruiting\nkevin ,\njean eisel asked that i connect with you about recruiting comp . finance\nstudents .\nplease contact me with questions you might have about the recruiting\nprocess or if you have some dates in mind for coming to campus .\ni look forward to hearing from you .\nregards ,\nsally gould\nrecruiting coordinator\ngsia - carnegie mellon university\n412 - 268 - 1311\n412 - 268 - 4146 ( fx )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.111+0000", "entityId": 9025, "properties": {"text": "Subject: hotel for the wharton trip\njennifer ,\nthis is the address of the hotel within a walking distance to the wharton\nschool .\nplease , make the reservation for jeff shankman at this hotel for the december\nthe 6 th meeting .\nvince kaminski\nhttp : / / www . innatpenn . com / contact . html\nthe inn at penn\nsansom common , 3600 sansom street\nphiladelphia , pa . 19104\nphone : 1 - 800 - 809 - 7001\nfax : 215 - 222 - 4600\nplease , mention that the stay is related to the university business\nwhen making the reservation .\ntom piazze at wharton can confirm it .\ntom piazze\nphone : ( 215 ) 898 1615\npiazzet @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.116+0000", "entityId": 9026, "properties": {"text": "Subject: the inn at penn\ndanielle\nfyi . this is the information regarding the best hotel\nfor the meeting on december the 6 th , 9 : 00 - 12 : 00 .\nvince\nhttp : / / www . innatpenn . com / contact . html\nthe inn at penn\nsansom common , 3600 sansom street\nphiladelphia , pa . 19104\nphone : 1 - 800 - 809 - 7001\nfax : 215 - 222 - 4600\nplease , mention that the stay is related to the university business\nwhen making the reservation .\ntom piazze at wharton can confirm it .\ntom piazze\nphone : ( 215 ) 898 1615\npiazzet @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.120+0000", "entityId": 9027, "properties": {"text": "Subject: gone tuesday\nvince ,\na reminder that i ' m gone on tuesday to spearman .\nstatus of projects :\n1 . compound option for power structuring ( bernie , edith cross , nick ? )\nalex has finished the model . paulo has done some validation so we can\nprobably release it .\nthis is will be used for an exotic book , so we may have to help with var\ninterface , etc .\n2 . followed up with laine borgman on dg contract . we still need legal ' s\nsign off .\n3 . left a message and email about tom barkley with molly magee and told tom\nthat an offer would be coming by next week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.124+0000", "entityId": 9028, "properties": {"text": "Subject: re : holidays and vacations\ntanya ,\nno problem .\nvince\ntanya tamarchenko\n11 / 20 / 2000 02 : 52 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : holidays and vacations\nshirley ,\ni am planning to take the following days off in december :\n12 / 21 , 12 / 22 , 12 / 27 , 12 / 28 .\ni ' d like to take 12 / 21 as discretionary day , and 3 other days as vacation\ndays .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.129+0000", "entityId": 9029, "properties": {"text": "Subject: christmas vacation\nshirley ,\ni plan to take off the 3 days after christmas for vacation , december 27 , 28 ,\nand 29 th . please mark on your calendar . since vasant is out , i checked with\nvince and he gave the ok as long as we have coverage .\nthanks ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.134+0000", "entityId": 9030, "properties": {"text": "Subject: re : file cabinet for mike roberts\nkevin g moore\n11 / 20 / 2000 12 : 14 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : re : file cabinet for mike roberts\nthis file cabinet will also be located on the\n32 nd floor .\nwhat i will try and attempt is keeping all weather data nearby therefore ,\nonce\nwe move into the new building the information will not be lost .\nthanks\nkevin moore\nshirley crenshaw\n11 / 20 / 2000 11 : 24 am\nto : vince j kaminski / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect\nsubject : file cabinet for mike roberts\nvince :\nsince we have to clear kevin ' s office for the new employee jaesoo lew ,\ncan kevin order a tall file cabinet to put the material in ?\nthanks !\nshirley\nvince j kaminski\n11 / 20 / 2000 10 : 55 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : \" skunkworks \" meeting with scott tholan\nshirley ,\nno , that ' s it .\nvince\nshirley crenshaw\n11 / 20 / 2000 10 : 06 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect\nsubject : \" skunkworks \" meeting with scott tholan\nthe \" skunkworks \" meeting with scott tholan scheduled for this wednesday ,\nthe 22 nd has been cancelled , per scott tholan .\nmike / vince : is there anyone else , that needs to be notified ?\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.139+0000", "entityId": 9031, "properties": {"text": "Subject: file cabinet for mike roberts\nvince :\nsince we have to clear kevin ' s office for the new employee jaesoo lew ,\ncan kevin order a tall file cabinet to put the material in ?\nthanks !\nshirley\nvince j kaminski\n11 / 20 / 2000 10 : 55 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : \" skunkworks \" meeting with scott tholan\nshirley ,\nno , that ' s it .\nvince\nshirley crenshaw\n11 / 20 / 2000 10 : 06 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\ncc : kevin g moore / hou / ect @ ect\nsubject : \" skunkworks \" meeting with scott tholan\nthe \" skunkworks \" meeting with scott tholan scheduled for this wednesday ,\nthe 22 nd has been cancelled , per scott tholan .\nmike / vince : is there anyone else , that needs to be notified ?\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.144+0000", "entityId": 9032, "properties": {"text": "Subject: personal time on tuesday , nov . 21 , 2000\nshirley :\njust a reminder that i had requested time - off on tuesday , november 21 , 2000 ,\nto attend a school function that i attend every year for a little friend of\nours . i know you will be on vacation but leann will be here to help vince\nor any of the rest of the department . i would not normally take off when you\nare gone , but this is really important to riley and i hate to disappoint\nhim . his school has grandparents day the tuesday before thanksgiving every\nyear . he does not have grandparents that can attend so he has always asked\nmy husband and i to come as his special friends . usually , al could just go\nalone but as you know he is in hawaii taking care of his father and will not\nbe here tomorrow . i have worked enough extra hours to cover the time i will\nbe off ( 9 : 00 am to 1 : 00 pm or 1 : 30 pm ) . i appreciate your consideration and\nthanks in advance if we can work this out .\nanita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.149+0000", "entityId": 9033, "properties": {"text": "Subject: christmas baskets\nkevin :\nplease add the copy center and the graphics people for a tray .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 20 / 2000\n11 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n11 / 17 / 2000 10 : 07 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : christmas baskets\nshirley , may i send a basket or tray to the copy center and to the graphics\npeople for the work they did on the ees seminars ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 11 / 17 / 2000 10 : 02\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore @ ect\n11 / 10 / 2000 09 : 32 am\nto : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , anita dupont / na / enron @ enron\ncc :\nsubject : christmas baskets\nhere is the final list for christmas baskets for this year\nwith the exception of stinson gibner and vasant shanbhogue .\nany comments or questions please call x 34710 .\nthanks\nkevin moore\nwe still have plenty of time . . . . . .\ndeadline date : december 12 , 2000", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.154+0000", "entityId": 9034, "properties": {"text": "Subject: re : d - g energy\nplease let me know when you send it to legal , so i can track the progress .\nthanks ,\n- - stinson\nfrom : laine borgman @ enron on 11 / 20 / 2000 03 : 23 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : re : d - g energy\nstinson , attached is the final version of the sofware license agreement .\nprior to any signatures being placed on the document by enron , i need to send\nthe document to our legal counsel for his sign - off by initialing .\nlaine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.159+0000", "entityId": 9035, "properties": {"text": "Subject: request submitted : access request for stewart . range @ enron . com\nstinson ,\nhe is looking for blanket approach to our disk , both read and write .\nis it legitimate ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 20 / 2000\n03 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem @ mailman . enron . com on 11 / 20 / 2000 02 : 37 : 25 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : request submitted : access request for stewart . range @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000007876\napprover : stinson . gibner @ enron . com\nrequest create date : 11 / 20 / 00 2 : 36 : 29 pm\nrequested for : stewart . range @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.164+0000", "entityId": 9036, "properties": {"text": "Subject: request submitted : access request for stewart . range @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000007876\napprover : stinson . gibner @ enron . com\nrequest create date : 11 / 20 / 00 2 : 36 : 29 pm\nrequested for : stewart . range @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.168+0000", "entityId": 9037, "properties": {"text": "Subject: site license for power world\ngentleman ,\nkevin presto concurred on the purchase of a site license as recommended by\nvince . what are the thoughts of others ? i am available to demo the package\nif others would like to see it .\nthanks ,\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 11 / 20 / 2000\n01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n11 / 10 / 2000 09 : 16 am\nto : vince j kaminski / hou / ect @ ect , richard lewis / lon / ect @ ect , tim\nbelden / hou / ect @ ect , tim . heizenrader @ enron . com , kevin m presto / hou / ect @ ect ,\ngeorge hopley / hou / ect @ ect\ncc : lance cunningham / na / enron @ enron\nsubject : site license for power world\ngentlemen ,\ni recommend that we purchase this package and split the cost 3 ways between 3\npower trading desks .\ni think that we should go for option 3 ( ~ $ 15 , 000 ) .\nlance cunningham in my group looked at this software package and found it\nvery useful for modeling transmission problems .\nplease , feel free to ask him for technical details in support of this\nrecommendation .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 10 / 2000\n09 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlance cunningham @ enron on 11 / 09 / 2000 06 : 15 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : site license for power world\nvince ,\nwe have three options to increase our availability across enron for the power\nworld load flow software .\noption 1 , upgrade to a site license for the load flow software only . price\n$ 9 , 990 . 00\nthis would give all of enron the ability to perform load flows , but not\ndetermine marginal cost or available transfer capacity ( atc ) because only the\noptimal power flow ( opf ) version can perform that task .\noption 2 , site license for the load flow and purchase 1 opf package for\nwalter coffer ' s group . price $ 11 , 240 .\nthis would give all of enron the ability to perform load flows and one other\ngroup the ability to determine marginal cost and atc .\noption 3 , site license for load flows , opf and atc . price $ 14 , 990 . 00\nthis would give all of enron the ability to perform load flows , marginal\ncost , and atc .\nregards ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.174+0000", "entityId": 9038, "properties": {"text": "Subject: request submitted : access request for mraymon @ enron . com\nyou have received this email because the requester specified you as their\nmanager . please click\napproval to review and act upon this request .\nrequest id : 000000000007494\nrequest create date : 11 / 15 / 00 12 : 57 : 59 pm\nrequested for : mraymon @ enron . com\nresource name : vpn\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.179+0000", "entityId": 9039, "properties": {"text": "Subject: re : information\ndear mr kaminski :\nthank you very much for your help .\nsincerely ,\nyann\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , november 21 , 2000 10 : 05 am\nto : ydhallui @ elora . math . uwaterloo . ca\ncc : vince . j . kaminski @ enron . com\nsubject : re : information\nyann ,\ni have forwarded this request to a member of my group who\nsupports enron broadband services .\nhe will check into availability of data and confidentiality issues .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.184+0000", "entityId": 9040, "properties": {"text": "Subject: information\nshalesh ,\nplease , look into it . can we give them this information ?\ni see a remote possibility of a gain for enron : it ' s in our interest to\nsupport\nthe growth of this market and part of the process is development of the\ninfrastructure for this market and maintaining public interest .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 21 / 2000\n09 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" yann d ' halluin \" on 11 / 16 / 2000 01 : 18 : 39 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : information\ndear sir :\nthe scientific computation group at the university of\nwaterloo , ontario , canada , has recently started to be very\ninterested in the recent developments of the bandwidth\nmarket . we find that the specifics of the bandwidth market\noffer challenges from the modelling point\nof view .\nhowever , we have encountered difficulties when looking for\ndata , and we were wondering if you could help us . specifically\nwe would like to know for a given city pair for the different\nexisting type of lines ( e . g . oc 3 , ocl 2 , oc 48 . . . . )\n1 . what has been the spot lease prices ( e . g . $ / line - type / mile ) for\nthe past 12 months ?\n2 . what is the price of the dark fiber for a given type of line ?\n3 . what is the maintenance cost $ / month ?\n( for the same lines , e . g . oc 3 , ocl 2 , oc 48 , . . . )\n4 . what is the upgrading cost for the different lines ?\n( e . g . how much does it cost to upgrade )\noc 3 - - > ocl 2\noc 3 - - > oc 48\nocl 2 - - > oc 48\n5 . how long does it take to upgrade a line from a certain\ncapacity to another ( e . g . 1 month , 2 month , . . . ) ?\nwe realize that some of these questions may ask for confidential\ndata , in that case we would really appreciate if an order of magnitude\nwas provided . i look forward to hearing from you .\nsincerely ,\nyann d ' halluin\np . s : here is a link to our web page :\nhttp : / / www . scicom . uwaterloo . ca\n- -\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . any unauthorized review , use , disclosure or distribution\nis prohibited . if you are not the intended recipient , please contact\nthe sender by reply e - mail and destroy all copies of the original\nmessage .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.188+0000", "entityId": 9041, "properties": {"text": "Subject: re : new risk management book\nvince ,\nthanks so much ,\npedro fernando\nvince j kaminski @ ect\n11 / 21 / 2000 01 : 17 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : pedro fernando manrique / enron _ development @ enron _ development , vince j\nkaminski / hou / ect @ ect\nsubject : re : new risk management book\nshirley ,\nplease , send a copy of the book to pedro fernando .\nvince\npedro fernando manrique @ enron _ development\n11 / 15 / 2000 02 : 04 pm\nto : vince j kaminski @ ect\ncc :\nsubject : new risk management book\nvince ,\nin colombia we are setting up a trading operation and would be nice to have a\ncopy of the new book for our reference . please let us know how we can get\naccess to a copy .\nmany thanks ,\npedro fernando", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.194+0000", "entityId": 9042, "properties": {"text": "Subject: feedback forms\nvince ,\nhere are the feedback forms for the following :\nvp and md\nmanager and professional\nadministrative support\nlet me know if you have any other questions .\nnorma\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.199+0000", "entityId": 9043, "properties": {"text": "Subject: research prc next steps\nthe pep system is no longer available to accept feedback from reviewers . if\nnecessary , you can still call the employee ' s reviewers who have not submitted\nfeedback via the pep system . verbal feedback can be included as part of the\nconsolidated review .\nthe following is a list of action items for next steps for supervisors :\naction item deadline\nprint consolidated feedback wednesday , nov 22\nthanksgiving holidays thursday - friday november 23 - 24\nreview / approve employees peer group and supervisor ( hr will provide report\nby 11 / 21 ) tuesday , november 28\npre - rank employees based on consolidated feedback tuesday , november 28\nsend pre - rankings to norma via encrypted e : mail wednesday , november 29\nvince will review pre - rankings monday , december 4 , 2000\nena research prc meeting friday , december 8\nwritten / verbal review provided to employee december 20 - january 20\nsigned review form due to hr january 27 , 2000\nforward to appropriate parties , with sensitivity of the confidentiality of\nthis information . if you have questions regarding the prc process please\nfeel free to call me .\nnorma villarreal\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.204+0000", "entityId": 9044, "properties": {"text": "Subject: in confidence : prc summary\nhi vince\nfollowing our prc meeting yesterday , here are the high - level facts as i\npresented them :\nben parsons , overall : satisfactory . good interpersonal skills , we have\nquestions on his quant abilities . reluctant to discuss / share his modelling\nwork , and that which i have seen has too many hand fixes to give me\nconfidence in his rigour . other enroncredit . com feedback indicates that he\nis sometimes prepared to compromise quant analysis to keep the traders happy .\nmatthew williams , overall : excellent . superior quant skills , excellent\neverywhere else . recommended for promotion to senior specialist .\nkirstee hewitt , overall : excellent . a solid all - round performance , and a\nhuge workload . in recognition of the level of responsibility kirstee is\nbearing i ' m recommending her for promotion to senior specialist .\nsharad agnihotri , overall : excellent . superior quant skills , excellent\neverywhere else . very self - directed and commercial - minded . already\noperating at manager level in my opinion . flagged for promotion next\nmid - year if performance continues at this level .\nslava danilov , overall : excellent . superior quant skills , excellent\neverywhere else . as a non - commercial - type quant he is hard to fault , but\nwill probably never work on a trading desk . already operating at manager\nlevel in terms of his depth and rigour of analysis , and the extent to which\nhe is contributing to the team . flagged for promotion next mid - year if\nperformance continues at this level .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.213+0000", "entityId": 9045, "properties": {"text": "Subject: re : mba career opportunity\nvince ,\nthanks for your consideration . please let me know details for the phone\ninterview at your earliest convenience .\nhappy thanksgiving .\nqing\n- - - - - original message - - - - -\nfrom :\nto :\nsent : tuesday , november 21 , 2000 8 : 45 am\nsubject : re : mba career opportunity\n>\n> christine ,\n>\n> we shall arrange a phone interview with you .\n>\n> vince\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.221+0000", "entityId": 9046, "properties": {"text": "Subject: iris m . mack\nms . mack has called you several times today trying to return your call . she\nis currently in new york until december 2 , 2000 . ms . mack is interested in\ntalking with you regarding a position here . she is currently on vacation in\nnew york and she will be difficult to reach . i suggested that she try to\nreach you by phone at 8 : 00 am our time tomorrow . also , she will be checking\nher emails and voice mails regularly if you can give her a time and a phone\nnumber where she might reach you whiole she is on vacation .\nif she is unable to reach you before the holiday , she left some phone\nnumbers where she may be reached beginning tuesday , november 28 , 2000 in new\nyork .\ntuesday , november 28 - thursday , november 30\nwashington square hotel\n212 - 777 - 9515\nfriday , december 1 - saturday , december 2\nmarriott hotel\n212 - 385 - 4900\nalso , her email is irismmack @ hotmail . com . she said you need both m ' s .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.226+0000", "entityId": 9047, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nhi again ,\ni am visiting several family members and friends over the next few days .\ntherefore it will be hard to contact me .\nhowever , next week i will be easier to reach . my contact details in nyc are\nas follows . i will be staying at the following hotels :\nwashington square hotel\nfrom november 28 th for 3 nights ( tue , wed and thur )\n212 . 777 . 9515\nmarriott nyc financial\ndecember lst for 1 night ( fri )\n212 . 385 . 4900\nat any rate , i will still try to reach you on tomorrow morning . if all\nfails , we will try to reach each other next week .\nhappy thanksgiving ,\niris\n> from : \" iris mack \"\n> to : vince . j . kaminski @ enron . com\n> subject : re : f / u to dr . kaminski @ enron from iris mack\n> date : tue , 21 nov 2000 22 : 07 : 09\n>\n> hi ,\n>\n> how are you ? seems like we have had a bit of difficulty contacting each\n> other . sorry i missed your call . i am now in nyc - until december 2 nd .\n>\n> i will try to call you on tomorrow morning about 8 am houston time .\n>\n> take care ,\n> iris\n>\n>\n>\n>\n> > from : vince . j . kaminski @ enron . com\n> > to : irismmack @ hotmail . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : hello\n> > date : tue , 21 nov 2000 15 : 14 : 31 - 0600\n> >\n> > iris ,\n> >\n> > we are trying to reach you but we are getting error messages .\n> > please , call me 713 853 3848 .\n> >\n> > vince\n> >\n> >\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.231+0000", "entityId": 9048, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nhi ,\nhow are you ? seems like we have had a bit of difficulty contacting each\nother . sorry i missed your call . i am now in nyc - until december 2 nd .\ni will try to call you on tomorrow morning about 8 am houston time .\ntake care ,\niris\n> from : vince . j . kaminski @ enron . com\n> to : irismmack @ hotmail . com\n> cc : vince . j . kaminski @ enron . com\n> subject : hello\n> date : tue , 21 nov 2000 15 : 14 : 31 - 0600\n>\n> iris ,\n>\n> we are trying to reach you but we are getting error messages .\n> please , call me 713 853 3848 .\n>\n> vince\n>\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.235+0000", "entityId": 9049, "properties": {"text": "Subject: re : tage resume submittal\nvince ,\nthanks for forwarding the resume . we have generally had great success with\nex - koch people .\nhe sounds might like he may be a good fit for michael l . miller in principal\ninvestments . at this point\ni have very recently inherited two other stron vps from ei and therefore will\nprobably focus on a few\nmanager and associates for the near term but i would like to keep james '\nresume for further opportunities .\nhe sounds like someone we should at least meet with and figure out a spot\nwithin wholesale services .\nwhat do you think ?\nregards ,\n- larry -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.240+0000", "entityId": 9050, "properties": {"text": "Subject: job description\ngood afternoon . here is the job description for the computational finance\nstudents . we should have our preferred interview dates shortly . please let\nus know if you have any questions , and have a happy thanksgiving .\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.245+0000", "entityId": 9051, "properties": {"text": "Subject: re : greetings\ncarlos ,\nplease , forward their resumes to us and we shall set up an interview for them .\nvince\ncarlos ordonez on 11 / 21 / 2000 09 : 30 : 08 am\nto : stinson . gibner @ enron . com\ncc : vkamins @ enron . com\nsubject : re : greetings\ndear vincent and stinson ,\nboth my students would love to come visit you guys for an informal\nvisit in the near future . please let me know well ahead of time\nwhen they can come . if possible , see to it that their parking expenses\nbe paid when they do come .\ni ' ll be in touch with you all over the next months about this and\na possible postdoctoral / trainee agreement ( world lab . ) .\ncheers ,\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.249+0000", "entityId": 9052, "properties": {"text": "Subject: mba career opportunity\nshirley ,\nplease , arrange a phone interview . tt , vk , sg , zl .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 21 / 2000\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" qing chen \" on 11 / 17 / 2000 06 : 01 : 28 pm\nto :\ncc :\nsubject : mba career opportunity\ndear ? vincent kaminski :\n?\ni got your contact details from the web site for power marketers . i have a\nstrong interest in pursuing a career in the energy industry ? with a top\nenergy company like ? enron , where my abilities and qualifications can be\nfully applied for our mutual benefit .\ni am graduating in may with an mba ? degree with concentrations in finance and\ninformation systems . this summer i worked ? as an intern with structuring and\nanalytics group of ameren energy . ? this internship ? has been especially\nchallenging and has enhanced my professional competencies . while there , i\nwas afforded the opportunity to ? develop a forward view model ? for ? off -\npeak ? electricity price forecasting and analyze the data sets of a\nfundamental ? model to create forward price curves . both projects added value\nto the company and provided me with first - hand experience in the area of\nenergy trading and marketing as well as modeling techniques .\nin addition , i have an undergraduate degree in mechanical engineering and\ntwo years ' experience in power generating . with my work experience in energy\nfinance and exceptional academic and professional achievements , along with\nmy exemplary leadership and management potential and outstanding analytical ,\nbusiness communication , problem - solving and computer skills , i ' m convinced\nthat i will be able to make immediate contributions to your company .\ni am attaching my resume for your review . should you have any questions or\nneed clarification , please feel free to contact me at ( 504 ) 861 - 9110 or\nqchenl @ tulane . edu .\nas i have some offers with deadlines approaching , i would appreciate it if\nyou could give me a quick response . i also expect ? a base compensation above\n$ 75 k . i look forward to ? hearing from you soon .\n?\nbest regards ,\nqing ( christine ) chen\nmba 2001\na . b . freeman school of business\ntulane university\ntel : ( 504 ) 861 - 9110\n- resumeus . doc\n- resumeus txt . txt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.254+0000", "entityId": 9053, "properties": {"text": "Subject: phone interview\nshirley ,\nplease , arrange a phone interview next week . tt , sg , zl , vk .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 21 / 2000\n08 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnina knirel on 11 / 20 / 2000 05 : 13 : 47 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject :\n708 graham place # 207\naustin , tx 78705\nnovember 20 , 2000\ndear mr . kaminski :\ni read with interest your company \u0001 , s description on the\nweb page . i was highly impressed by the work that\nenron corporation does and would like to inquire about\nemployment opportunities with your company .\nenclosed is a copy of my resume that details my\nacademic qualifications and practical experience . i am\nexcited about stepping into a position , which will\nutilize my technical , analytical , and interpersonal\nskills in a fast paced environment , and look forward\nto expanding my horizons with new challenges and\nopportunities that enron corporation will offer . i\nknow from customer and supervisor feedback that i have\nthe interpersonal skills imperative to building a\nsuccessful career at the enron corporation and am\nmotivated to do so . your firm has an excellent\nreputation and i genuinely look forward to becoming a\npart of the enron corporation community .\ni know you must be busy during this time of the year ,\nbut i would sincerely appreciate a few minutes of your\ntime . i plan to call you within the next seven days to\ndiscuss how my education , practical skills , and\nbackground would qualify me as a member of your\ncompany . in the meantime , if you need to contact me ,\nmy daytime and nighttime number is ( 512 ) 474 - 6683 and\nmy e - mail address is knirel @ mail . utexas . edu .\nthank you very much for your time and consideration . i\nlook forward to talking to you .\nsincerely ,\nnina knirel\ndo you yahoo ! ?\nyahoo ! calendar - get organized for the holidays !\nhttp : / / calendar . yahoo . com /\n- knirel resume final [ 1 ] . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.258+0000", "entityId": 9054, "properties": {"text": "Subject: hello vince\nvince ,\ntwo things . do you have any comments on the interview document ? second , i\nwant to submit a proposal to the european financial management association\nmeetings for next may based on our paper . the meeting is in may and is\nheld in paris . hope you can come ( assuming the program committee likes our\nproposal - - i won the best paper award at last year ' s meeting so maybe we can\ndo it again ) .\nlooking forward to hearing form you so i can get bob ' s response to the\nquestions .\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.263+0000", "entityId": 9055, "properties": {"text": "Subject: visit to wharton , december 6\ni would like to invite you to join mewhen i visit to the wharton risk\nmanagement and decision processes center on\ndecember 6 . the meeting will take place in the morning , 9 : 00 - 12 : 00 ,\nfollowed by lunch .\nthe description of the center is at the bottom of the message . the web site\naddress is\nthe objective of the trip is to discuss joint research projects in the area\nof risk management and alternative risk\ntransfer .\nplease , feel free to contact me with recommendations regarding discussion\nand potential research topics .\nthe best hotel to stay in is the inn at penn .\nhttp : / / www . innatpenn . com / contact . html\nthe inn at penn\nsansom common , 3600 sansom street\nphiladelphia , pa . 19104\nphone : 1 - 800 - 809 - 7001\nfax : 215 - 222 - 4600\nvince kaminski\nthe mission of the wharton risk management\nand decision processes center is to carry\nout a program of basic and applied research\nto promote effective policies and programs for\nlow - probability events with potentially\ncatastrophic consequences . the center is especially\nconcerned with natural and technological\nhazards and with the integration of industrial risk\nmanagement policies with insurance . the\ncenter is also concerned with promoting a\ndialogue among industry , government ,\ninterest groups and academics through its research\nand policy publications and through\nsponsored workshops , roundtables and forums .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.268+0000", "entityId": 9056, "properties": {"text": "Subject: re : hotel for the wharton trip\nhi vince -\njeff wanted me to let you know that he will not be able to go w / you on dec .\n6 th to wharton . a meeting has come up that he must attend . sorry for the\nshort notice . thanks !\njennifer\nvince j kaminski\n11 / 20 / 2000 04 : 34 pm\nto : jennifer burns / hou / ect @ ect\ncc : jeffrey a shankman / hou / ect @ ect , vince j kaminski / hou / ect @ ect ,\npiazzet @ wharton . upenn . edu\nsubject : hotel for the wharton trip\njennifer ,\nthis is the address of the hotel within a walking distance to the wharton\nschool .\nplease , make the reservation for jeff shankman at this hotel for the december\nthe 6 th meeting .\nvince kaminski\nhttp : / / www . innatpenn . com / contact . html\nthe inn at penn\nsansom common , 3600 sansom street\nphiladelphia , pa . 19104\nphone : 1 - 800 - 809 - 7001\nfax : 215 - 222 - 4600\nplease , mention that the stay is related to the university business\nwhen making the reservation .\ntom piazze at wharton can confirm it .\ntom piazze\nphone : ( 215 ) 898 1615\npiazzet @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.273+0000", "entityId": 9057, "properties": {"text": "Subject: phone interview\nper our conversation yesterday , i will have a job description for the comp\nfinance students sometime today . i have also gone through the mba resume\nstack yet again . the person who requested the phone interview is troy\nmischke . he works for pratt & whitney in florida . cmu has a flexmode\nprogram , which is another phrase for distance learning .\nit turns out that there are a number of people that work for pratt & whitney\nin florida . my guess is that they all know each other , and decided to take\nthe flexmode program together . here are the names\ntony garcia\nk . todd kuykendall\ntimothy leonard\ntroy mischke\nonly troy requested the phone interview , although tony gacia did send a\ncover letter . what is the best path forward ?\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.278+0000", "entityId": 9058, "properties": {"text": "Subject: re : digitals\nmany thanks .\ngillian .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.283+0000", "entityId": 9059, "properties": {"text": "Subject: re : 2001 budget for research\nbecky ,\nbecky ,\ni have called you this morning about it . it makes perfect sense .\nvince\nbecky pham\n11 / 21 / 2000 10 : 09 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : 2001 budget for research\ncan i reduce your budget based on the suggestion below ? please let me know\nbecause our deadline is wednesday , november 22 . thanx .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 11 / 21 / 2000 10 : 08 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbecky pham\n11 / 15 / 2000 02 : 58 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : 2001 budget for research\nsir ,\ni just got word that your bottom line needs to be 2 , 200 k . this is net of\ncorp charges and intercompany billings . in order to get to this number , we\nhave to reduce your budget by 83 k . do you have any suggestions in which\ncategory ( ies ) we need to reduce ?\nbudget 10 , 521 , 000\ni / c billings 8 , 238 , 000\nsubtotal 2 , 283 , 000\nper delainey 2 , 200 , 000\nneed to dec by 83 , 000\nhere are my suggestions based on oct expenses :\ncategory oct expense budget decrease yearly amount\nperiodical / subscription 5 , 200 10 , 000 3 , 000 36 , 000\ntuition and reimbursement 11 , 000 21 , 000 4 , 000 48 , 000\nthis will bring you to the bottom line suggested by delainey . please let me\nknow your decision by november 21 . if you have any questions , call me at\n5 - 7094 . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.287+0000", "entityId": 9060, "properties": {"text": "Subject: re : letter to nesbitt\nvince ,\nyour note looks good to me , short and to the point .\ni assume this will prompt further detailed discussions with dale . i would\nwant to clarify that we are primarily interested in the long term gas model\nand database for north america . unless a familiarity with the short term\nmodel is a prerequisite , i doubt that we would want to spend a lot of time on\nit .\ndepending upon how long it would take to become familiar with the long term\nmodel , it might be helpful to have access in both omaha and houston ?\nwe would eventually need specifications for the computer system we would need\nfor testing the model . steve hotte , cio for ets , would co - ordinate the\nin - house installation for us . at some point , it will be helpful to get steve\nin contact with the appropriate marketpoint it rep .\nassuming that you get acceptable clarification of these issues , dale should\nprobably send to us a modified licensing agreement for review .\nlet me know what i should do next .\njng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.292+0000", "entityId": 9061, "properties": {"text": "Subject: letter to nesbitt\njohn ,\nthe outline of a message to nesbitt .\ndale ,\nthanks for your message . in our phone conversation before the meeting you\nmentioned\nanother contractual arrangement under which we could work with your company\nemployees on a case - study .\nthe cost of a weekly project would be $ 12 , 000 that would be applied to the\npurchase price should\nwe go ahead and decide to acquire the software . this project would allow us\nto evaluate the model and\ncome up with an estimate of the manpower necessary to support the model\ninternally .\nplease , let me know more about this option .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.296+0000", "entityId": 9062, "properties": {"text": "Subject: the equipment you ordered is in stock .\n- - - automatic notification system ( request # : ecth - 4 r 5 mlm , po # : 20110550 )\nrequested for : vince j kaminski\nrequested by : shirley crenshaw\nyour equipment ( see below ) has arrived . please allow 3 to 5 days for\nconfiguration . you will be notified when a technician has been assigned .\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop\n21 \" vl 100 monitor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.301+0000", "entityId": 9063, "properties": {"text": "Subject: re : enron exotica options library\npatrick ,\nplease , contact zimin lu , 713 853 6388 .\nvince\npatrick markey\n11 / 21 / 2000 05 : 15 am\nto : vince j kaminski / hou / ect @ ect\ncc : patrick markey / hou / ect @ ect\nsubject : enron exotica options library\nvince ,\ni am trying to price a crack spread option utilizing either of the following\nmodels in the exotica library :\n1 . spread options by 1 - d integration - sprdopt\n2 . spread options on asian spreads - asnsprd\nhow do i get access to these options models ? who can i visit with in the\nhouston group if i have any questions regarding the models . your help would\nbe greatly appreciated . i am located in singapore , so i would probably be\nvisiting with the houston personnel via e - mail .\nthanks ,\npat markey\np . s . - i have access to the o : \\ research \\ exotica \\ xll \\ xll _ templates \\ directory ;\nhowever , there are no macros associated with the programs that i can find .\nalso , i don ' t have access to the m : drive . please let me know where to find\nthese options models .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.306+0000", "entityId": 9064, "properties": {"text": "Subject: backwardation hedge strategy\ni have completed an evaluation of a \" backwardation \" hedge strategy requested\nby wendy king . the stratregy is intended to hedge oil inventories and is\nbased of trading nymex futures and options .\nwendy has suggested she wants to review this with jeff shankman . i would\nlike to review my conclusions with you before i send it to wendy and will ask\nshirley to set up a meeting .\na writeup is attached .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.313+0000", "entityId": 9065, "properties": {"text": "Subject: happy thanksgiving !\nhello , vince !\nhappy thanksgiving !\nper our talk , here is a master list of total return swap deals . i am giving\nit a shot to compile everything in a spreadsheet ( \" trigger event \" ) , please be\nadvised whether it is helpful .\nthanks !\nli", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.321+0000", "entityId": 9066, "properties": {"text": "Subject: re : visit to houston\nallan ,\ni shall be glad to meet you . i am planning to attend the energy symposium\nand we can meet on the location . if business keeps me at the office ,\nfeel free to contact me at 713 853 3848 and we can schedule a meeting during\nthe day\nor in the evening .\nvince\nallan . roberts @ uk . arthurandersen . com on 11 / 22 / 2000 06 : 45 : 42 am\nto : vince . j . kaminski @ enron . com\ncc : george . e . danner @ us . arthurandersen . com ,\ndavid . b . duncan @ us . arthurandersen . com\nsubject : visit to houston\nvince ,\ni hope things are well with you and your family .\nthe reason for contacting you today is to let you know i will be in houston\nnext\nweek between monday and wednesday inclusive . if there is an opportunity to\nmeet\nup , probably informally , it would be useful to discuss our continuing\nactivities\nin the areas of strategy , value and , increasingly , real options .\nif you are attending our energy symposium , or can meet up , please contact me\nat\nyour convenience . if we do meet , i would also like to introduce you to one of\nour senior managers from houston : george e . danner . george is a member of\nour\nus national strategy team and part of our global network of specialists\nworking\non real option pricing .\nif i do not speak to you before tomorrow - happy thanksgiving .\nallan\n* * * * * * * * * * * * * * * * * * * internet email confidentiality footer * * * * * * * * * * * * * * * * * * *\nthe uk firm of arthur andersen is authorised by the institute of chartered\naccountants in england and wales to carry on investment business . a list of\npartners is available at 1 surrey street , london , wc 2 r 2 ps ( principal place of\nbusiness ) .\nprivileged / confidential information may be contained in this message . if you\nare not the addressee indicated in this message ( or responsible for delivery\nof\nthe message to such person ) , you may not copy or deliver this message to\nanyone .\nin such case , you should destroy this message and kindly notify the sender by\nreply email . please advise immediately if you or your employer do not consent\nto\ninternet email for messages of this kind . opinions , conclusions and other\ninformation in this message that do not relate to the official business of my\nfirm shall be understood as neither given nor endorsed by it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.326+0000", "entityId": 9067, "properties": {"text": "Subject: re : information\nvince ,\ni will look into this right away . i am sorry for the slow response . in the\nfuture please send me e - mails at shalesh _ ganjoo @ enron . net because i check\nthat address more frequently than this one . thank you .\nshalesh ganjoo\nvince j kaminski\n11 / 21 / 2000 09 : 15 am\nto : shalesh ganjoo / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : information\nshalesh ,\nplease , look into it . can we give them this information ?\ni see a remote possibility of a gain for enron : it ' s in our interest to\nsupport\nthe growth of this market and part of the process is development of the\ninfrastructure for this market and maintaining public interest .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 21 / 2000\n09 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" yann d ' halluin \" on 11 / 16 / 2000 01 : 18 : 39 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : information\ndear sir :\nthe scientific computation group at the university of\nwaterloo , ontario , canada , has recently started to be very\ninterested in the recent developments of the bandwidth\nmarket . we find that the specifics of the bandwidth market\noffer challenges from the modelling point\nof view .\nhowever , we have encountered difficulties when looking for\ndata , and we were wondering if you could help us . specifically\nwe would like to know for a given city pair for the different\nexisting type of lines ( e . g . oc 3 , ocl 2 , oc 48 . . . . )\n1 . what has been the spot lease prices ( e . g . $ / line - type / mile ) for\nthe past 12 months ?\n2 . what is the price of the dark fiber for a given type of line ?\n3 . what is the maintenance cost $ / month ?\n( for the same lines , e . g . oc 3 , ocl 2 , oc 48 , . . . )\n4 . what is the upgrading cost for the different lines ?\n( e . g . how much does it cost to upgrade )\noc 3 - - > ocl 2\noc 3 - - > oc 48\nocl 2 - - > oc 48\n5 . how long does it take to upgrade a line from a certain\ncapacity to another ( e . g . 1 month , 2 month , . . . ) ?\nwe realize that some of these questions may ask for confidential\ndata , in that case we would really appreciate if an order of magnitude\nwas provided . i look forward to hearing from you .\nsincerely ,\nyann d ' halluin\np . s : here is a link to our web page :\nhttp : / / www . scicom . uwaterloo . ca\n- -\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . any unauthorized review , use , disclosure or distribution\nis prohibited . if you are not the intended recipient , please contact\nthe sender by reply e - mail and destroy all copies of the original\nmessage .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.331+0000", "entityId": 9068, "properties": {"text": "Subject: re : evaluation for barbara pierce\npatricia ,\nbarbara pierce did not show up on my list of people asking for a review .\nmaybe a glitch in the system .\nvince\npatricia payton @ enron\n11 / 22 / 2000 08 : 56 am\nto : vince . kaminski @ enron . com\ncc :\nsubject : evaluation for barbara pierce\nthank you for agreeing to interview barbara pierce . unfortunately we are\nunable to proceed because we have not received all of her evaluations . can\nyou please fax the evaluation to me at your earliest convenience at ( 713 )\n646 - 3441 and send the original via interoffice mail to ebl 171 .\nthanks again ,\npatricia\next . 54903", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.336+0000", "entityId": 9069, "properties": {"text": "Subject: proposal submission\nfrancois and kent ,\nhope this proposal reaches you in time for consideration for the upcoming\nfma - european meeting . i normally don ' t like to commit myself to a proposal\nbut in this case i ' m very comfortable doing so in light of the status of\nthe project . as you will see this \" clinical \" paper is a study of strategy\nformulation in a very innovative company that uses financial derivatives in\nconjunction with real asset investments . the firm , enron , has been the\nmost innovative company in america for more than five years now and has\nexpanded its strategy abroad . we have the unique opportunity to document\nthe firm ' s strategy from the inside with my co - authors being members of the\ncorporate research staff that manage the pricing of the energy derivatives\nin which the firm makes a market , as well as provide the analysis upon\nwhich firm risk positions are managed . although , specific enron projects\nhave been documented and published , noone has captured the story of the\ncompany visionaries that formulated and executed the firm ' s business\nstrategy . of course , what makes the story of particular interest to\nfinance scholars is the fact that the strategy hinges in very important\nways on financial innovations . this is going to be a very informative and\nfun story to tell and i hope to bring along my colleagues from enron to\nparis for the meeting .\nthanks for asking me to join the program advisory board and i look forward\nto your comments on the attached proposal .\nsincerely yours ,\njohn\n- enron transformation paper . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.342+0000", "entityId": 9070, "properties": {"text": "Subject: re : december 6 th meeting\ntheresa ,\nthanks . i appreciate it .\nhappy thanksgiving and please give my regards and best\nwishes to howard .\nvince\n\" convery , theresa \" on 11 / 22 / 2000 09 : 39 : 53 am\nto : \" vince kaminski ( e - mail ) \"\ncc : \" kunreuther , howard \"\nsubject : december 6 th meeting\ndear mr . kaminski :\nthis is to confirm the december 6 th meeting here at our center .\nthe location for the meeting is room # 3212 steinberg hall - dietrich hall and\nthe time will run from 9 : 00 am - 11 : 00 am .\nplease let us know if you need anything further .\nwe look forward to seeing you then .\nregards ,\ntheresa convery\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\ntheresa convery\nadministrative assistant\nrisk and decision processes center\nthe wharton school of the university of pennsylvania\n( 215 ) 898 - 5688 / fax : ( 215 ) 573 - 2130\ntconvery @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.348+0000", "entityId": 9071, "properties": {"text": "Subject: re : hotel for the wharton trip\ni ' m not sure i ' m going to make it to phila because of prc . i will advise\nnext week . also , can you tell me paula ' s last name that we rode with the\nother day when you all took me to the airport ? thanks .\nvince j kaminski\n11 / 20 / 2000 04 : 34 pm\nto : jennifer burns / hou / ect @ ect\ncc : jeffrey a shankman / hou / ect @ ect , vince j kaminski / hou / ect @ ect ,\npiazzet @ wharton . upenn . edu\nsubject : hotel for the wharton trip\njennifer ,\nthis is the address of the hotel within a walking distance to the wharton\nschool .\nplease , make the reservation for jeff shankman at this hotel for the december\nthe 6 th meeting .\nvince kaminski\nhttp : / / www . innatpenn . com / contact . html\nthe inn at penn\nsansom common , 3600 sansom street\nphiladelphia , pa . 19104\nphone : 1 - 800 - 809 - 7001\nfax : 215 - 222 - 4600\nplease , mention that the stay is related to the university business\nwhen making the reservation .\ntom piazze at wharton can confirm it .\ntom piazze\nphone : ( 215 ) 898 1615\npiazzet @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.354+0000", "entityId": 9072, "properties": {"text": "Subject: december 6 th meeting\ndear mr . kaminski :\nthis is to confirm the december 6 th meeting here at our center .\nthe location for the meeting is room # 3212 steinberg hall - dietrich hall and\nthe time will run from 9 : 00 am - 11 : 00 am .\nplease let us know if you need anything further .\nwe look forward to seeing you then .\nregards ,\ntheresa convery\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\ntheresa convery\nadministrative assistant\nrisk and decision processes center\nthe wharton school of the university of pennsylvania\n( 215 ) 898 - 5688 / fax : ( 215 ) 573 - 2130\ntconvery @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.360+0000", "entityId": 9073, "properties": {"text": "Subject: re : maureen raymond - castaneda extension\nnorma\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 22 / 2000\n09 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : robert knight on 03 / 08 / 2000 04 : 09 pm\nto : maureen raymond / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : maureen raymond - castaneda extension\nmaureen ,\ni apologize that your phone was disconnected in error . at this time your\nphone is working and your voice mail box needs to be set up . i would like to\nadd however , i do not appreciate your disrespect and unreasonable demands\nplaced on my employees . they were not the cause of this problem and can only\nrelay your information to the appropriate group .\nenron has values of respect , integrity , communication and excellence . i\nwould appreciate you taking the time to review them .\nrobert knight\ndirector voice communications\nstella l ely\n03 / 08 / 2000 11 : 08 am\nto : move - team / epsc / hou / ect @ ect , telephone mods / corp / enron @ enron , dolores\nsustaita / epsc / hou / ect @ ect , robert knight / hou / ect @ ect\ncc :\nsubject : maureen raymond - castaneda extension\nplease reinstate maureen ' s extension immediately , if possible . it was\ndisconnected this past weekend when we had it taken off of the phone at eb\n3073 f . her extension was on two phones at two different locations and should\nnot have been disconnected at eb 1939 . her extension no . is 30396 . sorry\nfor the confusion . please let me know timing asap .\nthank you .\nstella ely", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.367+0000", "entityId": 9074, "properties": {"text": "Subject: maureen\nnorma ,\ni talked to g . koepke , an associate reporting to maureen\nshe told me that things have significantly improved in recent weeks .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.374+0000", "entityId": 9075, "properties": {"text": "Subject: re : approval is overdue : access request for stewart . range @ enron . com\ni will ask him which specific directories he needs to access .\n- - stinson\nvince j kaminski\n11 / 22 / 2000 08 : 08 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : approval is overdue : access request for stewart . range @ enron . com\nstinson ,\nshould we do it ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 22 / 2000\n08 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem @ mailman . enron . com on 11 / 21 / 2000 07 : 04 : 54 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : approval is overdue : access request for stewart . range @ enron . com\nthis request has been pending approval for 2 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000007876\napprover : stinson . gibner @ enron . com\nrequest create date : 11 / 20 / 00 2 : 36 : 29 pm\nrequested for : stewart . range @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.381+0000", "entityId": 9076, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nhi again ,\nhere is the second document :\n2 . the second word document describes a hybrid derivatives structure i i\nworkded on at bnp paribas . it has applications to the energy industry .\nregards ,\niris\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com\n- real options business specs , part i . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.390+0000", "entityId": 9077, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nhi again ,\nthank you for your email . sorry for the phone tag and email tag . i will\ntry to call you again next week .\nin the mean time , i thought i would send you a couple of documents to give\nyou an idea of some of the work that i have done that may be of interest to\nenron .\n1 . the first word document is my london busines school executive mba\nthesis relating to weather derivatives .\n2 . the second word document describes a hybrid derivatives structure i i\nworkded on at bnp paribas . it has applications to the enerygy industry .\nbecause these documents are very large i will forward them in two separate\nemails . your comments on them would be appreciated .\nhappy thanksgiving ,\niris\n> from : vince . j . kaminski @ enron . com\n> to : irismmack @ hotmail . com\n> cc : vkaminski @ aol . com\n> subject : contact #\n> date : wed , 22 nov 2000 08 : 10 : 12 - 0600\n>\n> iris ,\n>\n> yu can reach me on my cell phone during the coming holidays .\n> 713 410 5396\n>\n> vince\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com\n- lbs thesis - weather derivatives . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.398+0000", "entityId": 9078, "properties": {"text": "Subject: tage resume submittal\ni have no need at this time for external people . thanks for thinking of\nberney and me .\nregards ,\ned\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ed mcmichael / hou / ect on 11 / 25 / 2000 08 : 47\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : berney c aucoin 11 / 21 / 2000 01 : 15 pm\nto : ed mcmichael / hou / ect @ ect\ncc :\nsubject : tage resume submittal\nlet vince know if you ' re interested in this person .\nbern\n- - - - - - - - - - - - - - - - - - - - - - forwarded by berney c aucoin / hou / ect on 11 / 21 / 2000\n01 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n11 / 21 / 2000 11 : 43 am\nto : berney c aucoin / hou / ect @ ect , wanda curry / hou / ees @ ees\ncc :\nsubject : tage resume submittal\nplease , take a look at the lst resume and let me know\nwhat you think ( shelly wood ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 21 / 2000\n11 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" pj \" on 11 / 15 / 2000 01 : 58 : 46 pm\nto : \" vince j kaminski \"\ncc :\nsubject : tage resume submittal\nvince ,\ntwo candidates for your review . please call me .\n?\npaul johnson , cpc\npresident\n( 281 ) 497 - 8595\n?\nplease visit our website\n? www . austingrp . com\n- wood , shelly . doc\n- jpbresume 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.405+0000", "entityId": 9079, "properties": {"text": "Subject: transmission roundtable meeting\nthe meeting will be held on december 8 , 2000 from 11 : 30 am to 1 : 00 pm in\nconference room eb 19 cl . box lunches will be served . your choices are\nlisted below :\nsalads : roasted chicken cobb salad , grilled chicken caesar salad , classic\nchef salad\nsandwiches : turkey , roast beef , ham , chicken salad , tuna salad or club\nsandwich . served on homemade white or wheat bread\nplease email your lunch choice to me by monday , december 4 , 2000 .\nthanks and regards ,\nanita dupont", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.411+0000", "entityId": 9080, "properties": {"text": "Subject: thanks\nvince :\nthanks for the time that you took today .\nit was very interesting to meet with you .\ni ' d like to continue the discussions sometime .\nthanks again . shawn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.418+0000", "entityId": 9081, "properties": {"text": "Subject: re : enron exotica options library\npatrick ,\nwe have those two models in the exotica library . you need to add exotica . xll\nlocated in o : \\ research \\ exotica \\ xll to your excel before you can use the\nfunctions .\nyou can find the documentation in o : \\ research \\ exotica \\ doc .\nexample spreadsheets can be found in o : \\ research \\ exotica \\ .\nthe precedure of addin is as follows .\n1 ) clik tools / addin on your excel\n2 ) choose browse and got to o : \\ research \\ exotica \\ xll\n3 ) select exotica . xll or its identical copy exotical . xll\n4 ) answer the question \" copy . . . \" no .\n5 ) click ok , then you should see exotica menu bar pop up .\nif you have any more questions please let me know .\nzimin\nvince j kaminski\n11 / 21 / 2000 08 : 06 am\nto : patrick markey / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , zimin lu / hou / ect @ ect\nsubject : re : enron exotica options library\npatrick ,\nplease , contact zimin lu , 713 853 6388 .\nvince\npatrick markey\n11 / 21 / 2000 05 : 15 am\nto : vince j kaminski / hou / ect @ ect\ncc : patrick markey / hou / ect @ ect\nsubject : enron exotica options library\nvince ,\ni am trying to price a crack spread option utilizing either of the following\nmodels in the exotica library :\n1 . spread options by 1 - d integration - sprdopt\n2 . spread options on asian spreads - asnsprd\nhow do i get access to these options models ? who can i visit with in the\nhouston group if i have any questions regarding the models . your help would\nbe greatly appreciated . i am located in singapore , so i would probably be\nvisiting with the houston personnel via e - mail .\nthanks ,\npat markey\np . s . - i have access to the o : \\ research \\ exotica \\ xll \\ xll _ templates \\ directory ;\nhowever , there are no macros associated with the programs that i can find .\nalso , i don ' t have access to the m : drive . please let me know where to find\nthese options models .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.428+0000", "entityId": 9082, "properties": {"text": "Subject: re : houston visit\ngreat ! i look forward to our dinner on thurs . 12 / 7 evening . hopefully your\nflight will be on time . . . although having watched 60 minutes last night and\nsuffered from a # of delays lately , let ' s hope that the \" weather blame \"\ndoesn ' t get in the way . it ' s best to leave me a message @ my usual work #\non thurs . , 914 253 4187 , . . . i can easily check it in houston .\ni ' ll be staying @ the westin oaks in the galleria . . . any preferred place\nthat i can book ( & for what time ) ? ? coming over to down town won ' t be a\nproblem for me either .\nwill be great to see you again .\nsoussan\n914 253 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , november 27 , 2000 12 : 10 pm\nto : faizs @ texaco . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : houston visit\nsoussan ,\nthanks for your message . it would be great to meet you when you come to\nhouston .\ni shall be in town on december 7 , flying back from philly in the morning .\nassuming that the flight is on schedule , i shall be available for dinner .\nplease , let me know how i can contact you on thursday , december the 7 th ,\nto confirm .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 26 / 2000 09 : 04 : 01 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny and hope that all is well and you had a great\nthanksgiving . i ' ll be coming to houston for 12 / 6 - 12 / 7 and hope you are\navailable either evening for dinner . would be great to see you again and\ncatch up with the latest . . . i really enjoyed my visit last april , your\ninsights , and the risk book you gave me .\ni do hope you ' re available to meet and pls let me know which evening suits\nyou better .\nbest ,\nsoussan faiz\ntexaco inc .\n914 253 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.433+0000", "entityId": 9083, "properties": {"text": "Subject: re : houston visit\nsoussan ,\nthanks for your message . it would be great to meet you when you come to\nhouston .\ni shall be in town on december 7 , flying back from philly in the morning .\nassuming that the flight is on schedule , i shall be available for dinner .\nplease , let me know how i can contact you on thursday , december the 7 th ,\nto confirm .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 26 / 2000 09 : 04 : 01 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny and hope that all is well and you had a great\nthanksgiving . i ' ll be coming to houston for 12 / 6 - 12 / 7 and hope you are\navailable either evening for dinner . would be great to see you again and\ncatch up with the latest . . . i really enjoyed my visit last april , your\ninsights , and the risk book you gave me .\ni do hope you ' re available to meet and pls let me know which evening suits\nyou better .\nbest ,\nsoussan faiz\ntexaco inc .\n914 253 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.440+0000", "entityId": 9084, "properties": {"text": "Subject: arthur andersen model validation request\nvince ,\nour goal is to validate that the enron global market book\nadministrators are accurately using the \" spread option model \" as developed by\nthe research group . to determine this , we would like to provide you with\nthe inputs for a particular deal ( as provided by a global markets book\nadministrator ) and have you recalculate the deal value . we will then\ncompare your results to the values calculated by global markets .\ntwo koch deals have been chosen due to their substantial p / l effect . i have\nattached the deal data in two forms : ( 1 ) the spread option model that kara\nboudreau , book administrator egm , provided and ( 2 ) an excel spreadsheet that\nisolates the 2 deals .\nif there is anything more that we could provide , please don ' t hesitate to\ncall me at x 30968 .\nthank you so much for all of your help .\ngillian\n1 .\n2 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.450+0000", "entityId": 9085, "properties": {"text": "Subject: alex tartakovski\nas you may know , we are trying to schedule an interview for alex tartakovski\nin houston this week . i am copying everyone involved because i wont be able\nto coordinate this tomorrow . we just brought our new daughter home today and\nmy wife is yelling at me to get out of my office .\ni just found out that thursday & friday are bad days for him , so wednesday is\nthe only day to do it this week . he would come down tuesday night and fly\nout wednesday evening . it ' s probably easiest for him to arrange his flight ,\nbut he will need a hotel and transportation from the airport . i gave him\ndonna ' s phone number for help . i assume the hyatt would be best . his home\nnumber is 215 - 702 - 3705 and during the day his cellular is 267 - 981 - 5425 .\nby way of background , i plan to bring in 3 people from outside the company to\nfill in some of the \" vacants \" in my group ' s org chart . the 3 areas of\nspecialization that are needed to execute the business plan are ( 1 )\ncoordination of origination , ( 2 ) deal pricing and underwriting , and ( 3 )\nmodeling and portfolio management . alex is the perfect person for # 3 . he\nhas the deepest knowledge of probability of anyone i know and is efficient at\nbuilding analysis models , which will be a big job in this business because\nportfolio management needs to be redefined in real time due to the lumpiness\nof insurance contracts and the lack of any historical methods for evaluating\nthese risks . development of pricing models will be a joint effort between\n\" my \" group and the research dept because this will need to draw on the\nexpertise in research as well as being a realtime activity as new deals are\nbeing structured . i want to encourage joint work between vasant / amitava\nand alex because his background and expertise is compatible with research .\nover the past 2 years , alex and i spent a lot of time developing new\nelectricity spot pricing methodology and this is one area where he excels . i\nwould expect that he would be a valuable resource in research as well , and so\ni would like for him to be able to meet with vince is possible . ( this could\npossibly be done when vince is in philadelphia next week if there is time -\n( ? ) ) depending on what work needs to be done in the future , i could see him\nworking both on pricing research and this specific business unit .\ni have attached alex ' s resume . i assume he would be manager level , but i ' m\nnot sure of this .\nthis doesnt necessarily come across in the resume , but the skills that are\nuseful to us are :\nprobability / statistical model development\ndevelopment of theoretical pricing methodology\nexcellent computer programming skills\ndatabase development and data analysis\nhe has the best understanding of the nerc reliability data format outside of\nmike curley , the nerc data manager .\ndesigned and wrote the code for the pricing model used by ace power products\nfor deal pricing and porfolio mgmt .\nexcellent understanding of options pricing methodology and its application to\nhedging insurance portfolios .\nif you want to get into superconductor trading , he can design the standards .\ncan beat me at atari battlezone ( as well as being able to navigate a real\ntank through a minefield ) .\none objective of this meeting in houston is to make him feel comfortable with\nthe organization ( with which you did such a good job for me ) and to give him\nconfidence that he will be able to do state - of - the - art pricing research in\nthe most innovative company in the world . he is also interviewing for a job\nin morgan stanley ' s equity dept .\nwe will also arrange a meeting with per in ny , but i would like to be in the\noffice for that , so we can do that next week .\nplease call me @ 610 - 996 - 2522 if there are any questions . i may not pick up\nbut i will reply to voicemail promptly . i ' m up 24 hours this week anyway .\nthanks ,\n- - dave", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.461+0000", "entityId": 9086, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nhappy to do so , vince . hope your holidays were wonderful !\nmolly\nvince j kaminski\n11 / 27 / 2000 01 : 39 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : re : f / u to dr . kaminski @ enron from iris mack\nmolly ,\ni would like to invite iris for an interview . you can contact her at the\naddresses she listed below\nor at her e - mail address .\nthe following persons will participate at the interview :\nstinson gibner\nzimin lu\ntanya tamarchenko\nvasant shanbhogue\nmyself\nstinson and i will take her out to lunch .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 27 / 2000\n01 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" iris mack \" on 11 / 21 / 2000 04 : 12 : 43 pm\nto : irismmack @ hotmail . com , vince . j . kaminski @ enron . com\ncc :\nsubject : re : f / u to dr . kaminski @ enron from iris mack\nhi again ,\ni am visiting several family members and friends over the next few days .\ntherefore it will be hard to contact me .\nhowever , next week i will be easier to reach . my contact details in nyc are\nas follows . i will be staying at the following hotels :\nwashington square hotel\nfrom november 28 th for 3 nights ( tue , wed and thur )\n212 . 777 . 9515\nmarriott nyc financial\ndecember lst for 1 night ( fri )\n212 . 385 . 4900\nat any rate , i will still try to reach you on tomorrow morning . if all\nfails , we will try to reach each other next week .\nhappy thanksgiving ,\niris\n> from : \" iris mack \"\n> to : vince . j . kaminski @ enron . com\n> subject : re : f / u to dr . kaminski @ enron from iris mack\n> date : tue , 21 nov 2000 22 : 07 : 09\n>\n> hi ,\n>\n> how are you ? seems like we have had a bit of difficulty contacting each\n> other . sorry i missed your call . i am now in nyc - until december 2 nd .\n>\n> i will try to call you on tomorrow morning about 8 am houston time .\n>\n> take care ,\n> iris\n>\n>\n>\n>\n> > from : vince . j . kaminski @ enron . com\n> > to : irismmack @ hotmail . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : hello\n> > date : tue , 21 nov 2000 15 : 14 : 31 - 0600\n> >\n> > iris ,\n> >\n> > we are trying to reach you but we are getting error messages .\n> > please , call me 713 853 3848 .\n> >\n> > vince\n> >\n> >\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.467+0000", "entityId": 9087, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nmolly ,\ni would like to invite iris for an interview . you can contact her at the\naddresses she listed below\nor at her e - mail address .\nthe following persons will participate at the interview :\nstinson gibner\nzimin lu\ntanya tamarchenko\nvasant shanbhogue\nmyself\nstinson and i will take her out to lunch .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 27 / 2000\n01 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" iris mack \" on 11 / 21 / 2000 04 : 12 : 43 pm\nto : irismmack @ hotmail . com , vince . j . kaminski @ enron . com\ncc :\nsubject : re : f / u to dr . kaminski @ enron from iris mack\nhi again ,\ni am visiting several family members and friends over the next few days .\ntherefore it will be hard to contact me .\nhowever , next week i will be easier to reach . my contact details in nyc are\nas follows . i will be staying at the following hotels :\nwashington square hotel\nfrom november 28 th for 3 nights ( tue , wed and thur )\n212 . 777 . 9515\nmarriott nyc financial\ndecember lst for 1 night ( fri )\n212 . 385 . 4900\nat any rate , i will still try to reach you on tomorrow morning . if all\nfails , we will try to reach each other next week .\nhappy thanksgiving ,\niris\n> from : \" iris mack \"\n> to : vince . j . kaminski @ enron . com\n> subject : re : f / u to dr . kaminski @ enron from iris mack\n> date : tue , 21 nov 2000 22 : 07 : 09\n>\n> hi ,\n>\n> how are you ? seems like we have had a bit of difficulty contacting each\n> other . sorry i missed your call . i am now in nyc - until december 2 nd .\n>\n> i will try to call you on tomorrow morning about 8 am houston time .\n>\n> take care ,\n> iris\n>\n>\n>\n>\n> > from : vince . j . kaminski @ enron . com\n> > to : irismmack @ hotmail . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : hello\n> > date : tue , 21 nov 2000 15 : 14 : 31 - 0600\n> >\n> > iris ,\n> >\n> > we are trying to reach you but we are getting error messages .\n> > please , call me 713 853 3848 .\n> >\n> > vince\n> >\n> >\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.474+0000", "entityId": 9088, "properties": {"text": "Subject: re : f / u to dr . kaminski @ enron from iris mack\nhi ,\nhope you had a happy thanksgiving . so what do you think of the way we\nselect our president ?\nregarding the passwords , they are as follows :\npassword # 1 : roviris\npassword # 2 : hannah\ni will try to call you shortly .\nkind regards ,\niris\n> from : vince . j . kaminski @ enron . com\n> to : irismmack @ hotmail . com\n> subject : re : f / u to dr . kaminski @ enron from iris mack\n> date : mon , 27 nov 2000 08 : 19 : 52 - 0600\n>\n>\n> hi iris ,\n>\n> thanks for your messages . please , call me on my cell phone ( 713 ) 410 5396\n> or at my office ( 713 ) 853 3848 .\n>\n> by the way , the 2 nd file you sent is password protected .\n>\n> vince\n>\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.479+0000", "entityId": 9089, "properties": {"text": "Subject: preliminary interviews with the research group\ngood morning professor ordonez :\nvince would like to bring ernesto and carlos in for a preliminary interview .\nvince and stinson are available on tuesday , december 5 or wednesday ,\ndecember 6 .\nshould i contact them personally , or will you arrange the interviews ?\ni will need to know the times they are available on these days and i will also\nneed copies of their resumes .\nif you need any information , please call me at 713 / 853 - 5290 .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 27 / 2000\n10 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n11 / 27 / 2000 10 : 47 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : re : greetings\nshirley ,\nplease , invite them for a preliminary interview ,\nstinson , zimin , paulo and myself .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 27 / 2000\n10 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos ordonez on 11 / 27 / 2000 10 : 15 : 51 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : greetings\ndear vince ,\ni am sorry for the dely in answering . these are their phone numbers :\nernesto hernandez : ( 713 ) 532 - 0573\ncarlos gorrichategui : ( 713 ) 668 - 0408 .\nthe best way to get a hold of them at this point would be through\nme . i would pass along the information and then they can contact you .\ncheers ,\ncarlos\nat 12 : 50 pm 11 / 21 / 00 - 0600 , you wrote :\n>\n> carlos ,\n>\n> i need their phone numbers .\n>\n> vince\n>\n>\n>\n>\n>\n> carlos ordonez on 11 / 21 / 2000 11 : 45 : 45 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : greetings\n>\n>\n> vince ,\n>\n> i gave you both their academic reports from here and mexico and panama .\n> this\n> information i believe also contain some personal info . would you need more ?\n> one of them was a bit nervous about the formality of turning in an actual\n> resume . . .\n>\n> please let me know whether the academic info is not enough .\n>\n> cheers ,\n>\n> carlos\n>\n>\n>\n>\n>\n> at 10 : 41 am 11 / 21 / 00 - 0600 , you wrote :\n> >\n> > carlos ,\n> >\n> > please , forward their resumes to us and we shall set up an interview for\n> > them .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > carlos ordonez on 11 / 21 / 2000 09 : 30 : 08 am\n> >\n> > to : stinson . gibner @ enron . com\n> > cc : vkamins @ enron . com\n> > subject : re : greetings\n> >\n> >\n> > dear vincent and stinson ,\n> >\n> > both my students would love to come visit you guys for an informal\n> > visit in the near future . please let me know well ahead of time\n> > when they can come . if possible , see to it that their parking expenses\n> > be paid when they do come .\n> >\n> >\n> > i ' ll be in touch with you all over the next months about this and\n> > a possible postdoctoral / trainee agreement ( world lab . ) .\n> >\n> > cheers ,\n> >\n> > carlos\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.490+0000", "entityId": 9090, "properties": {"text": "Subject: telephone interview with the enron research group\ngood morning ms . knirel :\nvince kaminski and several members of the research group would like\nto conduct a telephone interview with you sometime this week at your\nconvenience . please let me know the times that you are available and\nthey will contact you .\nthe telephone interviews usually last approximately 1 hour and will be\nconducted via a speaker phone .\nthe interviewers will be :\nvince kaminski managing director and head of research\nstinson gibner vice president , research\ntanya tamarchenko director , research\nzimin lu director , research\nlook forward to hearing from you .\nbest regards ,\nshirley crenshaw\nadministrative coordinator\nenron research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.497+0000", "entityId": 9091, "properties": {"text": "Subject: course outlines\njeff ,\ni am sending you a draft of the outline of the course on energy derivatives .\ni would appreciate your comments before i finalize it .\nby the way , did we agree on the time schedule for the class ?\ntuesday or thursday evening would work for me .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.503+0000", "entityId": 9092, "properties": {"text": "Subject: re : charles shen\nthanks so much , vince - - i couldn ' t agree with you more .\nmolly\nvince j kaminski\n11 / 27 / 2000 02 : 40 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : charles shen\nmolly ,\ni think you called his bluff . if he does not fax a copy of his paycheck stub ,\nwe should not talk to him . he never talked to me about it . if he made a true\nstatement\nabout his compensation , he should have no reservations about sending us the\nconfirmation .\nvince\nenron north america corp .\nfrom : molly magee 11 / 27 / 2000 01 : 58 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : charles shen\nvince : i left you a voicemail about charles shen a week or so ago , but\nwanted to follow up with you . when i called him to extend our offer to him ,\nhe expressed surprise at the base salary offer of $ 110 , 000 , and told me that\nhe was currently earning base pay in the amount of $ 120 , 000 . i told him\nthat the salary figure he had written himself on the application was\n$ 102 , 000 , but he insisted that he had made an error and that it should have\nbeen $ 120 , 000 . i asked him what base salary he was looking for , and he said\nhe would expect at least a 10 % increase in his base . i then told him that i\nwas not authorized to make an offer above our initial one , and would contact\nyou and get back to him .\ni called him later that afternoon and asked him to fax me a copy of his last\npaycheck stub so that we could minimize the confusion about his base pay . he\nsaid that he would be happy to do so , but i never received the fax . he left\nme a voicemail message during the evening that said he was on vacation and\ndidn ' t have access to the pay stubs , but would send me a copy when he\nreturned .\ni have not heard from him since , and wondered if he had contacted you . if\nnot , would you want to get together to discuss our next step ?\ni ' ll wait to hear from you ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.509+0000", "entityId": 9093, "properties": {"text": "Subject: re : american express charges\nhi samer !\nhope you had an enjoyable thanksgiving !\ni found out the \" scoop \" on the ticket . it was non - refundable and non -\nrefundable tickets cannot be transferred . it was just your seat that\nmaureen ' s husband used .\ni will send in a check request for reimbursement in the amount of $ 330 . 50 .\nthe best thing would be for you to go ahead and pay the bill or wait for\nthe check from us .\nsorry for the confusion !\ncheers !\nshirley\n\" samer takriti \" on 11 / 20 / 2000 01 : 41 : 23 pm\nto : shirley . crenshaw @ enron . com\ncc : stinson . gibner @ enron . com\nsubject : american express charges\nshirley ,\nhow are you ? things are fine over here . we are still trying to settle in ;\nthis process seems to be taking forever .\ni would like to ask for your help . i have received a statement from\namerican express related to my enron account . the charge amount is $ 330 . 50 ,\nwhich is supposed to be for an airplane ticket . after calling the travel\nagency in the park , i found out that this was the ticket that i was\nsupposed to have used to fly to colorado . however , the ticket was used by\nmaurine ' s husband and maurine claimed to have paid for the ticket . also , i\nremember calling the tap and cancelling prior to the travel date . can you\nhelp me figure out what is going on here ? i am not sure who is supposed to\npay for this . i disputed the charge before but my dispute was rejected .\ni appreciate your help . thanks .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.515+0000", "entityId": 9094, "properties": {"text": "Subject: re : marketpoint license agreement\njohn ,\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 27 / 2000\n03 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dale m . nesbitt \" on 11 / 27 / 2000 02 : 51 : 54 pm\nplease respond to\nto :\ncc :\nsubject : re : marketpoint license agreement\nvince :\ni will send you our contract for the week long engagement . the way we do it\nis send out our time and materials contract , which has a space for\nindividual task statements . i then put in a task statement for the week\nlong project at the $ 12 k level so that the costs and risks are capped for\nyou . look for it in the next day or two .\nwith regard to the long run and short run gas models , they are both\nimplemented in the same software system . neither is a prerequisite for\nrunning the other , but both operate the same way and the sum of the two\nconsumes approximately the same resources are either individually .\ni plan to have an extended visit in houston beginning one week from today\nand lasting through the following wednesday . ( intensively tutoring my\ndaughter for her first semester economics finals at rice . she certainly\nshould have gotten a better looking tutor . ) that will make it very easy to\ncome by and finalize whatever needs to be finalized with you that week .\nwith her in houston , i spend a good bit of time there .\nlook for the stuff in the next day or two . i look forward to working with\nyou and your colleagues .\nthanks\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , november 27 , 2000 10 : 44 am\nto : dale . nesbitt @ worldnet . att . net\ncc : vince . j . kaminski @ enron . com\nsubject : re : marketpoint license agreement\ndale ,\nthanks for your message . in our phone conversation before the meeting you\nmentioned\nanother contractual arrangement under which we could work with your\ncompany employees on a case - study .\nthe cost of a weekly project would be $ 12 , 000 that would be applied to the\npurchase price should\nwe go ahead and decide to acquire the software . this project would allow us\nto evaluate the model and\ncome up with an estimate of the manpower necessary to support the model\ninternally .\nplease , let me know more about this option .\nwe are primarily interested in a long - term natural gas model and the\ndatabase for north america .\nunless a familiarity with the short term model is a prerequisite , we don ' t\nhave resources to spend too much time on it .\nof course , a trading desk may be interested in the short term\nversion of the model . i shall talk to them about it .\nvince\n\" dale m . nesbitt \" on 11 / 13 / 2000 06 : 00 : 05 pm\nto : , \" vince . j . kaminski \"\ncc :\nsubject : marketpoint license agreement\njohn / vince :\ni really enjoyed the meeting the other day with you and a broad cross\nsection of your people . thank you very much for setting it up , and thank\nyou for giving me the opportunity to speak with your people .\nas i mentioned to john , i am sending you the license paperwork for\nmarketpoint . i have attached our standard license agreement for your\nconsideration . as i mentioned , the license agreement covers the entire\nbundled product , which includes\n? north american gas , short and long term\n? north american electricity , short and long term\n? world gas\n? western european gas\n? world oil\nwe are just finishing porting the world oil , world gas , and western\neuropean\ngas models over from our old ( now obsolete ) software system into\nmarketpoint , so they will not be fully tested and complete for a couple of\nmonths . however , the gas and electricity models for north america are\npresently complete and tested . that should allow us to give you an\nattractive price before the full worldwide toolkit is available throughout\nyour worldwide business .\nas i understood it , you will want the gas modeling capability first and\nwill\nwant to defer decisions on electric or other capability . as i mentioned at\nthe meeting , we are prepared to offer that for approximately\nthe fully\nbundled price . as you read the license agreement , you will see that the\nsoftware licenses for $ 100 , 000 annually , the gas data for $ 5 , 000 , and the\nelectric data for $ 10 , 000 . marketpoint will agree to license you the gas\nmodel plus the data for\nthe software license plus the data license for a\ntotal of $ 55 , 000 annually . this is just under\nthe fully bundled price .\ni\nthink that is consistent with the discussions at our meeting , and from\nmarketpoint ' s perspective would provide a great basis to move forward\ntogether with enron . if or when enron ever desires to \" scale up \" to\nanother\nmodel or model ( s ) from the marketpoint portfolio , we will simply scale you\nup to the entire license agreement . this will allow you to decouple the\ngas\ndecision from any other decisions you might make . ( i will be glad to put\nthis additional pricing provision into the agreement if you decide to move\nforward . )\ni felt i was able to communicate the philosophy , scope , and operation of\nour\napproach during the meeting and to deliver you much of the information you\nmight need to evaluate whether marketpoint meets your needs . i thought you\nwere able to see the depth and sophistication of the product yet at the\nsame\ntime its simplicity and effectiveness . i thought you were able to see the\nbenefits of the marketpoint dimension of economic equilibrium as a\ncomplement and supplement to other approaches you will assuredly use . i\nwould be interested in your impressions and those of your colleagues . i\nlook forward to your response and to moving ahead together . we view you as\na very important prospective customer and client and will work with you to\nearn and secure your business .\nif you decide to license marketpoint , we can arrange to transfer and mount\nmarketpoint and the short term narg model ( which is the model we suggest\nyou\nbegin with ) and travel to houston to deliver our 1\nday training seminar .\nour clients are usually very fluent after that 1\nday training seminar .\nthereafter , we would want you to work with the short term narg model for a\nfew weeks while you get up to speed , very fluent , and very comfortable\nbefore you take delivery of the longer term version of narg several weeks\nlater .\nthanks again , and all the best . if there is some item from the meeting\nthat\ni might have forgotten to send , please remind me . my notes don ' t show\nanything , but i was speaking a lot rather than writing notes during the\nmeeting and might have overlooked something someone wanted .\ndale nesbitt\npresident\nmarketpoint inc .\n27121 adonna ct .\nlos altos hills , ca 94022\n( 650 ) 218 - 3069\ndale . nesbitt @ marketpointinc . com\n( see attached file : license . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.520+0000", "entityId": 9095, "properties": {"text": "Subject: re : marketpoint license agreement\ndale ,\nthanks for your message . in our phone conversation before the meeting you\nmentioned\nanother contractual arrangement under which we could work with your company\nemployees on a case - study .\nthe cost of a weekly project would be $ 12 , 000 that would be applied to the\npurchase price should\nwe go ahead and decide to acquire the software . this project would allow us\nto evaluate the model and\ncome up with an estimate of the manpower necessary to support the model\ninternally .\nplease , let me know more about this option .\nwe are primarily interested in a long - term natural gas model and the database\nfor north america .\nunless a familiarity with the short term model is a prerequisite , we don ' t\nhave resources to spend too much time on it .\nof course , a trading desk may be interested in the short term\nversion of the model . i shall talk to them about it .\nvince\n\" dale m . nesbitt \" on 11 / 13 / 2000 06 : 00 : 05 pm\nto : , \" vince . j . kaminski \"\ncc :\nsubject : marketpoint license agreement\njohn / vince :\ni really enjoyed the meeting the other day with you and a broad cross\nsection of your people . thank you very much for setting it up , and thank\nyou for giving me the opportunity to speak with your people .\nas i mentioned to john , i am sending you the license paperwork for\nmarketpoint . i have attached our standard license agreement for your\nconsideration . as i mentioned , the license agreement covers the entire\nbundled product , which includes\n? north american gas , short and long term\n? north american electricity , short and long term\n? world gas\n? western european gas\n? world oil\nwe are just finishing porting the world oil , world gas , and western european\ngas models over from our old ( now obsolete ) software system into\nmarketpoint , so they will not be fully tested and complete for a couple of\nmonths . however , the gas and electricity models for north america are\npresently complete and tested . that should allow us to give you an\nattractive price before the full worldwide toolkit is available throughout\nyour worldwide business .\nas i understood it , you will want the gas modeling capability first and will\nwant to defer decisions on electric or other capability . as i mentioned at\nthe meeting , we are prepared to offer that for approximately\nthe fully\nbundled price . as you read the license agreement , you will see that the\nsoftware licenses for $ 100 , 000 annually , the gas data for $ 5 , 000 , and the\nelectric data for $ 10 , 000 . marketpoint will agree to license you the gas\nmodel plus the data for\nthe software license plus the data license for a\ntotal of $ 55 , 000 annually . this is just under\nthe fully bundled price . i\nthink that is consistent with the discussions at our meeting , and from\nmarketpoint \u0001 , s perspective would provide a great basis to move forward\ntogether with enron . if or when enron ever desires to \u0001 & scale up \u0001 8 to another\nmodel or model ( s ) from the marketpoint portfolio , we will simply scale you\nup to the entire license agreement . this will allow you to decouple the gas\ndecision from any other decisions you might make . ( i will be glad to put\nthis additional pricing provision into the agreement if you decide to move\nforward . )\ni felt i was able to communicate the philosophy , scope , and operation of our\napproach during the meeting and to deliver you much of the information you\nmight need to evaluate whether marketpoint meets your needs . i thought you\nwere able to see the depth and sophistication of the product yet at the same\ntime its simplicity and effectiveness . i thought you were able to see the\nbenefits of the marketpoint dimension of economic equilibrium as a\ncomplement and supplement to other approaches you will assuredly use . i\nwould be interested in your impressions and those of your colleagues . i\nlook forward to your response and to moving ahead together . we view you as\na very important prospective customer and client and will work with you to\nearn and secure your business .\nif you decide to license marketpoint , we can arrange to transfer and mount\nmarketpoint and the short term narg model ( which is the model we suggest you\nbegin with ) and travel to houston to deliver our 1\nday training seminar .\nour clients are usually very fluent after that 1\nday training seminar .\nthereafter , we would want you to work with the short term narg model for a\nfew weeks while you get up to speed , very fluent , and very comfortable\nbefore you take delivery of the longer term version of narg several weeks\nlater .\nthanks again , and all the best . if there is some item from the meeting that\ni might have forgotten to send , please remind me . my notes don ' t show\nanything , but i was speaking a lot rather than writing notes during the\nmeeting and might have overlooked something someone wanted .\ndale nesbitt\npresident\nmarketpoint inc .\n27121 adonna ct .\nlos altos hills , ca 94022\n( 650 ) 218 - 3069\ndale . nesbitt @ marketpointinc . com\n- license . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.527+0000", "entityId": 9096, "properties": {"text": "Subject: the installation of the equipment you ordered is completed\n- - - automatic notification system ( request # : ecth - 4 r 5 mlm )\nrequested for : vince j kaminski\nrequested by : shirley crenshaw\nthe installation of the equipment ( see below ) has been completed .\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop\n21 \" vl 100 monitor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.532+0000", "entityId": 9097, "properties": {"text": "Subject: the delivery of the equipment you ordered is scheduled .\n- - - automatic notification system ( request # : ecth - 4 r 5 mlm )\nrequested for : vince j kaminski\nrequested by : shirley crenshaw\nyour order ( see below ) has been assigned to ron cooper . technician will\ncontact you for information and delivery time . please contact the technician\nif you have any question .\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop\n21 \" vl 100 monitor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.537+0000", "entityId": 9098, "properties": {"text": "Subject: re : garp\nfrank ,\ni have reviewed materials from garp but did not find any information\nabout the speaker ' s perks ( like , for example , the right to invite another\nperson ,\nfree of charge ) .\ni shall message garp with this question .\nplease , give me a few more days to think about garp presentation .\nvince\nenron north america corp .\nfrom : frank hayden @ enron 11 / 27 / 2000 03 : 27 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : garp\nvince ,\ni just wanted to follow up and see if i can be your guest at the ny garp\nmeeting . also , have you had any time to think of a topic for january . i\nwould like to get an email out announcing the meeting . let me know your\nthoughts ,\nthanks ,\nfrank", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.542+0000", "entityId": 9099, "properties": {"text": "Subject: re : information\nvince ,\nafter checking into this issue i have found that the type of information\nrequested is proprietary and not available for release . i will try to\ncontact them and see if there is something else we can help them with but as\nfar as the data is concerned i don ' t believe we can help them with that\nrequest . i am sorry i couldn ' t be of more help . thank you .\nshalesh ganjoo\nvince j kaminski\n11 / 21 / 2000 09 : 15 am\nto : shalesh ganjoo / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : information\nshalesh ,\nplease , look into it . can we give them this information ?\ni see a remote possibility of a gain for enron : it ' s in our interest to\nsupport\nthe growth of this market and part of the process is development of the\ninfrastructure for this market and maintaining public interest .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 21 / 2000\n09 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" yann d ' halluin \" on 11 / 16 / 2000 01 : 18 : 39 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : information\ndear sir :\nthe scientific computation group at the university of\nwaterloo , ontario , canada , has recently started to be very\ninterested in the recent developments of the bandwidth\nmarket . we find that the specifics of the bandwidth market\noffer challenges from the modelling point\nof view .\nhowever , we have encountered difficulties when looking for\ndata , and we were wondering if you could help us . specifically\nwe would like to know for a given city pair for the different\nexisting type of lines ( e . g . oc 3 , ocl 2 , oc 48 . . . . )\n1 . what has been the spot lease prices ( e . g . $ / line - type / mile ) for\nthe past 12 months ?\n2 . what is the price of the dark fiber for a given type of line ?\n3 . what is the maintenance cost $ / month ?\n( for the same lines , e . g . oc 3 , ocl 2 , oc 48 , . . . )\n4 . what is the upgrading cost for the different lines ?\n( e . g . how much does it cost to upgrade )\noc 3 - - > ocl 2\noc 3 - - > oc 48\nocl 2 - - > oc 48\n5 . how long does it take to upgrade a line from a certain\ncapacity to another ( e . g . 1 month , 2 month , . . . ) ?\nwe realize that some of these questions may ask for confidential\ndata , in that case we would really appreciate if an order of magnitude\nwas provided . i look forward to hearing from you .\nsincerely ,\nyann d ' halluin\np . s : here is a link to our web page :\nhttp : / / www . scicom . uwaterloo . ca\n- -\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . any unauthorized review , use , disclosure or distribution\nis prohibited . if you are not the intended recipient , please contact\nthe sender by reply e - mail and destroy all copies of the original\nmessage .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.547+0000", "entityId": 9100, "properties": {"text": "Subject: re : houston visit\nsoussan ,\nlet ' s meet at westin oaks next to the reception around 6 : 30 p . m . thursday .\nthere are several nice restaurants within a walking distance to the galleria .\ni shall make a reservation ( is italian or a steakhouse ok ? ) .\nyou can reach me on thursday at my cell phone 713 410 5396 .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 27 / 2000 04 : 37 : 30 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\ngreat ! i look forward to our dinner on thurs . 12 / 7 evening . hopefully your\nflight will be on time . . . although having watched 60 minutes last night and\nsuffered from a # of delays lately , let ' s hope that the \" weather blame \"\ndoesn ' t get in the way . it ' s best to leave me a message @ my usual work #\non thurs . , 914 253 4187 , . . . i can easily check it in houston .\ni ' ll be staying @ the westin oaks in the galleria . . . any preferred place\nthat i can book ( & for what time ) ? ? coming over to down town won ' t be a\nproblem for me either .\nwill be great to see you again .\nsoussan\n914 253 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , november 27 , 2000 12 : 10 pm\nto : faizs @ texaco . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : houston visit\nsoussan ,\nthanks for your message . it would be great to meet you when you come to\nhouston .\ni shall be in town on december 7 , flying back from philly in the morning .\nassuming that the flight is on schedule , i shall be available for dinner .\nplease , let me know how i can contact you on thursday , december the 7 th ,\nto confirm .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 26 / 2000 09 : 04 : 01 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny and hope that all is well and you had a great\nthanksgiving . i ' ll be coming to houston for 12 / 6 - 12 / 7 and hope you are\navailable either evening for dinner . would be great to see you again and\ncatch up with the latest . . . i really enjoyed my visit last april , your\ninsights , and the risk book you gave me .\ni do hope you ' re available to meet and pls let me know which evening suits\nyou better .\nbest ,\nsoussan faiz\ntexaco inc .\n914 253 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.553+0000", "entityId": 9101, "properties": {"text": "Subject: interview schedule for alex tartakouski\nattached please find the interview packet for the above - referenced person .\nthe interview will happen wednesday , november 29 , 2000 . please print all\nthree documents for your hard copies . if you have any questions , or\nconflicts of schedule , please do not hesitate to contact me .\nliz alvarado\n58714", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.560+0000", "entityId": 9102, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\nmarshall :\nthanks for responding so quickly . i have scheduled the following interview :\nwednesday , december 6 - 1 : 00 pm houston time . it will last approximately\n1 hour . we will call you at ( 605 ) 497 - 4045 unless otherwise instructed .\nif you have any questions , please feel free to contact me at 713 / 853 - 5290 .\nbest regards ,\nshirley crenshaw\n\" jingming ' marshall ' yan \" on 11 / 28 / 2000 12 : 59 : 55 pm\nto : shirley . crenshaw @ enron . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : telephone interview with the enron corp . research group\nms . crenshaw ,\nthank you very much for the message . i am very interested in the\nopportunity to talk to personnel from the research group at enron . between\nthe two days you suggest , i prefer wednesday 12 / 6 . considering the\ntwo - hour time difference between california and texas , 11 : 00 am pacific\ntime ( 1 : 00 pm your time ) seems to be a good slot . however , i am open most\nof the day on 12 / 6 so if some other time slot is prefered on your end ,\nplease let me know .\nthanks again . i look forward to talking to you and your\ncolleagues .\njingming\non tue , 28 nov 2000 shirley . crenshaw @ enron . com wrote :\n> good afternoon jingming :\n>\n> professor wolak forwarded your resume to the research group , and\n> they would like to conduct a telephone interview with you , sometime next\n> week , at your convenience . the best days would be tuesday , 12 / 5 or\n> wednesday , 12 / 6 .\n>\n> please let me know which day and what time would be best for you and\n> they will call you . let me know the telephone number that you wish to be\n> contacted at .\n>\n> the interviewers would be :\n>\n> vince kaminski managing director and head of research\n> vasant shanbhogue vice president , research\n> lance cunningham manager , research\n> alex huang manager , research\n>\n> look forward to hearing from you .\n>\n> best regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group .\n> 713 - 853 - 5290\n>\n>\n>\njingming \" marshall \" yan jmyan @ leland . stanford . edu\ndepartment of economics ( 650 ) 497 - 4045 ( h )\nstanford university ( 650 ) 725 - 8914 ( o )\nstanford , ca 94305 358 c , economics bldg\nif one seeks to act virtuously and attain it , then what is\nthere to repine about ? - - confucius\n_ ? oo ? ? ooo ? ? t \u0015 xo - ? ? - - \u0014 ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.565+0000", "entityId": 9103, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\nms . crenshaw ,\nthank you very much for the message . i am very interested in the\nopportunity to talk to personnel from the research group at enron . between\nthe two days you suggest , i prefer wednesday 12 / 6 . considering the\ntwo - hour time difference between california and texas , 11 : 00 am pacific\ntime ( 1 : 00 pm your time ) seems to be a good slot . however , i am open most\nof the day on 12 / 6 so if some other time slot is prefered on your end ,\nplease let me know .\nthanks again . i look forward to talking to you and your\ncolleagues .\njingming\non tue , 28 nov 2000 shirley . crenshaw @ enron . com wrote :\n> good afternoon jingming :\n>\n> professor wolak forwarded your resume to the research group , and\n> they would like to conduct a telephone interview with you , sometime next\n> week , at your convenience . the best days would be tuesday , 12 / 5 or\n> wednesday , 12 / 6 .\n>\n> please let me know which day and what time would be best for you and\n> they will call you . let me know the telephone number that you wish to be\n> contacted at .\n>\n> the interviewers would be :\n>\n> vince kaminski managing director and head of research\n> vasant shanbhogue vice president , research\n> lance cunningham manager , research\n> alex huang manager , research\n>\n> look forward to hearing from you .\n>\n> best regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group .\n> 713 - 853 - 5290\n>\n>\n>\njingming \" marshall \" yan jmyan @ leland . stanford . edu\ndepartment of economics ( 650 ) 497 - 4045 ( h )\nstanford university ( 650 ) 725 - 8914 ( o )\nstanford , ca 94305 358 c , economics bldg\nif one seeks to act virtuously and attain it , then what is\nthere to repine about ? - - confucius\n_ ? oo ? ? ooo ? ? t \u0015 xo - ? ? - - \u0014 ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.570+0000", "entityId": 9104, "properties": {"text": "Subject: mit phone interview - zachary inman\njim coffey , vince kaminski , mark palmer and james scribner ,\nthank you all for taking time out of your busy schedules to conduct the\nfollowing interviews . included is the itinerary for each of your phone\ninterviews with zachary inman from mit .\nyou may reach zach at 617 - 577 - 1565 .\nvince kaminski - please call zach at 7 : 30 am . this will be 8 : 30 am zach ' s\ntime .\nmark palmer - please call zach at 10 : 30 am . this will be 11 : 30 am\nzach ' s time\njames scribner - please call zach at 11 : 30 am . this will be 12 : 30 pm\nzach ' s time .\njim coffey - please call zach at 1 : 30 pm . this will be 2 : 30 pm zach ' s\ntime .\nthe four phone interviews will determine if we are going to invite zach to\nour december 8 th and 9 th analyst super saturday .\ni will send you a packet with all the pertinent details that you will need\nto conduct the 30 - minute phone interview . the packet will contain his resume\nand an evaluation form , which structures the format of your interview . if\nyou have any questions please feel free to give me a call .\nplease interoffice the evaluation form , once you have completed the\ninterview , to ebl 167 . it is important that i receive this evaluation\npromptly .\nif there are any changes , due to the unforeseen , i will call you prior to the\nscheduled interviews .\nthanks so much for your help !\nbeth miertschin\nrecruiter\next . 30322\nshawna johnson\nrecruiting coordinator\next . 58369", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.576+0000", "entityId": 9105, "properties": {"text": "Subject: re : telephone interview with the enron research group\nhi christine !\nthanks for being so prompt !\ni have scheduled the telephone interview for 2 : 00 pm on thursday ,\nnovember 30 th . they will call you at ( 504 ) 861 - 9110 . if this is not\nthe telephone number that you wish to be contacted at , please let me\nknow the number that you do want them to call you on .\nthe research group does sponsor green cards and visas . below is\na short synopsis of what the research group does . however , they will\nbe glad to answer any questions you have during the interview .\n\" the enron research group is responsible for option modeling , building\nsystems for risk quantification and management , development of\noptimization systems , help with statistical analysis and anything that\nrequires\nadvanced math \" . the research group supports all units of enron .\nif you have any other questions , please feel free to contact me , or feel\nfree to ask during the interview .\ntalk to you on thursday !\nbest regards ,\nshirley crenshaw\n\" qing chen \" on 11 / 27 / 2000 05 : 40 : 09 pm\nto :\ncc :\nsubject : re : telephone interview with the enron research group\nhi shirley ,\nthanks for the arrangement . i am available to start the interview :\n- from 9 am to 10 am on wednesday and thursday\n- from 2 : 30 pm to 4 pm on thursday\nnew orleans is in the central time zone .\nin addition , could you let me know :\n- what is the main responsibilities of the research group ;\n- what positions you are recruiting for ; and\n- what qualifications and skill sets are critical to these positions .\nthanks . i look forward to hearing from you .\nbest regards ,\nqing ( christine ) chen\nmba 2001\na . b . freeman school of business\ntulane university\ntel : ( 504 ) 861 - 9110\ne - mail : qchenl @ tulane . edu\n- - - - - original message - - - - -\nfrom :\nto :\nsent : monday , november 27 , 2000 10 : 25 am\nsubject : telephone interview with the enron research group\n> good morning ms . chen :\n>\n> vince kaminski and several members of the research group would like\n> to conduct a telephone interview with you sometime this week at your\n> convenience . please let me know the times that you are available and\n> they will contact you .\n>\n> the telephone interviews usually last approximately 1 hour and will be\n> conducted via a speaker phone .\n>\n> the interviewers will be :\n>\n> vince kaminski managing director and head of research\n> stinson gibner vice president , research\n> tanya tamarchenko director , research\n> zimin lu director , research\n>\n> look forward to hearing from you .\n>\n> best regards ,\n>\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.585+0000", "entityId": 9106, "properties": {"text": "Subject: re :\nfrank ,\nthanks . i have given your name to the employee energy and power risk\nmanagement\nmagazine who organizes power 2001 conference in houston ( may of 2001 ) .\nvince\n\" frank a . wolak \" on 11 / 28 / 2000 09 : 04 : 42 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject :\nvince ,\nsorry about the delay in responding . it ' s the end\nof the quarter and i ' m teaching 3 courses , so things are\nvery busy , plus i had to work on a response to the ferc\nproposed order for california . here is my student ' s cv .\nplease let me know if you need more information .\nfrank wolak\n- jmyan _ cv _ newl . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.593+0000", "entityId": 9107, "properties": {"text": "Subject: re : 2001 fma european conference\nthat ' s fine . i didn ' t want to change anything until i heard from you guys .\nsee ya !\njohn\nat 11 : 06 am 11 / 28 / 00 - 0600 , you wrote :\n>\n> john ,\n>\n> thanks . stinson will be able to join us for dinner . he is opting out of\n> the paper due to his big workload but we can get his perspective on\n> the last 8 years he spent at enron .\n>\n> vince\n>\n>\n>\n>\n>\n> \" john d . martin \" on 11 / 28 / 2000 09 : 44 : 17 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : 2001 fma european conference\n>\n>\n> here ' s the info on the european conference . just for your files .\n>\n> john\n>\n> > date : tue , 28 nov 2000 08 : 40 : 39 - 0500\n> > from : karen wright\n> > subject : 2001 fma european conference\n> > to : kwright @ fma . org\n> > x - mailer : mozilla 4 . 5 [ en ] ( win 98 ; i )\n> > x - accept - language : en , pdf\n> >\n> > 2001 fma european conference\n> >\n> > the fifth annual european meeting of the financial management\n> > association international ( fma ) will be held may 31 and june 1 , 2001 at\n> > the hotel sofitel ( rive gauche ) in paris , france . fma ' s european\n> > meeting brings together academicians and practitioners with interests in\n> > financial decision - making . the meeting provides a forum for presenting\n> > new research and discussing current issues in financial management ,\n> > investments , financial markets and institutions , and related topics .\n> > keynote addresses and other special presentations will be held in\n> > addition to research paper presentations .\n> >\n> > paper submissions\n> > research papers . the program includes traditional research paper\n> > presentations . criteria used to determine the suitability of these\n> > papers for the program include the nature of the research problem ,\n> > implications of the proposed research , the quality of the research\n> > design , and the expected contribution of the research to the\n> > literature . please note that the purpose of these sessions is to\n> > present new and unpublished research .\n> >\n> > submission fee . there is no submission fee for the fma european\n> > conference .\n> >\n> > submissions . please follow these steps :\n> > complete the presentation form that can be downloaded at\n> > www . fma . org / paris . htm . carefully select the subject code on the\n> > presentation form that most closely describes your research . the code\n> > number you select will be used to select reviewers for your proposal .\n> >\n> > send six ( 6 ) copies of your completed paper , along with the completed\n> > presentation form , to the fma office ( financial management association ,\n> > university of south florida , college of business administration , tampa\n> > fl 33620 - 5500 , usa ) .\n> > please note that only completed papers will be accepted for the fma\n> > european conference review process .\n> >\n> > the paper submission deadline is friday , december 1 , 2000 .\n> >\n> > you will receive an electronic confirmation of your submission within\n> > six weeks of its receipt by the fma office , and you will be notified of\n> > the results of the reviewing process by the middle of february , 2001 .\n> >\n> > competitive paper awards\n> > the financial management association international is pleased to\n> > announce that four ( 4 ) $ 1 , 500 awards will be presented in conjunction\n> > with the 2001 fma european conference . the \" young scholars \" award will\n> > be presented to the best paper authored by a ph . d . student ( or\n> > equivalent ) or recent ph . d . ( or equivalent ) graduate . three additional\n> > $ 1 , 500 awards will be presented to the papers deemed \" best of the best \"\n> > by the members of the 2001 fma european conference competitive paper\n> > awards committee . please note that these awards will be made only if , in\n> > the opinion of the fma awards committee , a paper warrants such a\n> > decision . the decisions of the fma awards committee are final .\n> >\n> > accepted papers . if your proposal is accepted , the version of the paper\n> > you submit will be sent to its discussant as soon as he / she is\n> > identified . you are obligated to send the final version of your paper to\n> > the discussant and session chair by april 27 , 2001 . you also are\n> > obligated to present your paper in a professional manner at the assigned\n> > fma program session .\n> >\n> > the collegiality of the meeting provides a very special opportunity for\n> > participants to share their work and to hear about the work others are\n> > doing . thus , individuals whose papers are accepted for presentation at\n> > the 2001 fma european conference will be expected to either chair a\n> > session or discuss a paper .\n> >\n> > program co - chairs\n> >\n> > francois degeorge\n> > hec paris\n> > 1 rue de la lib , ration\n> > 78351 jouy en josas cedex\n> > france\n> > 33 - 1 - 39 - 67 - 72 - 34 ( ph )\n> > 33 - 1 - 39 - 67 - 94 - 34 ( fax )\n> > degeorge @ hec . fr\n> >\n> > kent womack\n> > dartmouth college\n> > amos tuck school\n> > hanover , nh 03755\n> > 1 603 646 2806 ( ph )\n> > 1 603 646 1308 ( fax )\n> > kent . womack @ dartmouth . edu\n> >\n> > additional opportunities for participation\n> >\n> > session chairperson or discussant . if you wish to serve as the\n> > chairperson of a session or paper discussant , but are not submitting a\n> > paper , please complete the participation form which can be downloaded\n> > from www . fma . org / paris . htm . submit the completed form to the fma office\n> > by december 1 , 2000 . session organization will take place in march ,\n> > 2001 .\n> >\n> > deadline summary\n> >\n> > completed papers : december 1 , 2000\n> > chairperson / discussant requests : december 1 , 2000\n> >\n> >\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.599+0000", "entityId": 9108, "properties": {"text": "Subject: re : mit financial engineering pro - seminar\nclaudio ,\ni have done it twice in the past . i shall be glad to help again .\nvince\nfrom : claudio ribeiro @ enron 11 / 21 / 2000 08 : 32 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : mit financial engineering pro - seminar\nvince :\nit was stewart myers , head of the financial engineering track . he did not\ncontact me directly , he contacted josef ( an mit student that spent the summer\nwith enron and received an offer to come to work with us ) .\njosef wanted to know who could make the commitment of sponsoring ( sending the\nproblem ) .\nclaudio\nvince j kaminski @ ect\n11 / 21 / 2000 08 : 16 am\nto : claudio ribeiro / corp / enron @ enron\ncc :\nsubject : re : mit financial engineering pro - seminar\nclaudio .\nwho was the professor who came up with the request ?\nvince\nfrom : claudio ribeiro @ enron 11 / 20 / 2000 05 : 04 pm\nto : vince j kaminski / hou / ect @ ect\ncc : joseph hrgovcic / hou / ect @ ect\nsubject : mit financial engineering pro - seminar\nvince ,\ni have received a call from mit asking if enron would be interested in\nsponsoring a financial engineering pro - seminar .\nthis means that enron would propose a problem that would have its solution\ndeveloped by students in the financial engineering track . these students\nwould present the findings in the end .\ni think that enron has already sponsored a financial engineering pro - seminar .\ni remember something about real options at the time i was at school .\nplease , let me know if enron has the interest , specifically the research .\ntalking here at the weather desk , mark tawney expressed interest . if you\nagree , we ( the weather desk ) could co - sponsor this pro - seminar with the\nresearch . the idea , then , would be to propose a problem connected to weather\ntrading .\nplease , give me your thoughts about this issue .\nthanks ,\nclaudio", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.605+0000", "entityId": 9109, "properties": {"text": "Subject: re : thanksgiving staff meeting\nhi clayton ,\ni went to vince and asked him about you attending the staff\nmeeting and he said it was okay .\nsee you there !\nkevin g moore\n11 / 28 / 2000 10 : 30 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , martin lin / hou / ect @ ect ,\nmaureen raymond / hou / ect @ ect , osman sezgen / hou / ees @ ees , paulo\nissler / hou / ect @ ect , amitava dhar / corp / enron @ enron , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , jose marquez / corp / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron , elena chilkina / corp / enron @ enron , sevil\nyaman / corp / enron @ enron , sofya tamarchenko / na / enron @ enron , bob\nlee / na / enron @ enron , gwyn koepke / na / enron @ enron , hector campos / hou / ect @ ect ,\nanita dupont / na / enron @ enron , youyi feng / na / enron @ enron , v charles\nweldon / hou / ect @ ect , yana kristal / corp / enron @ enron , praveen\nmellacheruvu / hou / ees @ ees , li sun / na / enron @ enron , stephen\nbennett / na / enron @ enron , roman zadorozhny / hou / ees @ ees , lance\ncunningham / na / enron @ enron , leann walton / na / enron @ enron , shane\ngreen / hou / ees @ ees , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : thanksgiving staff meeting\nhello everyone ,\nthursday is just two days away .\nthe staff meeting begins at the regular time , 11 : 30 a . m .\nwe will have a hot traditional thanksgiving lunch\nwith all the trimmings .\neveryone please be present . . . . . . .\nthanks\nsee you in the meeting\nkevin moore\nkevin g moore\n11 / 21 / 2000 06 : 09 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , martin lin / hou / ect @ ect ,\nmaureen raymond / hou / ect @ ect , osman sezgen / hou / ees @ ees , paulo\nissler / hou / ect @ ect , amitava dhar / corp / enron @ enron , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , jose marquez / corp / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron , elena chilkina / corp / enron @ enron , sevil\nyaman / corp / enron @ enron , sofya tamarchenko / na / enron @ enron , bob\nlee / na / enron @ enron , gwyn koepke / na / enron @ enron , hector campos / hou / ect @ ect ,\nanita dupont / na / enron @ enron , youyi feng / na / enron @ enron , v charles\nweldon / hou / ect @ ect , yana kristal / corp / enron @ enron , praveen\nmellacheruvu / hou / ees @ ees , li sun / na / enron @ enron , stephen\nbennett / na / enron @ enron , roman zadorozhny / hou / ees @ ees , lance\ncunningham / na / enron @ enron , leann walton / na / enron @ enron , shane\ngreen / hou / ees @ ees , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : thanksgiving staff meeting\nwe are approaching the holidays ,\nremember , to be very careful during this time .\ni look forward to seeing everyone at the staff meeting on thursday 11 / 30 / 00 .\nto enjoy yet another meal of thanksgiving with co - workers .\nenjoy the holiday !\nsee you when you return . . . . . . . . . . . . . . . . . . . . . .\nthanks\nkevin moore\nkevin g moore\n11 / 01 / 2000 02 : 33 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , martin lin / hou / ect @ ect ,\nmaureen raymond / hou / ect @ ect , osman sezgen / hou / ees @ ees , paulo\nissler / hou / ect @ ect , amitava dhar / corp / enron @ enron , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , jose marquez / corp / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron , elena chilkina / corp / enron @ enron , sevil\nyaman / corp / enron @ enron , sofya tamarchenko / na / enron @ enron , bob\nlee / na / enron @ enron , gwyn koepke / na / enron @ enron , hector campos / hou / ect @ ect ,\nanita dupont / na / enron @ enron , youyi feng / na / enron @ enron , v charles\nweldon / hou / ect @ ect , yana kristal / corp / enron @ enron , praveen\nmellacheruvu / hou / ees @ ees , li sun / na / enron @ enron , stephen\nbennett / na / enron @ enron , roman zadorozhny / hou / ees @ ees , lance\ncunningham / na / enron @ enron , leann walton / na / enron @ enron , shane\ngreen / hou / ees @ ees\ncc :\nsubject : thanksgiving staff meeting\ndear research group ,\nas you are aware thanksgiving is thursday , nov . 23 rd\nand is a holiday .\nwe as enron employee ' s will be off both the 23 rd and 24 th .\nthanksgiving is a day appointed for giving thanks for divine goodness .\nafter returning to work we will keep the tradition of giving thanks\nright here in the work place by celebrating thanksgiving in the\nthursday ' s staff meeting 11 - 30 - 00 .\nwe will celebrate a act of giving thanks to one another as\nco - workers and member of the same research group .\nplease look forward to hearing more regarding the staff meeting 11 - 30 - 00\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.613+0000", "entityId": 9110, "properties": {"text": "Subject: test project proposal\nvince :\ni did get the proposal out today , but after close of business your time .\nsorry for the brief delay . you will find two attachments . the first is our\ntime and materials contract , which will need to be executed if you want to\ndo the test project . the second is an addendum to that time and materials\ncontract under section h , which allows for specific work statements to amend\nand supersede the general consulting agreement . the general consulting\nagreement ( termsandconditions . doc ) contains all the confidentiality , billing\nrate , and other provisions that your contract people will probably want and\nprovides a general framework for doing business . the work statement\n( testproject . doc ) contains the specific provisions for our standard weeklong\nonsite test project .\ni hope we get the opportunity to serve you and ultimately to make\nmarketpoint available to you . in light of the contiguity to the holidays , i\ndont think it would be realistic to try to schedule this test project before\nthen , probably from your perpsective as well as ours . let ' s think about\ndoing it the first opportunity in january if you decide to go forward if\nthat is ok with you .\nall the best .\ndale\n- testproject . doc\n- termsandconditions . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.621+0000", "entityId": 9111, "properties": {"text": "Subject: gentlemen ,\nspoke to vince k today and asked if he would send stinson gibner to sidney\nto be available on monday to review the x system .\npaul , make sure our x friends are available and the confidentially agreement\nis signed . further , i spoke to phillip b . about a technical going too .\ng ' day mates ,\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.629+0000", "entityId": 9112, "properties": {"text": "Subject: market maker simulation v . 2\nstinson and vince ,\ni finished the second version of the model which deals with open to close\ntrading .\nthe major difference is that there is an additional mark to market at open\nprice which\nwill affect the p / l .\ni also added the output features that john wants to see .\nthe cumulative p / l is path dependent , the net open allowed seemingly has\na strong influence on the cumulative p / l trajectory . ( the anomaly i\ndiscussed\nwith vince is due to the trajectory shape change which needs further\nexamination ) .\ncould you review what i have done before we talk to john again ?\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.633+0000", "entityId": 9113, "properties": {"text": "Subject: friday night dinner itinerary\ndinner team itinerary\ndate : friday , december 1 , 2000\nrestaurant : la columbe d ' or\n3410 montrose\n713 - 524 - 7999\ncocktails : 7 : 30 pm\ndinner : 8 : 30 pm \u0001 ) 10 : 30 pm\ntable no . 7\nexecutive host : vince kaminski\nassociate / analyst co - host : joana ryan\ndinner details :\nall super saturday candidates will be arriving at the restaurant by shuttle .\na member of the associate and analyst program staff will greet them . this\nstaff member will also be there to assist you .\nthere will be a short cocktail reception prior to dinner . during the\nreception , you will have the opportunity to meet many of the candidates . a\ntable has been reserved in the executive host \u0001 , s name . students will not have\nseating assignments this year . the hosts should feel free to invite up to\nfour students to sit at their table if desired .\ndress for the evening is business attire . hosts are no longer responsible\nfor the bill .\nif you would like to provide feedback on any candidate , an evaluation form is\nattached or you may discuss your input with the associate and analyst staff\nmember after dinner . the evaluation form must be faxed to 713 - 646 - 5935 ,\nprior to 12 : 00 p . m . on saturday to be included in the decision meeting .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.638+0000", "entityId": 9114, "properties": {"text": "Subject: dec 2 super saturday friday and saturday participation\nplease see attached .\nthanks\nshelly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.643+0000", "entityId": 9115, "properties": {"text": "Subject: 2 nd message - re : dec 2 super saturday interviewer confirmation\nplease see the attached for interviewer information .\nshelly jones\n11 / 28 / 2000 05 : 54 pm\nto : scott earnest / hou / ect @ ect , tim mckone / corp / enron @ enron , richard\ndimichele / enron communications @ enron communications , brandon\nneff / hou / ees @ ees , john j lavorato / corp / enron @ enron , guido\ncaranti / enron _ development @ enron _ development , robert bailey / hou / ees @ ees , dixie\nyeck / enron communications @ enron communications , cheryl lipshutz / hou / ect @ ect ,\njohn godbold / hou / ect @ ect , chuck randall / hou / ees @ ees , michelle\njuden / hou / ees @ ees , mark reese / hou / ees @ ees , jim fallon / enron\ncommunications @ enron communications , sarah wesner / corp / enron @ enron , sylvia\nbarnes / hou / ees @ ees , kirk neuner / enron communications @ enron communications ,\nmari capestany / hou / ees @ ees , wayne perry / enron _ development @ enron _ development ,\njohn neslage / enron _ development @ enron _ development , fred lagrasta / hou / ect @ ect ,\nbani arora / hou / ees @ ees , jonathan risch / hou / ees @ ees , heather\nkroll / hou / ect @ ect , brad romine / na / enron @ enron , julia kazibwe / hou / ees @ ees ,\nthomas rich / fgt / enron @ enron , mark smith / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , kathy m lynn / corp / enron @ enron , stephen stenhouse / enron\ncommunications @ enron communications , jere c overdyke / hou / ect @ ect , jim\nmeyn / na / enron @ enron , donald reid / enron @ gateway , ken gustafson / hou / ees @ ees ,\ndaniel reck / hou / ect @ ect\ncc : sue foust / hou / ect @ ect , rebecca serwin / corp / enron @ enron , crissy\ncollett / enron communications @ enron communications , sonia\nguerra / enron _ development @ enron _ development , mary lou\nbrowder / enron _ development @ enron _ development , mary lou\nbrowder / enron _ development @ enron _ development , adriana cortes / hou / ect @ ect ,\nleticia botello / hou / ees @ ees , paula pierre / enron communications @ enron\ncommunications , theresa davis / hou / ect @ ect , kelly lacalli / hou / ees @ ees , lily\nguerra / hou / ees @ ees , lucy marshall / enron communications @ enron communications ,\namy rios / hou / ect @ ect , karen street / hou / ees @ ees , cindy long / corp / enron @ enron ,\nbecky young / na / enron @ enron , marcia a linton / na / enron @ enron , claudette\nharvey / hou / ect @ ect , brenda flores - cuellar / na / enron @ enron , valerie\nvillareal / hou / ees @ ees , becky young / na / enron @ enron , amy\nflores / corp / enron @ enron , sally slaughter / enron communications @ enron\ncommunications , donna baker / hou / ect @ ect , chaun roberts / na / enron @ enron , terri\nbachand / enron communications @ enron communications , angie collins / hou / ect @ ect\nsubject : dec 2 super saturday interviewer confirmation\nplease see the attached .\nthis is a confirmation for saturday interviews only . if you volunteered for\nfriday night dinner as well , notification will be sent via email by end of\nwork day wednesday regarding your friday night dinner participation .\nplease feel free to contact me with any questions .\nthank you\nshelly jones\next . 3 - 0943", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.650+0000", "entityId": 9116, "properties": {"text": "Subject: announcing the third annual texas finance festival\nhello friends ,\nattached is the program announcement for the third edition of the texas\nfinance festival to be held in san antonio ( once again ) . you will note\nthat we have some new and fun entertainment lined up to accompany the\nsuperb program put together by sheridan titman ( and company ) .\nyou can help us by registering early so we have put a discount into the\nregistration fee if you get your registration form and check in by january\n15 , 2001 . however , we would really appreciate hearing from you asap if you\ndo plan to come via return e - mail .\nlooking forward to seeing you all again in the spring .\njohn\n- announcerev . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.655+0000", "entityId": 9117, "properties": {"text": "Subject: re : updated message - preliminary rankings\nnorma ,\ni could not open the message . i get the message : encrypted , not intended for\nyou .\nvince\nnorma villarreal\n11 / 29 / 2000 06 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : updated message - preliminary rankings", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.660+0000", "entityId": 9118, "properties": {"text": "Subject: reminder for dinner on saturday dec 2 nd\nthis is to remind all of you of the dinner plan ( with\nfamily ) at my house on saturday dec 2 nd . we will\nexpect you at about 6 : 00 pm .\naddress : 3410 s . briarpark ln , sugar land\ndirections ( from downtown ) :\ntake 59 south all the way past sam houston beltway 8 ,\nand past highway 6 . take the next exit - - - first\ncolony blvd / sweetwater blvd . take a left at the\ntraffic light onto sweetwater blvd ( over the highway ) .\ngo straight on sweetwater blvd past a few traffic\nlights and a few stop signs . after passing a golf\ncourse on the right , you will get a subdivision\n\" crescents on the green \" on the right , and a\nsubdivision \" briarwood \" on the left . take a left into\nthe briarwood subdivision and an immediate right onto\ns . briarpark ln . ( there is only one street in the\nsubdivision ) . our house ( 3410 ) is right there - - - 3 rd\nhouse from cul - de - sec .\nphone : 281 265 8959\ncell : 713 569 2438\nvasant\ndo you yahoo ! ?\nyahoo ! shopping - thousands of stores . millions of products .\nhttp : / / shopping . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.665+0000", "entityId": 9119, "properties": {"text": "Subject: re : houston visit\nsoussan ,\nit seems we have planned for all contingencies .\nlook forward to meeting you next week .\nvince\n\" faiz , soussan \" on 11 / 28 / 2000 06 : 51 : 51 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\nvince ,\nyour suggested arrangement is perfect with me and i love both italian or\nsteak . . . the choice is yours . i really look forward to our meeting vkaminski @ aol . com\nsubject : re : houston visit\nsoussan ,\nlet ' s meet at westin oaks next to the reception around 6 : 30 p . m . thursday .\nthere are several nice restaurants within a walking distance to the\ngalleria .\ni shall make a reservation ( is italian or a steakhouse ok ? ) .\nyou can reach me on thursday at my cell phone 713 410 5396 .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 27 / 2000 04 : 37 : 30 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\ngreat ! i look forward to our dinner on thurs . 12 / 7 evening . hopefully\nyour\nflight will be on time . . . although having watched 60 minutes last night and\nsuffered from a # of delays lately , let ' s hope that the \" weather blame \"\ndoesn ' t get in the way . it ' s best to leave me a message @ my usual work #\non thurs . , 914 253 4187 , . . . i can easily check it in houston .\ni ' ll be staying @ the westin oaks in the galleria . . . any preferred place\nthat i can book ( & for what time ) ? ? coming over to down town won ' t be a\nproblem for me either .\nwill be great to see you again .\nsoussan\n914 253 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , november 27 , 2000 12 : 10 pm\nto : faizs @ texaco . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : houston visit\nsoussan ,\nthanks for your message . it would be great to meet you when you come to\nhouston .\ni shall be in town on december 7 , flying back from philly in the morning .\nassuming that the flight is on schedule , i shall be available for dinner .\nplease , let me know how i can contact you on thursday , december the 7 th ,\nto confirm .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 26 / 2000 09 : 04 : 01 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny and hope that all is well and you had a great\nthanksgiving . i ' ll be coming to houston for 12 / 6 - 12 / 7 and hope you are\navailable either evening for dinner . would be great to see you again and\ncatch up with the latest . . . i really enjoyed my visit last april , your\ninsights , and the risk book you gave me .\ni do hope you ' re available to meet and pls let me know which evening suits\nyou better .\nbest ,\nsoussan faiz\ntexaco inc .\n914 253 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.670+0000", "entityId": 9120, "properties": {"text": "Subject: re : telephone interview with the enron research group\ni have had to reschedule the interview with nina knirel for tomorrow . the\nfollowing is the new schedule .\nzimin lu and tanya tamarchenko 3 : 30 - 4 : 00 pm\nvince kaminski and stinson gibner 4 : 00 - 4 : 30 pm\nher flight does not arrive until noon .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 29 / 2000\n04 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n11 / 29 / 2000 09 : 59 am\nto : nina knirel @ enron\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , zimin\nlu / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect\nsubject : re : telephone interview with the enron research group\nhi nina :\nwe would be glad to see you tomorrow . since this is a preliminary\ninterview to see if there is a fit and an interest , we will schedule an hour\nand probably the interviewers will double up their time .\ni have scheduled the following , if the times do not work for you , please\nlet me know .\n9 : 00 am vince kaminski and stinson gibner\n9 : 30 am tanya tamarchenko and zimin lu\nwhen you come into the enron bldg , go to the security desk and ask\nfor me , they will call me and i will meet you in the lobby of the 19 th\nfloor .\nthanks and have a safe trip .\nregards ,\nshirley crenshaw\nnina knirel on 11 / 29 / 2000 09 : 52 : 02 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : telephone interview with the enron research group\ndear shirley crenshaw ,\nthank you very much for your interest . i will be in\nhouston tomorrow morning and i thought that it could\nbe more convenient if we can meet in person . if you\nprefer the phone interview , let me know what number i\nshould call and we can have it tomorrow .\nthanks again ,\nnina knirel\n- - - shirley . crenshaw @ enron . com wrote :\n> good morning ms . knirel :\n>\n> vince kaminski and several members of the research\n> group would like\n> to conduct a telephone interview with you sometime\n> this week at your\n> convenience . please let me know the times that you\n> are available and\n> they will contact you .\n>\n> the telephone interviews usually last approximately\n> 1 hour and will be\n> conducted via a speaker phone .\n>\n> the interviewers will be :\n>\n> vince kaminski managing director and head of\n> research\n> stinson gibner vice president , research\n> tanya tamarchenko director , research\n> zimin lu director , research\n>\n> look forward to hearing from you .\n>\n> best regards ,\n>\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group\n>\ndo you yahoo ! ?\nyahoo ! shopping - thousands of stores . millions of products .\nhttp : / / shopping . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.676+0000", "entityId": 9121, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\nsince several of you will be out on the 6 th , we have moved the telephone\ninterview for marshall yan to tuesday , the 5 th at 1 : 00 pm .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 29 / 2000\n03 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jingming ' marshall ' yan \" on 11 / 29 / 2000 03 : 16 : 16 pm\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : telephone interview with the enron corp . research group\nms . crenshaw ,\ntuesday the 5 th is ok with me . i will talk to you then .\nmarshall\non wed , 29 nov 2000 shirley . crenshaw @ enron . com wrote :\n>\n> hi marshall :\n>\n> i have some unfortunate news . several of the interviewers will be\n> traveling\n> next week and they have had to schedule their return on wednesday the\n> 6 th . would you be able to do the telephone interview on tuesday , the\n> 5 th instead ? the same time 1 : 00 pm houston time .\n>\n> please let me know as soon as possible .\n>\n> sorry for the change !\n>\n> regards ,\n>\n> shirley crenshaw\n>\n>\n>\n>\n>\n>\n>\n>\n> \" jingming ' marshall ' yan \" on 11 / 28 / 2000 11 : 30 : 20 pm\n>\n> to : shirley . crenshaw @ enron . com\n> cc :\n> subject : re : telephone interview with the enron corp . research group\n>\n>\n> ms . crenshaw ,\n>\n> thank you for the arrangement . i will talk to you then .\n>\n> marshall\n>\n> on tue , 28 nov 2000 shirley . crenshaw @ enron . com wrote :\n>\n> >\n> > marshall :\n> >\n> > thanks for responding so quickly . i have scheduled the following\n> > interview :\n> >\n> > wednesday , december 6 - 1 : 00 pm houston time . it will last approximately\n> > 1 hour . we will call you at ( 605 ) 497 - 4045 unless otherwise instructed .\n> >\n> > if you have any questions , please feel free to contact me at\n> 713 / 853 - 5290 .\n> >\n> > best regards ,\n> >\n> > shirley crenshaw\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> > \" jingming ' marshall ' yan \" on 11 / 28 / 2000 12 : 59 : 55 pm\n> >\n> > to : shirley . crenshaw @ enron . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : re : telephone interview with the enron corp . research group\n> >\n> >\n> > ms . crenshaw ,\n> >\n> > thank you very much for the message . i am very interested in the\n> > opportunity to talk to personnel from the research group at enron .\n> between\n> > the two days you suggest , i prefer wednesday 12 / 6 . considering the\n> > two - hour time difference between california and texas , 11 : 00 am pacific\n> > time ( 1 : 00 pm your time ) seems to be a good slot . however , i am open most\n> > of the day on 12 / 6 so if some other time slot is prefered on your end ,\n> > please let me know .\n> >\n> > thanks again . i look forward to talking to you and your\n> > colleagues .\n> >\n> > jingming\n> >\n> > on tue , 28 nov 2000 shirley . crenshaw @ enron . com wrote :\n> >\n> > > good afternoon jingming :\n> > >\n> > > professor wolak forwarded your resume to the research group , and\n> > > they would like to conduct a telephone interview with you , sometime\n> next\n> > > week , at your convenience . the best days would be tuesday , 12 / 5 or\n> > > wednesday , 12 / 6 .\n> > >\n> > > please let me know which day and what time would be best for you and\n> > > they will call you . let me know the telephone number that you wish to\n> be\n> > > contacted at .\n> > >\n> > > the interviewers would be :\n> > >\n> > > vince kaminski managing director and head of research\n> > > vasant shanbhogue vice president , research\n> > > lance cunningham manager , research\n> > > alex huang manager , research\n> > >\n> > > look forward to hearing from you .\n> > >\n> > > best regards ,\n> > >\n> > > shirley crenshaw\n> > > administrative coordinator\n> > > enron research group .\n> > > 713 - 853 - 5290\n> > >\n> > >\n> > >\n> >\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > jingming \" marshall \" yan jmyan @ leland . stanford . edu\n> > department of economics ( 650 ) 497 - 4045 ( h )\n> > stanford university ( 650 ) 725 - 8914 ( o )\n> > stanford , ca 94305 358 c , economics bldg\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > if one seeks to act virtuously and attain it , then what is\n> > there to repine about ? - - confucius\n> >\n> > _ ? oo ? ? ooo ? ? t \u0015 xo - ? ? - - \u0014 ? ?\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> jingming \" marshall \" yan jmyan @ leland . stanford . edu\n> department of economics ( 650 ) 497 - 4045 ( h )\n> stanford university ( 650 ) 725 - 8914 ( o )\n> stanford , ca 94305 358 c , economics bldg\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> if one seeks to act virtuously and attain it , then what is\n> there to repine about ? - - confucius\n>\n> _ ? oo ? ? ooo ? ? t \u0015 xo - ? ? - - \u0014 ? ?\n>\n>\n>\n>\n>\n>\n>\njingming \" marshall \" yan jmyan @ leland . stanford . edu\ndepartment of economics ( 650 ) 497 - 4045 ( h )\nstanford university ( 650 ) 725 - 8914 ( o )\nstanford , ca 94305 358 c , economics bldg\nif one seeks to act virtuously and attain it , then what is\nthere to repine about ? - - confucius\n_ ? oo ? ? ooo ? ? t \u0015 xo - ? ? - - \u0014 ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.685+0000", "entityId": 9122, "properties": {"text": "Subject: re : telephone interview with the enron corp . research group\nmartin :\nlance will be out of town on the 6 th of december and he suggested that\nyou interview jingming ( marshall ) in his place ( it is a telephone\ninterview ) .\ncan you do that ?\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 11 / 29 / 2000\n01 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n11 / 28 / 2000 01 : 32 pm\nto : \" jingming ' marshall ' yan \" @ enron\ncc : lance cunningham / na / enron @ enron , alex huang / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : re : telephone interview with the enron corp . research group\nmarshall :\nthanks for responding so quickly . i have scheduled the following interview :\nwednesday , december 6 - 1 : 00 pm houston time . it will last approximately\n1 hour . we will call you at ( 605 ) 497 - 4045 unless otherwise instructed .\nif you have any questions , please feel free to contact me at 713 / 853 - 5290 .\nbest regards ,\nshirley crenshaw\n\" jingming ' marshall ' yan \" on 11 / 28 / 2000 12 : 59 : 55 pm\nto : shirley . crenshaw @ enron . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : telephone interview with the enron corp . research group\nms . crenshaw ,\nthank you very much for the message . i am very interested in the\nopportunity to talk to personnel from the research group at enron . between\nthe two days you suggest , i prefer wednesday 12 / 6 . considering the\ntwo - hour time difference between california and texas , 11 : 00 am pacific\ntime ( 1 : 00 pm your time ) seems to be a good slot . however , i am open most\nof the day on 12 / 6 so if some other time slot is prefered on your end ,\nplease let me know .\nthanks again . i look forward to talking to you and your\ncolleagues .\njingming\non tue , 28 nov 2000 shirley . crenshaw @ enron . com wrote :\n> good afternoon jingming :\n>\n> professor wolak forwarded your resume to the research group , and\n> they would like to conduct a telephone interview with you , sometime next\n> week , at your convenience . the best days would be tuesday , 12 / 5 or\n> wednesday , 12 / 6 .\n>\n> please let me know which day and what time would be best for you and\n> they will call you . let me know the telephone number that you wish to be\n> contacted at .\n>\n> the interviewers would be :\n>\n> vince kaminski managing director and head of research\n> vasant shanbhogue vice president , research\n> lance cunningham manager , research\n> alex huang manager , research\n>\n> look forward to hearing from you .\n>\n> best regards ,\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group .\n> 713 - 853 - 5290\n>\n>\n>\njingming \" marshall \" yan jmyan @ leland . stanford . edu\ndepartment of economics ( 650 ) 497 - 4045 ( h )\nstanford university ( 650 ) 725 - 8914 ( o )\nstanford , ca 94305 358 c , economics bldg\nif one seeks to act virtuously and attain it , then what is\nthere to repine about ? - - confucius\n_ ? oo ? ? ooo ? ? t \u0015 xo - ? ? - - \u0014 ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.694+0000", "entityId": 9123, "properties": {"text": "Subject: re : telephone interview with the enron research group\nhi nina :\nwe would be glad to see you tomorrow . since this is a preliminary\ninterview to see if there is a fit and an interest , we will schedule an hour\nand probably the interviewers will double up their time .\ni have scheduled the following , if the times do not work for you , please\nlet me know .\n9 : 00 am vince kaminski and stinson gibner\n9 : 30 am tanya tamarchenko and zimin lu\nwhen you come into the enron bldg , go to the security desk and ask\nfor me , they will call me and i will meet you in the lobby of the 19 th\nfloor .\nthanks and have a safe trip .\nregards ,\nshirley crenshaw\nnina knirel on 11 / 29 / 2000 09 : 52 : 02 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject : re : telephone interview with the enron research group\ndear shirley crenshaw ,\nthank you very much for your interest . i will be in\nhouston tomorrow morning and i thought that it could\nbe more convenient if we can meet in person . if you\nprefer the phone interview , let me know what number i\nshould call and we can have it tomorrow .\nthanks again ,\nnina knirel\n- - - shirley . crenshaw @ enron . com wrote :\n> good morning ms . knirel :\n>\n> vince kaminski and several members of the research\n> group would like\n> to conduct a telephone interview with you sometime\n> this week at your\n> convenience . please let me know the times that you\n> are available and\n> they will contact you .\n>\n> the telephone interviews usually last approximately\n> 1 hour and will be\n> conducted via a speaker phone .\n>\n> the interviewers will be :\n>\n> vince kaminski managing director and head of\n> research\n> stinson gibner vice president , research\n> tanya tamarchenko director , research\n> zimin lu director , research\n>\n> look forward to hearing from you .\n>\n> best regards ,\n>\n>\n> shirley crenshaw\n> administrative coordinator\n> enron research group\n>\ndo you yahoo ! ?\nyahoo ! shopping - thousands of stores . millions of products .\nhttp : / / shopping . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.700+0000", "entityId": 9124, "properties": {"text": "Subject: re : resume\nhi , mr . kaminski :\nhow are you ? i hope you had a wonderful holiday . i just came back from\nchicago .\nthere is an enron on campus interview at cmu scheduled on 12 / 11 . is this\nthe interview for our class or for mba students ? i am concerned because i\nwas not selected for this interview , and i would like very much to have a\nchance to talk you about what i can do at enron .\nfrank\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : tuesday , november 21 , 2000 2 : 13 pm\nsubject : re : resume\n>\n> frank ,\n>\n> we are going to interview the students of your class on the campus .\n> i may participate in the interviews .\n>\n> have a very happy thanksgiving .\n>\n>\n> vince\n>\n>\n>\n>\n>\n> \" frank qian \" on 11 / 14 / 2000 12 : 48 : 14 pm\n>\n> to : \" vince j . kaminski \"\n> cc :\n> subject : resume\n>\n>\n> dear mr . kaminski :\n>\n> how are you ? i hope everything goes well for you at work . enron ' s\n> recruiting\n> at cmu just started . i have submitted my resume through the career\n> services .\n> the deadline for selecting interviewee is nov . 21 st . i ' d like to assure\n> you\n> my interest in associate / analyst program at enron .\n>\n> as you knew , the mscf program is an in - depth training of the mathematics\n> employed to financial algorithm and modeling as well as advanced\n> statistical\n> tools needed to analyze and predict the behavior of financial market .\n> through the intensive classroom learning combined with practical projects\n> using real - time financial data , i have gained a solid background in\n> state - of - art quantitative techniques used in financial industry , such as\n> derivative pricing , monte carlo simulation , and var analysis . with my\n> programming skills in c + + , s - plus , and java , i ' ll also be able to\nimplement\n> sophisticated financial or trading models into practice .\n>\n> i am a highly motivated , reliable , and team - oriented person not only have\n> quantitative skills , but also have broad knowledge of financial products .\n> my\n> unique mixture of skill sets will enable me make significant contribution\n> to\n> enron . my academic research experience and credentials all compose a\n> valuable asset to your organization . working at enron will greatly enhance\n> my learning experience and future career development . my resume is\nattached\n> for your review . i wish to be included on your pre - selected interviewee\n> list\n> and look forward to meet you again .\n>\n> regards ,\n>\n> frank qian\n> fqian @ andrew . cmu . edu\n>\n>\n> ( see attached file : enron _ resume . doc )\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.705+0000", "entityId": 9125, "properties": {"text": "Subject: interview with enron\ndear mr . kaminski ,\n?\neven though i cannot pass \" official \" interviews , i would like to discuss\nwith enron . i was really impressed by your presentation and i think i would\nbe a good fit for your firm .\n?\ni know that you ? will be soon recruiting on campus , maybe we could set up an\n\" informal meeting \" . either give me a call at home ( 412 - 802 - 6429 ) or send me\nan email at this address . i would appreciate though not to appear on\ninterview lists .\n?\npierre - philippe ste - marie\nhttp : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.709+0000", "entityId": 9126, "properties": {"text": "Subject: re : 2001 fma european conference\nthanks vince . looking forward to dinner on sunday with you and stinson .\njohn\nat 11 : 52 am 11 / 29 / 00 - 0600 , you wrote :\n>\n> john ,\n>\n> the books have arrived and i shall fedex them tonight to your university\n> address ( shown at the bottom of your messages ) .\n> still fishing for the paper on network economy .\n>\n> vince\n>\n> p . s . shirley , the address is at the bottom .\n>\n>\n>\n>\n>\n> \" john d . martin \" on 11 / 28 / 2000 11 : 27 : 35 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : 2001 fma european conference\n>\n>\n> that ' s fine . i didn ' t want to change anything until i heard from you guys .\n>\n> see ya !\n>\n> john\n>\n> at 11 : 06 am 11 / 28 / 00 - 0600 , you wrote :\n> >\n> > john ,\n> >\n> > thanks . stinson will be able to join us for dinner . he is opting out of\n> > the paper due to his big workload but we can get his perspective on\n> > the last 8 years he spent at enron .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > \" john d . martin \" on 11 / 28 / 2000 09 : 44 : 17 am\n> >\n> > to : vkamins @ enron . com\n> > cc :\n> > subject : 2001 fma european conference\n> >\n> >\n> > here ' s the info on the european conference . just for your files .\n> >\n> > john\n> >\n> > > date : tue , 28 nov 2000 08 : 40 : 39 - 0500\n> > > from : karen wright\n> > > subject : 2001 fma european conference\n> > > to : kwright @ fma . org\n> > > x - mailer : mozilla 4 . 5 [ en ] ( win 98 ; i )\n> > > x - accept - language : en , pdf\n> > >\n> > > 2001 fma european conference\n> > >\n> > > the fifth annual european meeting of the financial management\n> > > association international ( fma ) will be held may 31 and june 1 , 2001 at\n> > > the hotel sofitel ( rive gauche ) in paris , france . fma ' s european\n> > > meeting brings together academicians and practitioners with interests in\n> > > financial decision - making . the meeting provides a forum for presenting\n> > > new research and discussing current issues in financial management ,\n> > > investments , financial markets and institutions , and related topics .\n> > > keynote addresses and other special presentations will be held in\n> > > addition to research paper presentations .\n> > >\n> > > paper submissions\n> > > research papers . the program includes traditional research paper\n> > > presentations . criteria used to determine the suitability of these\n> > > papers for the program include the nature of the research problem ,\n> > > implications of the proposed research , the quality of the research\n> > > design , and the expected contribution of the research to the\n> > > literature . please note that the purpose of these sessions is to\n> > > present new and unpublished research .\n> > >\n> > > submission fee . there is no submission fee for the fma european\n> > > conference .\n> > >\n> > > submissions . please follow these steps :\n> > > complete the presentation form that can be downloaded at\n> > > www . fma . org / paris . htm . carefully select the subject code on the\n> > > presentation form that most closely describes your research . the code\n> > > number you select will be used to select reviewers for your proposal .\n> > >\n> > > send six ( 6 ) copies of your completed paper , along with the completed\n> > > presentation form , to the fma office ( financial management association ,\n> > > university of south florida , college of business administration , tampa\n> > > fl 33620 - 5500 , usa ) .\n> > > please note that only completed papers will be accepted for the fma\n> > > european conference review process .\n> > >\n> > > the paper submission deadline is friday , december 1 , 2000 .\n> > >\n> > > you will receive an electronic confirmation of your submission within\n> > > six weeks of its receipt by the fma office , and you will be notified of\n> > > the results of the reviewing process by the middle of february , 2001 .\n> > >\n> > > competitive paper awards\n> > > the financial management association international is pleased to\n> > > announce that four ( 4 ) $ 1 , 500 awards will be presented in conjunction\n> > > with the 2001 fma european conference . the \" young scholars \" award will\n> > > be presented to the best paper authored by a ph . d . student ( or\n> > > equivalent ) or recent ph . d . ( or equivalent ) graduate . three additional\n> > > $ 1 , 500 awards will be presented to the papers deemed \" best of the best \"\n> > > by the members of the 2001 fma european conference competitive paper\n> > > awards committee . please note that these awards will be made only if , in\n> > > the opinion of the fma awards committee , a paper warrants such a\n> > > decision . the decisions of the fma awards committee are final .\n> > >\n> > > accepted papers . if your proposal is accepted , the version of the paper\n> > > you submit will be sent to its discussant as soon as he / she is\n> > > identified . you are obligated to send the final version of your paper to\n> > > the discussant and session chair by april 27 , 2001 . you also are\n> > > obligated to present your paper in a professional manner at the assigned\n> > > fma program session .\n> > >\n> > > the collegiality of the meeting provides a very special opportunity for\n> > > participants to share their work and to hear about the work others are\n> > > doing . thus , individuals whose papers are accepted for presentation at\n> > > the 2001 fma european conference will be expected to either chair a\n> > > session or discuss a paper .\n> > >\n> > > program co - chairs\n> > >\n> > > francois degeorge\n> > > hec paris\n> > > 1 rue de la lib , ration\n> > > 78351 jouy en josas cedex\n> > > france\n> > > 33 - 1 - 39 - 67 - 72 - 34 ( ph )\n> > > 33 - 1 - 39 - 67 - 94 - 34 ( fax )\n> > > degeorge @ hec . fr\n> > >\n> > > kent womack\n> > > dartmouth college\n> > > amos tuck school\n> > > hanover , nh 03755\n> > > 1 603 646 2806 ( ph )\n> > > 1 603 646 1308 ( fax )\n> > > kent . womack @ dartmouth . edu\n> > >\n> > > additional opportunities for participation\n> > >\n> > > session chairperson or discussant . if you wish to serve as the\n> > > chairperson of a session or paper discussant , but are not submitting a\n> > > paper , please complete the participation form which can be downloaded\n> > > from www . fma . org / paris . htm . submit the completed form to the fma office\n> > > by december 1 , 2000 . session organization will take place in march ,\n> > > 2001 .\n> > >\n> > > deadline summary\n> > >\n> > > completed papers : december 1 , 2000\n> > > chairperson / discussant requests : december 1 , 2000\n> > >\n> > >\n> > >\n> > john d . martin\n> > carr p . collins chair in finance\n> > finance department\n> > baylor university\n> > po box 98004\n> > waco , tx 76798\n> > 254 - 710 - 4473 ( office )\n> > 254 - 710 - 1092 ( fax )\n> > j _ martin @ baylor . edu\n> > web : http : / / hsb . baylor . edu / html / martinj / home . html\n> >\n> >\n> >\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.714+0000", "entityId": 9127, "properties": {"text": "Subject: re : enron tiger dinner\ndonna ,\nthanks for the restaurant recommendation . i would appreciate if you could\ncoordinate\nthe dinner with the students and the faculty . you can expect 4 persons from\nenron but the\nrestaurant should allow for some flexibility , just in case . if the restaurant\nneeds a credit card number\nor a security deposit , you can refer them to my assistant , shirley crenshaw\nat 713 853 5290 .\nvince\npiazze on 11 / 29 / 2000 12 : 34 : 33 pm\nto : \" ' vkamins @ enron . com ' \"\ncc : \" ' piazze @ wharton . upenn . edu ' \"\nsubject : enron tiger dinner\nvince :\ni look forward to seeing you and jeff shankman next week in regard to the\nenron tiger kick - off meeting scheduled for wednesday , dec 6 in vance hall\n210 from 3 : 00 - 5 : 00 pm .\nyou mentioned possibly wanting to take the group to dinner after the\npresentation . i would like to recommend the palladium restaurnat , which is\non locust walk here on campus . you may want to view their website at\nwww . . com i think they have a nice menu and can\naccomodate large groups . there are several menus from which to choose , as\nwell . please let me know if you would like for me to set this up for you\nand i will notify the students and faculty .\nplease let me know if i can assist with your visit in any way .\nregards ,\ndonna piazze", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.719+0000", "entityId": 9128, "properties": {"text": "Subject: re : 2001 fma european conference\njohn ,\nthe books have arrived and i shall fedex them tonight to your university\naddress ( shown at the bottom of your messages ) .\nstill fishing for the paper on network economy .\nvince\np . s . shirley , the address is at the bottom .\n\" john d . martin \" on 11 / 28 / 2000 11 : 27 : 35 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : 2001 fma european conference\nthat ' s fine . i didn ' t want to change anything until i heard from you guys .\nsee ya !\njohn\nat 11 : 06 am 11 / 28 / 00 - 0600 , you wrote :\n>\n> john ,\n>\n> thanks . stinson will be able to join us for dinner . he is opting out of\n> the paper due to his big workload but we can get his perspective on\n> the last 8 years he spent at enron .\n>\n> vince\n>\n>\n>\n>\n>\n> \" john d . martin \" on 11 / 28 / 2000 09 : 44 : 17 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : 2001 fma european conference\n>\n>\n> here ' s the info on the european conference . just for your files .\n>\n> john\n>\n> > date : tue , 28 nov 2000 08 : 40 : 39 - 0500\n> > from : karen wright\n> > subject : 2001 fma european conference\n> > to : kwright @ fma . org\n> > x - mailer : mozilla 4 . 5 [ en ] ( win 98 ; i )\n> > x - accept - language : en , pdf\n> >\n> > 2001 fma european conference\n> >\n> > the fifth annual european meeting of the financial management\n> > association international ( fma ) will be held may 31 and june 1 , 2001 at\n> > the hotel sofitel ( rive gauche ) in paris , france . fma ' s european\n> > meeting brings together academicians and practitioners with interests in\n> > financial decision - making . the meeting provides a forum for presenting\n> > new research and discussing current issues in financial management ,\n> > investments , financial markets and institutions , and related topics .\n> > keynote addresses and other special presentations will be held in\n> > addition to research paper presentations .\n> >\n> > paper submissions\n> > research papers . the program includes traditional research paper\n> > presentations . criteria used to determine the suitability of these\n> > papers for the program include the nature of the research problem ,\n> > implications of the proposed research , the quality of the research\n> > design , and the expected contribution of the research to the\n> > literature . please note that the purpose of these sessions is to\n> > present new and unpublished research .\n> >\n> > submission fee . there is no submission fee for the fma european\n> > conference .\n> >\n> > submissions . please follow these steps :\n> > complete the presentation form that can be downloaded at\n> > www . fma . org / paris . htm . carefully select the subject code on the\n> > presentation form that most closely describes your research . the code\n> > number you select will be used to select reviewers for your proposal .\n> >\n> > send six ( 6 ) copies of your completed paper , along with the completed\n> > presentation form , to the fma office ( financial management association ,\n> > university of south florida , college of business administration , tampa\n> > fl 33620 - 5500 , usa ) .\n> > please note that only completed papers will be accepted for the fma\n> > european conference review process .\n> >\n> > the paper submission deadline is friday , december 1 , 2000 .\n> >\n> > you will receive an electronic confirmation of your submission within\n> > six weeks of its receipt by the fma office , and you will be notified of\n> > the results of the reviewing process by the middle of february , 2001 .\n> >\n> > competitive paper awards\n> > the financial management association international is pleased to\n> > announce that four ( 4 ) $ 1 , 500 awards will be presented in conjunction\n> > with the 2001 fma european conference . the \" young scholars \" award will\n> > be presented to the best paper authored by a ph . d . student ( or\n> > equivalent ) or recent ph . d . ( or equivalent ) graduate . three additional\n> > $ 1 , 500 awards will be presented to the papers deemed \" best of the best \"\n> > by the members of the 2001 fma european conference competitive paper\n> > awards committee . please note that these awards will be made only if , in\n> > the opinion of the fma awards committee , a paper warrants such a\n> > decision . the decisions of the fma awards committee are final .\n> >\n> > accepted papers . if your proposal is accepted , the version of the paper\n> > you submit will be sent to its discussant as soon as he / she is\n> > identified . you are obligated to send the final version of your paper to\n> > the discussant and session chair by april 27 , 2001 . you also are\n> > obligated to present your paper in a professional manner at the assigned\n> > fma program session .\n> >\n> > the collegiality of the meeting provides a very special opportunity for\n> > participants to share their work and to hear about the work others are\n> > doing . thus , individuals whose papers are accepted for presentation at\n> > the 2001 fma european conference will be expected to either chair a\n> > session or discuss a paper .\n> >\n> > program co - chairs\n> >\n> > francois degeorge\n> > hec paris\n> > 1 rue de la lib , ration\n> > 78351 jouy en josas cedex\n> > france\n> > 33 - 1 - 39 - 67 - 72 - 34 ( ph )\n> > 33 - 1 - 39 - 67 - 94 - 34 ( fax )\n> > degeorge @ hec . fr\n> >\n> > kent womack\n> > dartmouth college\n> > amos tuck school\n> > hanover , nh 03755\n> > 1 603 646 2806 ( ph )\n> > 1 603 646 1308 ( fax )\n> > kent . womack @ dartmouth . edu\n> >\n> > additional opportunities for participation\n> >\n> > session chairperson or discussant . if you wish to serve as the\n> > chairperson of a session or paper discussant , but are not submitting a\n> > paper , please complete the participation form which can be downloaded\n> > from www . fma . org / paris . htm . submit the completed form to the fma office\n> > by december 1 , 2000 . session organization will take place in march ,\n> > 2001 .\n> >\n> > deadline summary\n> >\n> > completed papers : december 1 , 2000\n> > chairperson / discussant requests : december 1 , 2000\n> >\n> >\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.724+0000", "entityId": 9129, "properties": {"text": "Subject: update / event time change\nshirley , this is the committee that i discussed with you this morning . the\nbelow email outlines the time required . thanks for your consideration .\nanita\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 11 / 29 / 2000 04 : 55\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n11 / 29 / 2000 04 : 46 pm\ncharla reese @ enron _ development\ncharla reese @ enron _ development\ncharla reese @ enron _ development\n11 / 29 / 2000 04 : 46 pm\n11 / 29 / 2000 04 : 46 pm\nto : daryl kitchen @ enron communications , missy stevens @ enron , misha\nsiegel @ ect , zulie flores / corp / enron @ enron , maggie\nvalles / enron _ development @ enron _ development , rose\nrivera / enron _ development @ enron _ development , donnis traylor / hou / ees @ ees ,\nraquel guerrero @ enron communications , elsie lew @ ect , mary\nellenberger / corp / enron @ enron , rebecca longoria @ enron , joy werner @ enron , david\ntagliarino @ ect , janie bonnard , sylvia thomas @ enron , lillian villarreal @ enron ,\nvalerie villareal / hou / ees @ ees , stephanie baker / hou / ees @ ees , dianne\nlangeland / enron _ development , laura schwartz @ enron , deb gebhardt @ enron ,\nheather alon @ ect , michael cuccia / corp / enron @ enron , bert frazier @ ect , susan\nrouse @ ees , sandy lewelling @ enron communications , sonia garcia / hou / ees @ ees ,\ndolores escamilla @ ect , anita dupont / na / enron @ enron\ncc : elyse kalmans @ enron , greg grissom @ enron\nsubject : update / event time change\nthanks to everyone for attending the meeting today !\nevent time change ! ! !\ni just spoke with the office of the chairman and have learned that ken and\njeff are actually available during the morning of december 19 th from 8 : 00 am\nuntil 11 : 00 am . as a result , our plans have changed just a little and i have\nrequested whether or not they are willing to pose for polaroid pictures with\nemployees - i ' ll let you know what i find out ! we will still have the jazz\nduet and informational poster displays in the lobby throughout the day and\ninstead of dessert items , we ' ll order breakfast stuff .\nassignments / budget ! ! ! !\nplease note assignments below ; for each team , collaborate between now and our\nnext meeting to determine what purchases need to be made - budgets will be\ndiscussed at that meeting . again , it will be on wednesday , december 6 th from\n9 : 30 am until 10 : 30 am with the location tbd .\nkwanzaa - daryl kitchen * / liz taylor\nchinese new year - elsie lew * / anita dupont\nlas posadas - zulie flores * / maggie valles / lillian villeral\nchristmas - donnis traylor * / missy stevens / michael cuccia\nchanukah - laura schwartz * / heather alon\nramadan - sylvia thomas * / janie bonnard / dianne langeland\nst . lucia - joy werner * / stephanie baker\ndevali - sonia garcia * / sophie patel / rebecca longoria\ngreeters / traffic control / corsages - sandy lewelling\nexecutive floor - deb gebhardt\nlogistics - charla reese ( communication , entertainment , food , picture holders )\nphotographer - laura schwartz\nhouston children ' s choir - misha siegel\n* indicates holiday team leader\nresponsibilities\nattend planning committee meetings and work with other volunteers assigned to\nyour holiday .\nresearch meaning of holiday and determine appropriate decorations , symbols , &\nfood items - purchase after budget approval .\ncreate information sheet for employee hand - out .\ndecorate between 7 : 00 am and 8 : 00 am on 12 / 19 .\nbe creative ! ( play appropriate recorded music , dress up in related clothing ,\netc . )\nensure office is manned during open house ( 8 : 00 am - 11 : 00 am ) - answer any\nquestions , pass out materials , etc .\nrecruit additional volunteers !\nadditional volunteers\ndelores escamilla\nval villeral\nraquel guerrero\nbert frazier\ndavid tagliarino\nrose riveria\nthank you !\ncharla\nx 35202", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.729+0000", "entityId": 9130, "properties": {"text": "Subject: updated message - preliminary rankings\nnorma ,\ni am sending you preliminary rankings for my entire\ngroup , based on the results of a meeting we held on tuesday .\nwe have ranked shalesh ganjoo and clayton , in case\nit ' s still our responsibility .\nvince\npermanent goup members , manager and below :\nsuperior :\n1 . martin lin\n2 . joe hrgovcic\n3 . tom haliburton\n4 . jose marquez\nexcellent\n1 . paulo issler\n2 . robert lee\n3 . chonawee supatgiat\n4 . amitava dhar\n5 . alex huang\n6 . kevin kindall\n7 . praveen mellacheruvu\n8 . shanhe green\n9 . stephen bennett\nstrong\n1 . lance cunningham\n2 . clayton vernon\n3 . youyi feng\n4 . yana kristal\n5 . sevil yaman\npermanent goup members , directors :\nsuperior\n1 . krishnarao pinnamaneni\nexcellent\n1 . osman sezgen\n2 . tanya tamarchenko\n3 . zimin lu\nsatisfactory\n1 . maureen raymond\nassociates , analysts\nsuperior\n1 . shalesh ganjoo\n2 . gwyn koepke\nexcellent\n1 . hector campos\n2 . kate lucas\n3 . sun li\n4 . roman zadorozhny\n5 . charles weldon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.734+0000", "entityId": 9131, "properties": {"text": "Subject: re : interest in a position\nalison ,\nmy group needs generally people with advanced skills in mathematics and\nprogramming .\ni shall try to help you by forwarding your resume ( with your permission ) to\nother\nunits of enron . please , let me know if it ' s ok with you .\nvince\nenron north america corp .\nfrom : mary alison bailey 11 / 21 / 2000 09 : 42 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : interest in a position\ndear vince ,\nwhen we talked last , you mentioned you were considering making additions to\nyour office staff . if you are still considering these additions , i would\nlike to talk to you and see if there might be a place for me . it would be\nwonderful to work with a group such as yours .\nit has been great working in recruiting , but the time has come for me to try\nsomething else . i am beginning to look around , but wanted to talk to you\nfirst . if my skill sets match a position you might be adding , please\nconsider me . i have attached my resume so that you will have an idea of what\ni have done .\nthank you for your consideration . have a great thanksgiving !\nalison bailey\n713 - 853 - 6778", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.739+0000", "entityId": 9132, "properties": {"text": "Subject: re : software\nhi helyette ,\ncongratulations on your papers .\nthe purchase contract is in the last stage of approvals\n( it ' s circulating through different parts of the company\nwhere it has to be signed ) . i think we should be able to execute\nthe contract in the first few days of december .\ni shall let you know as soon as our internal process is completed .\nvince\ngemanix @ aol . com on 11 / 29 / 2000 02 : 26 : 12 pm\nto : vkaminski @ aol . com\ncc : vkamins @ enron . com\nsubject : software\ndear vince ,\ni guess time has been flying for you by since our brilliant show\nin paris . in my case , it is the same : i got 3 papers accepted in the\n3 major journals in finance ( journal of business , journal of finance\nand journal of financial economics ) . we should write a piece !\nour software seems to be quite satisfactory for the oil people . my\nlawyer had added a paragraph to karla ' s document : since she had\nmentioned the right for enron to check at any time the code source\netc , he wanted to request enron to pay his fees in the case d - g\ndisappeared . in any case , if you are still interested , we are ready to\nuse your escrow account to make things simpler . moreover , i am\nstriking an agreement with a software company , 13 years with\npeople from polytechnique + finance , to be our hot line ( with us paying\nroyalties , of course ) . this would complement my 2 associates .\nlooking forward to hearing from you\nhelyette", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.744+0000", "entityId": 9133, "properties": {"text": "Subject: re : subscription renewal\nstephanie ,\nthanks for remembering about me .\nyes , i want to renew .\nvince\nfrom : stephanie e taylor on 11 / 29 / 2000 01 : 18 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : subscription renewal\ndear vince ,\nthis is to inform you that your subscription to risk is up for renewal . the\nregular subscription cost through december , 2001 , is $ 599 . 00 . the cost after\nthe corporate discount is $ 509 . 15 .\nplease let me know if you would like to renew this publication . we will be\nhappy to take care of this for you . if you have any questions , please do not\nhesitate to call me .\nsincerely ,\nstephanie e . taylor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.749+0000", "entityId": 9134, "properties": {"text": "Subject: re : d - g energy\ngreat . i still haven ' t heard back from them regarding our escrow agreement\nbutn hope to soon . if not , i will call .\nlaine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.754+0000", "entityId": 9135, "properties": {"text": "Subject: re : d - g energy\nlaine ,\ni can initial it . please , contact beth perlman as an it officer .\ni shall explain the reason we are buying the software to her .\ni want the software to reside in our london office - the software is used\nprimarily by european utilities and we shall use it as a pricing tool\nin negotiations with european clients .\nvince\nfrom : laine borgman @ enron on 11 / 29 / 2000 09 : 29 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : d - g energy\nvince , i am circulating the d - g energy software license agreement for\nsignature . i need for you or your senior director to initial and i also need\nto know if you have identified an enron officer within it to execute on\nbehalf of enron corp . please let me know .\nthanks ,\nlaine", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.758+0000", "entityId": 9136, "properties": {"text": "Subject: projects list\nstinson ,\njust want to give you a quick update about the current projects on my plate ,\nso that you can update your blackbroad\n1 ) wti trading simulation v . 2 , ready for you to review\n2 ) storage valuation for paul bieinawski ( new )\n3 ) product production margin modeling for doug friedman ( new )\nneed to model explicitly the jump piece . some new ideas for discussion .\n4 ) espeed warrant valuation for randy petersen ( new )\n5 ) correlation skew for larry may\n6 ) credit exposure model , alex finished the coding , testing next\nhave you had a chance to review brad ' s back testing results for the storage\nmodel ?\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.763+0000", "entityId": 9137, "properties": {"text": "Subject: update on project x\ngentlemen ,\njohn norden will be in sydney on monday morning to evaluate the it process .\nhe will coordinate with stinson .\nspoke to vince k today and asked if he would send stinson gibner to sidney\nto be available on monday to review the x system .\npaul , make sure our x friends are available and the confidentially agreement\nis signed . further , i spoke to phillip b . about a technical going too .\ng ' day mates ,\ngary", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.768+0000", "entityId": 9138, "properties": {"text": "Subject: organisational change\nas a continuation of the integration of enron metals into enron europe we are\npleased to announce the following organisational changes which become\neffective immediately .\ntom mckeever , presently chairman of enron metals will move into the role of\nvice chairman enron europe reporting directly to john sherriff and michael\nbrown . tom will focus on developing our key senior business relationships\nacross all of enron europe .\njoe gold will become president of enron metals responsible for the entire\norganization . we will announce joe ' s replacement for managing our trading\nand origination efforts on the continent in the near future .\nmichael farmer and michael hutchinson will continue in their roles managing\nthe metals ' s merchanting and financial trading businesses respectively .\nplease join us in congratulating tom and joe on their new roles .\nfrom the enron europe office of the chairman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.774+0000", "entityId": 9139, "properties": {"text": "Subject: re : greetings\nvan ,\nit ' s nice to hear from you . i am sure that you can always come back\nto enron if you don ' t like living in new york .\ni used to work for salomon and chances are you will be working in the same\nbuilding in lower manhattan where i spent 7 years of my life .\ni hope you have a great holiday season .\nvicne\nvan ngo on 11 / 29 / 2000 10 : 52 : 35 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : greetings\ndear vince :\ni just wanted to get in touch with you , as my last fall semester here\ndraws to a close and this is something of a transition point for me . to\nupdate you on my job search , i have been extended an offer for a position\nwithin enron ' s analyst program . the offer was very attractive and i had\nnumerous things to consider in reaching my decision . unfortunately , i\nwill be declining enron ' s offer of employment to take a position in the\ninvestment banking division of salomon smith barney in new york . my\npreference at this point is to live outside of houston , and although my\nhope is also to return to houston in future , new york offers some\nexciting options for me now . i will be starting there in july of this\nsummer . i hope that i will have future opportunities to be an advocate\nof enron and look forward to keeping in touch with you and the research\ngroup .\nplease give my regards to everyone at the office and wishes for a very\nhappy holiday season ! also please feel free to contact me at any time .\ni can give you my future contact information when i have it .\nthank you and i hope i ' ll see you again .\nsincerely ,\nvan\np . s . feel free to forward my news onto mike roberts if that would\nappropriate . i didn ' t have his email with me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.781+0000", "entityId": 9140, "properties": {"text": "Subject: thank you\ngraham pl . # 207\naustin , tx 78705\n( 512 ) 4746683\nnovember 30 , 2000\ndear mr . kaminski :\nthank you for the opportunity to interview today for a\nposition with enron company . i enjoyed meeting you and\nlearning more about your company and the interesting\nwork done by enron . the interview strengthened my\ninterest in working for enron company . my education\nand experience fit nicely with the job requirements ,\nand i am confident i can make a positive contribution\nto the company .\ni want to reiterate my strong interest in enron\ncompany and in working with you and your staff . after\nfurther investigating your well - established company , i\nam eager to reaffirm my interest in the position .\nplease feel free to contact me at ( 512 ) 4746683 or at\nknirel @ mail . utexas . edu if i can provide you with any\nadditional information .\nagain , thank you for your consideration . i hope to\nhear from you soon\nregarding your decision .\nsincerely ,\nnina knirel\ndo you yahoo ! ?\nyahoo ! shopping - thousands of stores . millions of products .\nhttp : / / shopping . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.788+0000", "entityId": 9141, "properties": {"text": "Subject: jason sokolov ' s removal from ted murphy ' s cost center\nnorma :\nted murphy would like to have jason removed from his cost center\neffective december 16 th . vince said that it would be ok to have him\nadded to our cost center , effective that date . he is not supposed to start\nwith the research group until the 28 th , but needs a home from the 16 th to\nthe 28 th , so we will pick him up .\ncan you take care of this ?\nthanks !\nshirley\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.796+0000", "entityId": 9142, "properties": {"text": "Subject: re : update / event time change\nthis will be fine - just let me know when you are going to be gone .\nshirley\nanita dupont @ enron\n11 / 29 / 2000 05 : 01 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : update / event time change\nshirley , this is the committee that i discussed with you this morning . the\nbelow email outlines the time required . thanks for your consideration .\nanita\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 11 / 29 / 2000 04 : 55\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n11 / 29 / 2000 04 : 46 pm\ncharla reese @ enron _ development\ncharla reese @ enron _ development\ncharla reese @ enron _ development\n11 / 29 / 2000 04 : 46 pm\n11 / 29 / 2000 04 : 46 pm\nto : daryl kitchen @ enron communications , missy stevens @ enron , misha\nsiegel @ ect , zulie flores / corp / enron @ enron , maggie\nvalles / enron _ development @ enron _ development , rose\nrivera / enron _ development @ enron _ development , donnis traylor / hou / ees @ ees ,\nraquel guerrero @ enron communications , elsie lew @ ect , mary\nellenberger / corp / enron @ enron , rebecca longoria @ enron , joy werner @ enron , david\ntagliarino @ ect , janie bonnard , sylvia thomas @ enron , lillian villarreal @ enron ,\nvalerie villareal / hou / ees @ ees , stephanie baker / hou / ees @ ees , dianne\nlangeland / enron _ development , laura schwartz @ enron , deb gebhardt @ enron ,\nheather alon @ ect , michael cuccia / corp / enron @ enron , bert frazier @ ect , susan\nrouse @ ees , sandy lewelling @ enron communications , sonia garcia / hou / ees @ ees ,\ndolores escamilla @ ect , anita dupont / na / enron @ enron\ncc : elyse kalmans @ enron , greg grissom @ enron\nsubject : update / event time change\nthanks to everyone for attending the meeting today !\nevent time change ! ! !\ni just spoke with the office of the chairman and have learned that ken and\njeff are actually available during the morning of december 19 th from 8 : 00 am\nuntil 11 : 00 am . as a result , our plans have changed just a little and i have\nrequested whether or not they are willing to pose for polaroid pictures with\nemployees - i ' ll let you know what i find out ! we will still have the jazz\nduet and informational poster displays in the lobby throughout the day and\ninstead of dessert items , we ' ll order breakfast stuff .\nassignments / budget ! ! ! !\nplease note assignments below ; for each team , collaborate between now and our\nnext meeting to determine what purchases need to be made - budgets will be\ndiscussed at that meeting . again , it will be on wednesday , december 6 th from\n9 : 30 am until 10 : 30 am with the location tbd .\nkwanzaa - daryl kitchen * / liz taylor\nchinese new year - elsie lew * / anita dupont\nlas posadas - zulie flores * / maggie valles / lillian villeral\nchristmas - donnis traylor * / missy stevens / michael cuccia\nchanukah - laura schwartz * / heather alon\nramadan - sylvia thomas * / janie bonnard / dianne langeland\nst . lucia - joy werner * / stephanie baker\ndevali - sonia garcia * / sophie patel / rebecca longoria\ngreeters / traffic control / corsages - sandy lewelling\nexecutive floor - deb gebhardt\nlogistics - charla reese ( communication , entertainment , food , picture holders )\nphotographer - laura schwartz\nhouston children ' s choir - misha siegel\n* indicates holiday team leader\nresponsibilities\nattend planning committee meetings and work with other volunteers assigned to\nyour holiday .\nresearch meaning of holiday and determine appropriate decorations , symbols , &\nfood items - purchase after budget approval .\ncreate information sheet for employee hand - out .\ndecorate between 7 : 00 am and 8 : 00 am on 12 / 19 .\nbe creative ! ( play appropriate recorded music , dress up in related clothing ,\netc . )\nensure office is manned during open house ( 8 : 00 am - 11 : 00 am ) - answer any\nquestions , pass out materials , etc .\nrecruit additional volunteers !\nadditional volunteers\ndelores escamilla\nval villeral\nraquel guerrero\nbert frazier\ndavid tagliarino\nrose riveria\nthank you !\ncharla\nx 35202", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.801+0000", "entityId": 9143, "properties": {"text": "Subject: re : project tracking database access\nhi sandy :\nyes he does . actually in our group meeting today , vince kaminski said\nthat he wants most of his group to have access . i believe stinson gibner\nis working on the list . is there a way we could submit a request to\nincorporate\na list of people to give them access ? they would need writing access also .\nthanks !\nshirley\nfrom : enron messaging security @ enron 11 / 30 / 2000\n03 : 26 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : project tracking database access\nshirley ,\nthe default access is read only . does this person need more rights , i . e .\neditor ?\nthanks ,\nsandy\n- - - - - - - - - - - - - - - - - - - - - - forwarded by enron messaging security / corp / enron on\n11 / 30 / 2000 03 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\napplication line item pending provider processing\napplication name : unlisted lotus notes appliction how to process this request . . .\nfor : kenneth parkhill / na / enron\nrequest type : grant\ncomments : efc \\ research \\ projtrak . nsf - needs access to project tracking database click\n.\nif you wish to approve this request , select \" approve \" in the dialog box .\notherwise , select \" reject \" .\nenter comments ( if any ) .\nprovider approval section\nprovider ( s ) : enron messaging security / corp / enron status :\ne - mail message :\ncomments : sr\ngeneral request : scrw - 4 rjl 94\nrequested by : shirley crenshaw / hou / ect phone : 3 - 5290\ncompany : 0413 rc # : 107043\npriority : normal\napplication\nicons added : expiration date :\nunix db required : no\nnetwork login id : kparkhil unix login id :\nrequired information :\ngeneral comments kenneth parkhill is a new research employee that needs access\nto the project tracking database\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1\n2 information risk management\nenron messaging security 11 / 29 / 2000 02 : 47 : 37 pm\n11 / 30 / 2000 10 : 00 : 43 am", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.805+0000", "entityId": 9144, "properties": {"text": "Subject: wti maket maker simulation model\njohn ,\nwe finished the version 2 of the simulation model which deals with the\nopen - close trading versus the continuous trading in the previous version .\ni added the cummulative p / l as an output . there are a few apparent trading\nstrategies from this model :\n1 ) higher bid / offer spread , more profit\n2 ) more daily # of trades , more profit\n3 ) smaller net open positions allowed , more profit\n1 ) and 2 ) are obvious , but 3 ) is more interesting . it means that we are\nbetter off\nif we do not allowed net open positions at end of the day . in a trending\nmarket ,\nthis makes an intuitive sense , for example , in the case of bull market we are\nshort as a market maker and we can avoid the loss at the higher openning price\nby keeping zero or small net short positions .\ni have attached the model with this mail , and i ' ll be happy to discuss the\nmodel\nin more details with you .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.810+0000", "entityId": 9145, "properties": {"text": "Subject: re : compound model for reedy creek\nstinson ,\ni think the gamma will flow into v @ r .\nvince\nstinson gibner\n11 / 30 / 2000 06 : 14 pm\nto : alex huang / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : compound model for reedy creek\nalex ,\npaulo and i have continued to look at the model and have come up with a\ncouple of additional changes .\n1 . the cash flow calculations need to include the overlying option strike\npayment . also , paulo is trying to clarify if the cashflows should be\ndiscounted to the valuation date or reported as notional future values .\n2 . i would suggest trying changing the option valuation from a binomial tree\napproach to a one - dimensional integration , perhaps using a quadrature\nmethod . this may allow us to minimize the size of the delta discontinuities .\n3 . edith is supposed to check and see if the theoretical gamma is used for\nanything . if it is , we will probably need to revisit the gamma calculation\nsince we are not currently including any cross terms for gamma .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.815+0000", "entityId": 9146, "properties": {"text": "Subject: re : garp credit derivatives discussion group\nvince\nfirst meeting will be dec 11 or 12 at west deutche landesbank , ny .\nlook for phone - in details next week .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , december 01 , 2000 10 : 24 am\nto : garpnyl @ home . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : garp credit derivatives discussion group\nphilip ,\nthanks for keeping me in mind . yes , i would be interested .\nvince\n\" philip merrill \" on 11 / 30 / 2000 04 : 47 : 20 pm\nplease respond to\nto :\ncc :\nsubject : garp credit derivatives discussion group\nvince\nwe are starting a credit derivatives discussion group in new york .\nis this something you would be interested in ?\nlike fas 133 an 800 - call - in number will be provided for houston\nparticipants .\nour first meeting will be in a week or so .\nregards ,\nphilip merrill\ngarp regional director , new york\n973 - 258 - 1540", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.819+0000", "entityId": 9147, "properties": {"text": "Subject: re : paper - request ( informs meeting in san antonio )\nerik ,\ni regret to inform you i had to cancel my presentation .\ni am working on another presentation on the same topic for\na different audience , and i shall send you the slides .\nvince kaminski\nerik pruyt on 11 / 28 / 2000 08 : 39 : 11 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : paper - request ( informs meeting in san antonio )\nbrussels , 28 / 11 / 2000\nref : md 29 price volatility and probabilistic methods\nin the energy market : current challenges\ndear sir ,\nunfortunately i could not attent the informs 2000\nmeeting in san antonio . since i am very interested in\nthe topic you presented there , i would really like to\nread the paper you presented or have a look at the\nslides you showed .\ncould you please be so kind as to send me a copy of\nthe paper ? or could you tell me where i might find\nyour paper ( already published ) ?\nthank you so much .\nyours sincerely ,\nerik pruyt\nfree university of brussels\n= = = = =\nerik pruyt erik . pruyt @ vub . ac . be or erikpruyt @ yahoo . com\nvrije universiteit brussel , faculteit esp , dienst stoo - csoo\npleinlaan 2 , 1050 brussel , belgium , tel : + 32 / ( 0 ) 2 629 20 64\nprivate address : stockemstraat 14 , b - 3040 huldenberg , belgium\ntel : ( + 32 ) 2 / 6875257 handy : ( + 32 ) 496185687 fax : ( + 32 ) 2 / 6883760\ndo you yahoo ! ?\nyahoo ! shopping - thousands of stores . millions of products .\nhttp : / / shopping . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.824+0000", "entityId": 9148, "properties": {"text": "Subject: re : garp credit derivatives discussion group\nphilip ,\nthanks for keeping me in mind . yes , i would be interested .\nvince\n\" philip merrill \" on 11 / 30 / 2000 04 : 47 : 20 pm\nplease respond to\nto :\ncc :\nsubject : garp credit derivatives discussion group\nvince\nwe are starting a credit derivatives discussion group in new york .\nis this something you would be interested in ?\nlike fas 133 an 800 - call - in number will be provided for houston\nparticipants .\nour first meeting will be in a week or so .\nregards ,\nphilip merrill\ngarp regional director , new york\n973 - 258 - 1540", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.830+0000", "entityId": 9149, "properties": {"text": "Subject: a classic\na classic i forgot to attach the resume !\n?\n?\npierre - philippe ste - marie\nhttp : / / pstemarie . homestead . com\n- ppl . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.834+0000", "entityId": 9150, "properties": {"text": "Subject: career opportunity\ndear mr . kaminski ,\n?\ni will forward my resume . i am looking for a trading position . i have three\nyears of market - making experience in illiquid markets , which i beleive is\nhighly relevant . but it seems now that getting out of my contract is not an\nalternative anymore . ? i learned yesterday that my firm finally decided to\ngrant me what i wanted . . . a new desk . sometimes i feel that when you become\na trader you come to trade everything , including your career .\n?\n? i thank you for your time and consideration .\n?\npierre\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.839+0000", "entityId": 9151, "properties": {"text": "Subject: re : interview with enron\npierre philippe ,\nwe have two options . kevin will be interviewing in mid - december in pittsburgh\nand he\ncan talk to you you or we can invite you to houston .\nwhat are you interested in ? a quant position or a trading job ? our trading\ndesks\nare looking for people with trading experience .\nvince\n\" pierre - philippe ste - marie \" on 11 / 29 / 2000 07 : 36 : 19 am\nto :\ncc :\nsubject : interview with enron\ndear mr . kaminski ,\n?\neven though i cannot pass \" official \" interviews , i would like to discuss\nwith enron . i was really impressed by your presentation and i think i would\nbe a good fit for your firm .\n?\ni know that you ? will be soon recruiting on campus , maybe we could set up an\n\" informal meeting \" . either give me a call at home ( 412 - 802 - 6429 ) or send me\nan email at this address . i would appreciate though not to appear on\ninterview lists .\n?\npierre - philippe ste - marie\nhttp : / / pstemarie . homestead . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.846+0000", "entityId": 9152, "properties": {"text": "Subject: wharton trip\njim ,\nno changes in the schedule . the meeting will take place , as scheduled ,\non the 6 th of december at 9 : 00 a . m . we may have to cancel lunch with the\nprofessors as they have other commitments . the meeting will last\nabout 2 hours .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.851+0000", "entityId": 9153, "properties": {"text": "Subject: enron / globe\ndear drs . roberts and benjamin ,\nvince kaminski and i enjoyed and appreciated the opportunity to speak with\nyou this morning . enron is very happy to agree to participate in stanford ' s\nglobe project ( being conducted in partnership with mckinsey & company ) .\nattached please find my business card with all of my contact information .\ni look forward to hearing from dr . benjamin in the near future to begin\nenron ' s involvement .\nthank you !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.857+0000", "entityId": 9154, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n11 / 29 / 2000 03 : 34 pm\nto : vince j kaminski / hou / ect @ ect\ncc : anita dupont / na / enron @ enron\nsubject : vacation\nvince :\ni have 4 days vacation left . i would like to take friday , the 8 th and the\n27 th , 28 th and 29 th . please let me know if this is ok .\nanita will be here .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.862+0000", "entityId": 9155, "properties": {"text": "Subject: proj . x analytics diligence\npaul ,\nvince and i spent some time thinking about the diligence process for the\ntrading analytics . there is a limited amount that can be accomplished in a\ntwo day time period . i think a reasonable start would be the following :\n1 . obtain an audited history of the trading strategies which have been\nimplemented in order to verify profitability , and p / l volatility of each .\n2 . review needed working capital and risk capital requirements and compare\nthese to projections for trading income .\n3 . review current level of access to electronic markets and verify that a\nchange of ownership would not have adverse consequences , i . e . are there\nguarantees of continued access using the current systems ?\n4 . review feasibility of entry into proposed new markets ? it is far from\nclear that there will be any synergy with most commodity markets given the\ncurrent limited \" electronic \" liquidity .\n5 . review , at least qualitatively , the current trading strategies being\nused . try to develop some estimate of how fast the profitability of these\nstrategies will disappear as other ' s implement similar trading models . what\nis the trade off between trade quantity and slippage .\n6 . review the methodology used to generate new trading strategies which will\nbe needed to replace the current models as they become unprofitable and\noutdated .\n7 . try to determine if there will be any value in transfer of trading\ntechnology to enron ' s other markets , given the illiquidity of these markets\nas compared to the financial equity markets .\nif there were a sufficiently long time horizon for our analysis , we would\nprobably want to run their system on a test set of data .\nlet me know if you have other suggestions .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.867+0000", "entityId": 9156, "properties": {"text": "Subject: re : for your approval\napproved\ninformation risk management\n12 / 01 / 2000 09 : 50 am\nto : gary taylor / hou / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect\ncc :\nsubject : for your approval\nplease let me know if he is approved .\nthanks ,\nerica garcia\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n12 / 01 / 2000 09 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\ndirectory line item pending access processing\ndirectory name : o : \\ weather derivatives \\ , o : \\ research \\ common\nservice type : grant\nexpiration date :\ncomments :\nsecurity processing\nprocessing status :\ne - mail message :\ncomments / justification :\ngeneral information request : jhrc - 4 rkjjz\nrequested by : joseph hrgovcic / hou / ect phone : 33914\nrequested for : joseph hrgovcic / hou / ect employee type :\ncompany : 0011 rc # : 100038\npriority : high\ncomments / justification : i have a test windows 2000 machine running ( with\nuserid t _ weatherol , for which i need access to o : \\ research \\ common and\no : \\ weather derivatives \\\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1 information risk management 11 / 30 / 2000 12 : 30 : 19 pm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.873+0000", "entityId": 9157, "properties": {"text": "Subject: grep for windows .\nfolks ,\nthose of you who have used unix are probably familiar with the grep command .\nit ' s used to extract lines from a set of files that contain a given input\nstring , and is very useful . ( if you have any questions on how to invoke it ,\nask me . )\nthe grep command is now available in a pc version - - see below .\njoe\n- - - - - - - - - - - - - - - - - - - - - - forwarded by joseph hrgovcic / hou / ect on 12 / 01 / 2000\n10 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncarlos uribe @ enron\n12 / 01 / 2000 11 : 23 am\nto : todd kimberlain / na / enron , joseph hrgovcic / hou / ect\ncc : malcolm wells / na / enron , michael barber / hou / ect\nsubject : grep for windows .\ntodd and joseph ,\nas discussed earlier , i did recall reading somewhere that grep had been\nported to windows . i did some research and was able to find the windows\nported version of grep . attached you will find a compressed file that\ncontains the grep binary and source . please let me know if i can be of any\nfurther assistance . thanks .\n- carlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.879+0000", "entityId": 9158, "properties": {"text": "Subject: re : for your approval\nerica ,\nyes , no problem .\nvince\ninformation risk management\n12 / 01 / 2000 09 : 50 am\nto : gary taylor / hou / ect @ ect , vince j kaminski / hou / ect @ ect , stinson\ngibner / hou / ect @ ect\ncc :\nsubject : for your approval\nplease let me know if he is approved .\nthanks ,\nerica garcia\n- - - - - - - - - - - - - - - - - - - - - - forwarded by information risk management / hou / ect on\n12 / 01 / 2000 09 : 39 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsecurity resource request system\ndirectory line item pending access processing\ndirectory name : o : \\ weather derivatives \\ , o : \\ research \\ common\nservice type : grant\nexpiration date :\ncomments :\nsecurity processing\nprocessing status :\ne - mail message :\ncomments / justification :\ngeneral information request : jhrc - 4 rkjjz\nrequested by : joseph hrgovcic / hou / ect phone : 33914\nrequested for : joseph hrgovcic / hou / ect employee type :\ncompany : 0011 rc # : 100038\npriority : high\ncomments / justification : i have a test windows 2000 machine running ( with\nuserid t _ weatherol , for which i need access to o : \\ research \\ common and\no : \\ weather derivatives \\\nediting history ( only the last five ( 5 ) are shown )\nedit # past authors edit dates\n1 information risk management 11 / 30 / 2000 12 : 30 : 19 pm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.884+0000", "entityId": 9159, "properties": {"text": "Subject: bio ' s\nhi john !\nso sorry for the delay in getting these to you this evening - - - \" connectivity \"\nissues . . . a few monks too few ! ! ( haha ) .\nhere are the most current bio ' s for jeff and ken :\n.\ni thoroughly enjoyed our dinner this evening and look forward to seeing you\ntomorrow !\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.889+0000", "entityId": 9160, "properties": {"text": "Subject: vince ,\ni ' ll see you around 8 : 45 in the morning . meanwhile , the attached file\ncontains the latest draft of our questions . please run us a copy .\nthanks ,\njohn\n- enroninterview . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.894+0000", "entityId": 9161, "properties": {"text": "Subject: enron wholesale services legal department\nas a follow - up to the recent enron corp . memorandum forming enron wholesale\nservices ( ews ) , effective today , we have reorganized the wholesale services\nlegal department .\nthe goals in reorganizing the department are as follows : ( i ) align the\nlegal department as closely as possible with the business units , ( ii ) speed\nthe flow of legal technology across the business units , and ( iii ) achieve\ngreater efficiency and consistency across the organization .\nto this end , a legal policy group will be formed for ews legal , which will\ninclude lance schuler , enron americas ; mark evans , enron europe ; mark taylor ,\nenron net works ; alan aronowitz , enron global markets ; julia murray , enron\nindustrial markets ; and bruce lundstrom , enron global assets .\nthe organization chart for the ews legal department is attached . more\ncomprehensive organization charts will follow for each group .\nmark frevert and mark haedicke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.902+0000", "entityId": 9162, "properties": {"text": "Subject: capa 2000 conference\nvince and stinson ,\nalex and i attended the international chinese petroleum and petrocehmical\ntechnology conference\nin houston . we presented two talks 1 ) risk management in petroleum industry\nand 2 ) real option\nvaluation of oil field . the section chairman said our talks were the high\nmoments in the business session .\nthere were several interesting talks in the business section . i am going to\nget a copy of the presentation on\ninternet opportunity in energy trading , where the author did a study about\nall energy trading sites including\nenrononline . a talk from a gentleman working for costal ( used to be pal of\nsong yip ) on real\nassets management is also very informative . a talk about using real option\ntheory for it managenet was\nalso interesting .\nbig players , exxonmobil , shell , taxco , and bp have strong presence in the\nconference .\ni made a copy for you of the keynote speech by bob gee , the assistant energy\nsecretary under clinton\nadministration about the energy outlook .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.908+0000", "entityId": 9163, "properties": {"text": "Subject: december 11 prc meeting\nplease mark your calendars for the december 11 , 2000 prc meeting to prereview\nvice presidents in the following organizations :\nenron north america\nenron industrial markets\nenron global markets\nenron networks\nenron south america\napachi\ncalme\nthe meeting will be held at the st . regis hotel , 1919 briar oaks lane ,\nhouston in the plaza room . the meeting is scheduled from 8 : 00 am to 5 : 00 pm .\nfor those of you who are part of the enron wholesale services group , please\nplan to be there at 8 : 00 am , as the first part of the meeting will be devoted\nto discussing prc results of groups below vice president , and manager to\ndirector / sr . director promotion nominations . the vice president rating is\nscheduled to begin at approximately 9 : 45 am .\nthe telephone number of the hotel is 713 - 840 - 7600 .\na complete agenda and details will be forthcoming later this week .\nfor those of you in the organization units listed above , please be prepared\nto present and discuss your vice presidents .\nplease feel free to contact me at x 36628 in houston , should you have any\nquestions .\nsheila knudsen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.915+0000", "entityId": 9164, "properties": {"text": "Subject: re : reprint available \" alliance gas pipeline :\njohn ,\nmy mailing address is :\nvince kaminski\nenron corp .\n1400 smith\nroom eb 1962\nhouston , tx 77002\nthanks for remembering about me .\nvince\n\" john h herbert \" on 12 / 04 / 2000 07 : 09 : 55 am\nto : \" vince j kaminski \"\ncc :\nsubject : reprint available \" alliance gas pipeline :\nearly , late , or just in time ?\na story of big gambles , big assumptions , and spark spreads turned upside\ndown \"\nby john h . herbert , published in the november 15 , 2000 issue of public\nutilities fortnightly ( puf ) .\nthis article which contains five figures and is on the long side for puf\nalso covers market issues that go beyond alliance .\nif you like to receive a reprint please send me your address .\nbest regards ,\njhherbert\n703 - 532 - 4544 ( phone )\n603 - 719 - 6675\n2929 rosemary lane\nfalls church , virginia 22042", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.920+0000", "entityId": 9165, "properties": {"text": "Subject: rice / eron finance seminar series\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 04 / 2000\n07 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarbara ostdiek on 12 / 01 / 2000 05 : 38 : 08 pm\nto : ostdiek @ rice . edu\ncc :\nsubject : rice / eron finance seminar series\nenron seminar series in finance\njones graduate school of management , rice university\ntim bollerslev\nduke university\nwill give a seminar at the jones school on friday , december 8 , ?\n\u0001 & measuring , modeling , and forecasting realized volatility . \u0001 8\nthe seminar will begin at 10 : 30 in room 113 .\nplease note the different time and different room for this seminar .\na pdf of the paper is available through the seminar website\nhttp : / / www . ruf . rice . edu / ~ jgsfss / .\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.926+0000", "entityId": 9166, "properties": {"text": "Subject: operational risk iconference\n\" the person who goes farthest is generally the one who is willing to do and\ndare . the sure - thing boat never gets far from shore . \" - - dale carnegie\nerisk is pleased to announce an iconference on\npractical methodologies for operational risk management\nkeynote speaker : tony peccia , vice president of operational risk at cibc\nfollowed by a panel discussion , which will include the following\ndistinguished panelists :\nmarcelo cruz , director of operational risk at ubs ag\ntony peccia , vice president of operational risk at cibc\nkarim rajwani , senior manager of operational risk at royal bank of canada\nwhen : thursday , december 14 at 12 noon est / 5 p . m . london time .\ntopics to be covered : the battle between \" quantitative \" and \" qualitative \"\napproaches , measuring the success of operational risk management , applying\nlarge institution methodologies to smaller institutions , and much more .\nrecommended background reading :\nthe operational risk piece in our risk jigsaw\nyou will need to log in to be able to click through to this tutorial , which\nfeatures insights from \" expert witnesses \" ( including panelist marcelo cruz ) ,\nthe 12 steps of the operational risk management process , and links to\nadditional resources .\nregistration : this conference is totally free , and you can participate by\nusing any computer with internet access and a telephone .\nyou will need to register for this conference in advance by clicking here\nif you have any questions regarding our iconferences , please send email to\niconferences @ erisk . com\nsee you at the iconference !\nyour friends at erisk . com ( formerly erisks . com )\np . s . the archived slides , polling results , and real - time replays of our\nprevious iconferences , including our last iconference on compensation for\nrisk managers , can be accessed here free of charge .\nyour email : [ vkamins @ enron . com ] is in our erisks . com mailing list . if you\nwish to unsubscribe from future mailings , please forward this message\nto : unsub _ opriskl @ email . erisks . com to subscribe , please forward this message\nto sub _ opriskl @ email . erisks . com [ image ]", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.932+0000", "entityId": 9167, "properties": {"text": "Subject: re : my involvement in leadership fort worth\nken\nenron supports employees ' involvement in civic organization\nand i think you should continue tour involvement with lwf .\nit ' s important that we give something back to society .\nyou don ' t have to take a day off to attend workshops .\nvince\nkenneth parkhill @ enron\n12 / 04 / 2000 09 : 19 am\nto : vince . kaminski @ enron . com\ncc :\nsubject : my involvement in leadership fort worth\nvince ,\ni am currently a candidate member of leadership fort worth through august of\n2001 . i don ' t know if you are familiar with leadership houston or any other\nleadership group , but it is basically a civic organization that provides a\nforum for leaders to learn more about their community and opportunities for\ncivic leadership . for their first year , members are candidates and must\nattend about 1 full - day workshop a month in fw , normally on a thursday .\nafter that , members can transfer to other leadership cities . i talked with\nstinson about the group and he thought i should talk with you about whether\nor not i should stay involved with lfw . the attached email describes the\ndecember meeting scheduled for 12 / 14 . thanks\nken\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth parkhill / na / enron on 12 / 04 / 2000\n09 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nann @ abarr . net on 12 / 01 / 2000 11 : 35 : 42 am\nplease respond to\nto : \" william jenkins , jr . \" , \" walter lincoln office \"\n, \" victor howell \" ,\n\" vicki dickerson \" , \" vanessa boling \"\n, \" steve johnson \" , \" sandra\nshort \" , \" rusty hodapp \" , \" ron\nstutes \" , \" rob sell \"\n, \" rita vinson \" , \" platt allen ,\niii \" , \" michelle peebles - trollope \"\n, \" melanie hoover \" , \" matt\nbyars \" , \" mary jane ashmore \"\n, \" martha musgrove \" ,\n\" marla sapp \" , \" lynn lester \" , \" lori\nsmith \" , \" linda winkelman \" ,\n\" liane janovsky \" , \" leslie pope \" ,\n\" lauri newlin \" , \" kenneth parkhill \"\n, \" keith kline \" , \" julie johncox \"\n, \" john hallam \" , \" joe drago \"\n, \" jim rhodes \" , \" jeff\nconner \" , \" jeff cashman \"\n, \" janet pacatte \" , \" janet\nhahn \" , \" flavel chastain \" ,\n\" duane paul \" , \" don allen \" ,\n\" debbie liles \" , \" david wells \" ,\n\" david duman \" , \" damon gaines \"\n, \" cynthia persons phillips \"\n, \" cynthia harnest \" , \" craig\ngoldman \" , \" courtney jeans \" ,\n\" cornell thomas \" , \" cathy coleman \" ,\n\" cal martinez \" , \" bonita maurer \"\n, \" ardina washington \"\ncc :\nsubject : economic and workforce development day\nattached is information about economic and workforce development day . ? this\nclass day will be thursday , december 14 , 2000\n- meme economic development day dec 2000 . doc\n- christmas invitation 2000 reata . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.937+0000", "entityId": 9168, "properties": {"text": "Subject: iafe membership\ndear colleague :\nwe are pleased to report that we had a very exciting and productive year\nwith dozens of activities around the world . as we enter our 10 th year of\noperations , the iafe has additional membership options available to you .\nplease take a moment to look at the attached membership form with the 2001\nrate schedule . based on member requests , a premium membership is now being\noffered that includes the annual conference at a 30 % discount , the financial\nengineer of the year dinner , plus a subscription to the journal of\nderivatives ( jod ) . the full membership remains as in previous years . the new\nregular membership includes all membership benefits except jod . membership\nis based on the calendar year january 1 - december 31 , 2001 .\nmembership is also available on our secured membership registration form at\nour website http : / / www . iafe . org / about / join . ihtml . while on our website ,\nplease take a moment to visit our calendar listing upcoming events for the\nnew year .\nif you have any questions please don ' t hesitate to contact me at\nmain @ iafe . org .\nregards ,\ndonna jacobus\niafe office manager\n- 2001 membership application . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.942+0000", "entityId": 9169, "properties": {"text": "Subject: charles shen\nvince : update on charles shen : he called me this morning to verify that we\nhad received his faxed paystub . i told him that we had , and that i had\nrelayed the information to you , but hadn ' t heard back from you yet . he is\ndefinitely interested in working for enron , and ended up saying that he\ndidn ' t mean to be demanding and really only wanted a package a little better\nthan the one he has at williams .\ni told him that i would follow up with you to see where you wanted to go from\nhere , and that i would get back to him as soon as i received some\ninstructions from you .\nplease let me know if you would like me to do anything else or find out any\nmore information from him .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.948+0000", "entityId": 9170, "properties": {"text": "Subject: fwd : our conversation today\nreturn - path :\nfrom : awenda 2000 @ cs . com\nfull - name : awenda 2000\nmessage - id :\ndate : mon , 4 dec 2000 12 : 47 : 07 est\nsubject : our conversation today\nto : wkamins @ enron . com\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" part 2 _ 3 b . d 386 bc 9 . 275 d 329 b _ boundary \"\nx - mailer : unknown sub 111\nhi wincenty ,\nit was a pleasure talking to you today . i am enclosing my resume and look\nforward to talking to you again .\nbest regards\nbibianna\n- bibianna res . # 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.952+0000", "entityId": 9171, "properties": {"text": "Subject: fwd : our conversation today\nreturn - path :\nfrom : awenda 2000 @ cs . com\nfull - name : awenda 2000\nmessage - id :\ndate : mon , 4 dec 2000 12 : 47 : 07 est\nsubject : our conversation today\nto : wkamins @ enron . com\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" part 2 _ 12 . 59 ad 86 b . 275 d 329 b _ boundary \"\nx - mailer : unknown sub 111\nhi wincenty ,\nit was a pleasure talking to you today . i am enclosing my resume and look\nforward to talking to you again .\nbest regards\nbibianna\n- bibianna res . # 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.957+0000", "entityId": 9172, "properties": {"text": "Subject: re : interview schedule for iris mack\noops ! i guess you were supposed to know that she is coming this friday ,\nthe 8 th of december .\nsorry !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 05 / 2000\n08 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n12 / 05 / 2000 08 : 41 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : interview schedule for iris mack\nshirley ,\nwhat day is she coming ?\nvince\nshirley crenshaw\n12 / 04 / 2000 01 : 36 pm\nto : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , zimin\nlu / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : interview schedule for iris mack\nbelow is the interview schedule for iris mack . i will give your her\nresume on thursday .\n8 : 30 am vince kaminski\n9 : 00 am stinson gibner\n9 : 30 am tanya tamarchenko\n10 : 00 am zimin lu\n10 : 30 am vasant shanbhogue\n11 : 00 am molly magee\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.962+0000", "entityId": 9173, "properties": {"text": "Subject: re : looking for someone who has experience in finance , math ,\nprogramming , and the energy industry ? ( that ' s right , all four . . . )\nmegan ,\nthanks for your interest in the research group . please , call me next week\n( tuesday\nand later ) and stop by . i would like to talk to you for a few minutes before\nwe shall\ngo ahead with a formal interview .\nvince\nmegan cooper @ ees\n12 / 04 / 2000 04 : 54 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : looking for someone who has experience in finance , math ,\nprogramming , and the energy industry ? ( that ' s right , all four . . . )\nvince ,\nfollowing your espeak session , erin rice suggested i contact you about\njoining your group . i have been with ees for almost three years , and during\nthat time i have worked on tasks that are similar to what your group does on\na larger scale . specifically , i excel at analytical / quantitative problem\nsolving and the development of models and user requirements for application\ndevelopment . my educational background is energy management , and i have\nrecently become involved in the financial aspects of transactions . i have\nattached my resume for your review , and i hope you will call me so we can\ntalk in person .\nthank you .\nmegan cooper\nintegrated water solutions group\nees - na\n( 713 ) 853 - 1461", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.967+0000", "entityId": 9174, "properties": {"text": "Subject: faculty information sheet\nmr . kaminski ;\ni will fax the faculty information sheet to you so that you may check for\naccuracy . also , i will fax your formal offer letter to you this afternoon .\nplease allow by dec . 15 for your paperwork to be processed . after that\ndate , you should contact bill ciminelli , director of administration , ( 713 )\n348 - 5377 . bill can assist you with assigning your mailbox and office\nspace , membership for faculty club card ( campus cafeteria for faculty and\nstaff only ! ) , rice i . d . card , and parking decal . also , suzana vazquez ,\nbill ' s assistant , ( 713 ) 348 - 3736 , can assist you with any materials that\nyou want to be copied and / or distributed to your students .\nif you need to order any required or suggested book ( s ) for your course ,\nplease contact the campus bookstore at ( 713 ) 348 - 4052 . the bookstore does\nnot order examination copies for faculty . you must contact the publisher\nif you are wanting an examination or desk copy of a book .\nif you have any questions , please feel free to contact me at my office\n( 713 ) 348 - 3733 or email .\njacquelyn j . gambrell\nexecutive assistant to the associate dean for faculty affairs\njones graduate school of management / ms 531\nrice university\np . o . box 1892\nhouston , texas 77251 - 1892\noffice ph . ( 713 ) 348 - 3733\nemail : gambrell @ rice . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.971+0000", "entityId": 9175, "properties": {"text": "Subject: vince kaminski\nvince :\ndid you get the below email from jim garven ?\nwould you be able to stay over and speak at the risk management fraternity\nand perhaps come in a day early and speak to his students ?\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 05 / 2000\n02 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njim garven on 12 / 05 / 2000 02 : 09 : 27 pm\nto : \" shirley crenshaw \"\ncc :\nsubject : vince kaminski\ndear ms . crenshaw ,\non november 28 , i sent vince kaminski an email inviting him to visit baylor\nuniversity ( where i now hold an appointment as professor of finance having resigned from lsu this pas spring ) . ? i have yet to receive\na reply from him . ? can you bring this email ( copied below ) to his attention ?\nthanks ,\njim garven\n= = = = = = = = = = = = = = = = = = = = = = = = = = =\ndear vince ,\nsince we last corresponded , i have left lsu and am now professor of finance &\ninsurance at baylor university in waco , tx . my colleague at baylor , john\nmartin , mentioned that you will be coming to campus for a conference on\nfriday , february 23 that he is organizing . i am curious whether your schedule\nmight permit staying over that evening so that we can feature you as our\ndinner speaker for the chartering ceremony of gamma iota sigma , a national\nrisk management fraternity . for that matter , would you also possibly be\navailable to make any presentations to undergraduate and graduate students on\nthe previous day ( thursday , february 22 ) ? what i have in mind is a\npresentation similar to the presentations you made last spring to my lsu\nclasses .\nthank you for your consideration of this request . i am looking forward to\nseeing you once again .\nsincerely ,\njim garven\njames r . garven , ph . d .\nprofessor of finance & insurance\ndepartment of finance , insurance and real estate\nhankamer school of business\nhsb 336\nbaylor university\nbox 98004\nwaco , tx ? 76798\nvoice : ( 254 ) 710 - 6207\nfax : ( 603 ) 994 - 6680\ne - mail : ? james _ garven @ baylor . edu\nhome page : http : / / garven . baylor . edu\nvita : http : / / garven . baylor . edu / dossier . html\nresearch paper archive : http : / / garven . baylor . edu / research . html\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.976+0000", "entityId": 9176, "properties": {"text": "Subject: re : brown bag\ntom :\nyes , we can arrange that .\nzimin\ntom halliburton @ enron\n12 / 05 / 2000 01 : 52 pm\nto : alex huang / corp / enron @ enron , zimin lu / hou / ect @ ect\ncc :\nsubject : brown bag\nalex , zimin ,\nfriday 19 th january i have asked leon lasdon from ut austin to talk on\nnon - linear programming . let me know asap if you have something else\nplanned . yo folks are co - ordinating these talks ? ?\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.983+0000", "entityId": 9177, "properties": {"text": "Subject: re : yana kristal ' s rotation\nhi vince , i already spoke with maureen and we discussed timing . yana will\nstay until a replacement is found and trained . as for the permanent\ntransfer , that is not a problem . thanks for getting back with me .\navr\nvince j kaminski\n12 / 05 / 2000 03 : 26 pm\nto : andrea v reed / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : yana kristal ' s rotation\nandrea ,\nit ' s fine with me . few points :\n1 . as a courtesy to maureen raymond , please , discuss the timing with her .\n2 . yana is not a member of the analyst / associate pool . this is not a rotation .\nshe was hired directly and this means that we transfer her\npermanently to your unit .\nvince\nandrea v reed\n12 / 05 / 2000 01 : 14 pm\nto : vince j kaminski / hou / ect @ ect , maureen raymond / hou / ect @ ect\ncc : yana kristal / corp / enron @ enron\nsubject : yana kristal ' s rotation\ni spoke to yana today and understand that you are supportive of yana rotating\nthrough our group , eim fundamental analysis . we are very pleased that yana\nwill be joining us . her skill set will be particularly helpful as we build\nthe steel business .\ni was hoping that yana could begin working with us mid december . does a\nstart date in eim of dec . 18 work for you ? please let me know .\nonce again , thank you for your support .\nandrea", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.988+0000", "entityId": 9178, "properties": {"text": "Subject: re : christmas basket list\nhere is the updated list that we have for christmas .\nthe orders will be placed on dec . 12 th .\nthe orders will arrive at the enron building dec . 19 th . and all outside orders\nwill arrive before dec . 22 nd .\nplease inform , if this is okay .\nthanks\nkevin\nmoore\ni will discuss cost with vince after meeting with bill on friday .\nkevin g moore\n12 / 01 / 2000 09 : 26 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , jose marquez / corp / enron @ enron , stinson\ngibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , anita dupont / na / enron @ enron\ncc :\nsubject : christmas basket list\nhello everyone ,\nwe are nearing the time to get the baskets and other christmas tokens sent\nout .\nas in every year , we do take the time to send tokens of appreciation\nfor services rendered , or share the christmas sprit with those we feel\nworthty .\nhere is the list that i have already , approved by vince .\nif there are any additions please inform me a . s . a . p .\nthe deadline is december 12 th , as i will be meeting with the\nowner of floral events to confirm the order and treat him to\nlunch for all the great work he has provided for me .\nthanks\nkevin moore\nplease note : i will be out on vacation and all orders will already have been\nplaced\nwith the delivery date on december 19 th . the day of my return ,\ntherefore if any problems occur i will have enough time to solve them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:48.993+0000", "entityId": 9179, "properties": {"text": "Subject: derivative classes\ni discovered that clewlow and strickland have at least two books ,\n\" implementing derivative models , \" and \" exotic options . \" i gather that \" exotic\noptions \" is the one you intend to use in your class , correct ?\nby the way , i queried participants in my class , and i heard that the case\nstudy approach we occaisionally used was appreciated by several . the var\nclass i taught was from jorian ' s book , which has no exercises and which\nassumes a particular background in finance and statistics . i created a\nproblem ( not exactly a case study ) that required participant to learn some\nstatistics and try some different approaches . from this , participants got a\nbetter idea of why one bothers with certain issues . some liked the \" real\nworld \" flavor of this kind of approach . ( without the case approach , you could\nprovide good counterexampes as a partial remedy . )\nbest regards and season ' s greetings ,\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.002+0000", "entityId": 9180, "properties": {"text": "Subject: wti trading simulation model - presentation\nvince ,\nsince you are not here today , i just sent out the presentation of the model i\nprepared for john\nfor his feedback . i would appreciate that you review it before we make the\nfinal version .\nobviously , this simulation model is going to make a big impact on our online\ntrading . and i am happy\nthat we have accomplished this task effciently and elegantly .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 12 / 06 / 2000 01 : 25 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n12 / 06 / 2000 01 : 21 pm\nto : john j lavorato / corp / enron @ enron\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : wti trading simulation model - presentation\njohn ,\ni put together a presentation of the simulation model for wti market maker\nfor you .\nthe p / l results are investigated by assuming different scenarios .\nthe key variable is the number of trade per day , therefore is varied from\n200 to 1000 trades .\nscenarios are generated by different spreads , net open position allowed , and\ntime period .\ntake a look what i have prepared , and let me know things you want to add or\ndelete .\nif you have any questions , i will be happy to discuss with you .\nzimin\nps : this presentation is only for the open - close trading . i will produce\nexact the same\nsequence for the continuous trading ( close - close ) once you approve the\ncontent .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.013+0000", "entityId": 9181, "properties": {"text": "Subject: re : seminar on beyond ols\nclayton ,\nwe can offer the seminar / discussion session on monday , december 18 ,\nat 3 : 30 . please , let me know if this would work .\nvince\nclayton vernon @ enron\n12 / 07 / 2000 01 : 55 pm\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : seminar on beyond ols\nvince -\ngeorge is fully enthusiastic for a seminar by research on these ideas and\nresource tools . any afternoon is fine to him - we can probably push the time\nup to 3 : 00 or so so everyone who needs to cheat to get away from work early\nto go shopping can .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.018+0000", "entityId": 9182, "properties": {"text": "Subject: pserc denver meeting\nvince ,\nthe pserc meeting lance and i went to was both interesting\nand boring . pserc has 11 school members and 30 industry members . its research\nprogram consists of three stems : markets , transmission and distribution ,\nand systems . ( enron ' s interests probably lie mainly in the first stem . )\nin morning of the first day , researchers from universities\npresented their project proposals . i found some of them\nquite interesting . for example , shmuel oren , fernando alvarado ,\ntim mount ( of cornell ) propose to study \" market redesign : incorporating\nthe lessons learned from actual experiences for enhancing market\ndesign , \" shijie deng , s . oren et al propose to study \" power asset\nvaluation model in a market - based and reliability - constrained electric\npower system . \" the first got funded but the second did not .\nin the same afternoon industry and academic separated to have their\nown discussion . i went to the academic discussion and lance the\nindustry one . i hope my presence there did not make things worse , for\nthe discussion revealed a lot of organizational chaos and confusion .\nthe proposal screen process got a lot of heat from participants .\nthe proposal process goes as follows : researchers first write a short\nproposal to appropriate stem committee ( no industry participantion , it seems\nto me ) ,\neach committee then ranks the proposal and selects the top 3 or 4 . the\nselected\nproposals are then expanded to be present to the industry . industry then\ngets to vote which proposals get funded . however , some researchers were\nvery unhappy about the initial ranking and selection process . there were\naccusation of self - ranking , communication between stem committee and\nmember schools breaking down , and so on . some were even asking for\nsome sort of assurance that the project will be funded even before wrting it\n( the arguement was \" then it was a waste of our time to write proposals \" ,\nwhich i found quite amusing ) .\nall in all , i found the process was not taken seriously enough by university\nresearchers . pserc has been established for 5 years now and it still does\nnot have a proper proposal screen process , which is hard to believe . also ,\nthe communication among university researchers , between stem committee\nand member schools , and most importantly , between researchers and industry ,\nare not smooth as all .\nsince the proposals are voted by 30 or so industry members , the \" right \"\nprojects may not get funded . too many participants also make the decision\nprocess very indecisive and quite painful to watch ( lance can comment on\nthis better ) . they also wanted to spread the fund among all schools which\nmade the voting a less authoritive .\ni believe enron will not get much returns from join pserc ( price tag is\n$ 40 , 000\nper company per year ) . if we find some projects interesting , we can sponsor\nthe schools in the form of summer interns , the schools claim that most of the\nfund\ngoes to support students anyway .\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.022+0000", "entityId": 9183, "properties": {"text": "Subject: super saturday - dinner participation not needed\nplease see the attached memo . we will not be needing you to participate in\nthe dinner friday , december 8 th . thanks so much for volunteering ! ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.028+0000", "entityId": 9184, "properties": {"text": "Subject: december 11 , 2000 ews prc meeting\nattached is an agenda and attendee list for the december 11 enron wholesale\nservices group prc meeting . the first part of this meeting will involve a\nreview of the prc results below vp in ena , eim , egm and enw , in addition to\na discussion and approval of promotion nominations . the vp preranking will\nbegin at 9 : 30 am and will include preranking of vp ' s in ena , eim , egm , enw ,\ncalme , esa and apachi .\nplease note on the attendee list which part of the meeting you need to attend .\nthe meeting is at the st . regis hotel ; however , please note a change to the\ncolonnade room .\nshould you have any questions regarding this meeting , please contact sheila\nknudsen at x 36628 in houston .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.033+0000", "entityId": 9185, "properties": {"text": "Subject: re : implementation of smothing algorithm for forward forward\nvolatilities calculation\nwinston ,\ni am sending you the documentation on the new methodology for creating ffvols\nfrom implied vols . this methodology requires some minimization procedure\nto fit the given vol curve with a smoothing function . i am sending you the\ncode i wrote that performs minimization with simulated annealing method from\nnumerical recipes .\nwe might need to discuss some details . please , let me know if you have\nquestions .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.037+0000", "entityId": 9186, "properties": {"text": "Subject: iafe membership\na membership renewal form was faxed to you on 11 / 28 / 00 for vince kaminski .\nwe requested a \" full \" membership at the practitioner level for $ 165 . 00 and\nit was charged to mr . kaminski ' s credit card .\nwould you please verify that you received this form ?\nthank you .\nshirley crenshaw\nadministrative coordinator\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 07 / 2000\n03 : 32 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n12 / 07 / 2000 10 : 40 am\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : iafe membership\nshirley ,\nplease , renew my membership .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 07 / 2000\n10 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmain @ iafe . org on 12 / 05 / 2000 03 : 47 : 45 pm\nto :\ncc :\nsubject : iafe membership\ndear colleague :\nwe are pleased to report that we had a very exciting and productive year\nwith dozens of activities around the world . as we enter our 10 th year of\noperations , the iafe has additional membership options available to you .\nplease take a moment to look at the attached membership form with the 2001\nrate schedule . based on member requests , a premium membership is now being\noffered that includes the annual conference at a 30 % discount , the financial\nengineer of the year dinner , plus a subscription to the journal of\nderivatives ( jod ) . the full membership remains as in previous years . the new\nregular membership includes all membership benefits except jod . membership\nis based on the calendar year january 1 - december 31 , 2001 .\nmembership is also available on our secured membership registration form at\nour website http : / / www . iafe . org / about / join . ihtml . while on our website ,\nplease take a moment to visit our calendar listing upcoming events for the\nnew year .\nif you have any questions please don ' t hesitate to contact me at\nmain @ iafe . org .\nregards ,\ndonna jacobus\niafe office manager\n- 2001 membership application . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.043+0000", "entityId": 9187, "properties": {"text": "Subject: iafe membership\nshirley ,\nplease , renew my membership .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 07 / 2000\n10 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmain @ iafe . org on 12 / 05 / 2000 03 : 47 : 45 pm\nto :\ncc :\nsubject : iafe membership\ndear colleague :\nwe are pleased to report that we had a very exciting and productive year\nwith dozens of activities around the world . as we enter our 10 th year of\noperations , the iafe has additional membership options available to you .\nplease take a moment to look at the attached membership form with the 2001\nrate schedule . based on member requests , a premium membership is now being\noffered that includes the annual conference at a 30 % discount , the financial\nengineer of the year dinner , plus a subscription to the journal of\nderivatives ( jod ) . the full membership remains as in previous years . the new\nregular membership includes all membership benefits except jod . membership\nis based on the calendar year january 1 - december 31 , 2001 .\nmembership is also available on our secured membership registration form at\nour website http : / / www . iafe . org / about / join . ihtml . while on our website ,\nplease take a moment to visit our calendar listing upcoming events for the\nnew year .\nif you have any questions please don ' t hesitate to contact me at\nmain @ iafe . org .\nregards ,\ndonna jacobus\niafe office manager\n- 2001 membership application . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.047+0000", "entityId": 9188, "properties": {"text": "Subject: re : corporate allocation from enron research group\ni discussed the numbers with vince and we have the sign off from him . so ,\nvera and shirley , you can go ahead to execute the adjustment .\nthanks ,\nkrishna .\nkimberly watson @ enron\n12 / 06 / 2000 02 : 07 pm\nto : pinnamaneni krishnarao / hou / ect @ ect , vera apodaca / et & s / enron @ enron\ncc :\nsubject : corporate allocation from enron research group\nkrishna ,\nattached is a spreadsheet with the figures we discussed earlier . for\njuly - dec , ets will keep half of the amount allocated ( equivalent to 1 . 5\nemployees , $ 135 . 6 ) from the corporate allocations to ets . if this looks ok\nto you , i would like to have vera work with shirley to handle the accounting\nadjustment similar to mid year . many thanks , kim .\nvera ,\nhere is the year 2000 spreadsheet . as you will see , we will need to work\nwith shirley crenshaw ( x 35290 ) with enron research group to coordinate a\nsimilar accounting adjustment to the one we made mid year . i will send the\nyear 2001 budgeted spreadsheet to you in the next few days ( just in case it\nchanges with the approval of the science workorder ) . please call me if you\nhave any questions about this spreadsheet . thanks , kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.052+0000", "entityId": 9189, "properties": {"text": "Subject: enron contact info\ndear vince , christie and vasant :\nthank you for the presentation to the enron tiger team . it was most\ninformative and well received by the students . this is an exciting project\nand the students are enthusuastic and anxious to begin . many thanks , also ,\nfor hosting the dinner at the palladium . it was a wonderful opportunity to\nget to know more about the project , as well the enron representatives and\nthe students .\nlisted below is the contact information with team contacts identified .\ni will send you the teams project preferences as soon as i recieve them from\nall the students .\nit may be a good idea to contact the students before they leave for vacation\n( 15 - 22 dec ) to see who is interested in a trip to houston in january for\nplanning purposes . they will return to campus jan . 16 .\nplease let me know if there is anything i can do to assist from this end .\nagain , thank you for your support of the wharton school and of the tiger\nteam project 2001 .\nsincerely ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n( 215 ) 573 - 8394\n( 215 ) 573 - 5727 fax\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu\nenron 1 vincent chen vincent . chen . wgo 2 @ wharton . upenn . edu\nenron 1 nick levitt\nnicholas . levitt . wgo 2 @ wharton . upenn . edu\nenron 1 deepa mallik mallikd @ wharton . upenn . edu\nenron 1 jack rejtman jack . rejtman . wgo 2 @ wharton . upenn . edu\nenron 1 kim whitsel whitselk @ wharton . upenn . edu\n* * * team contact\nenron 1 tulika bhalla bhallat @ wharton . upenn . edu\nenron 2 jaideep singh singhjai @ wharton . upenn . edu\nenron 2 edson otani edsono @ wharton . upenn . edu\nenron 2 joshua leventhal levent 86 @ wharton . upenn . edu\n* * * team contact\nenron 2 pat henahan mhenahan @ wharton . upenn . edu\nenron 2 murat camoglu camoglum @ wharton . upenn . edu\nenron 2 gustavo palazzi gustavop @ wharton . upenn . edu\nenron 3 clay degiacinto\nenron 3 steve lessar\nstephen . lessar . wgo 2 @ wharton . upenn . edu\nenron 3 ram vittal mvittal @ wharton . upenn . edu\n* * * team contact\nenron 3 jason cummins marc . cummins . wgo 2 @ wharton . upenn . edu\nenron 3 omar bassel bassalo @ wharton . upenn . edu\nenron 3 dennis feerick\ndennis . feerick . wgo 2 @ wharton . upenn . edu\nprofessors : louis thomas thomas @ wharton . upenn . edu\nkeith weigelt weigelt @ wharton . upenn . edu\nta : heather thorne hethorne @ wharton . upenn . edu\nfap : donna piazze piazze @ wharton . upenn . edu\nhost contacts :\nvince kaminski vkamins @ enron . com\nchristie patick christie . patrick @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.057+0000", "entityId": 9190, "properties": {"text": "Subject: re : good morning\njohn ,\nit does not sound silly to me . i don ' t get that many opportunities to sit\ndown\nwith those guys in a relaxed atmosphere and chat .\ni shall read the notes and get back to you . i have just come back from\nphiladelphia and have to catch up with a few things .\nvince\n\" john d . martin \" on 12 / 06 / 2000 09 : 39 : 50 am\nto : vkamins @ enron . com\ncc :\nsubject : good morning\nvince ,\ni know that you are in philadelphia today but wanted to ship you my \" first\npass notes \" before i leave town in the morning . please edit / add to or\ndelete anything you think is appropriate . my objective in the notes is\njust to get things down on paper before too much time has passed . when i\nplace something in quotes this indicates a direct quote .\ni ' ll give you a call next week when i get back to town . thanks again for a\ntruly memorable experience . i plan to frame jeff ' s enron model . it may\nsound silly to you guys but we academics really appreciate opportunities\nlike the one i got on monday . what a truly spectacular day .\ntake care ,\njohn\np . s . andy gave me his note care describing the demand for a peaking plant\nbut i wasn ' t able to get him to sign it . i hope i did not offend him by\nasking for his signature on that silly graph . after i left his office it\noccured to me that he might think i was making light of him . please\nexplain to him that i was not and will treasure his simple model as\ncapturing the essence of optionality in a real asset .\n- . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.061+0000", "entityId": 9191, "properties": {"text": "Subject: re : developing my electricity model at enron\naziz ,\nyes . if you are interested in joining us next summer as an intern ,\nwe would be very happy to have you .\nplease , send me your resume .\nvince\naziz lookman on 12 / 06 / 2000 01 : 11 : 57 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : developing my electricity model at enron\ndr . kaminski :\ni am the phd student at the business school at carnegie mellon who is\ninterested in energy modeling . thanks once again for taking the time\nto talk with me about my model for electricity during your recent\nvisit to carnegie mellon . during our conversation , you had mentioned\nthe possibility of my coming out to enron to work on developing my\nmodel , possibly through an internship . is this still an option ? if so ,\ncould you please advise me how to proceed .\nsincerely ,\naziz a . lookman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.066+0000", "entityId": 9192, "properties": {"text": "Subject: re : suggestion : implementing var based on non - normal log - returns\nsimulations\neverybody ,\nwe were talking for a while about using non - normal distributions in the\nmonte - carlo simulations in our var model .\ni put together some suggestion regarding this . the text is under\no : \\ _ dropbox \\ tanya \\ non _ normal _ logs . doc\nlook through this 3 page document , and let me know what you think , please .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.071+0000", "entityId": 9193, "properties": {"text": "Subject: agenda for houston visit\ndear vince and mike ,\nto maximize my time in houston an agenda needs to be agreed upon as well as\nmilestones .\nhere is a summary of what i have in mind :\n* mesoscale weather analysis and forecasting\n* computer models vs . human forecasters , performance issues\n* nwp modeling\n- types of numerical weather predictio models ( nwp models )\n- objective analysis and initialization\n- data iisues and feeds\n- ( physical ) processes that determine the quality of a forecast\n* predictibility and verification\n* visualisation of weather and climate forecasts\n* installation of\n- short - to - medium term forecast system\n- seasonal forecast system\n- system testing and verification\n* issues\n- data feeds\n- platform considerations\n- realtime performance\nwhat we need to agree on is a firm agenda , milestones , resources , etc . . . . and\na time table . . . .\nmy contact details are :\noffice :\n+ 61 2 9229 2319 ( direct )\ncell :\n+ 61 417 695 212\nhome :\n+ 61 2 9871 7369\nregards ,\nchristian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.076+0000", "entityId": 9194, "properties": {"text": "Subject: research prc\nplease make sure that vince has the new location on his calendar - i think\nshirley is out of the office\n- - - - - - - - - - - - - - - - - - - - - - forwarded by norma villarreal / hou / ect on 12 / 07 / 2000\n04 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nramona perkins @ enron\n12 / 06 / 2000 05 : 38 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : norma villarreal / hou / ect @ ect , susan wimberley / hou / ect @ ect\nsubject : research prc\nthe prc meeting for research has been moved to eb 42 cl . please make the\nnecessary changes to vince ' s calendar . thanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.081+0000", "entityId": 9195, "properties": {"text": "Subject: re : christmas basket list\nhere is the completed list for the year 2000\ntotal $ 1470 . 00\nthanks\nkevin moore\nkevin g moore\n12 / 05 / 2000 10 : 56 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , jose marquez / corp / enron @ enron , stinson\ngibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , anita dupont / na / enron @ enron\ncc :\nsubject : re : christmas basket list\nhere is the updated list that we have for christmas .\nthe orders will be placed on dec . 12 th .\nthe orders will arrive at the enron building dec . 19 th . and all outside orders\nwill arrive before dec . 22 nd .\nplease inform , if this is okay .\nthanks\nkevin\nmoore\ni will discuss cost with vince after meeting with bill on friday .\nkevin g moore\n12 / 01 / 2000 09 : 26 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , jose marquez / corp / enron @ enron , stinson\ngibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , anita dupont / na / enron @ enron\ncc :\nsubject : christmas basket list\nhello everyone ,\nwe are nearing the time to get the baskets and other christmas tokens sent\nout .\nas in every year , we do take the time to send tokens of appreciation\nfor services rendered , or share the christmas sprit with those we feel\nworthty .\nhere is the list that i have already , approved by vince .\nif there are any additions please inform me a . s . a . p .\nthe deadline is december 12 th , as i will be meeting with the\nowner of floral events to confirm the order and treat him to\nlunch for all the great work he has provided for me .\nthanks\nkevin moore\nplease note : i will be out on vacation and all orders will already have been\nplaced\nwith the delivery date on december 19 th . the day of my return ,\ntherefore if any problems occur i will have enough time to solve them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.088+0000", "entityId": 9196, "properties": {"text": "Subject: re : corporate allocation from enron research group\nvera :\nvince wants to talk to becky pham before we do this - i have a call in to her\nfor a short meeting . i will let you know as soon as possible .\nthanks !\nshirley\n12 / 07 / 2000 11 : 21 am\nvera apodaca @ enron\nvera apodaca @ enron\nvera apodaca @ enron\n12 / 07 / 2000 11 : 21 am\n12 / 07 / 2000 11 : 21 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : corporate allocation from enron research group\nshirley , i just talked to you over the phone and here is the information :\nthe adjustment total is $ 135 . 6 . nng receives a credit of $ 109 and tw\n$ ( 26 . 6 ) . pls make sure it gets into the december business . thanks .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vera apodaca / et & s / enron on 12 / 07 / 2000\n11 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkimberly watson\n12 / 06 / 2000 02 : 07 pm\nto : pinnamaneni krishnarao / hou / ect @ ect , vera apodaca / et & s / enron @ enron\ncc :\nsubject : corporate allocation from enron research group\nkrishna ,\nattached is a spreadsheet with the figures we discussed earlier . for\njuly - dec , ets will keep half of the amount allocated ( equivalent to 1 . 5\nemployees , $ 135 . 6 ) from the corporate allocations to ets . if this looks ok\nto you , i would like to have vera work with shirley to handle the accounting\nadjustment similar to mid year . many thanks , kim .\nvera ,\nhere is the year 2000 spreadsheet . as you will see , we will need to work\nwith shirley crenshaw ( x 35290 ) with enron research group to coordinate a\nsimilar accounting adjustment to the one we made mid year . i will send the\nyear 2001 budgeted spreadsheet to you in the next few days ( just in case it\nchanges with the approval of the science workorder ) . please call me if you\nhave any questions about this spreadsheet . thanks , kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.093+0000", "entityId": 9197, "properties": {"text": "Subject: user id and password update\ndear subscriber ,\n? ? ? ? ? ? ? ? institutional investors newsletters is in the process of upgrading\nits web sites backend database . ? we have found that you have different user\nnames and passwords for the following newsletters :\nderivatives week ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? http : / / www . derivativesweek . com\npower finance ( 212 ) 224 - 3491 fax\nnhumphrey @ iinews . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.101+0000", "entityId": 9198, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 rstt 6\norder for : vince j kaminski\n1 x ( option : 128 mb upgrade for deskpro en 6600 $ 129 )\n1 x ( standard desktop $ 1262 ) enron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.109+0000", "entityId": 9199, "properties": {"text": "Subject: re : from larry roberts\nthanks for the referral on this matter . we want to be the best and honor our\naffirmative action and accessibility responsibility to all people , so we plan\nto satisfy at least the priority 1 points in the web content accessibility\nguidelines put out by the world wide web consortium . in addition , we will\ncontinue to monitor and improve as we develop new tools . thanks again\nhave a good weekend !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.116+0000", "entityId": 9200, "properties": {"text": "Subject: re : genetic programming\ntodd ,\nwe have several members of the group who can help you . one of them is steve\nleppard located\nin london .\nvince\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : genetic programming\nvince -\ni am with the ebs venture capital group . we are looking at evaluating an\ninvestment in a company called widevine out of seattle . part of their value\nproposition involves certain patents on genetic programming . are you familiar\nwith that ? if so , can i set a meeting with you and a few other members of my\ngroup to discuss on tuesday or wednesday ?\ntodd van roten\nenron broadband ventures\noffice : ( 713 ) 853 - 3850\nfax : ( 713 ) 646 - 8010\ncell : ( 713 ) 305 - 0110", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.120+0000", "entityId": 9201, "properties": {"text": "Subject: paper\nhi mr . kaminski ,\nthank you for taking your time to interview me for opportunities at enron . i\nenjoyed talking you and learning more about enron and its dynamic business\nenvironment . i appreciate your consideration for a challenging and rewarding\nposition in this industry . please find the attached copy of my dissertation .\nif you have any problem in compiling this file , please let me know .\ni respected your insights and perspective on the issues addressed in my\nph . d . dissertation ; including the issues on creative model building , factors\naffecting natural gas and elctricity demand and supply , and implementation\nof these models to simulate the future and help traders in the decision\nmaking of their day to day business .\ni appreciated talking with you . thank you for considering me . i am\nenthusiastic about opportunities at enron and look forward to hearing from\nyou .\nsincerely\ndipak agarwalla\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com\n- dissertation - dipak agarwalla . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.125+0000", "entityId": 9202, "properties": {"text": "Subject: vince ,\nmy rice e - mail address is sokolov @ rice . edu\ni will be checking it regularly during the next month .\nmy schedule for decmber / january is as follows :\nlast day of finals : december 18\nfirst day in the office : december 29\nvacation days : december 30 - january 15\nsecond day in the office : january 16\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.131+0000", "entityId": 9203, "properties": {"text": "Subject: re : enron contact info\nchristie ,\nthanks for taking initiative on the trip so quickly . let ' s meet with jeff\nshankman\nto discuss the agenda . i shall try to organize a meeting next week after prcs\nare over .\ni agree with your assessment of the group . i was greatly impressed with the\ncaliber of the students .\nvince\nchristie patrick @ ect\n12 / 07 / 2000 06 : 33 pm\nto : fap @ enron\ncc : clay degiacinto @ enron , deepa\nmallik @ enron , dennis feerick\n@ enron , edson otani\n@ enron , gustavo palazzi\n@ enron , \" heather n . thorne ( e - mail ) \"\n@ enron , jack rejtman\n@ enron , jaideep singh\n@ enron , jason cummins\n@ enron , joshua leventhal\n@ enron , kim whitsel\n@ enron , \" louis a thomas ( e - mail ) \"\n@ enron , murat camoglu\n@ enron , nick levitt\n@ enron , omar bassel\n@ enron , pat henahan\n@ enron , ram vittal\n@ enron , steve lessar\n@ enron , tulika bhalla\n@ enron , vincent chen\n@ enron , weigelt\n@ enron , fap\n@ enron , \" ' christie . patrick @ enron . com ' \"\n@ enron , \" ' vkamins @ enron . com ' \"\n@ enron , jeffrey a shankman / hou / ect @ ect\nsubject : re : enron contact info\nhi evryone !\nvince , vasant and i are very excited about the tiger project ! we all\nthoroughly enjoyed the opportunity to meet with such an incredibly\ninteresting , enthusiastic and intelligent group . thank you for your time !\nfor those interested in the houston trip on january 18 - 19 th , please let me\nknow by the 15 th of december so that i can get the best deal on air fare\n( one - month in advance ) .\nalso , i ' ll be forwarding the enron information packages to donna piazze for\nyour receipt next week . i am including jeff shankman in this reply , as jeff\nis a wharton grad , leader of one of our enron business units , and one of the\nmost enthusiastic enron / wharton cheerleaders .\nplease feel free to individually contact me if there is anything i can do for\nany of you .\nthanks again for your enthusiastic interest in enron !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.136+0000", "entityId": 9204, "properties": {"text": "Subject: re : enron contact info\nchristie ,\nthanks again for taking the time to visit wharton and share about enron\nand our upcoming project . i know each of us is excited about the opportunity\nto learn and contribute to enron . specifically , thank you for the awesome\ndinner at the palladium . it was a great way to get to know you , visant , and\nvince better .\ni look forward to visiting houston in january . please let me know if\nyou need any additional information with regard to the trip . have a great\nholiday season , and i look forward to seeing each of you in january .\nsincerely ,\njason cummins\n- - - - - original message - - - - -\nfrom : christie . patrick @ enron . com\nto : fap @ management . wharton . upenn . edu\ncc : clayton . degiacinto . wgo 2 @ wharton . upenn . edu ; mallikd @ wharton . upenn . edu ;\ndennis . feerick . wgo 2 @ wharton . upenn . edu ; edsono @ wharton . upenn . edu ;\ngustavop @ wharton . upenn . edu ; hethorne @ wharton . upenn . edu ;\njack . rejtman . wgo 2 @ wharton . upenn . edu ; singhjai @ wharton . upenn . edu ;\nmarc . cummins . wgo 2 @ wharton . upenn . edu ; levent 86 @ wharton . upenn . edu ;\nwhitselk @ wharton . upenn . edu ; thomas @ wharton . upenn . edu ;\ncamoglum @ wharton . upenn . edu ; nicholas . levitt . wgo 2 @ wharton . upenn . edu ;\nbassalo @ wharton . upenn . edu ; mhenahan @ wharton . upenn . edu ;\nmvittal @ wharton . upenn . edu ; stephen . lessar . wgo 2 @ wharton . upenn . edu ;\nbhallat @ wharton . upenn . edu ; vincent . chen . wgo 2 @ wharton . upenn . edu ;\nweigelt @ wharton . upenn . edu ; fap @ management . wharton . upenn . edu ;\nchristie . patrick @ enron . com ; vkamins @ enron . com ; jeffrey . a . shankman @ enron . com\nsent : 12 / 7 / 2000 7 : 33 pm\nsubject : re : enron contact info\nhi evryone !\nvince , vasant and i are very excited about the tiger project ! we all\nthoroughly enjoyed the opportunity to meet with such an incredibly\ninteresting , enthusiastic and intelligent group . thank you for your\ntime !\nfor those interested in the houston trip on january 18 - 19 th , please let\nme\nknow by the 15 th of december so that i can get the best deal on air fare\n( one - month in advance ) .\nalso , i ' ll be forwarding the enron information packages to donna piazze\nfor\nyour receipt next week . i am including jeff shankman in this reply , as\njeff is a wharton grad , leader of one of our enron business units , and\none\nof the most enthusiastic enron / wharton cheerleaders .\nplease feel free to individually contact me if there is anything i can\ndo\nfor any of you .\nthanks again for your enthusiastic interest in enron !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.141+0000", "entityId": 9205, "properties": {"text": "Subject: fyi\ndue to the out of town deliveries , our cost for christmas\nbaskets will be over somewhat from the total estimated .\nthanks\nkevin moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.146+0000", "entityId": 9206, "properties": {"text": "Subject: re : christmas basket list\ngoodmorning ,\nthis is the last e - mail regarding christmas baskets .\nhere is a detailed disussion for the baskets .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 12 / 08 / 2000 10 : 41\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore\n12 / 07 / 2000 01 : 55 pm\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect\ncc :\nsubject : re : christmas basket list\nhere is the completed list for the year 2000\ntotal $ 1470 . 00\nthanks\nkevin moore\nkevin g moore\n12 / 05 / 2000 10 : 56 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , jose marquez / corp / enron @ enron , stinson\ngibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , anita dupont / na / enron @ enron\ncc :\nsubject : re : christmas basket list\nhere is the updated list that we have for christmas .\nthe orders will be placed on dec . 12 th .\nthe orders will arrive at the enron building dec . 19 th . and all outside orders\nwill arrive before dec . 22 nd .\nplease inform , if this is okay .\nthanks\nkevin\nmoore\ni will discuss cost with vince after meeting with bill on friday .\nkevin g moore\n12 / 01 / 2000 09 : 26 am\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , jose marquez / corp / enron @ enron , stinson\ngibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , anita dupont / na / enron @ enron\ncc :\nsubject : christmas basket list\nhello everyone ,\nwe are nearing the time to get the baskets and other christmas tokens sent\nout .\nas in every year , we do take the time to send tokens of appreciation\nfor services rendered , or share the christmas sprit with those we feel\nworthty .\nhere is the list that i have already , approved by vince .\nif there are any additions please inform me a . s . a . p .\nthe deadline is december 12 th , as i will be meeting with the\nowner of floral events to confirm the order and treat him to\nlunch for all the great work he has provided for me .\nthanks\nkevin moore\nplease note : i will be out on vacation and all orders will already have been\nplaced\nwith the delivery date on december 19 th . the day of my return ,\ntherefore if any problems occur i will have enough time to solve them .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.150+0000", "entityId": 9207, "properties": {"text": "Subject: stephen bennett\nvince , for your use as per our discussions\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 12 / 09 / 2000\n10 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mike a roberts 12 / 09 / 2000 10 : 33 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : stephen bennett\nstephen bennett , professional meteorologist , was hired into the research\ngroup in september of this year as a specialist based on salary alignment\ncriteria . in retrospect , and upon review , he should have been hired on as a\nsenior specialist .\nafter coming on board . it rapidly became apparent that stephen was clearly an\n\" under hire . \" he is well - deserving of an immediate promotion ( really more of\na correction ) and pay raise , to be made retroactive at least to the lst of\nthis month . this memo outlines the circumstances surrounding this hiring\nerror and provides detailed justifications for this retroactive \" promotion . \"\nat the time of the interview process , there was no position in enron\ndesignated as \" professional meteorologist . \" in fact , the most recent similar\nhire prior to that date was jose marquez , also a professional meteorologist ,\nwho was hired in , based on salary alignment criteria , as a manager . while\nfunctionally , both these men are meteorologists , enron has no such job\nclassification . compounded by the urgency in bringing on additional\nprofessional expertise in short time order , it was difficult to peg the\nproper enron classification appropriate for this new position . this original\nuncertainty and resulting misplacement of stephen into the specialist\ncategory , rather than the senior specialist category , needs to be corrected\nat this time .\nalthough a \" new - hire \" to enron , stephen bennett has extensive work\nexperience . he has worked as a professional meteorologist at both the\nweather services corporation in boston and at the weather channel in\natlanta . he came to enron well - referenced by both those organizations ,\nneeding no further training and only minimal supervision .\nonce aboard here in houston , stephen immediately demonstrated the core enron\nvalues with our unique sense of urgency . after only a week , he assumed\nresponsibilities normally reserved for someone actually at even a manager\nlevel - he was assigned and fully took over the critical afternoon weather\nbriefings to the gas traders . this includes analysis and report preparation\nas well as presentation . also in the presentation arena , he now regularly\nbriefs various desks in the morning and throughout the day . stephen is a\nmaster of communication and particularly adept at conveying what through\nother messengers might otherwise seem confusing or ambiguous .\nstephen has also demonstrated an unusually high level of self - initiative . he\ndesigned , implemented , and now maintains several sub - sites on the research\nweb page which he tailored to various customers - in specific : the weather\nderivatives team , the agricultural team , and most recently , the crude and\nliquids team . i have recently assigned stephen to spearhead our conversion\nand major upgrade of this web page .\nthese above described accomplishments are above and beyond stephen \u0001 , s regular\nduties which include starting work at 5 am daily , reliably and without fail ,\nto assemble and prepare our trader \u0001 , s weather report . recently , with the\nadvent of extended hours for both nymex and enrononline , stephen voluntarily\non his own accord , assists in our new sunday weather support effort . as his\nsupervisor , fully cognizant of his already standard 50 + hour work week , i do\nnot solicit , but readily accept , this above and beyond expectations\nassistance .\nin review , the circumstance which resulted in this under hire condition was\nenron \u0001 , s immediate need for a non - standard , fairly unique professional - a\nmeteorologist , coupled with stephen \u0001 , s desire to work for our company in spite\nof the absence of a hierarchy which included the exact entitled professional\ntitle reflecting his chosen career path . . once hired , stephen has clearly\ndemonstrated through contribution and performance that he is well - deserving\nof this immediate and retroactive promotion .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.155+0000", "entityId": 9208, "properties": {"text": "Subject: stephen bennett\nstephen bennett , professional meteorologist , was hired into the research\ngroup in september of this year as a specialist based on salary alignment\ncriteria . in retrospect , and upon review , he should have been hired on as a\nsenior specialist .\nafter coming on board . it rapidly became apparent that stephen was clearly an\n\" under hire . \" he is well - deserving of an immediate promotion ( really more of\na correction ) and pay raise , to be made retroactive at least to the lst of\nthis month . this memo outlines the circumstances surrounding this hiring\nerror and provides detailed justifications for this retroactive \" promotion . \"\nat the time of the interview process , there was no position in enron\ndesignated as \" professional meteorologist . \" in fact , the most recent similar\nhire prior to that date was jose marquez , also a professional meteorologist ,\nwho was hired in , based on salary alignment criteria , as a manager . while\nfunctionally , both these men are meteorologists , enron has no such job\nclassification . compounded by the urgency in bringing on additional\nprofessional expertise in short time order , it was difficult to peg the\nproper enron classification appropriate for this new position . this original\nuncertainty and resulting misplacement of stephen into the specialist\ncategory , rather than the senior specialist category , needs to be corrected\nat this time .\nalthough a \" new - hire \" to enron , stephen bennett has extensive work\nexperience . he has worked as a professional meteorologist at both the\nweather services corporation in boston and at the weather channel in\natlanta . he came to enron well - referenced by both those organizations ,\nneeding no further training and only minimal supervision .\nonce aboard here in houston , stephen immediately demonstrated the core enron\nvalues with our unique sense of urgency . after only a week , he assumed\nresponsibilities normally reserved for someone actually at even a manager\nlevel - he was assigned and fully took over the critical afternoon weather\nbriefings to the gas traders . this includes analysis and report preparation\nas well as presentation . also in the presentation arena , he now regularly\nbriefs various desks in the morning and throughout the day . stephen is a\nmaster of communication and particularly adept at conveying what through\nother messengers might otherwise seem confusing or ambiguous .\nstephen has also demonstrated an unusually high level of self - initiative . he\ndesigned , implemented , and now maintains several sub - sites on the research\nweb page which he tailored to various customers - in specific : the weather\nderivatives team , the agricultural team , and most recently , the crude and\nliquids team . i have recently assigned stephen to spearhead our conversion\nand major upgrade of this web page .\nthese above described accomplishments are above and beyond stephen \u0001 , s regular\nduties which include starting work at 5 am daily , reliably and without fail ,\nto assemble and prepare our trader \u0001 , s weather report . recently , with the\nadvent of extended hours for both nymex and enrononline , stephen voluntarily\non his own accord , assists in our new sunday weather support effort . as his\nsupervisor , fully cognizant of his already standard 50 + hour work week , i do\nnot solicit , but readily accept , this above and beyond expectations\nassistance .\nin review , the circumstance which resulted in this under hire condition was\nenron \u0001 , s immediate need for a non - standard , fairly unique professional - a\nmeteorologist , coupled with stephen \u0001 , s desire to work for our company in spite\nof the absence of a hierarchy which included the exact entitled professional\ntitle reflecting his chosen career path . . once hired , stephen has clearly\ndemonstrated through contribution and performance that he is well - deserving\nof this immediate and retroactive promotion .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.160+0000", "entityId": 9209, "properties": {"text": "Subject: esource presents esearch\nesource launches esearch site bringing research to your desktop\nesource , enron ' s premier research group , launched their new product , esearch ,\non december 8 , 2000 .\nesource ' s team of specialized researchers have created a web site to bring\ninformation and research to every employee ' s desktop . the esearch web site\noffers many links to information resources , access to research databases ,\nspecialized searches , sites to purchase books , articles , and reports , and\ntraining . employees can use the web site to conduct their own research or as\na vehicle to submit research requests . esource ' s researchers and industry\nspecialists are available to all enron business units to provide timely and\ncost efficient research , to work with individuals or groups to fulfill one\ntime research requests , or to design ongoing , customized monitoring projects\nor news updates .\nthe preferred browser is internet explorer\njoin us for a demonstration and training session on friday , december 15 th at\n1 : 00 - 1 : 30 and 2 : 00 - 2 : 30 in room eb 5 c 2 .\nhttp : / / esource . enron . com\ndiscover a wealth of information at your desktop", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.165+0000", "entityId": 9210, "properties": {"text": "Subject: chonawee supatgiat / corp / enron is out of the office .\ni will be out of the office from 11 / 27 / 2000 until 12 / 12 / 2000 .\ni am out of the country and cannot check mails . you can reach me by sending\nan e - mail to chonawee @ yahoo . com . otherwise , i will response to your message\nwhen i get back .\nthank you .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.170+0000", "entityId": 9211, "properties": {"text": "Subject: fwd : eprm article\nreturn - path :\nfrom : vkaminski @ aol . com\nfull - name : vkaminski\nmessage - id :\ndate : fri , 8 dec 2000 00 : 19 : 50 est\nsubject : fwd : eprm article\nto : vkamins @ enron . com\ncc : vkaminski @ aol . com\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" part 2 _ 1 e . e 608831 . 2761 c 976 _ boundary \"\nx - mailer : unknown sub 171\nreturn - path :\nreceived : from rly - xao 5 . mx . aol . com ( rly - xao 5 . mail . aol . com [ 172 . 20 . 105 . 74 ] )\nby air - xaol . mail . aol . com ( v 77 . 14 ) with esmtp ; tue , 05 dec 2000 12 : 47 : 35 - 0500\nreceived : from mailolb . rapidsite . net ( mailolb . rapidsite . net\n[ 207 . 158 . 192 . 229 ] ) by rly - xao 5 . mx . aol . com ( v 76 _ rl . 19 ) with esmtp ; tue , 05 dec\n2000 12 : 47 : 00 - 0500\nreceived : from www . lacima . co . uk ( 209 . 41 . 1 . 121 ) by mailolb . rapidsite . net ( rs\nver 1 . 0 . 58 s ) with smtp id 0923182 for ; tue , 5 dec 2000\n12 : 46 : 46 - 0500 ( est )\nmessage - id :\nreply - to : \" chris strickland \"\nfrom : \" chris strickland \"\nto :\nreferences :\nsubject : eprm article\ndate : wed , 6 dec 2000 04 : 16 : 05 + 1100\norganization : lacima consultants\nmime - version : 1 . 0\ncontent - type : multipart / mixed ;\nx - priority : 3\nx - msmail - priority : normal\nx - mailer : microsoft outlook express 5 . 00 . 2615 . 200\nx - mimeole : produced by microsoft mimeole v 5 . 00 . 2615 . 200\nx - loop - detect : 1\nhi vince ,\nhope things are fine with you . i ' m sorry that i only ever write to you when\ni ' m after something , but could you look at this simulation article - the\nnext installment in the eprm articles .\nmany thanks and best regards .\nchris .\n- - - - - original message - - - - -\nfrom :\nto : ; ; ;\nsent : friday , september 08 , 2000 4 : 23 am\nsubject : re : var article\n> les ,\n>\n> the revised version of the var article looks fine .\n>\n> vince\n>\n- eprm _ 04 _ sim _ mr . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.175+0000", "entityId": 9212, "properties": {"text": "Subject: re : seminar on beyond ols\ni have reserved eb 30 cl from 3 : 30 pm - 5 : 30 pm .\njust a reminder that the 19 th is the research christmas party at damians from\n5 : 30 - 7 : 30 pm .\nshirley\nvince j kaminski\n12 / 08 / 2000 08 : 33 am\nto : clayton vernon / corp / enron @ enron , shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : seminar on beyond ols\nshirley ,\ncan you reserve the room for tue , dec 19 , 3 : 30 ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 08 / 2000\n08 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n12 / 07 / 2000 05 : 38 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : seminar on beyond ols\nvince -\ngeorge just \" remembered \" the traders ' meetings monday and wednesday\nafternoons at 3 : 30 . he ' s going to email you - i think tuesday would ensure a\nturnout of traders as well as analysts . we could easily have 20 people there\nfrom power alone , and there ' s always gas . . . . when you decide the time , can\nyou ask shirley to reserve a conference room along the size of 30 cl ?\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.180+0000", "entityId": 9213, "properties": {"text": "Subject: multi trigger\nvince ,\njere asked that i forward you a copy of the draft presentation on the multi\ntrigger transactions .\nplease call if you have any questions .\n54426\njoana", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.185+0000", "entityId": 9214, "properties": {"text": "Subject: re : default rates\nper our discussion , see attached for impact of assumed recovery rates :\nmichael tribolet @ enron\n12 / 11 / 2000 08 : 09 am\nto : william s bradford / hou / ect @ ect , david gorte / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , mark ruane / hou / ect @ ect\ncc :\nsubject : default rates\nplease see below for my note to jeremy at the bottom and his reponse . i\nhave placed mark ruane ' s yields against a mid november default frequency\ntable . note there may be a slight shearing in dates , but the concept is\nmore important :\nmarket implied cumulative default rates ( % ) :\n1 year 5 year 10 year\naaa 0 . 51 5 . 74 14 . 54\naa 0 . 67 6 . 39 16 . 61\na 0 . 98 8 . 98 21 . 03\nbbb 1 . 17 9 . 88 22 . 39\nbb 3 . 27 18 . 62 37 . 51\nb 4 . 65 24 . 21 46 . 27\ns & p historical default rates ( % ) :\n1 year 5 year 10 year\naaa 0 . 00 0 . 13 0 . 67\naa 0 . 01 0 . 33 0 . 90\na 0 . 04 0 . 47 1 . 48\nbbb 0 . 21 1 . 81 3 . 63\nbb 0 . 91 8 . 82 14 . 42\nb 5 . 16 20 . 95 27 . 13\nin looking at the one - year transition rates as a very rough proxy for how\nmany more defaults occur in a recession ( 1991 ) versus average ( 1981 - 1999 )\nhistorical default rates ( % ) :\ninvestment grade non - investment\ngrade\navg . 1981 - 99 0 . 07 4 . 21\n1991\n0 . 12 10 . 40\nmultiple 1 . 7 x\n2 . 5 x\nlooking at where the market implied default rates divided by the historicals\ndefault rates to obtain a \" multiple \" ( how much more severe than historical ) :\n1 year 5 year 10 year\naaa infinite 44 . 2 x 21 . 7 x\naa 67 . 0 x 19 . 4 x 18 . 5 x\na 24 . 5 x 19 . 1 x 14 . 2 x\nbbb 5 . 6 x 5 . 5 x 6 . 2 x\nbb 3 . 6 x 2 . 1 x 2 . 6 x\nb 1 . 1 x 1 . 2 x 1 . 7 x\non the 10 year historical figures , we need to be careful as the s & p static\npool figures show a definite seasoning ( lower defaults in late years probably\ndue to prepayment ) versus our contracts . secondly , the s & p figures have\nwithdrawn ratings , which usually mean they are stale , but loosing some\ninformation content .\ni will ask emy to set up a meeting to discuss further .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael tribolet / corp / enron on 12 / 11 / 2000\n07 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jeremy blachman @ ees on 12 / 10 / 2000 07 : 21 am\nto : michael tribolet / corp / enron @ enron\ncc :\nsubject : default rates\nthanks . i would strongly suggest an offsite sooner than later with a handful\nof the right people so that we can step back and design the right\narchitecture for looking at credit in our deals . it is broken , not clear ,\nkilling our velocity and true capabilities . we also need to look at staffing ,\nskills sets , the credit reserve model etc . perhaps you should take a crack at\nan agenda .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeremy blachman / hou / ees on 12 / 10 / 2000\n07 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael tribolet @ enron\n12 / 09 / 2000 03 : 51 pm\nto : jeremy blachman / hou / ees @ ees\ncc :\nsubject : default rates\ni visited with vince kaminski for about 20 minutes today regarding the market\nimplied defaults rates and the disconnect in investment grade land . he is\nseeing the same anomaly and agreed that we as a company need to revisit the\nmethodology employed in calculating the implied figures . i will follow\nthrough and report back .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.190+0000", "entityId": 9215, "properties": {"text": "Subject: default rates\nplease see below for my note to jeremy at the bottom and his reponse . i\nhave placed mark ruane ' s yields against a mid november default frequency\ntable . note there may be a slight shearing in dates , but the concept is\nmore important :\nmarket implied cumulative default rates ( % ) :\n1 year 5 year 10 year\naaa 0 . 51 5 . 74 14 . 54\naa 0 . 67 6 . 39 16 . 61\na 0 . 98 8 . 98 21 . 03\nbbb 1 . 17 9 . 88 22 . 39\nbb 3 . 27 18 . 62 37 . 51\nb 4 . 65 24 . 21 46 . 27\ns & p historical default rates ( % ) :\n1 year 5 year 10 year\naaa 0 . 00 0 . 13 0 . 67\naa 0 . 01 0 . 33 0 . 90\na 0 . 04 0 . 47 1 . 48\nbbb 0 . 21 1 . 81 3 . 63\nbb 0 . 91 8 . 82 14 . 42\nb 5 . 16 20 . 95 27 . 13\nin looking at the one - year transition rates as a very rough proxy for how\nmany more defaults occur in a recession ( 1991 ) versus average ( 1981 - 1999 )\nhistorical default rates ( % ) :\ninvestment grade non - investment\ngrade\navg . 1981 - 99 0 . 07 4 . 21\n1991\n0 . 12 10 . 40\nmultiple 1 . 7 x\n2 . 5 x\nlooking at where the market implied default rates divided by the historicals\ndefault rates to obtain a \" multiple \" ( how much more severe than historical ) :\n1 year 5 year 10 year\naaa infinite 44 . 2 x 21 . 7 x\naa 67 . 0 x 19 . 4 x 18 . 5 x\na 24 . 5 x 19 . 1 x 14 . 2 x\nbbb 5 . 6 x 5 . 5 x 6 . 2 x\nbb 3 . 6 x 2 . 1 x 2 . 6 x\nb 1 . 1 x 1 . 2 x 1 . 7 x\non the 10 year historical figures , we need to be careful as the s & p static\npool figures show a definite seasoning ( lower defaults in late years probably\ndue to prepayment ) versus our contracts . secondly , the s & p figures have\nwithdrawn ratings , which usually mean they are stale , but loosing some\ninformation content .\ni will ask emy to set up a meeting to discuss further .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael tribolet / corp / enron on 12 / 11 / 2000\n07 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jeremy blachman @ ees on 12 / 10 / 2000 07 : 21 am\nto : michael tribolet / corp / enron @ enron\ncc :\nsubject : default rates\nthanks . i would strongly suggest an offsite sooner than later with a handful\nof the right people so that we can step back and design the right\narchitecture for looking at credit in our deals . it is broken , not clear ,\nkilling our velocity and true capabilities . we also need to look at staffing ,\nskills sets , the credit reserve model etc . perhaps you should take a crack at\nan agenda .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeremy blachman / hou / ees on 12 / 10 / 2000\n07 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael tribolet @ enron\n12 / 09 / 2000 03 : 51 pm\nto : jeremy blachman / hou / ees @ ees\ncc :\nsubject : default rates\ni visited with vince kaminski for about 20 minutes today regarding the market\nimplied defaults rates and the disconnect in investment grade land . he is\nseeing the same anomaly and agreed that we as a company need to revisit the\nmethodology employed in calculating the implied figures . i will follow\nthrough and report back .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.195+0000", "entityId": 9216, "properties": {"text": "Subject: ees t & d interest rate hedge\nvince -\nosman asked me to forward a copy of the memo to you . we hope to speak to you\ntomorrow and bring you the original for your approval .\nregards ,\ndave foti", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.200+0000", "entityId": 9217, "properties": {"text": "Subject: re : a resume - canadian trader\njohn ,\nhe is currently a student at carnegie mellon , one - year computational finance\nprogram . i got his resume recruiting in the campus . i would recommend him as\na potential hire ( my group or trading ) .\nvince\njohn j lavorato @ enron\n12 / 10 / 2000 11 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : a resume - canadian trader\nvince where did this resume come from and is he still employed by the\nnational bank in monteal .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.205+0000", "entityId": 9218, "properties": {"text": "Subject: recommendations\nvince and joe ,\nthis is just a short reminder about the four letters of recommendation .\ni have attached an envelope with each recommendation . once you\nseal each envelope , please don ' t forget to sign it ( over the adhesive\nseal ) and to label the front , e . g . \" columbia - joseph hrgvocic \" . also ,\ni will be mailing everything in one package to each university , so\nplease don ' t mail them out .\nthat is all . as always , i really do appreciate the time you ' re taking to\ndo this .\nthank you ,\nhector", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.212+0000", "entityId": 9219, "properties": {"text": "Subject: improved process for engaging temporary workers\nas you are aware , enron utilizes temporary staffing services to satisfy\nstaffing requirements throughout the company . for the past several months , a\nproject team , representing enron \u0001 , s temporary staffing users , have researched\nand evaluated alternative managed services programs to determine which source\nwould best meet our current and future needs in terms of quality , performance\nand cost containment objectives . the business unit implementation project\nteam members are :\nlaurie koenig , operations management , ees\ncarolyn vigne , administration , ee & cc\nlinda martin , accounting & accounts payable , corporate\nbeverly stephens , administration , ena\nnorma hasenjager , human resources , et & s\npeggy mccurley , administration , networks\njane ellen weaver , enron broadband services\npaulette obrecht , legal , corporate\ngeorge weber , gss\nin addition , eric merten ( ebs ) , kathy cook ( ee 713 - 438 - 1400 )\namy binney , sharon b . sellers \u0001 ) operations\ncherri carbonara \u0001 ) marketing / communications\ncynthia duhon \u0001 ) staffing partner management", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.217+0000", "entityId": 9220, "properties": {"text": "Subject: december 15 th super saturday friday interview confirmation\nplease see the attached regarding interview confirmation and information for\nfriday , december 15 th .\nthanks\nshelly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.222+0000", "entityId": 9221, "properties": {"text": "Subject: slides for jeff ' s presentation\nall requested slides and updates , including raw data and calculations , are in\nthe spreadsheet below\nvolatility calculations are up to december 8 , 2000 .\n- hector", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.231+0000", "entityId": 9222, "properties": {"text": "Subject: follow - up meeting on wharton\ngood morning everyone :\nvince would like to schedule a follow - up meeting on wharton as soon as\nwe can agree on a time .\nhow does monday the 18 th look for you ? vince is free from 9 : 30 am -\n11 : 30 am and from 1 : 00 pm - 4 : 00 pm .\nplease let me know if you are available during any of these times .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.239+0000", "entityId": 9223, "properties": {"text": "Subject: re : double - up swap\nthanks\nthor\nvince j kaminski\n12 / 12 / 2000 15 : 18\nto : thor lien / osl / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , paulo issler / hou / ect @ ect\nsubject : re : double - up swap\nthor ,\nwe have modeled this structure a few times in the past .\npaulo issler will call you shortly to talk about it .\nvince\nthor lien\n12 / 12 / 2000 03 : 02 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : double - up swap\nvince\ndo we have any models to use on this product for power ?\nthor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.246+0000", "entityId": 9224, "properties": {"text": "Subject: re : presentation on tuesday\nvince ,\ni will be out of the office this thursday afternoon .\nhere is what i can present on tuesday related to power prices :\ndo you want to discuss it with me some other time ?\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.250+0000", "entityId": 9225, "properties": {"text": "Subject: adaptive trade\nvince , zimin ,\ni participated in a telephone conference on this company this morning . there\nwas a possibility enron would invest in it .\ntheir product appears to be a gui interface over the top of ilog solver ( and\npossibly ilog cplex ) which allows problems to be expressed in high level\nterms . i do not see any immediate application at enron , but i am interested\nin the concepts used so expressed an interest in a demo . maybe it would be\nuseful for general modelling projects here .\nthey do not even have a user manual for their software , so it will be\ndifficult to figure out what it does unless a demo is arranged . the\npossibility for growth in the company seems small as the ilog software is a\nmodest size market and their product is aimed at only a small part of that\nmarket . i think the scheduling tools in sap , i 2 , etc are more likely to\nsucceed than this one as they are already integrated into an information\nsystem .\nbecause of the small market for this software , the many competitors , the\nabsence of any clear use for it at enron and the early stage of development ,\nthere is very little prospect of us funding this company .\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.255+0000", "entityId": 9226, "properties": {"text": "Subject: re : garp 2001 convention\nandreas ,\nam i entitled to bringing one delegate as a guest , free of charge ?\nsome conferences offer such privileges .\nvince\n\" andreas simou \" on 12 / 04 / 2000 06 : 31 : 37 am\nto :\ncc :\nsubject : garp 2001 convention\ndear garp 2001 speaker\n?\nthis is just a quick note to keep you up - to - date with developments at the\ngarp 2001 convention , which will be held in new york between 12 th and 15 th\nfebruary , 2001 .\n?\nthus far , garp 2001 looks set to far exceed our expectations and garp 2000 .\nthere has been a great deal of interest in the 2001 convention . delegate\nbookings have been much higher than this time last year . as a result , we are\nset to far exceed the number of delegates that attention earlier this year .\nthe three workshops and the one - day asset management forum are also very\nwell received and will probably reach full capacity . i will of course\nprovide you with much fuller details closer to the time of the event .\n?\nregarding the event itself , i would like a few outstanding issues :\n?\n1 . presentations : can you please e - mail your presentation to me by 15 th\ndecember , so that i have enough time to reproduce them and place them in a\ndelegate pack for the convention . ( given the break of the christmas and new\nyork period , and that the event is being held in new york , i am sure you can\nappreciate that there are certain logistical factors that need to be taken\ninto account , hence the reason why the presentations are required as soon as\npossible ) . this is purely for reproduction , we also request you bring your\npresentation to the convention on the day in either a floppy disc or a\nlaptop .\n?\n2 . audio - visual requirements : can you please inform me of what audio - visual\nrequirements you may have ( 35 mm slides ; ohp ; lcd projection - notably\npowerpoint ) .\n?\n3 . check list : i have attached a check list for your information . if you\nhave not returned this already , can you please read and fax it to my\ncolleague , claire as soon as possible .\n?\nif you have any questions or queries , please do not hesitate to contact me ,\notherwise i eagerly await your response in due course .\n?\ni look forward to seeing you in new york in february .\n?\nkind regards\n?\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\n?\ndon ' t miss the garp 2001 convention ,\nprogram details via our web site\nwww . garp . com\n- speaker checklist . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.261+0000", "entityId": 9227, "properties": {"text": "Subject: re : greetings from garp\nfrank ,\nlooks good .\nvince\nenron north america corp .\nfrom : frank hayden @ enron 12 / 12 / 2000 11 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : greetings from garp\nvince , this is the announcement i ' m thinking about sending out . is there\nanything else you would like to add ?\nfrank\ngreetings from garp ! we are having the next meeting january 30 th at enron .\ntime 6 : 30 pm until 8 : 30 pm\nvince kaminski will lead a discussion regarding volatility in the energy\nmarkets .\nplease rsvp to rita hennessy . her email address is rita . hennessy @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.266+0000", "entityId": 9228, "properties": {"text": "Subject: informs - maui\nhi steve :\ngood to hear from you and hope you are liking your new role at u . of\nmaryland . i would like to come but i am not sure if i will be able to make it\nto this conference . i will forward your message to my colleagues and ask them\nto contact you if they are interested .\nthanks ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n12 / 12 / 2000 12 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteve gabriel on 12 / 11 / 2000 10 : 52 : 21 am\nto : pkrishn @ ect . enron . com\ncc :\nsubject : informs - maui\nkrishna :\nhow are you doing ? i wanted to let you know my new address , i ' m now at the\nuniversity of maryland . also , in my role as energy cluster chair for the\nmaui , hawaii informs conference ( june 17 - 20 , 2001 ) , i am looking for either\nsession chairs or speakers . perhaps you may know of some interested\nindividuals ? i am also running a session on optimization and equilibrium\nmodeling in energy , please send interested speakers ( or possible session\nchairs to me ) . thanks .\n- steve gabriel\nsteven a . gabriel , ph . d .\nassistant professor , project management program\nhttp : / / www . cee . umd . edu / prog / projmgt . html\ndirector , optimization & equilibrium studies , center for technology and\nsystems management http : / / ctsm . umd . edu /\ncontact information :\ndepartment of civil and environmental engineering\n1143 glenn l . martin hall\nuniversity of maryland\ncollege park , maryland 20742 - 3021\nsgabriel @ eng . umd . edu\ntel . ( 301 ) 405 - 3242\nfax ( 301 ) 405 - 2585\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.271+0000", "entityId": 9229, "properties": {"text": "Subject: re : default rates\nmark , this is a good point . in moody ' s june 1999 study , debt recoveries for\ncorporate bankruptcies , there is a graph of firm - level recovery rates by year\nof bankruptcy resolution ( as opposed to default year ) . reading from the\ngraph finds :\nas the data above is based on resolution year , the same study finds the\naverage length of time spent in bankruptcy is 1 . 30 years ( median 1 . 15 years\nand standard deviation of 1 . 20 years ) . the interesting point is the slide in\nrecovery value 1996 to 1998 . one would wonder if the mix of high - yield\nissuance slanted towards the tech companies would yield lower recoveries\n( quick technological obsolescence - - little tangible recovery value ) .\ninteresting to note is the december 1999 to december 2000 change in spreads .\nthe table below divides the december 2000 spreads by the december 1999\nspreads . one would have expected a pronounced flight to safety over this\ntime - frame , but the figures are more mixed :\nto : michael tribolet / corp / enron @ enron , william s bradford / hou / ect @ ect , david\ngorte / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : default rates\nper our discussion , see attached for impact of assumed recovery rates :\nmichael tribolet @ enron\n12 / 11 / 2000 08 : 09 am\nto : william s bradford / hou / ect @ ect , david gorte / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , mark ruane / hou / ect @ ect\ncc :\nsubject : default rates\nplease see below for my note to jeremy at the bottom and his reponse . i\nhave placed mark ruane ' s yields against a mid november default frequency\ntable . note there may be a slight shearing in dates , but the concept is\nmore important :\nmarket implied cumulative default rates ( % ) :\n1 year 5 year 10 year\naaa 0 . 51 5 . 74 14 . 54\naa 0 . 67 6 . 39 16 . 61\na 0 . 98 8 . 98 21 . 03\nbbb 1 . 17 9 . 88 22 . 39\nbb 3 . 27 18 . 62 37 . 51\nb 4 . 65 24 . 21 46 . 27\ns & p historical default rates ( % ) :\n1 year 5 year 10 year\naaa 0 . 00 0 . 13 0 . 67\naa 0 . 01 0 . 33 0 . 90\na 0 . 04 0 . 47 1 . 48\nbbb 0 . 21 1 . 81 3 . 63\nbb 0 . 91 8 . 82 14 . 42\nb 5 . 16 20 . 95 27 . 13\nin looking at the one - year transition rates as a very rough proxy for how\nmany more defaults occur in a recession ( 1991 ) versus average ( 1981 - 1999 )\nhistorical default rates ( % ) :\ninvestment grade non - investment\ngrade\navg . 1981 - 99 0 . 07 4 . 21\n1991\n0 . 12 10 . 40\nmultiple 1 . 7 x\n2 . 5 x\nlooking at where the market implied default rates divided by the historicals\ndefault rates to obtain a \" multiple \" ( how much more severe than historical ) :\n1 year 5 year 10 year\naaa infinite 44 . 2 x 21 . 7 x\naa 67 . 0 x 19 . 4 x 18 . 5 x\na 24 . 5 x 19 . 1 x 14 . 2 x\nbbb 5 . 6 x 5 . 5 x 6 . 2 x\nbb 3 . 6 x 2 . 1 x 2 . 6 x\nb 1 . 1 x 1 . 2 x 1 . 7 x\non the 10 year historical figures , we need to be careful as the s & p static\npool figures show a definite seasoning ( lower defaults in late years probably\ndue to prepayment ) versus our contracts . secondly , the s & p figures have\nwithdrawn ratings , which usually mean they are stale , but loosing some\ninformation content .\ni will ask emy to set up a meeting to discuss further .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by michael tribolet / corp / enron on 12 / 11 / 2000\n07 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jeremy blachman @ ees on 12 / 10 / 2000 07 : 21 am\nto : michael tribolet / corp / enron @ enron\ncc :\nsubject : default rates\nthanks . i would strongly suggest an offsite sooner than later with a handful\nof the right people so that we can step back and design the right\narchitecture for looking at credit in our deals . it is broken , not clear ,\nkilling our velocity and true capabilities . we also need to look at staffing ,\nskills sets , the credit reserve model etc . perhaps you should take a crack at\nan agenda .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jeremy blachman / hou / ees on 12 / 10 / 2000\n07 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael tribolet @ enron\n12 / 09 / 2000 03 : 51 pm\nto : jeremy blachman / hou / ees @ ees\ncc :\nsubject : default rates\ni visited with vince kaminski for about 20 minutes today regarding the market\nimplied defaults rates and the disconnect in investment grade land . he is\nseeing the same anomaly and agreed that we as a company need to revisit the\nmethodology employed in calculating the implied figures . i will follow\nthrough and report back .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.276+0000", "entityId": 9230, "properties": {"text": "Subject: joao neves\ndear vince :\n?\ni am in a somewhat delicate position . one of the people in the group here\nhas asked me to introduce him to you . ? as an el paso vice president , i\nshould not have agreed to do this , and frankly , the guy should not have\nasked . ? but he is clearly very unhappy at el paso , so , as a human being , i\nfelt it was appropriate . also , because this guy would have contacted you\nanyway , with or without my introduction , as a professional courtesy , i would\nlike you to benefit from my experience with this fellow .\n?\nthe guy ' s name is joao neves ( portugese ) . ? i think he is reasonably bright\nand seems to have a quite deep understanding of general finance and\nfinancial mathematics . he is a manager and feels very frustrated because he\nhad hoped to be promoted to a position of authority . instead the group ' s\nm . d . brought in two price - waterhouse - coopers consultants as v . p ' s to run the\nstructuring and quant sides of the group . in this respect , i can understand\nhis unhappiness . unfortunately for him , however , i also think it is in his\nnature to whine . ? i have observed him to bad mouth lots of people starting\nwith the it guys ( ok , that ' s perhaps not much an indictment ! ) all the way to\ndismissing broadie & glasserman ' s or eduardo schwartz ' works as shoddy or\nshallow . ? he does not seem to suffer well people he considers fools . ? caveat\nemptor , therefore ! having said all this , i do want to emphasize that he is a\nbright guy , is very pleasant with me , and , perhaps given the appropriate\nenvironment and supervision , might be quite productive . ? but don ' t take my\nword for it . talk to him , and see what you think . ? obviously , i would ask\nthat you keep these comments in confidence . i have given you an honest\nassessment - - brutally so .\n?\n' nuff said ! i have fulfilled my moral obligations both to joao and to you .\n?\nbest regards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.283+0000", "entityId": 9231, "properties": {"text": "Subject: re : documents from iris mack\niris ,\ni have received your e - mail and phone message .\ni shall distribute your papers to the other interviewers .\nalso , i shall contact you by thursday regarding a job offer .\nvince\n\" iris mack \" on 12 / 11 / 2000 08 : 09 : 10 pm\nto : irismmack @ hotmail . com , zlu @ enron . com , vshanbh @ enron . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : documents from iris mack\nhi again ,\ni don ' t recall if i mentioned that my harvard doctoral dissertation\ninvolved another energy problem - the transient stability of electrical\npower systems .\nmuch of the data , model and analysis was done with lots of\ncollaborative efforts with my advisors at harvard and mit and with the\nelectrical power research institute ( epri ) in palo alto .\nkind regards ,\niris mack\n> from : \" iris mack \"\n> to : zlu @ enron . com , vshanbh @ enron . com\n> cc : vince . j . kaminski @ enron . com\n> subject : documents from iris mack\n> date : sun , 10 dec 2000 16 : 57 : 21\n>\n_ _ _ _ _ _ _\nget more from the web . free msn explorer download : http : / / explorer . msn . com\nreceived : from 64 . 20 . 165 . 171 by lwl 1 fd . lawl 1 . hotmail . msn . com with http ; sun ,\n10 dec 2000 16 : 57 : 21 gmt\nx - originating - ip : [ 64 . 20 . 165 . 171 ]\nfrom : \" iris mack \"\nto : zlu @ enron . com , vshanbh @ enron . com\ncc : vince . j . kaminski @ enron . com\nsubject : documents from iris mack\ndate : sun , 10 dec 2000 16 : 57 : 21\nmime - version : 1 . 0\ncontent - type : text / html\nx - stn - info :\ndear zimin and vasant ,\n?\n? ? ? ? how are you ? ? thank you for taking time out of your busy schedules to\ntell me about the work you are doing at enron .\n?\n? ? ? ? this email is in reference to your requests for two documents i\nforwarded to dr . kaminski :\n? ? ? ? ? ? ? ? ? 1 . ? my london business school executive mba thesis on weather\nderivatives\n? ? ? ? ? ? ? ? ? 2 . ? a document describing some work i did on real options applied\nto the commodities industry .\n?\n? ? ? ? you should be able to get a copy of these documents from dr . kaminski . ?\nif not , please let me know .\n?\nkind regards ,\niris mack", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.287+0000", "entityId": 9232, "properties": {"text": "Subject: enron projects by team\nenron tiger team :\nthank you for your input on project requests . the breakout of projects is\nas follows :\nteam 1 : wholesale trading\nteam 2 : impact of e - commerce on energy markets\nteam 3 : retail business applications\nany questions , please call the fap office .\ngood luck with your finals . have a wonderful winter break .\nsincerely ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n( 215 ) 573 - 8394\n( 215 ) 573 - 5727 fax\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.292+0000", "entityId": 9233, "properties": {"text": "Subject: re : greetings from baylor university\njim ,\nsorry for the delay in responding to your message . i was traveling\nextensively\nand was overwhelmed with many different projects .\ni shall be glad to speak at the gamma iota sigma dinner . unfortunately , i\ncannot make\na presentation to your class ( it would require leaving the office for two\ndays in a row ) .\ni can , however , promise to come on another day and speak to your students .\ni hope everything is going well for you . by the way , your former student ,\nshane green , has joined us\nfor 12 month and is doing exceptionally well .\nvince\njim garven on 11 / 28 / 2000 05 : 10 : 55 pm\nto : \" vince j kaminski \"\ncc :\nsubject : greetings from baylor university\ndear vince ,\nsince we last corresponded , i have left lsu and am now professor of finance &\ninsurance at baylor university in waco , tx . ? my colleague at baylor , john\nmartin , mentioned that you will be coming to campus for a conference on\nfriday , february 23 that he is organizing . ? ? i am curious whether your\nschedule might permit staying over that evening so that we can feature you as\nour dinner speaker for the chartering ceremony of gamma iota sigma , a\nnational risk management fraternity . ? for that matter , would you also\npossibly be available to make any presentations to undergraduate and graduate\nstudents on the previous day ( thursday , february 22 ) ? ? what i have in mind is\na presentation similar to the presentations you made last spring to my lsu\nclasses . ?\nthank you for your consideration of this request . ? i am looking forward to\nseeing you once again .\nsincerely ,\njim garven\njames r . garven , ph . d .\nprofessor of finance & insurance\ndepartment of finance , insurance and real estate\nhankamer school of business\nhsb 336\nbaylor university\nbox 98004\nwaco , tx ? 76798\nvoice : ( 254 ) 710 - 6207\nfax : ( 603 ) 994 - 6680\ne - mail : ? james _ garven @ baylor . edu\nhome page : http : / / garven . baylor . edu\nvita : http : / / garven . baylor . edu / dossier . html\nresearch paper archive : http : / / garven . baylor . edu / research . html\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.297+0000", "entityId": 9234, "properties": {"text": "Subject: follow - up meeting on wharton\nit seems like several of you will be on vacation next week , so lets see if\nwe can do it this week . vince is available on thursday from 2 : 00 - 3 : 00 pm\nor friday , from 1 : 30 - 2 : 30 pm .\ndo either one of these two times work ?\nlet me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 12 / 2000\n10 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n12 / 12 / 2000 09 : 20 am\nto : christie patrick / hou / ect @ ect , james l bouillion / hou / ect @ ect , george\ncarrick / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : follow - up meeting on wharton\ngood morning everyone :\nvince would like to schedule a follow - up meeting on wharton as soon as\nwe can agree on a time .\nhow does monday the 18 th look for you ? vince is free from 9 : 30 am -\n11 : 30 am and from 1 : 00 pm - 4 : 00 pm .\nplease let me know if you are available during any of these times .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.302+0000", "entityId": 9235, "properties": {"text": "Subject: re : follow - up meeting on wharton\nchristie ,\nthis is regarding the risk management project .\ni shall set up a separate meeting with jeff regarding wharton tiger team .\ni would appreciate if you could call in as well .\nvince\nchristie patrick\n12 / 12 / 2000 10 : 14 am\nto : shirley crenshaw / hou / ect @ ect\ncc : james l bouillion / hou / ect @ ect , george carrick / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : follow - up meeting on wharton\nhi shirley !\ni ' ll be on vacation , but will be happy to call in at that time , or any other\ntime that is convenient for vince . should we also include jeff shankman ?\nplease let me know the time and telephone number to call , and i ' ll be there !\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.307+0000", "entityId": 9236, "properties": {"text": "Subject: re : fw : eprm article\nchris ,\ni have read the paper . it reads very well . two comments .\n1 . it probably makes sense to include a note on the standard gbm simulation\nequation and\nthe way it ' s typically discretized .\n2 . it will help the reader who did not read the earlier articles to explain\nwhat ct is ( perhaps a footnote ) .\ni am also including a message i sent to julie today .\n* * * * * * * * * * * * * * *\n1 . i would like to register 2 members of my group for both courses ( in\nhouston ) :\na . paulo issler\nb . alex huang\ni shall attend the course on weather only .\n2 . i have started the process to issue a check for 5 , 000 aud for lacima .\nshirley sent you an update on this . the 2 nd installment comes from the budget\nof our\noffice in australia . i shall talk to paul quilkey today about it . please , let\nme know if there is any delay .\n3 . the book will be used as textbook for the class i shall be teaching at\nrice .\nrice univ bookshop is placing an order .\n4 . i would like to order 50 copies for my group . what is the best\nway to place the order ? can we pay in us dollars ?\n* * * * * * * * * * * * * * *\nbest regards .\nvince\n\" chris strickland \" on 12 / 12 / 2000 05 : 21 : 22 pm\nplease respond to \" chris strickland \"\nto :\ncc : \" julie \"\nsubject : fw : eprm article\nhi vince ,\ni ' m wondering if you got this last week ? if you could have a quick look and\nget back to me with any comments that would be great - robin is chasing me\non this one !\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : chris strickland\nto :\nsent : wednesday , december 06 , 2000 4 : 16 am\nsubject : eprm article\n> hi vince ,\n>\n> hope things are fine with you . i ' m sorry that i only ever write to you\nwhen\n> i ' m after something , but could you look at this simulation article - the\n> next installment in the eprm articles .\n>\n> many thanks and best regards .\n>\n> chris .\n>\n>\n>\n> - - - - - original message - - - - -\n> from :\n> to : ; ;\n;\n>\n> sent : friday , september 08 , 2000 4 : 23 am\n> subject : re : var article\n>\n>\n> > les ,\n> >\n> > the revised version of the var article looks fine .\n> >\n> > vince\n> >\n>\n- eprm _ 04 _ sim _ mr . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.312+0000", "entityId": 9237, "properties": {"text": "Subject: re : lacima energy and weather derivatives courses by clewlow and\nstrickland\njulie ,\na few issues .\n1 . i would like to register 2 members of my group for both courses ( in\nhouston ) :\na . paulo issler\nb . alex huang\ni shall attend the course on weather only .\n2 . i have started the process to issue a check for 5 , 000 aud for lacima .\nshirley sent you an update on this . the 2 nd installment comes from the budget\nof our\noffice in australia . i shall talk to paul quilkey today about it . please , let\nme know if there is any delay .\n3 . the book will be used as textbook for the class i shall be teaching at\nrice .\nrice univ bookshop is placing an order .\n4 . i would like to order 50 copies for my group . what is the ebst\nway to place the order ? can we pay in us dollars ?\nvince\n\" julie \" on 11 / 12 / 2000 02 : 05 : 40 pm\nto :\ncc :\nsubject : lacima energy and weather derivatives courses by clewlow and\nstrickland\nplease find attached information ? for our next two courses and workshops : ?\nenergy derivatives : ? pricing and risk management and\nweather derivatives , which will be conducted in houston and in london in feb\n/ march 2001 . ? instructors will be dr les clewlow and dr chris strickland .\n?\nbecause the course requires intense interaction , the courses will be ? limited\nto a maximum of 15 people , so early registration is encouraged .\n?\nif you require further information , or would like to register for either or\nboth ? courses , please contact me via this email or our web site , ? www .\nlacimagroup . com\n- energy . pdf\n- weather . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.318+0000", "entityId": 9238, "properties": {"text": "Subject: re : invoices\nhi julie :\nthe march invoice # 000166 was sent to our accounting department for\npayment on march 28 th . i have a call into them to see what happened to\nit . i will let you know .\nthe aud 5000 invoice was sent to the accounting department but they\nsent it back saying they cannot pay invoices in foreign currency . so i then\nhad to send it to the treasury dept . i will check on it today also .\nas far as the other invoice . it should be sent to our australia office to\nthe\nattention of paul quilkey . we had agreed to split this with them . their\naddress is :\npaul quilkey\nenron australia\npty . ltd .\nlevel 21\n9 castlereagh street\nsydney , nsw 200000 ,\naustralia\nif you need anything else , please let me know .\nshirley\n.\n\" julie \" on 12 / 12 / 2000 07 : 03 : 32 am\nplease respond to \" julie \"\nto :\ncc :\nsubject : invoices\nshirley ,\n?\nsorry to bother you again , but we still have two outstanding invoices from\nenron . ? they are :\n?\nmarch ' 00 : ? ? ? ? ? enron ? inv . 000166 ? ? ? ? ? ? usd 4900\n?\nseptember ' 00 ? ? enron inv . 000202 ? ? ? ? ? ? ? aud 5000\ni have another invoice to send out for the balance of ? the original aud\n10 , 000 ( balance would be the remaining aud 5 , 000 ) , but ? i ' m ? unsure to whom i\nshould direct it ? ? i sent ? an email to vince several weeks ago asking for\nthis information , but haven ' t heard ( assume he ' s tremendously busy ) .\n?\nlet me know what you ? need from ? me .\n?\nthanks ,\njulie\n?\nlacima group\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.323+0000", "entityId": 9239, "properties": {"text": "Subject: stephen bennett\nnorma ,\ni fully concur . what can we do about it ? can we change the job classification\nretroactively ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 12 / 2000\n02 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mike a roberts 12 / 09 / 2000 10 : 33 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : stephen bennett\nstephen bennett , professional meteorologist , was hired into the research\ngroup in september of this year as a specialist based on salary alignment\ncriteria . in retrospect , and upon review , he should have been hired on as a\nsenior specialist .\nafter coming on board . it rapidly became apparent that stephen was clearly an\n\" under hire . \" he is well - deserving of an immediate promotion ( really more of\na correction ) and pay raise , to be made retroactive at least to the lst of\nthis month . this memo outlines the circumstances surrounding this hiring\nerror and provides detailed justifications for this retroactive \" promotion . \"\nat the time of the interview process , there was no position in enron\ndesignated as \" professional meteorologist . \" in fact , the most recent similar\nhire prior to that date was jose marquez , also a professional meteorologist ,\nwho was hired in , based on salary alignment criteria , as a manager . while\nfunctionally , both these men are meteorologists , enron has no such job\nclassification . compounded by the urgency in bringing on additional\nprofessional expertise in short time order , it was difficult to peg the\nproper enron classification appropriate for this new position . this original\nuncertainty and resulting misplacement of stephen into the specialist\ncategory , rather than the senior specialist category , needs to be corrected\nat this time .\nalthough a \" new - hire \" to enron , stephen bennett has extensive work\nexperience . he has worked as a professional meteorologist at both the\nweather services corporation in boston and at the weather channel in\natlanta . he came to enron well - referenced by both those organizations ,\nneeding no further training and only minimal supervision .\nonce aboard here in houston , stephen immediately demonstrated the core enron\nvalues with our unique sense of urgency . after only a week , he assumed\nresponsibilities normally reserved for someone actually at even a manager\nlevel - he was assigned and fully took over the critical afternoon weather\nbriefings to the gas traders . this includes analysis and report preparation\nas well as presentation . also in the presentation arena , he now regularly\nbriefs various desks in the morning and throughout the day . stephen is a\nmaster of communication and particularly adept at conveying what through\nother messengers might otherwise seem confusing or ambiguous .\nstephen has also demonstrated an unusually high level of self - initiative . he\ndesigned , implemented , and now maintains several sub - sites on the research\nweb page which he tailored to various customers - in specific : the weather\nderivatives team , the agricultural team , and most recently , the crude and\nliquids team . i have recently assigned stephen to spearhead our conversion\nand major upgrade of this web page .\nthese above described accomplishments are above and beyond stephen \u0001 , s regular\nduties which include starting work at 5 am daily , reliably and without fail ,\nto assemble and prepare our trader \u0001 , s weather report . recently , with the\nadvent of extended hours for both nymex and enrononline , stephen voluntarily\non his own accord , assists in our new sunday weather support effort . as his\nsupervisor , fully cognizant of his already standard 50 + hour work week , i do\nnot solicit , but readily accept , this above and beyond expectations\nassistance .\nin review , the circumstance which resulted in this under hire condition was\nenron \u0001 , s immediate need for a non - standard , fairly unique professional - a\nmeteorologist , coupled with stephen \u0001 , s desire to work for our company in spite\nof the absence of a hierarchy which included the exact entitled professional\ntitle reflecting his chosen career path . . once hired , stephen has clearly\ndemonstrated through contribution and performance that he is well - deserving\nof this immediate and retroactive promotion .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.328+0000", "entityId": 9240, "properties": {"text": "Subject: re : subscriptions\nstephanie ,\nplease , discontinue credit and renew the two other publications :\nenergy & power risk management and the journal of computational finance .\nenron north america corp .\nfrom : stephanie e taylor 12 / 12 / 2000 01 : 43 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : subscriptions\ndear vince ,\nwe will be happy to renew your subscription to risk . in addition , the\nfollowing publications are up for renewal :\nreg . subscription cost with corp . discount\ncredit $ 1145 . 00 $ 973 . 25\nenergy & power risk management $ 375 . 00 $ 318 . 75\nthe journal of computational finance $ 291 . 75 $ 247 . 99\nif you wish to renew these , we will also take care of this for you . i would\nappreciate your responding by december 18 th . please include your company and\ncost center numbers with your renewal .\nthank you ,\nstephanie e . taylor\nesource\n713 - 345 - 7928", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.338+0000", "entityId": 9241, "properties": {"text": "Subject: re : tanya ' s vacation\ntanya ,\nno problem .\nvince\ntanya tamarchenko\n12 / 12 / 2000 01 : 28 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : tanya ' s vacation\nvince ,\ni was going to take afternoon off this thursday .\nis it ok ?\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.347+0000", "entityId": 9242, "properties": {"text": "Subject: re : rollover of my vacation days to 2001\nkrishna ,\nno problem . approved .\nvince\npinnamaneni krishnarao\n12 / 11 / 2000 06 : 28 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : rollover of my vacation days to 2001\nvince :\ni would like to rollover my vacation days for 2000 remaining at the end of\nthis year to 2001 . i could not use us all of my available vacation this year\nbecause of the following reasons :\n1 . as you know , i have been supporting three business units ( ees , epg & enron\nindia ) this year . all these units had difficult and relatively long projects\nthat required experience in energy markets , derivatives pricing and business\nknowledge that i had gained over the last few years at enron .\n2 . there has been a significant change in the team members reporting to me . i\nnow have six people under me compared to only three at the begin of the year .\nof the current six members , five joined us only this year and most of them\ndidn ' t have any prior work experience , thus requiring a lot of my time in\nrecruiting , training and mentoring .\n3 . given that i had to visit our bombay office in january , 2000 for a\nbusiness trip ( 10 days ) and will need to go there again in january , 2001 , i\ncould not take leave from my work for the other two units ( ees & epg ) for an\nextended period of time .\nso , in summary , this year has been a long and challenging one , and as a\nresult , i could not take vacation for more than a few days . i request you to\ngrant the rollover of my remaining vacation to next year .\ncurrently i have 136 hours of vacation available and , of these , i expect to\nhave 112 hours unused at the end of this year .\nthank you ,\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.352+0000", "entityId": 9243, "properties": {"text": "Subject: california on the brink - - cera alert\ncera alert : december 13 , 2000\ntitle : california on the brink\ncera knowledge areas : western energy , n . american power , n . american gas\ncalifornia on the brink\nthe california stalemate\ncalifornia moved closer to the brink of an outage today as concerns over\ncredit - worthiness of buyers brought the possibility that generators would\navoid selling to the california market . while numerous factors have\ncontributed to the high cost of power incurred by california ' s utilities , the\nroot cause of the current crisis is a lack of new generation . the current\ncredit crisis and its threat to supplies could spark state action to address\nthe situation . the collective efforts of all market participants should be\nfocused on increasing generation capacity as quickly as possible .\nwestern power prices have skyrocketed well beyond the record levels set this\nsummer . perhaps because frozen rates insulate the majority of california\nconsumers and companies from tangible effects of the market crisis ,\nregulators have been able to postpone meaningful market reforms and\nsignificant rate increases . the california public utilities commission denied\nthe requests of pacific gas & electric and southern california edison to end\ntheir rate freezes , forcing these utilities at least temporarily to finance\nthe costs of higher wholesale energy . this has created an unsustainable\naccumulation of costs and a loss of faith in the california market .\nthe current credit crisis and the potential for blackouts may become the\ngalvanizing events that provide state regulators with a public mandate to\naddress the underlying structural problems in the industry . however , there is\nno guarantee that these regulatory actions will expedite an effective\nsolution for customers and the industry as a whole . wholesale and retail\nmarkets that emerge from regulatory intervention are likely to remain\nmuddled . in the necessarily political process that will follow , it is\npossible that - as has largely been the case so far - the steps taken will fail\nto move the california power market toward a more enduring solution and will\ninstead continue to mask the underlying structural flaws .\nin the six months since california ' s supply shortfall began plaguing western\nmarkets , regulators have done little to address the underlying problem .\nrather than addressing the cause of the supply shortage - establishing a market\nenvironment that encourages timely additions of new generating capacity and\ndemand side responses - efforts are instead directed at trying to lay blame for\nthe crisis and lessen the immediate financial impact on customers . indeed ,\nseveral actions taken thus far have served more to compound the problem by\ndiscouraging new power plant additions . these include price caps , repeated\nchanges to market rules , attempts to seize generator profits , and a\nchallenging siting and permitting process .\nmedicine worse than the illness\nseveral years of electricity demand growth and low prices in california were\naccompanied by very few additions to the supply base . regulators did not pay\nadequate attention to the looming supply shortfall . the void of consensus\nover the cause of the current crisis has instead been replaced by a series of\nbandaid remedies that address the symptoms , but not the cause , of\ncalifornia ' s electric market woes . *\n* challenging siting and permitting . despite state action to better\ncoordinate the siting and permitting process for new power plants , power\nplant developers still face high hurdles . local community opposition alone\nhas struck down some key proposed facilities .\n* price caps discourage investment . state and federal proposals to cap prices\nlimit the attractiveness of the california wholesale power market , especially\nfor developers who have the option of channeling scarce capital and equipment\nto more stable or more attractive markets outside the state .\n* repeated rule changes . frequent rule changes in the iso markets ( including\nthe price caps ) confound attempts by developers to estimate profits from new\nplant development .\n* calls for refunds . despite reports by the power exchange , the iso , and the\nferc that no pattern of abuse could be found from their examination of the\ncalifornia markets , state officials continue to accuse power providers of\ngaming the market . calls by state officials for refunds of generator profits\nare a threat to new plant development .\n* facility inspections . recent inspections of power plants by state officials\nto verify that operators are honestly reporting the operational status of\ntheir generating units accentuates the atmosphere of mistrust .\ncera ' s recent analysis suggests that merchant plant developers in the west\nare not guaranteed ? to make a profit . prospects of new plant profitability\nare affected by the timing and quantity of new plants , decommissioning of\nolder units , demand growth , and numerous other difficult - to - forecast factors .\ncalifornia ' s regulatory actions only further cloud the assessment of\nfinancial viability and degrade the political environment for developers\nconsidering entering the state .\ndespite efforts by the california iso to stimulate new capacity additions in\nthe state with a special , limited - term capacity payment , cera estimates that\ndemand growth will continue to outstrip supply additions in the west in 2001 .\nin addition , the existing siting and permitting process will prevent a\nsufficient quantity of capacity from entering the market until 2003 at the\nearliest . therefore , three years remain before a sufficient quantity of\ncapacity enters service to significantly dampen prices and decrease the risk\nof an outage .\nthe road to recovery\nthere are a number of actions that can be taken to help relieve the capacity\nshortfall :\n* encourage new build . supply must be part of the answer . this requires a\nseries of steps that can help facilitate new supply build . while in principal\nsome have been taken , such as new fast track approval , the success of these\nactions can only be measured by the build itself . for now , there is still not\nenough new supply coming on until 2003 to relieve supply tightness . ?\n* stabilize investment climate . utilities must have assurance that they will\nultimately be allowed to recover market costs for power . this provides the\ncredit worthiness needed by sellers to produce energy and to stimulate new\nbuild .\n* move toward more balanced utility supply portfolios . one of the reasons the\npressure on customers has been so intense in california has been the absence\n( and even discouragement ) of diverse supply portfolios among the utilities in\nthe state - particularly for residential and small commercial customers . with\nthe market at a peak , however , now is in one sense a sub - optimal time to move\ntoward term contracting . yet these contracts provide the foundation for a\nseries of actions - including new supply build and demand side investments . if\nthey end up above market , they will at least have achieved the desired effect\nof knocking down prices , a fact which by itself should provide sufficient\njustification for recovering the cost of these commitments .\n* encourage market mechanisms that elicit a demand response . although\noriginally a feature of california ' s market design , most consumers are\ninsulated from price spikes through capped or frozen retail rates . exposing\ncustomers to at least some of the market price signals would encourage a\ndemand response .\n* encourage market mechanisms that dampen the \" boom bust \" characteristic of\nthe market . whether in the form of a capacity payment , a reserve requirement ,\nor a minimum term portfolio requirement , the california power market needs to\nmove to a structure that encourages investment in new capacity when the\nmarket is in balance rather than waiting for a shortage and price shock to\nelicit new investment . such a structure can help dampen ( but not eliminate )\nfuture price volatility .\n* avoid continuously tinkering with the market . while the market does need to\nbe restructured as described above , it also needs to be stable and reliable\nto encourage the development of new supply as well as a robust long - term\ncontractual market for power in california . continually tinkering with the\nmarket structure - such as the three times the price cap has been shifted since\njuly - only serves to undermine confidence in the market . california needs to\ndo its best to develop a long - term solution and then let the market run its\ncourse .\n* allow for greater environmental flexibility . the state should explore a\nmore balanced solution to emissions restrictions in the face of a supply\nshortfall that has been exacerbated by generators that cannot operate due to\nemissions restrictions .\n* free purpa power plants to generate . relief should be granted to purpa\npower plants that are operational , but are restricted by contract from\noperating to generate only power .\n* * end * *\nthis cera alert will be available in pdf format within 24 hours .\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.358+0000", "entityId": 9244, "properties": {"text": "Subject: re : houston visit\nhi vince ,\nsorry that we couldn ' t meet in houston . hope your philadelphia trip was\nfruitful and you didn ' t suffer from weather related flight delays on your\nway back to houston . your phone message stated that you may be coming to ny\nin jan . 2001 . that ' s great vkaminski @ aol . com\nsubject : re : houston visit\nsoussan ,\nit seems we have planned for all contingencies .\nlook forward to meeting you next week .\nvince\n\" faiz , soussan \" on 11 / 28 / 2000 06 : 51 : 51 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\nvince ,\nyour suggested arrangement is perfect with me and i love both italian or\nsteak . . . the choice is yours . i really look forward to our meeting vkaminski @ aol . com\nsubject : re : houston visit\nsoussan ,\nlet ' s meet at westin oaks next to the reception around 6 : 30 p . m . thursday .\nthere are several nice restaurants within a walking distance to the\ngalleria .\ni shall make a reservation ( is italian or a steakhouse ok ? ) .\nyou can reach me on thursday at my cell phone 713 410 5396 .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 27 / 2000 04 : 37 : 30 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\ngreat ! i look forward to our dinner on thurs . 12 / 7 evening . hopefully\nyour\nflight will be on time . . . although having watched 60 minutes last night and\nsuffered from a # of delays lately , let ' s hope that the \" weather blame \"\ndoesn ' t get in the way . it ' s best to leave me a message @ my usual work #\non thurs . , 914 253 4187 , . . . i can easily check it in houston .\ni ' ll be staying @ the westin oaks in the galleria . . . any preferred place\nthat i can book ( & for what time ) ? ? coming over to down town won ' t be a\nproblem for me either .\nwill be great to see you again .\nsoussan\n914 253 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , november 27 , 2000 12 : 10 pm\nto : faizs @ texaco . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : houston visit\nsoussan ,\nthanks for your message . it would be great to meet you when you come to\nhouston .\ni shall be in town on december 7 , flying back from philly in the morning .\nassuming that the flight is on schedule , i shall be available for dinner .\nplease , let me know how i can contact you on thursday , december the 7 th ,\nto confirm .\nlook forward to meeting you .\nvince\n\" faiz , soussan \" on 11 / 26 / 2000 09 : 04 : 01 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : houston visit\ndear vince ,\ngreetings from ny and hope that all is well and you had a great\nthanksgiving . i ' ll be coming to houston for 12 / 6 - 12 / 7 and hope you are\navailable either evening for dinner . would be great to see you again and\ncatch up with the latest . . . i really enjoyed my visit last april , your\ninsights , and the risk book you gave me .\ni do hope you ' re available to meet and pls let me know which evening suits\nyou better .\nbest ,\nsoussan faiz\ntexaco inc .\n914 253 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.364+0000", "entityId": 9245, "properties": {"text": "Subject: re : follow - up meeting on wharton\nhi christie :\nthe telephone number in ebl 938 is : 713 / 853 - 3135 . have a safe trip .\nshirley\nchristie patrick\n12 / 12 / 2000 10 : 36 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : follow - up meeting on wharton\nshirley ,\nunless my flights change , i can call in from my cell phone - - what number shall\ni dial ?\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.369+0000", "entityId": 9246, "properties": {"text": "Subject: new research tool - too cool ! ! !\nthis tool is really a breakthrough . real - time off our new satellite\ncontroller , meteorological info from noaa ' s satellite ! ! !\nsimple and easy .\njust go to . . .\nfurther instruction ( there is only one instruction ) . .\ntype in your station of interest , example : khou for houston , texas , lirf for\nrome , italy , eddh for hamburg , etc ( see attached city code list )\nyou will be constantly updated way before the competition !\nenjoy . . .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.374+0000", "entityId": 9247, "properties": {"text": "Subject: my visit\ndear vince ,\nthanks for your phone call this morning . i will ring mike tonight , i . e .\nhouston tomorrow morning .\n. . . . had a look at the temps and anomalies over ca , looks warm for this time\nof the year ( dec . ) , there has been an increase in the night time\nt _ min , and t _ max remains at an above average level .\ni will start setting up my models over conus this week .\nregards ,\nchristian", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.378+0000", "entityId": 9248, "properties": {"text": "Subject: re : fw : eprm article\nthank you very much sir . i ' ll incorporate you comments later today and send\nit off .\nthanks also for your other comments , i ' m glad you regard the book highly\nenough for your group and your course .\ni look forward to catching up with you soon .\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom :\nto : chris strickland\ncc :\nsent : wednesday , december 13 , 2000 10 : 41 am\nsubject : re : fw : eprm article\n>\n> chris ,\n>\n> i have read the paper . it reads very well . two comments .\n>\n> 1 . it probably makes sense to include a note on the standard gbm\nsimulation\n> equation and\n> the way it ' s typically discretized .\n>\n> 2 . it will help the reader who did not read the earlier articles to\nexplain\n> what ct is ( perhaps a footnote ) .\n>\n>\n> i am also including a message i sent to julie today .\n>\n>\n* * * * * * * * * * * * * * * * *\n> 1 . i would like to register 2 members of my group for both courses ( in\n> houston ) :\n>\n> a . paulo issler\n> b . alex huang\n>\n> i shall attend the course on weather only .\n>\n> 2 . i have started the process to issue a check for 5 , 000 aud for lacima .\n> shirley sent you an update on this . the 2 nd installment comes from the\n> budget of our\n> office in australia . i shall talk to paul quilkey today about it . please ,\n> let me know if there is any delay .\n>\n> 3 . the book will be used as textbook for the class i shall be teaching at\n> rice .\n> rice univ bookshop is placing an order .\n>\n> 4 . i would like to order 50 copies for my group . what is the best\n> way to place the order ? can we pay in us dollars ?\n>\n* * * * * * * * * * * * * * * * *\n>\n> best regards .\n>\n> vince\n>\n>\n>\n>\n> \" chris strickland \" on 12 / 12 / 2000 05 : 21 : 22 pm\n>\n> please respond to \" chris strickland \"\n>\n> to :\n> cc : \" julie \"\n> subject : fw : eprm article\n>\n>\n> hi vince ,\n>\n> i ' m wondering if you got this last week ? if you could have a quick look\nand\n> get back to me with any comments that would be great - robin is chasing me\n> on this one !\n>\n> best regards .\n>\n> chris .\n>\n>\n> - - - - - original message - - - - -\n> from : chris strickland\n> to :\n> sent : wednesday , december 06 , 2000 4 : 16 am\n> subject : eprm article\n>\n>\n> > hi vince ,\n> >\n> > hope things are fine with you . i ' m sorry that i only ever write to you\n> when\n> > i ' m after something , but could you look at this simulation article - the\n> > next installment in the eprm articles .\n> >\n> > many thanks and best regards .\n> >\n> > chris .\n> >\n> >\n> >\n> > - - - - - original message - - - - -\n> > from :\n> > to : ; ;\n> ;\n> >\n> > sent : friday , september 08 , 2000 4 : 23 am\n> > subject : re : var article\n> >\n> >\n> > > les ,\n> > >\n> > > the revised version of the var article looks fine .\n> > >\n> > > vince\n> > >\n> >\n>\n> ( see attached file : eprm _ 04 _ sim _ mr . zip )\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.383+0000", "entityId": 9249, "properties": {"text": "Subject: fw : eprm article\nhi vince ,\ni ' m wondering if you got this last week ? if you could have a quick look and\nget back to me with any comments that would be great - robin is chasing me\non this one !\nbest regards .\nchris .\n- - - - - original message - - - - -\nfrom : chris strickland\nto :\nsent : wednesday , december 06 , 2000 4 : 16 am\nsubject : eprm article\n> hi vince ,\n>\n> hope things are fine with you . i ' m sorry that i only ever write to you\nwhen\n> i ' m after something , but could you look at this simulation article - the\n> next installment in the eprm articles .\n>\n> many thanks and best regards .\n>\n> chris .\n>\n>\n>\n> - - - - - original message - - - - -\n> from :\n> to : ; ;\n;\n>\n> sent : friday , september 08 , 2000 4 : 23 am\n> subject : re : var article\n>\n>\n> > les ,\n> >\n> > the revised version of the var article looks fine .\n> >\n> > vince\n> >\n>\n- eprm _ 04 _ sim _ mr . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.387+0000", "entityId": 9250, "properties": {"text": "Subject: my new position\ni wanted to submit my notice of rotation to the \" fundamental analysis \" group\nand thank the fx and country risk group for giving me an opportunity to work\nin such exiting learning environment . i really enjoyed being part of the\nresearch group and hope to keep all of the relationships i have developed\nthroughout my rotation . i am looking forward to my new position as an\nopportunity to learn more about the company and to try my abilities in a new\nenvironment . \" fundamental analysis \" group is a new and developing group ,\nwhich will give me an opportunity to develop and grow as an employee .\ni understand that it is my responsibility to train the individual who will\nbe taking my current position . in an effort to make a smooth transition to\nmy new rotation i will train the new individual and starting december 18 th\nwill devote my free time to pursue my new job responsibilities . in agreement\nwith maureen official start date of new rotation is january 2 nd 2001 .\nsincerely ,\nyana kristal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.393+0000", "entityId": 9251, "properties": {"text": "Subject: re : jeff skilling ' s presentation\ni want to thank all of you for all your help !\nalhamd alkhayat\nenron corp .\n+ 1 ( 713 ) 853 - 0315\nthis message ( including any attachments ) contains confidential information\nintended for a specific individual and purpose , and is protected by law . if\nyou are not the intended recipient , you should delete this message and are\nhereby notified that any disclosure , copying , or distribution of this\nmessage , or the taking of any action based on it , is strictly prohibited .\n- - - - - forwarded by alhamd alkhayat / na / enron on 12 / 14 / 2000 02 : 15 pm - - - - -\nsent by : \" daron peschel \"\n12 / 14 / 2000 01 : 57 pm\nplease respond to \" daron peschel \"\nto : sherri . sera @ enron . com\ncc : alhamd . alkhayat @ enron . com\nsubject : re : jeff skilling ' s presentation\nsherri and alhamd ,\njust wanted to let you know that i heard jeff skilling really\nimpressed chairman greenspan this morning ( i did not attend the\nmeeting . )\nthanks for all you help making sure the presentation went off without\na hitch .\ndaron\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ reply separator\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nsubject : jeff skilling ' s presentation\nauthor : sherri . sera @ enron . com at notesmail\ndate : 12 / 12 / 00 10 : 01 am\ndaron ,\nwe are not yet finished with jeff ' s presentation , and probably won ' t be\ncompletely finished until tomorrow afternoon - just about the time that\njeff will leave for dallas . in addition , e - mailing the complete\npresentation may not be an option due to the size of the file .\ni ' ve asked hamd to e - mail you want we have right now so that you can test\nit with your system . we ' ll then send a cd with the entire presentation\nalong with jeff to dallas . i ' ll ask jeff to deliver it to you at the\ndinner wednesday evening , so perhaps your av people can test it that night .\ndaron , i apologize for any inconvenience this may cause . if you have\nanother idea as to how to handle this situation , we ' re certainly willing to\nentertain it .\nthanks , srs", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.397+0000", "entityId": 9252, "properties": {"text": "Subject: meeting at 2 : 00 pm friday\nkevin ,\ncan you join us ? i may be 5 minutes late , coming from another meeting .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 15 / 2000\n07 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwenyao jia\n12 / 14 / 2000 06 : 24 pm\nto : debbie r brackett / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : meeting at 2 : 00 pm friday\nwe will meet at debbie ' s office at 2 : 00 pm tomorrow afternoon . we will talk\nabout asset liability project from treasury dept .\nsee you there .\nwinston", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.402+0000", "entityId": 9253, "properties": {"text": "Subject: welcome to the new cera . com !\ndear cera . com client :\nwe are pleased to welcome you to the new cera . com !\nwe hope you will agree that this new site represents another positive step in\nthe evolution of cera ' s internet services .\nto access the new site , please visit : http : / / www 20 . cera . com\nif you have forgotten your username and password , please use our new username\nand password reminder located at :\nhttp : / / www 20 . cera . com / client / forgot /\nplease note : bookmarks you have for specific cera reports will no longer be\nvalid . shortcuts to specific client knowledge areas will still work . for\nexample , the link to cera ' s world oil service home page\n( http : / / www . cera . com / client / wo / ) will remain the same ( note this link only\nactive for members of the world oil service ) .\nplease take time to surf the new cera . com to see what ' s new !\nsincerely ,\ncera . com development team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.407+0000", "entityId": 9254, "properties": {"text": "Subject: re : garp 2001 convention\nfrank ,\ni assume you want to take advantage of this opportunity .\nplease , confirm .\ni shall notify andreas .\nvince\nenron north america corp .\nfrom : frank hayden @ enron 12 / 14 / 2000 09 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : garp 2001 convention\nthanks ,\nfrank\nvince j kaminski @ ect\n12 / 14 / 2000 09 : 45 am\nto : frank hayden / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : garp 2001 convention\nfrank ,\ndoes this help ? please , let me know .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 14 / 2000\n09 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" andreas simou \" on 12 / 13 / 2000 04 : 51 : 51 am\nto :\ncc :\nsubject : re : garp 2001 convention\ndear vince\nthank you for your recent enquiry concerning a complimentary pass to the\ntwo - day garp convention . unfortunately , it is not garp ' s policy to allow\nthis for a number of reasons : garp is a not - for - profit organisation , will\nmuch lower delegate fees ( and still the same overheads ) than other\nconference organizers . garp ' s mission is to allow an educational forum for\nfurtherance of financial risk management and an opportunity to allow\nnetworking and contact time between financial risk professionals . however ,\nin an attempt to remain at ease with my speakers , i would like to offer a\n50 % discount off the delegate fee for one of you colleagues in enron . this\nwill be for the two - day convention and will include the gala awards evening\non 13 th february , which had over three financial and risk professionals at\ngarp 2000 .\ni trust that this is satisfactory . if you would like to take advantage of\nthis , please fax a completed registration form , along with a brief covering\nnote referring to this e - mail , and i will ensure that our administration\ndepart handle the relevant paper work . if you have any questions please do\nnot hesitate to contact me .\ni look forward to your response and to meeting you in new york in february\n( and receiving a copy of your presentation in a few days ) .\nkind regards\nandreas\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : tuesday , december 12 , 2000 8 : 50 pm\nsubject : re : garp 2001 convention\nandreas ,\nam i entitled to bringing one delegate as a guest , free of charge ?\nsome conferences offer such privileges .\nvince\n\" andreas simou \" on 12 / 04 / 2000 06 : 31 : 37 am\nto :\ncc :\nsubject : garp 2001 convention\ndear garp 2001 speaker\nthis is just a quick note to keep you up - to - date with developments at the\ngarp 2001 convention , which will be held in new york between 12 th and 15 th\nfebruary , 2001 .\nthus far , garp 2001 looks set to far exceed our expectations and garp\n2000 . there has been a great deal of interest in the 2001 convention .\ndelegate bookings have been much higher than this time last year . as a\nresult , we are set to far exceed the number of delegates that attention\nearlier this year . the three workshops and the one - day asset management\nforum are also very well received and will probably reach full capacity . i\nwill of course provide you with much fuller details closer to the time of\nthe event .\nregarding the event itself , i would like a few outstanding issues :\n1 . presentations : can you please e - mail your presentation to me by 15 th\ndecember , so that i have enough time to reproduce them and place them in a\ndelegate pack for the convention . ( given the break of the christmas and\nnew york period , and that the event is being held in new york , i am sure\nyou can appreciate that there are certain logistical factors that need to\nbe taken into account , hence the reason why the presentations are required\nas soon as possible ) . this is purely for reproduction , we also request you\nbring your presentation to the convention on the day in either a floppy\ndisc or a laptop .\n2 . audio - visual requirements : can you please inform me of what\naudio - visual requirements you may have ( 35 mm slides ; ohp ; lcd projection -\nnotably powerpoint ) .\n3 . check list : i have attached a check list for your information . if you\nhave not returned this already , can you please read and fax it to my\ncolleague , claire as soon as possible .\nif you have any questions or queries , please do not hesitate to contact\nme , otherwise i eagerly await your response in due course .\ni look forward to seeing you in new york in february .\nkind regards\nandreas\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp 2001 - conference producer\ntel + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\ndon ' t miss the garp 2001 convention ,\nprogram details via our web site\nwww . garp . com\n( see attached file : speaker checklist . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.413+0000", "entityId": 9255, "properties": {"text": "Subject: fyi - a new esai report forecasting power prices in eastern markets\nattached is a new report forecasting jan - feb - mar power prices based on\nweather services international weather forecasts and esai energy analytics .\nfeel free to comment . a version using national weather service information\nwill also be available .\ned\nedward n . krapels , phd\nmanaging director\nesai power and gas services\ntel 781 245 2036\ncell 617 899 4948\nekrapels @ esaibos . com\nwww . esai . com\n- esai energycast power dec 00 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.418+0000", "entityId": 9256, "properties": {"text": "Subject: re : lunch\nsuper . jestesmy umowieni .\njuliusz\nvince j kaminski\n12 / 14 / 2000 11 : 06 am\nto : julius zajda / lon / ect @ ect\ncc :\nsubject : re : lunch\njuliusz ,\nwtorek jest najlepszym dniem .\nvince\njulius zajda\n12 / 14 / 2000 10 : 18 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : lunch\nprzepraszam , ze sie tak dlugo nie odzywalem , ale musialem znalezc sobie\nmieszkanie , przeprowadzic sie i kupic jakies meble . czy lunch w przyszlym\ntygodniu odpowiadalby panu ? mi pasuje kazdy dzien oprocz czwartku .\njuliusz", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.423+0000", "entityId": 9257, "properties": {"text": "Subject: additional info\ndear vince ,\nthanks so much for your prompt return call . as discussed , pls find attached\na # of related self - explanatory documents ( in naturally the strictest\nprivacy and confidence ) .\n> > >\n> > >\n> > > >\n> the tx fellowship - - the highest individual recognition reward within the\n> company - - will be determined in jan . 2001 . the pdf files refer to a paper\n> presentation and 2 press interviews , respectively . the spe paper will be\n> published in the jan . 2001 edition of journal of petroleum technology\n> ( jpt ) .\n>\n> i ' ll appreciate your review and additional discussion re best fit . as\n> discussed , it ' s best to correspond via my personal e - mail address :\n> newsoussan @ iwon . com or else pls leave me a message a my secure personal\n> phone # @ work . pls be also advised that i ' ll be checking my phone - and\n> e - mail infrequently ( every other day ) while i ' m in england . i look\n> forward to seeing you soon in either ny or houston .\n>\nwishing you a very happy holiday season and a healthy and prosperous 2001 .\n> soussan ,\n> 914 253 4187 ( w )\n>\n>\n>\n- sfaiz _ detailed _ resume . doc\n- sfaiz _ job _ description . doc\n- sfaiz _ cover _ nomtxfellow . doc\n- sf _ external _ invitations . xls\n- spe 62964 . pdf\n- real _ rewards . pdf\n- get _ real . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.428+0000", "entityId": 9258, "properties": {"text": "Subject: re : update - meteorologist search\ngreat work mike !\ni will arrange interviews with the london folks while i ' m there .\njen\nfrom : mike a roberts 12 / 14 / 2000 09 : 54 am\nto : jennifer fraser / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , jose marquez / corp / enron @ enron , stephen w\nbennett / hou / ect @ ect\nsubject : update - meteorologist search\nwe have identified two good candatites who would be available for a london\ninterview the week of the 18 th :\n1 . kerryn hawke\n2 . stephen cusack\nalso strong but not available for that week is\n3 . piero chessa ( working for ecmwf in italy )\nwe have a couple others here in the states if the london interviews don ' t\nwork out .\ni am forwarding under separate cover kerryn and stephen ' s cv ' s with telephone\nnumbers to jen\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.433+0000", "entityId": 9259, "properties": {"text": "Subject: update - meteorologist search\nwe have identified two good candatites who would be available for a london\ninterview the week of the 18 th :\n1 . kerryn hawke\n2 . stephen cusack\nalso strong but not available for that week is\n3 . piero chessa ( working for ecmwf in italy )\nwe have a couple others here in the states if the london interviews don ' t\nwork out .\ni am forwarding under separate cover kerryn and stephen ' s cv ' s with telephone\nnumbers to jen\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.437+0000", "entityId": 9260, "properties": {"text": "Subject: carnegie mellon\nshirley ,\ni just spoke with vince and asked him if he would be available to interview\none last candidate on monday . he said no problem that both he and stinson\nwould be available for interviews . could you please put on vince ' s schedule\none interview at 8 : 45 am - 9 : 15 am . stinson ' s interview will be from\n9 : 30 am - 10 : 00 am .\ni will just bring the candidate to their offices so they do not have to show\nup early .\nif you have any questions please feel free to contact me at extension 53214 .\nthank you very much ,\nkristin gandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.444+0000", "entityId": 9261, "properties": {"text": "Subject: my students\ndear vincent ,\ni spoke with my students yesterday and they told me they have thought\nabout coming to see you again , and they think it ' ll be much better in\nthe future when they are closer to completion of their ph . d . i think this\nis a very sound idea , but i wanted to give them anyway the opportunity\nto see the actual working environment at a place like enron . they are both\nvery serious and responsible , so they feel they had better go see you when\nthey would be in a better disposition to give more of themselves to enron .\nthey are both superb students and very hard working individuals , so i do\nhope you will consider checking them out in the future ( within a year -\nyear and a half ) .\ni will contact you and / or stinson in the future when they are closer\nto finishing up .\nbest ,\ncarlos", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.453+0000", "entityId": 9262, "properties": {"text": "Subject: new consultants added to enron tiger\nenron tiger team :\nwe are pleased to tell you that professors howard kunreuther and paul\nkleindorfer , opim dept , university of penn , will be consultants for the\nenron tiger project 2001 . please feel free to contact them with any\nquestions or concerns : kunreuth @ wharton . upenn . edu and\nkleindorfer @ wharton . upenn . edu\nsincerely ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n( 215 ) 573 - 8394\n( 215 ) 573 - 5727 fax\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.461+0000", "entityId": 9263, "properties": {"text": "Subject: re : working with enron on catastrophic risk\nhoward ,\nthanks for the message and the paper .\nwe shall hold an internal follow - up meeting next monday to\nreview potential projects on which we could cooperate in\nthe future .\nvasant and i will contact you to discuss our recommendations\nregarding the future research agenda .\nvince\n\" kunreuther , howard \" on 12 / 14 / 2000 10 : 07 : 11 am\nto : \" bouillion ( e - mail ) \" , \" carrick ( e - mail ) \"\n, \" hoog ( e - mail ) \" , \" kaminski\n( e - mail ) \" , \" vasant ( e - mail ) \"\ncc : \" doherty , neil a \" , \" kleindorfer , paul \"\n, \" thomas , louis a \"\n, \" weigelt , keith w \"\nsubject : working with enron on catastrophic risk\ndear vince , jim , george , david and vasant :\nneil doherty , paul kleindorfer and i very much enjoyed our discussion last\nwednesday at wharton with you on future joint research with enron over the\ncoming year . in particular , we see the whole area of capital management and\ncatastrophic risk as a fruitful area for foint collaboration . i am sharing\nthis message with louis thomas and keith weigelt who direct the fap mba\nprogram in the hopes that we can find a team to work with us on these issues\nnext semester .\nattached is a revised version of our paper on \" evaluating risk bearing ,\nmitigation and risk transfer using exceedance probability curves : project\nupdate \" . we would greatly appreciate you and your colleagues looking at the\nsection on \" cat bonds covering multiple risks \" ( pp . 15 - 19 ) to see whether our\nexample and conclusions make sense to you . we look forward to working with\nyour team at enron regarding ways that we can build on these preliminary\nfindings to make cat bonds for weather risks more attractive .\nbest wishes for the holiday .\nregards ,\nhoward\nhoward kunreuther\ncecilia yen koo professor of decisions sciences and public policy\nchairperson operations and information management department\n1326 steinberg hall - dietrich hall\nwharton school\nuniversity of pennsylvania\nphiladelphia , pa 19104 - 6366\nphone : 215 - 898 - 4589\nfax : 215 - 573 - 2130\nemail : kunreuth @ wharton . upenn . edu\n- epcurvepaper - final - dl 0 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.466+0000", "entityId": 9264, "properties": {"text": "Subject: re : hdaf seminar topics\nfolks :\ni have tentatively set the date for our first round - table discussion for\nwednesday ,\ndecember 20 th at 3 : 00 pm - 4 : 30 pm . the room , eb 3268 , will be available from\n3 : 00 to 5 : 00 pm . if any of you have an issue with the date , please let me\nknow by\nday ' s end .\nprofessor don kouri of the physics department of the university of houston\nwill start\nwith an informal 30 - 45 minute presentation ( see appended abstract below ) of\nhis work\nand will then lead a discussion as well answer questions that we may have .\nprofessor kouri , please let me know if you have any requirements for\naudiovisual\nor other equipment .\nthis excerpt from a previous correspondence provides an insight to the\nsubject of our meeting :\n[ . . . ] topics to\nbe discussed at a small ` ` roundtable ' ' format meeting , are :\n1 . hdafs for data analysis , including ` ` gap - filling ' ' , data\nextrapolation , denoising , mathematical manipulations of digital\ndata ( e . g . , taking derivatives , applying functions of differential\noperators to digital data , etc . )\n2 . hdafs as the basis of numerical algorithms for solving nonlinear\npartial differential equations , particularly for equations for which\nexisting methods encounter stability problems .\nthere are certainly other areas of interest and applications of the\nhdafs but i think that even trying to do both of the above in a\nsingle meeting would be difficult . of course , in this first meeting\nwe would focus on general aspects of the hdafs that make them robust\nfor such applications . if , however , you have other topics in which\nyou are interested , i am willing to focus on them .\n[ . . . ] \"\nyannis tzamouranis\nyannis tzamouranis on 12 / 11 / 2000 03 : 56 : 49 pm\nto : mark tawney / hou / ect @ ect , claudio ribeiro / corp / enron @ enron , joseph\nhrgovcic / hou / ect @ ect , vince j kaminski / hou / ect @ ect , todd\nkimberlain / na / enron @ enron , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : hdaf seminar topics\nfolks :\ni am trying to set up a meeting with professor don kouri of the university of\nhouston and i believe you may have an interest in the topic of discussion .\nif you know of other interested parties , or want to substitute a proxy for\nyourselves , please let me know .\nthis first meeting with dr . kouri will introduce the participants to his area\nof research ( hdafs for data analysis ) and allow us to define the contents and\nattendants of a seminar ( to come up soon ) .\nwe are looking to hold this discussion this week ( hopefully ) and to have the\nseminar happen before christmas ( given that this is the in - between semester\nseason for schools ) .\na couple of other similar meetings will follow up : dr kevin bassler will be\ntalking about microscopic simulation of economic markets and dr . pinsky about\nthe effect of solar phenomena on the earth ' s atmosphere .\nyannis\n- - - - - forwarded by yannis tzamouranis / hou / ect on 12 / 11 / 2000 03 : 36 pm - - - - -\nkouri @ kitten . chem . uh . edu\n12 / 11 / 2000 02 : 32 pm\nto : yannis . tzamouranis @ enron . com\ncc :\nsubject : hdaf seminar topics\nhi yannis ,\ni got your email without any problem .\nregarding timing of a meeting , i am free from teaching duties now\nso i am flexible . i will be in houston all of december . i look\nforward to hearing more from you . with best wishes ,\ndon kouri", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.476+0000", "entityId": 9265, "properties": {"text": "Subject: re : james \" brad \" aimone\nshirley ,\nplease , send a message to norma to\nfinalize it .\nvince\nshirley crenshaw\n12 / 14 / 2000 10 : 32 am\nto : norma villarreal / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : james \" brad \" aimone\nhi norma :\nfyi in case you do not know , today ( 12 / 14 / 00 ) is brad aimone ' s last day\nwith enron . i don ' t know what else i need to do as he was not a full time\nemployee .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.484+0000", "entityId": 9266, "properties": {"text": "Subject: re :\nshirley ,\ni will take half day off tomorrow morning , on friday , in addition to today ' s\nafternoon .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.491+0000", "entityId": 9267, "properties": {"text": "Subject: re : prc\ndave ,\nno problem . i shall do it this weekend .\nalso , i left you a message regarding grant masson ( a vp in my group\nwho left and went to work for el paso 2 months ago ) .\ni made a bet that he would be knocking on our door in a year . i lost . he\nwants to come back\nafter 2 months .\nmy recommendation is to take him back . he left on good terms and is quite\ncompetent .\ni would also like to send a message to the group that the grass on the other\nside\nof the fence may look greener , but in reality it may be painted hay . \" the\nreturn of grant\nmasson \" would demonstrate that enron offers best long - term growth\nopportunities ( and that\ni am good manager ) .\ngrant would come back to his original vp position . can we short - circuit the\nhiring procedures for a vp . grant ' s body is still warm and we can just\nre - instate\nhim in the original position instead of going through all the loops required\nto hire a vp .\nvince\ndavid w delainey\n12 / 14 / 2000 10 : 29 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : prc\nvince , can you provide for me a detailed list of 2000 accomplishments ,\nstrengths / weaknesses and feedback against the criteria for the 2000 prc .\ni need that in the next week or so .\nthanks\ndelainey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.497+0000", "entityId": 9268, "properties": {"text": "Subject: re : message from grant\ngrant ,\ni shall be in the office for a few hours today ( looks like food poisoning ) .\ni shall try to call you from home .\ni don ' t see any major problem . i shall call david oxley and ask how we could\nstructure the rehire so that you are not hosed this year .\nvince\n\" grant masson \" on 12 / 13 / 2000 11 : 07 : 12 pm\nto :\ncc :\nsubject : message from grant\nvince :\n?\nhaving now the benefit of some experience with el paso , i conclude that\nenron would offer more for me in the long term . ? if you have an interest in\ndiscussing the matter further , please give me a call . i would appreciate\nyour comments . ?\n?\nbest regards ,\ngrant .\n?\n( mobile ) 281 381 9983\n( home ) 713 664 7260", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.502+0000", "entityId": 9269, "properties": {"text": "Subject: re : approval is overdue : access request for stewart . range @ enron . com\nhe told me that he has what he needs .\n- - stinson\nvince j kaminski\n12 / 14 / 2000 09 : 53 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : approval is overdue : access request for stewart . range @ enron . com\nstinson ,\ndid we resolve this case ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 14 / 2000\n09 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem @ mailman . enron . com on 12 / 13 / 2000 07 : 00 : 54 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : approval is overdue : access request for stewart . range @ enron . com\nthis request has been pending approval for 18 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000007876\napprover : stinson . gibner @ enron . com\nrequest create date : 11 / 20 / 00 2 : 36 : 29 pm\nrequested for : stewart . range @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.506+0000", "entityId": 9270, "properties": {"text": "Subject: wti models\nstinson and vince ,\ni finalized the presentation for john lavorato , he said he is ready\nto present it to greg . he is happy with the work we provided .\ni will be on vocation starting next week . i attached the simulation models\nhere in case that you need them . the oc version deals with open - close\ntrading and cc version deals with continuous trading .\nshould you have any questions , or need to run different scenarios , please\ncall me at home . otherwise , i will see you next year .\nmerry chrismas and happy new year !\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.512+0000", "entityId": 9271, "properties": {"text": "Subject: wti trading simulation presentation - combinded\njohn ,\njust finished the continous trading case . please see\nthe two attached files . let me know if you want to add\nmore scenarios .\nhappy holidays !\nzimin\n- - - - - - - - - - - - - - - - attachment - - - - - - - - - - - - - - - - - -\nopen - close trading :\nclose - close trading :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.517+0000", "entityId": 9272, "properties": {"text": "Subject: wti trading simulation presentation\njohn ,\ni prepared the presentation in the way we discussed on wednesday .\nin summary i have included the following scenarios :\ntenor : 1 , 3 , 5 years back from nov , 2000\n1 , 3 , 5 years back from nov , 1998\n1 , 3 , 5 years back from nov . 1995\nnumber of trade per day : 200 , 600 , 1000\nbid - offer spread : $ 0 . 04 and $ 0 . 06\nnet open position allowed : 1 , 000 , 000 and 5 , 000 , 000\nvolume per trade is fixed at 1 , 000 bbl .\nall together , there are 9 * 12 = 108 scenarios included in the presentation .\ni will be on vocation starting next week . but i will check my e - mail and\nphone\nmessages to make modifications you need .\nhappy holidays ,\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.522+0000", "entityId": 9273, "properties": {"text": "Subject: wti model\nstinson ,\nthis is the latest wti model for open - close trading .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.526+0000", "entityId": 9274, "properties": {"text": "Subject: wti simulation presentation - the latest\njohn ,\nthis is the updated presentation for the open - close assumption .\ni will finish the close - close ( continuous trading ) case .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.531+0000", "entityId": 9275, "properties": {"text": "Subject: refined products line - - north american markets - cera alert : decem\nber 15 , 2000\ncera alert : december 15 , 2000\ntitle : refined products line - - north american markets\ncera knowledge areas : refined products\nus margin highlights\n* responding to falling apparent demand and rising primary inventory levels ,\nus gulf coast unleaded gasoline margins versus wti fell by $ 2 . 26 per barrel\nto average $ 1 . 45 per barrel during november . gasoline margins have returned\nto a historically normal range after spending the summer of 2000 at\nexceptionally high values . cera expects gasoline margins to wti to average\n$ 2 . 75 per barrel during the first quarter of the new year , $ 1 . 16 per barrel\nlower than this year ' s first quarter average .\n* high sulfur no . 2 fuel oil differentials with wti dropped slightly ,\naveraging $ 5 . 97 per barrel in november . despite the drop of $ 0 . 37 per barrel\nfrom october ' s average , fuel oil differentials remain at unprecedented\nvalues - $ 4 . 20 per barrel higher than a year ago and $ 3 . 46 per barrel greater\nthat the previous five - year average . for the first quarter of 2001 , cera\nanticipates distillate margins to moderate somewhat but remain at a record\nhigh level of $ 4 . 75 per barrel in the first quarter .\n* jet / kerosene differentials versus wti rose $ 0 . 63 per barrel from the\noctober average , reaching a whopping $ 8 . 59 per barrel in november . in\ncorrespondence with the distillate market , jet / kerosene margins are at\nhistorically high levels and receiving support from relatively tight\nfundamentals . cera expects jet / kerosene margins to moderate somewhat in the\nfirst quarter in response to seasonal weakening of demand following the\nholiday travel season but to remain exceptionally strong at an average of\n$ 5 . 75 per barrel .\n* margins for us gulf coast 1 % sulfur residual fuel dropped by $ 2 . 15 per\nbarrel , reaching $ 3 . 99 per barrel below wti during november . despite the\nrecent widening of differentials , cera expects soaring natural gas prices to\nsupport relatively narrow residual fuel differentials throughout the winter\nmonths . residual fuel differentials are expected to average $ 2 . 50 per barrel\nbelow wti during the first quarter of next year , at the high end of the\nhistorical range .\nus demand highlights\n* apparent demand for unleaded gasoline fell seasonally by about 0 . 5 million\nbarrels per day ( mbd ) from the october level , reaching 8 . 36 mbd for the four\nweeks ending december 8 . demand is averaging less than 1 percent below last\nyear largely because y 2 k concerns helped inflate december demand a year ago .\ncera anticipates gasoline demand to continue to decline seasonally as colder\ntemperatures arrive , averaging 8 . 08 mbd during the first quarter of 2001 .\n* reported distillate apparent demand remains exceptionally strong at 3 . 94\nmbd for the four weeks ending december 8 , over 7 percent greater than this\ntime last year . this represents a slight increase of about 0 . 05 million\nbarrels ( mb ) from the end - october level of 3 . 90 mb , but still a record high\nlevel for early december . with support from low home heating oil inventories ,\nparticularly in the northeast , distillate demand has been very strong during\nthe fall of 2000 . cera expects demand to remain strong in the coming winter\nmonths , averaging 3 . 79 mb during the first quarter of next year .\n* apparent demand for jet fuel declined by 5 percent from the october level\nto reach 1 . 68 mbd for the four weeks ending december 8 . despite the decline ,\napparent jet fuel demand is over 1 percent above the year - ago level . the\nrelative strength of jet fuel reported demand continues to parallel\ndistillate demand strength with support coming from the use of jet fuel to\nhelp mitigate the tight distillate market fundamentals . cera expects the\ndemand for jet fuel to average 1 . 81 mb during the fourth quarter .\n* reported demand for residual fuel dropped to 0 . 87 mbd for the four weeks\nending december 8 , a decline of about 0 . 09 mbd from the october average and a\nslight increase over the november level . demand for residual fuel is\ncurrently 11 percent greater than last year , and surging natural gas prices\nare expected to result in continued strong residual fuel demand throughout\nthe winter . residual fuel demand is expected to remain in the 0 . 85 to 0 . 9 mbd\nrange during the first quarter of 2001 .\nus inventory highlights\n* primary inventories of unleaded gasoline rose to 196 . 5 mb , increasing\nalmost 10 mb from the end - october value . responding to rising stock levels\nand declining apparent demand , forward supply coverage of gasoline climbed to\n23 . 5 days for the four weeks ending december 8 . forward supply is 2 . 5 percent\nbelow last year ' s level at this time of year and at its lowest level in the\npast eight years - although cera still believes coverage is currently\nsufficient for the level of demand expected this winter . however , cera is\nlooking cautiously at the implications of high distillate refinery yields and\nproduction because of the possibility of low gasoline inventories at the\nstart of the driving season in the second quarter of next year .\n* distillate inventory coverage has remained about level since the end of\noctober at 29 . 2 days of forward supply for the four weeks ending december 8 .\ndespite record high apparent demand , strong refinery production levels helped\nboost primary distillate inventories slightly , to 115 . 3 mb for this period .\nprimary stocks are 16 percent below last year ' s level at this time and at\ntheir lowest historical level ever . although stocks are low , cera does not\nanticipate shortages to occur this winter . assuming normally cold weather ,\nrefinery production and net imports are expected to be capable of meeting\ndemand requirements - albeit at a high price .\n* jet fuel inventory coverage crept upward by about 1 day of coverage , to\nreach 25 . 7 days of forward supply for the four weeks ending december 8 . this\nmoves jet fuel coverage above the 23 . 5 to 25 days ' supply range that it had\nbeen in for the past four months . the rise of just under 1 day in forward\nsupply was mainly a response to a decline in apparent demand . jet inventories\nand coverage are expected to become tighter in the coming weeks as the pull\nfrom tight distillate markets strengthen , but supplies are expected to be\nadequate for the winter .\n* inventory coverage of residual fuel rose by almost 4 days of forward supply\nfrom october , reaching 41 . 7 days of forward supply during the four weeks\nending december 8 . the increase in coverage was a temporary response to a\ndrop in demand and an increase in stocks . with demand expected to strengthen\nbecause of colder weather and high gas prices , cera looks for inventories and\ncoverage gradually to decline in the coming weeks .\n* * end * *\nthis cera alert will be available in pdf format within 24 hours .\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www . cera . com / tos . html\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.536+0000", "entityId": 9276, "properties": {"text": "Subject: re : uk : reconciling the spreadsheet and risktrac var numbers\nhi , tanya :\nthe factor loading results for the eff _ dt = ' 12 - dec - 2000 ' are available on\nthe rms _ stage database .\nthe parameters being used :\neffective _ date = ' 12 - dec - 2000 '\nstart _ date = ' 12 - sep - 2000 '\nend _ date = ' 12 - dec - 2000 '\nplease check the result in the database with :\nfactor _ def _ id = 1510\nbasis _ map _ id = 1562\ncorr _ def _ id = 1280\nnotice : this is only a testing result !\njin\ntanya tamarchenko\n12 / 15 / 2000 05 : 20 pm\nto : debbie r brackett / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , rabi de / na / enron @ enron , jin yu / hou / ect @ ect ,\nwenyao jia / hou / ect @ ect , ganapathy ramesh / hou / ect @ ect\nsubject : re : uk : reconciling the spreadsheet and risktrac var numbers\ndebbie ,\nwe asked dba to refresh stage this monday .\nit was refreshed on thursday . jin is running vatrfacs today ( friday ) to\ncreate correlations and factors .\nthen , according to our plan , we will ask ramesh to run var on these inputs .\nwe will send the inputs to you to run var in the spreadsheet and reconcile\nthe results for uk .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.541+0000", "entityId": 9277, "properties": {"text": "Subject: re : uk power / gas\nvince , just fyi :\noliver ( risk control in london ) was asking if it is appropriate to use a set\nof factors corresponding to some commodity for another commodity .\nthis \" mapping \" we do quite frequently in our var system when forward prices\nfor a commodity are not correlated ( because of poor price history ) .\ni think using this kind of mappings is ok because we can not trust these\ncorrelations based on illiquid price information .\nif we believed the matrix with low correlations represents what goes on in\nthe market and we simply can not reconstruct it with our 7 factors - then\nwe might use more factors then 7 or the matrix itself .\ntanya\ntanya tamarchenko\n12 / 15 / 2000 02 : 36 pm\nto : oliver gaylard / lon / ect @ ect\ncc : david port / market risk / corp / enron @ enron , rudi zipter / hou / ect @ ect , wenyao\njia / hou / ect @ ect , kirstee hewitt / lon / ect @ ect , debbie r brackett / hou / ect @ ect ,\nnaveen andrews / corp / enron @ enron\nsubject : re : uk power / gas\noliver ,\ni completely agree with you : validating var inputs like positions , prices and\nvolatilities which are used by risktrac is the first thing to do .\nyou also rise a valid question : if the factor loadings for some commodity do\nnot make sense should we use the factor loadings for another commodity ?\nthe factor loadings \" do not make sense \" when the correlations across the term\nstructure are not high . so if we believe that the forward prices for this\ncommodity are market prices and statistical analysis on these prices produces\nthe correlations which we trust , then it would be proper to use this\ncorrelation matrix in var engine , not the factors . using factors is simply\nthe way to speed up calculations for highly correlated prices without\nsacrificing the accuracy .\ntanya .\noliver gaylard\n12 / 15 / 2000 07 : 11 am\nto : naveen andrews / corp / enron @ enron\ncc : david port / market risk / corp / enron @ enron , rudi zipter / hou / ect @ ect , wenyao\njia / hou / ect @ ect , kirstee hewitt / lon / ect @ ect , tanya tamarchenko / hou / ect @ ect ,\nganapathy ramesh / hou / ect @ ect , debbie r brackett / hou / ect @ ect\nsubject : re : uk power / gas\nnaveen\nregarding the calculation of uk vars in risk trac i agree that we should be\nusing this calculation engine for all commodity vars . however we should not\nfocus solely on the uk but ensure that we use risk trac for continental power\nand gas , uk power and gas , nordic power .\nto use risk trac i think the following need to be resolved first , to\nimplement it \" right the first time \" , as i think it is incorrect to consider\nthe risk trac numbers \" as the most accurate \" since it depends on the validity\nof these items :\npositions ( delta and gamma ) and curve mapping - these need to include all\npositions including those outside the main risk systems\npositions , curves and mapping should now be no problem given the feeds ,\napart from continental power , have been uat ' d and we have the spreadsheet\nfeeds up and running .\nprice and vol curves - as used by the risk systems\nas above\ninter commodity correlation - prompt month\ncorrelation should be easy to calculate given an accurate and complete data\nset ( however the incomplete historic data for europe in risk trac , prior to\nthe formation of the task force , would mean a full data set needs to be\nobtained and used ) . term structure of correlation would be good but i\nunderstand this is difficult to use in the calculation .\nfactor loadings\ni think factor loadings should be calculated , on the same data sets used\nfor inter commodity correlation , for all commodities . if this analysis does\nnot appear to work i am not sure that using factor loadings for other markets\nis adequate . do we need to consider an alternative approach to calculating\nvar for these markets ?\nto ensure this moves forward i think a list of the mile stones ,\nresponsibilities and time lines needs to be drawn up otherwise i fear the\nprocess of moving across to risk trac from the spreadsheet var will\nexperience some slippage .\ni will call today to start the process off .\nrgds\noliver\nnaveen andrews @ enron\n06 / 12 / 2000 21 : 50\nto : oliver gaylard / lon / ect @ ect\ncc : david port / market risk / corp / enron @ enron , rudi zipter / hou / ect @ ect , wenyao\njia / hou / ect @ ect , kirstee hewitt / lon / ect @ ect , tanya tamarchenko / hou / ect @ ect ,\nganapathy ramesh / hou / ect @ ect , debbie r brackett / hou / ect @ ect\nsubject : uk power / gas\noliver ,\ni had a couple of issues pertaining to uk power / uk gas . first ,\njust a few notes as it pertains to risk trac uk - implementation :\n( 1 ) in risktrac , currently all the gas curves are mapped to nbp .\n( 2 ) all the power curves are mapped to r 4 ( cinergy ) .\nfactor loading analysis lends itself only to nbp and the norewgian curves ( for\nreasons of liquidity , etc ) . we have decided that nbp and cinergy are the\nbest curves available at this time .\nthe spreadsheet which is utilized in the uk also has curves mapped to a\n2 - 3 - year old set of factors derived from us nat gas , which is clearly not\noptimal . hence\n( 1 ) we should be using risktrac numbers for var , as it is the \" most\naccurate \" , both in terms of ene - wide model usage and in terms of the most\nrecent updated data . ever since uk power came on board in risktrac 3 weeks\nago , the uk power number has been consistently 7 - 8 mm above the numbers in\nyour spreadsheet . this difference is to be ecpected , given the different\ninputs .\n( 2 ) the consistent numbers do not point to a data error in any obvious way ,\nhowever , if you believe that positions are not captured correctly , please let\nour it staff know that .\n( 3 ) checks which ramesh has done indicate that positions are tying in .\nhowever , as you know , there could be disconnects with enpower , etc .\nin any event , it would be ideal and optimal to have all the simulations run\nout of risktrac for reasons of aggregation and analysis .\nyour help is appreciated .\nregards\nnaveen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.546+0000", "entityId": 9278, "properties": {"text": "Subject: re : grant masson\ngreat news . lets get this moving along . sheila , can you work out offer letter ?\nvince , i am in london monday / tuesday , back weds late . i ' ll ask sheila to fix\nthis for you and if you need me call me on my cell phone .\nvince j kaminski\n12 / 15 / 2000 09 : 50 am\nto : david oxley / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : grant masson\ndavid ,\na follow - up on my voice - mail message regarding\ngrant .\ndave delainey is on board regarding grant .\nwe can bring him back at the same level and comp ,\nassuming that resignation was handled\nin a professional manner .\ndd asked me to work out the details with you . can we meet to talk\nabout it on monday ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.551+0000", "entityId": 9279, "properties": {"text": "Subject: a few loose ends\nnorma ,\nthanks for your mesage .\n1 . i shall ask krishna to reduce his rollover to 40 hrs .\n2 . any resolution on bonus for lance ( october 2 nd start ) ?\nanita dupont is in the same situation .\n3 . can you send me a copy of exit interview for grant masson ?\nthere is a special reason i need and i shall explain it to you in\nperson .\n4 . what time next week would be good for lunch ? i would be glad\nto invite you molly and ramona . what about friday the 22 nd ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.555+0000", "entityId": 9280, "properties": {"text": "Subject: the delivery of the equipment you ordered is scheduled .\n- - - automatic notification system ( request # : ecth - 4 rstt 6 )\nrequested for : vince j kaminski\nrequested by : shirley crenshaw\nyour order ( see below ) has been assigned to felix buitron . technician will\ncontact you for information and delivery time . please contact the technician\nif you have any question .\nen 6600 128 mb installed in desktop\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.561+0000", "entityId": 9281, "properties": {"text": "Subject: just fyi\nvince ,\nplease see below some of the ideas being bounced , fyi . please keep this\nconfidential .\nthe unused capacity in maharashtra should be dispatched on a merchant basis ,\non behalf of mseb to any customers outside mseb ' s current purview . i would\nlike us to look at the whole issue as one of mseb ' s poor credit , and hence (\nas jeff pointed out on the call ) , one where we need to identify all deep\npockets in and out of maharashtra .\nsecondly , there is ( as shubh and i had pointed out ) the ability to evacuate\nabout 700 - 1000 mw to customers other than mseb . the challege is - at what\nprice , and in coordination with which agencies . as always , in india your\ngreatest challenge will be in dealing with govt . agencies .\nanother point to consider is that in - all we have about 5 - 7 customers\nidentified . will all the customers we have earmarked bite ? ? ? this is the\nreason why systems need to be set up with a bulletin board on pricing 10 - 15\nday power on the screens of the different sebs we can connect up with . this\nalso substantially gets around the credit quality issue , as this would be an\narrangement akin to cash - and - carry . i see a lot of hope for such a\nstrategy . i do not see much hope for a strategy of selling blocks of power\nto either ntpc or ptc . i would agree however , that we not put all our eggs\nin one basket , and hence you could designate a team to look into the ntpc\nsale issue inparallel .\nin order to set up the trading sytems , however , we need to start by the end\nof ql 2001 , and just start doing small deals where we break even , simply to\ntest the waters and introduce liquidity into the market .\nhand - in - hand with this we need a fuel risk management strategy , as i have\nbeen pushing for . for this to happen , we need to get the special import\nlicence reinstated . if that is not possible , we need to lobby with the\nhighest authorities within govt . and rbi to allow for hedging , irrespective\nof whether we have an sil . the discussions being held with ioc are therefore\nvery important in this regard , and i am going to get anshuman and mukesh\ninvolved with the same .\nfinally , i do not see much hope for your strategy of asking ene management\nfor $ 75 million to build transmission lines in a country where the regulatory\nframework on transmission access is even less defined and understood than the\ngeneration side of the equation . i would refrain from stating this in any\nsenior management forum until we are able to clearly demonstrate the\ncost - benefit of this . i have some ideas on that side which i need to develop\nfurther .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.566+0000", "entityId": 9282, "properties": {"text": "Subject: dpc memo\nvince ,\ni am in houston ( rrived satruday ) , and will be in office on monday ( though\nofficially , i am on vacation ) . would like to catch up with you if possible .\nit looks like your team will be getting involved in some form on the dpc\nside . i have already made a recommendation to wade .\ni am attaching a small memo that i have addressed to wade on the dpc position\nand possible workout . this is still a draft and will likely get shared later\nwith others . i would love to get your comments on the same . at the same\ntime , this also will give you some idea of the problem , in conjunction with\nthe other plan presentation i had sent you .\nlook forward to touching base with you .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.571+0000", "entityId": 9283, "properties": {"text": "Subject: re : arthur andersen model validation request\ngilian ,\nno , we don ' t additional need more data . i understand stinson gibner has\nalready sent you a reply with\nhis findings .\nvince\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : arthur andersen model validation request\nvince ,\nwas the data we provided sufficient to determine whether the global markets\nbook administrator correctly utilized the spread option model ? please let me\nknow if there are any additional data requirements .\nthank you again for your assistance .\ngillian boyer\nx 30968\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gillian boyer / aa / corp / enron on 12 / 18 / 2000\n01 : 39 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngillian boyer\n11 / 27 / 2000 10 : 25 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : arthur andersen model validation request\nvince ,\nour goal is to validate that the enron global market book\nadministrators are accurately using the \" spread option model \" as developed by\nthe research group . to determine this , we would like to provide you with\nthe inputs for a particular deal ( as provided by a global markets book\nadministrator ) and have you recalculate the deal value . we will then\ncompare your results to the values calculated by global markets .\ntwo koch deals have been chosen due to their substantial p / l effect . i have\nattached the deal data in two forms : ( 1 ) the spread option model that kara\nboudreau , book administrator egm , provided and ( 2 ) an excel spreadsheet that\nisolates the 2 deals .\nif there is anything more that we could provide , please don ' t hesitate to\ncall me at x 30968 .\nthank you so much for all of your help .\ngillian\n1 .\n2 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.575+0000", "entityId": 9284, "properties": {"text": "Subject: re : arthur andersen model validation request\nyes , i sent a reply to gillian .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.580+0000", "entityId": 9285, "properties": {"text": "Subject: research\nmike ,\nvince and i are eager to see if our group can play a role in helping you in\nyour development work using some combination of the or experts in our group\nand the resources to which we have access at stanford .\ncan we get together for a short planning session when you are next in\nhouston ? please let me know your schedule , or have your assistant coordinate\na time with vince ' s assistant , shirley crenshaw ( x 35290 ) .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.585+0000", "entityId": 9286, "properties": {"text": "Subject: re : dabhol power\njim ,\ncan you meet with us tomorrow ? one of my associates worked\non a few projects with dpc and will visit them in january . his name is\nkrishnarao\npinnnamaneni and he will be gone for 3 weeks , starting wednesday\nplease , let shirley crenshaw , my assistant ( 3 - 5290 ) , know what time would\nwork for you tuesday .\nvince\njames a hughes @ enron _ development\n12 / 18 / 2000 01 : 07 pm\nto : vince j kaminski @ ect\ncc :\nsubject : dabhol power\nvince :\nas i am sure you are aware , we are facing significant challenges with the\ndabhol project . as i have delved into the project and our problems , i have\nbeen disturbed by our lack of information / data relative to our position in\nthe grid and the overall fundamentals for the region . i would like to meet\nwith you and get your assistance in identifying some resources to try and\nhelp the india team develop a better understanding of their market and how to\nidentify / develop / use the fundamentals .\nthanks .\njim", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.590+0000", "entityId": 9287, "properties": {"text": "Subject: alliance info alert : richardson and ferc orders\ndear generation / power marketing executive :\nthe following are summaries of two significant activities that occurred\nfriday , december 15\n1 . energy secretary richardson issuance of an emergency order .\n( richardson ' s statement and fpa section 202 ( c ) order is posted on doe ' s\nweb site at :\nhttp : / / www . energy . gov / hqpress / releaseso 0 / decpr / pro 0309 . html )\n2 . ferc ' s 12 / 15 / 00 final order to fix california wholesale markets\n( ferc ' s order can be viewed at\ncalifornia supplies ordered by richardson\no richardson orders listed entities to supply excess power to california iso\no order is effective as soon as iso certifies shortage , but ends 12 / 21 / 00 ,\nunless extended\no prices to be agreed to by supplier and iso , or ferc will set rate later\no fpa emergency power authority transferred to doe in 1977\nas he said he would on december 13 , u . s . department of energy secretary bill\nrichardson found \" an emergency exists in california by reason of the shortage\nof electric energy \" and issued an emergency order under section 202 ( c ) of\nthe federal power act ( fpa ) requiring listed generators and marketers to\nprovide any power in excess of the needs of their firm customers to the\ncalifornia iso . in a statement , richardson said the threat to the\nreliability of the california grid requires a long - term solution , but that in\nthe short - term power must keep flowing to the state to avert blackouts .\nthe 76 listed suppliers have 12 hours after the iso certifies to doe that it\nhas been unable to acquire adequate supplies in the market to begin providing\nrequested service to the iso . the iso must inform each supplier subject to\nthe order of the amount and type of energy or services required by 9 : 00 pm ,\neastern standard time , the day before the services are needed . the order\ndirects the iso to allocate , to the extent feasible , requested services among\nsubject entities in proportion to each supplier ' s available excess power .\nthe order is effective immediately and will terminate at 3 : 00 am , eastern\ntime , december 21 , 2000 , unless extended . to continue to obtain supplies\nunder this emergency authority , the iso must re - certify the shortage to doe\nheadquarters every 24 hours .\nthe terms of the provision of electric energy and other services by suppliers\nto the iso \" are to be agreed to by the parties . \" if no agreement is reached ,\nthen under the fpa ' s emergency authority secretary richardson \" will\nimmediately prescribe the conditions of service and refer the rate issue to\nthe federal energy regulatory commission for a determination at a later date\nby that agency in accordance with its standards and procedures , and will\nprescribe by supplemental order such rates as it finds to be just and\nreasonable . \" the authority of ferc to set rates for power supplied under\nemergency order at just and reasonable levels where the parties themselves do\nnot agree to a rate is explicitly included in fpa section 202 ( c ) . the doe\norganization act of 1997 transferred the emergency powers of this section\nfrom ferc to doe .\nthe 76 entities identified in the order ' s attachment are all the entities\nthat have provided power to the iso over the last 30 days . those entities\nare ordered \" to make arrangements to generate , deliver , interchange , and\ntransmit electric energy when , as , and in such amounts as may be requested by\nthe \" iso , \" acting as agent for and on behalf of scheduling coordinators . \"\n[ source : doe secretary richardson ' s december 14 , 2000 statement and order ;\nelectric power daily , december 15 , 2000 ]\nferc de - federalizes california markets , adopts other structural\nreforms\na summary of the december 15 order and commission discussion\nat its special meeting today , ferc unanimously approved its eagerly awaited\nfinal order reforming the california wholesale markets , adopting the major\noutlines of its november 1 proposed order and sending back to california the\nresponsibility for addressing state - related matters , as discussed below . at\nthe same time , ferc deferred consideration of retroactive refund issues as\nwell as the imposition of region - wide price caps .\nferc reiterated the november 1 conclusions that under certain circumstances ,\ncalifornia ratepayers were subjected to unjust and unreasonable power rates\ndue to california ' s \" seriously flawed \" market structure and rules in\nconjunction with tight demand and supply conditions throughout the west .\nwhile all four commissioners supported the order as a consensus - based outcome\nthat appropriately balanced all competing interests , each commissioner\nexpressed reservations with particular aspects of the order . chairman\nhoecker and comm . breathitt expressed the strongest endorsement , while comms .\nhebert and massey laid out their positions where they believed the commission\nhad either \" over - reached \" or not gone far enough , just as they did on\nnovember 1 , as discussed below .\nhighlights of key actions :\n( 1 ) ferc adopted the november 1 proposal to eliminate , effective immediately ,\nthe state ' s mandatory requirement that the state ' s investor - owned utilities\nbuy and sell electricity through the px , and allow these utilities to\npurchase electricity through forward contracts and other alternative\nmechanisms to manage supply risks . ferc terminated the px ' s rate schedules\neffective at the close of business on april 30 , 2001 . in effect , as chairman\nhoecker stated , the order de - federalizes 60 percent of the california\nwholesale market established under the state ' s restructuring law , returning\nratemaking authority over company - owned generation to the california public\nutilities commission ( cpuc ) .\n( 2 ) ferc modified the effective period of the november 1 $ 150 / mwh \" soft cap \"\nproposal , limiting its application through april 2001 , whereupon a\n\" comprehensive and systematic monitoring and mitigation program which\nincorporates appropriate thresholds , screen and mitigation measures \" must be\nin place . in a related move , ferc ordered a technical conference early next\nyear to develop such a program by march 1 , 2001 , so that these measures can\nbe place by the may 1 , deadline .\nin a major modification , ferc revised the refund conditions to clarify that\nwhile certain refund conditions will continue to apply , unless ferc issues\nwritten notification to the seller that its transaction is still under\nreview , refund potential on a transaction will close after 60 days .\nas proposed , however , supply bids in excess of $ 150 will be prohibited from\nsetting the market - clearing price for all bidders and sellers bidding above\n$ 150 / mwh will be required to report their bids to ferc on a confidential ,\nweekly basis and provide certain cost support .\n( 3 ) ferc adopted the november 1 proposal to require the establishment of\nindependent , non - stakeholder governing board for the iso . the iso governing\nboard must relinquish their decision - making power and operating control to\nthe iso management on january 29 , 2001 . a future order will set procedures\nfor discussion with state representatives on the board selection process .\n( 4 ) in a major modification , ferc adopted a $ 74 / mwh \" price benchmark \" for\nassessing prices of five - year energy supply contracts . this benchmark will\nbe used in assessing any complaints regarding justness and reasonableness of\npricing long - term contracts .\nto facilitate prompt negotiation of longer term power contracts at reasonable\nrates , ferc announced that it will hold a settlement conference with market\nparticipants .\n( 5 ) ferc adopted the november 1 proposal to require market participants to\nschedule 95 percent of their transactions in the day - ahead market and\ninstituting a penalty charge for under - scheduling ( in excess of five percent\nof hourly load requirements ) , in order to discourage over - reliance on the\nreal - time spot market .\n( 6 ) ferc directed the iso and the three investor - owned utilities to file\ngeneration interconnection standards .\n( 7 ) ferc affirmed the longer - term measures proposed in the november 1 order ,\nincluding submission of a congestion management design proposal by april 2 ,\n2001 .\n( 8 ) ferc deferred resolving key issues , including establishing new iso board\nselection procedures , developing appropriate market monitoring measures and\nnegotiating protective orders associated with data collection .\n( 9 ) ferc reiterated its november 1 call to california policy makers there to\nresolve state issues , such as : ( 1 ) immediately implementing the availability\nof day ahead markets for power purchases ; ( 2 ) development of demand\nresponses ; ( 3 ) siting of generation and transmission ; and ( 4 ) assurance of\nsufficient reserve requirements .\ncommissioner responses\ncomm . hebert reluctantly concurred , calling the final order a \" missed\nopportunity \" to , among other things , send appropriate signals for new\ngeneration siting and conservation . reiterating his november 1 concerns ,\nhebert recounted the remedial remedies that he maintained the commission\nshould and should not have adopted . while expressing pleasure at the tone of\nthe order ( \" balanced and considerate \" ) , the bid certainly reversal , and the\nrole reserved for the state in the selection of the new iso board , hebert\nnonetheless objected to the benchmark prices established in the order , which\nhe maintained appeared to be unreasonably low . hebert faulted the commission\nfor not attempting to reconcile the instant order with the november 8 order\napproving the ca iso ' s emergency $ 250 / mwh \" soft cap \" proposal . hebert ended\nby challenging the cpuc to do what it can to encourage utilities there to\nforward contract , including easing the existing prudence review requirements .\ncomm . breathitt endorsed the order , reiterating her support for progress\ntowards open and competitive markets . she noted that the order properly\n\" walked the line \" by taking all of the competing interests into account ,\ncalling it less than ideal , but a step in the right direction . she also\nconcentrated her remarks on the importance of creating stability which will\nbe accomplished by encouraging long term contracts and the implementation of\nthe $ 150 / mwh breakpoint . additionally she mentioned that any price below the\n$ 74 / mwh benchmark will be presumed just and reasonable .\ncomm . massey concurred , but prefaced his remarks by expressing sympathy for\ncalifornia ratepayers , stating that he felt that market power had been\nexercised , that prices were not just and reasonable and that the marketers\nhad profited too much at the expense of others in the market . he warned\nthat , as he understood the legal precedents , the federal courts were poised\nto grant cost recovery relief to the retailers which would then be passed on\nto consumers . on the positive side , he approved of the de - federalization of\n60 % of the market and the creation of long term contracts . however , he\nemphasized that california regulators must now take the responsibility of\ncreating more generation and transmission . in the long term , comm . massey\nhoped that solutions could be reached starting with a technical conference\nand that the market would have rules more like pjm .\nfinally , comm . massey articulated what he would have liked to have done\ndifferently . he stated that he disagreed with the fact that there is not\nenough evidence to show that market power existed and he pointed to the\non - going investigation . he also disagreed with the $ 150 / mwh breakpoint ,\npreferring instead a hard price per generator . the commissioner said he\nwould have set the long term benchmark for only two years instead of five and\nthat he would have opened a section 206 investigation in the west . finally ,\nhe stated that he would have liked to address the issue of refunds .\nchairman hoecker began his comments by saying that the commission was forced\nto act and act quickly because the stakes are so high . he feels that it is\nnow time for the state regulators and markets to act . he noted that by\nshrinking the cal px , the responsibility is now with the cpuc to fashion the\nlong term contracts and that hopefully we will exit this situation with the\nleast amount of damage to the utilities . in regards to suggestions for a\nregional price cap , the chairman stated that this would not work due to the\nfact that the commission has no jurisdiction over bonneville , wapa and the\npublic power producers and that there is no spot market in the northwest .\nhowever , he did urge secretary richardson to convene a conference in order to\naddress regional issues . finally , in conceptually addressing the california\nsituation , the chairman stated that competition or \" deregulation \" did not\nfail in california , but that there never was competition in california .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.595+0000", "entityId": 9288, "properties": {"text": "Subject: my coordinates\ntest message\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.600+0000", "entityId": 9289, "properties": {"text": "Subject: followup\npatricia ,\ni have forwarded your resume along with an introductory note to kerry\ncooper , don fraser , and malcom richards of the a & m finance department .\nplease give them a phone call and tell them that i suggested you call .\nthey are all very nice folks and would be happy to help you i am sure .\ngood luck ,\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.604+0000", "entityId": 9290, "properties": {"text": "Subject: re : lost cell telephone\nthanks !\nchris samaniego on 12 / 18 / 2000 03 : 06 : 09 pm\nto : \" ' shirley . crenshaw @ enron . com ' \" , enron\ncc :\nsubject : re : lost cell telephone\nrequest completed .\nchris samaniego\naccount associate\nhouston cellular corporate accounts\npetrochemical vertical\n( 713 ) 562 - 2995 cellular\n( 713 ) 345 - 7183 enron direct\n( 713 ) 646 - 2415 fax\nenron @ houstoncellular . com e - mail\nsamaniec @ houstoncellular . com e - mail\nsamaniec @ bellsouthips . com interactive pager\n> - - - - - original message - - - - -\n> from : shirley . crenshaw @ enron . com [ smtp : shirley . crenshaw @ enron . com ]\n> sent : monday , december 18 , 2000 2 : 19 pm\n> to : enron\n> subject : lost cell telephone\n>\n> hello :\n>\n> vince kaminski left his cell phone on the bus last friday . he has\n> contacted\n> the bus line , but the person in charge of the lost and found is not in the\n> office today .\n>\n> if there any way that we can put a hold on this telephone until he can see\n> whether it has been turned in or not ?\n>\n> the cell # is : 713 / 410 - 5396 and the account # is : 88563580 .\n>\n> please let me know as soon as possible .\n>\n> thanks !\n>\n> shirley crenshaw\n> 3 - 5290\n> ebl 961\n> shirley . crenshaw @ enron . com\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.609+0000", "entityId": 9291, "properties": {"text": "Subject: sheila ,\ngran ' t number : ( 281 ) 381 9987 .\nthis is his cell phone number .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.615+0000", "entityId": 9292, "properties": {"text": "Subject: wti simulation model 30 , 000 bbl / trade\njohn ,\nattached are updated results of zimin ' s model assuming each trade is on a\ntotal notional of 30 , 000 bbls . note that i have re - scaled the results to be\nin $ mm .\n- - stinson\nopen - close prices continuous prices", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.620+0000", "entityId": 9293, "properties": {"text": "Subject: carnegie mellon candidates\nkristin :\nwe are sending the interview request form information to molly magee to\nbring the following two candidates in for interviews :\nfrank ( feng ) qian\npunit rawal\nwe have no further interest in the following two candidates . do you handle\ncontacting them ?\nheap - ho tan\nkyubaek heo\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.625+0000", "entityId": 9294, "properties": {"text": "Subject: re : iris mack\nlet me see what we can work out , vince , and we ' ll get back to you .\nmolly\nvince j kaminski\n12 / 18 / 2000 01 : 46 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : iris mack\nmolly ,\nthis is the list of people we can ask to interview iris .\ni would include one ( or possibly more ) people from each group below ,\ndepending on availability .\n1 . debbie brackett or bill bradford\n2 . ted murphy , bjorn hagelman or david port\n3 . mark tawney or joe hrgovcic\n4 . greg whalley or louise kitchen\ni shall send a message to them explaining that we try to identify the best\nfit for a good\ncandidate .\nvince\nenron north america corp .\nfrom : molly magee 12 / 18 / 2000 11 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : iris mack\niris would like to come on thursday , 12 / 28 / 2000 , to visit with you and your\ngroup . she will be in new orleans , and will just fly in for the day .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.629+0000", "entityId": 9295, "properties": {"text": "Subject: re : iris mack\nmolly ,\nthis is the list of people we can ask to interview iris .\ni would include one ( or possibly more ) people from each group below ,\ndepending on availability .\n1 . debbie brackett or bill bradford\n2 . ted murphy , bjorn hagelman or david port\n3 . mark tawney or joe hrgovcic\n4 . greg whalley or louise kitchen\ni shall send a message to them explaining that we try to identify the best\nfit for a good\ncandidate .\nvince\nenron north america corp .\nfrom : molly magee 12 / 18 / 2000 11 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : iris mack\niris would like to come on thursday , 12 / 28 / 2000 , to visit with you and your\ngroup . she will be in new orleans , and will just fly in for the day .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.634+0000", "entityId": 9296, "properties": {"text": "Subject: wharton collaborative research\nhere is a short note on potential research with wharton . please review and\nedit and then we can send some indication to the wharton guys . - - - - - - - - - -\nthe objective would be to define the amount of risk an enterprise can take ,\nand the difference between this and the actual amount of risk the enterprise\nchooses to take based on the capital structure and reporting structure . in\nparticular , one can view enron as a hierarchy of companies , and assuming we\ncan separately quantify the risks of each unit , what framework would one use\nto analyze risk at enron ?\na related question is how one should represent risks in the different\nunits ? risks may be of different types - - - short - term volatility risk ,\ncatastrophic risk , liquidity risk , etc - - - what should one focus on for a\nfirst cut ?\nanother related question is to decide on the optimal amount of insurance\nboth at the unit level and the enterprise level , and relate the decision to\nget insurance to the cost / benefit of insurance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.639+0000", "entityId": 9297, "properties": {"text": "Subject: houston trip\nvasant ,\nso sorry for the name mix up . . . it is you , not \" vance \" , another guy on my pr\nteam , who is to be included in this . . . so sorry . . i ' d just gotten off the phone\nwith \" vance \" before i wrote this . i ' m writing this from\n\" vacation - day - at - my - house \" . . which i can tell , the \" vacation \" part , i should\nstart taking literally !\nhappy holidays !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 12 / 18 / 2000\n02 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristie patrick\n12 / 18 / 2000 02 : 45 pm\nto : fap @ enron , melinda\nmccarty / corp / enron @ enron , cindy derecskey / corp / enron @ enron , michael b\nrosen / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc : clay degiacinto @ enron , deepa\nmallik @ enron , dennis feerick\n@ enron , edson otani\n@ enron , gustavo palazzi\n@ enron , \" heather n . thorne ( e - mail ) \"\n@ enron , jack rejtman\n@ enron , jaideep singh\n@ enron , jason cummins\n@ enron , joshua leventhal\n@ enron , kim whitsel\n@ enron , \" louis a thomas ( e - mail ) \"\n@ enron , murat camoglu\n@ enron , nick levitt\n@ enron , omar bassel\n@ enron , pat henahan\n@ enron , ram vittal\n@ enron , steve lessar\n@ enron , tulika bhalla\n@ enron , vincent chen\n@ enron , weigelt\n@ enron , fap\n@ enron , \" ' christie . patrick @ enron . com ' \"\n@ enron , \" ' vkamins @ enron . com ' \"\n@ enron , piazze @ wharton . upenn . edu\nsubject : houston trip\nhello everyone !\nregarding the tiger team research project houston trip , these are the rsvp ' s\ni ' ve received :\njaideep singh\ndennis feerick\nkim whitsel \" and team 1 \"\nram vittal\nheather thorne\npat henahan\nvincent chen\njack rejtman\ndeepa mallik\njosh leventhal\nedson otani\nomar bassal\nstephen lessar\nclayton dediocinto .\nnote : heather and jack have requested to stay in houston until sunday\n( expenses other than air fare , beyonfd friday at enron will be individually\nborne ) .\ndonna ,\nwould you please review this list , add the individual names of \" team # 1 ) ,\nadd any additional faculty , t . a . ' s etc , that will be attending , and returnm\nthis list to me and my assistant , \" melinda mccarty \" who will begin the\narrangements . also , if others would prefer sunday returns to phily , on the\nsame terms offered heather and jack , please so indicate no later than\ntuesday , dec . 20 . please inform donna , who will then prepare and forward to\nme and my assistant melinda ( e - mail address above ) one complete , confirmed\nlist of attendees . the plan will be to leave phily on thurs afternoon ,\narrive late aft thursday , dinner at churrasco ' s south america restaurant\nthursday evening with me , vince , vance , jeff shankman , and possibly a few\nothers from enron .\nhotel thursday evening and ground transportation through return to airport\nwill be arranged by enron .\nfriday will be reserved for an enron tour , and individual meetings the teams\nwould like to set up with members from variuous business units\nreturn will be scheduled for early fri evening , except for those electing to\nstay through sunday . again , except for return to airport and airfare ,\nexpenses beyond friday afternoon will be borne by each respective student\n( though we encourage you to stay and look around this great city of houston ! ) .\nthanks donna , for your immediate assistance with this - - vinve , vance , jeff and\ni are excited about the trip ! !\nregards !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.644+0000", "entityId": 9298, "properties": {"text": "Subject: houston trip\nhello everyone !\nregarding the tiger team research project houston trip , these are the rsvp ' s\ni ' ve received :\njaideep singh\ndennis feerick\nkim whitsel \" and team 1 \"\nram vittal\nheather thorne\npat henahan\nvincent chen\njack rejtman\ndeepa mallik\njosh leventhal\nedson otani\nomar bassal\nstephen lessar\nclayton dediocinto .\nnote : heather and jack have requested to stay in houston until sunday\n( expenses other than air fare , beyonfd friday at enron will be individually\nborne ) .\ndonna ,\nwould you please review this list , add the individual names of \" team # 1 ) ,\nadd any additional faculty , t . a . ' s etc , that will be attending , and returnm\nthis list to me and my assistant , \" melinda mccarty \" who will begin the\narrangements . also , if others would prefer sunday returns to phily , on the\nsame terms offered heather and jack , please so indicate no later than\ntuesday , dec . 20 . please inform donna , who will then prepare and forward to\nme and my assistant melinda ( e - mail address above ) one complete , confirmed\nlist of attendees . the plan will be to leave phily on thurs afternoon ,\narrive late aft thursday , dinner at churrasco ' s south america restaurant\nthursday evening with me , vince , vance , jeff shankman , and possibly a few\nothers from enron .\nhotel thursday evening and ground transportation through return to airport\nwill be arranged by enron .\nfriday will be reserved for an enron tour , and individual meetings the teams\nwould like to set up with members from variuous business units\nreturn will be scheduled for early fri evening , except for those electing to\nstay through sunday . again , except for return to airport and airfare ,\nexpenses beyond friday afternoon will be borne by each respective student\n( though we encourage you to stay and look around this great city of houston ! ) .\nthanks donna , for your immediate assistance with this - - vinve , vance , jeff and\ni are excited about the trip ! !\nregards !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.649+0000", "entityId": 9299, "properties": {"text": "Subject: re : holiday greeting from jerry wind\n- holiday , revisionl . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.654+0000", "entityId": 9300, "properties": {"text": "Subject: re : wharton dinner 1 / 18 / 01\njennifer ,\nthanks for your note ! as these trip details get more formalized , i ' ll keep\nyopu copied . for now , know that there are approximately 18 wharton students\nparticipating in 3 research projects - - enron proposed topics - - called the\n\" tiger program \" . they ' ll be visiting enron , arriving houston thursday the\n18 th , dinner at churrasco ' s ( their choice ) on the 18 th , enron meetings on the\n19 th .\nas the details unfold , i ' ll keep you and jeff copied .\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.660+0000", "entityId": 9301, "properties": {"text": "Subject: re : thursday visit\nfrank ,\nwe shall have about 30 people , highly technical ( ph . d . , m . s . level ) .\na presentation of 45 minutes would be optimal , assuming you may arrive\naround 11 : 45 - 12 : 00 .\nwe shall get the projector for you .\nplease , keep all the receipts for refund .\nvince\n\" francis x . diebold \" on 12 / 18 / 2000 09 : 47 : 16 am\nto : vince . j . kaminski @ enron . com\ncc : shirley . crenshaw @ enron . com\nsubject : re : thursday visit\nexcellent , vince ! yes , i will be happy to make a presentation . do you have a\nprojector to which i could simply hook up my laptop ? could we also have an\noverhead projector as a backup ? many thanks , frank\np . s . how long is optimal ? how large an audience and what are the\nparticipants ' backgrounds ?\nvince . j . kaminski @ enron . com wrote :\n> frank ,\n>\n> we are located at 1400 smith . any cab driver can identify the enron\n> building . when you arrive ,\n> please , call me at 3 - 3848 from the reception to be admitted into the\n> building .\n>\n> alternative phone numbers : 3 - 5290 ( my assistant shirley crenshaw ) . you can\n> also try to call me on\n> my cell phone : 713 898 9960 .\n>\n> the research group meeting starts at 11 : 30 and lasts till 1 : 00 . can you\n> make a presentation\n> about your research projects ? what audio / video equipment do you need ? what\n> sandwich would\n> you like to have for lunch ?\n>\n> we shall make a hotel reservation for you thursday night .\n>\n> vince\n>\n> \" francis x . diebold \" on 12 / 18 / 2000 07 : 02 : 46 am\n>\n> to : vince kaminski\n> cc : bmierts @ enron . com\n> subject : thursday visit\n>\n> hi vince , looking forward to seeing you thursday . i arrive at houston - bush\n> on usair 1769 at 10 : 55 am . please let me know where to go . i also want to\n> verify that you have booked me a hotel for thurs night . many thanks , and\n> see you soon , frank\n>\n> - -\n> francis x . diebold\n> wp carey professor\n>\n> department of economics\n> university of pennsylvania\n> 3718 locust walk\n> philadelphia , pa 19104 - 6297\n>\n> fdiebold @ sas . upenn . edu\n> http : / / www . ssc . upenn . edu / ~ diebold\n>\n> ( 215 ) 898 - 1507 telephone\n> ( 215 ) 573 - 4217 fax\n- -\nfrancis x . diebold\nwp carey professor\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 telephone\n( 215 ) 573 - 4217 fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.665+0000", "entityId": 9302, "properties": {"text": "Subject: re : thursday visit\ngood morning frank :\nreservations have been made for you at the doubletree hotel , downtown\nhouston ( allen center ) . the confirmation # is : 87948774 . the hotel\ntelephone no . is : 713 / 759 - 0202 .\nsee you on thursday and have a safe trip .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research\n713 / 853 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 18 / 2000\n08 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n12 / 18 / 2000 08 : 27 am\nto : \" francis x . diebold \" @ enron\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : thursday visit\nfrank ,\nwe are located at 1400 smith . any cab driver can identify the enron building .\nwhen you arrive ,\nplease , call me at 3 - 3848 from the reception to be admitted into the\nbuilding .\nalternative phone numbers : 3 - 5290 ( my assistant shirley crenshaw ) . you can\nalso try to call me on\nmy cell phone : 713 898 9960 .\nthe research group meeting starts at 11 : 30 and lasts till 1 : 00 . can you make\na presentation\nabout your research projects ? what audio / video equipment do you need ? what\nsandwich would\nyou like to have for lunch ?\nwe shall make a hotel reservation for you thursday night .\nvince\n\" francis x . diebold \" on 12 / 18 / 2000 07 : 02 : 46 am\nto : vince kaminski\ncc : bmierts @ enron . com\nsubject : thursday visit\nhi vince , looking forward to seeing you thursday . ? i arrive at houston - bush\non usair 1769 at 10 : 55 am . ? please let me know where to go . ? i also want to\nverify that you have booked me a hotel ? for thurs night . ? many thanks , and\nsee you soon , frank\n- -\nfrancis x . diebold\nwp carey professor\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 ? telephone\n( 215 ) 573 - 4217 ? fax\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.670+0000", "entityId": 9303, "properties": {"text": "Subject: re : thursday visit\nfrank ,\nwe are located at 1400 smith . any cab driver can identify the enron building .\nwhen you arrive ,\nplease , call me at 3 - 3848 from the reception to be admitted into the\nbuilding .\nalternative phone numbers : 3 - 5290 ( my assistant shirley crenshaw ) . you can\nalso try to call me on\nmy cell phone : 713 898 9960 .\nthe research group meeting starts at 11 : 30 and lasts till 1 : 00 . can you make\na presentation\nabout your research projects ? what audio / video equipment do you need ? what\nsandwich would\nyou like to have for lunch ?\nwe shall make a hotel reservation for you thursday night .\nvince\n\" francis x . diebold \" on 12 / 18 / 2000 07 : 02 : 46 am\nto : vince kaminski\ncc : bmierts @ enron . com\nsubject : thursday visit\nhi vince , looking forward to seeing you thursday . ? i arrive at houston - bush\non usair 1769 at 10 : 55 am . ? please let me know where to go . ? i also want to\nverify that you have booked me a hotel ? for thurs night . ? many thanks , and\nsee you soon , frank\n- -\nfrancis x . diebold\nwp carey professor\ndepartment of economics\nuniversity of pennsylvania\n3718 locust walk\nphiladelphia , pa 19104 - 6297\nfdiebold @ sas . upenn . edu\nhttp : / / www . ssc . upenn . edu / ~ diebold\n( 215 ) 898 - 1507 ? telephone\n( 215 ) 573 - 4217 ? fax\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.675+0000", "entityId": 9304, "properties": {"text": "Subject: agenda\nchristian -\ni was thinking that your expertise in grads and grib formats will help\nenron to obtain\na competitive edge over our competitors . development of the grads\nvisualization tool\nwill allow our international offices to obtain the mrf ( medium range forecast\nmodel ) data first ,\nwithout being dependant of internet sources . additionally , i think that we\ncould obtain\nmrf ensemble data via the same sources as well .\ncan we include in the agenda the development of these tools ?\njose marquez", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.683+0000", "entityId": 9305, "properties": {"text": "Subject: re : agenda for houston visit\nchristian ,\ngood news\nvince has approved getting a corporate apartment for your stay\nplease forward your finalized arrival date and extent of stay and i will\ncoordinate\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.690+0000", "entityId": 9306, "properties": {"text": "Subject: ebs\nstinson ,\nthe spreadsheet below shows the allocations i made for ebs .\nthe numbers in magenta show percentage allocations ,\nof course , samir and samer are gone , ad so is roman .\nthe problem is that once i give the percentages to accounting they become\nfixed for one year .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.696+0000", "entityId": 9307, "properties": {"text": "Subject: rollover of my vacation days to 2001\nvince & shirley :\nhere are the details about my remaining 2000 vacation and their use :\nvacation currently available now : 136\nnext week 3 days ( dec 27 - 29 ) 24\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvacation remaining on 31 - dec : 112\nofficially rolled over to 2001 : 40\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nunused 2000 vacation : 72\nthanks ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n12 / 18 / 2000 02 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npinnamaneni krishnarao\n12 / 11 / 2000 06 : 28 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : rollover of my vacation days to 2001\nvince :\ni would like to rollover my vacation days for 2000 remaining at the end of\nthis year to 2001 . i could not use us all of my available vacation this year\nbecause of the following reasons :\n1 . as you know , i have been supporting three business units ( ees , epg & enron\nindia ) this year . all these units had difficult and relatively long projects\nthat required experience in energy markets , derivatives pricing and business\nknowledge that i had gained over the last few years at enron .\n2 . there has been a significant change in the team members reporting to me . i\nnow have six people under me compared to only three at the begin of the year .\nof the current six members , five joined us only this year and most of them\ndidn ' t have any prior work experience , thus requiring a lot of my time in\nrecruiting , training and mentoring .\n3 . given that i had to visit our bombay office in january , 2000 for a\nbusiness trip ( 10 days ) and will need to go there again in january , 2001 , i\ncould not take leave from my work for the other two units ( ees & epg ) for an\nextended period of time .\nso , in summary , this year has been a long and challenging one , and as a\nresult , i could not take vacation for more than a few days . i request you to\ngrant the rollover of my remaining vacation to next year .\ncurrently i have 136 hours of vacation available and , of these , i expect to\nhave 112 hours unused at the end of this year .\nthank you ,\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.701+0000", "entityId": 9308, "properties": {"text": "Subject: sandeep kohli\ndave ,\ni would like to recommend to you sandeep kohli who is likely to approach you\nregarding a\nposition in your area .\ni have been working with sandeep for a number of years and i was always\nimpressed with his\nskills , intelligence and mature , thoughtful approach to solving business\nproblems .\nhe is currently located in india ( our dpc unit ) and is looking for a\npermanent position with enron in houston\nfor family reasons ( his wife is from houston and has a family here ) . of\ncourse , there are\nsome other obvious factors affecting his decision .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.705+0000", "entityId": 9309, "properties": {"text": "Subject: new pc with two 128 mb of ram\nshirley ,\nis this an upgrade for maureen ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 18 / 2000\n03 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : felix buitron jr . / enron @ enronxgate on 12 / 18 / 2000 02 : 27 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : new pc with two 128 mb of ram\nvince , i have your new pc . i will get with you when i ' m done to schedule a\ndelivery time . i will need your network and notes password to test your apps .\nthanks ,\nfelix", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.710+0000", "entityId": 9310, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 s 5 sy 2\norder for : amitava dhar\n1 x ( compaq armada m 700 $ 3297 )\n1 x ( option : m 300 / m 700 convenience base $ 293 )\n1 x ( option : carry case for m 700 $ 72 )\n1 x ( option : m 300 / m 700 universal ac adapter with power cord $ 59 )\n1 x ( option : m 300 / m 700 universal battery charger $ 124 )\n1 x ( option : m 700 8 cell li - ion battery $ 149 ) enron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.715+0000", "entityId": 9311, "properties": {"text": "Subject: request submitted : access request for\npinnamaneni . krishnarao @ enron . com\nyou have received this email because the requester specified you as their vp .\nplease click\napproval to review and act upon this request .\nrequest id : 000000000010552\nrequest create date : 12 / 18 / 00 8 : 53 : 23 am\nrequested for : pinnamaneni . krishnarao @ enron . com\nresource name : vpn\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.720+0000", "entityId": 9312, "properties": {"text": "Subject: re : 2001 preliminary i / c billing\nbecky ,\nthe charges to corp . go to rac and are based on my projections of expected\nexpenses .\nthe charges are based on the following assumptions ( percentages in the\nparenthesis show\namount of time allocated by each person ( group ) ) to rac :\n1 . value - at - risk group ( var )\nmd ( 25 % )\nvp ( 60 % )\ndirector ( 100 % )\n5 managers ( 100 % )\n2 . enterprise wide risk management\nmanager ( 100 % )\nassociate ( 100 % )\ncurrently we hired ( or will shortly hire ) 4 managers for the var group . the\nexpansion of the var\ngroup was planned based on the requests from rac for more support .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 19 / 2000\n01 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n12 / 19 / 2000 11 : 30 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : 2001 preliminary i / c billing\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 19 / 2000\n11 : 25 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbecky pham\n12 / 19 / 2000 11 : 13 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : 2001 preliminary i / c billing\nmadam ,\ni have a meeting with corp tomorrow in reference to the intercompany billing\nto corp . they are concerned about research allocation . i need some back up\nto this billing . can you help me ? can i get it by the end of the day to\nhave it reviewed and ready for tomorrow ? please let me know . . . . thanx\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 12 / 19 / 2000 11 : 08 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nstephen schwarzbach @ enron\n12 / 18 / 2000 08 : 55 am\nto : becky pham / hou / ect @ ect\ncc :\nsubject : re : 2001 preliminary i / c billing\nbecky ,\ni am discussing these allocations with the appropriate groups within\ncorporate , as they will be the ones accepting / rejecting these charges . i am\nforwarding this to the appropriate individuals within the corp . departments\nfor their review . so , do not consider corp as \" in agreement \" until you hear\nback from me . i also reviewed what we are receiving in 2000 and i have a few\nquestions relating to both 2000 and 2001 :\n1 . what is esource ?\n2 . what is ena ops direct ?\n3 . what is ena occ direct ?\n4 . what is ena co 021 ? is this vince kaminsky ' s group ? the charges for 2000\nhave been about $ 16 k and $ 20 k to the rac group , so at that rate , i would\nexpect 2001 to be no more than $ 250 k - $ 300 k , but the plan amount you sent is\n$ 1 . 9 mm . i will need some detail on this .\nthanks ,\nsteve\nbecky pham @ ect\n12 / 14 / 2000 05 : 15 pm\nto : stephen schwarzbach / corp / enron @ enron , regina hawley / gpgfin / enron @ enron\ncc :\nsubject : 2001 preliminary i / c billing\nattached is the 2001 preliminary inter - company billing . ena will be billing\nplan numbers for all departments except for external legal and external tax ,\nwhich will be billed base on actual . a quarterly review will be done to\ndetermine the variance between plan vs . actual amounts . if the variance\namount is material , we will adjust the billing to your business unit\naccordingly .\nif you have any questions , call me at 5 - 7094 . please review this billing ,\nand notify me with any questions by wednesday , december 20 , 2000 ; otherwise ,\nit is assumed that you agree to the intercompany billing from ena .\nyou are the only person in your business unit receiving this invoice . if\nthis invoice needs to go to someone else in your business unit , please\nforward to the correct person and can i be included in the forward e - mail ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.726+0000", "entityId": 9313, "properties": {"text": "Subject: braveheart\nfyi . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 12 / 19 / 2000\n02 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngail tholen @ ect\n12 / 19 / 2000 01 : 39 pm\nto : li sun / na / enron @ enron\ncc : kevin kindall / corp / enron @ enron , eugenio perez / hou / ect @ ect\nsubject : braveheart\nnew trs for 4 q .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gail tholen / hou / ect on 12 / 19 / 2000 01 : 32\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nconnie lee @ enron communications\n12 / 19 / 2000 09 : 40 am\nto : gail tholen / hou / ect @ ect\ncc : amin maredia / enron communications @ enron communications , michael\nkrautz / enron communications @ enron communications , alan\nquaintance / corp / enron @ enron\nsubject : braveheart\ngail ,\ni have attached several emails which have the following items :\n1 . hawaii 125 - 0 docs\n2 . economic summary that includes a summary of all assumptions in the model\n3 . models\n4 . asset summary\nthe following is a structure diagram :\nplease let me know when you would like to meet to discuss these items . also ,\nalan quaintance is the person who reviewed the hawaii 125 - 0 docs , so if you\nhave any questions regarding those docs , you will probably need to meet with\nhim .\nthank you !\nconnie lee\nmanager\nenron broadband services\n713 / 345 - 8227 ( w )\n713 / 419 - 2728 ( c )\nconnie _ lee @ enron . net\n- - - - - forwarded by connie lee / enron communications on 12 / 19 / 00 09 : 22 am - - - - -\njonathanwylie @ akllp . com\n12 / 13 / 00 08 : 37 pm\nto : alan . quaintance @ enron . com , amin maredia / enron communications @ enron\ncommunications , angela . davis @ enron . com , annmarie . tiller @ enron . com ,\naroberts @ wilmingtontrust . com , davidbarbour @ akllp . com , bill . bowes @ enron . com ,\nbrenda . l . funk @ enron . com , brent . vasconcellos @ enron . com , brian . kolle @ enron . com ,\nbrian wood / enron communications @ enron communications ,\ncharles . delacey @ enron . com , clement . abrams @ enron . com , connie lee / enron\ncommunications @ enron communications , damon @ rlf . com , david koogler / enron\ncommunications @ enron communications , ed smida / enron communications @ enron\ncommunications , gil melman / enron communications @ enron communications ,\ngina . karathanos @ enron . com , kevin howard / enron communications @ enron\ncommunications , james ginty / enron communications @ enron communications ,\njlawler @ wilmingtontrust . com , jordan . mintz @ enron . com , julia . h . chin @ enron . com ,\nkenton @ rlf . com , kimberly . r . scardino @ us . arthurandersen . com , kristina\nmordaunt / enron communications @ enron communications , lkao @ mayerbrown . com ,\nluitgard fischer / enron communications @ enron communications , marc hensel / enron\ncommunications @ enron communications , mark . wolf @ us . cibc . com ,\nmurielmcfarling @ akllp . com , mercedes . arango @ us . cibc . com , michael krautz / enron\ncommunications @ enron communications , mniebruegge @ mayerbrown . com ,\ntompopplewell @ akllp . com , renee st . louis / enron communications @ enron\ncommunications , richard anderson / enron communications @ enron communications ,\npatsargent @ akllp . com , schottla @ us . cibc . com , dannysullivan @ akllp . com ,\ntamullen @ prickett . com , tellwood @ mayerbrown . com , michaelthimmig @ akllp . com ,\ntrevor . randolph @ enron . com , trushar . patel @ enron . com\ncc :\nsubject : mcgarret h ( blockbuster )\nattached are the latest blacklines for mcgarret h ( blockbuster ) in word\nand word perfect format . below is a list of the documents included :\n1 . asset notice\n2 . series certificate\n3 . series supplement\n4 . drawdown request\n5 . total return swap confirmation\n6 . put option agreement\n7 . put option assignment\n8 . notice of put option assignment\n9 . membership interest assignment and ratification\n10 . asset llc agreement\n11 . transferor llc agreement\n12 . receipt of asset llc\n13 . receipt of transferor\n14 . receipt of trust\n15 . independent auctioneer letter agreement\n16 . transfer and auction agreement\n17 . b interest assignment agreement\n18 . direction letter to owner trustee\n19 . payment direction letter\nlet me know if you have problems with any of the attached documents .\njonathan wylie\nassociate\nandrews & kurth llp\n1717 main st . , suite 3700\ndallas , texas 75201\n214 - 659 - 4514\nconfidentiality notice : the information in this e - mail ( including any\nattachments ) is confidential , legally privileged and intended only for\nthe use of each recipient named above . if you are not an intended\nrecipient , you must not read , use or disseminate this information . if\nyou have received this e - mail in error , please notify the sender\nimmediately by reply e - mail and delete this e - mail from your computer .\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> > > >\n> >\n- 271595 . doc\n- 271595 . wpd\n- 271599 . doc\n- 271599 . wpd\n- 271616 . doc\n- 271616 . wpd\n- 271618 . doc\n- 271618 . wpd\n- 271619 . doc\n- 271619 . wpd\n- 271675 . doc\n- 271675 . wpd\n- 271677 . doc\n- 271677 . wpd\n- 271679 . doc\n- 271679 . wpd\n- 271733 . doc\n- 271733 . wpd\n- 271737 . doc\n- 271737 . wpd\n- 271739 . doc\n- 271739 . wpd\n- 271742 . doc\n- 271742 . wpd\n- 271745 . doc\n- 271745 . wpd\n- 271753 . doc\n- 271753 . wpd\n- 271763 . doc\n- 271763 . wpd\n- 271765 . doc\n- 271765 . wpd\n- 271767 . doc\n- 271767 . wpd\n- 271777 . doc\n- 271777 . wpd\n- 272972 . doc\n- 272972 . wpd\n- - - - - forwarded by connie lee / enron communications on 12 / 19 / 00 09 : 22 am - - - - -\nrenee st . louis\n12 / 14 / 00 06 : 41 pm\nto : connie lee / enron communications @ enron communications\ncc :\nsubject : see attached\n- - - - - forwarded by connie lee / enron communications on 12 / 19 / 00 09 : 22 am - - - - -\nrenee st . louis\n12 / 18 / 00 04 : 17 pm\nto : luitgard fischer / enron communications @ enron communications\ncc : connie lee / enron communications @ enron communications\nsubject : models\nlouie -\ni ' ve attached all of the models , asset summary , etc . connie is familiar with\nthem , and i will visit with her again before i leave .\nthanks !\nrenee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.731+0000", "entityId": 9314, "properties": {"text": "Subject: alliance info alert\ndear generation / power marketing executive :\nthis alliance info alert includes three items of interest :\n1 ) the weekly alliance express newsletter\n2 ) listing of recent filings at ferc\n3 ) timeline for ferc action on california markets ( attached )\nalliance of energy suppliers express \u0002 \u0005 december 19 , 2000\ninside washington \u0002 \u0005 federal affairs\n* * * ferc de - federalizes california markets , adopts other structural reforms * * *\nat a special meeting friday afternoon , ferc unanimously approved its eagerly\nawaited final order reforming the california wholesale markets , adopting the\nmajor outlines of its november 1 proposed order and sending back to\ncalifornia the responsibility for addressing state - related matters . at the\nsame time , ferc deferred consideration of retroactive refund issues as well\nas the imposition of region - wide price caps . ferc reiterated their earlier\nconclusions that under certain circumstances , california ratepayers were\nsubjected to unjust and unreasonable power rates due to california ' s\n\" seriously flawed \" market structure and rules in conjunction with tight\ndemand and supply conditions throughout the west .\nferc adopted the november proposal to eliminate , effective immediately , the\nstate ' s mandatory requirement that the state ' s investor - owned utilities buy\nand sell electricity through the px , and allow these utilities to purchase\nelectricity through forward contracts and other alternative mechanisms to\nmanage supply risks . ferc terminated the px ' s rate schedules effective at\nthe close of business on april 30 , 2001 . in effect , as chairman james\nhoecker stated , the order de - federalizes 60 percent of the california\nwholesale market established under the state ' s restructuring law , returning\nratemaking authority over company - owned generation to the california public\nutilities commission ( cpuc ) .\nthe agency also modified the effective period of the $ 150 / mwh \" soft cap \"\nproposal , limiting its application through april 2001 , whereupon a\n\" comprehensive and systematic monitoring and mitigation program which\nincorporates appropriate thresholds , screen and mitigation measures \" must be\nin place . in a related move , ferc ordered a technical conference early next\nyear to develop such a program by march 1 , 2001 , so that these measures can\nbe place by the may 1 , deadline .\n* * * energy secretary issues order to power generators and marketers to bolster\ncalifornia ' s supplies * * *\nenergy secretary bill richardson has responded to the severely constrained\npower supply situation in california by issuing an order , pursuant to section\n202 ( c ) of the federal power act , to require generators and marketers to make\npower available to meet the state ' s electricity needs . the emergency\ndirective requires that , if the california independent system operator ( iso )\ncertifies that there is an inadequate supply of electricity , certain\nsuppliers would be required to make power available to the iso if they have\npower available in excess of the amount needed to satisfy service to firm\ncustomers . those suppliers that have provided power to the california power\nexchange ( px ) and the iso over the last 30 days that have firm capacity\navailable would be subject to the order .\nunder the order , the iso is required to provide notice to each supplier\nsubject to the order of the amount and type of service requested by 9 : 00 pm\nest on the day before the requested service . the iso must , to the extent\nfeasible , allocate the requests in proportion to the amount of each\nsupplier ' s available power . the price for the power provided pursuant to the\norder will be set by an agreement between the iso and the supplier . if no\nagreement is reached , ferc is to determine the just and reasonable rate at a\nlater date . the order will remain in effect until 3 : 00 am est on december\n21 , 2000 unless modified .\n* * * epa sets plans to regulate plants ' mercury emissions * * *\nepa administrator carol browner , in a long - awaited announcement , indicated\nlast week that the administration will require reductions of mercury\nemissions from coal - and oil - fired power plants . the agency stated that it\nplans to propose new regulations in december 2003 , and hopes to finalize new\nrules by december 2004 .\nin the wake of the decision , eei called on epa to make certain that any\nprogram to control utilities ' mercury emissions be based on the best\nscientific information available in order to assure the protection of public\nhealth . \" eei urges epa to maintain its commitment to resolving the key\nscientific and technological issues , \" said paul bailey , eei vice president ,\nenvironmental affairs . given these uncertainties , eei is disappointed that\nthe regulatory determination includes statements regarding public health\nthreats and hazards that are unsupported by current science , \" said mr . bailey .\n\" in the meantime , the electric power industry will continue to work with all\nstakeholders to determine the extent to which additional mercury reductions\nfrom power plants may be needed , and how those cuts should be achieved , \" mr .\nbailey concluded .\nmergers & acquisitions\n* * * calpine completes acquisition of emi power assets * * *\ncalpine corporation has announced that it has completed the acquisition of\npower assets from energy management , inc . ( emi ) . in the deal , calpine\nacquired the remaining interest in three recently constructed , combined - cycle\npower generating facilities located in new england , as well as a joint\nmarketing venture between calpine and emi . prior to the transaction , calpine\nheld a 50 percent net interest in the projects .\n\" we are very pleased to have completed the acquisition of these new and\nhighly efficient power plants . the dighton , tiverton , and rumford facilities\nwere among the first merchant power plants to enter commercial operation in\nnew england , \" said calpine senior vice president bob alff . \" combined with\nour other announced project in the northeast , we have created a coordinated\nsystem of low - cost assets , with excellent geographic diversity , to provide\npower to a very attractive new england market , \" added alff .\n* * * exelon completes acquisition of 49 . 9 percent of sithe * * *\nexelon corporation and sithe energies have announced the completion of\nexelon ' s acquisition of 49 . 9 percent of the stock of sithe . the completion\nof the acquisition finalizes an agreement in which peco energy company agreed\nto purchase 49 . 9 percent of sithe ' s assets in north america for $ 682\nmillion . peco has since merged with unicom corporation to form exelon\ncorporation .\nunder the terms of the agreement , exelon has the option to purchase the\nremaining 50 . 1 percent of sithe within two to five years at a price based on\nprevailing market conditions when the purchase option is exercised . exelon\nand sithe will continue to operate independently , said the companies .\nenergy data\n* * * weekly electric output ( week 50 ) * * *\nelectric output reached 74 , 737 gwh for the week ending december 9 ( week 50 ) ,\nwith the highest increase over 1999 levels in the mid - atlantic region , which\nhad a 15 . 8 percent increase over 1999 . looking at year - to - date information ,\nthe pacific southeast leads the nation in growth of output . for more\ninformation , email alliance @ eei . org .\nwho ' s who\n* * * allegheny energy announces leadership change * * *\nallegheny energy , inc . this week announced the appointment of michael\nmorrell , senior vice president and cfo , as president of its unregulated\nsupply business , allegheny energy supply company , effective february 1 ,\n2001 . morrell will replace peter skrgic , current president , who will be\nretiring on that date after 37 years of service to the company .\nin his new position , mr . morrell will direct and continue the growth of\nallegheny ' s energy supply business , which operates and markets competitive\nretail and wholesale electric generation throughout the eastern us .\nadditionally , morrell will identify new opportunities to expand the company ' s\ngeneration holdings , announced a press release .\nthe alliance express is a free news service sponsored by the alliance of\nenergy suppliers . this document can be redistributed . please send\nquestions , comments , or requests to alliance @ eei . org , or telephone\n202 / 508 - 5680 .\n* * * due to the holidays , the alliance express will not be published next\ntuesday , december 26 .\n= = recent ferc filings = =\n( 1 ) rto developments\n* the following entities filed comments regarding the california wholesale\nelectric market . elo 0 - 95 - 000 , et . al . filed december 13 , 2000 .\n- american public power assoc . : \" market power : will we know it when we see\nit ? the california experience \"\n- southern california edison co . : \" proof that soft price caps do not result\nin lawful rates \" and request for rehearing\n- southern california edison co . : request for immediate modification of the\ndecember 8 , 2000 order\n- san diego gas & electric : motion to clarify the record\n* the following entities filed motions for an immediate modification and to\nintervene regarding the commission ' s emergency order december 8 approving the\nca iso ' s tariff amendments . erol - 607 - 000 , ero 0 - 95 - 000 et . al . filed\ndecember 13 , 2000 .\n- western power trading forum\n- reliant energy power generation\n- pacific gas and electric\n- ca iso\n- dynegy power marketing\n* southern energy companies filed a supplemental protest regarding pjm ' s\norder 2000 compliance filing . rtol - 2 - 000 . filed december 14 , 2000 .\n( 2 ) oatt / transmission\n* ugi utilities filed an interconnection agreement with allegheny energy\nsupply co . erol - 617 - 000 . comments due by december 28 , 2000 .\n* public service company of new mexico filed proposed revisions to its ferc\nelectric tariff , a statement of policy and code of conduct governing the\nrelationship between itself and wholesale power marketing affiliates and a\nnotification of a change in status relating to its authorization to sell\npower at market - based rates . erol - 615 - 000 . comments due by december 28 ,\n2000 .\n* american electric power service corp . ( aep ) filed an executed\ninterconnection agreement between indiana michigan power co . and duke energy\nberrien . the agreement is pursuant to aep companies ' oatt . erol - 626 - 000 .\ncomments due by december 29 , 2000 .\n* commonwealth edison co . filed revisions to its oatt to reflect the\ncreation of a new generation subsidiary of excelon corp . , comed ' s holding\ncompany . erol - 628 - 000 . comments due by december 29 , 2000 .\n* detroit edison company filed a service agreement for network integration\ntransmission service under the joint oatt between itself and consumers\nenergy . the service agreement is between itself and nordic marketing .\nerol - 622 - 000 . comments due by december 28 , 2000 .\n* detroit edison company filed service agreements for short - term firm and\nnon - firm point - to - point transmission service under the joint oatt between\nitself and consumers energy . the service agreement is between itself and h . q .\nenergy services . erol - 621 - 000 . comments due by december 28 , 2000 .\n* louisiana generating filed a motion to intervene and protest regarding\nsouthwestern electric power company ' s restated and amended electric system\ninterconnection agreement between southwestern and louisiana generating .\nerol - 504 - 000 . filed december 13 , 2000 .\n* alliant energy corporate services filed a response to several protests\nregarding its proposed amended oatt . erol - 312 - 000 . filed december 14 , 2000 .\n* electricities of north carolina , piedmont municipal power agency and the\ncities of orangeburg and seneca , sc filed a motion to intervene and protest\nregarding duke energy , carolina power & light and south carolina electric &\ngas ' proposed accounting and rate treatment of start - up costs associated with\nestablishing a new rto . elol - 13 - 000 . filed december 14 , 2000 .\n* southern company services filed a proposed amendment to its oatt in order\nto incorporate creditworthiness criteria , interconnection procedures and\nsource and sink requirements . erol - 668 - 000 . filed december 14 , 2000 .\n* bonneville power administration filed a petition for declaratory order\nstating that its proposed oatt satisfies the commission ' s reciprocity\ncompliance principles . njol - 1 - 000 . filed december 14 , 2000 .\n* american transmission co . filed proposed open access transmission rates\nand requested expedited consideration . erol - 677 - 000 . filed december 15 ,\n2000 .\n( 3 ) market complaints\n* h . q . energy services filed for an order directing the ny iso to restore\nthe original market clearing prices for energy on may 8 , 2000 . elol - 19 - 000 .\ncomments due january 2 , 2001 .\n* new england power co . filed an answer to the rhode island attorney\ngeneral ' s protest regarding the application of the joint owners of the\nundivided interest in the millstone 3 nuclear plant to transfer ownership to\nthe dominion applicants . eco 0 - 137 - 000 and ero 0 - 3639 - 000 . filed december 13 ,\n2000 .\n( 4 ) mergers / corporate restructuring\n( 5 ) miscellaneous\n* ca iso filed an amendment to schedule 1 of the participating generator\nagreement between ca iso and sierra pacific industries . erol - 619 - 000 .\ncomments due by december 28 , 2000 .\n* automated power exchange filed a new rate schedule under which it will\nprovide its auction and scheduling service in its california market .\nerol - 658 - 000 . filed december 14 , 2000 .\n* automated power exchange filed a new rate schedule under which it will\nprovide its auction and scheduling service in a new geographic market , known\nas the apx midwest market . erol - 659 - 000 . filed december 14 , 2000 .\nnancy tarr\nmanager , business development\nntarr @ eei . org\n202 - 508 - 5680\n- timeline . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.735+0000", "entityId": 9315, "properties": {"text": "Subject: news : aurora 5 . 2 update\naurora version 5 . 2\n- the fastest model just got faster -\nepis announces the release of aurora , version 5 . 2\naurora the electric market price forecasting tool is already\nlegendary for power and speed . we ' ve combined a powerful chronological\ndispatch model with the capability to simulate the market from 1\nday to 25 + years . add to that a risk analysis section , powered by user\nselectable monte carlo & / or latin hypercube modeling , enough\nportfolio analysis power to please the toughest critic , & inputs and\noutputs from standard excel & access tables and you ' ve got one of most\npowerful tools in the market .\njust a few months ago we expanded our emissions modeling\ncapabilities , added our quarterly database update , increased the speed\nof the entire model , and made\nbut that wasn ' t enough .\nwe ' ve done it again . some of the operations that we ' ve\nincluded . . .\ntwo new reporting enhancements .\nthe first is marginal reporting\nfor fuels , resources and groups of resources .\nthe second is the ability to\ndisplay resource stack information in graphical and dispatch order form .\nother enhancements include dual fuel modeling , improved\ntransmission modeling , greater access to hourly results , and the ability\nto model monthly emission rates . moreover , the databases for\ncentral and eastern , texas , and western markets have been updated to use\nthe new modeling capabilities .\nwe continue to make aurora easier to use . this version enhances\nuser control over modeling , editing inputs , and viewing of aurora\noutput . clients desiring to exploit the power of aurora now have\ngreater control over the inputs and outputs through vb scripting in\naurora . the new \" update data \" capability provides a means to\nuniversally change any data element .\nattached is more information on the fastest and most flexible\ntool of its kind .\nfor additional information , please visit our website ( www . epis . com ) or\ncontact our sales department at ( 503 ) 722 - 2023 . ask about our special\n7 - day demo !\nv . todd wheeler\nsales manager\nepis , inc .\n( 503 ) 722 - 2023 tel .\n( 503 ) 722 - 7130 fax\nwww . epis . com\ntodd @ epis . com\n> >\n- what ' s new - version 5 . 2 information . doc\n- technical information aurora v 5 - 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.740+0000", "entityId": 9316, "properties": {"text": "Subject: re : cusip\nvince , i am waiting to hear back from our compliance department on this . i\nwill get you the info as soon as i rec . it . i mailed the receipt for the\ndeposit today .\ndavid c . walkup\nsr . financial consultant\n713 - 658 - 1685\n800 - 456 - 9712\n> - - - - - - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : tuesday , december 19 , 2000 11 : 09 am\n> to : david _ walkup @ ml . com\n> cc : vince . j . kaminski @ enron . com\n> subject : cusip\n>\n> david ,\n>\n> the cusip of the bond i have is 694308 efo\n> pgc 8 . 375 % 5 / 1 / 25 lst & ref mortgage bond , ser 92 b .\n>\n>\n> vince\n>\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party . for your protection , avoid sending\nidentifying information , such as account , social security or card numbers to\nus or others . further , do not send time - sensitive , action - oriented\nmessages , such as transaction orders , fund transfer instructions , or check\nstop payments , as it is our policy not to accept such items electronicall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.745+0000", "entityId": 9317, "properties": {"text": "Subject: holiday gift basket\nthank you , so very much for the gift basket , it is beautiful , i will share\nwith the group .\nhappy , happy , holiday ' s !\ndolores sustaita & move - team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.749+0000", "entityId": 9318, "properties": {"text": "Subject: holiday gift\nthank you so much for your thoughtfulness . . . . this basket is absolutely\nbeautiful . . . . . thanks again for your thoughtfulness and for thinking of\nme . . . . . .\nyou have a wonderful holiday . . . . . .\nkay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.754+0000", "entityId": 9319, "properties": {"text": "Subject: cusip\ndavid ,\nthe cusip of the bond i have is 694308 efo\npgc 8 . 375 % 5 / 1 / 25 lst & ref mortgage bond , ser 92 b .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.759+0000", "entityId": 9320, "properties": {"text": "Subject: lunch\ndzien dobry ,\nmam nadzieje , ze nic sie nie zmienilo i jestesmy umowieni na dziesiejszy\nlunch . proponuje sie spotkac o godzinie 12 . 00 na parterze obok biurka\n\" security ladies \" ( bo wiem gdzie to jest ) . ubrany jestem w czarne spodnie ,\nbezowe buty i szara bluze . nie jestem pewien czy bede mogl przeczytac\npotwierdzenie , bo od 10 do 11 . 45 przeprowadzam szkolenie .\njuliusz", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.764+0000", "entityId": 9321, "properties": {"text": "Subject: interview schedule - iris mack\nattached please find the interview schedule , resume , and evaluation form for\niris mack . iris will be interviewing on december 28 , 2000 . please contact\nme with any comments or concerns .\nthank you ,\ncheryl arguijo\news staffing\n713 - 345 - 4016", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.769+0000", "entityId": 9322, "properties": {"text": "Subject: re :\ni would like to help , but i am in kansas hunting pheasant during the last\nweek in december .\nvince j kaminski\n18 / 12 / 2000 15 : 46\nto : debbie r brackett / hou / ect @ ect , william s bradford / hou / ect @ ect , ted\nmurphy / hou / ect @ ect , bjorn hagelmann / hou / ect @ ect , david port / market\nrisk / corp / enron @ enron , mark tawney / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect ,\ngreg whalley / hou / ect @ ect , louise kitchen / hou / ect @ ect\ncc : molly magee / hou / ect @ ect\nsubject :\ni am asking molly magee , our hr rep , to set up an interview for iris mack\nwith , depending on your availability between christmas and new year .\niris was interviewed by a number of my associates for a position\nwith the research group and my objective is to introduce her to a number\nof enron units that she may eventually support . i shall appreciate your\ncomments .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.774+0000", "entityId": 9323, "properties": {"text": "Subject: interview with the enron research group\ngood morning frank :\nvince kaminski and the enron research group would like to bring you to\nhouston for an interview , sometime around the last of januray or the first\nof february . our human resources rep will be contacting you as to the\nbest day and time for you .\ncould you please furnish me an electronic version of your resume ? i will\nneed this to pass to the hr dept .\nthe people in the research group that will be interviewing you are :\nvince kaminski managing director and head of research\nstinson gibner vice president\nkrishna krishnarao director ( will be out of the office until the\nend of january - thus the time frame )\nvasant shanbhogue vice president\ntanya tamarchenko director\nzimin lu director\nthank you very much and we look forward to seeing you soon .\nsincerely ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.783+0000", "entityId": 9324, "properties": {"text": "Subject: wharton trip january 18 , 2001\njeff and vince . . . \" fyi ' ' . . . christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 12 / 19 / 2000\n09 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelinda mccarty @ enron\n12 / 19 / 2000 03 : 05 pm\nto : christie _ patrick @ enron . com\ncc :\nsubject : wharton trip january 18 , 2001\ncp -\nfyi - attached is the memo that i faxed to the parkplace warwick . i copied\ndonna piazze at wharton also .\nmaria", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.791+0000", "entityId": 9325, "properties": {"text": "Subject: fw : enron contact info\nvince and jeff . . . the following is \" fyi \" . . . my assistant is working on the\nflight arrangements . also , \" fyi \" , the doubletree and other downtown hotels\nwere entirely , or mostly , sold out , but my assistant found a good rate at the\nwarwick [ $ 115 ] by herman park , where everyone will be ' housed ' in the same\nlocation for one night - - i also think this location is a good ' houston - sell ' .\ndinner is scheduled for 7 thursday evening at churrasco ' s , and my group is\narranging the \" tourenron \" - - breaking this group into 2 . [ fyi : the energy club\nfrom smu ( another skilling alma mater ) had long ago also schedule a tour that\nday , so we ' ll have 19 from smu and 18 from wharton on the same day . . . but so\nfar , all seems manageable . ]\nas \" tour times \" are set , and business unit interview requests are received\nfrom the students , i ' ll keep you posted .\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 12 / 19 / 2000\n05 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 12 / 19 / 2000 01 : 49 : 52 pm\nto : \" ' christie . patrick @ enron . com ' \" ,\n\" ' melinda . mccarthy @ enron . com ' \"\ncc : fap\nsubject : fw : enron contact info\nchristie ( melinda and / or marie )\nall contact info is listed below by team and project , as well as faculty , ta\nand others . those with ( * ) will be traveling to houston . i have a total of\n18 attending .\naccording to my records , the following will stay beyond the friday departure\n( at their own expense ) and leave houston on sunday , 21 jan : heather thorne ,\njack rejtman , deepa mallik , donna piazze . dennis feerick would like to\ndepart on sat am , if possible . he sent a separate email addressing this .\nenron 1 * vincent chen\nvincent . chen . wgo 2 @ wharton . upenn . edu\nenron 1 * nick levitt\nnicholas . levitt . wgo 2 @ wharton . upenn . edu ( wholesale project )\nenron 1 * deepa mallik mallikd @ wharton . upenn . edu\nenron 1 * jack rejtman\njack . rejtman . wgo 2 @ wharton . upenn . edu\nenron 1 * kim whitsel whitselk @ wharton . upenn . edu\n* * * team contact\nenron 1 * tulika bhalla\nbhallat @ wharton . upenn . edu\nenron 2 * jaideep singh\nsinghjai @ wharton . upenn . edu\nenron 2 * edson otani edsono @ wharton . upenn . edu\nenron 2 * joshua leventhal levent 86 @ wharton . upenn . edu\n* * * team contact\nenron 2 * pat henahan mhenahan @ wharton . upenn . edu\n( future shape of energy markets project )\nenron 2 murat camoglu camoglum @ wharton . upenn . edu\nenron 2 * gustavo palazzi gustavop @ wharton . upenn . edu\nenron 3 * clay degiacinto\nenron 3 * steve lessar\nstephen . lessar . wgo 2 @ wharton . upenn . edu\nenron 3 * ram vittal mvittal @ wharton . upenn . edu\n* * * team contact\nenron 3 jason cummins marc . cummins . wgo 2 @ wharton . upenn . edu\n( retail project )\nenron 3 * omar bassel bassalo @ wharton . upenn . edu\nenron 3 * dennis feerick\ndennis . feerick . wgo 2 @ wharton . upenn . edu\nprofessors : louis thomas thomas @ wharton . upenn . edu\nkeith weigelt weigelt @ wharton . upenn . edu\nta : heather thorne hethorne @ wharton . upenn . edu *\nfap : donna piazze piazze @ wharton . upenn . edu *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.798+0000", "entityId": 9326, "properties": {"text": "Subject: latest\nvince ,\ni appologize for shipping another version of the paper so soon after the\nlast . however , my wife picked me up for some last minute shopping at noon\nand i wasn ' t sure i would get back to this before leaving tomorrow . the\nonly changes in the two documents related to a sentence or two in the intro\nplus the addition of \" unused information \" at the end of the document . the\nunused stuff is made up of notes i made from hamel , some news stories ,\npress releases , and random thoughts . we probably won ' t use any of this\nstuff but i wanted you to have it just in case it might prove useful .\nthe challenge we face at this stage ( and where i can most use your help ) is\nin documenting enron ' s risk management functions in a meaningful way . this\nmay be best done through examples or in some other way . i think that our\naudience would appreciate our including some numerical and detailed\nexamples ( even if they are to be placed in boxes or sidebars that don ' t\ninterrupt the flow of the article . if you ' ll make a pass at what you feel\nis appropriate i ' ll gladly polish on the words as i try to learn about what\nyou are doing myself .\nvince , i really am enjoying this learning experience . you guys make a\nwonderful \" lab \" .\nsally and i are driving to louisiana to pick up her mom tomorrow and then\ndriving to new orleans and back to waco by saturday . however , i will check\nin my e - mail regularly .\nyour friend ,\njohn\n- enron transformation paperl 2 _ 19 _ 00 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.803+0000", "entityId": 9327, "properties": {"text": "Subject: new documents\nvince ,\nhere ' s the latest set of interview notes as well as the latest \" version \" of\nthe paper . i will be working more this afternoon ( if i can ) and send an\nupdated version .\ntalk to you later tomorrow or friday .\njohn\n- enron transformation paperl 2 _ 17 _ 00 . doc\n- . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.808+0000", "entityId": 9328, "properties": {"text": "Subject: update on spring conference\nhello everyone ,\ni wanted to get a message out to each of you to update you on the february\n23 conference plans . the conference promises to provide an exciting\nopportunity to share the ideas of a diverse group of academic and industry\nprofessionals on a topic that is dear to all our hearts , the future of\nbusiness education in the new economy . i will be sharing updates and\ninformation with you over the weeks to come but thought it might be useful\nto start before the holidays .\ni am attaching the most recent \" description of the program of events \" which\nremains somewhat fluid as we develop it . however , there are some new\ndevelopments that you will find interesting . first , i have arranged for\n\" filming \" of the event by our local public tv station and we will be\nworking toward the development of the best product possible out of the\nsessions . second , david palumbo ( human code - - an internet content\nprovider - http : / / www . humancode . com / index 2 . htm - now owned by sapient ) will\njoin us . david is very knowledgable about both educational issues ( he\nserved on the faculty of the university of houston for 10 years before\njoining human code ) . he has some very interesting insights to offer on the\nfuture of higher education having now worked from the industry side of the\nequation ) . finally , i am currently reading a couple of books that you may\nfind interesting ( telecosm and the new barbarian manifesto ) . i ' m sure\nthere are many more interesting sources of information that you are each\naware of and it would be helpful if we all began sharing our notes .\nfinally , let me suggest that each of you begin thinking about the issue ( s )\nthat you feel most comfortable commenting upon and phrasing \" lead in \"\nquestions for me . i would like to build a list of such questions to\ncirculate among all so that we begin to get a feel for the range of topics\nwe will encounter in the discussion and begin to formulate our individual\nopinions .\ni hope that this note finds you all anticipating a wonderful holiday season\nand thank you for participating in this inaugural \" think tank \" conference\non the future of business education .\nsincerely yours ,\njohn\n- revised workshop - planning . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.812+0000", "entityId": 9329, "properties": {"text": "Subject: re : best wishes for the holiday period\nehud ,\nbest holiday wishes to you and your family .\ni owe you an apology for dropping the ball on the conference\ni have approached a number of executives at enron . greg whalley speaks in\nlondon a day\nbefore . louise kitchen , the mother of enrononline will ski ( this is the week\nof school holidays in england and her family will come here ) .\none suggestion i want to make is rick causey . i talked to him and he is\nwilling to\nbe a speaker . he is a very senior and important executive of enron and a ut\ngrad .\nany thoughts ?\nvince\n\" ehud i . ronn \" on 12 / 19 / 2000 02 : 09 : 41 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : best wishes for the holiday period\nvince ,\nat the conclusion of another year , and prior to my departure tomorrow with\nmy family for our annual florida vacation , best wishes for the holiday\nperiod to you and your family .\nregarding the spring 2001 energy finance conference participation , we still\nlack that all - important 2 / 22 enron energy - related high - level keynote\nspeaker . let me know if you think we should look elsewhere .\nbest regards ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.818+0000", "entityId": 9330, "properties": {"text": "Subject: re : releasing different versions of vatrfacs code\nwinston and jin ,\nfor last half year the following developments were implemented by jin for\nvatrfacs code\n( the calibration code for var ) :\n1 . weighting the log - returns with exponential decay factor while calculating\ncorrelations ;\n2 . calculating factors and correlations for uk curves ;\n3 . joint estimation of factor loading for selected groups of commodities ;\n4 . alternative method for collecting historical data for correlations\ncalculation\n( based on fixed contract instead of collecting prompt , prompt + 1 , etc . prices )\nin order to release these developments research has to have each version under\nclearcase . then we will :\n1 . run vatrfacs code in stage environment ( stage has been refreshed\nrecently ) .\n2 . run var code in stage and validate the results .\nit is time to start releasing these 4 versions . projects 3 and 4 require some\nexperimental runs\nin stage . a few traders ( in gas , power and liquids markets ) are expecting the\nresults .\nmeanwhile the following developments have been suggested by reseach , approved\nby risk control ,\nsubmitted to it as spreadsheet prototypes and waiting in line :\n1 . volatility blending for intramonth power positions ;\n2 . forward volatility smoothing and extracting forward forward volatilities ;\nhope we can follow our procedures to make all these developments go smoothly\nand efficiently .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.824+0000", "entityId": 9331, "properties": {"text": "Subject: re : testing ir & fx var\nnick and winston ,\ni understand that ir & fx var numbers are calculated every day in risktrac .\nthis results are overwritten\neveryday in the database table by the official numbers calculated with the\nold version of the code .\nfor the consistent testing we need historical results for each ir and fx\nsub - portfolio .\ncan we store the numbers every day ?\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.829+0000", "entityId": 9332, "properties": {"text": "Subject: seasonal greetings\nseasonal greetings and best wishes for a happy and prosperous new year !\nles .\ndr . les clewlow\nvisiting research fellow , school of finance and economics , university of\ntechnology , sydney , australia .\nassociate research fellow , financial options research centre , warwick\nbusiness school , coventry , uk , cv 4 7 al .\ndirector , lacima group ltd . 55 skylines village , limeharbour , london , el 4\n9 ts , uk . phn : + 44 ( 0 ) 171 531 9628 , fax : + 44 ( 0 ) 171 538 5781\nwww : http : / / www . lacimagroup . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.834+0000", "entityId": 9333, "properties": {"text": "Subject: re : starting date : jan 8 th , 2001\nvince :\nfyi - wichai is joining on jan 8 th . osman will take care of him until my\nreturn .\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n12 / 19 / 2000 03 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npinnamaneni krishnarao\n12 / 19 / 2000 02 : 54 pm\nto : osman sezgen / hou / ees @ ees\ncc :\nsubject : re : starting date : jan 8 th , 2001\nosman :\ncan you request the desk & computer for wichai ? dennis has knows about\nwichai coming in january .\nthanks ,\nkrishan .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n12 / 19 / 2000 02 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npinnamaneni krishnarao\n12 / 19 / 2000 02 : 52 pm\nto : \" wichai narongwanich \" @ enron\ncc :\nsubject : re : starting date : jan 8 th , 2001\ndear wichai :\ngood to hear from you and glad you will be here soon . i will be on vacation\nin january . when i am gone you will report to osman sezgen who you have met\nwhen you were here in houston . please get in touch with him when you come\nhere . his phone number is ( 713 ) 853 - 5485 . if you have any problems , contact\nour assistant shirley crenshaw at ( 713 ) 853 - 5290 .\nbest wishes ,\nkrishna .\n\" wichai narongwanich \" on 12 / 19 / 2000 01 : 51 : 40 pm\nto :\ncc :\nsubject : starting date : jan 8 th , 2001\ndear dr . krishna ,\nas mentioned during the interviewing process , i plan to start working under\nyour supervision on earlier january . i ' m now ready to start working with\nyour on jan 8 th , 2001 . i have been in contact with the human resource\ndepartment to set up the working permit and relocation . i have received the\noptional practical training valid from jan 8 th , 2001 to jan 7 th , 2002 . i\nwill go down to houston to look for an apartment this weekend .\nby the way , i heard from seksan , currently working under your supervision ,\nthat you will be on vacation soon and will come back to work again late\njanuary . therefore , i would like to whether who should i report with on my\nstarting date ? or do you have any recommendation for me to prepare for the\nnew work ? please , advise .\nbest regards ,\nwichai narongwanich\n- - - - - original message - - - - -\nfrom : pinnamaneni . krishnarao @ enron . com\nsent : tuesday , june 20 , 2000 1 : 21 pm\nto : wichai @ engin . umich . edu\nsubject : re : resume for sr . specialist / manager - research position\ndear mr . narongwanich :\nyou have an impressive background . what is your availability in terms\nof timing ? we are looking for somebody to join our group fairly soon ( weeks\nrather than months ) .\nthank you ,\np . v . krishnarao\n\" wichai narongwanich \" on 06 / 19 / 2000 09 : 17 : 35 am\nto :\ncc :\nsubject : resume for sr . specialist / manager - research position\ndear mr . krishnarao ,\ni received information about this job opportunity describe below by boo\nlee ,\nan alumni of financial engineering program here in the university of\nmichigan . the position is very interesting and relevant to my background\n( pursuing ph . d . operations research with real options interest , completed\nmse financial engineering , mse industrial and operations engineering , have\nbeen working on ms - excel with vba for 4 years ) i attach my resume in\nms - word\ndocument in this mail . if you need further information , please don ' t\nhesitate to contact me .\nsincerely ,\nwichai narongwanich\nwichai narongwanich\nph . d . candidate , ioe dept .\nresearch assistant , meam dept .\nuniversity of michigan\nsr . specialist / manager - research\nposition description : fulltime position as a member of the research\ngroup at\nenron supporting commodity risk management activities in enron energy\nservices . the selected person will be working closely with the deal makers\nand risk - managers to develop and support quantitative models for pricing\nand risk management .\nresponsibilities : responsibilities include analyzing data and developing\nmodels for valuing commodity ( or commodity - related ) contracts , options\nembedded in or real options associated with long term energy management\ncontracts , forecasting customer loads , and managing risks associated with\nenergy contracts .\nqualifications & skills :\nmasters / doctorate degree in a quantitative field ( mathematics , statistics ,\noperations research , econometrics / finance ) with experience or course work\nin\nstatistics , data analysis and mathematical modeling . must have excellent\ncomputer skills and be able to function in a dynamic , unstructured\nenvironment .\ncoursework in statistics / econometrics and basic finance preferred .\nproficiency in excel including vba .\nfamiliarity with access & visual basic .\nknowledge of risk management or energy markets a plus .\nplace of work : houston\ncontact : email resumes to pkrishn @ enron . com ( p . v . krishnarao )\n( see attached file : resume . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.838+0000", "entityId": 9334, "properties": {"text": "Subject: re : tanya ' s vacation\nshirley ,\ni will be on vacation starting tomorrow 12 / 20 / 00 until 12 / 28 / 00 . i will be in\nthe office on 12 / 29 / 00\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.843+0000", "entityId": 9335, "properties": {"text": "Subject: today ' s gathering\nhello , vince !\ni was planning to stop by damian ' s this evening , but i think i ' ll go home\ninstead . i ' ve contracted a sneezy cold , and i don ' t want to spread it around\nanymore than i already have .\nthank you for putting this together . i ' ll have to make the one in january\nfor sure !\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.848+0000", "entityId": 9336, "properties": {"text": "Subject: re : update on iris\nmolly ,\nit seems that we got only bill bradford so far .\ngiven that almost everybody will be out that week ,\nwe probably should move the interview to the\nbeginning of january , even if it means higher\ncosts .\nvince\nenron north america corp .\nfrom : molly magee 12 / 18 / 2000 06 : 57 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : update on iris\nbill bradford has returned our call , and is scheduled to see iris at 11 : 30 am\non 12 / 28 . more info as it becomes available .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.852+0000", "entityId": 9337, "properties": {"text": "Subject: the installation of the equipment you ordered is completed\n- - - automatic notification system ( request # : ecth - 4 rstt 6 )\nrequested for : vince j kaminski\nrequested by : shirley crenshaw\nthe installation of the equipment ( see below ) has been completed .\nen 6600 128 mb installed in desktop\nen 6600 desktop p 3 - 600 10 gb 64 mb 32 x nt 4 . 0\nen 6600 128 mb installed in desktop", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.858+0000", "entityId": 9338, "properties": {"text": "Subject: re : new pc with two 128 mb of ram\nvince :\ni was confused also - but i think this is the computer we ordered for\nthe new employee that is coming next week ( rakesh bharati ) . phillip our\nit floor tech said that the computer in the back room at ebl 972 g was very\nold and did not have much memory so i ordered a new one with an\nupgrade to bring it up to 196 m ( this is what phillip said we need ) . also\nthere\nis another computer back there that does not have much memory and we\nordered an upgrade for it ( jason ' s ) . i went ahead an did it so that they\nwould\nbe ready when the new employees come in .\nmaureen already has her upgrade .\nshirley\nvince j kaminski\n12 / 18 / 2000 03 : 58 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : new pc with two 128 mb of ram\nshirley ,\nis this an upgrade for maureen ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 18 / 2000\n03 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : felix buitron jr . / enron @ enronxgate on 12 / 18 / 2000 02 : 27 pm\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : new pc with two 128 mb of ram\nvince , i have your new pc . i will get with you when i ' m done to schedule a\ndelivery time . i will need your network and notes password to test your apps .\nthanks ,\nfelix", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.863+0000", "entityId": 9339, "properties": {"text": "Subject: new jcc stuff\nvince , i ' m gone through wednesday of next week . i plan to work more on this\nover the holiday . contact information is in the . doc\nin other news , i didn ' t get the total return swaps finished . i have been\nunable to nail down certain details . concepts are quite clear .\n- kevin k .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.868+0000", "entityId": 9340, "properties": {"text": "Subject: more jcc\nthe historical context . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 12 / 20 / 2000\n05 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall\n11 / 28 / 2000 09 : 29 am\nto : russell dyk / corp / enron @ enron\ncc :\nsubject : jcc writeup\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 11 / 28 / 2000\n09 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall\n09 / 28 / 2000 04 : 44 pm\nto : james pyke / ap / enron @ enron\ncc :\nsubject : jcc writeup\nhere are the results that i sent to marc de la rouche . the answers to both\nquestions below is \" yes . \" as mentioned earlier , i ' ll send the complete\nanalysis along with explanations tomorrow . incidentally , here is a list of\ncontacts regarding lng and jcc . its a bit dated , but may prove useful .\nclay harris lng houston ( 713 ) 853 - 1631\nbrad hitch lng houston ( 713 ) 345 - 5140\nmarc de la roche global fuels houston ( 713 ) 853 - 3949\nvictor santos global fuels singapore ( 65 ) 838 - 9041\nli yin lim global fuels singapore ( 65 ) 838 - 9029\nvv rao lng singapore ( 65 ) 838 - 9043\n- kevin kindall\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 09 / 28 / 2000\n04 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : marc de la roche @ ect 06 / 06 / 2000 02 : 50 pm\nto : kevin kindall / corp / enron @ enron\ncc : grant masson / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : jcc\nthat this email constitutes your groups ( vince kaminski ' s ) sign - off on using\nthis hedge ratio to hedge jcc and jcc - based products ?\nthanks in advance ,\nmarc de la roche\nkevin kindall @ enron\n06 / 06 / 2000 02 : 18 pm\nto : marc de la roche / hou / ect @ ect\ncc : grant masson / hou / ect @ ect\nsubject : re : jcc & brent\ngood afternoon . i have performed a review of the jcc data that you sent\nsome time ago . the study was done using several different excel workbooks ,\nand are available upon request . relevant charts are embedded in the\npowerpoint attachment . questions / comments welcome .\n- kevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.873+0000", "entityId": 9341, "properties": {"text": "Subject: jcc study\nhere is the information produced in the study for marc de la roche .\n- kevin k .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 12 / 20 / 2000\n05 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall\n11 / 28 / 2000 09 : 29 am\nto : russell dyk / corp / enron @ enron\ncc :\nsubject : jcc study\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 11 / 28 / 2000\n09 : 32 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall\n09 / 29 / 2000 05 : 11 pm\nto : james pyke / ap / enron @ enron\ncc :\nsubject : jcc study\nhello . please read the jcc note . feedback welcome .\n- kevin k .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.877+0000", "entityId": 9342, "properties": {"text": "Subject: my model for spikes\ndear dr . kaminski ,\ni was recently allowed to release into the public domain on the limited basis\nthe first of the preprints that i recently authored on my model for spikes in\npower prices and for the valuation of the contingent claims on power . in this\nregard , i have just given a talk on this model at the joint seminar of the\ncenter for energy finance education and research and the institute for\ncomputational finance at the ut austin . right now i am also in the process of\nforming a list of specialists both in the industry and academia who might be\ninterested in receiving this preprint . please let me know if you might be\ninterested in receiving this preprint .\ni look forward to hearing from you .\nsincerely yours ,\nvalery kholodnyi\nmanager of quantitative analysis\nresearch and analytics group\ntxu energy trading\nps . here are the main preprints that i have recently authored on my model for\nspikes in power prices and valuation of contingent claims on power :\n1 . valery a . kholodnyi , the stochastic process for power prices with spikes\nand\nvaluation of european contingent claims on power , preprint , txu - rag - 01 / 00 ,\njuly\n2000 .\n2 . valery a . khlolodnyi , valuation of a swing option on power with spikes ,\npreprint txu - rag - 05 / 00 , august , 2000 .\n3 . valery a . kholodnyi , valuation of a spark spread option on power with\nspikes ,\npreprint txu - rag - 21 / 00 , november 2000 .\n4 . valery a . kholodnyi , valuation of european contingent claims on power at\ntwo\ndistinct points on the grid with spikes in both power prices , preprint\ntxu - rag - 24 / 00 , november 2000 .\n5 . valery a . kholodnyi , valuation of a transmission option on power with\nspikes ,\npreprint txu - rag - 25 / 00 , november 2000 .\nas i have indicated to you in my previous e - mail , contrary to the standard\napproaches , i model spikes directly , as self - reversing jumps on top of a\nstochastic process for the regular dynamics of power prices in the absence of\nspikes . in this way the dynamics of power prices is modeled as a non - markovian\nprocess , even if the process for the regular dynamics of power prices is\nmarkovian . among other things my model for spikes allows for the explicit\nvaluation and hedging of contingent claims on power with spikes , provided that\nthe corresponding contingent claims on power can be valued and hedged in the\nabsence of spikes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.882+0000", "entityId": 9343, "properties": {"text": "Subject: cera monthly oil briefing - cera alert - december 20 , 2000\ntitle : cera monthly oil briefing : fundamentals update\ne - mail category : cera monthly briefing\ncera knowledge area : world oil\nin the past two weeks , oil prices have sold off the premium or price strength\nthat had been built into the market in anticipation of possible shortages\nthis winter . the exact cause of the sharp switch in market psychology is hard\nto pinpoint but seems to be a combination of very early signs that the oil\nstock situation is at least stabilizing , even if stocks have not built\nsubstantially , and that , thus far , despite a few weeks of colder - than - normal\ntemperatures , heating oil supply has been adequate to meet demand in the key\nus market . that has allayed some of the concerns that were driving\nspeculative interest into the market . furthermore , the potential for weakness\nin the us economy may be creating expectations for weaker oil demand in 2001 .\nthe change in market psychology was dramatically illustrated when news that\niraq was cutting off exports caused prices to slide , yet , the iraqi export\ncutoff is having a concrete effect on fundamentals . if the cutoff lasts\nthrough december , the effect will be pronounced - it would turn a projected\nfourth quarter 2000 stockbuild of 0 . 5 million barrels per day ( mbd ) into a\nstockdraw of 0 . 1 mbd . we expect iraqi production levels to remain erratic\nbecause of its dispute with the un security council over sanctions , and\nexports may again cease . at some point such a development would have a price\nsupportive effect .\ncera ' s price outlook for 2001 remains the same as that in the world oil watch\nreleased in late november . assuming normal winter weather and no prolonged or\nrepeated shutdowns of iraqi production , the projected average for first\nquarter 2001 is $ 29 per barrel for wti . however , this outlook is based on\nopec ' s announcing an agreement early in the first quarter to cut its\nproduction by the start of the second quarter . a failure to restrain output\nwould result in a downward adjustment to an average of $ 27 wti for the first\nquarter of 2001 , with prices lower in the second half of the quarter than in\nthe first . the downward pressure results from the prospect of a\nlarger - than - usual implied build in stocks during the second quarter of about\n3 . 0 mbd - with a cut in opec output .\niraq in a twilight zone\nas anticipated , iraq ceased exporting oil under the un - controlled \" oil for\nfood \" program as of december 1 in protest over the rejection by the security\ncouncil ' s sanctions committee of its proposed december export price schedule . *\niraq ' s pricing was judged by the un overseers , who monitor the export program\nand advise the sanctions committee , to be about 60 cents per barrel below\ncomparable crudes in an apparent attempt to offset an illicit surcharge that\niraq was seeking from buyers .\nalthough the standoff with the sanctions committee continues , iraq partially\nresumed exporting on december 13 . since then , about 1 mbd has been exported\nfrom the mina al - bakr terminal in the persian gulf . prior to the shutdown ,\niraqi exports under un auspices were at a rate of 2 . 21 mbd for november , as\ncompared with 2 . 08 mbd for the third quarter . exports for november were about\n1 . 3 mbd from mina al - bakr and about 0 . 9 mbd from ceyhan in the mediterranean .\nexports from ceyhan have not resumed , owing to the surcharge dispute , with\nthe result that about 1 . 2 mbd of iraqi crude remains off the market .\niraq ' s semi - shutdown has put it into a kind of twilight zone while its\ndispute with the sanctions committee over pricing continues . ( in the midst of\nthis dispute , the un security council approved phase nine of the oil - for - food\nprogram at the last minute on december 5 ; it became effective on december 6\nand has been accepted by iraq ) . as of decemberl 9 , iraq ' s revised export price\nfor ceyhan , proposed for the remainder of december , has again been judged too\nlow by the overseers and is expected to be rejected by the sanctions\ncommittee . additionally , the overseers have notified lifters of iraqi crude\nthat any oil payment made directly to iraq rather than to the un escrow\naccount would be a violation of un sanctions . buyers of iraqi oil from mina\nal - bakr have consistently been reported as saying that they are not paying a\nsurcharge to iraq .\nhow long iraq may operate at about half capacity is unclear , but it continues\nto request a surcharge payment from prospective lifters at ceyhan in an\napparent effort to circumvent and degrade the un financial controls that are\nthe heart of the sanctions system . the distinction that iraq has made between\nmina al - bakr and ceyhan arose when it resumed operations at mina al - bakr by\nloading two cargoes for the india oil company . iraq may have judged this\naccommodation to be in its interest , since it recently also signed an oil\nexploration contract with india under which payments would be made in oil . as\ncurrently structured , the deal would violate un sanctions , but india is\nseeking an exception from the security council on grounds of economic\nhardship . the exception seems unlikely to be granted , which may lead iraq to\ncease exports from mina al - bakr again .\nthere are many possible scenarios that iraq could follow , but we expect\nuncertainty about iraqi exports to continue as iraq uses its oil exports as\nleverage to undermine sanctions in its ongoing struggle with the security\ncouncil to end all restraints . consequently , the iraq factor will remain an\nelement in the oil price outlook .\niraq ' s antisanctions campaign has also raised the visibility of the iraq\nissue in washington as the incoming bush administration prepares to take\noffice . secretary of state - designate colin powell has already acknowledged a\nneed to reassess iraq policy and has said that he would work to \" reenergize \"\nsanctions . the iraq issue is being debated in virtually every foreign\npolicy - oriented think tank in washington . a consensus seems to be emerging\naround seeking renewed international support and legitimacy for sanctions by\nretaining un control over iraq ' s oil revenue and strictly enforcing a\nprohibition on sales of weapons and related material while lifting general\ntrade controls that increasingly are both ineffective and an international\nirritant . there is virtually no sentiment in favor of operations to\ndestabilize or remove the saddam hussein regime on the pragmatic basis that\nthe prospects for success are remote .\ndemand trends\nrecord high us natural gas prices have increased the economic incentive for\ngas consumers with the capability to switch from gas to distillate to do so ,\nand reports of switching are emerging in a number of areas . interruptible gas\ncustomers with resid or distillate fuel back - up have already switched to oil ,\nso it is now firm gas supply customers with the potential to add to the\nalready high level of distillate demand . so far in december us distillate\ndemand is running at a record high december level of 3 . 9 mbd . however , only a\nsmall portion of this demand is the result of economically based\nfuel - switching from gas to distillate . cera estimates that the additional\ndemand likely to come from further switching of gas to distillate is\nrelatively small , on the order of 0 . 1 to 0 . 2 mbd . in cera ' s view it is likely\nthat only a portion of the theoretical capacity will be switched on short\nnotice because in some cases , this theoretically switchable capacity has not\nbeen used in recent years , and tankage and delivery infrastructure may be in\nuncertain condition .\nswitching by interruptible gas customers ( such as utilities ) to distillate\nbegan about a month or more ago , although the volumes involved are relatively\nsmall . switching to residual fuel already occurred months ago when gas prices\nstarted to surge in the summer . a portion of the us secondary and tertiary\ndistillate stockbuild seen this autumn was likely prompted by interruptible\ngas customers filling their reserve distillate fuel storage . given the\nexpectations of a tight gas market , regulators have been explicit about\nenforcing back - up fuel storage requirements in the months leading up to the\ncurrent heating season .\nother end users of natural gas have few or no options for fuel switching .\nsome ammonia and ethane producers have shut down operations because the cost\nof feedstock natural gas is high . natural gas is also used in some enhanced\noil recovery operations , and some of these producers have also opted to sell\ngas back to the grid rather than produce oil .\nsupply trends\nnon - opec supply for the fourth quarter is expected to be up 0 . 9 mbd over a\nyear earlier at 46 . 4 mbd . recent events include a shortfall in mexican\nproduction , curtailed in october by about 300 , 000 bd owing to the effects of\nhurricane keith . mexico ' s fourth quarter liquids production is expected to be\n3 . 64 mbd - about 95 percent of mexican liquids capacity . norway ' s output\nincreased 200 , 000 bd from october to november as maintenance season ended .\nnorway ' s production for the fourth quarter is expected to be 3 . 53 mbd . *\ngrowing russian crude oil production throughout the year is supporting a\nrecent surge in exports , in spite of higher export taxes . russian exports of\ndomestic oil production ( excluding transit volumes ) reached 2 . 5 mbd in\nnovember , after remaining fairly steady at about 2 . 35 mbd from july though\noctober . fourth quarter oil exports are expected to average 2 . 5 mbd , 0 . 3 mbd\ngreater than in the fourth quarter 1999 .\ncera estimates iraqi oil production averaged 2 . 91 mbd in november - down 0 . 1\nmbd from the october level . the cutoff in exports earlier this month reduced\niraqi output for the first 12 days of december to roughly 0 . 8 mbd . iraq\nresumed exports of about 1 mbd on december 13 , which raised production to\n1 . 80 mbd . assuming no change in iraq ' s current production stance , iraqi\nproduction would average 1 . 41 mbd for december . on a quarterly basis , the\ndecline in iraq output would lead to estimated opec output in the fourth\nquarter of 29 . 0 mbd and would turn an estimated global oil stockbuild of 0 . 5\nmbd into a stockdraw of 0 . 1 mbd . these production estimates include 0 . 15 mbd\nof crude oil exports to syria that began on november 20 without un\nauthorization and are continuing .\noil stocks\nus crude oil inventories ( doe data ) have climbed intermittently from an\nannual low of 280 million barrels in september and reached 292 million\nbarrels in mid - december ( see figure 1 ) . since prices weakened in late\nnovember , crude oil stocks have stabilized above the annual low in september\nand the ranges seen in october to levels from 289 - 292 million barrels .\nprimary inventories of us heating oil remain well below year - earlier levels ;\nat 48 million barrels they are 15 million barrels , or 24 percent less , than\nthose of a year ago , but there are indications of builds in secondary and\ntertiary inventories . we estimate that wholesale and consumer stocks are up\n5 - 10 million barrels since august and are actually higher than they were at\nthe end of last year .\nin europe crude oil stocks are at more comfortable levels when compared with\nthose of the united states . in november stocks rose nearly 9 million barrels\nto 426 million barrels . at this level they are below the highs of 1999 but\nwell above the low levels of early 1996 ( see figure 2 ) . japanese crude oil\ninventories at end - october were 107 . 6 million barrels , which is above the\nrecord low set earlier this year but still well below levels seen in recent\nyears ( see figure 3 ) .\ncome shoot the rapids with us at ceraweek 2001 , \" shooting the rapids :\nstrategies and risks for the energy future \" in houston , february 12 - 16 ,\n2001 ! ? for more information and to register , please visit\nhttp : / / www 20 . cera . com / ceraweek /\nto make changes to your cera . com account go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information from\ncambridge energy research associates , inc . ( cera ) which is confidential and\nmay be privileged . unauthorized disclosure , copying , distribution or use of\nthe contents of this message or any attachments , in whole or in part , is\nstrictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.888+0000", "entityId": 9344, "properties": {"text": "Subject: access on the block : international transmission auctions - cera a\nlert - december 20 , 2000\ntitle : access on the block : international transmission auctions are opening\neuropean power markets\ne - mail category : cera insight\ncera knowledge area : european power\ndespite an apparent impasse in negotiations among european transmission\nsystem operators , regulators , and the european commission in florence ,\nauctions of international transmission capacity ( itc ) in france , the united\nkingdom , denmark , belgium , italy , austria , switzerland , slovenia , and the\nnetherlands are opening access between countries and paving the way for the\nsingle european marketplace .\nhowever , the patchwork auctioning of access to itc leaves important issues\nunresolved . the most significant of these include the potential for gaming ,\nthird - party transit , and the allocation of auction proceeds . as they stand ,\nthese issues , cera believes , are likely to lead to action at the european\nlevel and the eventual imposition of a more integrated scheme .\nnevertheless , current plans to open most of europe ' s itc represent a\nwatershed of activity that will hasten transparency in the market and\ndetermine trade flows and signal transmission investment in 2001 .\ninternational auctions are opening markets\na major portion of international transmission capacity on the continent will\nbe allocated by auction in 2001 ( see table 1 ) . in cera ' s view auctions for\nitc are likely to have the greatest impact during 2001 in the following areas :\n* increasing market transparency . the posting of available transmission\ncapacity on yearly , monthly , and daily bases will facilitate the market ' s\nefficient usage of scarce interconnector capacity . for the first time ,\nsignals for new transmission investment , power flows , and transmission asset\nvaluation will come from the market .\n* increasing cross - border trade . although auctions may not reduce uncertainty\nin the marketplace initially , the effect of heightened transparency in access\nrules and prices will soon work to increase trade . secondary markets for\ninterconnector capacity will add to the number of actively traded power\nproducts and work to increase the overall level of trade . ?\n* increasing price correlation . auctions will replace nonmarket - based\nallocation methods such as long - term capacity reservation . the dynamic\ncharacter of shorter - term auctions , combined with an expected secondary\nmarket for capacity , should bring access to international capacity in line\nwith the needs of the market . in this way the market will be able to adjust\nmore rapidly to changes in local conditions and thereby work to correlate\npricing points .\n* increasing competition . once players have secured access to itc at a given\nprice , they will be looking to sign supply contracts or integrate the\ncapacity into structured deals . the result could be more aggressive\nmaneuvering on the part of incumbents and new entrants alike , resulting in\ngreater competition at the national level .\n* reducing the competitiveness of imports . the results of international\ntransmission capacity auctions will determine the competitiveness of imported\npower into domestic markets . final prices offered for itc will reflect the\nrelative cost of power between markets and work to make cheaper power more\nexpensive to import .\n* spurring investment in transmission . the money raised through auction could\nprovide transmission companies with the financial capability to invest in\nupgrading international transmission links . access to international\ntransmission capacity between the netherlands , germany , and belgium in 2001\nwas auctioned for 63 million euros ( see http : / / www . tso - auction . org for\ndetails ) . ? auctions for access into spain , france , and italy are expected to\nrealize a premium for access to highly coveted markets .\nconnecting rather than integrating markets\nauctions between national grids , or more accurately commercial grids , are a\npragmatic approach to the problem of granting access to scarce international\ntransmission capacity on an open and transparent basis . the auctions will\nopen access to interconnectors and at the same time reward transmission\nsystem operators .\neven so , the proposed approaches are not likely to satisfy market players or\nthe stated objectives of european policymakers . in cera ' s view the following\nissues may eventually bring down the hammer on itc auctions :\n* third - party transit . the bilateral nature of itc auctions perpetrates the\nproblem of tariff pancaking and discriminates against trade involving transit\nthrough a third grid . this is ultimately inconsistent with the european\ncommission ' s objective of a single european power market . the fact that\nphysical power flows do not follow contractual flows and almost always\ntransit third - party grids further weakens the legitimacy of the approach .\n* transaction - based scheme . although still transactional in nature ( tied to a\nspecific deal ) , auctions fall within the european commission ' s stated\npreference for market - based mechanisms for allocating international\ntransmission capacity . it remains to be seen how successful this approach is\nin achieving integration of national markets . action at the european level\ncould move allocation of itc in the direction of nontransactional mechanisms\nsuch as market splitting , counter trading , or redispatching .\n* gaming of auctions . auctions will in theory allocate access to transmission\non a nondiscriminatory market basis to those that value it most . in practice\nit remains to be seen if gaming can be avoided . even though most of the\nauctions have placed limits on ownership of transmission capacity , tactical\nmaneuvers could bid up transmission prices as players act to raise the price\nof imported power .\n* allocating auction proceeds . one likely outcome of auctions will be the\ntransfer of profits between players as transmission owners recoup some of the\nrents currently reaped by other players . this will works to raise the value\nof transmission assets relative to generation , suppliers , or traders . it\nremains to be seen how funds from auctions will be allocated among\ntransmission companies and the grid , as transmission is still currently\nsubject to monopoly regulation .\n* * end * *\ncome shoot the rapids with us at ceraweek 2001 , \" shooting the rapids :\nstrategies and risks for the energy future \" in houston , february 12 - 16 ,\n2001 ! ? for more information and to register , please visit\nhttp : / / www 20 . cera . com / ceraweek /\nto make changes to your cera . com account go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information from\ncambridge energy research associates , inc . ( cera ) which is confidential and\nmay be privileged . unauthorized disclosure , copying , distribution or use of\nthe contents of this message or any attachments , in whole or in part , is\nstrictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.897+0000", "entityId": 9345, "properties": {"text": "Subject: credit risk update\nvince ,\nper bill ' s request , attached is the credit supplement from the board meeting .\nstephanie\n3 - 9283", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.904+0000", "entityId": 9346, "properties": {"text": "Subject: happy holidays !\ni wish you wonderful holidays and a\nhappy happy new year with many\nblessings !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.911+0000", "entityId": 9347, "properties": {"text": "Subject: weather person for london egm\nfolks :\nwe interviewed three candidates . one of the three ( tony hamilton ) seems to\nbe a very good fit within the enron culture and values .\nrecommended next steps\nvince , mike and jeff interview tony via video conference or avistar\ntony hamilton key strengths\nquick thinker\ngood teams skills\ndriven - will be able to get the project off the ground quickly\nhas a commercial attitude\nsees \" the big picture \"\ntony hamilton is available for follow up interviews the first week of january .\nthanks\njen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.917+0000", "entityId": 9348, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nweather group\non wednesday , december 6 th , the weather channel aired an episode of their\nshow \" atmospheres , \" which included a fifteen minute segment focusing on\nenron ' s weather risk management business . mark tawney , steven vu , gary\ntaylor , and steve bennett were featured . the weather channel has aired the\nepisode periodically since then . the parts that make it through the enron\ncutting room floor will be coming soon to an elevator near you ! if you would\nlike to view a copy of the episode in its entirety , please contact yvette\nsimpson at ext . 3 - 9595 .\nthe weather risk management group completed the first ever power demand\ntransaction this week . the transaction was a swap based on the pjm demand\nindex . power demand contracts use average peak power demand as an index and\nallow power market participants ( generators , btu distributors , marketers ,\netc . . . ) to mitigate volumetric exposures . weekly swaps are available on\nenrononline and the desk has placed option contracts on this index in the\nbroker market . inquiries regarding this product should be directed to\nclaudio ribeiro , product manager ext . 3 - 7313 , gary taylor ext . 3 - 1511 , or\nvalter stoiani ext . 3 - 6906 .\nwest power trading\nit \u0001 , s been a wild and crazy holiday season in the west . electricity prices\nhave remained extremely bullish throughout the entire wscc , due in large part\nto below - normal temperatures , \u0001 & less than stellar \u0001 8 river flows in the\nnorthwest and northern california , tremendously volatile natural gas prices ,\nand a number of generating plants down for both planned and unplanned\nmaintenance . recently , the federal regulatory energy commission ( ferc ) has\nstepped in to implement several orders in an effort to try to correct this\n\u0001 some have the feeling\nthat the best is yet to come .\nhappy holidays\nseasons greetings from ena pr . the entouch newsletter will be on holiday\nbreak next week . if you have information for future issues of entouch ,\nplease send it to michelle vitrella . we hope you have a wonderful and safe\nholiday . see you next year !\nwelcome\nnew hires ena / eim / egm\nena \u0001 ) kimberly hardy , adam johnson , daniel lisk , william fleenor , stacey\nwales , jason fischer , aparna rajaram\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.922+0000", "entityId": 9349, "properties": {"text": "Subject: contact info . during my vacation\ncell : 011 - 91 - 984 - 9022360 ( try this first )\nhyderabad : 011 - 91 - 40 - 7114833\nvijayawada : 011 - 91 - 866 - 430928 ( dec 28 - jan 8 )\nbombay office : 011 - 91 - 982 - 1038711\nalso , i will be checking my email regularly ( as long as i can get the\nconnected ) . have a great christmas and holidays . i will see you all in the\nnew year !\nbest wishes\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.927+0000", "entityId": 9350, "properties": {"text": "Subject: lance ' s telephone\nhi vince :\nlance ' s telephone # is : ( 512 ) 280 - 5052 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.932+0000", "entityId": 9351, "properties": {"text": "Subject: december 22 - srrs decommissioning notification\nsrrs decommissioning notification\nwe are one @ enron\neffective friday december 22 , 2000 , you will have a new security request\ndatabase :\nin the past , enron corporate / north american users have used the security\nresource request system ( srrs ) lotus notes database for their security\nrequest needs including new hire / contractor / temporary access and\nterminations . in response to the business reorganization , the it security and\ncontrols group is working to streamline enron \u0001 , s security request structure\nand create one single request database for all groups to use , erequest ,\nlocated at http : / / itcentral . enron . com /\nplease click on the following link to retrieve the erequest training guide :\na great deal of effort has been put into this project to eliminate any\nduplicate security requests in enron ' s global enterprise . when you attempt\nto access the srrs through lotus notes on dec . 22 , you will find a link to\nthe new erequest system .\nif you have additional questions regarding your new security request or if\nyou have any problems with the erequest system , please contact information\nrisk management at 713 . 853 - 5536 .\nthank you\ninformation risk management", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.936+0000", "entityId": 9352, "properties": {"text": "Subject: total return swap\nhi , vince ,\nplease see attached the updated total return swap deals .\nall the best !\nli", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.942+0000", "entityId": 9353, "properties": {"text": "Subject: spvs\nhi , vince ,\nmerry christmas and happy new year !\nplease see attached brief descriptions of spvs , to my knowledge , there are a\ncouple more and i will keep you posted .\nbest regards ,\nli", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.947+0000", "entityId": 9354, "properties": {"text": "Subject: fw : garp ny - minutes of the credit derivatives meeting - december\n13 , 2000\nvince\ni will make sure you get on this distribution list .\ncredit is going to be a big issue for energy companies and banks .\nwe may need to form additional discussion groups .\nvolatility in energy prices and a general economic slowdown may cause an\nincrease in defaults .\nbanks are primarily interested in regulatory impact on loan portfolio and\ncredit derivatives as a an alternative to raising capital or selling assets .\nenergy companies could use credit derivatives to hedge or price credit\nexposure .\ndon mumma ( ex csfb , md axiom software ) is organizing a survey of energy credit\npractices . you can reach don at 212 - 248 - 4188 ext 22 .\nregards ,\nphilip merrill\ngarp regional director for new york\n973 - 258 - 1540\n- - - - - original message - - - - -\nfrom : gerber , jeannette [ mailto : jeannette . gerber @ csfb . com ]\nsent : thursday , december 21 , 2000 7 : 34 pm\nto : ' garpnyl @ home . com ' ; alev a suer ; amit srivastav ; andrew ulmer ; cfa\njohn p . felletter ; claudia cappelli ; francis owusu ; gerber , jeannette ;\njoe pimbley ; joseph c carrozzo jr ; lingja zhang ; marian trano - lepisto ;\nmarkus buri ; maurizio mondello ; nawal roy ; sarnj . dhanda ; yicheng zhong ;\n' john . tierney @ db . com ' ; ' tom _ mansley @ westlb . com '\nsubject : garp ny - minutes of the credit derivatives meeting - december\n13 , 2000\ndear members of the credit derivatives group .\nyou ' ve probably been wondering if i would ever get the minutes of last weeks\nmeeting out . well , here they are and i sincerely apologize for the delay . i\nalways thought this time of year is supposed to be slow , but unfortunately ,\nthe opposite has been the case .\nplease pay particular attention to the action points . we can only handle\nthese meetings successfully if each and everyone of you actively\nparticipates and plays a role ! the next meeting can only be scheduled if\nthere is enough feedback available .\nwishing you happy holidays ,\nregards ,\njeannette\ncredit | first\nsuisse | boston\ncrm credit exposure management ( new york )\n> * : + 1 ( 212 ) 325 9361\nfax : + 1 ( 212 ) 743 2562\nminutes of the garp ny credit derivatives meeting - december 13 , 2000\nthe meeting was generously hosted by westlb\nattendees :\nmatthew bianco\nclaudia cappelli\njoe carrozzo\njeannette gerber\ntom mansley\nphilip merrill\njoe pimbley\nmarian trano - lepisto\n( due to some technical problems , not all attendees received the invitations\non time . )\nsummary\nthe aim of this first meeting was to decide on topics , people involvement\nand the format of future meetings .\ntopics\nthe following topics were discussed for discussion in future meetings :\n* new models and structures available\n* practical work issues\n* credit risk policy\n* isda issues / documentation\n* regulatory issues / bis capital\n* hedging issues ( e . g . embedded options , rollover , funded vs unfunded ,\netc . )\n* electronic trading issues\n* general technology issues and information on new systems available\n* pricing differentials\n* pricing sources\n* current models used for pricing , var\n* credit event monitoring\n* counterparty suitability\naction : all members to check with credit derivatives colleagues within their\norganization to go over the list and complete .\naction : all members to pick topics they could lead through ( or they could\norganize someone to lead through ) .\npeople involved\nthe involvement will depend on the topic . a member of the group will lead\nthrough a meeting , or organize a credit derivative professional to lead\nthrough the meeting , depending on the topic .\nmeeting format\nwe expect a series of evening workshops to take place about every 6 weeks .\nin order to get active discussions going , all participants are expected to\ninquire within their own institutions as to how the particular subject under\ndiscussion is being treated in - house . we feel that the meetings will only be\nsuccessful if all participants are actively involved in the process .\nwe expect most members to be able to host the meeting once a year . please\nlet me know if and when you could host a meeting .\naction : all members to check if and when they can host a meeting .\nthe date and venue for the next meeting will be announced in early january ,\ndepending on your feedback on the topics .\nthis message is for the named person ' s use only . it may contain\nconfidential , proprietary or legally privileged information . no\nconfidentiality or privilege is waived or lost by any mistransmission .\nif you receive this message in error , please immediately delete it and all\ncopies of it from your system , destroy any hard copies of it and notify the\nsender . you must not , directly or indirectly , use , disclose , distribute ,\nprint , or copy any part of this message if you are not the intended\nrecipient . credit suisse group and each of its subsidiaries each reserve\nthe right to monitor all e - mail communications through its networks . any\nviews expressed in this message are those of the individual sender , except\nwhere the message states otherwise and the sender is authorised to state\nthem to be the views of any such entity .\nunless otherwise stated , any pricing information given in this message is\nindicative only , is subject to change and does not constitute an offer to\ndeal at any price quoted .\nany reference to the terms of executed transactions should be treated as\npreliminary only and subject to our formal written confirmation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.951+0000", "entityId": 9355, "properties": {"text": "Subject: lng hedging\nvince ,\nfyi . this is something the team has been working on with krishna .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n12 / 21 / 2000 04 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli\n12 / 21 / 2000 04 : 00 pm\nto : james a hughes / enron _ development @ enron _ development\ncc :\nsubject : lng hedging\njim ,\ni am attaching below a small draft note prepared by anshuman on lng hedging .\nit talks of two products :\n( 1 ) volumetric options ( where we buy a call on 100 % of the volumes and sell a\nput on 50 % of the volumes to finance the call ) , and\n( 2 ) ratio derivative where we buy two calls at a higher price , and sell one\nat a lower price to finance it . this is not one that the traders agree to ,\nsince at the upper price , the calls bought are just at the money , while the\nsold call is in the money , and will cost the seller .\nhence , only option 1 is useful . it could provide risk mitigation in the high\nprice scenario , while allowing some participation in low prices . to test it ,\nwe used march 2001 period . to have it cost neutral , we would buy a call at\n$ 26 , and sell the put at $ 25 . 15 .\nas we bounce these ideas , i think it is very important that we work closely\nwith the global markets group . the team on the ground knows the contracts\nbetter , and maybe able to give you insights on what can be sold to mseb .\nwould love to discuss the same with you .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.956+0000", "entityId": 9356, "properties": {"text": "Subject: re : lunch\nprzepraszam , ze tak dlugo nie odpowiadalem . nasz team mial zaplanowany\nwspolny wieczor w piatek , ale nic nie bylo pewne , poniewaz mamy duzo osob sie\nrozchorowalo . z tegoz powodu wieczor zostal odwolany , a ja jestem wolny .\njesli nadal nie ma pan planow na piatkowy wieczor , to ja jestem jak\nnajbardziej za spotkaniem .\nj\nvince j kaminski\n12 / 19 / 2000 10 : 05 am\nto : julius zajda / lon / ect @ ect\ncc :\nsubject : re : lunch\njuliusz ,\nsorry , i have to cancel the lunch meeting today .\npleas , give a call sometimes today . maybe we can meet for drinks friday\nafternoon .\ni am taking the next week off .\nvince\njulius zajda\n12 / 19 / 2000 09 : 25 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : lunch\ndzien dobry ,\nmam nadzieje , ze nic sie nie zmienilo i jestesmy umowieni na dziesiejszy\nlunch . proponuje sie spotkac o godzinie 12 . 00 na parterze obok biurka\n\" security ladies \" ( bo wiem gdzie to jest ) . ubrany jestem w czarne spodnie ,\nbezowe buty i szara bluze . nie jestem pewien czy bede mogl przeczytac\npotwierdzenie , bo od 10 do 11 . 45 przeprowadzam szkolenie .\njuliusz", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.960+0000", "entityId": 9357, "properties": {"text": "Subject: vince :\ni was in the power modeling presentation the other day and wanted to know if\ni could get a copy of your presentation . thanks agin for taking the time to\ngo through this important material with us .\nregards ,\nben rogers\n3 - 7998", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.965+0000", "entityId": 9358, "properties": {"text": "Subject: rac organization changes\nthe continued growth of the enron europe office and related businesses has\nprompted a change in the management of risk assessment and control ( rac ) in\nlondon . effective in early january , 2001 , ted murphy will transfer to the\nlondon office and manage the rac activities which includes credit / market risk\nand underwriting . ted will continue to manage the enron global market risk\nactivities . steve young , currently managing rac in london , will begin a new\nassignment within ebs , also in london .\nthe houston market risk group will be managed by david port .\nas enron continues to expand its trading and risk management businesses , it\nis vital that trading and credit policies are administered in a consistent\nand accurate manner across the company . hopefully this realignment will\naccomplish that goal .\nplease join me in congratulating ted , david and steve on their new\nassignments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.970+0000", "entityId": 9359, "properties": {"text": "Subject: re : hello\ngerry ,\nlet me review my calendar in the beginning of the next year and i shall\ne - mail you\nwith a suggested date . my assistant will update my schedule for 2001 in the\nfirst week\nof january and i shall be able to select a date for ypur presentaton .\nvince kaminski\n\" sheble , g . b . \" on 12 / 21 / 2000 10 : 43 : 50 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : hello\ndear mr . kaminski\nplease excuse the cancellation due to illness . the students do not care who\nthey infect near the end of the semester , they just want to get done !\nhere is my available schedule for next year . i am now overloaded next week\nwith tasks to complete the semester . i do hope that we can reschedule\nduring the first quarter next year .\ni would note that my schedule is most free for thursday or friday . i could\nfly out late wednesday night .\ncordially ,\ngerry\nteaching schedule\nm 11 - 12\nt and r 10 - 12 and 2 - 4\nt 12 - 2 ep & es seminar\nm 6 - 8\nt 6 - 8\nw 6 - 8\n( r = thursday )\nworkshops :\njan 12 - 13 des moines\njan 26 - 27 des moines\nfeb 9 - 10 des moines\nieee wpm conference\nfeb 28 - 31 columbus , ohio", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.975+0000", "entityId": 9360, "properties": {"text": "Subject: re : spring workshop\nfolks :\nit is my pleasure to announce the visit of professor rene carmona from\nprinceton on february 13 , 2001 .\n( this web site may provide a little information on professor carmona :\nhttp : / / www . princeton . edu / ~ rcarmona / )\nprofessor carmona is going to talk to us about his research endeavors in\nweather and financial engineering .\nsimilarly , we will make a short presentation of our activities and research\ninterests .\nthe aim of the meeting is to explore areas of common interest and investigate\nthe possibility of collaborating in certain research areas .\nthe time is 2 : 00 - 3 : 30 pm . room eb 30 cl is reserved for 2 : 00 - 4 : 30 pm .\nplease plan on attending . also , do let me know , if you would like to include\nsomeone else to this distribution list .\nyannis tzamouranis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.980+0000", "entityId": 9361, "properties": {"text": "Subject: re : invitation . . . welcome new analyst reception\nthanks ,\ni shall attend .\nvince kaminski\ntracy l arthur\n12 / 20 / 2000 04 : 20 : 35 pm\nto : tracy l arthur / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : invitation . . . welcome new analyst reception", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.986+0000", "entityId": 9362, "properties": {"text": "Subject: re : agenda for houston visit\nmike ,\nsounds good .\nchristian\nmike a roberts @ ect\n21 / 12 / 2000 09 : 26 am\nto : christian werner / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , paul\nquilkey / enron _ development @ enron _ development , mark tawney / hou / ect @ ect\nsubject : re : agenda for houston visit\nchristian ,\njust finished meeting with pual , vince & mark\nnew plan :\nlet ' s plan on your coming to houston march 12 th - april 2 nd ( after our\nsummer / winters respectively\nbut . .\nlet ' s proceed with the project without pause :\n1 . please send up the software that needs to be installed along with\noperating system requirements\n2 . please copy me on forecasting provided to sydney office on a daily basis\nif we work on these two fronts , it will optimize your time here and permit\ntransotion to cover your forecasting there\nthanks\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.991+0000", "entityId": 9363, "properties": {"text": "Subject: re : agenda for houston visit\nhi mike ,\nthanks for the message .\nhere is one more reason why we should have our own in - house modelling :\nthe pcmdi nwp weather maps have been discontinued\nthe pcmdi wxmap web has been discontinued starting 20 december , 2000\nplease see the u . s . navy wxmaps at . . .\ni will shortly forward a set of minimum requirements ( hardware . . . ) , softare\nhas been written by me , with some public domain software .\ni am thinking of setting up an internal website with model output data , and\nverification info .\ncheers ,\nchristian\nmike a roberts @ ect\n21 / 12 / 2000 09 : 26 am\nto : christian werner / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , paul\nquilkey / enron _ development @ enron _ development , mark tawney / hou / ect @ ect\nsubject : re : agenda for houston visit\nchristian ,\njust finished meeting with pual , vince & mark\nnew plan :\nlet ' s plan on your coming to houston march 12 th - april 2 nd ( after our\nsummer / winters respectively\nbut . .\nlet ' s proceed with the project without pause :\n1 . please send up the software that needs to be installed along with\noperating system requirements\n2 . please copy me on forecasting provided to sydney office on a daily basis\nif we work on these two fronts , it will optimize your time here and permit\ntransotion to cover your forecasting there\nthanks\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:49.996+0000", "entityId": 9364, "properties": {"text": "Subject: f / up\nvince -\ni got your message ( i was up on the roof of the building helping to fix the\nweather satellite dish - what a gorgeous view of houston ! ) .\ni appreciate your words . everything remains fine , vince . you are my \" father \"\nhere at enron , and i admire and respect you greatly . i think i know the kind\nof person you are , in terms of your integrity , and i admire the high\nstandards you set for all of us in your extended \" group . \"\ni want to let you know i am not the only one in the group who doesn ' t\nappreciate the way maureen disrespects you . you remain the key external\nfactor in their success - it is not simply their own abilities that matter to\ntheir futures but your own - vince ' s - success with upper management that\nmatters .\nwe respect you , and we don ' t like it when you are disrespected . maureen\ndidn ' t disrespect me today , vince , she disrespected you .\nit ' s time i told you something . last april , maureen , highly intoxicated\nfollowing a work - related function at ninfa ' s , made an unsolicited predatory\nsexual advance on me at my desk on the 19 th floor . i was shocked and\ndisgusted , but i didn ' t say one word about this , vince , because i played it\nout and didn ' t want to put you into the position of having a raving maureen\nin your midst as you perhaps had to fire her and then endure a litany of\ngender - bias crap lawsuits .\ni \" took one for the team , \" vince . i can ' rt say i would do it again - maureen\nis brazen to berate me after what she did , in public no less .\ni appreciate your bringing me into enron . i ' ve found a respectful and ,\nindeed , a loving work environment . i remain willing to do whatever i can to\nhelp the group .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.005+0000", "entityId": 9365, "properties": {"text": "Subject: re : your encouragement would be appreciated\nto all a - team members :\ncheck out the nice recognition note below\ni also receive numerous verbal high fives from the other desk heads as well\nwe had a great year\nkudos to all members of the team\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 12 / 21 / 2000\n03 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n12 / 21 / 2000 03 : 00 pm\nto : jim schwieger / hou / ect @ ect\ncc : jeff skilling / corp / enron @ enron , greg whalley / hou / ect @ ect , david w\ndelainey / hou / ect @ ect , john j lavorato / corp / enron @ enron ( bcc : mike a\nroberts / hou / ect )\nsubject : re : your encouragement would be appreciated\njim ,\nthanks a lot . it is difficult to find a better example example of commitment\nto enron and to professional excellence\nthan our weather guys .\nvince\njim schwieger\n12 / 21 / 2000 10 : 32 am\nto : jeff skilling / corp / enron @ enron , greg whalley / hou / ect @ ect , david w\ndelainey / hou / ect @ ect , john j lavorato / corp / enron @ enron\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : your encouragement would be appreciated\nthe gas and power trading organizations have had a tremendous year .\nsometimes we as traders forget some of the crucial parts of the organization\nthat significantly contributed to that success . i believe the weather group\ncomprised of mike robert ' s , jose marquez , stephen bennett and dave ryan from\npower are one of those groups . these individuals have done a tremendous job\nof predicting summer weather along with the route hurricanes would take . the\ngreatest achievement has been the november and december winter forecast .\nthey held fast to their cold forecast even when outside services were\nmoderating . on a score card with all other services they definitely deserve\nan \" a + \" . when you are down on the 32 nd floor it would be nice if you would\nstop and congratulate them on a tremendous job and their contribution to our\nsuccess .\nthanks , jim schwieger", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.014+0000", "entityId": 9366, "properties": {"text": "Subject: your encouragement would be appreciated\nthe gas and power trading organizations have had a tremendous year .\nsometimes we as traders forget some of the crucial parts of the organization\nthat significantly contributed to that success . i believe the weather group\ncomprised of mike robert ' s , jose marquez , stephen bennett and dave ryan from\npower are one of those groups . these individuals have done a tremendous job\nof predicting summer weather along with the route hurricanes would take . the\ngreatest achievement has been the november and december winter forecast .\nthey held fast to their cold forecast even when outside services were\nmoderating . on a score card with all other services they definitely deserve\nan \" a + \" . when you are down on the 32 nd floor it would be nice if you would\nstop and congratulate them on a tremendous job and their contribution to our\nsuccess .\nthanks , jim schwieger", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.019+0000", "entityId": 9367, "properties": {"text": "Subject: address for recommendations\nvince ,\nplease forward the recommendations to the following address :\n2569 windbreak dr .\nalexandria , va 22306\ndon ' t forget to label each envelope , e . g . \" columbia \" , etc . , and to sign\neach envelope over the adhesive seal . i must receive the package\nbefore the new year in order to meet the submission deadline .\nthank you for your time , and happy holidays .\n- hector", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.024+0000", "entityId": 9368, "properties": {"text": "Subject: request submitted : access request for amitava . dhar @ enron . com\nyou have received this email because the requester specified you as their vp .\nplease click\napproval to review and act upon this request .\nrequest id : 000000000011185\nrequest create date : 12 / 21 / 00 4 : 20 : 10 pm\nrequested for : amitava . dhar @ enron . com\nresource name : vpn\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.029+0000", "entityId": 9369, "properties": {"text": "Subject: request submitted : access request for amitava . dhar @ enron . com\nyou have received this email because the requester specified you as their\nmanager . please click\napproval to review and act upon this request .\nrequest id : 000000000011185\nrequest create date : 12 / 21 / 00 4 : 20 : 10 pm\nrequested for : amitava . dhar @ enron . com\nresource name : vpn\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.035+0000", "entityId": 9370, "properties": {"text": "Subject: request submitted : access request for amitava . dhar @ enron . com\nyou have received this email because the requester specified you as their\nmanager . please click\napproval to review and act upon this request .\nrequest id : 000000000011185\nrequest create date : 12 / 21 / 00 4 : 20 : 10 pm\nrequested for : amitava . dhar @ enron . com\nresource name : unlisted application / software\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.039+0000", "entityId": 9371, "properties": {"text": "Subject: new site ' s url\nthank you all in advance for contributing to enron research site !\nhere is the new site ' s url : http : / / enaresearch . dev . corp . enron . com\nwhen system requests login and password , please use the login and the\npassword that you use to login into the enron network .\nplease send me your comments and suggestion , so that they will be\nincorporated into the site .\nsincerely , elena\nelena chilkina\n713 - 853 - 4503", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.044+0000", "entityId": 9372, "properties": {"text": "Subject: eol wti trading simulation\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 12 / 22 / 2000\n01 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n12 / 22 / 2000 01 : 24 pm\nto : ted murphy / hou / ect @ ect\ncc :\nsubject : eol wti trading simulation\nted ,\nmaximum daily loss was $ 12 . 2 mm on a daily move of $ 1 . 74 when we would have\nstarted the day already near the position limit of 5 mm bbl .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.049+0000", "entityId": 9373, "properties": {"text": "Subject: re : my model for spikes\nvalery ,\ni am interested in receiving the preprint .\non another note , i would be glad to meet you for lunch / dinner\nsometimes during the next few weeks .\nplease , let me know what would be the best time to meet .\nvince\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\n\" valery kholodnyi \" on 12 / 20 / 2000 03 : 13 : 09 pm\nto : vkamins @ enron . com\ncc :\nsubject : my model for spikes\ndear dr . kaminski ,\ni was recently allowed to release into the public domain on the limited basis\nthe first of the preprints that i recently authored on my model for spikes in\npower prices and for the valuation of the contingent claims on power . in this\nregard , i have just given a talk on this model at the joint seminar of the\ncenter for energy finance education and research and the institute for\ncomputational finance at the ut austin . right now i am also in the process of\nforming a list of specialists both in the industry and academia who might be\ninterested in receiving this preprint . please let me know if you might be\ninterested in receiving this preprint .\ni look forward to hearing from you .\nsincerely yours ,\nvalery kholodnyi\nmanager of quantitative analysis\nresearch and analytics group\ntxu energy trading\nps . here are the main preprints that i have recently authored on my model for\nspikes in power prices and valuation of contingent claims on power :\n1 . valery a . kholodnyi , the stochastic process for power prices with spikes\nand\nvaluation of european contingent claims on power , preprint , txu - rag - 01 / 00 ,\njuly\n2000 .\n2 . valery a . khlolodnyi , valuation of a swing option on power with spikes ,\npreprint txu - rag - 05 / 00 , august , 2000 .\n3 . valery a . kholodnyi , valuation of a spark spread option on power with\nspikes ,\npreprint txu - rag - 21 / 00 , november 2000 .\n4 . valery a . kholodnyi , valuation of european contingent claims on power at\ntwo\ndistinct points on the grid with spikes in both power prices , preprint\ntxu - rag - 24 / 00 , november 2000 .\n5 . valery a . kholodnyi , valuation of a transmission option on power with\nspikes ,\npreprint txu - rag - 25 / 00 , november 2000 .\nas i have indicated to you in my previous e - mail , contrary to the standard\napproaches , i model spikes directly , as self - reversing jumps on top of a\nstochastic process for the regular dynamics of power prices in the absence of\nspikes . in this way the dynamics of power prices is modeled as a non - markovian\nprocess , even if the process for the regular dynamics of power prices is\nmarkovian . among other things my model for spikes allows for the explicit\nvaluation and hedging of contingent claims on power with spikes , provided that\nthe corresponding contingent claims on power can be valued and hedged in the\nabsence of spikes .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.054+0000", "entityId": 9374, "properties": {"text": "Subject: correction : interim report to gary hickerson for ag trading\napologies . please note that i pasted the wrong graph in the previous version\ni sent . this is the correct version .\nthanks ,\nkate\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kate lucas / hou / ect on 12 / 22 / 2000 02 : 56 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nkate lucas\n12 / 22 / 2000 02 : 27 pm\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect , nelson neale / na / enron @ enron , mauricio\nmora / na / enron @ enron\nsubject : interim report to gary hickerson for ag trading\nvince ,\nplease find attached the interim report on agricultural commodity trading for\ngary hickerson . your comments are welcome as we would like to send this to\ngary as soon as possible .\nregards ,\nkate\next 3 - 9401", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.059+0000", "entityId": 9375, "properties": {"text": "Subject: interim report to gary hickerson for ag trading\nvince ,\nplease find attached the interim report on agricultural commodity trading for\ngary hickerson . your comments are welcome as we would like to send this to\ngary as soon as possible .\nregards ,\nkate\next 3 - 9401", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.063+0000", "entityId": 9376, "properties": {"text": "Subject: henwood ' s 2001 ercot symposium : january 23 , 2001\nshirley ,\nplease , register me , lance and alex for this event .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 22 / 2000\n04 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" chris farrell \" on 12 / 22 / 2000 06 : 13 : 50 am\nto :\ncc :\nsubject : henwood ' s 2001 ercot symposium : january 23 , 2001\nmark your calendar - tuesday january 23 , 2001 downtown houston hyatt hotel\nhenwood will be hosting a comprehensive ercot symposium on tuesday , january\n23 , 2001 . a team of henwood regional power market specialists will be\npresenting the latest analysis and\ninformation to assist you in preparing for the new ercot restructured power\nmarket , in addition to an anlysis of the issues now playing out in the wscc\nmarkets . coffee and registration will\nbegin at 9 : 30 am and the program will run until 3 : 00 pm . lunch and snacks\nwill be provided .\nagenda topics include :\n* what will be the critica - success factors for qualified scheduling entities\noperating in ercot ' s new wholesale & retail markets ?\n* how will market restructuring impact mid to long - term wholesale prices ?\n* what is the outlook for new generation ?\n* what are the impacts of upcoming emission regulations on ercot ' s generation\nresources ?\n* what are the new analytical tools available to capture market uncertainty\nimpacts to your supply contracts and generation assets ?\n* what are the restructuring lessons learned from the california experience\nand the implications to ercot ?\nin conjunction with this program , henwood will have a demonstration room\navailable to present its latest software applications and e - business\nsolutions . a nominal $ 75 registration fee is required\nto reserve a space in the workshop .\nfor more information or to reserve your spot , please contact chris farrell at\nhenwood : cfarrell @ hesinet . com or 916 / 569 - 0985 .\nabout henwood : henwood offers integrated business solutions , strategic\nconsulting , and innovative e - business applications to meet the challenges of\nthe restructured energy markets throughout\nnorth america , australia , and europe , serving clients that include eight of\nthe ten top utilities in north america , in addition to energy services\nproviders and power marketers .\nif you want to be removed from our email list please reply to the sender and\nput \" remove \" in the subject box .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.068+0000", "entityId": 9377, "properties": {"text": "Subject: energy & power risk management 2001\ndear vince ,\ni would like to confirm the invitation for you to participate at our annual\ncongress in houston . following our conversation , i would be most interested\nin including a presentation on ' modeling price volatility in us power\nmarkets ' in the pricing , hedging & trading stream on the 14 th may , 2001 .\ni am keen to confirm each speaker and session by the end of next week , which\nwill then allow time to work with each presenter on titles and points that\nwill provide an accurate summary for the session .\nif you have any overall views or suggestions regarding the conference feel\nfree to email me at pbristow @ riskwaters . com or call me on 212 925 6990 ,\nextn . 225 . i look forward to confirming your participation at energy & power\nrisk management 2001 . important : due to system problems i am using another\nsystem . please do not reply to this email . please reply to the address given\nabove .\nyours sincerely ,\npaul bristow\nmanager of conferences , usa\nrisk waters group\n- spktemp 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.074+0000", "entityId": 9378, "properties": {"text": "Subject: the garp 2001 convention : gentle reminder\nthe garp 2001 convention ohp ; lcd projection ) .\n?\nalso , if required , please do not forget to book your hotel accommodation , as\nrooms will not be reserved for garp speakers and delegates after the middle\nof january . attached is a hotel booking form for your convenience .\n?\nif you have any questions or queries please do not hesitate to contact me ,\nthough i will be out of the office until 2 nd january , 2001 .\n?\nfinally , i would like to wish you a wonderful festive season and a happy &\nprosperous new year . looking forward to meeting you in new york in february .\n?\nkind regards\n?\nandreas\n?\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nandreas simou\ngarp , conference director\ntel ? + 44 ( 0 ) 20 7626 9301\nfax + 44 ( 0 ) 20 7626 9900\nandreas . simou @ garp . com\n?\ndon ' t miss the garp 2001 convention ,\nprogram details via our web site\nwww . garp . com\n- hotel form . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.079+0000", "entityId": 9379, "properties": {"text": "Subject: re : message from samer takriti\nsamer ,\ni am glad this problem has been taken care of .\nhope everything is going well for you .\ni shall get in touch with you before coming to new york city .\nhappy holidays an the best of luck .\nvince\nshirley crenshaw\n12 / 11 / 2000 08 : 13 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : message from samer takriti\nvince :\nsamer asked me to forward this to you ( he was using the wrong email address ) .\ni will forward him the correct address .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 12 / 11 / 2000\n08 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" samer takriti \" on 12 / 08 / 2000 10 : 01 : 49 am\nto : shirley . crenshaw @ enron . com\ncc :\nsubject :\nshirley ,\nmy message to vince keeps coming back . could you please forward it to him ?\nthanks .\n- samer\n- - - - - - - - - - - - - - - - - - - - - - forwarded by samer takriti / watson / ibm on 12 / 08 / 2000\n11 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndelivery failure report\nyour\ndocument :\nwas not vince . kaminsky @ enron . com\ndelivered to\n:\nbecause : 550 5 . 1 . 1 . . . user unknown\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nto :\ncc :\nfrom :\ndate : 12 / 07 / 2000 05 : 52 : 45 pm\nsubject :\nvince ,\nhow are you ? i apologize for not contacting you earlier . we bought a small\nhouse and it is consuming all of our time . we also adopted a little puppy\nwhich proved to be a lots of work . believe it or not , i have not had the\nchance to visit ny city yet ( i was there once briefly to drive to the\nairport ) .\ni just received the check for the airline ticket . thank you for taking care\nof this issue quickly . shirley was , once again , superb . take care . hope you\nhave great holidays . if you happen to be in the ny area , please let me\nknow . perhaps we can have lunch or a drink together .\n- samer", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.084+0000", "entityId": 9380, "properties": {"text": "Subject: f / up\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 22 / 2000\n04 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n12 / 21 / 2000 03 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : f / up\nvince -\ni got your message ( i was up on the roof of the building helping to fix the\nweather satellite dish - what a gorgeous view of houston ! ) .\ni appreciate your words . everything remains fine , vince . you are my \" father \"\nhere at enron , and i admire and respect you greatly . i think i know the kind\nof person you are , in terms of your integrity , and i admire the high\nstandards you set for all of us in your extended \" group . \"\ni want to let you know i am not the only one in the group who doesn ' t\nappreciate the way maureen disrespects you . you remain the key external\nfactor in their success - it is not simply their own abilities that matter to\ntheir futures but your own - vince ' s - success with upper management that\nmatters .\nwe respect you , and we don ' t like it when you are disrespected . maureen\ndidn ' t disrespect me today , vince , she disrespected you .\nit ' s time i told you something . last april , maureen , highly intoxicated\nfollowing a work - related function at ninfa ' s , made an unsolicited predatory\nsexual advance on me at my desk on the 19 th floor . i was shocked and\ndisgusted , but i didn ' t say one word about this , vince , because i played it\nout and didn ' t want to put you into the position of having a raving maureen\nin your midst as you perhaps had to fire her and then endure a litany of\ngender - bias crap lawsuits .\ni \" took one for the team , \" vince . i can ' rt say i would do it again - maureen\nis brazen to berate me after what she did , in public no less .\ni appreciate your bringing me into enron . i ' ve found a respectful and ,\nindeed , a loving work environment . i remain willing to do whatever i can to\nhelp the group .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.089+0000", "entityId": 9381, "properties": {"text": "Subject: wti - new eol product\nplease provide comments on the summary below . after i have collected them ,\nwe can decide to distribute to greg , john , jeff and anyone else involved .\nthe following is my summary of our collective thoughts regarding the proposed\n24 x 7 trading of prompt wti :\n1 ) appears advisable to have on - site human monitoring for the following\nreasons :\na ) public relations\nb ) in case there are operational bugs\nc ) unforeseen market events , particulary during off exchange hours , long\nweekends , etc\n2 ) we advocate some live trading simulation with incentives to \" bust \" the\nsystem prior to launch to work our\noperational glitches , and because the historical simulations used daily ,\nnot intra - day prices .\n3 ) consider a daily position limit ( a sub - limit of the overall global\nproducts limit ) whereby each day , at least once a day ,\nthe open position will be reduced under the limit ( or to close to flat ? )\n4 ) consider a \" trigger \" whereby the fixed spread widens if a certain number\nof consecutive trades occurs on the same\nside of the market\n5 ) consider the purchase of deep out - of - the - money puts and calls to protect\nagainst extreme events .\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.094+0000", "entityId": 9382, "properties": {"text": "Subject: re : stanford project\nnick ,\nthanks for your message . my family is in houston for the christmas holidays\nand this means i am not coming any time soon to stanford .\ni shall probably visit the campus for the parents weekend . let ' s\nplan to meet for dinner then .\ni am very glad that you have recruited the 2 nd phd student for the research\nproject .\nwe are discussing internally what would be the best topic ( s ) for the project\nand we should be ready to talk to you in the nearest future about it .\nit makes a lot of sense for you to visit enron to finalize the selection\nof the research topics .\nwe shall be glad to take both eric and giuseppe as summer interns .\neverybody was immensely impressed with giuseppe and we shall\nwelcome him with open arms .\ni shall get in touch with you in the beginning of january to finalize the\narrangements for your trip and our meeting at stanford .\nvince\nnick bambos on 12 / 20 / 2000 12 : 14 : 40 pm\nto : vince . j . kaminski @ enron . com\ncc : stinson . gibner @ enron . com\nsubject : stanford project\nhello vince and stinson ,\nfirst of all ,\nbest wishes for happy holidays ! ! ! !\nif you are in the stanford area during the holidays , let ' s get together\nsome time to have dinner .\ni have formally established the project - thanks again for funding\nit - and i have also recruited the second phd student . his name is\neric cope , and he is a top - notch student , very mature , and entrepreneurial !\nwe have started working on some interesting problems in this area . i would\nhope that eric could spend the coming summer at enron to get immersed into\nthe \" problem / opportunity generation environment . \" that really helps the\nstudent\nto develop a realistic vision about their research .\nperhaps , our whole team could visit enron again some time in the next quarter ,\nsay in march or so , to discuss the research issues we are pursuing . and of\ncourse\nyou could visit us before that too .\nwith my warmest wishes ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.104+0000", "entityId": 9383, "properties": {"text": "Subject: re : greetings\nfrank ,\nthanks for your message .\nsee you in houston and happy holidays .\nvince\nfrank qian on 12 / 19 / 2000 11 : 56 : 14 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : greetings\ndear mr . kaminski :\ni am very glad to be slected for the 2 nd round interview at enron . it will\nbe at the end of january . i look forward to seeing you again and meeting\nother people of research group .\nhave a happy holiday and new year !\nfrank", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.112+0000", "entityId": 9384, "properties": {"text": "Subject: 2000 expenses\nas you all know the deadline for 2000 invoices to ap was on friday , december\n15 , 2000 . in order to get all 2000 expenses accounted for in 2000 , i need an\ne - mail from you with name of the vendor , amount , cost center to be billed to ,\ncontact person ( if any ) . some of the costs to consider : services provided\nto enron in 2000 but we have not receive the invoices , employee expense\nreports , and / or any purchases we made in 2000 , but have not submit the\ninvoices to ap by the cutoff date . i need this information by noon friday ,\ndecember 29 , 2000 . if you have any questions , call me at 5 - 7094 . thanx\nirma , kristi and ramona ,\nwill you make sure everyone in hr department know the deadline . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.117+0000", "entityId": 9385, "properties": {"text": "Subject: contact info\ni will be out next week . if there are any problems with or questions\nconcerning the grains report , please let me know . i can be reached on my\ncell phone at 713 - 303 - 5973 and will periodically check voice mail . have a\ngood holiday !\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.122+0000", "entityId": 9386, "properties": {"text": "Subject: ( no subject )\nstinson ,\nhenwood can help us with the project in our time frame ( end of january ) . the\nhenwood person who will coordinate the project is david branchcomb , located\nin london . he will have to involve the henwood ? manager for asia , who works\nout of australia .\ni told him that you would call him wednesday morning on his cell phone to set\nup a conference call later the same day with the guy in australia . given time\ndifference it may happen late afternoon .\nthey expect that we shall give them the specs of the project . it makes sense\nto involve sandeep at the conference call : he will be very specific about our\nneeds . i sent you his coordinates in an earlier message . sandeep may have to\ncome to the office : i don ' t know if anita knows how to set up a conference\ncall .\ndavid ' s phone numbers :\n44 207 242 8950\n44 787 942 5375 ( cell ) .\ni may be at the office in the morning for an hour or two .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.127+0000", "entityId": 9387, "properties": {"text": "Subject: re : houston trip\ndear vince / christie ,\nthanks for coming to philadelphia to present an overview of the projects . we\nenjoyed meeting you and your colleagues and look forward to working with\nenron . i would also like to pass on my team ' s appreciation for the dinner as\nwell .\nwe wanted to give you an update on our project and get some feedback and\nadditional information prior to our upcoming visit to houston on january\n19 th . our project is going to be geared to the 3 rd option you mentioned . we\nplan on addressing some part of the retail energy services business . we are\nconsidering two options regarding this topic and would like to pursue either\n( i ) how customers are acquired and recommending new processes and ways to\nserve retail customers , or\n( ii ) studying the supply chain and coming up with recommendations for areas\nfor further investments .\nhowever , we would like to get some more information on the retail energy\nservices before truly scoping the project . we are also very open to\nsuggestions , especially if you had a much broader or different scope in mind ;\nso please let us know .\nwe have not yet reviewed the introductory information received last week , but\nhere are the questions we have specific to the retail energy services unit :\ncan we look at its overall business plan or a more detailed summary than is\nin the annual report ?\nwhat is the pricing philosophy / overall structure ?\nwho are the customers and how are they acquired ?\nwhat would the customers be doing if they did not work with enron ?\nwhat are the international expansion plans and capabilities ?\nis there any important regulatory summary information we can have ?\nif this information is not already covered in the review material you sent ,\nwill you be able recommend other sources where we may find such information ?\nafter we have reviewed the material sent to us recently , we may want to\nschedule a phone call with you and / or one of your colleagues directly\ninvolved in the retail energy services business . i would like to call you in\nthe new year to discuss this further . in the meantime , please feel free to\ncall me at ( 215 ) 546 - 9416 if you need any information .\nregards ,\nretail energy services tiger team\nram\ndennis\njason\nomar\nsteve\nclay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.132+0000", "entityId": 9388, "properties": {"text": "Subject: projects update\nvince ,\na quick project update .\n1 . sandeep and i spoke with robert schenck in adelaide . he will email a\nhenwood proposal to us . they already figured that we must be interested in\nmodelling dabhol .\n2 . the wti eol trading simulation had an error . we were counting a\nmid - offer spread profit on each trade , but we actually would make the spread\non each round - trip transaction ( one trade to open , one trade to close ) . i\nmodified the calculation and sent the new numbers to greg whalley ( he is the\none who caught the mistake , so there goes my bonus for the year . ) and john\nlavorato . i should probably re - run the earning volatility numbers , and\nupdate ted murphy as well .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.136+0000", "entityId": 9389, "properties": {"text": "Subject: re : eol wti historical trade simulation\nstinson ,\nthanks a lot for so much work you have done for the simulation model .\nit seems that our work will make an impact on eol trading , that is very\nexciting .\ncould you e - mail me the spreadsheet model so that i can catch up with\nthe changes you have made ?\ni read a few books during this vocation . especially a stochastic processes\nbook , i finished the entire book . the queueing theory is very fascinating ,\nand hopefully we can apply the theory to a real ebs project .\ni will take my family out to see the nature bridge caverns near san antonio\ntomorrow .\nsee you on tuesday .\nhappy new year !\nzimin\nstinson gibner\n12 / 27 / 2000 08 : 09 pm\nto : greg whalley / hou / ect @ ect , john j lavorato / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , zimin lu / hou / ect @ ect\nsubject : eol wti historical trade simulation\ngreg ,\nhere are results corrected for spread profit per round - trip transaction .\nprior results incorrectly counted a spread profit per trade .\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.143+0000", "entityId": 9390, "properties": {"text": "Subject: re : india model\nvince ,\ni forwarded this to sandeep so he could reply .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 12 / 28 / 2000\n03 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" robert schenck \" on 12 / 27 / 2000 11 : 21 : 18 pm\nto :\ncc :\nsubject : re : india model\nstinson ,\ni am trying to contact our data base experts at the moment to clarify some\nissues with the region and may need another day to get something more\nconcrete in front of you .\nwhat i would like to know is the extent of your company knowledge re the\nfollowing\ngeneration units ' nameplate capacity , fuel type , efficiency , o vince . j . kaminski @ enron . com\n> subject : india model\n>\n>\n> robert ,\n>\n> enron would like to do a study of power prices and dispatch for\n> india we\n> have spoken with david branchcomb to see if henwood can help with this\n> project in our time frame ( results needed by end of january ) , and he\n> suggested that we speak directly with you about the project .\n>\n> i will try and give you a call later today ( wednesday afternoon\n> in houston ,\n> thurday morning , adelaide ) at around 9 : 00 a . m . your time to see we can\n> describe for you the project in more detail .\n>\n> regards ,\n>\n> stinson gibner\n> enron research group\n> ( 713 ) 853 - 4748\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.147+0000", "entityId": 9391, "properties": {"text": "Subject: wti - new eol product\nted ,\nenclosed is a corrected version of the historical simulation of wti\ntrading . the earlier results were double counting the spread profit on\ntrades closed intra - day . the spread was counted on each trade rather than\nper round - trip transaction , so the new results show lower profitability .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.152+0000", "entityId": 9392, "properties": {"text": "Subject: jcc forward curve\nthe following spreadsheet contains a simple way to build a jcc forward\ncurve . it is based upon the spread between jcc and brent lagged one month .\ni ' m out until the 2 nd .\n- kevin k .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.157+0000", "entityId": 9393, "properties": {"text": "Subject: seasonal factors and curve fitting\ni have written a c + + code to do the following : for a given curve ,\nthe code will filter out the seasonal factor . it then fits the deseasoned\ncurve to a smooth function of the form f ( t ) = a + a / ( t + b ) c , with 00 , which is useful in calculating forward - forward ? vol . ? the outputs are season patterns ( 2 different patterns are allowed ) ? and the smoothed curve . one can then calculate forward - forward vol ? from the smoothed curve and superimpose the seasonal factors back ? onto the curve . ? ? this procedure is not useful for var calcuation . however , i believe it ? is useful for other situations which require the knowledge of seasonal ? forward - forward vols . for example , in power plant valuation and ? credit exposure simulations , it would reflect the reality more closely ? if we add seasonality to our forward - forward vol in simulating the forward ? prices . ? ? attached are the spreadsheet and xll file . i will forward the c code if ? any of you is interested . ? ? alex ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.162+0000", "entityId": 9394, "properties": {"text": "Subject: combinatorial auction - jan 11 mtg background\n- - - - - forwarded by greg woulfe / enron communications on 12 / 28 / 00 09 : 58 am - - - - -\nchonawee supatgiat @ enron\n12 / 22 / 00 05 : 08 pm\nto : stinson gibner / hou / ect @ ect , greg woulfe / enron communications @ enron\ncommunications\ncc :\nsubject : combinatorial auction\nstinson and greg ,\ni have read the paper \" combinatorial auction with multiple winners for\nuniversal service \" from richard steinberg and frank kelly . they propose a\ncombinatorial auction which is an auction for multiple items that allows\nbidders to realize their synergies on combinations of items . the\ncombinatorial auction is appropriated for bandwidth commodity because most\nbidders in the market have synergies on the combination of items . for\nexample , if we want to get bandwidth between boston and dc , we would bid for\nboston - ny and ny - dc . it will be valuable to us only if we won both links . if\nwe won only one link , it will be useless .\nin the paper , they propose the auctioning method but their method has not\nbeen tested or validated yet . i have not checked their proposition\nmathematically but their paper was published in management science so i think\nit should be all right . i will look at it in more details and let you know .\nanyhow , there are also other combinatorial auctions that are actually used ,\nfor example , the alberta government ' s ppa auction that enron canada was\nparticipated 3 - 4 months ago .\nbased on our long position on bandwidth , auction and exchange might be a good\nchannel to dispose our unused ( or unsold ) bandwidth . i know there is not much\ndemand in the market . but if we open a combinatorial auction or exchange , we\nmight be able to increase our market share . ( by taking demand from our\ncompetitors ) . i believe , at the moment , there are no bandwidth exchanges that\nallow \" combinatorial \" bids . if we are the first one to do it , we might\nimprove our sale channel and gain some market share . ( note : auction - > one\nseller and many buyers : exchange - > many sellers and many buyers . )\nmoreover , i think auctioning the unsold bandwidth will not hurt us because we\ncannot sell them anyway . in addition , we ourselves can be a dummy bidder in\nthe system and bid in the auction . if the current wining bid is too low , we\ncan just over - bid it and keep the product . this way , we can indirectly put a\nreserve price on the products .\nlet ' s meet sometime in the first week of january .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.167+0000", "entityId": 9395, "properties": {"text": "Subject: hi vince !\nplease let me know if university affairs cana ssist in setting up interviews\nto address the ees issues raised by maheshram . i ' m at beaver creek in\ncolorado now , and will be in california making presentations of various\ncases for completeing my phd course work jan 3 - 4 . back in houston on the\n5 th . if anything needs to get arranged on this before then , please feel free\nto call mike rosen at 3 - 9624 . he will be happy to help .\nthanks vince !\nmay your new year be filled with peace - of - mind , good health and many joys !\nsee you there !\nbest regards ! - - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 12 / 29 / 2000\n12 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" vittal , maheshram \" on 12 / 26 / 2000 10 : 59 : 38 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc : \" ' christie . patrick @ enron . com ' \"\nsubject : re : houston trip\ndear vince / christie ,\nthanks for coming to philadelphia to present an overview of the projects . we\nenjoyed meeting you and your colleagues and look forward to working with\nenron . i would also like to pass on my team ' s appreciation for the dinner as\nwell .\nwe wanted to give you an update on our project and get some feedback and\nadditional information prior to our upcoming visit to houston on january\n19 th . our project is going to be geared to the 3 rd option you mentioned . we\nplan on addressing some part of the retail energy services business . we are\nconsidering two options regarding this topic and would like to pursue either\n( i ) how customers are acquired and recommending new processes and ways to\nserve retail customers , or\n( ii ) studying the supply chain and coming up with recommendations for areas\nfor further investments .\nhowever , we would like to get some more information on the retail energy\nservices before truly scoping the project . we are also very open to\nsuggestions , especially if you had a much broader or different scope in mind ;\nso please let us know .\nwe have not yet reviewed the introductory information received last week , but\nhere are the questions we have specific to the retail energy services unit :\ncan we look at its overall business plan or a more detailed summary than is\nin the annual report ?\nwhat is the pricing philosophy / overall structure ?\nwho are the customers and how are they acquired ?\nwhat would the customers be doing if they did not work with enron ?\nwhat are the international expansion plans and capabilities ?\nis there any important regulatory summary information we can have ?\nif this information is not already covered in the review material you sent ,\nwill you be able recommend other sources where we may find such information ?\nafter we have reviewed the material sent to us recently , we may want to\nschedule a phone call with you and / or one of your colleagues directly\ninvolved in the retail energy services business . i would like to call you in\nthe new year to discuss this further . in the meantime , please feel free to\ncall me at ( 215 ) 546 - 9416 if you need any information .\nregards ,\nretail energy services tiger team\nram\ndennis\njason\nomar\nsteve\nclay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.171+0000", "entityId": 9396, "properties": {"text": "Subject: if you arrange administrative or clerical temporary employees , this\ne - mail contains important information for you .\nas you probably know by now , enron recently entered into a new relationship\nwith corestaff ' s managed services group to manage and administer its\ntemporary staffing program . this new arrangement is designed to improve\nservice and quality as well as increase efficiency in meeting enron ' s\ntemporary employment needs . there are many benefits , including a web - based\napplication which will provide enron ' s temporary staffing users with online\nordering , approval and reporting . more details on this system will be coming\nsoon .\nin order to help the managed services group serve you better in the days\nahead , please take a moment now to fill out the profile questions below and\nforward your reply to joseph marsh at joseph marsh / na / enron . this\ninformation will not be used for solicitation , but rather to facilitate a\nmore efficient ordering process .\nname :\nbusiness unit :\ndepartment :\nphone / e - mail :\ncost center :\nnumber of temporaries currently in use :\naverage / peak number of temporaries used per week :\nskill sets / positions required :\nphase i of the program , which starts january 2 , 2001 , encompasses all\nadministrative / clerical temporary employees in the houston area . please\nnote that we anticipate no changes for temporary employees currently on\nassignment at enron as we make this transition . again , more details on the\nmanaged services program and processes will be distributed in the coming\nweeks .\nas of january 2 , the managed services account team will be on - site to answer\nany questions and handle your temporary employee needs . they will be\navailable via e - mail or by calling 713 - 345 - 6899 . please note that the\ncurrent process for requesting temporary employees will remain in effect\nthrough the end of the year .\nthank you ,\nthe enron corp implementation team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.177+0000", "entityId": 9397, "properties": {"text": "Subject: re : lost cell telephone\nchris ,\nthe phone has been found and has not been compromised in any way .\ncan you , please , restore the service .\nthanks .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 29 / 2000\n12 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n12 / 18 / 2000 03 : 13 pm\nto : chris samaniego @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : lost cell telephone\nthanks !\nchris samaniego on 12 / 18 / 2000 03 : 06 : 09 pm\nto : \" ' shirley . crenshaw @ enron . com ' \" , enron\ncc :\nsubject : re : lost cell telephone\nrequest completed .\nchris samaniego\naccount associate\nhouston cellular corporate accounts\npetrochemical vertical\n( 713 ) 562 - 2995 cellular\n( 713 ) 345 - 7183 enron direct\n( 713 ) 646 - 2415 fax\nenron @ houstoncellular . com e - mail\nsamaniec @ houstoncellular . com e - mail\nsamaniec @ bellsouthips . com interactive pager\n> - - - - - original message - - - - -\n> from : shirley . crenshaw @ enron . com [ smtp : shirley . crenshaw @ enron . com ]\n> sent : monday , december 18 , 2000 2 : 19 pm\n> to : enron\n> subject : lost cell telephone\n>\n> hello :\n>\n> vince kaminski left his cell phone on the bus last friday . he has\n> contacted\n> the bus line , but the person in charge of the lost and found is not in the\n> office today .\n>\n> if there any way that we can put a hold on this telephone until he can see\n> whether it has been turned in or not ?\n>\n> the cell # is : 713 / 410 - 5396 and the account # is : 88563580 .\n>\n> please let me know as soon as possible .\n>\n> thanks !\n>\n> shirley crenshaw\n> 3 - 5290\n> ebl 961\n> shirley . crenshaw @ enron . com\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.183+0000", "entityId": 9398, "properties": {"text": "Subject: pjm announces basic training program over the internet\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\npjm will again offer a one - day course , pjm 101 : the basics , on february 27 ,\n2001\nas a virtual workshop over the internet .\npjm 101 : the basics will introduce participants to the pjm market and\noperations\nmodel . it will include presentations on pjm market settlements , capacity\nassurance and markets , transmission expansion and the status of pjm ancillary\nservices markets and other initiatives . the coups is designed for those new to\npjm .\na limited number of participants will be registered since this is a pilot\nprogram to determine if such a format is effective . the course times are 9 : 00\na . m . to 12 noon and 1 : 00 p . m . to 4 : 00 p . m . participants should plan to log in\na\nhalf hour before the scheduled start time .\nfurther details and registration information can be found on the pjm web site\nat\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please complete and submit this form :\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.187+0000", "entityId": 9399, "properties": {"text": "Subject: re : hello\nvince\nthank you for the update . i will be back in the office january 8 .\nhave a great new year\ngerry\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , december 21 , 2000 5 : 35 pm\nto : gsheble @ iastate . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : hello\ngerry ,\nlet me review my calendar in the beginning of the next year and i shall\ne - mail you\nwith a suggested date . my assistant will update my schedule for 2001 in the\nfirst week\nof january and i shall be able to select a date for ypur presentaton .\nvince kaminski\n\" sheble , g . b . \" on 12 / 21 / 2000 10 : 43 : 50 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : hello\ndear mr . kaminski\nplease excuse the cancellation due to illness . the students do not care\nwho\nthey infect near the end of the semester , they just want to get done !\nhere is my available schedule for next year . i am now overloaded next week\nwith tasks to complete the semester . i do hope that we can reschedule\nduring the first quarter next year .\ni would note that my schedule is most free for thursday or friday . i could\nfly out late wednesday night .\ncordially ,\ngerry\nteaching schedule\nm 11 - 12\nt and r 10 - 12 and 2 - 4\nt 12 - 2 ep & es seminar\nm 6 - 8\nt 6 - 8\nw 6 - 8\n( r = thursday )\nworkshops :\njan 12 - 13 des moines\njan 26 - 27 des moines\nfeb 9 - 10 des moines\nieee wpm conference\nfeb 28 - 31 columbus , ohio", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.192+0000", "entityId": 9400, "properties": {"text": "Subject: re : suggestion : implementing var based on non - normal log - returns\nsimulations\nvince , sorry , the files from that directory get deleted periodically . i\nattached this file here .\nrabi did some analysis related to implementation of correlated non - normally\n( rtdm - distributed )\nvariables . let ' s discuss later ?\ntanya .\nvince j kaminski\n12 / 22 / 2000 05 : 58 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : re : suggestion : implementing var based on non - normal log - returns\nsimulations\ntanya ,\ni could not locate the file .\nvince\ntanya tamarchenko\n12 / 07 / 2000 01 : 17 pm\nto : vince j kaminski / hou / ect @ ect , rabi de / na / enron @ enron , jaesoo\nlew / na / enron @ enron\ncc :\nsubject : re : suggestion : implementing var based on non - normal log - returns\nsimulations\neverybody ,\nwe were talking for a while about using non - normal distributions in the\nmonte - carlo simulations in our var model .\ni put together some suggestion regarding this . the text is under\no : \\ _ dropbox \\ tanya \\ non _ normal _ logs . doc\nlook through this 3 page document , and let me know what you think , please .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.200+0000", "entityId": 9401, "properties": {"text": "Subject: f / up\nsheila ,\ni am forwarding you a message i received a few days ago . i want to ask you\nfor advice how to handle this case .\nmy first reaction was to ignore it . the longer i think about it , the more\nconvinced i become that some action\nis required .\nlet ' s try to reverse the situation and assume for the sake of argument that a\nfemale employee\nwas harassed by a male colleague . an employee informs her boss a few months\nlater about\nthe alleged incident and the boss chooses to ignore it . in many similar\ncases , courts subsequently\nfound against the companies that decided to turn a blind eye to such\ncomplaints .\nthe fact that we are dealing with the case of reverse harassment is\nimmaterial .\nif i ignore this complaint i may expose the company to charges of double\nstandard in\nhandling sexual harassment cases .\nmy recommendation would be to ask maureen to attend sensitivity training and\nsexual harassment prevention class .\nplease , let me know what you think . sorry to burden you with this case .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 12 / 29 / 2000\n11 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n12 / 21 / 2000 03 : 51 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : f / up\nvince -\ni got your message ( i was up on the roof of the building helping to fix the\nweather satellite dish - what a gorgeous view of houston ! ) .\ni appreciate your words . everything remains fine , vince . you are my \" father \"\nhere at enron , and i admire and respect you greatly . i think i know the kind\nof person you are , in terms of your integrity , and i admire the high\nstandards you set for all of us in your extended \" group . \"\ni want to let you know i am not the only one in the group who doesn ' t\nappreciate the way maureen disrespects you . you remain the key external\nfactor in their success - it is not simply their own abilities that matter to\ntheir futures but your own - vince ' s - success with upper management that\nmatters .\nwe respect you , and we don ' t like it when you are disrespected . maureen\ndidn ' t disrespect me today , vince , she disrespected you .\nit ' s time i told you something . last april , maureen , highly intoxicated\nfollowing a work - related function at ninfa ' s , made an unsolicited predatory\nsexual advance on me at my desk on the 19 th floor . i was shocked and\ndisgusted , but i didn ' t say one word about this , vince , because i played it\nout and didn ' t want to put you into the position of having a raving maureen\nin your midst as you perhaps had to fire her and then endure a litany of\ngender - bias crap lawsuits .\ni \" took one for the team , \" vince . i can ' rt say i would do it again - maureen\nis brazen to berate me after what she did , in public no less .\ni appreciate your bringing me into enron . i ' ve found a respectful and ,\nindeed , a loving work environment . i remain willing to do whatever i can to\nhelp the group .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.207+0000", "entityId": 9402, "properties": {"text": "Subject: a few comments\njohn ,\nhappy new year . i hope the first few weeks of this year will see the\ncompleted paper .\ni am sending you the last version of the paper i have received with a few\ncomments ( in red ) . i think it makes sense to discuss the paper over the\nphone . i have a number of more detailed comments .\nvince\n- enron transformation paperl 2 _ 17 _ 00 _ vk . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.214+0000", "entityId": 9403, "properties": {"text": "Subject: merry christmas\ndear mr . kaminski ,\nin the name of all the mscf students i would like to wish you and your\nfamily a merry christmas and a happy new year . thank you very much for\ntaking the time to come here and talk with us . it was greatly appreciated .\nbest regards ,\npierre", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.219+0000", "entityId": 9404, "properties": {"text": "Subject: re : meeting on feb 8 , 2001\ndear mr . nur azmin abu bakar ,\nthanks for your prompt reply .\nplease , let us know how many members of your team will\nvisit enron .\ni look forward to our meeting on february 8 .\nvince kaminski\nazminab @ petronas . com . my on 01 / 02 / 2001 06 : 38 : 33 pm\nto : vince . j . kaminski @ enron . com , khairuddinbmjaafar @ petronas . com . my ,\nshirley . crenshaw @ enron . com\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski ,\nhappy new year and thank you for the reply . we are honored to have\nlunch with you and your team however we have another appointment at\n2 . 30 p . m .\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 07 : 38 : 19 am\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : meeting on feb 8 , 2001\ndear sir ,\ni would like to apologize for the delay in responding to your fax .\ni was on vacation for the last few days .\ni shall be honored to meet your delegation on thursday , february 8 at 10 : 00\na . m .\nplease , let me know if you will be free for lunch after the meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.224+0000", "entityId": 9405, "properties": {"text": "Subject: eol wti historical trade simulation - more profitable trading\nstrategy\nplease ignor my previous mail regarding the same issue , which contains some\ntypos .\ngreg and john ,\ni found that by reducing the volume per trade and increasing daily number of\ntrades ( keeping the\ntotal volume per day constant ) , we can be more profitable . this is partially\nbecause in a trending market\nwe lose less money by following the market more closely . for example , suppose\nmarket move from\n$ 30 to $ 35 . if per trade volume is 10 , 000 bbl and the half bid - offer spread\nis $ 1 for simplicity , we take 5\ntrades of short positions , the total mtm for that day is\n( - 5 - 4 - 3 - 2 - 1 ) * 10 , 000 = - $ 150 , 000 and total trading\nvolume is 50 , 000 bbl short . if per trade volume is 50 , 000 bbl , we take one\ntrade , the total mtm is\n- 5 * 50 , 000 = - $ 250 , 000 . thus the net difference between the two trading\nstrategies is $ 10 , 000 for that\nparticular day .\ntherefore it seems that by reducing per trade volume and increasing the\nnumber of trades , we can be more\nprofitable as a market maker .\ni rerun a scenario that stinson sent to you on dec . 27 where he used per\ntrade volume of 30 , 000 bbl .\ni reduce the number of trade to 10 , 000 while increasing the number of trades\nby factor of 3 . almost in all\ncases , i saw increased profitability . see the colume marked \" change \" for\ndollar amount change in millions .\nplease let stinson or me know your thoughts on this .\nregards ,\nzimin lu\nx 36388\nas compared to", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.229+0000", "entityId": 9406, "properties": {"text": "Subject: meeting on feb 8 , 2001\ndear sir ,\ni would like to apologize for the delay in responding to your fax .\ni was on vacation for the last few days .\ni shall be honored to meet your delegation on thursday , february 8 at 10 : 00\na . m .\nplease , let me know if you will be free for lunch after the meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.233+0000", "entityId": 9407, "properties": {"text": "Subject: re : india model\nstinson and vince ,\nplease see wade ' s comments below . it is critical that we start the exercise\nquickly , and as metioned , it should be structured so that dpc foot the bill .\nalso , as mentioned , please have them desist from using the word viability\nwith reference to dabhol .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 02 / 2001 10 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron india\nfrom : wade cline 01 / 01 / 2001 10 : 26 pm\nto : sandeep kohli / enron _ development @ enron _ development\ncc : neil mcgregor / enron _ development @ enron _ development , mohan\nsubject : re : india model\nthanks sandeep . engagement needs to be structured so that dpc will pay for\nthis key study . have them address the study to dpc and invoice dpc .\nsecond , on the cover , the reference is to \" . . . . . . and dabhol plant\nviability . \" please instruct them to immediately cease discussions about and\nuse of term dabhol viability . they can use the term they use later on , which\nis dabhol plant operations .\nsandeep kohli\n01 / 01 / 2001 08 : 56 am\nto : wade cline / enron _ development @ enron _ development\ncc :\nsubject : re : india model\nwade ,\nthis is fyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 01 / 2001 08 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" robert schenck \" on 12 / 29 / 2000 11 : 57 : 16 am\nto : ,\ncc :\nsubject : re : india model\ngentlemen ,\ni have attached a proposal for your consideration\nplease review this and give me a call on my cell phone + 61 412 234 366\ntomorrow morning ( 9 am my time saturday )\ni have organised access to a substantial level of detail re the generation\nand transmission systems and can commence work on building the data base\nnext week\nthere may be some residual typing errors in the proposal , please forgive me\nas i have no staff to review\nregards\nrobert schenck\n> - - - - - original message - - - - -\n> from : sandeep . kohli @ enron . com [ mailto : sandeep . kohli @ enron . com ]\n> sent : thursday , 28 december 2000 10 : 09 pm\n> to : stinson . gibner @ enron . com ; schenck @ hesinet . com\n> subject : re : india model\n>\n>\n>\n> robert ,\n>\n> i had a conversation with stinsen regarding this earlier today .\n> we do have\n> some information about the interconnects as well as information on the\n> plant capacities and locations within the state of maharashtra . however ,\n> our information on other states and on a national basis maybe\n> less detailed\n> and accurate .\n>\n> what i suggested was that we have a meeting with your representative in\n> india once the study is a \" go . \" we probably need to do this with our team\n> in india in the first week of the new year . in that manner , we\n> will have a\n> much clearer idea of what is needed and what we have . we will then take a\n> week filling in the gaps , and so by mid - january we should have the\n> information you need , or alternately , we will know that the level\n> of detail\n> you ideally want is not available . then we will have to make assumptions .\n>\n> i believe that the level of detail we have on maharashtra will be\n> good , but\n> the type of information on o & m costs , generations costs , etc .\n> that you want\n> will likely not be easily available for other states . we need to work\n> closely , however , to do the best we can as regards this information .\n>\n> please get back to stinson with the estimates of time and cost , and let us\n> also know whether mid - january for the full information will work for you .\n>\n> regards ,\n> sandeep .\n>\n> ps : stinson , please let me know if there is something i have missed in my\n> response .\n> robert - if you need something answered urgently , please feel free to\n> call me on my mobile in the us : 713 - 857 - 6826 .\n>\n>\n>\n>\n> stinson gibner @ ect\n> 12 / 28 / 2000 09 : 38 pm\n>\n> to : sandeep kohli @ enron\n> cc :\n> subject : re : india model\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 12 / 28 / 2000\n> 10 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> \" robert schenck \" on 12 / 27 / 2000 11 : 21 : 18 pm\n>\n> to :\n> cc :\n> subject : re : india model\n>\n>\n> stinson ,\n>\n> i am trying to contact our data base experts at the moment to clarify some\n> issues with the region and may need another day to get something more\n> concrete in front of you .\n>\n> what i would like to know is the extent of your company knowledge re the\n> following\n>\n> generation units ' nameplate capacity , fuel type , efficiency , o vince . j . kaminski @ enron . com\n> > subject : india model\n> >\n> >\n> > robert ,\n> >\n> > enron would like to do a study of power prices and dispatch for\n> > india we\n> > have spoken with david branchcomb to see if henwood can help with this\n> > project in our time frame ( results needed by end of january ) , and he\n> > suggested that we speak directly with you about the project .\n> >\n> > i will try and give you a call later today ( wednesday afternoon\n> > in houston ,\n> > thurday morning , adelaide ) at around 9 : 00 a . m . your time to see we can\n> > describe for you the project in more detail .\n> >\n> > regards ,\n> >\n> > stinson gibner\n> > enron research group\n> > ( 713 ) 853 - 4748\n> >\n>\n>\n>\n>\n>\n>\n- penron . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.238+0000", "entityId": 9408, "properties": {"text": "Subject: credit exposure model\nbill ,\nattached are the spreadsheet for the credit exposure model and the xll file .\nwe have\nperformed some tests and the numbers looked reasonable . however , more\nextensive\ntesting using realistic data is needed . we would like to pass the model to\nyou so you can\nhave someone check it more extensively and compare the model with what you\nare using .\nalso , please kindly inform me of any suggestions to improve the model as well\nas\nany problems you may find .\ni can be reached at 31631 .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.243+0000", "entityId": 9409, "properties": {"text": "Subject: re : biliana ' s resume\nbiliana ,\ni am glad i could help .\nlook forward to working with you .\nvince\nbiliana pehlivanova on 12 / 31 / 2000 08 : 19 : 52 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : biliana ' s resume\nmr . kaminski ,\ni would like to thank you for forwarding my resume . i\nhave resently accepted enron ' s offer for a position\nwith the analyst program and will be joining the\ncompany in february .\nhope you had a merry christmas and wish you a happy\nnew year ' s !\nregards ,\nbiliana\n- - - vince . j . kaminski @ enron . com wrote :\n>\n> biliana ,\n>\n> i forwarded your resume to the hr person\n> responsible for recruiting at your university\n> with my recommendation .\n>\n> vince\n>\n>\n>\n>\n>\n> biliana pehlivanova\n> on 09 / 28 / 2000 06 : 02 : 20\n> pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : biliana ' s resume\n>\n>\n> mr . kaminski ,\n>\n>\n> thank you for referring me to your recruitment\n> representative .\n>\n> attached is my resume . i would appreciate you\n> letting\n> me know the name of the hr person whom i can folow\n> up\n> with .\n>\n> best regards ,\n> biliana\n>\n>\n> = = = = =\n> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n> biliana pehlivanova\n> vice president of incoming exchange\n> aiesec houston\n> 713 743 - 4927\n> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n>\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> do you yahoo ! ?\n> yahoo ! photos - 35 mm quality prints , now get 15\n> free !\n> http : / / photos . yahoo . com /\n> ( see attached file : biliana ' s resume . doc )\n>\n>\n>\n> attachment part 2 application / octet - stream\nname = biliana ' s resume . doc\n= = = = =\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nbiliana pehlivanova\nvice president of incoming exchange\naiesec houston\n713 743 - 4927\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ndo you yahoo ! ?\nyahoo ! photos - share your holiday photos online !\nhttp : / / photos . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.248+0000", "entityId": 9410, "properties": {"text": "Subject: investment\nto all whom it may concern :\ni keep receiving such unsolicited messages\n( please , see below ) that represent an obvious scam .\nis there any way to block out the messages from this source ?\ni assume other employees of enron are also being hit .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 02 / 2001\n08 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dagogo kalu \" on 12 / 30 / 2000 02 : 15 : 58 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : investment\nfrom : col . dagogo kalu\ntel / fax 448453342783\nattn : president / ceo\nrequest for an assistance\ndear sir ,\nwith due respect and knowledge of your good reputation , i decided to contact\nyou for this matter that need urgent attention . i am col . dagogo kalu . i\nwas the commandant of the west african peace keeping force & monitoring\ngroup ( ecomog ) until i sustained a very serious injury that put me off the\nmilitary camp for about 3 months now . honestly , i have full trust for your\nhonesty hence i write this letter to you .\nduring our recent mission to sierra leone , a diamond rich west african\ncountry to cushion the war between the rebels and the ruling government , we\nran into 2 boxes ( consignment ) right inside a thick jungle where we believed\nwas a hide out of the rebels . as we opened the boxes , one that is smaller\ncontains numerous sizes of raw diamond . the bigger box contains about us\n$ 15 . 2 million , which we believed to be the total amount of diamond sold at\nthat period of time by the rebels before we invaded the place .\nmyself and my two other colleagues took the boxes away . i took the bigger\nbox containing the us $ 15 . 2 million to cotonou benin republic which is the\nnearby country and deposited it with one security company for safe keeping\nto enable me think wisely on what to do with the money . the smaller box\ncontaining the raw diamond i gave it to my other 2 colleagues , which they\naccepted in good faith .\na month after this , the rebels lunched a counter - attack on us where i\nsustained a very serious gun shut wound on my right leg . a lot of our boys\ndied but few survived . at this moment , i am receiving medical treatment\nhere in london . this is why i need your help urgently .\ni need a foreign company i will present as the beneficiary of the huge\namount and also pay in the money into their account . your bank account must\nbe a good one where we shall not pay much as tax . you shall also serve as\nthe general overseer and guardian of this fund and all the investment of\nthis money will be under your care until i recover fully .\ni will give you all the details of the transaction immediately i get your\nresponse . you will also get a suitable percentage ( % ) as your share . all\nthe documents of the deposit of the money are intact with my wife . i have\nalready finalized this arrangement with the security company so there is no\nproblem at all .\nplease you can reach me through my direct tel / fax no : 448453342783 where i\nam receiving treatment . in your reply , state clearly your direct telephone\nand fax numbers for easy communication and more confidentiality .\nfurther details will be given to you once i hear from you .\ni await your urgent response soonest .\nbest regards ,\ncol . dagogo kalu\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.253+0000", "entityId": 9411, "properties": {"text": "Subject: re : lost cell telephone\nchris :\nvince found his cell phone - can we have it reinstated ?\nhope you had wonderful holidays !\nthanks !\nshirley crenshaw\n3 - 5290\nchris samaniego on 12 / 18 / 2000 03 : 06 : 09 pm\nto : \" ' shirley . crenshaw @ enron . com ' \" , enron\ncc :\nsubject : re : lost cell telephone\nrequest completed .\nchris samaniego\naccount associate\nhouston cellular corporate accounts\npetrochemical vertical\n( 713 ) 562 - 2995 cellular\n( 713 ) 345 - 7183 enron direct\n( 713 ) 646 - 2415 fax\nenron @ houstoncellular . com e - mail\nsamaniec @ houstoncellular . com e - mail\nsamaniec @ bellsouthips . com interactive pager\n> - - - - - original message - - - - -\n> from : shirley . crenshaw @ enron . com [ smtp : shirley . crenshaw @ enron . com ]\n> sent : monday , december 18 , 2000 2 : 19 pm\n> to : enron\n> subject : lost cell telephone\n>\n> hello :\n>\n> vince kaminski left his cell phone on the bus last friday . he has\n> contacted\n> the bus line , but the person in charge of the lost and found is not in the\n> office today .\n>\n> if there any way that we can put a hold on this telephone until he can see\n> whether it has been turned in or not ?\n>\n> the cell # is : 713 / 410 - 5396 and the account # is : 88563580 .\n>\n> please let me know as soon as possible .\n>\n> thanks !\n>\n> shirley crenshaw\n> 3 - 5290\n> ebl 961\n> shirley . crenshaw @ enron . com\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.258+0000", "entityId": 9412, "properties": {"text": "Subject: re : ken lay ' s speech\nthe $ 460 billion would be the cumulative tax cut over the first five years .\nthe $ 1 . 3 trillion would be the cumulative tax cut over 10 years ,\nso yes , the $ 460 billion is part of the $ 1 . 3 trillion .\nattached is the inforamtion that you requested on the ppi .\nregards ,\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.264+0000", "entityId": 9413, "properties": {"text": "Subject: re : ken lay ' s speech\nis there a difference though - - is the 460 part of the 1300 ?\nalhamd alkhayat\nenron corp .\n+ 1 ( 713 ) 853 - 0315\nthis message ( including any attachments ) contains confidential information\nintended for a specific individual and purpose , and is protected by law . if\nyou are not the intended recipient , you should delete this message and are\nhereby notified that any disclosure , copying , or distribution of this\nmessage , or the taking of any action based on it , is strictly prohibited .\nmaureen raymond @ ect\n01 / 02 / 2001 01 : 20 pm\nto : alhamd alkhayat / na / enron @ enron , steven j kean / na / enron @ enron , margaret\ncarson / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : ken lay ' s speech\nthe $ 1 . 3 trillion tax cut which is frequently quoted by the press is over 10\nyears , the $ 460 tax cut below is over five years .\nmaureen raymond\n01 / 02 / 2001 12 : 44 pm\nto : alhamd alkhayat / na / enron @ enron , steven j kean / na / enron @ enron , margaret\ncarson / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : ken lay ' s speech\ni looked into the proposed tax cut by george w . bush . on his website he\nproposes a $ 460 billion tax cut over five years .\nthe $ 213 billion \" energy tax \" imposed from 1999 to 2001 by higher energy\nprices , is roughly half of bush ' s proposed tax cut .\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.268+0000", "entityId": 9414, "properties": {"text": "Subject: re : ken lay ' s speech\nthe $ 1 . 3 trillion tax cut which is frequently quoted by the press is over 10\nyears , the $ 460 tax cut below is over five years .\nmaureen raymond\n01 / 02 / 2001 12 : 44 pm\nto : alhamd alkhayat / na / enron @ enron , steven j kean / na / enron @ enron , margaret\ncarson / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : ken lay ' s speech\ni looked into the proposed tax cut by george w . bush . on his website he\nproposes a $ 460 billion tax cut over five years .\nthe $ 213 billion \" energy tax \" imposed from 1999 to 2001 by higher energy\nprices , is roughly half of bush ' s proposed tax cut .\nmaureen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.273+0000", "entityId": 9415, "properties": {"text": "Subject: re : ken lay ' s speech\nso is it bigger than his tax cut on an annual average basis ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.278+0000", "entityId": 9416, "properties": {"text": "Subject: re : followup from iris mack\nhi ,\nthanks for taking time out of your busy schedules to meeet with me on\nthe 28 th of december - especially during the holiday season .\ni enjoyed meeting some of the research group ' s internal clients .\nhope to be able to work with you in the future .\nregards ,\niris mack\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.284+0000", "entityId": 9417, "properties": {"text": "Subject: happy new year , and some new year ' s resolutions\nwith the new year , we would like to institute some rules within the research\ngroup . this applies to everybody in research and is at the express request\nof vince , but i am just sending it to my reports ( and their reports ) as of\nnow .\npeople are expected to report to work in the morning around 8 : 00 am to 8 : 30\nam but no later than 8 : 30 am . this is primarily because our clients from\nother groups typically start calling around 8 : 00 am and we need to be\nresponsive . of course , once in a while if something urgent comes up then\nthis may be relaxed but you are responsible for letting both your supervisor\nand your assistant ( anita and / or shirley ) know in advance .\ni am trying to come up with a schedule that will allow me to get updated on\nall the work that you guys are doing , and i will probably set this up next\nweek after vince finishes drawing up the overall directions for the group for\n2001 .\nthanks ,\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.290+0000", "entityId": 9418, "properties": {"text": "Subject: research seminar\nvince has asked that i forward the following :\nwe will begin a seminar devoted to the book on \" energy\nderivatives \" , written by clewlow and strickland , every first and\nthird friday of each month , beginning january 19 th . stinson\ngibner has volunteered to act as the seminar coordinator .\non january 19 th only , the seminar will be held in eb 30 cl .\nevery session thereafter will be in eb 49 cl . the seminar will be\nconducted like a \" brown bag \" ( everyone bring their own lunch ) .\nthe seminar is mandatory for every member of the group who\nstarted after january 1 , 2000 . however , all other members of\nthe group are invited to participate .\nthe books have been ordered and hopefully will arrive by the\nday of the first meeting .\nvince kaminski\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.298+0000", "entityId": 9419, "properties": {"text": "Subject: mike roberts\njohn ,\ni have received your message regarding mike roberts . i could not\nagree more . mike deserves to be compensated for his exceptional\ncontribution .\nadditional recommendation . i think that all weather forecasting support\nshould be consolidated under mike ( including the weather guys supporting\npower trading ) . in my view , it was a mistake to remove mike from\npower support . it would also mean a lot to him personally .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.306+0000", "entityId": 9420, "properties": {"text": "Subject: allocation schedule\nwe spoke prior to the holiday and you were working on a list on support names\nand projects that research is working on for various bus . can you tell me\nhow you are doing on that ? sarah brown , my manager , had a meeting with corp\nand they are disputing the billing we are proposing to bill to them ( $ 1 . 9 m ) .\ntheir argument is that they are going to bill ena back anyway ; therefore ,\nthey have agreed to take 40 % of the amount we intented to bill them in 2001 ,\nwhich is approximately $ 760 k . if you have any questions , please call .\nthanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.313+0000", "entityId": 9421, "properties": {"text": "Subject: today ' s project list\nplease , use a new template stored in the plans 2001 folder\nfor today ' s project lists .\nover the last few weeks we had several parallel\ncopies of the same file floating around .\ni have updated he list of group members in the first sheet .\nplease , make sure i have not omitted anybody .\nvince\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.317+0000", "entityId": 9422, "properties": {"text": "Subject: fw : afternoon tea with fea\nvince :\nthanks for surfacing . happy new year !\nlinda\ndecember 2000 financial engineering associates , berkeley , ca\ngentlepeople ,\nas the end of the year rapidly approaches , it seems timely to thank you for\nyour business this year . thank you for helping to make this the best year\never for fea !\nand , wed also like to wish you happy holidays and a healthy and prosperous\nnew year .\nearlier this year , fea initiated \u000f 3 virtual coffee break \u000f 4 , an emailed\nnewsletter for fea alliance partners . it has proven to be a popular and\nuseful media to share information . this is our first effort at an emailed\nnewsletter to fea clients , \u000f 3 afternoon tea with tracie ) . we hope you will\ntake a few minutes to skim it for pertinent information and then move it to\nyour fea file folder for future reference .\n* * * announcing fea product updates ! * * *\nfea has been extraordinarily busy running extensive testing on new releases .\nthe following should be available to all clients , who are current on\nmaintenance , in just a couple weeks . we will send an email notification of\nthe availability of the release , and cds will be shipped . if you prefer ,\nemail support @ fea . com to request download instructions .\n@ energy . 2 . 0 will feature the release of the forward curve builder and the\nswing ( take or pay ) options valuation module . the forward curve builder , as\nits name suggests , calibrated the forward price curve for power\n( electricity ) and other commodity markets . some additional new features in\nthe 2 . 0 release include a jump diffusion model for european - style options ,\nan option on a strip of options and an option on a strip of spread options .\nvarworks 4 . 0 includes sophisticated stress testing , support for individual\nequities , and new easier to use templates . eagerly awaited by fea clients ,\nthe addition of stress testing capabilities has been a top priority for\nfea ' s engineering team . fund managers will be happy to hear that individual\n( sectorial ) equities are now supported in varworks . 4 . 0 .\nif you do not own a license for @ energy or varworks , and want to evaluate\nthem , email sales @ fea . com and request a 30 day demo . product demos are free\nto existing fea clients . curious about a product , but dont have time to\ninstall a demo , read the instructions and experiment ? visit\nwww . fea . com / demos . htm and select alternative one . we can now demo fea\nsoftware on your computer screen , via the internet .\n* * * list of current versions of fea products now posted on - line !\nyou may refer to www . fea . com / support . htm for details of the most current fea\nproduct releases .\n* * * fea newswire : fea and its chief scientistmark garman have been awarded a\n4 th us patent ! patent 6 , 122 , 623 recognizes the \" watershed method \" as fea ' s\nsecond us patent defining cutting - edge methodologies for var . the importance\nof the recent invention is that it will allow market risk to be more\naccurately allocated into accounting periods . mark ' sprior patent in the var\narena pertained to the calculation of \" marginal var \" or \" component var , \"\nwhich allowed risk managers to \" slice and dice , \" or dissect enterprise - wide\nvar into its constituent components . ( see the pressrelease at\nwww . fea . com / pdf / watershed _ pr . pdf ) .\n* * * first beta site for varworks se * * * www . fea . com / press _ rm . htm\nlook for a press release announcing the first beta site for feas varworks .\nse ( server edition ) . varworks ses dynamic risk analysis and reporting\nenvironment will enable the delivery of customized risk profiles to dozens\nof exchange participants . ( see the product description at\nhttp : / / www . fea . com / p _ varse . htm . )\n* * * did you hear ? ? ? ? ?\nriskmetrics , as of 1 / 15 / 2001 , will be charging for their previously free\ndata sets . only outdated data sets will be available at no charge .\nfeas makevc product allows you to build your own customized data sets\nutilizing historical time series data that you may already have available to\nyou . you may request a free 30 day demo of makevc from\nwww . fea . com / demos . htm . product demos are free to existing fea clients .\n* * * plan ahead\nthe next var seminar will be late spring 2001 . see\nwww . fea . com / seminars . htm for information as it becomes available , or browse\nthe october 2000 seminar brochure . you may also contact sales @ fea . com to\nreserve your space .\n* * * the fea frequent flyers * * *\ndecember / january , madrid , spain , carlos\njanuary 15 + calgary and toronto , canada , tracie\nfebruary 13 - 14 , new york , garp 2001 , laurent and christine\nfebruary 13 - 15 , germany , e * trade chris and ursula\nfebruary 19 , london , tracie\ncontact sales @ fea . com to arrange a meeting .\nthe fine print : we are interested in your feedback , and ideas for future\ntopics . please send an email if you do not want to receive future fea\nnewsletters . mailto : elena @ fea . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.322+0000", "entityId": 9423, "properties": {"text": "Subject: benchmarking study\nsally ,\ni gave you some time ago a brochure on this benchmarking study request .\nthey renewed their request for enron ' s participation .\nwhat is your view on this ? do you think the benefits of knowing what ' s\ngoing on offset the loss due information released and time spent on the\nproject .\nmy recommendation is to forget it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 03 / 2001\n03 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" theresa sanders \" on 12 / 27 / 2000 01 : 32 : 18 pm\nto :\ncc :\nsubject : benchmarking study\ndear vince ,\npeter nance and i wanted to follow - up our discussion of enron ' s participation\nin our benchmarking study . have you discussed enron ' s participation in the\nproject with your colleagues ?\nhere is a small sample set of metrics that were taken from a comprehensive\nlist of over 700 metrics . the study group will decide which metrics to use .\nwith eei ' s credibility and teknecon ' s technical expertise , we intend to\nbecome the industry standard in benchmarking . we would very much like to\nhave enron participate in the study .\ni would be happy to set up another meeting with you and your colleagues with\npeter nance if you think that would be helpful .\nbest regards ,\ntheresa sanders\ndirector of business development\nalliance of energy suppliers\nedison electric institute\ntel : 202 - 508 - 5183\n- eei metrics - short list . xls\n- ebrochure . doc\n- riskbenc . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.326+0000", "entityId": 9424, "properties": {"text": "Subject: naphtha hedge for 2001\nfolks ,\ni am forwarding this in order for the team to focus on the naphtha issue .\nplease note that :\nas phase ii comes on line , blocks b and c will first have to run on naphtha\nfor a period of 3 - 6 months\nthis will hit us some time in 2001 , hence is a more urgent issue than lng ,\nwhich is still a year away\nif there are delays in the commissioning of the regas terminal , the period on\nnaphtha could further prolong\nthe naphtha market is more volatile than the crude market , and is not as\ndeep , hence we need to take small positions early on to test the market\ndpc board has already approved a risk management policy that allows for\nhedging . we may need to look into options that are costless ( selling put and\nbuying call ) to begin with , and test while only block a is in place .\nclose coordination will be required on this with the global markets group ,\nand i propose someone like anshuman should actually be seconded onto the group\na whole plan on tools to manage the fuel risk need to be worked in close\ncoordination with the team on the ground\nthese are just some of my thoughts . with 50 % of the tariff being fuel price\ndependent , this is an area that requires close attention .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 03 / 2001 10 : 29 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntushar dhruv @ enron\n01 / 02 / 2001 09 : 25 pm\nto : neil mcgregor / sin / ect @ ect , sandeep\nkohli / enron _ development @ enron _ development , mukesh\ntyagi / enron _ development @ enron _ development , pavan . dave @ enron . com , anshuman\ncc : marc de la roche / hou / ect @ ect , doug leach / hou / ect @ ect\nsubject : naphtha hedge for 2001\ncurrent level of naphtha prices and the crude futures curve being\nbackwardated provide an opportune time for dpc to enter into a hedge for all\nor a portion of its naphtha requirements for the year 2001 . we ( efi ) would\nlike to explore this possibility before this situation passes . please\nadvise . best regards ,\n- - tushar", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.331+0000", "entityId": 9425, "properties": {"text": "Subject: re : creditdotcom projects\namitava ,\ncan you schedule a brainstorming session with vasant , tanya , rakesh , myself\nand ben ( if possible ) ?\nwhat about the trip on monday . has it been scheduled ?\nvince\namitava dhar @ enron\n01 / 03 / 2001 08 : 30 am\nto : vince j kaminski / hou / ect @ ect , ben parsons / lon / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : creditdotcom projects\nthe following is a good summary from vasant about the projects and what is\nahead of us .\nben , please let me know when things are ready ; i can plan my trip accordingly .\nthanks ,\namitava\nenroncredit . com is working on 3 main models - - - the fmc model , the placement\nmodel , and the movement model .\nfmc model : provides credit default swap price curves for 16 ratings with 33\nindustry offsets . each day , this model takes the previous day ' s trader\ncurves and adjusts them for the movement in bloomberg yields and observed\nswap prices .\nplacement model : uses linear regression to credit default swap prices using\ndummified ranges for market capitalization , liquidity , kmv score , etc . one\nmain issue here is that the dataset is biased towards investment grade\nnames . alternate approaches looked at developing separate models for\nseparate sunsets of names .\nmovement model : provides an alert system for news . this is under\ndevelopment .\ncurrent involvement of houston research group members is in the\ndevelopment / modifications of the placement model , especially in thinking\nthrough the various single vs multi model approaches . we can help in the\nbrainstorming for better models for subsets . one main project right now is\nto get a separate model for subsidiaries , and to exclude subsidiary names\nfrom the main regression .\nvalue - at - risk is based on historical variance - covariance approach .\nthe portfolio model is under development .\nagenda for houston research group members :\nonce sufficient data is collected , start reviewing for potential analytic\nrelationships .\nget weekly updates from london , and provide feedback .\nplan on a trip if the work warrants it , once the agenda is fairly well drawn\nout , and data is available for analysis .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.335+0000", "entityId": 9426, "properties": {"text": "Subject: warning system\ngreg ,\nas a follow up . we are talking to jay webb today about the data we can get\nfrom\nthe enron online system to develop an early warning system for automated\ncrude trading .\nby the way , it was a good catch . you left us red faced .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.341+0000", "entityId": 9427, "properties": {"text": "Subject: re : fwd curves\nthx i understand and will work with kevin and hunter . . margaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.346+0000", "entityId": 9428, "properties": {"text": "Subject: from robert schenck , henwood\nsandeep ,\ni don ' t know if robert sent you this directly , so am forwarding a copy .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 03 / 2001\n08 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" robert schenck \" on 01 / 02 / 2001 11 : 13 : 23 pm\nto :\ncc :\nsubject : re : india model\nstinson ,\ni have attached a marked up copy of the authorisation we need from you\ncan we please change our phone contact to friday your time , ( saturday mine )\nas i have a previous engagement which i cannot cancel\nregards\nrobert\n- authorisation . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.351+0000", "entityId": 9429, "properties": {"text": "Subject: fwd curves\nmargaret ,\nthe forward power and gas price curves , unlike nymex futures prices ,\nare not publicly available and are a closely guarded secret of the trading\ndesks .\nwe have no authority to release them without getting the head of the\ntrading desk involved .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.356+0000", "entityId": 9430, "properties": {"text": "Subject: spread option code change\nzhiyang and zhiyun ,\nvince told me that london has some trouble to calculate spread option\nfor correl = 1 , voll = vol 2 . in such a case , the effective volatility becomes\nzero , and the option has zero time value .\ni have modified the unitcorrpremium ( ) routine to force the code to treat\nthis situation as a special case . ( it returns the discounted intrinsic value ) .\nplease incorporate this chang to your code so that it will no longer cause\nany\nproblems that should not happen in the first place .\nif you have any questions , please let me know .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - -\ndouble unitcorrpremium (\ndouble sl ,\ndouble s 2 ,\ndouble strike ,\ndouble r ,\ndouble ql ,\ndouble q 2 ,\ndouble voll ,\ndouble vol 2 ,\ndouble correl ,\ndouble tmat ,\nint opttype\n)\n{\ndouble retval ;\nif ( tmat < = 0 . 0 )\nreturn intrinsic ( sl , s 2 , strike , opttype ) ;\n/ / look right here for the change , only two lines .\nif ( ( 1 . 0 - correl ) < tiny &\nsetup ( sl , s 2 , strike , r , ql , q 2 , voll , vol 2 , correl , tmat ) ;\nif ( opttype )\nretval = s . disc * gauherint ( ffuncoc ) / sqrtpi ;\nelse\nretval = s . disc * gauherint ( ffuncop ) / sqrtpi ;\nreturn retval ;\n}", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.360+0000", "entityId": 9431, "properties": {"text": "Subject: option hedging for ees\neugene ,\nbob and i had a discussion about your question you raised yesterday .\nfor an option writer , he has the obligation to deliver , so he hedges it with\nthe underlying by adjesting delta positions . the hedging cost , theoretically ,\nshould be equal to the fair value of the option premium .\non the other hand , for the option holder , he has no obligation , by delta\nheging ,\nhe would pay double for the option , with no upside . so he should not hedge\nit at all .\nif the option holder wants to protect the time value of the option , he should\nsell\nthe option to the market or some equivalent options to create a theta - neutral\nportfolio .\nthis may require trading in both the orginal and the equivalent option\nunderlyings .\nour question to you , if the call options you mentioned are embedded in the\nees\ncontracts , say fixed price sale contracts , what makes it possible to just\nseparate those options\nand sell them to the market to retain the full values of the options ? we\nconjecture that these\noptions are meant to hedge the original contract . by selling those options\nyou eliminate the upside of the\noriginal contract .\ngive one of us a call if you want to discuss this further .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.365+0000", "entityId": 9432, "properties": {"text": "Subject: the garp convention\ndear shirley\n?\nfurther to our telephone conversation earlier today , i am writing concerning\nthe garp 2001 convention , which will be held in new york between 13 th and\n14 th february .\n?\ni have set a new deadline for presentations to be sent to me , which is\nfriday 5 th january . i am sure you can appreciate that collating , arranging ,\norganising and printing over 80 presentations is a mammoth logistical task ,\nhence why i require the presentations as soon as possible .\n?\ncan i please have an indication of when i am likely to receive vince ' s\npresentation ? below is the talk he has agreed to give ( he has also agreed to\nchair the stream on energy & corporate risk on tuesday 13 th february ) :\n?\nmeasuring energy risk - tackling price volatility , adapting var , scenario\nmodeling and regulatory requirements\n- mean ( or floor ) reversion\n[ image ]\nthe challenge of modeling price dynamics in the energy markets\n- bullitl . jpg", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.369+0000", "entityId": 9433, "properties": {"text": "Subject: meeting with petronas\nrick ,\ni was contacted by petronas who requested a meeting\nwith enron on risk management . i have met with them\na few years ago and they want to discuss with us\ntheir progress implementing risk management practices .\ncan we arrange for them a standard presentation , like the one we have for\nbanks\n( you or david port , bill bradford , research ) ?\nunfortunately , they gave us no choice as far as the timing is concerned\n( given a very tight schedule ) . they want to visit on thursday , feb . 8 ,\nat 10 a . m . i shall take them out to lunch after the meeting .\ni shall also contact jeff shankman and john nowlan\nto arrange a short courtesy meeting with them .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.374+0000", "entityId": 9434, "properties": {"text": "Subject: re : stanford project\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 03 / 2001\n08 : 54 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n12 / 27 / 2000 05 : 04 pm\nto : nick bambos @ enron\ncc :\nsubject : re : stanford project\nnick ,\nhope you had a nice christmas . best wishes for the new year .\nit would certainly be great to see you and to meet eric some time in the next\nfew months . everyone here\nwas very impressed with giuseppe and we are eager to have another of your\nstudents come to enron .\nenron broadband is continuing to evolve and the current vision is to rely on\nenron ' s trading expertise while trying to\nminimize our role as an engineering company and innovator of technology . i\nspoke recently with jim fallon , the current\nhead trader in ebs , and we put together a short list of topics of interest\nwhere you might be able to help educate us .\ni put these in the order of interest ( to mr . fallon ) .\n1 . where will bandwidth prices go ? the direction of prices , obviously is\nthe concern of any trader . we realize that\ntechnological innovation will continue to drive down prices , but are still\ninterested in trying to quantify how fast prices will fall ,\nif there are likely to be certain bottlenecks in the fiber network where you\ncould see prices stable or rising for some length of time ,\nif there are applications on the horizon which would use such prodigious\namounts of bandwidth as to have some effect on pricing ,\nand if there is a rational way of trying to quantify the timing and effect on\nprices of new technologies .\nthe term \" bandwidth \" might primarily mean lit fiberoptic capacity , but could\nalso incompass dark fiber , or ip transit and transport\npricing .\n2 . during the last year , enron purchased a company known as \" warpspeed \" in\norder to acquire their metarouter technology . to quote from the enron press\nrelease :\n\" metarouter sends signals throughout distributed networks to determine the\noptimal connectivity paths for any size bandwidth capacity from anywhere in\nthe world . capable of processing thousands of connections per second ,\nmetarouter significantly enhances enron \u0001 , s ability to automate circuit\nprovisioning . \"\nthere may be two separate questions to ask here . first , in the context of\nthe current market ( or the market which may develop in the next 1 - 2 years ) ,\nwill the metarouter be a commercially viable product ? that is , will it\naddress an actual need in the market , or would it be more cost effective just\nto use technicians with jumper cables to provision circuits ?\nthe second question ( our first real technical question ) : is the metarouter\ntechnology scalable ? before starting on this project , vince and i will\nneed to make the proper introductions with the principles who are\nimplementing this technology .\n3 . aggregation of loads . a recurring question comes from a number of areas\nsuch as ip , network storage , and streaming media transport sales : what\nvalue can i get form aggregating customers , each of which has some type of\nstochastic load profile ? giuseppe touched on this problem as it relates to\nip transport , but it may be interesting to try and look in more detail .\nthe main stumbling block may be that we currently have basically no actual\ncustomer data . i am told that in a few months we will have some more useful\nhistory . my understanding is that what will be available will be 5 - minute\naverages of usage , so we still will not know on a short time scale what the\ndistribution of load looks like .\ni hope that this gives you enough information to get some idea of what our\nconcerns are at this point . please let me know your thoughts about these\ntopics . i would expect , for instance that question number 1 may not be\nreasonable as a research project , but might be a question which you would\nfeel comfortable in addressing by giving us your qualitative opinions , maybe\nin the form of a talk here at enron .\nagain , let me know your thoughts , and i look forward to seeing you again\nsoon .\nstinson\nnick bambos on 12 / 20 / 2000 12 : 14 : 40 pm\nto : vince . j . kaminski @ enron . com\ncc : stinson . gibner @ enron . com\nsubject : stanford project\nhello vince and stinson ,\nfirst of all ,\nbest wishes for happy holidays ! ! ! !\nif you are in the stanford area during the holidays , let ' s get together\nsome time to have dinner .\ni have formally established the project - thanks again for funding\nit - and i have also recruited the second phd student . his name is\neric cope , and he is a top - notch student , very mature , and entrepreneurial !\nwe have started working on some interesting problems in this area . i would\nhope that eric could spend the coming summer at enron to get immersed into\nthe \" problem / opportunity generation environment . \" that really helps the\nstudent\nto develop a realistic vision about their research .\nperhaps , our whole team could visit enron again some time in the next quarter ,\nsay in march or so , to discuss the research issues we are pursuing . and of\ncourse\nyou could visit us before that too .\nwith my warmest wishes ,\nnick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.378+0000", "entityId": 9435, "properties": {"text": "Subject: reminder\nhappy new year to all !\ndon ' t forget to get registered early for this year ' s conference . it\npromises to be the best yet . the fun stuff is already organized and the\nprogram looks to be the best that \" trail boss \" titman has yet produced .\nnotice the \" friendly encouragement \" ( translation discount in the\nregistration fee ) for early registration . the conference info and\nregistration form can be found at\nhappy new year and hope to see you in san antonio in april !\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.383+0000", "entityId": 9436, "properties": {"text": "Subject: re : cross - guarantees\nattached are the latest drafts of 3 of the cross - guarantee agreements . i\nhave the other nine as well , in case you need them . the agreements are\nbasically identical with one exception . the debt to enron in raptor 3\n( approx . $ 259 mm ) is excluded from the guarantees . you may also note that\nthis debt is not represented on the dprs which i sent earlier . this is\nbecause the formation of raptor 3 was a failed fas 125 transaction , therefore\nwe did not get sale treatment and can ' t recognize the debt in looking at\ncredit capacity . let me know if you have questions or if you need the other\nnine guarantees . thanks ,\nron\n- - - - - forwarded by ron baker / corp / enron on 01 / 03 / 2001 09 : 40 am - - - - -\n\" kornreich , craig \"\n12 / 18 / 2000 04 : 55 pm\nto : \" curry , alicia \" , \" mintz , jordan ( enron ) \"\n, \" ' joel . ephross @ enron . com ' \"\ncc : \" ' kevin . d . jordan @ enron . com ' \" ,\n\" ' george . mckean @ enron . com ' \" ,\n\" ' ryan . siurek @ enron . com ' \" , \" patel trushar ( enron ) \"\n, \" tiller , annmarie ( enron ) \"\n, \" ' brent . vasconcellos @ enron . com ' \"\n, \" ' ron . baker @ enron . com ' \"\n, \" ' clint . walden @ enron . com ' \" ,\n\" ' alan . quaintance @ enron . com ' \" , \" spradling , mark \"\n, \" halbert , elaine \"\nsubject : re : cross - guarantees\nattached please find drafts of the 3 remaining raptor guaranty agreements\n( i . e . , those where pronghorn is the beneficiary ) .\nregards ,\ncraig s . kornreich\nvinson & elkins l . l . p .\n2300 first city tower\n1001 fannin street\nhouston , tx 77002\nph ( 713 ) 758 - 4816\nfax ( 713 ) 615 - 5862\ne - mail : ckornreich @ velaw . com\n+ + + + + + confidentiality notice + + + + +\nthe information in this email may be confidential and / or privileged . this\nemail is intended to be reviewed by only the individual or organization\nnamed above . if you are not the intended recipient or an authorized\nrepresentative of the intended recipient , you are hereby notified that any\nreview , dissemination or copying of this email and its attachments , if any ,\nor the information contained herein is prohibited . if you have received\nthis email in error , please immediately notify the sender by return email\nand delete this email from your system . thank you\n- talon ( i ) ifo pronghorn ( iii ) cross - guarantee . doc\n- timberwolf ( ii ) ifo pronghorn ( iii ) cross - guarantee ( v . 2 ) . doc\n- bobcat ( iv ) ifo pronghorn ( iii ) cross - guarantee . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.388+0000", "entityId": 9437, "properties": {"text": "Subject: raptor position reports for 12 / 28 / 00\nattached are the latest available daily position report files for the 4\nraptor vehicles which include spreadsheets detailing what is hedged within\neach vehicle . one thing that i forgot to mention in our meeting yesterday is\nthat there is considerable indecision as to whether or not raptor 4 will be\nincluded in the cross - guarantees , so we will need to have a value with or\nwithout raptor 4 . i will send a follow - up e - mail with the latest drafts\navailable for the cross guarantees . let me know as questions arise . thanks\nagain .\nron\n- - - - - forwarded by ron baker / corp / enron on 01 / 03 / 2001 09 : 25 am - - - - -\ngordon mckillop\n12 / 29 / 2000 12 : 26 pm\nto : ben f glisan / hou / ect @ ect , andrew s fastow / hou / ect @ ect , richard\ncausey / corp / enron @ enron , rick buy / hou / ect @ ect , greg whalley / hou / ect @ ect\ncc : barry schnapper / corp / enron @ enron , andrea v reed / hou / ect @ ect , ryan\nsiurek / corp / enron @ enron , kevin d jordan / corp / enron @ enron , michael\nkopper / hou / ect @ ect , chris loehr / hou / ect @ ect , anne yaeger / hou / ect @ ect , rodney\nfaldyn / corp / enron @ enron , ron baker / corp / enron @ enron ,\namy . flores @ ljminvestments . com , l ' sheryl hudson / hou / ect @ ect , wes\ncolwell / hou / ect @ ect , kevin howard / enron communications @ enron communications ,\ndavid port / market risk / corp / enron @ enron , jordan mintz / hou / ect @ ect , maria\nlebeau / hou / ect @ ect , michael s galvan / hou / ect @ ect , david maxwell / hou / ect @ ect ,\nsusie ayala / hou / ect @ ect , hope vargas / hou / ect @ ect , bob butts / gpgfin / enron @ enron\nsubject : raptor position reports for 12 / 28 / 00", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.394+0000", "entityId": 9438, "properties": {"text": "Subject: energy conference\nvince ,\ngreetings , happy new year , and thanks for your end - of - 2000 e - mail .\n> one suggestion i want to make is rick causey . i talked to him and he is\n> willing to\n> be a speaker . he is a very senior and important executive of enron and a ut\n> grad .\ni have asked sheridan to raise the keynote - speaker issue with you during\nyour discussions tomorrow .\nbest ,\nehud\nehud i . ronn\njack s . josey professor in energy studies\ndepartment of finance\nmccombs school of business\nuniversity of texas at austin\naustin , tx . 78712 - 1179\nvoice : ( 512 ) 471 - 5853\nfax : ( 512 ) 471 - 5073\ninternet : eronn @ mail . utexas . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.403+0000", "entityId": 9439, "properties": {"text": "Subject: re : uk portfolios and books setup in risktrac\ntanya\nthe books were set up incorrectly when the spreadsheet feeds were\nimplemented . this has since been corrected . currently the european risk trac\nnumbers do not feed into the corporate reporting of var .\nthe books should now contain gas exposures in uk gas and power in uk power\nand have no duplication .\ni have previously discussed with naveen and kirstee that it would be a good\nidea if we set up a regular meeting to projecct manage the implementation of\neuropean var numbers , from risk trac , into the daily reporting . if you have\nno objections i suggest we discuss this at the next weekly rac / research\nmeeting .\nrgds\noliver\ntanya tamarchenko\n03 / 01 / 2001 21 : 05\nto : david port / market risk / corp / enron @ enron , vince j kaminski / hou / ect @ ect\ncc : kirstee hewitt / lon / ect @ ect , oliver gaylard / lon / ect @ ect\nsubject : re : uk portfolios and books setup in risktrac\ndavid and vince ,\nin my e - mail below i pointed out to a inconsistency in the portfolio\nhierarchy for uk positions in risktrac that i found out ,\nnamely : some books ( for example elsb 1 and elsb 2 ) belong to uk - gas portfolio\nand to uk - power portfolio .\ni wanted to clarify this in order to reconcile positions in risktrac and in\nthe spreadsheet .\ntanya .\ntanya tamarchenko\n01 / 03 / 2001 02 : 09 pm\nto : naveen andrews / corp / enron @ enron , matthew adams / corp / enron @ enron\ncc : rabi de / na / enron @ enron , jaesoo lew / na / enron @ enron , vince j\nkaminski / hou / ect @ ect\nsubject : re : uk portfolios and books setup in risktrac\nnaveen and matthew ,\ni started looking systematically through uk positions and corresponding var\nnumbers in the risckrac .\ni found a few inconsistencies so far .\n1 . the portfolio elsb 1 - nbp has a book elsb 1 under it . the sum of delta\npositions for this book is\n239 , 021 , 655 , the sum of gamma positions is - 211 , 031 , 450 . var for the\nportfolio elsb 1 - nbp is zero .\nthe same refers to a few other portfolios , for example elsb 2 - nbp , elsb 3 - nbp ,\ne 2 xxl - nbp .\n2 . the portfolio elsbp 1 - ppp also has the book elsb 1 under it . this book\ncontains the positions on pppwdl\nthrough pppwd 6 and pppwel through pppwe 4 .\nthe same refers to the other books , for example elsb 2 .\nthis looks messy . can someone in rac go over all the portfolios , all the\ncorresponding books and curves\nin risktrac and make sure they are set up properly ?\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.410+0000", "entityId": 9440, "properties": {"text": "Subject: re : uk portfolios and books setup in risktrac\ndavid and vince ,\nin my e - mail below i pointed out to a inconsistency in the portfolio\nhierarchy for uk positions in risktrac that i found out ,\nnamely : some books ( for example elsb 1 and elsb 2 ) belong to uk - gas portfolio\nand to uk - power portfolio .\ni wanted to clarify this in order to reconcile positions in risktrac and in\nthe spreadsheet .\ntanya .\ntanya tamarchenko\n01 / 03 / 2001 02 : 09 pm\nto : naveen andrews / corp / enron @ enron , matthew adams / corp / enron @ enron\ncc : rabi de / na / enron @ enron , jaesoo lew / na / enron @ enron , vince j\nkaminski / hou / ect @ ect\nsubject : re : uk portfolios and books setup in risktrac\nnaveen and matthew ,\ni started looking systematically through uk positions and corresponding var\nnumbers in the risckrac .\ni found a few inconsistencies so far .\n1 . the portfolio elsb 1 - nbp has a book elsb 1 under it . the sum of delta\npositions for this book is\n239 , 021 , 655 , the sum of gamma positions is - 211 , 031 , 450 . var for the\nportfolio elsb 1 - nbp is zero .\nthe same refers to a few other portfolios , for example elsb 2 - nbp , elsb 3 - nbp ,\ne 2 xxl - nbp .\n2 . the portfolio elsbp 1 - ppp also has the book elsb 1 under it . this book\ncontains the positions on pppwdl\nthrough pppwd 6 and pppwel through pppwe 4 .\nthe same refers to the other books , for example elsb 2 .\nthis looks messy . can someone in rac go over all the portfolios , all the\ncorresponding books and curves\nin risktrac and make sure they are set up properly ?\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.416+0000", "entityId": 9441, "properties": {"text": "Subject: re : uk portfolios and books setup in risktrac\nnaveen and matthew ,\ni started looking systematically through uk positions and corresponding var\nnumbers in the risckrac .\ni found a few inconsistencies so far .\n1 . the portfolio elsb 1 - nbp has a book elsb 1 under it . the sum of delta\npositions for this book is\n239 , 021 , 655 , the sum of gamma positions is - 211 , 031 , 450 . var for the\nportfolio elsb 1 - nbp is zero .\nthe same refers to a few other portfolios , for example elsb 2 - nbp , elsb 3 - nbp ,\ne 2 xxl - nbp .\n2 . the portfolio elsbp 1 - ppp also has the book elsb 1 under it . this book\ncontains the positions on pppwdl\nthrough pppwd 6 and pppwel through pppwe 4 .\nthe same refers to the other books , for example elsb 2 .\nthis looks messy . can someone in rac go over all the portfolios , all the\ncorresponding books and curves\nin risktrac and make sure they are set up properly ?\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.421+0000", "entityId": 9442, "properties": {"text": "Subject: re : friday brown bag lunch on option pricing\nvince ,\nthanks for your support . we will continue the friday lunch series , which i\nthink\nis very useful for us to keep up with the lastest development in various\nareas .\nzimin\nvince j kaminski\n01 / 03 / 2001 08 : 29 am\nto : zimin lu / hou / ect @ ect\ncc : alex huang / corp / enron @ enron , stinson gibner / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : friday brown bag lunch on option pricing\nzimin ,\ni have talked to alex about it . i don ' t think that the additional seminars\nwill\ncrowd out the brown bag lunches .\nthe seminars are really targeted to people who recently joined the group and\nhave very limited , or zero , exposure to energy markets .\nfor most members of the group it should be the piece of cake . brown bag\nlunches\nare not that time intensive , except for the speaker .\nplus , we ran out of days available for lunch meetings .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 03 / 2001\n08 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 02 / 2001 12 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : friday brown bag lunch on option pricing\nvince ,\nthis is a brief summary of last year ' s friday brown bag lunch option pricing\nseries .\nwe had about 15 lectures , given by the following people :\ngrant , stinston , vasant , krishna , zimin , maureen , clayton , paulo , chonawee ,\nmyself , and\nsome outside speakers . we were able to attract some outside audience as well .\noverall the response is quite encouraging and we have planned\nto continue it .\nin light of the presently scheduled seminars on \" energy derivatives \" , it\nseems our friday\nschedule will be too crowded if we have seminars on \" energy derivatives \" on\ntwo fridays\nand fbblop on other fridays . what ' s your suggestion ? should we discontinue\nthe fbblop ?\nwe also have scheduled january 19 for tom halliburton ' s visitor leon lasdon\nfrom ut austin\nto talk on non - linear programming . should we cancel it ?\nbest ,\nzimin & alex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.426+0000", "entityId": 9443, "properties": {"text": "Subject: friday brown bag lunch on option pricing\nzimin ,\ni have talked to alex about it . i don ' t think that the additional seminars\nwill\ncrowd out the brown bag lunches .\nthe seminars are really targeted to people who recently joined the group and\nhave very limited , or zero , exposure to energy markets .\nfor most members of the group it should be the piece of cake . brown bag\nlunches\nare not that time intensive , except for the speaker .\nplus , we ran out of days available for lunch meetings .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 03 / 2001\n08 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalex huang @ enron\n01 / 02 / 2001 12 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : friday brown bag lunch on option pricing\nvince ,\nthis is a brief summary of last year ' s friday brown bag lunch option pricing\nseries .\nwe had about 15 lectures , given by the following people :\ngrant , stinston , vasant , krishna , zimin , maureen , clayton , paulo , chonawee ,\nmyself , and\nsome outside speakers . we were able to attract some outside audience as well .\noverall the response is quite encouraging and we have planned\nto continue it .\nin light of the presently scheduled seminars on \" energy derivatives \" , it\nseems our friday\nschedule will be too crowded if we have seminars on \" energy derivatives \" on\ntwo fridays\nand fbblop on other fridays . what ' s your suggestion ? should we discontinue\nthe fbblop ?\nwe also have scheduled january 19 for tom halliburton ' s visitor leon lasdon\nfrom ut austin\nto talk on non - linear programming . should we cancel it ?\nbest ,\nzimin & alex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.431+0000", "entityId": 9444, "properties": {"text": "Subject: proposed agenda for january 11 auction meeting\nlet me know if you would like anything else included .\n- - - - - forwarded by greg woulfe / enron communications on 01 / 05 / 01 07 : 09 am - - - - -\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nfrom 4 january 2001\ndr richard steinberg\nuniversity of cambridge\nthe judge institute\ntrumpington street\ncambridge cb 2 lag\nengland\ntel : + 44 - 1223 - 339638\nfax : + 44 - 1223 - 339701\ne - mail : r . steinberg @ jims . cam . ac . uk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.436+0000", "entityId": 9445, "properties": {"text": "Subject: re : ca for henwood\nstinson -\nwe will get something to you tomorrow .\nbruce\nstinson gibner @ ect\n01 / 04 / 2001 05 : 18 pm\nto : bruce lundstrom / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , sandeep\nsubject : ca for henwood\nbruce ,\nevidently your assistant was unsuccessul in finding the ca ' s used in either\nthe of the previous henwood projects for japan and korea .\nwe are working on a project to model the economic viability of dabhol under\neconomic dispatch and are faced with a very tight deadline in february . can\nyou help us put together a confidentiality agreement for henwood energy\nservices , inc . who will be performing the model calculations ?\nany help would be appreciated .\nregards ,\nstinson gibner\nv . p . enron research\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.441+0000", "entityId": 9446, "properties": {"text": "Subject: dhabol\njeff ,\nwe shall forward to you shortly a copy of the message from sandeep with the\nnumbers you have\nrequested . what follows below are the extracts from two recent articles on\nthe power situation in india\npublished by the financial times .\nthe first article describes recent power outage in northern india affecting\nmillions of people .\none possible line of defense is pointing out to the value of output lost due\nto power\nshortages . it is obvious that the value of lost production exceeds the cost\nof power produced\nby the dhabol plant ( expensive as it may be ) . the power cut affected 230\nmillion people .\nthe second article is enron specific .\nvince\nasia - pacific : power failure hits north india\nfinancial times ; jan 3 , 2001\nby angus donald\ntens of millions of people were left without electricity\nin northern india\nyesterday after a power grid breakdown .\nelectricity was gradually switched on in some areas and\nmost parts of the\ncapital new delhi , with 60 to 70 per cent of supply\nexpected to be restored\nby the end of the day , according to power grid\nofficials .\nthe associated chambers of commerce and industry\n( assocham ) , a\nleading business organisation , expressed \" deep concern \"\nand called for a\nmechanism to prevent future disruption that could\n\" cripple the economy \" .\nthe power failure across eight indian states , including\nnew delhi , disrupted\ntrain services , water supplies and the telephone network\nand forced\nhospitals to switch to emergency generators .\nthe fault occurred on the northern grid , which provides\nelectricity for 226 m\npeople , and affected the states of delhi , haryana ,\npunjab , uttar pradesh ,\nhimachal pradesh , madhya pradesh , rajasthan and jammu\nand kashmir .\na breakdown at a sub - station in kanpur in uttar pradesh ,\nindia ' s most\npopulous state , caused an overload of power on other\nlines , which then\nfailed as well .\ntrains stopped running for most of the day and signals\nsystems were\ndamaged . new delhi international airport was also\nslightly affected before\nits own power supply could be engaged .\n\" we will probe into the reasons for the failure . it is\nmost likely to be a\ntechnical failure , but we will investigate why it\nhappened , \" suresh prabhu ,\nthe power minister , was quoted as saying by press trust\nof india .\nindia suffers regularly from power problems because of\nlack of funding to\nupgrade infrastructure . theft of supplies is also a big\nproblem . thirty per\ncent of the country ' s electricity is stolen , according\nto analysts . in new\ndelhi as much as 50 per cent is stolen .\ntwo years ago , a power failure blacked out uttar pradesh\nand delhi for\nhours .\nassocham issued a statement , saying that increasing\nindustrial demand\nwould exacerbate the problems already faced by india ' s\ninefficient power\nsector . \" the slow progress , particularly in\nstrengthening the transmission\nand distribution system , and ever increasing theft will\ncontribute to\nworsening the power supply situation further . \"\ncopyright : the financial times limited\n, copyright the financial times limited 2000 . \" ft \" and \" financial times \"\nare trademarks of the financial times . privacy policy | terms jan 3 , 2001\nby khozem merchant\nenron , the us energy producer and a constant target of\ncriticism in india , is\nhitting back with a campaign to reverse its image as a\nprofiteering\nmultinational .\nits \" myth and reality \" offensive in local newspapers\nfollows the west indian\nstate of maharashtra ' s decision to review the tariff it\npays the texas - based\ncompany , whose dollars 2 . 2 bn electricity generating\nplant at dabhol is\nindia ' s biggest single foreign investment .\nmaharashtra ' s tariff has more than doubled since 1993\nand is three times\ngreater than that charged by other independent power\nproducers ( ipps ) .\nthe tariff has risen because of the depreciation of the\nrupee against the\ndollar and the high but now falling price of naphtha\nfuel . the state also pays\na fixed capacity charge of rs 970 m ( dollars 21 m ) a month ,\nreflecting the\nhuge project cost and , controversially , irrespective of\nconsumption .\na showdown looks inevitable , reminiscent of a clash six\nyears ago that\ndamaged india ' s appeal to foreign investors . a former\nofficial of the world\nbank , which has criticised the deal , says enron is\nemerging \" as the east\nindia company of the 21 st century \" - a reference to the\nbritish trader that\ncolonised key areas of the indian economy in the 19 th\ncentury .\nthe stand - off is the latest blot on india ' s power\nsector . the uk ' s powergen\nand cogentrix of the us have quit india recently ,\nfrustrated by long approval\nprocedures , inadequate payments mechanisms or because of\nhigher\nreturns elsewhere .\n\" india has lost time and opportunity and has driven\nreturns down by six\npercentage points , \" says gerry grove - white , former india\ngeneral manager\nof powergen , which has sold its 655 mw plant in gujarat\nto china light &\npower of hong kong .\nindia ' s national plan for the five years to 2002 says\ngenerating capacity\nmust rise by 40 , 000 mw to about 120 , 000 mw . but since\n1992 , ipps have\nadded only 3 , 000 mw and 2 , 500 mw remains under\nconstruction . this is\ninsufficient to support official projections of 6 to 8\nper cent economic\ngrowth .\nenron was a bellwether of india ' s liberalisation ,\nwinning fast - track project\napproval in the early 1990 s . phase 1 , a 740 mw plant\nfuelled by expensive\nnaphtha came on stream in may 1999 , and phase 2 , a\ndollars 1 . 87 bn plant\nof 1 , 624 mw capacity that will run on cheaper liquefied\nnatural gas ( lng ) ,\nwill be completed this year . only two of seven other\nfast - track proposals\nhave achieved financial closure .\nfrom the outset enron encountered attacks , culminating\nin maharashtra ' s\nthen nationalist government cancelling the project\nbefore renegotiating\nterms no less onerous . vilasrao deshmukh , chief minister\nof the successor\ngovernment , says the power purchase agreement is\nunaffordable .\nenron , whose attackers also include cultural\nchauvinists , wants to maintain\ngood political relations in a hostile but lucrative\nenvironment . enron views\nindia as a testing ground for its evolution from a\ntraditional manager of\npower plants to a broad - based trader of commodities ,\nsuch as energy , gas\nand bandwidth .\nto support these ambitions enron hopes to trade energy\nbetween power\nsurplus and deficit states , once legislation is passed\nthis year . it is building\nan lng terminal and pipelines to trade imported natural\ngas . and it is\nlaying a 15 , 000 km fibre - optic network to trade bandwidth\nspace in a country\ndesperately short of this new economy commodity .\nin any event , enron believes it has a watertight\ncontract . it is supported by\nmany that believe any subversion of the contract would\nconfirm investor\nperception of maharashtra , india ' s financial and\nindustrial hub , as an\nunreliable destination for investment .\nmr deshmukh - who has avoided the language of his\npredecessor , which\nthreatened to \" dump dabhol into the arabian sea \" - is\nunder pressure from\nradical members of his wobbly coalition . but his options\nare limited .\nscrapping the project would be ruinous for an\neconomically troubled state\nthat would have to compensate shareholders .\nmaharashtra state electricity board , the local utility\nand enron ' s main\nclient , is obliged to dispatch or \" off - take \" 90 per cent\nof dabhol ' s output . yet\nmseb has never honoured these guarantees . its off - take\nhas averaged 60\nper cent since the plant opened and , in effect , mseb has\nbeen paying a lot\nmore while consuming a lot less power .\none reason off - take is low is because the state ' s tough\nnew regulator has\ntold mseb to buy from cheaper sources . enron says the\ntariff would be\nrs 4 . 02 / kwh if mseb ' s off - take averaged 90 per cent . but\nwith off - take a\nthird lower , the average tariff is rs 4 . 94 per unit , and\noften higher . in\noctober , the tariff was rs 6 . 91 per unit , when off - take\nwas about 49 per\ncent . enron says tariffs should come down when phase 2 ,\nrun on cheaper\nlng , starts .\nthese cost pressures have forced mseb to take up only\nhalf of a 30 per\ncent equity option in phase 2 . enron has acquired the\nbalance and\nmandated bankers to find a buyer .\nenron ' s difficulties have undermined the appeal of ipps ,\nwhich have failed to\ndeliver the flood of investments . potential ipps feared\nthey would never be\npaid by state generating boards that have become a\nbyword for corrupt\nmanagement of power .\nreform of state electricity boards , whose uneconomic\npricing means\nindustrial users subsidise poor farmers , as well as\ntransmission and\ndistribution ( t & d ) services to check huge theft and\ntechnical losses , is\noverdue . \" given the limited resources , money would be\nbetter spent on t & d\nrather than on new plant , \" says oliver blackaby ,\nmanaging director of n m\nrothschild in india , which is advising karnataka on the\nprivatisation of its\ndistribution network .\nfor the moment , attention is fixed on enron ' s ability to\nsatisfy the\ncompeting interests of investors and clients . as sanjay\nbhatnagar , chief\nexecutive officer of enron india , said in a recent trade\nmagazine , one of the\nkey lessons learned from phase 2 is \" having flexibility\nto deal with\nexternalities \" .\ncopyright : the financial times limited\n, copyright the financial times limited 2000 . \" ft \" and \" financial times \"\nare trademarks of the financial times . privacy policy | terms & conditions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.447+0000", "entityId": 9447, "properties": {"text": "Subject: follow - up on captive generation\nvince / stinson ,\nplease find below two attachemnts . the excell spreadsheet shows some\ncalculations on the savings from using dabhol power as against a diesel\ngenset operating at a higher heat rate . there is also a differential in\nprice of diesel , as against naphtha used by the plant . i have taken data\nfrom the septemeber bill of dpc . we do not want to give the actual numbers\nto the press , since they ar likely to have a field day with the 6 cent / kwh\nenergy price of dabhol that is reflected there .\nthe seond attachement ( word ) has the wordings that i think we can send in to\nthe press . please review the calculations and the note , ad if you find this\nsatisfactory , please forward to jeff / s .\ni am availabel on mobile if you have questions o clarifications . the number\n( 610 mw ) for total captive generation in maharashtra ) is taken from mohan\ngurunath ' s presentation on this .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.452+0000", "entityId": 9448, "properties": {"text": "Subject: re :\nvince / stinson ,\nthe note below gives us the authorization to proceed . i have received no\ncomments from wade on my signing , but i have his approval for the study , so i\nwill proceed on that basis .\nsince we do not have any format of confidentiality agreement from jim , let us\nuse the one signed by the legal team for the japan study by henwood . in this\nreference , could you ( stinson ) get this from either heather mitchell , or john\nviverito ( who is the lawyer involved with japan , reporting to alan\naronowitz ) . we could use that as template and proceed before friday on that\nbasis .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 03 / 2001 10 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames a hughes\n01 / 03 / 2001 11 : 08 pm\nto : sandeep kohli / enron _ development @ enron _ development\ncc : wade cline / enron _ development @ enron _ development\nsubject : re :\ni have already given authorization to proceed . however , i did not know we\nwere providing the data . that is the thing i am looking for most - the raw\ninformation on what the grid and stack looks like . we need this asap . how\ndo we get this done quickly ?\njim\nsandeep kohli\n01 / 02 / 2001 10 : 55 pm\nto : wade cline / enron _ development @ enron _ development , james a\ncc :\nsubject :\nwade / jim ,\nmy apologies for missing the conference calls yesterday and today . i was not\nable to download my messages in time for the calls , but i will be on going\nforward .\nwhile i am still on vacation , i have been in conversation with vince and the\nresearch group following up on the henwood study we had spoken about . we\nhave received a formal proposal from henwood , and they are wanting\nauthorization to go forward . the study will get us the despatch forecasts\nfor the next 8 - 10 years , and will deliver the results by january end , per\nhenwood .\nvince and i have reviewed the proposal , and feel that we should proceed . we\nwill be fine tuning the assignment as we go forward . the big issue there is\nthe data for the model / s , and at this point henwood is relying more on us to\nprovide the data . we spoke to henwood yesterday , and i will be on another\ncall with them on friday .\ni need your confirmation on the following :\nthat i have your approval to proceed ahead with the study\nthat the study shall be paid for by dpc , and if so , is it ok for me to sign\nthe authorization being sent by henwood\nwe will need a formal confidentiality agreement to be in place by tomorrow\n( jim - if you have a particular format , please let me know )\ni am leaving the issue of hourly rates and cost to the research group since\nthey have more experience in dealing with groups like henwood . they feel the\ncosts are reasonable , and i will leave it at that .\nwe will need to collect data from the different sources we have in india , and\ni have proposed that there be a formal session in india between henwood and\nthe ene team in india in the week between 10 th and 15 th . this is important\nto insure that there are no disconnects , and that there are no illusions on\nthe quality of the data that will be available . it will also help us\nformalize the scope and better define the issues . in order to meet the\ndeadlines , the data will have to be in place by january 15 th .\ni will call jim later today ( i had called but you were on a call ) . i am here\ntill the weekend when i leave for india . please let me know if this\narrangement is ok .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.456+0000", "entityId": 9449, "properties": {"text": "Subject: henwood stuff and thoughts about valuation\ndid you guys get this ?\ni was too interested in the conversation to interrupt with comments about\nrisk / return if the decision would be covered in rates , it is the\ncustomers ' curves or equivalently the puc ' s curve .\ni think if i were going to approach valuation in commodities where the\nassumptions of black / scholes do not apply , i would start with the capm for\nlarge industries in an area , use pro formas to translate this to utility\ncurves for the input commodities , and add the utility curves .\nanother issue : the factor that explains why enron is lowest bidder is its\nrole in the market . in the 1930 s , keynes argued that if most market\nparticipants with long position were hedgers , futures prices would be higher\nthan spot ; if they were speculators or traders , future prices would be lower\nthan spot . traders must be compensated for holding the risk ; hedgers\n( including utilities and consumers ) are willing to pay a premium for the\ncertainty . consequently , enron traders have bigger bid / ask spreads and lower\nbid prices .\njust some random thoughts ,\nmichael\n- - - - - original message - - - - -\ndate : 01 / 04 / 2001 10 : 41 am ( thursday )\nfrom : \" heather mason \"\nto : hq 3 . em 5 ( michael schilmoeller )\nmark your calendar - tuesday january 23 , 2001 downtown houston hyatt hotel\nhenwood will be hosting a comprehensive ercot symposium on tuesday , january\n23 , 2001 . a team of henwood regional power market specialists will be\npresenting the latest analysis and\ninformation to assist you in preparing for the new ercot restructured power\nmarket , in addition to an anlysis of the issues now playing out in the wscc\nmarkets . coffee and registration will\nbegin at 9 : 30 am and the program will run until 3 : 00 pm . lunch and snacks\nwill be provided .\nagenda topics include :\n* what will be the critical - success factors for qualified scheduling entities\noperating in ercot ' s new wholesale & retail markets ?\n* how will market restructuring impact mid to long - term wholesale prices ?\n* what is the outlook for new generation ?\n* what are the impacts of upcoming emission regulations on ercot ' s generation\nresources ?\n* what are the new analytical tools available to capture market uncertainty\nimpacts to your supply contracts and generation assets ?\n* what are the restructuring lessons learned from the california experience\nand the implications to ercot ?\nin conjunction with this program , henwood will have a demonstration room\navailable to present its latest software applications and e - business\nsolutions . a nominal $ 75 registration fee is required\nto reserve a space in the workshop .\nfor more information or to reserve your spot , please contact heather mason at\nhenwood : hmason @ hesinet . com or 916 / 569 - 0985 .\nabout henwood : henwood offers integrated business solutions , strategic\nconsulting , and innovative e - business applications to meet the challenges of\nthe restructured energy markets throughout\nnorth america , australia , and europe , serving clients that include eight of\nthe ten top utilities in north america , in addition to energy services\nproviders and power marketers .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.462+0000", "entityId": 9450, "properties": {"text": "Subject: alliance info alert\n= = special announcements = =\non january 2 , ferc filed a response in opposition to the emergency petition\nsouthern california edison filed december 26 for a writ of mandamus against\nferc in the u . s . court of appeals for the district of columbia . edison has\nasked the court to direct ferc to fix by order just and reasonable cost - based\nrates for the ca iso and cal px markets .\non december 22 , ferc issued an order regarding remedies for the california\nwholesale market that included the requirement of a technical conference on\nthe development of market monitoring procedures . this conference has been\nscheduled for january 23 , 2001 at ferc . elo 0 - 95 - 000 et . al .\n= = recent ferc filings = =\n( 1 ) rto developments\n* central illinois light co . , cinergy corp . , hoosier energy r . e . c . , southern\nillinois power coop . , southern indiana gas and ( 2 ) a request that\nthe commission authorize a designated transmission owner having commission\njurisdictional rates and charges to recover , through its commission\njurisdictional transmission service rates and charges , the costs incurred by\nthe designated transmission owner as a result of its withdrawal from the\nmidwest iso . erol - 731 - 000 . comments due by january 11 , 2001 .\n* nyiso filed a status report on governance issues in compliance with docket\nnos . er 97 - 1523 - 005 , er 97 - 1523 - 006 , oa 97 - 470 - 006 , er 97 - 4234 - 004 and\nec 99 - 31 - 001 . comments due by january 10 , 2001 .\n* after a request filed by numerous entities , an extension of time to file\ncomments and protests to grid florida ' s december 15 , 2000 supplemental order\nno . 2000 compliance filing has been granted . comments will be due by january\n30 , 2001 . rtol - 67 - 000 .\n* cal px filed its tariff amendment no . 21 regarding the tracking of changes\nin the method proposed by the ca iso for allocating its grid management\ncharge . erol - 719 - 000 . comments due by january 9 , 2001 .\n* nyiso filed for a waiver for certain oasis requirements . elol - 24 - 000 .\nfiled december 22 , 2000 .\n* oklahoma municipal power authority filed an answer to american electric\npower co . ' s request to defer its application to transfer operational control\nof its transmission facilities located in the spp . ec 98 - 40 - 000 . filed\ndecember 26 , 2000 .\n* nepool participants committee filed an answer and iso ne filed a\nsupplement to its motion to intervene regarding protests to nepool ' s revised\nmarket rules regarding support implementation of electronic dispatch ( rule\n3 ) , uplift payments at low operating limits ( rule 5 ) , and installed capacity\nresponsibility ( rule 11 ) as well as a revised implementation date for\nelectronic dispatch . erol - 493 - 000 . filed december 27 , 2000 .\n* keyspan - ravenswood filed comments in support of nyiso ' s request to moot\nits compliance filing . ero 0 - 3591 - 000 , 001 and 004 and ero 0 - 1969 - 005 . filed\ndecember 22 , 2000 .\n* maine public utilities commission , the maine public advocate and the\nindustrial energy consumers group filed a request for rehearing or an\nemergency stay of the commission ' s december 15 , 2000 order directing iso ne\nto implement an icap deficiency charge of $ 8 . 75 / kw / m retroactive to august 1 ,\n2000 . elo 0 - 62 - 015 . filed december 22 , 2000 .\n* miso filed an answer to several protests regarding its oatt in dockets\nerol - 479 - 000 and er 97 - 1438 - 007 . filed december 27 , 2000 .\n* pjm filed changes to its oatt to limit the amount of transmission\ncongestion credits an entity that acquires a fixed transmission right ( ftr )\nthrough the ftr auction may receive if it enters increment bids or decrement\nbids in the day - ahead market that result in an increase of transmission\ncongestion charges at or near the receipt or delivery point of the ftr .\nerol - 773 - 000 . filed december 22 , 2000 .\n( 2 ) oatt / transmission\n* commonwealth edison filed a revised attachment k to its oatt in compliance\nwith the commission ' s december 8 , 2000 order . erol - 99 - 001 . comments due by\njanuary 10 , 2001 .\n* american transmission company filed their standards of conduct to be\neffective january 1 , 2001 . erol - 702 - 000 . comments due by january 9 , 2001 .\n* indianapolis power & light filed its first amendment to the\ninterconnection , operation and maintenance agreement between itself and dte\ngeorgetown . erol - 718 - 000 . comments due by january 9 , 2001 .\n* pjm filed an executed interconnection agreement between itself and\nbethlehem steel corp . erol - 756 - 000 . comments due by january 12 , 2001 .\n* arizona electric power coop . filed a request for rehearing regarding the\ncommission ' s order determining that standard offer scheduling coordinators\nshould be subject to the same energy imbalance charges as competitive offer\nscheduling coordinators . ero 0 - 3583 - 001 , erol - 173 - 001 and erol - 208 - 001 .\nfiled december 26 , 2000 .\n* american electric power service filed an executed interconnection and\noperation agreement between indiana michigan power company and duke energy\ndesoto . erol - 720 - 000 . comments due january 11 , 2001 .\n* illinois power co . filed an interconnection agreement between itself and\ndynegy midwest generation . erol - 712 - 000 . comments due january 11 , 2001 .\n* american electric power service corp . filed an executed interconnection\nand operation agreement between indiana michigan power co . and pseg\nlawrenceburg energy co . erol - 721 - 000 . comments due by january 11 , 2001 .\n* utilicorp filed amendments to the oatts for its missouri public service ,\nwestplains energy - kansas , westplains energy - colorado and st . joseph power &\nlight operating divisions in order to avoid customers from having to pay\nmultiple transmission charges . erol - 723 - 000 . comments due by january 12 ,\n2001 .\n* the american electric power service corp . filed an interconnection and\noperation agreement between kentucky power co . and riverside generating co .\nerol - 741 - 000 . comments due january 12 , 2001 .\n* the cleveland electric illuminating co . , ohio edison co . , pennsylvania\npower co . and the toledo edison co . ( first energy ) filed a modified proposal\nto offer ancillary services and interconnected operations services on a\nnon - discriminatory basis . ero 0 - 3771 - 002 . filed december 21 , 2000 .\n( 3 ) market complaints\n* dynegy power marketing , el segundo power , long beach generation and\ncabrillo i and ii filed a complaint against the ca iso requesting that the\ncommission direct the iso to cease making out - of - market ( oom ) dispatch orders\non its units in non - emergency situations , require the iso to negotiate\ncompensatory rates for oom dispatch orders , file for third payment options\nthat generators subject to a participating generator agreement could elect as\ncompensation for oom dispatch orders and other relief . elol - 23 - 000 .\ncomments due january 11 , 2001 .\n* southern california water co . d / b / a bear valley electric service filed a\ncomplaint against southern california edison ( edison ) alleging that edison as\nseeking to unlawfully terminate the added facilities agreement between the\ntwo . elol - 25 - 000 . comments due january 18 , 2001 .\n* cheyenne light , fuel & power co . filed a complaint against pacificorp\nregarding a notice of termination filed on december 26 , 2000 of a power sales\nagreement under which pacificorp provides cheyenne full capacity and energy\nrequirements . elol - 21 - 000 . filed on december 27 , 2000 .\n( 4 ) mergers / corporate restructuring\n* the montana power co . and northwestern corp . filed an application for\nauthorization of the disposition of certain jurisdictional assets whereby\nnorthwestern will purchase montana ' s utility business . ecol - 47 - 000 .\ncomments due january 11 , 2001 .\n* the montana power co . filed a notice of change of status and a revised\nstatement of policy and standards of conduct to reflect a planned transaction\npursuant to which northwestern corp . will purchase the utility business of\nmontana power . er 97 - 449 - 001 . comments due january 11 , 2001 .\n* mississippi valley gas co . submitted a request for rehearing regarding the\ncommission ' s november 24 , 2000 order authorizing the disposition of\njurisdictional facilities involved in the joint application filed by entergy\npower marketing and koch energy trading . eco 0 - 106 - 001 . filed december 26 ,\n2000 .\n( 5 ) miscellaneous\n* midwest iso submitted an application seeking authorization to issue\nlong - term senior notes in an amount not to exceed $ 100 million .\nesol - 13 - 000 . comments due january 12 , 2001 .\n= = other news = =\n* atc hits the ground running on jan . 1\n* utilicorp completes $ 190 million merger with st . joseph light & power\n- fercfilingsol 0102 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.466+0000", "entityId": 9451, "properties": {"text": "Subject: re : my model for spikes\nvalery ,\ni may be in dallas in the next few weeks .\ni shall probably come to dallas one friday .\ni shall let you know well in advance .\nvince\n\" valery kholodnyi \" on 01 / 04 / 2001 08 : 29 : 37 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : my model for spikes\ndear dr . kaminski ,\ni would like to apologize for the delay responding , i was on vocation .\nthank you very much for your interest in my work and for your suggestion to\nmeet\nfor lunch / dinner . i will be truly happy to do so . in this regard could you\nplease let me know what day might be convenient for you . since i am going to\nfly\nfrom dallas , i would like , if possible , to plan it in advance .\ni look forward to hearing from you and to seeing you soon .\nsincerely ,\nvalery kholodnyi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.473+0000", "entityId": 9452, "properties": {"text": "Subject: pjml 01 : the basics - january 16 , 2001\n01 / 04 / 01\npjm\nto : vincent kaminski\nenron\nre : \" pjm 101 : the basics \" training course\nyou are confirmed for the following course :\n\" pjm 101 : the basics \" training course on tuesday , february 27 , 2001\nfrom 9 : 00 a . m . to 12 : 00 noon and 1 : 00 p . m . to 4 : 00 p . m . on the internet .\nwe encourage you to coordinate participation in this workshop with others at\nyour location by organizing a conference room with internet and phone access .\nno fee will be charged to pjm members ; nonmembers will be invoiced $ 500 . 00 to\nattend the course . the fee is nonrefundable . non - members will be charged only\nfor each connection . multiple participants may watch on a single connection .\nin order to participate in the course , you will need a computer with internet\nconnection on at least a 56 k modem and a java compliant browser , at least\nversion 4 . 5 of netscape or internet explorer . you will also need a phone\nconnection . phone charges will be paid by pjm for domestic callers .\ninternational callers must pay for their own long distance charges .\nour course is being produced by virtual - workshops . com . a few days from now you\nwill receive registration confirmation from them . a few days prior to the\ncourse , you will receive log - on and dial up instructions from them as well as\nfiles of the slides which will be used so that you can print them out and take\nnotes if appropriate .\nif you need additional details , you can call me on 610 - 666 - 8981 or call our\ncustomer service hotline at ( 610 ) 666 - 8980 . we look forward to your\nattendance\nat our program .\nsincerely ,\ncarolyn mullen\ncustomer relations & training", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.481+0000", "entityId": 9453, "properties": {"text": "Subject: re : my model for spikes\ndear vince ,\nthank you very much for your e - mail . i am very excited about the opportunity y\nto see you soon in dallas . any week day , in general , and fridays , in\nparticular ,\nis convenient for me . please let me know what day might be convenient for you .\ni look forward to hearing from you and to seeing you soon .\nsincerely ,\nvalery", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.486+0000", "entityId": 9454, "properties": {"text": "Subject: re : invitation . . . welcome new analyst reception\nashley ,\nthnaks . i shall attend the reception . i shall ask shirley to set up a meeting\nwith you to discuss\nspring events on campus .\nvince\nashley baxter @ enron on 01 / 04 / 2001 04 : 01 : 01 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : invitation . . . welcome new analyst reception\nhello vince\ni wanted to forward the following invitation to you . we are putting the\ntechnologists through an orientation which includes a few days with the\nanalyst program - and the following is one of the events that they have\nscheduled on jan . 16 th . i wanted to forward to you as more of an fyi since\nwe do not have any cal berkeley candidates starting on jan . 8 th . also - we\nare starting to set some of the events on campus for the spring - so we\nshould probably get together soon . please let me know what works best for\nyou !\nthanks ,\nashley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.491+0000", "entityId": 9455, "properties": {"text": "Subject: re : tiger team event\nmichele ,\ni have defined the project for the students . it ' s one project that is\ndivided into three sections .\nfeel free to stop by to talk about it .\nvince\nfrom : michele nezi marvin @ enron communications on 01 / 03 / 2001 05 : 33 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : tiger team event\ni understand that you have been involved with the wharton tiger teams . i am\nthe commerical team lead for wharton recruiting . do you know the 3 projects\nthat the students are working on and who within enron is working with them on\nthe projects ?\nthanks for helping to facilitate this opportunity for wharton students .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\n- - - - - forwarded by michele nezi marvin / enron communications on 01 / 03 / 01 05 : 34\npm - - - - -\nkristin gandy @ enron\n01 / 02 / 01 11 : 30 am\nto : michele nezi marvin / enron communications @ enron communications\ncc :\nsubject : re : tiger team event\ni will try to get that information from christie .\nfrom : michele nezi marvin @ enron communications on 01 / 01 / 2001 06 : 38 pm\nto : kristin gandy / na / enron @ enron\ncc :\nsubject : re : tiger team event\ni can attend . do you know any of the details of the tiger team project and\nwho they are working with ? also , names of the students would be helpful . so\nwe can see if any are applying for summer positions .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\nkristin gandy @ enron\n12 / 28 / 00 10 : 28 am\nto : jeffrey a shankman / hou / ect @ ect , william keeney / hou / ect @ ect , catherine\nclark / hou / ect @ ect , rajesh chettiar / enron _ development @ enron _ development , tom\ndutta / hou / ect @ ect , jayshree desai / hou / ect @ ect , colin jackson / enron\ncommunications @ enron communications , laura howenstine / enron\ncommunications @ enron communications , michele nezi marvin / enron\ncommunications @ enron communications , jennifer fraser / hou / ect @ ect , natalie\nhalich / enron communications @ enron communications , ranabir\ndutt / corp / enron @ enron , teresa dyar / na / enron @ enron , jeff golden / hou / ees @ ees ,\ncharles ward / corp / enron @ enron , sarah wesner / corp / enron @ enron , li\nsun / na / enron @ enron , gillian johnson / na / enron @ enron , lisa\nconnolly / na / enron @ enron , michael j popkin / na / enron @ enron , kevin\nmcgowan / corp / enron @ enron , evan betzer / enron communications @ enron\ncommunications , jebong lee / enron communications @ enron communications , chu chu\nwang / corp / enron @ enron , brad hitch / eu / enron @ enron , betsy bassis / enron\ncommunications @ enron communications , matthew goering / hou / ect @ ect , claude\ntellis / enron @ enronxgate\ncc : christie patrick / hou / ect @ ect\nsubject : tiger team event\nhello team ,\ni hope that everyone had a wonderful and restful holiday season .\ndown to business : the university affairs group is putting together a tiger\nteam of students to do a project for enron . those students will be in town\non january 18 th and will be having dinner at churrasco ' s that night . i think\nit would be a great opportunity for some of the wharton alum to come out and\nmeet the participants , talk about enron and eat some good food . : - ) if you\nare interested in participating please rsvp to me via email or at extension\n53214 no later than 1 / 5 / 01 .\nthank you and hope to see you soon ,\nkristin gandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.496+0000", "entityId": 9456, "properties": {"text": "Subject: re : sorry .\nchonawee ,\nthis was perfectly all right . as a matter of fact i expect and encourage\nthe members of the group to disagree with me ( or anybody else )\non any subject . i am never offended by it and take it as a manifestation\nof ability to think independently and having the courage of one ' s\nconvictions .\nnobody has the monopoly on truth and nobody knows everything . the only\nway we can learn and avoid costly errors ( to ourselves and the\ncompany ) is by having open communication . in enron ,\nfacts are friendly .\nby the way , it was an excellent presentation .\nvince\nchonawee supatgiat @ enron\n01 / 04 / 2001 03 : 10 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : sorry .\nhi vince , i am sorry for correcting on the revenue of the different auctions .\nvickrey 1961 showed that all 4 kinds of auctions would yield the same\nexpected revenue to the auctioneer . ( dutch , english , first price - sealed bid ,\nand second - price sealed bid . ) in fact , the selling price is equal to the\nvaluation of the second highest bidder . for example , in vickrey auction ,\neveryone bids at his own valuation . hence , the winner pays the valuation of\nthe second highest bidder . in english auction , the second highest valuation\nbidder will stop competing if the price is above his valuation . hence , the\nwinner also gets the item at the price of the second highest valuation bidder .\nthank you for attending the meeting and giving many helpful contributions .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.501+0000", "entityId": 9457, "properties": {"text": "Subject: authorization\nrobert ,\nplease find below the authorization for the studay , as we had spoken about\nduring our conference call earlier today .\nauthorization\ni authorize henwood energy services , inc . , to provide for the hourly rates\nstated in the proposal dated 29 dec . 2000 , an analysis of the india\nelectricity system and an evaluation of the dabhol plant despatch . the\nresults of the study and information provided by enron shall be considered\nconfidential and will be subject to a confidentiality agreement to be\nprepared by enron and submitted to henwood .\nsandeep kohli ,\nvice president ,\nenron .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.506+0000", "entityId": 9458, "properties": {"text": "Subject: re : power plant model\nhi vince :\nnumber one below is fine . . . the more accurate the ebitda model the better .\nyour \" tweaking \" of the model at this point won ' t create any chinese wall\nproblems .\nmichelle and gary will talk about the programmer issue on monday , and get\nback to you . i apologize if there was any confusion . we ' re certainly\ngrateful for alex ' s involvement .\ntoday is my last day of associate rotation within the financial trading\ngroup , and i start at ees on monday . i handed off the project as best i\ncould , and of course will be available if you need me . my e - mail and phone\nnumber will be the same .\nhave a nice weekend .\njeff\nvince j kaminski @ ect\n01 / 05 / 2001 03 : 26 pm\nto : jeff m gray / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , alex\nhuang / corp / enron @ enron , gary hickerson / hou / ect @ ect , michelle d\ncisneros / hou / ect @ ect\nsubject : power plant model\njeff ,\na few comments on the model :\n1 . we have a few reservations about some features of the model but would like\nto\ndiscuss it internally and make the improvements without giving the benefit of\nour insights to the consultant .\nin general , the model is not unreasonable but the devil is always in the\ndetails and in the inputs and\ncalibration . the same model may produce drastically different results\ndepending\non the quality of inputs .\n2 . we don ' t have a separate pool of programmers in the research group . we\nwere told that you\nwould provide an it resource . alex would supervise this person .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.514+0000", "entityId": 9459, "properties": {"text": "Subject: re : benchmarking study\nsally ,\nthanks . the name of the person is at the bottom of this sequence of messages .\nvince\nenron north america corp .\nfrom : sally beck 01 / 05 / 2001 09 : 27 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : benchmarking study\ni passed this information along to some of my direct reports for their\nthoughts , and truthfully didn ' t hear back from anyone and didn ' t follow up .\ntwo years ago , we agreed to be part of a benchmarking study that was done by\naa ' s houston office ( interestingly enough , wes colwell was the aa partner who\nled this effort ) and we had mixed results . the study was designed to cover\ngas and power . despite our involvement in the steering committee , the study\nitself was very , very detailed , such that it was troublesome to complete .\njim fallon at the time refused to submit information on the majority of the\nquestions surrounding power , so our survey data for power was not very\nuseful .\ni would agree that at this time we will pass on this request . thanks for\npassing it along , however . i would be happy to convey this directly to the\nperson that has contacted you . just let me know his / her name and number and\ni will follow through on that if you would like .\nhope that your holidays was enjoyable and that the new year will be a good\none for you . - - sally\nvince j kaminski\n01 / 03 / 2001 03 : 29 pm\nto : sally beck / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : benchmarking study\nsally ,\ni gave you some time ago a brochure on this benchmarking study request .\nthey renewed their request for enron ' s participation .\nwhat is your view on this ? do you think the benefits of knowing what ' s\ngoing on offset the loss due information released and time spent on the\nproject .\nmy recommendation is to forget it .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 03 / 2001\n03 : 28 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" theresa sanders \" on 12 / 27 / 2000 01 : 32 : 18 pm\nto :\ncc :\nsubject : benchmarking study\ndear vince ,\npeter nance and i wanted to follow - up our discussion of enron ' s participation\nin our benchmarking study . have you discussed enron ' s participation in the\nproject with your colleagues ?\nhere is a small sample set of metrics that were taken from a comprehensive\nlist of over 700 metrics . the study group will decide which metrics to use .\nwith eei ' s credibility and teknecon ' s technical expertise , we intend to\nbecome the industry standard in benchmarking . we would very much like to\nhave enron participate in the study .\ni would be happy to set up another meeting with you and your colleagues with\npeter nance if you think that would be helpful .\nbest regards ,\ntheresa sanders\ndirector of business development\nalliance of energy suppliers\nedison electric institute\ntel : 202 - 508 - 5183\n- eei metrics - short list . xls\n- ebrochure . doc\n- riskbenc . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.522+0000", "entityId": 9460, "properties": {"text": "Subject: power plant model\njeff ,\na few comments on the model :\n1 . we have a few reservations about some features of the model but would like\nto\ndiscuss it internally and make the improvements without giving the benefit of\nour insights to the consultant .\nin general , the model is not unreasonable but the devil is always in the\ndetails and in the inputs and\ncalibration . the same model may produce drastically different results\ndepending\non the quality of inputs .\n2 . we don ' t have a separate pool of programmers in the research group . we\nwere told that you\nwould provide an it resource . alex would supervise this person .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.530+0000", "entityId": 9461, "properties": {"text": "Subject: analysis of dabhol energy cost\njeff ,\ni am forwarding an analysis put together by sandeep kohli and reviewed by\nvince and me . the results in the attached word document show that dabhol\nenergy costs are several cents below that of roughly 600 mw of distributed\ngeneration which has been identified in maharastra . this 600 mw does not\ninclude innumerable small generators which will have even worse energy\ncosts . the excel spreadsheet contains the data and calculations .\nregards ,\nstinson\nx 34748\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 05 / 2001\n03 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli @ enron _ development\n01 / 05 / 2001 02 : 28 am\nto : vince j kaminski @ ect , stinson gibner @ ect\ncc :\nsubject :\nvince / stinson ,\nplease find the two attachments that give a more detailed calculation , as\nwell as the revised statement that can be made to press .\nthe numbers are not small , but really do not reflect the true magnitude of\nthe genset issue . they do not take into account the capital costs of the\ngensets , and also do not focus on the many smaller units that are operating\nin homes , and commercial establishments .\nhope ths helps .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.535+0000", "entityId": 9462, "properties": {"text": "Subject: vince / stinson ,\nplease find the two attachments that give a more detailed calculation , as\nwell as the revised statement that can be made to press .\nthe numbers are not small , but really do not reflect the true magnitude of\nthe genset issue . they do not take into account the capital costs of the\ngensets , and also do not focus on the many smaller units that are operating\nin homes , and commercial establishments .\nhope ths helps .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.540+0000", "entityId": 9463, "properties": {"text": "Subject: meeting requested\nhi mr . kaminski ,\nplease send me your assistants name and number so i can schedule a time for\nyou and kevin to go to lunch next week .\nthanks !\nrebekah rushing ( rebekah _ rushing @ enron . net )\nenron broadband services\nbroadband ventures group\n713 - 853 - 3273 - phone\n713 - 646 - 8010 - fax\n- - - - - forwarded by rebekah rushing / enron communications on 01 / 05 / 01 02 : 00 pm\n- - - - -\nkevin garland\n01 / 05 / 01 12 : 04 pm\nto : vince j kaminski / hou / ect @ ect\ncc : rebekah rushing / enron communications @ enron communications\nsubject : meeting requested\nvince ,\ni would like to meet with you or someone in your group to discuss some of the\ninvestment ideas and structures we are exploring . how is your group\nstructured these days ? who would be best for me to meet ? might you be\navailable for lunch next week ? i will have my assistant contact you .\nthank ,\nkevin garland", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.546+0000", "entityId": 9464, "properties": {"text": "Subject: re : meeting requested\nkevin ,\nlet ' s meet for lunch next week ( monday of friday would be best ) . we can talk\nabout the\nproject and decide who has the right skills to help you .\nthe person who supports ebs is stinson gibner and his lead person is martin\nlin .\nmy secretary ' s number is 3 - 5290 ( shirley crenshaw ) .\nvince\nto : vince j kaminski / hou / ect @ ect\ncc : rebekah rushing / enron communications @ enron communications\nsubject : meeting requested\nvince ,\ni would like to meet with you or someone in your group to discuss some of the\ninvestment ideas and structures we are exploring . how is your group\nstructured these days ? who would be best for me to meet ? might you be\navailable for lunch next week ? i will have my assistant contact you .\nthank ,\nkevin garland", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.550+0000", "entityId": 9465, "properties": {"text": "Subject: re : lst chapter of training book\ngeorge ,\nwe shall be able to accommodate one or two extra people\nin the first round .\nwe shall be glad to repeat the seminars starting soon for a\nbigger group . we would like to learn form experience how to run\nit .\nby the way , we had an option training for ees ( roughly 150 people ,\nover a few weeks ) . i can give you the materials and\nwe can repeat it if you think it ' s useful .\nvince\ngeorge hopley\n01 / 05 / 2001 09 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : lst chapter of training book\nvince - i had heard about this derivatives class from clayton\nand i am inquiring about the possibility of someone outside\nof the research group being able to attend . if so , i would\nlike the opportunity . let me know if it is possible .\nthanks ,\ngeorge\nshirley crenshaw @ ect\n01 / 05 / 2001 07 : 58 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , joseph hrgovcic / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect , martin lin / hou / ect @ ect ,\nmaureen raymond / hou / ect @ ect , osman sezgen / hou / ees @ ees , paulo\nissler / hou / ect @ ect , amitava dhar / corp / enron @ enron , alex\nhuang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , clayton vernon / corp / enron @ enron , william\nsmith / corp / enron @ enron , jose marquez / corp / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / hou / ect @ ect , tom\nhalliburton / corp / enron @ enron , elena chilkina / corp / enron @ enron , sevil\nyaman / corp / enron @ enron , sofya tamarchenko / na / enron @ enron , bob\nlee / na / enron @ enron , gwyn koepke / na / enron @ enron , hector campos / hou / ect @ ect ,\nanita dupont / na / enron @ enron , youyi feng / na / enron @ enron , v charles\nweldon / hou / ect @ ect , praveen mellacheruvu / hou / ees @ ees , li sun / na / enron @ enron ,\nstephen bennett / na / enron @ enron , roman zadorozhny / hou / ees @ ees , lance\ncunningham / na / enron @ enron , leann walton / na / enron @ enron , shane\ngreen / hou / ees @ ees , seksan kiatsupaibul / hou / ees @ ees , kate lucas / hou / ect @ ect ,\nnelson neale / na / enron @ enron , rabi de / na / enron @ enron , kenneth\nparkhill / na / enron @ enron , jaesoo lew / na / enron @ enron , jason\nsokolov / hou / ect @ ect , steve bigalow / na / enron @ enron , tom\nbarkley / na / enron @ enron , rakesh bharati / na / enron @ enron\ncc :\nsubject : re : lst chapter of training book\ngood morning everyone :\nhere is the much anticipated copy of the lst chapter of the training book\n\" energy derivatives \" .\nas previously stated the training will begin on friday , january 19 th from\n11 : 30 - 1 : 00 in 30 cland every first and third friday thereafter in 49 cl .\nif you have any questions , please let me know .\nthanks and have a great day !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.555+0000", "entityId": 9466, "properties": {"text": "Subject: re : the consultant ' s model for gary hickerson ' s group\nthe model is supposed to be a real option model to capture the value of\npower plants of gencos . it is to give trader a better insight as to whether\nthe\nmarket is overvaluing / undervaluing certain genco stocks , and trader can\nact accordingly . i ' m still trying to find out how trader is supposed to use\nit .\nmodeling details :\nthe model takes in all gencos ' locational power forward prices and fuel\nforward\nprices , and uses garch model to simulate one year daily prices , and then\nuses a hourly profile to convert them into hourly prices . garch model\nparameters\nare estimated by the consultant using and separate model and\nare updated twice a year , and it does not matter whether the simulation starts\nin january or september .\nusing these prices , it will determine whether a unit at a particular location\nwill be dispatched\nor not depending on a ) spread of power and fuel prices , and b ) whether the\nstart - up\ncost can be recovered during 8 operation hours . the unit can be dispatched at\nminimum and peak levels . fixed o & m , sox and nox ( i don ' t know what the last\ntwo stand for )\nare taken into consideration .\nwith the simulated dispatch schedule , the model calculates the value that can\nbe generated\nby this unit , then sums it up across all units .\nthe final value is the average of 100 simulations . and it takes about 16\nhours to run for about\n200 units .\nafter our conversation , the consultant promised to look into a ) how to make\nthe model more flexible ,\nsay , to allow a different time horizon , b ) reduce spreadsheet overhead by\ndoing calculation one\nunit a time and not saving all the intermediate information ( as of now it\nsaves everything\non the spreadsheet ) .\nassuming the garch process is modelled correctly , i believe the methodology\nis ok , though\nit does not capture most of the optionality .\nmy concerns are :\nwhether the price processes are modelled correctly . i have to get more\ndetails before making\nany conclusion .\n100 simulations are way too few . unless we convert the algorithm to c , i\ndon ' t see how spreadsheet\ncan handle more simulations . i guess that ' s why they contact us . but again ,\nif enron ' s buying the\nmodel from the consulting company , why should enron do their job for them ?\nhow trader ' s going to use the model output . for this i phoned jeff ( the\nassociate who initiated all\nthese ) and am still waiting for his returning call . a related questions why\nthe model horizon is one year .\nwe can either\noversee the conversation , but not doing actual coding for them .\nor\nredo the model for them . ( the problem still remains that how trader ' s going\nto use the output ) . but\nin view of the great wall of china separating the business units , should we\ndo it ?\nas of now i have a simulation model taking start - up cost , fixed o & m , rump - up\ndelay into consideration .\nit simulates monthly prices ( using gbm ) and takes 2 minutes 40 seconds to run\n10 , 000 simulations for\none unit for ten years ( 120 time steps ) . it can use forward - forward vol and\nincorporate seasonality into\nit ( i understand this is debatable ) . ( one interesting observation is that\nwhen using forward - forward vol\nsimulation , the standard deviation is about 0 . 5 % , while standard deviation\nusing forward vol is about\n2 % . also , incorporating seasonality increases the value by about 1 . 6 % ) . since\nmost of the time - cost\noccurs in price simulation , and we are to simulate about 20 price processes ,\ni hope the full model\n( if we build it ) will take a couple of hours to run for 200 units . the main\ntask will be interfacing , i . e . ,\ngetting data from data base , and outputting the results . this is where i need\nmost help if i am to do it .\nplease advice the course of action . i am supposed to talk to michelle\ncisneros today .\np . s . i never promised to oversee a programmer in our group ( see the message\nbelow ) .\nbest ,\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex huang / corp / enron on 01 / 05 / 2001 08 : 58\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njeff m gray\n01 / 04 / 2001\nto : gary . hickerson @ enron . com , michael . w . bradley @ enron . com ,\nmichelle . d . cisneros @ enron . com , jaime . gualy @ enron . com\ncc : alex . huang @ enron . com , kskinner @ ftenergy . com , cseiple @ ftenergy . com\nsubject : fw : project timeline\nken and i worked up the following timeline and refined the trading\nmethodology a bit this morning . we also met with alex huang from vince ' s\ngroup , and explained the model and coding tasks . ken and alex have arranged\nto speak by phone on monday , and meanwhile alex is coordinating within the\nresearch group . alex will oversee a programmer within his group , while\ninterfacing regularly with us .\n1 / 4 kickoff\n1 / 11 complete spreadsheet , table , and database structures ( rdi ) .\n1 / 17 complete software coding for the pricemaker component of the model\n( rdi and enron research ) , and begin testing ( enron research ) .\n1 / 22 complete software coding for the dispatch portion of the model ( rdi\nand enron research ) , and begin testing ( enron research ) .\n1 / 22 complete financial trader \" user \" interface , within the access\nenvironment ( rdi ) .\n1 / 22 complete collection and delivery of unverified generating - unit data from\nrdi databases ( rdi ) . begin verification process ( rdi ) .\n1 / 29 complete all charts and reports accessible from the user interface\n( rdi ) .\n1 / 29 complete compilation of consensus ebitda forecasts for all operations\nother than merchant generation ( enron financial trading ) .\n2 / 9 complete code testing ( enron research ) .\n2 / 9 deliver verified and quality - checked generating - unit data ( rdi ) .\n2 / 9 complete the model , begin testing the trading methodology , and train\nusers .\n2 / 16 finish training , testing , and final qc .\njeff", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.560+0000", "entityId": 9467, "properties": {"text": "Subject: re : thanks from enpower\nyou are welcome . it is my pleasure to work with the talented enpower team .\nzimin\nzhiyun yang @ enron\n01 / 04 / 2001 05 : 29 pm\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : thanks\nhi zimin :\nthanks a lot for the explanation of the spread option , it ' s not a cheap\nhelp .\n- zhiyun", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.566+0000", "entityId": 9468, "properties": {"text": "Subject: outsourcing communication\naccess . benefits . 2001\nbenefits customer service and its administrative functions just got better !\nstarting 01 . 01 . 2001 , this service was outsourced to vendors offering the\nlatest in technology and the best in customer service .\nkeeping pace with your lifestyle , your benefits are now securely accessible\non demand .\ncheck out our new web address http : / / benefits . enron . com to view or print your\nhealth & group elections , to request a pension estimate , or to view your\nsavings plan elections .\nif you are not near your computer one number is all you need for benefit\nforms , questions and changes .\n800 . 332 . 7979 .\noption 1 - enron group health plans\noption 2 - enron corp . cash balance plan\noption 3 - savings plan or esop\ncheck it out . it \u0001 , s easy !\nenter your social security number and a 4 digit personal identification\nnumber ( pin ) .\n? for health & group and pension , your initial pin is the last 4 digits of\nyour ssn .\n? your savings plan pin number does not change .\nno need for voice mail or e - mail addresses or long waits in the elevator\nbanks to get to the 16 th floor in the enron building .\nfor 2001 , if you need help , customer service reps are available to assist you\nm - f from 8 : 00 am cst - 5 : 00 pm cst .\nbut wait , there \u0001 , s more .\nthe hr info zone is located in the lobby of the enron building to help you\nnavigate . and coming soon , when you are outside the houston area , the kiosk\nwill be a phone call away 800 . 332 . 7979 , option 5\nin addition , later this year , we will offer the ability to make family status\nchanges online .\nnote : your 2001 elections are no longer available through ehronline .\nmake it a new year \u0001 , s resolution to\nget connected !\nenron benefits \u0001 ( keeping pace with your lifestyle .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.571+0000", "entityId": 9469, "properties": {"text": "Subject: re : site license for power world\nrichard et al\nunder the new electricity trading arrangments ( neta ) in the uk and looking\nforward i think it will be increasingly important in modelling market\nbehaviour and transmission related costs to have some form of system model\nincorporating opf and atc .\ntherefore , in principle i am happy to support option 3 and to pay a 1 / 3 share\nof the cost . however , before i commit to this particular package , i would\nlike to be comfortable that the generic powerworld software could be suitably\ncustomised to capture the special features of neta .\ni understand marco verreschi who initiated interest from our end is pursuing\nthis with martin lin ( research , houston ) . however , due to commitments next\nweek , and my desire to see powerworld in action etc it is likely to be the\nfollowing week before he and i can say \" lets do it \" .\nmichael wilks\nmanager , uk power analytics\nenron europe ltd\ntel : ( 44 ) 207 783 2405\nrichard lewis @ ect\n05 / 01 / 2001 15 : 10\nto : michael wilks / eu / enron @ enron\ncc :\nsubject : site license for power world\ncan you recommend or otherwise this software and whether we should pay a\nthird share of the cost ?\nr\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard lewis / lon / ect on 05 / 01 / 2001 15 : 12\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nlance cunningham @ enron on 20 / 11 / 2000 20 : 02 : 22\nto : vince j kaminski / hou / ect @ ect , richard lewis / lon / ect @ ect , tim\nbelden / hou / ect @ ect , tim . heizenrader @ enron . com , kevin m presto / hou / ect @ ect ,\ngeorge hopley / hou / ect @ ect\ncc :\nsubject : site license for power world\ngentleman ,\nkevin presto concurred on the purchase of a site license as recommended by\nvince . what are the thoughts of others ? i am available to demo the package\nif others would like to see it .\nthanks ,\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 11 / 20 / 2000\n01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n11 / 10 / 2000 09 : 16 am\nto : vince j kaminski / hou / ect @ ect , richard lewis / lon / ect @ ect , tim\nbelden / hou / ect @ ect , tim . heizenrader @ enron . com , kevin m presto / hou / ect @ ect ,\ngeorge hopley / hou / ect @ ect\ncc : lance cunningham / na / enron @ enron\nsubject : site license for power world\ngentlemen ,\ni recommend that we purchase this package and split the cost 3 ways between 3\npower trading desks .\ni think that we should go for option 3 ( ~ $ 15 , 000 ) .\nlance cunningham in my group looked at this software package and found it\nvery useful for modeling transmission problems .\nplease , feel free to ask him for technical details in support of this\nrecommendation .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 11 / 10 / 2000\n09 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlance cunningham @ enron on 11 / 09 / 2000 06 : 15 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : site license for power world\nvince ,\nwe have three options to increase our availability across enron for the power\nworld load flow software .\noption 1 , upgrade to a site license for the load flow software only . price\n$ 9 , 990 . 00\nthis would give all of enron the ability to perform load flows , but not\ndetermine marginal cost or available transfer capacity ( atc ) because only the\noptimal power flow ( opf ) version can perform that task .\noption 2 , site license for the load flow and purchase 1 opf package for\nwalter coffer ' s group . price $ 11 , 240 .\nthis would give all of enron the ability to perform load flows and one other\ngroup the ability to determine marginal cost and atc .\noption 3 , site license for load flows , opf and atc . price $ 14 , 990 . 00\nthis would give all of enron the ability to perform load flows , marginal\ncost , and atc .\nregards ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.575+0000", "entityId": 9470, "properties": {"text": "Subject: re : meeting requested\ni will ask rebekah to try to set it up for monday .\nkg\nvince j kaminski @ ect\n01 / 05 / 01 01 : 48 pm\nto : kevin garland / enron communications @ enron communications @ enron\ncc : rebekah rushing / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect\nsubject : re : meeting requested\nkevin ,\nlet ' s meet for lunch next week ( monday of friday would be best ) . we can talk\nabout the\nproject and decide who has the right skills to help you .\nthe person who supports ebs is stinson gibner and his lead person is martin\nlin .\nmy secretary ' s number is 3 - 5290 ( shirley crenshaw ) .\nvince\nto : vince j kaminski / hou / ect @ ect\ncc : rebekah rushing / enron communications @ enron communications\nsubject : meeting requested\nvince ,\ni would like to meet with you or someone in your group to discuss some of the\ninvestment ideas and structures we are exploring . how is your group\nstructured these days ? who would be best for me to meet ? might you be\navailable for lunch next week ? i will have my assistant contact you .\nthank ,\nkevin garland", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.580+0000", "entityId": 9471, "properties": {"text": "Subject: greeting from charles\ndear molly :\nhappy new year ! haven \u0001 , t talked to you for a while ,\nhope you and your family had a great holiday . i can \u0001 , t\nbelieve we are already in 2001 !\ni remember we had talk last december , and you were\nbasically waiting for the response from vince , have\nyou heard anything back from vince yet ? since we are\nalready in january , i really hope we can move forward .\nif you have any questions , please feel free to call me\nat 918 - 409 - 4308 . thank you .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! photos - share your holiday photos online !\nhttp : / / photos . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.584+0000", "entityId": 9472, "properties": {"text": "Subject: west power model\nlance and i spoke with tim heizenrader regarding modeling work and needs for\nthe west desk . the differences in the markets between east and west are , in\ntim ' s opinion , sufficient that he does not need an approach as sophisticated\nas the one we are pursuing for ercot . in particular , the termal limits for\nwhich load flows are so useful are not generally binding in the west . loop\nflows are also not considered a major issue at present .\nin summary , it seems that the west is an unlikely customer of any extension\nto an ercot / east transmission model for the time being . they have also done\nlittle in this area that would directly relate to our efforts here .\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.589+0000", "entityId": 9473, "properties": {"text": "Subject: power spread option - curve access request\nkevin ,\ni am helping doug for building a model to price power spread options he saw\nin the market . this includes power capacity , transmission , heating rate\noptions , etc .\ni do not have the access to the power curves in m : \\ power 2 \\ region as i used\nto .\ni need your permission to regain the read - only access to the curves .\nthanks in advance .\nzimin lu\nresearch\nx 36388", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.594+0000", "entityId": 9474, "properties": {"text": "Subject: new project\nvasant ,\nvince and i spoke with gary hickerson and michelle cisneros about the\nconsultant ' s power plant model this afternoon . we will take their model ' s\ninterface and recode the calculation engine , incorporating useful insights\nfrom the consultant . it help will be available\nvia gary ' s group . so i will spend the next 4 weeks working on this .\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.600+0000", "entityId": 9475, "properties": {"text": "Subject: re : meeting on feb 8 , 2001\nfyi .\nthis is the list of the petronas executives visiting enron on feb 8 .\ni have invited them to lunch . would you like to join me for lunch .\ni would like to propose a short courtesy meeting at 10 with jeff / john ( 5 -\n10 minutes ) ,\nfollowed by rac / research presentation till 11 : 30 .\nvince\np . s . i shall reserve a conference room for this meeting\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 08 / 2001\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nazminab @ petronas . com . my on 01 / 07 / 2001 06 : 37 : 33 pm\nto : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com ,\nkhairuddinbmjaafar @ petronas . com . my\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski\n4 members from corporate risk management unit\n1 . iqbal abdullah - general manager\n2 . nur azmin abu bakar - head , risk assessment & controls\n3 . zulkifli a rahim - head , risk measurement & systems\n4 . adnan adams - head , special projects\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 09 : 45 : 02 pm\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : re : meeting on feb 8 , 2001\ndear mr . nur azmin abu bakar ,\nthanks for your prompt reply .\nplease , let us know how many members of your team will\nvisit enron .\ni look forward to our meeting on february 8 .\nvince kaminski\nazminab @ petronas . com . my on 01 / 02 / 2001 06 : 38 : 33 pm\nto : vince . j . kaminski @ enron . com , khairuddinbmjaafar @ petronas . com . my ,\nshirley . crenshaw @ enron . com\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski ,\nhappy new year and thank you for the reply . we are honored to have\nlunch with you and your team however we have another appointment at\n2 . 30 p . m .\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 07 : 38 : 19 am\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : meeting on feb 8 , 2001\ndear sir ,\ni would like to apologize for the delay in responding to your fax .\ni was on vacation for the last few days .\ni shall be honored to meet your delegation on thursday , february 8 at 10 : 00\na . m .\nplease , let me know if you will be free for lunch after the meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.605+0000", "entityId": 9476, "properties": {"text": "Subject: ca for henwood engagement\nbonnie ,\nthanks for getting back to me on friday .\nenron will be contracting with henwood for henwood to provide an analysis of\nthe indian power system . however , enron will be providing a significant\npart of the input data used for the study including our views on the indian\nmarket in the future and also very detailed information about our dabhol\nplant . we want to be sure that the information provided by us to henwood\nremains confidential . we also want to be sure that henwood considers as\nconfidential the results of this study provided by henwood to enron .\nthe enron and related entities providing information are likely to include\ndabhol power corp .\nenron india\nalso possibly enron north america\nthe primary henwood contact for the project is robert schenck in australia at\nhenwood energy services , inc .\n26 greenhill road\nwayville , sa 5034\naustralia\nthe henwood corporate office is in sacramento :\n2710 gateway oaks drive\nsuite 300 north\nsacramento , ca 95833\nlet me know if you need any additional information .\n- - stinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.610+0000", "entityId": 9477, "properties": {"text": "Subject: iafe update\ndear iafe member :\ni would like to take this opportunity to wish you a happy new year .\n2001 marks the 10 anniversary of the iafe and we will be celebrating with\na winter gala at the yale club ballroom on february 8 th . the black tie\nevent will begin with cocktails at 6 : 00 and a sit down dinner at 7 : 30 .\nthere will be\ndancing and festivities including war stories by iafe senior fellows , a\nsilent auction ,\nand a financial engineering retrospective , to name a few .\na special award will be presented to myron scholes for his work on the\nblack - scholes model . for more information and to register for the\nevent please go to .\nwe are pleased to report that we had a very exciting and productive\nyear with dozens of activities around the world . as we enter our 10 th\nyear of operations , the iafe has additional membership options available\nto you . please take a moment to renew your membership , if you have not\ndone so : . based on member\nrequests , a premium membership is now being offered that includes the\nannual conference at a 30 % discount , the financial engineer of the year\ndinner , plus a subscription to the journal of derivatives ( jod ) . the full\nmembership remains as in previous years . the new regular\nmembership includes all full membership benefits except jod . membership is\nbased on the calendar year january 1 - december 31 , 2001 .\nour website was recently updated , when you get a moment , please visit our\nweb site . make sure to check the calendar for upcoming events regularly\nsince we add to it frequently . >\ni hope to see you at an iafe event in 2001 .\ndonna jacobus\niafe office manager\nmain @ iafe . org", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.618+0000", "entityId": 9478, "properties": {"text": "Subject: i believe all of you received a request from jeremy blachman to hold the\nafternoon of january 10 th open for an off - site to discuss the manner in which\nrac and research assess / test the credit quality of ees transactions . i\nrealize that rac and ees have had many discussions as to the methodology , but\nit might be helpful for all of us to understand the actual derivation of some\nof analysis . please call me with any questions or comments at ext # 30349 .\nthe agenda will be as follows :\n12 : 00 - 1 : 00 lunch\n1 : 00 - 3 : 30 presentations\n3 : 30 - to close discussion\nrac / research presentations\nthe following topics would be of interest to ees :\n1 - the derivation of default probabilities including ( research )\n- - a discussion of the actual mathematical process ,\n- - the analytics behind why these computations are deemed the best for\nenron ,\n- - a comparison to historic default rates and why they differ ( in respect\nto actual default rates , shape of the cumulative default curves etc .\n2 - the volatilities which are used to determine possible loss scenarios for\nthe commodity portion of ees deals including ( research )\n- - the selection of curves\n- - the application of those curves to the actual credit reserve model and\n- - why these particular tests are applicable to our products .\n3 - the recovery rates used in the credit reserve model . how are these\nfigures derived ? ( rac )\n4 - how rac and research have adjusted the credit reserve model to\naccommodate unusual aspects of the deal including ( rac )\n- - promotion payments ,\n- - accounts receivable\n- - committed capital\n- - and other factors\nees also understands that some of you may be familiar with our processes ,\nhowever , there are perhaps areas that you would like to understand more\nfully . please tell us what you would like to hear from us .\nalso , rac has sent us the credit reserve model and i have seen completed\nmodels . perhaps prior to our meeting on wednesday , someone from rac and / or\nresearch could sit with me and someone from phil layton ' s group and go\nthrough the process of how the various pieces are put together .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.627+0000", "entityId": 9479, "properties": {"text": "Subject: calling @ 2 pm me . . . 4 pm you\nhi vince ,\nthank you for allowing me the call to speak candidly with you tomarrow\n( 1 / 9 / 2001 ) @ 2 pm pst ( 4 psm central ) about my students / candidates asking\nabout enron .\ni am looking forward to the conversation .\nbest wishes ,\njeff wesley\nps - pls review the attachments below on your coffee break . thanks .\npss - ask me about the controversial attachment i wanted to send you - but ,\ndidn ' t .\nalways held in strict confidence .\n949 813 2241 hotline\n347 487 8957 voice / fax us\n( 011 ) + 44 ( 845 ) 3341644 uk\n- - - - - begin pgp public key block - - - - -\nversion : pgpfreeware 6 . 5 . 3 for non - commercial use\n 2 w 4 duudd 3 yisxx 8 wy 2 o 9 vpji 8 bd 8 kvbgi 2 oulwmufo 4 ozt 9 fbdxq 6 mdggzemyestsr / pogxkuayeyl 8 6 vq\nrpmynofdopnqnyej 2 + m 9 zwwyw 3 gbij 4 vktfyngoqevl 3 l 9 hg 2 l 7 lsls + 8 ywlvcqb llmkul 3 lxa 9 idp 6 bzu 9 drwdfrba 5 rdvbfylolythsp 0 zg 4 lolurfgyy + iakwe / 5 n\n78 fc 32 lczbj 8 rvsvh + qljiyisjdvambww 4 hjlzc 9 tipdtggz 6 g 5 lgg 8 dfw 74 ezsx lzsy + zzncacst / dveok / + y 4 nrumqor + qggo 9 l 9 gwpqu 5 blxenpedteczmwome 48 z\nglkh + bz 39 qcfvc + hxgi 7 ogcon / rseitrweao / sy =\n= 2 nkw\n- - - - - end pgp public key block - - - - -\n* get free , secure online email at http : / / www . ziplip . com / *\n- private 9498132241 . pdf\n- worththemoney 9498132241 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.633+0000", "entityId": 9480, "properties": {"text": "Subject: weather person for london egm\nwe need to set a further round of inteviews for tony hamilton . can everyone\nlet gloria solis know their availability over the next 2 weeks . below are\nthe results from our initial interviews and the candidate ' s resume\nthanks\njen\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 12 / 15 / 2000\n10 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntony hamilton on 12 / 15 / 2000 02 : 11 : 58 am\nplease respond to tony hamilton\nto : mike . a . roberts @ enron . com\ncc :\nsubject : meteorologist / forecaster\ndear mike\ni would like to apply for the above position as advertised in \" earthworks \" and\nenclose my full cv ( in word 97 / 00 format ) in support .\ni am currently a research fellow with ucl conducting research , and building\nforecasting models for the statistical prediction of north atlantic sea\nsurface\ntemperatures and other climatic parameters at long leads ( 1 - 12 months ahead of\nforecast period ) .\ni have recently applied this model to the north sea in order to aid long - lead\nforecasts of fish stocks ( see sap - symposium , 4 - 6 december , bergen , norway ) ,\nand\nhave recently been applying similar models to the north atlantic oscillation ,\nan\natmospheric phenomena which is strongly correlated with winter climate over\nuk / norway and nw europe , particularly temperatures , rainfall and windspeeds\n( see\nenclosed poster which was presented recently at an international conference on\nthe nao in vigo , spain )\nas you will see from my cv , i have 2 + years experience consulting in several\nareas of geoscience to the oil , gas and minerals industries and have good\nprogramming skills , both on unix machines and on pcs .\ni am particularly keen to apply my skills in the commercial sector and\ninitiate\na permanent career path .\ni look forward to the opportunity of hopefully discussing my skills further\nwith\nyou in the near future .\nyours sincerely\ntony hamilton\n* dr . tony hamilton *\n* research fellow *\n* benfield greig hazard research centre *\n* department of space and climate physics *\n* university college london *\n* holmbury st mary *\n* dorking *\n* surrey rh 5 6 nt *\n* *\n* e - mail : th @ mssl . ucl . ac . uk *\n* telephone : + 44 ( 0 ) 1483 560107 *\n* fax : + 44 ( 0 ) 1483 278312 *\n* web - site : http : / / forecast . mssl . ucl . ac . uk / *\n- th _ cv . doc\n- nao _ posterv 2 . gif\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jennifer fraser / hou / ect on 08 / 01 / 2001\n13 : 11 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jennifer fraser 21 / 12 / 2000 07 : 32\nto : jeffrey a shankman / hou / ect @ ect , chris mahoney / lon / ect @ ect , mike a\nroberts / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc : stewart peter / lon / ect @ ect , niamh clarke / lon / ect @ ect\nsubject : weather person for london egm\nfolks :\nwe interviewed three candidates . one of the three ( tony hamilton ) seems to\nbe a very good fit within the enron culture and values .\nrecommended next steps\nvince , mike and jeff interview tony via video conference or avistar\ntony hamilton key strengths\nquick thinker\ngood teams skills\ndriven - will be able to get the project off the ground quickly\nhas a commercial attitude\nsees \" the big picture \"\ntony hamilton is available for follow up interviews the first week of january .\nthanks\njen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.637+0000", "entityId": 9481, "properties": {"text": "Subject: re : greeting from charles\nhappy new year to you as well , charles . i have not heard anything from\nvince ; let me check with him , and i will be back in touch with you .\nmolly\nenron capital & trade resources corp .\nfrom : charles shen\n01 / 07 / 2001 10 : 41 am\nto : molly . magee @ enron . com\ncc : vince . j . kaminski @ enron . com\nsubject : greeting from charles\ndear molly :\nhappy new year ! haven \u0001 , t talked to you for a while ,\nhope you and your family had a great holiday . i can \u0001 , t\nbelieve we are already in 2001 !\ni remember we had talk last december , and you were\nbasically waiting for the response from vince , have\nyou heard anything back from vince yet ? since we are\nalready in january , i really hope we can move forward .\nif you have any questions , please feel free to call me\nat 918 - 409 - 4308 . thank you .\nsincerely ,\ncharles\ndo you yahoo ! ?\nyahoo ! photos - share your holiday photos online !\nhttp : / / photos . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.642+0000", "entityId": 9482, "properties": {"text": "Subject: re : action learning project information\nvince ,\nthanks for the information .\nkathy\nat 01 : 03 pm 1 / 8 / 01 - 0600 , you wrote :\n> kathy ,\n>\n> enron will be represented by myself ( vince kaminski ) and kenneth parkhill .\n>\n> vince\n>\n>\n>\n>\n>\n> kathy spradling on 01 / 05 / 2001 05 : 04 : 21 pm\n>\n> to : ( recipient list suppressed )\n> cc : chamberl @ rice . edu , castro @ rice . edu , spradlin @ rice . edu\n> subject : action learning project information\n>\n>\n> dear company representative ,\n>\n> we are pleased to announce that your company ' s proposal has been selected\n> as a potential project in the jones graduate school of management ' s action\n> learning project ( alp ) program . as indicated in the alp brochure , company\n> representatives are invited to attend the alp program introduction and\n> student networking session on wednesday , january 10 . please rsvp to kathy\n> spradling , mba program coordinator , at 713 - 348 - 3313 or e - mail her at\n> spradlin @ rice . edu by monday , january 8 to let her know if you plan to\n> attend the session . please provide your company name and the names of\n> representatives attending the session so nametags can be prepared . dress\n> is business casual . below is the schedule of events :\n>\n> 8 : 30 9 : 00 a . m .\n> ? continental breakfast and setup of your company table\n> ? farnsworth pavilion ( located in rice student center )\n>\n> 9 : 00 9 : 45 a . m .\n> ? introduction and program overview with company representatives , alp\n> administration and faculty liaisons\n> ? farnsworth pavilion ( located in rice student center )\n>\n> 10 : 00 12 : 00 p . m .\n> ? student networking session with company representatives and\n> first - year students\n> ? grand hall ( located in rice student center )\n>\n> the alp program introduction and student networking session will be held in\n> the rice student center ( numbers 10 and 11 on the campus map sent with your\n> acceptance letter ) . please contact kathy spradling if you need an\n> additional map faxed to you . there is a large amount of construction taking\n> place on campus . once the visitor ' s lot near the rice memorial center is\n> full , we recommend you park in the stadium lot in the designated visitor\n> area and take the shuttle bus to the rice memorial center . make sure to\n> let the bus driver know your destination .\n>\n>\n> the mba program office has reserved the grand hall for the student\n> networking session . each company represented will have a table set up with\n> signage for your company . you may bring additional materials you feel\n> might be of interest to students such as company brochures , articles and\n> packets . due to the limited space , we are discouraging the use of display\n> boards in the networking session . unfortunately , no internet connections\n> will be available for use during the session .\n>\n> again , thank you for your interest in rice . we look forward to working\n> with you , and hope to see you on wednesday , january 10 .\n>\n> carrie miller\n> pam castro\n> kathy spradling\n>\n>\n>\n> kathy m . spradling\n> mba program coordinator\n> jesse h . jones graduate school of management\n> rice university\n> 6100 main street , ms 531\n> houston , texas 77005 - 1892\n> phone : ( 713 ) 348 - 3313\n> fax : ( 713 ) 348 - 5251\n> email : spradlin @ rice . edu\n> http : / / www . rice . edu / jgs\n> e - mail : spradlin @ rice . edu\n> http : / / www . ruf . rice . edu / ~ jgs /\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.647+0000", "entityId": 9483, "properties": {"text": "Subject: re : action learning project information\nkathy ,\nenron will be represented by myself ( vince kaminski ) and kenneth parkhill .\nvince\nkathy spradling on 01 / 05 / 2001 05 : 04 : 21 pm\nto : ( recipient list suppressed )\ncc : chamberl @ rice . edu , castro @ rice . edu , spradlin @ rice . edu\nsubject : action learning project information\ndear company representative ,\nwe are pleased to announce that your company \u0001 , s proposal has been selected\nas a potential project in the jones graduate school of management ' s action\nlearning project ( alp ) program . as indicated in the alp brochure , company\nrepresentatives are invited to attend the alp program introduction and\nstudent networking session on wednesday , january 10 . please rsvp to kathy\nspradling , mba program coordinator , at 713 - 348 - 3313 or e - mail her at\nspradlin @ rice . edu by monday , january 8 to let her know if you plan to\nattend the session . please provide your company name and the names of\nrepresentatives attending the session so nametags can be prepared . dress\nis business casual . below is the schedule of events :\n8 : 30 9 : 00 a . m .\n? continental breakfast and setup of your company table\n? farnsworth pavilion ( located in rice student center )\n9 : 00 9 : 45 a . m .\n? introduction and program overview with company representatives , alp\nadministration and faculty liaisons\n? farnsworth pavilion ( located in rice student center )\n10 : 00 12 : 00 p . m .\n? student networking session with company representatives and\nfirst - year students\n? grand hall ( located in rice student center )\nthe alp program introduction and student networking session will be held in\nthe rice student center ( numbers 10 and 11 on the campus map sent with your\nacceptance letter ) . please contact kathy spradling if you need an\nadditional map faxed to you . there is a large amount of construction taking\nplace on campus . once the visitor \u0001 , s lot near the rice memorial center is\nfull , we recommend you park in the stadium lot in the designated visitor\narea and take the shuttle bus to the rice memorial center . make sure to\nlet the bus driver know your destination .\nthe mba program office has reserved the grand hall for the student\nnetworking session . each company represented will have a table set up with\nsignage for your company . you may bring additional materials you feel\nmight be of interest to students such as company brochures , articles and\npackets . due to the limited space , we are discouraging the use of display\nboards in the networking session . unfortunately , no internet connections\nwill be available for use during the session .\nagain , thank you for your interest in rice . we look forward to working\nwith you , and hope to see you on wednesday , january 10 .\ncarrie miller\npam castro\nkathy spradling\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.652+0000", "entityId": 9484, "properties": {"text": "Subject: spring 2001 module and calendar schedule attached\nspring 2001 faculty ,\nattached is the spring 2001 module and calendar schedules for your\nreview . please note the jones graduate school is not following the\ntraditional university calendar for spring break this year . if you have\nany questions please contact me .\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /\n- spring module 2001 sch . doc\n- spring module 2001 cal . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.656+0000", "entityId": 9485, "properties": {"text": "Subject: re : fw : pserc nuggets related to market stem\nhi vince and happy new year\ngood to hear from you and i can understand being busy . i am myself trying to\nbalance my commitments here .\nlike any research consortium pserc is trying to provide value to its members\nwhile walking the fine line between cooperation and competition . we are\ndefinitely not in the business of providing proprietary research to the\nmembers but rather working on more generic areas that later individual\nmembers could see way to convert to proprietary tools . the work that shijie\ndeng and rajnish kamat have been doing with me are good examples .\nas to my trip , thanks for the invitation but i already committed myself to\nget back friday night so i will save my visit for another time .\ni will tell my son about the spring interviews at cornell . hopefully this\ntime he will not miss it .\nregards , shmuel\n- - - - - original message - - - - -\nfrom :\nto :\ncc :\nsent : monday , january 08 , 2001 1 : 40 pm\nsubject : re : fw : pserc nuggets related to market stem\n>\n> hello shmuel ,\n>\n> thanks for your message . the end of 2000 and the beginning of 2001 were\n> extremely busy\n> and i could not focus on pserc issues . i shall consult a few people in\n> enron on this subject and get in\n> touch with you . our concern right now is that the results of research are\n> widely shared with\n> our competition .\n>\n> i am out on the 19 th , but the 20 th would work for me . i would be glad to\n> cover the cost of your austin\n> to houston trip .\n>\n> regarding your son . the analyst / associate program will interview again\non\n> the campus\n> in the spring and they will be more than happy to interview him .\n>\n>\n>\n>\n>\n> \" shmuel oren \" on 12 / 19 / 2000 01 : 40 : 02 pm\n>\n> to :\n> cc : \" dennis ray \" , ,\n>\n> subject : fw : pserc nuggets related to market stem\n>\n>\n> hello vince\n> happy holidays .\n> i wanted to connect with you regarding the possibility of enron joining\n> pserc . as you might have heard from lance and alex we are going through a\n> transition period having doubled the number of universities and industry\n> members within the last year . consequently , our business processes are not\n> well developed . one of the problems we are facing is the balance between\n> the\n> electrical engineering folks and industry members that are more interested\n> in market related research . i hope to recruit more of the later so tat we\n> have more of a constituency in the advisory board that sees the value of\n> market related research . i already have a verbal commitment from people at\n> electrabell that expressed interest in joining pserc . with members like\n> electrabell and enron we will be able to support more market stem projects\n> such as the one that shijie deng proposed ( not funded in this round ) .\n> please\n> let me know if i can do anything to facilitate the decision at enron . i am\n> going to be in austin on january 19 to participate at a puct hearing and\n> could come through huston for a visit . attached are some items that i\n> shared\n> with our pserc members and thought that you might be interested in them as\n> well .\n> regards , shmuel .\n>\n> - - - - - original message - - - - -\n> from : \" shmuel oren \"\n> to : \" power systems engineering research center \"\n> sent : tuesday , december 19 , 2000 9 : 47 am\n> subject : re : pserc nuggets related to market stem\n>\n>\n> > the following are 3 items that demonstrate the impact of pserc research\n> in\n> > the market stem area .\n> >\n> > 1 . on december 12 , i ( shmuel oren ) testified at a hearing in san\n> francisco\n> > before the blue ribbon panel ( chaired by alfred kahn ) for the that is\n> > investigating the implications of uniform price vs . pay as bid auctions\n> in\n> > the california px . as part of my testimony i presented a movie produced\n> by\n> > tim mount and bob thomas that show results of an experimental economic\n> study\n> > showing how bidders respond by raising their bids in a pay as bid\n> auction .\n> > following is an acknowledgement i received .\n> >\n> > dear shmuel :\n> >\n> >\n> > thank you for attending the blue ribbon panel this past tuesday in san\n> > francisco . your presentation was very informative and valuable to all\n> the\n> > panel members and other participants . the panel greatly appreciates\nyour\n> > involvement in this important project .\n> >\n> >\n> > thanks again ,\n> > natalie efland\n> >\n> >\n> > 2 . a recent e - mail from the texas puc\n> >\n> > professor oren , i hope you and your family are doing well . we are\n> seriously\n> > considering your help and advice to facilitate the commission ' s final\n> > decision regarding retail competition in ercot .\n> >\n> > i wanted to let you know that ercot stakeholders filled an application\n> for\n> > approval of the ercot protocols in november . we received comments\n> including\n> > list of issues on november 22 and reply comments on december 1 . staff\n> will\n> > draft and submit a preliminary order to the commissioners for their\n> > discussion on december 13 . there will be a pre - hearing on december 15\n> when\n> > parties will be asked to brief the commission on list of issues by the\n> end\n> > of first week in january . there will be a hearing on january 16\nfollowed\n> > with another hearing if needed . parties have asked the commission to\n> > finalize its decision by mid march .\n> >\n> > to give you some more background , i have to mention that almost most of\n> your\n> > suggestions were accepted and will be reflected in the final protocols ,\n> > except for problems with intra - zonal gaming regarding congestion\n> management\n> > and pay - as - bid compensation for selected ancillary services . a few\n> > additional concerns are raised regarding ancillary services and\n> congestion\n> > management . stakeholders are still working toward more load\n> participation\n> > in ercot market . however , the main problem is the fact that market\n> ( pilot\n> > that covers 100 % of wholesale , but only 5 % of retail load ) will be open\n> on\n> > june 1 , 2001 based on a version of the protocols locked on august 1 ,\n> 2000 .\n> > ( that was the deadline for ercot to give a final design to anderson\n> > consulting . ) that version does not include some of your recommendations\n> to\n> > address market design flaws . the full version is highly possible to be\n> > implemented by january 1 , 2002 when market for 100 % retail competition\nis\n> > scheduled to open . given this gap , some parties have recommended not to\n> > implement incomplete protocols and wait for full implementation by\n> january\n> > 2002 . in other words , they say let ' s go ahead with 5 % pilot retail\nload ,\n> > but wait for full design implementation before allowing 100 % wholesale\n> load\n> > ( and retail load ) be subject to the rules of the game described in the\n> final\n> > protocols .\n> >\n> > thanks .\n> >\n> > parviz adib , ph . d .\n> > director of market oversight division\n> > public utility commission of texas\n> > 1701 n . congress avenue\n> > p . o . box 13326\n> > austin , texas 78711 - 3326\n> > ph . no . : 512 - 936 - 7365\n> >\n> > 3 . the following is a segment from a published summary of the dec 13\npuct\n> > hearing . this segment describes the commision ' s deliberation on an\nagenda\n> > item addressing the possibility of instituting price caps as part of the\n> > ercot protocols . ( see reference to my involvement in the next to last\n> > paragraph )\n> >\n> > docket no . 23220 - petition of the electric reliability council of\n> texas\n> > for approval of the ercot protocols . ( discussion and possible action )\n> > parviz adib , jess totten , keith rogas , and tammy cooper\n> > chairman wood turned to page 2 item number 3 of the draft order\n> identifying\n> > issues , recommending that the word \" including \" be changed to \" other\nthan \"\n> in\n> > the parentheses . he thinks they know the ups and downs of the two\n> > mechanisms , which are bid caps and price caps , but would not mind having\n> > parties focus on what other protections might be used . commissioner\n> walsh\n> > would say \" including , but not limited to \" because she does not think it\n> is\n> a\n> > bad idea for ercot to at least consider in their protocols a fail - safe\n> > mechanism . it ' s kind of like the stock market suspending trading when\n> > something crazy happens . they could consider a maximum scenario , such\nas\n> > \" we don ' t think this will ever happen but if it does we need to muffle\n> it \" ,\n> > whether it is $ 1 , 000 or $ 99 or whatever it is . they could consider\n> whether\n> > to put into the protocols a self - enacting price cap . while not\nexpecting\n> it\n> > to happen , if it did , you don ' t have to declare it an emergency and have\n> the\n> > commission have to act . chairman wood asked if they could leave the\n> > question without the parenthetical at all and just say \" what protections\n> > should be added to avoid extreme price spikes . \" commissioner walsh\n> > reiterated that she wants ercot to think about the unlikely possibility\n> of\n> > unacceptable price spikes . she would like for them to have their own\n> > fail - safe mechanism that is self - initiating as opposed to leaving that\nto\n> > having someone have to come in and act . commissioner perlman stated\nthat\n> he\n> > thinks the california - type price caps is what the concern is about . he\n> > thinks everyone in this state is opposed to those , but he thinks the\n> point\n> > commissioner walsh is making is an interesting one . he had not thought\n> > about the circuit breaker idea , and it might have some merit . he agreed\n> > that it was worth considering something like that . then the question\n> > becomes what the level is . chairman wood suggested the wording \" what\n> > self - implementing protections should be added to avoid the price spikes .\n> > commissioner perlman said he did not think anyone is talking about $ 250\n> > price caps . commissioner walsh agreed , but noted that if the unexpected\n> > happens we should be prepared . commissioner perlman indicated that if\n> > someone is making $ 10 , 000 in one particular hour that it probably does\n> not\n> b\n> > enefit the market and is probably a windfall to them . it is not\n> something\n> > they would normally put in their business plan for determining whether\n> they\n> > are going to build a plant in texas . chairman wood stated that they\nwant\n> to\n> > lean toward the market as heavily as they can on these issues .\n> >\n> > chairman wood noted that some of these issues date back to when dr . oren\n> was\n> > assisting the commission , and asked if he could be brought back again .\n> > staffer dr . parviz adib said that staff had already talked to dr . oren\n> and\n> > that he is available to assist the commission further . chairman wood\n> noted\n> > that dr . oren had helped people think outside the box without just\n> focusing\n> > on california .\n> >\n> > the final wording was clarified to state \" self - implementing mechanisms \"\n> and\n> > to delete the parenthetical part of the sentence in question . the order\n> was\n> > approved as amended .\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.662+0000", "entityId": 9486, "properties": {"text": "Subject: re : fw : pserc nuggets related to market stem\nhello shmuel ,\nthanks for your message . the end of 2000 and the beginning of 2001 were\nextremely busy\nand i could not focus on pserc issues . i shall consult a few people in enron\non this subject and get in\ntouch with you . our concern right now is that the results of research are\nwidely shared with\nour competition .\ni am out on the 19 th , but the 20 th would work for me . i would be glad to\ncover the cost of your austin\nto houston trip .\nregarding your son . the analyst / associate program will interview again on\nthe campus\nin the spring and they will be more than happy to interview him .\n\" shmuel oren \" on 12 / 19 / 2000 01 : 40 : 02 pm\nto :\ncc : \" dennis ray \" , ,\nsubject : fw : pserc nuggets related to market stem\nhello vince\nhappy holidays .\ni wanted to connect with you regarding the possibility of enron joining\npserc . as you might have heard from lance and alex we are going through a\ntransition period having doubled the number of universities and industry\nmembers within the last year . consequently , our business processes are not\nwell developed . one of the problems we are facing is the balance between the\nelectrical engineering folks and industry members that are more interested\nin market related research . i hope to recruit more of the later so tat we\nhave more of a constituency in the advisory board that sees the value of\nmarket related research . i already have a verbal commitment from people at\nelectrabell that expressed interest in joining pserc . with members like\nelectrabell and enron we will be able to support more market stem projects\nsuch as the one that shijie deng proposed ( not funded in this round ) . please\nlet me know if i can do anything to facilitate the decision at enron . i am\ngoing to be in austin on january 19 to participate at a puct hearing and\ncould come through huston for a visit . attached are some items that i shared\nwith our pserc members and thought that you might be interested in them as\nwell .\nregards , shmuel .\n- - - - - original message - - - - -\nfrom : \" shmuel oren \"\nto : \" power systems engineering research center \"\nsent : tuesday , december 19 , 2000 9 : 47 am\nsubject : re : pserc nuggets related to market stem\n> the following are 3 items that demonstrate the impact of pserc research in\n> the market stem area .\n>\n> 1 . on december 12 , i ( shmuel oren ) testified at a hearing in san\nfrancisco\n> before the blue ribbon panel ( chaired by alfred kahn ) for the that is\n> investigating the implications of uniform price vs . pay as bid auctions in\n> the california px . as part of my testimony i presented a movie produced\nby\n> tim mount and bob thomas that show results of an experimental economic\nstudy\n> showing how bidders respond by raising their bids in a pay as bid auction .\n> following is an acknowledgement i received .\n>\n> dear shmuel :\n>\n>\n> thank you for attending the blue ribbon panel this past tuesday in san\n> francisco . your presentation was very informative and valuable to all the\n> panel members and other participants . the panel greatly appreciates your\n> involvement in this important project .\n>\n>\n> thanks again ,\n> natalie efland\n>\n>\n> 2 . a recent e - mail from the texas puc\n>\n> professor oren , i hope you and your family are doing well . we are\nseriously\n> considering your help and advice to facilitate the commission ' s final\n> decision regarding retail competition in ercot .\n>\n> i wanted to let you know that ercot stakeholders filled an application\nfor\n> approval of the ercot protocols in november . we received comments\nincluding\n> list of issues on november 22 and reply comments on december 1 . staff\nwill\n> draft and submit a preliminary order to the commissioners for their\n> discussion on december 13 . there will be a pre - hearing on december 15\nwhen\n> parties will be asked to brief the commission on list of issues by the end\n> of first week in january . there will be a hearing on january 16 followed\n> with another hearing if needed . parties have asked the commission to\n> finalize its decision by mid march .\n>\n> to give you some more background , i have to mention that almost most of\nyour\n> suggestions were accepted and will be reflected in the final protocols ,\n> except for problems with intra - zonal gaming regarding congestion\nmanagement\n> and pay - as - bid compensation for selected ancillary services . a few\n> additional concerns are raised regarding ancillary services and congestion\n> management . stakeholders are still working toward more load participation\n> in ercot market . however , the main problem is the fact that market ( pilot\n> that covers 100 % of wholesale , but only 5 % of retail load ) will be open on\n> june 1 , 2001 based on a version of the protocols locked on august 1 , 2000 .\n> ( that was the deadline for ercot to give a final design to anderson\n> consulting . ) that version does not include some of your recommendations\nto\n> address market design flaws . the full version is highly possible to be\n> implemented by january 1 , 2002 when market for 100 % retail competition is\n> scheduled to open . given this gap , some parties have recommended not to\n> implement incomplete protocols and wait for full implementation by january\n> 2002 . in other words , they say let ' s go ahead with 5 % pilot retail load ,\n> but wait for full design implementation before allowing 100 % wholesale\nload\n> ( and retail load ) be subject to the rules of the game described in the\nfinal\n> protocols .\n>\n> thanks .\n>\n> parviz adib , ph . d .\n> director of market oversight division\n> public utility commission of texas\n> 1701 n . congress avenue\n> p . o . box 13326\n> austin , texas 78711 - 3326\n> ph . no . : 512 - 936 - 7365\n>\n> 3 . the following is a segment from a published summary of the dec 13 puct\n> hearing . this segment describes the commision ' s deliberation on an agenda\n> item addressing the possibility of instituting price caps as part of the\n> ercot protocols . ( see reference to my involvement in the next to last\n> paragraph )\n>\n> docket no . 23220 - petition of the electric reliability council of texas\n> for approval of the ercot protocols . ( discussion and possible action )\n> parviz adib , jess totten , keith rogas , and tammy cooper\n> chairman wood turned to page 2 item number 3 of the draft order\nidentifying\n> issues , recommending that the word \" including \" be changed to \" other than \"\nin\n> the parentheses . he thinks they know the ups and downs of the two\n> mechanisms , which are bid caps and price caps , but would not mind having\n> parties focus on what other protections might be used . commissioner walsh\n> would say \" including , but not limited to \" because she does not think it is\na\n> bad idea for ercot to at least consider in their protocols a fail - safe\n> mechanism . it ' s kind of like the stock market suspending trading when\n> something crazy happens . they could consider a maximum scenario , such as\n> \" we don ' t think this will ever happen but if it does we need to muffle\nit \" ,\n> whether it is $ 1 , 000 or $ 99 or whatever it is . they could consider\nwhether\n> to put into the protocols a self - enacting price cap . while not expecting\nit\n> to happen , if it did , you don ' t have to declare it an emergency and have\nthe\n> commission have to act . chairman wood asked if they could leave the\n> question without the parenthetical at all and just say \" what protections\n> should be added to avoid extreme price spikes . \" commissioner walsh\n> reiterated that she wants ercot to think about the unlikely possibility of\n> unacceptable price spikes . she would like for them to have their own\n> fail - safe mechanism that is self - initiating as opposed to leaving that to\n> having someone have to come in and act . commissioner perlman stated that\nhe\n> thinks the california - type price caps is what the concern is about . he\n> thinks everyone in this state is opposed to those , but he thinks the point\n> commissioner walsh is making is an interesting one . he had not thought\n> about the circuit breaker idea , and it might have some merit . he agreed\n> that it was worth considering something like that . then the question\n> becomes what the level is . chairman wood suggested the wording \" what\n> self - implementing protections should be added to avoid the price spikes .\n> commissioner perlman said he did not think anyone is talking about $ 250\n> price caps . commissioner walsh agreed , but noted that if the unexpected\n> happens we should be prepared . commissioner perlman indicated that if\n> someone is making $ 10 , 000 in one particular hour that it probably does not\nb\n> enefit the market and is probably a windfall to them . it is not something\n> they would normally put in their business plan for determining whether\nthey\n> are going to build a plant in texas . chairman wood stated that they want\nto\n> lean toward the market as heavily as they can on these issues .\n>\n> chairman wood noted that some of these issues date back to when dr . oren\nwas\n> assisting the commission , and asked if he could be brought back again .\n> staffer dr . parviz adib said that staff had already talked to dr . oren and\n> that he is available to assist the commission further . chairman wood\nnoted\n> that dr . oren had helped people think outside the box without just\nfocusing\n> on california .\n>\n> the final wording was clarified to state \" self - implementing mechanisms \"\nand\n> to delete the parenthetical part of the sentence in question . the order\nwas\n> approved as amended .\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.667+0000", "entityId": 9487, "properties": {"text": "Subject: harvard business school - - enron case study - - ' final ' draft\nfriends ,\nattached is the \" final \" draft of the harvard business school case study\nprepared by harvard professor chris bartlett and his research assistant meg\nwozny . [ please scroll down to the end of the next message for the attachment ]\n. the content was developed from interviews with most of you .\nplease review the case and let me know of any desired\nedits / corrections / comments as soon as possible . [ one obvious correction is\nthe spelling of cindy olson ' s last name ] .\nwe ' d like to \" sign off \" on this within the next 2 or 3 days . harvard\nprofessors are excited about teaching this case this coming semester . in\nfact , professor don sull will be focusing largely on this enron case this\nsemester , culminating in \" enron day \" at harvard business school april 26 th ,\nfeaturing jeff skilling . also , chris and meg will be in houston this\nthursday , jan . 11 th , ' capping off ' their work with video interviews with ken ,\njeff and louise , which will help \" bring the case to life \" for the students\nstudying it .\nplease forward any edits / corrections / comments to me via e - mail or via hard\ncopy ( please deliver to eb 4710 , or call me [ 3 - 6117 ] and we ' ll have it picked\nup ) .\nthanks to everyone for all your contributions to this exciting work !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 08 / 2001\n09 : 57 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmeg wozny on 01 / 08 / 2001 09 : 31 : 00 am\nto : christie . patrick @ enron . com\ncc :\nsubject : re : enron case study\nchristie :\ncongratulations ! i don ' t know how you manage to work full - time at enron\nand study for a phd at the same time . sounds superhuman to me !\nthe fedex was marked for saturday delivery , but in case you haven ' t\nreceived it yet , i ' m enclosing the draft as an attachment .\nit would be great if we could get enron ' s approval during our visit . ( i\nknow professors at hbs are interested in teaching that case as soon as it ' s\navailable . )\nthanks for all your help , and let me know if you have any questions ,\ncomments , etc .\nbest ,\nmeg\nat 09 : 12 am 1 / 8 / 01 - 0600 , you wrote :\n> meg . . . just got back in the office - - - anxiously looking for the package ! !\n>\n> i finished my phd ( psychology @ usc ) class work last week - - i made my last\ncase presentations this past friday ! ! now i only have my dissertation to\ngo ! . . . hooray !\n> looking forward to seeing you and chris thursday !\n>\n> - - christie .\n- latest draftl . doc\n* * * * * * * * * * * * * *\nmeg wozny\nresearch associate\nharvard business school\ngallatin lounge c\nsoldiers field\nboston , ma 02163\nvoicemail : ( 617 ) 496 - 0802\nfacsimile : ( 617 ) 496 - 6943\nemail : mwozny @ hbs . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.672+0000", "entityId": 9488, "properties": {"text": "Subject: ees operational risk\nper our conversation , here is the model that i have for simon . the notes\nthat i gave you were from some work i did back in september as i was looking\nfor volume numbers . the notes show what drives the final cash flow numbers .\nbriefly , the issue surrounds exactly what is meant by nonmarket and\nnoncredit risk . ideally , this would be anything that effects npv of the\ndeal . however , i think that we should limit ourselves to those things that\neffect the time and amount of the eam volumes . even here , such a problem set\nis quite large . if you glance at the spreadsheet model , you will notice that\nthere exists a large number of possible items that effect the eam volumes .\nif we are to do this rigorously , then it is necessary to tear apart ees ' s\nbusiness model , and although such an attempt to do so would be noble , the\nscope of such an excercise may be too large . we need a clear definition of\nees operational risk .\nbriefly , from the ees deals that i have looked at , two things drive their\nprofit : a long term bet that power prices will go down , and that we can\nimprove the facility through various enhancements . each of these may be\ngleaned from the spreadsheet , as well as the assumptions regarding the\nfunding of the facility improvements and so on . 95 % of the savings is\nassumed to come from power , and 5 % from gas . ( the effeciency gain may not be\nexplicitly given ) . if we have data that show the realized efficiency gains ,\nthen it would be simple [ in principle ] to determine a distribution , and hence\na distribution of eam volumes , npv ' s , etc . at this time , i understand that\nrac has determined some of the realized efficiency gains , but my knowledge is\nquite sketchy . jay hachen may have more info .\nif i get a chance , i will try to see if i can do a \" proof of concept \"\nexcercise , but i have a late january deadline on something else .\nanother point : even if we are successful in doing this for the spreadsheet\nmodel , ees has chosen to book things differently . i do not have a thorough\nunderstanding of their it systems , but at least in principle , if we can do\nthis for the spreadsheet model , then we can do it in their it environment\n( data are data are data ) . they may book efficiency gains through improvement\ntype , such as gains due to compressors , chillers , boilers , etc . if this is\nindeed the case , then we need to have distributions for each type of\nimprovement .\nif we are successful on the spreadsheet and not successful with their it\nsystems , then the other alternative is to build our own reporting system . it\nwould be similar to a database where the recordsets are replaced by excel\nworkbooks . it can be constructed in such a way as to enable us to run\nsimulations and queries , but this would probably take me about five or six\nweeks .\nfinally , don hawkins does operational audits for enron ' s physical assets .\nhe sends out teams to audit our pipelines and strategic assets . i don ' t\nthink that he does it for ees , but you might want to give him a call anyway .\n- kevin k .\nps : the ees lunch meeting has been moved to wednesdays . jay hachen will\nknow more .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.676+0000", "entityId": 9489, "properties": {"text": "Subject: re : reminder\nsandeep ,\ni am meeting jeff on tuesday , 1 : 30 .\nthe best number to reach me ( outside the office ) is my cell phone\n( always on ) : 713 410 5396 .\nmy home number is 281 367 5377 .\nvince\nsandeep kohli @ enron _ development\n01 / 06 / 2001 08 : 30 pm\nto : vince j kaminski @ ect\ncc :\nsubject : reminder\nvince ,\nbefore leaving for india i just wanted to jot you this small reminder to talk\nto jeff shankman on monday .\naside from myself , i wanted to remind you to talk about anshuman shrivastava ,\nwho is currently assistant manager in india , and has my recommendation for\npromotion to manager . he is our point person on many dpc matters , and is\nalso the person i have used on most fuel related issues . he will be a real\nasset to jeff when located in houston . sinc he is single , and quite young ,\nit will not be a problem to move him here at short notice .\ni will call you from india as soon as i get in . it will be monday evening in\nhouston at that time , so could you please jot me a note telling me what would\nbe a good number to call you on .\ni look forward to working with the team in research .\nthanks again ,\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.681+0000", "entityId": 9490, "properties": {"text": "Subject: enron europe organisational changes\nonce the arcos plant in spain is financially closed ( expected in q 2 of this\nyear ) eric gonzales will be moving back to houston to work exclusively on\nco - managing enron ' s lng markets . we are very appreciative of eric ' s efforts\nin europe since early 1998 and look forward to continuing to work very\nclosely with his lng team in the coming years . from this point forward eric\nwill focus his remaining time in europe exclusively on financially closing\narcos .\nwe are therefore making the following changes immediately . the origination\nresponsibility for italy will be moved under eric shaw . ricardo bortolloti\nwill continue in the role as italian country manager and will report to eric\nshaw . mariano gentilini will become our country manager for spain and\nportugal and will report directly to the enron europe office of the chairman .\nthe arcos power project is likely to create a large gas to power spread\nposition and so we have asked paul mead to assume the added responsibility\nfor our natural gas risk positions in spain . this position is much more\nlikely to be supplied and influenced by lng rather than continental gas\nmarkets and paul will work quite closely with both enron global markets and\nthe continental gas team .\nross sankey who has been managing our marketing efforts in holland will also\nhead a new organization that will focus on subsea interconnector and power\ntransmission opportunities across europe . among the prospects his team will\npursue include projects from norway to the uk , sweden to the continent ,\nand bidding on existing french interconnector capacity . he will report to\neric shaw for the holland markets and to richard lewis for the transmission\nresponsibilities .\nfinally the continental gas team is interacting far more with our uk gas team\nthan our power teams on the continent . therefore david galagher who manages\nour continental gas team will now report directly to richard lewis .\nwe have aggressive income targets for this year and anticipate that these\nchanges will create the right links to optimize our performance . please help\nmake these changes as smooth as possible .\njohn sherriff\nmichael brown", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.685+0000", "entityId": 9491, "properties": {"text": "Subject: re : grant masson\nfyi . i shall not be surprised if grant knock on our door again in a few weeks .\ni told him he could not count on the same generous treatment\nhe got the first time .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 08 / 2001\n08 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" grant masson \" on 01 / 07 / 2001 06 : 43 : 08 pm\nto :\ncc :\nsubject : re : grant masson\ndear vince :\n?\nafter a very great deal of thought , i have decided to stick it out with el\npaso .\n?\nplease be assured that this exercise was not a \" fishing expedition \" to\nextract concessions from el paso . ? rather , it is simply that , although i\ncontinue to harbor doubts about some of el paso ' s methods and about the\npeople running the business , i have concluded that two months is not enough\ntime to fully judge the company . ? i feel that i have not yet given el paso\n( or myself for that matter ) a fair chance . ? after all , if i disagree with\nthe way the business is run , i should regard that as an opportunity to\neffect changes and not an excuse to run away .\n?\nplease extend my sincerest thanks and apologies to all those who worked so\nhard over the holidays to produce the offer : david oxley , sheila walton , and\nespecially norma villarreal .\n?\nand thanks also to you vince for your patience , humor , and good advice . ? as\ni ' ve said before , i consider it an honor to be able to call you a colleague\nand friend .\n?\nwith best regards ,\ngrant .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.690+0000", "entityId": 9492, "properties": {"text": "Subject: request submitted : access request for anita . dupont @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012735\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 8 / 01 4 : 26 : 26 pm\nrequested for : anita . dupont @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.696+0000", "entityId": 9493, "properties": {"text": "Subject: request submitted : access request for anita . dupont @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012736\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 8 / 01 4 : 28 : 42 pm\nrequested for : anita . dupont @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.700+0000", "entityId": 9494, "properties": {"text": "Subject: request submitted : access request for anita . dupont @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012741\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 8 / 01 4 : 34 : 26 pm\nrequested for : anita . dupont @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.705+0000", "entityId": 9495, "properties": {"text": "Subject: request submitted : access request for anita . dupont @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012738\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 8 / 01 4 : 31 : 26 pm\nrequested for : anita . dupont @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.711+0000", "entityId": 9496, "properties": {"text": "Subject: request submitted : access request for anita . dupont @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012734\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 8 / 01 4 : 24 : 06 pm\nrequested for : anita . dupont @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.720+0000", "entityId": 9497, "properties": {"text": "Subject: request submitted : access request for tom . barkley @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012677\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 8 / 01 2 : 30 : 03 pm\nrequested for : tom . barkley @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.730+0000", "entityId": 9498, "properties": {"text": "Subject: power plant model\nken of rdi and i have gone through his model together and i have a clear idea\nof how it ' s going step by step . i believe we can almost start recoding now .\ni need a c programmer who ' s familiar with access data base .\ni . e . , he ( or she ) knows how to extract data from an access data table ( of\ncertain format ) and output the results into an access data table of certain\nformat . once the programmer is assigned , i will go through the model\nwith him and incorporate his ideas and ken ' s , then we can start coding .\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.734+0000", "entityId": 9499, "properties": {"text": "Subject: re : volume ii of the technical corner collection\nsam ,\nthis is a partial list of people to whom i would like to send the volumes :\nvolume 1 & 2\nwinokur ( enron board member , shirley has his address )\njeff skilling\nken lay\nmark frevert\ngreg whalley\nrick buy\njeff shankman\njohn lavorato\ndave delainey\ni shall write the cover letter .\nalso , we can add additional volume for kaminski ' s columns ( just 10 copies ) ,\nincluding bios and my contributions .\ni would like to show the depth of talent we have in the group .\nvince\nenron north america corp .\nfrom : william smith @ enron 01 / 09 / 2001 01 : 07 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : volume ii of the technical corner collection\nvince ,\ni have successfully integrated martin ' s article into volume ii and am\nfollowing mike ' s instructions for reproduction . i ' m also having some\nadditional volume i ' s printed , too . would you mind disposing of the other\nset i gave you ? i wouldn ' t want things to get confused . also , i ' m doing 20\nvolume i ' s and 60 volume ii ' s . please let me know how many you personally\nneed and i will deliver them to your office .\nthank you ,\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.739+0000", "entityId": 9500, "properties": {"text": "Subject: the url\np . s . http : / / enaresearch . dev . corp . enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 01 / 09 / 2001\n01 : 11 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mike a roberts 01 / 09 / 2001 01 : 13 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect , osman sezgen / hou / ees @ ees , maureen\nraymond / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , zimin lu / hou / ect @ ect ,\njose marquez / corp / enron @ enron , stephen bennett / na / enron @ enron , william\nsmith / corp / enron @ enron , elena chilkina / corp / enron @ enron , steve\nbigalow / na / enron @ enron\ncc :\nsubject :\neverybody ,\nas vince suggested , i made a topical allocation of our new website for\nquality control . can you please check out in detail , and put through the\npaces , the following list ?\nweather mike\nlinks maureen\ntechnical analysis steve bigalow\noptions library zimin ( this is a big one ! ! )\neuropean weather jose\nagricaltural weather jose ( be sure and run spell check ! ! ! )\nweather derivatives stephen\npresentations tanya\nnuclear outage updates sam\nfx and sovergn risk maureen\nindustry analysis vasant\npublications osman\nresearch intelligence stinson\nhot button # 8 vince\nthanks , just email me with any problems or ideas for adds / changes\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.744+0000", "entityId": 9501, "properties": {"text": "Subject: everybody ,\nas vince suggested , i made a topical allocation of our new website for\nquality control . can you please check out in detail , and put through the\npaces , the following list ?\nweather mike\nlinks maureen\ntechnical analysis steve bigalow\noptions library zimin ( this is a big one ! ! )\neuropean weather jose\nagricaltural weather jose ( be sure and run spell check ! ! ! )\nweather derivatives stephen\npresentations tanya\nnuclear outage updates sam\nfx and sovergn risk maureen\nindustry analysis vasant\npublications osman\nresearch intelligence stinson\nhot button # 8 vince\nthanks , just email me with any problems or ideas for adds / changes\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.749+0000", "entityId": 9502, "properties": {"text": "Subject: credit reserve\nvince ,\ni ' d like to get someone to sit with one of team for a couple of days . . . . to\nhelp with reviewing code .\nthere seems to be two view of how this is currently working .\nyour team seems to think winston group is not being co - operative enough .\nwinston ' s team seems to think they are co - operating . . .\ni ' d like to resolve this .\nif my suggestion above doesn ' t work ( putting some in your team for a couple\nof days ) , i would like for us to sit down with winston , nilay and tanya and\ntry to work out what ' s happening .\nregards\nsteve\n- - - - - - - - - - - - - - - - - - - - - - - -\ntel : 713 - 345 - 8980\ncell : 281 - 541 - 1862\npage : stevestock @ pagenetips . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.754+0000", "entityId": 9503, "properties": {"text": "Subject: re : meeting on feb 8 , 2001\ndavid\nthanks .\ni shall get in touch with you a few days before to\ncoordinate the details .\nvince\nfrom : david port @ enron\n01 / 09 / 2001 07 : 47 am\nto : vince j kaminski / hou / ect @ ect\ncc : rick buy / hou / ect @ ect , john l nowlan / hou / ect @ ect , jeffrey a\nshankman / hou / ect @ ect , vince j kaminski / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : re : meeting on feb 8 , 2001\nvince\ni will be available .\ndp\nvince j kaminski @ ect\n01 / 08 / 2001 12 : 06 pm\nto : rick buy / hou / ect @ ect , david port / market risk / corp / enron @ enron , john l\nnowlan / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : meeting on feb 8 , 2001\nfyi .\nthis is the list of the petronas executives visiting enron on feb 8 .\ni have invited them to lunch . would you like to join me for lunch .\ni would like to propose a short courtesy meeting at 10 with jeff / john ( 5 -\n10 minutes ) ,\nfollowed by rac / research presentation till 11 : 30 .\nvince\np . s . i shall reserve a conference room for this meeting\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 08 / 2001\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nazminab @ petronas . com . my on 01 / 07 / 2001 06 : 37 : 33 pm\nto : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com ,\nkhairuddinbmjaafar @ petronas . com . my\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski\n4 members from corporate risk management unit\n1 . iqbal abdullah - general manager\n2 . nur azmin abu bakar - head , risk assessment & controls\n3 . zulkifli a rahim - head , risk measurement & systems\n4 . adnan adams - head , special projects\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 09 : 45 : 02 pm\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : re : meeting on feb 8 , 2001\ndear mr . nur azmin abu bakar ,\nthanks for your prompt reply .\nplease , let us know how many members of your team will\nvisit enron .\ni look forward to our meeting on february 8 .\nvince kaminski\nazminab @ petronas . com . my on 01 / 02 / 2001 06 : 38 : 33 pm\nto : vince . j . kaminski @ enron . com , khairuddinbmjaafar @ petronas . com . my ,\nshirley . crenshaw @ enron . com\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski ,\nhappy new year and thank you for the reply . we are honored to have\nlunch with you and your team however we have another appointment at\n2 . 30 p . m .\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 07 : 38 : 19 am\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : meeting on feb 8 , 2001\ndear sir ,\ni would like to apologize for the delay in responding to your fax .\ni was on vacation for the last few days .\ni shall be honored to meet your delegation on thursday , february 8 at 10 : 00\na . m .\nplease , let me know if you will be free for lunch after the meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.759+0000", "entityId": 9504, "properties": {"text": "Subject: hc collar valuation - update\nandrea ,\nwe computed the hc historical volatility for last 3 years , it is 47 . 2 % .\nusing this volatility , the costless collar call strike is at 83 . 32 .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.764+0000", "entityId": 9505, "properties": {"text": "Subject: hc costless collar\nandrea ,\nwe finished the the costless collar valuation . see the spreadsheets for\ndetails .\nwe checked the bloomberg for volatility assumption . the 100 days volatility is\naround 50 % . since the option is for 3 years , the volatility should be\nsomewhat smaller .\nso we put an array of calculations , with the volatility ranges from 20 % to\n60 % .\nif you have any questions , please call me or bob lee .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 01 / 09 / 2001 09 : 02 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbob lee @ enron\n01 / 09 / 2001 08 : 48 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : hc costless collar", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.769+0000", "entityId": 9506, "properties": {"text": "Subject: re :\nthanks , please tell me if you need anything from ees .\nvince j kaminski @ ect\n01 / 09 / 2001 02 : 30 pm\nto : denise furey / hou / ees @ ees\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : re :\ndenise ,\nno problem .\nwe shall prepare a short presentation to address these issues .\nvince kaminski\ndenise furey @ ees\n01 / 09 / 2001 11 : 12 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\ni hope you have seen the email below . do you have any problem with what\njeremy has asked you or your group to address . is there anything that you\nwant us to supply to you to assist you ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by denise furey / hou / ees on 01 / 09 / 2001 11 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndenise furey\n01 / 08 / 2001 11 : 46 am\nto : gayle w muench / hou / ees @ ees , michael tribolet / corp / enron @ enron , william s\nbradford / hou / ect @ ect , vince j kaminski / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect\ncc : don black / hou / ees @ ees , tony spruiell / hou / ees @ ees\nsubject :\ni believe all of you received a request from jeremy blachman to hold the\nafternoon of january 10 th open for an off - site to discuss the manner in which\nrac and research assess / test the credit quality of ees transactions . i\nrealize that rac and ees have had many discussions as to the methodology , but\nit might be helpful for all of us to understand the actual derivation of some\nof analysis . please call me with any questions or comments at ext # 30349 .\nthe agenda will be as follows :\n12 : 00 - 1 : 00 lunch\n1 : 00 - 3 : 30 presentations\n3 : 30 - to close discussion\nrac / research presentations\nthe following topics would be of interest to ees :\n1 - the derivation of default probabilities including ( research )\n- - a discussion of the actual mathematical process ,\n- - the analytics behind why these computations are deemed the best for\nenron ,\n- - a comparison to historic default rates and why they differ ( in respect\nto actual default rates , shape of the cumulative default curves etc .\n2 - the volatilities which are used to determine possible loss scenarios for\nthe commodity portion of ees deals including ( research )\n- - the selection of curves\n- - the application of those curves to the actual credit reserve model and\n- - why these particular tests are applicable to our products .\n3 - the recovery rates used in the credit reserve model . how are these\nfigures derived ? ( rac )\n4 - how rac and research have adjusted the credit reserve model to\naccommodate unusual aspects of the deal including ( rac )\n- - promotion payments ,\n- - accounts receivable\n- - committed capital\n- - and other factors\nees also understands that some of you may be familiar with our processes ,\nhowever , there are perhaps areas that you would like to understand more\nfully . please tell us what you would like to hear from us .\nalso , rac has sent us the credit reserve model and i have seen completed\nmodels . perhaps prior to our meeting on wednesday , someone from rac and / or\nresearch could sit with me and someone from phil layton ' s group and go\nthrough the process of how the various pieces are put together .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.773+0000", "entityId": 9507, "properties": {"text": "Subject: re :\ndenise ,\nno problem .\nwe shall prepare a short presentation to address these issues .\nvince kaminski\ndenise furey @ ees\n01 / 09 / 2001 11 : 12 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\ni hope you have seen the email below . do you have any problem with what\njeremy has asked you or your group to address . is there anything that you\nwant us to supply to you to assist you ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by denise furey / hou / ees on 01 / 09 / 2001 11 : 11\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndenise furey\n01 / 08 / 2001 11 : 46 am\nto : gayle w muench / hou / ees @ ees , michael tribolet / corp / enron @ enron , william s\nbradford / hou / ect @ ect , vince j kaminski / hou / ect @ ect , vasant\nshanbhogue / hou / ect @ ect\ncc : don black / hou / ees @ ees , tony spruiell / hou / ees @ ees\nsubject :\ni believe all of you received a request from jeremy blachman to hold the\nafternoon of january 10 th open for an off - site to discuss the manner in which\nrac and research assess / test the credit quality of ees transactions . i\nrealize that rac and ees have had many discussions as to the methodology , but\nit might be helpful for all of us to understand the actual derivation of some\nof analysis . please call me with any questions or comments at ext # 30349 .\nthe agenda will be as follows :\n12 : 00 - 1 : 00 lunch\n1 : 00 - 3 : 30 presentations\n3 : 30 - to close discussion\nrac / research presentations\nthe following topics would be of interest to ees :\n1 - the derivation of default probabilities including ( research )\n- - a discussion of the actual mathematical process ,\n- - the analytics behind why these computations are deemed the best for\nenron ,\n- - a comparison to historic default rates and why they differ ( in respect\nto actual default rates , shape of the cumulative default curves etc .\n2 - the volatilities which are used to determine possible loss scenarios for\nthe commodity portion of ees deals including ( research )\n- - the selection of curves\n- - the application of those curves to the actual credit reserve model and\n- - why these particular tests are applicable to our products .\n3 - the recovery rates used in the credit reserve model . how are these\nfigures derived ? ( rac )\n4 - how rac and research have adjusted the credit reserve model to\naccommodate unusual aspects of the deal including ( rac )\n- - promotion payments ,\n- - accounts receivable\n- - committed capital\n- - and other factors\nees also understands that some of you may be familiar with our processes ,\nhowever , there are perhaps areas that you would like to understand more\nfully . please tell us what you would like to hear from us .\nalso , rac has sent us the credit reserve model and i have seen completed\nmodels . perhaps prior to our meeting on wednesday , someone from rac and / or\nresearch could sit with me and someone from phil layton ' s group and go\nthrough the process of how the various pieces are put together .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.778+0000", "entityId": 9508, "properties": {"text": "Subject: continental phone #\n1 - 800 - 621 - 7467 or ? cust . serv . 1 - 800 - 932 - 2732", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.783+0000", "entityId": 9509, "properties": {"text": "Subject: re : real time var\ntanya ,\nthank you for the information . i agree that we need to talk about more what\nand how global valuation can facilitate a more competitive var engine .\nwinston and nilay are going to give my group a presentation regarding the\ncurrent var system next tuesday . i am sure the presentation will help my team\nbetter understand the requirements of var engine on global valuation . please\njoin us if you have the time . i would also appreciate your insight on this\nmatter .\nthanks\nzhiyong\ntanya tamarchenko\n01 / 08 / 2001 11 : 09 am\nto : zhiyong wei / hou / ect @ ect , nilay basu / hou / ect @ ect , wenyao jia / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : real time var\nziyong ,\nwe met with nilay and winston last week regarding real time var calculation\npossibility .\nwinston has an overview of var system which consists of :\n- main curves simulation ;\n- curve server ;\n- book server ;\n- id server\n- clients\nas a first step i want to see where the time is spent when var runs , which\npercentages of time are spent by each part .\nnilay is going to get this information for a few portfolios ( agg - ect , agg - gas\nand ng - price - prc ) .\npreliminary information : currently var run takes about 1 hour , half of this\ntime taken by \" book server \"\n( we have about 4500 lower level portfolios in the portfolio hierarchy , about\n5500 portfolios all together ) ,\nmost of the rest is taken by \" clients \" , \" main curves simulation \" does not\ntake much time .\ni am looking also at using alternative methods of faster var calculation , but\nhaving so many portfolios in the hierarchy will slow down\neven analytical var .\nwe also have to think more about what \" real time \" calculation means and what\nit should produce .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.788+0000", "entityId": 9510, "properties": {"text": "Subject: re : order for book\njulie ,\nthe discount is fine . look fwd to receiving the books .\nvince\n\" julie \" on 01 / 08 / 2001 09 : 30 : 53 pm\nplease respond to \" julie \"\nto : \" vincejkaminski \"\ncc :\nsubject : order for book\nvince ,\n?\ni can offer you 12 . 5 % off of your order for 50 books ( we originally spoke to\nhabiba about setting up a 50 % discount ? but enron would have to order a\nminimum of 200 books . ? ? since the ? change over , nothing has been set up on\nthis ) . ?\n?\nlet me know if i should go ahead with the invoice .\n?\nthanks ,\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.793+0000", "entityId": 9511, "properties": {"text": "Subject: re : volume ii of the technical corner collection\nsam ,\nyes , let ' s omit the guys who left the company , but we can include\nthe summer interns .\nvince\nenron north america corp .\nfrom : william smith @ enron 01 / 09 / 2001 01 : 56 pm\nto : vince j kaminski / hou / ect @ ect\ncc : mike a roberts / hou / ect @ ect\nsubject : re : volume ii of the technical corner collection\nvince ,\nsounds good ! it will take two or three days for me to strip out , reformat ,\nand assemble the kaminski columns ( since we didn ' t do this last year , i ' m\nguessing you mean all columns since the beginning ) , so i envision us being\nready with the completed set the first part of next week . i assume that you\nwould like me to omit those people who have moved on ?\nalso , on page three of the first volume , you had written an introduction . i\nhave updated the content for volume two , but would you perhaps like to do a\nnew one ?\nsam\nvince j kaminski @ ect\n01 / 09 / 2001 01 : 43 pm\nto : william smith / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect\nsubject : re : volume ii of the technical corner collection\nsam ,\nthis is a partial list of people to whom i would like to send the volumes :\nvolume 1 & 2\nwinokur ( enron board member , shirley has his address )\njeff skilling\nken lay\nmark frevert\ngreg whalley\nrick buy\njeff shankman\njohn lavorato\ndave delainey\ni shall write the cover letter .\nalso , we can add additional volume for kaminski ' s columns ( just 10 copies ) ,\nincluding bios and my contributions .\ni would like to show the depth of talent we have in the group .\nvince\nenron north america corp .\nfrom : william smith @ enron 01 / 09 / 2001 01 : 07 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : volume ii of the technical corner collection\nvince ,\ni have successfully integrated martin ' s article into volume ii and am\nfollowing mike ' s instructions for reproduction . i ' m also having some\nadditional volume i ' s printed , too . would you mind disposing of the other\nset i gave you ? i wouldn ' t want things to get confused . also , i ' m doing 20\nvolume i ' s and 60 volume ii ' s . please let me know how many you personally\nneed and i will deliver them to your office .\nthank you ,\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.798+0000", "entityId": 9512, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n01 / 09 / 2001 10 : 24 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : vacation\nvince :\nif it is allright , i would like to take the following days as vacation days :\nfriday , january 12\nfriday , february 2\nanita will be here .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.802+0000", "entityId": 9513, "properties": {"text": "Subject: request submitted : access request for\npraveen . mellacheruvu @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000012987\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 9 / 01 3 : 03 : 48 pm\nrequested for : praveen . mellacheruvu @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.807+0000", "entityId": 9514, "properties": {"text": "Subject: request submitted : access request for rakesh . bharati @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000013287\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 10 / 01 5 : 57 : 18 pm\nrequested for : rakesh . bharati @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.812+0000", "entityId": 9515, "properties": {"text": "Subject: enron , india database\nsandeep ,\n?\nbelow , i have summarized henwood ' s work on the india database to date .\n?\nthe \" inter _ regional links . ppt \" file shows the topology and links between\nbubbles in the our model and \" expand _ india _ data _ 011000 . xls \" details the\nexisting station information that we have compiled to date . ? total resources\nclosely match reported resources as shown in \" l & r _ 0110 . xls \" . reported india\ntotal in 1997 is 86 , 000 mw and that in the henwood database is 84 , 000 mw\nthrough 1997 .\n?\nregion\nemss database\nreported [ 1 ]\ndifference\n- inter _ regional links . ppt\n- expand _ india _ data _ 011000 . xls\n- l & r _ 0110 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.817+0000", "entityId": 9516, "properties": {"text": "Subject: storage model change : commodity delta\ndear all ,\ni change the storage model output to its total value versus the unit value\nbefore .\nthe total value refers to the total present value of the storage capacity at\ngiven\nstatus ( initial conditions ) .\nthe way i calculate the unit value is\n( total pv - s * capacity taken ) / total capacity\nwhich could suffer some negative numbers since s , the spot price could be\nvery high . the correct way is to define the s as the average injection gas\nprice , but\nthis would be troublesome to compute .\nby switching to total pv , the delta can be interpreted as total commodity\ndelta for the\nhedge . actually , duffie also suggested using the total pv as the output in\nhis audit\nreview .\ni have attached the xll model below .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.822+0000", "entityId": 9517, "properties": {"text": "Subject: a colossal and dangerous failure - cera alert\ntitle : a colossal and dangerous failure\nurl : http : / / www 20 . cera . com / eprofile ? u = 35 & m = 2185\noverview : western energy \u0001 * california governor stays the course\ncalifornia governor gray davis provided his strongest public statements to\ndate regarding the state \u0001 , s power crisis in his annual state of the state\naddress on january 8 , 2001 . echoing many of his previous positions on what he\nperceives as a flawed and unfair california market structure , the governor\nlabeled the state \u0001 , s electricity market system a colossal and dangerous\nfailure . among other actions , he launched new initiatives valued at $ 1\nbillion to encourage conservation , provide financing and land to new\ngenerators , grant authority to utilities to engage in a portfolio of\ntransactions to manage electricity costs , and increase regulatory scrutiny of\nexisting market suppliers . the governor also called for a greater role for\nthe state in overseeing and constructing new power plants .\nthe governor acknowledged that the actions proposed are only some of the\nsteps necessary to put california on the road to recovery . details regarding\nsources of funding for the initiative are still forthcoming . although he\nstated that california \u0001 , s investor - owned utilities must not be allowed to go\nbankrupt , no formal plan for ensuring their solvency was given . the financial\ncommunity continues to lack the assurance it requires to continue to provide\nfinancial backing for pacific gas and electric and southern california\nedison . at this time the state legislature remains the body most likely to\nguarantee their solvency .\nthe governor again criticized the federal energy regulatory commission for\nwhat he believes has been its failure to manage and restrain properly the\nwholesale market . merchant plant generators were accused of gouging the\nstate , and it was suggested that these generators acted illegally in their\noperations , jeopardizing the reliability of the power grid . new , more severe\nsanctions were promised for those caught withholding power or extracting what\ninvestigators find as unreasonable profits .\na los angeles times poll released the morning before the governor \u0001 , s address\nindicated that the majority of californians still do not believe there is an\nenergy crisis . although the 33 percent growth in the state \u0001 , s economy over the\npast ten years has nearly outstripped the state \u0001 , s and surrounding region \u0001 , s\nsupplies of power , the bulk of the governor \u0001 , s statements continue to focus on\nthe culpability of power producers , rather than the serious supply shortfall .\nthough the governor introduced steps to fund and facilitate the construction\nof new generating plants , increased regulatory scrutiny and the threat of\nsanctions will exacerbate the concern already expressed by plant developers\nand the financial community that the investment climate in california is\nexcessively risky .\n* * end * *\nfollow above url for complete report .\ncome shoot the rapids with us at ceraweek 2001 , \" shooting the rapids :\nstrategies and risks for the energy future \" in houston , february 12 - 16 ,\n2001 ! for more information and to register , please visit\nhttp : / / www 20 . cera . com / ceraweek /\ne - mail category : alert\ncera knowledge area ( s ) : western energy ,\nto make changes to your cera . com account go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.830+0000", "entityId": 9518, "properties": {"text": "Subject: extending eu gas guidelines to central and eastern europe - cera\ninsight\ntitle : extending eu gas guidelines to central and eastern europe\nurl : http : / / www 20 . cera . com / eprofile ? u = 35 & m = 2184\noverview : a comprehensive reform of gas legislation in central and eastern\neurope is bringing the region in line with the european union \u0001 , s gas\ndirective . this is true both for the countries expected to enter the union by\n2004 \u0001 ) 05 \u0001 * czech republic , estonia , hungary , poland , and slovenia - - and for\ncandidates whose entry is not scheduled before the end of the\ndecade - - bulgaria , latvia , lithuania , romania , and slovakia . in cera \u0001 , s view\ncurrent developments regarding the establishment of a legal framework for the\ninternal gas market in eastern and central europe look promising from an\ninvestor \u0001 , s point of view .\nthe candidate countries presented a review of progress made in the\nimplementation of the eu gas directive during a two - day workshop held by the\neuropean commission and the world bank in paris in november .\nmany of these countries have been reforming their energy industries\nthroughout the 1990 s as part of their transition to a market economy . the\nresults have been mixed , particularly in the utility industries . the 1998 gas\ndirective ( adopted in august 2000 ) now offers a compelling incentive for eu\ncandidate countries to transform their gas industries , while providing a road\nmap to guide them .\nthe critical points relevant to harmonization between the european union and\ncandidate countries include the following :\n* legal framework and regulation . the legal framework is the cornerstone of\nenlargement and the yardstick of harmonization in europe . as a result , in all\ncandidate countries in 1999 \u0001 ) 2000 energy laws were either updated or newly\nestablished along the principles spelled out in the gas directive . regulatory\nbodies have been created by law and are operating in every country , although\nissues of staffing , financial autonomy , and independence from political\ninfluence are not uniformly resolved .\n* third - party access ( tpa ) and long - term take - or - pay contracts . all candidate\ncountries agree that tpa is a key to market competition . therefore , all have\nadopted it or intend to do so in their new legislation . although the\ncommission favors regulated tpa , the specific approaches to tpa enforcement\nin the candidate countries remain unclear in some cases . in particular , the\nimplementation of tpa will have to address the issue of long - term take - or - pay\ncontracts with russia that were signed by all major domestic gas companies\nand somewhat preempt competition . russian gas is for the most part sold to\nsingle , traditional state - owned operators that dominate their internal\nmarkets . a balance will need to be struck between these incumbent dominant\nplayers and the competitive environment . this is made more complicated by\ntheir ownership of large volumes of russian gas supplied in kind in exchange\nfor transit rights to west european customers . article 25 of the directive\nprovides for !\na derogation to companies experiencing difficulties stemming from take - or - pay\nobligations . this derogation would apply to the companies of candidate\ncountries with historical and commercial links with the russian gas industry .\nfurthermore , article 26 allows derogations to those member states with only\none major gas supplier , to those with an \u0001 + \u0001 + emerging gas market\nstatus , \u0001 , \u0001 , or to those without a direct gas connection to the grid of another\nmember state . most of the candidate countries would in principle be able to\ncall on one or more of these grounds for derogation when they join the\neuropean union .\n* price cross - subsidies . residential gas tariffs are artificially low and are\nfinanced partially through higher rates applied to industrial consumers . in\nvarious countries , tariff increases and the phasing out of subsidies have\nbeen scheduled , but such decisions remain politically sensitive to enforce .\nthis has recently been emphasized by high gas prices owing to the linkage of\nimported gas to oil prices . all candidate countries have set legal frameworks\nthat include the phasing out of cross - subsidies as part of sector reform , but\nthe actual implementation will remain politically difficult . as table 1\nindicates , price rebalancing is already under way in most countries expected\nto enter the european union by mid - decade , but the legal framework itself\ncannot guarantee the pace of reform . the same goes for candidate countries\nthat have only recently introduced eu - complying energy laws and whose entry\nto the european union is likely to happen in a longer time frame .\n* unbundling . most countries understand that the unbundling of transmission\ncompanies from their supply businesses is the second critical element of\nliberalization . to date , unbundling the accounts of these two businesses is\nall that has been adopted by the member states or in the candidate countries .\nin the future , the commission is likely to press all eu countries for legal\nseparation ( \u0001 & structural unbundling \u0001 8 ) of the businesses , and candidate\ncountries will have to pursue their reform of the gas sector accordingly .\ntable 1 gives an overview of the state of play in candidate countries . as the\ntable shows , the countries belonging to the second group have only very\nrecently undertaken the reform of the gas sector in accordance with the\ndirective , whereas change had been introduced earlier in the countries\nscheduled for the first wave .\n* * end * *\nfollow above url for full report .\ncome shoot the rapids with us at ceraweek 2001 , \" shooting the rapids :\nstrategies and risks for the energy future \" in houston , february 12 - 16 ,\n2001 ! for more information and to register , please visit\nhttp : / / www 20 . cera . com / ceraweek /\ne - mail category : insight\ncera knowledge area ( s ) : european gas ,\nto make changes to your cera . com account go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2000 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.838+0000", "entityId": 9519, "properties": {"text": "Subject: fyi : enron = the best\nhi vince .\ni spoke with molly mcgee down in hr - we are getting the paperwork together .\ni will send you those candidates we talked about next .\njust to let you know why i contacted you . . .\nevery student at the better universities including those in the uk - ask\neither for you or enron .\ni saw enron was voted the best company to work for out of 10 in the world\nandthere are countless articles in the financial times on enron . for this i\nam thankful to know you now !\ndid you know why my grandfather changed his name from wesloski to\nwesley ? . . . when he came from poland to work as an autoworker in\ndetroit . . . there was alot of anti - polish sentiment and he was beaten and\nintimidated to the point where he was afraid for his life and the saftey of\nthe family . he then changed the name to the english derivative from wesloski\nto \" wesley \" . nevertheless , they kicked his teeth out of his mouth and beat\nhim senseless many times . i may change it back . . . i don ' t know .\nok - i will get everything together for you and molly !\nthank you for the opportunity to work with you vince and enron .\nthank you ,\njeff\n* get free , secure online email at http : / / www . ziplip . com / *\n- private 9498132241 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.844+0000", "entityId": 9520, "properties": {"text": "Subject: re : tiger team - wharton participants\ni lied a little - 2 people from the bottom of the list did submit resumes - i\ngot discouraged and didn ' t check everyone .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\nmichele nezi marvin\n01 / 10 / 01 06 : 18 pm\nto : kristin gandy / na / enron @ enron\ncc : jeffrey a shankman / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : tiger team - wharton participants\nare these students first or second years ? if they are first years , we did\nnot have a single one submit a resume for the summer associate position .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\nkristin gandy @ enron\n01 / 03 / 01 10 : 17 am\nto : jeffrey a shankman / hou / ect @ ect , william keeney / hou / ect @ ect , catherine\nclark / hou / ect @ ect , rajesh chettiar / enron _ development @ enron _ development , tom\ndutta / hou / ect @ ect , jayshree desai / hou / ect @ ect , colin jackson / enron\ncommunications @ enron communications , laura howenstine / enron\ncommunications @ enron communications , michele nezi marvin / enron\ncommunications @ enron communications , jennifer fraser / hou / ect @ ect , natalie\nhalich / enron communications @ enron communications , ranabir\ndutt / corp / enron @ enron , teresa dyar / na / enron @ enron , jeff golden / hou / ees @ ees ,\ncharles ward / corp / enron @ enron , sarah wesner / corp / enron @ enron , li\nsun / na / enron @ enron , gillian johnson / na / enron @ enron , lisa\nconnolly / na / enron @ enron , michael j popkin / na / enron @ enron , kevin\nmcgowan / corp / enron @ enron , evan betzer / enron communications @ enron\ncommunications , jebong lee / enron communications @ enron communications , chu chu\nwang / corp / enron @ enron , brad hitch / eu / enron @ enron , betsy bassis / enron\ncommunications @ enron communications , matthew goering / hou / ect @ ect , claude\ntellis / enron @ enronxgate\ncc :\nsubject : tiger team - wharton participants\nattached below is a list of individuals that will be participating in the\ntiger team event at enron in houston on the 18 th of january . keep these\npeople in mind when it comes time to pick candidates to interview for the\nspring . call if you have any questions and i am still looking for wharton\nalum who would like to attend the dinner at churrasco ' s that same evening .\nthank you ,\nkristin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kristin gandy / na / enron on 01 / 03 / 2001\n10 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelinda mccarty\n01 / 03 / 2001 09 : 43 am\nto : kristin gandy / na / enron @ enron\ncc :\nsubject : tiger team - wharton participants\nvincent chen\nnicholas levitt\ndeepa mallik\njack rejtman\nheather thorne\ndonna piazze\nkim whitsel\ntulika bhalla\njaideep singh\nedson otani\njoshua leventhal\npat henahan\ngustavo palazzi\nclay degiacinto\nsteve lessar\nram vittal\nomar bassel\njason cummins\ndennis feerick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.849+0000", "entityId": 9521, "properties": {"text": "Subject: re : tiger team - wharton participants\nare these students first or second years ? if they are first years , we did\nnot have a single one submit a resume for the summer associate position .\nmichele nezi marvin\nmanager\nenron broadband services\n( 713 ) 853 - 6848\nkristin gandy @ enron\n01 / 03 / 01 10 : 17 am\nto : jeffrey a shankman / hou / ect @ ect , william keeney / hou / ect @ ect , catherine\nclark / hou / ect @ ect , rajesh chettiar / enron _ development @ enron _ development , tom\ndutta / hou / ect @ ect , jayshree desai / hou / ect @ ect , colin jackson / enron\ncommunications @ enron communications , laura howenstine / enron\ncommunications @ enron communications , michele nezi marvin / enron\ncommunications @ enron communications , jennifer fraser / hou / ect @ ect , natalie\nhalich / enron communications @ enron communications , ranabir\ndutt / corp / enron @ enron , teresa dyar / na / enron @ enron , jeff golden / hou / ees @ ees ,\ncharles ward / corp / enron @ enron , sarah wesner / corp / enron @ enron , li\nsun / na / enron @ enron , gillian johnson / na / enron @ enron , lisa\nconnolly / na / enron @ enron , michael j popkin / na / enron @ enron , kevin\nmcgowan / corp / enron @ enron , evan betzer / enron communications @ enron\ncommunications , jebong lee / enron communications @ enron communications , chu chu\nwang / corp / enron @ enron , brad hitch / eu / enron @ enron , betsy bassis / enron\ncommunications @ enron communications , matthew goering / hou / ect @ ect , claude\ntellis / enron @ enronxgate\ncc :\nsubject : tiger team - wharton participants\nattached below is a list of individuals that will be participating in the\ntiger team event at enron in houston on the 18 th of january . keep these\npeople in mind when it comes time to pick candidates to interview for the\nspring . call if you have any questions and i am still looking for wharton\nalum who would like to attend the dinner at churrasco ' s that same evening .\nthank you ,\nkristin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kristin gandy / na / enron on 01 / 03 / 2001\n10 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmelinda mccarty\n01 / 03 / 2001 09 : 43 am\nto : kristin gandy / na / enron @ enron\ncc :\nsubject : tiger team - wharton participants\nvincent chen\nnicholas levitt\ndeepa mallik\njack rejtman\nheather thorne\ndonna piazze\nkim whitsel\ntulika bhalla\njaideep singh\nedson otani\njoshua leventhal\npat henahan\ngustavo palazzi\nclay degiacinto\nsteve lessar\nram vittal\nomar bassel\njason cummins\ndennis feerick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.854+0000", "entityId": 9522, "properties": {"text": "Subject: re : uk portfolios and books setup in risktrac\ntanya ,\nwe have checked the risktrac system and\n( 1 ) the spreadoption , and other , mappings in risktrac are correct . ie ,\nels 1 b has both power ( ppp ) and gas ( nbp ) and the deltas / gammas tie out . the\nlolp and smp mappings all tie out .\n( 2 ) however , the uk power in risktrac has 25 twh more of power . this has\nsomething to do with the enpower - risktrac communication .\n( 3 ) uk - gas positions tie out in aggregate ( off by a single bcf )\nfor var discrepancies , other than positions , the following will contrbute\n( 1 ) in risktrac power is mapped to r 4 ( cinergy ) while in the spreadsheet it\nis us - ng .\n( 2 ) gas - power and efa - efa correlations are different .\nmatthew is coordinating with oliver and london it to resolve the position\nissues .\nnaveen\ntanya tamarchenko @ ect\n01 / 03 / 2001 02 : 09 pm\nto : naveen andrews / corp / enron @ enron , matthew adams / corp / enron @ enron\ncc : rabi de / na / enron @ enron , jaesoo lew / na / enron @ enron , vince j\nkaminski / hou / ect @ ect\nsubject : re : uk portfolios and books setup in risktrac\nnaveen and matthew ,\ni started looking systematically through uk positions and corresponding var\nnumbers in the risckrac .\ni found a few inconsistencies so far .\n1 . the portfolio elsb 1 - nbp has a book elsb 1 under it . the sum of delta\npositions for this book is\n239 , 021 , 655 , the sum of gamma positions is - 211 , 031 , 450 . var for the\nportfolio elsb 1 - nbp is zero .\nthe same refers to a few other portfolios , for example elsb 2 - nbp , elsb 3 - nbp ,\ne 2 xxl - nbp .\n2 . the portfolio elsbp 1 - ppp also has the book elsb 1 under it . this book\ncontains the positions on pppwdl\nthrough pppwd 6 and pppwel through pppwe 4 .\nthe same refers to the other books , for example elsb 2 .\nthis looks messy . can someone in rac go over all the portfolios , all the\ncorresponding books and curves\nin risktrac and make sure they are set up properly ?\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.859+0000", "entityId": 9523, "properties": {"text": "Subject: re : reminder\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 10 / 2001\n05 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 08 / 2001 01 : 10 pm\nto : sandeep kohli / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : reminder\nsandeep ,\ni am meeting jeff on tuesday , 1 : 30 .\nthe best number to reach me ( outside the office ) is my cell phone\n( always on ) : 713 410 5396 .\nmy home number is 281 367 5377 .\nvince\nsandeep kohli @ enron _ development\n01 / 06 / 2001 08 : 30 pm\nto : vince j kaminski @ ect\ncc :\nsubject : reminder\nvince ,\nbefore leaving for india i just wanted to jot you this small reminder to talk\nto jeff shankman on monday .\naside from myself , i wanted to remind you to talk about anshuman shrivastava ,\nwho is currently assistant manager in india , and has my recommendation for\npromotion to manager . he is our point person on many dpc matters , and is\nalso the person i have used on most fuel related issues . he will be a real\nasset to jeff when located in houston . sinc he is single , and quite young ,\nit will not be a problem to move him here at short notice .\ni will call you from india as soon as i get in . it will be monday evening in\nhouston at that time , so could you please jot me a note telling me what would\nbe a good number to call you on .\ni look forward to working with the team in research .\nthanks again ,\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.864+0000", "entityId": 9524, "properties": {"text": "Subject: re : sorry .\nthank you , vince . i really like your idea .\nthank you again ,\n- chonawee\nvince j kaminski @ ect\n01 / 04 / 2001 05 : 17 pm\nto : chonawee supatgiat / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : sorry .\nchonawee ,\nthis was perfectly all right . as a matter of fact i expect and encourage\nthe members of the group to disagree with me ( or anybody else )\non any subject . i am never offended by it and take it as a manifestation\nof ability to think independently and having the courage of one ' s\nconvictions .\nnobody has the monopoly on truth and nobody knows everything . the only\nway we can learn and avoid costly errors ( to ourselves and the\ncompany ) is by having open communication . in enron ,\nfacts are friendly .\nby the way , it was an excellent presentation .\nvince\nchonawee supatgiat @ enron\n01 / 04 / 2001 03 : 10 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : sorry .\nhi vince , i am sorry for correcting on the revenue of the different auctions .\nvickrey 1961 showed that all 4 kinds of auctions would yield the same\nexpected revenue to the auctioneer . ( dutch , english , first price - sealed bid ,\nand second - price sealed bid . ) in fact , the selling price is equal to the\nvaluation of the second highest bidder . for example , in vickrey auction ,\neveryone bids at his own valuation . hence , the winner pays the valuation of\nthe second highest bidder . in english auction , the second highest valuation\nbidder will stop competing if the price is above his valuation . hence , the\nwinner also gets the item at the price of the second highest valuation bidder .\nthank you for attending the meeting and giving many helpful contributions .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.868+0000", "entityId": 9525, "properties": {"text": "Subject: re : request submitted : access request for\njennifer . n . stewart @ enron . com\ni don ' t know her or anything about it . i sent her an email asking what she\nneeds .\n- - stinson\nvince j kaminski\n01 / 11 / 2001 08 : 22 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : request submitted : access request for jennifer . n . stewart @ enron . com\nstinson ,\ndo you know anything about it ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 11 / 2001\n08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem on 01 / 10 / 2001 08 : 59 : 24 am\nto : \" vince . j . kaminski @ enron . com \"\ncc :\nsubject : request submitted : access request for jennifer . n . stewart @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000013085\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 10 / 01 8 : 59 : 14 am\nrequested for : jennifer . n . stewart @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.872+0000", "entityId": 9526, "properties": {"text": "Subject: re : ca for henwood engagement\nstinson ,\nattached please find a draft consulting agreement for use with henwood .\nyou will want to review it before you send it to henwood . please see section\n6 in particular . also , i put in that arbitration will be in houston and\ntexas law will apply . we could move that to new york , with new york law if\nthat is better for henwood . if pressed , we could make it singapore or u . k .\nlaw , with arb in singapore . but any other law , including australian law ,\nwould mean we would need to get this contract reviewed by foreign counsel - - so\ni strongly urge you to argue for texas or ny law ( no other state , please ) .\ni tried to make this agreement reflect the terms in henwood ' s proposal , and\nbelieve i succeeded . our form has some additional terms not contained in\ntheir proposal , as well as fcpa boilerplate ( ie . , the \" business conduct \" and\n\" drug policy \" language ) . also , i just want to point out that this agreement\nallows them to subcontract the work - - but only with our written agreement .\nunder their proposal , the subcontractor costs will be charged to us at cost\nplus 15 % - - so you might not want to do it .\nplease let me know if you have any comments or questions .\nbonnie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.878+0000", "entityId": 9527, "properties": {"text": "Subject: re : meetings with petronas on february 8 th\neric :\nmr . nur azmin abu bakar of petronas , along with 4 of\nhis corporate risk management team will visit enron on\nthursday , february 8 th . jeff shankman and vince kaminski\nwould like to invite you to attend all or some of the\npresentations .\na tentative agenda has the petronas team meeting with\njeff and john nowlan at 10 : 00 am and then a presentation\nby david port and the rac group , followed by vince\nkaminski and the research group . vince will take the\nteam to lunch and you are invited .\nplease let me know if you plan to attend all or part of\nthe presentations and if you would like to go to lunch .\nthanks eric .\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.882+0000", "entityId": 9528, "properties": {"text": "Subject: re : progress\nsteve ,\nthanks a lot . i think that having the pseudo code will go a long way towards\nunderstanding how the system works and making sure that there are no\nbugs in translation of a business problem ( for example , complicated\ncredit insurance deals with multiple triggers and conditionality ) into the\ncode .\nregarding tanya ' s attitude . just a few points .\n1 . i don ' t think she has the skills to do the system administrator ' s work\nand she does not have the\nnecessary privileges . this explains why she keeps asking winston for help .\nit ' s\nnot that the work is beneath her .\n2 . some members of tanya ' s team came to me complaining about winston .\nhe effectively told them to go away and work on the \" research projects \"\nand that he would take care of the it issues . i don ' t think that it ' s just\ntanya ' s issue ,\nthough i agree that a more outgoing personality would be helpful .\n3 . the reality of this situation is that the internal customers beat on\ntanya and\nme whenever there is any performance problems and / or they intuitively\ndisagree with the results of a run . they could not care less about the\ndemarcation line between it and research . they also want tanya\nto sign off on the model and she cannot do it without full access to the code .\nthe bottom line is that we are in full agreement : tanya and\nwinston have to work as a team and i shall work on my end to make sure that\nit happens .\ncredit is emerging as a critical issue for enron for the next few weeks and\nthe system cannot fail .\nvince\nfrom : stephen stock / enron @ enronxgate on 01 / 11 / 2001 08 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : progress\nvince ,\ni got feedback from the lunchtime research meeting that you were talking\nabout some specific solutions to performance of it systems . . . in particular\ndistributed processing . also i heard that you had concerns about the use of\nmultiple languages etc . . . .\nboth of these sound like what i was discussing with you on previous\noccasions . . . do you feel the need to discuss these further ?\nthe multi - language issue isn ' t really that much of an issue , as the current\nsystem is 98 % java right now . although i am a big fan of c / c + + ( it is my main\ndevelopment skill ) , i am also very aware that java is a much more evolved\nand robust language . i had serious doubts about the performance , but i ' ve had\na review conducted , and the results are showing the sun unix implementation\nto be nearly as fast and in some cases faster than c / c + + because of something\nthey call hot - spot technology . ( its an instruction caching technique , i\nbelieve ) . the concerns i expressed to you , were really about how technical\npeople justify the use of a language on the strength of a relatively\nmeaningless metric like portability .\non the issue of distributed processing . . . the original review i had conducted\nby our architecture group pointed to that as a solution , and as zhiyong wei\nis already working on global valuation project , winston is actively working\nwith zhiyong to see if he can model the var architecture on that , and also to\nfind a common valuation piece between the systems .\ni ' d like the opportunity to talk to you about these issues if you have some\ntime over the next few days ?\nalso , i sat in on the tanya / winston meeting yesterday and as per our\ndiscussion at the elevator , i attempted to help her argument by suggesting to\nall present that she was trying to perform triage on the code . . . i . e .\nseperating research domain problems from it problems .\nshe said that stepping through code was the only real way in which she could\nget a feel for where performance bottlenecks were . i asked her how she would\nmeasure that , and she said she would instrument the code manually by\ninserting timing elements at strategic points . i mentioned that a profiling\ntool could probably do this job for her . tanya again said that stepping\nthrough code is the only way she can get an idea of the code , and that\nstudying documentation wasn ' t enough .\nabout 6 weeks ago , i commissioned a team to document the system down to\npsuedo - code level and will be able to provide this to you and your team soon .\n( in fact i ' ve asked for a draft copy to be given to tanya right now ) , and\nwinston is also working on a draft research / it \" working together \" document ,\nwhich will identify how the exchange of information takes place .\ntanya also gave the impression that she wants a dedicated it developer to do\nall the environment setup for her , because she doesn ' t really want to have to\ndo that . i think that this is probably the root cause of the issue . the it\nguys are working very hard and her handling of the situation is not good , as\nit gives the impression that this kind of work is beneath her . she is\nclaiming that they are un - cooperative . . . . they are claiming that she\ncontinually asks the same questions about set - up over and over again , and\ndoesn ' t seem to want to learn how to do it . winston on the other hand , could\nbe more proactive in determining what is a business related model issue and\nan it issue and ask for help from research .\ni think you debbie and i need to work quite hard to get them to play nicely .\ni have asked tanya and winston to go ahead and work very closely together\nover the next few days . . . . and debbie brackett and i will review their\nprogress on friday .\nin the meantime l ' ll be looking at setting up a working test environment that\ndoesn ' t involve my main quant guys in day to to day setup issues as a longer\nterm solution .\nregards\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.887+0000", "entityId": 9529, "properties": {"text": "Subject: meetings with petronas on february 8 th\ngood morning all :\nthe petronas meetings and presentations will be in eb 3321 on the 8 th .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 11 / 2001\n09 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 08 / 2001 12 : 06 pm\nto : rick buy / hou / ect @ ect , david port / market risk / corp / enron @ enron , john l\nnowlan / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : meeting on feb 8 , 2001\nfyi .\nthis is the list of the petronas executives visiting enron on feb 8 .\ni have invited them to lunch . would you like to join me for lunch .\ni would like to propose a short courtesy meeting at 10 with jeff / john ( 5 -\n10 minutes ) ,\nfollowed by rac / research presentation till 11 : 30 .\nvince\np . s . i shall reserve a conference room for this meeting\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 08 / 2001\n10 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nazminab @ petronas . com . my on 01 / 07 / 2001 06 : 37 : 33 pm\nto : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com ,\nkhairuddinbmjaafar @ petronas . com . my\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski\n4 members from corporate risk management unit\n1 . iqbal abdullah - general manager\n2 . nur azmin abu bakar - head , risk assessment & controls\n3 . zulkifli a rahim - head , risk measurement & systems\n4 . adnan adams - head , special projects\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 09 : 45 : 02 pm\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : re : meeting on feb 8 , 2001\ndear mr . nur azmin abu bakar ,\nthanks for your prompt reply .\nplease , let us know how many members of your team will\nvisit enron .\ni look forward to our meeting on february 8 .\nvince kaminski\nazminab @ petronas . com . my on 01 / 02 / 2001 06 : 38 : 33 pm\nto : vince . j . kaminski @ enron . com , khairuddinbmjaafar @ petronas . com . my ,\nshirley . crenshaw @ enron . com\ncc :\nsubject : re : meeting on feb 8 , 2001\ndear kaminski ,\nhappy new year and thank you for the reply . we are honored to have\nlunch with you and your team however we have another appointment at\n2 . 30 p . m .\nregards\nvince . j . kaminski @ enron . com on 03 / 01 / 2001 07 : 38 : 19 am\nto : azminab @ petronas . com . my\ncc : vince . j . kaminski @ enron . com , shirley . crenshaw @ enron . com\nsubject : meeting on feb 8 , 2001\ndear sir ,\ni would like to apologize for the delay in responding to your fax .\ni was on vacation for the last few days .\ni shall be honored to meet your delegation on thursday , february 8 at 10 : 00\na . m .\nplease , let me know if you will be free for lunch after the meeting .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.892+0000", "entityId": 9530, "properties": {"text": "Subject: re : costless collar for hanover\nbob ,\ngood job .\nzimin\nbob lee @ enron\n01 / 11 / 2001 08 : 10 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : costless collar for hanover\nfyi - looks like we ' ve converged .\nbob\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bob lee / na / enron on 01 / 11 / 2001 07 : 04 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : chris loehr @ ect on 01 / 10 / 2001 04 : 50 pm\nto : ron baker / corp / enron @ enron\ncc : anne yaeger / hou / ect @ ect , ryan siurek / corp / enron @ enron , wes\ncolwell / hou / ect @ ect , bob lee / na / enron @ enron\nsubject : costless collar for hanover\nryan and i have looked at the research model and made some adjustments .\nthe treasury rate at 12 / 28 / 00 was 5 . 127 % ( research uses 4 . 6 % which probably\ntakes into account the recent fed 50 bp cut )\nthe maturity is 6 / 30 / 03 or 2 . 5 years ( research uses 3 years )\nusing these assumptions and a 47 . 2 % volatility in the bloomberg collar\nfunction results in a ceiling of 92 103 / 256 and a floor of 34 7 / 8 . after\nadjusting the research model for the changes above , ryan and i got a similar\nrange from the research model so we are comfortable with these numbers .\nlet me know if there are any questions .\nchris\nx 33092\nron baker @ enron\n01 / 10 / 2001 10 : 52 am\nto : wes colwell / hou / ect @ ect , ryan siurek / corp / enron @ enron , chris\nloehr / hou / ect @ ect , anne yaeger / hou / ect @ ect\ncc :\nsubject : costless collar\nattached is the updated valuation from bob lee in research using the actual\n3 - year historical vol . of 47 . 2 which results in a call strike of 97 . 978 .\nalso , he has confirmed that the presence of the swap has no impact on the\nvalue of the collar . let me know if you have questions . thanks ,\nron\n- - - - - forwarded by ron baker / corp / enron on 01 / 10 / 2001 10 : 28 am - - - - -\nbob lee\n01 / 10 / 2001 08 : 44 am\nto : andrea v reed / hou / ect @ ect , ron baker / corp / enron @ enron\ncc : zimin lu / hou / ect @ ect\nsubject : costless collar\nhere ' s the calculation using the historical volatility . the strike drops\nslightly . the volatility in the calculation is the expected future\nvol ; atility - looking at traded options for hc and an expected fall off in\nvol for long dated options , one could justify a vol estimate in the range 40\n- 50 % for the collar .\nthe presence of the swap makes no difference on the collar valuation .\nbob", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.898+0000", "entityId": 9531, "properties": {"text": "Subject: re : enron , india database\nsandeep ,\n?\nwe ' ve ? completed a review ? this morning to try to fill in missing pieces ? of\ninformation on hourly load shapes , hydro dispatch history , and transactions\nfor india and have not come up with anything yet . would you know of any of\nthe above information which would ? assist us in our efforts ?\n?\nthanks ,\n?\ndavid yomogida\n?\n- - - - - original message - - - - -\nfrom : david\nto : sandeep kohli\ncc : robert schenck - australia ; vince j kaminski ; stinson gibner\nsent : wednesday , january 10 , 2001 6 : 20 pm\nsubject : enron , india database\nsandeep ,\n?\nbelow , i have summarized henwood ' s work on the india database to date .\n?\nthe \" inter _ regional links . ppt \" file shows the topology and links between\nbubbles in the our model and \" expand _ india _ data _ 011000 . xls \" details the\nexisting station information that we have compiled to date . ? total resources\nclosely match reported resources as shown in \" l & r _ 0110 . xls \" . reported india\ntotal in 1997 is 86 , 000 mw and that in the henwood database is 84 , 000 mw\nthrough 1997 .\n?\nregion\nemss database\nreported [ 1 ]\ndifference\nindia total\n84 , 103\n86 , 120\n2 , 017\n?\n?\nwe are currently working on the development of hourly load shaping , seasonal\nhydro energy allocation , and the gathering of transaction information .\nsandeep , we will try to contact you tomorrow ( thursday - - australia ? or\nwednesday - - united states ) to answer any questions that you may have on\nthis information .\n?\nsincerely ,\n?\ndavid yomogida\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.903+0000", "entityId": 9532, "properties": {"text": "Subject: energy & power risk management 2001 , houston\ndear vince ,\nit is my great pleasure to confirm your participation at energy & power risk\nmanagement 2001 on may 14 th . please take a moment to look at the current\nline - up on the attached draft program . i have held a position on the panel\ndiscussion if you wish to take part . the current talk titles are based upon\nour telephone conversations and i am happy to discuss any potential changes .\ni would like to confirm the following details by thursday , january 18 th :\nfinal talk title\nbullet points ( 5 - 6 )\nfull name , job title , company title\npostal address\ni am sure that you will agree that this year , energy & power risk management\n\u0001 , s annual event provides a wide range of highly topical sessions . i look\nforward to receiving your full presentation details and meeting you in may .\nyours sincerely ,\npaul bristow\nconferences manager , us\nrisk waters group\n270 lafayette street\nsuite 7\nnew york 10012\n212 925 6990 ext 225\npbristow @ riskwaters . com\n- revspktemp 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.907+0000", "entityId": 9533, "properties": {"text": "Subject: vince ,\ni hope you are well . until today , i did not know there was another kaminski\nat enron . perhaps you know him already but i found him in the enron address\nbook his first name is jim .\ni am enrolled in the above mandatory program and i have nominated you in the\npeer / colleague category , to provide feedback on me . i do not know the nature\nof the questions you would be required to respond to but sometime soon you\nwould receive an e - mail asking you for your input .\ni know your plate is full and life is already hectic but i thought i could\nnominate you for your input . i should be grateful if you would take some\ntime off your very hectic schedule and provide the feedback on me .\nvery many thanks ,\ntony\nenron broadband services\n713 - 853 - 3939", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.913+0000", "entityId": 9534, "properties": {"text": "Subject: fyi : forward\nhi vince ,\nthe following is what i wrote to molly as she prepares the contract for me to\nwork with enron .\ni thank you for allowing me to work with enron and will do all that i can to\nmake you happy with my candiates and performance .\nthank you for you support vince .\nwill check in soon ,\njeff\nsorry about the mix - up on the email molly .\ni hope you get this one .\nas most good corporations like enron have predefined contractual arrangements\nto do executive search business i will be happy to abide by your terms and\nrules .\nand to be quite honest - enron is about the \" best it gets \" so , i prefer to not\ndraft a contract this time or for this relationship - i will wait for yours to\nbe signed by me . the only stipulation i request of you is that upon\ncontractual performance , enron accounts payable please wire my funds to my\naccount as i have a multi - currency account denominated in usd / canadian or\nbritish pounds ( which ever fits you as i may need to pay my counterparts in\nthe uk ) . . . other than that i have no perplexities .\ni will send you my wire instructions later , either my bank in california or\nin bermuda .\nas i live in california and do contingency search , i must go off of my\nclient ' s \" good word \" on occasion and luckily haven ' t had any problems so\nfar . . . i always honor california verbal contract law - if i do not draft .\ni think you fee payment of 20 % is generous and the industry standard of 30\nday guarantee on replacement is fair . obviously there is no deposit on any\ncontingency and if there is a definite urgent need for a position to be\nfilled only then will i ask your help for a minor deposit to aid in my\noverhead to shift all my resources to search on behalf on enron .\nas enron has the in - house power to probably not need this service then\nobviously a deposit will not be required .\nif you wish me to send my standard agreement then i will , but you have made\nyourself perfectly clear by phone what you are willing to do . i therefore\nwill be happy to receive you contract and follow your instructions .\ni thank you and vince for allowing me to work with enron and pledge to you my\nbest work and candidates utilizing my network of contacts .\ni am very excited about our new relationship and hope to give you my very\nbest service .\nthank you very much for this opportunity molly , please send my your contract\nso , that i may sign it and send it right back to you immediately . i am\nlooking forward to working with vince and you .\nthank you again ,\njeff wesley\nps - i can utilize to resources of management recruiters international usa and\nrobert walters of the uk to aid in my service to you .\nbest regards ,\njeff wesley\n* get free , secure online email at http : / / www . ziplip . com / *\n- private 9498132241 original . doc\n- statement 9498132241 origina . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.918+0000", "entityId": 9535, "properties": {"text": "Subject: as promised molly\nsorry about the mix - up on the email molly .\ni hope you get this one .\nas most good corporations like enron have predefined contractual arrangements\nto do executive search business i will be happy to abide by your terms and\nrules .\nand to be quite honest - enron is about the \" best it gets \" so , i prefer to not\ndraft a contract this time or for this relationship - i will wait for yours to\nbe signed by me . the only stipulation i request of you is that upon\ncontractual performance , enron accounts payable please wire my funds to my\naccount as i have a multi - currency account denominated in usd / canadian or\nbritish pounds ( which ever fits you as i may need to pay my counterparts in\nthe uk ) . . . other than that i have no perplexities .\ni will send you my wire instructions later , either my bank in california or\nin bermuda .\nas i live in california and do contingency search , i must go off of my\nclient ' s \" good word \" on occasion and luckily haven ' t had any problems so\nfar . . . i always honor california verbal contract law - if i do not draft .\ni think you fee payment of 20 % is generous and the industry standard of 30\nday guarantee on replacement is fair . obviously there is no deposit on any\ncontingency and if there is a definite urgent need for a position to be\nfilled only then will i ask your help for a minor deposit to aid in my\noverhead to shift all my resources to search on behalf on enron .\nas enron has the in - house power to probably not need this service then\nobviously a deposit will not be required .\nif you wish me to send my standard agreement then i will , but you have made\nyourself perfectly clear by phone what you are willing to do . i therefore\nwill be happy to receive you contract and follow your instructions .\ni thank you and vince for allowing me to work with enron and pledge to you my\nbest work and candidates utilizing my network of contacts .\ni am very excited about our new relationship and hope to give you my very\nbest service .\nthank you very much for this opportunity molly , please send my your contract\nso , that i may sign it and send it right back to you immediately . i am\nlooking forward to working with vince and you .\nthank you again ,\njeff wesley\nps - i can utilize to resources of management recruiters international usa and\nrobert walters of the uk to aid in my service to you .\nbest regards ,\njeff wesley\nalways held in strict confidence .\n949 813 2241 hotline\n347 487 8957 voice / fax us\n( 011 ) + 44 ( 845 ) 3341644 uk\n- - - - - begin pgp public key block - - - - -\nversion : pgpfreeware 6 . 5 . 3 for non - commercial use\n 2 w 4 duudd 3 yisxx 8 wy 2 o 9 vpji 8 bd 8 kvbgi 2 oulwmufo 4 ozt 9 fbdxq 6 mdggzemyestsr / pogxkuayeyl 8 6 vq\nrpmynofdopnqnyej 2 + m 9 zwwyw 3 gbij 4 vktfyngoqevl 3 l 9 hg 2 l 7 lsls + 8 ywlvcqb llmkul 3 lxa 9 idp 6 bzu 9 drwdfrba 5 rdvbfylolythsp 0 zg 4 lolurfgyy + iakwe / 5 n\n78 fc 32 lczbj 8 rvsvh + qljiyisjdvambww 4 hjlzc 9 tipdtggz 6 g 5 lgg 8 dfw 74 ezsx lzsy + zzncacst / dveok / + y 4 nrumqor + qggo 9 l 9 gwpqu 5 blxenpedteczmwome 48 z\nglkh + bz 39 qcfvc + hxgi 7 ogcon / rseitrweao / sy =\n= 2 nkw\n- - - - - end pgp public key block - - - - -\n* get free , secure online email at http : / / www . ziplip . com / *\n- private 9498132241 original . doc\n- private 9498132241 original . doc\n- statement 9498132241 . pdf\n- statement 9498132241 origina . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.923+0000", "entityId": 9536, "properties": {"text": "Subject: re : hi vince\nhi jeff ,\nno problem . as soon as we have an agreement in place ,\ni shall start working with you .\nvince\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 01 / 10 / 2001 12 : 59 : 36 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : hi vince\nhi vince .\nhere is my contact info :\njeff wesley\n949 813 2241\njjw @ ziplip . com\njjw @ lokmail . net\ni work with mri usa\nand robertwalters uk\ni also underwrite my own deals .\nexample of current accounts :\npainewebber\nmerrill lynch\ncrowell weedon\ncurrent companies i work with include :\nconedison energy\nsmud ( sacramento energy )\ncalpine energy\nmorgan stanley dean whitter\njob orders sent :\nchicago mercantile exchange\nalcoa\ncournerstone energy\ni hope this makes it through the firewall !\nmy partner in london at robertwalters sent me a guy for you to browse . . . i ' ll\npop him over later .\nthanks vince !\njeff\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.930+0000", "entityId": 9537, "properties": {"text": "Subject: spring 2001 schematic\nspring 2001 faculty ,\nthe spring 2001 schematic has been posted to embanet . to access the\nschematic please open the jgsm area icon on the embanet desktop . next\nplease open the announcement jgsm icon . you will find the spring 2001\nschematic located under the subject column . please open the document . if\nyou do not have access to embanet you will need to speak with david kilgore\nat kilgore @ rice . edu or by calling david at 713 - 348 - 5378 .\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.934+0000", "entityId": 9538, "properties": {"text": "Subject: spring 2001 course schedule\nspring 2001 faculty ,\nthe spring 2001 course schedule has been posted to embanet . to access the\nschedule please open the jgsm area icon on the embanet desktop . next\nplease open the announcement jgsm icon . you will find the spring 2001\ncourse schedule located under the subject column . please open the\ndocument . if you do not have access to embanet you will need to speak with\ndavid kilgore at kilgore @ rice . edu or by calling david at 713 - 348 - 5378 .\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.939+0000", "entityId": 9539, "properties": {"text": "Subject: latest draft\nvince ,\ni have added a lot of material to \" fill in the wholes \" and would like your\nreaction to the current draft . i am still not very happy with the risk\nmanagement segment ( primarily as a result of my own lack of knowledge ) so\nplease read it carefully and get me your comments .\ni plan to let don chew ( the editor ) take a look at it to give us his\nguidance toward a successful draft .\nhope you are having a great day and tremendous start to the new year .\nyour friend\njohn\np . s . i really enjoyed your papers . those should definitely be part of a\nclass on risk management .\n- enron _ paper _ 1 _ 11 _ 01 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.947+0000", "entityId": 9540, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nweather trading\nthe weather desk closed a 3 - year precipitation collar with payouts linked to\nnatural gas prices . the transaction hedges included asian options from the\ngas market , precipitation floors from the weather market , and precipitation\ninsurance from the insurance market . eight companies were involved in the\ntransaction including the following enron companies : egm , ena , enron re , and\nrmt . along with the hedges , the end result of the transaction is cheap\n3 - year precipitation call options and precipitation dependent natural gas\ncall options for the weather desk .\nhouston pipe line company\non thursday , january 11 , american electric power ( nyse : aep ) announced that\nthey have executed a definitive agreement under which aep energy services gas\nholding co . , a wholly owned subsidiary of aep , will acquire the stock of\nhouston pipe line co . from enron corp . included in this agreement are all of\nthe pipeline assets of hpl , as well as a 30 - year operating lease for the\nbammel storage facility , the houston loop and the texas city loop .\nin the news\n\" enron is , in other words , the biggest , baddest b 2 b e - commerce company on the\nplanet , and its experience belies the idea that innovation is impossible in\nlarge organizations . \" - - ecompany now , january / february 2001 .\nbrown bag\nmark your lunch calendars now for the upcoming brown bag featuring gary\ntaylor , manager in weather trading . he will present an overview of the\nweather risk management market . it \u0001 , s next thursday , january 18 ,\n11 : 30 am - 12 : 30 pm , in 5 c 2 . rsvp today to ext . 5 - 7352 .\nnuggets & notes\n\" what am i missing ? ! \" - mike bradley , vice president / equity trading - egm\n\" do something ! \" - david vitrella , manager / equity trading - egm\n\" we may not do the most enrononline trades , but we do the largest \" - larry\ngagliardi , director / oil products - egm\n\u0001 & we have completed an efficient and successful transition from energy\noutsourcing to steel . of course , as my dad used to say , \u0001 + talk ' s cheap , takes\nmoney to buy whiskey . \u0001 , in 2001 , we ' ll let our p & l performance do the bulk of\nthe talking . \u0001 8 - tim battaglia , vice president / steel origination - eim\ncongratulations to william stuart , manager in currency trading and charla\nstuart , manager in community relations . they are the proud parents of aaron\nmyles stuart , who was born january 9 and weighed 7 . 11 lbs .\nsean keenan , associate in eim , and wife , katherine , are the proud parents of\nwilliam patrick , who was born january 1 and weighed 6 . 4 lbs .\ncarlos ruiz , associate in eim , and wife , maria , are excited to announce the\narrival of their new baby boy . cristobal ruiz was born on january 8 and\nweighed 7 lbs .\nwelcome\nnew hires\nena - thomas barkley , rakesh bharati , delmar davis , andrew edison , brendan\nfitzsimmons , patricia goode , michelle huber , ken lewchuk , wykena lipscomb ,\nalbert meyers , stacie mouton , victor munoz , wichai narongwanich , christopher\nordway , brent johnston , michael law , michelle wells , peter piorecki ,\neim \u0001 ) jill lafave\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.954+0000", "entityId": 9541, "properties": {"text": "Subject: update on energy book\nvince ,\n?\njust to let you know , the books will be shipped to both you and rice\nuniversity tomorrow by express mail , which means the books should arrive\nwithin 5 days ( depending on customs ) .\n?\nrice has purchased 25 books , and i informed them that if they don ' t sell\nthem all , we will ? credit their account ? with the amount of unsold copies . ?\ni ' ve asked them to ? give you ? any extra copies instead of returning them .\n?\nplease find attached the invoice for the 50 books .\n?\nthanks again , and if you need anything further , please let me know .\n?\njulie\n- enron 224 _ 10 _ 01 _ 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.961+0000", "entityId": 9542, "properties": {"text": "Subject: sr . director position\nvince : as you requested , i have obtained some information from norma\nrelating to the salary parameters of the sr . director position . the minimum\nsalary is $ 83 , 800 , and the maximum is $ 168 , 000 ( huge range , isn ' t it ? ) .\nhowever , norma did ask me to bring a couple of things to your attention : the\nlowest salary of a vp in your group is currently $ 140 , 000 , and the average\ndirector ' s salary in your group is $ 120 , 000 . those numbers narrow the\nrange considerably . of course , there is no equity issue since there is no\nother senior director in your group .\nhope this information helps ,\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.966+0000", "entityId": 9543, "properties": {"text": "Subject: real option conference\nvince ,\ni was brought to my attention that an interesting real option conference\nis taking place in march 27 - 28 . i would like to attend this conference\nif possible .\nthanks .\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.971+0000", "entityId": 9544, "properties": {"text": "Subject: henwood team\nfolks ,\ni have been a bit quiet here since reaching india , primarily because of the\ndelay in the arrival of the henwood team from australia .\nthey are finally arriving on sunday , and krishna is joining me in mumbai on\nsunday evening itself .\ni would like to fix a schedule to have a conference call with you on the data\nand the type fo questions that you all would like to ask .\nstinson - could you please tell me what time would be a good one for you all\nto hae a confernce call , but not earlier than monday evening , india time\n( monday morning houston time ) . please jot me a note on what would be a good\ntime for the call .\ni will work out an agenda for the call . primarily , it will be discussion of\nthe data and on what runs we should do to begin with .\nanother key part of this will be the rate case that mseb is filing , because\nthis will determine what wil be mseb ' s paymet capability in 2001 / 02 . this is\ncritical for us . we have our in - house expert who has been working on this\nfor some time now , and he will also present some of the material on that call .\nregards ,\nsandeep .\nps : : i am forwarding the basic data that henwood has sent to the whole team\nso that you have an opportunity to look at it , if you havent already got it .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.976+0000", "entityId": 9545, "properties": {"text": "Subject: india database\njim / wade ,\nas you are aware , i have been working with vince ' s group on the henwood model\ndata . the target was to have data on all india plants collected by jan . 15 th .\nwe all know that getting power out o maharashtra holds the key to being able\nto solve the dabhol challenge . with all of your help , this model can become\nthe tool that tells us exactly how that can be done , and at what prices .\nwe are a substantial part of the way there on data collection , and have got\ndata of some 1500 plants across the country . the spreadsheet for the same is\nattached . this will help you answer any questions that come up in calls\nabout the various plants . please note that we are located in the western\nregion , or wr in the spreadsheet . we will be further scrubbing the data and\ngetting more recent and accurate information , especially on maharashtra over\nthe next 2 - 3 days .\nthe henwood team will be in india on sunday , and will compare notes with the\nteam here . i am arranging for a presentation on the model and what it will\ndo .\nwade - it would be good if a broad section of the team attend , including\nneil , yourself and mohan . i will talk to you about a convenient time for you\nin this regard .\nneil & mohan - over the next week ( monday and tuesday ) i will need some time\nfrom vivek , anshuman , ravi , and a few others , to interact with the henwood\nteam . i will be abliged if you can make that possible .\nthe first phase of model runs ( which will be done by jan . end ) will just give\nus some more basic information , but i will need all of your inputs in order\nto ask the right questions . the idea is that as we go along , this model will\nbe used to answer all types of management questions concerning dabhol , and\npower evacuation out of maharashtra .\nthis will be critical for the team going forward .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.980+0000", "entityId": 9546, "properties": {"text": "Subject: a applicable model\nkim ,\nafter yestersday ' s meeting , i ' ve come up with an idea which is applicable to\nthe zone ef and\nseems also to be applicable to the broader area . the model assumes that if\nthere are positive spreads of energy\nproducts between pairs of locations , we can always find the possibilities of\nswaptions . this assumption , as\ndiscussed with jim and sean , is a reasonable approximation . i suggest that\nthe prototype be built up at this\nmodel if you think that it is rational . if you interested in the model , i\nwill explain it to all of you .\nbest regards ,\nyouyi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.985+0000", "entityId": 9547, "properties": {"text": "Subject: henwood ' s ercot symposium - registration confirmation\ndear vince ,\nthank you for registering for henwood ' s ercot symposium on january 23 , 2001 .\nwe are pleased to confirm your attendance . attached is a copy of the\nprogram agenda . as indicated , registration will begin at 9 : 30 am . the\nprogram begins at 10 : 00 am and runs until 3 : 00 pm . lunch along with\nrefreshments will be provided . demonstrations of henwood ' s software\napplications and ebusiness solutions will be available following the\nworkshop for interested parties .\ndirections to the hyatt regency houston are attached for your convenience .\nplease do not hesitate to contact me with any questions or concerns that you\nmay have .\nwe look forward to seeing you in houston !\nheather mason\nmarketing assistant\nhenwood energy services , inc .\n2710 gateway oaks dr .\nsuite 300 n\nsacramento , ca 95833\nphone : ( 916 ) 569 - 0985\nfax : ( 916 ) 569 - 0999\n- agenda version b . doc\n- hyatt directions . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.989+0000", "entityId": 9548, "properties": {"text": "Subject: request for update\nvince ,\nhopefully you have had a chance to look at mr . valverde ' s resume . please\nlet me know if you have an interest in talking with him or not .\nthank you .\njohan\njohan c . dahl\ndirector energy staffing group\nmanagement recruiters of portland , inc .\nphone : 503 - 290 - 1153\nfax : 503 - 282 - 4380\ne - mail : jdahl @ mrportland . com\nweb : http : / / www . mrportland . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.995+0000", "entityId": 9549, "properties": {"text": "Subject: asking for advice regarding summer associate position at enron\nshirley ,\nplease , set up a phone interview with him . i think both zimin and\nstinson should talk to him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 12 / 2001\n02 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : pavel zadorozhny on 01 / 12 / 2001 01 : 40 pm\nto : vince j kaminski / hou / ect @ ect , john l nowlan / hou / ect @ ect\ncc :\nsubject : asking for advice regarding summer associate position at enron\ngentlemen ,\nhere is a guy who is looking for a summer associate position . i looked at his\nresume and think that he may be worth talking to .\npavel\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pavel zadorozhny / hou / ect on 01 / 12 / 2001\n01 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndmitri villevald on 01 / 03 / 2001\n06 : 56 : 54 pm\nto : \" pavel zadorozhny ( e - mail ) \"\ncc :\nsubject : asking for advice regarding summer associate position at enron\ndear mr . zadorozhny :\nmaxim philippov suggested that i write you . being a first - year mba student\nat owen graduate school of management ( vanderbilt university ) with a finance\nconcentration , i am looking for a summer associate position at enron .\nthe area of my particular interest is enron ' s risk management products\n( commodity derivatives research and trading ) . graduating from novosibirsk\nstate university with major in physics , i am eager to apply my experience\nwith the use of theoretical and statistical physics techniques to the\nmanaging of modeling processes and creating complex financial and trading\nmodels . i strongly believe that my graduate education coupled with\nundergraduate background in physics , solid work experience in finance and\nproven entrepreneurial spirit will allow me to contribute to enron as a\nsummer associate .\ni would really appreciate your advice regarding employment opportunities at\nenron and would like to find out more about enron capital & trade resources\ncorp . i will call you within this week to follow up on my request .\nthank you very much for your time .\nsincerely ,\ndmitri villevald\nenclosure : resume\n>\np . s . looking through an example of margin risk hedging at enron ' s web site ,\ni think i found a small mistake there . url of this page is\n( producer\napplication )\nthe second sentence of the paragraph beginning with \" paradigm and enron\nexchange . . . \"\nstates the following .\nfor example , if the actual margin is $ 1 . 25 / mmbtu for a given month , then\nparadigm will pay enron $ 0 . 13 / mmbtu . alternatively , if the actual margin is\n$ 2 . 00 / mmbtu , then enron will pay paradigm $ 0 . 62 / mmbtu .\ni believe , if i am reading it correctly , the money should flow in the\nopposite direction , namely :\nfor example , if the actual margin is $ 1 . 25 / mmbtu for a given month , then\nenron will pay paradigm $ 0 . 13 / mmbtu . alternatively , if the actual margin is\n$ 2 . 00 / mmbtu , then paradigm will pay enron $ 0 . 62 / mmbtu .\nam i right ?\nagain , thank you very much for your time .\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:50.999+0000", "entityId": 9550, "properties": {"text": "Subject: re :\ni was very pleased to get your note and wish that i could be of help with\nrespect to a phd program . unfortunately our only related program here is\nin statistics . i would suggest that you contact professor sheridan titman\nat the university of texas in austin .\ngood luck ,\njohn\nat 05 : 31 pm 1 / 12 / 01 + 0600 , you wrote :\n> dear mr . martin ,\n> having visited your web page http : / / hsb . baylor . edu / html / martinj / i have\n> found information about your research paper . i have a similar area of\n> interests and i am keen to pursue a degree in finance program . i am\n> especially interested in the following areas :\n>\n> 1 . valuation of the exotics style options\n> 2 . credit portfolio models - assessment of the value at risk of a\n> non - investment grade eurobonds portfolio and contributions of the\n> individual assets to portfolio risk\n> 3 . estimation of expected default frequency for individual default risk\n>\n> if you have any open ph . d . student positions for the fall 2001 , please do\n> not hesitate to get in touch with me .\n>\n>\n> i have the following background :\n>\n> i graduated ( m . s . ) from moscow institute of physics and technology in 1998 ,\n> majoring in economics and applied mathematics , with a degree in applied\n> mathematics gpa 4 . 5 / ( 5 . 0 ) . diploma matter as \" mathematical methods in the\n> modern theory of oligopoly \" . i have three and a half years working\n> experience in bank and investment company in russia and kazakhstan . i had\n> been working on the following positions :\n>\n> 1 . trader - fixed income , equities , futures , forwards , swaps , options , money\n> market .\n>\n> 2 . analyst - estimation of the market value of illiquid equities , valuation\n> of principal protected notes and reverse convertible notes , valuation of\n> exotics options .\n>\n> 3 . risk manager - risk management in banking currency , margin and liquidity\n> risks .\n>\n> 4 . portfolio manager - management of the banking securities portfolio using\n> mathematical and statistical approach .\n>\n> articles :\n>\n> 1 . custodian ' s functions and its role in the management of securities\n> portfolios . \" securities market journal \" . june , 2000\n>\n> 2 . options as an instrument for receiving guaranteed income . \" securities\n> market journal \" . december , 2000\n> computer languages : visual basic , pascal , and fortran\n>\n> i have got the following scores :\n>\n> 1 . gre - 1810 ( v - 290 , q - 800 , a - 720 )\n>\n> 2 . toefl 563\n>\n>\n>\n> look forward to hearing from you .\n>\n> sincerely ,\n>\n> yeremenko alexey\n>\n> e - mail : aeremenko @ turanalem . almaty . kz\n>\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.004+0000", "entityId": 9551, "properties": {"text": "Subject: asking for advice regarding summer associate position at enron\ngentlemen ,\nhere is a guy who is looking for a summer associate position . i looked at his\nresume and think that he may be worth talking to .\npavel\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pavel zadorozhny / hou / ect on 01 / 12 / 2001\n01 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndmitri villevald on 01 / 03 / 2001\n06 : 56 : 54 pm\nto : \" pavel zadorozhny ( e - mail ) \"\ncc :\nsubject : asking for advice regarding summer associate position at enron\ndear mr . zadorozhny :\nmaxim philippov suggested that i write you . being a first - year mba student\nat owen graduate school of management ( vanderbilt university ) with a finance\nconcentration , i am looking for a summer associate position at enron .\nthe area of my particular interest is enron ' s risk management products\n( commodity derivatives research and trading ) . graduating from novosibirsk\nstate university with major in physics , i am eager to apply my experience\nwith the use of theoretical and statistical physics techniques to the\nmanaging of modeling processes and creating complex financial and trading\nmodels . i strongly believe that my graduate education coupled with\nundergraduate background in physics , solid work experience in finance and\nproven entrepreneurial spirit will allow me to contribute to enron as a\nsummer associate .\ni would really appreciate your advice regarding employment opportunities at\nenron and would like to find out more about enron capital & trade resources\ncorp . i will call you within this week to follow up on my request .\nthank you very much for your time .\nsincerely ,\ndmitri villevald\nenclosure : resume\n>\np . s . looking through an example of margin risk hedging at enron ' s web site ,\ni think i found a small mistake there . url of this page is\n( producer\napplication )\nthe second sentence of the paragraph beginning with \" paradigm and enron\nexchange . . . \"\nstates the following .\nfor example , if the actual margin is $ 1 . 25 / mmbtu for a given month , then\nparadigm will pay enron $ 0 . 13 / mmbtu . alternatively , if the actual margin is\n$ 2 . 00 / mmbtu , then enron will pay paradigm $ 0 . 62 / mmbtu .\ni believe , if i am reading it correctly , the money should flow in the\nopposite direction , namely :\nfor example , if the actual margin is $ 1 . 25 / mmbtu for a given month , then\nenron will pay paradigm $ 0 . 13 / mmbtu . alternatively , if the actual margin is\n$ 2 . 00 / mmbtu , then paradigm will pay enron $ 0 . 62 / mmbtu .\nam i right ?\nagain , thank you very much for your time .\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.009+0000", "entityId": 9552, "properties": {"text": "Subject: 1 candidate and 2 interns\nhi vince and molly .\nhere attached is one candidate who is particularly interested in having his\nprofile sent to vince . . . he is going to be traveling to ny from the uk soon\nfor 2 wks .\nhe specifically asked my partner at robertwalters in the uk to investigate\nenron through my new relationship with you guys . he would be howard haughton ,\nattached below ( cv ) .\nthe other 2 resumes are my students at the university of michigan . howard lin\nreceived a 4 . 0 / 4 . 0 for his last term and will be willing to do whatever it\ntakes to intern at enron for june - aug . i have his picture included as well .\nthe second is sung , they are friends . howy will be done expected in may 2001\nand sung in may 2002 . they are my favorite interns and i expect they can be\ncultivated to the enron culture with no real cost to you ( a \" test drive\nbefore committal . i have agreed to represent them and\nshall take ownership , as they become graduate candidates upon their degree\ncompletion .\ni hope these attachment can represent my value and commitment to quality of\ntalent to enron .\nthank you for your acceptance .\nbest wishes for the weekend .\njeff\n* get free , secure online email at http : / / www . ziplip . com / *\n- 00343938 alec . doc\n- sungvince . doc\n- howardagent 9498132241 . doc\n- howardlin . gif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.013+0000", "entityId": 9553, "properties": {"text": "Subject: ( no subject )\ndear dr . kaminski :\ni am sending the attached letter and a copy of my resume for my application\nas a summer intern at enron at the suggestion of my father edward kao . if you\nneed additional information , please feel free to contact me .\nsincerely ,\ncandice kao\np . s . i am sending a hardcopy of my letter and resume to you today . thank you\nonce again .\n- letter to kaminski . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.018+0000", "entityId": 9554, "properties": {"text": "Subject: interview schedule for japan office\ntanya ,\nyou and i will interview yumi , a candidate for darren delage in tokyo office .\nthe time is scheduled at 4 : 50 pm next tuesday in my office . i will get the\nresume\nbefore the interview . please mark the interview time on your schedule .\nthanks .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 01 / 12 / 2001 09 : 00 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : darren delage @ enron on 01 / 12 / 2001 11 : 59 am ze 9\nto : \" mm 21 yumi \"\ncc : zimin lu / hou / ect @ ect\nsubject : re : next tuesday\ngood afternoon imokawa - san ,\nwe would like to invite you to have a brief dialogue with some members of our\nresearch team . they would like to ask you to briefly expound on your\nmathematical studies . if you could please contact them next wednesday at\n7 : 50 am ( it should be 4 : 50 pm houston time , tuesday ) . the conversation should\ntake no more than 20 minutes of your time , and will enable us to get a more\nenhanced understanding of your quantitative abilities .\nzimin lu , director of research , can be reached at 713 - 853 - 6388\nto dial from japan , 0061 - 1 - 713 - 853 - 6388\nif you could please send zimin a copy of your resume before the interview ,\nthat would be much appreciated . you can call the above number to obtain the\nappropriate fax number .\ni will be in touch with you shortly thereafter .\nsincerely ,\ndarren\n\" mm 21 yumi \"\n01 / 11 / 2001 08 : 35 pm\nto :\ncc :\nsubject : thank you\ndarren , thank you for cordinating everything .\ni understand it takes time , this is\nonly the first week of the year in japan , and i do not like to\npush you much . normally , i have long meetings every thursday .\nfor other dates , i make best effort to fit the schedule for\nyour convenience , including early morning or late evening .\ni am looking forward to seeing you sometime soon .\nsincerely ,\nyumi imokawa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.025+0000", "entityId": 9555, "properties": {"text": "Subject: tiger team\nhi vince ,\nre : my voice mail sent earlier today , i think this is the group requesting\nthe telephone conference .\nthey prefer a call tuesday , 16 jan , after 2 pm .\nlet me know !\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 12 / 2001\n09 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" vittal , maheshram \" on 12 / 26 / 2000 10 : 59 : 38 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc : \" ' christie . patrick @ enron . com ' \"\nsubject : re : houston trip\ndear vince / christie ,\nthanks for coming to philadelphia to present an overview of the projects . we\nenjoyed meeting you and your colleagues and look forward to working with\nenron . i would also like to pass on my team ' s appreciation for the dinner as\nwell .\nwe wanted to give you an update on our project and get some feedback and\nadditional information prior to our upcoming visit to houston on january\n19 th . our project is going to be geared to the 3 rd option you mentioned . we\nplan on addressing some part of the retail energy services business . we are\nconsidering two options regarding this topic and would like to pursue either\n( i ) how customers are acquired and recommending new processes and ways to\nserve retail customers , or\n( ii ) studying the supply chain and coming up with recommendations for areas\nfor further investments .\nhowever , we would like to get some more information on the retail energy\nservices before truly scoping the project . we are also very open to\nsuggestions , especially if you had a much broader or different scope in mind ;\nso please let us know .\nwe have not yet reviewed the introductory information received last week , but\nhere are the questions we have specific to the retail energy services unit :\ncan we look at its overall business plan or a more detailed summary than is\nin the annual report ?\nwhat is the pricing philosophy / overall structure ?\nwho are the customers and how are they acquired ?\nwhat would the customers be doing if they did not work with enron ?\nwhat are the international expansion plans and capabilities ?\nis there any important regulatory summary information we can have ?\nif this information is not already covered in the review material you sent ,\nwill you be able recommend other sources where we may find such information ?\nafter we have reviewed the material sent to us recently , we may want to\nschedule a phone call with you and / or one of your colleagues directly\ninvolved in the retail energy services business . i would like to call you in\nthe new year to discuss this further . in the meantime , please feel free to\ncall me at ( 215 ) 546 - 9416 if you need any information .\nregards ,\nretail energy services tiger team\nram\ndennis\njason\nomar\nsteve\nclay", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.030+0000", "entityId": 9556, "properties": {"text": "Subject: managing director and vice president elections\nthe managing director prc committee met this week to elect individuals to\nmanaging director and vice president positions . these employees are\nrecognized as outstanding contributors to the organization , whose individual\nefforts have been instrumental in the continued success and growth of the\ncompany . we are pleased to announce the election of the following new\nmanaging directors and vice presidents . please join us in congratulating\nthese individuals on their new appointments .\nmanaging director \u0001 ) commercial\nphillip k . allen , ena ( ews ) west gas trading - houston\nfranklin r . bay , ebs entertainment on demand - houston\ntimothy n . belden , ena ( ews ) \u0001 ) west power trading - portland\nmichael r . brown , eel \u0001 ) executive - london\nchristopher f . calger , ena ( ews ) west power origination - portland\njoseph m . deffner , ena ( ews ) treasury & funding - houston\ntimothy j . detmering , ena ( ews ) corporate development - houston\nwilliam d . duran , ena ( ews ) generation investments - houston\nrobert s . gahn , ees commodity structuring - houston\nkevin c . garland , ebs broadband ventures - houston\nben f . glisan , jr . , corporate \u0001 ) global equity markets - houston\nrobert e . hayes , ets comm marketing - houston\nphillip r . milnthorp , ena ( ews ) canada origination & trading - calgary\nmanaging director \u0001 ) commercial support\nsally w . beck , enw ( ews ) energy operations management - houston\nfernley dyson , eel finance & support services - london\nvice president \u0001 ) commercial\ngregory adams , ees mmc management - houston\nrobert bayley , eel - uk origination \u0001 ) london\njack d . boatman , ets market development \u0001 ) houston\nrhenn cherry , ees assets / labor \u0001 ) houston\nniamh clarke , egm ( ews ) liquids trading \u0001 ) london\npeter crilly , eel - uk origination \u0001 ) london\nderek j . davies , ena ( ews ) canada origination \u0001 ) calgary\nmark d . davis , jr . , ena ( ews ) east power trading \u0001 ) houston\ncharles delacey , corporate finance \u0001 ) houston\npaul devries , ena ( ews ) canada origination \u0001 ) toronto\nchristopher h . foster , ena ( ews ) west power trading \u0001 ) portland\njeffrey f . golden , ees corporate development \u0001 ) houston\nmichael d . grigsby , ena west gas trading group - houston\ntroy a . henry , ees bundled sales - heavy industrial \u0001 ) houston\nrogers herndon , ena ( ews ) east power trading \u0001 ) houston\njames w . lewis , ees underwriting \u0001 ) houston\nchristopher mahoney , egm ( ews ) liquids trading \u0001 ) london\nandrew marsden , ebs broadband ventures \u0001 ) london\njohn mcclain , ebs broadband wholesale origination \u0001 ) houston\nkevin j . mcgowan , egm ( ews ) american coal \u0001 ) houston\nalbert e . mcmichael , jr . , ena ( ews ) gas commodity structuring \u0001 ) houston\nermes i . melinchon , central america origination \u0001 ) houston\nsteven r . meyers , ees consumption \u0001 ) houston\nlloyd d . miller , ena ( ews ) portfolio management \u0001 ) houston\nmichael a . miller , wind development / execution - general administration \u0001 )\nhouston\nmarcello romano , ebs eel - broadband trading \u0001 ) london\ndavid a . samuels , enw ( ews ) enrononline - houston\nper a . sekse , egm ( ews ) global risk markets \u0001 ) new york\nedward s . smida , ebs video on demand \u0001 ) houston\nmark tawney , egm ( ews ) weather trading \u0001 ) houston\njon thomsen , ebs business development \u0001 ) latin america / canada \u0001 ) portland\nbarry l . tycholiz , ena ( ews ) west gas origination - houston\nfrank w . vickers , ena ( ews ) east gas origination \u0001 ) houston\namit walia , corporate , corporate development \u0001 ) houston\nwilliam white , ebs global bandwidth risk mgmt \u0001 ) houston\njonathan whitehead , eel ea trading \u0001 ) japan\nmark whitt , ena ( ews ) west gas origination \u0001 ) denver\njohn a . zufferli , ena ( ews ) canada power trading - calgary\nvice president \u0001 ) commercial support\nbeth apollo , eel financial operations executive \u0001 ) london\nmarla barnard , ebs human resources \u0001 ) houston\nkaren l . denne , corporate , public relations \u0001 ) houston\ngeorganne m . hodges , ena ( ews ) trading , origination & power plant accounting\n\u0001 ) houston\nphillip lord , eel transaction support \u0001 ) london\npeggy mahoney , ees marketing \u0001 ) communication \u0001 ) houston\nsteven montovano , corporate , government & regulatory affairs \u0001 ) dublin\nlaura scott , ena ( ews ) canada accounting \u0001 ) calgary\nrichard c . sherman , ena ( ews ) transaction support \u0001 ) houston\ngregory w . stubblefield , ees financial planning & reporting \u0001 ) houston\ndennis d . vegas , calme international public relations \u0001 ) houston\nvice president \u0001 ) specialized technical\nsami arap sobrinho , esa ( ews ) legal \u0001 ) houston\nmerat bagha , ebs sales engineering \u0001 ) houston\njustin boyd , eel legal \u0001 ) london\nmary nell browning , ebs legal \u0001 ) london\njonathan chapman , eel legal \u0001 ) london\nrobert d . eickenroht , corporate , legal \u0001 ) houston\nmark evans , eel legal \u0001 ) london\ndavid forster , enw ( ews ) enrononline \u0001 ) houston\njanine juggins , eel tax \u0001 ) london\npeter c . keohane , ena ( ews ) canada legal \u0001 ) calgary\npinnamaneni v . krishnarao , ena ( ews ) research group \u0001 ) houston\ntravis c . mccullough , ena ( ews ) finance origination , mergers / acquisitions \u0001 )\nhouston\nmichael popkin , esa ( ews ) sa - risk management / network integration \u0001 ) houston\nelizabeth a . sager , ena ( ews ) physical trading \u0001 ) houston\nrichard b . sanders , ena ( ews ) litigation \u0001 ) houston\njohn w . schwartzenburg , eecc legal \u0001 ) houston\nmichael d . smith , ees legal \u0001 ) houston\nmarcus vonbock und polach , eel legal \u0001 ) london\njay c . webb , enw ( ews ) enrononline systems \u0001 ) houston\nvice president \u0001 ) technical\ndonald r . hawkins , ets quality management \u0001 ) houston\njohn r . keller , ets engineering & construction \u0001 ) houston", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.034+0000", "entityId": 9557, "properties": {"text": "Subject: please note that the date for the lst meeting is january 16\nshirley ,\nplease put it on my calendar .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 12 / 2001\n02 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njennifer burns\n01 / 12 / 2001 12 : 46 pm\nto : phillip k allen / hou / ect @ ect , john arnold / hou / ect @ ect , michael w\nbradley / hou / ect @ ect , jennifer fraser / hou / ect @ ect , mike grigsby / hou / ect @ ect ,\nadam gross / hou / ect @ ect , rogers herndon / hou / ect @ ect , john j\nlavorato / corp / enron @ enron , kevin mcgowan / corp / enron @ enron , vince j\nkaminski / hou / ect @ ect , john l nowlan / hou / ect @ ect , kevin m presto / hou / ect @ ect ,\nfletcher j sturm / hou / ect @ ect , hunter s shively / hou / ect @ ect , bill\nwhite / na / enron @ enron\ncc : jeffrey a shankman / hou / ect @ ect , gary hickerson / hou / ect @ ect\nsubject : please note that the date for the lst meeting is january 16\nas mentioned during the fourth quarter , gary and i would like to begin\nregular meetings of our trader ' s roundtable . the ideas generated from this\ngroup should be longer term trading opportunities for enron covering the\nmarkets we manage . in addition , this forum will provide for cross commodity\neducation , insight into many areas of enron ' s businesses , and promote\naggressive ideas .\neach week , we ' ll summarize commodity trading activity , and provide an open\nforum for discussion . your input is valuable , and we ' ve limited this group\nto our most experienced traders , and would appreciate regular participation .\nour first meeting will be tuesday , january 16 at 4 : 00 pm in eb 3321 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.039+0000", "entityId": 9558, "properties": {"text": "Subject: first derivatives class\nbob ,\ni have asked martin , zimin , and paulo to prepare short presentations on the\npower , gas , and crude markets , respectively . this will take probably 45\nminutes of class time . in addition i will prepare some lecture\nmaterial . if we don ' t have enough class time to cover all assigned\nproblems , we can just roll them to the next class .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.044+0000", "entityId": 9559, "properties": {"text": "Subject: research re - org\nplease let me know of any corrections .\n- - stinson\nteams reporting to krishna , tanya , mike , and maureen have no changes .\nena / egm / eim support to be primarily organized by type of support rather than\nby business line under stinson and vasant :\nstinson\n( ebs )\nmartin lin ( * ) , shalesh ganjoo , chonawee supatgiat , iris mack\n( option pricing )\nzimin lu , alex huang , tom halliburton , bob lee , paulo issler , ken\nparkhill , tom barkley , hector campos\nvasant\n( power )\nmartin lin ( * ) , lance cunningham , sevil yaman\n( risk and market analysis )\namitava dhar , joe hrgovcic , nelson neale , kate lucas\n( * ) martin to have the option of maintaining ties to ebs or to gradually move\nto mainly power fundamentals .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.051+0000", "entityId": 9560, "properties": {"text": "Subject: hrgovcic , hrvoje\nplease incease the bonus for hrgovcic in vince kaminski ' s research group for\na total of $ 75 , 000 . the difference of $ 47 , 500 should be charged to jeff\nshankmans cost center . this request was prompted by jeff shankman and vince\nkaminski .\nnorma villarreal\news generalist\nx 31545", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.060+0000", "entityId": 9561, "properties": {"text": "Subject: points for singh meet\nvince ,\nplease find below a note i had prepared for wade cline who is meeting with a\nrepresentative of the prime minister ' s office tomorrow .\ni think you may find these points useful .\nadditionally , i am attaching a copy of a small presentation i made , saturday\nin mumbai on roadblocks in the power sector with special reference to wat\nneeds to be done to start trading ( & its benefits ) .\ni have been working with the henwood team that arrived today , and i think a\ngood part of the data is now in place . i will be arranging meeting with some\nofficicals from the transmission side and gather any additional data there\ntoo .\nkrishan got in last night ( i conveyed your best wishes to him ) . we will\nhopefully have a useful day with henwood folks tomorrow . i look forward to\nbeing in houston , possibly by the end of the coming week .\nhope you and the team are doing well ! !\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 15 / 2001 01 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli\n01 / 15 / 2001 01 : 17 am\nto : wade cline / enron _ development @ enron _ development\ncc :\nsubject : points for singh meet\nwade ,\nplease find below a brief note on what i feel your tack should be with\nn . k . singh ( who is supposed to be a hard negotiator ) . i am assuming here that\nthis will be more of an introductory meeting where both sides are feeling out\nthe other . the two meetings i had arranged over the weekend , would\nhopefully , have given you a better idea of the thinking of at least these two\npeople o the issue .\nincidentally , in the indian system , the governor of any state is a central\ngovernment nominee . he is the eyes and ears of the central govt . in the\nstate . please see basak ' s meeting in that light . the message he takes will\nlikely go directly to the pmo in delhi . i will therefore be working closely\nto convey the right impression .\nfor n . k . singh clearly there are three things you would try to convey :\na description of the problem ,\nsome of the resultant consequences if it is not solved soon enough , and\nconveying the fact that there are win - win solutions well within the goi ' s\npower to implement , that would in fact enhance his reputation and the\ncountry ' s as one that lives up to its reputation\ni would be careful to make the point that we are not going to give up any\nvalue , but are willing to be accomodative to mseb , gom , and goi needs , either\nthrough financial re - engineering , or through getting direct access to the\nmarket in some areas . this will also fly well with enron management that is\nmore comfortable with market risks than political .\ndescribing the problem\ndpc has a ppa , backed by goi mseb ' s\nmonthy collections not improving - are in the range of rs . 900 cr . / month\nmseb , and gom clearly do not have the resources , in the short run ( 3 - 5 yrs . )\nto meet these obligations ; hence central intervention is needed .\nin a grid of 13000 mw ( maharashtra grid size ) , absorbing an additional 1440\nmw ( phase ii ) at one go is difficult ; however if we take western region , grid\nsize is 42000 mw . clearly absorbing all the power in that framework is much\neasier .\nto this if we add northern and southern grids , we can probably evacuate out\nanother 500 - 700 mw through the interconnects . hence , there is definitely\nvalue in looking at this issue at a national level .\nadditionally , it is not just solvable at that level , but actually answers to\nthe crying need for power in the country , and hence is a boon for the govt . ,\nand should be treated as such .\nconsequences of not solving the problem\nwe can call upon the sovereign guarantee , which will cover our partial\npayments . however , this would almost definitely lead to a deterioration of\nthe country ' s credit rating - put back incoming investments into the\npetroleum sector ( where private participation program is about to be unveiled\nin 25 o we need to get someone to negotiate with . please use\nyour good offices to quickly form a representative group that includes\ncentral , state govt . , and seb representatives so that we can work on the\nsolution .\nwithout active participation from pm ' s office , we are likely to waste\nprecious time bouncing between the seb , gom , and various ministries of goi .\nhope this helps .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.067+0000", "entityId": 9562, "properties": {"text": "Subject: hi\nhi shirley & vince :\nhappy new year ! i am in our bombay offices for a couple of days , so am able\nto contact you . for some reason , the modem dialup from my computer hasn ' t\nbeen working . hope everything is going well in houston . anitha & i have good\nnews . we are having our second baby . it was confirmed after we came to india .\nshirley , i have a favor to ask you on this matter . can you make an\nappointment for anitha with her doctor ? the details are as follows :\ndr . dolar patolia\ntel : 713 - 756 - 5500\nname : anitha kakani\ndates : jan 29 th or 31 st .\ntimes : in order of preferance , after 3 pm , 12 - 3 pm , 10 am - 12 noon .\nreason : pregnant with due date of aug 8 th . needs a full checkup .\nanitha is having severe nausea , so she is taking rest most of the time .\npallavi and i are enjoing our vacation thoroughly .\nthanks and best wishes ,\nkrishna .\nph . 011 - 91 - 40 - 7114833\nps : please count jan 16 th & 17 th as working days for me .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.072+0000", "entityId": 9563, "properties": {"text": "Subject: re : i will miss the tuesday staff meeting\nosman ,\nvasant is setting up a meeting to review the credit\nmodels with ees . please , call - in or\nattend when the meeting is set .\nvince\nosman sezgen @ ees\n01 / 15 / 2001 02 : 49 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : i will miss the tuesday staff meeting\nvince ,\ni will not be able to attend the meeting . here are some updates :\n1 ) i left a message to george posey , i will follow up tomorrow ( tuesday ) ,\n2 ) i will follow up on the credit reserve issue asap , i will find out what the\npresent state of the models are and come up with modification requirements\nto accomodate asset related projects .\n3 ) this week i will need to spend much of my time in meeting with the\nbreakthrough\nfolks . they are at a stage where\nour contribution is being defined and specifies ( curves , components , etc . ) .\nif you\nwould like to contact me urgently , please leave a phone message instead of\ne - mail - -\ni will be checking my phone messages more frequently .\n4 ) we have a var meeting with rac on eam issues wednesday at lpm .\n5 ) other issues are covered in my project list .\nregards ,\nosman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.076+0000", "entityId": 9564, "properties": {"text": "Subject: to basak\nvince ,\nplease find attached a small note i had prepared at wade ' s request . the note\nis to be used for a private meeting of the ex - chairman of mseb with the\ngovernor of maharashtra . in the indian system , the governor represents the\nfederal government in the state . hence any information he gathers is for the\ncentral govt .\nthis informal note is to be passed to him . the focus as you will see is to\nsee if we can engage the central govt . through this route .\nkrishna is here and sends his regards .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 16 / 2001 08 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli\n01 / 16 / 2001 08 : 51 am\nto : wade cline / enron _ development @ enron _ development\ncc :\nsubject : to basak\nwade ,\nplease find the note attached for mr . basak . the tariff data is all from the\ninformation sheet put out by mohan , so you should have no conflicts .\ni have tried to give it the appropriate spin .\nlet me know if there is something you would like to do differently on this .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.081+0000", "entityId": 9565, "properties": {"text": "Subject: california power 1 / 15 / 01\nvince - kristin mentioned that you might be interested in receiving our daily\nupdates on the california situation . hope that you are doing well and let us\nknow if you require any additional information .\nrj\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert johnston / hou / ect on 01 / 16 / 2001\n08 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrobert johnston\n01 / 15 / 2001 09 : 10 pm\nto : michelle d cisneros / hou / ect @ ect\ncc : gary hickerson / hou / ect @ ect , james d steffes / na / enron @ enron , richard\nshapiro / na / enron @ enron , jaime gualy / na / enron @ enron , john greene / lon / ect @ ect ,\njeff kinneman / hou / ect @ ect , kristin walsh / hou / ect @ ect , scott\ntholan / corp / enron @ enron\nsubject : california power 1 / 15 / 01\nas talks continued toward the tuesday deadline markets have been focused on\nfor the california electricity crisis , state officials around governor gray\ndavis have\ntoughened up their rhetoric on a couple of fronts even as they confirmed\nthey would be in the market as early as tuesday taking bids for energy to be\npaid by the\nstate of california . one problem on that front is still how much producers\nwant to charge the state for electricity . as we reported last week , davis and\nhis aides\nwant to pay around $ 50 to $ 55 dollars per megawatt hour and suppliers want\nabout $ 75 . treasury secretary summers has suggested an auction as the best\nway to\ndetermine the price , but california officials are taking a less free market\napproach and still hope to set the price through negotiation over long - term\ncontracts .\nour sources in washington , sacramento , and california are increasingly of the\nview that governor davis is positioning his government to establish long - term\npower contracts with the generators that could be passed through to the\nutilities following a bankruptcy in the near term . this week ' s legislative\nactivities\nin sacramento will create the vehicle to do so . state credit backing\npurchases of power would obviate the need for super - priority borrowing to\nfinance power\npurchases after utility bankruptcy .\n1 . audit - untangling utility relationships\ncalifornia officials have also toughened their rhetoric on the debt repayment\nfront as they say results from a preliminary audit show that\nhalf of the $ 9 to $ 12 billion the utilities say they owe is actually owed to\nthemselves for power they bought from their corporate relations\nthis strange situation is due to the fact that one holding company owns both\nthe power - generating and power - distributing companies under a\nholding company umbrella . of course , that means that some of the power pg & e\nand southern california edison bought at highly inflated prices\nwas bought from themselves .\nbut it was not all bad news in the tense negotiations . sources confirm that\ndavis increasingly understood that the state finance role was a crucial part\nof any\npotential solution . he told our sources this afternoon that he is willing to\nuse state credit to eliminate the \" risky debt \" premium that pg & e\nand sce are being charged by suppliers because of their shaky finances and\nthat he is willing to extend the current 10 % rate increase\nutility customers are paying far beyond the initial 90 - day deadline . in\nreturn he is demanding that the companies prepare to \" share the\nburden of debt reduction in return for state help and credit extension . \"\n2 . debt restructuring - guarantees , but no direct state money\ndavis also told the videoconference that he believes the $ 12 billion in back\ndebt owed by the utility companies can be cleared up\nduring a 90 - day forbearance period ( whether that period has been agreed to by\nall creditors is not something we are clear about right now ) . davis ' idea , as\nhe laid it out in the meeting , is to use the forbearance period to securitize\nthe debts and sell them against the utilities ' forward rate base or by\nestablishing a\nmedium - term repayment plan backed by continued state guarantees .\nin both cases the restructured debt would be resolved over a decade without\ndirect use of taxpayer money as the utilities use their positive margins to\npaydown their debt . one of the reasons davis wants to stay close to the\n$ 50 - $ 55 megawatt charge is that it maximizes the rate at which utilities can\npay\ndown this debt . there is a strong chance that davis will agree to use state\nguarantees to sweeten the pot at the end of these negotiations , but he remains\nopposed to using direct state money . this frustrates both clinton\nadministration and utility creditors , but davis has not yet shown much\nflexibility .\n3 . eminent domain / reregulation\nperhaps most frustrating to the washington dc free market crowd at treasury\nand the white house was the continued comfort davis and his group of political\nadvisers have with \" non - market \" solutions to the energy crisis . although\nthe governor ' s aides actually believe the weapon is more a \" way to force\neventual\nagreement , than an actual solution , \" the talk returns frequently to these\nnon - market mechanisms . \" we have the ultimate weapon to enforce compliance by\nthe\ntuesday deadline . if we make no progress . if this thing looks like it will\nturn into a genuine crisis , then we will use our powers of condemnation and\nwe will re - take\nthe plants and equipment and run them ourselves , \" a close political aide to\ndavis said . \" we will absorb the plants , the transmission lines and the\nreserved parking\nplaces of the executives . the legislature would agree in a second . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.086+0000", "entityId": 9566, "properties": {"text": "Subject: hvince , edge effectiveness testing for fas 133\nvince ,\nas we discussed , subject to minor changes the attached paper will appear in\nthe j of applied corporate planning . i ' d be most interested in your\ncomments .\nby the way , if you like the yield curve generation process described in the\npaper , we ' d be happy to perform a simulation , so that you can compare the\nresults based on the to the hjm procees .\ni look forward to getting together with you when you come to ny to attend\nthe garp conference , around february 13 . just give me a brief warning .\nregards ,\nandy\nandrew kalotay associates , inc .\n( 212 ) 482 - 0900\nandy @ kalotay . com\nvisit our web - site http : / / www . kalotay . com\n- fasl 33 article . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.090+0000", "entityId": 9567, "properties": {"text": "Subject: collaborative effort\nvince : i am very enthusiastic about your interest and possible\ncontributions towards a 22 nd century human blood system . i have\nattached a letter that discusses the endeavor . please note that it has\na built - in automatic release in the event you need to terminate . it has\na confidentiality statement as well . if it is acceptable , please sign\nit and fax it back to me at 713 965 2114 at your earliest convenience .\nal arfsten\n- kaminski acceptance 011601 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.096+0000", "entityId": 9568, "properties": {"text": "Subject: re : summer associate position at enron\nhi dmitri :\nthank you for responding so quickly .\ni have scheduled the telephone interview for wednesday , january 31 st\nat 3 : 30 pm ( houston time ) . you may be ahead one hour ? the interview\nwill be for approximately 1 hour .\nthe research group that will be interviewing you will be :\nvince kaminski managing director\nstinson gibner vice president\nzimin lu director\nwe will call you at 615 - 496 - 1132 . if anything changes , please let me know .\nthanks dmitri .\nsincerely ,\nshirley crenshaw\ndmitri villevald on 01 / 16 / 2001\n11 : 42 : 05 pm\nto : \" ' shirley . crenshaw @ enron . com ' \"\ncc :\nsubject : re : summer associate position at enron\ndear ms . crenshaw :\nthank you for choosing me for the telephone interview . it is a great honor\nfor me to be interviewed by enron research group professionals . i will be\navailable for the interview on january 25 th - 26 th , january 29 th - 31 st\nanytime from 3 : 00 pm to 6 : 00 pm . please let me know which time is the most\nconvenient for you . you can reach me by telephone ( home : 615 - 292 - 7122 ) .\nalso , i am always available at my cell phone ( 615 - 496 - 1132 ) .\nto make sure that i will do my best during the interview , i will greatly\nappreciate if you provide me with some details on the interview structure\nand the type of questions i could expect .\nagain , thank you very much for the great opportunity to demonstrate and\nprove my credentials , interest and desire to work for enron during this\nsummer . i am excited about the prospect of applying my skills at enron\nresearch group as a summer associate . if i can provide more information or\nanswer additional questions , please , contact me either by telephone\n( 615 - 496 - 1132 ) or via e - mail ( dmitri . villevald @ owen 2002 . vanderbilt . edu ) .\nsincerely ,\ndmitri villevald\n- - - - - original message - - - - -\nfrom : shirley . crenshaw @ enron . com [ mailto : shirley . crenshaw @ enron . com ]\nsent : tuesday , january 16 , 2001 9 : 40 am\nto : dmitri villevald\nsubject : summer associate position at enron\ngood morning dmitri :\nyour resume was forwarded to the research group with enron by pavel\nzadorozhny . they would like to conduct a telephone interview with you\nat your convenience sometime within the next two weeks . it will be a\nconference call and will include several of the research group .\nthis will determine where you might fit for the summer program .\nplease let me know some times that would be convenient for you and the\ntelephone number that you can be reached at .\nsincerely ,\nshirley crenshaw\nadminsitrative coordinator\nenron research group\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.101+0000", "entityId": 9569, "properties": {"text": "Subject: re : qian ( frank ) feng interview with the research group\nshirley : we ' ve also been in touch with frank . he wasn ' t going to receive\nhis class schedule until yesterday , so we will follow up today and find a\nmutually convenient date .\nmolly\nshirley crenshaw\n01 / 16 / 2001 09 : 51 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kevin kindall / corp / enron @ enron , bob\nlee / na / enron @ enron\nsubject : re : qian ( frank ) feng interview with the research group\nhi molly :\ni guess it is time to try and schedule frank ' s interview . we would like to\nbring him in sometime around the first of february ( when krishna returns ) .\nplease contact him and see what a good time for him would be .\nattached is his resume and interview request form .\n- enron _ resume . doc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 16 / 2001\n09 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : molly magee 12 / 20 / 2000 05 : 35 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : qian ( frank ) feng interview with the research group\nyou , too , shirley . we ' ll be back in touch .\nmolly\nshirley crenshaw\n12 / 20 / 2000 02 : 07 pm\nto : cheryl arguijo / enron _ development @ enron _ development , molly\nmagee / hou / ect @ ect\ncc :\nsubject : qian ( frank ) feng interview with the research group\nhello molly and cheryl :\nattached is frank ' s resume . we still have quite a bit of time as we want to\nschedule this for after krishna returns on the 25 th of january .\nthis position would be for the research group directly , and would include\nall of vince ' s direct reports .\nthanks and merry christmas and happy new year ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.105+0000", "entityId": 9570, "properties": {"text": "Subject: re : interview schedule for punit rawal\nshirley : i have been in touch with punit over the past several week , and it\nappears that february 2 nd would suit his schedule best for the visit . how\ndoes that date look for vince and the others in the group who will be\ninterviewing him ?\nstephanie cody , my new admin whom you met last week , will be contacting punit\nto make his travel arrangements .\nmolly\nshirley crenshaw\n01 / 16 / 2001 09 : 24 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kevin kindall / corp / enron @ enron , bob\nlee / na / enron @ enron\nsubject : interview schedule for punit rawal\nhi molly :\npunit rawal is a carnegie mellon student that kevin kindall and bob lee\ninterviewed back in december . we would like to bring him in for an\ninterview . he is definately a \" trading support \" prospect .\ni forwarded his resume to john lavorato back in december and inquired\nas to whether he would be interested in interviewing him or not , but have\nhad no response , except that he has not had a chance to look at his\nresume yet .\nvince originally said that either john or gary hickerson might be interested .\ni did not send his resume to gary , maybe you can check with him ?\ni am attaching the interview request form and his resume . thanks !\nshirley\n- punit + rawal + newresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.110+0000", "entityId": 9571, "properties": {"text": "Subject: re : qian ( frank ) feng interview with the research group\nhi molly :\ni guess it is time to try and schedule frank ' s interview . we would like to\nbring him in sometime around the first of february ( when krishna returns ) .\nplease contact him and see what a good time for him would be .\nattached is his resume and interview request form .\n- enron _ resume . doc\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 16 / 2001\n09 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : molly magee 12 / 20 / 2000 05 : 35 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : qian ( frank ) feng interview with the research group\nyou , too , shirley . we ' ll be back in touch .\nmolly\nshirley crenshaw\n12 / 20 / 2000 02 : 07 pm\nto : cheryl arguijo / enron _ development @ enron _ development , molly\nmagee / hou / ect @ ect\ncc :\nsubject : qian ( frank ) feng interview with the research group\nhello molly and cheryl :\nattached is frank ' s resume . we still have quite a bit of time as we want to\nschedule this for after krishna returns on the 25 th of january .\nthis position would be for the research group directly , and would include\nall of vince ' s direct reports .\nthanks and merry christmas and happy new year ! !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.115+0000", "entityId": 9572, "properties": {"text": "Subject: interview schedule for punit rawal\nhi molly :\npunit rawal is a carnegie mellon student that kevin kindall and bob lee\ninterviewed back in december . we would like to bring him in for an\ninterview . he is definately a \" trading support \" prospect .\ni forwarded his resume to john lavorato back in december and inquired\nas to whether he would be interested in interviewing him or not , but have\nhad no response , except that he has not had a chance to look at his\nresume yet .\nvince originally said that either john or gary hickerson might be interested .\ni did not send his resume to gary , maybe you can check with him ?\ni am attaching the interview request form and his resume . thanks !\nshirley\n- punit + rawal + newresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.120+0000", "entityId": 9573, "properties": {"text": "Subject: spring 2001 academic calendar for the jones graduate school\nspring 2001 faculty and students ,\nthe spring 2001 academic calendar for the jones graduate school has been\nposted to embanet . to access the academic calendar please open the jgsm\narea icon on the embanet desktop . next please open the announcement jgsm\nicon . you will find the spring 2001 academic calendar located under the\nsubject column . please open the document . if you do not have access to\nembanet you will need to speak with david kilgore at kilgore @ rice . edu or by\ncalling david at 713 - 348 - 5378 .\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.124+0000", "entityId": 9574, "properties": {"text": "Subject: re : greetings\nhi , mr . kaminski :\nhow are you ?\ni am back to school for the new semester now . i am in contact with molly\nmagee for my travlling schedule to enron .\ni got from garp that you chaired a seeesion on energy risk at the new york\nconference last week . if it is not too much trouble , could you please send a\ncopy of your presentation to me ? i appreciate it .\nsee you soon !\nfrank", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.131+0000", "entityId": 9575, "properties": {"text": "Subject: allocation schedule\nshirley ,\nwill you check with vince on the support schedule for me ? i need to get the\nsupport to the bus in order to get them to agree on the 2001 billing . if you\nhave any questions , call me . thanx .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 01 / 16 / 2001 01 : 49 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nbecky pham\n01 / 02 / 2001 11 : 12 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : allocation schedule\nwe spoke prior to the holiday and you were working on a list on support names\nand projects that research is working on for various bus . can you tell me\nhow you are doing on that ? sarah brown , my manager , had a meeting with corp\nand they are disputing the billing we are proposing to bill to them ( $ 1 . 9 m ) .\ntheir argument is that they are going to bill ena back anyway ; therefore ,\nthey have agreed to take 40 % of the amount we intented to bill them in 2001 ,\nwhich is approximately $ 760 k . if you have any questions , please call . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.135+0000", "entityId": 9576, "properties": {"text": "Subject: re : book for lacima course attendees\njulie ,\nthanks .\nalso , as a follow up : did you receive the check from paul quilkey ?\nvince\n\" julie \" on 01 / 14 / 2001 02 : 15 : 57 pm\nplease respond to \" julie \"\nto :\ncc :\nsubject : book for lacima course attendees\njust wanted to let you know that the energy derivatives : ? pricing and risk\nmanagement book , by clewlow and strickland and sponsored by enron corp . , ? is\ncompleted . ? we will begin shipping 15 january , which will include\ndistributing ? your complimentary copy .\n?\nthank you for your patience and support .\n?\nsincerely ,\njulie\n?\nlacima group\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.140+0000", "entityId": 9577, "properties": {"text": "Subject: prc review\nstinson ,\ni am going to do the prc review for bob and paulo .\nif your time permits , please join me for these two meetings .\nbob : 9 : 00 am\npaulo : 10 : 00 am\ni attended the prc training , they suggested letting employees\nread their review before the meeting . so i did that . here are the\ntwo files attached .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.149+0000", "entityId": 9578, "properties": {"text": "Subject: interview with the enron corp . research group\nseveral of the enron corp . research team would like for you to come\nin for an interview . they are :\nvince kaminski managing director\nstinson gibner vice president\nmaureen raymond - castaneda director\nplease give me some dates and times of your availability during the rest\nof january and i will try to coordinate them with our schedule .\nlooking forward to hearing from you soon .\nregards ,\nshirley crenshaw\nadminsitrative coordinator\nenron research group\n713 / 852 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.158+0000", "entityId": 9579, "properties": {"text": "Subject: re : youyi\nvince , this will be perfect for us . we will work with shirley while keeping\nyou and krishna informed of the timing and location of the move . i will also\nspeak with youyi tomorrow about our plans . many thanks , kim .\nvince j kaminski @ ect\n01 / 16 / 2001 01 : 39 pm\nto : kimberly watson / et & s / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : youyi\nhi kim ,\ni don ' t see any problem . for the time being , he can keep his desk on the 19 th\nfloor as\nwell ( and the same phone number ) . it will be helpful when he has to work\nclosely with krishna\nunder time constraint .\nat some point , as we hire more people and run out of space , we can move him\ncompletely to\nyour floor .\nplease , ask your assistant to call shirley and arrange the move .\nvince\nkimberly watson @ enron\n01 / 12 / 2001 04 : 21 pm\nto : vince j kaminski / hou / ect @ ect\ncc : pinnamaneni krishnarao / hou / ect @ ect\nsubject : youyi\nhi vince !\ni hope you and a nice christmas and new year ! it ' s nice to be back and in\nthe full swing of the new year .\ni have a question for you . i spoke with krishna prior to him leaving for\nindia about the possibility of moving youyi up to our floor so that we can\nwork closer with him . krishna thought that this would be a good idea . it\nwould be great to have youyi with us soon so that he will be intimately\ninvolved with the whole approach of our prototype model . although krishna\nwill be back at the end of the month , would you mind if i speak with youyi\nand begin the paperwork for moving him onto our floor ? i ' m not sure if\nkrishna has mentioned this to youyi yet . i did not want to surprise anyone\nand wanted to run this by you or krishna for final approval .\nmany thanks , kim .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.165+0000", "entityId": 9580, "properties": {"text": "Subject: zimin ' s father\nvince and stinson ,\ni have to go back to china to attend my father ' s funeral on saterday jan . 20 .\nmy father passed away last sunday .\nmy schedule is :\nleave houston : jan 18 ( thursday )\narrive houston : jan 27 ( saterday )\ni will take care of a few things before i go\n1 ) review for paulo and bob\n2 ) talk to alex on the compound option on a power plant\n3 ) talk to bob on volatility and correlation skews , to finish up this project\nfor john arnold\n4 ) telephone interview for japan office .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.176+0000", "entityId": 9581, "properties": {"text": "Subject: re : petronas benchmarking visit\nkhairuddin ,\nthanks for your message . the fax has been sent .\nvince\nkhairuddinbmjaafar @ petronas . com . my on 01 / 17 / 2001 01 : 50 : 36 am\nplease respond to khairuddin _ mjaafar @ petronas . com . my\nto : vkamins @ ect . enron . com\ncc : azminab @ petronas . com . my\nsubject : petronas benchmarking visit\ndear mr . kaminski ,\npertaining to our visit to your kind company in february , we are required\nto obtain visas for the trip . to apply for the visas , the embassy requires\na letter from the us company confirming our meeting or visit . we would\nreally be grateful if you can fax us a confirmation letter so that we can\nproceed with our visa application . please fax the letter to :\nmr . nur azmin abu bakar\nhead , risk assessment and control\ncorporate risk management unit ,\ncorporate planning and development division\nlevel 71 , tower 1 , petronas twin towers ,\nkuala lumpur city centre ,\n50088 kuala lumpur ,\nmalaysia\nfax : ( 603 ) 2051 - 3252\nyour speedy reply is greatly appreciated .\nthank you and regards ,\nkhairuddin .\ndisclaimer : this e - mail and any files transmitted with it ( \" message \" )\nis intended only for the use of the recipient ( s ) named above and may\ncontain confidential information . you are hereby notified that the\ntaking of any action in reliance upon , or any review , retransmission ,\ndissemination , distribution , printing or copying of this message or any\npart thereof by anyone other than the intended recipient ( s ) is strictly\nprohibited . if you have received this message in error , you should\ndelete this message immediately and advise the sender by return e - mail .\nopinions , conclusions and other information in this message that do not\nrelate to the official business of petronas or its group of companies\nshall be understood as neither given nor endorsed by petronas or any of\nthe companies within the group .\n( embedded image moved to file : pico 5415 . pcx )\n- pico 5415 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.215+0000", "entityId": 9582, "properties": {"text": "Subject: re : enterprise risk management\njim ,\nyes , i would be very interested .\nvince\njames l bouillion\n01 / 17 / 2001 03 : 02 pm\nto : kevin kindall / corp / enron @ enron\ncc : jere c overdyke / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : enterprise risk management\ni had a meeting with willis ( insurance broker ) today and they advised that\nthey have a computer analytics tool that can evaluate traditional exposures\nand express the risk as var . would you be interested in seeing the tool ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.225+0000", "entityId": 9583, "properties": {"text": "Subject: membership mixer tomorrow - paesanos lounge !\nnesa / hea members ~\ndon ' t forget to join us tomorrow ( thursday , january 18 th ) for our first\nmembership mixer of 2001 at paesanos lounge located at 213 milam between\nfranklin and congress streets in the downtown market district . sponsored by\nnational energy & trade , llc , the fun begins at 5 : 00 p . m . and your first\ndrink is free when you mention you ' re with nesa / hea at the door . there will\nbe a buffet available for our group as well as valet parking .\nremember that paesanos also offers a great selection of fine cigars for your\nenjoyment while you network with other industry colleagues , and special\nguest artist , yvonne washington , performs at 8 : 00 p . m . we ' re expecting a\ngreat turnout , so don ' t be left out !\nas part of our membership drive , bring a new member with you and become\neligible for a great door prize , graciously donated by kay atchison\n( nesa / hea co - chair ) from duke energy . it ' s a great opportunity to renew\nyour dues as well . again , if you didn ' t receive your renewal in the mail ,\ni ' m attaching a pdf file that can be opened in adobe acrobat . if you don ' t\nhave that application , download it free from our website at www . nesanet . org .\nhope to see you there ! you can ' t afford to miss this event !\n>\n- nesaneamembership . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.231+0000", "entityId": 9584, "properties": {"text": "Subject: re : paula corey ' s birthday\nrichard ,\nthanks for the invitation . i have already made another commitment\nbut it ' s conditional on a few related events ( friends of friends\ncoming to town ) . if the other event is canceled , i shall be glad to\njoin you . i shall let you know in a few days .\nvince\nrichard weeks @ enron communications\n01 / 16 / 2001 02 : 20 pm\nto : alaina . metz @ marchfirst . com , anthony mends / enron communications @ enron\ncommunications , beth perlman / enron @ enronxgate , elisabeth mends / enron\ncommunications @ enron communications , karla feldman / enron communications @ enron\ncommunications , marie thibaut / enron communications @ enron communications ,\nrenee smith / enron communications @ enron communications , tom sinclair / enron\ncommunications @ enron communications , vince j kaminski / hou / ect @ ect\ncc :\nsubject : paula corey ' s birthday\nyou only thought the festive days were over\nwhat a better way to start off the new year than to celebrate our good friend\npaula corey \u0001 , s birthday\nwe will have a little soiree at my house on saturday january 27 th , dinner\nwill be served at 7 : 00 , please feel free to come out as early as you wish ;\nhowever if you arrive too early you may be requested to perform some ranch\nchores .\nplease feel free to bring a spouse or friend if you choose . if you could\nrsvp by jan 23 rd that would be great .\ndirections to my house are as follows :\ntake i 45 north past the woodlands towards conroe\ntake exit 83 crighton road exit\nstay on feeder road through stop sign until you get to traffic light\n( crighton road )\nturn right onto crighton road cross railroad tracks\ngo to 3 rd street , about 1\nmiles , and turn right , which is the only way you\ncan turn . this is kidd road ; however most of the time the street sign is\nknocked down .\nstay on kidd road until it dead ends at stidham and turn left .\ngo to first street ( finnley ) and turn left .\ngo about 1 mile and finnley will dead end .\nturn left onto deer trail and i will be the first house on the right\nthe address is 13710 deer trail and my house is about 1 / 10 mile off the road .\nmy home number is 936 273 3466\nthanks\nrichard weeks\nrichard weeks\nenron broadband services\npurchasing processing manager\noffice : 713 - 853 - 6995\ncell : 713 - 516 - 2581\nemail : richard _ weeks @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.238+0000", "entityId": 9585, "properties": {"text": "Subject: interview schedule for jinbaek kim\ni didn ' t see this before it went out , but i will be happy to meet with\njinbaek in the 11 : 00 am time slot , if you don ' t have anyone else scheduled\nthen . if not , i can easily meet with hiim after lunch .\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 01 / 17 / 2001 08 : 11\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshawn grady @ enron\n01 / 17 / 2001 06 : 02 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , bob lee / na / enron @ enron , vasant shanbhogue / hou / ect @ ect\ncc : shirley crenshaw / hou / ect @ ect , anita dupont / na / enron @ enron , molly\nmagee / hou / ect @ ect\nsubject : interview schedule for jinbaek kim\nplease find the interview packet for the above - referenced candidate . the\ninterview will occur on friday january 19 , 2001 . please print all documents\nfor your reference . if you have any questions , or conflicts of schedule ,\nplease do not hesitate to contact me .\nshawn grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.244+0000", "entityId": 9586, "properties": {"text": "Subject: interview schedule for jinbaek kim\nplease find the interview packet for the above - referenced candidate . the\ninterview will occur on friday january 19 , 2001 . please print all documents\nfor your reference . if you have any questions , or conflicts of schedule ,\nplease do not hesitate to contact me .\nshawn grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.253+0000", "entityId": 9587, "properties": {"text": "Subject: interview for japan office\ndarren ,\ntanya and i had a telephone interview for yumi . i do not know what\nkind of position you would offer her .\nif you intended to let her do the work on quantitative modeling , her knowledge\nin math seems very sallow . she is working on a math degree on stochastic\nprocess , but she can not explain what ito ' lemma is . we also asked questions\nabout volatility of a basket , value at risk , etc . she did not have a clear\nanswer .\nif you intended to let her to be a junior trader , she might be ok . it seems\nshe has\nsome experience of financial market , but i think you are much more qualified\nto\nprobe her than i do in this aspect .\nkeep in touch ,\nbest regards\nzimin\nfrom : darren delage @ enron on 01 / 12 / 2001 11 : 59 am ze 9\nto : \" mm 21 yumi \"\ncc : zimin lu / hou / ect @ ect\nsubject : re : next tuesday\ngood afternoon imokawa - san ,\nwe would like to invite you to have a brief dialogue with some members of our\nresearch team . they would like to ask you to briefly expound on your\nmathematical studies . if you could please contact them next wednesday at\n7 : 50 am ( it should be 4 : 50 pm houston time , tuesday ) . the conversation should\ntake no more than 20 minutes of your time , and will enable us to get a more\nenhanced understanding of your quantitative abilities .\nzimin lu , director of research , can be reached at 713 - 853 - 6388\nto dial from japan , 0061 - 1 - 713 - 853 - 6388\nif you could please send zimin a copy of your resume before the interview ,\nthat would be much appreciated . you can call the above number to obtain the\nappropriate fax number .\ni will be in touch with you shortly thereafter .\nsincerely ,\ndarren\n\" mm 21 yumi \"\n01 / 11 / 2001 08 : 35 pm\nto :\ncc :\nsubject : thank you\ndarren , thank you for cordinating everything .\ni understand it takes time , this is\nonly the first week of the year in japan , and i do not like to\npush you much . normally , i have long meetings every thursday .\nfor other dates , i make best effort to fit the schedule for\nyour convenience , including early morning or late evening .\ni am looking forward to seeing you sometime soon .\nsincerely ,\nyumi imokawa", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.260+0000", "entityId": 9588, "properties": {"text": "Subject: re : enron cover letter & resume for dave gershenson\nvincent ,\ni have forwarded the resume to our analysts / associate pool with\na recommendation to accept david as a summer intern .\ni expressed interest in taking him into my group . he may , of course ,\nwork for a different unit of enron . it ' s up to him and i shall not be offended\nif he would like to go into trading or deal origination .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.266+0000", "entityId": 9589, "properties": {"text": "Subject: enron cover letter & resume for dave gershenson\nceleste ,\ni am sending you the resume of david gershenson , an mba student from wharton .\nhe is interested in a summer internship with enron and i shall be glad\nto take him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 17 / 2001\n01 : 34 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" chen , vincent \" on 01 / 17 / 2001 02 : 35 : 00 am\nto : vince . j . kaminski @ enron . com\ncc : \" gershenson , david \"\nsubject : enron cover letter & resume for dave gershenson\nvince , i am passing along a cover letter and resume for my classmate and\nfriend , dave gershenson , who is very interested in working for enron this\nsummer . he is working on reliant energy ' s tiger team this quarter . please let\nus know if you have any questions .\nthanks much and see you friday !\nvincent\nvincent y chen\nmba candidate , class of 2002\nthe wharton school\nuniversity of pennsylvania\nchenvinc @ wharton . upenn . edu\n> - - - - - original message - - - - -\n> from : gershenson , david\n> sent : tuesday , january 16 , 2001 6 : 24 am\n> to : chen , vincent\n> subject : enron cover letter & resume\n>\n> vincent ,\n>\n> please find attached a cover letter and resume for the enron summer finance\ninternship . as we discussed , i would appreciate it if you could pass these\nalong to your tiger team contact , mr . kaminski .\n>\n> thanks ,\n> dave\n>\n> > > > > >\n- enron letter . doc\n- dave gershenson . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.272+0000", "entityId": 9590, "properties": {"text": "Subject: re : mgmt 656 ( rice university )\nthis list is just a basic excel document with names , id ' s and e - mail\naddresses . - pam ( 713 - 348 - 6223 )\nat 03 : 36 pm 1 / 17 / 01 - 0600 , you wrote :\n> pam ,\n>\n> thanks . the list of e - mail addresses would be useful as well .\n>\n> vince\n>\n>\n>\n>\n>\n> pamela vande krol castro on 01 / 17 / 2001 03 : 05 : 01 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : mgmt 656 ( rice university )\n>\n>\n> here are your rosters for mgmt 656 . let me know if you need a list of\n> e - mail addresses as well . i will update you as student schedules change .\n> - pam\n> ( 713 - 348 - 6223 )\n> ( see attached file : 656 . doc )\n>\n>\n- 656 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.277+0000", "entityId": 9591, "properties": {"text": "Subject: re : mgmt 656 ( rice university )\npam ,\nthanks . the list of e - mail addresses would be useful as well .\nvince\npamela vande krol castro on 01 / 17 / 2001 03 : 05 : 01 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : mgmt 656 ( rice university )\nhere are your rosters for mgmt 656 . let me know if you need a list of\ne - mail addresses as well . i will update you as student schedules change .\n- pam\n( 713 - 348 - 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.283+0000", "entityId": 9592, "properties": {"text": "Subject: mgmt 656 ( rice university )\nhere are your rosters for mgmt 656 . let me know if you need a list of\ne - mail addresses as well . i will update you as student schedules change .\n- pam\n( 713 - 348 - 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.288+0000", "entityId": 9593, "properties": {"text": "Subject: jones graduate school course descriptions list for 2000 - 2001\nspring 2001 faculty and students ,\njones graduate school course descriptions list for 2000 - 2001 has been\nposted to embanet . to access the course descriptions please open the jgsm\narea icon on the embanet desktop . next please open the announcement jgsm\nicon . you will find the course descriptions located under the subject\ncolumn . please open the document . if you do not have access to embanet\nyou will need to speak with david kilgore at kilgore @ rice . edu or by calling\ndavid at 713 - 348 - 5378 .\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.292+0000", "entityId": 9594, "properties": {"text": "Subject: california power update 1 / 17 / 01 pt . iii\n1 . california ag exploring investigation of power profits\nsources report that the california attorney general ' s office , in a meeting\nyesterday , ordered a review of the federal profiteering statute . in keeping\nwith the recent\nrhetoric by gov . davis , this action is almost certainly directed toward\ninvestigations of profits made by generators and marketers .\n2 . more detail on bankruptcy - creditors concerned about lengthy \" cure period \"\nthe generators want to limit their exposure as general creditors in a chapter\n11 proceeding . their ability to their exposure depends on the \" cure period \"\nfor\nmaking good on a defaulted payment , which would be dictated by the specific\ncontract terms . if the \" cure period \" - that is , the time the utilities have\navailable to\nmake up for missed payments before the generators or the power exchange can\ntake them to court - is a short period of time , for the sake of argument 30\ndays , then the utilities ' creditors have to swallow another 30 days of\naccumulated ( impaired ) receivables before they can move to the more\ndesirable position of postpetition suppliers ( in which bills do get paid , as\nwould be directed by the bankruptcy court judge ) . if , however , the utilities\nhave a longer \" cure period \" , for the sake of argument 60 days , then their\ncreditors will effectively have to swallow 60 days of accumulated impaired\nreceivables on which they will ultimately have to take a substantial haircut .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.297+0000", "entityId": 9595, "properties": {"text": "Subject: california 1 / 17 / 01 pt . ii\none of the issues we have been following with respect to the california power\ncrisis concerns the role of prospective broader federal involvement in the\nissue post - inauguration . in the last two days , we have seen two signals\nsuggesting that the bush administration will not significantly deviate from\nthe \" broker \" role played by the clinton white house :\n1 . in his confirmation hearing this morning , treasury secretary - designate\no ' neill cautioned that \" it is not clear that us intervention is needed in\ncalifornia \" and that the \" governor must be the first line of defense . \"\n2 . a source close to bush economic advisor larry lindsey reported to us\nyesterday that \" there was little that the federal government could do\nspecifically to help , beyond focusing on national issues ( increased\nproduction , transmission capacity etc . ) . \"\nof course , the bush treasury officials are likely to be more cautious with\nrespect to intervention than the energy team , as was true with the clinton\nadministration . yet lindsey in particular is unlikely to deviate far from\nthe official bush view at this stage . further guidance should be forthcoming\nwith respect to this issue from energy secretary - designate spence abraham ' s\ntestimony tomorrow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.302+0000", "entityId": 9596, "properties": {"text": "Subject: california 1 / 17 / 01\nsummary :\nlate night efforts by the california assembly to craft a legislative solution\nare falling short of market and creditor expectations . bankruptcy appears\nincreasingly likely , but the dynamics of a ch . 11 proceeding remain unclear .\nsocal edison is likely to be the first in ch . 11 following its suspended\npayments to creditors yesterday and is now in a 30 day cure period . attempts\nto bring in the assets of the parent companies are unlikely to succeed .\nbankruptcy would provide davis with some political cover to implement the\ntough decisions that he has so far avoided on the questions of rate hikes and\nother costs to taxpayers connected to the proposed operations of the\ncalifornia power authority .\n1 . legislation passes assembly , but generators and consumers remain unhappy\nthe first legislation ( ab lx ) passed the california general assembly last\nnight , but both generators and consumers are unhappy with the terms .\ngenerators object to the 5 . 5 cent per kw / h price in the proposed long - term\ncontract , while consumer groups such as the foundation for taxpayer and\nconsumer rights object to the state acting as a purchaser of power . the\nlegislation is expected to pass the senate today and to be signed by governor\ndavis as early as tonight .\npress and source reporting this morning confirms that the principal financial\ncreditors and utility analysts are also unimpressed with the bill , which is\nviewed as insubstantial and falling short of creating a solution to the\nfinancial pressures on the utilities .\n2 . financial institutions exposure to california utilities\nbank of america : $ 215 million\nj . p . morgan : $ 202 million\nthere is a total of $ 12 billion in outstanding loans , but much of this\n( arranged by societe general ) is to the parents national energy group and\nedison international . the $ 417 million mentioned above is the most immediate\nconcern . the southern california edison loans are subject to immediate\nrepayment in the aftermath of yesterday ' s rating downgrade to junk status .\nthe fed will not be involved , except in a routine way as a bank regulator\nmaking sure that the appropriate risk reserves are made against the\nutilities ' loans and securities . there is no moral hazard here , because the\nfed is not going to guarantee any of the utilities ' credits , which , by the\nway , they do not have the authority to do .\n3 . pg & e / national energy group - shielding assets\ndespite considerable anger at pg & e for reorganizing to shield its profitable\nassets from its debt - plagued utility business , it would seem that davis has\nlittle authority to intervene . the question of \" fraudulent conveyance \" , which\nis a term in bankruptcy law for transferring assets to favored parties not\nlong before a filing ( which transfer can then be reversed by the court ) would\nnot seem to apply here , since pg dynegy has threaten to take take edison into\nbankruptcy court if they default\npg & e\ncurrent available : $ 500 m in cash and reserves\ndue feb : lst - $ 580 m to iso\n15 th - $ 431 m to california power exchange\ncontrary to press reports and leaks from the governor ' s office yesterday\nabout political brinksmanship , edison is clearly not playing negotiating\ngames and is really short of cash . in this situation , it is unlikely that its\nexecutives will be making fraudulent statements . the bonds on which they\nfailed to pay would have a 30 - day cure period . after that the trustees will\nmove on edison , if edison has not already filed . they have three ways of\nfinancing power purchases going forward : 1 ) the state continues to buy power\nand sell edison ( and pg or 2 ) pending the passage of today ' s legislation , the state\nlegislature authorizes the purchase of power through long - term contracts\nunder the proposed borrowing authority ; or 3 ) edison files for reorganization\nunder chapter 11 and obtains almost immediately superpriority post - petition\nlines of credit secured against its unmortgaged assets , which it uses to pay\nfor power until the puc and the rest of the state government recognize that\nrates have to increase .\n6 . new hampshire experience a guide for davis ?\nfollowing the bankruptcy of the public service company of new hampshire , the\nbankruptcy judge was authorized by a higher court to mandate rate hikes . the\nprospect of imposed rate hikes from the bankruptcy court caused the state\ngovernment to subsequently determine that rate hikes to consumers were\nunavoidable , passing a seven year rate hike of 7 . 5 percent .\nfor davis , a similar scenario would provide him with some political cover , if\nhe were forced by the bankruptcy court to pass through rate hikes as part of\na settlement .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.307+0000", "entityId": 9597, "properties": {"text": "Subject: houston trip\nhi jaideep !\nmy first suggestion is that you come to houston as scheduled ( and arranged\nwith wharton nearly 3 weeks ago ) . alternatively , rely on your tiger\nteammates to gather information necessary to respond to the project . should\ncircumstances lead you to decide not to come for this trip , please return the\nticket issued to you . should it make sense for you to visit enron some time\nin the future , we can discuss arrangements at that time .\nhope to see you soon !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 18 / 2001\n01 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jaideep singh \" on 01 / 17 / 2001 08 : 58 : 51 pm\nto :\ncc :\nsubject : houston trip\nhello christie ,\nthank you for organizing the wharton trip to enron . unfortunately , the\nflight setup for tomorrow is way too early for me as i ' ll have to miss over\n4 hours of classes , which i cannot afford to do . i tried changing the time\nwith continental and there latest flight leaves at 6 pm - which does not work\nfor me ( smack in the middle of my 3 hour class )\nthus the dilemma that i find myself in is the following :\na . try a different flight as i can make any flight after 7 : 30 pm ( however , i\nhave no control over reservations / budget etc )\nb . as it is possible to delay travel upto 1 year , use this ticket to come\nsome other time\nsorry for this but i just saw the bookings today .\nany suggestions ?\nthanks ,\njaideep", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.313+0000", "entityId": 9598, "properties": {"text": "Subject: re : risk model\nthanks vince . i made some real progress on the paper today . i ' ll try to\nship you a revision sometime later this week .\ntake care friend ,\njohn\nat 01 : 14 pm 1 / 17 / 01 - 0600 , you wrote :\n>\n> hi john ,\n>\n> you have a very attractive family . you must be a very proud father and\n> husband .\n>\n> vince\n>\n>\n>\n>\n> \" john d . martin \" on 01 / 17 / 2001 11 : 09 : 29 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : risk model\n>\n>\n> got it and i understand . thanks\n>\n> john\n>\n> p . s . have a great day ! by the way , how ' d you like the martin clan picture ?\n>\n>\n> at 11 : 06 am 1 / 17 / 01 - 0600 , you wrote :\n> > john ,\n> >\n> > i am sending you an old write - up on the risk management system .\n> > this is for \" your eyes only \" , though this info is out already . some people\n> > left\n> > the company and also the consultants who audited the model use these\n> ideas .\n> >\n> >\n> > vince\n> > ( see attached file : overo 907 . doc ) ( see attached file : prico 912 . doc )\n> > attachment converted : \" c : \\ windows \\ desktop \\ overo 907 . doc \"\n> >\n> > attachment converted : \" c : \\ windows \\ desktop \\ prico 912 . doc \"\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.318+0000", "entityId": 9599, "properties": {"text": "Subject: fwd : summer internship - - ph . d . in chicago\nceleste ,\ni am a very good customer of your group .\nthis is another student ( this time from chicago ) i would be glad to take into\nthe group\nas an intern . the resume is attached at the bottom of this message .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 17 / 2001\n03 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nli xiao on 01 / 13 / 2001 01 : 41 : 29 pm\nto : vkamins @ ect . enron . com\ncc :\nsubject : fwd : summer internship - - ph . d . in chicago\nhi , vince ,\nthis is li , writing from u . of chicago .\ni am in the second quarter here .\nthe study and social life is extremely busy at the school .\nbut i enjoy connecting the knowledge i learn everyday here\nwith the experience i had with enron .\na schoolmate of mine , a chicago ph . d . candidate in finance ,\nis looking for an internship for the coming summer .\ni recommend him to write to you to see if you are interested in\nor if there is a need . if so , you can contact with him directly .\nhe is a really bright guy . if not , hope you don ' t mind that\ni sell enron at school so hard .\nagain , thanks for all the help you gave me .\nhave a good new year .\nli\np . s . : cover letter below and resume attached .\nli xiao\nuniversity of chicago\ngraduate school of business , class of 2002\n( 773 ) 955 - 0710\ndear dr . vince kaminski ,\ni am a ph . d . student in finance at the university of chicago gsb who =\nhopes to find a summer internship at enron of 2001 ( between june and =\nseptember ) . i heard your group from my friend li , who worked at enron =\nfor 3 year . she spoke highly of you . if it ' s okay , i am primarily =\ninterested in risk management .\nat the university of chicago , i will have completed all the ph . d . =\ncourses in the area of finance by the end of the first year . as normally =\nit takes two years to finish the required finance courses , i decided to =\ntake all the finance courses in the first year . in the fall quarter , i =\nalready took empirical asset pricing and theoretical asset pricing and =\ndid very well . in the winter quarter , i will be taking corporate =\nfinance , continuous time finance and behavioral finance . i am exposed to =\nall fields of finance . prior to coming to chicago , i received a master ' s =\ndegree in economics at washington university in saint louis where i =\nacquired skills in economic analysis . i also have a strong background in =\nstatistics and mathematics . this makes me believe that i have acquired =\nthe ability to do financial research .\nprior to coming to the united state , i was an outstanding graduate from =\nbeijing university , china . i was the founder and president of beijng =\nuniveristy society of oceanology . i also organized a research jouney in =\nthe round - the - bo - sea economic region . these experience helped to hone my =\ncommunication and interpersonal skills .\nas illustrated above , my skills and expertise are ideally suited for =\nfinancial research . my resume is enclosed . in the event that you think =\nan interview is in need , my time is very flexible . your assistance is =\nappreciated .\nsincerely yours ,\njason chen ( huafeng )\n6022 s . drexel ave , apt 612\nchicago , il 60637\n( 773 ) 955 - 0348\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.322+0000", "entityId": 9600, "properties": {"text": "Subject: re : carnegie interviews super friday\nvince ,\nthank you very much but i ended up finding interviewers for all the time\nslots . paulo has volunteered to interview for 1 hour , thank you for\nsuggesting his name .\nkristin\nvince j kaminski @ ect\n01 / 17 / 2001 02 : 00 pm\nto : kristin gandy / na / enron @ enron\ncc : kevin kindall / corp / enron @ enron , alex huang / corp / enron @ enron , paulo\nissler / hou / ect @ ect , bob lee / na / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : carnegie interviews super friday\nkristin ,\ni shall be tied up with the wharton group all day friday .\ni am forwarding the message to some members\nof the research group . i hope some of them will be available .\nvince\np . s . to the research group . can you , please , help kristin ?\nenron north america corp .\nfrom : kristin gandy @ enron 01 / 16 / 2001 02 : 03 pm\nto : alyse herasimchuk / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , ann korioth / enron communications @ enron\ncommunications , terry yamada / corp / enron @ enron , traci warner / enron\ncommunications @ enron communications , erik simpson / hou / ect @ ect , laura\nhowenstine / enron communications @ enron communications , sarah\nwesner / enron @ enronxgate\nsubject : re : carnegie interviews super friday\nokay group it is tuesday and we have heard from no volunteers . we only need\n30 minutes of your time . is any one available on this friday to interview ?\nplease help !\nkristin\nfrom : alyse herasimchuk 01 / 12 / 2001 03 : 55 pm\nto : vince j kaminski / hou / ect @ ect , ann korioth / enron communications @ enron\ncommunications , terry yamada / corp / enron @ enron , traci warner / enron\ncommunications @ enron communications , erik simpson / hou / ect @ ect , laura\nhowenstine / enron communications @ enron communications , sarah wesner / corp / enron\ncc : kristin gandy / na / enron @ enron\nsubject : carnegie interviews super friday\nwe have one last group of candidates coming in for final round interviews on\nfriday , january 19 th . we need interviewers for half a day ( 9 : 00 am to 11 : 15\nam ) . please let me know if you can be available for the entire morning or\nwhat times you could be available :\n9 : 00 am - 9 : 30\n9 : 35 am - 10 : 05\n10 : 10 am - 10 : 40\n10 : 45 am - 11 : 15\ni appreciate any help you can offer in submitting names for those who may be\nable to interview if you can not . thanks !\nalyse herasimchuk\nrecruiting coordinator\nassociate / analyst program\n57339", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.329+0000", "entityId": 9601, "properties": {"text": "Subject: re : schedule for trip\nchristie ,\njohn henderson committed in principle to speaking to the tigers .\nplease , send him the location info and conform the time ( 2 : 00 p . m . ) .\nvince\nchristie patrick @ ect\n01 / 17 / 2001 07 : 46 am\nto : \" kim whitsel \" @ enron\ncc : @ enron , @ enron ,\n\" chen , vincent \" @ enron , \" levitt , nicholas \"\n@ enron , \" bhalla , tulika \"\n@ enron , \" mallik , deepa \"\n@ enron , \" whitsel , kimberly \"\n@ enron , @ enron\nsubject : re : schedule for trip\nhi kim ,\nvince and i have received your questions , along with those of other tiger\nteams , and we are planning the agenda for the day accordingly .\nwe look forward to seeing you tomorrow evening at churrasco ' s !\nsafe travel !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.334+0000", "entityId": 9602, "properties": {"text": "Subject: re : energy finance conference participation - feb 22 - 23\nthank you . we look forward to having you here .\nsincerely ,\nangela\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education shirley . crenshaw @ enron . com ;\nvkaminski @ aol . com\nsubject : re : energy finance conference participation - feb 22 - 23\nangela ,\nthanks for your message . i shall be glad to attend the conference ,\nboth days . i shall call dr . ronn to discuss my participation .\nvince kaminski\n\" angela dorsey \" on 01 / 16 / 2001 12 : 54 : 15 pm\nto : \" vincent kaminski ( e - mail ) \"\ncc :\nsubject : energy finance conference participation - feb 22 - 23\nvince :\nfurther to dr . ronn ' s e - mail dated 1 / 9 , please confirm your\nparticipation\nin the ut 2001 energy finance conference to be held on the university of\ntexas campus feb . 22 - 23 rd .\nsincerely ,\nangela\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.339+0000", "entityId": 9603, "properties": {"text": "Subject: lng var limit request form\nvince ,\nplease review the attached file . when you are ready , i will bring you the\noriginal for your signature .\nthanks ,\neric", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.345+0000", "entityId": 9604, "properties": {"text": "Subject: new position ( sam smith )\nnorma ,\nthe need for a new position within the research group has evolved along with\nour expanding responsibilities , and we would like to fill that position with\nan already on - board employee familiar with same , that person being william\n( sam ) smith .\nthe new position created it that for a staff specialist , who would be\nresponsible for technical duties including evaluation and quality control of\nweather forecasting procedures , design and preparation of the research\nintelligence intelligence newsletter , operational responsibilities related to\nmorning report assembly , and hurricane season surveillance as well as\nsatellite system supervision . .\nwe would like to make this retroactive to january lst of this year .\n- - - mike roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.350+0000", "entityId": 9605, "properties": {"text": "Subject: re : fed ex from iris\nsounds good to me , vince .\nthanks ,\nmolly\nvince j kaminski\n01 / 17 / 2001 09 : 52 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : fed ex from iris\nmolly ,\nyes , march 1 would work .\nvince\nenron north america corp .\nfrom : molly magee 01 / 16 / 2001 03 : 36 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fed ex from iris\njust checking to be sure you ' re okay with a march 1 start date for iris ?\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 01 / 16 / 2001 03 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" iris mack \"\n01 / 16 / 2001 03 : 13 pm\nto : molly . magee @ enron . com , vince . j . kaminski @ enron . com\ncc :\nsubject : fed ex from iris\nhi ,\nthanks for the fed ex with the offer letter , and other pertinent\ninformation about enron .\ni have signed the letter and returned it to you , along with a couple of\nother forms . you should receive these documents via fed ex on tomorrow\nmorning .\nbecause i have to tie up a few loose ends here in california , i won ' t\nbe able to start until march lst . i hope that is okay .\nthanks so much .\nregards ,\niris\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.354+0000", "entityId": 9606, "properties": {"text": "Subject: re : fed ex from iris\nmolly ,\nyes , march 1 would work .\nvince\nenron north america corp .\nfrom : molly magee 01 / 16 / 2001 03 : 36 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fed ex from iris\njust checking to be sure you ' re okay with a march 1 start date for iris ?\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 01 / 16 / 2001 03 : 35\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : \" iris mack \"\n01 / 16 / 2001 03 : 13 pm\nto : molly . magee @ enron . com , vince . j . kaminski @ enron . com\ncc :\nsubject : fed ex from iris\nhi ,\nthanks for the fed ex with the offer letter , and other pertinent\ninformation about enron .\ni have signed the letter and returned it to you , along with a couple of\nother forms . you should receive these documents via fed ex on tomorrow\nmorning .\nbecause i have to tie up a few loose ends here in california , i won ' t\nbe able to start until march lst . i hope that is okay .\nthanks so much .\nregards ,\niris\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.359+0000", "entityId": 9607, "properties": {"text": "Subject: re : petronas benchmarking visit\nkhairuddin ,\nyes , it ' s correct . we have experienced problems replying to a number of\nmessages\nsent by your organization ( not just your e - mail address ) . i shall send you\nthe list of people\nwho will attend the meeting at a later day . we shall have representatives\nfrom the crude and lng trading\ndesks , research and risk control .\ncould you , please , resend me the list of your delegates .\nvince\ni have invited a number\nkhairuddinbmjaafar @ petronas . com . my on 01 / 19 / 2001 02 : 53 : 53 am\nplease respond to khairuddin _ mjaafar @ petronas . com . my\nto : vkamins @ ect . enron . com\ncc :\nsubject : re : petronas benchmarking visit\nvince ,\nit was brought to my attention that something was wrong with my ' reply to : '\nfunction of my email resulting in difficulties to reply to my email .\nbelow is the e - mail that i ' ve sent to you earlier and i believe this\ntime , i will receive your reply .\nthanks ,\nregards ,\nkhairuddin\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : petronas benchmarking visit ( document link : khairuddin b m\njaafar )\nvince ,\nthank you for your prompt reply . we have received your fax earlier this\nmorning . fyi , we shall be sending you the questionaires by next week as we\nare going through the final draft this week . could you please tell me who\nwill be joining the discussion during our visit ? thanks .\nregards ,\nkhairuddin\ndisclaimer : this e - mail and any files transmitted with it ( \" message \" )\nis intended only for the use of the recipient ( s ) named above and may\ncontain confidential information . you are hereby notified that the\ntaking of any action in reliance upon , or any review , retransmission ,\ndissemination , distribution , printing or copying of this message or any\npart thereof by anyone other than the intended recipient ( s ) is strictly\nprohibited . if you have received this message in error , you should\ndelete this message immediately and advise the sender by return e - mail .\nopinions , conclusions and other information in this message that do not\nrelate to the official business of petronas or its group of companies\nshall be understood as neither given nor endorsed by petronas or any of\nthe companies within the group .\n( embedded image moved to file : pic 24393 . pcx )\n- pic 24393 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.365+0000", "entityId": 9608, "properties": {"text": "Subject: re : eol\nclayton ,\ngreat news . i would like to sit down with you , tom and stinson and review\nwhere\nwe are with this project . also , i would like to talk to you about your\nstatus ( finalizing\nthe transfer to another group ) .\nvince\nclayton vernon @ enron\n01 / 18 / 2001 03 : 21 pm\nto : vasant shanbhogue / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : eol\nvasant -\ndave delaney called an hour ago . he needed a statistic from eol that the eol\nfolks couldn ' t give him ( it seems they had a database problem in 1999 ) , and\nthe grapevine had it we had the data . tom barkley was able to give him the\ndata he needed for his presentation , within a matter of 10 minutes or so .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.373+0000", "entityId": 9609, "properties": {"text": "Subject: re : ca for henwood engagement\nsandeep ,\nit probably makes sense for you to directly coordinate the signing of the\ncontract for henwood . attached is another copy of the earlier email\ncontaining a draft contract provided by bonnie nelson in legal . she would\nstill like to change section 6 on exclusivity . her number in houston is\n713 646 7712 .\nlet me know whatever i can do to help .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 18 / 2001\n08 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbonnie nelson @ enron _ development\n01 / 11 / 2001 12 : 51 pm\nto : stinson gibner / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , sandeep\nsubject : re : ca for henwood engagement\nstinson ,\nattached please find a draft consulting agreement for use with henwood .\nyou will want to review it before you send it to henwood . please see section\n6 in particular . also , i put in that arbitration will be in houston and\ntexas law will apply . we could move that to new york , with new york law if\nthat is better for henwood . if pressed , we could make it singapore or u . k .\nlaw , with arb in singapore . but any other law , including australian law ,\nwould mean we would need to get this contract reviewed by foreign counsel - - so\ni strongly urge you to argue for texas or ny law ( no other state , please ) .\ni tried to make this agreement reflect the terms in henwood ' s proposal , and\nbelieve i succeeded . our form has some additional terms not contained in\ntheir proposal , as well as fcpa boilerplate ( ie . , the \" business conduct \" and\n\" drug policy \" language ) . also , i just want to point out that this agreement\nallows them to subcontract the work - - but only with our written agreement .\nunder their proposal , the subcontractor costs will be charged to us at cost\nplus 15 % - - so you might not want to do it .\nplease let me know if you have any comments or questions .\nbonnie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.381+0000", "entityId": 9610, "properties": {"text": "Subject: re : petronas benchmarking visit\nkhairuddin ,\ni am glad you received the fax .\ni shall send you the list of enron ' s participants at a later date .\ni have invited a numbers of enron employees representing\nour different business units , including\nlng and crude trading , risk controls group and research .\nvince kaminski\nkhairuddinbmjaafar @ petronas . com . my on 01 / 17 / 2001 06 : 39 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : petronas benchmarking visit\nvince ,\nthank you for your prompt reply . we have received your fax earlier this\nmorning . fyi , we shall be sending you the questionaires by next week as we\nare going through the final draft this week . could you please tell me who\nwill be joining the discussion during our visit ? thanks .\nregards ,\nkhairuddin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.385+0000", "entityId": 9611, "properties": {"text": "Subject: moze cie to zainteresuje\nvince ,\ndawno ze soba nie rozmawialismy . mam nadzieje ze u ciebie wszystko o . k .\nnie wiem czy znana jest ci postac prof . aleksandra werona - zajmuje sie on\nzastosowaniem metod matematycznych w inzynierii finansowej . ostatnio\nnatomiast skupil sie na rynku energii . wraz z synem rafalem wydal ksiazke\n\" gielda energii - strategie zarzadzania ryzykiem \" . zawarte sa w niej podstawy\nzarzadzania ryzykiem . na jego stronie internetowej\nhttp : / / www . im . pwr . wroc . pl / ~ hugo / fe . html mozesz znalezc cos wiecej na temat\ntego czym sie zajmuje . to co moze cie zainteresowac to moze byc strona\nhttp : / / www . im . pwr . wroc . pl / ~ hugo / rockets . html . ciekaw jestem co o tym sadzisz .\nspotkalem sie z weronem kilkakrotnie na roznych seminariach . zorganizowalem\nmu tez zobaczenie naszego trading floor podczas jednej z jego wizyt w\nlondynie .\npozdowienia\njarek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.390+0000", "entityId": 9612, "properties": {"text": "Subject: howard & lawrence for vince\nhey vince !\nhere is a picture of howard lin and picture of lawrence ( the guy i spoke to\nyou about over the telephone ) and his new resume .\ni will call alec tonight in london to let him know that you sent the \" other\nhoward \" ( howard haughton over to enron uk ) .\nlawrence has banking and online experience with hsbc - he is being examined\nonly by one other company that i know of ( williams ) that is my competitor . he\nalso went to the chief investment officer of the san diego pension fund ( a\nfriend of mine ) . i don ' t think he is a \" best fit \" - but , if you like him - i ' ll\nget him for you !\ni have a great relationship with him .\nok !\nthanks ,\njeff wesley\nps - i kinda like lawrence ' s \" look \" , vince .\nalways held in strict confidence .\njeff wesley\n949 813 2241 hotline\n347 487 8957 voice / fax us\n+ 44 ( 845 ) 3341644 uk\n* get free , secure online email at http : / / www . ziplip . com / *\n- howardlin . gif\n- imageo 02 . jpg\n- lawrenceagent 9498132241 new . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.395+0000", "entityId": 9613, "properties": {"text": "Subject: 1 candidate and 2 interns\nbryan\nplease , take a look at the resume of howard haughton . he looks like an answer\nto your prayers .\nit ' s the first attachment .\nvince\np . s . jeff , the headhunter , can be reached at ( 949 ) 813 2241 . please , set up\nthe interview ,\nif interested , through him .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 18 / 2001\n01 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 01 / 12 / 2001 12 : 51 : 59 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : vince . j . kaminski @ enron . com\ncc : molly . magee @ enron . com\nsubject : 1 candidate and 2 interns\nhi vince and molly .\nhere attached is one candidate who is particularly interested in having his\nprofile sent to vince . . . he is going to be traveling to ny from the uk soon\nfor 2 wks .\nhe specifically asked my partner at robertwalters in the uk to investigate\nenron through my new relationship with you guys . he would be howard haughton ,\nattached below ( cv ) .\nthe other 2 resumes are my students at the university of michigan . howard lin\nreceived a 4 . 0 / 4 . 0 for his last term and will be willing to do whatever it\ntakes to intern at enron for june - aug . i have his picture included as well .\nthe second is sung , they are friends . howy will be done expected in may 2001\nand sung in may 2002 . they are my favorite interns and i expect they can be\ncultivated to the enron culture with no real cost to you ( a \" test drive\nbefore committal . i have agreed to represent them and\nshall take ownership , as they become graduate candidates upon their degree\ncompletion .\ni hope these attachment can represent my value and commitment to quality of\ntalent to enron .\nthank you for your acceptance .\nbest wishes for the weekend .\njeff\n* get free , secure online email at http : / / www . ziplip . com / *\n- 00343938 alec . doc\n- sungvince . doc\n- howardagent 9498132241 . doc\n- howardlin . gif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.401+0000", "entityId": 9614, "properties": {"text": "Subject: a resume\njohn ,\nthis is a resume i received today from my friend .\nplease , take a look at it . what follows below is a copy of his message to\nme :\ndear vincent ,\ni very much would like to ask you for a career advice . i am looking for new\nchallenges and new professional opportunities . possibly there would be such\nopportunity around yourself at enron corporation .\ni trust that my strongest asset is my intellectual capital and ability to\nlook from new angles into complex issues . beside of the experience of\nworking under jacob goldfield an paul jacobson at goldman on the interest\nrate swaps and proprietary desks , i was a part of research effort of john\nmeriwether group at salomon brothers , i headed the european interest options\ndesk at dkbi in london and i have managed a small hedge fund in partnership\nwith albert friedberg .\ni hold ph . d . in mathematics from mit and i have studied under nobel\nlaureate in economics , bob merton .\ni very much would like to apply my knowledge of capital markets , trading and\nresearch in the field of energy markets .\nwith my very best regards and personal wishes ,\nmark kierlanczyk\ngodel partners llc\n67 wall street , suite 1901\nnew york , ny 10005\ntel 212 943 5300\nmkierlanczyk @ fmginy . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.406+0000", "entityId": 9615, "properties": {"text": "Subject: wharton tiger team agenda\nfriends ,\nattached below are please find :\n1 . wharton tiger team agenda , friday , 19 january 2001 , 7 : 30 am - 4 : 30 pm ;\n2 . wharton tiger team brochure ( explaining the program ) .\nthank you in advance for your participation . meeting room 32 c 2 will be\nequipped for computer presentations . the format of your presentation is\nentirely up to you - - formal , conversational , computerized , hard copy - - however\nyou feel most comfortable . we ' re currently expecting a total of 18 in the\ngroup .\neveryone is invited to come to churrasco ' s this evening . the wharton group\nwill be picked up from the warwick at 6 : 30 , so should arrive at the\nrestaurant at about 6 : 45 - 7 p . please come if you can !\nthanks again ! this is an enthusiastic , talented group of prospective enron\nrecruits - - and their research efforts might also well prove interesting to our\nbusinesses .\nregards - - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.411+0000", "entityId": 9616, "properties": {"text": "Subject: vacation carryover\nwant to verify your vacation carryover ? beginning january 22 , 2001 , all\neligible enron employees will be able to access the hours of vacation that\nwere carried over from the previous year by going to the ehronline website .\n1 . navigate to the ehronline website : http : / / ehronline . enron . com .\n2 . read the disclaimer ; click accept .\n3 . enter your user id and password ; click logon .\n4 . select time management from the menu at the left .\n5 . select vacation information from the drop - down menu .\nto see all types of vacation ( accrual , lump sum , vacation ) , click the radio\nbutton for \" all types . \"\nclick display .\nto see specific types of vacation ( accrual , lump sum , vacation ) , click the\nradio button below \" all types \" and make your selection from the drop - down\nmenu .\nclick display .\nclick exit to log off .\nthe system will default to show all types of vacation , including ( if\navailable ) vacation - ( accrual ) or vacation - ( lump sum ) or vacation . the\ncarryover amount will be displayed next to the type : \" vacation \" under the\n\" entitlement \" column .\nenron policy states that employees are entitled to a maximum of 40 hours of\nvacation carryover without supervisor approval . hours in excess of 40 hours\nare subject to supervisor approval and will be updated once supervisor\napproval has been received\nif you have questions regarding your vacation , please call the payroll\nhotline at 713 . 345 . 5555 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.417+0000", "entityId": 9617, "properties": {"text": "Subject: re : urgent deadline : rsvp by jan 22 nd : invitation to 2001 energy\nfinanceconference feb . 22 - 23 , 2001 - the university of texas at austin\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen marshall / hou / ect on 01 / 18 / 2001\n03 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" angela dorsey \" on 01 / 18 / 2001 02 : 53 : 59 pm\nto :\ncc :\nsubject : re : urgent deadline : rsvp by jan 22 nd : invitation to 2001 energy\nfinanceconference feb . 22 - 23 , 2001 - the university of texas at austin\nkaren ,\nthanks for the extra support in getting the word out . i ' ve had a couple\nrsvp ' s from enron .\nsincerely ,\nangela\n- - - - - original message - - - - -\nfrom : karen . marshall @ enron . com [ mailto : karen . marshall @ enron . com ]\nsent : wednesday , january 17 , 2001 7 : 59 pm\nto : david . haug @ enron . com ; gary . hickerson @ enron . com ; cchilde @ enron . com ;\nthomas . suffield @ enron . com ; ben . f . glisan @ enron . com ;\nermes . melinchon @ enron . com ; hal . elrod @ enron . com ; clay . spears @ enron . com ;\nkelly . mahmoud @ enron . com ; ellen . fowler @ enron . com ;\nkevin . kuykendall @ enron . com ; fred . mitro @ enron . com ;\nkyle . kettler @ enron . com ; jeff . bartlett @ enron . com ;\npaul . j . broderick @ enron . com ; john . house @ enron . com ;\ngeorge . mccormick @ enron . com ; guido . caranti @ enron . com ;\nken . sissingh @ enron . com ; gwynn . gorsuch @ enron . com ; mark . gandy @ enron . com ;\nshawn . cumberland @ enron . com ; jennifer . martinez @ enron . com ;\nsean . keenan @ enron . com ; webb . jennings @ enron . com ; brian . hendon @ enron . com ;\nbilly . braddock @ enron . com ; paul . burkhart @ enron . com ;\ngarrett . tripp @ enron . com ; john . massey @ enron . com ;\nv . charles . weldon @ enron . com ; phayes @ enron . com ; ross . mesquita @ enron . com ;\ndavid . mitchell @ enron . com ; brian . kerrigan @ enron . com ;\nmark . gandy @ enron . com ; jennifer . martinez @ enron . com ;\nsean . keenan @ enron . com ; webb . jennings @ enron . com ; brian . hendon @ enron . com ;\nbilly . braddock @ enron . com ; garrett . tripp @ enron . com ;\njohn . massey @ enron . com ; v . charles . weldon @ enron . com ; phayes @ enron . com ;\nross . mesquita @ enron . com ; david . mitchell @ enron . com ;\nchristie . patrick @ enron . com ; michael . b . rosen @ enron . com ;\ncindy . derecskey @ enron . com\ncc : elyse . kalmans @ enron . com ; richard . causey @ enron . com ;\nsally . beck @ enron . com ; vince . j . kaminski @ enron . com ;\njeffrey . a . shankman @ enron . com ; angela dorsey\nsubject : urgent deadline : rsvp by jan 22 nd : invitation to 2001 energy\nfinanceconference feb . 22 - 23 , 2001 - the university of texas at austin\nthe $ 500 registration fee is waived for any enron employee who wishes to\nattend this conference because of our relationship with the school .\nplease\nforward this information to your managers and staff members who would\nbenefit from participating in this important conference . ( note : vince\nkaminski is a panellist for the risk management session 3 . )\nplease note : the deadline for rsvp & hotel reservations is monday ,\njanuary\n22 nd don ' t miss this opportunity !\nshould you have any questions , please feel free to contact me at ext .\n37632 .\nkaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen marshall / hou / ect on 01 / 11 / 2001\n07 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" angela dorsey \" on 01 / 10 / 2001 03 : 06 : 18 pm\nto : \" angela dorsey \"\ncc : \" ehud ronn \" , \" sheridan titman ( e - mail ) \"\nsubject : invitation to 2001 energy finance conference - the university\nof\ntexas at austin\ncolleagues and friends of the center for energy finance education and\nresearch ( cefer ) :\nhappy new year ! hope you all had a wonderful holiday season .\non behalf of the university of texas finance department and cefer , we\nwould\nlike to cordially invite you to attend our :\n2001 energy finance conference\naustin , texas\nfebruary 22 - 23 , 2001\nhosted by the university of texas finance department\ncenter for energy finance education and research\ndr . ehud i . ronn and dr . sheridan titman are currently in the process of\nfinalizing the details of the conference agenda . we have listed the\nagenda\noutline below to assist you in your travel planning . each conference\nsession will be composed of a panel discussion between 3 - 4 guest\nspeakers\non the designated topic .\nas supporters of the center for energy finance education and research ,\nrepresentatives of our trustee corporations ( enron , el paso , reliant ,\nconoco , and southern ) will have the $ 500 conference fee waived .\nthe conference package includes thursday evening ' s cocktails &\ndinner and hotel / ut shuttle service , as well as friday ' s conference\nmeals ,\nsession materials and shuttle service . travel to austin and hotel\nreservations are each participant ' s responsibility .\na limited number of hotel rooms are being tentatively held at the\nradisson\nhotel on town lake under the group name \" university of texas finance\ndepartment \" for the nights of thursday , 2 / 22 / 01 and friday , 2 / 23 / 01 ( the\nlatter evening for those who choose to stay in austin after the\nconference ' s conclusion ) . to guarantee room reservations , you will need\nto\ncontact the radisson hotel at ( 512 ) 478 - 9611 no later than monday ,\njanuary\n22 nd , and make your reservations with a credit card . please let me know\nwhen you have made those arrangements so that i can make sure the\nradisson\ngives you the special room rate of $ 129 / night .\nplease rsvp your interest in attending this conference no later than\njanuary 22 nd to angela . dorsey @ bus . utexas . edu , or ( 512 ) 232 - 7386 , as\nseating\navailability is limited . please feel free to extend this invitation to\nyour colleagues who might be interested in attending this conference .\ncenter for energy finance education and research\nprogram of the 2001 energy finance conference\nfebruary 22 - 23 , 2001\nthursday , feb 22 :\n3 : 00 p . m . reserved rooms at the radisson hotel available for\ncheck - in\n5 : 30 p . m . bus will pick up guests at the radisson for transport to\nut club *\n6 : 00 p . m . cocktails , ut club 9 th floor\n7 : 00 p . m . dinner , ut club\n8 : 00 p . m . keynote speaker\n9 : 00 p . m . bus will transport guests back to hotel\nfriday , feb 23 :\n7 : 45 a . m . bus will pick up at the radisson for transport to ut\n8 : 30 a . m . session 1 - real options\npanelists : jim dyer , ut ( chair )\nsheridan titman , ut\njohn mccormack , stern stewart & co .\n10 : 00 a . m . coffee break\n10 : 15 a . m . session 2 - deregulation\npanelists : david eaton , ut ( chair )\ndavid spence , ut\njeff sandefer , sandefer capital\npartners / ut\npeter nance , teknecon energy risk\nadvisors\n11 : 45 a . m . catered lunch & keynote speaker\n1 : 30 p . m . guest tour - eds financial trading & technology center\n2 : 00 p . m . session 3 - risk management\npanelists : keith brown , ut ( chair )\nvince kaminski , enron\nalexander eydeland , southern co .\nehud i . ronn , ut\n3 : 30 p . m . snack break\n3 : 45 p . m . session 4 - globalization of the energy business\npanelists : laura starks , ut ( chair )\nbob goldman , conoco\nray hill , southern co .\n5 : 15 p . m . wrap - up\n5 : 30 p . m . bus picks up for transport to airport / dinner\n6 : 30 p . m . working dinner for senior officers of energy finance\ncenter\ntrustees\n* we have made arrangements to provide shuttle service between the\nradisson\nhotel and ut during the conference . however , if you choose to stay at an\nalternative hotel , then transportation to conference events\nwill become your responsibility .\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.422+0000", "entityId": 9618, "properties": {"text": "Subject: re : urgent deadline : rsvp by jan 22 nd : invitation to 2001 energy\nfinance conference feb . 22 - 23 , 2001 - the university of texas at austin\nthanks vince . if there are other members in your group that did not get this\ne - mail , please forward it to them . the school called yesterday and they said\nthat no one from enron was taking advantage of the conference other than\nyourself .\nthanks again .\nkaren", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.426+0000", "entityId": 9619, "properties": {"text": "Subject: re : urgent deadline : rsvp by jan 22 nd : invitation to 2001 energy\nfinance conference feb . 22 - 23 , 2001 - the university of texas at austin\nkaren ,\ni shall attend the conference ,\nboth days .\nvince kaminski\nfrom : karen marshall 01 / 17 / 2001 07 : 59 pm\nto : david haug / enron _ development @ enron _ development , gary\nhickerson / hou / ect @ ect , craig childers / hou / ees @ ees , thomas\nsuffield / na / enron @ enron , ben f glisan / hou / ect @ ect , ermes\nmelinchon / enron _ development @ enron _ development , hal elrod / corp / enron @ enron ,\nclay spears / hou / ect @ ect , kelly mahmoud / hou / ect @ ect , ellen fowler / enron\ncommunications @ enron communications , kevin kuykendall / hou / ect @ ect , fred\nmitro / hou / ect @ ect , kyle kettler / hou / ect @ ect , jeff bartlett / hou / ect @ ect , paul\nj broderick / hou / ect @ ect , john house / hou / ect @ ect , george\nmccormick / hou / ect @ ect , guido caranti / enron _ development @ enron _ development , ken\nsissingh / corp / enron @ enron , gwynn gorsuch / na / enron @ enron , mark gandy / enron\ncommunications @ enron communications , shawn\ncumberland / enron _ development @ enron _ development , jennifer\nmartinez / hou / ect @ ect , sean keenan / hou / ect @ ect , webb jennings / hou / ect @ ect ,\nbrian hendon / enron communications @ enron communications , billy braddock / enron\ncommunications @ enron communications , paul burkhart / enron communications @ enron\ncommunications , garrett tripp / tor / ect @ ect , john massey / hou / ect @ ect , v charles\nweldon / hou / ect @ ect , peter hayes / hou / ees @ ees , ross mesquita / na / enron @ enron ,\ndavid mitchell / hou / ect @ ect , brian kerrigan / hou / ect @ ect , mark gandy / enron\ncommunications @ enron communications , jennifer martinez / hou / ect @ ect , sean\nkeenan / hou / ect @ ect , webb jennings / hou / ect @ ect , brian hendon / enron\ncommunications @ enron communications , billy braddock / enron\ncommunications @ enron communications , garrett tripp / tor / ect @ ect , john\nmassey / hou / ect @ ect , v charles weldon / hou / ect @ ect , peter hayes / hou / ees @ ees ,\nross mesquita / na / enron @ enron , david mitchell / hou / ect @ ect , christie\npatrick / hou / ect @ ect , michael b rosen / hou / ect @ ect , cindy\nderecskey / corp / enron @ enron\ncc : elyse kalmans / corp / enron @ enron , richard causey / corp / enron @ enron , sally\nbeck / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jeffrey a\nshankman / hou / ect @ ect , angela . dorsey @ bus . utexas . edu\nsubject : urgent deadline : rsvp by jan 22 nd : invitation to 2001 energy finance\nconference feb . 22 - 23 , 2001 - the university of texas at austin\nthe $ 500 registration fee is waived for any enron employee who wishes to\nattend this conference because of our relationship with the school . please\nforward this information to your managers and staff members who would benefit\nfrom participating in this important conference . ( note : vince kaminski is a\npanellist for the risk management session 3 . )\nplease note : the deadline for rsvp & hotel reservations is monday , january\n22 nd don ' t miss this opportunity !\nshould you have any questions , please feel free to contact me at ext . 37632 .\nkaren\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karen marshall / hou / ect on 01 / 11 / 2001\n07 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" angela dorsey \" on 01 / 10 / 2001 03 : 06 : 18 pm\nto : \" angela dorsey \"\ncc : \" ehud ronn \" , \" sheridan titman ( e - mail ) \"\nsubject : invitation to 2001 energy finance conference - the university of\ntexas at austin\ncolleagues and friends of the center for energy finance education and\nresearch ( cefer ) :\nhappy new year ! hope you all had a wonderful holiday season .\non behalf of the university of texas finance department and cefer , we\nwould\nlike to cordially invite you to attend our :\n2001 energy finance conference\naustin , texas\nfebruary 22 - 23 , 2001\nhosted by the university of texas finance department\ncenter for energy finance education and research\ndr . ehud i . ronn and dr . sheridan titman are currently in the process of\nfinalizing the details of the conference agenda . we have listed the\nagenda\noutline below to assist you in your travel planning . each conference\nsession will be composed of a panel discussion between 3 - 4 guest\nspeakers\non the designated topic .\nas supporters of the center for energy finance education and research ,\nrepresentatives of our trustee corporations ( enron , el paso , reliant ,\nconoco , and southern ) will have the $ 500 conference fee waived .\nthe conference package includes thursday evening ' s cocktails &\ndinner and hotel / ut shuttle service , as well as friday ' s conference\nmeals ,\nsession materials and shuttle service . travel to austin and hotel\nreservations are each participant ' s responsibility .\na limited number of hotel rooms are being tentatively held at the\nradisson\nhotel on town lake under the group name \" university of texas finance\ndepartment \" for the nights of thursday , 2 / 22 / 01 and friday , 2 / 23 / 01 ( the\nlatter evening for those who choose to stay in austin after the\nconference ' s conclusion ) . to guarantee room reservations , you will need\nto\ncontact the radisson hotel at ( 512 ) 478 - 9611 no later than monday ,\njanuary\n22 nd , and make your reservations with a credit card . please let me know\nwhen you have made those arrangements so that i can make sure the\nradisson\ngives you the special room rate of $ 129 / night .\nplease rsvp your interest in attending this conference no later than\njanuary 22 nd to angela . dorsey @ bus . utexas . edu , or ( 512 ) 232 - 7386 , as\nseating\navailability is limited . please feel free to extend this invitation to\nyour colleagues who might be interested in attending this conference .\ncenter for energy finance education and research\nprogram of the 2001 energy finance conference\nfebruary 22 - 23 , 2001\nthursday , feb 22 :\n3 : 00 p . m . reserved rooms at the radisson hotel available for\ncheck - in\n5 : 30 p . m . bus will pick up guests at the radisson for transport to\nut club *\n6 : 00 p . m . cocktails , ut club 9 th floor\n7 : 00 p . m . dinner , ut club\n8 : 00 p . m . keynote speaker\n9 : 00 p . m . bus will transport guests back to hotel\nfriday , feb 23 :\n7 : 45 a . m . bus will pick up at the radisson for transport to ut\n8 : 30 a . m . session 1 - real options\npanelists : jim dyer , ut ( chair )\nsheridan titman , ut\njohn mccormack , stern stewart & co .\n10 : 00 a . m . coffee break\n10 : 15 a . m . session 2 - deregulation\npanelists : david eaton , ut ( chair )\ndavid spence , ut\njeff sandefer , sandefer capital\npartners / ut\npeter nance , teknecon energy risk\nadvisors\n11 : 45 a . m . catered lunch & keynote speaker\n1 : 30 p . m . guest tour - eds financial trading & technology center\n2 : 00 p . m . session 3 - risk management\npanelists : keith brown , ut ( chair )\nvince kaminski , enron\nalexander eydeland , southern co .\nehud i . ronn , ut\n3 : 30 p . m . snack break\n3 : 45 p . m . session 4 - globalization of the energy business\npanelists : laura starks , ut ( chair )\nbob goldman , conoco\nray hill , southern co .\n5 : 15 p . m . wrap - up\n5 : 30 p . m . bus picks up for transport to airport / dinner\n6 : 30 p . m . working dinner for senior officers of energy finance\ncenter\ntrustees\n* we have made arrangements to provide shuttle service between the\nradisson\nhotel and ut during the conference . however , if you choose to stay at an\nalternative hotel , then transportation to conference events\nwill become your responsibility .\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.432+0000", "entityId": 9620, "properties": {"text": "Subject: charm\nsee below for more information on the willis analytic product . i will\nprovide the brochure when it arrives and we can discuss scheduling the\nproposed meeting .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james l bouillion / hou / ect on 01 / 18 / 2001\n04 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" bertil olsson \" on 01 / 18 / 2001 04 : 03 : 18 pm\nto : jbouill @ ect . enron . com\ncc : \" david scott \" , \" carl groth \"\nsubject : charm\njim ,\n1 . i can confirm that charm does express traditional exposures in a var\nformat . one of the beauties of charm is that it expresses any quantifiable\nexposure in a var format , i . e . financial , insurance , weather risks . in\naddition , it has the capability of incorporating correlations between risks\n- to the extent that they can be quantified .\n2 . to get the ball rolling , i will send you a broschure of charm this\nweek . i also suggest a conference call with carl groth of our ny office .\ncarl knows charm well and my thought is that we can give you some more\nideas of this product in order for you to decide whether or not you would\nlike to pursue a presentation . a presentation can be arranged at the\nlocation of your choice .\nlet me know if the above fits your purpose or if you would prefer to move\nin another direction .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.436+0000", "entityId": 9621, "properties": {"text": "Subject: contract for henwood engagement\nsandeep ,\nbonnie nelson , who has drafted the attached contract for the henwood\nengagement , feels that we should make every attempt to put a written\nagreement in place immediately . otherwise , we may be in violation of enron\npolicy regarding contract work . can you review the document prior to coming\nback to houston , so that it can be sent to henwood ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 19 / 2001\n04 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbonnie nelson @ enron _ development\n01 / 19 / 2001 11 : 54 am\nto : stinson gibner / hou / ect @ ect , bruce\nlundstrom / enron _ development @ enron _ development , lauren\ncc : vince j kaminski / hou / ect @ ect , sandeep\nsubject : re : ca for henwood engagement\nstinson ,\nplease find attached a revised version of the draft consulting agreement with\nhenwood . fyi , i am attaching both a clean version and one marked toshow\nchanges from the last draft i sent you . please let me know if you have any\nquestions or comments on the agreement or the most recent changes .\nwhat is the status of henwood ? do you still want to engage them and what is\nthe timeframe for their work ( the dates in the draft may need to be\ncorrected ) .\nbruce and lauren : please advise on which enron entity should be the party to\nthis consulting agreement .\nthanks , bonnie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.440+0000", "entityId": 9622, "properties": {"text": "Subject: re : ca for henwood engagement\ni suspect that enron india llc would be the entity to use . however , is\nanyone from tax involved in this ? if not , we need to get someone in the\nloop .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nlauren hagerty\nenron india / ebs asia\nthree allen center , room 2119\nhouston , texas 77002\nphone : 713 - 646 - 6529\nfax : 713 - 646 - 7549\nbonnie nelson\n01 / 19 / 2001 11 : 54 am\nto : stinson gibner / hou / ect @ ect , bruce\nlundstrom / enron _ development @ enron _ development , lauren\ncc : vince j kaminski / hou / ect @ ect , sandeep\nsubject : re : ca for henwood engagement\nstinson ,\nplease find attached a revised version of the draft consulting agreement with\nhenwood . fyi , i am attaching both a clean version and one marked toshow\nchanges from the last draft i sent you . please let me know if you have any\nquestions or comments on the agreement or the most recent changes .\nwhat is the status of henwood ? do you still want to engage them and what is\nthe timeframe for their work ( the dates in the draft may need to be\ncorrected ) .\nbruce and lauren : please advise on which enron entity should be the party to\nthis consulting agreement .\nthanks , bonnie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.445+0000", "entityId": 9623, "properties": {"text": "Subject: re : ca for henwood engagement\nstinson ,\nplease find attached a revised version of the draft consulting agreement with\nhenwood . fyi , i am attaching both a clean version and one marked toshow\nchanges from the last draft i sent you . please let me know if you have any\nquestions or comments on the agreement or the most recent changes .\nwhat is the status of henwood ? do you still want to engage them and what is\nthe timeframe for their work ( the dates in the draft may need to be\ncorrected ) .\nbruce and lauren : please advise on which enron entity should be the party to\nthis consulting agreement .\nthanks , bonnie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.450+0000", "entityId": 9624, "properties": {"text": "Subject: from the enron india newsdesk - jan 18 th newsclips\nvince ,\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 19 / 2001 05 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom the enron india newsdesk - jan 18 th newsclips\nuntie them ( editorial )\nthursday jan 18 2001 , http : / / www . economictimes . com / today / 18 edito 2 . htm\n- - - - - - -\nstate not to give tax sops to dpc for buying naphtha from ioc , ( sanjay jog )\nthursday jan 18\n- - - - - - -\ncentre yet to receive proposal on enron\nthursday jan 18 2001 , http : / / www . economictimes . com / today / 18 infro 2 . htm\n- - - - - - -\nuntie them ( editorial )\nthursday jan 18 2001\nthe government of maharashtra wants new delhi to convince the power trading\ncorporation , a central utility , to buy power from dabhol and sell it across\nthe country . it would be far simpler if dabhol and all independent power\nproducers were allowed to sell power to whoever was willing to pay for\nit . that , unfortunately , is not allowed by law , which forces private sector\ngenerators to sell power only to state utilities , which in turn , are not\npermitted to sell power across states on their own .\nmost state electricity boards are bankrupt . mseb reportedly owes central\nutilities rs 5 , 000 crore . they cannot bring themselves to charge many types\nof users for the power consumed , nor can they prevent large - scale theft of\nelectricity . few , including wealthy maharashtra , have the will to reform\nstate electricity boards and privatise transmission and distribution . given\nthis profile of buyers , private generators demand sovereign guarantees to\nhelp them tide over default risks . but the guarantees merely insulate ipps\nagainst risk . they cannot make sebs solvent . yet , india needs power\ndesperately . maharashtra , india \u0001 , s richest state , experiences power shortages\nof around 2 , 000 mw , about a sixth of its peak needs .\nover time , the hunger for power will only grow . india cannot afford to wait\nfor the painful politics of seb reform to work themselves out . the government\nshould bring in legislation that allows ipps to sell power directly to paying\ncustomers . this will free ipps from the clutches of bankrupt monopsony buyers .\nthe power trading legislation will have unexpectedly happy consequences for\nthe government too . once ipps are freed from their onerous obligations to sell\npower to single , mostly bankrupt buyers , their default risks will come down\nsubstantially . new delhi and state governments should then scrap the\nguarantees that they gave ipps in the past .\nthe combination of power trading , private investments in generation ,\ntransmission and distribution , and gradual seb reform will create a\ncommercial , workable and competitive power market in india . anything less\nwill be a recipe for disaster .\n- - - - - - -\nstate not to give tax sops to dpc for buying naphtha from ioc , ( sanjay jog )\nthursday jan 18 2001\nthe maharshtra government ' s finance department , which is striving to reduce\nfiscal deficit from rs 9 , 484 crore to rs 3 , 484 crore by the beginning of\napril this year , has expressed its inability to provide a sales tax waiver to\nthe dabhol power company ( dpc ) on the procurement of 1 . 2 million tonne of\nnaphtha from the state - run indian oil corporation ( ioc ) .\nmantralaya sources told the financial express on wednesday that dpc would\nhave to pay 4 per cent sales tax . \" the government , way back in 1995 , has\nmodified the sales tax rate to 4 per cent to discourage the import of naphtha\nfrom gujarat by electrical companies operating in maharashtra . the decision\nwas taken with a view to encouraging electrical companies to procure naphtha\nat reduced rates within the state , \" government sources added . sources said\nthat these companies had to pay nearly 15 . 3 per cent sales tax on naphtha\nthat was procured from gujarat . however , following their representation , the\ngovernment slashed the sales tax rate to 4 per cent .\nthe state finance department ' s opinion , which would be presented before the\nstate cabinet shortly in order to take a final decision , deserves special\nsignificance especially when the state energy department and the loss - making\nmaharashtra state electricity board ( mseb ) have wholeheartedly supported the\ndpc ' s cause and recommended the sales tax waiver . dpc , which was asked by the\nunion ministry of oil and petroleum to procure naphtha within the country in\nview of excess availability , in its presentation to the state government and\nto mseb , had made it clear that it would be left with no alternative but to\npass on the additional burden on the mseb which would be ultimately passed on\nto its consumers . dpc had also told the state government that it had not paid\nsales tax on the procurement of naphtha from glencore in the calender year\n2000 .\nsources from the state energy department and mseb have stressed on the need\nfor such a waiver while expressing their inability to bear additional burden .\nthey have suggested that the state should reciprocate by offering a sales tax\nexemption to dpc because the ioc , at the behest of the centre , has tried to\nmatch the international landing price of naphtha during the recently signed\nmemorandum of agreement with dpc . \" if the state finance department sticks to\nits views , it may hurt the state as a whole , \" sources from the state energy\ndepartment and mseb said . dpc will procure naphtha at rs 11 , 050 per ton from\nioc during the calender year 2001 as compared to the rs 10 , 050 per tonne\nprice quoted by glencore . the naphtha price comprises $ 175 per tonne free on\nboard ( fob ) , 21 . 8 per cent of customs duty , 5 . 4 per cent of sales tax and\n$ 18 . 87 of premium .\ndpc senior vice president mukesh tyagi reiterated that the company has\nalready made an appeal to the state government for the sales tax waiver on\nnaphtha in the larger interest of the consumers . \" sales tax is a pass through\nand mseb , which will have to bear the additional burden , will pass it on the\nconsumers , \" he added .\n- - - - - - -\ncentre yet to receive proposal on enron\nthursday jan 18 2001\ncentre on wednesday said that it had not recevied any proposal from\nmaharashtra government seeking help to solve the tangle with the enron\npromoted dhabol power project relating to cost and surplus power . asked about\nthe reports that maharashtra government was sending a proposal that centre\nbuy surplus power from dhabol power company through power trading\ncorporation , power minister suresh prabhu said \" we have not received any\nproposal . \" \" we are carefully watching the situation and will await a concrete\nproposal before intervening in this matter , \" parbhu said on the sidelines of\ngreentech environment excellence awards ceremony , here . asked whether there\nwas any possibility of the government asking the power trading corporation to\nbuy power from the dhabol power corporation , prabhu replied \" what will the\nptc do with the power ? \"\nprabhu had earlier asked the state government to study the matter before\napproaching the centre for payment of dues . mseb had earlier declined to pick\nup its 15 per cent stake in phase ii of the 1444 mw project . the enron issue\nhas been hanging fire with the maharashtra state electricity board unable to\nclear the dues of dpc as a result of the skyrocketing prices of naphtha\ninfact mseb has asked dpc to backdown completely leading to a situation where\ndpc has stopped production at the facility from the begining of the\nmonth . state government has stepped in with support to the tune of rs 114\ncrore to enable mseb to clear the dues for october . mseb dues to dpc for\nnovember and december amount to over rs 300 crores .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.455+0000", "entityId": 9625, "properties": {"text": "Subject: riskcenter . com / flatiron group alliance announce garp risk review\nmagazine\nfor immediate release\ncontact : tom groenfeld\nthe flatiron group corp .\n973 - 925 - 9748\n973 - 925 - 9681 fax\ngroenfeldt @ aol . com\ngarp leverages riskcenter . com / flatiron group corp . alliance to produce garp\nrisk review and daily online risk news\nnew york , new york \u0001 ) january 17 th , 2001 \u0001 ) after a competitive bidding\nprocess , the global association of risk professionals ( garp ) has chosen an\nalliance formed by riskcenter . com and the flatiron group corp . to produce\nand manage garp \u0001 , s ( www . garp . com ) new proprietary online and print magazine\npublishing efforts .\ngarp is the industry association that represents risk managers in the\nsecurities industry . to serve these professionals , garp has publications ,\nevents , advocacy and 35 regional chapters worldwide . garp risk review will\nserve as the flagship communication piece that unites all of these elements .\nin the alliance , riskcenter . com will provide the daily risk management news\ncoverage on the garp web site . the flatiron group corp . will produce and\npublish the hard copy magazine called garp risk review .\n\" we are very excited about the publication of the online risk management\nnews and the garp risk review , \" says adam davids , ceo garp . \" both the daily\nnews and the garp risk review will provide our members with the information\nthey need to stay current on both a periodical and real - time basis . with\ninformation delivered in print and online , readers will be able get the\ninformation that they need in the method that works best for that\ninformation . garp represents a community of risk managers that are changing\nthe definition of their roles and developing their profession rapidly . we\nare extremely pleased to advance the growth of our profession with this\nexcellent marriage of content and medium through the combined efforts of\nriskcenter . com and the flatiron group . \"\nriskcenter . com , a financial risk management content media company ,\nsyndicates financial risk management news stories ( www . riskcenter . com )\nfocused on six risk categories - - credit , market , operational , ecommerce ,\nenergy and commodity \u0001 * that help financial executives make better decisions .\nthe flatiron group corp . ( www . windowsfs . com ) publishes windows in financial\nservices , a quarterly magazine covering the expanding use of microsoft\ntechnologies in the financial enterprise , and an accompanying newsletter for\ndevelopers working in financial services .\n\" i think our combination of news delivered over the internet in conjunction\nwith the garp risk review publication will play an important role in\neducating and informing risk professionals around the world , \u0001 8 says joseph\nviviani , president and publisher , the flatiron group . \" with our garp\naffiliation , we will have an unparalleled understanding of what our readers\nneed to know , and we will have access to the leading experts to impart the\nbest thinking in the field . this will be a must - read magazine in risk\nmanagement . \u0001 8\nabout garp\nthe global association of risk professionals ( garp ) is an independent\norganization of 15 , 000 financial risk management practitioners and\nresearchers . garp is a diverse international association of professionals\nfrom a variety of backgrounds and organizations who share a common interest\nin the field . garp ' s mission is to serve its members by facilitating the\nexchange of information , developing educational programs , and promoting\nstandards in the area of financial risk management . garp members discuss\ncurrent practices and regulation , and help bring forth potential risks in\nthe financial markets to the attention of other members and the public .\nabout riskcenter . com\nriskcenter . com is a media company that provides a daily web - based news\nservice that delivers original stories on six financial risk management\ncategories : market , credit , operational , ecommerce , commodity and energy .\nthe stories explain risk measurement and management issues , as well as the\nuse of risk information in capital allocation strategies .\nabout the flatiron group corporation\nthe flatiron group is a publishing company that currently produces a\nportfolio of products , including a magazine and a newsletter . its windows in\nfinancial services magazine focuses exclusively on the rapidly expanding use\nof microsoft technologies in financial services , from front office\napplications to back office processing . it provides real - world case studies\nshowing how firms are implementing new solutions built on the microsoft\nplatform .\nerik helland phone : 212 - 825 - 1525\nriskcenter , llc fax : 212 - 825 - 1530\n80 wall street mobile : 917 - 544 - 7676\nsuite 417 helland @ riskcenter . com\nnew york , ny 10005 www . riskcenter . com\n\" a financial risk management media company \"\n- garp alliance pr . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.459+0000", "entityId": 9626, "properties": {"text": "Subject: re : invitation to 2001 energy finance conference - the university\nof texas at austin\nsteve ,\nno problem . it was a very short meeting ( most people were out ) .\nyes , i will be in houston during the week of the conference .\nsee you in austin and in houston .\nvince\nsteven leppard\n01 / 19 / 2001 06 : 03 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : invitation to 2001 energy finance conference - the university of\ntexas at austin\nhi vince\ni see you ' re speaking at the austin conference . will you be in the houston\noffice during the earlier part of the week ? if so , i may look into arranging\na trip out to meet you guys , and take in the conference too .\nsorry i didn ' t dial in to the updat emeeting on tuesday - i was delivering\nprc feedback to my team .\nsteve\n- - - - - - - - - - - - - - - - - - - - - - forwarded by steven leppard / lon / ect on 19 / 01 / 2001\n12 : 04 - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" angela dorsey \" on 10 / 01 / 2001 21 : 06 : 18\nto : \" angela dorsey \"\ncc : \" ehud ronn \" , \" sheridan titman ( e - mail ) \"\nsubject : invitation to 2001 energy finance conference - the university of\ntexas at austin\ncolleagues and friends of the center for energy finance education and\nresearch ( cefer ) :\nhappy new year ! hope you all had a wonderful holiday season .\non behalf of the university of texas finance department and cefer , we\nwould\nlike to cordially invite you to attend our :\n2001 energy finance conference\naustin , texas\nfebruary 22 - 23 , 2001\nhosted by the university of texas finance department\ncenter for energy finance education and research\ndr . ehud i . ronn and dr . sheridan titman are currently in the process of\nfinalizing the details of the conference agenda . we have listed the\nagenda\noutline below to assist you in your travel planning . each conference\nsession will be composed of a panel discussion between 3 - 4 guest\nspeakers\non the designated topic .\nas supporters of the center for energy finance education and research ,\nrepresentatives of our trustee corporations ( enron , el paso , reliant ,\nconoco , and southern ) will have the $ 500 conference fee waived .\nthe conference package includes thursday evening ' s cocktails &\ndinner and hotel / ut shuttle service , as well as friday ' s conference\nmeals ,\nsession materials and shuttle service . travel to austin and hotel\nreservations are each participant ' s responsibility .\na limited number of hotel rooms are being tentatively held at the\nradisson\nhotel on town lake under the group name \" university of texas finance\ndepartment \" for the nights of thursday , 2 / 22 / 01 and friday , 2 / 23 / 01 ( the\nlatter evening for those who choose to stay in austin after the\nconference ' s conclusion ) . to guarantee room reservations , you will need\nto\ncontact the radisson hotel at ( 512 ) 478 - 9611 no later than monday ,\njanuary\n22 nd , and make your reservations with a credit card . please let me know\nwhen you have made those arrangements so that i can make sure the\nradisson\ngives you the special room rate of $ 129 / night .\nplease rsvp your interest in attending this conference no later than\njanuary 22 nd to angela . dorsey @ bus . utexas . edu , or ( 512 ) 232 - 7386 , as\nseating\navailability is limited . please feel free to extend this invitation to\nyour colleagues who might be interested in attending this conference .\ncenter for energy finance education and research\nprogram of the 2001 energy finance conference\nfebruary 22 - 23 , 2001\nthursday , feb 22 :\n3 : 00 p . m . reserved rooms at the radisson hotel available for\ncheck - in\n5 : 30 p . m . bus will pick up guests at the radisson for transport to\nut club *\n6 : 00 p . m . cocktails , ut club 9 th floor\n7 : 00 p . m . dinner , ut club\n8 : 00 p . m . keynote speaker\n9 : 00 p . m . bus will transport guests back to hotel\nfriday , feb 23 :\n7 : 45 a . m . bus will pick up at the radisson for transport to ut\n8 : 30 a . m . session 1 - real options\npanelists : jim dyer , ut ( chair )\nsheridan titman , ut\njohn mccormack , stern stewart & co .\n10 : 00 a . m . coffee break\n10 : 15 a . m . session 2 - deregulation\npanelists : david eaton , ut ( chair )\ndavid spence , ut\njeff sandefer , sandefer capital\npartners / ut\npeter nance , teknecon energy risk\nadvisors\n11 : 45 a . m . catered lunch & keynote speaker\n1 : 30 p . m . guest tour - eds financial trading & technology center\n2 : 00 p . m . session 3 - risk management\npanelists : keith brown , ut ( chair )\nvince kaminski , enron\nalexander eydeland , southern co .\nehud i . ronn , ut\n3 : 30 p . m . snack break\n3 : 45 p . m . session 4 - globalization of the energy business\npanelists : laura starks , ut ( chair )\nbob goldman , conoco\nray hill , southern co .\n5 : 15 p . m . wrap - up\n5 : 30 p . m . bus picks up for transport to airport / dinner\n6 : 30 p . m . working dinner for senior officers of energy finance\ncenter\ntrustees\n* we have made arrangements to provide shuttle service between the\nradisson\nhotel and ut during the conference . however , if you choose to stay at an\nalternative hotel , then transportation to conference events\nwill become your responsibility .\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.466+0000", "entityId": 9627, "properties": {"text": "Subject: re : zakup ksiazki w wnt - \" inzynieria finanasowa \"\ndziekuje za szybka odpowiedz . czy mozliwa jest platnosc czekiem ?\njako alternatywne rozwiazanie prosze podac mi cene w zlotych i moja rodzina w\nkraju\ndokona przelewu .\nprosze o kopie odpowiedzi na adres : vkaminski @ aol . com .\ndziekuje .\nw . kaminski\n\" wydawnictwa naukowo - techniczne \" on 01 / 19 / 2001\n10 : 09 : 27 am\nto :\ncc :\nsubject : zakup ksiazki w wnt - \" inzynieria finanasowa \"\nuprzejmie informuje , ze ksiazke wyslemy po wplynieciu na nasze konto\nodpowiedniej kwoty . kwota ta zawiera wartosc ksiazki ( 13 , 75 $ ) , koszty\nbankowe ( 5 $ ) oraz koszty pocztowe ( 6 , 5 $ lub 11 $ ) .\n- przy przesylce droga morska prosze wplacic 15 , 25 $\n- przy przesylce lotniczej prosze wplacic 29 , 75 $\nnietety , nie mamy mozliwosci technicznych pobrania oplaty karta kredytowa .\nfakture wysylam poczta .\nnasze konto : pbk s . a . iii o / warszawa\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 11101024 - 401020003963\nnazs adres : wydawnictwa naukowo - techniczne , mazowiecka 2 / 4 , 00 - 048 ? ? ? ? ? ? ?\nwarszawa , polska\nserdecznie pozdrawiam\ngrazyna piesniewska", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.475+0000", "entityId": 9628, "properties": {"text": "Subject: re : fwd : summer internship - - ph . d . in chicago\nstinson ,\ncan you ask alex and tanya to interview this guy ?\ni wan to make a recommendation to celeste based on\nan this interview .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 19 / 2001\n05 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nceleste roberts\n01 / 18 / 2001 04 : 33 pm\nto : vince j kaminski / hou / ect @ ect\ncc : paul lebeau / na / enron @ enron\nsubject : re : fwd : summer internship - - ph . d . in chicago\nvince :\nhave you had a chance to interview ? if not , we can make arrangements to have\ncandidate interviewed when we go to chicago for summer associate interviews .\nlet me know and i will get the chicago recruiter to add to schedule .\nvince j kaminski\n01 / 17 / 2001 03 : 51 pm\nto : celeste roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : fwd : summer internship - - ph . d . in chicago\nceleste ,\ni am a very good customer of your group .\nthis is another student ( this time from chicago ) i would be glad to take into\nthe group\nas an intern . the resume is attached at the bottom of this message .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 17 / 2001\n03 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nli xiao on 01 / 13 / 2001 01 : 41 : 29 pm\nto : vkamins @ ect . enron . com\ncc :\nsubject : fwd : summer internship - - ph . d . in chicago\nhi , vince ,\nthis is li , writing from u . of chicago .\ni am in the second quarter here .\nthe study and social life is extremely busy at the school .\nbut i enjoy connecting the knowledge i learn everyday here\nwith the experience i had with enron .\na schoolmate of mine , a chicago ph . d . candidate in finance ,\nis looking for an internship for the coming summer .\ni recommend him to write to you to see if you are interested in\nor if there is a need . if so , you can contact with him directly .\nhe is a really bright guy . if not , hope you don ' t mind that\ni sell enron at school so hard .\nagain , thanks for all the help you gave me .\nhave a good new year .\nli\np . s . : cover letter below and resume attached .\nli xiao\nuniversity of chicago\ngraduate school of business , class of 2002\n( 773 ) 955 - 0710\ndear dr . vince kaminski ,\ni am a ph . d . student in finance at the university of chicago gsb who =\nhopes to find a summer internship at enron of 2001 ( between june and =\nseptember ) . i heard your group from my friend li , who worked at enron =\nfor 3 year . she spoke highly of you . if it ' s okay , i am primarily =\ninterested in risk management .\nat the university of chicago , i will have completed all the ph . d . =\ncourses in the area of finance by the end of the first year . as normally =\nit takes two years to finish the required finance courses , i decided to =\ntake all the finance courses in the first year . in the fall quarter , i =\nalready took empirical asset pricing and theoretical asset pricing and =\ndid very well . in the winter quarter , i will be taking corporate =\nfinance , continuous time finance and behavioral finance . i am exposed to =\nall fields of finance . prior to coming to chicago , i received a master ' s =\ndegree in economics at washington university in saint louis where i =\nacquired skills in economic analysis . i also have a strong background in =\nstatistics and mathematics . this makes me believe that i have acquired =\nthe ability to do financial research .\nprior to coming to the united state , i was an outstanding graduate from =\nbeijing university , china . i was the founder and president of beijng =\nuniveristy society of oceanology . i also organized a research jouney in =\nthe round - the - bo - sea economic region . these experience helped to hone my =\ncommunication and interpersonal skills .\nas illustrated above , my skills and expertise are ideally suited for =\nfinancial research . my resume is enclosed . in the event that you think =\nan interview is in need , my time is very flexible . your assistance is =\nappreciated .\nsincerely yours ,\njason chen ( huafeng )\n6022 s . drexel ave , apt 612\nchicago , il 60637\n( 773 ) 955 - 0348\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.486+0000", "entityId": 9629, "properties": {"text": "Subject: action learning project\ncongratulations ! your company project was selected by the students for the\n2001 action learning project program at rice university . the company day was\na huge success last week , and we appreciate all your time and effort . on\nmonday , january 22 , we will send you a list of your team members via email\nwith a hard copy to follow . student team members will be in touch soon so\nthat you can plan your first meeting .\nthanks for your continued support and interest in the jones school .\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncarrie chamberlin miller\ndirector of mba program\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 5260\nfax : ( 713 ) 348 - 5251\ne - mail : cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.492+0000", "entityId": 9630, "properties": {"text": "Subject: california power 1 / 19 / 00\nexecutive summary :\nsb - 7 x gives dept . of water and resources given legislative authority to\nundertake short - term power purchases with no price cap through feb . 2 nd\nnew legislation ( ab - 1 x and sb - 6 x ) would seek ( 1 ) long - term contracts with 5 . 5\ncent cap and ( 2 ) creation of california power and conservation financing\nauthority\nthe long - term contracts proposed in ab - 1 x are likely to be subject to\nsignificant amendment and renegotiation prior to the feb . 2 nd expiration of\nsb - 7 x .\nthe authority proposed in sb - 6 x would have bond issuance powers to finance\nnew generation capacity and conservation measures\nnegotiations under way on using bond authority for a utility\nbailout - - utilities and state government split over debt obligations of\nutility parents\nstate borrowing plans and power purchases create credit risks for state\ntreasury ; socal edison misses more payments\nbush administration opposes price caps , but is supporting state efforts to\nsplit pg we believe he then could be willing to guarantee or\nissue\nbonds to deal with the rest .\nas one very senior california political leader explained , getting the utility\nholding companies to eat a substantial part of the debt they owe themselves\nis the key to solving the back debt problem without provoking widespread\npublic outrage about a \" bailout \" of private price - gouging companies with\ntaxpayer money . since 75 % of californians currently blame the utilities and\nthe puc for this crisis ( and only 10 % blame davis ) , this is a crucial\npolitical stance for the governor .\nbut , of course , absorbing anything like $ 6 billion in debt would be quite a\nshock to the seemingly healthy holding company and power - generating branches\nof the two utilities , and they began spreading the word that they were quite\nwilling to accept bankruptcy . thus by mid - week , both\nsides had pushed themselves toward a resolution in federal bankruptcy court\nthat would be a worst case solution for all sides : the country ' s economy\nwould\nsuffer from the resulting credit shock , the governor ' s political future would\nsuffer from the electricity rate increases almost certain to be mandated by a\nbankruptcy judge , while most private sector legal authorities believe the\nutilities corporate holding structure would ultimately be breached during\nbankruptcy\nprocedures and they would end up having to absorb some significant amount of\nthe debt in the end . in addition , they would most likely face a state\ngovernment\ndetermined to use state powers of condemnation to enter the power business in\na major way .\nsenator burton ' s sb 6 x legislation will strengthen those powers dramatically\nto make this point quite explicit . it would set up a \" california power and\nconservation\nfinancing authority , \" with the power to issue bonds and invoke eminent\ndomain . it would finance new power plants , and \" consider the feasibility and\npublic\ninterest of the state acquiring , operating , and maintaining transmission\nfacilities currently owned by investor - owned and municipal utilities . \"\nas we write this , all sides are trying to construct a path back down from the\nbankruptcy ledge to safe ground , and there is no question the tone has\nshifted\nin the last 24 hours from macho confrontation to \" maybe we ' ve run this thing\nout as far as we can . \" but as we have noted , the chance for miscalculation is\nstill quite high . there is no solution agreed to at this time , the stand - off\nover how much debt the state government will absorb versus the utilities '\nholding\ncompany is continuing , and the technical fact of default still makes it\npossible for some bank to trigger bankruptcy by demanding immediate\naccelerated payment .\n5 . default update - thursday\nsocal edison - $ 215 million default to california power exchange .\nafter edison failed to make a $ 215 m electricity payment yesterday , the\ncalifornia power authority began seizing long - term contacts and reselling\nthem to recoup some of the money owed to generators . pg & e said it expects\nits trading privileges at the cal . power authority to be suspended today ,\nleaving them with only its generation from nuclear and hydroelectric sources .\nwhile the ongoing wave of defaults has severely restricted pg & e ' s and socal ' s\nability to buy power , the department of water and resources will be able to\npick up some of the slack , at least in the very short - term .\nthe state itself may be getting into risky credit territory . the proposed\ncalifornia public power authority would borrow in the neighborhood of $ 1 . 3\nbillion from the state general fund in advance of this year ' s expected fiscal\nsurplus , with the loan to be repaid by the authority from expected future\nrevenues . with near - bankrupt utilities and a freeze on rate hikes , it is\nunclear where the revenues would come from . the amount borrowed and terms of\nrepayment will be no doubt examined very carefully by the bond rating\nagencies .\n5 . bush policies\nas we reported on wednesday , the bush administration continues to demonstrate\nlittle interest in getting involved in the california crisis .\npresident - elect bush surprised state leaders yesterday with his comments ,\nwhich essentially said that excessive environmental regulation was the root\nof the current supply shortage . bush and his top officials appear to be\nunanimously opposed to long - term price caps .\nhowever , there is one issue of considerable importance to the administration ,\naccording to a source close to a top bush economic advisor . there is\nsignificant concern that pg & e ' s credit problems could cause gas suppliers to\nstop shipments of gas through pg & e ' s pipeline . the risk would be that the\npipeline could \" go dry \" , causing significant and possibly dangerous\ndisruptions in california residences and businesses . to prevent this\nproblem , bush is working with davis on a proposal to split pg & e into separate\ngas and electric companies . the gas company would be solvent , but the\nelectric company would go immediately into ch . 11 following significant\ndefaults .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.496+0000", "entityId": 9631, "properties": {"text": "Subject: california power 1 / 19 / 00\n1 . legislation passes - short - term measures , very long - term measures\nas we said yesterday , sb - 7 x passed the california state senate easily . the\nbill gives the state the immediate authority to purchase power via the\ndepartment of water and resources until february 2 nd . the department will\nhave $ 400 million available to finance power purchases , but there\nexpectations that these costs could easily rise to $ 1 billion by next week .\nab - 1 x has evolved into a longer - term solution and in its current form , would\nauthorize the department of water and resources to enter into long - term\ncontracts ( as opposed to the 15 day contracts in sb - 7 x ) to buy power at a\nprice cap of 5 . 5 cents per kw / h . this legislation is not expected to pass\ntoday and will likely be changed considerably during the upcoming two week\nperiod covered by sb - 7 x , when negotiations between generators , the utilities ,\nand the state are likely to resume .\na second piece of legislation under - - sb 6 x - - has created uncertainty in the\nmarkets . this legislation will create a california public power authority\nwith bond issuance authority . the uncertainty concerns whether the new\nauthority will address the problem of the $ 12 billion in outstanding debt\nowed by the utilities . the current text of the legislation focuses only on\nlonger term measures such as expanding generation capacity and improving\nefficiency . yet the legislation also says \" the authority may issue bonds ,\nexercise power of eminent domain , and enter into joint power agreements and\nbuy , own , and sell land and facilities necessary for the financing of a\nproject . \" the general nature of this language leaves open the possibility of\neither issuing bonds to finance past debts , or using eminent domain or the\nbond authority to finance the utilities as they enter into a ch . 11 proceeding .\n2 . default update\n3 . bush\nas we reported on wednesday , the bush administration continues to demonstrate\nlittle interest in getting involved", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.501+0000", "entityId": 9632, "properties": {"text": "Subject: re : merit increases\nvince ,\ni am going to have the team look at the problem . hopefully it will be an\neasy fix . otherwise , we can work off the worksheets that you complete over\nthe weekend . you have my cell number if you have any questions .\nnorma villarreal\n713 - 598 - 1545\nvince j kaminski\n01 / 19 / 2001 06 : 09 pm\nto : norma villarreal / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : merit increases\nnorma ,\nit seems that there is a bug in the system . i made an error mixing equity and\nmerit raises in one column . the system does not allow me to correct the\nmistake by\nmoving the entries from one column to another . i can enter the changes , but\nafter i save them the system reverts to original designations .\nas a result , the columns contain mixed entries related to merit and equity\nraises .\nthe column totals are misleading .\ni am taking a csv version home to continue making adjustments .\ni shall work at home monday ( 281 367 5377 ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.505+0000", "entityId": 9633, "properties": {"text": "Subject: re : transition to research group - an update\nsounds great - -\nmolly\nvince j kaminski\n01 / 19 / 2001 06 : 21 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\nthanks .\nlet ' s wait for sandeep : he comes back wednesday .\nanshuman will work with him .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 06 : 08 pm\nto : margaret daffin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nonce again , margaret , we are in your debt . vince , let ' s get together some\ntime next week and see where you would like us to go with this . . .\nmolly\nmargaret daffin\n01 / 19 / 2001 03 : 27 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly : just to be sure that everyone understands , anshuman cannot work in\nthe us on a bl visa - he can only come here for business meetings and\ntraining .\nwe will have to get him the ll visa in order for him to work in the us .\nmargaret\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 02 : 53 pm\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\nthank you so much for the information , vince . i hope that you have a great\nweekend !\nmolly\nvince j kaminski\n01 / 19 / 2001 02 : 39 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\ni shall ask sandeep to do it when he comes back from india next week .\ni have just learned that anshuman has bl visa and he can start on a project\nas a person\ndelegated by dhabol power company to houston . to be absolutely above the line ,\ni would still arrange the ll visa .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 10 : 44 am\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\ni agree that it makes sense to put the ll in place . there are several things\nwe will need from you in order to start the visa process . the first is a\nfairly detailed job description for anshuman . secondly , we also need to know\nwhether or not he will be in a managerial position here and / or managing a\nproject . if there is someone else in your group who can furnish this job\ndescription , just let me know and i will be happy to contact him / her .\nas for sandeep , i have been told that he is a u . s . resident so there should\nbe no problems with him . margaret daffin will be contacting him to be\nabsolutely sure .\nthanks ,\nmolly\nvince j kaminski\n01 / 19 / 2001 10 : 21 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\nlet ' s get ll for anshuman , just in case . i am sure he will stay here for a\nwhile\nonce he comes . it is quite obvious jeff shankman will have to keep him\nlonger ,\ngiven the priority of the project .\ni assume there are no problems with sandeep .\nthanks .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 09 : 54 am\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\nthank you for the update , vince . i have been working with margaret daffin\nwith regard to anshuman ' s visa status . we will have to get an ll visa in\nplace before he can come to the united states , even in a temporary\ncapacity . do you want to move forward with that effort at this time , or\nis the possibility of him coming to the u . s . so remote that it wouldn ' t be\nworth the time and money right now ?\nmolly\nvince j kaminski\n01 / 19 / 2001 09 : 42 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : transition to research group - an update\nmolly ,\nthis is an update on anshuman . please , see below . it seems\nthat his transfer is not an issue for the time being .\nwe can put it on a back - burner till he gets here .\nvince\np . s . the relevant section .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 19 / 2001\n09 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli @ enron _ development\n01 / 19 / 2001 04 : 32 am\nto : vince j kaminski @ ect\ncc :\nsubject : transition to research group - an update\nvince ,\njust wanted to let you know that i had a meeting with wade cline ( coo , enron\nindia ) , neil mcgregor ( president , dpc ) , and mohan gurunath ( cfo , dpc ) today .\nthough i had already spoken to all of them earlier about my joining your\ngroup , today it became official , and all of them supported the move . i\nexplained to them what we would be doing , and the results expected from the\nhenwood study .\ndpc would like to pay the costs for the study , and that was mentioned . there\nmaybe some tax issues etc . that need to be cleared , and other related issues\nthat i would like to discuss with you , so i will leave them till i get to\nhouston .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\ni am very thankful to you for giving the opportunity you have . things here\nhave deteriorated dramatically over the last few weeks . morale is quite down\ndue to many lay - offs .\ni am really looking forward to returning to houston , and the family ! !\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.512+0000", "entityId": 9634, "properties": {"text": "Subject: merit increases\nnorma ,\nit seems that there is a bug in the system . i made an error mixing equity and\nmerit raises in one column . the system does not allow me to correct the\nmistake by\nmoving the entries from one column to another . i can enter the changes , but\nafter i save them the system reverts to original designations .\nas a result , the columns contain mixed entries related to merit and equity\nraises .\nthe column totals are misleading .\ni am taking a csv version home to continue making adjustments .\ni shall work at home monday ( 281 367 5377 ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.517+0000", "entityId": 9635, "properties": {"text": "Subject: congestion pricing & forecasting program\ni would like to go to this conference / tutorial on congestion modeling and\nmanagement . is that ok , or would you prefer somebody else to go ?\nthanks ,\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 01 / 19 / 2001\n05 : 38 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ninfocast on 01 / 19 / 2001 03 : 58 : 13 pm\nto : vasant . shanbhogue @ enron . com\ncc :\nsubject : congestion pricing & forecasting program\nas an infocast preferred customer , we would like to invite you to attend our\nhighly acclaimed program , congestion pricing & forecasting , scheduled for\nfebruary 21 - 23 , 2001 in washington dc at a very special discount ! attend\nthis program for only $ 895 . 00 and the pre - conference workshop , congestion\npricing tutorial : from lmp to flow - based for only $ 520 . 00 . this is a 25 %\nsavings off the standard tuition ! however , this special offer is only good\nthrough friday , january 26 , 2001 and seats are rapidly filling ! attached you\nwill find a copy of this timely and informative infocast program , or you can\nvisit our website at www . infocastinc . com .\ncongestion pricing & forecasting has been designed to provide you with a\nclear understanding of how to predict the impacts of congestion and what\nmechanisms can be used to control these impacts . experts will discuss :\n? the most advanced techniques for forecasting transmission congestion ,\nlocational prices and ftr prices\n? the latest approaches to the \" seams \" issues\n? the pros and cons of implementing a flow - based congestion management system\ndon ' t miss this excellent opportunity . but remember , this offer is only good\nuntil january 26 , 2001 so please phone me at ( 818 ) 888 - 4444 ext . 20 or email\nme at mail @ infocastinc . com and mention this letter to be registered at this\nexceptional price . you can also fax or mail me your completed registration\nform along with this letter .\nbest regards ,\nhiedy vitug\npreferred customer representative\ninfocast\n( 818 ) 888 - 4444 ext . 20\nfax ( 818 ) 888 - 4440\nemail : mail @ infocastinc . com\nenclosure\nif you do not wish to receive e - mail notification of infocast conferences ,\nclick on the text below and send\nmailto : mail @ . com ? subject = delete from mailing list\n- congest . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.521+0000", "entityId": 9636, "properties": {"text": "Subject: re : transition to research group - an update\nmolly : just to be sure that everyone understands , anshuman cannot work in\nthe us on a bl visa - he can only come here for business meetings and\ntraining .\nwe will have to get him the ll visa in order for him to work in the us .\nmargaret\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 02 : 53 pm\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\nthank you so much for the information , vince . i hope that you have a great\nweekend !\nmolly\nvince j kaminski\n01 / 19 / 2001 02 : 39 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\ni shall ask sandeep to do it when he comes back from india next week .\ni have just learned that anshuman has bl visa and he can start on a project\nas a person\ndelegated by dhabol power company to houston . to be absolutely above the line ,\ni would still arrange the ll visa .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 10 : 44 am\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\ni agree that it makes sense to put the ll in place . there are several things\nwe will need from you in order to start the visa process . the first is a\nfairly detailed job description for anshuman . secondly , we also need to know\nwhether or not he will be in a managerial position here and / or managing a\nproject . if there is someone else in your group who can furnish this job\ndescription , just let me know and i will be happy to contact him / her .\nas for sandeep , i have been told that he is a u . s . resident so there should\nbe no problems with him . margaret daffin will be contacting him to be\nabsolutely sure .\nthanks ,\nmolly\nvince j kaminski\n01 / 19 / 2001 10 : 21 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\nlet ' s get ll for anshuman , just in case . i am sure he will stay here for a\nwhile\nonce he comes . it is quite obvious jeff shankman will have to keep him\nlonger ,\ngiven the priority of the project .\ni assume there are no problems with sandeep .\nthanks .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 09 : 54 am\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\nthank you for the update , vince . i have been working with margaret daffin\nwith regard to anshuman ' s visa status . we will have to get an ll visa in\nplace before he can come to the united states , even in a temporary\ncapacity . do you want to move forward with that effort at this time , or\nis the possibility of him coming to the u . s . so remote that it wouldn ' t be\nworth the time and money right now ?\nmolly\nvince j kaminski\n01 / 19 / 2001 09 : 42 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : transition to research group - an update\nmolly ,\nthis is an update on anshuman . please , see below . it seems\nthat his transfer is not an issue for the time being .\nwe can put it on a back - burner till he gets here .\nvince\np . s . the relevant section .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 19 / 2001\n09 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli @ enron _ development\n01 / 19 / 2001 04 : 32 am\nto : vince j kaminski @ ect\ncc :\nsubject : transition to research group - an update\nvince ,\njust wanted to let you know that i had a meeting with wade cline ( coo , enron\nindia ) , neil mcgregor ( president , dpc ) , and mohan gurunath ( cfo , dpc ) today .\nthough i had already spoken to all of them earlier about my joining your\ngroup , today it became official , and all of them supported the move . i\nexplained to them what we would be doing , and the results expected from the\nhenwood study .\ndpc would like to pay the costs for the study , and that was mentioned . there\nmaybe some tax issues etc . that need to be cleared , and other related issues\nthat i would like to discuss with you , so i will leave them till i get to\nhouston .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\ni am very thankful to you for giving the opportunity you have . things here\nhave deteriorated dramatically over the last few weeks . morale is quite down\ndue to many lay - offs .\ni am really looking forward to returning to houston , and the family ! !\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.526+0000", "entityId": 9637, "properties": {"text": "Subject: iris mack\nvince : i received a phone call yesterday afternoon from iris , with a special\nrequest of you . she says that she will have to break her lease when she\ncomes to houston . she will have a three - month period during which she will\nhave to pay rent ( march , april and may ) , at the monthly rate of $ 1 , 175 . she\nis asking if we would be willing to pay $ 3 , 525 to compensate her for this\nextra expense .\ni have a phone call in to the relocation department to find out how much cash\niris will be receiving from us under the normal relocation benefits , and will\nlet you know as soon as i hear from them . i would imagine that it is a\nfairly substantial amount , since she is moving from california and since our\nrelocation benefit is very generous .\nmolly", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.531+0000", "entityId": 9638, "properties": {"text": "Subject: transition to research group - an update\nvince ,\njust wanted to let you know that i had a meeting with wade cline ( coo , enron\nindia ) , neil mcgregor ( president , dpc ) , and mohan gurunath ( cfo , dpc ) today .\nthough i had already spoken to all of them earlier about my joining your\ngroup , today it became official , and all of them supported the move . i\nexplained to them what we would be doing , and the results expected from the\nhenwood study .\ndpc would like to pay the costs for the study , and that was mentioned . there\nmaybe some tax issues etc . that need to be cleared , and other related issues\nthat i would like to discuss with you , so i will leave them till i get to\nhouston .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\ni am very thankful to you for giving the opportunity you have . things here\nhave deteriorated dramatically over the last few weeks . morale is quite down\ndue to many lay - offs .\ni am really looking forward to returning to houston , and the family ! !\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.536+0000", "entityId": 9639, "properties": {"text": "Subject: latest draft - - comments ?\nvince ,\nthis is my latest effort and i would appreciate your thoughts . i know that\nwe haven ' t written together before so let me assure me that you will not\nhurt my feelings by \" slashing away \" with a red pen . i think that i have\nput all the clay on the table for this piece of sculpture but it is still\npretty crude . help me \" refine \" the work to create something we can both be\nvery proud of .\nby the way , i know you are extremely busy right now so don ' t feel pressured\nto spend lots of time here . any guidance you can offer will be\nappreciated . i don ' t know what the editor ' s time schedule is but he asked\nme to send him a draft on monday . you and i will still be able to edit the\nmanuscript but he will begin reading and editing it too . i ' ll let you know\nas soon as i have a final deadline .\nyour friend ,\njohn\np . s . hope life is a bit calmer for you . by the way , i ' m reading an\ninteresting book entitled \" the four agreements \" by miguel ruiz that\ndocuments the toltec philosophy of life in the context of the dreams of\nreality that we all create . you might enjoy it .\n- enron _ paper _ 1 _ 16 _ 01 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.541+0000", "entityId": 9640, "properties": {"text": "Subject: treasury memo\nkevin ,\nthe memo looks good . one suggestion i have is to emphasize what we can\ndeliver by end of january since that was the initial deadline . although the\nmemo indicates that a lot of work has been done , the reader might want to\nknow what he can get in his hand in terms of models or quantitative results .\nyou will of course describe everything in your presentation , but given that\nsetting up presentations may take time , you should think about creating some\ntemplate / model and send it with brief explanations . for example , a template\nfor trs as it stands , and a template listing trigger events and how the\nresults will be displayed . you can then expand on this in your presentations .\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.547+0000", "entityId": 9641, "properties": {"text": "Subject: tuesday morning meeting first thing ? ? ?\nvince :\ni am sorry i couldnt connect with you last week . how would your tuesday\nmorning first thing , say 800 or 830 am be to get together to discuss the\ndemo proposal and other issues ? i can come by your office very conveniently\nthen . give me an email shout if you could squeeze it in on monday . i look\nforward to speaking with you .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.552+0000", "entityId": 9642, "properties": {"text": "Subject: demand price elasticities\nhere are excerpts from some work i recently did for epri . perhaps you will\nfind it of some interest .\ni don ' t have the right to send you the whole article but i was allowed to\nsend you some excerpts .\nnaturally , this is intended for you alone .\nbest regards ,\njhherbert\n- t 64 - 67 nletter 1 - 01 rev . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.557+0000", "entityId": 9643, "properties": {"text": "Subject: fw : wharton resume submission\n- - - - - original message - - - - -\nfrom : kim whitsel [ mailto : kimberly . whitsel . wgo 2 @ wharton . upenn . edu ]\nsent : friday , december 22 , 2000 6 : 51 pm\nto : kristin . gandy @ enron . com\nsubject : wharton resume submission\nsummer position under wharton schedule # 1823\n- kim whitsel - enron cover letter . doc\n- kim whitsel - wharton 2 resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.567+0000", "entityId": 9644, "properties": {"text": "Subject: enron tiger team\ndear jeff ,\nour tiger team very much enjoyed your presentation about enron global markets\non friday . given that we have latitude in our project scope , our team would\nlike to assist enron in evaluating a new market opportunity . you mentioned\nseveral markets that enron is considering in 2001 , including transportation ,\ncement , coffee , cocoa , sugar , etc . we believe that a project of this sort\nwill give us the opportunity to really learn how enron creates value , what\nits business model and core competencies are , and how they can be translated\nto a new market . furthermore , we can get an in - depth understanding of an\nindustry . we believe our project will complement any analysis that your\nbusiness group is currently undertaking . please propose the top three new\nmarkets that you would like us to evaluate for enron .\nupon receipt of your proposal , perhaps we could set up a conference call to\ndiscuss your thoughts and to make a final selection .\nyour expeditious response is appreciated .\nregards ,\njosh leventhal\n215 - 546 - 2103", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.575+0000", "entityId": 9645, "properties": {"text": "Subject: re : ca for henwood engagement\nbadri ,\nin the event dpc signs the contract , we would need to make it indian tax\nefficient . please suggest the structure / clauses / information required by which\nwe need not pay withholding taxes . if you need more info on the scope of work\ncontemplated you can talk to wade / neil / sandeep .\nregards\nmohan\nsandeep kohli\n01 / 22 / 2001 07 : 11 am\nto : wade cline / enron _ development @ enron _ development , mohan gurunath\ncc : stinson gibner @ ect , vince j kaminski @ ect , bruce\nlundstrom / enron _ development @ enron _ development , bonnie\nnelson / enron _ development @ enron _ development , lauren haggety\nsubject : re : ca for henwood engagement\nwade / mohan ,\nplease find below the last draft copy of the henwood consulting agreement .\nwe need to sign this asap so as to not be in violation of ene policies .\nas you will see , the draft agreement is made out with enron in mind , even\nthough we have left the company name blank in the agreement .\nmohan - last when we spoke ( friday ) , you were going to explore the tax\naspects of having dpc be the signing company . please tell us if that works .\nseparately , you and wade may need to consider how dpc lenders may look upon\nsome of the information emerging from this study , and whether you want all of\nit in lender domain .\nbased on the same you may want to decide whether this needs to be eipl , ene\nhouston , or dpc . we could also have a version where ene houston is signing\nthe contract on behalf of dpc .\nplease let me know what you decide , and we will proceed accordingly . if you\nwould like someone in eipl / dpc to be signing the contract , please let me\nknow , who the signing authority is . i suspect , that even i could sign on\nbehalf of dpc or ene ? ? if so , i will be in houston on wednesday , and sign\nat the time . if not , you can assign someone to sign .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 22 / 2001 06 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlauren hagerty\n01 / 20 / 2001 01 : 01 am\nto : bonnie nelson / enron _ development @ enron _ development\ncc : bruce lundstrom / enron _ development @ enron _ development , sandeep\nkohli / enron _ development @ enron _ development , stinson gibner / hou / ect @ ect , vince\nj kaminski / hou / ect @ ect\nsubject : re : ca for henwood engagement\ni suspect that enron india llc would be the entity to use . however , is\nanyone from tax involved in this ? if not , we need to get someone in the\nloop .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nlauren hagerty\nenron india / ebs asia\nthree allen center , room 2119\nhouston , texas 77002\nphone : 713 - 646 - 6529\nfax : 713 - 646 - 7549\nbonnie nelson\n01 / 19 / 2001 11 : 54 am\nto : stinson gibner / hou / ect @ ect , bruce\nlundstrom / enron _ development @ enron _ development , lauren\ncc : vince j kaminski / hou / ect @ ect , sandeep\nsubject : re : ca for henwood engagement\nstinson ,\nplease find attached a revised version of the draft consulting agreement with\nhenwood . fyi , i am attaching both a clean version and one marked toshow\nchanges from the last draft i sent you . please let me know if you have any\nquestions or comments on the agreement or the most recent changes .\nwhat is the status of henwood ? do you still want to engage them and what is\nthe timeframe for their work ( the dates in the draft may need to be\ncorrected ) .\nbruce and lauren : please advise on which enron entity should be the party to\nthis consulting agreement .\nthanks , bonnie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.581+0000", "entityId": 9646, "properties": {"text": "Subject: california update 1 / 22 / 01\nexecutive summary\ndiscussions continue today over bill ablx , focus will be on price and term .\nnew legislation introduced today whereby the state will try to save the\nutilities from bankruptcy by taking ownership of utilities ' hydro assets in\nexchange for rate increases .\nwednesday , state receives bids from auction , rate ranges are expected to be\nbetween 5 . 5 and 8 . 0 cents per kilowatt hour .\nmid week , audit findings will be released ; audit expected to show pg & e ' s\nutility subsidiary handed over $ 5 b to the holding company . the holding\ncompany used $ 4 . 4 b to pay shareholder dividends and buyback stock .\nstate commissioned study to see who would benefit more in a possible\nbankruptcy scenario . bankruptcy still very possible for both\ncompanies .\ndavis concerned about possible ballot issues and how those may effect futue\nsolutions or \" bail out \" .\nlegislation\nthere will be continued discussion regarding bill ablx in the senate today .\nthe discussion will focus on the rate cap of 5 . 5 cents per kilowatt hour as\nwell as the term . assemblyman keeley , the author , indicated that he believed\n5 . 5 cents was \" a fantasy \" and impossible to obtain .\ntoday , assembly speaker bob hertzberg , d - sherman oaks and assemblyman fred\nkeeley , d - boulder creek will introduce legislation whereby the state\nwould temporary or permanently take both pg & e and edision ' s hydroelectric\nfacilities or transmission lines ( or both ) in exchange for keeping the\nutilities out of\nbankruptcy . the state would allow pg & e and edison to impose rate increases ,\nhowever , the rates would not rise beyond the hikes approved earlier this\nmonth by the cpuc as an emergency surcharge . the money collected from\nconsumers would go toward paying off their current debt and the state\nwould then enter into long - term contracts with power generators . under the\nbill , the state of california would control 10 % of all california ' s\nelectricity . as you\ncan imagine , this legislation has not received unanimous praise . according\nto recent corporate filings , pg & e ' s hydroelectric plants alone would be\nvalued\nbetween $ 3 and $ 5 billion . this amount just happens to be what davis\nestimates to be the final amount of money the state will have to guarantee\nonce\nthe audit of the utility companies is released and the political pressure is\nescalated on the parent companies to absorb some of the $ 12 billion in debt .\ndavis\nis telling people that he thinks the audit will show the state should help\nwith about $ 4 billion in debt , while the utilities , of course , say the full\n$ 12 billion should\nbe covered .\non wednesday , state officials will see the results of sealed bids from energy\nsuppliers for long term contracts and see how close to reality their\neffort to keep utility rates unchanged for consumers will come . davis\ninsists there are already several bids for his 5 . 5 cents per kilowatt hour\nceiling , though few\nagree with his opinion . a handful of smaller , independent electricity\nproviders with about a 30 % share of california power market , indicated sunday\nnight they would come down to \" less than eight cents \" or less than half of\nwhat they currently charge , in return for the stability of long term\ncontracts . because\nconsumers pay about 6 . 5 cents per kilowatt hour for electricity under current\npuc rules , any hope california has to \" work off \" the back debts for these\nutilities lies\nin hitting something very close to davis ' price cap , without falling back on\nhigher prices for consumers . the level of bids will be particularly\nimportant since bond\nrating agencies moved to put the state of california on a credit watch on\nfriday , worried that there was no obvious long - term repayment plan for the\nbillions of\ndollars they are on the hook for spending to keep the lights on in the state .\nutility ' s audit\nby the middle of this week , california auditors will release their findings\nabout how much money pg & e and socal edison actually owe to institutions\noutside their own holding company structure . this will define the limits of\nwhat the state will guarantee , if they guarantee any of the debt . the truly\nexplosive\npart of the audit may be its findings that the two companies used billions of\ndollars from consumers to buy back their own stock in recent years . a\nsource with\nknowledge of the audits said the audit is expected to show that in the last\nthree years , pg & e ' s utility subsidiary handed over about $ 5 billion to the\nholding\ncompany . of that total , the holding company used $ 4 . 4 billion to pay\nshareholder dividends and buyback shares of its stock .\nanother finding from the audit shows that state helped caused the current\npower crisis when regulators , at the time of deregulation ( under the\ndirection of\nformer r - gov . pete wilson ) , forced the two utilities to sell at least half of\ntheir power - generating plants . auditors are expected to say that if the\nutilities\nstill owned all these plants , electricity would cost only 7 cents a kilowatt\nhour , compared with over 30 cents an hour on average in december and january .\nbankruptcy\nthe threat of bankruptcy is still very real for both utilities . senior\nadvisors said that these utilities were on the path often followed by utility\ncompanies that\nended in bankruptcy . as all the parties involved hunker down for another\nintensely political week , they all remain determined to avoid bankruptcy , but\nto push\nthis as close to the brink as possible in the hopes of squeezing out an\nadvantage . under such conditions , the risks of one or more of the players\nfumbling and\ntriggering the great unknowable outcome of bankruptcy , is still quite high .\ncalifornia ' s political leaders order a series of independent analyses to\ndetermine who would suffer most in a case of bankruptcy , the state or the two\nutilities .\nthe short answer was that no one has any idea . below are the findings of the\nreport and some of the possible scenarios that would face a bankruptcy judge :\n1 ) would the companies be eligible for chapter 11 style temporary bankruptcy ?\nsome of the advisors thought that pg & e and edison ' s finances were so\nbad that chapter 11 style temporary bankruptcy may not even be an option .\nadvisors said that a bankruptcy judge might take a good look at the corporate\ndebt load and decide that reorganization would do no good and order the\ncompanies into full liquidation . this would most certainly be guaranteed\nchaos .\n2 ) could the bankruptcy court actually force the puc to raise the price of\nelectricity to consumers ? the legal basis for passing on rate increases to\nconsumers is a lot less solid than originally thought , particularly if there\nis widespread public outrage directed at the electricity companies . and\nthere is still the\nquestion of the unilateral power of a bankruptcy judge .\n3 ) if the bankruptcy judge takes his job of protecting corporate assets\nseriously and finds that pg & e and edison cannot afford to buy electricity ,\nhe could order them to stop buying it and thus lead to massive power outages .\n4 ) if the utilities go into bankruptcy , the first creditors in line would be\nthe lenders and bondholders with collateral pledges . the state could become\nalmost the last creditor in line as it is just another electricity supplier\n( one of the reasons why suppliers won ' t sell electricity on credit to these\ncompanies now ) .\n5 ) if the two companies went bankrupt , it would be the largest bankruptcies\nin history , straining just about everyone involved in the process .\n6 ) the corporate approval allowing the parent company to segregate assets\nfrom the utility by the ferc for pg & e and already in place for edison\nmay be far less effective than the utilities or the ratings agencies\ncurrently think . this is particularly true if this week ' s audit shows the two\ncorporations transferring\nbillions of dollars in the last few years into stock buybacks and shareholder\ndividend payments .\ndavis\nopinion polls show that governor gray davis is getting high marks for his\njob , and the utilities are increasingly viewed as the culprits . one of davis\nconcern ' s is , according to a senior official in the governor ' s office , that a\ndeal is carved out that triggers a popular ballot initiative which is so\nanti - utility and\nanti - business that it cripples future growth in the state . according to a\nsenior official , \" no one thought howard jarvis and his property tax\ninitiative would\nsucceed in destroying our education system , but he did , with one just ballot\nline and a lot of popular revulsion . the threat of direct , popular action\nis at least as large now as then . \" consumer advocate harvey rosenfield is\nalready threatening to draw up a ballot initiative at the first sign that\nindividual\nelectricity consumers are being asked to help the utility companies repay\ntheir debt through higher rate - payer bills . this official goes on to say ,\n\" the\nanger at utility companies is so high here , that almost anything rosenfield\ncould think of would pass and we couldn ' t do anything about it . \" this threat\nhas\nbegun to complicate the one escape route on the debt front that had always\nappeared wide open to political leaders - - floating a bond issue or a\nguarantee\nfor the money owed to institutions outside the corporate holding structure ,\nand then letting the companies work that off with profits over the next\nseveral years .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.586+0000", "entityId": 9647, "properties": {"text": "Subject: greetings from garp\ngreetings from garp ! we are having the next meeting january 30 th at enron .\ntime 6 : 30 pm until 8 : 30 pm\nyou are invited to bring a friend with you , however you will need to rsvp .\nvince kaminski will lead a discussion regarding volatility in the energy\nmarkets . refreshments provided .\nin order to provide easy access to enron ' s facilities and due to security\nconcerns , garp and enron request that everyone rsvp . a guest list will be\ngiven to security .\nrsvp to rita hennessy . her email address is :\nrita . hennessy @ enron . com\ni would like to express my thanks , in advance , to mr . kaminski for leading\nour group in this informative discussion . as many of you are aware , energy\nmarkets present some unique challenges to risk managers , and volatility is\ncertainly one of them !\nlook forward to seeing you on tuesday night .\nregards ,\nfrank hayden\nregional director - garp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.590+0000", "entityId": 9648, "properties": {"text": "Subject: vince kaminski bullet points\n* definition of price volatility\n* historical vs . implied vs . model derived volatility\n* estimation of volatility from historical data in the presence of\n? ? ? ? ? ? - seasonality\n? ? ? ? ? ? - jumps\n? ? ? ? ? ? - fat tails\n* stochastic volatility models\n* recent cases of extreme price volatility in the power markets in the us :\nthe causes and remedies", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.595+0000", "entityId": 9649, "properties": {"text": "Subject: power 2001\npaul ,\nmy apologies for a delay in getting back to you with my bullet points . the\nbeginning of the year was quite hectic . i am working from home today , trying\nto catch up .\nthe program for the 2001 conference looks great ; it ' s likely to be the most\ninteresting and best attended eprm conference ( hopefully , some players will\nbe still around ) .\nto answer some of your questions :\n1 . i shall be glad to serve on the panel\n2 . the title of the talk is fine ( american spelling of modelling is modeling )\n3 . bullet points will follow in the next message ( i shall send it in a few\nminutes )\n4 . vincent kaminski , managing director , enron corp .\n5 . vincent kaminski\n? ? ? enron corp .\n? ? ? 1400 smith\n? ? ? room ebl 962\n? ? ? houston , tx 77002\n? ? ? ? ? ? regards ,\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.600+0000", "entityId": 9650, "properties": {"text": "Subject: forma platnosci z \" inzynierie finansowa \"\nuprzejmie informuje , ze przyjmujemy czeki , ale niechetnie . wysokie koszty\nprzy realizacji czekow .\ngdyby rodziana sz . pana wplacila naleznosc w zlotowkach , to odpadna koszta\nbankowe - 5 $ . naleznosc w zl wynosi 81 zl lub 99 zl ( lot ) .\nw liscie pomylilam sie ? - zamiast 25 , 25 $ napisalam 15 , 25 $ . przepraszam .\nwplacenie pieniedzy w polsce znacznie przyspieszy wysylke .\newentualny czek prosze przyslac na sume 25 , 25 $ lub 29 , 75 $\npozdrawiam serdecznie\ngrazyna piesniewska", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.606+0000", "entityId": 9651, "properties": {"text": "Subject: good looking guy\nhi vince .\nlook at this guy ( picture included ) .\nhe is \" lawrence \" , the guy i spoke to you about last week that you said you\nwanted to see .\nhe asked me if he can do a phone interview . . . i think williams , ford and\nsdcera are soliciting him .\nif i told him you and enron are interested - he would drop the others off the\nmap for a chance to interview with you .\ni like him too as he follows my instructions as is pleasant to work with\n( most are not ) .\ndo you want to chat with him ?\non your command ,\njeff wesley\nalways held in strict confidence .\njeff wesley\n949 813 2241 hotline\n347 487 8957 voice / fax us\n+ 44 ( 845 ) 3341644 uk\n* get free , secure online email at http : / / www . ziplip . com / *\n- imageo 02 . jpg\n- lawrenceagent 9498132241 new . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.611+0000", "entityId": 9652, "properties": {"text": "Subject: enron alp\ndear alp company representatives :\nthank you again for your participation in the alp company day at rice\nuniversity . we are pleased to inform you that your project proposal has been\nchosen for the 2001 alp program . the following students will be working on\nyour project :\ncalabrese , luigi ? ? ? ? ? ? ? ? luigical @ rice . edu\nghose , ivy ? ? ? ? ? ? ? ? ? ? ? ? ? ? ghosei @ rice . edu\nghosh , ronnie ? ? ? ghoshr @ rice . edu\niqbal , syed ? ? ? ? ? ? ? ? ? ? ? ? ? iqbal @ rice . edu\nsud , pravas ? ? ? ? ? ? ? ? ? ? ? ? ? pravas @ rice . edu\nwomack , charles ? cwomack @ rice . edu\nthe faculty liaisons for your project are :\nbarrett , deborah ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? barrett @ rice . edu\nuecker , will ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? uecker @ rice . edu\nloughridge , dennis ? ? ? ? ? ? loughrid @ rice . edu\na representative from the student team will contact you soon to set up a\nmeeting time . if you need to contact your team , i have included the students '\nemail addresses . they check their email on a regular basis , so this is a good\nway to communicate with them .\nplease let me know if you have any questions regarding this information .\nagain , thank you for your interest in the jones school . best wishes for a\ngreat project !\ncarrie chamberlin miller\ndirector of mba program\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 5260\nfax : ( 713 ) 348 - 5251\ne - mail : cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /\npamela castro\nmba program associate\nrice university\nphone : 713 - 348 - 6223\nfax : 713 - 348 - 5251\ne - mail : castro @ rice . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.616+0000", "entityId": 9653, "properties": {"text": "Subject: wharton fap 2001 webcafe access\nabout a month , ago you should have received an invitation to your fap 2001\nwebcafe room ( s ) that contained log on information to access the room . if you\nhave not received the email or are having difficulty logging into the\nwebcafe , please contact the wharton webcafe team be sending email to\nwebcafe @ wharton . upenn . edu and we will be happy to assist you .\nbest regards ,\nmichele krull\nwcit webcafe team\nwebcafe @ wharton . upenn . edu\n215 - 573 - 4262", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.621+0000", "entityId": 9654, "properties": {"text": "Subject: post visit - enron\nvince and christie :\nagain , many thanks for inviting and hosting the tiger team for an on - site\nvisit . it was a wonderful opportunity to meet and attend the very\ninformative briefings from the many senior level contacts you provided to\nlearn more about enron overall . it was enlightening and exciting to learn so\nmuch about enron . what a great company ! the trip got rave reviews from the\nstudents . you were delightful and most accommodating hosts .\nas for the project , i am in the process of confirming dates and locations\nfor the weekly thursday ( 4 : 00 - 6 : 00 pm est ) videoconferences with enron and\nwill copy you on the email to the students . i know they are anxious to begin\nto narrow the scope as soon as possible so that can begin the research and\nanalysis of their particular projects .\nthank you for your time and support of the project .\nsincerely ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.626+0000", "entityId": 9655, "properties": {"text": "Subject: good morning\nvince ,\ntwo items . unless you have an objection , i plan to ship the paper on to\ndon chew at the journal this morning . we can still work on the article but\nhe needs something to begin the editing process .\nsecond , in the same issue as our paper will appear the transcript of a\nroundtable discussion involving sheridan titman , john mccormack ( stern\nstewart ) , ron erd ( southern energy ) , jeff sandifer ( president of sandifer\ncapital - - $ 700 million undermanagement ) , and gene humphries . attached you\nwill find a section that will not be in the final document , but that i\nthought you might like to read in light of our own discussions over the\ncourse of writing this paper .\nhave a great day .\njohn\n- interview _ outtakes . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.631+0000", "entityId": 9656, "properties": {"text": "Subject: good morning\nvince ,\nattached is a note written by a former phd student of mine . he comments on\nthe calif power problem and i thought you and others at enron might enjoy\nhis insights .\njohn\n- california is worth 50 basis points . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.635+0000", "entityId": 9657, "properties": {"text": "Subject: christie and vince :\non behalf of enron team 1 , we would like to thank you for being such gracious\nhosts . the trip far exceeded our expectations and we appreciate the fact\nthat so many people took time out of their busy schedules to meet with us . a\nspecial thanks to the both of you for spending all day friday with us . we\nlook forward to our telephone conference on thursday and to working with you\nin the future .\nteam 1 :\nkim whitsel\nnick levitt\nvincent chen\njack rejtman\ndeepa mallik\ntulika bhalla", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.640+0000", "entityId": 9658, "properties": {"text": "Subject: re : transition to research group - an update - anshuman shrivastava\nmolly : in order that i may proceed with the visa application for mr .\nanshuman shrivastava , i will need from enron ' s h . r . department , the following\ninformation :\na copy of a job offer letter / contract / assignment letter for his us position\nwith us salary\na job description of the position in the us\na salary range for that position\nco # and cost center #\nplease let me have this at your earliest convenience .\nmany thanks\nmargaret\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 06 : 08 pm\nto : margaret daffin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nonce again , margaret , we are in your debt . vince , let ' s get together some\ntime next week and see where you would like us to go with this . . .\nmolly\nmargaret daffin\n01 / 19 / 2001 03 : 27 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly : just to be sure that everyone understands , anshuman cannot work in\nthe us on a bl visa - he can only come here for business meetings and\ntraining .\nwe will have to get him the ll visa in order for him to work in the us .\nmargaret\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 02 : 53 pm\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\nthank you so much for the information , vince . i hope that you have a great\nweekend !\nmolly\nvince j kaminski\n01 / 19 / 2001 02 : 39 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\ni shall ask sandeep to do it when he comes back from india next week .\ni have just learned that anshuman has bl visa and he can start on a project\nas a person\ndelegated by dhabol power company to houston . to be absolutely above the line ,\ni would still arrange the ll visa .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 10 : 44 am\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\ni agree that it makes sense to put the ll in place . there are several things\nwe will need from you in order to start the visa process . the first is a\nfairly detailed job description for anshuman . secondly , we also need to know\nwhether or not he will be in a managerial position here and / or managing a\nproject . if there is someone else in your group who can furnish this job\ndescription , just let me know and i will be happy to contact him / her .\nas for sandeep , i have been told that he is a u . s . resident so there should\nbe no problems with him . margaret daffin will be contacting him to be\nabsolutely sure .\nthanks ,\nmolly\nvince j kaminski\n01 / 19 / 2001 10 : 21 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : transition to research group - an update\nmolly ,\nlet ' s get ll for anshuman , just in case . i am sure he will stay here for a\nwhile\nonce he comes . it is quite obvious jeff shankman will have to keep him\nlonger ,\ngiven the priority of the project .\ni assume there are no problems with sandeep .\nthanks .\nvince\nenron north america corp .\nfrom : molly magee 01 / 19 / 2001 09 : 54 am\nto : vince j kaminski / hou / ect @ ect\ncc : margaret daffin / hou / ect @ ect\nsubject : re : transition to research group - an update\nthank you for the update , vince . i have been working with margaret daffin\nwith regard to anshuman ' s visa status . we will have to get an ll visa in\nplace before he can come to the united states , even in a temporary\ncapacity . do you want to move forward with that effort at this time , or\nis the possibility of him coming to the u . s . so remote that it wouldn ' t be\nworth the time and money right now ?\nmolly\nvince j kaminski\n01 / 19 / 2001 09 : 42 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : transition to research group - an update\nmolly ,\nthis is an update on anshuman . please , see below . it seems\nthat his transfer is not an issue for the time being .\nwe can put it on a back - burner till he gets here .\nvince\np . s . the relevant section .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 19 / 2001\n09 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli @ enron _ development\n01 / 19 / 2001 04 : 32 am\nto : vince j kaminski @ ect\ncc :\nsubject : transition to research group - an update\nvince ,\njust wanted to let you know that i had a meeting with wade cline ( coo , enron\nindia ) , neil mcgregor ( president , dpc ) , and mohan gurunath ( cfo , dpc ) today .\nthough i had already spoken to all of them earlier about my joining your\ngroup , today it became official , and all of them supported the move . i\nexplained to them what we would be doing , and the results expected from the\nhenwood study .\ndpc would like to pay the costs for the study , and that was mentioned . there\nmaybe some tax issues etc . that need to be cleared , and other related issues\nthat i would like to discuss with you , so i will leave them till i get to\nhouston .\ni also spoke about anshuman , and there was resistance to his leaing for such\na long time . however , i have agreement from folks here to send him to\nhouston for a shorter stint on dpc budget . i will try to finalize that\nbefore i leave . i will call you in the evening to just chat .\ni am very thankful to you for giving the opportunity you have . things here\nhave deteriorated dramatically over the last few weeks . morale is quite down\ndue to many lay - offs .\ni am really looking forward to returning to houston , and the family ! !\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.644+0000", "entityId": 9659, "properties": {"text": "Subject: anshuman shrivastava - visa application\nranendra : i have been asked to begin the visa process for the above\nindividual , located in india .\ni believe mr . shrivastava has been working as assistant manager with enron\nsince may 10 , 1998 . if this is correct , we will be able to bring him into\nthe us on an ll intracompany visa under the blanklet l for enron .\ncan you please let me have an email address for him so that i can send him\nthe required visa questionnaire to begin the process .\nmany thanks\nmargaret\n713 - 345 - 5083", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.649+0000", "entityId": 9660, "properties": {"text": "Subject: re : fw : re : valuation\n. . . . see you there . . .\nsteve\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , january 23 , 2001 5 : 28 pm\nto : stock , stephen\nsubject : re : fw : re : valuation\nsteve ,\naround 6 : 00 p . m .\nvince\nfrom : stephen stock / enron @ enronxgate on 01 / 23 / 2001 05 : 26 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : re : valuation\nvince ,\ni ' m in all this week . . . . . what time are you going for the bus tonight ?\nregards\nsteve\n- - - - - original message - - - - -\nfrom : stevestock @ pagenetips . com @ enron\nsent : tuesday , january 23 , 2001 4 : 42 pm\nto : stock , stephen\nsubject : fwd : re : valuation\n- - - - - -\nfrom : vince kaminski\nsubject : re : valuation\nsteve ,\nplease , let me know when you come back .\ni have detected a tendency to implement different\napproaches to valuation in the past .\nto some extent , it reflects the absence of formal\nrules for sign - off on the valuation techniques\nwhich , in turn , reflects , the turf wars and the desire by the\noriginators to control the outcomes .\nvince\nstevestock @ pagenetips . com on 01 / 19 / 2001 06 : 53 : 14 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : valuation\nvince ,\ni ' d like an opportunity to talk to you about valuation .\ni ' m hearing confusing messages about the way that the uk it team and the uk\ntraders get their valuation code aparently signed off by research , while\nhere . . . you provide it for our guys to wrap up .\nwe have now a situation where the uk team are using a home grown valuation\npiece called dove , where results differ from those of the equivalent usa\nportcalc .\ni need to break through the pride barriers and the \" not built here \"\nsyndrome , and try to do the right thing , but i don ' t beleive i can do that\nwithout you guidance .\ni ' m scared that if we diverge too much we will never work globally on these\nsystems .\nsteve\n- - - - - - - - - - - - - - - - - - - - - - - -\ntel : 713 - 345 - 8980\ncell : 281 - 541 - 1862\npage : stevestock @ pagenetips . com\nsteve\n- - - - - - - - - - - - - - - - - - - - - - - -\ntel : 713 - 345 - 8980\ncell : 281 - 541 - 1862\npage : stevestock @ pagenetips . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.654+0000", "entityId": 9661, "properties": {"text": "Subject: re : valuation\nsteve ,\nplease , let me know when you come back .\ni have detected a tendency to implement different\napproaches to valuation in the past .\nto some extent , it reflects the absence of formal\nrules for sign - off on the valuation techniques\nwhich , in turn , reflects , the turf wars and the desire by the\noriginators to control the outcomes .\nvince\nstevestock @ pagenetips . com on 01 / 19 / 2001 06 : 53 : 14 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : valuation\nvince ,\ni ' d like an opportunity to talk to you about valuation .\ni ' m hearing confusing messages about the way that the uk it team and the uk\ntraders get their valuation code aparently signed off by research , while\nhere . . . you provide it for our guys to wrap up .\nwe have now a situation where the uk team are using a home grown valuation\npiece called dove , where results differ from those of the equivalent usa\nportcalc .\ni need to break through the pride barriers and the \" not built here \" syndrome ,\nand try to do the right thing , but i don ' t beleive i can do that without you\nguidance .\ni ' m scared that if we diverge too much we will never work globally on these\nsystems .\nsteve\n- - - - - - - - - - - - - - - - - - - - - - - -\ntel : 713 - 345 - 8980\ncell : 281 - 541 - 1862\npage : stevestock @ pagenetips . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.661+0000", "entityId": 9662, "properties": {"text": "Subject: project\nhi michelle ,\nchris , helen and i met this afternoon and discussed about\nthe project . we think the following course of action is appropriate .\nthe model interface will be in excel spreadsheet , with most\nof the inputs ( from enron as well as from the consultant ) hiding\nin an access data base . the access data base can be update\nwhen needed . the engine will be written in visual basis code and\nbe linked to excel through xll ( or dll ) .\nhelen has been discussing with ken about various\naspects of the model and will finalize the access data table\nform with ken . in the mean time , helen and i will start working\non code this thursday ( she will be in training wednesday ) .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.668+0000", "entityId": 9663, "properties": {"text": "Subject: re : petronas benchmarking visit\nfyi\nthe list of the delegates from petronas .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 23 / 2001\n01 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkhairuddinbmjaafar @ petronas . com . my on 01 / 22 / 2001 03 : 13 : 35 am\nplease respond to khairuddin _ mjaafar @ petronas . com . my\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : petronas benchmarking visit\nvince ,\nhere is the list of our delegates for your kind perusal :\n1 . iqbal abdullah ( general manager ) ,\n2 . nur azmin abu bakar ( head , risk assessment & controls ) ,\n3 . zulkifli a rahim ( head , risk , measurement & systems )\n4 . adnan adams ( head , special projects ) .\nthanks .\nregards ,\nkhairuddin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.676+0000", "entityId": 9664, "properties": {"text": "Subject: ll visa - anshuman shrivastava\nanshuman : i have been asked to contact you regarding your possible move to\nhouston , texas . in order that i may begin the process of getting you an ll\nimmigration visa , i will need you to complete the attached visa questionnaire\nand return it to me with copies of the following documents :\na copy of all pages of your passport , even if blank\ncopies of all previous us visas issued\nan updated resume , showing months and years\ncopies of all diplomas and transcripts received\nif you have dependent family members coming to the states with you , copies of\ntheir passports\nplease send to my attention , via fedex to :\nenron corp .\n3 allen center , 3 ac 2026 a\n333 clay street\nhouston , tx 77002\nplease call me with any questions you may have at 713 - 345 - 5083 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.681+0000", "entityId": 9665, "properties": {"text": "Subject: agenda for transmission roundtable on wednesday , january 24 , 2001\nsorry everyone , i guess i am having my monday morning today . here are the\nattachments .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 01 / 23 / 2001 09 : 52\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont\n01 / 23 / 2001 09 : 56 am\nto : robin . kittel @ enron . com , bill . rust @ enron . com , steve . walton @ enron . com ,\nron . tapscott @ enron . com , jeffrey . wilson . enron . communications @ enron . com ,\nsevil . yaman @ enron . com , vasant . shanbhogue @ enron . com , tom . dutta @ enron . com ,\nwalter . coffer @ enron . com , vkamins @ enron . com , lloyd . will @ enron . com ,\nmartin . lin @ enron . com , christi . l . nicolay @ enron . com , george . hopley @ enron . com ,\nfred . mitro @ enron . com , debbie . chance @ enron . com , patrick . hansen @ enron . com ,\nsteve . olinde @ enron . com , madhup . kumar @ enron . com ,\nrobert . kraszewski @ corp . enron . com\ncc : lance . cunningham @ enron . com , shirley crenshaw / hou / ect @ ect\nsubject : agenda for transmission roundtable on wednesday , january 24 , 2001\nplease review the attached agenda for tomorrow ' s transmission roundtable and\nlet me know if you have any additions or changes . also , please bring to the\nmeeting a hard copy of the attached december 8 meeting notes . thanks .\nregards ,\nanita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.686+0000", "entityId": 9666, "properties": {"text": "Subject: benchmarking questionnaires\ndavid ,\ni am sending you the questions submitted by petronas for our meeting on\nfeb 8 .\nare you going to invite additional rac people to the meeting ( bill bradford\nwould be helpful with credit questions , bjorn may be interested as well ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 23 / 2001\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkhairuddinbmjaafar @ petronas . com . my on 01 / 22 / 2001 09 : 34 : 16 pm\nplease respond to khairuddin _ mjaafar @ petronas . com . my\nto : vkamins @ ect . enron . com\ncc : azminab @ petronas . com . my\nsubject : benchmarking questionnaires\nvince ,\nattached are two sets of benchmarking questionnaires for your kind perusal .\nregards ,\nkhairuddin\n( see attached file : q _ bench _ rms . doc ) ( see attached file : feb 5 - 17 , 2001 . doc )\ndisclaimer : this e - mail and any files transmitted with it ( \" message \" )\nis intended only for the use of the recipient ( s ) named above and may\ncontain confidential information . you are hereby notified that the\ntaking of any action in reliance upon , or any review , retransmission ,\ndissemination , distribution , printing or copying of this message or any\npart thereof by anyone other than the intended recipient ( s ) is strictly\nprohibited . if you have received this message in error , you should\ndelete this message immediately and advise the sender by return e - mail .\nopinions , conclusions and other information in this message that do not\nrelate to the official business of petronas or its group of companies\nshall be understood as neither given nor endorsed by petronas or any of\nthe companies within the group .\n( embedded image moved to file : pic 24962 . pcx )\n- q _ bench _ rms . doc\n- feb 5 - 17 , 2001 . doc\n- pic 24962 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.690+0000", "entityId": 9667, "properties": {"text": "Subject: benchmarking questionnaires\nvince ,\nattached are two sets of benchmarking questionnaires for your kind perusal .\nregards ,\nkhairuddin\n( see attached file : q _ bench _ rms . doc ) ( see attached file : feb 5 - 17 , 2001 . doc )\ndisclaimer : this e - mail and any files transmitted with it ( \" message \" )\nis intended only for the use of the recipient ( s ) named above and may\ncontain confidential information . you are hereby notified that the\ntaking of any action in reliance upon , or any review , retransmission ,\ndissemination , distribution , printing or copying of this message or any\npart thereof by anyone other than the intended recipient ( s ) is strictly\nprohibited . if you have received this message in error , you should\ndelete this message immediately and advise the sender by return e - mail .\nopinions , conclusions and other information in this message that do not\nrelate to the official business of petronas or its group of companies\nshall be understood as neither given nor endorsed by petronas or any of\nthe companies within the group .\n( embedded image moved to file : pic 24962 . pcx )\n- q _ bench _ rms . doc\n- feb 5 - 17 , 2001 . doc\n- pic 24962 . pcx", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.695+0000", "entityId": 9668, "properties": {"text": "Subject: risk article\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 01 / 23 / 2001\n09 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nben parsons\n01 / 23 / 2001 08 : 51 am\nto : nigel price / lon / ect @ ect , george albanis / lon / ect @ ect , markus\nfiala / lon / ect @ ect , jean - sebastien fontaine / corp / enron @ enron , katherine\nsiig / eu / enron @ enron , amitava dhar / corp / enron @ enron , vasant\nshanbhogue / hou / ect @ ect , ilan hershkovitz / lon / ect @ ect , greg\nhedger / lon / ect @ ect , david a wall / risk mgmt / lon / ect @ ect , simon\nbrooks / lon / ect @ ect\ncc : bryan seyfried / lon / ect @ ect , steven leppard / lon / ect @ ect\nsubject : risk article\neveryone should read the attached risk article about calculating def probs\nfrom cds quotes .\namazingly it is in pretty close agreement with our own methodology for both\ncds valuation and reverse engineering def probs . the only extension in the\nreverse engineering is that instead of linearly interpolating cds quotes ,\nthey propose minimising an error measure based on ' smoothness ' of def prob\ncurve and difference between model and market prices .\nwhat is also amazing is the fact that this article has been published in\nrisk , given that it is essentially the same as my credit pricing paper , plus\none excellent idea . given extra time , resources and brainpower , there is no\nreason why we shouldn ' t have similar work published ourselves .\nben\n( thanks steve for pointing this article out )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by ben parsons / lon / ect on 23 / 01 / 2001 14 : 40\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nlondon fax system 2\n23 / 01 / 2001 14 : 09\nto : ben parsons / lon / ect @ ect\ncc :\nsubject : new fax received ( likely sender : + 44 20 7783 8076 ) .\nyou have received a new fax from + 44 20 7783 8076\nthe image contains 3 page ( s ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.700+0000", "entityId": 9669, "properties": {"text": "Subject: re : clewlow and strickland book\nsteve ,\ni can order the books at 15 % discount . i am sending you\n4 copies today and will be glad to order more on your behalf .\nvince\nsteven leppard\n01 / 23 / 2001 04 : 22 am\nto : vince j kaminski / hou / ect @ ect\ncc : sharad agnihotri / lon / ect @ ect\nsubject : clewlow and strickland book\nhi vince\nis there any way we can lay our hands on clewlow and strickland ' s new book at\na preferential price ?\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.704+0000", "entityId": 9670, "properties": {"text": "Subject: re : the package\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 23 / 2001\n01 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 23 / 2001 01 : 06 pm\nto : \" valery kholodnyi \" @ enron\ncc :\nsubject : re : the package\nvalery ,\nthanks a lot . i have received the package last week .\ni was traveling and i did not have time to take a closer look at it yet .\ni think about a trip to dallas sometimes in the first few days of february . i\nhope you will find time for lunch . i will contact you later this week\nregarding the date .\nvince\n\" valery kholodnyi \" on 01 / 22 / 2001 05 : 59 : 53 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : the package\ndear vince ,\ncould you please acknowledge receipt of the package with a copy of my article\non\nspikes in power prices , as well as copies of my books and some of my other\nrelevant articles , that i recently sent to you .\ni look forward to hearing from you .\nsincerely ,\nvalery", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.709+0000", "entityId": 9671, "properties": {"text": "Subject: thanks a lot .\ndr . kaminski ,\ni appreciate you for giving me a good\nopportunity to have the interview .\nthe visit to enron was very impressive .\nthanks for arranging interviews with people\nat research department and extra interview\nat the enron net work .\nit was good to have chance to meet such nice people ,\nand have a talk with them .\nit was a good experience for me and\ni hope we have chance to see each other .\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non tue , 24 oct 2000 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> we shall invite you to an interview in houston .\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 10 / 23 / 2000 07 : 25 : 36 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : resume ,\n>\n>\n> dear mr . kaminski ,\n>\n> hi ,\n> i am a ph . d student at ieor department at u . c . berkeley .\n> thanks for your presentation today .\n> it gave me knowledge and interest in electricity markets ,\n> and your company .\n> as you mentioned in the presentation ,\n> i send a resume to give me opportunity to learn more\n> about your company .\n> i hope i can join the super saturday event .\n>\n> jinbaek\n>\n>\n> ( see attached file : resume . doc )\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.714+0000", "entityId": 9672, "properties": {"text": "Subject: re : spring 2001 schematic\ndavid ,\ni am an adjunct professor at rice . can i get access to\nembanet ?\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 23 / 2001\n05 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkathy spradling on 01 / 23 / 2001 03 : 03 : 05 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : spring 2001 schematic\nmr . kaminski ,\nyou will need to speak with david kilgore at kilgore @ rice . edu or by calling\ndavid at 713 - 348 - 5378 regarding getting set up in embanet and if you can\nhave access from the outside .\nkathy\nat 02 : 40 pm 1 / 23 / 01 - 0600 , you wrote :\n> you will need to speak with david kilgore\n> at kilgore @ rice . edu or by calling david at 713 - 348 - 5378 .\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.718+0000", "entityId": 9673, "properties": {"text": "Subject: re : spring 2001 schematic\nkathy ,\nwhat is embanet ? do i have access from the outside ?\nvince kaminski\nkathy spradling on 01 / 11 / 2001 11 : 01 : 48 am\nto : ( recipient list suppressed )\ncc : cmiller @ rice . edu , castro @ rice . edu , spradlin @ rice . edu\nsubject : spring 2001 schematic\nspring 2001 faculty ,\nthe spring 2001 schematic has been posted to embanet . to access the\nschematic please open the jgsm area icon on the embanet desktop . next\nplease open the announcement jgsm icon . you will find the spring 2001\nschematic located under the subject column . please open the document . if\nyou do not have access to embanet you will need to speak with david kilgore\nat kilgore @ rice . edu or by calling david at 713 - 348 - 5378 .\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.723+0000", "entityId": 9674, "properties": {"text": "Subject: re : hello team\nken :\nwe are very excited about our alp at enron . we look forward to working\nwith you and your team and learning about the broadband space .\nthursday at cacciatore ' s sounds fine with us . we will see you there at 7 : 00\np . m .\nenron alp team\n- - - - - original message - - - - -\nfrom : kenneth . parkhill @ enron . com [ mailto : kenneth . parkhill @ enron . com ]\nsent : tuesday , january 23 , 2001 10 : 47 am\nto : luigical @ rice . edu ; ghosei @ rice . edu ; ghoshr @ rice . edu ; iqbal @ rice . edu ;\npravas @ rice . edu ; cwomack @ rice . edu ; barrett @ rice . edu ; uecker @ rice . edu ;\nloughrid @ rice . edu\ncc : vince . j . kaminski @ enron . com\nsubject : hello team\nwe are very excited to be able to welcome your alp team to enron . we are\nlooking to working with you this semester . to kick things off , we would\nlike to invite you to cacciatore ' s this thursday for dinner ( 1 / 25 / 01 , 7 pm ) .\nif you can ' t stand italian cuisine , or would like to try a different day or\ntime , please feel free to make a suggestion . we look forward to meeting\nyou .\nken\n713 / 345 - 4638", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.728+0000", "entityId": 9675, "properties": {"text": "Subject: re : liz demers research seminar\nmarc ,\nthanks for the invitation .\ni shall attend .\nvince kaminski\nenron\nmarc epstein ( by way of kathy spradling < spradlin on\n01 / 22 / 2001 03 : 41 : 13 pm\nto : ( recipient list suppressed )\ncc :\nsubject : liz demers research seminar\ndear faculty\nbob westbrook and the accounting group has asked me to put together a\ncontinuing series of research workshops in accounting . my intention is to\ninvite four or five researchers from around the country to present\nworkshops on topics of interest each year . these are in addition to the\nnormal recruiting seminars that we will have . the researchers will be a\ncombination of senior and junior researchers . in addition to adding to our\nown research culture , the seminars should help promote the jones school in\nthe academic accounting community .\nmy intention is to invite people that are doing very interesting work that\nwill be of interest to a large portion of the faculty . given the small size\nof the accounting group , success of the seminars is dependent in part on\nthe participation of faculty from other disciplines .\nour first seminar will be on february 16 from 10 : 30 - 12 : 00 and will be\nconducted by elizabeth demers , a stanford phd and presently an assistant\nprofessor at rochester . her paper is titled \" a rude awakening : internet\nshakeout in 2000 \" and co - authored with baruch lev ( a senior accounting\nresearcher at nyu ) .\nthe work should be of particular interest to faculty in finance and those\ninterested in the valuation of internet companies and the value of\nintellectual capital and non financial information . i expect that it will\nbe a very interesting seminar . liz will arrive thursday late afternoon and\nbe here all day on friday . i invite any of you who would like to meet with\nher or join us for a meal , to please let me know .\ni will appreciate it if you could plan on attending at least some of our\nseminars . i hope that the topics and presenters will be of interest .\nthanks for your support .\nmarc\nmarc j . epstein\njones graduate school of management\nrice university\n6100 main street\nhouston , texas 77005 - 1892\nphone ( 713 ) 348 - 6140\nfax ( 713 ) 348 - 5251\nemail epstein @ rice . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.732+0000", "entityId": 9676, "properties": {"text": "Subject: hello team\nwe are very excited to be able to welcome your alp team to enron . we are\nlooking to working with you this semester . to kick things off , we would like\nto invite you to cacciatore ' s this thursday for dinner ( 1 / 25 / 01 , 7 pm ) . if\nyou can ' t stand italian cuisine , or would like to try a different day or\ntime , please feel free to make a suggestion . we look forward to meeting you .\nken\n713 / 345 - 4638", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.738+0000", "entityId": 9677, "properties": {"text": "Subject: videoconferences w / enron\nteam and host :\ni have set up the following dates / times for videoconferences .\nunfortunately , 4 : 00 - 6 : 00 was not available , so i arranged for 4 : 30 - 6 : 30 pm on\nthe following dates . i hope this does not cause anyone inconvenience , but i\ntook time and space that was available .\nnote : i did not schedule during interview week , finals week or spring\nbreak .\n1 / 25 shdh 1203\n2 / 1 shdh 1203\n2 / 15 shdh 1203\n3 / 1 shdh 215\n3 / 22 shdh 215\n3 / 29 shdh 215\nany questions , please contact the fap office .\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.743+0000", "entityId": 9678, "properties": {"text": "Subject: re : enron cover letter & resume for dave gershenson\nvince , thanks for your very prompt email response . i passed your message\nalong to dave .\nthanks also for a great dinner and day of meetings last week . i really\nenjoyed the chance to learn more about enron , and was very impressed with\neveryone i met .\nlook forward to working with you these next few months ! !\ncheers ,\nvincent\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , january 17 , 2001 2 : 39 pm\nto : chenvinc @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : enron cover letter & resume for dave gershenson\nvincent ,\ni have forwarded the resume to our analysts / associate pool with\na recommendation to accept david as a summer intern .\ni expressed interest in taking him into my group . he may , of course ,\nwork for a different unit of enron . it ' s up to him and i shall not be\noffended\nif he would like to go into trading or deal origination .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.747+0000", "entityId": 9679, "properties": {"text": "Subject: re : fw : wharton resume submission - summer intern\nlet ' s make sure she gets an offer . thanks . jeff\nvince j kaminski\n01 / 23 / 2001 01 : 23 pm\nto : kristin gandy / na / enron @ enron\ncc : jeffrey a shankman / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : fw : wharton resume submission - summer intern\nkristin .\nkim is a member of the tiger team . she is interested in a summer\ninternship with enron and i shall be glad to take her .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 23 / 2001\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kim whitsel \" on 01 / 22 / 2001\n12 : 07 : 35 am\nto : ,\ncc :\nsubject : fw : wharton resume submission\n- - - - - original message - - - - -\nfrom : kim whitsel [ mailto : kimberly . whitsel . wgo 2 @ wharton . upenn . edu ]\nsent : friday , december 22 , 2000 6 : 51 pm\nto : kristin . gandy @ enron . com\nsubject : wharton resume submission\nsummer position under wharton schedule # 1823\n- kim whitsel - enron cover letter . doc\n- kim whitsel - wharton 2 resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.752+0000", "entityId": 9680, "properties": {"text": "Subject: merit and equity increases\nnorma ,\ni am sending you an excel spreadsheet with proposed\nmerit and equity increases .\ni have slightly exceeded the merit quota .\nthe equity increases address two issues : retention and\nand an error in setting a salary at hiring ( i tend to be too stingy ) .\nplease , let me know if there are any questions .\ni am forwarding a copy of the spreadsheet to my home address\nso i can work on it tonight , if necessary .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.757+0000", "entityId": 9681, "properties": {"text": "Subject: fw : winston\ndebbie ,\nthis is an update on the continuing winston saga . tanya\nidentified the sections of the code that produce inefficiencies\nbut the rest is in the winston ' s hands .\nsteve stock is very cooperative and takes a very rational , enron - first\napproach to the problem . privately , my concern is that the code , based on\ntanya ' s\nreport to me , leaves a lot to be desired . the code tends to be a very\nmechanical\nimplementation of the algorithm , developed without a series attempt to\noptimize it .\nlet ' s keep paddling along .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 24 / 2001\n08 : 53 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : stephen stock / enron @ enronxgate on 01 / 23 / 2001 05 : 38 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : winston\nvince ,\n. . . just to keep you in the loop on the tanya / winston issue . . .\nregards\nsteve\n- - - - - original message - - - - -\nfrom : stock , stephen\nsent : tuesday , january 23 , 2001 5 : 36 pm\nto : tamarchenko , tanya\nsubject : re : winston\ntanya ,\ni just checked in with the contractors here . . . . . and it looks like it might be\na good idea for you to spend about 30 minutes with them to give you a guided\ntour of their documentation .\nit ' s presented as a linked set of word documents and visio drawing , with\nlinks to all the reletive parts as hyperlinks . it ' s pretty good and i imagine\nit will be very usefull to you , but probably requires a little introduction\nfirst .\nplease feel free to come to my office whenever it is convenient . even if i ' m\nnot available , the guys are just outside my office and i can easily stop\nwhatever i ' m doing to introduce you to the project manager .\nregards\nsteve\n- - - - - original message - - - - -\nfrom : tamarchenko , tanya\nsent : tuesday , january 23 , 2001 4 : 53 pm\nto : stock , stephen\nsubject : re : winston\nsteve ,\n- we spent about 5 fruitful hours with winston last week .\n- i pretty much understand the data flow when the code runs .\n- i also got an idea where the time is spent during the execution of the code\nby questioning winston .\ni did not see any results of profiling the code . winston ' s opinion is ( as i\nunderstood ) that he knows how much time is spent\non different calculations and profiling is not easy to do , so we don ' t need\nto do it .\n- based on above i suggested possible way to reduce the time credit model\ntakes to run and we discussed it with debbie , who was\ngoing to arrange a meeting with winston .\n- it might be useful to look at the documentation created by contractors , if\nyou have it handy - send it to me , please .\nthank you ,\ntanya .\nfrom : stephen stock / enron @ enronxgate on 01 / 23 / 2001 03 : 38 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : winston\ntanya ,\nhow ' s it going with code - review from your perspective ?\n. . . did you manage to talk to our documentation contractors ?\n. . . if not , would you me to arrange for them to bring you the documentation as\nit currently stands ?\nregards\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.762+0000", "entityId": 9682, "properties": {"text": "Subject: re : ll visa - anshuman shrivastava\nvince : apparently neil mcgregor became upset when he received margaret\ndaffin ' s email . he is saying , however , that anshuman will only be in\nhouston for one month , and you had mentioned six months when we spoke\nearlier . it really doesn ' t make any difference since he will need to get an\nll visa under either circumstance , but i thought you might want to see his\nemail .\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 01 / 24 / 2001 10 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n01 / 24 / 2001 09 : 57 am\nto : molly magee / hou / ect @ ect\ncc :\nsubject : re : ll visa - anshuman shrivastava\nmolly : per our conversation today . please let me know the status so that i\ncan proceed with the visa process .\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 01 / 24 / 2001\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nneil mcgregor @ enron _ development\n01 / 24 / 2001 05 : 18 am\nto : margaret daffin / hou / ect @ ect\ncc : wade cline / enron _ development @ enron _ development\nsubject : re : ll visa - anshuman shrivastava\nanshuman is not moving or immigrating to the us . we are allowing him to work\nfor a lmonth assignment in the us with enron . please carry out the necessary\napprovals and visa ' s on this basis .\nneil mcgregor\nceo dabhol power\nmargaret daffin @ ect\n01 / 23 / 2001 10 : 31 pm\nto : anshuman . srivastav @ enron . com\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jane\nallen / hou / ect @ ect , timothy callahan / na / enron @ enron , ranendra\nsengupta / enron _ development @ enron _ development , wade\ncline / enron _ development @ enron _ development , neil\nmcgregor / enron _ development @ enron _ development @ ect , harsimran\nsubject : ll visa - anshuman shrivastava\nanshuman : i have been asked to contact you regarding your possible move to\nhouston , texas . in order that i may begin the process of getting you an ll\nimmigration visa , i will need you to complete the attached visa questionnaire\nand return it to me with copies of the following documents :\na copy of all pages of your passport , even if blank\ncopies of all previous us visas issued\nan updated resume , showing months and years\ncopies of all diplomas and transcripts received\nif you have dependent family members coming to the states with you , copies of\ntheir passports\nplease send to my attention , via fedex to :\nenron corp .\n3 allen center , 3 ac 2026 a\n333 clay street\nhouston , tx 77002\nplease call me with any questions you may have at 713 - 345 - 5083 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.767+0000", "entityId": 9683, "properties": {"text": "Subject: invitation to cera multiclient study workshop\nmr . vincent j . kaminski\nmanaging director\nenron capital & trade resources corp .\ndear mr . kaminski :\nyou are cordially invited to attend a special workshop during ceraweek 2001\nin houston addressing new and subtle dynamics in the oil market that could be\ncosting companies millions of dollars in lost revenue .\nthe workshop presents insights from a recent cera study entitled : \" the hole\nin the barrel : capturing value from a volatile oil price \" . ? the speakers will\nexplain the challenges and suggest practical steps not only to mitigate these\nforces , but use them as a way to increase revenue .\ntime : monday , february 12 , 2001 , 2 : 00 - 5 : 00 pm\nlocation : westin galleria , houston , tx\ncost : the workshop is a deliverable to members of the hole in the barrel :\ncapturing value from a volatile oil price .\nfor non - members of the hole in the barrel multiclient study , a fee of\nus $ 3 , 500 will be charged ( fee can be applied to the purchase of the study ) .\nplease visit our online prospectus for the study located at :\nfor more information , please contact me at badedamola @ cera . com or + 1 617\n441 - 1348 .\nbarry adedamola\nassociate director , oil & global strategies\nour relationship with you is very important to us . ? if you\nwish not to receive e - mail notifications from cera , please\nsend a reply to this message with \" donotemail \" as the subject\nof your message . ( mailto : info @ cera . com ? subject = donotemail )\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.772+0000", "entityId": 9684, "properties": {"text": "Subject: re :\ni ' ll check my billing ! thanks for the\nwarning !\nwarm regards , and thanks for the book ,\ndarrell\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.781+0000", "entityId": 9685, "properties": {"text": "Subject: re :\ndarrell ,\nthanks a lot .\na quick question : we haven ' t\nreceived your invoice for the last few model / paper reviews .\nplease , make sure that we are billed .\nclewlow / strickland book is out . i shall send you a copy today .\nvince\ndarrell duffie on 01 / 24 / 2001 03 : 17 : 01 pm\nplease respond to darrell duffie\nto : vince . j . kaminski @ enron . com\ncc : hoshino @ stanford . edu\nsubject : re :\nvince / taiichi\nin case you are interested , i attach\nthis paper on gas storage value modeling .\nbest , darrell\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n- paper 4 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.786+0000", "entityId": 9686, "properties": {"text": "Subject: new commodity marketplace opportunity\nmark lay : i shared confidentially with vince kaminski my developing\nconcept of a highly inefficient not - for - profit enterprise with\ndramatically increasing costs . i believe that a for - profit economic\nmodel is possible that should reverse these skyrocketing costs and\nultimately lower the commodity thereby having a national , if not , global\nimpact of health care costs . vince seems to also believe in the\nconcepts potential . the ceo of one of the biggest u . s . blood banks has\nalready asked to become involved . i would like involve more people\nwith vision , means and desire to help make this a reality . i would look\nforward to meeting with you to talk further . al arfsten 713 965 2158", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.790+0000", "entityId": 9687, "properties": {"text": "Subject: re : next step\nal ,\ni have spoken with mark lay and he is interested .\neven if we cannot help you here in enron , he may be able\nto put you in touch with other cv groups in town .\nplease , call him directly and give my name as a reference .\n( 713 ) 853 - 7408\ngood luck .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 24 / 2001\n02 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 24 / 2001 11 : 21 am\nto : al arfsten @ enron\ncc :\nsubject : re : next step\nal ,\ni have called mark lay and left a message on his voice mail .\nvince\nal arfsten on 01 / 24 / 2001 11 : 16 : 25 am\nto : vkamins @ enron . com\ncc :\nsubject : next step\nvince : your suggestion to introduce the concept discussed with one of\nthe lays is welcomed . i hope that this would mean that you would remain\ninvolved at some level . the design of the model and its potential\neconomics could be key to how worthy the effort might be . enron could\nbe an ideal environment from which to the concept enhancement through to\ncommercialization could be successfully accomplished . please\nconfidentially share matters as you think best and advise me of the\ninterest generated . i am ready to meet there at your building or\nelsewhere that is appropriate . best regards , al arfsten 713 965 2158", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.796+0000", "entityId": 9688, "properties": {"text": "Subject: re : the package\ndear vince ,\nthank you very much for your e - mail and for acknowledging receipt of my\npackage .\ni am really excited about the opportunity to see you soon . i am available\nevery\nday at the first half of february , except for february 8 after 2 pm . ( i will\ngive a presentation at the southern methodist university ) .\nplease let me know if it is more convenient for you to see me in houston and i\nwill be happy to fly there .\ni look forward to hearing from you .\nsincerely ,\nvalery", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.805+0000", "entityId": 9689, "properties": {"text": "Subject: re : a quant\ni did . . . trying to get him in next week so that vasant can see him as well .\nthanks\nvince j kaminski\n24 / 01 / 2001 22 : 24\nto : bryan seyfried / lon / ect @ ect\ncc :\nsubject : a quant\nbryan ,\ndid you have a chance to take a look at the resume i sent you ?\nhe looked like a great guy for your group .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.811+0000", "entityId": 9690, "properties": {"text": "Subject: re : enron - resume interview of james valverde\njohan\nmy apologies for getting back to you with a delay .\nwe shall be interested in talking to james . please ,\nlet me know if :\n1 . you have an umbrella agreement with enron\n2 . can we contact james directly , or should we work\nthrough you .\nvince\njohan dahl on 01 / 09 / 2001 12 : 33 : 08 pm\nto : vkamins @ enron . com\ncc :\nsubject : enron - resume interview of james valverde", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.816+0000", "entityId": 9691, "properties": {"text": "Subject: re : houston visit\nsoussan ,\nthanks . see you at 6 : 30 .\nvince\n\" faiz , soussan \" on 01 / 24 / 2001 10 : 46 : 57 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : houston visit\nvince ,\ngreat . . . i ' m glad that you ' re in town on wed . 1 / 31 . i ' ll be staying @ the\nwestin oaks in the galleria . let ' s pls meet @ the hotel ' s lobby at 6 : 30 pm .\ni have both your work and cell # and my work # is below ( just in case ) . i\nlook forward to our dinner and catching up .\nbest ,\nsoussan\n914 253 4187\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , january 24 , 2001 10 : 52 am\nto : faizs @ texaco . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : houston visit\nsoussan ,\nnice to hear from you . dinner on wednesday , jan 31 would be great .\nplease , let me know where you are going to stay .\nvince\n\" faiz , soussan \" on 01 / 22 / 2001 04 : 29 : 08 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc : vkaminski @ aol . com\nsubject : re : houston visit\nhello vince , happy 2001 and hope all is well .\ni ' ll be in houston the week of 1 / 29 . it will be great to have our belated\ndinner preferably on wed . 1 / 31 . pls let me know whether you ' re available\non\nwed . or , if not , another day that week .\nbest ,\nsoussan\n914 253 4187", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.821+0000", "entityId": 9692, "properties": {"text": "Subject: carnegie mellon resume pre - select list\nhello everyone . it is time for the spring recruiting season to begin and\nselect the candidates we would like to have on our pre - select list . my\ncoordinator will be handing out the resume books this morning . please call\nalyse at extension 57339 with your eb locations so we can be sure to get the\nresume books to you . please email me your top 10 picks by noon , friday ,\njanuary 26 th . thank you for your continued support and i look forward to\nworking with you all this season .\nkristin gandy\nassociate recruiter\nassociate / analyst program\namh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.827+0000", "entityId": 9693, "properties": {"text": "Subject: re : spring 2001 schematic\nmr . kaminski ,\nyou will need to speak with david kilgore at kilgore @ rice . edu or by calling\ndavid at 713 - 348 - 5378 regarding getting set up in embanet and if you can\nhave access the database from the outside .\nkathy\nat 02 : 40 pm 1 / 23 / 01 - 0600 , you wrote :\n> kathy ,\n>\n> what is embanet ? do i have access from the outside ?\n>\n>\n> vince kaminski\n>\n>\n>\n>\n> kathy spradling on 01 / 11 / 2001 11 : 01 : 48 am\n>\n> to : ( recipient list suppressed )\n> cc : cmiller @ rice . edu , castro @ rice . edu , spradlin @ rice . edu\n> subject : spring 2001 schematic\n>\n>\n> spring 2001 faculty ,\n>\n> the spring 2001 schematic has been posted to embanet . to access the\n> schematic please open the jgsm area icon on the embanet desktop . next\n> please open the announcement jgsm icon . you will find the spring 2001\n> schematic located under the subject column . please open the document . if\n> you do not have access to embanet you will need to speak with david kilgore\n> at kilgore @ rice . edu or by calling david at 713 - 348 - 5378 .\n>\n> thanks ,\n> kathy\n>\n> kathy m . spradling\n> mba program coordinator\n> jesse h . jones graduate school of management\n> rice university\n> 6100 main street , ms 531\n> houston , texas 77005 - 1892\n> phone : ( 713 ) 348 - 3313\n> fax : ( 713 ) 348 - 5251\n> email : spradlin @ rice . edu\n> http : / / www . rice . edu / jgs\n> e - mail : spradlin @ rice . edu\n> http : / / www . ruf . rice . edu / ~ jgs /\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.832+0000", "entityId": 9694, "properties": {"text": "Subject: re : enron alp\nvince ,\nmany thanks for the invitation . ? i ' m leaving for a conference in new orleans\ntoday and won ' t be in town . ? however , i ' d love to join you if dinner should\nhappen again in the future .\nthanks again for all your support and interest in the alp program . ? i feel\nconfident that this will be a great project .\ncarrie\nat 10 : 03 am 1 / 24 / 01 - 0600 , you wrote :\ncarrie ,\nwe have invited the team to dinner thursday , 7 : 00 p . m .\nwould you loike to join us ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 24 / 2001\n10 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npamela vande krol castro on 01 / 22 / 2001 06 : 18 : 16 pm\nto : ? ? kenneth . parkhill @ enron . com , vkamins @ enron . com\ncc :\nsubject : ? enron alp\ndear alp company representatives :\nthank you again for your participation in the alp company day at rice\nuniversity . we are pleased to inform you that your project proposal has\nbeen chosen for the 2001 alp program . the following students will be\nworking on your project :\n? ? calabrese , luigi ? ? ? ? ? ? ? luigical @ rice . edu\n? ? ghose , ivy ? ? ? ? ? ? ? ? ? ? ? ? ? ghosei @ rice . edu\n? ? ghosh , ronnie ? ? ghoshr @ rice . edu\n? ? iqbal , syed ? ? ? ? ? ? ? ? ? ? ? ? iqbal @ rice . edu\n? ? sud , pravas ? ? ? ? ? ? ? ? ? ? ? ? pravas @ rice . edu\n? ? womack , charles cwomack @ rice . edu\nthe faculty liaisons for your project are :\n? ? barrett , deborah ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? barrett @ rice . edu\n? ? uecker , will ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? uecker @ rice . edu\n? ? loughridge , dennis ? ? ? ? ? loughrid @ rice . edu\na representative from the student team will contact you soon to set up\nmeeting time . if you need to contact your team , i have included the\nstudents ' email addresses . they check their email on a regular basis , so\nthis is a good way to communicate with them .\nplease let me know if you have any questions regarding this information .\nagain , thank you for your interest in the jones school . best wishes for\ngreat project !\ncarrie chamberlin miller\ndirector of mba program\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 5260\nfax : ( 713 ) 348 - 5251\ne - mail : cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /\npamela castro\nmba program associate\nrice university\nphone : 713 - 348 - 6223\nfax : 713 - 348 - 5251\ne - mail : castro @ rice . edu\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncarrie chamberlin miller\ndirector of mba program\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ? ( 713 ) 348 - 5260\nfax : ? ( 713 ) 348 - 5251\ne - mail : ? cmiller @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.837+0000", "entityId": 9695, "properties": {"text": "Subject: riskbrief - january issue\nriskbrief - http : / / www . financewise . com / risk\ndear risk brief subscriber ,\nit \u0001 , s been a while since you last received your monthly ' risk brief ' update\nfrom financewise . but not without good reason - we ' ve changed a lot .\nwe have launched an exciting online news product called ' risknews ' . this\nfree website provides dedicated global coverage of all the top stories ,\ninformed analysis and best practice in the world of financial risk\nmanagement , derivatives , technology and exchanges , people moves and key\nindustry events . breaking news is added to the website throughout the day ,\nevery day .\nanother key benefit of risknews is a free weekly e - mail update covering\nthe need - to - know headlines and links back to the relevant news items . so ,\nif you can ' t find the time to visit http : / / www . risknews . net regularly ,\ndon ' t worry , you can keep yourself informed with the weekly ' risknews\nupdate ' .\nso , what does this mean for you ?\nfrom now on , as well as receiving your monthly ' risk brief ' e - mail\nsummarising risk management news a month after it happens , you can now\nreceive the weekly ' risknews update ' . the e - mail update is sent every\nfriday and the service is free . starting from friday 26 january you will\nreceive your first ' risknews update ' with coverage from stories occurring\njust this week .\nand finally \u0001 (\nto celebrate this important milestone in our internet services\ndevelopment , we would like to offer you a free copy of the february issue\nof ' operational risk ' , worth $ 70 . this special issue serves as a guide to\nthe regulators \u0001 , proposals on operational risk capital charges as contained\nin the basle committee ' s second consultative paper released in january\n2001 . coverage contains market reactions , impacts and implications , as\nwell as :\n? contributing articles from the regulators\n? views and reactions from banking analysts\n? views of the banking industry bodies\n? implications for the risk technology sector with interviews\norder your free copy ( worth $ 70 ) now and check out http : / / www . risknews . net\nfor the first time !\nyour comments please e - mail us on\nmailto : web @ riskwaters . com ,\nbest regards ,\nthe risknews team ( formerly risk brief )\nif you think any of your business associates or colleagues would find\nrisknews useful , please forward a copy of this e - mail to them for us .\nthanks !\nall of risk waters group online services can be accessed through\nhttp : / / www . riskwaters . com\nrisk waters group \u0001 ) providing products with accurate analysis and\ntechnical commentary on the latest developments in the world of finance ,\nfinancial technology , credit , emerging markets , market data , bandwidth\ntrading & telecoms , risk management and derivative products .\nto unsubscribe to this list , send a blank message to\nmailto : financewise - unsubscribe @ listbot . com or visit\nhttp : / / www . financewise . com / public / edit / riskm / briefix . htm and unsubscribe\nfrom there .\nto unsubscribe , write to financewise - unsubscribe @ listbot . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.841+0000", "entityId": 9696, "properties": {"text": "Subject: mid - project review date - enron\nenron tiger team :\nthe enron tiger team mid - project review date has been set for tuesday , feb\n20 from 6 : 30 - 8 : 30 pm in shdh 205 . your host will be on campus for the\nreview .\neach of the 3 teams will present at this time followed by q & a .\nall students are required to attend . questions , please contact the fap\noffice .\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.846+0000", "entityId": 9697, "properties": {"text": "Subject: re : videoconferences w / enron\nmelinda ,\nthanks .\nvince\nmelinda mccarty @ enron\n01 / 24 / 2001 10 : 02 am\nto : vince j kaminski / hou / ect @ ect , christie patrick\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : videoconferences w / enron\ni have reserved 32 c 2 video conference room - 3 : 30 - 5 : 30 for tomorrow\n( thursday , january 25 )\nlet me know if you need anything else\nmelinda\nx 31641\nvince j kaminski @ ect\n01 / 24 / 2001 09 : 37 am\nto : melinda mccarty / corp / enron @ enron\ncc :\nsubject : videoconferences w / enron\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 24 / 2001\n09 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 01 / 23 / 2001 11 : 21 : 10 am\nto : clay degiacinto , deepa mallik\n, dennis feerick\n, edson otani\n, gustavo palazzi ,\n\" heather n . thorne ( e - mail ) \" , jack rejtman\n, jaideep singh\n, jason cummins\n, joshua leventhal\n, kim whitsel ,\n\" louis a thomas ( e - mail ) \" , murat camoglu\n, nick levitt\n, omar bassel\n, pat henahan , ram\nvittal , steve lessar\n, tulika bhalla\n, vincent chen\ncc : \" ' vkamins @ enron . com ' \" , \" ' christie . patrick @ enron . com ' \"\n, fap\nsubject : videoconferences w / enron\nteam and host :\ni have set up the following dates / times for videoconferences .\nunfortunately , 4 : 00 - 6 : 00 was not available , so i arranged for 4 : 30 - 6 : 30 pm on\nthe following dates . i hope this does not cause anyone inconvenience , but i\ntook time and space that was available .\nnote : i did not schedule during interview week , finals week or spring\nbreak .\n1 / 25 shdh 1203\n2 / 1 shdh 1203\n2 / 15 shdh 1203\n3 / 1 shdh 215\n3 / 22 shdh 215\n3 / 29 shdh 215\nany questions , please contact the fap office .\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.851+0000", "entityId": 9698, "properties": {"text": "Subject: re : mid - project review dates - enron\nhi donna ! !\nplease sign the enron team up for feb . 20 th .\nthanks ! ! ! . . . and thanks for all your help last week ! everyone at enron is\nenthusiastic about the project , and the students have been very gracious in\ntheir \" thank you \" notes .\nwe ' re looking forward to the video conference thursday . my assistant ,\nmelinda mccarty , will contact you to make sure we ' re \" reciprocally \" in sinc\nfor the broadcast .\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.856+0000", "entityId": 9699, "properties": {"text": "Subject: re : mid - project review dates - enron\ngreat ! i ' ll arrange it with donna ! melinda arranged the video conference\non 32 . see you there !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 24 / 2001\n10 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 24 / 2001 09 : 47 am\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : mid - project review dates - enron\nchristie ,\nfeb the 20 th is the best time for me .\nvince\nchristie patrick\n01 / 23 / 2001 11 : 29 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : mid - project review dates - enron\nhi vince !\nthe best dates for me are the 16 th or the 20 th .\nplease let me know !\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 23 / 2001\n11 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 01 / 23 / 2001 11 : 46 : 32 am\nto : \" ' vkamins @ enron . com ' \" , \" ' christie . patrick @ enron . com ' \"\ncc : fap\nsubject : mid - project review dates - enron\ntiger hosts :\nthis is a reminder that the deadline for setting up the mid - project review\ndates for your tiger team is friday , jan 26 .\nthe following are the remaining available dates / times . please let me know\nwhat works best for you at your earliest convenience .\nmonday , feb 12 4 : 30 - 6 : 30 or 6 : 30 - 8 : 30\ntuesday , feb 13 4 : 30 - 6 : 30 or 6 : 30 - 8 : 30\nwed . , feb 14 4 : 30 - 6 : 30 or 6 : 30 - 8 : 30\nfriday , feb 16 10 : 00 - 12 : 00 or 6 : 30 - 8 : 30\ntuesday , feb 20 6 : 30 - 8 : 30\nagain , this will be based on a first come - first serve basis . you may come to\ncampus or this can be done by videoconference . if you choose the latter ,\nplease provide to me a call - in number for the conference .\nany questions , please contact the fap office .\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.862+0000", "entityId": 9700, "properties": {"text": "Subject: re : consulting arrangement\nsheridan ,\ni have just checked with rac ( david gorte ) and we have a green light\nto go ahead with the project . i shall you tomorrow to discuss the details .\nvince\nsheridan titman on 01 / 24 / 2001 02 : 45 : 50 pm\nto :\ncc :\nsubject : consulting arrangement\nvince :\ni just wanted to check with you regarding the consulting arrangement we\ndiscussed a couple of weeks ago .\nperhaps , we should start with just a 1 or 2 day contract where i give some\nthoughts to the kind of issues that we discussed and come to houston to\npresent my preliminary thoughts and possible avenues for additional work .\nregards ,\nsheridan\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.867+0000", "entityId": 9701, "properties": {"text": "Subject: ll visa - anshuman shrivastava\nanshuman : please go ahead and complete the visa questionnaire and send the\nrequired documents so that i can proceed with your working visa for the us .\nregardless of the length of time you will be in the us , you will still need\nthe ll visa in order to work here .\nmany thanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 01 / 24 / 2001\n11 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n01 / 23 / 2001 11 : 01 am\nto : anshuman . srivastav @ enron . com\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jane\nallen / hou / ect @ ect , timothy callahan / na / enron @ enron , ranendra\nsengupta / enron _ development @ enron _ development , wade\ncline / enron _ development @ enron _ development , neil\nmcgregor / enron _ development @ enron _ development @ ect , harsimran\nsubject : ll visa - anshuman shrivastava\nanshuman : i have been asked to contact you regarding your possible move to\nhouston , texas . in order that i may begin the process of getting you an ll\nimmigration visa , i will need you to complete the attached visa questionnaire\nand return it to me with copies of the following documents :\na copy of all pages of your passport , even if blank\ncopies of all previous us visas issued\nan updated resume , showing months and years\ncopies of all diplomas and transcripts received\nif you have dependent family members coming to the states with you , copies of\ntheir passports\nplease send to my attention , via fedex to :\nenron corp .\n3 allen center , 3 ac 2026 a\n333 clay street\nhouston , tx 77002\nplease call me with any questions you may have at 713 - 345 - 5083 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.872+0000", "entityId": 9702, "properties": {"text": "Subject: re : ( no subject )\ncandice ,\nmaureen was sick for the last few days .\nwhen she comes back , i shall ask her to start the process regarding\na formal offer for you .\nvince\ncedkao @ aol . com on 01 / 24 / 2001 11 : 00 : 52 am\nto : vkamins @ enron . com\ncc : shirley . crenshaw @ enron . com , cedkao @ aol . com\nsubject : ( no subject )\ndear dr . kaminski ,\ni would like to thank you and your colleagues , dr . gibner and ms .\nraymond - castaneda , for taking the time to talk with me . i enjoyed the visit\nvery much and will be looking forward to the opportunity of working as a\nsummer intern at enron . you mentioned that you will call me this week . in the\nevent i ' m not at home , please leave a message at my home phone number ( 713 )\n647 - 7161 or email me at my houston email address cedkao @ aol . com .\nsincerely ,\ncandice kao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.876+0000", "entityId": 9703, "properties": {"text": "Subject: anshuman\nneil ,\ni would like to apologize for the confusion regarding anshuman .\nwe have floated a number of possible scenarios regarding his\ntrip to houston and there was a lot of confusion\nregarding the terms ( given that i was talking to sandeep\nevery few days ) .\ncurrently , we expect anshuman to come to houston for one month\nto work on the dpc project ( at jeff shankman ' s request ) . the lawyers advised\nme that we need an ll visa for him , irrespective of the duration\nof his stay .\nsorry for the confusion .\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.882+0000", "entityId": 9704, "properties": {"text": "Subject: re : ll visa - anshuman shrivastava\nvince : i don ' t think that you could have summarized the situation any\nbetter ! ! ! i will be happy to respond to neil as you suggested .\nthanks ,\nmolly\nvince j kaminski\n01 / 24 / 2001 11 : 02 am\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : ll visa - anshuman shrivastava\nmolly ,\nthanks for the update . two points .\nplease , let neil mcgregor know that many possible proposals were floated\nwith regard to anshuman and there was some noise in the system .\nwe need ll visa anyway and we decided to go ahead an arrange it .\ni shall also write to him and explain the confusion .\nalso , if i have the choice between upsetting neil or jeffs ( shankman and\nskilling ) ,\ni shall choose neil .\nvince\nenron north america corp .\nfrom : molly magee 01 / 24 / 2001 10 : 13 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : ll visa - anshuman shrivastava\nvince : apparently neil mcgregor became upset when he received margaret\ndaffin ' s email . he is saying , however , that anshuman will only be in\nhouston for one month , and you had mentioned six months when we spoke\nearlier . it really doesn ' t make any difference since he will need to get an\nll visa under either circumstance , but i thought you might want to see his\nemail .\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 01 / 24 / 2001 10 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n01 / 24 / 2001 09 : 57 am\nto : molly magee / hou / ect @ ect\ncc :\nsubject : re : ll visa - anshuman shrivastava\nmolly : per our conversation today . please let me know the status so that i\ncan proceed with the visa process .\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 01 / 24 / 2001\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nneil mcgregor @ enron _ development\n01 / 24 / 2001 05 : 18 am\nto : margaret daffin / hou / ect @ ect\ncc : wade cline / enron _ development @ enron _ development\nsubject : re : ll visa - anshuman shrivastava\nanshuman is not moving or immigrating to the us . we are allowing him to work\nfor a lmonth assignment in the us with enron . please carry out the necessary\napprovals and visa ' s on this basis .\nneil mcgregor\nceo dabhol power\nmargaret daffin @ ect\n01 / 23 / 2001 10 : 31 pm\nto : anshuman . srivastav @ enron . com\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jane\nallen / hou / ect @ ect , timothy callahan / na / enron @ enron , ranendra\nsengupta / enron _ development @ enron _ development , wade\ncline / enron _ development @ enron _ development , neil\nmcgregor / enron _ development @ enron _ development @ ect , harsimran\nsubject : ll visa - anshuman shrivastava\nanshuman : i have been asked to contact you regarding your possible move to\nhouston , texas . in order that i may begin the process of getting you an ll\nimmigration visa , i will need you to complete the attached visa questionnaire\nand return it to me with copies of the following documents :\na copy of all pages of your passport , even if blank\ncopies of all previous us visas issued\nan updated resume , showing months and years\ncopies of all diplomas and transcripts received\nif you have dependent family members coming to the states with you , copies of\ntheir passports\nplease send to my attention , via fedex to :\nenron corp .\n3 allen center , 3 ac 2026 a\n333 clay street\nhouston , tx 77002\nplease call me with any questions you may have at 713 - 345 - 5083 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.887+0000", "entityId": 9705, "properties": {"text": "Subject: re : ll visa - anshuman shrivastava\nmolly ,\nthanks for the update . two points .\nplease , let neil mcgregor know that many possible proposals were floated\nwith regard to anshuman and there was some noise in the system .\nwe need ll visa anyway and we decided to go ahead an arrange it .\ni shall also write to him and explain the confusion .\nalso , if i have the choice between upsetting neil or jeffs ( shankman and\nskilling ) ,\ni shall choose neil .\nvince\nenron north america corp .\nfrom : molly magee 01 / 24 / 2001 10 : 13 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : ll visa - anshuman shrivastava\nvince : apparently neil mcgregor became upset when he received margaret\ndaffin ' s email . he is saying , however , that anshuman will only be in\nhouston for one month , and you had mentioned six months when we spoke\nearlier . it really doesn ' t make any difference since he will need to get an\nll visa under either circumstance , but i thought you might want to see his\nemail .\nmolly\n- - - - - - - - - - - - - - - - - - - - - - forwarded by molly magee / hou / ect on 01 / 24 / 2001 10 : 09\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n01 / 24 / 2001 09 : 57 am\nto : molly magee / hou / ect @ ect\ncc :\nsubject : re : ll visa - anshuman shrivastava\nmolly : per our conversation today . please let me know the status so that i\ncan proceed with the visa process .\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 01 / 24 / 2001\n09 : 56 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nneil mcgregor @ enron _ development\n01 / 24 / 2001 05 : 18 am\nto : margaret daffin / hou / ect @ ect\ncc : wade cline / enron _ development @ enron _ development\nsubject : re : ll visa - anshuman shrivastava\nanshuman is not moving or immigrating to the us . we are allowing him to work\nfor a lmonth assignment in the us with enron . please carry out the necessary\napprovals and visa ' s on this basis .\nneil mcgregor\nceo dabhol power\nmargaret daffin @ ect\n01 / 23 / 2001 10 : 31 pm\nto : anshuman . srivastav @ enron . com\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jane\nallen / hou / ect @ ect , timothy callahan / na / enron @ enron , ranendra\nsengupta / enron _ development @ enron _ development , wade\ncline / enron _ development @ enron _ development , neil\nmcgregor / enron _ development @ enron _ development @ ect , harsimran\nsubject : ll visa - anshuman shrivastava\nanshuman : i have been asked to contact you regarding your possible move to\nhouston , texas . in order that i may begin the process of getting you an ll\nimmigration visa , i will need you to complete the attached visa questionnaire\nand return it to me with copies of the following documents :\na copy of all pages of your passport , even if blank\ncopies of all previous us visas issued\nan updated resume , showing months and years\ncopies of all diplomas and transcripts received\nif you have dependent family members coming to the states with you , copies of\ntheir passports\nplease send to my attention , via fedex to :\nenron corp .\n3 allen center , 3 ac 2026 a\n333 clay street\nhouston , tx 77002\nplease call me with any questions you may have at 713 - 345 - 5083 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.892+0000", "entityId": 9706, "properties": {"text": "Subject: resume for chris pernoud\nmolly ,\nwe want to hire this very bright young man as a part - time employee ,\nreporting to mike roberts . mike will be contacting you regarding the details .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 24 / 2001\n10 : 01 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" chris pernoud \" on 01 / 24 / 2001 09 : 21 : 11 am\nplease respond to\nto : \" michael roberts \" , \" vincent kaminski \"\n, \" shirley crenshaw \"\ncc :\nsubject : resume for chris pernoud\ngentlemen ,\nthank you for your time and consideration yesterday . i am excited about\nworking for enron and gladly accept your offer .\nto reiterate our consensus today , i will be working an average of 10 hours a\nweek , mostly early mornings from around 5 to 7 . another option for me might\nbe to work mondays , wednesdays , and fridays from around 5 to 8 or 9 .\ntoni graham was my contact in hr six months ago . she is probably more\nfamiliar with my previous file than anyone else . if you have any questions\nor concerns please don ' t hesitate to contact me .\nthank you ,\nchris pernoud\n= = = = = = = = = = = = = =\nchristopher pernoud\n7315 brompton rd .\napt . 231 b\nhouston , tx 77025\n( 713 ) 349 - 8963\ncgpl @ cornell . edu\n- chrispernoud . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.897+0000", "entityId": 9707, "properties": {"text": "Subject: re : punit rawal ' s interview with enron\nkim :\nthe interviews conducted on february 2 are just exploratory interviews to\nsee where punit might fit within enron . vince thought he might fit in john ' s\ngroup .\nthe title and $ $ amount will not be determined until it is decided where he\nshould be ( if at all ) . if john is interested after the interview , then he and\nvince can get together to discuss $ $ and title .\nif you or john have any other questions , please let me know .\nthanks !\nshirley\n3 - 5290\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : punit rawal ' s interview with enron\nshirley ,\nit is to my understand that vince is bringing in punit for a day of\ninterviews . john has agreed to meet with him on february 2 .\nplease inform vince and have vince get with john on what his title / $ $ will be .\nthanks\nk\nkim hillis\nenron americas\noffice of the chairman\nphone : 713 - 853 - 0681\nfax : 713 - 646 - 3227\nshirley crenshaw\n12 / 21 / 2000 11 : 03 am\nto : kimberly hillis / hou / ect @ ect\ncc :\nsubject : punit rawal ' s interview with enron\nkim :\npunit is a carnegie mellon student that will be graduating with an ms in\ncomputational finance in may 2001 . several of our guys interviewed him\nat carnegie mellon recently and were very impressed . vince says that he\nis definately a trading candidate .\nwould john be interested in interviewing him ? i am attaching his resume\nfor you to look over and then let me know if john would be interested .\nthanks !\nhave a merry christmas !\nshirley\n- punit + rawal + newresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.904+0000", "entityId": 9708, "properties": {"text": "Subject: re : research sign off\nsteve ,\nsign - off from the research group is something that requires defining formal\nrules going forward .\nmy concern over the last few years was that we were asked on many occasions\nto sign - off on partial results of valuation , without the benefits of a full\npicture .\nsometimes , we were asked to sign - off on trade ideas , over which we have no\ncontrol long - term .\ni shall talk to rick buy and david port about setting up more formal rules\nfor the research sign - off .\nvince\nsteven leppard\n01 / 24 / 2001 03 : 42 am\nto : sharad agnihotri / lon / ect @ ect\ncc : tani nath / lon / ect @ ect , ted murphy / lon / ect @ ect , james new / lon / ect @ ect ,\nvince j kaminski / hou / ect @ ect\nsubject : research sign off\nhi sharad\ni note from our discussion earlier this morning that you ' ve been asked to\nsign off a calculation from another group , which is something we ' re asked to\ndo from time to time .\ni take the view that we in research can assess a computation in terms of what\nit achieves with respect to its requirements , what its shortfalls are , and\ntherefore what the risks associated with using this method are . we cannot\nprovide an opinion on whether these risks are acceptable to enron , which i\nfeel falls firmly within rac territory .\nthis then raises the question of can research sign off anything for other\ngroups after all ? to \" sign off \" means to accept something , which our opinion\nin itself cannot do . it is most appropriate for us to provide a technical\nnote outlining the methodology , risks and shortcomings of a method , leaving\nthe formal \" sign off \" to those best placed to assess these risks for our\ncompany . the alternative is for multiple groups each to have their own view\non what is acceptable risk for the company .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.913+0000", "entityId": 9709, "properties": {"text": "Subject: re : anshuman\nneil ,\nyou must have already gotten my earlier mail of clarification . going\nforward , i agree with you that we should start the assigment early rather\nthan late .\nhowever , i would not necessarily like to wait till even feb 5 . the bids for\nlng must go out by the 15 th of feb , and we need to do a lot of fuel based\nanalysis before then . hence , if it is possible for anshuman ot be available\nbefore then , i would greatly appreciate it . perhaps even as early as monday\nor tuesday if possible ? ?\nregards ,\nsandeep .\nneil mcgregor @ enron _ development\n01 / 25 / 2001 10 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc : neil mcgregor / sin / ect @ ect , molly magee / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , sandeep kohli @ enron @ ect\nsubject : re : anshuman\nthanks for the clarification vince i appreciate it . we have a significant\nresource problem here in india , given we have a renegotiation about fall in\nour laps . anshuman is one of our key analysts and we are very proud of his\nabilities and future potential for enron . once we have dabhol off the \" life\nsupport system \" we could look at a longer assignment . as far as the present\none month assignment is concerned , i would rather go for an early start say\n5 th feb till 5 th march . is this convenient to you and jeff .\nneil\nvince j kaminski @ ect\n01 / 24 / 2001 10 : 41 pm\nto : neil mcgregor / sin / ect @ ect\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , sandeep\nkohli @ enron\nsubject : anshuman\nneil ,\ni would like to apologize for the confusion regarding anshuman .\nwe have floated a number of possible scenarios regarding his\ntrip to houston and there was a lot of confusion\nregarding the terms ( given that i was talking to sandeep\nevery few days ) .\ncurrently , we expect anshuman to come to houston for one month\nto work on the dpc project ( at jeff shankman ' s request ) . the lawyers advised\nme that we need an ll visa for him , irrespective of the duration\nof his stay .\nsorry for the confusion .\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.917+0000", "entityId": 9710, "properties": {"text": "Subject: re : anshuman\nthanks for the clarification vince i appreciate it . we have a significant\nresource problem here in india , given we have a renegotiation about fall in\nour laps . anshuman is one of our key analysts and we are very proud of his\nabilities and future potential for enron . once we have dabhol off the \" life\nsupport system \" we could look at a longer assignment . as far as the present\none month assignment is concerned , i would rather go for an early start say\n5 th feb till 5 th march . is this convenient to you and jeff .\nneil\nvince j kaminski @ ect\n01 / 24 / 2001 10 : 41 pm\nto : neil mcgregor / sin / ect @ ect\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , sandeep\nkohli @ enron\nsubject : anshuman\nneil ,\ni would like to apologize for the confusion regarding anshuman .\nwe have floated a number of possible scenarios regarding his\ntrip to houston and there was a lot of confusion\nregarding the terms ( given that i was talking to sandeep\nevery few days ) .\ncurrently , we expect anshuman to come to houston for one month\nto work on the dpc project ( at jeff shankman ' s request ) . the lawyers advised\nme that we need an ll visa for him , irrespective of the duration\nof his stay .\nsorry for the confusion .\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.922+0000", "entityId": 9711, "properties": {"text": "Subject: re : notice of end probation\ni would like to pass sharad ' s probationary period .\nsteve\nlondon hrservice centre\n25 / 01 / 2001 10 : 49\nsent by : zoe michael\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : notice of end probation\nnotice of end of probation\ni am writing to inform you that the six month probationary period for sharad\nagnihotri is due to end on the 21 / 02 / 2001 .\nplease can you let me know as soon as possible if you want to :\n* pass the probationary period\n* fail the probationary period * *\n* * in this case you will need to discuss with human resources\nif the probationary period is passed i will send out a letter to this effect\nfor you to sign and pass to your employee .\nthank you\nzoe", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.928+0000", "entityId": 9712, "properties": {"text": "Subject: mark lay\nvince : mark had not received my email so simply assumed that i had a\nbusiness plan and he would help if he could . i explained that i was at\nthe \" pre \" business plan stage . further , that i had hoped to discuss my\nsearch for collaborators to become co - founders . people with vision that\nmight help develop and refine the concept , identify model components ,\nisolate modules for the initial effort and build a business plan\nsuitable for angel investors not vcs . i might need your help in\nconveying this to him . i have struggled to put on paper a very rough\ndraft of how it might be best describe as to the direction it might go\nand what might conceptually be possible . please look at this and tell\nme if i am going too far at this point . i do not want to implant\ninsurmountable obstacle in anyone ' s mind . i hope to hear from you . al\narfsten 713 965 2158\n- lifetrak concept 012501 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.933+0000", "entityId": 9713, "properties": {"text": "Subject: [ fwd : new commodity marketplace opportunity ]\nmark : per our brief conversation this morning , the attached email was\nsent to you yesterday . i hope that you might understand that i am\nconceptually looking for \" founders \" and at the \" pre \" business plan\nstage . there is an enormous problem existing with a very attractive\neconomic reward and willing participants needing this solution . i need\nhelp . al arfsten 713 965 2158\ncontent - transfer - encoding : 7 bit\nx - mozilla - status 2 : 00000000\nmessage - id :\ndate : wed , 24 jan 2001 15 : 49 : 37 - 0600\nfrom : al arfsten\norganization : bfl associates , ltd .\nx - mailer : mozilla 4 . 7 [ en ] c - cck - mcd nscpcd 47 ( win 98 ; i )\nx - accept - language : en\nmime - version : 1 . 0\nto : mark . lay @ enron . com\nsubject : new commodity marketplace opportunity\ncontent - type : text / plain ; charset = us - ascii\nmark lay : i shared confidentially with vince kaminski my developing\nconcept of a highly inefficient not - for - profit enterprise with\ndramatically increasing costs . i believe that a for - profit economic\nmodel is possible that should reverse these skyrocketing costs and\nultimately lower the commodity thereby having a national , if not , global\nimpact of health care costs . vince seems to also believe in the\nconcepts potential . the ceo of one of the biggest u . s . blood banks has\nalready asked to become involved . i would like involve more people\nwith vision , means and desire to help make this a reality . i would look\nforward to meeting with you to talk further . al arfsten 713 965 2158", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.937+0000", "entityId": 9714, "properties": {"text": "Subject: dot . odpowiedzi na list\nmam nadzieje , ze moja odowiedz na list sz . pana z dn . 19 . 01 . 01 doszla do pana .\nbyl on wysylany z niepewnego komputera .\njezeli nie doszedl , to prosze dac znac ( elektronicznie oczywiscie ) .\nserdecznie pozdrawiam\ngrazyna piesniewska", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.942+0000", "entityId": 9715, "properties": {"text": "Subject: interview schedules for tony hamilton and damian likely\nplease find the interview packets for the above - referenced candidates . the\ninterviews will occur on friday january 26 , 2001 . please print all documents\nfor your reference . hardcopies of their resumes will be delivered via\nrunner . if you have any questions , or conflicts of schedule , please do not\nhesitate to contact me .\nshawn grady\n58701", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.947+0000", "entityId": 9716, "properties": {"text": "Subject: re : consulting arrangement\nthanks vince - - - i will be teaching this afternoon . if you can ' t reach me\nthis morning , we can talk tomorrow .\nsheridan\nat 05 : 28 pm 1 / 24 / 01 - 0600 , you wrote :\n>\n> sheridan ,\n>\n> i have just checked with rac ( david gorte ) and we have a green light\n> to go ahead with the project . i shall you tomorrow to discuss the details .\n>\n> vince\n>\n>\n>\n>\n>\n> sheridan titman on 01 / 24 / 2001 02 : 45 : 50 pm\n>\n> to :\n> cc :\n> subject : consulting arrangement\n>\n>\n> vince :\n>\n> i just wanted to check with you regarding the consulting arrangement we\n> discussed a couple of weeks ago .\n>\n> perhaps , we should start with just a 1 or 2 day contract where i give some\n> thoughts to the kind of issues that we discussed and come to houston to\n> present my preliminary thoughts and possible avenues for additional work .\n>\n> regards ,\n>\n> sheridan\n> sheridan titman\n> department of finance\n> college of business administration\n> university of texas\n> austin , texas 78712 - 1179\n>\n> 512 - 232 - 2787 ( phone )\n> 512 - 471 - 5073 ( fax )\n>\n> titman @ mail . utexas . edu\n>\n>\n>\n>\n>\n>\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.951+0000", "entityId": 9717, "properties": {"text": "Subject: re : factors for us power curves\ntanya ,\ni have checked the factors for us power and all except the\nfollowing are acceptable :\nrl 1 , rlc , rlf , rlj , rlk , rll , rlm , rln , rlz , r 4 a , r 4 b .\nfor global liquids , the requisite curves have been submitted to the\nliquids team . i will review their results and confirm .\nnaveen\ntanya tamarchenko @ ect\n01 / 25 / 2001 12 : 52 pm\nto : naveen andrews / corp / enron @ enron , rabi de / na / enron @ enron , jaesoo\nlew / na / enron @ enron\ncc : oliver gaylard / lon / ect @ ect\nsubject : re : factors for us power curves\nnaveen ,\nattached spreadsheet contains the factors for us power curves calculated\nbased on 9 / 28 / 00 - 11 / 28 / 00 data in stage with the latest version of vatrfacs .\nby specifying integer number from 1 to 32 in cell jl you can see the factors\nfor different regions .\ni suggest to consider the following sets of factors as acceptable :\nrla , rle , r 2 , r 2 a , r 2 b , r 3 , r 3 a , r 3 b , r 4 , r 4 c , r 5 , r 5 a , r 6 , r 7 , r 7 a , r 8 , r 9 .\nplease review and confirm .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.956+0000", "entityId": 9718, "properties": {"text": "Subject: re : ll visa - anshuman shrivastava\nmolly : for your information , i received this reply from anshuman today .\nas i mentioned in my voicemail to you today after seeing the note from neil\nmcgregor , there is no possible way that anshuman could be in the us to work\non february 5 th . until i receive all of his documents , and the necessary\ninformation from you regarding his position in the us , i do not have the\ninformation to send to the attorneys for the visa application .\nonce they receive the paperwork , they will need to prepare the documents in\ntriplicate , and send to me . at this stage , i will send the documents to\nanshuman in india and he will need to make an appointment at the us consulate\nin order to have the ll visa stamped into his passport . he will not be able\nto come to the states to work without this visa in his passport ! all of this\ncould take approx . 3 - 4 weeks to accomplish . i think march would be a more\nrealistic timeframe !\nplease let me have your thoughts .\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 01 / 25 / 2001\n09 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanshuman srivastav @ enron _ development\n01 / 25 / 2001 12 : 35 : 53 am\nto : margaret daffin / hou / ect @ ect\ncc : sandeep kohli / enron _ development @ enron _ development , harsimran\nsubject : re : ll visa - anshuman shrivastava\nhi margaret ,\napologies for not getting in touch earlier . i am unfortunately out of mumbai\nand will be back only on sunday . will send you all the documents on monday\nmorning . they will reach you by latest wednesday .\nappreciate the help ! !\nthanks !\nregards ,\nanshuman\nmargaret daffin @ ect\n01 / 24 / 2001 10 : 57 pm\nto : anshuman . srivastav @ enron . com\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jane\nallen / hou / ect @ ect , timothy callahan / na / enron @ enron , ranendra\nsengupta / enron _ development @ enron _ development , wade\ncline / enron _ development @ enron _ development , neil\nmcgregor / enron _ development @ enron _ development @ ect , harsimran\nsubject : ll visa - anshuman shrivastava\nanshuman : please go ahead and complete the visa questionnaire and send the\nrequired documents so that i can proceed with your working visa for the us .\nregardless of the length of time you will be in the us , you will still need\nthe ll visa in order to work here .\nmany thanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 01 / 24 / 2001\n11 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n01 / 23 / 2001 11 : 01 am\nto : anshuman . srivastav @ enron . com\ncc : molly magee / hou / ect @ ect , vince j kaminski / hou / ect @ ect , jane\nallen / hou / ect @ ect , timothy callahan / na / enron @ enron , ranendra\nsengupta / enron _ development @ enron _ development , wade\ncline / enron _ development @ enron _ development , neil\nmcgregor / enron _ development @ enron _ development @ ect , harsimran\nsubject : ll visa - anshuman shrivastava\nanshuman : i have been asked to contact you regarding your possible move to\nhouston , texas . in order that i may begin the process of getting you an ll\nimmigration visa , i will need you to complete the attached visa questionnaire\nand return it to me with copies of the following documents :\na copy of all pages of your passport , even if blank\ncopies of all previous us visas issued\nan updated resume , showing months and years\ncopies of all diplomas and transcripts received\nif you have dependent family members coming to the states with you , copies of\ntheir passports\nplease send to my attention , via fedex to :\nenron corp .\n3 allen center , 3 ac 2026 a\n333 clay street\nhouston , tx 77002\nplease call me with any questions you may have at 713 - 345 - 5083 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.960+0000", "entityId": 9719, "properties": {"text": "Subject: fea announces the release of @ energy 2 . 0\njanuary 26 , 2001\nvince kaminski\nenron north america corp .\n1400 smith street\n30 th floor , rm . 3036 b\nhouston , tx 77251 - 1188\n1 713 - 853 - 3848\ndear vince kaminski ,\nthis is to inform you of the release of @ energy 2 . 0 . ftp download\ninstructions are available immediately . the download instructions are\nincluded at the end of this email . your cd ' s and manuals will be shipped to\nyou within 2 weeks . please see below for more information regarding this new\nrelease .\nplease confirm that you are the correct recipient for this shipment and your\naddress above is correct by clicking reply and send . if any changes need to\nbe made , please make the changes above and reply .\n* * warning : please note that if you did not received a license key for\n@ energy after june 2000 , you will need to contact support @ fea . com or call\n510 . 548 . 6200 to obtain a new license key to enable the new version . * *\n* * swing users : @ energy / swing now replaces the \" swing \" product . see the\n@ energy user manual for a discussion of the changes . contact fea for the\nnecessary license keys . you will be able to run both the new and old swing\nsimultaneously .\nheres an overview of the new and changed features since version 1 . 6 :\n@ energy ( forward curve )\njump parameters are now calibrated for use in other @ energy functions .\ninputs and outputs to powercalib and comcalib have changed . see the\ncorresponding function syntax in the user guide for additional information .\n35 - 40 % speed improvement . the module is now out of beta .\n@ energy ( basics )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse indexswap , exoticswap , or optindexswap with floating price linked to a\nseries of futures dates , such futures dates need not be close to dates\nspecified in the forward curve input . a new utility function , pathutil ,\nallows you to simulate and visualize price paths consistent with the models\nsupported by @ energy . 25 - 30 % speed improvement .\n@ energy ( advanced )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse optdiffswap or diffswap with floating price linked to a series of\nfutures dates , such futures dates need not be close to dates specified in\nthe forward curve input . calspreadopt now allows for the specification of\ntwo different mean reversion rates . 30 - 35 % speed improvement .\n@ energy ( swing )\nswingopt and stripswingopt now allow for valuation of swing straddle\ncontracts with overall load constraints . 65 - 70 % speed improvement . the\nmodule is now out of beta .\n@ energy ( weather )\n30 - 35 % speed improvement .\nif you have any questions please feel free to contact us . we appreciate this\nopportunity to be of continuing service to enron north america corp . .\nregards ,\nmichelle mendoza\nsupport @ fea . com\n+ 1 - 510 - 548 - 6200\nfinancial engineering associates , inc . ( fea )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nto download @ energy 2 . 0 via ftp , follow the following instructions :\nnote : using explorer leads to unpredictable results , so we suggest using\nnetscape or a dos shell .\nusing netscape :\nin the location box type : ftp : / / energy @ ftp . fea . com\npassword : 2 rbzxgv 5\nenergy - 2 . 0 - win 32 . exe is for windows 95 / 98 / 2000 / nt . download and run on\na local drive .\nusing a dos shell :\nat a dos prompt type : ftp ftp . fea . com\nuser : energy\npassword : 2 rbzxgv 5\ntype \" binary \" and hit ' return ' .\ntype \" ls \" for a list of available files .\ntype \" get \" energy - 2 . 0 - win 32 . exe and and wait for the ftp > prompt .\ntype \" quit \" .\nthe file will be downloaded into the directory at which you entered the ftp\nsite .\ndouble click on the exe and follow the instructions on the screen .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.965+0000", "entityId": 9720, "properties": {"text": "Subject: re : calpx prices\njason ,\ni think what you may be asking for are caliso power prices . the calpx is a\nscheduling coordinator and they submit balanced schedules and bid curves to\nthe caliso . the iso combines the curves from participating scs ( of which i\nbelieve enron is one ) and calculates the uncongested and congested prices .\nthe caliso prices are available from rdi powerdat , the enron lim database , and\na number of other sources . recent historical prices are available from the\ncaliso web site .\ni am copying your mail to tim hiezenrader , who runs the westdesk fundamentals\ngroup . i believe he would know how you might be able to access the more\nreal - time caliso data that enron collects .\ntim , can you help jason out ? he is a manager in the ena research group .\nthanks ,\nmichael\n> > > sokolov , jason 01 / 26 / 01 02 : 01 pm > > >\nmichael ,\ni an trying to locate some historical real - time ( spot ) power prices for calpx .\ndo you know who may have them ?\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.970+0000", "entityId": 9721, "properties": {"text": "Subject: re : m lay response\nal ,\nthanks for the update . i hope that you and mark\nwill come up with a good plan of attack .\ni can only regret that my workload does not allow me to participate\nin this project .\nvince\nal arfsten on 01 / 25 / 2001 05 : 45 : 54 pm\nto : vkamins @ enron . com\ncc :\nsubject : m lay response\nvince : i forwarded mark lay ' s reply to update you . al\nreceived : from outbound 5 . enron . com ( 192 . 152 . 140 . 9 ) by\nmailo 6 a . intermediahosting . com ( rs ver 1 . 0 . 58 s ) with smtp id 09075930 for\n; thu , 25 jan 2001 18 : 34 : 37 - 0500 ( est )\nreceived : from nahou - msmswolpx . corp . enron . com ( [ 172 . 28 . 10 . 37 ] ) by\npostmaster . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / postmaster - 1 . 00 ) with esmtp id xaal 2799 for\n; thu , 25 jan 2001 23 : 34 : 36 gmt\nfrom : mark . lay @ enron . com\nreceived : from nahou - lnintol . corp . enron . com ( unverified ) by\nnahou - msmswolpx . corp . enron . com ( content technologies smtprs 4 . 1 . 5 ) with esmtp\nid for\n; thu , 25 jan 2001 17 : 34 : 36 - 0600\nto : arfsten @ bflassociates . com\nx - priority : 3 ( normal )\nimportance : normal\ndate : thu , 25 jan 2001 17 : 34 : 16 - 0600\nsubject : re : [ fwd : new commodity marketplace opportunity ]\nmessage - id :\nx - mimetrack : serialize by router on nahou - lnintol / enron ( release 5 . 0 . 2 b\n( intl ) | 16 december 1999 ) at 01 / 25 / 2001 05 : 34 : 34 pm\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\nx - loop - detect : 1\nx - mozilla - status 2 : 00000000\ni did understand that you were still at the concept stage . it is a very\ninteresting proposal and i would like to think about it .\nthanks ,\nmark\n- - - - - original message - - - - -\nfrom : al arfsten @ enron\nenron . com ]\nsent : thursday , january 25 , 2001 10 : 45 am\nto : lay , mark\nsubject : [ fwd : new commodity marketplace opportunity ]\nmark : per our brief conversation this morning , the attached email was\nsent to you yesterday . i hope that you might understand that i am\nconceptually looking for \" founders \" and at the \" pre \" business plan\nstage . there is an enormous problem existing with a very attractive\neconomic reward and willing participants needing this solution . i need\nhelp . al arfsten 713 965 2158\ncontent - transfer - encoding : 7 bit\nx - mozilla - status 2 : 00000000\nmessage - id :\ndate : wed , 24 jan 2001 15 : 49 : 37 - 0600\nfrom : al arfsten\norganization : bfl associates , ltd .\nx - mailer : mozilla 4 . 7 [ en ] c - cck - mcd nscpcd 47 ( win 98 ; i )\nx - accept - language : en\nmime - version : 1 . 0\nto : mark . lay @ enron . com\nsubject : new commodity marketplace opportunity\ncontent - type : text / plain ; charset = us - ascii\nmark lay : i shared confidentially with vince kaminski my developing\nconcept of a highly inefficient not - for - profit enterprise with\ndramatically increasing costs . i believe that a for - profit economic\nmodel is possible that should reverse these skyrocketing costs and\nultimately lower the commodity thereby having a national , if not , global\nimpact of health care costs . vince seems to also believe in the\nconcepts potential . the ceo of one of the biggest u . s . blood banks has\nalready asked to become involved . i would like involve more people\nwith vision , means and desire to help make this a reality . i would look\nforward to meeting with you to talk further . al arfsten 713 965 2158", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.974+0000", "entityId": 9722, "properties": {"text": "Subject: re : resume\nsorry , i did not know about the jv .\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : friday , january 26 , 2001 3 : 53 pm\n> to : marshall . brown @ robertwalters . com\n> cc : vince . j . kaminski @ enron . com ; stinson . gibner @ enron . com\n> subject : re : resume\n>\n>\n> marshall ,\n>\n> thanks for the resume . we have a jv with peoples , so poaching is out of\n> the\n> question .\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 01 / 25 / 2001 09 : 04 : 23\n> am\n>\n> to : vince kaminski\n> cc :\n> subject : resume\n>\n>\n> vince ,\n> this candidate would be interested in speaking with you . let me know\n> your thoughts .\n> regards ,\n>\n> marshall brown\n> vice president\n> robert walters associates\n> tel : ( 212 ) 704 - 0596\n> fax : ( 212 ) 704 - 4312\n> mailto : marshall . brown @ robertwalters . com\n> http : / / www . robertwalters . com\n>\n>\n> >\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> ( see attached file : laps _ rob . doc )\n>\n> >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.979+0000", "entityId": 9723, "properties": {"text": "Subject: hi vince ,\nafter we hung up the phone yesterday , i sent you an email as we\nagreed . however today i looked in my \" outbox \" and see that nothing was\nsent to you . thus , i ' m trying again . if this is redundant , sorry .\nattached is a copy of the corporate finance forum i am trying to\norganize . any comments or suggestions you might have would be\nappreciated . i look forward to enron getting involved in this project if\nat all possible .\nsecondly , i am confirming the dates for the two visitors for the risk\nmanagement chair .\nphilippe jorion , seminar on 2 / 15 and dinner on 2 / 14\nandrew karolyi , seminar on 2 / 23 and dinner on 2 / 23 .\nlets try to go flying sometime soon\nthanks for your help and support ,\ndave\n- nfcfproposal . doc\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.983+0000", "entityId": 9724, "properties": {"text": "Subject: re : mgmt 656\nlet me know if you need anything else . - pam\nat 11 : 00 am 1 / 26 / 01 - 0600 , you wrote :\n> pam\n>\n> thanks\n>\n> yes , please , send me the e - mail addresses .\n>\n> vince\n>\n>\n>\n>\n>\n> pamela vande krol castro on 01 / 26 / 2001 10 : 40 : 17 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : mgmt 656\n>\n>\n> here are your latest rosters . let me know if you would like the spreadsheet\n> with their e - mail addresses as well ! - pam ( 6223 )\n> ( see attached file : 656 . doc )\n>\n>\n- 656 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.989+0000", "entityId": 9725, "properties": {"text": "Subject: re : mgmt 656\npam\nthanks\nyes , please , send me the e - mail addresses .\nvince\npamela vande krol castro on 01 / 26 / 2001 10 : 40 : 17 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : mgmt 656\nhere are your latest rosters . let me know if you would like the spreadsheet\nwith their e - mail addresses as well ! - pam ( 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:51.994+0000", "entityId": 9726, "properties": {"text": "Subject: mgmt 656\nhere are your latest rosters . let me know if you would like the spreadsheet\nwith their e - mail addresses as well ! - pam ( 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.001+0000", "entityId": 9727, "properties": {"text": "Subject: wharton business plan competition\nhi anne !\nthank you for your reply . enron is delighted to be a part of the wharton\nbusiness plan competition !\nfirst , our assistant in the university affairs group , melinda mccarty , will\nprovide you with our logo .\nenron would definitely like to be judge in phase iii and participate in the\nventure fair , including the display table .\nas to the mentoring and university community program , let ; s discuss that\nfurther so i can better judge our way forward .\nafter i ' ve had the chance to discuss all of this with our entire university\naffairs and wharton team here at enron , you and i can get together to plan a\nmore difinitive participatory strategy for enron . i will call you next week .\nagain , we at enron are very enthusiastic about participation with wharton in\nthis mutually interesting endeavor . !\nbest regards !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 26 / 2001\n06 : 33 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" stamer , anne \" on 01 / 26 / 2001 03 : 47 : 39 pm\nto : \" ' christie _ patrick @ enron . com ' \"\ncc :\nsubject : wharton business plan competition\ndear christie :\nthank you for your voice mail . things are moving along nicely with the\ncompetition . phase ii deadline was today , so we hope to have some\nstatistics in the next few weeks . i have attached the statistics from phase\ni , for your files . listed below are ways that enron could be involved , let\nme know in which ( or all ) of these enron would be interested in participating .\n* we want to start listing our sponsors , so it would be really good if we\ncould get your logo .\n* also , does enron wish to be a judge in phase iii and the venture fair\n( vf ) ? for phase iii , we would mail each judge about 3 full blown business\nplans to be ranked . we anticipate this taking no more than 1 afternoon\n* for the vf , we would need a judge to be present for the entire day . the\nvf is by invitation only and we anticipate about 350 students , venture\ncapitalists , business entrepreneurs and faculty . the vf will be held in\nphiladelphia on april 30 th .\n* at the vf we will provide an opportunity for our sponsors with a 6 foot\ntable for exhibits or materials to hand out . we will need to know if you\nwish to use the exhibit space .\n* we plan on providing our 25 semi - finalist teams with one - on - one\nmentoring . if enron is interested , that would be about 1 / 2 or 1 day\ncommitment .\n* there might be an opportunity for a workshop to the university community .\nwould enron be interested in participating in something like this ?\ni look forward to working with you to make this year ' s bpc a success . thank\nyou .\nsincerely ,\nanne stamer\n>\nanne stamer\nwharton business plan competition\nwharton entrepreneurial programs\nthe wharton school\n419 vance hall , 3733 spruce street\nphiladelphia , pa 19104 - 6374\n215 - 746 - 6460 ( direct )\n215 - 898 - 4856 ( office )\n215 - 898 - 1299 ( fax )\nstamer @ wharton . upenn . edu\n- phase ioverview . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.009+0000", "entityId": 9728, "properties": {"text": "Subject: remaining work\nvince ,\ni shipped you the paper along with my note to don . however , i wanted to\nshare with you what i feel are the remaining \" to dos \" . specifically ,\n1 . we need to document carefully the forces that were behind the original\ntransformation of enron . specifically , the fallout from deregulation ( take\nor pay contract defaults , etc . ) , the impact of the losses from the oil\ntrading operation , the nationalization of the peruvian pipeline , and the\nleveraging up to fend off the carl ichan takeover attempt .\n2 . we need to complete / beef up the network strategy section .\n3 . finally , the concluding section needs to be carefully crafted to\n\" hammer home \" the basic principles underlying the transformation .\nwhat do you think ?\nhope you have a great weekend .\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.016+0000", "entityId": 9729, "properties": {"text": "Subject: latest draft\ndon ,\nattached is my latest effort . it entailed fairly drastic \" restructuring\nand reorganization \" of the earlier draft . my revision effort has been\ndirected at improving the focus of the paper . the new story is the following :\n1 . enron was formed as a regulated gas pipeline company in the mid - eighties .\n2 . economic and competitive conditions conspired to force a dramatic\nreorganization of the company almost immediately . the result was the\ncreation of a new , unregulated energy trading operation . the strategy of\nthe new unit was to capitalize on business opportunities in the\nderegulation of markets that was occuring at the time ( mid - eighties until\nnow ) .\n3 . the business model adopted for the new unregulated business was that of\na \" gas bank \" . the analogy to a commercial bank posed a very difficult\nproblem to enron ' s management in that there was no source of liquidity to\nthe market from a central bank authority . as a consequence enron had to\ndevelop its own very elaborate risk management procedures .\n4 . another consequence of the new business model was that it required a\ndifferent set of employee skills and talents . specifically , it required\nwere bright , energetic and innovative individuals capable of identifying\nentrepreneurial opportunities and starting new businesses . furthermore , a\nnew , flatter organizational structure entailing decentralized decision\nmaking was required to facilitate quick response to changing market\nconditions . to monitor and manage this new \" empowered \" labor force\nrequired that the firm develop new personnel policies and procedures .\n5 . three primary tools of personnel management were adopted : ( i ) measure\nperformance semi - annually , ( ii ) tie compensation closely to performance ,\nand ( iii ) allow personnel free movement within enron to seek out the best\nopportunities .\n6 . other attributes of the enron model include consideration for asset\noptionality , recognition of the value of networks in adding value to\ntrading platforms , and the use of mark - to - market accounting for business\ntransactions as a means of ensuring transparency and promoting prompt actions .\nif my \" story line \" sounds better than the draft i have attached its because\nits the last thing i ' ve written . at any rate i look forward to hearing\nyour comments and to getting this wrapped up .\nthanks and i look forward to seeing you in february .\njohn\n- enron _ paper _ 1 _ 26 _ 01 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.021+0000", "entityId": 9730, "properties": {"text": "Subject: book order\njulie ,\nwe received the shipment of 50 books . thanks .\nthe book was an instant hit . we need 50 more books .\nvince\np . s . i understand paul sent you the check for the remaining 50 %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.025+0000", "entityId": 9731, "properties": {"text": "Subject: north atlantic forecasts\nupdate for fyi\nalso , highly recommend adding tony hamilton to the research group ,\ncross - train him one month in houston , per our teleconference this am .\n- - - mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 01 / 26 / 2001\n02 : 59 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : stephen bennett @ enron 01 / 26 / 2001 02 : 48 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : north atlantic forecasts\nmike . . .\nin response to phil clifford ' s request - i have constructed webpage that\nprovides wind , wave , and storm information for the production and\ntranportation areas of the north atlantic . i ' ve linked the site from the\nresearch weather homepage to the european weather support page . here is the\nlink :\nfrom here - follow the : \" north atlantic production / transport \" link . let ' s\nsee what customer feedback we get - and i will continue to investigate\nfurther avenues\nof support .\nsteve\nstephen bennett\nmeteorologist - research\nenron americas\next . 5 - 3661", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.030+0000", "entityId": 9732, "properties": {"text": "Subject: re : durasoft - - java class\nrabi ,\nyou and tanya should go ahead with the course you have already registered\nfor .\ni have just mentioned it fyi .\ni don ' t see too many problems with the course stinson\nmay help to arrange . the alternative course can be scheduled on premises ,\nlate in the day\nand distributed over longer time period .\nvince\nrabi de @ enron\n01 / 26 / 2001 02 : 15 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : durasoft - - java class\nvince ,\ntanya and i are registered for the offsite ( productivity point ) java class\n( febl 2 - 16 ) . before i go ahead and try to cancel the reservation , i need\nsome guidance from you ( and / or tanya ) in light of the following issues :\n1 . do you really want 15 people from the same group be unavailable at the\nsame time ?\n2 . enron gets 30 % discount from the list price ( $ 2125 ) of the productivity\npoint java class . hence cost difference is $ 500 per person and not $ 1100 as\noriginally thought .\n3 . contents of the in - house class can be be tailored to match the skill\nlevel of a more homegenous group .\nplese advise . thanks ,\nrabi", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.036+0000", "entityId": 9733, "properties": {"text": "Subject: re : lance cunningham\ndiscussions with lance during his hire were intended to have lance start\nprior to bonus and merit eligibility . therefore , lance accepted the position\nunder the impression he would be eligible for both bonus and merit .\nkari oquinn\n01 / 25 / 2001 10 : 45 pm\nto : norma villarreal / hou / ect @ ect\ncc :\nsubject : lance cunningham\nlance cunningham , mgr , hired 10 / 2 / 00 , rated \" satisfactory \" has a $ 5 k ( 5 . 55 % )\nequity inc indicated in gcs . please give more detail . i realize he was\nrated ; however , he was hired after 10 / 1 and his rating is sat .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.041+0000", "entityId": 9734, "properties": {"text": "Subject: re : enroll in intro to java at productivity point , feb 12 - 16\nmarty :\nhow many do we need to enroll in order to bring the class to enron ?\nthanks !\nshirley\nmarty chrisman @ enron\n01 / 25 / 2001 04 : 58 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : enroll in intro to java at productivity point , feb 12 - 16\nok .\nthe discounted rate applies regardless of numbers enrolled per class .\nmarty\nshirley crenshaw @ ect\n01 / 25 / 2001 02 : 45 pm\nto : marty chrisman / corp / enron @ enron\ncc :\nsubject : re : enroll in intro to java at productivity point , feb 12 - 16\nmarty :\nvince wants to wait and see how many actually need this training before\nwe enroll anymore from his group . right now tanya and rabi are all\nthat have approval .\ni will let you know if we decide to do more .\nthanks for all of your assistance .\nshirley\nmarty chrisman @ enron\n01 / 25 / 2001 11 : 46 am\nto : twolfe @ propoint . com\ncc : ahmad farooqi / enron @ enronxgate , jared lane / na / enron @ enron , tanya\ntamarchenko / hou / ect @ ect , rabi de / na / enron @ enron , shirley crenshaw / hou / ect @ ect\nsubject : enroll in intro to java at productivity point , feb 12 - 16\nplease enroll the following in the java class in houston , feb 12 - 16\nahmad farooqi ,\njared lane\ntanya tamachenko\nrabi de\nahmad & jared are application developers . tanya & rabi are in the research\ngroup . i may have one or more names to submit and will send those to you as\nsoon as i get them\nthank you ,\nmarty chrisman\n713 - 853 - 4567", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.045+0000", "entityId": 9735, "properties": {"text": "Subject: cuiaba models\nhey ding . if you recall , we looked at southern cone during july , as this\nwas the feedback that we got from our presentation in late may . the cuiaba\ngas and power volumes may be found in several different places since there is\nmore than one model . the models do not necessarily agree with each other . i\nhave attached a few models that should contain the necessary info . i also\nhave a summary sheet template that was to be attached in maps . enjoy .\n- kevin k .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.050+0000", "entityId": 9736, "properties": {"text": "Subject: i ' m in hospital ! ! !\ni ' ve had a burst appendix and pneumonia .\ncall debbie for details on 936 - 321 - 8836 ( home ) or 936 - 499 - 4996 ( cell ) or me\ndirectly on 713 - 598 - 0732 ( but i share a room with someone , so we may disturb\nthem . . . .\nsteve\n- - - - - - - - - - - - - - - - -\ntel : 713 - 345 - 8980\ncell : 713 - 598 - 0732", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.054+0000", "entityId": 9737, "properties": {"text": "Subject: re : [ fwd : new commodity marketplace opportunity ]\nmark lay : again , thank you for listening to my concept . in my search for\nco - foounder / collaborators and\nangel investors , disclosing the concept ( for lack of a better title now , i\ncall the system \" lifetrak \" )\nand formulating a simple , clear picture is not easy . the attached schematic\ndepicts an overview of the\neffort . part of the diagram hopes to separate the special interests as\nparticipants and member\norganizations so as to be helpful in the public sector with social issues .\nthe groups fall into two\nnatural sectors ; ( 1 ) supply generators ; and ( 2 ) user / service organizations .\nin the middle is the system\nand its management that interconnects those benefiting groups and the\ndonor / recipient lifetrak\ncardholders . i can embellish more on these later . the diagram gives us a\nplace to begin discuss and\ntalking points in order to try to simplify how the concept could be developed\nand supported and where the\nrevenue model which creates dramatic efficiencies generates management and\nlicense fee . i hope we can\nget together soon . although vince kaminski cannot directly contribute due to\nhis other commitments , i\nhave copied him to keep him advised ( hoping that he might be able to do more\nat a later date . ) . best\nregards , al arfsten\nmark . lay @ enron . com wrote :\n> i did understand that you were still at the concept stage . it is a very\n> interesting proposal and i would like to think about it .\n>\n> thanks ,\n> mark\n>\n> - - - - - original message - - - - -\n> from : al arfsten @ enron\n>\nenron . com ]\n>\n> sent : thursday , january 25 , 2001 10 : 45 am\n> to : lay , mark\n> subject : [ fwd : new commodity marketplace opportunity ]\n>\n> mark : per our brief conversation this morning , the attached email was\n> sent to you yesterday . i hope that you might understand that i am\n> conceptually looking for \" founders \" and at the \" pre \" business plan\n> stage . there is an enormous problem existing with a very attractive\n> economic reward and willing participants needing this solution . i need\n> help . al arfsten 713 965 2158\n>\n> content - transfer - encoding : 7 bit\n> x - mozilla - status 2 : 00000000\n> message - id :\n> date : wed , 24 jan 2001 15 : 49 : 37 - 0600\n> from : al arfsten\n> organization : bfl associates , ltd .\n> x - mailer : mozilla 4 . 7 [ en ] c - cck - mcd nscpcd 47 ( win 98 ; i )\n> x - accept - language : en\n> mime - version : 1 . 0\n> to : mark . lay @ enron . com\n> subject : new commodity marketplace opportunity\n> content - type : text / plain ; charset = us - ascii\n>\n> mark lay : i shared confidentially with vince kaminski my developing\n> concept of a highly inefficient not - for - profit enterprise with\n> dramatically increasing costs . i believe that a for - profit economic\n> model is possible that should reverse these skyrocketing costs and\n> ultimately lower the commodity thereby having a national , if not , global\n> impact of health care costs . vince seems to also believe in the\n> concepts potential . the ceo of one of the biggest u . s . blood banks has\n> already asked to become involved . i would like involve more people\n> with vision , means and desire to help make this a reality . i would look\n> forward to meeting with you to talk further . al arfsten 713 965 2158\n- lifetrak vision chart 012601 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.059+0000", "entityId": 9738, "properties": {"text": "Subject: re : durasoft - - java class\nsiva , i will have to check and see if we can accomodate a 5 day 8 to 5\nclass . also , president ' s day is a holiday for us , so we may have to look\nat a later date .\n- - stinson\n\" siva thiagarajan \" on 01 / 29 / 2001 08 : 51 : 02 am\nto :\ncc :\nsubject : re : durasoft - - java class\nstinson ,\ni have attached a file along with this email\nthat lists the software needed for our\njava class .\nwe would like to do the class from monday thru\nfriday , 8 am to 5 pm . that way we can complete\nthe class within a week . we are unable to offer\nclasses in the evenings or for few hours a week .\nwe usually teach week long courses for our\nother clients and because of that we won ' t\nbe available .\ncurrently , we can do the class from feb . 19 th\nthrough feb . 23 ( that is if you are working on\nfeb 19 th , president ' s day ) .\ni will call you sometime this afternoon to talk\nfurther . please feel free to reach me if you have\nany further questions in the mean time .\nregards ,\n- siva\n- - - - - original message - - - - -\nfrom : stinson . gibner @ enron . com\nto : siva @ durasoftcorp . com\ndate : friday , january 26 , 2001 5 : 52 pm\nsubject : re : durasoft - - java class\n>\n> siva ,\n>\n> a few additional questions . can you tell me what software would be\n> required for the students ? also , when would venkat be available to start\n> the class and what type of schedule would you recommend ? would having two\n> hour classes twice a week from , say , 4 - 6 pm work ? we have a high level of\n> interest and just need to iron out the details . feel free to call me\n> ( late afternoon on monday might be best ) at 713 853 4748 or email .\n>\n> - - stinson\n>\n>\n>\n- javasoftwareneeds . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.064+0000", "entityId": 9739, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the order you have placed using it\ncentral .\nrequest number : ecth - 4 tfn 5 w\norder for : jason sokolov\n1 x ( standard eol desktop $ 1210 ) enron it purchasing", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.069+0000", "entityId": 9740, "properties": {"text": "Subject: re : approval is overdue : access request for paul . d . thomas @ enron . com\nagree , especially if the guy doesn ' t even want it anymore !\nfor background , this directory id one i set up for dave ryan and todd decook\nto deposit there forecast data and exchange with mine\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.075+0000", "entityId": 9741, "properties": {"text": "Subject: approval is overdue : access request for paul . d . thomas @ enron . com\nmike ,\nfollowing request has been made for a number of people .\nthe access requested is : o : \\ research \\ power meteorology \\ weather temperatures -\nread / write\ndata approval grant\nthis is what i wrote , denying the request :\nthe reason for the rejection has been communicated several times .\nthe person who requested the access does not want it any more . granting both\nread / write access could threaten the integrity of the data .\nany comments ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 29 / 2001\n08 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem on 01 / 26 / 2001 07 : 16 : 10 pm\nto : \" vince . j . kaminski @ enron . com \"\ncc :\nsubject : approval is overdue : access request for paul . d . thomas @ enron . com\nthis request has been pending approval for 2 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000015384\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 25 / 01 7 : 59 : 02 am\nrequested for : paul . d . thomas @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.081+0000", "entityId": 9742, "properties": {"text": "Subject: re : calpx power prices\n? ? ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 01 / 29 / 2001 03 : 52\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : maria van houten 01 / 29 / 2001 11 : 35 am\nto : jason sokolov / hou / ect @ ect\ncc :\nsubject : re : calpx power prices\njason ,\nare you looking for calpx hour ahead umcp or calpx hour ahead zone prices ?\nwe have hour ahead zone price data from 10 / 1 / 98 - current and hour ahead umcp\nfrom 11 / 6 / 2000 onward .\nmaria v . h .\nfrom : jason sokolov 01 / 26 / 2001 09 : 17 am\nto : maria van houten / pdx / ect @ ect\ncc :\nsubject : calpx power prices\nmaria ,\ni am looking for historical hourly real - time ( spot ) power prices for calpx .\ncan you help me to locate them ?\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.085+0000", "entityId": 9743, "properties": {"text": "Subject: re : p + spread options\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 29 / 2001\n12 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : jeffrey a shankman on 01 / 29 / 2001 12 : 38 pm\nto : stinson gibner / hou / ect @ ect\ncc : john l nowlan / hou / ect @ ect , don schroeder / hou / ect @ ect\nsubject : re : p + spread options\nlet ' s get together on this in the next couple of days . thanks . jeff\nstinson gibner\n01 / 29 / 2001 12 : 10 pm\nto : jeffrey a shankman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : p + spread options\njeff ,\nwe are reviewing the p + spread option book . one item of note is that the\ncorrelations used to book the spread options have dropped significantly from\nwhat was being used a year ago ( see charts below ) . i also remember that\njohn mee was using even higher correlations when he ran this book . in fact\nhe wanted to book options with a correlation of 1 . 0 , but our model would not\nallow it , so he was using 0 . 999 .\nwe are currently calculating historical correlations for you as well . if\nyou want , vince and i can review this with you at the end of the day . just\nlet me know what time would be convenient .\n- - stinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.092+0000", "entityId": 9744, "properties": {"text": "Subject: erac koch p + spread options\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 29 / 2001\n10 : 42 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n01 / 29 / 2001 09 : 47 am\nto : bob lee / na / enron @ enron , paulo issler / hou / ect @ ect , zimin lu / hou / ect @ ect\ncc :\nsubject : erac koch p + spread options\nbooking spreadsheet in in o : \\ research \\ common \\ projects \\ exotic 2001 _ 0125 . xls\nsheet where options are booked is called \" index deals \" .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 29 / 2001\n09 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark fondren\n01 / 26 / 2001 10 : 53 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : erac koch p + spread options\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark fondren / hou / ect on 01 / 26 / 2001 10 : 53\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmark fondren\n01 / 25 / 2001 12 : 07 pm\nto : john l nowlan / hou / ect @ ect\ncc : spencer vosko / hou / ect @ ect\nsubject : erac koch p + spread options\nprice 1 = wti cushing physical cash price ( wti nymex\ncontract ) for example , the april 2001\nwti cushing price equals the aprol wti nymex\ncontract .\nprice 2 = koch oil posting for west texas / new mexico intermediate .\nkoch p + = price 1 - price 2\nprice 2 is calculated by subtracting 3 spreads from price 1\n1 . koch posting / wti nymex basis spread\n2 . 66 . 6 % ( aprilol / mayol wti nymex spread )\n3 . 33 . 3 % ( aprilol / junol wti nymex spread )\nexample using 1 / 24 / 2001 wti settles aprol 28 . 31\nmayol 27 . 72\njunol 27 . 19\napril 2001 koch posting = april 2001 wti nymex settlement -\nkoch / nymex basis spread - . 666 ( apr / may ) - . 333 ( apr / jun )\n= 28 . 31 -\n2 . 75 - . 666 ( . 59 ) - . 333 ( 1 . 12 )\n= 28 . 31 -\n2 . 75 - . 3929 - . 37296\n= 24 . 794\nkoch p + = 28 . 31 - 24 . 794\n= 3 . 516\nplease call with any questions\nmark f\next 853 - 1982", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.097+0000", "entityId": 9745, "properties": {"text": "Subject: power trading\nfyi . this could be quite important for us . through forming a tradinf co . we\ncould be brokering deals on behalf of mseb , without letting them off the hook .\nin this manner we could be doing short term deals and increasing despatch\nfrom dabhol or other mseb marginal units . any money flowing from these sales\nshould go into an escrow account that goes directly towards payment of dpc\nbills .\nin this manner we would be increasing the payment ability of mseb .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n01 / 29 / 2001 08 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nk seethayya\n01 / 29 / 2001 03 : 49 pm\nto : wade cline / enron _ development @ enron _ development , neil\ncc : jane wilson / enron _ development @ enron _ development , sandeep\nkohli / enron _ development @ enron _ development , mohan\ngurunath / enron _ development @ enron _ development , ashok\nsubject : power trading\nwade : the group of ministers on foreign investment had decided to recommend\nforeign equity participation upto 100 % for trading in power sector , subject\nto prevailing laws . however , they left the final decision to the union\ncabinet . it is understood that a note supporting the recommendation of gom is\nbeing put up for consideration of union cabinet . since power minister is\nwilling to support the proposal and industry minister is already ok with such\nproposals , i don ' t anticipate any problem at the cabinet level . let us wait\nand watch the developments .\nseethayya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.106+0000", "entityId": 9746, "properties": {"text": "Subject: re : reschedule\nclayton ,\nno problem . i asked shirley to reschedule .\nvince\nclayton vernon @ enron\n01 / 29 / 2001 12 : 38 am\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect , tom barkley / na / enron @ enron\nsubject : reschedule\nvince -\ni apologize , but something has come regarding this afternoon . my server ' s os\nis acting up , and is affecting all of my apps right now .\ncan we think about later this week ? i promise it will be worth it to you . the\neol stuff is nice .\nagain , my apologies .\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.115+0000", "entityId": 9747, "properties": {"text": "Subject: re : visit to houston\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 29 / 2001\n02 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 01 / 29 / 2001 10 : 54 : 27 am\nto : stinson . gibner @ enron . com\ncc :\nsubject : re : visit to houston\nstinson ,\njust a quick note to let you know that i am looking into it ,\ntrying to rearrange a couple of things . i ' d like giuseppe and\npossibly eric to come with me , so i need to coordinate with\nthem too . we ' ve made some nice progress that i ' d like to present\nand also integrate eric in the system .\ni am targeting a friday around the end of february or begining\nof march . i ' ll let you know soon of a few possibilities as they\nstabilize here .\nbest ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i hope things are going well and you are not staying too busy . we should\n> start planning for your next trip to houston , as i ' m sure your schedule\n> will be getting full very soon . perhaps you could give the people in\n> enron broadband an overview of the areas of interest within your research\n> group . i ' m sure we could also benefit from you views of how the current\n> technology is evolving .\n>\n> are there certain dates which would potentially work for you ? please let\n> me know by email or give me a call at 713 853 4748 .\n>\n> looking forward to talking with you .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.120+0000", "entityId": 9748, "properties": {"text": "Subject: re : all best wishes for 2001\ngeoff ,\nyou have very beautiful daughters . you must be a very proud father .\ni shall try to attend a few sessions of the cera conference . you can also\ncall me when you are in houston and we can meet for dinner and / or drinks .\nvince\n\" lubbock , geoffrey \" on 01 / 29 / 2001 11 : 49 : 52\nam\nto : \" vincent kaminski ( e - mail ) \"\ncc :\nsubject : all best wishes for 2001\nvince\nloved talking with you\ni ' ll be at the cera conference in houston feb 12 through feb 16\nif i could manage to see you then i would enjoy it vey much\ngeoff\n>\nps it took me hours to produce the card which is hot off the press .\nbest wishes for health wealth and happiness for you and your family in 2001\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\n- xmas 2000 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.124+0000", "entityId": 9749, "properties": {"text": "Subject: re :\nrafal ,\ndziekuje za odpowiedz . bede bardzo wdzieczny za ksiazke :\nwincenty kaminski\n10 snowbird\nthe woodlands , tx 77381\nphone : ( 281 ) 367 5377\ncell : ( 713 ) 898 9960\nwicek\nrafal weron c - 11 on 01 / 29 / 2001 08 : 11 : 48 am\nto : vkamins @ enron . com\ncc : aleksander weron c - 11\nsubject :\ndear vince ,\nbardzo dziekuje za podeslana literature , szczegolnie drugie wydanie\nksiazki . bylismy w londynie w czerwcu zeszlego roku , ale w ksiegarni\nznalezlismy tylko piersze wydanie . obaj z alkiem ( ojcem ) wspolpracujemy z\nenergetyka ( glownie polska ) od kilku lat . w zeszlym roku wydalismy ksiazke\n\" gielda energii : strategie zarzadzania ryzykiem \" , a obecnie pracujemy nad\njej angielskim wydaniem . na jaki adres ci ja przyslac ?\nserdeczne pozdrowienia ,\nrafal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.128+0000", "entityId": 9750, "properties": {"text": "Subject: dear vince ,\nbardzo dziekuje za podeslana literature , szczegolnie drugie wydanie\nksiazki . bylismy w londynie w czerwcu zeszlego roku , ale w ksiegarni\nznalezlismy tylko piersze wydanie . obaj z alkiem ( ojcem ) wspolpracujemy z\nenergetyka ( glownie polska ) od kilku lat . w zeszlym roku wydalismy ksiazke\n\" gielda energii : strategie zarzadzania ryzykiem \" , a obecnie pracujemy nad\njej angielskim wydaniem . na jaki adres ci ja przyslac ?\nserdeczne pozdrowienia ,\nrafal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.133+0000", "entityId": 9751, "properties": {"text": "Subject: enron interview of james valverde\nhi molly !\nhas this been scheduled yet ? the recruiter is asking for a copy of the\nitinerary for his client and directions to the enron bldg . i thought i would\nsend both at the same time .\nlet me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 30 / 2001\n08 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n01 / 29 / 2001 10 : 26 am\nto : molly magee / hou / ect @ ect\ncc :\nsubject : enron interview of james valverde\nmolly :\nvince arranged the times for this interview with a recruiting firm - it will\nbe\nthursday , february 1 from 1 : 00 pm - 5 : 00 pm .\ni am enclosing an interview request form for him and i have scheduled vince ,\nkrishna , and stinson . if these times need to be changed to accommodate\nthe others , please let me know .\nhis resume is also attached .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 01 / 29 / 2001\n09 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 26 / 2001 05 : 09 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : fwd : re : enron - resume interview of james valverde\nshirley ,\nwe want to invite him for an interview ,\nthu , 1 - 5 . interviews with kp , sg , vk , gk , br , molly , cs , dan rack .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 26 / 2001\n05 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njohan dahl on 01 / 26 / 2001 05 : 04 : 50 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : fwd : re : enron - resume interview of james valverde\nvince ,\njames valverde is confirmed for a face - to - face interview with you on thursday\nfebruary lst at 1 . 00 pm to 5 . 00 pm . ? when you have an interview itinerary ,\nplease share it with me so james know who he is interviewing with . ? please\nalso tell me where you want him to show up , what floor , suite etc . ? i am\nassuming you are in the building on 1400 smith st . , right ?\nwe have not discussed yet the details regarding what key skills and\nqualifications you are looking for in a candidate , other than that they are\nbright and talented . could you please share , via email or over the phone ,\nwhat you are looking for in candidate for your organization . ? if you want me\nto put a search together , i can only do it by knowing what you want . ? thank\nyou .\nif there is anything else i can do for you before the interview on thursday ,\nplease let me know .\nrespectfully ,\njohan\nat 04 : 39 pm 1 / 26 / 01 - 0600 , you wrote :\njohan ,\nplease , confirm the interview on thursday next week , 1 - 5 .\nvince\njohan dahl on 01 / 24 / 2001 12 : 04 : 42 pm\nto : ? ? vince . j . kaminski @ enron . com\ncc :\nsubject : ? fwd : re : enron - resume interview of james valverde\njohan c . dahl\ndirector energy staffing group\nmanagement recruiters of portland , inc .\nphone : 503 - 290 - 1153\nphone : 800 - 979 - 8701\nfax : 503 - 282 - 4380\ne - mail : jdahl @ mrportland . com\nweb : www . mrportland . com / html / energy . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.137+0000", "entityId": 9752, "properties": {"text": "Subject: rw : howard confirmation for vince\nhi vince - please examine . i think it ' s going to happen and you have\nconfirmation below - need sleep it ' s 3 : 30 pst - i ' ll need 7 hours sleep and\nthen i ' ll be up . . . add 2 more for time difference and i ' ll be available for\nyou , at your service ( your time around ( 1 : 30 afternoon ) .\ni called rachel @ enron london - she said it is set up too . i am confident .\nthank you for the opportunity .\njeff wesley 949 813 2241\nhi howard ,\n> please find following confirmation as promised .\n>\n>\n> date of interview : tuesday 30 january 2001\n>\n> time of interview : 2 . 30 pm\n>\n> interviewers : 2 . 30 pm nigel price - credittrading\n> 3 . 00 pm ben parsons - research & trading\n> controls - senior specialist\n> 3 . 30 pm vasant shanbhogue research\n> group houston\n>\n>\n> address : 40 grosvenor place\n> london\n> swlx 7 en\n>\n> switchboard : 020 7783 - 0000\n>\n> closest tube / train station : victoria\n>\n>\n> location map attached\n> ( see attached file : location map . pdf )\n>\n> manager\n> robert walters\n> manager\n> risk & quantitative analysis\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.143+0000", "entityId": 9753, "properties": {"text": "Subject: resume forwarded at request of brian mihura\nvince -\nthis is the resume i told you about\np\n- - - - - forwarded by paula corey / enron communications on 01 / 29 / 01 03 : 37 pm - - - - -\nmateog @ gofree . indigo . ie\n01 / 29 / 01 02 : 58 pm\nto : paula corey / enron communications @ enron communications\ncc :\nsubject : resume forwarded at request of brian mihura\ndear paula :\nmy name is matt gunning and i am a friend and former colleague of brian\nmihura . brian mentioned that you would be interested in seeing my resume ,\nwhich i have attached . if you have questions or need more information ,\nplease contact me . thank you for your consideration .\n- attl . htm\n- resumel . wps", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.147+0000", "entityId": 9754, "properties": {"text": "Subject: ok -\nok vince - i will stay up tonight and call vuthy in london with this news .\ni ' ll be right back to you ( probably tomarrow - or send you an email tonight ) .\nthanks vince ,\njeff\njeff ,\nmy associates are leaving for london tonight ( monday ) .\nthey can still interview howard on tuesday afternoon .\nvince\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.152+0000", "entityId": 9755, "properties": {"text": "Subject: re : howard haughton : no can do for wed / thurs .\njeff ,\nmy associates are leaving for london tonight ( monday ) .\nthey can still interview howard on tuesday afternoon .\nvince\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 01 / 29 / 2001 02 : 23 : 12 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : rachel . quirke @ enron . com , vince . j . kaminski @ enron . com\ncc :\nsubject : howard haughton : no can do for wed / thurs .\nhi rachel . please read the following email from my collegue in the uk who\nspoke directly to howard a bit ago by tele about wed / thurs interview .\ncan we do this alternative he suggested ? we will have to reschedule - maybe\nny ? or after howards trip in houston ?\nthanks ,\njeff\nhi jeff ,\ni ' ve bad news . howard is off to new york on wednesday for 10 days until the\n10 th of feb . either enron could fly him to houston after his holiday or\nmaybe vince ' s team could get out to new york . let me know .\nregards\nvuthy\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.157+0000", "entityId": 9756, "properties": {"text": "Subject: fyi : howard haughton\nthanks vince .\nmy guys in london are working on howard right now .\nkeep you informed and updated .\nthank you ,\njeff\n949 813 2241\nhi jeff ,\nre . howard haughton\nfurther to your recent communications with vince kaminski with regards to\nthe above candidate we would like to see him for an interview at our london\noffices . could you please advise me of a convenient time for howard or\ndetails on how to contact him to arrange this . he will be seeing four\npeople for approximately 45 minutes each . we would like to do this\npreferably on wednesday or thursday of this week as some of vince ' s team\nwill be in london on those days .\nplease contact me if you have any queries on 0044 20 7783 5677 or via\ne - mail .\nlook forward to hearing from you\nwith regards\nrachel quirke\nhuman resources\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.162+0000", "entityId": 9757, "properties": {"text": "Subject: re : rice students\nken\na tour would be great ( after 10 : 30 , if they can make it ) .\nplease , let shirley know about the meeting .\nvince\nkenneth parkhill @ enron\n01 / 29 / 2001 10 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : rice students\nvince ,\n19 c is available and reserved for 9 am to 10 : 30 , wednesday .\nwould you like me to try and arrange a tour for the students or should we\nwait until we know more about their interests ?\nare their some other enron folks you would like to invite for wednesday ?\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.167+0000", "entityId": 9758, "properties": {"text": "Subject: re : eol competitors\n- - - - - - - - - - - - - - - - - - - - - - forwarded by li sun / na / enron on 01 / 29 / 2001 11 : 18 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : drew ries / enron @ enronxgate on 01 / 29 / 2001 11 : 15 am\nto : li sun / na / enron @ enron\ncc :\nsubject : re : eol competitors\nli ,\nglobally there are probably over 80 \" competitors \" to eol . none of these\ncompetitors have a meaningful market share . some of the names that jump to\nmind are the following , but it should be easy to find others by surfing the\nweb . good luck .\ndrew\ndynergy direct\nhouston street\naltra\ntrue quote\nintercontinental exchange\nenymex\ncoral connect\nkoch energy\nepetroleum . com\nred meteor\ntrade spark\namerican petroleum exchange\nfuel spot", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.171+0000", "entityId": 9759, "properties": {"text": "Subject: re : tom costantino\ni ' ll set him up on an interview schedule . thanks . jeff\nvince j kaminski\n01 / 29 / 2001 04 : 01 pm\nto : jeffrey a shankman / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : tom costantino\njeff ,\nit seems that nymex will not make a decision any time soon\nor they rejected tom . i think the latter is the case .\ntom is looking for a trading or origination job with enron .\ni think that we can use his expertise here .\nvince\nfrom : jeffrey a shankman on 01 / 29 / 2001 03 : 50 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : tom costantino\ni thought he was in the running for the president position , after pat died .\nhe phoned me today - - did he indicate to you in what he is interested ?\njeff\nvince j kaminski\n01 / 29 / 2001 02 : 12 pm\nto : jeffrey a shankman / hou / ect @ ect , greg whalley / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , john j lavorato / corp / enron\nsubject : tom costantino\njeff , greg and john ,\nour old friend tom costantino is interested in coming back\nto enron . it seems that his move to nymex either will not happen\nor will not happen for some time .\nyou can contact him at home :\nphone : ( 713 ) 860 8687 ( h )\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.176+0000", "entityId": 9760, "properties": {"text": "Subject: re : \" energy derivatives \"\nfrank :\ni discussed this with vince kaminski and he said that , while we would be\nglad to assist you , the time involved in ordering and collecting the money\n( they are pretty expensive ) , distributing the books , etc . would be too time\nconsuming for us at this time .\nyou can go to www . lacimagroup . com and order the books directly . tell\nthem you are ordering the books for use at enron and they should give you\na 15 % discount .\ni am sorry that we cannot do this at this time .\nregards ,\nshirley crenshaw\nadministrative assistant\nenron research group\n713 / 853 - 5290\n\" frank ribeiro \" on 01 / 28 / 2001 09 : 50 : 44 am\nto :\ncc :\nsubject : \" energy derivatives \"\nas we had discussed in our phone conversation friday , i would ask you to\norder six copies of the newly enron - published \" energy derivatives \" for\nparadigm strategy group . we do the various derivatives training courses for\nenron , and this book will be required reading for all our instructors .\nplease advise as to the total cost of the books . if payment by check is ok ,\nplease let me know to whom the check should be made payable .\nyou can reach me by e - mail , or phone at 281 - 360 - 7822 .\nthanks for your help .\nfrank ribeiro\nparadigm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.181+0000", "entityId": 9761, "properties": {"text": "Subject: re : research sign off\ni totally agree . what you list is all we are after .\nsteven leppard\n29 / 01 / 2001 15 : 45\nto : james new / lon / ect @ ect\ncc : tani nath / lon / ect @ ect , ted murphy / lon / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : re : research sign off\njames\ni agree with what you say - my view is that research can :\n- assess a model ;\n- state what the model does ;\n- give a view of how closely the model achieves its objectives ;\n- assess what the risks of using the model are .\nit is for rac to determine whether enron is prepared to accept this risk . i\ndiscussed this issue with ted , and he seems to agree with this broad\nsplitting of responsibilities .\nsteve\njames new\n29 / 01 / 2001 13 : 59\nto : steven leppard / lon / ect @ ect\ncc : sharad agnihotri / lon / ect @ ect , tani nath / lon / ect @ ect , ted\nmurphy / lon / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : research sign off\nsteve ,\ni understand your comments but the ' sign off ' is a cross functional thing and\nresearch are effectively only being asked to sign off their part which is\nbroadly as you describe below . if you have doubts as to the interpretation of\na research sign off then it should be qualified to state what you are\nprepared to sign off on . other functions should be asked to do like wise for\ntheir area which will mean that when all areas have signed off their part\nthe picture is complete . somebody needs to coordinate this and usually in\nlondon it is the risk management guy .\ndoes this make sense ?\nsteven leppard\n24 / 01 / 2001 09 : 42\nto : sharad agnihotri / lon / ect @ ect\ncc : tani nath / lon / ect @ ect , ted murphy / lon / ect @ ect , james new / lon / ect @ ect ,\nvince j kaminski / hou / ect @ ect\nsubject : research sign off\nhi sharad\ni note from our discussion earlier this morning that you ' ve been asked to\nsign off a calculation from another group , which is something we ' re asked to\ndo from time to time .\ni take the view that we in research can assess a computation in terms of what\nit achieves with respect to its requirements , what its shortfalls are , and\ntherefore what the risks associated with using this method are . we cannot\nprovide an opinion on whether these risks are acceptable to enron , which i\nfeel falls firmly within rac territory .\nthis then raises the question of can research sign off anything for other\ngroups after all ? to \" sign off \" means to accept something , which our opinion\nin itself cannot do . it is most appropriate for us to provide a technical\nnote outlining the methodology , risks and shortcomings of a method , leaving\nthe formal \" sign off \" to those best placed to assess these risks for our\ncompany . the alternative is for multiple groups each to have their own view\non what is acceptable risk for the company .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.185+0000", "entityId": 9762, "properties": {"text": "Subject: re : java training\nstinson -\nlooks like we ' re in , to split the costs of the class with you . george will\ncontact you soon .\nclayton\n- - - - - - - - - - - - - - - - - - - - - - forwarded by clayton vernon / corp / enron on 01 / 29 / 2001\n08 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlloyd will @ ect\n01 / 29 / 2001 08 : 38 am\nto : george hopley / hou / ect @ ect , clayton vernon / corp / enron @ enron\ncc :\nsubject : re : java training\nsounds good .\ngeorge please coordinate our attendance .\nthanks .\ngeorge hopley\n01 / 27 / 2001 01 : 29 pm\nto : lloyd will / hou / ect @ ect\ncc :\nsubject : java training\nlet ' s offer this to the analysts / specialists .\ngeorge\n- - - - - - - - - - - - - - - - - - - - - - forwarded by george hopley / hou / ect on 01 / 27 / 2001 01 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nclayton vernon @ enron\n01 / 27 / 2001 09 : 06 am\nto : george hopley / hou / ect @ ect\ncc :\nsubject : java training\ngeorge -\nhere ' s the story .\nresearch forwarded to their personnel a solicitation they received for java\ntraining by an outside person , weeklong classes for true beginners and for\nthose with decent programming experience in other languages ( esp c + + ) . vince\nhad pre - agreed tlo pay for it for anyone who wanted it . but , the response\nthey got was so \" overwhelming \" they reconsidered , for financial reasons , and\ndecided it would be better to just hire a professor to teach a class for a\nweek here . the costs would be around $ 15 , 000 , and there should be room for\naround 15 people in the class . they have 6 - 8 people , and wonder if we might\nhave some people who would want to do it ( a no - brainer - java is a big - time\nresume pad these days ) and would be willing to share the costs with them .\nwhat is your opinion on this ? personally , i think it ' s a relatively\ninexpensive investment in our people , although , selfishly , it does increase\ntheir ' market value ' so to speak . ( of course , nothing keeps directors from\ngoing to the class as well : ) )\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.190+0000", "entityId": 9763, "properties": {"text": "Subject: re : durasoft - - java class\nwhat do you think about option 2 ?\n- - sg\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 01 / 30 / 2001\n12 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" siva thiagarajan \" on 01 / 30 / 2001 08 : 55 : 55 am\nto :\ncc :\nsubject : re : durasoft - - java class\nstinson ,\n?\nhere are some options considering what you have\nsaid :\n?\n1 ) ? we can do a full week of class from may 7 to 11 .\n?\n2 ) ? the second option is to split the course over two weeks .\nif you cannot possibly accomodate a full week of training\nthen we can try this . ? we have done this before and it has\nworked fairly well . ? it would be like :\n?\nweek 1 ( 20 hours ) : ? feb 20 - 23 , tue - fri , 12 : 00 to 5 : 00\nweek 2 ( 20 hours ) : ? april 9 - 12 , mon - thu , 12 : 00 to 5 : 00\n?\nthese are the only two weeks that are available for venkat\nto teach before may 7 th date . ?\n?\nplease let me know if these would work . ? i look forward to\nhearing from you . ?\n?\nregards ,\n?\n- siva\n- - - - - original message - - - - -\nfrom : stinson . gibner @ enron . com\nto : siva @ durasoftcorp . com\ncc : vince . j . kaminski @ enron . com ;\nclayton . vernon @ enron . com\ndate : monday , january 29 , 2001 4 : 01 pm\nsubject : re : durasoft - - java class\nsiva , ? ? ? ? i will have to check and see if we can accomodate a 5 day 8 to\nclass . ? ? ? also , president ' s day is a holiday for us , so we may have to look\nat a later date .\n- - stinson\n\" siva thiagarajan \" on 01 / 29 / 2001 08 : 51 : 02 am\nto : ? ?\ncc :\nsubject : ? re : durasoft - - java class\nstinson ,\ni have attached a file along with this email\nthat lists the software needed for our\njava class .\nwe would like to do the class from monday thru\nfriday , 8 am to 5 pm . ? that way we can complete\nthe class within a ? week . ? we are unable to offer\nclasses in the evenings or for few hours a week .\nwe usually teach week long courses for our\nother clients and because of that ? we won ' t\nbe available .\ncurrently , we can do the class from feb . 19 th\nthrough feb . 23 ( that is if you are working on\nfeb 19 th , president ' s day ) .\ni will call ? you sometime this afternoon to talk\nfurther . ? please feel free to reach me if you have\nany further questions in the mean time .\nregards ,\n- siva\n- - - - - original message - - - - -\nfrom : stinson . gibner @ enron . com\nto : siva @ durasoftcorp . com\ndate : friday , january 26 , 2001 5 : 52 pm\nsubject : re : durasoft - - java class\n>\n> siva ,\n>\n> a few additional questions . ? ? can you tell me what software would be\n> required for the students ? ? ? also , ? when would venkat be available to\nstart\n> the class and what type of schedule would you recommend ? ? ? would having\ntwo\n> hour classes twice a week from , say , 4 - 6 pm work ? ? we have a high level of\n> interest and just need to iron out the details . ? ? feel free to call me\n> ( late afternoon on monday might be best ) at 713 853 4748 or email .\n>\n> - - stinson\n>\n>\n>\n( see attached file : javasoftwareneeds . htm )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.194+0000", "entityId": 9764, "properties": {"text": "Subject: garp presentation\nvince ,\nwould i be able to get a copy of your presentation last night at garp ? i\nhave a coworker who was unable to attend .\nthanks ,\nallen bryson\nconoco inc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.200+0000", "entityId": 9765, "properties": {"text": "Subject: pd : praca dyplomowa v edycja mba\n?\n- - - - - original message - - - - -\nfrom : jerzy seremak\nto : vkaminski @ aol . com\nsent : tuesday , november 28 , 2000 7 : 49 pm\nsubject : praca dyplpmowa v edycja mba\ndzie \u0006 ? dobry panie doktorze !\n?\nprzesy \u0006 am panu ca \u0006 \u0006 ? prac \u0006 c dyplomow \u0006 ? z finans ? w .\ncz \u0006 c \u0006 ~ \u0006 + pracy zosta \u0006 a panu przes \u0006 ana w pa \u0006\ndzierniku .\nwykresy b \u0006 cd \u0006 ? kolorowe i uj \u0006 cte w pracy .\nobrona pracy jest zaplanowana w luty br .\nje \u0006 _ eli jest to mo \u0006 _ liwe to prosz \u0006 c o recenzj \u0006 c\n?\n?\nz powa \u0006 _ aniem\n?\njerzy seremak\nv edycja mba\nwy \u0006 _ sza szko \u0006 a handlu i finans ? w mi \u0006 cdzynarodowych ? w warszawie ? a _ j _ seremak @ pro . onet . pl ? - i - iv rozdzia \u0006 pracy - mba . doc\n- iv - rozdzia \u0006 pracy - schemat - mba . doc ? - rozdzia \u0006 5 . 1 . tabele . doc\n- rozdzia \u0006 v 5 . 1 . opis . doc ? - rozdzia \u0006 v 5 . 2 . , podsumowanie , biografia i spisy . doc\n- strona tytuowa i spis tre \u0006 ~ ci . doc\n- wstep . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.205+0000", "entityId": 9766, "properties": {"text": "Subject: re :\nwicek ,\nwyslalem ci nasza ksiazke razem z kilkoma pracami\nmatematyczno / finansowo / energetycznymi i dwa egzemplarze rynku terminowego ,\nw ktorym od 2000 roku jest dzial poswiecony rynkowi energii ( jego\nredaktorem jest alek ) . mam nadzieje , ze to cie zainteresuje .\nksiazka jest zainteresowany cambridge university press i w tej chwili jest\nrecenzowany draft angielskiej wersji ( mozesz do sciagnac ze strony :\nhttp : / / www . im . pwr . wroc . pl / ~ rweron / gene . html ) . angielski jest jeszcze\nslaby ( tlumaczyla moja studentka ) , ale da sie czytac . w ostatecznej wersji\nplanujemy pare zmian . jakbys mial czas to przegladnij ksiazke , wszelkie\nuwagi bardzo mile widziane .\nrafal", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.210+0000", "entityId": 9767, "properties": {"text": "Subject: i ' ve done it . . . .\nvince ,\nthanks for this . the original sender of this resume , brian , works for me !\nsay , do you have any hot leads on any good hands - on electrical engineers\ninterested in designing sensors ?\ncheers , scott\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott tholan / corp / enron on 01 / 30 / 2001\n06 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n01 / 30 / 2001 05 : 45 pm\nto : scott tholan / corp / enron @ enron\ncc :\nsubject : i ' ve done it . . . .\nscott ,\nplease , take a look at this resume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 30 / 2001\n05 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : paula corey @ enron communications on 01 / 30 / 2001 01 : 03 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : i ' ve done it . . . .\nvince -\nhere you go . . . this has been reformatted\n- - - - - forwarded by paula corey / enron communications on 01 / 30 / 01 01 : 03 pm - - - - -\nbrian mihura @ enron\n01 / 30 / 01 11 : 52 am\nto : paula corey / enron communications @ enron communications\ncc :\nsubject : i ' ve done it . . . .\nhere is matt ' s resume as a msword doc .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.219+0000", "entityId": 9768, "properties": {"text": "Subject: interview schedule\ngood morning :\ni am attaching dr . valverde ' s interview schedule for thursday , february 1 .\nwhen he arrives at the enron bldg . ( 1400 smith street ) , go to the\nsecurity desk and ask for me . they will call and i will meet dr . valverde\nat the elevator on our floor .\nwe look forward to his visit on thursday .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.226+0000", "entityId": 9769, "properties": {"text": "Subject: james valverde - interview schedule\nattached you will find the interview packet for the above - referenced person .\nthe interview will happen thursday , february 1 , 2001 . please print all\nthree documents for your hard copies . if you have any questions , or\nconflicts of schedule , please do not hesitate to contact me .\nsasha divelbiss\n58714", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.230+0000", "entityId": 9770, "properties": {"text": "Subject: re : wednesday\nronnie ,\nregarding the parking situation downtown\nthe closest parking garage with visitor parking is the one at allens center .\nyour agenda , to define\n- what the scope of the project is\n- what do you expect of the project - - in other words what are you trying to\nfind out from the study , this will help define the scope\n- discuss a timeline\n- tools that we can use at enron\n- are there any projects at enron ( past or present ) that we can draw on or\nbuild on\nsounds good . do you all have the original scope vince wrote up ? although it\nis broad , its a good beginning for your scope . once you flesh - out the scope ,\nwe ' ll see if any existing reports can be found that may be helpful .\nregarding industry research\ncheck out red herring and other online resources .\nsee you later\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.235+0000", "entityId": 9771, "properties": {"text": "Subject: re : wharton tiger team # 3\nmelinda ,\nwould you please coordinate john henderson into the thursday videoconference ?\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 30 / 2001\n06 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmohn henderson @ newpower\n01 / 30 / 2001 04 : 13 pm\nsent by : melissa corley @ newpower\nto : christie patrick / hou / ect @ ect @ ees\ncc : jhenders @ newpower @ ees , vince j kaminski / hou / ect @ ect , melinda\nmccarty / corp / enron @ enron , degiacic @ wharton . upenn . edu\nsubject : re : wharton tiger team # 3\njohn would prefer to join the thursday call via teleconference . if you could\nprovide the dial in number he will call in .\nthanks ,\nmelissa corley\njohn henderson\nchristie patrick @ ect\n01 / 30 / 2001 03 : 50 pm\nto : jhenders @ newpower @ ees , vince j kaminski / hou / ect @ ect\ncc : melinda mccarty / corp / enron @ enron , degiacic @ wharton . upenn . edu\nsubject : wharton tiger team # 3\nhi john and vince !\njohn , hopefully you received my voice mail regarding the matter set forth\nbelow .\ni ' m in ny now and won ' t return until thursday morning . perhaps it would be\neasiest for john to come to the video conference on thursday ( if he ' s in\nhouston ) or via telephone if he ' s travelling ? ?\nwhatever you both think is best . . please let me know !\nmy assistant , melinda mccarty , is setting up the call location at the enron\nbuilding , as well as the dial - in number with donna piazze at wharton .\nmelinda , please include john in the distribution of the video conference\nlocation .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 30 / 2001\n03 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" degiacinto , clayton \" on 01 / 30 / 2001 02 : 00 : 07 pm\nto : \" ' christie . patrick @ enron . com ' \"\ncc : \" feerick , dennis \" , \" lessar , stephen \"\n, \" vittal , maheshram \" ,\n\" bassal , omar \" , \" cummins , marc \"\nsubject : wharton tiger team # 3\nchristie ,\nas we talked last thursday via video teleconference , we are planning to\nnarrow our scope to focus on a marketing / promotion plan for newpower\nincluding value - added products and services for the future . before we talk\nagain on thursday , we would like to speak with john henderson again to see if\nhe recommends any specific items he would like us to address .\nwe are having trouble contacting him and wonder if you could facilitate a\nphone meeting between us , or if it would be best to include him in our next\nvideo teleconference . we are available the next two days at lpm and 4 pm\nhouston time .\nwe understand that john is a very busy person , and we appreciate any help you\ncan give in getting us together to ensure our work is commensurate with his\nexpectations .\nthanks ,\nenron team 3 ( retail )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.239+0000", "entityId": 9772, "properties": {"text": "Subject: wharton interviews\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kristin gandy / na / enron on 01 / 30 / 2001\n03 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kristin gandy 01 / 29 / 2001 05 : 32 pm\nto : jeremy blachman / hou / ees @ ees\ncc : bryan kite / enron communications @ enron communications , michele nezi\nmarvin / enron communications @ enron communications\nsubject : wharton interviews\nthis is a request for your interview participation . the associate program\nwill be on the wharton , mba campus interviewing summer associate interns next\nweek . due to business reasons , previously scheduled interviewers from the\nwharton team have had to cancel their participation .\ncurrently , i need two interviewers for monday , february 5 th and two\ninterviewers for tuesday , february 6 th . please let me know of your\navailability . campus interviews are scheduled as follows :\nplace : rittenhouse hotel\n210 west rittenhouse square\nphiladelphia , pa 19103\ndate : monday , february 5 th tuesday , february 6 th\nday one interviews day two interviews\ntime : 8 : 30 a . m . to 5 : 00 p . m . 8 : 30 a . m . to 4 : 00 p . m .\ninterviewers : bryan kite - confirmed\nmichele nezi marvin - confirmed\nin the event that you have scheduling conflicts and cannot participate , any\nreferrals at the director or vp level would be greatly appreciated .\nas always , thank you for your time and please contact me @ ext . 5 - 3214 if you\nhave any questions .\nkristin gandy\nassociate recruiting", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.245+0000", "entityId": 9773, "properties": {"text": "Subject: organizational announcement\nenron global markets ended the year with a great deal of momentum and with\nvery high expectations for 2001 . in order to better focus and expand the\nvarious businesses within global markets , we are pleased to announce the\nfollowing organizational changes .\ncrude and products\nthis group is being re - organized into product lines in order to better focus\nand maximize coverage and increase our market - making abilities . the\nfollowing individuals leading these groups report directly to john nowlan .\nglobal crude oil\ndon schroeder and bill white will manage our global crude oil books . don \u0001 , s\nemphasis will be on the development and expansion of our physical crude\npositions both domestically and abroad . bill will manage the various\nfinancial crude positions globally and will focus on developing these books .\ndistillate\nchris mahoney will have responsibility of all distillate positions . chris\nwill focus on developing our global distillate strategy , building the\nbusiness both physically and financially .\nglobal fuel oil\nniamh clarke will expand her role managing our global fuel oil and resid\npositions . emphasis will be placed on re - establishing enron in the financial\nfuel market in the us and developing a physical fuel strategy .\nglobal gasoline and components\njim goughary will assume responsibility for our global gasoline and\ncomponents business . following up on our expansion into the european market\nin 2000 , we look forward to jim expanding our presence in the us as well as\nasian markets .\nglobal lpg\nerik hansen and adam gross will be responsible for the development and\nexecution of our global lpg trading and strategy . under their guidance we\nlook to expand our presence into the asian pacific markets , as well as\ncontinuing to grow our us and european operations .\npetrochemical and plastics\nstuart bland and douglas friedman will be responsible for the continued\ndevelopment and growth of our petrochemical and plastics business . they will\nwork to further expand both our physical and financial presence in these\nmarkets .\nfuel management\ndoug leach will continue in his role developing our fuel management business\nas well as other long - term structural transactions .\nglobal origination\nrandy maffett has joined the group to lead , develop and grow all global\norigination activities for the group . randy \u0001 , s most recent assignment was in\nrestructuring several equity investments for ena .\nenron freight\nthis new group under the leadership of dan reck is developing a business in\nthe inter - modal transportation area in the united states . shawn cumberland\nhas joined this group to lead and expand the origination opportunities in\nthis business . shawn \u0001 , s most recent assignment was as coo of the calme region .\nglobal risk management\njere overdyke has elected to leave enron after almost 10 years of service .\nper sekse will take over the leadership of this very exciting and growing\nbusiness . per is located in enron \u0001 , s new york office but will be spending a\nsignificant amount of his time in houston .\nwe look forward to this year and feel the above changes will provide the\nfocus and momentum we need to deliver a record performance in 2001 .\nplease congratulate everyone on their new assignments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.250+0000", "entityId": 9774, "properties": {"text": "Subject: eim organization change\nas part of enron industrial market ' s ( eim ) move into the pulp , paper and\nsteel markets , our european effort is well underway . our markets are global\nin nature and we believe we need a strong presence in europe to penetrate\nthat market effectively . accordingly , we are pleased to announce that bruce\ngarner has been appointed president and chief executive officer of enron\nindustrial markets - europe . in this role , bruce will be responsible for all\nactivities for eim in the european market .\nplease join us in congratulating bruce in his new position .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.255+0000", "entityId": 9775, "properties": {"text": "Subject: re : book order\njulie ,\nthere are many employees in london who would be interested .\nyou can send an inquiry to steve leppard .\ni had a presentation last night\nto garp in houston and did a commercial for the book .\nyou should put me on commission .\nvince\n\" julie \" on 01 / 31 / 2001 06 : 31 : 39 am\nplease respond to \" julie \"\nto :\ncc :\nsubject : re : book order\nvince ,\n?\ni wasn ' t sure if i responded to your email , so apologise either for my\ndelayed response or repeating myself .\n?\nthanks for the 2 nd order ! ? i believe they have already been dispatched . ?\nyes , i believe we received payment ; thank you very much for following up\nwith paul . ? glad the book was a hit !\n?\non another subject , are there any enron ? employees in europe who may be\ninterested in attending either the energy or the weather course ? ? or , are\nthe quants and risk management mostly handled out of houston ?\n?\nthanks again , and i ' ll forward an invoice on to shirley .\n?\njulie\n?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : friday , january 26 , 2001 11 : 29 pm\nsubject : book order\njulie ,\nwe received the shipment of 50 books . thanks .\nthe book was an instant hit . we need 50 more books .\nvince\np . s . i understand paul sent you the check for the remaining 50 %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.260+0000", "entityId": 9776, "properties": {"text": "Subject: re : fea announces the release of @ energy 2 . 0\nvince and stinson ,\ni have successfully downloaded the @ energy 2 . 0 . i am working with it\nto update the license before we can use the software .\nzimin\nvince j kaminski\n01 / 31 / 2001 11 : 20 am\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : fea announces the release of @ energy 2 . 0\nzimin ,\nplease , take a look at it .\ni think we should download the update .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2001\n11 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" michelle mendoza \" on 01 / 26 / 2001 02 : 33 : 14 pm\nto :\ncc :\nsubject : fea announces the release of @ energy 2 . 0\njanuary 26 , 2001\nvince kaminski\nenron north america corp .\n1400 smith street\n30 th floor , rm . 3036 b\nhouston , tx 77251 - 1188\n1 713 - 853 - 3848\ndear vince kaminski ,\nthis is to inform you of the release of @ energy 2 . 0 . ftp download\ninstructions are available immediately . the download instructions are\nincluded at the end of this email . your cd ' s and manuals will be shipped to\nyou within 2 weeks . please see below for more information regarding this new\nrelease .\nplease confirm that you are the correct recipient for this shipment and your\naddress above is correct by clicking reply and send . if any changes need to\nbe made , please make the changes above and reply .\n* * warning : please note that if you did not received a license key for\n@ energy after june 2000 , you will need to contact support @ fea . com or call\n510 . 548 . 6200 to obtain a new license key to enable the new version . * *\n* * swing users : @ energy / swing now replaces the \" swing \" product . see the\n@ energy user manual for a discussion of the changes . contact fea for the\nnecessary license keys . you will be able to run both the new and old swing\nsimultaneously .\nheres an overview of the new and changed features since version 1 . 6 :\n@ energy ( forward curve )\njump parameters are now calibrated for use in other @ energy functions .\ninputs and outputs to powercalib and comcalib have changed . see the\ncorresponding function syntax in the user guide for additional information .\n35 - 40 % speed improvement . the module is now out of beta .\n@ energy ( basics )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse indexswap , exoticswap , or optindexswap with floating price linked to a\nseries of futures dates , such futures dates need not be close to dates\nspecified in the forward curve input . a new utility function , pathutil ,\nallows you to simulate and visualize price paths consistent with the models\nsupported by @ energy . 25 - 30 % speed improvement .\n@ energy ( advanced )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse optdiffswap or diffswap with floating price linked to a series of\nfutures dates , such futures dates need not be close to dates specified in\nthe forward curve input . calspreadopt now allows for the specification of\ntwo different mean reversion rates . 30 - 35 % speed improvement .\n@ energy ( swing )\nswingopt and stripswingopt now allow for valuation of swing straddle\ncontracts with overall load constraints . 65 - 70 % speed improvement . the\nmodule is now out of beta .\n@ energy ( weather )\n30 - 35 % speed improvement .\nif you have any questions please feel free to contact us . we appreciate this\nopportunity to be of continuing service to enron north america corp . .\nregards ,\nmichelle mendoza\nsupport @ fea . com\n+ 1 - 510 - 548 - 6200\nfinancial engineering associates , inc . ( fea )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nto download @ energy 2 . 0 via ftp , follow the following instructions :\nnote : using explorer leads to unpredictable results , so we suggest using\nnetscape or a dos shell .\nusing netscape :\nin the location box type : ftp : / / energy @ ftp . fea . com\npassword : 2 rbzxgv 5\nenergy - 2 . 0 - win 32 . exe is for windows 95 / 98 / 2000 / nt . download and run on\na local drive .\nusing a dos shell :\nat a dos prompt type : ftp ftp . fea . com\nuser : energy\npassword : 2 rbzxgv 5\ntype \" binary \" and hit ' return ' .\ntype \" ls \" for a list of available files .\ntype \" get \" energy - 2 . 0 - win 32 . exe and and wait for the ftp > prompt .\ntype \" quit \" .\nthe file will be downloaded into the directory at which you entered the ftp\nsite .\ndouble click on the exe and follow the instructions on the screen .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.265+0000", "entityId": 9777, "properties": {"text": "Subject: fea announces the release of @ energy 2 . 0\nzimin ,\nplease , take a look at it .\ni think we should download the update .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2001\n11 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" michelle mendoza \" on 01 / 26 / 2001 02 : 33 : 14 pm\nto :\ncc :\nsubject : fea announces the release of @ energy 2 . 0\njanuary 26 , 2001\nvince kaminski\nenron north america corp .\n1400 smith street\n30 th floor , rm . 3036 b\nhouston , tx 77251 - 1188\n1 713 - 853 - 3848\ndear vince kaminski ,\nthis is to inform you of the release of @ energy 2 . 0 . ftp download\ninstructions are available immediately . the download instructions are\nincluded at the end of this email . your cd ' s and manuals will be shipped to\nyou within 2 weeks . please see below for more information regarding this new\nrelease .\nplease confirm that you are the correct recipient for this shipment and your\naddress above is correct by clicking reply and send . if any changes need to\nbe made , please make the changes above and reply .\n* * warning : please note that if you did not received a license key for\n@ energy after june 2000 , you will need to contact support @ fea . com or call\n510 . 548 . 6200 to obtain a new license key to enable the new version . * *\n* * swing users : @ energy / swing now replaces the \" swing \" product . see the\n@ energy user manual for a discussion of the changes . contact fea for the\nnecessary license keys . you will be able to run both the new and old swing\nsimultaneously .\nheres an overview of the new and changed features since version 1 . 6 :\n@ energy ( forward curve )\njump parameters are now calibrated for use in other @ energy functions .\ninputs and outputs to powercalib and comcalib have changed . see the\ncorresponding function syntax in the user guide for additional information .\n35 - 40 % speed improvement . the module is now out of beta .\n@ energy ( basics )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse indexswap , exoticswap , or optindexswap with floating price linked to a\nseries of futures dates , such futures dates need not be close to dates\nspecified in the forward curve input . a new utility function , pathutil ,\nallows you to simulate and visualize price paths consistent with the models\nsupported by @ energy . 25 - 30 % speed improvement .\n@ energy ( advanced )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse optdiffswap or diffswap with floating price linked to a series of\nfutures dates , such futures dates need not be close to dates specified in\nthe forward curve input . calspreadopt now allows for the specification of\ntwo different mean reversion rates . 30 - 35 % speed improvement .\n@ energy ( swing )\nswingopt and stripswingopt now allow for valuation of swing straddle\ncontracts with overall load constraints . 65 - 70 % speed improvement . the\nmodule is now out of beta .\n@ energy ( weather )\n30 - 35 % speed improvement .\nif you have any questions please feel free to contact us . we appreciate this\nopportunity to be of continuing service to enron north america corp . .\nregards ,\nmichelle mendoza\nsupport @ fea . com\n+ 1 - 510 - 548 - 6200\nfinancial engineering associates , inc . ( fea )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nto download @ energy 2 . 0 via ftp , follow the following instructions :\nnote : using explorer leads to unpredictable results , so we suggest using\nnetscape or a dos shell .\nusing netscape :\nin the location box type : ftp : / / energy @ ftp . fea . com\npassword : 2 rbzxgv 5\nenergy - 2 . 0 - win 32 . exe is for windows 95 / 98 / 2000 / nt . download and run on\na local drive .\nusing a dos shell :\nat a dos prompt type : ftp ftp . fea . com\nuser : energy\npassword : 2 rbzxgv 5\ntype \" binary \" and hit ' return ' .\ntype \" ls \" for a list of available files .\ntype \" get \" energy - 2 . 0 - win 32 . exe and and wait for the ftp > prompt .\ntype \" quit \" .\nthe file will be downloaded into the directory at which you entered the ftp\nsite .\ndouble click on the exe and follow the instructions on the screen .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.270+0000", "entityId": 9778, "properties": {"text": "Subject: re : livelink\nmoyez ,\nwe are very anxious to get set up and start using livelink for tracking and\ndocumenting our projects , so thanks for the reminder . i have put together\nan initial list of attributes for our research projects . the list in in the\nattached spreadsheet . it would be great if you can set up these attributes\nfor us in the test environment . this would allow us to make any obvious\nchanges before moving to production . let me know what your schedule would\nbe in rolling this out .\nmy brief comments in the spreadsheet may not be clear , so feel free to give\nme a call at x 34748 to clarify anything .\nagain , thanks for your help .\nstinson\nenron technology\nfrom : moyez lallani @ enron 01 / 31 / 2001 07 : 15 am\nto : vasant shanbhogue / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc : n jessie wang / enron _ development @ enron _ development\nsubject : livelink\nvasant / stinson\njust following up to check on your progress / evaluation of livelink as your\ndocument repositiry . please let me know if i can be of further assistance .\nmoyez lallani\nx 5 - 3683", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.275+0000", "entityId": 9779, "properties": {"text": "Subject: re : approval is overdue : access request for paul . d . thomas @ enron . com\nthe system will not allow me to view this request , saying that it has been\nassigned to you . i have left a message with the admin who originated these\nrequests . if i don ' t hear back from her today , i think we should just deny\nall of them . i earlier sent emails to the individuals named asking what\ndata they needed to access and none of them responded .\n- - stinson\nvince j kaminski\n01 / 31 / 2001 07 : 45 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : approval is overdue : access request for paul . d . thomas @ enron . com\nstinson ,\nany resolution on this one ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2001\n07 : 48 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\narsystem on 01 / 30 / 2001 07 : 17 : 35 pm\nto : \" vince . j . kaminski @ enron . com \"\ncc :\nsubject : approval is overdue : access request for paul . d . thomas @ enron . com\nthis request has been pending approval for 2 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000015793\napprover : stinson . gibner @ enron . com\nrequest create date : 1 / 29 / 01 9 : 48 : 41 am\nrequested for : paul . d . thomas @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.281+0000", "entityId": 9780, "properties": {"text": "Subject: re : p + spread options\njeff ,\na short follow up on the p + options .\nattached is a chart showing historical correlations for calendar spreads\nbetween futures contracts . it shows correlation over four different time\nhorizons up to the roll of the nearest contract in each pair . as you can\nsee the level is usually higher than 0 . 98 and often near 0 . 99 . if our\ncurrent book of \" index p + \" options were re - marked at a 98 % correlation , it\nwould result in a reduction in m - t - m value of about $ 78 million according to\nmy estimate .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.285+0000", "entityId": 9781, "properties": {"text": "Subject: re : programming for rdi model\nmichelle ,\ni ' ve just met with cecil and christin . we have divided the code into 3 parts ,\nand cecil ' s\nlooking at the first part . cecil , helen and i will meet again tomorrow\nmorning to go through\nthe logic of the other two parts . since cecil is devoted completely to this\nproject , once he\nstarts coding , it should not take too long .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.290+0000", "entityId": 9782, "properties": {"text": "Subject: re : programming for rdi model\nmichelle ,\nthe project is progressing . helen has done a great job , finding various flaws\nin the initial design ( ken ' s design ) of the access table , and has been going\nback\nand forth with ken to modify the table . since helen can ' t devote full time to\nthis project ,\nchris has hired a contractor , cecil stradford , to do the coding . i have\nspoken with\ncecil just now and he says no coding has been done yet . i am trying to\narrange\na meeting today with cecil , helen , christin ( the one who ' s overseeing coding\nprocess in cecil ' s company ) and myself . will report back to you on what\nis discussed in the meeting .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.295+0000", "entityId": 9783, "properties": {"text": "Subject: fw : california electricity crisis : what to do\nfor your reading enjoyment .\nwe should shoot for breakfast on thursday morning feb . 8 th .\nfyi . the following link will take you to a joint statement about what to\ndo in the california electricity crisis .\nwilliam w . hogan\njohn f . kennedy school of government\nharvard university\n79 john f . kennedy street\ncambridge , ma 02138\n617 - 495 - 1317 ( o )\n617 - 495 - 1635 ( f )\nemail : william _ hogan @ harvard . edu\nweb page : www . whogan . com\nor\nhttp : / / ksgwww . harvard . edu / people / whogan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.299+0000", "entityId": 9784, "properties": {"text": "Subject: reactions log - in password\nhttp : / / www . reactionsnet . com\ndear reactions subscriber ,\nyou are entitled to free access to the reactions website .\nhere is your username and password ( case sensitive ) to use this service . you\ncan use them to access the latest issue of reactions on the web whenever you\nwish . you can also search the extensive archive of back issues and contact\nus via email .\nusername = kaminski\npassword = 105006\nweb address = http : / / www . reactionsnet . com\nplease keep them in a safe place as you will need them every time you log on .\nif you have any problems in logging on or using this site please feel free to\ncontact our dedicated help desk - telephone number + 44 ( 0 ) 20 7779 8006 or\nemail web - help @ eurmoneyplc . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.305+0000", "entityId": 9785, "properties": {"text": "Subject: the february issue of reactions is now live online\ndear colleague ,\nthe latest edition of the financial magazine for the global insurance market\nis now live at ;\nhttp : / / www . reactionsnet . com\nour monthly analysis of all the financial issues to affect the insurance\nindustry could be just what you were looking for . ? with unique data and\nsuperb supplements such as the a - z of reinsurers , asia cover magazine and s simply click on the link\nto enter the site , http : / / www . reactionsnet . com\nyou can contact us for help at mailto : web - help @ euromoneyplc . com or + 44 ( 0 ) 20\n7779 8006 . ?\nfebruary 2001 ' s cover story ? ?\n?\ninsurance tax battle : the war of the loophole\nalthough a handful of us insurers failed last year in their attempt to make\nrivals owned by offshore parents pay more tax , they have vowed to fight on .\nthey are confident of victory . simon challis looks at the loophole that is\ntying politicians and businessmen in knots .\nfebruary 2001 ' s this issue features\nace ' s ina gamble : duperreault ' s risky bet\nace took a very big risk when it acquired the property / casualty operations of\ncigna back in july 1999 . so far , the gamble appears to have paid off , but can\nace keep it up ?\ncaptives : havens from a hard market\nbermudian performance survey : bermuda marches again\noecd initiative : fighting spirit\nprofile : stockton re - widening the net\nplus all this month ' s biggest stories\n? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfor your conference diary\n+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\nnew world old world\nrisks have changed - 15 - 16 march , 2001 , berkeley court hotel , dublin , ireland\nthe @ revolution is driving changes in the business practice of buyers ,\nservice providers and providers of risk finance . ? what are the key\npractitioners doing and what are the implications ? ? dublin 2001 will explore\nthe emerging new dimensions of risk financing , the threats and opportunities\nand present practical strategies for addressing these issues .\nfor a programme and registration form contact hannah bassally on : ? + 44 20\n8895 3258 or e - mail : bassalh @ towers . com .\n+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +\ndon ' t miss iasa 2001 ! ? iasa is recognized as one of the premier providers of\ninsurance industry education . ? and , iasa ' s annual educational conference and\nbusiness show is one of the most important industry conferences of the year .\nduring june 3 - 6 , 2001 , choose from over 100 educational sessions , meet more\nthan 200 exhibiting companies , and network with 4 , 000 of your industry\ncolleagues . earn cpe credits , learn about new technologies and hear from\nindustry experts . register today at www . iasa . org ! ? or , for more information ,\ncall ( 919 ) 489 - 0991 . we hope to see \" y ' all \" in san antonio , texas during iasa\n2001 !\n+ + + + + + + + + + + + + + + + + + + + +\nweather derivatives and risk management\napril 2 - 4 , 2001 , london crowne plaza , st james\nthis two - day weather risk management conference and half - day workshop on\nvaluation of weather derivatives organised by euromoney energy events , in\nassociation with weather risk advisory , will bring together the most\nexperienced decision - makers in the weather risk market , and will give\ndelegates a thorough education on the use of weather products .\nto find out more ;\ne mail : mailto : energyevents @ euromoneyplc . com ? online :\nwww . coaltransconferences\n+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +\n* plus ! * ? industry publications - read the executive summaries online !\nreinsurance 4 th edition - the definitive industry - standard textbook\n@ risk - internet & e - commerce insurance and reinsurance legal issues\ninsurance risk securitisation - a guide for issuers and investors\nto advertise or link your company website to this industry circular please\ncontact nick lipinski\ntel : + 44 ( 0 ) 20 7779 8199 or e - mail mailto : nlipinski @ euromoneyplc . com\nif you have any problems logging onto or using ? www . reactionsnet . com please\ncall our dedicated help desk\n+ 44 ( 0 ) 20 7779 8006 or email mailto : web - help @ euromoneyplc . com\nwe send this email because we believe you will find our magazine of value ,\nhowever if you do not wish to continue receiving our monthly updates please\nreply to this email with unsubscribe in the title bar .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.310+0000", "entityId": 9786, "properties": {"text": "Subject: california update 1 / 31 / 01\nplease do not hesitate to contact robert johnston ( x 39934 ) or kristin walsh\n( x 39510 ) with additional questions .\nexecutive summary\nan announcement could be made as early as today regarding the first wave of\nlong - term contracts ( price and term ) .\nthe threat of bankruptcy is significantly diminishing as davis hatches a plan\nto 1 ) pass on \" court ordered rate increases \" and 2 ) issue revenue bonds .\naudit results are in and questions loom about the amount of funds transferred\nto parent companies . davis is expected to use the threat of \" endless\nappeals \" in courts and a possible ballot initiative in november to keep the\npressure on the parent companies to pay a share of the utility debt , as well\nas to limit the scope of the rate hikes .\ndavis hopes that a court ruling in favor of the utilities would provide him\nwith the political cover he needs to pass on rate hikes to california\nconsumers and avoid utility bankruptcy .\ndavis walking a fine line with consumer advocacy groups . if there is a\nballot initiative in november to challenge the expected court - ordered rate\nhikes , it could be disastrous for investor confidence in the state .\nlegislation and bail out\nbill ablx was heard for several hours in the senate appropriations\nyesterday . issues still remain regarding the tiered rate structure ,\nspecifically for communities that have harsh climates . however , the bill has\nreceived support from almost everyone including consumer groups . the bill\nis expected to pass sometime today . tim gage , ca director of finance said\ndavis supports all the provisions in ablx and expected to sign .\nbill abl 8 x was not heard in the assembly yesterday but is expected to be hear\ntoday . in committee hearings monday , the dwr testified it is spent all of\nthe $ 400 m and were spending $ 45 m / day in the spot market to buy power .\naccording to sources with direct access to governor davis , the on - going court\nbattle , as discussed below , is viewed as an excellent opportunity for a\nsettlement . davis recognizes that 1 ) the expected court ruling in the cpuc\ncase will likely authorize the utilities to increase rates charged to\ncalifornia rate payers ; 2 ) despite that ruling , the state government has the\nability to delay the eventual reward of that order long enough to cripple the\ntwo utilities unless they come to terms . thus , davis believes that\ncalifornia consumers cannot avoid getting hit with higher electricity\ncharges , but he plans to use the threat of an appeal ( and a possible ballot\ninitiative ) to limit the amount of the rate hikes .\na plan to exempt the lowest income , smallest consumers from any rate increase\nand to concentrate rate increases among consumers using 130 % of a baseline\nusage rate was gaining serious momentum last night in sacramento . that would\nstill hit about one half of all consumers ( since the \" baseline \" is set at 60 %\nof average consumption ) , but it is \" progressive \" in a politically important\nsense .\nmaking this work would require solving a minor crisis that erupted last night\nwhen pg & e admitted they had stopped reading electricity meters for many\ncustomers and were estimating their bills based on previous usage rates .\nthe company ' s defense ( they had laid off meter readers to conserve cash ) was\nmet with widespread derision as consumer advocates pointed out the estimation\npolicy conveniently allowed the company to charge more despite serious\nefforts by californians to use less electricity . \" every time you think\nthere ' s a moment when these utilities will not embarrass themselves ,\nsomething like this happens , \" one legislator moaned .\nlong - term contracts\na second key to keeping the eventual rate increases down lies in the\nnegotiations now almost complete for the first wave of long - term power buying\ncontracts davis initiated earlier this month . the first wave of those\ncontracts will be announced perhaps as early as today and they will be\nsurprisingly positive , according to officials in the talks . \" we got a series\nof good offers in those initial proposals . and some not so good ones , \" one\nofficial told our source . \" the idea is to announce the results of the first\ncontract talks with the good guys and then go back to the others and say ,\n' you want in on this with these terms ? ' we think we ' ll eventually shake\nloose a lot of supply with this strategy . \"\nbankruptcy\nbecause of these new dynamics , there is improved market confidence that\ncalifornia will emerge from the current energy crisis without bankruptcy for\nsocal edison and pg & e , even as they are set to miss another round of payments\nto creditors and suppliers today ( remember , there is a standstill agreement\namong creditors not to ask for accelerated payment until feb . 13 ) .\nwe believe that sense of optimism will be given an even more credible boost\nby the court case in front of us district judge ronald s . w . lew in los\nangeles , which is likely to mushroom into the kind of political cover for\nelected officials that make a settlement possible by the end of next week , at\nthe latest . in fact , without that political cover it would be impossible to\nsquare all the various circles of this crisis .\naudit results and ballot initiatives\nmarkets , bush administration officials , and perhaps utility companies\nthemselves are underweighting the possibility that citizens groups will\nlaunch a successful ballot initiative in the fall of 200 l to bring all\nelectricity generation back under state control . the threat of a proposition\ninitiative mounted as the two audits of the utility companies ordered by the\ncalifornia public utilities commission released in the last 48 hours\nconfirmed two seriously damaging points we have been warning about since\nmid - january . first , the audit of socal edison confirmed that $ 2 billion of\nthe debt the utility claims it owes to energy suppliers is actually owed to\nitself through its corporate holding structure that generates and sells\npower . second , it confirmed that edison electric paid nearly $ 5 billion in\nprofits to the holding company which then used that money to buy back its\nstock and increase dividends in an effort to keep its stock price up even\nwhile it was going on a debt - issuing binge .\nthe audit of pg & e released late last night was even more damaging : pg & e\nmanagement was sharply criticized for poor decisions in failing to react to\n\" clear warning signs of an approaching energy crisis \" by not making deep\nspending cuts , \" including scaling back management salaries . \" the auditors\nalso questioned the utility ' s decision to funnel some $ 4 . 7 billion of its\nprofits since deregulation into the coffers of its parent holding company ,\nwhich then used the cash mostly to pay dividends and buy back stocks .\n\" basically , they took the money and ran , \" as state senate speaker burton put\nit yesterday .\nwhat appears to be governor gray davis ' grudging acceptance of reality is\nactually a highly evolved effort to produce a solution that provides enough\nrate hikes / taxpayer subsidy to help solve the current crisis without\ntriggering a new - - and far more damaging - - burst of populist outrage among\na voter base that still thinks the utility companies are basically making\nthis all up . there is no doubt that this use of money by socal edison and\nthe debts it owes to itself are perfectly legal and in keeping with the\nspirit of the 1996 deregulation law , but that is irrelevant in popular\npolitical terms . were it not for the political cover potentially afforded by\nthe court case discussed below , these audits would make settlement extremely\ndifficult .\nkeeping that anger from exploding into a ballot initiative this fall is key\nto understanding the very complex game that davis , his advisers and senior\nlegislators are now playing . a ballot initiative would be a potential\ndisaster since it would almost certainly be aimed at re - establishing full\npublic control over the electric utilities . even if the state and utilities\nsuccessfully challenged such an initiative in court it would be years before\nthat victory was clear and it would freeze all new private investment during\nthat prolonged period . that ' s something california cannot afford as\nbusinesses would be moving out and new ones failing to relocate .\ncourt battle\nthus , legislators are listening in horror as they hear the ugly details of\nthe court case in los angeles that socal edison and pg & e are likely to win in\nmid - february . the court will most likely grant the two utilities $ 12 . 7\nbillion in relief and that the cost would fall immediately on the shoulders\nof consumers who would see bills rise by at least 30 % , california politicians\ncould see the emergence of the one thing everyone has needed since the start\nof this extended drama : political cover . davis will then have to rely on his\npolitical and negotiating skills to pressure the parent companies of the\nutilities to pass on something less than the full $ 12 . 7 billion debt .\npg & e and socal edison have already won round one of a legal battle designed\nto let them raise electricity rates enough to recover all of the debt they\nhave accumulated since august last year when the puc refused to let them\nraise prices even as electricity prices soared . the court said the 1996\nderegulation law was crystal clear - - when the two utilities had repaid\nso - called \" stranded costs , \" they were free to begin charging whatever they\nneeded to charge consumers to cover their cost of acquiring power .\nalthough the utilities won this case , the judge stayed his order until\nfebruary 14 th at the state government ' s request . as that deadline\napproaches , an intense new negotiating round is under way . on the one hand ,\npolitical officials know they have the ultimate political cover for higher\nelectric prices ( \" the courts made me do it \" ) , but on the other hand , they\nalso know that immediate and full compliance with that court order would\nforce electricity rates up by about 40 % on top of natural gas bills that have\nsoared by about 300 % since last year . utility companies are playing this\ncard aggressively in negotiations about the scope and shape of the final\nbailout . \" we ' ll just wait until the court puts the order into effect in\nmid - february then even if we are in bankruptcy we will emerge quickly and\neasily . \"\none tactic the state political officials are using , in order to force a\nsettlement , is the threat of keeping the law suit tied up in court for the\nnext couple of years . one political official pointed out that they could\nkeep the utilities from receiving their money this year , next year or perhaps\neven the year after . \" sure , we tell them , they will probably win in court and\nget that money . eventually . we are making them well aware that unless we\nhave a settlement we will appeal that court ruling all the way to the supreme\ncourt and keep them tied up for the next two years at least . we don ' t think\nthe creditors will be quite that patient . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.317+0000", "entityId": 9787, "properties": {"text": "Subject: re : sms conference\nyes ,\ni shall be glad to make a presentation .\nthanks for considering me .\nvince\nzzmacmac @ aol . com on 01 / 31 / 2001 08 : 01 : 23 am\nto : vkamins @ enron . com\ncc :\nsubject : sms conference\nthe strategic management society is holding its annual meeting in san\nfrancisco oct 21 to 24\nwe have a panel on real options , the thrustof which i attach . i was\nwondering if you would be interested in presenting on the practitioner ' s\nperspective - if not you would one of your colleagues be interested ?\n- sms 2001 1 - 23 - 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.325+0000", "entityId": 9788, "properties": {"text": "Subject: adres marysi\nrobertlu @ friko 6 . onet . pl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.332+0000", "entityId": 9789, "properties": {"text": "Subject: presentation slides\ngood morning vince :\nthis is a reminder for you to send me the slides of yesterday ' s\npresentation at your earliest convenience .\nas far as lunch is concerned , right now i am totally free for next week .\nspyros", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.337+0000", "entityId": 9790, "properties": {"text": "Subject: re : fwd : praca dyplomowa v edycja mba warszawa\npanie tomaszu ,\nprosze poinformowac kolegow , ze przesle moje uwagi\ndo niedzieli .\nw . kaminski\nvkaminski @ aol . com on 01 / 30 / 2001 06 : 27 : 25 am\nto : vkamins @ enron . com\ncc :\nsubject : fwd : praca dyplomowa v edycja mba warszawa\ncontent - transfer - encoding : quoted - printable\nreturn - path :\nreceived : from rly - ygo 2 . mx . aol . com ( rly - ygo 2 . mail . aol . com [ 172 . 18 . 147 . 2 ] ) by\nair - ygo 3 . mail . aol . com ( v 77 . 31 ) with esmtp ; mon , 29 jan 2001 17 : 42 : 48 - 0500\nreceived : from postmaster . enron . com ( outbound 5 . enron . com [ 192 . 152 . 140 . 9 ] ) by\nrly - ygo 2 . mx . aol . com ( v 77 . 27 ) with esmtp ; mon , 29 jan 2001 17 : 42 : 35 - 0500\nreceived : from nahou - msmswo 2 px . corp . enron . com ( [ 172 . 28 . 10 . 38 ] ) by\npostmaster . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / postmaster - 1 . 00 ) with esmtp id waal 2034 for\n; mon , 29 jan 2001 22 : 42 : 34 gmt\nfrom : vince . j . kaminski @ enron . com\nreceived : from ene - mtaol . enron . com ( unverified ) by\nnahou - msmswo 2 px . corp . enron . com ( content technologies smtprs 4 . 1 . 5 ) with esmtp\nid for\n; mon , 29 jan 2001 16 : 42 : 33 - 0600\nsubject : praca dyplomowa v edycja mba warszawa\nto : vkaminski @ aol . com\ndate : mon , 29 jan 2001 16 : 42 : 46 - 0600\nmessage - id :\nx - mimetrack : serialize by router on ene - mtaol / enron ( release 5 . 0 . 6 | december\n14 , 2000 ) at 01 / 29 / 2001 04 : 40 : 54 pm\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = iso - 8859 - 2\nx - mailer : unknown ( no version )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 29 / 2001\n04 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" scarbeko \" on 01 / 29 / 2001 07 : 35 : 10 am\nto :\ncc :\nsubject : praca dyplomowa v edycja mba warszawa\nszanowny panie doktorze ,\nna samym pocz ? tku chcia ? bym si przypomnie ` . jestem studentem v edycji mba ? w wy \" szej szkole handlu i finans ? w midzynarodowych w warszawie i wraz z\npanami jerzym seremakiem i waldemarem mrozem piszemy u pana doktora prac ? dyplomow ? z finans ? w midzynarodowych . nsze prace przes ? a ? em do pana\ndoktora juz w listopadzie ubieg ? ego roku i do tej pory nie dosta ? em\npotwirerdzenia , \" e pan je otrzyma ? . bardzo bym prosi ? o potwierdzenie\notrzymania tych \" e prac lub zaprzeczenie .\npanie doktorze nastepna sprawa dotyczy zapytania czy pa \u000f stwa firma by ? aby\nzainteresowana inwestycjami w budow ? elektrowni na ukrainie . pracuj w ? firmie konsultingowej kt ? ra zajmuje si min . tego typu biznesem . nie jest\nto dla nas pierwszy kontakt z tego rodzaju inwestycjami , poniewa \" w\nobecnej chwili przygotowujemy sie do kontraktu ? z niemieck ? ? firm ?\nlahmeyer international na budow elektrowni 150 mw szczeg ? ly moge podac ? je \" eli panstwo wyrazicie zainteresowanie . ? ? z powa \" aniem tomasz b ? ach ? ? ? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.341+0000", "entityId": 9791, "properties": {"text": "Subject: frank qian - cancelled interview schedule\nfrank qian ' s interview scheduled for friday , february 9 , 2001 has been\ncancelled . i ' m sorry about the inconvience . if you have any questions\nplease let me know .\nthanks\nsasha divelbiss\n58714", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.346+0000", "entityId": 9792, "properties": {"text": "Subject: candidate : howard information\nvince - i spoke with london just now .\nhere is what i gather vuthy said about howard haughton .\n1 . he wants a second - round ( another interview with enron ) - but , with high\nofficials ( senior management , this time ) .\n2 . he didn ' t think the interviewers were understanding his technical\nabilities and language .\ngood news : he ( howard ) wants to come back for another interview . i was lead\nto believe it went well although , howard believes in protocol .\nbad news : howard in on vacation now for 10 days .\nsounds fairly good on the candidate debrief .\nthanks , vince .\njeff\n949 813 2241\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.351+0000", "entityId": 9793, "properties": {"text": "Subject: interview\ndear mr . kaminski :\ni am very sorry to tell you that i have to cancel my interview with you\nscheduled on feb 9 th . i had a job offer from citadel investment at chicago\nwith a deadline on feb 5 th . i have been trying to get an extension for the\npast week and unfortunately it failed today . with this very short time\nframe , it is impossible for me and enron ' s interviewing process to meet the\nfeb 5 th deadline . how unwillingly , i would not be able to visit enron for\nafter taking citadel ' s offer . i hope you will find another candidate from\nour class . there are some people still available . i will be happy to help\nyou get in touch with those interested .\nplease keep in touch and i wish you well in your business !\nfrank qian\nfqian @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.355+0000", "entityId": 9794, "properties": {"text": "Subject: re : picks and publishers\nsure . i ' d love to share my experiences . have him give me a call .\nby the way , the chapter you sent has been very helpful to me in coming to\nunderstand enron ' s early history . \" i ' m getting it \" even if slowly .\njohn\nat 07 : 57 am 1 / 31 / 01 - 0600 , you wrote :\n> john .\n>\n> i want to ask you for a favor . can you help\n> this fellow ( who is negotiating a contract with john wiley\n> by giving him some advice ?\n>\n> vince\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2001\n> 07 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> steve bigalow @ enron\n> 01 / 31 / 2001 07 : 37 am\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : picks and publishers\n>\n> good morning ,\n>\n> first , a reminder that you want to see follow through strength on the picks\n> before going into them secondly do you know anybody that has published a\n> book ? i need some help in how to negotiate points in the contract .\n>\n> thanks , steve\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.361+0000", "entityId": 9795, "properties": {"text": "Subject: re : book order\nthanks vince !\n?\nwill champagne do ? ? if not , name your price .\n?\ndo you have an email address for steve leppard ? ? i tried :\nsteve . leppard @ enron . com ? which bounced back .\n?\nthanks ,\njulie\n?\nps - guess i ' ll finally meet you at the end of the month ?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\ncc : vince . j . kaminski @ enron . com\nsent : wednesday , january 31 , 2001 1 : 36 pm\nsubject : re : book order\njulie ,\nthere are many employees in london ? who would be interested .\nyou can send ? an inquiry to steve leppard .\ni had a presentation last night\nto garp in houston and did a commercial for the book .\nyou should put me on commission .\nvince\n\" julie \" on 01 / 31 / 2001 06 : 31 : 39 am\nplease respond to \" julie \"\nto : ? ?\ncc :\nsubject : ? re : book order\nvince ,\ni wasn ' t sure if i responded to your email , so apologise either for my\ndelayed response or repeating myself .\nthanks for the 2 nd order ! i believe they have already been ? dispatched .\nyes , i believe we received payment ; thank you very much for ? following up\nwith paul . glad the book was a hit !\non another subject , are there any enron employees in europe who may be\ninterested in attending either the energy or the weather course ? or , are\nthe quants and risk management mostly handled out of houston ?\nthanks again , and i ' ll forward an invoice on to shirley .\njulie\n- - - - - original message - - - - -\nfrom : ? vince . j . kaminski @ enron . com\nto : julie @ lacima . co . uk\ncc : vince . j . kaminski @ enron . com\nsent : friday , january 26 , 2001 11 : 29 ? pm\nsubject : book order\njulie ,\nwe received the shipment of 50 books . ? thanks .\nthe book was an instant hit . we need 50 more ? books .\nvince\np . s . i understand paul sent you the check for the ? remaining 50 %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.366+0000", "entityId": 9796, "properties": {"text": "Subject: re : wharton tiger team # 3\ni have reserved conference room 32 c 2 for thursday , feb 1 , feb 8 , and feb 15\nfrom 3 : 30 - 5 : 30\njohn to teleconference in tomorrow ( feb 1 ) call 713 - 853 - 9554\nplease let me know if wharton is using a different number from last week so\nthat i can inform the scheduling people\nmelinda\nx 31641\nchristie patrick @ ect\n01 / 30 / 2001 06 : 34 pm\nto : melinda mccarty / corp / enron @ enron\ncc : jhenders @ newpower @ ees , vince j kaminski / hou / ect @ ect ,\ndegiacic @ wharton . upenn . edu\nsubject : re : wharton tiger team # 3\nmelinda ,\nwould you please coordinate john henderson into the thursday videoconference ?\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 30 / 2001\n06 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmohn henderson @ newpower\n01 / 30 / 2001 04 : 13 pm\nsent by : melissa corley @ newpower\nto : christie patrick / hou / ect @ ect @ ees\ncc : jhenders @ newpower @ ees , vince j kaminski / hou / ect @ ect , melinda\nmccarty / corp / enron @ enron , degiacic @ wharton . upenn . edu\nsubject : re : wharton tiger team # 3\njohn would prefer to join the thursday call via teleconference . if you could\nprovide the dial in number he will call in .\nthanks ,\nmelissa corley\njohn henderson\nchristie patrick @ ect\n01 / 30 / 2001 03 : 50 pm\nto : jhenders @ newpower @ ees , vince j kaminski / hou / ect @ ect\ncc : melinda mccarty / corp / enron @ enron , degiacic @ wharton . upenn . edu\nsubject : wharton tiger team # 3\nhi john and vince !\njohn , hopefully you received my voice mail regarding the matter set forth\nbelow .\ni ' m in ny now and won ' t return until thursday morning . perhaps it would be\neasiest for john to come to the video conference on thursday ( if he ' s in\nhouston ) or via telephone if he ' s travelling ? ?\nwhatever you both think is best . . please let me know !\nmy assistant , melinda mccarty , is setting up the call location at the enron\nbuilding , as well as the dial - in number with donna piazze at wharton .\nmelinda , please include john in the distribution of the video conference\nlocation .\nthanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 01 / 30 / 2001\n03 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" degiacinto , clayton \" on 01 / 30 / 2001 02 : 00 : 07 pm\nto : \" ' christie . patrick @ enron . com ' \"\ncc : \" feerick , dennis \" , \" lessar , stephen \"\n, \" vittal , maheshram \" ,\n\" bassal , omar \" , \" cummins , marc \"\nsubject : wharton tiger team # 3\nchristie ,\nas we talked last thursday via video teleconference , we are planning to\nnarrow our scope to focus on a marketing / promotion plan for newpower\nincluding value - added products and services for the future . before we talk\nagain on thursday , we would like to speak with john henderson again to see if\nhe recommends any specific items he would like us to address .\nwe are having trouble contacting him and wonder if you could facilitate a\nphone meeting between us , or if it would be best to include him in our next\nvideo teleconference . we are available the next two days at lpm and 4 pm\nhouston time .\nwe understand that john is a very busy person , and we appreciate any help you\ncan give in getting us together to ensure our work is commensurate with his\nexpectations .\nthanks ,\nenron team 3 ( retail )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.370+0000", "entityId": 9797, "properties": {"text": "Subject: vacation day feb . 16\nshirley ,\nplease put me down for a vacation day of feb . 16 .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.375+0000", "entityId": 9798, "properties": {"text": "Subject: re : fw : wharton resume submission - summer intern\nkristin ,\nyes , we would like very much to have her as a summer intern .\ni can take her ino my group .\nvince\nenron north america corp .\nfrom : kristin gandy @ enron 01 / 26 / 2001 04 : 03 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : fw : wharton resume submission - summer intern\nvince ,\ncan you tell me if these candidates will be part of the program ? i will\ngenerate an offer letter as soon as i know this information .\nthank you ,\nkristin\nvince j kaminski @ ect\n01 / 23 / 2001 01 : 23 pm\nto : kristin gandy / na / enron @ enron\ncc : jeffrey a shankman / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : fw : wharton resume submission - summer intern\nkristin .\nkim is a member of the tiger team . she is interested in a summer\ninternship with enron and i shall be glad to take her .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 23 / 2001\n01 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kim whitsel \" on 01 / 22 / 2001\n12 : 07 : 35 am\nto : ,\ncc :\nsubject : fw : wharton resume submission\n- - - - - original message - - - - -\nfrom : kim whitsel [ mailto : kimberly . whitsel . wgo 2 @ wharton . upenn . edu ]\nsent : friday , december 22 , 2000 6 : 51 pm\nto : kristin . gandy @ enron . com\nsubject : wharton resume submission\nsummer position under wharton schedule # 1823\n- kim whitsel - enron cover letter . doc\n- kim whitsel - wharton 2 resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.380+0000", "entityId": 9799, "properties": {"text": "Subject: re : programming for rdi model\nmichelle ,\nhelen , cecil , david ( just joined the effort ) and i had a meeting this\nmorning . a lot of things regarding\nthe coding has been discussed . we all felt good about the progress that has\nbeen made\nand have clear idea of how to proceed . the project is speeding up nicely .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.385+0000", "entityId": 9800, "properties": {"text": "Subject: here ' s a 4 th try ! ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard b jones / hou / ees on 02 / 01 / 2001\n10 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones\n01 / 31 / 2001 04 : 39 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : here ' s a third try ! ! !\nvince ,\nwhile i was at hsb , i designed an insurance or reinsurance financial model\nthat hsb uses for new product development , pricing different reinsurance\nstrategies , computing stochastic earnings forecast , and estimating\nprobabilistic maintenance & repair costs . the code , written in visual basic &\nms access belongs to hsb , and i want to replicate it here for our use at\nenron . i would like to arrange a time to specifically talk to you and perhaps\nvasant who was briefed on the model , about how we can use your group for the\nanalytical and programming support to get this model re - constructed .\ni have screen outputs from the code and vasant thought the re - design and\nconstruction here at enron is a problem that your group can do . could you let\nme know when we can setup an hour to discuss ?\nthanks ,\nrick jones", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.389+0000", "entityId": 9801, "properties": {"text": "Subject: password for pjm 101 : the basics\ndear pjm attendees :\nfor pjm 101 : the basics - febuary 27 , 2001 @ 9 : 00 am et\nyour username and password will both be pjm + the first 3 letters of your\nlast name . for instance my username and password would be pjmcur .\nfeel free to go to our web site and change this at any time .\nhttp : / / www . virtual - workshops . com\nif you have any questions regarding this , give me a call .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.395+0000", "entityId": 9802, "properties": {"text": "Subject: message from bogdan\nhi vince ,\ni am enclosing my resume , as per our most recent conversation .\nbest regards ,\nbogdan m . szopa\n- bogdan res . . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.399+0000", "entityId": 9803, "properties": {"text": "Subject: wichai narongwanich\ndear toni :\nplease arrange a payment of $ 10 , 000 to wichai as a sigining bonus as agreed\nupon with him at the time of his offer .\nthanks ,\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.404+0000", "entityId": 9804, "properties": {"text": "Subject: security request for adding a timekeeper to cost center 107043\nattached please find the security request to have anita dupont added\nto the research group timekeepers .\nshe is my backup and needs to be able to do the timesheets in case i\nhave to be out of the office .\nif you have any questions , please let me know .\nthanks !\nshirley crenshaw\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.409+0000", "entityId": 9805, "properties": {"text": "Subject: raptor position reports for 1 / 29 / 01\nvince , these spreadsheets have the most up to date numbers for the raptor\nstructures . the summary sheet summarizes the assets and liabilities in all\nfour .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 02 / 2001\n04 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrakesh bharati @ enron\n02 / 02 / 2001 10 : 27 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : raptor position reports for 1 / 29 / 01\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rakesh bharati / na / enron on 02 / 02 / 2001\n10 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : gordon mckillop on 01 / 31 / 2001 09 : 36 am\nto : rakesh bharati / na / enron @ enron\ncc :\nsubject : raptor position reports for 1 / 29 / 01\n- - - - - forwarded by gordon mckillop / na / enron on 01 / 31 / 2001 09 : 35 am - - - - -\ngordon mckillop\n01 / 30 / 2001 03 : 58 pm\nto : ben f glisan / hou / ect @ ect , andrew s fastow / hou / ect @ ect , richard\ncausey / corp / enron @ enron , rick buy / hou / ect @ ect , greg whalley / hou / ect @ ect\ncc : barry schnapper / corp / enron @ enron , andrea v reed / hou / ect @ ect , ryan\nsiurek / corp / enron @ enron , kevin d jordan / corp / enron @ enron , michael\nkopper / hou / ect @ ect , chris loehr / hou / ect @ ect , anne yaeger / hou / ect @ ect , rodney\nfaldyn / corp / enron @ enron , ron baker / corp / enron @ enron ,\namy . flores @ ljminvestments . com , l ' sheryl hudson / hou / ect @ ect , wes\ncolwell / hou / ect @ ect , kevin howard / enron communications @ enron communications ,\ndavid port / market risk / corp / enron @ enron , jordan mintz / hou / ect @ ect , maria\nlebeau / hou / ect @ ect , david maxwell / hou / ect @ ect , susie ayala / hou / ect @ ect , hope\nvargas / hou / ect @ ect , bob butts / gpgfin / enron @ enron , marnie lamb / na / enron @ enron\nsubject : raptor position reports for 1 / 29 / 01\nthe raptor i credit capacity is $ ( 110 . 8 ) million as a result of the merlin\ncredit derivative ( $ 63 ) and heartland steel ( $ 38 ) being reflected in the mpr\nfor 1 / 29 .\nraptor iv has a notional capacity of $ 522 million available .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.413+0000", "entityId": 9806, "properties": {"text": "Subject: re : here ' s a 4 th try ! ! !\nrick ,\ni shall ask my assistant to schedule a meeting early next week .\nvince\nrichard b jones @ ees\n02 / 01 / 2001 10 : 23 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : here ' s a 4 th try ! ! !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard b jones / hou / ees on 02 / 01 / 2001\n10 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones\n01 / 31 / 2001 04 : 39 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : here ' s a third try ! ! !\nvince ,\nwhile i was at hsb , i designed an insurance or reinsurance financial model\nthat hsb uses for new product development , pricing different reinsurance\nstrategies , computing stochastic earnings forecast , and estimating\nprobabilistic maintenance & repair costs . the code , written in visual basic &\nms access belongs to hsb , and i want to replicate it here for our use at\nenron . i would like to arrange a time to specifically talk to you and perhaps\nvasant who was briefed on the model , about how we can use your group for the\nanalytical and programming support to get this model re - constructed .\ni have screen outputs from the code and vasant thought the re - design and\nconstruction here at enron is a problem that your group can do . could you let\nme know when we can setup an hour to discuss ?\nthanks ,\nrick jones", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.418+0000", "entityId": 9807, "properties": {"text": "Subject: henwood power market symposium - april 2001\n* we apologize for the previous message , we experienced an error in our system\nhenwood power market symposium , april 29 th - may lst\nwe are excited to offer you an invitation to attend the henwood power market\nsymposium . this annual three - day event will take place from april 29 to may\n1 , 2001 in atlanta , ga at the\nevergreen mountain resort . the goal of the symposium is to provide our\nguests a forum to conduct business across all energy markets through the\nsharing of experiences and innovations , and\nthrough numerous networking opportunities . participants will also gain\naccess to henwood ' s software products , consulting services and e - business\nproducts , as a means to develop competitive\nstrategies and unequalled value in restructured markets .\nthe focus of the symposium is to provide relevant discussion topics ,\ntechnologies and competitive strategies . this year ' s featured speakers\ninclude senior representatives from enron , conoco ,\nelectric power research institute , ferc , new england iso , and more .\nplease register early because space is limited ! if you register prior to\napril lst , the symposium cost is only $ 875 . after april lst , the\nregistration fee will be increased to $ 975 . your registration is\ninclusive of the following :\n* complete hotel accommodations for sunday april 29 th and monday april 30 th ,\n2001\n* all meals and refreshments for april 29 th through may lst . a welcome\nreception is planned for sunday , april 29 th . this reception is an excellent\nopportunity to network with market participants\nand decision - makers of the electric power industry .\n* a river boat dinner cruise scheduled for monday , april 30 th on board the\nhenry w . grady paddlewheel riverboat . spouses are welcome to attend the\nevening reception and dinner cruise .\na captain and crew golf tournament is also planned for sunday , april 29 th for\nan additional fee . we invite golfers of all levels to participate in this\nevent .\nfor more information contact heather mason ( e - mail : hmason @ hesinet . com ) at\n916 569 - 0985 . you can also learn more about the symposium by visiting our web\nsite at www . hesinet . com .\n* make sure to ask about our special 2001 henwood client discount .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.424+0000", "entityId": 9808, "properties": {"text": "Subject: it was great talking with you .\ndave\n- brochure . doc\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.429+0000", "entityId": 9809, "properties": {"text": "Subject: mgmt 656\nhere is your latest roster . we are up - to - date on all changes but , of\ncourse , the students may still drop / add up to the second week of module 5 .\nwhen the time comes , please check your roster carefully and make sure that\nthe people on the list really are attending your course . mistakes happen so\ni just would like to make sure we have a correct record .\nas always , let me know if you would like the excel folder with e - mail\naddresses . i don ' t send them at the same time to avoid overwhelming our\ne - mail system . thanks for your help !\n- pam ( 713 - 348 - 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.437+0000", "entityId": 9810, "properties": {"text": "Subject: another addition from enron tiger member\nvince :\nplease add deepa mallik to the list , as well , as she is interested in a\nsummer internship with enron . she said she forwarded her resume to you last\nweek . will gladly resend , if necessary .\nthanks ,\ndonna\n> - - - - - original message - - - - -\n> from : fap\n> sent : friday , february 02 , 2001 2 : 04 pm\n> to : ' vkamins @ enron . com '\n> cc : ' clayton . degiacinto . wgo 2 @ wharton . upenn . edu ' ;\n> ' hethorne @ wharton . upenn . edu ' ; thomas ; weigelt ; fap\n> subject : addition from enron tiger member\n> importance : high\n>\n> vince :\n>\n> please add clayton degiancinto as an applicant to a summer internship at\n> enron . he told me that he sent christie patrick his resume two weeks ago .\n> let me know if you need to have it resent .\n>\n> thanks ,\n> donna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.445+0000", "entityId": 9811, "properties": {"text": "Subject: draft from the editor with questions . i ' ll call\nmark ,\nthis is the latest draft ( fri afternoon ) , of the paper by john martin\nfrom baylor . please , review the draft from the point of view of our pr\npolicy . i shall read it as well .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 02 / 2001\n02 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 02 / 02 / 2001 10 : 59 : 11 am\nto : vkamins @ enron . com\ncc :\nsubject : draft from the editor with questions . i ' ll call\nvince ,\nattached is the editor ' s latest edits on my draft . there are a couple of\nthings i ' d like to discuss with you and will call right after lunch .\njohn\n- 134 martin 2 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.451+0000", "entityId": 9812, "properties": {"text": "Subject: draft from the editor with questions . i ' ll call\nvince ,\nattached is the editor ' s latest edits on my draft . there are a couple of\nthings i ' d like to discuss with you and will call right after lunch .\njohn\n- 134 martin 2 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.455+0000", "entityId": 9813, "properties": {"text": "Subject: the latest ( last ? )\nintended for mark a . palmer . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mark s palmer / na / enron on 02 / 02 / 2001\n08 : 02 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n02 / 02 / 2001 08 : 45 am\nto : mark s palmer / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\nsubject : the latest ( last ? )\nmark ,\ni am sending you the final ( ? ) draft of the paper by john martin\non enron ' s transformation . john martin is a prof from baylor who visited us\na few weeks ago .\ncan you take a look at the paper and bless it . i haven ' t read this last\nversion\nof the paper yet and i will go through it on weekend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 02 / 2001\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 02 / 01 / 2001 04 : 15 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : the latest ( last ? )\nvince ,\nattached is my latest attempt to wrap everything together . our timetable\nis very short as we need an \" approved by enron \" version of the paper to don\nby next wednesday . don has already made editorial changes for us and may\nmake some additional \" writing style \" changes but he doesn ' t change the\ncontent .\ni ' ll give you a call later today to alert you to the e - mail .\ntake care ,\njohn\np . s . i had a nice conversation with steve . sounds like he ' s landed a\npretty good contract with wiley .\n- enron _ paper _ 2 _ 1 _ 01 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.461+0000", "entityId": 9814, "properties": {"text": "Subject: harvard research visit\nharvard business school is doing a 5 - year business case study on enron .\nbelow is the information that i have regarding their visit . the name of\nthe case study is modern giants ( attached below )\n( they are interested in developing a clearer picture of the architecture and\ndesign of enron \u0001 , s organization , products , and services - - how the company and\nits key businesses have been put together and how they work on a daily ,\nquarterly , and annual basis . )\nmm\nx 31641\n- - - - - forwarded by melinda mccarty / corp / enron on 01 / 26 / 2001 01 : 40 pm - - - - -\n1 . an overview of the modern giants research project\n2 . descriptions of three broad areas of research interest ( business and\norganizational design , new business creation , and capital investment\ndecision making ) together with the associated interview questions .\nwe fully understand that these interview questions are far too\nencompassing , and that there ' s no way we could get through all of them in a\nsingle , one - hour meeting . what we plan to do is \" specialize \" the interviews\nby the background and expertise of participants . in some cases , we will\nfocus only on new business creation ; in others , we will focus primarily on\nthe allocation of capital ; in others we will focus on the basic economic\nmodel that underlies the trading or energy services business . future visits\nmay focus on the remaining , unanswered questions , or on other areas of\ninterest of our faculty colleagues . these questions should therefore be\nregarded more as a set of interests , rather than a strict protocol that we\nwill strive to complete from beginning to end .\nhope this provides the necessary background for the trip .\n- research initiative on modern giants . doc\n- bower . doc\n- levesque . doc\n- roberto . doc\n- busorgdes . doc\n- newbuscrea . doc\n- capital investment . doc\n- garvin 4 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.465+0000", "entityId": 9815, "properties": {"text": "Subject: latest revision\nvince ,\ni have made bold face edits to the attached document . i still have two edits\nto make but am concerned that you were not reading the most recent version .\nsorry for any confusion but the editor doesn ' t use the edit function in word\nso i have ended up making edits on new versions of the paper .\ni still haven ' t made the change regarding the take - or - pay problem ( i left\nthat paper at home in my briefcase and will make the change tomorrow\nmorning ) . also , i haven ' t added anything regarding the conflict that arose\nover pay for new hires nor have i received the business week e - mail from you .\nhowever , if the paper looks ok to mark palmer we can make these minor edits\non the galley pages of the article .\nthanks\njohn\np . s . i am very disappointed about the scheduling conflict you have on feb\n23 rd . you will be greatly missed but i certainly understand .\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.472+0000", "entityId": 9816, "properties": {"text": "Subject: re : statistica & lunch\nrick ,\nwe are using sas .\ni am glad you can speak at our lunch meeting\non feb 15 .\nvince\nrichard b jones @ ees\n02 / 05 / 2001 11 : 26 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : statistica & lunch\nvince ,\ndo we have a site license for statistica ? what stat software do you use ?\ni am prepared to talk at your lunch . i think we said thurs feb 15 th 11 : 30 -\n1 : 00 . i would liie to have a computer display if possible . i ' ll bring my pc .\nwhat ' s the room # again ?\nrick jones", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.477+0000", "entityId": 9817, "properties": {"text": "Subject: understanding risk and return of an insurance portfolio\nhi vince ,\ni am enclosing a report on my thoughts about risk and return behaviour of an\ninsurance portfolio . your input on this will be very helpful .\ni have given vasant a copy of this report and am working with him towards\nimproving this . in the mean time , i happened to mention this idea in a\nmeeting with david porter , per sekse , brad blesie and david hoog and there\nseems to be some interest in understanding how this works . in fact , david\nhoog subsequently reviewed this with me and suggested some changes . those\nchanges have been included in this report .\nthe idea here is simple and just a starting point . while it provides a broad\npicture on how risk and return will behave at portfolio level , i am hoping\nto be able to relax some of the assumptions to get more realistic picture in\nnear future .\nlooking forward to your input ,\nsincerely ,\namitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.482+0000", "entityId": 9818, "properties": {"text": "Subject: computerworld article\nfyi : several errors like ' brokering ' in the report but given the fact that\nthe guy had no clue what enron does or companies like it do , this came out\nokay . in all of the pr group ' s marketing effort , enron as a market - maker is\nthe message .\nravi .\n- - - - - forwarded by ravi thuraisingham / enron communications on 02 / 05 / 01 10 : 54\nam - - - - -\nshelly mansfield\n02 / 05 / 01 10 : 49 am\nto : ravi thuraisingham / enron communications @ enron communications\ncc :\nsubject : computerworld article\nshelly mansfield\nenron broadband services\n713 - 853 - 4589 office\n713 - 646 - 8887 fax\n877 - 929 - 7889 pager\n713 - 303 - 4720 cellular\n- - - - - forwarded by shelly mansfield / enron communications on 02 / 05 / 01 10 : 51 am\n- - - - -\nnorman levine\n02 / 05 / 01 10 : 08 am\nto : shelly mansfield / enron communications @ enron communications\ncc :\nsubject : computerworld article\nfollowing is the computerworld article :\nlink :\nenron seeks to broker storage deals between users , ssps\nby lucas mearian\nwhile technology service providers have long been talking about data storage\nas a utility that should be sold in the open marketplace like electricity or\nnatural gas , little has been done to pool market resources in order to hawk\nsurplus disk - array capacity .\nbut that ' s exactly what a subsidiary of houston - based energy and\ncommunications conglomerate enron corp . is doing by launching a\nbusiness - to - business exchange that it said will seek to match spare capacity\nowned by storage service providers ( ssp ) with corporate users who want to be\nable to quickly scale up and down the amounts of storage they have available .\nenron broadband services this week announced that it has already signed a\ndeal with waltham , mass . - based storagenetworks inc . and is negotiating\nsimilar agreements with at least six other ssps . if successful , analysts\nsaid , enron ' s business proposition could go far toward generating a set of\noperating standards for the emerging ssp business .\n\" it ' s a market with mix of small and large players and companies that define\ntheir roles differently , \" said ken weilerstein , an analyst at gartner group\ninc . in stamford , conn . enron ' s plan also could help enterprise - level users\nget additional benefits along with the storage capacity they ' re renting , such\nas security and disaster recovery support , he added .\nravi thuraisingham , director of global bandwidth risk management at enron\nbroadband services , said the new offering won ' t include additional security\nfeatures . but enron does plan to standardize on a set of ssp services and\nbundle them with disaster recovery and communications bandwidth capabilities ,\nhe said .\ninitially , enron - - which had total revenue of $ 101 billion last year - -\nexpects to charge users monthly fees of $ 25 to $ 55 per gigabyte of managed\nstorage , depending on market conditions and the length of time a company\nexpects to need the capacity . \" we ' re there to try to discover a market\nclearing price , \" said thuraisingham , adding that the service is tentatively\ndue to go online in the third quarter .\nenron said it has already signed best buy co . , one of the leading retailers\nof consumer electronics , computers and software in the u . s . , to buy the\nstorage capacity it needs to support a customer relationship management\napplication through storagenetworks . connecting users such as best buy to\navailable storage could take anywhere from three days to three months ,\naccording to thuraisingham .\nunder enron ' s plan , storage capacity owned by participating ssps will be\nconnected to an existing network of switching hubs through which the company\ncurrently trades telecommunications bandwidth . enron said it has 18 switching\ncenters , or \" pooling points , \" in the u . s . , and another seven overseas .\nat first , the company plans to focus its attention on ssps in boston and\nother metropitan areas where the necessary networking plumbing can be easily\ninstalled . but even there , thuraisingham said , enron is \" pretty much in the\ninitial stages of getting ssps up to speed on what the market is about . \"\nenron has been managing online trades of telecommunications bandwidth since\nthe spring of 1999 . later that year , it also launched a web site called\nenrononline that oversees the trading of natural gas , electricity and other\ncommodities . that quickly became the world ' s largest e - commerce site and is\nnow said to be processing more than $ 1 billion worth of transactions daily .\nnorman levine\nenron broadband services\n713 - 853 - 5010\nnorman _ levine @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.489+0000", "entityId": 9819, "properties": {"text": "Subject: re : czesc\nwicku ,\noczywiscie , ze sie spotkam z radoscia i przyjemnoscia .\nsporo czasu minelo od czsu , gdy sie ostatni raz widzielismy .\nw gre wchodzi praktycznie czwartek wieczorem . w srode sie przeprowadzam ,\na w piatek lece do nj o 21 : 30 .\nmoj telefon : 408 - 855 - 0263 .\nna razie ,\ngrzegorz\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , february 05 , 2001 10 : 29 am\nto : gnapi @ intertrust . com\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : czesc\ngrzegorz ,\nludmila doniosla mi , ze pracujesz w kalifornii .\nbede w berkeley w srode i w palo alto w czwartek i piatek .\nczy masz czas , by spotakc sie na obiad / lunch / kawe ?\npozdrowienia\nwicek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.494+0000", "entityId": 9820, "properties": {"text": "Subject: re : vince . . . feedback from howard on debrief\njeff ,\nwe shall continue talking to howard when he comes back from nyc .\ni shall set up an interview with him .\nvince\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 02 / 05 / 2001 12 : 49 : 20 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : vince . . . feedback from howard on debrief\nhi vince , this is exactly what i recieved back from my man in the uk . . . pls\nreview . any comments or instructions ?\nthank you ,\njeff wesley 949 813 2241 direct\nspoke to howard , he is intereste in speaking to someone higher up the\nfoodchain at enron . he got the impression that those people he met would\nreport into him . he really needs to speak to someone higher up and discuss\nthe roles strategic potential .\nhe is interested mainly in structuring which this role is not . but he\nrecognised where it might lead and this would potetially be interesting to\nhim but needs to speak to someone who is involved in the strategic direction\nof enrons credit . com .\nvuthy is aware that enron have intimated they want to see him again . howard\nhas told me there is a lot happening for him both here and in the us . vuthy\nwill arrange to get howard interviewed here in london early next week .\ntks and rgds\nalec\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.500+0000", "entityId": 9821, "properties": {"text": "Subject: re : witaj wicku !\nmarek ,\njestem w trakcie organizacji programu interview w houston .\nmusze skoordynowac plany 3 - 4 osob , ktore powinny cie spotkac .\nwicek\nmark kierlanczyk on 02 / 05 / 2001 11 : 43 : 09 am\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : witaj wicku !\nprzez tydzien musialem poddac sie medycznej dygresji zapoznania sie co to\nznacza kamienie nerkowe . teraz jest juz dobrze i znow powraca do mnie\nnadzieja aby zyc wiecznie .\nczy zdarzylo sie cos nowego odnosnie mojej wizyty w houston ? jesli nie to\numowmy sie na 13 lutego w nowym yorku , gdzie i kiedy , jesli nadal masz\nzamiar przyjechac .\nserdeczne pozdrowienia - marek", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.504+0000", "entityId": 9822, "properties": {"text": "Subject: re : message from bogdan\nthanks vince . we ' ll talk to him this week .\n- - dan\nvince j kaminski\n02 / 02 / 2001 05 : 03 pm\nto : daniel reck / hou / ect @ ect\ncc :\nsubject : message from bogdan\ndan ,\ni am sending you a resume of one of my compatriots who\nlives in houston . i met him socially a few times .\nhe graduated from the same university i did .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 02 / 2001\n05 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nawenda 2000 @ cs . com on 02 / 01 / 2001 09 : 57 : 42 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : message from bogdan\nhi vince ,\ni am enclosing my resume , as per our most recent conversation .\nbest regards ,\nbogdan m . szopa\n- bogdan res . . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.510+0000", "entityId": 9823, "properties": {"text": "Subject: re : philippe jorion ' s pending visit to rice\ndavid ,\nit ' s even better .\ndinner on the 18 th works best for me .\ni sent your outline to our cfo with my recommendation .\ni hope to hear shortly from him .\nvince\ndavid ikenberry on 02 / 05 / 2001 02 : 29 : 04 pm\nto : \" vkamins @ ennron . com \"\ncc :\nsubject : philippe jorion ' s pending visit to rice\nhi vince ,\nwe have tentatively re - scheduled philippe jorion for monday , march 19 . he\nwill likely come for dinner on sunday , march 18 and return to california on\nmarch 19 . would dinner on the 18 th and / or a seminar sometime on monday the\n19 th work with your schedule ?\nthanks , dave\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.520+0000", "entityId": 9824, "properties": {"text": "Subject: the national forum on corporate finance\nandy ,\ni am sending you a draft oof a proposal regarding national forum for top\nfinance practitioners and\nacademics . the idea came from a professor at rice university who\nhas already received a commitment from a number\nof most distinguished cfos .\nplease , read the outline and see if you would be interested in joining this\nforum .\ni shall be glad to help to arrange a meeting with prof . ikenberry .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 05 / 2001\n10 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndavid ikenberry on 02 / 02 / 2001 06 : 10 : 02 pm\nto : \" vkamins @ ennron . com \"\ncc :\nsubject :\nit was great talking with you .\ndave\n- brochure . doc\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.530+0000", "entityId": 9825, "properties": {"text": "Subject: time sensitive : executive impact & influence program survey\n* * * reminder * * *\nwe have not yet received your feedback . your input is\nvery valuable and to be included in the participant ' s\nsummary report , it must be received no later than close\nof business on friday , february 9 . without your\nfeedback , the participant may not receive a summary\nreport or be eligible to attend the program .\n* immediate action required - do not delete *\nexecutive impact & influence program\ndear vince kaminski ,\nas part of the executive impact and influence program ,\neach participant is asked to gather input on the\nparticipant ' s own management styles and practices as\nexperienced by their immediate manager , each direct\nreport , and up to eight colleagues / peers .\nyou have been requested to provide feedback for a\nparticipant attending the next program . your input\n( i . e . , a self assessment , if you are a participant in\nthis program , manager assessment , direct report\nassessment , or colleague / peer assessment ) will be\ncombined with the input of others and used by the\nprogram participant to develop an action plan to\nimprove his / her management styles and practices . if\nyou are providing feedback as a manager of the\nparticipant , please note that your feedback will be\nidentified in the summary report .\nit is important that you complete this assessment no\nlater than close of business on friday , february 9 .\nto begin the online administration process , you will\nneed the following internet address and password ( s ) .\nnote : if you are providing feedback for more than one\nperson , each password and participant name is\nindividually listed below .\nopen your internet browser e . g . , internet explorer or\nnetscape navigator , and please type or copy the url\naddress below into your internet browser ( please do not\ngo through lotus notes ) :\nwww . fsddatasvc . com / enron\nh 73 m 9 a ( anthony mends )\nif you experience technical problems , please call\ndennis ward at fsd data services , 713 - 942 - 8436 . if you\nhave any questions about this process , you may contact\ndebbie nowak at enron , 713 - 853 - 3304 , or christi smith at\nleadership research institute / keilty , goldsmith & company ,\n619 - 216 - 0404 .\nthank you for your participation .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.535+0000", "entityId": 9826, "properties": {"text": "Subject: reminder\nstinson ,\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 05 / 2001\n11 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 02 / 02 / 2001 01 : 39 : 17 pm\nto : timopler @ yahoo . com , raj _ srivastava @ bus . emory . edu ,\nvaysman @ mail . utexas . edu , vkamins @ enron . com , cpaoli @ sternstewart . com ,\nbill _ petty @ baylor . edu , michael . froehls @ citicorp . com ,\ncorey . carbonara @ systems . tstc . edu , michael _ korpi @ baylor . edu ,\nklifford _ kuehl @ baylor . edu , terry _ maness @ baylor . edu , dpalumbo @ sapient . com ,\ndchew @ sternstewart . com , j _ martin @ baylor . edu\ncc :\nsubject : reminder\ngood afternoon ,\ni just want to give you a reminder about the one - page questionnaire\nregarding arrival and departure times for the workshop . your responses\nwill make planning a bit easier on this end . also , please get me your\n\" one - page \" background statement as soon as possible . i am attaching\nmichael froehl ' s to give you some guidance ( thanks michael , i thought i was\ngoing to have to prepare mine first ) .\nlet me also tell you that the television producer has requested 15 minutes\nof each of your time either the morning of the 23 rd before the luncheon or\nafter the workshops to do individual interviews . they will then work these\nindividual shots into the final edited program ( bring your best tv smiles ) .\nby the way , i have been assured by the producer that we have final say\nover whether particular comments are edited in or out of the final product\nso we can all relax , this is not live tv .\ni ' ll be out of town the end of next week but hope to have all my plans put\ntogether the following week so please respond to both the questionnaire and\nthe request for a one - page background / positions / ideas write - up .\nthanks guys and i ' m looking forward to seeing you all very soon .\njohn\np . s . in case you ' ve misplaced it i have appended a copy of the questionnaire .\n- waco _ background _ mf . doc\n- questionnaire . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.540+0000", "entityId": 9827, "properties": {"text": "Subject: reliant tigers interested in enron\nvince :\nbelow , please find 2 names of wharton students who are interested in\ninternships this summer .\nthanks ,\ndonna\n- - - - - original message - - - - -\nfrom : chen , vincent [ mailto : chenvinc @ wharton . upenn . edu ]\nsent : sunday , february 04 , 2001 11 : 24 pm\nto : ' fap '\nsubject : re : call from enron\ndonna , i had also passed along the resumes of two reliant energy tiger team\nmembers , david gershenson and james iker , who were both interested in\nworking for enron this summer . i had spoken to vince about these candidates\nwhen we were in houston , and he said he would arrange internships for them\nas well .\nhe should already have copies of their resumes and cover letters . please let\nme know if you have any questions or need clarification .\nthanks ! !\nvincent\n- - - - - - - - end of unsent message", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.545+0000", "entityId": 9828, "properties": {"text": "Subject: re : latest revision\nvince ,\ni got the zipped version fine . thanks the only outstanding items relate\nto the complete references for your papers ( the book publisher and dates ) .\ni spoke with shirley this morning and she is tracing this down for me .\ni re - read the gas market paper segment on the take - or - pay contracts and\ncorrected my \" oversight \" . by the end of the day i hope to have all the\ncorrections that you gave me incorporated in the manuscript . we will make\nthem on the galley pages of the article when it arrives .\nthanks again for all your help .\njohn\np . s . i also spoke with mary joyce ( she returned my earlier call a week ago\nwhen i was trying to ask cindy something ) . all is well . at 10 : 15 am\n2 / 5 / 01 - 0600 , you wrote :\n>\n> john ,\n>\n> html version of enron article :\n>\n>\n> vince\n>\n> ( see attached file : b 3719001 . htm ) ( see attached file : b 3719003 . htm ) ( see\n> attached file : b 3719004 . htm ) ( see attached file : b 3719005 . htm ) ( see attached\n> file : b 3719006 . htm ) ( see attached file : b 3719007 . htm ) ( see attached file :\n> b 3719008 . htm ) ( see attached file : b 3719009 . htm ) ( see attached file :\n> b 3719010 . htm )\n>\n>\n>\n>\n>\n> \" john d . martin \" on 02 / 04 / 2001 06 : 37 : 47 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : latest revision\n>\n> vince ,\n>\n> i have made bold face edits to the attached document . i still have two\n> edits to make but am concerned that you were not reading the most recent\n> version . sorry for any confusion but the editor doesn ' t use the edit\n> function in word so i have ended up making edits on new versions of the\n> paper .\n>\n> i still haven ' t made the change regarding the take - or - pay problem ( i left\n> that paper at home in my briefcase and will make the change tomorrow\n> morning ) . also , i haven ' t added anything regarding the conflict that arose\n> over pay for new hires nor have i received the business week e - mail from\n> you .\n>\n> however , if the paper looks ok to mark palmer we can make these minor edits\n> on the galley pages of the article .\n>\n> thanks\n>\n> john\n>\n> p . s . i am very disappointed about the scheduling conflict you have on feb\n> 23 rd . you will be greatly missed but i certainly understand .\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719001 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719003 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719004 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719005 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719006 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719007 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719008 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719009 . htm \"\n>\n> attachment converted : \" c : \\ windows \\ desktop \\ b 3719010 . htm \"\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.549+0000", "entityId": 9829, "properties": {"text": "Subject: addition to enron - summer internships\nkristin\nanother tiger .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 05 / 2001\n09 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 05 / 2001 08 : 34 : 26 am\nto : \" ' vkamins @ enron . com ' \"\ncc : fap , \" ' mvittal @ wharton . upenn . edu ' \"\nsubject : addition to enron - summer internships\nvince :\nplease include ram vittal to the summer internship list , if you have not\nalready done so .\naccording to my count , that make a total of 8 students from the enron tiger\nteam who have a desire to work with enron .\nthanks ,\ndonna\n- - - - - original message - - - - -\nfrom : vittal , maheshram [ mailto : mvittal @ wharton . upenn . edu ]\nsent : friday , february 02 , 2001 10 : 17 pm\nto : ' fap '\nsubject : re : call from enron\ndonna :\ni had submitted my resume directly to their recruiting office and haven ' t\nheard from them . i would be very willing to reforward my resume , if\nrequired .\nthanks ,\nram", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.554+0000", "entityId": 9830, "properties": {"text": "Subject: addition to enron - summer internships\nvince :\nplease include ram vittal to the summer internship list , if you have not\nalready done so .\naccording to my count , that make a total of 8 students from the enron tiger\nteam who have a desire to work with enron .\nthanks ,\ndonna\n- - - - - original message - - - - -\nfrom : vittal , maheshram [ mailto : mvittal @ wharton . upenn . edu ]\nsent : friday , february 02 , 2001 10 : 17 pm\nto : ' fap '\nsubject : re : call from enron\ndonna :\ni had submitted my resume directly to their recruiting office and haven ' t\nheard from them . i would be very willing to reforward my resume , if\nrequired .\nthanks ,\nram", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.560+0000", "entityId": 9831, "properties": {"text": "Subject: re : good news - cabinet approval for power trading\nseethayya ,\nthis is great news . credit goes to all those who worked towards making this\npossible , especially ramu , mr . mehta , jane , heidi and yourself who went\nthrough draft after draft of the note to chidambaram .\nthis is good news for us ! !\nregards ,\nsandeep .\nk seethayya\n02 / 06 / 2001 08 : 35 am\nto : neil mcgregor / enron _ development @ enron _ development , jane\nwilson / enron _ development @ enron _ development , sandeep\nkohli / enron _ development @ enron _ development , jimmy\ncc : wade cline / enron _ development @ enron _ development , ashok\nmehta / enron _ development @ enron _ development , mohan\ngurunath / enron _ development @ enron _ development , shubh\nshrivastava / enron _ development @ enron _ development , heidi\nhellmann / enron _ development @ enron _ development , rajesh\nsivaraman / enron _ development @ enron _ development , pancharatnam\nramaswamy / enron _ development @ enron _ development , arvind\nrawat / enron _ development @ enron _ development , ritu\nsubject : good news - cabinet approval for power trading\nteam : today union cabinet has approved the proposal of ministry of industry\nto allow foreign equity participation in power trading . this was conveyed by\nsecretary ( power ) during his meeting with wade . in normal course , the\nproposal was slated to be coming up for cabinet in next few weeks . keeping in\nview the developments of dpc invoking state guarantee , perhaps cabinet has\nhurried it up .\nthe exact proposal approved was - \" to allow foreign equity participation\nthrough automatic route upto 100 % for trading in power sector , subject to\nprevailing laws . \"\nirrespective of urgency of this approval to us , the best thing is that we are\ngetting the approval without draft electricity bill , 2001 being finalised . as\nmost of you are aware , initially the proposal was stalled at fipb level\npending finalisation of electricity bill . then it has gone to group of\nministers who had taken a positive approach and now the cabinet has cleared\nit .\nnow fipb either issue an approval to enron llc or advise us to avail\nautomatic route . we will have one of it , culminating great team work .\nseethayya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.565+0000", "entityId": 9832, "properties": {"text": "Subject: cera conference call and web presentationthe final wave of rto\nfilings : the ball is in ferc ' s court - cera conference call\ntitle : cera conference call and web presentation \u0001 * the final wave of rto\nfilings : the ball is in ferc ' s court\nurl : http : / / www 20 . cera . com / eprofile ? u = 35 & m = 2243\nelectric transmission and north american electric power conference call and\nweb presentation\na cambridge energy research associates conference call & web presentation\ntopic\nthe final wave of rto filings - - the ball is in ferc ' s court\n* some surprises from the independent system operators\n* will the deadline be met ? the countdown to december 15 , 2001\n* the ferc : a soft stance on rto filings ?\nformat\nat the time listed below , our speakers will address this topic for\napproximately 30 minutes , with accompanying graphics presented on the\ninternet ,\nfollowed by an open question and answer period .\nspeakers\ndavid clement , cera associate director , electric transmission\nhope robertson , cera senior associate , north american electric power\nlarry makovich , cera senior director , north american electric power\ntime\n1 : 00 p . m . eastern , thursday , february 22 , 2001\neligibility\nclients eligible to participate in this conference call are those who\nsubscribe\nto the electric transmission advisory service or the north american electric\npower advisory service .\nto enroll\nto enroll , please return this form via fax to kari paakaula at ( 617 ) 497 - 0423 ,\nor enroll via e - mail at kpaakaula @ cera . com before 4 : 00 p . m . , wednesday ,\nfebruary 21 , 2001 .\nfor the audio portion of the call , please call in on one of the following\nnumbers approximately 10 - 15 minutes before the call :\naudio\nnetscape navigator 3 . 02 or higher ; or sun hot java ( tm )\n* close all desktop applications and disable your screen saver\ntechnical assistance :\nu . s . callers : if you are experiencing difficulties during the call , you may\nsignal for technical assistance by pressing * 0 ( star , zero ) on your telephone\nkeypad after you have connected to the audio portion of the conference .\ninternational callers : please re - dial and ask the operator for assistance\nbefore giving the confirmation code .\nfor more information , please contact kari paakaula via e - mail at\nkpaakaula @ cera . com or via telephone at ( 617 ) 441 - 1362 .\na recording of this call ( audio only ) will be available until march 22 , 2001 .\nto access this recording , please call 1 - 888 - 203 - 1112 ( within the u . s . ) or\n( 719 ) 457 - 0820 ( outside the u . s . ) . please use confirmation number 507712 to\naccess the call .\n* * end * *\nfollow above url for full report .\ncome shoot the rapids with us at ceraweek 2001 , \" shooting the rapids :\nstrategies and risks for the energy future \" in houston , february 12 - 16 ,\n2001 !\nfor more information and to register , please visit\nhttp : / / www 20 . cera . com / ceraweek /\ne - mail category : conference call\ncera knowledge area ( s ) : north american power ,\nto make changes to your cera . com account go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2001 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.570+0000", "entityId": 9833, "properties": {"text": "Subject: [ no subject ]\nthanks vince - i didn ' t know - i was worried for a while ; thanks for reducing\nme stress ! i ' ll let alec and vuthy know @ this .\nthank you very much - we ' ll get him ( howard ) in !\njeff\ni live in dana point , ca . ( known for it ' s harbor ) here are a few pictures for\nyou on your coffee break : http : / / www . danapointharbor . com / tour / ptwend . htm\nbye\njeff ,\nwe have video facilities both in houston and london .\nwe shall invite howard to visit our office in london again .\nvince\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.574+0000", "entityId": 9834, "properties": {"text": "Subject: re : video conference\njeff ,\nwe have video facilities both in houston and london .\nwe shall invite howard to visit our office in london again .\nvince\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 02 / 06 / 2001 01 : 44 : 27 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : video conference\nhi vince ,\nthe following ( below ) is what london rw wrote back - is it true enron can do\nit inhouse between houston and london ? . . . if so , i will get alec to have\nhoward available for you upon arrive back from his holiday for the video\nconference .\nlet me know if this is what you want and ment . mri has video conferencing\nbut , not in uk . . . so i can ' t provide the service , either .\ni don ' t want to let you down .\nthanks ,\njeff\njeff , not available at rw - will be done between enron london and\nhouston .\nalec\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.579+0000", "entityId": 9835, "properties": {"text": "Subject: re : yes sir\njeff ,\nthanks .\nwe shall try to arrange a video conference with houston\nwhen howard is back .\nvince\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 02 / 05 / 2001 07 : 29 : 12 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : yes sir\nok , vince .\ni ' ll track him and find when he is back .\ni will inform alec and his manager what you want .\ni ' m on it .\nthank you .\njeff\njeff ,\nwe shall continue talking to howard when he comes back from nyc .\ni shall set up an interview with him .\nvince\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.584+0000", "entityId": 9836, "properties": {"text": "Subject: re :\ndave ,\nboth days .\nvince\ndavid ikenberry on 02 / 06 / 2001 01 : 39 : 58 pm\nto : vince . j . kaminski @ enron . com\ncc : ostdiek @ rice . edu\nsubject :\nhi vince ,\ni just now heard back from andrew karolyi . he will be here on monday march\n12 . would you be available for dinner either on sunday march 11 or monday\nmarch 12 ?\nthanks , dave\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.588+0000", "entityId": 9837, "properties": {"text": "Subject: re : eprm course\nchris ,\nthanks for the invitation . yes , i am interested in the training course .\ni shall call paul bristow today . please , give me some indication regarding\nthe dates .\nvince\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\n\" chris strickland \" on 02 / 06 / 2001 02 : 20 : 52 am\nplease respond to \" chris strickland \"\nto : \" vincejkaminski \"\ncc : \" vince \\ ( home \\ ) \"\nsubject : eprm course\nhi vince ,\n?\nhope you are fine . i hope that grant ' s leaving ? hasn ' t affected your group\ntoo much ?\n?\neprm ' s paul bristow has been in touch about a var training course involving\nles , yourself and i . are you interested ? we would be ? extremely happy to work\nwith you . he was talking about london and houston which i don ' t know if it\nfits with your travel schedule . maybe we can sort something out .\n?\ni hope to have the next article with you by early next week .\n?\nbest regards as always , and many thanks for your book promotional efforts !\n?\nchris .\n?\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.594+0000", "entityId": 9838, "properties": {"text": "Subject: trading limit and policy changes\nvince -\nhere ' s a summary of what ' s going to the bod , along with updated policy . feel\nfree to call me if you have any questions .\nregards ,\ncassandra .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.599+0000", "entityId": 9839, "properties": {"text": "Subject: anshuman shrivastava\nsandeep : vince has asked me to coordinate with margaret daffin in our\ninternational group to ensure that we acquire an ll visa for anshuman . this\nvisa has to be in place before he will be able to work in the united states\nin any capacity . ( anshuman cannot work in the us on a b - 1 visa - - he can only\ncome here for business meetings or training . ) there are still several items\nremaining to be completed for the l - 1 process . the first is a fairly\ndetailed job description for anshuman . secondly , we will need to know\nwhether or not he will either be in a managerial position or whether he will\nbe managing a project while he is here in houston . vince thought that you\nwould be best able to provide this information to us , and we would really\nappreciate anything you can do to help us expedite this process .\nif you have any questions , please give me a call at x 34804 . thank you for\nyour help .\nmolly magee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.604+0000", "entityId": 9840, "properties": {"text": "Subject: re : programming for rdi model\nmichelle ,\nthe coding is progressing nicely . cecil and david have the first part of the\ncode\nalmost done ( there are 3 parts of code ) , and they expect to have the first\ntwo parts\ncompleted by next tuesday or wednesday . if ken ' s needed , that will be in the\ntesting of the third part of code , which should be sometime next week or\nlater .\ni will inform you of the status change as soon as possible .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.608+0000", "entityId": 9841, "properties": {"text": "Subject: charm conference call\nplease let me know what works for you . i have a meeting monday from 10 : 00\na . m . through lunch . please advise .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james l bouillion / hou / ect on 02 / 07 / 2001\n07 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" bertil olsson \" on 02 / 06 / 2001 10 : 37 : 21 am\nto : james . l . bouillion @ enron . com\ncc :\nsubject : charm conference call\ncarl and i are both available either monday 12 th or tuesday 13 th . we can do\neither am or pm but would prefer am if possible . please let me know your\npreference and i will set it up .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.613+0000", "entityId": 9842, "properties": {"text": "Subject: non - disclosure agreement and intellectual property rights\nhi kay ,\ni was referred to you by julia for assistance . here in research , we are in\nthe process of retaining prof . sheridan titman of university of texas at\naustin to perform some consulting work . in anticipation , we would like to\nhave a non - disclosure agreement to protect the confidentiality of any\ninformation we might provide him . also , we would like have an agreement on\nhow the intellctual property rights of any outcome of this effort will be\nshared .\nplease let me know what information i can provide from this end to help you\ndraft these documents . my extension is 30936 . thanks .\nrakesh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.618+0000", "entityId": 9843, "properties": {"text": "Subject: organizational changes\nenron is forming a new organization - - the enron xcelerator - - to drive the\nformation and development of new businesses at enron . enron ' s unique ability\nto start and develop new businesses has driven most of our growth over the\nyears . lou l . pai , currently chairman and ceo of enron energy services , will\nlead the xcelerator . over his years at enron , lou has been key to the\ncreation and rapid growth of our wholesale gas , wholesale power and energy\nservice businesses . the existing business units will continue their\ndevelopment of core businesses , while the xcelerator will be responsible for\ndeveloping new business opportunities that are natural extensions of enron ' s\nbusiness model and core skills , but not currently under development elsewhere\nin enron .\ndave delainey , currently president and ceo of enron americas , will become\nchairman and ceo of enron energy services . dave brings a wealth of\nexperience and accomplishment from enron wholesale services ' businesses where\nhe led the growth of our canadian business and our north american origination\nactivity and , most recently , had a great year in enron americas .\ndave is forming an office of the chairman in ees . joining dave in the office\nof the chairman are dan leff , president of ees , global energy services , and\nmarty sunde , president of ees , global marketing and services . dan and marty\nhave been instrumental in the development and execution of the successful ees\nbusiness model . also joining the office of the chairman of ees is janet\ndietrich as chief operating officer . janet , currently is managing director\nin enron americas , where she has been successful in many of enron wholesale ' s\ncore businesses , including gas trading , risk management and structural\norigination . tom white will continue as vice chairman of ees and will focus\non the development and expansion of ees ' customer relationships . lou , tom ,\ndan , marty and the entire ees organization have developed a great business\nmodel with great growth prospects . ees has become an essential part of\nenron ' s market valuation and growth story . this new leadership structure\nwill enable ees to continue on its path of sustained growth and increasing\nprofitability .\njohn lavorato will succeed dave as president and ceo of enron americas . john\nhas been an essential part of enron ' s energy trading success over the years\nand is a key part of enron wholesale services ' continuing success story .\njoining john is louise kitchen , currently president and ceo of enron\nnetworks . louise , who accelerated enron ' s outstanding growth with the\ndeployment of enrononline , will take over as chief operating officer of enron\namericas .\nphilippe bibi , currently chief operating officer of enron networks will take\nover as president and ceo of enron networks . under philippe ' s leadership ,\nenron has become a technology leader and the leading e - commerce company .\njoining philippe as chief operating officer is greg piper , currently managing\ndirector of enron networks . greg currently leads enron network ' s origination\nactivity and was responsible for the creation and deployment of clickpaper ,\nenron ' s successful online pulp and paper marketplace .\nplease join us in congratulating all of these individuals on their\nachievements and their new responsibilities .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.623+0000", "entityId": 9844, "properties": {"text": "Subject: the latest ( last ? )\n. . sorry . . . i found something else :\np . 1 , footnote : the newspaper is the \" houston chronicle \" ( purchased the\n' post ' several years ago ) . . : - )\n- - - - - forwarded by christie patrick / hou / ect on 02 / 07 / 2001 05 : 34 pm - - - - -\nchristie patrick\n02 / 07 / 2001 05 : 27 pm\nto : mark palmer / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , j _ martin @ baylor . edu\nsubject : the latest ( last ? )\n. . as columbo would say . . \" . . just one more thing \"\np . 20 last bullet : enron focusing on recruiting and retaining talent\nthanks again ! christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 07 / 2001 05 : 24 pm - - - - -\nchristie patrick\n02 / 07 / 2001 05 : 23 pm\nto : mark palmer / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , j _ martin @ baylor . edu\nsubject : the latest ( last ? )\nmark !\nplease review the attached article and forward your comments / authorization\nfor its use to john martin at baylor , copying me and vince .\njohn and vince ,\ni have a few simple comments :\n1 . please use \" enron corp . \" [ rather than \" enron corporation \" ]\n2 . page 3 : as of yesterday , fortune magazine named enron \" most innovative \"\nfor the sixth year in a row\n3 . page 5 : 2 nd paragraph : regarding the \" gas bank \" concept - - i believe when\njeff first introduced it , it fell flat . i think john pick ' s that up ( and\nenron ' s subsequent recovery of a version of the concept on p . 6 ) , but it ' s\nprobably accurate to mention that at first , it didn ' t go over .\n4 . page 13 : re : cindy olson ' s comment on a possible 5 x difference between\na \" satisfactory \" and \" superior \" vp - - the difference referred to is probably\nthe \" bonus \" rather than \" compensation \" ( which , to me , is generally means\nbase salary ) ; also , it varies for each review period , as comparative\nperformance might vary ; further , we might want to run that quote by cindy\njust to make sure she ' s ok with it ' s publication ( she might have no problem\nwith it whatsoever , but i know for other articles , she ' s been more reluctant\nto provide that kind of statistic ) .\n5 . page 17 ( after annual report quote ) : i suggest changing \" enron ' s\nwholesale business . . . provides \" to \" . . . businesses . . provide \" ; also , rather\nthan \" enron wholesale \" we might want to define this by the term enron uses :\n\" enron wholesale services \"\n6 . page 18 : 2 nd paragraph : the tense switching from past to present is\ntechnically correct if read carefully , but seems awkward when reading it\n7 . page 19 : effective february , jeff skilling is \" ceo \" .\n. . . that ' s my 2 - cents worth ! ! i think the article is great . . . even\ninteresting ( ha ! ) . . . even to non - mba ' s like me ! !\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 07 / 2001 04 : 41 pm - - - - -\nvince j kaminski\n02 / 02 / 2001 08 : 45 am\nto : mark s palmer / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\nsubject : the latest ( last ? )\nmark ,\ni am sending you the final ( ? ) draft of the paper by john martin\non enron ' s transformation . john martin is a prof from baylor who visited us\na few weeks ago .\ncan you take a look at the paper and bless it . i haven ' t read this last\nversion\nof the paper yet and i will go through it on weekend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 02 / 2001\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 02 / 01 / 2001 04 : 15 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : the latest ( last ? )\nvince ,\nattached is my latest attempt to wrap everything together . our timetable\nis very short as we need an \" approved by enron \" version of the paper to don\nby next wednesday . don has already made editorial changes for us and may\nmake some additional \" writing style \" changes but he doesn ' t change the\ncontent .\ni ' ll give you a call later today to alert you to the e - mail .\ntake care ,\njohn\np . s . i had a nice conversation with steve . sounds like he ' s landed a\npretty good contract with wiley .\n- enron _ paper _ 2 _ 1 _ 01 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.628+0000", "entityId": 9845, "properties": {"text": "Subject: the latest ( last ? )\n. . as columbo would say . . \" . . just one more thing \"\np . 20 last bullet : enron focusing on recruiting and retaining talent\nthanks again ! christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 07 / 2001 05 : 24 pm - - - - -\nchristie patrick\n02 / 07 / 2001 05 : 23 pm\nto : mark palmer / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , j _ martin @ baylor . edu\nsubject : the latest ( last ? )\nmark !\nplease review the attached article and forward your comments / authorization\nfor its use to john martin at baylor , copying me and vince .\njohn and vince ,\ni have a few simple comments :\n1 . please use \" enron corp . \" [ rather than \" enron corporation \" ]\n2 . page 3 : as of yesterday , fortune magazine named enron \" most innovative \"\nfor the sixth year in a row\n3 . page 5 : 2 nd paragraph : regarding the \" gas bank \" concept - - i believe when\njeff first introduced it , it fell flat . i think john pick ' s that up ( and\nenron ' s subsequent recovery of a version of the concept on p . 6 ) , but it ' s\nprobably accurate to mention that at first , it didn ' t go over .\n4 . page 13 : re : cindy olson ' s comment on a possible 5 x difference between\na \" satisfactory \" and \" superior \" vp - - the difference referred to is probably\nthe \" bonus \" rather than \" compensation \" ( which , to me , is generally means\nbase salary ) ; also , it varies for each review period , as comparative\nperformance might vary ; further , we might want to run that quote by cindy\njust to make sure she ' s ok with it ' s publication ( she might have no problem\nwith it whatsoever , but i know for other articles , she ' s been more reluctant\nto provide that kind of statistic ) .\n5 . page 17 ( after annual report quote ) : i suggest changing \" enron ' s\nwholesale business . . . provides \" to \" . . . businesses . . provide \" ; also , rather\nthan \" enron wholesale \" we might want to define this by the term enron uses :\n\" enron wholesale services \"\n6 . page 18 : 2 nd paragraph : the tense switching from past to present is\ntechnically correct if read carefully , but seems awkward when reading it\n7 . page 19 : effective february , jeff skilling is \" ceo \" .\n. . . that ' s my 2 - cents worth ! ! i think the article is great . . . even\ninteresting ( ha ! ) . . . even to non - mba ' s like me ! !\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 07 / 2001 04 : 41 pm - - - - -\nvince j kaminski\n02 / 02 / 2001 08 : 45 am\nto : mark s palmer / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\nsubject : the latest ( last ? )\nmark ,\ni am sending you the final ( ? ) draft of the paper by john martin\non enron ' s transformation . john martin is a prof from baylor who visited us\na few weeks ago .\ncan you take a look at the paper and bless it . i haven ' t read this last\nversion\nof the paper yet and i will go through it on weekend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 02 / 2001\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" john d . martin \" on 02 / 01 / 2001 04 : 15 : 36 pm\nto : vkamins @ enron . com\ncc :\nsubject : the latest ( last ? )\nvince ,\nattached is my latest attempt to wrap everything together . our timetable\nis very short as we need an \" approved by enron \" version of the paper to don\nby next wednesday . don has already made editorial changes for us and may\nmake some additional \" writing style \" changes but he doesn ' t change the\ncontent .\ni ' ll give you a call later today to alert you to the e - mail .\ntake care ,\njohn\np . s . i had a nice conversation with steve . sounds like he ' s landed a\npretty good contract with wiley .\n- enron _ paper _ 2 _ 1 _ 01 . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.633+0000", "entityId": 9846, "properties": {"text": "Subject: here ' s the typeset version\nvince ,\nattached is a copy of the typeset version that i will be reading today . i\nwill check to make sure that all the changes you gave me this weekend are\nincorporated . i will also be writing a 200 word summary for the paper\ntoday and will pass that by you as well .\nhave a great day .\njohn\np . s . i ' ll call shirley about the revenue question i sent you yesterday .\n- 134 martin - cxl . pdf\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.637+0000", "entityId": 9847, "properties": {"text": "Subject: raptors\nhere is the most recent version of the spreadsheet and the accompanying\nassumptions .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.642+0000", "entityId": 9848, "properties": {"text": "Subject: venue details for energy derivatives and weather derivatives course\nand workshops\nthe venue details for the courses are the following :\n?\ncity : ? houston\nhotel : ? hyatt regency houston\naddress : ? located in the center of downtown houston\n1200 louisiana\nhouston , tx ? 77002 usa\n?\ntelephone : ? + 1 713 654 1234\nfax : ? + 1 713 951 0934\n?\nwe have ? been offered a room rate of us $ 199 a night . ? your company may be\nable to obtain a better quote , by contacting them directly . ? ? however , at\nreservations , they may not have the course name and information logged into\ntheir system yet because this is being handled directly by their catering\nmanager . ? if you would like us to make your hotel reservations , we would\nneed your arrival date and departure date . ?\n?\nthe ? itinerary for each day of the course is as follows :\n?\n9 : 00 ? ? ? start\n10 : 30 ? coffee break\n12 : 30 ? lunch\n15 : 30 ? coffee break\n17 : 30 ? approximate finish\n?\ncourse format will consist of segments of lecture followed by computer based\nworkshops ( two a day ) . ? if you need anything further , please contact us .\n?\nsincerely ,\njulie\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.652+0000", "entityId": 9849, "properties": {"text": "Subject: summer hire\nmolly ,\nwe would like to hire mr bhalachandra mehendale for a summer position . he is\ncurrently working on his ms finance at u . of wisconsin and is scheduled to\nfinish december 2001 . his resume is attached .\nhe will be available from about may 28 until the end of august . please let\nme know what additional info you need research to provide .\nregards ,\nstinson\n- bhala _ resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.659+0000", "entityId": 9850, "properties": {"text": "Subject: hello guys ,\ni ' m \" bugging you \" for your completed questionnaire and for a one - page\nbio / statement on your thoughts on \" business edu and the new economy \" . if\nmy records are incorrect please re - ship your responses to me . i want to\nput everything together next week so that i can ship it back to everyone .\nthe questionnaire is attached as well as copies of the bio pages for\nmichael froehls and myself ( two somewhat different approaches ) . the idea\nof the latter is just to introduce yourself to the other panelists and give\nthem some background on how you are approaching the issues we will discuss .\nwe will also provide copies to the attendees and use this material for our\npersonal introductions at the opening of the panel discussions .\nthanks and i look forward to seeing you in two weeks .\njohn\n- waco _ background _ mf . doc\n- jmartinbiosketch . doc\n- questionnaire . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.665+0000", "entityId": 9851, "properties": {"text": "Subject: java class starting feb 20 th .\nsome notes on the upcoming java class . we have an extremely high interest\nin the class , which is good , but since we are limited to 15 students , not\neveryone who expressed an interest could be accomodated .\nthose registered are :\n1 martin lin\n2 . chonawee\n3 . tom barkley\n4 . lance cunningham\n5 . seksan kiatsupaibul\n6 . wichai narongwanich\n7 . praveen mellacheruvu\n8 . sevil yaman\n9 . stephen bennett\n10 . sam smith\n11 . jason sokolov\n12 . jaesoo lew\n13 . amitava dhar\n14 . george hopley ' s group\n15 . george hopley ' s group\neach person taking the class will need to find a laptop computer ( shirley may\nbe able to help ) and be sure that the proper software is installed before the\ncourse . chonawee will try to install the s / w on his laptop as a test case .\nthe class is divided into two weeks . each week consisting of 4 days , noon\nto 5 p . m . the first four days are feb 20 - 23 , so mark your calendars . the\nclasses in feb . will be in 30 cl ( tuesday ) and 30 c 2 ( remainder of the week ) .\nif you can not attend please let me know , so that others who want to take the\nclass can take your place .\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.669+0000", "entityId": 9852, "properties": {"text": "Subject: gas model\nsorry so much time has passed since we last discussed your north american gas\nmodel . i am however still interested in setting up a test process to\nfamiliarize some of our key people with the model and the database , etc .\ni am now reviewing the licensing agreement that you submitted in december and\nwill be back in touch soon . i need to discuss this further with the business\nsegments , but i suspect that our interest will be focused more on the long\nterm gas model .\nanother member of your firm had called last week , but i somehow misplaced his\nname and number . i thought that an e - mail response would suffice for now .\nmy apologies .\nregards ,\njohn goodpasture", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.674+0000", "entityId": 9853, "properties": {"text": "Subject: credit reserve model meeting\nvince ,\nthe number you will need to call - in for the credit reserve model meeting on\ntuesday , february 13 at 4 : 00 is 713 . 345 . 3324 .\nif you have any questions , please do not hestitate to call me at x 33565 .\nthank you .\nterri greenlee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.679+0000", "entityId": 9854, "properties": {"text": "Subject: re : charm conference call\njim ,\ni was on vacation last week . i shall be out tuesday and wednesday .\nwhat about a call next week ?\nvince\njames l bouillion\n02 / 07 / 2001 09 : 32 am\nto : vince j kaminski / hou / ect @ ect , kevin kindall / corp / enron @ enron , jonathan\ndavis / hou / ect @ ect , kate lucas / hou / ect @ ect\ncc :\nsubject : charm conference call\nplease let me know what works for you . i have a meeting monday from 10 : 00\na . m . through lunch . please advise .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james l bouillion / hou / ect on 02 / 07 / 2001\n07 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" bertil olsson \" on 02 / 06 / 2001 10 : 37 : 21 am\nto : james . l . bouillion @ enron . com\ncc :\nsubject : charm conference call\ncarl and i are both available either monday 12 th or tuesday 13 th . we can do\neither am or pm but would prefer am if possible . please let me know your\npreference and i will set it up .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.684+0000", "entityId": 9855, "properties": {"text": "Subject: re : synfuel option valuation\nlenny ,\ni believe that you must have done your home work on the the tax credit\nissue . however , it may\nmake sense to create some kind of reserve in case the tax credit is removed\nin the future .\ni am glad that you like the way we treat the tax credit , which is built into\nthe strike price for the\ndigital option . with the tax credit , it is most likely the option will be\nexercised .\npaulo issler is the person who worked on this model initially . he will be\nback this wednesday .\nwe can talk to him about the standard deviation he put into the model .\nzimin\nlenny hochschild @ enron\n02 / 12 / 2001 08 : 15 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : re : synfuel option valuation\nzimin ,\nthanks for your e - mail . sorry for the late reply , i was travelling last week .\ni ' m under the impression that the with the new administration , there is a\ngreater chance that section 29 will be extended beyond 2007 than repealed . if\nthis happens , we contractually have the right to extend this contract . we\nhave not valued the chance of this happening , so i don ' t think we should\nvalue the chance of this not happening .\nanyways , let me speak to my supervisor on this and revert .\nin the meantime , i looked over the amendment you made with regard to adding\nthe second strike of the tax credit and think this is now reflective of the\ndeal and am happy with it . i still do not understand a few things re : where\ndid the st . deviations come from . i believe you said that someone who works\nfor you put this together but was away last week .\nplease revert with his / her name so that i can get together and understand\nthis .\nthanks .\nlenny\nzimin lu @ ect\n02 / 06 / 2001 01 : 09 pm\nto : lenny hochschild / na / enron @ enron\ncc : eric groves / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : synfuel option valuation\nlenny ,\ni think we had a good discussion about the deal valuation .\none thing , i think you are prefectly aware of it , is that the economics\nof this deal is driven by the tax credit ( $ 25 . 03 ) . the risk on our side\nis that if the tax credit is removed , aig will not deliver the synfuel\nand pay $ 4 . 55 to us .\nvince mentioned that congress might act quickly enough to eliminate\nthe tax benefit . i just want to remind you we should take this risk\ninto consideration .\nzimin\nps :\ni changed the results in sheetl slightly . the values in column a was shifted\nby 0 . 5 . use the attached model .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.689+0000", "entityId": 9856, "properties": {"text": "Subject: re : fw : invitation to 2001 energy finance conference - the\nuniversity of texas at austin\njoe ,\ni shall probably ask tanya to attend . it coincides with parents '\nweekend at stanford . please , send me the slides anyway .\ni shall help tanya to prepare her presentation .\nvince\nfrom : joseph hrgovcic / enron @ enronxgate on 02 / 12 / 2001 09 : 47 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : invitation to 2001 energy finance conference - the university of\ntexas at austin\nvince ,\ni understand you ' ll be speaking at the cefer conference . gary taylor , the\nhead of marketing in the weather deriv . group , would like to know if you plan\non mentioning weather derivatives at all and that if you do , he has numerous\nexisting slides and presentations that might be useful to you .\njoe\n- - - - - original message - - - - -\nfrom : angela dorsey [ mailto : angela . dorsey @ bus . utexas . edu ]\nsent : wednesday , january 10 , 2001 9 : 06 pm\nto : angela dorsey\ncc : ehud ronn ; sheridan titman ( e - mail )\nsubject : invitation to 2001 energy finance conference - the university of\ntexas at austin\ncolleagues and friends of the center for energy finance education and\nresearch ( cefer ) :\nhappy new year ! hope you all had a wonderful holiday season .\non behalf of the university of texas finance department and cefer , we\nwould\nlike to cordially invite you to attend our :\n2001 energy finance conference\naustin , texas\nfebruary 22 - 23 , 2001\nhosted by the university of texas finance department\ncenter for energy finance education and research\ndr . ehud i . ronn and dr . sheridan titman are currently in the process of\nfinalizing the details of the conference agenda . we have listed the\nagenda\noutline below to assist you in your travel planning . each conference\nsession will be composed of a panel discussion between 3 - 4 guest\nspeakers\non the designated topic .\nas supporters of the center for energy finance education and research ,\nrepresentatives of our trustee corporations ( enron , el paso , reliant ,\nconoco , and southern ) will have the $ 500 conference fee waived .\nthe conference package includes thursday evening ' s cocktails &\ndinner and hotel / ut shuttle service , as well as friday ' s conference\nmeals ,\nsession materials and shuttle service . travel to austin and hotel\nreservations are each participant ' s responsibility .\na limited number of hotel rooms are being tentatively held at the\nradisson\nhotel on town lake under the group name \" university of texas finance\ndepartment \" for the nights of thursday , 2 / 22 / 01 and friday , 2 / 23 / 01 ( the\nlatter evening for those who choose to stay in austin after the\nconference ' s conclusion ) . to guarantee room reservations , you will need\nto\ncontact the radisson hotel at ( 512 ) 478 - 9611 no later than monday ,\njanuary\n22 nd , and make your reservations with a credit card . please let me know\nwhen you have made those arrangements so that i can make sure the\nradisson\ngives you the special room rate of $ 129 / night .\nplease rsvp your interest in attending this conference no later than\njanuary 22 nd to angela . dorsey @ bus . utexas . edu , or ( 512 ) 232 - 7386 , as\nseating\navailability is limited . please feel free to extend this invitation to\nyour colleagues who might be interested in attending this conference .\ncenter for energy finance education and research\nprogram of the 2001 energy finance conference\nfebruary 22 - 23 , 2001\nthursday , feb 22 :\n3 : 00 p . m . reserved rooms at the radisson hotel available for\ncheck - in\n5 : 30 p . m . bus will pick up guests at the radisson for transport to\nut club *\n6 : 00 p . m . cocktails , ut club 9 th floor\n7 : 00 p . m . dinner , ut club\n8 : 00 p . m . keynote speaker\n9 : 00 p . m . bus will transport guests back to hotel\nfriday , feb 23 :\n7 : 45 a . m . bus will pick up at the radisson for transport to ut\n8 : 30 a . m . session 1 - real options\npanelists : jim dyer , ut ( chair )\nsheridan titman , ut\njohn mccormack , stern stewart & co .\n10 : 00 a . m . coffee break\n10 : 15 a . m . session 2 - deregulation\npanelists : david eaton , ut ( chair )\ndavid spence , ut\njeff sandefer , sandefer capital\npartners / ut\npeter nance , teknecon energy risk\nadvisors\n11 : 45 a . m . catered lunch & keynote speaker\n1 : 30 p . m . guest tour - eds financial trading & technology center\n2 : 00 p . m . session 3 - risk management\npanelists : keith brown , ut ( chair )\nvince kaminski , enron\nalexander eydeland , southern co .\nehud i . ronn , ut\n3 : 30 p . m . snack break\n3 : 45 p . m . session 4 - globalization of the energy business\npanelists : laura starks , ut ( chair )\nbob goldman , conoco\nray hill , southern co .\n5 : 15 p . m . wrap - up\n5 : 30 p . m . bus picks up for transport to airport / dinner\n6 : 30 p . m . working dinner for senior officers of energy finance\ncenter\ntrustees\n* we have made arrangements to provide shuttle service between the\nradisson\nhotel and ut during the conference . however , if you choose to stay at an\nalternative hotel , then transportation to conference events\nwill become your responsibility .\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.694+0000", "entityId": 9857, "properties": {"text": "Subject: fw : invitation to 2001 energy finance conference - the university\nof texas at austin\nvince ,\ni understand you ' ll be speaking at the cefer conference . gary taylor , the\nhead of marketing in the weather deriv . group , would like to know if you plan\non mentioning weather derivatives at all and that if you do , he has numerous\nexisting slides and presentations that might be useful to you .\njoe\n- - - - - original message - - - - -\nfrom : angela dorsey [ mailto : angela . dorsey @ bus . utexas . edu ]\nsent : wednesday , january 10 , 2001 9 : 06 pm\nto : angela dorsey\ncc : ehud ronn ; sheridan titman ( e - mail )\nsubject : invitation to 2001 energy finance conference - the university of\ntexas at austin\ncolleagues and friends of the center for energy finance education and\nresearch ( cefer ) :\nhappy new year ! hope you all had a wonderful holiday season .\non behalf of the university of texas finance department and cefer , we\nwould\nlike to cordially invite you to attend our :\n2001 energy finance conference\naustin , texas\nfebruary 22 - 23 , 2001\nhosted by the university of texas finance department\ncenter for energy finance education and research\ndr . ehud i . ronn and dr . sheridan titman are currently in the process of\nfinalizing the details of the conference agenda . we have listed the\nagenda\noutline below to assist you in your travel planning . each conference\nsession will be composed of a panel discussion between 3 - 4 guest\nspeakers\non the designated topic .\nas supporters of the center for energy finance education and research ,\nrepresentatives of our trustee corporations ( enron , el paso , reliant ,\nconoco , and southern ) will have the $ 500 conference fee waived .\nthe conference package includes thursday evening ' s cocktails &\ndinner and hotel / ut shuttle service , as well as friday ' s conference\nmeals ,\nsession materials and shuttle service . travel to austin and hotel\nreservations are each participant ' s responsibility .\na limited number of hotel rooms are being tentatively held at the\nradisson\nhotel on town lake under the group name \" university of texas finance\ndepartment \" for the nights of thursday , 2 / 22 / 01 and friday , 2 / 23 / 01 ( the\nlatter evening for those who choose to stay in austin after the\nconference ' s conclusion ) . to guarantee room reservations , you will need\nto\ncontact the radisson hotel at ( 512 ) 478 - 9611 no later than monday ,\njanuary\n22 nd , and make your reservations with a credit card . please let me know\nwhen you have made those arrangements so that i can make sure the\nradisson\ngives you the special room rate of $ 129 / night .\nplease rsvp your interest in attending this conference no later than\njanuary 22 nd to angela . dorsey @ bus . utexas . edu , or ( 512 ) 232 - 7386 , as\nseating\navailability is limited . please feel free to extend this invitation to\nyour colleagues who might be interested in attending this conference .\ncenter for energy finance education and research\nprogram of the 2001 energy finance conference\nfebruary 22 - 23 , 2001\nthursday , feb 22 :\n3 : 00 p . m . reserved rooms at the radisson hotel available for\ncheck - in\n5 : 30 p . m . bus will pick up guests at the radisson for transport to\nut club *\n6 : 00 p . m . cocktails , ut club 9 th floor\n7 : 00 p . m . dinner , ut club\n8 : 00 p . m . keynote speaker\n9 : 00 p . m . bus will transport guests back to hotel\nfriday , feb 23 :\n7 : 45 a . m . bus will pick up at the radisson for transport to ut\n8 : 30 a . m . session 1 - real options\npanelists : jim dyer , ut ( chair )\nsheridan titman , ut\njohn mccormack , stern stewart & co .\n10 : 00 a . m . coffee break\n10 : 15 a . m . session 2 - deregulation\npanelists : david eaton , ut ( chair )\ndavid spence , ut\njeff sandefer , sandefer capital\npartners / ut\npeter nance , teknecon energy risk\nadvisors\n11 : 45 a . m . catered lunch & keynote speaker\n1 : 30 p . m . guest tour - eds financial trading & technology center\n2 : 00 p . m . session 3 - risk management\npanelists : keith brown , ut ( chair )\nvince kaminski , enron\nalexander eydeland , southern co .\nehud i . ronn , ut\n3 : 30 p . m . snack break\n3 : 45 p . m . session 4 - globalization of the energy business\npanelists : laura starks , ut ( chair )\nbob goldman , conoco\nray hill , southern co .\n5 : 15 p . m . wrap - up\n5 : 30 p . m . bus picks up for transport to airport / dinner\n6 : 30 p . m . working dinner for senior officers of energy finance\ncenter\ntrustees\n* we have made arrangements to provide shuttle service between the\nradisson\nhotel and ut during the conference . however , if you choose to stay at an\nalternative hotel , then transportation to conference events\nwill become your responsibility .\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.699+0000", "entityId": 9858, "properties": {"text": "Subject: re : clewlow / strickland derivatives book\nandy ,\nplease , give me the number of copies and i can order on your behalf at 15 %\ndiscount .\nvince\nandy m l anderson @ ees\n02 / 07 / 2001 10 : 18 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : clewlow / strickland derivatives book\nvince :\ndo you have an internal person i could go through to obtain copies of the\nderivatives book you showed us at the garp meeting ? i am ordering a few\ncopies for my risk guys .\ni look forward to talking with you soon , economist to economist . thanks , andy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.704+0000", "entityId": 9859, "properties": {"text": "Subject: re : technical corner article\ntanya ,\nlooks good . we should break it up in 2 parts .\nvince\ntanya tamarchenko\n02 / 09 / 2001 10 : 36 am\nto : vince j kaminski / hou / ect @ ect\ncc : william smith / corp / enron\nsubject : re : technical corner article\nvince ,\nsee if this is a good article for our technical corner .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.708+0000", "entityId": 9860, "properties": {"text": "Subject: praca dyplomowa\nniniejszym potwierdzam , ze nastepujacy studenci zlozyli prace dyplomowe :\njerzy seremak prezentacja instrument ? w analizy finansowej jako\npodstawa oceny wybranego podmiotu\nw kr ? tkim i dlugim okresie czasu ocena : bardzo dobra\nwaldemar mr ? z controlling w przedsiobiorstwie ocena : bardzo dobra\nt . blach analiza wskaznikowa ocena : bardzo dobra\nw . kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.713+0000", "entityId": 9861, "properties": {"text": "Subject: re : bogdan szopa - cv\nshawn ,\ni have met bogdan a few times socially . he graduated from the same university\ni went to in poland .\nhe seems to be a dynamic and a personable guy .\nhe has experience that may be useful to your group .\nvince\nshawn cumberland @ enron _ development\n02 / 12 / 2001 08 : 08 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : bogdan szopa - cv\nvince :\ncan you give me some background on bogdan ?\nmany thanks . shawn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shawn cumberland / enron _ development on\n02 / 12 / 2001 08 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nawenda 2000 @ cs . com on 02 / 11 / 2001 11 : 26 : 12 pm\nto : shawn . cumberland @ enron . com\ncc :\nsubject : bogdan szopa - cv\ndear shawn ,\nit was a pleasure talking to you today . i will call you upon my return from\neurope . in the meantime we will stay in touch via e - mail .\nenclosed is my curriculum vitae .\nbest regards ,\nbogdan m . szopa\n- bogdan res . . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.718+0000", "entityId": 9862, "properties": {"text": "Subject: re : greg spaniolo resume\njohnny ,\ngreg spaniolo seems to be better suited for work in liquid markets - - certainly\nnot the situation with coal and emissions . brad romiane suggested that vince\nkaminski might be interested in this resume .\nas far as my search goes , keep an eye out for the bs and ms - level folks .\nthanks .\njeff\njohnny palmer @ enron _ development\n02 / 12 / 2001 10 : 15 am\nto : jeff andrews @ enron\ncc :\nsubject : greg spaniolo resume\njeff ,\nplease advise me of your interest in greg ' s experience .\nthanks ,\njohnny\n- - - - - - - - - - - - - - - - - - - - - - forwarded by johnny palmer / enron _ development on\n02 / 12 / 2001 10 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" gregory v . spaniolo \" on 02 / 12 / 2001 10 : 12 : 58 am\nto : johnny . palmer @ enron . com\ncc :\nsubject : resume\nhere is my resume .\ngreg\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.723+0000", "entityId": 9863, "properties": {"text": "Subject: bogdan szopa - cv\nvince :\ncan you give me some background on bogdan ?\nmany thanks . shawn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shawn cumberland / enron _ development on\n02 / 12 / 2001 08 : 12 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nawenda 2000 @ cs . com on 02 / 11 / 2001 11 : 26 : 12 pm\nto : shawn . cumberland @ enron . com\ncc :\nsubject : bogdan szopa - cv\ndear shawn ,\nit was a pleasure talking to you today . i will call you upon my return from\neurope . in the meantime we will stay in touch via e - mail .\nenclosed is my curriculum vitae .\nbest regards ,\nbogdan m . szopa\n- bogdan res . . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.728+0000", "entityId": 9864, "properties": {"text": "Subject: next eprm article\nhi vince\nthe next article is due by the end of the week - apologies for the lateness .\ncould you have a look at the attached draft and let us have your comments in\nthe next couple of days .\nthanks\nles .\n- eprm _ 08 _ analytical _ pricing . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.734+0000", "entityId": 9865, "properties": {"text": "Subject: re : visit to houston\nmartin ,\nall other things equal , i would prefer march 2 nd as the following friday is\nthe beginning of spring break for hisd . can you check with racicot and\nfallon ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 12 / 2001\n11 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 02 / 09 / 2001 11 : 33 : 33 am\nto : stinson . gibner @ enron . com\ncc : gappy @ stanford . edu , cope @ csli . stanford . edu\nsubject : re : visit to houston\nhi stinson ,\neventually , the team here ( giuseppe , eric , myself ) has converged to two\npossible dates to propose for a visit :\n1 ) friday , march 2\n2 ) friday , march 9\nhow do these look on your side ?\nwe ' ll structure the agenda immediately after we fix the date .\ni look forward to seeing you again .\nbest ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i hope things are going well and you are not staying too busy . we should\n> start planning for your next trip to houston , as i ' m sure your schedule\n> will be getting full very soon . perhaps you could give the people in\n> enron broadband an overview of the areas of interest within your research\n> group . i ' m sure we could also benefit from you views of how the current\n> technology is evolving .\n>\n> are there certain dates which would potentially work for you ? please let\n> me know by email or give me a call at 713 853 4748 .\n>\n> looking forward to talking with you .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.739+0000", "entityId": 9866, "properties": {"text": "Subject: one page background and position statement\nguys ,\nattached are the \" one - page \" background / position statements that i have\nreceived to date ( with the exception of mike korpi ' s which i left at home ) .\nif you haven ' t provided me with this material please do so asap and if you\ndid please give my any edits you might like to make to the attached pages .\nthanks\njohn\np . s . its rainey and 60 ' s this week but we ' ve put in an order for 70 ' s and\nsunshine for next week ' s conference .\n- bennett _ stewart . doc\n- david palumbo current bio . doc\n- g _ ferrell . doc\n- jmartinbiosketch . doc\n- m _ froehls . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.744+0000", "entityId": 9867, "properties": {"text": "Subject: re : tradespark\nvince ,\nthanks for the tradespark article .\ni very much appreciate being able to participate in the applied learning\nprojects . it has been very stimulating for me . i ' ve really enjoyed all the\nprojects i ' ve worked on with the research group , and ever since my interview\ni have had plenty of second thoughts about going back to graduate school .\ni ' m sure mit will be a good and unique experience , but i wonder if it can\nhelp me find a job and a community i enjoy as much as i already have here .\nif possible , i would like to talk with you and / or stinson about the\npossibility of my staying on the research team , or coming back after the\nfall .\nthanks for your time .\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.749+0000", "entityId": 9868, "properties": {"text": "Subject: re : technical training at the houston energy expo !\nvince :\nlooks like an excellent value overall if they cover the same topics in these\nclasses as in the enron internal classes . the website says that registering\nfor one of the classes automatically registers you to the expo . i would like\nto recommend them to my team . did someone from our group already register for\nthis ?\nthanks\nkrishna .\nvince j kaminski\n02 / 12 / 2001 01 : 50 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : technical training at the houston energy expo !\nkrishna ,\nplease , take a look .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 12 / 2001\n01 : 50 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlana moore on 02 / 07 / 2001 10 : 53 : 05 am\nto : nesa members\ncc :\nsubject : technical training at the houston energy expo !\ntechnical training\nin conjunction with the\nhouston energy expo\nmarch 20 - 21 , 2001\nhyatt regency hotel - downtown\nwe are offering :\nfundamentals of electricity\nbasics of risk management\nnatural gas - wellhead to burnertip\nthere are only 25 spots in each class , so sign up today !\ngo to www . nesanet . org , in educational programs\neach class is listed with details and a registration form .\nmember price is $ 545 per person .\nnon - member price is $ 745 per person .\nif you have any questions , please give me a call ! !\nlana moore\n( 713 ) 856 - 6525", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.758+0000", "entityId": 9869, "properties": {"text": "Subject: re : visit to houston\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 13 / 2001\n04 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n02 / 13 / 2001 04 : 36 pm\nto : nick bambos @ enron\ncc :\nsubject : re : visit to houston\nnick ,\nfriday , march 9 seems to be better for jim fallon . we are tentatively\nsetting meeting with him , paul racicot , and probably arshak sarkissian who is\nheading the ip trading effort . let me know if you would like to give a\npresentation so we can reserve a room and send invitations .\nit will be fun to see you and giuseppe again . i am looking forward to your\nvisit .\nregards ,\nstinson\nnick bambos on 02 / 09 / 2001 11 : 33 : 33 am\nto : stinson . gibner @ enron . com\ncc : gappy @ stanford . edu , cope @ csli . stanford . edu\nsubject : re : visit to houston\nhi stinson ,\neventually , the team here ( giuseppe , eric , myself ) has converged to two\npossible dates to propose for a visit :\n1 ) friday , march 2\n2 ) friday , march 9\nhow do these look on your side ?\nwe ' ll structure the agenda immediately after we fix the date .\ni look forward to seeing you again .\nbest ,\nnick\nstinson . gibner @ enron . com wrote :\n>\n> nick ,\n>\n> i hope things are going well and you are not staying too busy . we should\n> start planning for your next trip to houston , as i ' m sure your schedule\n> will be getting full very soon . perhaps you could give the people in\n> enron broadband an overview of the areas of interest within your research\n> group . i ' m sure we could also benefit from you views of how the current\n> technology is evolving .\n>\n> are there certain dates which would potentially work for you ? please let\n> me know by email or give me a call at 713 853 4748 .\n>\n> looking forward to talking with you .\n>\n> - - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.766+0000", "entityId": 9870, "properties": {"text": "Subject: howard london\nhi vince - i just got off the phone with rw and enron london .\nalec told me that howard is idle and waiting for your command and the\ncoordination of the directors .\nmelanie is working with vuthy rw directly on this for you and rachel quirk\nsaid she will contact you to set the time up . . . \" unofficially \" they were\ntrying to do something with howard tomorrow as i was told - not sure .\ni have a couple other candidates i would like to send you after i collect\nsome sleep ( 3 ; 30 am now ) - i ' ll send them to you after i wake .\none guy from oxford , worked citibank fixed income risk the other over at ford\nmotor company who is looking to move to london ( highly recommended by the\nprofessor ) .\ni ' ll send them later as to let you be the judge .\ntalk soon - thanks for the business !\njeff\nalways held in strict confidence .\njeff wesley\n949 813 2241 hotline\n347 487 8957 voice / fax us\n+ 44 ( 845 ) 3341644 uk\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.771+0000", "entityId": 9871, "properties": {"text": "Subject: avistar users and allocated charges\navistar has been installed globally to provide desktop conferencing .\nhardware and installation charges have been allocated by invoice to the\nrelevant location . the schedule below lists by business unit and rc the\nnumber of units and charges allocated . it will assume the monthly charge - out\nprocess .\nthe allocated dollars will be depreciated over a three year period to your\nrespective cost center beginning february 2001 .\nif you have any questions please feel free to call or e - mail , sheila glover ,\n3 - 3210 , or paige cox , 3 - 5428 .\nthanks . sheila", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.775+0000", "entityId": 9872, "properties": {"text": "Subject: iif / oxan - info sources\nvince ,\nwe would like to continue to receive the iif service for a cost to the\nresearch group of $ 15 , 000 per annum . can i ask you to approve this charge ?\nplease let me know if you ' d like to discuss . we decided to cancel the oxford\nanalytica service ( daily country briefs and access to the website ) as we are\ngetting consensus forecasts for fx and inflation from another source , so we\nwill not be subject to the $ 10 , 000 fee referenced below .\nthanks ,\ngwyn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 02 / 13 / 2001 01 : 55\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrobert johnston @ ect\n02 / 13 / 2001 09 : 46 am\nto : maureen raymond / hou / ect @ ect , gwyn koepke / na / enron @ enron\ncc : scott tholan / corp / enron @ enron\nsubject : iif / oxan\nhi maureen and gwyn -\non the oxford analytica front , i ' m glad you have found the service useful .\nour contract with them has expired and we are currently negotiating for more\nusers to have access . our current contract is for $ 50 k or $ 10 k per user per\nyear . we can charge $ 10 k back to you .\non the iif front , the invoice for $ 47 k is due at the end of the month . here\ni would propose that we pay two thirds ( to cover our costs and the costs of\nour competitive analysis colleagues in london ) , leaving $ 15 k for you to cover .\nsince we took on these services last year , we have expanded our range of\nsources and projects and are consequently trying to do more with less . thus i\nneed to allocate some of our costs from oxan and iif to other projects .\nlet me know what you think about this proposal . maureen , congratulations on\nyour secondment to enron metals ( gwyn mentioned it to me ) . fyi , our\ncolleague jim roth is providing competitive analysis support to joe gold and\njohn sherriff on that project from london .\nrj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.781+0000", "entityId": 9873, "properties": {"text": "Subject: termination payments - ees energy outsource agreements\nvince , attached is a very brief white paper on the issue of termination\npayments for facility closures and sales . i would like to discuss this\nconcept with you and some of your people in the coming days to establish\nwhether this has merit and how we might proceed . my assistant , cheryl\nbrashier , will set up some time with you .\nthanks .\nrichard", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.786+0000", "entityId": 9874, "properties": {"text": "Subject: as promised . . . 2 guys , vince\nhi vince ,\nhere are two guys :\nthe first asked for you ( the guy from oxford ) .\nthe second has a \" high profile \" name - brand risk job .\ncandidate 1 : done at oxford in sept . math finance .\nwill move anywhere necessary .\ncitibank / andersen consulting background .\nwell known candidate in london .\nfixed income / structured contol of 450 mil .\ni have direct ownership and contact with .\nthis guy is really impressive by phone !\nhighly recommended by dr . donnelly oxford\ncandidate 2 : no real investment banking / energy risk experiences . . . but , asked\nme to get him out in london as he and his wife lived / worked there for ford\ncredit europe . has operational risk skills and experience ! can probably steal\nhim away from ford ( ford has no agreement with me ) . . . he is fair game .\nthanks for the consideration !\njeff\nalways held in strict confidence .\njeff wesley\n949 813 2241 hotline\n347 487 8957 voice / fax us\n+ 44 ( 845 ) 3341644 uk\n* get free , secure online email at http : / / www . ziplip . com / *\n- oxfordagent 9498132241 . doc\n- fordmattagent 9498132241 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.791+0000", "entityId": 9875, "properties": {"text": "Subject: re : fea announces the release of @ energy 2 . 0\nthanks a lot , chris . yes , we only have one shared network license .\nzimin\nfrom : chris jeska / enron @ enronxgate on 02 / 15 / 2001 04 : 34 pm\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : re : fea announces the release of @ energy 2 . 0\nzmin ,\ni spoke with the provider of this software . am i to understand that there is\nonly one concurrent user server licence for this software ?\ni am almost completed and would like to test this out . let me know , thanks .\nchris\n57004\n- - - - - original message - - - - -\nfrom : lu , zimin\nsent : tuesday , february 06 , 2001 10 : 27 am\nto : jeska , chris\nsubject : fea announces the release of @ energy 2 . 0\nhere we go again .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 02 / 06 / 2001 10 : 25 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n02 / 06 / 2001 08 : 51 am\nto : chris jeska / na / enron\ncc :\nsubject : fea announces the release of @ energy 2 . 0\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 02 / 06 / 2001 08 : 49 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n01 / 31 / 2001 11 : 20 am\nto : zimin lu / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\nsubject : fea announces the release of @ energy 2 . 0\nzimin ,\nplease , take a look at it .\ni think we should download the update .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 01 / 31 / 2001\n11 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" michelle mendoza \" on 01 / 26 / 2001 02 : 33 : 14 pm\nto :\ncc :\nsubject : fea announces the release of @ energy 2 . 0\njanuary 26 , 2001\nvince kaminski\nenron north america corp .\n1400 smith street\n30 th floor , rm . 3036 b\nhouston , tx 77251 - 1188\n1 713 - 853 - 3848\ndear vince kaminski ,\nthis is to inform you of the release of @ energy 2 . 0 . ftp download\ninstructions are available immediately . the download instructions are\nincluded at the end of this email . your cd ' s and manuals will be shipped to\nyou within 2 weeks . please see below for more information regarding this new\nrelease .\nplease confirm that you are the correct recipient for this shipment and your\naddress above is correct by clicking reply and send . if any changes need to\nbe made , please make the changes above and reply .\n* * warning : please note that if you did not received a license key for\n@ energy after june 2000 , you will need to contact support @ fea . com or call\n510 . 548 . 6200 to obtain a new license key to enable the new version . * *\n* * swing users : @ energy / swing now replaces the \" swing \" product . see the\n@ energy user manual for a discussion of the changes . contact fea for the\nnecessary license keys . you will be able to run both the new and old swing\nsimultaneously .\nheres an overview of the new and changed features since version 1 . 6 :\n@ energy ( forward curve )\njump parameters are now calibrated for use in other @ energy functions .\ninputs and outputs to powercalib and comcalib have changed . see the\ncorresponding function syntax in the user guide for additional information .\n35 - 40 % speed improvement . the module is now out of beta .\n@ energy ( basics )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse indexswap , exoticswap , or optindexswap with floating price linked to a\nseries of futures dates , such futures dates need not be close to dates\nspecified in the forward curve input . a new utility function , pathutil ,\nallows you to simulate and visualize price paths consistent with the models\nsupported by @ energy . 25 - 30 % speed improvement .\n@ energy ( advanced )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse optdiffswap or diffswap with floating price linked to a series of\nfutures dates , such futures dates need not be close to dates specified in\nthe forward curve input . calspreadopt now allows for the specification of\ntwo different mean reversion rates . 30 - 35 % speed improvement .\n@ energy ( swing )\nswingopt and stripswingopt now allow for valuation of swing straddle\ncontracts with overall load constraints . 65 - 70 % speed improvement . the\nmodule is now out of beta .\n@ energy ( weather )\n30 - 35 % speed improvement .\nif you have any questions please feel free to contact us . we appreciate this\nopportunity to be of continuing service to enron north america corp . .\nregards ,\nmichelle mendoza\nsupport @ fea . com\n+ 1 - 510 - 548 - 6200\nfinancial engineering associates , inc . ( fea )\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nto download @ energy 2 . 0 via ftp , follow the following instructions :\nnote : using explorer leads to unpredictable results , so we suggest using\nnetscape or a dos shell .\nusing netscape :\nin the location box type : ftp : / / energy @ ftp . fea . com\npassword : 2 rbzxgv 5\nenergy - 2 . 0 - win 32 . exe is for windows 95 / 98 / 2000 / nt . download and run on\na local drive .\nusing a dos shell :\nat a dos prompt type : ftp ftp . fea . com\nuser : energy\npassword : 2 rbzxgv 5\ntype \" binary \" and hit ' return ' .\ntype \" ls \" for a list of available files .\ntype \" get \" energy - 2 . 0 - win 32 . exe and and wait for the ftp > prompt .\ntype \" quit \" .\nthe file will be downloaded into the directory at which you entered the ftp\nsite .\ndouble click on the exe and follow the instructions on the screen .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.796+0000", "entityId": 9876, "properties": {"text": "Subject: rdi project\nmichelle ,\ncecil and david ' s code was correct but could not match ken ' s spreadsheet\noutput due to a slight mis - specification in ken ' s excel spreadsheet . the code\nwas then modified to conform with ken ' s specification and results very close\nto that of ken were obtained . as of now ken ' s modifying his spreadsheet to\nre - run the results , the original correct code will be restored , and we will\nsee what\nhappens then . anyway this is rather encouraging .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.800+0000", "entityId": 9877, "properties": {"text": "Subject: weather course\nvince ,\n?\nwe just wanted to let you know that we only have 3 people signed up for the\nweather derivatives course ( all from enron ) so far . ? we have a couple more\nthat have expressed strong interest , but we are awaiting their final\ndecision . ? if no one else signs up , chris and les thought that you guys\ncould probably get through the first day pretty easily , ? and thus thought it\nmay be an option to teach just the 2 nd day material ( pricing ) only at enron\n( doing it at the hyatt is an option as well but the room might be on the\nlarge side ) ? ? we would obviously reimburse you for the day not taught . ? we\ncan teach both days as well , but thought you may want to save some time . ?\n?\ni just wanted to give you some time to think about it . ? we will know where\nwe stand on final numbers by next wednesday .\n?\njulie\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.805+0000", "entityId": 9878, "properties": {"text": "Subject: @ jones : news and information from the jones school\n@ jones : news and information from the jones school\nfebruary 15 , 2001\nforbes magazine survey request\nfinancial times rankings : jones school is in top ten in four categories ;\n35 th of 51 u . s . schools and 54 th of world ' s best 100 mba programs .\ndigital technology panel : february 20\n2001 alumni weekend : march 2 - 3\nlecture - - gordon bethune , ceo , continental airlines : march 5\nlecture - - bruce dunlevie , founder , benchmark capital : march 12\nneuhaus lecture - - c . k . prahalad , professor , university of michigan : march\n19\ndean ' s lecture - - rodney eads , executive vice president , el paso corp . :\napril 11\nblack leadership conference : april 27\nrice alliance continues expansion of network , enhances services\nseven rules for success in the new economy\ntips on financial risk management by marc shapiro , vice chairman , j . p .\nmorgan employed at three months ; finance ;\nentrepreneurship . overall , the jones was ranked 35 th of 51 u . s . schools and\n54 th among the world ' s best 100 graduate business schools .\nthe yale club of houston and the jones school hosts a panel discussion on\ndigital technology at 6 p . m . on tuesday , february 20 at 124 herring hall .\nrsvp by february 16 . cost is $ 20 for jones school alumni and $ 25 for\nnon - members / guests .\nthe 2001 alumni weekend reunion will be held march 2 - 3 , 2001 . register by\nfeb . 16 . http : / / jonesgsm . rice . edu / alumni / alumni _ weekend 2001 . html .\ngordon bethune , ceo of continental airlines , will speak at the jones school\nat 9 : 45 a . m . on monday , march 5 at 124 herring hall . alumni and students are\ninvited to attend the lecture .\nbruce dunlevie , founder and general partner of benchmark capital , will\nspeak at noon on monday , march 12 at the farnsworth pavilion , rmc / ley\nstudent center . jones school students and alumni are invited to attend .\nc . k . prahalad , harvey c . fruehauf professor of business administration at\nthe university of michigan business school in ann arbor , will deliver the\n2001 w . oscar neuhaus lecture at 9 : 45 a . m . on monday , march 19 , 124 herring\nhall .\nrodney w . eads , group executive vice president of merchant energy and\nproduction for el paso corp . , will speak at the dean ' s lecture series\nscheduled for 9 : 45 a . m . on wednesday , april 4 at 124 herring hall .\nthis year ' s black leadership conference , scheduled for april 27 , brings\ntogether mbas , lawyers , accountants , engineers , healthcare professionals ,\neducators , and entrepreneurs from houston to discuss key issues facing black\nprofessionals . last year ' s keynote speakers include ambassador cynthia\nshepherd perry , honorary consul general to senegal and ambassador berhane g .\nchristos , ambassador of ethiopia .\nthe rice alliance for technology and entrepreneurship enters its second year\ndetermined to enhance services that have promoted the entrepreneurial spirit\nin the rice community and in houston . the alliance brings together students ,\nfaculty , alumni and other rice - associated parties as collaborators , mentors\nand investors in engineering , science , software , or e - commerce innovations .\nmurray weidenbaum , founder and chairman of the murray weidenbaum center on\nthe economy , government , and public policy , joins the jones\nschool as the ken lay , vinson & elkins visiting scholar through may 31 . a\nnoted expert on american and global economics and top adviser on economic\nissues during the nixon and reagan administrations , weidenbaum is working on\na study of u . s . and international trade policy , developing a high middle\nground in a controversial area .\nmarc j . shapiro , vice chairman , j . p . morgan & chase , talked about six tenets\nof success in financial risk management at the jan . 22 dean ' s lecture .\na distinguished panel of e - commerce and energy industry leaders addressed\ncurrent trends and the future of e - commerce at the jan . 10 forum \" 2001 : an\ninternet odyssey \" jointly hosted by the rice alliance for technology and\nentrepreneurship , the jones school , rice university executive education , and\ntexasecomm .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nonline :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvisit the construction web cam url for up - to - the - minute live feeds of the\nnew jones school building construction .\nlearn about new and upcoming initiatives and programs at the school , and\nview artist renderings of the new $ 60 million building , currently under\nconstruction . http : / / jonesgsm . rice . edu / campaign / campaign . html\n@ jones : news and information from the jones school , the jones school\ne - newsletter , is published monthly by the public relations department of the\njesse h . jones graduate school of management . the jones school website\nhttp : / / jonesgsm . rice . edu is updated frequently and we\nencourage you to visit the site regularly to get the latest news and\ninformation about new initiatives and programs at the jones school . to\nsubmit items to be posted on the jones school website , please e - mail\njgsmnews @ rice . edu .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.810+0000", "entityId": 9879, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\neast power group\nenron power marketing , inc . ( epmi ) and enron wind corporation ( ewc ) have\njoined forces in a deal that combines the expertise of both enron\nsubsidiaries . ewc is developing the indian mesa wind farm in pecos county ,\ntx . epmi has agreed to purchase 135 mw of bundled capacity , energy and\nrenewable energy credits ( \u0001 firm dates will be announced soon .\nif you have customers in the area interested in attending , please contact\nlucy ortiz at 713 . 853 . 3238 .\nin the news\nwhat do enron , compaq , continental airlines and jpmorgan / chase bank know that\nthe city of houston doesn ' t ? they know that in order to attract top talent ,\nthey must stay competitive and current in the employment market .\ndomestic - partner benefits are a reality for those companies looking up toward\nthe future and down at the bottom line .\ndoes anyone really think these companies would be offering these benefits if\nthey weren ' t cost effective and in the companies ' best interests ? - - houston\nchronicle ( 02 / 11 / 2001 ) .\nwelcome\nnew hires\negm - kyle berryman / weather trading , carla murphy / operational accounting\neim - elizabeth hutchinson / fundamental analysis\nena - bryant frihart / origination enovate , lea sooter / public relations\nenrononline statistics\nbelow are figures for enrononline as of february 9 , 2001 .\n* total life to date transactions > 670 , 000\n* life to date notional value of transactions > $ 410 billion\nnuggets & notes\n\u0001 & who took the last twix out of the candy jar ? \u0001 8 - andrea reed , vice president\n/ fundamental analysis - eim\n\" i ' m having an out of body experience . . . \" - scott josey , vice president &\nco - manager / energy capital resources - ea\nnews from the global flash\nuk origination team closes first deal under neta\ncongratulations to the uk origination team for closing their first\ntransaction under neta and the first long - term customer contract to be signed\nunder neta terms . on 7 th february , the team signed a 10 - year electricity\nsupply contract with the manx electricity authority , making enron the sole\nsupplier of the isle of man ' s ( iom ) electricity requirements over the next\ndecade . in addition to providing power to the inhabitants of the iom , enron\nwill contractually manage the iom interconnector and all generation to the\niom .\nenron direct expanding customer service operations\nenron direct continues to go from strength to strength , and as a result of\ncontinued growth , is expanding its customer operations to teesside , creating\n46 new jobs . enron direct will be setting up a new customer service center\nat the etol administration building on the wilton international site . the new\ncenter is scheduled to open in april and will support enron direct ' s existing\ncall center and customer service operations in oxford . the 46 new employees\nwill be recruited locally .\nenron credit\nenron credit announces the closure of its largest european digital bankruptcy\nswap ( dbs ) transaction to date with a new counterparty . in addition to\ndetailed information on the dbs , registration on the web site\n( https : / / www . enroncredit . com / members / join . asp ) provides access to weekly\nbankruptcy blasts covering current credit risk topics .\nregister today on www . enroncredit . com and take a look at how some of your own\ncounterparties may be performing !\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.816+0000", "entityId": 9880, "properties": {"text": "Subject: avistar users and allocated charges\ni have several queries re the avister charges for london , primarily because\nthe spreadsheet is based on a total of 24 london users . we have a total of\n14 avistar users installed in london .\ni believe the following london departments may have been charged for the\nincorrect number of users :\nfin \u0001 , l trading - $ 74 , 418 . 83 based on 4 units but have 5 users\nrate & currency ( john greene not listed ? )\n342 - 100467\nsofts mg - $ 42 , 857 . 23 based on 4 units but have only 1 user\n1105 - 120415 ( nigel majury )\ncredit derivitives - $ 16 , 168 . 42 based on 2 units but none installed\n0342 - 102843 ( 3 users on via video pilot )\nliquids - $ 56 , 589 . 46 based on 7 units but only 6 installed\n872 c - 104546 ( niamh clarke no longer based in london )\nshankman london - $ 16 , 168 . 42 based on 2 units but none installed\n0342 - 103058 ( brad hitch / merrill thomas no longer in dept . )\neel - exec - $ 8 , 084 . 21 based on 1 unit for john sherriff who is\n0342 - 100309 on via video pilot - avistar not installed\nlegal london - $ 8 , 084 . 21 based on 1 unit for michael brown - avistar\n0342 - 100348 not installed\nlondon it - $ 16 , 168 . 42 based on two units but only one required\n0342 - 100348 to administer system\nthe above figures are based on an original average $ 10 , 276 per seat .\nhowever , a base change from 24 to 14 seats would increase the per seat charge\nto $ 17 , 616 .\nwe also ought to look at charging out the isdn calls charges for the avistar\nsystem ( in the region of $ 187 , 000 for 4 months ) .\nregards ,\nwilma\nx 37275\nmobile + 44 7771 887413\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sheila glover / hou / ect on 02 / 13 / 2001 02 : 07\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sheila glover 02 / 13 / 2001 02 : 08 pm\nto : mike mcconnell / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect , gary\nhickerson / hou / ect @ ect , per sekse / ny / ect @ ect , john l nowlan / hou / ect @ ect , jeff\nkinneman / hou / ect @ ect , vince j kaminski / hou / ect @ ect , mark tawney / hou / ect , john\nsherriff / lon / ect @ ect , michael r brown / lon / ect @ ect , nigel majury / lon / ect @ ect ,\nmarkus fiala / lon / ect @ ect , joseph p hirl / ap / enron @ enron , morten e\npettersen / ap / enron @ enron , paul quilkey / enron _ development @ enron _ development\ncc : paige cox / corp / enron , michael s galvan / hou / ect @ ect , wilma\nlow / lon / ect @ ect , hasan imam / corp / enron , brad lawson / na / enron\nsubject : avistar users and allocated charges\navistar has been installed globally to provide desktop conferencing .\nhardware and installation charges have been allocated by invoice to the\nrelevant location . the schedule below lists by business unit and rc the\nnumber of units and charges allocated . it will assume the monthly charge - out\nprocess .\nthe allocated dollars will be depreciated over a three year period to your\nrespective cost center beginning february 2001 .\nif you have any questions please feel free to call or e - mail , sheila glover ,\n3 - 3210 , or paige cox , 3 - 5428 .\nthanks . sheila", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.821+0000", "entityId": 9881, "properties": {"text": "Subject: wharton tiger team\nvince and kristin , i forwarded by separate emails the lists of tiger teams 1\nand 3 .\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 15 / 01 11 : 28 pm - - - - -\nkristin gandy @ enron\n02 / 15 / 01 01 : 07 pm\nto : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect\ncc :\nsubject : wharton tiger team\nvince and christie ,\ngreetings . i am writing because i need a break out of names for the tiger\nteam group 1 and 3 . i understand tiger team group 2 has decided not to be a\npart of enron and i also need to know who those students are . i have a\nlisting of all the tiger team members but they are listed alphabetically so\nthat does not help me with my quest . we are trying to firm up the details\nand get offers out to the correct people for summer associate positions in\nvince ' s department .\nregards ,\nkristin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.826+0000", "entityId": 9882, "properties": {"text": "Subject: re : question\nwill do .\njohn\nat 11 : 15 am 2 / 15 / 01 - 0600 , you wrote :\n>\n> john ,\n>\n> i think it ' s a good idea . please , go ahead and call\n> him directly .\n>\n> vince\n>\n>\n>\n>\n> \" john d . martin \" on 02 / 13 / 2001 06 : 12 : 48 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : question\n>\n>\n> vince ,\n>\n> what do you think about asking andy fastow to come to the texas finance\n> festival this april as our luncheon speaker ? if you agree i ' ll go ahead\n> and call him . if you have an opportunity to speak with him about the\n> conference that would be great . the date is april 21 st ( that ' s a\n> saturday ) .\n>\n> hope you are enjoying ny . shirley tells me that you ' re running up your\n> frequent flyer miles again .\n>\n> your friend ,\n>\n> john\n>\n> > date : tue , 13 feb 2001 17 : 29 : 42 - 0600\n> > from : sheridan titman\n> > subject : re : oops\n> > x - sender : titman @ mail . utexas . edu\n> > to : \" john d . martin \"\n> > x - mailer : windows eudora light version 3 . 0 . 1 ( 32 )\n> >\n> > john :\n> >\n> > i like your enron article . i will assign it to my students . do you think\n> > we can get the cfo for the tff ? i saw that he is making a presentation to\n> > a conference of cfos in dallas about capital structure .\n> >\n> > sheridan\n> >\n> > at 09 : 15 am 2 / 7 / 01 - 0600 , you wrote :\n> > >\n> > >\n> > >\n> > > john d . martin\n> > > carr p . collins chair in finance\n> > > finance department\n> > > baylor university\n> > > po box 98004\n> > > waco , tx 76798\n> > > 254 - 710 - 4473 ( office )\n> > > 254 - 710 - 1092 ( fax )\n> > > j _ martin @ baylor . edu\n> > > web : http : / / hsb . baylor . edu / html / martinj / home . html\n> > sheridan titman\n> > department of finance\n> > college of business administration\n> > university of texas\n> > austin , texas 78712 - 1179\n> >\n> > 512 - 232 - 2787 ( phone )\n> > 512 - 471 - 5073 ( fax )\n> >\n> > titman @ mail . utexas . edu\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.831+0000", "entityId": 9883, "properties": {"text": "Subject: re : gas model\nchaim ,\ni received a number of phone messages from you .\nthe project is now in the hands of john and i shall\nbe very happy to assist him when he is ready to move .\nhe is looking at the licensing agreement right now .\ntill then , i have to wait for him to make a decision .\nmy role in this project is one of a facilitator , technical\nconsultant .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 16 / 2001\n05 : 46 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : john goodpasture @ enron 02 / 13 / 2001 10 : 47 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : gas model\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by john goodpasture / ots / enron on 02 / 13 / 2001\n10 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dale m . nesbitt \" on 02 / 13 / 2001 08 : 25 : 12 am\nplease respond to\nto :\ncc :\nsubject : re : gas model\njohn :\nthanks so much for getting back to me . we remain keenly interested in doing\nthe preliminary project for you so that you can know how marketpoint works\nand how it might help you . we are ready to go on the test process as soon\nas you and your people are ready .\nyou heard from dr . chaim braun , altos vice president , who called you at my\nrequest to inquire about your demonstration project . i will mention to\nchaim that you expressed your interest via email to me . there is no need to\nphone him back until you are ready to go . chaim ' s email address is\nchaim . braun @ altosmgmt . com and he can be reached at the main altos number\n650 . 949 . 3541 . my personal phone number is 650 . 218 . 3069 .\ni look forward to working together .\ndale\n- - - - - original message - - - - -\nfrom : john . goodpasture @ enron . com [ mailto : john . goodpasture @ enron . com ]\nsent : monday , february 12 , 2001 3 : 04 pm\nto : dale m . nesbitt\ncc : vince . j . kaminski @ enron . com\nsubject : gas model\nsorry so much time has passed since we last discussed your north american\ngas model . i am however still interested in setting up a test process to\nfamiliarize some of our key people with the model and the database , etc .\ni am now reviewing the licensing agreement that you submitted in december\nand will be back in touch soon . i need to discuss this further with the\nbusiness segments , but i suspect that our interest will be focused more on\nthe long term gas model .\nanother member of your firm had called last week , but i somehow misplaced\nhis name and number . i thought that an e - mail response would suffice for\nnow . my apologies .\nregards ,\njohn goodpasture", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.835+0000", "entityId": 9884, "properties": {"text": "Subject: re : blood bank\nvince ,\ni must apologize . i have not had time to look over the proposal in any\ndetail . when i first spoke with your friend , it was apparent that he was\nstill pre - business plan stage . he has since sent me some ideas and\ninformation . i think the concept has merit , but there are so many political\nissues that i am concerned about the ultimate business viability .\ngive me the weekend to look over the information .\nthanks ,\nmark\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : friday , february 16 , 2001 10 : 00 am\nto : mark lay / hou / ect @ enron\nsubject : blood bank\nmark ,\nany further thoughts on the blood bank concept ?\nplease , let me know if i can be helpful ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.841+0000", "entityId": 9885, "properties": {"text": "Subject: re : weather course\njulie ,\nenron location makes more sense . no reason to pay for the hotel .\nalso , i think that one day makes more sense .\ni contacted the weather desk about including other people at the training\ncourse . i think that they would be interested if they got a good discount .\nvince\n\" julie \" on 02 / 16 / 2001 09 : 39 : 37 am\nplease respond to \" julie \"\nto :\ncc :\nsubject : re : weather course\nvince ,\n?\ngreat . ? just to let you know , we decided not to wait on the indecisive ones ,\nand postponed the open course . ? it ' s yours , whatever you want : ? 1 day\n( specific to what you feel will be of the most benefit ) , 2 days , hyatt or\nenron , or not at all . ? i hope this doesn ' t cause problems for you . ? special\ndeal , for sure . ? i owe my godfather .\n?\njulie\n?\n?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\ncc : joseph . hrgovcic @ enron . com\nsent : thursday , february 15 , 2001 3 : 16 pm\nsubject : re : weather course\njulie ,\nthat ' s definitely an option .\nwe can provide the room . maybe we can cut with you a special deal for enron\nand increase the # of people attending . i am forwarding your message to\nour weather desk .\nvince\njoe ,\nwhat do you think about it ?\nvince\n\" julie \" on 02 / 15 / 2001 08 : 20 : 24 am\nplease respond to \" julie \"\nto : ? ? \" vincejkaminski \"\ncc :\nsubject : ? weather course\nvince ,\nwe just wanted to let you know that we only have 3 people signed up for the\nweather derivatives course ( all from enron ) so far . we have a couple more\nthat have expressed strong interest , but we are awaiting their final\ndecision . if no one else signs up , chris and les thought that you guys\ncould probably get through the first day pretty easily , and thus thought it\nmay be an option to teach just the 2 nd day material ( pricing ) only at enron\n( doing it at the hyatt is an option as well but the room might be on the\nlarge ? side ) ? we would obviously reimburse you for the day not taught . we\ncan teach both days as well , but thought you may want to save some time .\ni just wanted to give you some time to think about it . we will know ? where\nwe stand on final numbers by next wednesday .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.850+0000", "entityId": 9886, "properties": {"text": "Subject: re : howard confirmation\njeff ,\ni cannot interview howard on tue ( business trip ) .\ni think the organization is very interested in him .\ni don ' t know what \" illicts your attention \" means .\nvince\n\" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \" on 02 / 16 / 2001 03 : 02 : 36 pm\nplease respond to \" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ \"\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : howard confirmation\nhi vince , i ' m on vacation from friday ( today ) until tuesday . rachel / london\nsent me this confirmation last night and think it illicts your attention - did\nthey get it right to meet you satisfaction ? i hope your interview goes well\nwith howard too . it ' s all set .\nany feedback on the guys from ford credit and citigroup / oxford university ? i\nown them outright - no other firms involved ! fyi : my fees are always much less\non these candidates ( exclusive ownership by myself ) as there are no middlemen\ninvolved from these \" other firms \" . i luckily have been attracting very\ntalented candidates with just doing business \" as myself \" rather than mri . i\nam very encouraged . please check them out , vince . . . as you know - i always\nsend you them first then on to my other clients - if you reject them .\nbye vince , thank you for the business !\njeff\nps - use my cellphone if you want me ( the next 4 days ) for anything ; i ' m here\nfor you - 949 813 2241\ncandidate ' s name : howard haughton\ndate of interview : tuesday 20 february 2001\ntime of interview : 2 . 00 pm\ninterviewers : david weekes enron credit sales\n& marketing\nmark leahy enron credit sales &\nmarketing\nbryan seyfried enron credit executive\nmarkus fiala enron credit trading\nrobina barker - bennett enron credit\nsyndication\nted murphy executive rac\neach interview will be approximately 45 minutes .\naddress : 40 grosvenor place\nlondon\nswlx 7 en\nswitchboard : 020 7783 - 0000\nclosest tube / train station : victoria\nto ask for : david weekes at main reception\nlocation map attached\n( see attached file : location map . pdf )\ni will take this as confirmed unless i hear otherwise from you . if you\nwould like to discuss this please contact me on 020 7783 5677 .\nregards\nrachel quirke\nhuman resources\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.860+0000", "entityId": 9887, "properties": {"text": "Subject: tuesday interview\nrachel ,\ni would like very much to interview howard but i am in\nphiladelphia on tuesday .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.865+0000", "entityId": 9888, "properties": {"text": "Subject: howard confirmation\nhi vince , i ' m on vacation from friday ( today ) until tuesday . rachel / london\nsent me this confirmation last night and think it illicts your attention - did\nthey get it right to meet you satisfaction ? i hope your interview goes well\nwith howard too . it ' s all set .\nany feedback on the guys from ford credit and citigroup / oxford university ? i\nown them outright - no other firms involved ! fyi : my fees are always much less\non these candidates ( exclusive ownership by myself ) as there are no middlemen\ninvolved from these \" other firms \" . i luckily have been attracting very\ntalented candidates with just doing business \" as myself \" rather than mri . i\nam very encouraged . please check them out , vince . . . as you know - i always\nsend you them first then on to my other clients - if you reject them .\nbye vince , thank you for the business !\njeff\nps - use my cellphone if you want me ( the next 4 days ) for anything ; i ' m here\nfor you - 949 813 2241\ncandidate ' s name : howard haughton\ndate of interview : tuesday 20 february 2001\ntime of interview : 2 . 00 pm\ninterviewers : david weekes enron credit sales\n& marketing\nmark leahy enron credit sales &\nmarketing\nbryan seyfried enron credit executive\nmarkus fiala enron credit trading\nrobina barker - bennett enron credit\nsyndication\nted murphy executive rac\neach interview will be approximately 45 minutes .\naddress : 40 grosvenor place\nlondon\nswlx 7 en\nswitchboard : 020 7783 - 0000\nclosest tube / train station : victoria\nto ask for : david weekes at main reception\nlocation map attached\n( see attached file : location map . pdf )\ni will take this as confirmed unless i hear otherwise from you . if you\nwould like to discuss this please contact me on 020 7783 5677 .\nregards\nrachel quirke\nhuman resources\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.870+0000", "entityId": 9889, "properties": {"text": "Subject: re : vandy student\nkristin ,\nthe problem with this guy is that we maxed out on the number of interns we\ncan gainfully employ and provide adequate supervision . so , we have to pass on\nhim .\nvince\nenron north america corp .\nfrom : kristin gandy @ enron 02 / 16 / 2001 07 : 54 am\nto : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : vandy student\ni hear that you have been in contact with this student . do you have any\ninterest in hiring him for a summer position ? if not please just let me know\nand i will call him to let him know .\nregards ,\nkristin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kristin gandy / na / enron on 02 / 16 / 2001\n07 : 49 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndmitri villevald on 02 / 15 / 2001\n04 : 00 : 51 pm\nto : \" ' kristin . gandy @ enron . com ' \"\ncc :\nsubject :\ndear ms . gandy :\nthank you for taking time out of your busy schedule to visit the owen\ngraduate school of management at vanderbilt on january 23 - 24 for on - campus\ninterviews for the summer associate positions at enron . it was a pleasure\ntalking with you , and i hope i conveyed to you how excited i am about the\nprospect of applying my skills at enron .\ni realize that enron offers a limited number of positions and greatly\nrespect your choice of summer associates . i would like to ask you if there\nis any opportunity for me to work at enron during this summer for free . i am\nconfident that my sincere interest in derivatives will allow me to greatly\ncontribute to enron during this summer . i am particularly interested in\nenron research group . ( i had a phone interview with mr . gibner on january\n31 st , and i sent him email yesterday asking for the opportunity to work for\nfree during this summer ) .\ni am looking forward to hearing from you . if i can provide more information\nor answer additional questions , please feel free to contact me either by\ntelephone ( 615 - 496 - 1132 ) or via e - mail\n( dmitri . villevald @ owen 2002 . vanderbilt . edu ) . also , i am always ready to fly\nto houston for additional interviews .\nagain , thank you for your time and consideration .\nsincerely ,\ndmitri villevald\nowen mba 2002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.875+0000", "entityId": 9890, "properties": {"text": "Subject: analyst candidate mitra mujica\nif mitra mujica accepts the offer from the aa program , i would like you to\ninterview her at your earliest convience .\nthanks for your help .\nregards ,\nmaureen\n- - - - - - - - - - - - - - - - - - - - - - forwarded by maureen raymond / hou / ect on 02 / 16 / 2001\n05 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : andrea richards @ enron 02 / 16 / 2001 04 : 42 pm\nto : maureen raymond / hou / ect @ ect , gwyn koepke / na / enron @ enron\ncc : jana giovannini / hou / ect @ ect , shelly butler / hou / ect @ ect , althea\ngordon / na / enron @ enron , teresa bosien / hr / corp / enron @ enron\nsubject : analyst candidate mitra mujica\nmaureen ,\nmitra mujica , an analyst candidate from super thursday 2 / 15 , has been\nreserved for your group . please note that this placement is contingent upon\nthe candidate accepting the analyst program ' s offer . mitra will have two\nweeks to respond and we will contact you once her response is received .\nplease contact me if you have any questions .\nthank you ,\nandrea richards\ncareer development\nassociate & analyst program\nx 3 - 6499", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.880+0000", "entityId": 9891, "properties": {"text": "Subject: hello all\njust wanted to share the list of \" one - page \" bios and summary statements\nthat i have collected to this point . i have two more yet to come and will\nshare them asap . have a great weekend and i look forward to seeing\neveryone in \" sunny / warm waco \" next week .\nby the way , bill petty has challenged everyone to a 40 minute jog along the\nriver on friday morning at 6 : 45 a . m . so bring your jogging gear . i also\nhave heard from very reliable sources that bennett stewart is the odds on\nfavorite to \" win the race \" ( cynthia leaked the story that he ' s been in\ntraining now for several months ) .\ni ' ll also be sending you driving / parking , etc . instructions early next week .\nhave a great weekend ,\njohn\n- bennett _ stewart . doc\n- david palumbo current bio . doc\n- g _ ferrell . doc\n- ivaysmanbiosketch . doc\n- jmartinbiosketch . doc\n- korpi _ bio _ plus _ views _ v 2 . doc\n- m _ froehls . doc\n- srivastava new econ . rtf\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.885+0000", "entityId": 9892, "properties": {"text": "Subject: wharton tm # 3 presentation\nvince , scanned through . looks like a good start .\nthanks\njohn henderson\n- - - - - forwarded by john henderson / hou / newpower on 02 / 16 / 2001 03 : 32 pm - - - - -\nvince j kaminski @ ect\n02 / 16 / 2001 09 : 56 am\nto : john henderson / hou / ees @ ees\ncc :\nsubject : wharton tm # 3 presentation\njohn ,\ndid you have a chance to take a look at his presentation ?\nany comments ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 16 / 2001\n09 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" cummins , marc \" on 02 / 15 / 2001 01 : 36 : 16 pm\nto : \" ' christie . patrick @ enron . com ' \" ,\nvince . j . kaminski @ enron . com , melinda . mccarty @ enron . com , \" ' li . sun @ enron . com ' \"\n, \" ' john . henderson @ newpower . com ' \"\ncc : \" thorne , heather \" , \" degiacinto , clayton \"\n, \" lessar , stephen \" ,\n\" vittal , maheshram \" , \" bassal , omar \"\n, \" feerick , dennis \" ,\n\" cummins , marc \" , \" ' thomas @ wharton . upenn . edu ' \"\nsubject : wharton tm # 3 presentation\nvince and christie ,\nhere are the read ahead slides for today ' s teleconference . also attached is\nthe first draft of our conjoint analysis survey . we ' ll see you this\nafternoon .\n> >\nsincerely ,\nteam 3\n- enron pres # 3 . ppt\n- newpower conjoint . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.890+0000", "entityId": 9893, "properties": {"text": "Subject: hi vince !\nyes , meeting for dinner tuesday night is great !\ni ' ll be coming in on tuesday from d . c . and i ' ll be taking the train to new\nyork on wednesday morning .\nsee you and ken tuesday at 5 : 30 at the inn at penn lobby .\nhope you both have a great weekend ! !\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 16 / 2001 11 : 23 am - - - - -\nvince j kaminski\n02 / 16 / 2001 11 : 04 am\nto : christie patrick / hou / ect @ ect\ncc : kenneth parkhill / na / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : change - video to teleconferences - enron\nchristie ,\nmeeting at 5 : 30 is fine with me . the presentation is at 6 : 30 .\ni sent you a message regarding a dinner on tuesday .\ncan you join me and ken parkhill ?\nvince\nfrom : christie patrick on 02 / 16 / 2001 10 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : change - video to teleconferences - enron\nhi vince !\nthanks for the information below !\ni spoke with tom piazze today . i ' ll be meeting with him at 3 : 30 on the 20 th\nto discuss the webi contract . i ' ll also be meeting with wharton ' s broadband\n( technical people ) before our meeting with the students . further , i hope to\nmeet with the people in charge of the business plan competition .\ntom suggested you might want to call howard kurnreuther ( sp ? ) and possibly\nstop in to see him while we are at wharton .\ni ' ll be getting to wharton sometime tuesday ; i ' ll try to get a reservation at\nthe inn at penn . i ' ll then be leaving early wednesday morning by train to\nnew york .\nshall we meet in tha lobby at the inn at penn before going to meet the\nstudents ( i think the meeting with the students is at 6 pm - ish ) - - say , 5 : 30 ?\nplease let me know !\nalso , we still need to give wharton an answer as to whether we ' re interested\nin another $ 50 , 000 investment in efellows .\nthanks vince !\nhave a great wekend !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 16 / 2001 10 : 13 am - - - - -\nvince j kaminski\n02 / 16 / 2001 10 : 06 am\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : change - video to teleconferences - enron\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 16 / 2001\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 16 / 2001 08 : 35 : 22 am\nto : clay degiacinto , deepa mallik\n, dennis feerick\n, heather thorne\n, jack rejtman\n, jason cummins\n, kim whitsel\n, nicholas levitt\n, omar bassel\n, ram vittal , steve\nlessar , thomas\n, tulika bhalla ,\nvincent chen\ncc : fap , \" ' vkamins @ enron . com ' \"\n, \" ' patterm @ wharton . upenn . edu ' \"\nsubject : change - video to teleconferences - enron\n3 / 1 shdh 215\n3 / 22 shdh 215\n3 / 29 shdh 215\nplease note that the remaining videoconferences scheduled with enron have\nbeen changed to teleconferences due to the difficulties we have experienced .\nthe host has agreed and we will , therefore , continue with teleconferences in\nthe same locations / dates as noted above .\nany questions , please contact the fap office .\nthanks ,\ndonna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.896+0000", "entityId": 9894, "properties": {"text": "Subject: re : change - video to teleconferences - enron\nchristie ,\nmeeting at 5 : 30 is fine with me . the presentation is at 6 : 30 .\ni sent you a message regarding a dinner on tuesday .\ncan you join me and ken parkhill ?\nvince\nfrom : christie patrick on 02 / 16 / 2001 10 : 19 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : change - video to teleconferences - enron\nhi vince !\nthanks for the information below !\ni spoke with tom piazze today . i ' ll be meeting with him at 3 : 30 on the 20 th\nto discuss the webi contract . i ' ll also be meeting with wharton ' s broadband\n( technical people ) before our meeting with the students . further , i hope to\nmeet with the people in charge of the business plan competition .\ntom suggested you might want to call howard kurnreuther ( sp ? ) and possibly\nstop in to see him while we are at wharton .\ni ' ll be getting to wharton sometime tuesday ; i ' ll try to get a reservation at\nthe inn at penn . i ' ll then be leaving early wednesday morning by train to\nnew york .\nshall we meet in tha lobby at the inn at penn before going to meet the\nstudents ( i think the meeting with the students is at 6 pm - ish ) - - say , 5 : 30 ?\nplease let me know !\nalso , we still need to give wharton an answer as to whether we ' re interested\nin another $ 50 , 000 investment in efellows .\nthanks vince !\nhave a great wekend !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 16 / 2001 10 : 13 am - - - - -\nvince j kaminski\n02 / 16 / 2001 10 : 06 am\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : change - video to teleconferences - enron\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 16 / 2001\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 16 / 2001 08 : 35 : 22 am\nto : clay degiacinto , deepa mallik\n, dennis feerick\n, heather thorne\n, jack rejtman\n, jason cummins\n, kim whitsel\n, nicholas levitt\n, omar bassel\n, ram vittal , steve\nlessar , thomas\n, tulika bhalla ,\nvincent chen\ncc : fap , \" ' vkamins @ enron . com ' \"\n, \" ' patterm @ wharton . upenn . edu ' \"\nsubject : change - video to teleconferences - enron\n3 / 1 shdh 215\n3 / 22 shdh 215\n3 / 29 shdh 215\nplease note that the remaining videoconferences scheduled with enron have\nbeen changed to teleconferences due to the difficulties we have experienced .\nthe host has agreed and we will , therefore , continue with teleconferences in\nthe same locations / dates as noted above .\nany questions , please contact the fap office .\nthanks ,\ndonna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.901+0000", "entityId": 9895, "properties": {"text": "Subject: re : wharton business plan competition\nchristie ,\nlook fwd to the trip .\nshirley is sending you my itinerary .\nwhen are you flying back ? what about a dinner on\ntuesday ?\nvince\nfrom : christie patrick on 02 / 16 / 2001 10 : 10 am\nto : stamer @ wharton . upenn . edu , piazzet @ wharton . upenn . edu\ncc : vince j kaminski / hou / ect @ ect , jeffrey a shankman / hou / ect @ ect\nsubject : wharton business plan competition\nhi anne !\ni ' ll be at wharton on tuesday the 20 th - - perhaps we can get together to\ndiscuss this sometime later in the afternoon . what does your schedule look\nlike ?\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 16 / 2001 10 : 08 am - - - - -\n\" stamer , anne \"\n01 / 26 / 2001 03 : 47 pm\nto : \" ' christie _ patrick @ enron . com ' \"\ncc :\nsubject : wharton business plan competition\ndear christie :\nthank you for your voice mail . things are moving along nicely with the\ncompetition . phase ii deadline was today , so we hope to have some\nstatistics in the next few weeks . i have attached the statistics from phase\ni , for your files . listed below are ways that enron could be involved , let\nme know in which ( or all ) of these enron would be interested in participating .\n* we want to start listing our sponsors , so it would be really good if we\ncould get your logo .\n* also , does enron wish to be a judge in phase iii and the venture fair\n( vf ) ? for phase iii , we would mail each judge about 3 full blown business\nplans to be ranked . we anticipate this taking no more than 1 afternoon\n* for the vf , we would need a judge to be present for the entire day . the\nvf is by invitation only and we anticipate about 350 students , venture\ncapitalists , business entrepreneurs and faculty . the vf will be held in\nphiladelphia on april 30 th .\n* at the vf we will provide an opportunity for our sponsors with a 6 foot\ntable for exhibits or materials to hand out . we will need to know if you\nwish to use the exhibit space .\n* we plan on providing our 25 semi - finalist teams with one - on - one\nmentoring . if enron is interested , that would be about 1 / 2 or 1 day\ncommitment .\n* there might be an opportunity for a workshop to the university community .\nwould enron be interested in participating in something like this ?\ni look forward to working with you to make this year ' s bpc a success . thank\nyou .\nsincerely ,\nanne stamer\n>\nanne stamer\nwharton business plan competition\nwharton entrepreneurial programs\nthe wharton school\n419 vance hall , 3733 spruce street\nphiladelphia , pa 19104 - 6374\n215 - 746 - 6460 ( direct )\n215 - 898 - 4856 ( office )\n215 - 898 - 1299 ( fax )\nstamer @ wharton . upenn . edu\n- phase ioverview . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.906+0000", "entityId": 9896, "properties": {"text": "Subject: hiring of wharton tiger teams members for summer associate\npositions in research\nvince :\njust want to confirm our conversation regarding your interest in the wharton\ntiger teams 1 & 3 and your intent to hire interested members into the summer\nassociate program . you stated that you could take all members into your\nresearch group for the summer . kristin gandy is now in the process of\nobtaining from either you or members of your department the names of the\nindividuals on teams 1 & 3 . some of these individuals may have interviewed\nwith us during the campus process . if they did and were turned down by the\nteam for a summer position , we will not extend offers to those individuals .\notherwise , if you are willing to take the additional tiger team members into\nyour group based on the experience you and your staff have had in working\nwith these students , then the associate program will facilitate those offers .\nat mid summer and the end of the summer , these wharton mbas ' performance will\nbe evaluated and cross - calibrated with other summer associates to determine\nwhether they receive an offer to join the full - time associate program .\noffers will be given to those summer associate who achieve extremely high\nperformance ratings .\nas soon as kristin receives the names of these individuals and determines\nwhich members did not already interview , she will get out both a verbal and\noffer to them .\nas follow - up , jana giovannini , manager of staffing in career development ,\nwill staff those that accept our offer from this tiger team list into your\ngroup for the summer .\nshould you have any questions or concerns , please feel free to contact me .\nregards ,\nceleste roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.911+0000", "entityId": 9897, "properties": {"text": "Subject: wharton business plan competition\nhi anne !\ni ' ll be at wharton on tuesday the 20 th - - perhaps we can get together to\ndiscuss this sometime later in the afternoon . what does your schedule look\nlike ?\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 02 / 16 / 2001 10 : 08 am - - - - -\n\" stamer , anne \"\n01 / 26 / 2001 03 : 47 pm\nto : \" ' christie _ patrick @ enron . com ' \"\ncc :\nsubject : wharton business plan competition\ndear christie :\nthank you for your voice mail . things are moving along nicely with the\ncompetition . phase ii deadline was today , so we hope to have some\nstatistics in the next few weeks . i have attached the statistics from phase\ni , for your files . listed below are ways that enron could be involved , let\nme know in which ( or all ) of these enron would be interested in participating .\n* we want to start listing our sponsors , so it would be really good if we\ncould get your logo .\n* also , does enron wish to be a judge in phase iii and the venture fair\n( vf ) ? for phase iii , we would mail each judge about 3 full blown business\nplans to be ranked . we anticipate this taking no more than 1 afternoon\n* for the vf , we would need a judge to be present for the entire day . the\nvf is by invitation only and we anticipate about 350 students , venture\ncapitalists , business entrepreneurs and faculty . the vf will be held in\nphiladelphia on april 30 th .\n* at the vf we will provide an opportunity for our sponsors with a 6 foot\ntable for exhibits or materials to hand out . we will need to know if you\nwish to use the exhibit space .\n* we plan on providing our 25 semi - finalist teams with one - on - one\nmentoring . if enron is interested , that would be about 1 / 2 or 1 day\ncommitment .\n* there might be an opportunity for a workshop to the university community .\nwould enron be interested in participating in something like this ?\ni look forward to working with you to make this year ' s bpc a success . thank\nyou .\nsincerely ,\nanne stamer\n>\nanne stamer\nwharton business plan competition\nwharton entrepreneurial programs\nthe wharton school\n419 vance hall , 3733 spruce street\nphiladelphia , pa 19104 - 6374\n215 - 746 - 6460 ( direct )\n215 - 898 - 4856 ( office )\n215 - 898 - 1299 ( fax )\nstamer @ wharton . upenn . edu\n- phase ioverview . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.915+0000", "entityId": 9898, "properties": {"text": "Subject: change - video to teleconferences - enron\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 16 / 2001\n10 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 16 / 2001 08 : 35 : 22 am\nto : clay degiacinto , deepa mallik\n, dennis feerick\n, heather thorne\n, jack rejtman\n, jason cummins\n, kim whitsel\n, nicholas levitt\n, omar bassel\n, ram vittal , steve\nlessar , thomas\n, tulika bhalla ,\nvincent chen\ncc : fap , \" ' vkamins @ enron . com ' \"\n, \" ' patterm @ wharton . upenn . edu ' \"\nsubject : change - video to teleconferences - enron\n3 / 1 shdh 215\n3 / 22 shdh 215\n3 / 29 shdh 215\nplease note that the remaining videoconferences scheduled with enron have\nbeen changed to teleconferences due to the difficulties we have experienced .\nthe host has agreed and we will , therefore , continue with teleconferences in\nthe same locations / dates as noted above .\nany questions , please contact the fap office .\nthanks ,\ndonna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.920+0000", "entityId": 9899, "properties": {"text": "Subject: re : research leads\nhello team 1 ,\ni spoke with larry gagliardi on the crude / refinery products desk this morning\nand he agreed to talk with you after 12 : 30 today or after 2 : 30 any other\nweekday . he is very familiar with the other platforms and should be a great\nresource . larry suggested that you surf eol to find names of power and / or\nnatural gas traders , and call them up . please let me know if you have\ndifficulty finding / contacting folks this way and i will see if i can help .\nlarry ' s office number is 713 - 853 - 0543 , and his email is\nlarry . gagliardi @ enron . com .\ngood luck\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.925+0000", "entityId": 9900, "properties": {"text": "Subject: re : vacation in march , april\nstinson ,\nno problem .\nvince\nstinson gibner\n02 / 15 / 2001 06 : 41 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : vacation in march , april\nvince ,\nif possible i would like to take some vacation time in march and april .\nspecifically the week of hisd spring break , which is march 12 - 16 . also , i\nwould like to take march 21 - 30 .\nplease let me know if this is ok .\nregards ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.929+0000", "entityId": 9901, "properties": {"text": "Subject: re : anshuman srivastava\nthanks margaret . will keep you in the loop if things change .\ni am attaching a job description for anshuman , as we had discussed , foir your\nfiles .\nregards ,\nsandeep .\nmargaret daffin @ ect\n02 / 16 / 2001 09 : 41 am\nto : sandeep kohli / enron _ development @ enron _ development\ncc : molly magee @ ect , vince j kaminski / hou / ect @ ect , jane allen / hou / ect @ ect\nsubject : re : anshuman srivastava\nsandeep : further to my voice mail to you today , i will meet with anshuman at\n10 : 30 am and will keep his documents in a file .\nhowever , without some type of job offer in the us , we cannot move forward\nwith an ll visa for him and if you believe he will not be returning to the us\nto work , then we really do not need to get him the ll at this time .\nif the circumstances change , please let me know .\nmargaret\nsandeep kohli @ enron _ development\n02 / 15 / 2001 02 : 05 pm\nto : margaret daffin @ ect\ncc : molly magee @ ect , anshuman srivastav / enron _ development @ enron _ development\nsubject : anshuman srivastava\nmargaret ,\nplease find attached the resume of anshuman , as well as the form needed for\nl - 1 visa , duly filled in .\ncopies of all required material for the visa , has already been put into\ninter - office mail .\nplease do call me at 713 - 857 - 6826 . i want to reschedule today ' s meeting for\nanother time , since we are working on a deadline here .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n02 / 15 / 2001 01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli\n02 / 15 / 2001 11 : 21 am\nto : anshuman srivastav / enron _ development @ enron _ development\ncc :\nsubject :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.934+0000", "entityId": 9902, "properties": {"text": "Subject: re : anshuman srivastava\nsandeep : further to my voice mail to you today , i will meet with anshuman at\n10 : 30 am and will keep his documents in a file .\nhowever , without some type of job offer in the us , we cannot move forward\nwith an ll visa for him and if you believe he will not be returning to the us\nto work , then we really do not need to get him the ll at this time .\nif the circumstances change , please let me know .\nmargaret\nsandeep kohli @ enron _ development\n02 / 15 / 2001 02 : 05 pm\nto : margaret daffin @ ect\ncc : molly magee @ ect , anshuman srivastav / enron _ development @ enron _ development\nsubject : anshuman srivastava\nmargaret ,\nplease find attached the resume of anshuman , as well as the form needed for\nl - 1 visa , duly filled in .\ncopies of all required material for the visa , has already been put into\ninter - office mail .\nplease do call me at 713 - 857 - 6826 . i want to reschedule today ' s meeting for\nanother time , since we are working on a deadline here .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n02 / 15 / 2001 01 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli\n02 / 15 / 2001 11 : 21 am\nto : anshuman srivastav / enron _ development @ enron _ development\ncc :\nsubject :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.938+0000", "entityId": 9903, "properties": {"text": "Subject: to ops - revised february bod approved risk management policy\nfyi\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cassandra schultz / na / enron on 02 / 18 / 2001\n10 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : cassandra schultz\n02 / 18 / 2001 10 : 26 pm\nto : bob m hall / na / enron @ enron , leslie reeves / hou / ect @ ect , jeffrey c\ngossett / hou / ect @ ect , peggy hedstrom / cal / ect @ ect , stacey w white / hou / ect @ ect ,\nbrent a price / hou / ect @ ect , scott earnest / hou / ect @ ect , sheila\nglover / hou / ect @ ect , d todd hall / hou / ect , cindy horn / lon / ect @ ect , brenda f\nherod / hou / ect @ ect , mike jordan / lon / ect @ ect , howard carter / eu / enron @ enron ,\nandrew cornfield / lon / ect @ ect , james new / lon / ect @ ect , orjan\nagdesteen / osl / ect @ ect , james new / lon / ect @ ect , marcelo parra / nyc / mgusa @ mgusa ,\nlouis colarusso / nyc / mgusa @ mgusa , heidi\nmason / enron _ development @ enron _ development , jan - erland bekeng / ap / enron @ enron ,\nkevin rhodes / eu / enron @ enron , naomi connell / lon / ect @ ect\ncc : sally beck , shona wilson , chris abel\nsubject : to ops - revised february bod approved risk management policy\nattached is the revised risk management policy incorporating the bod ' s\nchanges - please discard the previously circulated version i sent out prior\nto the bod meeting . i ' ve also included a recap of substantive changes since\nthe october 2000 version that was circulated to you in conjuction with the\ncompliance certificates last fall , but you should read the policy to enhance\nyour understanding , and distribute it to your groups as some changes are\nsignificant and are detailed further in the policy . i did notify the office\nof the chair for each of your business units of these changes earlier this\nweek , and i will also provide them with a copy of the revised policy .\nif you have any questions , feel free to give me a call at x 30429 .\nregards ,\ncassandra schultz\nmarket risk management", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.944+0000", "entityId": 9904, "properties": {"text": "Subject: re : weather course\njulie ,\ni forwarded your message to the weather desk .\ni think you can cancel hyatt and save some money .\nvince\n\" julie \" on 02 / 19 / 2001 03 : 19 : 45 pm\nplease respond to \" julie \"\nto : \" vincejkaminski \"\ncc :\nsubject : re : weather course\nvince ,\nenron is fine ( although i think we have to pay for the hyatt anyway ) .\n?\ngood discount ( i have a feeling that my idea of a good discount and the\nweather desk ' s idea is probably different ? ) : ? for the one day , $ 1100 per\nperson . ? if you think that there will be ? around 10 people or more , then we\ncan offer a day rate , regardless of the number of people . ?\n?\nthanks vince\n?\njulie\n?\nps - of course when i announced that we were cancelling , people started\nresponding that they wished to attend . ? ugh !\n?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\ncc : vince . j . kaminski @ enron . com\nsent : friday , february 16 , 2001 4 : 05 pm\nsubject : re : weather course\njulie ,\nenron location makes more sense . no reason to pay for the hotel .\nalso , i think that one day makes more sense .\ni contacted the weather desk about including other people at the training\ncourse . i think that they would be interested if they got a good discount .\nvince\n\" julie \" on 02 / 16 / 2001 09 : 39 : 37 am\nplease respond to \" julie \"\nto : ? ?\ncc :\nsubject : ? re : weather course\nvince ,\ngreat . just to let you know , we decided not to wait on the indecisive\nones , and postponed the open course . it ' s yours , whatever you want : ? 1\nday ( specific to what you feel will be of the most benefit ) , 2 days , hyatt\nor ? enron , or not at all . i hope this doesn ' t cause problems for you .\nspecial deal , for sure . i owe my godfather .\njulie\n- - - - - original message - - - - -\nfrom : ? vince . j . kaminski @ enron . com\nto : julie\ncc : joseph . hrgovcic @ enron . com\nsent : thursday , february 15 , 2001 3 : 16 ? pm\nsubject : re : weather course\njulie ,\nthat ' s definitely an option .\nwe can ? provide the room . maybe we can cut with you a special deal for\nenron\nand ? increase the # of people attending . i am forwarding your message to\nour ? weather desk .\nvince\njoe ,\nwhat do you think about ? it ?\nvince\n\" julie \" on ? 02 / 15 / 2001 08 : 20 : 24 am\nplease respond to \" julie \"\nto : ? \" vincejkaminski \"\ncc :\nsubject : ? weather course\nvince ,\nwe just wanted to let you know ? that we only have 3 people signed up for\nthe\nweather derivatives course ? ( all from enron ) so far . we have a couple more\nthat have expressed strong ? interest , but we are awaiting their final\ndecision . if no one else signs ? up , chris and les thought that you guys\ncould probably get through the ? first day pretty easily , and thus thought\nit\nmay be an option to teach just ? the 2 nd day material ( pricing ) only at\nenron\n( doing it at the hyatt is an ? option as well but the room might be on the\nlarge side ) ? we would ? obviously reimburse you for the day not taught . we\ncan teach both days as ? well , but thought you may want to save some time .\ni just wanted to give ? you some time to think about it . we will know where\nwe stand on final ? numbers by next ? wednesday .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.952+0000", "entityId": 9905, "properties": {"text": "Subject: re : weather course\njoe ,\nthis is the most recent offer from lacima\n( weather derivatives course ) . what do you think ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 19 / 2001\n07 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" julie \" on 02 / 19 / 2001 03 : 19 : 45 pm\nplease respond to \" julie \"\nto : \" vincejkaminski \"\ncc :\nsubject : re : weather course\nvince ,\nenron is fine ( although i think we have to pay for the hyatt anyway ) .\n?\ngood discount ( i have a feeling that my idea of a good discount and the\nweather desk ' s idea is probably different ? ) : ? for the one day , $ 1100 per\nperson . ? if you think that there will be ? around 10 people or more , then we\ncan offer a day rate , regardless of the number of people . ?\n?\nthanks vince\n?\njulie\n?\nps - of course when i announced that we were cancelling , people started\nresponding that they wished to attend . ? ugh !\n?\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\ncc : vince . j . kaminski @ enron . com\nsent : friday , february 16 , 2001 4 : 05 pm\nsubject : re : weather course\njulie ,\nenron location makes more sense . no reason to pay for the hotel .\nalso , i think that one day makes more sense .\ni contacted the weather desk about including other people at the training\ncourse . i think that they would be interested if they got a good discount .\nvince\n\" julie \" on 02 / 16 / 2001 09 : 39 : 37 am\nplease respond to \" julie \"\nto : ? ?\ncc :\nsubject : ? re : weather course\nvince ,\ngreat . just to let you know , we decided not to wait on the indecisive\nones , and postponed the open course . it ' s yours , whatever you want : ? 1\nday ( specific to what you feel will be of the most benefit ) , 2 days , hyatt\nor ? enron , or not at all . i hope this doesn ' t cause problems for you .\nspecial deal , for sure . i owe my godfather .\njulie\n- - - - - original message - - - - -\nfrom : ? vince . j . kaminski @ enron . com\nto : julie\ncc : joseph . hrgovcic @ enron . com\nsent : thursday , february 15 , 2001 3 : 16 ? pm\nsubject : re : weather course\njulie ,\nthat ' s definitely an option .\nwe can ? provide the room . maybe we can cut with you a special deal for\nenron\nand ? increase the # of people attending . i am forwarding your message to\nour ? weather desk .\nvince\njoe ,\nwhat do you think about ? it ?\nvince\n\" julie \" on ? 02 / 15 / 2001 08 : 20 : 24 am\nplease respond to \" julie \"\nto : ? \" vincejkaminski \"\ncc :\nsubject : ? weather course\nvince ,\nwe just wanted to let you know ? that we only have 3 people signed up for\nthe\nweather derivatives course ? ( all from enron ) so far . we have a couple more\nthat have expressed strong ? interest , but we are awaiting their final\ndecision . if no one else signs ? up , chris and les thought that you guys\ncould probably get through the ? first day pretty easily , and thus thought\nit\nmay be an option to teach just ? the 2 nd day material ( pricing ) only at\nenron\n( doing it at the hyatt is an ? option as well but the room might be on the\nlarge side ) ? we would ? obviously reimburse you for the day not taught . we\ncan teach both days as ? well , but thought you may want to save some time .\ni just wanted to give ? you some time to think about it . we will know where\nwe stand on final ? numbers by next ? wednesday .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.960+0000", "entityId": 9906, "properties": {"text": "Subject: revised announcement for real options conference at ucla\nplease find attached a revised announcement and call for papers for the 5 th\nannual international conference on real options : theory meets practice . the\nconference is co - organized by the real options group and the andersen\nschool , at ucla , los angeles on july 11 - 14 , 2001 . the submission deadline\nis march 2 ( and registration is by april 20 ) . travel allowances are\nprovided for all academic presenters ( and fees are waived for all\npresenters ) . we are proud that eduardo schwartz will be our keynote speaker .\nwe hope that you will be able to participate and would appreciate it if you\ncould also post the announcement or circulate it among other interested\ncolleagues .\nbest wishes\nlenos\n- confannjuly 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.967+0000", "entityId": 9907, "properties": {"text": "Subject: thanks vince\nok vince .\nalec at rw and i are ready for you concerning howard .\nthank you for the information .\njeff\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\njeff\nmy interview with howard will be scheduled on a different day .\nvince\n* get free , secure online email at http : / / www . ziplip . com / *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.972+0000", "entityId": 9908, "properties": {"text": "Subject: re : tuesday interview\nhi vince ,\nthanks for replying to my email . the scheduled interview with howard will go\nahead tomorrow , i have written to shirley to request a convenient time for\nyou and we will arrange for howard to come back in for a video conference\nwith you .\nregards rachel\nvince j kaminski @ ect\n16 / 02 / 2001 23 : 42\nto : rachel quirke / eu / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : tuesday interview\nrachel ,\ni would like very much to interview howard but i am in\nphiladelphia on tuesday .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.976+0000", "entityId": 9909, "properties": {"text": "Subject: ken ,\nattached is a correction to pages 10 , 11 , and 12 that were presented by the\niso staff at a recent qse training session . i have attached pages 10 , 11 ,\nand 12 for ease of reference .\nthis is the example that i told you about at out at the last csc meeting .\nbest regards ,\nlance\n- enron correction for congestion management example . pdf\n- pagel 2 . pdf\n- pagel 1 . pdf\n- pagel 0 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.981+0000", "entityId": 9910, "properties": {"text": "Subject: re : analyst candidate mitra mujica\nthank you so much for reserving an analyst for our group . tomorrow is my\nlast day in houston until i return from london in 2 months . i won ' t forget\nsomething for your baby . i ' ve asked gwyn koepke and vince kaminski to\ninterview mitra mujica in my absence . vince likes to interview all\ncandidates prior to being employed in the research department . i can\ninterview over the telephone . could you please send us mitra ' s resume .\nregards ,\nmaureen\nenron north america corp .\nfrom : andrea richards @ enron 02 / 16 / 2001 04 : 42 pm\nto : maureen raymond / hou / ect @ ect , gwyn koepke / na / enron @ enron\ncc : jana giovannini / hou / ect @ ect , shelly butler / hou / ect @ ect , althea\ngordon / na / enron @ enron , teresa bosien / hr / corp / enron @ enron\nsubject : analyst candidate mitra mujica\nmaureen ,\nmitra mujica , an analyst candidate from super thursday 2 / 15 , has been\nreserved for your group . please note that this placement is contingent upon\nthe candidate accepting the analyst program ' s offer . mitra will have two\nweeks to respond and we will contact you once her response is received .\nplease contact me if you have any questions .\nthank you ,\nandrea richards\ncareer development\nassociate & analyst program\nx 3 - 6499", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.986+0000", "entityId": 9911, "properties": {"text": "Subject: schedules , maps , etc .\ngentlemen :\nattached is a schedule of activities as well as maps and driving\ninstructions for those who are driving to campus friday morning . the dress\nfor friday is casual ( no ties , sport shirts and jackets if you wish ) .\nfor those of you who have asked about thursday night ' s dinner please note\nthat we have pushed it up to 6 - 8 pm at ninfa ' s mexican restaurant . at this\npoint i plan to pick up bennett s . and don c . from the marriott before 6\nand will do the same for anyone else ( let me know ) . the restaurant is in\neasy walking distance of the hilton and marriott .\nplease note the times for your individual interviews / video taping on\nfriday . some of you are leaving early so we are taping you from 11 - 12\nfriday morning while others are being taped after the program is over .\ni ' m sure i ' ve forgotten something so you ' ll probably get more e - mails .\nhowever , this should take care of the primary stuff . i ' m really looking\nforward to seeing all of you and to hearing your thoughts in the workshops .\nmore later ,\njohn\n- schedule _ map . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.991+0000", "entityId": 9912, "properties": {"text": "Subject: wharton tiger team\naccording to the information that christie patrick emailed me the following\npeople are assigned to wharton ' s tiger teams 1 and 3 . these candidates per\nvince kaminski ' s request should receive offers for summer associate positions\nlocated in his research group .\ntiger team # 1\n1 . vincent chen\n2 . mallik deepa\n3 . jack rejtman\n4 . kim whitsel\n5 . tulika bhalia\n6 . nicholas levitt - i am uncertain based on the emailed information from\nchristie if this is a student or a ta ? can either vince or christie verify\nthis information please .\ntiger team # 3\n1 . clay degiacinto\n2 . steve lessar\n3 . vittal maheshram\n4 . omar bassel\n5 . dennis feerick\n6 . marc \" jason \" cummins\nthe following candidates interviewed with the regular on campus wharton team\non 2 / 5 / 01 and were not passed onto the second round interviews . with that\ninformation i am not sure if we will offer those candidates positions for the\nsummer program ?\n1 . kim whitsel - team # 1\n2 . clay degiacinto - team # 3\n3 . gustavo pallazzi - team # 2\n4 . edson otani - team # 2\ni also have that heather thorne is the teaching assistant and donna piazze is\nthe professor for the project . can you also verify that information ?\nvince if you would please verify and give me the okay via email then i will\ncontact these candidates by phone to inform them they will be receiving an\noffer from enron . but before i do anything i want to make sure this\ninformation is correct and i am not excluding or adding any members that\nshould receive an offer .\nthank you ,\nkristin gandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:52.995+0000", "entityId": 9913, "properties": {"text": "Subject: re : weather course\nvince ,\ni ' ve distributed the info on the course . gary taylor , the head of marketing\nsaid that there were perhaps two people he ' d like to send , and he thought\nthat the teachers would be able to benefit from having people from the\nweather derivatives desk in attendance , but that the price of $ 1100 a person\nwas too steep . gary ( being the head of marketing that he is ) would like to\nsee if there would be some special deal that could be arranged for people\nfrom the weather desk , but he doesn ' t want to cross the line .\njoe\n- - - - - original message - - - - -\nfrom : kaminski , vince\n- 86256517 - 749759 @ enron . com ]\nsent : monday , february 19 , 2001 7 : 17 pm\nto : joseph hrgovcic / hou / ect @ enron\ncc : kaminski , vince\nsubject : re : weather course\njoe ,\nthis is the most recent offer from lacima\n( weather derivatives course ) . what do you think ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 19 / 2001\n07 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" julie \" on 02 / 19 / 2001 03 : 19 : 45 pm\nplease respond to \" julie \"\nto : \" vincejkaminski \"\ncc :\nsubject : re : weather course\nvince ,\nenron is fine ( although i think we have to pay for the hyatt anyway ) .\ngood discount ( i have a feeling that my idea of a good discount and the\nweather desk ' s idea is probably different ? ) : for the one day , $ 1100 per\nperson . if you think that there will be around 10 people or more , then we\ncan offer a day rate , regardless of the number of people .\nthanks vince\njulie\nps - of course when i announced that we were cancelling , people started\nresponding that they wished to attend . ugh !\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com >\nto : julie >\ncc : vince . j . kaminski @ enron . com >\nsent : friday , february 16 , 2001 4 : 05 pm\nsubject : re : weather course\njulie ,\nenron location makes more sense . no reason to pay for the hotel .\nalso , i think that one day makes more sense .\ni contacted the weather desk about including other people at the training\ncourse . i think that they would be interested if they got a good discount .\nvince\n\" julie \" > > on\n02 / 16 / 2001 09 : 39 : 37 am\nplease respond to \" julie \" > >\nto : > >\ncc :\nsubject : re : weather course\nvince ,\ngreat . just to let you know , we decided not to wait on the indecisive\nones , and postponed the open course . it ' s yours , whatever you want : 1\nday ( specific to what you feel will be of the most benefit ) , 2 days , hyatt\nor enron , or not at all . i hope this doesn ' t cause problems for you .\nspecial deal , for sure . i owe my godfather .\njulie\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com >\nto : julie\ncc : joseph . hrgovcic @ enron . com >\nsent : thursday , february 15 , 2001 3 : 16 pm\nsubject : re : weather course\njulie ,\nthat ' s definitely an option .\nwe can provide the room . maybe we can cut with you a special deal for\nenron\nand increase the # of people attending . i am forwarding your message to\nour weather desk .\nvince\njoe ,\nwhat do you think about it ?\nvince\n\" julie \" > >\non 02 / 15 / 2001 08 : 20 : 24 am\nplease respond to \" julie \" > >\nto : \" vincejkaminski \" > >\ncc :\nsubject : weather course\nvince ,\nwe just wanted to let you know that we only have 3 people signed up for\nthe\nweather derivatives course ( all from enron ) so far . we have a couple more\nthat have expressed strong interest , but we are awaiting their final\ndecision . if no one else signs up , chris and les thought that you guys\ncould probably get through the first day pretty easily , and thus thought\nit\nmay be an option to teach just the 2 nd day material ( pricing ) only at\nenron\n( doing it at the hyatt is an option as well but the room might be on the\nlarge side ) ? we would obviously reimburse you for the day not taught . we\ncan teach both days as well , but thought you may want to save some time .\ni just wanted to give you some time to think about it . we will know where\nwe stand on final numbers by next wednesday .\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.000+0000", "entityId": 9914, "properties": {"text": "Subject: re : a resume for john lavorato\nthanks , vince . i will get moving on it right away .\nmolly\nvince j kaminski\n02 / 21 / 2001 05 : 55 pm\nto : molly magee / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : a resume for john lavorato\nmolly ,\nplease , make arrangements for the interview with this candidate for\na trading position . interviews with john lavorato , jeff shankman ,\ngary hickerson , stinson gibner .\ni talked to him in new york and he is considering\nother opportunities , so we have to act fast .\ni think john will like him more than punit .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.005+0000", "entityId": 9915, "properties": {"text": "Subject: re : times 2 filing units\npat : out co # is 0413 , rc # is 107043 . please deliver them to eb 19 c 2 .\nalso , please let me know when they are going to be delivered as we have to\nunload the lateral file cabinets that are currently in that room . will the\nmen who deliver the times 2 units remove the lateral files ? thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.009+0000", "entityId": 9916, "properties": {"text": "Subject: re : credit reserve simulation for ees\none the outputs would be expected loss for each of the trials ( flat file ) and\na graph depicting the distribution ( example below from an early owens\nillinois model )\n- - - - - original message - - - - -\nfrom : de , rabi\nsent : thursday , february 22 , 2001 3 : 20 pm\nto : o ' leary , martin ; tribolet , michael ; estrems , connie ; bradford , william\ncc : tamarchenko , tanya ; dhar , amitava ; kaminski , vince ; kiatsupaibul , seksan ;\nissler , paulo\nsubject : credit reserve simulation for ees\namitava and seksan have identified the source of the discrepancy between the\noption prices calculated by the credit - reserve model and the stand - alone\nspreadsheet model used in deal pricing . we expect to put a fix in place by\ntomorrow .\nin response to your desire to see more output from credit reserve simulation ,\ni have identified a list of possible items that may be of interest to you for\ncredit pricing .\n1 . potential exposure across time\n2 . for each simulated credit event , display :\ndefault time\nexposure - - is deal - by - deal breakdown of any interest ?\ncommodity forward curves ( or spot price ? ) at default time\ni would appreciate it if you could let me know your wish list at your\nearliest .\nthanks ,\nrabi de\n5 - 4593", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.014+0000", "entityId": 9917, "properties": {"text": "Subject: re : eprm conferences\nhi paul ,\n?\nthanks for the e - mail . sorry i missed your calls this morning but i was at\nthe dentist , where its difficult to speak at the best of times !\n?\ni ' m sorry but it doesn ' t look like we will be able to commit to ? the eprm var\nconference . we are still a small company and the trip would tie us up for\nover a week . i ' m sure you ' ll understand that internally we just can ' t\njustify ? the two senior members of the company ? to be away on eprm business\nand to have to pay money from our own pocket ? to run this course for you . it\nwas a difficult decision originally to ? offer our services at expenses only\nwith no fee , but we did so for the potential opportunity to work some more\nwith vince .\n?\ngood luck in your search for alternative course leaders .\n?\nbest regards .\n?\nchris .\n?\n?\ndr chris strickland\n?\ndirector , lacima group ltd\nwww . lacimagroup . com\n?\nschool of finance and economics , university of technology , sydney\nfinancial options research centre , university of warwick , uk\n?\n?\n?\n- - - - - original message - - - - -\nfrom : paul bristow\nto : chris @ lacimagroup . com\nsent : thursday , february 22 , 2001 8 : 13 am\nsubject : fw : eprm conferences\nhi chris ,\n?\njust an extra note regarding the course . if the reimbursements are suitable\ni would like to finalise the line - up asap ( vince and a european enron\nrepresentative ) . if you were unable to participate i would need to offer\nalternative invitations by the end of this week .\n?\nall the best ,\n?\npaul ? ?\n?\n- - - - - original message - - - - -\nfrom : paul bristow [ mailto : pbristow @ riskwaters . com ]\nsent : wednesday , february 21 , 2001 9 : 13 am\nto : ' chris strickland '\nsubject : re : eprm conferences\nhi chris ,\n?\ni ' ve been looking at the forward plan and the total budget for speaker\nexpenses is 5500 pounds ( us keyboard , no pound sign ) . at current exchange\nrates this comes to a little over 15 , 000 australian dollars . i would be\nhappy to cover your expenses up to this figure .\n?\nthe course is scheduled to run in amsterdam ( not london as originally\nplanned ) and houston . the dates are slightly flexible ? to ? work with your\ntravel schedules . for instance , would you prefer to travel to\nsydney - houston - amsterdam - sydney , or in the opposite direction ?\n?\nif you could contact me to ? let me know if this would ? enable you to commit\nto the course , i would be delighted to forward the notes from the research .\ni would plan to then work on the outline until march lst . i look forward to\nspeaking with you soon .\n?\nbest wishes ,\n?\npaul bristow ?\n- - - - - original message - - - - -\nfrom : chris strickland [ mailto : chris @ lacimagroup . com ]\nsent : tuesday , february 06 , 2001 5 : 18 pm\nto : pbristow @ riskwaters . com\nsubject : re : eprm conferences\nhi paul ,\n?\nbit of a busy morning here - i ' ll be out for about 1 . 5 hrs ( 9 . 15 sydney\ntime ) . if we don ' t catch up today , i ' ll call tomorrow .\n?\nchris .\n?\n- - - - - original message - - - - -\nfrom : paul bristow\nto : ' chris strickland '\nsent : tuesday , february 06 , 2001 1 : 33 am\nsubject : re : eprm conferences\nhi chris ,\n?\ni would like to confirm the dates of some of the forthcoming eprm events :\n?\neffective var and stress testing techniques for the us energy industry . this\nevent will run on the 21 & 22 may in london and the 28 & 29 may in houston .\nmichele du berry ( director of conferences ) and i are looking at how we have\nstructured the training courses and are keen to present a different outline\nthan on previous courses . i would like to run this event with 2 - 3 trainers\nper venue , rather than with 7 - 8 as we have done in the past . if you and les\nclewlow would be interested in leading this course ( possible with vince\nkaminski ) i would be delighted to discuss the event in greater detail .\n?\nenergy & power risk management , europe . our largest annual european event is\nscheduled to between september 19 - 21 . victoria kerridge will be producing\nthis event from the london office and will be starting research in two\nweeks . i am going to be providing her with a brief and will ensure that she\nhas your contact details .\n?\ni have also been finalizing the details for the annual energy & power risk\nmanagement event in houston . this will take place on may 14 th & 15 th and is\nclose to completion . i would be happy to provide you with more details ,\nwithout potentially running the risk of overloading your schedule with a\nnumber of events in a short space of time ( var and eprm , houston ) . my\npriority is to secure trainers for our var course .\n?\nif you would be interested in any of the events listed , i would be happy to\ntalk with you this week . my direct line is 212 925 6990 , extension 225 .\n?\nbest wishes ,\n?\npaul bristow\n?\n?\n- - - - - original message - - - - -\nfrom : chris strickland [ mailto : chris @ lacimagroup . com ]\nsent : sunday , january 28 , 2001 8 : 02 pm\nto : pbristow @ riskwaters . com\nsubject : eprm conferences\nhi paul ,\n?\njust a note so that you have my address . do you have dates for the us and\neuropean conferences yet ? i ' m sure that we can arrange other work at the\nsame time to offset the expenses of speaking at these events if you want us\nto participate .\n?\nyou also mentioned a training course on var and the energy area . we had an\neprm article last year with vince on a comparison of the different\ntechniques on a trial portfolio that might form the basis of something\nuseful . anyway , let me know .\n?\nbest regards .\n?\nchris .\n?\n?\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.018+0000", "entityId": 9918, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\negm fundamentals\nlowell bezanis joins us from eig ( energy intelligence group ) . lowell will be\na great resource for the group as he has had substantial experience covering\nmiddle east issues , as well having great contacts with the trade press . the\negm fundamentals site has moved into production . our new address is\nhttp : / / egmfundy . corp . enron . com comments and suggestion should be directed to\nheather purcell at 54057 . heather is also managing our enterprise - wide\ncontract with pira for oil , electricity , natural gas and natural gas liquids .\neim finance\nthe primary focus for the eim finance group is to assist transaction teams in\nthe execution of complicated transactions in which enron capital is being\ndeployed . this may consist of executing the funding of specific transactions\nin either the bank or capital markets . currently the team is focusing on the\ncreation of several off - balance sheet funding vehicles that can be drawn upon\nto fund multiple transactions , as well as the financing of the recently\nannounced daishowa acquisition . in addition , the group is focusing on the\ncreation of an inventory finance vehicle that can be utilized to fund\nmultiple steel ( or other commodity ) inventory financings . bill brown leads\nthe group and notes , \" this is a very exciting time at enron . eim is a great\nexample of utilizing the enron wholesale business model in commodities other\nthan gas and power . the ability to finance complicated transactions by using\nfinancial engineering skills developed around enron creates a competitive\nadvantage to transaction teams and will allow us to develop new products and\nfund those products competitively without using large amounts of enron\ncapital . \"\nin the news\n\u0001 & vision is dandy , but sustainable company excellence comes from a huge stable\nof able managers . if you don ' t believe me , then go read first , break all the\nrules : what the world ' s greatest managers do differently ( simon & schuster ,\n1999 ) , by gallup execs marcus buckingham and curt coffman . here ' s a\nboiled - down version of what they found : great managers are an organization ' s\nglue . they create and hold together the scores of folks who power\nhigh - performing companies . \u0001 8 \u0001 ) tom peters , fast company , a subsidiary of u . s .\nnews & world report ( 2 / 20 / 01 ) .\nrevised presentation library link :\nyou can access the analyst slides at the url below . simply go to this url ,\nclick on the enter button , and you have access to all the presentations made\nat this meeting . http : / / 172 . 28 . 92 . 190 / bowne /\nwelcome\nnew hires\negm - leticia mcashan / financial operations\nena - leann walton / research\ntransfers\nena \u0001 ) joseph wagner , marcus edmonds , santiago garcia , stacy dunegan , shane\ngreen , roman zadorozhny , praveen mellacheruvu , seksan kiatsupaibul , charles\nward , victor munoz paulette roberts\negm \u0001 ) steven jacobellis , margaret cowan , alisa green\neim \u0001 ) deborah chance , eugenio perez\nnuggets & notes\n\u0001 & our vision for 2001 is to go from \u0001 & the world \u0001 , s leading energy company \u0001 8 to \u0001 ( .\n\u0001 & the world \u0001 , s leading company \u0001 8 - - jeff skilling at the all - employee meeting .\n\" can someone tell me which bank is dying to lend to the steel industry ? \" - -\nbill brown , vice president / finance eim\n\u0001 & there \u0001 , s no such thing as a comp emergency . \u0001 8 \u0001 ) sheila knudsen , vice\npresident / human resources ena\nnews from the global flash\nweather deal\nenron has traded a weather derivative deal with the rock garden restaurant in\nlondon ' s covent garden . based on a ' cold day ' index , the deal protects the\nrock garden from a summer that has too many days below a certain temperature\nbetween march and june . once a number of days has been reached , the rock\ngarden will receive a payout for each further day below that reference\ntemperature . the payouts have been weighted to reflect the greater earning\npotential in some months compared to others . in a blind auction , enron beat\nsix other risk takers to price the deal .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.023+0000", "entityId": 9919, "properties": {"text": "Subject: rosters ( rice university )\ni have enclosed your latest rosters for mgmt 656 : energy derivatives . the\nword document is your official rosters . the excel document is a list of\nnames with e - mail addresses . i ' ll keep you updated as students\nadd / drop . as always , let me know if you have any questions .\npamela castro\nmba program associate\nrice university\n713 - 348 - 6223\n- 656 . xls\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.028+0000", "entityId": 9920, "properties": {"text": "Subject: re : dinner\njulie ,\nthanks for the invitation .\ntuesday would work better for me .\ni came back from california this morning and i am quite exhausted .\nwhat is the number at which i can reach you ?\nvince\n\" julie \" on 02 / 26 / 2001 11 : 00 : 46 am\nplease respond to \" julie \"\nto : \" vincejkaminski \"\ncc :\nsubject : dinner\nwould you like to get together for dinner with us tonight ( monday ) or\ntomorrow night ?\n?\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.032+0000", "entityId": 9921, "properties": {"text": "Subject: re : fas 133 paper\nvince ,\nit ' s a pdf file . you can access it on our home page . sorry for your trouble ;\nplease let me know if this method doesn ' t work .\nregards ,\nandy kalotay\nandrew kalotay associates , inc .\n61 broadway , suite 3025\nnew york ny 10006\n( 212 ) 482 - 0900\nvisit our website www . kalotay . com\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , february 26 , 2001 12 : 03 pm\nto : andy @ kalotay . com\nsubject : re : fas 133 paper\n>\nandy ,\nthanks . i cannot open the file . is it a word document ?\nvince\n\" andrew kalotay \" on 02 / 23 / 2001 02 : 26 : 39 pm\nto : \" vincent kaminski \"\ncc :\nsubject : fas 133 paper\nvince ,\nhere ' s the final version . it will appear in the next issue of the journal\nof\napplied corporate finance . we ' re getting some very positive response to the\nvrm approach .\nregards ,\nandy\n( see attached file : winmail . dat )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.037+0000", "entityId": 9922, "properties": {"text": "Subject: option pricing discrepancy for j . c . penny transaction\namitava and seksan have identified the source of the discrepancy between the\noption prices calculated by the credit - reserve model and the stand - alone\nspreadsheet model used in deal pricing . the discrepancy can be traced to\ndifferences in input variables of the two models and not to any algorithmic\ndifferences .\nthe options being priced are a strip of options on monthly instruments . the\ncredit reserve simulation program calculates the time to expiration by\nassuming that the option expires on first day of the contract month of the\nunderlying contract , which is a very reasonable assumption .\nthe stand - alone option pricing spreadsheet allows specification of the option\nexpiration date independent of the contract month of the underlying . in the\njc penney transaction , the monthly options were assumed to expire in the\nmiddle of the contract month , when in reality the underlying monthly\ncontracts expire before the start of their respective contract months . the\nstand - alone spreadsheet model allows such specifications and it is up to the\nuser to ascertain that the expiration dates entered are legal . at present ,\nseksan is ascertaining that the option contracts involved are in deed monthly\noptions and not a strip of daily options , in which case we would require\nestimates of intramonth volatilities for both the spreadsheet model and the\ncredit reserve model .\nregards ,\nrabi de", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.041+0000", "entityId": 9923, "properties": {"text": "Subject: fw :\nvince and ravi ,\nattached below is the resume of a student graduating from the university of\nchicago with an ms in mathematics . his specialty is financial mathematics\nand his coursework seems to have covered a lot of the sorts of things that i\nunderstand your group to do , vince . he is extremely interested in enron and\ncontacted me because i am an alum of the college at the u of c . i gather he\ndidn ' t go through enron ' s typical recruiting process for analysts or\nassociates because his background is more technical , than commercial . he\nacknowledged that his business experience is limited and from his resume you\ncan tell that he is young . he would therefore be willing to start as an\nanalyst or whatever the equivalent would be for a non - rotating position , but\nhis interest is in doing the kind of work that you do , vince , and ravi , i\nknow you have a similar background .\nplease let me know if this candidate would be of interest to either of you .\nif so , feel free to contact him directly . he would like to start work this\nsummer after graduating in june .\nthanks for your time and i hope this is useful to you .\nregards ,\nlaura\nlaura howenstine\nmanager , origination\nenron net works\n713 - 853 - 0308 ( office )\nlaura . howenstine @ enron . com\n- - - - - original message - - - - -\nfrom : \" kodjo adovor \" @ enron\n+ 40 enron @ enron . com ]\nsent : monday , february 26 , 2001 4 : 48 pm\nto : howenstine , laura\ncc : lhowenstine @ hotmail . com\nsubject :\ndear laura ,\nthanks for taking the time to talk to me about the opportunities available\nin financial derivatives at enron . i appreciate your help . my resume is\nattached to this email as resume . doc . i look forward to talking to you soon .\nregards ,\nn . kodjo adovor\nthe university of chicago\nfinancial mathematics\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.046+0000", "entityId": 9924, "properties": {"text": "Subject: phone numbers\ncomputer support : 713 - 348 - 8319 ( help with computer connection )\nsuzanna vazquez : 713 - 348 - 3736 ( copies , etc . )\nplease let me know if you have any more questions or if i can help in any way .\npamela castro\nmba program associate\nrice university\n713 - 348 - 6223", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.050+0000", "entityId": 9925, "properties": {"text": "Subject: re : the national forum on corporate finance\nandy ,\nthanks . i shall forward your message to\nprof . ikenberry .\nvince\nfrom : andrew s fastow / enron @ enronxgate on 02 / 22 / 2001 01 : 45 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : the national forum on corporate finance\nvince :\ni would be interested in participating . thanks .\nandy\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , february 05 , 2001 10 : 23 am\nto : andrew s fastow / hou / ect @ enron\ncc : kaminski , vince\nsubject : the national forum on corporate finance\nandy ,\ni am sending you a draft oof a proposal regarding national forum for top\nfinance practitioners and\nacademics . the idea came from a professor at rice university who\nhas already received a commitment from a number\nof most distinguished cfos .\nplease , read the outline and see if you would be interested in joining this\nforum .\ni shall be glad to help to arrange a meeting with prof . ikenberry .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 05 / 2001\n10 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndavid ikenberry on 02 / 02 / 2001 06 : 10 : 02 pm\nto : \" vkamins @ ennron . com \"\ncc :\nsubject :\nit was great talking with you .\ndave\n- brochure . doc >\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.055+0000", "entityId": 9926, "properties": {"text": "Subject: discount rates and risk capital\ndear vince :\ni spent a little bit longer putting together my initial thoughts on\ndetermining discount rates than i originally anticipated . it is somewhat\nsurprising , but there really isn ' t much academic work that i am aware of\nthat addresses these issues .\nvery briefly ,\n1 . i think we need to come up with a way to define the concept of risk\ncapital simultaneously with the appropriate discount rate .\n2 . i think it is important to model enron ' s opportunity cost of capital and\nhow that changes over time . the liquidity of a project will affect its\nvalue in a very significant way when the opportunity cost of capital\nchanges over time . there is also likely to be a relation between duration\nand discount rates that depends on the factors generating enron ' s\nopportunity cost of capital .\n3 . i have vague ideas about possible simulations that may help us quantify\nsome of the issues that i have raised .\nplease take a look at the attached document . you might find this somewhat\nconfusing , so i will give you a call later in the week to discuss this .\nplease let me know when you will be free . i look forward to hearing from you .\nregards ,\nsheridan\n- determining discount rates for risky projects . doc\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.061+0000", "entityId": 9927, "properties": {"text": "Subject: re : ut conference trustees ' meeting\nvince , there was a trustees ' meeting ( during dinner ) which i attended .\nhere are a few things that were discussed there :\n1 . april 4 th is the date when different companies representatives will come\non ut campus to tell mba\nstudents about their companies and job opportunities . the companies will have\nto pay a small fee ( about\n$ 200 ) to be able to participate .\n2 . trustees ' continued support for in - class presentations , finance challenge\nprogram and practicums .\ni understand that ut wants you to give some classes in the autumn semester\nfor mba students .\n3 . some companies ( like reliant ) select some well defined projects and give\nthem to ut students to\nwork on for a few months . students work in teams and discuss their progress\nwith ihud ron and then\nreport results to the company .\nregards ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.066+0000", "entityId": 9928, "properties": {"text": "Subject: re : iif / oxan\nvince ,\nper the dialogue below , there seems to be some agreement between our two\ngroups that a subscription to the \" institute for international finance \" is\nworth receiving , but to do so in one central subscription and split the\ncost . is a $ 16 k share ok for your group ? we ' ll do $ 32 k on our end , and then\ntry and sell some of our share to my european counterpart once he gets better\nestablished with a bigger budget .\n- - scott\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott tholan / corp / enron on 02 / 26 / 2001\n06 : 21 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrobert johnston @ ect\n02 / 26 / 2001 07 : 51 am\nto : scott tholan / corp / enron @ enron\ncc :\nsubject : re : iif / oxan\nscott - could you give vince a call or an email to recommend that he kick in\n16 k for the institute for international finance ? we would pay 32 k ( maybe get\njim roth to pick up some down the road ) .\nrj\n- - - - - - - - - - - - - - - - - - - - - - forwarded by robert johnston / hou / ect on 02 / 26 / 2001\n07 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngwyn koepke @ enron\n02 / 23 / 2001 06 : 18 pm\nto : robert johnston / hou / ect @ ect\ncc :\nsubject : re : iif / oxan\ni haven ' t heard back from vince yet on the price , but we definitely need to\ncontinue our access to iif . can you count us in for a slice of the cost and\nadvise me how many others depts you can recruit to help pay the annual fees .\nonce you have a final count , it may reduce our costs in research . thanks ,\ngek\nrobert johnston @ ect\n02 / 16 / 2001 04 : 31 pm\nto : gwyn koepke / na / enron @ enron\ncc : maureen raymond / hou / ect @ ect\nsubject : re : iif / oxan\nif you need access to consensus data occasionally let me know and i can pull\nit for you . let me know when you get an answer on iif . i will also be\nlooking for others to buy in .\nrj\ngwyn koepke @ enron\n02 / 13 / 2001 01 : 55 pm\nto : robert johnston / hou / ect @ ect\ncc : maureen raymond / hou / ect @ ect , scott tholan / corp / enron @ enron\nsubject : re : iif / oxan\nrobert ,\nthanks for itemizing the costs . we have decided to cancel the oxford\nanalytica , as we receive a consensus forecast for currency and inflation from\nanother source . regarding iif , it is an important source for us . i will\ndiscuss the costs within the research group and advise you of how we will\nproceed .\ngwyn\nrobert johnston @ ect\n02 / 13 / 2001 09 : 46 am\nto : maureen raymond / hou / ect @ ect , gwyn koepke / na / enron @ enron\ncc : scott tholan / corp / enron @ enron\nsubject : iif / oxan\nhi maureen and gwyn -\non the oxford analytica front , i ' m glad you have found the service useful .\nour contract with them has expired and we are currently negotiating for more\nusers to have access . our current contract is for $ 50 k or $ 10 k per user per\nyear . we can charge $ 10 k back to you .\non the iif front , the invoice for $ 47 k is due at the end of the month . here\ni would propose that we pay two thirds ( to cover our costs and the costs of\nour competitive analysis colleagues in london ) , leaving $ 15 k for you to cover .\nsince we took on these services last year , we have expanded our range of\nsources and projects and are consequently trying to do more with less . thus i\nneed to allocate some of our costs from oxan and iif to other projects .\nlet me know what you think about this proposal . maureen , congratulations on\nyour secondment to enron metals ( gwyn mentioned it to me ) . fyi , our\ncolleague jim roth is providing competitive analysis support to joe gold and\njohn sherriff on that project from london .\nrj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.071+0000", "entityId": 9929, "properties": {"text": "Subject: re : approval for paulo issler\nanita ,\ngood decision .\nvince\nanita dupont @ enron\n02 / 23 / 2001 12 : 13 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : approval for paulo issler\nfyi : carolyn needed approval today for charges relating to paulo ' s green\ncard process . mike was the only vp here today so i asked him to approve\nthem . hope that was alright . anita\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 02 / 23 / 2001 12 : 06\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike a roberts @ ect\n02 / 23 / 2001 11 : 04 am\nto : carolyn wedel / enron @ enronxgate @ enron\ncc : anita dupont / na / enron @ enron\nsubject : re : approval for paulo issler\ncarolyn ,\napproval to post the attached charges for paulo issler is granted .\nmike roberts\nv . p . research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.075+0000", "entityId": 9930, "properties": {"text": "Subject: cinergy monthly prices 1998 to date\nmargaret ,\nplease find attached file with cinergy prices ( last day of the month )\nstarting 1998 to date . i have also included daily price for the same period\njust in case you might need it . the source of the data is megawatt daily\nprice survey . note that prices are given as common low and common high which\nmeans that data was gathered through representative sample survey .\nplease let me know if you need any additional data .\nregards ,\nelena\nvince j kaminski @ ect\n02 / 27 / 2001 05 : 41 pm\nto : elena chilkina / corp / enron @ enron\ncc : kevin g moore / hou / ect @ ect , vince j kaminski / hou / ect @ ect , margaret\ncarson / corp / enron @ enron\nsubject : cinergy monthly prices 1998 to date\nelena ,\ncan you , please , help wiht this request ?\nkevin ,\nplease , call me if elena is not in the office on wednesday .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 02 / 27 / 2001\n05 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret carson @ enron\n02 / 27 / 2001 09 : 15 am\nto : vince j kaminski / hou / ect @ ect\ncc : kathryn corbally / corp / enron @ enron\nsubject : cinergy monthly prices 1998 to date\nfrom your historical databases can you kindly have someone send me and\nkathleen corbally the 12 month ( either last day of month or monthly\naverage , whichever you have available ) cinergy prices for 1998 to\ndate . . . for an investor relations slide we are working on ? ? thanks a\nlot . . . margaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.080+0000", "entityId": 9931, "properties": {"text": "Subject: el paso statement on california situation\nin case you haven ' t already seen this :\nel paso addresses the california energy situation ( february 26 , 2001 )\nhouston , feb . 26 / prnewswire / - - el paso corporation ( nyse : epg )\nreaffirmed today its continuing commitment to work with all parties\ninvolved to help improve california ' s energy situation . \" we are surprised\nto see continuing misinformation in the media concerning el paso ' s\ninvolvement in california , \" said norma dunn , senior vice president of\ncorporate communications and external affairs at el paso corporation . \" we\nwould like to take this opportunity to clarify the record . \" the\nsignificant increase in electricity demand at a time when available power\nsupplies are short has caused a sharp climb in the price of power , which\nhas in turn increased the price of natural gas used to generate\nelectricity . high natural gas prices are , therefore , an effect rather than\na cause of the power shortage . allegations that natural gas prices were\ndeliberately manipulated by withholding capacity on the el paso natural gas\npipeline overlook critical facts and are demonstrably untrue . it is not\npossible for any holder of capacity on the el paso natural gas pipeline to\ncause a significant increase in california gas prices by refusing to use\nthat capacity . the el paso natural gas pipeline is required by law to post\nthe availability of any unused capacity on its public bulletin board and is\nobligated to sell that capacity for no more than the published tariff rate\nfound to be just and reasonable by the federal energy regulatory\ncommission . all capacity held by el paso merchant energy on the el paso\nnatural gas pipeline has been used or made available for use by others to\nserve california and other western markets . allegations that there was a\n\" conspiracy \" in 1996 to limit new interstate pipeline capacity into\ncalifornia are absolutely refuted by facts that no one can challenge . the\nfacts show that all new pipelines considered during the 1990 s were either\nbuilt or were not viable projects because they lacked sufficient customer\nsupport to justify their construction . for example , despite years of\nmarketing efforts by tenneco , not a single potential customer could be\ninduced to make the sort of binding commitment required for the proposed\naltamont project to proceed . for that reason alone , it was ultimately\ndropped . in 1996 , according to estimates , there were between one and two\nbillion cubic feet per day ( bcf / d ) of excess natural gas transportation\ncapacity on existing interstate pipelines serving california . indeed , it\nwas misplaced reliance on the continuing availability of such excess\ncapacity that prompted the california public utilities commission to\nencourage pg & e , socal edison , and socal gas , beginning in 1996 and\ncontinuing into 1998 , to relinquish over 1 . 5 bcf / d of firm transportation\ncapacity on the el paso natural gas pipeline . processes are now under way\nto assess present demand and support for new interstate pipeline capacity\ninto california , and el paso intends to do its part to help satisfy\nwhatever needs may be established today . as recently as last year , there\nwere periods when significant quantities of unused capacity were available\non the el paso natural gas pipeline that were not necessary to meet demands\nat that time . notwithstanding its availability , this capacity was not used\nby shippers to california to fill in - state natural gas storage facilities\nfor future use . if california had taken advantage of the opportunity in\n2000 to store the same volumes of natural gas that had been stored in 1999 ,\nreliance on the spot market would have been reduced and the steep rise in\nprices at the california border could have been substantially mitigated or\navoided . it is now widely recognized that the california \" energy crisis \"\nwas caused by the inability of the supply of power available in california\nto keep pace with the state ' s economy and increased demand . a combination\nof factors caused a sharp increase in power prices . first , the construction\nof new power plants in california is a slow , difficult , and heavily\nregulated process . as a result , the growing demand has far outstripped\nin - state generating capabilities . second , unfavorable precipitation and\nincreased out - of - state demand caused some of the hydroelectric power\nnormally relied on by california to become unavailable . third , increased\ndemand for power in the western united states drove up prices that\ncalifornia had to pay to out - of - state generators . fourth , state policies\nderegulated wholesale power prices but capped the rates paid by consumers ,\nleaving demand unrestrained and preventing utilities from recovering their\ncosts . fifth , because rate caps prevented utilities from passing increased\ncosts to consumers , the utilities ' creditworthiness was impaired , causing\nsupplemental power needed during peak periods to become more difficult and\nexpensive to purchase . sixth , the early and greater - than - normal use of\npeaking units - plants that are designed to only operate under peak demand\nconditions - necessitated unscheduled maintenance , rendering them unavailable\nat critical times . seventh , during the final months of 2000 , some power\nplants were forced to shut down because increased usage exhausted their air\nemissions credits . eighth , a warm summer followed by an early onset of cold\nweather further drove up demand for power . finally , the increased power\ncosts in california could have been substantially mitigated through\nlong - term power contracts and less reliance on the volatile short - term\npower market . \" california is currently in a difficult position , but now\nhas the opportunity to refine its regulatory model and craft a long - term\nenergy policy , \" said dunn . \" el paso has been one of the largest suppliers\nof energy to california for more than 50 years , and we are actively\nparticipating with all parties in california to be a part of a long - term ,\nstable solution to california ' s energy needs . \" el paso corporation , the\nlargest and most broadly based natural gas company in the world , spans the\nenergy value chain from wellhead to electron . with an enterprise value in\nexcess of $ 50 billion , el paso is a leader in every phase of the natural\ngas industry . the company owns and operates a significant portion of the\nnorth american natural gas delivery grid , operates the fastest growing ,\nmost sophisticated energy merchant group , and is the nation ' s third largest\nnatural gas producer . el paso , a leader in risk management techniques , is\nfocused on maximizing shareholder value , transforming existing markets , and\nspeeding the development of new markets . visit el paso at www . epenergy . com .\ncautionary statement regarding forward - looking statements this release\nincludes forward - looking statements and projections , made in reliance on\nthe safe harbor provisions of the private securities litigation reform act\nof 1995 . the company has made every reasonable effort to ensure that the\ninformation and assumptions on which these statements and projections are\nbased are current , reasonable , and complete . however , a variety of factors\ncould cause actual results to differ materially from the projections ,\nanticipated results or other expectations expressed in this release . while\nthe company makes these statements and projections in good faith , neither\nthe company nor its management can guarantee that the anticipated future\nresults will be achieved . reference should be made to the company ' s ( and\nits affiliates ' ) securities and exchange commission filings for additional\nimportant factors that may affect actual results .\nbob brooks\ngpcm natural gas market forecasting system\nhttp : / / gpcm . rbac . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.089+0000", "entityId": 9932, "properties": {"text": "Subject: dispatch within maharashtra\njim ,\nplease find attached some slides that show the results of the henwood run\ngiving dispatch for the dabhol plant within maharashtra . i have also sent\nthe presentation we made to you to wade . he is to get back on when would be\nan appropriate time for him to go over the presentation with me .\nvince , stinson and i have placed ourselves on rebecca ' s calender for friday ,\nand we will make the complete pitch to her . it would be great if you too\ncould be present at the meeting . if it is possible , please do let me know .\non the attached slides , please note that :\nthe slides all assume that there is a 1 part power tariff , mseb liability for\nthe entire capacity payment is not considered .\nthe henwood model was with no power flowing out of maharashtra\nwhen variable o & m costs , fixed o though in\nsome months ( jan ) it goes as high as $ 69 mm . hence , overall , mseb can pay\nfor the dispatches as shown in the henwood run provided , they are not paying\nfor the capacity payment for the whole 2184 mw plant .\nin conclusion , therefore , mseb has the need for between 1200 to 410 mw on a\nseasonal basis . this means that the power remaining to be sold to other\nstates is the difference between that and 2184 mw .\nhowever , since the demand within maharashtra varies seasonally , it may mean\nthat we need to market seasonal products to other states , not long term\nblocks .\nthese are our conclusions . we may continue to work some more on the fuel and\nhedging side . if you have any more questions for me , please let me know ,\nelse for now there will not be any new henwood runs .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.097+0000", "entityId": 9933, "properties": {"text": "Subject: enside newsletter\ngood afternoon , mr . kaminski !\nthank you for agreeing to an interview for a business unit article for the\nnext enside . molly magee spoke very enthusiastically about you and your\ngroup .\ni am on your calendar for thursday , march 1 at 10 am . i will bring a tape\nrecorder and plan to finish in 30 - 45 minutes . attached , please find some\npossible questions / topics for us to discuss .\nplease call me if you have any questions .\nthanks again .\nkathie grabstald\news public relations\nx 3 - 9610", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.102+0000", "entityId": 9934, "properties": {"text": "Subject: re : var model - some questions\ni know nothing about this . since neither research nor energydesk know about\nit , all we can do is collect their requirements and provide what they ' re\nlooking for as a new project . this will require vince ' s input since we ' ll\nessentially be sending research models to the outside world .\nsteve\nsharad agnihotri\n27 / 02 / 2001 14 : 48\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : var model - some questions\nsteve ,\ndo you know anything about this ?\nsharad\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sharad agnihotri / lon / ect on 27 / 02 / 2001\n14 : 48 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nandreas lorenz\n27 / 02 / 2001 14 : 01\nto : sharad agnihotri / lon / ect @ ect\ncc :\nsubject : var model - some questions\nhi sharad ,\ncould you please have a look at below var model - the dll file should have\nbeen provided by research ( if some time back . . . )\ncan you provide any information re\nwhat and how it does it ?\nunderlying assumptions ?\nshortfalls ?\nmany thanks for your help !\ncheers ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.107+0000", "entityId": 9935, "properties": {"text": "Subject: job well done / bob lee , kenneth parkhill\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 02 / 28 / 2001\n03 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmario de la ossa @ enron\n02 / 28 / 2001 03 : 26 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : job well done / bob lee , kenneth parkhill\njust wanted to pass along my appreciation for the fine work these 2 gents are\ndoing on the products model . their attention to detail and customer focus\nhas greatly facilitated the performance of my job . thanks , mario .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.111+0000", "entityId": 9936, "properties": {"text": "Subject: 2001 research support for ebs\nbarry ,\nthanks for the timely email . i have your name on my list of people to\ncontact this week as kevin hannon had mentioned to me just yesterday that our\ngroup might be able to help you in translating positions for the new risk\nsystem for ebs .\nyou are right that i haven ' t been spending much time on 44 . martin lin has\nbeen taking the lead in day to day management of most of the current projects\nthat we are supporting . we have been somewhat short handed since samer\ntakriti left the group last fall and we were out - bid by mckinsey for cantekin\ndincerler who had helped us with ebs projects as an intern over the\nsummer . however , we do have additional help coming . iris mack , a very\nbright new hire who comes with significant consulting and risk management\nexperience , will be starting with the group next week . i am hoping that ,\ntogether with martin , she will allow us to significantly increase the\nresearch group presence on 44 and address areas which are currently\nundersupported .\ncan i get on your schedule some time next week in order to map out the areas\nwhere we could best contribute to the risk management projects and to\nintroduce iris and martin to you ? almost any time would be fine , or you can\nhave your assistant coordinate with shirley crenshaw x 35290 .\nregards ,\nstinson\nx 34748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.117+0000", "entityId": 9937, "properties": {"text": "Subject: 2001 research allocation to ebs\nvince , i hope you are well .\na question if i may .\ni noticed that ebs ' s allocation for 2001 from the corporate research group ' s\nbudget was $ 1 . 44 m . could you please give me an ' heads - up ' on what i can\nexpect for the dollars - in terms of people , on - going projects , anticipated\nwork - program . i ' m aware that stinson in our point person , but i ' ve seen him\nfor a long while . a breakdown / schedule would be great .\ni appreciate your help .\nthanks .\nbarry .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.122+0000", "entityId": 9938, "properties": {"text": "Subject: damages limitations\nbill and vince , please see the attached memorandum . vince , this relates to\nwhat we briefly spoke about during our recent meeting .\ncheryl , can you set up a meeting for bill , vince and i to meet and discuss ?\nthanks .\nrz", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.128+0000", "entityId": 9939, "properties": {"text": "Subject: financial mathematics grad from u of c\nvince and ravi ,\nbelow is a message from the student whose resume i forwarded to you earlier\nthis week . vince , i suspect he may be best suited for your group , but i\ndon ' t know what your current needs are . unfortunately , i ' m leaving enron and\nmy last day is friday of this week , so i won ' t be around to help this guy\nthrough the process or host him when he is here . can either of you suggest\nsomeone i can ask to handle this for you if you ' re interested in him ?\nthanks .\nregards ,\nlaura\n- - - - - original message - - - - -\nfrom : \" laura howenstine \" @ enron\ne + 40 enron @ enron . com ]\nsent : wednesday , february 28 , 2001 3 : 32 pm\nto : howenstine , laura\nsubject : fwd :\n> from : \" kodjo adovor \"\n> to :\n> date : tue , 27 feb 2001 22 : 27 : 01 - 0600\n>\n> dear laura ,\n> i will be in texas ( close to houston ) for spring break between march 17 and\n> march 25 . i was wondering if vince and ravi will be interested in an\n> informational interview on one of those days during lunch or something like\n> that . i can just come in and talk to them about what they do and take a\nlook\n> at the work environment . thanks .\n>\n> regards ,\n>\n> kodjo adovor\n> the university of chicago\n> financial mathematics\n>\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.132+0000", "entityId": 9940, "properties": {"text": "Subject: re : mgmt 656\njack ,\nthis is up to the mba program .\ni have no problem if they agreed to it .\nthe only constraint is the space and we\nshall have to address the issue on thursday\nduring the first class .\nvince\n\" jack blanton , jr . \" on 02 / 28 / 2001 03 : 09 : 16 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : mgmt 656\ndear proffesor kaminski\ni wish to audit the energy derivatives class which\nyou are teaching on thursday nights . i am currently a\nsecond year student in the emba program and am\nchairman of nicklos drilling company . nicklos\ndrilling currently operates three land rigs along the\ntexas gulf coast and is constucting a fourth . i have\nreceived permision from the emba program to audit the\nclass and the only conditions would be your permission\nand space avalability .\nthank you for your consideration ,\njack s . blanton , jr .\njblantonjr @ yahoo . com\n713 - 222 - 0191\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.136+0000", "entityId": 9941, "properties": {"text": "Subject: rice course\nvince\ni am an adjunct professor at rice , working with wil uecker in executive\neducation . with your concurence , i would like to sit in your energy\nderivatives course . i understand from wil that there are 38 students\nregistered for the course . if you consent , would you let me know what\nmaterial i need .\nthank you ,\ndennis w . loughridge\n713 - 348 - 2812", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.141+0000", "entityId": 9942, "properties": {"text": "Subject: fwd : mgmt 656\n- - - \" jack blanton , jr . \" wrote :\n> date : wed , 28 feb 2001 13 : 09 : 16 - 0800 ( pst )\n> from : \" jack blanton , jr . \"\n> subject : mgmt 656\n> to : vince . j . kaminski @ enron . com\n>\n> dear proffesor kaminski\n> i wish to audit the energy derivatives class\n> which\n> you are teaching on thursday nights . i am currently\n> a\n> second year student in the emba program and am\n> chairman of nicklos drilling company . nicklos\n> drilling currently operates three land rigs along\n> the\n> texas gulf coast and is constucting a fourth . i\n> have\n> received permision from the emba program to audit\n> the\n> class and the only conditions would be your\n> permission\n> and space avalability .\n> thank you for your consideration ,\n> jack s . blanton , jr .\n> jblantonjr @ yahoo . com\n> 713 - 222 - 0191\n>\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> do you yahoo ! ?\n> get email at your own domain with yahoo ! mail .\n> http : / / personal . mail . yahoo . com /\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.145+0000", "entityId": 9943, "properties": {"text": "Subject: confidential information and securities trading\nto : kaminski , wincenty\nemail : vkamins @ enron . com - 7138533848\n?\nenron wholesale services - office of the chairman\n?\nfrom : ? ? mark frevert , chairman & ceo\n? ? ? ? ? ? greg whalley , president & coo\n? ? ? ? ? ? mark haedicke , managing director & general counsel\n?\nsubject : ? ? confidential information and securities trading\n?\nenron wholesale services ( ' ews ' ) maintains official policies and procedures\nregarding confidential information and securities trading ( ' policies and\nprocedures ' ) , which have been revised as of november 15 , 2000 to reflect the\nnew ews structure . these policies and procedures are intended to allow us\nsimultaneously to pursue our diverse businesses and to protect confidential\ninformation , our reputation for integrity , and ews and its employees from\nlegal liability .\n?\nyou are required to become familiar with , and to comply with , the policies\nand procedures . the newly revised policies and procedures are available for\nyour review on legalonline , the new intranet website maintained by the enron\nwholesale services legal department . please click on the attached link to\naccess legalonline :\n?\n?\nyou must certify your compliance with the policies and procedures within two\nweeks of your receipt of this message . the legalonline site will allow you\nto quickly and conveniently certify your compliance on - line with your sap\npersonal id number . if you have any questions concerning the policies or\nprocedures , please call lance schuler at extension 3 - 5419 , mark haedicke at\nextension 3 - 6544 , alan aronowitz at extension 3 - 3214 , bob bruce at extension\n5 - 7780 or donna lowry at extension 3 - 1939 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.151+0000", "entityId": 9944, "properties": {"text": "Subject: fund raising for mit sloan school\ndear vince ,\nplease find the following description of the program that i would like to\nraise additional funding for . i will follow up today with a phone call to\nanswer any questions you may have .\nas always we appreciate your time and support .\nthanks ,\njozef\nthe eastern european students at mit sloan school of management are\npreparing an eastern european week to be held in march 2001 . the one - week\nlong program will familiarize our classmates with many of the countries\nthat are going through the post communist transformation . as you well know ,\neastern europe has a great deal of opportunities for many companies .\nunfortunately , it also presents many obstacles that make most of the\nopportunities difficult to capture .\nbecause we believe that we can help to eliminate some of these obstacles ,\nwe want to bring the eastern european experience to mit sloan school of\nmanagement . familiarizing the future business leaders with the countries\nis only one step toward reforming eastern europe , but we believe it is\nworth our time and effort .\nduring the week , we plan to bring series of lectures addressing the\nbusiness environment in eastern europe . we want to emphasize especially\nthe success stories from eastern europe . such companies as enron ,\nvolkswagen , exxonmobil , gm , and ge have entered the eastern european market\nand show commitment to stay in it . in at least one panel discussion with\nacademic experts and industry participants we hope to let everyone know\nthat eastern europe is a real place for business .\nin addition to the educational activities , we are preparing number of\ncultural events that will introduce the culture of this area .\nthe scope of our program depends greatly on the funds we will be able to\nraise from our sponsors . in return , we plan to advertise our sponsors in\nevery activity we will do . we will make banners and any other appropriate\nadvertising as desired by the sponsor . should a sponsor be willing to send\na speaker for the panel discussion or to give a speech / lecture we would\nappreciate the enrichment to our program .\nthe advertising will reach nearly 700 sloan students and faculty . in\naddition , the advertising will reach all newly admitted students , as they\nwill visit our campus for the admit day ( an official program to sell our\nschool to the admitted students ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.156+0000", "entityId": 9945, "properties": {"text": "Subject: re : \" analytical \" var implementation in risktrac\ndebbie ,\ni am forwarding to you a 2 page document describing implementation of\n\" analytical \" var in risktrac .\nhere is why this effort is very important :\n1 . we need to calculate var for other percentile but 5 ( 1 % or even 0 . 2 % as\nmentioned by rick buy )\nand our simulation model can not handle required number of simulations ;\n2 . we need to present additional risk measures ( such as mean tail loss ) to\nthe board .\nthe analytical approach is implemented in a spreadsheet and fully tested\nalready so there will be no problems\nwith the algorithm itself .\nwe need to get together and discuss it implementation .\nwhat do you think ?\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.161+0000", "entityId": 9946, "properties": {"text": "Subject: re : livelink test for research\nmoyez lallani has agreed to give a presentation on livelink , the application\nwhich will replace the research projects tracking database at next thursday ' s\ngroup meeting . let me know if there is any problem with this .\nthanks ,\nstinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 02 / 2001\n07 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : moyez lallani / enron @ enronxgate on 03 / 02 / 2001 07 : 32 am\nto : stinson gibner / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : re : livelink test for research\nroom 30 cl on thursday 3 / 8 / 2001 at 11 : 30 . i have it recorded in my calendar .\ni \u0001 , ll bring a laptop . please let me know if there is a change of plans .\nthanks .\nmoyez lallani\nenron networks\n713 - 345 - 3683\nmoyez . lallani @ enron . com\n- - - - - original message - - - - -\nfrom : gibner , stinson\nsent : friday , march 02 , 2001 7 : 07 am\nto : lallani , moyez\ncc : shanbhogue , vasant\nsubject : re : livelink test for research\nmoyez ,\nthanks , i will try and collect the information today . vasant and i were\nthinking that it would make sense to let people try the application under the\ntest environment for a few weeks . then we can incorporate any additional\nsuggestions and move to production around the first week in april .\nour meeting room does have a screen and network connection , and we can\nprofide an lcd projector as well . how about thursday of next week ?\nthanks ,\nstinson\nfrom : moyez lallani / enron @ enronxgate on 03 / 01 / 2001 04 : 35 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : re : liveline test for research\nstinson ,\nsorry to have to do this to you but i need some additional information in\norder to add these users to the research projects group . please use the\nattached template to capture the information needed and forward to me at your\nconvenience . also , the group has only been set up in the test environment .\ndo you want to add the users to the test environment or are you ready to\nmigrate to production ?\nas far as the demo is concerned , i \u0001 , ll be happy to accommodate your group .\nhow many people do you expect at the demo and does the room have a display\nscreen and network connection ? let me know which thursday you would like me\nto conduct the demo and i \u0001 , ll be there .\n>\nmoyez lallani\nenron networks\n713 - 345 - 3683\nmoyez . lallani @ enron . com\n- - - - - original message - - - - -\nfrom : gibner , stinson\nsent : thursday , march 01 , 2001 4 : 24 pm\nto : lallani , moyez\nsubject : liveline test for research\nmoyez ,\ncan you add access to the following users for the livelink research projects\ndatabase ? also , would you be available to give a short demonstration and\ntutorial on how to use livelink for our group ? we hold a lunch meeting\neach thursday from 11 : 30 - 1 : 00 in 30 cl at which there is usually a short\npresentation on a topic of interest . i think it would be very useful for the\ngroup to have an overview of how to use the tool before everyone jumps into\nit . the presentation can be quite informal . let me know if you would be\navailable in the next couple of weeks .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 01 / 2001\n04 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ns @ _ - \u0001 g _ , x ? \u0003 ~ o ? ' ] s ? _ _ _ _ s ? \b \u000f _ ? * ? ? ? j ? ? \u000f _ \" ? zn _ ? ? _ y _ 7 d ? [ t ? ? _ yn ? [ . _ _ _ \" ? * ? ? _ b ? ; _ _ _ y _ ? \u000f _\n, ? _ ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.166+0000", "entityId": 9947, "properties": {"text": "Subject: re : 1997 risk paper on pricing of electricity derivatives\nbernard ,\nyes , i can read a dvi file . you can also cc\nmy home address : vkaminski @ aol . com . i shall\ntry to send you an answer to your question on weekend .\nvince\n\" murphy , bernard \" on 03 / 01 / 2001 09 : 18 : 58 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : 1997 risk paper on pricing of electricity derivatives\nvince ,\ni can send you a scientific word dvi file ( at the weekend ) if you can read\nscientific word files ? the dissertation hasn ' t been reviewed by les or the\nexternal yet - although its been at forc for 2 months . i think that the\nempirical chapter is probably the one which would be of most relevance to\nboth our company ' s businesses - although i ultimately didn ' t have the time\nto ' explicitly ' price the jump risk - premium which i conjectured is possibly\nimplicit in the prices of exchange - traded electricity futures - options -\nrather i developed an implicit estimation procedure which will enable a\nrough assessment ( with a little bit of further work , but not too much ) be\nmade of the price of jump risk in wholesale power markets .\nin other words , i assumed spot jump - risk to be undiversifiable , and\nessentially devoted 2 theoretical chapters to :\n1 ) proving that a jump - diffusion trading model is \" incomplete \" ( synthesising\nthe securities markets framework with martingale representation theory ) -\nnote that i did not assume that markets could be dynamically completed with\n' term structure ' securities as in the hjm w / jumps papers of shirakawa and\ndas and ;\n2 ) deriving an explicit risk - adjustment process for ' implementing ' the price\nof jump - risk using a jump - diffusion marginal indirect utility of wealth\nprocess ( ie . a jump - augmented production economy approach in the spirit of\ncir , bates , ahn whereas in the latter the driftless forward supposition\nmeans that i have to capture mean - reversion via the futures volatility\nfunction , and jumps are less easy to calibrate . any suggestions ?\nregards\nbernard\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 01 march 2001 14 : 54\nto : murphy , bernard\ncc : shirley . crenshaw @ enron . com ; vince . j . kaminski @ enron . com\nsubject : re : 1997 risk paper on pricing of electricity derivatives\nbernard ,\ni am forwarding your message to my assistant and she will mail you a\nreprint .\ni would be glad to take a look at your dissertation . is it available as a\npublication , working paper ?\nvince\n\" murphy , bernard \" on 03 / 01 / 2001 02 : 17 : 39 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : 1997 risk paper on pricing of electricity derivatives\nhello vince ,\nmy name is bernard murphy - i received your e - mail address from les\nclewlow ,\nwho was my phd supervisor at the financia options research centre at\nwarwick\nbusiness school . i ' ve just finished my phd on electricity price jump\ndiffusions : a theoretical and empirical study in incomplete markets -\nhence my interest in electricity price modelling and derivative pricing . i\nwas looking to get hold of a copy of your 1997 paper , which has recently\ncome to my attention :\n\" the challenge of pricing & risk - managing electricity derivatives \" , the us\npower market , risk publications , pp . 149 - 171 .\nand les suggested that i contact you directly ( les is travelling at present\nand doesn ' t have an electronic copy available ) to request an e - copy .\nincidentally , i am lecturer in finance / financial mathematics at\nuniversity\nof limerick ( ireland ) and have taken a year out to work for caminus uk ,\nwhere i am working on introducing and developing a markets - based approach\n( spark - spread ) to real asset valuations in the uk power industry .\nthanks in advancve\nbernard murphy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.171+0000", "entityId": 9948, "properties": {"text": "Subject: doreen\nv -\ni spoke with doreen this morning re : our san francisco project . please\nforward info to her at\ndoreen @ magdalinweiss . com\nare you up fro brunch at my house on sunday with bill and mary ? kathryn will\nbe home on midterm break\np -", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.176+0000", "entityId": 9949, "properties": {"text": "Subject: re : zakup ksiazki \" inzynieria finansowa \" w wnt\npani grazyno ,\ndziekuje bardzo za wiadomosc . autor ksiazki przeslal mi egzemplarz .\nna pewno skorzystam z okazji , by kupic inne ksiazki pani wydawnictwa .\nany web - site i can access ?\nw . kaminski\n\" wydawnictwa naukowo - techniczne \" on 03 / 01 / 2001\n09 : 57 : 19 am\nto :\ncc :\nsubject : zakup ksiazki \" inzynieria finansowa \" w wnt\nuprzejmie informuje , ze do dnia dzisiejszego nie wplynely pieniadze na\nzamowiona ksiazke , wobec czego uwazam to za rezygnacje z zakupu .\nserdecznie pozdrawiam .\ngrazyna piesniewska", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.185+0000", "entityId": 9950, "properties": {"text": "Subject: re : rice course\nthank you , see you this evening .\ndennis loughridge\n> from : vince . j . kaminski @ enron . com\n> to :\n> subject : re : rice course\n> date : wed , 28 feb 2001 17 : 36 : 59 - 0600\n>\n>\n> dennis ,\n>\n> no problem .\n>\n> vince\n>\n>\n>\n>\n>\n> \" dennis w . loughridge \" on 02 / 28 / 2001\n> 04 : 24 : 35 pm\n>\n> please respond to\n>\n> to :\n> cc :\n> subject : rice course\n>\n>\n> vince\n> i am an adjunct professor at rice , working with wil uecker in executive\n> education . with your concurence , i would like to sit in your energy\n> derivatives course . i understand from wil that there are 38 students\n> registered for the course . if you consent , would you let me know what\n> material i need .\n> thank you ,\n> dennis w . loughridge\n> 713 - 348 - 2812\n>\n>\n>\n>\n>\n>\n>\n>\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.193+0000", "entityId": 9951, "properties": {"text": "Subject: possible rtp conference\ndear mr . kaminski :\nthank you for talking with me about a possible rtp conference . i would\nlike to include some discussions of what has been learned in other industries .\nas i indicated , frank wolak suggested that i contact you . in discussing\npower markets with frank and other colleagues at stanford and epri , it\nseems quite evident that real - time pricing for retail customers is the\n\" forgotten resource \" in more efficient power markets . there seems to be a\nlot of confusion about what rtp means and it also seems that many\nresearchers need to address some practical but important problems . i was\nasked whether a group like stanford ' s emf might explore this topic and give\nit the visibility that would have it considered more seriously by\npolicymakers .\nfrank thought that you might be someone who could help me structure a\nuseful approach and who might also see whether enron could become a major\nsponsor . i was hoping that this issue was sufficiently important to enron\nthat the company might consider providing $ 25 , 000 . as you may appreciate ,\nit requires some thought and effort to make sure that the product of the\nconference is widely circulated among key government groups .\ni would be very interested in hearing from you if you can provide ideas and\nrecommendations for people ( perhaps yourself or a colleague ) to\nparticipate . i would also appreciate any consideration by enron of\nproviding funding for this effort .\nthank you ,\nhill huntington\n- retail notes . rtf\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.198+0000", "entityId": 9952, "properties": {"text": "Subject: summer internships at enron\nceleste ,\ni have just talked to kim . i told her she will receive one .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 01 / 2001\n09 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 01 / 2001 09 : 25 am\nto : celeste roberts / hou / ect @ ect\ncc : kristin gandy / na / enron @ enron , christie patrick / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , piazze @ wharton . upenn . edu\nsubject : summer internships at enron\nceleste ,\nit seems that the process lasted too long for some students\nand only kim whitsel is interested in the internship at this point .\nher resume has been forwarded to you .\ni am enclosing it just in case .\nthanks for your help .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 01 / 2001\n09 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 23 / 2001 02 : 28 : 48 pm\nto : \" ' vkamins @ enron . com ' \"\ncc : \" ' piazze @ wharton . upenn . edu ' \"\nsubject : summer internships at enron\nvince :\nthank you to you , ken and christie for coming to campus for the enron tiger\nteam mid - project review . the students are working hard and appreciate your\ninsight and suggestions to the project . thank you for your support of the\nwharton school .\nkim whitsel ( whitselk @ wharton . upenn . edu ) of tiger team 1 has informed me\nthat she is very much interested in a summer internship at enron this year .\ni don ' t believe some of the students understood the process you had setup\nfor them at enron as part of the tiger team . being concerned with having\nsummer employment , they interviewed with other firms and ultimately accepted\npositions . the students asked that i express to you that this does not mean\nthey are not interested in full time work at enron next year . i apologize\nand take responsibility for the lack of communication in this regard . i\nthink it is a lesson learned and perhaps , in the future , we can make the\nagreement to students understood in advance of their \" dedicated interview\nweek \" and eliminate their need to interview at all . this can also be an\nadded advantage of applying to be a member of the tiger team .\nplease let me know if you have any questions and exactly how kim whitsel\nshould proceed .\nthank you ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.203+0000", "entityId": 9953, "properties": {"text": "Subject: re : 1997 risk paper on pricing of electricity derivatives\nbernard ,\ni am forwarding your message to my assistant and she will mail you a reprint .\ni would be glad to take a look at your dissertation . is it available as a\npublication , working paper ?\nvince\n\" murphy , bernard \" on 03 / 01 / 2001 02 : 17 : 39 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : 1997 risk paper on pricing of electricity derivatives\nhello vince ,\nmy name is bernard murphy - i received your e - mail address from les clewlow ,\nwho was my phd supervisor at the financia options research centre at warwick\nbusiness school . i ' ve just finished my phd on electricity price jump\ndiffusions : a theoretical and empirical study in incomplete markets -\nhence my interest in electricity price modelling and derivative pricing . i\nwas looking to get hold of a copy of your 1997 paper , which has recently\ncome to my attention :\n\" the challenge of pricing & risk - managing electricity derivatives \" , the us\npower market , risk publications , pp . 149 - 171 .\nand les suggested that i contact you directly ( les is travelling at present\nand doesn ' t have an electronic copy available ) to request an e - copy .\nincidentally , i am lecturer in finance / financial mathematics at university\nof limerick ( ireland ) and have taken a year out to work for caminus uk ,\nwhere i am working on introducing and developing a markets - based approach\n( spark - spread ) to real asset valuations in the uk power industry .\nthanks in advancve\nbernard murphy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.208+0000", "entityId": 9954, "properties": {"text": "Subject: 1997 risk paper on pricing of electricity derivatives\nhello vince ,\nmy name is bernard murphy - i received your e - mail address from les clewlow ,\nwho was my phd supervisor at the financia options research centre at warwick\nbusiness school . i ' ve just finished my phd on electricity price jump\ndiffusions : a theoretical and empirical study in incomplete markets -\nhence my interest in electricity price modelling and derivative pricing . i\nwas looking to get hold of a copy of your 1997 paper , which has recently\ncome to my attention :\n\" the challenge of pricing & risk - managing electricity derivatives \" , the us\npower market , risk publications , pp . 149 - 171 .\nand les suggested that i contact you directly ( les is travelling at present\nand doesn ' t have an electronic copy available ) to request an e - copy .\nincidentally , i am lecturer in finance / financial mathematics at university\nof limerick ( ireland ) and have taken a year out to work for caminus uk ,\nwhere i am working on introducing and developing a markets - based approach\n( spark - spread ) to real asset valuations in the uk power industry .\nthanks in advancve\nbernard murphy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.213+0000", "entityId": 9955, "properties": {"text": "Subject: web based expense report implementation deadline\nxms communication\nthe expense management system ( xms ) is a tool used to electronically submit\nyour expense report for approval and payment through the enron intranet . it\nis user friendly , accurate and less labor intensive for you and our\naccounting staff . this product was initially made available october 15 , 2000\nand approximately 50 % of the houston employees are currently using it to\nsubmit their expense reports . our goal is to have all enron employees using\nthe xms system by april 15 ( income tax day \u0001 * easy to remember ) .\nthere are some changes coming to the accounts payable ( ap ) department that\nare compelling us to fully utilize the xms system . in the near future paper\nand e - mail directed expense reports will not be accepted . if you are unsure\nof how to use the xms system there is training available through leap that\nwill explain how to use the system . the following training information is\nfrom the december 14 th enron announcement about xms :\ntraining\ngo to the it central web page . select services > training . click on\n\" schedules \" in the north america column , and go to the xms workshop schedule\nto choose your class . if no > classes are listed , call the training\ndepartment and place your request at ( 713 ) 853 - 1816 . those in outlying\nlocations and those who prefer on - line training can use leap by signing on to\nisc . enron . com and clicking on \" training and education , \" then leap ( shown as a\nlink ) . use xms ( lower case ) as the user id and password .\ndocumentation\nstep by step documentation is also available from it central web page . select\nservices > training . click on \" documentation \" in the north america column and\nchoose xms user ' s guide from the list .\napplication support services\ncall the isc help desk at ( 713 ) 345 - 4 sap ( 4727 ) . do not call accounts\npayable with questions about how to use the system or with issues regarding\nelectronic pre - populated data .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.219+0000", "entityId": 9956, "properties": {"text": "Subject: softs information\nattached is the ubs summary . the ubs deal is confidential due to its large\nsize and the summary is an informal overview . the deal structure has not\nbeen defined ; this sheet provides only rough details . call if you have any\nquestions .\nerin\next 3 - 9677", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.223+0000", "entityId": 9957, "properties": {"text": "Subject: re : visit to houston\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 02 / 2001\n01 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnick bambos on 03 / 02 / 2001 11 : 33 : 11 am\nto : stinson . gibner @ enron . com\ncc : gappy @ stanford . edu , cope @ csli . stanford . edu , bambos @ stanford . edu\nsubject : re : visit to houston\nhi stinson ,\ngiuseppe , eric and i , arrive on thusday night at 10 pm . we ' ll try\nto reserve rooms at the doubletree hotel next to the enron building .\ndoes enron get special deals with this hotel ? > > > giuseppe , can you\nplease make the reservations ? > > giuseppe , can you please call stinson and see how we can optimize the\nagenda and maximize the value of the visit . i am swamped today . . . nick ,\n>\n> i hope everything is ok in palo alto . are you able to come to houston on\n> the 9 th of march ? please let me know of your plans so we will know what\n> times to set up discussions . i will try calling you tomorrow to check on\n> your plans , or feel free to call me .\n>\n> regards ,\n>\n> stinson\n> 713 853 4748", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.230+0000", "entityId": 9958, "properties": {"text": "Subject: schedule\nhi vince\nthanks for the chat earlier today . slava is out this coming week ( 5 th - 9 th\nmarch ) , then i ' ll be out for the next two weeks ( 12 th - 23 rd march ) . i expect\nwe ' ll both be around from 26 th march onwards , though i will be away again at\nparis risk 10 th - 11 th april .\ncheers ,\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.234+0000", "entityId": 9959, "properties": {"text": "Subject: research support in london\nvince ,\nsteve leppard informed my today that he will be moving to enron metals . i\nthink that leaves a leadership hole in research here . when that happens in a\nplace like this , resources get diverted to the squeakiest wheel . do you have\nany advice ? i am concerned that london continues to lag behind in the\nimplementation and analysis of var - most commodities are on spreadsheets and\nthere is not a lot of attention on calibration , analyzing output , refining ,\nimproving etc . .\npls advise\nted", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.240+0000", "entityId": 9960, "properties": {"text": "Subject: rick jones ' address\n18 pale dawn pl\n936 271 3283\nlook for capstone - off of research . there are other turns but that will get\nyou in the ball park on the map .\nsee you monday !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.244+0000", "entityId": 9961, "properties": {"text": "Subject: re : summer internship\njinbaek ,\nyou can coordinate the details with me .\nlet me know what the time frame is for you\nand we shall send you an appropriate offer .\nvince\njinbaek kim on 03 / 02 / 2001 04 : 43 : 06 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : summer internship\ndr . kaminski ,\nthank you very much .\nof course , i ' ll be happy to have an opportunity\nto work at such a wonderful company .\ni was contacting with surech raghavan at deal bench team ,\nand was going to express my appreciation to you again\nafter settling down process with them .\nfor the period of working ,\ni still need to coordinate with my advisor and\nmay need to adjust according to that .\nbut anyway , i ' ll try to coordinate smoothly .\nplease let me know whether i should keep contacting\nwith deal bench team ,\nfor working period and\nfor misc . living support such as finding a place , rent a car , etc .\ni appreciate you so much again ,\nfor arranging such meetings and giving me an opportunity .\nall this opportunity will not be available to me ,\nwithout your kind help .\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> hello ,\n>\n> sorry for a delay in getting back to you .\n> we would like very much to offer you a summer internship .\n>\n> please , let me know if you are interested .\n>\n> vince kaminski\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.249+0000", "entityId": 9962, "properties": {"text": "Subject: re : summer internship\ndr . kaminski ,\nthank you very much .\nof course , i ' ll be happy to have an opportunity\nto work at such a wonderful company .\ni was contacting with surech raghavan at deal bench team ,\nand was going to express my appreciation to you again\nafter settling down process with them .\nfor the period of working ,\ni still need to coordinate with my advisor and\nmay need to adjust according to that .\nbut anyway , i ' ll try to coordinate smoothly .\nplease let me know whether i should keep contacting\nwith deal bench team ,\nfor working period and\nfor misc . living support such as finding a place , rent a car , etc .\ni appreciate you so much again ,\nfor arranging such meetings and giving me an opportunity .\nall this opportunity will not be available to me ,\nwithout your kind help .\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> hello ,\n>\n> sorry for a delay in getting back to you .\n> we would like very much to offer you a summer internship .\n>\n> please , let me know if you are interested .\n>\n> vince kaminski\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.254+0000", "entityId": 9963, "properties": {"text": "Subject: re : vlady gorny\nperfect . thanks , vince .\nin all likelihood , it would be just fine , it is just not customary for job\ntalks to include others . again , since you are a member of the risk\nmanagement chair search committee ( you may not know of this official\ncapacity , but i believe it is the case ) , we by all means hope that you will\nbe able to attend the seminar as well as dinner .\ni will get details on the schedules to you early next week .\nbbo\nat 03 : 38 pm 3 / 2 / 01 - 0600 , you wrote :\n> barbara ,\n>\n> i called vlady gorny and explained that the presentation by jorion is not\n> offered\n> under the umbrella of the seminar sponsored by enron and that it is a\n> closed meeting for the school faculty .\n>\n> i don ' t think that enron would open its job interviews to rice observers\n> who expressed interest and i made this comment to vlady . he is ok with\n> this .\n>\n> you can let his program director know that i have explained to vlady\n> that it is a meeting for limited audience and that he does not expect to be\n> invited .\n>\n>\n> please , let me know the details of the dinners .\n>\n> vince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.258+0000", "entityId": 9964, "properties": {"text": "Subject: vlady gorny\nbarbara ,\ni called vlady gorny and explained that the presentation by jorion is not\noffered\nunder the umbrella of the seminar sponsored by enron and that it is a\nclosed meeting for the school faculty .\ni don ' t think that enron would open its job interviews to rice observers\nwho expressed interest and i made this comment to vlady . he is ok with this .\nyou can let his program director know that i have explained to vlady\nthat it is a meeting for limited audience and that he does not expect to be\ninvited .\nplease , let me know the details of the dinners .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.263+0000", "entityId": 9965, "properties": {"text": "Subject: re : summer internships at enron\nvince :\nthanks . yes it is unfortunate that we were not able to quickly identify who\nthe interested tiger team students were . we will go ahead and process an\noffer letter for kim and get it to her immediately .\nalso , thanks for agreeing to help out with stanford . hopefully we will get a\nfew good ones !\nregards ,\nceleste\nvince j kaminski\n03 / 01 / 2001 09 : 32 am\nto : celeste roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : summer internships at enron\nceleste ,\ni have just talked to kim . i told her she will receive one .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 01 / 2001\n09 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 01 / 2001 09 : 25 am\nto : celeste roberts / hou / ect @ ect\ncc : kristin gandy / na / enron @ enron , christie patrick / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , piazze @ wharton . upenn . edu\nsubject : summer internships at enron\nceleste ,\nit seems that the process lasted too long for some students\nand only kim whitsel is interested in the internship at this point .\nher resume has been forwarded to you .\ni am enclosing it just in case .\nthanks for your help .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 01 / 2001\n09 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 23 / 2001 02 : 28 : 48 pm\nto : \" ' vkamins @ enron . com ' \"\ncc : \" ' piazze @ wharton . upenn . edu ' \"\nsubject : summer internships at enron\nvince :\nthank you to you , ken and christie for coming to campus for the enron tiger\nteam mid - project review . the students are working hard and appreciate your\ninsight and suggestions to the project . thank you for your support of the\nwharton school .\nkim whitsel ( whitselk @ wharton . upenn . edu ) of tiger team 1 has informed me\nthat she is very much interested in a summer internship at enron this year .\ni don ' t believe some of the students understood the process you had setup\nfor them at enron as part of the tiger team . being concerned with having\nsummer employment , they interviewed with other firms and ultimately accepted\npositions . the students asked that i express to you that this does not mean\nthey are not interested in full time work at enron next year . i apologize\nand take responsibility for the lack of communication in this regard . i\nthink it is a lesson learned and perhaps , in the future , we can make the\nagreement to students understood in advance of their \" dedicated interview\nweek \" and eliminate their need to interview at all . this can also be an\nadded advantage of applying to be a member of the tiger team .\nplease let me know if you have any questions and exactly how kim whitsel\nshould proceed .\nthank you ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.267+0000", "entityId": 9966, "properties": {"text": "Subject: a request\nvince ,\ni am writing to ask for your help with some research i am doing with john\nlehoczky and a phd student . we trying to apply recent advances in monte\ncarlo for american options to value swing and other options with multiple\nearly exercise decisions that are important in energy markets . i know in\ngeneral that early exercise shows up in a wide range of energy contracts ,\nboth real as welll as financial . would it be possible for you , either via\nemail or on the phone , to give us some examples of typical terms for such\ninstruments ? we would like our examples to look realistic . we also want to\nmake sure we are focusing on the right sorts of optionality .\nthanks in advance ,\nduane\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.273+0000", "entityId": 9967, "properties": {"text": "Subject: summer offer\nbhala ,\ni double checked with hr , and the offer you received is in line with what we\nare offering to other graduate level summer interns . if you have better\noffers , i certainly wouldn ' t hold it against you for taking them over what we\nare offering , but we can ' t really justify raising the offer at this time .\nwe can re - imburse you for shipping expenses up to a reasonable amount , say\n$ 500 , if you need to ship things down . you can just save the receipts for\nthese expenses and shirley can fill out the necessary expense forms .\nbest regards ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.282+0000", "entityId": 9968, "properties": {"text": "Subject: institute of international finance - annual subscription\nrobert johnston has asked me to charge vince ' s department for 1 / 3 of the cost\nof the annual subscription to iif . the annual cost is $ 47 k . therefore the\ncost for 1 / 3 is $ 15 , 666 . 67 . this information is for maureen raymond ' s use .\ni will be happy to process the invoice for payment but in order for me to do\nso , i will need the proper coding for vince ' s department .\nplease let me know if you are agreeable to this . if you have questions , you\nmay wish to contact robert johnston directly at 3 - 9934 .\nthanks ,\nsharon\n5 - 7212", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.291+0000", "entityId": 9969, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the request you have placed using it\ncentral .\nrequest number : ecth - 4 ujn 5 l\norder for : mitra mujica\n1 x ( option : 128 mb upgrade for deskpro en 6600 $ 63 )\n1 x ( standard desktop $ 905 ) enron it purchasing\n* please send all status inquiries regarding this request to :\nmailto : receiving & hardware @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.296+0000", "entityId": 9970, "properties": {"text": "Subject: european power trading\ndear mr kaminski ,\n?\ni thought you might be interested in a new study we have just published on\neuropean power trading . ? the executive summary of the study is attached here\nfor your reference .\n?\nbest regards ,\n?\nbenjamin tait\nprospex research ltd .\nlondon , england\ntel : + 44 ( 0 ) 20 7460 3897\nfax : + 44 ( 0 ) 20 7385 7538\ne - mail : ben @ prospex . co . uk\nweb : www . prospex . co . uk\n?\nprospex research is an independent research company based in london . we\nanalyse strategic and financial issues for the european power business . our\nwork includes reporting , consulting , power trading recruitment and\nconference development . to find out more about us , please visit our internet\nsite at www . prospex . co . uk\n- executive summary ept . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.301+0000", "entityId": 9971, "properties": {"text": "Subject: memo\ninformation on grains and sugars from last week in memo form .\nnelson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by nelson neale / na / enron on 03 / 05 / 2001 10 : 55\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : maria arefieva 03 / 05 / 2001 11 : 01 am\nto : nelson neale / na / enron @ enron\ncc :\nsubject : memo\nattached please find a summary of sessions on grains and sugar . a memo on ag\npolicy and outlook for the livestock sector will follow .\nthanks ,\nmasha", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.306+0000", "entityId": 9972, "properties": {"text": "Subject: best picks\nhey ,\nbest picks are zigo and smtx\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.311+0000", "entityId": 9973, "properties": {"text": "Subject: re : summer internship\njinbaek ,\nthis is fine though you are welcome to spend more\ntime with us this summer .\nvince\njinbaek kim on 03 / 04 / 2001 03 : 45 : 40 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : summer internship\ndr . kaminski ,\nthanks for your answer .\nbefore i tell you the time frame ,\ni ' ll need to talk with my advisor , first .\nbecause here is an on - going - project .\ni need to coordinate the schedule .\ni ' ll appreciate it if you understand my situation ,\nand give me some time ( less than a week , of course ) .\nfor your reference ,\nprobably\nthe dates i ' d like to ask you will be\nfrom mid - may to mid - july ( 2 months )\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> you can coordinate the details with me .\n> let me know what the time frame is for you\n> and we shall send you an appropriate offer .\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 03 / 02 / 2001 04 : 43 : 06 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : summer internship\n>\n>\n> dr . kaminski ,\n>\n> thank you very much .\n> of course , i ' ll be happy to have an opportunity\n> to work at such a wonderful company .\n> i was contacting with surech raghavan at deal bench team ,\n> and was going to express my appreciation to you again\n> after settling down process with them .\n>\n> for the period of working ,\n> i still need to coordinate with my advisor and\n> may need to adjust according to that .\n> but anyway , i ' ll try to coordinate smoothly .\n>\n> please let me know whether i should keep contacting\n> with deal bench team ,\n> for working period and\n> for misc . living support such as finding a place , rent a car , etc .\n>\n> i appreciate you so much again ,\n> for arranging such meetings and giving me an opportunity .\n> all this opportunity will not be available to me ,\n> without your kind help .\n>\n> warm regards ,\n> jinbaek\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> jinbaek kim\n> ph . d candidate\n> dept . of industrial engineering and operations research\n> u . c . berkeley\n> http : / / www . ieor . berkeley . edu / ~ jinbaek\n>\n> go bears !\n>\n> : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> : a a : _ _ . . . . . _\n> : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> : . ' : ` . : ` , ` .\n> ` . : ' - - ' - - ' : . ' ; ;\n> : ` . _ ` - ' _ . ' ; . '\n> ` . ' \" ' ;\n> ` . ' ;\n> ` . ` : ` ;\n> . ` . ; ; : ;\n> . ' ` - . ' ; : ; ` .\n> _ _ . ' . ' . ' : ; ` .\n> . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> ` . . . . . . . - ' ` . . . . . . . . '\n>\n>\n> on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> > hello ,\n> >\n> > sorry for a delay in getting back to you .\n> > we would like very much to offer you a summer internship .\n> >\n> > please , let me know if you are interested .\n> >\n> > vince kaminski\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.316+0000", "entityId": 9974, "properties": {"text": "Subject: freese notis\nmike :\nwe are currently being billed for freese notis weather . i will need to\nallocate these charges to the appropriate cost center . if you would like to\ncontinue this service i could allocate it directly to your cost center or\nsend you the bill directly . if you know of anyone else who uses this\napplication please let me know and i will split the cost among the\ndepartments .\nthank you ,\ndanielle marcinkowski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.320+0000", "entityId": 9975, "properties": {"text": "Subject: re : status\nsteve ,\nwelcome back . let ' s have coffee asap and review all the projects under way .\nvince\nfrom : stephen stock / enron @ enronxgate on 03 / 01 / 2001 09 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : status\nhi vince ,\nwinston is telling me that he has started a serious of presentations to\ncertain members of your group to help everyone better understand the various\ncomponents that have been documented .\nhow is that going from your perspective ? . . . . . . are your people getting\nanything out of it ?\nalso , the var documentation was completed last week , and i ' ve just asked for\na full printed copy of it to be created mand given to your department .\ni ' ve just engaged a small team to document the credit reserve model as a\nfinal piece and then we are done with the core documentation .\nregards\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.326+0000", "entityId": 9976, "properties": {"text": "Subject: re : summer opportunity\nkim ,\nyes , the offer is coming . it may take a few days to process it , but you can\ncount on it .\nvince\n\" whitsel , kimberly \" on 03 / 05 / 2001 08 : 36 : 47 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : summer opportunity\nvince :\ni did get your phone message about the summer , but i still haven ' t heard from\nenron about an offer for summer employment . i do have other offers with\nother energy companies that i must respond to this week . could you let me\nknow as soon as possible if an offer will be made to me .\nsincerely ,\nkimberly whitsel\nwharton mba candidate 2002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.330+0000", "entityId": 9977, "properties": {"text": "Subject: summer opportunity\nvince :\ni did get your phone message about the summer , but i still haven ' t heard from\nenron about an offer for summer employment . i do have other offers with\nother energy companies that i must respond to this week . could you let me\nknow as soon as possible if an offer will be made to me .\nsincerely ,\nkimberly whitsel\nwharton mba candidate 2002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.334+0000", "entityId": 9978, "properties": {"text": "Subject: re : summer internships at enron\nthanks , vince .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , march 02 , 2001 3 : 09 pm\nto : piazze @ wharton . upenn . edu\nsubject : re : summer internships at enron\ndonna ,\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 02 / 2001\n02 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nceleste roberts\n03 / 02 / 2001 02 : 04 pm\nto : vince j kaminski / hou / ect @ ect\ncc : kristin gandy / na / enron @ enron , alyse herasimchuk / na / enron @ enron\nsubject : re : summer internships at enron ( document link : vince j\nkaminski )\nvince :\nthanks . yes it is unfortunate that we were not able to quickly identify\nwho the interested tiger team students were . we will go ahead and process\nan offer letter for kim and get it to her immediately .\nalso , thanks for agreeing to help out with stanford . hopefully we will get\na few good ones !\nregards ,\nceleste\nvince j kaminski\n03 / 01 / 2001 09 : 32 am\nto : celeste roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : summer internships at enron\nceleste ,\ni have just talked to kim . i told her she will receive one .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 01 / 2001\n09 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 01 / 2001 09 : 25 am\nto : celeste roberts / hou / ect @ ect\ncc : kristin gandy / na / enron @ enron , christie patrick / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect , piazze @ wharton . upenn . edu\nsubject : summer internships at enron\nceleste ,\nit seems that the process lasted too long for some students\nand only kim whitsel is interested in the internship at this point .\nher resume has been forwarded to you .\ni am enclosing it just in case .\nthanks for your help .\nvince\n( see attached file : kim whitsel - wharton 2 resume . doc ) ( see attached file :\nkim whitsel - enron cover letter . doc )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 01 / 2001\n09 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfap on 02 / 23 / 2001 02 : 28 : 48 pm\nto : \" ' vkamins @ enron . com ' \"\ncc : \" ' piazze @ wharton . upenn . edu ' \"\nsubject : summer internships at enron\nvince :\nthank you to you , ken and christie for coming to campus for the enron tiger\nteam mid - project review . the students are working hard and appreciate your\ninsight and suggestions to the project . thank you for your support of the\nwharton school .\nkim whitsel ( whitselk @ wharton . upenn . edu ) of tiger team 1 has informed me\nthat she is very much interested in a summer internship at enron this year .\ni don ' t believe some of the students understood the process you had setup\nfor them at enron as part of the tiger team . being concerned with having\nsummer employment , they interviewed with other firms and ultimately\naccepted\npositions . the students asked that i express to you that this does not mean\nthey are not interested in full time work at enron next year . i apologize\nand take responsibility for the lack of communication in this regard . i\nthink it is a lesson learned and perhaps , in the future , we can make the\nagreement to students understood in advance of their \" dedicated interview\nweek \" and eliminate their need to interview at all . this can also be an\nadded advantage of applying to be a member of the tiger team .\nplease let me know if you have any questions and exactly how kim whitsel\nshould proceed .\nthank you ,\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.339+0000", "entityId": 9979, "properties": {"text": "Subject: sfa licenses\niris :\ni forwarded the information to donna lowry in our compliance dept . however ,\ni am afraid she had bad news .\nenron would sponsor the renewals , but the us securities group does not\nrecognize uk securities exams without further testing here in the us .\nshe said she would get back with you and explain it in greater detail . but ,\nfrom what i understand , you will need to take some exam here before renewing .\nwhen you hear from her let me know .\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.344+0000", "entityId": 9980, "properties": {"text": "Subject: vacation carry - over report\nthe vacation carry - over report is due to payroll by the end of this week .\nbelow are the days that the system shows for your carry over . please let\nme know if this is correct as soon as possible .\nvince kaminski 40 . 00 hours\nstephen bennett 30 . 00 hours\nanita dupont 14 . 00 hours\nseksan kiatsupaibul 20 . 00 hours\nsandeep kohli 40 . 00 hours\nkate lucas 40 . 00 hours\nyouyi feng 36 . 00 hours\nshane green 40 . 00 hours\njose marquez 40 . 00 hours\nkevin moore 13 . 00 hours\nmike roberts 40 . 00 hours\nsam smith 10 . 50 hours\nhector campos 40 . 00 hours\nrabi de 10 . 00 hours\nshalesh ganjoo 40 . 00 hours\npaulo issler 40 . 00 hours\nmartin lin 40 . 00 hours\nzimin lu 40 . 00 hours\nkenneth parkhill 10 . 00 hours\nroman zadorozhny 40 . 00 hours\njoe hrgovcic 40 . 00 hours\nnelson neale 10 . 00 hours\nvasant shanbhogue 28 . 00 hours\nlance cunningham - 4 . 00 hours\ntom halliburton 14 . 00 hours\nalex huang 40 . 00 hours\npraveen mellacheruvu 14 . 00 hours\njason sokolov 8 . 32 hours\ntanya tamarchenko 40 . 00 hours\nsevil yaman 13 . 32 hours\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.349+0000", "entityId": 9981, "properties": {"text": "Subject: re : confirmation of your order\nyes , i am the one that placed it . gwyn told me she would be starting on\nmarch 19 th ? did you not know about it ?\nvince j kaminski\n03 / 05 / 2001 11 : 35 am\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : confirmation of your order\nshirley ,\ndo you know about it ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 05 / 2001\n11 : 35 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron it purchasing\n03 / 05 / 2001 11 : 09 am\nplease respond to enron it purchasing\nsent by : ecthou - domwebl\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : confirmation of your order\nthis is an automatic confirmation of the request you have placed using it\ncentral .\nrequest number : ecth - 4 ujn 5 l\norder for : mitra mujica\n1 x ( option : 128 mb upgrade for deskpro en 6600 $ 63 )\n1 x ( standard desktop $ 905 ) enron it purchasing\n* please send all status inquiries regarding this request to :\nmailto : receiving & hardware @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.353+0000", "entityId": 9982, "properties": {"text": "Subject: class proposal by yannis\nhi vince ,\nyannis of the weather desk is planning to develop relationship with prof\nrene carmona in doing weather analysis . to start this off , they are planning\nto pay prof carmona to give a training class as outlined below , and they\nwant to know if research is willing to send people and bear part of the costs .\nwe can talk more at 4 : 00 pm , but while there is no doubt that getting people\nfrom outside to present new ideas is always important and interesting , i\nthink research group members can easily give most of these talks .\napparently , people are interested in these topics and are willing to pay to\nlisten . my thought is that if the intent is to develop relationships , that\nis fine , but the research group should also be given the opportunity to\nprovide more training and get more visibility . i have already communicated\nthis to joe and to yannis .\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 03 / 05 / 2001\n10 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : yannis tzamouranis / enron @ enronxgate on 03 / 05 / 2001 10 : 01 am\nto : vasant shanbhogue / hou / ect @ ect\ncc :\nsubject :\nhere is a tentative course description .\nday 1 : extreme value distriutions and copulas\n1 . heavy tail distributions : exploratory data analysis and detection .\nextreme value distributions and generalized pareto distributions .\nestimation and simulation . practical examples .\n2 . notions of dependence and copulas . estimation and simulation .\nexperiments with the program evanece .\nday 2 : principal component analysis and modern regression\n1 . principal component analysis and applications to the yield curve and\nthe detection of contagion in financial markets .\n2 . nonlinear regression and the construction of yield curves .\n3 . nonparametric regression ( kernel and projection pursuit methods ) and\nalternatives to the black - scholes formula to option pricing .\nday 3 : time series analysis\nexamples of temperature time series will be used to introduce and\nillustrate the following concepts and techniques :\n1 . removing trends and seasonal components , and stationarity .\n2 . fitting the classical autoregressive and moving average models .\n3 . discretization of stochastic differential equations\n4 . multivariate time series\nday 4 : nonlinear systems and filtering\n1 . arch , garch and stochastic volatility models\n2 . linear state space models and the classical kalman filter\n3 . nonlinear systems and particle filtering .\n4 . applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.358+0000", "entityId": 9983, "properties": {"text": "Subject: livelink access\nsorry for the miscommunication but your password is blank . after you log in .\nplease change your password by going to the go to menu and change your\npassword .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 06 / 2001\n08 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n03 / 05 / 2001 03 : 37 pm\nto : kenneth parkhill / na / enron @ enron , jaesoo lew / na / enron @ enron , tom\nhalliburton / corp / enron @ enron , kevin kindall / corp / enron @ enron , bob\nlee / na / enron @ enron , alex huang / corp / enron @ enron , tanya\ntamarchenko / hou / ect @ ect , joseph hrgovcic / enron @ enronxgate , gwyn\nkoepke / na / enron @ enron , rakesh bharati / na / enron @ enron , martin lin / hou / ect @ ect ,\nrabi de / na / enron @ enron , chonawee supatgiat / corp / enron @ enron , seksan\nkiatsupaibul / hou / ees @ ees , wichai narongwanich / hou / ees @ ees , sevil\nyaman / corp / enron @ enron , tom barkley / na / enron @ enron , pinnamaneni\nkrishnarao / hou / ect @ ect , osman sezgen / hou / ees @ ees , praveen\nmellacheruvu / hou / ees @ ees , sandeep kohli @ enron , vince j kaminski / hou / ect @ ect\ncc :\nsubject : livelink access\nyou have been added to the livelink test instance for research . see below\nfor the link .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 05 / 2001\n03 : 32 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : moyez lallani @ enron 01 / 16 / 2001 10 : 46 am\nto : stinson gibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : livelink access\ngentlemen ,\ni have created a folder called research projects folder in the livelink test\ninstance . the url to the test instance is\nto log in , use your nt login id as your userid and password ( all lowercase ) .\nyou will find the folder on the enterprise workspace . please call me should\nyou require further assistance .\nmoyez lallani\nx 5 - 3683", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.363+0000", "entityId": 9984, "properties": {"text": "Subject: livelink access\nmoyez ,\ni could not access the system .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 06 / 2001\n08 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n03 / 05 / 2001 03 : 37 pm\nto : kenneth parkhill / na / enron @ enron , jaesoo lew / na / enron @ enron , tom\nhalliburton / corp / enron @ enron , kevin kindall / corp / enron @ enron , bob\nlee / na / enron @ enron , alex huang / corp / enron @ enron , tanya\ntamarchenko / hou / ect @ ect , joseph hrgovcic / enron @ enronxgate , gwyn\nkoepke / na / enron @ enron , rakesh bharati / na / enron @ enron , martin lin / hou / ect @ ect ,\nrabi de / na / enron @ enron , chonawee supatgiat / corp / enron @ enron , seksan\nkiatsupaibul / hou / ees @ ees , wichai narongwanich / hou / ees @ ees , sevil\nyaman / corp / enron @ enron , tom barkley / na / enron @ enron , pinnamaneni\nkrishnarao / hou / ect @ ect , osman sezgen / hou / ees @ ees , praveen\nmellacheruvu / hou / ees @ ees , sandeep kohli @ enron , vince j kaminski / hou / ect @ ect\ncc :\nsubject : livelink access\nyou have been added to the livelink test instance for research . see below\nfor the link .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 05 / 2001\n03 : 32 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : moyez lallani @ enron 01 / 16 / 2001 10 : 46 am\nto : stinson gibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : livelink access\ngentlemen ,\ni have created a folder called research projects folder in the livelink test\ninstance . the url to the test instance is\nto log in , use your nt login id as your userid and password ( all lowercase ) .\nyou will find the folder on the enterprise workspace . please call me should\nyou require further assistance .\nmoyez lallani\nx 5 - 3683", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.367+0000", "entityId": 9985, "properties": {"text": "Subject: constellation delta positions\njim ,\ni can provide some explaination about the spread option function in the\nexotica library .\nmy phone number is 713 - 853 - 6388 . let us set up a time .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 06 / 2001 10 : 22 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 06 / 2001 09 : 56 am\nto : zimin lu / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : constellation delta positions\nzimin , stinson\ni think i forwarded the message to you .\ndid we act on it ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 06 / 2001\n09 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njim meyn @ enron\n02 / 27 / 2001 03 : 53 pm\nto : vince j kaminski / hou / ect @ ect\ncc : robert stalford / na / enron @ enron , mason hamlin / hou / ect @ ect\nsubject : constellation delta positions\nvince ,\nrob and i would like to coordinate a meeting with one of your research people\nto review the spread option calculation from the exotica options library .\nwe ' re pricing a spread option deal in nyc and have some questions related to\nthe formula , greeks , etc . please let me know who might be available to sit\nwith us for about 1 / 2 hour . thanks\n- jim\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jim meyn / na / enron on 02 / 27 / 2001 03 : 49 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : mason hamlin @ ect 02 / 27 / 2001 01 : 48 pm\nto : tom may / corp / enron @ enron , robert stalford / na / enron @ enron\ncc : jim meyn / na / enron @ enron , gautam gupta / hou / ect @ ect\nsubject : constellation delta positions\nattached are the delta positions for the nyc constellation deal . if you have\nany questions or would like to review the model , please call me .\nthanks ,\nmason", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.372+0000", "entityId": 9986, "properties": {"text": "Subject: california update 3 / 06 / 01\nexecutive summary\n? if no comprehensive deal is reached by april 9 th , chances of bankruptcy\nincrease due to a one day \" opt - out \" clause in all long - term power contracts .\n? pg & e and state locked in tough negotiations , several issues on the table :\npuc - imposed requirement forcing pg state - 2 . 3 times book value vs . pg & e - 4 times book value\n? pg & e will not use any of the $ 1 b secured last week to help their ailing\nutility .\n? davis ' s announcement of long term power contract didn ' t include some\ndetails :\nof the 8 , 800 megawatts secured this far , only 6 , 000 are available this\nsummer\nsome of the \" long term contracts \" are really only for three months\nnone of the contracts prevent california from buying peak demand on the spot\nmarket\n? one the same day davis announced long term contracts , davis also quietly\nannounce a 10 % rate hike .\n? ferc may be the wild card in approving this deal .\npg & e\ntransmissions deal\none thing that is still uncertain is pg & e . bankruptcy may still be a likely\nalternative if current negotiations to buy pg & e ' s share of the electric\ntransmission grid fail to produce a deal by april 9 ( when all long - term power\ncontracts being negotiated have a one - day \" opt - out \" clause they can exercise\nunilaterally if a \" comprehensive solution \" has not been reached by the state\nand its major utilities ) . according to sources close to senior pg & e\nofficials , pg & e made it clear that any hope for a politically acceptable deal\non the transmission lines depends on the california government ' s willingness\nto make a major financial commitment it has been completely unwilling to make\nuntil now .\npg & e will not make a final deal to sell its grid unless davis agrees to\nrelieve it of the puc - imposed requirement to be the \" electricity buyer of\nlast resort . \" current state regulations make the utility companies\nultimately responsible for generating or purchasing enough electricity at all\ntimes to supply california ' s energy needs . as long as the state steps in and\nmakes those purchases , as it has for the past three months , the utilities are\nshielded from absorbing the losses generated by paying premiums for spot\nmarket power and selling to consumers who are shielded by low rate ceilings .\nbut , pg & e officials are worried 1 ) this summer ' s supply and 2 ) davis ' s\nconcern over how fast he is draining the state ' s budget surplus . if things\nget into a crunch this summer and davis makes a new decision that the state\nwill pay only for the electricity it buys through long - term contracts , then\npg & e will be left holding the bag .\nthus , as part of the negotiations over buying the electricity grid , pg & e is\ndemanding a \" comprehensive solution \" that includes not being liable for cost\ndifferentials between the spot market purchase and what consumers are allowed\nto pay . state officials are in no mood to grant that kind of \" get out of\njail free \" card , so the two sides remain locked in extremely tough\nnegotiations that are complicated by three other factors : ( 1 ) pg ( 2 ) state legislative\ndemands that the price davis negotiate for pg and ( 3 ) the ferc must\n\" positively approve \" any grid purchase by the state of california .\nthe principal concern on the price front is that pg & e wants to sell the\nelectricity grid for nearly four times the estimated book value of their\ntransmission , while consumer groups insist that two times book value is the\npolitically acceptable limit . \" we see 2 . 3 times book value as an absolute\nupper bound . there is no way pg & e will get more than that , whatever they\nthink , \" according to the leader of one main consumer groups . \" we are going\nto try to force any deals down to about 2 . 0 in any case . \" negotiators for\ndavis are also trying to ' proposition - proof ' any transmission deal to protect\nagainst a later ballot proposal . they think there are ways to do that , but\nnot if the price of pg & e ' s part of the grid triggers a ballot initiative .\nremember , if davis ' s eventual solution triggers a ballot initiative , he will\nbe running for re - election on the same ballot as a public initiative designed\nto overturn his solution .\non the sacramento front - no one understands pg & e ' s motives\nthe one question no one in sacramento can figure out is what kind of game\npg & e is playing . in a three day period pg & e made a series of announcements\nthat left everyone scratching their heads .\n? late thursday , pg & e officials leaked information to california papers that\nthey had agreed in principle to sell their part of the electricity\ntransmission grid to the state , which seemed like obvious good news , but then\nmade it clear in discussions that the price they were asking was at least 30 %\nabove what the state was currently offering . while a deal can still be done ,\nanything like the $ 10 billion pg & e wants would be very hard to get through\nthe california legislature which needs to approve any purchase .\n? late friday , pg & e officials announced that they had secured a $ 1 billion\nloan for the parent company ( not the electricity utility ) and would use the\nmoney to pay off bondholders , other creditors and to return $ 161 million to\nshareholders in a new dividend payout . not a cent of that money was\nearmarked to help the struggling electricity orphan of pg & e and that left at\nleast one rating agency convinced that the company was more ready to send the\nutility into bankruptcy than had been previously understood .\n? over the weekend , pg & e leaked a story claiming that it was willing to pay\noff its energy suppliers ' debt for 15 cents on the dollar right now . for\ngenerators who are having to make decisions each morning about whether to\nstart legal actions that protect their rights in any eventual bankruptcy\naction or hold off on the assumption that the politics of this process will\n\" make them whole \" in a couple of months , that kind of trial balloon is\nextremely unnerving .\nthus , in a very short time period , pg & e ' s corporate owners showed they could\naccess public credit markets with relative ease and then showed that they\nwere unwilling to use these funds to smooth the way toward a solution to the\nenergy crisis . davis has demanded that all of the major utilities absorb at\nleast a part of the $ 13 billion debt they have accumulated since last summer\nand pg & e ' s fund - raising will harden and deepen those demands . as one senior\npolitical official told our source \" just when you think the corporate\nleadership of that company has insulted us as completely as possible , they\ncome up with something even more outrageous . \"\npg and some of these \" long - term contracts \" are actually only good\nfor three months . none of these contracts , however , keep california from\nhaving to buy the most expensive peak demand electricity on the spot market .\ndavis agrees on new consumer electricity rate hikes for next year\nwhile the media was concern with davis ' s announcement of long term contracts\nfor california , of less concern to the media was davis ' s quietly announced a\ndecision to let rates rise again for electricity consumers . the state will\naccept the 10 % emergency surcharge levied on consumers in january as a\npermanent increase as well as an additional 10 % increase for consumers that\nwill take effect early 2002 when the old 1996 rate cut legislation expires .\nthat would bring the average charge to about 8 cents a kilowatt hour .\nferc\nthe other major danger to the transmission line deal is that the federal\nenergy regulatory commission can block the deal simply by failing to approve\nit in a positive vote . senior california officials and legislators doubt that\nferc has jurisdiction , and believe that ferc would not dare stop a deal . but\nthey may be wrong . \" the deal can only go through if ferc specifically signs\noff on the deal . its power over transmission deal is absolute , no matter what\nanyone says , \" according to source close to the president . there are three\npossibilities : 1 ) ferc could \" pocket veto \" it by not even putting it on\nagenda for discussion ; 2 ) the deal is put on the agenda but it gets voted\ndown . the democrat on the commission , william massey , has already said he is\nopposed to it ; or 3 ) the commission could approve it but with condition that\ndavis has to agree to bring the lines into a regional grid system .\none complicating factor in the ferc decision , however , is that its chairman\ncurt hebert , who is adamantly opposed to the transmission line sale , may not\nbe around long enough to have his say . \" hebert is definitely not a shoo in\nfor the ferc chairman position , \" says one washington official . two other\nappointments to the commission will soon be named , this official notes , and\none of them \" could easily become chairman . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.376+0000", "entityId": 9987, "properties": {"text": "Subject: re : contract update\nvince , if there are some differences that we need to correct , you and i can\nmeet tomorrow when you bring the contract in . i am available anytime after\nlunch . please call me at x 30649 .\nsheila\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , march 06 , 2001 3 : 10 pm\nto : sheila walton / hou / ect @ enron\ncc : kaminski , vince\nsubject : contract update\nsheila ,\nsome minor differences between the draft and the final executed version .\ni have forgotten to bring the draft today , i shall send a copy to you\ntomorrow .\nthere were some hand - written changes made by greg ijn the draft that were not\ntransferred to\nthe final version .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.381+0000", "entityId": 9988, "properties": {"text": "Subject: contract update\nsheila ,\nsome minor differences between the draft and the final executed version .\ni have forgotten to bring the draft today , i shall send a copy to you\ntomorrow .\nthere were some hand - written changes made by greg ijn the draft that were not\ntransferred to\nthe final version .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.385+0000", "entityId": 9989, "properties": {"text": "Subject: re : recommendation letter\nvincent ,\nsorry for a delay in responding to your message .\ni shall be very glad to write a letter of recommendation .\nplease , send me the forms .\ni hope you are doing ok .\nvince\nvincent tang on 02 / 28 / 2001 01 : 10 : 33 pm\nto : vkamins @ enron . com\ncc :\nsubject : recommendation letter\ndear vince ,\nhow are you ?\ni am just wondering whether you have received the\nemail i sent to you a couple of weeks back . in that\nemail , i asked whether you would have time to write me\na recommendation letter to support my application for\na master program ( mathematical finance ) in columbia\nuniversity this coming fall . if you will be able to\nwrite the letter , would you please let me know ?\nthanks a lot .\nbest regards ,\nvincent tang\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.390+0000", "entityId": 9990, "properties": {"text": "Subject: re :\nhari ,\ni shall send you a reprint of the article . i had to\ncancel my presentation at san antonio .\nvince\nshirley ,\nplease , send a copy of the article to hari .\nhari natrajan on 02 / 28 / 2001 06 : 45 : 29 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject :\ndear mr . kaminski ,\ni am a doctoral student at the indian institute of management bangalore ,\nindia . my area of interest is the energy sector , especially electricity\nderivatives . i am interested in obtaining a copy of the following items :\n1 ) your presentation \" current challenges in modeling power price volatility \"\nat the session on price volatility & probabilistic methods in the energy\nmarkets . ( http : / / www . informs . org / conf / sanantonio 2000 / / talks / md 29 . html )\n2 ) your chapter \" the challenge of pricing and risk managing electricity\nderivatives \" in the book ' the us power market ' , risk publications .\ni would appreciate it if you could send me a soft / hard copy of the same .\nthank you ,\nyours sincerely ,\nhari natarajan\nfellowship student\nindian institute of management bangalore\nbannerghatta road\nbangalore 560076\nindia\ntel : 91 - 80 - 6993056\nfax : 91 - 80 - 6584050\ne - mail : hnatraj @ iimb . ernet . in", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.395+0000", "entityId": 9991, "properties": {"text": "Subject: re : redployment\nvince ,\ni highly appreciate your consideration .\nbest regards ,\nrehman\nvince j kaminski @ ect\n03 / 06 / 2001 11 : 41 am\nto : rehman sharif / enron _ development @ enron _ development\ncc :\nsubject : re : redployment\nrehman ,\nthanks for you message .\nmy group hires almost exclusively people with background in quantitative\ndisciplines\n( math , physics ) or computer programming .\ni shall send your resume to some other units in the company that are looking\nfor people with good skills and experience .\nvince\nrehman sharif @ enron _ development\n02 / 27 / 2001 11 : 17 am\nto : vince j kaminski @ ect\ncc :\nsubject : redployment\nvince ,\ni am a redeployment candidate out of calme region and in the process of\nexploring opportunities within enron . i have very extensive background in\nfinancial analysis and economic structuring . i am interested learning more\nabout your group to find out if my skills and abilities could serve the\npresent and future needs of your group . attached is my resume for your\nreview , any guidance you could provide would be greatly appreciated .\nregards ,\nrehman sharif", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.400+0000", "entityId": 9992, "properties": {"text": "Subject: re : fw : a request from uc hicago student\nlaura ,\nwe shall have phone interviews with both candidates you brought up to our\nattention .\nvince\nfrom : laura howenstine / enron @ enronxgate on 02 / 28 / 2001 04 : 05 pm\nto : vince j kaminski / hou / ect @ ect , ravi thuraisingham / enron\ncommunications @ enron communications\ncc :\nsubject : fw : a request from uc hicago student\nhi vince and ravi ,\nhere is another student from univ . of chicago ' s financial mathematics program\nwho is interested in enron . his resume is attached at the bottom .\nthanks .\nregards ,\nlaura\n- - - - - original message - - - - -\nfrom : \" laura howenstine \" @ enron\ne + 40 enron @ enron . com ]\nsent : tuesday , february 27 , 2001 11 : 16 am\nto : howenstine , laura\nsubject : fwd : a request from uc hicago student\n> from : \" ramaswamy garimella \"\n> to : lhowenstine @ hotmail . com\n> cc : ramaswamy _ garimella @ hotmail . com\n> subject : a request from uc hicago student\n> date : tue , 27 feb 2001 01 : 08 : 00 - 0600\n>\n> hello ms . laura howenstine ,\n>\n> my name is ramaswamy , and i am student of the ms financial\n> mathematics program at the university of chicago ( uc ) . i found your\n> address in the uc alumni gateway .\n>\n> i am interested in the associate position at enron , and would like\n> to request you for any information that you can share with me in\n> this respect . please find my resume attached to this message .\n> briefly , i have an mba - finance from smu - dallas , and have\n> extensive experience in it . currently , i am learning risk\n> management / derivative pricing in the ms financial mathematics\n> program at uc .\n>\n> you are the first alumni that i sought for informational help . so ,\n> please excuse me for any mistakes in protocol . please reply me at\n> your convenient time . thank you very much .\n>\n> sincerely ,\n> ramaswamy garimella .\n>\n>\n>\nget your free download of msn explorer at http : / / explorer . msn . com\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.405+0000", "entityId": 9993, "properties": {"text": "Subject: re : telephone interview with the enron research group\nhi ramaswamy :\nthank you for responding so promptly . i have scheduled the telephone\ninterview for monday , march 19 th from 10 : 30 - 11 : 30 am ( central time ) .\nplease let me know if this is not convenient .\nthey will call you at ( 773 ) 324 - 5077 .\nsincerely ,\nshirley crenshaw\n\" ramaswamy garimella \" on 03 / 05 / 2001\n09 : 27 : 26 pm\nto : shirley . crenshaw @ enron . com\ncc : ramaswamy _ garimella @ hotmail . com\nsubject : re : telephone interview with the enron research group\nhi shirley ,\nthanks for providing me an opportunity to interview with enron research\ngroup . i have final exams in the next week till march 15 . so , any date from\nmarch 19 onwards will be convenient to me . my phone number is\n( 773 ) 324 - 5077 . any time after 10 a . m will be fine with me .\nplease let me know the date and time that will be convenient to vince\nkaminski ' s group . thank you very much .\nbest regards ,\nramaswamy garimella .\n- - - - original message follows - - - -\nfrom : shirley . crenshaw @ enron . com\nto : ramaswamy _ garimella @ hotmail . com\ncc : vince . j . kaminski @ enron . com , stinson . gibner @ enron . com ,\nvasant . shanbhogue @ enron . com , tanya . tamarchenko @ enron . com\nsubject : telephone interview with the enron research group\ndate : mon , 5 mar 2001 14 : 38 : 18 - 0600\nmime - version : 1 . 0\nreceived : from [ 192 . 152 . 140 . 9 ] by hotmail . com ( 3 . 2 ) with esmtp id\nmhotmailbc 6 d 45780030 d 82197 daco 988 co 99 a 960 ; mon mar 05 12 : 43 : 36 2001\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 168 . 189 . 66 ] ) by\npostmaster . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / postmaster - 1 . 00 ) with esmtp id uaal 0526 for\n; mon , 5 mar 2001 20 : 43 : 35 gmt\nreceived : from nahou - msmswo 2 px . corp . enron . com ( [ 172 . 28 . 10 . 38 ] ) by\nmailman . enron . com ( 8 . 10 . 1 / 8 . 10 . 1 / corp - 1 . 05 ) with esmtp id f 25 khzal 4665 for ;\nmon , 5 mar 2001 14 : 43 : 35 - 0600 ( cst )\nreceived : from ene - mtaol . enron . com ( unverified ) by\nnahou - msmswo 2 px . corp . enron . com ( content technologies smtprs 4 . 1 . 5 ) with\nesmtp id for ; mon , 5 mar 2001 14 : 43 : 41 - 0600", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.409+0000", "entityId": 9994, "properties": {"text": "Subject: fw : fw : question about ernie\nvince ,\ni left you a voice message that explains a little about the history of this\ninquiry ( you may want to refer to that first ) .\nplease let me know what you know about this and your opinion .\nthank you ,\nanthony\n* 36304\n- - - - - original message - - - - -\nfrom : presas , gracie\nsent : monday , march 05 , 2001 5 : 38 pm\nto : sexton , anthony\nsubject : re : fw : question about ernie\nanthony ,\nplease contact vince kaminsky at ext . 3 - 3848 . i think his group has this\ntype of training set up . ask him is you can be added to their classes . let\nme know if this works for you .\ngracie\nfrom : anthony sexton / enron @ enronxgate on 03 / 05 / 2001 01 : 31 pm\nto : gracie s presas / hou / ect @ ect\ncc :\nsubject : fw : question about ernie\nhi , gracie .\ni ' m just following up on my inquiry from last week . have you begun any\ndiscussions on statistics classes ?\nanthony\n- - - - - original message - - - - -\nfrom : sexton , anthony\nsent : thursday , march 01 , 2001 8 : 28 am\nto : presas , gracie\nsubject : question about ernie\ngracie ,\ndoes enron have any statistics classes ? ones more focused on basic\nstatistics and the lingo ( ex : alpha , beta , delta - gamma , type i & ii error ,\ndistributions , kurtosis , etc . ) than the var class ?\ni have not seen any in the class schedule . in working with traders and\nstudying risk mangement concepts , even our \" experts \" that know almost\neverything about marketing and modeling risk management products do not seem\nto have an adequate understanding of basic statistics ! ! ! this lack of\nknowledge basically makes my job as a fundamentals analyst ( researching the\nunderlying commodity markets for the purpose of maximizing egm / ea / eim\nprofits ) very inefficient .\nif they already do not exist , i recommend that ernie institute two types of\nstatistics classes ( which mirror the existing finance class selection ) .\n\" introduction to statistics \" ( perhaps a database approach - including\napplication to excel ? ) and \" applied statistics \" ( which would be a more\nadvanced approach that specifies how enron uses - or should use - statistics\nin risk management marketing ) .\nplease let me know what you think .\ncordially ,\nanthony sexton\n* 36304", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.414+0000", "entityId": 9995, "properties": {"text": "Subject: prof . carmona\nyannis ,\ni have looked at the outline of the proposed course and\nfind that practically all the topics of the program are the\nstaple of what we do every day . i don ' t think research should spend\nmoney for this class .\nif we want to establish a relationship , we can easily do it\nby asking him to work on a research project .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.418+0000", "entityId": 9996, "properties": {"text": "Subject: re : institute of international finance - annual subscription\nshirley\nyes .\nvince\nshirley crenshaw\n03 / 05 / 2001 02 : 25 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : institute of international finance - annual subscription\nvince :\nis this ok to pay ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 05 / 2001\n02 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sharon purswell / enron @ enronxgate on 03 / 05 / 2001 12 : 53 pm\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : institute of international finance - annual subscription\nrobert johnston has asked me to charge vince ' s department for 1 / 3 of the cost\nof the annual subscription to iif . the annual cost is $ 47 k . therefore the\ncost for 1 / 3 is $ 15 , 666 . 67 . this information is for maureen raymond ' s use .\ni will be happy to process the invoice for payment but in order for me to do\nso , i will need the proper coding for vince ' s department .\nplease let me know if you are agreeable to this . if you have questions , you\nmay wish to contact robert johnston directly at 3 - 9934 .\nthanks ,\nsharon\n5 - 7212", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.423+0000", "entityId": 9997, "properties": {"text": "Subject: hello all\nupdate :\npreparations for the upcoming texas finance festival iii are about complete\nand i just wanted to update you on the hotel reservations information . you\nwill need to make your reservation before march 20 to be assured of getting\na room in our reserved block . also , for \" counting \" purposes i need\neveryone ' s registration form completed . many of you ( and a lot of new\nfaces ) have already sent them in but some may not have , so . . .\nlots of fun stuff is planned so come prepared for a very relaxing and\nproductive weekend !\njohn\n- announcerev . doc\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.427+0000", "entityId": 9998, "properties": {"text": "Subject: re : a request\nvince ,\ni will supply a generic example .\nzimin\nvince j kaminski\n03 / 06 / 2001 09 : 31 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : a request\nzimin ,\nit seems that the academia is catching up .\ndo you have a realistic case we can show them ?\nsomething generic .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 06 / 2001\n09 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nds 64 @ cyrus . andrew . cmu . edu on 03 / 02 / 2001 09 : 39 : 43 am\nto : \" vince j kaminski \"\ncc :\nsubject : a request\nvince ,\ni am writing to ask for your help with some research i am doing with john\nlehoczky and a phd student . we trying to apply recent advances in monte\ncarlo for american options to value swing and other options with multiple\nearly exercise decisions that are important in energy markets . i know in\ngeneral that early exercise shows up in a wide range of energy contracts ,\nboth real as welll as financial . would it be possible for you , either via\nemail or on the phone , to give us some examples of typical terms for such\ninstruments ? we would like our examples to look realistic . we also want to\nmake sure we are focusing on the right sorts of optionality .\nthanks in advance ,\nduane\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.431+0000", "entityId": 9999, "properties": {"text": "Subject: re : dr . bernard loyd at mckinsey ( agriculture )\nhi ,\nthanks for the document on your practice . i forwarded it to the\nrelevant parties .\nthey will take a look at it and get back to me when they wish to take\nthe next steps with you and your colleagues at mckinsey .\nregards ,\niris\n- - - - - original message - - - - -\nfrom : @ enron\nsent : wednesday , march 07 , 2001 11 : 28 am\nto : mack , iris\nsubject : re : dr . bernard loyd at mckinsey ( agriculture )\nbelow is some material on the practice . b\nto : bernard _ loyd @ mckinsey . com\n03 / 07 / 2001 cc :\n10 : 21 am subject : re : dr . bernard loyd at\nmckinsey\n( agriculture )\nhi ,\nthanks for your prompt response . my colleagues would indeed like to\nchat with you about the agriculture industry some time in the future .\ncan we touch bases in a few weeks .\nin the mean time , do you have any materials you can forward to us\nabout mckinsey ' s agriculture group ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : @ enron\nsent : wednesday , march 07 , 2001 2 : 17 am\nto : mack , iris\nsubject : re : iris mack at enron\nhey iris ,\ngreat to hear from you and welcome back stateside ! i would be delighted\nto\nmeet with you and your colleagues .\nbernard\nmargot tyler\n03 / 06 / 2001 to : bernard\n02 : 41 pm loyd / chi / northamerica / mckinsey\ncc :\nsubject : re : iris mack at\nenron\n- - - - - forwarded by margot tyler / chi / northamerica / mckinsey on 03 / 06 / 2001\n02 : 41 pm - - - - -\nto :\nmargot _ tyler @ mckinsey . com\n03 / 06 / 2001 cc :\n02 : 27 pm subject : re : message for\nbernard\nhi again ,\ni had lunch today with some of the guys in my group who work on\nagriculture - related deals and on weather derivatives .\ni mentioned to them about bernard ' s working at mckinsey and\nspecializing in the agriculture area .\nwe thought it might be worthwhile if we all had a chat and / or\nmet\nto discuss possible collaborative efforts .\nwill you please forward this email on to bernard to see if this\nmight be of interest to him ?\nthanks ,\niris\n| this message may contain confidential and / or privileged |\n| information . if you are not the addressee or authorized to |\n| receive this for the addressee , you must not use , copy , |\n| disclose or take any action based on this message or any |\n| information herein . if you have received this message in |\n| error , please advise the sender immediately by reply e - mail |\n| and delete this message . thank you for your cooperation . |\n| this message may contain confidential and / or privileged |\n| information . if you are not the addressee or authorized to |\n| receive this for the addressee , you must not use , copy , |\n| disclose or take any action based on this message or any |\n| information herein . if you have received this message in |\n| error , please advise the sender immediately by reply e - mail |\n| and delete this message . thank you for your cooperation . |\n- afc qual pack . zip >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.436+0000", "entityId": 10000, "properties": {"text": "Subject: fw : mckinsey partner specializing in agriculture\nhi vasant ,\nas per our lunch conversation on yesterday , i mentioned that a friend of\nmine is a partner at mckinsey and he specializes in agriculture .\nattached is an email from him regarding meeting you and others here at\nenron .\nhow do you wish to proceed ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : @ enron\nsent : wednesday , march 07 , 2001 2 : 17 am\nto : mack , iris\nsubject : re : iris mack at enron\nhey iris ,\ngreat to hear from you and welcome back stateside ! i would be delighted to\nmeet with you and your colleagues .\nbernard\nmargot tyler\n03 / 06 / 2001 to : bernard\n02 : 41 pm loyd / chi / northamerica / mckinsey\ncc :\nsubject : re : iris mack at enron\n- - - - - forwarded by margot tyler / chi / northamerica / mckinsey on 03 / 06 / 2001\n02 : 41 pm - - - - -\nto : margot _ tyler @ mckinsey . com\n03 / 06 / 2001 cc :\n02 : 27 pm subject : re : message for bernard\nhi again ,\ni had lunch today with some of the guys in my group who work on\nagriculture - related deals and on weather derivatives .\ni mentioned to them about bernard ' s working at mckinsey and\nspecializing in the agriculture area .\nwe thought it might be worthwhile if we all had a chat and / or met\nto discuss possible collaborative efforts .\nwill you please forward this email on to bernard to see if this\nmight be of interest to him ?\nthanks ,\niris\n| this message may contain confidential and / or privileged |\n| information . if you are not the addressee or authorized to |\n| receive this for the addressee , you must not use , copy , |\n| disclose or take any action based on this message or any |\n| information herein . if you have received this message in |\n| error , please advise the sender immediately by reply e - mail |\n| and delete this message . thank you for your cooperation . |\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.441+0000", "entityId": 10001, "properties": {"text": "Subject: re : contract update\ngot the copies and i have the corrected copies for you . will have them hand\ndelivered to you this afternoon .\nsheila\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , march 07 , 2001 8 : 37 am\nto : walton , sheila\ncc : kaminski , vince\nsubject : re : contract update\nsheila ,\nthere were some handwritten changes made by greg whalley on the draft . .\ni am sending you a copy in a few minutes .\nvince\nfrom : sheila walton / enron @ enronxgate on 03 / 06 / 2001 06 : 05 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : contract update\nvince , if there are some differences that we need to correct , you and i can\nmeet tomorrow when you bring the contract in . i am available anytime after\nlunch . please call me at x 30649 .\nsheila\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , march 06 , 2001 3 : 10 pm\nto : sheila walton / hou / ect @ enron\ncc : kaminski , vince\nsubject : contract update\nsheila ,\nsome minor differences between the draft and the final executed version .\ni have forgotten to bring the draft today , i shall send a copy to you\ntomorrow .\nthere were some hand - written changes made by greg ijn the draft that were not\ntransferred to\nthe final version .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.446+0000", "entityId": 10002, "properties": {"text": "Subject: phone interview with bill anderson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 03 / 07 / 2001\n08 : 58 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" wander \" on 03 / 06 / 2001 08 : 09 : 42 pm\nto :\ncc :\nsubject : phone interview 3 / 5\ndear mr . kindall ,\ni just wanted to let you know that i appreciated the time you gave me on\nmonday , and that i am very interested in pursuing a career at enron . i feel\nthat my risk management and treasury experience would prove to be valuable\nat your firm , and i would very much like to continue discussions with you if\na suitable position becomes open .\nthanks again for the taking the time to chat with me , and i look forward to\nhearing from you soon .\nsincerely ,\nbill anderson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.450+0000", "entityId": 10003, "properties": {"text": "Subject: fwd : latest roster - rice\nlet ' s try this again ! - pam\n> date : wed , 07 mar 2001 16 : 13 : 42 - 0600\n> to : vince . j . kaminski @ enron . com\n> from : pamela vande krol castro\n> subject : latest roster - rice\n>\n> here is your latest roster for mgmt 656 . let me know if you need the list\n> of e - mail addresses or if there are any discrepancies that i should\n> address . thanks for your help ! - pam ( 713 - 348 - 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.454+0000", "entityId": 10004, "properties": {"text": "Subject: fall 2001 module schedule and fall 2001 calendar schedule in your\nmailboxes\nstudents , faculty , and staff ,\ni have placed a hard copy of the fall 2001 module schedule and fall 2001\ncalendar schedule in your mailboxes this afternoon for your review . i have\nalso posted a copy of the fall 2001 module schedule and fall 2001 calendar\nschedule onto embanet . to access the fall 2001 module schedule and calendar\nschedule please open the jgsm area icon on the embanet desktop . next\nplease open the announcement jgsm icon . you will find the fall 2001 module\nschedule and the fall 2001 calendar schedule located under the subject\ncolumn . please open the documents . if you have any trouble accessing the\nschedule or calendar please contact david kilgore at :\nkilgore @ rice . edu\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.459+0000", "entityId": 10005, "properties": {"text": "Subject: enron earth day \" trash bash \"\nenron is hosting a special event on saturday , march 31 st . the first annual\nenron \" trash bash \" to clean up the banks of buffalo bayou between shepherd\ndrive and sam houston park .\ni am chairing the check - in team which consists of :\nregistering all of the volunteers\nhanding out enron t - shirts and caps\npassing out gloves and garbage bags\nmaking clean up section assignments\nfor anyone who might be interested in helping me , please call me at ext .\n30329 .\nalso , we need a lot of volunteers to walk along buffalo bayou and pick up\ntrash . this would be a great family project , a good project for your childs\nyouth group or boy scout or girl scout troop . it will also be fun . they\nwill have live bands , lyou get an enron t - shirt and enron baseball cap , lunch\nwill be served at sam houston park and there are a lot of good door prizes .\nif you want to volunteer for the \" trash bash \" clean up , just show up at sam\nhouston park on saturday , march 31 , 2001 , at 8 am to register . clean up\nstarts at 9 am and lunch will be served at 11 : 00 am and after lunch door\nprizes will be drawn and then you can go home feeling like you have done your\npart for houston ' s waterway environment .\ni hope you will think about it and bring your friends , family , ect . and help\nenron clean up the environment .\nthanks , anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.464+0000", "entityId": 10006, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n03 / 07 / 2001 03 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc : anita dupont / na / enron @ enron , kevin g moore / hou / ect @ ect\nsubject : vacation\nvince :\nif it is allright , i would like to take vacation , thursday and friday , march\n15 th and 16 th ( next week ) .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.469+0000", "entityId": 10007, "properties": {"text": "Subject: re : \" expected tail loss \" for equity portfolio\neverybody ,\ni attached here the equity portfolio var spreadsheet model ( version x ) .\nthe improvement over the previous version ( 1 x ) is that it calculates\nan additional measure of risk - expected tail loss .\nexpected tail loss is the expectation of the loss under the condition that\nlosses exceed var . as you know equity var model allows you to calculate var\nfor the percentile specified in the input sheet .\nnow you have to click 2 more buttons on the \" varinput \" sheet :\n\" calculate gamma and delta \" and \" fast var \" .\nisaac , please run the model to make sure it works for you .\nregards ,\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.476+0000", "entityId": 10008, "properties": {"text": "Subject: password security notice\nfor password renewals only\nit security & controls \u0001 ) password security notice\npasswords\nthe key to maintaining information and system security is the use of\nwell - selected and guarded passwords . because your password is our first line\nof defense , stronger password selection criteria will soon be implemented for\nall employees .\npassword policy\npasswords \u0001 (\n1 . must be at least of eight characters in length .\n2 . must not contain names , userids , common english dictionary words , and\nbegin or end with a number .\n3 . must contain alphanumeric characters and contain at least one special\ncharacter . no more than fifty percent of the overall password can be in\nenglish .\n4 . must not be reused or cyclical .\n5 . must be changed every 60 days .\n6 . must not be publicly displayed .\n7 . must not be shared with other users .\nchoosing a good password comes down to two things . first , avoid common\neveryday words a potential hacker \u0001 , s software will be looking for . second ,\nkeep your password simple enough that you can remember it without having to\nwrite it down .\nplease keep in mind that the enron code of ethics holds employees responsible\nfor password security . it security & controls conducts periodic audits to\nensure compliance with company policy .\nfor any problems encountered concerning password controls , please call your\nappropriate resolution center ( available : 24 hrs . / day , 7 days / week ) .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.484+0000", "entityId": 10009, "properties": {"text": "Subject: re : srf for sandeep kohli : eva : remedy 364463\nshirley ,\nit ' s an it request for sandeep .\nplease , help .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 08 / 2001\n03 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsap security @ enron\n03 / 08 / 2001 02 : 20 pm\nsent by : eva tow @ enron\nto : sandeep kohli / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : srf for sandeep kohli : eva : remedy 364463\nsandeep ,\nyour request does not look to be sap security related . please use the\nerequest to obtain access to the network at itcentral . enron . com .\nyou may call 713 - 853 - 1411 if you need additional assistance .\nthank you ,\nsap security ( eva )\nkohli @ mailman . enron . com on 03 / 07 / 2001 02 : 34 : 11 pm ; sandeep\non 03 / 07 / 2001 02 : 34 : 11 pm\nto : website : sap security request\ncc :\nsubject : sap security request form\nthe following request information was recently submitted . . .\nrequestor information :\nbusiness unit : ena\ncost center : 107043\ncompany code : 0413\nbusiness unit for roles : ena\nsap id : po 0504918\ngeneral information :\nsupervisor : vince kaminski\nsupervisor telephone number : 713 - 853 - 3848\nemployee name ( last , first , m ) : kohli , sandeep\nemployee location : eb 1958\nemployee telephone number : 713 - 853 - 5188\nemployee email address : sandeep . kohli @ enron . com\njob title : vice president\nsap user type : enron employee\nbusiness reason :\ni need access to the o : drive , research subdirectory .\nthis subdirectory has information to be shared between\ndifferent members of the research group . i need to\naccess this for projects we do as a team .\nviewer roles :\nno roles in this area were selected .\nfinancial accounting roles :\nno roles in this area were selected .\nproject system roles :\nno roles in this area were selected .\njoint venture roles :\nno roles in this area were selected .\nmaterials management / purchasing roles :\nno roles in this area were selected .\ncentralized roles ( limited to specific personnel ) :\nno roles in this area were selected .\nhuman resources ( hr personnel only ) :\nno roles in this area were selected .\nhuman resources - timekeepers :\nno roles in this area were selected .\nhuman resources - benefits ( benefits personnel only ) :\nno roles in this area were selected .\nhuman resources - payroll ( payroll personnel only ) :\nno roles in this area were selected .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.490+0000", "entityId": 10010, "properties": {"text": "Subject: eol data mining\nvince ,\nhere are four graphs i came up with yesterday afternoon that may be of\ninterest :\nthe first one shows what percentage of our trades are done with different\ncounterparties -\n( note the large part that aquila plays ! )\nthe other three graphs look at how trading volume varies during the week\nbetween the hours of 8 : 00 am and 4 : 00 pm for different categories of product .\nnatural gas and power have their own graphs , as they have the largest traded\nvolumes . \" products \" is for the remaining categories .\nthere are still some things i would like to take a look at . the databeacon\nsoftware is now available , and can be reached at the following url :\ndo you have any specific questions that you would like me to try answering\nregarding eol ?\ni have also started doing some research on automated trading platforms . are\nthere any websites and / or papers you would recommend i read ?\nthanks ,\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.494+0000", "entityId": 10011, "properties": {"text": "Subject: schedule for nick\nas far as i know , the schedule for nick bambos is :\n9 - 10 ebl 9 c 2 meet with paul racicot and ebs research members\n11 : 00 leave for lunch at vincent ' s\n12 : 30 return to enron\n1 - 2 eb 46 c 2 giuseppe p . talk on ip pricing .\n2 - 4 eb 43 c 2 open forum discussions with ebs traders\n4 : 14 nick departs for hobby", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.499+0000", "entityId": 10012, "properties": {"text": "Subject: re : henwood contract\nvince / stinson ,\njust fyi ! !\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n03 / 08 / 2001 08 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\npaul kraske\n03 / 07 / 2001 11 : 03 pm\nto : sandeep kohli / enron _ development @ enron _ development\ncc : anshuman srivastav / enron _ development @ enron _ development\nsubject : re : henwood contract\nsandeep ,\njust to let you know , i was at a couple of meetings in london with rebecca\nmacdonald . she pretty much raved about your presentation . sounds like you\nguys impresed her a fair amount and that you guys did a great job . regards\nto the family .\npaul", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.509+0000", "entityId": 10013, "properties": {"text": "Subject: re :\nhari ,\nthanks . please , keep me posted about your progress .\nany published papers ?\nwe shall send you the printout .\nvince\nhari natrajan on 03 / 06 / 2001 08 : 47 : 34 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re :\ndear mr . kaminski ,\nthank you very much for your prompt response . i look forward to receiving a\ncopy of your article .\ni would also appreciate it if you could let me know whether enron provides\nresearch grants to individuals who are working in the area of energy risk\nmanagement . towards my research , i am trying to develop a model to estimate\nelectricity spot price .\nin any case , i will be getting in touch with you again a year or so down the\nline when i am nearing completion of my dissertation because enron is my\ndream job .\ni look forward to hearing from you .\nthank you ,\nyours sincerely ,\nhari natarajan\nfellowship student\nindian institute of management bangalore\nbannerghatta road\nbangalore 560076\nindia\ntel : 91 - 80 - 6993056\nfax : 91 - 80 - 6584050\ne - mail : hnatraj @ iimb . ernet . in\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : hnatraj @ iimb . ernet . in\ncc : shirley . crenshaw @ enron . com ; vince . j . kaminski @ enron . com\nsent : 3 / 6 / 01 8 : 34 pm\nsubject : re :\nhari ,\ni shall send you a reprint of the article . i had to\ncancel my presentation at san antonio .\nvince\nshirley ,\nplease , send a copy of the article to hari .\nhari natrajan on 02 / 28 / 2001 06 : 45 : 29 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject :\ndear mr . kaminski ,\ni am a doctoral student at the indian institute of management bangalore ,\nindia . my area of interest is the energy sector , especially electricity\nderivatives . i am interested in obtaining a copy of the following items :\n1 ) your presentation \" current challenges in modeling power price\nvolatility \"\nat the session on price volatility & probabilistic methods in the energy\nmarkets . ( http : / / www . informs . org / conf / sanantonio 2000 / / talks / md 29 . html )\n2 ) your chapter \" the challenge of pricing and risk managing electricity\nderivatives \" in the book ' the us power market ' , risk publications .\ni would appreciate it if you could send me a soft / hard copy of the same .\nthank you ,\nyours sincerely ,\nhari natarajan\nfellowship student\nindian institute of management bangalore\nbannerghatta road\nbangalore 560076\nindia\ntel : 91 - 80 - 6993056\nfax : 91 - 80 - 6584050\ne - mail : hnatraj @ iimb . ernet . in", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.517+0000", "entityId": 10014, "properties": {"text": "Subject: re : weekly report\nvasant\nthanks for your clarification .\ni understand how this can happen and i feel better for having heard from you\nfolks .\nrgds\ndp\n- - - - - original message - - - - -\nfrom : shanbhogue , vasant\nsent : thursday , march 08 , 2001 5 : 33 pm\nto : port , david\ncc : kaminski , vince ; kindall , kevin\nsubject : weekly report\nhi david ,\ni understand that you were slightly upset over a comment kevin kindall made\nin one of his weekly reports . the wording was unfortunate , but the intention\nwas never to disparage anybody . it is just that since research gets data\nfrom a large number of sources , we feel obligated to the data donor to ask\nany requester for clarification of need . i completely understand that rac\ntypically has access to much sensitive information and they have a right to\nknow much information . we just want to make sure there is open flow of\ninformation ( it is in everybody ' s best interests and the company ' s best\ninterests ) and that everybody is aware of how data is flowing .\nbest wishes ,\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.522+0000", "entityId": 10015, "properties": {"text": "Subject: re : weekly report\nvasant ,\nyes , it ' s perfect . please , indicate that the wording was unfortunate .\nvince\nvasant shanbhogue\n03 / 08 / 2001 11 : 20 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : weekly report\nhi vince ,\nregarding david port ' s response to kevin kindall ' s email , i feel that i\nshould respond , at least to make our position clear . please indicate if the\nfollowing response is appropriate - - - - - - -\n\" hi david ,\ni understand that you were slightly upset over a comment kevin kindall made\nin one of his weekly reports . the intention was never to disparage anybody .\nit is just that since research gets data from a large number of sources , we\nfeel obligated to the data donor to ask any requester for clarification of\nneed . i completely understand that rac typically has access to much\nsensitive information and they have a right to know much information . we\njust want to make sure there is open flow of information ( it is in\neverybody ' s best interests and the company ' s best interests ) and that\neverybody is aware of how data is flowing .\nbest wishes ,\nvasant \"\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 03 / 08 / 2001\n11 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : david port / enron @ enronxgate on 03 / 08 / 2001 08 : 46 am\nto : kevin kindall / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , rudi\nzipter / enron @ enronxgate\nsubject : re : weekly report\nkevin - thanks for the update .\non the stock option plans , if your angle is what i suspect , i suggest you get\nwith rudi zipter , who has done a great deal of work on this exposure ,\nincluding characterising and actually booking the short option positions in\nenron ' s equity system . we are already working with ben glisan ' s team firming\nup a hedging program . we are well advanced in this effort so if you get with\nmy people it could save you a great deal of time .\nsecondly , i am afraid i do take some exception to your references to naveen ' s\nteam in your last point . generally in rac i don ' t believe we are obliged to\nexplain why we need information , except as a courtesy - otherwise that would\ncompromise our role somewhat . specifically , i am aware of the sensitivity of\nraptor , just as i am of the sensitivity of all the information my group is\nprivvy to on a daily basis . again , we have done a good deal of work on these\nstructures too ( i see a position report daily ) . as i have discussed with\nvince , naveen ' s request would have been derived from a discussion we all had\nwith rick , concerning \" meltdown \" scenarios and their effect on , amongst other\nthings , funding vehicles .\nbut i would rather have had a conversation about this than see slightly\ndisparaging remarks about my people in email traffic .\nrgds\ndp\n- - - - - original message - - - - -\nfrom : kindall , kevin\nsent : monday , march 05 , 2001 8 : 19 am\nto : kaminski , vince ; shanbhogue , vasant\ncc : port , david\nsubject : weekly report\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.526+0000", "entityId": 10016, "properties": {"text": "Subject: karthik rajan\nshirley ,\nwe interviewed by phone karthik and would now like to bring him for a visit\nto enron . can you either arrange it or forward to hr for them to arrange ,\nwhichever is best . while here karthik should probably talk with\nzimin , paulo , bob , vasant , krishna , vince\nand anyone else vince wants to add to the list .\nthanks ,\nstinson\nhis resume is attached below . his phone # is 765 494 2181 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 03 / 08 / 2001\n03 : 40 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat @ enron\n03 / 08 / 2001 03 : 39 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : phone interview with karthik\nattached is karthik resume .\nhis transcript is in http : / / atom . ecn . purdue . edu / ~ krajan / friends /\nlogin is : k _ rajan\npassword is : donl 23\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n03 / 08 / 2001 03 : 37 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n02 / 28 / 2001 07 : 09 pm\nto : stinson gibner / hou / ect @ ect , zimin lu / hou / ect @ ect\ncc :\nsubject : phone interview with karthik\nplease let me know if you guys available sometimes next tuesday or wednesday\nlate afternoon or evening .\nzimin , karthik is a chem eng student at purdue . he found me from www and\ncontacted me for job opportunities . attached is his resume .\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n02 / 28 / 2001 07 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" karthik rajan \" on 02 / 28 / 2001 09 : 41 : 56 pm\nto :\ncc :\nsubject : re : opportunities in enron\nhi chonawee supatgiat ,\nnice to hear from you . next week would be ideal for me too . tuesday or\nwednesday late afternoons / evenings would be ideal for me .\nmy number is 765 532 3182 .\nlooking forward to talking to you , stinson and zimin .\nthanks ,\nkarthik .\n- - - - - original message - - - - -\nfrom :\nto : \" karthik rajan \"\nsent : wednesday , february 28 , 2001 3 : 48 pm\nsubject : re : opportunities in enron\n>\n> hi karthik ,\n> stinson , zimin , and i would like to speak with you over the phone . when\n> will be a good time ? we are thinking about sometimes next week . stinson\n> and zimin are also in the research group .\n> - chonawee\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.531+0000", "entityId": 10017, "properties": {"text": "Subject: fw : resume for vince kaminski\nwe just received this resume from an agency . i had just heard this morning\nthat an economist was coming into your group , so i don ' t know if you are\ninterested or not . let me know if i can be of any help .\nmolly\n- - - - - original message - - - - -\nfrom : graham , toni\nsent : thursday , march 08 , 2001 2 : 07 pm\nto : magee , molly\nsubject : fw : resume for vince kaminski\n- - - - - original message - - - - -\nfrom : \" m eastman \" @ enron\n@ enron . com ]\nsent : thursday , march 08 , 2001 1 : 53 pm\nto : graham , toni\nsubject : resume for vince kaminski\njohnathan is at 142 , 000 base + 10 - 15 % bonus . he is a phd . , certified in\nfinancial risk management , awaiting charter as cfa , and the list goes\non . at kpmg his clients are financial institutions , e - commerce , internet ,\nand high tech . he has real options valuation and various other financial\nand overall corporate risk valuation and analysis skills that may be of\ninterest to vince and his group .\nmike eastman , cpc - president\nqualitec professional services , lp\naccounting - financial - energy risk - tax\nsearch consultants\n281 - 647 - 9300 ext . 314 fax 281 - 647 - 9300\nemail meastman @ qualitec . com\nwebsite www . qualitec . com\n- johnathan mun . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.536+0000", "entityId": 10018, "properties": {"text": "Subject: re : interview with enron corp . research\ndear shirley ,\nthanks for your letter and invitation . next week we have a spring break at\nuh , so i will be pretty flexible . is next tuesday fine ? almost any time . if\nnot , any other day next week will work for me . starting march 19 i will\nteach again , and it will be harder ( but not impossible ) to find a good time\nfor interview with enron .\nadam\n- - - - - original message - - - - -\nfrom : shirley . crenshaw @ enron . com [ mailto : shirley . crenshaw @ enron . com ]\nsent : 8 marca 2001 09 : 36\nto : adambob @ stat . rice . edu\nsubject : interview with enron corp . research\ngood morning adam :\nthe enron corp . research group would like to conduct an informal interview\nwith you at your convenience .\nplease give me some dates and times that would be convenient to , sometime\nwithin the next 2 - 3 weeks and i will coordinate an interview schedule .\ni look forward to hearing from you very soon .\nbest regards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 08 / 2001\n09 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" adam bobrowski \" on 03 / 07 / 2001 09 : 45 : 03 pm\nto :\ncc :\nsubject : resume\ndear mr . kaminski ,\nas a follow - up to your oral communication with my friend tom ware , i\nwould\nlike\nto express my interest in working for your company , enron . please find\nenclosed\nmy resume and curriculum vitae . if you need additional data , please feel\nfree to\ncall me at\n( 713 ) 592 - 8909 ( home ) or ( 713 ) 743 - 3483 ( office ) ,\nor email me at\nadambob @ stat . rice . edu or adambob @ math . uh . edu .\nyours sincerely ,\nadam bobrowski .\n( see attached file : cvbobrowski . ps )\n( see attached file : bobrowskiresume . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.540+0000", "entityId": 10019, "properties": {"text": "Subject: interview with the enron corp . research group\ngood morning jacob :\nthe enron corp . research group would like to bring you in for an informal\ninterview . please give me some times and dates within the next 2 - 3 weeks\nthat would be convenient for you and i will coordinate an interview schedule .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao vice president\nzimin lu director\ntanya tamarchenko director\nbob lee manager\ntom halliburton manager\nchonawee supatgiat manager\ni look forward to hearing from you soon .\nbest regards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 / 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 08 / 2001\n09 : 33 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n03 / 08 / 2001 09 : 17 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : candidate for us\njacob kang , currently a leading developer for pros energy applications ,\nis interested in a job in derivatives valuation .\nlet me know if we want to bring him for a interview .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 08 / 2001 09 : 07 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacob y . kang \" on 03 / 07 / 2001 11 : 10 : 24 pm\nto : zlu @ enron . com\ncc :\nsubject : my cover letter and resume\ndear zhimin ,\nthe attached files are my cover letter and resume .\nthank you very much and i really appreciate your help\non this matter .\nying\nthese two files do not contain any virus even though\nthere are error signs on the virus check status .\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /\n- cover letter _ enron . doc\n- resume _ ying . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.545+0000", "entityId": 10020, "properties": {"text": "Subject: interview with enron corp . research\ngood morning adam :\nthe enron corp . research group would like to conduct an informal interview\nwith you at your convenience .\nplease give me some dates and times that would be convenient to , sometime\nwithin the next 2 - 3 weeks and i will coordinate an interview schedule .\ni look forward to hearing from you very soon .\nbest regards ,\nshirley crenshaw\nadministrative coordinator\nenron corp . research\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 08 / 2001\n09 : 30 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" adam bobrowski \" on 03 / 07 / 2001 09 : 45 : 03 pm\nto :\ncc :\nsubject : resume\ndear mr . kaminski ,\nas a follow - up to your oral communication with my friend tom ware , i would\nlike\nto express my interest in working for your company , enron . please find\nenclosed\nmy resume and curriculum vitae . if you need additional data , please feel\nfree to\ncall me at\n( 713 ) 592 - 8909 ( home ) or ( 713 ) 743 - 3483 ( office ) ,\nor email me at\nadambob @ stat . rice . edu or adambob @ math . uh . edu .\nyours sincerely ,\nadam bobrowski .\n- cvbobrowski . ps\n- bobrowskiresume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.550+0000", "entityId": 10021, "properties": {"text": "Subject: re : fwd : latest roster - rice\nno problem - pam\nat 05 : 42 pm 3 / 7 / 01 - 0600 , you wrote :\n> pam ,\n>\n> thanks ,\n>\n> yes , i need the e - mail addresses as well .\n>\n> vince\n>\n>\n>\n>\n>\n> pamela vande krol castro on 03 / 07 / 2001 04 : 19 : 01 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : fwd : latest roster - rice\n>\n>\n> let ' s try this again ! - pam\n>\n>\n> > date : wed , 07 mar 2001 16 : 13 : 42 - 0600\n> > to : vince . j . kaminski @ enron . com\n> > from : pamela vande krol castro\n> > subject : latest roster - rice\n> >\n> > here is your latest roster for mgmt 656 . let me know if you need the list\n> > of e - mail addresses or if there are any discrepancies that i should\n> > address . thanks for your help ! - pam ( 713 - 348 - 6223 )\n>\n> ( see attached file : 656 . doc )\n>\n>\n- 656 . xls", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.554+0000", "entityId": 10022, "properties": {"text": "Subject: stanford mba recruiting\ngreg ,\nthis is the agenda for the recruiting trip to stanford next week .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 08 / 2001\n11 : 21 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalthea gordon @ enron\n03 / 07 / 2001 04 : 30 pm\nto : vince . kaminski @ enron . com , brad . romine @ enron . com , brad . alford @ enron . com ,\nmartin . lin @ enron . com , theresa _ riedman @ enron . net , matt _ harris @ enron . net ,\nmichael . smythe @ enron . net , benjamin . bell @ enron . com , mauricio . mora @ enron . com ,\nceleste . roberts @ enron . com\ncc : shirley . crenshaw @ enron . com , paula . austin @ enron . com ,\ndolores . muzzy @ enron . com , cathy . lira @ enron . com , patricia . payton @ enron . com\nsubject : stanford mba recruiting\nthank you for agreeing to participate in the associate program ' s recruiting\nefforts at stanford graduate school of business .\nthe itinerary for the trip is as follows :\nwednesday , march 14 , 7 : 00 p . m . to 9 : 00 p . m . dinner with students selected to\ninterview\nil fornaio , the sala del canaletto room\n520 cowper street , palo alto\n( 650 ) 853 - 3888\nthursday , march 15 , 8 : 30 a . m . to 4 : 45 p . m . round 1 interviews for both\nsummer and full time associates\nstanford gsb career services center\ninterviewers :\ntheresa riedman\nbrad romine\nbrad alford\nmartin lin\nmichael smythe - to be confirmed\nbenjamin bell - to be confirmed\nmauricio mora - greeter / alternate interviewer\nthursday , march 15 , 12 : 15 p . m . to 1 : 30 p . m . lunch with dean george parker\n( associate dean of academics ) and\nsherrie taguchi ( director of career services ) .\nstanford gsb career services center\nwe will be ordering lunch in .\nfriday , march 16 , 8 : 00 a . m . to 12 : 00 p . m . * round 2 interviews for both\nsummer and full time associates\nstanford gsb career services center\ninterviewers :\nvince kaminski\nmatthew harris\n* please note that this is an approximate time that will be based on the\nnumber of candidates who successfully pass round 1 interviews on thursday .\nyour hotel information is as follows :\nstanford park hotel\n100 el camino real\nmenlo park\n( 650 ) 322 - 1234\nupon confirmation of your participation you will receive your hotel\nconfirmation number . in the event that you have not received your hotel\nconfirmation number please contact my assistant , cathy lira , at x 54049 .\nattire for the trip will be business casual . if you have any questions\nplease feel free to give me a call at x 53860 . in case of emergency ( and\nduring the trip itself ) i can be reached at ( 713 ) 416 - 6250 .\nthank you for your support of the program .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.559+0000", "entityId": 10023, "properties": {"text": "Subject: re : lawyer\ni will sign an agreement not to use the materials\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , march 08 , 2001 11 : 13 am\nto : macmilli @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : lawyer\nian ,\nsorry for a delay in getting back to you .\ni have one challenge i did not anticipate\nwhen i talked to you the first time about our real options\ninternal seminar .\nthe materials were prepared in collaboration with a professor\nfrom another school , and there is some sensitivity regarding\nthe intellectual property rights and the ability to distribute the\nmaterials\noutside enron .\nplease , give me some time to find out if i can work\naround this issue .\nvince\n\" macmillan , ian \" on 03 / 07 / 2001 06 : 46 : 28 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : lawyer\ni still have not heard from your lawyer . i would like to see whar\nmaterials you are using and assess how we could work on the topic of real\noptions with enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.563+0000", "entityId": 10024, "properties": {"text": "Subject: re : lawyer\nian ,\nsorry for a delay in getting back to you .\ni have one challenge i did not anticipate\nwhen i talked to you the first time about our real options\ninternal seminar .\nthe materials were prepared in collaboration with a professor\nfrom another school , and there is some sensitivity regarding\nthe intellectual property rights and the ability to distribute the materials\noutside enron .\nplease , give me some time to find out if i can work\naround this issue .\nvince\n\" macmillan , ian \" on 03 / 07 / 2001 06 : 46 : 28 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : lawyer\ni still have not heard from your lawyer . i would like to see whar materials\nyou are using and assess how we could work on the topic of real options with\nenron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.567+0000", "entityId": 10025, "properties": {"text": "Subject: re : green card\nsevil ,\ni believe you and margret daffin have spoken about the next steps for your\ngreen card . you will need to start working on you hib at the begining of\noctober 2001 .\nif there is any confusion on my part please let me know .\nnorma villarreal\nx 31545\nbelow is dicussion between margret daffin and sevil in an e : mail january 26 ,\n2001 :\n\" sevil : first of all we have to get you an hib visa before we can work on\ngetting you the green card .\nafter you get your opt , contact me sometime in the summer and i will start\nworking on your hib visa which we will obtain in approx . october , 2001 . we\ncannot start the green card process when you are still on an fl visa - you\nhave to be on an hib visa . there is no rush - you will have six years on the\nhib visa - plenty of time in which to get the green card . \"\nthis was in reference to her note to me , as follows :\n\" i think i ' ll have time approximately until the end of 2002 by using cpt and\nopt . this makes almost two years . if we can start green card process now , do\nyou think that i would get it before i need hl . in every case , can ' t we start\ngreen card before i get hl ? because i don ' t want to waste these two years\ngiven the fact that green card process is a long process . \"\n- - - - - original message - - - - -\nfrom : yaman , sevil\nsent : thursday , march 08 , 2001 3 : 59 pm\nto : daffin , margaret\ncc : norma villarreal / hou / ect @ enron\nsubject : green card\ni haven ' t heard back from any of you regarding my immigration status . could\nyou please get back to me with the information about the initialization of my\ngreen card process ? thank you .\nsevil yaman\neb 1943\nx 58083", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.572+0000", "entityId": 10026, "properties": {"text": "Subject: re : times 2 filing units\nrachel , can you give us a delivery date on p . o . no . 0898 - 984503 ? thanks , pat\nanita dupont @ enron\n03 / 08 / 2001 09 : 30 am\nto : pat scarborough / epsc / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : times 2 filing units\npat :\nwill you please notify me when these filing units are going to be delivered\nas we have to unload the lateral file cabinets that are currently in that\nroom . also , will the men who deliver the times 2 units remove the lateral\nfiles ? thanks . anita\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 03 / 08 / 2001 09 : 27\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont\n02 / 21 / 2001 09 : 39 am\nto : pat scarborough / epsc / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : times 2 filing units\npat : out co # is 0413 , rc # is 107043 . please deliver them to eb 19 c 2 .\nalso , please let me know when they are going to be delivered as we have to\nunload the lateral file cabinets that are currently in that room . will the\nmen who deliver the times 2 units remove the lateral files ? thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.577+0000", "entityId": 10027, "properties": {"text": "Subject: meeting with mr . sud\nrebecca ,\nas we had spoken on the phone , i met with mr . kk sud , a retired secretary in\nthe govt . of india yesterday . this meeting was arranged at vince ' s request ,\nsince vince had been approached by mr . sud ' s son who is a student at rice\n( where vince teaches a course ) . the younger mr . sud had wanted someone at\nenron to meet with his father who was visiting houston , and is currently an\nadvisor ( post retirement from the government ) to the prime minister ' s office .\nthis was my first meeting , and i have no background check on the person .\nhowever , the meeting was interesting , and mr . sud conveyed to me in\nconfidence that the indian govt . is very interested in solving the dabhol\nissue . he also conveyed that a decision is being made in the direction of\nntpc buying all the power from dabhol , but that this was still under wraps .\ni have no way of judging the genuineness of this person , but he claimed to\nhave been secretary in the ministry of defence for some 16 years , which is a\nvery important post in india . the information he was conveying seemed so\nimportant that vince and i decided to update you on the same by phone this\nmorning .\nmr . sud is leaving houston on monday so , as discussed , i will see if he can\nmeet with you on saturday morning .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.583+0000", "entityId": 10028, "properties": {"text": "Subject: mr . sud\nrebecca ,\ni share some of your concerns regarding mr . sud . he is retired and he chose\nto contact us rather indirectly ( or on the spur of the moment ) .\ni understand that things are done differently in different cultures but i\ndid not meet him and could not\nform my judgment based on personal observations .\nhowever , the information he gave us seems to be too important not to convey\nto you and not to act upon .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.587+0000", "entityId": 10029, "properties": {"text": "Subject: re : article\nhello , vince !\ni just got this from steve bigalow . is it okay to use for monday ' s\nnewsletter ?\nthanks for the help ,\nsam\n- - - - - - - - - - - - - - - - - - - - - - forwarded by william smith / corp / enron on 03 / 09 / 2001\n12 : 42 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsteve bigalow\n03 / 09 / 2001 11 : 39 am\nto : william smith / corp / enron @ enron\ncc :\nsubject : re : article", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.592+0000", "entityId": 10030, "properties": {"text": "Subject: re :\ndear mr . kaminski ,\nsince i am just about starting off on my research , i do not have any papers\npublished in this area . but i do plan to address this shortcoming pretty\nsoon . i have a couple of other papers against my name , but they are not\nworth any serious mention .\ni thank you for taking time off your busy schedule to write to me . i will\nkeep you posted about my progress .\nthank you ,\nyours sincerely ,\nhari natarajan\nfellowship student\nindian institute of management bangalore\nbannerghatta road\nbangalore 560076\nindia\ntel : 91 - 80 - 6993056\nfax : 91 - 80 - 6584050\ne - mail : hnatraj @ iimb . ernet . in\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : hnatraj @ iimb . ernet . in\ncc : shirley . crenshaw @ enron . com ; vince . j . kaminski @ enron . com\nsent : 3 / 8 / 01 10 : 45 pm\nsubject : re :\nhari ,\nthanks . please , keep me posted about your progress .\nany published papers ?\nwe shall send you the printout .\nvince\nhari natrajan on 03 / 06 / 2001 08 : 47 : 34 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re :\ndear mr . kaminski ,\nthank you very much for your prompt response . i look forward to\nreceiving a\ncopy of your article .\ni would also appreciate it if you could let me know whether enron\nprovides\nresearch grants to individuals who are working in the area of energy\nrisk\nmanagement . towards my research , i am trying to develop a model to\nestimate\nelectricity spot price .\nin any case , i will be getting in touch with you again a year or so down\nthe\nline when i am nearing completion of my dissertation because enron is my\ndream job .\ni look forward to hearing from you .\nthank you ,\nyours sincerely ,\nhari natarajan\nfellowship student\nindian institute of management bangalore\nbannerghatta road\nbangalore 560076\nindia\ntel : 91 - 80 - 6993056\nfax : 91 - 80 - 6584050\ne - mail : hnatraj @ iimb . ernet . in\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : hnatraj @ iimb . ernet . in\ncc : shirley . crenshaw @ enron . com ; vince . j . kaminski @ enron . com\nsent : 3 / 6 / 01 8 : 34 pm\nsubject : re :\nhari ,\ni shall send you a reprint of the article . i had to\ncancel my presentation at san antonio .\nvince\nshirley ,\nplease , send a copy of the article to hari .\nhari natrajan on 02 / 28 / 2001 06 : 45 : 29 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject :\ndear mr . kaminski ,\ni am a doctoral student at the indian institute of management bangalore ,\nindia . my area of interest is the energy sector , especially electricity\nderivatives . i am interested in obtaining a copy of the following items :\n1 ) your presentation \" current challenges in modeling power price\nvolatility \"\nat the session on price volatility & probabilistic methods in the energy\nmarkets . ( http : / / www . informs . org / conf / sanantonio 2000 / / talks / md 29 . html )\n2 ) your chapter \" the challenge of pricing and risk managing electricity\nderivatives \" in the book ' the us power market ' , risk publications .\ni would appreciate it if you could send me a soft / hard copy of the same .\nthank you ,\nyours sincerely ,\nhari natarajan\nfellowship student\nindian institute of management bangalore\nbannerghatta road\nbangalore 560076\nindia\ntel : 91 - 80 - 6993056\nfax : 91 - 80 - 6584050\ne - mail : hnatraj @ iimb . ernet . in", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.598+0000", "entityId": 10031, "properties": {"text": "Subject: additional e - mail addresses\nvince ,\nthree new students gave me their e - mails :\nwooddy @ rice . edu , lamas @ rice . edu , tbalestrery @ houston . rr . com\njason", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.606+0000", "entityId": 10032, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\neast power midwest origination\nbeginning late 2000 , east power marketing implemented a complete market\ncoverage strategy . since then , epmi has begun to develop relationships with\nhundreds of small \u0001 & mom & pop \u0001 8 municipalities . many of these munis had no\nprior contact with enron . as a result , east power has executed a valuable 30\nmw energy call option term purchase from the municipal energy agency of\nnebraska ( mean ) at a congested location .\nenron industrial markets\neim has renamed pulp , paper the state power\nexchange effectively replaced three monopoly buyers with one monopoly buyer .\nderegulation does not mean buying all of your commodity at the last minute ,\non the spot market , rather than planning ahead and purchasing most of the\npower under long - term contracts that lock in prices .\nthe situation in california is the result of continued regulation ,\ncomplicated by a series of natural and man - made factors .\nwelcome\nnew hires\negm - lowell bezanis , owen zidar\neim - eric holzer , john ovanessian\nena - mecole brown , nita garcia , ambroshia hunter , nikole jackson , junichi\nsugiura , theresa zucha , cynthia gonzalez , scott wilson , kenton schaefer ,\nemily butler\ntransfers\nena - joseph hardy , nancy vu , lloyd miller , jinsung myung , patrick johnson ,\njason wolfe , andrew miles , sara shackleton\neim - sherri baldwin , debbie chance , rob saltiel\negm - jody crook , neithard foley , juan paysse , bhavna pandya , courtney\ncampbell , terri denning\nnuggets & notes\n\" it is on the high side of medium to high . \" - - tim battaglia , vice\npresident / steel origination eim ( discussing the probability of a transaction\nclosing ) .\n\u0001 & i wanna see the phone glued to your ear ! \u0001 8 - - ed baughman , vice\npresident / east power mid market ena\n\u0001 & referrals , referrals , referrals ! it pays to know good people . \" \u0001 ) ambroshia\nhunter perry / hr ena\nyou requested more info \u0001 ( . proud parents michelle vitrella , pr coordinator ,\nand husband david vitrella , manager of trading , have named their baby girl\nlily ann . she was born on february 27 , 2001 .\nlearning at the speed of enron\nif you haven ' t had a chance to log on to www . investinme . enron . com , you ' re\nmissing a fast and easy way to gain the information you need to get ahead and\nstay ahead . this new ews training site combines everything you loved about\nernie with much , much more . enron employees now have the ability to register\nfor hundreds of classes on industry - related topics anywhere in the world .\ndon ' t have time to attend a classroom training ? no problem , you can now use\nthe web site to search for books , videos , cd rom , and web - based training . all\nthe learning you want , anytime , anywhere . just go to\nwww . investinme . enron . com and start building your future today !\nnews from the global flash\nenron wind\nenron wind has purchased the factory facilities of the dutch company , aerpac ,\neurope ' s second largest producer of wind turbine rotor blades . this move\nrepresents a significant step towards fulfilling enron wind ' s strategic\nobjective of manufacturing high - quality and technically sophisticated rotor\nblades in - house . enron wind will be using its own moulds to produce the\nrotor blades . the acquisition of the almelo - based factory facilities , which\nare only 60 kilometres from enron wind ' s facilities in salzbergen , germany ,\ngives the company a convenient base for european wide distribution .\nenron applies for greek electricity trading license\nenron , through its subsidiary enron power mepe , has applied for an\nelectricity supply license for greece , for the 34 % market opening on feb 19 th\n2001 . if the license application is successful , enron will be allowed to\napproach customers consuming more than 100 gwh up to a combined total peak\ncapacity of 350 mw . in total , 4 companies have applied for power trading\nlicenses ( enel , atel and cinergy also applied ) .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.613+0000", "entityId": 10033, "properties": {"text": "Subject: stanford summer associate and full - time associate recruiting\ngreg :\njust an update on the stanford summer associate and full - time associate\nrecruiting efforts :\nwe have pre - selected 19 summer associate candidates and 7 full - time associate\ncandidates . the schedule of interviewers for round 1 and round 2 is listed\nbelow . i was able to get elliot mainzer and steve swain on the round 1\ninterview schedule . they were tim belden ' s picks for interviewers from his\ngroup . i have left a message for chris calger to see if he might be\navailable for round 2 interviews and am waiting to hear back from him .\nlisted below are logistics . let me know if you are available for friday\ninterviews .\nregards ,\nceleste roberts\nwednesday , march 14 , 7 : 00 p . m . to 9 : 00 p . m . dinner with students selected to\ninterview\nil fornaio , the sala del canaletto room\n520 cowper street , palo alto\n( 650 ) 853 - 3888\nattire : business casual\nenron attendees :\nvince kaminski - md\nbrad alford - vp\nmatt harris - vp\nbrad romine - mgr\ntheresa riedman - mgr\nsteve swain - mgr\nelliot mainzer - mgr\nmartin lin - mgr\nmauricio mora - associate\nceleste roberts - director\nalthea gordon - recruiter\nthursday , march 15 , 8 : 30 a . m . to 4 : 45 p . m . round 1 interviews for both\nsummer and full time associates\nstanford gsb career services center\ninterviewers :\ntheresa riedman\nbrad romine\nbrad alford\nmartin lin\nelliot mainzer\nsteve swain\nmauricio mora - greeter / alternate interviewer\nthursday , march 15 , 12 : 15 p . m . to 1 : 30 p . m . lunch with dean george parker\n( associate dean of academics ) and\nsherrie taguchi ( director of career services ) .\nstanford gsb career services center\nwe will be ordering lunch in .\nfriday , march 16 , 8 : 00 a . m . to 12 : 00 p . m . * round 2 interviews for both\nsummer and full time associates\nstanford gsb career services center\ninterviewers :\nvince kaminski\nmatthew harris\n* please note that this is an approximate time that will be based on the\nnumber of candidates who successfully pass round 1 interviews on thursday .\nyour hotel information is as follows :\nstanford park hotel\n100 el camino real\nmenlo park\n( 650 ) 322 - 1234\nupon confirmation of your participation you will receive your hotel\nconfirmation number . in the event that you have not received your hotel\nconfirmation number please contact cathy lira , at x 54049 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.620+0000", "entityId": 10034, "properties": {"text": "Subject: more details on karolyi visit\nvince :\nwe will have cocktails with andrew at mi luna in the village ( on\nuniversity , south side of the street between kirby and morningside ) at 5 : 30\nmonday evening . you can join in there or meet up with the dinner crew at\nthe appointed place .\nwe ' ll see you monday .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.625+0000", "entityId": 10035, "properties": {"text": "Subject: re : green card\nvince ,\nthanks for initiating this information flow . i think the confusion is coming\nfrom the question of if an fl can apply for green card or not . to my\nknowledge and to the knowledge of international student services in my\nuniversity , yes i can apply . anyway , thanks again and i am sure we ' ll find a\ngood answer for this question since here is enron .\nsevil ,\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sevil yaman / corp / enron on 03 / 09 / 2001\n10 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : norma villarreal / enron @ enronxgate on 03 / 08 / 2001 06 : 31 pm\nto : sevil yaman / corp / enron @ enron , margaret daffin / hou / ect @ ect\ncc : norma villarreal / hou / ect @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : green card\nsevil ,\ni believe you and margret daffin have spoken about the next steps for your\ngreen card . you will need to start working on you hib at the begining of\noctober 2001 .\nif there is any confusion on my part please let me know .\nnorma villarreal\nx 31545\nbelow is dicussion between margret daffin and sevil in an e : mail january 26 ,\n2001 :\n\" sevil : first of all we have to get you an hib visa before we can work on\ngetting you the green card .\nafter you get your opt , contact me sometime in the summer and i will start\nworking on your hib visa which we will obtain in approx . october , 2001 . we\ncannot start the green card process when you are still on an fl visa - you\nhave to be on an hib visa . there is no rush - you will have six years on the\nhib visa - plenty of time in which to get the green card . \"\nthis was in reference to her note to me , as follows :\n\" i think i ' ll have time approximately until the end of 2002 by using cpt and\nopt . this makes almost two years . if we can start green card process now , do\nyou think that i would get it before i need hl . in every case , can ' t we start\ngreen card before i get hl ? because i don ' t want to waste these two years\ngiven the fact that green card process is a long process . \"\n- - - - - original message - - - - -\nfrom : yaman , sevil\nsent : thursday , march 08 , 2001 3 : 59 pm\nto : daffin , margaret\ncc : norma villarreal / hou / ect @ enron\nsubject : green card\ni haven ' t heard back from any of you regarding my immigration status . could\nyou please get back to me with the information about the initialization of my\ngreen card process ? thank you .\nsevil yaman\neb 1943\nx 58083", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.629+0000", "entityId": 10036, "properties": {"text": "Subject: research ' s summer outlook\nthe research weather group has posted the 2001 summer outlook on research\nintranet page , under the afternoon video report .\nthe links are :\ncussioncontent . asp ? item = afternoon\nand http : / / enaresearch . corp . enron . com / research / framework / default . asp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.635+0000", "entityId": 10037, "properties": {"text": "Subject: wharton risk center advisory committee meeting - june 14 , 2001\nto : advisory committee members\nfrom : paul r . kleindorfer\nhoward kunreuther\ndate : march 12 , 2001\nsubject : our next advisory committee meeting\njust to let you know that our next advisory committee meeting will be on\nthursday , june 14 , 2001 . we will be sending the agenda and more details in\nlate march or early april . the principal theme of this meeting of the\nadvisory committee will be \" markets and regulation for efficient risk\nmanagement \" .\nwe would appreciate your letting theresa convery know your attendance by\nreturning a completed response form ( copy attached ) via fax or email as soon\nas possible .\nfax : ( 215 ) 573 - 2130\nphone : ( 215 ) 898 - 5688\nemail : tconvery @ wharton . upenn . edu\n>\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\ntheresa convery\nadministrative assistant\nrisk and decision processes center\nthe wharton school of the university of pennsylvania\n( 215 ) 898 - 5688 / fax : ( 215 ) 573 - 2130\ntconvery @ wharton . upenn . edu\n- response form . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.640+0000", "entityId": 10038, "properties": {"text": "Subject: re : introduction\nthanks ,\nsubroto\noriginal message - - - - -\nfrom : ? vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : ? ? monday , march 12 , 2001 7 : 39 pm\nto : ? ? ? ? subroto . roy @ riskmetrics . com\nsubject : ? ? ? ? ? ? ? re : introduction\ndear subroto ,\nthanks for your message . here is my information :\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ? ? ? ( 713 ) 853 3848\n? ? ? ? ( 713 ) 410 5396 ( cell )\nfax ? : ? ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\nvince\nsubroto roy on 03 / 12 / 2001 11 : 28 : 52 am\nto : ? ? \" ' vkamins @ enron . com ' \"\ncc :\nsubject : ? introduction\ndear vince :\nit was a pleasure talking with you today , especially about risk management\nand data opportunities . we appreciate your openness with respect to sharing\ninformation about your business activity .\nriskmetrics has grown rapidly in the last one year . we now have 370\ninstitutional clients worldwide for our risk management software and data\nproducts . we encourage you to visit our web site and our ' risk grades ' site\nfor risk measurements for retail clients . we look forward to meet with you\nand your colleagues at enron .\nsincerely ,\nsubroto roy\nriskmetrics inc .\n44 wall street\nnew york , ny 10005\nt 212 - 981 - 7435 , f 212 - 981 - 7401\nhttp : / / www . riskmetrics . com /\n* * * * * * * * * * * * * * * * * * * * *\ncheck the risk of your personal investments at http : / / www . riskgrades . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.644+0000", "entityId": 10039, "properties": {"text": "Subject: re : mr . sud\nvince ,\nit never hurts ( or rarely , anyway ) to follow up on things . i met with him\non saturday . it will be interesting to see what he does . i didn ' t empower\nhim to do anything on our behalf and basically just stated what i wouldn ' t\nmind him repeating .\nthanks ,\nrebecca\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : friday , march 09 , 2001 9 : 03 am\nto : rebecca mcdonald / enron _ development @ enron\ncc : kaminski , vince\nsubject : mr . sud\nimportance : high\nsensitivity : confidential\nrebecca ,\ni share some of your concerns regarding mr . sud . he is retired and he chose\nto contact us rather indirectly ( or on the spur of the moment ) .\ni understand that things are done differently in different cultures but i\ndid not meet him and could not\nform my judgment based on personal observations .\nhowever , the information he gave us seems to be too important not to convey\nto you and not to act upon .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.649+0000", "entityId": 10040, "properties": {"text": "Subject: meeting with mr . sud\nvince / stinson ,\ni met with rebecca mcdonald , and introduced her to mr . sud on saturday .\nthe meeting went on quite well , and mr . sud repeated the point he had made to\nme regarding ntpc buying the power . he did not ask for any consulting or\nother contract , but said that he would try to help .\nrebecca seemed happy with the meeting , but i do not know whether she has a\nplan in mind going forward .\ni can give you more details of the meeting if anyone is interested . i do\nbelieve that mr . sud is well connected in india .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.654+0000", "entityId": 10041, "properties": {"text": "Subject: re : resume\nmarshall ,\nwe shall call him on wednesday after 2 : 30 .\nvince\nmarshall brown on 03 / 12 / 2001 11 : 23 : 31 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : resume\nvince ,\nhe can talk today after 2 : 30 pm today or wednesday afternoon as well .\nhis work # is 713 - 544 - 5989 . let me know .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : monday , march 12 , 2001 11 : 40 am\n> to : marshall . brown @ robertwalters . com\n> subject : re : resume\n>\n>\n> marshall ,\n>\n> looks interesting . can we arrange an exploratory phone interview ?\n>\n>\n> vince\n>\n>\n>\n>\n>\n>\n> marshall brown on 03 / 09 / 2001 07 : 46 : 22\n> am\n>\n> to : vince kaminski\n> cc :\n> subject : resume\n>\n>\n> vince ,\n> how are you . this candidate would be interested in any positions in\n> your group .\n> regards ,\n>\n> marshall brown\n> vice president\n> robert walters associates\n> tel : ( 212 ) 704 - 0596\n> fax : ( 212 ) 704 - 4312\n> mailto : marshall . brown @ robertwalters . com\n> http : / / www . robertwalters . com\n>\n> >\n>\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> ( see attached file : zhan _ ren . doc )\n>\n> >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.659+0000", "entityId": 10042, "properties": {"text": "Subject: summer internship at enron\njana :\nvince kaminski is interested in taking kyriakos frantzeskakis into his group\nas a summer associate . once you have finalized your staffing , please confirm\nwith vince kaminski the placement status .\nthanks ,\nceleste\n- - - - - - - - - - - - - - - - - - - - - - forwarded by celeste roberts / hou / ect on 03 / 12 / 2001\n11 : 14 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 12 / 2001 11 : 08 am\nto : celeste roberts / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kevin kindall / corp / enron @ enron , shirley\ncrenshaw / hou / ect @ ect , kristin gandy / na / enron @ enron\nsubject : summer internship at enron\nceleste ,\nwe shall be happy to take him as an intern ( summer asociate ) .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 12 / 2001\n11 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin kindall @ enron\n03 / 12 / 2001 09 : 27 am\nto : vince j kaminski / hou / ect @ ect\ncc : vasant shanbhogue / hou / ect @ ect\nsubject : summer internship at enron\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin kindall / corp / enron on 03 / 12 / 2001\n09 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkf 2 @ andrew . cmu . edu on 03 / 12 / 2001 09 : 15 : 09 am\nplease respond to\nto :\ncc :\nsubject : summer internship at enron\ndear kevin ,\nfollowing my interviews at gsia on february 15 / 16 , i will join enron as a\nsummer associate this may . i would be very excited to join the research\nteam , if possible .\nthank you in advance ,\nkyriakos frantzeskakis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.663+0000", "entityId": 10043, "properties": {"text": "Subject: re : possible rtp conference\ni look forward to seeing you at 10 am on thursday march 15 . my office is\n408 terman center . you can find a searchable campus map under \" contact\ninformation \" on our homepage ( address below ) .\nat 05 : 24 pm 3 / 12 / 01 - 0600 , you wrote :\n> dear professor huntington ,\n>\n> thursday 10 a . m . works for me .\n> please , let me know where i can meet you .\n>\n> i am attaching my itinerary , so that you can contact me\n> if necessary\n> .\n> my cell phone number is 713 410 5396 .\n>\n> vince kaminski\n> ( see attached file : vk - sf - stanford - 3 - 14 - 01 . doc )\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.668+0000", "entityId": 10044, "properties": {"text": "Subject: re : possible rtp conference\ndear professor huntington ,\nthursday 10 a . m . works for me .\nplease , let me know where i can meet you .\ni am attaching my itinerary , so that you can contact me\nif necessary\n.\nmy cell phone number is 713 410 5396 .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.673+0000", "entityId": 10045, "properties": {"text": "Subject: re : wednesday\nvince , thanks for letting me know . i will see you on wednesday .\nregards ,\ngiuseppe\non mon , 12 mar 2001 vince . j . kaminski @ enron . com wrote :\n> giuseppe\n>\n> the dinner is scheduled , as i have mentioned , to you at 7 : 00 p . m .\n> wednesday at il fornaio , canaletto room .\n>\n> both you and eric are welcome to join us .\n>\n> vince\n>\n>\ngiuseppe a paleologo\n: : gappy @ stanford . edu : :\n: : http : / / www . gappy . org : :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.678+0000", "entityId": 10046, "properties": {"text": "Subject: karolyi dinner tonight\ni ' m writing to confirm our dinner plans with andrew karolyi for this evening .\nwe have reservations for 7 pm at damian ' s , 3011 smith st . , 713 . 522 . 0439\ndave\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.684+0000", "entityId": 10047, "properties": {"text": "Subject: sevile\nnorma ,\ni would like to proceed on two fronts with sevile ( both hl visa and\nthe green card . i shall rather work hard to keep my employees happy\nhere than try to attach them to the job through immigration arrangements .\nthey can see through such arrangements and it de - motivates them .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.689+0000", "entityId": 10048, "properties": {"text": "Subject: help on dpc lng options\njeff ,\ni fully support sandeep ' s request to move anshuman srivastav to houston .\ni anticipate that we shall be working on dhabol related issues for the next\ntwo years\nuntil all the business problems are successfully resolved .\nanshuman is a very capable employee , with the right combination of skills to\nattack the dhabol modeling challenge . he understands the indian markets as\nwell\nas international fuel markets . he has also a very good grasp\nof power industry fundamentals and of the technology used at the dhabol power\nplant .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 12 / 2001\n04 : 54 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsandeep kohli @ enron _ development\n03 / 12 / 2001 12 : 40 pm\nto : vince j kaminski @ ect\ncc :\nsubject : help on dpc lng options\nvince ,\nthis is a follow - up of our meeting with jeff shankman on friday , as well as\nour discussions with the global assets group on dpc issues .\nas you see , there is a need for developing a comprehensive fuel strategy for\ndpc that encompasses both the lng phase , and the naphtha side . furthermore ,\nany fuel strategy we develop will have to be in consonance with the power\nside of the business . there is a lot of analytical work that will be\nrequired in this context over the next several months , and we will need a\nperson who understands both the power and the fuel side of the business at\ndpc .\ni believe anshuman is just such a person . he has worked closely with me over\nthe last 2 yrs . , and has been trained in the derivatives side of the business\n( he has attended all three levels of derivatives classes offered at enron ) .\nover the last month , his presence in houston has greatly helped me in melding\nthe henwood study with the picture on the lng / fuel side . i believe his\npresence in houston will be critical to us developing a comprehensive\nfuel / lng strategy for dabhol , together with the global markets and asset\ngroups .\ni am therefore requesting you to explore the possibility of anshuman being\nmoved on a more permanent basis to houston . as you are aware , anshuman\nhimself would welcome such an arrangement .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.694+0000", "entityId": 10049, "properties": {"text": "Subject: re : green card\nnorma : you are correct in that sevil and i have spoken about her green card ,\nand before we can proceed with this , we need to transfer her from the fl visa\nto an hib visa , which we will do later this year .\nsevil : please contact me approx . june or july so that we can start the hib\nprocess .\nthanks\nmargaret\nfrom : norma villarreal / enron @ enronxgate on 03 / 08 / 2001 06 : 31 pm\nto : sevil yaman / corp / enron @ enron , margaret daffin / hou / ect @ ect\ncc : norma villarreal / hou / ect @ enron , vince j kaminski / hou / ect @ ect\nsubject : re : green card\nsevil ,\ni believe you and margret daffin have spoken about the next steps for your\ngreen card . you will need to start working on you hib at the begining of\noctober 2001 .\nif there is any confusion on my part please let me know .\nnorma villarreal\nx 31545\nbelow is dicussion between margret daffin and sevil in an e : mail january 26 ,\n2001 :\n\" sevil : first of all we have to get you an hib visa before we can work on\ngetting you the green card .\nafter you get your opt , contact me sometime in the summer and i will start\nworking on your hib visa which we will obtain in approx . october , 2001 . we\ncannot start the green card process when you are still on an fl visa - you\nhave to be on an hib visa . there is no rush - you will have six years on the\nhib visa - plenty of time in which to get the green card . \"\nthis was in reference to her note to me , as follows :\n\" i think i ' ll have time approximately until the end of 2002 by using cpt and\nopt . this makes almost two years . if we can start green card process now , do\nyou think that i would get it before i need hl . in every case , can ' t we start\ngreen card before i get hl ? because i don ' t want to waste these two years\ngiven the fact that green card process is a long process . \"\n- - - - - original message - - - - -\nfrom : yaman , sevil\nsent : thursday , march 08 , 2001 3 : 59 pm\nto : daffin , margaret\ncc : norma villarreal / hou / ect @ enron\nsubject : green card\ni haven ' t heard back from any of you regarding my immigration status . could\nyou please get back to me with the information about the initialization of my\ngreen card process ? thank you .\nsevil yaman\neb 1943\nx 58083", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.703+0000", "entityId": 10050, "properties": {"text": "Subject: enron earth day \" trash bash \"\ni encourage everybody very strongly to join other enron employees at this\nevent . it ' s a great opportunity\nto contribute to the growth of our city and to make sure that enron is not\nembarrassed if other energy companies show\nup in strength .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 12 / 2001\n11 : 13 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n03 / 07 / 2001 02 : 37 pm\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , sandeep kohli / enron _ development @ enron _ development ,\njoseph hrgovcic / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , zimin\nlu / hou / ect @ ect , martin lin / hou / ect @ ect , maureen raymond / hou / ect @ ect , osman\nsezgen / hou / ees @ ees , paulo issler / hou / ect @ ect , amitava dhar / corp / enron @ enron ,\nalex huang / corp / enron @ enron , kevin kindall / corp / enron @ enron , kevin g\nmoore / hou / ect @ ect , william smith / corp / enron @ enron , jose\nmarquez / corp / enron @ enron , chonawee supatgiat / corp / enron @ enron , shalesh\nganjoo / hou / ect @ ect , tom halliburton / corp / enron @ enron , elena\nchilkina / corp / enron @ enron , sevil yaman / corp / enron @ enron , sofya\ntamarchenko / na / enron @ enron , bob lee / na / enron @ enron , gwyn\nkoepke / na / enron @ enron , hector campos / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , youyi feng / na / enron @ enron , praveen\nmellacheruvu / hou / ees @ ees , stephen bennett / na / enron @ enron , roman\nzadorozhny / hou / ees @ ees , lance cunningham / na / enron @ enron , leann\nwalton / na / enron @ enron , shane green / hou / ees @ ees , seksan\nkiatsupaibul / hou / ees @ ees , kate lucas / hou / ect @ ect , nelson\nneale / na / enron @ enron , rabi de / na / enron @ enron , kenneth\nparkhill / na / enron @ enron , jaesoo lew / na / enron @ enron , jason\nsokolov / hou / ect @ ect , steve bigalow / na / enron @ enron , tom\nbarkley / na / enron @ enron , rakesh bharati / na / enron @ enron , wnarongw @ enron . com ,\niris . mack @ enron . colm\ncc :\nsubject : enron earth day \" trash bash \"\nenron is hosting a special event on saturday , march 31 st . the first annual\nenron \" trash bash \" to clean up the banks of buffalo bayou between shepherd\ndrive and sam houston park .\ni am chairing the check - in team which consists of :\nregistering all of the volunteers\nhanding out enron t - shirts and caps\npassing out gloves and garbage bags\nmaking clean up section assignments\nfor anyone who might be interested in helping me , please call me at ext .\n30329 .\nalso , we need a lot of volunteers to walk along buffalo bayou and pick up\ntrash . this would be a great family project , a good project for your childs\nyouth group or boy scout or girl scout troop . it will also be fun . they\nwill have live bands , lyou get an enron t - shirt and enron baseball cap , lunch\nwill be served at sam houston park and there are a lot of good door prizes .\nif you want to volunteer for the \" trash bash \" clean up , just show up at sam\nhouston park on saturday , march 31 , 2001 , at 8 am to register . clean up\nstarts at 9 am and lunch will be served at 11 : 00 am and after lunch door\nprizes will be drawn and then you can go home feeling like you have done your\npart for houston ' s waterway environment .\ni hope you will think about it and bring your friends , family , ect . and help\nenron clean up the environment .\nthanks , anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.710+0000", "entityId": 10051, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the request you have placed using it\ncentral .\nrequest number : ecth - 4 usr 8 v\norder for : anita dupont\n1 x ( standard desktop $ 905 ) enron it purchasing\n* please send all status inquiries regarding this request to :\nmailto : receiving & hardware @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.715+0000", "entityId": 10052, "properties": {"text": "Subject: eprm article\nhi vince ,\n?\nas always , it was good to see you again in houston - we all enjoyed the meal\nvery much , the restaurant was a good choice .\n?\nit ' s that time again i ' m afraid . can you pls cast your eye over the\nattached ? and , if at all possible , get back to me in the next few days - i\nhave to deliver something to london by friday .\n?\nhow ' s the course going at rice ? not too much work i hope .\n?\nbest regards .\n?\nchris .\n?\n- eprm _ 09 _ fwd _ vol _ estimation . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.720+0000", "entityId": 10053, "properties": {"text": "Subject: siam invitation\ndear dr . kaminski\nhere is an email invitation for teh siam event . a hard copy will follow\ndr . v . kaminski\nenron\np . o . box 1188\nhouston , texas 77251 - 1188\ndear dr . kaminski\nmarch 12 , 2001\ni am writing to formalize your invitation to attend , participate , and speak\nin the siam southwest regional mathematics in industry workshop . a time\nspan of thirty minutes is being allotted to invited talks with an additional\nten minutes or so for discussion . the workshop , funded under the auspices\nof a national science foundation grant to siam will not be a standard\napplied mathematics event with representatives from industry , academe , and\ngovernmental agencies presenting their latest research results . instead the\nmeeting will emphasize the mathematics and technology currently applied to\nthe projects of industry and governmental laboratories . additionally the\nevent will focus upon the mechanisms facilitating interaction and\ncollaboration between the academy , industry , and government laboratories .\nthe workshop will be held at the university of houston hilton hotel , april\n27 - 28 . funds will be available to support both travel expenses and the cost\nof food and lodging of invited speakers . we will be happy to make travel\narrangements on this end if so desired .\nwe hope that you can accept our invitation . if this is the case please\nfurnish us with a title , a short abstract , and a list of the necessary\nequipment for your presentation .\nwe look forward to seeing you at the university of houston .\nsincerely\nw . fitzgibbon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.725+0000", "entityId": 10054, "properties": {"text": "Subject: risk management meeting at georgia tech\nyou are welcome to attend the following meeting in the area of quantitative\nand computational finance and risk management in the mrc auditorium on\nthe georgia tech campus from 1 pm to 6 pm on friday , march 30 th .\nthere will be five speakers that will give presentations on a variety of\ntopics .\ndr . curt hunter , research director , federal reserve bank of chicago\ndr . mary mathewes kassis , associate director ,\ngeorgia state university economic forecasting center\ndr . alan white , professor of finance , university of toronto , and\nmr . pete van amson , cfa , cpa , vice president , product management ,\nsungard trading and risk systems\ndr . dennis wong , vice president , quantitative finance ,\nbank of america securities\nthere is no charge for the event .\nthis will be the inaugural meeting of the atlanta chapter of the global\nassociation of risk professionals ( garp ) . you need not be a member of garp\nto attend the meeting . information about garp can be found at\nhttp : / / www . garp . com .\nwe are asking that attendees rsvp so that plans can be made for refreshments .\nwe only ask that you reply to this email or to atlanta @ garp . com before\nmarch 21 if you plan to attend . in addition to a break half - way through the\nafternoon , there will be refreshments immediately following the presentations .\nthis event is sponsored by the master of science in quantitative and\ncomputational finance program at georgia tech , sungard trading and risk\nsystems , and\nsuntrust banks , inc .\nplease pass along this announcement to your associates .\ninformation about the talks and the speakers\ndr . curt hunter\nresearch director , federal reserve bank of chicago\ndr . hunter ' s discussion is entitled \" lessons learned from recent global\nfinancial crises . \" since 1990 , major banking and currency crises have\noccurred in many countries around the world - including mexico and latin\namerica in 1994 , east asia in 1997 - 98 , and russia and brazil in 1998 ,\namong others - with large costs both to the individual countries\nexperiencing the crises and to other nations . as a result , considerable\neffort has been expended by economists and policymakers to identify the\ncauses of these crises and to design programs with the aim of preventing ,\nif possible , similar crises from occurring in the future , and minimizing\nthe costs when they do occur . this talk reviews the key lessons\npolicymakers have learned from these recent episodes and highlights the\nrole that risk management plays in crisis prevention .\ndr . william c . ( curt ) hunter is senior vice president and director of\nresearch at the federal reserve bank of chicago . he is a member of the\nbank ' s management committee and serves as the bank ' s chief economist .\nhe is responsible for a staff of 115 professionals and oversees the\nbank ' s research activities in the areas of monetary policy , banking\nand financial markets , and regional economics programs . he is also\nresponsible for the bank ' s statistical and financial reports function .\ndr . hunter is an associate economist on the federal open market committee ,\nthe federal reserve system ' s primary monetary policy group .\npreviously , he was a vice president at the federal reserve bank of\natlanta and has served on the faculties of the university of georgia ,\nemory university , chicago state university , and northwestern university .\nhe has consulted with numerous foreign central banks , official agencies ,\nand private corporations and serves on the boards of several research\nand nonprofit organizations . he is co - editor of research in banking\nand finance and serves on the editorial boards of several academic\njournals . dr . hunter earned a b . s . degree in 1970 from hampton\ninstitute ( now hampton university ) , an mba in finance in 1972 and a ph . d .\nin finance and environment in 1978 from northwestern university .\ndr . mary mathewes kassis\nassociate director , georgia state university economic forecasting center\ndr . kassis will provide her outlook for the georgia and atlanta economies\nover the next two years . she will focus on economic risks specific to\natlanta , including its exposure to the contraction of the it sector ,\npotential over development of office space , and a declining rate of job\ngrowth . regardless of your field , this should be a very informative\ndiscussion .\ndr . kassis has been analyzing the southeast economy for over five years .\nshe writes a quarterly report that examines the current economic\nconditions in 13 southeastern states as well as an outlook for the next\ncouple of years . she also prepares an in - depth quarterly analysis of the\noutlook for the georgia and atlanta economies . she is regularly quoted\nin publications such as the wall street journal , the atlanta journal -\nconstitution , and the atlanta business chronicle . dr . kassis received\na b . a . in economics and political science from agnes scott college and\na ph . d . in economics from georgia state university .\ndr . alan white\nprofessor of finance , university of toronto\nmr . pete van amson , cfa , cpa\nvice president , product management , sungard trading and risk systems\ndr . alan white and mr . peter van amson will discuss applied term\nstructure modeling . sungard has implemented a version of the hull - white\nterm structure model that banks use in measuring and managing the market\nvalue sensitivity of various balance sheet components . peter will touch\non some of the complexities involved in modeling non - maturity deposits ;\nwith regard to the term structure of interest rates , alan will discuss\nsome of the problems and possible solutions in bridging the divide between\nwhat is required from a theoretical standpoint and what is feasible\nin a production process .\ndr . alan white is a professor of finance in the joseph l . rotman school\nof management at the university of toronto . his research is principally\nin the area of derivative securities , their pricing and their use by\nfinancial institutions for risk management . he is most noted for his\nwork on modeling the term structure of interest rates in a way that\nis consistent with observed market data . recently his research has been\nfocused on the pricing and management of credit risk . professor white\nhas published many scholarly articles , but is perhaps best recognized\nfor providing lucid insights into the practical application and\nimplementation of this research . much of his material is included in\nthe best - selling book hull - white on derivatives , co - authored with\njohn hull .\nmr . peter van amson is the vice president of product management at\nsungard trading and risk systems where he is responsible for the\ndevelopment of all functional specifications for the bancware product\nsuite . in this capacity , he frequently interacts with sungard\nuser - committees , leading academics , and other leading industry\npractitioners . he frequently makes presentations at conferences and\nseminars sponsored by bai , amifs , the occ , as well as other organizations .\nprior to working with bancware , peter headed the strategic planning\nfunction for the plymouth rock company , one of america ' s most profitable\ninsurance holding companies . in this role , he helped define the\ncompany ' s strategic vision as well as being involved in investment\nanalysis , asset / liability management and quantitative profitability\naanalysis . peter has a b . s . and m . s . in accounting from the state\nuniversity of new york at binghamton . he is currently a ph . d . candidate\nat the university of michigan . peter has received numerous academic awards\nand honors including the william andrew paton fellowship at the\nuniversity of michigan and the new york state society of certified\npublic accountants award for academic excellence .\ndr . dennis wong\nvice president , quantitative finance , bank of america securities\ndr . wong will discuss competing vendor approaches to credit risk\nmodeling , including creditmetrics , kmv , creditrisk + and creditportfolio\nview . these models are viewed in a theoretical framework that\nidentifies migration probabilities , credit exposure and loss\naggregation .\ndr . wong has a ph . d . in mathematical finance from carnegie mellon\nuniversity . he has given talks and seminars for the american\nmathematical society , the society for industrial and applied mathematics ,\nthe university of toronto , and georgia tech . he is the author of\n\" generalized optimal stopping and financial markets \" , published in\npitman research notes in mathematics series .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.731+0000", "entityId": 10055, "properties": {"text": "Subject: lng by rail\nvince ,\ni was thinking about the type of things you could be talking to jeff shankman\nabout , in the dabhol lng context . it occurred to me that one way to collect\non regas charges , and still find alternate cutomers for gas is through the\nrailways .\nsome time back , i had looked into the possiblility of transporting lng by\ntrain . apparently , technology exists wherein lng can be put into cryogenic\ncontainers that can be trucked as well as the same containers being loaded\nfrom trucks to train bogies . i believe this maybe a way to earn some monies\nwith lng by developing just such a market in india for commercial customers .\nit is pertinent to note that the konkan rail line is just about 1 hr . 45\nminutes from the dabhol plant . trucks from dabhol could carry lng to the\nrail line at guhagar from where it could travel up and down the west coast of\nindia . if we target end - consumers directly , we could easily sell at retail\ntype prices , and build in a large margin , even if the volumes disposed are\nrelatively smaller . ( the alternative fuel for most of these establishments\nis diesel or naphtha which is highly priced , and mostly trucked along\nroads , increasing costs ) . the end aim is to keep income targets in india , so\nthat the analysts do not have a field day with the stock .\nhence keeping activity up in india , and showing that solutions exist , will\nkeep stock price buoyed . we could explore this idea if it appeals !\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.735+0000", "entityId": 10056, "properties": {"text": "Subject: henwood & psim\nstinson / vince ,\nthe henwood runs for dabhol are , at least temporarily , over . however , the\nmain modeller for henwood ( david yumigada ) works out of their california\noffice .\nit maybe worth our while to have him come and demonstrate the runs , and\nexplain the modelling algorithm to the larger group .\nin aparticular , now that i am going through some of the comments people have\nraised on the psim model , i think there is value in understanding the way\nhenwood deals with hot and cold starts , ramp up costs , and with issues of\ncycling plants .\ni think understanding these will help in developing the next version of the\npsim , and will also give the group here ideas to build into existing models .\nthis is a suggestion , and so please let me know if you see value in this .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.740+0000", "entityId": 10057, "properties": {"text": "Subject: enron credit modeling\nwhen we laast spoke , we agreed that you would look to support some of our\ndevelopment efforts from houston . if possible , i would like to have a quick\nconference call this week to figure out where we are and move forward .\nthanks", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.747+0000", "entityId": 10058, "properties": {"text": "Subject: re : resume\nvince ,\ncould you give him ( bill ) a call at 1 or 2 on friday cst ? his cell\nphone is 918 - 625 - 6683 .\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : monday , march 12 , 2001 6 : 36 pm\n> to : marshall . brown @ robertwalters . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : resume\n>\n>\n> marshall ,\n>\n> i am catching up with my mail . we would like to talk to this candidate as\n> well\n> ( phone interview ) .\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 02 / 21 / 2001 12 : 36 : 39\n> pm\n>\n> to : vince kaminski\n> cc :\n> subject : resume\n>\n>\n> vince ,\n> this candidate would be interested in speaking with you .\n> regards ,\n>\n> marshall brown\n> vice president\n> robert walters associates\n> tel : ( 212 ) 704 - 0596\n> fax : ( 212 ) 704 - 4312\n> mailto : marshall . brown @ robertwalters . com\n> http : / / www . robertwalters . com\n>\n>\n> >\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> ( see attached file : kour _ vas . doc )\n>\n> >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.752+0000", "entityId": 10059, "properties": {"text": "Subject: fw : mark boland - deal examples and accomplishments\nhere ' s the list of deals and accomplishments for mark . . .\nmolly\n- - - - - original message - - - - -\nfrom : vasut , tony\nsent : tuesday , march 13 , 2001 9 : 59 am\nto : magee , molly\nsubject : fw : mark boland - deal examples and accomplishments\n- - - - - original message - - - - -\nfrom : port , david\nsent : monday , march 12 , 2001 10 : 47 am\nto : vasut , tony\nsubject : fw : mark boland - deal examples and accomplishments\n- - - - - original message - - - - -\nfrom : mark . boland @ seb . se @ enron\nsent : monday , march 12 , 2001 8 : 05 am\nto : port , david\nsubject : fw : mark boland - deal examples and accomplishments\n> - - - - - original message - - - - -\n> from : boland , mark\n> sent : tuesday , january 23 , 2001 15 : 26\n> to : ' david . port @ enron . com '\n> subject : mark boland\n>\n> david ,\n>\n> i ' ll attach below a short outline which i have recently put together to\n> summarize what i ' ve been up to .\n> also , i ' ve attached a couple of termsheets ( we had very few in english ) to\n> give you a sample of my\n> production . more is available if need be . i ' ve put together around 200\n> various deals in the last 3 years .\n> i believe you already have my resume from mark , but i ' ll be glad to send\n> another copy .\n>\n> i ' ll be tracking you down on the phone in the near future .\n> regards ,\n> mark\n>\n>\n> > >\n>\n> outline :\n> 1 ) structuring\n> a ) provided coordination of all parts and entities in closing\n> structured bond deals . i . e . : coordination of\n> swap . option , bond issuer , back offices , documentation , middle\n> office , sales , traders ( swap desk and\n> multiple counterparties ) , research , credit limits , legal , etc .\n> b ) did all of the above in a ) in a profitable and successful manner ,\n> while evolving the product\n> and processes at seb . this was accomplished both individually and as\n> part of a team .\n> 2 ) idea generation\n> a ) constantly provided group with new ideas to consider , every week .\n> provided written\n> and / or verbal explanation and additional information and coaching\n> b ) have brought forth new ideas which we have used and made profits\n> from\n> 3 ) option trading\n> a ) represent my department and seb to world ' s leading investment\n> banks and derivatives\n> traders on some of the most complex financial transactions carried\n> out in today ' s market\n> b ) successfully trade the product while maintaining huge profits ,\n> and not making errors\n> which cost the bank money\n> c ) providing clients with a superior investment product\n> d ) creating enormous profits from arbitrage trading on my own\n> abilities ,\n> 4 ) systems\n> a ) constructed valuation model for use by back , middle office , and\n> risk control , and ultimately\n> clients receive the results of this , received positive feedback from\n> users\n> b ) part of team to negotiate and choose new equity derivatives\n> systems\n> 5 ) training other members of the structured department\n> a ) product knowledge\n> b ) market knowledge\n> c ) system use\n> d ) all aspects of structuring to stockholm and international sales\n> team\n> e ) have successfully played role of \" information booth \" and \" course\n> instructor \" for\n> members of the department and bank wide\n>\n>\n>\n> mark m . boland\n> seb merchant banking\n> 10640 stockholm , sweden\n>\n> telephone + 46 8 5062 3224\n> cell + 46 70 772 3224\n>\n> this e - mail is from seb , skandinaviska enskilda banken . it may contain\n> privileged and confidential information and is intended for the named\n> recipient ( s ) only . if you are not an intended recipient , please notify us\n> immediately by reply e - mail , delete this e - mail from your system and\n> destroy any copy hereof .\n>\n- broschyr 204 engelska ny . pdf\n- broschyr p + engelska . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.756+0000", "entityId": 10060, "properties": {"text": "Subject: fw : mark boland - cv\nvince : tony vasut , another recruiter , is bringing mark boland in for a\nseries of interviews on 3 / 20 and 3 / 21 , and asked if there was any chance that\nyou or someone in your group would be able to interview him . his resume is\nattached , and i will also send you a list of his deals under separate\ncover . shirley has told me that you will be in and out for the next\nseveral weeks , so if you are unavailable would you please suggest someone\nelse in your group who might be able to interview mark ?\nthanks , as always ,\nmolly\n- - - - - original message - - - - -\nfrom : vasut , tony\nsent : tuesday , march 13 , 2001 9 : 59 am\nto : magee , molly\nsubject : fw : mark boland - cv\nmolly :\nhere is mark ' s resume as discussed . please let me know if anyone in research\n( preferably vince ) is available to meet w / him on either 3 / 20 or 3 / 21 .\nthanks ,\ntony\n- - - - - original message - - - - -\nfrom : port , david\nsent : monday , march 12 , 2001 10 : 46 am\nto : vasut , tony\nsubject : fw : mark boland - cv\n- - - - - original message - - - - -\nfrom : mark . boland @ seb . se @ enron\nsent : monday , march 12 , 2001 8 : 10 am\nto : port , david\nsubject : mark boland - cv\n> to summarize my situation : i ' m in charge of structuring equity linked , ir ,\n> fx , commodity and other\n> linked bonds and investments for one of northern europe s leading banks .\n> i ' m 34 years old and married to lisa who is swedish . i have over 7 years\n> in the structured derivatives business in capital\n> markets , with a solid wall street foundation at bankers trust and overseas\n> at a more senior level\n> of sales , structuring and managing deals from conception to completion .\n>\n> >\n>\n> thanks and regards ,\n> mark\n>\n> mark m . boland\n> seb merchant banking\n> 10640 stockholm , sweden\n>\n> telephone + 46 8 5062 3224\n> cell + 46 70 772 3224\n>\n> this e - mail is from seb , skandinaviska enskilda banken . it may contain\n> privileged and confidential information and is intended for the named\n> recipient ( s ) only . if you are not an intended recipient , please notify us\n> immediately by reply e - mail , delete this e - mail from your system and\n> destroy any copy hereof .\n>\n- boland . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.761+0000", "entityId": 10061, "properties": {"text": "Subject: the national forum on corporate finance\nhello mr . fastow ,\nsheridan titman from ut - austin and i are both delighted you will be able to\nparticipate in the conference we are organizing here at rice . attached is\na revised overview of the organization - the second page contains an\nup - to - date list of the firms involved .\nalso , i ' m attaching a draft of the actual program . after each\npresentation , i have a panel of three or four people who will can respond\nto some of the points or issues raised in each discussion . these remarks\nwill be very informal and ad hoc and thus should require no preparation on\nyour part . reaction to this format has been good and i think it will be a\ngreat way to stimulate discussion / debate .\ni have you penciled in to serve on one such panel on saturday morning , may\n5 . the topic deals with handing the dilution arising from executive stock\noptions and involves the top academic expert on executive stock options ,\ndavid yermack from nyu .\nlet me know if you have any concerns about this or if a conflict\narises . also , i will be e - mailing some registration materials to you in\nthe next week .\ni look forward to seeing you soon .\ndave ikenberry .\nat 11 : 20 am 2 / 26 / 2001 - 0600 , vince . j . kaminski @ enron . com wrote :\n> andy ,\n>\n> thanks . i shall forward your message to\n> prof . ikenberry .\n>\n> vince\n>\n>\n>\n>\n>\n> from : andrew s fastow / enron @ enronxgate on 02 / 22 / 2001 01 : 45 pm\n>\n> to : vince j kaminski / hou / ect @ ect\n> cc :\n> subject : re : the national forum on corporate finance\n>\n> vince :\n>\n> i would be interested in participating . thanks .\n>\n> andy\n>\n> - - - - - original message - - - - -\n> from : kaminski , vince\n> sent : monday , february 05 , 2001 10 : 23 am\n> to : andrew s fastow / hou / ect @ enron\n> cc : kaminski , vince\n> subject : the national forum on corporate finance\n>\n> andy ,\n>\n> i am sending you a draft oof a proposal regarding national forum for top\n> finance practitioners and\n> academics . the idea came from a professor at rice university who\n> has already received a commitment from a number\n> of most distinguished cfos .\n>\n> please , read the outline and see if you would be interested in joining\n> this forum .\n> i shall be glad to help to arrange a meeting with prof . ikenberry .\n>\n> vince\n>\n>\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on\n> 02 / 05 / 2001 10 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n> ( embedded image moved to file : pic 26299 . pcx )\n> david ikenberry on 02 / 02 / 2001 06 : 10 : 02 pm\n>\n> to : \" vkamins @ ennron . com \"\n> cc :\n> subject :\n>\n>\n> it was great talking with you .\n>\n> dave\n> - brochure . doc >\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> prof . david ikenberry\n> jones graduate school of management\n> rice university\n> 713 - 348 - 5385\n>\n>\n>\n>\n>\n- brochure . doc\n- may 4 - 5 program _ nfcf . doc\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.766+0000", "entityId": 10062, "properties": {"text": "Subject: hi vince ,\nas always , i enjoyed having dinner with you . its always interesting .\nper your recommendation from last night , you should have received a note i\njust sent to andy fastow .\nif you can fit it into you schedule , sheridan and i would appreciate having\nyou attend the conference , the conference dinner and reception . also , if\nyou would like to participate on saturday only , that is a possibility as\nwell . whatever might work with you .\nregards ,\ndave\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.771+0000", "entityId": 10063, "properties": {"text": "Subject: @ jones : news and information from the jones school\n@ jones : news and information from the jones school\nmarch 13 , 2001\nforbes magazine survey\nalumni association reception - - new york : march 15\nconference - - perspectives on women in business : march 16\nsouthwest business plan competition - - march 30 - 31\nrice alliance business presentation forum - - march 30\ncancelled - - neuhaus lecture : march 19\ndean ' s lecture - - ralph eads , executive vice president , el paso corp . : april\n11\nblack leadership conference : april 27\nprof . stephen zeff publishes new book on henry rand hatfield , accounting\nhistorian\nrice alliance continues expansion of network , enhances services\njones school campaign\nvisit construction site\n- - - - - - - - - - - - - - - - - - - - - - -\nannouncement\n- - - - - - - - - - - - - - - - - - - - - - -\nif those of you in the class of 1996 haven ' t received the forbes magazine\nsurvey , please do fill it out when it comes . forbes is looking at return on\ninvestment . your names and addresses will not be used for any other purpose\nbeyond this one - page questionnaire and your responses will remain\nconfidential . as you know , rankings are influenced by the percentage of the\nclass which returns the survey . this is true for all rankings . we greatly\nappreciate your taking your time to do this and thank you for supporting the\njones school .\n- - - - - - - - - - - - - - - - - - - - - - -\nnews\n- - - - - - - - - - - - - - - - - - - - - - -\nthe jones graduate school alumni association will host a dean ' s reception on\nthursday , march 15 , in new york city . you and your guest are invited to join\ngil whitaker , dean and professor of business economics , for cocktails and\nhors d \u0001 , oeuvres from 6 to 8 p . m . on march 15 at the 50 th floor , j . p . morgan\nchase & co . building , 270 park avenue , new york , ny . please rsvp to deanna\nsheaffer , director of finance and alumni affairs , at sheaffer @ rice . edu or\n713 - 348 - 6222 .\nmanagers and business owners will address issues related to women in\nleadership in the march 16 conference \" grace under pressure : perspectives on\nwomen in leadership \" in herring hall . the conference , sponsored by enron\ncorp . , j . p . morgan chase monika drake , assistant director of career planning , jones\nschool ; marla hutchison , principal , deloitte consulting ; christie patrick ,\nvice president , public affairs , enron corp . ; and bette wickline , director ,\nwomen \u0001 , s business initiative , j . p . morgan chase & co .\nthe march 19 neuhaus lecture featuring c . k . prahalad , harvey c . fruehauf\nprofessor of business administration , university of michigan graduate school\nof business administration , ann arbor , has been cancelled . it will be\nrescheduled at a later date .\nthe jones school and the rice alliance will welcome aspiring entrepreneurs\nat the first southwest business plan competition , scheduled for march 30 - 31 ,\nat herring hall . nine teams from schools in the southwest region of the u . s .\nwill compete for the opportunity to enter the international moot corpc\ncompetition held each year at the university of texas , austin .\nhttp : / / www . alliance . rice . edu / swbpc /\nthe rice alliance hosts the second annual business plan presentation forum\nfrom 9 a . m . to 1 : 30 p . m . on saturday , march 31 , duncan hall . the forum is\nintended to provide presenters with candid and constructive coaching on the\ncomponents of their business plans .\nralph eads , group executive vice president of merchant energy and production\nfor el paso corp . , will speak at the dean ' s lecture series scheduled for\n9 : 45 a . m . on wednesday , april 11 at 124 herring hall .\nhttp : / / jonesgsm . rice . edu / news / calendar / index . cfm ? eventrecord = 1735 author and\nfinancial advisor brooke stevens ; shell oil company chairman steve miller ;\nformer u . s . secretary of energy hazel o ' leary ; and federal reserve board\nmember samuel golden . http : / / jonesgsm . rice . edu / content / content . cfm ? pageid = 60\nstephen zeff , the herbert s . autrey professor of accounting and professor of\nmanagerial studies , was profiled in the march 1 edition of rice news for the\nsuccessful release of his book on accounting historian henry rand hatfield ,\nthe first first full - time accounting professor in a u . s . university .\nin its 2001 rankings of the top full - time mba programs in the world , the\nfinancial times ranked the jones school among the ten best in four\ncategories : value for money ; employed at three months ; finance ;\nentrepreneurship . overall , the jones was ranked 35 th of 51 u . s . schools and\n54 th among the world ' s best 100 graduate business schools .\nthe rice alliance for technology and entrepreneurship enters its second year\ndetermined to enhance services that have promoted the entrepreneurial spirit\nin the rice community and in houston . the alliance brings together students ,\nfaculty , alumni and other rice - associated parties as collaborators , mentors\nand investors in engineering , science , software , or e - commerce innovations .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nonline :\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvisit the construction web cam url for up - to - the - minute live feeds of the\nnew jones school building construction .\nlearn about new and upcoming initiatives and programs at the school , and\nview artist renderings of the new $ 60 million building , currently under\nconstruction . http : / / jonesgsm . rice . edu / campaign / campaign . html\n@ jones : news and information from the jones school , the jones school\ne - newsletter , is published monthly by the public relations department of the\njesse h . jones graduate school of management . the jones school website\nhttp : / / jonesgsm . rice . edu is updated frequently and we\nencourage you to visit the site regularly to get the latest news and\ninformation about new initiatives and programs at the jones school . to\nsubmit items to be posted on the jones school website , please e - mail\njgsmnews @ rice . edu or call 713 - 348 - 6364 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.775+0000", "entityId": 10064, "properties": {"text": "Subject: course invoice\nvince ,\n?\nhi , hope you are well .\n?\ni ' m just dropping a note regarding invoice 215 which was for 5 people\nattending the energy and weather course . ? our records show that it hasn ' t\nbeen paid , which is good . ? we will re - do the invoice and charge you only for\nalex and tom ' s attendance since paulo didn ' t show . ? is this ok with you ? ? by\nthe way , we only charged $ 250 a person for the weather course since it was\nsuppose to be an exchange of information session , and enron weather paid for\nthe venue .\n?\nnice to have finally met you in houston !\n?\njulie\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.780+0000", "entityId": 10065, "properties": {"text": "Subject: worth a careful reading\nbest regards ,\njhherbert\n- gdol 0314 abr . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.785+0000", "entityId": 10066, "properties": {"text": "Subject: complexity science and the energy industry brown bag\n>\nplease join nesa / hea at the \" complexity science and the energy industry\nbrown bag \" ~ april 18 th , 2001\nif you have any questions , please call lana moore at ( 713 ) 856 - 6525 .\nthanks and have a great day ! !\n- e - business . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.791+0000", "entityId": 10067, "properties": {"text": "Subject: research tip\nhello vince :\nmy name is fati liamidi . i work as an associate in the urm group in ees .\ni have come up with an value proposition which i think could make sense for\nmy group and wanted to run it by one of your colleagues to see if they could\nhelp me out in terms of pricing .\nwould you mind directing me toward somebody in your group who would be\nwilling to talk to me ? the idea involves options .\nthanks you very much in advance .\nfati liamidi\n3 - 4563", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.800+0000", "entityId": 10068, "properties": {"text": "Subject: summer internship\ndr . kaminski ,\nsorry for the late response ,\nit took me some time to coordinate things .\nfinally , it ' s almost dont : - )\nit turned out that from june to august\nwill be best for me for work at enron\n( say june . 4 to august . 4 )\nbut i still need to know several things from your side .\ncould you answer following questions ?\nfirst :\nis my suggested working period is ok with you ?\nif so , let me know what to do for settlement\nduring the period .\nsecond :\ni got a list of work , i might be able to do for\ndealbench team from ross and suresh .\ni ' d like to know it is still a valid work list :\nthe list he sent is as following :\n> 1 . write a paper in layman ' s terms that answers\n> questions like the following :\n> benefits of auctioning online for both buyers and\n> sellers , particularly in reverse auctions\n> explanation how multi - variable auctions are not\n> as efficient as price - only auctions ( is this true ? )\n> how many participants are recommended for a\n> successful live auction\n> what types of goods and services are best suited\n> for live auctions versus sealed bid quotes\n> opinions on lotting strategies\n> trends in online private auctions\n> 2 . identify appropriate recent auction research ( 3\n> or 4 papers out of the 90 + you provided ) and obtain approvals from the\n> authors to post on our site\n> 3 . create a list / bibiliography of relevant auction\n> literature ( with hyperlinks ? )\n> 4 . would you be willing to offer auction consulting\n> services to our customers ( if they are interested )\nthird :\nthere is an e - procurement forum at haas school of business ,\nin may 22 . the chair of the forum is my advisor prof . arie segev .\na person from wells fargo bank will talk about wells fargo ' s role\nin e - marketplace payment initiative ,\nwhere enron broadband services is also one of key players\nalong with citibank .\nhe asked me whether you can contact a person at\nenron broadband services , who ' s related to the initiative .\nhe wants to know whether we will have a speaker from enron\nto see enron ' s perspective , in the forum .\nhere is a link to news related to the initiative ,\nfourth :\nmy advisor wants to know whether\nthere could be any opportunity to do a case study ,\nregarding enron ' s business .\nhe is interested in e - procurement and e - marketplaces .\nbusiness model and system architecture . . .\nthanks for reading this long email .\ni ' ll look forward to your answer . .\ni am sorry for giving you so much burden\nto answer those questions possibly not easy to answer .\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non mon , 5 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> this is fine though you are welcome to spend more\n> time with us this summer .\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 03 / 04 / 2001 03 : 45 : 40 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : summer internship\n>\n>\n> dr . kaminski ,\n>\n> thanks for your answer .\n> before i tell you the time frame ,\n> i ' ll need to talk with my advisor , first .\n> because here is an on - going - project .\n> i need to coordinate the schedule .\n>\n> i ' ll appreciate it if you understand my situation ,\n> and give me some time ( less than a week , of course ) .\n>\n> for your reference ,\n> probably\n> the dates i ' d like to ask you will be\n> from mid - may to mid - july ( 2 months )\n>\n> warm regards ,\n> jinbaek\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> jinbaek kim\n> ph . d candidate\n> dept . of industrial engineering and operations research\n> u . c . berkeley\n> http : / / www . ieor . berkeley . edu / ~ jinbaek\n>\n> go bears !\n>\n> : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> : a a : _ _ . . . . . _\n> : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> : . ' : ` . : ` , ` .\n> ` . : ' - - ' - - ' : . ' ; ;\n> : ` . _ ` - ' _ . ' ; . '\n> ` . ' \" ' ;\n> ` . ' ;\n> ` . ` : ` ;\n> . ` . ; ; : ;\n> . ' ` - . ' ; : ; ` .\n> _ _ . ' . ' . ' : ; ` .\n> . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> ` . . . . . . . - ' ` . . . . . . . . '\n>\n>\n> on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> >\n> > jinbaek ,\n> >\n> > you can coordinate the details with me .\n> > let me know what the time frame is for you\n> > and we shall send you an appropriate offer .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > jinbaek kim on 03 / 02 / 2001 04 : 43 : 06 pm\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : summer internship\n> >\n> >\n> > dr . kaminski ,\n> >\n> > thank you very much .\n> > of course , i ' ll be happy to have an opportunity\n> > to work at such a wonderful company .\n> > i was contacting with surech raghavan at deal bench team ,\n> > and was going to express my appreciation to you again\n> > after settling down process with them .\n> >\n> > for the period of working ,\n> > i still need to coordinate with my advisor and\n> > may need to adjust according to that .\n> > but anyway , i ' ll try to coordinate smoothly .\n> >\n> > please let me know whether i should keep contacting\n> > with deal bench team ,\n> > for working period and\n> > for misc . living support such as finding a place , rent a car , etc .\n> >\n> > i appreciate you so much again ,\n> > for arranging such meetings and giving me an opportunity .\n> > all this opportunity will not be available to me ,\n> > without your kind help .\n> >\n> > warm regards ,\n> > jinbaek\n> >\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > jinbaek kim\n> > ph . d candidate\n> > dept . of industrial engineering and operations research\n> > u . c . berkeley\n> > http : / / www . ieor . berkeley . edu / ~ jinbaek\n> >\n> > go bears !\n> >\n> > : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> > : a a : _ _ . . . . . _\n> > : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> > : . ' : ` . : ` , ` .\n> > ` . : ' - - ' - - ' : . ' ; ;\n> > : ` . _ ` - ' _ . ' ; . '\n> > ` . ' \" ' ;\n> > ` . ' ;\n> > ` . ` : ` ;\n> > . ` . ; ; : ;\n> > . ' ` - . ' ; : ; ` .\n> > _ _ . ' . ' . ' : ; ` .\n> > . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> > ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> > ` . . . . . . . - ' ` . . . . . . . . '\n> >\n> >\n> > on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> >\n> > > hello ,\n> > >\n> > > sorry for a delay in getting back to you .\n> > > we would like very much to offer you a summer internship .\n> > >\n> > > please , let me know if you are interested .\n> > >\n> > > vince kaminski\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.808+0000", "entityId": 10069, "properties": {"text": "Subject: re : resume\nvince ,\npaulo and i talked to mr . zhang on the phone . he is currently with\nkock equity trading and formly a quant supporting power trading .\nhis power market experience could be valuable to us .\ni would recommend to bring him for an on - site interview .\nsince we get more demanding power projects , alex needs some help .\nzimin\nvince j kaminski\n03 / 14 / 2001 10 : 06 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : resume\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 14 / 2001\n10 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 03 / 09 / 2001 07 : 46 : 22 am\nto : vince kaminski\ncc :\nsubject : resume\nvince ,\nhow are you . this candidate would be interested in any positions in\nyour group .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party .\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n- zhan _ ren . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.813+0000", "entityId": 10070, "properties": {"text": "Subject: wharton business plan competition\nvince and jeff ,\nwho should we list as a judge ? i could list myself to act as the point of\ncontact and i ' ll also give my comments on the plans , but i think enron ' s\n\" judge \" should be someone in the capacity of evaluating enron ' s early stage\nventures .\nplease let me know as soon as possible .\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 03 / 15 / 2001 07 : 40 am - - - - -\n\" andrew gaffney \"\n03 / 08 / 2001 08 : 47 am\nto :\ncc : \" stamer , anne \"\nsubject : wharton business plan competition\ndear ms . patrick ,\n?\nanne stamer asked me to contact you regarding ? enron providing a judge for\nphase iii of the business plan competition . ? phase iii judges are generally\npartner - level individuals at venture capital firms , ? managing directors from\ninvestment banks , or other senior individuals ? who have extensive experience\nassessing and working with early stage ventures . ? a phase iii judge will\nreceive five business plans , with the entire judging process requiring 4 - 5\nhours during the weeks of april 2 and april 9 . ? i am attaching a document\nthat describes the competition and judging procedures for phase iii in more\ndetail . ? we are looking to finalize the list of phase iii judges by march\n23 , so if you could please forward either anne or i the name of the\nappropriate individual , we can contact them directly with more details . ?\nplease let me know if you have further questions and we appreciate your\nsupport of the competition .\n?\nsincerely ,\n?\nandrew gaffney\n- phase iii judge info 00 - 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.819+0000", "entityId": 10071, "properties": {"text": "Subject: e - commerce seminar 3 / 22\nhi donna !\ni ' ll let you know asap about 3 / 22 . i believe vince will be in london on that\ndate .\nmore immediately , is there a conference call tomorrow ( thursday ) ? if so , is\nthere a call in number established , or does melinda set this up ? ( she ' s out\nthis afternoon ) .\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 03 / 14 / 2001 03 : 46 pm - - - - -\nfap\n03 / 13 / 2001 02 : 09 pm\nto : \" ' christie . patrick @ enron . com ' \"\ncc : fap\nsubject : e - commerce seminar 3 / 22\nchristie :\nprofessor ravi aron , wharton , has been a consultant to the student tiger\nteam for the enron project . at his suggestion and invitation , tiger\nstudents have been invited to attend an e - commerce executive education\nseminar that is directly related to the project on which they are working .\nprofessor aron will be giving the session on pricing mechanisms and b 2 b\nmarket auctions . this will take place at the steinberg conference center on\ncampus on thursday , march 22 from 8 : 30 a - 12 : 30 . we would also like to extend\nan invitation for a representative from enron to attend .\nplease let me know if you or someone who has worked with the student teams\nwill be able to attend the seminar .\nwe look forward to seeing you and vince at the final presentation on april 3\nfrom 4 : 30 - 7 : 30 pm in vance hall b 6 .\nregards ,\ndonna", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.824+0000", "entityId": 10072, "properties": {"text": "Subject: re : a request\ndr . lu ,\ni would be grateful if i could talk with you some time about the typical\nterms one sees in swing , take or pay , virtual storage , etc . options . this\nis related to some research some colleagues and i are doing applying recent\ninnovations in monte carlo valuation of options with early exercise . we\nwould like to illustrate our techniques on some examples which look\nrealistic . when would be convenient for you ?\ni look forward to talking with you .\nduane seppi\n- - on wednesday , march 14 , 2001 , 8 : 44 am - 0600 vince . j . kaminski @ enron . com\nwrote :\n>\n> duane ,\n>\n> i shall be traveling for the rest of the week but my colleague\n> dr . zimin lu will call you to talk about different\n> structures .\n>\n> vince\n>\n>\n>\n>\n>\n> ds 64 @ cyrus . andrew . cmu . edu on 03 / 13 / 2001 09 : 54 : 24 am\n>\n> to : \" vince j kaminski \"\n> cc :\n> subject : re : a request\n>\n>\n> vince ,\n>\n> sorry that i missed your call yesterday . i have a meeting from 2 - 3 today\n> ( tuesday ) , but otherwise any time in the afternoon works for me . let me\n> know what is convenient for you . thanks for your help .\n>\n> duane\n>\n> * * * * * * * *\n> duane seppi\n>\n> graduate school of industrial administration\n> carnegie mellon university\n> pittsburgh pa 15213 - 3890\n>\n> tel . ( 412 ) 268 - 2298\n> fax ( 412 ) 268 - 8896\n>\n> email ds 64 + @ andrew . cmu . edu\n>\n>\n>\n>\n>\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.829+0000", "entityId": 10073, "properties": {"text": "Subject: re : a request\nduane ,\ni shall be traveling for the rest of the week but my colleague\ndr . zimin lu will call you to talk about different\nstructures .\nvince\nds 64 @ cyrus . andrew . cmu . edu on 03 / 13 / 2001 09 : 54 : 24 am\nto : \" vince j kaminski \"\ncc :\nsubject : re : a request\nvince ,\nsorry that i missed your call yesterday . i have a meeting from 2 - 3 today\n( tuesday ) , but otherwise any time in the afternoon works for me . let me\nknow what is convenient for you . thanks for your help .\nduane\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.834+0000", "entityId": 10074, "properties": {"text": "Subject: california update 3 / 16 / 01\n? a source within the generator community confirms press reporting that coram\nenergy plans to file an involuntary bankruptcy early next week . through an\nintermediary , we were able to corroborate this information with a senior\nmember of the ca iso board . coram energy is a relatively small wind\ngenerator qf based in west vancouver , british columbia , though it also owns\nwind stations in california . coram has 238 40 kw units .\n? the source believes that this filing may have been precipitated by the\nfact that many people believe it would take a blackout for governor davis to\nbe able to get his bailout plan passed by the legislature . it is unlikely\nthat blackouts would happen in april or may , meaning a long wait for the\ncash strapped qfs to wait to get paid .\n? the filing will be against socal .\n? in order to file an involuntary bankruptcy , coram would have to file along\nwith at least two other creditors owed $ 10 , 000 or more . sources report coram\nhas two other creditors who will file with them ( working on finding out who\nthey are ) .\n? sources also report that other qfs are \" taking legal advice \" on how to\nproceed in light of these developments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.839+0000", "entityId": 10075, "properties": {"text": "Subject: california update 3 / 15 / 01\nexecutive summary\n? davis might concede to rate hikes for future power consumption but not for\npast utility debt\n? davis and pg & e negotiations at a standstill , sticking point is net short\nfor pg & e this summer\n? as the days go on with no word of a secured deal , involuntary bankruptcy\nchances increase significantly among small generators and qfs\n? ferc would probably approve transmission deal but with several conditions\nfor california\ncalifornia public utility commission rate increases\ntoday may be the turning point as the ca puc reviews the size of the\ndepartment of water resources ( dwr ) rate increase to be passed along to\nconsumers on their electricity bills . until now , davis has considered rate\nhikes to be political suicide , but there may be some relief for him from\nconsumer groups . sources indicate that one of california ' s main consumer\nadvocate leaders may tolerate rate increases for future power consumption ,\nbut remains adamant about not raising rates to cover past utility debt . dwr ,\nwhich is currently buying power on behalf of the state , needs more income to\nsecuritize the planned $ 10 b bond issue that is key part of davis ' plan to\nsign long term power contracts . as dwr continues to spend $ 40 to $ 60 m every\nday on power purchases , a well placed source informed us the dwr is\nessentially bankrupt . it currently has no money for normal activities such\nas ordering supplies , purchasing new equipment , etc . the department of\nfinance is forwarding dwr money from where ever it can ( parks , other\nprograms ) to purchase power , but dwr ' s hands are tied until revenue bonds are\nissued . the california state treasurer phil angelides will be submitting a\nrecommendation on rate increases in order to secure revenue and cover $ 10\nbillion worth of state bonds .\ndavis & pg & e at odds\nsources report that davis and pg & e negotiations are facing two difficult\nchallenges : 1 ) pg & e wants 2 . 9 times book , which is far more than consumer\ngroups recommend for the sale of its transmission lines ( sce accepted 2 . 3 ) ,\nand 2 ) pg & e needs relief from davis for pg & es legal responsibility to be the\nultimate power purchaser for the state , and at this point davis wants to\nlimit further state energy power purchases ( especially for summer ) . the\nutilities refuse to sign a deal which will leave them billions of dollars\nfurther in the red ( $ 3 to $ 4 b ) and pg a measure that if accomplished would\nprovide davis with even less negotiating power .\nwith all this activity , davis is starting to lose support in the state\nlegislature . sources report increasing tension between the governor and\nstate senate president pro - tem john burton . burton has just announced a\nspecial senate committee will investigate the generators for evidence of\nprice manipulation , and the state auditor is also planning an investigation .\ndavis increasingly realizes he has to protect any deal he signs against being\npicked apart by the legislature and consumer groups later .\nqf ' s most likely source of involuntary bankruptcy\nsacramento insiders fear that a group of small generators will lose patience\nand force bankruptcy on the utilities . sb 47 x may have been california ' s\nqualified facilities last hope at avoiding an involuntary bankruptcy filing\nagainst pg & e , socal ed , and sdg & e . the bill designed to cut the qf ' s costs\nand provide them with a better rate structure is being held up in the state ' s\nsenate . sources indicate that a filing could come at anytime and further\ninvestigations are underway to ferret out the most likely candidates .\nout with hebert , in with wood\nthe bush administration favors replacing hebert , jr . with texas puc head pat\nwood . there is an intense battle behind the scenes between senate republican\nleader trent lott , who favors hebert , and president bush , who wants wood .\nthe administration would prefer wood because they do not want ferc to pick a\nfight with davis which means bush might ultimately lose some western states\nin 2004 . in effort to tone down the recent press reports , hebert has made\nseveral token concessions to california , including $ 69 million worth of power\nrefunds and streamlining the federal permitting process for pipeline and\npower plant installation .\nit ' s is expected that ferc would most likely approve any transmission deal\nthat davis could complete but with a list of conditions . some conditions\nmight include bring the lines formally into the regional grid system as well\nas other elements to pave the way for more dramatic administrative actions in\nthe west next year . the bush administration is opposed to price caps and\nbelieves in free market solutions . the administration is also considering\nwhether it might be a good idea to privatize federally - owned assets such as\nbpa .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.844+0000", "entityId": 10076, "properties": {"text": "Subject: the impact of ecuador ' s heavy crude pipeline : prospects for\ncapacity - cera conference call & web presentation\ntitle : the impact of ecuador ' s heavy crude pipeline : prospects for capacity\nurl : http : / / www 20 . cera . com / eprofile ? u = 35 & m = 2293\nnow available :\na prerecorded cera conference call\nme & event = w 520557\nhosted by premiere conferencing\npresented by dr . rene ortiz , lisa pearl , alberto bullrich\n* * end * *\nfollow above url to gain access to the recording of the conference call\nand web presentation .\ne - mail category : conference call & web presentation\ncera knowledge area ( s ) : latin american energy ,\nto make changes to your cera . com account go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2001 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.849+0000", "entityId": 10077, "properties": {"text": "Subject: re : fwd : invitation to the 20 th annual rutgers conference\nvince ,\ni am delighted that you accept our invitation . we hope it works out that you\ncan attend the whole conference as we are confident that you will find the\nprogram stimulating and will enjoy getting to know our participants . the\npleasure will certainly be mutual . you will bring a new and different\nperspective from which we can all benefit .\nmichael\nat 05 : 54 pm 3 / 15 / 01 est , vkaminski @ aol . com wrote :\n> > > >\npaul ,\nthank you for the invitation to speak at the eastern conferences on\nregulation and competition on may the 25 th . i shall be glad to attend and\nmake an after dinner presentation . i hope to be able to attend the entire\nconference .\nsorry for a delay in responding to your message . i have been traveling\nextensively in the last few weeks .\nvince return - path :\nfrom : vkaminski @ aol . com\nfull - name : vkaminski\nmessage - id :\ndate : thu , 15 mar 2001 17 : 04 : 02 est\nsubject : fwd : invitation to the 20 th annual rutgers conference\nto : vkaminski @ aol . com\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" part 2 _ 70 . 8 aeecl 9 . 27 e 29652 _ boundary \"\nx - mailer : aol 6 . 0 for windows us sub 10501\nreturn - path :\nreceived : from rly - yho 3 . mx . aol . com ( rly - yho 3 . mail . aol . com [ 172 . 18 . 147 . 35 ] )\nby air - yho 3 . mail . aol . com ( v 77 _ rl . 21 ) with esmtp ; fri , 09 mar 2001 18 : 01 : 27\n- 0500\nreceived : from postmaster . enron . com ( outbound 5 . enron . com [ 192 . 152 . 140 . 9 ] ) by\nrly - yho 3 . mx . aol . com ( v 77 _ rl . 21 ) with esmtp ; fri , 09 mar 2001 18 : 01 : 01 - 0500\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 168 . 189 . 66 ] )\nby postmaster . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / postmaster - 1 . 00 ) with esmtp id xaao 2258\nfor ; fri , 9 mar 2001 23 : 00 : 59 gmt\nfrom : vince . j . kaminski @ enron . com\nreceived : from nahou - msmswo 3 px . corp . enron . com ( [ 172 . 28 . 10 . 39 ] )\nby mailman . enron . com ( 8 . 10 . 1 / 8 . 10 . 1 / corp - 1 . 05 ) with esmtp id f 29 noxp 22494\nfor ; fri , 9 mar 2001 17 : 00 : 59 - 0600 ( cst )\nreceived : from ene - mtaol . enron . com ( unverified ) by\nnahou - msmswo 3 px . corp . enron . com\n( content technologies smtprs 4 . 1 . 5 ) with esmtp id for ;\nfri , 9 mar 2001 17 : 01 : 07 - 0600\nsubject : invitation to the 20 th annual rutgers conference\nto : vkaminski @ aol . com\ndate : fri , 9 mar 2001 17 : 00 : 58 - 0600\nmessage - id :\nx - mimetrack : serialize by router on ene - mtaol / enron ( release 5 . 0 . 6 | december\n14 , 2000 ) at\n03 / 09 / 2001 04 : 58 : 03 pm\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\nx - mailer : unknown ( no version )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 09 / 2001\n05 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kleindorfer , paul \" on 03 / 08 / 2001 03 : 41 : 21\npm\nto : \" ' vkamins @ enron . com ' \"\ncc : \" ' mcrew @ andromeda . rutgers . edu ' \"\nsubject : invitation to the 20 th annual rutgers conference\nvince :\nfor two decades now , i have been a member of the faculty helping to\norganize the eastern conferences on regulation and competition that michael\ncrew of rutgers has chaired . this year will be , in fact , the 20 th\nanniversary conference and a number of notable personages will be joining\nus to celebrate what we have learned and what we haven ' t about the\neconomics of network industries . fred kahn , al philipps , bill hogan and a\nnumber of other distinguished academics will be reviewing our progress and\nthe prospects for the future . the conference will take place at a\nbeautiful site in the poconos , about 90 minutes north of philadelphia , from\nwednesday afternoon may 24 th to friday afternoon may 26 th . you can check\nfor yourself the nature of the program and the conference site / hotel at the\nfollowing website url :\nhttp : / / www . rci . rutgers . edu / ~ crri / ws . htm\nmichael crew and i would both be delighted if you would be willing to be an\nafter dinner speaker on thursday evening ( may 25 th ) , just before the key\nresearch reviews of friday morning take place on the electricity , telephone\nand gas industries , and following a day of special topics on emerging power\nmarkets and other developments in network industries . naturally we would\nbe pleased if you would be able to stay for the entire conference , but\nknowing your schedule , you may only have time for a part of it . that would\nnot be a problem . the usual after - dinner address is for 30 minutes ,\nfollowed by a short q & a period .\nyour presentation would help to underline the tremendous importance of\nenron in driving the development of new risk instruments to assist in price\ndiscovery and efficient risk management for market participants , in energy\nmarkets and more generally . both michael and i feel that your perspectives\non the \" new science of risk management \" and what can be expected from it\ncould be a very important addition to this special anniversay event .\nplease let me know ( and please do copy michael on your response ) whether\nyour schedule will allow your participation in this very special event .\nmichael and i would , of course , be very happy to follow up with you in\ndiscussing the nature of the presentation , participants and so forth , if\nthis is a go . i look forward to hearing from you .\nregards ,\npaul\npaul kleindorfer\n215 898 - 5830\nmichael a . crew\nprofessor ii\ndirector - center for research in regulated industries\neditor - journal of regulatory economics\nrutgers university , graduate school of management\n180 university avenue\nnewark , n . j . 07102 - 1897\nphone : 973 353 5049 fax : 973 353 1348\nhttp : / / www - rci . rutgers . edu / ~ crri", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.853+0000", "entityId": 10078, "properties": {"text": "Subject: fwd : invitation to the 20 th annual rutgers conference\npaul ,\nthank you for the invitation to speak at the eastern conferences on\nregulation and competition on may the 25 th . i shall be glad to attend and\nmake an after dinner presentation . i hope to be able to attend the entire\nconference .\nsorry for a delay in responding to your message . i have been traveling\nextensively in the last few weeks .\nvince\nreturn - path :\nfrom : vkaminski @ aol . com\nfull - name : vkaminski\nmessage - id :\ndate : thu , 15 mar 2001 17 : 04 : 02 est\nsubject : fwd : invitation to the 20 th annual rutgers conference\nto : vkaminski @ aol . com\nmime - version : 1 . 0\ncontent - type : multipart / mixed ; boundary = \" part 2 _ 70 . 8 aeecl 9 . 27 e 29652 _ boundary \"\nx - mailer : aol 6 . 0 for windows us sub 10501\nreturn - path :\nreceived : from rly - yho 3 . mx . aol . com ( rly - yho 3 . mail . aol . com [ 172 . 18 . 147 . 35 ] )\nby air - yho 3 . mail . aol . com ( v 77 _ rl . 21 ) with esmtp ; fri , 09 mar 2001 18 : 01 : 27\n- 0500\nreceived : from postmaster . enron . com ( outbound 5 . enron . com [ 192 . 152 . 140 . 9 ] ) by\nrly - yho 3 . mx . aol . com ( v 77 _ rl . 21 ) with esmtp ; fri , 09 mar 2001 18 : 01 : 01 - 0500\nreceived : from mailman . enron . com ( mailman . enron . com [ 192 . 168 . 189 . 66 ] ) by\npostmaster . enron . com ( 8 . 8 . 8 / 8 . 8 . 8 / postmaster - 1 . 00 ) with esmtp id xaao 2258 for\n; fri , 9 mar 2001 23 : 00 : 59 gmt\nfrom : vince . j . kaminski @ enron . com\nreceived : from nahou - msmswo 3 px . corp . enron . com ( [ 172 . 28 . 10 . 39 ] ) by\nmailman . enron . com ( 8 . 10 . 1 / 8 . 10 . 1 / corp - 1 . 05 ) with esmtp id f 29 noxp 22494 for\n; fri , 9 mar 2001 17 : 00 : 59 - 0600 ( cst )\nreceived : from ene - mtaol . enron . com ( unverified ) by\nnahou - msmswo 3 px . corp . enron . com ( content technologies smtprs 4 . 1 . 5 ) with esmtp\nid for\n; fri , 9 mar 2001 17 : 01 : 07 - 0600\nsubject : invitation to the 20 th annual rutgers conference\nto : vkaminski @ aol . com\ndate : fri , 9 mar 2001 17 : 00 : 58 - 0600\nmessage - id :\nx - mimetrack : serialize by router on ene - mtaol / enron ( release 5 . 0 . 6 | december\n14 , 2000 ) at 03 / 09 / 2001 04 : 58 : 03 pm\nmime - version : 1 . 0\ncontent - type : text / plain ; charset = us - ascii\nx - mailer : unknown ( no version )\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 09 / 2001\n05 : 01 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" kleindorfer , paul \" on 03 / 08 / 2001 03 : 41 : 21\npm\nto : \" ' vkamins @ enron . com ' \"\ncc : \" ' mcrew @ andromeda . rutgers . edu ' \"\nsubject : invitation to the 20 th annual rutgers conference\nvince :\nfor two decades now , i have been a member of the faculty helping to\norganize the eastern conferences on regulation and competition that michael\ncrew of rutgers has chaired . this year will be , in fact , the 20 th\nanniversary conference and a number of notable personages will be joining\nus to celebrate what we have learned and what we haven ' t about the\neconomics of network industries . fred kahn , al philipps , bill hogan and a\nnumber of other distinguished academics will be reviewing our progress and\nthe prospects for the future . the conference will take place at a\nbeautiful site in the poconos , about 90 minutes north of philadelphia , from\nwednesday afternoon may 24 th to friday afternoon may 26 th . you can check\nfor yourself the nature of the program and the conference site / hotel at the\nfollowing website url :\nhttp : / / www . rci . rutgers . edu / ~ crri / ws . htm\nmichael crew and i would both be delighted if you would be willing to be an\nafter dinner speaker on thursday evening ( may 25 th ) , just before the key\nresearch reviews of friday morning take place on the electricity , telephone\nand gas industries , and following a day of special topics on emerging power\nmarkets and other developments in network industries . naturally we would\nbe pleased if you would be able to stay for the entire conference , but\nknowing your schedule , you may only have time for a part of it . that would\nnot be a problem . the usual after - dinner address is for 30 minutes ,\nfollowed by a short q & a period .\nyour presentation would help to underline the tremendous importance of\nenron in driving the development of new risk instruments to assist in price\ndiscovery and efficient risk management for market participants , in energy\nmarkets and more generally . both michael and i feel that your perspectives\non the \" new science of risk management \" and what can be expected from it\ncould be a very important addition to this special anniversay event .\nplease let me know ( and please do copy michael on your response ) whether\nyour schedule will allow your participation in this very special event .\nmichael and i would , of course , be very happy to follow up with you in\ndiscussing the nature of the presentation , participants and so forth , if\nthis is a go . i look forward to hearing from you .\nregards ,\npaul\npaul kleindorfer\n215 898 - 5830", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.858+0000", "entityId": 10079, "properties": {"text": "Subject: re : raptors\nno\n- - - - - original message - - - - -\nfrom : bharati , rakesh\nsent : thursday , march 15 , 2001 4 : 42 pm\nto : port , david\ncc : kaminski , vince\nsubject : raptors\nhi david ,\ni would like to check with you just to be on the safe side . i left our last\nmeeting with the impression that only naveen and i would be working together\non the raptors . however , i heard from naveen earlier today and he wanted to\ninclude thomas ( mark , i presume ) in the meeting as well . i would like to\nensure if that is indeed your intention . please advise . thanks .\nrakesh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.863+0000", "entityId": 10080, "properties": {"text": "Subject: fw : resume for vince kaminski\nvince : i have received this resume ( unsolicited ) from an outside recruiting\nagency . if you are interested in meeting with johnathan , i would be more\nthan happy to set it up for you .\nmolly\n- - - - - original message - - - - -\nfrom : graham , toni\nsent : thursday , march 08 , 2001 2 : 07 pm\nto : magee , molly\nsubject : fw : resume for vince kaminski\n- - - - - original message - - - - -\nfrom : \" m eastman \" @ enron\n@ enron . com ]\nsent : thursday , march 08 , 2001 1 : 53 pm\nto : graham , toni\nsubject : resume for vince kaminski\njohnathan is at 142 , 000 base + 10 - 15 % bonus . he is a phd . , certified in\nfinancial risk management , awaiting charter as cfa , and the list goes\non . at kpmg his clients are financial institutions , e - commerce , internet ,\nand high tech . he has real options valuation and various other financial\nand overall corporate risk valuation and analysis skills that may be of\ninterest to vince and his group .\nmike eastman , cpc - president\nqualitec professional services , lp\naccounting - financial - energy risk - tax\nsearch consultants\n281 - 647 - 9300 ext . 314 fax 281 - 647 - 9300\nemail meastman @ qualitec . com\nwebsite www . qualitec . com\n- johnathan mun . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.868+0000", "entityId": 10081, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nena principal investments :\nthree transactions to date in lq 2001 :\n$ 2 . 5 million investment in series c convertible preferred stock of silicon\npower corporation ( \" spc \" ) , a leading designer , developer and manufacturer of\na wide range of power semiconductor devices and systems . spc operates\nthrough three divisions : the power components division manufactures large\narea semiconductors up to 125 mm which are used in high - power diodes ,\nthyristors , gto thyristors and custom high pulse power rated devices . these\ncomponents are sold directly to oem ' s in the heavy industrial , electric\nutility , transportation , military and medical industries . the industrial\npower division specializes in systems level products providing utility and\npower quality protection . the commercial power division designs and\nmanufactures semiconductors made by a planar process used to make discrete\npower semiconductor devices and associates subsystems . more information can\nbe obtained from kevin kuykendall ( 33995 ) , jennifer adams ( 33919 ) or from the\ncompany ' s web page at : www . siliconpower . com\n$ 2 . 25 million convertible bridge loan to solo energy corporation , an existing\nena principal investments portfolio company . the funds are part of a $ 7 . 0\nmillion bridge facility needed to fund overhead while negotiations continue\nregarding a potential acquisition opportunity . in addition to the conversion\nfeature , ena principal investments also received warrants to purchase 2 . 75\nmillion additional shares in solo energy . the company is developing a 100 kw\nmicroturbine , which utilizes a proprietary catalytic combustion process and\nturbines , sourced from the automotive and marine sectors . placement of 50\nbeta units is planned at test sites selected by scana ( a co - investor in solo\nenergy ) in the 2 q and 3 q , 2001 . once the acquisition is completed , the\ncompany plans to complete an additional $ 30 to $ 50 million funding round .\nmore information can be obtained from charlie vetters ( 39435 ) , kyle kettler\n( 30423 ) or from the company ' s web page : www . soloenergy . com\n$ 5 . 0 million series d convertible preferred stock of encorp , inc . , an\nexisting ena principal investments portfolio company . the funds are part of\na total of $ 38 million raised in the series d round that should provide\nfunding for the company through mid - 2002 . encorp is among the worlds leading\nproviders of products , services and solutions addressing the growing demand\nfor clean , reliable on - site power systems . the company \u0001 , s power technology\nproducts include grid - interconnection switchgear and energy - automation\nsoftware . encorp \u0001 , s products , in combination with the company \u0001 , s\nengineering - services team , create dependable , on - site power solutions that\ncan reduce the overall cost of energy for commercial and industrial customers\noperating in the digital economy . more information can be obtained from\ncharlie vetters ( 39435 ) , kyle kettler ( 30423 ) or from the company ' s web\npage : www . encorp . com\nenron credit\nfeeling exposed ? if you are looking for ways to trade some credit exposure\nout of your portfolio , visit enrononlinetm . enron credit now offers 3 - year\nand 5 - year credit default swaps for a number of companies every day on the\nsystem .\nindustrial markets\nenron industrial markets has established its key goals and objectives for\n2001 for the forest products and steel groups :\n_ firmly establish eim as a significant physical merchant by moving 3\nmillion tons of product in each of the forest products and steel industries .\n_ expand international business by generating at least $ 10 million of gross\nmargin .\n_ create a vehicle to gain access to 500 , 000 tons / year of market pulp .\nin addition , both forest products and steel are focused on creating greater\nphysical and financial liquidity in each of their respective industries , as\nwell as developing world class logistics and operations capabilities .\neim organizational announcement\nforest products group\nthe following changes are being implemented in the commercial organization in\norder to better focus on the group \u0001 , s mission : to be the premier market maker\nin physical products and financial risk management products in the forest\nproducts sector .\nrodney malcolm will assume responsibility for the new sales and marketing\ngroup .\nrob saltiel will create a new forests products origination group .\nbob crane will continue to be responsible for trading and risk management in\nall forest products markets .\nandy keleman will take the leadership of the transaction development group .\nin the news\n\" energy and trading giant enron corp . ( nyse : ene - news ) wants a piece of\nmadison avenue . the houston - based company ' s latest venture is enron media\nservices , a seven - month old outfit that aims to bring enron ' s expertise in\ntrading natural gas and electricity to buyers and\nsellers of advertising space .\nin the process , enron wants to tap into a $ 500 billion - a - year global\nadvertising arena .\n` ` what we ' ve identified is that this business is very analogous to what we do\nin gas and power , ' ' enron media services vice president edward ondarza . \" - - -\nreuters , march 14 , 2001\nwelcome\nnew hires\negm - sherman franzen\neim - jennifer vanlandingham\nena - kim detiveaux , diane fellers , esemeralda gonzalez , eric linder ,\nmichael lorenz , noel ryan , melissa prihoda , steve mcdonnell\ntransfers\neim - lisa csikos , john jacobsen\nena - robin rodrigue , maria lopez , roseann engeldorf\nif you love golf . . \u0001 (\nwould you like to experience the premier golf event , the masters ? this is\nyour golden opportunity to see augusta and the practice rounds .\nthere are 17 spaces now available for trip # 1 - sunday , april 1 through\nwednesday , april 4 . the package includes accommodations at six private homes\nin augusta , food and beverage , ground transportation , access to the enron\ntent , passes to the practice rounds and par 3 tournament , and one round of\ngolf at jones creek .\ncost is $ 4975 per person ; additional cost for use of charter aircraft between\nhouston and augusta is $ 1740 per person . this is a high - level\ncustomer - driven business opportunity . if you are interested , call dorie\nhitchcock at x 3 - 6978 .\nenrononline statistics\nbelow are the figures for enrononline as of march 14 , 2001 .\n? total life to date transactions > 750 , 000\n? life to date notional value of transactions > $ 450 billion\nnews from the global flash\nenpipe services\nthe continental gas team is launching the first virtual gas transportation\nproduct in europe , enpipe services . enpipe will offer customers the ability\nto swap gas between the nbp in the uk and the zeebrugge hub in belgium .\ncustomers will be able to nominate volumes on a day - ahead basis , and will pay\nfor the service by an up - front premium . this new service should encourage\nmore participants at the zeebrugge hub , which will lead into more liquidity\nat other trading locations developing on the continent . similar to the\nvirtual storage service , enbank , enpipe demonstrates enron ' s ability to offer\nvaluable services to the market through smart risk management rather than\ncapital - intensive infrastructure . the first enpipe auction will close on 15\nmarch , and customers may submit their bids on enrononline .\nteesside gas processing plant\non thursday , lst march , the teesside gas processing plant achieved iso\n9001 : 2001 quality management system accreditation . this achievement is the\nresult of 12 months hard work , enthusiasm and commitment by all plant staff\nand has also been a great team effort with the enron global asset\norganisation providing technical and moral support .\nan iso team was formed in february 2000 led by iris thomas ( qa coordinator )\nand supported by members from all site disciplines including operations ,\nmaintenance , accounts and it . a program was implemented to prepare , write ,\nissue and control , detailed procedures to ensure the plant was operated and\nmaintained to the quality standards required by iso 9001 : 2001 . customer\nsatisfaction and focus is an integral part of the standard and a great deal\nof effort has been put into this area . following a pre - audit in january the\nfinal accreditation audit commenced on wednesday , 28 th february , with\naccreditation being confirmed on thursday , lst march .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.873+0000", "entityId": 10082, "properties": {"text": "Subject: rtp project\nvince ,\ntargetted conference date is th - f june 21 - 22 at stanford . enclosed in the\nrecent revision to what i sent before .\ngreat to meet you ,\nhill\n- retail notes . rtf\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.879+0000", "entityId": 10083, "properties": {"text": "Subject: re : a request\nzimin ,\ni also enjoyed our talk . thanks very much . i ' ll send you the paper as soon\nas its done .\nduane\n- - on thursday , march 15 , 2001 , 1 : 58 pm - 0600 zimin . lu @ enron . com wrote :\n>\n>\n> dr . seppi ,\n>\n> nice talking to you about swing contracts and your recent work on\n> american - monte\n> carlo approach . i am interested to read your preprint papers .\n>\n> my address is\n>\n> zimin lu\n> enron corp , eb 1967\n> 1400 smith street\n> houston , tx 77002 - 7361\n>\n>\n> zimin\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n> ds 64 @ cyrus . andrew . cmu . edu on 03 / 15 / 2001 11 : 59 : 59 am\n>\n> to : zimin . lu @ enron . com\n> cc :\n> subject : re : a request\n>\n>\n> great . i ' ll be in my office . my number is 412 - 268 - 2298 .\n>\n> duane\n>\n>\n> - - on wednesday , march 14 , 2001 , 3 : 57 pm - 0600 zimin . lu @ enron . com wrote :\n>\n> >\n> >\n> > dr . seppi ,\n> >\n> > my phone number is 713 - 853 - 6388 . i will call you\n> > tomorrow afternoon around 1 : 30 pm houston time .\n> >\n> > zimin\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> >\n> > ds 64 @ cyrus . andrew . cmu . edu on 03 / 14 / 2001 03 : 15 : 02 pm\n> >\n> > to : zimin . lu @ enron . com\n> > cc : vince . j . kaminski @ enron . com\n> > subject : re : a request\n> >\n> >\n> > dr . lu ,\n> >\n> > i would be grateful if i could talk with you some time about the typical\n> > terms one sees in swing , take or pay , virtual storage , etc . options .\n> this\n> > is related to some research some colleagues and i are doing applying\n> recent\n> > innovations in monte carlo valuation of options with early exercise . we\n> > would like to illustrate our techniques on some examples which look\n> > realistic . when would be convenient for you ?\n> >\n> > i look forward to talking with you .\n> > duane seppi\n> >\n> > - - on wednesday , march 14 , 2001 , 8 : 44 am - 0600 vince . j . kaminski @ enron . com\n> > wrote :\n> >\n> > >\n> > > duane ,\n> > >\n> > > i shall be traveling for the rest of the week but my colleague\n> > > dr . zimin lu will call you to talk about different\n> > > structures .\n> > >\n> > > vince\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > ds 64 @ cyrus . andrew . cmu . edu on 03 / 13 / 2001 09 : 54 : 24 am\n> > >\n> > > to : \" vince j kaminski \"\n> > > cc :\n> > > subject : re : a request\n> > >\n> > >\n> > > vince ,\n> > >\n> > > sorry that i missed your call yesterday . i have a meeting from 2 - 3\n> today\n> > > ( tuesday ) , but otherwise any time in the afternoon works for me . let me\n> > > know what is convenient for you . thanks for your help .\n> > >\n> > > duane\n> > >\n> > > * * * * * * * *\n> > > duane seppi\n> > >\n> > > graduate school of industrial administration\n> > > carnegie mellon university\n> > > pittsburgh pa 15213 - 3890\n> > >\n> > > tel . ( 412 ) 268 - 2298\n> > > fax ( 412 ) 268 - 8896\n> > >\n> > > email ds 64 + @ andrew . cmu . edu\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n> >\n> >\n> > * * * * * * * *\n> > duane seppi\n> >\n> > graduate school of industrial administration\n> > carnegie mellon university\n> > pittsburgh pa 15213 - 3890\n> >\n> > tel . ( 412 ) 268 - 2298\n> > fax ( 412 ) 268 - 8896\n> >\n> > email ds 64 + @ andrew . cmu . edu\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n> * * * * * * * *\n> duane seppi\n>\n> graduate school of industrial administration\n> carnegie mellon university\n> pittsburgh pa 15213 - 3890\n>\n> tel . ( 412 ) 268 - 2298\n> fax ( 412 ) 268 - 8896\n>\n> email ds 64 + @ andrew . cmu . edu\n>\n>\n>\n>\n>\n* * * * * * * *\nduane seppi\ngraduate school of industrial administration\ncarnegie mellon university\npittsburgh pa 15213 - 3890\ntel . ( 412 ) 268 - 2298\nfax ( 412 ) 268 - 8896\nemail ds 64 + @ andrew . cmu . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.884+0000", "entityId": 10084, "properties": {"text": "Subject: sokolov eis expenses\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 03 / 15 / 2001 05 : 14\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kevin jolly / enron @ enronxgate on 03 / 14 / 2001 01 : 38 pm\nto : anita dupont / na / enron @ enron\ncc :\nsubject : sokolov eis expenses\nanita , the other day i called you to get jason sokolov ' s cost center . some\nof his eis expenses ( market data , long distance ) for jan and feb 2001 were\ncharged to the enron corp . rac cost center . in order for our accountants to\nreclass the expenses , we need your approval that the expenses can be moved .\nif this is okay , just reply back and let me know .\nsee the attached files for the detail of the expenses to be moved for jan and\nfeb .\nthanks for your help ,\nkevin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.890+0000", "entityId": 10085, "properties": {"text": "Subject: new members\nthe following people are joining the research group reporting to me\neffective immediately . please make sure that their transfer from ees to our\ngroup is reflected in the support systems .\noren v . ( \" dayne \" ) zimmerman\nchuanli ( \" ken \" ) deng\nanguel g grigorov\nthanks ,\nkrishna .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.896+0000", "entityId": 10086, "properties": {"text": "Subject: password\nlogin kkindal\npassword marketcredit !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.901+0000", "entityId": 10087, "properties": {"text": "Subject: departure\nthe research group is a unique and extraordinarily valuable organization for\nenron . the success of the group has led to widespread recognition of enron ' s\nleadership in quantitative finance as it relates to the energy markets .\ntherefore , it is with great mixed emotions that i announce my resignation as\ni move on to the next phase of my career .\ni have enjoyed getting to work with each of you and wish you continued\nsuccess for the future .\nhighest regards ,\nkevin kindall\nps : comments , question , and anecdotes will be addressed in thursday ' s\nmeeting .\nshirley will have my contact info .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.907+0000", "entityId": 10088, "properties": {"text": "Subject: approval is overdue : access request for tony . hamilton @ enron . com\nthis request has been pending approval for 3 days and you are the\nalternate . please click\napproval to review and act upon this request .\nrequest id : 000000000023619\napprover : stinson . gibner @ enron . com\nrequest create date : 3 / 14 / 01 11 : 00 : 28 am\nrequested for : tony . hamilton @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.913+0000", "entityId": 10089, "properties": {"text": "Subject: request submitted : access request for iris . mack @ enron . com\nyou have received this email because the requester specified you as their\nmanager . please click\napproval to review and act upon this request .\nrequest id : 000000000024099\nrequest create date : 3 / 16 / 01 5 : 39 : 34 pm\nrequested for : iris . mack @ enron . com\nresource name : visual studio enterprise\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.923+0000", "entityId": 10090, "properties": {"text": "Subject: fw : meeting follow - up\ndan sent this information as a follow up to our meeting this week . if there\nis any additional information you would like to see , please let me know .\nin the absense of any objections , i would like to begin having our analysts\nuse the financial stress score to underwrite small exposures where financial\nstatements are not received . in addtion to saving some expense , this will\nallow greater consistentency . and moving forward , i believe we can map\nexpected defaults from fstress score ranges to those implied in credit\nspreads , and in doing so map to e - ratings for use in credit reserve\nanalytics . i ' ve had prelimiary discussions with rabi and amititava regarding\nthis .\nany additional insights would be helpful , and thanks for your help .\n- - - - - original message - - - - -\nfrom : \" barry , dan \" @ enron\non . com ]\nsent : thursday , march 15 , 2001 10 : 26 am\nto : mark _ wilson @ enron . com\ncc : marcom , karen ; johnson , judy\nsubject : meeting follow - up\nmark ,\nattached are a presentation on the financial stress score and the countries\nthat have risk scores available today . please let me know if you have any\nquestions .\nin response vince ' s question regarding false positives from the model , that\nis a little difficult to answer . the model is predicting the likelihood of\na company experiencing financial distress . we are not saying that all\ncompanies with a high risk score will experience financial distress . in\nother words , it is not really a yes or no proposition . it ' not like a drug\ntest where the test either comes back positive or negative and ocassionally ,\nyou get a false positive test result . we are identifying companies that are\nat high risk for failure . some of those high risk companies will fail and\nsome will not fail . how many in each classification that will ultimately\nfail is addressed in the performance charts attached below .\nplease let me know if you have any other questions or need any additional\ninformation .\ndan barry\ndun & bradstreet\nanalytical services\nbarryd @ dnb . com\nphone ( 713 ) 953 - 5458\nfax ( 713 ) 953 - 5454\n> > >\n>\n- enron fss . ppt\n- globalfailure . ppt\n- fin stress understanding . doc\n- fss performance . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.932+0000", "entityId": 10091, "properties": {"text": "Subject: bill koures\nvince ,\nalex and i did a phone interview with bill koures .\nhe works for williams and had a wall street background .\nhe is very qualified for the work we are doing here ( stochastic modeling ,\ncurve building , option valuation , etc . )\nhe programs in c and matlab .\nin terms of quantitative skills , bill is better than ren zhang ( koch ) i\ntalked yesterday . the only down\nside alex and i can think of about mr . koures is that we may not get him due\nto a higher price tag .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.936+0000", "entityId": 10092, "properties": {"text": "Subject: rice / enron finance seminar series\nenron seminar series in finance\njones graduate school of management , rice university\npaul schultz\nuniversity of notre dame\nwill give a seminar at the jones school on friday , march 30 , ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? \u0001 & who makes markets \u0001 8\nthe seminar will begin at 3 : 30 in room 115 .\nthe paper will be made available shortly .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.941+0000", "entityId": 10093, "properties": {"text": "Subject: 2 missing from the mailing list\nhingoran @ rice . edu\nplanck @ rice . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.946+0000", "entityId": 10094, "properties": {"text": "Subject: list of teams and projects\nvince ,\nhere is the list of teams and projects .\nthere are still a couple of people who have not found their teams yet .\ni will try to put them in one of the existing teams .\njason\nteaml : project metalgesselschaft ( mg )\nlynn nazareth\njavier lamas\nshauywn smith\ncarlos wheelock\nteam 2 : energy related futures contracts\njohn ganguzza\nneeraj hingorani\ngrant johnson\nduane maue\nrishad patel\neric van stone\npaulo yoshiura\nteam 3 : standard option contracts\nyue guo\nfang li\nnan li\ntracy pan\nwei wu\njeff planck\nteam 4 : standard options contract\nfelix feng lu\nning zhang\nrakhi israni\nsanjay wankhade\nwinni so\norlando taylor\nteam 5 : power pool analysis\nelena chilkina\nrob gaudette\njoe helms\nken jett\ntodd litton\nmarc westmoreland", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.950+0000", "entityId": 10095, "properties": {"text": "Subject: leadership committees\nwe are launching a number of committees to perform key functions across\nenron . enron \u0001 , s breadth of activities and nonhierarchal organization make it\nincreasingly necessary to broaden the participation of enron \u0001 , s next\ngeneration of leadership in the important decisions affecting the company .\nbroadening participation will result in increased access to information as\ndecisions are made and will allow committee members to extend their working\nrelationships and influence throughout the company .\nthe committee charters and memberships are set forth below . not everyone\nlisted has been contacted in advance . we urge you to serve if at all\npossible , but , if you cannot , please contact the committee chair .\nvp prc\nthe vp prc will continue to be responsible for evaluating the performance of\nenron \u0001 , s vice presidents , determining promotions to vice president , and\nrecommending promotions to managing director . additionally , the vp prc will\nreview and propose changes to the prc process , the performance evaluation\ncriteria and the promotion criteria .\nthe vp prc will be chaired by dave delainey and its membership is as follows :\ntim belden ben glisan danny mccarty\nmichael brown joe gold jeff mcmahon\nrick buy mark haedicke rob milnthorp\nwes colwell jim hughes matthew scrimshaw\ndavid cox louise kitchen jeff shankman\njanet dietrich michael kopper richard shapiro\ndave duran john lavorato marty sunde\njim fallon dan leff\nanalyst / associate prc\nthe analyst / associate prc will be divided into 3 groups . enron europe will\nhave the same committee evaluate analysts and associates . this group will be\nchaired by john sherriff and its membership is as follows :\npierre aury kevin heffron andreas radmacher\nrob bayley joe hirl stuart rexrode\npaul chivers chris mahoney marcello romano\nmarkus fiala christopher mckey bjarne schieldrop\ndavid gallagher roy poyntz ron slimp\nbruce garner paul quilkey rob stewart\nthe associate prc for the americas will be chaired by stan horton and its\nmembership is as follows :\nsally beck troy henry kevin presto\njeremy blachman sean holmes brad richter\ndon black sean long stewart seeligson\ndan castagnola rodney malcolm hunter shively\njoe deffner scott neal jim steffes\nkevin garland john nowlan andy zipper\ndavid gorte ozzie pagan\nthe analyst prc for the americas will be chaired by steve kean and its\nmembership is as follows :\nfederico cerisoli mark jackson everett plante\njennifer fraser ben jacoby paul racicot\nderrick davies steve jernigan angela schwarz\nscott gahn jay lewis ed smida\nrod hayslett cheryl lipshutz jon thomsen\nrogers herndon michael mann emilio vicens\nbrenda herod ed mcmichael frank vickers\nkevin howard steve meyers\nanalyst / associate program\nthe most essential determinant of enron \u0001 , s continued growth is our ability to\nattract and develop new talent . the analyst / associate program has been the\nbiggest contributor to our success in this area . charlene jackson , currently\nleading our analyst / associate program , has taken a commercial position in\nees \u0001 , account management organization . we thank charlene for her hard work\nand many contributions to the program . going forward , this program will be\nadministered by a committee chaired by john sherriff , ceo of enron europe .\nthe members of this committee are listed below . billy lemmons , currently\nvice president of enron global markets , will lead the day - to - day operations\nof the program . billy joined enron in 1992 , and has served in a variety of\ncommercial capacities across the company and has been an active participant\nin the associate / analyst program . please join us in congratulating billy on\nhis new responsibilities .\nphillip allen andy fastow eric shaw\nrobina barker - bennett kevin garland hunter shively\nrick causey ken rice stu staley\njoe deffner\nculture\nwe are combining the vision and values , diversity and corporate\nresponsibility committees into a single corporate culture committee chaired\nby ken lay . cindy olson , beth tilney and kelly kimberly will serve as\nexecutive directors of this committee . this committee will focus on\nleadership and work - life issues ( making it easier to attract and retain the\nbest talent ) , in addition to continuing the work of the vision and values ,\ndiversity and corporate responsibility task forces . the members of this\ncommittee are as follows :\ngreg adams louise kitchen mark palmer\nshelley corman michael kopper paula rieker\njanet dietrich richard lewis jeff shankman\njeff donahue sean long mitch taylor\ngene humphrey dan mccarty mike terraso\nrobert jones jean mrha\nthe corporate policy committee will conduct the md prc and review the\nrecommendations of the other committees , giving substantial deference to the\ndecisions of those other committees . we will be forming other committees to\ndeal with other significant functions , tasks and issues facing the company .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.955+0000", "entityId": 10096, "properties": {"text": "Subject: organizational announcement - introducing enron engineering and\noperational services\nin order to better align our engineering and operations capabilities with the\ncommercial businesses they support , we are pleased to announce the following\norganizational change will be effective immediately . a new business unit ,\nenron engineering and operational services ( eeos ) , is being formed which will\ninclude our existing operations in enron engineering and construction company\n( ee & cc ) , operational energy corporation ( oec ) , and national energy production\ncorporation ( nepco ) .\nbrian stanley , as president and chief executive officer , and keith dodson , as\nchief operating officer will provide the leadership for this new\norganization , reporting to the office of the chairman of enron wholesale\nservices . nepco will continue to operate as a stand - alone business under\njohn gillis , president .\nwith the majority of ee & cc and oec \u0001 , s activities focused on assets and\nprojects which are in wholesale services , this will better align the efforts\nof eeos with the commercial businesses it supports . while eeos will be a\nstand - alone unit within enron wholesale services it will work very closely\nwith and have direct accountability to the business units it supports .\nthis realignment also centralizes our engineering and operations capabilities\nin a single business segment and should ensure that innovation and best\npractices are shared and implemented across our many operations and will also\nallow for better identification of priorities and more effective allocation\nof resources to these projects . consistent with this approach , development\nengineering will have dual reporting to both eeos and the business units\nwhich they support .\nwith an extensive and varied portfolio of assets around the world and a wide\nvariety of new development opportunities available to enron , it is critical\nthat we continue to maintain the best in class capability to design ,\nconstruct , commission , and effectively manage and operate enron \u0001 , s assets on a\nglobal basis .\nthis new global business unit should insure that we will continue to enhance\nthese demonstrated capabilities and provide us with a sustainable advantage\nas we advance our business strategy around the world .\nplease join us in congratulating brian and keith on their new assignments .\nmark frevert & dave delainey", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.960+0000", "entityId": 10097, "properties": {"text": "Subject: fw : understanding & applying financial mathematics to energy\nderivatives\ndear all ,\nthanks for your responses regarding availability and thoughts for the 2001\nfinancial maths course . attached is a word version of the previous outline .\ni have also included some comments from previous delegates on what they\nwould like to see this year . most points address the level we should aim for\nand the balance of theory and practical applications . i hope these points\nhelp you to improve on what is already our premier eprm training course .\ni would like to confirm the final points and any new biographical details by\nthursday , march 22 nd in order to allow us a strong lead time to market the\nevent . if you have any questions , please call me on 212 925 6990 extension\n225 or send me an email .\nas a checklist these are the points i would like to clarify :\n1 . confirmed availability for venues outlined in the draft programme .\nlondon , 28 & 29 june\nnew york , 9 & 10 july\nhouston , 16 ' chris . harris @ innogy . com ' ;\n' eronn @ mail . utexas . edu ' ; ' vince . j . kaminski @ eron . com ' ; ' vkaminski @ aol . com ' ;\n' spyros . maragos @ dynegy . com ' ; ' ds 64 @ cyrus . andrew . cmu . edu ' ;\n' geman @ math . umass . edu '\nsubject : understanding & applying financial mathematics to energy\nderivatives\ndear all ,\nfirstly , i would like to thank you for all your help on the energy & power\nrisk management 2001 event . the line - up is exceptional and i am extremely\nexcited about this event .\nas the course leaders of our annual financial mathematics training course , i\nwould like to notify you of the dates for the event this year . we plan to\nhold the courses at the following venues on the following dates :\nhouston - june 21 & 22\nlondon - june 28 & 29\nnew york - july 9 & 10\ni would like to confirm availability for these events and to take on board\nany update suggestions for the 2001 course . i do hope that these dates\nenable you to participate in this event and i look forward to speaking with\neach of you soon .\nbest wishes ,\npaul bristow\n- financial maths draft . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.965+0000", "entityId": 10098, "properties": {"text": "Subject: re : prof . carmona\nvince ,\nmy apologies for the late response - and thank you for your input .\nyannis\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , march 06 , 2001 3 : 15 pm\nto : yannis tzamouranis / hou / ect @ enron\ncc : kaminski , vince ; mark tawney / hou / ect @ enron ; shanbhogue , vasant\nsubject : prof . carmona\nyannis ,\ni have looked at the outline of the proposed course and\nfind that practically all the topics of the program are the\nstaple of what we do every day . i don ' t think research should spend\nmoney for this class .\nif we want to establish a relationship , we can easily do it\nby asking him to work on a research project .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.969+0000", "entityId": 10099, "properties": {"text": "Subject: maureen ' s expenses\nit appears that administratively maureen ' s expenses in coming to london\ncannot be processed from this office . can i confirm that there is no doubt\nthat the london office will pay these . could i therefore please ask shirley\nto process them in houston , and we will find out how they can then be charged\nback from research in houston to the london metals cost centre .\nthanks in advance for you help .\ntani nath", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.974+0000", "entityId": 10100, "properties": {"text": "Subject: trash bash event on saturday , march 31 st\nthanks for the interest so many of you have shown in trash bash . several of\nyou are of the mistaken idea that trash bash is tomorrow . it is not until\nsaturday , march 31 , 2001 . registration will be in sam houston park and\ntrash will be picked up along buffalo bayou from so . shephard to the wortham\ncenter . the work areas will be divided into 8 to 10 sections . when you\ncheck in , you will be assigned to a work section . if you are going to work\nat the registration desk , you need to be at sam houston park by 7 : 30 am . if\nyou are going to pick - up trash , you need to be at sam houston park by 8 : 00 am .\nthere will be a pre - registration desk set up in the lobby of the enron bldg .\nsometime during the week of march 26 th and i will let you know the exact\ndates when they are given to me . if you pre - register , you won ' t have to\nstand in the long lines at sam houston park .\nthanks again for your interest and help .\nanita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.979+0000", "entityId": 10101, "properties": {"text": "Subject: sokolov eis expenses\nhi kevin :\ni was out of the office on thursday and friday . i have discussed this with\nvince kaminski and he says the charges are correct . jason sokolov\nreports to tanya tamarchenko in the research group and all of their\ncosts are charged to rac .\nif you need further verification , please contact vince kaminski at 3 - 3848 .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron research group\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 19 / 2001\n07 : 45 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanita dupont @ enron\n03 / 15 / 2001 05 : 20 pm\nto : shirley crenshaw / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : sokolov eis expenses\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anita dupont / na / enron on 03 / 15 / 2001 05 : 14\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kevin jolly / enron @ enronxgate on 03 / 14 / 2001 01 : 38 pm\nto : anita dupont / na / enron @ enron\ncc :\nsubject : sokolov eis expenses\nanita , the other day i called you to get jason sokolov ' s cost center . some\nof his eis expenses ( market data , long distance ) for jan and feb 2001 were\ncharged to the enron corp . rac cost center . in order for our accountants to\nreclass the expenses , we need your approval that the expenses can be moved .\nif this is okay , just reply back and let me know .\nsee the attached files for the detail of the expenses to be moved for jan and\nfeb .\nthanks for your help ,\nkevin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.984+0000", "entityId": 10102, "properties": {"text": "Subject: \" henwood ' s rationalizing midwest power markets for the future \"\nworkshops\nhenwood announces a major new release and functional realignment of its\ntrading solutions software\nhenwood energy services , inc . ( henwood ) recently announced a major new\nrelease of its trading and\nscheduling software , and the overall realignment of its energy trading and\nrisk management functions into a\nnew , strategic lineup of products . henwood \u0001 , s established etrm and\nwebscheduler enerprise software\nproducts have been re - launched into physical trading ( webscheduler ) , trade\ncapture and settlements\n( trademanager ) , and risk management functions ( riskreporter ) , with greatly\nexpanded capabilities to\nmore strategically meet the needs of the rapidly changing energy markets\nthroughout north america . the\nrelease of the new webscheduler ( version 5 . 0 ) , combines a new henwood\nscheduling version with\nhenwood \u0001 , s nerc tagging and iso communication functions to create a\ncomprehensive physical\nmanagement system .\n\" the release of the version 5 webscheduler marks an exciting day , both for\nhenwood and for energy\ncompanies responsible for managing financial and physical energy transactions\nacross north america , \"\nexplained derek porter , vice president - software products . \" our new product\nversion release and overall\nproduct realignment clearly shows henwood \u0001 , s dedication to meet the trading\nneeds of today and anticipate\nthe challenges of tomorrow . \"\nthe new webscheduler is a comprehensive physical management product that\nallows energy organizations\nto manage physical trading issues from creation through delivery . the\nsoftware enables traders , schedulers\nand other energy professionals to conduct their business of physical\nscheduling , iso coordination , and\nsettlement in one seamless operation . some of the new features include :\n- real - time price and volume change log\n- standard ramp assignments\n- dynamic view and form configuration for commodity volume management\n- enhancements to scheduling view management\n- new commodity volume management system\n- show prices\n- on - peak / off - peak definition\n- running totals\n- enhanced back - to - back / bookout function\n- enhanced sub - hour function\n- schedule summary page with copy function\n- quicktrade capability\n- grid copy / paste and export functions\nhenwood is offering training courses for the rollout of the physical trading\napplication , scheduled\nthroughout may in both sacramento and atlanta . dates are currently scheduled\nfor may 2 - 3 , 2001 in\natlanta , and may 23 - 24 , 2001 in sacramento . space is limited , so please sign\nup early .\nhenwood offers integrated business solutions , strategic consulting , and\ninnovative\nebusiness applications to meet the challenges of the restructured energy\nmarkets throughout north\namerica , australasia , and europe , serving clients that include eight of the\nten top utilities in north\namerica , in addition to energy services providers and power marketers . for\nmore information about\nhenwood \u0001 , s trading and risk management applications , please contact derek\nporter at 916 - 569 - 0985\n( email : dporter @ hesinet . com ) . additional information about henwood can be\nobtained by visiting\nwww . hesinet . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.988+0000", "entityId": 10103, "properties": {"text": "Subject: rtp project\nthanks vince . i think the right person is anoush farhangi .\njh\njohn henderson\n- - - - - forwarded by john henderson / hou / newpower on 03 / 19 / 2001 10 : 32 am - - - - -\nvince j kaminski @ ect\n03 / 19 / 2001 08 : 12 am\nto : john henderson / hou / ees @ ees , pinnamaneni krishnarao / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : rtp project\njohn and krishna ,\ni am sending you an outline of a conference at stanford on topics related to\ndemand - side pricing and management in the power markets .\nplease , let me know if you are personally interested and who else\nin your respective organizations would like to attend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 19 / 2001\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhill huntington on 03 / 15 / 2001 05 : 26 : 55 pm\nto : vkamins @ enron . com\ncc :\nsubject : rtp project\nvince ,\ntargetted conference date is th - f june 21 - 22 at stanford . enclosed in the\nrecent revision to what i sent before .\ngreat to meet you ,\nhill\n- retail notes . rtf\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.994+0000", "entityId": 10104, "properties": {"text": "Subject: alliance info alert\nferc acts to remove obstacles to address western energy crisis\n* * omnibus order mobilizes ferc ' s entire energy pricing and infrastructure\nauthority\n* * to adopt financial incentives for capacity increases in transmission\nfacilities\n* * streamlines regulation of wholesale market , energy facilities siting and\nlicensing\n* * promotes conservation and wholesale side of demand - response bidding\n* * order doesn ' t address price caps\n* * meeting with western state regulators / officials set for april 6 , 2001 in\nboise , idaho\nferc moves to bring more economic and reliable energy supplies to the\nstressed california and western energy markets . ferc proposes to increase\nbulk power supply in the west by removing barriers and providing incentives\nthat are within its jurisdiction over facility certification , licensing , and\nthe regulation of transmission and wholesale power sales in interstate\ncommerce . ferc quickly wants to increase electric generation and\ntransmission capacity , as well as to streamline the regulation of wholesale\npower transactions , as well as increase the capacity of the supporting\ninfrastructure of natural gas and oil pipelines . the order , which sets new\nprecedent in its broadness , also proposes actions to reduce electricity\ndemand in the west as well as promoting the necessary wholesale - market\nportion of demand - response bidding where states wish to implement the retail\nside . ferc asks for comments on additional actions it may take in the future\nby march 30 , 2001 .\neffective immediately , ferc said in a statement , * the commission is\nstreamlining regulatory procedures for wholesale electric power sales ,\nexpediting the certification of natural gas pipeline projects into california\nand the west , including the reallocation of staff resources to more quickly\naddress pending pipeline applications , and urging all licensees to review\ntheir ferc - licensed hydroelectric projects in order to assess the potential\nfor increased generating capacity . *\namong the actions ferc takes are to : 1 ) require the california iso and\ntransmission owners within all 11 states of the western systems coordinating\ncouncil ( wscc ) to prepare a list of grid enhancements that can be completed\nin the short term ; 2 ) waive prior notice requirements for any on - site or\nself - generators that sell at wholesale within the wscc area ; 3 ) grant blanket\nmarket - based rate authority for sales on the wholesale market of electric\nenergy that becomes available as a result of demand - response reductions in\nretail and wholesale loads ; and 4 ) broadening and extending through december\n31 , 2001 the temporary waivers of the operating and efficiency standards for\nqualifying facilities ( qfs ) to increase the availability of generating\ncapacity .\nferc seeks comments by march 30 on a series of economic incentives aimed at\nensuring timely upgrades to the western transmission grid , including an\nincreased rate of return on equity ( roe ) for projects that significantly\nincrease transmission and can be in service by either june 1 , 2001 , or\nnovember 1 , 2001 . other areas that ferc requested comment on include the use\nof interconnection authority under the federal power act , and to raise the\ndollar limits on the issuance of blanket certificates authorizing gas\npipeline construction . on hydro issues , ferc requested comment on ways to\nincrease operating flexibility at ferc - licensed projects while protecting\nenvironmental resources .\nin its effort to encourage investment in transmission infrastructure , ferc\nasked for comments - again by march 30 - on a series of economic incentives\naimed at ensuring upgrades to the western interconnection , including the\nincreased roe for projects that significantly increase transmission on\nconstrained paths and can be in service by the above dates in 2001 .\nincreased roe , ferc said , will also be given to system upgrades over new\ntransmission paths that can be in service by june 1 , 2002 , or november 1 ,\n2002 . ferc seeks comment on a proposed 10 - year depreciation period for\nprojects that increase transmission capacity in the short - term and a 15 - year\ndepreciation period for upgrades involving new rights - of - way that can be of\nservice by november 1 , 2002 .\nin his dissent to the order , commissioner massey argued the order focuses on\n\" quick fixes , \" and that the measures will not close the gap between supply in\ndemand in california . the order also \" fails to address price relief , \" noted\nmassey . massey also called for a full federal power act ( fpa ) section 206\ninvestigation of california issues , which would allow for the possibility of\nrefunds . on transmission incentive provisions , massey lamented that the\nproposed roe increase to 14 percent appeared arbitrary and inconsistent with\nferc policy under order no . 2000 . the financial provisions , he said ,\nappeared to be \" just throwing money at the problem . \" while generally\ndisappointed with the order , massey did express limited support for many\nparts of the order . many of the suggestions in the order are the \" same\nactions as authorized last may , \" said massey . \" they were good ideas then ,\nand they are good ideas now , \" he concluded .\nfor his part in comments at the open meeting when the order was adopted ,\nchairman hebert said the order was designed to \" squeeze every additional mw\nof supply available \" and to encourage the conservation of mw , and stressed\nthat ferc is \" doing all it can in its power to alleviate western problems . \"\nhe said the order seeks to eradicate the projected supply shortfall in\ncalifornia , but noted that generation / transmission siting , and conservation\nare generally state issues .\nferc ' s * removing obstacles * order is posted on its web site at :\ncitation : ferc issued is order removing obstacles to increased electric\ngeneration and natural gas supply in the western united states and asking for\ncomments was issued on march 14 , 2001 , docket no . elol - 47 - 000 .\na detailed analysis and summary of the specific actions taken and proposals\nmade follows :\nelectric transmission infrastructure\nwithin 30 days , the california iso and transmission owners in wscc are to\nprepare and file for information purposes a list of grid enhancement projects\nthat may be underway or may not require initial siting and acquisition of\nrights of way .\nferc proposes a scaled transmission infrastructure incentive under which\ntransmission owners of projects that increase transmission capacity at\npresent constraints and can be in service by july 1 , 2001 would receive a\ncost - based rate reflecting a 300 basis point premium return on equity and a\n10 - year depreciable life . projects in service by november 1 , 2001 , would get\na 200 basis point premium and 10 - year depreciable life . ferc would use a\nuniform baseline return on equity for all jurisdictional transmission\nproviders in wscc of 11 . 5 % , based on the roe ferc approved for southern\ncalifornia edison .\nsystem upgrades that involve new rights of way , add significant transfer\ncapability and can be in service by november 1 , 2002 , would get a cost - based\nrate reflecting 12 . 5 % roe , or al 00 basis point premium , and 15 - year\ndepreciable life .\nfacilities needed to interconnect new supply to the grid , which go into\nservice as required to accommodate the in - service date of the new plant would\nget a cost - based rate that reflected a 13 . 5 % roe , or a 200 basis point\npremium , if in service by november 1 , 2001 and 12 . 5 % roe if in service by\nnovember 1 , 2002 .\nfor increases in transmission capacity on constrained interfaces that do not\ninvolve significant capital investments , for example , installing new\ntechnology , ferc proposes to allow transmission owners to increase the\nrevenue requirement of their network service rates to ensure that each\nadditional mw of capacity will generate revenues equal to their current firm\npoint - to - point rate . ferc requests comment on whether to assign the cost of\nany interconnection or system upgrade to a particular load or supply , or\nalternatively , to roll these costs into the average system rate .\nextension of waivers for qfs\nferc proposes to extend its temporary waivers of operating and efficiency\nstandards for qfs - applicable throughout wscc - to allow increased\ngeneration through december 31 , 2001 . the waivers were to expire on april\n30 , 2001 . the proposed waiver would allow qualifying cogenerators to sell\ntheir output above the level at which they have historically supplied this\noutput to purchasing utility . the waiver for qualifying small power\nproduction facilities in wscc with respect to their fuel use requirements\nunder ferc regulation section 292 . 204 ( b ) , would be extended to december 31 ,\n2001 .\nadditional capacity from on - site generation\nferc will adopt streamlined regulatory procedure to accommodate wholesale\nsales from such facilities that serve load within wscc . through december 31 ,\n2001 , owners of generating facilities located at business locations in wscc\nand used primarily for back - up or self - generation who would become subject\nto fpa by virtue of sales of such power will be permitted to sell power at\nwholesale without prior notice under fpa section 205 . ferc also authorizes\nsuch power to be sold at market - based rates . ferc waives its prior notice\nrequirement for mutually agreed upon interconnection agreements for\ninterconnections necessary to accomplish these sales . quarterly reporting is\nrequired .\nallows demand response bidding\nferc will allow retail customers , as permitted by state law , and wholesale\ncustomers to reduce consumption for the purpose of reselling their load\nreduction at wholesale . ferc is granting blanket authorization , consistent\nwith its prior discussion on sales from on - site generation and requires\nsimilar reporting .\nferc ' s december 15 order on the california market directed , as a longer - term\nmeasure that the iso pursue establishing an integrated day - ahead market in\nwhich all demand and supply bids are addressed in one venue . ferc seeks\ncomments on the desirability of accelerating action on this .\nferc says it realizes that states play an important role in regulating retail\nelectric service and that allowing retail load to reduce consumption for\nresale in wholesale markets raises legal , commercial , technical and\nregulatory issues . safeguards may be needed to protect and enhance retail\ndemand - response bidding programs . intention is not to undermine state\nprograms but to promote the necessary complementary wholesale programs .\nrequests comments on how helpful this action is and how it can be\naccomplished consistent with state jurisdiction over retail sales .\ncontract modifications for demand - response bidding\nthere may be opportunities for public utilities to make other types of\ndemand - response arrangements with their wholesale customers . as for mutually\nagreeable qf interconnections , ferc will waive prior notice requirement for\nany mutually agreeable demand - response related rate schedule amendments that\nmay be required to effectuate these arrangements . clarifies that\ndemand - response program costs should be treated consistently with all other\ntypes of incremental and out - of - pocket costs .\ninterconnections\nfpa section 210 ( d ) allows ferc to issue an order requiring interconnection if\nit makes a finding that such an order : 1 ) is in the public interest ; 2 ) would\nencourage overall conservation of energy or capital , optimize the efficiency\nof use of facilities and resources , or improve the reliability of any\nelectric utility system or federal power marketing agency to which the order\napplies ; and 3 ) meets the requirements of fpa section 212 .\nferc requests comments on whether it can use this authority under fpa section\n210 ( d ) to alleviate existing impediments to electricity reaching load . if\nthe exercise of this authority may be warranted , ferc seeks comments on\nwhether it could make some of the required findings generically for the wscc\nregion in order to respond quickly should circumstances arise requiring\nimmediate action .\nlonger term regional solutions\nferc believes an rto for the entire western region or the seamless\nintegration of western rtos is the best vehicle for designing and\nimplementing a long - term regional solution .\nnatural gas pipeline capacity\nferc has realigned its resources to respond to new applications for gas\npipeline capacity and is soliciting comments on ways to expedite the approval\nof pipeline infrastructure needed to serve california and the west . requests\ncomments on how it might further exercise its authority over new pipeline\nconstruction to alleviate the present crisis , including increasing the dollar\nlimit thresholds for blanket certificates to $ 10 million , and for prior\nnotice authorizations to $ 30 million in order to increase the facilities\nqualifying for automatic authorization ; offering blanket certificates for\nconstruction or acquisition of portable compressor stations to enhance\npipeline capacity to california ; and offering rate incentives to expedite\nconstruction of projects that will make additional capacity available this\nsummer on constrained pipeline systems .\nhydroelectric power\nferc staff will hold a conference to discuss methods to address environmental\nprotection at hydro projects while allowing increased generation . requests\ncomments on ways to allow for greater operating flexibility at\ncommission - licensed hydro projects while protecting environmental resources .\ncomments should consider : 1 ) methods for agency involvement ; 2 ) ways to\nhandle and expedite endangered species act consultations ; 3 ) criteria for\nmodifying licenses ; and 4 ) identification of processes that could be\nimplemented to provide efficiency upgrades .\noil pipelines\nferc will explore with oil pipelines innovative proposals that could lead to\nensuring an adequate flow of petroleum product into the california market .\nconference with state commissioners\nferc will hold a one - day conference with state commissioners and other state\nrepresentatives from western states to discuss price volatility in the west\nas well as other ferc - related issues identified by the governors of western\nstates . by notice issued march 16 , this meeting is scheduled for april 6 ,\n2001 in boise , idaho .\n[ source : ferc 03 / 14 / 01 order , docket elol - 47 - 000 , and news release . ]\n- text . htm", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:53.999+0000", "entityId": 10105, "properties": {"text": "Subject: softs in london\nvince ,\nwith regard to the softs curves development , i have been communicating with a\ncouple of folks in london . the key contacts include james willis ( cocoa and\nsugar broker ) and nigel majury ( coffee broker ) . we had a conference call on\nthursday ( heather , trena , erin , james , nigel , frank speight , nelson ) to\ndiscuss data sources , data acquisition , priorities , and timelines . a number\nof data sources were identified ( e . g . , usda , int ' l cocoa organization , ed however , cocoa\nreplaces coffee in the softs importance hierarchy . i suppose that this\nresults from our physical ( or soon to be ) positions in both markets . the\ntimeline hasn ' t changed ; however , adjustments will have to be made since we\nhaven ' t yet acquired all of the necessary data for price modeling . moreover ,\nper our discussion this afternoon , additional thought / time will have to be\ndevoted to corn modeling to come up with an adequate hedging strategy .\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.004+0000", "entityId": 10106, "properties": {"text": "Subject: meeting with vince\ndear shirley ,\nas you may know , i am taking the research over from steve ( i have always\nthought that steve ' s movement from the research is a big loss for all us ) .\nplease , could you help us arrange the meeting with vince when he is here in\nlondon .\nthank you very much for your future help .\nslava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.009+0000", "entityId": 10107, "properties": {"text": "Subject: journal of applied corporate finance\nvince :\ni hope you received the winter issue of the jacf . your article was great .\nmany of the issues and themes raised in that piece can be expanded upon . the\nsame holds for the round table discussion which included gene humphrey .\nfinally . i would love to get your assessment of the real option article i\nwrote with gordon sick .\nbest regards ,\njohn l . mccormack\nsvp , stern stewart & co .\n212 - 261 - 0740\nnote : the information contained in this message may be privileged and\nconfidential and protected from disclosure . if the reader of this message is\nnot the intended recipient , or an employee or agent responsible for\ndelivering this message to the intended recipient , you are hereby notified\nthat any dissemination , distribution or copying of this communication is\nstrictly prohibited . if you have received this communication in error , please\nnotify us immediately by replying to the message and deleting it from your\ncomputer . thank you . stern stewart & co .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.015+0000", "entityId": 10108, "properties": {"text": "Subject: karthik rajan - interview schedule\nattached you will find the interview packet for the above - referenced person .\nthe interview will happen friday , march 30 , 2001 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsasha divelbiss\n58714", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.021+0000", "entityId": 10109, "properties": {"text": "Subject: listo 319\nisranir @ rice . edu , demianen @ rice . edu , tbal 93 @ yahoo . com , maue @ rice . edu ,\nloughrid @ rice . edu , jblantonjr @ yahoo . com , gjohnson @ rice . edu ,\nemchombo @ rice . edu , nazareth @ rice . edu , vanstone @ rice . edu , ganguzza @ rice . edu ,\nnelsonb @ rice . edu , sssmith @ rice . edu , wheelock @ rice . edu , westmore @ rice . edu ,\ngaudette @ rice . edu , otaylor @ rice . edu , dikeman @ rice . edu , jettke @ rice . edu ,\nlitton @ rice . edu , chilkina @ rice . edu , helms @ rice . edu , wankhade @ rice . edu ,\nmonfan @ rice . edu , kostya @ rice . edu , pcp @ rice . edu , yueguo @ rice . edu ,\nnlwbio @ rice . edu , zhangn @ rice . edu , rishad @ rice . edu , yoshiura @ rice . edu ,\nhoward @ rice . edu , dayangd @ rice . edu , wuwei @ rice . edu , so @ rice . edu ,\nwooddy @ rice . edu , lamas @ rice . edu , tbalestrery @ houston . rr . com ,\nhingoran @ rice . edu ,\nplanck @ rice . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.026+0000", "entityId": 10110, "properties": {"text": "Subject: rice / enron finance seminar series\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 19 / 2001\n08 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbarbara ostdiek on 03 / 16 / 2001 03 : 33 : 59 pm\nto : ostdiek @ rice . edu\ncc :\nsubject : rice / enron finance seminar series\nenron seminar series in finance\njones graduate school of management , rice university\npaul schultz\nuniversity of notre dame\nwill give a seminar at the jones school on friday , march 30 , ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? \u0001 & who makes markets \u0001 8\nthe seminar will begin at 3 : 30 in room 115 .\nthe paper will be made available shortly .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.030+0000", "entityId": 10111, "properties": {"text": "Subject: encounter article - shalesh ganjoo\nwe have conducted an interview and written the attached article for the\nupcoming edition of the encounter , the associate & analyst programs '\nnewsletter . the interview was conducted with shalesh ganjoo in regards to\nhis participation with the implementation of storage capacity as a\ncommodity .\nto ensure our publication is printing the most accurate information , i have\nattached the article for your review . please confirm that the information\nprovided from shalesh ganjoo is accurate .\nthank you in advance for your assistance ,\ntracy arthur\ncommunication specialist\nassociate & analyst department\n713 - 345 - 7853", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.038+0000", "entityId": 10112, "properties": {"text": "Subject: stanford associate recruiting\ni would like to take this opportunity to thank each of you for your\nparticipation in the stanford associate interviews last week . our efforts\nresulted in 6 summer associate offers and 1 full - time associate offer .\nalthea gordon will be e - mailing you the names of the individuals who will\nreceive offers . we would like you to contact these individuals to\ncongratulate them and encourage their acceptance . althea will match you up\nwith the candidates you interviewed and provide you with contact information .\nalthea has verbally contacted both the offers and the declines . we will be\nsending out both offer letters and decline letters by end of day tuesday ,\nmarch 20 . in the meantime , should any of you be contacted by students who\ndid not receive an offer , i recommend the following verbal response :\n\" our summer program is highly competitive , forcing us to choose a smaller\nnumber of candidates from a highly qualified pool . our summer hiring this\nyear will be between 35 - 40 associates . the full - time program typically hires\nbetween 80 - 90 associates . given that you made it this far in our selection\nprocess , i would strongly encourage you to apply in the fall for the\nfull - time associate program . \"\nwe will keep you informed via e - mail of our acceptance rate at stanford .\nagain , thank you for your support . we look forward to working with you on\npotential future stanford recruiting events .\nregards ,\nceleste roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.046+0000", "entityId": 10113, "properties": {"text": "Subject: re : rtp project\nyes , i would be definitely interested . count me and osman also to\nparticipate . i will forward your email to others in ees who might be\ninterested also .\nkrishna .\nvince j kaminski\n03 / 19 / 2001 08 : 12 am\nto : john henderson / hou / ees @ ees , pinnamaneni krishnarao / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : rtp project\njohn and krishna ,\ni am sending you an outline of a conference at stanford on topics related to\ndemand - side pricing and management in the power markets .\nplease , let me know if you are personally interested and who else\nin your respective organizations would like to attend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 19 / 2001\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhill huntington on 03 / 15 / 2001 05 : 26 : 55 pm\nto : vkamins @ enron . com\ncc :\nsubject : rtp project\nvince ,\ntargetted conference date is th - f june 21 - 22 at stanford . enclosed in the\nrecent revision to what i sent before .\ngreat to meet you ,\nhill\n- retail notes . rtf\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.053+0000", "entityId": 10114, "properties": {"text": "Subject: rtp project\njohn and krishna ,\ni am sending you an outline of a conference at stanford on topics related to\ndemand - side pricing and management in the power markets .\nplease , let me know if you are personally interested and who else\nin your respective organizations would like to attend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 19 / 2001\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhill huntington on 03 / 15 / 2001 05 : 26 : 55 pm\nto : vkamins @ enron . com\ncc :\nsubject : rtp project\nvince ,\ntargetted conference date is th - f june 21 - 22 at stanford . enclosed in the\nrecent revision to what i sent before .\ngreat to meet you ,\nhill\n- retail notes . rtf\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.058+0000", "entityId": 10115, "properties": {"text": "Subject: re : wharton business plan competition\nhi vince !\nplease see the wharton information below , as well as jeff ' s comments .\ndo you want to be the judge ?\nplease let me know asap .\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 03 / 19 / 2001 01 : 53 pm - - - - -\njeffrey a shankman / enron @ enronxgate\n03 / 19 / 2001 11 : 18 am\nto : christie patrick / hou / ect @ ect\ncc :\nsubject : re : wharton business plan competition\ni ' ll be in new york that week . ask vince .\njeff\n- - - - - original message - - - - -\nfrom : patrick , christie\nsent : monday , march 19 , 2001 9 : 43 am\nto : shankman , jeffrey a .\nsubject : fw : wharton business plan competition\nimportance : high\njeff ,\nplease see wharton business plan information below .\ndo you want to be the judge ?\nthanks !\n- - christie .\n- - - - - forwarded by christie patrick / hou / ect on 03 / 19 / 2001 09 : 40 am - - - - -\n\" stamer , anne \" 03 / 19 / 2001 08 : 42 am to :\n\" ' christie . patrick @ enron . com ' \" cc : subject :\nfw : wharton business plan competition\nhi christie :\ni hope this email finds you well . the wharton business plan competition is\ngoing really well .\nwe would really like to enron participate . is someone from your company\navailable to be a be a judge for our phase iii ? attached is some\ninformation .\nanne\n- - - - - original message - - - - -\nfrom : andrew gaffney [ mailto : gaffneya @ wharton . upenn . edu ]\nsent : thursday , march 08 , 2001 9 : 47 am\nto : christie . patrick @ enron . com\ncc : stamer , anne\nsubject : wharton business plan competition\ndear ms . patrick ,\nanne stamer asked me to contact you regarding enron providing a judge for\nphase iii of the business plan competition . phase iii judges are generally\npartner - level individuals at venture capital firms , managing directors from\ninvestment banks , or other senior individuals who have extensive experience\nassessing and working with early stage ventures . a phase iii judge will\nreceive five business plans , with the entire judging process requiring 4 - 5\nhours during the weeks of april 2 and april 9 . i am attaching a document\nthat describes the competition and judging procedures for phase iii in more\ndetail . we are looking to finalize the list of phase iii judges by march\n23 , so if you could please forward either anne or i the name of the\nappropriate individual , we can contact them directly with more details .\nplease let me know if you have further questions and we appreciate your\nsupport of the competition .\nsincerely ,\nandrew gaffney\n- phase iii judge info 00 - 01 . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.062+0000", "entityId": 10116, "properties": {"text": "Subject: re : credit rating contact ?\nkim ,\ni spoke with bill bradford , vp in enron ' s credit department , and he offered\nto field your questions regarding credit . he will be in the office this\nweek . you can call him at 713 - 853 - 3831 .\nregarding nymex traders , what kind of trader are you interested in ? larry\ngagliardi trades nymex crude products . let me know if you need his number\nagain , or if you think someone else would be more helpful .\ngood luck\nken\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nwe are still interested in talking to someone in the risk assessment group\nabout credit rating systems .\ncould you get us the name of the contact who trades directly with nymex ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.067+0000", "entityId": 10117, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the request you have placed using it\ncentral .\nrequest number : ecth - 4 uznuy\norder for : vince\n1 x ( compaq armada m 700 $ 2722 ) enron it purchasing\n* please send all status inquiries regarding this request to :\nmailto : receiving & hardware @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.072+0000", "entityId": 10118, "properties": {"text": "Subject: financial engineering invoice # 2001 - m 608\nconnie :\nin response to your email to vince kaminski of 3 / 19 / 01 , the subject invoice\nwas sent to our accounting dept . for payment on february 25 , 2001 . we\ndid not need the spav maintenance , so we deducted $ 1 , 600 . 00 . did you\nreceive a payment in the amount of $ 4100 . 00 that could possibly have been\npayment for this invoice ?\ni have left a message for our accounting dept . to see exactly when the invoice\nwas paid and the check number . as soon as i hear from them i will left you\nknow .\nbest regards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.078+0000", "entityId": 10119, "properties": {"text": "Subject: larry thorpe\nhi vince ,\nbeen meaning to ask for your input about larry thorpe ' s proprietary model for\nelectricity returns . i have not been able to get much information about the\nparameters as larry says the nature is proprietary . it is hard to make a\njudgement about its usefulness without such information .\nlarry ' s e - mails to me indicate that he is working on npl 5 real time prices\nand he promises to share the results with us . please advise on direction to\ntake as i am not quite sure about the model without further information .\nseparately , larry indicated that you had promised him some data and would\nlike to know if you have forwarded it to him . i can convey your position to\nhim .\nthanks .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.082+0000", "entityId": 10120, "properties": {"text": "Subject: re : resume\nhow did it go with renshi zhang and bill koures ? renshi has two offers\nalready . if you want to persue him , i would recommend moving quickly .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : monday , march 12 , 2001 6 : 36 pm\n> to : marshall . brown @ robertwalters . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : resume\n>\n>\n> marshall ,\n>\n> i am catching up with my mail . we would like to talk to this candidate as\n> well\n> ( phone interview ) .\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 02 / 21 / 2001 12 : 36 : 39\n> pm\n>\n> to : vince kaminski\n> cc :\n> subject : resume\n>\n>\n> vince ,\n> this candidate would be interested in speaking with you .\n> regards ,\n>\n> marshall brown\n> vice president\n> robert walters associates\n> tel : ( 212 ) 704 - 0596\n> fax : ( 212 ) 704 - 4312\n> mailto : marshall . brown @ robertwalters . com\n> http : / / www . robertwalters . com\n>\n>\n> >\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> ( see attached file : kour _ vas . doc )\n>\n> >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.087+0000", "entityId": 10121, "properties": {"text": "Subject: joe carson\ngreg ,\ntwo things i did not manage to mention to you at the meeting on monday .\n1 . joe carson . i was very positively impressed by joe carson .\nenron badly needs a senior economist of his stature and\nexperience . he has many contacts in the industry and can represent\nenron well . he is very pragmatic and , also , i expect a cool head on old\nshoulders .\none negative is that he wants to work out of new york . the tradeoff is\nbetween\nmaintaining his contacts and working closer with the desks .\n2 . tony mends . i think you , or louise , should explore the possibility of\nusing the skills of tony mends .\ntony and i are good friends so i may be biased . i think that he is a very\nsmart\nand efficient person and can contribute a lot to the organization that\nrelies\non processing huge volumes of information .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.092+0000", "entityId": 10122, "properties": {"text": "Subject: rtp project\nmr huntington\nwe at the new power company are very interested in participating in this\nconference . we are going through a major initiative to shed light on the\nbenefits of real - time pricing and determining the price elasticity of various\ncomponents of retail demand . kindly include us as participants in this\nconference . sincerely ,\nanoush farhangi\nvice president , load research\nnew power company\n713 . 853 . 9273", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.097+0000", "entityId": 10123, "properties": {"text": "Subject: re : rtp project\nplease count the following 3 people from enron energy services to attend the\nconference :\nanoush farhangi\nosman sezgen\np v krishnarao\nif there are additional people interested in attending the conference , i will\nlet you know .\nbest regards ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n03 / 20 / 2001 03 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 19 / 2001 11 : 32 am\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : re : rtp project\nkrishna ,\nplease , confirm with hill huntington .\nvince\npinnamaneni krishnarao\n03 / 19 / 2001 09 : 28 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : rtp project\nyes , i would be definitely interested . count me and osman also to\nparticipate . i will forward your email to others in ees who might be\ninterested also .\nkrishna .\nvince j kaminski\n03 / 19 / 2001 08 : 12 am\nto : john henderson / hou / ees @ ees , pinnamaneni krishnarao / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : rtp project\njohn and krishna ,\ni am sending you an outline of a conference at stanford on topics related to\ndemand - side pricing and management in the power markets .\nplease , let me know if you are personally interested and who else\nin your respective organizations would like to attend .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 19 / 2001\n08 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhill huntington on 03 / 15 / 2001 05 : 26 : 55 pm\nto : vkamins @ enron . com\ncc :\nsubject : rtp project\nvince ,\ntargetted conference date is th - f june 21 - 22 at stanford . enclosed in the\nrecent revision to what i sent before .\ngreat to meet you ,\nhill\n- retail notes . rtf\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.102+0000", "entityId": 10124, "properties": {"text": "Subject: eol project\nvince ,\njust to update you on how things are going with regard to eol -\ni had a meeting with john arnold yesterday to show him what had been\naccomplished to date , and i think that he was fairly impressed by the\ninformation available . i asked him for his input , and he expressed his\ninterest in having a couple of reports made up that couldn ' t be created from\nthe format the data was in . i spoke to clayton about this , and he has already\nmade changes that will reflect a number of the modifications john requested .\ni am also continuing to research the issue of an automated trading platform\nfor eol . i have some information about how the nasdaq operates , and i have\nlooked at some websites for ecns , such as archipelago , island and instinet . i\nhave also had a look at the international securities exchange ( ise ) web - site ,\nbut they do not seem to explain much about their system . any further\nsuggestions would be appreciated .\ni want to find out more about where eol is currently and what modifications\nmay be necessary in the existing system , finish reading the material at the\nwebsites i have investigated , and then i will try to put together a\npresentation for you and / or greg whalley .\ntom", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.107+0000", "entityId": 10125, "properties": {"text": "Subject: changes in option valuation in enpower\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 03 / 21 / 2001 08 : 33 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : harry arora / enron @ enronxgate on 03 / 21 / 2001 07 : 26 am\nto : sanjay gupta / enron @ enronxgate , steve nat / enron @ enronxgate\ncc : zimin lu / hou / ect @ ect\nsubject : changes in option valuation in enpower\nsanjay\nwanted to confirm the changes to the option valuations in the enpower we\ndiscussed yesterday evening .\n1 . currently the trader volatility inputs are the daily vol curve and the\nintra - monthly vol curve . the monthly options get marked directly to the\nmonthly curve ( plus the smile ) and the monthlies get marked to a time blend\nof monthly and intra - month vol ( plus the skew ) .\nwe want to change the valuation ( for the eastern books ) so that the dailies\nget marked to the intramonth curve ( which we want to call the daily curve )\nand the monthly gets marked to the monthly curved . there will be not vol\nblending done by the enpower system for the daily and monthly option\nvaluations . we want to make this change very soon ( by early next week )\n2 . currently there exists one smile for every region , which is specified in\nterms of volatility additive for specified dollar difference from the\nunderlying . since different months in a region can trade in a large range\n( $ 35 - $ 150 ) - this cannot result in accurate skew for all terms . what we\nneed is a system which has skew per month .\nwe suggest , for the short term , the skew should apply only to the summer\ndaily expiration options . we need to make this change by early next week .\nhowever , we need to start modifing the system so that for every region we\ncan enter a grid which has a percentage scale and specifies the skew\ndifferently for each month . research , has implemented this in our pricing\nmodel , and we would like this grid to be input into the valuation system . i\nam enclosing the pricing model ( which we both discussed yesterday ) for\nreference . this model is however , work under construction , so pls call alex\nhuang for clarifications .\n3 . the vol input system is complex and confusing .\ni would very much be interested in moving to a direct database interface ,\nwhich accomodates the skew inputs per region as in . we should implement a\nui which can input the dailies and monthlies at the moneys and the skew grid\ndirectly - so that we do not need to go through multiple iterations .\ni am very much interested in what we currently are releasing in delphi and\nwould love an early implementation for options .\non all these issues , i am speaking for the east desk . i am going to touch\nbase with west guys and see if they are on board with these changes .\nthanks\nharry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.112+0000", "entityId": 10126, "properties": {"text": "Subject: dinner speaker - may 23\nvince :\nmichael crew would like you to be a speaker on wednesday , may 23 rd\ninstead of the 24 th at the rutgers conference . is this ok ?\nhe is preparing the agenda and needs to know as soon as possible .\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 21 / 2001\n02 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" michael a . crew \" on 03 / 21 / 2001 10 : 07 : 52 am\nto : shirley . crenshaw @ enron . com\ncc : vkamins @ enron . com , crri @ andromeda . rutgers . edu ,\nkleindorfer @ wharton . upenn . edu\nsubject : dinner speaker - may 23\nshirley ,\nthis is to follow up today ' s conversation with anita . as mentioned paul\nkleindorfer invited vince to be our dinner speaker on thursday , may 24 . on\nreflection given the strong line up for wednesday - fred kahn et al - we\nwould very much like vince to be the speaker on wednesday . this will\nconclude the day very well giving participants a strong incentive to be there\nfor the wednesday .\ni gather that this change should be acceptable to vince .\nwe will show vince ' s name as follows :\nwincety j . kaminski\nmanaging director - research\nenron\njeremy will be em ailing you the program with this information immediately .\nwe would like to go to press today . failing that we can go to press\ntomorrow . we would very much appreciate your confirming this and making any\ncorrections or changes . if you would respond to all of us it would be\nappreciated .\nmichael\nmichael a . crew\nprofessor ii\ndirector - center for research in regulated industries\neditor - journal of regulatory economics\nrutgers university , graduate school of management\n180 university avenue\nnewark , n . j . 07102 - 1897\nphone : 973 353 5049 fax : 973 353 1348\nhttp : / / www - rci . rutgers . edu / ~ crri", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.120+0000", "entityId": 10127, "properties": {"text": "Subject: re : dinner speaker - may 23\ndear mr . kaminski ,\n?\nattached ? is the brochure of the eastern conference . ? i have listed you as\nthe dinner speaker for the evening of wednesday , may 23 , 2001 . ? please\nensure that your name and title is correct . ? if you have any questions or\nconcerns please feel free to contact me .\n?\nsincerely ,\n?\njeremy t . guenter\nadministrative assistant\ncenter for research in regulated industries\nrutgers university - graduate school of management\n180 university avenue , room 200 p\nnewark , nj 07102 - 1897\nphone : 973 - 353 - 5761 ; fax : 973 - 353 - 1348\nhttp : / / www . rci . rutgers . edu / ~ crri\ncrri @ andromeda . rutgers . edu ?\n- - - - - original message - - - - -\nfrom : michael a . crew [ mailto : mcrew @ andromeda . rutgers . edu ]\nsent : wednesday , march 21 , 2001 11 : 08 am\nto : shirley . crenshaw @ enron . com\ncc : vkamins @ enron . com ; crri @ andromeda . rutgers . edu ;\nkleindorfer @ wharton . upenn . edu\nsubject : dinner speaker - may 23\nshirley ,\nthis is to follow up today ' s conversation with anita . as mentioned paul\nkleindorfer invited vince to be our dinner speaker on thursday , may 24 . on\nreflection given the strong line up for wednesday - fred kahn et al - we\nwould very much like vince to be the speaker on wednesday . this will\nconclude the day very well giving participants a strong incentive to be\nthere for the wednesday .\ni gather that this change should be acceptable to vince .\nwe will show vince ' s name as follows :\nwincety j . kaminski\nmanaging director - research\nenron\njeremy will be em ailing you the program with this information immediately .\nwe would like to go to press today . failing that we can go to press\ntomorrow . we would very much appreciate your confirming this and making any\ncorrections or changes . if you would respond to all of us it would be\nappreciated .\nmichael\nmichael a . crew\nprofessor ii\ndirector - center for research in regulated industries\neditor - journal of regulatory economics\nrutgers university , graduate school of management\n180 university avenue\nnewark , n . j . 07102 - 1897\nphone : 973 353 5049 fax : 973 353 1348\nhttp : / / www - rci . rutgers . edu / ~ crri\n- ecol . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.127+0000", "entityId": 10128, "properties": {"text": "Subject: dinner speaker - may 23\nshirley ,\nthis is to follow up today ' s conversation with anita . as mentioned paul\nkleindorfer invited vince to be our dinner speaker on thursday , may 24 . on\nreflection given the strong line up for wednesday - fred kahn et al - we\nwould very much like vince to be the speaker on wednesday . this will\nconclude the day very well giving participants a strong incentive to be there\nfor the wednesday .\ni gather that this change should be acceptable to vince .\nwe will show vince ' s name as follows :\nwincety j . kaminski\nmanaging director - research\nenron\njeremy will be em ailing you the program with this information immediately .\nwe would like to go to press today . failing that we can go to press\ntomorrow . we would very much appreciate your confirming this and making any\ncorrections or changes . if you would respond to all of us it would be\nappreciated .\nmichael\nmichael a . crew\nprofessor ii\ndirector - center for research in regulated industries\neditor - journal of regulatory economics\nrutgers university , graduate school of management\n180 university avenue\nnewark , n . j . 07102 - 1897\nphone : 973 353 5049 fax : 973 353 1348\nhttp : / / www - rci . rutgers . edu / ~ crri", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.132+0000", "entityId": 10129, "properties": {"text": "Subject: contact info\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 03 / 21 / 2001\n10 : 27 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin _ kindall @ fpl . com @ fpl . com on 03 / 21 / 2001 10 : 25 : 28 am\nto : shirley . crenshaw @ enron . com , anita . dupont @ enron . com\ncc :\nsubject : contact info\nhi . i have email access ! ! my contact info . . .\nphone number : ( 561 ) 625 7525\nfax : ( 561 ) 625 7519\nfeel free to forward this info to other members of the group . i ' m\nstill in corporate housing , so no home address yet .\nthe only loose end that i can think of pertains to an issue that came\nup in the exit interview . am i to be reimbursed for unused vacation ?\nnorma villereal said something about this , but i ' m not certain about the\ndetails .\nstay in touch .\nkevin kindall", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.142+0000", "entityId": 10130, "properties": {"text": "Subject: re : summer internship\njinbaek ,\nthe answer to the lst question is yes .\nthe project list is fine with me and is still valid . we are an organization\ndriven by the needs of our internal customers .\ni shall froward your message to the person in ebs .\nhopefully , we shall get a positive response .\nvince\njinbaek kim on 03 / 15 / 2001 01 : 12 : 32 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : summer internship\ndr . kaminski ,\nsorry for the late response ,\nit took me some time to coordinate things .\nfinally , it ' s almost dont : - )\nit turned out that from june to august\nwill be best for me for work at enron\n( say june . 4 to august . 4 )\nbut i still need to know several things from your side .\ncould you answer following questions ?\nfirst :\nis my suggested working period is ok with you ?\nif so , let me know what to do for settlement\nduring the period .\nsecond :\ni got a list of work , i might be able to do for\ndealbench team from ross and suresh .\ni ' d like to know it is still a valid work list :\nthe list he sent is as following :\n> 1 . write a paper in layman ' s terms that answers\n> questions like the following :\n> benefits of auctioning online for both buyers and\n> sellers , particularly in reverse auctions\n> explanation how multi - variable auctions are not\n> as efficient as price - only auctions ( is this true ? )\n> how many participants are recommended for a\n> successful live auction\n> what types of goods and services are best suited\n> for live auctions versus sealed bid quotes\n> opinions on lotting strategies\n> trends in online private auctions\n> 2 . identify appropriate recent auction research ( 3\n> or 4 papers out of the 90 + you provided ) and obtain approvals from the\n> authors to post on our site\n> 3 . create a list / bibiliography of relevant auction\n> literature ( with hyperlinks ? )\n> 4 . would you be willing to offer auction consulting\n> services to our customers ( if they are interested )\nthird :\nthere is an e - procurement forum at haas school of business ,\nin may 22 . the chair of the forum is my advisor prof . arie segev .\na person from wells fargo bank will talk about wells fargo ' s role\nin e - marketplace payment initiative ,\nwhere enron broadband services is also one of key players\nalong with citibank .\nhe asked me whether you can contact a person at\nenron broadband services , who ' s related to the initiative .\nhe wants to know whether we will have a speaker from enron\nto see enron ' s perspective , in the forum .\nhere is a link to news related to the initiative ,\nfourth :\nmy advisor wants to know whether\nthere could be any opportunity to do a case study ,\nregarding enron ' s business .\nhe is interested in e - procurement and e - marketplaces .\nbusiness model and system architecture . . .\nthanks for reading this long email .\ni ' ll look forward to your answer . .\ni am sorry for giving you so much burden\nto answer those questions possibly not easy to answer .\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non mon , 5 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> this is fine though you are welcome to spend more\n> time with us this summer .\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 03 / 04 / 2001 03 : 45 : 40 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : summer internship\n>\n>\n> dr . kaminski ,\n>\n> thanks for your answer .\n> before i tell you the time frame ,\n> i ' ll need to talk with my advisor , first .\n> because here is an on - going - project .\n> i need to coordinate the schedule .\n>\n> i ' ll appreciate it if you understand my situation ,\n> and give me some time ( less than a week , of course ) .\n>\n> for your reference ,\n> probably\n> the dates i ' d like to ask you will be\n> from mid - may to mid - july ( 2 months )\n>\n> warm regards ,\n> jinbaek\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> jinbaek kim\n> ph . d candidate\n> dept . of industrial engineering and operations research\n> u . c . berkeley\n> http : / / www . ieor . berkeley . edu / ~ jinbaek\n>\n> go bears !\n>\n> : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> : a a : _ _ . . . . . _\n> : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> : . ' : ` . : ` , ` .\n> ` . : ' - - ' - - ' : . ' ; ;\n> : ` . _ ` - ' _ . ' ; . '\n> ` . ' \" ' ;\n> ` . ' ;\n> ` . ` : ` ;\n> . ` . ; ; : ;\n> . ' ` - . ' ; : ; ` .\n> _ _ . ' . ' . ' : ; ` .\n> . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> ` . . . . . . . - ' ` . . . . . . . . '\n>\n>\n> on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> >\n> > jinbaek ,\n> >\n> > you can coordinate the details with me .\n> > let me know what the time frame is for you\n> > and we shall send you an appropriate offer .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > jinbaek kim on 03 / 02 / 2001 04 : 43 : 06 pm\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : summer internship\n> >\n> >\n> > dr . kaminski ,\n> >\n> > thank you very much .\n> > of course , i ' ll be happy to have an opportunity\n> > to work at such a wonderful company .\n> > i was contacting with surech raghavan at deal bench team ,\n> > and was going to express my appreciation to you again\n> > after settling down process with them .\n> >\n> > for the period of working ,\n> > i still need to coordinate with my advisor and\n> > may need to adjust according to that .\n> > but anyway , i ' ll try to coordinate smoothly .\n> >\n> > please let me know whether i should keep contacting\n> > with deal bench team ,\n> > for working period and\n> > for misc . living support such as finding a place , rent a car , etc .\n> >\n> > i appreciate you so much again ,\n> > for arranging such meetings and giving me an opportunity .\n> > all this opportunity will not be available to me ,\n> > without your kind help .\n> >\n> > warm regards ,\n> > jinbaek\n> >\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > jinbaek kim\n> > ph . d candidate\n> > dept . of industrial engineering and operations research\n> > u . c . berkeley\n> > http : / / www . ieor . berkeley . edu / ~ jinbaek\n> >\n> > go bears !\n> >\n> > : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> > : a a : _ _ . . . . . _\n> > : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> > : . ' : ` . : ` , ` .\n> > ` . : ' - - ' - - ' : . ' ; ;\n> > : ` . _ ` - ' _ . ' ; . '\n> > ` . ' \" ' ;\n> > ` . ' ;\n> > ` . ` : ` ;\n> > . ` . ; ; : ;\n> > . ' ` - . ' ; : ; ` .\n> > _ _ . ' . ' . ' : ; ` .\n> > . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> > ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> > ` . . . . . . . - ' ` . . . . . . . . '\n> >\n> >\n> > on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> >\n> > > hello ,\n> > >\n> > > sorry for a delay in getting back to you .\n> > > we would like very much to offer you a summer internship .\n> > >\n> > > please , let me know if you are interested .\n> > >\n> > > vince kaminski\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.150+0000", "entityId": 10131, "properties": {"text": "Subject: re : vacation\nshirley ,\nno problem .\nvince\nshirley crenshaw\n03 / 14 / 2001 07 : 47 am\nto : vince j kaminski / hou / ect @ ect\ncc : anita dupont / na / enron @ enron , kevin g moore / hou / ect @ ect , leann\nwalton / na / enron @ enron\nsubject : vacation\nvince :\nif it is ok , i would like to take friday , april 6 th as a vacation day .\nalso , just a reminder i will be on vacation tomorrow and friday .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.155+0000", "entityId": 10132, "properties": {"text": "Subject: re : lawyer\nian ,\nsorry for a delay in responding to you .\ni am currently in london , flying back to houston tomorrow .\nthe problem is not with the lawyers . we worked on our presentation\nmaterials together with a professor from another university\nand we agreed to use these materials only internally .\nwe have to honor our commitment to him . i am sure\nthat this is exactly what you would have expected from us if we had\nmade a similar commitment to you .\nvince\n\" macmillan , ian \" on 03 / 21 / 2001 04 : 31 : 27 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : lawyer\nwhat do i need to do to move this thing forward ?\ni suspect that the problem is basically with the lawyers . they only know how\nto stop things , but in a way they play a role in global society . if it were\nnot for the handicaps they lay on us the rest of the world would never have a\nchance .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : macmilli @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsent : 3 / 8 / 01 12 : 12 pm\nsubject : re : lawyer\nian ,\nsorry for a delay in getting back to you .\ni have one challenge i did not anticipate\nwhen i talked to you the first time about our real options\ninternal seminar .\nthe materials were prepared in collaboration with a professor\nfrom another school , and there is some sensitivity regarding\nthe intellectual property rights and the ability to distribute the\nmaterials\noutside enron .\nplease , give me some time to find out if i can work\naround this issue .\nvince\n\" macmillan , ian \" on 03 / 07 / 2001 06 : 46 : 28 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : lawyer\ni still have not heard from your lawyer . i would like to see whar\nmaterials you are using and assess how we could work on the topic of\nreal\noptions with enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.160+0000", "entityId": 10133, "properties": {"text": "Subject: re : lawyer\nwhat do i need to do to move this thing forward ?\ni suspect that the problem is basically with the lawyers . they only know how\nto stop things , but in a way they play a role in global society . if it were\nnot for the handicaps they lay on us the rest of the world would never have a\nchance .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : macmilli @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsent : 3 / 8 / 01 12 : 12 pm\nsubject : re : lawyer\nian ,\nsorry for a delay in getting back to you .\ni have one challenge i did not anticipate\nwhen i talked to you the first time about our real options\ninternal seminar .\nthe materials were prepared in collaboration with a professor\nfrom another school , and there is some sensitivity regarding\nthe intellectual property rights and the ability to distribute the\nmaterials\noutside enron .\nplease , give me some time to find out if i can work\naround this issue .\nvince\n\" macmillan , ian \" on 03 / 07 / 2001 06 : 46 : 28 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : lawyer\ni still have not heard from your lawyer . i would like to see whar\nmaterials you are using and assess how we could work on the topic of\nreal\noptions with enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.165+0000", "entityId": 10134, "properties": {"text": "Subject: re : estimating tail of distribution and additional risk measures\nnaveen ,\nthe \" analytical var \" approach is working for equity portfolio .\nit gives us the tool to examine the tails ' behavior for this portfolio and\ncalculate \" expected tail loss \" .\nthe same should be done for commodities portfolio as well .\nmeanwhile , as we discussed , we can give some rough estimates of the losses\ncorresponding to percentiles other than 5 th .\nlook at the figure below . you can see var numbers for 5 % , 1 % , 0 . 5 % and 0 . 1 %\ncalculated with\n1 ) simulations ( 100 thousand simulations ) ;\n2 ) analytical var ( gamma - delta positions representation )\n1 ) and 2 ) are very close because there are not many options in equity\nportfolio .\n3 ) simulations ( 1000 simulations ) to calculate 5 % var . then in order to\napproximately estimate var for 1 % , 0 . 5 % and 0 . 1 %\ni scaled 5 % var with factors corresponding to normal distribution ( for\nexample : norminv ( 0 . 001 , 0 , 1 ) / norminv ( 0 . 05 , 0 , 1 ) for 0 . 1 % ) .\nthe result of such extrapolation in this case is quite good ( just 5 %\ndifferent from the correct number ) .\nwe probably can use such rough estimates of tail for commodities portfolio\nuntil we have proper methods implemented .\ntanya tamarchenko\n02 / 28 / 2001 01 : 17 pm\nto : wenyao jia / hou / ect , debbie r brackett / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : \" analytical \" var implementation in risktrac\ndebbie ,\ni am forwarding to you a 2 page document describing implementation of\n\" analytical \" var in risktrac .\nhere is why this effort is very important :\n1 . we need to calculate var for other percentile but 5 ( 1 % or even 0 . 2 % as\nmentioned by rick buy )\nand our simulation model can not handle required number of simulations ;\n2 . we need to present additional risk measures ( such as mean tail loss ) to\nthe board .\nthe analytical approach is implemented in a spreadsheet and fully tested\nalready so there will be no problems\nwith the algorithm itself .\nwe need to get together and discuss it implementation .\nwhat do you think ?\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.169+0000", "entityId": 10135, "properties": {"text": "Subject: platts energy trader free trial\nplease find today ' s complimentary issue of platts energy trader attached\nabove . if you have any questions or would like to subscribe now , call\n877 - 286 - 8897 or 212 - 904 - 2004 ; e - mail , info @ platts . com . meanwhile , we hope you\nenjoy today ' s issue of platts energy trader .\nif you need to download acrobat reader to read this file , go to\nwww . adobe . com . to stop the free trial , hit reply and type \" stop trial . \"\n- eto 32301 . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.174+0000", "entityId": 10136, "properties": {"text": "Subject: please read\nmike :\nenron is one of only a handful of institutions that could facilitate the\nfollowing ( see attached ) . call to discuss if you ' re interested .\nbest regards ,\n- pressrelease . pdf\n- monetization . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.180+0000", "entityId": 10137, "properties": {"text": "Subject: help on cluster analysis\njust wanted to pass a quick note to say thanks for all of your help that the\nthree of you each gave me concerning cluster analysis . your help was\ninvaluable . as you may have been aware , we were performing the cluster\nanalysis to define the commercial zones in ercot . i only had a few days in\nwhich to learn the fastclus procedure in sas and prepare graphical views of\nthe results .\nyour assistance ensured that enron was seen as one of three market leaders\nwho had the capability to perform the analysis and cross check other market\nparticipants analysis . we were the only participant who had the ability to\ngraphically display the results .\ni was able to take the lead in a commercial meeting because of the data and\nresults . i just wanted you guys to know that i really appreciated your help .\ni have attached a couple of files that show some of the results . the\npresentation has the best overview .\nbest regards ,\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.185+0000", "entityId": 10138, "properties": {"text": "Subject: referral\nmr . kaminski ,\ni have attached a resume below i thought you might find of interest , it is\nfrom a business school acquaintance of mine , denis suvorov . denis is a\nhighly intelligent ph . d . candidate at my former school and is currently\nlooking for opportunities within a research / modelling framework . he has\nsignificant academic experience working on asset pricing models and after\nspeaking with pavel zadorozhny about his background and objectives , he\nrecommended i forward a copy of his credentials to you .\ni hope this is suitable and would be of interest to you .\nthanks ,\nmatthew frank", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.190+0000", "entityId": 10139, "properties": {"text": "Subject: re : summer internship\nthanks dr . kaminski ,\ni forgot that : - )\ni ' ll understand it as\ni may identify work that i think will be\nbeneficial to both of us .\nactually ,\ni have more ideas on the work , beyond the suggestion .\ni ' ll work on it and send it in more formal way again .\n( i mean , work list , schedule , deliverables etc )\ni ' ll take steps to get work permit for those two months .\nand please tell me know what you can support\nand what i should start to do to find a place to stay ,\nrent a car etc .\nwarm regards ,\njinbaek\nps . and thanks for forwarding the message .\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non thu , 22 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> the answer to the lst question is yes .\n> the project list is fine with me and is still valid . we are an organization\n> driven by the needs of our internal customers .\n>\n> i shall froward your message to the person in ebs .\n> hopefully , we shall get a positive response .\n>\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 03 / 15 / 2001 01 : 12 : 32 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : summer internship\n>\n>\n> dr . kaminski ,\n>\n> sorry for the late response ,\n> it took me some time to coordinate things .\n> finally , it ' s almost dont : - )\n> it turned out that from june to august\n> will be best for me for work at enron\n> ( say june . 4 to august . 4 )\n>\n> but i still need to know several things from your side .\n> could you answer following questions ?\n>\n> first :\n> is my suggested working period is ok with you ?\n> if so , let me know what to do for settlement\n> during the period .\n>\n> second :\n> i got a list of work , i might be able to do for\n> dealbench team from ross and suresh .\n> i ' d like to know it is still a valid work list :\n> the list he sent is as following :\n>\n> > 1 . write a paper in layman ' s terms that answers\n> > questions like the following :\n> > benefits of auctioning online for both buyers and\n> > sellers , particularly in reverse auctions\n> > explanation how multi - variable auctions are not\n> > as efficient as price - only auctions ( is this true ? )\n> > how many participants are recommended for a\n> > successful live auction\n> > what types of goods and services are best suited\n> > for live auctions versus sealed bid quotes\n> > opinions on lotting strategies\n> > trends in online private auctions\n>\n> > 2 . identify appropriate recent auction research ( 3\n> > or 4 papers out of the 90 + you provided ) and obtain approvals from the\n> > authors to post on our site\n>\n> > 3 . create a list / bibiliography of relevant auction\n> > literature ( with hyperlinks ? )\n>\n> > 4 . would you be willing to offer auction consulting\n> > services to our customers ( if they are interested )\n>\n> third :\n> there is an e - procurement forum at haas school of business ,\n> in may 22 . the chair of the forum is my advisor prof . arie segev .\n> a person from wells fargo bank will talk about wells fargo ' s role\n> in e - marketplace payment initiative ,\n> where enron broadband services is also one of key players\n> along with citibank .\n> he asked me whether you can contact a person at\n> enron broadband services , who ' s related to the initiative .\n> he wants to know whether we will have a speaker from enron\n> to see enron ' s perspective , in the forum .\n>\n> here is a link to news related to the initiative ,\n>\n> http : / / www . internetweek . com / story / inw 20000808 so 001\n>\n> fourth :\n> my advisor wants to know whether\n> there could be any opportunity to do a case study ,\n> regarding enron ' s business .\n> he is interested in e - procurement and e - marketplaces .\n> business model and system architecture . . .\n>\n> thanks for reading this long email .\n> i ' ll look forward to your answer . .\n> i am sorry for giving you so much burden\n> to answer those questions possibly not easy to answer .\n>\n> warm regards ,\n> jinbaek\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> jinbaek kim\n> ph . d candidate\n> dept . of industrial engineering and operations research\n> u . c . berkeley\n> http : / / www . ieor . berkeley . edu / ~ jinbaek\n>\n> go bears !\n>\n> : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> : a a : _ _ . . . . . _\n> : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> : . ' : ` . : ` , ` .\n> ` . : ' - - ' - - ' : . ' ; ;\n> : ` . _ ` - ' _ . ' ; . '\n> ` . ' \" ' ;\n> ` . ' ;\n> ` . ` : ` ;\n> . ` . ; ; : ;\n> . ' ` - . ' ; : ; ` .\n> _ _ . ' . ' . ' : ; ` .\n> . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> ` . . . . . . . - ' ` . . . . . . . . '\n>\n>\n> on mon , 5 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> >\n> > jinbaek ,\n> >\n> > this is fine though you are welcome to spend more\n> > time with us this summer .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > jinbaek kim on 03 / 04 / 2001 03 : 45 : 40 pm\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : summer internship\n> >\n> >\n> > dr . kaminski ,\n> >\n> > thanks for your answer .\n> > before i tell you the time frame ,\n> > i ' ll need to talk with my advisor , first .\n> > because here is an on - going - project .\n> > i need to coordinate the schedule .\n> >\n> > i ' ll appreciate it if you understand my situation ,\n> > and give me some time ( less than a week , of course ) .\n> >\n> > for your reference ,\n> > probably\n> > the dates i ' d like to ask you will be\n> > from mid - may to mid - july ( 2 months )\n> >\n> > warm regards ,\n> > jinbaek\n> >\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > jinbaek kim\n> > ph . d candidate\n> > dept . of industrial engineering and operations research\n> > u . c . berkeley\n> > http : / / www . ieor . berkeley . edu / ~ jinbaek\n> >\n> > go bears !\n> >\n> > : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> > : a a : _ _ . . . . . _\n> > : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> > : . ' : ` . : ` , ` .\n> > ` . : ' - - ' - - ' : . ' ; ;\n> > : ` . _ ` - ' _ . ' ; . '\n> > ` . ' \" ' ;\n> > ` . ' ;\n> > ` . ` : ` ;\n> > . ` . ; ; : ;\n> > . ' ` - . ' ; : ; ` .\n> > _ _ . ' . ' . ' : ; ` .\n> > . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> > ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> > ` . . . . . . . - ' ` . . . . . . . . '\n> >\n> >\n> > on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> >\n> > >\n> > > jinbaek ,\n> > >\n> > > you can coordinate the details with me .\n> > > let me know what the time frame is for you\n> > > and we shall send you an appropriate offer .\n> > >\n> > > vince\n> > >\n> > >\n> > >\n> > >\n> > >\n> > > jinbaek kim on 03 / 02 / 2001 04 : 43 : 06 pm\n> > >\n> > > to : vince . j . kaminski @ enron . com\n> > > cc :\n> > > subject : re : summer internship\n> > >\n> > >\n> > > dr . kaminski ,\n> > >\n> > > thank you very much .\n> > > of course , i ' ll be happy to have an opportunity\n> > > to work at such a wonderful company .\n> > > i was contacting with surech raghavan at deal bench team ,\n> > > and was going to express my appreciation to you again\n> > > after settling down process with them .\n> > >\n> > > for the period of working ,\n> > > i still need to coordinate with my advisor and\n> > > may need to adjust according to that .\n> > > but anyway , i ' ll try to coordinate smoothly .\n> > >\n> > > please let me know whether i should keep contacting\n> > > with deal bench team ,\n> > > for working period and\n> > > for misc . living support such as finding a place , rent a car , etc .\n> > >\n> > > i appreciate you so much again ,\n> > > for arranging such meetings and giving me an opportunity .\n> > > all this opportunity will not be available to me ,\n> > > without your kind help .\n> > >\n> > > warm regards ,\n> > > jinbaek\n> > >\n> > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > > jinbaek kim\n> > > ph . d candidate\n> > > dept . of industrial engineering and operations research\n> > > u . c . berkeley\n> > > http : / / www . ieor . berkeley . edu / ~ jinbaek\n> > >\n> > > go bears !\n> > >\n> > > : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> > > : a a : _ _ . . . . . _\n> > > : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> > > : . ' : ` . : ` , ` .\n> > > ` . : ' - - ' - - ' : . ' ; ;\n> > > : ` . _ ` - ' _ . ' ; . '\n> > > ` . ' \" ' ;\n> > > ` . ' ;\n> > > ` . ` : ` ;\n> > > . ` . ; ; : ;\n> > > . ' ` - . ' ; : ; ` .\n> > > _ _ . ' . ' . ' : ; ` .\n> > > . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> > > ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> > > ` . . . . . . . - ' ` . . . . . . . . '\n> > >\n> > >\n> > > on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> > >\n> > > > hello ,\n> > > >\n> > > > sorry for a delay in getting back to you .\n> > > > we would like very much to offer you a summer internship .\n> > > >\n> > > > please , let me know if you are interested .\n> > > >\n> > > > vince kaminski\n> > > >\n> > > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.194+0000", "entityId": 10140, "properties": {"text": "Subject: rice / enron finance seminar series\na copy of paul schultz ' s paper , \" who makes the market , \" is now\navailable . the paper to can be obtained ( by monday for sure ) from felicia\njones ( economics ) , latha ramchand ( university of houston ) , and vince\nkaminski ( enron ) or barbara ostdiek ( everyone else ) .\npaul ' s seminar is friday , march 30 , at 3 : 30 in room 201 ( note the room\nchange ) .\nthe abstract of the paper is copied below :\nabstract\n\" i provide evidence that nasdaq dealers make markets in the stocks in which\nthey receive order flow . several variables used to proxy for the stocks\nthat individual market maker ' s brokerage customers would trade , including\ntrading volume , location , underwriting participation and analyst coverage ,\nare significant determinants of market marking activity . informational\nadvantages may also be a factor in the market making decision as evidenced\nby dealers specializing in stocks in specific industries . some potential\nproblems that arise when researchers ignore the integration of market\nmaking with brokerage , securities analysis and underwriting businesses are\ndiscussed . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.199+0000", "entityId": 10141, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nus natural gas teams\nthe us natural gas marketing originations teams have had a successful lq\n2001 . in addition to mid market activity led by fred lagrasta , new\norigination desk heads and marketing teams have been set up across the us and\nare led by the following : west gas origination - barry tycholiz , central gas\norigination - laura luce , east gas origination - frank vickers . these teams\nhave made significant inroads in 2001 , focusing on customer coverage , new\naccounts , transportation syndication , risk management products and market\nintelligence . all of these individuals are open to any questions regarding\nthe new businesses .\nsiebel summary\neim ' s ability to rapidly transform its designated forest products and steel\nmarkets is dependent upon its ability to effectively manage the market\nparticipants and accelerate their adoption of eim ' s business strategy . to\nachieve this objective , eim will implement siebel sales enterprise , a\ncustomer - focused centralized database that effectively leverages all\ninformation learned about our customers and enables sharing of this\ninformation throughout the front , mid and back offices . siebel is designed\nto help in - house and mobile sales professionals in large organizations manage\naccounts , contacts , activities and opportunities associated with the sales\ncycle . eim fundamentals is leading the siebel implementation effort .\nin the news\nenron is hosting the new york energy risk management seminar at the st . regis\nhotel in new york city on april 5 , 2001 . topics include : power outlook ,\nnatural gas outlook , and weather risk management . to rsvp , contact laura pena\nat x 3 - 5376 .\nwelcome\nnew hires\negm - sherman franzen , fariba karimi , ryan krogmeier , lawrence marcus\neim - ronald barnes , paul hanks , chad ihrig , stella pedroza , linda silva\nena - hagar kedem , steven merriss , courdney williams , diane fellers\ntransfers\nena \u0001 ) tammie schoppe , lynna kacal , johnna kokenge , karen jones , stuart\nzisman , anne labbe\negm \u0001 ) justin cornett , george thomas , richard yeboah , phi khanh wolfe , alan\nharvey , philip berry , ethan schultz , sanjeev khanna , mingcheng lian\nnuggets & notes\n\" we have to move paper , make money and move the industry . \" - - rodney\nmalcolm , vice president / forest products eim\ncongratulations to angela and chris connelly , manager in coal trading . they\nare the proud parents of nicholas connelly , born on march 17 and weighed\n7 lbs . 11 oz . ( rumor has it that at 48 hours of age , he had more hair than his\nfather ! )\ncongratulations to carmen and glenn wright , director in steel origination who\nwelcomed little lauren nicole born march 12 . she weighed in at 7 lbs . 13 oz . and\ndebuted with a full head of hair and \" making lots of noise . \"\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.203+0000", "entityId": 10142, "properties": {"text": "Subject: re : lawyer\nsorry to hear this - i have generally shared my materials with colleagues\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : thursday , march 22 , 2001 6 : 21 am\nto : macmilli @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : lawyer\nian ,\nsorry for a delay in responding to you .\ni am currently in london , flying back to houston tomorrow .\nthe problem is not with the lawyers . we worked on our presentation\nmaterials together with a professor from another university\nand we agreed to use these materials only internally .\nwe have to honor our commitment to him . i am sure\nthat this is exactly what you would have expected from us if we had\nmade a similar commitment to you .\nvince\n\" macmillan , ian \" on 03 / 21 / 2001 04 : 31 : 27 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : lawyer\nwhat do i need to do to move this thing forward ?\ni suspect that the problem is basically with the lawyers . they only know\nhow to stop things , but in a way they play a role in global society . if it\nwere not for the handicaps they lay on us the rest of the world would never\nhave a chance .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : macmilli @ wharton . upenn . edu\ncc : vince . j . kaminski @ enron . com\nsent : 3 / 8 / 01 12 : 12 pm\nsubject : re : lawyer\nian ,\nsorry for a delay in getting back to you .\ni have one challenge i did not anticipate\nwhen i talked to you the first time about our real options\ninternal seminar .\nthe materials were prepared in collaboration with a professor\nfrom another school , and there is some sensitivity regarding\nthe intellectual property rights and the ability to distribute the\nmaterials\noutside enron .\nplease , give me some time to find out if i can work\naround this issue .\nvince\n\" macmillan , ian \" on 03 / 07 / 2001 06 : 46 : 28 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : lawyer\ni still have not heard from your lawyer . i would like to see whar\nmaterials you are using and assess how we could work on the topic of\nreal\noptions with enron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.208+0000", "entityId": 10143, "properties": {"text": "Subject: new retail electricity provider survey\nas a result of recent deregulation in states such as pennsylvania and\ncalifornia , many new companies are entering the retail energy market . today ,\nconsumers in several states are able to choose their energy provider in much\nthe same way they choose their long - distance phone company . a survey has\nbeen commissioned by the research group to better understand which factors\nare most important to consumers considering switching energy providers .\nthe survey consists of 28 question , and can be found on the following website :\nif you , your spouse , or someone else in your family has time to take this\nsurvey , we would appreciate your input .\nfeel free to forward this email to others . thanks for your time and\nconsideration .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.213+0000", "entityId": 10144, "properties": {"text": "Subject: team 3\nken ,\nit seems that there may be an internet bias as well ( more affluent\nand educated households are on - line ) .\none solution : develop a control group . arm - twist clerical\nemployees of the school to fill out the questionnaire\nand also ask them to provide the questionnaire to their friends and families .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.218+0000", "entityId": 10145, "properties": {"text": "Subject: re : fw : energy book promotion\njulie ,\ni shall track down fiona .\nshe may be on vacation .\nvince\n\" julie \" on 03 / 22 / 2001 03 : 28 : 34 pm\nplease respond to \" julie \"\nto : \" vincejkaminski \"\ncc :\nsubject : fw : energy book promotion\nhi vince ,\n?\ni sent the attached for enron ' s approval to fiona grant , but haven ' t heard\nback . ? in the contract that we signed it states that we need to seek\napproval from enron if we want to use the company name . ? is there someone\nelse we should direct these requests ?\n?\nhope you are well .\n?\njulie\n?\n?\n?\n- - - - - original message - - - - -\nfrom : julie\nto : fiona . grant @ enron . com\nsent : thursday , march 15 , 2001 5 : 20 pm\nsubject : energy book promotion\nfiona ,\n?\ni ' ve attached a letter that is going to be ? sent out to some universities ,\npromoting the energy derivative book . ? are we allowed to mention , \" . . . in\nassociation with enron corp . \" ? ? please see attached .\n?\nshould we check with you every time we would like to use \" enron corp . \" when\nadvertising the book ? ? it will usually follow similar format .\n?\nthanks ,\njulie\n?\nlacima group\n- covering letter for book brochures . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.224+0000", "entityId": 10146, "properties": {"text": "Subject: request submitted : access request for sandeep . kohli @ enron . com\nyou have received this email because the requester specified you as their\nmanager . please click\napproval to review and act upon this request .\nrequest id : 000000000025312\nrequest create date : 3 / 23 / 01 9 : 52 : 03 am\nrequested for : sandeep . kohli @ enron . com\nresource name : visual studio enterprise\nresource type : applications", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.229+0000", "entityId": 10147, "properties": {"text": "Subject: request submitted : access request for youyi . feng @ enron . com\nyou have received this email because you are listed as an alternate data\napprover . please click\napproval to review and act upon this request .\nrequest id : 000000000025307\napprover : stinson . gibner @ enron . com\nrequest create date : 3 / 23 / 01 9 : 23 : 49 am\nrequested for : youyi . feng @ enron . com\nresource name : \\ \\ enehou \\ houston \\ common \\ research - [ read / write ]\nresource type : directory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.237+0000", "entityId": 10148, "properties": {"text": "Subject: re : the spreadsheet for talon deal\nrakesh ,\nthanks . i took a quick look at the spreadsheet and i agree\nwith your approach .\ni shall spend more time looking at it over the weekend\nand if i see a problem i shall call you on monday .\nvince\nrakesh bharati @ enron\n03 / 23 / 2001 06 : 44 pm\nto : vkaminski @ aol . com\ncc : vince j kaminski / hou / ect @ ect , paulo issler / hou / ect @ ect\nsubject : the spreadsheet for talon deal\nvince ,\nhere is the spreadsheet for your review .\nthanks .\nrakesh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.244+0000", "entityId": 10149, "properties": {"text": "Subject: the spreadsheet for talon deal\nvince ,\nhere is the spreadsheet for your review .\nthanks .\nrakesh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.251+0000", "entityId": 10150, "properties": {"text": "Subject: erisk essentials\n? www . erisk . com\nwhat ' s new at erisk . com - 23 march 2001\nweekly review this week ' s economic , banking and p _ insurance news , from an\nenterprise risk management perspective . read it here . . .\nanalysis\nin this week ' s analysis :\n\u0001 \u0007 taking the long view on credit risk management\n\u0001 \u0007 the risks of cracking down on insurance fraud and\n\u0001 \u0007 fannie mae controversy puts debt benchmark in jeopardy\nfeature the treatment of operational risk is one of the more controversial ,\nand poorly understood , elements of basle ' s proposed revisions to the capital\naccord . in this exclusive article , penny cagan of zurich financial services\nexplains what the basle accord proposals mean for most banks , where there ' s\nroom for improvement and how to get started on building an operational risk\nframework\niconference archive\ncouldn ' t make it to our iconference on risk transfer , featuring martin nance\nof aig structured products and barry finkelstein , joe parsons and chris\ncrevier of merrill lynch ? check out the iconference archive later this week\nto find out what you missed . still available : the proceedings of our two\nrecent basle iconferences , featuring bill treacy of the federal reserve\nboard , ashish dev of key bank and andy hickman of erisk\nevents\ncalendar feeling the need to network ? check out our comprehensive listing of\nrisk management events around the world in the events calendar\nthe erisk essentials is published every friday by erisk . com .\nto subscribe to this newsletter , please register on our website .\nto unsubscribe , access your account . your username is the email address\nwhere you received this message .\nto be reminded of your password , or to reset it , follow this link .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.255+0000", "entityId": 10151, "properties": {"text": "Subject: only 1 week left to register for the henwood power market symposium\nat the discount registration fee\ndear energy participant :\ndon ' t miss your chance to register for the henwood power market symposium at\nthe discounted price of $ 875 . after april lst the registration fee increases\nto $ 975 . * register now because\nspace is limited !\nthis annual three - day event will take place from april 29 to may 1 , 2001 in\natlanta , ga at the beautiful evergreen mountain resort . this year ' s\nsymposium features leaders from ferc , electric\npower research institute , standard & poor ' s , iso new england , conoco , entergy\nnuclear , and more . discussion topics will include \" rating implications of\nthe california market failure \" ,\n\" upcoming changes to wholesale electric markets in new england \" , \" impacts of\nhigh gas costs to the nation ' s supply portfolio \" , and many others . as always ,\nparticipants will also have the\nopportunity to gain access to henwood ' s software products , consulting\nservices , and online databases , as a means to develop competitive strategies\nand unequalled value in restructured\nmarkets .\nyour registration fee is inclusive of the following :\n- complete hotel accommodations at the stone mountain resort for sunday april\n29 th and monday april 30 th , 2001\n- all meals and refreshments for april 29 th through may lst . a welcome\nreception is planned for sunday , april 29 th . this reception is an excellent\nopportunity to network with market participants\nand decision - makers of the electric power industry .\n- a river boat dinner cruise on monday , april 30 th on board the henry w .\ngrady paddlewheel riverboat .\nalso don ' t miss the henwood captain and crew golf tournament planned for\nsunday , april 29 th . we invite golfers of all levels to participate in this\nfun event .\nfor more information please contact me at 916 569 - 0985 or\nhmason @ hesinet . com . you can also learn more about the symposium by visiting\nour web site at www . hesinet . com .\nheather mason\nmarketing assistant\nhenwood energy\n2710 gateway oaks dr .\nsuite 300 n\n916 - 569 - 0985\n* make sure to ask about our special 2001 henwood client discount .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.260+0000", "entityId": 10152, "properties": {"text": "Subject: gene humphrey / mark palmer\nvince :\ndo you have email addresses for gene and mark palmer ?\ni look forward to seeing you next week .\nregards ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.264+0000", "entityId": 10153, "properties": {"text": "Subject: enside draft\ngood afternoon !\nattached , please find the combined interview notes for the first draft of the\narticle for the enside newsletter . read and review your sections - they are\ndivided by color . vince , please check ' everything ' for content and accuracy .\nfeel free to make corrections and delete anything as you see fit .\nplease make changes and then send back to me . i need it by wednesday , april\n4 , if possible .\ncall me if you have any questions !\nkathie grabstald\news public relations\nx 3 - 9610\np . s . i am looking forward to the photo shoot on friday , march 30 at 2 : 30 pm .\ni will meet you all in front of the building at the big e !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.269+0000", "entityId": 10154, "properties": {"text": "Subject: raptor\nvince\nhow do we cope with the ethical issues this presents ?\nrgds\ndp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.274+0000", "entityId": 10155, "properties": {"text": "Subject: re : rtp conference\nhill ,\nyes , i think it can be done . i am in london\nright now and i shall come back next week thursday .\nplease , give me call about it .\nvince\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\nhill huntington on 03 / 22 / 2001 04 : 47 : 33 pm\nto : vince kaminsky\ncc :\nsubject : rtp conference\nvince ,\nsounds like there are several enron people very interested in our\nseminar . many thanks for passing the idea around .\ndo you think that these groups might provide some sponsorship ? i didn ' t\nknow whether you have already asked them and they are thinking about it or\nwhether i need to approach them directly . i would appreciate any\nsuggestions you have .\nregards ,\nhill\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.280+0000", "entityId": 10156, "properties": {"text": "Subject: re : summer internship\nmartin\nplease , refer john directly to jinbaek kim and his academic advisor .\nvince\nfrom : martin lin on 03 / 23 / 2001 04 : 19 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : summer internship\nas a followup , john gillespie has expressed interest in participating on the\npanel mentioned below . to whom should i refer john or should somebody\ncontact him ? i just wanted to know what to tell john .\nthanks ,\nmartin\nvince j kaminski\n03 / 23 / 2001 04 : 12 pm\nto : martin lin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : summer internship\nmartin ,\nthanks .\nvince\nfrom : martin lin on 03 / 22 / 2001 04 : 46 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : summer internship\ni did not find anybody in ebs who seems to know or be involved in any\ne - procurement issues . in enron corp , however , there is an initiative called\nibuyit . this is a system that corp is deploying for e - procurement through\ncorp and ena , and will get to ebs sometime late this year .\njohn gillespie is in charge of the ibuyit initiative . perhaps he is the\nappropriate contact . i left a voice mail with him , but have not yet received\na response .\nmartin\nvince j kaminski\n03 / 22 / 2001 07 : 17 am\nto : martin lin / hou / ect @ ect\ncc :\nsubject : summer internship\nmartin ,\nplease , take a look at question 3 .\nwho is the right person at ebs ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 22 / 2001\n07 : 16 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njinbaek kim on 03 / 15 / 2001 01 : 12 : 32 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : summer internship\ndr . kaminski ,\nsorry for the late response ,\nit took me some time to coordinate things .\nfinally , it ' s almost dont : - )\nit turned out that from june to august\nwill be best for me for work at enron\n( say june . 4 to august . 4 )\nbut i still need to know several things from your side .\ncould you answer following questions ?\nfirst :\nis my suggested working period is ok with you ?\nif so , let me know what to do for settlement\nduring the period .\nsecond :\ni got a list of work , i might be able to do for\ndealbench team from ross and suresh .\ni ' d like to know it is still a valid work list :\nthe list he sent is as following :\n> 1 . write a paper in layman ' s terms that answers\n> questions like the following :\n> benefits of auctioning online for both buyers and\n> sellers , particularly in reverse auctions\n> explanation how multi - variable auctions are not\n> as efficient as price - only auctions ( is this true ? )\n> how many participants are recommended for a\n> successful live auction\n> what types of goods and services are best suited\n> for live auctions versus sealed bid quotes\n> opinions on lotting strategies\n> trends in online private auctions\n> 2 . identify appropriate recent auction research ( 3\n> or 4 papers out of the 90 + you provided ) and obtain approvals from the\n> authors to post on our site\n> 3 . create a list / bibiliography of relevant auction\n> literature ( with hyperlinks ? )\n> 4 . would you be willing to offer auction consulting\n> services to our customers ( if they are interested )\nthird :\nthere is an e - procurement forum at haas school of business ,\nin may 22 . the chair of the forum is my advisor prof . arie segev .\na person from wells fargo bank will talk about wells fargo ' s role\nin e - marketplace payment initiative ,\nwhere enron broadband services is also one of key players\nalong with citibank .\nhe asked me whether you can contact a person at\nenron broadband services , who ' s related to the initiative .\nhe wants to know whether we will have a speaker from enron\nto see enron ' s perspective , in the forum .\nhere is a link to news related to the initiative ,\nfourth :\nmy advisor wants to know whether\nthere could be any opportunity to do a case study ,\nregarding enron ' s business .\nhe is interested in e - procurement and e - marketplaces .\nbusiness model and system architecture . . .\nthanks for reading this long email .\ni ' ll look forward to your answer . .\ni am sorry for giving you so much burden\nto answer those questions possibly not easy to answer .\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non mon , 5 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> this is fine though you are welcome to spend more\n> time with us this summer .\n>\n> vince\n>\n>\n>\n>\n>\n> jinbaek kim on 03 / 04 / 2001 03 : 45 : 40 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : summer internship\n>\n>\n> dr . kaminski ,\n>\n> thanks for your answer .\n> before i tell you the time frame ,\n> i ' ll need to talk with my advisor , first .\n> because here is an on - going - project .\n> i need to coordinate the schedule .\n>\n> i ' ll appreciate it if you understand my situation ,\n> and give me some time ( less than a week , of course ) .\n>\n> for your reference ,\n> probably\n> the dates i ' d like to ask you will be\n> from mid - may to mid - july ( 2 months )\n>\n> warm regards ,\n> jinbaek\n>\n> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> jinbaek kim\n> ph . d candidate\n> dept . of industrial engineering and operations research\n> u . c . berkeley\n> http : / / www . ieor . berkeley . edu / ~ jinbaek\n>\n> go bears !\n>\n> : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> : a a : _ _ . . . . . _\n> : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> : . ' : ` . : ` , ` .\n> ` . : ' - - ' - - ' : . ' ; ;\n> : ` . _ ` - ' _ . ' ; . '\n> ` . ' \" ' ;\n> ` . ' ;\n> ` . ` : ` ;\n> . ` . ; ; : ;\n> . ' ` - . ' ; : ; ` .\n> _ _ . ' . ' . ' : ; ` .\n> . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> ` . . . . . . . - ' ` . . . . . . . . '\n>\n>\n> on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> >\n> > jinbaek ,\n> >\n> > you can coordinate the details with me .\n> > let me know what the time frame is for you\n> > and we shall send you an appropriate offer .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > jinbaek kim on 03 / 02 / 2001 04 : 43 : 06 pm\n> >\n> > to : vince . j . kaminski @ enron . com\n> > cc :\n> > subject : re : summer internship\n> >\n> >\n> > dr . kaminski ,\n> >\n> > thank you very much .\n> > of course , i ' ll be happy to have an opportunity\n> > to work at such a wonderful company .\n> > i was contacting with surech raghavan at deal bench team ,\n> > and was going to express my appreciation to you again\n> > after settling down process with them .\n> >\n> > for the period of working ,\n> > i still need to coordinate with my advisor and\n> > may need to adjust according to that .\n> > but anyway , i ' ll try to coordinate smoothly .\n> >\n> > please let me know whether i should keep contacting\n> > with deal bench team ,\n> > for working period and\n> > for misc . living support such as finding a place , rent a car , etc .\n> >\n> > i appreciate you so much again ,\n> > for arranging such meetings and giving me an opportunity .\n> > all this opportunity will not be available to me ,\n> > without your kind help .\n> >\n> > warm regards ,\n> > jinbaek\n> >\n> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n> > jinbaek kim\n> > ph . d candidate\n> > dept . of industrial engineering and operations research\n> > u . c . berkeley\n> > http : / / www . ieor . berkeley . edu / ~ jinbaek\n> >\n> > go bears !\n> >\n> > : \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n> > : a a : _ _ . . . . . _\n> > : _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n> > : . ' : ` . : ` , ` .\n> > ` . : ' - - ' - - ' : . ' ; ;\n> > : ` . _ ` - ' _ . ' ; . '\n> > ` . ' \" ' ;\n> > ` . ' ;\n> > ` . ` : ` ;\n> > . ` . ; ; : ;\n> > . ' ` - . ' ; : ; ` .\n> > _ _ . ' . ' . ' : ; ` .\n> > . ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n> > ` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n> > ` . . . . . . . - ' ` . . . . . . . . '\n> >\n> >\n> > on fri , 2 mar 2001 vince . j . kaminski @ enron . com wrote :\n> >\n> > > hello ,\n> > >\n> > > sorry for a delay in getting back to you .\n> > > we would like very much to offer you a summer internship .\n> > >\n> > > please , let me know if you are interested .\n> > >\n> > > vince kaminski\n> > >\n> > >\n> >\n> >\n> >\n> >\n> >\n> >\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.285+0000", "entityId": 10157, "properties": {"text": "Subject: re : request\nthanks vince . this is great .\nby the way , did you get copies of the journal with our paper ?\njohn\nat 04 : 59 pm 3 / 23 / 01 - 0600 , you wrote :\n>\n> john ,\n>\n> no problem .\n> i look forward to it .\n>\n> vince\n>\n>\n>\n>\n>\n> \" john d . martin \" on 03 / 23 / 2001 09 : 04 : 44 am\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : request\n>\n>\n> vince ,\n>\n> would you mind making a few luncheon comments to the texas finance festival\n> group at our sat luncheon ? i struck out with andy and sheridan thought\n> that you could relate very well to the group . how about it ?\n>\n> john\n>\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.290+0000", "entityId": 10158, "properties": {"text": "Subject: request\nvince ,\nwould you mind making a few luncheon comments to the texas finance festival\ngroup at our sat luncheon ? i struck out with andy and sheridan thought\nthat you could relate very well to the group . how about it ?\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.295+0000", "entityId": 10159, "properties": {"text": "Subject: re : vacation\nshrley ,\nno problem .\nvince\nshirley crenshaw\n03 / 23 / 2001 02 : 02 pm\nto : vince j kaminski / hou / ect @ ect\ncc : anita dupont / na / enron @ enron , kevin g moore / hou / ect @ ect\nsubject : vacation\nvince :\ni have already requested friday , april 6 th as a vacation day , and if it is ok ,\ni would also like to take friday the 30 th as a vacation day .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.299+0000", "entityId": 10160, "properties": {"text": "Subject: long sleeve denim shirts with the enron research logo\nhello everyone :\ni believe all of you are new employees since we last ordered the research\nshirts .\nthey are a blue denim ( tencel ) , button down , long sleeve , shirt with a logo\nover the left pocket .\nseveral of you have been asking for them so i will place an order .\nplease let me know the size shirt you would like . they come in ladies , or\nmens in small , medium , large , and extra - large . please circle the size\nyou would like .\nname size\ntom barkley s m l exl\nstephen bennett s m l exl\nrakesh bharati s m l exl\nlance cunningham s m l exl\nrabi de s m l exl\nanita dupont s m l exl\nshane green s m l exl\nanguel grigorov s m l exl\nseksan kiatsupaibul s m l exl\nsandeep kohli s m l exl\njaesoo lew s m l exl\nmartin lin s m l exl\nkate lucas s m l exl\niris mack s m l exl\npraveen mellacheruvu s m l exl\nmitra mujica s m l exl\nwichai narongwanich s m l exl\nnelson neale s m l exl\nkenneth parkhill s m l exl\nchris pernoud s m l exl\nleann walton s m l exl", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.304+0000", "entityId": 10161, "properties": {"text": "Subject: ideas\nvince :\ni may have neglected to send you the attached last week . enron is one of a\nhandful of institutions which could facilitate an entire transaction of the\nkind described here . this is simply your old production payment concept\napplied to corporate finance .\nbest ,\n- pressrelease . pdf\n- monetization . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.308+0000", "entityId": 10162, "properties": {"text": "Subject: reprint of my article - the gas - fired future : boom or bust ?\nmy article \" the gas - fired future : boom or bust ?\nlast year brought prices not seen for decades . so consumers will buy less\ngas , just as before , and send forecasts out the window . \" was just published\nin april 1 , 2001 issue of public utilities fortnightly .\nif you would like to receive a reprint when i receive them send me your\naddress .\nbest regards ,\njhherbert", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.313+0000", "entityId": 10163, "properties": {"text": "Subject: re : request\nvince ,\ni ' m glad you liked it . my next \" enron \" task is to try and develop a better\nunderstanding of the way you describe the use of btu swaps to create a\nsynthethic multi - fuel plant . i understand the basic concept but want to\nlearn more about the swaps ( duration , cost , etc ) which will impact a\ncompany ' s decision to build a single vs multi - fuel generator . do you have\nsome example transactions or analyses that i might look over to learn more ?\nsee ya in april ( we ' re going to learn to \" rope \" calves this year ) .\nyour friend ,\njohn\nat 06 : 03 pm 3 / 23 / 01 - 0600 , you wrote :\n>\n> john ,\n>\n> yes , i did . looks great .\n> vince\n>\n>\n>\n>\n>\n> \" john d . martin \" on 03 / 23 / 2001 05 : 02 : 05 pm\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : request\n>\n>\n> thanks vince . this is great .\n>\n> by the way , did you get copies of the journal with our paper ?\n>\n> john\n>\n> at 04 : 59 pm 3 / 23 / 01 - 0600 , you wrote :\n> >\n> > john ,\n> >\n> > no problem .\n> > i look forward to it .\n> >\n> > vince\n> >\n> >\n> >\n> >\n> >\n> > \" john d . martin \" on 03 / 23 / 2001 09 : 04 : 44 am\n> >\n> > to : vkamins @ enron . com\n> > cc :\n> > subject : request\n> >\n> >\n> > vince ,\n> >\n> > would you mind making a few luncheon comments to the texas finance\n> festival\n> > group at our sat luncheon ? i struck out with andy and sheridan thought\n> > that you could relate very well to the group . how about it ?\n> >\n> > john\n> >\n> > john d . martin\n> > carr p . collins chair in finance\n> > finance department\n> > baylor university\n> > po box 98004\n> > waco , tx 76798\n> > 254 - 710 - 4473 ( office )\n> > 254 - 710 - 1092 ( fax )\n> > j _ martin @ baylor . edu\n> > web : http : / / hsb . baylor . edu / html / martinj / home . html\n> >\n> >\n> >\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.317+0000", "entityId": 10164, "properties": {"text": "Subject: re : forward prices simulations in the credit reserve model\nbill and mark ,\nthe figure below shows you what happens when we simulate forward prices using\ncurrent methodology of our credit reserve model .\nthe time scale on this figure goes from 0 to 30 years . i started with $ 5 . 2\ngas prices at time 0 and used the ng forward volatility curve which\nhas 50 % volatilities in the front and 13 . 5 % vols for long - term contracts . you\ncan see from the figure , that , for example , at 30 years horizon\nthe price will be more than $ 13 . 4 with probability 5 % but less than $ 22 . 1\nwith probability 99 % . the corresponding lower bounds are\n$ 1 . 17 and $ 0 . 71 .\ntanya\nfrom : william s bradford / enron @ enronxgate on 03 / 26 / 2001 11 : 22 am\nto : mark ruane / enron @ enronxgate , naveen andrews / enron @ enronxgate , tanya\nrohauer / enron @ enronxgate , debbie r brackett / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , rabi de / na / enron @ enron , wenyao jia / enron @ enronxgate\ncc :\nsubject : re : gbm vs reversion\nboth seem to provide fairly unrealistic values . $ 50 gas over the term seems\nimprobable , however , a $ 6 gas peak does not represent capture all potential\nprice movement at 99 % confience interval .\nwhat were your assumptions on price curves , volatilty curves , and trend\nreversion ?\nbill\n- - - - - original message - - - - -\nfrom : ruane , mark\nsent : monday , march 26 , 2001 11 : 11 am\nto : bradford , william s . ; andrews , naveen ; rohauer , tanya ; brackett , debbie ;\ntamarchenko , tanya ; de , rabi ; jia , winston\nsubject : gbm vs reversion\na quick example of the impact of using gbm based simulation : based on a five\nyear swap , the expected losses are 18 % higher as a result of gbm . attached\nchart shows the relative long - term gas prices under both processes . >\nmark", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.322+0000", "entityId": 10165, "properties": {"text": "Subject: encounter article - shalesh ganjoo\nas a follow up to the below message , i wanted to contact you to see if you\nhave had an opportunity to review the attached article . the article will be\ngoing to print within the next two weeks . therefore , i would like to ensure\nthe accuracy of the information provided .\nthank you again for your efforts ,\ntracy arthur\n- - - - - - - - - - - - - - - - - - - - - - forwarded by tracy l arthur / hou / ect on 03 / 26 / 2001\n09 : 47 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntracy l arthur\n03 / 19 / 2001 03 : 29 : 37 pm\nto : david cox / enron communications @ enron communications , vince j\nkaminski / hou / ect @ ect\ncc : shelly jones / hou / ect @ ect\nsubject : encounter article - shalesh ganjoo\nwe have conducted an interview and written the attached article for the\nupcoming edition of the encounter , the associate & analyst programs '\nnewsletter . the interview was conducted with shalesh ganjoo in regards to\nhis participation with the implementation of storage capacity as a\ncommodity .\nto ensure our publication is printing the most accurate information , i have\nattached the article for your review . please confirm that the information\nprovided from shalesh ganjoo is accurate .\nthank you in advance for your assistance ,\ntracy arthur\ncommunication specialist\nassociate & analyst department\n713 - 345 - 7853", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.327+0000", "entityId": 10166, "properties": {"text": "Subject: re : fw : energy book promotion\nthanks .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\ncc : vince . j . kaminski @ enron . com\nsent : saturday , march 24 , 2001 1 : 18 am\nsubject : re : fw : energy book promotion\njulie ,\ni shall track down fiona .\nshe may be on vacation .\nvince\n\" julie \" on 03 / 22 / 2001 03 : 28 : 34 pm\nplease respond to \" julie \"\nto : ? ? \" vincejkaminski \"\ncc :\nsubject : ? fw : energy book promotion\nhi vince ,\ni sent the attached for enron ' s approval to fiona grant , but haven ' t heard\nback . in the contract that we signed it states that we need to seek\napproval from enron if we want to use the company name . is there someone\nelse we should direct these requests ?\nhope you are well .\njulie\n- - - - - original message - - - - -\nfrom : julie\nto : fiona . grant @ enron . com\nsent : thursday , march 15 , 2001 5 : 20 pm\nsubject : energy book promotion\nfiona ,\ni ' ve attached a letter that is going to be sent out to some ? universities ,\npromoting the energy derivative book . are we allowed to ? mention , \" . . . in\nassociation with enron corp . \" ? please see attached .\nshould we check with you every time we would like to use \" enron corp . \" when\nadvertising the book ? it will usually follow similar format .\nthanks ,\njulie\nlacima group\n( see attached file : covering letter for book brochures . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.332+0000", "entityId": 10167, "properties": {"text": "Subject: re : panel session at 2001 pes summer meeting\nthat should be fine , as long as you keep to a general overview and\ndissertation work . you can talk about different modeling approaches in the\nindustry , and indicate , if asked , that enron looks at all approaches but not\nbe specific about which particular one we believe in .\ncan you give me more details on the meeting ? i may like to attend as well .\nthanks ,\nvasant\nlance cunningham @ enron on 03 / 27 / 2001 10 : 37 : 02 am\nto : vkaminski @ aol . com , vasant shanbhogue / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc :\nsubject : panel session at 2001 pes summer meeting\nvince and vasant ,\ni was asked by one of my advisors to be on a panel for the summer power\nengineering society . i stated that i couldn ' t divulge any information on\nmodeling efforts at enron but could give a general overview and cover my\ndissertation work . he stated that he understood and other companies had\nexpressed similar concerns .\ni guess that i need your ok to attend this presentation and present .\nthanks ,\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 03 / 27 / 2001\n10 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" martin l . baughman \" on 03 / 27 / 2001 08 : 59 : 35 am\nto : shams . siddiqi @ lcra . org , harry . singh @ neg . pge . com ,\nlance . cunningham @ enron . com , rosenberg @ hotmail . com , \" camporeale , robert \"\ncc : baran @ eos . ncsu . edu , liu @ ee . washington . edu\nsubject : panel session at 2001 pes summer meeting\ngentlemen :\nthank you for agreeing to participate on the panel . to comply with the\nquality control requirements of the society i must request from each of you\nthe following :\n1 . name , affiliation , and title of presentation as you want it listed in\nprogram .\n2 . a 2 - 6 summary of the presentation . these summaries will appear in the\nproceedings . many speakers simply provide a few powerpoint slides that\ncontain this information , or alternatively , a few paragraphs of text\nsummarizing the points they intend to make in their presentations .\nplease provide this information to me by april 2 .\nhere is the status of the panel so far .\ntitle : power trading and asset management : tools of the trade\nrequested day and time : wed july 18 morning session\nsummary\na number of sophisticated anlytical tools are used in support power trading\nand asset management activities . these include various time - series ,\nstochastic , and physical models of quantities and prices , portfolio and\nrisk analysis tools , and other risk management tools . in this panel , the\nanalytical approaches are surveyed and discussed .\npanelists :\nlance cunningham / confirmed\nmanager , research\nenron north america\nmicahel rosenberg / confirmed\ntxu\nshams siddiqi / confirmed\nlcra\nharry singh / confirmed\ndirector , market economics\npg & e national energy group\nrobert camporeale\nconed energy\npanel organizer and chair :\nmartin l . baughman\nece department\nthe university of texas at austin\nremember , by april 2 .\nmarty\nmartin l . baughman\nece dept . ens 348\nthe university of texas at austin\naustin , tx 78712\nph . ( 512 ) 471 - 5376\nfax ( 512 ) 471 - 5532", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.337+0000", "entityId": 10168, "properties": {"text": "Subject: panel session at 2001 pes summer meeting\nvince and vasant ,\ni was asked by one of my advisors to be on a panel for the summer power\nengineering society . i stated that i couldn ' t divulge any information on\nmodeling efforts at enron but could give a general overview and cover my\ndissertation work . he stated that he understood and other companies had\nexpressed similar concerns .\ni guess that i need your ok to attend this presentation and present .\nthanks ,\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 03 / 27 / 2001\n10 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" martin l . baughman \" on 03 / 27 / 2001 08 : 59 : 35 am\nto : shams . siddiqi @ lcra . org , harry . singh @ neg . pge . com ,\nlance . cunningham @ enron . com , rosenberg @ hotmail . com , \" camporeale , robert \"\ncc : baran @ eos . ncsu . edu , liu @ ee . washington . edu\nsubject : panel session at 2001 pes summer meeting\ngentlemen :\nthank you for agreeing to participate on the panel . to comply with the\nquality control requirements of the society i must request from each of you\nthe following :\n1 . name , affiliation , and title of presentation as you want it listed in\nprogram .\n2 . a 2 - 6 summary of the presentation . these summaries will appear in the\nproceedings . many speakers simply provide a few powerpoint slides that\ncontain this information , or alternatively , a few paragraphs of text\nsummarizing the points they intend to make in their presentations .\nplease provide this information to me by april 2 .\nhere is the status of the panel so far .\ntitle : power trading and asset management : tools of the trade\nrequested day and time : wed july 18 morning session\nsummary\na number of sophisticated anlytical tools are used in support power trading\nand asset management activities . these include various time - series ,\nstochastic , and physical models of quantities and prices , portfolio and\nrisk analysis tools , and other risk management tools . in this panel , the\nanalytical approaches are surveyed and discussed .\npanelists :\nlance cunningham / confirmed\nmanager , research\nenron north america\nmicahel rosenberg / confirmed\ntxu\nshams siddiqi / confirmed\nlcra\nharry singh / confirmed\ndirector , market economics\npg & e national energy group\nrobert camporeale\nconed energy\npanel organizer and chair :\nmartin l . baughman\nece department\nthe university of texas at austin\nremember , by april 2 .\nmarty\nmartin l . baughman\nece dept . ens 348\nthe university of texas at austin\naustin , tx 78712\nph . ( 512 ) 471 - 5376\nfax ( 512 ) 471 - 5532", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.342+0000", "entityId": 10169, "properties": {"text": "Subject: enron team 3 question\nhi melinda !\nwe need to get this to john henderson , but he did not come up on my email .\notherwise , likely any manager level at new power would know . any help in\nforwarding would be great ! thanks !\n- - christie ,\n- - - - - forwarded by christie patrick / hou / ect on 03 / 27 / 01 07 : 47 pm - - - - -\n\" degiacinto , clayton \"\n03 / 27 / 01 02 : 51 pm\nto : \" ' christie . patrick @ enron . com ' \"\ncc : vince . j . kaminski @ enron . com\nsubject : enron team 3 question\nhi christie and vince ,\nwe really look forward to seeing you all next week . we ' ve learned a lot\nworking on this project , and think we will provide some useful information\nfor you .\nif possible , we need to know what states newpower is operating in .\nspecifically , what states there is a current marketing campaign ? should i\nask melinda mccarty for this information ?\nthanks again for your help .\nregards ,\ntiger team 3", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.351+0000", "entityId": 10170, "properties": {"text": "Subject: comments\nhi sheridan ,\nhow are you ? i hope that you had a good vacation . vasant and i looked at\nyour memo and found it to be interesting . i shall first briefly summarize\nour understanding of the methodology you propose . the comments follow .\nfinally , i shall sketch a simple gas field project you can use as a test case\nin further refining the model .\nit appears that you are proposing a state - space approach where probabilities\nof different states at various future dates are specified . the next step is\nto assume a discount rate and to compute the present value by following the\nbranches from the origin to one of the terminal points . traversing through\nthe tree in this manner over many iterations will permit us to compute the\naverage present value of the project . also , you are using the simulation to\nassign a value of the project to each node . thus each node will have a cash\nflow associated with it which will occur if the node is reached and a value\nwhich is an expectation of the value to be realized going forward . if some\nof these values turn out to be negative , zero - coupon , risk - free bonds are\npurchased to neutralize the negative realization .\nnext , we find a comparable and apply the expected rate of return back to our\nproject ( based on the variance of the returns ) . we iterate until\nconvergence .\nfinally , we subtract the initial investment and the computed risk capital\nfrom the pv of the gross cash flows ( including debt ) to determine if the\nproject merits further consideration .\ncomments / clarifications\n1 . the money is being set aside to avoid negative values . it is not clear\nif you mean the values of the cash flow or the pv at the node . anyhow , we\nshall be setting aside money not just for that specific node but all nodes at\nthat cross - section of time as the risk - free asset pays in all states of\nnature . this will have to be done every time there is a negative\nrealization . thus , for the typical project we have , the value of risk\ncapital may be extremely high , as we are not following a tail - based norm\nanymore .\n2 . your memo appears to suggest that debt capacity is contingent on all\nvalues being positive . if so , we are only issuing risk - free debt . also , a\nproject with a single negative value at each cross - section of time will not\nhave a positive debt capacity .\n3 . it seems that our optimization argument is the discount rate , which is\nobtained in each step from the comparison investment ( by equating the\nvariances ) . it is not clear if changing the discount rate will have such an\neffect on the project variance so as to lead to a global convergence . also ,\nour project has a finite life and the market - based assets will have infinite\nlives . in the light of this fact , how will we define the relevant variance ?\nis it the spot variance of the returns of the comparison investment ?\n4 . finally , our criterion is to subtract from the average pv the investment\nand also the risk capital . setting risk capital to zero , this model closely\nresembles the intuitive present value criterion and endogenously determines\nthe discount rate .\ngas field case\nto facilitate your thinking , we are providing a gas field example below .\nwe invest x million dollars to buy and develop a gas field . a profile of\nexpected production and variance of the production per year is available from\nthe engineers at the beginning . production will be autocorrelated , as the\nprofile will shift up or down based on the actual gas reserves being more or\nless than the estimated reserves . we assume the life of the field to be 10\nyears with no salvage value . there are fixed and variable operating costs .\nit might be useful for you to think about applying the framework to this\nproblem .\ndo let me know if you have further questions .\nrakesh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.359+0000", "entityId": 10171, "properties": {"text": "Subject: re : comments\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rakesh bharati / na / enron on 03 / 27 / 2001\n07 : 43 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nsheridan titman on 03 / 27 / 2001 06 : 46 : 31 pm\nto : rakesh . bharati @ enron . com\ncc :\nsubject : re : comments\nrakesh :\nthanks for your input . they are quite useful for helping me clarify my own\nthinking . the following are my responses to your comments and\nclarifications . the * * ed paragraphs are from me and the others are from you .\n1 . the money is being set aside to avoid negative values . it is not clear\nif you mean the values of the cash flow or the pv at the node . anyhow , we\nshall be setting aside money not just for that specific node but all nodes\nat that cross - section of time as the risk - free asset pays in all states of\nnature . this will have to be done every time there is a negative\nrealization . thus , for the typical project we have , the value of risk\ncapital may be extremely high , as we are not following a tail - based norm\nanymore .\n* * i agree that this is confusing and needs further refinement . i do this\nbecause i have some concerns about discounting negative cash flows , ( this\nis discussed in my first memo ) . this clearly provides a conservative\nestimate of firm value , and a measure of risk capital that is too high .\nfrom the perspective of evaluating the appropriate level of risk capital ,\nit is sufficient that enough capital be employed so that the pv at each\nnode is positive . also , one might want to set the level so that the pv is\npositive in say 98 % of all nodes .\n2 . your memo appears to suggest that debt capacity is contingent on all\nvalues being positive . if so , we are only issuing risk - free debt . also , a\nproject with a single negative value at each cross - section of time will not\nhave a positive debt capacity .\n* * again , this is a very conservative initial estimate . when the model is\nrefined , you probably want to define debt capacity so that the project\ndefaults a certain percent of the time .\n3 . it seems that our optimization argument is the discount rate , which is\nobtained in each step from the comparison investment ( by equating the\nvariances ) . it is not clear if changing the discount rate will have such\nan effect on the project variance so as to lead to a global convergence .\n* * i am not assuming that the change in the discount rate has a major effect\non volatility . in fact , i think the process requires only one iteration\nwhen the volatility is independent of the discount rate . again , the idea\nis that we calculate the volatility of the project ' s value calculated with\nan initial discount rate . using the calculated volatility and the stock of\na comparison firm , calculate a more appropriate discount rate . if the\nvolatility of the project ' s value is not affected by the change in discount\nrates then we are done . if , however , the change in discount rates changes\nvolatility , then we may have to iterate .\nlet me know if this makes sense . * *\nalso , our project has a finite life and the market - based assets will have\ninfinite lives . in the light of this fact , how will we define the relevant\nvariance ? is it the spot variance of the returns of the comparison\ninvestment ?\n* * this is a good point . i was thinking in terms of the average variance ,\nbut this may not be correct . actually , we know that this is just an\napproximation and we need to think about whether or not it is a good\napproximation . typically , firms tend to ignore issues relating to the\nduration of their project cash flows when they determine discount rate ,\nwhich clearly does not make sense . this requires some additional thought . * *\n4 . finally , our criterion is to subtract from the average pv the\ninvestment and also the risk capital . setting risk capital to zero , this\nmodel closely resembles the intuitive present value criterion and\nendogenously determines the discount rate .\n* * this is correct . my goal was to come up with something that was closely\nrelated to what you are already doing but which gives you some insight into\nhow to define risk capital and the appropriate discount rate . there are a\nnumber of ways that we can refine and improve this procedure . what we need\nto first consider is whether or not the basic approach makes sense for the\nkind of projects that you are evaluating . * *\ngas field case\nto facilitate your thinking , we are providing a gas field example below .\nwe invest x million dollars to buy and develop a gas field . a profile of\nexpected production and variance of the production per year is available\nfrom the engineers at the beginning . production will be autocorrelated , as\nthe profile will shift up or down based on the actual gas reserves being\nmore or less than the estimated reserves . we assume the life of the field\nto be 10 years with no salvage value . there are fixed and variable\noperating costs . it might be useful for you to think about applying the\nframework to this problem .\n* * this problem is probably pretty straightforward because it is unlikely\nthat the cash flows will be negative once the gas field is producing .\nhence , there is no need to be concerned about risk capital ( other than the\nx million dollars to buy and develop the property ) . to value the property\nassuming all - equity financing we calculate the value process of the\ndeveloped project and compare its volatility to a comparison investment\nwhose value process is observable ( e . g . , a traded mlp ) . the risk - adjusted\nreturn of the comparison investment would then be used to discount the cash\nflows of the gas field .\nplease note that this procedure requires relatively strong assumptions and\ncalculating the risk - adjusted return on the comparison investment is not\nnecessarily straightforward . * *\nlet me know when you would like to discuss this .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\non another topic , is it possible for you to give me information about one\ncase where enron bought or sold a base load power plant , where the\npurchaser financed the transaction with non - recourse debt . we would like\nthe following information :\n1 . the value of the power plant ( or purchase price )\n2 . the amount of debt financing and the terms of the debt contract .\n3 . some information about the pricing of gas - power swaps and options .\nabout a year ago i gave vince a paper which develops a pricing model for\nproject debt . i don ' t think he thought that it could be implemented on the\ntype of projects that enron finances . however , my coauthors would like to\ntry applying the model for one case study .\nlet me know when you want to discuss these issues .\nthanks ,\nsheridan\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.365+0000", "entityId": 10172, "properties": {"text": "Subject: my departure from enron\ndear all ,\ni have decided to attend carnegie mellon ' s computational finance program for\nthe\n2001 - 2002 academic year . the program starts on may 14 th .\nunfortunately due to the quick arrival of the starting date , my last day at\nenron will\nhave to be friday , april 13 th 2001 .\ni have really enjoyed my last 10 months here at enron which i ' ve spent with\nthe\nresearch group .\nthank you .\n- hector", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.370+0000", "entityId": 10173, "properties": {"text": "Subject: confirmation of your order\nthis is an automatic confirmation of the request you have placed using it\ncentral .\nrequest number : ecth - 4 v 9 my 9\norder for : kenneth parkhill\nuser has a en 600 with 64 mb of memory and needs\nupgrade to 256 mb . enron it purchasing\n* please send all status inquiries regarding this request to :\nmailto : receiving & hardware @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.375+0000", "entityId": 10174, "properties": {"text": "Subject: hedging lng volumes\nstinson / vince ,\ni think this is important to know .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n03 / 28 / 2001 08 : 23 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanshuman srivastav\n03 / 28 / 2001 06 : 32 : 20 am\nto : marc de la roche @ ect\ncc : tushar dhruv @ enron , doug leach @ ect , mohan\ngurunath / enron _ development @ enron _ development , rajesh\nsivaraman / enron _ development @ enron _ development , shubh\nshrivastava / enron _ development @ enron _ development , mukesh\ntyagi / enron _ development @ enron _ development ( bcc : sandeep\nkohli / enron _ development )\nsubject : hedging lng volumes\nhi marc ,\ndpc would like a swap to hedge its price expsoure on lng . we do understand\nthat there exists a basis risk between jcc ( the lng spa index ) and brent ( the\nmarket index for the product ) and will bear such risk . we also appreciate the\nfact that this is a financial product and irrespective of actual consumption ,\nwe will still have to bear the burden ( if any ) of the swap .\nfuel - lng indexed to jcc ( closely correlated to brent futures )\nperiod volumes ( tbtu ) volumes ( mt ) volumes ( jcc bbls )\njanuary 2002 to december 2002 33 . 61 650 , 000 9 , 127 , 049\njanuary 2003 to december 2003 48 . 63 940 , 000 13 , 207 , 496\njanuary 2004 to december 2004 48 . 63 940 , 000 13 , 207 , 496\ncrude swap price : can we look at a ' dirty ' hedge and get a crude ( $ / bbl ) swap\nprice . like any other regular swap , this will be a monthly settle product .\nthe above conversions from mt to bbls are based on lng conversion factors .\n( 14 . 04 bbls / mt ) .\nwe also would like to understand the requirements of the credit group to put\nthis hedge in place . please indicate the process as well as the security\nmechanisms to provide adequate credit support for the swap .\nplease call me ( 98210 38711 ) or rajesh ( 98201 88310 ) for any additional info .\nregards ,\nanshuman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.380+0000", "entityId": 10175, "properties": {"text": "Subject: school teaching\nhello vince ,\ni stopped by to see you today 03 / 28 / 01 . however , mrs . shirley notified me\nthat you were out of the country . look , i need another favor . my wife , whom\nyou met last summer , and i have been living in the woodlands about a month\nnow . we have tried , to no avail , to get her in the local school district as\na speech pathologist or a k - 6 grade school teacher . she could easily find a\nteaching job in the houston independent school district . however , i would\nprefer that she taught locally , in the woodlands . i need to know if you know\nof anyone we can contact to get her in the woodlands school system . i would\ngreatly appreciate if you could help us out once again . i am attaching her\nresume ' for your perusal . thanks a million vince ! ! !\nsincerely ,\ndatren williams\nees x 58654", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.384+0000", "entityId": 10176, "properties": {"text": "Subject: consulting project\ndear vince :\ni have now spent 16 hours on the valuation project and wanted to touch\nbase with you to make sure that the basic approach makes sense and that you\nthink we are making an appropriate amount of progress . my invoice is\nattached .\nby the way , john martin just mentioned that you have agreed to be our\nluncheon speaker at the texas finance festival . i really appreciate your\nhelp on this and would like to schedule some time next week to talk about\nit in more detail .\ni look forward to hearing from you .\nregards ,\nsheridan\n- invoice for february and march 2001 . doc\nsheridan titman\ndepartment of finance\ncollege of business administration\nuniversity of texas\naustin , texas 78712 - 1179\n512 - 232 - 2787 ( phone )\n512 - 471 - 5073 ( fax )\ntitman @ mail . utexas . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.389+0000", "entityId": 10177, "properties": {"text": "Subject: follow up to last week\nvince - appreciate you taking the time to dicuss some of our ongoing\nquantitative challenges . just wanted to confirm with you the next steps we\nagreed to :\nresearch to develop a working prototype of a private firm model by aug . 2001\nthis effort will include evaluating existing private firm models\nhouston research to allocate a full time resource , who is willing to spend a\nsignificant amount of time in london ( at least initially ) to kick off the\neffort\nplease let me know if i have missed something .\nthanks\nbryan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.395+0000", "entityId": 10178, "properties": {"text": "Subject: re : thesis on electricity price jump - diffusions\nbernard ,\nmy coordinates :\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com\nyes , we are going into a very interesting summer both here and in the uk .\nvince\n\" murphy , bernard \" on 03 / 27 / 2001 01 : 23 : 04 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : thesis on electricity price jump - diffusions\nhi vince ,\ncan you e - mail me your mailing address in houston and i will send you a hard\ncopy of the above today . apologies for delay , but i wanted to ensure that\nles clewlow had received his copy in sydney before distributing any other\ncopies .\nincidentally , today ( march 27 th ) is a red letter day in the uk as the neta /\nnew electricity trading arrangements have gone ' live ' . should be\ninteresting to observe the development of the paper market in the coming\nmonths - you ' re no doubt aware that ipe have just launched an electricity\nfutures contract .\nregards\nbernard\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 01 march 2001 15 : 37\nto : murphy , bernard\ncc : vkaminski @ aol . com ; vince . j . kaminski @ enron . com\nsubject : re : 1997 risk paper on pricing of electricity derivatives\nbernard ,\nyes , i can read a dvi file . you can also cc\nmy home address : vkaminski @ aol . com . i shall\ntry to send you an answer to your question on weekend .\nvince\n\" murphy , bernard \" on 03 / 01 / 2001 09 : 18 : 58 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : 1997 risk paper on pricing of electricity derivatives\nvince ,\ni can send you a scientific word dvi file ( at the weekend ) if you can read\nscientific word files ? the dissertation hasn ' t been reviewed by les or\nthe\nexternal yet - although its been at forc for 2 months . i think that the\nempirical chapter is probably the one which would be of most relevance to\nboth our company ' s businesses - although i ultimately didn ' t have the time\nto ' explicitly ' price the jump risk - premium which i conjectured is possibly\nimplicit in the prices of exchange - traded electricity futures - options -\nrather i developed an implicit estimation procedure which will enable a\nrough assessment ( with a little bit of further work , but not too much ) be\nmade of the price of jump risk in wholesale power markets .\nin other words , i assumed spot jump - risk to be undiversifiable , and\nessentially devoted 2 theoretical chapters to :\n1 ) proving that a jump - diffusion trading model is \" incomplete \"\n( synthesising\nthe securities markets framework with martingale representation theory ) -\nnote that i did not assume that markets could be dynamically completed with\n' term structure ' securities as in the hjm w / jumps papers of shirakawa and\ndas and ;\n2 ) deriving an explicit risk - adjustment process for ' implementing ' the\nprice\nof jump - risk using a jump - diffusion marginal indirect utility of wealth\nprocess ( ie . a jump - augmented production economy approach in the spirit of\ncir , bates , ahn whereas in the latter the driftless forward supposition\nmeans that i have to capture mean - reversion via the futures volatility\nfunction , and jumps are less easy to calibrate . any suggestions ?\nregards\nbernard\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 01 march 2001 14 : 54\nto : murphy , bernard\ncc : shirley . crenshaw @ enron . com ; vince . j . kaminski @ enron . com\nsubject : re : 1997 risk paper on pricing of electricity derivatives\nbernard ,\ni am forwarding your message to my assistant and she will mail you a\nreprint .\ni would be glad to take a look at your dissertation . is it available as a\npublication , working paper ?\nvince\n\" murphy , bernard \" on 03 / 01 / 2001 02 : 17 : 39 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : 1997 risk paper on pricing of electricity derivatives\nhello vince ,\nmy name is bernard murphy - i received your e - mail address from les\nclewlow ,\nwho was my phd supervisor at the financia options research centre at\nwarwick\nbusiness school . i ' ve just finished my phd on electricity price jump\ndiffusions : a theoretical and empirical study in incomplete markets -\nhence my interest in electricity price modelling and derivative pricing . i\nwas looking to get hold of a copy of your 1997 paper , which has recently\ncome to my attention :\n\" the challenge of pricing & risk - managing electricity derivatives \" , the us\npower market , risk publications , pp . 149 - 171 .\nand les suggested that i contact you directly ( les is travelling at present\nand doesn ' t have an electronic copy available ) to request an e - copy .\nincidentally , i am lecturer in finance / financial mathematics at\nuniversity\nof limerick ( ireland ) and have taken a year out to work for caminus uk ,\nwhere i am working on introducing and developing a markets - based approach\n( spark - spread ) to real asset valuations in the uk power industry .\nthanks in advancve\nbernard murphy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.400+0000", "entityId": 10179, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron producer one\nenron producer one facilitates one - stop shopping for the producer \u0001 , s\ninfrastructure needs . through business relationships with hanover\nmeasurement services and applied terravision systems , enron producer one will\noffer and custom - configure a number of valuable production services and\npricing plans to reduce overhead and simplify back - office tasks . initial\nproducts offered are well connects , transportation , marketing , measurement\nand accounting services . enron producer one is managed and supervised by\njohn grass .\nin the news\nceo says texas in good shape for electricity deregulation\ndallas ( ap ) - enron corp . ' s chief executive and president said tuesday he\nbelieves that texas energy markets are in good shape as the state prepares\nfor deregulation .\njeffrey skilling told an audience of about 400 business people at a downtown\nhotel that california \" has given the term deregulation a terrible name . \"\nelectric deregulation in texas officially starts jan . 1 . \" in texas , i think\nwe ' ve got a pretty good system , \" he said .\nin san francisco on tuesday , the california public utilities commission\nunanimously approved electricity rate increases of up to 46 percent to try to\nhead off blackouts this summer by keeping the state ' s two biggest utilities\nfrom going under . when california officials set up deregulation they allowed\nthe price of wholesale electricity to rise but capped the amount companies\ncould charge customers , skilling said . socal edison and pacific gas &\nelectric say they have lost more than $ 13 billion since last summer because\nthey haven ' t been able to pass on the high cost of wholesale electricity .\nskilling said texans are in a much better position and shouldn ' t worry that\ntheir state ' s deregulation would be like the california experience .\n\" california , they just put together a crazy system , \u0001 8 he said in his first\npublic comments since becoming the houston - based company ' s chief executive\nofficer in february . \" the markets in california are the most regulated\nmarkets in north america today . and that ' s what is causing the problem . \"\n03 / 27 / 2001 associated press newswires copyright 2001 .\nwelcome\nnew hires\negm - charles crow , nancy johnson , gregor lehmiller\neim - darrell aguilar , latrisha allen , wesley wilder , ronald barnes\nena - brian cruver , craig dean , martha kessler\nenrononline statistics\nbelow are the latest figures for enrononline as of march 16 , 2001 .\n? total life to date transactions > 813 , 000\n? life to date notional value of transactions > $ 489 billion\nnuggets and for supplies to all consumers including households by 2005 .\nthe setting of rules in the regulation for how power transmission tariffs can\nbe charged for cross - border transactions and how congestion and capacity\nallocation at borders within the eu should be managed by transmission system\noperators .\nenron concludes that it is encouraged by the efforts of the commission to\naccelerate the european electricity and gas market opening and the\nreinforcement of third party rights of access to transmission networks . the\ncommission ' s approach of harmonizing both the timetable and the regulatory\nframework deserves support from all member states .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.405+0000", "entityId": 10180, "properties": {"text": "Subject: re : implementing clustering and jumps for power\nfrank ,\nour var team has been looking at different ways to implement clustering and\njumps for power prices simulation\nin var .\ni attached the suggestion we came up with and the results of clustering and\njump parameters estimation .\nwould you like to discuss this methodology ? we need your input .\nplease , let me know ,\nthank you ,\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.409+0000", "entityId": 10181, "properties": {"text": "Subject: telerate service\nhello everyone :\nplease let me know if you have a subscription to \" telerate \" ? we are\nbeing billed for this service and i do not know who is using it .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.413+0000", "entityId": 10182, "properties": {"text": "Subject: letter to academics\nvince ,\n?\nhi , sorry to bother you , but was wondering if you ' ve heard anything about\nseeking approval to use the text in the letter i sent last week ? ? we would\nlike to send this out early next week so if you know of someone who i should\ncontact within corporate communications , please let me know .\n?\nthanks , and hope all is well .\n?\njulie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.418+0000", "entityId": 10183, "properties": {"text": "Subject: re : visual numerics cnl licensing issues\nanita ,\ncould you please arrange for the purchase of the following software by\ncoordinating with mike ?\nthanks .\nrakesh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rakesh bharati / na / enron on 03 / 30 / 2001\n10 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike bothwell on 03 / 30 / 2001 08 : 58 : 20 am\nto : rakesh . bharati @ enron . com\ncc :\nsubject : re : visual numerics cnl licensing issues\nrakesh ,\nthank you very much for selecting visual numeric ' s imsl cnl . attached is a\nrevision of the quote i previously sent , reflecting a change in the\nquantity . if you have any quesitons , please contact me .\nthank you ,\nmike bothwell\naccount manager\nvisual numerics inc .\nphone : 713 - 954 - 6423\nfax : 713 - 781 - 9260\ncell : 713 - 417 - 9069\nmbothwell @ houston . vni . com\nvisual numerics celebrates 30 years\nas an independent software vendor\n- - - - - original message - - - - -\nfrom : rakesh . bharati @ enron . com [ mailto : rakesh . bharati @ enron . com ]\nsent : thursday , march 29 , 2001 6 : 05 pm\nto : mike bothwell\nsubject : re : visual numerics cnl licensing issues\nmike ,\nwe have decided to go ahead with the purchase of a single license of imsl\nlibraries ( c / c + + ) for pc . i believe that would be cnl 4 . 0 forpc . let me\ncheck the cost for the license before we finalize it as i have mislaid your\nprevious e - mail about the cost . it is my recollection that it is less than\n$ 1500 . please e - mail to confirm with the precise number so we can proceed\nwih that .\nthanks ,\nrakesh\nmike bothwell on 03 / 29 / 2001 12 : 56 : 03 pm\nto : \" ' rakesh . bharati @ enron . com ' \"\ncc :\nsubject : visual numerics cnl licensing issues\nrakesh , i ' m just following up to see how things looked on this . any change\nin status ? let me know i can furhter help you .\nbest regards ,\nmike bothwell\naccount manager\nvisual numerics inc .\nphone : 713 - 954 - 6423\nfax : 713 - 781 - 9260\ncell : 713 - 417 - 9069\nmbothwell @ houston . vni . com\nvisual numerics celebrates 30 years\nas an independent software vendor\nrakesh ,\nas we discussed , the cnl 4 . 0 pc libraries are not license managed . version\n5 will be . the pc version 4 . 0 can be installed on a network drive and\ncalled from networked pcs . as expected , we would ask that enron honor the\nlicense agreement by allowing only the number of simultaneous uses\npermitted\nby the license . version 5 . 0 will be license managed and can be licensed as\nnode locked or floating .\nwith regard to unix licensing , the current version of cnl for unix is\nlicense managed . it can be licensed as node locked or floating . if you\ninstall the libraries on a unix server as node locked , the number of\nsimultaneous sessions on that server is not limited except by the\ncapabilities of the machine . a floating unix license would be checked out\nby the individual user to be executed on a local machine .\nalso as mentioned , your investment is protected by allowing you to upgrade\nin the future by paying only the price difference between your current and\ndesired platforms . this upgrade option only applies to licenses covered\nunder support .\nif you have any additional questions , please let me know . i look forward\nto\nproviding you the best math and statistical libraries available today to\nhelp you solve your problems and understand your data .\nbest regards ,\nmike bothwell\naccount manager\nvisual numerics inc .\nphone : 713 - 954 - 6423\nfax : 713 - 781 - 9260\ncell : 713 - 417 - 9069\nmbothwell @ houston . vni . com\nvisual numerics celebrates 30 years\nas an independent software vendor\n- vni - mb - enro - 014 - 1 03 - 30 - 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.423+0000", "entityId": 10184, "properties": {"text": "Subject: asset swaps vs cds ' s\n- - - - - - - - - - - - - - - - - - - - - - forwarded by bryan seyfried / lon / ect on 30 / 03 / 2001\n17 : 12 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmartin mcdermott\n23 / 03 / 2001 18 : 47\nto : john sherriff / lon / ect @ ect , bryan seyfried / lon / ect @ ect\ncc :\nsubject : asset swaps vs cds ' s\njohn ,\ni haven ' t had much time to put something together on this issue .\nfundamentally both instruments represent the same credit risk , i . e . same\ncredit events and contingent payments , both represent senior unsecured credit\nrisk . the differences in pricing therefore arise purely from supply and\ndemand . one would expect generally that the asset swap would be lower than\nthe cds because of liquidity : there are only so many bonds out there , and so\ndemand for asset swaps is limited . i am attaching a one page note by jp\nmorgan where they claim that one of the principal reasons for the cds to be\nmore expensive is people hedging convertible bonds by combining ( 1 ) a call\noption on the equity and ( 2 ) a cds . if the call is cheap they will be\nwilling to pay more for the cds , driving the price up . i ' ll try to\nsynthesize something more complete next week .\ncheers\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.427+0000", "entityId": 10185, "properties": {"text": "Subject: thanks again\nvince :\ni ' m looking forward to getting your outline on the economic paradigm . i hope\nthat , among all the paper i ' ve bombarded you with over the last few weeks , i\nhave included a reprint of a fall 1998 jacf article entitled \" how to use eva\nin the oil and gas industry . \" if this is not among the things i have left you\nwith , i ' d be happy to send you a copy .\nthe discussion of hydrocarbon reserve values is very much along the lines we\nhave been discussing .\nbest regards ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.432+0000", "entityId": 10186, "properties": {"text": "Subject: good meeting\nmark :\ni enjoyed our meeting last tuseday very much and i look forward to calling\nyou again in a week or so . i think your idea of having me present to several\nsenior enron executives including koenig and , perhaps , jeff skilling is very\ngood .\ni discussed this a bit with vince kaminski on thursday as well and he\nexpressed a strong interest in attending the meeting as well .\nregards ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.438+0000", "entityId": 10187, "properties": {"text": "Subject: thank you for renewing your subscription to power finance & risk\ndear vince kaminski :\nthank you for renewing your subscription to power finance & risk - your\nexclusive source for power financing and trading news -\nhttp : / / www . iipower . com .\nremember , your subscription entitles you to breaking news emails , print\nissues and access to http : / / www . iipower . com . online , you can access breaking\nnews and the current issue , as well as a searchable archive and special\nsupplements .\nplease continue to enjoy access to http : / / www . iipower . com , using the user id\nand password you provided :\nuser id : vkaminski\npass word : italia\nplease note your account 00235424 - 0015\n* please remember that your user name and password may be used only by you .\nviolation of this rule will cause you to forfeit your complimentary access to\nthe subscribers only area of the web site .\nwhy not bookmark http : / / www . iipower . com now , or make it your homepage for\neasy access in the future ?\nif you have any questions , please email us at\nmailto : customerservice @ iinews . com or call customer service at ( 212 ) 224 - 3800\nbetween 8 a . m . and 6 p . m . eastern time .\nsincerely ,\nnalini humphrey\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\nnalini humphrey\ncustomer service\n( 212 ) 224 - 3800\nmailto : customerservice @ iinews . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.443+0000", "entityId": 10188, "properties": {"text": "Subject: iso new england and pjm propose standard market design\nmessage sent from the pjm - customer - info mailing list at\npjm - customer - info @ majordomo . pjm . com :\niso new england and pjm interconnection propose a\nstandard market design for wholesale electricity markets\nmarch 29 , 2001 - holyoke , ma - two of the country ' s leading wholesale\nelectricity market administrators , iso new england inc . and pjm\ninterconnection ,\nl . l . c . , together with alstom esca corporation , a systems developer for\nelectric\nutilities , today announce their intent to formalize an agreement that will not\nonly standardize their electricity markets , but will lead , they believe , to\nthe\nstandardization of wholesale electricity markets across the country .\ntoday , iso new england delivered a letter to the chairman and commissioners of\nthe federal energy regulatory commission ( ferc ) , enclosing a report concerning\nits proposed comprehensive wholesale market program that combines salient\nfeatures of the pjm market model with elements of its own existing wholesale\nmarket design . the combination would create a standardized wholesale market\nstructure called the standard market design for wholesale electricity markets\n( \" standard market design \" ) .\niso new england , alstom esca and pjm , acting through its wholly - owned\nsubsidiary , pjm technologies inc . , have agreed to proceed with the negotiation\nof an agreement where iso new england will purchase the existing pjm market\ndesign and certain software components from alstom esca and pjm . the two isos\nand alstom esca will work together to create a standardized market design that\nincludes solutions to reserve markets and a common solution to unit dispatch .\n\" this new market standard should put into place the necessary market\nimprovements more quickly and at a reduced cost than if we were to implement a\ncustomized market system for new england , \" said william w . berry , chairman and\nacting ceo of iso new england . \" now is the time to stop the experimentation .\nultimately , we hope the standard market design will serve as the benchmark for\nwholesale electricity marketplaces across the country , if not around the\nworld . \"\n\" pjm is very excited to further standardize a design for a competitive\nwholesale\nelectricity market , \" said phillip g . harris , chairman and ceo of pjm . \" along\nwith the progress in the implementation of the pjm west concept , this\ninitiative\nwill provide an even broader standardized market design . \"\nthis approach should further expedite the elimination of trading barriers\nacross\ndifferent markets and promote ferc ' s goal of creating a seamless marketplace .\n\" we intend to continue to work with the new york iso on issues of mutual\nimportance , \" stated mr . berry . \" this new market design , together with our\nefforts to address the market \" seams \" and other coordination issues , will\neventually bring the three northeast iso markets closer together . \" iso new\nengland and the new york iso will continue to work together on these issues\nunder a joint board resolution passed on january 16 , 2001 .\n\" because of our geographic location , new york is in the center of the\nnortheast\nmarkets , with iso new england , pjm and imo each on one of our borders . we\nsupport the continued elimination of barriers across northeast trading markets\nto develop a more seamless marketplace where everyone will benefit , \" said\nwilliam j . museler , president and ceo of the new york independent system\noperator . \" the new york iso will continue to work with our neighboring markets\nto remove barriers to trading across the region and to move towards larger\nregional markets . \"\nthis proposed market design standard will be developed jointly with\nstakeholder\ninput . iso new england will propose the standard market design to the new\nengland conference of public utility commissioners and the new england power\npool in a series of meetings next week . additional meetings will be conducted\nin the next few weeks . the standard market design for new england will be\nsubject to ferc approval .\n\" standardization requires consistent and reliable technology to facilitate a\nmarket ' s efficiency . a market that moderates price fluctuations and\nencourages\ninvestment based on an expected return is an efficient market - - and\nefficiency\nis the key to establishing market liquidity , \" said alain steven , ceo of alstom\nesca . \" in the future , this agreement will be viewed as a catalyst in\nestablishing more robust electricity markets . \"\niso new england inc . is the not - for - profit corporation responsible for the\nday - to - day reliable operation of new england ' s bulk generation and\ntransmission\nsystems with an installed capacity of almost 26 , 000 megawatts . in addition to\noperating the bulk power grid , iso new england is the administrator of the\nregion ' s wholesale electricity marketplace and the open access transmission\ntariff on behalf of the new england power pool . iso new england is based in\nholyoke , massachusetts .\nthe pjm interconnection , l . l . c . , is an independent system operator ,\nadministering the pjm open access transmission tariff and operating the pjm\nenergy markets and capacity markets . pjm currently administers the largest\nwholesale electricity market in the world and has a membership of more than\n200 .\nit is headquartered in norristown , pennsylvania . pjm technologies , inc . is a\nwholly - owned subsidiary of pjm interconnection , l . l . c . , designed to respond to\nmarket opportunities by bringing cost - effective , reliable solutions to the\nenergy marketplace . it was created to commercialize pjm ' s knowledge capital ,\nexperience , and proven success in electric energy markets , system operations ,\nand applications development .\n# # #\nfor more information about the new york iso , please call : steve sullivan ,\ndirector of communications , 518 - 356 - 7605 .\nplease do not reply to this message . if you have a question for pjm customer\nrelations and training , please complete and submit this form :\nto unsubscribe from this list , send an e - mail to majordomo @ majordomo . pjm . com\ncontaining only the following line in the body of the e - mail :\nunsubscribe pjm - customer - info", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.453+0000", "entityId": 10189, "properties": {"text": "Subject: the national forum on corporate finance\nandrew fastow\nenron co .\nhi andy\ni don ' t recall sending the above attachment . if so , please pardon my\nredundancy .\nattached is some registration details for the upcoming corporate finance\nconference here at rice . when you get a moment , if you could have someone\non your staff return it that would be great .\neach topic is followed by \" panel \" discussion . we have you slated to serve\non the panel dealing with \" equity dilution from option compensation \" and\nwill feature work by david yermack from nyu . stu gillan from tiaa / cref\nwill be serving on the panel with you along with john blahnik from delphi\nautomotive .\nplease call me direct if i can be of any help or assistance .\ndave ikenberry\n- registation details regarding . doc\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.461+0000", "entityId": 10190, "properties": {"text": "Subject: registration materials for nfcf\nto :\nandres almazan\ndon chew\njohn freeman\ngeoge gau\nvince kaminski\nbob marchesi\njohn martin\nvojislav maksimovic\nlaura starks\nart warga\nmichael weisbach\ndear friends\nattached is some registration and logistical information relating to the\nupcoming corporate finance conference on may 4 - 5 in houston . if you have\nany questions , please don ' t hesitate to contact sheridan , bob or myself .\nthe program is shaping up nicely , however one of us may draft to serve in\nsome small , but helpful capacity .\nsheridan titman , 512 . 232 . 2787 , titman @ mail . utexas . edu ,\nbob parrino at parrino @ mail . utexas . edu\ndave ikenberry , 713 . 348 . 5385 , daveike @ rice . edu\nas of today , the list of firms sending a representative include :\npfizer\npacificare\ncooper industries\nradioshack\npepsi\ndelphi automotive\nmicrosoft\nwhirlpool\nenron\njohnson controls\nairgas\nsara lee\ndell\nconoco\n- particpate registation details . doc\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.466+0000", "entityId": 10191, "properties": {"text": "Subject: re : enron default swaps\ndarrell ,\ni am sending you 2 technical notes on enron default swaps : i hope that they\nwill\nbe useful . i shall read the articles on weekend . i am curious if you\nfind these explanations satisfactory .\nwe are very slow in preparing a number of technical documents\nfor you for model reviews . we still hope you will be able\nto find some time to review our credit models ( for our london\ncredit trading ) and var and option pricing related models .\nalso , please check your invoices . i still think we owe you money .\nvince\ndarrell duffie on 03 / 28 / 2001 08 : 07 : 38 am\nto : vince j kaminski\ncc :\nsubject : re : enron default swaps\nvince : according to a bank of america\npublication , your ( enron ) default swap spreads\nare consistently trading about 80\nbasis points wider than your asset swaps .\nany idea of what is going on here ?\nthanks for any guidance , darrell\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.471+0000", "entityId": 10192, "properties": {"text": "Subject: re : yo !\nvince ,\nhere is a little more info on the book bob darden is writing that might be\nuseful in explaining who he is talking to at present .\njohn\n> date : fri , 30 mar 2001 12 : 29 : 11 - 0600\n> from : robert darden\n> subject : re : yo !\n> x - sender : \" robert darden \" ( unverified )\n> to : \" john d . martin \"\n> organization : the door\n> x - mailer : mozilla 4 . 04 [ en ] c - flashnet ( win 95 ; i )\n>\n> you , sir , are a gentleman and a scholar .\n> if the research director needs more info on the book , i can send him / her\n> whatever they need :\n> publisher : fleming h . revell ( a division of baker books )\n> deadline : may 30\n> people who we have already interviewed or who we have tentative\n> agreements to interview :\n> jerry conangelo , norm miller , dr . kenneth cooper , philip clements ,\n> george gallup , ted benna , bob lawless , jack eckerd , truett cathey , ed\n> bonneau , jay pifer , bill bailey etc . . .\n> thanks again\n> bob\n>\n> john d . martin wrote :\n> >\n> > at 11 : 35 am 3 / 30 / 01 - 0600 , you wrote :\n> > > hi john - - i enjoyed our meeting yesterday . this looks very promising .\n> > > meanwhile , as i mentioned at the table , i ' m getting a little nervous\n> > > about the book that is due june 1 .\n> > > one of the names on our \" wish \" list of interviewees for \" the business of\n> > > heaven \" is ken lay at enron . ( yes , i ' ll try to get this for you today )\n> > > would it be possible for you to give me a good address and phone number\n> > > for mr . lay ' s office ?\n> > > and may i mention your name in the cover letter ? ( certainly - - not that it\n> > will necessarily help . i ' ll talk to the director of research about your\n> > project and see if he can help )\n> > > i would be forever indebted . i might even buy the next lunch .\n> > > bob\n> > > p . s . thanks for sharing your concerns about church yesterday , too . i ' m\n> > > genuinely sorry things didn ' t work out better and feel more than a\n> > > little embarrassed that i didn ' t work harder to make you guys feel more\n> > > welcome and connected . on the other hand , please know that mary and i\n> > > will always love you and consider you both friends . i know you ' ll be\n> > > happy at lake shore - - even as we miss you at 7 th !\n> > >\n> > john d . martin\n> > carr p . collins chair in finance\n> > finance department\n> > baylor university\n> > po box 98004\n> > waco , tx 76798\n> > 254 - 710 - 4473 ( office )\n> > 254 - 710 - 1092 ( fax )\n> > j _ martin @ baylor . edu\n> > web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.478+0000", "entityId": 10193, "properties": {"text": "Subject: good morning / afternoon\nvince ,\none of my colleagues here at baylor is writing a book about \" the business\nof heaven \" in which he interviews prominent business leaders . bob darden\nis his name and he ' s a former journalist and nice guy . he would like to\ncontact ken lay about being one of his interviews . do you think this is\npossible ? if so , could you give me an address / phone numbers that bob might\nuse to contact ken ' s secretary about setting up an interview ?\nif this is in any way \" not ok \" please just say so .\nsee ya ,\njohn\n> date : fri , 30 mar 2001 11 : 35 : 03 - 0600\n> from : robert darden\n> subject : yo !\n> x - sender : \" robert darden \" ( unverified )\n> to : j _ martin @ baylor . edu\n> organization : the door\n> x - mailer : mozilla 4 . 04 [ en ] c - flashnet ( win 95 ; i )\n>\n> hi john - - i enjoyed our meeting yesterday . this looks very promising .\n> meanwhile , as i mentioned at the table , i ' m getting a little nervous\n> about the book that is due june 1 .\n> one of the names on our \" wish \" list of interviewees for \" the business of\n> heaven \" is ken lay at enron .\n> would it be possible for you to give me a good address and phone number\n> for mr . lay ' s office ?\n> and may i mention your name in the cover letter ?\n> i would be forever indebted . i might even buy the next lunch .\n> bob\n> p . s . thanks for sharing your concerns about church yesterday , too . i ' m\n> genuinely sorry things didn ' t work out better and feel more than a\n> little embarrassed that i didn ' t work harder to make you guys feel more\n> welcome and connected . on the other hand , please know that mary and i\n> will always love you and consider you both friends . i know you ' ll be\n> happy at lake shore - - even as we miss you at 7 th !\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.484+0000", "entityId": 10194, "properties": {"text": "Subject: enside draft\nhere is the version with my modifications over mike ' s version . please feel\nfree\nto make modifications / corrections .\nosman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.491+0000", "entityId": 10195, "properties": {"text": "Subject: technical corner\nvince ,\nlast monday , i sent the vp ' s an e - mail asking for their help ( from them , or\nfrom one of the people working with them ) in providing a technical corner\narticle by today . to date , sandeep and mike have responded but cannot do one\nfor this coming week . i didn ' t get a response from the other three . do you\nhave something that could be easily adapted for the monday issue ?\nand , any suggestions about how to motivate a vp would be appreciated . my\nusual approach is to ask politely , which usually gets a positive response . i\nknow the newsletter is low priority compared to our daily work , but surely as\nmuch as our people like to publish their ideas , one person out of\nforty - some - odd would be able to do something in a week ' s time , right ?\nas always , i appreciate your help . and , if you would care to share some\nadvice on how i can do this in a better way , i will always listen and learn .\nsam", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.496+0000", "entityId": 10196, "properties": {"text": "Subject: re : visual numerics cnl licensing issues\nrakesh ,\nto confirm our conversation :\nplease , go ahead and buy a copy .\nvince\nrakesh bharati @ enron\n03 / 29 / 2001 02 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc : tanya tamarchenko / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : visual numerics cnl licensing issues\nvince ,\ntanya and i feel that there is a need for a constrained optimization routine\nfor our var related research . numerical recipes does not contain\nsubroutines where equality and inequality contraints can be easily\nincorporated . also , the number of arguments that can be handled is also\nlimited .\nimsl provides a comprehensive library of more than 300 c / c + + statistical and\nmathematical analysis functions . we think that it would be of great value to\nour efforts and to the efforts of our research group . presently the cost is\naproximately around $ 1500 and mike bothwell ( visual numerics rep ) assures us\nas the version is not license protected , we all can use it as long as\nsimultaneous usage is within the license .\nplease let me know if you should need further information .\nthanks ,\nrakesh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rakesh bharati / na / enron on 03 / 29 / 2001\n01 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike bothwell on 03 / 29 / 2001 12 : 56 : 03 pm\nto : \" ' rakesh . bharati @ enron . com ' \"\ncc :\nsubject : visual numerics cnl licensing issues\nrakesh , i ' m just following up to see how things looked on this . any change\nin status ? let me know i can furhter help you .\nbest regards ,\nmike bothwell\naccount manager\nvisual numerics inc .\nphone : 713 - 954 - 6423\nfax : 713 - 781 - 9260\ncell : 713 - 417 - 9069\nmbothwell @ houston . vni . com\nvisual numerics celebrates 30 years\nas an independent software vendor\nrakesh ,\nas we discussed , the cnl 4 . 0 pc libraries are not license managed . version\n5 will be . the pc version 4 . 0 can be installed on a network drive and\ncalled from networked pcs . as expected , we would ask that enron honor the\nlicense agreement by allowing only the number of simultaneous uses permitted\nby the license . version 5 . 0 will be license managed and can be licensed as\nnode locked or floating .\nwith regard to unix licensing , the current version of cnl for unix is\nlicense managed . it can be licensed as node locked or floating . if you\ninstall the libraries on a unix server as node locked , the number of\nsimultaneous sessions on that server is not limited except by the\ncapabilities of the machine . a floating unix license would be checked out\nby the individual user to be executed on a local machine .\nalso as mentioned , your investment is protected by allowing you to upgrade\nin the future by paying only the price difference between your current and\ndesired platforms . this upgrade option only applies to licenses covered\nunder support .\nif you have any additional questions , please let me know . i look forward to\nproviding you the best math and statistical libraries available today to\nhelp you solve your problems and understand your data .\nbest regards ,\nmike bothwell\naccount manager\nvisual numerics inc .\nphone : 713 - 954 - 6423\nfax : 713 - 781 - 9260\ncell : 713 - 417 - 9069\nmbothwell @ houston . vni . com\nvisual numerics celebrates 30 years\nas an independent software vendor", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.501+0000", "entityId": 10197, "properties": {"text": "Subject: re : recommendation of an outstanding baylor mba student for summer\ninternship\nat 10 : 17 am 3 / 31 / 2001 - 0600 , vince . j . kaminski @ enron . com wrote :\njim ,\ni shall contact althea and make sure rusty meets with the research group\nmembers .\nvince\nvince , i am quite grateful . thanks for arranging this .\nby the way , is there any chance that i might be able to attract you to campus\nthis spring before school lets out ? ? if not , let ' s definitely plan on\nscheduling a time during the coming fall 2001 semester when you can visit\ncampus and present a lecture to my risk management students .\nsincerely ,\njim garven\njames r . garven , ph . d .\nprofessor of finance & insurance\ndepartment of finance , insurance and real estate\nhankamer school of business\nhsb 336\nbaylor university\nbox 98004\nwaco , tx ? 76798\nvoice : ( 254 ) 710 - 6207\nfax : ( 320 ) 213 - 5580\ne - mail : james _ garven @ baylor . edu\nhome page : http : / / garven . baylor . edu\nvita : http : / / garven . baylor . edu / dossier . html\nresearch paper archive : http : / / garven . baylor . edu / research . html\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.506+0000", "entityId": 10198, "properties": {"text": "Subject: re : recommendation of an outstanding baylor mba student for summer\ninternship\njim ,\ni shall contact althea and make sure rusty meets with the research group\nmembers .\nvince\njim garven on 03 / 28 / 2001 01 : 01 : 42 pm\nto : stinson _ gibner @ enron . com\ncc : vince _ j _ kaminski @ enron . com\nsubject : recommendation of an outstanding baylor mba student for summer\ninternship\ndear stinson ,\ni would like to call your attention to rusty parks , who is an mba student\nhere and has been serving as my research assistant since last fall . ? rusty is\na very outstanding individual with a very impressive work ethic and interest\nin topics such as financial engineering and technology , particularly as these\nissues pertain to the energy industry . ? ? in fact , you met rusty during your\nrecent visit to baylor ( specifically , last month over dinner at the gamma\niota sigma chartering ceremony ) .\ni happen to know that rusty is already scheduled to visit enron for an\ninterview for a summer internship on april 19 . ? he has been invited by althea\ngordon . ? if there is any possibility that you could meet with him during his\nvisit , i am sure that he would be most grateful . ? rusty is one of the very\nbest research assistants i have ever had , and i am sure that enron would\nbenefit from having him aboard during the coming summer .\nsincerely ,\njim garven\np . s . : please find rusty ' s resume attached to this email .\njames r . garven , ph . d .\nprofessor of finance & insurance\ndepartment of finance , insurance and real estate\nhankamer school of business\nhsb 336\nbaylor university\nbox 98004\nwaco , tx ? 76798\nvoice : ( 254 ) 710 - 6207\nfax : ( 603 ) 994 - 6680\ne - mail : james _ garven @ baylor . edu\nhome page : http : / / garven . baylor . edu\nvita : http : / / garven . baylor . edu / dossier . html\nresearch paper archive : http : / / garven . baylor . edu / research . html\n- rusty parks resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.510+0000", "entityId": 10199, "properties": {"text": "Subject: re : obrona - mba\npani agato ,\ndwa punkty :\n1 . pytania\n2 . dodatkowe komplikacje .\ni . pytania\ncontrolling wprzedsiebiorstwie\n1 . prosze przedyskutowac podzial funkcji i\nrachunkowoscia .\nczym rozni sie controlling odwewnetrznego i zewnetrznego auditing .\n2 . prosze omowic zalety ? oraz wady \u0001 & rachunku kosztow dzialan \u0001 8 ( abc ) .\nanaliza wskaznikowa\n1 . prosze przedyskutowac ograniczenia analizy wskaznikowej .\n2 . prosze omowic istote analizy piramidalnej . jakie informacje o stanie\nfinansowym przedsiebiorstwa mozna uzyskac stosujac te metode ?\npezentacja instrumentow analizy finansowej\n1 . prosze omowic metody przewidywania potencjalnego ? bankructwa firmy przy\nzastosowaniu analizy wskaznikiwej .\n2 . prosze przedyskutowac klasyfikacje wskaznikow ekonomicznych\nwykorzystywanych do .\nii . komplikacje .\nwe wtorek , 3 kwietnia rano , wylatuje do filadelfii . powinienem dotrzec do\nhotelu okolo godziny 12 czasu lokalnego , czyli godziny 6 : 00 wieczorem czasu\npolskiego . roznica czasu w stosunku do houstonu jest 7 godzin , ? w stosunku\ndo\nwybrzeza wschodniego jest 6 godzin .\njutro przesle szczegolowy plan podrozy , ktory bedzie zawierac adres i numer\nhotelu . prosze przeslac mi numer , na ktory moge zadzwonic , by podac numer\npokoju , lub zadzwonic z samolotu w przypadku opoznienia lotu .\nw . kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.515+0000", "entityId": 10200, "properties": {"text": "Subject: re : real options\npaul ,\nwe have done a lot of work in this area . i shall call you later\ntoday ( monday my time ) , tuesday morning your time with\nsome recommendations .\nvince\np . s . shirley , please send a real options binder to paul .\nvince\nfrom : paul smith @ enron _ development on 03 / 30 / 2001 08 : 42 am zel 0\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : real options\nvince ,\nthe sydney office is currently evaluating a proposal that involves an option\nto participate in building a wind farm . should this proceed , we would like to\nmark this option \" to market \" .\nhave the research group completed any work on methods for booking and\nremarking real options ? alternatively , do you have any suggestions as to the\nbest way to value , and book , real options fairly ?\nregards\npaul smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.520+0000", "entityId": 10201, "properties": {"text": "Subject: ferc ' s soft price caps : what do they mean ? - cera conference call\nnotification\n* * * please accept our apologies if you have received this message already * * *\nwe have been experiencing some technical difficulties , and you may have\nalready received this message last week . ? we apologize for any inconvenience\nthis may have caused . - cera webmaster\ntitle : ferc ' s soft price caps : what do they mean ?\nurl :\n0 . html\nor\n0 . html\ntopic : ferc ' s price caps : what do they mean ?\n* objectives and methodology outlined by ferc in these orders\n* implications of this form of price cap on competitive power markets\n* ferc ' s application of other price cap methodologies in other regions\nformat\nour speakers will address this topic for 30 minutes , with accompanying\ngraphics\npresented on the internet , followed by an open question and answer period .\nspeakers\njohn athas , cera associate director , north american electric power\nmike zenker , cera director , western energy\ntime\n4 : 00 p . m . eastern , tuesday , april 10 , 2001\neligibility\nclients eligible to participate in this conference call are those who\nsubscribe\nto the cera north american electric power retainer advisory service or the\nwestern energy retainer advisory service .\nto enroll\nto enroll , please send a fax to kari paakaula at ( 617 ) 497 - 0423 or send an\ne - mail to kpaakaula @ cera . com before 4 : 00 p . m . , monday , april 9 , 2001 . please\ninclude your name , company , and telephone number with your correspondence .\nto participate\nto participate in the audio portion of the call , please call in on one of the\nfollowing numbers approximately 10 - 15 minutes before the call :\nwithin the united states : 1 - 800 - 946 - 0713\noutside the united states : ( 719 ) 457 - 2642\nconfirmation code : 713248\ntitle of the call : cera power call\nto participate in the internet portion of the call ( audio is by telephone ) ,\nlog\non to the internet approximately 15 - 30 minutes before the presentation to\nensure technological compatibility .\n1 . point your browser to http : / / www . placeware . com / cc / visioncastconferencing\n2 . enter the following information , then click \" attend \" :\n* your name\n* meeting id : w 713248\n* meeting key : 713838\n3 . access audio for the meeting using the audio information above .\nsystem requirements and suggestions\n* internet connection not reliant on the phone line you will use for the\ncall .\n* a java - enabled browser , such as microsoft internet explorer 3 . 02 or higher ;\nnetscape navigator 3 . 02 or higher ; or sun hot java ( tm )\n* close all desktop applications and disable your screen saver\nto ensure computer compatibility , complete the internet instructions before\nthe\nday of the call . a message will appear telling you that your meeting is not\nready to start . however , it also informs you about any action that you may\nneed\nto take to prepare your computer to participate .\ntechnical assistance\nif you experience difficulties during the call , you may signal for technical\nassistance by pressing * 0 ( star , zero ) on your telephone keypad , once\nconnected\nto the audio portion of the conference .\nfor more information , please contact kari paakaula via e - mail at\nkpaakaula @ cera . com or via telephone at ( 617 ) 441 - 1362 .\na recording of this call will be available until may 10 , 2001 . to access this\nrecording , please call 1 - 888 - 203 - 1112 ( within the united states ) or\n719 ) 457 - 0820 ( outside the united states ) . please use confirmation number\n713248 to access the call .\n* * end * *\ne - mail category : conference call notification ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\ncera knowledge area ( s ) : north american power , western energy ,\ncera ' s spring 2001 roundtable event dates and agendas are now available\nat http : / / www 20 . cera . com / event\nto make changes to your cera . com profile go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2001 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.525+0000", "entityId": 10202, "properties": {"text": "Subject: re : enron default swaps\nno hurry about those documents , i have\nso much to do already !\nthanks and warm regards ,\ndarrell\non mon , 2 apr 2001 vince . j . kaminski @ enron . com wrote :\n>\n> darrell ,\n>\n> thanks . i am beating up on my group to accelerate preparation of\n> documentation for\n> the audit .\n>\n> vince\n>\n>\n>\n>\n>\n> j d duffie on 04 / 02 / 2001 03 : 35 : 31 pm\n>\n> to :\n> cc :\n> subject : re : enron default swaps\n>\n>\n>\n> hi vince !\n>\n> i got those notes . they should indeed\n> be useful . the one from deutsche bank\n> is especially helpful !\n>\n> i am suppose to know this stuff , as i teach it !\n>\n> sorry about the delayed billing .\n> i have had trouble getting a bill\n> from my excellent asistant , taichi hoshino ,\n> who has returned to goldman tokyo ,\n> and has not been able to get anything else\n> done lately . i will try to get something out soon !\n>\n> we had several energy people ,\n> from several companies , at our credit risk\n> exec ed course last month . seems that\n> credit risk and power risk go\n> together these days !\n>\n> warm regards , darrell\n>\n>\n>\n>\n> on fri , 30 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> >\n> > darrell ,\n> >\n> > i am sending you 2 technical notes on enron default swaps : i hope that\n> they\n> > will\n> > be useful . i shall read the articles on weekend . i am curious if you\n> > find these explanations satisfactory .\n> >\n> > we are very slow in preparing a number of technical documents\n> > for you for model reviews . we still hope you will be able\n> > to find some time to review our credit models ( for our london\n> > credit trading ) and var and option pricing related models .\n> >\n> > also , please check your invoices . i still think we owe you money .\n> >\n> >\n> > vince\n> > ( see attached file : cds vs as . pdf ) ( see attached file : cdsstrat . pdf )\n> >\n> >\n> >\n> >\n> > darrell duffie on 03 / 28 / 2001 08 : 07 : 38 am\n> >\n> > to : vince j kaminski\n> > cc :\n> > subject : re : enron default swaps\n> >\n> >\n> >\n> >\n> > vince : according to a bank of america\n> > publication , your ( enron ) default swap spreads\n> > are consistently trading about 80\n> > basis points wider than your asset swaps .\n> > any idea of what is going on here ?\n> >\n> > thanks for any guidance , darrell\n> >\n> >\n> > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> > darrell duffie\n> > mail gsb stanford ca 94305 - 5015 usa\n> > phone 650 723 1976\n> > fax 650 725 7979\n> > email duffie @ stanford . edu\n> > web http : / / www . stanford . edu / ~ duffie /\n> > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> >\n> >\n> >\n> >\n>\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> darrell duffie\n> mail gsb stanford ca 94305 - 5015 usa\n> phone 650 723 1976\n> fax 650 725 7979\n> email duffie @ stanford . edu\n> web http : / / www . stanford . edu / ~ duffie /\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n>\n>\n>\n>\n>\n>\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.530+0000", "entityId": 10203, "properties": {"text": "Subject: mit research on bandwidth pricing\ngentlemen :\namit is a former mit sloan student whose research was sponsored by a program\nset up by tom gros to learn more about bandwidth pricing and market effects .\nwe worked with him quite a bit for a while , as did vince kaminski and stinson\ngibner , on this project . well , he has finally graduated and is in the\nprocess of having his thesis published . he has offered to come down to\npresent his findings to anyone interested , so i am inquiring as to your level\nof interest in order to schedule a meeting , if appropriate .\nbelow is a short description of his work . please let me know your thoughts\nand if you have any questions .\nthanks , jay .\n- -\njames f . hawthorn\nenron broadband services\nglobal bandwidth risk management\n+ 1 713 853 7606 telephone\n+ 1 713 646 8795 facsimile\n- - - - - forwarded by jay hawthorn / enron communications on 03 / 29 / 01 09 : 15 am\n- - - - -\nadhadwal @ mit . edu\n03 / 20 / 01 03 : 50 pm\nto : jay hawthorn / enron communications @ enron communications , adhadwal @ mit . edu\ncc :\nsubject :\nhi jay ,\nas per our discussion this morning , will be terrific to come on down to talk\nabout the results of my thesis related to pricing & risk management of\nforward contracts on bandwidths . thanks to the support from enron for this\nwork !\nhere ' s a brief description .\nwe addressed the problem of pricing and risk managment of forward contracts\non bandwidth under uncertain future available supply . this exposes the\nseller to both the risk of perishability as well as the risk of\novercommitments . we consider a variety of selling strategies to map\ncommitment risk , and show how forward pricing varies over time under these\nstrategies . the managerial insights into dynamic forward pricing are neat !\nhave several graphs from simulations , and several math proofs .\nthere are two technical pricing papers from this thesis , now submitted for\npublication . it will be great to share this knowledge with enron , thanks to\nyour support for the work , and also discuss how the results may be mapped\nwith real - life , possible modifications , and finally how they may be\nprogrammed and used .\nlet me know your thoughts and interest level - maybe someone from vince ' s\ngroup as well ? i can make the talk as technical as you want , depending on\nthe audience . at its core , it is math - heavy , but the insights can easily be\ntranslated to a high - managerial level view , a more detailed trader - level\nview , or a super - detailed research level view .\ncheers ,\n- amit", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.536+0000", "entityId": 10204, "properties": {"text": "Subject: re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\niris ,\ni wrote an endorsement for his book on real options ( it was on the cover\nunder jeff skilling ' s\nname ) . let ' s invite him to the thursday lunch .\nvince\nfrom : iris mack / enron @ enronxgate on 03 / 29 / 2001 05 : 52 pm\nto : stinson gibner / hou / ect @ ect , stinson gibner / enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : fw : possible visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi stinson ,\na colleague of mine - professor nalin kulatilaka of boston university -\nis interested in visiting enron to give a talk on work he is doing in the\nbroadband area .\nplease see the forwarded emails for further information and available\ndates .\ncan you let me know if we can give him a forum at one of our thursday\nresearch lunches or a friday brown bag lunch ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : nalin kulatilaka @ enron\ncom ]\nsent : thursday , march 29 , 2001 5 : 40 pm\nto : mack , iris\ncc : lin , martin\nsubject : re : possible visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi iris\ni have two different hats to wear in talking to enron . one is as a\nfinancial economist . the other as the director of the newly formed \" global\nmobility innovation initiative ( gmii ) - - this is the research project\nfunded by lucent , involving bu , lbs , and insead , to study various aspects\nof the mobile internet ( read 3 g ) .\non the former i am working with a couple of ph . d . students in understanding\n( a ) details of how having physical supply ( inventory ) can be used by a\nmarket maker . this is a problem that has been studies in the context of\nspecialists inventory in the stock market but i think really interesting in\nthe way enron does it in some of the newer markets like bandwidth . i\nthink this is a big issue in lighting up all the dark fiber that is in the\nground .\n( b ) how enron is disciplining the internal decision making process with\nmarket . this is in many ways the critical aspect of real options that\nmost finance people miss - - having options is one thing but exercising them\nand realizing their value is another . all of the incomplete contracting ,\nasymmetric information , and incentive issues are ignored in real options\nvaluation models . but they are real in practice . my impression is enron ' s\nreal success is in putting place an organization that is able to mitigate\nthese problems by imposing a market disciplining .\n( c ) how enron manages the various books that involve physicals , financials ,\ncredit etc . this is specially important when many of the real assets have\noptions features and therefore , include non - linear risk profiles . the\nstory of gas is pretty well understood but not many of the others markets\nenron has been moving into over the last few years .\non the gmii front , i think that some interesting opportunities arise when\nyou think of the spectrum in a way similar to that of dark fiber . i am\nworking with several people at lucent on this issue . i think it would be\nwonderful to engage in a conversation with enron and lucent folks in the room .\ni can do a lunch time talk on any of these issues . perhaps we can discuss\nsome of these over a conference call . clearly , having vince kaminski in the\nroom would be very important to me .\nas for schedules , the first 3 weeks of april are horrible . april 26 / 27 ,\nmay 3 / 4 are good for me .\nregards\nnalin\nat 06 : 56 pm 03 / 22 / 2001 , mack , iris wrote :\n> hi ,\n>\n> as we briefly discussed , i spoke with one of my colleagues ( dr .\n> martin lin ) about your visiting enron to give a talk and to spend some\n> time with us to discuss you work in telecommunications , real options ,\n> etc .\n>\n> martin and i are working on various broadband related problems .\n>\n> we thought it might be helpful if you let us know a bit more about\n> the following :\n> * when you want to come ( the research group has weekly\n> catered lunch on thursday and brown bag lunches on every other friday ) .\n>\n> * a description of what you want to talk about with respect\n> to telecoms , broadband , etc .\n> * who you would like to meet with me - vince kaminski ( our\n> boss ) , any other of our colleagues in research , broadband , etc .\n> . . . . . . . . . . . . . . . . . etc .\n>\n>\n>\n>\n> look forward to hearing from you .\n>\n> regards ,\n> iris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.541+0000", "entityId": 10205, "properties": {"text": "Subject: re : check and car hire\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 03 / 2001 06 : 24\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntony hamilton @ enron\n04 / 03 / 2001 05 : 16 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : re : check and car hire\nkevin\nmy wife checked with our bank - it will take up to 10 days for the $ 2000\ncheck to clear .\ni checked with enterprise ( the car hire people ) last night and the total bill\nwill be about $ 1251 - i don ' t have this much left on my credit card , help !\ni am really sorry about the hassle this is causing you , but i need some way\nfor enron to pay directly for the car , that way i won ' t need the $ 2000 check .\nmany thanks for your help\ntony", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.546+0000", "entityId": 10206, "properties": {"text": "Subject: joao neves\nvince ,\ni wanted to follow up with you to see if you had an opportunity to review\njoao neves ' resume , which i sent ? you last wednesday , and to get your\nfeedback on him .\n?\nplease ? let me know if you are interested in ? setting up an interview .\n?\nalso , i will be in houston the afternoon of ? friday , 4 / 13 , and would welcome\nthe opportunity to meet with you in person , if your schedule allows . ?\n?\ni look forward to hearing from you .\n?\nregards ,\n?\nkate szablya\npower brokers , llc\nenergy search and recruitment\n303 - 716 - 2987\n303 - 619 - 7589 cell\n303 - 716 - 3426 fax\nkate @ powerbrokersllc . com\nwww . powerbrokersllc . com\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.553+0000", "entityId": 10207, "properties": {"text": "Subject: enron ' s 2001 goals\nour vision to become the world ' s leading company positions our company for\ngreat success this year and beyond . our success is dependent on execution .\nwith that in mind , we are making enron ' s 2001 corporate and business unit\ngoals available to employees .\nplease take a few minutes to review our 2001 goals on enron ' s intranet at\nhttp : / / 172 . 28 . 92 . 190 / bowne / we believe they will help you gain a better\nunderstanding of our vision for the company and will inspire you to identify\ninnovative ways to help your organization and enron achieve our objectives .\nwe have a lot to accomplish this year , and with your hard work and\ndedication , we can realize another year of stellar performance .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.562+0000", "entityId": 10208, "properties": {"text": "Subject: temporary internet access for 5 rice students\ngood morning :\nthe research group will have 5 rice students , who are working on an\nenron project for their doctorate , coming to enron for approximately\n1 week . they will be sitting in a conference room located on the 19 th\nfloor research area .\nwe need to get them internet access ( to be applied to one computer ) , with\none logon id and password .\nwill you please let me know what i need to do to get this accomplished ?\nthey will be coming this thursday , april 5 th .\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.569+0000", "entityId": 10209, "properties": {"text": "Subject: re :\ndave ,\nthanks for the invitation . i shall be glad to join you at the dinner\nand on saturday .\ni shall come alone : my wife will stay with my son in california\ntill june ( my son graduates this spring from college ) .\ni shall remind andy fastow about nfcf .\nvince\ndavid ikenberry on 03 / 30 / 2001 06 : 57 : 57 pm\nto : \" vkamins @ ennron . com \"\ncc :\nsubject :\nvince ,\nit was good seeing you again today . i want to make sure the nfcf is on\nyour calendar for may 4 - 5 . you should be receiving some registration\nmaterials shortly .\nplease plan on coming if you can .\nalso , please attend the dinner on friday evening along with your wife if\npossible .\nregards ,\ndave\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.573+0000", "entityId": 10210, "properties": {"text": "Subject: enside newsletter\ngood morning !\nthank you for taking time out of a busy friday to allow our photographer to\nshoot some pictures for the enside . i will contact you when the proofs are\nready .\ni have attached the article draft with revisions by mike , osman and iris .\nplease peruse this draft and make any changes or corrections . i need it back\nfor the layout team by wednesday evening , april 4 , if possible .\nregards ,\nkathie grabstald\news public relations", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.578+0000", "entityId": 10211, "properties": {"text": "Subject: introducing the new iijournals online !\ninstitutional investor journals are now published online !\ndear subscriber ,\nyour institutional investor journals subscription now includes free access to\na full - text website . visit www . iijournals . com and log onto the new iijournals\nhomepage - - from there you can go to any of the journal specific sites .\nyou can logon today with the following account information .\nuserid : 13417514\npassword : 13417514\nnew site features at http : / / www . iijournals . com :\n- read the full - text of the current issue online before the paper edition\nreaches your mailbox .\n- use a keyword search engine to search through the entire listing of\niijournals abstracts .\n- access online any article that has been published since january 1999 .\n- update your personal information , change your mailing address , or sample\nother institutional investor journals .\nto read full - text articles :\nbefore accessing the full - text of articles on any institutional investor\njournals web site , you need to install adobe acrobat 4 . 0 and fileopen . this\nis a one - time process and should take only a few minutes .\nplease visit our \" how to read articles \" page on the website . click here to\nlink : http : / / www . iijournals . com / common / readarticles . asp\nwe hope you enjoy the new website . if you have any additional questions ,\ncomments , or suggestions about the website , please email info @ iijournals . com\nor phone ( 212 ) 224 - 3664 .\nsincerely ,\nallison adams\npublisher\nhttp : / / www . iijournals . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.582+0000", "entityId": 10212, "properties": {"text": "Subject: re : enron default swaps\nhi vince !\ni got those notes . they should indeed\nbe useful . the one from deutsche bank\nis especially helpful !\ni am suppose to know this stuff , as i teach it !\nsorry about the delayed billing .\ni have had trouble getting a bill\nfrom my excellent asistant , taichi hoshino ,\nwho has returned to goldman tokyo ,\nand has not been able to get anything else\ndone lately . i will try to get something out soon !\nwe had several energy people ,\nfrom several companies , at our credit risk\nexec ed course last month . seems that\ncredit risk and power risk go\ntogether these days !\nwarm regards , darrell\non fri , 30 mar 2001 vince . j . kaminski @ enron . com wrote :\n>\n> darrell ,\n>\n> i am sending you 2 technical notes on enron default swaps : i hope that they\n> will\n> be useful . i shall read the articles on weekend . i am curious if you\n> find these explanations satisfactory .\n>\n> we are very slow in preparing a number of technical documents\n> for you for model reviews . we still hope you will be able\n> to find some time to review our credit models ( for our london\n> credit trading ) and var and option pricing related models .\n>\n> also , please check your invoices . i still think we owe you money .\n>\n>\n> vince\n> ( see attached file : cds vs as . pdf ) ( see attached file : cdsstrat . pdf )\n>\n>\n>\n>\n> darrell duffie on 03 / 28 / 2001 08 : 07 : 38 am\n>\n> to : vince j kaminski\n> cc :\n> subject : re : enron default swaps\n>\n>\n>\n>\n> vince : according to a bank of america\n> publication , your ( enron ) default swap spreads\n> are consistently trading about 80\n> basis points wider than your asset swaps .\n> any idea of what is going on here ?\n>\n> thanks for any guidance , darrell\n>\n>\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n> darrell duffie\n> mail gsb stanford ca 94305 - 5015 usa\n> phone 650 723 1976\n> fax 650 725 7979\n> email duffie @ stanford . edu\n> web http : / / www . stanford . edu / ~ duffie /\n> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n>\n>\n>\n>\ndarrell duffie\nmail gsb stanford ca 94305 - 5015 usa\nphone 650 723 1976\nfax 650 725 7979\nemail duffie @ stanford . edu\nweb http : / / www . stanford . edu / ~ duffie /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.587+0000", "entityId": 10213, "properties": {"text": "Subject: re : good morning / afternoon\nthanks vince . i ' ll get right on it .\njohn\nat 08 : 10 am 4 / 2 / 01 - 0500 , you wrote :\n>\n> john ,\n>\n> the phone number for ken lay is ( 713 ) 853 - 6773 .\n> my recommendation is to call mark palmer first and discuss the book\n> with him . his recommendation will open the door . i shall mention this to\n> him\n> as well . mark ' s phone number is ( 713 ) 853 - 4738 .\n>\n> vince\n>\n>\n>\n>\n>\n>\n> \" john d . martin \" on 03 / 30 / 2001 12 : 12 : 50 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : good morning / afternoon\n>\n>\n> vince ,\n>\n> one of my colleagues here at baylor is writing a book about \" the business\n> of heaven \" in which he interviews prominent business leaders . bob darden\n> is his name and he ' s a former journalist and nice guy . he would like to\n> contact ken lay about being one of his interviews . do you think this is\n> possible ? if so , could you give me an address / phone numbers that bob might\n> use to contact ken ' s secretary about setting up an interview ?\n>\n> if this is in any way \" not ok \" please just say so .\n>\n> see ya ,\n>\n> john\n>\n> > date : fri , 30 mar 2001 11 : 35 : 03 - 0600\n> > from : robert darden\n> > subject : yo !\n> > x - sender : \" robert darden \" ( unverified )\n> > to : j _ martin @ baylor . edu\n> > organization : the door\n> > x - mailer : mozilla 4 . 04 [ en ] c - flashnet ( win 95 ; i )\n> >\n> > hi john - - i enjoyed our meeting yesterday . this looks very promising .\n> > meanwhile , as i mentioned at the table , i ' m getting a little nervous\n> > about the book that is due june 1 .\n> > one of the names on our \" wish \" list of interviewees for \" the business of\n> > heaven \" is ken lay at enron .\n> > would it be possible for you to give me a good address and phone number\n> > for mr . lay ' s office ?\n> > and may i mention your name in the cover letter ?\n> > i would be forever indebted . i might even buy the next lunch .\n> > bob\n> > p . s . thanks for sharing your concerns about church yesterday , too . i ' m\n> > genuinely sorry things didn ' t work out better and feel more than a\n> > little embarrassed that i didn ' t work harder to make you guys feel more\n> > welcome and connected . on the other hand , please know that mary and i\n> > will always love you and consider you both friends . i know you ' ll be\n> > happy at lake shore - - even as we miss you at 7 th !\n> >\n> john d . martin\n> carr p . collins chair in finance\n> finance department\n> baylor university\n> po box 98004\n> waco , tx 76798\n> 254 - 710 - 4473 ( office )\n> 254 - 710 - 1092 ( fax )\n> j _ martin @ baylor . edu\n> web : http : / / hsb . baylor . edu / html / martinj / home . html\n>\n>\n>\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.591+0000", "entityId": 10214, "properties": {"text": "Subject: re : good morning / afternoon\njohn ,\nthe phone number for ken lay is ( 713 ) 853 - 6773 .\nmy recommendation is to call mark palmer first and discuss the book\nwith him . his recommendation will open the door . i shall mention this to him\nas well . mark ' s phone number is ( 713 ) 853 - 4738 .\nvince\n\" john d . martin \" on 03 / 30 / 2001 12 : 12 : 50 pm\nto : vkamins @ enron . com\ncc :\nsubject : good morning / afternoon\nvince ,\none of my colleagues here at baylor is writing a book about \" the business\nof heaven \" in which he interviews prominent business leaders . bob darden\nis his name and he ' s a former journalist and nice guy . he would like to\ncontact ken lay about being one of his interviews . do you think this is\npossible ? if so , could you give me an address / phone numbers that bob might\nuse to contact ken ' s secretary about setting up an interview ?\nif this is in any way \" not ok \" please just say so .\nsee ya ,\njohn\n> date : fri , 30 mar 2001 11 : 35 : 03 - 0600\n> from : robert darden\n> subject : yo !\n> x - sender : \" robert darden \" ( unverified )\n> to : j _ martin @ baylor . edu\n> organization : the door\n> x - mailer : mozilla 4 . 04 [ en ] c - flashnet ( win 95 ; i )\n>\n> hi john - - i enjoyed our meeting yesterday . this looks very promising .\n> meanwhile , as i mentioned at the table , i ' m getting a little nervous\n> about the book that is due june 1 .\n> one of the names on our \" wish \" list of interviewees for \" the business of\n> heaven \" is ken lay at enron .\n> would it be possible for you to give me a good address and phone number\n> for mr . lay ' s office ?\n> and may i mention your name in the cover letter ?\n> i would be forever indebted . i might even buy the next lunch .\n> bob\n> p . s . thanks for sharing your concerns about church yesterday , too . i ' m\n> genuinely sorry things didn ' t work out better and feel more than a\n> little embarrassed that i didn ' t work harder to make you guys feel more\n> welcome and connected . on the other hand , please know that mary and i\n> will always love you and consider you both friends . i know you ' ll be\n> happy at lake shore - - even as we miss you at 7 th !\n>\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.597+0000", "entityId": 10215, "properties": {"text": "Subject: re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\nthanks , i will followup with shirley and vasant asap .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 02 , 2001 10 : 32 am\nto : mack , iris\ncc : kaminski , vince ; shanbhogue , vasant\nsubject : re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\niris ,\nplease , check with shirley . she keeps my calendar up to date .\nalso , we got a 2 nd desk for you with the credit group\non the 23 rd floor . you can divide your time\nbet the 19 th floor and the 23 rd floor to stay in touch with the\nbusiness unit . please , check with vasant and he will introduce you to the\ncredit team here in houston ( jeff kinneman , craig chaney ) .\nalso , please plan for a trip to london in 3 - 4 weeks .\nvince\nvince\nfrom : iris mack / enron @ enronxgate on 04 / 02 / 2001 09 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\nhi ,\nthanks for your prompt response .\nnalin kulatilaka wants to visit when you are in town . what are good\nthursdays for you ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 02 , 2001 8 : 14 am\nto : mack , iris\ncc : gibner , stinson ; kaminski , vince\nsubject : re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\niris ,\ni wrote an endorsement for his book on real options ( it was on the cover\nunder jeff skilling ' s\nname ) . let ' s invite him to the thursday lunch .\nvince\nfrom : iris mack / enron @ enronxgate on 03 / 29 / 2001 05 : 52 pm\nto : stinson gibner / hou / ect @ ect , stinson gibner / enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : fw : possible visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi stinson ,\na colleague of mine - professor nalin kulatilaka of boston university -\nis interested in visiting enron to give a talk on work he is doing in the\nbroadband area .\nplease see the forwarded emails for further information and available\ndates .\ncan you let me know if we can give him a forum at one of our thursday\nresearch lunches or a friday brown bag lunch ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : nalin kulatilaka @ enron\ncom ]\nsent : thursday , march 29 , 2001 5 : 40 pm\nto : mack , iris\ncc : lin , martin\nsubject : re : possible visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi iris\ni have two different hats to wear in talking to enron . one is as a\nfinancial economist . the other as the director of the newly formed \" global\nmobility innovation initiative ( gmii ) - - this is the research project\nfunded by lucent , involving bu , lbs , and insead , to study various aspects\nof the mobile internet ( read 3 g ) .\non the former i am working with a couple of ph . d . students in understanding\n( a ) details of how having physical supply ( inventory ) can be used by a\nmarket maker . this is a problem that has been studies in the context of\nspecialists inventory in the stock market but i think really interesting in\nthe way enron does it in some of the newer markets like bandwidth . i\nthink this is a big issue in lighting up all the dark fiber that is in the\nground .\n( b ) how enron is disciplining the internal decision making process with\nmarket . this is in many ways the critical aspect of real options that\nmost finance people miss - - having options is one thing but exercising them\nand realizing their value is another . all of the incomplete contracting ,\nasymmetric information , and incentive issues are ignored in real options\nvaluation models . but they are real in practice . my impression is enron ' s\nreal success is in putting place an organization that is able to mitigate\nthese problems by imposing a market disciplining .\n( c ) how enron manages the various books that involve physicals , financials ,\ncredit etc . this is specially important when many of the real assets have\noptions features and therefore , include non - linear risk profiles . the\nstory of gas is pretty well understood but not many of the others markets\nenron has been moving into over the last few years .\non the gmii front , i think that some interesting opportunities arise when\nyou think of the spectrum in a way similar to that of dark fiber . i am\nworking with several people at lucent on this issue . i think it would be\nwonderful to engage in a conversation with enron and lucent folks in the room .\ni can do a lunch time talk on any of these issues . perhaps we can discuss\nsome of these over a conference call . clearly , having vince kaminski in the\nroom would be very important to me .\nas for schedules , the first 3 weeks of april are horrible . april 26 / 27 ,\nmay 3 / 4 are good for me .\nregards\nnalin\nat 06 : 56 pm 03 / 22 / 2001 , mack , iris wrote :\n> hi ,\n>\n> as we briefly discussed , i spoke with one of my colleagues ( dr .\n> martin lin ) about your visiting enron to give a talk and to spend some\n> time with us to discuss you work in telecommunications , real options ,\n> etc .\n>\n> martin and i are working on various broadband related problems .\n>\n> we thought it might be helpful if you let us know a bit more about\n> the following :\n> * when you want to come ( the research group has weekly\n> catered lunch on thursday and brown bag lunches on every other friday ) .\n>\n> * a description of what you want to talk about with respect\n> to telecoms , broadband , etc .\n> * who you would like to meet with me - vince kaminski ( our\n> boss ) , any other of our colleagues in research , broadband , etc .\n> . . . . . . . . . . . . . . . . . etc .\n>\n>\n>\n>\n> look forward to hearing from you .\n>\n> regards ,\n> iris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.602+0000", "entityId": 10216, "properties": {"text": "Subject: re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\niris ,\nplease , check with shirley . she keeps my calendar up to date .\nalso , we got a 2 nd desk for you with the credit group\non the 23 rd floor . you can divide your time\nbet the 19 th floor and the 23 rd floor to stay in touch with the\nbusiness unit . please , check with vasant and he will introduce you to the\ncredit team here in houston ( jeff kinneman , craig chaney ) .\nalso , please plan for a trip to london in 3 - 4 weeks .\nvince\nvince\nfrom : iris mack / enron @ enronxgate on 04 / 02 / 2001 09 : 57 am\nto : vince j kaminski / hou / ect @ ect\ncc : stinson gibner / hou / ect @ ect\nsubject : re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\nhi ,\nthanks for your prompt response .\nnalin kulatilaka wants to visit when you are in town . what are good\nthursdays for you ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 02 , 2001 8 : 14 am\nto : mack , iris\ncc : gibner , stinson ; kaminski , vince\nsubject : re : fw : possible visit to enron by professor nalin kulatilaka of\nboston university\niris ,\ni wrote an endorsement for his book on real options ( it was on the cover\nunder jeff skilling ' s\nname ) . let ' s invite him to the thursday lunch .\nvince\nfrom : iris mack / enron @ enronxgate on 03 / 29 / 2001 05 : 52 pm\nto : stinson gibner / hou / ect @ ect , stinson gibner / enron communications\ncc : vince j kaminski / hou / ect @ ect\nsubject : fw : possible visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi stinson ,\na colleague of mine - professor nalin kulatilaka of boston university -\nis interested in visiting enron to give a talk on work he is doing in the\nbroadband area .\nplease see the forwarded emails for further information and available\ndates .\ncan you let me know if we can give him a forum at one of our thursday\nresearch lunches or a friday brown bag lunch ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : nalin kulatilaka @ enron\ncom ]\nsent : thursday , march 29 , 2001 5 : 40 pm\nto : mack , iris\ncc : lin , martin\nsubject : re : possible visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi iris\ni have two different hats to wear in talking to enron . one is as a\nfinancial economist . the other as the director of the newly formed \" global\nmobility innovation initiative ( gmii ) - - this is the research project\nfunded by lucent , involving bu , lbs , and insead , to study various aspects\nof the mobile internet ( read 3 g ) .\non the former i am working with a couple of ph . d . students in understanding\n( a ) details of how having physical supply ( inventory ) can be used by a\nmarket maker . this is a problem that has been studies in the context of\nspecialists inventory in the stock market but i think really interesting in\nthe way enron does it in some of the newer markets like bandwidth . i\nthink this is a big issue in lighting up all the dark fiber that is in the\nground .\n( b ) how enron is disciplining the internal decision making process with\nmarket . this is in many ways the critical aspect of real options that\nmost finance people miss - - having options is one thing but exercising them\nand realizing their value is another . all of the incomplete contracting ,\nasymmetric information , and incentive issues are ignored in real options\nvaluation models . but they are real in practice . my impression is enron ' s\nreal success is in putting place an organization that is able to mitigate\nthese problems by imposing a market disciplining .\n( c ) how enron manages the various books that involve physicals , financials ,\ncredit etc . this is specially important when many of the real assets have\noptions features and therefore , include non - linear risk profiles . the\nstory of gas is pretty well understood but not many of the others markets\nenron has been moving into over the last few years .\non the gmii front , i think that some interesting opportunities arise when\nyou think of the spectrum in a way similar to that of dark fiber . i am\nworking with several people at lucent on this issue . i think it would be\nwonderful to engage in a conversation with enron and lucent folks in the room .\ni can do a lunch time talk on any of these issues . perhaps we can discuss\nsome of these over a conference call . clearly , having vince kaminski in the\nroom would be very important to me .\nas for schedules , the first 3 weeks of april are horrible . april 26 / 27 ,\nmay 3 / 4 are good for me .\nregards\nnalin\nat 06 : 56 pm 03 / 22 / 2001 , mack , iris wrote :\n> hi ,\n>\n> as we briefly discussed , i spoke with one of my colleagues ( dr .\n> martin lin ) about your visiting enron to give a talk and to spend some\n> time with us to discuss you work in telecommunications , real options ,\n> etc .\n>\n> martin and i are working on various broadband related problems .\n>\n> we thought it might be helpful if you let us know a bit more about\n> the following :\n> * when you want to come ( the research group has weekly\n> catered lunch on thursday and brown bag lunches on every other friday ) .\n>\n> * a description of what you want to talk about with respect\n> to telecoms , broadband , etc .\n> * who you would like to meet with me - vince kaminski ( our\n> boss ) , any other of our colleagues in research , broadband , etc .\n> . . . . . . . . . . . . . . . . . etc .\n>\n>\n>\n>\n> look forward to hearing from you .\n>\n> regards ,\n> iris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.607+0000", "entityId": 10217, "properties": {"text": "Subject: earth day - trash bash\ni hardly know what to say ! ! ! what a great turnout from the research\ndepartment . we had 15 including spouses and children who worked check - in\nand picked up trash . thanks so much . everyone from community relations was\nblown away by the turnout we had from research . i heard very nice comments\nabout our effort and about the fact that vince came out and worked . thanks\nagain for all your support . i personally appreciated it and i know everyone\nelse from enron that was involved in this event appreciated it because i got\nso many comments about our participation . i don ' t know what else to say but\nthat you are a great group . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.611+0000", "entityId": 10218, "properties": {"text": "Subject: re : loan documents\nthanks for the kind words , vince . what a lovely way to start my monday !\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 02 , 2001 7 : 40 am\nto : magee , molly\nsubject : re : loan documents\nmolly ,\nthanks . you are the most dependable\nperson in enron .\nvince\nfrom : molly magee / enron @ enronxgate on 03 / 31 / 2001 04 : 27 pm\nto : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron\ncc :\nsubject : loan documents\njust wanted to reassure both of you that i had not forgotten to draft these\ndocuments . i hope to have them complete some time during this next week and\nwill forward them for review .\nthanks ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.616+0000", "entityId": 10219, "properties": {"text": "Subject: re : real options\nthanks vince . paul q and raymond y will also attend the call .\nregards\npaul\nvince j kaminski @ ect\n02 / 04 / 2001 11 : 16 pm\nto : paul smith / enron _ development @ enron _ development\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , paul\nquilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : re : real options\npaul ,\nwe have done a lot of work in this area . i shall call you later\ntoday ( monday my time ) , tuesday morning your time with\nsome recommendations .\nvince\np . s . shirley , please send a real options binder to paul .\nvince\nfrom : paul smith @ enron _ development on 03 / 30 / 2001 08 : 42 am zel 0\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : real options\nvince ,\nthe sydney office is currently evaluating a proposal that involves an option\nto participate in building a wind farm . should this proceed , we would like to\nmark this option \" to market \" .\nhave the research group completed any work on methods for booking and\nremarking real options ? alternatively , do you have any suggestions as to the\nbest way to value , and book , real options fairly ?\nregards\npaul smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.620+0000", "entityId": 10220, "properties": {"text": "Subject: software erequests for credit modeling\nhi lola ,\nas per our recent conversation , today we had a conference call with the\nenron research and credit groups in the us and the uk .\nit was decided that we would require the folowing software to assist us\nin developing the private firm models :\n1 . eviews statistical package\n2 . spss statistical package ( the uk office already has an spss site\nlicense . )\n3 . tops software\n4 . neural net software package ( george in the uk developed this package ) .\nplease discuss submit these requests to craig chaney for his approval .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.625+0000", "entityId": 10221, "properties": {"text": "Subject: power market research\ni came across the attached report which margaret carson thought would be of\ninterest to you .\njennifer\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephen thome / hou / ect on 04 / 03 / 2001 11 : 36\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\njessica burry\n04 / 03 / 2001 10 : 29 am\nto : theresa villeggiante / pdx / ect @ ect , mollie gustafson / pdx / ect @ ect , fredrik\neriksson / pdx / ect @ ect , crystal hyde / pdx / ect @ ect , angela cadena / pdx / ect @ ect ,\nandy chen / pdx / ect @ ect , jim gilbert / pdx / ect @ ect , ed clark / pdx / ect @ ect , jeff\nshields / pdx / ect @ ect , jim buerkle / pdx / ect @ ect , dave fuller / pdx / ect @ ect , laura\nwente / hou / ect @ ect , jake thomas / hou / ect @ ect , christopher f calger / pdx / ect @ ect ,\nmichael etringer / hou / ect @ ect , chris lackey / pdx / ect @ ect , todd\nperry / pdx / ect @ ect , jeffrey oh / pdx / ect @ ect , elliot mainzer / pdx / ect @ ect , jeff g\nslaughter / pdx / ect @ ect , jonalan page / pdx / ect @ ect , stephen thome / hou / ect @ ect ,\nterry w donovan / hou / ect @ ect , glenn surowiec / enron communications @ enron\ncommunications , michael danielson / sf / ect @ ect , laird dyer / sf / ect @ ect , april\nhrach / sf / ect @ ect , michael mcdonald / sf / ect @ ect\ncc :\nsubject : power market research\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jessica burry / pdx / ect on 04 / 03 / 2001 08 : 37\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristopher f calger\n04 / 03 / 2001 08 : 11 am\nto : jessica burry / pdx / ect @ ect\ncc :\nsubject : power market research\npls send to my group\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christopher f calger / pdx / ect on\n04 / 03 / 2001 08 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : chip schneider / enron @ enronxgate on 04 / 03 / 2001 10 : 02 am cdt\nto : louise kitchen / hou / ect @ ect , christopher f calger / pdx / ect @ ect , w david\nduran / hou / ect @ ect\ncc :\nsubject : power market research\nthis piece from deutsche bank is good macro overview of electricity supply /\ndemand fundamentals . a little on the long side - 78 pages , but has some good\ndiscussion on nerc ( north american electric reliability council regions ) ,\nbeginning on page 15 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.629+0000", "entityId": 10222, "properties": {"text": "Subject: re : pserc industrial advisory board meeting invitation\nvince ,\ni agree with alex on this issue .\nas an alternative for sponsorship . the ut electrical engineering dept . is\ninterested in sponsorship for research activities such as the one i just\ncompleted or as martin performed when he was at ut ( just thought that i would\nmention this as a possible alternative ) . would you be interested in a\npresentation or a \" brown bag lunch \" on this subject ?\nlance\nalex huang\n04 / 02 / 2001 08 : 55 am\nto : vince j kaminski / hou / ect @ ect\ncc : lance cunningham / na / enron @ enron\nsubject : re : pserc industrial advisory board meeting invitation\nvince ,\ni think it is important to keep a good relationship with pserc , but as of now ,\nit is not worth two days of your time to attend the board meeting . besides ,\nsince\nwe are not a sponsor yet , we have virtually no voice in the meeting and our\npresence\nsometimes is awkward . again , even if we are one of the thirty or so sponsors ,\nour\nvoice is rather limited , for most of the other sponsors have different\nconcerns from\nours . one way to remedy this is to individually sponsor some research\nprojects , via\nsumer intern or invited talks .\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.634+0000", "entityId": 10223, "properties": {"text": "Subject: re : airfaire for tony\nkevin / karin :\nmy understanding from vince is that london is reponsible for the expenses\nincurred while their people are here for training , as well as for any of our\npeople that go to london at their request .\nit should be easy for them to expense this airfare for steve from their office\nand charge it to whatever cost center tony is going to be under in london .\nshirley\nkevin g moore\n04 / 03 / 2001 06 : 24 am\nto : mike a roberts / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\ncc :\nsubject : airfaire for tony\nplease take a look at this e - mail . . . . . . .\ni am also in need of instruction . . . .\nthanks\nkevin moore\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 03 / 2001 06 : 19\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources\ncanada corp .\nfrom : karin ahamer @ enron 04 / 03 / 2001 05 : 15 am\nto : kevin g moore / hou / ect @ ect\ncc : tony hamilton / eu / enron @ enron , mike a roberts / hou / ect @ ect , tani\nnath / lon / ect @ ect , steve leppard / lon / ect @ ect\nsubject : airfaire for tony\nkevin\nwith regards to tony ' s airfare ticket , which has been put onto steve leppards\ncredit card as tony hasn ' t got an amex yet , could you please let me know who\nis responsible for payment ? i guess it is your costcentre , if so please\nsupply me with the number .\nthanks\nkarin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.638+0000", "entityId": 10224, "properties": {"text": "Subject: thank you .\ni would like to take this brief opportunity to thank you all for inviting me\nto visit enron . ? the day was extremely interesting and educational for me and\ni was extremely impressed by the people and environment enron had to offer .\ni look forward to speaking with you about this opportunity in the near\nfuture .\nsincerely ,\nmichael gorman\nmichael f . gorman , ph . d .\n( w ) 817 352 - 2396\n( c ) 817 296 - 3273\n( f ) ? 817 352 - 6300", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.643+0000", "entityId": 10225, "properties": {"text": "Subject: financial maths course , part 2\nvince ,\njust in case , here is a draft copy of the event for you to refer to .\npaul\n- finmathmail . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.648+0000", "entityId": 10226, "properties": {"text": "Subject: financial mathematics course - urgent\nhi vince ,\nin order to provide the marketing department with sufficient lead time for\nour financial mathematics course , the brochure will need to be printed by\nthe end of next week . i would like to confirm the bullets for your two\nsessions at the 2001 series of courses . if you feel that there is little\nneed to update the points i ' ll include the previous outlines . the one\naddition i would like to make is on the ' practical example ' point at the end\nof each session . if we could provide a line outlining what the example would\nbe , this would add some important information to this event .\ni will be in the office until wedesday afternoon and would very much like to\ntalk with you about your views on this years ' event . i will be out of the\noffice on thursday and friday and will need to confirm my changes at the\nstart of next week .\ni look forward to speaking with you soon .\nbest wishes ,\npaul bristow", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.653+0000", "entityId": 10227, "properties": {"text": "Subject: energy finance conference presentations available\nfyi :\nyou can now retrieve most all the speaker presentations of the 2001 energy\nfinance conference ( feb 22 - 23 ) from our website at\nhttp : / / cefer . bus . utexas . edu , with the exception of presentations made by john\nmccormack , peter nance , sailesh ramamurtie , and ehud ronn / anoop kapoor ,\nwhich i hope to still receive .\nsincerely ,\nangela\n* * * * * * * * * * * * * *\nangela dorsey\nassistant director\ncenter for energy finance education & research\nthe university of texas at austin\ndepartment of finance , cba 6 . 222\naustin , tx 78712\nangela . dorsey @ bus . utexas . edu\n* * * * * * * * * * * * * *", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.658+0000", "entityId": 10228, "properties": {"text": "Subject: various market data charges to the research group for february 2001\nclifford :\nin reviewing our february eis billing summary for co # 0413 , cc # 107043 ,\ni have several questions .\ntelerate : ( february charges : $ 3 , 032 , 35 )\ni polled the group and only one person has asked for telerate and he is\nnot shown being charged for it . that is jason sokolov . he would like to\nhave access to telerate . if you could let me know how to get that for him .\nthe largest percent of the telerate charges appear to be for maureen\nraymond , who says that she does not use telerate . could she be accessing\nsome data that she does not know is telerate ? please let me know . if there\nare individual accounts for telerate the only one we need is for jason\nsokolov ,\nunless maureen ' s charges are for something that she does not know is telerate .\ntanya tamarchenko does not need telerate and she has the second largest\npercentage of the charges . anyway , the only telerate subscription we need is\nfor jason sokolov .\nreuters : ( february charges : $ 405 . 96 )\nno one in research uses reuters . i believe most of the charges are for\nhector\ncampos who used it when he was on the trading desk . when he rotated into the\nresearch group he did not need it any longer , but is still being billed for\nit . please\nremove from the research cost center .\nthe following individuals are no longer with enron or no longer with research\nand their accounts should be removed from the research cost center .\nclayton vernon no longer with the research group remove his lim / lim / excel\nand lim core charges from the research cost center\nbrad amoine no longer with enron remove his lim / lim / excel and lim core\ncharges from the research cost center\nshalesh ganjoo no longer with the research group remove his lim and lim core\ncharges from the research cost center\ni hope this is not too confusing !\nplease advise .\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.666+0000", "entityId": 10229, "properties": {"text": "Subject: re : support on statistical modeling\nthanks for the quick response . i look forward to meeting martin .\nregards ,\nrh\nrandall hicks\ndirector - marketing\nenron broadband services\n1400 smith street\nhouston , tx 77002\nwork - 713 . 853 . 9970\nrandall _ hicks @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.674+0000", "entityId": 10230, "properties": {"text": "Subject: re : support on statistical modeling\nrandall ,\nthe person supporting ebs in the research group is martin lin .\ni shall ask him to give you a call and will be glad to join you at the meeting\nwith martin .\nvince\nfrom : randall hicks @ enron communications on 04 / 04 / 2001 10 : 42 am\nto : vince j kaminski / hou / ect @ ect\ncc : bradford brooks / enron communications @ enron communications , shirley\ncrenshaw / hou / ect @ ect , daryl flaming / enron communications @ enron\ncommunications , martin sacchi / enron communications @ enron communications\nsubject : support on statistical modeling\ndear vince :\ni was referred by rita hartfield of ebs . i am the director of marketing for\nthe digital content services team ( david cox , frank bay , et . al . ) . we are\nidentifying and evaluating features and functions that will be a part of the\nnext generation entertainment on demand ( eod ) product .\nthe e - mail i ' ve excerpted below contains two links to a company that offers a\n\" preferencing \" service that we know is quite popular and important to\nentertainment consumers . i have some questions abouts the statistics ,\nsampling methodology , explained variance etc . of the model that the\nstylelogic group employs .\ndo you have a member of your team that could assist on this project ?\nthanks for your help ,\nrandall hicks\ndirector - marketing\nenron broadband services\n1400 smith street - eb 4589 a\nhouston , tx 77002\nwork - 713 . 853 . 9970\nrandall _ hicks @ enron . net\n-\nbrad ,\ni would appreciate a chance to talk with you regarding enron ' s vod plans . we\nhave developed movie selection and recommendation / prediction functionality\nthat we can manage for ebs .\nif you would like to read about what we have to offer , you may go to :\nhttp : / / www . stylelogic . com / predict\ni also invite you to see our functionality at : http : / / www . reviewmovies . com /\ni look forward to a chance to speak with you at your earliest convenience .\nbrent rosenkranz\npresident\nstylelogic - internet strategies and solutions\n101 n . acacia avenue\nsolana beach , ca 92075\nphone - 858 - 350 - 3939\ntoll free - 888 - 750 - 4678\nfax - 858 - 350 - 3930\nwww . stylelogic . com\nbrent @ stylelogic . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.681+0000", "entityId": 10231, "properties": {"text": "Subject: hi amitava ,\nas we discussed this morning , i have created the attached spreadsheet\nfor our \" to dos \" for the the credit guys .\nplease take a look at it to make sure it is okay , make any changes , etc .\nin the mean time i will work on the data vendor research , order eviews ,\netc . . . . . .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.686+0000", "entityId": 10232, "properties": {"text": "Subject: is the supply rebound beginning ? an update on cera ' s outlook for us\ngas productive capacity - cera conference call notification\ntitle : is the supply rebound beginning ? an update on cera ' s outlook for us\ngas productive capacity\nurl : http : / / www 20 . cera . com / eprofile ? u = 35\nnetscape navigator 3 . 02 or higher ; or sun hot java ( tm )\nclose all desktop applications and disable your screen saver .\nto ensure computer compatibility , complete the internet instructions before\nthe\nday of the call . a message will appear telling you that your meeting is not\nready to start . however , it also informs you about any action that you may\nneed to take to prepare your computer to participate .\ntechnical assistance\nif you experience difficulties during the call , you may signal for technical\nassistance by pressing * 0 ( star , zero ) on your telephone keypad , once\nconnected\nto the audio portion of the conference .\nfor more information , please contact katya ashe via e - mail at kashe @ cera . com\nor\nvia telephone at ( 617 ) 441 - 2659 .\na recording of this call will be available until may 10 , 2001 . to access this\nrecording , please call + 1 888 - 203 - 1112 ( within the united states ) or\n+ 1 719 - 457 - 0820 ( outside the united states ) . please use confirmation number\n574828 to access the call .\n* * end * *\ne - mail category : conference call notification\ncera knowledge area ( s ) : north american gas ,\ncera ' s spring 2001 roundtable event dates and agendas are now available\nat http : / / www 20 . cera . com / event\nto make changes to your cera . com profile go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2001 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.691+0000", "entityId": 10233, "properties": {"text": "Subject: erisk iconference 4 / 11 / 2001\nplease save this e - mail . it contains important information\nabout your event .\nthank you for registering for practical considerations in measuring\neconomic capital , scheduled for wednesday , april 11 th , 2001 at\n12 noon eastern / 5 p . m . london time .\nclick this link to visit the erisk . com homepage :\nhttp : / / www . erisk . com\nerisk iconference instructions :\n1 . dial 1 - 877 - 864 - 3651 ( u . s . ) or + 1 - 973 - 341 - 3037 ( international ) to\nlisten to the audio for this program . audio is available by\ntelephone only .\n2 . when prompted , enter the confirmation code 105764 , followed\nby the \" # \" key . music will play until the conference begins .\n3 . join the web - based portion of the program to see slides ,\nparticipate in polls and ask questions .\n- open netscape or internet explorer 3 . 0 or higher .\n- enter the following web address : http : / / www . communicast . com / login\n4 . fill out the form on this page and enter the following\nconfirmation number : 105764 .\n5 . click the \" communicast now \" button . in a few moments you will\nbe placed in the erisk iconference .\ncommunicast system requirements :\n- communicast requires the ability to run java applets .\n- netscape or internet explorer browsers 3 . 0 or higher .\nif this is your first communicast event , you may wish to test your computer .\nvisit http : / / www . communicast . com / login at any time and click the \" test \"\nbutton at the bottom of the page . for this conference , you may skip the\nlast three tests relating to streaming audio . you will not need realplayer\nto participate in this conference .\nif you require further assistance , contact support @ communicast . com .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.696+0000", "entityId": 10234, "properties": {"text": "Subject: phone call today\nvince ,\nthere are a few matters i ' d like to discuss with you :\nclarification on who tony harrison reports to ( i had understood it would be\nthe houston crude oil weather forecast team but i am not now sure )\nto let you know that joe wants to recruit a strongly mathematical\nmacroeconomist reporting to steve , and therefore that maureen will be\nreturning to houston later this month\nto talk about stinson coming over for a visit\nregards ,\ntani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.701+0000", "entityId": 10235, "properties": {"text": "Subject: re : joao neves\nthank you vince . i look forward to speaking with you tomorrow , and in\nmeeting you on april 13 th !\nregards ,\nkate szablya\npower brokers , llc\nenergy search and recruitment\n303 - 716 - 2987\n303 - 619 - 7589 cell\n303 - 716 - 3426 fax\nwww . powerbrokersllc . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.706+0000", "entityId": 10236, "properties": {"text": "Subject: re : joao neves\nkate ,\ni was traveling recently . i shall evaluate the resume\ntogether with my associates and will get back to you thursday .\ni shall be glad to meet you on the 13 th .\nvince\n\" kate szablya \" on 04 / 02 / 2001 04 : 37 : 18 pm\nto : \" vince kaminsky \"\ncc :\nsubject : joao neves\nvince ,\ni wanted to follow up with you to see if you had an opportunity to review\njoao neves ' resume , which i sent ? you last wednesday , and to get your\nfeedback on him .\n?\nplease ? let me know if you are interested in ? setting up an interview .\n?\nalso , i will be in houston the afternoon of ? friday , 4 / 13 , and would welcome\nthe opportunity to meet with you in person , if your schedule allows . ?\n?\ni look forward to hearing from you .\n?\nregards ,\n?\nkate szablya\npower brokers , llc\nenergy search and recruitment\n303 - 716 - 2987\n303 - 619 - 7589 cell\n303 - 716 - 3426 fax\nkate @ powerbrokersllc . com\nwww . powerbrokersllc . com\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.712+0000", "entityId": 10237, "properties": {"text": "Subject: re : fw : gmm - 30 mar 2001\njeff ,\nthe newsletter is addressed to a wide audience in enron , not\nexclusively one group . we are providing forward interest rate\nforeign exchange curves to multiple units of enron\nto revalue our assets . maureen and gwen spend\nof lot of time answering questions regarding countries\nlike argentina , korea , brazil , etc . the newsletter can\nbe used as a reference in answering many of those\nquestions .\nvince\nfrom : jeffrey a shankman / enron @ enronxgate on 04 / 02 / 2001 01 : 52 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : fw : gmm - 30 mar 2001\nthis report is not great . i only like the g - 7 bank info and the weekly\neconomic table . any thoughts ? jeff\n- - - - - original message - - - - -\nfrom : koepke , gwyn on behalf of maureen raymond / lon / ect @ enron\nsent : monday , april 02 , 2001 11 : 05 am\nto : hickerson , gary ; shahi , pushkar ; stuart , william ; delage , darren ; su ,\nellen ; martina angelova / lon / ect @ ect ; mcfarland , trena ; hess , jurgen ;\nkaminski , vince ; fraser , jennifer ; mehrer , anna ; sgibner @ enron . com ;\ngmcclel @ enron . com ; staley , stuart ; harora @ enron . com ; boyt , eric ; dallmann ,\nshane ; armstrong , aaron ; allario , john ; reed , andrea v . ; joverdy @ enron . com ;\nmead , paul ; sherriff , john ; harper , richard ; mcgowan , kevin ; reck , daniel ;\nbeyer , michael ; ruffcorn , kevin ; hudler , cindy ; ruane , mark ; heu , mog ;\nmcleish , alex ; mahoney , chris ; whalley , greg ; alkhayat , alhamd ; haggerty ,\njohn ; beck , sally ; profir , diana ; kristal , yana ; clara\ncarrington / hou / ect @ enron ; jshankm @ enron . com ; foti , david ; ferlic , suzanne ;\nmckeever , tom ; thorn , terence ; dupre , david ; boettcher , thomas ; farmer ,\nmichael ; hutchinson , michael ; gold , joe ; fraser , bridget ; dwivedi , vikas ;\nraghavan , suresh ; bhavna pandya / hou / ect @ enron ; hill , andrew ; lawyer , larry ;\negmcontent ; ibarra , felipe ; nordstrom , mary\nsubject : gmm - 30 mar 2001\nplease find attached this week ' s global markets monitor , dated march 30 .\nmaureen raymond - castaneda and\ngwyn koepke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.716+0000", "entityId": 10238, "properties": {"text": "Subject: re : astros season tickets\ncathy ,\nthanks . in order of priority : fridays ( 20 , 27 ) , apr 25 , 24 , 23 .\nvince\nfrom : cathy phillips on 04 / 03 / 2001 04 : 54 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : astros season tickets\nhow about two games ? just select a couple of dates and i will have the\ntickets delivered to you . the dates that are still available are as follows :\nfriday , april 20 st . louis\nmonday , april 23 atlanta\ntuesday , april 24 atlanta\nwednesday , april 25 atlanta\nfriday , april 27 florida\nthanks .\ncathy phillips\nx - 36898\nvince j kaminski\n04 / 02 / 2001 05 : 43 pm\nto : cathy phillips / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : astros season tickets\ncathy ,\nyes , i shall be glad to use a few tickets for my group as a token of\nappreciation .\nhow many can you spare ?\nvince\nfrom : cathy phillips on 04 / 02 / 2001 01 : 06 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : astros season tickets\nall of the tickets in the initial time frame have been taken . the next set\nof tickets i have available are for the series of april 20 th - 25 th . please\nlet me know if you are interested in any of the tickets in this series .\nthanks .\ncathy phillips\nx - 36898\nvince j kaminski\n03 / 30 / 2001 11 : 25 am\nto : cathy phillips / hou / ect @ ect\ncc :\nsubject : re : astros season tickets\ncathy ,\ni shall appreciate 4 tickets , any day . i shall use them internally\nas a token of appreciation for the members of my group .\nvince\nfrom : cathy phillips on 03 / 30 / 2001 08 : 45 am\nto : jeffrey a shankman / hou / ect @ ect , doug\narnell / enron _ development @ enron _ development , alan aronowitz / hou / ect @ ect ,\npierre aury / lon / ect @ ect , sally beck / hou / ect @ ect , rick\nbergsieker / enron _ development @ enron _ development , stephen h\ndouglas / hou / ect @ ect , jennifer fraser / hou / ect @ ect , shanna\nfunkhouser / corp / enron @ enron , eric gonzales / lon / ect @ ect , gary\nhickerson / hou / ect @ ect , vince j kaminski / hou / ect @ ect , larry\nlawyer / na / enron @ enron , chris mahoney / lon / ect @ ect , george\nmcclellan / hou / ect @ ect , thomas myers / hou / ect @ ect , john l nowlan / hou / ect @ ect ,\nbeth perlman / hou / ect @ ect , brent a price / hou / ect @ ect , daniel reck / hou / ect @ ect ,\ncindy skinner / hou / ect @ ect , stuart staley / lon / ect @ ect , mark\ntawney / hou / ect @ ect , scott tholan / corp / enron @ enron , lisa yoho / na / enron @ enron ,\nneil davies / corp / enron @ enron , per sekse / ny / ect @ ect , stephen h\ndouglas / hou / ect @ ect , scott vonderheide / corp / enron @ enron\ncc : cathy phillips / hou / ect @ ect , jennifer burns / hou / ect @ ect , angie\ncollins / hou / ect @ ect , donna baker / hou / ect @ ect , helen marie taylor / hou / ect @ ect ,\nchantelle villanueva / hou / ect @ ect , betty j coneway / hou / ect @ ect , patti\nthompson / hou / ect @ ect , cherylene r westbrook / hou / ect @ ect , candace\nparker / lon / ect @ ect , sharon purswell / hou / ect @ ect , gloria solis / hou / ect @ ect ,\nbrenda j johnston / enron _ development @ enron _ development , kim\nhickok / enron _ development @ enron _ development , susan mccarthy / lon / ect @ ect , paula\nforsyth / corp / enron @ enron , shirley crenshaw / hou / ect @ ect , jody\nunderwood / na / enron @ enron , kathleen d\nhardeman / enron _ development @ enron _ development , judy zoch / na / enron @ enron ,\nsunita katyal / enron _ development @ enron _ development , cherry mont / ny / ect @ ect ,\nlydia reeves / hou / ect @ ect , kristy armstrong / enron @ enronxgate , nita\ngarcia / na / enron @ enron , christina brandli / enron @ enronxgate\nsubject : astros season tickets\nastros tickets available\nplease note that the tickets for the astros games scheduled for saturday ,\nmarch 31 st , through sunday , april 8 th , ( no game on monday , april 2 nd ) are\nstill available . please let me know this morning if you are interested in\nany of the tickets . thank you .\n- - - - - - - - - - - - - - - -\nas mike mentioned at the staff meeting yesterday , enron global markets has\nseason tickets for the houston astros for the 2001 season which begins this\nfriday , march 30 th , with an exhibition game against boston . exhibition games\nare also scheduled for saturday , march 31 st , and sunday , april lst . the\nregular season opening game will be on tuesday , april 3 rd .\nwe have four seats in section 116 , row 33 , seats 20 - 23 . the seats are\nlocated in the dugout section between home plate and the visitor ' s dugout .\nthe tickets are available on a first come , first serve basis with preference\ngiven for customer entertainment if more than one request is received for the\nsame game . please contact me at x - 36898 or via e - mail at\ncathy . phillips @ enron . com to request tickets . in addition , copies of the\nastros 2001 season schedule are available upon request .\nplease let me know if you have any questions . thank you .\ncathy phillips\nx - 36898\neb 3327", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.721+0000", "entityId": 10239, "properties": {"text": "Subject: re : tony hamilton\ntony has already done this . . . . . . . . . .\ndesleigh langfield\n04 / 04 / 2001 09 : 46 am\nto : kevin g moore / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , mike a roberts / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect\nsubject : re : tony hamilton\nthanks , can you tell tony to come to hr reception on monday morning at 8 . 30 am\nfor induction which will last until midday\nkevin g moore\n04 / 04 / 2001 15 : 41\nto : desleigh langfield / lon / ect @ ect , vince j kaminski / hou / ect @ ect , mike a\nroberts / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : tony hamilton\ntony hamilton reports to mike roberts in the houston office .\nvince kaminski will answer these questions for you at any\ngiven time .\ntony ' s start date in london will be april 9 th\nthanks\nkevin moore\ndesleigh langfield\n04 / 04 / 2001 08 : 29 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : tony hamilton\nkevin\ntani nath who heads up the structuring and research teams rang this morning\nto get more information on tony .\ncan you tell me who he reports to in houston and whether that person will\ncontinue to manage him remotely ?\nwhat cost centre he should be charged to ? whose headcount he appears on , and\nfor what group he will be providing services for , tani was unsure on all of\nthe above and wants clarification .\nalso can you confirm his start date in london\nthanks\ndesleigh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by desleigh langfield / lon / ect on 04 / 04 / 2001\n14 : 27 - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndesleigh langfield\n06 / 03 / 2001 13 : 40\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : tony hamilton\nsteve\nall sorted and we will check later in the week with it that all is okay .\ncan you please tell your assistant to organise a desk for tony , no rush\nobviously\nthanks\ndesleigh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by desleigh langfield / lon / ect on 06 / 03 / 2001\n13 : 38 - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndesleigh langfield\n06 / 03 / 2001 13 : 38\nto : european resolution center / lon / ect @ ect\ncc : kevin g moore / hou / ect @ ect , steven leppard / lon / ect @ ect , anna\nseymour / lon / ect @ ect\nsubject : tony hamilton\nhi\ntony is a uk employee who starts next monday 12 th march 2001 , we have done a\nquick start in nest today for him .\ntony will be working his first month in the houston office , however we still\nneed to set up a log on and notes account here .\ncan you please send the log on and password for both accounts to kevin as he\nwill be meeting with tony on monday morning in the houston office .\ntony will not have a desk arranged for him until he comes back in\napproximately a month so no actual pc is necessary until then .\none question - with a uk log on and notes account , will tony be able to\naccess these from houston ? if it ' s complicated can you please let kevin know\nhow to do this .\nany problems let me know\nthanks\ndesleigh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.726+0000", "entityId": 10240, "properties": {"text": "Subject: re : real options\npaul ,\nkrishna and i are thinking that you may be able to book this type of option\nas a call swaption on power . if you would like to discuss further , let ' s\nset up a time when we can call you .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 04 / 2001\n04 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 02 / 2001 08 : 16 am\nto : paul smith / enron _ development @ enron _ development\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , paul\nquilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : re : real options\npaul ,\nwe have done a lot of work in this area . i shall call you later\ntoday ( monday my time ) , tuesday morning your time with\nsome recommendations .\nvince\np . s . shirley , please send a real options binder to paul .\nvince\nfrom : paul smith @ enron _ development on 03 / 30 / 2001 08 : 42 am zel 0\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : real options\nvince ,\nthe sydney office is currently evaluating a proposal that involves an option\nto participate in building a wind farm . should this proceed , we would like to\nmark this option \" to market \" .\nhave the research group completed any work on methods for booking and\nremarking real options ? alternatively , do you have any suggestions as to the\nbest way to value , and book , real options fairly ?\nregards\npaul smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.731+0000", "entityId": 10241, "properties": {"text": "Subject: re : tony hamilton\ntony hamilton reports to mike roberts in the houston office .\nvince kaminski will answer these questions for you at any\ngiven time .\ntony ' s start date in london will be april 9 th\nthanks\nkevin moore\ndesleigh langfield\n04 / 04 / 2001 08 : 29 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : tony hamilton\nkevin\ntani nath who heads up the structuring and research teams rang this morning\nto get more information on tony .\ncan you tell me who he reports to in houston and whether that person will\ncontinue to manage him remotely ?\nwhat cost centre he should be charged to ? whose headcount he appears on , and\nfor what group he will be providing services for , tani was unsure on all of\nthe above and wants clarification .\nalso can you confirm his start date in london\nthanks\ndesleigh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by desleigh langfield / lon / ect on 04 / 04 / 2001\n14 : 27 - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndesleigh langfield\n06 / 03 / 2001 13 : 40\nto : steven leppard / lon / ect @ ect\ncc :\nsubject : tony hamilton\nsteve\nall sorted and we will check later in the week with it that all is okay .\ncan you please tell your assistant to organise a desk for tony , no rush\nobviously\nthanks\ndesleigh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by desleigh langfield / lon / ect on 06 / 03 / 2001\n13 : 38 - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndesleigh langfield\n06 / 03 / 2001 13 : 38\nto : european resolution center / lon / ect @ ect\ncc : kevin g moore / hou / ect @ ect , steven leppard / lon / ect @ ect , anna\nseymour / lon / ect @ ect\nsubject : tony hamilton\nhi\ntony is a uk employee who starts next monday 12 th march 2001 , we have done a\nquick start in nest today for him .\ntony will be working his first month in the houston office , however we still\nneed to set up a log on and notes account here .\ncan you please send the log on and password for both accounts to kevin as he\nwill be meeting with tony on monday morning in the houston office .\ntony will not have a desk arranged for him until he comes back in\napproximately a month so no actual pc is necessary until then .\none question - with a uk log on and notes account , will tony be able to\naccess these from houston ? if it ' s complicated can you please let kevin know\nhow to do this .\nany problems let me know\nthanks\ndesleigh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.736+0000", "entityId": 10242, "properties": {"text": "Subject: non - disclosure agreement\np . o . box 2227\nlivermore , california 94550\napril 4 , 2001\ndr . vince j . kaminski\nvice - president of research\nenron corporation\np . o . box 1188\nhuston , texas 77251\nvince ,\ni have cleared my calendar , and i am looking forward to meeting with you\nin houston on may 4 th .\ntransmitted herewith is the agreement that you requested .\nthanks . have a great weekend .\nlarry thorne\nattachments : non - disclosure agreement\n- non - disclosure agreement . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.741+0000", "entityId": 10243, "properties": {"text": "Subject: fw : modified version\nlance ,\nany comment ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 05 / 2001\n08 : 37 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : beth perlman / enron @ enronxgate on 04 / 04 / 2001 04 : 50 pm\nto : louise kitchen / hou / ect @ ect , tim belden / hou / ect @ ect , kevin m\npresto / hou / ect @ ect , hunter s shively / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : fw : modified version\nthis may be of interest to you . i was contacted by steve lake from argonne\nnational laboratory who is interested in selling us some of their models and\nmapping software . let me know if there is any interest .\nthanks ,\nbeth\n- - - - - original message - - - - -\nfrom : \" lake , stephan \" @ enron\nnron . com ]\nsent : wednesday , april 04 , 2001 3 : 52 pm\nto : perlman , beth\ncc : conzelmann , guenter\nsubject : fw : modified version\nbeth ,\ni enjoyed talking with you this afternoon regarding possible enron / argonne\nnational laboratory collaboration . as i mentioned , one of our divisions ,\ndecision information sciences has built state of the art tools for modeling\nand simulating energy use . they have trained many country energy ministries\non the use of their tools as well as solved complex energy technology issues .\ni ' ve attached a presentation which describes some of their capabilities in\nthis area . decision information sciences also has done much work in studying\ncritical infrastructure issues in both gas and electric systems which also\nmay be of interest . finally , they have been pioneers in the development of\nagent based complex adaptive systems for modeling very complex systems that\nare impossible to view with over approaches .\ni will also include a copy of my correspondences with one of your e - business\ngroups under separate transmission .\nregards ,\nstephan lake\nmanager , business development and marketing\nargonne national laboratory\n630 - 252 - 5685 telephone\n630 - 252 - 5230 fax\n- - - - - original message - - - - -\nfrom : conzelmann , guenter\nsent : monday , april 02 , 2001 4 : 50 pm\nto : lake , stephan\nsubject : modified version\nguenter conzelmann\nmanager , national and international studies section\nenergy and environmental systems analysis group\nargonne national laboratory\n9700 south cass avenue\nbuilding 900\nargonne , il 60439 - 4832\ntelephone : + + 1 - 630 - 252 - 7173\nfax : + + 1 - 630 - 252 - 6073\nemail : guenter @ anl . gov\nweb : http : / / enpep . dis . anl . gov / enpep /\nfedex / dhl address :\n1200 international parkway\nwoodridge , il 60517\n- enpep overview industrial partnership 02 lake . ppt", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.746+0000", "entityId": 10244, "properties": {"text": "Subject: complexity science and the energy industry brown bag update , apri l\n18 th , 2001\nnesa / hea members :\na couple changes have been made to the april 18 th brown bag . attached is an\nupdate with the brown bag details .\n> >\n>\nwe look forward to see you there . please contact me with any questions\n( 713 ) 856 - 6525 .\nthanks ,\nlana moore\n- nesa brownbag flyer . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.751+0000", "entityId": 10245, "properties": {"text": "Subject: re : tony hamilton\nthanks for clarifying that vince .\nvince j kaminski\n05 / 04 / 2001 15 : 00\nto : chris mahoney / lon / ect @ ect\ncc : tani nath / lon / ect @ ect , mark tawney / hou / ect , vince j kaminski / hou / ect @ ect ,\nmike a roberts / hou / ect @ ect , scott moncrieff / lon / ect @ ect , christie\nmarshall / lon / ect @ ect , richard smith / lon / ect @ ect , norma villarreal / hou / ect\nsubject : re : tony hamilton\nchris ,\ne hired tony to support global markets but jeff shankman decided that , given\nhighly specialized nature of his work it makes sense to put him in the\nresearch group , with a dotted line to mike roberts who is running our weather\ngroup .\ngiven that his work will directly and exclusively benefit gm , it makes sense\nfor research to charge his expenses\nto global markets . we can adjust allocations to reflect his contributions to\ndifferent sub - units of gm .\ntony spent the last few weeks in houston training for his position in london\nwith mike roberts .\nwe are very excited about the prospect of working with him .\nvince\nchris mahoney\n04 / 05 / 2001 03 : 56 am\nto : tani nath / lon / ect @ ect , mark tawney / enron @ enronxgate , vince j\nkaminski / hou / ect @ ect\ncc : scott moncrieff / lon / ect @ ect , pierre aury / lon / ect @ ect , christie\nmarshall / lon / ect @ ect , richard smith / lon / ect @ ect\nsubject : re : tony hamilton\ntony was hired to work for global markets . think costs should be assigned\nto vince or mark but if you\nbelieve those costs should be for my group let me know .\ntani nath\n05 / 04 / 2001 09 : 33\nto : chris mahoney / lon / ect @ ect , scott moncrieff / lon / ect @ ect , pierre\naury / lon / ect @ ect\ncc : christie marshall / lon / ect @ ect , richard smith / lon / ect @ ect\nsubject : tony hamilton\ni now have tony on one of my rcs ( research ) . i understand he will be doing\nweather forecasts for some or all of you , and that he has a desk allocated in\nglobal . i need to recharge his costs - can someone please advise the right\ncost centre .\nmany thanks ,\ntani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.756+0000", "entityId": 10246, "properties": {"text": "Subject: re : tony hamilton\nchris ,\ne hired tony to support global markets but jeff shankman decided that , given\nhighly specialized nature of his work it makes sense to put him in the\nresearch group , with a dotted line to mike roberts who is running our weather\ngroup .\ngiven that his work will directly and exclusively benefit gm , it makes sense\nfor research to charge his expenses\nto global markets . we can adjust allocations to reflect his contributions to\ndifferent sub - units of gm .\ntony spent the last few weeks in houston training for his position in london\nwith mike roberts .\nwe are very excited about the prospect of working with him .\nvince\nchris mahoney\n04 / 05 / 2001 03 : 56 am\nto : tani nath / lon / ect @ ect , mark tawney / enron @ enronxgate , vince j\nkaminski / hou / ect @ ect\ncc : scott moncrieff / lon / ect @ ect , pierre aury / lon / ect @ ect , christie\nmarshall / lon / ect @ ect , richard smith / lon / ect @ ect\nsubject : re : tony hamilton\ntony was hired to work for global markets . think costs should be assigned\nto vince or mark but if you\nbelieve those costs should be for my group let me know .\ntani nath\n05 / 04 / 2001 09 : 33\nto : chris mahoney / lon / ect @ ect , scott moncrieff / lon / ect @ ect , pierre\naury / lon / ect @ ect\ncc : christie marshall / lon / ect @ ect , richard smith / lon / ect @ ect\nsubject : tony hamilton\ni now have tony on one of my rcs ( research ) . i understand he will be doing\nweather forecasts for some or all of you , and that he has a desk allocated in\nglobal . i need to recharge his costs - can someone please advise the right\ncost centre .\nmany thanks ,\ntani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.761+0000", "entityId": 10247, "properties": {"text": "Subject: hedging\nvince :\nthe attached article confirms that although a few relatively progressive e & p\n( and mining ) companies are beginning to absorb some of the benefits of\nhedging , they still find the subject very slippery .\nregards ,\n- cfomagazineaprol . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.770+0000", "entityId": 10248, "properties": {"text": "Subject: re : research resumes\nmolly ,\nbelow are the resumes sent to us by focus . vince suggested that we\ninterview one person plus sriram , who already lives in houston . karim looks\nlike the most qualified , but my fear is that we may not be able to afford\nhim . i am assuming that vince will want to hire at most at the manager\nlevel . can you first check and see if karim would consider coming at a\nmanager level salary before we spend time talking with him . if he is too\nsenior , then we should talk to samir , who looks like a more junior level\nperson .\nthanks ,\nstinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 05 / 2001\n02 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n04 / 05 / 2001 08 : 42 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resumes\nvince ,\nsee below for my picks based on the resumes . the others marked as \" no \"\nmight be ok as well , but did not seem to have as much slant towards finance .\n- - stinson\nvince j kaminski\n04 / 04 / 2001 03 : 45 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : resumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 04 / 2001\n03 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto :\ncc :\nsubject : resumes\nhere are some people you might want to speak with . ? siriam lives in\nhouston . ? please see the attached resumes of the following :\n?\nkarim ashktorab yes ( might be expensive ? )\nstephen liu no\nfarshad ravanshad no\nmatthew rusk no\nsamir ranjan yes\ncedric chow no\nsriram vasudevan maybe ( already in houston )\n?\nregards ,\n?\nscott gerson\nfocus capital markets\n71 vanderbilt avenue\nsuite 200\nnew york , ny 10017\n( 212 ) 986 - 3344 tele\n( 212 ) 986 - 3370 fax\n- focus sriram vasudevan . doc\n- focus cedric chow . doc\n- focus samir ranjan . doc\n- focus matthew rusk . doc\n- focus farshad ravanshad . doc\n- focus stephen liu . doc\n- focus karim ashktorab . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.778+0000", "entityId": 10249, "properties": {"text": "Subject: re : resumes\nvince ,\nsee below for my picks based on the resumes . the others marked as \" no \"\nmight be ok as well , but did not seem to have as much slant towards finance .\n- - stinson\nvince j kaminski\n04 / 04 / 2001 03 : 45 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : resumes\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 04 / 2001\n03 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto :\ncc :\nsubject : resumes\nhere are some people you might want to speak with . ? siriam lives in\nhouston . ? please see the attached resumes of the following :\n?\nkarim ashktorab yes ( might be expensive ? )\nstephen liu no\nfarshad ravanshad no\nmatthew rusk no\nsamir ranjan yes\ncedric chow no\nsriram vasudevan maybe ( already in houston )\n?\nregards ,\n?\nscott gerson\nfocus capital markets\n71 vanderbilt avenue\nsuite 200\nnew york , ny 10017\n( 212 ) 986 - 3344 tele\n( 212 ) 986 - 3370 fax\n- focus sriram vasudevan . doc\n- focus cedric chow . doc\n- focus samir ranjan . doc\n- focus matthew rusk . doc\n- focus farshad ravanshad . doc\n- focus stephen liu . doc\n- focus karim ashktorab . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.784+0000", "entityId": 10250, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron industrial markets\nenron industrial markets has recently completed the first transaction for a\nnew 60 - day fixed price product for the lumber industry . available for\ndelivery in houston and dallas , the product is offered by enron in the\nover - the - counter market and via clickpaper . com , enron \u0001 , s internet - based\ntransaction system dedicated to the forest products industry . the first\ntransaction was completed via clickpaper . com on march 14 with a major lumber\nbuyer in the southern united states . this represents the first online fixed\nprice transaction contract in the industry . with the growing volatility in\nthe lumber industry , the availability of a long - term fixed price product\nprovides companies with another opportunity to mitigate their exposure .\nadditionally , this transaction represents the convergence of enron \u0001 , s\nincreasing involvement in physical lumber transactions with our recognized\nexpertise in financial risk management .\nin addition , eim has announced that it has completed its acquisition of the\nquebec city , canada newsprint mill and related assets from daishowa forest\nproducts ltd . in july 2000 , enron purchased garden state paper , a recycled\nnewsprint mill located in garfield , nj . the acquisition of the daishowa mill\nnow positions enron as the seventh largest producer of newsprint in north\namerica . the daishowa mill in quebec city will now be called papiers\nstadacona . the new name has great historical significance to the local\ncommunity in quebec city . when jacques cartier first explored the mouth of\nthe st . charles river in 1535 , the aboriginal people living there referred to\nthe village as stadacona . this is now the site of modern - day quebec city .\nenron freight markets\nin march , enron freight markets ( efm ) completed the acquisition of webmodal ,\ninc to help launch the traditional intermediary transportation business . efm\nalso started its spot trading business and completed 981 transactions in its\nfirst month .\neast power origination\non tuesday , april 3 , the st . lucie county commission voted 3 - 2 to approve the\nmidway energy center near fort pierce , florida , which is a 510 megawatt\npeaking power plant . next steps for this facility include receiving a water\npermit from the south florida water management district and an environmental\nresource permit ( erp ) from the florida department of environmental protection .\nenron canada\nken lay addressed a breakfast meeting of the toronto board of trade on\nwednesday , april 4 , as part of the \" power breakfast series \" . his topic was\n\" moving forward with electricity deregulation . \" before his speech , the\nchairman of the board of trade commented that \" this was the best attendance\never \" at one of their breakfast meetings . after the meeting , mr . lay spoke\nwith reporters from reuters , the globe and mail , the national post , and\nreport on business tv emphasizing enron ' s commitment to deregulation of the\nontario power market .\nin the news\njapan : enron presents power plant plan to japan government\ntokyo , u . s . - based enron corp on wednesday presented plans to build a\nliquefied natural gas ( lng ) fired power plant in northern japan , aiming to\nbecome the first foreign company to build such a plant in japan . the move\nbrings enron one step closer to realizing its plan to build a power plant\nwith an initial capacity of two million kilowatts in aomori prefecture .\n\" we submitted our basic plan to build the plant to the governor of aomori\nprefecture today in line with last november ' s announcement , \" tatsuro seguchi ,\npresident of enron corp ' s japanese affiliate encom corp , told a news\nconference . \" we are aiming to start construction of the plant in 2004 and\nstart operations by 2007 since japan ' s power market is one of our highest\npriorities , \" he said . 03 / 28 / 2001 reuters english news service ( c )\nreuters limited 2001 .\nwelcome\nnew hires\negm - lyelle bellard , damian nelson , edward soo , jonathan whitehead\neim - elsa aguilar , melia dickson , john hark , phaedra jones , maricar jose ,\nian mccrory , mirella bertrone , roland holub , arthur miller , miriam watson ,\nrichard albert , randy biagini , thomas duchnicki , diego tabbachino\nena - mitra mujica , karen phillips , sarah domonoskie , kelly donlevy - lee\ntransfers ( to or within )\nena - john moore , mitchell robinson , larry valderrama , holden salisbury ,\ngrace rodriguez , mary martinez , dominic carolan , kari oquinn , katherine\nkelly , david fuller , anguel grigorov , oren zimmerman , chuanli deng , glenn\nsurowiec , tharsilla broussard , geynille dillingham , philip conn , lola\nweller , christina brandli , noemi camacho , randel young , ina rangel\negm - shelia benke , homer lin , william mckone , william berkeland , valarie\ncurry , tomas tellez\neim - allen ueckert , john w . jennings , sarveen kohli\nnuggets & notes\nthe next ews brown bag is scheduled for april 19 with tim battaglia\ndiscussing the steel industry .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.788+0000", "entityId": 10251, "properties": {"text": "Subject: vince kaminski expense reports\nhi liz :\nvince has two expense reports pending for approval from greg whalley .\nthey are : london trip - 8 , 051 . 59\nphiladelphia ( wharton business school ) - 2 , 067 . 47\nplease have greg approve these as soon as possible .\nthe wharton school will be cross - charged to christie patrick ' s cost center .\nbut for expediency in getting this paid it was submitted on our cost center .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.793+0000", "entityId": 10252, "properties": {"text": "Subject: re : hi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n04 / 05 / 2001 03 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jeff fleming \" on 04 / 05 / 2001 03 : 24 : 25 pm\nplease respond to\nto :\ncc :\nsubject : re : hi !\none other person that i forgot to mention - - praveen kumar . i don ' t know\nexactly what he does , mostly theory stuff i guess . any way , he is also\nreally good and highly respected in the profession ; probably ranks right up\nthere with ( but second to ) bong - soo .\njeff\njeff fleming\nassociate professor\njones graduate school of management - - ms 531\nrice university\n6100 main street\nhouston , tx 77005\n713 / 348 - 4677 ( voice )\n713 / 348 - 5251 ( fax )\nhttp : / / www . ruf . rice . edu / ~ jfleming", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.798+0000", "entityId": 10253, "properties": {"text": "Subject: re : hi !\nplease delete this soon as per jeff ' s request .\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n04 / 05 / 2001 03 : 06 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jeff fleming \" on 04 / 05 / 2001 01 : 46 : 26 pm\nplease respond to\nto :\ncc :\nsubject : re : hi !\ngood to hear from you . things are going pretty well hear , but busy with the\nend of the semester coming up .\nas for u of h , i guess there are several possibilities depending on what\nshane wants to do . the best researcher in their group by far , in my\nopinion , is bong - soo lee . but he does more general asset pricing stuff .\nminnesota econ phd , really smart . their main derivatives guy is rabon\nrabinovich . he ' s done some good work in the past but not very active in the\nlast five or ten years . or , you could go with ron singer or art warga\n( art ' s more respected and more active ) . these guys are more senior , more\ngeneral , and do more research than ramon - - i would guess that they tend to\nbe the workhorses in terms of advising phd students at u of h .\nin any case , please destroy this info as soon as you digest it . i would\nhate for my candidate assessments to ever get passed along to the good folks\nat u of h .\njeff\njeff fleming\nassociate professor\njones graduate school of management - - ms 531\nrice university\n6100 main street\nhouston , tx 77005\n713 / 348 - 4677 ( voice )\n713 / 348 - 5251 ( fax )\nhttp : / / www . ruf . rice . edu / ~ jfleming", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.804+0000", "entityId": 10254, "properties": {"text": "Subject: invitation - whartonetevent - apr 20 / plsrsvp\nvice and christie hello ,\nthis is a followup to our previous invitation to attend\nour next wharton / et event . ? you can rsvp by replying\nto this email - or - if you cannot attent , you ' re always\nwelcome to designate someone else . ? there is no\nlimit on the number of attendees from your company .\n_ _ _ yes i plan to attend\n_ _ _ no , i cannot attend\n_ _ _ someone else from our organization will attend ( name : _ _ _ _ )\nbest regards ,\nmichael tomczyk\nmanaging strategic partnerships ?\nfriday april 20 , 2001 - - 8 : 30 am to 400 pm\nlocation - room 1206 steinberg - dietrich hall - wharton school - philadelphia\nwe have designed this conference as an insight - building event ,\nto present current industry experience from best practice firms ,\nas well as our most recent research findings on best practices\nand strategies for developing and managing alliances ,\nmergers and high tech acquisitions . ? we will include research in progress\nfrom our ongoing long term studies on alliances and acquisitions .\nthis is part of our research activity and there is no conference fee .\nthe emerging technologies management research program / mack center\nis working to identify and develop best practices , competitive strategies and\nmanagement approaches for industry decision makers in industries that are\nbeing\ncreated or transformed by emerging technologies .\nour industry partners include : bank of montreal , charles schwab ,\ndupont , enron , general motors , glaxosmithkline , hewlett - packard ,\nibm , independence / blue cross , mckinsey , nsa , procter & gamble ,\nsprint , 3 m and xerox .\nthe agenda is included below and more information can also be found on our\nwebsite : ? http : / / emertech . wharton . upenn . edu .\nplease call or email if you have any questions or comments about any aspect\nof this event ? - 215 - 573 - 7722 .\nagenda\nmanaging strategic partnerships\nan insight - building conference including new wharton research on\nbest practices and successful strategies for achieving corporate\ngrowth through alliances , mergers and acquisitions .\nfriday , april 20 , 2001 - 8 : 30 to 4 : 30\n1206 steinberg - dietrich hall , wharton school\npresented for our industry partners and guests by the\nemerging technologies management research program ,\nmack center on managing technological innovation\nfaculty research presentations by : ?\nharbir singh , paul schoemaker ,\nlori rosenkopf , phanish puranam and prashant kale\nindustry best practice presentations by :\nsun microsystems , cybersource , broadview and pfizer .\nagenda & conference topics\n8 : 00 - 8 : 30 ? - ? continental breakfast and informal networking\n8 : 30 - 8 : 45\nintroduction : strategic partnering for growth and innovation\n8 : 45 - 10 : 00\nmanaging strategic networking\n10 : 00 - 10 : 30 - break\n10 : 30 - 11 : 30\nbuilding partnering skills and capabilities\n11 : 30 - 12 : 00\nsuccess and failure factors in strategic partnering\n12 : 00 - 1 : 30\nworking lunch - strategies\n1 : 30 - 2 : 30\nsmall group reports\n2 : 30 - 2 : 45 - break\n2 : 45 - 3 : 40\nmanaging high technology acquisitions\n3 : 40 - 4 : 00\nsummary of key insights and future research goals\n4 : 00 - adjourn\ndirections : ? take a taxi to the corner of 37 th and walnut . ? at that\nintersection , turn left and take the broad walkway onto campus . ? turn left at\nthe first intersection ( you will see a lifesize statue of ben franklin\nsitting on a park bench ) . ? this is locust walk . ? the steinberg - dietrich hall\nis the large brick building immediately behind \" ben \" - if you turn left and\nproceed down the walk you will come to the large entrance with cantilevered\nsteps on the right side of the walk . ? the room iw room 1206 and there is an\ninformation desk straight back from the entrance , to guide you to the room .\nif you are staying at the inn at penn , which is directly across the street\nfrom campus on walnut ( between 36 th and 37 th ) - take the walnut street exit\nfrom the hotel ( where the restaurant is ) , turn right from the entrance and\nwalk to 37 th street , cross the street and continue onto campus following the\ndirections ( above paragraph ) .\nwharton is 30 - 40 minutes from the airport , 10 - 15 minutes from the 30 th st .\ntrain station and about 15 - 20 minutes from most hotels in center city .\n- -\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129\nwebsite : ? http : / / emertech . wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.809+0000", "entityId": 10255, "properties": {"text": "Subject: re : real options\nstinson / krishna ,\npaul q , raymond y and i will call 5 . 30 pm houston time thursday afternoon to\ndiscuss . that is 8 . 30 am sydney time . if that is not convenient , i will call\nkrishna to arrange another time .\nregards ,\npaul\nstinson gibner @ ect\n05 / 04 / 2001 07 : 29 am\nto : paul smith / enron _ development @ enron _ development\ncc : pinnamaneni krishnarao / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : re : real options\npaul ,\nkrishna and i are thinking that you may be able to book this type of option\nas a call swaption on power . if you would like to discuss further , let ' s\nset up a time when we can call you .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 04 / 2001\n04 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 02 / 2001 08 : 16 am\nto : paul smith / enron _ development @ enron _ development\ncc : stinson gibner / hou / ect @ ect , vince j kaminski / hou / ect @ ect , paul\nquilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : re : real options\npaul ,\nwe have done a lot of work in this area . i shall call you later\ntoday ( monday my time ) , tuesday morning your time with\nsome recommendations .\nvince\np . s . shirley , please send a real options binder to paul .\nvince\nfrom : paul smith @ enron _ development on 03 / 30 / 2001 08 : 42 am zel 0\nto : vince j kaminski @ ect\ncc : paul quilkey / enron _ development @ enron _ development , raymond\nyeow / enron _ development @ enron _ development\nsubject : real options\nvince ,\nthe sydney office is currently evaluating a proposal that involves an option\nto participate in building a wind farm . should this proceed , we would like to\nmark this option \" to market \" .\nhave the research group completed any work on methods for booking and\nremarking real options ? alternatively , do you have any suggestions as to the\nbest way to value , and book , real options fairly ?\nregards\npaul smith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.814+0000", "entityId": 10256, "properties": {"text": "Subject: tony hamilton / joe carson questions\nvince ,\ni just wanted to follow - up with you regarding the action items that were\ntaken away from yesterday ' s meeting with you , mike roberts , norma , and myself .\n1 ) tony hamilton\nas you know tony ' s official start date was march 12 , 2001 , and he has yet to\nreceive a paycheck . london ' s pay cycles are different than ours however , and\nthey only get paid on the 20 th of each month . tony did not receive a\npaycheck on march 20 th because all of his new hire information has to be put\ninto sap ( the payroll system ) by the first of the month for the employee to\nreceive a check on the 20 th . consequently , tony will not receive his first\npaycheck until april 20 th . if you would like for me to try and work with the\nlondon office however and try to get him a paycheck quicker than that , please\nlet me know .\n2 ) joe carson\nfrom what i am able to gather , gary hickerson did make joe carson an offer\nthat consisted of a one - year contract . however , gary is out of town until\nmonday , and no one is sure of the specifics of the deal . would you like me\nto contace joe to find out the specifics , or would it be more acceptable for\nme to wait until gary returns so that i can get all of the facts .\ni look forward to working with you .\nthanks ,\nanne labbe '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.819+0000", "entityId": 10257, "properties": {"text": "Subject: free latex\ngo to http : / / www . winedt . com / , select downloads , and download winedt 5 to your\nc drive .\non bottom of the same page ( download ) , click on miktex ' s home page ,\nclick on miktex 2 . 0 , and download all the highlighted zip files . you may also\nwant to download miktex - 2 . 0 - manual . pdf .\nyou can then unzip all the files and follow the steps outlined in\nmiktex - 2 . 0 - manual . pdf to\ninstall winedt and miktex . however , the procedure to \" add miktex bin\ndirectory to path \"\nmay not work . it ' s best to manually add the following to your path :\nc : \\ texmf \\ miktex \\ bin ;\nthis software is quite easy to use and very versatile . you can even include\ncolored picture in your tex document .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.824+0000", "entityId": 10258, "properties": {"text": "Subject: fw : fyi - more on truck s / d\nvince :\ni ' d like to send you some articles on the fleet card business .\nif you have some time , i ' d like to discuss the meeting that we had with\ncomdata ( which has a 60 % market share of the fleet card business ) . they have\nsome live data that potentially could be very interesting ; however , i ' d like\nto discuss it with you .\nshawn\nwhat a mess ! ( statistical data included )\njohn d . schulz\n03 / 26 / 2001\ntraffic world\npage 25\ncopyright 2001 gale group inc . all rights reserved . copyright 2001 journal of\ncommerce , inc .\ntruckers still waiting for signs of pent - up freight demand ; earnings\nshortfalls , layoffs loom\nif you are waiting for trucking to kick - start the nation ' s economic recovery ,\npull up a chair and wait awhile . trucking ceos say they haven ' t seen this\nslow a first quarter in a decade .\n\" perhaps the weakest first quarter for freight demand since swift became a\npublic company in 1990 , \" phoenix - based swift transportation chairman and ceo\njerry moyes said .\nthe first - quarter trucking mantra historically has been this : everybody loses\nmoney in january , hopes for a break - even february and earns whatever profit\nthere is in the quarter in march . that formula may not hold this year .\ngregory l . quesnel , president and ceo of con - way transportation services and\nemery worldwide parent cnf inc . , said the current slowdown was first detected\nlate in the third quarter last year and has become \" more pronounced in each\nsuccessive quarter . \" march , he said , has been \" as disappointing as the first\ntwo months this year . \"\nlayoffs already are occurring at the major ltl carriers . yellow freight\nsystem has idled as many as 1 , 000 teamsters and hundreds of white - collar\nback - office workers . most large carriers are warning of profit shortfalls\nthat will cause them to miss analysts ' first - quarter estimates . but there are\ndeeper fears , too . marginal players may be forced into bankruptcy . small ,\nfamily - owned carriers may be unable to exit the industry on their own terms\nbecause of the shocking decline in the value of used trucks that is causing\nsome companies to be valued at less than half their worth of just two years\nago .\nswift ' s volume drop - off began with shipments originating on the west coast in\njanuary and february and it is continuing in march , moyes said . coupled with\nreduced demand from the southwest , moyes said swift will not meet analysts '\nfirst - quarter earnings expectations . swift is not alone .\n\" we hauled less freight in february than february a year ago , \" said bob\nhammel , executive vice president of pittsburgh - based pitt ohio express , a\nleading privately held eastern regional ltl carrier . \" the slowdown in\nmanufacturing began in the middle of last year and it was precipitous . nobody\nanticipated the speed in which manufacturing demand fell off . \"\neven con - way , the most profitable ltl operation in the past five years , said\nit would have a decline in first - quarter operating income compared with the\nyear - ago period . con - way ' s tonnage declines were estimated in the\n\" mid - single - digit \" percentage range .\nroadway express estimated that its current tonnage levels are running 10 to\n11 percent below those a year ago , which will result in an approximately\none - half of 1 percent ( 0 . 5 percent ) decline in its operating ratio . ( see\nsidebar )\npat hanley , overnite transportation ' s senior vice president and chief\nfinancial officer , said freight figures were flat in february year over year\nbut rose slightly in march . overnite is the exception to the ltl industry\nwith as many as 24 new terminals scheduled to be opened this year .\n\" january was pretty good to us , but february was flat . it ' s coming back in\nmarch . we ' re probably up in low single digits , 3 to 4 percent . we ' re picking\nback up . the economy has hurt us . if you had asked us at the start of the\nyear , we ' d have said we ' d be up double - digits , \" hanley said .\nthe national economic picture is \" a big concern , \" hanley said . \" we ' re not\nseeing pressure on prices , at least not so far . we ' re seeing customers ship\n10 pallets a day instead of 20 . the shipment size is coming down . certainly\nwe ' re concerned . we ' ll do o . k . , but not as great as we ' d like . \"\nforget consumer confidence surveys or the producer pricing index or whatever\nstars align in federal reserve board chairman alan greenspan ' s world . the\ngenuine leading indicator of any national economic trend is trucking , which\nis always a first - in , first - out industry in any economic slowdown .\nto hear trucking industry leaders tell it , get comfortable with beans and\nfranks for dinner . it ' s going to be awhile before it ' s filet mignon time\nagain .\nshippers see what ' s happening as well but say it ' s still too early in the\nyear for carriers to start cutting rates to fill empty trucks .\n\" all the carriers we talk with report flat or slightly declining business\nlevels - - definitely slower than early last year , \" said bill huie , assistant\nvice president of corporate transportation for nch corp . , irving , texas .\n\" with a couple of exceptions , carriers we talk with have no plans for\nexpansion in the next few months . we are getting feelers about some possible\nlane adjustments to boost revenue . but generally it appears a little early in\nthe economic downturn for much price movement . \"\nthe national ltl carriers are seeing the same things . \" our business is down\npretty substantially for the first quarter , \" said roger dick , spokesman for\nyellow corp . , parent of yellow freight system and two large regional ltl\ncarriers , jevic transportation , delanco , n . j . , and saia motor freight ,\nduluth , ga .\nusfreightways corp . , citing what it called the nation ' s \" serious economic\nslowdown , \" said it expects first - quarter earnings to fall \" very substantially\nbelow \" current wall street consensus .\nextreme weather conditions also contributed to the already weakened operating\nenvironment , usf chairman , president and ceo samuel k . skinner added .\n\" traditionally , the first quarter builds momentum slowly , with march being\nthe strongest month of the period , \" skinner said in a statement . \" this year ,\nthe economic slowdown of the fourth quarter of 2000 accelerated in january\nand february , softening even the normal modest expectations for those two\nmonths . \"\nit ' s not just the ltl industry that ' s hurting . the morgan stanley dean witter\ntruckload freight index continues to show the worst demand - supply\nrelationship since analyst james j . valentine began tracking the data in\napril 1994 . two events can cause weakness in the index , according to\nvalentine . they are either an abundance of excess trucks on the road or weak\nfreight demand .\n\" so far in 2001 , we have seen the confluence of both factors , but the\nfall - off in demand has far outpaced the increase in supply , \" valentine wrote\nin his most recent \" trucking snapshot \" for early march .\nyear - to - date measurement for truckload demand is down 25 percent year over\nyear , according to valentine ' s index , while supply is up only 7 percent . that\nwould indicate the over capacity was a significant issue last year but was\n\" masked by the strong economy , \" valentine says .\nin a more ominous note , valentine believes overcapacity will continue to\nplague the truckload industry for the next one to two years . only a\nreaccelerating national economy can bring the demand - supply back in balance\nfor the truckload sector in the near term , valentine predicts .\nthe overproduction of new class 8 trucks from early 1998 through early last\nyear has put too many trucks on the roads and caused supply to back up at\nmanufacturers , wholesalers and other retailers . used trucks have lost on\naverage more than 30 percent of their value over the past 18 months .\nanecdotally , one used truck dealer , music city truck & equipment , in\nlavergne , tenn . , is holding a \" two - for - one \" sale on three - to five - year - old\nclass 8 freightliners . you can buy two for around $ 30 , 000 , less than a brand\nnew chevy suburban suv .\nwhat that means is a trucker who bought a 1998 class 8 truck for $ 70 , 000 and\ndepreciated half the value over three years has a piece of equipment on the\nbooks this year at $ 35 , 000 . but assuming it has lost 30 percent of that\nvalue , it may only be worth $ 24 , 500 in actuality . for a carrier with a\n100 - truck fleet , that equates to a loss of more than $ 1 million on assets .\nthe glut may last for a while , according to valentine ' s analysis . assuming a\nthree - year trade - in cycle , most of the class 8 tractors in the truckload\nsector are just now rolling over to the used - truck market . that means that\novercapacity will plague the truckload industry for at least the next year .\nthat will result in some of the marginal carriers exiting the business , as\ndid nearly 1 , 900 carriers last year that either closed or declared\nbankruptcy .\n\" we can see from indexes , surveys and other information available to us that\nit is unlikely there will be any significant improvement in march and freight\ndemands will continue to be soft throughout the month . based on all of these\nfactors , we expect usfreightways ' profits for the first quarter to be very\nsubstantially less than published analysts ' forecasts , \" skinner said .\nin addition , severe weather conditions including an earthquake in seattle ,\nrainstorms in california and blizzards in the northeast have added cost and\ndecreased efficiencies , skinner added .\nexpectations at each of usf ' s operating companies have been affected , some\nmore than others . the ltl , logistics , reverse logistics and\nfreight - forwarding units are all showing decreased revenue and volume over a\nsimilar period last year , skinner said .\nfurther job cuts at usf worldwide , its freight forwarder , would be in the\noffing as cost controls at the unit would be \" accelerated \" in the wake of the\nsoftening economy , skinner said . late last year , skinner said the rebuilding\nprocess at usf worldwide would be a two - year process . but the worsening\neconomy has made that rebuilding job harder , he said .\n\" we are seeing evidence that the slowing economy is , in fact , further\nimpeding progress in this area , \" skinner said . \" during the fourth quarter of\n2000 and continuing into the first quarter of 2001 , the company has taken\nsteps to increase cost efficiencies . among these actions are a substantial\ncutback in capital spending and significant reductions in the labor force .\nthese cost - control efforts will be accelerated to partially counterbalance\nthe damaging impact of the current economic and weather conditions . \"\nin the 2000 first quarter , usf posted $ 22 . 3 million net income , a 27 percent\nrise from the $ 17 . 5 million earnings in the 1999 first quarter . at the time ,\nthat was usf ' s 15 th straight quarter - over - quarter earnings increase . it came\non $ 608 . 2 million revenue , an 18 . 5 percent rise in from the $ 513 . 2 million\nrevenue in the 1999 first quarter . analysts had been estimating usf to earn\nabout $ 3 . 50 a share earnings for 2001 , compared with actual $ 3 . 61 earnings\nper share for all of last year . in the fourth quarter last year , usf earned\n$ 23 . 7 million , or 91 cents a share .\ntrucking in a snapshot\nmarket what ' s going on\nmsdw [ * ] truckload remains in record - low territory , indicating\nfreight index the worst demand - supply relationship since msdw\nbegan tracking the date in april 1994 .\ndiesel prices diesel prices in the first quarter of 2001\nhave come down 6 % sequentially from 4 qo 0 . however ,\nthe average price for the quarter remains 6 %\nabove that of lqo 0 .\nwti oil opec recently agreed to reduce supply by 5 % and\nhas stated a price objective of $ 25 per barrel .\ncapacity retail sales of class 8 tractors ( new trucks\nentering the market ) came down in january , but\ninventory ( trucks that will enter the market at some\npoint ) to sales ratio hit a new high of 3 . 4 months\ngdp 4 qo 0 gdp increased 1 . 1 % and economists see u . s .\nrecession in 2001 with + 0 . 5 % and - 1 . 4 % gdp forecast\nfor lqol and 2 qol , respectively .\nretail sales retail sales rose 0 . 7 % in january . while this\nwas better than forecast , the upside was likely\nthe result of excessive clearance sales after a\ndisappointing holiday season .\nconsumer the conference board ' s measure of consumer\nconfidence confidence fell again ( nine points ) in february\nafter registering the largest one - month decline\nin 10 years in january ( 14 points ) .\nnapm the february napm rose slightly to 41 . 9 .\nhowever , it still indicates a contracting\nmanufacturing sector .\nleading the index of leading economic indicators\neconomic rose 0 . 8 % in january , while\nindicator msdw had forecast a 0 . 6 % increase . this\nrepresents the first rise in four months .\nstock after a recent pullback , trucking stocks remain\nperfonnance up year - to - date with tl stocks up 5 % , regional\nltl stocks up 9 % and national ltl stocks up 13 % .\ninvestor for the week ended february 28 , mutual fund\noutflows totaled $ 309 million , compared with\ninflows of $ 2 billion in the prior week .\nmarket implications\nmsdw [ * ] truckload negative for all tl carriers .\nfreight index\ndiesel prices the downward trend is positive for all\ncarriers , especially tl carriers , which have\ngreater exposure to fuel than ltl carriers .\nwti oil negative for all carriers , as $ 25 per\nbarrel is still 25 % higher than the $ 20 per\nbarrel average since 1990 .\ncapacity negative for tl carriers , not a major\nconcern for ltl carriers , which measure\ncapacity by the number of terminals .\ngdp negative for all carriers .\nretail sales negative for both ti and ltl carriers .\nconsumer negative for all carriers\nconfidence\nnapm negative for all carriers .\nleading positive for all carriers .\neconomic\nindicator\nstock positive , however , stocks could pull\nperfonnance back further in the short term as\nfundamentals catch up .\ninvestor negative .\nsource : morgan stanley dean witter research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.828+0000", "entityId": 10259, "properties": {"text": "Subject: re : interviews\nmarshall ,\nsorry for a delay in responding to you .\nmy hr people were asked to get in touch with you re\nthe candidates .\nvince\nmarshall brown on 03 / 27 / 2001 02 : 36 : 12 pm\nto : \" ' vince kaminski ' \"\ncc :\nsubject : interviews\nvince ,\ni had two candidates speak with zamin lu on 3 / 14 / 01 and 3 / 16 / 01 .\n( renshi zhang and bill koures respectively ) . i know you were in london last\nweek . if you could please give me some feedback ( either positive or\nnegative ) as soon as possible , i would appreciate it .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\nphone : 212 - 704 - 0596\nfax : 212 - 704 - 4312\nmarshall . brown @ robertwalters . com\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party .\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.833+0000", "entityId": 10260, "properties": {"text": "Subject: enside\ngood morning !\nhere is the latest draft of your article for the enside newsletter . i have\nforwarded it to the design team and expect them to send me a layout copy\nsometime next week . we will be able to make any additional changes then .\ntalk to you next week - have a great weekend !\nbest regards ,\nkathie", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.837+0000", "entityId": 10261, "properties": {"text": "Subject: latest fall 2001 module schedule and calendar ( rev . c ) - placed in\nyour mailbox 4 - 5 - 01\nstudents , faculty , and staff ,\na hard copy of the latest fall 2001 module schedule and calendar ( rev . c )\nwere placed in your mailbox on thursday . please review over the calendar\nclosely for changes made . i have also posted the latest fall 2001 module\nschedule and calendar ( rev . c ) to embanet .\nreminder : the jones graduate school does not always follow the university\ncalendar on scheduled breaks , exams , etc . . . . always refer to jones\ngraduate school information regarding breaks , exam schedules , etc . . . .\nthanks ,\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.842+0000", "entityId": 10262, "properties": {"text": "Subject: erisk essentials\n? www . erisk . com\nwhat ' s new at erisk . com - 06 april 2001\nweekly review this week ' s economic , banking and p _ insurance news , from an\nenterprise risk management perspective . read it here . . .\nanalysis\n? how the new economy aided and abetted the economic downturn\n? state or federal regulation ? banks and insurers slug it out\n? credit risk concentration hits the interest - rate swaps market\nfeature why do some art products fare better than others ? credit insurance ,\nfor example , has taken off while the securitisation of catastrophe risk has\nstruggled . in this feature , sanford bernstein analysts todd bault and\ntimothy connor suggest that the secret of success lies in matching different\nkinds of risk to their appropriate owners - and that insurers ' expertise in\nhandling basis risk makes this a potentially lucrative market . also still\navailable : penny cagan on basle ' s treatment of operational risk .\niconference\nlooking for an overview of economic capital ? attend our iconference\n\" practical considerations in measuring economic capital \" on april 11 . read\nmore about it and register for the iconference .\nstill available : slides and a summary of the credit derivatives iconference .\nlinks need to find educational material on the web ? looking for a software\nvendor , a regulator or an exchange ? find hundreds of links to other risk\nmanagement sites and resources in our links section\nthe erisk essentials is published every friday by erisk . com .\nto subscribe to this newsletter , please register on our website .\nto unsubscribe , access your account . your username is the email address\nwhere you received this message .\nto be reminded of your password , or to reset it , follow this link .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.846+0000", "entityId": 10263, "properties": {"text": "Subject: retail markets conference\ni would like to invite you to participate in a conference on \" retail\nparticipation in competitive power markets \" to be held at stanford\nuniversity on june 21 - 22 , 2001 . although california and other regional\nmarkets will likely be introducing some demand - response programs by june ,\nthere is a clear need for continual evaluation of these nascent efforts to\ntransform the market . the conference provides an opportunity to learn from\ndifferent experiences .\nthis policy research meeting will focus on establishing a foundation for\nunderstanding the key concepts and methods for demand response programs and\nto provide an opportunity for participants to raise questions and recommend\ndirections for additional research and analysis . participants will come\nfrom companies , government , and universities . you can obtain more\ninformation about the conference by checking under \" meetings \" on our emf\nwebsite listed below .\nplease let me know if you plan on attending . also , if you would like to\nmake a brief 15 - minute presentation , please let me know your topic and\ndescribe it in a few sentences . i will try to choose speakers that will\ncover the full range of interests represented by this group . researchers\nshould focus on the implications of their analysis for designing demand\nresponse programs rather than on the technical details of their\nmethodology . i would also encourage practitioners to discuss their\nexperience in implementing demand response programs or in raising selected\nissues .\nthank you ,\nhill huntington\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.852+0000", "entityId": 10264, "properties": {"text": "Subject: visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.859+0000", "entityId": 10265, "properties": {"text": "Subject: retail markets conference\ni would like to invite you to participate in a conference on \" retail\nparticipation in competitive power markets \" to be held at stanford\nuniversity on june 21 - 22 , 2001 . although california and other regional\nmarkets will likely be introducing some demand - response programs by june ,\nthere is a clear need for continual evaluation of these nascent efforts to\ntransform the market . the conference provides an opportunity to learn from\ndifferent experiences .\nthis policy research meeting will focus on establishing a foundation for\nunderstanding the key concepts and methods for demand response programs and\nto provide an opportunity for participants to raise questions and recommend\ndirections for additional research and analysis . participants will come\nfrom companies , government , and universities . you can obtain more\ninformation about the conference by checking under \" meetings \" on our emf\nwebsite listed below .\nplease let me know if you plan on attending . also , if you would like to\nmake a brief 15 - minute presentation , please let me know your topic and\ndescribe it in a few sentences . i will try to choose speakers that will\ncover the full range of interests represented by this group . researchers\nshould focus on the implications of their analysis for designing demand\nresponse programs rather than on the technical details of their\nmethodology . i would also encourage practitioners to discuss their\nexperience in implementing demand response programs or in raising selected\nissues .\nthank you ,\nhill huntington\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.864+0000", "entityId": 10266, "properties": {"text": "Subject: jedi shares\nvince ,\nattached is a description of the deal involving jedi shares . the structure\nis a two - year forward followed by another two years of restriction . the\npricing is consistent with our previous approach . i have given a copy to\nstinson as well . as ryan would like a reply in the am hours , i would like to\nlet him know by 11 am . please take a look and let me know what your thoughts\nare , time permitting . otherwise , i shall check with stinson and proceed .\nthanks .\nrakesh\n- - - - - - - - - - - - - - - - - - - - - - forwarded by rakesh bharati / na / enron on 04 / 06 / 2001\n09 : 34 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ryan siurek on 04 / 06 / 2001 08 : 17 am\nto : rakesh bharati / na / enron @ enron\ncc : george mckean / na / enron @ enron , gordon mckillop / na / enron @ enron , ron\nbaker / enron @ enronxgate\nsubject :\nrakesh ,\ncan you please take a look at this write up that i put together last night .\ni would like to get your comments this morning if possible . i am trying to\nsee if we can use this as a discussion tool with some investment banks to get\ntheir comments as to the reasonableness of the restriction calculated .\nalso , thanks for your assistance with andersen yesterday . they should be\ndirecting all of their questions / comments to me so i can intermediate with\nyou and the rest of the research group . please let me know if they start\ncalling you with questions or want to set up any meetings .\nregards ,\nryan", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.872+0000", "entityId": 10267, "properties": {"text": "Subject: eprm article\nhi vince ,\n?\ni ' m sorry you weren ' t around in sydney this week . you missed a very good\nbook launch party that john martin organised here for us . paul made a short\nspeech in which he relayed some great comments which he said came from ? you -\nthanks very much !\n?\nplease find attached the next eprm article . its not really tided up fully\nfrom our end yet , but i wanted to send it off before the weekend in case you\ngot chance to look at it . because of the easter break robin is after it by\nthursday of next week .\n?\nbest regards .\n?\nchris .\n?\n- eprm _ 10 _ fwd _ curve _ simulation . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.879+0000", "entityId": 10268, "properties": {"text": "Subject: re : sfa individual registrations\nhi julie ,\nit is so nice to hear from you . i have had several conversations with\nthe houston compliance people regarding how to keep my sfa licenses current .\nas per your request , i will respond to your questions in your email :\n- - - - - original message - - - - -\nfrom : russell , julie\nsent : friday , april 06 , 2001 10 : 19 am\nto : mack , iris\nsubject : sfa individual registrations\niris\nyour mails regarding sfa registration finally made their way to me , as i look\nafter all enron ' s individual registrations with the sfa .\nat present , we are able to register overseas based individuals , although this\nmay change towards the end of the year when the fsa takes over from the sfa\nas lead regulator in the uk .\ni am sort of overseas . however i will be spending some time in the london\noffice ( which is another reason why i don ' t want to lose my sfa\ndesignations ) . as a matter of fact , i will be coming to london office in a\nweek or two - and staying there for a while .\nthere is still a lot of uncertainty surrounding how the fsa will implement\nindividual registrations , but it has stated that anyone registered with the\nsfa at the point at which the fsa takes over , will be automatically\n' grandfathered ' across to the new regulator . time will tell , what will\nhappen thereafter .\nwhat we need to do as far as your registration is concerned , is to submit a\ntransfer form to the sfa to move your registration to enron . i shall put a\nform in the mail to you ( please let me know where to send it ) for signature\nand update of personal details .\nmy enron office address in houston is as follows :\niris mack\nresearch department\n1400 smith street , 1972 d\nhouston , texas 77002 usa\nas we have to submit the form to the sfa with original signatures , please\nreturn it to me at enron house and i can get it authorised by our sfa\ncompliance officer , jonathan marsh . i will then inform you when i receive\nconfirmation of your acc\ncould you respond to the following by return e - mail ;\nname of the sfa regulated firm where you were last registered ;\nbanque nationale de paris paribas at 10 harewood avenue in london\ndate ( approximation ) when you left the above ;\naugust 2000\ntype of registration you held - please note we can only register you in the\nfollowing registers ; general representative , futures and options\nrepresentative , securities representative or corporate finance representative\ni passed three exams : derivatives , securities and regulations\nthe final question is whether you are going to be based in houston\npermanently or whether you know at this stage if / when you will be returning\nto the uk .\nright now i will be spending time in both houston and london . see above\nexplanation .\nhopefully i have answered all your questions . please let me know if you\nrequire additional information .\nkind regards ,\niris\nlook forward to hearing from you\nbest regards\njulie\njulie russell\ncompliance and regulatory", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.886+0000", "entityId": 10269, "properties": {"text": "Subject: institutional investor journals profile update confirmation\nthank you for updating your ii journals profile information . changes to your\nuser id , password and e - mail address have been made . please allow 24 hours\nfor any other changes you ' ve made to take effect in our system . here is the\nprofile information we have for you :\naccount number : 12973228\nfirst name : vince\nlast name : kaminski\ncompany name : enron corp\nposition : managing director\ndepartment :\naddress 1 : 1400 smith st eb 1962\naddress 2 :\ncity : houston\nstate : tx\nzip code : 77002 - 7327\ncountry : usa\nphone : ( 713 ) 853 - 3848\nextension :\nfax : ( 713 ) 646 - 2503\nforeign phone :\nforeign fax :\nemail : vkamins @ enron . com\nuser id : vkaminski\npassword : italia", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.891+0000", "entityId": 10270, "properties": {"text": "Subject: * special notification * aurora version 5 . 5 release , what ' s new ?\niv\nfriends :\ni spoken with most of you over the last few weeks regarding the new\nversion of aurora due to be released tomorrow . we ' ve broken a lot of\nnew ground with this version , and this version will serve as our\nofficial launch into the eastern u . s . we ' ve worked closely with our\neastern customers , and responded to the needs of the market . some of\nthe enhancements :\naurora software modeling enhancements :\n* energy storage - resources ( pumped hydro )\n* market areas : no limit on number of areas\n* transmission : congestion pricing .\n* price caps\n* risk analysis\n* modeling enhancements via vb scripting : \" update data \" capability\ngeneral capabilities\n* aurora ' s run time speed improved again .\n* file transfers to epis\n* interface enhancements\nreporting enhancements\n* marginal resource reporting\n* resource operations reporting\n* resource stacks detail consolidated\naurora databases\n* east - central aurora database - - 25 market areas modeled with 11\nmarket areas in new york iso .\n* wscc aurora database - - updated ipp resources\n* ercot aurora database - updated resources\n* all databases updated to use the new modeling capabilities\nas aurora continues to grow , and we meet the needs of the market , we\nhave made several procedural changes . we continue to offer free 7 - day\ndemos to those companies that want to take a look at the model , and get\na brief idea of how it thinks and feels . after that 7 - day demo period\nwe now offer either a discount for moving into a full license , or we\noffer a 60 - day trial for $ 10 , 000 . 00 - - we also now offer more options\nfor the licensing of the model . annual licenses are priced as follows :\nsingle user ( 1 user / 1 pc )\n$ 33 , 000 . 00\nlimited - use ( 1 user / multiple pcs or multiple users / 1 pc )\n$ 45 , 000 . 00\ntwo - user ( 2 users / 2 pcs )\n$ 55 , 000 . 00\nsite license ( unlimited users / pcs excluding affiliates )\n$ 79 , 000 . 00\naffiliate - site ( unlimited users / pcs including affiliates )\n$ 99 , 000 . 00\nfor additional information , please contact me , and i ' ll speak with you\nabout how aurora can help you in your specific operations and projects .\nv . todd wheeler\nsales manager\nepis , inc .\n( 503 ) 722 - 2023 tel . x 210\n( 503 ) 722 - 7130 fax\nwww . epis . com\ntodd @ epis . com\n>\n- what ' s new - version 5 . 5 information . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.896+0000", "entityId": 10271, "properties": {"text": "Subject: * special notification * aurora version 5 . 5 release , what ' s new ?\niv\nfriends :\ni spoken with most of you over the last few weeks regarding the new\nversion of aurora due to be released tomorrow . we ' ve broken a lot of\nnew ground with this version , and this version will serve as our\nofficial launch into the eastern u . s . we ' ve worked closely with our\neastern customers , and responded to the needs of the market . some of\nthe enhancements :\naurora software modeling enhancements :\n* energy storage - resources ( pumped hydro )\n* market areas : no limit on number of areas\n* transmission : congestion pricing .\n* price caps\n* risk analysis\n* modeling enhancements via vb scripting : \" update data \" capability\ngeneral capabilities\n* aurora ' s run time speed improved again .\n* file transfers to epis\n* interface enhancements\nreporting enhancements\n* marginal resource reporting\n* resource operations reporting\n* resource stacks detail consolidated\naurora databases\n* east - central aurora database - - 25 market areas modeled with 11\nmarket areas in new york iso .\n* wscc aurora database - - updated ipp resources\n* ercot aurora database - updated resources\n* all databases updated to use the new modeling capabilities\nas aurora continues to grow , and we meet the needs of the market , we\nhave made several procedural changes . we continue to offer free 7 - day\ndemos to those companies that want to take a look at the model , and get\na brief idea of how it thinks and feels . after that 7 - day demo period\nwe now offer either a discount for moving into a full license , or we\noffer a 60 - day trial for $ 10 , 000 . 00 - - we also now offer more options\nfor the licensing of the model . annual licenses are priced as follows :\nsingle user ( 1 user / 1 pc )\n$ 33 , 000 . 00\nlimited - use ( 1 user / multiple pcs or multiple users / 1 pc )\n$ 45 , 000 . 00\ntwo - user ( 2 users / 2 pcs )\n$ 55 , 000 . 00\nsite license ( unlimited users / pcs excluding affiliates )\n$ 79 , 000 . 00\naffiliate - site ( unlimited users / pcs including affiliates )\n$ 99 , 000 . 00\nfor additional information , please contact me , and i ' ll speak with you\nabout how aurora can help you in your specific operations and projects .\nv . todd wheeler\nsales manager\nepis , inc .\n( 503 ) 722 - 2023 tel . x 210\n( 503 ) 722 - 7130 fax\nwww . epis . com\ntodd @ epis . com\n>\n- what ' s new - version 5 . 5 information . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.901+0000", "entityId": 10272, "properties": {"text": "Subject: re : generation earnings model\nmichelle ,\ni agree with you that we need to run at least 500 iterations . but i did not\nrealize that it took 16 hours to run 100 iterations . helen and i talked earlier about\nusing parallel computing technique to split the algorithm into smaller parts and\nrun the parts separately on different processors , then aggregate the results .\nthis procedure makes better use of computer power and saves time . looks like\nwe have to do it this way now . buying a more powerful computer helps but\ndoes not solve the problem .\nin addition , we might want to re - consider if writing the code in vb is optimal .\ni was assured at the very beginning that vb runs as fast ( if not faster ) as c ,\nbut some re - assurance from it group on this issue is helpful .\nbest ,\nalex\nfrom : michelle d cisneros @ ect 04 / 09 / 2001 02 : 52 pm\nto : alex huang / corp / enron @ enron\ncc : gary hickerson , danielle romain\nsubject : generation earnings model\nhi alex -\ndanielle and i were talking to david m . today regarding running the model for purposes of back testing the results . last week we ran calpine using 46 days of historical forward price data at 10 and 100 iterations . the 100 iteration run took 16 hours to run . to run all 20 companies with the 46 days worth of data and at 100 iterations is estimated to take about 28 days . we are concerned that 100 iterations will not be sufficient and will need to be increased to at least 500 iterations .\nwe are thinking that we need to use a server or something much more powerful than the test computer we have been using . do you have any suggestions as to how we can improve the process ?\nthanks ,\nmichelle\nx 35435\nhi alex -\ndanielle and i were talking to david m . today regarding running the model for purposes of back testing the results . last week we ran calpine using 46 days of historical forward price data at 10 and 100 iterations . the 100 iteration run took 16 hours to run . to run all 20 companies with the 46 days worth of data and at 100 iterations is estimated to take about 28 days . we are concerned that 100 iterations will not be sufficient and will need to be increased to at least 500 iterations .\nwe are thinking that we need to use a server or something much more powerful than the test computer we have been using . do you have any suggestions as to how we can improve the process ?\nthanks ,\nmichelle\nx 35435", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.906+0000", "entityId": 10273, "properties": {"text": "Subject: re : generation earnings model\nmichelle ,\ni agree with you that we need to run at least 500 iterations . but i did not\nrealize that it took 16 hours to run 100 iterations . helen and i talked\nearlier about\nusing parallel computing technique to split the algorithm into smaller parts\nand\nrun the parts separately on different processors , then aggregate the results .\nthis procedure makes better use of computer power and saves time . looks like\nwe have to do it this way now . buying a more powerful computer helps but\ndoes not solve the problem .\nin addition , we might want to re - consider if writing the code in vb is\noptimal .\ni was assured at the very beginning that vb runs as fast ( if not faster ) as c ,\nbut some re - assurance from it group on this issue is helpful .\nbest ,\nalex\nfrom : michelle d cisneros @ ect 04 / 09 / 2001 02 : 52 pm\nto : alex huang / corp / enron @ enron\ncc : gary hickerson , danielle romain\nsubject : generation earnings model\nhi alex -\ndanielle and i were talking to david m . today regarding running the model for\npurposes of back testing the results . last week we ran calpine using 46 days\nof historical forward price data at 10 and 100 iterations . the 100 iteration\nrun took 16 hours to run . to run all 20 companies with the 46 days worth of\ndata and at 100 iterations is estimated to take about 28 days . we are\nconcerned that 100 iterations will not be sufficient and will need to be\nincreased to at least 500 iterations .\nwe are thinking that we need to use a server or something much more powerful\nthan the test computer we have been using . do you have any suggestions as to\nhow we can improve the process ?\nthanks ,\nmichelle\nx 35435\nhi alex -\ndanielle and i were talking to david m . today regarding running the model for\npurposes of back testing the results . last week we ran calpine using 46 days\nof historical forward price data at 10 and 100 iterations . the 100 iteration\nrun took 16 hours to run . to run all 20 companies with the 46 days worth of\ndata and at 100 iterations is estimated to take about 28 days . we are\nconcerned that 100 iterations will not be sufficient and will need to be\nincreased to at least 500 iterations .\nwe are thinking that we need to use a server or something much more powerful\nthan the test computer we have been using . do you have any suggestions as to\nhow we can improve the process ?\nthanks ,\nmichelle\nx 35435", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.911+0000", "entityId": 10274, "properties": {"text": "Subject: yen outlook\nvince ,\nas a followup to our meeting with david port and rudi zipter re enron ' s investment in sk - enron , maureen and i wrote the attached position paper on the japanese yen . as we have discussed , the volatility of the won closely tracks fluctuation in the yen , and this yen position paper is intended to complement the won outlook piece for a broader perspective on currencies that takes into account the yen ' s influence on asian currencies . .\nwe would like to distribute this outlook to david and rudi , but wanted to send it to you for initial reaction prior to internal distribution .\nthank you , and let me know if you have any questions or comments re the attached .\ngwyn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.915+0000", "entityId": 10275, "properties": {"text": "Subject: yen outlook\nvince ,\nas a followup to our meeting with david port and rudi zipter re enron ' s\ninvestment in sk - enron , maureen and i wrote the attached position paper on\nthe japanese yen . as we have discussed , the volatility of the won closely\ntracks fluctuation in the yen , and this yen position paper is intended to\ncomplement the won outlook piece for a broader perspective on currencies that\ntakes into account the yen ' s influence on asian currencies . .\nwe would like to distribute this outlook to david and rudi , but wanted to\nsend it to you for initial reaction prior to internal distribution .\nthank you , and let me know if you have any questions or comments re the\nattached .\ngwyn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.919+0000", "entityId": 10276, "properties": {"text": "Subject: altos na gas model\nkim , i know you have been interested in the development of a long term\nnatural gas model for use in the ets revenue management effort . i agree that\nthe ability to model various supply / demand scenarios for north america\nshould prove useful in ets business development efforts , and in particular ,\nin predicting the impact of the new , large alaskan gas supplies on the n . a .\npipeline grid .\nas you know , vince kaminski feels that a software product developed by dale\nnesbitt ( marketpoint , inc . ) of los altos hills , ca . may be a good choice , and\none readily available in a relatively short time . marketpoint has proposed\nthat they work with us in our offices for a week of intensive training and\ntesting , so we can make a more informed decision before ordering the\nsoftware . they have proposed a charge of $ 12 , 000 , plus expenses , for the\none - week session , with that cost applied to the first year ' s subscription\nprice ( approx . $ 55 - 60 m / yr ) should we decide to go forward . the other\ndetails ( timing , ene resources required , necessary it interface , etc ) still\nneed to be worked out , but i believe there is generally a consensus to\nproceed with the test .\nwith my recent relocation to the clean fuels group , i will no longer be\nresponsible for the alaskan pipeline development . however , danny mccarty is\npulling together a team consisting of people from nng , nbp and elsewhere in\nets to push the project forward . i believe eric gadd will be playing a key\nrole as well . the decision on the long term gas model should appropriately\nbe made by the new project team .\ni have attached a draft of the proposed marketpoint license agreement . it\nhas not yet been fully reviewed by legal ( or by shelley c . for the\n\" affiliate \" issues ) .\nlet me know if i can provide any other background or assistance .\njng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.924+0000", "entityId": 10277, "properties": {"text": "Subject: re : new business\nh ? lyette ,\ni am working systematically through un - answered messages .\nyes , i shall be delighted to meet your friend .\nvince\nhelyette geman on 04 / 05 / 2001 04 : 58 : 47 am\nto : vkamins @ enron . com\ncc : vkaminski @ aol . com\nsubject : new business\ndear vince ,\na friend of mine , head of research and new projects in a major bank ,\nwanted to get in touch with the energy industry to possibly develop\nworking relationships . i said that enron was the right place to start\nand \" you \" the right person to meet . in this order , he would come to\nthe power 2001 and i would introduce him to you .\nis this o . k with you ?\nbest regards\nhelyette\nh ? lyette geman\nprofessor of finance\nuniversity paris ix dauphine and essec", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.928+0000", "entityId": 10278, "properties": {"text": "Subject: re : new business\nh , lyette ,\ni am working systematically through un - answered messages .\nyes , i shall be delighted to meet your friend .\nvince\nhelyette geman on 04 / 05 / 2001 04 : 58 : 47 am\nto : vkamins @ enron . com\ncc : vkaminski @ aol . com\nsubject : new business\ndear vince ,\na friend of mine , head of research and new projects in a major bank ,\nwanted to get in touch with the energy industry to possibly develop\nworking relationships . i said that enron was the right place to start\nand \" you \" the right person to meet . in this order , he would come to\nthe power 2001 and i would introduce him to you .\nis this o . k with you ?\nbest regards\nhelyette\nh , lyette geman\nprofessor of finance\nuniversity paris ix dauphine and essec", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.933+0000", "entityId": 10279, "properties": {"text": "Subject: resume from ningxiong xu\nvince :\nthis is a candidate from stanford i mentioned to you about last friday . he is a student of my thesis advisor there . he seems to have solid math and statistics background ( including stochastic calculus ) and his thesis is on supply - chains . you mentioned about two possible positions : one in net works and another in freight trading .\nthanks ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on 04 / 09 / 2001 09 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nningxiong xu on 04 / 09 / 2001 03 : 18 : 33 am\nto :\ncc : arthur veinott\nsubject : resume from ningxiong xu\n41 b . escondido village\nstanford , ca 94305\napril 9 , 2001\ndr . pinnamaneni v . krishnarao\nvice president , enron corporation\ndear dr . krishnarao ,\nprofessor veinott told me a little about the research going on at enron\nfrom his conversation with you late last week . the work sounded very\ninteresting to me . professor veinott also told me that the research group\nat enron may have some positions for which i might be qualified . i am\nwriting to let you know that i would have great interest in exploring this\npotential opportunity with you . to that end i attach my resume together\nwith an abstract of my ph . d . thesis under professor veinott as a word\ndocument . i might also add that i expect to finish my ph . d . in management\nscience and engineering here by july 1 , 2001 .\nincidentally , my work has led me to study your own thesis in some detail\nand i have been very impressed with it . it may be of some interest to you\nthat our work is related and seems to require a different generalization\nof karush ' s additivity - preservation theorem than the lovely ones you\ndevelop .\ni look forward to hearing from you .\nsincerely ,\nningxiong xu\n- 10408 resume 3 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.937+0000", "entityId": 10280, "properties": {"text": "Subject: faculty contact and schedule persentation\ndear mr . kaminski ,\nthe following are the faculty details :\nms . deborah j . barrett\ninstructor & dir . , mba communications\nphone 713 - 348 - 5394\nbarrett @ rice . edu\nmr . wil uecker\nassociate dean for executive education\nphone 713 - 348 - 5869\nuecker @ rice . edu\nmr . dennis wayne loughridge\nadjunct professor - management\nphone 713 - 348 - 4869\nlounghrid @ rice . edu\ni will also speak with the faculty and inform them about the details\nconcerning the presentation on may 7 at enron office ( time to be determine )\nand the dinner following it .\nsincerely ,\nluigi calabrese\nrice mba candidate\nclass of 2002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.943+0000", "entityId": 10281, "properties": {"text": "Subject: re : bullet points\nhi vince ,\nthanks for the bullets . regarding power 2001 , it certainly does promise to\nbe a very interesting event .\nhave a great week ,\npaul\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 09 , 2001 9 : 11 am\nto : pbristow @ riskwaters . com\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : bullet points\npaul ,\ni am sending you modified bullet points . the modifications are in red .\napologies for a delay in responding to your messages .\nby the way , power 2001 gets only more and more interesting every day .\nvince\n( see attached file : financial maths draft . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.948+0000", "entityId": 10282, "properties": {"text": "Subject: faculty contact and schedule persentation\nplease respond to dear mr . kaminski ,\nthe following are the faculty details :\nms . deborah j . barrett\ninstructor & dir . , mba communications\nphone 713 - 348 - 5394\nbarrett @ rice . edu\nmr . wil uecker\nassociate dean for executive education\nphone 713 - 348 - 5869\nuecker @ rice . edu\nmr . dennis wayne loughridge\nadjunct professor - management\nphone 713 - 348 - 4869\nlounghrid @ rice . edu\ni will also speak with the faculty and inform them about the details\nconcerning the presentation on may 7 at enron office ( time to be determine )\nand the dinner following it .\nsincerely ,\nluigi calabrese\nrice mba candidate\nclass of 2002", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.952+0000", "entityId": 10283, "properties": {"text": "Subject: re : bullet points\nplease respond to hi vince ,\nthanks for the bullets . regarding power 2001 , it certainly does promise to\nbe a very interesting event .\nhave a great week ,\npaul\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 09 , 2001 9 : 11 am\nto : pbristow @ riskwaters . com\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : bullet points\npaul ,\ni am sending you modified bullet points . the modifications are in red .\napologies for a delay in responding to your messages .\nby the way , power 2001 gets only more and more interesting every day .\nvince\n( see attached file : financial maths draft . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.958+0000", "entityId": 10284, "properties": {"text": "Subject: institutional investor journals profile update confirmation\nthank you for updating your ii journals profile information . changes to your user id , password and e - mail address have been made . please allow 24 hours for any other changes you ' ve made to take effect in our system . here is the profile information we have for you :\naccount number : 12973228\nfirst name : vince\nlast name : kaminski\ncompany name : enron corp\nposition : managing director\ndepartment :\naddress 1 : 1400 smith st eb 1962\naddress 2 :\ncity : houston\nstate : tx\nzip code : 77002 - 7327\ncountry : usa\nphone : ( 713 ) 853 - 3848\nextension :\nfax : ( 713 ) 646 - 2503\nforeign phone :\nforeign fax :\nemail : vkamins @ enron . com\nuser id : vkaminski\npassword : italia", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.964+0000", "entityId": 10285, "properties": {"text": "Subject: visit with vince kaminski on may 4 th\ncarol :\nfor your information and susan ' s , christie patrick will not be available on\nthe\n4 th of may . she will be out of the city . maybe susan can contact her\ndirectly\nat another time .\ni still have 1 : 30 as the time for vince and susan to meet .\nthanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 09 / 2001\n03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 09 / 2001 11 : 14 am\nto : susan . hansen @ stanford . edu\ncc :\nsubject : visit with vince kaminski on may 4 th\ngood morning susan :\nvince forwarded the below message to me and after looking over his\ncalendar , he appears to be free most of the afternoon on the 4 th of may .\nplease let me know what would be a good time for you and i will block\nit out before someone else gets it .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 09 / 2001\n11 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 06 / 2001 05 : 36 pm\nto : \" susan c . hansen \" @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : visit from stanford ?\nsusan ,\nthank you for your message . i shall be glad to meet with you on may the 4 th .\ni shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to set\nup the meeting .\nalso , for your information , we have recently set up a special unit to\ncoordinate enron ' s\nrelationships with the universities . the person running this unit is christie\npatrick .\nplease , feel free to contact her and give my name as a reference . i shall\ncoordinate the meeting\non may the 4 th with her .\nvince\nadditional information re christie :\nphone : ( 713 ) 853 - 6117\nemail : christie _ patrick @ enron . com\n\" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\nto : vkamins @ enron . com\ncc :\nsubject : visit from stanford ?\ndear dr . kaminski ,\nlet me briefly introduce myself , i am the director of corporate relations\nfor the school of engineering at stanford university . in this role , i am\nalways on the watch for ways to bring our faculty together with companies\nthat have an appetite for engagement with top tier research institutions .\ni believe you know hill huntington , who is a senior researcher with\nstanford ' s energy modeling forum . he suggested i get in touch with you for\nsome ideas about contacts at enron . i ' m in the process of planning a trip\nto texas in early may along with my colleague donna lawrence , the\nuniversity ' s director of corporate relations . we were hoping to be able to\ninclude a stop at enron on our itinerary . right now it appears that friday ,\nmay 4 th would work best for us but we ' re at the very beginning of our trip\nplanning .\nthe purpose of our visit would be to review the current relationship\nbetween enron and stanford , to give you an overview of current priorities\nin the school of engineering , and ask for your help in identifying the best\npoints of contact .\ni look forward to hearing from you about your availability ,\nsincerely ,\nsusan hansen\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.969+0000", "entityId": 10286, "properties": {"text": "Subject: visiting enron may 4 th\nvince ( and shirley and melinda ) ,\nthanks so much for including me in this meeting with stanford\nengineering - - - unfortunately , i ' m committed to participate in the enron law\nconference in san antonio that entire day .\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 09 / 2001\n03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 09 / 2001 01 : 21 pm\nto : christie patrick / hou / ect @ ect\ncc : melinda mccarty / corp / enron @ enron\nsubject : visiting enron may 4 th\nchristie / melinda :\ncan christie meet with susan and vince on friday , may 4 th from 1 : 30 - 3 : 00 ?\nplease let me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 09 / 2001\n01 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 09 / 2001 01 : 18 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : visiting enron may 4 th\nshirley ,\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 09 / 2001\n01 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" susan c . hansen \" on 04 / 06 / 2001 06 : 14 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc : clovell @ stanford . edu , donna lawrence ,\nhillh @ stanford . edu , bambos @ stanford . edu\nsubject : visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.973+0000", "entityId": 10287, "properties": {"text": "Subject: visiting enron may 4 th\nchristie ,\nfyi . a message i received from stanford .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 09 / 2001\n11 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" susan c . hansen \" on 04 / 06 / 2001 06 : 14 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc : clovell @ stanford . edu , donna lawrence ,\nhillh @ stanford . edu , bambos @ stanford . edu\nsubject : visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.979+0000", "entityId": 10288, "properties": {"text": "Subject: re : visiting enron may 4 th\nsusan ,\nthanks . it makes sense to call christie and\nexplain the objectives of your visit in may .\nvince\n\" susan c . hansen \" on 04 / 06 / 2001 06 : 14 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc : clovell @ stanford . edu , donna lawrence ,\nhillh @ stanford . edu , bambos @ stanford . edu\nsubject : visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.987+0000", "entityId": 10289, "properties": {"text": "Subject: visit with vince kaminski on may 4 th\ncarol :\nfor your information and susan ' s , christie patrick will not be available on the\n4 th of may . she will be out of the city . maybe susan can contact her directly\nat another time .\ni still have 1 : 30 as the time for vince and susan to meet .\nthanks !\nshirley crenshaw\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 09 / 2001 03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 09 / 2001 11 : 14 am\nto : susan . hansen @ stanford . edu\ncc :\nsubject : visit with vince kaminski on may 4 th\ngood morning susan :\nvince forwarded the below message to me and after looking over his\ncalendar , he appears to be free most of the afternoon on the 4 th of may .\nplease let me know what would be a good time for you and i will block\nit out before someone else gets it .\nthanks !\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 09 / 2001 11 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 06 / 2001 05 : 36 pm\nto : \" susan c . hansen \" @ enron\ncc : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect\nsubject : re : visit from stanford ?\nsusan ,\nthank you for your message . i shall be glad to meet with you on may the 4 th .\ni shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to set up the meeting .\nalso , for your information , we have recently set up a special unit to coordinate enron ' s\nrelationships with the universities . the person running this unit is christie patrick .\nplease , feel free to contact her and give my name as a reference . i shall coordinate the meeting\non may the 4 th with her .\nvince\nadditional information re christie :\nphone : ( 713 ) 853 - 6117\nemail : christie _ patrick @ enron . com\n\" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\nto : vkamins @ enron . com\ncc :\nsubject : visit from stanford ?\ndear dr . kaminski ,\nlet me briefly introduce myself , i am the director of corporate relations\nfor the school of engineering at stanford university . in this role , i am\nalways on the watch for ways to bring our faculty together with companies\nthat have an appetite for engagement with top tier research institutions .\ni believe you know hill huntington , who is a senior researcher with\nstanford ' s energy modeling forum . he suggested i get in touch with you for\nsome ideas about contacts at enron . i ' m in the process of planning a trip\nto texas in early may along with my colleague donna lawrence , the\nuniversity ' s director of corporate relations . we were hoping to be able to\ninclude a stop at enron on our itinerary . right now it appears that friday ,\nmay 4 th would work best for us but we ' re at the very beginning of our trip\nplanning .\nthe purpose of our visit would be to review the current relationship\nbetween enron and stanford , to give you an overview of current priorities\nin the school of engineering , and ask for your help in identifying the best\npoints of contact .\ni look forward to hearing from you about your availability ,\nsincerely ,\nsusan hansen\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.994+0000", "entityId": 10290, "properties": {"text": "Subject: visiting enron may 4 th\nvince ( and shirley and melinda ) ,\nthanks so much for including me in this meeting with stanford engineering - - - unfortunately , i ' m committed to participate in the enron law conference in san antonio that entire day .\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 09 / 2001 03 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 09 / 2001 01 : 21 pm\nto : christie patrick / hou / ect @ ect\ncc : melinda mccarty / corp / enron @ enron\nsubject : visiting enron may 4 th\nchristie / melinda :\ncan christie meet with susan and vince on friday , may 4 th from 1 : 30 - 3 : 00 ?\nplease let me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 09 / 2001 01 : 15 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 09 / 2001 01 : 18 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : visiting enron may 4 th\nshirley ,\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 09 / 2001 01 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" susan c . hansen \" on 04 / 06 / 2001 06 : 14 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc : clovell @ stanford . edu , donna lawrence , hillh @ stanford . edu , bambos @ stanford . edu\nsubject : visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:54.999+0000", "entityId": 10291, "properties": {"text": "Subject: visiting enron may 4 th\nchristie ,\nfyi . a message i received from stanford .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 09 / 2001 11 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" susan c . hansen \" on 04 / 06 / 2001 06 : 14 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc : clovell @ stanford . edu , donna lawrence , hillh @ stanford . edu , bambos @ stanford . edu\nsubject : visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.004+0000", "entityId": 10292, "properties": {"text": "Subject: re : visiting enron may 4 th\nsusan ,\nthanks . it makes sense to call christie and\nexplain the objectives of your visit in may .\nvince\n\" susan c . hansen \" on 04 / 06 / 2001 06 : 14 : 10 pm\nto : vince . j . kaminski @ enron . com\ncc : clovell @ stanford . edu , donna lawrence , hillh @ stanford . edu , bambos @ stanford . edu\nsubject : visiting enron may 4 th\ndear vince ,\nthis is great news ! donna and i are delighted that you have time to see us\non may 4 th .\ni ' ll be out of the office next week . by copy of this email to my\nassistant , carol lovell , i will ask her to get in touch with shirley for\nscheduling as well as directions on where to meet you . we ' ll be glad to\nmeet with christie patrick as well .\nlooking forward to meeting you ,\nsusan\nat 05 : 36 pm 4 / 6 / 01 - 0500 , you wrote :\n> susan ,\n>\n> thank you for your message . i shall be glad to meet with you on may the\n> 4 th .\n> i shall ask my assistant , shirley crenshaw ( 713 ) 853 5290 , to call you to\n> set up the meeting .\n>\n> also , for your information , we have recently set up a special unit to\n> coordinate enron ' s\n> relationships with the universities . the person running this unit is\n> christie patrick .\n> please , feel free to contact her and give my name as a reference . i shall\n> coordinate the meeting\n> on may the 4 th with her .\n>\n> vince\n>\n>\n> additional information re christie :\n>\n> phone : ( 713 ) 853 - 6117\n>\n> email : christie _ patrick @ enron . com\n>\n>\n>\n>\n>\n> \" susan c . hansen \" on 04 / 03 / 2001 04 : 33 : 54 pm\n>\n> to : vkamins @ enron . com\n> cc :\n> subject : visit from stanford ?\n>\n>\n> dear dr . kaminski ,\n>\n> let me briefly introduce myself , i am the director of corporate relations\n> for the school of engineering at stanford university . in this role , i am\n> always on the watch for ways to bring our faculty together with companies\n> that have an appetite for engagement with top tier research institutions .\n>\n> i believe you know hill huntington , who is a senior researcher with\n> stanford ' s energy modeling forum . he suggested i get in touch with you for\n> some ideas about contacts at enron . i ' m in the process of planning a trip\n> to texas in early may along with my colleague donna lawrence , the\n> university ' s director of corporate relations . we were hoping to be able to\n> include a stop at enron on our itinerary . right now it appears that friday ,\n> may 4 th would work best for us but we ' re at the very beginning of our trip\n> planning .\n>\n> the purpose of our visit would be to review the current relationship\n> between enron and stanford , to give you an overview of current priorities\n> in the school of engineering , and ask for your help in identifying the best\n> points of contact .\n>\n> i look forward to hearing from you about your availability ,\n>\n> sincerely ,\n> susan hansen\n>\n>\n>\n>\n> susan c . hansen\n> director , corporate relations\n> school of engineering\n> stanford university\n> stanford , ca 94305 - 4027\n> ( 650 ) 725 - 4219\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.010+0000", "entityId": 10293, "properties": {"text": "Subject: re : invitation - whartonetevent - apr 20 / plsrsvp\nhi michael !\nsorry i will be unable to attend ! i believe both vince and i are previously\ncommitted .\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.015+0000", "entityId": 10294, "properties": {"text": "Subject: program posted\nhello all ,\nthe program for next week ' s conference is posted at the following address :\nwe have lots of fun stuff planned to go with the serious so come prepared\nfor a great weekend .\njohn\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.020+0000", "entityId": 10295, "properties": {"text": "Subject: thanks\nhi keith !\nthanks so much for your additional thoughts , which i will definitely pass on\nto our business units .\nas for your nephew , please have him send his resume to me . i ' ll be happy to\nsee what i can do .\nagain , on behalf of enron and everyone involved in the project , especially\nvince and i and ken parkhill , we had a great and informative experience with\nthe entire tiger project .\nbest regards !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 09 / 2001\n07 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nweigelt on 04 / 06 / 2001 04 : 40 : 10 pm\nto : \" ' christie . patrick @ enron . com ' \"\ncc :\nsubject : thanks\nchristie ;\ni wanted to send a short note to express my thanks to enron , and give some\nadditional thoughts about the enron presentation . both students and staff\nenjoyed our interaction with enron . we hope enron got as much from the\nproject as we did .\ni also had some additional thoughts about enrononline .\n- during the presentation , the students referred to a market ' s \" critical\nmass \" . however , we never defined what we meant by that . we had several\ndiscussions on this topic . i think the best way for enron to think about\nthis is in terms of the psychology of traders . critical mass gives a market\nliquidity . traders seem to think about liquidity in terms of breadth ( how\nmany products are being traded ) and depth ( the number of bids and offers ) .\nour thoughts were that when a trader pulls up a screen , he ( or she ) wants to\nsee bids , offers , and trades occurring . so a simple ( and cheap ) metric that\nenron could use to determine whether rivals are approaching critical mass is\nsimply to pull up screens and see if trades are occurring , and how quickly .\ntraders will generally not use a trading platform that lacks \" action \" .\n- in terms of new power , i feel it is extremely important that your managers\ncreate an identity for the company . luckily no rival has done this ( though\ngreen energy is closer than most ) . the company that can communicate a\nsimple and powerful message will create a competitive advantage for itself .\ni believe you can differentiate yourself in this market ( though you are\nselling a commodity ) . since you are essentially selling service ,\ndifferentiation is always possible .\non a final note , i wanted to ask a favor . my nephew recently graduate from\nmichigan state university with a degree in business . i brought him to\nwharton to work on the tiger projects . this was because i knew he could add\nvalue , and because i thought he needed more experience in some strategy\nareas . he served as project coordinator and worked on several projects\n( including enron ) . i was hoping i could get him an interview at enron since\nhe expressed interest in your company . any help you could offer is\nappreciated .\nthanks again for making the experience memorable to the students .\nkeith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.024+0000", "entityId": 10296, "properties": {"text": "Subject: re : var and credit meeting on wednesday , april 11 at 11 : 30 am\neverybody ,\nthis week our regular meeting will be devoted primarily to 2 subjects :\n1 . simulating power prices in var ;\n2 . capturing correlations across commodities as well as across term structure of\nforward prices .\nresearch will present some suggestions based on data analysis .\ndetailed agenda is enclosed .\nplease , let shirley crenshaw know if you are not planning to attend .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.030+0000", "entityId": 10297, "properties": {"text": "Subject: re : var and credit meeting on wednesday , april 11 at 11 : 30 am\neverybody ,\nthis week our regular meeting will be devoted primarily to 2 subjects :\n1 . simulating power prices in var ;\n2 . capturing correlations across commodities as well as across term structure\nof\nforward prices .\nresearch will present some suggestions based on data analysis .\ndetailed agenda is enclosed .\nplease , let shirley crenshaw know if you are not planning to attend .\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.035+0000", "entityId": 10298, "properties": {"text": "Subject: re : publication submission question\nmartin ,\ni don ' t see any problem . the article supportsenron ' s position .\nplease , go ahead .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 09 / 2001 02 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 05 / 2001 01 : 01 pm\nto : martin lin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : publication submission question\nmartin ,\nlet me read it friday . we run our papers by our pr\ndepartment to review for any potential conflict with the company line .\ni shall fwd it to them .\ni think you should submit it as an enron employee with a note\nthat it was developed when you were at ut .\nvince\nfrom : martin lin on 04 / 02 / 2001 11 : 59 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : publication submission question\nmy supervising professors from ut and i are finishing a paper ( finally ! ) that is based on work done for my phd . all of the research was done while i was a grad student . i have a couple of questions regarding submission of this paper ( to ieee transactions on power systems ) .\n1 . should i submit it with my affiliation as the university of texas at austin or as enron ( ena , corp , etc ) ?\n2 . what legal or other reviews / clearances would i need ?\na draft of the paper for your review is attached .\nthanks ,\nmartin\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.040+0000", "entityId": 10299, "properties": {"text": "Subject: day off tuesday\nstinson ,\ni would like to take a day off tomorrow ( tuesday , april 10 ) .\ni need to register my son to elementary school and send my cars to service .\nmy cell number is 713 - 858 - 2577 in case you need to reach me .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.044+0000", "entityId": 10300, "properties": {"text": "Subject: model effort in houston\nchristian ,\nour spring / fall window of \" ? nactivity \" is rapidly eluding us . . .\nwe need to get our internal model operational without delay .\nalong these lines , let ' s go ahead and plan your visit to houston as soon as possible ,\nbut by all means get you in at least 4 weeks before hurricane season .\nthat would mean the month of may looks good .\nplease inform me what duties you could not perform from here to support the sydney office ,\nwe ' ll figure out how to keep that office whole .\n( it ' s working without a hitch to have steve bennett in london , but continuing his houston duties )\nif the first week in may ( for the whole month ) will work , please respond asap and we ' ll get housing arrangements finalized .\nlooking forward to your visit ,\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.049+0000", "entityId": 10301, "properties": {"text": "Subject: working at home this afternoon\ni will be working from my home this afternoon after 1 : 30 pm . my extension will be forwarded to my home . if i happen to be away from the phone taking care of my mother , leave a message and i will return your call immediately . there is a generic message on my home phone , \" please leave message after tone \" , so don ' t worry that you have the wrong number . you may reach me by email at adupont @ pdq . net . in the next several days , i will be set up to dial in and you will be able to use my regualr enron email address . i will be at my desk most days , but until we have mother settled in the rehab facility there may be some days or afternoons that i will be working at home . please do not hesitate to contact me if you need meetings set up or any other thing that you would normally request of me . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.054+0000", "entityId": 10302, "properties": {"text": "Subject: re : publication submission question\nmartin ,\ni don ' t see any problem . the article supportsenron ' s position .\nplease , go ahead .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 09 / 2001\n02 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 05 / 2001 01 : 01 pm\nto : martin lin / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : publication submission question\nmartin ,\nlet me read it friday . we run our papers by our pr\ndepartment to review for any potential conflict with the company line .\ni shall fwd it to them .\ni think you should submit it as an enron employee with a note\nthat it was developed when you were at ut .\nvince\nfrom : martin lin on 04 / 02 / 2001 11 : 59 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : publication submission question\nmy supervising professors from ut and i are finishing a paper ( finally ! ) that\nis based on work done for my phd . all of the research was done while i was a\ngrad student . i have a couple of questions regarding submission of this\npaper ( to ieee transactions on power systems ) .\n1 . should i submit it with my affiliation as the university of texas at\naustin or as enron ( ena , corp , etc ) ?\n2 . what legal or other reviews / clearances would i need ?\na draft of the paper for your review is attached .\nthanks ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.059+0000", "entityId": 10303, "properties": {"text": "Subject: day off tuesday\nstinson ,\ni would like to take a day off tomorrow ( tuesday , april 10 ) .\ni need to register my son to elementary school and send my cars to service .\nmy cell number is 713 - 858 - 2577 in case you need to reach me .\nzimin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.065+0000", "entityId": 10304, "properties": {"text": "Subject: model effort in houston\nchristian ,\nour spring / fall window of \" < nactivity \" is rapidly eluding us . . .\nwe need to get our internal model operational without delay .\nalong these lines , let ' s go ahead and plan your visit to houston as soon as\npossible ,\nbut by all means get you in at least 4 weeks before hurricane season .\nthat would mean the month of may looks good .\nplease inform me what duties you could not perform from here to support the\nsydney office ,\nwe ' ll figure out how to keep that office whole .\n( it ' s working without a hitch to have steve bennett in london , but continuing\nhis houston duties )\nif the first week in may ( for the whole month ) will work , please respond asap\nand we ' ll get housing arrangements finalized .\nlooking forward to your visit ,\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.071+0000", "entityId": 10305, "properties": {"text": "Subject: working at home this afternoon\ni will be working from my home this afternoon after 1 : 30 pm . my extension\nwill be forwarded to my home . if i happen to be away from the phone taking\ncare of my mother , leave a message and i will return your call immediately .\nthere is a generic message on my home phone , \" please leave message after\ntone \" , so don ' t worry that you have the wrong number . you may reach me by\nemail at adupont @ pdq . net . in the next several days , i will be set up to dial\nin and you will be able to use my regualr enron email address . i will be at\nmy desk most days , but until we have mother settled in the rehab facility\nthere may be some days or afternoons that i will be working at home . please\ndo not hesitate to contact me if you need meetings set up or any other thing\nthat you would normally request of me . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.076+0000", "entityId": 10306, "properties": {"text": "Subject: your lap top\nvince :\nthe it migration team called and said that they need an email from you\nstating that you do not want your lap top \" ghost upped \" ? ( not sure if this\nis the correct term ) . they said they were supposed to do this to all\ncomputers during the migration process , but since you requested that\nthey not do this , then they need an email from you with this request .\nyou need to send the email to : kacee downey / enron @ enronxgate\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.084+0000", "entityId": 10307, "properties": {"text": "Subject: re : various market data charges to the research group for february\n2001\njulie :\ni talked to both maureen and tanya and neither one want this service and\nhave not been using it .\nmaureen told me that she told you a year ago that she did not want telerate\n( when she was supporting gary hickerson ' s group on 30 ) . if that is the case ,\nwe probably need a refund .\nlet me know if there is anything that can be done about this .\nthe only person in our group that wants telerate is jason sokolov and i\nput in a request for that yesterday . please cancel everything else .\nthanks !\nshirley\nfrom : julie pechersky / enron @ enronxgate on 04 / 09 / 2001 12 : 33 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : various market data charges to the research group for february 2001\nhi shirley ,\nregarding telerate : i can cancel the service for both maurenn and tanya , but another name commonly used for the telerate application is bridge or bridgestation so you may want to just ask the two of them once more to be sure that they do not use it . just let me know and i will cancel billing\njason can get access to it by submitting an e - request for him for telerate . when you go into e - request and it is prompting you for what application to choose , type in the words market data and hit search . telerate will pop up as an option and within that choose the role basic energy . we will take care of it from there .\ni will also remove hector campos from reuters . was there anyone else being charged for reuters services that are not needed ?\ni will also remove clayton vernon . i do not see anything under the name brad amoine , is this the correct spelling of his name ? i will also find\nout where shalesh ' s charges should be moved to .\nthanks for updating us and let me know if there is anything else .\njulie\n- - - - - original message - - - - -\nfrom : jackson , clifford\nsent : wednesday , april 04 , 2001 1 : 44 pm\nto : crenshaw , shirley\ncc : pechersky , julie\nsubject : re : various market data charges to the research group for february 2001\nhi shirley . i ' ve copied this to julie pechersky , who maintains the market data database , and will be able to make the user changes you request . she ' ll also be able to tell you how / when telerate can be enabled for mr . sokolov .\nwe get the billing data from her , so once it is correct there , it will be billed correctly .\ncliff jackson\n- - - - - original message - - - - -\nfrom : crenshaw , shirley\nsent : wednesday , april 04 , 2001 1 : 31 pm\nto : jackson , clifford\ncc : kaminski , vince\nsubject : various market data charges to the research group for february 2001\nclifford :\nin reviewing our february eis billing summary for co # 0413 , cc # 107043 ,\ni have several questions .\ntelerate : ( february charges : $ 3 , 032 , 35 )\ni polled the group and only one person has asked for telerate and he is\nnot shown being charged for it . that is jason sokolov . he would like to\nhave access to telerate . if you could let me know how to get that for him .\nthe largest percent of the telerate charges appear to be for maureen\nraymond , who says that she does not use telerate . could she be accessing\nsome data that she does not know is telerate ? please let me know . if there\nare individual accounts for telerate the only one we need is for jason sokolov ,\nunless maureen ' s charges are for something that she does not know is telerate .\ntanya tamarchenko does not need telerate and she has the second largest\npercentage of the charges . anyway , the only telerate subscription we need is\nfor jason sokolov .\nreuters : ( february charges : $ 405 . 96 )\nno one in research uses reuters . i believe most of the charges are for hector\ncampos who used it when he was on the trading desk . when he rotated into the\nresearch group he did not need it any longer , but is still being billed for it . please\nremove from the research cost center .\nthe following individuals are no longer with enron or no longer with research\nand their accounts should be removed from the research cost center .\nclayton vernon no longer with the research group remove his lim / lim / excel and lim core charges from the research cost center\nbrad amoine no longer with enron remove his lim / lim / excel and lim core charges from the research cost center\nshalesh ganjoo no longer with the research group remove his lim and lim core charges from the research cost center\ni hope this is not too confusing !\nplease advise .\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.090+0000", "entityId": 10308, "properties": {"text": "Subject: re : various market data charges to the research group for february\n2001\njulie :\ni talked to both maureen and tanya and neither one want this service and\nhave not been using it .\nmaureen told me that she told you a year ago that she did not want telerate\n( when she was supporting gary hickerson ' s group on 30 ) . if that is the case ,\nwe probably need a refund .\nlet me know if there is anything that can be done about this .\nthe only person in our group that wants telerate is jason sokolov and i\nput in a request for that yesterday . please cancel everything else .\nthanks !\nshirley\nfrom : julie pechersky / enron @ enronxgate on 04 / 09 / 2001 12 : 33 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : various market data charges to the research group for february\n2001\nhi shirley ,\nregarding telerate : i can cancel the service for both maurenn and tanya ,\nbut another name commonly used for the telerate application is bridge or\nbridgestation so you may want to just ask the two of them once more to be\nsure that they do not use it . just let me know and i will cancel billing\njason can get access to it by submitting an e - request for him for telerate .\nwhen you go into e - request and it is prompting you for what application to\nchoose , type in the words market data and hit search . telerate will pop up\nas an option and within that choose the role basic energy . we will take care\nof it from there .\ni will also remove hector campos from reuters . was there anyone else being\ncharged for reuters services that are not needed ?\ni will also remove clayton vernon . i do not see anything under the name brad\namoine , is this the correct spelling of his name ? i will also find\nout where shalesh ' s charges should be moved to .\nthanks for updating us and let me know if there is anything else .\njulie\n- - - - - original message - - - - -\nfrom : jackson , clifford\nsent : wednesday , april 04 , 2001 1 : 44 pm\nto : crenshaw , shirley\ncc : pechersky , julie\nsubject : re : various market data charges to the research group for february\n2001\nhi shirley . i ' ve copied this to julie pechersky , who maintains the market\ndata database , and will be able to make the user changes you request . she ' ll\nalso be able to tell you how / when telerate can be enabled for mr . sokolov .\nwe get the billing data from her , so once it is correct there , it will be\nbilled correctly .\ncliff jackson\n- - - - - original message - - - - -\nfrom : crenshaw , shirley\nsent : wednesday , april 04 , 2001 1 : 31 pm\nto : jackson , clifford\ncc : kaminski , vince\nsubject : various market data charges to the research group for february 2001\nclifford :\nin reviewing our february eis billing summary for co # 0413 , cc # 107043 ,\ni have several questions .\ntelerate : ( february charges : $ 3 , 032 , 35 )\ni polled the group and only one person has asked for telerate and he is\nnot shown being charged for it . that is jason sokolov . he would like to\nhave access to telerate . if you could let me know how to get that for him .\nthe largest percent of the telerate charges appear to be for maureen\nraymond , who says that she does not use telerate . could she be accessing\nsome data that she does not know is telerate ? please let me know . if there\nare individual accounts for telerate the only one we need is for jason\nsokolov ,\nunless maureen ' s charges are for something that she does not know is telerate .\ntanya tamarchenko does not need telerate and she has the second largest\npercentage of the charges . anyway , the only telerate subscription we need is\nfor jason sokolov .\nreuters : ( february charges : $ 405 . 96 )\nno one in research uses reuters . i believe most of the charges are for\nhector\ncampos who used it when he was on the trading desk . when he rotated into the\nresearch group he did not need it any longer , but is still being billed for\nit . please\nremove from the research cost center .\nthe following individuals are no longer with enron or no longer with research\nand their accounts should be removed from the research cost center .\nclayton vernon no longer with the research group remove his lim / lim / excel\nand lim core charges from the research cost center\nbrad amoine no longer with enron remove his lim / lim / excel and lim core\ncharges from the research cost center\nshalesh ganjoo no longer with the research group remove his lim and lim core\ncharges from the research cost center\ni hope this is not too confusing !\nplease advise .\nthanks !\nshirley crenshaw", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.096+0000", "entityId": 10309, "properties": {"text": "Subject: outage pricing model revision : allowing for power price vs . outage\ncorrelation\ni have included provision for providing rank correlation between \" jump occurrence in daily average power price \" and \" outage occurrence \" . the model will provide the same claim distribution as before when pricevsoutage correlation = 0 is used . claim goes up as the correlation is increased . i have performed some sensitivity analysis and the results seem to make sense .\nthe new model workbook is \" 40901 . xls \" and corresponding dll is \" outagepricingo 40901 . dll \" , both located in o : \\ grm \\ research \\ outagerisk \\ subdirectory . the price vs . outage rank correlation input will need to be provided in \" main \" spreadsheet . please call me if you have any questions .\n- amitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.101+0000", "entityId": 10310, "properties": {"text": "Subject: outage pricing model revision : allowing for power price vs . outage\ncorrelation\ni have included provision for providing rank correlation between \" jump\noccurrence in daily average power price \" and \" outage occurrence \" . the model\nwill provide the same claim distribution as before when pricevsoutage\ncorrelation = 0 is used . claim goes up as the correlation is increased . i\nhave performed some sensitivity analysis and the results seem to make sense .\nthe new model workbook is \" 40901 . xls \" and corresponding\ndll is \" outagepricingo 40901 . dll \" , both located in\no : \\ grm \\ research \\ outagerisk \\ subdirectory . the price vs . outage rank\ncorrelation input will need to be provided in \" main \" spreadsheet . please\ncall me if you have any questions .\n- amitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.105+0000", "entityId": 10311, "properties": {"text": "Subject: re : invitation - whartonetevent - apr 20 / plsrsvp\nvince and chistie ,\nsorry you won ' t be attending our april 20 et event , but of course we realize that many of our partners can ' t attend every event .\nwith this in mind , we put conference reports online in a \" quick read \" format for busy executives . our site is located at : http : / / emertech . wharton . upenn . edu - we ' ll be adding new reports in the coming 2 weeks .\ni would also ask , is there anyone else at enron involved in mergers and acquisitions who would benefit from the april 20 event ? this will be one of our most \" content - rich \" events - reporting on surveys on high tech acquisitions as well as best practices in successful mergers and partnerships . please feel free to pass on the invitation to colleagues at enron who you feel might find this worthwhile , or you can give me email addresses if you ' d like me to extend the invitation with the most recent agenda .\nwe very much appreciate enron ' s support of the et program and look forward to your participation in the future .\nbest regards ,\nmichael\nhi michael !\nsorry i will be unable to attend ! i believe both vince and i are\npreviously committed .\nthanks !\n- - christie .\n- -\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129\nwebsite : http : / / emertech . wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.110+0000", "entityId": 10312, "properties": {"text": "Subject: met office presentation . . .\nvince -\njust fyi to keep you informed on our ews european effort . . .\nsteve is doing a good job taking the bull by the horns ,\ni asked him to rapidly build a client base and associated support system\nlooking good !\n- mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 10 / 2001\n08 : 31 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : stephen bennett @ enron 04 / 10 / 2001 08 : 10 am\nto : annette harris / lon / ect @ ect\ncc : tony hamilton / eu / enron @ enron , mike a roberts / hou / ect @ ect , jose\nmarquez / corp / enron @ enron\nsubject : met office presentation . . .\nannette . . .\nwe just wanted to drop you a quick line to thank you for the invitation to\nthe uk met presentation today ! tony and i are currently trying to get a\ngrasp of what the traders here require in the way of weather information and\nare building a support structure for them . as such - we will need to have\nclose ties with the uk met office as well as other data providers . the\ninformation presented today was very helpful .\nwe ' d like to take a little time to sit down with you - and / or some of the\nother participants whose markets are weather driven . we ' d like to get a feel\nfor what data is already streaming in - and then get an idea as to how we can\nutilize and supplement that data for the europe markets . we have a model\ncreated in houston to start from - but we want to make sure to tailor to the\nneeds of the traders here .\nwould you like to take some time to sit down and chat ? perhaps tony and i\ncan take you and some others out to lunch - or for an afternoon coffee ?\nthanks for your help . . .\nstephen bennett\nsenior meteorologist\nenron research\nin london : april 7 - 27 : ext - 34761\ntony hamilton\nmeteorology manager\nenron research\next . 3 - 2523", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.115+0000", "entityId": 10313, "properties": {"text": "Subject: re : interviews\nvince ,\nno problem , i know hr can slow the process down .\nmarshall brown\nvice president\nrobert walters associates\nphone # : 212 - 704 - 0596\nfax # : 212 - 704 - 4312\nmarshall . brown @ robertwalters . com\nwww . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : friday , april 06 , 2001 5 : 50 pm\n> to : marshall . brown @ robertwalters . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : interviews\n>\n>\n> marshall ,\n>\n> sorry for a delay in responding to you .\n> my hr people were asked to get in touch with you re\n> the candidates .\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 03 / 27 / 2001 02 : 36 : 12\n> pm\n>\n> to : \" ' vince kaminski ' \"\n> cc :\n> subject : interviews\n>\n>\n> vince ,\n> i had two candidates speak with zamin lu on 3 / 14 / 01 and 3 / 16 / 01 .\n> ( renshi zhang and bill koures respectively ) . i know you were in london\n> last\n> week . if you could please give me some feedback ( either positive or\n> negative ) as soon as possible , i would appreciate it .\n> regards ,\n>\n> marshall brown\n> vice president\n> robert walters associates\n> phone : 212 - 704 - 0596\n> fax : 212 - 704 - 4312\n> marshall . brown @ robertwalters . com\n>\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.120+0000", "entityId": 10314, "properties": {"text": "Subject: re : interviews\nvince ,\nno problem , i know hr can slow the process down .\nmarshall brown\nvice president\nrobert walters associates\nphone # : 212 - 704 - 0596\nfax # : 212 - 704 - 4312\nmarshall . brown @ robertwalters . com\nwww . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : friday , april 06 , 2001 5 : 50 pm\n> to : marshall . brown @ robertwalters . com\n> cc : vince . j . kaminski @ enron . com\n> subject : re : interviews\n>\n>\n> marshall ,\n>\n> sorry for a delay in responding to you .\n> my hr people were asked to get in touch with you re\n> the candidates .\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 03 / 27 / 2001 02 : 36 : 12\n> pm\n>\n> to : \" ' vince kaminski ' \"\n> cc :\n> subject : interviews\n>\n>\n> vince ,\n> i had two candidates speak with zamin lu on 3 / 14 / 01 and 3 / 16 / 01 .\n> ( renshi zhang and bill koures respectively ) . i know you were in london\n> last\n> week . if you could please give me some feedback ( either positive or\n> negative ) as soon as possible , i would appreciate it .\n> regards ,\n>\n> marshall brown\n> vice president\n> robert walters associates\n> phone : 212 - 704 - 0596\n> fax : 212 - 704 - 4312\n> marshall . brown @ robertwalters . com\n>\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.125+0000", "entityId": 10315, "properties": {"text": "Subject: alp presentation\nthis will be in eb 49 cl\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 10 / 2001\n08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu , lounghrid @ rice . edu ,\nluigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.129+0000", "entityId": 10316, "properties": {"text": "Subject: rice cfos conference\nchristie ,\nthis is one of the communications regarding rice cfos conference .\nandy requires some gentle persuasion .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001\n08 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndavid ikenberry on 04 / 09 / 2001 01 : 27 : 24 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject :\nhi vince ,\ni may have missed something , however don ' t believe i have received any\ncommunication recently from andy festow about this upcoming may 4 - 5 corp .\nfin . conference . i hope he is still planning to come , yet i don ' t know as\nof now .\ni have andy penciled in as a participant on a \" panel \" that is discussing\nequity dilution from stock option compensation ( the role of panelist should\nrequire little , if any , preparation time ) . of course , i want andy to\ncome , however he is concerned about his ability to attend , i probably\nshould identify another person or two to serve on the panel .\ndave .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.133+0000", "entityId": 10317, "properties": {"text": "Subject: alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.138+0000", "entityId": 10318, "properties": {"text": "Subject: re : alp presentation\nfor your information , the alp project presenation that vince kaminski\ninvited you to will be held in the enron bldg . in conference room eb 49 cl .\nif you need any other information , please let me know .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.142+0000", "entityId": 10319, "properties": {"text": "Subject: re : alp presentation\nvince ,\nthank you for the invitation . i will attend the presentation , but have\nanother commitment for dinner .\nplease indicate the specific room for the presentation when it is known .\nthanks ,\nwil\nat 08 : 13 am 4 / 10 / 01 - 0500 , you wrote :\n> on behalf of enron corp . i would like to invite you to an alp project\n> presentation by a group of students\n> of jesse h . jones graduate school of management , rice university .\n>\n> the students will present the results of a research project regarding\n> electronic trading\n> platforms in the energy industry .\n>\n> the presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\n>\n> we would also like to invite you to dinner , following the presentation .\n>\n>\n> vince kaminski\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> ( 713 ) 410 5396 ( cell )\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.147+0000", "entityId": 10320, "properties": {"text": "Subject: alp presentation\nthis will be in eb 49 cl\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 10 / 2001 08 : 22 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu , lounghrid @ rice . edu , luigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project presentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding electronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.152+0000", "entityId": 10321, "properties": {"text": "Subject: rice cfos conference\nchristie ,\nthis is one of the communications regarding rice cfos conference .\nandy requires some gentle persuasion .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001 08 : 20 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ndavid ikenberry on 04 / 09 / 2001 01 : 27 : 24 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject :\nhi vince ,\ni may have missed something , however don ' t believe i have received any\ncommunication recently from andy festow about this upcoming may 4 - 5 corp .\nfin . conference . i hope he is still planning to come , yet i don ' t know as\nof now .\ni have andy penciled in as a participant on a \" panel \" that is discussing\nequity dilution from stock option compensation ( the role of panelist should\nrequire little , if any , preparation time ) . of course , i want andy to\ncome , however he is concerned about his ability to attend , i probably\nshould identify another person or two to serve on the panel .\ndave .\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.157+0000", "entityId": 10322, "properties": {"text": "Subject: alp presentation\non behalf of enron corp . i would like to invite you to an alp project presentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding electronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.161+0000", "entityId": 10323, "properties": {"text": "Subject: re : status of enron project\nhoward ,\nsorry for the delay .\ni shall be able to get back to you next week . a very interesting new research\nidea came up\nand we have to close a few loops internally .\nvince\n\" kunreuther , howard \" on 04 / 05 / 2001 08 : 42 : 44 pm\nto : \" kaminski ( e - mail ) \"\ncc : \" kleindorfer , paul \"\nsubject : status of enron project\nhi vince :\njust a short note to indicate that we have not heard received any information\nfrom your group since our discussion at wharton in february . we look forward\nto get some information on what issues you would like us to spend some time\nthinking about .\nhope all is well .\nregards ,\nhoward\nhoward kunreuther\ncecilia yen koo professor of decisions sciences and public policy\nchairperson operations and information management department\n1326 steinberg hall - dietrich hall\nwharton school\nuniversity of pennsylvania\nphiladelphia , pa 19104 - 6366\nphone : 215 - 898 - 4589\nfax : 215 - 573 - 2130\nemail : kunreuth @ wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.165+0000", "entityId": 10324, "properties": {"text": "Subject: re : enron project\nkeith ,\nit was a great pleasure to work you with on this project .\nthe entire enron team was impressed by the quality of the students\nand commitment of the school to exploring new and creative\nways of exposing students to business problems .\nvince\nweigelt on 04 / 10 / 2001 12 : 05 : 25 pm\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : enron project\nvince ;\ni just wanted to tell you how much i enjoyed working with enron on the tiger\nproject . i found the interaction with you and your colleagues very\nstimulating . the ideas we covered ( like whether there are network\nexternalities in these markets ) was more like a workshop than a project . i\nwish all businessmen had your interests and capabilities .\nthanks\nkeith", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.170+0000", "entityId": 10325, "properties": {"text": "Subject: london fyi research weather link\nvince -\nfyi\nresearch ' s customer base growing by the hour !\n- mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 10 / 2001\n10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : stephen bennett @ enron 04 / 10 / 2001 09 : 02 am\nto : annette harris / lon / ect @ ect\ncc : tony hamilton / eu / enron @ enron , mike a roberts / hou / ect @ ect , jose\nmarquez / corp / enron @ enron\nsubject : research weather link\nhttp : / / enaresearch . corp . enron . com /\nfrom here - there is a drop down menu at the top left . the \" weather \" tab -\n\" main weather page \" is the full support site for the houston gas traders .\nlook under the \" european weather \" tab \" main europe weather \" page for what\nwe ' ve started doing here . let us know how we can build this to better meet\nyour needs . . .\nsteve\nstephen bennett\nsenior meteorologist\nenron research\nlondon through april 27 : ext - 34761", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.175+0000", "entityId": 10326, "properties": {"text": "Subject: re : model effort in houston\nmike\npls discuss with mark tawney . under the revised egm structure for weather we\nneed to revisit theintended arrangement .\nthnx\npaul\nfrom : mike a roberts @ ect 10 / 04 / 2001 04 : 59 am\nto : christian werner / enron _ development @ enron _ development\ncc : vince j kaminski / hou / ect @ ect , paul\nquilkey / enron _ development @ enron _ development , mark tawney / enron @ enronxgate\nsubject : model effort in houston\nchristian ,\nour spring / fall window of \" < nactivity \" is rapidly eluding us . . .\nwe need to get our internal model operational without delay .\nalong these lines , let ' s go ahead and plan your visit to houston as soon as\npossible ,\nbut by all means get you in at least 4 weeks before hurricane season .\nthat would mean the month of may looks good .\nplease inform me what duties you could not perform from here to support the\nsydney office ,\nwe ' ll figure out how to keep that office whole .\n( it ' s working without a hitch to have steve bennett in london , but continuing\nhis houston duties )\nif the first week in may ( for the whole month ) will work , please respond asap\nand we ' ll get housing arrangements finalized .\nlooking forward to your visit ,\n- - - mike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.180+0000", "entityId": 10327, "properties": {"text": "Subject: sevil yamin\nvince ,\ndo you want me to do this , or vasant ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 10 / 2001 02 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : anne labbe / enron @ enronxgate on 04 / 06 / 2001 09 : 57 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : sevil yamin\nstinson ,\ni am the new hr generalist for the research group because norma villarreal is moving to business analysis and reporting . earlier this week , norma and i met with vince , and he said that he was going to talk to you about writing up a list of sevil ' s projects / accomplishments for last year and this year , so that we can give her a project bonus since she did not receive a bonus during the normal prc time . at your earliest convenience , will you please email me this list so that i can get started putting together all of the paperwork so that she can receive a check on april 16 th .\nif you have any questions , please feel free to contact me at 5 - 7809 . i look forward to meeting you , and the rest of the group next week at vince ' s staff meeting .\nthanks ,\nanne labbe '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.185+0000", "entityId": 10328, "properties": {"text": "Subject: fw : enron recruitment\nvince : i ' m sure that you are already aware of this , but i wanted to forward it to you since this didn ' t come up in our meeting the other morning . . . .\nmolly\n- - - - - original message - - - - -\nfrom : koepke , gwyn\nsent : tuesday , april 10 , 2001 1 : 20 pm\nto : rtlambert @ mail . jhuwash . jhu . edu\ncc : molly magee / hou / ect @ enron\nsubject : enron recruitment\ndear ron ,\nmy boss , enron ' s chief international economist , is interested in talking with sais grads who might want to come to houston and do economics work . same drill as last time , looking for someone whose done the quant track but with excellent writing skills . i think i sent you a job description a few months back .\ncan you help identify some candidates , and send their resumes our way ? molly magee is our recruiting expert and she can help setup the interviews with maureen . maureen is still in london on secondment but is available to interview people of the phone .\nthanks for your help .\ngwyn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.189+0000", "entityId": 10329, "properties": {"text": "Subject: sevil yaman\nhi norma ,\nsevil ' s primary project has been the generation bidding analysis for the east power desk . she worked closely with the power fundamentals group and the it group in collecting and organizing the data , and then developing the analysis . sha has focused on the pjm area and plans to expand the analysis to other regions in the east .\nsevil has also investigated the issue of risk premia in power prices compared to marginal cost .\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.194+0000", "entityId": 10330, "properties": {"text": "Subject: sevil yamin\nanne ,\nvasant sent this information to norma . i shall fwd his message to you .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001\n03 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n04 / 10 / 2001 02 : 57 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : sevil yamin\nvince ,\ndo you want me to do this , or vasant ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 10 / 2001\n02 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : anne labbe / enron @ enronxgate on 04 / 06 / 2001 09 : 57 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : sevil yamin\nstinson ,\ni am the new hr generalist for the research group because norma villarreal is\nmoving to business analysis and reporting . earlier this week , norma and i\nmet with vince , and he said that he was going to talk to you about writing up\na list of sevil ' s projects / accomplishments for last year and this year , so\nthat we can give her a project bonus since she did not receive a bonus during\nthe normal prc time . at your earliest convenience , will you please email me\nthis list so that i can get started putting together all of the paperwork so\nthat she can receive a check on april 16 th .\nif you have any questions , please feel free to contact me at 5 - 7809 . i look\nforward to meeting you , and the rest of the group next week at vince ' s staff\nmeeting .\nthanks ,\nanne labbe '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.199+0000", "entityId": 10331, "properties": {"text": "Subject: sevil yamin\nvince ,\ndo you want me to do this , or vasant ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 10 / 2001\n02 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : anne labbe / enron @ enronxgate on 04 / 06 / 2001 09 : 57 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : sevil yamin\nstinson ,\ni am the new hr generalist for the research group because norma villarreal is\nmoving to business analysis and reporting . earlier this week , norma and i\nmet with vince , and he said that he was going to talk to you about writing up\na list of sevil ' s projects / accomplishments for last year and this year , so\nthat we can give her a project bonus since she did not receive a bonus during\nthe normal prc time . at your earliest convenience , will you please email me\nthis list so that i can get started putting together all of the paperwork so\nthat she can receive a check on april 16 th .\nif you have any questions , please feel free to contact me at 5 - 7809 . i look\nforward to meeting you , and the rest of the group next week at vince ' s staff\nmeeting .\nthanks ,\nanne labbe '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.204+0000", "entityId": 10332, "properties": {"text": "Subject: fw : enron recruitment\nvince : i ' m sure that you are already aware of this , but i wanted to forward\nit to you since this didn ' t come up in our meeting the other morning . . . .\nmolly\n- - - - - original message - - - - -\nfrom : koepke , gwyn\nsent : tuesday , april 10 , 2001 1 : 20 pm\nto : rtlambert @ mail . jhuwash . jhu . edu\ncc : molly magee / hou / ect @ enron\nsubject : enron recruitment\ndear ron ,\nmy boss , enron ' s chief international economist , is interested in talking with\nsais grads who might want to come to houston and do economics work . same\ndrill as last time , looking for someone whose done the quant track but with\nexcellent writing skills . i think i sent you a job description a few months\nback .\ncan you help identify some candidates , and send their resumes our way ? molly\nmagee is our recruiting expert and she can help setup the interviews with\nmaureen . maureen is still in london on secondment but is available to\ninterview people of the phone .\nthanks for your help .\ngwyn", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.208+0000", "entityId": 10333, "properties": {"text": "Subject: sevil yaman\nhi norma ,\nsevil ' s primary project has been the generation bidding analysis for the\neast power desk . she worked closely with the power fundamentals group and\nthe it group in collecting and organizing the data , and then developing the\nanalysis . sha has focused on the pjm area and plans to expand the analysis\nto other regions in the east .\nsevil has also investigated the issue of risk premia in power prices\ncompared to marginal cost .\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.213+0000", "entityId": 10334, "properties": {"text": "Subject: sevile\nvasant ,\ni spoke with norma about getting a special reward for sevil , in lieu of bonus .\nplease , send to norma the list of projects sevil worked on .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.217+0000", "entityId": 10335, "properties": {"text": "Subject: sevil yamin\nanne ,\nvasant sent this information to norma . i shall fwd his message to you .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001 03 : 02 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstinson gibner\n04 / 10 / 2001 02 : 57 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : sevil yamin\nvince ,\ndo you want me to do this , or vasant ?\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 10 / 2001 02 : 57 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : anne labbe / enron @ enronxgate on 04 / 06 / 2001 09 : 57 am\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : sevil yamin\nstinson ,\ni am the new hr generalist for the research group because norma villarreal is moving to business analysis and reporting . earlier this week , norma and i met with vince , and he said that he was going to talk to you about writing up a list of sevil ' s projects / accomplishments for last year and this year , so that we can give her a project bonus since she did not receive a bonus during the normal prc time . at your earliest convenience , will you please email me this list so that i can get started putting together all of the paperwork so that she can receive a check on april 16 th .\nif you have any questions , please feel free to contact me at 5 - 7809 . i look forward to meeting you , and the rest of the group next week at vince ' s staff meeting .\nthanks ,\nanne labbe '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.221+0000", "entityId": 10336, "properties": {"text": "Subject: welcome to - energy news live\ndear vincent kaminski ,\nwelcome to energy news live - http : / / www . energynewslive . com !\nyou are receiving this email as a result of your recent registration .\nfree energy news live membership\nwe ' re glad you ' ve joined us ; we think you ' ll find enl an amazing business\ntool ,\nwith live , up - to the - minute news every hour on the hour of every business day .\ninsight from actual traders . exotic and proprietary\nweather modeling . a new cross - commodity index . we ' ll break every\nenergy headline around the world , and bring them right to your desktop .\nso sign on , leave it on , stay on top . and enjoy your membership to\nenergynewslive . com , the first real - time energy network .\nalso , thank you for your request to receive more information from\nenergynewslive . com . keep checking your email for updates and\nspecial offers .\nif you did not request to receive special offers from enl please\nclick here to de - activate :\nyou have also indicated that you would like to receive a daily\nvideo wrap - up from energynewslive . com .\nif you did not request to receive a daily video wrap - up from enl please\nclick here to de - activate :\nsincerely ,\nthe energy news live team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.227+0000", "entityId": 10337, "properties": {"text": "Subject: livelink access\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 11 / 2001\n01 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology\nfrom : moyez lallani @ enron 01 / 16 / 2001 10 : 46 am\nto : stinson gibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : livelink access\ngentlemen ,\ni have created a folder called research projects folder in the livelink test\ninstance . the url to the test instance is\nto log in , use your nt login id as your userid and password ( all lowercase ) .\nyou will find the folder on the enterprise workspace . please call me should\nyou require further assistance .\nmoyez lallani\nx 5 - 3683", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.231+0000", "entityId": 10338, "properties": {"text": "Subject: re : charm\njim ,\ncharm looks more like a prototype that requires a lot of work to make it\nmore a\nproduction tool .\nwe have developed a similar model ( without some nice functionalities charm\nhas )\nin about two weeks , at request of rick jones who joined ees from hsb . rick\nworked on a similar model at his old company and wanted to have a similar\ntool\nfor his projects with enron . i can tell you more about it when we meet\n( hopefully ) later\nthis week .\ni would tell willis that the model requires more work before enron can\nconsider it as commercial product .\nvince\njames l bouillion\n04 / 11 / 2001 06 : 52 am\nto : vince j kaminski / hou / ect @ ect\ncc : jonathan davis / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : re : charm\nvince , what feedback should i give willis on their charm product ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james l bouillion / hou / ect on 04 / 11 / 2001\n06 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames l bouillion\n04 / 11 / 2001 06 : 50 am\nto : \" bertil olsson \" @ enron\ncc :\nsubject : re : charm\nno word yet . i will follow up with the attendees .\nthanks for taking thje time to make the presentation .\n\" bertil olsson \" on 04 / 10 / 2001 04 : 07 : 11 pm\nto : james . l . bouillion @ enron . com\ncc :\nsubject : re : charm\njim ,\nany feed - back on our meeting ? we certainly appreciated the opportunity and\nthe fact that the meeting was very interactive .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.236+0000", "entityId": 10339, "properties": {"text": "Subject: p + option valuation model\nmark ,\nafter recently reviewing the booking of the p + options , it is my understanding that these options are being valued using a standard spread option model where the price evolution of the two legs of the spread are assumed to be correlated geometric brownian motion processes ( i . e . the price process assumptions are consistent with standard black - 76 model assumptions extended to two commodities ) .\nthe payoff for a call option is :\npayoff = max ( 0 , a - b - k ) .\nwhere :\na = nxwti ( delivery price for nymex )\nb = posting price = ( wti swap ) - ( posting basis )\nk = posting bonus ( fixed ) .\nthe only complication of this option as compared to most other spread options is that leg \" b \" of the spread is a combination of three prices , the two futures prices which make up the wti swap for the given month , and the average posting basis during the delivery month . combination of these prices is easily addressed by simply setting the volatility of leg \" b \" and the correlation to correctly account for the volatility of this basket of prices and its correlation with the nxwti price . i believe that this approach is more straightforward than the alternative , which would be to use a three or four - commodity model with its associated volatility and correlation matrices .\nin summary , i believe that this is an appropriate model for valuation of these types of options , assuming that the inputs are set correctly .\nregards ,\nstinson gibner\nv . p . research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.241+0000", "entityId": 10340, "properties": {"text": "Subject: p + option valuation model\nmark ,\nafter recently reviewing the booking of the p + options , it is my\nunderstanding that these options are being valued using a standard spread\noption model where the price evolution of the two legs of the spread are\nassumed to be correlated geometric brownian motion processes ( i . e . the price\nprocess assumptions are consistent with standard black - 76 model assumptions\nextended to two commodities ) .\nthe payoff for a call option is :\npayoff = max ( 0 , a \u0001 ) b \u0001 ) k ) .\nwhere :\na = nxwti ( delivery price for nymex )\nb = posting price = ( wti swap ) \u0001 ) ( posting basis )\nk = posting bonus ( fixed ) .\nthe only complication of this option as compared to most other spread options\nis that leg \" b \" of the spread is a combination of three prices , the two\nfutures prices which make up the wti swap for the given month , and the\naverage posting basis during the delivery month . combination of these\nprices is easily addressed by simply setting the volatility of leg \" b \" and\nthe correlation to correctly account for the volatility of this basket of\nprices and its correlation with the nxwti price . i believe that this\napproach is more straightforward than the alternative , which would be to use\na three or four - commodity model with its associated volatility and\ncorrelation matrices .\nin summary , i believe that this is an appropriate model for valuation of\nthese types of options , assuming that the inputs are set correctly .\nregards ,\nstinson gibner\nv . p . research", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.247+0000", "entityId": 10341, "properties": {"text": "Subject: reply requested : do you code or approve invoices ?\ndo you code or approve invoices for goods and services that are processed by the houston - based accounts payable center ?\nif yes , please read and respond to this e - mail .\non may lst , ibuyit payables will be activated for all organizations supported by the houston - based accounts payable processing center ( for example , invoices submitted via ap drop box to 600 jefferson , houston ) . if you code or approve these invoices , the ibuyit payables project team has important information to share with you about the ibuyit payables system , training , and the may lst transition to the new system .\nto identify yourself as a future ibuyit payables coder or approver , please respond to this e - mail upon receipt with the following information :\n* full name ( first , middle , last )\n* e - mail address\n* business unit ( for example , corporate , ets , ews , ees , or ebs )\n* do you code invoices ? ( yes / no )\n* do you approve invoices ? ( yes / no )\n* are you a remote user ? for example , do you dialup to access the enron network ? ( yes / no )\nthis will ensure that you receive important ibuyit payables information . thank you for your response !\nattached is important ibuyit payables training information :\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.252+0000", "entityId": 10342, "properties": {"text": "Subject: re : powerisk 2001 - your invitation\nangelika ,\nthanks for the invitation .\nyes , i shall be glad to attend and repeat the same presentation .\nvince\nangelika staude on 04 / 09 / 2001 04 : 19 : 08 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : powerisk 2001 - your invitation\npowerisk 2001\nthe global premier forumforenergy trading & risk management\n6 th - 9 th november 2001 , paris\ndear mr kaminski ,\ni am responsible for the programme of this year ' s powerisk conference in paris . helyette geman has informed me that she has contacted you concerning the workshop and that you are happy to do it with her again this year - brilliant !\ni would like to know if you are also interested in delivering a paper again . the audience in previous years greatly appreciated your contribution , and i would me more than happy if you could join us again .\nto give you an idea of the programme so far , these are the ( \" technical \" ) topics that are already covered :\nchris strickland : forward curve models with jumps for the pricing of exotic energy contracts\nmulti - factor forward curve models for the valuation of energy contracts\nadding jumps\napplying the models to exotic energy options\nextensions to multiple energy contracts\nles clewlow : valuation and risk management of virtual power stations and gas supply agreements\nstructures of gas supply agreements ( gsa )\nrelationships between physical and virtual power stations ( pps / vps )\nvaluation methods for gsa ' s and vps ' s\nrisk analysis of gsa ' s and vps ' s\nderek bunn , professor of decision sciences , london business school : analysing the impact of neta on market efficiency & volatility in the uk energy market\nchris harris , director of market development . operations and engineering , innogy : applying cutting - edge portfolio management theory in order to optimise your risk exposure\nestablishing and valuing the key factors using a bottom up approach\nlooking at the interconnection between key factors\nthe treatment of the risk of infrequent but high impact events\npeter nance , principal , teknecon : combining power systems and monte carlo simulations for effective pricing\ndan mansfeld , head of risk control , vattenfall : assessing the benefits and risks of using derivatives as part of your risk management strategy\nspyros maragos : analysing new approaches to building forward curves from available market data\ntamara weinert , credit and contracts manager , mirant energy : successfully measuring limit setting ; risk reducing structures\nimportance of credit in the organizational structure : reporting ; dependence ; structure of credit department\nbrett humphreys : examining cutting - edge credit exposure mitigation tools : combining counterparty and portfolio credit var techniques\nhelyette geman : pricing of exotic energy derivatives and structured contracts\nplease let me know if you are interested in joining the powerisk 2001 speaker panel , and which topic you would like to cover . i think that something along the lines of last year ' s talk ( state - of - the - art volatility and correlation estimation techniques for multiple energy portfolios ) would be brilliant again , but please feel free to chose something else that has not been covered yet .\ni look forward to hearing from you ,\nkind regards ,\nangelika staude\ndirector powerisk 2001\ntel : 0044 207 915 5675\nfax : 0044 207 915 5101\nps : for your information , please find enclosed a list of confirmed speakers for powerisk 2001 .\n- confirmed speakers . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.256+0000", "entityId": 10343, "properties": {"text": "Subject: re : powerisk 2001 - your invitation\nangelika ,\nthanks for the invitation .\nyes , i shall be glad to attend and repeat the same presentation .\nvince\nangelika staude on 04 / 09 / 2001 04 : 19 : 08 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : powerisk 2001 - your invitation\n?\npowerisk 2001\nthe global premier forumforenergy trading & risk management\n? 6 th - 9 th november 2001 , paris\n?\ndear mr kaminski ,\n?\ni am responsible for the programme of this year ' s powerisk conference in\nparis . helyette geman has informed me that she has contacted you concerning\nthe workshop and that you are happy to do it with her again this year -\nbrilliant !\n?\ni would like to know if you are also interested in delivering a paper again .\nthe audience in previous years greatly appreciated your contribution , and i\nwould me more than happy if you could join us again .\n?\nto give you an idea of the programme so far , these are the ( \" technical \" )\ntopics that are already covered :\n?\nchris strickland : forward curve models with jumps for the pricing of exotic\nenergy contracts\nmulti - factor forward curve models for the valuation of energy contracts\nadding jumps\napplying the models to exotic energy options\nextensions to multiple energy contracts\nles clewlow : valuation and risk management of virtual power stations and\ngas supply agreements\nstructures of gas supply agreements ( gsa )\nrelationships between physical and virtual power stations ( pps / vps )\nvaluation methods for gsa ' s and vps ' s\nrisk analysis of gsa ' s and vps ' s\nderek bunn , professor of decision sciences , london business school :\nanalysing the impact of neta on market efficiency & volatility in the uk\nenergy market\nchris harris , director of market development . operations and engineering ,\ninnogy : applying cutting - edge portfolio management theory in order to\noptimise your risk exposure\nestablishing and valuing the key factors using a bottom up approach\nlooking at the interconnection between key factors\nthe treatment of the risk of infrequent but high impact events\npeter nance , principal , teknecon : combining power systems and monte carlo\nsimulations for effective pricing\ndan mansfeld , head of risk control , vattenfall : assessing the benefits\nand risks of using derivatives as part of your risk management strategy\nspyros maragos : analysing new approaches to building forward curves from\navailable market data\ntamara weinert , credit and contracts manager , mirant energy : successfully\nmeasuring limit\nsetting ; risk reducing structures\nimportance of credit in the organizational structure : reporting ; dependence ;\nstructure of credit department\nbrett humphreys : examining cutting - edge credit exposure mitigation tools :\ncombining counterparty and portfolio credit var techniques\nhelyette geman : pricing of exotic energy derivatives and structured contracts\nplease let me know if you are interested in joining the powerisk 2001\nspeaker panel , and which topic you would like to cover . i think that\nsomething along the lines of last year ' s talk ( state - of - the - art volatility\nand correlation estimation techniques for multiple energy portfolios ) would\nbe brilliant again , but please feel free to chose something else that has\nnot been covered yet .\n?\ni look forward to hearing from you ,\n?\nkind regards ,\nangelika staude\n?\ndirector ? powerisk 2001\n?\ntel : 0044 207 915 5675\nfax : 0044 207 915 5101\n?\n?\nps : for your information , please find enclosed a list of confirmed speakers\nfor powerisk 2001 .\n- confirmed speakers . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.261+0000", "entityId": 10344, "properties": {"text": "Subject: tentative schedule of the talks at siam . doc\ntentative schedule of the talks at siam\n?\n?\napril 27 , 2001 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\napril 28 , 2001\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n8 : 45 \u0001 ) 9 : 00 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? 9 : 00 \u0001 ) 12 : 15\nwelcoming remarks ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\nimaging & inverse problems in\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? geophysics\n9 : 00 \u0001 ) 10 : 30\narthur vailas \u0001 ) environmental modeling ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? kurt\nmarfurt\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\njason ching ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? william symes\n?\nrichard kendall ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? 10 : 30 \u0001 ) 10 : 45 ? coffee break\n?\n10 : 30 \u0001 ) 10 : 45 ? coffee break ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? arthur weglein\n?\n10 : 45 \u0001 ) 12 : 15 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\njacques tabanou\nreservoir simulation\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? lunch 12 : 15\nstephen lyons\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1 : 30 \u0001 ) 3 : 00 ? ?\namr el bakry ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? information technology\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ?\nlunch 12 : 00 noon ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\ndavid archer\n?\n1 : 30 \u0001 ) 3 : 00 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? t . lasseter\nmodeling energy markets\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3 : 00 \u0001 ) 3 : 15 ? coffee break\npablo padilla\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3 : 15 \u0001 ) 5 : 00\nvince kaminski ? ? ? ? ? ? ? ? ? ? ? workshop on industrial mathematics programs\n?\n3 : 00 \u0001 ) 3 : 15 ? coffee break ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\nsamuel rankin\n? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n3 : 45 \u0001 ) 4 : 00 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n? ? ? ? ? ? ? ? ? ? ? panel\np . percell\n?\n4 : 00 \u0001 ) 5 : 30\nsession on industrial intern programs\n?\nfadil santosa\n?\npanel", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.265+0000", "entityId": 10345, "properties": {"text": "Subject: enron : wefa luncheon may 1\nwould you like to attend the presentation and join me for lunch\nwith wefa .\nany other suggestions re attendance .\nplease , let shirley know .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2001\n12 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" peter mcnabb \" on 04 / 11 / 2001 11 : 52 : 47 am\nto :\ncc : \" kemm farney \"\nsubject : enron : wefa luncheon may 1\ndear vince\nthanks for your voicemail and delighted to have you confirm lunch on may 1 .\nkemm farney the head of wefa ' s electric power services will be travelling\nwith me this time . i expect there may be other enron colleagues that may\ncare to join us for lunch so don ' t hesitate to invite as you see fit . for\nreservations purposes , perhaps you arrange to let me know numbers .\nkemm would also be prepared to informally present our current power outlook\nto a larger group at 11 : 00 , if this would be of interest .\nas you know , these types of presentations are part of all your wefa energy\nretainer package . i will also plan to update you with respect to our current\nmulti client study schedule for the remainder of the year .\nregards , peter\npeter a . mcnabb\nvice president energy , north america\nwefa inc .\n2 bloor st . w .\ntoronto , canada\nm 4 w 3 rl\n416 - 513 - 0061 ex 227\n- 2001 energy brochure . doc\n- wefaenergy _ factsheet for energy scenarios 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.270+0000", "entityId": 10346, "properties": {"text": "Subject: credit risk model comments - at this point .\ncomments from rick jones on the credit reserve model . anita dupont is setting up a meet with rick jones to discuss these . vince & bill - if you want to join the meeting , please let me or anita know .\nregards ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on 04 / 11 / 2001 09 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones @ ees\n04 / 10 / 2001 04 : 16 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : credit risk model comments - at this point .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard b jones / hou / ees on 04 / 10 / 2001 04 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones\n03 / 23 / 2001 05 : 53 pm\nto : cheryl lipshutz / hou / ees @ ees , trushar patel / corp / enron @ enron , michelle . wenz @ enron . com , gayle muench / enron @ enronxgate , jeremy blachman / hou / ees @ ees\ncc :\nsubject : credit risk model comments - at this point .\nhi everyone ,\ni have run the model and , along with the contract briefs i have some questions the number of trials , numerical roundoff , and random number generator randomness statistical properties . the first two are not a problem in this application but the last one could be . has anyone examined the effect of using different random number generators on enron ' s aggregate credit risk ?\n7 ) there is one last point here . for most of the above points , the \" improved \" analysis could make the credit risk be higher .\nrick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.275+0000", "entityId": 10347, "properties": {"text": "Subject: credit risk model comments - at this point .\ncomments from rick jones on the credit reserve model . anita dupont is setting\nup a meet with rick jones to discuss these . vince & bill - if you want to\njoin the meeting , please let me or anita know .\nregards ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n04 / 11 / 2001 09 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones @ ees\n04 / 10 / 2001 04 : 16 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : credit risk model comments - at this point .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard b jones / hou / ees on 04 / 10 / 2001\n04 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones\n03 / 23 / 2001 05 : 53 pm\nto : cheryl lipshutz / hou / ees @ ees , trushar patel / corp / enron @ enron ,\nmichelle . wenz @ enron . com , gayle muench / enron @ enronxgate , jeremy\nblachman / hou / ees @ ees\ncc :\nsubject : credit risk model comments - at this point .\nhi everyone ,\ni have run the model and , along with the contract briefs i have some\nquestions the number of trials , numerical roundoff , and random number\ngenerator randomness statistical properties . the first two are not a problem\nin this application but the last one could be . has anyone examined the effect\nof using different random number generators on enron \u0001 , s aggregate credit risk ?\n7 ) there is one last point here . for most of the above points , the \" improved \"\nanalysis could make the credit risk be higher .\nrick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.279+0000", "entityId": 10348, "properties": {"text": "Subject: vince ,\ni ' ve been out of the office the last few days .\nas we discussed friday , veronica and i hope you can join us , the stocks and\nthe chaneys ( craig chaney is with enroncredit . com ) for dinner at 7 : 00 friday ,\napril 27 th .\ndirections from research and gosling :\ngo west on research forest\nturn left the 2 nd time you cross alden bridge ( stop sign after kuykendall ,\nshopping center on right with albertson ' s , exxon ) .\ngo approximately 1 . 4 miles .\nwill pass park and elementary school on left .\ntake next left - noble bend .\nturn right on the 2 nd street - freestone place .\nwe are # 30 freestone place - the next - to - last home on the right .\nphone # 281 - 362 - 7267\nmike\nx 39990", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.285+0000", "entityId": 10349, "properties": {"text": "Subject: re : your mail\nzhendong ,\ndr . kaminski called me back telling me that he would like to have you as\nan intern student in his research department during the summer . please\nwrite him an email as soon as possible to introduce yourself and letting\nhim know of your expected starting date and ending date . dr . kaminski ' s\nemail address is vince . j . kaminski @ enron . com\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.294+0000", "entityId": 10350, "properties": {"text": "Subject: jacob feedback\nvince ,\nchonawee and tom halliburton had feedback about jacob to me .\ntom ' s feedback is what he does for pros is actually too simple . their\nso - called\ntrading system is actually a scheduling system .\nmy impression is that jacob is good at selling himself , his knowledge\nof finance and derivatives is very limited .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 11 / 2001 03 : 31 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat @ enron\n03 / 21 / 2001 07 : 28 pm\nto : zimin lu / hou / ect @ ect\ncc : tom halliburton / corp / enron @ enron\nsubject : jacob feedback\ni asked jacob two questions to check his basic knowledge . he answered\ncorrectly in the optimization question so i believe that he has a good\nfoundation on his optimization skill . i have a doubt about his stochastic\nskill because he took only one course in stochastic processes and his\nprevious models are simple deterministic models . if we had more interview\ntime i would be able to check his stochastic and modeling skills .\nhe completely failed to answer the second question , which is to check his\nbasic risk management skill . it is clear to me that he has a very weak\nbackground in finance and risk management . he does not understand the\nrelationship between a discount rate and risk . he showed some weakness in\nannuity calculation .\nin conclusion , i feel that he has good basic in optimization but a very weak\nbackground in finance . based on his experiences , i have a doubt on his\nadvance optimization skills , such as his stochastic skill and his ability to\nattack a complex optimization problem . i would recommend a second - round\ninterview if he will be solving a complex - optimization problem .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.301+0000", "entityId": 10351, "properties": {"text": "Subject: re : your mail\nzhendong ,\ndr . kaminski called me back telling me that he would like to have you as\nan intern student in his research department during the summer . please\nwrite him an email as soon as possible to introduce yourself and letting\nhim know of your expected starting date and ending date . dr . kaminski ' s\nemail address is vince . j . kaminski @ enron . com\nshi - jie deng\nassistant professor\nschool of isye\ngeorgia institute of technology\noffice phone : ( 404 ) 894 - 6519\ne - mail : deng @ isye . gatech . edu\nhome page : http : / / www . isye . gatech . edu / ~ deng", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.305+0000", "entityId": 10352, "properties": {"text": "Subject: jacob feedback\nvince ,\nchonawee and tom halliburton had feedback about jacob to me .\ntom ' s feedback is what he does for pros is actually too simple . their so - called\ntrading system is actually a scheduling system .\nmy impression is that jacob is good at selling himself , his knowledge\nof finance and derivatives is very limited .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 11 / 2001 03 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat @ enron\n03 / 21 / 2001 07 : 28 pm\nto : zimin lu / hou / ect @ ect\ncc : tom halliburton / corp / enron @ enron\nsubject : jacob feedback\ni asked jacob two questions to check his basic knowledge . he answered correctly in the optimization question so i believe that he has a good foundation on his optimization skill . i have a doubt about his stochastic skill because he took only one course in stochastic processes and his previous models are simple deterministic models . if we had more interview time i would be able to check his stochastic and modeling skills .\nhe completely failed to answer the second question , which is to check his basic risk management skill . it is clear to me that he has a very weak background in finance and risk management . he does not understand the relationship between a discount rate and risk . he showed some weakness in annuity calculation .\nin conclusion , i feel that he has good basic in optimization but a very weak background in finance . based on his experiences , i have a doubt on his advance optimization skills , such as his stochastic skill and his ability to attack a complex optimization problem . i would recommend a second - round interview if he will be solving a complex - optimization problem .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.310+0000", "entityId": 10353, "properties": {"text": "Subject: finance club : e - trading and fixed income markets workshop\nas faculty advisor to the finance club , prof . barb ostdeik is encouraging\nall members to take advantage of a great opportunity to learn more about\ntrading operations from two very respected individuals in the industry .\nkeith anderson of blackrock , inc ( jgsm 1983 ) and dexter senft of lehman\nbrothers & tradeweb llc ( rice 1974 ) have visited the jones school to give\nthis lecture and students have raved about them . albert wang ' s fixed income\nand advanced investments classes are required to attend , and james weston\nrecommends for his applied finance students and any first years taking\ninvestments next year to be there .\nwhen :\n9 : 45 a . m . d 11 : 15 a . m .\nwednesday\napril 18\nwhere :\nroom 117\nherring hall\npresentation / discussion topics :\ntrading tactics d phone trades vs . electronic trading\nevolution of e - trading in fixed income markets\nthe future of the trading desk\nbuy - side vs . sell - side issues\nspeaker profiles :\nkeith anderson , managing director and chief investment officer , fixed income\nof blackrock , inc . , is co - head of the fixed income operating committee ,\nchairman of the investment strategy group and a member of blackrock \u0001 , s\nmanagement committee . mr . anderson is responsible for global fixed income\nstrategy , asset allocation and the overall management of client portfolios .\nhe coordinates a team of thirty - two portfolio managers and more than\ntwenty - five credit and quantitative analysts .\nmr . anderson is a member of the treasury borrowing advisory committee , which\nmeets quarterly in washington , d . c . with the secretary and staff of the u . s .\ntreasury to advise them on the financing and management of the federal debt .\nprior to founding blackrock in 1988 , mr . anderson was a vice president in\nfixed income research at the first boston corporation , working in mortgage\nsecurities and derivative products strategies . mr . anderson with criterion\ninvestment management company where he had primary responsibility for a $ 2 . 8\nbillion fixed income portfolio .\nmr . anderson has authored numerous articles on fixed income strategies ,\nincluding two articles in the handbook of fixed income options : \" scenario\nanalysis and the use of options in total return portfolio management \" and\n\" measuring , interpreting , and applying volatility within the fixed income\nmarket \" .\ndexter senft is a managing director with global responsibility for fixed\nincome electronic commerce for lehman brothers . during his eight years at\nthe firm , he has also managed or co - managed lehman \u0001 , s fixed income research ,\nquantitative research , counterparty credit and global economics departments .\nmr . senft is the former chairman of tradeweb llc , a consortium - owned\nelectronic bond trading system whose volume currently averages over $ 10\nbillion per day , and of which lehman brothers is a founding shareholder . he\nremains on tradeweb \u0001 , s board , and chairs tradeweb \u0001 , s trading protocol\ncommittee , which oversees the rules that govern the electronic flow of\ninformation within the system .\nmr . senft also serves on the bond market association \u0001 , s committee for\nalternative trading systems , as well as its online bond steering committee\nand he chairs the subcommittee on e - commerce protocols and standards .\nprior to ejv , mr . senft spent 17 years at the first boston corporation ( now\npart of cs first boston ) , where he was a managing director and head of fixed\nincome research and product development . he is a widely published author of\narticles on mortgage securities , fixed income derivatives , and quantitative\nportfolio management , and his work continues to be among the readings for\ncfa applicants . in 1983 , mr . senft led the product team that created the\nfirst cmo for freddie mac .\nthis is regarding the e - trading / bond market session\narranged for april 18 . as part of the lst year finance elective , you may\nhave already been informed by james weston ( were you ? ) but i need to get\nthe info out to more 2 nd years as well .\ndo you usually send out your speaker announcements to all faculty ,\nstudents , and staff ?\nalbert wang ' s fixed income and advanced investments classes are required to\ncome and james weston will be encouraging lst years that took the finance\nelective to come .\nthese guys are pretty good - they came a few years back .\nthanks .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.315+0000", "entityId": 10354, "properties": {"text": "Subject: alp presentation\nvince and ken ,\ndean gil whittaker of the rice business school has also confirmed ! ! pass the\nword on to the students ( no pressure ! ! ha ! ! )\n-\ni think i ' ll go ahead and put the word out to some of the active rice alums\nhere at enron - - it ' ll be a great event !\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 11 / 2001\n03 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" gilbert r . whitaker , jr . \" on 04 / 11 / 2001 03 : 15 : 28 pm\nto : christie . patrick @ enron . com\ncc :\nsubject : re : alp presentation\nchristie -\ni have rearranged my schedule and will be very pleased to attend the alp\npresentation and dinner at enron .\nthanks .\ngil\nat 06 : 01 pm 4 / 10 / 01 - 0500 , you wrote :\n> president gillis and dean whitaker ,\n>\n> enron would be honored with your presense at the presentation set forth\n> below .\n>\n> under the guidance of vince kaminski and his team here at enron , we are\n> thoroughly enjoying working with this group of bright and enthusiastic rice\n> students . we hope you can join us for the culmination of their significant\n> efforts .\n>\n> please let me know - - thanks ! !\n>\n> - - christie .\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 10 / 2001\n> 05 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> vince j kaminski\n> 04 / 10 / 2001 08 : 13 am\n>\n> to : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\n> lounghrid @ rice . edu , luigical @ rice . edu\n> cc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\n> crenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\n>\n> subject : alp presentation\n>\n> on behalf of enron corp . i would like to invite you to an alp project\n> presentation by a group of students\n> of jesse h . jones graduate school of management , rice university .\n>\n> the students will present the results of a research project regarding\n> electronic trading\n> platforms in the energy industry .\n>\n> the presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\n>\n> we would also like to invite you to dinner , following the presentation .\n>\n>\n> vince kaminski\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> ( 713 ) 410 5396 ( cell )\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.320+0000", "entityId": 10355, "properties": {"text": "Subject: term project :\nthis is the list of projects for the members of the \" quant \" team .\nif you are working on different project , please , ignore this message .\nplease , develop in a spreadsheet solutions / examples for the following :\n1 . black - scholes formula\n2 . black ' s formula\n3 . develop a spreadsheet to simulate price trajectory using :\na . gbm\nb . gbm + jump ( formula 2 . 16 in the book , figure 2 . 7 )\nc . mean reversion + jump ( formula 2 . 17 , figure 2 . 8 )\n4 . schwartz single factor model ( formula 6 . 12 )\n5 . develop models corresponding to the figures 7 . 1 , 7 . 3 , 7 . 5 , 7 . 6 , 7 . 8\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.324+0000", "entityId": 10356, "properties": {"text": "Subject: re : alp presentation\nchristie ,\ngreat ! ! you think big .\nit also puts a lot of pressure on the students .\nvince\nchristie patrick\n04 / 11 / 2001 10 : 57 am\nto : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron , melinda\nmccarty / corp / enron @ enron , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : alp presentation\nvince and ken ,\nplease see note below . rice ' s president is planning to attend the\npresentation and dinner ! i ' ll let you know when i hear from gil ( dean\nwhitaker ) . thanks !\nalso , please remember that i ' ve scheduled steve kean for lunch ( i ' ll have\nmelinda have lunches brought to the conference room ) . please let me know the\nexact room number and the exact number of lunches needed from your end .\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 11 / 2001\n10 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njudith duvall on 04 / 11 / 2001 10 : 36 : 06 am\nto : christie . patrick @ enron . com\ncc :\nsubject : re : alp presentation\nms . patrick ,\ndr . gillis will attend both events .\njudith\nat 06 : 01 pm 4 / 10 / 01 - 0500 , you wrote :\n> president gillis and dean whitaker ,\n>\n> enron would be honored with your presense at the presentation set forth\n> below .\n>\n> under the guidance of vince kaminski and his team here at enron , we are\n> thoroughly enjoying working with this group of bright and enthusiastic rice\n> students . we hope you can join us for the culmination of their significant\n> efforts .\n>\n> please let me know - - thanks ! !\n>\n> - - christie .\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 10 / 2001\n> 05 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> vince j kaminski\n> 04 / 10 / 2001 08 : 13 am\n>\n> to : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\n> lounghrid @ rice . edu , luigical @ rice . edu\n> cc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\n> crenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\n>\n> subject : alp presentation\n>\n> on behalf of enron corp . i would like to invite you to an alp project\n> presentation by a group of students\n> of jesse h . jones graduate school of management , rice university .\n>\n> the students will present the results of a research project regarding\n> electronic trading\n> platforms in the energy industry .\n>\n> the presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\n>\n> we would also like to invite you to dinner , following the presentation .\n>\n>\n> vince kaminski\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> ( 713 ) 410 5396 ( cell )\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com\n>\n>\n>\n>\n>\n>\njudith duvall\nsecretary to the president\nrice university\n6100 main street - - msl\nhouston , tx 77005\n713 / 348 - 4601\n713 / 348 - 5271 ( fax )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.329+0000", "entityId": 10357, "properties": {"text": "Subject: re : alp presentation\nchristie ,\nwhat about the invitation to dinner for gillis and whitaker ?\nvince\nchristie patrick\n04 / 10 / 2001 06 : 01 pm\nto : mgillis @ rice . edu , grwhit @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , steven j kean / na / enron @ enron\nsubject : alp presentation\npresident gillis and dean whitaker ,\nenron would be honored with your presense at the presentation set forth\nbelow .\nunder the guidance of vince kaminski and his team here at enron , we are\nthoroughly enjoying working with this group of bright and enthusiastic rice\nstudents . we hope you can join us for the culmination of their significant\nefforts .\nplease let me know - - thanks ! !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 10 / 2001\n05 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu , lounghrid @ rice . edu ,\nluigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.334+0000", "entityId": 10358, "properties": {"text": "Subject: finance club : e - trading and fixed income markets workshop\nas faculty advisor to the finance club , prof . barb ostdeik is encouraging\nall members to take advantage of a great opportunity to learn more about\ntrading operations from two very respected individuals in the industry .\nkeith anderson of blackrock , inc ( jgsm 1983 ) and dexter senft of lehman\nbrothers & tradeweb llc ( rice 1974 ) have visited the jones school to give\nthis lecture and students have raved about them . albert wang ' s fixed income\nand advanced investments classes are required to attend , and james weston\nrecommends for his applied finance students and any first years taking\ninvestments next year to be there .\nwhen :\n9 : 45 a . m . - 11 : 15 a . m .\nwednesday\napril 18\nwhere :\nroom 117\nherring hall\npresentation / discussion topics :\ntrading tactics - phone trades vs . electronic trading\nevolution of e - trading in fixed income markets\nthe future of the trading desk\nbuy - side vs . sell - side issues\nspeaker profiles :\nkeith anderson , managing director and chief investment officer , fixed income\nof blackrock , inc . , is co - head of the fixed income operating committee ,\nchairman of the investment strategy group and a member of blackrock ' s\nmanagement committee . mr . anderson is responsible for global fixed income\nstrategy , asset allocation and the overall management of client portfolios .\nhe coordinates a team of thirty - two portfolio managers and more than\ntwenty - five credit and quantitative analysts .\nmr . anderson is a member of the treasury borrowing advisory committee , which\nmeets quarterly in washington , d . c . with the secretary and staff of the u . s .\ntreasury to advise them on the financing and management of the federal debt .\nprior to founding blackrock in 1988 , mr . anderson was a vice president in\nfixed income research at the first boston corporation , working in mortgage\nsecurities and derivative products strategies . mr . anderson with criterion\ninvestment management company where he had primary responsibility for a $ 2 . 8\nbillion fixed income portfolio .\nmr . anderson has authored numerous articles on fixed income strategies ,\nincluding two articles in the handbook of fixed income options : \" scenario\nanalysis and the use of options in total return portfolio management \" and\n\" measuring , interpreting , and applying volatility within the fixed income\nmarket \" .\ndexter senft is a managing director with global responsibility for fixed\nincome electronic commerce for lehman brothers . during his eight years at\nthe firm , he has also managed or co - managed lehman ' s fixed income research ,\nquantitative research , counterparty credit and global economics departments .\nmr . senft is the former chairman of tradeweb llc , a consortium - owned\nelectronic bond trading system whose volume currently averages over $ 10\nbillion per day , and of which lehman brothers is a founding shareholder . he\nremains on tradeweb ' s board , and chairs tradeweb ' s trading protocol\ncommittee , which oversees the rules that govern the electronic flow of\ninformation within the system .\nmr . senft also serves on the bond market association ' s committee for\nalternative trading systems , as well as its online bond steering committee\nand he chairs the subcommittee on e - commerce protocols and standards .\nprior to ejv , mr . senft spent 17 years at the first boston corporation ( now\npart of cs first boston ) , where he was a managing director and head of fixed\nincome research and product development . he is a widely published author of\narticles on mortgage securities , fixed income derivatives , and quantitative\nportfolio management , and his work continues to be among the readings for\ncfa applicants . in 1983 , mr . senft led the product team that created the\nfirst cmo for freddie mac .\nthis is regarding the e - trading / bond market session\narranged for april 18 . as part of the lst year finance elective , you may\nhave already been informed by james weston ( were you ? ) but i need to get\nthe info out to more 2 nd years as well .\ndo you usually send out your speaker announcements to all faculty ,\nstudents , and staff ?\nalbert wang ' s fixed income and advanced investments classes are required to\ncome and james weston will be encouraging lst years that took the finance\nelective to come .\nthese guys are pretty good - they came a few years back .\nthanks .\nbbo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.338+0000", "entityId": 10359, "properties": {"text": "Subject: alp presentation\nvince and ken ,\ndean gil whittaker of the rice business school has also confirmed ! ! pass the word on to the students ( no pressure ! ! ha ! ! )\n-\ni think i ' ll go ahead and put the word out to some of the active rice alums here at enron - - it ' ll be a great event !\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 11 / 2001 03 : 20 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" gilbert r . whitaker , jr . \" on 04 / 11 / 2001 03 : 15 : 28 pm\nto : christie . patrick @ enron . com\ncc :\nsubject : re : alp presentation\nchristie -\ni have rearranged my schedule and will be very pleased to attend the alp\npresentation and dinner at enron .\nthanks .\ngil\nat 06 : 01 pm 4 / 10 / 01 - 0500 , you wrote :\n> president gillis and dean whitaker ,\n>\n> enron would be honored with your presense at the presentation set forth\n> below .\n>\n> under the guidance of vince kaminski and his team here at enron , we are\n> thoroughly enjoying working with this group of bright and enthusiastic rice\n> students . we hope you can join us for the culmination of their significant\n> efforts .\n>\n> please let me know - - thanks ! !\n>\n> - - christie .\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 10 / 2001\n> 05 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> vince j kaminski\n> 04 / 10 / 2001 08 : 13 am\n>\n> to : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\n> lounghrid @ rice . edu , luigical @ rice . edu\n> cc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\n> crenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\n>\n> subject : alp presentation\n>\n> on behalf of enron corp . i would like to invite you to an alp project\n> presentation by a group of students\n> of jesse h . jones graduate school of management , rice university .\n>\n> the students will present the results of a research project regarding\n> electronic trading\n> platforms in the energy industry .\n>\n> the presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\n>\n> we would also like to invite you to dinner , following the presentation .\n>\n>\n> vince kaminski\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> ( 713 ) 410 5396 ( cell )\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.342+0000", "entityId": 10360, "properties": {"text": "Subject: term project :\nthis is the list of projects for the members of the \" quant \" team .\nif you are working on different project , please , ignore this message .\nplease , develop in a spreadsheet solutions / examples for the following :\n1 . black - scholes formula\n2 . black ' s formula\n3 . develop a spreadsheet to simulate price trajectory using :\na . gbm\nb . gbm + jump ( formula 2 . 16 in the book , figure 2 . 7 )\nc . mean reversion + jump ( formula 2 . 17 , figure 2 . 8 )\n4 . schwartz single factor model ( formula 6 . 12 )\n5 . develop models corresponding to the figures 7 . 1 , 7 . 3 , 7 . 5 , 7 . 6 , 7 . 8\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.346+0000", "entityId": 10361, "properties": {"text": "Subject: re : alp presentation\nchristie ,\ngreat ! ! you think big .\nit also puts a lot of pressure on the students .\nvince\nchristie patrick\n04 / 11 / 2001 10 : 57 am\nto : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron , melinda mccarty / corp / enron @ enron , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : alp presentation\nvince and ken ,\nplease see note below . rice ' s president is planning to attend the presentation and dinner ! i ' ll let you know when i hear from gil ( dean whitaker ) . thanks !\nalso , please remember that i ' ve scheduled steve kean for lunch ( i ' ll have melinda have lunches brought to the conference room ) . please let me know the exact room number and the exact number of lunches needed from your end .\nthanks !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 11 / 2001 10 : 38 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njudith duvall on 04 / 11 / 2001 10 : 36 : 06 am\nto : christie . patrick @ enron . com\ncc :\nsubject : re : alp presentation\nms . patrick ,\ndr . gillis will attend both events .\njudith\nat 06 : 01 pm 4 / 10 / 01 - 0500 , you wrote :\n> president gillis and dean whitaker ,\n>\n> enron would be honored with your presense at the presentation set forth\n> below .\n>\n> under the guidance of vince kaminski and his team here at enron , we are\n> thoroughly enjoying working with this group of bright and enthusiastic rice\n> students . we hope you can join us for the culmination of their significant\n> efforts .\n>\n> please let me know - - thanks ! !\n>\n> - - christie .\n> - - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 10 / 2001\n> 05 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n>\n> vince j kaminski\n> 04 / 10 / 2001 08 : 13 am\n>\n> to : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\n> lounghrid @ rice . edu , luigical @ rice . edu\n> cc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\n> crenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\n>\n> subject : alp presentation\n>\n> on behalf of enron corp . i would like to invite you to an alp project\n> presentation by a group of students\n> of jesse h . jones graduate school of management , rice university .\n>\n> the students will present the results of a research project regarding\n> electronic trading\n> platforms in the energy industry .\n>\n> the presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\n>\n> we would also like to invite you to dinner , following the presentation .\n>\n>\n> vince kaminski\n>\n> vincent kaminski\n> managing director - research\n> enron corp .\n> 1400 smith street\n> room ebl 962\n> houston , tx 77002 - 7361\n>\n> phone : ( 713 ) 853 3848\n> ( 713 ) 410 5396 ( cell )\n> fax : ( 713 ) 646 2503\n> e - mail : vkamins @ enron . com\n>\n>\n>\n>\n>\n>\njudith duvall\nsecretary to the president\nrice university\n6100 main street - - msl\nhouston , tx 77005\n713 / 348 - 4601\n713 / 348 - 5271 ( fax )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.351+0000", "entityId": 10362, "properties": {"text": "Subject: re : alp presentation\nchristie ,\nwhat about the invitation to dinner for gillis and whitaker ?\nvince\nchristie patrick\n04 / 10 / 2001 06 : 01 pm\nto : mgillis @ rice . edu , grwhit @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , steven j kean / na / enron @ enron\nsubject : alp presentation\npresident gillis and dean whitaker ,\nenron would be honored with your presense at the presentation set forth below .\nunder the guidance of vince kaminski and his team here at enron , we are thoroughly enjoying working with this group of bright and enthusiastic rice students . we hope you can join us for the culmination of their significant efforts .\nplease let me know - - thanks ! !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 10 / 2001 05 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu , lounghrid @ rice . edu , luigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project presentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding electronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.355+0000", "entityId": 10363, "properties": {"text": "Subject: your confirmation is needed\nplease reply to this email message to confirm your subscription to\nenl - dailyupdate - txt .\nyour email address has been entered for a subscription to the\nenl - dailyupdate - txt mailing list . however , your new subscription requires\na confirmation that you received this email message and want\nto join this mailing list .\nif you do not want to join , do nothing . you will be automatically\nremoved .\nto confirm that you do want to join , simply reply to this message .\nmake sure that your message is addressed to\nto unsubscribe immediately , you send an email message to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.360+0000", "entityId": 10364, "properties": {"text": "Subject: your confirmation is needed\nplease respond to energy news live daily update confirmation from lyris listmanager please reply to this email message to confirm your subscription to\nenl - dailyupdate - txt .\nyour email address has been entered for a subscription to the\nenl - dailyupdate - txt mailing list . however , your new subscription requires\na confirmation that you received this email message and want\nto join this mailing list .\nif you do not want to join , do nothing . you will be automatically\nremoved .\nto confirm that you do want to join , simply reply to this message .\nmake sure that your message is addressed to\nto unsubscribe immediately , you send an email message to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.364+0000", "entityId": 10365, "properties": {"text": "Subject: re : var\nvince\nthanks for the update - especially your point 3 which echoes our own\ndiscussion yesterday : i want to clarify responsibilities for maintenance and\nadministration of var .\nwe need transparency around the process so that mapping decisions , for\nexample , are easily made , supported and reviewed .\nit became clear after last friday ' s events , that we are in an awkward\nparadigm with respect to how we handle var here , particularly at \" pressure\npoints \" .\ni am putting together the scope of a \" general overhaul \" of the var process ,\nincluding method and administration , to which i hope we would all buy in , so\nbe assured of our co - operation .\ndp\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , april 11 , 2001 2 : 49 pm\nto : port , david\ncc : lavorato , john ; kaminski , vince ; tamarchenko , tanya\nsubject : var\ndavid ,\nduring today ' s var coordination meeting we had a discussion of issues\nrelated to mapping of the forward price curves into core locations .\nmapping is a necessity dictated by the limitations of the computer system :\nwe have to reduce the dimensionality of the problem to stay within the bounds\nof available cpu memory . also , in some cases the quality of price discovery\nis poor\nand it ' s difficult to model the price curves independently : we solve the\nproblem by mapping\nthem into more liquid and better behaved core locations curves .\nwe have agreed on the following :\n1 . winston will investigate the it side and determine to what extent we can\nincrease the number\nof forward price curves that are simulated as basic ( core ) curves . he will\ninvestigate the impact of a larger\nnumber of the core curves on the time required to complete the var run .\n2 . the curves associated with the biggest 10 - 20 positions in each commodity\nshould be\nmodeled as core curves ( i . e . no mapping into other locations ) . it makes sense\nto monitor\nthe biggest risks separately and avoid aggregating them into less\ntransparent aggregates .\n3 . the results of an automated clustering ( mapping ) procedures should be\nsystematically\nmonitored by a human and corrected if they misrepresent the risks of the\ntrading positions .\nthis responsibility should be vested with one person ( right now the\nresponsibility is\ndispersed through the organization and this means in practice that nobody\nis responsible ) . research can allocate one person to this task ;\ncooperation of trading and rac will be critical .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.369+0000", "entityId": 10366, "properties": {"text": "Subject: var\ndavid ,\nduring today ' s var coordination meeting we had a discussion of issues\nrelated to mapping of the forward price curves into core locations .\nmapping is a necessity dictated by the limitations of the computer system :\nwe have to reduce the dimensionality of the problem to stay within the bounds\nof available cpu memory . also , in some cases the quality of price discovery\nis poor\nand it ' s difficult to model the price curves independently : we solve the\nproblem by mapping\nthem into more liquid and better behaved core locations curves .\nwe have agreed on the following :\n1 . winston will investigate the it side and determine to what extent we can\nincrease the number\nof forward price curves that are simulated as basic ( core ) curves . he will\ninvestigate the impact of a larger\nnumber of the core curves on the time required to complete the var run .\n2 . the curves associated with the biggest 10 - 20 positions in each commodity\nshould be\nmodeled as core curves ( i . e . no mapping into other locations ) . it makes sense\nto monitor\nthe biggest risks separately and avoid aggregating them into less\ntransparent aggregates .\n3 . the results of an automated clustering ( mapping ) procedures should be\nsystematically\nmonitored by a human and corrected if they misrepresent the risks of the\ntrading positions .\nthis responsibility should be vested with one person ( right now the\nresponsibility is\ndispersed through the organization and this means in practice that nobody\nis responsible ) . research can allocate one person to this task ;\ncooperation of trading and rac will be critical .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.374+0000", "entityId": 10367, "properties": {"text": "Subject: re : var\nvince\nthanks for the update - especially your point 3 which echoes our own discussion yesterday : i want to clarify responsibilities for maintenance and administration of var .\nwe need transparency around the process so that mapping decisions , for example , are easily made , supported and reviewed .\nit became clear after last friday ' s events , that we are in an awkward paradigm with respect to how we handle var here , particularly at \" pressure points \" .\ni am putting together the scope of a \" general overhaul \" of the var process , including method and administration , to which i hope we would all buy in , so be assured of our co - operation .\ndp\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , april 11 , 2001 2 : 49 pm\nto : port , david\ncc : lavorato , john ; kaminski , vince ; tamarchenko , tanya\nsubject : var\ndavid ,\nduring today ' s var coordination meeting we had a discussion of issues\nrelated to mapping of the forward price curves into core locations .\nmapping is a necessity dictated by the limitations of the computer system :\nwe have to reduce the dimensionality of the problem to stay within the bounds\nof available cpu memory . also , in some cases the quality of price discovery is poor\nand it ' s difficult to model the price curves independently : we solve the problem by mapping\nthem into more liquid and better behaved core locations curves .\nwe have agreed on the following :\n1 . winston will investigate the it side and determine to what extent we can increase the number\nof forward price curves that are simulated as basic ( core ) curves . he will investigate the impact of a larger\nnumber of the core curves on the time required to complete the var run .\n2 . the curves associated with the biggest 10 - 20 positions in each commodity should be\nmodeled as core curves ( i . e . no mapping into other locations ) . it makes sense to monitor\nthe biggest risks separately and avoid aggregating them into less transparent aggregates .\n3 . the results of an automated clustering ( mapping ) procedures should be systematically\nmonitored by a human and corrected if they misrepresent the risks of the trading positions .\nthis responsibility should be vested with one person ( right now the responsibility is\ndispersed through the organization and this means in practice that nobody\nis responsible ) . research can allocate one person to this task ;\ncooperation of trading and rac will be critical .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.380+0000", "entityId": 10368, "properties": {"text": "Subject: var\ndavid ,\nduring today ' s var coordination meeting we had a discussion of issues\nrelated to mapping of the forward price curves into core locations .\nmapping is a necessity dictated by the limitations of the computer system :\nwe have to reduce the dimensionality of the problem to stay within the bounds\nof available cpu memory . also , in some cases the quality of price discovery is poor\nand it ' s difficult to model the price curves independently : we solve the problem by mapping\nthem into more liquid and better behaved core locations curves .\nwe have agreed on the following :\n1 . winston will investigate the it side and determine to what extent we can increase the number\nof forward price curves that are simulated as basic ( core ) curves . he will investigate the impact of a larger\nnumber of the core curves on the time required to complete the var run .\n2 . the curves associated with the biggest 10 - 20 positions in each commodity should be\nmodeled as core curves ( i . e . no mapping into other locations ) . it makes sense to monitor\nthe biggest risks separately and avoid aggregating them into less transparent aggregates .\n3 . the results of an automated clustering ( mapping ) procedures should be systematically\nmonitored by a human and corrected if they misrepresent the risks of the trading positions .\nthis responsibility should be vested with one person ( right now the responsibility is\ndispersed through the organization and this means in practice that nobody\nis responsible ) . research can allocate one person to this task ;\ncooperation of trading and rac will be critical .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.387+0000", "entityId": 10369, "properties": {"text": "Subject: welcome to - energy news live\ndear vincent kaminski ,\nwelcome to energy news live - http : / / www . energynewslive . com !\nyou are receiving this email as a result of your recent registration .\nfree energy news live membership\nwe ' re glad you ' ve joined us ; we think you ' ll find enl an amazing business tool ,\nwith live , up - to the - minute news every hour on the hour of every business day .\ninsight from actual traders . exotic and proprietary\nweather modeling . a new cross - commodity index . we ' ll break every\nenergy headline around the world , and bring them right to your desktop .\nso sign on , leave it on , stay on top . and enjoy your membership to\nenergynewslive . com , the first real - time energy network .\nalso , thank you for your request to receive more information from\nenergynewslive . com . keep checking your email for updates and\nspecial offers .\nif you did not request to receive special offers from enl please\nclick here to de - activate :\nyou have also indicated that you would like to receive a daily\nvideo wrap - up from energynewslive . com .\nif you did not request to receive a daily video wrap - up from enl please\nclick here to de - activate :\nsincerely ,\nthe energy news live team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.393+0000", "entityId": 10370, "properties": {"text": "Subject: livelink access\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 11 / 2001 01 : 13 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron technology from : moyez lallani @ enron 01 / 16 / 2001 10 : 46 am\nto : stinson gibner / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\ncc :\nsubject : livelink access\ngentlemen ,\ni have created a folder called research projects folder in the livelink test instance . the url to the test instance is\nto log in , use your nt login id as your userid and password ( all lowercase ) . you will find the folder on the enterprise workspace . please call me should you require further assistance .\nmoyez lallani\nx 5 - 3683", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.400+0000", "entityId": 10371, "properties": {"text": "Subject: re : charm\njim ,\ncharm looks more like a prototype that requires a lot of work to make it more a\nproduction tool .\nwe have developed a similar model ( without some nice functionalities charm has )\nin about two weeks , at request of rick jones who joined ees from hsb . rick\nworked on a similar model at his old company and wanted to have a similar tool\nfor his projects with enron . i can tell you more about it when we meet ( hopefully ) later\nthis week .\ni would tell willis that the model requires more work before enron can\nconsider it as commercial product .\nvince\njames l bouillion\n04 / 11 / 2001 06 : 52 am\nto : vince j kaminski / hou / ect @ ect\ncc : jonathan davis / hou / ect @ ect , vasant shanbhogue / hou / ect @ ect\nsubject : re : charm\nvince , what feedback should i give willis on their charm product ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james l bouillion / hou / ect on 04 / 11 / 2001 06 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\njames l bouillion\n04 / 11 / 2001 06 : 50 am\nto : \" bertil olsson \" @ enron\ncc :\nsubject : re : charm\nno word yet . i will follow up with the attendees .\nthanks for taking thje time to make the presentation .\n\" bertil olsson \" on 04 / 10 / 2001 04 : 07 : 11 pm\nto : james . l . bouillion @ enron . com\ncc :\nsubject : re : charm\njim ,\nany feed - back on our meeting ? we certainly appreciated the opportunity and\nthe fact that the meeting was very interactive .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.405+0000", "entityId": 10372, "properties": {"text": "Subject: correlation matrix reduction\nzhiyang ,\ngot your message .\nas we discussed , the best way to breakdown the big correlation matrix between\ndifferent location indices is through \" cluster analysis \" . the idea is to\nselect major\nhubs and the \" satellite \" markets . by establish the correlation between the\nhubs\nand correlation between the satellites and the hubs , the big matrix can be\nsignificantly\nreduced . then the traders only need to input the correlations between the\nhubs .\nthis technique has been applied in our value at risk system . you may talk to\ntanya to find out the details .\nzimin\nps : the wsprd code you requested .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.409+0000", "entityId": 10373, "properties": {"text": "Subject: correlation matrix reduction\nzhiyang ,\ngot your message .\nas we discussed , the best way to breakdown the big correlation matrix between\ndifferent location indices is through \" cluster analysis \" . the idea is to select major\nhubs and the \" satellite \" markets . by establish the correlation between the hubs\nand correlation between the satellites and the hubs , the big matrix can be significantly\nreduced . then the traders only need to input the correlations between the hubs .\nthis technique has been applied in our value at risk system . you may talk to\ntanya to find out the details .\nzimin\nps : the wsprd code you requested .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.414+0000", "entityId": 10374, "properties": {"text": "Subject: reminder : cera executive roundtables in houston\ndear cera members and friends :\nwe wanted to make sure you had seen our announcement regarding a series of\nexecutive roundtables in houston next week - on april 17 and 18 , 2001 . these\nmeetings will feature presentations and interactive discussions with cera\nexperts . for complete details on the events , please visit\nhttp : / / www 20 . cera . com / event .\nthe events will feature speakers from the following cera teams :\n* north american electric power - april 17\n* north american natural gas - april 17 & 18 ( two events )\n* western energy - april 17\n* latin america energy - april 18\n* asia pacific energy - april 18\nlocation and accommodations :\nthe four seasons hotel\n1300 lamar street\nhouston , tx 77010 - 3098\ntel . : + 1 713 650 1300\nfax : + 1 713 650 1203\n* please contact the hotel directly for room reservations .\nto enroll , please complete the form found on our website at\nhttp : / / www 20 . cera . com / event and return it by fax to cera registration :\ncera\n20 university road\ncambridge , ma 02138 usa\nfax : + 1 617 498 9176\ntel . : + 1 617 497 6446 x 800\ne - mail : register @ cera . com\nsincerely ,\ncera event registration\nplease note : dates and locations of events are subject to change .\nparticipation at a roundtable is a function of the terms of the cera / client\ncontract . for more information about eligibility , please contact cera\nregistration .\nour relationship with you is very important to us . ? if you do not wish to\nreceive future e - mail notifications , please send a reply to this message with\n\" donotemail \" as the subject of your message .\n( mailto : info @ cera . com ? subject = donotemail )\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.421+0000", "entityId": 10375, "properties": {"text": "Subject: vince kaminski ' s \" bio \" and requirements for the siam invitation\nhello professor fitzgibbon :\nattached please find a \" bio \" for vince kaminski . he will require an lcd\nprojector for his presentation .\nif you need anything else , please let me know .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 12 / 2001\n03 : 30 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 11 / 2001 02 : 17 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : siam invitation\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2001\n02 : 19 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" william fitzgibbon \" on 03 / 13 / 2001 02 : 45 : 57 pm\nto :\ncc :\nsubject : siam invitation\ndear dr . kaminski\nhere is an email invitation for teh siam event . a hard copy will follow\ndr . v . kaminski\nenron\np . o . box 1188\nhouston , texas 77251 - 1188\ndear dr . kaminski\nmarch 12 , 2001\ni am writing to formalize your invitation to attend , participate , and speak\nin the siam southwest regional mathematics in industry workshop . a time\nspan of thirty minutes is being allotted to invited talks with an additional\nten minutes or so for discussion . the workshop , funded under the auspices\nof a national science foundation grant to siam will not be a standard\napplied mathematics event with representatives from industry , academe , and\ngovernmental agencies presenting their latest research results . instead the\nmeeting will emphasize the mathematics and technology currently applied to\nthe projects of industry and governmental laboratories . additionally the\nevent will focus upon the mechanisms facilitating interaction and\ncollaboration between the academy , industry , and government laboratories .\nthe workshop will be held at the university of houston hilton hotel , april\n27 - 28 . funds will be available to support both travel expenses and the cost\nof food and lodging of invited speakers . we will be happy to make travel\narrangements on this end if so desired .\nwe hope that you can accept our invitation . if this is the case please\nfurnish us with a title , a short abstract , and a list of the necessary\nequipment for your presentation .\nwe look forward to seeing you at the university of houston .\nsincerely\nw . fitzgibbon", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.426+0000", "entityId": 10376, "properties": {"text": "Subject: re : powerisk 2001 - your invitation\nangelika .\nyes .\nvince\nangelika staude on 04 / 12 / 2001 03 : 01 : 25 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : powerisk 2001 - your invitation\nvince ,\nbrilliant , thanks . same sub points , same bio ?\nbest regards ,\nangelika staude\ndirector gas & powerisk 2001\ntel : 0044 207 915 5675\nfax : 0044 207 915 5101\nwww . icbi - uk . com / powerisk\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 6 : 59 pm\nto : astaude @ iirltd . co . uk\ncc : vince . j . kaminski @ enron . com\nsubject : re : powerisk 2001 - your invitation\nangelika ,\nthanks for the invitation .\nyes , i shall be glad to attend and repeat the same presentation .\nvince\nangelika staude on 04 / 09 / 2001 04 : 19 : 08 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : powerisk 2001 - your invitation\npowerisk 2001\nthe global premier forumforenergy trading & risk management\n? 6 th - 9 th november 2001 , paris\ndear mr kaminski ,\ni am responsible for the programme of this year ' s powerisk conference in\nparis . helyette geman has informed me that she has contacted you\nconcerning the workshop and that you are happy to do it with her again\nthis year - brilliant !\ni would like to know if you are also interested in delivering a paper\nagain . the audience in previous years greatly appreciated your\ncontribution , and i would me more than happy if you could join us again .\nto give you an idea of the programme so far , these are the ( \" technical \" )\ntopics that are already covered :\nchris strickland : forward curve models with jumps for the pricing of\nexotic energy contracts\nmulti - factor forward curve models for the valuation of energy contracts\nadding jumps\napplying the models to exotic energy options\nextensions to multiple energy contracts\nles clewlow : valuation and risk management of virtual power stations and\ngas supply agreements\nstructures of gas supply agreements ( gsa )\nrelationships between physical and virtual power stations ( pps / vps )\nvaluation methods for gsa ' s and vps ' s\nrisk analysis of gsa ' s and vps ' s\nderek bunn , professor of decision sciences , london business school :\nanalysing the impact of neta on market efficiency & volatility in the uk\nenergy market\nchris harris , director of market development . operations and engineering ,\ninnogy : applying cutting - edge portfolio management theory in order to\noptimise your risk exposure\nestablishing and valuing the key factors using a bottom up approach\nlooking at the interconnection between key factors\nthe treatment of the risk of infrequent but high impact events\npeter nance , principal , teknecon : combining power systems and monte carlo\nsimulations for effective pricing\ndan mansfeld , head of risk control , vattenfall : assessing the benefits\nand risks of using derivatives as part of your risk management strategy\nspyros maragos : analysing new approaches to building forward curves from\navailable market data\ntamara weinert , credit and contracts manager , mirant energy :\nsuccessfully measuring limit\nsetting ; risk reducing structures\nimportance of credit in the organizational structure : reporting ;\ndependence ; structure of credit department\nbrett humphreys : examining cutting - edge credit exposure mitigation tools :\ncombining counterparty and portfolio credit var techniques\nhelyette geman : pricing of exotic energy derivatives and structured\ncontracts\nplease let me know if you are interested in joining the powerisk 2001\nspeaker panel , and which topic you would like to cover . i think that\nsomething along the lines of last year ' s talk ( state - of - the - art volatility\nand correlation estimation techniques for multiple energy portfolios )\nwould be brilliant again , but please feel free to chose something else\nthat has not been covered yet .\ni look forward to hearing from you ,\nkind regards ,\nangelika staude\ndirector ? powerisk 2001\ntel : 0044 207 915 5675\nfax : 0044 207 915 5101\nps : for your information , please find enclosed a list of confirmed\nspeakers for powerisk 2001 .\n( see attached file : confirmed speakers . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.430+0000", "entityId": 10377, "properties": {"text": "Subject: complexity science seminar confirmation\nconfirmation\ndate : april 18 th , 2001\ntime : 11 : 30 am - 1 : 30 pm\nlocation : koch industries\n20 e . greenway plaza\nconference room 1\ndress is business casual .\nparking is free . there is parking available in the koch building or across\nthe street in a lot .\nlunch will be provided and is scheduled to start at 11 : 15 am .\nplease feel free to pass along the word to anyone you think might like to\njoin us . information can be found on our website at http : / / www . nesanet . org /\nor the can contact me at ( 713 ) 856 - 6525 with any questions .\nthanks ,\nlana moore", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.435+0000", "entityId": 10378, "properties": {"text": "Subject: re : powerisk 2001 - your invitation\nangelika .\nyes .\nvince\nangelika staude on 04 / 12 / 2001 03 : 01 : 25 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : powerisk 2001 - your invitation\nvince ,\nbrilliant , thanks . same sub points , same bio ?\nbest regards ,\nangelika staude\ndirector gas & powerisk 2001\ntel : 0044 207 915 5675\nfax : 0044 207 915 5101\nwww . icbi - uk . com / powerisk\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 6 : 59 pm\nto : astaude @ iirltd . co . uk\ncc : vince . j . kaminski @ enron . com\nsubject : re : powerisk 2001 - your invitation\nangelika ,\nthanks for the invitation .\nyes , i shall be glad to attend and repeat the same presentation .\nvince\nangelika staude on 04 / 09 / 2001 04 : 19 : 08 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : powerisk 2001 - your invitation\npowerisk 2001\nthe global premier forumforenergy trading & risk management\n6 th - 9 th november 2001 , paris\ndear mr kaminski ,\ni am responsible for the programme of this year ' s powerisk conference in\nparis . helyette geman has informed me that she has contacted you\nconcerning the workshop and that you are happy to do it with her again\nthis year - brilliant !\ni would like to know if you are also interested in delivering a paper\nagain . the audience in previous years greatly appreciated your\ncontribution , and i would me more than happy if you could join us again .\nto give you an idea of the programme so far , these are the ( \" technical \" )\ntopics that are already covered :\nchris strickland : forward curve models with jumps for the pricing of\nexotic energy contracts\nmulti - factor forward curve models for the valuation of energy contracts\nadding jumps\napplying the models to exotic energy options\nextensions to multiple energy contracts\nles clewlow : valuation and risk management of virtual power stations and\ngas supply agreements\nstructures of gas supply agreements ( gsa )\nrelationships between physical and virtual power stations ( pps / vps )\nvaluation methods for gsa ' s and vps ' s\nrisk analysis of gsa ' s and vps ' s\nderek bunn , professor of decision sciences , london business school :\nanalysing the impact of neta on market efficiency & volatility in the uk\nenergy market\nchris harris , director of market development . operations and engineering ,\ninnogy : applying cutting - edge portfolio management theory in order to\noptimise your risk exposure\nestablishing and valuing the key factors using a bottom up approach\nlooking at the interconnection between key factors\nthe treatment of the risk of infrequent but high impact events\npeter nance , principal , teknecon : combining power systems and monte carlo\nsimulations for effective pricing\ndan mansfeld , head of risk control , vattenfall : assessing the benefits\nand risks of using derivatives as part of your risk management strategy\nspyros maragos : analysing new approaches to building forward curves from\navailable market data\ntamara weinert , credit and contracts manager , mirant energy :\nsuccessfully measuring limit\nsetting ; risk reducing structures\nimportance of credit in the organizational structure : reporting ;\ndependence ; structure of credit department\nbrett humphreys : examining cutting - edge credit exposure mitigation tools :\ncombining counterparty and portfolio credit var techniques\nhelyette geman : pricing of exotic energy derivatives and structured\ncontracts\nplease let me know if you are interested in joining the powerisk 2001\nspeaker panel , and which topic you would like to cover . i think that\nsomething along the lines of last year ' s talk ( state - of - the - art volatility\nand correlation estimation techniques for multiple energy portfolios )\nwould be brilliant again , but please feel free to chose something else\nthat has not been covered yet .\ni look forward to hearing from you ,\nkind regards ,\nangelika staude\ndirector powerisk 2001\ntel : 0044 207 915 5675\nfax : 0044 207 915 5101\nps : for your information , please find enclosed a list of confirmed\nspeakers for powerisk 2001 .\n( see attached file : confirmed speakers . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.440+0000", "entityId": 10379, "properties": {"text": "Subject: marketpoint gas model\ndear mr . braun :\nas i mentioned , i have recently been reassigned here at enron . although i am\nstill in the enron transportation services group , i am no longer the most\nappropriate contact for consideration of the altos gas model . i would\nsuggest you contact kim watson at 713 - 853 - 3098 or of course , vince kaminski ,\nwho will remain very much a part of the decision process .\nregards ,\njohn goodpasture", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.445+0000", "entityId": 10380, "properties": {"text": "Subject: re : fw : credit risk model comments - at this point .\nbill ,\nwe spent about an hour with rick explaining the rationale behind different\nsolutions\nand i think he has a better understanding of the models at this point .\ni think he was asked by jeremy to look into it .\nvince\nfrom : william s bradford / enron @ enronxgate on 04 / 11 / 2001 09 : 05 pm\nto : rick buy / enron @ enronxgate , vince j kaminski / hou / ect @ ect\ncc : mark ruane / enron @ enronxgate\nsubject : fw : credit risk model comments - at this point .\nrick / vince ,\nshould this not be a credit / research initiative while the business unit\nfocuses on originating good economic transactions ? not to be complaining ,\nbut shouldn ' t ees be focusing on infrastructure issues rather than waste\nresources on a project we are already moving forward on ? you can ' t run a\nportfolio model , unless you have deals in a risk system ! how complex do we\nwant these models to be ? behavioral implications on credit default ? they\nstill don ' t seem to understand .\nregards ,\nbill\nmark - please attend . you may want to include martin to help ees understand\nthe complexity of their deals .\n- - - - - original message - - - - -\nfrom : krishnarao , pinnamaneni\nsent : wednesday , april 11 , 2001 9 : 14 am\nto : kaminski , vince ; dhar , amitava ; de , rabi ; william s\nbradford / hou / ect @ enron ; tamarchenko , tanya\nsubject : credit risk model comments - at this point .\ncomments from rick jones on the credit reserve model . anita dupont is setting\nup a meet with rick jones to discuss these . vince & bill - if you want to\njoin the meeting , please let me or anita know .\nregards ,\nkrishna .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by pinnamaneni krishnarao / hou / ect on\n04 / 11 / 2001 09 : 04 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones @ ees\n04 / 10 / 2001 04 : 16 pm\nto : pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : credit risk model comments - at this point .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by richard b jones / hou / ees on 04 / 10 / 2001\n04 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrichard b jones\n03 / 23 / 2001 05 : 53 pm\nto : cheryl lipshutz / hou / ees @ ees , trushar patel / corp / enron @ enron ,\nmichelle . wenz @ enron . com , gayle muench / enron @ enronxgate , jeremy\nblachman / hou / ees @ ees\ncc :\nsubject : credit risk model comments - at this point .\nhi everyone ,\ni have run the model and , along with the contract briefs i have some\nquestions the number of trials , numerical roundoff , and random number\ngenerator randomness statistical properties . the first two are not a problem\nin this application but the last one could be . has anyone examined the effect\nof using different random number generators on enron \u0001 , s aggregate credit risk ?\n7 ) there is one last point here . for most of the above points , the \" improved \"\nanalysis could make the credit risk be higher .\nrick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.449+0000", "entityId": 10381, "properties": {"text": "Subject: re : marketpoint gas model\njohn :\nthanks for the information . chaim and i were aware that you might be\nchanging roles at enron . i am delighted kim is slated to take over the\nreins working with vince . kim has put in a good bit of time in the past few\nyears reviewing our stuff and setting up contacts for us in your company .\nwe will give kim a call early next week after easter . we have made a lot of\nprogress on marketpoint , which i think will be of keen interest to your\nteam . the introductory activity as well as the ongoing , inhouse\narchitecture are both improved relative to what you and your people were\nable to review , and i anticipate you will be pleased and impressed .\njohn , it isnt that easy for you to get away from us ! remember the story of\nthe tar baby . ( just kidding . ) all the best , and i hope we get the chance\nto serve you and make your organization even better .\ndale\n> - - - - - original message - - - - -\n> from : goodpasture , john [ mailto : john . goodpasture @ enron . com ]\n> sent : thursday , april 12 , 2001 9 : 03 am\n> to : chaim . braun @ altosmgmt . com\n> cc : dale m . nesbitt ; kaminski , vince ; watson , kimberly\n> subject : marketpoint gas model\n>\n> dear mr . braun :\n>\n> as i mentioned , i have recently been reassigned here at enron . although i\n> am still in the enron transportation services group , i am no longer the\n> most appropriate contact for consideration of the altos gas model . i\n> would suggest you contact kim watson at 713 - 853 - 3098 or of course , vince\n> kaminski , who will remain very much a part of the decision process .\n>\n> regards ,\n>\n> john goodpasture\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.454+0000", "entityId": 10382, "properties": {"text": "Subject: re : i am zhendong\nsure thing !\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : thursday , april 12 , 2001 3 : 21 pm\nto : molly magee / hou / ect @ enron\ncc : gibner , stinson ; crenshaw , shirley\nsubject : i am zhendong\nmolly ,\nwe would like to hire this person for the summer ( standard offer ) .\nthanks .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 12 / 2001\n03 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzhendong xia on 04 / 11 / 2001 09 : 14 : 01 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : i am zhendong\nhi , dr . kaminski :\ni am zhendong , the student of dr . deng . i think dr . deng has sent my\nresume to you . i am very happy to have an opportunity to work with you\nthis summer .\ni am a student in both ms qcf and ph . d eda programs in georgia tech\nnow . i plan to find a job in industry instead of academic after my\ngraduation . so i intend to do internship during the process of prusuing my\ndegree to acquire some experience for my future career .\ni hope to start on 5 / 14 / 2001 and end on 8 / 17 / 2001 .\nthanks a lot .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.458+0000", "entityId": 10383, "properties": {"text": "Subject: re : i am zhendong\nzhendong ,\nthanks . please , send me your updated resume as well .\nvince\nzhendong xia on 04 / 11 / 2001 09 : 14 : 01 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : i am zhendong\nhi , dr . kaminski :\ni am zhendong , the student of dr . deng . i think dr . deng has sent my\nresume to you . i am very happy to have an opportunity to work with you\nthis summer .\ni am a student in both ms qcf and ph . d eda programs in georgia tech\nnow . i plan to find a job in industry instead of academic after my\ngraduation . so i intend to do internship during the process of prusuing my\ndegree to acquire some experience for my future career .\ni hope to start on 5 / 14 / 2001 and end on 8 / 17 / 2001 .\nthanks a lot .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.463+0000", "entityId": 10384, "properties": {"text": "Subject: manoj gupta - interview schedule\nattached you will find the interview packet for the above - referenced person .\nthe interview will happen monday , april 16 , 2001 . please print all three\ndocuments for your hard copies . if you have any questions , or conflicts of\nschedule , please do not hesitate to contact me .\nsasha divelbiss\n58714", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.467+0000", "entityId": 10385, "properties": {"text": "Subject: my resume\nhi , dr . kaminski :\nglad to get your reply . here is my resueme . if you wanna know more\nabout me , please feel free to contact me . thanks .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318\n- cv . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.473+0000", "entityId": 10386, "properties": {"text": "Subject: re : i am zhendong\nsure thing !\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : thursday , april 12 , 2001 3 : 21 pm\nto : molly magee / hou / ect @ enron\ncc : gibner , stinson ; crenshaw , shirley\nsubject : i am zhendong\nmolly ,\nwe would like to hire this person for the summer ( standard offer ) .\nthanks .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 12 / 2001 03 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzhendong xia on 04 / 11 / 2001 09 : 14 : 01 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : i am zhendong\nhi , dr . kaminski :\ni am zhendong , the student of dr . deng . i think dr . deng has sent my\nresume to you . i am very happy to have an opportunity to work with you\nthis summer .\ni am a student in both ms qcf and ph . d eda programs in georgia tech\nnow . i plan to find a job in industry instead of academic after my\ngraduation . so i intend to do internship during the process of prusuing my\ndegree to acquire some experience for my future career .\ni hope to start on 5 / 14 / 2001 and end on 8 / 17 / 2001 .\nthanks a lot .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.480+0000", "entityId": 10387, "properties": {"text": "Subject: re : i am zhendong\nzhendong ,\nthanks . please , send me your updated resume as well .\nvince\nzhendong xia on 04 / 11 / 2001 09 : 14 : 01 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : i am zhendong\nhi , dr . kaminski :\ni am zhendong , the student of dr . deng . i think dr . deng has sent my\nresume to you . i am very happy to have an opportunity to work with you\nthis summer .\ni am a student in both ms qcf and ph . d eda programs in georgia tech\nnow . i plan to find a job in industry instead of academic after my\ngraduation . so i intend to do internship during the process of prusuing my\ndegree to acquire some experience for my future career .\ni hope to start on 5 / 14 / 2001 and end on 8 / 17 / 2001 .\nthanks a lot .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.486+0000", "entityId": 10388, "properties": {"text": "Subject: manoj gupta - interview schedule\nattached you will find the interview packet for the above - referenced person . the interview will happen monday , april 16 , 2001 . please print all three documents for your hard copies . if you have any questions , or conflicts of schedule , please do not hesitate to contact me .\nsasha divelbiss\n58714", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.490+0000", "entityId": 10389, "properties": {"text": "Subject: jacob kang\nvince ,\njacob has good background in or and can start working on\npipeline problems right away , if we need someone .\nmaybe it is from his consulting background , i found that at times\nhe exaggerates a bit about his roles in model building . he would\nstart saying he did everything , and later water it down quite a bit .\n( what he actually did is not an easy accomplishment though . )\nhe also stressed that he wants to move away from pipeline\nprojects .\ni did not got a chance to ask him any questions about derivatives\nand finance .\nbest ,\nalex", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.495+0000", "entityId": 10390, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron freight markets\nenron freight markets ( efm ) launched its over - the - road trucking business this\nweek . in addition , efm completed 199 intermodal transactions in the first\nweek of april .\nena west power\nena west power recently closed the sale of two power projects . the 750 mw\npastoria energy facility in kern county , california was sold to calpine and\nthe 240 mw fountain valley power project in colorado was sold to black hills\nenergy capital . given the power shortage in the west , ena is developing\nadditional power generation in nevada , california and washington .\nenron industrial markets\nthe newsprint group of eim is working to revolutionize the newsprint market\nand bring financial rigor and market efficiencies to a business that has\nremained relatively unchanged for more than a century . the global newsprint\nmarket is a 23 billion dollar a year business with the north american market\ncomprising one third . the group ' s originators , mid - marketers , and financial\nand physical traders offer our customers numerous financial and physical\nproducts not previously available in the market .\neim has made a substantial commitment to this business with the purchase of\ngarden state paper company last year and the recent purchase of daishowa\npaper in quebec city . the number of transactions has grown exponentially with\nthe physical trading alone reaching a nominal trading volume of more than\n$ 10 , 000 , 000 per month in little more than four months since opening . in\naddition to physical spot transactions , the desk offers our counterparties\nlog - term fixed priced transactions , indexed based pricing , forward contracts ,\nswaps , and derivative products .\nforest products\nforestweb inc . , an internet - based generator , aggregator and integrator of\nknowledge and information for the forest products industry , announced a new\nwindow to industry financial and risk management tools available from\nclickpaper . com . clickpaper allows the industry direct access to transactable\nprices for both physical and financial products , in an electronic format .\npaperloop . com , one of the leading online resources for the forest products\nindustry , announced the addition of clickpaper . com in their emarketplace ,\nwhich showcases various e - commerce companies and highlights their services .\npaperloop provides clickpaper . com exposure to its 250 , 000 + monthly users in\nthe pulp , paper and converting industries .\nin the news\nken lay was the cover story for the april 2001 issue of continental magazine .\nhe had positive things to say about his employees .\n\u0001 & sitting in his 50 th floor mahogany - paneled office overlooking his\nmuch - beloved downtown houston , lay , with a self - conscious smile , bows his\nhead slightly as he \u0001 , s described as an innovative market maker . \u0001 + i really can \u0001 ,\nt take any credit , he says . my employees are responsible for what enron\ndoes . \u0001 , what he does best , the missouri - born corporate icon says , is \u0001 + to\ncreate an atmosphere of empowerment and creativity and hire bright ,\ninnovative people who aren \u0001 , t afraid to take risks and try new things . \u0001 8\nwelcome\nnew hires\neim - craig rickard , lisa mcclendon\nena - ben brasseaux , stephen swisher , tamera joyner , vanessa griffin ,\nkathleen ashton\nweekly enrononline statistics\nbelow are the latest figures for enrononline as of april 6 , 2001 .\n* total life to date transactions > 845 , 000\n* life to date notional value of transactions > $ 500 billion\nnuggets & notes\nmark your lunch calendars now ! the next ews brown bag is thursday , april 19\nat 11 : 30 am . tim battaglia vp / eim will be discussing steel origination .\ncongratulations to peter del vecchio , eim senior counsel , and his wife , nair .\nthey are the proud parents of dante valentin del vecchio , born april 3 ,\nweighing 4 pounds , 8 ounces .\nnews from the global flash\nenron poland obtains gas trading license\non 22 nd march 2001 enron poland received a 10 - year gas trading license , valid\nfor both domestic gas trading within poland as well as for gas exports . the\nlicense is a key component to our entering the gas trading market in poland\nand , coupled with the power trading license we obtained in 1999 , will give\nenron poland a strong position in the developing wholesale energy market . in\nthe next two to three weeks , we expect to receive a cross - border trading\nlicense covering gas imports that are further regulated under the polish\nenergy law ordinance on gas import diversification .\nenron wind announces first uk off - shore wind farm\non 5 th april 2001 , enron wind announced that it had been granted the right to\ninitiate the planning process for its first uk offshore wind farm , located at\ngunfleet sands , 7 km from clacton - upon - sea in essex . construction is expected\nto start towards the end of 2002 , with the wind farm of 30 turbines being\noperational by q 4 2003 . enron wind is also actively involved in a number of\non - shore projects in the uk , including the development of wind farms in wales\nand northern ireland .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.501+0000", "entityId": 10391, "properties": {"text": "Subject: amr research preview information\nvince ,\nfeel free to use this username and password to surf around the amrresearch\nsite\nken\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth parkhill / na / enron on 04 / 12 / 2001\n01 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwebmaster @ www . amrresearch . com ( craig mackay ) on 04 / 11 / 2001 05 : 34 : 08 pm\nto : kenneth parkhill\ncc :\nsubject : amr research preview information\nthe following is your user name and password for an amr research preview\naccount .\nusername : parkhilll 51647\npassword : remain\nthe preview section will give you access to the executive summaries section\nand the presentation library . if you have any questions about amr research ,\nplease email info @ amrresearch . com or call ( 617 ) 542 - 6600 .\nto access the preview section , please go to the following url .\nhttp : / / www . amrresearch . com / members", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.510+0000", "entityId": 10392, "properties": {"text": "Subject: re : enl - dailyupdate - txt\nyou have been subscribed to enl - dailyupdate - txt with the email address\n\" vkamins @ enron . com \"\nto unsubscribe , send a blank email to\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.518+0000", "entityId": 10393, "properties": {"text": "Subject: amr research preview information\nvince ,\nfeel free to use this username and password to surf around the amrresearch site\nken\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kenneth parkhill / na / enron on 04 / 12 / 2001 01 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nwebmaster @ www . amrresearch . com ( craig mackay ) on 04 / 11 / 2001 05 : 34 : 08 pm\nto : kenneth parkhill\ncc :\nsubject : amr research preview information\nthe following is your user name and password for an amr research preview account .\nusername : parkhilll 51647\npassword : remain\nthe preview section will give you access to the executive summaries section and the presentation library . if you have any questions about amr research , please email info @ amrresearch . com or call ( 617 ) 542 - 6600 .\nto access the preview section , please go to the following url .\nhttp : / / www . amrresearch . com / members", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.522+0000", "entityId": 10394, "properties": {"text": "Subject: re : enl - dailyupdate - txt\nplease respond to lyris listmanager you have been subscribed to enl - dailyupdate - txt with the email address\n\" vkamins @ enron . com \"\nto unsubscribe , send a blank email to leave - enl - dailyupdate - txt - 13662 e @ estutenwsl 1 . energy . williams . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.527+0000", "entityId": 10395, "properties": {"text": "Subject: london status report - research weather effort\nvince ,\nfyi to give you background for tomorrow ' s telephone conference\nsteve is really a home - run hitter\nmike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 12 / 2001\n09 : 26 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : stephen bennett @ enron 04 / 12 / 2001 09 : 02 am\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : london status report\nhi mike ,\nbefore we meet with vince tomorrow - i thought we should drop you a line and\ngive you an idea as to what ' s been accomplished in the first week as well as\nsome of the challenges and problems we ' ve run into . this way we can make the\nmost effective use of vince ' s time .\n1 ) current products and customers\nin our first 3 days - we established 6 different customer groups -\nrepresenting approximately 40 traders plus additional fundamentals and\nanalytics folks . the groups are : uk trading , gas fundamentals , crude\ntrading , weather derivatives , continental power , and an internal trader\nnewsletter .\nwe ' ve built the following framework to address these customers - the key\ndeadlines are noted :\n0800 : uk trading / weather derivatives / fundamentals : prepare a 1 to 5 day uk\nspecific forecast and assess the 12 z runs of the ecmwf ( and ensembles ) , the\navn as well as earthsat ' s 1 - 5 day outlook . the traders are particularly\ninterested in the performance of the ecmwf as it feeds all of their demand\nmodels . we prepare a 1 page summary and give an idea as to any particular\nforecast biases - whether we feel things may come in warmer or colder than\nthe model . we brief the traders and field questions then provide our report\nto the fundamentals group .\n* * in the future we would like to be able to gather raw data from the avn and\nmrf to provide a series of choices which could be input into their demand\nmodels or at least be able to give them our \" best pick \" of guidance and how\nwe feel things may deviate from that pick .\n1030 am : obtain the uk met 6 - 10 and 1 - 5 day forecasts . provide comment for\nuk trading .\n1200 : uk trading / crude and products / weather derivatives : prepare a full\nqualitative analysis of oz models ( mrf / nogaps / canadian / ensembles ) . produce a\n6 to 10 day europe forecast and make any needed adjustments to the 1 to 5 day\nforecast . produce the global weather report including a global executive\nsummary ; analysis of teleconnections and their expected impact ; 1 to 5 and 6\nto 10 day forecasts compared to earthsat ; a 10 day city forecast table for\neuropean cities along with the expected effect on heating demand and finally\na \" port status report \" describing weather and port conditions in 11 worldwide\nports . update traders ( uk and wx deriv ) on changes or new trends in the oz\nmodels . provide a quality assessment of the uk met 6 to 10 and 1 to 5 day\nforecast for uk trading .\n1330 ( mon - wed ) : brief the crude and products groups in london and houston .\n1600 : review 12 z avn for any major forecast changes and communicate changes\nto traders .\nweekly : produce a weather article for \" critical mass \" - internal trading\nnewsletter .\nof course between 1000 and 1330 we are looking closely at the us weather for\nsupport to you guys in houston . i ' m still writing the daily us executive\nsummary as well as producing a 6 to 10 day us forecast .\n2 ) requested projects :\n* gas fundamentals has asked us to provide weather information for their\nmorning report and website . they would like to be able to gather objective\noutput from as many forecast models as we can get .\n* weather derivatives has asked for week ahead , month ahead , and seasonal\noutlooks for temperature and precipitation . they have also asked about\ncreating a tradeable \" nao index \" and developing an in - house model for\nforecasting nao .\n* continental power has asked for temperature and precipitation outlooks for\npower generation and hydro .\n* gas fundamentals , uk trading , continental power , weather derivatives and\ncrude and products have all asked for a european summer outlook for\ntemperature and precipitation . we expect to have this completed tomorrow .\n* the research group has asked for assistance in gathering climate data\nacross spain for temperature and precipitation .\n3 ) leads to follow up on :\n* elsa in houston asked us to contact some of the softs traders here and let\nthem know once we were up and running .\n* contact chris mahoney to determine if we can provide and additional support\nfor crude and products .\n* follow up on a potential morning breifing for continental power\n4 ) challenges :\n* we ' ve been told that we will be moving locations next week - which might\nentail corrupting or loosing the software and hardware configurations that\nhave taken almost a week to get fully established . it seems that this office\nfunctions on a \" hot desk \" system where people are constantly moving around .\nthis will make it very difficult to stay connected - as well as very\ndifficult for our customers to identify us .\n* administrative detail take an inordinate amount of time . assembling\nreports both physical and electronic can take nearly as long as actually\npreparing the reports !\n- - -\nmike ,\nok - i think that brings you up to speed . i ' ve been amazed at the amount of\nfeedback we ' ve already gotten and we ' ve only been here 3 days ! on that note\ni wanted to let you know that i am fully committed to this project . it seems\nthat we will not have a second meteorologist to assist tony by my planned\ndeparture date on the 20 th . as such - i can continue in my current role\nthrough my planned vacation - keeping me in london until the 27 th - which is\nmy current reservation back to houston . i am also open to remaining in\nlondon beyond the 27 th to ensure the success of this project .\nhopefully this gives you a good idea as to what ' s gone on in the first few\ndays here . we look forward to talking to you later today and with you and\nvince tomorrow .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.532+0000", "entityId": 10396, "properties": {"text": "Subject: option visualization\nvince and stinson ,\ni did some reserach on the option visualization . here is one of the findings .\ncheck this web site , the image looks impressive :\nthis is done through a free software livegraphics 3 d and mathematica .\ntake a look of the demo on the web site mentioned above to see if it is good\nenough for our purpose .\nzimin\nps :\n- - - - - - - - - - - - - -\nwhat is livegraphics 3 d ?\nlivegraphics 3 d is a non - commercial java 1 . 1 applet to display and\nrotate three - dimensional graphics produced by mathematica in\nhtml pages . it may be used without charge for any\nnon - commercial purposes . mathematica is a program for symbolic\nand numeric mathematics by wolfram research , inc . . wolfram\nresearch is also responsible for licensing livegraphics 3 d for\ncommercial purposes .\nlivegraphics 3 d enables all mathematica users to put almost any\nthree - dimensional graphics computed by mathematica directly onto\na html page , such that everyone with a web browser supporting\njava 1 . 1 ( e . g . communicator 4 . 0 or internet explorer 4 . 0 or higher )\ncan view and interactively rotate the graphics without any additional\nsoftware .\nadditionally livegraphics 3 d is able to show animations , calculate\nstereo graphics , integrate hyperlinks , and display bitmap\nbackgrounds . \u000f %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.538+0000", "entityId": 10397, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron freight markets\nenron freight markets ( efm ) launched its over - the - road trucking business this week . in addition , efm completed 199 intermodal transactions in the first week of april .\nena west power\nena west power recently closed the sale of two power projects . the 750 mw pastoria energy facility in kern county , california was sold to calpine and the 240 mw fountain valley power project in colorado was sold to black hills energy capital . given the power shortage in the west , ena is developing additional power generation in nevada , california and washington .\nenron industrial markets\nthe newsprint group of eim is working to revolutionize the newsprint market and bring financial rigor and market efficiencies to a business that has remained relatively unchanged for more than a century . the global newsprint market is a 23 billion dollar a year business with the north american market comprising one third . the group ' s originators , mid - marketers , and financial and physical traders offer our customers numerous financial and physical products not previously available in the market .\neim has made a substantial commitment to this business with the purchase of garden state paper company last year and the recent purchase of daishowa paper in quebec city . the number of transactions has grown exponentially with the physical trading alone reaching a nominal trading volume of more than $ 10 , 000 , 000 per month in little more than four months since opening . in addition to physical spot transactions , the desk offers our counterparties log - term fixed priced transactions , indexed based pricing , forward contracts , swaps , and derivative products .\nforest products\nforestweb inc . , an internet - based generator , aggregator and integrator of knowledge and information for the forest products industry , announced a new window to industry financial and risk management tools available from clickpaper . com . clickpaper allows the industry direct access to transactable prices for both physical and financial products , in an electronic format .\npaperloop . com , one of the leading online resources for the forest products industry , announced the addition of clickpaper . com in their emarketplace , which showcases various e - commerce companies and highlights their services . paperloop provides clickpaper . com exposure to its 250 , 000 + monthly users in the pulp , paper and converting industries .\nin the news\nken lay was the cover story for the april 2001 issue of continental magazine . he had positive things to say about his employees .\n\" sitting in his 50 th floor mahogany - paneled office overlooking his much - beloved downtown houston , lay , with a self - conscious smile , bows his head slightly as he ' s described as an innovative market maker . ' i really can ' t take any credit , he says . my employees are responsible for what enron does . ' what he does best , the missouri - born corporate icon says , is ' to create an atmosphere of empowerment and creativity and hire bright , innovative people who aren ' t afraid to take risks and try new things . \"\nwelcome\nnew hires\neim - craig rickard , lisa mcclendon\nena - ben brasseaux , stephen swisher , tamera joyner , vanessa griffin , kathleen ashton\nweekly enrononline statistics\nbelow are the latest figures for enrononline as of april 6 , 2001 .\n* total life to date transactions > 845 , 000\n* life to date notional value of transactions > $ 500 billion\nnuggets & notes\nmark your lunch calendars now ! the next ews brown bag is thursday , april 19 at 11 : 30 am . tim battaglia vp / eim will be discussing steel origination .\ncongratulations to peter del vecchio , eim senior counsel , and his wife , nair . they are the proud parents of dante valentin del vecchio , born april 3 , weighing 4 pounds , 8 ounces .\nnews from the global flash\nenron poland obtains gas trading license\non 22 nd march 2001 enron poland received a 10 - year gas trading license , valid for both domestic gas trading within poland as well as for gas exports . the license is a key component to our entering the gas trading market in poland and , coupled with the power trading license we obtained in 1999 , will give enron poland a strong position in the developing wholesale energy market . in the next two to three weeks , we expect to receive a cross - border trading license covering gas imports that are further regulated under the polish energy law ordinance on gas import diversification .\nenron wind announces first uk off - shore wind farm\non 5 th april 2001 , enron wind announced that it had been granted the right to initiate the planning process for its first uk offshore wind farm , located at gunfleet sands , 7 km from clacton - upon - sea in essex . construction is expected to start towards the end of 2002 , with the wind farm of 30 turbines being operational by q 4 2003 . enron wind is also actively involved in a number of on - shore projects in the uk , including the development of wind farms in wales and northern ireland .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary to enron corp . and its subsidiaries . it is intended for internal use only and should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.542+0000", "entityId": 10398, "properties": {"text": "Subject: enron : wefa luncheon may 1\nmartin :\nvince and lance want you to attend this presentation if possible . please\nlet me know if you will be going to lunch also .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 13 / 2001\n08 : 36 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 11 / 2001 12 : 36 pm\nto : lance cunningham / na / enron @ enron , vasant shanbhogue / hou / ect @ ect , alex\nhuang / corp / enron @ enron , sevil yaman / corp / enron @ enron\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : enron : wefa luncheon may 1\nwould you like to attend the presentation and join me for lunch\nwith wefa .\nany other suggestions re attendance .\nplease , let shirley know .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2001\n12 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" peter mcnabb \" on 04 / 11 / 2001 11 : 52 : 47 am\nto :\ncc : \" kemm farney \"\nsubject : enron : wefa luncheon may 1\ndear vince\nthanks for your voicemail and delighted to have you confirm lunch on may 1 .\nkemm farney the head of wefa ' s electric power services will be travelling\nwith me this time . i expect there may be other enron colleagues that may\ncare to join us for lunch so don ' t hesitate to invite as you see fit . for\nreservations purposes , perhaps you arrange to let me know numbers .\nkemm would also be prepared to informally present our current power outlook\nto a larger group at 11 : 00 , if this would be of interest .\nas you know , these types of presentations are part of all your wefa energy\nretainer package . i will also plan to update you with respect to our current\nmulti client study schedule for the remainder of the year .\nregards , peter\npeter a . mcnabb\nvice president energy , north america\nwefa inc .\n2 bloor st . w .\ntoronto , canada\nm 4 w 3 rl\n416 - 513 - 0061 ex 227\n- 2001 energy brochure . doc\n- wefaenergy _ factsheet for energy scenarios 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.547+0000", "entityId": 10399, "properties": {"text": "Subject: luigi zingales seminar on april 27\nrice / enron finance seminar participants :\nluigi zingales will present a paper co - authored with raghuram g . rajan ,\nentitled \" the great reversals : the politics of financial development in the\n20 th century . \" ? the full text of the paper is available in pdf form on the\nseminar website :\nhttp : / / www . ruf . rice . edu / ~ jgsfss\nthe baton for organizing the seminar series has been passed from barbara\nostdiek to myself . ? if you have questions regarding the series , please\ncontact me ( wangfa @ rice . edu or 713 - 348 - 5404 ) .\nas we have done in the past , we will post the abstract and a downloadable\nversion of the paper ( if available ) to the website a week or two before the\nseminar . ? the website will also provide a link to the speaker ' s homepage so\nyou can access his or her biographical information . ? if the paper is not\navailable at the website , i will send a hardcopy to interested jones school\nfaculty , to felecia jones ( economics ) , sorin sorescu ( university of houston ) ,\nand vince kaminski ( enron ) .\ni will e - mail an announcement before each seminar , reminding you of the\nseminar date , time , and location . ? the distribution list will include\neveryone that receives this e - mail . ? please let me know if you would like to\nbe deleted from the mailing list or if you know of someone who should be\nadded .\nalbert\nfu - kuo albert wang\nassistant professor\njones graduate school of management - - ms 531 ?\nrice university ?\n6100 main street ?\nhouston , tx 77005 ?\nphone : 713 - 348 - 5404 ?\nfax : ? ? ? ? 713 - 348 - 5251\nemail : wangfa @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.552+0000", "entityId": 10400, "properties": {"text": "Subject: luigi zingales seminar on april 27\nrice / enron finance seminar participants :\nluigi zingales will present a paper co - authored with raghuram g . rajan , entitled \" the great reversals : the politics of financial development in the 20 th century . \" the full text of the paper is available in pdf form on the seminar website : http : / / www . ruf . rice . edu / ~ jgsfss the baton for organizing the seminar series has been passed from barbara ostdiek to myself . if you have questions regarding the series , please contact me ( wangfa @ rice . edu or 713 - 348 - 5404 ) .\nas we have done in the past , we will post the abstract and a downloadable version of the paper ( if available ) to the website a week or two before the seminar . the website will also provide a link to the speaker ' s homepage so you can access his or her biographical information . if the paper is not available at the website , i will send a hardcopy to interested jones school faculty , to felecia jones ( economics ) , sorin sorescu ( university of houston ) , and vince kaminski ( enron ) .\ni will e - mail an announcement before each seminar , reminding you of the seminar date , time , and location . the distribution list will include everyone that receives this e - mail . please let me know if you would like to be deleted from the mailing list or if you know of someone who should be added .\nalbert\nfu - kuo albert wang\nassistant professor\njones graduate school of management - - ms 531\nrice university\n6100 main street\nhouston , tx 77005\nphone : 713 - 348 - 5404\nfax : 713 - 348 - 5251\nemail : wangfa @ rice . eduhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.557+0000", "entityId": 10401, "properties": {"text": "Subject: it support for research weather group\nmark ,\nfirst let me say thank you for your assistance in making it possible for meteorologists tony hamilton and stephen bennett to hit the groung running this week when they came over to london from houston . when we came into our offices in houston monday morning , tony and steve had already gathered and analyzed their data , prepared reports and were ready for the avistar briefings ! the cross - atlantic communication and data - sharing and manipulation went seamlessly ! we have great expectations for continued synergy with this new set - up .\nthe research weather group is excited about our expanded responsibilities in london . we are committed to maximizing the value added we can provide to the weather derivatives , crude & products , uk trading , continental power , and analytics efforts . we are , however , also extremely dependent on computers and communication , associated software and peripherals . plus the datastreams we access and the reports we generate are very time - critical in their value to traders . we need a very stable environment , with reliable back - up and 24 - hour support to fulfill our commitments to providing the trading operation with timely , never - fail research and information flows .\nso , thanks again , and please do whatever you can to continue this high level of support by passing this letter of praise and thanks to your team , and show them our appreciation for your efforts .\nmike roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.562+0000", "entityId": 10402, "properties": {"text": "Subject: my resume\nmolly ,\nwe would like to bring this student as a summer intern ( the last one ,\nwe are running out of space ) .\ni shall send you another message regarding his proposed dates .\nthanks . i hope you have a very happy easter .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 13 / 2001 10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzhendong xia on 04 / 12 / 2001 03 : 58 : 25 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : my resume\nhi , dr . kaminski :\nglad to get your reply . here is my resueme . if you wanna know more\nabout me , please feel free to contact me . thanks .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318\n- cv . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.567+0000", "entityId": 10403, "properties": {"text": "Subject: it support for research weather group\nmark ,\nfirst let me say thank you for your assistance in making it possible for\nmeteorologists tony hamilton and stephen bennett to hit the groung running\nthis week when they came over to london from houston . when we came into our\noffices in houston monday morning , tony and steve had already gathered and\nanalyzed their data , prepared reports and were ready for the avistar\nbriefings ! the cross - atlantic communication and data - sharing and manipulation\nwent seamlessly ! we have great expectations for continued synergy with this\nnew set - up .\nthe research weather group is excited about our expanded responsibilities in\nlondon . we are committed to maximizing the value added we can provide to the\nweather derivatives , crude & products , uk trading , continental power , and\nanalytics efforts . we are , however , also extremely dependent on computers\nand communication , associated software and peripherals . plus the datastreams\nwe access and the reports we generate are very time - critical in their value\nto traders . we need a very stable environment , with reliable back - up and\n24 - hour support to fulfill our commitments to providing the trading operation\nwith timely , never - fail research and information flows .\nso , thanks again , and please do whatever you can to continue this high level\nof support by passing this letter of praise and thanks to your team , and show\nthem our appreciation for your efforts .\nmike roberts", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.572+0000", "entityId": 10404, "properties": {"text": "Subject: my resume\nmolly ,\nwe would like to bring this student as a summer intern ( the last one ,\nwe are running out of space ) .\ni shall send you another message regarding his proposed dates .\nthanks . i hope you have a very happy easter .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 13 / 2001\n10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzhendong xia on 04 / 12 / 2001 03 : 58 : 25 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : my resume\nhi , dr . kaminski :\nglad to get your reply . here is my resueme . if you wanna know more\nabout me , please feel free to contact me . thanks .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318\n- cv . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.577+0000", "entityId": 10405, "properties": {"text": "Subject: option visualization\nvince and stinson ,\ni did some reserach on the option visualization . here is one of the findings .\ncheck this web site , the image looks impressive : http : / / home . online . no / ~ espehaug / virtualworld / virtualoptionworld . html\nthis is done through a free software livegraphics 3 d and mathematica .\ntake a look of the demo on the web site mentioned above to see if it is good enough for our purpose .\nzimin\nps :\n- - - - - - - - - - - - - -\nwhat is livegraphics 3 d ?\nlivegraphics 3 d is a non - commercial java 1 . 1 applet to display and\nrotate three - dimensional graphics produced by mathematica in\nhtml pages . it may be used without charge for any\nnon - commercial purposes . mathematica is a program for symbolic\nand numeric mathematics by wolfram research , inc . . wolfram\nresearch is also responsible for licensing livegraphics 3 d for\ncommercial purposes .\nlivegraphics 3 d enables all mathematica users to put almost any\nthree - dimensional graphics computed by mathematica directly onto\na html page , such that everyone with a web browser supporting\njava 1 . 1 ( e . g . communicator 4 . 0 or internet explorer 4 . 0 or higher )\ncan view and interactively rotate the graphics without any additional\nsoftware .\nadditionally livegraphics 3 d is able to show animations , calculate\nstereo graphics , integrate hyperlinks , and display bitmap\nbackgrounds . \u0005", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.581+0000", "entityId": 10406, "properties": {"text": "Subject: erisk interview\nvince :\nyou may inteersted in the following interview which appeared on erisk . com last friday . were rick buy ' s comments about real options taken out of context ?\nyann bonduelle leads a 25 - person team for in london\nthat applies decision analytics and real options theory to dilemmas ranging from\nvaluing a biotechnology product to deciding whether to kill off an internet financial\nservices business . here he talks to rob jameson about whether this \" theoretical \"\napproach to risky decision - making really helps businesses in their day - to - day\nbalancing of risk and reward . yann holds a ph . d degree from the\nengineering - economic systems department at stanford university , where he\nstudied how to apply engineering decision and design analysis to wider economic ,\nsocial and business issues . he then worked as a consultant applying his decision\nanalysis methodologies to problems that included consumer decision making\nabout innovative products such as electrical vehicles , before joining the\n team in 1998 where he is now a partner . he has\nwritten widely on the application of real options , particularly in fields of life\nsciences , technology , and e - business , and has a special interest in the\nrelationship between risk assessment , validation of risk data and financial\nvaluation .\nhow would you sum up your approach to business decision analytics ?\nmost of our projects are set up to help businesses that face massive uncertainties\nof some kind . decision analysis helps people explore problems , and redesign\ntheir decision - making process to increase the chance of them making the right\nchoices . for example , imagine a biotechnology company that has to decide\nwhether to put itself up for sale , enter a strategic relationship , or continue to go it\nalone . each of those options will lead on to other value - enhancing or\nvalue - destroying scenarios . we work with the client firstly to understand and\nchallenge the assumptions associated with their most likely business\ndevelopment scenarios , and secondly to help them identify decisions that would\nhelp protect or increase the value of their technology or company . quantifying\ntechnical , regulatory or commercial risks can sometimes be a challenge . in\ntechnology - intensive fields , however , we have found that managers ( often\nscientists ) are quite willing to describe the main sources of risk and to assess the\nprobability that a risky event may or may not occur .\nhow does this kind of risky decision - making relate to real options valuation ?\nyou can ' t say what the value of an asset is until you decide what you might use it\nfor . this means that , to form an opinion about the value of an asset , you must\nexplore the most important decisions that you are likely to face and that will have\na significant impact on the value of the asset . so decision analysis helps to define\nthe business problem and to uncover a stream of inter - related choices that are , in\neffect , \" real options \" . for example , if a company is trying to decide whether to\ninvest in a risky project , does it have the option to pull the plug on the investment\nat an early stage if a pilot project gives a poor showing ? that \" real \" option reduces\nthe riskiness , and increases the potential value , of the original business plan . so\nreal options and decision analysis are really very close to one another . but you\ndon ' t have to believe in real options valuations to find decision analysis useful .\nwhat do you mean ?\noften decision analysis can help managers to identify the key risks in a strategic\ndecision , attach weights to these , and show clearly how they interact . for many\ncompanies this \" risk discovery \" is the most valuable part of the exercise .\nreal options theory has been criticised recently for being , well , not very realistic .\nis it a practical approach to valuation ?\nit ' s important not to hold out unrealistic hopes for the real options approach to\nvaluation . but it ' s an exciting methodology , and it ' s also sometimes the only\nreasonable way of tackling a very practical problem . for example , when a firm\nsells an asset , the firm might have to make an independent valuation of the asset\nfor legal or corporate governance reasons . but in many businesses today there\nare assets that simply cannot be valued in traditional ways because they are\ndifficult to link to cashflows . the cashflows might not exist because the business\nis so novel , or they might be hidden . in some respects , a real options analysis is\nmuch closer to reality than a traditional valuation .\nhow , exactly ?\nthe classic way of valuing a future business is to base the calculation on a single\ndiscounted cashflow that is projected from the activity . but this doesn ' t really take\naccount of the way that scenarios can change , or the fact that managers can\nreact to situations as they unfold . i mentioned earlier the option to kill a project or\nbusiness at an early point . but the upside is that if a pilot project yields exciting\nresults , it might allow you to invest more quickly and reach a revenue - generating\nposition in a much shorter time than the original business plan allows . so to value\na future business we really need to look at the cashflows that might arise in a\nnumber of scenarios . this is \" realistic \" in that , if the project gets the green light ,\nyou can bet that its managers will be taking that kind of decision on the ground all\nof the time .\nwhat ' s the most challenging part of mapping out a decision analysis tree ?\nmodelling the links between the variables in the decision tree - - it ' s something we\nhave particular strengths in . but it ' s also tricky to know when it ' s worthwhile to\nadd on more detail , and when it ' s better to draw back .\nin a recent erisk interview , rick buy , chief risk officer of enron , said that over\nthe two years that enron had experimented with the real options concept , it had\nfound it of \" limited , but not zero , use \" . why is there a slight air of cynicism about\nreal options in some businesses today ?\nit ' s strange that enron would profess this attitude . a few years ago , it was widely\nreported to have used real option valuation to support a very profitable purchase\ndecision . they had apparently bought cheaply some older generators in the us\nthat generated electricity at a very high cost . they knew that they could mothball\nthem for most of the year , and switch them on only when the electricity prices\nwere sufficiently high . nevertheless , from a customer ' s point of view , there might\nhave been too much hype about the methodology . one problem in the application\nof real options technology is that there are , perhaps , too many people trying to\ntweak reality to conform to their \" perfect \" model . it ' s better to aim for something\npragmatic that clearly improves decisions over time . in one pharmaceutical\ncompany we worked with recently , we worked together to improve their valuation\nanalyses by moving from a single discounted cash - flow methodology to one that\ntook into account a rather small set of business scenarios . it would have shocked\nsome academics and consultants , but it was an undeniable improvement on the\noriginal approach .\nwhy do you think financial institutions are only just picking up on your field , when\nit ' s been applied in the energy industry for 15 years or more ?\nit might have something to do with the relative stability of the banking world until\nrecently , and the relatively high margins that banking lines have enjoyed . also ,\nindustries such as energy and pharmaceuticals tend to have more people with an\nengineering and science background . the dynamic modelling of decisions is\nbased on methodologies originally dreamed up to help engineers design electrical\nand electronic systems . this approach is quite distinct from the black - scholes\noptions analyses that the banking world is familiar with : the black - scholes\napproach is difficult to apply in a real options context , because everything\ndepends on the assumptions that you put into the black - scholes model . the real\noptions approach , on the other hand , is in a sense a way of modelling those\nassumptions more explicitly . but banks are now adopting some of the thinking ,\nparticularly in terms of using decision analysis to pinpoint risks and identify\nvalue - enhancing decisions , and in using real options methodologies to sort the\nwheat from the chaff in their more speculative investments .\nyou mean their internet investments ?\nwe have recently worked with a major dutch bank that had arrived late in the\ninternet game , and then made a considerable number of investments . now that\neven b 2 b business models have questions marks hanging over them , and many\nb 2 c businesses are already under water , they wanted to work out which\ninvestments might contain real value . in this situation , it ' s a case of ranking\npriorities and helping the bank make sense of what could turn into a\ndecision - making chaos , rather than sophisticated valuation . it ' s not just a case of\nwhether an internet investment should be killed off , but the problem of whether\ncontinued funding for it should take priority over budget demands for major it\nupgrades in existing businesses , and so on . these are very practical questions\nand they have to be answered somehow .\nare there other areas in financial institutions that seem accessible to this\napproach ?\nyes , for example , we think it can help work out the value associated with various\napproaches to marketing a new bank business line . at the moment , many banks\nare chasing high - net - worth individuals , but it ' s not always clear which kind of\nindividual a particular bank should decide to pursue . the bank might have a\nregional or industry advantage already in one particular area , for example , music\nbusiness people . but what is the churn rate associated with this kind of\ncustomer ? what is the profitability associated with the customer segment ? will\nthe time and cost benefits of the advantages the bank has in the sector outweigh\nany disadvantages ? weighing up this kind of complex problem , where one thing\nleads to and depends on another , is what decision and real options analysis is\ngood at .\nis there any way of rigorously backtesting or validating real options valuations ?\nin all honesty , not really . the problem is that by the time the option is exercised ,\nmany of the variables surrounding it will have changed , so it ' s difficult to compare\nour original analysis with how things turn out . however , the value of the analysis\ncomes not only from the final number ( \" the value of this asset is x \" ) but also from\nproviding a thorough process , an outsider ' s point of view , an understanding of the\nsources of value and , in short , a bit of clearer thinking .\nif real options are so important , why are they so rarely cited in communications to\nshareholders and equity analysts ?\nthe battle is still to convince companies to use real option valuations as a\nsignificant part of their internal analysis . even in major companies in the oil & gas ,\nand pharmaceutical sectors , where the ideas have taken some root internally ,\nthere seems to be a lot of reluctance to use them in external communication . we\nare working with analysts to understand better what they need to if we are to move\nthings on to the next step .\nhow does the riskiness of a business , in terms of the major strategic dilemmas it\nfaces , relate to its share value , and its capital structure ?\nthat ' s a big question . it ' s related to work my colleagues do on the optimal\ndebt - to - equity capital structure and gearing of a corporation , which in turn arises\nout of the likely revenue and cost volatilities of the business . the more volatile the\nbusiness , the less gearing it can sustain , and the higher the cost of capital . our\nwork touches on this in the sense that exercising ( many ) specific real options can\nallow a firm to change its nature , and thus also its risk profile . one classic\nexample is the pharmaceutical industry . a host of different kinds of companies\nservice that industry from \" big pharma \" companies through to smaller\nbiotechnology startups and run - of - the - mill contract research organisations . a\ncontract research organisation is often operating within a very competitive\nenvironment with relatively few risks - - it does not invest in drug development itself\n- - but also very thin margins . but in fact , a few of these companies have used the\nskills and knowledge they have developed to become much more substantial and\nprofitable healthcare companies of various kinds . it ' s an example of a company\nexercising the real options that lie within its skills and assets to transform its own\nidentity .\nrob jameson , erisk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.586+0000", "entityId": 10407, "properties": {"text": "Subject: dg energy software\nvince ,\nhere is my edited version of the software license agreement . can you read\nit once before i forward it for internal approval ? i specified that the\n$ 100 , 000 covers a single user perpetural license , access to source after\none year , and covers maintenance and support for one year .\nany suggestions ?\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.591+0000", "entityId": 10408, "properties": {"text": "Subject: java for managers ! ! !\nvince ,\ndurasoft ( who just taught the java class for our group ) offers a 3 - day short\ncourse in java for managers . details are below , if you are interested .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 16 / 2001\n12 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" siva thiagarajan \" on 04 / 16 / 2001 11 : 25 : 50 am\nplease respond to \" siva thiagarajan \"\nto :\ncc :\nsubject : java for managers ! ! !\nhi stinson ,\n?\nthanks for meeting with us on thursday . ? we enjoyed\ntalking with you .\n?\nas per our discussion , i have attached the course\noutline of java for managers along with this email .\nafter our conversation with you we think this course\nmay be a little bit heavy for your group . ? but we can definetly\ntake it down to concepts level and make it appropriate for\nour audience . ? please review and let me know , if this\ncourse would be of value to you . ? this is a 3 day course\nand costs $ 11 , 000 ( maximum of 15 students ) .\n?\nregards ,\n?\n- siva\n- oojavaformanagers . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.596+0000", "entityId": 10409, "properties": {"text": "Subject: ibuyit approvers\nah , these wonderful new systems ! i submitted an order on the \" new \" ibuyit\nsite and sent it for approval and it went to every manager in our group !\ni called them and told them that only you were the approver and they do not\neven have a user id set up for you . please fill out the below security document\nand i will forward it on to them .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 16 / 2001 03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : michael loft / enron @ enronxgate on 04 / 16 / 2001 03 : 18 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit approvers\nhi shirley\nin processing your ibuyit approval change request , i discovered that vince kaminski has not been set up with a user id in the eprocurement system . please have him fill out the attached security form and send it to - - sap security @ enron . com\ni have already selected the approver role on the second page . we just need the personal information on page one filled out for security purposes . once this is done we can get vince assigned as the approver for cost center 107043 .\nthanks ,\nmichael", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.601+0000", "entityId": 10410, "properties": {"text": "Subject: re : pserc industrial advisory board meeting invitation\nmr . kaminski ,\nthank you for responding . i ' m sorry you won ' t be able to attend , but very\nmuch appreciate your willingness to reconsider your decision about\nparticipating in pserc . we will certainly keep you informed about on - going\nand new pserc activities that may be of interest to enron .\nbest regards ,\ndennis ray\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 16 , 2001 2 : 02 pm\nto : djray @ engr . wisc . edu\ncc : vince . j . kaminski @ enron . com\nsubject : re : pserc industrial advisory board meeting invitation\ndear mr . ray ,\ni regret to inform you that due to very heavy workload we cannot attend\nthe power systems engineering research center ' s\nupcoming industrial advisory board meeting in oak brook .\nour work load does not leave us much time to get involved\nwith pserc at this moment . we would very much like to stay\nin touch and plan to reconsider our decision in the second half of this\nyear .\nvince kaminski\n\" dennis ray \" on 03 / 27 / 2001 04 : 46 : 44 pm\nto : \" vince kaminski \"\ncc :\nsubject : pserc industrial advisory board meeting invitation\nmr . kaminski ,\ngreetings . bob thomas , shmuel oren and i invite you to attend the power\nsystems engineering research center ' s upcoming industrial advisory board\nmeeting in oak brook , il . it will be held on may 31 - june 1 .\nas you know from lance and alex , this is an opportunity to meet university\nresearchers and industrial members of pserc . the meeting also has\npresentations on pserc activities and research projects , pserc business\ndiscussions , current topic discussions , and a tutorial . our current topics\ndiscussion will be on iso / rto issues , and will involve executives from\nseveral isos in dialog with university researchers .\nplease let me know if you have any questions . we hope to see you there so\nthat we can talk about any questions you might have about pserc .\ndennis ray , ph . d .\nexecutive director\npower systems engineering research center\n608 - 265 - 3808\n( see attached file : directions . doc )\n( see attached file : iab _ meeting _ may 2001 . doc )\n( see attached file : iab _ registration _ form . doc )\n( see attached file : pserc members . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.605+0000", "entityId": 10411, "properties": {"text": "Subject: re : pserc industrial advisory board meeting invitation\ndear mr . ray ,\ni regret to inform you that due to very heavy workload we cannot attend\nthe power systems engineering research center ' s\nupcoming industrial advisory board meeting in oak brook .\nour work load does not leave us much time to get involved\nwith pserc at this moment . we would very much like to stay\nin touch and plan to reconsider our decision in the second half of this year .\nvince kaminski\n\" dennis ray \" on 03 / 27 / 2001 04 : 46 : 44 pm\nto : \" vince kaminski \"\ncc :\nsubject : pserc industrial advisory board meeting invitation\nmr . kaminski ,\ngreetings . bob thomas , shmuel oren and i invite you to attend the power\nsystems engineering research center ' s upcoming industrial advisory board\nmeeting in oak brook , il . it will be held on may 31 - june 1 .\nas you know from lance and alex , this is an opportunity to meet university\nresearchers and industrial members of pserc . the meeting also has\npresentations on pserc activities and research projects , pserc business\ndiscussions , current topic discussions , and a tutorial . our current topics\ndiscussion will be on iso / rto issues , and will involve executives from\nseveral isos in dialog with university researchers .\nplease let me know if you have any questions . we hope to see you there so\nthat we can talk about any questions you might have about pserc .\ndennis ray , ph . d .\nexecutive director\npower systems engineering research center\n608 - 265 - 3808\n- directions . doc\n- iab _ meeting _ may 2001 . doc\n- iab _ registration _ form . doc\n- pserc members . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.610+0000", "entityId": 10412, "properties": {"text": "Subject: 1 / 2 day seminar : the new texas electric market\nfyi ,\ni thought some of you might be interested in this half day seminar at ut .\nbill hogan , as well as speakers from the iso and puc are scheduled to speak .\ni plan to attend . if we have more than 3 , we can register as a group for\n$ 145 / person - if more than 10 attend , the price is $ 100 / person . ross\nbaldick , one of martin lin ' s and my advisor is the moderator . it may prove\nboth interesting and contentious will hogan being there .\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 04 / 16 / 2001\n09 : 51 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" lance b . cunningham \" on 04 / 15 / 2001 05 : 06 : 06 pm\nto : lance . cunningham @ enron . com\ncc :\nsubject : fwd : the new texas electric market\n> delivered - to : lbcunningham @ mail . utexas . edu\n> date : tuesday , 10 apr 2001 23 : 30 : 14 cst\n> to : lbcunningham @ mail . utexas . edu\n> from : engineering foundation\n> subject : the new texas electric market\n>\n> dear mr . cunningham ,\n>\n>\n> \" the new texas electric market and how it\n> compares to the california market \"\n>\n> may 2 , 2001 - 1 : 00 to 5 : 00 p . m .\n>\n> seminar presented by the college of engineering ,\n> the university of texas at austin .\n>\n> electric reliability council of texas ( ercot )\n> plans to open a pilot retail market in most areas\n> of the texas region on june 1 , 2001 . this\n> presentation will address aspects of the ercot\n> market and how texas will avoid experiencing the\n> same problems as california . ut austin ' s center\n> for lifelong engineering is introducing a 1 / 2 day\n> seminar to provide an overview of how this market\n> will be structured .\n>\n> presenters will include officials from harvard ,\n> university of california energy institute , ercot ,\n> and the public utility commission of texas .\n>\n> for more information or to register , please visit\n> our website at www . lifelong . engr . utexas . edu , or\n> contact sharon campos at 512 - 471 - 3506 , or\n> scampos @ mail . utexas . edu .\n>\n> ( this announcement was sent as a courtesy\n> from ut - austin college of engineering to\n> ut engineering alumni . it was e - mailed\n> from the college ' s general e - mail address ,\n> which is flagged as ' engineering\n> foundation . ' if you wish to discontinue\n> further email messages from the college of\n> engineering , please reply to this message\n> with your full name , degree information\n> and \" unsubscribe . \" thank you ! )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.616+0000", "entityId": 10413, "properties": {"text": "Subject: re : pserc industrial advisory board meeting invitation\ndear mr . ray ,\ni regret to inform you that due to very heavy workload we cannot attend\nthe power systems engineering research center ' s\nupcoming industrial advisory board meeting in oak brook .\nour work load does not leave us much time to get involved\nwith pserc at this moment . we would very much like to stay\nin touch and plan to reconsider our decision in the second half of this year .\nvince kaminski\n\" dennis ray \" on 03 / 27 / 2001 04 : 46 : 44 pm\nto : \" vince kaminski \"\ncc :\nsubject : pserc industrial advisory board meeting invitation\nmr . kaminski ,\ngreetings . bob thomas , shmuel oren and i invite you to attend the power\nsystems engineering research center ' s upcoming industrial advisory board\nmeeting in oak brook , il . it will be held on may 31 - june 1 .\nas you know from lance and alex , this is an opportunity to meet university\nresearchers and industrial members of pserc . the meeting also has\npresentations on pserc activities and research projects , pserc business\ndiscussions , current topic discussions , and a tutorial . our current topics\ndiscussion will be on iso / rto issues , and will involve executives from\nseveral isos in dialog with university researchers .\nplease let me know if you have any questions . we hope to see you there so\nthat we can talk about any questions you might have about pserc .\ndennis ray , ph . d .\nexecutive director\npower systems engineering research center\n608 - 265 - 3808\n- directions . doc\n- iab _ meeting _ may 2001 . doc\n- iab _ registration _ form . doc\n- pserc members . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.621+0000", "entityId": 10414, "properties": {"text": "Subject: reschedule meeting for duffie report\nhi shirley ,\nthis email is in reference to your vmail regarding my rescheduling my\nmeeting on tomorrow at 2 pm with vince . that is fine with me because the\ncredit guys ( craig chaney and jeff kinneman ) have had a change in strategy .\nthey have asked us to take some time to evaluate moody ' s riskcalc software .\ntherefore i have had to put the duffie project on hold for the last few\ndays . however i am about two thirds through the duffie documents and will\nresume studying them as soon as i get through the lengthy riskcalc documents .\nlet me know if he still wants to meet later in the week\nthanks ,\niris .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.626+0000", "entityId": 10415, "properties": {"text": "Subject: godbole report\nvince / stinson ,\nthis is a summary fo the report submitted by the godbole committee appointed\nby the state government to review the dabhol project .\nthe report clearly suggests renegotiation on the tariff . a lot of what they\nmention is something we won ' t agree to . however , to me it seems apparent\nthat this can be worked out .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n04 / 16 / 2001 09 : 05 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nanshuman srivastav\n04 / 16 / 2001 08 : 40 : 04 am\nto : sandeep kohli / enron _ development @ enron _ development\ncc :\nsubject : godbole report\nattached is a small summary that gaurav and rajesh put together on the\ngodbole report . this is confidential .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by anshuman srivastav / enron _ development on\n04 / 16 / 2001 07 : 08 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngaurav varshney\n04 / 16 / 2001 07 : 04 pm\nto : anshuman srivastav / enron _ development @ enron _ development\ncc :\nsubject :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.631+0000", "entityId": 10416, "properties": {"text": "Subject: re : my resume\nwe ' ll get this offer out today , vince .\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : friday , april 13 , 2001 10 : 03 am\nto : molly magee / hou / ect @ enron\ncc : kaminski , vince ; crenshaw , shirley ; huang , alex\nsubject : my resume\nmolly ,\nwe would like to bring this student as a summer intern ( the last one ,\nwe are running out of space ) .\ni shall send you another message regarding his proposed dates .\nthanks . i hope you have a very happy easter .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 13 / 2001\n10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzhendong xia on 04 / 12 / 2001 03 : 58 : 25 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : my resume\nhi , dr . kaminski :\nglad to get your reply . here is my resueme . if you wanna know more\nabout me , please feel free to contact me . thanks .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318\n- cv . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.639+0000", "entityId": 10417, "properties": {"text": "Subject: re : my resume\nwe ' ll get this offer out today , vince .\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : friday , april 13 , 2001 10 : 03 am\nto : molly magee / hou / ect @ enron\ncc : kaminski , vince ; crenshaw , shirley ; huang , alex\nsubject : my resume\nmolly ,\nwe would like to bring this student as a summer intern ( the last one ,\nwe are running out of space ) .\ni shall send you another message regarding his proposed dates .\nthanks . i hope you have a very happy easter .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 13 / 2001 10 : 03 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzhendong xia on 04 / 12 / 2001 03 : 58 : 25 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : my resume\nhi , dr . kaminski :\nglad to get your reply . here is my resueme . if you wanna know more\nabout me , please feel free to contact me . thanks .\nzhendong xia\ngeorgia institute of technology\nschool of industrial and systems engineering\nemail : dengie @ isye . gatech . edu\ndengie @ sina . com\ntel : ( h ) 404 - 8975103\n( o ) 404 - 8944318\n- cv . doc >\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.647+0000", "entityId": 10418, "properties": {"text": "Subject: re : prc feedback forms\ngina ,\ni shall be glad to speak with you . shirley crenshaw will call you to set up a\nmeeting .\nvince\nfrom : gina corteselli / enron @ enronxgate on 04 / 16 / 2001 01 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : prc feedback forms\nmr . kaminski :\ni would like to try to get on your schedule for a few moments this week to\ndiscuss the draft prc 360 evaluation forms ( provided below for your info ) to\nensure that the criteria and skills and behaviors we have used are adequate\nfor your employee population . the generic forms that were presented at the\nprc committee meeting a week ago may best reflect commercial employees , and\nto some extent commercial support employees , and may not be entirely\nappropriate for employees in some of the specialized technical and technical\nareas . i would appreciate your input on this so that , if possible and time\npermitting , we can try to tailor the form to suit needs across the\norganization .\none simple solution may be to add a skills / behaviors block requesting\nevaluation and feedback on the employees specific job and performance ,\nanother solution would be to add job specific behaviors and descriptors to\nthe list of those already developed ( second attachment below ) . i would\nwelcome your thoughts and a few moments of your time to chat with you about\nthis .\nmany thanks ,\ngina corteselli\nglobal performance management\n713 853 - 3377\n713 569 - 5589 ( mobile )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.654+0000", "entityId": 10419, "properties": {"text": "Subject: re : prc feedback forms\ngina ,\ni shall be glad to speak with you . shirley crenshaw will call you to set up a meeting .\nvince\nfrom : gina corteselli / enron @ enronxgate on 04 / 16 / 2001 01 : 12 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : prc feedback forms\nmr . kaminski :\ni would like to try to get on your schedule for a few moments this week to discuss the draft prc 360 evaluation forms ( provided below for your info ) to ensure that the criteria and skills and behaviors we have used are adequate for your employee population . the generic forms that were presented at the prc committee meeting a week ago may best reflect commercial employees , and to some extent commercial support employees , and may not be entirely appropriate for employees in some of the specialized technical and technical areas . i would appreciate your input on this so that , if possible and time permitting , we can try to tailor the form to suit needs across the organization .\none simple solution may be to add a skills / behaviors block requesting evaluation and feedback on the employees specific job and performance , another solution would be to add job specific behaviors and descriptors to the list of those already developed ( second attachment below ) . i would welcome your thoughts and a few moments of your time to chat with you about this .\nmany thanks ,\ngina corteselli\nglobal performance management\n713 853 - 3377\n713 569 - 5589 ( mobile )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.659+0000", "entityId": 10420, "properties": {"text": "Subject: re : stanford mba - interview\nhi vince ,\nunfortunately , i have not heard from him . he also forwarded his resume to\nmauricio mora , who asked if we could interview him . when i asked celeste\nabout it back then she decided against it . if you need some help tracking\nhim down , let me know .\nthanks ,\nalthea\nvince j kaminski @ ect\n04 / 16 / 2001 01 : 53 pm\nto : althea gordon / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : stanford mba - interview\nalthea ,\ni was trying to get in touch with this guy .\ndid he contact you by any chance ? he missed\nthe interviews on the campus .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001\n01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" seade , juan j . \" on 03 / 19 / 2001 01 : 15 : 56 am\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : stanford mba - interview\ndear vincent ,\nas i told you on the phone on friday , i am very interested in a summer\ninternship at enron . i would like to point out that i want to pursue a\ncareer in trading , and i am especially interested in derivatives . given that\nenron is a pioneer in the market making of energy , broadband and weather\nderivatives , i find it a company i would be most interested in working for .\ni believe that you will find my background of interest to your firm , and i\nhope to be interviewed by yourself and other colleagues of yours . i have\nfinal exams from march 19 - 22 , but would be most willing to travel to houston\nfor interviews any time from friday march 23 rd onwards . i hope to hear from\nyou soon .\nbest regards ,\njuan seade\nmba class of 2002\nstanford business school\n796 escondido road apt . 29 c\nstanford , ca 94305\ntel : ( 650 ) 497 - 3705\nemail : jseade @ stanford . edu\n>\n- resume juan seade . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.664+0000", "entityId": 10421, "properties": {"text": "Subject: re : stanford mba - interview\nhi vince ,\nunfortunately , i have not heard from him . he also forwarded his resume to mauricio mora , who asked if we could interview him . when i asked celeste about it back then she decided against it . if you need some help tracking him down , let me know .\nthanks ,\nalthea\nvince j kaminski @ ect\n04 / 16 / 2001 01 : 53 pm\nto : althea gordon / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : stanford mba - interview\nalthea ,\ni was trying to get in touch with this guy .\ndid he contact you by any chance ? he missed\nthe interviews on the campus .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001 01 : 51 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" seade , juan j . \" on 03 / 19 / 2001 01 : 15 : 56 am\nto : \" ' vkamins @ enron . com ' \"\ncc :\nsubject : stanford mba - interview\ndear vincent ,\nas i told you on the phone on friday , i am very interested in a summer\ninternship at enron . i would like to point out that i want to pursue a\ncareer in trading , and i am especially interested in derivatives . given that\nenron is a pioneer in the market making of energy , broadband and weather\nderivatives , i find it a company i would be most interested in working for .\ni believe that you will find my background of interest to your firm , and i\nhope to be interviewed by yourself and other colleagues of yours . i have\nfinal exams from march 19 - 22 , but would be most willing to travel to houston\nfor interviews any time from friday march 23 rd onwards . i hope to hear from\nyou soon .\nbest regards ,\njuan seade\nmba class of 2002\nstanford business school\n796 escondido road apt . 29 c\nstanford , ca 94305\ntel : ( 650 ) 497 - 3705\nemail : jseade @ stanford . edu\n>\n- resume juan seade . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.669+0000", "entityId": 10422, "properties": {"text": "Subject: fyi\n\" how much do firms hedge with derivatives ? \"\nby : wayne r . guay\nuniversity of pennsylvania\ns . p . kothari\nmassachusetts institute of technology\ndocument : available from the ssrn electronic paper collection :\ndate : march 2001\njohn d . martin\ncarr p . collins chair in finance\nfinance department\nbaylor university\npo box 98004\nwaco , tx 76798\n254 - 710 - 4473 ( office )\n254 - 710 - 1092 ( fax )\nj _ martin @ baylor . edu\nweb : http : / / hsb . baylor . edu / html / martinj / home . html", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.673+0000", "entityId": 10423, "properties": {"text": "Subject: re : weather and energy price data\ndear dr . kaminski :\nthank you very much for the natural gas information . the electricity price\nis also definitely of great help if it can be available .\ncould you kindly please let me know the contact information for ft or\nmegawatt daily ? i will contact them asap to get their permission for the\naccess of the price data .\nthank you very much and have a great day !\nmulong\non mon , 16 apr 2001 vince . j . kaminski @ enron . com wrote :\n>\n> mulong ,\n>\n> we shall send you natural gas henry hub prices right away .\n> please look at the last winter and the winter of\n> 95 / 96 .\n>\n> we shall prepare for you the electricity price\n> information ( cinergy , cobb and palo verde ) but\n> you have to approach ft ( the publishers of\n> megawatts daily , a newsletter that produces the price\n> index we recommend using ) and request the permision\n> to use the data . we are not allowed to distribute\n> this information .\n>\n> please , explain that this is for academic research and that\n> we can produce the time series for you ,\n> conditional on the permission from the publishers\n> of megawatts daily .\n>\n> vince kaminski\n>\n>\n>\n>\n> mulong wang on 04 / 15 / 2001 03 : 43 : 26 am\n>\n> to : vkamins @ ect . enron . com\n> cc : richard macminn\n> subject : weather and energy price data\n>\n>\n> dear dr . kaminski :\n>\n> i am a phd candidate under the supervision of drs . richard macminn and\n> patrick brockett . i am now working on my dissertation which is focused on\n> the weather derivatives and credit derivatives .\n>\n> could you kindly please offer me some real weather data information about\n> the price peak or plummet because of the weather conditions ?\n>\n> the past winter of 2000 was very cold nationwide , and there may be a\n> significant price jump for natural gas or electricity . could you\n> please offer me some energy price data during that time period ?\n>\n> your kind assistance will be highly appreciated and have a great day !\n>\n> mulong\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.679+0000", "entityId": 10424, "properties": {"text": "Subject: market opportunity from ut generators\ndoug , fyi\ni ' m sure that baldick would just as soon sell us energy as ae . plus we have\na better handle on market opportunites . see his e - mail below .\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 04 / 16 / 2001\n10 : 08 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ross baldick \" on 04 / 15 / 2001 03 : 37 : 59 pm\nto :\ncc :\nsubject : re : dissertation\ndear lance ,\nthe university is predicting a shortfall due to increased\ngas costs of between $ 30 and $ 40 million , over the next 1 to 2\nyears . for a long time , i have been wanting to explore opportunities for\nthe\ncampus to sell energy to austin energy when its load is below\npeak . this big shortfall provides an impetus for the university\nto want to maximize the value of its plant .\nross", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.684+0000", "entityId": 10425, "properties": {"text": "Subject: re : weather and energy price data\nmulong ,\nwe shall send you natural gas henry hub prices right away .\nplease look at the last winter and the winter of\n95 / 96 .\nwe shall prepare for you the electricity price\ninformation ( cinergy , cobb and palo verde ) but\nyou have to approach ft ( the publishers of\nmegawatts daily , a newsletter that produces the price\nindex we recommend using ) and request the permision\nto use the data . we are not allowed to distribute\nthis information .\nplease , explain that this is for academic research and that\nwe can produce the time series for you ,\nconditional on the permission from the publishers\nof megawatts daily .\nvince kaminski\nmulong wang on 04 / 15 / 2001 03 : 43 : 26 am\nto : vkamins @ ect . enron . com\ncc : richard macminn\nsubject : weather and energy price data\ndear dr . kaminski :\ni am a phd candidate under the supervision of drs . richard macminn and\npatrick brockett . i am now working on my dissertation which is focused on\nthe weather derivatives and credit derivatives .\ncould you kindly please offer me some real weather data information about\nthe price peak or plummet because of the weather conditions ?\nthe past winter of 2000 was very cold nationwide , and there may be a\nsignificant price jump for natural gas or electricity . could you\nplease offer me some energy price data during that time period ?\nyour kind assistance will be highly appreciated and have a great day !\nmulong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.689+0000", "entityId": 10426, "properties": {"text": "Subject: weather and energy price data\nelena ,\nplease , prepare for mulong ng and power price series .\nwe can use henry hub for ng , cinergy , cobb and pv for electricity .\nwe can send him ng price right away . electricity prices are different : he has to obtain\npermission from ft ( megawatts daily ) . i shall cc you on my msg to him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001 02 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmulong wang on 04 / 15 / 2001 03 : 43 : 26 am\nto : vkamins @ ect . enron . com\ncc : richard macminn\nsubject : weather and energy price data\ndear dr . kaminski :\ni am a phd candidate under the supervision of drs . richard macminn and\npatrick brockett . i am now working on my dissertation which is focused on\nthe weather derivatives and credit derivatives .\ncould you kindly please offer me some real weather data information about\nthe price peak or plummet because of the weather conditions ?\nthe past winter of 2000 was very cold nationwide , and there may be a\nsignificant price jump for natural gas or electricity . could you\nplease offer me some energy price data during that time period ?\nyour kind assistance will be highly appreciated and have a great day !\nmulong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.694+0000", "entityId": 10427, "properties": {"text": "Subject: re : weather and energy price data\nmulong ,\nwe shall send you natural gas henry hub prices right away .\nplease look at the last winter and the winter of\n95 / 96 .\nwe shall prepare for you the electricity price\ninformation ( cinergy , cobb and palo verde ) but\nyou have to approach ft ( the publishers of\nmegawatts daily , a newsletter that produces the price\nindex we recommend using ) and request the permision\nto use the data . we are not allowed to distribute\nthis information .\nplease , explain that this is for academic research and that\nwe can produce the time series for you ,\nconditional on the permission from the publishers\nof megawatts daily .\nvince kaminski\nmulong wang on 04 / 15 / 2001 03 : 43 : 26 am\nto : vkamins @ ect . enron . com\ncc : richard macminn\nsubject : weather and energy price data\ndear dr . kaminski :\ni am a phd candidate under the supervision of drs . richard macminn and\npatrick brockett . i am now working on my dissertation which is focused on\nthe weather derivatives and credit derivatives .\ncould you kindly please offer me some real weather data information about\nthe price peak or plummet because of the weather conditions ?\nthe past winter of 2000 was very cold nationwide , and there may be a\nsignificant price jump for natural gas or electricity . could you\nplease offer me some energy price data during that time period ?\nyour kind assistance will be highly appreciated and have a great day !\nmulong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.698+0000", "entityId": 10428, "properties": {"text": "Subject: weather and energy price data\nelena ,\nplease , prepare for mulong ng and power price series .\nwe can use henry hub for ng , cinergy , cobb and pv for electricity .\nwe can send him ng price right away . electricity prices are different : he has\nto obtain\npermission from ft ( megawatts daily ) . i shall cc you on my msg to him .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001\n02 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmulong wang on 04 / 15 / 2001 03 : 43 : 26 am\nto : vkamins @ ect . enron . com\ncc : richard macminn\nsubject : weather and energy price data\ndear dr . kaminski :\ni am a phd candidate under the supervision of drs . richard macminn and\npatrick brockett . i am now working on my dissertation which is focused on\nthe weather derivatives and credit derivatives .\ncould you kindly please offer me some real weather data information about\nthe price peak or plummet because of the weather conditions ?\nthe past winter of 2000 was very cold nationwide , and there may be a\nsignificant price jump for natural gas or electricity . could you\nplease offer me some energy price data during that time period ?\nyour kind assistance will be highly appreciated and have a great day !\nmulong", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.703+0000", "entityId": 10429, "properties": {"text": "Subject: re : clustering for power\ntanya ,\nas we discussed in the last meeting , to simulate secondary power curve we\nneed correlated jump sizes . this is totally different from the current\nsecondary price curve simulation which assume the perfect correlation and\nalso totally different from the secondary gas basis curve simulation which is\nbased on the hedging ratio .\nthere are two more issues on my side i need to resolve :\n1 . i want resolve the power basis curve issue . currently all power position\non these basis curve are actually price positions . we are hard coding this :\nif power basis we add basis to corresponding region curve . i am trying to\nremove this hard coding by asking loading the price curve for all these basis\nlocations .\n2 . same is true for all those power f curves . these curves looks similar to\nthose basis curves . currently we just directly map these f curves to the\ncorresponding region curves . i would also prefer to load the price curves\ninstead of the price differences .\nfrom research , i need those jump size correlations .\nclearly , all these involve many new development , unless we want to use\nsimpler way to simulate secondary power curves .\nregards ,\nwinston\n- - - - - original message - - - - -\nfrom : tamarchenko , tanya\nsent : monday , april 16 , 2001 9 : 17 am\nto : lew , jaesoo\ncc : gorny , vladimir ; jia , winston ; kaminski , vince\nsubject : re : clustering for power\njaesoo ,\nas we discussed last week on wednesday meeting can you , please ,\nimplement clustering for power curves by geographical region . this involves\nthe following :\n1 . deciding together with risk control how many geographical regions we want\nto use\nand which enron ' s curves belong to each region .\n2 . deciding together with risk control how to choose core curves for each\nregion . this decision can\nbe maid based on the a ) position size ; b ) statistical analysis . there might\nbe other considerations .\n3 . doing regression analysis for each curve versus the corresponding core\ncurve .\nwinston ,\ncan is it possible to run var for the clustering results obtained by jaesoo\nwith clustering done by sas ?\nshould we wait for the stage re - fresh and what is the status on this ?\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.708+0000", "entityId": 10430, "properties": {"text": "Subject: re : clustering for power\njaesoo ,\nas we discussed last week on wednesday meeting can you , please ,\nimplement clustering for power curves by geographical region . this involves\nthe following :\n1 . deciding together with risk control how many geographical regions we want\nto use\nand which enron ' s curves belong to each region .\n2 . deciding together with risk control how to choose core curves for each\nregion . this decision can\nbe maid based on the a ) position size ; b ) statistical analysis . there might\nbe other considerations .\n3 . doing regression analysis for each curve versus the corresponding core\ncurve .\nwinston ,\ncan is it possible to run var for the clustering results obtained by jaesoo\nwith clustering done by sas ?\nshould we wait for the stage re - fresh and what is the status on this ?\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.712+0000", "entityId": 10431, "properties": {"text": "Subject: re : clustering for power\ntanya ,\nas we discussed in the last meeting , to simulate secondary power curve we need correlated jump sizes . this is totally different from the current secondary price curve simulation which assume the perfect correlation and also totally different from the secondary gas basis curve simulation which is based on the hedging ratio .\nthere are two more issues on my side i need to resolve :\n1 . i want resolve the power basis curve issue . currently all power position on these basis curve are actually price positions . we are hard coding this : if power basis we add basis to corresponding region curve . i am trying to remove this hard coding by asking loading the price curve for all these basis locations .\n2 . same is true for all those power f curves . these curves looks similar to those basis curves . currently we just directly map these f curves to the corresponding region curves . i would also prefer to load the price curves instead of the price differences .\nfrom research , i need those jump size correlations .\nclearly , all these involve many new development , unless we want to use simpler way to simulate secondary power curves .\nregards ,\nwinston\n- - - - - original message - - - - -\nfrom : tamarchenko , tanya\nsent : monday , april 16 , 2001 9 : 17 am\nto : lew , jaesoo\ncc : gorny , vladimir ; jia , winston ; kaminski , vince\nsubject : re : clustering for power\njaesoo ,\nas we discussed last week on wednesday meeting can you , please ,\nimplement clustering for power curves by geographical region . this involves the following :\n1 . deciding together with risk control how many geographical regions we want to use\nand which enron ' s curves belong to each region .\n2 . deciding together with risk control how to choose core curves for each region . this decision can\nbe maid based on the a ) position size ; b ) statistical analysis . there might be other considerations .\n3 . doing regression analysis for each curve versus the corresponding core curve .\nwinston ,\ncan is it possible to run var for the clustering results obtained by jaesoo with clustering done by sas ?\nshould we wait for the stage re - fresh and what is the status on this ?\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.717+0000", "entityId": 10432, "properties": {"text": "Subject: re : clustering for power\njaesoo ,\nas we discussed last week on wednesday meeting can you , please ,\nimplement clustering for power curves by geographical region . this involves the following :\n1 . deciding together with risk control how many geographical regions we want to use\nand which enron ' s curves belong to each region .\n2 . deciding together with risk control how to choose core curves for each region . this decision can\nbe maid based on the a ) position size ; b ) statistical analysis . there might be other considerations .\n3 . doing regression analysis for each curve versus the corresponding core curve .\nwinston ,\ncan is it possible to run var for the clustering results obtained by jaesoo with clustering done by sas ?\nshould we wait for the stage re - fresh and what is the status on this ?\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.722+0000", "entityId": 10433, "properties": {"text": "Subject: dg energy software\nvince ,\nhere is my edited version of the software license agreement . can you read it once before i forward it for internal approval ? i specified that the $ 100 , 000 covers a single user perpetural license , access to source after one year , and covers maintenance and support for one year .\nany suggestions ?\n- - stinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.727+0000", "entityId": 10434, "properties": {"text": "Subject: java for managers ! ! !\nvince ,\ndurasoft ( who just taught the java class for our group ) offers a 3 - day short course in java for managers . details are below , if you are interested .\n- - stinson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 16 / 2001 12 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" siva thiagarajan \" on 04 / 16 / 2001 11 : 25 : 50 am\nplease respond to \" siva thiagarajan \"\nto :\ncc :\nsubject : java for managers ! ! !\nhi stinson ,\nthanks for meeting with us on thursday . we enjoyed\ntalking with you .\nas per our discussion , i have attached the course\noutline of java for managers along with this email .\nafter our conversation with you we think this course\nmay be a little bit heavy for your group . but we can definetly\ntake it down to concepts level and make it appropriate for\nour audience . please review and let me know , if this\ncourse would be of value to you . this is a 3 day course\nand costs $ 11 , 000 ( maximum of 15 students ) .\nregards ,\n- siva\n- oojavaformanagers . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.735+0000", "entityId": 10435, "properties": {"text": "Subject: hello all :\nplease send an email to : ibuyit @ enron . com stating that you are approver\nof invoices as requested in the email below .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 17 / 2001 07 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : ibuyit / enron @ enronxgate on 04 / 16 / 2001 05 : 20 pm\nto : dl - ibuyit payables - all @ / o = enron / ou = na / cn = recipients / cn = dl - ibuyitpayables - all @ ex @ enronxgate\ncc : john gill / eu / enron @ enron , erin abdelnour / enron @ enronxgate , shelley robbins / enron @ enronxgate , sally mcadams / enron @ enronxgate , joe cuccia / enron @ enronxgate , judy knepshield / enron _ development @ enron _ development\nsubject :\nthank you for identifying yourself as a future ibuyit payables user ! the ibuyit project team wants to make sure that your receive the information , tools , and support that you need to successfully transition to the new system on may lst .\nibuyit payables training for houston - based coders\noverview sessions will be held this week , monday through thursday , at the doubletree hotel , nautile room , at 9 : 00 am and 2 : 00 pm . these one - hour sessions will provide you with a demonstration of the system and an opportunity to ask questions about the new system . no registration is necessary .\nhands - on classroom training will begin next week . these sessions will provide you with the opportunity to complete real - life exercises in the system . please contact the isc registrar to register .\nibuyit payables training for field - based coders\ndon ' t worry ! we have not forgotten about you ! on - line materials will be available beginning next week via the integrated solution center document library at . materials will include an overview of the system and step - by - step instructions . you will receive an e - mail with links to these materials next week .\nibuyit payables approvers\nwe need your help to identify future ibuyit approvers . please encourage the people that approve your invoices to identify themselves as future ibuyit users by sending an email with their name , e - mail address , and whether they code or approve invoices to > . on - line materials for approvers will be available beginning next week via the integrated solution center document library at . materials will include an overview of the system and step - by - step instructions . identified approvers will receive an e - mail with links to these materials next week .\nquestions ? send an e - mail to >\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.743+0000", "entityId": 10436, "properties": {"text": "Subject: capital book\nto further the process of reaching the stated objectives of increasing enron america ' s velocity of capital and associated return on invested capital , we have decided to create a capital book . the capital book will have no profit target associated with it and will be managed by joe deffner . the purpose of creating this book is to ensure that all transactions within enron americas , with any form of capital requirement , are structured correctly and are allocated the appropriate cost of capital charge .\nthe previous numbers used in the business plans at the beginning of this year will remain for all transactions in place and where we hold assets . therefore , on any assets currently held within each business area , the capital charge will remain at 15 % . internal ownership of these assets will be maintained by the originating business unit subject to the internal ownership policy outlined below .\nthe cost of capital associated with all transactions in enron americas will be set by joe . this process is separate and apart from the current rac process for transactions which will continue unchanged .\ncapital investments on balance sheet will continue to accrue a capital charge at the previously established rate of 15 % . transactions which are structured off credit will receive a pure market pass through of the actually incurred cost of capital as opposed to the previous 15 % across the board charge . transactions which are structured off balance sheet , but on credit will be priced based upon the financial impact on enron america ' s overall credit capacity .\non transactions that deploy capital through the trading books , the capital book will take a finance reserve on each transaction , similar to the way the credit group takes a credit reserve . this finance reserve will be used specifically to fund the capital required for the transaction . as noted above , the capital book will have no budget and will essentially charge out to the origination and trading groups at actual cost .\nby sending market - based capital pricing signals internally , enron america ' s sources of capital and liquidity should be better optimized across the organization .\nquestions regarding the capital book can be addressed to :\njoe deffner 853 - 7117\nalan quaintance 345 - 7731", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.747+0000", "entityId": 10437, "properties": {"text": "Subject: re : summary spreadsheet for data vendor research and model\ndevelopment\nhi ,\nfyi here is an updated spreadsheet summarizing the data vendor research and model development .\nplease let me know if any thing is missing , wrong , should be deleted , etc .\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : salmon , scott\nsent : monday , april 09 , 2001 2 : 15 pm\nto : dhar , amitava\ncc : mumford , mike ; kirkpatrick , eric ; mack , iris\nsubject : re : data for private firm model\ngreat work iris ! this gets us heading down the right direction and we ' ll have some project scope documentation asap .\ncheers ,\nscott\namitava dhar\n09 / 04 / 2001 19 : 25\nto : scott salmon / eu / enron @ enron , mike mumford / lon / ect @ ect , eric kirkpatrick / eu / enron @ enron\ncc : iris mack / enron @ enronxgate\nsubject : data for private firm model\nthe enclosed spreadsheet contains a summary of preliminary data search plan prepared by iris . we will talk about further progress during our conf . call on wednesday .\n>\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.753+0000", "entityId": 10438, "properties": {"text": "Subject: re : fw : parent - subsidary model\nhi again ,\nthanks for the financial data on enron ' s european counterparties .\nit is my understanding that you started out with a list of 500 such counterparties . however , your spreadsheet only contains information for 72 of these european counterparties .\nwill you please tell me the logic behind the elimination of the 400 + other counterparties ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : parsons , ben\nsent : tuesday , april 17 , 2001 2 : 56 am\nto : mack , iris\ncc : valnek , tomas ; dhar , amitava ; mumford , mike\nsubject : re : fw : parent - subsidary model\nhi iris\nthe inputs and outputs generated by riskcalc can be seen in the attached file :\n>\nwe only looked at the 5 - yr pd .\ninputs are in columns a - u . these are the inputs generated by amadeus . you can run these inputs through the riskcalc model over the web ( http : / / www . moodysqra . com / privfirm ) using the login : dupred , password : detective . this is our trial licence which lasts for about 2 more weeks ( mike mumford will have more details about the current licence )\ntomas valnek was getting the data from the amadeus database , so i ' ll leave it to him to determine if houston access is possible . in the meantime you can use the dataset attached for testing purposes .\nben\nfrom : iris mack / enron @ enronxgate on 12 / 04 / 2001 17 : 58 cdt\nto : ben parsons / lon / ect @ ect\ncc : amitava dhar / corp / enron @ enron\nsubject : fw : parent - subsidary model\nhi ben ,\nhow are you ? today we had a meeting with craig chaney and jeff kinneman to discuss the private firm model .\nthey requested that i spend some time carefully analyzing the moody ' s riskcalc model . i noticed that you also have been looking at riskcalc - as indicated in your paper entitled \" pricing parent companies and their subsidiaries : model description and data requirements \"\nother than the example discussed in your paper , did generate any other test statistics , scores , etc .\nalso , you stated that you used amadeus database . we are in the process of trying to obtain data from various data vendors - but that may take a while . in the mean time , may we have access to the amadeus database or some sample dataset ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : valnek , tomas\nsent : tuesday , april 10 , 2001 9 : 10 am\nto : fiala , markus ; seyfried , bryan ; salmon , scott ; kirkpatrick , eric ; mumford , mike ; fontaine , jean - sebastien ; brooks , simon ; price , nigel ; diprose , robert ; rezaeian , reza ; gordon , mike ; lee , derek ; hershkovitz , ilan ; golden , sally ; stephan , nicholas ; albanis , george ; shanbhogue , vasant ; mack , iris\ncc : parsons , ben\nsubject : parent - subsidary model\nattached is a description of the parent - subsidiary model that ben and i have been working on over the last few weeks .\ncomments welcome !\ntv\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.757+0000", "entityId": 10439, "properties": {"text": "Subject: data for moody ' s riskcalc\ncraig and kim ,\nas you know , i have obtained a 60 day trial subscription to moody ' s riskcalc .\nyou wanted to know if it makes sense for enron to purchase riskcalc .\nwell , after plowing through their 100 page manual and sitting through today ' s 2 - hour moody ' s presentation , it is necessary for us to have information about enron ' s counterparties to move to the next step with riskcalc .\nwe have obtained some information on enron ' s european counterparties from our colleagues in the london office .\nwe need for you and / or your colleagues in the houston office to supply us with a list of enron ' s north american counterparties .\nmore specifically , to evaluate moody ' s riskcalc we will need the following financial inputs for enron ' s north american ( private firm ) counterparties :\nfiscal year\nthe prior twelve months of financial data are represented . annual statements are usable as well as quarterly statements after summing the flow variables , such as cost of goods sold , net income , sales , and ebit . the value should be a four - digit integer year without mention of the day or month such as 1999 or 2000 . forecasts until the year 2009 can be made . a constant rate of inflation is applied to future years using last year ' s ( 1999 ) inflation level . in general this ' estimation error ' will not cause any great problems , as size affects default rates at very large scales ( e . g . , $ 10 , 000 , 000 vs . $ 1 , 000 , 000 makes a significant difference , $ 1 , 000 , 000 vs . $ 1 , 050 , 00 does not ) .\ncash & equivalents\nthis measure of liquid assets includes cash and marketable securities .\ninventory\ninventories are taken directly from the balance sheet , in thousands dollars , without any alterations for accounting method ( e . g . , lifo , fifo , average cost ) . this item represents merchandise bought for resale and materials and supplies purchased for use in production of revenue . specifically this would include purchase cost , sales cost , sales taxes , transportation costs , insurance costs , and storage costs .\ncurrent assets\nthis item primarily represents cash , inventories , accounts receivables , marketable securities , and other current assets .\ntotal assets\ntotal assets and every other variable are entered in thousands of dollars . for example , $ 15 , 500 , 000 should be entered as 15500 . specifically , total assets are the sum of current assets plus net property , plant , and equipment plus other noncurrent assets ( including intangible assets , deferred items , and investments and advances ) . leave previous year ' s total assets blank for australian companies .\ncurrent liabilities\nliabilities are positive values . included in current liabilities are short - term debt , accounts payable , and other current liabilities .\ntotal liabilities\nthis balance sheet account , total liabilities , is a positive number representing the sum of current liabilities plus long - term debt plus other noncurrent liabilities ( including deferred taxes , investment tax credit , and minority interest ) .\nretained earnings\nretained earnings , a historical measure of performance , is the cumulative earnings of the company less total dividend distributions to shareholders . typically , it is the prior year ' s retained earnings plus net income less distributions . retained earnings are generally positive . some firms with low credit quality will have negative retained earnings . leave this field blank for australian companies .\nsales\nthis item consists of the industry segment ' s gross sales ( the amount of actual billings to customers for regular sales completed during the period ) reduced by cash discounts , trade discounts , and returned sales and allowances for which credit is given to customers .\ncost of goods sold\nentered in thousands of dollars , this value is generally a positive number less than sales . it represents all costs directly allocated by the company to production , such as material , labor , and overhead . not fixed overhead or items that would be included in selling , general , and administrative expenses . leave this field blank for australian companies .\nebit\nearning before interest expense is operating income after depreciation . it can be positive or negative but is usually greater then net income .\ninterest expense\nthis item represents the periodic expense to the company of securing short - and long - term debt . typically , we expect this charge to be approximately the prevailing interest rate times the total liabilities . one measure of computing this is : interest expense = 0 . 07 * total liabilities .\nnet income\nthis item represents the income ( or loss ) reported by a company after expenses and losses have been subtracted from all revenues and gains for the fiscal period including extraordinary items and discontinued operations . a loss is represented by a negative sign . for example , a $ 5 , 000 , 000 loss would be entered as - 5000 . leave previous year ' s net income blank for australian companies .\nextraordinary items\npositive or negative , this item represents unusual items that sometimes appear on the income statement . the items are designated by the company as extraordinary and presented after net income from continuing operations and discontinued operations . these items include extraordinary gains / losses , income ( loss ) from discontinued operations , and cumulative affect of accounting changes . expenses are entered as negative values , gains as positive values . leave previous year ' s extraordinary items blank for australian companies .\ncountry\nthis model is calibrated for the united states , canada , and australia .\nwe look forward to receiving this information for enron ' s private firm north american counterparties so that we can move on to the next step with the evaluation of riskcalc .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.762+0000", "entityId": 10440, "properties": {"text": "Subject: re : summary spreadsheet for data vendor research and model\ndevelopment\nhi ,\nfyi here is an updated spreadsheet summarizing the data vendor research and\nmodel development .\nplease let me know if any thing is missing , wrong , should be deleted , etc .\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : salmon , scott\nsent : monday , april 09 , 2001 2 : 15 pm\nto : dhar , amitava\ncc : mumford , mike ; kirkpatrick , eric ; mack , iris\nsubject : re : data for private firm model\ngreat work iris ! this gets us heading down the right direction and we ' ll\nhave some project scope documentation asap .\ncheers ,\nscott\namitava dhar\n09 / 04 / 2001 19 : 25\nto : scott salmon / eu / enron @ enron , mike mumford / lon / ect @ ect , eric\nkirkpatrick / eu / enron @ enron\ncc : iris mack / enron @ enronxgate\nsubject : data for private firm model\nthe enclosed spreadsheet contains a summary of preliminary data search plan\nprepared by iris . we will talk about further progress during our conf . call\non wednesday .\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.766+0000", "entityId": 10441, "properties": {"text": "Subject: re : fw : parent - subsidary model\nhi again ,\nthanks for the financial data on enron ' s european counterparties .\nit is my understanding that you started out with a list of 500 such\ncounterparties . however , your spreadsheet only contains information for 72\nof these european counterparties .\nwill you please tell me the logic behind the elimination of the 400 + other\ncounterparties ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : parsons , ben\nsent : tuesday , april 17 , 2001 2 : 56 am\nto : mack , iris\ncc : valnek , tomas ; dhar , amitava ; mumford , mike\nsubject : re : fw : parent - subsidary model\nhi iris\nthe inputs and outputs generated by riskcalc can be seen in the attached file :\n>\nwe only looked at the 5 - yr pd .\ninputs are in columns a - u . these are the inputs generated by amadeus . you can\nrun these inputs through the riskcalc model over the web\n( http : / / www . moodysqra . com / privfirm ) using the login : dupred , password :\ndetective . this is our trial licence which lasts for about 2 more weeks ( mike\nmumford will have more details about the current licence )\ntomas valnek was getting the data from the amadeus database , so i ' ll leave it\nto him to determine if houston access is possible . in the meantime you can\nuse the dataset attached for testing purposes .\nben\nfrom : iris mack / enron @ enronxgate on 12 / 04 / 2001 17 : 58 cdt\nto : ben parsons / lon / ect @ ect\ncc : amitava dhar / corp / enron @ enron\nsubject : fw : parent - subsidary model\nhi ben ,\nhow are you ? today we had a meeting with craig chaney and jeff kinneman to\ndiscuss the private firm model .\nthey requested that i spend some time carefully analyzing the moody ' s\nriskcalc model . i noticed that you also have been looking at riskcalc - as\nindicated in your paper entitled \" pricing parent companies and their\nsubsidiaries : model description and data requirements \"\nother than the example discussed in your paper , did generate any other test\nstatistics , scores , etc .\nalso , you stated that you used amadeus database . we are in the process of\ntrying to obtain data from various data vendors - but that may take a while .\nin the mean time , may we have access to the amadeus database or some sample\ndataset ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : valnek , tomas\nsent : tuesday , april 10 , 2001 9 : 10 am\nto : fiala , markus ; seyfried , bryan ; salmon , scott ; kirkpatrick , eric ;\nmumford , mike ; fontaine , jean - sebastien ; brooks , simon ; price , nigel ;\ndiprose , robert ; rezaeian , reza ; gordon , mike ; lee , derek ; hershkovitz , ilan ;\ngolden , sally ; stephan , nicholas ; albanis , george ; shanbhogue , vasant ; mack ,\niris\ncc : parsons , ben\nsubject : parent - subsidary model\nattached is a description of the parent - subsidiary model that ben and i have\nbeen working on over the last few weeks .\ncomments welcome !\ntv\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.771+0000", "entityId": 10442, "properties": {"text": "Subject: data for moody ' s riskcalc\ncraig and kim ,\nas you know , i have obtained a 60 day trial subscription to moody ' s\nriskcalc .\nyou wanted to know if it makes sense for enron to purchase riskcalc .\nwell , after plowing through their 100 page manual and sitting through\ntoday ' s 2 - hour moody ' s presentation , it is necessary for us to have\ninformation about enron ' s counterparties to move to the next step with\nriskcalc .\nwe have obtained some information on enron ' s european counterparties from\nour colleagues in the london office .\nwe need for you and / or your colleagues in the houston office to supply us\nwith a list of enron ' s north american counterparties .\nmore specifically , to evaluate moody ' s riskcalc we will need the following\nfinancial inputs for enron ' s north american ( private firm ) counterparties :\nfiscal year\nthe prior twelve months of financial data are represented . annual statements\nare usable as well as quarterly statements after summing the flow variables ,\nsuch as cost of goods sold , net income , sales , and ebit . the value should be\na four - digit integer year without mention of the day or month such as 1999 or\n2000 . forecasts until the year 2009 can be made . a constant rate of inflation\nis applied to future years using last year ' s ( 1999 ) inflation level . in\ngeneral this ' estimation error ' will not cause any great problems , as size\naffects default rates at very large scales ( e . g . , $ 10 , 000 , 000 vs . $ 1 , 000 , 000\nmakes a significant difference , $ 1 , 000 , 000 vs . $ 1 , 050 , 00 does not ) .\ncash & equivalents\nthis measure of liquid assets includes cash and marketable securities .\ninventory\ninventories are taken directly from the balance sheet , in thousands dollars ,\nwithout any alterations for accounting method ( e . g . , lifo , fifo , average\ncost ) . this item represents merchandise bought for resale and materials and\nsupplies purchased for use in production of revenue . specifically this would\ninclude purchase cost , sales cost , sales taxes , transportation costs ,\ninsurance costs , and storage costs .\ncurrent assets\nthis item primarily represents cash , inventories , accounts receivables ,\nmarketable securities , and other current assets .\ntotal assets\ntotal assets and every other variable are entered in thousands of dollars .\nfor example , $ 15 , 500 , 000 should be entered as 15500 . specifically , total\nassets are the sum of current assets plus net property , plant , and equipment\nplus other noncurrent assets ( including intangible assets , deferred items ,\nand investments and advances ) . leave previous year ' s total assets blank for\naustralian companies .\ncurrent liabilities\nliabilities are positive values . included in current liabilities are\nshort - term debt , accounts payable , and other current liabilities .\ntotal liabilities\nthis balance sheet account , total liabilities , is a positive number\nrepresenting the sum of current liabilities plus long - term debt plus other\nnoncurrent liabilities ( including deferred taxes , investment tax credit , and\nminority interest ) .\nretained earnings\nretained earnings , a historical measure of performance , is the cumulative\nearnings of the company less total dividend distributions to shareholders .\ntypically , it is the prior year ' s retained earnings plus net income less\ndistributions . retained earnings are generally positive . some firms with low\ncredit quality will have negative retained earnings . leave this field blank\nfor australian companies .\nsales\nthis item consists of the industry segment ' s gross sales ( the amount of\nactual billings to customers for regular sales completed during the period )\nreduced by cash discounts , trade discounts , and returned sales and allowances\nfor which credit is given to customers .\ncost of goods sold\nentered in thousands of dollars , this value is generally a positive number\nless than sales . it represents all costs directly allocated by the company to\nproduction , such as material , labor , and overhead . not fixed overhead or\nitems that would be included in selling , general , and administrative\nexpenses . leave this field blank for australian companies .\nebit\nearning before interest expense is operating income after depreciation . it\ncan be positive or negative but is usually greater then net income .\ninterest expense\nthis item represents the periodic expense to the company of securing short -\nand long - term debt . typically , we expect this charge to be approximately the\nprevailing interest rate times the total liabilities . one measure of\ncomputing this is : interest expense = 0 . 07 * total liabilities .\nnet income\nthis item represents the income ( or loss ) reported by a company after\nexpenses and losses have been subtracted from all revenues and gains for the\nfiscal period including extraordinary items and discontinued operations . a\nloss is represented by a negative sign . for example , a $ 5 , 000 , 000 loss would\nbe entered as - 5000 . leave previous year ' s net income blank for australian\ncompanies .\nextraordinary items\npositive or negative , this item represents unusual items that sometimes\nappear on the income statement . the items are designated by the company as\nextraordinary and presented after net income from continuing operations and\ndiscontinued operations . these items include extraordinary gains / losses ,\nincome ( loss ) from discontinued operations , and cumulative affect of\naccounting changes . expenses are entered as negative values , gains as\npositive values . leave previous year ' s extraordinary items blank for\naustralian companies .\ncountry\nthis model is calibrated for the united states , canada , and australia .\nwe look forward to receiving this information for enron ' s private firm north\namerican counterparties so that we can move on to the next step with the\nevaluation of riskcalc .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.775+0000", "entityId": 10443, "properties": {"text": "Subject: re : hello\nhi vince ,\nthank you for your offer to bring jacob back for another interview . yes , if\nit is not too much trouble , i would like to talk with him . i was sorry i had\nto be out of town last week when he was in the office . thanks , just let me\nknow when you would like me to be available .\nkim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 16 , 2001 1 : 21 pm\nto : watson , kimberly\ncc : krishnarao , pinnamaneni ; kaminski , vince\nsubject : re : hello\nkim ,\nthis is a letter from one of the job applicants who works for pros .\nit seems that the system they develop for williams\nis more a scheduling system .\nwould you like to ask him to come back for another interview ,\nto get more information out of him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001\n01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacob y . kang \" on 04 / 11 / 2001 11 : 18 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello\ndear vince :\nit was so nice meeting and talking with you too . i did\nnot take any pen back , i lost my pen too somewhere in\nenron .\nas i mentioned to you , after i got my ph . d in 1999 , i\nhave been working two years as lead scientist and\nscience manager in energy division at pros revenue\nmanagement inc . in houston .\ni developed and implemented the mathematical models\nfor trading optimization system and firm\ntransportation optimization system .\nthe trading optimization system becomes the most\npopular product in the industry this year . duke energy\njust signed the contract to buy this product\nyesterday . conoco and williams also signed the\ncontracts for it . according to pros sales department ,\nthe potential marketer to buy this product exceeds 15\ncompanies in one or two years .\nenron is the ideal place for me to continue my\nresearch and system developing efforts to combine\nrevenue management with risk management . i am\nconfident that i can make significant contributions to\nenron in this area .\ni would like to thank you again for giving me this\nopportunity to come to enron for this interview . i am\nlooking forward to having the opportunity to work in\nenron .\nsincerely yours\njacob\n- - - vince . j . kaminski @ enron . com wrote :\n> jacob ,\n>\n> it was nice meeting you . did take by any chance\n> my pen ? if not , i apologize .\n>\n> vince\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.781+0000", "entityId": 10444, "properties": {"text": "Subject: karthik rajan\ni spoke with karthik this morning about our offer , and answered some\nadditional questions that he had . he has accepted our offer , but with one\nadditional request . he would now like for us to ship his car . i asked him\nwhy he couldn ' t drive it down here , and he said that it was too old . i am\ngoing to check with relocation for an approximate cost and will get back to\nyou . . . .\nthanks ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.786+0000", "entityId": 10445, "properties": {"text": "Subject: re : hello\nhi vince ,\nthank you for your offer to bring jacob back for another interview . yes , if it is not too much trouble , i would like to talk with him . i was sorry i had to be out of town last week when he was in the office . thanks , just let me know when you would like me to be available .\nkim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 16 , 2001 1 : 21 pm\nto : watson , kimberly\ncc : krishnarao , pinnamaneni ; kaminski , vince\nsubject : re : hello\nkim ,\nthis is a letter from one of the job applicants who works for pros .\nit seems that the system they develop for williams\nis more a scheduling system .\nwould you like to ask him to come back for another interview ,\nto get more information out of him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001 01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacob y . kang \" on 04 / 11 / 2001 11 : 18 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello\ndear vince :\nit was so nice meeting and talking with you too . i did\nnot take any pen back , i lost my pen too somewhere in\nenron .\nas i mentioned to you , after i got my ph . d in 1999 , i\nhave been working two years as lead scientist and\nscience manager in energy division at pros revenue\nmanagement inc . in houston .\ni developed and implemented the mathematical models\nfor trading optimization system and firm\ntransportation optimization system .\nthe trading optimization system becomes the most\npopular product in the industry this year . duke energy\njust signed the contract to buy this product\nyesterday . conoco and williams also signed the\ncontracts for it . according to pros sales department ,\nthe potential marketer to buy this product exceeds 15\ncompanies in one or two years .\nenron is the ideal place for me to continue my\nresearch and system developing efforts to combine\nrevenue management with risk management . i am\nconfident that i can make significant contributions to\nenron in this area .\ni would like to thank you again for giving me this\nopportunity to come to enron for this interview . i am\nlooking forward to having the opportunity to work in\nenron .\nsincerely yours\njacob\n- - - vince . j . kaminski @ enron . com wrote :\n> jacob ,\n>\n> it was nice meeting you . did take by any chance\n> my pen ? if not , i apologize .\n>\n> vince\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.791+0000", "entityId": 10446, "properties": {"text": "Subject: karthik rajan\ni spoke with karthik this morning about our offer , and answered some additional questions that he had . he has accepted our offer , but with one additional request . he would now like for us to ship his car . i asked him why he couldn ' t drive it down here , and he said that it was too old . i am going to check with relocation for an approximate cost and will get back to you . . . .\nthanks ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.795+0000", "entityId": 10447, "properties": {"text": "Subject: reminder - enronanywhere portal project meeting\nyou are scheduled to attend the enronanywhere portal project meeting .\nwhen : wednesday , april 18 , 2001\nwhere : eb 50 m dining room\ntime : 12 : 00 - 4 : 00\nlunch will be served .\nthank you in advance for helping us to create one enron . your attendance and\nparticipation is certain to make this project a huge success .\ncall me if you have any questions .\nthanks ,\nmarie hejka\nenronanywhere\n3 9698\np . s . note , we decided not to send a pre - workshop assignment .\nsee you there .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.800+0000", "entityId": 10448, "properties": {"text": "Subject: mgmt 656\nenclosed please find the final grade rosters for mgmt 656 . ? grades are due\ninto our office no later than friday , may 4 .\nremember that this is the university deadline for graduating students .\nthank you for your help ! - pam ( 713 - 348 - 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.804+0000", "entityId": 10449, "properties": {"text": "Subject: mgmt 656\nenclosed please find the final grade rosters for mgmt 656 . grades are due into our office no later than friday , may 4 .\nremember that this is the university deadline for graduating students .\nthank you for your help ! - pam ( 713 - 348 - 6223 )\n- 656 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.809+0000", "entityId": 10450, "properties": {"text": "Subject: visit may 4 th\nvince :\nper susan ' s email below , do you want to go to the luncheon for john\nhennessey ? she doesn ' t say where the lunch is going to be , did you\nget an invite ?\nthe only thing you have that day is 9 : 00 am larry thorne and the\nenergy derivatives class at 11 : 30 .\nlet me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 17 / 2001\n11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" susan c . hansen \" on 04 / 17 / 2001 10 : 47 : 38 am\nto : shirley . crenshaw @ enron . com\ncc : clovell @ stanford . edu , donna lawrence\nsubject : visit may 4 th\nhi shirley ,\nthanks for corresponding with carol during my absence , and confirming our\nmeeting with vince kaminski at 1 : 30 on may 4 th . i have a question about\nthe logistics . i believe dr . kaminski has received an invitation to an\nevent in houston : new stanford president john hennessy is visiting a number\nof cities on a \" welcome tour , \" and it just so happens he is hosting a\nluncheon in houston on may 4 th . if dr . kaminski wants to attend the\nhennessy welcome tour luncheon , donna lawrence and i could meet with him at\n1 : 30 somewhere in the hotel . if he ' s not attending the presidential event ,\nplease let me know where you are located , and we ' ll plan travel time\naccordingly .\nregards ,\nsusan\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.814+0000", "entityId": 10451, "properties": {"text": "Subject: visit may 4 th\nvince :\nper susan ' s email below , do you want to go to the luncheon for john\nhennessey ? she doesn ' t say where the lunch is going to be , did you\nget an invite ?\nthe only thing you have that day is 9 : 00 am larry thorne and the\nenergy derivatives class at 11 : 30 .\nlet me know .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 17 / 2001 11 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" susan c . hansen \" on 04 / 17 / 2001 10 : 47 : 38 am\nto : shirley . crenshaw @ enron . com\ncc : clovell @ stanford . edu , donna lawrence\nsubject : visit may 4 th\nhi shirley ,\nthanks for corresponding with carol during my absence , and confirming our\nmeeting with vince kaminski at 1 : 30 on may 4 th . i have a question about\nthe logistics . i believe dr . kaminski has received an invitation to an\nevent in houston : new stanford president john hennessy is visiting a number\nof cities on a \" welcome tour , \" and it just so happens he is hosting a\nluncheon in houston on may 4 th . if dr . kaminski wants to attend the\nhennessy welcome tour luncheon , donna lawrence and i could meet with him at\n1 : 30 somewhere in the hotel . if he ' s not attending the presidential event ,\nplease let me know where you are located , and we ' ll plan travel time\naccordingly .\nregards ,\nsusan\nsusan c . hansen\ndirector , corporate relations\nschool of engineering\nstanford university\nstanford , ca 94305 - 4027\n( 650 ) 725 - 4219", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.819+0000", "entityId": 10452, "properties": {"text": "Subject: strategic management society conference\nour proposal was accepted . dust off your san francisco shoes .\nrita mcgrath - the designer of our particular panel - will forward details\nwhen they are sent to her by sms", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.824+0000", "entityId": 10453, "properties": {"text": "Subject: evaluations - enron\nplease pass this along to others who may have worked with the students .\nto : tiger hosts\nfrom : field application project office\nthe wharton school\nuniversity of pennsylvania\nre : tiger team evaluations\nthank you for hosting the tiger team project , field application project\n2001 . this opportunity provided the student team a worthwhile experience to\napply newly acquired skills to a real world issue facing your company . your\ndedication and support of the project contributed greatly to its success .\nhopefully , by now you have had the opportunity to review the final reports .\nplease take a moment to complete the host evaluation form available at :\n( use internet explorer )\nusername : tiger\npassword : fap 2001 ( no space between )\n( note : case sensitive , please use lower case )\ndeadline for acceptance : wednesday , april 25 , 2001\nyour feedback is important to us . it is taken into consideration when\ncalculating student grades and when implementing changes that will impact\nand enhance the program in the future . also , in an effort to insure the\nreturn of meaningful and contributing host companies , we ask that you\nindicate your interest in returning as a host next year and the fap office\nwill contact you in september 2001 .\nthank you again for your support of the wharton school and participation in\nthe field application project this year . we look forward to working with\nyou in the future .\nif you have any questions , please contact the fap office at ( 215 ) 573 - 8394\nor email : fap @ management . wharton . upenn . edu\nsincerely ,\ndonna piazze\nprogram director\nfield application project", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.830+0000", "entityId": 10454, "properties": {"text": "Subject: times 2 filing units\npat :\nrecently , i talked with you about ordering another filing unit . it turns out that we need 2 more filing units . please order them the same size as the floor to ceiling cabinet we have . have the inside of the cabinets configured as follows :\n1 cabinet should have 5 shelves\n1 cabinet should have 6 shelves\nwhen interstore was here today reconfiguing 2 of our existing cabinets , they removed 8 shelves that they are going to use on these new units .\nplease price these 2 new units and charge them to co . # 0413 , rc # 107043 . please let me the prices and approximate delivery date . also , let me know if you need anything else . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.837+0000", "entityId": 10455, "properties": {"text": "Subject: times 2 filing units\npat :\nrecently , i talked with you about ordering another filing unit . it turns out\nthat we need 2 more filing units . please order them the same size as the\nfloor to ceiling cabinet we have . have the inside of the cabinets configured\nas follows :\n1 cabinet should have 5 shelves\n1 cabinet should have 6 shelves\nwhen interstore was here today reconfiguing 2 of our existing cabinets , they\nremoved 8 shelves that they are going to use on these new units .\nplease price these 2 new units and charge them to co . # 0413 , rc # 107043 .\nplease let me the prices and approximate delivery date . also , let me know\nif you need anything else . thanks . anita", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.846+0000", "entityId": 10456, "properties": {"text": "Subject: re : petrochemical forward curves\nvince ,\nyou will find the most recent email exchanges below . per our discussion , i did sit down with christian last week to talk about a fundamental / econometric approach to forward curve construction as was done for the agricultural efforts . let me know how you , vasant , and stinson would like to proceed on this matter .\nnelson\n- - - - - - - - - - - - - - - - - - - - - - forwarded by nelson neale / na / enron on 04 / 18 / 2001 08 : 55 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : christian lebroc / enron @ enronxgate on 04 / 17 / 2001 04 : 41 pm\nto : nelson neale / na / enron @ enron\ncc :\nsubject : re : petrochemical forward curves\nplease review the \" curve model 2 k \" file which was built by research a few years back for plastics trading group . i would like to work with you or someone in research as far as building the same model for all petrochemical products .\nthe \" benz _ curve \" file is what i have done so far but it is very primitive compare to the other model . let me know what i need to do going forward .\nchristian\n- - - - - original message - - - - -\nfrom : neale , nelson\nsent : friday , april 13 , 2001 11 : 28 am\nto : lebroc , christian\nsubject : re : petrochemical forward curves\nwhat kind of crude price volatility are you proposing to use ( nymex ) ? as i recall , we did find some relationship between the time series price variable and one of the s & d terms that you had placed in the excel worksheet . there was no relationship with lagged price either ? if you don ' t mind , please forward the data to me so that i can take a quick look at it .\nnelson\nfrom : christian lebroc / enron @ enronxgate on 04 / 12 / 2001 05 : 44 pm\nto : nelson neale / na / enron @ enron\ncc :\nsubject : re : petrochemical forward curves\nfor gbm , i was thinking about using crude volatility . unfortunately , supply and demand is not a good indicator of predicting prices because of the economic complexity of processing aromatics . statistically , there is no relationship between utilization , supply , demand and price . inserting time lag does not make the number any better either .\nchristian\n- - - - - original message - - - - -\nfrom : neale , nelson\nsent : thursday , april 12 , 2001 5 : 23 pm\nto : lebroc , christian\nsubject : re : petrochemical forward curves\nhi christian ,\nboth mean reversion and gbm models assume that all information related to a future price may be found in the historical price . the approach employed in the ag curves suggests that there may be some fundamental information related to supply and demand that impacts also drives future price . a portion of the mean reversion process is actually captured with inclusion of lagged prices ( autoregressive component ) . a gbm process requires some information on price volatility . since there is presumably no forward / future curve for the commodity of interest , it is difficult to come up with historical volatility values . hope it helps .\nnelson\nfrom : christian lebroc / enron @ enronxgate on 04 / 12 / 2001 11 : 46 am\nto : nelson neale / na / enron @ enron\ncc :\nsubject : petrochemical forward curves\nneslon ,\ni would like to insert \" mean reversion \" and \" geometric brownian motion \" in the linear forward curve equation you put together for me earlier this week . please inform me on how to assemble the above request .\nthanks\nchristian\n- - - - - original message - - - - -\nfrom : lebroc , christian\nsent : tuesday , april 10 , 2001 2 : 29 pm\nto : neale , nelson\nsubject : petchem data\n> >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.853+0000", "entityId": 10457, "properties": {"text": "Subject: reminder - enronanywhere portal project meeting\nyou are scheduled to attend the enronanywhere portal project meeting .\nwhen : wednesday , april 18 , 2001\nwhere : eb 50 m dining room\ntime : 12 : 00 - 4 : 00\nlunch will be served .\nthank you in advance for helping us to create one enron . your attendance and participation is certain to make this project a huge success .\ncall me if you have any questions .\nthanks ,\nmarie hejka\nenronanywhere\n3 9698\np . s . note , we decided not to send a pre - workshop assignment .\nsee you there .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.858+0000", "entityId": 10458, "properties": {"text": "Subject: swaps monitor research .\nwe have today published information about the global exchange - traded options\nand futures volume . this research is contained in the attached pdf file .\nthrough our web site , swapsmonitor . com , you can obtain additional information\nabout otc derivatives dealers , including rankings and a database of\noutstandings going back to 1994 .\nas an e - mail subscriber to our research , you will automatically receive all\nfree research at the same time it is placed on our web site . if you wish to\nremove your name from the e - mailing list , please use the reply feature of\nyour e - mail application and type the word \" remove \" in the subject line .\nregards ,\n- total _ et . pdf\nandrei osonenko\nresearch department", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.862+0000", "entityId": 10459, "properties": {"text": "Subject: swaps monitor research .\nwe have today published information about the global exchange - traded options and futures volume . this research is contained in the attached pdf file .\nthrough our web site , swapsmonitor . com , you can obtain additional information about otc derivatives dealers , including rankings and a database of outstandings going back to 1994 .\nas an e - mail subscriber to our research , you will automatically receive all free research at the same time it is placed on our web site . if you wish to remove your name from the e - mailing list , please use the reply feature of your e - mail application and type the word \" remove \" in the subject line .\nregards ,\n- total _ et . pdf\nandrei osonenko\nresearch department", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.868+0000", "entityId": 10460, "properties": {"text": "Subject: re : fw : parent - subsidary model\nhi iris\nwe started off with about 105 companies , which were enron europe ' s uk power and gas desk counterparties . i ' m not sure where you got the figure of 500 from - maybe this is the entire enron europe counterparty list , which constitutes the next major effort for end - july .\nfrom this list of 104 , only the 72 in the spreadsheet had information in amadeus . the other firms had no information available , most likely because they were too new .\nben\nfrom : iris mack / enron @ enronxgate on 17 / 04 / 2001 19 : 37 cdt\nto : ben parsons / lon / ect @ ect\ncc : tomas valnek / lon / ect @ ect , amitava dhar / corp / enron @ enron , mike mumford / lon / ect @ ect , vasant shanbhogue / enron @ enronxgate , vince j kaminski / hou / ect @ ect\nsubject : re : fw : parent - subsidary model\nhi again ,\nthanks for the financial data on enron ' s european counterparties .\nit is my understanding that you started out with a list of 500 such counterparties . however , your spreadsheet only contains information for 72 of these european counterparties .\nwill you please tell me the logic behind the elimination of the 400 + other counterparties ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : parsons , ben\nsent : tuesday , april 17 , 2001 2 : 56 am\nto : mack , iris\ncc : valnek , tomas ; dhar , amitava ; mumford , mike\nsubject : re : fw : parent - subsidary model\nhi iris\nthe inputs and outputs generated by riskcalc can be seen in the attached file :\n>\nwe only looked at the 5 - yr pd .\ninputs are in columns a - u . these are the inputs generated by amadeus . you can run these inputs through the riskcalc model over the web ( http : / / www . moodysqra . com / privfirm ) using the login : dupred , password : detective . this is our trial licence which lasts for about 2 more weeks ( mike mumford will have more details about the current licence )\ntomas valnek was getting the data from the amadeus database , so i ' ll leave it to him to determine if houston access is possible . in the meantime you can use the dataset attached for testing purposes .\nben\nfrom : iris mack / enron @ enronxgate on 12 / 04 / 2001 17 : 58 cdt\nto : ben parsons / lon / ect @ ect\ncc : amitava dhar / corp / enron @ enron\nsubject : fw : parent - subsidary model\nhi ben ,\nhow are you ? today we had a meeting with craig chaney and jeff kinneman to discuss the private firm model .\nthey requested that i spend some time carefully analyzing the moody ' s riskcalc model . i noticed that you also have been looking at riskcalc - as indicated in your paper entitled \" pricing parent companies and their subsidiaries : model description and data requirements \"\nother than the example discussed in your paper , did generate any other test statistics , scores , etc .\nalso , you stated that you used amadeus database . we are in the process of trying to obtain data from various data vendors - but that may take a while . in the mean time , may we have access to the amadeus database or some sample dataset ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : valnek , tomas\nsent : tuesday , april 10 , 2001 9 : 10 am\nto : fiala , markus ; seyfried , bryan ; salmon , scott ; kirkpatrick , eric ; mumford , mike ; fontaine , jean - sebastien ; brooks , simon ; price , nigel ; diprose , robert ; rezaeian , reza ; gordon , mike ; lee , derek ; hershkovitz , ilan ; golden , sally ; stephan , nicholas ; albanis , george ; shanbhogue , vasant ; mack , iris\ncc : parsons , ben\nsubject : parent - subsidary model\nattached is a description of the parent - subsidiary model that ben and i have been working on over the last few weeks .\ncomments welcome !\ntv\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.872+0000", "entityId": 10461, "properties": {"text": "Subject: re : fw : parent - subsidary model\nhi iris\nwe started off with about 105 companies , which were enron europe ' s uk power\nand gas desk counterparties . i ' m not sure where you got the figure of 500\nfrom - maybe this is the entire enron europe counterparty list , which\nconstitutes the next major effort for end - july .\nfrom this list of 104 , only the 72 in the spreadsheet had information in\namadeus . the other firms had no information available , most likely because\nthey were too new .\nben\nfrom : iris mack / enron @ enronxgate on 17 / 04 / 2001 19 : 37 cdt\nto : ben parsons / lon / ect @ ect\ncc : tomas valnek / lon / ect @ ect , amitava dhar / corp / enron @ enron , mike\nmumford / lon / ect @ ect , vasant shanbhogue / enron @ enronxgate , vince j\nkaminski / hou / ect @ ect\nsubject : re : fw : parent - subsidary model\nhi again ,\nthanks for the financial data on enron ' s european counterparties .\nit is my understanding that you started out with a list of 500 such\ncounterparties . however , your spreadsheet only contains information for 72\nof these european counterparties .\nwill you please tell me the logic behind the elimination of the 400 + other\ncounterparties ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : parsons , ben\nsent : tuesday , april 17 , 2001 2 : 56 am\nto : mack , iris\ncc : valnek , tomas ; dhar , amitava ; mumford , mike\nsubject : re : fw : parent - subsidary model\nhi iris\nthe inputs and outputs generated by riskcalc can be seen in the attached file :\n>\nwe only looked at the 5 - yr pd .\ninputs are in columns a - u . these are the inputs generated by amadeus . you can\nrun these inputs through the riskcalc model over the web\n( http : / / www . moodysqra . com / privfirm ) using the login : dupred , password :\ndetective . this is our trial licence which lasts for about 2 more weeks ( mike\nmumford will have more details about the current licence )\ntomas valnek was getting the data from the amadeus database , so i ' ll leave it\nto him to determine if houston access is possible . in the meantime you can\nuse the dataset attached for testing purposes .\nben\nfrom : iris mack / enron @ enronxgate on 12 / 04 / 2001 17 : 58 cdt\nto : ben parsons / lon / ect @ ect\ncc : amitava dhar / corp / enron @ enron\nsubject : fw : parent - subsidary model\nhi ben ,\nhow are you ? today we had a meeting with craig chaney and jeff kinneman to\ndiscuss the private firm model .\nthey requested that i spend some time carefully analyzing the moody ' s\nriskcalc model . i noticed that you also have been looking at riskcalc - as\nindicated in your paper entitled \" pricing parent companies and their\nsubsidiaries : model description and data requirements \"\nother than the example discussed in your paper , did generate any other test\nstatistics , scores , etc .\nalso , you stated that you used amadeus database . we are in the process of\ntrying to obtain data from various data vendors - but that may take a while .\nin the mean time , may we have access to the amadeus database or some sample\ndataset ?\nthanks so much ,\niris\n- - - - - original message - - - - -\nfrom : valnek , tomas\nsent : tuesday , april 10 , 2001 9 : 10 am\nto : fiala , markus ; seyfried , bryan ; salmon , scott ; kirkpatrick , eric ;\nmumford , mike ; fontaine , jean - sebastien ; brooks , simon ; price , nigel ;\ndiprose , robert ; rezaeian , reza ; gordon , mike ; lee , derek ; hershkovitz , ilan ;\ngolden , sally ; stephan , nicholas ; albanis , george ; shanbhogue , vasant ; mack ,\niris\ncc : parsons , ben\nsubject : parent - subsidary model\nattached is a description of the parent - subsidiary model that ben and i have\nbeen working on over the last few weeks .\ncomments welcome !\ntv\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.877+0000", "entityId": 10462, "properties": {"text": "Subject: re : thanks !\nkarin ,\ni talked to mike roberts ( the head of the whole weather team ) , and he is\nsaying that all expenses for tony should be charged to global products team .\nthis is agreed between vince and jeff shankman .\nmike and vince are negotiating with john to put stephen ( or somebody who will\nreplace him ) to some other cost centres ( via research ) .\nit looks like kevin moore is happy if stephen is charged to the same cost\ncentre as tony .\nlet us right now charge tony and stephen to the cost centre below .\nplease , could we charge them separately - when john and vince make their\ndecision , we should be able to re - charge .\nmany thanks ,\nslava\nenron capital & trade resources\ncanada corp .\nfrom : karin ahamer @ enron 18 / 04 / 2001 15 : 06\nto : tani nath / lon / ect @ ect , viacheslav danilov / lon / ect @ ect\ncc :\nsubject : re : thanks !\ntani / slava\ncould you please let me know which costcentre i can bill for any charges\nrelating to tony and stephen .\nthx karin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by karin ahamer / eu / enron on 18 / 04 / 2001 15 : 04\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources corp .\nfrom : stephen bennett 18 / 04 / 2001 12 : 14\nto : karin ahamer / eu / enron @ enron\ncc :\nsubject : re : thanks !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephen bennett / na / enron on 04 / 18 / 2001\n06 : 11 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nkevin g moore @ ect\n04 / 18 / 2001 06 : 11 am\nto : stephen bennett / na / enron @ enron\ncc :\nsubject : re : thanks !\nr . c . 107043\nco . # 0413\nstephen , all charges for soft ware that you use in london\nshould be charged to the same cost center as tony hamilton ,\nreason being , is that someone will replace you in that position .\nthanks\nkevin moore\nenron north america corp .\nfrom : stephen bennett @ enron 04 / 18 / 2001 05 : 08 am\nto : karin ahamer / eu / enron @ enron\ncc : kevin g moore / hou / ect @ ect\nsubject : re : thanks !\nyou can cost it to my group in houston . kevin moore has the proper number\nenron capital & trade resources\ncanada corp .\nfrom : karin ahamer 04 / 18 / 2001 05 : 06 am\nto : kevin g moore / hou / ect @ ect\ncc : tony hamilton / eu / enron @ enron , mike a roberts / hou / ect @ ect , stephen\nbennett / na / enron @ enron , tani nath / lon / ect @ ect\nsubject : re : thanks !\nkevin\ndo you know whose costcentre the microsoft frontpage is supposed to go on ?\nthx karin\nenron capital & trade resources corp .\nfrom : stephen bennett 18 / 04 / 2001 10 : 10\nto : karin ahamer / eu / enron @ enron\ncc : kevin g moore / hou / ect @ ect , tony hamilton / eu / enron @ enron , mike a\nroberts / hou / ect @ ect\nsubject : thanks !\nhi karin . . .\ni hope you had a splendid holiday ! i wanted to thank you for getting tony\nand i set up here last week . we seem to have established a steady daily\nroutine and are supporting several different trading groups in london as well\nas continuing our daily support of traders in houston . we ' ve gotten far more\nrequests for information than we expected , so as a result i will be remaining\nin london a little longer than originally expected . as of now - i ' m not sure\nexactly when i ' ll be going back to houston - but vince has let me know that i\nwill remain here as long as necessary to ensure adequate daily weather\nsupport for the london traders .\nto that end - i think i will need one additional piece of software installed\non the machine that i will be using on a regular basis . could i please get\nmicrosoft frontpage installed as soon as we can get it ?\nthat leads to the second issue of desks . i know that space is a premium here\n- and i understand that i may need to move around some as a result . i\ncertainly want keep things as simple as possible for everyone - but i also\nwanted to make sure that you know that there are certain applications that\nare essential for the daily trader support in london and houston . as such ,\nif i move , we will need to make sure that these applications are available\nfrom the beginning of the day ( we start about 0600 ) . the applications are :\n1 ) adobe acrobat - full version\n2 ) accuweather for windows - ( this is something i will need to install )\n3 ) microsoft front page\n4 ) terminal server\n5 ) the full ms office software package\none idea would be to have a pc move with me - that way we would not need to\nreinstall this software which could cause problems with the daily support\nroutine .\nthanks again for all of your help . i will let you know - once i know - how\nlong i will be here . i should hear something from vince over the next few\ndays giving me an idea .\ncheers ,\nsteve\nstephen bennett\nsenior meteorologist\nenron research\ntemporarily in london : ext 3 - 4761\notherwise : ( 713 ) 345 - 3661", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.881+0000", "entityId": 10463, "properties": {"text": "Subject: re : test\nvince :\ncandice ' s contact information at mount holyoke is as follows :\nphone : ( 413 ) 493 - 5092\nemail : cgkao @ mtholyoke . edu\naddress : 1453 blanchard campus center\nmount holyoke college\nsouth hadley , ma 01075 - 6002\ned\nps : i hope ron singer has given you the needed info . please feel free to\ncontact me if i can be of any help with regard to your colleague ' s inquiry\nabout pursuing doctoral study at uh .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.886+0000", "entityId": 10464, "properties": {"text": "Subject: weijun decided not to interview\ni guess this means \" back to the drawing board \" . weijun has decided not to\ninterview .\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 04 / 18 / 2001\n09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ji , weijun \" on 04 / 18 / 2001 08 : 06 : 44 am\nto : \" ' lance . cunningham @ enron . com ' \"\ncc :\nsubject : please call me\ndear lance ,\nthank you very much for all of your help through this process .\nat present , i am really tied up with mock market activities in austin\nenergy . it would be inappropriate for me to leave at this time since the\nwhole project will be jeopardized . therefore , i decided not coming to\nhouston for an interview . i sincerely apologize for any inconvenience this\nmay cause you .\ni do appreciate what you did and hope we can keep in touch in the future .\nthank you again for your help and wish you best .\nsincerely ,\nweijun ji", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.891+0000", "entityId": 10465, "properties": {"text": "Subject: re : test\ndear vince : the email address of candice is\ncgkao @ mtholyoke . edu\ni will email you her phone number at mount holyoke this evening .\nregards\ned\non wed , 18 apr 2001 vkamins @ ect . enron . com wrote :\n> test\n>\n> vince\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.896+0000", "entityId": 10466, "properties": {"text": "Subject: weijun decided not to interview\ni guess this means \" back to the drawing board \" . weijun has decided not to interview .\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 04 / 18 / 2001 09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" ji , weijun \" on 04 / 18 / 2001 08 : 06 : 44 am\nto : \" ' lance . cunningham @ enron . com ' \"\ncc :\nsubject : please call me\ndear lance ,\nthank you very much for all of your help through this process .\nat present , i am really tied up with mock market activities in austin\nenergy . it would be inappropriate for me to leave at this time since the\nwhole project will be jeopardized . therefore , i decided not coming to\nhouston for an interview . i sincerely apologize for any inconvenience this\nmay cause you .\ni do appreciate what you did and hope we can keep in touch in the future .\nthank you again for your help and wish you best .\nsincerely ,\nweijun ji", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.901+0000", "entityId": 10467, "properties": {"text": "Subject: contact - joao c . neves & enron\ndear vince :\nit is my understanding that ms . kate szablya ( whom you apparently\nmet this past week ) of power brokers has expressed to you my interest in\nconsidering the possibility of working at enron . in addition i belive that\nshe has forwarded to you my cv .\nmy communication with ms . szablya has been less than satisfactory\nfor some time . therefore ms . szablya is nolonger representing me and i would\nlike ms . rita de claris ( whom i cc ) of de claris & associates ( 713 - 868 -\n4440 ) to represent me in the future in this search . i have instructed her to\nforward my cv to you once more .\nforgive me for this , perhaps unusual , step but i regard highly the\nopportunity of working at enron and do not feel i am being adequately\nrepresented at present .\ni look forward to hearing from you soon .\nbest regards\njoao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.906+0000", "entityId": 10468, "properties": {"text": "Subject: eprm 2001 houston\ndear speaker ,\ni would like to remind you that the room block at the houstonian hotel where\nthe above mentioned event is being held is about to expire . after friday\n20 th april you will not be able to take advantage of the discounted rooms\nthat are being held there .\nplease book your accommodation asap to take advantage of this offer .\ncontact the hotel directly and say that you are part of the risk conference\non 14 & 15 may 2001 . 001 713 680 2626 .\nrisk waters group do not book accommodation for speakers , you have to\ncontact them yourself , directly .\nif you have not already sent me a short biography and your speaker\nchecklist , please do so at your earliest convenience .\nkind regards\nlayla o ' leary\nevent co - ordinator\nrisk waters group\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ntel : + 44 ( 0 ) 20 7484 9871\nfax : + 44 ( 0 ) 20 7484 9800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.911+0000", "entityId": 10469, "properties": {"text": "Subject: eprm 2001 houston\nplease respond to dear speaker ,\ni would like to remind you that the room block at the houstonian hotel where\nthe above mentioned event is being held is about to expire . after friday\n20 th april you will not be able to take advantage of the discounted rooms\nthat are being held there .\nplease book your accommodation asap to take advantage of this offer .\ncontact the hotel directly and say that you are part of the risk conference\non 14 & 15 may 2001 . 001 713 680 2626 .\nrisk waters group do not book accommodation for speakers , you have to\ncontact them yourself , directly .\nif you have not already sent me a short biography and your speaker\nchecklist , please do so at your earliest convenience .\nkind regards\nlayla o ' leary\nevent co - ordinator\nrisk waters group\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ntel : + 44 ( 0 ) 20 7484 9871\nfax : + 44 ( 0 ) 20 7484 9800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.916+0000", "entityId": 10470, "properties": {"text": "Subject: apr 20 - wharton - final agenda\nmichael ,\nvince and i appreciate your keeping us involved with this event . good luck\nand we hope to see you soon !\n- best !\nchristie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 18 / 2001\n04 : 16 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmichael tomczyk on 04 / 18 / 2001 02 : 54 : 00 pm\nto : vkamins @ enron . com , christie _ patrick @ enron . com\ncc :\nsubject : apr 20 - wharton - final agenda\nvince and christie ,\ni know you are unable to attend this week ' s event at wharton but i thought\nyou would like to see the final agenda , and i also wanted to remind you that\nabout a week or so after the event we will post a summary of presentations\nand discussion insights on our website : ? http : / / emertech . wharton . upenn . edu .\nin addition to senior wharton faculty and colleagues , senior managers from\nthe following companies will be attending : ? charles schwab , cybersource ,\nellacoya networks , glaxosmithkline , gmac , healthnetworks . com ,\nhewlett - packard , infosys , ibm , nsa , omnichoice , philadelphia newspapers , and\nusinternetworking .\nbest regards ,\nmichael\nmanaging strategic partnerships & acquisitions ?\nfriday april 20 , 2001 - - 8 : 30 am to 400 pm\nlocation - room 1206 steinberg - dietrich hall - wharton school - philadelphia\nfinal agenda ?\nmanaging strategic partnerships\nan insight - building conference including new wharton research on\nbest practices and successful strategies for achieving corporate\ngrowth through alliances , mergers and acquisitions .\nfriday , april 20 , 2001 - 8 : 00 to 4 : 00\n1206 steinberg - dietrich hall , wharton school\npresented for our industry partners and guests by the\nemerging technologies management research program ,\nmack center on managing technological innovation\nagenda & conference topics\n8 : 00 - 8 : 30 ? - ? continental breakfast and informal networking\n8 : 30 - 8 : 45\nintroduction : strategic partnering for growth and innovation\nharbir singh , wharton\n8 : 45 - 9 : 30 ? - networking , partnerships & strategy\nlori rosenkopf , wharton\n9 : 30 - 11 : 00 ? - success and failure factors in strategic partnering\ntodd horst , usinternetworking\ntim george , pfizer\ndave daetz , cybersource\n11 : 00 - 11 : 15 ? - break\n11 : 15 - 11 : 40 ? - building partnering skills and capabilities\nprashant kale , university of michigan\n11 : 40 - 12 : 00 ? - successes & failures in strategic outsourcing : some initial\nfindings\nhoward perlmutter , wharton\n12 : 00 - 1 : 30 ? working lunch - strategic partnering as a core competency\npaul j . h . schoemaker and roch parayre , wharton\n1 : 30 - 1 : 45 ? - mapping social networks : applications to strategic partnering\nruhul quddus , wharton\n1 : 45 - 2 : 30 ? - small group reports\npaul j . h . schoemaker & roch parayre , wharton\n2 : 30 - 2 : 45 ? - break\n2 : 45 - 3 : 45 ? - managing high technology acquisitions\nphanish puranam , wharton\nwalt vester & harry hirschman , wharton\nkerri ford , wharton\n3 : 45 - 4 : 00 ? - summary of key insights and future research goals\nharbir singh , wharton\n4 : 00 - adjourn\n- -\nmichael s . tomczyk\nmanaging director\nemerging technologies management research program\n1400 sh - dh / 6371\nthe wharton school\nphiladelphia , pa 19104 - 6371\ntel 215 - 573 - 7722\nfax 215 - 573 - 2129\nwebsite : ? http : / / emertech . wharton . upenn . edu", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.921+0000", "entityId": 10471, "properties": {"text": "Subject: re : clustering for gas and power\nfrank ,\nfollowing up on our discussions ,\ncan you please send us the list of enron ' s curves by geographical region\nseparately for gas and power .\nappreciate it ,\ntanya .\ntanya tamarchenko\n04 / 16 / 2001 09 : 16 am\nto : jaesoo lew / na / enron @ enron\ncc : vladimir gorny / enron @ enronxgate , winston jia / enron @ enronxgate , vince j\nkaminski / hou / ect @ ect\nsubject : re : clustering for power\njaesoo ,\nas we discussed last week on wednesday meeting can you , please ,\nimplement clustering for power curves by geographical region . this involves\nthe following :\n1 . deciding together with risk control how many geographical regions we want\nto use\nand which enron ' s curves belong to each region .\n2 . deciding together with risk control how to choose core curves for each\nregion . this decision can\nbe maid based on the a ) position size ; b ) statistical analysis . there might\nbe other considerations .\n3 . doing regression analysis for each curve versus the corresponding core\ncurve .\nwinston ,\ncan is it possible to run var for the clustering results obtained by jaesoo\nwith clustering done by sas ?\nshould we wait for the stage re - fresh and what is the status on this ?\ntanya .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.926+0000", "entityId": 10472, "properties": {"text": "Subject: re : clustering for gas and power\nfrank ,\nfollowing up on our discussions ,\ncan you please send us the list of enron ' s curves by geographical region\nseparately for gas and power .\nappreciate it ,\ntanya .\ntanya tamarchenko\n04 / 16 / 2001 09 : 16 am\nto : jaesoo lew / na / enron @ enron\ncc : vladimir gorny / enron @ enronxgate , winston jia / enron @ enronxgate , vince j kaminski / hou / ect @ ect\nsubject : re : clustering for power\njaesoo ,\nas we discussed last week on wednesday meeting can you , please ,\nimplement clustering for power curves by geographical region . this involves the following :\n1 . deciding together with risk control how many geographical regions we want to use\nand which enron ' s curves belong to each region .\n2 . deciding together with risk control how to choose core curves for each region . this decision can\nbe maid based on the a ) position size ; b ) statistical analysis . there might be other considerations .\n3 . doing regression analysis for each curve versus the corresponding core curve .\nwinston ,\ncan is it possible to run var for the clustering results obtained by jaesoo with clustering done by sas ?\nshould we wait for the stage re - fresh and what is the status on this ?\ntanya .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.932+0000", "entityId": 10473, "properties": {"text": "Subject: ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001 02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\nisc help desk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.939+0000", "entityId": 10474, "properties": {"text": "Subject: re : trading algorithms\nandy ,\nsounds good . one comment : vasant is swamped with work coordinating\nseveral high profile projects .\nbob is very productive and thorough and will get a lot of support\ninternally from other members of the group : this contribution\nmay not be directly visible but it will be still very important .\nwe appreciate your hands - on involvement . it ' s always the most\nimportant condition of a successful project to have direct and frequent interaction\nwith the customer . look fwd to working on this project .\nvince\nfrom : andy zipper / enron @ enronxgate on 04 / 18 / 2001 01 : 57 pm\nto : jay webb / enron @ enronxgate , vince j kaminski / hou / ect @ ect\ncc :\nsubject : trading algorithms\nguys ,\nhere is what i took away from our meeting :\n1 ) . research will continue working on custom reporting off of enrononline data .\n2 ) . research will continue working on market analysis off of enrononline data\n3 ) . research will a contribute a resource to the trading algorithm effort , presumably one at this point in time . i would prefer it to be vasant but i am flexible . the trading algorithm group will be run by the enrononline team with its product reviewed by research . it is my belief that projects like this require a firm commercial hand in their infancy to make sure they stay on the right track .\nif this presents a problem for anyone please let me know so that we can discuss .\nthanks ,\nandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.944+0000", "entityId": 10475, "properties": {"text": "Subject: re : trading algorithms\nandy ,\nsounds good . one comment : vasant is swamped with work coordinating\nseveral high profile projects .\nbob is very productive and thorough and will get a lot of support\ninternally from other members of the group : this contribution\nmay not be directly visible but it will be still very important .\nwe appreciate your hands - on involvement . it ' s always the most\nimportant condition of a successful project to have direct and frequent\ninteraction\nwith the customer . look fwd to working on this project .\nvince\nfrom : andy zipper / enron @ enronxgate on 04 / 18 / 2001 01 : 57 pm\nto : jay webb / enron @ enronxgate , vince j kaminski / hou / ect @ ect\ncc :\nsubject : trading algorithms\nguys ,\nhere is what i took away from our meeting :\n1 ) . research will continue working on custom reporting off of enrononline\ndata .\n2 ) . research will continue working on market analysis off of enrononline data\n3 ) . research will a contribute a resource to the trading algorithm effort ,\npresumably one at this point in time . i would prefer it to be vasant but i am\nflexible . the trading algorithm group will be run by the enrononline team with\nits product reviewed by research . it is my belief that projects like this\nrequire a firm commercial hand in their infancy to make sure they stay on the\nright track .\nif this presents a problem for anyone please let me know so that we can\ndiscuss .\nthanks ,\nandy", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.949+0000", "entityId": 10476, "properties": {"text": "Subject: re : turkey\nthe group to whom this message was sent is rac in london , related to london ' s\nfocus on enron ' s equity interest in opet ( $ 18 million exposure ) .\ngwyn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 04 / 19 / 2001 06 : 59\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngwyn koepke\n04 / 19 / 2001 06 : 58 pm\nto : suryan wirya simunovic / lon / ect @ ect\ncc : gkoepke @ enron . com @ ect , jolyon manning / eu / enron @ enron , padmesh\nthuraisingham / lon / ect @ ect , maureen raymond / lon / ect @ ect , mitra\nmujica / enron @ enronxgate\nsubject : re : turkey\nsuryan ,\nplease find attached a brief on turkey , per your request . as stated in the\nbrief , this is a preliminary forecast and is subject to change upon further\ngovernment announcements related to external financing and monetary / fx\npolicies .\ngwyn koepke\nsuryan wirya simunovic @ ect\n04 / 19 / 2001 10 : 48 am\nto : gkoepke @ enron . com\ncc : jolyon manning / eu / enron @ enron , padmesh thuraisingham / lon / ect @ ect\nsubject : turkey\ngwyn ,\npaddy and i spoke to you earlier today regarding eel ' s turkish investment .\nyou mentioned that you could send us a brief report on what has been going on\nin turkey in the last couple of weeks . as we are having a meeting tomorrow\nam could you still send us this report before business closing houston to\nmyself , paddy and jolyon manning .\nthank you\nsuryan wirya simunovic", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.958+0000", "entityId": 10477, "properties": {"text": "Subject: re : turkey\nthe group to whom this message was sent is rac in london , related to london ' s focus on enron ' s equity interest in opet ( $ 18 million exposure ) .\ngwyn\n- - - - - - - - - - - - - - - - - - - - - - forwarded by gwyn koepke / na / enron on 04 / 19 / 2001 06 : 59 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngwyn koepke\n04 / 19 / 2001 06 : 58 pm\nto : suryan wirya simunovic / lon / ect @ ect\ncc : gkoepke @ enron . com @ ect , jolyon manning / eu / enron @ enron , padmesh thuraisingham / lon / ect @ ect , maureen raymond / lon / ect @ ect , mitra mujica / enron @ enronxgate\nsubject : re : turkey\nsuryan ,\nplease find attached a brief on turkey , per your request . as stated in the brief , this is a preliminary forecast and is subject to change upon further government announcements related to external financing and monetary / fx policies .\ngwyn koepke\nsuryan wirya simunovic @ ect\n04 / 19 / 2001 10 : 48 am\nto : gkoepke @ enron . com\ncc : jolyon manning / eu / enron @ enron , padmesh thuraisingham / lon / ect @ ect\nsubject : turkey\ngwyn ,\npaddy and i spoke to you earlier today regarding eel ' s turkish investment . you mentioned that you could send us a brief report on what has been going on in turkey in the last couple of weeks . as we are having a meeting tomorrow am could you still send us this report before business closing houston to myself , paddy and jolyon manning .\nthank you\nsuryan wirya simunovic\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.967+0000", "entityId": 10478, "properties": {"text": "Subject: re : d dhar , amitava\ncc : chaney , craig ; mumford , mike ; kirkpatrick , eric ; brent , richard ; parsons ,\nben ; albanis , george\nsubject : re : d & b contact names\niris / amitava ,\ni may have already said this , but we ' ve had so many e - mails and telephone\ncalls flying back and forth that i wanted to make sure i at least got this\nmuch out to you . clearly , i would like you to set up the meeting with the\nriskcalc gurus to dig deeper into their methodology ( as much as they ' ll tell )\nand the impact of missing variables and any other idiosyncracies the model\nmay have . also try to get a better feel for how well they think the model\nextends to other countries . i know from a previous conversation with lea\ncarty and reading about the model that it was calibrated off north american\nnames but they suspect it might extend to other countries . conversely , i\nknow they are working efforts within moody ' s risk management services to\ndevelop private ( and probably public ) firm models specific to regions . one\nthey mentioned was australia and also within western europe . data , as\nalways , was the issue . see if the quants have any perspective on their\nsuccess / plan in that area .\nlastly , we truly appreciate the aggressive efforts you both have made toward\npushing off this private model initiative and i ' m very confident we ' ll be\nable to nail a firm plan down upon receipt of either d & b and / or experian data .\ncheers ,\nscott\n- - - - - - - - - - - - - - - - - - - - - - forwarded by scott salmon / eu / enron on 19 / 04 / 2001 20 : 51\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nmike mumford @ ect\n19 / 04 / 2001 17 : 55\nto : scott salmon / eu / enron @ enron\ncc :\nsubject : re : d & b contact names\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike mumford / lon / ect on 19 / 04 / 2001 17 : 59\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : iris mack / enron @ enronxgate on 19 / 04 / 2001 09 : 23 cdt\nto : mike mumford / lon / ect @ ect\ncc : amitava dhar / corp / enron @ enron\nsubject : re : d & b contact names\nhi ,\ntwo riskcalc sales people made a presentation this week about their product .\nthey stated that they could set up a meeting with their quants and our\npeople to discuss the model input and what happens if we have less than 17\ninputs .\nregards ,\niris\n- - - - - original message - - - - -\nfrom : mumford , mike\nsent : thursday , april 19 , 2001 1 : 37 am\nto : mack , iris\nsubject : re : d & b contact names\nooops . . . part ii .\ni just threw out 12 as a number for something we might develop . . . it ' s really\nnot based on anything . we know 17 will work for pre - packaged programs . we\nalso know there will be a great number of names with less than the full 17 . . .\ni assume we would pursue another model ( internal or external ) to provide\nprobably less accurate numbers but at least available for names with fewer\ninputs .\nmike\nfrom : iris mack / enron @ enronxgate on 18 / 04 / 2001 15 : 02 cdt\nto : mike mumford / lon / ect @ ect\ncc : amitava dhar / corp / enron @ enron , scott salmon / eu / enron @ enron , eric\nkirkpatrick / eu / enron @ enron\nsubject : re : d salmon , scott ; kirkpatrick , eric\nsubject : re : d & b contact names\niris ,\nthanks .\nafter our meeting we stuck around to discuss things a little further .\nspecifically with respect to global counterparty names . . . we have duns\ncross - references on about 70 of active names ( 13 k out of 18 . 5 k ) . we could\ngreatly accellerate purchase of some useful data by buying blind all major\ndata associated with these specific duns numbers .\npro - data gets in on names we know we want to review asap , but without\nresolution on which specific fields are most useful . we also get to test for\ncompleteness of data ( how many have all 17 fields . . . how many have only 12 of\nwhich fields , etc . ) .\ncon - costs could be significantly higher . . . buying info we don ' t know we\nneed ( converse of buying only the 17 fields doesn ' t seem best answer ) . we\nwould end up buying additional info later . . . overhead costs and piecemeal\nbuying will increase costs . it development time would be greatly\nincreased . . . multiple file formats . . . developing to unknown maximum size ,\netc . . . . redoing when more data is purchased .\nany thoughts .\nmike", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.972+0000", "entityId": 10479, "properties": {"text": "Subject: re : london status report - research weather\nfyi our 10 : 30 meeting today\n- mike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 20 / 2001\n06 : 41 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntony hamilton @ enron\n04 / 20 / 2001 06 : 35 am\nto : mike . a . roberts @ enron . com\ncc : tani . nath @ enron . com\nsubject : re : london status report - research weather\ntony hamilton\n04 / 20 / 2001 04 : 03 am\nto : stephen . bennett @ enron . com\ncc :\nsubject : re : london status report - research weather\nhi mike ,\nplease find a list of our current daily products and services , together with\nidentified research projects ( to - date ) for european weather research - this\nhas been forwarded to tani nath to aid her recommendations for a 2 nd met . for\nlondon .\n1 ) this week :\n* a meeting with james willis ( agriculture ) has been arranged for monday\nafternoon to discuss weather input for softs .\n* following suggestion from tani , meeting has been pencilled in with pierre\naury ( coal trading ) to discuss weather input .\n* at present we are providing kristian lande ( continental power ) with daily\nprecipitation outlook for spain - he is working towards getting a daily\nweather breifing for power set up .\n* a meeting with alex mcleish ( global products ) has been pencilled in\nfollowing his return from houston to discuss the way forward in building a\nforecast model for crude api based on hdds on either side of the atlantic .\n* we have made progress in getting additional information on european ports\nfollowing meeting with scott moncrieff and sylvie mostura ( shipping and\ntransportation ) - we now get forwarded daily reports for some baltic , black\nsea , scandanavian , italian and indian ports , which include various degrees of\nweather information .\n* we now supply north sea conditions and forecasts as a part of the 8 am uk\ngas briefing .\n* we ' ve added a midday \" update \" for uk gas traders if / when mrf ensembles\nwarrent changes or clarification .\n* following extremely useful meeting with tani nath , it is now clear that need\nfor 2 nd meteorologist will have to be cleared with her superiors here in\nlondon before moving forward .\n2 ) still to follow up\n* get meeting with chris mahoney to determine if we can provide any\nadditional support ( e . g . daily briefing ) for crude and products .\n* follow up on a potential morning briefing for continental power .\n* get meeting arranged with david anderson at ecmwf to discuss data products\nand services they provide .\n* continue to investigate model grib data to produce a \" confidence interval \"\nfor model output .\n* meet with ross mcyntire to determine needs from weather drivatives\n* develop a standard hydro product ( daily updates ) for continental power\n( spain specifically )\n* develop forecast verification scheme and internal forecasting tools\n* avistar recorded europe briefings\n3 ) challenges :\n* still appears to be some confusion over whether we are moving desks this\nafternoon or not !\n* karin ahamer ( the team assistant here ) is going to verify later exactly\nwhich pcs we will be using from monday next week ( some of the loaner pcs we\nare currently using contain important software left over from their previous\nusers ) .\n* our time in assembling reports is becoming more efficient on a daily\nbasis . however as our product load increases this may become a factor over\nnext few weeks .\n_ _ _ _ _ _ _ _ _ _ _ _ _ _\nmike ,\nwe look forward to talking with you and vince later today !\nsee you later ,\ntony", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.977+0000", "entityId": 10480, "properties": {"text": "Subject: re : interview\nsteve ,\ni submitted my evaluation . general impression was rather\nnegative : he seems to be a consultant type person\nwho speaks about everything with confidence but is short on depth\nand technical details .\nhe is personable , outspoken , organized - on the positive\nside .\nalso , the red flag is that he jumps from job to job : typical after\n18 - 24 months when any organization can ascertain his usefulness .\nvince\nfrom : stephen stock / enron @ enronxgate on 04 / 17 / 2001 01 : 03 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : interview\nhi vince ,\nwhat did you think of david hsu ?\nmy thoughts .\noverall a good guy . personable . intelligent .\nhe could communicate reasonably well , but seemed to be capable of losing\nobjectivity in favour of technical advancement .\nhe didn ' t seem comfortable with taking a man - management role ( at least he\ndidn ' t want to be an ' administrator ' )\nhe appeared to know a lot about risk . ( in fact jay web called me to say he\nfelt david was one of the better risk guys he had seen but also commented\nthat he needed to be coupled with a project manager to be successfull ) .\nregards\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.982+0000", "entityId": 10481, "properties": {"text": "Subject: renshi zhang ' s resume\nshirley and molly ,\nvince is interested to set up an interview for renshi zhang . any day except\nthursday next week\nis good .\ninterviewers : vince , stinson , vasant , tanya , alex , bob , krishna and myself .\ncontact number for mr . zhang is 713 - 544 - 5989 .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 19 / 2001 03 : 52 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n04 / 05 / 2001 09 : 49 am\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 05 / 2001 09 : 46 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 14 / 2001 10 : 06 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : resume\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 14 / 2001\n10 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 03 / 09 / 2001 07 : 46 : 22 am\nto : vince kaminski\ncc :\nsubject : resume\nvince ,\nhow are you . this candidate would be interested in any positions in\nyour group .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party .\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n- zhan _ ren . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.987+0000", "entityId": 10482, "properties": {"text": "Subject: maddox\nvince ,\nhere is michael maddox contact information :\ntel : ( 617 ) 497 6446\nemail : mmaddox @ cera . com\nthey have an office in europe as well . i would love to be involved in\nprojects involving georgia , azerbaijan , turkey , etc .\nmy resume\nthanks ,\nbessik matchavariani\nenron broadband services\ntel : 713 . 345 . 7230\nfax : 713 . 646 . 8861\nbessik _ matchavariani @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.992+0000", "entityId": 10483, "properties": {"text": "Subject: re : test\nthanks , vince . we have received both her application and her signed offer\nletter , so we are moving in the right direction .\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : thursday , april 19 , 2001 10 : 44 am\nto : magee , molly\ncc : crenshaw , shirley\nsubject : re : test\nmolly\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 19 / 2001\n10 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nedward kao on 04 / 18 / 2001 08 : 30 : 49 pm\nto : vkamins @ ect . enron . com\ncc :\nsubject : re : test\nvince :\ncandice ' s contact information at mount holyoke is as follows :\nphone : ( 413 ) 493 - 5092\nemail : cgkao @ mtholyoke . edu\naddress : 1453 blanchard campus center\nmount holyoke college\nsouth hadley , ma 01075 - 6002\ned\nps : i hope ron singer has given you the needed info . please feel free to\ncontact me if i can be of any help with regard to your colleague ' s inquiry\nabout pursuing doctoral study at uh .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:55.996+0000", "entityId": 10484, "properties": {"text": "Subject: re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\nraul ,\nraul ,\nvince kaminiski is requesting acces to the technical view for catalog along\nwith the ibuyit approval role . this is pending your approval . please send\nyour response to sap security .\nthanks !\nshirley crenshaw @ ect\n04 / 19 / 2001 03 : 01 pm\nto : sapsecurity @ enron . com\ncc : vince j kaminski / hou / ect @ ect\nsubject : ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\nisc help desk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.002+0000", "entityId": 10485, "properties": {"text": "Subject: ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\nisc help desk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.006+0000", "entityId": 10486, "properties": {"text": "Subject: re : interview\nsteve ,\ni submitted my evaluation . general impression was rather\nnegative : he seems to be a consultant type person\nwho speaks about everything with confidence but is short on depth\nand technical details .\nhe is personable , outspoken , organized - on the positive\nside .\nalso , the red flag is that he jumps from job to job : typical after\n18 - 24 months when any organization can ascertain his usefulness .\nvince\nfrom : stephen stock / enron @ enronxgate on 04 / 17 / 2001 01 : 03 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : interview\nhi vince ,\nwhat did you think of david hsu ?\nmy thoughts .\noverall a good guy . personable . intelligent .\nhe could communicate reasonably well , but seemed to be capable of losing objectivity in favour of technical advancement .\nhe didn ' t seem comfortable with taking a man - management role ( at least he didn ' t want to be an ' administrator ' )\nhe appeared to know a lot about risk . ( in fact jay web called me to say he felt david was one of the better risk guys he had seen but also commented that he needed to be coupled with a project manager to be successfull ) .\nregards\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.011+0000", "entityId": 10487, "properties": {"text": "Subject: renshi zhang ' s resume\nshirley and molly ,\nvince is interested to set up an interview for renshi zhang . any day except thursday next week\nis good .\ninterviewers : vince , stinson , vasant , tanya , alex , bob , krishna and myself .\ncontact number for mr . zhang is 713 - 544 - 5989 .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 19 / 2001 03 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n04 / 05 / 2001 09 : 49 am\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 05 / 2001 09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 14 / 2001 10 : 06 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : resume\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 14 / 2001 10 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 03 / 09 / 2001 07 : 46 : 22 am\nto : vince kaminski\ncc :\nsubject : resume\nvince ,\nhow are you . this candidate would be interested in any positions in\nyour group .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party .\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n- zhan _ ren . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.016+0000", "entityId": 10488, "properties": {"text": "Subject: maddox\nvince ,\nhere is michael maddox contact information :\ntel : ( 617 ) 497 6446\nemail : mmaddox @ cera . com\nthey have an office in europe as well . i would love to be involved in projects involving georgia , azerbaijan , turkey , etc .\nmy resume\nthanks ,\nbessik matchavariani\nenron broadband services\ntel : 713 . 345 . 7230\nfax : 713 . 646 . 8861\nbessik _ matchavariani @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.020+0000", "entityId": 10489, "properties": {"text": "Subject: re : test\nthanks , vince . we have received both her application and her signed offer letter , so we are moving in the right direction .\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : thursday , april 19 , 2001 10 : 44 am\nto : magee , molly\ncc : crenshaw , shirley\nsubject : re : test\nmolly\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 19 / 2001 10 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nedward kao on 04 / 18 / 2001 08 : 30 : 49 pm\nto : vkamins @ ect . enron . com\ncc :\nsubject : re : test\nvince :\ncandice ' s contact information at mount holyoke is as follows :\nphone : ( 413 ) 493 - 5092\nemail : cgkao @ mtholyoke . edu\naddress : 1453 blanchard campus center\nmount holyoke college\nsouth hadley , ma 01075 - 6002\ned\nps : i hope ron singer has given you the needed info . please feel free to\ncontact me if i can be of any help with regard to your colleague ' s inquiry\nabout pursuing doctoral study at uh .\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.025+0000", "entityId": 10490, "properties": {"text": "Subject: meetings next week\nhi guys ,\nvince talked with christie and they both are available next tuesday ( game\nday ) at 9 am . can you meet then to start preparing an outline ?\nalso would you be up for a presentation at the research group ' s lunch meeting\nnext thursday ? vince will be out , but you ' ll undoubtably get some\ninteresting questions from others at the meeting , if your up for it . let me\nknow soon , and we can schedule you for next thursday .\ntalk to you later\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.030+0000", "entityId": 10491, "properties": {"text": "Subject: re : term project :\ndear vince ,\ni was wondering if you were able to open the attachment with my resume this\ntime . rumor has it that you are currently hiring people for your group . is\nthis true ?\nsincerely ,\nhelen\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 3 : 22 pm\nto : isranir @ rice . edu ; demianen @ rice . edu ; tbal 93 @ yahoo . com ;\nmaue @ rice . edu ; loughrid @ rice . edu ; jblantonjr @ yahoo . com ;\ngjohnson @ rice . edu ; emchombo @ rice . edu ; nazareth @ rice . edu ;\nvanstone @ rice . edu ; ganguzza @ rice . edu ; nelsonb @ rice . edu ;\nsssmith @ rice . edu ; wheelock @ rice . edu ; westmore @ rice . edu ;\ngaudette @ rice . edu ; otaylor @ rice . edu ; dikeman @ rice . edu ; jettke @ rice . edu ;\nlitton @ rice . edu ; chilkina @ rice . edu ; helms @ rice . edu ; wankhade @ rice . edu ;\nmonfan @ rice . edu ; kostya @ rice . edu ; pcp @ rice . edu ; yueguo @ rice . edu ;\nnlwbio @ rice . edu ; zhangn @ rice . edu ; rishad @ rice . edu ; yoshiura @ rice . edu ;\nhoward @ rice . edu ; dayangd @ rice . edu ; wuwei @ rice . edu ; so @ rice . edu ;\nwooddy @ rice . edu ; lamas @ rice . edu ; tbalestrery @ houston . rr . com ;\nhingoran @ rice . edu ; planck @ rice . edu\ncc : vkaminski @ aol . com ; vince . j . kaminski @ enron . com ;\njason . sokolov @ enron . com\nsubject : term project :\nthis is the list of projects for the members of the \" quant \" team .\nif you are working on different project , please , ignore this message .\nplease , develop in a spreadsheet solutions / examples for the following :\n1 . black - scholes formula\n2 . black ' s formula\n3 . develop a spreadsheet to simulate price trajectory using :\na . gbm\nb . gbm + jump ( formula 2 . 16 in the book , figure 2 . 7 )\nc . mean reversion + jump ( formula 2 . 17 , figure 2 . 8 )\n4 . schwartz single factor model ( formula 6 . 12 )\n5 . develop models corresponding to the figures 7 . 1 , 7 . 3 , 7 . 5 , 7 . 6 , 7 . 8\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.035+0000", "entityId": 10492, "properties": {"text": "Subject: the national forum on corporate finance\nmr . fastow ,\ni ' m writing all of our participants and confirming plans for the upcoming\ncorporate finance meetings on may 4 - 5 here . as a reminder , you are slated\nto sit on the executive option / equity dilution panel on saturday\nmorning . dave yermack from nyu , the number one expert on this issue , is\npresenting at that session . ( again , serving as a panelist should require\nlittle preparation on your behalf . )\nalso , you and your wife are welcome to attend the dinner on friday evening ,\nmay 4 . it will be held in the baker institute across from the business\nschool . tom copeland is our speaker - ( i think he plans to focus his\nremarks on real options ) . vince kaminski has told me he will be at the\ndinner , however his wife is out of town and will not be .\nplease call me direct if i can be of any help or assistance . i look\nforward to seeing you soon . i ' ve attached a copy of the program along with\na name rooster of those planning to attend .\ndave ikenberry\n* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.039+0000", "entityId": 10493, "properties": {"text": "Subject: meetings next week\nhi guys ,\nvince talked with christie and they both are available next tuesday ( game day ) at 9 am . can you meet then to start preparing an outline ?\nalso would you be up for a presentation at the research group ' s lunch meeting next thursday ? vince will be out , but you ' ll undoubtably get some interesting questions from others at the meeting , if your up for it . let me know soon , and we can schedule you for next thursday .\ntalk to you later\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.045+0000", "entityId": 10494, "properties": {"text": "Subject: re : term project :\nplease respond to dear vince ,\ni was wondering if you were able to open the attachment with my resume this\ntime . rumor has it that you are currently hiring people for your group . is\nthis true ?\nsincerely ,\nhelen\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 3 : 22 pm\nto : isranir @ rice . edu ; demianen @ rice . edu ; tbal 93 @ yahoo . com ;\nmaue @ rice . edu ; loughrid @ rice . edu ; jblantonjr @ yahoo . com ;\ngjohnson @ rice . edu ; emchombo @ rice . edu ; nazareth @ rice . edu ;\nvanstone @ rice . edu ; ganguzza @ rice . edu ; nelsonb @ rice . edu ;\nsssmith @ rice . edu ; wheelock @ rice . edu ; westmore @ rice . edu ;\ngaudette @ rice . edu ; otaylor @ rice . edu ; dikeman @ rice . edu ; jettke @ rice . edu ;\nlitton @ rice . edu ; chilkina @ rice . edu ; helms @ rice . edu ; wankhade @ rice . edu ;\nmonfan @ rice . edu ; kostya @ rice . edu ; pcp @ rice . edu ; yueguo @ rice . edu ;\nnlwbio @ rice . edu ; zhangn @ rice . edu ; rishad @ rice . edu ; yoshiura @ rice . edu ;\nhoward @ rice . edu ; dayangd @ rice . edu ; wuwei @ rice . edu ; so @ rice . edu ;\nwooddy @ rice . edu ; lamas @ rice . edu ; tbalestrery @ houston . rr . com ;\nhingoran @ rice . edu ; planck @ rice . edu\ncc : vkaminski @ aol . com ; vince . j . kaminski @ enron . com ;\njason . sokolov @ enron . com\nsubject : term project :\nthis is the list of projects for the members of the \" quant \" team .\nif you are working on different project , please , ignore this message .\nplease , develop in a spreadsheet solutions / examples for the following :\n1 . black - scholes formula\n2 . black ' s formula\n3 . develop a spreadsheet to simulate price trajectory using :\na . gbm\nb . gbm + jump ( formula 2 . 16 in the book , figure 2 . 7 )\nc . mean reversion + jump ( formula 2 . 17 , figure 2 . 8 )\n4 . schwartz single factor model ( formula 6 . 12 )\n5 . develop models corresponding to the figures 7 . 1 , 7 . 3 , 7 . 5 , 7 . 6 , 7 . 8\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.050+0000", "entityId": 10495, "properties": {"text": "Subject: continue enjoying iijournals - - renew today !\ndear vince kaminski ,\nwe hope you are enjoying the benefits of receiving market - leading , rigorous\nand current research from industry experts through your subscription to\nderivatives quarterly .\nunfortunately , your subscription is about to expire ! by renewing now , your\naccess to the web site and to your print copies will be uninterrupted .\nyou can continue to get the exclusive research and practical advice for\nfinancial practitioners \u0001 ) written by the best minds in your business !\nclick here to renew today\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.060+0000", "entityId": 10496, "properties": {"text": "Subject: continue enjoying iijournals - - renew today !\ndear vince kaminski ,\nwe hope you are enjoying the benefits of receiving market - leading , rigorous and current research from industry experts through your subscription to derivatives quarterly .\nunfortunately , your subscription is about to expire ! by renewing now , your access to the web site and to your print copies will be uninterrupted .\nyou can continue to get the exclusive research and practical advice for financial practitioners - written by the best minds in your business !\nclick here to renew today\nthank you .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.069+0000", "entityId": 10497, "properties": {"text": "Subject: re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\nraul ,\nraul ,\nvince kaminiski is requesting acces to the technical view for catalog along with the ibuyit approval role . this is pending your approval . please send your response to sap security .\nthanks !\nshirley crenshaw @ ect\n04 / 19 / 2001 03 : 01 pm\nto : sapsecurity @ enron . com\ncc : vince j kaminski / hou / ect @ ect\nsubject : ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001 02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\nisc help desk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.074+0000", "entityId": 10498, "properties": {"text": "Subject: re : var meetings in houston\nshirley ,\ndo you think we can get another room with better speaker phone ?\nor , may be we can get better speaker phone ?\ntanya\nviacheslav danilov\n04 / 19 / 2001 12 : 58 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc : stig faltinsen / eu / enron @ enron , kirstee hewitt / lon / ect @ ect\nsubject : var meetings in houston\nhi tanya ,\nin my view it is very good if stig and kirstee are involved in your var meetings . therefore , i think it is very useful for them to call houston .\ncould we get a little bit better equipment to allow them to hear everything well ?\nmany thanks ,\nslava\n- - - - - - - - - - - - - - - - - - - - - - forwarded by viacheslav danilov / lon / ect on 19 / 04 / 2001 12 : 55 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstig faltinsen @ enron\n19 / 04 / 2001 16 : 23\nto : viacheslav danilov / lon / ect @ ect\ncc : kirstee hewitt / lon / ect @ ect\nsubject : var meetings in houston\nhi slava ,\nkirstee and i find it useful to listen in on the var meetings in houston on wednesdays .\nhowever , it is very difficult to follow the discussion due to a practical problem : we hear little or nothing at times .\na possible solution to this problem might be to ask whether one could install a \" spider phone \" in the var meeting room .\nwhat i mean is a phone similar to the one in the rac morning meetings which have several remote speakers going out\nfrom the main phone ( do you understand what i mean ? ) . if this is done , we would hear everyone around the table ,\nnot just those seated close to the phone .\nwhat is you opinion on\na . us in london calling in to these meetings\nb . getting some better equipment which would make it easier to follow the conversation ( \" spider phone \" or bigger speaker . . )\nplease let me know what your thoughts are ,\nbest regards ,\nstig\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.079+0000", "entityId": 10499, "properties": {"text": "Subject: re : var meetings in houston\nshirley ,\ndo you think we can get another room with better speaker phone ?\nor , may be we can get better speaker phone ?\ntanya\nviacheslav danilov\n04 / 19 / 2001 12 : 58 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc : stig faltinsen / eu / enron @ enron , kirstee hewitt / lon / ect @ ect\nsubject : var meetings in houston\nhi tanya ,\nin my view it is very good if stig and kirstee are involved in your var\nmeetings . therefore , i think it is very useful for them to call houston .\ncould we get a little bit better equipment to allow them to hear everything\nwell ?\nmany thanks ,\nslava\n- - - - - - - - - - - - - - - - - - - - - - forwarded by viacheslav danilov / lon / ect on 19 / 04 / 2001\n12 : 55 - - - - - - - - - - - - - - - - - - - - - - - - - - -\nstig faltinsen @ enron\n19 / 04 / 2001 16 : 23\nto : viacheslav danilov / lon / ect @ ect\ncc : kirstee hewitt / lon / ect @ ect\nsubject : var meetings in houston\nhi slava ,\nkirstee and i find it useful to listen in on the var meetings in houston on\nwednesdays .\nhowever , it is very difficult to follow the discussion due to a practical\nproblem : we hear little or nothing at times .\na possible solution to this problem might be to ask whether one could install\na \" spider phone \" in the var meeting room .\nwhat i mean is a phone similar to the one in the rac morning meetings which\nhave several remote speakers going out\nfrom the main phone ( do you understand what i mean ? ) . if this is done , we\nwould hear everyone around the table ,\nnot just those seated close to the phone .\nwhat is you opinion on\na . us in london calling in to these meetings\nb . getting some better equipment which would make it easier to follow the\nconversation ( \" spider phone \" or bigger speaker . . )\nplease let me know what your thoughts are ,\nbest regards ,\nstig", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.084+0000", "entityId": 10500, "properties": {"text": "Subject: petrochem desk\ni had a chance to speak with christian lebroc this morning with regard to curve building for petrochemicals . as it turns out , christian left rac in april and joined the petrochem desk as a trader . previous efforts at construction of a forward curve by the group have focused on intuition or swags . unfortunately , the group had a rough p & l year with at least some of the blame directed toward the forward curve or lack thereof . when asked about the fundamentals group , christian indicated that they ' d only been around about 3 - 4 months and are not yet well - suited to curve building . john nowlan is indeed the head of the group .\nfrom a timing perspective , i told christian that it would probably take at least 6 - 8 weeks to develop a curve , especially considering the need to understand the key market drivers / fundamentals . as was suggested yesterday during our meeting , a strong relationship between petrochemicals and a nymex component ( e . g . , crude oil ) would provide a great beginning point - - we could then potentially strengthen / augment this relationship with other key factors ( e . g . , supply and demand terms ) borne out of our market research .\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.088+0000", "entityId": 10501, "properties": {"text": "Subject: petrochem desk\ni had a chance to speak with christian lebroc this morning with regard to\ncurve building for petrochemicals . as it turns out , christian left rac in\napril and joined the petrochem desk as a trader . previous efforts at\nconstruction of a forward curve by the group have focused on intuition or\nswags . unfortunately , the group had a rough p & l year with at least some of\nthe blame directed toward the forward curve or lack thereof . when asked\nabout the fundamentals group , christian indicated that they ' d only been\naround about 3 - 4 months and are not yet well - suited to curve building . john\nnowlan is indeed the head of the group .\nfrom a timing perspective , i told christian that it would probably take at\nleast 6 - 8 weeks to develop a curve , especially considering the need to\nunderstand the key market drivers / fundamentals . as was suggested yesterday\nduring our meeting , a strong relationship between petrochemicals and a nymex\ncomponent ( e . g . , crude oil ) would provide a great beginning point - - we could\nthen potentially strengthen / augment this relationship with other key factors\n( e . g . , supply and demand terms ) borne out of our market research .\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.093+0000", "entityId": 10502, "properties": {"text": "Subject: coming back to london\nhi guys ,\nit was nice to work with each of you for the last couple of weeks . it was\ngreat time and i enjoyed every single day here .\ni am very much impressed with research team in houston and looking forward to\nstrengthen our co - operation even further .\nhave all great time and not a very hot summer .\nhope to see all you soon .\nmany thanks ,\nslava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.098+0000", "entityId": 10503, "properties": {"text": "Subject: re : desk move / computer stuff\nthanks karin . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by kevin g moore / hou / ect on 04 / 20 / 2001 08 : 07\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron capital & trade resources\ncanada corp .\nfrom : karin ahamer @ enron 04 / 20 / 2001 06 : 57 am\nto : kevin g moore / hou / ect @ ect\ncc :\nsubject : re : desk move / computer stuff\nkevin\ndon ' t worry i haven ' t forgotten about stephen . he will be moved and sit next\nto tony . don ' t know what they are talking about loan computers but i am on\nthe case .\nregards\nkarin\navistar has been all set up as far as i know but someone has to come in\nagain on monday to re - install it on tonys new computer .\nkevin g moore @ ect\n20 / 04 / 2001 12 : 27\nto : karin ahamer / eu / enron @ enron , stephen bennett / na / enron @ enron , mike a\nroberts / hou / ect @ ect , tony hamilton / eu / enron @ enron\ncc :\nsubject : re : desk move / computer stuff\nhello karin ,\ni noticed that tony is taken care of , but what about stephen .\ntony and stephen are a team , they work very closely together .\nstephen also needs to be aware of what is taking place as well .\nif there is a problem with cost centers please contact me , but\nplease try and have both guys set up for monday morning .\nthanks so much .\nkevin moore\nby the way have the avistar set - up been completed . . . . . . .\nplease inform . . .\nenron capital & trade resources\ncanada corp .\nfrom : karin ahamer @ enron 04 / 20 / 2001 03 : 00 am\nto : stephen bennett / na / enron @ enron , graham aley / lon / ect\ncc : tony hamilton / eu / enron @ enron , kevin g moore / hou / ect @ ect\nsubject : re : desk move / computer stuff\nsteve\ni have ordered a computer for tony which it should know about . i believe the\ncontact person is steve deakin . i am in a course all day today but will look\ninto it at lunchtime .\nregards\nkarin\nenron capital & trade resources corp .\nfrom : stephen bennett 19 / 04 / 2001 16 : 53\nto : karin ahamer / eu / enron @ enron\ncc : tony hamilton / eu / enron @ enron , kevin g moore / hou / ect @ ect\nsubject : desk move / computer stuff\nhi karin ,\ni just wanted to check the status of our change in equipment for start of\nbusiness monday . i ' ve been told that tony and i will be using loaner pc ' s .\nthe folks in it are asking me where that loaner pc is so they can install all\nof the software that i need . slava has told me that you are the point of\ncontact . i just wanted to check with you to see if you need any additional\ninformation from me - or if i can be of help in any way . thanks ! !\nsteve\nstephen bennett\nsenior meteorologist\nenron research\nlondon temp ext : 34761\nhouston : 001 713 345 3661", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.103+0000", "entityId": 10504, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron industrial markets\nmetal bulletin - iron and steel awards for 2000\npushiest entrant : enron , the us commodity trading company , which promised it\nwould revolutionize the steel business by offering futures in hot rolled coil\nvia its online market place .\nthe eim fundamentals analysis group is excited to announce that dave allan\nhas joined as a director , responsible for all forest products lines . he\ncomes to eim with 20 years of experience in the forest products industry , of\nwhich 14 were spent at abitibi and 6 with pulp and paper week . please join\nus in welcoming dave .\nthe siebel team ( \u0001 & the force \u0001 8 ) continues to work towards program\nimplementation of its customer management system in early may , with training\nto begin at the end of april . stay tuned for updates .\nenron global lng\nenron global lng is positioning itself to be a creator and leader of a global\nwholesale lng market . the rising prices of natural gas in the united states\nand concerns over future energy supplies have created a bullish outlook for\nlng in the u . s . and around the globe . lng has played a major role in\nserving energy needs in many parts of the world , but its place in the u . s .\nenergy picture has been limited . an lng market that spans the globe can\nsupply vast amounts of otherwise stranded gas to the world \u0001 , s growing appetite\nfor cleaner burning fuels . enron global lng sees great opportunity for\nenron \u0001 , s wholesale energy business model to help shape yet another energy\nmarket .\nin the news\nenron corp . says first - quarter profit rose 20 percent\nhouston , april 17 ( bloomberg ) - - enron corp . , the largest energy trader , said\nfirst - quarter profit rose 20 percent as sales almost quadrupled . profit from\noperations rose to $ 406 million , or 47 cents , from $ 338 million , or 40 cents ,\nin the year - earlier period . enron raised its 2001 profit forecast to $ 1 . 75\nto $ 1 . 80 a share , from its january projection of $ 1 . 70 to $ 1 . 75 .\nfirst - quarter revenue surged to $ 50 . 1 billion from $ 13 . 1 billion as enron\nboosted the volume of power sold in north america by 90 percent . enron had a\nfirst - quarter gain of $ 19 million , or 2 cents a share , for an accounting\nchange , making net income $ 425 million , or 49 cents a share . there were no\ncharges or gains in the year - earlier period .\nwelcome\nnew hires\negm - janelle russell ,\neim - david allan , sylvia carter\nena - sasha divelbiss , amy quirsfeld , judy zhang , annette thompson , kelly\ndonlevy - lee , grant patterson\ntransfers ( to or within )\nena \u0001 ) william abler , magdalena cruz , barbara taylor , james reyes , marvin\ncarter , angel tamariz , jesse bryson\neim \u0001 ) cassandra dutton , christine sullivan , camille gerard , sherri kathol ,\njennifer watson\negm \u0001 ) steven batchelder\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary\nto enron corp . and its subsidiaries . it is intended for internal use only\nand should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.108+0000", "entityId": 10505, "properties": {"text": "Subject: re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\nvince ,\nwelcome to ibuyit , enron ' s integrated procurement through payment solution .\nyour ibuyit security form has been processed . here is your ibuyit\neprocurement logon information :\nuser id : po 0503778\npassword : your date of birth ( format : yyyymmdd - - 19670120 for january 20 ,\n1967 )\nimportant : when you first log on to ibuyit eprocurement , you will be prompted\nto change your password . you may use the same password you enter when logging\non to other sap - related applications , e . g . , ehronline . should you select a\nnew password , your password in other sap - related applications will\nautomatically reset . you only need one password for your sap user id ( pid ) .\nready to launch ibuyit eprocurement ? access it from the ibuyit portal :\nfor step - by - step documentation on ibuyit eprocurement , click here :\nfor help , call the isc call center at 713 - 345 - 4727 .\nif you have any question regarding this request , please contact sap security .\nthanks !\nfrom : raul davila / enron @ enronxgate on 04 / 19 / 2001 06 : 02 pm\nto : sap security @ enron\ncc :\nsubject : re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\napproved\n- - - - - original message - - - - -\nfrom : tow , eva on behalf of sap security\nsent : thursday , april 19 , 2001 5 : 39 pm\nto : davila , raul\ncc : vkamins @ enron . com ; crenshaw , shirley\nsubject : re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\nraul ,\nraul ,\nvince kaminiski is requesting acces to the technical view for catalog along\nwith the ibuyit approval role . this is pending your approval . please send\nyour response to sap security .\nthanks !\nshirley crenshaw @ ect\n04 / 19 / 2001 03 : 01 pm\nto : sapsecurity @ enron . com\ncc : vince j kaminski / hou / ect @ ect\nsubject : ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n>\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\n>\nisc help desk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.113+0000", "entityId": 10506, "properties": {"text": "Subject: re : completion of ibuyit request for wincenty ( vince ) kaminski :\neva : remedy 412144\nvince ,\nyou have been approved for the technical view within ibuyit . changes will\ntake effect on next login .\nthank you ,\nsap security ( eva -\nfrom : raul davila / enron @ enronxgate on 04 / 19 / 2001 06 : 02 pm\nto : sap security @ enron\ncc :\nsubject : re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\napproved\n- - - - - original message - - - - -\nfrom : tow , eva on behalf of sap security\nsent : thursday , april 19 , 2001 5 : 39 pm\nto : davila , raul\ncc : vkamins @ enron . com ; crenshaw , shirley\nsubject : re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\nraul ,\nraul ,\nvince kaminiski is requesting acces to the technical view for catalog along\nwith the ibuyit approval role . this is pending your approval . please send\nyour response to sap security .\nthanks !\nshirley crenshaw @ ect\n04 / 19 / 2001 03 : 01 pm\nto : sapsecurity @ enron . com\ncc : vince j kaminski / hou / ect @ ect\nsubject : ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n>\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001\n02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\n>\nisc help desk", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.118+0000", "entityId": 10507, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron industrial markets\nmetal bulletin - iron and steel awards for 2000\npushiest entrant : enron , the us commodity trading company , which promised it would revolutionize the steel business by offering futures in hot rolled coil via its online market place .\nthe eim fundamentals analysis group is excited to announce that dave allan has joined as a director , responsible for all forest products lines . he comes to eim with 20 years of experience in the forest products industry , of which 14 were spent at abitibi and 6 with pulp and paper week . please join us in welcoming dave .\nthe siebel team ( \" the force \" ) continues to work towards program implementation of its customer management system in early may , with training to begin at the end of april . stay tuned for updates .\nenron global lng\nenron global lng is positioning itself to be a creator and leader of a global wholesale lng market . the rising prices of natural gas in the united states and concerns over future energy supplies have created a bullish outlook for lng in the u . s . and around the globe . lng has played a major role in serving energy needs in many parts of the world , but its place in the u . s . energy picture has been limited . an lng market that spans the globe can supply vast amounts of otherwise stranded gas to the world ' s growing appetite for cleaner burning fuels . enron global lng sees great opportunity for enron ' s wholesale energy business model to help shape yet another energy market .\nin the news\nenron corp . says first - quarter profit rose 20 percent\nhouston , april 17 ( bloomberg ) - - enron corp . , the largest energy trader , said first - quarter profit rose 20 percent as sales almost quadrupled . profit from operations rose to $ 406 million , or 47 cents , from $ 338 million , or 40 cents , in the year - earlier period . enron raised its 2001 profit forecast to $ 1 . 75 to $ 1 . 80 a share , from its january projection of $ 1 . 70 to $ 1 . 75 .\nfirst - quarter revenue surged to $ 50 . 1 billion from $ 13 . 1 billion as enron boosted the volume of power sold in north america by 90 percent . enron had a first - quarter gain of $ 19 million , or 2 cents a share , for an accounting change , making net income $ 425 million , or 49 cents a share . there were no charges or gains in the year - earlier period .\nwelcome\nnew hires\negm - janelle russell ,\neim - david allan , sylvia carter\nena - sasha divelbiss , amy quirsfeld , judy zhang , annette thompson , kelly donlevy - lee , grant patterson\ntransfers ( to or within )\nena - william abler , magdalena cruz , barbara taylor , james reyes , marvin carter , angel tamariz , jesse bryson\neim - cassandra dutton , christine sullivan , camille gerard , sherri kathol , jennifer watson\negm - steven batchelder\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary to enron corp . and its subsidiaries . it is intended for internal use only and should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.122+0000", "entityId": 10508, "properties": {"text": "Subject: news review update\nthe news review site , http : / / www . news - review . co . uk\nhome of weekend city press review , now offers registered users two new\nfeatures :\nall registered users can now :\n- do a text search in addition to a company search on the full six - year\narchive\n- and set up favourite companies on their home page for easier and faster\naccess\nto articles within the review and the archive which relate to those\ncompanies\nthe best way to keep abreast of the weekend ' s financial news and views is to\nreceive an email copy of weekend city press review , either via the full\nreview ,\nor the clippings relating to specific companies in which you are interested .\nregistered users are invited to take up the free offer of a 4 week\nsubscription\nto any of the services , including pdf delivery of the review , and the\nclippings service .\nto login please use this url :\nype = login\nyou can download this weekend ' s full review free of charge at\nhttp : / / www . news - review . co . uk / freepdf . pdf from 8 pm uk time this sunday\nyour username for this service is vkaminski\nif you have forgotton your password you can retrieve it at\nto remove yourself from this service please login and use the ' my profile '\noption .\nour ref wcprvl : vkaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.127+0000", "entityId": 10509, "properties": {"text": "Subject: re : pending approval for ibuyit request for wincenty ( vince )\nkaminski : eva : remedy 412144\nvince ,\nwelcome to ibuyit , enron ' s integrated procurement through payment solution .\nyour ibuyit security form has been processed . here is your ibuyit eprocurement logon information :\nuser id : po 0503778\npassword : your date of birth ( format : yyyymmdd - - 19670120 for january 20 , 1967 )\nimportant : when you first log on to ibuyit eprocurement , you will be prompted to change your password . you may use the same password you enter when logging on to other sap - related applications , e . g . , ehronline . should you select a new password , your password in other sap - related applications will automatically reset . you only need one password for your sap user id ( pid ) .\nready to launch ibuyit eprocurement ? access it from the ibuyit portal :\nfor step - by - step documentation on ibuyit eprocurement , click here :\nfor help , call the isc call center at 713 - 345 - 4727 .\nif you have any question regarding this request , please contact sap security .\nthanks !\nfrom : raul davila / enron @ enronxgate on 04 / 19 / 2001 06 : 02 pm\nto : sap security @ enron\ncc :\nsubject : re : pending approval for ibuyit request for wincenty ( vince ) kaminski : eva : remedy 412144\napproved\n- - - - - original message - - - - -\nfrom : tow , eva on behalf of sap security\nsent : thursday , april 19 , 2001 5 : 39 pm\nto : davila , raul\ncc : vkamins @ enron . com ; crenshaw , shirley\nsubject : re : pending approval for ibuyit request for wincenty ( vince ) kaminski : eva : remedy 412144\nraul ,\nraul ,\nvince kaminiski is requesting acces to the technical view for catalog along with the ibuyit approval role . this is pending your approval . please send your response to sap security .\nthanks !\nshirley crenshaw @ ect\n04 / 19 / 2001 03 : 01 pm\nto : sapsecurity @ enron . com\ncc : vince j kaminski / hou / ect @ ect\nsubject : ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n>\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001 02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\n>\nisc help desk\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.131+0000", "entityId": 10510, "properties": {"text": "Subject: re : completion of ibuyit request for wincenty ( vince ) kaminski :\neva : remedy 412144\nvince ,\nyou have been approved for the technical view within ibuyit . changes will take effect on next login .\nthank you ,\nsap security ( eva -\nfrom : raul davila / enron @ enronxgate on 04 / 19 / 2001 06 : 02 pm\nto : sap security @ enron\ncc :\nsubject : re : pending approval for ibuyit request for wincenty ( vince ) kaminski : eva : remedy 412144\napproved\n- - - - - original message - - - - -\nfrom : tow , eva on behalf of sap security\nsent : thursday , april 19 , 2001 5 : 39 pm\nto : davila , raul\ncc : vkamins @ enron . com ; crenshaw , shirley\nsubject : re : pending approval for ibuyit request for wincenty ( vince ) kaminski : eva : remedy 412144\nraul ,\nraul ,\nvince kaminiski is requesting acces to the technical view for catalog along with the ibuyit approval role . this is pending your approval . please send your response to sap security .\nthanks !\nshirley crenshaw @ ect\n04 / 19 / 2001 03 : 01 pm\nto : sapsecurity @ enron . com\ncc : vince j kaminski / hou / ect @ ect\nsubject : ibuyit form\nattached please find the completed form for vince kaminski , managing\ndirector , research group .\nhe will be approving all purchases for cost center 107043 .\n>\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 19 / 2001 02 : 58 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : debbie skinner / enron @ enronxgate on 04 / 19 / 2001 02 : 52 pm\nto : shirley crenshaw / houston / eott @ eott , shirley crenshaw / hou / ect @ ect\ncc :\nsubject : ibuyit form\nhi shirley\nthere were two shirleys , so sending to both\n>\nisc help desk\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.136+0000", "entityId": 10511, "properties": {"text": "Subject: re : enron credit model docs for the comparative model study - to be\nsent to professor duffie @ stanford\nhi ben ,\ni think i have read all the papers that are to be used in the comparative\nmodel study to be sent to professor duffie at stanford .\nthese documents are all listed below . please let me know if i have omitted\nany ( however , don ' t get the impression that i am begging for more papers to\nread ) .\nnow i will try to transform my notes into a draft for professor duffie .\nthanks ,\niris\nlist of papers for comparative model study\n1 . actively managing corporate credit risk : new methodologies and\ninstruments for non - financial firms\nby r . buy , v . kaminski , k . pinnamaneni & v . shanbhogue\nchapter in a risk book entitled credit derivatives : application for risk\nmanagement , investment and portfolio optimisation\n2 . neural network placement model\nby george albanis , enroncredit ( 12 / 22 / 00 )\n3 . pricing parent companies and their subsidiaries : model description and\ndata requirements\nby ben parsons and tomas valnek , research group\n4 . a survey of contingent - claims approaches to risky debt valuation\nby j . bohn\nwww . kmv . com / products / privatefirm . html\n5 . the kmv edf credit measure and probabilities of default\nby m . sellers , o . vasicek & a . levinson\nwww . kmv . com / products / privatefirm . html\n6 . riskcalc for private companies : moody ' s default model\nmoody ' s investor service : global credit research\n7 . discussion document : asset swap model\nby ben parsons , research group ( 4 / 20 / 01 )\n8 . asset swap calculator : detailed functional implementation specification\n( version 1 . 0 )\nby ben parsons , research group\n9 . discussion document : live libor bootstrapping model\nby ben parsons , research group ( 4 / 20 / 01 )\n10 . the modelling behind the fair market curves : including country and\nindustry offsets\nby nigel m . price , enron credit trading group\n11 . pricing portfolios of default swaps : synthetic cbos - moody ' s versus\nthe full monte ( carlo )\nby nigel m . price , enron credit trading group\n12 . placement model vl . 0 : discussion document\nby ben parsons , research group , 2000\n13 . credit pricing methodology - enroncredit . com\nby ben parsons , research group\n14 . correlation : critical measure for calculating profit and loss on\nsynthetic credit portfolios\nby katherine siig , enron credit group\n15 . discussion document : var model for enron credit\nby ben parsons , research group , ( 1 / 3 / 01 )\n16 . methodology to implement approximate var model for the credit trading\nportfolio\nby kirstee hewitt , research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.141+0000", "entityId": 10512, "properties": {"text": "Subject: news review update\nplease respond to news review the news review site , http : / / www . news - review . co . uk\nhome of weekend city press review , now offers registered users two new features :\nall registered users can now :\n- do a text search in addition to a company search on the full six - year archive\n- and set up favourite companies on their home page for easier and faster access\nto articles within the review and the archive which relate to those companies\nthe best way to keep abreast of the weekend ' s financial news and views is to\nreceive an email copy of weekend city press review , either via the full review ,\nor the clippings relating to specific companies in which you are interested .\nregistered users are invited to take up the free offer of a 4 week subscription\nto any of the services , including pdf delivery of the review , and the clippings service .\nto login please use this url :\nyou can download this weekend ' s full review free of charge at\nhttp : / / www . news - review . co . uk / freepdf . pdf from 8 pm uk time this sunday\nyour username for this service is vkaminski\nif you have forgotton your password you can retrieve it at\nto remove yourself from this service please login and use the ' my profile ' option .\nour ref wcprvl : vkaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.147+0000", "entityId": 10513, "properties": {"text": "Subject: re : enron credit model docs for the comparative model study - to be\nsent to professor duffie @ stanford\nhi ben ,\ni think i have read all the papers that are to be used in the comparative model study to be sent to professor duffie at stanford .\nthese documents are all listed below . please let me know if i have omitted any ( however , don ' t get the impression that i am begging for more papers to read ) .\nnow i will try to transform my notes into a draft for professor duffie .\nthanks ,\niris\nlist of papers for comparative model study\n1 . actively managing corporate credit risk : new methodologies and instruments for non - financial firms\nby r . buy , v . kaminski , k . pinnamaneni & v . shanbhogue\nchapter in a risk book entitled credit derivatives : application for risk management , investment and portfolio optimisation\n2 . neural network placement model\nby george albanis , enroncredit ( 12 / 22 / 00 )\n3 . pricing parent companies and their subsidiaries : model description and data requirements\nby ben parsons and tomas valnek , research group\n4 . a survey of contingent - claims approaches to risky debt valuation\nby j . bohn\nwww . kmv . com / products / privatefirm . html\n5 . the kmv edf credit measure and probabilities of default\nby m . sellers , o . vasicek & a . levinson\nwww . kmv . com / products / privatefirm . html\n6 . riskcalc for private companies : moody ' s default model\nmoody ' s investor service : global credit research\n7 . discussion document : asset swap model\nby ben parsons , research group ( 4 / 20 / 01 )\n8 . asset swap calculator : detailed functional implementation specification ( version 1 . 0 )\nby ben parsons , research group\n9 . discussion document : live libor bootstrapping model\nby ben parsons , research group ( 4 / 20 / 01 )\n10 . the modelling behind the fair market curves : including country and industry offsets\nby nigel m . price , enron credit trading group\n11 . pricing portfolios of default swaps : synthetic cbos - moody ' s versus the full monte ( carlo )\nby nigel m . price , enron credit trading group\n12 . placement model vl . 0 : discussion document\nby ben parsons , research group , 2000\n13 . credit pricing methodology - enroncredit . com\nby ben parsons , research group\n14 . correlation : critical measure for calculating profit and loss on synthetic credit portfolios\nby katherine siig , enron credit group\n15 . discussion document : var model for enron credit\nby ben parsons , research group , ( 1 / 3 / 01 )\n16 . methodology to implement approximate var model for the credit trading portfolio\nby kirstee hewitt , research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.154+0000", "entityId": 10514, "properties": {"text": "Subject: re : agenda for vc\ncraig ,\nthanks for your email regarding tomorrow ' s houston / london videoconference .\nattached is an updated spreadsheet which elaborates upon the issues amitava\nand i will discuss tomorrow .\nregards ,\niris\n- - - - - original message - - - - -\nfrom : chaney , craig\nsent : thursday , april 19 , 2001 2 : 34 pm\nto : kirkpatrick , eric ; salmon , scott ; cruver , brian ; dhar , amitava ; mack ,\niris ; mumford , mike ; detiveaux , kim\nsubject : agenda for vc\nfolks ,\nhere were some of the things i thought would be useful we could discuss :\nstatus and schedule on data aquistion : iris and mike\nriskcalc testing : methodology , criteria , and schedule : iris and amitava\nmodel development : which model are going be developed and when : iris and\namitava\nfeel free to add to the agenda .\ncraig", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.162+0000", "entityId": 10515, "properties": {"text": "Subject: enron announcement\ncar rental options for enron travelers\nrental car contracts for 2001 have been awarded to :\nnational car rental ( primary ) and alamo rent - a - car ( secondary ) .\nthe intent of these agreements is to consolidate and leverage enron ' s total\ncar rental spend to achieve the most favorable rates and non - pricing\nprovisions ( i . e . insurance ) .\nnational car rental , due to its service levels , availability and total value\nproposition , has been awarded primary status and is recommended as the first\nchoice for enron travelers ' needs .\nalamo rent - a - car , a sister company to national , has been awarded a contract\nreflecting a secondary status , due to its service levels , availability and\nlow cost solutions . alamo is recommended as an alternative to national ,\nwhere available .\nwhen you rent a vehicle in the united states , ( including puerto rico ) or\ncanada , the following insurance provisions are included , regardless of rate\nselected :\n1 . l / dw ( loss / damage waiver ) - this is what is called comprehensive or\ncollision on your personal auto . it covers the rental vehicle and pays for\nany damage to it .\n2 . liability - this covers people and property outside the rental vehicle .\nfor both national and alamo , the coverage is $ 100 , 000 per person , $ 300 , 000\nper occurrence and $ 50 , 000 for property damage .\n* * important * * *\nthese coverages apply regardless of rate selected , as long as the following\ncontract id is communicated at the time of reservation and rental is recorded\non the transaction rental agreement . ( national - 5000838 alamo - # 143974 )\nto enjoy the highest levels of service while renting a vehicle from enron ' s\npreferred suppliers , it is recommended that each traveler enroll in\nnational ' s and alamo ' s preferred traveler programs . national ' s emerald club\nmembership and alamo ' s quicksilver program are designed to speed the\ntransaction time by providing services such as counter bypass and rapid\nreturn . the enrollment fees for these programs have been waived for enron\ntravelers . enrollment packets will be mailed to the addresses of enron\namerican express t & e cardholders . you may also find an enrollment form on\nthe enron travel program intranet @ gss . enron . com .\nif you have any questions or comments , please contact jeff leath at\n713 - 646 - 6165 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.169+0000", "entityId": 10516, "properties": {"text": "Subject: new resume\ndear vince ,\ni am so grateful for your efforts . i really appreciate you taking time from\nyour busy schedule . if you have not contacted michael maddox , it ' s even\nbetter . i have updated and re - worded my resume to better reflect my\naccomplishments . would you please contact michael maddox of cera and forward\nmy resume to him ? his contact information is ( 617 ) 497 6446 or email :\nmmaddox @ cera . com\nhave you had a chance to talk to david port ? maybe there are other options .\ni am flexible and willing to do whatever it takes .\nsincerely ,\nbessik matchavariani\nmanager\nenron broadband services\ntel : 713 . 345 . 7230\nfax : 713 . 646 . 8861\nbessik _ matchavariani @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.174+0000", "entityId": 10517, "properties": {"text": "Subject: new resume\ndear vince ,\ni am so grateful for your efforts . i really appreciate you taking time from your busy schedule . if you have not contacted michael maddox , it ' s even better . i have updated and re - worded my resume to better reflect my accomplishments . would you please contact michael maddox of cera and forward my resume to him ? his contact information is ( 617 ) 497 6446 or email : mmaddox @ cera . com\nhave you had a chance to talk to david port ? maybe there are other options . i am flexible and willing to do whatever it takes .\nsincerely ,\nbessik matchavariani\nmanager\nenron broadband services\ntel : 713 . 345 . 7230\nfax : 713 . 646 . 8861\nbessik _ matchavariani @ enron . net", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.179+0000", "entityId": 10518, "properties": {"text": "Subject: enron announcement\ncar rental options for enron travelers\nrental car contracts for 2001 have been awarded to :\nnational car rental ( primary ) and alamo rent - a - car ( secondary ) .\nthe intent of these agreements is to consolidate and leverage enron ' s total car rental spend to achieve the most favorable rates and non - pricing provisions ( i . e . insurance ) .\nnational car rental , due to its service levels , availability and total value proposition , has been awarded primary status and is recommended as the first choice for enron travelers ' needs .\nalamo rent - a - car , a sister company to national , has been awarded a contract reflecting a secondary status , due to its service levels , availability and low cost solutions . alamo is recommended as an alternative to national , where available .\nwhen you rent a vehicle in the united states , ( including puerto rico ) or canada , the following insurance provisions are included , regardless of rate selected :\n1 . l / dw ( loss / damage waiver ) - this is what is called comprehensive or collision on your personal auto . it covers the rental vehicle and pays for any damage to it .\n2 . liability - this covers people and property outside the rental vehicle . for both national and alamo , the coverage is $ 100 , 000 per person , $ 300 , 000 per occurrence and $ 50 , 000 for property damage .\n* * important * * *\nthese coverages apply regardless of rate selected , as long as the following contract id is communicated at the time of reservation and rental is recorded on the transaction rental agreement . ( national - 5000838 alamo - # 143974 )\nto enjoy the highest levels of service while renting a vehicle from enron ' s preferred suppliers , it is recommended that each traveler enroll in national ' s and alamo ' s preferred traveler programs . national ' s emerald club membership and alamo ' s quicksilver program are designed to speed the transaction time by providing services such as counter bypass and rapid return . the enrollment fees for these programs have been waived for enron travelers . enrollment packets will be mailed to the addresses of enron american express t & e cardholders . you may also find an enrollment form on the enron travel program intranet @ gss . enron . com .\nif you have any questions or comments , please contact jeff leath at 713 - 646 - 6165 .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.184+0000", "entityId": 10519, "properties": {"text": "Subject: re : petrochem desk\nyes , i will have kate get involved and talk to christian to get details .\nvasant\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 23 , 2001 9 : 29 am\nto : shanbhogue , vasant\ncc : kaminski , vince\nsubject : petrochem desk\nvasant ,\nit seems we have to help them . can kate help\non this project ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 23 / 2001 09 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnelson neale @ enron\n04 / 20 / 2001 10 : 29 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate\ncc :\nsubject : petrochem desk\ni had a chance to speak with christian lebroc this morning with regard to curve building for petrochemicals . as it turns out , christian left rac in april and joined the petrochem desk as a trader . previous efforts at construction of a forward curve by the group have focused on intuition or swags . unfortunately , the group had a rough p & l year with at least some of the blame directed toward the forward curve or lack thereof . when asked about the fundamentals group , christian indicated that they ' d only been around about 3 - 4 months and are not yet well - suited to curve building . john nowlan is indeed the head of the group .\nfrom a timing perspective , i told christian that it would probably take at least 6 - 8 weeks to develop a curve , especially considering the need to understand the key market drivers / fundamentals . as was suggested yesterday during our meeting , a strong relationship between petrochemicals and a nymex component ( e . g . , crude oil ) would provide a great beginning point - - we could then potentially strengthen / augment this relationship with other key factors ( e . g . , supply and demand terms ) borne out of our market research .\nnelson\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.188+0000", "entityId": 10520, "properties": {"text": "Subject: petrochem desk\nvasant ,\nit seems we have to help them . can kate help\non this project ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 23 / 2001 09 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnelson neale @ enron\n04 / 20 / 2001 10 : 29 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate\ncc :\nsubject : petrochem desk\ni had a chance to speak with christian lebroc this morning with regard to curve building for petrochemicals . as it turns out , christian left rac in april and joined the petrochem desk as a trader . previous efforts at construction of a forward curve by the group have focused on intuition or swags . unfortunately , the group had a rough p & l year with at least some of the blame directed toward the forward curve or lack thereof . when asked about the fundamentals group , christian indicated that they ' d only been around about 3 - 4 months and are not yet well - suited to curve building . john nowlan is indeed the head of the group .\nfrom a timing perspective , i told christian that it would probably take at least 6 - 8 weeks to develop a curve , especially considering the need to understand the key market drivers / fundamentals . as was suggested yesterday during our meeting , a strong relationship between petrochemicals and a nymex component ( e . g . , crude oil ) would provide a great beginning point - - we could then potentially strengthen / augment this relationship with other key factors ( e . g . , supply and demand terms ) borne out of our market research .\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.194+0000", "entityId": 10521, "properties": {"text": "Subject: re : visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi iris :\nmay 17 th is fine . he will probably need to come in the night before ( the 16 th )\nand he can make a hotel reservation at the doubletree or the hyatt and tell\nthem he is a guest of enron and he will get a corporate rate . we will reimburse\nhim for room expense only . he will need to pick up any miscellaneous room\ncharges . we will also reimburse him for his flight expense and cab fare .\nthe doubletree telephone # is : 713 - 759 - 0202 and the hyatt telephone is :\n713 - 654 - 1234 .\nhe can either leave his receipts with me when he is here or mail them\nto me and i will have a check cut . i will need his ss # .\nif you have any more questions , please let me know .\nthanks !\nshirley\nfrom : iris mack / enron @ enronxgate on 04 / 20 / 2001 04 : 32 pm\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , shirley crenshaw / houston / eott @ eott\ncc : nalink @ bu . edu @ smtp @ enronxgate\nsubject : re : visit to enron by professor nalin kulatilaka of boston university\nhi shirley ,\nvince has requested that we invite professor nalin kulatilaka of boston university to speak at one of our thursday group luncheons / seminars .\nnalin says he is available to speak on may 17 th .\ncan you let me know if this is okay , and what the procedure is for invited speakers .\nthanks and have a good weekend ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.198+0000", "entityId": 10522, "properties": {"text": "Subject: re : eol pricing algorithm\nhi bob ,\nsome comments :\n1 . you request enron position after successful market order , but not after\nlimit order - - you may want it after limit order as well to be consistent .\ni am not clear on how you would use enron position . it is possible that the\ntrading desk will have a target position in mind and they will set bids and\noffers in such a way as to try to achieve that target position , but this\ntarget position probably changes continuously and is not stored anywhere , and\nwithout this target position there is nothing to compare actual enron\nposition to . of course , enron position may still provide some insights .\n2 . you request bid - mid - ask prices for each trade - - - given that a successful\ntrade may execute later than time of order ( especially for limit orders ) ,\nwould you need the evolution or range of bid - mid - ask over this time interval\n( time of order to time of execution ) ? also , for failed trades , you may need\nthe evolution or range of bid - mid - ask over the time interval from time of\norder to time of rejection . this again mainly applies to limit orders , as\nthe time intervals may not be significant for market orders given the speed\nof execution ( something to check ) .\n- - - - - original message - - - - -\nfrom : lee , bob\nsent : monday , april 23 , 2001 8 : 33 am\nto : kaminski , vince ; shanbhogue , vasant ; barkley , tom\ncc : lu , zimin ; huang , alex ; gibner , stinson\nsubject : eol pricing algorithm\na draft data request for eol data we would use to study p & l patterns for the\n\" george \" pricing algorithm is attached for your review .\ni would like to send this to andy zipper and jay webb this afternoon .\nbob\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.203+0000", "entityId": 10523, "properties": {"text": "Subject: eol stuff\nvince -\ni spoke with tom , and i completely agree and would like to hand all this eol\nstuff over to you .\nwe need a sun server to take over the task . as it happens martin lin has one\nin his office he ' s not using and up to the task . his box could serve sas to\nenron , as well as handle listening in on the eol feedds and maintaining its\ndatabase .\nmartin ' s box technically belongs to ebs , but i think they are downsizing and\nwouldn ' t mind giving it up .\nin this way , you would have complete physical and administrative custody over\nthe data and any work you do with it . i needn ' t be involved , and you can know\nyour work is completely confidential .\ni ' ll make sas and the eol software available , as well as the necessary ram\nthe server , at no charge . you just need to summon up some sysadmin resources\nto finish the job . there is a fine unix guy named ben thompson who will\nsupport you , i ' m sure .\ntask :\n1 ) upgrade ram on martin ' s server\n2 ) install newest solaris os on server\n3 ) install tibco and gnu software on server\n4 ) install sas on server\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.208+0000", "entityId": 10524, "properties": {"text": "Subject: re : petrochem desk\nyes , i will have kate get involved and talk to christian to get details .\nvasant\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 23 , 2001 9 : 29 am\nto : shanbhogue , vasant\ncc : kaminski , vince\nsubject : petrochem desk\nvasant ,\nit seems we have to help them . can kate help\non this project ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 23 / 2001\n09 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnelson neale @ enron\n04 / 20 / 2001 10 : 29 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate\ncc :\nsubject : petrochem desk\ni had a chance to speak with christian lebroc this morning with regard to\ncurve building for petrochemicals . as it turns out , christian left rac in\napril and joined the petrochem desk as a trader . previous efforts at\nconstruction of a forward curve by the group have focused on intuition or\nswags . unfortunately , the group had a rough p & l year with at least some of\nthe blame directed toward the forward curve or lack thereof . when asked\nabout the fundamentals group , christian indicated that they ' d only been\naround about 3 - 4 months and are not yet well - suited to curve building . john\nnowlan is indeed the head of the group .\nfrom a timing perspective , i told christian that it would probably take at\nleast 6 - 8 weeks to develop a curve , especially considering the need to\nunderstand the key market drivers / fundamentals . as was suggested yesterday\nduring our meeting , a strong relationship between petrochemicals and a nymex\ncomponent ( e . g . , crude oil ) would provide a great beginning point - - we could\nthen potentially strengthen / augment this relationship with other key factors\n( e . g . , supply and demand terms ) borne out of our market research .\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.213+0000", "entityId": 10525, "properties": {"text": "Subject: petrochem desk\nvasant ,\nit seems we have to help them . can kate help\non this project ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 23 / 2001\n09 : 28 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnelson neale @ enron\n04 / 20 / 2001 10 : 29 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate\ncc :\nsubject : petrochem desk\ni had a chance to speak with christian lebroc this morning with regard to\ncurve building for petrochemicals . as it turns out , christian left rac in\napril and joined the petrochem desk as a trader . previous efforts at\nconstruction of a forward curve by the group have focused on intuition or\nswags . unfortunately , the group had a rough p & l year with at least some of\nthe blame directed toward the forward curve or lack thereof . when asked\nabout the fundamentals group , christian indicated that they ' d only been\naround about 3 - 4 months and are not yet well - suited to curve building . john\nnowlan is indeed the head of the group .\nfrom a timing perspective , i told christian that it would probably take at\nleast 6 - 8 weeks to develop a curve , especially considering the need to\nunderstand the key market drivers / fundamentals . as was suggested yesterday\nduring our meeting , a strong relationship between petrochemicals and a nymex\ncomponent ( e . g . , crude oil ) would provide a great beginning point - - we could\nthen potentially strengthen / augment this relationship with other key factors\n( e . g . , supply and demand terms ) borne out of our market research .\nnelson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.217+0000", "entityId": 10526, "properties": {"text": "Subject: re : visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi iris :\nmay 17 th is fine . he will probably need to come in the night before ( the\n16 th )\nand he can make a hotel reservation at the doubletree or the hyatt and tell\nthem he is a guest of enron and he will get a corporate rate . we will\nreimburse\nhim for room expense only . he will need to pick up any miscellaneous room\ncharges . we will also reimburse him for his flight expense and cab fare .\nthe doubletree telephone # is : 713 - 759 - 0202 and the hyatt telephone is :\n713 - 654 - 1234 .\nhe can either leave his receipts with me when he is here or mail them\nto me and i will have a check cut . i will need his ss # .\nif you have any more questions , please let me know .\nthanks !\nshirley\nfrom : iris mack / enron @ enronxgate on 04 / 20 / 2001 04 : 32 pm\nto : vince j kaminski / hou / ect @ ect , shirley crenshaw / hou / ect @ ect , shirley\ncrenshaw / houston / eott @ eott\ncc : nalink @ bu . edu @ smtp @ enronxgate\nsubject : re : visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi shirley ,\nvince has requested that we invite professor nalin kulatilaka of boston\nuniversity to speak at one of our thursday group luncheons / seminars .\nnalin says he is available to speak on may 17 th .\ncan you let me know if this is okay , and what the procedure is for invited\nspeakers .\nthanks and have a good weekend ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.222+0000", "entityId": 10527, "properties": {"text": "Subject: re : eol pricing algorithm\nhi bob ,\nsome comments :\n1 . you request enron position after successful market order , but not after limit order - - you may want it after limit order as well to be consistent . i am not clear on how you would use enron position . it is possible that the trading desk will have a target position in mind and they will set bids and offers in such a way as to try to achieve that target position , but this target position probably changes continuously and is not stored anywhere , and without this target position there is nothing to compare actual enron position to . of course , enron position may still provide some insights .\n2 . you request bid - mid - ask prices for each trade - - - given that a successful trade may execute later than time of order ( especially for limit orders ) , would you need the evolution or range of bid - mid - ask over this time interval ( time of order to time of execution ) ? also , for failed trades , you may need the evolution or range of bid - mid - ask over the time interval from time of order to time of rejection . this again mainly applies to limit orders , as the time intervals may not be significant for market orders given the speed of execution ( something to check ) .\n- - - - - original message - - - - -\nfrom : lee , bob\nsent : monday , april 23 , 2001 8 : 33 am\nto : kaminski , vince ; shanbhogue , vasant ; barkley , tom\ncc : lu , zimin ; huang , alex ; gibner , stinson\nsubject : eol pricing algorithm\na draft data request for eol data we would use to study p & l patterns for the \" george \" pricing algorithm is attached for your review .\ni would like to send this to andy zipper and jay webb this afternoon .\nbob\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.227+0000", "entityId": 10528, "properties": {"text": "Subject: eol stuff\nvince -\ni spoke with tom , and i completely agree and would like to hand all this eol stuff over to you .\nwe need a sun server to take over the task . as it happens martin lin has one in his office he ' s not using and up to the task . his box could serve sas to enron , as well as handle listening in on the eol feedds and maintaining its database .\nmartin ' s box technically belongs to ebs , but i think they are downsizing and wouldn ' t mind giving it up .\nin this way , you would have complete physical and administrative custody over the data and any work you do with it . i needn ' t be involved , and you can know your work is completely confidential .\ni ' ll make sas and the eol software available , as well as the necessary ram the server , at no charge . you just need to summon up some sysadmin resources to finish the job . there is a fine unix guy named ben thompson who will support you , i ' m sure .\ntask :\n1 ) upgrade ram on martin ' s server\n2 ) install newest solaris os on server\n3 ) install tibco and gnu software on server\n4 ) install sas on server\nclayton", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.231+0000", "entityId": 10529, "properties": {"text": "Subject: re : private firm schedule\nthanks for the schedule update\n- - - - - original message - - - - -\nfrom : kirkpatrick , eric\nsent : monday , april 23 , 2001 10 : 52 am\nto : mack , iris ; dhar , amitava ; brent , richard ; salmon , scott ; chaney , craig ; mumford , mike ; detiveaux , kim ; cruver , brian\nsubject : private firm schedule\nall :\nthis is the rough schedule we came up with at today ' s video conference :\nsubmit rfp to d & b , experian , and amadeus 2 days 25 apr mumford\nreceive back rfps 1 . 5 weeks 4 may mumford\ncomplete evaluation , selection & authorization 1 week 11 may mumford / mack\ncontract complete and signed 2 weeks 25 may mumford\ndata to iris & amitava 3 weeks 15 june mumford\nmodel development complete 4 weeks 15 july mack\n* integration of model and data feeds into cts 6 weeks 30 august kirkpatrick\nprior to integration into cts any prices would have to be manually uploaded into cts via spreadsheet .\nthe rfp will include a request for a smaller data calibration set that we may select to purchase immediately .\nwe can revisit this schedule at our wednesday video conference .\neric kirkpatrick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.236+0000", "entityId": 10530, "properties": {"text": "Subject: re : private firm schedule\nthanks for the schedule update\n- - - - - original message - - - - -\nfrom : kirkpatrick , eric\nsent : monday , april 23 , 2001 10 : 52 am\nto : mack , iris ; dhar , amitava ; brent , richard ; salmon , scott ; chaney , craig ;\nmumford , mike ; detiveaux , kim ; cruver , brian\nsubject : private firm schedule\nall :\nthis is the rough schedule we came up with at today ' s video conference :\nsubmit rfp to d & b , experian , and amadeus 2 days 25 apr mumford\nreceive back rfps 1 . 5 weeks 4 may mumford\ncomplete evaluation , selection & authorization 1 week 11 may mumford / mack\ncontract complete and signed 2 weeks 25 may mumford\ndata to iris & amitava 3 weeks 15 june mumford\nmodel development complete 4 weeks 15 july mack\n* integration of model and data feeds into cts 6 weeks 30 august kirkpatrick\nprior to integration into cts any prices would have to be manually uploaded\ninto cts via spreadsheet .\nthe rfp will include a request for a smaller data calibration set that we may\nselect to purchase immediately .\nwe can revisit this schedule at our wednesday video conference .\neric kirkpatrick", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.241+0000", "entityId": 10531, "properties": {"text": "Subject: organizational announcement\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by osman sezgen / hou / ees on 04 / 23 / 2001 02 : 29 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services from : ees distribution 04 / 23 / 2001 01 : 29 pm\nsent by : kay chapman\nto : all ees\ncc :\nsubject : organizational announcement\nconsistent with the floor talks of a couple weeks ago , we are following up with an e - mail describing the latest changes in our risk and back - office functions that are now complete . ees ' s risk management and the vast majority of ees ' s risk controls and operations group will become a new group in enron wholesale services . this group ' s sole function will be to provide pricing , structuring , commodity risk management , logistics and back - office services for ees . both don black and wanda curry will report to the ews office of the chairman .\nthis change was driven by the explosive growth of ees and the resulting need to tap the systems , resources and risk expertise of the wholesale groups in order to continue to grow and take advantage of current market opportunities . this change will allow us to more quickly capture the benefits of scale , process , and technology in risk , logistics and back - office functions from the larger enron capability . as discussed at the all employee meeting in march , these are important objectives , and this change allows us to reach those goals more quickly .\nspecifically , the following groups within the former ees risk management group , will become a part of this new group reporting to don black :\n- the gas , power and tariff desks ,\n- the options desk ,\n- the site profiles and consumption desks , and\n- the matrix products / secondary products desks .\nthe dsm group and iam , along with its execution capability , will remain in ees and report to the ees office of the chairman . we are pleased to announce that ozzie pagan has agreed to lead this function . ozzie is an established commercial dealmaker in ena . he has experience in power trading , origination and plant development . in addition , the services group , which will provide billing , information and other retail services , led by evan hughes , will remain in ees and report to the ees ooc . all support functions , within the former ees risk controls and operations group , that currently support the dsm and the services groups , will remain in ees . the remaining parts of the risk controls and operations group will become part of ews reporting to wanda curry . as part of this change , we are pleased to add evan hughes and ozzie pagan to the ees operating committee .\nin addition , the structuring group , led by sean holmes , will be re - named deal management . the vision for this group remains the same as that discussed at the all employee meeting ; however , it will also facilitate and ensure productive transaction interaction between ees and ews .\nwe have asked , marty sunde , as part of his vice chairman role , to resource and lead a formal restructuring group to enhance or protect value in several key transactions in our portfolio primarily in california .\nthe newly created it function , led by anthony dayao , will continue to report into the ees ooc but will support both ees and ews it requirements .\nother than these changes , the organizational structure , vision and objectives detailed out for ees at the all - employee meeting in march remain . we need to continue to understand and drive deeper into our markets , manage our client relationships , mine our portfolio , build new products and execute on our opportunities .\nthanks for all your hard work . with your help we will become the worlds leading energy retailer and enron ' s leading division . if you have any questions please do not hesitate to ask", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.245+0000", "entityId": 10532, "properties": {"text": "Subject: organizational announcement\nfyi .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by osman sezgen / hou / ees on 04 / 23 / 2001 02 : 29\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron energy services\nfrom : ees distribution 04 / 23 / 2001 01 : 29 pm\nsent by : kay chapman\nto : all ees\ncc :\nsubject : organizational announcement\nconsistent with the floor talks of a couple weeks ago , we are following up\nwith an e - mail describing the latest changes in our risk and back - office\nfunctions that are now complete . ees \u0001 , s risk management and the vast majority\nof ees \u0001 , s risk controls and operations group will become a new group in enron\nwholesale services . this group \u0001 , s sole function will be to provide pricing ,\nstructuring , commodity risk management , logistics and back - office services\nfor ees . both don black and wanda curry will report to the ews office of the\nchairman .\nthis change was driven by the explosive growth of ees and the resulting need\nto tap the systems , resources and risk expertise of the wholesale groups in\norder to continue to grow and take advantage of current market\nopportunities . this change will allow us to more quickly capture the\nbenefits of scale , process , and technology in risk , logistics and back - office\nfunctions from the larger enron capability . as discussed at the all employee\nmeeting in march , these are important objectives , and this change allows us\nto reach those goals more quickly .\nspecifically , the following groups within the former ees risk management\ngroup , will become a part of this new group reporting to don black :\n- the gas , power and tariff desks ,\n- the options desk ,\n- the site profiles and consumption desks , and\n- the matrix products / secondary products desks .\nthe dsm group and iam , along with its execution capability , will remain in\nees and report to the ees office of the chairman . we are pleased to announce\nthat ozzie pagan has agreed to lead this function . ozzie is an established\ncommercial dealmaker in ena . he has experience in power trading , origination\nand plant development . in addition , the services group , which will provide\nbilling , information and other retail services , led by evan hughes , will\nremain in ees and report to the ees ooc . all support functions , within the\nformer ees risk controls and operations group , that currently support the dsm\nand the services groups , will remain in ees . the remaining parts of the risk\ncontrols and operations group will become part of ews reporting to wanda\ncurry . as part of this change , we are pleased to add evan hughes and ozzie\npagan to the ees operating committee .\nin addition , the structuring group , led by sean holmes , will be re - named deal\nmanagement . the vision for this group remains the same as that discussed at\nthe all employee meeting ; however , it will also facilitate and ensure\nproductive transaction interaction between ees and ews .\nwe have asked , marty sunde , as part of his vice chairman role , to resource\nand lead a formal restructuring group to enhance or protect value in several\nkey transactions in our portfolio primarily in california .\nthe newly created it function , led by anthony dayao , will continue to report\ninto the ees ooc but will support both ees and ews it requirements .\nother than these changes , the organizational structure , vision and objectives\ndetailed out for ees at the all - employee meeting in march remain . we need to\ncontinue to understand and drive deeper into our markets , manage our client\nrelationships , mine our portfolio , build new products and execute on our\nopportunities .\nthanks for all your hard work . with your help we will become the worlds\nleading energy retailer and enron \u0001 , s leading division . if you have any\nquestions please do not hesitate to ask", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.255+0000", "entityId": 10533, "properties": {"text": "Subject: from the enron india newsdesk - april 23 rd newsclips\nvince ,\nfrom the sound of the articles , it appears ene is ready to exit india , or alternately to get into an arbitration battle .\ni have scheduled some time with you at 10 . 30 to discuss .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on 04 / 23 / 2001 07 : 59 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnikita varma\n04 / 23 / 2001 07 : 20 am\nto : nikita varma / enron _ development @ enron _ development\ncc : ( bcc : sandeep kohli / enron _ development )\nsubject : from the enron india newsdesk - april 23 rd newsclips\napril 23 , 2001 , http : / / www . financialexpress . com / fe 20010423 / fed 3 . html\ngodbole ' s report unearths absurd calculations , maharashtra could use this to wriggle out of the dabhol project\nsucheta dalal\napril 23 , 2001 , http : / / www . financialexpress . com / fe 20010423 / newsl . html\ndpc board set to authorise president , enron md to issue notice of termination , sanjay jog\nscrapping of power purchase agreement\nmonday , april 23 , 2001 , http : / / www . business - standard . com / today / corp 8 . asp ? menu = 2\ndpc seeks ok to exit power project , tamal bandyopadhyay & s ravindran\napril 23 , 2001 , http : / / www . cybernoon . com / index . html\nenron winding up operations in india ?\nstate for consolidating all dpc arbitration notices , sanjay jog\nmonday , april 23 , 2001 , http : / / www . financialexpress . com / fe 20010423 / news 3 . html\nmonday , april 23 , 2001 , http : / / www . economictimes . com / today / 23 econo 4 . htm\nmaharashtra to set up experts panel on enron\nthe article also appeared in the following newspaper\nbusiness standard\napril 23 , 2001 , http : / / www . business - standard . com / today / state 3 . asp ? menu = 32\nmaharashtra to set up expert panel on enron\napril 23 , 2001 , http : / / www . economictimes . com / today / 23 econo 7 . htm\n' enron is a national problem '\napril 23 , 2001 , http : / / www . cybernoon . com / index . html\ncm takes enron to delhi today\nmonday , april 23 , 2001 , http : / / www . outlookindia . com / full . asp ? fname = enron + % 28 f % 29 & fodname = 20010430 & sid = 1\nthe real story of dabhol if a judicial probe , suggested by the committee , is ordered into the enron deal , it could embarrass three governments ranjit bhushan\nmonday , april 23 , 2001 , http : / / www . business - standard . com / today / state 2 . asp ? menu = 32\nmseb revenue collections up at rs 968 crore in march , renni abraham\nthe financial express , april 23 , 2001\ngodbole ' s report unearths absurd calculations , maharashtra could use this to wriggle out of the dabhol project , sucheta dalal\nit is finally quit india time for enron . though the controversial multinational has denied plans to sell its stake in dabhol power company ( dpc ) , informed sources say that it has sent feelers to china light it deliberately uses expensive raw material ( ignoring world bank warnings ) , has worked on fanciful demand - supply estimates and several legal requirements and permissions .\nin fact , the committee has found that the mseb has been paying enron rs 930 crore more than it should every year . this comprises overcharging of rs 253 crore on account of the large regassification plant of which only 42 per cent of the capacity is used for dpc . there ' s also a rs 100 crore extra billing to the mseb for shipping and harbour charges although the cost of these facilities had been included in the capital recovery charge . by charging more than twice the operations & maintenance rate stipulated by the government of india , enron collects approximately rs 246 crore extra every year . it has also been collecting rs 332 crore every year through inflated fuel consumption claims . enron has been charging at 1878 kcal / kwh under the power purchase agreement ( ppa ) although the equipment manufacturer has guaranteed it a much lower consumption rate . this gives it a fat fuel arbitrage opportunity at the cost of the people of maharashtra .\nthe committee has also pointed to the strange practice of using four different exchange rates for different aspects of the project negotiation : a rate of rs 32 per dollar was assumed for calculating debt service of rupee loans , rs 34 . 5 per dollar as reference rate for phase - i , rs 39 . 35 per dollar as reference rate for phase - ii and a curious rs 42 per dollar for calculating government of india tariff . forcing a reduction of these excessive charges has nothing to do with contract cancellation . all it needs is tough negotiation and public pressure on the political establishment .\nthe godbole committee has established that dpc ' s tariffs can easily be halved if excess payments are eliminated and unfair conditions such as the dollarisation of payments , the take - or - pay clause and escrow facility ( which is in fact hampering mseb ' s reform particularly in power distribution ) are scrapped . the security of future payments to dpc under the restructured tariff would be based on increased cash flows from a reformed distribution system . the committee also gives enron a difficult escape route . it says that if the multinational finds the conditions for restructuring too onerous , it should free mseb from its contractual obligations and find buyers outside maharashtra . the committee has tried to establish another precedent on all projects negotiated by government : \" the public has a right to know what is being contracted on their behalf \" and has recommended that all documents , including contracts related to all independent power projects ( ipps ) , particularly dpc , should be published by the maharashtra government within two months .\nalso , having established that demand - supply estimates by the state government were fanciful , the committee has asked mseb to defer all negotiations with power producers until demand levels in the state permit full absorption of power generation from such ipps . it recommends that such negotiations should be in accordance with the least - cost plan spelt out by the report . this should also end the hectic lobbying by reliance ( patalganga ) , mittals ( bhadravati ) , the bses ( saphale ) and others to set up ipps in maharashtra .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - the financial express , april 23 , 2001\ndpc board set to authorise president , enron md to issue notice of termination , sanjay jog\nscrapping of power purchase agreement\nthe board of directors of dabhol power company ( dpc ) , which has already taken an aggressive posture , has proposed to authorise the enron india managing director k wade cline and dpc president and chief executive officer neil mcgregor to issue notices for the termination of power purchase agreement ( ppa ) and transfer of dabhol project in view of continuing default by the state and central governments and maharashtra state electricity board ( mseb ) .\nthe board of directors , which would meet on april 25 in london , also plans to appoint mr cline as its \" true and lawful attorney - in - fact \" and authorise him to represent the company in the negotiation of all project contracts and financing agreements and their amendments and modifications . top sources told the financial express that dpc would authorise mr cline and / or mr mcgregor to serve the preliminary termination notices and transfer notices to the state and central governments and mseb under clause 17 and schedule 11 of the ppa .\n\" in response to the continuing default by the mseb of its payment obligations under the ppa , the failure of the government of maharashtra to honour obligations under its guarantee and state support agreement and failure of the government of india to honour obligations under its counter guarantee , the company has sought recourse to dispute resolution and has initiated conciliation and arbitration proceedings , \" the company resolution said . \" consistent with this recourse to contractual remedies , the company now seeks the authority to serve preliminary termination notices and transfer notices pursuant to clause 17 and schedule 11 of the ppa from time to time and at any time upon the occurrence of an event giving rise to its right to serve such notices as determined by the company , \" the resolution added .\naccording to the resolution , the directors , the company secretary and officers of the company and each of them acting individually , are authorised and empowered to execute and deliver such documents and instruments and take such other actions as they deem fit to effect the purpose of the resolution , in the name and for and on behalf of the company . against this backdrop , the state government and mseb have been exploring the possibilities of issuing termination notice to the dpc for its failure to meet the contractual obligations under the ppa . the state government and mseb sources said that such a notice could be served by the mseb as dpc has not paid the rebate ( penalty ) of rs 409 crore for misdeclaration and default on the availability of power on january 28 and february 13 .\nthe state government and mseb , which reviewed its position on saturday at a meeting convened by the chief minister vilasrao deshmukh , are of the view that they have a strong case and substantial grounds to slap the termination notice to the dpc . the dpc ' s move to appoint mr k wade cline as its \" true and lawful attorney - in - fact \" deserves importance especially when the state government proposes to set up a negotiating committee to cut the per unit cost and gauge the possibility of sale of dabhol power to the power deficit states .\nmr cline would also be authorised to dispose of equipment that is worn out or obsolete or other equipment or fuel no longer expected to be used in the ordinary course in amounts exceeding rs 64 crore or the equivalent in foreign currency in any financial year . furthermore , mr cline would be in a position to enter into contracts and take any other actions for purpose relating to the day - to - day operation of the company ' s business or exercise its rights and discharge its obligations under the project contracts and the financing agreements\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - business standard , monday , april 23 , 2001\ndpc seeks ok to exit power project , tamal bandyopadhyay otherwise it cannot be a complete exercise , \" he added .\ndeshmukh and the mseb team are scheduled to meet union finance minister yashwant sinha and power minister suresh prabhu on monday in new delhi to discuss the stalemate and find a acceptable solution for the same . \" i am meeting sinha and prabhu to request them to take an initiative and send representatives for the negotiations committee , \" he said . deshmukh ' s meeting with the centre comes at a crucial stage as dpc ' s lenders would be meeting in london , on the same day , to decide upon the future finances of the controversy marred 2 , 184 - mw project in dabhol .\nmoreover , the dpc board is also scheduled to meet on april 25 in london to decide the fate of its $ 900 million project in dabhol , including winding up of its operations . the meeting would discuss the topmost item on the agenda , which was to empower dpc managing director neil mcgregor to wind up operations in the country . dpc has already slapped one conciliation notice on the centre and three arbitration notices on the state government over non - payment of dues amounting to rs 213 crore plus interest towards the bills due for the months of december 2000 and january 2001 .\nasked whether the centre had send any feel over a possible clubbing together of the arbitration and conciliation processes , deshmukh replied in the negative . deshmukh said mseb chairman vinay bansal along with two senior officials would attend dpc ' s board meeting in london . bansal had said on sunday that mseb would present its case concerning the rs 401 - crore penalty that the loss - making board slapped on dpc on february 28 , for not generating required power within the stipulated time as per the ppa . currently , enron india holds 65 per cent in the $ 900 - million dpc project , which includes mseb ' s 15 per cent , while general electric and bechtel hold 10 per cent each . ( pti )\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - the economic times , april 23 , 2001\n' enron is a national problem '\nunion power minister suresh prabhu on sunday said the centre would render all possible help to resolve the enron crisis faced by maharashtra which is \" haunting the entire country \" . prabhu said he would meet the state chief minister vilasrao deshmukh in new delhi tomorrow to discuss stalemate over the payments due to the us energy major - promoted dhabol power company by the maharashtra state electricity board . referring to godbole committee report ' s finding that dpc was keen on offering mseb ' s 15 per cent stake to the national thermal power corporation , prabhu said : \" the centre has not received any such proposal regarding participation of the central power utility . \" ( pti )\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - afternoon , april 23 , 2001\ncm takes enron to delhi today\nchief minister vilasrao deshmukh will discuss the enron imbroglio with union finance minister yashwant sinha and union power minister suresh prabhu in delhi today . he will request the centre to appoint a representative to the committee that the state government is setting up to carry on discussions and negotiations regarding the dabhol power project of the us - based enron power company . today , a special meeting of representatives of all those finanicial institutions which have extended loans to the dabhol power project is also being held in london . a meeting of its directors will be held on wednesday to discuss the fate of the $ 900 million project which has been under a cloud ever since its inception .\nyesterday , mr . prabhu declared at a ' janata darbar ' in thane that the centre would extend all help to solve the enron crisis . this is in the backdrop of pending bills to the tune of rs . 213 crore which the state fowarded to the centre against payments for the months of december 2000 and january 2001 . confirming that there was no proposal from the state government to handover the project to the centre , mr . prabhu said that the situation of the electricity boards in the country was precarious . the centre had decided to assist maharashtra upto rs . 250 crore every year to improve customer services .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - outlook , monday , april 23 , 2001\nthe real story of dabhol if a judicial probe , suggested by the committee , is ordered into the enron deal , it could embarrass three governments ranjit bhushan\n\" the committee has prima facie found infirmities in several decisions taken in respect of the enron project at different points of time by successive governments and agencies in the centre and state . \"\n- - energy review committee headed by former home secretary madhav godbole\nthis could well be the real enron story\na five - member high - powered committee headed by madhav godbole - and including former union economic affairs secretary e . a . s . sarma , hdfc chairman deepak parekh , teri chairman rajendrapachauri and maharashtra government official vinay mohan lal - has recommended a judicial probe into the entire enron power project deal saying it signified \" the utter failure of governance that seems to have characterised almost every step of the decision - making process relating to the dabhol project \" . the report , which was submitted to the maharashtra government last fortnight and has been acquired by outlook , is severely critical of former chief minister sharad pawar ( with the congress then ) , the 13 - day bjp - led union government which reworked the deal in 1996 , shiv sena supremo balasaheb thackeray and his government in maharashtra headed by manohar joshi\n\" the utter failure of governance seems to have characterised almost every step of decision - making relating to the dabhol project . \" madhav godbole committee report\nan investigation , if ordered , could embarrass at least these three governments the report clearly upholds the allegations of money being paid by enron to politicians and bureaucrats for clinching the deal . according to the committee , the deal reveals failure of governance , both at the centre and state , and across different agencies . \" it strains belief to accept that such widespread and consistent failure to execute responsibilities is purely coincidental , \" the report said , proposing a set of measures to be implemented if something of the project was to be retrieved . godbole and sarma also felt that the panel should categorically recommend the government of india to order a judicial inquiry . this was finally adopted by it . says a congress leader : \" enron could well become the biggest political issue in maharashtra and put to question liberalisation , particularly in the power sector . \"\nthe proposal has already struck panic . says ncp ' s praful patel : \" if the enron decision has at all been detrimental , it is because of the haste with which phase 2 was cleared by the shiv sena - bjp government . now with the state having already entered into an agreement with enron , the important thing is to resolve it amicably . a judicial inquiry will be an eyewash because it ' s not an issue of corruption but that of perception . \"\npro - market congressmen privately admit that it was their governments at the centre and the state which invited enron , even though the second phase was cleared by the bjp - shiv sena combine . says congress spokesperson jaipal reddy : \" right now we ' re too involved with the parliament deadlock over tehelka . \" pro - liberalisation congress mps also fear that such witch - hunting could send wrong signals to foreign investors . non - congress mps from maharashtra , meanwhile , claim that the godbole committee was instituted with the express purpose of politicising the enron issue . \" i think i know vilasrao deshmukh ' s gameplan , \" says an mp from the state . but some mps like congress ' prithviraj chavan question the cloak of secrecy that ' s surrounded the deal : \" i ' ve maintained for long that there should be a judicial committee to examine this \" .\nthe committee report also says that had the enron project been subjected to a techno - economic appraisal , as envisaged under provisions of the electricity supply act of 1948 and related legislations , the infirmities could have been avoided . since this wasn ' t done , questions about a concerted effort towards exercising undue influence at every stage of the project are bound to arise , the exhaustive 93 - page report points out .\n\" i ' d highlight the speed with which the 13 - day vajpayee government cleared the project minutes before it quit , \" says congress mp prithviraj chavan .\nthe enron project had been held out as an exemplar of the impending liberalisation in the early ' 90 s and , despite several controversies , is now an established power project at dabhol , 150 km south of mumbai . in july 1992 , enron signed an mou with the maharashtra state electricity board ( mseb ) to set up a 2 , 550 mw station as part of the government ' s ' fast track ' projects .\nsubsequently , when the shiv - sena - bjp came to power in maharashtra it filed a writ against the project . this curiously led to renegotiations with enron . the committee has quoted a bombay high court order on the renegotiated deal . \" once it ( gom ) decided to revive the project , it acted in the very same manner its predecessors in office had done . it forgot all about competitive bidding and transparency . the speed with which the negotiating group studied the project and made its proposal for renegotiatons , which was accepted by dabhol , is unprecedented . \" says chavan : \" i would particularly like to highlight the speed with which the 13 - day vajpayee government at centre endorsed the renegotiated project minutes before it resigned . \"\nsince the commissioning of the plant in may 1999 , the mseb has paid rs 1 , 607 crore for the power it has bought from dabhol . if the same watttage of power had been bought from indian - built power plants fired by indigenous coal , the payment would have been approximately rs 736 crore . in the first year - and - a - half of its operation itself , the dpc had drained the maharashtra exchequer of nearly rs 1 , 000 crore .\nthe central electricity authority ( cea ) , in fact , pointed out that the dabhol plant was not the least costly option . the mseb had other inexpensive alternatives like the four units of kaparkheda , but they were in a preliminary stage . the report notes : \" . . . if the mseb had made efforts to seriously pursue these projects , they might not have remained in their preliminary stages \" . it adds that the members were of the opinion that \" the mseb and the maharashtra government erred seriously , based on information available at that time , in proceeding with the dpc as a base - load factor even when its capacity was reduced . \" the failure seems to have been compounded by the laxity of the union power ministry , finance ministry and the cea . it quotes the cea as saying that since the union finance ministry found the tariff reasonable , no further examination was required\nstrangely , bal thackeray ' s shiv sena , when it came to power together with the bjp in maharashtra , filed a writ in the court and then renegotiated the deal .\nafter the new shiv sena - bjp government took over , its cm , manohar joshi , appointed a renegotiating committee in 1996 which made the right noises , actually managing to reduce the tariff . but certain things remained inexplicable . no fresh clearances were required from the cea , which also said that \" since no cost increase was involved . . . fresh formal clearance wasn ' t necessary . \" says the committee : \" this only adds strength to the suspicion that the cea didn ' t consider the economic aspects of the project at all . indeed , given the non - availability of any official record of the meeting on june 24 , 1994 , with the committee and the nature of this letter dated december 23 , 1994 , the committee is doubtful whether the economic aspects of dpc were discussed at all . ' '\nthe credibility of the shiv sena - bjp government has been seriously questioned . \" the committee finds it unexplicable ( sic ) why there was no mention of any reduction in capital cost of the project from $ 2 , 828 million to $ 2 , 501 million as agreed by dpc in the summary report of the renegotiating committee , \" the panel observes . says lawyer prashant bhushan : \" it is strange that the shiv sena - bjp government first filed a writ in the court and then coolly renegotiated the deal . \" the committee further spells out the losses incurred through the deal . \" subsequent to the commissioning of the dpc , the financial deterioration of mseb has been rapid . while the mseb was in profit in 1998 - 99 , it plunged into huge losses of rs 1681 crore in 1999 - 2000 . \"\nsignificantly , the world bank in 1993 had predicted the system ' s inherent weaknesses . in a letter written to the then power secretary , r . vasudevan , a top bank official had said that \" after a detailed review of the analytical framework and costing assumptions , we reconfirm our earlier conclusion that the dabhol project , as presently formulated , is not economically justified \" and that in \" our assessment the project is too large to enter the mseb system in 1998 . the proposed base - load operation could result in uneconomic plant dispatch , as already existing lower variable cost coal power would be replaced by the higher cost lng power . \"\nenron ' s persistence and the ' gullibility ' of the indian side can be gauged from high - ranking enron official joe sutton ' s letter to a key indian official , ajit nimbalkar : \" i recently met with the world bank and have been following the articles in the india papers . i feel that the world bank opinion can be changed . we ' ll engage a pr firm and hopefully manage the media from here on . the project has solid support from all other agencies in washington . \"\nthe key question in the enron deal is whether a developed state like maharashtra needs outside intervention in the power sector at all ? for the first time the godbole committee has raised objections about the viability of such a project . according to the report , the mseb has been one of the better performing boards in the country and has , despite a faulty transmission and distribution ( t and d ) system , managed to consistently earn net revenue surpluses on an accrual basis .\nmaharashtra accounts for nearly one - fourth of the gross value of india ' s industrial sector . it ' s one of the few states to achieve 100 per cent electrification . since ' 95 , the mseb has been adding to its generation . \" this improvement , which has been largely due to renovation and modernisation undertaken by the mseb , exceeded its own expectations at a time when the dpc was being considered , \" the report points out . following a policy of cross - subsidy , roughly nine out of its ten users are subsidised .\nbut the gap between the average cost of supply and average realisation hasn ' t been much . in fact , the subsidy claim decreased from rs 630 crore in 1995 - 96 to rs 355 crore in 1998 - 99 , until in 1999 - 2000 it increased nearly five - fold to rs 2 , 084 crore due to the sudden increase in the gap by 26 paise per unit - from 15 to 41 paise - an increase of 173 per cent . \" the increase in the subsidy claim by rs 1 , 729 crore is due to the increase in the gap principally because of the increase in power purchase costs , \" says the committee , adding : \" without the dpc and without problems of t and d loss , the mseb could be financially healthy . \"\nbut can that happen now since enron is here to stay ? the committee has come up with some far - reaching recommendations : make public all dabhol - related documents and agreements , restructure the dabhol project itself to bring down the cost of power , restructure dpc financially , allow sale of dpc power outside maharashtra , re - examine ppas in accordance with least - cost plans , and thoroughly reform the mseb . the committee know this can become reality only with political consensus and through forming of public opinion . the question is , can that be achieved in an unstable political environment ?\nwith priya sahgal\nmaking of a scam\n? 1992 : centre invites enron to set up ' fast track ' power project\n? dec 1993 : first ppa signed with mseb\n? 1994 : enron starts construction\n? 1995 : sena - bjp govt scraps enron\n? 1996 : state govt renegotiates project\n? 1996 : 13 - day vajpayee govt approves counter - guarantee\n? may 1996 : state cabinet clears ppa\n? may 13 , 1999 : phase i commissioned\n? jul 1999 : financial closure for phase ii\n? oct 2000 : mseb defaults on payment , subsequently stops paying monthly bills\n? feb 6 , 2001 : enron invokes central government ' s counter - guarantee\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - business standard , monday , april 23 , 2001\nmseb revenue collections up at rs 968 crore in march , renni abraham\nthe maharashtra state electricity board ' s ( mseb ) revenue collections in march 2001 stood at a record rs 968 crore . this was largely due to the disconnection drive on defaulter connections - - pegged at nearly 20 , 000 disconnections a month - - which resulted in compliance by consumers . with the dabhol power company ( dpc ) monthly financial burden issue now a topic of discussion among arbitrators on the negotiating table , the mseb has turned to putting its house in order .\nas if to ward of any criticism of its fiscal condition that could be termed as the facilitator to the entire dpc tariff crisis , the state electricity board has put matters relating to its performance on record . for instance , mseb has recorded the highest power generation in the year ended march 31 , 2001 , at 45930 units , compared with the previous year ' s 45582 units , making it the top seb of the country in this respect . similarly its power stations recorded the highest availability percentage at 86 . 1 up from 84 . 6 per cent last fiscal . plant load factor is up to 72 . 78 per cent , compared with 71 . 7 per cent in 2000 .\nthe parli power station has recorded the highest ever generation in the ten years of its life time in 2000 at 4545 million units , which made it eligible for the meritorious productivity award under the eligibility guidelines issued by the government of india carrying a cash award of rs 12 . 5 lakh . all other power stations in the state , without exception , also fulfill the eligibility criteria for the cash award , a senior mseb official said . similarly , the chandrapur power station became the first power station of any state electricity board to get the iso 9002 certification .\na senior mseb official said : \" earlier mseb was suffering from too much interference in its day to day functioning . the agriculturists were touted as the major reason for its deteriorating accruals , while theft of electricity during the transmission and distribution stage was conveniently camouflaged under this head . in the recent past , the government has authorised mseb to take steps to curb this misuse of power by its own officials , many of whom , including a chief engineer have suffered suspensions", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.260+0000", "entityId": 10534, "properties": {"text": "Subject: re : [ no subject ]\nhi vince ,\nthis resume looks quite good . we may wish to talk to him on the phone .\nhowever , now that david hoog has hired his own actuarial guys ( alex\ntartakowski and larry markus ) from ace , i am not sure if they require support\non the actuarial side . with don black ( of global risk markets ) leaving\nenron , i think the effort to develop power products for the insurance markets\nis pretty much nonexistent , except for david hoog ' s product . the resume\nstill looks interesting , though .\nvasant\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : friday , april 13 , 2001 3 : 56 pm\nto : shanbhogue , vasant\nsubject : [ no subject ]\nvasant , please , take a look at this eresume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 13 / 2001\n09 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncathy lira @ enron\n03 / 26 / 2001 11 : 12 pm\nto : vkamins @ enron . com\ncc :\nsubject : [ no subject ]\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cathy lira / na / enron on 03 / 26 / 2001 04 : 12\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" imccracken \" on 02 / 24 / 2001 04 : 02 : 11 pm\nplease respond to \" imccracken \"\nto : grad _ programs @ enron . com\ncc :\nsubject : [ no subject ]\ndear sir / madam ,\ni am a student in a master ' s programme in mathematical finance due to\ngraduate in august . my intention upon graduation is to work in a quantitative\ncapacity in the\npower markets and to this end , i am including my resume in the hope that i\nmight be considered for any available position in your risk\nmanagement or structured products group requiring such mathematical skills .\ni have addressed this email to your graduate programmes address but i am\nunsure whether or not my candidacy would fall under the umbrella covered by\nyour associate programme . if this is not the case , any help in seeing that my\nresume finds the correct destination would be greatly appreciated .\nyours sincerely ,\nian mccracken\n* get free , secure online email at http : / / www . ziplip . com / *\n- iancv . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.266+0000", "entityId": 10535, "properties": {"text": "Subject: renshi zhang ' s resume\nfyi .\nplease cancel the interview schedule for renshi zhang . hr just notified me\nthat he has accepted another position . it was scheduled for tomorrow .\ni have removed it from the calendars that i have access to .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 23 / 2001\n10 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n04 / 19 / 2001 04 : 08 pm\nto : shirley crenshaw / hou / ect @ ect , molly magee / enron @ enronxgate\ncc : vince j kaminski / hou / ect @ ect\nsubject : renshi zhang ' s resume\nshirley and molly ,\nvince is interested to set up an interview for renshi zhang . any day except\nthursday next week\nis good .\ninterviewers : vince , stinson , vasant , tanya , alex , bob , krishna and myself .\ncontact number for mr . zhang is 713 - 544 - 5989 .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 19 / 2001 03 : 52 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n04 / 05 / 2001 09 : 49 am\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 05 / 2001 09 : 46 am\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 14 / 2001 10 : 06 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : resume\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 14 / 2001\n10 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 03 / 09 / 2001 07 : 46 : 22 am\nto : vince kaminski\ncc :\nsubject : resume\nvince ,\nhow are you . this candidate would be interested in any positions in\nyour group .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party .\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n- zhan _ ren . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.271+0000", "entityId": 10536, "properties": {"text": "Subject: re : [ no subject ]\nhi vince ,\nthis resume looks quite good . we may wish to talk to him on the phone . however , now that david hoog has hired his own actuarial guys ( alex tartakowski and larry markus ) from ace , i am not sure if they require support on the actuarial side . with don black ( of global risk markets ) leaving enron , i think the effort to develop power products for the insurance markets is pretty much nonexistent , except for david hoog ' s product . the resume still looks interesting , though .\nvasant\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : friday , april 13 , 2001 3 : 56 pm\nto : shanbhogue , vasant\nsubject : [ no subject ]\nvasant , please , take a look at this eresume .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 13 / 2001 09 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ncathy lira @ enron\n03 / 26 / 2001 11 : 12 pm\nto : vkamins @ enron . com\ncc :\nsubject : [ no subject ]\n- - - - - - - - - - - - - - - - - - - - - - forwarded by cathy lira / na / enron on 03 / 26 / 2001 04 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" imccracken \" on 02 / 24 / 2001 04 : 02 : 11 pm\nplease respond to \" imccracken \"\nto : grad _ programs @ enron . com\ncc :\nsubject : [ no subject ]\ndear sir / madam ,\ni am a student in a master ' s programme in mathematical finance due to graduate in august . my intention upon graduation is to work in a quantitative capacity in the\npower markets and to this end , i am including my resume in the hope that i might be considered for any available position in your risk\nmanagement or structured products group requiring such mathematical skills .\ni have addressed this email to your graduate programmes address but i am unsure whether or not my candidacy would fall under the umbrella covered by your associate programme . if this is not the case , any help in seeing that my resume finds the correct destination would be greatly appreciated .\nyours sincerely ,\nian mccracken\n* get free , secure online email at http : / / www . ziplip . com / *\n- iancv . doc >\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.276+0000", "entityId": 10537, "properties": {"text": "Subject: renshi zhang ' s resume\nfyi .\nplease cancel the interview schedule for renshi zhang . hr just notified me\nthat he has accepted another position . it was scheduled for tomorrow .\ni have removed it from the calendars that i have access to .\nthanks !\nshirley\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 23 / 2001 10 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n04 / 19 / 2001 04 : 08 pm\nto : shirley crenshaw / hou / ect @ ect , molly magee / enron @ enronxgate\ncc : vince j kaminski / hou / ect @ ect\nsubject : renshi zhang ' s resume\nshirley and molly ,\nvince is interested to set up an interview for renshi zhang . any day except thursday next week\nis good .\ninterviewers : vince , stinson , vasant , tanya , alex , bob , krishna and myself .\ncontact number for mr . zhang is 713 - 544 - 5989 .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 19 / 2001 03 : 52 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n04 / 05 / 2001 09 : 49 am\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 04 / 05 / 2001 09 : 46 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n03 / 14 / 2001 10 : 06 am\nto : zimin lu / hou / ect @ ect\ncc :\nsubject : resume\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 03 / 14 / 2001 10 : 07 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 03 / 09 / 2001 07 : 46 : 22 am\nto : vince kaminski\ncc :\nsubject : resume\nvince ,\nhow are you . this candidate would be interested in any positions in\nyour group .\nregards ,\nmarshall brown\nvice president\nrobert walters associates\ntel : ( 212 ) 704 - 0596\nfax : ( 212 ) 704 - 4312\nmailto : marshall . brown @ robertwalters . com\nhttp : / / www . robertwalters . com\n>\ncaution : electronic mail sent through the internet is not secure and could\nbe intercepted by a third party .\nthis email and any files transmitted with it are confidential and\nintended solely for the use of the individual or entity to whom they\nare addressed . if you have received this email in error please notify\nthe system manager .\nthis footnote also confirms that this email message has been swept by\nmimesweeper for the presence of computer viruses .\n- zhan _ ren . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.281+0000", "entityId": 10538, "properties": {"text": "Subject: final project deadline is april 30\ndear energy derivatives students ,\nthe deadline for the final project has been set for april 30 , 2001 .\nall grades will be submitted to rice administration by may 4 th ( university\nrequirement ) .\nplease mark your calendars ! ! !\nif you have questions , please contact vince or me .\ngood luck !\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.289+0000", "entityId": 10539, "properties": {"text": "Subject: zingales seminar\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 23 / 2001\n03 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalbert wang on 04 / 23 / 2001 11 : 23 : 22 am\nto : ( recipient list suppressed )\ncc :\nsubject : zingales seminar\nenron seminar series in finance\njones graduate school of management , rice university\nluigi zingales\nuniversity of chicago\nwill give a seminar at the jones school on friday , april 27 , ?\n\" the great reversals : the politics of financial development in the 20 th\ncentury . \"\nthe seminar will begin at 3 : 30 in room 105 .\na pdf of the paper is available through the seminar website :\nhttp : / / www . ruf . rice . edu / ~ jgsfss / .\nfu - kuo albert wang\nassistant professor\njones graduate school of management - - ms 531 ?\nrice university ?\n6100 main street ?\nhouston , tx 77005 ?\nphone : 713 - 348 - 5404 ?\nfax : ? ? ? ? 713 - 348 - 5251\nemail : wangfa @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.297+0000", "entityId": 10540, "properties": {"text": "Subject: zingales seminar\nenron seminar series in financejones graduate school of management , rice\nuniversityluigi zingalesuniversity of chicagowill give a seminar at the jones\nschool on friday , april 27 , ? \" the great reversals : the politics of financial\ndevelopment in the 20 th century . \" the seminar will begin at 3 : 30 in room 105 . a\npdf of the paper is available through the seminar website :\nhttp : / / www . ruf . rice . edu / ~ jgsfss / .\nfu - kuo albert wangassistant professorjones graduate school of management - -\nms 531 ? rice university ? 6100 main street ? houston , tx 77005 ? phone :\n713 - 348 - 5404 ? fax : ? ? ? ? 713 - 348 - 5251 email : wangfa @ rice . eduhttp\n: / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.305+0000", "entityId": 10541, "properties": {"text": "Subject: final project deadline is april 30\ndear energy derivatives students ,\nthe deadline for the final project has been set for april 30 , 2001 .\nall grades will be submitted to rice administration by may 4 th ( university requirement ) .\nplease mark your calendars ! ! !\nif you have questions , please contact vince or me .\ngood luck !\njason sokolov", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.310+0000", "entityId": 10542, "properties": {"text": "Subject: zingales seminar\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 23 / 2001 03 : 44 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalbert wang on 04 / 23 / 2001 11 : 23 : 22 am\nto : ( recipient list suppressed )\ncc :\nsubject : zingales seminar\nenron seminar series in finance\njones graduate school of management , rice university\nluigi zingales\nuniversity of chicago\nwill give a seminar at the jones school on friday , april 27 ,\n\" the great reversals : the politics of financial development in the 20 th century . \"\nthe seminar will begin at 3 : 30 in room 105 .\na pdf of the paper is available through the seminar website :\nhttp : / / www . ruf . rice . edu / ~ jgsfss / .\nfu - kuo albert wang\nassistant professor\njones graduate school of management - - ms 531\nrice university\n6100 main street\nhouston , tx 77005\nphone : 713 - 348 - 5404\nfax : 713 - 348 - 5251\nemail : wangfa @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.315+0000", "entityId": 10543, "properties": {"text": "Subject: zingales seminar\nenron seminar series in financejones graduate school of management , rice universityluigi zingalesuniversity of chicagowill give a seminar at the jones school on friday , april 27 , \" the great reversals : the politics of financial development in the 20 th century . \" the seminar will begin at 3 : 30 in room 105 . a pdf of the paper is available through the seminar website : http : / / www . ruf . rice . edu / ~ jgsfss / .\nfu - kuo albert wangassistant professorjones graduate school of management - - ms 531 rice university 6100 main street houston , tx 77005 phone : 713 - 348 - 5404 fax : 713 - 348 - 5251 email : wangfa @ rice . eduhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.321+0000", "entityId": 10544, "properties": {"text": "Subject: re : another stanford acceptance\nthanks so much vince !\nvince j kaminski @ ect\n04 / 23 / 2001 11 : 09 am\nto : althea gordon / na / enron @ enron\ncc : greg . whalley @ enron . com , traci . warner @ enron . com , patricia . payton @ enron . com\nsubject : re : another stanford acceptance\nalthea\ngreat news . it ' s all your hard work .\nvince\nalthea gordon @ enron\n04 / 20 / 2001 01 : 43 pm\nto : vince . kaminski @ enron . com , brad . romine @ enron . com , brad . alford @ enron . com , martin . lin @ enron . com , stephen . swain @ enron . com , matt _ harris @ enron . net , elliot . mainzer @ enron . com , mauricio . mora @ enron . com , victor . browner @ enron . com\ncc : greg . whalley @ enron . com , traci . warner @ enron . com , patricia . payton @ enron . com\nsubject : another stanford acceptance\nstanford team ,\nwe have received yet another acceptance - noah jacobs has accepted our offer as a summer associate . we are now 4 of 6 for our summer offers . i have sent paul kasper , our one full time offer a cultivation gift and will be checking in on him next week . also eric cope , a stanford student that vince kaminski ' s group had interviewed here in houston for a summer associate position has also accepted . all in all our stanford numbers are looking great !\nmany thanks to everyone and keep up the great work !\nalthea\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.326+0000", "entityId": 10545, "properties": {"text": "Subject: re : another stanford acceptance\nthanks so much vince !\nvince j kaminski @ ect\n04 / 23 / 2001 11 : 09 am\nto : althea gordon / na / enron @ enron\ncc : greg . whalley @ enron . com , traci . warner @ enron . com , patricia . payton @ enron . com\nsubject : re : another stanford acceptance\nalthea\ngreat news . it ' s all your hard work .\nvince\nalthea gordon @ enron\n04 / 20 / 2001 01 : 43 pm\nto : vince . kaminski @ enron . com , brad . romine @ enron . com , brad . alford @ enron . com ,\nmartin . lin @ enron . com , stephen . swain @ enron . com , matt _ harris @ enron . net ,\nelliot . mainzer @ enron . com , mauricio . mora @ enron . com , victor . browner @ enron . com\ncc : greg . whalley @ enron . com , traci . warner @ enron . com , patricia . payton @ enron . com\nsubject : another stanford acceptance\nstanford team ,\nwe have received yet another acceptance - noah jacobs has accepted our offer\nas a summer associate . we are now 4 of 6 for our summer offers . i have sent\npaul kasper , our one full time offer a cultivation gift and will be checking\nin on him next week . also eric cope , a stanford student that vince\nkaminski ' s group had interviewed here in houston for a summer associate\nposition has also accepted . all in all our stanford numbers are looking\ngreat !\nmany thanks to everyone and keep up the great work !\nalthea", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.331+0000", "entityId": 10546, "properties": {"text": "Subject: re : fw : mtg . scheduled\nfrank ,\nregarding simulating power prices in var we might discuss the following items\nand show some results :\n1 . clustering for power :\n- clustering based on historical prices and correlations from them ;\n- geographical clustering ;\n- flexibility in choosing \" core curves \" ( based on position size ) ;\n2 . jump - diffusion process for intramonth and prompt month :\n- parameter estimation from historical data ( do we want to use it ? )\n- working out parameters ( jumps frequency , jump size ) as stress scenarios ;\n3 . correlations within a cluster and across clusters .\n4 . changing correlations estimations ( using fixed contact ' time series ) .\n5 . joint estimation of factors for selected regions .\nlet me know what you think should be in the agenda for this meeting .\nregards ,\ntanya\nfrom : frank hayden / enron @ enronxgate on 04 / 18 / 2001 03 : 43 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : fw : mtg . scheduled\nif you want , i welcome your help in putting together an agenda .\nfrank\n- - - - - original message - - - - -\nfrom : black , tamara jae\nsent : wednesday , april 18 , 2001 3 : 32 pm\nto : presto , kevin ; davis , mark dana ; sturm , fletcher ; herndon , rogers ;\ngilbert - smith , doug ; white , stacey ; kaminski , vince ; andrews , naveen ; belden ,\ntim ; gorny , vladimir ; davenport , lacrecia\ncc : hayden , frank\nsubject : mtg . scheduled\nplease mark your calendar for a meeting with :\nfrank hayden\nreg . value @ risk\napril 26 th\n3 - 4 pm\nrm 3125 b\nthanks\ntjae black\nx 35800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.336+0000", "entityId": 10547, "properties": {"text": "Subject: re : fw : mtg . scheduled\nfrank ,\nregarding simulating power prices in var we might discuss the following items\nand show some results :\n1 . clustering for power :\n- clustering based on historical prices and correlations from them ;\n- geographical clustering ;\n- flexibility in choosing \" core curves \" ( based on position size ) ;\n2 . jump - diffusion process for intramonth and prompt month :\n- parameter estimation from historical data ( do we want to use it ? )\n- working out parameters ( jumps frequency , jump size ) as stress scenarios ;\n3 . correlations within a cluster and across clusters .\n4 . changing correlations estimations ( using fixed contact ' time series ) .\n5 . joint estimation of factors for selected regions .\nlet me know what you think should be in the agenda for this meeting .\nregards ,\ntanya\nfrom : frank hayden / enron @ enronxgate on 04 / 18 / 2001 03 : 43 pm\nto : tanya tamarchenko / hou / ect @ ect\ncc :\nsubject : fw : mtg . scheduled\nif you want , i welcome your help in putting together an agenda .\nfrank\n- - - - - original message - - - - -\nfrom : black , tamara jae\nsent : wednesday , april 18 , 2001 3 : 32 pm\nto : presto , kevin ; davis , mark dana ; sturm , fletcher ; herndon , rogers ; gilbert - smith , doug ; white , stacey ; kaminski , vince ; andrews , naveen ; belden , tim ; gorny , vladimir ; davenport , lacrecia\ncc : hayden , frank\nsubject : mtg . scheduled\nplease mark your calendar for a meeting with :\nfrank hayden\nreg . value @ risk\napril 26 th\n3 - 4 pm\nrm 3125 b\nthanks\ntjae black\nx 35800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.341+0000", "entityId": 10548, "properties": {"text": "Subject: re : sevil yamen\nanne ,\nthanks .\nvince\nfrom : anne labbe / enron @ enronxgate on 04 / 20 / 2001 01 : 31 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : sevil yamen\ngood news , i finally received the memo from legal that accompanies project bonuses . i have left sevil a voice mail to contact me at her earliest convenience . sevil should receive this payment on april 30 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.346+0000", "entityId": 10549, "properties": {"text": "Subject: re : statistician from rice\nosman ,\nthis guy is too much .\ni would tell him that we understand\nthat he has to make the best choice\nfor himself and can change his mind but at this point we treat\nhis decision as final but we still appreciate the interest he showed\nin enron .\nwe never had any luck hiring a statistician .\nmaybe we shall get one some day .\nvince\nosman sezgen @ ees\n04 / 20 / 2001 11 : 54 am\nto : vince j kaminski / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : statistician from rice\ni had a message on my phone this morning from william indicating that\nhe had changed his mind and will be taking another job . he also mentions that\nthe other organization will give him time to publish his thesis and he assumes\nenron would not do that .\ni am inclined to give up on him but wanted to get your input before doing so .\nosman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.351+0000", "entityId": 10550, "properties": {"text": "Subject: re : sevil yamen\nanne ,\nthanks .\nvince\nfrom : anne labbe / enron @ enronxgate on 04 / 20 / 2001 01 : 31 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : sevil yamen\ngood news , i finally received the memo from legal that accompanies project\nbonuses . i have left sevil a voice mail to contact me at her earliest\nconvenience . sevil should receive this payment on april 30 th .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.355+0000", "entityId": 10551, "properties": {"text": "Subject: re : statistician from rice\nosman ,\nthis guy is too much .\ni would tell him that we understand\nthat he has to make the best choice\nfor himself and can change his mind but at this point we treat\nhis decision as final but we still appreciate the interest he showed\nin enron .\nwe never had any luck hiring a statistician .\nmaybe we shall get one some day .\nvince\nosman sezgen @ ees\n04 / 20 / 2001 11 : 54 am\nto : vince j kaminski / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect\ncc :\nsubject : statistician from rice\ni had a message on my phone this morning from william indicating that\nhe had changed his mind and will be taking another job . he also mentions that\nthe other organization will give him time to publish his thesis and he\nassumes\nenron would not do that .\ni am inclined to give up on him but wanted to get your input before doing so .\nosman", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.360+0000", "entityId": 10552, "properties": {"text": "Subject: calculating bid - ask prices\nthis is about enron movie trading business where we are a market maker for\ntrading future of a movie ' s gross box office receipt . rich sent to many\npeople a writing explaining his movie trading idea and asked us to provide\nsome feedback .\ni think the idea ( see below ) might be applicable to other parts of enron . we\ncan call it \" dynamic bid - ask price process \" .\nin fact , we can set that the bidding period is closed when no new bid is\nsubmitted to the system within a specified amount of time . the final\n( clearing ) bid and ask prices are just the last \" tentative \" price shown to\nthe public before the bidding period ends . ( so the customers can see the\nfinal price before the market close and can revise their bids if they wish . )\ni think this method is suitable for illiquid products to be traded via\nenrononline . com .\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n04 / 24 / 2001 07 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n04 / 24 / 2001 07 : 40 pm\nto : richard dimichele / enron communications @ enron communications\ncc : chonawee supatgiat / corp / enron @ enron , cynthia harkness / enron\ncommunications @ enron communications , greg wolfe / hou / ect @ ect , james\nginty / enron communications @ enron communications , jim fallon / enron\ncommunications @ enron communications , kelly kimberly / enron\ncommunications @ enron communications , kevin howard / enron communications @ enron\ncommunications , key kasravi / enron communications @ enron communications ,\nkristin albrecht / enron communications @ enron communications , kristina\nmordaunt / enron communications @ enron communications , martin\nlin / contractor / enron communications @ enron communications , paul racicot / enron\ncommunications @ enron communications , zachary mccarroll / enron\ncommunications @ enron communications , martin lin / contractor / enron\ncommunications @ enron communications\nsubject : calculating bid - ask prices\ni think we should let the price float with the market instead of trying to\nforecast it . otherwise , if our forecast is not consistence with the market ,\nwe may have an imbalance in the bid - ask orders and we may end up taking some\npositions . you know , as russ and martin pointed out , we cannot fight with the\nstudio and exhibitors because they have inside information and can game the\nprice easily .\none way to ensure the balance of the bid - ask orders is to embed an exchange\nsystem inside our bid - ask prices front end . each week , we have a trading\nperiod . during the period , instead of posting bid - ask prices , we post\n\" tentative \" bid - ask prices , then we ask our customers to submit their\nacceptable buying or selling price . these \" tentative \" bid - ask prices get\nupdated and are shown to the public . of course , customers can revise / withdraw\ntheir bids anytime during the trading period . at the end of the period , we\ncalculate and post the final bid and ask prices . the seller who submits lower\nselling price than our final bid price gets paid at the bid price . the buyer\nwho submits higher buying price than our final ask price pays at the ask\nprice . next week , we repeat the same process .\nthis way , we can manage our positions easily and we can also behave like a\nbroker where we don ' t take any position at all . we make profit from those\nbid - ask spread . we don ' t have to worry about forecasting accuracy and\ninsiders ' trading because we don ' t have to take any position . let the market\nbe the one who decides the price .\nif we maintain our net position as zero , at the end , when all the actual\ngross box office numbers are reported in those publications , our customers\nwith open long / short positions are perfectly matched . using the\nmark - to - market charge can reduce credit risk .\nthanks ,\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on\n04 / 24 / 2001 07 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n04 / 20 / 2001 04 : 31 pm\nto : richard dimichele / enron communications @ enron communications , key\nkasravi / enron communications @ enron communications\ncc : martin lin / contractor / enron communications @ enron communications\nsubject : some more input\nhi rich and key ,\nagain i think your idea is very good . i think that we , as a market maker , can\nreduce our credit risk ( risk of default ) if we do the \" mark - to - market \"\ncharging . that is , each week when we release a new expected value of the\ngross box office receipt , we balance all the opening positions the same way\nas in a regular future market . this way , we can give margin calls to the\ncouterparties who are expected to owe us a lots of money .\nin the last paragraph , i think the gross box office can also be determined\nfrom the market itself ( i . e . , if there are lots of buyers , our offer price\nshould go up . )\nwe can offer other derivative products such as options as well .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.365+0000", "entityId": 10553, "properties": {"text": "Subject: calculating bid - ask prices\nthis is about enron movie trading business where we are a market maker for trading future of a movie ' s gross box office receipt . rich sent to many people a writing explaining his movie trading idea and asked us to provide some feedback .\ni think the idea ( see below ) might be applicable to other parts of enron . we can call it \" dynamic bid - ask price process \" .\nin fact , we can set that the bidding period is closed when no new bid is submitted to the system within a specified amount of time . the final ( clearing ) bid and ask prices are just the last \" tentative \" price shown to the public before the bidding period ends . ( so the customers can see the final price before the market close and can revise their bids if they wish . )\ni think this method is suitable for illiquid products to be traded via enrononline . com .\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on 04 / 24 / 2001 07 : 48 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n04 / 24 / 2001 07 : 40 pm\nto : richard dimichele / enron communications @ enron communications\ncc : chonawee supatgiat / corp / enron @ enron , cynthia harkness / enron communications @ enron communications , greg wolfe / hou / ect @ ect , james ginty / enron communications @ enron communications , jim fallon / enron communications @ enron communications , kelly kimberly / enron communications @ enron communications , kevin howard / enron communications @ enron communications , key kasravi / enron communications @ enron communications , kristin albrecht / enron communications @ enron communications , kristina mordaunt / enron communications @ enron communications , martin lin / contractor / enron communications @ enron communications , paul racicot / enron communications @ enron communications , zachary mccarroll / enron communications @ enron communications , martin lin / contractor / enron communications @ enron communications\nsubject : calculating bid - ask prices\ni think we should let the price float with the market instead of trying to forecast it . otherwise , if our forecast is not consistence with the market , we may have an imbalance in the bid - ask orders and we may end up taking some positions . you know , as russ and martin pointed out , we cannot fight with the studio and exhibitors because they have inside information and can game the price easily .\none way to ensure the balance of the bid - ask orders is to embed an exchange system inside our bid - ask prices front end . each week , we have a trading period . during the period , instead of posting bid - ask prices , we post \" tentative \" bid - ask prices , then we ask our customers to submit their acceptable buying or selling price . these \" tentative \" bid - ask prices get updated and are shown to the public . of course , customers can revise / withdraw their bids anytime during the trading period . at the end of the period , we calculate and post the final bid and ask prices . the seller who submits lower selling price than our final bid price gets paid at the bid price . the buyer who submits higher buying price than our final ask price pays at the ask price . next week , we repeat the same process .\nthis way , we can manage our positions easily and we can also behave like a broker where we don ' t take any position at all . we make profit from those bid - ask spread . we don ' t have to worry about forecasting accuracy and insiders ' trading because we don ' t have to take any position . let the market be the one who decides the price .\nif we maintain our net position as zero , at the end , when all the actual gross box office numbers are reported in those publications , our customers with open long / short positions are perfectly matched . using the mark - to - market charge can reduce credit risk .\nthanks ,\n- chonawee\n- - - - - - - - - - - - - - - - - - - - - - forwarded by chonawee supatgiat / corp / enron on 04 / 24 / 2001 07 : 24 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchonawee supatgiat\n04 / 20 / 2001 04 : 31 pm\nto : richard dimichele / enron communications @ enron communications , key kasravi / enron communications @ enron communications\ncc : martin lin / contractor / enron communications @ enron communications\nsubject : some more input\nhi rich and key ,\nagain i think your idea is very good . i think that we , as a market maker , can reduce our credit risk ( risk of default ) if we do the \" mark - to - market \" charging . that is , each week when we release a new expected value of the gross box office receipt , we balance all the opening positions the same way as in a regular future market . this way , we can give margin calls to the couterparties who are expected to owe us a lots of money .\nin the last paragraph , i think the gross box office can also be determined from the market itself ( i . e . , if there are lots of buyers , our offer price should go up . )\nwe can offer other derivative products such as options as well .\n- chonawee", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.371+0000", "entityId": 10554, "properties": {"text": "Subject: the rising crisis in brazil ' s power sector - a cera conference ca\nll\ncambridge energy research associates ( cera ) invites you to participate in a\nspecial conference call and web presentation to discuss \" the rising crisis in\nbrazil ' s power sector \" on may 3 , 2001 at 9 : 30 am eastern time .\nthis call will feature jed bailey , an associate director and specialist on\nlatin america power issues and barbara l . mattos , cera associate director\nspecializing in the industrial and energy markets of brazil .\ntopics for this conference call and web presentation include :\n* could the short rain season result in shortage and rationing ?\n* what is the potential impact on the energy reform process ?\n* what is the potential impact on the economy ?\nformat\nour speakers will address this topic for approximately 30 minutes , with\naccompanying graphics presented on the internet , followed by an open question\nand answer period .\nto enroll\nto enroll , please contact ms . donna masulla via e - mail at dmasulla @ cera . com\nbefore 4 : 00 p . m . , wednesday , may 2 , 2001 . please include your name , company ,\nand telephone number with your correspondence .\nhow to participate via audio\nnetscape navigator 3 . 02 or higher ; or sun hot java ( tm )\n* close all desktop applications and disable your screen saver\nto ensure computer compatibility , complete the internet instructions before\nthe\nday of the call . a message will appear telling you that your meeting is not\nready to start . however , it also informs you about any action that you may\nneed\nto take to prepare your computer to participate .\ntechnical assistance\nu . s . callers : ? if you are experiencing difficulties during the call , you may\nsignal for technical assistance by pressing * 0 ( star , zero ) on your telephone\nkeypad after you have connected to the audio portion of the conference .\ninternational callers : ? please re - dial and ask the operator for assistance\nbefore giving the confirmation code .\ncera ' s spring 2001 roundtable event dates and agendas are now available\nat http : / / www 20 . cera . com / event\nour relationship with you is very important to us . ? if you wish not to\nreceive e - mail notifications from cera , please send a reply to this message\nwith \" donotemail \" as the subject of your message .\n( mailto : info @ cera . com ? subject = donotemail )\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.377+0000", "entityId": 10555, "properties": {"text": "Subject: re : kwi user group\nvince\nyes please go ahead .\ndavid\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 24 april 2001 23 : 35\nto : djw @ kwi . com\nsubject : re : kwi user group\ndavid ,\ni can ask our ceo john sherriff .\nplease , let me know by 10 : 00 a . m . central time , wednesday .\nvince\ndavid warwick on 04 / 24 / 2001 05 : 24 : 53 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : kwi user group\nvince\nsorry to hear you cannot make it . . . you would obviously have been the big\ncatch ! !\nin terms of a london based replacement , who did you have in mind and what\nsort of subject could they cover ?\ndavid\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 24 april 2001 23 : 22\nto : djw @ kwi . com\ncc : vince . j . kaminski @ enron . com ; shirley . crenshaw @ enron . com\nsubject : re : kwi user group\ndavid ,\ni regret to inform you i am unable to attend the conference due to previous\ncommitments .\nwould you consider a speakers form our london office ?\nvince\ndavid warwick on 04 / 24 / 2001 09 : 47 : 31 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : kwi user group\nvince\nany further thoughts on this ?\ndavid\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 13 april 2001 21 : 44\nto : djw @ kwi . com\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : re : kwi user group\ndavid ,\nthanks for the invitation .\ni shall check my schedule on monday and will get back to you\nregarding the conference .\ni hope you will a very happy easter .\nvince\ndavid warwick on 04 / 12 / 2001 04 : 04 : 32 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : kwi user group\ndear vince\nplease may i reintroduce myself . we met last year at the sydney eprm\nconference which my company kwi sponsored . i chaired the session at which\nyou spoke .\nas you may remember , my company , kwi are one of the world ' s leading\nprovider\nof systems ( kw 3000 ) and consultancy for energy , trading and risk\nmanagement .\nwe have over 60 clients worldwide including many of the world ' s leading\nenergy companies ( not enron unfortunately ) :\nnorth america\n- tva\n- ontario power\n- cinergy\n- bonneville power\neurope\n- enel\n- atel\n- electrabel\n- edf\nnordic\n- vattenfall\n- fortum\n- sydkraft\n- statkraft\n- birka energi\n- norsk hydro\neach year we stage a \" kwi users forum \" - a 2 - day event attended by leading\ntrading and risk staff from our clients . last year there were about 100\ndelegates . the agenda primarily focusses on issues surrounding risk\nmanagement for the energy sector .\nthe agenda comprises keynote presentations on burning risk issues from\nindustry leading energy speakers and practical workshops focussed around\nusing our software .\nthis years event is at a luxury hotel in the wonderful spanish city of\nbarcelona and runs from the evening of sunday september 9 th to tuesday\nseptember 11 th . the main conference dinner is on the monday evening and is\nalways a memorable event . this year it is in a leading barcelona restaurant\npreceded by a bus tour of the city with a stop for pre - dinner drinks .\ni would like to invite you to make the opening keynote address , the\nhighlight of the conference .\nthe subject could be :\n* a general energy risk related topic\n* a general insight into the secret of enron ' s continued success in\nthe energy markets\n* your thoughts on the future development on energy markets ( and other\ncommodity related - bandwidth etc . ) worldwide\nobviously , we would cover all your delagate costs including accomodation ,\nfood and drink .\nwhat ' s in it for you ? many of our users are some the energy sectors\nleading\nrisk thinkers and i ' m sure you would enjoy meeting them and exchanging\nviews .\nplease let me know if you are able to accept the invitation .\nbest regards\ndavid warwick - marketing dierctor and co - founder", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.381+0000", "entityId": 10556, "properties": {"text": "Subject: re : kwi user group\nvince\nsorry to hear you cannot make it . . . you would obviously have been the big\ncatch ! !\nin terms of a london based replacement , who did you have in mind and what\nsort of subject could they cover ?\ndavid\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 24 april 2001 23 : 22\nto : djw @ kwi . com\ncc : vince . j . kaminski @ enron . com ; shirley . crenshaw @ enron . com\nsubject : re : kwi user group\ndavid ,\ni regret to inform you i am unable to attend the conference due to previous\ncommitments .\nwould you consider a speakers form our london office ?\nvince\ndavid warwick on 04 / 24 / 2001 09 : 47 : 31 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : kwi user group\nvince\nany further thoughts on this ?\ndavid\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 13 april 2001 21 : 44\nto : djw @ kwi . com\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : re : kwi user group\ndavid ,\nthanks for the invitation .\ni shall check my schedule on monday and will get back to you\nregarding the conference .\ni hope you will a very happy easter .\nvince\ndavid warwick on 04 / 12 / 2001 04 : 04 : 32 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : kwi user group\ndear vince\nplease may i reintroduce myself . we met last year at the sydney eprm\nconference which my company kwi sponsored . i chaired the session at which\nyou spoke .\nas you may remember , my company , kwi are one of the world ' s leading\nprovider\nof systems ( kw 3000 ) and consultancy for energy , trading and risk\nmanagement .\nwe have over 60 clients worldwide including many of the world ' s leading\nenergy companies ( not enron unfortunately ) :\nnorth america\n- tva\n- ontario power\n- cinergy\n- bonneville power\neurope\n- enel\n- atel\n- electrabel\n- edf\nnordic\n- vattenfall\n- fortum\n- sydkraft\n- statkraft\n- birka energi\n- norsk hydro\neach year we stage a \" kwi users forum \" - a 2 - day event attended by leading\ntrading and risk staff from our clients . last year there were about 100\ndelegates . the agenda primarily focusses on issues surrounding risk\nmanagement for the energy sector .\nthe agenda comprises keynote presentations on burning risk issues from\nindustry leading energy speakers and practical workshops focussed around\nusing our software .\nthis years event is at a luxury hotel in the wonderful spanish city of\nbarcelona and runs from the evening of sunday september 9 th to tuesday\nseptember 11 th . the main conference dinner is on the monday evening and is\nalways a memorable event . this year it is in a leading barcelona restaurant\npreceded by a bus tour of the city with a stop for pre - dinner drinks .\ni would like to invite you to make the opening keynote address , the\nhighlight of the conference .\nthe subject could be :\n* a general energy risk related topic\n* a general insight into the secret of enron ' s continued success in\nthe energy markets\n* your thoughts on the future development on energy markets ( and other\ncommodity related - bandwidth etc . ) worldwide\nobviously , we would cover all your delagate costs including accomodation ,\nfood and drink .\nwhat ' s in it for you ? many of our users are some the energy sectors\nleading\nrisk thinkers and i ' m sure you would enjoy meeting them and exchanging\nviews .\nplease let me know if you are able to accept the invitation .\nbest regards\ndavid warwick - marketing dierctor and co - founder", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.389+0000", "entityId": 10557, "properties": {"text": "Subject: re : kwi user group\ndavid ,\ni regret to inform you i am unable to attend the conference due to previous\ncommitments .\nwould you consider a speakers form our london office ?\nvince\ndavid warwick on 04 / 24 / 2001 09 : 47 : 31 am\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : re : kwi user group\nvince\nany further thoughts on this ?\ndavid\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 13 april 2001 21 : 44\nto : djw @ kwi . com\ncc : vince . j . kaminski @ enron . com ; vkaminski @ aol . com\nsubject : re : kwi user group\ndavid ,\nthanks for the invitation .\ni shall check my schedule on monday and will get back to you\nregarding the conference .\ni hope you will a very happy easter .\nvince\ndavid warwick on 04 / 12 / 2001 04 : 04 : 32 pm\nto : \" ' vince . j . kaminski @ enron . com ' \"\ncc :\nsubject : kwi user group\ndear vince\nplease may i reintroduce myself . we met last year at the sydney eprm\nconference which my company kwi sponsored . i chaired the session at which\nyou spoke .\nas you may remember , my company , kwi are one of the world ' s leading\nprovider\nof systems ( kw 3000 ) and consultancy for energy , trading and risk\nmanagement .\nwe have over 60 clients worldwide including many of the world ' s leading\nenergy companies ( not enron unfortunately ) :\nnorth america\n- tva\n- ontario power\n- cinergy\n- bonneville power\neurope\n- enel\n- atel\n- electrabel\n- edf\nnordic\n- vattenfall\n- fortum\n- sydkraft\n- statkraft\n- birka energi\n- norsk hydro\neach year we stage a \" kwi users forum \" - a 2 - day event attended by leading\ntrading and risk staff from our clients . last year there were about 100\ndelegates . the agenda primarily focusses on issues surrounding risk\nmanagement for the energy sector .\nthe agenda comprises keynote presentations on burning risk issues from\nindustry leading energy speakers and practical workshops focussed around\nusing our software .\nthis years event is at a luxury hotel in the wonderful spanish city of\nbarcelona and runs from the evening of sunday september 9 th to tuesday\nseptember 11 th . the main conference dinner is on the monday evening and is\nalways a memorable event . this year it is in a leading barcelona restaurant\npreceded by a bus tour of the city with a stop for pre - dinner drinks .\ni would like to invite you to make the opening keynote address , the\nhighlight of the conference .\nthe subject could be :\n* a general energy risk related topic\n* a general insight into the secret of enron ' s continued success in\nthe energy markets\n* your thoughts on the future development on energy markets ( and other\ncommodity related - bandwidth etc . ) worldwide\nobviously , we would cover all your delagate costs including accomodation ,\nfood and drink .\nwhat ' s in it for you ? many of our users are some the energy sectors\nleading\nrisk thinkers and i ' m sure you would enjoy meeting them and exchanging\nviews .\nplease let me know if you are able to accept the invitation .\nbest regards\ndavid warwick - marketing dierctor and co - founder", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.397+0000", "entityId": 10558, "properties": {"text": "Subject: re : 1 / 2 day seminar : the new texas electric market\nfyi !\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 24 / 2001\n10 : 19 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw\n04 / 24 / 2001 10 : 19 am\nto : ron mcnamara / na / enron @ enron , jean ryall / na / enron @ enron\ncc :\nsubject : re : 1 / 2 day seminar : the new texas electric market\nhello ron and jean :\nplease furnish me your co # and cc # so that i can make a group reservation\nto the \" new texas electric market \" seminar in austin on may 2 nd .\ni will charge the entire amount to vince kaminski ' s credit card , but we will\nneed to cross charge the charges when we submit his expense report .\nthanks !\nshirley crenshaw\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 24 / 2001\n10 : 17 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nlance cunningham @ enron on 04 / 23 / 2001 11 : 10 : 33 am\nto : ron mcnamara / na / enron @ enron , jean ryall / na / enron @ enron\ncc : shirley crenshaw / hou / ect @ ect\nsubject : re : 1 / 2 day seminar : the new texas electric market\ncould i please get the following information from you , so that shirley can\nregister us for the upcoming seminar .\nthanks ,\nlance\n- - - - - - - - - - - - - - - - - - - - - - forwarded by lance cunningham / na / enron on 04 / 23 / 2001\n11 : 06 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nshirley crenshaw @ ect\n04 / 20 / 2001 01 : 34 pm\nto : lance cunningham / na / enron @ enron\ncc :\nsubject : re : 1 / 2 day seminar : the new texas electric market\ndo you have any information on them so i can make the reservations .\nname : ron mcnamara & jean ryall\nco . #\ncc #\netc .\nlance cunningham @ enron on 04 / 20 / 2001 01 : 30 : 56 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : re : 1 / 2 day seminar : the new texas electric market\nshirley ,\ni think that we will only have 1 or 2 people outside of research to attend .\nlance", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.405+0000", "entityId": 10559, "properties": {"text": "Subject: re : charm\nyou are welcome to have soneone on the charm team contact vince kaminski at\n713 - 853 - 3848 . thanks again .\n\" bertil olsson \" on 04 / 24 / 2001 01 : 40 : 06 pm\nto : james . l . bouillion @ enron . com\ncc : \" carl groth \" , \" kenneth risko \"\nsubject : re : charm\njim ,\nthanks for the feed - back . to assist in the further development of the\nproduct , are there any specific areas your group would like to see improved\n? based on comments made during our meeting , it sounded like your main\nconcern was whether or not charm would have the capacity to cover the very\ndifferent and complex risk areas that your company is involved in . would\nyou mind if someone from our charm group called you or mr . kaminski for\nsome specific comments ?\nregards ,\nbertil\njames . l . bouillion @ enron . com on 04 / 24 / 2001 01 : 35 : 09 pm\nto : bertil olsson / hou / us / wcg @ wcg\ncc :\nbcc :\nsubject : re : charm\nbertil , i again wish to thank you for the presentation on the charm\nproduct . the response from the group is that the model requires more work\nbefore enron could consider it as a commercial product . please keep me\nadvised as i assume that you will continue to develop the model .\njames l bouillion\n04 / 11 / 2001 06 : 50 am\nto : \" bertil olsson \" @ enron\ncc :\nsubject : re : charm ( document link : james l bouillion )\nno word yet . i will follow up with the attendees .\nthanks for taking thje time to make the presentation .\n\" bertil olsson \" on 04 / 10 / 2001 04 : 07 : 11 pm\nto : james . l . bouillion @ enron . com\ncc :\nsubject : re : charm\njim ,\nany feed - back on our meeting ? we certainly appreciated the opportunity and\nthe fact that the meeting was very interactive .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.410+0000", "entityId": 10560, "properties": {"text": "Subject: re : charm\njim ,\ni shall be glad to talk to them .\nvince\njames l bouillion\n04 / 24 / 2001 01 : 43 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : charm\nvince , would you be agreeable to such a phone call , or would you prefer to\ndesignate someone in your group ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by james l bouillion / hou / ect on 04 / 24 / 2001\n01 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" bertil olsson \" on 04 / 24 / 2001 01 : 40 : 06 pm\nto : james . l . bouillion @ enron . com\ncc : \" carl groth \" , \" kenneth risko \"\nsubject : re : charm\njim ,\nthanks for the feed - back . to assist in the further development of the\nproduct , are there any specific areas your group would like to see improved\n? based on comments made during our meeting , it sounded like your main\nconcern was whether or not charm would have the capacity to cover the very\ndifferent and complex risk areas that your company is involved in . would\nyou mind if someone from our charm group called you or mr . kaminski for\nsome specific comments ?\nregards ,\nbertil\njames . l . bouillion @ enron . com on 04 / 24 / 2001 01 : 35 : 09 pm\nto : bertil olsson / hou / us / wcg @ wcg\ncc :\nbcc :\nsubject : re : charm\nbertil , i again wish to thank you for the presentation on the charm\nproduct . the response from the group is that the model requires more work\nbefore enron could consider it as a commercial product . please keep me\nadvised as i assume that you will continue to develop the model .\njames l bouillion\n04 / 11 / 2001 06 : 50 am\nto : \" bertil olsson \" @ enron\ncc :\nsubject : re : charm ( document link : james l bouillion )\nno word yet . i will follow up with the attendees .\nthanks for taking thje time to make the presentation .\n\" bertil olsson \" on 04 / 10 / 2001 04 : 07 : 11 pm\nto : james . l . bouillion @ enron . com\ncc :\nsubject : re : charm\njim ,\nany feed - back on our meeting ? we certainly appreciated the opportunity and\nthe fact that the meeting was very interactive .\nregards ,\nbertil\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .\nthe information in this email and in any attachments is confidential and\nmay be privileged . if you are not the intended recipient , please destroy\nthis message , delete any copies held on your systems and notify the sender\nimmediately . you should not retain , copy or use this email for any\npurpose , nor disclose all or any part of its content to any other person .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.415+0000", "entityId": 10561, "properties": {"text": "Subject: enron : wefa luncheon may 1\nlloyd :\nvince asked me to forward this to you and invite you to the wefa presentation\non may lst at 11 : 00 am and then go to lunch with the group . the presentation\nwill be in 49 cl .\nplease let me know if you will be able to attend .\nthanks !\nshirley\n3 - 5290\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 24 / 2001\n03 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvasant shanbhogue\n04 / 11 / 2001 01 : 41 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : enron : wefa luncheon may 1\nshirley ,\ni would like to attend this presentation and go to the luncheon .\nthanks ,\nvasant\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vasant shanbhogue / hou / ect on 04 / 11 / 2001\n01 : 41 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 11 / 2001 12 : 36 pm\nto : lance cunningham / na / enron @ enron , vasant shanbhogue / hou / ect @ ect , alex\nhuang / corp / enron @ enron , sevil yaman / corp / enron @ enron\ncc : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : enron : wefa luncheon may 1\nwould you like to attend the presentation and join me for lunch\nwith wefa .\nany other suggestions re attendance .\nplease , let shirley know .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 11 / 2001\n12 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" peter mcnabb \" on 04 / 11 / 2001 11 : 52 : 47 am\nto :\ncc : \" kemm farney \"\nsubject : enron : wefa luncheon may 1\ndear vince\nthanks for your voicemail and delighted to have you confirm lunch on may 1 .\nkemm farney the head of wefa ' s electric power services will be travelling\nwith me this time . i expect there may be other enron colleagues that may\ncare to join us for lunch so don ' t hesitate to invite as you see fit . for\nreservations purposes , perhaps you arrange to let me know numbers .\nkemm would also be prepared to informally present our current power outlook\nto a larger group at 11 : 00 , if this would be of interest .\nas you know , these types of presentations are part of all your wefa energy\nretainer package . i will also plan to update you with respect to our current\nmulti client study schedule for the remainder of the year .\nregards , peter\npeter a . mcnabb\nvice president energy , north america\nwefa inc .\n2 bloor st . w .\ntoronto , canada\nm 4 w 3 rl\n416 - 513 - 0061 ex 227\n- 2001 energy brochure . doc\n- wefaenergy _ factsheet for energy scenarios 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.422+0000", "entityId": 10562, "properties": {"text": "Subject: fw : having iris visit london\nanita ,\nit seems that i am going to london next week . please see forwarded emails .\ncan you please assist me with my travel arrangements .\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , april 24 , 2001 5 : 25 pm\nto : shanbhogue , vasant ; mack , iris ; dhar , amitava ; kaminski , vince\nsubject : having iris visit london\nit ' s ok to delay the materials for duffie . he is very busy anyway and is not\ngoing to complain .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nscott salmon @ enron\n04 / 24 / 2001 01 : 23 pm\nto : amitava dhar / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate , ben\nparsons / lon / ect @ ect , george albanis / lon / ect @ ect , tomas valnek / lon / ect @ ect ,\nbryan seyfried / lon / ect @ ect\nsubject : having iris visit london\nhi amitava ,\nwe ' ve been doing some thinking and discussing here regarding the information\non our modelling process we ' ll provide to darryl duffie . we think it would\nbe extremely valuable for iris to come out to london for a couple weeks to\ngain a better understanding of the how the models integrate and are truly\nemployed . i think this would greatly enhance the \" product \" we ' ll send to\nduffie as well as giving iris a firm view of enron credit . in addition , she\ncould also explore some of the data sources such as amadeus and others that\nmight be helpful in private firm modelling . if we ' re extremely\nefficient / lucky in receiving data from d & b or experian , she might be able to\nbegin analysis on that for the private model efforts .\ni would recommend she plan on coming out for 2 weeks starting the week of 30\napr perhaps . depending on the progress with the private firm data sources ,\nit probably makes sense to send her back to houston to work on calibration\nsets with a likely return visit to london as required .\nplease let me know your thoughts .\ncheers ,\nscott", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.428+0000", "entityId": 10563, "properties": {"text": "Subject: re : fw : enron credit model docs for the comparative model study -\nto be sent to professor duffie @ stanford\niris ,\nwe can mention to ben that the papers will be edited and\ncombined into a coherent review .\nvince\nfrom : iris mack / enron @ enronxgate on 04 / 23 / 2001 01 : 49 pm\nto : vasant shanbhogue / enron @ enronxgate , vince j kaminski / hou / ect @ ect , amitava\ndhar / corp / enron @ enron\ncc :\nsubject : fw : enron credit model docs for the comparative model study - to be\nsent to professor duffie @ stanford\nhi ,\nattached is a bit of feedback from ben regarding the papers listed below .\ncan you help me out here ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : parsons , ben\nsent : monday , april 23 , 2001 3 : 05 am\nto : mack , iris\nsubject : re : enron credit model docs for the comparative model study - to be\nsent to professor duffie @ stanford\nhi iris\ni would not include paper 8 , as paper 7 supersedes it . also how much\nrewriting of these papers do you envisage ? some of them are not up - to - date ,\nor were written poorly and under time - pressure , so what do you envisage\neventually sending to duffie ?\nthanks\nben\nfrom : iris mack / enron @ enronxgate on 21 / 04 / 2001 22 : 30 cdt\nto : ben parsons / lon / ect @ ect\ncc : vasant\n6525 - 68 daao @ ex @ enronxgate , vince j kaminski / hou / ect @ ect , scott\nsalmon / eu / enron @ enron , bryan seyfried / lon / ect @ ect , nigel price / lon / ect @ ect ,\ntomas valnek / lon / ect @ ect , george albanis / lon / ect @ ect , markus\nfiala / lon / ect @ ect , craig chaney / enron @ enronxgate , kim\ndetiveaux / enron @ enronxgate , amitava dhar / corp / enron @ enron , tanya\ntamarchenko / hou / ect @ ect , mike mumford / lon / ect @ ect\nsubject : re : enron credit model docs for the comparative model study - to be\nsent to professor duffie @ stanford\nhi ben ,\ni think i have read all the papers that are to be used in the comparative\nmodel study to be sent to professor duffie at stanford .\nthese documents are all listed below . please let me know if i have omitted\nany ( however , don ' t get the impression that i am begging for more papers to\nread ) .\nnow i will try to transform my notes into a draft for professor duffie .\nthanks ,\niris\nlist of papers for comparative model study\n1 . actively managing corporate credit risk : new methodologies and\ninstruments for non - financial firms\nby r . buy , v . kaminski , k . pinnamaneni & v . shanbhogue\nchapter in a risk book entitled credit derivatives : application for risk\nmanagement , investment and portfolio optimisation\n2 . neural network placement model\nby george albanis , enroncredit ( 12 / 22 / 00 )\n3 . pricing parent companies and their subsidiaries : model description and\ndata requirements\nby ben parsons and tomas valnek , research group\n4 . a survey of contingent - claims approaches to risky debt valuation\nby j . bohn\nwww . kmv . com / products / privatefirm . html\n5 . the kmv edf credit measure and probabilities of default\nby m . sellers , o . vasicek & a . levinson\nwww . kmv . com / products / privatefirm . html\n6 . riskcalc for private companies : moody ' s default model\nmoody ' s investor service : global credit research\n7 . discussion document : asset swap model\nby ben parsons , research group ( 4 / 20 / 01 )\n8 . asset swap calculator : detailed functional implementation specification\n( version 1 . 0 )\nby ben parsons , research group\n9 . discussion document : live libor bootstrapping model\nby ben parsons , research group ( 4 / 20 / 01 )\n10 . the modelling behind the fair market curves : including country and\nindustry offsets\nby nigel m . price , enron credit trading group\n11 . pricing portfolios of default swaps : synthetic cbos - moody ' s versus\nthe full monte ( carlo )\nby nigel m . price , enron credit trading group\n12 . placement model vl . 0 : discussion document\nby ben parsons , research group , 2000\n13 . credit pricing methodology - enroncredit . com\nby ben parsons , research group\n14 . correlation : critical measure for calculating profit and loss on\nsynthetic credit portfolios\nby katherine siig , enron credit group\n15 . discussion document : var model for enron credit\nby ben parsons , research group , ( 1 / 3 / 01 )\n16 . methodology to implement approximate var model for the credit trading\nportfolio\nby kirstee hewitt , research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.432+0000", "entityId": 10564, "properties": {"text": "Subject: fw : having iris visit london\nanita ,\nit seems that i am going to london next week . please see forwarded emails .\ncan you please assist me with my travel arrangements .\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , april 24 , 2001 5 : 25 pm\nto : shanbhogue , vasant ; mack , iris ; dhar , amitava ; kaminski , vince\nsubject : having iris visit london\nit ' s ok to delay the materials for duffie . he is very busy anyway and is not going to complain .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001 05 : 23 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nscott salmon @ enron\n04 / 24 / 2001 01 : 23 pm\nto : amitava dhar / corp / enron @ enron\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate , ben parsons / lon / ect @ ect , george albanis / lon / ect @ ect , tomas valnek / lon / ect @ ect , bryan seyfried / lon / ect @ ect\nsubject : having iris visit london\nhi amitava ,\nwe ' ve been doing some thinking and discussing here regarding the information on our modelling process we ' ll provide to darryl duffie . we think it would be extremely valuable for iris to come out to london for a couple weeks to gain a better understanding of the how the models integrate and are truly employed . i think this would greatly enhance the \" product \" we ' ll send to duffie as well as giving iris a firm view of enron credit . in addition , she could also explore some of the data sources such as amadeus and others that might be helpful in private firm modelling . if we ' re extremely efficient / lucky in receiving data from d & b or experian , she might be able to begin analysis on that for the private model efforts .\ni would recommend she plan on coming out for 2 weeks starting the week of 30 apr perhaps . depending on the progress with the private firm data sources , it probably makes sense to send her back to houston to work on calibration sets with a likely return visit to london as required .\nplease let me know your thoughts .\ncheers ,\nscott\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.438+0000", "entityId": 10565, "properties": {"text": "Subject: re : fw : enron credit model docs for the comparative model study -\nto be sent to professor duffie @ stanford\niris ,\nwe can mention to ben that the papers will be edited and\ncombined into a coherent review .\nvince\nfrom : iris mack / enron @ enronxgate on 04 / 23 / 2001 01 : 49 pm\nto : vasant shanbhogue / enron @ enronxgate , vince j kaminski / hou / ect @ ect , amitava dhar / corp / enron @ enron\ncc :\nsubject : fw : enron credit model docs for the comparative model study - to be sent to professor duffie @ stanford\nhi ,\nattached is a bit of feedback from ben regarding the papers listed below .\ncan you help me out here ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : parsons , ben\nsent : monday , april 23 , 2001 3 : 05 am\nto : mack , iris\nsubject : re : enron credit model docs for the comparative model study - to be sent to professor duffie @ stanford\nhi iris\ni would not include paper 8 , as paper 7 supersedes it . also how much rewriting of these papers do you envisage ? some of them are not up - to - date , or were written poorly and under time - pressure , so what do you envisage eventually sending to duffie ?\nthanks\nben\nfrom : iris mack / enron @ enronxgate on 21 / 04 / 2001 22 : 30 cdt\nto : ben parsons / lon / ect @ ect\ncc : vasant shanbhogue @ / o = enron / ou = na / cn = recipients / cn = notesaddr / cn = e 6795104 - 40 ff 9820 - 86256525 - 68 daao @ ex @ enronxgate , vince j kaminski / hou / ect @ ect , scott salmon / eu / enron @ enron , bryan seyfried / lon / ect @ ect , nigel price / lon / ect @ ect , tomas valnek / lon / ect @ ect , george albanis / lon / ect @ ect , markus fiala / lon / ect @ ect , craig chaney / enron @ enronxgate , kim detiveaux / enron @ enronxgate , amitava dhar / corp / enron @ enron , tanya tamarchenko / hou / ect @ ect , mike mumford / lon / ect @ ect\nsubject : re : enron credit model docs for the comparative model study - to be sent to professor duffie @ stanford\nhi ben ,\ni think i have read all the papers that are to be used in the comparative model study to be sent to professor duffie at stanford .\nthese documents are all listed below . please let me know if i have omitted any ( however , don ' t get the impression that i am begging for more papers to read ) .\nnow i will try to transform my notes into a draft for professor duffie .\nthanks ,\niris\nlist of papers for comparative model study\n1 . actively managing corporate credit risk : new methodologies and instruments for non - financial firms\nby r . buy , v . kaminski , k . pinnamaneni & v . shanbhogue\nchapter in a risk book entitled credit derivatives : application for risk management , investment and portfolio optimisation\n2 . neural network placement model\nby george albanis , enroncredit ( 12 / 22 / 00 )\n3 . pricing parent companies and their subsidiaries : model description and data requirements\nby ben parsons and tomas valnek , research group\n4 . a survey of contingent - claims approaches to risky debt valuation\nby j . bohn\nwww . kmv . com / products / privatefirm . html\n5 . the kmv edf credit measure and probabilities of default\nby m . sellers , o . vasicek & a . levinson\nwww . kmv . com / products / privatefirm . html\n6 . riskcalc for private companies : moody ' s default model\nmoody ' s investor service : global credit research\n7 . discussion document : asset swap model\nby ben parsons , research group ( 4 / 20 / 01 )\n8 . asset swap calculator : detailed functional implementation specification ( version 1 . 0 )\nby ben parsons , research group\n9 . discussion document : live libor bootstrapping model\nby ben parsons , research group ( 4 / 20 / 01 )\n10 . the modelling behind the fair market curves : including country and industry offsets\nby nigel m . price , enron credit trading group\n11 . pricing portfolios of default swaps : synthetic cbos - moody ' s versus the full monte ( carlo )\nby nigel m . price , enron credit trading group\n12 . placement model vl . 0 : discussion document\nby ben parsons , research group , 2000\n13 . credit pricing methodology - enroncredit . com\nby ben parsons , research group\n14 . correlation : critical measure for calculating profit and loss on synthetic credit portfolios\nby katherine siig , enron credit group\n15 . discussion document : var model for enron credit\nby ben parsons , research group , ( 1 / 3 / 01 )\n16 . methodology to implement approximate var model for the credit trading portfolio\nby kirstee hewitt , research group", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.443+0000", "entityId": 10566, "properties": {"text": "Subject: london update\nvince ,\nmore fuel for our discussion with john sheriff today ,\nmike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 25 / 2001\n05 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp .\nfrom : stephen bennett @ enron 04 / 25 / 2001 04 : 05 am\nto : jose marquez / corp / enron @ enron , mike a roberts / hou / ect\ncc : tony hamilton / eu / enron @ enron\nsubject : softs ( ag ) support\nhi guys ,\ni thought i would quickly update you on a few meetings we ' ve had with the ag\nfolks here over the past 2 days . they are extremely interested in weather\nsupport and appear to be our most enthusiastic customer group to date . a\nsummary :\n1 ) they are interested in cocoa , coffee and sugar . specifically :\nbrazil : londrina , bauru , lavras ( all wmos available in accuweather )\nvietnam : kentum , dalat ( no data immediately evident )\nivory coast : man , gagnoa ( wmos in accuwx )\nindonesia : sumatra - kotubumi , sulawesi - dolo ( no data immediately evident )\n2 ) they are specifically interested in event spikes - extreme temperature ,\nprecipitation or wind . they are also interested in any trend information we\ncan devise . links between enso or other large scale oscillations that could\nhave long range effects . tony has already given their group a 101 course on\nenso and its impacts on these areas .\n3 ) they would eventually like daily am briefings - along with a daily product\nrelated to their market ( ie precip / temp graphs etc )\n4 ) they do not begin actually trading for another 6 to 8 weeks - so we have\nsome time to experiment with the type of support that fits them best .\ntony and i agree that we would like to brainstorm this a bit with you guys to\nsee what exactly can be produced daily - as efficiently as possible . we\nshould be able to add any lat / long points we want to the list of\ninternational cities streaming through from the mrf / avn / ecmwf from earthsat .\nthe problems here would be the models ' problems handling tropical weather\nalong with specific local effects - especially in indonesia .\nlet ' s talk about this at some point and get our thoughts together .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.447+0000", "entityId": 10567, "properties": {"text": "Subject: re : job posting\nhi vince ,\nthis posting is for my group . thanks for the referral .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , april 24 , 2001 5 : 31 pm\nto : goodpasture , john ; watson , kimberly ; ferrell , lee ; kaminski , vince\ncc : krishnarao , pinnamaneni\nsubject : job posting\ni am teaching a class at rice and one of my very bright students sent her\nresume\nin response to this posting . do you know who posted this job ?\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" helen demianenko \" on 04 / 24 / 2001 02 : 11 : 05 pm\nplease respond to\nto :\ncc :\nsubject : job posting\ndear vince ,\nthanks for talking to me this morning about the sr . risk analyst position .\nhere is where you can find the job description for that position :\nalso , i have cut and pasted it down below , just in case .\ni appreciate your assistance in this matter and will start working on my\ncover letter right away .\ni would also like to talk to somebody to get a better feel for the position\n( is this really an mba level position and how much of the in - depth learning\nopportunities for the derivatives market does it entail ? )\nsincerely ,\nhelen demianenko\np . s . i have attached my resume ( one more time ) .\nsr risk analyst\nessential functions : primary accountability for managing the ets risk book\nstructure and processes from a pipeline ( front office ) perspective . work\nwithin current nng and tw marketing organizations to effectively integrate\nrisk books into daily marketing and structured product activities . provide\nfeedback to management regarding overall and specific risk positions .\nprovide support for consistent and accurate deals entry / reporting for stand\nalone risk management system . create ad - hoc reports to assist management in\nrisk analysis . responsible for managing and providing enhancements to the\ncapacity books : ? maintain functionality and provide leadership for new\nfunctionality from a users perspective . provide support and direction for\nintegration of capacity books and revenue management project . support revenue\nmanagement team\nessential requirements : ba / bs in finance or accounting ( mba preferred ) .\nminimum of two years financial instruments experience . excellent\nquantitative / analytic and systems skills . knowledge of commodity risk book\nconcepts . understanding of physical natural gas market , interstate\ntransportation and financial derivatives . ability to interface with\nstructuring / marketing groups in order to define business requirements .\nability to provide leadership for business and system processes . excellent\ncommunication skills with an ability to communicate across organization with\nvaried skill sets and ideas . must be self - motivated with a high level of\nenergy\npreferred skills : na .\nspecial characteristics : this job functions in a team - oriented , fast - paced\nenvironment with multiple concurrent assignments and constantly changing\npriorities .\ncontact : responses will be accepted through may 3 , 2001 . respond to enron\ncorp . , human resources 235 , p o box 3330 , omaha , ne 68103 - 0330 or e - mail :\ndea . crum @ enron . com as a . doc or . txt attachment . please include this\nrequisition number .\njob id 0000108729\ndepartment risk management & reporti\ncompany enron transportation services\nenron transportation services\nlocation houston , tx\ntype\nposting date 19 - apr - 01\n- helen _ d _ resume . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.453+0000", "entityId": 10568, "properties": {"text": "Subject: job posting\ni am teaching a class at rice and one of my very bright students sent her\nresume\nin response to this posting . do you know who posted this job ?\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" helen demianenko \" on 04 / 24 / 2001 02 : 11 : 05 pm\nplease respond to\nto :\ncc :\nsubject : job posting\ndear vince ,\nthanks for talking to me this morning about the sr . risk analyst position .\nhere is where you can find the job description for that position :\nalso , i have cut and pasted it down below , just in case .\ni appreciate your assistance in this matter and will start working on my\ncover letter right away .\ni would also like to talk to somebody to get a better feel for the position\n( is this really an mba level position and how much of the in - depth learning\nopportunities for the derivatives market does it entail ? )\nsincerely ,\nhelen demianenko\np . s . i have attached my resume ( one more time ) .\nsr risk analyst\nessential functions : primary accountability for managing the ets risk book\nstructure and processes from a pipeline ( front office ) perspective . work\nwithin current nng and tw marketing organizations to effectively integrate\nrisk books into daily marketing and structured product activities . provide\nfeedback to management regarding overall and specific risk positions .\nprovide support for consistent and accurate deals entry / reporting for stand\nalone risk management system . create ad - hoc reports to assist management in\nrisk analysis . responsible for managing and providing enhancements to the\ncapacity books : ? maintain functionality and provide leadership for new\nfunctionality from a users perspective . provide support and direction for\nintegration of capacity books and revenue management project . support revenue\nmanagement team\nessential requirements : ba / bs in finance or accounting ( mba preferred ) .\nminimum of two years financial instruments experience . excellent\nquantitative / analytic and systems skills . knowledge of commodity risk book\nconcepts . understanding of physical natural gas market , interstate\ntransportation and financial derivatives . ability to interface with\nstructuring / marketing groups in order to define business requirements .\nability to provide leadership for business and system processes . excellent\ncommunication skills with an ability to communicate across organization with\nvaried skill sets and ideas . must be self - motivated with a high level of\nenergy\npreferred skills : na .\nspecial characteristics : this job functions in a team - oriented , fast - paced\nenvironment with multiple concurrent assignments and constantly changing\npriorities .\ncontact : responses will be accepted through may 3 , 2001 . respond to enron\ncorp . , human resources 235 , p o box 3330 , omaha , ne 68103 - 0330 or e - mail :\ndea . crum @ enron . com as a . doc or . txt attachment . please include this\nrequisition number .\njob id 0000108729\ndepartment risk management & reporti\ncompany enron transportation services\nenron transportation services\nlocation houston , tx\ntype\nposting date 19 - apr - 01\n- helen _ d _ resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.458+0000", "entityId": 10569, "properties": {"text": "Subject: re : from a previous summer intern\ndear giuseppe :\nunfortunately , i am no longer with the associate and analyst recruiting\ndepartment and will be unable to assist you directly . please contact tracy\nwarner , who is now responsible for recruiting . she will be able to assist\nyou directly . tracy can be contacted at tracy . warner @ enron . com . i would\nalso recommend having vince kaminski contact her as well to ensure that all\ncommunications are in order .\nbest regards ,\nceleste roberts\ngiuseppe andrea paleologo @ stanford . edu on 04 / 20 / 2001\n01 : 53 : 39 pm\nplease respond to gappy @ stanford . edu\nsent by : gappy @ stanford . edu\nto : celeste roberts\ncc :\nsubject : from a previous summer intern\nceleste , my name is giuseppe a . paleologo and you amy remember me : i was\na summer intern last summer in the research group , and attended the\nhiring event this year at stanford . in that occasion i had an informal\noffer from vince kaminski , and the assurance that i would receive a\nwritten one in the following two weeks , but since then i have not\nreceived any letter from enron . i would like to know if the offer is\nstill valid , and if it has been sent . i am asking because i am in the\nprocess of evaluating my offers , and would like to wait for enron before\ni make my final decision .\nthanks in advance ,\ngiuseppe paleologo\n- -\ngiuseppe a . paleologo\nemail : gappy @ stanford . edu\noffice phone : ( 650 ) 725 - 0541", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.463+0000", "entityId": 10570, "properties": {"text": "Subject: re : job posting\nhi vince ,\nthis posting is for my group . thanks for the referral .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , april 24 , 2001 5 : 31 pm\nto : goodpasture , john ; watson , kimberly ; ferrell , lee ; kaminski , vince\ncc : krishnarao , pinnamaneni\nsubject : job posting\ni am teaching a class at rice and one of my very bright students sent her resume\nin response to this posting . do you know who posted this job ?\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001 05 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" helen demianenko \" on 04 / 24 / 2001 02 : 11 : 05 pm\nplease respond to\nto :\ncc :\nsubject : job posting\ndear vince ,\nthanks for talking to me this morning about the sr . risk analyst position .\nhere is where you can find the job description for that position :\nalso , i have cut and pasted it down below , just in case .\ni appreciate your assistance in this matter and will start working on my\ncover letter right away .\ni would also like to talk to somebody to get a better feel for the position\n( is this really an mba level position and how much of the in - depth learning\nopportunities for the derivatives market does it entail ? )\nsincerely ,\nhelen demianenko\np . s . i have attached my resume ( one more time ) .\nsr risk analyst\nessential functions : primary accountability for managing the ets risk book\nstructure and processes from a pipeline ( front office ) perspective . work\nwithin current nng and tw marketing organizations to effectively integrate\nrisk books into daily marketing and structured product activities . provide\nfeedback to management regarding overall and specific risk positions .\nprovide support for consistent and accurate deals entry / reporting for stand\nalone risk management system . create ad - hoc reports to assist management in\nrisk analysis . responsible for managing and providing enhancements to the\ncapacity books : ? maintain functionality and provide leadership for new\nfunctionality from a users perspective . provide support and direction for\nintegration of capacity books and revenue management project . support revenue\nmanagement team\nessential requirements : ba / bs in finance or accounting ( mba preferred ) .\nminimum of two years financial instruments experience . excellent\nquantitative / analytic and systems skills . knowledge of commodity risk book\nconcepts . understanding of physical natural gas market , interstate\ntransportation and financial derivatives . ability to interface with\nstructuring / marketing groups in order to define business requirements .\nability to provide leadership for business and system processes . excellent\ncommunication skills with an ability to communicate across organization with\nvaried skill sets and ideas . must be self - motivated with a high level of\nenergy\npreferred skills : na .\nspecial characteristics : this job functions in a team - oriented , fast - paced\nenvironment with multiple concurrent assignments and constantly changing\npriorities .\ncontact : responses will be accepted through may 3 , 2001 . respond to enron\ncorp . , human resources 235 , p o box 3330 , omaha , ne 68103 - 0330 or e - mail :\ndea . crum @ enron . com as a . doc or . txt attachment . please include this\nrequisition number .\njob id 0000108729\ndepartment risk management & reporti\ncompany enron transportation services\nenron transportation services\nlocation houston , tx\ntype\nposting date 19 - apr - 01\n- helen _ d _ resume . doc >\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.467+0000", "entityId": 10571, "properties": {"text": "Subject: re : from a previous summer intern\ndear giuseppe :\nunfortunately , i am no longer with the associate and analyst recruiting department and will be unable to assist you directly . please contact tracy warner , who is now responsible for recruiting . she will be able to assist you directly . tracy can be contacted at tracy . warner @ enron . com . i would also recommend having vince kaminski contact her as well to ensure that all communications are in order .\nbest regards ,\nceleste roberts\ngiuseppe andrea paleologo @ stanford . edu on 04 / 20 / 2001 01 : 53 : 39 pm\nplease respond to gappy @ stanford . edu\nsent by : gappy @ stanford . edu\nto : celeste roberts\ncc :\nsubject : from a previous summer intern\nceleste , my name is giuseppe a . paleologo and you amy remember me : i was\na summer intern last summer in the research group , and attended the\nhiring event this year at stanford . in that occasion i had an informal\noffer from vince kaminski , and the assurance that i would receive a\nwritten one in the following two weeks , but since then i have not\nreceived any letter from enron . i would like to know if the offer is\nstill valid , and if it has been sent . i am asking because i am in the\nprocess of evaluating my offers , and would like to wait for enron before\ni make my final decision .\nthanks in advance ,\ngiuseppe paleologo\n- -\ngiuseppe a . paleologo\nemail : gappy @ stanford . edu\noffice phone : ( 650 ) 725 - 0541", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.473+0000", "entityId": 10572, "properties": {"text": "Subject: re : rice / enron speakers for fall 2001 and spring 2002\ndavid kendrick from the university of texas may be good .\nmartin\nvince j kaminski\n04 / 24 / 2001 05 : 11 pm\nto : stinson gibner / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate , rakesh\nbharati / na / enron @ enron , pinnamaneni krishnarao / hou / ect @ ect , zimin\nlu / hou / ect @ ect , iris mack / enron @ enronxgate , martin lin / hou / ect @ ect , lance\ncunningham / na / enron @ enron , vince j kaminski / hou / ect @ ect\ncc : wangfa @ rice . edu\nsubject : rice / enron speakers for fall 2001 and spring 2002\nany recommendations . please , let me know asap .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalbert wang on 04 / 23 / 2001 12 : 37 : 55 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : rice / enron speakers for fall 2001 and spring 2002\nhi , vince :\nwe are considering a preliminary list of speakers for rice / enron seminar\nseries in finance for fall 2001 and spring 2002 . ? do you have any persons in\nmind that you and your group want to include in the list ? ? finance faculty\nwill meet to finalize the list later .\nthanks ,\nalbert\np . s . : is ronnie chahal still around ? ? she is currently in my enron\ndistribution list with email address : rchahal @ ess . enron . com . ? i have received\nan error message indicating a failure of delivering email to her address .\nfu - kuo albert wang\nassistant professor\njones graduate school of management - - ms 531 ?\nrice university ?\n6100 main street ?\nhouston , tx 77005 ?\nphone : 713 - 348 - 5404 ?\nfax : ? ? ? ? 713 - 348 - 5251\nemail : wangfa @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.479+0000", "entityId": 10573, "properties": {"text": "Subject: re : rice / enron speakers for fall 2001 and spring 2002\ndavid kendrick from the university of texas may be good .\nmartin\nvince j kaminski\n04 / 24 / 2001 05 : 11 pm\nto : stinson gibner / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate , rakesh bharati / na / enron @ enron , pinnamaneni krishnarao / hou / ect @ ect , zimin lu / hou / ect @ ect , iris mack / enron @ enronxgate , martin lin / hou / ect @ ect , lance cunningham / na / enron @ enron , vince j kaminski / hou / ect @ ect\ncc : wangfa @ rice . edu\nsubject : rice / enron speakers for fall 2001 and spring 2002\nany recommendations . please , let me know asap .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001 05 : 09 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nalbert wang on 04 / 23 / 2001 12 : 37 : 55 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : rice / enron speakers for fall 2001 and spring 2002\nhi , vince :\nwe are considering a preliminary list of speakers for rice / enron seminar series in finance for fall 2001 and spring 2002 . do you have any persons in mind that you and your group want to include in the list ? finance faculty will meet to finalize the list later .\nthanks ,\nalbert\np . s . : is ronnie chahal still around ? she is currently in my enron distribution list with email address : rchahal @ ess . enron . com . i have received an error message indicating a failure of delivering email to her address .\nfu - kuo albert wang\nassistant professor\njones graduate school of management - - ms 531\nrice university\n6100 main street\nhouston , tx 77005\nphone : 713 - 348 - 5404\nfax : 713 - 348 - 5251\nemail : wangfa @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ wangfa /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.484+0000", "entityId": 10574, "properties": {"text": "Subject: dr . michelle foss - energy institute\nchristie ,\ni am forwarding you a message i have received from the university of houston .\ncan you help them ? we have a very good relationship with the uoh .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naisha jamal on 04 / 23 / 2001 03 : 15 : 29 pm\nplease respond to aisha @ uh . edu\nto : vkamins @ ect . enron . com\ncc : mmfoss @ uh . edu\nsubject : dr . michelle foss - energy institute\ndear mr . kaminski ,\ni am writing to ask a favor for dr . michelle foss . as you know we will\nbe running our \" new era \" program from may 14 - may 25 th . dr . foss was\nwondering if on may 22 nd ( between 1 : 30 pm and 4 : 00 pm ) , we would be able to\nbring\nour participants for a tour of your trading floor . at this time we will have\n30 - 40 people , and since only 10 people maximum should really be on a\ntrading floor we need to have 4 companies among which to divide our\nparticipants . at this time , we have a floor from coral energy , and are\nworking with duke ,\nand i will be contacting mr . paul roberts to arrange for the reliant energy\ntrading floor . i was hoping very much that you would be able to direct\nme to the right person to contact to arrange this tour . will this be a\npossiblity ? i really appreciate your help very much . thank you !\nbest regards ,\naisha jamal\nenergy institute\n713 - 743 - 4634", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.492+0000", "entityId": 10575, "properties": {"text": "Subject: re : dr . michelle foss - energy institute\naisha ,\nthe person to contact is christie patrick who is in charge our university\nrelations\noffice . her e - mail address is : christie _ patrick @ enron . com .\ni shall forward your message to ms . patrick .\nvince\naisha jamal on 04 / 23 / 2001 03 : 15 : 29 pm\nplease respond to aisha @ uh . edu\nto : vkamins @ ect . enron . com\ncc : mmfoss @ uh . edu\nsubject : dr . michelle foss - energy institute\ndear mr . kaminski ,\ni am writing to ask a favor for dr . michelle foss . as you know we will\nbe running our \" new era \" program from may 14 - may 25 th . dr . foss was\nwondering if on may 22 nd ( between 1 : 30 pm and 4 : 00 pm ) , we would be able to\nbring\nour participants for a tour of your trading floor . at this time we will have\n30 - 40 people , and since only 10 people maximum should really be on a\ntrading floor we need to have 4 companies among which to divide our\nparticipants . at this time , we have a floor from coral energy , and are\nworking with duke ,\nand i will be contacting mr . paul roberts to arrange for the reliant energy\ntrading floor . i was hoping very much that you would be able to direct\nme to the right person to contact to arrange this tour . will this be a\npossiblity ? i really appreciate your help very much . thank you !\nbest regards ,\naisha jamal\nenergy institute\n713 - 743 - 4634", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.498+0000", "entityId": 10576, "properties": {"text": "Subject: wharton risk center advisory committee meeting june 14 , 2001\ndear vince ,\nattached please find a prelimary agenda for the wharton risk management and\ndecision process center advisory committee meeting taking place june 14 ,\n2001 . howard kunreuther and paul kleindorfer co - directors for the center\nwould like to extend to you the opportunity to serve as an advisory committee\nmember .\nif you could kindly let me know your attendance status and if you are\ninterested in serving as soon as possible i would be very grateful . we are\npresently working on the spring edition of the center ' s newsletter which\nalways prints a list of members . we would like to add your name , title and\ncompany .\nthank you ,\ntheresa\n>\n~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\ntheresa convery\nadministrative assistant\nrisk and decision processes center\nthe wharton school of the university of pennsylvania\n( 215 ) 898 - 5688 / fax : ( 215 ) 573 - 2130\ntconvery @ wharton . upenn . edu\n- agenda - draft . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.504+0000", "entityId": 10577, "properties": {"text": "Subject: dear vince :\nare you available to attend our next advisory meeting on june 14 , 2001 ?\nhere is the draft agenda :\n>\nplease let me know .\nkate fang\n215 - 898 - 1212\nwharton risk management and decision processes center\n- agenda - draft . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.509+0000", "entityId": 10578, "properties": {"text": "Subject: re : evaluations - enron - reminder\n> please pass this along to others who may have worked with the students .\n>\n> to : tiger hosts\n>\n> from : field application project office\n> the wharton school\n> university of pennsylvania\n>\n> re : tiger team evaluations\n>\n> thank you for hosting the tiger team project , field application project\n> 2001 . this opportunity provided the student team a worthwhile experience\n> to apply newly acquired skills to a real world issue facing your company .\n> your dedication and support of the project contributed greatly to its\n> success .\n>\n> hopefully , by now you have had the opportunity to review the final\n> reports . please take a moment to complete the host evaluation form\n> available at : ( use internet\n> explorer )\n>\n> username : tiger\n> password : fap 2001 ( no space between )\n> ( note : case sensitive , please use lower case )\n> deadline for acceptance : wednesday , april 25 , 2001\n>\n> your feedback is important to us . it is taken into consideration when\n> calculating student grades and when implementing changes that will impact\n> and enhance the program in the future . also , in an effort to insure the\n> return of meaningful and contributing host companies , we ask that you\n> indicate your interest in returning as a host next year and the fap office\n> will contact you in september 2001 .\n>\n> thank you again for your support of the wharton school and participation\n> in the field application project this year . we look forward to working\n> with you in the future .\n>\n> if you have any questions , please contact the fap office at ( 215 ) 573 - 8394\n> or email : fap @ management . wharton . upenn . edu\n>\n>\n> sincerely ,\n> donna piazze\n> program director\n> field application project", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.513+0000", "entityId": 10579, "properties": {"text": "Subject: re : ut short course travel arrangements\nmartin ,\ni can join the car pool .\nvince\nfrom : martin lin on 04 / 25 / 2001 10 : 59 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate , sandeep\nkohli / enron _ development @ enron _ development , lance cunningham / na / enron @ enron ,\nsevil yaman / corp / enron @ enron\ncc :\nsubject : ut short course travel arrangements\nif the schedule works , perhaps a carpool is best for attending the course ,\ngiven the number of us going . vasant has offered to drive . dependiing on\ndriving speed and traffic , leaving houston by 9 : 30 am should give sufficient\ntime to make the lpm class , including some time for lunch .\nplease let me know if you are interested in the carpool or have alternate\nplans or suggestions .\nthanks ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.519+0000", "entityId": 10580, "properties": {"text": "Subject: re : ut short course travel arrangements\nmartin ,\ni can join the car pool .\nvince\nfrom : martin lin on 04 / 25 / 2001 10 : 59 am\nto : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate , sandeep kohli / enron _ development @ enron _ development , lance cunningham / na / enron @ enron , sevil yaman / corp / enron @ enron\ncc :\nsubject : ut short course travel arrangements\nif the schedule works , perhaps a carpool is best for attending the course , given the number of us going . vasant has offered to drive . dependiing on driving speed and traffic , leaving houston by 9 : 30 am should give sufficient time to make the lpm class , including some time for lunch .\nplease let me know if you are interested in the carpool or have alternate plans or suggestions .\nthanks ,\nmartin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.529+0000", "entityId": 10581, "properties": {"text": "Subject: information you requested from economic capital iconference\nthank you for requesting information about our products during the registration\nfor the recent erisk iconference on economic capital .\nplease click on the link below to read an overview of our offerings in the\nareas of analytics , consulting , and risk transfer :\nnote : if you can ' t open this pdf , you need to upgrade to the new version of adobe acrobat reader at\nadditional materials :\nread a case study about implementation of our erisk analytics at cobank :\nread a case study about implementation of p & c raroc at the st . paul companies :\nif you would like to speak directly with an erisk representative ,\nplease contact angela isaac at aisaac @ erisk . com regarding consulting\nand risk transfer projects and murray nash at mnash @ erisk . com to learn\nmore about our erisk analytics product .\nregards ,\nerisk client services\nthis is a one - time mailing only . to subscribe to our regular email\nnewsletter , please register at\nif you received this mailing in error , please email info @ erisk . com with\n\" unsubscribe \" in the subject line .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.536+0000", "entityId": 10582, "properties": {"text": "Subject: information you requested from economic capital iconference\nthank you for requesting information about our products during the\nregistration\nfor the recent erisk iconference on economic capital .\nplease click on the link below to read an overview of our offerings in the\nareas of analytics , consulting , and risk transfer :\nnote : if you can ' t open this pdf , you need to upgrade to the new version of\nadobe acrobat reader at\nadditional materials :\nread a case study about implementation of our erisk analytics at cobank :\nread a case study about implementation of p & c raroc at the st . paul companies :\nif you would like to speak directly with an erisk representative ,\nplease contact angela isaac at aisaac @ erisk . com regarding consulting\nand risk transfer projects and murray nash at mnash @ erisk . com to learn\nmore about our erisk analytics product .\nregards ,\nerisk client services\nthis is a one - time mailing only . to subscribe to our regular email\nnewsletter , please register at\nif you received this mailing in error , please email info @ erisk . com with\n\" unsubscribe \" in the subject line .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.542+0000", "entityId": 10583, "properties": {"text": "Subject: alliance info alert\ndear generation / power marketing executive :\nthe following is this week ' s alliance express newsletter , and a special\nannouncement regarding a proposed action by the financial accounting\nstandards board ( fasb ) .\nfasb 133\nfasb is considering an exception to statement of financial accounting\nstandards ( sfas ) no . 133 that will exempt energy companies from the\nrequirement to account for capacity contracts as derivatives . a vote against\nthe exception would result in a significant increase in earnings volatility ,\nand raises other important concerns for energy suppliers . ( attached is a\nsummary of this issue . ) the board is expected to vote on this issue during\nmay 2001 . eei will be taking steps to appraise fasb of our concerns . if\nyou , or company cfo would like more information about this effort , please\ncontact richard mcmahon , executive director of the alliance of energy\nsuppliers , at rmcmahon @ eei . org , or at 202 - 508 - 5571 .\nalliance of energy suppliers express \u0002 \u0005 april 25 ,\n2001\ninside washington\nfederal affairs\n* * * bill repealing puhca is approved by senate committee * * *\nthe senate banking committee today approved s 206 , a bill that repeals the\npublic utility holding company act of 1935 . the bill would repeal puhca and\ntransfer oversight of public utility holding companies from the securities\nand exchange commission to the federal energy regulatory commission and\nappropriate state agencies .\ns . 206 was approved with two amendments . offered by sen . mike enzi ( r - wy ) ,\nthe first amendment would establish the electric energy market competition\ntask force to study competition in the wholesale and retail market for\nelectric energy in the united states . the task force would be made up of\nrepresentatives of ferc , the department of justice and the federal trade\ncommission , as well as non - voting representatives from the department of\nagriculture and the securities and exchange commission . the amendment also\ncontained a provision , co - sponsored by sen . paul sarbanes ( d - md ) , that would\npreserve ferc ' s authority to require that energy rates are reasonable and do\nnot include the pass - through of holding company costs that are unrelated to\nenergy .\nanother amendment , offered by sen . jon corzine ( d - nj ) , initiated a study by\nthe general accounting office of the success of federal and state governments\nin preventing anticompetitive practices by public utility holding companies\nand in promoting competition and efficient energy markets .\n* * * institute \u0002 \u0007 s tax agreement with public power again introduced on hill * * *\nthe tax agreement eei reached with the american public power association\n( appa ) and the large public power council ( lppc ) again has been introduced in\nthe house . the bill ( hr 1459 ) contains the same provisions as were in a\nmeasure ( hr 4971 ) , with technical corrections , introduced during the 106 th\ncongress . hr 1459 was introduced by rep . j . d . hayworth ( r - az ) and nine\noriginal co - sponsors from the ways and means committee .\nhr 1459 contains four key provisions with tax code changes : 1 ) the tax - free\nsale or spin - off of transmission assets into an rto is allowed , 2 ) nuclear\ndecommissioning laws are adapted to a competitive market by allowing\ndeductions to a trust fund no longer subject to cost - of service ratemaking ,\n3 ) the contributions in aid of construction ( ciac ) tax on interconnections to\ntransmission and distribution facilities is eliminated , and 4 ) private use\ntax rules are changed to permit open access to transmission and distribution\nfacilities .\nthe measure was referred to the house ways and means committee , and eei has\nurged congress to act without delay in moving it forward . enactment will\nhelp encourage a vigorous but fair competitive environment , the institute\nnoted . the same legislation has been incorporated into s 389 , senate energy\ncommittee chairman frank murkowski ' s ( r - ak ) energy security bill , and\nstand - alone legislation could also be introduced . hearings are expected to\nbe held in both the senate finance and house ways and means committees ,\nprobably after consideration of president bush ' s individual tax proposal .\nadministration / ferc\n* * * white house seeks $ 2 trillion budget in fiscal year 2002 * * *\npresident bush last week transmitted a $ 2 trillion fiscal year 2002 budget\nrequest to capitol hill . the administration noted that its proposal\n* moderates recent explosive growth in discretionary spending to four percent\nin 2002 , * an increase of $ 26 billion over the preceding fiscal year . the\nbudget bid contains a $ 231 billion total surplus in 2002 , and projects a $ 5 . 6\ntrillion surplus over the next ten years .\nin the energy area , the administration noted the federal government \u0002 \u0007 s\n* longstanding and evolving role * in the sector , pointing out that most\nfederal energy programs and agencies have no state or private counterparts .\nit proposed about $ 2 . 8 billion in discretionary spending for energy programs ,\nand about $ 2 . 1 billion in tax benefits , * mainly to encourage development of\ntraditional and alternative energy sources . * doe \u0002 \u0007 s budget request was $ 19 . 2\nbillion , including $ 2 . 3 billion for energy resources programs . this later\nfigure represents a decrease of $ 196 million , or 7 . 9 percent , from fiscal\nyear 2001 .\nin the environmental sector , the administration sought some $ 7 . 3 billion in\ndiscretionary funding for epa , including a $ 3 . 7 billion operating program\nfocused on implementation of most federal pollution control laws .\n* * * success of restructuring tied to energy strategy , ferc \u0002 \u0007 s massey asserts * * *\nelectric restructuring may be in jeopardy , and its success * is in the hands\nof regulators and policymakers , * ferc commissioner william massey has\nasserted . speaking at a recent national governors association policy forum\nin philadelphia , commissioner massey urged officials to pay attention to the\nkey elements of a national energy strategy .\nfirst , he specified , there is a need for an adequate supply of the energy\ncommodity . turning to a second element , commissioner massey told forum\nattendees that * all the supply in the world won \u0002 \u0007 t help unless it can be\ndelivered over an adequate , efficient , non - discriminatory network . *\ncommissioner massey identified market structure as the third essential\nelement of a national energy strategy , while citing an inherent difficulty :\nthat * good structure cannot be easily parsed between wholesale and retail\njurisdictions . * accordingly , he said , ferc and the states must work together\non market structure .\nthe final element of a successful energy strategy , the commissioner\nspecified , is the need for aggressive ferc intervention when markets fail to\ndo their job . * if the states cannot depend on the wholesale market regulator\nto ensure reasonable prices for consumers , * he cautioned , they * will surely\nthink twice before heading down the restructuring path . *\nnew generation\n* * * dynegy to build second plant in kentucky * * *\ndynegy has announced plans to construct a new 330 megawatt plant adjacent to\nthe riverside generating project in lawrence county , kentucky . dynegy will\nsell the power generated at the plant in the wholesale market . commercial\noperation is expected to begin first quarter of 2002 .\n* * * ppl to expand generation capacity * * *\nppl corporation this week said it would build a 540 megawatt power plant near\nchicago and would increase the capacity of its susquehanna nuclear plant by\n100 megawatts . ceo william hecht said the illinois plant is expected to be\nin service by the summer of 2002 .\n* * * constellation energy group announces eight new plants * * *\nconstellation energy group this week announced that the company is scheduled\nto bring four peaking power plants on line this summer . additionally , four\nlarger power plants are scheduled to enter service in the following two\nsummers . the four peaking plants are located in illinois , pennsylvania ,\nvirginia and west virginia . the larger power plants are under construction\nin california , florida , illinois , and texas .\n* we \u0002 \u0007 re building in these seven states because they serve regions where\nwholesale electricity is needed and where we can provide energy to support\nour national power marketing business , * said constellation energy group\nchairman and ceo christian poindexter .\n* * * california energy commission approves construction of otay mesa generating\nplant * * *\npg & e corporation \u0002 \u0007 s national energy group ( neg ) last week announced that the\ncalifornia energy commission ( cec ) has approved construction of the otay mesa\ngenerating plant in san diego county , which the neg has developed . the 500\nmegawatt project will produce enough electricity to power about 1 , 000 homes .\nafter the development process is completed , calpine corporation will assume\nownership of the project and will construct and operate the plant . neg will\ncontract for up to half the plants output .\nenergy data\n* * * weekly electric output ( week 15 ) * * *\nelectric output reached 63 , 528 gwh for the week ending april 14 ( week 15 ) ,\nwith the highest increase over 2000 levels in the south central states , which\nboth had a 12 . 6 percent increase over 2000 for week 15 . year - to - date , the\nrocky mountain region experienced the greatest increase in output ( 7 . 6\npercent ) over 2000 . for more information , email alliance @ eei . org .\nthe alliance express is a free news service sponsored by the alliance of\nenergy suppliers . this document can be redistributed . please send\nquestions , comments , or requests to alliance @ eei . org , or telephone\n202 / 508 - 5680 .\nnancy tarr\nmanager , business development\neei alliance of energy suppliers\n701 pennsylvania ave . , n . w .\nwashington , d . c . 20004\ntelephone : 202 - 508 - 5680\nfax : 202 - 508 - 5600\nwww . eei . org / alliance\nntarr @ eei . org\n- text . htm\n- fasb - the impact on energy companies of treatment of capacity c", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.547+0000", "entityId": 10584, "properties": {"text": "Subject: london update\nvince ,\nmore fuel for our discussion with john sheriff today ,\nmike\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 04 / 25 / 2001 05 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nenron north america corp . from : stephen bennett @ enron 04 / 25 / 2001 04 : 05 am\nto : jose marquez / corp / enron @ enron , mike a roberts / hou / ect\ncc : tony hamilton / eu / enron @ enron\nsubject : softs ( ag ) support\nhi guys ,\ni thought i would quickly update you on a few meetings we ' ve had with the ag folks here over the past 2 days . they are extremely interested in weather support and appear to be our most enthusiastic customer group to date . a summary :\n1 ) they are interested in cocoa , coffee and sugar . specifically :\nbrazil : londrina , bauru , lavras ( all wmos available in accuweather )\nvietnam : kentum , dalat ( no data immediately evident )\nivory coast : man , gagnoa ( wmos in accuwx )\nindonesia : sumatra - kotubumi , sulawesi - dolo ( no data immediately evident )\n2 ) they are specifically interested in event spikes - extreme temperature , precipitation or wind . they are also interested in any trend information we can devise . links between enso or other large scale oscillations that could have long range effects . tony has already given their group a 101 course on enso and its impacts on these areas .\n3 ) they would eventually like daily am briefings - along with a daily product related to their market ( ie precip / temp graphs etc )\n4 ) they do not begin actually trading for another 6 to 8 weeks - so we have some time to experiment with the type of support that fits them best .\ntony and i agree that we would like to brainstorm this a bit with you guys to see what exactly can be produced daily - as efficiently as possible . we should be able to add any lat / long points we want to the list of international cities streaming through from the mrf / avn / ecmwf from earthsat . the problems here would be the models ' problems handling tropical weather along with specific local effects - especially in indonesia .\nlet ' s talk about this at some point and get our thoughts together .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.553+0000", "entityId": 10585, "properties": {"text": "Subject: interview - credit derivatives\n? ? ? ? ? ? ?\n?\n? ? ? ? ? ? dear vince :\n?\n? ? ? ? ? ? thank you for the invitation yesterday . it was a pleasure to meet\nyou all and learn more about the group , it ' s structure and to some extent\nwhat you are involved in . please extend my thanks to all of them .\n?\n? ? ? ? ? ? i am particularly interested in the credit swap trading platform\nthat enron has recently started . such a platform will provide unique\nvisibility into the credit markets . as you suggested i tried to learn more\nabout this from tanya . ? i would like to learn more and if possible meet other\npeople more directly linked to the effort .\n?\n? ? ? ? ? ? just simple instruments like credit swaps will require serious\nmodelling capability for the pricing and the hedging of these apparently\nsimple intruments . the market visibility i mention above can be explored\nthrough credit derivatives trading successfully if enron possesses superior\n( vis a vis morgan stanley , salomon smith barney , chase manhatan ,\netc . ) ? modelling technology in credit derivatives . i can and would like\nto ? consider the possibility of doing this for enron . i would like to help\ndevelop and participate in putting together that business .\n?\n? ? ? ? ? ? as i mentioned to you i have done some work in credit derivatives\nand am deeply familiar with virtually all the work of the principal\nacademics in credit derivatives namely : duffie , lando , tuffano , duffee , das ,\nlelland , etc . i have read carefully most of their work ( published as well as\nworking papers ) on the subject to date .\n?\n? ? ? ? ? ? i look forward to hearing from you .\n?\n? ? ? ? ? ? best regards\n?\n? ? ? ? ? ? joao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.558+0000", "entityId": 10586, "properties": {"text": "Subject: re : jinbaek kim\nmolly ,\nwe can pay for the plane ticket .\nwe have to make sure that we shall extend the same\ntreatment to other summer interns to avoid\nbad feelings .\nvince\nfrom : molly magee / enron @ enronxgate on 04 / 25 / 2001 11 : 47 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : jinbaek kim\nwe received some correspondence this morning from jinbaek in which he says he\nplans to start on june 4 , 2001 . since we are trying to offer a package\ncomparable to that of an associate in the program , i assume we will also pay\nfor his plane ticket here ? ? ? just wanted to check before i contacted\nhim . . . . , so i ' ll wait to hear from you .\nthanks ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.562+0000", "entityId": 10587, "properties": {"text": "Subject: re : potential prospect\ntom ,\nwe are currently space constrained but we shall always take a qualified\ncandidate . please , ask george to send me a resume and we shall get in touch\nwith him\nto arrange a phone / on - location interview .\nvince\ntom arnold on 04 / 25 / 2001 09 : 15 : 09 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : potential prospect\nhey vince ,\ngiven that the eastern finance conference is already taking place , i think\nit is safe to assume that they did not desire an energy derivative round\ntable discussion . however , i appreciate you volunteering to potentially\nhaving been on such a round table discussion .\ni ' ve been teaching a \" real options \" course that has the students performing\nmonte carlo analysis , black - scholes pricing , and binomial pricing along\nwith a heavy dosage of understanding risk neutral pricing . a few of your\nnew hires from the undergraduate program will be coming from this course .\nhowever , i have a student who will be finishing his mba next spring that is\nparticularly good . he is genuinely interested and curious about option\npricing , trading , and hedging with excel / vba skills . in fact , he usually\nfigures out when i make even very small mistakes in my calculations .\nthis is not to say that some of my other students aren ' t very talented\nthemselves , but that this person really stands out . do you think you\nand / or enron would be interested in such a person ? if so , what do you\nrecommend that he do to get his foot in the door ?\nhis intention is to finish the mba , but i do not know if this would\npreclude you from hiring or at least taking a look at him now . his name is\ngeorge moss and i ordinarily would not bother you directly about a\npotential employee . i am making an exception in this case because he is a\nparticularly good talent without being the slightest bit arrogant .\notherwise , i hope this e - mail finds you doing well and not travelling too\nmuch .\ntom\nprofessor tom arnold\ne . j . ourso college of business administration\ndepartment of finance\n2155 ceba\nlouisiana state university\nbaton rouge , la 70803\no : 225 - 388 - 6369\nf : 225 - 388 - 6366", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.567+0000", "entityId": 10588, "properties": {"text": "Subject: re : job posting\nvince ,\nthank you very much . i applied for the position yesterday ( via e - mail\naddress ) and mentioned your name in the cover letter . i ' ll keep my fingers\ncrossed .\nsincerely ,\nhelen\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 25 , 2001 9 : 42 am\nto : demianen @ ruf . rice . edu\nsubject : re : job posting\nhelen ,\nfyi .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 25 / 2001\n09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee ferrell / enron @ enronxgate on 04 / 24 / 2001 06 : 20 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : job posting\nhi vince ,\nthis posting is for my group . thanks for the referral .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , april 24 , 2001 5 : 31 pm\nto : goodpasture , john ; watson , kimberly ; ferrell , lee ; kaminski ,\nvince\ncc : krishnarao , pinnamaneni\nsubject : job posting\ni am teaching a class at rice and one of my very bright students sent\nher resume\nin response to this posting . do you know who posted this job ?\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on\n04 / 24 / 2001 05 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n( embedded image moved to file : pico 5601 . pcx )\n\" helen demianenko \" on 04 / 24 / 2001\n02 : 11 : 05 pm\nplease respond to\nto :\ncc :\nsubject : job posting\ndear vince ,\nthanks for talking to me this morning about the sr . risk analyst\nposition .\nhere is where you can find the job description for that position :\nalso , i have cut and pasted it down below , just in case .\ni appreciate your assistance in this matter and will start working on my\ncover letter right away .\ni would also like to talk to somebody to get a better feel for the\nposition\n( is this really an mba level position and how much of the in - depth\nlearning\nopportunities for the derivatives market does it entail ? )\nsincerely ,\nhelen demianenko\np . s . i have attached my resume ( one more time ) .\nsr risk analyst\nessential functions : primary accountability for managing the ets risk\nbook\nstructure and processes from a pipeline ( front office ) perspective . work\nwithin current nng and tw marketing organizations to effectively\nintegrate\nrisk books into daily marketing and structured product activities .\nprovide\nfeedback to management regarding overall and specific risk positions .\nprovide support for consistent and accurate deals entry / reporting for\nstand\nalone risk management system . create ad - hoc reports to assist management\nin\nrisk analysis . responsible for managing and providing enhancements to\nthe\ncapacity books : ? maintain functionality and provide leadership for new\nfunctionality from a users perspective . provide support and direction\nfor\nintegration of capacity books and revenue management project . support\nrevenue\nmanagement team\nessential requirements : ba / bs in finance or accounting ( mba preferred ) .\nminimum of two years financial instruments experience . excellent\nquantitative / analytic and systems skills . knowledge of commodity risk\nbook\nconcepts . understanding of physical natural gas market , interstate\ntransportation and financial derivatives . ability to interface with\nstructuring / marketing groups in order to define business requirements .\nability to provide leadership for business and system processes .\nexcellent\ncommunication skills with an ability to communicate across organization\nwith\nvaried skill sets and ideas . must be self - motivated with a high level of\nenergy\npreferred skills : na .\nspecial characteristics : this job functions in a team - oriented ,\nfast - paced\nenvironment with multiple concurrent assignments and constantly changing\npriorities .\ncontact : responses will be accepted through may 3 , 2001 . respond to\nenron\ncorp . , human resources 235 , p o box 3330 , omaha , ne 68103 - 0330 or\ne - mail :\ndea . crum @ enron . com as a . doc or . txt attachment . please include this\nrequisition number .\njob id 0000108729\ndepartment risk management & reporti\ncompany enron transportation services\nenron transportation services\nlocation houston , tx\ntype\nposting date 19 - apr - 01\n- helen _ d _ resume . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.573+0000", "entityId": 10589, "properties": {"text": "Subject: re : potential prospect\nhey vince ,\ni e - mailed george to send you a resume .\ntom\nprofessor tom arnold\ne . j . ourso college of business administration\ndepartment of finance\n2155 ceba\nlouisiana state university\nbaton rouge , la 70803\no : 225 - 388 - 6369\nf : 225 - 388 - 6366", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.578+0000", "entityId": 10590, "properties": {"text": "Subject: re : jinbaek kim\nmolly ,\nwe can pay for the plane ticket .\nwe have to make sure that we shall extend the same\ntreatment to other summer interns to avoid\nbad feelings .\nvince\nfrom : molly magee / enron @ enronxgate on 04 / 25 / 2001 11 : 47 am\nto : vince j kaminski / hou / ect @ ect , stinson gibner / hou / ect @ ect\ncc :\nsubject : jinbaek kim\nwe received some correspondence this morning from jinbaek in which he says he plans to start on june 4 , 2001 . since we are trying to offer a package comparable to that of an associate in the program , i assume we will also pay for his plane ticket here ? ? ? just wanted to check before i contacted him . . . . , so i ' ll wait to hear from you .\nthanks ,\nmolly\nx 34804", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.583+0000", "entityId": 10591, "properties": {"text": "Subject: re : potential prospect\ntom ,\nwe are currently space constrained but we shall always take a qualified\ncandidate . please , ask george to send me a resume and we shall get in touch with him\nto arrange a phone / on - location interview .\nvince\ntom arnold on 04 / 25 / 2001 09 : 15 : 09 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : potential prospect\nhey vince ,\ngiven that the eastern finance conference is already taking place , i think\nit is safe to assume that they did not desire an energy derivative round\ntable discussion . however , i appreciate you volunteering to potentially\nhaving been on such a round table discussion .\ni ' ve been teaching a \" real options \" course that has the students performing\nmonte carlo analysis , black - scholes pricing , and binomial pricing along\nwith a heavy dosage of understanding risk neutral pricing . a few of your\nnew hires from the undergraduate program will be coming from this course .\nhowever , i have a student who will be finishing his mba next spring that is\nparticularly good . he is genuinely interested and curious about option\npricing , trading , and hedging with excel / vba skills . in fact , he usually\nfigures out when i make even very small mistakes in my calculations .\nthis is not to say that some of my other students aren ' t very talented\nthemselves , but that this person really stands out . do you think you\nand / or enron would be interested in such a person ? if so , what do you\nrecommend that he do to get his foot in the door ?\nhis intention is to finish the mba , but i do not know if this would\npreclude you from hiring or at least taking a look at him now . his name is\ngeorge moss and i ordinarily would not bother you directly about a\npotential employee . i am making an exception in this case because he is a\nparticularly good talent without being the slightest bit arrogant .\notherwise , i hope this e - mail finds you doing well and not travelling too\nmuch .\ntom\nprofessor tom arnold\ne . j . ourso college of business administration\ndepartment of finance\n2155 ceba\nlouisiana state university\nbaton rouge , la 70803\no : 225 - 388 - 6369\nf : 225 - 388 - 6366", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.588+0000", "entityId": 10592, "properties": {"text": "Subject: re : job posting\nplease respond to vince ,\nthank you very much . i applied for the position yesterday ( via e - mail\naddress ) and mentioned your name in the cover letter . i ' ll keep my fingers\ncrossed .\nsincerely ,\nhelen\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 25 , 2001 9 : 42 am\nto : demianen @ ruf . rice . edu\nsubject : re : job posting\nhelen ,\nfyi .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 25 / 2001\n09 : 40 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee ferrell / enron @ enronxgate on 04 / 24 / 2001 06 : 20 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : job posting\nhi vince ,\nthis posting is for my group . thanks for the referral .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , april 24 , 2001 5 : 31 pm\nto : goodpasture , john ; watson , kimberly ; ferrell , lee ; kaminski ,\nvince\ncc : krishnarao , pinnamaneni\nsubject : job posting\ni am teaching a class at rice and one of my very bright students sent\nher resume\nin response to this posting . do you know who posted this job ?\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on\n04 / 24 / 2001 05 : 27 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n( embedded image moved to file : pico 5601 . pcx )\n\" helen demianenko \" on 04 / 24 / 2001\n02 : 11 : 05 pm\nplease respond to\nto :\ncc :\nsubject : job posting\ndear vince ,\nthanks for talking to me this morning about the sr . risk analyst\nposition .\nhere is where you can find the job description for that position :\nalso , i have cut and pasted it down below , just in case .\ni appreciate your assistance in this matter and will start working on my\ncover letter right away .\ni would also like to talk to somebody to get a better feel for the\nposition\n( is this really an mba level position and how much of the in - depth\nlearning\nopportunities for the derivatives market does it entail ? )\nsincerely ,\nhelen demianenko\np . s . i have attached my resume ( one more time ) .\nsr risk analyst\nessential functions : primary accountability for managing the ets risk\nbook\nstructure and processes from a pipeline ( front office ) perspective . work\nwithin current nng and tw marketing organizations to effectively\nintegrate\nrisk books into daily marketing and structured product activities .\nprovide\nfeedback to management regarding overall and specific risk positions .\nprovide support for consistent and accurate deals entry / reporting for\nstand\nalone risk management system . create ad - hoc reports to assist management\nin\nrisk analysis . responsible for managing and providing enhancements to\nthe\ncapacity books : ? maintain functionality and provide leadership for new\nfunctionality from a users perspective . provide support and direction\nfor\nintegration of capacity books and revenue management project . support\nrevenue\nmanagement team\nessential requirements : ba / bs in finance or accounting ( mba preferred ) .\nminimum of two years financial instruments experience . excellent\nquantitative / analytic and systems skills . knowledge of commodity risk\nbook\nconcepts . understanding of physical natural gas market , interstate\ntransportation and financial derivatives . ability to interface with\nstructuring / marketing groups in order to define business requirements .\nability to provide leadership for business and system processes .\nexcellent\ncommunication skills with an ability to communicate across organization\nwith\nvaried skill sets and ideas . must be self - motivated with a high level of\nenergy\npreferred skills : na .\nspecial characteristics : this job functions in a team - oriented ,\nfast - paced\nenvironment with multiple concurrent assignments and constantly changing\npriorities .\ncontact : responses will be accepted through may 3 , 2001 . respond to\nenron\ncorp . , human resources 235 , p o box 3330 , omaha , ne 68103 - 0330 or\ne - mail :\ndea . crum @ enron . com as a . doc or . txt attachment . please include this\nrequisition number .\njob id 0000108729\ndepartment risk management & reporti\ncompany enron transportation services\nenron transportation services\nlocation houston , tx\ntype\nposting date 19 - apr - 01\n- helen _ d _ resume . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.592+0000", "entityId": 10593, "properties": {"text": "Subject: re : one last reminder and then i will be quiet\ne - mail is perfect . it allows me to just dump your grades directly into our\ndatabase . i do then sign a hard copy ( indicating that i am signing in\nproxy for you ) to hand over to the registrar . if you prefer , you could fax\nthe information as well ( 713 - 348 - 5251 ) . thank you for your help ! - pam\n( 713 - 348 - 6223 )\nat 05 : 39 pm 4 / 24 / 01 - 0500 , you wrote :\n> pam ,\n>\n> please , let me know how i can submit the grades .\n> i gave my students april the 30 th as a deadline to submit\n> their reports and i shall be able to send you the grades by may the 4 th .\n>\n> is e - mail ok ?\n>\n> vince\n>\n>\n>\n>\n>\n> pamela vande krol castro on 04 / 19 / 2001 10 : 11 : 23 am\n>\n> to : ( recipient list suppressed )\n> cc : werckle @ ruf . rice . edu , spradlin @ ruf . rice . edu\n> subject : one last reminder and then i will be quiet\n>\n>\n> one last reminder . .\n> today is really your last day for scheduling final exams with linda werckle\n> ( 3463 ) . she will be out of town after today until exams begin .\n>\n> also , please remember to turn in your grades for all of your graduating\n> seniors by friday , may 4 th . this is the university deadline so we cannot\n> miss this date . the registrar needs final information on each student in\n> order to verify their graduating status .\n>\n> as always - thank you for your help !\n>\n> pamela castro\n> mba program associate\n> rice university\n> 713 - 348 - 6223", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.597+0000", "entityId": 10594, "properties": {"text": "Subject: don ' t forget - coffee colloquium this morning ( 4 - 25 - 01 ) last one\nof this academic year\nstudents , faculty , and staff ,\ndon ' t forget to participate in the coffee colloquium this morning ( 4 - 25 - 01 )\nfrom 9 : 45 to 10 : 45 held outside room 124 . this will be the last coffee\ncolloquium of this academic year . hope to see you there .\nthe coffee colloquium is an informal gathering which will allow faculty ,\nadministration , and students an opportunity to talk , exchange ideas and get\nto know each other better . the jones school coffee colloquium will be a\nregular gathering every wednesday ( same time , same place ) unless there is\nanother scheduled event ( dean ' s lecture , exam day , holiday ) . we usually\nhave coffee , tea , juice , soft drinks , and some light snacks available to\nall who participate .\nkathy\nkathy m . spradling\nmba program coordinator\njesse h . jones graduate school of management\nrice university\n6100 main street , ms 531\nhouston , texas 77005 - 1892\nphone : ( 713 ) 348 - 3313\nfax : ( 713 ) 348 - 5251\nemail : spradlin @ rice . edu\nhttp : / / www . rice . edu / jgs\ne - mail : spradlin @ rice . edu\nhttp : / / www . ruf . rice . edu / ~ jgs /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.602+0000", "entityId": 10595, "properties": {"text": "Subject: re : corn subsidy govt program analysis\nvasant ,\nthanks . let ' s contact wharton next week .\nvince\nfrom : vasant shanbhogue / enron @ enronxgate on 04 / 25 / 2001 10 : 15 am\nto : vince j kaminski / hou / ect @ ect\ncc : nelson neale / na / enron @ enron\nsubject : corn subsidy govt program analysis\nhi vince ,\nnelson and i had a meeting yesterday with the ag desk folks on how to go\nforward on the analysis and presentation for this program . the consensus\nfrom the ag side was that the choice of university will be highly politically\ndriven , ie preferably the university should be from a state that has close\nties to sympathetic senators or other political figures . also it is\npreferable if the university faculty have worked on ag issues before , lending\nmore credibility in the ag community . the names that came up were\nmississippi state and texas a & m . nelson knows of a person at mississippi\nstate who worked with the usda on risk management issues .\nthe needed analysis itself is not necessarily very deep , and the focus is\nprimarily to get a non - quantitative presentation out that outlines how enron\ncan take on the downside risk of local crop prices ( enron probably needs to\ncover actual local prices and not simply an index because i do not think the\ngovt will want to worry about basis risk ) .\nthe pilot program itself will be very small , and lends itself to continuing\ndown the path of short term trading rather than long term origination .\nanother thought on hedging our potential short positon ( on the origination\nside ) is that the govt program can only provide a partial hedge to the extent\nof the premium received - - we still have unlimited downside from the short .\nvasant\np . s . i am writing up jim bouillion ' s project suggestion as a potential\nproject for wharton . of course , we may still ask wharton for their insights\non the corn price protection approach .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.608+0000", "entityId": 10596, "properties": {"text": "Subject: dr . michelle foss - energy institute\nmichelle ,\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 25 / 2001\n09 : 50 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nchristie patrick\n04 / 25 / 2001 07 : 43 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : dr . michelle foss - energy institute\nhi vince - - i ' ll take care of it !\nthanks ! christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 04 / 25 / 2001\n07 : 43 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 24 / 2001 05 : 15 pm\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : dr . michelle foss - energy institute\nchristie ,\ni am forwarding you a message i have received from the university of houston .\ncan you help them ? we have a very good relationship with the uoh .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\naisha jamal on 04 / 23 / 2001 03 : 15 : 29 pm\nplease respond to aisha @ uh . edu\nto : vkamins @ ect . enron . com\ncc : mmfoss @ uh . edu\nsubject : dr . michelle foss - energy institute\ndear mr . kaminski ,\ni am writing to ask a favor for dr . michelle foss . as you know we will\nbe running our \" new era \" program from may 14 - may 25 th . dr . foss was\nwondering if on may 22 nd ( between 1 : 30 pm and 4 : 00 pm ) , we would be able to\nbring\nour participants for a tour of your trading floor . at this time we will have\n30 - 40 people , and since only 10 people maximum should really be on a\ntrading floor we need to have 4 companies among which to divide our\nparticipants . at this time , we have a floor from coral energy , and are\nworking with duke ,\nand i will be contacting mr . paul roberts to arrange for the reliant energy\ntrading floor . i was hoping very much that you would be able to direct\nme to the right person to contact to arrange this tour . will this be a\npossiblity ? i really appreciate your help very much . thank you !\nbest regards ,\naisha jamal\nenergy institute\n713 - 743 - 4634", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.617+0000", "entityId": 10597, "properties": {"text": "Subject: harvard - - nyu itinerary\nhi !\nattached please find the itinerary for the harvard - - - nyu trip ; please\ndisregard any parts of the trip that don ' t apply to you .\nif i have not already done so , i ' ll try this morning to get you a copy of the\nenron online case being taught at harvard tomorrow ( thursday ) . otherwise ,\ni ' ll give it to you on the plane - - it ' s fewer than 15 pages , so it ' s a quick\nread .\nplease call me if you have any questions ( 3 - 6117 ) . otherwise , i ' ll see you\nat the corporate hangar at 6 pm .\n( for anyone unfamiliar with the location of the corporate hangar , i believe\nyou can get a map / address / directions from the enron aviation department . )\nthanks !\n- - christie .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.626+0000", "entityId": 10598, "properties": {"text": "Subject: fw : research allocations to egm\nvince :\ncan you tell me where to get this info ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 25 / 2001 03 : 53 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : becky pham / enron @ enronxgate on 04 / 25 / 2001 10 : 58 am\nto : shirley crenshaw / hou / ect @ ect\ncc : diane fellers / enron @ enronxgate\nsubject : fw : research allocations to egm\nback in november of last year , you have indicated that 40 % of the 17 . 5 % ( 40 % of 17 . 5 is 7 % ) that we are allocating to egm should be billed to gary hickson ' s group . gary is asking for further broken down of this 40 % to his world . can you check with vince to see what portion of the 7 % should be charged to equity trading , rate & currency trading , agricultural trading & origination and convertible trading ? and can i get this information back by the end of this week because we are going to start closing on friday . if you have any questions , call me . thanx .\n- - - - - original message - - - - -\nfrom : khoja , sayed\nsent : wednesday , april 25 , 2001 10 : 17 am\nto : pham , becky\nsubject : research allocations to egm\nbecky ,\ni have attached your original emails below . can you provide further break out of the 40 % allocation to gary hickerson . gary is responsible for financial trading which includes :\n? equity trading\n? rate & currency trading\n? agricultural trading & origination\n? convertible trading\nthanks for your help .\nsayed\nto : sayed khoja / na / enron @ enron\ncc :\nsubject : re : research allocation\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 11 / 02 / 2000 03 : 00 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : becky pham / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : research allocation\nbecky ,\ni gave the % % for egm to shirley . i assume she communicated this info to you already .\ni assume egm includes f / x - i / r ( gary hickerson ) , weather , insurance ( jere overdyke ) ,\noil trading and coal .\nfor calme i don ' t have any info . let ' s split the cost evenly .\nvince\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : research allocation\nshirley ,\ngrm is now with egm group . egm wants to verify that the 17 . 5 % we are going to allocate to grm is for the insurance , jere overdyke group . egm seems to think that their weather , mark tawney group , is receiving support from research . also , can we break out the support for calme ? calme is going to split into 3 bus and i am trying to determine who i need to bill for research supports . if you have any questions , call me . thanx .\nto : sayed khoja / na / enron @ enron\ncc :\nsubject : re : research allocation\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 11 / 02 / 2000 02 : 47 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : becky pham / hou / ect @ ect\ncc :\nsubject : re : research allocation\nbecky :\nvince said to allocate it as follows :\ngary hickerson 40 %\njeff shankman\nweather 20 %\ninsurance 30 %\noil 5 %\ncoal 5 %\nhope this helps !\nshirley\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : research allocation\nshirley ,\ngrm is now with egm group . egm wants to verify that the 17 . 5 % we are going to allocate to grm is for the insurance , jere overdyke group . egm seems to think that their weather , mark tawney group , is receiving support from research . also , can we break out the support for calme ? calme is going to split into 3 bus and i am trying to determine who i need to bill for research supports . if you have any questions , call me . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.632+0000", "entityId": 10599, "properties": {"text": "Subject: giuseppe paleologo\nmolly ,\ngiuseppe is finishing his ph . d . at stanford and worked for us last summer . we would like to make him an offer to bring him as a manager . vince would like to offer $ 110 k base plus a $ 20 k signing bonus and whatever would be the appropriate relocation package ( he is single . ) . he is leaving on monday for europe , so it would be preferable if we can get an offer letter in his hands by friday or saturday . i have verbally given him this offer already , but told him that you would be the expert regarding what is covered in the relocation part . he should be sending me his current address by email which i will forward to you a . s . a . p .\nthanks ,\nstinson\nx 34748\np . s . regarding jinbaek . we would be happy to pay his air ticket .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 25 / 2001 03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngiuseppe andrea paleologo @ stanford . edu on 04 / 23 / 2001 07 : 33 : 29 pm\nplease respond to gappy @ stanford . edu\nsent by : gappy @ stanford . edu\nto : stinson . gibner @ enron . com\ncc :\nsubject : re : from stinson\nstinso , nice to hear from you . things are going well here . the only\nannoyance comes from the ins . i applied for curricular practical\ntraining , and it will take about three months to have the work permit .\nreceiving an h - 1 takes understably much longer . other than this , i would\nlike to know how are things in the research group and ebs .\ni will leave for italy next monday and will stay there two weeks . i hope\nto hear from you before my departure .\ngiuseppe\nstinson . gibner @ enron . com wrote :\n>\n> giuseppe ,\n>\n> how are you ? is your thesis still on schedule ? i hope things are going\n> well . i will try and give you a call in the next day or two to see how\n> things are going and to bring you up to date on what ' s going on here at\n> enron . look forward to talking with you .\n>\n> - - stinson\n- -\ngiuseppe a . paleologo\nemail : gappy @ stanford . edu\noffice phone : ( 650 ) 725 - 0541", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.638+0000", "entityId": 10600, "properties": {"text": "Subject: hib visa application - sevil yaman\nsevil ,\nplease , make sure you provide this information asap .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 25 / 2001 12 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n04 / 25 / 2001 12 : 04 pm\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona perkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : please let me know when you will be sending me the information for your hib visa ?\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 04 / 25 / 2001 12 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n04 / 10 / 2001 04 : 04 pm\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona perkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : in order that we may proceed with your request for permanent residency , our immigration attorneys have advised us that we need to process the hib visa , prior to the permanent residency application .\ntherefore , i am attaching an hib visa questionnaire that i would like you to complete and return to me , together with copies of all of the documents listed at the bottom of the form .\nplease bring these to me in 3 ac 2026 a .\nplease let me know if you have any questions at x 55083 .\nthank you\nmargaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.643+0000", "entityId": 10601, "properties": {"text": "Subject: fw : research allocations to egm\nvince :\ncan you tell me where to get this info ?\n- - - - - - - - - - - - - - - - - - - - - - forwarded by shirley crenshaw / hou / ect on 04 / 25 / 2001\n03 : 53 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : becky pham / enron @ enronxgate on 04 / 25 / 2001 10 : 58 am\nto : shirley crenshaw / hou / ect @ ect\ncc : diane fellers / enron @ enronxgate\nsubject : fw : research allocations to egm\nback in november of last year , you have indicated that 40 % of the 17 . 5 % ( 40 %\nof 17 . 5 is 7 % ) that we are allocating to egm should be billed to gary\nhickson ' s group . gary is asking for further broken down of this 40 % to his\nworld . can you check with vince to see what portion of the 7 % should be\ncharged to equity trading , rate & currency trading , agricultural trading &\norigination and convertible trading ? and can i get this information back by\nthe end of this week because we are going to start closing on friday . if you\nhave any questions , call me . thanx .\n- - - - - original message - - - - -\nfrom : khoja , sayed\nsent : wednesday , april 25 , 2001 10 : 17 am\nto : pham , becky\nsubject : research allocations to egm\nbecky ,\ni have attached your original emails below . can you provide further break\nout of the 40 % allocation to gary hickerson . gary is responsible for\nfinancial trading which includes :\n? equity trading\n? rate & currency trading\n? agricultural trading & origination\n? convertible trading\nthanks for your help .\nsayed\nto : sayed khoja / na / enron @ enron\ncc :\nsubject : re : research allocation\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 11 / 02 / 2000 03 : 00 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : becky pham / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : research allocation\nbecky ,\ni gave the % % for egm to shirley . i assume she communicated this info to you\nalready .\ni assume egm includes f / x - i / r ( gary hickerson ) , weather , insurance ( jere\noverdyke ) ,\noil trading and coal .\nfor calme i don ' t have any info . let ' s split the cost evenly .\nvince\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : research allocation\nshirley ,\ngrm is now with egm group . egm wants to verify that the 17 . 5 % we are going\nto allocate to grm is for the insurance , jere overdyke group . egm seems to\nthink that their weather , mark tawney group , is receiving support from\nresearch . also , can we break out the support for calme ? calme is going to\nsplit into 3 bus and i am trying to determine who i need to bill for research\nsupports . if you have any questions , call me . thanx .\nto : sayed khoja / na / enron @ enron\ncc :\nsubject : re : research allocation\n- - - - - - - - - - - - - - - - - - - - - - forwarded by becky pham / hou / ect on 11 / 02 / 2000 02 : 47 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nto : becky pham / hou / ect @ ect\ncc :\nsubject : re : research allocation\nbecky :\nvince said to allocate it as follows :\ngary hickerson 40 %\njeff shankman\nweather 20 %\ninsurance 30 %\noil 5 %\ncoal 5 %\nhope this helps !\nshirley\nto : shirley crenshaw / hou / ect @ ect , vince j kaminski / hou / ect @ ect\ncc :\nsubject : research allocation\nshirley ,\ngrm is now with egm group . egm wants to verify that the 17 . 5 % we are going\nto allocate to grm is for the insurance , jere overdyke group . egm seems to\nthink that their weather , mark tawney group , is receiving support from\nresearch . also , can we break out the support for calme ? calme is going to\nsplit into 3 bus and i am trying to determine who i need to bill for research\nsupports . if you have any questions , call me . thanx .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.648+0000", "entityId": 10602, "properties": {"text": "Subject: giuseppe paleologo\nmolly ,\ngiuseppe is finishing his ph . d . at stanford and worked for us last summer .\nwe would like to make him an offer to bring him as a manager . vince would\nlike to offer $ 110 k base plus a $ 20 k signing bonus and whatever would be the\nappropriate relocation package ( he is single . ) . he is leaving on monday\nfor europe , so it would be preferable if we can get an offer letter in his\nhands by friday or saturday . i have verbally given him this offer already ,\nbut told him that you would be the expert regarding what is covered in the\nrelocation part . he should be sending me his current address by email\nwhich i will forward to you a . s . a . p .\nthanks ,\nstinson\nx 34748\np . s . regarding jinbaek . we would be happy to pay his air ticket .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stinson gibner / hou / ect on 04 / 25 / 2001\n03 : 26 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\ngiuseppe andrea paleologo @ stanford . edu on 04 / 23 / 2001\n07 : 33 : 29 pm\nplease respond to gappy @ stanford . edu\nsent by : gappy @ stanford . edu\nto : stinson . gibner @ enron . com\ncc :\nsubject : re : from stinson\nstinso , nice to hear from you . things are going well here . the only\nannoyance comes from the ins . i applied for curricular practical\ntraining , and it will take about three months to have the work permit .\nreceiving an h - 1 takes understably much longer . other than this , i would\nlike to know how are things in the research group and ebs .\ni will leave for italy next monday and will stay there two weeks . i hope\nto hear from you before my departure .\ngiuseppe\nstinson . gibner @ enron . com wrote :\n>\n> giuseppe ,\n>\n> how are you ? is your thesis still on schedule ? i hope things are going\n> well . i will try and give you a call in the next day or two to see how\n> things are going and to bring you up to date on what ' s going on here at\n> enron . look forward to talking with you .\n>\n> - - stinson\n- -\ngiuseppe a . paleologo\nemail : gappy @ stanford . edu\noffice phone : ( 650 ) 725 - 0541", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.652+0000", "entityId": 10603, "properties": {"text": "Subject: hib visa application - sevil yaman\nsevil ,\nplease , make sure you provide this information asap .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 25 / 2001\n12 : 35 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n04 / 25 / 2001 12 : 04 pm\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona\nperkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : please let me know when you will be sending me the information for\nyour hib visa ?\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 04 / 25 / 2001\n12 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n04 / 10 / 2001 04 : 04 pm\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona\nperkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : in order that we may proceed with your request for permanent\nresidency , our immigration attorneys have advised us that we need to process\nthe hib visa , prior to the permanent residency application .\ntherefore , i am attaching an hib visa questionnaire that i would like you to\ncomplete and return to me , together with copies of all of the documents\nlisted at the bottom of the form .\nplease bring these to me in 3 ac 2026 a .\nplease let me know if you have any questions at x 55083 .\nthank you\nmargaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.657+0000", "entityId": 10604, "properties": {"text": "Subject: real options conference programs ( ucla , july 11 - 14 )\nplease find attached the programs for the two back - two - back conferences on\nreal options at ucla ( you may also download them from www . realoptions . org and\nwww . rogroup . com ) . the two conferences are separate but complementary events .\nthe first conference , co - sponsored with accenture and morgan stanley dean\nwitter , on july 11 - 12 , is a professional conference on real options valuation\nin the connected economy : high tech , pharma , energy , corporate valuation &\nstrategic / portfolio management . for information and online registration see\nwww . rogroup . com .\nthe second is the 5 th annual international conference on real options : theory\nmeets practice ( the annual industry event where academics and practitioners\nget together to share the latest developments on theory and applications ) ,\nco - organized with the anderson school at ucla on july 13 - 14 . for information\nand online registration see www . realoptions . org\nbetween the two complementary events , we are pleased to present an extensive\narray of practitioner and cutting - edge academic presentations , sharing of\nexperiences by corporate executives , and panel discussions by experts from\nleading organizations and universities . our keynote speaker this year will be\neduardo s . schwartz of ucla .\ninterested participants must register for the conference online\nwww . realoptions . org ) and indicate hotel preferences by may 31 or asap .\nwe look forward to seeing you at this exciting event , and would appreciate if\nyou share this with interested colleagues .\nlenos trigeorgis\n- 5 2001 . doc\n- 5 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.661+0000", "entityId": 10605, "properties": {"text": "Subject: registration for \" north american gas storage conference \" - june 22 ,\n2001\nplease register wincenty j . ( vince ) kaminski , managing director , research\nenron wholesale services , to the subject conference to be held in houston\non june 22 , 2001 .\nif you need more information , please contact me at :\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.666+0000", "entityId": 10606, "properties": {"text": "Subject: fw : my london \" wish list \"\noops , i sent the previous email to another kaminski .\n- - - - - original message - - - - -\nfrom : mack , iris\nsent : thursday , april 26 , 2001 10 : 42 am\nto : salmon , scott\ncc : chaney , craig ; kaminski , jim ; dhar , amitava ; shanbhogue , vasant\nsubject : my london \" wish list \"\nhi scott ,\nas we discussed , i will be flying to london on monday to spend some time in\nenron ' s london office . i am really looking forward to meeting you and the\nothers i have corresponded with via email , phone , vc , etc .\non yesterday vince , vasant , amitava and i discussed my stay and london and\nthe desire to make this trip a productive one . hence we came up with the\nfollowing \" wish list \" of things i wish to accomplish while i am over there .\nif you think of any other important items to add to this list , please let me\nknow . after that , we can forward the list to the parties involved to find\nout if they will be available to meet with me during my stay in london .\nthanks ,\niris\niris ' london \" wish list \"\nscott\nschematic diagram of how the various models are tied together for the\noverall objective of coming up with final cds and dbs pricing\nproduct descriptions - more details\nben\n* spss\n* answertree ( card book )\ngeorge\n* nnpm\nmike\n* need to create internal database to store d & b data .\n* how will d & b data be stored ? need flexibility for data manipulation &\nmodel development .\nbryan & markus\n* feasiblity model : what calculations do they already have ?\n* breakeven spread\n* moral hazards issues\n* legal contract issues to resolve moral hazard issues .\n* a company can ' t buy bankruptcy on itself ?\n* need to have \" accurate \" information for correlation between reference &\ncounterparty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.671+0000", "entityId": 10607, "properties": {"text": "Subject: short term private firm model : static historical\nsnapshot + performance data for model development\nmike , scott , eric ,\nafter brainstorming and discussing further on data here , we think that our\nfinal specifications for modelling data requirement need to be as follows :\nwe need bankrupt , default and nondefault ( which covers nonbankrupt ) accounts\nwith 4 quarterly observation snapshots and 12 months performance following\nthe latest snapshot . monthly performance indicator need to be available for\nthe entire 12 months performance period . we will need all the bankrupt and\ndefault accounts and comparable sample of good accounts with weights .\nfor the purpose of model validation , we will need data with above specs\ncovering 16 months of performance . this means that we will need rolling ( 4\nquarterly snapshots + 12 months performance ) data for 4 monthly shifts :\ninput snapshots performance\n1999 march end , 1999 june end , 1999 september end , 1999 december end 12\nmonth end performance for jan 2000 through dec 2000\n1999 feb end , 1999 may end , 1999 august end , 1999 november end 12 month\nend performance for dec 1999 through nov 2000\n1999 jan end , 1999 apr end , 1999 july end , 1999 october end 12 month end\nperformance for nov 1999 through oct 2000\n1998 december end , 1999 mar end , 1999 june end , 1999 september end 12\nmonth end performance for oct 1999 through sep 2000\nwe will need bankruptcy chapterwise indicator , if available during the\nperformance period . our definition of default is either bankruptcy or 90 +\ndays delinquency on any trade credit .\nwe have also discussed the cost aspect and we think considering the big\npicture , it makes sense to spend the extra amount to get the right data for\nanalysis .\nplease let me know your thoughts . this will require d & b to give us a\nmodified quote and we could possibly move forward quickly .\nregards ,\namitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.675+0000", "entityId": 10608, "properties": {"text": "Subject: credit business plan\nhi jeff ,\nmy research colleagues and i are working on a document to lay out our credit\nderivatives modeling strategy . for lack of a better term , we refer to this\nas our credit business plan .\nit is my understanding that various business plans have been previously\nwritten for the credit group - one by gillian johnson and another by john\nbottomley .\nit would be very helpful to our efforts in the research group , it you would\nallow us to see these plans .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.680+0000", "entityId": 10609, "properties": {"text": "Subject: fw : my london \" wish list \"\noops , i sent the previous email to another kaminski .\n- - - - - original message - - - - -\nfrom : mack , iris\nsent : thursday , april 26 , 2001 10 : 42 am\nto : salmon , scott\ncc : chaney , craig ; kaminski , jim ; dhar , amitava ; shanbhogue , vasant\nsubject : my london \" wish list \"\nhi scott ,\nas we discussed , i will be flying to london on monday to spend some time in enron ' s london office . i am really looking forward to meeting you and the others i have corresponded with via email , phone , vc , etc .\non yesterday vince , vasant , amitava and i discussed my stay and london and the desire to make this trip a productive one . hence we came up with the following \" wish list \" of things i wish to accomplish while i am over there .\nif you think of any other important items to add to this list , please let me know . after that , we can forward the list to the parties involved to find out if they will be available to meet with me during my stay in london .\nthanks ,\niris\niris ' london \" wish list \"\nscott\nschematic diagram of how the various models are tied together for the overall objective of coming up with final cds and dbs pricing\nproduct descriptions - more details\nben\n* spss\n* answertree ( card book )\ngeorge\n* nnpm\nmike\n* need to create internal database to store d & b data .\n* how will d & b data be stored ? need flexibility for data manipulation & model development .\nbryan & markus\n* feasiblity model : what calculations do they already have ?\n* breakeven spread\n* moral hazards issues\n* legal contract issues to resolve moral hazard issues .\n* a company can ' t buy bankruptcy on itself ?\n* need to have \" accurate \" information for correlation between reference & counterparty", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.685+0000", "entityId": 10610, "properties": {"text": "Subject: short term private firm model : static historical\nsnapshot + performance data for model development\nmike , scott , eric ,\nafter brainstorming and discussing further on data here , we think that our final specifications for modelling data requirement need to be as follows :\nwe need bankrupt , default and nondefault ( which covers nonbankrupt ) accounts with 4 quarterly observation snapshots and 12 months performance following the latest snapshot . monthly performance indicator need to be available for the entire 12 months performance period . we will need all the bankrupt and default accounts and comparable sample of good accounts with weights .\nfor the purpose of model validation , we will need data with above specs covering 16 months of performance . this means that we will need rolling ( 4 quarterly snapshots + 12 months performance ) data for 4 monthly shifts :\ninput snapshots performance\n1999 march end , 1999 june end , 1999 september end , 1999 december end 12 month end performance for jan 2000 through dec 2000\n1999 feb end , 1999 may end , 1999 august end , 1999 november end 12 month end performance for dec 1999 through nov 2000\n1999 jan end , 1999 apr end , 1999 july end , 1999 october end 12 month end performance for nov 1999 through oct 2000\n1998 december end , 1999 mar end , 1999 june end , 1999 september end 12 month end performance for oct 1999 through sep 2000\nwe will need bankruptcy chapterwise indicator , if available during the performance period . our definition of default is either bankruptcy or 90 + days delinquency on any trade credit .\nwe have also discussed the cost aspect and we think considering the big picture , it makes sense to spend the extra amount to get the right data for analysis .\nplease let me know your thoughts . this will require d & b to give us a modified quote and we could possibly move forward quickly .\nregards ,\namitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.690+0000", "entityId": 10611, "properties": {"text": "Subject: credit business plan\nhi jeff ,\nmy research colleagues and i are working on a document to lay out our credit derivatives modeling strategy . for lack of a better term , we refer to this as our credit business plan .\nit is my understanding that various business plans have been previously written for the credit group - one by gillian johnson and another by john bottomley .\nit would be very helpful to our efforts in the research group , it you would allow us to see these plans .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.695+0000", "entityId": 10612, "properties": {"text": "Subject: my new info\ndear friends and colleagues ,\ni have switched again my employment status between self - employment and\nemployment by joining the txu energy trading on the capacity of their\nmanaging director of risk management operations . will commute home on\nweekends , but otherwise , will be stationed in dallas . the new email address\nis mjermakl @ txu . edu , and the phone number is ( 214 ) 875 - 9603 .\nregards ,\nmartin jermakyan\nwww . txu . com\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.700+0000", "entityId": 10613, "properties": {"text": "Subject: interview - numerical methods & finance\n? ? ? ? ? ? dear tanya :\n?\n? ? ?\n? ? ? ? ? ? it was a great pleasure to have met you . i very much enjoyed the\ninterview and your insightfull questions .\n?\n? ? ? ? ? ? i am keenly aware that many of the methods that i discussed with you\nyesterday are unique , new ? and not reported elsewhere . this is true both\nabout the work i did in whole yield curve interest rate pricing ? as well as\ngarch . the innovations stem from the extensive numerical analysis experience\nthat i have both in turbulence physics as well as finance . they entailed\nconsidering the problem from its raw formulation , mathematical analysis ,\nphysical interpretation , taylored numerical method development , software\nwritting and develoment and data management .\n?\n? ? ? ? ? ? as to why i have not yet published anything the answer is that the\ndriver in my work has been adding value to the business not publishing .\npublishing is however an option that has always been open with my former\nsupervisor who is aware of the work that i did .\n?\n? ? ? ? ? ? i not however that these results were possible only by exploring to\nthe utmost extent the mathematics , finance , software design and data\nmanagemnet aspects of the problem . absence of any of these aspects is likely\nto cripple performance and execution .\n?\n? ? ? ? ? ? please recall that as good as they were the performance measures\nthat i mentioned to you were for a single processor machine . vastly better\ncan be achieved with both soft parallelism ( multithreading ) as well as hard\nparallelism ( heterogenous network ) . this fo course allows us to step up the\nreach of the models used .\n?\n? ? ? ? ? ? in fact i know for a fact that better can be done than what i\nmentioned in the interview . from work that i have been doing on the\nintegration of the swaption volatility surface on the whole yield curve\ninterest rate model itm and otm instruments can be included in both the\ncallibration , pricing and hedging .\n?\n? ? ? ? ? ? i look forward hearing back from you soon and particularly to the\nopportunity of us cooperating .\n?\n? ? ? ? ? ? best regards\n?\n? ? ? ? ? ? joao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.704+0000", "entityId": 10614, "properties": {"text": "Subject: interview - numerical methods & finance\ndear tanya :\nit was a great pleasure to have met you . i very much enjoyed the interview and your insightfull questions .\ni am keenly aware that many of the methods that i discussed with you yesterday are unique , new and not reported elsewhere . this is true both about the work i did in whole yield curve interest rate pricing as well as garch . the innovations stem from the extensive numerical analysis experience that i have both in turbulence physics as well as finance . they entailed considering the problem from its raw formulation , mathematical analysis , physical interpretation , taylored numerical method development , software writting and develoment and data management .\nas to why i have not yet published anything the answer is that the driver in my work has been adding value to the business not publishing . publishing is however an option that has always been open with my former supervisor who is aware of the work that i did .\ni not however that these results were possible only by exploring to the utmost extent the mathematics , finance , software design and data managemnet aspects of the problem . absence of any of these aspects is likely to cripple performance and execution .\nplease recall that as good as they were the performance measures that i mentioned to you were for a single processor machine . vastly better can be achieved with both soft parallelism ( multithreading ) as well as hard parallelism ( heterogenous network ) . this fo course allows us to step up the reach of the models used .\nin fact i know for a fact that better can be done than what i mentioned in the interview . from work that i have been doing on the integration of the swaption volatility surface on the whole yield curve interest rate model itm and otm instruments can be included in both the callibration , pricing and hedging .\ni look forward hearing back from you soon and particularly to the opportunity of us cooperating .\nbest regards\njoao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.708+0000", "entityId": 10615, "properties": {"text": "Subject: interview - credit derivatives\ndear vince :\nthank you for the invitation yesterday . it was a pleasure to meet you all and learn more about the group , it ' s structure and to some extent what you are involved in . please extend my thanks to all of them .\ni am particularly interested in the credit swap trading platform that enron has recently started . such a platform will provide unique visibility into the credit markets . as you suggested i tried to learn more about this from tanya . i would like to learn more and if possible meet other people more directly linked to the effort .\njust simple instruments like credit swaps will require serious modelling capability for the pricing and the hedging of these apparently simple intruments . the market visibility i mention above can be explored through credit derivatives trading successfully if enron possesses superior ( vis a vis morgan stanley , salomon smith barney , chase manhatan , etc . ) modelling technology in credit derivatives . i can and would like to consider the possibility of doing this for enron . i would like to help develop and participate in putting together that business .\nas i mentioned to you i have done some work in credit derivatives and am deeply familiar with virtually all the work of the principal academics in credit derivatives namely : duffie , lando , tuffano , duffee , das , lelland , etc . i have read carefully most of their work ( published as well as working papers ) on the subject to date .\ni look forward to hearing from you .\nbest regards\njoao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.713+0000", "entityId": 10616, "properties": {"text": "Subject: re : dr . michelle foss - energy institute\nthanks vince - - am tied up with chairing the iaee conference this week .\nappreciate your fielding my request via aisha . hope you ' re doing well ! m\n* * * * *\nall information in this mail is to be treated confidentially .\n* * * * *\nmichelle michot foss , ph . d .\ndirector , energy institute\nc . t . bauer college of business\n334 melcher hall , room 320\nuniversity of houston\nhouston , tx 77204 - 6011\ntel . 713 - 743 - 4634\nfax 713 - 743 - 4881\nwww . uh . edu / energyinstitute\n> , , on 04 / 23 / 2001 03 : 15 : 29 pm\nplease respond to aisha @ uh . edu\nto : vkamins @ ect . enron . com\ncc : mmfoss @ uh . edu\nsubject : dr . michelle foss - energy institute\ndear mr . kaminski ,\ni am writing to ask a favor for dr . michelle foss . as you know we will\nbe running our \" new era \" program from may 14 - may 25 th . dr . foss was\nwondering if on may 22 nd ( between 1 : 30 pm and 4 : 00 pm ) , we would be able to\nbring\nour participants for a tour of your trading floor . at this time we will\nhave\n30 - 40 people , and since only 10 people maximum should really be on a\ntrading floor we need to have 4 companies among which to divide our\nparticipants . at this time , we have a floor from coral energy , and are\nworking with duke ,\nand i will be contacting mr . paul roberts to arrange for the reliant energy\ntrading floor . i was hoping very much that you would be able to direct\nme to the right person to contact to arrange this tour . will this be a\npossiblity ? i really appreciate your help very much . thank you !\nbest regards ,\naisha jamal\nenergy institute\n713 - 743 - 4634", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.718+0000", "entityId": 10617, "properties": {"text": "Subject: re : hib visa application - sevil yaman\nmargaret ,\nthanks for reminding me this issue . i think i ' ll be fine until i start full time here in the research group . as you know right now i am using curricular practical training as work permission . and until i graduate i am allowed do as many as part time cpt i want to do . because of tax purposes i think i ' ll use this right given to me . in this case , what i need to do is that after i and vince make sure about my full time start date ( this may happen in the beginning of 2002 ) , i ' ll let you know and send you the necessary document you require to initiate my hlb visa application process . thanks again .\nsevil ,\nmargaret daffin @ ect\n25 - 04 - 2001 12 : 04\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona perkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : please let me know when you will be sending me the information for your hib visa ?\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 04 / 25 / 2001 12 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n04 / 10 / 2001 04 : 04 pm\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona perkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : in order that we may proceed with your request for permanent residency , our immigration attorneys have advised us that we need to process the hib visa , prior to the permanent residency application .\ntherefore , i am attaching an hib visa questionnaire that i would like you to complete and return to me , together with copies of all of the documents listed at the bottom of the form .\nplease bring these to me in 3 ac 2026 a .\nplease let me know if you have any questions at x 55083 .\nthank you\nmargaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.722+0000", "entityId": 10618, "properties": {"text": "Subject: now visible red\nto : mike a roberts / hou / ect , jose marquez / corp / enron @ enron , tony\nhamilton / eu / enron @ enron\ncc : stephen bennett / na / enron @ enron\nsubject : leaving london\nhi guys . . .\ntony and i wanted to summarize \" where we go from here \" - here is how we see\nit . i left the string attached - just read below . . . .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by stephen bennett / na / enron on 04 / 26 / 2001\n10 : 44 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\ntony hamilton\n04 / 26 / 2001 10 : 46 am\nto : stephen bennett / na / enron @ enron\ncc :\nsubject : re : leaving london\nmy comments in blue . . .\ntony\nenron capital & trade resources corp .\nfrom : stephen bennett 26 / 04 / 2001 16 : 36\nto : tony hamilton / eu / enron @ enron\ncc :\nsubject : leaving london\nhi guys . . .\nbefore leaving here i wanted to quickly summarize the projects that have been\nleft open :\n1 ) tony shifts his focus slightly toward more development - a little less day\nto day forecasting\ndevelopment\n- building and developing a transatlantic heating demand model -\nincluding shipment\n- building an nao model and index for wx deriv\n- developing a model for the api number\n- examine uk met data and potential for getting ensemble forecasts from\nthe ecmwf\n- keep up with non - enron global markets ' future needs without commiting\ncurrent resources\noperational\n- begin daily briefings for agriculture - examine data sources and\nforecast products\n- continue to produce global summary - with help from steve / jose in houston\n- continue to produce 1 - 5 and 6 - 10 day forecasts for europe coordinating\nwith houston\n- continue to coordinate on us 6 - 10 day forecasts with houston\n- continue monday / wednesday briefings for crude meetings\n- provide met comment and support toward weekly / monthly / seasonal official\noutlooks from the uk met for wxderiv ( team support from houston )\n- design and develop forecast of met forecast ( try to beat their release\nby at least 1 hour ) prior to each daily update ( like our bloomberg forecaster )\n- identify any additional \" market - movers \" , anticipate and add value to\nsame\n\" back - burner \"\n- develop a method for providing probability distribution / confidence\ngraphics based on numerical forecast guidance and ensemble data\n\" on the shelf \"\n- daily briefings and products for uk gas\n- daily briefings and products for continental power\n- daily briefings and products for dutch power\n- weather support for coal trading ?\n- daily forecasts of and comment on uk met official 3 - 5 and 6 - 10\nforecasts\n- automation of temperature history / forecast plots from model ensemble\ndata\n2 ) steve continues to work on a few ongoing projects and ties up \" loose ends \"\non - going\n- automate a process for getting forecast temps ( model / other ) from\nearthsat data\n- continue to produce the us part of the global exec summary\n- consult with tony on 1 - 5 day europe forecast\n- continue to produce port status report - work on expanding this report\n- european forecast verification ( like houston )\n\" loose - ends \"\n- contract with wsi for met data\n- talk to earthsat about a daily conference call for tony\n- talk to uk met office about a daily conference call for tony\n- refine list of europe forecast cities and get them from earthsat\n- make sure jose didn ' t destroy my house ! !\n3 ) jose\n- continues to investigate data for global ag and works with tony on\ngetting ag products up and running\n- makes sure steve ' s dog is in perfect shape to return home this weekend\n( i . e . find one with identical markings before steve gets back ! )\n- order mofongo for london research luncheons !\nthat ' s it - see you tuesday . . . .\nsteve", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.728+0000", "entityId": 10619, "properties": {"text": "Subject: re : hib visa application - sevil yaman\nmargaret ,\nthanks for reminding me this issue . i think i ' ll be fine until i start full\ntime here in the research group . as you know right now i am using curricular\npractical training as work permission . and until i graduate i am allowed do\nas many as part time cpt i want to do . because of tax purposes i think i ' ll\nuse this right given to me . in this case , what i need to do is that after i\nand vince make sure about my full time start date ( this may happen in the\nbeginning of 2002 ) , i ' ll let you know and send you the necessary document you\nrequire to initiate my hlb visa application process . thanks again .\nsevil ,\nmargaret daffin @ ect\n25 - 04 - 2001 12 : 04\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona\nperkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : please let me know when you will be sending me the information for\nyour hib visa ?\nthanks\nmargaret\n- - - - - - - - - - - - - - - - - - - - - - forwarded by margaret daffin / hou / ect on 04 / 25 / 2001\n12 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmargaret daffin\n04 / 10 / 2001 04 : 04 pm\nto : sevil yaman / corp / enron @ enron\ncc : norma villarreal / enron @ enronxgate , vince j kaminski / hou / ect @ ect , ramona\nperkins / enron @ enronxgate\nsubject : hib visa application - sevil yaman\nsevil : in order that we may proceed with your request for permanent\nresidency , our immigration attorneys have advised us that we need to process\nthe hib visa , prior to the permanent residency application .\ntherefore , i am attaching an hib visa questionnaire that i would like you to\ncomplete and return to me , together with copies of all of the documents\nlisted at the bottom of the form .\nplease bring these to me in 3 ac 2026 a .\nplease let me know if you have any questions at x 55083 .\nthank you\nmargaret", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.732+0000", "entityId": 10620, "properties": {"text": "Subject: re : recent hardware repair\njoe ,\nwe are extremely pleased with the support we receive from your team .\nthe problem was fixed very quickly .\nvince\nfrom : joe langston / enron @ enronxgate on 04 / 27 / 2001 11 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : recent hardware repair\nvince ,\nrecently the hardware services team performed work on a piece of equipment\nfor you . the technician that performed the work was jd marter , and this is\njust a follow up to insure that your problem was resolved . it is our goal to\nprovide you with the best service possible , so please feel free to respond to\nthis email if you have any comments that may help us provide you better\nservice in the future . attached you will find a work log detailing what was\ndone to resolve your issue . if you have any questions , or if the problem is\nnot completely resolved please feel free to contact me .\nthank you ,\njoe langston\nteam lead hardware services\noffice : 713 - 345 - 8883\ncell : 713 - 545 - 5912\npager : 877 - 239 - 2794", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.740+0000", "entityId": 10621, "properties": {"text": "Subject: california update 4 / 27 / 01\nthe following report contains confidential and sensitive information . please\ntreat with discretion .\nexecutive summary :\n? ferc price cap decision reflects bush political and economic objectives .\npolitically , bush is determined to let the crisis blame fall on davis ; from\nan economic perspective , he is unwilling to create disincentives for new\npower generation\n? davis finds four major flaws with ferc plan , most notably its exclusion of\nout - of - state generators\n? june lst \" kill clause \" for ferc order could coincide with new bush regional\nplan\n? california facing growing fiscal risk following bond downgrade , expected\n$ 20 billion power bill this summer - - economic crisis would force deeper\nadministration involvement\n? qf bid for advance payments from pg & e likely to fail in bankruptcy court\n? new generation delays probable because of state / qf squabbling\n? consumer groups are preparing a constitutional challenge to socal bailout\ndeal\n1 . ferc fallout\nthe ferc decision is a holding move by the bush administration that looks\nlike action , but is not . rather , it allows the situation in california to\ncontinue to develop virtually unabated . the political strategy appears to\nallow the situation to deteriorate to the point where davis cannot escape\nshouldering the blame . once they are politically inoculated , the\nadministration can begin to look at regional solutions . moreover , the\nadministration has already made explicit ( and will certainly restate in the\nforthcoming cheney commission report ) its opposition to stronger price caps\non the grounds that they are unwilling to create disincentives to the\nconstruction of new generation .\nit is interesting and ironic to note that electricity generators were\ngenerally happy with the ferc order and that the only ferc commissioner who\nfavors price caps actually voted against this plan .\n2 . something less than effective price caps\nfrom davis ' s point of view , the ferc plan has four major flaws :\n? the order applies only to california , not to the rest of the west .\nnon - california generators are not required to sell at capped rates to\ncalifornia .\n? as the order is written , it is more of a price floor for emergency power\nthan a ceiling .\n? state officials also believe that energy suppliers will continue to game\nthe system , because the price mitigation scheme only kicks in after a stage 2\nemergency and does not require any collusion .\n? even when the price caps kick in , they are based on the cost - plus for the\nhighest cost producer supplying power to california and do not require\nwholesalers to abide by the cap . the generators can also charge above the\ncap , provided they can subsequently justify the excess charge to ferc .\n3 . proposal \" kill clause \" adds to the political dilemma for davis\nthe ferc proposal includes a \" kill clause \" that says the caps will be\nwithdrawn unless california ' s iso agrees by june lst to become part of the\nregional grid now under ferc control . if davis doesn ' t sign on to the\nregional grid by june lst , then he will have to live with june 2 nd headlines\nblaming him for letting the \" bush price caps plan \" collapse .\n4 . growing fiscal risk in california\nsources speculate that california could therefore pay as much as $ 20 billion\non power this summer - this is more than the combined enterprise value of\npg & e and sce . these sources believe that , because of the severity of the\nsituation , the ferc and / or the federal government will be forced to take\nfurther action to control prices for power .\nthe consensus is that the state of california will run out of money in about\n90 days . one of the first projects to be cancelled will be state plans to\nfinance new power plant construction in exchange for long - term power deals .\nthe bleak fiscal picture is also causing bank creditors to revisit the bridge\nloans they are providing to california .\nthe bush administration and the fed are only now waking up to the seriousness\nof the fiscal picture . the country ' s largest and most prosperous state will\nhave gone from large surpluses to serious debt downgrades and devastating\ndeficits in a matter of months .\n5 . qfs to seek advance payment from pg & e\nmeanwhile , on the bankruptcy front , the qfs reportedly will ask the\nbankruptcy judge today to give them advance payment from pge ' s accounts ,\nsince their natural gas vendors have likewise demanded advance payment for\ngas . it appears very unlikely that the qfs ' request will be granted . if the\nqfs do not receive advance payment , it is likely that most of the 4 , 000 mw\nof gas - fired qf capacity will remain offline .\n6 delays likely in new qf generation\nthe qf deals made with the state for long - term contracts are being\ncontinually renegotiated , which is likely to mean that the new plants those\ncontracts are supposed to finance will not be online as early as anticipated .\n7 . consumer groups ready to challenge constitutionality of sce bailout plan\nharvey rosenfield and his colleagues reportedly have been reviewing an\nanalysis of the mou for the sce bailout plan . the analysis was done by a\nutilities analyst , rather than a lawyer , though it appears to raise a number\nof good legal points . for example , one of the elements of the mou is a\n\" non - bypassable \" charge on ratepayers that would require them to pay even\nif they disconnect from the grid . this is effectively a tax , since there is\nno exchange of value for money , which under the ca constitution cannot be\nused to directly benefit a private entity . this makes the bonds that would\nbe issued are general obligation bonds , rather than revenue bonds . according\nto the constitution , the state cannot be put into debt to benefit a private\ncompany . for this and other reasons , even if the republicans would vote for\nthe sce bailout , which remains unlikely , the bailout probably would not\nstand a likely constitutional challenge .\n8 . governor hurt by continued failure to disclose long - term power contracts\nthe issue of the governor ' s failure to disclose the details of the long - term\npower contracts continues to distress the other players in the crisis .\neven if he were to disclose everything he and his staff have been\nnegotiating , it is likely that their actions and negotiations will\nchallenged , creating an even further delay .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.747+0000", "entityId": 10622, "properties": {"text": "Subject: california update 4 / 27 / 01\nthe following report contains confidential and sensitive information . please treat with discretion .\nexecutive summary :\n? ferc price cap decision reflects bush political and economic objectives . politically , bush is determined to let the crisis blame fall on davis ; from an economic perspective , he is unwilling to create disincentives for new power generation\n? davis finds four major flaws with ferc plan , most notably its exclusion of out - of - state generators\n? june lst \" kill clause \" for ferc order could coincide with new bush regional plan\n? california facing growing fiscal risk following bond downgrade , expected $ 20 billion power bill this summer - - economic crisis would force deeper administration involvement\n? qf bid for advance payments from pg & e likely to fail in bankruptcy court\n? new generation delays probable because of state / qf squabbling\n? consumer groups are preparing a constitutional challenge to socal bailout deal\n1 . ferc fallout\nthe ferc decision is a holding move by the bush administration that looks like action , but is not . rather , it allows the situation in california to continue to develop virtually unabated . the political strategy appears to allow the situation to deteriorate to the point where davis cannot escape shouldering the blame . once they are politically inoculated , the administration can begin to look at regional solutions . moreover , the administration has already made explicit ( and will certainly restate in the forthcoming cheney commission report ) its opposition to stronger price caps on the grounds that they are unwilling to create disincentives to the construction of new generation .\nit is interesting and ironic to note that electricity generators were generally happy with the ferc order and that the only ferc commissioner who favors price caps actually voted against this plan .\n2 . something less than effective price caps\nfrom davis ' s point of view , the ferc plan has four major flaws :\n? the order applies only to california , not to the rest of the west . non - california generators are not required to sell at capped rates to california .\n? as the order is written , it is more of a price floor for emergency power than a ceiling .\n? state officials also believe that energy suppliers will continue to game the system , because the price mitigation scheme only kicks in after a stage 2 emergency and does not require any collusion .\n? even when the price caps kick in , they are based on the cost - plus for the highest cost producer supplying power to california and do not require wholesalers to abide by the cap . the generators can also charge above the cap , provided they can subsequently justify the excess charge to ferc .\n3 . proposal \" kill clause \" adds to the political dilemma for davis\nthe ferc proposal includes a \" kill clause \" that says the caps will be withdrawn unless california ' s iso agrees by june lst to become part of the regional grid now under ferc control . if davis doesn ' t sign on to the regional grid by june lst , then he will have to live with june 2 nd headlines blaming him for letting the \" bush price caps plan \" collapse .\n4 . growing fiscal risk in california\nsources speculate that california could therefore pay as much as $ 20 billion on power this summer - this is more than the combined enterprise value of pg & e and sce . these sources believe that , because of the severity of the situation , the ferc and / or the federal government will be forced to take further action to control prices for power .\nthe consensus is that the state of california will run out of money in about 90 days . one of the first projects to be cancelled will be state plans to finance new power plant construction in exchange for long - term power deals . the bleak fiscal picture is also causing bank creditors to revisit the bridge loans they are providing to california .\nthe bush administration and the fed are only now waking up to the seriousness of the fiscal picture . the country ' s largest and most prosperous state will have gone from large surpluses to serious debt downgrades and devastating deficits in a matter of months .\n5 . qfs to seek advance payment from pg & e\nmeanwhile , on the bankruptcy front , the qfs reportedly will ask the bankruptcy judge today to give them advance payment from pge ' s accounts , since their natural gas vendors have likewise demanded advance payment for gas . it appears very unlikely that the qfs ' request will be granted . if the qfs do not receive advance payment , it is likely that most of the 4 , 000 mw of gas - fired qf capacity will remain offline .\n6 delays likely in new qf generation\nthe qf deals made with the state for long - term contracts are being continually renegotiated , which is likely to mean that the new plants those contracts are supposed to finance will not be online as early as anticipated .\n7 . consumer groups ready to challenge constitutionality of sce bailout plan\nharvey rosenfield and his colleagues reportedly have been reviewing an analysis of the mou for the sce bailout plan . the analysis was done by a utilities analyst , rather than a lawyer , though it appears to raise a number of good legal points . for example , one of the elements of the mou is a \" non - bypassable \" charge on ratepayers that would require them to pay even if they disconnect from the grid . this is effectively a tax , since there is no exchange of value for money , which under the ca constitution cannot be used to directly benefit a private entity . this makes the bonds that would be issued are general obligation bonds , rather than revenue bonds . according to the constitution , the state cannot be put into debt to benefit a private company . for this and other reasons , even if the republicans would vote for the sce bailout , which remains unlikely , the bailout probably would not stand a likely constitutional challenge .\n8 . governor hurt by continued failure to disclose long - term power contracts\nthe issue of the governor ' s failure to disclose the details of the long - term power contracts continues to distress the other players in the crisis . even if he were to disclose everything he and his staff have been negotiating , it is likely that their actions and negotiations will challenged , creating an even further delay .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.755+0000", "entityId": 10623, "properties": {"text": "Subject: real options conference programs ( ucla , july 11 - 14 )\nplease find attached the programs for the two back - two - back conferences on real options at ucla ( you may also download them from www . realoptions . org and www . rogroup . com ) . the two conferences are separate but complementary events . the first conference , co - sponsored with accenture and morgan stanley dean witter , on july 11 - 12 , is a professional conference on real options valuation in the connected economy : high tech , pharma , energy , corporate valuation & strategic / portfolio management . for information and online registration see www . rogroup . com .\nthe second is the 5 th annual international conference on real options : theory meets practice ( the annual industry event where academics and practitioners get together to share the latest developments on theory and applications ) , co - organized with the anderson school at ucla on july 13 - 14 . for information and online registration see www . realoptions . org\nbetween the two complementary events , we are pleased to present an extensive array of practitioner and cutting - edge academic presentations , sharing of experiences by corporate executives , and panel discussions by experts from leading organizations and universities . our keynote speaker this year will be eduardo s . schwartz of ucla .\ninterested participants must register for the conference online www . realoptions . org ) and indicate hotel preferences by may 31 or asap .\nwe look forward to seeing you at this exciting event , and would appreciate if you share this with interested colleagues .\nlenos trigeorgis\n- 5 2001 . doc\n- 5 2001 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.760+0000", "entityId": 10624, "properties": {"text": "Subject: from the enron india newsdesk - april 27 th newsclips\nfyi news articles from indian press .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n04 / 27 / 2001 08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnikita varma\n04 / 27 / 2001 07 : 51 am\nto : nikita varma / enron _ development @ enron _ development\ncc : ( bcc : sandeep kohli / enron _ development )\nsubject : from the enron india newsdesk - april 27 th newsclips\nfriday apr 27 2001 , http : / / www . economictimes . com / today / cmo 3 . htm\ndpc board empowers md to cancel mseb contract\nfriday apr 27 2001 , http : / / www . economictimes . com / today / 27 compl 1 . htm\nmseb pays rs 134 cr under ' protest ' to dpc\nfriday , april 27 , 001 ,\nenron india md authorised to terminate ppa\nfriday , april 27 , 2001 , http : / / www . financialexpress . com / fe 20010427 / topl . html\nforeign lenders slam brakes on disbursements to dpc , sanjay jog & raghu mohan\nglobal banks comfortable with enron pull - out\nfriday , april 27 , 2001 , http : / / www . indian - express . com / ie 20010427 / nat 23 . html\nenron : dabhol chief gets powers to end deal with the mseb\nfriday , april 27 , 2001 , http : / / www . the - hindu . com / stories / 0227000 d . htm\noffer of renegotiation ' too late ' : enron , by mahesh vijapurkar\nfriday , 27 april 2001 , http : / / www . timesofindia . com / today / 27 home 2 . htm\nenron ready to pull out , but lenders say wait\nfriday , april 27 , 2001 , http : / / www . hindubusinessline . com / stories / 142756 dh . htm\ndpc board authorises md to issue ppa termination notice\nfriday , april 27 , 2001 ,\nenron testing maharashtra ' s nerves , t n raghunatha\nfriday , april 27 , 2001 , http : / / www . telegraphindia . com /\nenron signal to switch off dabhol power\nfriday , april 27 , 2001 ,\nenron threatens to pull out\nfriday , april 27 , 2001 ,\n' dpc may not wind up '\nfriday , april 27 , 2001 ,\nenron offers ' no comment ' on renegotiation , h s rao\nhttp : / / www . afternoondc . com /\n' enron ' s on ! '\nstate govt . to renegotiate dabhol power project , by hubert vaz\nthe economic times , friday apr 27 2001\ndpc board empowers md to cancel mseb contract\nthe enron power project crisis on thursday deepened with the board of dabhol\npower company authorising the management to issue a termination notice to the\nmaharashtra state electricity board even while international lenders to the\nproject asked enron to renegotiate power purchase agreement signed with the\nmseb .\nthe decision to authorise managing director neil mcgregor to issue \" notice of\ntermination on the contract to sell 740 mw of power \" was taken after the\nboard prevented mseb from voting on the ground that it was an interested\nparty . the decision was taken with six votes in favour and the single\nopposition vote was cast by idbi , sources said .\naccording to reports , financial institutions such as anz investment bank ,\ncredit suisse first boston , citibank , abn - amro and the state bank of india\nhave on wednesday advised enron against terminating its ppa with mseb . mseb\nchairman vinay bansal , who with two other directors attended the meeting on\nwednesday representing maharashtra \u0001 , s 15 per cent stake in the near $ 3 - billion\nproject , said : \" the indian side told them that it would be unfortunate if\nenron broke the contract . \" while bansal declined comment on the board\ndecision , the sources said the indian side had expressed its interest to\nholds talks on the issue rather than terminating the project and there were\npossibilities of a fresh power purchase agreement between the company and the\nstate . ( pti )\nthe economic times , friday apr 27 2001\nmseb pays rs 134 cr under ' protest ' to dpc\ndespite the threat of a possible termination notice hanging on its head ,\nmaharashtra state electricity board on thursday made a \" protest payment \" of\nrs 134 crore disputed amount , towards march bill of rs 146 . 64 crore to\ndabhol . \" we were ready with the payment on wednesday itself , but dpc\nofficials could not collect the cheque due to the statewide bandh \" , a senior\nmseb official said . \" we have disputed payment of rs 12 . 64 crore and it would\nbe now taken up at the disputes resolution forum , of which enron india\nmanaging director k wade cline and krishna rao are members \" , mseb sources\nsaid .\nlast week , dpc had dashed off a communication to the government and mseb that\nit would not accept \" protest payments \" anymore . cline had said the energy\nmajor shall treat such payments as an election to pay the sums , which mseb in\nfact owed dpc in full and that the company would also not recognise the\n\" purported protest or reservation \" . mseb had paid a rs 113 . 5 crore february\nbill in protest last month . on april 23 last , both domestic and international\nlenders of dpc had met in london and held exhaustive discussions the\nmultinational ' s move to issue a termination notice to mseb and state\ngovernment . ( pti )\nbusiness standard , friday , april 27 , 001\nenron india md authorised to terminate ppa\nthe board of the enron - promoted dabhol power company ( dpc ) , at its meeting in\nlondon on wednesday , authorised the managing director of enron india to issue\na notice for terminating the power purchase agreement to the maharashtra\nstate electricity board and the state government . \u0001 & the board has authorised\nwade cline to serve the termination notice . however , this does not mean that\nthe termination notice will be served immediately . it is only an enabling\nprovision and will be used only if the situation arises , \u0001 8 a state government\nsource told business standard from london . he said dpc was under pressure\nfrom its lenders .\nthe dpc spokesperson here refused to comment on the issue . the hardening of\nthe board \u0001 , s stand is in sharp contrast to the advice of dpc ' s lenders , who\nhad warned enron not to precipitate matters by issuing a termination notice .\nthe lenders had arrived at a consensus that the termination notice need not\nbe served at this stage . serving of the notice requires a nod from the\nlenders , who have an exposure of about $ 2 billion in the project . sources\nsaid given the lenders ' strong opposition to termination of the contract , the\nenron board ' s \" enabling resolution \" did not have much significance beyond\nconveying a hardening of its stand with regard to the current imbroglio . the\nmaharashtra chief minister had warned enron not to scuttle the process of\ncrisis resolution by issuing a termination notice . the state government is to\nnominate an expert group to renegotiate the terms of the dabhol contract .\nenron holds 65 per cent in dpc , while us - based ge and bechtel hold 10 per\ncent each . the balance 15 per cent is held by mseb through a special purpose\nvehicle , maharashtra power development corporation . the mseb representatives\nwere not allowed to vote at the meeting since they were an interested party .\nthe idbi representative protested against the board ' s decision . the meeting\nwas attended by state energy secretary vm lal . the meeting was held against\nthe backdrop of a dispute between mseb and dpc over payment of bills .\nafter mseb failed to pay rs 102 crore towards the december 2000 bill , dpc\ninvoked the state government ' s guarantee and then the union government ' s\ncounter guarantee . when payment of the rs 127 - crore january bill became\noverdue , dpc again invoked the state government ' s guarantee . mseb retaliated\non january 28 , 2001 by slapping a rs 401 - crore penalty for non - supply of\nelectricity at adequate levels . it demanded that dpc adjust the bills against\nthis penalty . \" this stand of mseb was explained to dpc at the board meeting \" ,\na state government official said . the centre also supported mseb ' s stand and\nrefused to honour the counter guarantee . the power company then invoked the\npolitical force majeure clause . a process of conciliation and arbitration\nbetween the centre and dpc is currently on .\nthe financial express , friday , april 27 , 2001\nforeign lenders slam brakes on disbursements to dpc , sanjay jog & raghu mohan\nglobal banks comfortable with enron pull - out\nlenders to the dabhol power company ( dpc ) are a sharply divided lot .\ninternational lenders , in direct contrast to the stand taken by local ones\nled by the the industrial develoment bank of india ( idbi ) , are categorical\nthat additional assistance to dpc \u0001 , s phase - ii will be held in abeyance despite\nthe completion of 92 per cent of the project work . the stage is also set for a\npreliminary termination notice to be served by dpc to the maharashtra state\nelectricity board ( mseb ) within the next four weeks . this follows the\nauthorisation given to enron india \u0001 , s managing director k wade cline and dpc\npresident & ceo neil mcgregor to serve the termination notice , and transfer\nnotices to mseb , following wednesday \u0001 , s dpc board meeting in london .\nthe essence of the message from the international lenders following the\nlondon meeting with dpc board is : emotions do not work . contractual\nobligations and payments have to be met . we are convinced that the mseb has\nfailed to meet its obligations . there is no point in enron continuing with\nthe project and the company should get out of it . the structuring of dpc \u0001 , s\ndebt has created two classes of lenders . in phase - i , international lenders\nare covered by a sovereign guarantee while in phase - ii , no lender is .\nhowever , all lenders have a parri passu charge , making attachment of assets a\nmessy affair .\nsources in international banks were quick to point out that local lenders to\nphase - ii of the project are worried that an awry dpc project will affect\ntheir interests more given that they have no security \u0001 * other than assets \u0001 *\nlike a sovereign cover . \u0001 & it was this desperation that made local lenders like\nidbi slash the interest rates a few months back to 16 . 5 per cent from 21 . 5\nper cent , \u0001 8 a leading foreign banker pointed out . three points that were made\nclear and stressed in no uncertain terms by international lenders were : a )\nthere are contractual obligations b ) mseb was not punctual in its payments to\ndpc and c ) mseb adopted a confrontational position by slapping a rs 401 crore\nrebate charge on dpc for misdeclaration and default on the availability of\npower .\nwhile local lenders led by idbi \u0001 * with mseb parroting the same \u0001 * were of the\nview that the current situation is a temporary one , international lenders\nwere steadfast that pulling out of the project is the only way out . this is\ndespite the stance taken by idbi and mseb that authorisation for termination\ngiven to mr cline and mr mcgregor was not called for . international bankers\npointed out that they will now have to look at the issue of charges and\nprotection for their loans in the event of the power project being scrapped\nin its present form . the points of contention are : a ) that phase - i of dpc is\nbacked by a sovereign guarantee b ) phase - ii is not and c ) to the extent that\nphase - ii is covered by assets , cancellation of phase - ii may see all assets \u0001 *\neven those under phase - i \u0001 * getting attached . therefore , an examination on the\nsegregation of assets under phase - i and phase - ii is now warranted .\npti adds : in a significant move , dpc board has empowered its management to\nsever power supply agreement with mseb , a move that could inflict a financial\nliability of about rs 2840 crore on the centre . a decision to authorise dpc\npresident neil mcgregor to issue a termination notice to mseb for sale of\npower was taken by the board at its meeting on wednesday .\nthe indian express , friday , april 27 , 2001\nenron : dabhol chief gets powers to end deal with the mseb\nthe board of dabhol power company , a subsidiary of houston - based enron corp ,\nhas decided to warn the maharashtra state electricity board ( mseb ) that it\nintends to pull the plug on its guhagar - based project . in a board meeting held\nin london on wednesday , the board decided to authorise dpc president and ceo\nneil mcgregor and enron india \u0001 , s managing director k wade cline to serve a\n\u0001 + \u0001 + preliminary \u0001 , \u0001 , termination notice for sale of power to the mseb within the\nnext four weeks . the dabhol project has been mired in disputes since mseb\nbegan missing payments last year . mseb owes dabhol power $ 48 million for\npower delivered in december and january . the payment ran into a dispute after\nmseb slapped penalty notices of rs 401 crore on dpc for its failure to supply\npower within three hours of the demand being placed . but mseb has paid $ 24\nmillion for february . and a payment of $ 31 million was made for march on\nthursday .\nthe $ 3 billion dabhol project is the largest foreign investment made in india\nto date . issuing the preliminary termination notice could enable dabhol to\nsuspend deliveries as it negotiates payment disputes . while a preliminary\ntermination notice is the first of three steps that could potentially lead to\nthe abandonment of the project by enron , analysts have described the decision\nas a \u0001 + \u0001 + procedural \u0001 , \u0001 , move consistent with dpc \u0001 , s negotiating strategy to\nrecover overdue payments from the mseb .\nafter the company issues the preliminary termination notice , step two would\nbe an official termination notice , and step three would be a notice that the\ncompany is surrendering control of the project . if the project is terminated ,\nthe government of india will have to take a hit of $ 300 million besides\npaying bills of rs 1 , 500 crore for the next one year to enron as penalty .\n\u0001 + \u0001 + our ( centre \u0001 , s ) liability , if dabhol power project is terminated , would be\none year \u0001 , s electricity bill and a termination fee of $ 300 million , \u0001 , \u0001 , power\nsecretary a k basu said . \u0001 + \u0001 + contractually , the centre will have to pay one year \u0001 ,\ns electricity bill , totalling at present prices about rs 1 , 400 - 1 , 500 crore ,\nand take over dpc \u0001 , s debt , which stands at around $ 300 million , if the project\nwas terminated , \u0001 , \u0001 , basu said in delhi . dabhol power is in the process of\ncompleting the second phase of the 2 , 184 - megawatt power - plant project , which\nis 95 per cent through .\nwhile the international lenders to the project are pressurising the company\nto get out of the project , indian lenders , led by idbi , are asking the\ncompany to reconsider its decision on its termination notice . during the\nmeeting in london , mseb which holds a 15 per cent stake in the project , had\nstrongly opposed dpc \u0001 , s move to authorise cline and mcgregor to issue notices\nfor termination .\nmseb chairman vinay bansal and technical director prem paunikar \u0001 * both\ndirectors on the dpc board \u0001 * and the state principal secretary ( energy ) vm\nlal , an invitee to the board , raised the issue at the board meeting in\nlondon . mseb claimed that dpc was needlessly \u0001 + \u0001 + threatening \u0001 , \u0001 , to issue various\narbitration notices and thereby interpreting the clauses of ppa in\nisolation . in recent weeks , dabhol has raised the stakes in its spat with the\nmseb , delivering a notice of political force majeure to maharashtra \u0001 * a step\ntypically invoked to dissolve a contract in case of an emergency like a war ,\ncoup , or a similar radical political event . in this case , dpc \u0001 , s move was\nviewed as a threat to stop providing electricity . dpc has come under fire\nbecause of the relatively high cost of its power . critics object to the\ncompany charging rs 7 . 1 a kilowatt - hour for its power , compared with around\nrs 1 . 5 a kilowatt - hour charged by other suppliers .\nthe hindu , friday , april 27 , 2001\noffer of renegotiation ' too late ' : enron , by mahesh vijapurkar\nmumbai , april 26 . the enron - sponsored dabhol power company , which last night\nauthorised its local management to issue a notice of termination of its power\npurchase agreement ( ppa ) with the maharashtra state electricity board , has\ndecided to keep a stiff upper lip . this , in turn , has stoked speculation that\nthe switching off of power from its phase i plant was imminent , while in\nreality , a lengthy procedure has to be followed as prescribed within the ppa .\nas one source familiar with the ppa told the hindu , ` ` it is not sudden death\nof the project ' ' and in all probability , the dpc , vexed with the\ndevelopments , including sharp and pointed observations by the godbole\ncommittee , has chosen to only arm itself with a serious option . ` ` this would\nonly eventually come into effect . it is not an overnight operation and a lot\nof legal work is involved ' ' . apparently , the dpc intends to do some\narm - twisting .\nat the board of directors meeting in london , which maharashtra was initially\ndisinclined to attend but later used the forum to put across its contentions\non the project , the dpc squarely told the mseb nominees on the board that the\noffer of renegotiation had come rather ` ` too late ' ' . it also said it did not\nsee any room for optimism about the outcome . it did not , however , rule out\nthe option of talks , thus underscoring the possibility that the decision to\nauthorise termination was a new weapon .\nthe maharashtra chief minister , mr . vilasrao deshmukh , had hoped that dpc\nwould not take any ` ` harsh step ' ' which would cause lot of damage to the\ninterests of both the independent power producer and the government and today\nhe expressed his dismay . in fact , the mandate of the team that went , on the\nstrength of its stake in the dpc , was to put across the idea that negotiation\nwas the requirement and not confrontation .\necho in ls\nthe enron issue also echoed in the lok sabha today where the power minister ,\nmr . suresh prabhu , said that scrapping of the agreement would cost the centre\nrs . 2 , 840 crores , whose liability in the project agreement was limited . the\ncentre ' s liability in case of termination is one year ' s electricity bill and\na termination fee of $ 300 million .\nblow to fis\nthe termination could prove to be a serious blow to the indian financial\ninstitutions ( fis ) which , under the leadership of the idbi , were trying to\nconvince the other lenders of the project against the notice . the exposure of\nindian fis in the project is understood to be not covered by any guarantee\neither of the centre or the state .\nthe times of india , friday , 27 april 2001\nenron ready to pull out , but lenders say wait\nthe dabhol power company board , which met on wednesday in london , authorised\nthe company management to issue a termination notice to the maharashtra state\nelectricity board . the company , however , may not pull out of the project yet ,\nconsidering its lenders , who met on monday , opposed such a move and favoured\nrenegotiations . sources present during both the meetings said that though\nforeign lenders supported enron on the termination issue , domestic financial\ninstitutions , led by the industrial development bank of india , prevailed over\nthe deliberations to oppose any such drastic move . enron needs the lenders '\nconsent to file a pre - termination notice for pulling out from the project .\nthe decision to empower dpc chief wade cline to issue a termination notice\nwas taken with six votes in favour against a single idbi vote against such a\nmove .\nanother significant development during the entire proceedings was that the\nfinancial institutions made it clear that further funding of phase ii of the\nproject will depend on the government of india assuring payment mechanisms .\ninstitutions are yet to disburse about 30 per cent of the sanctioned package ,\nwhich is crucial for completing the phase ii expansion project . ` ` the board\nhas given powers to wade cline to issue a pre - termination notice . but the\nmeeting quite unanimously felt the need of the hour is not to terminate the\nproject but to initiate serious re - negotiation proceedings , ' ' said mseb\nchairman vinay bansal , who attended the board meeting . ` ` mseb presented their\nviews to the board members and it was understood by enron which also included\nthe rs 401 crore penalty issue which is heading for arbitration proceedings .\n` ` we have also made it clear that the tariff structure of enron is quite high\nand a downward revision of tariffs is unavoidable , \" bansal added .\n` ` they cannot issue a termination notice without our consent since our\nexposure in the project is quite large and the lenders should approve any\nplans in that direction , ' ' said a top banker who was present during the\nlenders ' meet . ` ` there is a general consensus that the project must be\ncompleted and the proposal to terminate the ppa should be kept in abeyance , ' '\nhe added . the global arrangers for the dpc include anz investment bank ,\ncredit suisse first boston , abn - amro , citibank and the state bank of india ,\nwhere all these parties conducted separate meetings with the company\nofficials . however , some bankers said the company can file a termination\nnotice even if one lender with a minimum 5 per cent exposure on the project\nfavours such proceedings .\nmeanwhile , in a clear reversal of roles , maharashtra chief minister vilasrao\ndeshmukh said that the state government was not keen on terminating the ppa .\n` ` we will ask them to refrain from taking any such harsh steps since that\nwould be bad news for all of us , including dpc , ' ' deshmukh said . deshmukh was\nechoing union power minister suresh prabhu ' s sentiments , who said that the\ngovernment wanted an amicable settlement of the payment row . he , however ,\nadded that termination of the project would not hurt foreign investments , and\ndismissed warnings by analysts that winding up the $ 2 . 9 billion project would\nbe a blow to india ' s efforts to woo foreign investors .\nthe dpc has already slapped one conciliation notice on the centre and three\narbitration notices on the state government over non - payment of dues\namounting to rs 213 crore and interest towards the bills due for december\n2000 and january 2001 . meanwhile , mseb officials said in mumbai that the\nmarch bills amounting to rs 134 crore was paid on thursday as protest\npayment , despite the dispute over the amount .\nwhen asked on the future course of action , bansal said it was up to the dpc .\nthe hindu businessline , friday , april 27 , 2001\ndpc board authorises md to issue ppa termination notice\nthe board of directors of dabhol power company ( dpc ) has authorised the\nmanaging director , mr neil mcgregor , to issue the notice of intent to\nterminate its power purchase agreement ( ppa ) with the maharashtra state\nelectricity board ( mseb ) ` ` at an appropriate time ' ' . the decision was taken\nat a board meeting held in london yesterday . ` ` while mseb , which is an\n` interested party ' , was not allowed to vote , it made a presentation\nclarifying its stand on the matter , ' ' a senior state government official\nsaid .\nthe resolution to authorise the management to issue the termination notice\nwas carried by six votes to one . idbi voted against the decision , the\nofficial said . the serving of the preliminary termination notice will lead to\na six - month ` ` suspension period ' ' . according to clause 17 . 8 of the\ntermination procedure , of the ppa : ` ` following the giving of a preliminary\ntermination notice , the parties shall consult for a period of six months ( or\nsuch longer period as they may agree ) as to what step shall be taken with a\nview to mitigating the consequences of the relevant event having regard to\nall the circumstances . . . ' '\nidbi and state bank of india , the principal indian lenders , had earlier\npersuaded the overseas lenders to hold their consent to the termination\nnotice for some more time . at least one lender has to consent for the company\nto serve termination notice . it is understood that overseas lenders are in\nfavour of termination of the project and are prepared to consent . however ,\ndomestic lenders are worried about the security of their advances if the ppa\nis abandoned mid - way .\naccording to institutional sources , indian lenders are trying to get all the\nparties concerned to thrash out outstanding issues . the maharashtra and\ncentral governments too are in favour of a conciliation . mr vilasrao\ndeshmukh , chief minister of maharashtra , yesterday went on record that the\nstate did not want the project terminated . mr yashwant sinha , union finance\nminister , is also understood to be of the same opinion . ` ` the dpc will now\nhave to decide what is the ` appropriate time ' to serve the notice , ' ' the\nofficial said . mseb pays rs 134 crore : meanwhile , mseb has paid dpc rs 134\ncrore towards its march 2001 bill . mseb officials confirmed that the bill was\npaid ` in protest ' ' today morning . ` ` they ( dpc ) had billed us for an amount of\nrs 146 crore . we do not agree with some of the items included , ' ' a senior\nmseb official said .\nthe pioneer , friday , april 27 , 2001\nenron testing maharashtra ' s nerves , t n raghunatha\ndabhol power company ( dpc ) has begun to put fresh pressure on the maharashtra\nstate electricity board ( mseb ) , the maharashtra state government and the\ncentre for an early resolution to the prolonged dispute between them , if the\ndpc board of directors ' decision to authorise its managing director to serve\na contract termination notice to the mseb is any indication .\nthe dpc board , in its meeting in london on wednesday , empowered the company\nmanagement to sever its power supply agreement with mseb , a move that could\ninflict a financial liability of rs 2 , 840 crore on the centre . the decision\nto authorise the dpc management to issue a termination notice to mseb was\ntaken by a vote of six to one after the maharasthra government\nrepresentatives were prevented from voting on the ground of \" interested\nparty \" .\nwhen contacted , the company ' s mumbai - based spokesperson , mr jimmy mogal ,\ndeclined to comment on the reports about the decision taken by the dpc board .\n\" we have nothing to say on the reports emanating from london . we will express\nour views after a few days , \" he said . however , maharashtra chief minister\nvilasrao deshmukh on thursday termed the dpc board ' s decision as\n\" unfortunate \" . \" we have already requested the company not to take any harsh\ndecision \" , mr deshmukh said in mumbai .\nofficial sources in the state energy ministry interpreted the dpc board ' s\ndecision as a pressure tactic employed by the enron subsidiary to force the\nmseb to clear the pending power bills without any further delay . through its\ntough posture , the dpc wants to make its position stronger before it can\nformally agree for re - negotiations with the mseb , the centre and the state\ngovernment for cutting the price of power supplied by it to the state\nelectricity board . the sources said that the dpc ' s reported decision to\nauthorise its managing director to stop electricity supply to the mseb did\nnot mean that the enron subsidiary would actually go ahead with the scrapping\nof the power contract with the mseb .\n\" if anything , the dpc ' s reported decision is to mount additional pressure on\nthe mseb for clearance of pending power bills and put itself in a stronger\nposition in settling its dispute with the mseb . as part of its plan to arm\nitself with powers to break a contract in case situation goes beyond its\ncontrol , the dpc had recently served a political force majeure to the mseb ,\nthe centre and the state government , \" the sources said . not surprisingly , the\ndpc ' s london decision comes on the heels of the maharashtra government ' s\ndecision to set up a high - level committee , comprising representatives of the\nmseb , the centre and the state government to re - negotiate with the enron ' s\nsubsidiary company for reducing the cost of power supplied to the state\nelectricity board . meanwhile , amidst the threat of a possible termination\nnotice hanging on its head , the mseb on thursday made a \" protest payment \" of\nthe rs 134 crore disputed amount towards march bill of rs 146 . 64 crore to dpc .\nriday , april 27\nthe telegraph , friday , april 27 , 2001\nenron signal to switch off dabhol power\nenron today took the first decisive step out of the controversy - ridden dabhol\npower company when it won an authorisation from the company \u0001 , s board to stop\nsale of power to maharashtra state electricity board ( mseb ) .\nthe meeting of the company , of which the houston - based energy giant holds 65\nper cent and the mseb 15 per cent , was attended by state energy secretary v m\nlal and mseb technical director p paunikar and it came days after its lenders\ndiscussed payment problems and a possible termination . the centre \u0001 , s liability ,\nif enron decides to snap the agreement , will be a year \u0001 , s power bill and a\ntermination fee of $ 300 million . however , the company will have to wait for\nsix months from the day it serves the notice before it pulls the plug . the\ncentre shrugged off the move , saying there would not be any adverse effect on\nforeign investment in power if enron walks out . \u0001 & we do not see fdi inflows\ninto the power sector being hit , \u0001 8 power minister suresh prabhu said . mseb\nofficials said the ball is now in the court of dpc , which said its corporate\npolicy did not allow it to comment on proceedings at board meetings . the\ndecision coincided with a rs 134 - crore \u0001 + protest payment \u0001 , by the cash - strapped\npower board as part of the march bill worth rs 146 . 64 crore .\nthere was speculation that mseb coughed up the amount to cool frayed tempers\nat enron \u0001 , s hub in houston , and because it was rattled by the sudden turn of\nevents in the past few days during which the dispute had come to a head . mseb\nofficials brushed away the allusions , saying the cheque was ready on\nwednesday but could not be handed over to dpc because of the state - wide\nbandh . \u0001 & we have a disputed payment of rs 12 . 64 crore , which will be taken up\nat the dispute - resolution forum , \u0001 8 a board official said . last week , dpc told\nthe state government and mseb it would no longer accept protest payments in a\nmove to fortify its legal position .\nmseb officials say bechtel and general electric , the other partners who hold\naround 20 per cent in dpc , are willing to go along with enron corp in\nterminating the deal but financial institutions such as idbi are not game\nbecause it puts their loans at risk . investments made by indian institutions\nare not covered under the centre \u0001 , s and state \u0001 , s counter - guarantees , unlike\nthose made by international lenders . maharashtra chief minister vilasrao\ndeshmukh called enron \u0001 , s decision unfortunate . \u0001 & we had told state government\nofficials attending the enron board meeting to stop the company from winding\nup its operations in the state as it will harm both parties . \u0001 8\nthe statesman , friday , april 27 , 2001\nenron threatens to pull out\nthe enron crisis deepened with the board of directors of the dabhol power\ncompany deciding to authorise the managing director , mr k wade cline , to\nserve a notice of termination on the contract for the first phase of the $ 2 . 9\nbillion power project . the decision , which could lead to the cessation of\ndabhol \u0001 , s power supply to the state , was taken at the meeting held yesterday\nin london according to reports quoting the chairman of the maharashtra state\nelectricity board , mr vinay bansal .\nwhile dpc officials refuse to comment on anything , it is learnt that mseb was\nitself prepared to serve a legal notice of termination just two days before\nthe meeting . mseb was said to have been dissuaded by the nationalist congress\nparty president , mr sharad pawar , and union power minister mr suresh prabhu ,\nwho had talks in new delhi with the maharashtra chief minister , mr vilasrao\ndeshmukh , and an mseb delegation last monday .\nthe state government has been served two arbitration notices while the centre\nis ready to go for conciliation with the dpc for failing to honour its\ncounter - guarantee . further , the dpc has already slapped a notice of political\nforce majeure which protects itself against undeserved claims in the event of\nexigencies that force it to take an extreme step . the union power minister , mr\nsuresh prabhu , contended in delhi that since dpc contributed only 0 . 7 per\ncent of the total energy output of the country , its termination would not\nhave such a phenomenal impact on the power situation .\nhowever , if terminations proceedings go through , enron corp , a 65 per cent\nshare - holder in the dabhol power company , would stand to net a hefty amount\nin damages . the union power secretary has been quoted as saying that\ntermination of the dpc would cost the centre rs 1 , 800 crore , which is the\ntotal of one years \u0001 , electricity bill and a termination fee of $ 300 million .\naccording to an energy analyst , mr pradyumna kaul , the total liability would\nnot cross rs 350 crore . however mr prabhu said in the lok sabha today that\nthe that scrapping of the agreement would cost the centre rs 2 , 840 crore . it\nis learnt that on 20 april , mr deshmukh had given the go - ahead to the mseb to\nprepare a legal notice to be issued to enron during the meeting of the dpc \u0001 , s\nboard of directors on wednesday . at the meeting , the energy minister ,\npadamsinh patil , energy secretary , mr vinay mohan lal and mseb chairman mr\nvinay bansal , were also present . the notice was prepared over the past weekend\nand taken by the delegation when they called on mr prabhu on 24 april .\nhowever , the politicians convinced them that enron would not get tough , given\nits huge stake in the project , and that such a notice would not be necessary .\nthe meeting thus ended with the decision to renegotiate the power tariff ,\nwith enron \u0001 , s consent .\namong those present at the london meeting were mr lal , mr bansal and mseb\ntechnical director , mr p paunikar , in their capacity as directors . however ,\nthey abstained from voting since they were deemed an interested party . the\nonly vote to go against the decision was that of the idbi which is also\nrepresented on the board , it is learnt . the chief minister , mr vilasrao\ndeshmukh , said the state was not in favour of terminating the project . this\ncould mean that the latest manoeuvre to arm - twist the indian authorities\ncould achieve its immediate target of getting the arrears accumulated over\nthe past three months cleared . the mseb owes enron rs 146 . 64 crore for march\n2001 and rs 229 crore for december 2000 and january 2001 . the centre today put\nup a brave face on enron \u0001 , s decision saying there would not be any adverse\neffect on foreign investment in power sector in the country , pti reported\nfrom new delhi .\n\u0001 & there will be no adverse impact as a result of any action by any domestic or\nforeign company . as far as we are concerned there will be no adverse impact\non fdi in power sector , \u0001 8 power minister suresh prabhu told reporters when\nasked about dpc \u0001 , s decision to authorise management to issue a termination\nnotice to mseb . emphasising that there would be no fallout of such decision ,\nprabhu said after the meeting of the cabinet committee on economic affairs\n\u0001 & we are expecting cooperation from many scandinavian countries as well as\neuropean nations in the power sector . \u0001 & in fact not only the power minister but\nalso the prime minister of norway was here to inaugurate a seminar on power\nand he promised lot of cooperation in the sector . \u0001 8\nmid day\n' dpc may not wind up '\nmaharashtra chief secretary v ranganathan has said that though neil mcgregor ,\nmanaging director of the dabhol power corporation ( dpc ) , has been given\ncomplete powers with regard to dpc ' s operations in the state , including the\nauthority to wind up operations , it does not necessarily mean that mcgregor\nwill issue such a termination notice . mcgregor was given the powers at a\nmeeting of the dpc board in london on wednesday . ranganathan said that state\nofficials , including maharashtra state electricity board ( mseb ) chairman\nvinay bansal and power secretary v m lal , have reported back to him about the\nmeeting in london .\nwith regard to the state ' s failure to pay enron , ranganathan said , \" bills\nare prepared as per the power purchase agreement ( ppa ) and dpc owes some\nmoney to us . our people informed enron officials about this . . in fact , there\nwas no reason to give powers to the md to slap a termination notice . \" in the\nlondon meeting , mseb and industrial development bank of india ( idbi )\nrepresentatives insisted that the dpc must pay rs 411 crore since it could\nnot supply power whenever needed .\nchief minister vilasrao deshmukh has already termed as unfortunate the\ndecision of the board of the enron - promoted dpc to give mcgregor powers to\nwind up operations . deshmukh added , \" we have already requested enron not to\ntake any harsh decision . \" deshmukh had earlier said , \" we have directed state\ngovernment officials attending the dpc board meeting to desist the energy\ncompany from winding up operations in the state , as it would be harmful to\nboth of us . \"\nenron officials are keeping mum on the issue . mcgregor said , \" i am not going\nto give any comment . \"\nmid day , april 27 , 2001\nenron offers ' no comment ' on renegotiation , h s rao\na crucial meeting of the board of directors of the dabhol power company\n( dpc ) , promoted by the us energy major enron , was held here yesterday\napparently to discuss fate of its $ 900 - million power project in maharashtra ,\nbut there was no official word on the indian and state governments ' decision\nto renegotiate the contract .\nan enron spokesman declined to divulge what transpired at the meeting , saying\nthe issues discussed at the meeting were ' confidential ' . \" we have not\nreceived any direct communication . unless we get it and evaluate the details ,\nwe have no comments to make , \" the spokesman said when asked about the\nproposed decision on re - negotiation of the project in which the maharashtra\nstate electricity board ( mseb ) has 15 per cent stake .\nasked whether the board had taken a decision on empowering dpc managing\ndirector neil mcgregor to wind up its operations in india , the spokesman said\nhe had nothing to say on them . enron has reportedly authorised mcgregor to\nlook at various options including selling the company ' s stake in dpc .\nmaharashtra chief minister vilasrao deshmukh said in mumbai that the state\ngovernment would pay up the undisputed dues to the company . he said the\nmaharashtra government \" is not in favour of terminating the 2184 - mw project ,\nbut wanted an amicable solution to the imbroglio . \"\nmid day , friday , april 27 , 2001 ,\ncommittee to renegotiate enron deal\na committee to renegotiate the power purchase agreement with the dabhol power\ncompany will be appointed by this evening , chief minister vilasrao deshmukh\nsaid today . addressing media persons after his meeting with the noted social\nreformer anna hazare at his official residence varsha , deshmukh said the\ncommittee would be formed by this evening or by tomorrow , at the most . he\ntermed as unfortunate the enron board decision empowering dpc chief neil\nmcgregor to serve a preliminary termination notice on the maharashtra state\nelectricity board and said the state was willing to negotiate the issue with\npower company .\n\" renegotiations will be held as per the suggestions made by the godbole\ncommittee and the center will also depute its representative on the\nrenegotiating committee . we don ' t want to take any hasty decision , \" deshmukh\nsaidhe pointed that the only bone of contention with the dpc had been its\nexpensive tariff and hoped that the issue would be resolved amicably . when\npointed that the enron board had taken a decision to serve the notice despite\nstate \u000f 9 s willingness to appoint a renegotiating committee , chief minister\nsaid it was unfortunate .\nearlier , in his meeting with hazare , deshmukh promised to make necessary\namendments to the right to information law recently passed by the state so\nthat the information was easily accessed by the common people . he also gave a\npatient hearing to hazare on his complaints of corruption in various state\ndepartments and promised action against guilty after a thorough inquiry\nwithin three months .\nafternoon , april 27 , 2001\n' enron ' s on ! '\nstate govt . to renegotiate dabhol power project , by hubert vaz\nthe us power giant , enron power corporation ' s willingness to wrap up the\ndabhol power project and leave the shores may not actually materialise ,\nthough the dabhol power company chief , mr . wade cline , has been authorised to\ndo so , since the lenders for the project would have a decisive say in the\nmatter .\ndisclosing this , chief minister vilasrao deshmukh confirmed this morning that\nthe state government would churn out a compromise formula by which the power\nproject at dabhol could be continued , and at the same time enron did not feel\nslighted . \" enron has not yet conveyed to us about this decision . we are\nwaiting for their letter , \" he said . when asked what sort of compromise the\nstate government plans to forge , mr . deshmukh said , \" let our officers come\nback . after that we will decide a future course of action . but we are\ndefinitely going in for renegotiation of the project . it is very difficult to\npredict the outcome of enron ' s decision but as of now the project is still\non . \" when asked whether the project could be moved to another state , if wound\nup from maharashtra , mr . deshmukh said , that was not possible as per the\nterms of the agreement between the us company and the state government .\nhowever , it was difficult for the project to move out of the state itself , he\nindicated . he also confirmed that both parties would face considerable losses\nif the project was terminated .\nthe board of directors of the dabhol power company , which met in london on\nwednesday , decided to put an end to all controversies surrounding the project\nonce and for all by empowering the dpc chief to terminate the project , if he\ndeemed it fit . however , this decision , as of now , does not necessarily\nindicate the death knell for the project . the enron project , which had been\nriddled with controversies right from its inception , had been a pretext for\nthe political parties in the state to drag each other on the mat from time to\ntime . the previous sena - bjp government , which had been out to terminate the\nproject , however , chose to continue with it following renegotiations with\nenron ' s top visiting officials like ms . rebecca mark . and , the democratic\nfront government inherited the controversial project when the governments\nchanged hands a year and a half ago .\nmeanwhile , state energy minister dr . padamsinh patil , when contacted at the\nosmanabad circuit house , said the state government and the central government\nhave decided to appoint a joint committee to renegotiate the project with\nenron . \" it is not easy for them to walk out of the project just like that .\nthey will have to go in for litigation and this would prove costly for both\nsides , \" he said . in case the project is terminated , the government can still\nmanage the power needs of the state , though it would be a bit tough job , he\nadded .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.765+0000", "entityId": 10625, "properties": {"text": "Subject: from the enron india newsdesk - april 27 th newsclips\nfyi news articles from indian press .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on 04 / 27 / 2001 08 : 24 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnikita varma\n04 / 27 / 2001 07 : 51 am\nto : nikita varma / enron _ development @ enron _ development\ncc : ( bcc : sandeep kohli / enron _ development )\nsubject : from the enron india newsdesk - april 27 th newsclips\nfriday apr 27 2001 , http : / / www . economictimes . com / today / cmo 3 . htm\ndpc board empowers md to cancel mseb contract\nfriday apr 27 2001 , http : / / www . economictimes . com / today / 27 compl 1 . htm\nmseb pays rs 134 cr under ' protest ' to dpc\nfriday , april 27 , 001 , http : / / www . businessstandard . com / today / economy 4 . asp ? menu = 3\nenron india md authorised to terminate ppa\nfriday , april 27 , 2001 , http : / / www . financialexpress . com / fe 20010427 / topl . html\nforeign lenders slam brakes on disbursements to dpc , sanjay jog & raghu mohan\nglobal banks comfortable with enron pull - out\nfriday , april 27 , 2001 , http : / / www . indian - express . com / ie 20010427 / nat 23 . html\nenron : dabhol chief gets powers to end deal with the mseb\nfriday , april 27 , 2001 , http : / / www . the - hindu . com / stories / 0227000 d . htm\noffer of renegotiation ' too late ' : enron , by mahesh vijapurkar\nfriday , 27 april 2001 , http : / / www . timesofindia . com / today / 27 home 2 . htm\nenron ready to pull out , but lenders say wait\nfriday , april 27 , 2001 , http : / / www . hindubusinessline . com / stories / 142756 dh . htm\ndpc board authorises md to issue ppa termination notice\nfriday , april 27 , 2001 , http : / / www . dailypioneer . com / secon 2 . asp ? cat = story 7 & d = front _ page\nenron testing maharashtra ' s nerves , t n raghunatha\nfriday , april 27 , 2001 , http : / / www . telegraphindia . com /\nenron signal to switch off dabhol power\nfriday , april 27 , 2001 , http : / / www . thestatesman . org / page . news . php 3 ? id = 13026 & type = pageone & theme = a\nenron threatens to pull out\nfriday , april 27 , 2001 , http : / / www . chalomumbai . com / asp / article . asp ? cat _ id = 29 & art _ id = 10006 & cat _ code = 2 f 574841545 f 535 f 4 f 4 e 5 f 4 d 554 d 4241492 f 5441415 a 415 f 4 b 4841424152\n' dpc may not wind up '\nfriday , april 27 , 2001 , http : / / www . chalomumbai . com / asp / article . asp ? cat _ id = 29 & cat _ code = 2 f 574841545 f 535 f 4 f 4 e 5 f 4 d 554 d 4241492 f 5441415 a 415 f 4 b 4841424152 & art _ id = 9953\nenron offers ' no comment ' on renegotiation , h s rao\nhttp : / / www . afternoondc . com /\n' enron ' s on ! '\nstate govt . to renegotiate dabhol power project , by hubert vaz\nthe economic times , friday apr 27 2001\ndpc board empowers md to cancel mseb contract\nthe enron power project crisis on thursday deepened with the board of dabhol power company authorising the management to issue a termination notice to the maharashtra state electricity board even while international lenders to the project asked enron to renegotiate power purchase agreement signed with the mseb .\nthe decision to authorise managing director neil mcgregor to issue \" notice of termination on the contract to sell 740 mw of power \" was taken after the board prevented mseb from voting on the ground that it was an interested party . the decision was taken with six votes in favour and the single opposition vote was cast by idbi , sources said .\naccording to reports , financial institutions such as anz investment bank , credit suisse first boston , citibank , abn - amro and the state bank of india have on wednesday advised enron against terminating its ppa with mseb . mseb chairman vinay bansal , who with two other directors attended the meeting on wednesday representing maharashtra ' s 15 per cent stake in the near $ 3 - billion project , said : \" the indian side told them that it would be unfortunate if enron broke the contract . \" while bansal declined comment on the board decision , the sources said the indian side had expressed its interest to holds talks on the issue rather than terminating the project and there were possibilities of a fresh power purchase agreement between the company and the state . ( pti )\nthe economic times , friday apr 27 2001\nmseb pays rs 134 cr under ' protest ' to dpc\ndespite the threat of a possible termination notice hanging on its head , maharashtra state electricity board on thursday made a \" protest payment \" of rs 134 crore disputed amount , towards march bill of rs 146 . 64 crore to dabhol . \" we were ready with the payment on wednesday itself , but dpc officials could not collect the cheque due to the statewide bandh \" , a senior mseb official said . \" we have disputed payment of rs 12 . 64 crore and it would be now taken up at the disputes resolution forum , of which enron india managing director k wade cline and krishna rao are members \" , mseb sources said .\nlast week , dpc had dashed off a communication to the government and mseb that it would not accept \" protest payments \" anymore . cline had said the energy major shall treat such payments as an election to pay the sums , which mseb in fact owed dpc in full and that the company would also not recognise the \" purported protest or reservation \" . mseb had paid a rs 113 . 5 crore february bill in protest last month . on april 23 last , both domestic and international lenders of dpc had met in london and held exhaustive discussions the multinational ' s move to issue a termination notice to mseb and state government . ( pti )\nbusiness standard , friday , april 27 , 001\nenron india md authorised to terminate ppa\nthe board of the enron - promoted dabhol power company ( dpc ) , at its meeting in london on wednesday , authorised the managing director of enron india to issue a notice for terminating the power purchase agreement to the maharashtra state electricity board and the state government . \" the board has authorised wade cline to serve the termination notice . however , this does not mean that the termination notice will be served immediately . it is only an enabling provision and will be used only if the situation arises , \" a state government source told business standard from london . he said dpc was under pressure from its lenders .\nthe dpc spokesperson here refused to comment on the issue . the hardening of the board ' s stand is in sharp contrast to the advice of dpc ' s lenders , who had warned enron not to precipitate matters by issuing a termination notice . the lenders had arrived at a consensus that the termination notice need not be served at this stage . serving of the notice requires a nod from the lenders , who have an exposure of about $ 2 billion in the project . sources said given the lenders ' strong opposition to termination of the contract , the enron board ' s \" enabling resolution \" did not have much significance beyond conveying a hardening of its stand with regard to the current imbroglio . the maharashtra chief minister had warned enron not to scuttle the process of crisis resolution by issuing a termination notice . the state government is to nominate an expert group to renegotiate the terms of the dabhol contract .\nenron holds 65 per cent in dpc , while us - based ge and bechtel hold 10 per cent each . the balance 15 per cent is held by mseb through a special purpose vehicle , maharashtra power development corporation . the mseb representatives were not allowed to vote at the meeting since they were an interested party . the idbi representative protested against the board ' s decision . the meeting was attended by state energy secretary vm lal . the meeting was held against the backdrop of a dispute between mseb and dpc over payment of bills .\nafter mseb failed to pay rs 102 crore towards the december 2000 bill , dpc invoked the state government ' s guarantee and then the union government ' s counter guarantee . when payment of the rs 127 - crore january bill became overdue , dpc again invoked the state government ' s guarantee . mseb retaliated on january 28 , 2001 by slapping a rs 401 - crore penalty for non - supply of electricity at adequate levels . it demanded that dpc adjust the bills against this penalty . \" this stand of mseb was explained to dpc at the board meeting \" , a state government official said . the centre also supported mseb ' s stand and refused to honour the counter guarantee . the power company then invoked the political force majeure clause . a process of conciliation and arbitration between the centre and dpc is currently on .\nthe financial express , friday , april 27 , 2001\nforeign lenders slam brakes on disbursements to dpc , sanjay jog & raghu mohan\nglobal banks comfortable with enron pull - out\nlenders to the dabhol power company ( dpc ) are a sharply divided lot . international lenders , in direct contrast to the stand taken by local ones led by the the industrial develoment bank of india ( idbi ) , are categorical that additional assistance to dpc ' s phase - ii will be held in abeyance despite the completion of 92 per cent of the project work . the stage is also set for a preliminary termination notice to be served by dpc to the maharashtra state electricity board ( mseb ) within the next four weeks . this follows the authorisation given to enron india ' s managing director k wade cline and dpc president & ceo neil mcgregor to serve the termination notice , and transfer notices to mseb , following wednesday ' s dpc board meeting in london .\nthe essence of the message from the international lenders following the london meeting with dpc board is : emotions do not work . contractual obligations and payments have to be met . we are convinced that the mseb has failed to meet its obligations . there is no point in enron continuing with the project and the company should get out of it . the structuring of dpc ' s debt has created two classes of lenders . in phase - i , international lenders are covered by a sovereign guarantee while in phase - ii , no lender is . however , all lenders have a parri passu charge , making attachment of assets a messy affair .\nsources in international banks were quick to point out that local lenders to phase - ii of the project are worried that an awry dpc project will affect their interests more given that they have no security - other than assets - like a sovereign cover . \" it was this desperation that made local lenders like idbi slash the interest rates a few months back to 16 . 5 per cent from 21 . 5 per cent , \" a leading foreign banker pointed out . three points that were made clear and stressed in no uncertain terms by international lenders were : a ) there are contractual obligations b ) mseb was not punctual in its payments to dpc and c ) mseb adopted a confrontational position by slapping a rs 401 crore rebate charge on dpc for misdeclaration and default on the availability of power .\nwhile local lenders led by idbi - with mseb parroting the same - were of the view that the current situation is a temporary one , international lenders were steadfast that pulling out of the project is the only way out . this is despite the stance taken by idbi and mseb that authorisation for termination given to mr cline and mr mcgregor was not called for . international bankers pointed out that they will now have to look at the issue of charges and protection for their loans in the event of the power project being scrapped in its present form . the points of contention are : a ) that phase - i of dpc is backed by a sovereign guarantee b ) phase - ii is not and c ) to the extent that phase - ii is covered by assets , cancellation of phase - ii may see all assets - even those under phase - i - getting attached . therefore , an examination on the segregation of assets under phase - i and phase - ii is now warranted .\npti adds : in a significant move , dpc board has empowered its management to sever power supply agreement with mseb , a move that could inflict a financial liability of about rs 2840 crore on the centre . a decision to authorise dpc president neil mcgregor to issue a termination notice to mseb for sale of power was taken by the board at its meeting on wednesday .\nthe indian express , friday , april 27 , 2001\nenron : dabhol chief gets powers to end deal with the mseb\nthe board of dabhol power company , a subsidiary of houston - based enron corp , has decided to warn the maharashtra state electricity board ( mseb ) that it intends to pull the plug on its guhagar - based project . in a board meeting held in london on wednesday , the board decided to authorise dpc president and ceo neil mcgregor and enron india ' s managing director k wade cline to serve a ' ' preliminary ' ' termination notice for sale of power to the mseb within the next four weeks . the dabhol project has been mired in disputes since mseb began missing payments last year . mseb owes dabhol power $ 48 million for power delivered in december and january . the payment ran into a dispute after mseb slapped penalty notices of rs 401 crore on dpc for its failure to supply power within three hours of the demand being placed . but mseb has paid $ 24 million for february . and a payment of $ 31 million was made for march on thursday .\nthe $ 3 billion dabhol project is the largest foreign investment made in india to date . issuing the preliminary termination notice could enable dabhol to suspend deliveries as it negotiates payment disputes . while a preliminary termination notice is the first of three steps that could potentially lead to the abandonment of the project by enron , analysts have described the decision as a ' ' procedural ' ' move consistent with dpc ' s negotiating strategy to recover overdue payments from the mseb .\nafter the company issues the preliminary termination notice , step two would be an official termination notice , and step three would be a notice that the company is surrendering control of the project . if the project is terminated , the government of india will have to take a hit of $ 300 million besides paying bills of rs 1 , 500 crore for the next one year to enron as penalty . ' ' our ( centre ' s ) liability , if dabhol power project is terminated , would be one year ' s electricity bill and a termination fee of $ 300 million , ' ' power secretary a k basu said . ' ' contractually , the centre will have to pay one year ' s electricity bill , totalling at present prices about rs 1 , 400 - 1 , 500 crore , and take over dpc ' s debt , which stands at around $ 300 million , if the project was terminated , ' ' basu said in delhi . dabhol power is in the process of completing the second phase of the 2 , 184 - megawatt power - plant project , which is 95 per cent through .\nwhile the international lenders to the project are pressurising the company to get out of the project , indian lenders , led by idbi , are asking the company to reconsider its decision on its termination notice . during the meeting in london , mseb which holds a 15 per cent stake in the project , had strongly opposed dpc ' s move to authorise cline and mcgregor to issue notices for termination .\nmseb chairman vinay bansal and technical director prem paunikar - both directors on the dpc board - and the state principal secretary ( energy ) vm lal , an invitee to the board , raised the issue at the board meeting in london . mseb claimed that dpc was needlessly ' ' threatening ' ' to issue various arbitration notices and thereby interpreting the clauses of ppa in isolation . in recent weeks , dabhol has raised the stakes in its spat with the mseb , delivering a notice of political force majeure to maharashtra - a step typically invoked to dissolve a contract in case of an emergency like a war , coup , or a similar radical political event . in this case , dpc ' s move was viewed as a threat to stop providing electricity . dpc has come under fire because of the relatively high cost of its power . critics object to the company charging rs 7 . 1 a kilowatt - hour for its power , compared with around rs 1 . 5 a kilowatt - hour charged by other suppliers .\nthe hindu , friday , april 27 , 2001\noffer of renegotiation ' too late ' : enron , by mahesh vijapurkar\nmumbai , april 26 . the enron - sponsored dabhol power company , which last night authorised its local management to issue a notice of termination of its power purchase agreement ( ppa ) with the maharashtra state electricity board , has decided to keep a stiff upper lip . this , in turn , has stoked speculation that the switching off of power from its phase i plant was imminent , while in reality , a lengthy procedure has to be followed as prescribed within the ppa .\nas one source familiar with the ppa told the hindu , ` ` it is not sudden death of the project ' ' and in all probability , the dpc , vexed with the developments , including sharp and pointed observations by the godbole committee , has chosen to only arm itself with a serious option . ` ` this would only eventually come into effect . it is not an overnight operation and a lot of legal work is involved ' ' . apparently , the dpc intends to do some arm - twisting .\nat the board of directors meeting in london , which maharashtra was initially disinclined to attend but later used the forum to put across its contentions on the project , the dpc squarely told the mseb nominees on the board that the offer of renegotiation had come rather ` ` too late ' ' . it also said it did not see any room for optimism about the outcome . it did not , however , rule out the option of talks , thus underscoring the possibility that the decision to authorise termination was a new weapon .\nthe maharashtra chief minister , mr . vilasrao deshmukh , had hoped that dpc would not take any ` ` harsh step ' ' which would cause lot of damage to the interests of both the independent power producer and the government and today he expressed his dismay . in fact , the mandate of the team that went , on the strength of its stake in the dpc , was to put across the idea that negotiation was the requirement and not confrontation .\necho in ls\nthe enron issue also echoed in the lok sabha today where the power minister , mr . suresh prabhu , said that scrapping of the agreement would cost the centre rs . 2 , 840 crores , whose liability in the project agreement was limited . the centre ' s liability in case of termination is one year ' s electricity bill and a termination fee of $ 300 million .\nblow to fis\nthe termination could prove to be a serious blow to the indian financial institutions ( fis ) which , under the leadership of the idbi , were trying to convince the other lenders of the project against the notice . the exposure of indian fis in the project is understood to be not covered by any guarantee either of the centre or the state .\nthe times of india , friday , 27 april 2001\nenron ready to pull out , but lenders say wait\nthe dabhol power company board , which met on wednesday in london , authorised the company management to issue a termination notice to the maharashtra state electricity board . the company , however , may not pull out of the project yet , considering its lenders , who met on monday , opposed such a move and favoured renegotiations . sources present during both the meetings said that though foreign lenders supported enron on the termination issue , domestic financial institutions , led by the industrial development bank of india , prevailed over the deliberations to oppose any such drastic move . enron needs the lenders ' consent to file a pre - termination notice for pulling out from the project . the decision to empower dpc chief wade cline to issue a termination notice was taken with six votes in favour against a single idbi vote against such a move .\nanother significant development during the entire proceedings was that the financial institutions made it clear that further funding of phase ii of the project will depend on the government of india assuring payment mechanisms . institutions are yet to disburse about 30 per cent of the sanctioned package , which is crucial for completing the phase ii expansion project . ` ` the board has given powers to wade cline to issue a pre - termination notice . but the meeting quite unanimously felt the need of the hour is not to terminate the project but to initiate serious re - negotiation proceedings , ' ' said mseb chairman vinay bansal , who attended the board meeting . ` ` mseb presented their views to the board members and it was understood by enron which also included the rs 401 crore penalty issue which is heading for arbitration proceedings . ` ` we have also made it clear that the tariff structure of enron is quite high and a downward revision of tariffs is unavoidable , \" bansal added .\n` ` they cannot issue a termination notice without our consent since our exposure in the project is quite large and the lenders should approve any plans in that direction , ' ' said a top banker who was present during the lenders ' meet . ` ` there is a general consensus that the project must be completed and the proposal to terminate the ppa should be kept in abeyance , ' ' he added . the global arrangers for the dpc include anz investment bank , credit suisse first boston , abn - amro , citibank and the state bank of india , where all these parties conducted separate meetings with the company officials . however , some bankers said the company can file a termination notice even if one lender with a minimum 5 per cent exposure on the project favours such proceedings .\nmeanwhile , in a clear reversal of roles , maharashtra chief minister vilasrao deshmukh said that the state government was not keen on terminating the ppa . ` ` we will ask them to refrain from taking any such harsh steps since that would be bad news for all of us , including dpc , ' ' deshmukh said . deshmukh was echoing union power minister suresh prabhu ' s sentiments , who said that the government wanted an amicable settlement of the payment row . he , however , added that termination of the project would not hurt foreign investments , and dismissed warnings by analysts that winding up the $ 2 . 9 billion project would be a blow to india ' s efforts to woo foreign investors .\nthe dpc has already slapped one conciliation notice on the centre and three arbitration notices on the state government over non - payment of dues amounting to rs 213 crore and interest towards the bills due for december 2000 and january 2001 . meanwhile , mseb officials said in mumbai that the march bills amounting to rs 134 crore was paid on thursday as protest payment , despite the dispute over the amount .\nwhen asked on the future course of action , bansal said it was up to the dpc .\nthe hindu businessline , friday , april 27 , 2001\ndpc board authorises md to issue ppa termination notice\nthe board of directors of dabhol power company ( dpc ) has authorised the managing director , mr neil mcgregor , to issue the notice of intent to terminate its power purchase agreement ( ppa ) with the maharashtra state electricity board ( mseb ) ` ` at an appropriate time ' ' . the decision was taken at a board meeting held in london yesterday . ` ` while mseb , which is an ` interested party ' , was not allowed to vote , it made a presentation clarifying its stand on the matter , ' ' a senior state government official said .\nthe resolution to authorise the management to issue the termination notice was carried by six votes to one . idbi voted against the decision , the official said . the serving of the preliminary termination notice will lead to a six - month ` ` suspension period ' ' . according to clause 17 . 8 of the termination procedure , of the ppa : ` ` following the giving of a preliminary termination notice , the parties shall consult for a period of six months ( or such longer period as they may agree ) as to what step shall be taken with a view to mitigating the consequences of the relevant event having regard to all the circumstances . . . ' '\nidbi and state bank of india , the principal indian lenders , had earlier persuaded the overseas lenders to hold their consent to the termination notice for some more time . at least one lender has to consent for the company to serve termination notice . it is understood that overseas lenders are in favour of termination of the project and are prepared to consent . however , domestic lenders are worried about the security of their advances if the ppa is abandoned mid - way .\naccording to institutional sources , indian lenders are trying to get all the parties concerned to thrash out outstanding issues . the maharashtra and central governments too are in favour of a conciliation . mr vilasrao deshmukh , chief minister of maharashtra , yesterday went on record that the state did not want the project terminated . mr yashwant sinha , union finance minister , is also understood to be of the same opinion . ` ` the dpc will now have to decide what is the ` appropriate time ' to serve the notice , ' ' the official said . mseb pays rs 134 crore : meanwhile , mseb has paid dpc rs 134 crore towards its march 2001 bill . mseb officials confirmed that the bill was paid ` in protest ' ' today morning . ` ` they ( dpc ) had billed us for an amount of rs 146 crore . we do not agree with some of the items included , ' ' a senior mseb official said .\nthe pioneer , friday , april 27 , 2001\nenron testing maharashtra ' s nerves , t n raghunatha\ndabhol power company ( dpc ) has begun to put fresh pressure on the maharashtra state electricity board ( mseb ) , the maharashtra state government and the centre for an early resolution to the prolonged dispute between them , if the dpc board of directors ' decision to authorise its managing director to serve a contract termination notice to the mseb is any indication .\nthe dpc board , in its meeting in london on wednesday , empowered the company management to sever its power supply agreement with mseb , a move that could inflict a financial liability of rs 2 , 840 crore on the centre . the decision to authorise the dpc management to issue a termination notice to mseb was taken by a vote of six to one after the maharasthra government representatives were prevented from voting on the ground of \" interested party \" .\nwhen contacted , the company ' s mumbai - based spokesperson , mr jimmy mogal , declined to comment on the reports about the decision taken by the dpc board . \" we have nothing to say on the reports emanating from london . we will express our views after a few days , \" he said . however , maharashtra chief minister vilasrao deshmukh on thursday termed the dpc board ' s decision as \" unfortunate \" . \" we have already requested the company not to take any harsh decision \" , mr deshmukh said in mumbai .\nofficial sources in the state energy ministry interpreted the dpc board ' s decision as a pressure tactic employed by the enron subsidiary to force the mseb to clear the pending power bills without any further delay . through its tough posture , the dpc wants to make its position stronger before it can formally agree for re - negotiations with the mseb , the centre and the state government for cutting the price of power supplied by it to the state electricity board . the sources said that the dpc ' s reported decision to authorise its managing director to stop electricity supply to the mseb did not mean that the enron subsidiary would actually go ahead with the scrapping of the power contract with the mseb .\n\" if anything , the dpc ' s reported decision is to mount additional pressure on the mseb for clearance of pending power bills and put itself in a stronger position in settling its dispute with the mseb . as part of its plan to arm itself with powers to break a contract in case situation goes beyond its control , the dpc had recently served a political force majeure to the mseb , the centre and the state government , \" the sources said . not surprisingly , the dpc ' s london decision comes on the heels of the maharashtra government ' s decision to set up a high - level committee , comprising representatives of the mseb , the centre and the state government to re - negotiate with the enron ' s subsidiary company for reducing the cost of power supplied to the state electricity board . meanwhile , amidst the threat of a possible termination notice hanging on its head , the mseb on thursday made a \" protest payment \" of the rs 134 crore disputed amount towards march bill of rs 146 . 64 crore to dpc .\nriday , april 27\nthe telegraph , friday , april 27 , 2001\nenron signal to switch off dabhol power\nenron today took the first decisive step out of the controversy - ridden dabhol power company when it won an authorisation from the company ' s board to stop sale of power to maharashtra state electricity board ( mseb ) .\nthe meeting of the company , of which the houston - based energy giant holds 65 per cent and the mseb 15 per cent , was attended by state energy secretary v m lal and mseb technical director p paunikar and it came days after its lenders discussed payment problems and a possible termination . the centre ' s liability , if enron decides to snap the agreement , will be a year ' s power bill and a termination fee of $ 300 million . however , the company will have to wait for six months from the day it serves the notice before it pulls the plug . the centre shrugged off the move , saying there would not be any adverse effect on foreign investment in power if enron walks out . \" we do not see fdi inflows into the power sector being hit , \" power minister suresh prabhu said . mseb officials said the ball is now in the court of dpc , which said its corporate policy did not allow it to comment on proceedings at board meetings . the decision coincided with a rs 134 - crore ' protest payment ' by the cash - strapped power board as part of the march bill worth rs 146 . 64 crore .\nthere was speculation that mseb coughed up the amount to cool frayed tempers at enron ' s hub in houston , and because it was rattled by the sudden turn of events in the past few days during which the dispute had come to a head . mseb officials brushed away the allusions , saying the cheque was ready on wednesday but could not be handed over to dpc because of the state - wide bandh . \" we have a disputed payment of rs 12 . 64 crore , which will be taken up at the dispute - resolution forum , \" a board official said . last week , dpc told the state government and mseb it would no longer accept protest payments in a move to fortify its legal position .\nmseb officials say bechtel and general electric , the other partners who hold around 20 per cent in dpc , are willing to go along with enron corp in terminating the deal but financial institutions such as idbi are not game because it puts their loans at risk . investments made by indian institutions are not covered under the centre ' s and state ' s counter - guarantees , unlike those made by international lenders . maharashtra chief minister vilasrao deshmukh called enron ' s decision unfortunate . \" we had told state government officials attending the enron board meeting to stop the company from winding up its operations in the state as it will harm both parties . \"\nthe statesman , friday , april 27 , 2001\nenron threatens to pull out\nthe enron crisis deepened with the board of directors of the dabhol power company deciding to authorise the managing director , mr k wade cline , to serve a notice of termination on the contract for the first phase of the $ 2 . 9 billion power project . the decision , which could lead to the cessation of dabhol ' s power supply to the state , was taken at the meeting held yesterday in london according to reports quoting the chairman of the maharashtra state electricity board , mr vinay bansal .\nwhile dpc officials refuse to comment on anything , it is learnt that mseb was itself prepared to serve a legal notice of termination just two days before the meeting . mseb was said to have been dissuaded by the nationalist congress party president , mr sharad pawar , and union power minister mr suresh prabhu , who had talks in new delhi with the maharashtra chief minister , mr vilasrao deshmukh , and an mseb delegation last monday .\nthe state government has been served two arbitration notices while the centre is ready to go for conciliation with the dpc for failing to honour its counter - guarantee . further , the dpc has already slapped a notice of political force majeure which protects itself against undeserved claims in the event of exigencies that force it to take an extreme step . the union power minister , mr suresh prabhu , contended in delhi that since dpc contributed only 0 . 7 per cent of the total energy output of the country , its termination would not have such a phenomenal impact on the power situation .\nhowever , if terminations proceedings go through , enron corp , a 65 per cent share - holder in the dabhol power company , would stand to net a hefty amount in damages . the union power secretary has been quoted as saying that termination of the dpc would cost the centre rs 1 , 800 crore , which is the total of one years ' electricity bill and a termination fee of $ 300 million . according to an energy analyst , mr pradyumna kaul , the total liability would not cross rs 350 crore . however mr prabhu said in the lok sabha today that the that scrapping of the agreement would cost the centre rs 2 , 840 crore . it is learnt that on 20 april , mr deshmukh had given the go - ahead to the mseb to prepare a legal notice to be issued to enron during the meeting of the dpc ' s board of directors on wednesday . at the meeting , the energy minister , padamsinh patil , energy secretary , mr vinay mohan lal and mseb chairman mr vinay bansal , were also present . the notice was prepared over the past weekend and taken by the delegation when they called on mr prabhu on 24 april . however , the politicians convinced them that enron would not get tough , given its huge stake in the project , and that such a notice would not be necessary . the meeting thus ended with the decision to renegotiate the power tariff , with enron ' s consent .\namong those present at the london meeting were mr lal , mr bansal and mseb technical director , mr p paunikar , in their capacity as directors . however , they abstained from voting since they were deemed an interested party . the only vote to go against the decision was that of the idbi which is also represented on the board , it is learnt . the chief minister , mr vilasrao deshmukh , said the state was not in favour of terminating the project . this could mean that the latest manoeuvre to arm - twist the indian authorities could achieve its immediate target of getting the arrears accumulated over the past three months cleared . the mseb owes enron rs 146 . 64 crore for march 2001 and rs 229 crore for december 2000 and january 2001 . the centre today put up a brave face on enron ' s decision saying there would not be any adverse effect on foreign investment in power sector in the country , pti reported from new delhi .\n\" there will be no adverse impact as a result of any action by any domestic or foreign company . as far as we are concerned there will be no adverse impact on fdi in power sector , \" power minister suresh prabhu told reporters when asked about dpc ' s decision to authorise management to issue a termination notice to mseb . emphasising that there would be no fallout of such decision , prabhu said after the meeting of the cabinet committee on economic affairs \" we are expecting cooperation from many scandinavian countries as well as european nations in the power sector . \" in fact not only the power minister but also the prime minister of norway was here to inaugurate a seminar on power and he promised lot of cooperation in the sector . \"\nmid day\n' dpc may not wind up '\nmaharashtra chief secretary v ranganathan has said that though neil mcgregor , managing director of the dabhol power corporation ( dpc ) , has been given complete powers with regard to dpc ' s operations in the state , including the authority to wind up operations , it does not necessarily mean that mcgregor will issue such a termination notice . mcgregor was given the powers at a meeting of the dpc board in london on wednesday . ranganathan said that state officials , including maharashtra state electricity board ( mseb ) chairman vinay bansal and power secretary v m lal , have reported back to him about the meeting in london .\nwith regard to the state ' s failure to pay enron , ranganathan said , \" bills are prepared as per the power purchase agreement ( ppa ) and dpc owes some money to us . our people informed enron officials about this . . in fact , there was no reason to give powers to the md to slap a termination notice . \" in the london meeting , mseb and industrial development bank of india ( idbi ) representatives insisted that the dpc must pay rs 411 crore since it could not supply power whenever needed .\nchief minister vilasrao deshmukh has already termed as unfortunate the decision of the board of the enron - promoted dpc to give mcgregor powers to wind up operations . deshmukh added , \" we have already requested enron not to take any harsh decision . \" deshmukh had earlier said , \" we have directed state government officials attending the dpc board meeting to desist the energy company from winding up operations in the state , as it would be harmful to both of us . \"\nenron officials are keeping mum on the issue . mcgregor said , \" i am not going to give any comment . \"\nmid day , april 27 , 2001\nenron offers ' no comment ' on renegotiation , h s rao\na crucial meeting of the board of directors of the dabhol power company ( dpc ) , promoted by the us energy major enron , was held here yesterday apparently to discuss fate of its $ 900 - million power project in maharashtra , but there was no official word on the indian and state governments ' decision to renegotiate the contract .\nan enron spokesman declined to divulge what transpired at the meeting , saying the issues discussed at the meeting were ' confidential ' . \" we have not received any direct communication . unless we get it and evaluate the details , we have no comments to make , \" the spokesman said when asked about the proposed decision on re - negotiation of the project in which the maharashtra state electricity board ( mseb ) has 15 per cent stake .\nasked whether the board had taken a decision on empowering dpc managing director neil mcgregor to wind up its operations in india , the spokesman said he had nothing to say on them . enron has reportedly authorised mcgregor to look at various options including selling the company ' s stake in dpc . maharashtra chief minister vilasrao deshmukh said in mumbai that the state government would pay up the undisputed dues to the company . he said the maharashtra government \" is not in favour of terminating the 2184 - mw project , but wanted an amicable solution to the imbroglio . \"\nmid day , friday , april 27 , 2001 ,\ncommittee to renegotiate enron deal\na committee to renegotiate the power purchase agreement with the dabhol power company will be appointed by this evening , chief minister vilasrao deshmukh said today . addressing media persons after his meeting with the noted social reformer anna hazare at his official residence varsha , deshmukh said the committee would be formed by this evening or by tomorrow , at the most . he termed as unfortunate the enron board decision empowering dpc chief neil mcgregor to serve a preliminary termination notice on the maharashtra state electricity board and said the state was willing to negotiate the issue with power company .\n\" renegotiations will be held as per the suggestions made by the godbole committee and the center will also depute its representative on the renegotiating committee . we don ' t want to take any hasty decision , \" deshmukh saidhe pointed that the only bone of contention with the dpc had been its expensive tariff and hoped that the issue would be resolved amicably . when pointed that the enron board had taken a decision to serve the notice despite state \u0019 s willingness to appoint a renegotiating committee , chief minister said it was unfortunate .\nearlier , in his meeting with hazare , deshmukh promised to make necessary amendments to the right to information law recently passed by the state so that the information was easily accessed by the common people . he also gave a patient hearing to hazare on his complaints of corruption in various state departments and promised action against guilty after a thorough inquiry within three months .\nafternoon , april 27 , 2001\n' enron ' s on ! '\nstate govt . to renegotiate dabhol power project , by hubert vaz\nthe us power giant , enron power corporation ' s willingness to wrap up the dabhol power project and leave the shores may not actually materialise , though the dabhol power company chief , mr . wade cline , has been authorised to do so , since the lenders for the project would have a decisive say in the matter .\ndisclosing this , chief minister vilasrao deshmukh confirmed this morning that the state government would churn out a compromise formula by which the power project at dabhol could be continued , and at the same time enron did not feel slighted . \" enron has not yet conveyed to us about this decision . we are waiting for their letter , \" he said . when asked what sort of compromise the state government plans to forge , mr . deshmukh said , \" let our officers come back . after that we will decide a future course of action . but we are definitely going in for renegotiation of the project . it is very difficult to predict the outcome of enron ' s decision but as of now the project is still on . \" when asked whether the project could be moved to another state , if wound up from maharashtra , mr . deshmukh said , that was not possible as per the terms of the agreement between the us company and the state government . however , it was difficult for the project to move out of the state itself , he indicated . he also confirmed that both parties would face considerable losses if the project was terminated .\nthe board of directors of the dabhol power company , which met in london on wednesday , decided to put an end to all controversies surrounding the project once and for all by empowering the dpc chief to terminate the project , if he deemed it fit . however , this decision , as of now , does not necessarily indicate the death knell for the project . the enron project , which had been riddled with controversies right from its inception , had been a pretext for the political parties in the state to drag each other on the mat from time to time . the previous sena - bjp government , which had been out to terminate the project , however , chose to continue with it following renegotiations with enron ' s top visiting officials like ms . rebecca mark . and , the democratic front government inherited the controversial project when the governments changed hands a year and a half ago .\nmeanwhile , state energy minister dr . padamsinh patil , when contacted at the osmanabad circuit house , said the state government and the central government have decided to appoint a joint committee to renegotiate the project with enron . \" it is not easy for them to walk out of the project just like that . they will have to go in for litigation and this would prove costly for both sides , \" he said . in case the project is terminated , the government can still manage the power needs of the state , though it would be a bit tough job , he added .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.771+0000", "entityId": 10626, "properties": {"text": "Subject: research allocations to egm\nhi becky ,\nvince and i came up with these allocations for all of egm :\ngary hickerson\nrate & currency trading 10 . 0 %\nagriculture trading\n& origination 27 . 5 %\njeff shankman\nweather 20 %\ninsurance 30 %\noil 7 . 5 %\ncoal 2 . 5 %\nfreight 2 . 5 %\ntotal 100 %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.775+0000", "entityId": 10627, "properties": {"text": "Subject: drogi vincenty . skoro ty byles na tyle mily ze zadzoniles osmielam sie i ja\nzaimejlowac do ciebie . w dniach 29 . 04 do 7 . 05 bede w usa . cel turystyczny do\nmoich znajomych z roku . w programie mam wiele . glowna baza idahi springs . lece\nz mija corka i kolegami z roku . nie znam twojego miejsca zamieszkania , ale\nmoze . tefon moich znajomych chyba 303 567 0190 , adres e - mailowy\npzdrawiam zofia grodek . oni maja na nazwisko golebiowscy .\nget free email and a permanent address at http : / / www . netaddress . com / ? n = 1", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.780+0000", "entityId": 10628, "properties": {"text": "Subject: my new info\nplease respond to dear friends and colleagues ,\ni have switched again my employment status between self - employment and\nemployment by joining the txu energy trading on the capacity of their\nmanaging director of risk management operations . will commute home on\nweekends , but otherwise , will be stationed in dallas . the new email address\nis mjermakl @ txu . edu , and the phone number is ( 214 ) 875 - 9603 .\nregards ,\nmartin jermakyan\nwww . txu . com\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.785+0000", "entityId": 10629, "properties": {"text": "Subject: re : contact info\nglenn ,\nplease , contact rudi zipter to set up an interview with him and david port .\nvince\n\" glenn darrah \" on 04 / 25 / 2001 04 : 27 : 03 pm\nplease respond to gdarrah @ bigfoot . com\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : contact info\nvincent ,\ncongratulations on spearheading the mind ' s eye madness event - it looks like\nquite a success . my biggest disappointment is that i am leaving enron this\nweek and have been too busy to participate as much as i would like . i have\nhad continued interest in the work and presentations that amy oberg has\ndone , so would have really enjoyed the workshop yesterday . i am still\nconsidering doing some or all of the motorcade friday , however that may\nwork .\nseparately , thanks for the update in the lobby today on the enterprise risk\nproject . please keep in touch with me . as i mentioned , my redeployment\nperiod ends tomorrow ( april 26 ) , but i currently do not have an outside job\nlined up and still have a lot of interest in the project if something can be\nworked out over the next few weeks . although he is not in the same group as\ndavid port , i have worked a lot with brad larson in the rac underwriting\ngroup - he may be a good source of information on me also .\ncontact information :\ne - mail : gdarrah @ bigfoot . com\nphone : 713 . 668 . 4277\ncell : 713 . 320 . 5615\nthanks ,\nglenn darrah\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.790+0000", "entityId": 10630, "properties": {"text": "Subject: re : contact info\nglenn ,\nplease , contact rudi zipter to set up an interview with him and david port .\nvince\n\" glenn darrah \" on 04 / 25 / 2001 04 : 27 : 03 pm\nplease respond to gdarrah @ bigfoot . com\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : contact info\nvincent ,\ncongratulations on spearheading the mind ' s eye madness event - it looks like\nquite a success . my biggest disappointment is that i am leaving enron this\nweek and have been too busy to participate as much as i would like . i have\nhad continued interest in the work and presentations that amy oberg has\ndone , so would have really enjoyed the workshop yesterday . i am still\nconsidering doing some or all of the motorcade friday , however that may\nwork .\nseparately , thanks for the update in the lobby today on the enterprise risk\nproject . please keep in touch with me . as i mentioned , my redeployment\nperiod ends tomorrow ( april 26 ) , but i currently do not have an outside job\nlined up and still have a lot of interest in the project if something can be\nworked out over the next few weeks . although he is not in the same group as\ndavid port , i have worked a lot with brad larson in the rac underwriting\ngroup - he may be a good source of information on me also .\ncontact information :\ne - mail : gdarrah @ bigfoot . com\nphone : 713 . 668 . 4277\ncell : 713 . 320 . 5615\nthanks ,\nglenn darrah\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.795+0000", "entityId": 10631, "properties": {"text": "Subject: re : recruiting for weather risk management group\nhello vince ,\nthank you very much for forwarding the message . i hope all is well with\nyou !\nregards ,\nheather\non fri , 27 apr 2001 vince . j . kaminski @ enron . com wrote :\n>\n> heather ,\n>\n> i am forwarding this message to 2 groups in enron that may be interested .\n>\n> vince\n>\n>\n>\n>\n>\n> \" heather thorne \" on 04 / 26 / 2001 08 : 55 : 56 pm\n>\n> to : \" christie patrick \" , \" vince kaminsky \"\n>\n> cc : \" greg hunt home \"\n> subject : recruiting for weather risk management group\n>\n>\n>\n>\n> dear vince and christie ,\n>\n>\n>\n> i hope that you are both well , and are ready for the onset of summer in\n> houston ! ? i was disappointed that i was not able to see you at the final\n> tiger team presentations last month due to a family emergency . ? i hope that\n> the teams ' analyses will be helpful to your work , and echo their\n> appreciation of your involvement and support .\n>\n>\n>\n> i am writing with a question regarding recruiting for enron ' s weather risk\n> management group . ? my boyfriend , greg hunt , is currently seeking\n> opportunities to combine his background in meteorology ( ms and 2 years of\n> research at lawrence livermore nat ' l lab ) and an mba in finance and\n> information technology . ? i began thinking about enron ' s work in weather\n> derivatives , and realized that there could possibly be a great fit there .\n>\n>\n>\n> i have copied greg on this message , and would appreciate any suggestions\n> you can offer regarding opportunities in this group . ? thank you very much !\n>\n>\n>\n> best regards ,\n>\n>\n>\n> heather\n>\n>\n>\n>\n>\n>\n>\n>\n>\n> heather n . thorne\n>\n> mba candidate , 2001\n>\n> the wharton school at university of pennsylvania\n>\n> 2516 pine street\n>\n> philadelphia , pa 19103\n>\n> ( 215 ) 545 - 3022\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.799+0000", "entityId": 10632, "properties": {"text": "Subject: re : enron weather research\ngood afternoon mike :\ni certainly am interested in determining if there may be a potential fit\nthere at enron . i am very enthusiastic to apply my finance and meteorology\nbackgrounds in a market - based environment that is driven to achieve\nunprecedented efficiencies . attached are two documents : 1 ) a\nbusiness - focused resume , and 2 ) an abbreviated meteorology cv .\ngraduate meteorology coursework included advanced atmospheric dynamics i and\nii , advanced physical meteorology , boundary layer modeling , numerical\nmodeling , research methods in meteorology , and turbulence .\ni will look forward to hearing from you .\nsincerely ,\ngreg hunt\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\nsent : friday , april 27 , 2001 9 : 12 am\nsubject : enron weather research\n>\n> greg ,\n>\n> hello , and by way of introduction , we were forwarded your e - mail address\nby\n> heather thorne .\n>\n> i understand you have an m . s . in meteorology as well as an m . b . a . in\n> finance , and have done some research at livermore .\n>\n> i ' d be happy to learn more about your activities , and , if you are\n> interested , to see if there may be a potential fit here at enron .\n>\n> can you e - mail your resume with a description of your coursework and\n> research activities ?\n>\n> looking forward to hearing from you ,\n>\n> mike roberts\n> vice president - research\n>\n- greg hunt _ resume _ 4 - 27 - 01 . doc\n- greg hunt _ cv _ meteorology _ 4 - 27 - 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.804+0000", "entityId": 10633, "properties": {"text": "Subject: research allocations to egm\nhi becky ,\nvince and i came up with these allocations for all of egm :\ngary hickerson\nrate & currency trading 10 . 0 %\nagriculture trading\n& origination 27 . 5 %\njeff shankman\nweather 20 %\ninsurance 30 %\noil 7 . 5 %\ncoal 2 . 5 %\nfreight 2 . 5 %\ntotal 100 %", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.808+0000", "entityId": 10634, "properties": {"text": "Subject: re : enron weather research\ngood afternoon mike :\ni certainly am interested in determining if there may be a potential fit\nthere at enron . i am very enthusiastic to apply my finance and meteorology\nbackgrounds in a market - based environment that is driven to achieve\nunprecedented efficiencies . attached are two documents : 1 ) a\nbusiness - focused resume , and 2 ) an abbreviated meteorology cv .\ngraduate meteorology coursework included advanced atmospheric dynamics i and\nii , advanced physical meteorology , boundary layer modeling , numerical\nmodeling , research methods in meteorology , and turbulence .\ni will look forward to hearing from you .\nsincerely ,\ngreg hunt\n- - - - - original message - - - - -\nfrom :\nto :\ncc : ; ;\nsent : friday , april 27 , 2001 9 : 12 am\nsubject : enron weather research\n>\n> greg ,\n>\n> hello , and by way of introduction , we were forwarded your e - mail address\nby\n> heather thorne .\n>\n> i understand you have an m . s . in meteorology as well as an m . b . a . in\n> finance , and have done some research at livermore .\n>\n> i ' d be happy to learn more about your activities , and , if you are\n> interested , to see if there may be a potential fit here at enron .\n>\n> can you e - mail your resume with a description of your coursework and\n> research activities ?\n>\n> looking forward to hearing from you ,\n>\n> mike roberts\n> vice president - research\n>\n- greg hunt _ resume _ 4 - 27 - 01 . doc\n- greg hunt _ cv _ meteorology _ 4 - 27 - 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.814+0000", "entityId": 10635, "properties": {"text": "Subject: re : term project :\nbrian ,\nno problem .\nvince\n\" brian corbett nelson \" on 04 / 26 / 2001 08 : 15 : 14 pm\nplease respond to\nto :\ncc :\nsubject : re : term project :\nvince , i finally joined a team that only had two members . it looks like our\npaper will only be about 13 to 15 pages . we were wondering that since our\nteam is less than half the size of some of the other teams , if you could\npossible relax the length requirement ?\nthanks ,\nbrian nelson\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 3 : 54 pm\nto : nelsonb @ rice . edu\nsubject : re : term project :\nbrian ,\nthe last class + plus a few days ( depending on when i have\nto submit the grades ) .\nvince\n\" brian corbett nelson \" on 04 / 11 / 2001\n03 : 35 : 14 pm\nplease respond to\nto :\ncc :\nsubject : re : term project :\nmr . kaminski ,\ni had an interview last thusday in dallas and could not attend class . did\nyou set a project deadline ?\nthanks ,\nbrian nelson\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 3 : 22 pm\nto : isranir @ rice . edu ; demianen @ rice . edu ; tbal 93 @ yahoo . com ;\nmaue @ rice . edu ; loughrid @ rice . edu ; jblantonjr @ yahoo . com ;\ngjohnson @ rice . edu ; emchombo @ rice . edu ; nazareth @ rice . edu ;\nvanstone @ rice . edu ; ganguzza @ rice . edu ; nelsonb @ rice . edu ;\nsssmith @ rice . edu ; wheelock @ rice . edu ; westmore @ rice . edu ;\ngaudette @ rice . edu ; otaylor @ rice . edu ; dikeman @ rice . edu ; jettke @ rice . edu ;\nlitton @ rice . edu ; chilkina @ rice . edu ; helms @ rice . edu ; wankhade @ rice . edu ;\nmonfan @ rice . edu ; kostya @ rice . edu ; pcp @ rice . edu ; yueguo @ rice . edu ;\nnlwbio @ rice . edu ; zhangn @ rice . edu ; rishad @ rice . edu ; yoshiura @ rice . edu ;\nhoward @ rice . edu ; dayangd @ rice . edu ; wuwei @ rice . edu ; so @ rice . edu ;\nwooddy @ rice . edu ; lamas @ rice . edu ; tbalestrery @ houston . rr . com ;\nhingoran @ rice . edu ; planck @ rice . edu\ncc : vkaminski @ aol . com ; vince . j . kaminski @ enron . com ;\njason . sokolov @ enron . com\nsubject : term project :\nthis is the list of projects for the members of the \" quant \" team .\nif you are working on different project , please , ignore this message .\nplease , develop in a spreadsheet solutions / examples for the following :\n1 . black - scholes formula\n2 . black ' s formula\n3 . develop a spreadsheet to simulate price trajectory using :\na . gbm\nb . gbm + jump ( formula 2 . 16 in the book , figure 2 . 7 )\nc . mean reversion + jump ( formula 2 . 17 , figure 2 . 8 )\n4 . schwartz single factor model ( formula 6 . 12 )\n5 . develop models corresponding to the figures 7 . 1 , 7 . 3 , 7 . 5 , 7 . 6 , 7 . 8\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.818+0000", "entityId": 10636, "properties": {"text": "Subject: invitation for you from rice university : the national forum on\ncorporate finance\nmark ,\ni left you a message regarding the national forum on corporate finance\nat rice .\nthey would be delighted if you could serve as a panel member\nat this conference .\nhere are the coordinates of the professor at rice who\nis in charge . i would appreciate if you could call him\nand let him know if you can attend .\nthanks .\nvince\nprof . david ikenberry\njones graduate school of management\nrice university\n713 - 348 - 5385", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.823+0000", "entityId": 10637, "properties": {"text": "Subject: re : term project :\nbrian ,\nno problem .\nvince\n\" brian corbett nelson \" on 04 / 26 / 2001 08 : 15 : 14 pm\nplease respond to\nto :\ncc :\nsubject : re : term project :\nvince , i finally joined a team that only had two members . it looks like our\npaper will only be about 13 to 15 pages . we were wondering that since our\nteam is less than half the size of some of the other teams , if you could\npossible relax the length requirement ?\nthanks ,\nbrian nelson\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 3 : 54 pm\nto : nelsonb @ rice . edu\nsubject : re : term project :\nbrian ,\nthe last class + plus a few days ( depending on when i have\nto submit the grades ) .\nvince\n\" brian corbett nelson \" on 04 / 11 / 2001\n03 : 35 : 14 pm\nplease respond to\nto :\ncc :\nsubject : re : term project :\nmr . kaminski ,\ni had an interview last thusday in dallas and could not attend class . did\nyou set a project deadline ?\nthanks ,\nbrian nelson\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : wednesday , april 11 , 2001 3 : 22 pm\nto : isranir @ rice . edu ; demianen @ rice . edu ; tbal 93 @ yahoo . com ;\nmaue @ rice . edu ; loughrid @ rice . edu ; jblantonjr @ yahoo . com ;\ngjohnson @ rice . edu ; emchombo @ rice . edu ; nazareth @ rice . edu ;\nvanstone @ rice . edu ; ganguzza @ rice . edu ; nelsonb @ rice . edu ;\nsssmith @ rice . edu ; wheelock @ rice . edu ; westmore @ rice . edu ;\ngaudette @ rice . edu ; otaylor @ rice . edu ; dikeman @ rice . edu ; jettke @ rice . edu ;\nlitton @ rice . edu ; chilkina @ rice . edu ; helms @ rice . edu ; wankhade @ rice . edu ;\nmonfan @ rice . edu ; kostya @ rice . edu ; pcp @ rice . edu ; yueguo @ rice . edu ;\nnlwbio @ rice . edu ; zhangn @ rice . edu ; rishad @ rice . edu ; yoshiura @ rice . edu ;\nhoward @ rice . edu ; dayangd @ rice . edu ; wuwei @ rice . edu ; so @ rice . edu ;\nwooddy @ rice . edu ; lamas @ rice . edu ; tbalestrery @ houston . rr . com ;\nhingoran @ rice . edu ; planck @ rice . edu\ncc : vkaminski @ aol . com ; vince . j . kaminski @ enron . com ;\njason . sokolov @ enron . com\nsubject : term project :\nthis is the list of projects for the members of the \" quant \" team .\nif you are working on different project , please , ignore this message .\nplease , develop in a spreadsheet solutions / examples for the following :\n1 . black - scholes formula\n2 . black ' s formula\n3 . develop a spreadsheet to simulate price trajectory using :\na . gbm\nb . gbm + jump ( formula 2 . 16 in the book , figure 2 . 7 )\nc . mean reversion + jump ( formula 2 . 17 , figure 2 . 8 )\n4 . schwartz single factor model ( formula 6 . 12 )\n5 . develop models corresponding to the figures 7 . 1 , 7 . 3 , 7 . 5 , 7 . 6 , 7 . 8\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.827+0000", "entityId": 10638, "properties": {"text": "Subject: launch issue / the risk desk\ndear trading and risk exec : i ' ve attached the premier issue of our newest\npublication covering the traded energy markets - - the risk desk - - sister\npublication to our leading weekly , the desk . the attached issue ( a pdf file )\nis of course free and has zero obligation .\nthe publication was created in response from readers like you , who requested\na less dense , more upbeat and generally more readable publication dedicated\nto original news , analysis , and commentary on price , credit , operational and\nmarket risk management in the evolving energy trading space .\nand , because you ' re either a current or recent subscriber to one of our other\npublications , we ' re offering you a very special charter rate to our new\npublication - - that is if you contact us before may 27 th . contact us in the\nnext 30 days and subscribe to a full year of the risk desk for only $ 199 ! !\nafter may 27 , we will of course ratchet up the price , good capitalists that\nwe are .\nbut for now , enjoy your free , no - obligation issue to the risk desk . we look\nforward to hearing from you , soon .\nregards ,\njohn sodergreen\njohn sodergreen\neditor - in - chief\nscudder publishing group , llc\nph : 410 / 923 - 0688\nfax : 410 / 923 - 0667\njohns @ scudderpublishing . com\nthe desk , the risk desk , power executive\nthe bandwidth desk , energy ebusiness\n- april 27 . 01 risk . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.834+0000", "entityId": 10639, "properties": {"text": "Subject: tiger evals - attachment\ntiger hosts :\ni understand that some hosts have had problems accessing the database to\ncomplete the tiger team evaluations . i apologize for the difficulties and\nhave attached the form for your convenience . please feel free to return it\nelectronically or by fax ( 215 - 573 - 5727 ) .\nthank you again for your time .\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu\n>\n- tiger team host evaluation . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.839+0000", "entityId": 10640, "properties": {"text": "Subject: tiger evals - attachment\ntiger hosts :\ni understand that some hosts have had problems accessing the database to\ncomplete the tiger team evaluations . i apologize for the difficulties and\nhave attached the form for your convenience . please feel free to return it\nelectronically or by fax ( 215 - 573 - 5727 ) .\nthank you again for your time .\ndonna piazze\nprogram director\nfield application project\nthe wharton school\nuniv . of pennsylvania\n215 . 573 . 8394 fax 215 . 573 . 5727\nfap @ management . wharton . upenn . edu\npiazze @ wharton . upenn . edu\n>\n- tiger team host evaluation . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.843+0000", "entityId": 10641, "properties": {"text": "Subject: re : recent hardware repair\njoe ,\nwe are extremely pleased with the support we receive from your team .\nthe problem was fixed very quickly .\nvince\nfrom : joe langston / enron @ enronxgate on 04 / 27 / 2001 11 : 31 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : recent hardware repair\nvince ,\nrecently the hardware services team performed work on a piece of equipment for you . the technician that performed the work was jd marter , and this is just a follow up to insure that your problem was resolved . it is our goal to provide you with the best service possible , so please feel free to respond to this email if you have any comments that may help us provide you better service in the future . attached you will find a work log detailing what was done to resolve your issue . if you have any questions , or if the problem is not completely resolved please feel free to contact me .\nthank you ,\njoe langston\nteam lead hardware services\noffice : 713 - 345 - 8883\ncell : 713 - 545 - 5912\npager : 877 - 239 - 2794", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.853+0000", "entityId": 10642, "properties": {"text": "Subject: re : recruiting for weather risk management group\nhello vince ,\nthank you very much for forwarding the message . i hope all is well with\nyou !\nregards ,\nheather\non fri , 27 apr 2001 vince . j . kaminski @ enron . com wrote :\n>\n> heather ,\n>\n> i am forwarding this message to 2 groups in enron that may be interested .\n>\n> vince\n>\n>\n>\n>\n>\n> \" heather thorne \" on 04 / 26 / 2001 08 : 55 : 56 pm\n>\n> to : \" christie patrick \" , \" vince kaminsky \"\n>\n> cc : \" greg hunt home \"\n> subject : recruiting for weather risk management group\n>\n>\n>\n>\n> dear vince and christie ,\n>\n>\n>\n> i hope that you are both well , and are ready for the onset of summer in\n> houston ! i was disappointed that i was not able to see you at the final\n> tiger team presentations last month due to a family emergency . i hope that\n> the teams ' analyses will be helpful to your work , and echo their\n> appreciation of your involvement and support .\n>\n>\n>\n> i am writing with a question regarding recruiting for enron ' s weather risk\n> management group . my boyfriend , greg hunt , is currently seeking\n> opportunities to combine his background in meteorology ( ms and 2 years of\n> research at lawrence livermore nat ' l lab ) and an mba in finance and\n> information technology . i began thinking about enron ' s work in weather\n> derivatives , and realized that there could possibly be a great fit there .\n>\n>\n>\n> i have copied greg on this message , and would appreciate any suggestions\n> you can offer regarding opportunities in this group . thank you very much !\n>\n>\n>\n> best regards ,\n>\n>\n>\n> heather\n>\n>\n>\n>\n>\n>\n>\n>\n>\n> heather n . thorne\n>\n> mba candidate , 2001\n>\n> the wharton school at university of pennsylvania\n>\n> 2516 pine street\n>\n> philadelphia , pa 19103\n>\n> ( 215 ) 545 - 3022\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.861+0000", "entityId": 10643, "properties": {"text": "Subject: nytimes . com article : the real wolf\nthis article from nytimes . com\nhas been sent to you by vkaminski @ aol . com .\n/ - - - - - - - - - - - - - - - - - - - - advertisement - - - - - - - - - - - - - - - - - - - - - - - \\\nlooking for better it solutions ?\ntoshiba is uniting digital , mobile and network innovations\nin a bold new vision of information technology for today\nand tomorrow . take a closer look at life in the new digital age .\nand imagine how good it can be . visit toshiba . com for more details .\nthe real wolf\nreckonings\nby paul krugman\necently i received a letter from an economist i respect , chiding me\nfor my \" naderite \" columns on the california energy crisis . he just\ndidn ' t believe that market manipulation by power companies could\npossibly be an important issue ; it sounded too much to him like the\nsort of thing one hears from knee - jerk leftists , who blame greedy\ncapitalists for every problem , be it third - world poverty or high\napartment rents . the left has cried \" wolf ! \" so many times that\nsensible people have learned to discount such claims .\nbut now a bona fide wolf has arrived , whose predatory behavior is\ndoing terrible damage to our most populous state \u0001 * and nobody will\nbelieve it .\ntrue , california would be heading for a summer of power shortages\neven if it had never deregulated . and even if there was workable\ncompetition in the wholesale electricity market , prices in that\nmarket would spike during periods of peak demand , transferring\nbillions of dollars from either taxpayers or consumers to the\ngenerators .\nbut the evidence is now overwhelming that there isn ' t workable\ncompetition in california ' s power market , and that the actions of\ngenerators \" gaming the system \" have greatly magnified the crisis .\nthe key fact is that california has somehow remained in a state of\nmore or less continuous power shortage and very high wholesale\nprices regardless of the level of demand . a rash of outages has\nkept the electricity market conveniently \u0001 * and very profitably \u0001 *\nshort of supply even during periods of low demand , when there ought\nto be lots of excess capacity .\nas frank wolak , the stanford economist who also advises the\nstate ' s power grid , has pointed out , an outage at a power plant is\na lot like an employee calling in sick . you can ' t tell directly\nwhether he is really sick or has chosen to take the day off for\nother reasons , but you can look for circumstantial evidence . and\nsuch evidence has convinced mr . wolak that \" generators use forced\noutages strategically to withhold capacity from the market \" \u0001 * a\nview shared by a growing number of other researchers .\nwhich brings us to the latest move by the federal energy\nregulatory commission . on wednesday , the commission apparently\ndecided to offer california some relief , and put new price caps in\nplace on the california electricity market . i say \" apparently \"\nbecause the more you look at the plan the less likely it seems to\nbe any help at all . indeed , the measure was passed on a 2 - to - 1\nvote , with william massey \u0001 * the one commissioner who has been\nsympathetic to calls for price controls \u0001 * voting against it on the\ngrounds that it would be ineffectual .\nwhat ' s wrong with ferc ' s plan ? first , it caps prices only in\nemergency conditions \u0001 * ignoring the fact that electricity prices\nhave stayed at hard - to - explain levels even when there is no\nemergency . in effect , the plan is laid out as if the electricity\nmarket were really competitive , in spite of all the evidence that\nit is not .\nsecond , even those emergency price caps are full of loopholes ,\noffering extensive opportunities for what mr . wolak calls \" megawatt\nlaundering \" \u0001 * selling power to affiliated companies that for one\nreason or another are exempted from the price controls ( for\nexample , the controls do not apply to \" imports \" from neighboring\nstates ) , then selling it back into the california market . severin\nborenstein of the university of california energy institute adds\nthat because the allowed price depends on the cost of generation at\nthe least efficient plant , generators will have a clear incentive\nto produce inefficiently : \" i predict we will find some plants we\nnever heard of before that are suddenly operating again , and they\nwill be pretty inefficient . \"\nthe general verdict seems to be that this is not a serious plan .\nthere are serious proposals to mitigate the crisis out there \u0001 *\nindeed , last fall mr . wolak submitted a proposal that was well\nreceived by other experts \u0001 * but ferc has ignored all of them .\nthe charitable interpretation is that ferc still doesn ' t get it ,\nthat it just can ' t bring itself to believe that this time the wolf\nis real . the uncharitable interpretation is that last week ' s action\nwas meant to fail . the medley report , an online newsletter , calls\nthe ferc plan \" a grand exercise in posturing without substance . .\n. a very clever temporary move by the bush administration to\ndeflect any political fallout \" from the looming disaster .\nwhatever the explanation , the plain fact is that ferc and the\nadministration have yet to offer california any significant\nrelief .\n00 fo 04 b 3 blabf\nvisit nytimes . com for complete access to the\nmost authoritative news coverage on the web ,\nupdated throughout the day .\nbecome a member today ! it ' s free !\nhttp : / / www . nytimes . com ? eta\nhow to advertise\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfor information on advertising in e - mail newsletters\nor other creative advertising opportunities with the\nnew york times on the web , please contact alyson\nracer at alyson @ nytimes . com or visit our online media\nkit at http : / / www . nytimes . com / adinfo\nfor general information about nytimes . com , write to\nhelp @ nytimes . com .\ncopyright 2001 the new york times company", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.867+0000", "entityId": 10644, "properties": {"text": "Subject: re : willow and pathstar evaluations\ni will check with michael and see if it ' s feasible to do a quick evaluation\nof his software here in houston .\n- - stinson\nvince j kaminski\n04 / 24 / 2001 05 : 22 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : willow and pathstar evaluations\nstinson ,\nhe keeps bugging us about it .\nany thoughts what we should do ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001\n05 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" mike curran \" on 04 / 24 / 2001 10 : 03 : 24 am\nplease respond to \" mike curran \"\nto :\ncc :\nsubject : willow and pathstar evaluations\nhi vince -\nhope all is well with you .\nsharad hasn ' t had time to evaluate our willow tree or monte carlo software\nsince the middle of last year . is there somebody else that could do it ?\nplease let me know who i should send the evaluation to .\nbest regards ,\nmichael curran\nceo\nquantin ' leap limited\npiercy house\n7 copthall avenue\nlondon ec 2 r 7 nj\ntel : + 44 ( 0 ) 20 7562 3450\nfax : + 44 ( 0 ) 20 7562 3411\nmailto : mcurran @ quantinleap . com\nhttp : / / www . quantinleap . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.872+0000", "entityId": 10645, "properties": {"text": "Subject: re : willow and pathstar evaluations\ni will check with michael and see if it ' s feasible to do a quick evaluation of his software here in houston .\n- - stinson\nvince j kaminski\n04 / 24 / 2001 05 : 22 pm\nto : stinson gibner / hou / ect @ ect\ncc :\nsubject : willow and pathstar evaluations\nstinson ,\nhe keeps bugging us about it .\nany thoughts what we should do ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 24 / 2001 05 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" mike curran \" on 04 / 24 / 2001 10 : 03 : 24 am\nplease respond to \" mike curran \"\nto :\ncc :\nsubject : willow and pathstar evaluations\nhi vince -\nhope all is well with you .\nsharad hasn ' t had time to evaluate our willow tree or monte carlo software\nsince the middle of last year . is there somebody else that could do it ?\nplease let me know who i should send the evaluation to .\nbest regards ,\nmichael curran\nceo\nquantin ' leap limited\npiercy house\n7 copthall avenue\nlondon ec 2 r 7 nj\ntel : + 44 ( 0 ) 20 7562 3450\nfax : + 44 ( 0 ) 20 7562 3411\nmailto : mcurran @ quantinleap . com\nhttp : / / www . quantinleap . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.877+0000", "entityId": 10646, "properties": {"text": "Subject: non - firm power curve building\nhi vince ,\namitava and i have received a request to build a non - firm power curve for\neach region from david hoog ' s double trigger folks . the objective , as they\nexplain it , is to allow the desk to buy non - firm from the market , buy david ' s\noutage product , and sell firm to the market . accountants would like a curve\nto mark the non - firm position .\nmy initial thought is that the desk should provide this non - firm curve , but\nit seems that this market is very illiquid and they are reluctant so they\nhave put the ball in david hoog ' s court to build the curve if david wants to\nsell his product internally to the desk .\nassuming we build the curve , the next issue is how to define \" non - firm \" ?\nthe only way i can think of is to tie the non - firmness to a specific\ngeneration unit or group of units . this will allow the purchase of david ' s\noutage product to cover the non - firmness risk . tying the definition of\nnon - firmness to a whole region seems implausible - - - what does it mean to\ngive a marketer the option to not deliver power if there is any problem\nanywhere in the region ? consequently , the non - firm curve takes on a\nunit - level interpretation , and not a region - level interpretation .\nconsequently , i do not see how we can talk about the \" non - firm curve for the\nregion \" ? we will need to build a non - firm curve for each generation unit or\ngroup of units .\nmaybe i could get your thoughts later today .\nthanks ,\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.882+0000", "entityId": 10647, "properties": {"text": "Subject: non - firm power curve building\nhi vince ,\namitava and i have received a request to build a non - firm power curve for each region from david hoog ' s double trigger folks . the objective , as they explain it , is to allow the desk to buy non - firm from the market , buy david ' s outage product , and sell firm to the market . accountants would like a curve to mark the non - firm position .\nmy initial thought is that the desk should provide this non - firm curve , but it seems that this market is very illiquid and they are reluctant so they have put the ball in david hoog ' s court to build the curve if david wants to sell his product internally to the desk .\nassuming we build the curve , the next issue is how to define \" non - firm \" ? the only way i can think of is to tie the non - firmness to a specific generation unit or group of units . this will allow the purchase of david ' s outage product to cover the non - firmness risk . tying the definition of non - firmness to a whole region seems implausible - - - what does it mean to give a marketer the option to not deliver power if there is any problem anywhere in the region ? consequently , the non - firm curve takes on a unit - level interpretation , and not a region - level interpretation . consequently , i do not see how we can talk about the \" non - firm curve for the region \" ? we will need to build a non - firm curve for each generation unit or group of units .\nmaybe i could get your thoughts later today .\nthanks ,\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.887+0000", "entityId": 10648, "properties": {"text": "Subject: re : willow and pathstar evaluations\nmike ,\nwe are short manpower in london . we shall try to\nevaluate the software in houston .\nvince\n\" mike curran \" on 04 / 24 / 2001 10 : 03 : 24 am\nplease respond to \" mike curran \"\nto :\ncc :\nsubject : willow and pathstar evaluations\nhi vince -\nhope all is well with you .\nsharad hasn ' t had time to evaluate our willow tree or monte carlo software\nsince the middle of last year . is there somebody else that could do it ?\nplease let me know who i should send the evaluation to .\nbest regards ,\nmichael curran\nceo\nquantin ' leap limited\npiercy house\n7 copthall avenue\nlondon ec 2 r 7 nj\ntel : + 44 ( 0 ) 20 7562 3450\nfax : + 44 ( 0 ) 20 7562 3411\nmailto : mcurran @ quantinleap . com\nhttp : / / www . quantinleap . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.892+0000", "entityId": 10649, "properties": {"text": "Subject: re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in the afternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21 am\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through license ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ? if\nso , please give me an email shout at the above address or leave a message on\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with the\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our power\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.899+0000", "entityId": 10650, "properties": {"text": "Subject: reply to your email / ignore my voicemail\nvince :\nthanks for that . i just wanted to get a sense from you who the right people\nare and how i can establish effective contact . when he went on to different\nresponsibilities , john goodpasture suggested i get the dialog going with the\nright commercial people in enron . i will be in your neighborhood in the 200\npm time range and will give you a quick call . that will conserve your\nvaluable time and hopefully get me in touch with the right people . i am\nreading this after your voicemail , so this supersedes that .\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , may 01 , 2001 6 : 03 am\nto : dale . nesbitt @ marketpointinc . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : get together this coming tuesday ?\ndale ,\ni can reserve 2 to 2 : 30 time slot but there is really not much that\ni can tell you at this point .\nthe commercial groups are still interested and are moving\ntowards the test of the package . as soon as they will decide\nto move ahead , we ( research ) shall be involved , helping to evaluate the\nproduct . as i have said , we are not the\ndecision makers in this case .\ni think that we should allow simply the process to run its course .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 05 : 59 : 30\npm\nplease respond to\nto :\ncc :\nsubject : re : get together this coming tuesday ?\nvince :\ni will call tomorrow in the morning . lunch or right after lunch would be\ngreat . how would 100 pm work for you ?\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 30 , 2001 3 : 07 pm\nto : dale . nesbitt @ marketpointinc . com\ncc : kimberly . watson @ enron . com ; vince . j . kaminski @ enron . com\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in\nthe afternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21\nam\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through\nlicense ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ?\nif\nso , please give me an email shout at the above address or leave a message\non\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with\nthe\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our\npower\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.903+0000", "entityId": 10651, "properties": {"text": "Subject: re : willow and pathstar evaluations\nmike ,\nwe are short manpower in london . we shall try to\nevaluate the software in houston .\nvince\n\" mike curran \" on 04 / 24 / 2001 10 : 03 : 24 am\nplease respond to \" mike curran \"\nto :\ncc :\nsubject : willow and pathstar evaluations\nhi vince -\nhope all is well with you .\nsharad hasn ' t had time to evaluate our willow tree or monte carlo software\nsince the middle of last year . is there somebody else that could do it ?\nplease let me know who i should send the evaluation to .\nbest regards ,\nmichael curran\nceo\nquantin ' leap limited\npiercy house\n7 copthall avenue\nlondon ec 2 r 7 nj\ntel : + 44 ( 0 ) 20 7562 3450\nfax : + 44 ( 0 ) 20 7562 3411\nmailto : mcurran @ quantinleap . com\nhttp : / / www . quantinleap . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.908+0000", "entityId": 10652, "properties": {"text": "Subject: re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in the\nafternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21 am\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through license ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ? if\nso , please give me an email shout at the above address or leave a message on\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with the\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our power\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.913+0000", "entityId": 10653, "properties": {"text": "Subject: enron credit : more recent business plan\n- - - - - - - - - - - - - - - - - - - - - - forwarded by amitava dhar / corp / enron on 04 / 30 / 2001\n11 : 52 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nscott salmon\n04 / 27 / 2001 09 : 04 am\nto : iris mack / enron @ enronxgate , amitava dhar / corp / enron @ enron\ncc :\nsubject : more recent business plan\niris / amitava ,\nhere ' s something more recent to chew on . . . note : strictly confidential .\ncheers ,\nscott", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.917+0000", "entityId": 10654, "properties": {"text": "Subject: very rough draft of the \" enron strategic plan \" to be sent to\nprofessor duffie\nhi ,\nas per your request , here is a very rough draft of the document you\nrequested . it is far from being complete .\nhopefully while in london i will have time to work on it some more .\nyour comments and feedback would be greatly appreciated .\nthanks ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.922+0000", "entityId": 10655, "properties": {"text": "Subject: research get - together at sandeep kohli ' s new home\nhello everyone :\nhere is your invitation and a map to sandeep ' s home .\nsee you saturday !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.927+0000", "entityId": 10656, "properties": {"text": "Subject: research get - together at sandeep kohli ' s new home\nhello everyone :\nhere is your invitation and a map to sandeep ' s home .\nsee you saturday !", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.932+0000", "entityId": 10657, "properties": {"text": "Subject: siam conference\ndear mr . kaminski ,\n?\ni was one of the participants of the siam conference which was held last\nweek - end , and i have very much enjoyed your presentation . at the end of the\nsession , i was hoping to talk to you , but unfortunately you were already\ngone . you said that if we were interested , you could e - mail a copy of your\ntalk . i would appreciate if you could send a copy to this e - mail address .\n?\ni am a mathematics ph . d . student at texas a & m university and i will be\ngraduating this august . i am very much interested in working in the modeling\nof energy markets . can you please tell me whom i should send my resume , and\nwho i should contact in your company about a possible position in your\nresearch group .\n?\nthank you for your time .\n?\nsincerely\n?\ng . aysu bilgin\ntexas a & m university\ndepartment of mathematics\n?\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.938+0000", "entityId": 10658, "properties": {"text": "Subject: follow - up on siam workshop\ni am forwarding for your attention the resume of peter percell\nwho has an extensive experience in modeling physical flows\nof natural gas in pipeline systems . peter is looking currently for a job .\ni met him last week at the meeting of the science and industry advance with\nmathematics\nsociety at the university of houston .\nthe application of recent developments in optimization theory\nand numerical methods can help enron to improve further\nefficiency of our pipeline system and reduce the consumption of compressor\nfuel .\nplease , let me know if you interested in introducing peter to executives\nin your organization . i shall be glad to make arrangements for an interview .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npeter percell on 04 / 30 / 2001 11 : 16 : 58 am\nto : vincent kaminski\ncc :\nsubject : follow - up on siam workshop\ni enjoyed your presentation , and meeting you briefly afterwards , at the\nsiam workshop last friday .\ni have extensive experience as a technical leader in the design and\ndevelopment of modeling and simulation software products , mostly\nfor the oil and gas pipeline industry .\ni am looking for a position that can utilize my software development and\nmathematical skills . getting out of the narrow confines of the pipeline\nsimulation industry would be a plus .\nplease consider whether i might fit in your group . your answer to a\nquestion indicated that i have several of the skills you look for .\nalso , please let me know , by email , the names and contact information of\nother managers within enron who might benefit from having someone with\nmy qualifications in their group .\nattached are my resume and an addendum covering academic & consulting\nexperience . publications are available on request .\ni will call you in a couple of days to follow up on this email .\nthank you for your time .\npeter percell 10030 doliver drive\npercell @ swbell . net houston , tx 77042 - 2016\n( 713 ) 532 - 3836 voice & fax\n- percell , peter resume only . doc\n- percell , peter a & c exp . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.943+0000", "entityId": 10659, "properties": {"text": "Subject: siam conference\ndear mr . kaminski ,\ni was one of the participants of the siam conference which was held last week - end , and i have very much enjoyed your presentation . at the end of the session , i was hoping to talk to you , but unfortunately you were already gone . you said that if we were interested , you could e - mail a copy of your talk . i would appreciate if you could send a copy to this e - mail address .\ni am a mathematics ph . d . student at texas a & m university and i will be graduating this august . i am very much interested in working in the modeling of energy markets . can you please tell me whom i should send my resume , and who i should contact in your company about a possible position in your research group .\nthank you for your time .\nsincerely\ng . aysu bilgin\ntexas a & m university\ndepartment of mathematics\nget your free download of msn explorer at http : / / explorer . msn . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.952+0000", "entityId": 10660, "properties": {"text": "Subject: re : follow - up on siam workshop\nvince ,\nthanks for your quick response .\nif you feel it is appropriate , i would like to know who you sent\nmy resume to , so that i will know that they have already been\n\" covered \" .\npeter\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 30 , 2001 2 : 17 pm\nto : percell @ swbell . net\nsubject : re : follow - up on siam workshop\npeter ,\ni forwarded your resume with my recommendation to two\nsenior executives in our transportation and storage group .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.960+0000", "entityId": 10661, "properties": {"text": "Subject: follow - up on siam workshop\ni am forwarding for your attention the resume of peter percell\nwho has an extensive experience in modeling physical flows\nof natural gas in pipeline systems . peter is looking currently for a job .\ni met him last week at the meeting of the science and industry advance with mathematics\nsociety at the university of houston .\nthe application of recent developments in optimization theory\nand numerical methods can help enron to improve further\nefficiency of our pipeline system and reduce the consumption of compressor fuel .\nplease , let me know if you interested in introducing peter to executives\nin your organization . i shall be glad to make arrangements for an interview .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001 02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npeter percell on 04 / 30 / 2001 11 : 16 : 58 am\nto : vincent kaminski\ncc :\nsubject : follow - up on siam workshop\ni enjoyed your presentation , and meeting you briefly afterwards , at the\nsiam workshop last friday .\ni have extensive experience as a technical leader in the design and\ndevelopment of modeling and simulation software products , mostly\nfor the oil and gas pipeline industry .\ni am looking for a position that can utilize my software development and\nmathematical skills . getting out of the narrow confines of the pipeline\nsimulation industry would be a plus .\nplease consider whether i might fit in your group . your answer to a\nquestion indicated that i have several of the skills you look for .\nalso , please let me know , by email , the names and contact information of\nother managers within enron who might benefit from having someone with\nmy qualifications in their group .\nattached are my resume and an addendum covering academic & consulting\nexperience . publications are available on request .\ni will call you in a couple of days to follow up on this email .\nthank you for your time .\npeter percell 10030 doliver drive\npercell @ swbell . net houston , tx 77042 - 2016\n( 713 ) 532 - 3836 voice & fax\n- percell , peter resume only . doc\n- percell , peter a & c exp . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.965+0000", "entityId": 10662, "properties": {"text": "Subject: resending paper\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 04 / 30 / 2001 05 : 04\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" lynn nazareth \" on 04 / 27 / 2001 12 : 46 : 37 pm\nto : jason . sokolov @ enron . com\ncc :\nsubject : resending paper\njason :\nhere is our team ' s assignment . please confirm receipt . i am also sending you\nthe file via my outlook address in case this doesn ' t work .\nthis is our team :\nhelen demianenko\njavier lamas\nlynn nazareth\nshauywn smith\ncarlos wheelock\nsarah wooddy\nthanks , jason ! see you at enron this fall !\nlynn\nget your free download of msn explorer at http : / / explorer . msn . com\n- mg _ analysis _ final . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.971+0000", "entityId": 10663, "properties": {"text": "Subject: re : alp presentation\ndennis ,\nthanks for you message . i shall send you more information regarding the\ndinner later this week .\nchristie patrick , who is in charge of our university liaison unit , is making\narrangements for\nthe evening at the enron field . hopefully , we shall be able to combine\ndinner with a game .\nvince\n\" dennis w . loughridge \" on 04 / 30 / 2001 10 : 49 : 10 am\nplease respond to\nto :\ncc :\nsubject : re : alp presentation\nvince\ni will be attending the alp presentation on may 7 and would be pleased to\njoin the team for dinner if it is not too late .\nthank you\ndennis loughridge\ndennis w . loughridge\ndirector of energy consortium\nrice university\n713 - 348 - 2812\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , april 10 , 2001 8 : 16 am\nto : loughrid @ rice . edu\ncc : luigical @ rice . edu\nsubject : alp presentation\nsorry , trying again . i probably got a wrong e - mail address and the original\nmessage\nwas returned .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\nlounghrid @ rice . edu , luigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.975+0000", "entityId": 10664, "properties": {"text": "Subject: re : alp presentation\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001\n02 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dennis w . loughridge \" on 04 / 30 / 2001 10 : 49 : 10 am\nplease respond to\nto :\ncc :\nsubject : re : alp presentation\nvince\ni will be attending the alp presentation on may 7 and would be pleased to\njoin the team for dinner if it is not too late .\nthank you\ndennis loughridge\ndennis w . loughridge\ndirector of energy consortium\nrice university\n713 - 348 - 2812\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , april 10 , 2001 8 : 16 am\nto : loughrid @ rice . edu\ncc : luigical @ rice . edu\nsubject : alp presentation\nsorry , trying again . i probably got a wrong e - mail address and the original\nmessage\nwas returned .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\nlounghrid @ rice . edu , luigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.980+0000", "entityId": 10665, "properties": {"text": "Subject: term paper\ndr . kaminski ,\nattached please find a copy of our term paper . advise\nif you experience problems opening the attachment .\nbest regards ,\nken jett\n- combo 2 [ 1 ] . v 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.984+0000", "entityId": 10666, "properties": {"text": "Subject: energy futures contracts project\nhi vince and jason :\nplease find attached a copy of our project . thank you for an enjoyable and\ninformative class .\nsincerely ,\nrishad patel\nneeraj hingorani\nduane maue\neric van stone\njohn ganguzza\ngrant johnson\npaulo yoshiura\n- . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.989+0000", "entityId": 10667, "properties": {"text": "Subject: resending paper\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 04 / 30 / 2001 08 : 18\nam - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" lynn nazareth \" on 04 / 27 / 2001 12 : 46 : 37 pm\nto : jason . sokolov @ enron . com\ncc :\nsubject : resending paper\njason :\nhere is our team ' s assignment . please confirm receipt . i am also sending you\nthe file via my outlook address in case this doesn ' t work .\nthis is our team :\nhelen demianenko\njavier lamas\nlynn nazareth\nshauywn smith\ncarlos wheelock\nsarah wooddy\nthanks , jason ! see you at enron this fall !\nlynn\nget your free download of msn explorer at http : / / explorer . msn . com\n- mg _ analysis _ final . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:56.995+0000", "entityId": 10668, "properties": {"text": "Subject: resending paper\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 04 / 30 / 2001 05 : 04 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" lynn nazareth \" on 04 / 27 / 2001 12 : 46 : 37 pm\nto : jason . sokolov @ enron . com\ncc :\nsubject : resending paper\njason :\nhere is our team ' s assignment . please confirm receipt . i am also sending you\nthe file via my outlook address in case this doesn ' t work .\nthis is our team :\nhelen demianenko\njavier lamas\nlynn nazareth\nshauywn smith\ncarlos wheelock\nsarah wooddy\nthanks , jason ! see you at enron this fall !\nlynn\nget your free download of msn explorer at http : / / explorer . msn . com\n- mg _ analysis _ final . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.000+0000", "entityId": 10669, "properties": {"text": "Subject: re : alp presentation\ndennis ,\nthanks for you message . i shall send you more information regarding the dinner later this week .\nchristie patrick , who is in charge of our university liaison unit , is making arrangements for\nthe evening at the enron field . hopefully , we shall be able to combine dinner with a game .\nvince\n\" dennis w . loughridge \" on 04 / 30 / 2001 10 : 49 : 10 am\nplease respond to\nto :\ncc :\nsubject : re : alp presentation\nvince\ni will be attending the alp presentation on may 7 and would be pleased to\njoin the team for dinner if it is not too late .\nthank you\ndennis loughridge\ndennis w . loughridge\ndirector of energy consortium\nrice university\n713 - 348 - 2812\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , april 10 , 2001 8 : 16 am\nto : loughrid @ rice . edu\ncc : luigical @ rice . edu\nsubject : alp presentation\nsorry , trying again . i probably got a wrong e - mail address and the original\nmessage\nwas returned .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\nlounghrid @ rice . edu , luigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.006+0000", "entityId": 10670, "properties": {"text": "Subject: re : alp presentation\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001 02 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" dennis w . loughridge \" on 04 / 30 / 2001 10 : 49 : 10 am\nplease respond to\nto :\ncc :\nsubject : re : alp presentation\nvince\ni will be attending the alp presentation on may 7 and would be pleased to\njoin the team for dinner if it is not too late .\nthank you\ndennis loughridge\ndennis w . loughridge\ndirector of energy consortium\nrice university\n713 - 348 - 2812\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , april 10 , 2001 8 : 16 am\nto : loughrid @ rice . edu\ncc : luigical @ rice . edu\nsubject : alp presentation\nsorry , trying again . i probably got a wrong e - mail address and the original\nmessage\nwas returned .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 10 / 2001\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n04 / 10 / 2001 08 : 13 am\nto : barrett @ rice . edu , uecker @ rice . edu , cmiller @ rice . edu ,\nlounghrid @ rice . edu , luigical @ rice . edu\ncc : vince j kaminski / hou / ect @ ect , christie patrick / hou / ect @ ect , shirley\ncrenshaw / hou / ect @ ect , kenneth parkhill / na / enron @ enron\nsubject : alp presentation\non behalf of enron corp . i would like to invite you to an alp project\npresentation by a group of students\nof jesse h . jones graduate school of management , rice university .\nthe students will present the results of a research project regarding\nelectronic trading\nplatforms in the energy industry .\nthe presentation will be held on may 7 , at 4 : 00 p . m . at enron , 1400 smith .\nwe would also like to invite you to dinner , following the presentation .\nvince kaminski\nvincent kaminski\nmanaging director - research\nenron corp .\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nphone : ( 713 ) 853 3848\n( 713 ) 410 5396 ( cell )\nfax : ( 713 ) 646 2503\ne - mail : vkamins @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.011+0000", "entityId": 10671, "properties": {"text": "Subject: term paper\ndr . kaminski ,\nattached please find a copy of our term paper . advise\nif you experience problems opening the attachment .\nbest regards ,\nken jett\n- combo 2 [ 1 ] . v 2 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.017+0000", "entityId": 10672, "properties": {"text": "Subject: energy futures contracts project\nplease respond to hi vince and jason :\nplease find attached a copy of our project . thank you for an enjoyable and\ninformative class .\nsincerely ,\nrishad patel\nneeraj hingorani\nduane maue\neric van stone\njohn ganguzza\ngrant johnson\npaulo yoshiura\n- . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.021+0000", "entityId": 10673, "properties": {"text": "Subject: resending paper\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 04 / 30 / 2001 08 : 18 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" lynn nazareth \" on 04 / 27 / 2001 12 : 46 : 37 pm\nto : jason . sokolov @ enron . com\ncc :\nsubject : resending paper\njason :\nhere is our team ' s assignment . please confirm receipt . i am also sending you\nthe file via my outlook address in case this doesn ' t work .\nthis is our team :\nhelen demianenko\njavier lamas\nlynn nazareth\nshauywn smith\ncarlos wheelock\nsarah wooddy\nthanks , jason ! see you at enron this fall !\nlynn\nget your free download of msn explorer at http : / / explorer . msn . com\n- mg _ analysis _ final . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.026+0000", "entityId": 10674, "properties": {"text": "Subject: re : weather and energy price data\nmulong wang on 04 / 24 / 2001 10 : 58 : 43 am\nto :\ncc :\nsubject : re : weather and energy price data\nhello , elena :\nthank you very much for your data . i sent an email to ft but had no\nresponse so far . as soon as i got their permission i will let you know .\nhave a great day !\nmulong\non thu , 19 apr 2001 elena . chilkina @ enron . com wrote :\n>\n> mulong ,\n>\n> please find attached a file with henry hub natural gas prices . the data\n> starts from 1995 and given on the daily basis , please let us know when we\n> can proceed with electricity prices .\n>\n> sincerely ,\n> elena chilkina\n>\n> ( see attached file : henryhub . xls )\n>\n>\n>\n>\n>\n>\n> vince j kaminski @ ect\n> 04 / 16 / 2001 08 : 19 am\n>\n> to : mulong wang @ enron\n> cc : vince j kaminski / hou / ect @ ect , elena chilkina / corp / enron @ enron ,\n> macminnr @ uts . cc . utexas . edu\n>\n> subject : re : weather and energy price data ( document link : elena\n> chilkina )\n>\n> mulong ,\n>\n> we shall send you natural gas henry hub prices right away .\n> please look at the last winter and the winter of\n> 95 / 96 .\n>\n> we shall prepare for you the electricity price\n> information ( cinergy , cobb and palo verde ) but\n> you have to approach ft ( the publishers of\n> megawatts daily , a newsletter that produces the price\n> index we recommend using ) and request the permision\n> to use the data . we are not allowed to distribute\n> this information .\n>\n> please , explain that this is for academic research and that\n> we can produce the time series for you ,\n> conditional on the permission from the publishers\n> of megawatts daily .\n>\n> vince kaminski\n>\n>\n>\n> mulong wang on 04 / 15 / 2001 03 : 43 : 26 am\n>\n> to : vkamins @ ect . enron . com\n> cc : richard macminn\n> subject : weather and energy price data\n>\n>\n> dear dr . kaminski :\n>\n> i am a phd candidate under the supervision of drs . richard macminn and\n> patrick brockett . i am now working on my dissertation which is focused on\n> the weather derivatives and credit derivatives .\n>\n> could you kindly please offer me some real weather data information about\n> the price peak or plummet because of the weather conditions ?\n>\n> the past winter of 2000 was very cold nationwide , and there may be a\n> significant price jump for natural gas or electricity . could you\n> please offer me some energy price data during that time period ?\n>\n> your kind assistance will be highly appreciated and have a great day !\n>\n> mulong\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.032+0000", "entityId": 10675, "properties": {"text": "Subject: re : fw : fw : visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi nalin ,\nmartin lin asked if you have a paper \" or something \" related to the lecture you will be giving to us on may 17 th .\nciao ,\niris\n- - - - - original message - - - - -\nfrom : lin , martin\nsent : monday , april 30 , 2001 8 : 52 am\nto : mack , iris\nsubject : re : fw : fw : visit to enron by professor nalin kulatilaka of boston university\nis there a paper or something related to this topic that we can look over beforehand ?\nthanks ,\nmartin\niris mack / enron @ enronxgate 04 / 27 / 01 05 : 42 pm to : chonawee supatgiat / corp / enron @ enron , shalesh ganjoo / enron communications @ enron communications , martin lin / hou / ect @ ect , martin lin / contractor / enron communications @ enron communications cc : subject : fw : fw : visit to enron by professor nalin kulatilaka of boston university\nfyi\n- - - - - original message - - - - -\nfrom : mack , iris\nsent : monday , april 23 , 2001 2 : 45 pm\nto : crenshaw , shirley ; crenshaw , shirley ; dupont , anita\ncc : kaminski , vince ; ' nalink @ bu . edu '\nsubject : fw : fw : visit to enron by professor nalin kulatilaka of boston university\nhi ,\nhere is the title and abstract for professor kulatilaka ' s talk on may 17 th at our 11 : 30 am research group luncheon / seminar .\niris\ntitle : \" using the mobile internet to make new markets \"\nabstract :\nprofessor kulatilaka will talk about some new ideas that he is working on which involve\nusing the micro billing / payments capability of a packet - switched wireless\nnetwork to create new markets . the potential markets range from spot\nmarkets for local spectrum to congestion - based pricing for highways .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.037+0000", "entityId": 10676, "properties": {"text": "Subject: re : weather and energy price data\nmulong wang on 04 / 24 / 2001 10 : 58 : 43 am\nto :\ncc :\nsubject : re : weather and energy price data\nhello , elena :\nthank you very much for your data . i sent an email to ft but had no\nresponse so far . as soon as i got their permission i will let you know .\nhave a great day !\nmulong\non thu , 19 apr 2001 elena . chilkina @ enron . com wrote :\n>\n> mulong ,\n>\n> please find attached a file with henry hub natural gas prices . the data\n> starts from 1995 and given on the daily basis , please let us know when we\n> can proceed with electricity prices .\n>\n> sincerely ,\n> elena chilkina\n>\n> ( see attached file : henryhub . xls )\n>\n>\n>\n>\n>\n>\n> vince j kaminski @ ect\n> 04 / 16 / 2001 08 : 19 am\n>\n> to : mulong wang @ enron\n> cc : vince j kaminski / hou / ect @ ect , elena chilkina / corp / enron @ enron ,\n> macminnr @ uts . cc . utexas . edu\n>\n> subject : re : weather and energy price data ( document link : elena\n> chilkina )\n>\n> mulong ,\n>\n> we shall send you natural gas henry hub prices right away .\n> please look at the last winter and the winter of\n> 95 / 96 .\n>\n> we shall prepare for you the electricity price\n> information ( cinergy , cobb and palo verde ) but\n> you have to approach ft ( the publishers of\n> megawatts daily , a newsletter that produces the price\n> index we recommend using ) and request the permision\n> to use the data . we are not allowed to distribute\n> this information .\n>\n> please , explain that this is for academic research and that\n> we can produce the time series for you ,\n> conditional on the permission from the publishers\n> of megawatts daily .\n>\n> vince kaminski\n>\n>\n>\n> mulong wang on 04 / 15 / 2001 03 : 43 : 26 am\n>\n> to : vkamins @ ect . enron . com\n> cc : richard macminn\n> subject : weather and energy price data\n>\n>\n> dear dr . kaminski :\n>\n> i am a phd candidate under the supervision of drs . richard macminn and\n> patrick brockett . i am now working on my dissertation which is focused on\n> the weather derivatives and credit derivatives .\n>\n> could you kindly please offer me some real weather data information about\n> the price peak or plummet because of the weather conditions ?\n>\n> the past winter of 2000 was very cold nationwide , and there may be a\n> significant price jump for natural gas or electricity . could you\n> please offer me some energy price data during that time period ?\n>\n> your kind assistance will be highly appreciated and have a great day !\n>\n> mulong\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.043+0000", "entityId": 10677, "properties": {"text": "Subject: re : corporate card\nyes tony ,\nmike authorized you for a corp . card , however that ' s\nsomething your asst . can do in london for you .\nif you need further asst . please inform . . . . . . .\nkevin moore\ntony hamilton @ enron\n04 / 30 / 2001 07 : 28 am\nto : mike . a . roberts @ enron . com , tani . nath @ enron . com , kevin . g . moore @ enron . com\ncc :\nsubject : corporate card\nis it possible for me to get a corporate card , and if so , who do i need to\ncontact regarding this ?\nthanks\ntony", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.048+0000", "entityId": 10678, "properties": {"text": "Subject: re : prc meeting date\nanne ,\nthanks . shirley is checking my calendar and will call you about the schedule .\nthe entire week of the 11 th does not look good for me .\nvince\nfrom : anne labbe / enron @ enronxgate on 04 / 30 / 2001 11 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / houston / eott @ eott\nsubject : prc meeting date\nvince ,\njust wanted to check with you to see if you have a preference as to when you\nwould like to have your mid - year prc meeting . if you and your team are\navailable , i would prefer to have it on either june 12 th , 13 th or 14 th . i am\nvery flexible though , so please just let me know so that i can start making\nthe necessary accommodations .\nthanks ,\nanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.057+0000", "entityId": 10679, "properties": {"text": "Subject: re : fw : fw : visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi nalin ,\nmartin lin asked if you have a paper \" or something \" related to the lecture\nyou will be giving to us on may 17 th .\nciao ,\niris\n- - - - - original message - - - - -\nfrom : lin , martin\nsent : monday , april 30 , 2001 8 : 52 am\nto : mack , iris\nsubject : re : fw : fw : visit to enron by professor nalin kulatilaka of boston\nuniversity\nis there a paper or something related to this topic that we can look over\nbeforehand ?\nthanks ,\nmartin\niris mack / enron @ enronxgate 04 / 27 / 01 05 : 42 pm to : chonawee\nsupatgiat / corp / enron @ enron , shalesh ganjoo / enron communications @ enron\ncommunications , martin lin / hou / ect @ ect , martin lin / contractor / enron\ncommunications @ enron communications cc : subject : fw : fw : visit to enron by\nprofessor nalin kulatilaka of boston university\nfyi\n- - - - - original message - - - - -\nfrom : mack , iris\nsent : monday , april 23 , 2001 2 : 45 pm\nto : crenshaw , shirley ; crenshaw , shirley ; dupont , anita\ncc : kaminski , vince ; ' nalink @ bu . edu '\nsubject : fw : fw : visit to enron by professor nalin kulatilaka of boston\nuniversity\nhi ,\nhere is the title and abstract for professor kulatilaka ' s talk on may 17 th\nat our 11 : 30 am research group luncheon / seminar .\niris\ntitle : \" using the mobile internet to make new markets \"\nabstract :\nprofessor kulatilaka will talk about some new ideas that he is working on\nwhich involve\nusing the micro billing / payments capability of a packet - switched wireless\nnetwork to create new markets . the potential markets range from spot\nmarkets for local spectrum to congestion - based pricing for highways .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.066+0000", "entityId": 10680, "properties": {"text": "Subject: re : prc meeting date\nanne ,\nthanks . shirley is checking my calendar and will call you about the schedule .\nthe entire week of the 11 th does not look good for me .\nvince\nfrom : anne labbe / enron @ enronxgate on 04 / 30 / 2001 11 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc : shirley crenshaw / houston / eott @ eott\nsubject : prc meeting date\nvince ,\njust wanted to check with you to see if you have a preference as to when you would like to have your mid - year prc meeting . if you and your team are available , i would prefer to have it on either june 12 th , 13 th or 14 th . i am very flexible though , so please just let me know so that i can start making the necessary accommodations .\nthanks ,\nanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.073+0000", "entityId": 10681, "properties": {"text": "Subject: installation of new programs\nphillip ,\nhow can i install new programs on my laptop , without\nthe administrator ' s privileges ?\none example : when i travel i use aol to get access to my mail\nand to communicate with the office . windows 2000 does not allow\nme to install it .\nalso , i have my private statistical software\ni often use when i work at night during business trips .\ni would like to load it as well .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.078+0000", "entityId": 10682, "properties": {"text": "Subject: dba administrator\ncecil ,\ni ' ve spoken with charlene just now and she sounds very helpful .\ncan you give her a call tomorrow morning to iron out exactly how\nyou want to access the enpower data base ? i ' ve left your name\nwith her so she ' s expecting your call .\nbest ,\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex huang / corp / enron on 05 / 01 / 2001 05 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n05 / 01 / 2001 05 : 13 pm\nto : michelle d cisneros / hou / ect @ ect\ncc : alex huang / corp / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : dba administrator\nmichelle ,\nthe name of the db administrator for enpower is charlene fricker ,\n5 - 3487 . alex will contact her regarding the access to the curve .\ni think it ' s a problem many layers below gary hickerson ' s level\nof responsibility and i hope we can handle it without using his valuable\ntime .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.082+0000", "entityId": 10683, "properties": {"text": "Subject: dba administrator\ncecil ,\ni ' ve spoken with charlene just now and she sounds very helpful .\ncan you give her a call tomorrow morning to iron out exactly how\nyou want to access the enpower data base ? i ' ve left your name\nwith her so she ' s expecting your call .\nbest ,\nalex\n- - - - - - - - - - - - - - - - - - - - - - forwarded by alex huang / corp / enron on 05 / 01 / 2001 05 : 31\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski @ ect\n05 / 01 / 2001 05 : 13 pm\nto : michelle d cisneros / hou / ect @ ect\ncc : alex huang / corp / enron @ enron , vince j kaminski / hou / ect @ ect\nsubject : dba administrator\nmichelle ,\nthe name of the db administrator for enpower is charlene fricker ,\n5 - 3487 . alex will contact her regarding the access to the curve .\ni think it ' s a problem many layers below gary hickerson ' s level\nof responsibility and i hope we can handle it without using his valuable\ntime .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.087+0000", "entityId": 10684, "properties": {"text": "Subject: re : trading ag prods .\nvince ,\njust wanted to let you know that i have done some preliminary , high level ,\nresearch into this commodity and would be glad to share it . please let me\nknow if you would be interested in it . thank you .\nshalesh ganjoo\nvince j kaminski @ ect\n05 / 01 / 01 10 : 20 am\nto : shalesh ganjoo / enron communications @ enron communications @ enron\ncc : elsa piekielniak / corp / enron @ enron\nsubject : re : trading ag prods .\nshalesh ,\na good idea . i shall forward it to the ag traders .\nvince\nfrom : shalesh ganjoo @ enron communications on 05 / 01 / 2001 10 : 12 am\nto : nelson neale / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : trading ag prods .\nnelson ,\ni know you are focusing on agricultural products for trading , so i just\nwanted to know if we are looking at wool . i know that it ' s traded in\naustralia and new zealand , so we might be able to look into it as well .\nplease let me know . thank you .\nshalesh ganjoo", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.092+0000", "entityId": 10685, "properties": {"text": "Subject: dba administrator\nmichelle ,\nthe name of the db administrator for enpower is charlene fricker ,\n5 - 3487 . alex will contact her regarding the access to the curve .\ni think it ' s a problem many layers below gary hickerson ' s level\nof responsibility and i hope we can handle it without using his valuable\ntime .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.097+0000", "entityId": 10686, "properties": {"text": "Subject: re : trading ag prods .\nvince ,\njust wanted to let you know that i have done some preliminary , high level , research into this commodity and would be glad to share it . please let me know if you would be interested in it . thank you .\nshalesh ganjoo\nvince j kaminski @ ect 05 / 01 / 01 10 : 20 am to : shalesh ganjoo / enron communications @ enron communications @ enron cc : elsa piekielniak / corp / enron @ enron subject : re : trading ag prods .\nshalesh ,\na good idea . i shall forward it to the ag traders .\nvince\nfrom : shalesh ganjoo @ enron communications on 05 / 01 / 2001 10 : 12 am\nto : nelson neale / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : trading ag prods .\nnelson ,\ni know you are focusing on agricultural products for trading , so i just wanted to know if we are looking at wool . i know that it ' s traded in australia and new zealand , so we might be able to look into it as well . please let me know . thank you .\nshalesh ganjoo\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.102+0000", "entityId": 10687, "properties": {"text": "Subject: re : mutually agreed upon changes okay\nlarry ,\ni had a brief discussion with our lawyers . they are strongly advising us to keep the changes we earlier incorporated , but to which you have not assented . as this is a matter of company policy , unfortunately we do not have much room to maneuver . if it would help you to have a direct conversation with the lawyers to appreciate our company ' s perspective , i can arrange for a phone call . please advise . thanks .\nrakesh\nlawrencelrtnmt @ aol . com on 05 / 01 / 2001 08 : 06 : 47 am\nto : rakesh . bharati @ enron . com\ncc :\nsubject : mutually agreed upon changes okay\nhi rakesh ,\nthanks for your work on the non - disclosure agreement .\nyour integration of our mutually agreed upon modifications looks good ,\nrakesh . thanks ! i ' ll await your next version .\nlarry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.107+0000", "entityId": 10688, "properties": {"text": "Subject: reply to your email / ignore my voicemail\nplease respond to vince :\nthanks for that . i just wanted to get a sense from you who the right people\nare and how i can establish effective contact . when he went on to different\nresponsibilities , john goodpasture suggested i get the dialog going with the\nright commercial people in enron . i will be in your neighborhood in the 200\npm time range and will give you a quick call . that will conserve your\nvaluable time and hopefully get me in touch with the right people . i am\nreading this after your voicemail , so this supersedes that .\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : tuesday , may 01 , 2001 6 : 03 am\nto : dale . nesbitt @ marketpointinc . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : get together this coming tuesday ?\ndale ,\ni can reserve 2 to 2 : 30 time slot but there is really not much that\ni can tell you at this point .\nthe commercial groups are still interested and are moving\ntowards the test of the package . as soon as they will decide\nto move ahead , we ( research ) shall be involved , helping to evaluate the\nproduct . as i have said , we are not the\ndecision makers in this case .\ni think that we should allow simply the process to run its course .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 05 : 59 : 30\npm\nplease respond to\nto :\ncc :\nsubject : re : get together this coming tuesday ?\nvince :\ni will call tomorrow in the morning . lunch or right after lunch would be\ngreat . how would 100 pm work for you ?\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 30 , 2001 3 : 07 pm\nto : dale . nesbitt @ marketpointinc . com\ncc : kimberly . watson @ enron . com ; vince . j . kaminski @ enron . com\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in\nthe afternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21\nam\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through\nlicense ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ?\nif\nso , please give me an email shout at the above address or leave a message\non\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with\nthe\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our\npower\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.111+0000", "entityId": 10689, "properties": {"text": "Subject: re : get together this coming tuesday ?\ndale ,\ni can reserve 2 to 2 : 30 time slot but there is really not much that\ni can tell you at this point .\nthe commercial groups are still interested and are moving\ntowards the test of the package . as soon as they will decide\nto move ahead , we ( research ) shall be involved , helping to evaluate the\nproduct . as i have said , we are not the\ndecision makers in this case .\ni think that we should allow simply the process to run its course .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 05 : 59 : 30 pm\nplease respond to\nto :\ncc :\nsubject : re : get together this coming tuesday ?\nvince :\ni will call tomorrow in the morning . lunch or right after lunch would be\ngreat . how would 100 pm work for you ?\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 30 , 2001 3 : 07 pm\nto : dale . nesbitt @ marketpointinc . com\ncc : kimberly . watson @ enron . com ; vince . j . kaminski @ enron . com\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in\nthe afternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21\nam\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through\nlicense ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ?\nif\nso , please give me an email shout at the above address or leave a message\non\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with\nthe\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our\npower\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.116+0000", "entityId": 10690, "properties": {"text": "Subject: re : willow and pathstar evaluations\nplease respond to mike curran\nok - thanks .\n- - - - - original message - - - - -\nfrom :\nto : \" mike curran \"\ncc : ;\nsent : monday , april 30 , 2001 11 : 34 pm\nsubject : re : willow and pathstar evaluations\n>\n> mike ,\n>\n> we are short manpower in london . we shall try to\n> evaluate the software in houston .\n>\n> vince\n>\n>\n>\n>\n>\n> \" mike curran \" on 04 / 24 / 2001 10 : 03 : 24 am\n>\n> please respond to \" mike curran \"\n>\n> to :\n> cc :\n> subject : willow and pathstar evaluations\n>\n>\n>\n> hi vince -\n>\n> hope all is well with you .\n>\n> sharad hasn ' t had time to evaluate our willow tree or monte carlo software\n> since the middle of last year . is there somebody else that could do it ?\n>\n> please let me know who i should send the evaluation to .\n>\n> best regards ,\n>\n> michael curran\n> ceo\n> quantin ' leap limited\n> piercy house\n> 7 copthall avenue\n> london ec 2 r 7 nj\n>\n> tel : + 44 ( 0 ) 20 7562 3450\n> fax : + 44 ( 0 ) 20 7562 3411\n>\n> mailto : mcurran @ quantinleap . com\n>\n> http : / / www . quantinleap . com\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.120+0000", "entityId": 10691, "properties": {"text": "Subject: dr . rafael campo\ngood morning ,\n?\ni have attached a press release that may be of interest to you .\n?\nif you have any questions regarding it , or if we can be of assistance in any\nother way , please call me directly at 972 - 245 - 8300 .\n?\nthanks and best regards ,\nkatheryn stalker\n?\nrisk limited corporation\nbox 612666 ? ? dallas , texas 75261 ? ? usa ? ? ? tel : 972 . 245 . 8300 ? ? fax :\n972 . 245 . 8318 ? ? ? www . risklimited . com\n- press release dr . rafael campo 5 - 2 - 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.126+0000", "entityId": 10692, "properties": {"text": "Subject: re : fw : fw : get together this coming tuesday ?\nthanks for the update . kim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , may 01 , 2001 2 : 08 pm\nto : watson , kimberly\ncc : gadd , eric ; kaminski , vince\nsubject : re : fw : fw : get together this coming tuesday ?\nkim ,\ni talked to dale early this morning and suggested that we meet during his\nnext trip to houston\nwhen we decide on timing of our project .\nvince\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 08 : 41 am\nto : vince j kaminski / hou / ect @ ect , eric gadd / et & s / enron @ enron\ncc :\nsubject : fw : fw : get together this coming tuesday ?\nvince ,\nif dale comes in to see you , it looks like eric might be available to meet\nwith you as well . it would be a good opportunity for eric to meet dale and\nget a little more information on his model . eric ' s phone number is x 54713 .\nthanks ,\nkim .\n- - - - - original message - - - - -\nfrom : gadd , eric\nsent : monday , april 30 , 2001 8 : 12 pm\nto : watson , kimberly\nsubject : re : fw : get together this coming tuesday ?\nworks for me . give me a call at 9 : 30 .\nfrom : kimberly watson / enron @ enronxgate on 04 / 30 / 2001 05 : 09 pm\nto : eric gadd / et kaminski , vince\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in the\nafternoon .\nvince\n>\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21 am\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through license ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ? if\nso , please give me an email shout at the above address or leave a message on\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with the\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our power\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.131+0000", "entityId": 10693, "properties": {"text": "Subject: re : fw : fw : get together this coming tuesday ?\nkim ,\ni talked to dale early this morning and suggested that we meet during his\nnext trip to houston\nwhen we decide on timing of our project .\nvince\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 08 : 41 am\nto : vince j kaminski / hou / ect @ ect , eric gadd / et & s / enron @ enron\ncc :\nsubject : fw : fw : get together this coming tuesday ?\nvince ,\nif dale comes in to see you , it looks like eric might be available to meet\nwith you as well . it would be a good opportunity for eric to meet dale and\nget a little more information on his model . eric ' s phone number is x 54713 .\nthanks ,\nkim .\n- - - - - original message - - - - -\nfrom : gadd , eric\nsent : monday , april 30 , 2001 8 : 12 pm\nto : watson , kimberly\nsubject : re : fw : get together this coming tuesday ?\nworks for me . give me a call at 9 : 30 .\nfrom : kimberly watson / enron @ enronxgate on 04 / 30 / 2001 05 : 09 pm\nto : eric gadd / et kaminski , vince\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in the\nafternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21 am\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through license ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ? if\nso , please give me an email shout at the above address or leave a message on\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with the\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our power\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.136+0000", "entityId": 10694, "properties": {"text": "Subject: agenda for larry thorne ' s presentation and meetings , friday , may\n4 th\nattached is the agenda for larry thorne ' s presentation , friday ,\nmay 4 th .\ni have scheduled vasant and krishna to take him to lunch . please let me\nknow where you would like to go and i will make reservations .\nthanks !\nshirley", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.142+0000", "entityId": 10695, "properties": {"text": "Subject: re : mutually agreed upon changes okay\nlarry ,\ni had a brief discussion with our lawyers . they are strongly advising us to\nkeep the changes we earlier incorporated , but to which you have not\nassented . as this is a matter of company policy , unfortunately we do not\nhave much room to maneuver . if it would help you to have a direct\nconversation with the lawyers to appreciate our company ' s perspective , i can\narrange for a phone call . please advise . thanks .\nrakesh\nlawrencelrtnmt @ aol . com on 05 / 01 / 2001 08 : 06 : 47 am\nto : rakesh . bharati @ enron . com\ncc :\nsubject : mutually agreed upon changes okay\nhi rakesh ,\nthanks for your work on the non - disclosure agreement .\nyour integration of our mutually agreed upon modifications looks good ,\nrakesh . thanks ! i ' ll await your next version .\nlarry", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.147+0000", "entityId": 10696, "properties": {"text": "Subject: re : get together this coming tuesday ?\ndale ,\ni can reserve 2 to 2 : 30 time slot but there is really not much that\ni can tell you at this point .\nthe commercial groups are still interested and are moving\ntowards the test of the package . as soon as they will decide\nto move ahead , we ( research ) shall be involved , helping to evaluate the\nproduct . as i have said , we are not the\ndecision makers in this case .\ni think that we should allow simply the process to run its course .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 05 : 59 : 30 pm\nplease respond to\nto :\ncc :\nsubject : re : get together this coming tuesday ?\nvince :\ni will call tomorrow in the morning . lunch or right after lunch would be\ngreat . how would 100 pm work for you ?\ndale\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , april 30 , 2001 3 : 07 pm\nto : dale . nesbitt @ marketpointinc . com\ncc : kimberly . watson @ enron . com ; vince . j . kaminski @ enron . com\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in\nthe afternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21\nam\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through\nlicense ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ?\nif\nso , please give me an email shout at the above address or leave a message\non\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with\nthe\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our\npower\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.152+0000", "entityId": 10697, "properties": {"text": "Subject: re : willow and pathstar evaluations\nok - thanks .\n- - - - - original message - - - - -\nfrom :\nto : \" mike curran \"\ncc : ;\nsent : monday , april 30 , 2001 11 : 34 pm\nsubject : re : willow and pathstar evaluations\n>\n> mike ,\n>\n> we are short manpower in london . we shall try to\n> evaluate the software in houston .\n>\n> vince\n>\n>\n>\n>\n>\n> \" mike curran \" on 04 / 24 / 2001 10 : 03 : 24 am\n>\n> please respond to \" mike curran \"\n>\n> to :\n> cc :\n> subject : willow and pathstar evaluations\n>\n>\n>\n> hi vince -\n>\n> hope all is well with you .\n>\n> sharad hasn ' t had time to evaluate our willow tree or monte carlo software\n> since the middle of last year . is there somebody else that could do it ?\n>\n> please let me know who i should send the evaluation to .\n>\n> best regards ,\n>\n> michael curran\n> ceo\n> quantin ' leap limited\n> piercy house\n> 7 copthall avenue\n> london ec 2 r 7 nj\n>\n> tel : + 44 ( 0 ) 20 7562 3450\n> fax : + 44 ( 0 ) 20 7562 3411\n>\n> mailto : mcurran @ quantinleap . com\n>\n> http : / / www . quantinleap . com\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.157+0000", "entityId": 10698, "properties": {"text": "Subject: re : fw : fw : get together this coming tuesday ?\nthanks for the update . kim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , may 01 , 2001 2 : 08 pm\nto : watson , kimberly\ncc : gadd , eric ; kaminski , vince\nsubject : re : fw : fw : get together this coming tuesday ?\nkim ,\ni talked to dale early this morning and suggested that we meet during his next trip to houston\nwhen we decide on timing of our project .\nvince\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 08 : 41 am\nto : vince j kaminski / hou / ect @ ect , eric gadd / et & s / enron @ enron\ncc :\nsubject : fw : fw : get together this coming tuesday ?\nvince ,\nif dale comes in to see you , it looks like eric might be available to meet with you as well . it would be a good opportunity for eric to meet dale and get a little more information on his model . eric ' s phone number is x 54713 .\nthanks ,\nkim .\n- - - - - original message - - - - -\nfrom : gadd , eric\nsent : monday , april 30 , 2001 8 : 12 pm\nto : watson , kimberly\nsubject : re : fw : get together this coming tuesday ?\nworks for me . give me a call at 9 : 30 .\nfrom : kimberly watson / enron @ enronxgate on 04 / 30 / 2001 05 : 09 pm\nto : eric gadd / et kaminski , vince\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in the afternoon .\nvince\n>\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21 am\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through license ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ? if\nso , please give me an email shout at the above address or leave a message on\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with the\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our power\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.162+0000", "entityId": 10699, "properties": {"text": "Subject: re : fw : fw : get together this coming tuesday ?\nkim ,\ni talked to dale early this morning and suggested that we meet during his next trip to houston\nwhen we decide on timing of our project .\nvince\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 08 : 41 am\nto : vince j kaminski / hou / ect @ ect , eric gadd / et & s / enron @ enron\ncc :\nsubject : fw : fw : get together this coming tuesday ?\nvince ,\nif dale comes in to see you , it looks like eric might be available to meet with you as well . it would be a good opportunity for eric to meet dale and get a little more information on his model . eric ' s phone number is x 54713 .\nthanks ,\nkim .\n- - - - - original message - - - - -\nfrom : gadd , eric\nsent : monday , april 30 , 2001 8 : 12 pm\nto : watson , kimberly\nsubject : re : fw : get together this coming tuesday ?\nworks for me . give me a call at 9 : 30 .\nfrom : kimberly watson / enron @ enronxgate on 04 / 30 / 2001 05 : 09 pm\nto : eric gadd / et kaminski , vince\nsubject : re : get together this coming tuesday ?\ndale ,\nplease , call me on tuesday . my morning schedule is full but i am open in the afternoon .\nvince\n\" dale m . nesbitt \" on 04 / 30 / 2001 01 : 51 : 21 am\nplease respond to\nto : \" vincent kaminski \" , \" kimberly s . watson \"\ncc :\nsubject : get together this coming tuesday ?\nvince / kim :\ni am flying to houston tonight and wondered if it would fit one or both of\nyour schedules to get together this coming tuesday sometime for 1 / 2 hour or\nso . i really want to reinitiate the conversations marketpoint was having\nwith john goodpasture and you , and he said either or both of you were the\nright people to continue after his responsibility shift . john was quite\npositive about the idea of enron acquiring marketpoint narg through license ,\nand he implied that one or both of you would be carrying the ball in that\ndirection after he handed it to you .\nwould this coming tuesday morning at 930 am be a good time for you guys ? if\nso , please give me an email shout at the above address or leave a message on\nmy voicemail at ( 650 ) 218 - 3069 . i think you will be truly impressed with the\nscope and progress we have been able to make with both the short run narg\nand the long run narg in which you were interested ( not to mention our power\nmodel ) . the progress is noticeable since you saw it . both long and short\nterm narg are having quite an impact on a number of gas decisions at the\nmoment ranging from venezuelan lng , north american lng import terminals and\nterm , gas basis calculations , trading support , power plant development ,\ngas - to - power price spreads in key markets , veracity of heat rate trades ,\nbank financings , storage field evaluation , and which new pipelines we can\nexpect to see enter and which are dogs .\ni really hope we can fit it in and get our discussions moving in a mutually\nproductive direction again . i think narg can help you become even more\nsuccessful , and i look forward to working with you .\nwe have a new office address and new phone number as well . ( we move in may\n1 . )\naltos management partners\n95 main street , suite 10\nlos altos , ca 94022\n( 650 ) 948 - 8830 voice\n( 650 ) 948 - 8850 fax\n( 650 ) 218 - 3069 cellular\ngive the phones a week or so to get \" debugged \" and then switch over .\ndale\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.173+0000", "entityId": 10700, "properties": {"text": "Subject: summary of dabhol lenders ' presentation\nvince / stinson ,\nplease find below a summary of the presenation given to lenders at the april\n23 rd meeting in london .\nthe key points that emerge are :\nphase ii will require commitments of about $ 700 mm to complete ( phase i + ii\ntotal $ 3 . 2 billion )\nseveral commercial issues are getting severe in the current environment in\nindia , could result in cost escalations\nmakes the case that mseb does not have the financial strength to absorb phase\nii power\nmanagement to seek authority to serve preliminary termination notice ( ptn ) ,\ntriggering a 6 month cure period\na copy of the full presenation is available .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.180+0000", "entityId": 10701, "properties": {"text": "Subject: summary of dabhol lenders ' presentation\nvince / stinson ,\nplease find below a summary of the presenation given to lenders at the april 23 rd meeting in london .\nthe key points that emerge are :\nphase ii will require commitments of about $ 700 mm to complete ( phase i + ii total $ 3 . 2 billion )\nseveral commercial issues are getting severe in the current environment in india , could result in cost escalations\nmakes the case that mseb does not have the financial strength to absorb phase ii power\nmanagement to seek authority to serve preliminary termination notice ( ptn ) , triggering a 6 month cure period\na copy of the full presenation is available .\nregards ,\nsandeep .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.185+0000", "entityId": 10702, "properties": {"text": "Subject: re : london contact number\nhi anita ,\nhow are you ? i arrived yesterday late morning from the london gatwick\nairport . due to rush hour traffic , etc . it took a while to get into the city\nto the hotel .\nalso , due to may day ( may lst ) protests / riots , etc . , the hotel management\nstrongly recommended that we remain in the hotel .\nhowever , i am in the office today . i can be reached via email or via\ntelephone at 44 ( 0 ) 207 783 5647 .\ntake care ,\niris\n- - - - - original message - - - - -\nfrom : dupont , anita\nsent : tuesday , may 01 , 2001 5 : 23 pm\nto : mmumford @ enron . com\ncc : mack , iris ; crenshaw , shirley\nsubject : i . m . mack 30 apr - 15 may * * plse review for accuracy * * agent ce / ce\nbooking ref x 7 w 882 mack / iris eb 1972 enron corp\nimportance : high\nsee iris ' s itinerary below . i thought her initial plan was to land this\nmorning and come in to enron house in early afternoon . see itinerary for\nphone number of hotel . let me know if i can help in any\nother way . thanks . anita\nservice date from to depart\narrive\ncontinental airlines 30 apr houston tx london gatwick 350 p\n655 a\nco 34 j mon g . bush iah gatwick 01 may\nterminal dom terminal s\ndinner / snack non stop\nreservation confirmed 9 : 05 duration\nvegetarian meal , non - dairy confirmed\naircraft : boeing 777 - 200 / 300\nhotel 30 apr athenaeum hotel and apartments\n11 may 116 piccadilly\nlondon england , wlv obj\nunited kingdom\ntelephone : 44 - ( 0 ) - 207 - 499 - 3464\nfax : 44 - ( 0 ) - 207 - 493 - 1860\nconfirmation : claire 25 apr\nrate : rac gbp 270 . 00 per night\nguarantee given\nprereg actual arr lmay 655 am apartment\nto avoid billing cancel by 6 pm 24 hrs prior\ncontinental airlines 11 may london gatwick houston tx 1200 n\n415 p\nco 5 j fri gatwick g . bush iah\nterminal s terminal dom\nlunch / snack non stop\nreservation confirmed 10 : 15 duration\nvegetarian meal , non - dairy confirmed\naircraft : boeing 777 - 200 / 300", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.189+0000", "entityId": 10703, "properties": {"text": "Subject: enron credit modeling discussions\nhi ,\nthis email is in reference to our plan for detailed discussions about enron\ncredit ' s modeling strategy . several meetings have already been scheduled .\nplease refer to the attached excel spreadsheet for further details .\nalso , if you like , we can have more informal discussions over lunch , dinner ,\ndrinks , etc .\nthanks in advance for your time .\nregards ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.195+0000", "entityId": 10704, "properties": {"text": "Subject: re : hello\nsounds great - - i ' ll coordinate with shirley . jacob was very excited about his\nprior meeting with you and the group .\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , may 01 , 2001 4 : 42 pm\nto : magee , molly\ncc : kaminski , vince ; krishnarao , pinnamaneni ; watson , kimberly\nsubject : re : hello\nmolly ,\nkim watson would like us to bring jacob for another interview .\nwe can do it later this week .\nvince\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2001\n02 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 09 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello\nhi vince ,\nif you are still interested in bringing back this gentleman back for another\ninterview , i would very much like to meet with him . sean talked with him\nwhen you brought him in a few weeks ago and he thought it would be a good\nidea for me to meet with him so we can compare thoughts .\nthanks , kim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 16 , 2001 1 : 21 pm\nto : watson , kimberly\ncc : krishnarao , pinnamaneni ; kaminski , vince\nsubject : re : hello\nkim ,\nthis is a letter from one of the job applicants who works for pros .\nit seems that the system they develop for williams\nis more a scheduling system .\nwould you like to ask him to come back for another interview ,\nto get more information out of him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001\n01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n\" jacob y . kang \" on 04 / 11 / 2001 11 : 18 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello\ndear vince :\nit was so nice meeting and talking with you too . i did\nnot take any pen back , i lost my pen too somewhere in\nenron .\nas i mentioned to you , after i got my ph . d in 1999 , i\nhave been working two years as lead scientist and\nscience manager in energy division at pros revenue\nmanagement inc . in houston .\ni developed and implemented the mathematical models\nfor trading optimization system and firm\ntransportation optimization system .\nthe trading optimization system becomes the most\npopular product in the industry this year . duke energy\njust signed the contract to buy this product\nyesterday . conoco and williams also signed the\ncontracts for it . according to pros sales department ,\nthe potential marketer to buy this product exceeds 15\ncompanies in one or two years .\nenron is the ideal place for me to continue my\nresearch and system developing efforts to combine\nrevenue management with risk management . i am\nconfident that i can make significant contributions to\nenron in this area .\ni would like to thank you again for giving me this\nopportunity to come to enron for this interview . i am\nlooking forward to having the opportunity to work in\nenron .\nsincerely yours\njacob\n- - - vince . j . kaminski @ enron . com wrote :\n> jacob ,\n>\n> it was nice meeting you . did take by any chance\n> my pen ? if not , i apologize .\n>\n> vince\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.200+0000", "entityId": 10705, "properties": {"text": "Subject: re : resume\nvasant ,\ni agree .\nvince\nfrom : vasant shanbhogue / enron @ enronxgate on 05 / 01 / 2001 10 : 00 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resume\nvince ,\nhe seems to have mostly equity and fixed income background ( and then some\ncredit exposure calculation ) with not much credit data analysis experience .\ni do not think he would be appropriate for bryan ' s group - - he needs a person\nwho tracks market developments and understands fundamental data , and although\nthis guy may be good at modeling , we already have iris and amitava doing the\nmodeling and looking at data . at this stage , i would prefer to hire somebody\nwith direct experience in credit analysis ( banking , rating agency ) . i am\nworried that if we get another person without data analysis experience , then\namitava will find himself with two people ( iris being the other one ) who are\nboth inexperienced in this area , and he will find himself doing a lot of the\nwork anyway .\nif you want to pursue him , we should probably do a phone interview first .\nvasant\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 30 , 2001 5 : 33 pm\nto : shanbhogue , vasant\nsubject : re : resume\nvasant ,\nwhat do you think ? he may be expensive .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001\n05 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 04 / 25 / 2001 01 : 13 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : resume\nvince ,\ni apologize , i sent you the wrong resume ! here is the correct one .\n>\nmarshall brown\nvice president\nrobert walters associates\nphone # : 212 - 704 - 0596\nfax # : 212 - 704 - 4312\nmarshall . brown @ robertwalters . com\nwww . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : wednesday , april 25 , 2001 1 : 08 pm\n> to : marshall . brown @ robertwalters . com\n> subject : re : resume\n>\n>\n> marshall ,\n>\n> he looks ok but below the level of quant skills i typically look for\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 04 / 23 / 2001 09 : 33 : 00\n> am\n>\n> to : vince kaminski\n> cc :\n> subject : resume\n>\n>\n> vince ,\n> i know this candidate is actively interviewing at el paso and i think\n> reliant . he has excellent quantitative background , but no real energy\n> experience . if you are interested in speaking with him let me know .\n> regards ,\n> marshall brown\n> vice president\n> robert walters associates\n> phone # : 212 - 704 - 0596\n> fax # : 212 - 704 - 4312\n> marshall . brown @ robertwalters . com\n> www . robertwalters . com\n>\n>\n> >\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> ( see attached file : litt _ har . doc )\n>\n> >\n- litt _ tho . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.204+0000", "entityId": 10706, "properties": {"text": "Subject: re : hello\nmolly ,\nkim watson would like us to bring jacob for another interview .\nwe can do it later this week .\nvince\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2001\n02 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 09 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello\nhi vince ,\nif you are still interested in bringing back this gentleman back for another\ninterview , i would very much like to meet with him . sean talked with him\nwhen you brought him in a few weeks ago and he thought it would be a good\nidea for me to meet with him so we can compare thoughts .\nthanks , kim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 16 , 2001 1 : 21 pm\nto : watson , kimberly\ncc : krishnarao , pinnamaneni ; kaminski , vince\nsubject : re : hello\nkim ,\nthis is a letter from one of the job applicants who works for pros .\nit seems that the system they develop for williams\nis more a scheduling system .\nwould you like to ask him to come back for another interview ,\nto get more information out of him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001\n01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacob y . kang \" on 04 / 11 / 2001 11 : 18 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello\ndear vince :\nit was so nice meeting and talking with you too . i did\nnot take any pen back , i lost my pen too somewhere in\nenron .\nas i mentioned to you , after i got my ph . d in 1999 , i\nhave been working two years as lead scientist and\nscience manager in energy division at pros revenue\nmanagement inc . in houston .\ni developed and implemented the mathematical models\nfor trading optimization system and firm\ntransportation optimization system .\nthe trading optimization system becomes the most\npopular product in the industry this year . duke energy\njust signed the contract to buy this product\nyesterday . conoco and williams also signed the\ncontracts for it . according to pros sales department ,\nthe potential marketer to buy this product exceeds 15\ncompanies in one or two years .\nenron is the ideal place for me to continue my\nresearch and system developing efforts to combine\nrevenue management with risk management . i am\nconfident that i can make significant contributions to\nenron in this area .\ni would like to thank you again for giving me this\nopportunity to come to enron for this interview . i am\nlooking forward to having the opportunity to work in\nenron .\nsincerely yours\njacob\n- - - vince . j . kaminski @ enron . com wrote :\n> jacob ,\n>\n> it was nice meeting you . did take by any chance\n> my pen ? if not , i apologize .\n>\n> vince\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.209+0000", "entityId": 10707, "properties": {"text": "Subject: re : follow - up on siam workshop\nthanks for forwarding peter ' s resume . by copy of this memo i am forwarding\npeter ' s resume to danny mccarty and phil lowry . danny and phil : please\nfollow - up with vince if you have an interest in meeting with peter . he seems\nto be a very qualified candidate .\nvince j kaminski @ ect\n04 / 30 / 2001 02 : 28 pm\nto : stanley horton / corp / enron @ enron , danny mccarty / et & s / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : follow - up on siam workshop\ni am forwarding for your attention the resume of peter percell\nwho has an extensive experience in modeling physical flows\nof natural gas in pipeline systems . peter is looking currently for a job .\ni met him last week at the meeting of the science and industry advance with\nmathematics\nsociety at the university of houston .\nthe application of recent developments in optimization theory\nand numerical methods can help enron to improve further\nefficiency of our pipeline system and reduce the consumption of compressor\nfuel .\nplease , let me know if you interested in introducing peter to executives\nin your organization . i shall be glad to make arrangements for an interview .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001\n02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npeter percell on 04 / 30 / 2001 11 : 16 : 58 am\nto : vincent kaminski\ncc :\nsubject : follow - up on siam workshop\ni enjoyed your presentation , and meeting you briefly afterwards , at the\nsiam workshop last friday .\ni have extensive experience as a technical leader in the design and\ndevelopment of modeling and simulation software products , mostly\nfor the oil and gas pipeline industry .\ni am looking for a position that can utilize my software development and\nmathematical skills . getting out of the narrow confines of the pipeline\nsimulation industry would be a plus .\nplease consider whether i might fit in your group . your answer to a\nquestion indicated that i have several of the skills you look for .\nalso , please let me know , by email , the names and contact information of\nother managers within enron who might benefit from having someone with\nmy qualifications in their group .\nattached are my resume and an addendum covering academic & consulting\nexperience . publications are available on request .\ni will call you in a couple of days to follow up on this email .\nthank you for your time .\npeter percell 10030 doliver drive\npercell @ swbell . net houston , tx 77042 - 2016\n( 713 ) 532 - 3836 voice & fax\n- percell , peter resume only . doc\n- percell , peter a & c exp . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.214+0000", "entityId": 10708, "properties": {"text": "Subject: re : hello\nsounds great - - i ' ll coordinate with shirley . jacob was very excited about his prior meeting with you and the group .\nmolly\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , may 01 , 2001 4 : 42 pm\nto : magee , molly\ncc : kaminski , vince ; krishnarao , pinnamaneni ; watson , kimberly\nsubject : re : hello\nmolly ,\nkim watson would like us to bring jacob for another interview .\nwe can do it later this week .\nvince\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2001 02 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 09 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello\nhi vince ,\nif you are still interested in bringing back this gentleman back for another interview , i would very much like to meet with him . sean talked with him when you brought him in a few weeks ago and he thought it would be a good idea for me to meet with him so we can compare thoughts .\nthanks , kim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 16 , 2001 1 : 21 pm\nto : watson , kimberly\ncc : krishnarao , pinnamaneni ; kaminski , vince\nsubject : re : hello\nkim ,\nthis is a letter from one of the job applicants who works for pros .\nit seems that the system they develop for williams\nis more a scheduling system .\nwould you like to ask him to come back for another interview ,\nto get more information out of him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001 01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n>\n\" jacob y . kang \" on 04 / 11 / 2001 11 : 18 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello\ndear vince :\nit was so nice meeting and talking with you too . i did\nnot take any pen back , i lost my pen too somewhere in\nenron .\nas i mentioned to you , after i got my ph . d in 1999 , i\nhave been working two years as lead scientist and\nscience manager in energy division at pros revenue\nmanagement inc . in houston .\ni developed and implemented the mathematical models\nfor trading optimization system and firm\ntransportation optimization system .\nthe trading optimization system becomes the most\npopular product in the industry this year . duke energy\njust signed the contract to buy this product\nyesterday . conoco and williams also signed the\ncontracts for it . according to pros sales department ,\nthe potential marketer to buy this product exceeds 15\ncompanies in one or two years .\nenron is the ideal place for me to continue my\nresearch and system developing efforts to combine\nrevenue management with risk management . i am\nconfident that i can make significant contributions to\nenron in this area .\ni would like to thank you again for giving me this\nopportunity to come to enron for this interview . i am\nlooking forward to having the opportunity to work in\nenron .\nsincerely yours\njacob\n- - - vince . j . kaminski @ enron . com wrote :\n> jacob ,\n>\n> it was nice meeting you . did take by any chance\n> my pen ? if not , i apologize .\n>\n> vince\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.220+0000", "entityId": 10709, "properties": {"text": "Subject: re : resume\nvasant ,\ni agree .\nvince\nfrom : vasant shanbhogue / enron @ enronxgate on 05 / 01 / 2001 10 : 00 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : resume\nvince ,\nhe seems to have mostly equity and fixed income background ( and then some credit exposure calculation ) with not much credit data analysis experience . i do not think he would be appropriate for bryan ' s group - - he needs a person who tracks market developments and understands fundamental data , and although this guy may be good at modeling , we already have iris and amitava doing the modeling and looking at data . at this stage , i would prefer to hire somebody with direct experience in credit analysis ( banking , rating agency ) . i am worried that if we get another person without data analysis experience , then amitava will find himself with two people ( iris being the other one ) who are both inexperienced in this area , and he will find himself doing a lot of the work anyway .\nif you want to pursue him , we should probably do a phone interview first .\nvasant\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 30 , 2001 5 : 33 pm\nto : shanbhogue , vasant\nsubject : re : resume\nvasant ,\nwhat do you think ? he may be expensive .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001 05 : 31 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmarshall brown on 04 / 25 / 2001 01 : 13 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : resume\nvince ,\ni apologize , i sent you the wrong resume ! here is the correct one .\n>\nmarshall brown\nvice president\nrobert walters associates\nphone # : 212 - 704 - 0596\nfax # : 212 - 704 - 4312\nmarshall . brown @ robertwalters . com\nwww . robertwalters . com\n> - - - - - original message - - - - -\n> from : vince . j . kaminski @ enron . com [ smtp : vince . j . kaminski @ enron . com ]\n> sent : wednesday , april 25 , 2001 1 : 08 pm\n> to : marshall . brown @ robertwalters . com\n> subject : re : resume\n>\n>\n> marshall ,\n>\n> he looks ok but below the level of quant skills i typically look for\n>\n> vince\n>\n>\n>\n>\n>\n> marshall brown on 04 / 23 / 2001 09 : 33 : 00\n> am\n>\n> to : vince kaminski\n> cc :\n> subject : resume\n>\n>\n> vince ,\n> i know this candidate is actively interviewing at el paso and i think\n> reliant . he has excellent quantitative background , but no real energy\n> experience . if you are interested in speaking with him let me know .\n> regards ,\n> marshall brown\n> vice president\n> robert walters associates\n> phone # : 212 - 704 - 0596\n> fax # : 212 - 704 - 4312\n> marshall . brown @ robertwalters . com\n> www . robertwalters . com\n>\n>\n> >\n>\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n> caution : electronic mail sent through the internet is not secure and could\n> be intercepted by a third party .\n>\n> this email and any files transmitted with it are confidential and\n> intended solely for the use of the individual or entity to whom they\n> are addressed . if you have received this email in error please notify\n> the system manager .\n>\n> this footnote also confirms that this email message has been swept by\n> mimesweeper for the presence of computer viruses .\n>\n> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n>\n> ( see attached file : litt _ har . doc )\n>\n> >\n- litt _ tho . doc >\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.224+0000", "entityId": 10710, "properties": {"text": "Subject: re : hello\nmolly ,\nkim watson would like us to bring jacob for another interview .\nwe can do it later this week .\nvince\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2001 02 : 22 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kimberly watson / enron @ enronxgate on 05 / 01 / 2001 09 : 17 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : hello\nhi vince ,\nif you are still interested in bringing back this gentleman back for another interview , i would very much like to meet with him . sean talked with him when you brought him in a few weeks ago and he thought it would be a good idea for me to meet with him so we can compare thoughts .\nthanks , kim .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : monday , april 16 , 2001 1 : 21 pm\nto : watson , kimberly\ncc : krishnarao , pinnamaneni ; kaminski , vince\nsubject : re : hello\nkim ,\nthis is a letter from one of the job applicants who works for pros .\nit seems that the system they develop for williams\nis more a scheduling system .\nwould you like to ask him to come back for another interview ,\nto get more information out of him ?\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 16 / 2001 01 : 18 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" jacob y . kang \" on 04 / 11 / 2001 11 : 18 : 44 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : hello\ndear vince :\nit was so nice meeting and talking with you too . i did\nnot take any pen back , i lost my pen too somewhere in\nenron .\nas i mentioned to you , after i got my ph . d in 1999 , i\nhave been working two years as lead scientist and\nscience manager in energy division at pros revenue\nmanagement inc . in houston .\ni developed and implemented the mathematical models\nfor trading optimization system and firm\ntransportation optimization system .\nthe trading optimization system becomes the most\npopular product in the industry this year . duke energy\njust signed the contract to buy this product\nyesterday . conoco and williams also signed the\ncontracts for it . according to pros sales department ,\nthe potential marketer to buy this product exceeds 15\ncompanies in one or two years .\nenron is the ideal place for me to continue my\nresearch and system developing efforts to combine\nrevenue management with risk management . i am\nconfident that i can make significant contributions to\nenron in this area .\ni would like to thank you again for giving me this\nopportunity to come to enron for this interview . i am\nlooking forward to having the opportunity to work in\nenron .\nsincerely yours\njacob\n- - - vince . j . kaminski @ enron . com wrote :\n> jacob ,\n>\n> it was nice meeting you . did take by any chance\n> my pen ? if not , i apologize .\n>\n> vince\n>\ndo you yahoo ! ?\nget email at your own domain with yahoo ! mail .\nhttp : / / personal . mail . yahoo . com /\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.229+0000", "entityId": 10711, "properties": {"text": "Subject: re : follow - up on siam workshop\nthanks for forwarding peter ' s resume . by copy of this memo i am forwarding peter ' s resume to danny mccarty and phil lowry . danny and phil : please follow - up with vince if you have an interest in meeting with peter . he seems to be a very qualified candidate .\nvince j kaminski @ ect\n04 / 30 / 2001 02 : 28 pm\nto : stanley horton / corp / enron @ enron , danny mccarty / et & s / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : follow - up on siam workshop\ni am forwarding for your attention the resume of peter percell\nwho has an extensive experience in modeling physical flows\nof natural gas in pipeline systems . peter is looking currently for a job .\ni met him last week at the meeting of the science and industry advance with mathematics\nsociety at the university of houston .\nthe application of recent developments in optimization theory\nand numerical methods can help enron to improve further\nefficiency of our pipeline system and reduce the consumption of compressor fuel .\nplease , let me know if you interested in introducing peter to executives\nin your organization . i shall be glad to make arrangements for an interview .\nvince kaminski\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 04 / 30 / 2001 02 : 17 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\npeter percell on 04 / 30 / 2001 11 : 16 : 58 am\nto : vincent kaminski\ncc :\nsubject : follow - up on siam workshop\ni enjoyed your presentation , and meeting you briefly afterwards , at the\nsiam workshop last friday .\ni have extensive experience as a technical leader in the design and\ndevelopment of modeling and simulation software products , mostly\nfor the oil and gas pipeline industry .\ni am looking for a position that can utilize my software development and\nmathematical skills . getting out of the narrow confines of the pipeline\nsimulation industry would be a plus .\nplease consider whether i might fit in your group . your answer to a\nquestion indicated that i have several of the skills you look for .\nalso , please let me know , by email , the names and contact information of\nother managers within enron who might benefit from having someone with\nmy qualifications in their group .\nattached are my resume and an addendum covering academic & consulting\nexperience . publications are available on request .\ni will call you in a couple of days to follow up on this email .\nthank you for your time .\npeter percell 10030 doliver drive\npercell @ swbell . net houston , tx 77042 - 2016\n( 713 ) 532 - 3836 voice & fax\n- percell , peter resume only . doc\n- percell , peter a & c exp . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.234+0000", "entityId": 10712, "properties": {"text": "Subject: alp presentation\nhi vince ! !\ni ' ll take care of the invitations and i am planning to be at the concert on\nsaturday !\nthanks ! !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 05 / 01 / 2001\n09 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 01 / 2001 04 : 55 pm\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron , shirley\ncrenshaw / hou / ect @ ect , melinda mccarty / corp / enron @ enron\nsubject : alp presentation\nchristie ,\nshirley reserved room 49 cl for monday 4 : 00 p . m . presentation .\ncan you issue the formal invitation to our guests with the game / dinner\ndetails ? i don ' t have all the details regarding the enron field\nbox and time . i am out most of the day on wednesday but we can\ndiscuss the details on thursday .\nhope to see you on saturday at the concert .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.239+0000", "entityId": 10713, "properties": {"text": "Subject: grades\npam ,\nthe term papers arrived at my internet mailbox .\ni shall be sending you the information as i make progress reading the papers .\nfirst group of students :\nhelen demianenko\njavier lamas\nlynn nazareth\nshauywn smith\ncarlos wheelock\nsarah woody\ngrade : a\nplease , confirm receipt of this message and please double check\nthat all registered students have been graded ( to make sure no student falls\nthrough\nthe cracks ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.243+0000", "entityId": 10714, "properties": {"text": "Subject: papers\nvince ,\ndid you receive this paper ?\njason\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 05 / 01 / 2001 03 : 55\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" stuart russell hamel \" on 04 / 30 / 2001 04 : 52 : 12 pm\nplease respond to\nto :\ncc :\nsubject :\ndr . kaminski :\nplease see our attached paper .\nthank you ,\njed howard , brian nelson , and\nstuart hamel\n( 713 ) 218 - 8903\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.248+0000", "entityId": 10715, "properties": {"text": "Subject: grades\npam ,\nthe term papers arrived at my internet mailbox .\ni shall be sending you the information as i make progress reading the papers .\nfirst group of students :\nhelen demianenko\njavier lamas\nlynn nazareth\nshauywn smith\ncarlos wheelock\nsarah woody\ngrade : a\nplease , confirm receipt of this message and please double check\nthat all registered students have been graded ( to make sure no student falls through\nthe cracks ) .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.253+0000", "entityId": 10716, "properties": {"text": "Subject: alp presentation\nchristie ,\nshirley reserved room 49 cl for monday 4 : 00 p . m . presentation .\ncan you issue the formal invitation to our guests with the game / dinner\ndetails ? i don ' t have all the details regarding the enron field\nbox and time . i am out most of the day on wednesday but we can\ndiscuss the details on thursday .\nhope to see you on saturday at the concert .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.258+0000", "entityId": 10717, "properties": {"text": "Subject: term paper\nstuart ,\ni cannot open your attachment .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.265+0000", "entityId": 10718, "properties": {"text": "Subject: papers\nvince ,\ndid you receive this paper ?\njason\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 05 / 01 / 2001 03 : 55 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" stuart russell hamel \" on 04 / 30 / 2001 04 : 52 : 12 pm\nplease respond to\nto :\ncc :\nsubject :\ndr . kaminski :\nplease see our attached paper .\nthank you ,\njed howard , brian nelson , and\nstuart hamel\n( 713 ) 218 - 8903\n- winmail . dat", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.271+0000", "entityId": 10719, "properties": {"text": "Subject: re : grading\ngraders usually follow the following guidelines :\n- half of the class gets a - and above ;\n- the other half of the class gets b + and below\n- instructors seldom ever give grades below b - , but it happens in rare cases\n- the highest grade possible is a +\njason", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.279+0000", "entityId": 10720, "properties": {"text": "Subject: london , new york , houston , financial mathematics june / july 2001\nhello speakers !\n?\nmy name is joanna vidal and i am the coordinator for the financial\nmathematics training course being in held on the following dates :\n?\nlondon on june 28 & 29\nnew york on july 9 & 10\nhouston on july 16 & 17 ?\n?\ni am in the process of preparing the speaker packs which will include an\nupdated contact information sheet with ? all your details . ? you will receive\nthis pack shortly after you confirm your addresses . ? i will list them below\nand i ask that you please look it over and make any necessary corrections . ?\n?\n? my contact details , for your information are :\n?\njoanna vidal\nevents coordinator\nrisk waters group\nt : ( 212 ) 925 1864 ext . 197\nf : ( 212 ) 925 7585\njvidal @ riskwaters . com\nwww . riskwaters . com\n?\nthank you and i look forward to working with you .\n?\nduane seppi\ncarnegie mellon university\ngraduate school of industrial administrations\npittsburgh , pa 15213 - 3890\nt : 001 412 - 268 - 2298\nf : 001 412 - 269 - 8896\n?\nhelyette geman\nuniversite de paris dauphine\nfinance department au de ka grand ecole\ncorgy pontois , paris\nfrance 95021\nt : 00 33 60 - 807 - 4200\n?\nvincent kaminski\nenron credit\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nt : 001 713 - 853 - 3848\nf : 001 713 - 646 - 2503\n?\npeter nance\nteknecon , inc .\n1515 s . capital of texas highway\nsuite 101\naustin , tx 78746\nt : 001 512 - 732 - 7084\nf : 001 512 - 732 - 7099\n?\nchris harris\ninnogy holdings place\nwindmill hill business park\nwhitehill way\nswindon , wiltshire\nuk , 5 n 5 6 pb\nt : 44 793 387 - 7777\nf : 44 793 389 - 7811\n?\nspyros maragos\ndynergy , inc .\n1000 louisiana street\nsuite 5800\nhouston , tx 77002\nt : 011 713 - 507 - 6589\nf : 001 713 - 767 - 5958\n?\nehud ronn\nuniversity of texas at austin\ndepartment of finance\nmccombs school of business\naustin , tx 78712 - 1179\nt : 001 512 - 471 - 5853\nf : 001 512 - 471 - 5073\n?\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.288+0000", "entityId": 10721, "properties": {"text": "Subject: london , new york , houston , financial mathematics june / july 2001\nhello speakers !\nmy name is joanna vidal and i am the coordinator for the financial mathematics training course being in held on the following dates :\nlondon on june 28 & 29\nnew york on july 9 & 10\nhouston on july 16 & 17\ni am in the process of preparing the speaker packs which will include an updated contact information sheet with all your details . you will receive this pack shortly after you confirm your addresses . i will list them below and i ask that you please look it over and make any necessary corrections .\nmy contact details , for your information are :\njoanna vidal\nevents coordinator\nrisk waters group\nt : ( 212 ) 925 1864 ext . 197\nf : ( 212 ) 925 7585 jvidal @ riskwaters . com www . riskwaters . com\nthank you and i look forward to working with you .\nduane seppi\ncarnegie mellon university\ngraduate school of industrial administrations\npittsburgh , pa 15213 - 3890\nt : 001 412 - 268 - 2298\nf : 001 412 - 269 - 8896\nhelyette geman\nuniversite de paris dauphine\nfinance department au de ka grand ecole\ncorgy pontois , paris\nfrance 95021\nt : 00 33 60 - 807 - 4200\nvincent kaminski\nenron credit\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nt : 001 713 - 853 - 3848\nf : 001 713 - 646 - 2503\npeter nance\nteknecon , inc .\n1515 s . capital of texas highway\nsuite 101\naustin , tx 78746\nt : 001 512 - 732 - 7084\nf : 001 512 - 732 - 7099\nchris harris\ninnogy holdings place\nwindmill hill business park\nwhitehill way\nswindon , wiltshire\nuk , 5 n 5 6 pb\nt : 44 793 387 - 7777\nf : 44 793 389 - 7811\nspyros maragos\ndynergy , inc .\n1000 louisiana street\nsuite 5800\nhouston , tx 77002\nt : 011 713 - 507 - 6589\nf : 001 713 - 767 - 5958\nehud ronn\nuniversity of texas at austin\ndepartment of finance\nmccombs school of business\naustin , tx 78712 - 1179\nt : 001 512 - 471 - 5853\nf : 001 512 - 471 - 5073", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.293+0000", "entityId": 10722, "properties": {"text": "Subject: re :\nfrank ,\nyes .\nvince\nfrom : frank hayden / enron @ enronxgate on 05 / 01 / 2001 07 : 51 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\nvince ,\nare you going to be able to make the power var meeting on thursday ?\nfrank", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.299+0000", "entityId": 10723, "properties": {"text": "Subject: re :\nfrank ,\nyes .\nvince\nfrom : frank hayden / enron @ enronxgate on 05 / 01 / 2001 07 : 51 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject :\nvince ,\nare you going to be able to make the power var meeting on thursday ?\nfrank", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.305+0000", "entityId": 10724, "properties": {"text": "Subject: jury duty\nshirley ,\ni have been summoned for jury duty and plan to be out tomorrow , wednesday ,\nmay 2 .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.310+0000", "entityId": 10725, "properties": {"text": "Subject: jury duty\nshirley ,\ni have been summoned for jury duty and plan to be out tomorrow , wednesday , may 2 .\nthanks ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.315+0000", "entityId": 10726, "properties": {"text": "Subject: re : corporate card\nyes tony ,\nmike authorized you for a corp . card , however that ' s\nsomething your asst . can do in london for you .\nif you need further asst . please inform . . . . . . .\nkevin moore\ntony hamilton @ enron\n04 / 30 / 2001 07 : 28 am\nto : mike . a . roberts @ enron . com , tani . nath @ enron . com , kevin . g . moore @ enron . com\ncc :\nsubject : corporate card\nis it possible for me to get a corporate card , and if so , who do i need to contact regarding this ?\nthanks\ntony", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.320+0000", "entityId": 10727, "properties": {"text": "Subject: re : installation of new programs\ni gave you local admin rights on your laptop yesterday . what you have to do\nis to log into the laptop using the local\nmachine account . the id and the password is the same as your corp login now .\nthe password on the local account will\nnever change . if you have a minute today i will show you how . let me know a\ntime .\nphillip randle\ndesktop support specialist x 39665\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , may 01 , 2001 5 : 17 pm\nto : randle , phillip c .\ncc : kaminski , vince\nsubject : installation of new programs\nphillip ,\nhow can i install new programs on my laptop , without\nthe administrator ' s privileges ?\none example : when i travel i use aol to get access to my mail\nand to communicate with the office . windows 2000 does not allow\nme to install it .\nalso , i have my private statistical software\ni often use when i work at night during business trips .\ni would like to load it as well .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.325+0000", "entityId": 10728, "properties": {"text": "Subject: re : installation of new programs\ni gave you local admin rights on your laptop yesterday . what you have to do is to log into the laptop using the local\nmachine account . the id and the password is the same as your corp login now . the password on the local account will\nnever change . if you have a minute today i will show you how . let me know a time .\nphillip randle\ndesktop support specialist x 39665\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : tuesday , may 01 , 2001 5 : 17 pm\nto : randle , phillip c .\ncc : kaminski , vince\nsubject : installation of new programs\nphillip ,\nhow can i install new programs on my laptop , without\nthe administrator ' s privileges ?\none example : when i travel i use aol to get access to my mail\nand to communicate with the office . windows 2000 does not allow\nme to install it .\nalso , i have my private statistical software\ni often use when i work at night during business trips .\ni would like to load it as well .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.330+0000", "entityId": 10729, "properties": {"text": "Subject: re : asian option for pavel\nour convention is whoever finalizes the model should write the documentation . it does not make sense\nto write one when changes are anticipated . you have been working on this almost a year , it never\nstrikes you that we need a documentation ?\ni created exotica . xll , does that also give you an excuse not working on exotica documentation ?\nzimin\npaulo issler\n05 / 02 / 2001 11 : 52 am\nto : zimin lu / hou / ect @ ect\ncc : tai woo / enron @ enronxgate @ enron , pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ni am surprised that we do not have the documentation ready .\ni can make that for you . it is not there because you did not put that together by the time it was created and all the changes i have made did not required changes on the functionality .\npaulo issler\nzimin lu\n05 / 02 / 2001 11 : 29 am\nto : tai woo / enron @ enronxgate @ enron , paulo issler / hou / ect @ ect\ncc : pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ntai woo ,\nhere are the c - codes for the crudeapo . ' sig ' is the spot\nvolatility meaning the price volatility within the delivery period .\nyou should consult with pavel for the definition of this \" extra \" parameters . we\nwould like to see the position monitor once you get it running .\nwe might have some additional suggestions .\npaulo ,\nwhy don ' t we have a documentation on crudeapo you worked on ?\ni can not find it in exotica help file . please supply that to tai , thanks .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tai woo / enron @ enronxgate on 05 / 02 / 2001 09 : 55 am\nto : paulo issler / hou / ect @ ect\ncc : kara maloney / enron @ enronxgate , zimin lu / hou / ect @ ect\nsubject : asian option for pavel\nthis morning , zimin told me that pavel is using a special model in evaluating his asian option portfolio .\nhe asked me to talk to you in order to access to the code so that i can see the difference made to the model .\nas i cannot find the doc . describing this model , please tell me what that new input parameter ' sig ' is .\nthanks ,\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.336+0000", "entityId": 10730, "properties": {"text": "Subject: re : asian option for pavel\nour convention is whoever finalizes the model should write the\ndocumentation . it does not make sense\nto write one when changes are anticipated . you have been working on this\nalmost a year , it never\nstrikes you that we need a documentation ?\ni created exotica . xll , does that also give you an excuse not working on\nexotica documentation ?\nzimin\npaulo issler\n05 / 02 / 2001 11 : 52 am\nto : zimin lu / hou / ect @ ect\ncc : tai woo / enron @ enronxgate @ enron , pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ni am surprised that we do not have the documentation ready .\ni can make that for you . it is not there because you did not put that\ntogether by the time it was created and all the changes i have made did not\nrequired changes on the functionality .\npaulo issler\nzimin lu\n05 / 02 / 2001 11 : 29 am\nto : tai woo / enron @ enronxgate @ enron , paulo issler / hou / ect @ ect\ncc : pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ntai woo ,\nhere are the c - codes for the crudeapo . ' sig ' is the spot\nvolatility meaning the price volatility within the delivery period .\nyou should consult with pavel for the definition of this \" extra \"\nparameters . we\nwould like to see the position monitor once you get it running .\nwe might have some additional suggestions .\npaulo ,\nwhy don ' t we have a documentation on crudeapo you worked on ?\ni can not find it in exotica help file . please supply that to tai , thanks .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tai woo / enron @ enronxgate on 05 / 02 / 2001 09 : 55 am\nto : paulo issler / hou / ect @ ect\ncc : kara maloney / enron @ enronxgate , zimin lu / hou / ect @ ect\nsubject : asian option for pavel\nthis morning , zimin told me that pavel is using a special model in evaluating\nhis asian option portfolio .\nhe asked me to talk to you in order to access to the code so that i can see\nthe difference made to the model .\nas i cannot find the doc . describing this model , please tell me what that new\ninput parameter ' sig ' is .\nthanks ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.341+0000", "entityId": 10731, "properties": {"text": "Subject: position report for dual trigger product\nvince ,\ni have enclosed a summary of our proposed approach on calculation of notional\nand the greeks for dual trigger option portfolio . please let us know your\nthoughts / comments .\namitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.345+0000", "entityId": 10732, "properties": {"text": "Subject: vol skew no - arbitrage constraints\nthe attached note lists conditions that can be used to verify that a given\nvol skew curve does not generate arbitrage opportunities in a strip of option\nprices .\nif you have questions or want to discuss implementation , please give me a\ncall .\nbob lee\nx 35163", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.350+0000", "entityId": 10733, "properties": {"text": "Subject: position report for dual trigger product\nvince ,\ni have enclosed a summary of our proposed approach on calculation of notional and the greeks for dual trigger option portfolio . please let us know your thoughts / comments .\namitava", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.355+0000", "entityId": 10734, "properties": {"text": "Subject: vol skew no - arbitrage constraints\nthe attached note lists conditions that can be used to verify that a given vol skew curve does not generate arbitrage opportunities in a strip of option prices .\nif you have questions or want to discuss implementation , please give me a call .\nbob lee\nx 35163", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.361+0000", "entityId": 10735, "properties": {"text": "Subject: re : london , new york , houston , financial mathematics june / july 2001\nvince :\nare you just speaking at the one in houston ?\nvince j kaminski\n05 / 01 / 2001 04 : 45 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : london , new york , houston , financial mathematics june / july 2001\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2001\n04 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" joanna vidal \" on 05 / 01 / 2001 03 : 43 : 11 pm\nto : , \" geman helyette \" ,\n, , ,\n, ,\ncc :\nsubject : london , new york , houston , financial mathematics june / july 2001\nhello speakers !\n?\nmy name is joanna vidal and i am the coordinator for the financial\nmathematics training course being in held on the following dates :\n?\nlondon on june 28 & 29\nnew york on july 9 & 10\nhouston on july 16 & 17 ?\n?\ni am in the process of preparing the speaker packs which will include an\nupdated contact information sheet with ? all your details . ? you will receive\nthis pack shortly after you confirm your addresses . ? i will list them below\nand i ask that you please look it over and make any necessary corrections . ?\n?\n? my contact details , for your information are :\n?\njoanna vidal\nevents coordinator\nrisk waters group\nt : ( 212 ) 925 1864 ext . 197\nf : ( 212 ) 925 7585\njvidal @ riskwaters . com\nwww . riskwaters . com\n?\nthank you and i look forward to working with you .\n?\nduane seppi\ncarnegie mellon university\ngraduate school of industrial administrations\npittsburgh , pa 15213 - 3890\nt : 001 412 - 268 - 2298\nf : 001 412 - 269 - 8896\n?\nhelyette geman\nuniversite de paris dauphine\nfinance department au de ka grand ecole\ncorgy pontois , paris\nfrance 95021\nt : 00 33 60 - 807 - 4200\n?\nvincent kaminski\nenron credit\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nt : 001 713 - 853 - 3848\nf : 001 713 - 646 - 2503\n?\npeter nance\nteknecon , inc .\n1515 s . capital of texas highway\nsuite 101\naustin , tx 78746\nt : 001 512 - 732 - 7084\nf : 001 512 - 732 - 7099\n?\nchris harris\ninnogy holdings place\nwindmill hill business park\nwhitehill way\nswindon , wiltshire\nuk , 5 n 5 6 pb\nt : 44 793 387 - 7777\nf : 44 793 389 - 7811\n?\nspyros maragos\ndynergy , inc .\n1000 louisiana street\nsuite 5800\nhouston , tx 77002\nt : 011 713 - 507 - 6589\nf : 001 713 - 767 - 5958\n?\nehud ronn\nuniversity of texas at austin\ndepartment of finance\nmccombs school of business\naustin , tx 78712 - 1179\nt : 001 512 - 471 - 5853\nf : 001 512 - 471 - 5073\n?\n?\n?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.371+0000", "entityId": 10736, "properties": {"text": "Subject: re : london , new york , houston , financial mathematics june / july 2001\nvince :\nare you just speaking at the one in houston ?\nvince j kaminski\n05 / 01 / 2001 04 : 45 pm\nto : shirley crenshaw / hou / ect @ ect\ncc :\nsubject : london , new york , houston , financial mathematics june / july 2001\nfyi\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 01 / 2001 04 : 45 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" joanna vidal \" on 05 / 01 / 2001 03 : 43 : 11 pm\nto : , \" geman helyette \" , , , , , ,\ncc :\nsubject : london , new york , houston , financial mathematics june / july 2001\nhello speakers !\nmy name is joanna vidal and i am the coordinator for the financial mathematics training course being in held on the following dates :\nlondon on june 28 & 29\nnew york on july 9 & 10\nhouston on july 16 & 17\ni am in the process of preparing the speaker packs which will include an updated contact information sheet with all your details . you will receive this pack shortly after you confirm your addresses . i will list them below and i ask that you please look it over and make any necessary corrections .\nmy contact details , for your information are :\njoanna vidal\nevents coordinator\nrisk waters group\nt : ( 212 ) 925 1864 ext . 197\nf : ( 212 ) 925 7585\njvidal @ riskwaters . com\nwww . riskwaters . com\nthank you and i look forward to working with you .\nduane seppi\ncarnegie mellon university\ngraduate school of industrial administrations\npittsburgh , pa 15213 - 3890\nt : 001 412 - 268 - 2298\nf : 001 412 - 269 - 8896\nhelyette geman\nuniversite de paris dauphine\nfinance department au de ka grand ecole\ncorgy pontois , paris\nfrance 95021\nt : 00 33 60 - 807 - 4200\nvincent kaminski\nenron credit\n1400 smith street\nroom ebl 962\nhouston , tx 77002 - 7361\nt : 001 713 - 853 - 3848\nf : 001 713 - 646 - 2503\npeter nance\nteknecon , inc .\n1515 s . capital of texas highway\nsuite 101\naustin , tx 78746\nt : 001 512 - 732 - 7084\nf : 001 512 - 732 - 7099\nchris harris\ninnogy holdings place\nwindmill hill business park\nwhitehill way\nswindon , wiltshire\nuk , 5 n 5 6 pb\nt : 44 793 387 - 7777\nf : 44 793 389 - 7811\nspyros maragos\ndynergy , inc .\n1000 louisiana street\nsuite 5800\nhouston , tx 77002\nt : 011 713 - 507 - 6589\nf : 001 713 - 767 - 5958\nehud ronn\nuniversity of texas at austin\ndepartment of finance\nmccombs school of business\naustin , tx 78712 - 1179\nt : 001 512 - 471 - 5853\nf : 001 512 - 471 - 5073", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.379+0000", "entityId": 10737, "properties": {"text": "Subject: re : mutually agreed upon changes okay\nlarry ,\ni have your fax and the message . unfortunately the corporate policy is very\nclear and standard on these matters and we cannot make exceptions . it would\nappear impossible for us to proceed with the non - disclosure agreement if it\nis not consistent with the version suggested by our legal department . please\nlet me know your thoughts . thanks .\nrakesh", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.384+0000", "entityId": 10738, "properties": {"text": "Subject: re : message from ken rice\ndorothy ,\nno problem . please , cc - mail me\ntom ' s number . one of the members of the group has a phd in\ncomputer science and he will join me for the call .\nvince\nfrom : dorothy dalton @ enron communications on 05 / 01 / 2001 08 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : message from ken rice\nvince :\nken rice received a call through a friend ' s referral from dr . tom limperis ( a\nprofessor at the university of michigan ) . dr . limperis has developed a\nstatistical database management system he would like to show enron . ken\nwould like you to return this call on his behalf . he feels that you are\nprobably the only person who will understand and be able to determine if\nenron should have an interest .\ndo you mind returning this call ? please let me know .\nthanks !\ndorothy dalton\noffice of the chairman\nenron broadband services\n1400 smith street , eb 4505\nhouston , tx 77002\n713 - 853 - 6724 - direct\n713 - 853 - 9469 - fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.389+0000", "entityId": 10739, "properties": {"text": "Subject: re : message from ken rice\ndorothy ,\nno problem . please , cc - mail me\ntom ' s number . one of the members of the group has a phd in\ncomputer science and he will join me for the call .\nvince\nfrom : dorothy dalton @ enron communications on 05 / 01 / 2001 08 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : message from ken rice\nvince :\nken rice received a call through a friend ' s referral from dr . tom limperis ( a professor at the university of michigan ) . dr . limperis has developed a statistical database management system he would like to show enron . ken would like you to return this call on his behalf . he feels that you are probably the only person who will understand and be able to determine if enron should have an interest .\ndo you mind returning this call ? please let me know .\nthanks !\ndorothy dalton\noffice of the chairman\nenron broadband services\n1400 smith street , eb 4505\nhouston , tx 77002\n713 - 853 - 6724 - direct\n713 - 853 - 9469 - fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.394+0000", "entityId": 10740, "properties": {"text": "Subject: re : enron credit modeling discussions\nhi again ,\nsome of you have been kind enough to supply me with information that can be used for the strategic plan ( i am writing for duffie ) .\nto assist you in gathering further information , it was suggested that i forward a preliminary outline of this strategic plan to your attention .\nthanks in advance for your assistance ,\niris\ntable of contents\nexecutive summary\nhighlights\nintroduction\nwhat is enron credit ?\nwhat is the business plan ?\nwhat are the products planned ?\ncurrent status : what we currently trade , how we price .\nwhat new models we need to achieve goals .\nwhat attempts are being made internally and what external commercial sources are available .\nswot analysis\nstrengths\nweakness\nopportunities\nthreats\npricing approach\na diagram illustrating how various models are tied together for the overall objective of coming up with final cds and dbs pricing .\nbrief description of each model shown in the diagram .\npublic firm versus private firm\nwhat we have as first cut for modeling primarily public firms .\nour understanding on public versus private firms ' credit risk characteristics , data availability and possible modeling approaches .\nour proposed approach / plan towards development of private firm model , including comparative analysis , model development , etc . .\nportfolio level business feasibility analysis\naccounting breakeven analysis\nportfolio theory\nalternative ( short term ) measures\nkmv ' private firm model\nmoody ' s riskcalc model for private firms\ncomparison of kmv vs moody ' s private firm model\nfuture strategy\ndevelopment of private firm pricing models ( short - and long - tenor modelso\ncompletion of parent / subsidiary model\nrisk management model for ect business\nreferences", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.399+0000", "entityId": 10741, "properties": {"text": "Subject: re : enron credit modeling discussions\nhi again ,\nsome of you have been kind enough to supply me with information that can be\nused for the strategic plan ( i am writing for duffie ) .\nto assist you in gathering further information , it was suggested that i\nforward a preliminary outline of this strategic plan to your attention .\nthanks in advance for your assistance ,\niris\ntable of contents\nexecutive summary\nhighlights\nintroduction\nwhat is enron credit ?\nwhat is the business plan ?\nwhat are the products planned ?\ncurrent status : what we currently trade , how we price .\nwhat new models we need to achieve goals .\nwhat attempts are being made internally and what external commercial sources\nare available .\nswot analysis\nstrengths\nweakness\nopportunities\nthreats\npricing approach\na diagram illustrating how various models are tied together for the overall\nobjective of coming up with final cds and dbs pricing .\nbrief description of each model shown in the diagram .\npublic firm versus private firm\nwhat we have as first cut for modeling primarily public firms .\nour understanding on public versus private firms \u0001 , credit risk\ncharacteristics , data availability and possible modeling approaches .\nour proposed approach / plan towards development of private firm model ,\nincluding comparative analysis , model development , etc . .\nportfolio level business feasibility analysis\naccounting breakeven analysis\nportfolio theory\nalternative ( short term ) measures\nkmv \u0001 , private firm model\nmoody \u0001 , s riskcalc model for private firms\ncomparison of kmv vs moody \u0001 , s private firm model\nfuture strategy\ndevelopment of private firm pricing models ( short - and long - tenor modelso\ncompletion of parent / subsidiary model\nrisk management model for ect business\nreferences", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.405+0000", "entityId": 10742, "properties": {"text": "Subject: enron credit modeling discussions\nhi ,\nthis email is in reference to our plan for detailed discussions about enron credit ' s modeling strategy . several meetings have already been scheduled . please refer to the attached excel spreadsheet for further details .\nalso , if you like , we can have more informal discussions over lunch , dinner , drinks , etc .\nthanks in advance for your time .\nregards ,\niris", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.410+0000", "entityId": 10743, "properties": {"text": "Subject: re : london contact number\nhi anita ,\nhow are you ? i arrived yesterday late morning from the london gatwick airport . due to rush hour traffic , etc . it took a while to get into the city to the hotel .\nalso , due to may day ( may lst ) protests / riots , etc . , the hotel management strongly recommended that we remain in the hotel .\nhowever , i am in the office today . i can be reached via email or via telephone at 44 ( 0 ) 207 783 5647 .\ntake care ,\niris\n- - - - - original message - - - - -\nfrom : dupont , anita\nsent : tuesday , may 01 , 2001 5 : 23 pm\nto : mmumford @ enron . com\ncc : mack , iris ; crenshaw , shirley\nsubject : i . m . mack 30 apr - 15 may * * plse review for accuracy * * agent ce / ce booking ref x 7 w 882 mack / iris eb 1972 enron corp\nimportance : high\nsee iris ' s itinerary below . i thought her initial plan was to land this morning and come in to enron house in early afternoon . see itinerary for phone number of hotel . let me know if i can help in any\nother way . thanks . anita\nservice date from to depart arrive\ncontinental airlines 30 apr houston tx london gatwick 350 p 655 a\nco 34 j mon g . bush iah gatwick 01 may\nterminal dom terminal s\ndinner / snack non stop\nreservation confirmed 9 : 05 duration\nvegetarian meal , non - dairy confirmed\naircraft : boeing 777 - 200 / 300\nhotel 30 apr athenaeum hotel and apartments\n11 may 116 piccadilly\nlondon england , wlv obj\nunited kingdom\ntelephone : 44 - ( 0 ) - 207 - 499 - 3464\nfax : 44 - ( 0 ) - 207 - 493 - 1860\nconfirmation : claire 25 apr\nrate : rac gbp 270 . 00 per night\nguarantee given\nprereg actual arr lmay 655 am apartment\nto avoid billing cancel by 6 pm 24 hrs prior\ncontinental airlines 11 may london gatwick houston tx 1200 n 415 p\nco 5 j fri gatwick g . bush iah\nterminal s terminal dom\nlunch / snack non stop\nreservation confirmed 10 : 15 duration\nvegetarian meal , non - dairy confirmed\naircraft : boeing 777 - 200 / 300", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.414+0000", "entityId": 10744, "properties": {"text": "Subject: an interview\nshirley ,\nplease schedule an interview with konstantin on may 8 .\nstinson , zimin , alex , tanya , krishna , myself .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 02 / 2001 03 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" konstantin n . kudin \" on 05 / 02 / 2001 01 : 39 : 15 pm\nto :\ncc :\nsubject : an interview\ndear dr . kaminski\nwe have talked earlier during your energy class at rice about career\nopportunities in risk management at enron . if it is possible , i would like\nto meet with you and people from your group next week , preferably tuesday\n( may 8 ) . my time is flexible , i could come any time . other days are also\nfine .\nthank you very much in advance .\nsincerely ,\nkonstantin kudin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.419+0000", "entityId": 10745, "properties": {"text": "Subject: re : a friend of mine\nvince ,\nthank you very much for the follow up report . i am sure richard will be very enthusiastic about the opportunity to speak with you and your team . i appreciate your help , and please feel free to contact me if you or shirley need assistance with logistics .\nagain , thank you and i look forward to working with you again this recruiting season .\nregards ,\nkristin\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , may 02 , 2001 8 : 27 am\nto : gandy , kristin\nsubject : re : a friend of mine\nkristin ,\nthanks a lot for the resume .\nwe shall arrange a phone interview with richard . this is out standard procedure .\na phone interview is followed by the on - site interview , after we determine what is the best team to interview\nthe candidate .\nvince\nfrom : kristin gandy / enron @ enronxgate on 05 / 01 / 2001 05 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : a friend of mine\nvince ,\nlast week i was contacted by one of my friends who is very interested in becoming an enron employee . he has a phd and several years research and lab experience .\nrichard is afraid that being a phd is a dying breed and may need to go back to school to obtain an mba . i was wondering if you would mind looking at the attached resume to assess if you have any interest in richard , or if you feel i should encourage him to go back to school . i am unclear as to the qualifications for your group so i apologize if this request is way off base .\nthank you for your help ,\nkristin gandy\nassociate recruiter\nenron corporation\n1400 smith street eb 1163\nhouston , texas 77002\n713 - 345 - 3214\nkristin . gandy @ enron . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.424+0000", "entityId": 10746, "properties": {"text": "Subject: re : summer work . .\njinbaek ,\nthis is a project related to automated trading platforms for commodities .\nvince\njinbaek kim on 05 / 02 / 2001 05 : 21 : 40 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : summer work . .\ndr . kaminski ,\nthanks for your mail .\ni am sorry that i ' ll not be available earlier ,\ni will talk with my advisor , but\nprobably it will be pretty negative .\nhowever , i may be able to start it from junel ,\ndepending on what he tells . .\nwe will meet tomorrow afternoon ,\nso i ' ll be able to let you know\nwhether we can start work earlier then .\nand could you tell me briefly\nwhat are those projects you have in mind ?\nthanks !\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non wed , 2 may 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> thanks for your message .\n>\n> we have a number of additional fascinating projects that you can work\n> on . as a matter of fact , it would be great to have you here earlier .\n>\n> vince\n>\n>\n>\n>\n>\n> \" jinbaek kim \" on 05 / 02 / 2001 05 : 18 : 32 am\n>\n> to : , \" raghavan , suresh \"\n> , \" mesquita , ross \"\n>\n> cc :\n> subject : summer work . .\n>\n>\n> long time no see ,\n> how have you been . . . must be busy and living a challenging life ?\n> i have been pretty busy too ,\n> to finish a project and write a paper , these days .\n>\n> everything looks going ok for my summer internship .\n> i took necessary steps to work out of campus , and sent\n> signed contract to molly a week ago . .\n>\n> here is what i am expecting to do in the summer .\n> please let me know if you have any change in mind .\n> actually , i wonder a little bit if dealbench changed its business model . . .\n> and maybe you got priority in something different\n> because it has been quite a while since we talked .\n> i ' d like to what ' s going on in dealbench team . . .\n> raghavan and ross ,\n> if we talk over phone it will be great !\n>\n> dr . kaminski ,\n> if you think there is something else interesting to work with during the\n> summer ,\n> to both you and i , please let me know .\n> my interest is auction , market design , and simulation .\n> i am taking a financial engineering class , ( mostly on option pricing )\n> and working on electricity generator valuation problem based on\n> spark spread option .\n>\n> all of you ,\n> let ' s keep in touch until we meet in june ! !\n>\n> best regards ,\n> jinbaek\n>\n>\n> tentative work period : 6 / 4 - 8 / 4\n>\n> 1 . tasks :\n> 1 ) survey on auctions : the state of art\n> single - item auction , multi - unit auction , sequential auction ,\n> multi - attribute auction , combinatorial auction\n>\n> - theoretical\n> - experimental\n> - algorithmical\n>\n> 2 ) deal bench ' s auction model analysis\n>\n> 2 . deliverables :\n> 1 ) 3 presentations :\n> - lst presentation : around 6 / 30 : on different auction types and\n> researches\n> - 2 nd presentation : around 7 / 15 : the state of art in auction studies\n> - 3 rd presentation : around 8 / 1 : deal bench ' s model analysis\n>\n> 2 ) report :\n> summary of auction study in laymen ' s term\n> deal bench ' s model analysis\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.429+0000", "entityId": 10747, "properties": {"text": "Subject: interview with the enron research group\nhello mr . kudin :\nvince kaminski has asked me to schedule interviews for you with some\nof the research group . however , tuesday , the 8 th is not a good day for\neveryone as we will need approximately 3 hours .\ncould you do it thursday afternoon may 10 th ? we could start at 1 : 00 pm\nand be through by 4 : 00 pm .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao vice president\ntanya tamarchenko director\nzimin lu director\nalex huang director\nplease let me know if this will work for you . if so , i will need you to\nforward\nme a copy of your resume .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.434+0000", "entityId": 10748, "properties": {"text": "Subject: an interview\nshirley ,\nplease schedule an interview with konstantin on may 8 .\nstinson , zimin , alex , tanya , krishna , myself .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 02 / 2001\n03 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\" konstantin n . kudin \" on 05 / 02 / 2001 01 : 39 : 15 pm\nto :\ncc :\nsubject : an interview\ndear dr . kaminski\nwe have talked earlier during your energy class at rice about career\nopportunities in risk management at enron . if it is possible , i would like\nto meet with you and people from your group next week , preferably tuesday\n( may 8 ) . my time is flexible , i could come any time . other days are also\nfine .\nthank you very much in advance .\nsincerely ,\nkonstantin kudin", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.439+0000", "entityId": 10749, "properties": {"text": "Subject: re : summer work . .\njinbaek ,\nthanks for your message .\nwe have a number of additional fascinating projects that you can work\non . as a matter of fact , it would be great to have you here earlier .\nvince\n\" jinbaek kim \" on 05 / 02 / 2001 05 : 18 : 32 am\nto : , \" raghavan , suresh \" , \" mesquita , ross \"\ncc :\nsubject : summer work . .\nlong time no see ,\nhow have you been . . . must be busy and living a challenging life ?\ni have been pretty busy too ,\nto finish a project and write a paper , these days .\neverything looks going ok for my summer internship .\ni took necessary steps to work out of campus , and sent\nsigned contract to molly a week ago . .\nhere is what i am expecting to do in the summer .\nplease let me know if you have any change in mind .\nactually , i wonder a little bit if dealbench changed its business model . . .\nand maybe you got priority in something different\nbecause it has been quite a while since we talked .\ni ' d like to what ' s going on in dealbench team . . .\nraghavan and ross ,\nif we talk over phone it will be great !\ndr . kaminski ,\nif you think there is something else interesting to work with during the\nsummer ,\nto both you and i , please let me know .\nmy interest is auction , market design , and simulation .\ni am taking a financial engineering class , ( mostly on option pricing )\nand working on electricity generator valuation problem based on\nspark spread option .\nall of you ,\nlet ' s keep in touch until we meet in june ! !\nbest regards ,\njinbaek\ntentative work period : 6 / 4 - 8 / 4\n1 . tasks :\n1 ) survey on auctions : the state of art\nsingle - item auction , multi - unit auction , sequential auction ,\nmulti - attribute auction , combinatorial auction\n- theoretical\n- experimental\n- algorithmical\n2 ) deal bench ' s auction model analysis\n2 . deliverables :\n1 ) 3 presentations :\n- lst presentation : around 6 / 30 : on different auction types and researches\n- 2 nd presentation : around 7 / 15 : the state of art in auction studies\n- 3 rd presentation : around 8 / 1 : deal bench ' s model analysis\n2 ) report :\nsummary of auction study in laymen ' s term\ndeal bench ' s model analysis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.444+0000", "entityId": 10750, "properties": {"text": "Subject: re : a friend of mine\nvince ,\nthank you very much for the follow up report . i am sure richard will be very\nenthusiastic about the opportunity to speak with you and your team . i\nappreciate your help , and please feel free to contact me if you or shirley\nneed assistance with logistics .\nagain , thank you and i look forward to working with you again this recruiting\nseason .\nregards ,\nkristin\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , may 02 , 2001 8 : 27 am\nto : gandy , kristin\nsubject : re : a friend of mine\nkristin ,\nthanks a lot for the resume .\nwe shall arrange a phone interview with richard . this is out standard\nprocedure .\na phone interview is followed by the on - site interview , after we determine\nwhat is the best team to interview\nthe candidate .\nvince\nfrom : kristin gandy / enron @ enronxgate on 05 / 01 / 2001 05 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : a friend of mine\nvince ,\nlast week i was contacted by one of my friends who is very interested in\nbecoming an enron employee . he has a phd and several years research and lab\nexperience .\nrichard is afraid that being a phd is a dying breed and may need to go back\nto school to obtain an mba . i was wondering if you would mind looking at the\nattached resume to assess if you have any interest in richard , or if you feel\ni should encourage him to go back to school . i am unclear as to the\nqualifications for your group so i apologize if this request is way off base .\nthank you for your help ,\nkristin gandy\nassociate recruiter\nenron corporation\n1400 smith street eb 1163\nhouston , texas 77002\n713 - 345 - 3214\nkristin . gandy @ enron . com\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.449+0000", "entityId": 10751, "properties": {"text": "Subject: re : summer work . .\njinbaek ,\nthanks for your message .\nwe have a number of additional fascinating projects that you can work\non . as a matter of fact , it would be great to have you here earlier .\nvince\n\" jinbaek kim \" on 05 / 02 / 2001 05 : 18 : 32 am\nto : , \" raghavan , suresh \"\n, \" mesquita , ross \"\ncc :\nsubject : summer work . .\nlong time no see ,\nhow have you been . . . must be busy and living a challenging life ?\ni have been pretty busy too ,\nto finish a project and write a paper , these days .\neverything looks going ok for my summer internship .\ni took necessary steps to work out of campus , and sent\nsigned contract to molly a week ago . .\nhere is what i am expecting to do in the summer .\nplease let me know if you have any change in mind .\nactually , i wonder a little bit if dealbench changed its business model . . .\nand maybe you got priority in something different\nbecause it has been quite a while since we talked .\ni ' d like to what ' s going on in dealbench team . . .\nraghavan and ross ,\nif we talk over phone it will be great !\ndr . kaminski ,\nif you think there is something else interesting to work with during the\nsummer ,\nto both you and i , please let me know .\nmy interest is auction , market design , and simulation .\ni am taking a financial engineering class , ( mostly on option pricing )\nand working on electricity generator valuation problem based on\nspark spread option .\nall of you ,\nlet ' s keep in touch until we meet in june ! !\nbest regards ,\njinbaek\ntentative work period : 6 / 4 - 8 / 4\n1 . tasks :\n1 ) survey on auctions : the state of art\nsingle - item auction , multi - unit auction , sequential auction ,\nmulti - attribute auction , combinatorial auction\n- theoretical\n- experimental\n- algorithmical\n2 ) deal bench ' s auction model analysis\n2 . deliverables :\n1 ) 3 presentations :\n- lst presentation : around 6 / 30 : on different auction types and researches\n- 2 nd presentation : around 7 / 15 : the state of art in auction studies\n- 3 rd presentation : around 8 / 1 : deal bench ' s model analysis\n2 ) report :\nsummary of auction study in laymen ' s term\ndeal bench ' s model analysis", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.453+0000", "entityId": 10752, "properties": {"text": "Subject: telephone interview with the enron research group\ngood morning richard :\nyour resume was forwarded to vince kaminski and the research group\nand they would like to conduct a telephone interview with you at your\nconvenience .\nplease give me some dates and times that you would be available and\ni will coordinate the schedule . also , the telephone number you wish to be\ncontacted at .\nthe telephone interview will be last approximately an hour and the\ninterviewers would be :\nvince kaminski managing director , research\nstinson gibner vice president , research\nvasant shanbhogue vice president , research\nthanks richard and we look forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.458+0000", "entityId": 10753, "properties": {"text": "Subject: a friend of mine\nshirley ,\nplease , arrange a phone interview with richard .\nstinson , myself , vasant .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 02 / 2001\n08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kristin gandy / enron @ enronxgate on 05 / 01 / 2001 05 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : a friend of mine\nvince ,\nlast week i was contacted by one of my friends who is very interested in\nbecoming an enron employee . he has a phd and several years research and lab\nexperience .\nrichard is afraid that being a phd is a dying breed and may need to go back\nto school to obtain an mba . i was wondering if you would mind looking at the\nattached resume to assess if you have any interest in richard , or if you feel\ni should encourage him to go back to school . i am unclear as to the\nqualifications for your group so i apologize if this request is way off base .\nthank you for your help ,\nkristin gandy\nassociate recruiter\nenron corporation\n1400 smith street eb 1163\nhouston , texas 77002\n713 - 345 - 3214\nkristin . gandy @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.463+0000", "entityId": 10754, "properties": {"text": "Subject: working paper list & etc\n? ? ? dear vince :\n?\n? ? ? i have put together a list of finance working papers ( some of which i\nbrought to the interview last wednesday ) which i have written since 1995\nmostly in support of my work but also ( at least initially ) as a learning\ntool . several of them , however , ? do contain innovations .\n? ? ?\n? ? ? i have asked ms . de claris to forward a copy to you .\n?\n? ? ? as i expressed to you earlier i am particularly interested in enron\ncredit swaps trading platform and the business opportunities that it will\nspawn .\n?\n? ? ? i also think that there are tremendous opportunities to be explored in\nthe secondary mortgage maket in the us . i do not know if enron has\nconsidered or is active in this market . this would be an area that i am also\nvery interested and in which i think much better can be done than most of\nthe players in the street .\n?\n? ? ? the question in my mind ( hopefully not prematurely ) ? is : if there is\ninterest here would enron consider letting me put together this business ?\n?\n? ? ? i look forward to hearing from you soon .\n?\n? ? ? best regards\n?\n? ? ? joao\n?\n? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.468+0000", "entityId": 10755, "properties": {"text": "Subject: telephone interview with the enron research group\ngood morning richard :\nyour resume was forwarded to vince kaminski and the research group\nand they would like to conduct a telephone interview with you at your\nconvenience .\nplease give me some dates and times that you would be available and\ni will coordinate the schedule . also , the telephone number you wish to be\ncontacted at .\nthe telephone interview will be last approximately an hour and the\ninterviewers would be :\nvince kaminski managing director , research\nstinson gibner vice president , research\nvasant shanbhogue vice president , research\nthanks richard and we look forward to hearing from you .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.478+0000", "entityId": 10756, "properties": {"text": "Subject: a friend of mine\nshirley ,\nplease , arrange a phone interview with richard .\nstinson , myself , vasant .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 02 / 2001 08 : 15 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : kristin gandy / enron @ enronxgate on 05 / 01 / 2001 05 : 14 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : a friend of mine\nvince ,\nlast week i was contacted by one of my friends who is very interested in becoming an enron employee . he has a phd and several years research and lab experience .\nrichard is afraid that being a phd is a dying breed and may need to go back to school to obtain an mba . i was wondering if you would mind looking at the attached resume to assess if you have any interest in richard , or if you feel i should encourage him to go back to school . i am unclear as to the qualifications for your group so i apologize if this request is way off base .\nthank you for your help ,\nkristin gandy\nassociate recruiter\nenron corporation\n1400 smith street eb 1163\nhouston , texas 77002\n713 - 345 - 3214\nkristin . gandy @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.488+0000", "entityId": 10757, "properties": {"text": "Subject: working paper list & etc\ndear vince :\ni have put together a list of finance working papers ( some of which i brought to the interview last wednesday ) which i have written since 1995 mostly in support of my work but also ( at least initially ) as a learning tool . several of them , however , do contain innovations .\ni have asked ms . de claris to forward a copy to you .\nas i expressed to you earlier i am particularly interested in enron credit swaps trading platform and the business opportunities that it will spawn .\ni also think that there are tremendous opportunities to be explored in the secondary mortgage maket in the us . i do not know if enron has considered or is active in this market . this would be an area that i am also very interested and in which i think much better can be done than most of the players in the street .\nthe question in my mind ( hopefully not prematurely ) is : if there is interest here would enron consider letting me put together this business ?\ni look forward to hearing from you soon .\nbest regards\njoao", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.493+0000", "entityId": 10758, "properties": {"text": "Subject: re : summer work . .\njinbaek ,\nthis is a project related to automated trading platforms for commodities .\nvince\njinbaek kim on 05 / 02 / 2001 05 : 21 : 40 pm\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : summer work . .\ndr . kaminski ,\nthanks for your mail .\ni am sorry that i ' ll not be available earlier ,\ni will talk with my advisor , but\nprobably it will be pretty negative .\nhowever , i may be able to start it from junel ,\ndepending on what he tells . .\nwe will meet tomorrow afternoon ,\nso i ' ll be able to let you know\nwhether we can start work earlier then .\nand could you tell me briefly\nwhat are those projects you have in mind ?\nthanks !\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '\non wed , 2 may 2001 vince . j . kaminski @ enron . com wrote :\n>\n> jinbaek ,\n>\n> thanks for your message .\n>\n> we have a number of additional fascinating projects that you can work\n> on . as a matter of fact , it would be great to have you here earlier .\n>\n> vince\n>\n>\n>\n>\n>\n> \" jinbaek kim \" on 05 / 02 / 2001 05 : 18 : 32 am\n>\n> to : , \" raghavan , suresh \"\n> , \" mesquita , ross \"\n>\n> cc :\n> subject : summer work . .\n>\n>\n> long time no see ,\n> how have you been . . . must be busy and living a challenging life ?\n> i have been pretty busy too ,\n> to finish a project and write a paper , these days .\n>\n> everything looks going ok for my summer internship .\n> i took necessary steps to work out of campus , and sent\n> signed contract to molly a week ago . .\n>\n> here is what i am expecting to do in the summer .\n> please let me know if you have any change in mind .\n> actually , i wonder a little bit if dealbench changed its business model . . .\n> and maybe you got priority in something different\n> because it has been quite a while since we talked .\n> i ' d like to what ' s going on in dealbench team . . .\n> raghavan and ross ,\n> if we talk over phone it will be great !\n>\n> dr . kaminski ,\n> if you think there is something else interesting to work with during the\n> summer ,\n> to both you and i , please let me know .\n> my interest is auction , market design , and simulation .\n> i am taking a financial engineering class , ( mostly on option pricing )\n> and working on electricity generator valuation problem based on\n> spark spread option .\n>\n> all of you ,\n> let ' s keep in touch until we meet in june ! !\n>\n> best regards ,\n> jinbaek\n>\n>\n> tentative work period : 6 / 4 - 8 / 4\n>\n> 1 . tasks :\n> 1 ) survey on auctions : the state of art\n> single - item auction , multi - unit auction , sequential auction ,\n> multi - attribute auction , combinatorial auction\n>\n> - theoretical\n> - experimental\n> - algorithmical\n>\n> 2 ) deal bench ' s auction model analysis\n>\n> 2 . deliverables :\n> 1 ) 3 presentations :\n> - lst presentation : around 6 / 30 : on different auction types and\n> researches\n> - 2 nd presentation : around 7 / 15 : the state of art in auction studies\n> - 3 rd presentation : around 8 / 1 : deal bench ' s model analysis\n>\n> 2 ) report :\n> summary of auction study in laymen ' s term\n> deal bench ' s model analysis\n>\n>\n>\n>\n>\n>\n>", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.498+0000", "entityId": 10759, "properties": {"text": "Subject: interview with the enron research group\nhello mr . kudin :\nvince kaminski has asked me to schedule interviews for you with some\nof the research group . however , tuesday , the 8 th is not a good day for\neveryone as we will need approximately 3 hours .\ncould you do it thursday afternoon may 10 th ? we could start at 1 : 00 pm\nand be through by 4 : 00 pm .\nthe interviewers would be :\nvince kaminski managing director\nstinson gibner vice president\nkrishna krishnarao vice president\ntanya tamarchenko director\nzimin lu director\nalex huang director\nplease let me know if this will work for you . if so , i will need you to forward\nme a copy of your resume .\nregards ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n713 - 853 - 5290\nemail : shirley . crenshaw @ enron . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.503+0000", "entityId": 10760, "properties": {"text": "Subject: meeting to discuss presentation materials\nhello vince and kenneth ,\nmy teammates and i would like to schedule a time with you to discuss our\npresentation materials . we would prefer to meet with you sometime on\nthursday so that we can have the weekend to include any changes that you may\nsuggest , but we will accommodate your schedules .\nthank you for all of your help ,\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncharles womack jr .\nmba candidate 2002\nrice university\njesse h . jones graduate school of management\ncwomack @ rice . edu\ncell : 281 - 413 - 8147", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.512+0000", "entityId": 10761, "properties": {"text": "Subject: eol presentation\nthank you for meeting with the students from rice university ' s jesse h . jones\ngraduate school of management in april . the students greatly appreciated the\nopportunity to talk with you . your perspective and insights into eol and its\ncompetitors helped the students gain much more useful information in their\ninterviews with enymex , houstonstreet . com , ice , dynegydirect , and other\nenergy e - commerce platforms .\nthe students will present the results of their research next monday ( may 7 )\nat 4 : 00 p . m . in room 49 cl . we would be delighted if you can attend their\npresentation . if you cannot attend but would like a copy of their final\nreport , please feel free to let me know and i will make sure you get it .\nthanks again for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.517+0000", "entityId": 10762, "properties": {"text": "Subject: grades\npam ,\nanother team :\nelena chilkina\nrobert j . guadette\njoseph helms\nkenneth jett\ntodd litton\nmark westmoreland\ngrade : a -\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.523+0000", "entityId": 10763, "properties": {"text": "Subject: meeting to discuss presentation materials\nplease respond to hello vince and kenneth ,\nmy teammates and i would like to schedule a time with you to discuss our\npresentation materials . we would prefer to meet with you sometime on\nthursday so that we can have the weekend to include any changes that you may\nsuggest , but we will accommodate your schedules .\nthank you for all of your help ,\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\ncharles womack jr .\nmba candidate 2002\nrice university\njesse h . jones graduate school of management\ncwomack @ rice . edu\ncell : 281 - 413 - 8147", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.528+0000", "entityId": 10764, "properties": {"text": "Subject: eol presentation\nthank you for meeting with the students from rice university ' s jesse h . jones graduate school of management in april . the students greatly appreciated the opportunity to talk with you . your perspective and insights into eol and its competitors helped the students gain much more useful information in their interviews with enymex , houstonstreet . com , ice , dynegydirect , and other energy e - commerce platforms .\nthe students will present the results of their research next monday ( may 7 ) at 4 : 00 p . m . in room 49 cl . we would be delighted if you can attend their presentation . if you cannot attend but would like a copy of their final report , please feel free to let me know and i will make sure you get it .\nthanks again for your help .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.533+0000", "entityId": 10765, "properties": {"text": "Subject: re : grades\nthank you mr . kaminsky !\ni received your first group of grades and will keep track as you work your\nway through the class to make sure that we don ' t miss anyone . - pam\nat 04 : 55 pm 5 / 1 / 01 - 0500 , you wrote :\n> pam ,\n>\n> the term papers arrived at my internet mailbox .\n> i shall be sending you the information as i make progress reading the\n> papers .\n>\n> first group of students :\n>\n> helen demianenko\n> javier lamas\n> lynn nazareth\n> shauywn smith\n> carlos wheelock\n> sarah woody\n>\n> grade : a\n>\n>\n> please , confirm receipt of this message and please double check\n> that all registered students have been graded ( to make sure no student\n> falls through\n> the cracks ) .\n>\n>\n> vince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.538+0000", "entityId": 10766, "properties": {"text": "Subject: alp presentation\nhi vince ! !\ni ' ll take care of the invitations and i am planning to be at the concert on saturday !\nthanks ! !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 05 / 01 / 2001 09 : 14 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 01 / 2001 04 : 55 pm\nto : christie patrick / hou / ect @ ect\ncc : vince j kaminski / hou / ect @ ect , kenneth parkhill / na / enron @ enron , shirley crenshaw / hou / ect @ ect , melinda mccarty / corp / enron @ enron\nsubject : alp presentation\nchristie ,\nshirley reserved room 49 cl for monday 4 : 00 p . m . presentation .\ncan you issue the formal invitation to our guests with the game / dinner\ndetails ? i don ' t have all the details regarding the enron field\nbox and time . i am out most of the day on wednesday but we can\ndiscuss the details on thursday .\nhope to see you on saturday at the concert .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.543+0000", "entityId": 10767, "properties": {"text": "Subject: re : eprm 2001 houston\nlayla ,\nmy associate ' s name is tanya tamarchenko . the\ne - mail address is : tanya . tamarchenko @ enron . com .\nlocation is the same as mine , enron , 1400 smith , houston .\nthanks\nvince\np . s . shirley , please send my bio to layla\n\" layla o ' leary \" on 05 / 02 / 2001 10 : 33 : 00 am\nplease respond to\nto :\ncc :\nsubject : re : eprm 2001 houston\nyes , that ' s fine . if you can please give me her full contact details\nincluding e - mail and address i will have her registered as a co - speaker .\nif you would like to bring your own copies to the event i would ask you to\nsend 200 copies directly to the venue . although if you can get it to me on\nfriday i can still insert it !\ncould i please trouble you for a short biography ?\nkind regards\nlayla\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 02 may 2001 15 : 38\nto : loleary @ riskwaters . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : eprm 2001 houston\nlayla ,\na few points .\ni shall be glad to attend the reception .\ni am falling behind in getting my presentation ready . sorry for the delay .\ni can commit to delivering the required number of copies on the day of my\npresentation\n( or a day before ) . i have done it on two occasions before ( power 2000 and\npower 1999 ) :\nthe copies were produced by our company copy center at no cost to you .\nmy associate , tanya tamarchenko , is helping me with one aspect of the\npresentation and\ni would like her to deliver part of my speach . it ' s only fair to give her\nthe credit when the\ncredit is due . is it ok to include her as an additional speaker ?\nvince\n\" layla o ' leary \" on 04 / 30 / 2001 09 : 04 : 52 am\nplease respond to\nto :\ncc :\nsubject : eprm 2001 houston\ndear speaker ,\npre - congress cocktail reception - sunday 13 th may @ 5 : 30 pm in the juniper\nroom\nwe would be delighted to have you attend our pre - congress cocktail\nreception . we will be extending this invitation to all our sponsors ,\nexhibitors and eprm / risk waters group staff . we hope this will provide a\nperfect opportunity for you to meet all our staff and clients before the\nformal opening of eprm 2001 usa\n+ rsvp\ni would also like to remind you that i need any missing presentations by\nthursday 3 rd may . it is essential that i get these in as the delegates\nrely\non these to make notes and get very upset if they are not included in the\npacks .\nif you still haven ' t informed me of your av requirements , please do so as\nquickly as possible . i also require a short biography .\ni would like to point out that i will not be taking any presentations on\ndisk to the event . if you are using a laptop , your presentation should be\nloaded onto the laptop that you bring with you . you must bring your own\nlaptop and disc , with connecting cables .\nany questions , please do not hesitate to contact me .\nkind regards\nlayla o ' leary\nevent co - ordinator\nrisk waters group\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ntel : + 44 ( 0 ) 20 7484 9871\nfax : + 44 ( 0 ) 20 7484 9800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.549+0000", "entityId": 10768, "properties": {"text": "Subject: re : eprm 2001 houston\nlayla ,\na few points .\ni shall be glad to attend the reception .\ni am falling behind in getting my presentation ready . sorry for the delay .\ni can commit to delivering the required number of copies on the day of my\npresentation\n( or a day before ) . i have done it on two occasions before ( power 2000 and\npower 1999 ) :\nthe copies were produced by our company copy center at no cost to you .\nmy associate , tanya tamarchenko , is helping me with one aspect of the\npresentation and\ni would like her to deliver part of my speach . it ' s only fair to give her the\ncredit when the\ncredit is due . is it ok to include her as an additional speaker ?\nvince\n\" layla o ' leary \" on 04 / 30 / 2001 09 : 04 : 52 am\nplease respond to\nto :\ncc :\nsubject : eprm 2001 houston\ndear speaker ,\npre - congress cocktail reception - sunday 13 th may @ 5 : 30 pm in the juniper\nroom\nwe would be delighted to have you attend our pre - congress cocktail\nreception . we will be extending this invitation to all our sponsors ,\nexhibitors and eprm / risk waters group staff . we hope this will provide a\nperfect opportunity for you to meet all our staff and clients before the\nformal opening of eprm 2001 usa\n+ rsvp\ni would also like to remind you that i need any missing presentations by\nthursday 3 rd may . it is essential that i get these in as the delegates rely\non these to make notes and get very upset if they are not included in the\npacks .\nif you still haven ' t informed me of your av requirements , please do so as\nquickly as possible . i also require a short biography .\ni would like to point out that i will not be taking any presentations on\ndisk to the event . if you are using a laptop , your presentation should be\nloaded onto the laptop that you bring with you . you must bring your own\nlaptop and disc , with connecting cables .\nany questions , please do not hesitate to contact me .\nkind regards\nlayla o ' leary\nevent co - ordinator\nrisk waters group\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ntel : + 44 ( 0 ) 20 7484 9871\nfax : + 44 ( 0 ) 20 7484 9800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.554+0000", "entityId": 10769, "properties": {"text": "Subject: re : eprm 2001 houston\nlayla ,\nmy associate ' s name is tanya tamarchenko . the\ne - mail address is : tanya . tamarchenko @ enron . com .\nlocation is the same as mine , enron , 1400 smith , houston .\nthanks\nvince\np . s . shirley , please send my bio to layla\n\" layla o ' leary \" on 05 / 02 / 2001 10 : 33 : 00 am\nplease respond to\nto :\ncc :\nsubject : re : eprm 2001 houston\nyes , that ' s fine . if you can please give me her full contact details\nincluding e - mail and address i will have her registered as a co - speaker .\nif you would like to bring your own copies to the event i would ask you to\nsend 200 copies directly to the venue . although if you can get it to me on\nfriday i can still insert it !\ncould i please trouble you for a short biography ?\nkind regards\nlayla\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : 02 may 2001 15 : 38\nto : loleary @ riskwaters . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : eprm 2001 houston\nlayla ,\na few points .\ni shall be glad to attend the reception .\ni am falling behind in getting my presentation ready . sorry for the delay .\ni can commit to delivering the required number of copies on the day of my\npresentation\n( or a day before ) . i have done it on two occasions before ( power 2000 and\npower 1999 ) :\nthe copies were produced by our company copy center at no cost to you .\nmy associate , tanya tamarchenko , is helping me with one aspect of the\npresentation and\ni would like her to deliver part of my speach . it ' s only fair to give her\nthe credit when the\ncredit is due . is it ok to include her as an additional speaker ?\nvince\n\" layla o ' leary \" on 04 / 30 / 2001 09 : 04 : 52 am\nplease respond to\nto :\ncc :\nsubject : eprm 2001 houston\ndear speaker ,\npre - congress cocktail reception - sunday 13 th may @ 5 : 30 pm in the juniper\nroom\nwe would be delighted to have you attend our pre - congress cocktail\nreception . we will be extending this invitation to all our sponsors ,\nexhibitors and eprm / risk waters group staff . we hope this will provide a\nperfect opportunity for you to meet all our staff and clients before the\nformal opening of eprm 2001 usa\n+ rsvp\ni would also like to remind you that i need any missing presentations by\nthursday 3 rd may . it is essential that i get these in as the delegates\nrely\non these to make notes and get very upset if they are not included in the\npacks .\nif you still haven ' t informed me of your av requirements , please do so as\nquickly as possible . i also require a short biography .\ni would like to point out that i will not be taking any presentations on\ndisk to the event . if you are using a laptop , your presentation should be\nloaded onto the laptop that you bring with you . you must bring your own\nlaptop and disc , with connecting cables .\nany questions , please do not hesitate to contact me .\nkind regards\nlayla o ' leary\nevent co - ordinator\nrisk waters group\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ntel : + 44 ( 0 ) 20 7484 9871\nfax : + 44 ( 0 ) 20 7484 9800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.559+0000", "entityId": 10770, "properties": {"text": "Subject: re : eprm 2001 houston\nlayla ,\na few points .\ni shall be glad to attend the reception .\ni am falling behind in getting my presentation ready . sorry for the delay .\ni can commit to delivering the required number of copies on the day of my presentation\n( or a day before ) . i have done it on two occasions before ( power 2000 and power 1999 ) :\nthe copies were produced by our company copy center at no cost to you .\nmy associate , tanya tamarchenko , is helping me with one aspect of the presentation and\ni would like her to deliver part of my speach . it ' s only fair to give her the credit when the\ncredit is due . is it ok to include her as an additional speaker ?\nvince\n\" layla o ' leary \" on 04 / 30 / 2001 09 : 04 : 52 am\nplease respond to\nto :\ncc :\nsubject : eprm 2001 houston\ndear speaker ,\npre - congress cocktail reception - sunday 13 th may @ 5 : 30 pm in the juniper\nroom\nwe would be delighted to have you attend our pre - congress cocktail\nreception . we will be extending this invitation to all our sponsors ,\nexhibitors and eprm / risk waters group staff . we hope this will provide a\nperfect opportunity for you to meet all our staff and clients before the\nformal opening of eprm 2001 usa\n+ rsvp\ni would also like to remind you that i need any missing presentations by\nthursday 3 rd may . it is essential that i get these in as the delegates rely\non these to make notes and get very upset if they are not included in the\npacks .\nif you still haven ' t informed me of your av requirements , please do so as\nquickly as possible . i also require a short biography .\ni would like to point out that i will not be taking any presentations on\ndisk to the event . if you are using a laptop , your presentation should be\nloaded onto the laptop that you bring with you . you must bring your own\nlaptop and disc , with connecting cables .\nany questions , please do not hesitate to contact me .\nkind regards\nlayla o ' leary\nevent co - ordinator\nrisk waters group\nhaymarket house\n28 - 29 haymarket\nlondon\nswly 4 rx\ntel : + 44 ( 0 ) 20 7484 9871\nfax : + 44 ( 0 ) 20 7484 9800", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.564+0000", "entityId": 10771, "properties": {"text": "Subject: new frbny research : 5 / 3\nplease respond to michael . demottnow available at the new york fed ' s research site :\n\" stocks in the household portfolio : a look back at the 1990 s , \" by tracy and schneider ( current issues 7 , no . 4 ) http : / / www . newyorkfed . org / rmaghome / curr _ iss / ci 7 - 4 . html\n\" currency orders and exchange - rate dynamics : explaining the success of technical analysis , \" by osler ( staff report 125 ) http : / / www . newyorkfed . org / rmaghome / staff _ rp / 2001 / srl 25 . html\n\" recent changes in the u . s . business cycle , \" by chauvet and potter ( staff report 126 ) http : / / www . newyorkfed . org / rmaghome / staff _ rp / 2001 / srl 26 . html\nu . s . and global economies charts , updated every wednesday http : / / www . newyorkfed . org / rmaghome / dirchrts /\nin addition , the foreign exchange committee ' s 2000 annual report is now available http : / / www . newyorkfed . org / fxc / ar 2000 / fxaro 0 . html\nresearch home page http : / / www . newyorkfed . org / rmaghome\nfeel free to forward these messages . to unsubscribe , contact listserv @ peach . ease . lsoft . com . in the e - mail , type : signoff frbnyrmagl . for more details : http : / / www . newyorkfed . org / rmaghome / subscribe / subscribe . html .\nthis notification service is provided to you free of charge . by subscribing to the service and providing your e - mail address , you agree to waive any claim against the federal reserve bank of new york for any messages that you may receive by reason of your subscription to this service and / or any resultant harm to you and / or your computer from receipt of such messages . the federal reserve bank of new york assumes no responsibility for any inaccuracies in any messages you may receive as a result of your subscription to this service .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.569+0000", "entityId": 10772, "properties": {"text": "Subject: new frbny research : 5 / 3\nnow available at the new york fed ' s research site :\n\" stocks in the household portfolio : a look back at the 1990 s , \" by tracy and\nschneider ( current issues 7 , no . 4 )\n\" currency orders and exchange - rate dynamics : explaining the success of\ntechnical analysis , \" by osler ( staff report 125 )\n\" recent changes in the u . s . business cycle , \" by chauvet and potter ( staff\nreport 126 )\nu . s . and global economies charts , updated every wednesday\nin addition , the foreign exchange committee ' s 2000 annual report is now\navailable\nresearch home page\nhttp : / / www . newyorkfed . org / rmaghome\nfeel free to forward these messages . to unsubscribe , contact\nlistserv @ peach . ease . lsoft . com . in the e - mail , type : signoff frbnyrmagl . for\nmore details : http : / / www . newyorkfed . org / rmaghome / subscribe / subscribe . html .\n?\nthis notification service is provided to you free of charge . by subscribing\nto the service and providing your e - mail address , you agree to waive any\nclaim against the federal reserve bank of new york for any messages that you\nmay receive by reason of your subscription to this service and / or any\nresultant harm to you and / or your computer from receipt of such messages . ?\nthe federal reserve bank of new york assumes no responsibility for any\ninaccuracies in any messages you may receive as a result of your subscription\nto this service .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.574+0000", "entityId": 10773, "properties": {"text": "Subject: re : country risk jr . economist hiring\nvince ,\nthanks .\n- - gwyn\nvince j kaminski @ ect\n05 / 02 / 2001 03 : 20 pm\nto : gwyn koepke / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : country risk jr . economist hiring\ngwyn ,\ntry to reduce the number of potential candidates to 3 , before i shall\nget involved .\nalso , i contacted hr regarding your promotion .\nthe process has started .\nvince\ngwyn koepke @ enron\n05 / 02 / 2001 03 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : country risk jr . economist hiring\nthanks vince . i have the resume book from sais . i ' d like to start contacting them individually telephonically prior to meeting with maureen . i will begin to contact them and do some initial screening . would you like to participate in the initial screening ?\nthanks , - - gwyn\nvince j kaminski @ ect\n05 / 02 / 2001 03 : 06 pm\nto : gwyn koepke / na / enron @ enron\ncc :\nsubject : re : country risk jr . economist hiring\ngwyn ,\nyes , please go ahead and get a resume book from sais .\nvince\ngwyn koepke @ enron\n05 / 02 / 2001 11 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : country risk jr . economist hiring\nvince ,\nmaureen had mentioned to me a while back that our group had approval to hire an junior / full economist . she then asked me to contact johns hopkins sais to get resumes of possible candidates . i have completed all this . but , before i begin contacting these potential candidates , i wanted to confirm with you that we have the approval to hire another person at the either junior or associate economist level .\nthank you .\ngwyn koepke\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.579+0000", "entityId": 10774, "properties": {"text": "Subject: re : gwen koepke\ni will see you on friday at 3 . if you would like for me to come before then , just let me know .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , may 02 , 2001 3 : 01 pm\nto : labbe , anne\ncc : kaminski , vince\nsubject : re : gwen koepke\nanne ,\nthanks for contacting me about this .\nas a matter of fact , i wanted to talk to you about it\ntoday as this matter was outstanding for a long time .\ni think we should go ahead and adjust gwen to manager ,\neffective march 1 . the compensation would be her current base plus\n10 k . this is what we typically do when we promote an associate to a manager .\nsuch promotions take place in march and i think\ngwen should not be penalized for the inefficiency of her management\n( i . e . my and maureen ' s procrastination ) .\non unrelated and more serious matter . gary hickerson is the primary client\nfor maureen ' s services . he communicated to me a few weeks ago that he is\nunwilling to underwrite maureen ' s position ( he is in general unhappy with\nher contribution ) . this means that maureen will have to find another sponsor or leave enron .\ngiven her abrasive and aggressive personality finding another internal customer\nwill be quite a challenge .\ngary volunteered to pay a very generous severance to maureen from his budget .\ni would like to talk to you about it when you have a few minutes .\nvince\nfrom : anne labbe / enron @ enronxgate on 05 / 02 / 2001 10 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : gwen koepke\nvince ,\njust wanted to touch base with you . i have tried to contact maureen so that gwen ' s title and salary can be adjusted to manager just as you requested , but have not heard any response from her . would you like for me to wait until i hear from maureen or should i go ahead and proceed in changing her title ? i just want to make sure that gwen is in the right peer group during prc .\nalso , i am going to try and set up a meeting with you next week through shirley to discuss any buring issues that you are experiencing , and your expectations during prc .\nthanks ,\nanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.585+0000", "entityId": 10775, "properties": {"text": "Subject: re : asian option for pavel\nstinson ,\nlet ' s talk about it . it seems like an open personality clash developing\nfor the first time in the history of the group .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 02 / 2001 03 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n05 / 02 / 2001 01 : 41 pm\nto : paulo issler / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : re : asian option for pavel\nour convention is whoever finalizes the model should write the documentation . it does not make sense\nto write one when changes are anticipated . you have been working on this almost a year , it never\nstrikes you that we need a documentation ?\ni created exotica . xll , does that also give you an excuse not working on exotica documentation ?\nzimin\npaulo issler\n05 / 02 / 2001 11 : 52 am\nto : zimin lu / hou / ect @ ect\ncc : tai woo / enron @ enronxgate @ enron , pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ni am surprised that we do not have the documentation ready .\ni can make that for you . it is not there because you did not put that together by the time it was created and all the changes i have made did not required changes on the functionality .\npaulo issler\nzimin lu\n05 / 02 / 2001 11 : 29 am\nto : tai woo / enron @ enronxgate @ enron , paulo issler / hou / ect @ ect\ncc : pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ntai woo ,\nhere are the c - codes for the crudeapo . ' sig ' is the spot\nvolatility meaning the price volatility within the delivery period .\nyou should consult with pavel for the definition of this \" extra \" parameters . we\nwould like to see the position monitor once you get it running .\nwe might have some additional suggestions .\npaulo ,\nwhy don ' t we have a documentation on crudeapo you worked on ?\ni can not find it in exotica help file . please supply that to tai , thanks .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tai woo / enron @ enronxgate on 05 / 02 / 2001 09 : 55 am\nto : paulo issler / hou / ect @ ect\ncc : kara maloney / enron @ enronxgate , zimin lu / hou / ect @ ect\nsubject : asian option for pavel\nthis morning , zimin told me that pavel is using a special model in evaluating his asian option portfolio .\nhe asked me to talk to you in order to access to the code so that i can see the difference made to the model .\nas i cannot find the doc . describing this model , please tell me what that new input parameter ' sig ' is .\nthanks ,\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.593+0000", "entityId": 10776, "properties": {"text": "Subject: your advice is appreciated\nvince ,\nin the morning we were talking about the el paso candidate who thinks he is above something and is not\nwilling to take certain project or responsibility . in real life , we also occasionally have similar stiuation . ( an\nexample is attached ) .\ni would like to have your guidance when such a situation occurs .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 05 / 02 / 2001 02 : 07 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n05 / 02 / 2001 01 : 41 pm\nto : paulo issler / hou / ect @ ect\ncc :\nsubject : re : asian option for pavel\nour convention is whoever finalizes the model should write the documentation . it does not make sense\nto write one when changes are anticipated . you have been working on this almost a year , it never\nstrikes you that we need a documentation ?\ni created exotica . xll , does that also give you an excuse not working on exotica documentation ?\nzimin\npaulo issler\n05 / 02 / 2001 11 : 52 am\nto : zimin lu / hou / ect @ ect\ncc : tai woo / enron @ enronxgate @ enron , pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ni am surprised that we do not have the documentation ready .\ni can make that for you . it is not there because you did not put that together by the time it was created and all the changes i have made did not required changes on the functionality .\npaulo issler\nzimin lu\n05 / 02 / 2001 11 : 29 am\nto : tai woo / enron @ enronxgate @ enron , paulo issler / hou / ect @ ect\ncc : pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ntai woo ,\nhere are the c - codes for the crudeapo . ' sig ' is the spot\nvolatility meaning the price volatility within the delivery period .\nyou should consult with pavel for the definition of this \" extra \" parameters . we\nwould like to see the position monitor once you get it running .\nwe might have some additional suggestions .\npaulo ,\nwhy don ' t we have a documentation on crudeapo you worked on ?\ni can not find it in exotica help file . please supply that to tai , thanks .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tai woo / enron @ enronxgate on 05 / 02 / 2001 09 : 55 am\nto : paulo issler / hou / ect @ ect\ncc : kara maloney / enron @ enronxgate , zimin lu / hou / ect @ ect\nsubject : asian option for pavel\nthis morning , zimin told me that pavel is using a special model in evaluating his asian option portfolio .\nhe asked me to talk to you in order to access to the code so that i can see the difference made to the model .\nas i cannot find the doc . describing this model , please tell me what that new input parameter ' sig ' is .\nthanks ,\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.603+0000", "entityId": 10777, "properties": {"text": "Subject: re : country risk jr . economist hiring\nvince ,\nthanks .\n- - gwyn\nvince j kaminski @ ect\n05 / 02 / 2001 03 : 20 pm\nto : gwyn koepke / na / enron @ enron\ncc : vince j kaminski / hou / ect @ ect\nsubject : re : country risk jr . economist hiring\ngwyn ,\ntry to reduce the number of potential candidates to 3 , before i shall\nget involved .\nalso , i contacted hr regarding your promotion .\nthe process has started .\nvince\ngwyn koepke @ enron\n05 / 02 / 2001 03 : 09 pm\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : re : country risk jr . economist hiring\nthanks vince . i have the resume book from sais . i ' d like to start\ncontacting them individually telephonically prior to meeting with maureen . i\nwill begin to contact them and do some initial screening . would you like to\nparticipate in the initial screening ?\nthanks , - - gwyn\nvince j kaminski @ ect\n05 / 02 / 2001 03 : 06 pm\nto : gwyn koepke / na / enron @ enron\ncc :\nsubject : re : country risk jr . economist hiring\ngwyn ,\nyes , please go ahead and get a resume book from sais .\nvince\ngwyn koepke @ enron\n05 / 02 / 2001 11 : 40 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : country risk jr . economist hiring\nvince ,\nmaureen had mentioned to me a while back that our group had approval to hire\nan junior / full economist . she then asked me to contact johns hopkins sais to\nget resumes of possible candidates . i have completed all this . but , before\ni begin contacting these potential candidates , i wanted to confirm with you\nthat we have the approval to hire another person at the either junior or\nassociate economist level .\nthank you .\ngwyn koepke", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.608+0000", "entityId": 10778, "properties": {"text": "Subject: re : gwen koepke\ni will see you on friday at 3 . if you would like for me to come before then ,\njust let me know .\n- - - - - original message - - - - -\nfrom : kaminski , vince\nsent : wednesday , may 02 , 2001 3 : 01 pm\nto : labbe , anne\ncc : kaminski , vince\nsubject : re : gwen koepke\nanne ,\nthanks for contacting me about this .\nas a matter of fact , i wanted to talk to you about it\ntoday as this matter was outstanding for a long time .\ni think we should go ahead and adjust gwen to manager ,\neffective march 1 . the compensation would be her current base plus\n10 k . this is what we typically do when we promote an associate to a manager .\nsuch promotions take place in march and i think\ngwen should not be penalized for the inefficiency of her management\n( i . e . my and maureen ' s procrastination ) .\non unrelated and more serious matter . gary hickerson is the primary client\nfor maureen ' s services . he communicated to me a few weeks ago that he is\nunwilling to underwrite maureen ' s position ( he is in general unhappy with\nher contribution ) . this means that maureen will have to find another sponsor\nor leave enron .\ngiven her abrasive and aggressive personality finding another internal\ncustomer\nwill be quite a challenge .\ngary volunteered to pay a very generous severance to maureen from his budget .\ni would like to talk to you about it when you have a few minutes .\nvince\nfrom : anne labbe / enron @ enronxgate on 05 / 02 / 2001 10 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : gwen koepke\nvince ,\njust wanted to touch base with you . i have tried to contact maureen so that\ngwen ' s title and salary can be adjusted to manager just as you requested , but\nhave not heard any response from her . would you like for me to wait until i\nhear from maureen or should i go ahead and proceed in changing her title ? i\njust want to make sure that gwen is in the right peer group during prc .\nalso , i am going to try and set up a meeting with you next week through\nshirley to discuss any buring issues that you are experiencing , and your\nexpectations during prc .\nthanks ,\nanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.613+0000", "entityId": 10779, "properties": {"text": "Subject: re : asian option for pavel\nstinson ,\nlet ' s talk about it . it seems like an open personality clash developing\nfor the first time in the history of the group .\nvince\n- - - - - - - - - - - - - - - - - - - - - - forwarded by vince j kaminski / hou / ect on 05 / 02 / 2001\n03 : 12 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n05 / 02 / 2001 01 : 41 pm\nto : paulo issler / hou / ect @ ect\ncc : ( bcc : vince j kaminski / hou / ect )\nsubject : re : asian option for pavel\nour convention is whoever finalizes the model should write the\ndocumentation . it does not make sense\nto write one when changes are anticipated . you have been working on this\nalmost a year , it never\nstrikes you that we need a documentation ?\ni created exotica . xll , does that also give you an excuse not working on\nexotica documentation ?\nzimin\npaulo issler\n05 / 02 / 2001 11 : 52 am\nto : zimin lu / hou / ect @ ect\ncc : tai woo / enron @ enronxgate @ enron , pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ni am surprised that we do not have the documentation ready .\ni can make that for you . it is not there because you did not put that\ntogether by the time it was created and all the changes i have made did not\nrequired changes on the functionality .\npaulo issler\nzimin lu\n05 / 02 / 2001 11 : 29 am\nto : tai woo / enron @ enronxgate @ enron , paulo issler / hou / ect @ ect\ncc : pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ntai woo ,\nhere are the c - codes for the crudeapo . ' sig ' is the spot\nvolatility meaning the price volatility within the delivery period .\nyou should consult with pavel for the definition of this \" extra \"\nparameters . we\nwould like to see the position monitor once you get it running .\nwe might have some additional suggestions .\npaulo ,\nwhy don ' t we have a documentation on crudeapo you worked on ?\ni can not find it in exotica help file . please supply that to tai , thanks .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tai woo / enron @ enronxgate on 05 / 02 / 2001 09 : 55 am\nto : paulo issler / hou / ect @ ect\ncc : kara maloney / enron @ enronxgate , zimin lu / hou / ect @ ect\nsubject : asian option for pavel\nthis morning , zimin told me that pavel is using a special model in evaluating\nhis asian option portfolio .\nhe asked me to talk to you in order to access to the code so that i can see\nthe difference made to the model .\nas i cannot find the doc . describing this model , please tell me what that new\ninput parameter ' sig ' is .\nthanks ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.618+0000", "entityId": 10780, "properties": {"text": "Subject: re : gwen koepke\nanne ,\nthanks for contacting me about this .\nas a matter of fact , i wanted to talk to you about it\ntoday as this matter was outstanding for a long time .\ni think we should go ahead and adjust gwen to manager ,\neffective march 1 . the compensation would be her current base plus\n10 k . this is what we typically do when we promote an associate to a manager .\nsuch promotions take place in march and i think\ngwen should not be penalized for the inefficiency of her management\n( i . e . my and maureen ' s procrastination ) .\non unrelated and more serious matter . gary hickerson is the primary client\nfor maureen ' s services . he communicated to me a few weeks ago that he is\nunwilling to underwrite maureen ' s position ( he is in general unhappy with\nher contribution ) . this means that maureen will have to find another sponsor\nor leave enron .\ngiven her abrasive and aggressive personality finding another internal\ncustomer\nwill be quite a challenge .\ngary volunteered to pay a very generous severance to maureen from his budget .\ni would like to talk to you about it when you have a few minutes .\nvince\nfrom : anne labbe / enron @ enronxgate on 05 / 02 / 2001 10 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : gwen koepke\nvince ,\njust wanted to touch base with you . i have tried to contact maureen so that\ngwen ' s title and salary can be adjusted to manager just as you requested , but\nhave not heard any response from her . would you like for me to wait until i\nhear from maureen or should i go ahead and proceed in changing her title ? i\njust want to make sure that gwen is in the right peer group during prc .\nalso , i am going to try and set up a meeting with you next week through\nshirley to discuss any buring issues that you are experiencing , and your\nexpectations during prc .\nthanks ,\nanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.624+0000", "entityId": 10781, "properties": {"text": "Subject: your advice is appreciated\nvince ,\nin the morning we were talking about the el paso candidate who thinks he is\nabove something and is not\nwilling to take certain project or responsibility . in real life , we also\noccasionally have similar stiuation . ( an\nexample is attached ) .\ni would like to have your guidance when such a situation occurs .\nzimin\n- - - - - - - - - - - - - - - - - - - - - - forwarded by zimin lu / hou / ect on 05 / 02 / 2001 02 : 07 pm\n- - - - - - - - - - - - - - - - - - - - - - - - - - -\nzimin lu\n05 / 02 / 2001 01 : 41 pm\nto : paulo issler / hou / ect @ ect\ncc :\nsubject : re : asian option for pavel\nour convention is whoever finalizes the model should write the\ndocumentation . it does not make sense\nto write one when changes are anticipated . you have been working on this\nalmost a year , it never\nstrikes you that we need a documentation ?\ni created exotica . xll , does that also give you an excuse not working on\nexotica documentation ?\nzimin\npaulo issler\n05 / 02 / 2001 11 : 52 am\nto : zimin lu / hou / ect @ ect\ncc : tai woo / enron @ enronxgate @ enron , pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ni am surprised that we do not have the documentation ready .\ni can make that for you . it is not there because you did not put that\ntogether by the time it was created and all the changes i have made did not\nrequired changes on the functionality .\npaulo issler\nzimin lu\n05 / 02 / 2001 11 : 29 am\nto : tai woo / enron @ enronxgate @ enron , paulo issler / hou / ect @ ect\ncc : pavel zadorozhny / enron @ enronxgate\nsubject : re : asian option for pavel\ntai woo ,\nhere are the c - codes for the crudeapo . ' sig ' is the spot\nvolatility meaning the price volatility within the delivery period .\nyou should consult with pavel for the definition of this \" extra \"\nparameters . we\nwould like to see the position monitor once you get it running .\nwe might have some additional suggestions .\npaulo ,\nwhy don ' t we have a documentation on crudeapo you worked on ?\ni can not find it in exotica help file . please supply that to tai , thanks .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : tai woo / enron @ enronxgate on 05 / 02 / 2001 09 : 55 am\nto : paulo issler / hou / ect @ ect\ncc : kara maloney / enron @ enronxgate , zimin lu / hou / ect @ ect\nsubject : asian option for pavel\nthis morning , zimin told me that pavel is using a special model in evaluating\nhis asian option portfolio .\nhe asked me to talk to you in order to access to the code so that i can see\nthe difference made to the model .\nas i cannot find the doc . describing this model , please tell me what that new\ninput parameter ' sig ' is .\nthanks ,", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.629+0000", "entityId": 10782, "properties": {"text": "Subject: re :\ntani ,\nyes , i am aware of it .\nthanks for letting me know who\nis the hr rep in london .\nvince\ntani nath\n05 / 02 / 2001 09 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc : tara rozen / lon / ect @ ect\nsubject :\nvince ,\ni don ' t know if you are already aware of this , but maureen raymond has been taken ill and i understand has received medical advice that she should not travel before the end of next week at the earliest .\ntara is the appropriate hr representative in london ; i will ask her to keep both you and houston hr informed of the situation .\nmany thanks , tani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.634+0000", "entityId": 10783, "properties": {"text": "Subject: re :\ntani ,\nyes , i am aware of it .\nthanks for letting me know who\nis the hr rep in london .\nvince\ntani nath\n05 / 02 / 2001 09 : 01 am\nto : vince j kaminski / hou / ect @ ect\ncc : tara rozen / lon / ect @ ect\nsubject :\nvince ,\ni don ' t know if you are already aware of this , but maureen raymond has been\ntaken ill and i understand has received medical advice that she should not\ntravel before the end of next week at the earliest .\ntara is the appropriate hr representative in london ; i will ask her to keep\nboth you and houston hr informed of the situation .\nmany thanks , tani", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.639+0000", "entityId": 10784, "properties": {"text": "Subject: vp & director count for the research group\nhello deborah :\ni would like to introduce myself and anita dupont to you as we will probably\nbe working together quite a bit between now and our move . please feel\nfree to contact either one of us regarding any questions or needs you\nmay have .\nheadcount\nthe executive , vp and director headcount for the research group is :\nmanaging director 1\nvice presidents 6\ndirectors 5\nalso , anita and i would like to invite you to meet with us and go over our\nlibrary space requirements . please let me know when you have some\nfree time and we will be available .\nmy number is : 3 - 5290 - ebl 961\nanita ' s # is : 3 - 0329 - ebl 969\ni look forward to meeting you ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.644+0000", "entityId": 10785, "properties": {"text": "Subject: vp & director count for the research group\nhello deborah :\ni would like to introduce myself and anita dupont to you as we will probably\nbe working together quite a bit between now and our move . please feel\nfree to contact either one of us regarding any questions or needs you\nmay have .\nheadcount\nthe executive , vp and director headcount for the research group is :\nmanaging director 1\nvice presidents 6\ndirectors 5\nalso , anita and i would like to invite you to meet with us and go over our\nlibrary space requirements . please let me know when you have some\nfree time and we will be available .\nmy number is : 3 - 5290 - ebl 961\nanita ' s # is : 3 - 0329 - ebl 969\ni look forward to meeting you ,\nshirley crenshaw\nadministrative coordinator\nenron research group\n3 - 5290", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.648+0000", "entityId": 10786, "properties": {"text": "Subject: re : gwen koepke\nanne ,\nthanks for contacting me about this .\nas a matter of fact , i wanted to talk to you about it\ntoday as this matter was outstanding for a long time .\ni think we should go ahead and adjust gwen to manager ,\neffective march 1 . the compensation would be her current base plus\n10 k . this is what we typically do when we promote an associate to a manager .\nsuch promotions take place in march and i think\ngwen should not be penalized for the inefficiency of her management\n( i . e . my and maureen ' s procrastination ) .\non unrelated and more serious matter . gary hickerson is the primary client\nfor maureen ' s services . he communicated to me a few weeks ago that he is\nunwilling to underwrite maureen ' s position ( he is in general unhappy with\nher contribution ) . this means that maureen will have to find another sponsor or leave enron .\ngiven her abrasive and aggressive personality finding another internal customer\nwill be quite a challenge .\ngary volunteered to pay a very generous severance to maureen from his budget .\ni would like to talk to you about it when you have a few minutes .\nvince\nfrom : anne labbe / enron @ enronxgate on 05 / 02 / 2001 10 : 34 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : gwen koepke\nvince ,\njust wanted to touch base with you . i have tried to contact maureen so that gwen ' s title and salary can be adjusted to manager just as you requested , but have not heard any response from her . would you like for me to wait until i hear from maureen or should i go ahead and proceed in changing her title ? i just want to make sure that gwen is in the right peer group during prc .\nalso , i am going to try and set up a meeting with you next week through shirley to discuss any buring issues that you are experiencing , and your expectations during prc .\nthanks ,\nanne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.653+0000", "entityId": 10787, "properties": {"text": "Subject: moddeling support for dpc related issues\na quick update on the status of sandeep kohli .\nhe is working currently in my group . he is available on a very short notice to help you with\nany quantitative modeling that can be required in making decisions regarding\nour dpc strategy . in case you need his help , he can also rely on the support\nof other members of my group with skills in different areas .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.658+0000", "entityId": 10788, "properties": {"text": "Subject: moddeling support for dpc related issues\na quick update on the status of sandeep kohli .\nhe is working currently in my group . he is available on a very short notice\nto help you with\nany quantitative modeling that can be required in making decisions regarding\nour dpc strategy . in case you need his help , he can also rely on the support\nof other members of my group with skills in different areas .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.663+0000", "entityId": 10789, "properties": {"text": "Subject: internship opportunities\ndear mr . kaminski ,\ni have found the enrononline project a very interesting one and have enjoyed\nworking with everyone in the research department as well as those from other\ndepartments . i am keenly interested in this area and was wondering if there\nwould be any summer internship opportunities . i have attached my resume to\nthis mail for your review and look forward to hearing from you soon .\nthank you\nivy ghose\nrice mba 2002\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.668+0000", "entityId": 10790, "properties": {"text": "Subject: re : message from ken rice\nvince :\nthanks for returning this call . i guess it helps if i provide the contact\ninformation !\ntom limperis\n517 - 423 - 5617\nthanks !\ndorothy dalton\noffice of the chairman\nenron broadband services\n1400 smith street , eb 4505\nhouston , tx 77002\n713 - 853 - 6724 - direct\n713 - 853 - 9469 - fax\nvince j kaminski @ ect\n05 / 02 / 01 09 : 42 am\nto : dorothy dalton / enron communications @ enron communications @ enron\ncc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate\nsubject : re : message from ken rice\ndorothy ,\nno problem . please , cc - mail me\ntom ' s number . one of the members of the group has a phd in\ncomputer science and he will join me for the call .\nvince\nfrom : dorothy dalton @ enron communications on 05 / 01 / 2001 08 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : message from ken rice\nvince :\nken rice received a call through a friend ' s referral from dr . tom limperis ( a\nprofessor at the university of michigan ) . dr . limperis has developed a\nstatistical database management system he would like to show enron . ken\nwould like you to return this call on his behalf . he feels that you are\nprobably the only person who will understand and be able to determine if\nenron should have an interest .\ndo you mind returning this call ? please let me know .\nthanks !\ndorothy dalton\noffice of the chairman\nenron broadband services\n1400 smith street , eb 4505\nhouston , tx 77002\n713 - 853 - 6724 - direct\n713 - 853 - 9469 - fax", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.673+0000", "entityId": 10791, "properties": {"text": "Subject: internship opportunities\nplease respond to dear mr . kaminski ,\ni have found the enrononline project a very interesting one and have enjoyed\nworking with everyone in the research department as well as those from other\ndepartments . i am keenly interested in this area and was wondering if there\nwould be any summer internship opportunities . i have attached my resume to\nthis mail for your review and look forward to hearing from you soon .\nthank you\nivy ghose\nrice mba 2002\n- resume . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.678+0000", "entityId": 10792, "properties": {"text": "Subject: re : message from ken rice\nvince :\nthanks for returning this call . i guess it helps if i provide the contact information !\ntom limperis\n517 - 423 - 5617\nthanks !\ndorothy dalton\noffice of the chairman\nenron broadband services\n1400 smith street , eb 4505\nhouston , tx 77002\n713 - 853 - 6724 - direct\n713 - 853 - 9469 - fax\nvince j kaminski @ ect 05 / 02 / 01 09 : 42 am to : dorothy dalton / enron communications @ enron communications @ enron cc : vince j kaminski / hou / ect @ ect , vasant shanbhogue / enron @ enronxgate subject : re : message from ken rice\ndorothy ,\nno problem . please , cc - mail me\ntom ' s number . one of the members of the group has a phd in\ncomputer science and he will join me for the call .\nvince\nfrom : dorothy dalton @ enron communications on 05 / 01 / 2001 08 : 53 am\nto : vince j kaminski / hou / ect @ ect\ncc :\nsubject : message from ken rice\nvince :\nken rice received a call through a friend ' s referral from dr . tom limperis ( a professor at the university of michigan ) . dr . limperis has developed a statistical database management system he would like to show enron . ken would like you to return this call on his behalf . he feels that you are probably the only person who will understand and be able to determine if enron should have an interest .\ndo you mind returning this call ? please let me know .\nthanks !\ndorothy dalton\noffice of the chairman\nenron broadband services\n1400 smith street , eb 4505\nhouston , tx 77002\n713 - 853 - 6724 - direct\n713 - 853 - 9469 - fax\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.683+0000", "entityId": 10793, "properties": {"text": "Subject: re : grades\nthank you ! - pvc\nat 09 : 19 am 5 / 3 / 01 - 0500 , you wrote :\n> pam ,\n>\n> another group :\n>\n> stuart hamel\n> jed howard\n> brian nelson\n>\n>\n>\n> b +\n>\n>\n>\n> vince\n>\n>\n>\n>\n>\n> pamela vande krol castro on 05 / 03 / 2001 08 : 58 : 24 am\n>\n> to : vince . j . kaminski @ enron . com\n> cc :\n> subject : re : grades\n>\n>\n> got them - thank you ! - pvc\n>\n> at 05 : 21 pm 5 / 2 / 01 - 0500 , you wrote :\n> > pam ,\n> >\n> > another team :\n> >\n> > elena chilkina\n> > robert j . guadette\n> > joseph helms\n> > kenneth jett\n> > todd litton\n> > mark westmoreland\n> >\n> >\n> > grade : a -\n> >\n> >\n> > vince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.690+0000", "entityId": 10794, "properties": {"text": "Subject: re : grades\npam ,\nanother group :\nstuart hamel\njed howard\nbrian nelson\nb +\nvince\npamela vande krol castro on 05 / 03 / 2001 08 : 58 : 24 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : grades\ngot them - thank you ! - pvc\nat 05 : 21 pm 5 / 2 / 01 - 0500 , you wrote :\n> pam ,\n>\n> another team :\n>\n> elena chilkina\n> robert j . guadette\n> joseph helms\n> kenneth jett\n> todd litton\n> mark westmoreland\n>\n>\n> grade : a -\n>\n>\n> vince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.699+0000", "entityId": 10795, "properties": {"text": "Subject: invitations to presentation only\nhi christie ,\nwhen do you sleep ? 2 am , ugh !\nok , you were correct , my invitation was to those people within enron that\nthe students talked with before interviewing competitors , and it was an\ninvitation to the presentation only . i didn ' t think any of them would be\ninvited to the dinner , and probably none will even come to the presentation .\nthe invitation did elicit one request for the final report though , so maybe\nit wasn ' t a complete waste .\ni didn ' t realize that the dinner had turned into a box visit . that sounds\ngreat . i wish the group could have made it to dinner before the first game ,\nthat would have made the whole slumming experience better . now they ' ll get\nthe royal treatment at enron field . it ' ll be great .\nvince invited 4 people from rice :\ndennis w . loughridge , director of energy consortium ; lounghrid @ rice . edu\ncarrie miller , director of mba program ; cmiller @ rice . edu\ndeborah barrett , inst . communications , barrett @ rice . edu\ndr . wil uecker , associate dean for executive education , uecker @ rice . edu\nloughridge wrote back saying he ' ll come , i don ' t know about the others\nhere are the 6 students emails :\n\" ritwik \\ ( ronnie \\ ) ghosh \" , \" ivy ghose \" ,\n\" luigi calabrese \" , \" pravas sud \" , \" syed\n\\ ( farhan \\ ) iqbal \"\nyour 2 from rice makes a total of 12 from rice , i guess\nlet me know if you would like me to do anything else related to monday\nlook forward to seeing you then\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.707+0000", "entityId": 10796, "properties": {"text": "Subject: re : grades\npam ,\nanother group :\nstuart hamel\njed howard\nbrian nelson\nb +\nvince\npamela vande krol castro on 05 / 03 / 2001 08 : 58 : 24 am\nto : vince . j . kaminski @ enron . com\ncc :\nsubject : re : grades\ngot them - thank you ! - pvc\nat 05 : 21 pm 5 / 2 / 01 - 0500 , you wrote :\n> pam ,\n>\n> another team :\n>\n> elena chilkina\n> robert j . guadette\n> joseph helms\n> kenneth jett\n> todd litton\n> mark westmoreland\n>\n>\n> grade : a -\n>\n>\n> vince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.712+0000", "entityId": 10797, "properties": {"text": "Subject: re : grades\ngot them - thank you ! - pvc\nat 05 : 21 pm 5 / 2 / 01 - 0500 , you wrote :\n> pam ,\n>\n> another team :\n>\n> elena chilkina\n> robert j . guadette\n> joseph helms\n> kenneth jett\n> todd litton\n> mark westmoreland\n>\n>\n> grade : a -\n>\n>\n> vince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.716+0000", "entityId": 10798, "properties": {"text": "Subject: invitations to presentation only\nhi christie ,\nwhen do you sleep ? 2 am , ugh !\nok , you were correct , my invitation was to those people within enron that the students talked with before interviewing competitors , and it was an invitation to the presentation only . i didn ' t think any of them would be invited to the dinner , and probably none will even come to the presentation . the invitation did elicit one request for the final report though , so maybe it wasn ' t a complete waste .\ni didn ' t realize that the dinner had turned into a box visit . that sounds great . i wish the group could have made it to dinner before the first game , that would have made the whole slumming experience better . now they ' ll get the royal treatment at enron field . it ' ll be great .\nvince invited 4 people from rice :\ndennis w . loughridge , director of energy consortium ; lounghrid @ rice . edu\ncarrie miller , director of mba program ; cmiller @ rice . edu\ndeborah barrett , inst . communications , barrett @ rice . edu\ndr . wil uecker , associate dean for executive education , uecker @ rice . edu\nloughridge wrote back saying he ' ll come , i don ' t know about the others\nhere are the 6 students emails :\n\" ritwik \\ ( ronnie \\ ) ghosh \" , \" ivy ghose \" , \" luigi calabrese \" , \" pravas sud \" , \" syed \\ ( farhan \\ ) iqbal \"\nyour 2 from rice makes a total of 12 from rice , i guess\nlet me know if you would like me to do anything else related to monday\nlook forward to seeing you then\nken", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.721+0000", "entityId": 10799, "properties": {"text": "Subject: high frequency market data analysis\nstinson ,\nwe are going to update you and vince the progress of the eol george project . friday , 9 : 30 am - 10 : 00 am in eb 1938 .\nbob ,\nwe may get some other ideas from the following book , take a look to see if it is worth to buy one .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrisk executive reports\nhigh - frequency financial market data sources , applications and market microstructure by dr owain ap gwilym and professor charles sutcliffe , school of management , university of southampton , uk a high - quality , non - technical resource on an increasingly invaluable topic for all users of high - frequency data . 10 sections cover the many aspects of high - frequency data by covering a broad set of information ranging from data suppliers to detailed research angles topics covered include : managing hfd ; arbitrage opportunities ; intra - day seasonalities ; regulation ; market efficiency and market making . format price report ? 175 / us $ 280 a 4 , 162 pp published : august 1999 review | table of contents | order now in ? | order now in $ for other titles of interest please click here : risk executive reports send this page to a colleaguehigh - frequency financial market datacontentsl . introduction and overview overview and background the motivation and demand for high - frequency data the uses of high - frequency data structure of this report 2 . sources and types of high - frequency data types of data data supplied by exchanges panel 2 . 1 ( by paul macgregor , liffe ) - the sourcing and preparation of liffe tick data specialist data providers real - time data providers summary 3 . managing and exploiting high - frequency data panel 3 . 1 - illustrative high - frequency data data storage , filtering and cleaning the treatment of time panel 3 . 2 - olsen filtering system constructing continuous series key considerations in manipulating high - frequency data modelling issues summary of chapter 4 . arbitrage opportunities in equity markets what is arbitrage ? empirical studies of arbitrage opportunities arbitrage in equity markets individual arbitrage trades 5 . intra - day seasonalities intra - day patterns in returns intra - day patterns in volume intra - day patterns in volatility intra - day patterns in the bid - ask spread intra - day patterns in the autocorrelation of returns intra - day patterns in hedge ratios other intra - day patterns effects of news announcements on intra - day patterns the turn - of - the - year effect and high - frequency data conclusions 6 . links between markets leads and lags in prices between different types of market based on the same asset the 1987 stock market crash leads and lags in price volatility links between geographically separated markets rival markets 7 . destabilisation of markets relative volatility programme trading and volatility price movements at expiration conclusions 8 . regulations governing the markets regulation of dual capacity circuit breakers restrictions on short selling taxes on transactions tick size and price clustering delayed publication of trades conclusions 9 . market efficiency weak - form efficiency semi - strong - form efficiency conclusionsl 0 . market makingrevision of prices other aspects of financial markets determinants of the bid - ask spread block trades conclusionsl 1 . conclusion and future developments references", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.727+0000", "entityId": 10800, "properties": {"text": "Subject: high frequency market data analysis\nstinson ,\nwe are going to update you and vince the progress of the eol george project .\nfriday , 9 : 30 am - 10 : 00 am in eb 1938 .\nbob ,\nwe may get some other ideas from the following book , take a look to see if it\nis worth to buy one .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nrisk executive reports ? ?\n? high - frequency financial market data\nsources , applications and market microstructure\nby dr owain ap gwilym and professor charles sutcliffe , school of management ,\nuniversity of southampton , uk\na high - quality , non - technical resource on an increasingly invaluable topic\nfor all users of high - frequency data .\n10 sections cover the many aspects of high - frequency data by covering a broad\nset of information ranging from data suppliers to detailed research angles\ntopics covered include : managing hfd ; arbitrage opportunities ; intra - day\nseasonalities ; regulation ; market efficiency and market making .\nformat\nprice\nreport\nol 75 / us $ 280\na 4 , 162 pp\npublished : august 1999\nreview | table of contents | order now in o | order now in $\nfor other titles of interest please click here :\nrisk executive reports\nsend this page to a colleague\nhigh - frequency financial market data\ncontents\n1 . introduction and overview\noverview and background\nthe motivation and demand for high - frequency data\nthe uses of high - frequency data\nstructure of this report\n2 . sources and types of high - frequency data\ntypes of data\ndata supplied by exchanges\npanel 2 . 1 ( by paul macgregor , liffe ) - the sourcing and preparation of liffe\ntick data\nspecialist data providers\nreal - time data providers\nsummary\n3 . managing and exploiting high - frequency data\npanel 3 . 1 - illustrative high - frequency data\ndata storage , filtering and cleaning\nthe treatment of time\npanel 3 . 2 - olsen filtering system\nconstructing continuous series\nkey considerations in manipulating high - frequency data\nmodelling issues\nsummary of chapter\n4 . arbitrage opportunities in equity markets\nwhat is arbitrage ?\nempirical studies of arbitrage opportunities\narbitrage in equity markets\nindividual arbitrage trades\n5 . intra - day seasonalities\nintra - day patterns in returns\nintra - day patterns in volume\nintra - day patterns in volatility\nintra - day patterns in the bid - ask spread\nintra - day patterns in the autocorrelation of returns\nintra - day patterns in hedge ratios\nother intra - day patterns\neffects of news announcements on intra - day patterns\nthe turn - of - the - year effect and high - frequency data\nconclusions\n6 . links between markets\nleads and lags in prices between different types of market based on the same\nasset\nthe 1987 stock market crash\nleads and lags in price volatility\nlinks between geographically separated markets\nrival markets\n7 . destabilisation of markets\nrelative volatility\nprogramme trading and volatility\nprice movements at expiration\nconclusions\n8 . regulations governing the markets\nregulation of dual capacity\ncircuit breakers\nrestrictions on short selling\ntaxes on transactions\ntick size and price clustering\ndelayed publication of trades\nconclusions\n9 . market efficiency\nweak - form efficiency\nsemi - strong - form efficiency\nconclusions\n10 . market makingrevision of prices\nother aspects of financial markets\ndeterminants of the bid - ask spread\nblock trades\nconclusions\n11 . conclusion and future developments\nreferences\n? ? ?", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.732+0000", "entityId": 10801, "properties": {"text": "Subject: risk desk , issue # 1\nhello - - listen , wanted to make sure you received a copy of our newest publication last week , the risk desk . because of the size of the files we sent out , quite a few bounced back because some corp firewalls halt emails over a certain size . anyhow , if you didn ' t receive the issue , hit the reply button and type \" resend risk desk . \" responce so far has been great for those of you that received the free copy - - we think you ' ll agree that it ' s soon to become the leading \" must read \" publication on market , credit , price and operational risk management in the energy space .\nalso , just a reminder , the charter price for a one year subscription ( $ 199 ) ends soon . let us know .\njohn sodergreen\neditor - in - chief\nscudder publishing group , llc\nph : 410 / 923 - 0688\nfax : 410 / 923 - 0667\njohns @ scudderpublishing . com\nthe desk , the risk desk , power executive\nthe bandwidth desk , energy ebusiness", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.738+0000", "entityId": 10802, "properties": {"text": "Subject: risk desk , issue # 1\nhello - - listen , wanted to make sure you received a copy of our newest\npublication last week , the risk desk . because of the size of the files we\nsent out , quite a few bounced back because some corp firewalls halt emails\nover a certain size . anyhow , if you didn ' t receive the issue , hit the reply\nbutton and type \" resend risk desk . \" responce so far has been great for those\nof you that received the free copy - - we think you ' ll agree that it ' s soon to\nbecome the leading \" must read \" publication on market , credit , price and\noperational risk management in the energy space .\nalso , just a reminder , the charter price for a one year subscription ( $ 199 )\nends soon . let us know .\njohn sodergreen\neditor - in - chief\nscudder publishing group , llc\nph : 410 / 923 - 0688\nfax : 410 / 923 - 0667\njohns @ scudderpublishing . com\nthe desk , the risk desk , power executive\nthe bandwidth desk , energy ebusiness", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.743+0000", "entityId": 10803, "properties": {"text": "Subject: re : 2 - survey / information email 5 - 7 - 01\noutlook migration team @ enron\n05 / 04 / 2001 03 : 26 pm\nto : alex huang / corp / enron @ enron , amitava dhar / corp / enron @ enron , anita dupont / na / enron @ enron , bob lee / na / enron @ enron , chonawee supatgiat / corp / enron @ enron , elena chilkina / corp / enron @ enron , gwyn koepke / na / enron @ enron , jaesoo lew / na / enron @ enron , jason sokolov / hou / ect @ ect , jose marquez / corp / enron @ enron , kate lucas / hou / ect @ ect , kenneth parkhill / na / enron @ enron , kevin g moore / hou / ect @ ect , lance cunningham / na / enron @ enron , leann walton / na / enron @ enron , martin lin / hou / ect @ ect , maureen raymond / lon / ect @ ect , mike a roberts / hou / ect @ ect , nelson neale / na / enron @ enron , paulo issler / hou / ect @ ect , pinnamaneni krishnarao / hou / ect @ ect , rabi de / na / enron @ enron , rakesh bharati / na / enron @ enron , sandeep kohli / enron _ development @ enron _ development , sevil yaman / corp / enron @ enron , shirley crenshaw / hou / ect @ ect , sofya tamarchenko / na / enron @ enron , stinson gibner / hou / ect @ ect , tanya tamarchenko / hou / ect @ ect , tom barkley / na / enron @ enron , tom halliburton / corp / enron @ enron , vince j kaminski / hou / ect @ ect , william smith / corp / enron @ enron , youyi feng / na / enron @ enron , zimin lu / hou / ect @ ect , alan muntz / npng / enron @ enron , anita swanson / npng / enron @ enron , bambi heckerman / npng / enron @ enron , christopher burns / npng / enron @ enron , darla steffes / npng / enron @ enron , geneva patterson / npng / enron @ enron , jerry boston / npng / enron @ enron , jody warner / npng / enron @ enron , john freeman / npng / enron @ enron , judith weakly / npng / enron @ enron , laurie willemyns / npng / enron @ enron , leon schneider / npng / enron @ enron , loren charbonneau / npng / enron @ enron , ray neppl / npng / enron @ enron , scott coburn / npng / enron @ enron , alliece morris / ots / enron @ enron , etsweb @ enron , joe zhou / fgt / enron @ enron , ladonna dervin / ots / enron @ enron , larry hill / fgt / enron @ enron , max brown / ots / enron @ enron , patty hermanek / fgt / enron @ enron , peter lu / et & s / enron @ enron , randy cantrell / gco / enron @ enron , richard abramowicz / et & s / enron @ enron , rick craig / ots / enron @ enron , robert fugel / et & s / enron @ enron , tina dunnaway / fgt / enron @ enron , wendy koh / et & s / enron @ enron , anne bike / corp / enron @ enron , barry tycholiz / na / enron @ enron , carli smith / na / enron @ enron , doug fletcher / enron _ development @ enron _ development , jacquelyn matthews / na / enron @ enron , janelle russell / enron _ development @ enron _ development , joanne smith / corp / enron @ enron , kayla bruzzese / na / enron @ enron , michael j beyer / hou / ect @ ect , michael j miller / enron communications @ enron communications , michelle lincoln / enron _ development @ enron _ development , shelly jones / hou / ect @ ect , susan huston / hr / corp / enron @ enron , zachary sampson / na / enron @ enron , alison smith / nyc / mgusa @ mgusa , bernie penner / nyc / mgusa @ mgusa , janet vala - terry / nyc / mgusa @ mgusa , lilia penagos / nyc / mgusa @ mgusa , patricia benington / nyc / mgusa @ mgusa , jack netek / enron communications @ enron communications\ncc :\nsubject : 2 - survey / information email 5 - 7 - 01\ncurrent notes user :\nto ensure that you experience a successful migration from notes to outlook , it is necessary to gather individual user information prior to your date of migration . please take a few minutes to completely fill out the following survey . when you finish , simply click on the ' reply ' button then hit ' send ' your survey will automatically be sent to the outlook 2000 migration mailbox .\nthank you .\noutlook 2000 migration team\nfull name : vince j kaminski\nlogin id : vkamins\nextension : 3 - 3848\noffice location : ebl 962\nwhat type of computer do you have ? ( desktop , laptop , both ) desktop , laptop\ndo you have a pda ? if yes , what type do you have : ( none , ipaq , palm pilot , jornada ) palm pilot\ndo you have permission to access anyone ' s email / calendar ? no\nif yes , who ?\ndoes anyone have permission to access your email / calendar ? shirley crenshaw , anita dupont\nif yes , who ?\nare you responsible for updating anyone else ' s address book ? no\nif yes , who ?\nis anyone else responsible for updating your address book ? no\nif yes , who ?\ndo you have access to a shared calendar ? no\nif yes , which shared calendar ?\ndo you have any distribution groups that messaging maintains for you ( for mass mailings ) ? no\nif yes , please list here :\nplease list all notes databases applications that you currently use :\nin our efforts to plan the exact date / time of your migration , we also will need to know :\nwhat are your normal work hours ? from : 7 : 30 to : 6 : 30\nwill you be out of the office in the near future for vacation , leave , etc ? no\nif so , when ? from ( mm / dd / yy ) : to ( mm / dd / yy ) :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.748+0000", "entityId": 10804, "properties": {"text": "Subject: 4 - urgent - owa please print this now .\ncurrent notes user :\nreasons for using outlook web access ( owa )\n1 . once your mailbox has been migrated from notes to outlook , the outlook client will be configured on your computer .\nafter migration of your mailbox , you will not be able to send or recieve mail via notes , and you will not be able to start using outlook until it is configured by the outlook migration team the morning after your mailbox is migrated . during this period , you can use outlook web access ( owa ) via your web browser ( internet explorer 5 . 0 ) to read and send mail .\nplease note : your calendar entries , personal address book , journals , and to - do entries imported from notes will not be available until the outlook client is configured on your desktop .\n2 . remote access to your mailbox .\nafter your outlook client is configured , you can use outlook web access ( owa ) for remote access to your mailbox .\nplease note : at this time , the owa client is only accessible while connecting to the enron network ( lan ) . there are future plans to make owa available from your home or when traveling abroad .\nhow to access outlook web access ( owa )\nlaunch internet explorer 5 . 0 , and in the address window type : http : / / nahou - msowaolp / exchange / john . doe\nsubstitute \" john . doe \" with your first and last name , then click enter . you will be prompted with a sign in box as shown below . type in \" corp / your user id \" for the user name and your nt password to logon to owa and click ok . you will now be able to view your mailbox .\nplease note : there are some subtle differences in the functionality between the outlook and owa clients . you will not be able to do many of the things in owa that you can do in outlook . below is a brief list of * some * of the functions not available via owa :\nfeatures not available using owa :\n- tasks\n- journal\n- spell checker\n- offline use\n- printing templates\n- reminders\n- timed delivery\n- expiration\n- outlook rules\n- voting , message flags and message recall\n- sharing contacts with others\n- task delegation\n- direct resource booking\n- personal distribution lists\nquestions or concerns ?\nif you have questions or concerns using the owa client , please contact the outlook 2000 question and answer mailbox at :\noutlook . 2000 @ enron . com\notherwise , you may contact the resolution center at :\n713 - 853 - 1411\nthank you ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.753+0000", "entityId": 10805, "properties": {"text": "Subject: 3 - urgent - to prevent loss of information\ncritical migration information :\n1 . your scheduled outlook migration date is the evening of : may 7 th\n2 . you need to press the \" save my data \" button ( only once ) to send us your pre - migration information .\n3 . you must be connected to the network before you press the button .\n4 . if a pop - up box appears , prompting you to \" abort , cancel or trust signer \" please select trust signer .\n5 . any information you add to your personal address book , journal or calendar after you click on the button will need to be manually re - added into outlook after you have been migrated .\n6 . clicking this button does not complete your migration to outlook . your migration will be completed the evening of your migration date .\nfailure to click on the button means you will not get your calendar , contacts , journal and todo information imported into outlook the day of your migration and could result in up to a 2 week delay to restore this information .\nif you encounter any errors please contact the resolution center @ 713 - 853 - 1411", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.757+0000", "entityId": 10806, "properties": {"text": "Subject: re : 2 - survey / information email 5 - 7 - 01\noutlook migration team @ enron\n05 / 04 / 2001 03 : 26 pm\nto : alex huang / corp / enron @ enron , amitava dhar / corp / enron @ enron , anita\ndupont / na / enron @ enron , bob lee / na / enron @ enron , chonawee\nsupatgiat / corp / enron @ enron , elena chilkina / corp / enron @ enron , gwyn\nkoepke / na / enron @ enron , jaesoo lew / na / enron @ enron , jason sokolov / hou / ect @ ect ,\njose marquez / corp / enron @ enron , kate lucas / hou / ect @ ect , kenneth\nparkhill / na / enron @ enron , kevin g moore / hou / ect @ ect , lance\ncunningham / na / enron @ enron , leann walton / na / enron @ enron , martin\nlin / hou / ect @ ect , maureen raymond / lon / ect @ ect , mike a roberts / hou / ect @ ect ,\nnelson neale / na / enron @ enron , paulo issler / hou / ect @ ect , pinnamaneni\nkrishnarao / hou / ect @ ect , rabi de / na / enron @ enron , rakesh\nbharati / na / enron @ enron , sandeep kohli / enron _ development @ enron _ development ,\nsevil yaman / corp / enron @ enron , shirley crenshaw / hou / ect @ ect , sofya\ntamarchenko / na / enron @ enron , stinson gibner / hou / ect @ ect , tanya\ntamarchenko / hou / ect @ ect , tom barkley / na / enron @ enron , tom\nhalliburton / corp / enron @ enron , vince j kaminski / hou / ect @ ect , william\nsmith / corp / enron @ enron , youyi feng / na / enron @ enron , zimin lu / hou / ect @ ect , alan\nmuntz / npng / enron @ enron , anita swanson / npng / enron @ enron , bambi\nheckerman / npng / enron @ enron , christopher burns / npng / enron @ enron , darla\nsteffes / npng / enron @ enron , geneva patterson / npng / enron @ enron , jerry\nboston / npng / enron @ enron , jody warner / npng / enron @ enron , john\nfreeman / npng / enron @ enron , judith weakly / npng / enron @ enron , laurie\nwillemyns / npng / enron @ enron , leon schneider / npng / enron @ enron , loren\ncharbonneau / npng / enron @ enron , ray neppl / npng / enron @ enron , scott\ncoburn / npng / enron @ enron , alliece morris / ots / enron @ enron , etsweb @ enron , joe\nzhou / fgt / enron @ enron , ladonna dervin / ots / enron @ enron , larry\nhill / fgt / enron @ enron , max brown / ots / enron @ enron , patty\nhermanek / fgt / enron @ enron , peter lu / et & s / enron @ enron , randy\ncantrell / gco / enron @ enron , richard abramowicz / et & s / enron @ enron , rick\ncraig / ots / enron @ enron , robert fugel / et & s / enron @ enron , tina\ndunnaway / fgt / enron @ enron , wendy koh / et & s / enron @ enron , anne\nbike / corp / enron @ enron , barry tycholiz / na / enron @ enron , carli\nsmith / na / enron @ enron , doug fletcher / enron _ development @ enron _ development ,\njacquelyn matthews / na / enron @ enron , janelle\nrussell / enron _ development @ enron _ development , joanne smith / corp / enron @ enron ,\nkayla bruzzese / na / enron @ enron , michael j beyer / hou / ect @ ect , michael j\nmiller / enron communications @ enron communications , michelle\nlincoln / enron _ development @ enron _ development , shelly jones / hou / ect @ ect , susan\nhuston / hr / corp / enron @ enron , zachary sampson / na / enron @ enron , alison\nsmith / nyc / mgusa @ mgusa , bernie penner / nyc / mgusa @ mgusa , janet\nvala - terry / nyc / mgusa @ mgusa , lilia penagos / nyc / mgusa @ mgusa , patricia\nbenington / nyc / mgusa @ mgusa , jack netek / enron communications @ enron\ncommunications\ncc :\nsubject : 2 - survey / information email 5 - 7 - 01\ncurrent notes user :\nto ensure that you experience a successful migration from notes to outlook ,\nit is necessary to gather individual user information prior to your date of\nmigration . please take a few minutes to completely fill out the following\nsurvey . when you finish , simply click on the ' reply ' button then hit ' send '\nyour survey will automatically be sent to the outlook 2000 migration mailbox .\nthank you .\noutlook 2000 migration team\nfull name : vince j kaminski\nlogin id : vkamins\nextension : 3 - 3848\noffice location : ebl 962\nwhat type of computer do you have ? ( desktop , laptop , both ) desktop , laptop\ndo you have a pda ? if yes , what type do you have : ( none , ipaq , palm pilot ,\njornada ) palm pilot\ndo you have permission to access anyone ' s email / calendar ? no\nif yes , who ?\ndoes anyone have permission to access your email / calendar ? shirley crenshaw ,\nanita dupont\nif yes , who ?\nare you responsible for updating anyone else ' s address book ? no\nif yes , who ?\nis anyone else responsible for updating your address book ? no\nif yes , who ?\ndo you have access to a shared calendar ? no\nif yes , which shared calendar ?\ndo you have any distribution groups that messaging maintains for you ( for\nmass mailings ) ? no\nif yes , please list here :\nplease list all notes databases applications that you currently use :\nin our efforts to plan the exact date / time of your migration , we also will\nneed to know :\nwhat are your normal work hours ? from : 7 : 30 to : 6 : 30\nwill you be out of the office in the near future for vacation , leave , etc ? no\nif so , when ? from ( mm / dd / yy ) : to ( mm / dd / yy ) :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.762+0000", "entityId": 10807, "properties": {"text": "Subject: 4 - urgent - owa please print this now .\ncurrent notes user :\nreasons for using outlook web access ( owa )\n1 . once your mailbox has been migrated from notes to outlook , the outlook\nclient will be configured on your computer .\nafter migration of your mailbox , you will not be able to send or recieve mail\nvia notes , and you will not be able to start using outlook until it is\nconfigured by the outlook migration team the morning after your mailbox is\nmigrated . during this period , you can use outlook web access ( owa ) via your\nweb browser ( internet explorer 5 . 0 ) to read and send mail .\nplease note : your calendar entries , personal address book , journals , and\nto - do entries imported from notes will not be available until the outlook\nclient is configured on your desktop .\n2 . remote access to your mailbox .\nafter your outlook client is configured , you can use outlook web access ( owa )\nfor remote access to your mailbox .\nplease note : at this time , the owa client is only accessible while\nconnecting to the enron network ( lan ) . there are future plans to make owa\navailable from your home or when traveling abroad .\nhow to access outlook web access ( owa )\nlaunch internet explorer 5 . 0 , and in the address window type :\nhttp : / / nahou - msowaolp / exchange / john . doe\nsubstitute \" john . doe \" with your first and last name , then click enter . you\nwill be prompted with a sign in box as shown below . type in \" corp / your user\nid \" for the user name and your nt password to logon to owa and click ok . you\nwill now be able to view your mailbox .\nplease note : there are some subtle differences in the functionality between\nthe outlook and owa clients . you will not be able to do many of the things\nin owa that you can do in outlook . below is a brief list of * some * of the\nfunctions not available via owa :\nfeatures not available using owa :\n- tasks\n- journal\n- spell checker\n- offline use\n- printing templates\n- reminders\n- timed delivery\n- expiration\n- outlook rules\n- voting , message flags and message recall\n- sharing contacts with others\n- task delegation\n- direct resource booking\n- personal distribution lists\nquestions or concerns ?\nif you have questions or concerns using the owa client , please contact the\noutlook 2000 question and answer mailbox at :\noutlook . 2000 @ enron . com\notherwise , you may contact the resolution center at :\n713 - 853 - 1411\nthank you ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.766+0000", "entityId": 10808, "properties": {"text": "Subject: 3 - urgent - to prevent loss of information\ncritical migration information :\n1 . your scheduled outlook migration date is the evening of : may 7 th\n2 . you need to press the \" save my data \" button ( only once ) to send us your\npre - migration information .\n3 . you must be connected to the network before you press the button .\n4 . if a pop - up box appears , prompting you to \" abort , cancel or trust signer \"\nplease select trust signer .\n5 . any information you add to your personal address book , journal or calendar\nafter you click on the button will need to be manually re - added into outlook\nafter you have been migrated .\n6 . clicking this button does not complete your migration to outlook . your\nmigration will be completed the evening of your migration date .\nfailure to click on the button means you will not get your calendar ,\ncontacts , journal and todo information imported into outlook the day of your\nmigration and could result in up to a 2 week delay to restore this\ninformation .\nif you encounter any errors please contact the resolution center @\n713 - 853 - 1411", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.771+0000", "entityId": 10809, "properties": {"text": "Subject: 2 - survey / information email 5 - 7 - 01\ncurrent notes user :\nto ensure that you experience a successful migration from notes to outlook ,\nit is necessary to gather individual user information prior to your date of\nmigration . please take a few minutes to completely fill out the following\nsurvey . when you finish , simply click on the ' reply ' button then hit ' send '\nyour survey will automatically be sent to the outlook 2000 migration mailbox .\nthank you .\noutlook 2000 migration team\nfull name :\nlogin id :\nextension :\noffice location :\nwhat type of computer do you have ? ( desktop , laptop , both )\ndo you have a pda ? if yes , what type do you have : ( none , ipaq , palm pilot ,\njornada )\ndo you have permission to access anyone ' s email / calendar ?\nif yes , who ?\ndoes anyone have permission to access your email / calendar ?\nif yes , who ?\nare you responsible for updating anyone else ' s address book ?\nif yes , who ?\nis anyone else responsible for updating your address book ?\nif yes , who ?\ndo you have access to a shared calendar ?\nif yes , which shared calendar ?\ndo you have any distribution groups that messaging maintains for you ( for\nmass mailings ) ?\nif yes , please list here :\nplease list all notes databases applications that you currently use :\nin our efforts to plan the exact date / time of your migration , we also will\nneed to know :\nwhat are your normal work hours ? from : to :\nwill you be out of the office in the near future for vacation , leave , etc ?\nif so , when ? from ( mm / dd / yy ) : to ( mm / dd / yy ) :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.776+0000", "entityId": 10810, "properties": {"text": "Subject: 1 - urgent - outlook email notification ( new )\noutlook email notification\nyour date of migration is : may 7 th\nyou will be unable to send e - mail unless you take the following action :\nplease go through your notes email and clean out as many old / un - needed email\nitems as possible before your date of migration . ? after you are migrated to\noutlook you will only be allocated 100 mb of total mailbox space . ? ? if more\nthan this amount of data is migrated to outlook you will not be able to send\ne - mail until it is below the 100 mb limit . ? cleaning up your notes email now\nwill prevent this from happening to you .\nenron \u0001 , s messaging platform is migrating from lotus notes to microsoft outlook\n2000 worldwide . you will be accessing outlook for all of your email\nfunctions .\nwhy is enron migrating to outlook 2000 ?\nmany factors contributed to the decision to migrate from lotus notes to\nmicrosoft exchange / outlook . the most prominent factors were :\n? significant advantages to moving to a product that is more integrated with\ncurrent enron apps ( windows 2000 , office and internet explorer )\n? more efficient shared pc and roaming user features\n? improved support and integration for palm / ce devices\n? instant messaging capabilities\nwhat is being migrated to outlook 2000 ?\n? email messages . from the date of your scheduled migration , the last ( 30 )\nthirty days of your email will be converted for use in outlook .\n? all your folders in notes you use to store email messages in .\n? to do items\n? journal items\n? calendar entries dating from ( 1 ) one year in the past to ( 10 ) ten years in\nthe future will be converted .\n? address books , but not your distribution lists that you created . you will\nneed to re - create these in outlook .\nthank you ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.781+0000", "entityId": 10811, "properties": {"text": "Subject: 2 - survey / information email 5 - 7 - 01\ncurrent notes user :\nto ensure that you experience a successful migration from notes to outlook , it is necessary to gather individual user information prior to your date of migration . please take a few minutes to completely fill out the following survey . when you finish , simply click on the ' reply ' button then hit ' send ' your survey will automatically be sent to the outlook 2000 migration mailbox .\nthank you .\noutlook 2000 migration team\nfull name :\nlogin id :\nextension :\noffice location :\nwhat type of computer do you have ? ( desktop , laptop , both )\ndo you have a pda ? if yes , what type do you have : ( none , ipaq , palm pilot , jornada )\ndo you have permission to access anyone ' s email / calendar ?\nif yes , who ?\ndoes anyone have permission to access your email / calendar ?\nif yes , who ?\nare you responsible for updating anyone else ' s address book ?\nif yes , who ?\nis anyone else responsible for updating your address book ?\nif yes , who ?\ndo you have access to a shared calendar ?\nif yes , which shared calendar ?\ndo you have any distribution groups that messaging maintains for you ( for mass mailings ) ?\nif yes , please list here :\nplease list all notes databases applications that you currently use :\nin our efforts to plan the exact date / time of your migration , we also will need to know :\nwhat are your normal work hours ? from : to :\nwill you be out of the office in the near future for vacation , leave , etc ?\nif so , when ? from ( mm / dd / yy ) : to ( mm / dd / yy ) :", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.786+0000", "entityId": 10812, "properties": {"text": "Subject: 1 - urgent - outlook email notification ( new )\noutlook email notification\nyour date of migration is : may 7 th\nyou will be unable to send e - mail unless you take the following action :\nplease go through your notes email and clean out as many old / un - needed email items as possible before your date of migration . after you are migrated to outlook you will only be allocated 100 mb of total mailbox space . if more than this amount of data is migrated to outlook you will not be able to send e - mail until it is below the 100 mb limit . cleaning up your notes email now will prevent this from happening to you .\nenron ' s messaging platform is migrating from lotus notes to microsoft outlook 2000 worldwide . you will be accessing outlook for all of your email functions .\nwhy is enron migrating to outlook 2000 ?\nmany factors contributed to the decision to migrate from lotus notes to microsoft exchange / outlook . the most prominent factors were :\n? significant advantages to moving to a product that is more integrated with current enron apps ( windows 2000 , office and internet explorer )\n? more efficient shared pc and roaming user features\n? improved support and integration for palm / ce devices\n? instant messaging capabilities\nwhat is being migrated to outlook 2000 ?\n? email messages . from the date of your scheduled migration , the last ( 30 ) thirty days of your email will be converted for use in outlook .\n? all your folders in notes you use to store email messages in .\n? to do items\n? journal items\n? calendar entries dating from ( 1 ) one year in the past to ( 10 ) ten years in the future will be converted .\n? address books , but not your distribution lists that you created . you will need to re - create these in outlook .\nthank you ,\noutlook 2000 migration team", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.790+0000", "entityId": 10813, "properties": {"text": "Subject: california update 5 / 4 / 01\nif you have any questions , please contact kristin walsh at ( 713 ) 853 - 9510 .\nbridge loan financing bills may not meet their may 8 th deadline due to lack of support\nsources report there will not be a vote regarding the authorization for the bond issuance / bridge loan by the may 8 th deadline . any possibility for a deal has reportedly fallen apart . according to sources , both the republicans and democratic caucuses are turning against davis . the democratic caucus is reportedly \" unwilling to fight \" for davis . many legislative republicans and democrats reportedly do not trust davis and express concern that , once the bonds are issued to replenish the general fund , davis would \" double dip \" into the fund . clearly there is a lack of good faith between the legislature and the governor . however , it is believed once davis discloses the details of the power contracts negotiated , a bond issuance will take place . additionally , some generator sources have reported that some of the long - term power contracts ( as opposed to those still in development ) require that the bond issuance happen by july 1 , 2001 . if not , the state may be in breach of contract . sources state that if the legislature does not pass the bridge loan legislation by may 8 th , having a bond issuance by july lst will be very difficult .\nthe republicans were planning to offer an alternative plan whereby the state would \" eat \" the $ 5 billion cost of power spent to date out of the general fund , thereby decreasing the amount of the bond issuance to approximately $ 8 billion . however , the reportedly now are not going to offer even this concession . sources report that the republicans intend to hold out for full disclosure of the governor ' s plan for handling the crisis , including the details and terms of all long - term contracts he has negotiated , before they will support the bond issuance to go forward .\ncurrently there are two bills dealing with the bridge loan ; ab 8 x and ab 31 x . ab 8 x authorizes the dwr to sell up to $ 10 billion in bonds . this bill passed the senate in march , but has stalled in the assembly due to a lack of republican support . ab 31 x deals with energy conservation programs for community college districts . however , sources report this bill may be amended to include language relevant to the bond sale by senator bowen , currently in ab 8 x . senator bowen ' s language states that the state should get paid before the utilities from rate payments ( which , if passed , would be likely to cause a socal bankruptcy ) .\naccording to sources close to the republicans in the legislature , republicans do not believe there should be a bridge loan due to money available in the general fund . for instance , tony strickland has stated that only 1 / 2 of the bonds ( or approximately $ 5 billion ) should be issued . other republicans reportedly do not support issuing any bonds . the republicans intend to bring this up in debate on monday . additionally , lehman brothers reportedly also feels that a bridge loan is unnecessary and there are some indications that lehman may back out of the bridge loan .\nkey points of the bridge financing\ninitial loan amount : $ 4 . 125 b\nlenders : jp morgan $ 2 . 5 b\nlehman brothers $ 1 . 0 b\nbear stearns $ 625 m\ntax exempt portion : of the $ 4 . 125 b ; $ 1 . 6 b is expected to be tax - exempt\nprojected interest rate : taxable rate 5 . 77 %\ntax - exempt rate 4 . 77 %\ncurrent projected\nblended ir : 5 . 38 %\nmaturity date : august 29 , 2001\nfor more details please contact me at ( 713 ) 853 - 9510\nbill sb 6 x passed the senate yesterday , but little can be done at this time\nthe senate passed sb 6 x yesterday , which authorizes $ 5 billion to create the california consumer power and conservation authority . the $ 5 billion authorized under sb 6 x is not the same as the $ 5 billion that must be authorized by the legislature to pay for power already purchased , or the additional amount of bonds that must be authorized to pay for purchasing power going forward . again , the republicans are not in support of these authorizations . without the details of the long - term power contracts the governor has negotiated , the republicans do not know what the final bond amount is that must be issued and that taxpayers will have to pay to support . no further action can be taken regarding the implementation of sb 6 x until it is clarified how and when the state and the utilities get paid for purchasing power . also , there is no staff , defined purpose , etc . for the california public power and conservation authority . however , this can be considered a victory for consumer advocates , who began promoting this idea earlier in the crisis .\nsocal edison and bankruptcy\nat this point , two events would be likely to trigger a socal bankruptcy . the first would be a legislative rejection of the mou between socal and the governor . the specified deadline for legislative approval of the mou is august 15 th , however , some decision will likely be made earlier . according to sources , the state has yet to sign the mou with socal , though socal has signed it . the republicans are against the mou in its current form and davis and the senate lack the votes needed to pass . if the legislature indicates that it will not pas the mou , socal would likely file for voluntary bankruptcy ( or its creditor - involuntary ) due to the lack operating cash .\nthe second likely triggering event , which is linked directly to the bond issuance , would be an effort by senator bowen to amend sb 31 x ( bridge loan ) stating that the dwr would received 100 % of its payments from ratepayers , then the utilities would receive the residual amount . in other words , the state will get paid before the utilities . if this language is included and passed by the legislature , it appears likely that socal will likely file for bankruptcy . socal is urging the legislature to pay both the utilities and the dwr proportionately from rate payments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.795+0000", "entityId": 10814, "properties": {"text": "Subject: california update 5 / 4 / 01\nif you have any questions , please contact kristin walsh at ( 713 ) 853 - 9510 .\nbridge loan financing bills may not meet their may 8 th deadline due to lack\nof support\nsources report there will not be a vote regarding the authorization for the\nbond issuance / bridge loan by the may 8 th deadline . any possibility for a\ndeal has reportedly fallen apart . according to sources , both the republicans\nand democratic caucuses are turning against davis . the democratic caucus is\nreportedly \" unwilling to fight \" for davis . many legislative republicans and\ndemocrats reportedly do not trust davis and express concern that , once the\nbonds are issued to replenish the general fund , davis would \" double dip \" into\nthe fund . clearly there is a lack of good faith between the legislature and\nthe governor . however , it is believed once davis discloses the details of\nthe power contracts negotiated , a bond issuance will take place .\nadditionally , some generator sources have reported that some of the long - term\npower contracts ( as opposed to those still in development ) require that the\nbond issuance happen by july 1 , 2001 . if not , the state may be in breach of\ncontract . sources state that if the legislature does not pass the bridge\nloan legislation by may 8 th , having a bond issuance by july lst will be very\ndifficult .\nthe republicans were planning to offer an alternative plan whereby the state\nwould \" eat \" the $ 5 billion cost of power spent to date out of the general\nfund , thereby decreasing the amount of the bond issuance to approximately $ 8\nbillion . however , the reportedly now are not going to offer even this\nconcession . sources report that the republicans intend to hold out for full\ndisclosure of the governor ' s plan for handling the crisis , including the\ndetails and terms of all long - term contracts he has negotiated , before they\nwill support the bond issuance to go forward .\ncurrently there are two bills dealing with the bridge loan ; ab 8 x and ab\n31 x . ab 8 x authorizes the dwr to sell up to $ 10 billion in bonds . this bill\npassed the senate in march , but has stalled in the assembly due to a lack of\nrepublican support . ab 31 x deals with energy conservation programs for\ncommunity college districts . however , sources report this bill may be\namended to include language relevant to the bond sale by senator bowen ,\ncurrently in ab 8 x . senator bowen ' s language states that the state should\nget paid before the utilities from rate payments ( which , if passed , would be\nlikely to cause a socal bankruptcy ) .\naccording to sources close to the republicans in the legislature ,\nrepublicans do not believe there should be a bridge loan due to money\navailable in the general fund . for instance , tony strickland has stated\nthat only 1 / 2 of the bonds ( or approximately $ 5 billion ) should be issued .\nother republicans reportedly do not support issuing any bonds . the\nrepublicans intend to bring this up in debate on monday . additionally ,\nlehman brothers reportedly also feels that a bridge loan is unnecessary and\nthere are some indications that lehman may back out of the bridge loan .\nkey points of the bridge financing\ninitial loan amount : $ 4 . 125 b\nlenders : jp morgan $ 2 . 5 b\nlehman brothers $ 1 . 0 b\nbear stearns $ 625 m\ntax exempt portion : of the $ 4 . 125 b ; $ 1 . 6 b is expected to be tax - exempt\nprojected interest rate : taxable rate 5 . 77 %\ntax - exempt rate 4 . 77 %\ncurrent projected\nblended ir : 5 . 38 %\nmaturity date : august 29 , 2001\nfor more details please contact me at ( 713 ) 853 - 9510\nbill sb 6 x passed the senate yesterday , but little can be done at this time\nthe senate passed sb 6 x yesterday , which authorizes $ 5 billion to create the\ncalifornia consumer power and conservation authority . the $ 5 billion\nauthorized under sb 6 x is not the same as the $ 5 billion that must be\nauthorized by the legislature to pay for power already purchased , or the\nadditional amount of bonds that must be authorized to pay for purchasing\npower going forward . again , the republicans are not in support of these\nauthorizations . without the details of the long - term power contracts the\ngovernor has negotiated , the republicans do not know what the final bond\namount is that must be issued and that taxpayers will have to pay to\nsupport . no further action can be taken regarding the implementation of sb\n6 x until it is clarified how and when the state and the utilities get paid\nfor purchasing power . also , there is no staff , defined purpose , etc . for\nthe california public power and conservation authority . however , this can\nbe considered a victory for consumer advocates , who began promoting this\nidea earlier in the crisis .\nsocal edison and bankruptcy\nat this point , two events would be likely to trigger a socal bankruptcy . the\nfirst would be a legislative rejection of the mou between socal and the\ngovernor . the specified deadline for legislative approval of the mou is\naugust 15 th , however , some decision will likely be made earlier . according\nto sources , the state has yet to sign the mou with socal , though socal has\nsigned it . the republicans are against the mou in its current form and davis\nand the senate lack the votes needed to pass . if the legislature indicates\nthat it will not pas the mou , socal would likely file for voluntary\nbankruptcy ( or its creditor - involuntary ) due to the lack operating cash .\nthe second likely triggering event , which is linked directly to the bond\nissuance , would be an effort by senator bowen to amend sb 31 x ( bridge loan )\nstating that the dwr would received 100 % of its payments from ratepayers ,\nthen the utilities would receive the residual amount . in other words , the\nstate will get paid before the utilities . if this language is included and\npassed by the legislature , it appears likely that socal will likely file for\nbankruptcy . socal is urging the legislature to pay both the utilities and\nthe dwr proportionately from rate payments .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.802+0000", "entityId": 10815, "properties": {"text": "Subject: from the enron india newsdesk - may 4 th newsclips\nvince / stinson ,\nsome news articles on india . it appears that dpc will attend the may 11\nmeeting , but will not be presenting any proposals .\nthey will be taking representatives from the lender side , ge and bechtel , as\nwell as from the lng supplier side .\nalso , a name has been thrown up as the likely person to represent the center .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n05 / 04 / 2001 02 : 36 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnikita varma\n05 / 04 / 2001 07 : 47 am\nto : nikita varma / enron _ development @ enron _ development\ncc : ( bcc : sandeep kohli / enron _ development )\nsubject : from the enron india newsdesk - may 4 th newsclips\nthe economic times\nfriday , may 04 , 2001 , http : / / www . economictimes . com / today / 04 infrol . htm\ngodbole panel suggestions unacceptable : enron , girish kuber\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe above article also appeared in the following newspaper :\nbusiness standard\nfriday , may 04 , 2001 ,\ngodbole terms of reference not acceptable : dpc\nthe hindustan times\npower purchase talks between govt , enron falls through\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india\nfriday , may 04 , 2001 , http : / / www . timesofindia . com / today / 04 busi 2 . htm\nenron ready to take part in ppa talk , nitin yeshwantrao\nthe financial express\nfriday , may 04 , 2001 , http : / / www . financialexpress . com / fe 20010504 / ecol 0 . html\ndpc team to appear before godbole panel on may 11\nthe above article also appeared the following newspapers :\nmid day\nenron , state govt to meet next week\nthe hindu businessline\nfriday , may 04 , 2001 , http : / / www . hindubusinessline . com / stories / 140456 uy . htm\nenron wants renegotiation meet rescheduled\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nafternoon\nfriday , 4 may , 2001 , http : / / www . afternoondc . com /\nhouston team to meet godbole\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard\nfriday , may 04 , 2001 ,\nsalve may represent centre on enron talks panel\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india\nfriday , may 04 , 2001 , http : / / www . timesofindia . com / today / 04 busi 2 . htm\nsalve may represent centre on enron talk panel\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\npioneer\nfriday , may 04 , 2001 ,\nenron talks : salve may be govt man\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmid day\nfriday 4 may 2001 ,\nenron ' s rates too high : mseb\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , friday , may 04 , 2001\ngodbole panel suggestions unacceptable : enron , girish kuber\nhopes that the godbole committee would be able to renegotiate the dabhol\npower project promoted by the us energy major enron may turn out to be\nmisplaced . the us energy major says that the godbole committee \u0001 , s suggestions\nwere unacceptable . in response to a query from et , the company said in a\nstatement that the \u0001 & published terms of the godbole report do not represent\nan acceptable basis for further discussions . \u0001 8 the statement said that it\nwould be meeting the committee next week as \u0001 & a matter of courtesy \u0001 8 . \u0001 & since\nthe purpose of our meeting is to hear out the committee and understand their\nthoughts , we will not present any proposals , \u0001 8 the statement said . according\nto highly - placed sources in the government , the company has informed the\nmadhav godbole panel that it would be meeting on may 11 . earlier reports had\nindicated that the discussions with the panel would take place on may 5 .\naccording to sources , enron would be meeting the panel with representatives\nof its lenders and shareholders . the godbole committee , that studied the\ncurrent power purchase agreement , has called for cancellation of the present\ntariff structure , renegotiation of the lng and shipping contract , removal of\ndollar denomination as far as fixed charges of the tariff is concerned , debt\nrestructuring and the formation of a committee to renegotiate the power\npurchase agreement . these suggestions , it seems , may not be acceptable to\nenron . the maharashtra government accepted the report and asked the godbole\ncommittee to renegotiate . the committee has been given a month \u0001 , s time to\nrenegotiate on behalf of the state government with dpc for a new ppa .\nthe committee has opined that since the lng facility of 5 mmpta is far in\nexcess of what is required by the plant ( only 2 . 1 mmpta of which 1 . 8 mmpta is\non take or pay ) , it should be separated into a distinct facility whose\ncapital costs should not be reflected in the fuel charge , not as take or pay .\nit should instead be only in proportion to the fuel regassified for the power\ngeneration . using the entire allocated gas requires an unusually high plf .\ninstead , the surplus gas can be sold to other players like petronet or enron \u0001 ,\ns own metgas . \u0001 & it is important to distribute the cost over the entire\ncapacity and not just the amount sold to the power plant , \u0001 8 says the\ncommittee . similarly , it has been suggested that enron could lease out the\nharbour facilities as a common facility to other lng importers . on the lng\ncontract negotiated by enron for long - term supplies , it has said that since\nthe lng market has witnessed great changes , particularly as far as prices are\nconcerned , the power company should take advantage of spot buys and\nrenegotiate the contract accordingly .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india , friday , may 04 , 2001\nenron ready to take part in ppa talk , nitin yeshwantrao\nthe enron management has finally agreed to participate in a ' discussion '\nwith the madhav godbole - led re - negotiation committee set - up to facilitate\nthe restructuring of the power purchase agreement ( ppa ) signed between the\nus power major and the state government . officials of dabhol power company\n( dpc ) , a subsidiary of enron , alongwith their team of shareholders and\nlenders will arrive here on may 11 for talks with the nine - member godbole\npanel . though the dpc spokesperson was reluctant to give a confirmation , a key\nmantralaya official told the times of india that the team had expressed\nwillingness for talks with the experts committee in a bid to end the\nimbroglio .\nenron ' s response is viewed as a welcome development to amicably resolve the\ncontroversy which had been raging for the last few weeks , with the board of\ndirectors of enron authorising its india md k wade cline to serve a\ntermination notice to mseb . the state government , on its part , too adopted a\nconfrontational position by slapping a rs 401 crore rebate charge on dpc for\ndefaulting on power supply . however , the sudden change of heart by the enron\nmanagement is largely attributed to the stand taken by its local lenders led\nby industrial development bank of india ( idbi ) which had recently opposed the\nmove to pull out of the project . this was in contradiction to the stand taken\nby the foreign lenders of the dpc who were in favour of slamming the brakes\non disbursement of funds to dpc . the congress - led democratic front government\nhad publicly declared that it would impress upon the enron management to\nrenegotiate the ppa as scrapping the project would not be in the interest of\nboth the parties .\nlast week , the state government constituted a nine - member panel of experts\nunder former bureaucrat madhav godbole . godbole had written to the dpc\nmanagement inviting it for talks to re - negotiate the ppa on may 5 . for the\ndelayed response from enron , the meeting has been rescheduled to may 11 . the\nissues which would be debated at the meeting include the separation of the\nlng facility from the power plant , renegotiating lng supply and shipping\nagreements , redefining the dpc tariff and to convert it into a two - part\ntariff . the godbole panel will bargain hard for removal of dollar\ndenomination in the fixed charge component and to allow the maharashtra\ngovernment to sell power to third parties .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe financial express , friday , may 04 , 2001 ,\ndpc team to appear before godbole panel on may 11\na battery of dabhol power company ( dpc ) officials and foreign lenders will\nappear before the madhav godbole renegotiations committee on may 11 \u0001 & as a\nmatter of courtesy , and not for presenting any proposals . \u0001 8 simultaneously , the\ndpc has made it clear that the published terms of the godbole report do not\nrepresent an acceptable basis for further discussions . the dpc team is likely\nto include officials from the enron corp , bechtel , general electric , its\nliquefied natural gas suppliers , oman lng and abu dhabi lng and a trustee\nbank , abn amro for the proposed may 11 meeting , it is reliably learnt .\nmantralaya sources said that the dpc had earlier expressed its inability to\nappear before the godbole committee on may 5 , fixed earlier , on account of\nthe non - arrival of its team from houston and other parts of the world .\nhowever , the company has ultimately decided to meet the godbole committee on\nmay 11 .\ndpc spokesman jimmy mogal said : \u0001 & we confirm that dpc has been invited to meet\nthe recently formed negotiating committee . as a matter of courtesy , we have\nagreed to meet them next week . since the purpose of our meeting is to hear\nout the committee and understand their thoughts , we will not present any\nproposals . \u0001 8 \u0001 & while we have constantly maintained that we are open to a\ndialogue towards resolving issues , this meeting in no manner be construed as\nan open offer from dpc to renegotiate the terms of the contract . furthermore ,\nthe published terms report do not represent an acceptable basis for further\ndiscussions , \u0001 8 he added . sources said enron corp chairman kenneth lay is likely\nto meet former chief minister sharad pawar to find an acceptable solution\nfor the ongoing crisis before the may 11 meet . mr lay told the foreign news\nagency on wednesday that the enron corp has no immediate plans to sell its\nstake in the troubled $ 2 . 9 - billion dabhol power project in western india .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nafternoon , may 4 , 2001\nhouston team to meet godbole\nthe enron - promoted dabhol power company ( dpc ) yesterday said it had agreed to\nmeet the godbole committee \" as a matter of courtesy \" and this should \" in no\nmanner be construed as an open offer from dpc to renegotiate the terms of the\ncontract . \" in a statement issued last night , the us energy major made it\nclear that the purpose of the meeting with the nine member renegotiating\ncommittee was \" to hear out the panel and understand their thoughts , and not\npresent any proposals . \"\nfurthermore , the published terms of the godbole report did not represent any\nacceptable basis for towards resolving issues .\nearlier , state government sources said that a team of senior officials from\nenron headquarters in houston is slated to attend the first godbole\nrenegotiations committee meeting , now to be held on may 11 . the panel\ndeferred its meeting from may 5 as in a formal communication , dpc requested\nthe state government for a suitable date other than the stipulated one , they\nsaid . however , the multinational is yet to send a list of its nominees , who\nare due to arrive next week , they said .\nmeanwhile , the centre is likely to appoint solicitor general harish salve as\nits representative on the high - power committee to renegotiate the power\npurchase agreement ( ppa ) signed between dpc and maharashtra state electricity\nboard . other members of the godbole committee are hdfc chairman deepak\nparekh , teri director r . k . pachauri , former union energy secretary e . a . s .\nsarma , kirit parikh of indira gandhi institute of developmental research ,\nmaharashtra energy secretary v . m . lal , state finance secretary s . k . srivastav\nand mseb chairman vinay bansal .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard , friday , may 04 , 2001\nsalve may represent centre on enron talks panel\nsolicitor general harish salve is likely to be named the centre \u0001 , s\nrepresentative on the high - power committee appointed by the maharashtra\ngovernment to renegotiate the power purchase agreement ( ppa ) with the us\nenergy giant enron - promoted dabhol power company ( dpc ) . according to highly\nplaced government sources , salve \u0001 , s name has been cleared by both ministries\nof finance and power .\nthe maharashtra government has appointed a negotiating committee headed by\nformer bureaucrat madhav godbole to renegotiate the estranged ppa signed by\nthe maharashtra state electricity board ( mseb ) and dpc . enron had made\nopening of talks with maharashtra conditional on the presence of a centre \u0001 , s\nrepresentative on the negotiating committee . salve would meet secretaries in\nthe ministries of finance , power and law to firm up the centre \u0001 , s stand on the\ncrisis arising out of payment defaults by mseb , sources said adding that\npetroleum secretary is also likely to be included in the panel .\nsources said enron appeared to be keen on solving the present impasse through\nnegotiations judging from corporation chairman kenneth lay \u0001 , s statement\nyesterday in houston that the company had no plans to sell its stake in the\n$ 2 . 9 billion dabhol project . the government is likely to make a formal\nannouncement of salve \u0001 , s appointment on the negotiating committee by the\nweekend , sources said . the negotiating committee would suggest solutions to\nbring down the exorbitant power tariffs , separating of the liquefied natural\ngas ( lng ) facility , restructuring of dpc and allowing sale of excess power\nthrough central utilities , mainly the national thermal power corporation\n( ntpc ) , sources said . the dpc board had late last month authorised the local\nmanager in india to issue termination notice to mseb following a bitter\npayment controversy . dpc has already slapped one conciliation notice on the\ncentre and three arbitration notices on the state government over non - payment\nof dues .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india , friday , may 04 , 2001\nsalve may represent centre on enron talk panel\nsolicitor general harish salve is likely to be named the centre ' s\nrepresentative on the high - power committee appointed by the maharashtra\ngovernment to renegotiate the power purchase agreement ( ppa ) with us energy\ngiant enron - promoted dabhol power company ( dpc ) . according to highly placed\ngovernment sources , salve ' s name had been cleared by both ministries of\nfinance and power . the maharashtra government has appointed a negotiating\ncommittee headed by former bureaucrat madhav godbole to renegotiate the\nestranged ppa signed by maharashtra state electricity board ( mseb ) and dpc .\nenron had made opening of talks with maharashtra conditional on the presence\nof centre ' s representative on the negotiating committee . salve would meet\nsecretaries in the ministries of finance , power and law to firm up centre ' s\nstand on the crisis arising out of payment defaults by mseb , sources said ,\nadding petroleum secretary is also likely to be included in the panel .\nsources said that enron appeared to be keen on solving the present impasse\nthrough negotiations judging from corporation chairman kenneth lay ' s\nstatement on wednesday in houston that the company had no plans to sell its\nstake in the $ 2 . 9 billion dabhol project . ( pti )\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe pioneer , friday , may 04 , 2001 ,\nenron talks : salve may be govt man\nsolicitor general harish salve is likely to be named as centre ' s\nrepresentative on the high - power committee appointed by the maharashtra\ngovernment to renegotiate the power purchase agreement ( ppa ) with us energy\nmajor enron - promoted dabhol power company . according to sources , mr salve ' s\nname has been cleared by the ministries of finance and power . the maharashtra\ngovernment recently appointed a committee headed by former bureaucrat madhav\ngodbole to renegotiate the\nppa signed by the maharashtra state electricity board ( mseb ) and dpc .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nmid day , friday 4 may 2001\nenron ' s rates too high : mseb\nthe maharashtra state electricity board ( mseb ) is planning to convey to the\ndabhol power company ( dpc ) , a subisidiary of us energy giant enron , its\ninability to pay increased fixed charges at the rate of rs 500 crore a month\nfrom next year . mseb officials said that dpc would be informed about this\nduring re - negotiation of the power purchase agreement ( ppa ) . as per ppa ,\nthe increased rate will come into effect from january , 2002 following\ncompletion of dpc ' s 1 , 444 mw second phase of the project in october this\nyear . the ppa also says that the fixed rate will have to be paid to the\ncompany irrespective of the consumption of electricity .\nat present mseb is paying fixed chages of rs 95 crore a month to dpc for\nits first phase of the project , generating 740 mw power . ' ' we have been\nraising this issue with dpc for last couple of months , highlighting that\nthis ( fixed charges from next year ) is not viable for us . even state chief\nminister vilasrao deshmukh raised the issue in new delhi at a meeting\nrecently ' ' , the officials said . the board will continue to raise this issue\nduring the re - negotiation process with dpc . however , dpc officals are\nkeeping mum over the issue , adopting a ' wait and watch ' policy , they added .\nunder the second phase of the project , 722 mw power generating capacity will\nbe achieved by june and remaining 722 mw by october this year , the officials\nsaid .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.807+0000", "entityId": 10816, "properties": {"text": "Subject: technical analysis\nmore fallout\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 05 / 04 / 2001 03 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee ferrell / enron @ enronxgate on 05 / 04 / 2001 02 : 26 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : technical analysis\nmike ,\nour department has been using your technical analysis to support commercial decisions . you stated that these services would be discontinued . we opted to use your technical analysis in lieu of outside services . please continue to provide technical analysis data with regard to natural gas ( candlestick and elliot wave ) .\nlee ferrell\ndirector , risk management and reporting\nets", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.812+0000", "entityId": 10817, "properties": {"text": "Subject: candlestick charts\nfyi fallout\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 05 / 04 / 2001 02 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sue neville / enron @ enronxgate on 05 / 04 / 2001 02 : 02 pm\nto : mike a roberts / hou / ect @ ect\ncc : lee ferrell / enron @ enronxgate , kent miller / et & s / enron @ enron\nsubject : candlestick charts\nmike ,\ni work for enron transportation and storage in their storage marketing group . my group has been using technical analysis from your website to help make daily storage trading revenue decisions . on your web site , you indicated you would be discontinueing some of the information we use . we had interviewed external technical service profiders , and chose not to buy their service because we had your information available to us to help us make financial decisions . specifically , we need the candlestick charts and analysis on natural gas , and we also need the elliot wave analysis on natural gas .\ncan you please reconsider your decision to discontinue the technical analysis data aforementioned ?\nsue neville\ndirector , storage marketing\nets", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.821+0000", "entityId": 10818, "properties": {"text": "Subject: technical analysis\nmore fallout\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 05 / 04 / 2001\n03 : 03 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : lee ferrell / enron @ enronxgate on 05 / 04 / 2001 02 : 26 pm\nto : mike a roberts / hou / ect @ ect\ncc :\nsubject : technical analysis\nmike ,\nour department has been using your technical analysis to support commercial\ndecisions . you stated that these services would be discontinued . we opted\nto use your technical analysis in lieu of outside services . please continue\nto provide technical analysis data with regard to natural gas ( candlestick\nand elliot wave ) .\nlee ferrell\ndirector , risk management and reporting\nets", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.830+0000", "entityId": 10819, "properties": {"text": "Subject: candlestick charts\nfyi fallout\n- - - - - - - - - - - - - - - - - - - - - - forwarded by mike a roberts / hou / ect on 05 / 04 / 2001\n02 : 05 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nfrom : sue neville / enron @ enronxgate on 05 / 04 / 2001 02 : 02 pm\nto : mike a roberts / hou / ect @ ect\ncc : lee ferrell / enron @ enronxgate , kent miller / et & s / enron @ enron\nsubject : candlestick charts\nmike ,\ni work for enron transportation and storage in their storage marketing\ngroup . my group has been using technical analysis from your website to help\nmake daily storage trading revenue decisions . on your web site , you\nindicated you would be discontinueing some of the information we use . we had\ninterviewed external technical service profiders , and chose not to buy their\nservice because we had your information available to us to help us make\nfinancial decisions . specifically , we need the candlestick charts and\nanalysis on natural gas , and we also need the elliot wave analysis on natural\ngas .\ncan you please reconsider your decision to discontinue the technical analysis\ndata aforementioned ?\nsue neville\ndirector , storage marketing\nets", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.836+0000", "entityId": 10820, "properties": {"text": "Subject: organization announcement\ngiven the growth in ees it has become apparent that it is time to consolidate the risk functions between ees and ews . this will provide ees with the systems , resources and risk expertise of the wholesale energy groups necessary for it to continue to grow and take advantage of current market opportunities .\nwith this in mind and in agreement with the management of ees , two new risk groups inside enron americas will be formed to provide ees with pricing , structuring , retail and wholesale commodity risk management , logistics and back - office services . these groups main function is to provide these services to ees . we have asked rogers herndon , currently vice president - trading in the eastern power group to manage this function in the eastern interconnect ( this includes both gas and power ) . rogers will continue to report to kevin presto . we have asked don black , formerly vice president - ees risk management and sourcing , to manage this function in the western u . s . don will manage this group from houston and will report to tim belden .\nthese groups will work very closely with ees to pursue shared goals while ensuring close coordination with the wholesale gas and power trading organizations .\nthese changes are effective immediately . please congratulate rogers and don on their new roles .\njohn lavorato & louise kitchen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.844+0000", "entityId": 10821, "properties": {"text": "Subject: organization announcement\ngiven the growth in ees it has become apparent that it is time to consolidate\nthe risk functions between ees and ews . this will provide ees with the\nsystems , resources and risk expertise of the wholesale energy groups\nnecessary for it to continue to grow and take advantage of current market\nopportunities .\nwith this in mind and in agreement with the management of ees , two new risk\ngroups inside enron americas will be formed to provide ees with pricing ,\nstructuring , retail and wholesale commodity risk management , logistics and\nback - office services . these groups main function is to provide these\nservices to ees . we have asked rogers herndon , currently vice\npresident - trading in the eastern power group to manage this function in the\neastern interconnect ( this includes both gas and power ) . rogers will\ncontinue to report to kevin presto . we have asked don black , formerly vice\npresident - ees risk management and sourcing , to manage this function in the\nwestern u . s . don will manage this group from houston and will report to tim\nbelden .\nthese groups will work very closely with ees to pursue shared goals while\nensuring close coordination with the wholesale gas and power trading\norganizations .\nthese changes are effective immediately . please congratulate rogers and don\non their new roles .\njohn lavorato & louise kitchen", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.853+0000", "entityId": 10822, "properties": {"text": "Subject: schedule\nvince ,\nmy schedule for the risk 2001 conference in houston is :\narrive sunday 4 / 13 9 pm .\nstaying at the houstonian\ndepart tuesday 4 / 15 5 : 30 pm .\nhopefully , we can get together .\nthanks , aram ( cell phone 503 - 701 - 6692 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.860+0000", "entityId": 10823, "properties": {"text": "Subject: schedule\nvince ,\nmy schedule for the risk 2001 conference in houston is :\narrive sunday 4 / 13 9 pm . ?\nstaying at the houstonian\ndepart tuesday 4 / 15 5 : 30 pm .\nhopefully , we can get together .\nthanks , aram ? ( cell phone 503 - 701 - 6692 )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.864+0000", "entityId": 10824, "properties": {"text": "Subject: grades\npam ,\nthe last group .\nplease , let me know if any name is missing .\ngrade : a\nthanks a lot . it was a pleasure working with you .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.869+0000", "entityId": 10825, "properties": {"text": "Subject: grades\npam ,\nanother term paper :\njohn ganguzza\nneeraj hingorani\ngrant johnson\nduane maue\nrishad patel\neric van stone\npalo yoshiuro\ngrade : a\nplease , confirm .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.875+0000", "entityId": 10826, "properties": {"text": "Subject: term paper\nvince ,\n?\nattached is our team ' s term paper in pdf format . ? please let us know if you\nstill problem opening the file .\nthank you very much .\n?\nbest regards ,\nwinny so\n?\nrice university\njesse h . jones graduate school of management\nmba candidate , class of 2001\n?\n2018 richland court\nsugar land , tx 77478\nhome : ? ? ( 281 ) 265 - 3522\nmobile : ? ( 281 ) 989 - 8417\ne - mail : ? so @ rice . edu >\nhttp : / / www . ruf . rice . edu / ~ so /\n?\n- modeling project . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.880+0000", "entityId": 10827, "properties": {"text": "Subject: re : grades\nthank you ! ?\nyou have been wonderful to work with this semester .\nstay in touch and we ' ll see you next year .\n- pam ( 713 - 348 - 6223 )\nat 10 : 33 pm 5 / 4 / 01 - 0400 , vkaminski @ aol . com wrote :\npam ,\nthe students resent the documents .\nthe group members :\nrakhi israni\nfelix feng lu\nwinny so\norlandotaylor\nsanjay wankhade\nning zhang\ngrade : a\nseparately , i think i have sent you already :\njeffrey planck\ngrade : a\nplease , confirm this message .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.884+0000", "entityId": 10828, "properties": {"text": "Subject: re : grades\npam ,\nthe students resent the documents .\nthe group members :\nrakhi israni\nfelix feng lu\nwinny so\norlandotaylor\nsanjay wankhade\nning zhang\ngrade : a\nseparately , i think i have sent you already :\njeffrey planck\ngrade : a\nplease , confirm this message .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.890+0000", "entityId": 10829, "properties": {"text": "Subject: term papers\nteam ,\ncan you resend your text document to vince asap .\nwe could open your spreadsheet ok , but not the document .\nvince ' s contact information is on the attached email below .\nthanks\njason\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 05 / 04 / 2001 05 : 32\npm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 04 / 2001 05 : 29 pm\nto : monfan @ rice . edu\ncc : vkaminski @ aol . com , jason sokolov / hou / ect @ ect , vince j\nkaminski / hou / ect @ ect\nsubject : term papers\nfelix ,\nplease , resend me the term papers of your group , each as a separate file .\nplease send it to my aol address as well as work address .\nmy aol address is vkaminski @ aol . com\nmy home phone number is 281 367 5377 .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.895+0000", "entityId": 10830, "properties": {"text": "Subject: re : grades\nmr . kaminsky ,\ni still need grades for :\nisrani , rakhi\nlu , feng\nplanck , jeffrey\nso , winny\ntaylor , orlando\nwankhade , sanjay\nzhang , ning\ni will be available by e - mail this evening or by phone ( 5 : 30 or so ) at\n713 - 668 - 1704 . ? i just called the registrar ' s office and if i bring in the\ngrades by 8 : 30 tomorrow morning we will be fine . ? please advise .\nthanks for your help . - pam\nat 08 : 23 am 5 / 4 / 01 - 0500 , vince . j . kaminski @ enron . com wrote :\npam ,\nthe last group .\nplease , let me know if any name is missing .\n( embedded image moved to file : pic 25177 . pcx )\ngrade : a\nthanks a lot . it was a pleasure working with you .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.900+0000", "entityId": 10831, "properties": {"text": "Subject: transportation for m . gillis and g . whitaker for post presentation\ncelebration at enron box at enron field\nhi judith !\ni have a special parking ticket for malcolm and gil to use in dr . gillis ' s\ncar . then , i ' ll have a car pick up gil when he ' s ready to leave the\ngame - - we ' ll take care of everything ( thanks for offering ) - - we ' re really\nlooking forward to the event !\nbest regards for a great weekend !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 05 / 04 / 2001\n04 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njudith duvall on 05 / 04 / 2001 02 : 09 : 26 pm\nto : christie . patrick @ enron . com\ncc :\nsubject : re : rice alp final presentation and post presentation celebration\nat enron box at enron field\nchristie :\ncould you please fill me in on the logistics ? dr . gillis and gil whitaker\nwill\nbe at the apl project presentation at enron at 4 p . m . . further , they both\nplan\nto attend the dinner at enron field . however , dr . gillis must skip the\ngame due\nto an early morning breakfast the next day . will you provide special parking\nat the dinner / game ? i think dr . g and gil will go together , then i will have\ndr . gillis picked up by limo , at approximately 8 : 00 p . m . does this sound\nfeasible ?\njudith duvall\nat 10 : 00 am 5 / 4 / 01 - 0500 , you wrote :\n> hi friends !\n>\n> the big rice - alp final presentation day is almost here : monday , may 7 th ,\n> 4 pm , at enron , 1400 smith . please come to the enron lobby and ask for\n> me or my assistant , melinda mccarty .\n>\n> after the presentation , you are cordially invited to dinner and an astro ' s\n> game ( vs phillies ) at the enron box at enron field . as participation in\n> the enron box at enron field is limited to this special invitation list\n> only , please confirm your attendance via return email , or via voice mail to\n> me at 713 - 853 - 6117 asap .\n>\n> we ' re very excited about the work the rice alp team has done and we ' re all\n> greatly looking forward to the presentation .\n>\n> hope to see everyone monday ! !\n>\n> best regards !\n>\n> - - christie .\n>\n>\n>\njudith duvall\nsecretary to the president\nrice university\n6100 main street - - msl\nhouston , tx 77005\n713 / 348 - 4601\n713 / 348 - 5271 ( fax )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.905+0000", "entityId": 10832, "properties": {"text": "Subject: re : term papers\nplease respond to\nhere is the excel file ( zipped ) . you have to unzip to read it .\nfelix\n* * * * * * * * * * * * * * * * * * * *\nfelix feng lu\nmba candidate , class 2001\njesse h . jones graduate school of management\nrice university\nphone - 713 . 942 . 8472 / fax - 714 . 908 . 7914\nmonfan @ rice . edu\n* * * * * * * * * * * * * * * * * * * *\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , may 04 , 2001 5 : 30 pm\nto : monfan @ rice . edu\ncc : vkaminski @ aol . com ; jason . sokolov @ enron . com ;\nvince . j . kaminski @ enron . com\nsubject : term papers\nfelix ,\nplease , resend me the term papers of your group , each as a separate file .\nplease send it to my aol address as well as work address .\nmy aol address is vkaminski @ aol . com\nmy home phone number is 281 367 5377 .\nvince\n- feng lu . vcf\n- modelingproject . zip", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.912+0000", "entityId": 10833, "properties": {"text": "Subject: re : term papers\nplease respond to here is the . pdf file and the word version ( in case you cannot open the\n. pdf ) . sorry about the inconvinence . please let me know if you can open the\nfile .\nfelix\n* * * * * * * * * * * * * * * * * * * *\nfelix feng lu\nmba candidate , class 2001\njesse h . jones graduate school of management\nrice university\nphone - 713 . 942 . 8472 / fax - 714 . 908 . 7914\nmonfan @ rice . edu\n* * * * * * * * * * * * * * * * * * * *\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : friday , may 04 , 2001 5 : 30 pm\nto : monfan @ rice . edu\ncc : vkaminski @ aol . com ; jason . sokolov @ enron . com ;\nvince . j . kaminski @ enron . com\nsubject : term papers\nfelix ,\nplease , resend me the term papers of your group , each as a separate file .\nplease send it to my aol address as well as work address .\nmy aol address is vkaminski @ aol . com\nmy home phone number is 281 367 5377 .\nvince\n- feng lu . vcf\n- modeling project . doc\n- modeling project . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.917+0000", "entityId": 10834, "properties": {"text": "Subject: term papers\nteam ,\ncan you resend your text document to vince asap .\nwe could open your spreadsheet ok , but not the document .\nvince ' s contact information is on the attached email below .\nthanks\njason\n- - - - - - - - - - - - - - - - - - - - - - forwarded by jason sokolov / hou / ect on 05 / 04 / 2001 05 : 32 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\nvince j kaminski\n05 / 04 / 2001 05 : 29 pm\nto : monfan @ rice . edu\ncc : vkaminski @ aol . com , jason sokolov / hou / ect @ ect , vince j kaminski / hou / ect @ ect\nsubject : term papers\nfelix ,\nplease , resend me the term papers of your group , each as a separate file .\nplease send it to my aol address as well as work address .\nmy aol address is vkaminski @ aol . com\nmy home phone number is 281 367 5377 .\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.922+0000", "entityId": 10835, "properties": {"text": "Subject: re : grades\nmr . kaminsky ,\ni still need grades for :\nisrani , rakhi\nlu , feng\nplanck , jeffrey\nso , winny\ntaylor , orlando\nwankhade , sanjay\nzhang , ning\ni will be available by e - mail this evening or by phone ( 5 : 30 or so ) at 713 - 668 - 1704 . i just called the registrar ' s office and if i bring in the grades by 8 : 30 tomorrow morning we will be fine . please advise .\nthanks for your help . - pam\nat 08 : 23 am 5 / 4 / 01 - 0500 , vince . j . kaminski @ enron . com wrote :\npam ,\nthe last group .\nplease , let me know if any name is missing .\n( embedded image moved to file : pic 25177 . pcx )\ngrade : a\nthanks a lot . it was a pleasure working with you .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.932+0000", "entityId": 10836, "properties": {"text": "Subject: transportation for m . gillis and g . whitaker for post presentation\ncelebration at enron box at enron field\nhi judith !\ni have a special parking ticket for malcolm and gil to use in dr . gillis ' s car . then , i ' ll have a car pick up gil when he ' s ready to leave the game - - we ' ll take care of everything ( thanks for offering ) - - we ' re really looking forward to the event !\nbest regards for a great weekend !\n- - christie .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by christie patrick / hou / ect on 05 / 04 / 2001 04 : 10 pm - - - - - - - - - - - - - - - - - - - - - - - - - - -\njudith duvall on 05 / 04 / 2001 02 : 09 : 26 pm\nto : christie . patrick @ enron . com\ncc :\nsubject : re : rice alp final presentation and post presentation celebration at enron box at enron field\nchristie :\ncould you please fill me in on the logistics ? dr . gillis and gil whitaker\nwill\nbe at the apl project presentation at enron at 4 p . m . . further , they both\nplan\nto attend the dinner at enron field . however , dr . gillis must skip the\ngame due\nto an early morning breakfast the next day . will you provide special parking\nat the dinner / game ? i think dr . g and gil will go together , then i will have\ndr . gillis picked up by limo , at approximately 8 : 00 p . m . does this sound\nfeasible ?\njudith duvall\nat 10 : 00 am 5 / 4 / 01 - 0500 , you wrote :\n> hi friends !\n>\n> the big rice - alp final presentation day is almost here : monday , may 7 th ,\n> 4 pm , at enron , 1400 smith . please come to the enron lobby and ask for\n> me or my assistant , melinda mccarty .\n>\n> after the presentation , you are cordially invited to dinner and an astro ' s\n> game ( vs phillies ) at the enron box at enron field . as participation in\n> the enron box at enron field is limited to this special invitation list\n> only , please confirm your attendance via return email , or via voice mail to\n> me at 713 - 853 - 6117 asap .\n>\n> we ' re very excited about the work the rice alp team has done and we ' re all\n> greatly looking forward to the presentation .\n>\n> hope to see everyone monday ! !\n>\n> best regards !\n>\n> - - christie .\n>\n>\n>\njudith duvall\nsecretary to the president\nrice university\n6100 main street - - msl\nhouston , tx 77005\n713 / 348 - 4601\n713 / 348 - 5271 ( fax )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.940+0000", "entityId": 10837, "properties": {"text": "Subject: re : grades\nthank you ! - pam\nat 08 : 15 am 5 / 4 / 01 - 0500 , you wrote :\n> pam ,\n>\n> another term paper :\n>\n>\n> john ganguzza\n> neeraj hingorani\n> grant johnson\n> duane maue\n> rishad patel\n> eric van stone\n> palo yoshiuro\n>\n>\n> grade : a\n>\n> please , confirm .\n>\n>\n> vince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.944+0000", "entityId": 10838, "properties": {"text": "Subject: june 21 - 22 retail electricity conference\ndear workshop participant :\ni hope you will be able to join us for the conference on \" retail\nparticipation in competitive power markets \" to be held at the littlefield\nconference center , stanford university , on june 21 - 22 , 2001 . conference\nattire will be business casual .\nthe meeting will begin on thursday morning , june 21 , at 9 : 00 a . m . and will\nconclude by 5 : 00 p . m . on friday , june 22 . a continental breakfast will be\navailable in the meeting room each morning beginning at 8 : 30 a . m .\nplease visit the \" june 21 - 22 \" meeting under\nfor a description of the meeting and some information about hotels .\nplease help us in our planning by using the form there to respond back to\nemf about your participation . we have listed potential participants and\nplanned presentations based upon previous messages . please update me with\nany additional presentations or changes in existing presentations .\ni look forward to seeing you in june . in the interim , please do not\nhesitate to call me or email me if you have questions or suggestions\nregarding this workshop .\nhill huntington\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.949+0000", "entityId": 10839, "properties": {"text": "Subject: june 21 - 22 retail electricity conference\ndear workshop participant :\ni hope you will be able to join us for the conference on \" retail\nparticipation in competitive power markets \" to be held at the littlefield\nconference center , stanford university , on june 21 - 22 , 2001 . conference\nattire will be business casual .\nthe meeting will begin on thursday morning , june 21 , at 9 : 00 a . m . and will\nconclude by 5 : 00 p . m . on friday , june 22 . a continental breakfast will be\navailable in the meeting room each morning beginning at 8 : 30 a . m .\nplease visit the \" june 21 - 22 \" meeting under\nfor a description of the meeting and some information about hotels .\nplease help us in our planning by using the form there to respond back to\nemf about your participation . we have listed potential participants and\nplanned presentations based upon previous messages . please update me with\nany additional presentations or changes in existing presentations .\ni look forward to seeing you in june . in the interim , please do not\nhesitate to call me or email me if you have questions or suggestions\nregarding this workshop .\nhill huntington\nhillard g . huntington\nemf - an international forum on\nenergy and environmental markets voice : ( 650 ) 723 - 1050\n408 terman center fax : ( 650 ) 725 - 5362\nstanford university email : hillh @ stanford . edu\nstanford , ca 94305 - 4026\nemf website : http : / / www . stanford . edu / group / emf /", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.954+0000", "entityId": 10840, "properties": {"text": "Subject: fw : london work\nhi ,\nhow are you ? london seems to be the same as when i left in august - no sun ,\ncold , serious looking people , expensive , etc . in addition , we have had may\nday riots , a post office bombing , train strike , etc . not to mention all the\nexcitement in enron credit .\nit would be nice to know who i am supposed to be reporting to . i am getting\nloads of conflicting messages - as illustrated in the forwarded email from\nvasant . according to you and slava , the strategy paper / duffie report seems\nto be a higher priority . however , vasant seems to indicate ( in his forwarded\nemail ) that this is not the priority at the moment .\nin addition , there seems to be lots of chaos in enron credit - not only in\nthe houston office , but even more so in the london office . this brings to\nmind a russian proverb i learned from slava when he expressed his views on\nthe current state of enron credit - \" a fish rots from the head . \"\nfinally , i would like to know exactly what you want me to write in this\nduffie report : do you want to hear what enron credit would like to hear -\nthat all they need is for us to develop a private firm model for their\nexisiting \" infrastructure \" ? or do you want to hear what i really see , hear ,\nread , etc . ? if the latter is true , then i may need to write two reports ,\nbecause what i am learning does not look too good and would probably not make\nthe enron credit personnel too happy .\nwell , i think i have said enough for now . look forward to your feedback .\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : shanbhogue , vasant\nsent : friday , may 04 , 2001 3 : 39 pm\nto : mack , iris\ncc : dhar , amitava\nsubject : london work\nhi iris ,\namitava must have told you that both he and i are getting swamped with work\nhere . as a result , we expect you to take the lead in scoping the enron\ncredit project and making sure the infrastructure is readied . you should\nalso make sure to understand the econometric / data analysis software side of\nthe project - - this is probably more important than preparing a document for\nduffie right now . you should definitely sit with ben / george and actually run\nthe software with them to get a feel for how it is to be used . but we also\nneed to be able to try out potential other ways of analyzing data . both\namitava and i will help as best as we can , and answer any direct questions ,\nbut we will have limited time to review documents , etc . i expect amitava to\nget heavily involved once data starts coming , but we expect you to have\nalready set up the infrastructure etc for the data .\nhope the trip is going well . would you be extending the trip for some more\ntime ?\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.959+0000", "entityId": 10841, "properties": {"text": "Subject: term paper\nplease respond to\nvince ,\nattached is our team ' s term paper in pdf format . please let us know if you still problem opening the file .\nthank you very much .\nbest regards ,\nwinny so\nrice university\njesse h . jones graduate school of management\nmba candidate , class of 2001\n2018 richland court\nsugar land , tx 77478\nhome : ( 281 ) 265 - 3522\nmobile : ( 281 ) 989 - 8417\ne - mail : so @ rice . edu > http : / / www . ruf . rice . edu / ~ so /\n- modeling project . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.964+0000", "entityId": 10842, "properties": {"text": "Subject: re : grades\nthank you !\nyou have been wonderful to work with this semester .\nstay in touch and we ' ll see you next year .\n- pam ( 713 - 348 - 6223 )\nat 10 : 33 pm 5 / 4 / 01 - 0400 , vkaminski @ aol . com wrote :\npam ,\nthe students resent the documents .\nthe group members :\nrakhi israni\nfelix feng lu\nwinny so\norlandotaylor\nsanjay wankhade\nning zhang\ngrade : a\nseparately , i think i have sent you already :\njeffrey planck\ngrade : a\nplease , confirm this message .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.968+0000", "entityId": 10843, "properties": {"text": "Subject: re : grades\npam ,\nthe students resent the documents .\nthe group members :\nrakhi israni\nfelix feng lu\nwinny so\norlandotaylor\nsanjay wankhade\nning zhang\ngrade : a\nseparately , i think i have sent you already :\njeffrey planck\ngrade : a\nplease , confirm this message .\nvince kaminski", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.974+0000", "entityId": 10844, "properties": {"text": "Subject: fw : london work\nhi ,\nhow are you ? london seems to be the same as when i left in august - no sun , cold , serious looking people , expensive , etc . in addition , we have had may day riots , a post office bombing , train strike , etc . not to mention all the excitement in enron credit .\nit would be nice to know who i am supposed to be reporting to . i am getting loads of conflicting messages - as illustrated in the forwarded email from vasant . according to you and slava , the strategy paper / duffie report seems to be a higher priority . however , vasant seems to indicate ( in his forwarded email ) that this is not the priority at the moment .\nin addition , there seems to be lots of chaos in enron credit - not only in the houston office , but even more so in the london office . this brings to mind a russian proverb i learned from slava when he expressed his views on the current state of enron credit - \" a fish rots from the head . \"\nfinally , i would like to know exactly what you want me to write in this duffie report : do you want to hear what enron credit would like to hear - that all they need is for us to develop a private firm model for their exisiting \" infrastructure \" ? or do you want to hear what i really see , hear , read , etc . ? if the latter is true , then i may need to write two reports , because what i am learning does not look too good and would probably not make the enron credit personnel too happy .\nwell , i think i have said enough for now . look forward to your feedback .\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : shanbhogue , vasant\nsent : friday , may 04 , 2001 3 : 39 pm\nto : mack , iris\ncc : dhar , amitava\nsubject : london work\nhi iris ,\namitava must have told you that both he and i are getting swamped with work here . as a result , we expect you to take the lead in scoping the enron credit project and making sure the infrastructure is readied . you should also make sure to understand the econometric / data analysis software side of the project - - this is probably more important than preparing a document for duffie right now . you should definitely sit with ben / george and actually run the software with them to get a feel for how it is to be used . but we also need to be able to try out potential other ways of analyzing data . both amitava and i will help as best as we can , and answer any direct questions , but we will have limited time to review documents , etc . i expect amitava to get heavily involved once data starts coming , but we expect you to have already set up the infrastructure etc for the data .\nhope the trip is going well . would you be extending the trip for some more time ?\nvasant", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.978+0000", "entityId": 10845, "properties": {"text": "Subject: schedule and more . .\ndr . kaminski ,\ni think i ' ll be able to start work from the last week of may ,\nbut not from monday ,\nprobably , i ' ll be able to work from 5 / 30 ( wed ) .\nwill it be good ? i know it is not that much earlier than i mentioned . . 6 / 4\ni am sorry .\nand actually , there is an e - business conference at haas school of business ,\norganized by my advisor\ncould you distribute the link and the attached invitation letter to groups\ninterested in e - business and especially procurement ?\nthe link is as following .\ni am afraid you might forgot this i told you in the last email . . .\nmy advisor ( arie segev at haas school of business ; segev @ haas . berkeley . edu )\nwants me to ask whether you have any idea on joint research with him\nduring the summer , while i am staying there .\nhis interest is in e - business . . ( what else . . ? )\nand has expertise in e - procurement system and marketplace . . .\nxml based standard such as obi , cxml , xcbl , rosettanet , biztalk . .\nsystem interoperability study , auction and negotiation , workflow system ,\ne - catalog management , digital signature , edi , etc etc . . .\nmany technical aspects of e - business . . .\nhe wants to do some kind of technical case study\nthat is beneficial for both enron and him .\nhe may travel one or two times to houston to have a meeting during the\nsummer .\n( and to be frankly , this will be good for me too ,\nbecause i can have a meeting for my dissertation while he is in houston . . )\ncould you think about the possibility of joint research , with him ?\nthank you . .\nsincerely ,\njinbaek\n- fcp - invite . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.983+0000", "entityId": 10846, "properties": {"text": "Subject: california update - urgent please read 5 / 7 / 01\nsources report that the bond authorization will be put to a vote today\nthe bridge loan financing bill will put to a vote today in the california\nassembly . the republicans are currently in caucus until 3 : 30 pst and then\nwill go to the floor for a vote . the current situation is very fluid , but\nsources now indicate that the bill would pass with a simple majority vote ,\nlacking the two - thirds needed for an immediate bond issuance . if this is the\ncase , the bill would not take effect for 90 days and the state would be\nforced to abandon its proposed bridge loan plans . absent of last minute\nfinancial rescues by davis or a new longer bridge loan package ( unlikely )\nsocal could seek voluntary bankruptcy . the main problem would then be the\nwaiting period for financial relief from the state through the transmission\nline purchase or other assistance .\nthere is an outside chance that republican defectors could precipitate from\nthe current caucus . there is extreme pressure on the republicans from davis\nand angelides . if the bill failed due to lack of republican support , it\nwould provide davis the opportunity to blame republicans for on - going\nexpenditures of $ 70 m / day ( power purchases ) , and a possible bankruptcy by\nsocal . the last republican who gave support to a democratic bill ( ab lx ) ,\nrepresentative bill campbell , lost his job . sources also confirm that\ndemocrats have not met with republicans on the bond issuance since last week .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.988+0000", "entityId": 10847, "properties": {"text": "Subject: e - commerce conference at berkeley , may 22\nany interest in this conference ?\nvince", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.992+0000", "entityId": 10848, "properties": {"text": "Subject: re : enron visit - - thanks\nlarry ,\ni was thinking about the potential applications over the weekend\nand i think i shall have a proposal for you in a few days .\nvince\np . s . i want to remind you about the favor i asked you about .\nwe would like to talk ( no commitments ) to the prediction company .\ncan you refer me to your friend .\nvince\nlawrencelrtnmt @ aol . com on 05 / 06 / 2001 12 : 07 : 18 am\nto : vkamins @ enron . com\ncc :\nsubject : enron visit - - thanks\ndear vince ,\ni just wanted to thank you for inviting me to visit enron last friday and\nfor the generous amount of time you spent with me personally while i was\nthere . i found our discussions both informative and stimulating .\nvince , i was genuinely impressed by the caliber of the group you have\nassembled at enron . their individual and collective expertise is obvious ;\nand they were most generous in exchanging ideas and sharing opinions with me .\nif you or any of your people have , over the weekend , developed further\nquestions or thought of additional information that might be helpful , i ' m\nstanding by . i ' m eager to continue our dialogue .\nsincerely ,\nlarry thorne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:57.997+0000", "entityId": 10849, "properties": {"text": "Subject: re : dabhol report\nnarottam ,\ni have in fact not received a copy of the report . was this something you\nsent by e - mail ? if so , please resend it to me so that i could make the\nappropriate comments . please do this asap , since i have been waiting for\nthis report to give my comments for some time now .\nregards ,\nsandeep .\n\" narottam aul \" on 05 / 06 / 2001 08 : 25 : 53 pm\nplease respond to\nto :\ncc :\nsubject : dabhol report\nsandeep\ntrust you have had the opportunity to review the draft of the dabhol report\nthat was sent on 24 april 2001 . i assume that the circulation of the report\nto the relevant people within dabhol and enron has been done at your end . it\nwill be helpful if all comments are collated and send through you . the\nreport can then be amended to incorporate your comments and a final version\nsent for your records . we would very much to close the assignment with the\ncompletion of the report .\nplease do let me know , if we can do any further analysis and sensitivities\nto assist enron and dabhol in the existing phase of discussions with mseb\nand the state government .\nbest regards\nnarottam\nnarottam aul\nhenwood energy services inc .\n26 greenhill road\nwayville sa 5034\naustralia\ntel : + 61 8 8179 2006\nfax : + 61 8 8179 2099\nmobile : 0421 061 016", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.001+0000", "entityId": 10850, "properties": {"text": "Subject: re : enron visit - - thanks\nlarry ,\ni was thinking about the potential applications over the weekend\nand i think i shall have a proposal for you in a few days .\nvince\np . s . i want to remind you about the favor i asked you about .\nwe would like to talk ( no commitments ) to the prediction company .\ncan you refer me to your friend .\nvince\nlawrencelrtnmt @ aol . com on 05 / 06 / 2001 12 : 07 : 18 am\nto : vkamins @ enron . com\ncc :\nsubject : enron visit - - thanks\ndear vince ,\ni just wanted to thank you for inviting me to visit enron last friday and\nfor the generous amount of time you spent with me personally while i was\nthere . i found our discussions both informative and stimulating .\nvince , i was genuinely impressed by the caliber of the group you have\nassembled at enron . their individual and collective expertise is obvious ;\nand they were most generous in exchanging ideas and sharing opinions with me .\nif you or any of your people have , over the weekend , developed further\nquestions or thought of additional information that might be helpful , i ' m\nstanding by . i ' m eager to continue our dialogue .\nsincerely ,\nlarry thorne", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.007+0000", "entityId": 10851, "properties": {"text": "Subject: from the enron india newsdesk - may 5 - 7 newsclips\nstinson / vince ,\nsome news articles . do read the first one , and the second last one .\nregards ,\nsandeep .\n- - - - - - - - - - - - - - - - - - - - - - forwarded by sandeep kohli / enron _ development on\n05 / 07 / 2001 09 : 10 am - - - - - - - - - - - - - - - - - - - - - - - - - - -\nnikita varma\n05 / 07 / 2001 07 : 42 am\nto : nikita varma / enron _ development @ enron _ development\ncc : ( bcc : sandeep kohli / enron _ development )\nsubject : from the enron india newsdesk - may 5 - 7 newsclips\nthe economic times , may 7 , 2001\nenron ceo casts vote to save dpc , tina edwin & soma banerjee\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 7 , 2001\nmaha sore over delay in naming godbole nominee\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india , 7 may , 2001\nmaharashtra ' unhappy ' with delay in naming godbole nominee\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard , monday , 7 may 2001\nreliance allowed to hawk power from patalganga to third parties\narijit de , s ravindran & renni abraham in mumbai\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 7 , 2001\nno need of patalganga , bhadravati power : mseb\nalso appeared in the following newspaper :\nthe times of india , may 7 , 2001\n' no need of patalganga , bhadravati power '\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard , may 7 , 2001\nglobal bankers ask govt to honour dpc obligations\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard\nsaturday , 5 may , 2001 ,\nge may pull out as dpc supplier , s ravindran in mumbai\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhindu businessline , may 5 , 2001\nagenda for fresh talks with enron chalked out\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 6 , 2001\nhttp : / / 216 . 34 . 146 . 167 : 8000 / servlet / form\ngodbole panel meets sans dabhol representation\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 5 , 2001\nhttp : / / 216 . 34 . 146 . 167 : 8000 / servlet / form\nntpc not to buy power from enron : govt\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india , may 7 , 2001\nmseb recovers rs 3 . 06 cr arrears in one day\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 7 , 2001\nenron ceo casts vote to save dpc , tina edwin & soma banerjee\namul ' s creative directors may have gone back to ad - libbing ' enron or\nenr - off ' , but for the big kahuna at the american utility , dabhol is still a\nworthwhile project . while the entire enron board had almost decided to call\nit quits and proceed with the termination of the $ 2 . 9 - billion power project\nat dabhol , the veto exercised by the company chairman kenneth lay has saved\nthe project \u0001 * - at least for the timebeing . sources said the meeting held on\ntuesday at the energy major ' s headquarters in houston could have sounded the\ndeath knell for the only big foreign investment in the indian power sector .\nalthough the future of the project is still pretty uncertain with the lenders\nunwilling to continue disbursements unless payment obligations are not\nhonoured and contractual obligations left unfulfilled , the veto exercised at\nthis juncture by the chairman of the parent company has come as a big boost\nto the indian venture . company sources said : \" we do not know what went on\nthere but it is true that as of now we are not pulling out . \" with the\nengineering procurement and construction contractors ge and equipment\nsuppliers bechtel too in a cautious mode mode , dpc was finding it even more\ndifficult to continue the construction of the project as per the schedules .\nsources said the stand taken by the rest of the directors on the board would\nbe in view of the backlash that the company would have to face from its\nshareholders if the project actually flopped . enron had similar bitter\nexperiences in pakistan and it was difficult for the parent company to then\njustify such investments to the shareholders .\nenron , which had planned a major investments in india ' s infrastructure\nsectors such as oil and gas , lng , gas transportation , telecom and broadband\nnetwork , has already pulled out most of their personnel from some of these\noperations . the company ' s mous with various other majors like indian oil\ncorporation , too , is in a limbo and the us major ' s stake in the oil and gas\nventure is up for grabs . however , even though lay is still hoping to find a\nsolution to the controversy back home , both dpc and mseb are still to get\ndown to negotiations .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 7 , 2001\nmaha sore over delay in naming godbole nominee\nthe maharashtra government has expressed ' unhappiness ' over the centre ' s\ndelay in appointing its nominee on the nine - member godbole committee to\nrenegotiate the power purchase agreement signed between enron - promoted\ndabhol power company and state electricity board . \" the committee , which is\nto hold discussions with enron officials from houston on may 11 , has only a\nmonth ' s time for renegotiations and with dpc ' s termination notice threat\nhanging on our head , time is actually running out . yet there is no official\nto represent the union government , \" said a senior state government official .\n\" there are media reports that the solicitor - general harish salve would be\nappointed , but we are yet to hear anything from their side , \" he said .\nthe official said the state expected centre to announce its representative\nbefore may 11 , as it would appreciate his crucial presence in the first\nsession of discussions with enron officials , lenders and gas suppliers .\nsources in the mantralaya added the government had also been unhappy over\nthe centre ' s \" rigid stand \" on not allowing state - owned national thermal power\ncorporation to buy the excess capacity of dpc ' s total 2 , 184 - mw project .\n\" let ntpc and power trading corporation of india come together and sell dpc ' s\nsurlpus power . we have already mooted this suggestion , but a favourable reply\nis yet to come from the union power ministry , \" the official said .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india , 7 may , 2001\nmaharashtra ' unhappy ' with delay in naming godbole nominee\nthe maharashtra government has expressed ' unhappiness ' over the centre ' s\ndelay in appointing its nominee on the nine - member godbole committee to\nrenegotiate the power purchase agreement ( ppa ) signed between enron promoted\ndabhol power company ( dpc ) and the maharashtra state electricity board\n( mseb ) . \" the committee , which is to hold discussions with enron officials\nfrom houston on may 11 , has only a month ' s time for renegotiations and with\ndpc ' s termination notice threat hanging on our head , time is actually running\nout . yet there is no official to represent the union government , \" a senior\nstate government official said here on sunday . \" there are media reports that\nsolicitor general harish salve would be appointed , but we are yet to hear\nanything from their side , \" he said .\nthe official said that the state expected the centre to announce their\nrepresentative before may 11 , as it would appreciate his crucial presence in\nthe first session of discussions with enron officials , lenders and gas\nsuppliers . sources in the mantralaya added that the government had also been\nunhappy over the centre ' s rigid stand on not allowing state - owned national\nthermal power corporation ( ntpc ) to buy the excess capacity of dpc ' s total\n2 , 184 mw project . \" let ntpc and power trading corporation of india ( ptc ) come\ntogether and sell dpc ' s surlpus power . we have already mooted this\nsuggestion , but a favourable reply is yet to come from the union power\nministry , \" the official said . the official said that the centre , which was\nalso responsible for dpc project as it has provided counter guarantee to\nenron india , should form a special purpose vehicle for sale of the excess\npower to other states . the state government ' s reaction comes in wake of union\npower minister suresh prabhu ' s discussion with chief minister vilasrao\ndeshmukh in delhi few days ago . it was learnt that prabhu told deshmukh\n\" there is no question of ntpc buying power from the project since long term\nppas have been signed by ntpc with the buying states \" .\ndeshmukh had suggested that the central power utility should sell excess\npower over and above the 300 - 400 mw needed for the state from the dpc ' s 740\nmw phase - i and soon to be commissioned phase - ii of 1 , 444 mw , to other needy\nstates . considering the high cost of power generated from dpc , which during\nthe recent months has hovered around rs 7 per unit as against an average cost\nof rs 2 . 30 - 2 . 80 a unit from central and state utilities , there would be few\ntakers for the power from dabhol , the power minister reportedly said .\n\" deficit states will buy dpc power only when the cost of power is brought\ndown , \" he said , adding power ministry would facilitate wheelng of this power\nto the buyers .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard , monday , 7 may 2001\nreliance allowed to hawk power from patalganga to third parties\narijit de , s ravindran & renni abraham in mumbai\nin an unusual departure from normal practice , the maharashtra government has\nallowed the reliance group to sell power generated by its 447 - mw patalganga\npower project directly to third parties if the maharashtra state\nelectricity board ( mseb ) does not lift power . the project \u0001 , s power purchase\nagreement ( ppa ) has a clause to this effect . the state government \u0001 , s\npermission to reliance to hawk power to third parties has to be seen in the\ncontext of its dithering on forwarding to the centre the dabhol power\ncompany \u0001 , s bid for mega power status so that it could sell power to third\nparties .\ndpc sources told business standard several weeks ago that the company \u0001 , s\napplication had been pending with the chief minister \u0001 , s office for months .\nonly now has the state government authorised the godbole committee to\nnegotiate with dpc on third party sales outside the state . the dpc project\nis facing the threat of closure following mseb \u0001 , s inability to buy power from\nit , thanks to the board \u0001 , s weak financial position . not only can the\nreliance group sell power to third parties within maharashtra , but it can\nsell power to utilities outside the state . the ppa does not expressly bar it\nfrom doing so . nor does it specify the category of customers to whom power\ncan be sold . so , in effect , this suggests that the group could sell power to\nindustrial and commercial customers in maharashtra and emerge as a rival to\nthe mseb . the state electricity board derives over 80 per cent of its revenue\nfrom such consumers .\napart from captive power plants , independent power producers in india are\nallowed to sell power only to state electricity boards . they can sell power\noutside the state only if they qualify for mega power project status . with\nits 447 - mw capacity , the patalganga project is not eligible for such status\nbecause mega power rojects are supposed to have a minimum capacity of 1 , 000\nmw . speaking on the sidelines of a press conference last week , reliance\nindustries managing director anil ambani told business standard : a provision\nin third parties . ambani was answering a question on whether the mseb \u0001 , s weak\nfinancials and inability to offer escrow cover to the project as emphasised\nin the godbole committee report set up to defuse the dabhol crisis would\nderail the patalganga project .\nthe ppa does not have any express restriction as to third party sale outside\nthe state , a reliance spokesperson confirmed on friday in a faxed response\nto questions . a senior mseb official explained that the state government\ncleared private power projects some years ago on the basis of the\nunrealistically high demand projections contained in a report by a former\nmseb official . subsequently , it was realised that the state would be stuck\nwith excess power . so the reliance group was permitted to sell power to third\nparties , he said . the patalganga project along with the ispat group \u0001 , s 1 , 082\nmw bhadravati project has been put on hold till the godbole committee submits\nits second\nreport .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 7 , 2001\nno need of patalganga , bhadravati power : mseb\nthe axe seems to have finally fallen on the much - delayed reliance\nindustries - promoted patalganga and ispat industries ' bhadravati power\nprojects in maharashtra as the state electricity board has firmly told the\ngovernment that \" there is no need of these projects nor their power \" . the\nloss - making board has communicated to the government that mseb had \" no\ninterest \" in patalganga and bhadravati , as it did not have escrow - able\ncapacity and also that industrial demand for power had slowed down\ntremendously in maharashtra , state government sources said here on sunday .\n\" in last november itself , mseb had sent an official intimation to the state\ngovernment informing its decision in favour of cancellation of the two\nprojects on several grounds - - including they being unviable and\nunaffordable , \" sources said . \" reliance ' s project is no different from that of\ndpc ' s . patalganga is also naphtha - based and its ppa is on similar lines . . .\nafter the enron experience , mseb cannot even dream of another gas - based\npower plant in the state , \" a senior mseb official said . he said mseb has\nalready asked the state government not to provide escrow to both the 447 - mw\npatalganga and the 1 , 084 - mw coal - based bhadravati , \" as the us energy major\nhas almost squeezed us of all over finances \" . when contacted , mseb chairman\nvinay bansal said : \" reliance and ispat projects have been put on hold as per\nthe godbole committee ' s recommendations \" , but expressed inability to give\nfurther details .\ncurrently , bhadravati and patalganga projects have been put on hold as per\ngodbole committee report , which was set up to review the dpc - mseb ppa and\nenergy scenario in maharashtra . \" can you go ahead with the project without an\nescrow cover ? \" the committee was believed to have asked ispat and reliance\nrepresentatives , to which the reply had been negative , sources added .\nsources said , as of now , both the projects have not been able to achieve\nfinancial closure as leading financial institutions were not willing to\nfund the projects which do not have a \" guaranteed payment \" mechanism from\nmseb , which , incidentally it has promised to dpc . \" all the three were cleared\nas ' fast - track ' projects , but other than enron , reliance and ispat have been\ncaught in a quagmire , especially bhadravati , which has been hanging afire\nsince last nine years , \" they added .\nmoreover , the mseb official opined that given the current situation , if dpc\ncalls it quits from india , bhadravati was a safer bet than reliance ' s\npatalganga . patalganga ' s power would be mere 50 paise less than that of dpc ' s\nthat ranges anywhere around approximately rs 4 . 50 per unit to as high as rs\n7 , while bhadravati ' s cost could be around rs 3 . 80 to rs 4 per unit , he\ninformed . mseb ' s installed capacity ended on march 31 , 2001 , wasl 4 , 000 mw and\nit has generated 45 , 000 million units with transmission and distribution\nlosses as high as 39 per cent . ( pti )\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard , may 7 , 2001\nglobal bankers ask govt to honour dpc obligations\ntamal bandyopadhyay , surajeet dasgupta & santosh tiwary in mumbai / newdelhi\nglobal arrangers for the dabhol power company have mounted fresh pressure on\nthe finance ministry to honour the union government \u0001 , s counter - guarantee and\nhave also set strict conditions for reconsidering the termination of the\npower purchase agreement ( ppa ) between the dpc and the maharashtra state\nelectricity board ( mseb ) . in a related development , the dpc has sent a note\nto all lenders saying they would have to bear the consequences of the turn\nof events as they have prevented the dpc from serving the ppa termination\nnotice last month .\nthe lenders . in their turn , sent a statement - - prepared by the new\nyork - based legal firm white & case - - defending their stance saying they are\nworking in the best interest of the project . the lenders are expected to\nmeet in london over the next fortnight to take stock of the situation . the\ndeadline for resolving the issues are drawing to a close as 10 days of the\nthree - week reprieve have passed . at the dpc board meeting in london on may\n25 , the lenders had managed to stall the issuance of the termination\nnotice and got three weeks \u0001 , time for themselves to convince the centre as\nwell as the maharashtra government to resolve the impasse on the\ncontroversial project . in a letter to finance secretary ajit kumar dated\napril 30 , the global arrangers said the government must own up its\nresponsibility and meet its obligations without further delay . among the\nstiff conditions , set by the arrangers , are the demand that the central\ngovernment ensure payment of all the pending bills of mseb for december\n2000 , january 2001 , february 2001 and march 2001 which remain unpaid\nwithout any protest or reservation by may 7 ( monday ) .\nany payment previously made under \u0001 & protest \u0001 8 should be made free and clear of\nsuch protest or any other reservation , and the center should ensure timely\npayment of future bills by mseb , they said . meanwhile , sources said that the\nfinance secretary was expected to meet the international lenders to the\ndabhol projects in london stand on the issue . the lenders \u0001 , list of demands\nalso include asking mseb to take steps required under the existing\ncontracts to activate the escrow arrangements put in place at the time of\nfinancial close of phase ii of the project by may 7 .\nthey have demanded that the union government and the maharashtra government\nshould take all required actions to ensure that no government agency will\ntake any step to impede the operation of phase i or the construction and\noperation of phase ii without due cause . the lenders have also asked them to\nensure that the relevant customs authorities permit import of all goods and\nequipment required for the project by may 21 . csfb , anz export finance ,\nciti , bank of america and abn amro are the global arrangers for both phase i\nas well as phase ii of the project .\nthe state bank of india , which is also a global arranger for phase ii , did\nnot sign the letter . \" ten days have passed since the lenders bought three\nweeks time from the company delaying its declaration of the termination of\nthe ppa . since then , nothing has moved at the material level barring mseb ' s\npayment of the january bill to the tune of rs 134 crore under protest , \" said\na source among the global arrangers . come forward to meet its obligations\nthe lenders are planning to meet around mid - may in london and this time\nthey will be left with no choice but to give the go - ahead to the company to\nterminate the ppa unless the finance ministry comes forward to settle the\nissue , the source added . the lenders are , however , not ready to take the\nblame for any delay in the termination of ppa as implied by the company . the\nwhite & case statement said the lenders are concerned about the fate of the\nproject and they are exploring all intermediate steps before choosing the\nlast option - - termination of ppa .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nbusiness standard , saturday , 5 may , 2001\nge may pull out as dpc supplier , s ravindran in mumbai\nafter us - based bechtel , it is now the turn of general electric to review its\nparticipation as equipment supplier to the controversial 2 , 184 - mw power\nproject in maharashtra , being set up by the dabhol power company . bechtel is\nthe epc contractor to the project while ge has supplied the equipment ,\nprimarily turbines . general electric , like bechtel , also holds 10 per cent in\ndabhol power company ( dpc ) . and both bechtel and general electric are worried\nabout future payments from dpc . sources familiar with the project said that\nso far dpc has not defaulted in its payments to general electric . what is\nworrying general electric is the possible scenario after june 7 , when about\n700 mw power will be commissioned after the second phase trial runs .\ndpc and the maharashtra state electricity board ( mseb ) have been locked in a\npayments dispute for months . if mseb continues with its stance , dpc in turn\nmay not be able to pay general electric . in such a situation , ge may walk out\nof the project . a final decision will be taken only in june , said sources .\ngeneral electric did not respond to a faxed questionnaire sent by business\nstandard . senior executives at its public relations agency burson\nmarsteller roger pereira said that only dpc executives were authorised to\nspeak on the issue . the dpc spokesman declined to comment on the issue .\nthe first phase of the 740 mw has already been commissioned . after the second\nphase of 1 , 444 mwis commissioned by december , 2001 , mseb will have to pay\ndpc a minimum of rs 500 crore per month . the escrow account for this was to\nhave been made operational by april 7 , 2001 . mseb has refused to do this .\nearlier , dpc had invoked the political force majeure clause in its contract\nwith the board . mseb is now arguing that the invocation of this clause has\nabsolved dpc of all its liabilities .\nconsequently , it will not operationalise the escrow account . this casts a\nfurther shadow over dpc \u0001 , s ability to pay general electric and bechtel . this\nis worrying the lenders to the project as well . the situation has taken a\nturn for the worse with dpc practically refusing to re - negotiate the contract\nfor the second phase with the godbole panel constituted by the maharashtra\ngovernment .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nhindu businessline , may 5 , 2001\nagenda for fresh talks with enron chalked out\nofficials of the state government , maharashtra state electricity board ( mseb )\nand members of the madhav godbole committee , which recently submitted its\nreview on the dabhol power project , met here on saturday . the meeting was to\n` ` chart the agenda for renegotiation with enron officials , ' ' a senior mseb\nofficial said . enron officials were scheduled to attend this meeting but\nbacked out on may 3 . enron had informed the state government that it would\nnot accept the recommendations of the godbole committee .\n` it is understandable that the company does not find the recommendations\nacceptable . but the report is not bound to personal opinions , ' ' the official\nsaid . the next meeting to decide the direction of renegotiation process with\nenron is scheduled on may 11 .\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 6 , 2001\ngodbole panel meets sans dabhol representation\nthe godbole committee , set up for renegotiating the estranged power purchase\nagreement between us energy major enron - promoted dabhol power company and the\nstate electricity board on saturday held its first internal meeting sans\nrepresentatives of the multinational . \" it was an internal meeting to take\nstock of the current situation and decide on matter pertaining to the may 11\nmeet with officials of enron , ge , bechtel and dpc ' s foreign lenders , \" said\nstate government sources . the meeting , which lasted for almost four hours ,\ndiscussed a strategy to present the committee ' s recommendations made public\nlast month , they said .\nof the nine members of the committee , saturday ' s meeting was attended by five\nmembers - - including godbole , mseb chairman vinay bansal , state energy\nsecretary v m lal , state finance secretary sudhir shrivastava and kirit\nparekh of indira gandhi institute of developmental research . those absent\nwere hdfc chairman deepak parekh , teri director r k pachauri , former union\nenergy secretary eas sarma and yet - to - be - appointed representatives of the\ncentre and central electricity authority . the negotiating committee would\nsuggest solutions to bring down the exorbitant power tariff , separating of\nthe liquefied natural gas facility , restructuring of dpc and allowing sale of\nexcess power through central utilities mainly the national thermal power\ncorporation , said sources . ( pti\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe economic times , may 5 , 2001\nntpc not to buy power from enron : govt\nthe centre has ruled out the possibility of national thermal power\ncorporation buying power generated by us energy giant enron - promoted dabhol\npower company . union power minister suresh prabhu is learnt to have stated\nthis during the meeting with maharashtra chief minister vilasrao deshmukh\nlast month , convened by the finance minister yashwant sinha to discuss the\nenron crisis , said government sources on friday .\nprabhu had pointed out that \" there is no question of ntpc buying power from\nthe project since long - term power purchase agreements have been signed by\nntpc with the buying states \" . maharashtra chief minister vilasrao deshmukh\nduring the meeting suggested that the central power utility sell the excess\npower over and above the 300 - 400 mw needed for the state from the 740 mw\nphase - i and soon - to - be - commissioned phase - ii of 1 , 444 - mw , to other needy\nstates . when contacted , prabhu said the entire controversy over payment\ndefault by maharashtra state electricity board owing to high cost of power\ngenerated by dpc had to be resolved between the state government , and dpc and\ncentre had very limited role to play . dpc has already slapped one\nconciliation notice on the centre and three arbitration notices on the state\ngovernment over non - payment of dues amounting to rs 213 - crore - plus interest\nrate towards bills due for the months of december 2000 and january 2001 . ( pti )\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\nthe times of india , may 7 , 2001\nmseb recovers rs 3 . 06 cr arrears in one day\nin a special day - long drive , nagpur rural zone of maharashtra state\nelectricity board ( mseb ) has recovered rs 3 . 06 crore as arrears from the\ndefaulters who had to pay a handsome dividend , and disconnectedl 5 , 000\nconnections of erring customers last week . according to mseb sources , under\nthe drive , initiated by chief engineer manohar bapat , with the assistance of\nabout 5 , 000 employees including engineers , accounts staff and linesmen , a\ndoor - to - door campaign was launched to meet 25 , 000 customers , leading to the\nrecovery of the dues . power supply to 15 , 000 customers were disconnected on\nthe spot due to non - payment of arrears in chandrapur , gadchiroli , wardha ,\nbhandara , gondia and nagpur districts , it said in a release . the drive met\nwith stiff resistence from public and the police were called in at many\nplaces to assist the powermen , it added .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.012+0000", "entityId": 10852, "properties": {"text": "Subject: re : a personal favor\nthanks very much . i am attaching his resume for your review .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , may 07 , 2001 12 : 08 pm\nto : anurag . saksena @ gmacrfc . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : a personal favor\nanurag ,\ni shall talk about vikas to our it people .\ncan you send me his resume ?\nvince\n\" saksena , anurag \" on 05 / 07 / 2001 10 : 06 : 54 am\nto : \" ' vkamins @ ect . enron . com ' \"\ncc :\nsubject : a personal favor\nvince ,\ni have left a voice mail to you and will wait to talk to you personally .\nmy brother vikas , who is now in london , is trying to make a switch from\nconsulting world to working for a specific firm . over last few months , i\nhave heard of great deal about the success of enron on line business which\nfits well in the area of his expertise . i am wondering if you know of some\none in london who he can speak to regarding career opportunities .\nsince i spoke to you last , a number of things have changed . recently , my\nmanadate was broaden to include leading a charge for developing a risk\nmanagement function for both the domestic and international businesses for\ngmac . needless to say , this is exciting albeit making the life a little\nmore hectic than usual .\ntalk to you later .\nanurag\n952 - 857 - 6133\n- resl . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.016+0000", "entityId": 10853, "properties": {"text": "Subject: re : a personal favor\nanurag ,\ni shall talk about vikas to our it people .\ncan you send me his resume ?\nvince\n\" saksena , anurag \" on 05 / 07 / 2001 10 : 06 : 54 am\nto : \" ' vkamins @ ect . enron . com ' \"\ncc :\nsubject : a personal favor\nvince ,\ni have left a voice mail to you and will wait to talk to you personally . my brother vikas , who is now in london , is trying to make a switch from consulting world to working for a specific firm . over last few months , i have heard of great deal about the success of enron on line business which fits well in the area of his expertise . i am wondering if you know of some one in london who he can speak to regarding career opportunities .\nsince i spoke to you last , a number of things have changed . recently , my manadate was broaden to include leading a charge for developing a risk management function for both the domestic and international businesses for gmac . needless to say , this is exciting albeit making the life a little more hectic than usual .\ntalk to you later .\nanurag\n952 - 857 - 6133", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.021+0000", "entityId": 10854, "properties": {"text": "Subject: re : a personal favor\nthanks very much . i am attaching his resume for your review .\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com [ mailto : vince . j . kaminski @ enron . com ]\nsent : monday , may 07 , 2001 12 : 08 pm\nto : anurag . saksena @ gmacrfc . com\ncc : vince . j . kaminski @ enron . com\nsubject : re : a personal favor\nanurag ,\ni shall talk about vikas to our it people .\ncan you send me his resume ?\nvince\n\" saksena , anurag \" on 05 / 07 / 2001 10 : 06 : 54 am\nto : ? ? \" ' vkamins @ ect . enron . com ' \"\ncc :\nsubject : ? a personal favor\nvince ,\ni have ? left a voice mail to you and will wait to talk to you personally .\nmy brother ? vikas , who is now in london , is trying to make a switch from\nconsulting world to ? working for a specific firm . over last few months , i\nhave heard of great deal ? about the success of enron on line business which\nfits well in the area of his ? expertise . i am wondering if you know of some\none in london who he can speak to ? regarding career opportunities .\nsince ? i spoke to you last , a number of things have changed . recently , my\nmanadate was ? broaden to include leading a charge for developing a risk\nmanagement function ? for both the domestic and international businesses for\ngmac . needless to say , ? this is exciting albeit making the life a little\nmore hectic than ? usual .\ntalk ? to you later .\nanurag\n952 - ? 857 - 6133\n?\n- resl . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.025+0000", "entityId": 10855, "properties": {"text": "Subject: re : a personal favor\nanurag ,\ni shall talk about vikas to our it people .\ncan you send me his resume ?\nvince\n\" saksena , anurag \" on 05 / 07 / 2001 10 : 06 : 54 am\nto : \" ' vkamins @ ect . enron . com ' \"\ncc :\nsubject : a personal favor\nvince ,\n?\ni have left a voice mail to you and will wait to talk to you personally . my\nbrother vikas , who is now in london , is trying to make a switch from\nconsulting world to working for a specific firm . over last few months , i\nhave heard of great deal about the success of enron on line business which\nfits well in the area of his expertise . i am wondering if you know of some\none in london who he can speak to regarding career opportunities .\n?\nsince i spoke to you last , a number of things have changed . recently , my\nmanadate was broaden to include leading a charge for developing a risk\nmanagement function for both the domestic and international businesses for\ngmac . needless to say , this is exciting albeit making the life a little more\nhectic than usual .\n?\ntalk to you later .\n?\nanurag\n?\n952 - 857 - 6133", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.030+0000", "entityId": 10856, "properties": {"text": "Subject: re : schedule and more . .\njinbaek ,\nmay 30 sounds good . i shall inform our hr department .\ni don ' t see any project i could get going with your advisor on such a short\nnotice .\nwhen you come here you can determine in what area he could make\nthe biggest contribution to enron . i shall call or e - mail\nhim independently and talk to him .\nvince\n\" jinbaek kim \" on 05 / 07 / 2001 02 : 25 : 53 am\nto :\ncc :\nsubject : schedule and more . .\ndr . kaminski ,\ni think i ' ll be able to start work from the last week of may ,\nbut not from monday ,\nprobably , i ' ll be able to work from 5 / 30 ( wed ) .\nwill it be good ? i know it is not that much earlier than i mentioned . . 6 / 4\ni am sorry .\nand actually , there is an e - business conference at haas school of business ,\norganized by my advisor\ncould you distribute the link and the attached invitation letter to groups\ninterested in e - business and especially procurement ?\nthe link is as following .\ni am afraid you might forgot this i told you in the last email . . .\nmy advisor ( arie segev at haas school of business ; segev @ haas . berkeley . edu )\nwants me to ask whether you have any idea on joint research with him\nduring the summer , while i am staying there .\nhis interest is in e - business . . ( what else . . ? )\nand has expertise in e - procurement system and marketplace . . .\nxml based standard such as obi , cxml , xcbl , rosettanet , biztalk . .\nsystem interoperability study , auction and negotiation , workflow system ,\ne - catalog management , digital signature , edi , etc etc . . .\nmany technical aspects of e - business . . .\nhe wants to do some kind of technical case study\nthat is beneficial for both enron and him .\nhe may travel one or two times to houston to have a meeting during the\nsummer .\n( and to be frankly , this will be good for me too ,\nbecause i can have a meeting for my dissertation while he is in houston . . )\ncould you think about the possibility of joint research , with him ?\nthank you . .\nsincerely ,\njinbaek\n- fcp - invite . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.035+0000", "entityId": 10857, "properties": {"text": "Subject: re : schedule and more . .\njinbaek ,\nmay 30 sounds good . i shall inform our hr department .\ni don ' t see any project i could get going with your advisor on such a short\nnotice .\nwhen you come here you can determine in what area he could make\nthe biggest contribution to enron . i shall call or e - mail\nhim independently and talk to him .\nvince\n\" jinbaek kim \" on 05 / 07 / 2001 02 : 25 : 53 am\nto :\ncc :\nsubject : schedule and more . .\ndr . kaminski ,\ni think i ' ll be able to start work from the last week of may ,\nbut not from monday ,\nprobably , i ' ll be able to work from 5 / 30 ( wed ) .\nwill it be good ? i know it is not that much earlier than i mentioned . . 6 / 4\ni am sorry .\nand actually , there is an e - business conference at haas school of business ,\norganized by my advisor\ncould you distribute the link and the attached invitation letter to groups\ninterested in e - business and especially procurement ?\nthe link is as following .\ni am afraid you might forgot this i told you in the last email . . .\nmy advisor ( arie segev at haas school of business ; segev @ haas . berkeley . edu )\nwants me to ask whether you have any idea on joint research with him\nduring the summer , while i am staying there .\nhis interest is in e - business . . ( what else . . ? )\nand has expertise in e - procurement system and marketplace . . .\nxml based standard such as obi , cxml , xcbl , rosettanet , biztalk . .\nsystem interoperability study , auction and negotiation , workflow system ,\ne - catalog management , digital signature , edi , etc etc . . .\nmany technical aspects of e - business . . .\nhe wants to do some kind of technical case study\nthat is beneficial for both enron and him .\nhe may travel one or two times to houston to have a meeting during the\nsummer .\n( and to be frankly , this will be good for me too ,\nbecause i can have a meeting for my dissertation while he is in houston . . )\ncould you think about the possibility of joint research , with him ?\nthank you . .\nsincerely ,\njinbaek\n- fcp - invite . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.040+0000", "entityId": 10858, "properties": {"text": "Subject: schedule and more . .\ndr . kaminski ,\ni think i ' ll be able to start work from the last week of may ,\nbut not from monday ,\nprobably , i ' ll be able to work from 5 / 30 ( wed ) .\nwill it be good ? i know it is not that much earlier than i mentioned . . 6 / 4\ni am sorry .\nand actually , there is an e - business conference at haas school of business ,\norganized by my advisor\ncould you distribute the link and the attached invitation letter to groups\ninterested in e - business and especially procurement ?\nthe link is as following .\ni am afraid you might forgot this i told you in the last email . . .\nmy advisor ( arie segev at haas school of business ; segev @ haas . berkeley . edu )\nwants me to ask whether you have any idea on joint research with him\nduring the summer , while i am staying there .\nhis interest is in e - business . . ( what else . . ? )\nand has expertise in e - procurement system and marketplace . . .\nxml based standard such as obi , cxml , xcbl , rosettanet , biztalk . .\nsystem interoperability study , auction and negotiation , workflow system ,\ne - catalog management , digital signature , edi , etc etc . . .\nmany technical aspects of e - business . . .\nhe wants to do some kind of technical case study\nthat is beneficial for both enron and him .\nhe may travel one or two times to houston to have a meeting during the\nsummer .\n( and to be frankly , this will be good for me too ,\nbecause i can have a meeting for my dissertation while he is in houston . . )\ncould you think about the possibility of joint research , with him ?\nthank you . .\nsincerely ,\njinbaek\n- fcp - invite . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.045+0000", "entityId": 10859, "properties": {"text": "Subject: another bet\nvince\ni here you are running abook on how quickly we can implement convolution var for power and since i am up against a summer deadline for this i felt i should take the other side .\nso how about i buy you dinner if i get it done ?\nrgds\ndp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.053+0000", "entityId": 10860, "properties": {"text": "Subject: another bet\nvince\ni here you are running abook on how quickly we can implement convolution var\nfor power and since i am up against a summer deadline for this i felt i\nshould take the other side .\nso how about i buy you dinner if i get it done ?\nrgds\ndp", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.060+0000", "entityId": 10861, "properties": {"text": "Subject: re : course instructor\nclare ,\ni regret to inform you that i have to decline your invitation due\nto prior commitments on the same days .\nvince kaminski\n- - - - - original message - - - - -\nfrom : clare fitzgerald [ mailto : claref @ marcusevansch . com ]\nsent : monday , may 07 , 2001 8 : 48 pm\nto : ' vkamins @ enron . com '\nsubject : course instructor\nvince ,\ni am writing in regards to an energy derivatives training course i am\ndeveloping . i would like to invite you to be an instructor for the course .\na preliminary agenda is attached . brett humphreys from risk capital\nmanagement is teaching on day one , and i was wondering if you would be\ninterested in covering all or part of day two . the topics outlined here can\nbe modified based on your feedback .\nour training courses are structured for an interactive , classroom - type\nsetting . we limit the audience to 25 people and bring in 2 - 3 instructors to\ncover the material over the course of two days .\ni will follow up but please let me know what you think .\n>\nthank you ,\nclare fitzgerald\ndirector , training courses\nmarcus evans\n312 - 540 - 3000 x 6785\n- agenda . doc >", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.067+0000", "entityId": 10862, "properties": {"text": "Subject: pravas sud\nbilly ,\ni would like you to ask for a favor for one of the rice students ,\npravas sud . he is interested in a summer internship . his phone\nnumber is ( 713 ) 283 5825 , ( 832 ) 647 8738 ( c ) .\nvince\np . s . a phone message explaining the special circumstances\nfollows . it ' s very important for enron .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.071+0000", "entityId": 10863, "properties": {"text": "Subject: new invoice for energy and weather\nvince ,\n?\nplease find attached a replacement invoice for invoice number 215 . ? this\ninvoice includes the correction in charges for the weather course , and for\nonly one attendee for the energy derivatives course .\n?\nif you should have any questions , please contact me .\n?\nsincerely ,\njulie\n- enron 283 _ 9 _ 04 _ 01 . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.076+0000", "entityId": 10864, "properties": {"text": "Subject: valuation methodology\nwe ' ve had a request from aa to provide them with some sort of write - up or documentation from our research group on the valuation methodology used on the contingent issuance instrument for 18 million shares that was a part of the raptor transaction completed at the end of march . apparently , this request has come from aa ' s expert in this area ( i believe that his name is dechundra , or something like that . i ' ve probably destroyed the spelling on that . you guys are probably very familiar with him . ) anyway , is there such documentation that we can provide them easily ? if so , let me know so that we can try to get aa finished with their review of the transaction . in talking to our contacts at aa , i believe that their expert will be wanting to talk to you after he reviews the methodology documentation . thanks ,\nron", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.082+0000", "entityId": 10865, "properties": {"text": "Subject: re : ibuyit user set up\ndiane :\nwe have had quite a few problems with this ibuyit procedure . i have submitted several invoices for payment since may lst and\nhave reveived none of them back for coding and approval . i am afraid the vendors are going to be coming after us !\nwe also have had approval problems . i submitted a hardware request and it went to every manager in our group . i think we\nhave finally gotten that straightened out for the present .\nthe requestors and coders would be :\nshirley crenshaw\nanita dupont\nkevin moore\nthe only approved for our group is vince j . kaminski ( co 0413 - cc 107043 )\nif you need anything else , please let me know .\nshirley\n- - - - - original message - - - - -\nfrom : fellers , diane r .\nsent : thursday , may 10 , 2001 4 : 56 pm\nto : kaminski , vince j .\ncc : crenshaw , shirley\nsubject : fw : ibuyit user set up\nvince ,\nper the request below , i need a list of people you would like to serve as approvers and requestors for the research group for the ibuyit program . of course , they want this as soon as possible . please let me know who you would like to include .\nthanks ,\ndiane\nx 5 - 7996\n- - - - - original message - - - - -\nfrom : vandor , david\nsent : thursday , may 10 , 2001 4 : 18 pm\nto : fellers , diane r . ; guilliams , lisa ; heath , holly ; nguyen , vivian\ncc : leschber , edie\nsubject : fw : ibuyit user set up\ncould you please gather this info for all your support departments ?\nin case you don ' t know , ibuyit is the web site where employees can purchase , code , and approve invoices for items online .\nthanks ,\ndavid\n- - - - - original message - - - - -\nfrom : day , misti\nsent : thursday , may 10 , 2001 3 : 43 pm\nto : becton , pam ; brown , sarah ; cameron , marlene ; carter , carol ; coffey jr . , jim ; davis , angelic ; dawson , brian ; east , laynie ; fredericks , kristi ; hanslip , david ; hardy , stacy ; hardy , trey ; harris , paula ; helton , susan ; killen , faith ; lamb , marnie ; leschber , edie ; long , lindsay ; mayeux , cassandra ; orsak , susie ; patterson , grant ; pierce , jody ; schwertner , brian ; vandor , david ; vargas , hope ; vu , nancy h . ; washington , deanna ; wolfe , stephen\nsubject : ibuyit user set up\nthe ibuyit team is trying to get a complete list of approvers and requestors for this program .\nfor each of your teams , please send me the following :\nnames of approvers ( team head , cc owner , etc . )\nnames of requestors ( admins , anyone who would be ordering )\ncost center\nthe ibuyit team wants to keep the number of requestors and approvers limited , but each team will need more than one approver . every requestor will have a pre - approved limit for each transaction . approvers will be required to go into the system and approve all transactions that exceed that limit in order for the transaction to be completed .\nunfortunately , we need this information as soon as possible ( monday afternoon at the latest ) !\nplease feel free to call me with any questions .\nthanks ,\nmisti\nx 39525", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.088+0000", "entityId": 10866, "properties": {"text": "Subject: a letter i sent\nfiona ,\n?\ni sent you a letter a while ago to obtain enron ' s approval of the text . ? are\nyou still ? my contact for this ? ? if not , please let me know who i should send\nthe ? promotional material for approval .\n?\nthanks ,\njulie brennan\n?\nlacima group\n- covering letter for book brochures - final . doc", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.092+0000", "entityId": 10867, "properties": {"text": "Subject: re : new invoice for energy and weather\nvince ,\nthanks !\n?\ncan you also let me know who my contact is for getting copy approved by\nenron so we can use it in our publications ? ? i will try fiona grant again ,\nbut i ' m not getting anywhere .\n?\nthanks ,\njulie\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\nsent : tuesday , april 10 , 2001 9 : 16 pm\nsubject : re : new invoice for energy and weather\njulie ,\ni signed the request for a check today .\nvince\n\" julie \" on 05 / 09 / 2001 04 : 47 : 05 pm\nplease respond to \" julie \"\nto : ? ? \" vincejkaminski \"\ncc : ? ?\nsubject : ? new invoice for energy and weather\nvince ,\nplease find attached a replacement invoice for invoice number 215 . ? this\ninvoice includes the correction in charges for the weather course , and for\nonly one attendee for the energy derivatives course .\nif you should have any questions , please contact me .\nsincerely ,\njulie\n( see attached file : enron 283 _ 9 _ 04 _ 01 . doc )", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.097+0000", "entityId": 10868, "properties": {"text": "Subject: re : got a hold of fiona grant\ni think it was the copying of your name on my latest email ; - )\n?\nthanks for your help\n- - - - - original message - - - - -\nfrom : vince . j . kaminski @ enron . com\nto : julie\nsent : wednesday , april 11 , 2001 6 : 37 pm\nsubject : re : got a hold of fiona grant\njulie ,\nyou have more luck than myself . i called a few times\nand left messages on her voice mail .\nvince\n\" julie \" on 05 / 11 / 2001 07 : 04 : 40 am\nplease respond to \" julie \"\nto : ? ? \" vincejkaminski \"\ncc :\nsubject : ? got a hold of fiona grant\nvince ,\njust to let you know , i finally got in touch with fiona grant .\nj", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.102+0000", "entityId": 10869, "properties": {"text": "Subject: fea announces the release of @ energy 2 . 1 .\n05 / 14 / 2001\nenron north america corp .\nvince kaminski\n1400 smith street\n30 th floor , rm . 3036 b\nhouston , tx 77251 - 1188\n1 713 - 853 - 3848\ndear vince kaminski ,\nthis is to inform you of the release of @ energy 2 . 1 . ftp download\ninstructions are available immediately . the download instructions are\nincluded at the end of this email . please see below for more information\nregarding this new release . .\nfea is pleased to enclose your new version of @ energy / erglib . the\naccompanying documentation contains installation and other information .\nhere is an overview of the new and changed features since version 2 . 0 .\n@ energy ( forward curve ) no change .\n@ energy ( basics ) a control variate methodology hull ( 1997 ) has been\nimplemented for valuation of american options ( opt ) , black and\nmean - reverting models . it greatly improves accuracy at minimal cost in\nspeed . all models now supports new scalar risk measures corresponding to\nparallel displacement delta , hedge , and gamma . average price / strike options\nnow support an alternative way of computing theta . the definition of gamma\ncurves has been modified for all models .\n@ energy ( advanced ) a faster and more accurate methodology is used to value\nspread options . models affected are spreadopt , stripspreadopt , optspreadopt ,\noptstripspreadopt . the new methodology dramatically improves speed . all\nmodels now supports new scalar risk measures corresponding to parallel\ndisplacement delta , hedge , and gamma . average price / strike options now\nsupport an alternative way of computing theta . the definition of gamma\ncurves has been modified for all models .\n@ energy ( swing ) the definition of gamma curves has been modified for all\nmodels .\n@ energy ( weather ) no change .\nsee the file fea \\ energy \\ ergnote . txt in your distribution for a list of bug\nfixes .\nhere is an overview of the new and changed features since version 1 . 6 .\n@ energy ( forward curve )\njump parameters are now calibrated for use in other @ energy functions .\ninputs and outputs to powercalib and comcalib have changed . see the\ncorresponding function syntax in the user guide for additional information .\n35 - 40 % speed improvement . the module is now out of beta .\n@ energy ( basics )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse indexswap , exoticswap , or optindexswap with floating price linked to a\nseries of futures dates , such futures dates need not be close to dates\nspecified in the forward curve input . a new utility function , pathutil ,\nallows you to simulate and visualize price paths consistent with the models\nsupported by @ energy . 25 - 30 % speed improvement .\n@ energy ( advanced )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse optdiffswap or diffswap with floating price linked to a series of\nfutures dates , such futures dates need not be close to dates specified in\nthe forward curve input . calspreadopt now allows for the specification of\ntwo different mean reversion rates . 30 - 35 % speed improvement .\n@ energy ( swing )\nswingopt and stripswingopt now allow for valuation of swing straddle\ncontracts with overall load constraints . 65 - 70 % speed improvement . the\nmodule is now out of beta .\n@ energy ( weather )\n30 - 35 % speed improvement .\nsee the file fea \\ energy \\ ergnote . txt in your distribution for a list of bug\nfixes .\nif you are a user of the erglib library , please be aware of possible\nbackward compatibility issues in calls to eapo , easo , espreadapo ,\nespreadaso , and ecrackapo . see fea \\ energy \\ ergnote . txt for additional\ndetails .\nhere is an overview of the new and changed features since version 1 . 5 .\n@ energy ( basics )\neuropean options and strips of european options now support valuation via a\njump diffusion model ( see opt and stripopt functions ) . average price options\n( see the apo , spreadapo , crackapo functions ) , and average strike options\n( see the aso , spreadaso functions ) now allow for a direct input of the\nfixing dates .\n@ energy ( advanced )\nincludes two new functions , optstripopt and optstripspreadopt for valuation\nof complex compound options .\nif you are a user of the erglib library , please be aware of backward\ncompatibility issues in calls to eapo , easo , espreadapo , espreadaso , and\necrackapo . see fea \\ energy \\ ergnote . txt for additional details .\nhere is an overview of the new and changed features since version 1 . 4 .\n@ energy ( forward curve )\n@ energy ( forward curve ) is the new module which includes functions designed\nto generate forward curves , volatility curves and mean reversion rates used\nin many other @ energy functions . module in beta release .\n@ energy ( basics )\napo ' s and aso ' s : bug fixed when avg _ starts prompt .\ntype \" quit \" .\nthe file will be downloaded into the directory at which you entered the ftp\nsite .\ndouble click on the exe and follow the instructions on the screen .\nthere is also a readme file which contains installation instructions .\nyou may wish to print this out for easy reference .\nn . b . : the password is only valid until the first friday of next month .\nif you have any questions please feel free to contact us . we appreciate this\nopportunity to be of continuing service to enron north america corp . .\nregards ,\nerin hopkins\nadministrative assistant\nfinancial engineering associtates , inc .\ntel : + 1 . 510 . 548 . 6200\nmailto : info @ fea . com\nor\nmailto : support @ fea . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.109+0000", "entityId": 10870, "properties": {"text": "Subject: bachelier finance society congress , crete 2002\ndear dr kaminsky ,\non behalf of the scientific committee of the 2 nd world congress of the\nbachelier finance society , it is my pleasure to invite you to give one of\nthe plenary lectures .\nthe bachelier finance society came into being in 1996 by the initiative of\nmathematical finance researchers who found the need to create an\norganization where academia and practitioners would meet and exchange\nideas spanning on the crossroads between finance , economics , econometrics ,\ninsurance and mathematics .\nthe conference is the society ' s second biannual meeting and it will take\nplace in the island of crete , from june 12 to june 15 , 2002 .\nthe other members of the scientific committee are g . constantinides ,\nm . davis , f . delbaen , d . duffie , h . foellmer , m . jeanblanc and e . platen .\neither myself or any other member of the committee would be happy to\ndiscuss with you about the conference and the society .\ncrete is one of the most beautiful greek islands . the conference will take\nplace in a resort in xersonissos , a picturesque site close to irakleion\nand knossos . the airfare ( economy class ) and all local expenses ( lodging ,\nmeals and local transportation ) will be covered .\nwe will all be honored by your presence .\nsincerely ,\nthaleia zariphopoulou\nchair of the scientific committee\nv . n . neuhaus professor\ndpts of mathematics and msis\nthe university of texas at austin\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.114+0000", "entityId": 10871, "properties": {"text": "Subject: directions to the tamiment resort and conference center , location\nof the 20 th annual conference\ndear participants :\nhere are the directions to the tamiment :\nfrom new york fax : 973 - 353 - 1348\nhttp : / / www . rci . rutgers . edu / ~ crri\ncrri @ andromeda . rutgers . edu\ncenter for research in regulated industries\nrutgers university - graduate school of management\n180 university avenue , room 200 p\nnewark , nj 07102 - 1897\nphone : 973 - 353 - 5761 ; fax : 973 - 353 - 1348\nhttp : / / www . rci . rutgers . edu / ~ crri\ncrri @ andromeda . rutgers . edu\n", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.119+0000", "entityId": 10872, "properties": {"text": "Subject: entouch newsletter\nbusiness highlights\nenron industrial markets\nenron industrial markets announced the signing of definitive agreements with huntco , inc . under which over a 15 - year period enron will provide inventory price risk management services and will eventually provide more than 600 , 000 tons per year of hot - rolled , cold - rolled and galvanized steel products to huntco steel . the agreements provide enron access to huntco ' s network of steel distribution centers nationwide . the agreements also provide for enron ' s acquisition of huntco ' s cold rolling and certain coil pickling operations in blytheville , arkansas .\nthese transactions with huntco have the potential to fundamentally change the way steel is bought and sold in the united states . it gives enron immediate access to physical steel and positions enron geographically to serve the steel industry in a variety of ways . in addition to providing physical products on both a spot and term basis , eim ' s goals for the steel industry include developing commodity risk management products , providing structured finance products and establishing the market - making capabilities that enron has brought to the natural gas , power and other commodity markets .\nenron north america - upstream products\nupstream products has partnered with duke energy field services ( defs ) to close a 20 - year ngl exchange and transportation deal with formosa hydrocarbons and williams energy field services to handle raw make product from the williams markham plant . formosa hydrocarbons is building a 40 , 000 bpd fractionator to handle this and other gulf coast ngl production . the accompanying pipeline will be known as the seabreeze pipeline system and will be constructed by defs . texas brine llc will provide ngl storage services for formosa hydrocarbons on this system . primary production for this system is coming from the boomvang nansen field in the deepwater gom and will be the first deepwater gom production to come onshore in texas .\nupstream products has also worked to arrange a 20 - year transportation lease agreement on the dean pipeline ( owned by teppco ) for refinery grade propylene service to be utilized by formosa plastics . coupled with this transaction , enron clean fuels has entered into a propylene storage agreement with formosa plastics to utilize ecf ' s mt . belvieu storage facilities . in addition , enron global markets has been able to amend its current transportation agreement with teppco to prematurely terminate a take - or - pay obligation and realize additional transportation revenues from interim ngl production coming from the williams markham to be delivered to mt . belvieu .\nupon close , upstream products was monetized out of its initial position by defs and retained a risk - free net profits position on the seabreeze pipeline going forward for an additional 20 , 000 - 40 , 000 bpd of excess capacity on the system .\nena west power\nsouthwest power , an ena affiliate , signed a 222 mw 15 - year tolling agreement with allegheny energy supply for all of the output of southwest ' s las vegas expansion project , scheduled for completion in september , 2002 . with the tolling agreement done and construction underway , the project will now be marketed to qualified generators .\nin the news\n\" to truly understand enron ' s jeffrey skilling - the hypersmart , hyperconfident chief executive of what may now be the largest energy trading company on the planet - head to your local video store and check out that classic american cinema , wayne ' s world . at 15 , skilling helped launch a no - budget television station in aurora , illinois - the very thing that mike myers and dana carvey so famously spoofed on saturday night live and in two movies . the tv skit even begins with a sketch of a teenage cameraman , the role of the real - life skilling . \" - - - randall lane , worth magazine . may 2001 .\ncalgary , alberta - - enron canada has settled its lawsuit with ngx , canadian enerdata , om gruppen and richard zarzeczny , regarding the compilation and methodology for calculating the alberta natural gas price indices published by the canadian gas price reporter . by the terms of the settlement there will be a joint press release issued regarding the settlement , which is to be the only public communication regarding the matter unless agreed to by all parties . otherwise the settlement is confidential to the parties . accordingly , there is to be no formal or informal discussion with media , colleagues , competitors , counterparties or otherwise .\nwelcome\nnew hires\negm - salil pradhan , randy o ' conner , ricardo charvel , greg fields , ken newman , john ashman , rick cantrell , tim klaiber , trevor woods ,\neim - tim asterman , maxine leclaire , jerry newton , philip siewert , janamon johnson , darralyn briskey , theodore rogers ,\nena - rae meadows , tiffany winship , adrianne engler , kimberly yates , jackie verity ,\ntransfers ( to or within )\nena - christa winfrey , mario alonso , paul rizo - patron , nick ploitis , misti day , robert cothran , susan wilson , diane cutsforth , david owen\negm - mark friedman , john groves , deirdre mccaffrey , william windle\nenrononline statistics\nbelow are the latest figures for enrononline as of may 9 , 2001 .\n* total life to date transactions > 963 , 575\n* life to date notional value of transactions > $ 579 billion\nnuggets & notes\nreminder : brown bag lunch , thursday , may 17 at 11 : 30 am in 5 c 2 . the speaker is michael l . miller discussing principal investments .\n\" historically , newsprint has been sold under strong relationships as a highly differentiated , branded product to \" very discriminating \" buyers at newspaper publishers . eim believed differently . by the end of march , eim had succeeded in closing on its 2 nd newsprint mill , making it the 7 th largest newsprint manufacturer in north america . remarkably , in just 2 months , eim ' s newsprint team has succeeded in closing $ 100 mm total notional value \" enron commodity style \" fixed price contracts with terms of 1 to 5 years ? . . and they said it wasn ' t a commodity . \"\nrodney malcolm - vice president , forest products sales and marketing\ntravel tip of the week : book flights 7 days in advance . the cost savings can be considerable if you plan ahead - at least 7 days .\nfor example : houston to portland\nless than 7 days : $ 1 , 652\n7 day advance ticketing $ 324\ncongratulations to kimberly and eric thode , director of ena public relations . they are the proud parents of whitney marie , born on may 3 . she weighed 8 lbs . 8 oz .\ncongratulations to proud parents nettelton and louise kitchen , coo , enron americas . their son , scott william , was born on may 9 and weighed 9 lbs . 1 oz .\nnews from the global flash\nenron closes major coal deal in germany\nafter almost six months of negotiations , enron ' s coal team has signed a contract with stadtwerke bremen to supply this major german municipality with coal until 2006 . under the deal structure , enron will deliver a total of 4 . 6 million tonnes of coal - equivalent to an overall contract volume of almost $ 200 million ( dm 440 million ) .\nthe agreement represents enron ' s first significant long - term coal supply deal in germany . the annual contractual volume amounts to around 3 % of total german coal imports and provides us with continuous volume flow in northern germany , enabling us to grow our position in the market .\nparallel to this deal , enron also entered into a separate agreement with hms bergbau agentur , a company specialising in polish exports . under this agreement , hms will be the handling agent and a potential supplier of polish coal to us over the lifetime of the contract .\ncongratulations to the whole team involved : sven becker , manfred ungethum , cornelia luptowitsch , peter bradley , jez peters and michael schuh .\nlegal stuff\nthe information contained in this newsletter is confidential and proprietary to enron corp . and its subsidiaries . it is intended for internal use only and should not be disclosed .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.125+0000", "entityId": 10873, "properties": {"text": "Subject: new mexico energy graphic presentations - cera report\ntitle : new mexico energy graphic presentations\ne - mail category : report\ncera knowledge area ( s ) :\nmexico energy - http : / / www 20 . cera . com / eprofile ? u = 35 & m = 2396\ncera is pleased to announce some new enhancements to the mexico energy advisory\nservice website .\nin addition to recent research and upcoming events , the mexico service is\nincorporating new features including rich media presentations .\nareas of focus for these presentations include :\n* the energy dialogue : players and issues ,\n* mexico energy reform progress update : electric power , and\n* mexico energy reform progress update : natural gas\nto view these presentations , you must have the flash player software installed\non your computer . the free macromedia flash player can be downloaded at :\npl _ prod _ version = shockwaveflash\nwe encourage you to visit the mexico energy website today to obtain cera ' s\nindependent perspective on mexican energy market issue via a new medium !\nthese graphics presentations are presented under the market outlook area of the\nmexican energy website at :\ncera ' s spring 2001 roundtable event dates and agendas are now available\nat http : / / www 20 . cera . com / event\nto make changes to your cera . com profile go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2001 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.129+0000", "entityId": 10874, "properties": {"text": "Subject: cera conference call playback now available - cera conference call\nplayback\ntitle : regulatory scorecard for power : who ' s on first ? what ' s on second ?\nurl ( s ) :\nin a may 17 , 2001 , cera conference call and web presentation , amy biehl , sharon\nreishus , and dan mahoney discussed :\nregulatory scorecard for power : who ' s on first ? what ' s on second ?\n* has the dust finally settled from the backlash of the california power crisis\non other states ' efforts to restructure the electric industry ?\n* where do congress and the bush administration stand on electric industry\nreform ?\n* status of retail competition for electric power and natural gas\nplease follow above url to view and listen to a replay of this cera multimedia\nconference call . when the premiere conferencing placeware window opens , simply enter your name and click the \" view \" button . a \" recording key code \" is not required .\nhosted by premiere conferencing .\n* * end * *\ne - mail category : conference call playback\ncera knowledge area ( s ) : north american power , retail energy\ncera ' s spring 2001 roundtable event dates and agendas are now available\nat http : / / www 20 . cera . com / event\nto make changes to your cera . com profile go to :\nforgot your username and password ? go to :\nhttp : / / www 20 . cera . com / client / forgot\nthis electronic message and attachments , if any , contain information\nfrom cambridge energy research associates , inc . ( cera ) which is\nconfidential and may be privileged . unauthorized disclosure , copying ,\ndistribution or use of the contents of this message or any attachments ,\nin whole or in part , is strictly prohibited .\nterms of use : http : / / www 20 . cera . com / tos\nquestions / comments : webmaster @ cera . com\ncopyright 2001 . cambridge energy research associates", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.134+0000", "entityId": 10875, "properties": {"text": "Subject: vince ,\nhere is why analytical var does not work for non - normal variables .\nrakesh reviewed this argument as well .\ntanya", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.139+0000", "entityId": 10876, "properties": {"text": "Subject: fw : fea announces the release of @ energy 2 . 1 .\nchris ,\nfea just released a new version of @ energy 2 . 1 . could you update it with the new version ?\nhopefully it will not take you too much time .\nas always , i value your work and appreciate your help .\nzimin\n- - - - - original message - - - - -\nfrom : kaminski , vince j\nsent : tuesday , may 15 , 2001 8 : 37 am\nto : lu , zimin\nsubject : fw : fea announces the release of @ energy 2 . 1 .\n- - - - - original message - - - - -\nfrom : \" erin hopkins \" @ enron [ mailto : imceanotes - + 22 erin + 20 hopkins + 22 + 20 + 3 cerin + 40 fea + 2 ecom + 3 e + 40 enron @ enron . com ]\nsent : monday , may 14 , 2001 5 : 47 pm\nto : kaminski , vince j\nsubject : fea announces the release of @ energy 2 . 1 .\n05 / 14 / 2001\nenron north america corp .\nvince kaminski\n1400 smith street\n30 th floor , rm . 3036 b\nhouston , tx 77251 - 1188\n1 713 - 853 - 3848\ndear vince kaminski ,\nthis is to inform you of the release of @ energy 2 . 1 . ftp download\ninstructions are available immediately . the download instructions are\nincluded at the end of this email . please see below for more information\nregarding this new release . .\nfea is pleased to enclose your new version of @ energy / erglib . the\naccompanying documentation contains installation and other information .\nhere is an overview of the new and changed features since version 2 . 0 .\n@ energy ( forward curve ) no change .\n@ energy ( basics ) a control variate methodology hull ( 1997 ) has been\nimplemented for valuation of american options ( opt ) , black and\nmean - reverting models . it greatly improves accuracy at minimal cost in\nspeed . all models now supports new scalar risk measures corresponding to\nparallel displacement delta , hedge , and gamma . average price / strike options\nnow support an alternative way of computing theta . the definition of gamma\ncurves has been modified for all models .\n@ energy ( advanced ) a faster and more accurate methodology is used to value\nspread options . models affected are spreadopt , stripspreadopt , optspreadopt ,\noptstripspreadopt . the new methodology dramatically improves speed . all\nmodels now supports new scalar risk measures corresponding to parallel\ndisplacement delta , hedge , and gamma . average price / strike options now\nsupport an alternative way of computing theta . the definition of gamma\ncurves has been modified for all models .\n@ energy ( swing ) the definition of gamma curves has been modified for all\nmodels .\n@ energy ( weather ) no change .\nsee the file fea \\ energy \\ ergnote . txt in your distribution for a list of bug\nfixes .\nhere is an overview of the new and changed features since version 1 . 6 .\n@ energy ( forward curve )\njump parameters are now calibrated for use in other @ energy functions .\ninputs and outputs to powercalib and comcalib have changed . see the\ncorresponding function syntax in the user guide for additional information .\n35 - 40 % speed improvement . the module is now out of beta .\n@ energy ( basics )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse indexswap , exoticswap , or optindexswap with floating price linked to a\nseries of futures dates , such futures dates need not be close to dates\nspecified in the forward curve input . a new utility function , pathutil ,\nallows you to simulate and visualize price paths consistent with the models\nsupported by @ energy . 25 - 30 % speed improvement .\n@ energy ( advanced )\ndifferent interpolation schemes on forward prices are now supported . if you\nuse optdiffswap or diffswap with floating price linked to a series of\nfutures dates , such futures dates need not be close to dates specified in\nthe forward curve input . calspreadopt now allows for the specification of\ntwo different mean reversion rates . 30 - 35 % speed improvement .\n@ energy ( swing )\nswingopt and stripswingopt now allow for valuation of swing straddle\ncontracts with overall load constraints . 65 - 70 % speed improvement . the\nmodule is now out of beta .\n@ energy ( weather )\n30 - 35 % speed improvement .\nsee the file fea \\ energy \\ ergnote . txt in your distribution for a list of bug\nfixes .\nif you are a user of the erglib library , please be aware of possible\nbackward compatibility issues in calls to eapo , easo , espreadapo ,\nespreadaso , and ecrackapo . see fea \\ energy \\ ergnote . txt for additional\ndetails .\nhere is an overview of the new and changed features since version 1 . 5 .\n@ energy ( basics )\neuropean options and strips of european options now support valuation via a\njump diffusion model ( see opt and stripopt functions ) . average price options\n( see the apo , spreadapo , crackapo functions ) , and average strike options\n( see the aso , spreadaso functions ) now allow for a direct input of the\nfixing dates .\n@ energy ( advanced )\nincludes two new functions , optstripopt and optstripspreadopt for valuation\nof complex compound options .\nif you are a user of the erglib library , please be aware of backward\ncompatibility issues in calls to eapo , easo , espreadapo , espreadaso , and\necrackapo . see fea \\ energy \\ ergnote . txt for additional details .\nhere is an overview of the new and changed features since version 1 . 4 .\n@ energy ( forward curve )\n@ energy ( forward curve ) is the new module which includes functions designed\nto generate forward curves , volatility curves and mean reversion rates used\nin many other @ energy functions . module in beta release .\n@ energy ( basics )\napo ' s and aso ' s : bug fixed when avg _ starts prompt .\ntype \" quit \" .\nthe file will be downloaded into the directory at which you entered the ftp\nsite .\ndouble click on the exe and follow the instructions on the screen .\nthere is also a readme file which contains installation instructions .\nyou may wish to print this out for easy reference .\nn . b . : the password is only valid until the first friday of next month .\nif you have any questions please feel free to contact us . we appreciate this\nopportunity to be of continuing service to enron north america corp . .\nregards ,\nerin hopkins\nadministrative assistant\nfinancial engineering associtates , inc .\ntel : + 1 . 510 . 548 . 6200\nmailto : info @ fea . com\nor\nmailto : support @ fea . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.145+0000", "entityId": 10877, "properties": {"text": "Subject: d - g energy software procurement\nlaine ,\nenclosed is a revised copy of the software licence agreement with d - g energy . the earlier version had prices and conditions of use which differed from what had been discussed over the telephone . this version brings into line the terms with what has been agreed upon , and has been given tentative approval by the president of d - g , who i met with last week .\ni have highlighed the sections which have changed from the version that you sent out for signature last november .\ni assume that the revised document will have to be reviewed by legal again . let me know if i can be of any assistance in this process .\nregards ,\nstinson gibner", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.150+0000", "entityId": 10878, "properties": {"text": "Subject: fw : energy leader consulting generation evaluator ( ege )\nvince :\nthis is the gentleman that wants to meet with you on the 29 th ?\n- - - - - original message - - - - -\nfrom : \" steve mitnick \" @ enron [ mailto : imceanotes - + 22 steve + 20 mitnick + 22 + 20 + 3 csmitnick + 40 earthlink + 2 enet + 3 e + 40 enron @ enron . com ]\nsent : monday , may 21 , 2001 9 : 13 am\nto : crenshaw , shirley\ncc : vkamins @ enron . com\nsubject : energy leader consulting generation evaluator ( ege )\nshirley :\nas requested , herein is information regarding the meeting with vince kaminski .\nthe presentation on the ege tool ' s applications and the allegheny energy case study is timed to take an hour . if the meeting is most conveniently scheduled for tuesday , may 29 , might i request it be set for late afternoon ( as my other appointments are the next day ) .\nand , as vince will recall , i was co - leader of the energy consulting business of phb hagler bailly , and developer of the ramp up , real time , 75 check and electric strategy tools . presently , i am ceo of energy leader consulting ( elc ) .\nbackground\nthe u . s . power generation industry has become increasingly efficient in recent years . rapidly growing new entrants seek profit maximization aggressively . utilities , who still control most power plants , endeavor to adopt the entrants ' methods . yet , inefficiency among many utilities remains widespread .\nutility inefficiency arises from adherence to decades - old habits and in unit commitment and dispatch and planned maintenance scheduling . many utilities , notwithstanding the industry - wide trend towards profit maximization , cling to ingrained routines .\ninefficiency can also arise from the diseconomies of small scale . a utility may operate a relatively small system ( fewer than a dozen plants ) . a small system lacks portfolio diversification and perspective in its focus on its regulated customers , playing the wholesale market at the margin .\nfor a variety of reasons , utilities are reluctant to cut back the starts of their generating units , let alone shut down any ( even temporarily or seasonally ) . economically inefficient units continue to be committed , week after week , and run in the half - load range .\nege objectives\nege identifies and assesses generating units of a utility with questionable commitment routines . taking into account transmission and reliability factors , the procedure points towards profit opportunities that may be exploited by another industry participant .\ni . an industry participant can use ege as a basis for a medium or long - term wholesale power transaction with a utility ; or to price wholesale power more aggressively , to take market share from the utility ( i . e . , compel changes in unit commitment habits ) .\nii . an industry participant can use ege to spot and quantify efficiencies that would come from a merger or acquisition .\niii . a power plant developer can use ege to estimate the incremental value a new plant will enjoy when the target utility ' s unit commitment routines inevitably become rationalized .\nspecific ege concepts\nege reduces and analyses the extraordinary but unwieldy continuous emission monitoring data base intelligently focusing on profit opportunities .\nit produces indicative statistics such as :\na . the frequency distribution of starts per week ;\nb . the frequency distribution of starts by day / 15 - minute segment during the week ;\nc . the frequency distribution of load level ;\nd . the frequency distribution of hours of operation per start ;\ne . average heat rate and approximate fully - allocated cost in the half - load range ;\nf . average ramp rate from the half - load range ;\ng . the frequency distribution of unused connected capacity during the highest demand hours ; and\nh . forced - off maintenance outage rate ( where indicated ) .\nindicative statistics are generally aggregated by month / year ; in some cases , by temperature range . ( they can be by regional wholesale prices as well . ) ege establishes if the target utility has changed unit commitment routines significantly in recent years .\nege is based upon uniquely timely actual hourly operating data . ege is now updated for the 4 th quarter 2000 ( through december 31 , 2000 ) . ege lst quarter 2000 ( through march 31 , 2001 ) will be available approximately june 15 , 2001 .\nege also compares and ranks generating units ' commitment and dispatch with that of similar units operated by the target utility ( as well as other regional generators ) . some utilities operate a group of economically marginal units at the half - load level for lengthy time periods ( without an apparent reliability basis ) , splitting the limited economic demand for power among the units .\nother ege supporting data :\ni . planned maintenance schedule ( where indicated ) ;\nj . actual maximum generating capacity ;\nk . actual minimum generating capacity ( actual maximums and minimums can differ significantly from government - reported values ) ;\nl . average heat rate in the full - load range ; and\nm . average heat rate in the three - quarter - load range .\nwith respect to a generating units ' average heat rate in the half - load , three - quarter - load and full - load ranges , it can be instructive to rank these relative to similar generating units within a region . it can also be of interest to identify significant seasonal variations in average heat rates and maximum capacities , and changes in recent years in these parameters .\nthe real - world example of allegheny energy\nallegheny energy can serve as a case study to illustrate the application of ege . in the 4 th quarter 2000 , for instance , one high - cost generating unit was started virtually every weekday morning ( 52 times ) and committed for the whole day ( in all but two cases ) . arguably , there are power products that could substitute for this routine ( in part at least ) at a profit to the seller of the product and allegheny energy .\nanother high - cost allegheny energy generating unit was started virtually every weekend during the autumn ( nine times ) and committed for most of the coming week . at another plant , two high - cost units were operated too often in the expensive half - load range ( some 550 hours ) and three - quarter - load range ( another 400 to 600 hours ) ; they were seldom called upon to run at higher levels . again , there are power products that that address these practices and might appeal to allegheny energy .\noffering of energy leader consulting ( elc )\nege is a procedure , not a software package or data base . elc believes this format is more effective in arming clients with the information they need to act upon profit opportunities .\nelc transfers its \" knowledge \" about the ege procedure and the supporting data methods in a straight - forward four - step process :\n1 . enron would select one to three target utilities .\n2 . elc would perform the ege procedure on the target utilities .\n3 . employing this real - world analysis as a pedagogic tool , elc , in a one - day seminar with enron personnel , would instruct how to perform the procedure in the future ( without the assistance of elc ) .\n4 . optionally , elc would provide ege supporting data , quarterly , to enron .\nthe basic ege supporting data set is national including all generating units under the continuous emission monitoring program ( virtually all fossil fuel units ) . parameters that are incorporated , and the data set format , will be specified upon request . custom modifications will be considered .\nsteven a . mitnick\nchief executive officer\nenergy leader consulting\n4807 41 st street , nw\nwashington , dc 20016\n( 202 ) 997 - 0924 voice\n( 202 ) 537 - 0906 fax\nsmitnick @ energyleader . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.155+0000", "entityId": 10879, "properties": {"text": "Subject: energy leader consulting generation evaluator ( ege )\nshirley :\nas requested , herein is information regarding the meeting with vince kaminski .\nthe presentation on the ege tool ' s applications and the allegheny energy case study is timed to take an hour . if the meeting is most conveniently scheduled for tuesday , may 29 , might i request it be set for late afternoon ( as my other appointments are the next day ) .\nand , as vince will recall , i was co - leader of the energy consulting business of phb hagler bailly , and developer of the ramp up , real time , 75 check and electric strategy tools . presently , i am ceo of energy leader consulting ( elc ) .\nbackground\nthe u . s . power generation industry has become increasingly efficient in recent years . rapidly growing new entrants seek profit maximization aggressively . utilities , who still control most power plants , endeavor to adopt the entrants ' methods . yet , inefficiency among many utilities remains widespread .\nutility inefficiency arises from adherence to decades - old habits and in unit commitment and dispatch and planned maintenance scheduling . many utilities , notwithstanding the industry - wide trend towards profit maximization , cling to ingrained routines .\ninefficiency can also arise from the diseconomies of small scale . a utility may operate a relatively small system ( fewer than a dozen plants ) . a small system lacks portfolio diversification and perspective in its focus on its regulated customers , playing the wholesale market at the margin .\nfor a variety of reasons , utilities are reluctant to cut back the starts of their generating units , let alone shut down any ( even temporarily or seasonally ) . economically inefficient units continue to be committed , week after week , and run in the half - load range .\nege objectives\nege identifies and assesses generating units of a utility with questionable commitment routines . taking into account transmission and reliability factors , the procedure points towards profit opportunities that may be exploited by another industry participant .\ni . an industry participant can use ege as a basis for a medium or long - term wholesale power transaction with a utility ; or to price wholesale power more aggressively , to take market share from the utility ( i . e . , compel changes in unit commitment habits ) .\nii . an industry participant can use ege to spot and quantify efficiencies that would come from a merger or acquisition .\niii . a power plant developer can use ege to estimate the incremental value a new plant will enjoy when the target utility ' s unit commitment routines inevitably become rationalized .\nspecific ege concepts\nege reduces and analyses the extraordinary but unwieldy continuous emission monitoring data base intelligently focusing on profit opportunities .\nit produces indicative statistics such as :\na . the frequency distribution of starts per week ;\nb . the frequency distribution of starts by day / 15 - minute segment during the week ;\nc . the frequency distribution of load level ;\nd . the frequency distribution of hours of operation per start ;\ne . average heat rate and approximate fully - allocated cost in the half - load range ;\nf . average ramp rate from the half - load range ;\ng . the frequency distribution of unused connected capacity during the highest demand hours ; and\nh . forced - off maintenance outage rate ( where indicated ) .\nindicative statistics are generally aggregated by month / year ; in some cases , by temperature range . ( they can be by regional wholesale prices as well . ) ege establishes if the target utility has changed unit commitment routines significantly in recent years .\nege is based upon uniquely timely actual hourly operating data . ege is now updated for the 4 th quarter 2000 ( through december 31 , 2000 ) . ege lst quarter 2000 ( through march 31 , 2001 ) will be available approximately june 15 , 2001 .\nege also compares and ranks generating units ' commitment and dispatch with that of similar units operated by the target utility ( as well as other regional generators ) . some utilities operate a group of economically marginal units at the half - load level for lengthy time periods ( without an apparent reliability basis ) , splitting the limited economic demand for power among the units .\nother ege supporting data :\ni . planned maintenance schedule ( where indicated ) ;\nj . actual maximum generating capacity ;\nk . actual minimum generating capacity ( actual maximums and minimums can differ significantly from government - reported values ) ;\nl . average heat rate in the full - load range ; and\nm . average heat rate in the three - quarter - load range .\nwith respect to a generating units ' average heat rate in the half - load , three - quarter - load and full - load ranges , it can be instructive to rank these relative to similar generating units within a region . it can also be of interest to identify significant seasonal variations in average heat rates and maximum capacities , and changes in recent years in these parameters .\nthe real - world example of allegheny energy\nallegheny energy can serve as a case study to illustrate the application of ege . in the 4 th quarter 2000 , for instance , one high - cost generating unit was started virtually every weekday morning ( 52 times ) and committed for the whole day ( in all but two cases ) . arguably , there are power products that could substitute for this routine ( in part at least ) at a profit to the seller of the product and allegheny energy .\nanother high - cost allegheny energy generating unit was started virtually every weekend during the autumn ( nine times ) and committed for most of the coming week . at another plant , two high - cost units were operated too often in the expensive half - load range ( some 550 hours ) and three - quarter - load range ( another 400 to 600 hours ) ; they were seldom called upon to run at higher levels . again , there are power products that that address these practices and might appeal to allegheny energy .\noffering of energy leader consulting ( elc )\nege is a procedure , not a software package or data base . elc believes this format is more effective in arming clients with the information they need to act upon profit opportunities .\nelc transfers its \" knowledge \" about the ege procedure and the supporting data methods in a straight - forward four - step process :\n1 . enron would select one to three target utilities .\n2 . elc would perform the ege procedure on the target utilities .\n3 . employing this real - world analysis as a pedagogic tool , elc , in a one - day seminar with enron personnel , would instruct how to perform the procedure in the future ( without the assistance of elc ) .\n4 . optionally , elc would provide ege supporting data , quarterly , to enron .\nthe basic ege supporting data set is national including all generating units under the continuous emission monitoring program ( virtually all fossil fuel units ) . parameters that are incorporated , and the data set format , will be specified upon request . custom modifications will be considered .\nsteven a . mitnick\nchief executive officer\nenergy leader consulting\n4807 41 st street , nw\nwashington , dc 20016\n( 202 ) 997 - 0924 voice\n( 202 ) 537 - 0906 fax\nsmitnick @ energyleader . com", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.162+0000", "entityId": 10880, "properties": {"text": "Subject: meeting follow - up\ndear vince ,\ni enjoyed very much meeting you at the eprm conference .\nas agreed , i am attaching both my resume and the paper on my dissertation work , which i will be presenting at the real options conference in ucla next month . i would be delighted to have your comments and impressions on it .\nif it is of interest to you , i would also be very enthusiastic about exploring together different powerful ways of applying these concepts at enron .\nearly congratulations on your son ' s graduation ; let me know if you come to the bay area soon .\nbest regards ,\nmaria ines de miranda\nphd . candidate\nmanagement science and engineering\nstanford university\n- resume maria i . de miranda . doc\n- rool - demiranda . pdf", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.169+0000", "entityId": 10881, "properties": {"text": "Subject: re : hi ,\njinbaek ,\ngreat , i look forward to working with you .\nplease , call me during the next few days\n( 713 ) 853 3848 and we can chat about the projects .\nplease , contact molly magee to talk about the first day\norientation program . her e - mail address\nis molly . magee @ enron . com , and her phone number is\n( 713 ) 853 - 4804 .\nvince\n- - - - - original message - - - - -\nfrom : jinbaek kim @ enron [ mailto : imceanotes - jinbaek + 20 kim + 20 + 3 cjinbaek + 40 ieor + 2 eberkeley + 2 eedu + 3 e + 40 enron @ enron . com ]\nsent : sunday , may 20 , 2001 8 : 07 pm\nto : kaminski , vince j\nsubject : hi ,\ndr . kaminski\nhow are you ?\nthe process for starting summer work is going well ,\nand there will be no problem we start work\non may 30 .\ni got a place to live , and reserved a flight .\ni ' m going to leave for houston on may 29\n( expected time to arrival is around noon )\ni am very much excited to have opportunity\nto join the project making an exchange platform .\ni think it ' s time i ' d better remind you\nof scheduling a meeting with me ,\nsometime on may 30 .\ni hope you let me know what to to\nafter i arrive at houston .\nand please let me know if you have anything\nyou think i prepare , to get better outcome\nfrom the summer work .\nif you give me a brief on the work ,\nit would be a great help for me to decide\nwhich material i should carry from here to houston .\ni look forward to the date we meet ,\nwarm regards ,\njinbaek\njinbaek kim\nph . d candidate\ndept . of industrial engineering and operations research\nu . c . berkeley\nhttp : / / www . ieor . berkeley . edu / ~ jinbaek\ngo bears !\n: \" ' . _ . . - - - . . _ . ' \" ; ` . . ' . ' ` .\n: a a : _ _ . . . . . _\n: _ . - 0 - . _ : - - - ' \" \" ' \" - . . . . - - ' \" ' .\n: . ' : ` . : ` , ` .\n` . : ' - - ' - - ' : . ' ; ;\n: ` . _ ` - ' _ . ' ; . '\n` . ' \" ' ;\n` . ' ;\n` . ` : ` ;\n. ` . ; ; : ;\n. ' ` - . ' ; : ; ` .\n_ _ . ' . ' . ' : ; ` .\n. ' _ _ . ' . ' ` - - . . _ _ _ . _ . ' ; ;\n` . . . . . . ' . ' ` ' \" \" ' ` . ' ; . . . . . . - '\n` . . . . . . . - ' ` . . . . . . . . '", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.176+0000", "entityId": 10882, "properties": {"text": "Subject: california update 5 / 22 / 01\nplease treat as confidential\na source had a meeting today with california state treasurer phil angelides . here are the main points from their conversation\n1 . anglelides certain that socal will go bankrupt\ncorroborating our line over the past four months , anglelides stated with confidence that socal would go bankrupt and that \" he was surprised they hadn ' t already . \" he noted that the only reason they haven ' t yet is that \" they were too stupid to ring - fence the parent \" and that \" their two biggest equity holders were screaming not to do it . \"\nhe added that the davis / socal mou is dead and that all the \" plan b ' s \" are \" speculative \" at best . he also thought that socal was being \" naive if they thought they would get a better deal from the legislature than from the bankruptcy court . \"\n2 . bond issuance - $ 12 b not enough\nangelides conceded that a $ 12 b bond issue would not be enough to buy power for the summer and that the true costs would probably be $ 18 - 24 b . the only reason they didn ' t issue more is that angelides felt that \" $ 12 b was all the market could handle . \" the current game plan for bonds assumes an average peak price for power of $ 400 / mwh , which angelides said explains the difference between his estimates and the higher estimates from state comptroller ' s kathleen connell ' s office .\n3 . new generator construction\nanglelides was explicit that the california public power authority ( authorized by the legislature last week ) will \" build plants and not stop until we [ california ] has a 10 - 15 % capacity cushion above expected demand . angelides expects the state to be \" 5 - 10 % short on power all summer . \"", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.181+0000", "entityId": 10883, "properties": {"text": "Subject: fwd : follow - up call\nreturn - path :\nreceived : from rly - yho 3 . mx . aol . com ( rly - yho 3 . mail . aol . com [ 172 . 18 . 147 . 35 ] ) by air - yho 2 . mail . aol . com ( v 77 _ rl . 36 ) with esmtp ; mon , 21 may 2001 17 : 26 : 01 - 0400\nreceived : from nx . numerix . com ( [ 63 . 71 . 167 . 197 ] ) by rly - yho 3 . mx . aol . com ( v 77 _ rl . 36 ) with esmtp ; mon , 21 may 2001 17 : 25 : 21 - 0400\nreceived : from nx . numerix . com ( localhost [ 127 . 0 . 0 . 1 ] ) by nx . numerix . com ( 8 . 9 . 3 / 8 . 9 . 3 ) with esmtp id raao 5633 for ; mon , 21 may 2001 17 : 24 : 32 - 0400\nreceived : from dtallam ( hercules . numerix . com [ 63 . 71 . 167 . 196 ] ) by nx . numerix . com ( 8 . 9 . 3 / 8 . 9 . 3 ) with smtp id raao 5628 ; mon , 21 may 2001 17 : 24 : 32 - 0400\nfrom : \" dean tallam \"\nto :\ncc :\nsubject : follow - up call\ndate : mon , 21 may 2001 17 : 18 : 41 - 0400\nmessage - id :\nmime - version : 1 . 0\ncontent - type : multipart / alternative ; boundary = \" - - - - = _ nextpart _ 000 _ 0054 _ 01 coe 21 a . 15 b 849 co \"\nx - priority : 3 ( normal )\nx - msmail - priority : normal\nx - mailer : microsoft outlook cws , build 9 . 0 . 2416 ( 9 . 0 . 2911 . 0 )\nx - mimeole : produced by microsoft mimeole v 5 . 50 . 4133 . 2400\nimportance : normal\nvince ,\ni hope all is well with you .\ndimitri raevsky , formerly the head of quantitative analysis and risk for global credit derivatives at jp morgan chase , has joined numerix as the product manager for credit products . at jp morgan chase , one of the leading players within the credit derivatives market , dimitri played an active role in the structuring , valuing and marketing of credit derivative products .\ndimitri provides numerix with strong expertise in credit - related analytics / valuation methodologies as well as market practices . dimitri will be responsible for developing state - of - the - art credit software solutions for numerix . one of the first credit software products he will be developing is a toolkit for credit derivatives that will provide end - users with all the analytical tools and modules necessary for building credit derivatives solutions .\nwe would be pleased to have dimitri speak with you and your colleagues at enron to review our plans for credit derivatives .\nwe are available any time on friday may 25 th .\nplease advise as to whether this date would be convenient .\ndean", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.186+0000", "entityId": 10884, "properties": {"text": "Subject: resignation effective june 5\nvince ,\ni am planning to make my resignation from enron so that june 5 th would be my last day at work . i am interested in the trading opportunity this fall and will talk again with andy about it . it will still make sense for me to resign in the mean time in order that i may start burning my non - compete period to open up my other options . in addition , it will allow me to be rehired without the burden of the noncompete should i come back in the fall .\nregards ,\nstinson", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
{"eventTime": "2015-06-08T16:45:58.191+0000", "entityId": 10885, "properties": {"text": "Subject: fw : memo : re : your work phone number\nhi ,\ni am forwarding an email from a former bnp paribas colleague of mine who now works at hsbc .\ncan you please advise ?\nthanks ,\niris\n- - - - - original message - - - - -\nfrom : antonella . saulle @ hsbcib . com @ enron [ mailto : imceanotes - antonella + 2 esaulle + 40 hsbcib + 2 ecom + 40 enron @ enron . com ]\nsent : tuesday , may 22 , 2001 1 : 30 am\nto : mack , iris\nsubject : memo : re : your work phone number\niris\ni would like you to put me in contact with s / one at enron here in london that\ndeals with weather derivatives and would be in a position to sell us options on\nweather derivatives ( temperature , cat ) . let me know if you are able to do that\nor if i need to work internally here in order to find out whom we have contacts\nwith at enron .\nif you want to call me my direct line is + 44 207 336 - 2836 . alternatively i could\ncall you but do bear in mind that i leave the office around 6 : 30 - 7 pm london\ntime . send me an email and let me know when is a good time to talk and i will\ncall you back .\nthanks in advance .\nantonella\nthis transmission has been issued by a member of the hsbc group ( \" hsbc \" )\nfor the information of the addressee only and should not be reproduced\nand / or distributed to any other person . each page attached hereto must\nbe read in conjunction with any disclaimer which forms part of it . unless\notherwise stated , this transmission is neither an offer nor the solicitation\nof an offer to sell or purchase any investment . its contents are based on\ninformation obtained from sources believed to be reliable but hsbc makes\nno representation and accepts no responsibility or liability as to its\ncompleteness or accuracy .", "label": "not spam"}, "event": "e-mail", "entityType": "content"}
